From d12d74bbb5d1d1d4d0841140418b092a211dde49 Mon Sep 17 00:00:00 2001 From: Amarin Phaosawasdi Date: Tue, 25 Jan 2022 12:37:11 -0800 Subject: [PATCH] Squashed 'third_party/googleapis/' changes from 1c20dcfd8..853e8a29c MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 853e8a29c fix: reverting unintentional breaking change: GetOpenIdConfigRequest, GetOpenIdConfigResponse 2e9849d6a chore: regenerate API index a29dc81b4 feat: Recommendation Priority / Insight Severity feat: Recommendation xor_group_id feat: Recommendation security projection feat: Configurable recommenders 0c05a4978 chore: regenerate API index b0a865108 fix!: revert bad publishing b0c104f73 feat: add database dialect c09a336bc chore: regenerate API index cb31351c8 build: library of v1 container onboarded to SAM d12b61537 chore: regenerate API index 7b058a317 build: library of v1beta1 container onboarded to SAM a616ca08f chore: upgrade gapic-generator-java, gax-java and gapic-generator-python eb694b25e chore(python): Prepare video/livestream v1 BUILD.bazel for release 545fe1c3c chore: regenerate API index 12b303823 feat: added LogConfig feature for users to define configurations of platform logs feat: added silver languages namespace annotations docs: updated comments with more examples f4bd29f87 chore(bazel): update gapic-generator-php to v1.4.0 6084dc11b chore: regenerate API index 9d98ef4eb feat: added client side library for Dataplex V1 apis 88303a2ab chore: regenerate API index c9a482e23 feat!: Consolidate task details into service API and add orchestration result details BREAKING CHANGE: This change relocates some task proto definitions and updates message fields, necessitating updates to imports. ada32e980 chore: regenerate API index 356f0c043 feat: added conversation process config, ImportDocument and SuggestSmartReplies API 56da7b09f feat: Add bazel config for Ruby compute wrapper (#699) d2c7ff7bb chore(ruby): Regenerated using Ruby gapic-generator 0.10.5 d7ee523e4 feat: add explicit routing header annotations for bigtable/v2 feat: add `routing_proto` to the Bazel dependencies for bigtable/v2 6f4ad75da feat: add `kubernetes_resource` field docs: update API annotation fb700a662 chore: fixed typos and reformatted files c7d194823 chore: regenerate API index 76ff1e542 feat: add APIs for importing and uploading Apt and Yum artifacts feat: add version policy support for Maven repositories feat: add order_by support for listing versions fix!: mark a few resource name fields as required 86c3294e9 chore: fix typos and reformatted files 56715c66e fix!: update the pattern for "file.googleapis.com/Snapshot" resource for the Filestore V1Beta1 cfd7e42b8 chore: reformatted files 9fe00a133 feat: Change description for enum default value 12c0a1f92 fix(managedidentities): add ancillary service bindings to service_yaml ab1bf9a5c fix: update labels and package names a03b6fafd chore: Update C# Bazel rules for IAM to include all required protos fe4fb6f73 chore: Remove unnecessary (and breaking) dependencies in C# Cloud Debugger GAPIC generation ea81e38ac chore: regenerate API index 63be77c6b feat: add owner email to TransferConfig message feat: allow customer to enroll a datasource programmatically docs: improvements to various message and field descriptions 5499aca06 chore(python): Prepare eventarcpublishing v1 BUILD.bazel for release 13a3c9e5f docs: Clarify comments of ConversationView enum 107a322d4 chore: regenerate API index 12f2001f7 feat: added delivery APIs ba2ffd6fe chore(deps): upgrade gapic-generator-java to 2.4.1 8c42b6d57 chore: regenerate API index 5c249217b fix: proto field markdown comment for the display_name field in annotation_payload.proto to point the correct public v1/ version fix: Add back java_multiple_files option to the text_sentiment.proto to match with the previous published version of text_sentiment proto 04fe61ccc chore: regenerate API index eecc34d02 feat: modified descriptions of validation rules on create entity endpoints * Uniform validations rules were added on the entity ids. * Removed validation rules on trip_id under search vehicle. Ids are only validated when entities are first created. e7aa14942 chore(ruby): Configure Ruby generator for Eventarc Publishing 5438a17c9 feat: publish updated definitions for cloud/datafusion/v1 and cloud/datafusion/v1beta1 fix!: multiple fields now have field_behavior REQUIRED in cloud/datafusion/v1 service definition fix!: multiple fields now have field_behavior REQUIRED in cloud/datafusion/v1beta1 service definition 8675f5ec8 chore: regenerate API index 3e958c364 fix: [Cloud Memorystore for Redis] Add missing fields for TLS and Maintenance Window features ee758a96e fix(php): add service_yaml and grpc_service_config to php_gapic_library target for workflows 0fea25378 chore: regenerate API index 05b24d8d8 feat: publish updated protos for cloud/automl/v1 service fix!: One of the fields now have field_behavior as REQUIRED in cloud/automl/v1 service definition. ef417dc5a fix(talent): add ancillary service bindings to service_yaml aefdc4ddb chore(deps): upgrade gapic-generator-java to 2.4.0 710ffb2fa chore: regenerate API index 6706d9b8e fix(workflows): add ancillary service bindings to service_yaml a635f7199 fix(managedidentities): add ancillary service bindings to service_yaml 706ac2b02 fix(documentai): add ancillary service bindings to service_yaml ac12f3343 fix(datalabeling): add ancillary service bindings to service_yaml 4c13e8fdf fix(apigateway): add ancillary service bindings to service_yaml dc15873a9 fix(php): add service_yaml to php_gapic_library targets b4b8eda2f feat: remove BETA language on Compute V1 (#697) 10380880f fix(php): only wrap top-level required oneof in tests 39654061c fix(artifactregistry): add missing HTTP rules to service config de228c847 chore(ruby): Regenerated using Ruby gapic-generator 0.10.4 94ea1c429 chore: fix markdown format 9a8910e4e fix: Modify the bazel.BUILD file by hand to include the compliance protos which are not autogenerated 111609236 feat: add new Dataproc features: - Spark runtime versioning for Spark batches - custom image containers for Spark batches - auto-diagnostic of failed Spark batches - Local SSD NVME interface support for GCE clusters f28843fe6 chore(deps): upgrade gapic-generator-java to 2.3.0 0899ba0f4 chore: regenerate API index c203eea79 feat: new API for the View resource 549b56726 feat: added option to configure the number of sentences in the suggestion context 34955eb83 chore: regenerate API index 16b430246 feat!: Publish full GCS gRPC API to GitHub 'main' branch 76762cc7f chore(deps): upgrade gapic-generator-java to 2.2.4 060a1d361 fix!: updating metadata messages for all long running operations 79493b1cd chore(bazel): update gapic-generator-go to v0.24.0 1236b08b7 feat: define Datastore -> Firestore in Datastore mode migration long running operation metadata 82c132fbb feat: Update gapic-generator-php to v1.3.0 2c1ea172b chore: regenerate API index b7c9d05c6 feat: update client libraries to support Database operations 73da6697f chore: use gapic-generator-python 0.58.4 e9744546b chore: regenerate API index e57560a12 feat: create new UI detection API for ChromeOS testing 16ecf0788 feat: added the display name of the current page in webhook requests 285ed911d feat: added the display name of the current page in webhook requests 3e584174c docs: update comments for ListVoicesRequest 8d996c928 chore: regenerate API index f7cdb413e feat: sync with latest API updates * Refresh documentation * Messages related to terminal point service were removed * The already deprecated available_capacity field was removed * Route information added to UpdateTrip 489719aa3 feat: increase the logical timeout (retry deadline) to 5 minutes 3375ae20a chore: regenerate API index 9d0b90c03 feat: baremetalsolution public protos 5518740a6 chore: regenerate API index ebef8e6c5 feat: added export documentation method feat: added filter in list documentations request feat: added option to import custom metadata from Google Cloud Storage in reload document request feat: added option to apply partial update to the smart messaging allowlist in reload document request feat: added filter in list knowledge bases request 4f08f6f92 chore: regenerate API index 54861b493 feat: add the `AcknowledgeUserDataCollection` operation which acknowledges the terms of user data collection for the specified property feat: add the new resource type `DataStream`, which is planned to eventually replace `WebDataStream`, `IosAppDataStream`, `AndroidAppDataStream` resources fix!: remove `GetEnhancedMeasurementSettings`, `UpdateEnhancedMeasurementSettingsRequest`, `UpdateEnhancedMeasurementSettingsRequest` operations from the API feat: add `CreateDataStream`, `DeleteDataStream`, `UpdateDataStream`, `ListDataStreams` operations to support the new `DataStream` resource feat: add `DISPLAY_VIDEO_360_ADVERTISER_LINK`, `DISPLAY_VIDEO_360_ADVERTISER_LINK_PROPOSAL` fields to `ChangeHistoryResourceType` enum feat: add the `account` field to the `Property` type docs: update the documentation with a new list of valid values for `UserLink.direct_roles` field 82a542279 chore: regenerate API index 3523dff6e fix!: fixed HTTP body for VerifyExternalSyncSettings and StartExternalSync feat: Add new cloud_sql_connect.proto and updates in cloud_sql_resources.proto, cloud_sql_tiers.proto, and cloud_sql_users.proto. f59df1814 chore(docs): fix google.api.resource documentation 429d35c83 fix(artifactregistry): fix resource pattern ID segment name 35f810c41 chore(bazel): update generator PHP version to 7.4.15 f4cf945ba chore: regenerate API index 18c59ec44 feat: removed OPTIONAL for speech model variant feat: supported the knowledge base in knowledge operation metadata docs: added more docs for speech model variant and improved docs format for participant 14b7a25d4 feat: removed OPTIONAL for speech model variant docs: added more docs for speech model variant and improved docs format for participant 987192dfd chore: use gapic-generator-python 0.58.1 2cd8979b0 chore: regenerate API index a769f2084 feat: Initial commit for Eventarc Publishing proto a82e55495 fix(googleads): fix typos and minor description updates 85ffeed56 feat: EU Regions and Support With Sovereign Controls 4000ab10d chore(bazel): Update gapic-generator-php to v1.2.1 253807f22 fix: add parameter in compute bazel rules (#692) 7f2f0d8ed chore: use gapic-generator-python 0.58.0 f79d6e85a chore(build): use gRPC 1.42.0 8a2398e34 feat: add write_mode support for BigQuery Storage Write API v1 297bfd86f fix: add java_outer_classname to intoto protos to fix java client generation issues due to name collisions 9b9da22ee feat: add new reCAPTCHA Enterprise fraud annotations 428446ac0 fix(deps): upgrade gax-java to 2.7.1 and gapic-generator-java to 2.2.3 001584858 feat: added `TelephonyTransferCall` in response message 756fe00cd feat: Live Stream API logging proto for documentation 26ab5dd23 feat: added support for custom content types docs: reformat comments ae8950ff5 fix!: handle GCP enum name start with uppercase IPProtocol (#691) 6230f6eaf feat: Add WriteDisposition to BigQuery Export API 6c8304ddb chore: regenerate API index ed9918e8c feat: added deidentify replacement dictionaries feat: added field for BigQuery inspect template inclusion lists feat: added field to support infotype versioning 116f65736 chore(bazel): update Go generator to v0.23.5 536d283a0 chore: dpdate disco-to-proto3-converter SHA f0e32e6e0 fix(ruby): Fix endpoint and shortname for bigtable admin 4afd051d0 chore: regenerate API index 7b317cb21 chore: publish cloud network services v1 10f96cbaf feat: add result_end_time to SpeechRecognitionResult 165280d3d chore: generate java files for google-iam-v1 05e37f72c chore: regenerate API index 59150241c feat: add enable_private_service_connect field to Endpoint feat: add id field to DeployedModel feat: add service_attachment field to PrivateEndpoints feat: add endpoint_id to CreateEndpointRequest and method signature to CreateEndpoint feat: add method signature to CreateFeatureStore, CreateEntityType, CreateFeature feat: add network and enable_private_service_connect to IndexEndpoint feat: add service_attachment to IndexPrivateEndpoints feat: add stratified_split field to training_pipeline InputDataConfig f4d7f8e72 chore: regenerate API index 244a89dbd feat: add enable_private_service_connect field to Endpoint feat: add id field to DeployedModel feat: add service_attachment field to PrivateEndpoints feat: add endpoint_id to CreateEndpointRequest and method signature to CreateEndpoint feat: add method signature to CreateFeatureStore, CreateEntityType, CreateFeature feat: add network and enable_private_service_connect to IndexEndpoint feat: add service_attachment to IndexPrivateEndpoints feat: add stratified_split field to training_pipeline InputDataConfig fix: remove invalid resource annotations in LineageSubgraph eecbbee1d chore(ruby): Set up Ruby build configs for vmmigration clients 77de99790 chore: regenerate API index 2b47b241a feat: added alternative_language_codes to RecognitionConfig feat: WEBM_OPUS codec feat: SpeechAdaptation configuration feat: word confidence feat: spoken punctuation and spoken emojis feat: hint boost in SpeechContext d78fa54f7 chore(bazel): update gapic-generator-php to v1.2.0 2198f9f2a fix!: proper field annotations 810468df5 feat!: Replace StreamInfo with InputStreamProperty 02df998e4 fix: make parent_id fields required compute move and insert methods (#686) 9a04fde55 chore: Bump disco-to-proto3-convertor version 221556e6b build(npm): correct artifact name for npm e2f13b0f6 build(npm): update artifact name for npm 72adf13fe docs: Keep the API doc up-to-date feat: update grpc service config settings to reflect correct API deadlines eddd3d845 feat: add C++ rules for many Cloud services 970cd2196 build(npm): correct artifact name for npm b21a21e02 chore: generate java files for google/api chore: generate java files for google/cloud/audit chore: generate java files for google/geo/type chore: generate java files for google/logging/type chore: generate java files for google/longrunning chore: generate java files for google/rpc chore: generate java files for google/rpc/context chore: generate java files for google/type chore: generate java files for google/cloud b58725a19 chore: generate java files for google/cloud/location 4bd5f4b45 build(npm): add artifact name for npm 9a182e652 feat: remove feature flag disable_issue_modeling 2e680c6be chore: regenerate API index b35c85c21 feat: Initial release of Live Stream API v1 Public Preview 68b0c8a89 feat: new feature flag disable_issue_modeling docs: fixed formatting issues in the reference documentation a1af8f0ba chore: regenerate API index d1e416ff0 docs: Bringing the generated clients up-to-date with recent changes 96a1b13cb chore: regenerate API index be8f9889c feat: Added a new API method UpdateExternalSystem, which enables updating a finding w/ external system metadata. External systems are a child resource under finding, and are housed on the finding itself, and can also be filtered on in Notifications, the ListFindings and GroupFindings API 8ce4ea696 feat: Switch to string enums for compute (#685) b5274f7d4 docs: fix docstring formatting c246c8874 build: add published name under submodules 6e8a083da chore(python): Prepare vmmigration v1 BUILD.bazel for release 49c40d2b2 chore: update disco-to-proto3-converter 5ab5d7512 chore(bazel): update gapic-generator-php to v1.1.1 35b870442 docs: fix docstring formatting a0173f582 docs: fix docstring formatting 23a388dea docs: fix docstring formatting 0ee233bc2 chore(bazel): update rules_gapic to v0.11.1 55726d625 chore(bazel): update rules_gapic to v0.11.0 62cced0cd feat: add C++ rules for Cloud Tasks 9d3baabb4 feat: update gapic-generator-csharp to 1.3.16 427abb8fd chore: regenerate API index bd7db057c feat:Tensorboard v1 protos release feat:Exposing a field for v1 CustomJob-Tensorboard integration. 6963f70ab chore: regenerate API index 4a4ec6da4 feat: allow setting custom CA for generic webhooks and release CompareVersions API docs: clarify DLP template reader usage dfa9d62bc feat: support document metadata filter in article suggestion b3ff1830d feat: update v1 proto 256cfcaa9 chore: regenerate API index 11e309d19 feat: Added support for auto-close configurations 490aa308d chore: regenerate API index 0fd6a3243 feat: add Autoscaling API d9af6e35b chore: regenerate API index 68c63fffe chore(ruby): Configure Ruby clients for Cloud IDS cf65a5340 chore: add generated snippets for Document AI 3b0e3e9a7 chore: regenerate API index 61b3482dd fix(privateca): include mixin protos as input for mixin rpcs 45a2c07b3 docs: fix docstring formatting 4be99b038 docs: fix docstring formatting 97cababf0 fix: Move compute_small protos under its own directory (#681) 53432afb8 chore: regenerate API index becab163c chore: adds C#, PHP, Ruby package/namespace options 2c411a8a2 feat: add C++ rules for Pub/Sub Lite e03933dcc docs: Small clarification b72f356b8 chore: regenerate API index 2de80fe0f feat: Added mute related APIs, proto messages and fields a85beae06 feat: Update OSConfig API 2bea4df40 chore(bazel): update gapic-generator-go v0.23.3 29bb98c11 feat: support document metadata filter in article suggestion and smart reply model in human agent assistant c522fe8ce chore: regenerate API index 5e57bedf4 feat: VM Migration API 7c106233a feat: update v1beta1 proto 753ad8562 chore: regenerate API index 05a6a82d9 chore: Add C# generation for Compute v1 76f7f485d feat: allow setting custom CA for generic webhooks cc003a482 fix!: Mark a couple networkconnectivity API fields as required, to match implemented behavior 895ad2888 chore: Add partial C# generation to AI Platform 66878ca9e chore(ruby): Fix SystemPolicy service name for BinaryAuthorization V1beta1 171d77733 chore(python): Update iam/credentials BUILD.bazel package name to google-cloud-iam chore(python): Update iam/credentials namespace to google.cloud.iam_credentials 5bb0518fb docs: fix docstring formatting c08b1494f chore(python): Update container BUILD.bazel package name to google-cloud-container b32a32438 chore: Add C# generation rules c7b3bd0aa docs: Improved formatting 3020af511 docs: fix docstring formatting 691a18b1c feat: Move compute.v1 from googleapis-discovery to googleapis (#675) b9f61843d docs(samples): add example tags to generated samples 2921f9fb3 chore: update Java and Python dependencies 1bd869b26 feat: update gapic-generator-csharp to 1.3.15 feat: update rules_gapic to 0.10.0 2aec4d0e6 docs: fix docstring formatting 4d71c45d9 feat: Added resource type and display_name field to the FindingResult, and supported them in the filter for ListFindings and GroupFindings. Also added display_name to the resource which is surfaced in NotificationMessage 78eb8a2bf feat: [Cloud Memorystore for Redis] Support Multiple Read Replicas when creating Instance 8625cf0cf feat: [Cloud Memorystore for Redis] Support Multiple Read Replicas when creating Instance be4be3dde docs: Add comments to GCS gRPC API proto spec to describe how naming works 9974d0974 chore: regenerate API index 3dfbdc356 feat: add new admission rule types to Policy feat: update SignatureAlgorithm enum to match algorithm names in KMS feat: add SystemPolicyV1Beta1 service cbba92c06 feat: Added BigQueryDateShardedSpec.latest_shard_resource field feat: Added SearchCatalogResult.display_name field feat: Added SearchCatalogResult.description field f81b7bd47 docs: fix docstring formatting 9e6c8c626 chore: try to fix the mistaken-pull-closer config 1112610c5 docs(ruby): Add simple code examples for all RPC methods cd48c1678 feat: add a stack_trace field to the Error messages specifying where the error occured feat: add call_log_level field to Execution messages doc: clarify requirement to escape strings within JSON arguments f9acb378c feat: added support to configure security settings, language code and time zone on conversation profile 5946b7ae5 chore: generate java files for apps/script/type protos 09b257601 feat: Secret Manager integration fields 'secret_environment_variables' and 'secret_volumes' added feat: CMEK integration fields 'kms_key_name' and 'docker_repository' added ddd663700 chore: regenerate API index 33fd29dc0 feat: Add ability to update phrase matchers feat: Add issue model stats to time series feat: Add display name to issue model stats 25c7592ea chore: generate java files for source_context.proto 7ab35b4fa chore: regenerate API index eb773f2c0 feat: added support for comparing between versions docs: clarified security settings API reference e4c5b7872 docs: clarified usage of entitlement parameters c7e4a6154 chore: regenerate API index c11bc3eda feat: OSConfig: add OS policy assignment rpcs 204a7763f chore: regenerate API index 19b6b89ec feat(googleads): v9 of Google Ads API 0801ed68c chore: regenerate API index 171e2c7b0 fix(privateca): repair service config to enable mixins 0c2e4540e chore(ruby): Corrected build rules for Ruby wrappers for the monitoring and workflows APIs e58b62f32 chore: regenerate API index d58e602ed feat: add reCAPTCHA Enterprise account defender API methods 381ab7841 feat: Updating the grafeas protos to include compliance and intoto attestation protos bcfd386c2 chore(ruby): Update Ruby microgenerator to v0.10.2 6d008d29d docs: fix docstring formatting 8c7125522 chore(ruby): Add Bazel build rules for Ruby wrapper clients f2afd8f4e chore(bigtable): fix service name in resource annotation Type URIs c1176cd31 feat: add the `schema_restriction_response` field to the `ResponseMetaData` type that contains the schema restrictions actively enforced in creating a report feat: add the `currency_code`, `time_zone` fields to the `ResponseMetaData` type feat: add the `empty_reason` field to the `ResponseMetaData` type that contains an empty report reason, if specified feat: add the `blocked_reasons` field to the `MetricMetadata` type that contains reasons why access was blocked to a certain metric in a report, if specified 7a3953f4b feat: Adds support for `google.protobuf.Value` pipeline parameters in the `parameter_values` field 972abb656 feat: Adds support for `google.protobuf.Value` pipeline parameters in the `parameter_values` field 83d81b0c8 chore: use gapic-generator-python 0.53.4 c2b080f32 docs: fix docstring formatting a83e6f24b chore(python): Update cloudbuild BUILD.bazel package name to google-cloud-build chore(python): Update cloudbuild namespace to google.cloud.devtools 3045b0cb2 chore(python): Update accessapproval BUILD.bazel package name to google-cloud-access-approval 21144c249 chore: regenerate API index 148d29d1e feat: Add local inventory ingestion APIs to product service in alpha channel e1ba41ed4 chore: update rules_python to 0.5.0 daf9c983c feat: add resource type to ChannelPartnerLink 37924239e docs: fix docstring formatting 2781c734f chore(python): Update gaming BUILD.bazel package name to google-cloud-game-servers c33c43504 chore: regenerate API index a61dbc0a2 feat: Cloud IDS client v1 Based on: https://cloud.google.com/ids/docs 4ee0e5733 chore(python): Update privateca BUILD.bazel package name to google-cloud-private-ca 5f897f0cd docs: fix docstring formatting 7f52277c3 feat: Publish Cloud Integrations logging proto for documentation 4381242ee build: upgrade Java microgenerator to v2.2.1 a51c341ca docs: clarified meaning of the legacy editions docs: clarified semantic of the streaming APIs 974ad5bdf docs: fix docstring formatting 59736be62 chore(python): Update mediatranslation BUILD.bazel package name to google-cloud-media-translation 7eea02b49 chore(python): Update mediatranslation BUILD.bazel package name to google-cloud-recaptcha-enterprise bb1f3e904 docs: clarified meaning of the legacy editions docs: clarified semantic of the streaming APIs f034e5f9e docs: fix docstring formatting d5b19f1be chore: regenerate API index 19943c118 feat: added API for changelogs docs: clarified semantic of the streaming APIs 180ec360e chore: regenerate API index 55fd11bc3 feat: added API for changelogs docs: clarified semantic of the streaming APIs 30eeb2705 feat: Publish Traffic Director log entry proto dc83df852 fix: Remove invalid resource annotations 3fe45e239 build(nodejs): correct artifact name for npm 4df8a3950 build(nodejs): correct artifact name for npm 5088bd785 feat: Add support for dataproc BatchController service 324f036d9 feat: Add create_time to Instance 06dac5caf chore(ruby): Add google-cloud-common as a dependency of the filestore client 1fb0967fb chore: regenerate API index 2d60c597a docs: clarified when revision_id of a workflow is updated docs: clarified format and semantics of service_account field docs: documented expanded workflow size limit c8fba4b71 chore: regenerate API index 6990d971b feat: added library for Cloud Domains v1 API. Also added methods for the transfer-in flow docs: improved API comments 9679873a5 fix: Update doc comments fix: Move conformance_service.proto to its own directory to mirror existing go package structure. feat: Publish an `expr_version` field to track transformations applied during static analysis to the `expr` field within the `CheckedExpr`. 8ef531eaf docs: Keep the API doc up-to-date feat: add search mode to search request. If not specified, a single search request triggers both product search and faceted search. feat: update grpc service config settings to reflect correct API deadlines 451e78310 chore(python): Update oslogin BUILD.bazel package name to `google-cloud-os-config` 853c7bcba docs: fix docstring formatting d2f4f4675 chore(python): Update servicedirectory BUILD.bazel package name to google-cloud-service-directory 164563869 docs: fix typos and docstring formatting 4dd603675 docs: fix docstring formatting 9d6bb9209 chore(python): Update servicedirectory BUILD.bazel package name to google-cloud-private-ca f5b58edff docs: fix docstring formatting 0dfce5e78 feat: Update osconfig v1 and v1alpha RecurringSchedule.Frequency with DAILY frequency c5c2cd741 chore: Enable C# generation in Bazel c3d010d8a docs: fix docstring formatting bbe8aa189 docs: fix docstring formatting 16156173a feat: publish log entry protos for gkebackup platform logging 5b0219d5e feat: add support for Raw PKCS#1 signing keys e54bbc620 chore: Exclude `google/cloud/compute/**` from copybara destination files 985024076 chore: Kokoro configuration fe4694b46 chore: regenerate API index 8f48b9778 feat: TPU v2alpha1 public protos 85633a274 docs: Remove erroneous space in a docstring 1e77865b3 fix: add a dummy change for showcase v1beta1 for testing autosubmit b44c45ca3 chore(filestore): add common_java_proto dep to java_assembly_pkg 67e6e0a1d fix: add model signature for batch document translation d2977af9e chore(ruby): Re-enable bigquery-storage-v1 generation, which also required updating protobuf from 3.15.3 to 3.18.1 for codegen c3e8e8cb4 chore: Update C# generator to version 1.3.12, which supports non-standard LRO generation 9bac62dbc fix!: Fix the resource annotations for GetRepositoryRequest 877d3d9d0 fix!: rename committed_size to persisted_size fix!: replace string key_sha256 with bytes key_sha256_bytes fix: deprecate zone_affinity field fix: add INHERITED to PublicAccessPrevention enum 4a5dad747 fix: Reintroduce deprecated field/enum for backward compatibility docs: Use absolute link targets in comments 7bfeecb83 fix: update nodejs package name to video-transcoder 481116189 fix: nodejs package name access-context-manager 29de512cc build: update package name for datastore 6865fe4f8 chore: regenerate API index 95af2e435 feat: add Dataproc Serverless for Spark Batches API 5c01e4e63 chore(ruby): Configure Bazel to generate a Ruby library for locations clients e12aa9970 chore: fix Bazel rule comment 98f4bfc65 chore: regenerate API index d706102a0 feat: add featurestore service to aiplatform v1 feat: add metadata service to aiplatform v1 f0d5f7fff docs: fix typo in alert.proto 566f3d16b chore: use `google-cloud-monitoring-metrics-scopes` as python package name 16ff8131d docs: recommend AnalyzeContent for future users ae3a4a281 docs: Fix NOT_STARTED state documentation in MigrationJob resource 177c62af7 feat: publish `routing.proto` containing the `google.api.RoutingRule` annotation feat: add Bazel rules wrapping `routing.proto` 9af371c81 docs: recommend AnalyzeContent for future users dc9f25212 chore: regenerate API index a7a344010 feat: Added vulnerability field to the finding feat: Added type field to the resource which is surfaced in NotificationMessage 94f77789d chore: regenerate API index 3b9c98eda feat: add CreateServiceTimeSeries RPC 14a959fba fix: add a dummy change 1 at the v1beta2 for testing release messages with commit body 528b83947 fix!: add a dummy change 2 at the v1 for testing release messages with commit body b21bb4593 chore!: add a dummy change 3 at the v1main for testing release messages without commit body 485bf018d fix: add a dummy change 1 at the v1beta1 for testing release messages without commit body 5d88c6b93 Synchronize new proto/yaml changes. 614dfd79a Synchronize new proto/yaml changes. d4d09eb3a Synchronize new proto/yaml changes. 50d96dc11 Synchronize new proto/yaml changes. 99ec92874 Synchronize new proto/yaml changes. 2974b81c6 chore: regenerate API index bf9687743 feat: add Similarity to explanation in aiplatform v1beta1 feat: add EncryptionSpec to featurestore in aiplatform v1beta1 feat: add PipelineTaskStatus to pipeline_job in aiplatform v1beta1 feat: add BatchReadTensorboardTimeSeriesData to tensorboard_service in aiplatform v1beta1 feat: add enable_monitoring_pipeline_logs to model_deployment_monitoring_job in aiplatform v1beta1 feat: add order_by to pipeline_service in aiplatform v1beta1 feat: add model_display_name to prediction_service in aiplatform v1beta1 feat: add specialist_worker_emails to specialist_pool in aiplatform v1beta1 787f8c9a7 feat: add context manager support in client 409e134ff chore: ensure samples are not autogenerated for libraries with a veneer 0686b3197 fix!: add a dummy change 2 at the v1 for testing release messages with commit body ec7b6eec8 Synchronize new proto/yaml changes. d3ef31ef6 build: update package name 90eb04f0b chore: update package name for npm data-fusion ef9130f51 docs: clarify that project number is used as the canonical project identifier for job and job template names docs: fix broken link and code formatting feat: add support for allow_missing param on DELETE request fix!: remove Encryption settings that were published due to a sync issue BREAKING CHANGE: requests specifying Encryption settings are rejected by the server ac08aa4ac build: update package name for security-private-ca 701a095c7 docs: Fixed several broken links and formatting issues in the reference documentation 1b187463b fix!: add a dummy change 2 at the v1 for testing release messages with commit body 70e42693f build: library of v1 showcase onboarded to SAM 7d8205732 chore: regenerate API index bf8851e25 feat: added deployment API feat: exposed DTMF input info in the query result docs: added notes on long running operation 02710fa0e feat: expose dtmf input info in the query result 77066268d chore: regenerate API index 0ee215aaf feat: Update Routes Preferred protos 928286b2b chore: Add build rules in BUILD.bazel for google/cloud/common protos for python af7fb72df feat(privateca): add IAMPolicy & Locations mix-in support e202ad333 feat: deprecate issue_matches docs: if conversation medium is unspecified, it will default to PHONE_CALL 408e3b0d0 chore(bazel): update rules_gapic to v0.9.0 ae7e39913 feat: add RPC retry information for MacSign, MacVerify, and GenerateRandomBytes Committer: @bdhess de9881125 fix!: remove routing.proto ee3c7eb34 feat: added support for TelephonyTransferCall in Participant ResponseMessage 410c18453 chore: use gapic-generator-python 0.52.0 b518c5554 chore: regenerate API index 5e5a44d76 fix(filestore): add missing operation_metadata.proto import 2fa172262 fix: correct python namespace for migration API Committer: @shollyman b77ec9172 feat: update gapic-generator-csharp to 1.3.11 feat: update rules_gapic to 0.8.0 a24e1f5ad chore: enable python snippetgen for aiplatform 9d7c7433b feat: add OAEP+SHA1 to the list of supported algorithms 6355bdb25 chore: regenerate API index 14829f3dc feat: added support for Deployments with ListDeployments and GetDeployment apis feat: added support for DeployFlow api under Environments feat: added support for TestCasesConfig under Environment docs: added long running operation explanation for several apis fix!: marked resource name of security setting as not-required 0cfe2ce81 chore: regenerate API index 3ec255e46 feat: publish AllocationEndpoint v1alpha API artifacts 70d5a8271 feat: add vizier service to aiplatform v1 BUILD.bazel 0766e6d42 feat: add metadata from dialogflow related to transcript segment feat: add sentiment data for transcript segment feat: add obfuscated if from dialogflow 47b217160 chore: regenerate API index f75ccc2ee fix(ruby)!: Fix Ruby namespace for videointelligence/v1p3beta1 6ce857fc9 docs(ruby): update product documentation url for monitoring metrics scopes 4f1ea836a feat: Google Workspace Add-ons logging proto for documentation 15759865d docs(samples): add auto-generated samples for Node with api short name in region tag fafca4935 chore: prepare BUILD.bazel for Python library generation e95899752 build(node): update artifact name for npm 22d2e1b2e chore: regenerate API index fcf719d03 fix: remove classes for all v1alpha methods 07d152476 docs(ruby): Remove a broken documentation link 83bf2aeab chore(ruby): Configure ruby gapic generation f73ccb9c8 fix(ruby): Link to the correct wrapper library 161fdb449 feat: add `google/api/routing.proto` 667a4785d build(node): update artifact name for npm 6ef16b9ec docs(samples): add auto-generated Node samples build(generator): find protoc based on its bazel location a6b19cbb7 build: add rules to pull in type dependency aa73c560f chore(python): Prepare artifactregistry v1 BUILD.bazel for release 91bde79d6 docs: Provide a more relevant product documentation URL for the Identity Toolkit API 9367d6f96 chore(ruby): disable strict yard tests for binaryauthorization/v1 ddf135906 chore(ruby): Set Ruby GAPIC generator parameters for artifactregistry/v1 f5de29b4e chore(ruby): Set Ruby GAPIC generator parameters for deploy/v1 b224dfa52 chore: use gapic-generator-python 0.51.2 d615c1917 chore: regenerate API index dfaf37b66 feat: Add PAUSED state to Subtask and add task details protos e648e5c16 fix(ruby): depend on the existing access_context_manager and os_config clients rather than copying their classes into the asset client 5eeefdc0e chore: regenerate API index 6d40da439 feat: Artifact Registry v1 public protos 9e539bd32 chore: regenerate API index a3dccab3d feat: binaryauthorization v1 public protos 4f46ddcc9 feat: auto-generate samples for GAPIC clients 376e8e928 fix: add missing read api retry setting on SplitReadStream 1dc139d74 chore: update gapic-generator-csharp to 1.3.10 chore: update rules_gapic to 0.7.0 feat: rules `csharp_proto_library` and `csharp_grpc_library` are now sourced from `rules_gapic` (instead of `gapic-generator-csharp`). chore: re-enabled C# build rules for BigQuery/v2 and BigQuery/Connection/v1beta1 6c104bee4 chore(ruby): Embed gkehub/v1/* subdirectory protos into the gkehub/v1 client 05248f1c6 chore: regenerate API index 48a070fcd feat: add a new ListModels method to Moblab API 85830df32 chore(ruby): allow google-cloud-container_analysis-v1 to depend on 1.x versions of grafeas-v1 810074f1f Synchronize new proto/yaml changes. 835a0e073 chore(ruby): Embed accesscontextmanager/type types into the accesscontextmanager/v1 client 6d969eb67 chore(ruby): Configure Ruby GAPIC generator parameters for networksecurity v1beta1 and identitytoolkit v2 1872f4583 feat: add output_config request field 7c4eb0bdb chore(bazel): update rules_gapic to v0.6.3 abed0add1 chore: update gapic-generator-csharp to 1.3.8 83728bba0 chore: enable python snippetgen for privatecatalog ab61c5232 chore: regenerate API index b4da4fd5e feat: add BigQuery Storage Write API v1 ddf396f7e chore: regenerate API index b201fa037 feat: assuredworkloads v1 public protos 0f360f0d1 chore: regenerate API index ea09b6554 feat: publish cloud/sql/v1 artifacts 2ec824213 feat: filter is used to filter conversations used for issue model training feat: update_time is used to indicate when the phrase matcher was updated cce61a96a chore: regenerate API index 3d1ce7126 feat: Publish Google Cloud Deploy v1 API 48d9fb8c8 chore: regenerate API index 4bde29304 chore(googleads)!: remove protos for v6, which has sunset d9ac7faa4 chore: regenerate API index 020672e48 feat: add GetMetrics and MigrateKey methods to reCAPTCHA enterprise API 44c497f37 feat: add SecurityLevel option on HttpsTrigger 231af018d chore: regenerate API index a9aafd58c feat: IdentityToolkit v2 public protos 56614520e docs: Align session length with public documentation feat: Expose estimated bytes that a session will scan. a27fb7a89 chore: regenerate API index 1f1d09d4c feat: added a flag to enable/disable gvnic on a node pool feat: added node pool level network config feat: added update support for node pool labels, taints and network tags feat: added configuration for workload certificates and identity service component feat: added configuration for node pool defaults, autopilot, logging and monitoring feat: added the option to specify L4 load balancer configuration and IP v6 configuration feat: added the option to list supported windows versions fix: deprecated KALM addon config option fix: deprecated cluster status condition code docs: clarified SetNodePoolSize API behavior caad48d4b feat: Added a new `KeywordMatchMode` field to support more keyword matching options feat: Added more `DiversificationLevel` configuration options c53262d8c build(nodejs): correct artifact name for npm bdde0473f chore: remove nonexistent method from config 067740a45 chore: Kokoro CI configuration 885183fce chore: Remove unnecessary double space in example API de0d4775e Synchronize new proto/yaml changes. b64d30b2b chore: regenerate API index bf57b2c88 feat: add API ImportCustomer for Cloud Channel API docs: update comments for a few fields 5d91687b1 chore: regenerate API index 31d2d3432 feat: add OSConfigZonalService API Committer: @jaiminsh 9c7eb1f9a feat: Release of relationships in v1, Add content type Relationship to support relationship search Committer: yuwangyw@ 8bc099113 chore: Update orchestration/airflow BUILD.bazel files for nodejs e3c419f94 docs: clarified some LRO types 52c89139a chore: adjust namespacing and package name for Metrics Scopes API Committer: @busunkim96 f47c38882 chore(ruby): Populate Ruby microgenerator arguments for GkeHub V1 and V1beta 1549a69af docs: Align session length with public documentation feat: Align ReadRows timeout with other versions of the API. cd16abbf0 docs: clarified some LRO types b7537df8d chore: regenerate API index 3c414afa9 feat: add `CheckCompatibility` method to the API 1c01db6a4 chore: regenerate API index 2c7f233a0 feat: Deprecated SearchAssignments in favor of SearchAllAssignments feat: Reservation objects now contain a creation time and an update time feat: Added commitment_start_time to capacity commitments feat: Force deleting capacity commitments is allowed while reservations with active assignments exist feat: ML_EXTERNAL job type is supported feat: Optional id can be passed into CreateCapacityCommitment and CreateAssignment docs: Clarified docs for None assignments fix!: Fixed pattern for BiReservation object BREAKING_CHANGE: Changed from `bireservation` to `biReservation` ee78ed722 chore: regenerate API index 67c780ba3 feat: add Vizier service to aiplatform v1 aa15f3287 docs: clarified some LRO types docs: fixed some wrong update mask descriptions 212712659 chore: regenerate API index 321abab21 feat: add prediction service RPC RawPredict to aiplatform_v1beta1 feat: add tensorboard service RPCs to aiplatform_v1beta1: BatchCreateTensorboardRuns, BatchCreateTensorboardTimeSeries, WriteTensorboardExperimentData feat: add model_deployment_monitoring_job to Endpoint in aiplatform_v1beta1 feat: add deployment_group to DeployedIndex in aiplatform_v1beta1 feat: add ModelEvaluationExplanationSpec in aiplatform_v1beta1 298a980ac chore: regenerate API index fbae10c8f feat: Add `OnPremCluster` and `MultiCloudCluster` as `GkeCluster` equivalent field 2e9e9ef33 chore: regenerate API index 8031cc26f feat: add XAI, model monitoring, and index services to aiplatform v1 583dd6a54 chore: regenerate API index 03ce2ebf5 feat: added support for Notebooks v1 c1296cd1d chore(bazel): update rules_gapic to v0.6.2 e3d9b11ab feat: add support for Key Reimport 577814ea1 chore: regenerate API index 69fe13f7c feat: Update osconfig v1 and v1alpha with WindowsApplication 9e99074fc fix(datastream)!: Change a few resource pattern variables from camelCase to snake_case ce5500122 chore: regenerate API index 17d3fb258 feat: added v3 proto for online/batch document translation and updated v3beta1 proto for format conversion e9da6f8b4 feat: support version reporting API 41635ad2f chore: update gapic-generator-ruby to 0.10.1 677caf0b5 build: use gapic-generator-typescript v2.4.1 43095748d docs: clarified some LRO types docs: fixed some wrong update mask descriptions 848854523 feat: display_name is the display name for the assigned issue ccb73479a chore: regenerate API index 354d0763e feat: Added support for logs-based alerts: https://cloud.google.com/logging/docs/alerting/log-based-alerts feat: Added support for user-defined labels on cloud monitoring's Service and ServiceLevelObjective objects fix!: mark required fields in QueryTimeSeriesRequest as required 9e36f4ec3 feat: generate java files for error_reason.proto, bigquery_audit_metadata.proto and localized_text.proto 4b6bb3ded feat: Add Canada Regions And Support compliance regime 4006aa5cb chore: update rules_gapic for build_gen change 410f323cd chore: update bazel BUILD 557286540 feat: Update cloudbuild proto with the service_account for BYOSA Triggers. 41e44ac10 fix: add missing annotation for batch document translation be31a88c1 chore: cleanup deprecated Dataproc v1beta2 API references cdc9747a7 chore(googleads): Disables `legacy_proto_load` on Node.js GAPICs dd5050968 docs(ruby): Correct the name of the corresponding wrapper library 3cd708edb feat:add script field to BuildStep message 8a770c332 chore: regenerate API index 8bf048db6 feat!: delete deprecated Dataproc v1beta2 API client cb637a6db docs: Keep the API doc up-to-date feat: update grpc service config settings to reflect correct API deadlines chore: remove relative private links from search service comments to prevent crashing client lib generation tool 27600833c chore: regenerate API index 8c0e4a368 feat: Add request_id under `DeleteMembershipRequest` and `UpdateMembershipRequest` ba30d8097 chore: regenerate API index 9e617db50 feat: add `GetDataRetentionSettings`, `UpdateDataRetentionSettings` methods to the API 7ae76714a chore(ruby): Minor updates to links and library descriptions for CCAI and Dialogflow 061db160e chore: Add build langauge-specific targets for extended_operations.proto a0721b50d chore: regenerate API index d06d94e54 fix!: Remove ActivateSpoke and DeactivateSpoke methods BREAKING_CHANGE: ActivateSpoke and DeactivateSpoke were included in a previous change by mistake feat: Add hub.routing_vpcs field docs: Specify that site_to_site_data_transfer field must be set to true a5b180f2f chore: Add extended_operations_proto target 68e5bf304 feat: Add extended_operations.proto with annotation definitions for non-standard (not compliant with https://google.aip.dev/151) LRO 06345f7b9 feat: turns on self-signed JWT feature flag 3b4dc7a76 chore: regenerate API index beb5d2b11 chore: Configure Dialogflow CX for Ruby clients 0b896069c chore(bazel): update Go GAPIC generator to v0.23.0 7cb3f3bb6 chore(bazel): update rules_gapic to v0.6.0 84b7c63c6 build: change links to make them absolute ed7394929 feat: Add BigQueryAuditMetadata proto. The BigQueryAuditMetadata proto is used by BigQuery Cloud Audit Logging. It is encoded as a google.protobuf.Struct message inside the metadata field of the AuditLog proto 62d50355d docs: Keep the API doc up-to-date 853cfd33b docs: Improvements to various message and field descriptions 76bed90af feat: Add transcript normalization 5d0a68960 chore: Configure Ruby clients for datastream, networkconnectivity, accesscontextmanager, and ccai 5f761138c feat: Publish new fields to support cluster group routing for Cloud Bigtable e1738ee97 chore: update gapic-generator-java version to 2.1.0 8119b1870 chore: update gax-java version to 2.3.0 b4e27bc72 chore(bazel): update gapic-generator-go and Go Bazel deps a75aa0703 docs: minor formatting fixes to Cloud Functions reference docs a6c8dc7f7 feat: Add new commute methods in Search APIs feat: Add new histogram type 'publish_time_in_day' feat: Support filtering by requisitionId is ListJobs API 01c9379e7 chore: regenerate API index b6901e755 feat: Added the Backup resource and Backup resource GetIamPolicy/SetIamPolicy to V1 feat: Added the RestoreService method to V1 a0565a98b chore: regenerate API index 7fec72948 feat: Add ability to configure BuildTriggers to create Builds that require approval before executing and ApproveBuild API to approve or reject pending Builds b9e69f850 feat: Release of relationships in v1, Add content type Relationship to support relationship export Committer: lvv@ b08c55646 chore(ruby): Backfill Ruby microgenerator params for Transcoder V1 c47ff19bc feat:Publish Workflows call logging proto for documentation 09a618302 fix: Update DocumentUnderstandingService default_host in v1beta2 from a regional endpoint, to non-regional 08ae6839a chore: regenerate API index 6ef6c29b0 feat(googleads): protos for v8.1 of Google Ads API eb7c9d1c3 chore: regenerate API index f5e39a2f7 chore: no-op proto generator run to pickup Locations service metadata e932524ec feat: add new issue model API methods feat: support Dialogflow and user-specified participant IDs docs: update pubsub_notification_settings docs e41be609f fix(pubsub): replace IAMPolicy in API config 626df528c feat: added support for DLP templates; expose `Locations` service to get/list avaliable locations of Dialogflow products 114b1416f feat: added support for DLP templates; expose `Locations` service to get/list avaliable locations of Dialogflow products docs: reorder some fields 4c984f3be feat: expose `Locations` service to get/list avaliable locations of Dialogflow products; fixed some API annotations 7b6a2ceed feat: Add topic retention options 411e51eea feat: Expose `Locations` service to get/list avaliable locations of Dialogflow products docs: reorder some fields 10185d07a feat: add total_billed_time response field 2802dd5d6 chore(ruby): Switch bazel builds to v0.10.0 of the Ruby microgenerator a739464ca chore: release gapic-generator-java v2.0.1 2c1c2ac11 build: update from broken v1beta2 links to v1 9a7d19079 feat: Add video cropping feature feat: Add video padding feature feat: Add ttl_after_completion_days field to Job docs: Update proto documentation docs: Indicate v1beta1 deprecation f642cc61d build(nodejs): correct artifact name for npm 23b8cadd2 chore: regenerate API index 2efb6951f feat: add support for HMAC, Variable Key Destruction, and GenerateRandom ff6688b87 chore: regenerate API index 702ccd007 feat: add support for Metrics Scopes API 909c3adec fix: Updating behavior of source_upload_url during Get/List function calls 882e6d69a chore: release gapic-generator-php v1.0.5 a47f0a4aa docs(retail): Quote several literal expressions for better rendering 0f7c56c36 chore(ruby): Correct and fill in Ruby microgenerator arguments in preparation for initial library generation 09e5b1716 fix: fix validation result docs feat: add language code to streaming recognition result feat: add time zone and security settings to conversation profile docs: update agent docs docs: update entity type docs docs: update intent docs 8dfb2156b fix: fix validation result docs feat: add language code to streaming recognition result docs: update environment docs ec9c7e539 chore: regenerate API index f1d0efe57 fix!: Specify a C# namespace option to be consistent with other Cloud APIs d9eaf41de feat!: release gapic-generator-java v2.0.0 bb0a090d9 chore: release gapic-generator-java v1.0.17 41521e288 docs: fix typos 30c8964c1 chore: Remove legacy Cloud DMS proto file 2f9af297c docs: Remove HTML tags from Cloud Retail API library docs 6e4ddb513 build(node): update artifact name for Node.js e35709ba1 chore: release gapic-generator-php v1.0.4 dc9332352 docs: remove remaining private links 81c199d62 chore: regenerate API index 5af6d9bde feat: add advanced settings for agent level feat: add rollout config, state and failure reason for experiment feat: add insights export settings for security setting feat: add language code for streaming recognition result and flow versions for query parameters docs: deprecate legacy logging settings b50902f3e chore: regenerate API index 05d477b7c feat: add advanced settings for agent level feat: add rollout config, state and failure reason for experiment feat: add insights export settings for security setting feat: add language code for streaming recognition result and flow versions for query parameters docs: deprecate legacy logging settings c03bfe0cd docs: Replace "global policy" with "system policy" in Binary Authorization documentation f97353211 fix: failing tests for LRO check methods ec3f13905 docs: remove private links as these are public-facing docs 558bdfec3 chore(ruby): Activate snippet generation for vision-v1 8de886fe5 chore: release gapic-generator-php v1.0.3 efaf6f1c9 feat(googleads): set `legacy_proto_load=True` on Node.js GAPICs 102de1721 chore: regenerate API index fff46d6ad feat: Add restricted Retail Search features for Retail API v2beta. b4967c737 docs(filestore): Fix various formatting issues and broken links 26871a2f8 chore: regenerate API index 6d27f5bd3 feat: Add files for Network Connectivity v1 API. 39e6bd288 chore: update gapic-generator-ruby to 0.9.2 baba7394f fix: Don't include generator test protos in the API index. fa5dd8d9c feat: Add EU Regions And Support compliance regime 294cfa906 chore: regenerate API index cea896d10 feat: Add restricted Retail Search features for Retail API v2. 760b5d8bf docs: Add a new build phase `SETUPBUILD` for timing information beb8e30b2 chore: regenerate API index 5b1f7cf1d feat: Added support for BigQuery connections entries feat: Added support for BigQuery routines entries feat: Added usage_signal field feat: Added labels field feat: Added ReplaceTaxonomy in Policy Tag Manager Serialization API feat: Added support for public tag templates feat: Added support for rich text tags docs: Documentation improvements 6919bc103 chore: regenerate API index 0b261def1 chore: publish Access Context Manager API v1 b837e9138 chore: regenerate API index 46fdf2d70 fix: Update encryption_key fields to "bytes" type. fix: Improve date/times and field name clarity in lifecycle conditions. 2948f31dd feat: In Secret Manager, users can now use filter to customize the output of ListSecrets/ListSecretVersions calls b69daf76f chore: regenerate API index 8962c92e9 feat: Update proto definitions for bigquery/v2 to support new proto fields for BQML. 4fca87789 feat: add total_billed_time response field. fix!: phrase_set_id is required field in CreatePhraseSetRequest. fix!: custom_class_id is required field in CreateCustomClassRequest. c3b8283ae chore: regenerate API index 5bf36f20f feat: add finding_class and indicator fields in Finding 9cd96aea6 chore: regenerate API index fe82a7539 feat: Add restricted Retail Search features for Retail API v2alpha. 28ccba2ab chore: Update storagetransfer v1 BUILD.bazel for python 3c7864b59 chore: regenerate API index c8fac9a3f chore: publish cloud network services v1beta1 6cf3b8e73 chore: regenerate API index 746461e42 feat!: *Change metadata field for the AnalyzeIamPolicyLongrunning. feat: Add AnalyzeMove API. feat: Add read_mask field for SearchAllResourcesRequest feat:Add VersionedResource/AttachedResource fields for ResourceSearchResult. 762094a99 fix: enable self signed jwt for grpc chore: use gapic-generator-python 0.50.5 a5eda9f0e feat!: update CCAI Insights protos. BREAKING_CHANGE: change nesting of Conversation.Transcript.Participant to ConversationParticipant and remove AnnotationBoundary.time_offset e9ee226df chore: regenerate API index b65a2dd55 chore: Remove the On-Demand Scanning API from googleapis 3744b86f3 docs: fix typos 11d5ead74 feat:Publish Workflows execution logging proto for documentation b1844c9b9 chore: Remove redundant service config YAML 3859723d7 chore: regenerate API index 2d0aae27b feat!: storagetransfer public protos update BREAKING CHANGE: field annotations are added. Allowing this since no client libraries were generated based on old protos. e8d2996cc fix: add missing dependency configmanagement.proto, cloudauditlogging.proto, metering.proto, multiclusteringress.proto, servicemesh.proto to v1alpha client 70e4a5b60 build(nodejs): correct package name for npm 75e981247 chore: regenerate API index 4e836c7c2 feat: Adds BigQuery output table field to batch prediction job output config feat: Adds Feature Store features feat: Adds CustomJob.web_access_uris, CustomJob.enable_web_access fields feat: Adds Endpoint.network, Endpoint.private_endpoints fields and PrivateEndpoints message feat: Adds Execution.State constants: CACHED and CANCELLED feat: Adds IndexEndpoint.private_ip_ranges field feat: Adds IndexEndpointService.deployed_index_id field feat: Adds MetadataService.DeleteArtifact and DeleteExecution methods feat: Adds ModelMonitoringObjectConfig.explanation_config field and ModelMonitoringObjectConfig.ExplanationConfig message feat: Adds ModelMonitoringObjectiveConfig.TrainingPredictionSkewDetectionConfig.attribution_score_skew_thresholds and ModelMonitoringObjectiveConfig.PredictionDriftDetectionConfig.attribution_score_drift_threshold fields feat: Adds fields to Study message 9a0b354fe fix(nodejs): add dependencies for Node.js package 8fdcaf84e build(nodejs): correct npm artifact name 4afa0ce90 chore: regenerate API index 63bd33f6b feat: added a new API method FindMostStableBuild 43fda8045 build(nodejs): fix naming for package name f84d1e2ed feat: Implementation of Build Failure Info: - Added message FailureInfo field efecdbf96 build(nodejs): correct package name for npm 0078ca654 chore: regenerate API index 22e280d15 feat!: Removes breaking change from v1 version of AI Platform protos 3585f5058 chore: Update orchestration/airflow v1 BUILD.bazel for python 90f4259a6 chore(ruby): Fill out Ruby generator options for datafusion, filestore, and networkmanagement 194c144b1 chore: regenerate API index 17a7a0bdf feat: OSConfig AgentEndpoint: add basic os info to RegisterAgentRequest, add WindowsApplication type to Inventory ee8c183f8 chore: regenerate API index 7a1fb837d feat: add a WorkerPools API de11e31b8 docs: remove obsolete content d767d0ab9 chore: use gapic-generator-typescript v2.1.0 f7a2eba79 chore: regenerate API index 9ae82b82b feat: add standard sql table type, update scalar type enums 80f404215 fix: Updating WORKSPACE files to use the newest version of the Typescript generator. 077f0c624 fix!: mark some bools as optional, correct response type of DeleteCaPool a9338c63a feat:Publish Cloud ResourceSettings v1 API c376cadb2 feat: Update the example for report v2 integration. dd1d95a98 chore: regenerate API index 961b45b1a fix: Remove Storage v2 GetObject method 46bdf2303 chore: regenerate API index 56ffafc26 docs: fixed broken links ca5d91f77 chore: regenerate API index 83c372893 feat: Adds additional_experiments field to AutoMlTablesInputs feat: Adds additional_experiments field to AutoMlForecastingInputs feat: Adds two new ModelType constants for Video Action Recognition training jobs dddf5cb27 chore: regenerate API index cc51e4818 feat!: Removes AcceleratorType.TPU_V2 and TPU_V3 constants feat: Adds AcceleratorType.NVIDIA_TESLA_A100 constant feat: Adds BigQuery output table field to batch prediction job output config feat: Adds JobState.JOB_STATE_EXPIRED constant feat: Adds AutoscalingMetricSpec message feat: Adds PipelineService methods: CreatePipelineJob, GetPipelineJob, ListPipelineJobs, DeletePipelineJobs, CancelPipelineJobs feat: Adds fields to Study message 34b0ce600 fix: add missing dependency configmanagement.proto, cloudauditlogging.proto, metering.proto, multiclusteringress.proto, servicemesh.proto to v1alpha client 369fd2ade feat: Adds additional_experiments field to AutoMlTablesInputs feat: Adds two new ModelType constants for Video Action Recognition training jobs f81e4aa3a chore: regenerate API index cdea5d8c2 chore: publish Storage v2 API artifacts eba54922f feat: add cloud spanner connection support c61a01d99 feat: Update the example for report v2 integration. acb4f89c3 chore: regenerate API index bae101173 feat: Update the example for report v2 integration. db8f3aa3e chore: regenerate API index 2d51c27db feat: Enables generation of client libraries for C#, php and ruby. 41b50a384 feat: add `minute_ranges` field to `RunRealtimeReportRequest` object which can be used to specify the time range (in minutes) for realtime report queries docs: document the increase from 8 to 9 of the number of allowed dimensions in a report query dd1ef2849 chore: use gapic-generator-python 0.50.4 e96a2e6ad feat: Publish message definitions for new Cloud Datastore migration logging steps. 1eade8161 feat: Tune Secret Manager auto retry parameters e2b7a98e2 feat: allow updating security group on existing clusters b2a7d2709 Remove Artman from README (#666) 54dc38399 chore(ruby): Switch Bazel jobs to use the Ruby gapic-generator 0.9.1 449686b58 chore: regenerate API index 509489a93 feat: Initial commit for the Transcoder V1 client libraries. 1986171d2 chore: regenerate API index cdb30b6f7 feat: added a new API method ListBuildTargets to list build targets that a user has access to fe3cc5e65 feat: Add method signature for Subscriber.Pull without the deprecated return_immediately field. b755d25e3 chore: regenerate API index b5532bb50 feat: added validation only mode when writing dashboards feat: added alert chart widget a9d8182ce build: update package name 220316cd3 chore: regenerate API index 78978f607 chore: Remove protos for googleads v4 and v5, which have sunset ac5d01307 chore: Update datafusion v1 BUILD.bazel for python 2b6185da3 feat: Publish Notification Service logging proto for documentation 8bdca74d2 chore: release gapic-generator-java v1.0.16 03a0afcd7 feat: allow updating security group on existing clusters e9f5f8d2f fix: update labels and package names 4e07eb760 chore: Update `py_gapic_library` args and a few service deadlines. b88b0a716 chore: regenerate API index 0c62f63ad chore: Add package/namespace options for C#, Ruby and PHP. This is a breaking change *only* for those languages, and packages for those languages have not been published yet. 2c6e4dd22 feat(spanner): add leader_options to InstanceConfig and default_leader to Database 820d7aeac fix: add missing dependency multiclusteringress https://github.com/googleapis/nodejs-gke-hub/pull/67 b8b50f18a build(nodejs): name should be @google-cloud/private-cataglog 9f8627ebb fix: add missing dependency configmanagement.proto https://github.com/googleapis/nodejs-gke-hub/pull/62 aa136fa66 feat: add new FieldBehavior NON_EMPTY_DEFAULT e9b2b616a feat: Adding subscription properties to streaming pull response in third party pubsub.proto. 490f1e9e3 chore: regenerate API index 125799dc9 fix!: Remove DiscoverConnectionProfile method signature which didn't populate the request sufficiently fix!: Overhaul resource annotations, some of which were incorrect and some of which were just non-ideal 1c5c56c18 chore: regenerate API index c5954ef05 chore(ruby): Switch Bazel jobs to use the Ruby gapic-generator 0.9.0 2e6b987a6 chore: regenerate API index a3c4f2a82 chore(ruby): Configure Ruby microgenerator arguments for Resource Manager V3 34210e9ec chore: regenerate API index 6797726dc feat: Data Fusion public protos 513440fda chore: use gapic-generator-python 0.50.3 6610b234c chore: regenerate API index f5cb59993 feat: composer public protos eb2c73b15 chore(ruby): Map service names that include the version b6b4b89ca fix: add dependencies for google/cloud/gkehub 5babb4bc7 chore: regenerate API index 24443e8a6 Synchronize new proto/yaml changes. d3d415247 chore: Update dataflow_v1beta3 BUILD.bazel for python 2bf1e2a67 chore: update python microgenerator to v0.50.2 c75abda73 chore: Update contactcenterinsights v1 BUILD.bazel for python 869d32e2f chore: Update networkmanagement v1 BUILD.bazel for python 8b4a440aa build(nodejs): name should be @google-cloud/apigee-connect 223efdf41 chore: regenerate API index 3d63fc7e6 feat: added v1beta, v1 messages and client for gkehub 478169f2a chore(bazel): update Go microgenerator to v0.21.1 6fa6c00ba chore: Update dataflow v1beta3 BUILD.bazel for python 5ad71e117 chore: regenerate API index da5f84269 feat: Added the gRPC service config for the Service Controller v1 API docs: Updated some comments. 4ba12b9ed chore: regenerate API index 3bd91d545 feat: added v1alpha messages and client for gkehub 7abd63f58 chore(internal): remove legacy, unused YAML from gapic directory ffc531383 chore: regenerate API index 125b03cd3 feat: Network Management public protos 6425b1d46 chore: regenerate API index 955fee2ad fix!: Add C#, PHP and Ruby options for all AI Platform protos f5b06c2ec chore: Update networksecurity v1beta1 BUILD.bazel for python 8cd4d12c0 chore: regenerate API index d69baf2e2 feat: Update Service Directory v1beta1 protos to include VPC Network field, and create/modify timestamp fields. 8b976f7c6 fix: add dependency log_severity.proto fb5c4fbc1 feat(spanner): add JSON type c4d3151da chore: regenerate API index 4c8d14a45 feat: filestore public protos 5d301f95d feat: add new searchable fields (memberTypes, roles, project, folders and organization), new request fields (assetTypes and orderBy) and new response fields (assetType, folders and organization) in SearchAllIamPolicies aeb62a6c0 chore: regenerate API index 3dc9b8e7c feat: dataflow public protos 02f62363c chore: regenerate API index 370df45ca feat: networksecurity public protos 7c7d22f6e chore: release gapic-generator-java v1.0.15 dba65e3c2 chore: remove legacy, unused YAML from gapic directory 2c1d1b276 chore: update resourcesettings build rules 284d1ddb8 build(node): fix package name hint 87fc4d48c feat: update ReviewDocumentRequest to allow set priority and enable validation. a5cec0a71 feat!: mark agent.default_language_code as required feat: add return_partial response to Fulfillment docs: add notes to train agent before sending queries 0e48ca446 chore: Update source_v1 BUILD.bazel for python 89b01d85e chore: regenerate API index b601f026f feat: Add SeekSubscription and Operations to API 9250dff2c chore: fix multi-version package names in grpc_service_config for gkeconnect 076f7e9f0 chore: remove all monolith Bazel deps chore: release gapic-generator-csharp v1.3.7 chore: release gapic-generator-go 0.20.5 chore: release gapic-generator-java 1.0.14 chore: release gapic-generator-php 1.0.1 chore: release gapic-generator-python 0.50.0 chore: update gapic-generator-ruby to the latest commit chore: release gapic-generator-typescript 1.5.0 5fe3c6322 docs: added notes to train agent prior to sending queries fix: added resource reference to agent_version 01bad53fe docs: added notes to train agent before sending queries 9d8dbc0dc chore: Update gkeconnect/gateway v1beta1 BUILD.bazel for python 052eb55b7 chore: regenerate API index cb44b173b chore(bazel): remove protoc-gen-docs_plugin from WORKSPACE 16f3e6fa3 feat: publishing OperationMetadata common proto 2d5f6e5a4 chore(bazel): update rules_gapic to v0.5.5. b26f86aa1 chore(ruby): Populate Ruby generator configuration for new clients 7e78ffde4 chore(ruby): Use latest microgenerator for Bazel GAPIC generation 551681f25 chore: release gapic-generator-java v1.0.13 f8f0fc28a chore: regenerate API index f176fe69e fix: Fixed casing of the Ruby namespace 33b7fbd2b chore: regenerate API index 90220e436 feat: Publish public APIs for FleetEngine 30c4de822 chore: regenerate API index 19906f9fc feat: update document.proto, add the processor management methods. 5308b8675 fix: replace IAMPolicy mixin in service config. 438bb4486 chore: regenerate API index 0481138c2 feat: publishing Testing API protos cbd13d819 chore(ruby): Use latest microgenerator for Bazel GAPIC generation 58187afe4 feat: added Automated agent reply type and allow cancellation flag for partial response feature. 6ddf77dbd docs: update comment in ListSuggestions to use absolute URL for /apis/design/design_patterns 010b301f7 chore: regenerate API index 1b6349f3a feat: eventarc public protos 8d1d66945 feat: add ECDSA secp256k1 to the list of supported algorithms. ecc3ac678 fix!: Set agent default language code as required. feat: Support partial response feature. docs: Update docs of Agents, Fulfillments, SecuritySettings and Sessions. f0ff5f028 chore: Update vpcaccess v1 BUILD.bazel for python-vpc-access 018bc85c7 feat: added Automated agent reply type and allow cancellation flag for partial response feature. 5dc8ff40e chore: Update serviceusage_v1 BUILD.bazel for python f01fe4ec3 chore: Update lifesciences v2beta BUILD.bazel for python d8698715e feat(spanner): add processing_units to Instance resource 4f71079f9 fix: Validate bazel analysis phase for the whole workspace on each presubmit of individual packages. 08c4eeb53 chore: release gapic-generator-java v1.0.12 526cb00f7 build: edit package name to match published version c670b2729 docs: update link in comments f2c68a97c chore: Update apigeeconnect_v1 BUILD.bazel for python 0bcee5c67 chore: regenerate API index 445a4960f fix!: Correct capitalization for C#, Ruby and PHP namespaces/packages. 7e7ec3748 build: typo in package_name field 4a7f6d203 chore: release gax-java v1.65.1 b5d6d2bb4 chore: regenerate API index 67190ee73 feat: add protos and build files for Google Ads API v8 6485a7e70 chore: add GAPIC build rules for //google/cloud/gkeconnect/gateway 853f5d464 chore: fix devtools-clouddebugger-v2-py target 8a1a19c97 chore: add Python library generation rules for devtools/source 08fbf1399 fix: exclude pubsub_dev branch from mistaken-pull-closer 9e3105549 chore: release gapic-generator-java v1.0.11 020ba74ce docs: update currently supported Finding filter fields. ead323548 chore(bazel): update gapic-generator-go to v0.20.3 3f938c669 chore: release gapic-generator-php v1.0.0 6fb63a966 chore: fix missing proto deps for ondemandscanning b25ffdd67 chore: regenerate API index 97d42c651 feat: Add/Update API definitions for Cloud Channel API, including 3b7d5d21b chore(bazel): update gapic-generator-go to v0.20.2 e610c3bbc feat: support for NodeAutoprovisioning ImageType 0fa0d76aa feat: support for NodeAutoprovisioning ImageType 0778b6c49 chore: Update clouddebugger_v2 BUILD.bazel for python 89ea34335 chore: regenerate API index 255c1a8e3 feat!:Publish Cloud ResourceSettings v1 API 90717db75 feat: support sentiment analysis in bot testing 6ccfaf6f5 chore: regenerate API index 3be62a568 chore: Add package/namespace options for C#, Ruby and PHP. This is a breaking change *only* for those languages, and packages for those languages have not been published yet. e3fcbabc7 feat: support sentiment analysis in bot testing c76dbc16b chore: regenerate API index 293f5f81c chore: Add package/namespace options for C#, Ruby and PHP. This is a breaking change *only* for those languages, and packages for those languages have not been published yet. 2aacd415c chore: Remove the unused legacy gapic_ruby_library rules binding. 6c4106b6a fix: Fix Ruby gem title of documentai v1 (package not currently published) 73998752d chore: release rules_gapic v0.5.4 109a2408a chore: regenerate API index 3e0f7ebfb feat: Move CommonOperationMetadata into a separate proto file for potential reuse. 060218c3c chore: rename PHP microgen Bazel rules, delete monolith rules in googleapis 378aa28c8 chore: Update clouddms_v1 BUILD.bazel for python 6afe7923c chore: migrate storage/v1beta2 to the Ruby microgenerator chore: fix package name for storage/v1beta1 (unpublished) Committer: @virost 5b4adc822 chore: migrate workflow/vulnerability to the PHP microgenerator a37ec28fd chore: migrate language/v1beta1 to the PHP microgenerator ba89dace2 feat: Add the `principal` field to the ServiceAccountDelegationInfo proto. Modify some field level comments with new details and examples. e91939ef5 chore: migrate KMS to the PHP microgenerator 76a52a5ed chore: migrate pubsub to the PHP microgenerator b52a804f5 chore: migrate clouddms to the PHP microgenerator fba52a730 chore: regenerate API index 46386b5ae feat: This is the first public Datastream client. Based on: https://cloud.google.com/datastream/docs d9dca7f8d chore: migrate resourcemanager/v3 to the PHP microgenerator fddd7ce9f chore: release gapic-generator-php v0.1.7 3fb0a60da chore: regenerate API index 204809ddb feat: Move CommonOperationMetadata into a separate proto file for potential reuse. b6b589add chore: regenerate API index e966ac065 feat: ondemandscanning public protos 0cfebe6d2 chore: Remove monolith generator rules for Java and Python a5f96d06e chore: release gapic-generator-java v1.0.10 8c3d71212 chore: regenerate API index 51d99df02 feat: Add Pub/Sub Lite Reservation APIs d826b3075 chore: regenerate API index 2e1505695 feat: connectgateway public protos 46f4f7054 chore: update ruby rules to use the correct assembly_pkg rule 0b26f05c9 chore: regenerate API index 5908effa2 fix!: Specify namespace options for C# and PHP. git-subtree-dir: third_party/googleapis git-subtree-split: 853e8a29cecd0816c8b003b299032c3a5168ef8b --- .github/mistaken-pull-closer.yml | 3 +- .github/workflows/generate_api_index.yaml | 7 +- .kokoro/continuous.cfg | 2 + .kokoro/presubmit.cfg | 2 + README.md | 18 - WORKSPACE | 170 +- api-index-v1.json | 57564 +++++++++------ gapic/lang/common.yaml | 33 - gapic/lang/csharp_gapic.yaml | 9 - gapic/lang/doc.yaml | 19 - gapic/lang/go_gapic.yaml | 9 - gapic/lang/java_gapic.yaml | 9 - gapic/lang/nodejs_doc.yaml | 9 - gapic/lang/nodejs_gapic.yaml | 9 - gapic/lang/php_gapic.yaml | 9 - gapic/lang/python_doc.yaml | 9 - gapic/lang/python_gapic.yaml | 9 - gapic/lang/ruby_doc.yaml | 9 - gapic/lang/ruby_gapic.yaml | 9 - gapic/metadata/BUILD.bazel | 6 +- gapic/packaging/api_defaults.yaml | 49 - gapic/packaging/common_protos.yaml | 36 - gapic/packaging/dependencies.yaml | 111 - google/actions/type/BUILD.bazel | 3 +- google/ads/admob/v1/BUILD.bazel | 20 +- google/ads/googleads/v4/BUILD.bazel | 262 - google/ads/googleads/v4/common/BUILD.bazel | 94 - google/ads/googleads/v4/common/ad_asset.proto | 62 - .../googleads/v4/common/ad_type_infos.proto | 636 - .../ads/googleads/v4/common/asset_types.proto | 88 - google/ads/googleads/v4/common/bidding.proto | 171 - .../googleads/v4/common/click_location.proto | 49 - google/ads/googleads/v4/common/criteria.proto | 594 - .../criterion_category_availability.proto | 83 - .../v4/common/custom_parameter.proto | 41 - google/ads/googleads/v4/common/dates.proto | 40 - .../explorer_auto_optimizer_setting.proto | 39 - .../ads/googleads/v4/common/extensions.proto | 357 - .../ads/googleads/v4/common/feed_common.proto | 40 - .../googleads/v4/common/final_app_url.proto | 47 - .../googleads/v4/common/frequency_cap.proto | 62 - .../v4/common/keyword_plan_common.proto | 76 - .../v4/common/matching_function.proto | 127 - google/ads/googleads/v4/common/metrics.proto | 560 - .../v4/common/offline_user_data.proto | 192 - google/ads/googleads/v4/common/policy.proto | 223 - .../v4/common/real_time_bidding_setting.proto | 38 - google/ads/googleads/v4/common/segments.proto | 313 - .../ads/googleads/v4/common/simulation.proto | 203 - .../ads/googleads/v4/common/tag_snippet.proto | 51 - .../v4/common/targeting_setting.proto | 86 - .../ads/googleads/v4/common/text_label.proto | 41 - .../googleads/v4/common/url_collection.proto | 46 - .../ads/googleads/v4/common/user_lists.proto | 292 - google/ads/googleads/v4/common/value.proto | 51 - .../googleads/v4/enums/access_reason.proto | 57 - .../ads/googleads/v4/enums/access_role.proto | 55 - .../account_budget_proposal_status.proto | 63 - .../enums/account_budget_proposal_type.proto | 56 - .../v4/enums/account_budget_status.proto | 53 - .../v4/enums/account_link_status.proto | 49 - .../ad_customizer_placeholder_field.proto | 56 - .../v4/enums/ad_group_ad_rotation_mode.proto | 53 - .../v4/enums/ad_group_ad_status.proto | 55 - .../ad_group_criterion_approval_status.proto | 56 - .../v4/enums/ad_group_criterion_status.proto | 55 - .../googleads/v4/enums/ad_group_status.proto | 55 - .../googleads/v4/enums/ad_group_type.proto | 90 - .../googleads/v4/enums/ad_network_type.proto | 62 - .../ad_serving_optimization_status.proto | 64 - .../ads/googleads/v4/enums/ad_strength.proto | 62 - google/ads/googleads/v4/enums/ad_type.proto | 125 - .../enums/advertising_channel_sub_type.proto | 90 - .../v4/enums/advertising_channel_type.proto | 70 - ...iate_location_feed_relationship_type.proto | 48 - ...affiliate_location_placeholder_field.proto | 77 - .../googleads/v4/enums/age_range_type.proto | 65 - .../v4/enums/app_campaign_app_store.proto | 50 - ..._campaign_bidding_strategy_goal_type.proto | 64 - .../v4/enums/app_payment_model_type.proto | 47 - .../v4/enums/app_placeholder_field.proto | 75 - google/ads/googleads/v4/enums/app_store.proto | 50 - .../enums/app_url_operating_system_type.proto | 50 - .../googleads/v4/enums/asset_field_type.proto | 62 - .../v4/enums/asset_performance_label.proto | 62 - .../ads/googleads/v4/enums/asset_type.proto | 59 - .../v4/enums/attribution_model.proto | 72 - .../googleads/v4/enums/batch_job_status.proto | 53 - .../v4/enums/bid_modifier_source.proto | 51 - .../googleads/v4/enums/bidding_source.proto | 55 - .../v4/enums/bidding_strategy_status.proto | 52 - .../v4/enums/bidding_strategy_type.proto | 110 - .../v4/enums/billing_setup_status.proto | 58 - .../v4/enums/brand_safety_suitability.proto | 73 - .../v4/enums/budget_delivery_method.proto | 53 - .../googleads/v4/enums/budget_period.proto | 47 - .../googleads/v4/enums/budget_status.proto | 50 - .../ads/googleads/v4/enums/budget_type.proto | 66 - .../call_conversion_reporting_state.proto | 56 - .../v4/enums/call_placeholder_field.proto | 66 - .../v4/enums/callout_placeholder_field.proto | 47 - .../v4/enums/campaign_criterion_status.proto | 55 - .../v4/enums/campaign_draft_status.proto | 65 - .../v4/enums/campaign_experiment_status.proto | 77 - ...mpaign_experiment_traffic_split_type.proto | 53 - .../v4/enums/campaign_experiment_type.proto | 59 - .../v4/enums/campaign_serving_status.proto | 61 - .../v4/enums/campaign_shared_set_status.proto | 50 - .../googleads/v4/enums/campaign_status.proto | 53 - .../v4/enums/change_status_operation.proto | 54 - .../enums/change_status_resource_type.proto | 76 - .../ads/googleads/v4/enums/click_type.proto | 203 - .../v4/enums/content_label_type.proto | 89 - .../v4/enums/conversion_action_category.proto | 106 - .../conversion_action_counting_type.proto | 52 - .../v4/enums/conversion_action_status.proto | 54 - .../v4/enums/conversion_action_type.proto | 122 - .../v4/enums/conversion_adjustment_type.proto | 52 - .../conversion_attribution_event_type.proto | 48 - .../v4/enums/conversion_lag_bucket.proto | 117 - .../conversion_or_adjustment_lag_bucket.proto | 206 - ...n_category_channel_availability_mode.proto | 58 - ...on_category_locale_availability_mode.proto | 61 - .../criterion_system_serving_status.proto | 50 - .../googleads/v4/enums/criterion_type.proto | 134 - .../enums/custom_interest_member_type.proto | 50 - .../v4/enums/custom_interest_status.proto | 51 - .../v4/enums/custom_interest_type.proto | 50 - .../v4/enums/custom_placeholder_field.proto | 129 - .../customer_match_upload_key_type.proto | 53 - ...onversion_eligibility_failure_reason.proto | 68 - .../v4/enums/data_driven_model_status.proto | 62 - .../ads/googleads/v4/enums/day_of_week.proto | 65 - google/ads/googleads/v4/enums/device.proto | 59 - .../v4/enums/display_ad_format_setting.proto | 54 - .../enums/display_upload_product_type.proto | 97 - .../googleads/v4/enums/distance_bucket.proto | 127 - .../enums/dsa_page_feed_criterion_field.proto | 51 - .../enums/education_placeholder_field.proto | 111 - .../v4/enums/extension_setting_device.proto | 52 - .../googleads/v4/enums/extension_type.proto | 81 - .../v4/enums/external_conversion_source.proto | 135 - .../v4/enums/feed_attribute_type.proto | 83 - .../feed_item_quality_approval_status.proto | 52 - ...feed_item_quality_disapproval_reason.proto | 99 - .../googleads/v4/enums/feed_item_status.proto | 50 - .../v4/enums/feed_item_target_device.proto | 48 - .../v4/enums/feed_item_target_status.proto | 50 - .../v4/enums/feed_item_target_type.proto | 53 - .../enums/feed_item_validation_status.proto | 53 - .../googleads/v4/enums/feed_link_status.proto | 50 - .../enums/feed_mapping_criterion_type.proto | 50 - .../v4/enums/feed_mapping_status.proto | 50 - .../ads/googleads/v4/enums/feed_origin.proto | 53 - .../ads/googleads/v4/enums/feed_status.proto | 50 - .../v4/enums/flight_placeholder_field.proto | 118 - .../v4/enums/frequency_cap_event_type.proto | 50 - .../v4/enums/frequency_cap_level.proto | 54 - .../v4/enums/frequency_cap_time_unit.proto | 53 - .../ads/googleads/v4/enums/gender_type.proto | 53 - .../v4/enums/geo_target_constant_status.proto | 52 - .../v4/enums/geo_targeting_restriction.proto | 49 - .../v4/enums/geo_targeting_type.proto | 50 - .../v4/enums/google_ads_field_category.proto | 61 - .../v4/enums/google_ads_field_data_type.proto | 102 - .../v4/enums/hotel_date_selection_type.proto | 50 - .../v4/enums/hotel_placeholder_field.proto | 124 - .../v4/enums/hotel_price_bucket.proto | 52 - .../googleads/v4/enums/hotel_rate_type.proto | 62 - .../v4/enums/income_range_type.proto | 65 - .../v4/enums/interaction_event_type.proto | 62 - .../googleads/v4/enums/interaction_type.proto | 47 - .../ads/googleads/v4/enums/invoice_type.proto | 50 - .../v4/enums/job_placeholder_field.proto | 115 - .../v4/enums/keyword_match_type.proto | 53 - .../keyword_plan_competition_level.proto | 57 - .../keyword_plan_forecast_interval.proto | 56 - .../v4/enums/keyword_plan_network.proto | 50 - .../ads/googleads/v4/enums/label_status.proto | 48 - .../legacy_app_install_ad_app_store.proto | 59 - .../v4/enums/linked_account_type.proto | 46 - .../v4/enums/listing_group_type.proto | 52 - .../v4/enums/local_placeholder_field.proto | 119 - ..._extension_targeting_criterion_field.proto | 62 - .../enums/location_group_radius_units.proto | 50 - .../v4/enums/location_placeholder_field.proto | 68 - .../v4/enums/location_source_type.proto | 51 - .../v4/enums/manager_link_status.proto | 59 - .../matching_function_context_type.proto | 50 - .../v4/enums/matching_function_operator.proto | 65 - .../ads/googleads/v4/enums/media_type.proto | 64 - .../enums/merchant_center_link_status.proto | 53 - .../v4/enums/message_placeholder_field.proto | 61 - google/ads/googleads/v4/enums/mime_type.proto | 82 - .../googleads/v4/enums/minute_of_hour.proto | 56 - .../v4/enums/mobile_app_vendor.proto | 48 - .../v4/enums/mobile_device_type.proto | 50 - .../googleads/v4/enums/month_of_year.proto | 80 - .../v4/enums/negative_geo_target_type.proto | 52 - ...offline_user_data_job_failure_reason.proto | 51 - .../enums/offline_user_data_job_status.proto | 56 - .../v4/enums/offline_user_data_job_type.proto | 53 - ...erating_system_version_operator_type.proto | 50 - .../v4/enums/optimization_goal_type.proto | 53 - .../page_one_promoted_strategy_goal.proto | 30 - .../v4/enums/parental_status_type.proto | 53 - .../ads/googleads/v4/enums/payment_mode.proto | 64 - .../googleads/v4/enums/placeholder_type.proto | 121 - .../googleads/v4/enums/placement_type.proto | 59 - .../v4/enums/policy_approval_status.proto | 61 - .../v4/enums/policy_review_status.proto | 60 - .../v4/enums/policy_topic_entry_type.proto | 66 - ...idence_destination_mismatch_url_type.proto | 62 - ...dence_destination_not_working_device.proto | 57 - ...stination_not_working_dns_error_type.proto | 56 - .../v4/enums/positive_geo_target_type.proto | 58 - .../v4/enums/preferred_content_type.proto | 47 - .../price_extension_price_qualifier.proto | 53 - .../v4/enums/price_extension_price_unit.proto | 62 - .../v4/enums/price_extension_type.proto | 71 - .../v4/enums/price_placeholder_field.proto | 240 - .../product_bidding_category_level.proto | 57 - .../product_bidding_category_status.proto | 50 - .../googleads/v4/enums/product_channel.proto | 50 - .../enums/product_channel_exclusivity.proto | 52 - .../v4/enums/product_condition.proto | 53 - .../product_custom_attribute_index.proto | 59 - .../v4/enums/product_type_level.proto | 59 - ...romotion_extension_discount_modifier.proto | 48 - .../enums/promotion_extension_occasion.proto | 157 - .../enums/promotion_placeholder_field.proto | 95 - .../v4/enums/proximity_radius_units.proto | 50 - .../v4/enums/quality_score_bucket.proto | 53 - .../v4/enums/reach_plan_ad_length.proto | 53 - .../v4/enums/reach_plan_age_range.proto | 122 - .../v4/enums/reach_plan_network.proto | 54 - .../enums/real_estate_placeholder_field.proto | 115 - .../v4/enums/recommendation_type.proto | 95 - .../search_engine_results_page_type.proto | 54 - .../v4/enums/search_term_match_type.proto | 59 - .../enums/search_term_targeting_status.proto | 58 - .../v4/enums/served_asset_field_type.proto | 61 - .../v4/enums/shared_set_status.proto | 50 - .../googleads/v4/enums/shared_set_type.proto | 50 - .../simulation_modification_method.proto | 54 - .../googleads/v4/enums/simulation_type.proto | 59 - .../v4/enums/sitelink_placeholder_field.proto | 69 - google/ads/googleads/v4/enums/slot.proto | 65 - .../v4/enums/spending_limit_type.proto | 48 - ...structured_snippet_placeholder_field.proto | 55 - .../v4/enums/summary_row_setting.proto | 54 - .../enums/system_managed_entity_source.proto | 47 - ...arget_cpa_opt_in_recommendation_goal.proto | 57 - .../target_impression_share_location.proto | 55 - .../v4/enums/targeting_dimension.proto | 74 - google/ads/googleads/v4/enums/time_type.proto | 51 - .../v4/enums/tracking_code_page_format.proto | 50 - .../v4/enums/tracking_code_type.proto | 59 - .../v4/enums/travel_placeholder_field.proto | 128 - .../enums/user_interest_taxonomy_type.proto | 59 - .../v4/enums/user_list_access_status.proto | 50 - .../v4/enums/user_list_closing_reason.proto | 48 - .../user_list_combined_rule_operator.proto | 48 - .../user_list_crm_data_source_type.proto | 51 - .../user_list_date_rule_item_operator.proto | 54 - .../user_list_logical_rule_operator.proto | 51 - .../enums/user_list_membership_status.proto | 52 - .../user_list_number_rule_item_operator.proto | 60 - .../user_list_prepopulation_status.proto | 51 - .../v4/enums/user_list_rule_type.proto | 48 - .../v4/enums/user_list_size_range.proto | 92 - .../user_list_string_rule_item_operator.proto | 66 - .../googleads/v4/enums/user_list_type.proto | 63 - .../vanity_pharma_display_url_mode.proto | 50 - .../v4/enums/vanity_pharma_text.proto | 87 - .../v4/enums/webpage_condition_operand.proto | 59 - .../v4/enums/webpage_condition_operator.proto | 51 - google/ads/googleads/v4/errors/BUILD.bazel | 94 - .../v4/errors/access_invitation_error.proto | 50 - .../account_budget_proposal_error.proto | 122 - .../v4/errors/account_link_error.proto | 30 - .../v4/errors/ad_customizer_error.proto | 59 - google/ads/googleads/v4/errors/ad_error.proto | 505 - .../v4/errors/ad_group_ad_error.proto | 76 - .../errors/ad_group_bid_modifier_error.proto | 51 - .../v4/errors/ad_group_criterion_error.proto | 137 - .../googleads/v4/errors/ad_group_error.proto | 87 - .../v4/errors/ad_group_feed_error.proto | 67 - .../v4/errors/ad_parameter_error.proto | 50 - .../v4/errors/ad_sharing_error.proto | 54 - .../ads/googleads/v4/errors/adx_error.proto | 47 - .../ads/googleads/v4/errors/asset_error.proto | 61 - .../v4/errors/asset_link_error.proto | 47 - .../v4/errors/authentication_error.proto | 103 - .../v4/errors/authorization_error.proto | 88 - .../googleads/v4/errors/batch_job_error.proto | 63 - .../googleads/v4/errors/bidding_error.proto | 122 - .../v4/errors/bidding_strategy_error.proto | 61 - .../v4/errors/billing_setup_error.proto | 105 - .../v4/errors/campaign_budget_error.proto | 97 - .../v4/errors/campaign_criterion_error.proto | 81 - .../v4/errors/campaign_draft_error.proto | 79 - .../googleads/v4/errors/campaign_error.proto | 179 - .../v4/errors/campaign_experiment_error.proto | 81 - .../v4/errors/campaign_feed_error.proto | 67 - .../v4/errors/campaign_shared_set_error.proto | 47 - .../v4/errors/change_status_error.proto | 47 - .../v4/errors/collection_size_error.proto | 50 - .../googleads/v4/errors/context_error.proto | 50 - .../v4/errors/conversion_action_error.proto | 79 - .../conversion_adjustment_upload_error.proto | 85 - .../v4/errors/conversion_upload_error.proto | 130 - .../v4/errors/country_code_error.proto | 47 - .../googleads/v4/errors/criterion_error.proto | 409 - .../v4/errors/currency_code_error.proto | 47 - .../v4/errors/custom_interest_error.proto | 66 - .../errors/customer_client_link_error.proto | 68 - .../googleads/v4/errors/customer_error.proto | 50 - .../v4/errors/customer_feed_error.proto | 66 - .../errors/customer_manager_link_error.proto | 75 - .../googleads/v4/errors/database_error.proto | 56 - .../ads/googleads/v4/errors/date_error.proto | 74 - .../v4/errors/date_range_error.proto | 59 - .../googleads/v4/errors/distinct_error.proto | 50 - .../ads/googleads/v4/errors/enum_error.proto | 47 - google/ads/googleads/v4/errors/errors.proto | 565 - .../v4/errors/extension_feed_item_error.proto | 195 - .../v4/errors/extension_setting_error.proto | 258 - .../feed_attribute_reference_error.proto | 53 - .../ads/googleads/v4/errors/feed_error.proto | 111 - .../googleads/v4/errors/feed_item_error.proto | 71 - .../v4/errors/feed_item_target_error.proto | 70 - .../errors/feed_item_validation_error.proto | 353 - .../v4/errors/feed_mapping_error.proto | 100 - .../ads/googleads/v4/errors/field_error.proto | 65 - .../v4/errors/field_mask_error.proto | 58 - .../googleads/v4/errors/function_error.proto | 93 - .../v4/errors/function_parsing_error.proto | 77 - ...geo_target_constant_suggestion_error.proto | 56 - .../googleads/v4/errors/header_error.proto | 50 - google/ads/googleads/v4/errors/id_error.proto | 47 - .../ads/googleads/v4/errors/image_error.proto | 161 - .../googleads/v4/errors/internal_error.proto | 58 - .../googleads/v4/errors/invoice_error.proto | 50 - .../errors/keyword_plan_ad_group_error.proto | 53 - .../keyword_plan_ad_group_keyword_error.proto | 69 - .../errors/keyword_plan_campaign_error.proto | 65 - .../keyword_plan_campaign_keyword_error.proto | 49 - .../v4/errors/keyword_plan_error.proto | 91 - .../v4/errors/keyword_plan_idea_error.proto | 50 - .../ads/googleads/v4/errors/label_error.proto | 73 - .../v4/errors/language_code_error.proto | 50 - .../v4/errors/list_operation_error.proto | 50 - .../v4/errors/manager_link_error.proto | 97 - .../v4/errors/media_bundle_error.proto | 110 - .../v4/errors/media_file_error.proto | 113 - .../v4/errors/media_upload_error.proto | 65 - .../v4/errors/multiplier_error.proto | 81 - .../googleads/v4/errors/mutate_error.proto | 69 - .../errors/new_resource_creation_error.proto | 54 - .../googleads/v4/errors/not_empty_error.proto | 47 - .../v4/errors/not_whitelisted_error.proto | 47 - .../ads/googleads/v4/errors/null_error.proto | 47 - .../errors/offline_user_data_job_error.proto | 134 - .../operation_access_denied_error.proto | 74 - .../googleads/v4/errors/operator_error.proto | 47 - .../v4/errors/partial_failure_error.proto | 48 - .../v4/errors/payments_account_error.proto | 47 - .../v4/errors/policy_finding_error.proto | 51 - .../policy_validation_parameter_error.proto | 54 - .../v4/errors/policy_violation_error.proto | 47 - .../ads/googleads/v4/errors/query_error.proto | 218 - .../ads/googleads/v4/errors/quota_error.proto | 53 - .../ads/googleads/v4/errors/range_error.proto | 50 - .../v4/errors/reach_plan_error.proto | 45 - .../v4/errors/recommendation_error.proto | 90 - .../v4/errors/region_code_error.proto | 47 - .../googleads/v4/errors/request_error.proto | 116 - .../errors/resource_access_denied_error.proto | 47 - .../resource_count_limit_exceeded_error.proto | 93 - .../googleads/v4/errors/setting_error.proto | 85 - .../v4/errors/shared_criterion_error.proto | 47 - .../v4/errors/shared_set_error.proto | 56 - .../v4/errors/size_limit_error.proto | 50 - .../v4/errors/string_format_error.proto | 50 - .../v4/errors/string_length_error.proto | 54 - ...third_party_app_analytics_link_error.proto | 30 - .../googleads/v4/errors/time_zone_error.proto | 47 - .../googleads/v4/errors/url_field_error.proto | 215 - .../googleads/v4/errors/user_data_error.proto | 53 - .../googleads/v4/errors/user_list_error.proto | 129 - .../youtube_video_registration_error.proto | 53 - google/ads/googleads/v4/googleads_gapic.yaml | 26 - .../v4/googleads_grpc_service_config.json | 354 - google/ads/googleads/v4/googleads_v4.yaml | 1132 - google/ads/googleads/v4/resources/BUILD.bazel | 97 - .../v4/resources/account_budget.proto | 253 - .../resources/account_budget_proposal.proto | 161 - .../googleads/v4/resources/account_link.proto | 97 - google/ads/googleads/v4/resources/ad.proto | 181 - .../ads/googleads/v4/resources/ad_group.proto | 177 - .../googleads/v4/resources/ad_group_ad.proto | 91 - .../v4/resources/ad_group_ad_asset_view.proto | 100 - .../v4/resources/ad_group_ad_label.proto | 67 - .../v4/resources/ad_group_audience_view.proto | 54 - .../v4/resources/ad_group_bid_modifier.proto | 110 - .../v4/resources/ad_group_criterion.proto | 273 - .../resources/ad_group_criterion_label.proto | 67 - .../ad_group_criterion_simulation.proto | 88 - .../ad_group_extension_setting.proto | 80 - .../v4/resources/ad_group_feed.proto | 84 - .../v4/resources/ad_group_label.proto | 67 - .../v4/resources/ad_group_simulation.proto | 97 - .../googleads/v4/resources/ad_parameter.proto | 83 - .../v4/resources/ad_schedule_view.proto | 52 - .../v4/resources/age_range_view.proto | 51 - google/ads/googleads/v4/resources/asset.proto | 82 - .../googleads/v4/resources/batch_job.proto | 95 - .../v4/resources/bidding_strategy.proto | 112 - .../v4/resources/billing_setup.proto | 139 - .../ads/googleads/v4/resources/campaign.proto | 425 - .../v4/resources/campaign_audience_view.proto | 55 - .../v4/resources/campaign_bid_modifier.proto | 77 - .../v4/resources/campaign_budget.proto | 157 - .../v4/resources/campaign_criterion.proto | 168 - .../campaign_criterion_simulation.proto | 85 - .../v4/resources/campaign_draft.proto | 99 - .../v4/resources/campaign_experiment.proto | 122 - .../campaign_extension_setting.proto | 80 - .../v4/resources/campaign_feed.proto | 84 - .../v4/resources/campaign_label.proto | 67 - .../v4/resources/campaign_shared_set.proto | 78 - .../v4/resources/carrier_constant.proto | 62 - .../v4/resources/change_status.proto | 146 - .../googleads/v4/resources/click_view.proto | 80 - .../v4/resources/conversion_action.proto | 174 - .../v4/resources/currency_constant.proto | 65 - .../v4/resources/custom_interest.proto | 90 - .../ads/googleads/v4/resources/customer.proto | 150 - .../v4/resources/customer_client.proto | 90 - .../v4/resources/customer_client_link.proto | 71 - .../customer_extension_setting.proto | 68 - .../v4/resources/customer_feed.proto | 76 - .../v4/resources/customer_label.proto | 73 - .../v4/resources/customer_manager_link.proto | 66 - .../customer_negative_criterion.proto | 83 - .../v4/resources/detail_placement_view.proto | 72 - .../v4/resources/display_keyword_view.proto | 51 - .../v4/resources/distance_view.proto | 63 - .../v4/resources/domain_category.proto | 91 - .../dynamic_search_ads_search_term_view.proto | 87 - .../expanded_landing_page_view.proto | 56 - .../v4/resources/extension_feed_item.proto | 149 - google/ads/googleads/v4/resources/feed.proto | 193 - .../googleads/v4/resources/feed_item.proto | 215 - .../v4/resources/feed_item_target.proto | 109 - .../googleads/v4/resources/feed_mapping.proto | 186 - .../v4/resources/feed_placeholder_view.proto | 55 - .../googleads/v4/resources/gender_view.proto | 51 - .../v4/resources/geo_target_constant.proto | 72 - .../v4/resources/geographic_view.proto | 64 - .../v4/resources/google_ads_field.proto | 118 - .../v4/resources/group_placement_view.proto | 67 - .../v4/resources/hotel_group_view.proto | 51 - .../v4/resources/hotel_performance_view.proto | 51 - .../v4/resources/income_range_view.proto | 51 - .../ads/googleads/v4/resources/invoice.proto | 190 - .../googleads/v4/resources/keyword_plan.proto | 83 - .../v4/resources/keyword_plan_ad_group.proto | 72 - .../keyword_plan_ad_group_keyword.proto | 78 - .../v4/resources/keyword_plan_campaign.proto | 99 - .../keyword_plan_campaign_keyword.proto | 72 - .../googleads/v4/resources/keyword_view.proto | 51 - google/ads/googleads/v4/resources/label.proto | 67 - .../v4/resources/landing_page_view.proto | 56 - .../v4/resources/language_constant.proto | 65 - .../v4/resources/location_view.proto | 52 - .../v4/resources/managed_placement_view.proto | 51 - .../googleads/v4/resources/media_file.proto | 125 - .../v4/resources/merchant_center_link.proto | 65 - .../mobile_app_category_constant.proto | 58 - .../v4/resources/mobile_device_constant.proto | 68 - .../v4/resources/offline_user_data_job.proto | 83 - .../operating_system_version_constant.proto | 71 - .../paid_organic_search_term_view.proto | 57 - .../v4/resources/parental_status_view.proto | 51 - .../v4/resources/payments_account.proto | 79 - .../product_bidding_category_constant.proto | 84 - .../v4/resources/product_group_view.proto | 51 - .../v4/resources/recommendation.proto | 319 - .../v4/resources/remarketing_action.proto | 67 - .../v4/resources/search_term_view.proto | 69 - .../v4/resources/shared_criterion.proto | 93 - .../googleads/v4/resources/shared_set.proto | 78 - .../resources/shopping_performance_view.proto | 55 - .../third_party_app_analytics_link.proto | 56 - .../v4/resources/topic_constant.proto | 72 - .../googleads/v4/resources/topic_view.proto | 51 - .../v4/resources/user_interest.proto | 77 - .../googleads/v4/resources/user_list.proto | 168 - .../v4/resources/user_location_view.proto | 63 - google/ads/googleads/v4/resources/video.proto | 64 - google/ads/googleads/v4/services/BUILD.bazel | 138 - .../account_budget_proposal_service.proto | 138 - .../v4/services/account_budget_service.proto | 62 - .../v4/services/account_link_service.proto | 116 - .../ad_group_ad_asset_view_service.proto | 59 - .../services/ad_group_ad_label_service.proto | 124 - .../v4/services/ad_group_ad_service.proto | 132 - .../ad_group_audience_view_service.proto | 59 - .../ad_group_bid_modifier_service.proto | 131 - .../ad_group_criterion_label_service.proto | 125 - .../services/ad_group_criterion_service.proto | 141 - ...d_group_criterion_simulation_service.proto | 60 - .../ad_group_extension_setting_service.proto | 135 - .../v4/services/ad_group_feed_service.proto | 130 - .../v4/services/ad_group_label_service.proto | 123 - .../v4/services/ad_group_service.proto | 128 - .../ad_group_simulation_service.proto | 59 - .../v4/services/ad_parameter_service.proto | 130 - .../services/ad_schedule_view_service.proto | 59 - .../googleads/v4/services/ad_service.proto | 106 - .../v4/services/age_range_view_service.proto | 59 - .../googleads/v4/services/asset_service.proto | 102 - .../v4/services/batch_job_service.proto | 242 - .../services/bidding_strategy_service.proto | 131 - .../v4/services/billing_setup_service.proto | 116 - .../campaign_audience_view_service.proto | 59 - .../campaign_bid_modifier_service.proto | 132 - .../v4/services/campaign_budget_service.proto | 130 - .../services/campaign_criterion_service.proto | 129 - ...ampaign_criterion_simulation_service.proto | 60 - .../v4/services/campaign_draft_service.proto | 203 - .../campaign_experiment_service.proto | 294 - .../campaign_extension_setting_service.proto | 135 - .../v4/services/campaign_feed_service.proto | 130 - .../v4/services/campaign_label_service.proto | 123 - .../v4/services/campaign_service.proto | 129 - .../campaign_shared_set_service.proto | 122 - .../services/carrier_constant_service.proto | 59 - .../v4/services/change_status_service.proto | 59 - .../v4/services/click_view_service.proto | 59 - .../services/conversion_action_service.proto | 131 - ...conversion_adjustment_upload_service.proto | 182 - .../services/conversion_upload_service.proto | 236 - .../services/currency_constant_service.proto | 57 - .../v4/services/custom_interest_service.proto | 111 - .../customer_client_link_service.proto | 103 - .../v4/services/customer_client_service.proto | 59 - .../customer_extension_setting_service.proto | 135 - .../v4/services/customer_feed_service.proto | 130 - .../v4/services/customer_label_service.proto | 123 - .../customer_manager_link_service.proto | 140 - .../customer_negative_criterion_service.proto | 123 - .../v4/services/customer_service.proto | 162 - .../detail_placement_view_service.proto | 59 - .../display_keyword_view_service.proto | 59 - .../v4/services/distance_view_service.proto | 59 - .../v4/services/domain_category_service.proto | 60 - ..._search_ads_search_term_view_service.proto | 60 - .../expanded_landing_page_view_service.proto | 60 - .../extension_feed_item_service.proto | 132 - .../v4/services/feed_item_service.proto | 130 - .../services/feed_item_target_service.proto | 105 - .../v4/services/feed_mapping_service.proto | 122 - .../feed_placeholder_view_service.proto | 59 - .../googleads/v4/services/feed_service.proto | 130 - .../v4/services/gender_view_service.proto | 59 - .../geo_target_constant_service.proto | 130 - .../v4/services/geographic_view_service.proto | 59 - .../services/google_ads_field_service.proto | 98 - .../v4/services/google_ads_service.proto | 976 - .../group_placement_view_service.proto | 59 - .../services/hotel_group_view_service.proto | 59 - .../hotel_performance_view_service.proto | 59 - .../services/income_range_view_service.proto | 59 - .../v4/services/invoice_service.proto | 73 - ...eyword_plan_ad_group_keyword_service.proto | 143 - .../keyword_plan_ad_group_service.proto | 135 - ...eyword_plan_campaign_keyword_service.proto | 141 - .../keyword_plan_campaign_service.proto | 135 - .../services/keyword_plan_idea_service.proto | 156 - .../v4/services/keyword_plan_service.proto | 322 - .../v4/services/keyword_view_service.proto | 59 - .../googleads/v4/services/label_service.proto | 126 - .../services/landing_page_view_service.proto | 59 - .../services/language_constant_service.proto | 59 - .../v4/services/location_view_service.proto | 59 - .../managed_placement_view_service.proto | 59 - .../v4/services/media_file_service.proto | 115 - .../merchant_center_link_service.proto | 131 - ...mobile_app_category_constant_service.proto | 58 - .../mobile_device_constant_service.proto | 59 - .../offline_user_data_job_service.proto | 171 - ...ting_system_version_constant_service.proto | 60 - ...aid_organic_search_term_view_service.proto | 60 - .../parental_status_view_service.proto | 59 - .../services/payments_account_service.proto | 62 - ...ct_bidding_category_constant_service.proto | 60 - .../services/product_group_view_service.proto | 59 - .../v4/services/reach_plan_service.proto | 392 - .../v4/services/recommendation_service.proto | 256 - .../services/remarketing_action_service.proto | 124 - .../services/search_term_view_service.proto | 59 - .../services/shared_criterion_service.proto | 122 - .../v4/services/shared_set_service.proto | 129 - .../shopping_performance_view_service.proto | 60 - ...ird_party_app_analytics_link_service.proto | 54 - .../v4/services/topic_constant_service.proto | 59 - .../v4/services/topic_view_service.proto | 59 - .../v4/services/user_data_service.proto | 86 - .../v4/services/user_interest_service.proto | 59 - .../v4/services/user_list_service.proto | 129 - .../services/user_location_view_service.proto | 59 - .../googleads/v4/services/video_service.proto | 59 - google/ads/googleads/v5/BUILD.bazel | 262 - google/ads/googleads/v5/common/BUILD.bazel | 94 - google/ads/googleads/v5/common/ad_asset.proto | 61 - .../googleads/v5/common/ad_type_infos.proto | 662 - .../ads/googleads/v5/common/asset_types.proto | 87 - google/ads/googleads/v5/common/bidding.proto | 170 - .../googleads/v5/common/click_location.proto | 48 - google/ads/googleads/v5/common/criteria.proto | 593 - .../criterion_category_availability.proto | 83 - .../v5/common/custom_parameter.proto | 40 - google/ads/googleads/v5/common/dates.proto | 40 - .../explorer_auto_optimizer_setting.proto | 38 - .../ads/googleads/v5/common/extensions.proto | 357 - .../ads/googleads/v5/common/feed_common.proto | 40 - .../googleads/v5/common/final_app_url.proto | 46 - .../googleads/v5/common/frequency_cap.proto | 61 - .../v5/common/keyword_plan_common.proto | 76 - .../v5/common/matching_function.proto | 127 - google/ads/googleads/v5/common/metrics.proto | 559 - .../v5/common/offline_user_data.proto | 192 - google/ads/googleads/v5/common/policy.proto | 222 - .../v5/common/real_time_bidding_setting.proto | 37 - google/ads/googleads/v5/common/segments.proto | 325 - .../ads/googleads/v5/common/simulation.proto | 235 - .../ads/googleads/v5/common/tag_snippet.proto | 50 - .../v5/common/targeting_setting.proto | 85 - .../ads/googleads/v5/common/text_label.proto | 41 - .../googleads/v5/common/url_collection.proto | 45 - .../ads/googleads/v5/common/user_lists.proto | 292 - google/ads/googleads/v5/common/value.proto | 51 - .../googleads/v5/enums/access_reason.proto | 57 - .../ads/googleads/v5/enums/access_role.proto | 55 - .../account_budget_proposal_status.proto | 63 - .../enums/account_budget_proposal_type.proto | 56 - .../v5/enums/account_budget_status.proto | 53 - .../v5/enums/account_link_status.proto | 57 - .../ad_customizer_placeholder_field.proto | 56 - .../v5/enums/ad_group_ad_rotation_mode.proto | 53 - .../v5/enums/ad_group_ad_status.proto | 55 - .../ad_group_criterion_approval_status.proto | 56 - .../v5/enums/ad_group_criterion_status.proto | 55 - .../googleads/v5/enums/ad_group_status.proto | 55 - .../googleads/v5/enums/ad_group_type.proto | 90 - .../googleads/v5/enums/ad_network_type.proto | 62 - .../ad_serving_optimization_status.proto | 64 - .../ads/googleads/v5/enums/ad_strength.proto | 62 - google/ads/googleads/v5/enums/ad_type.proto | 125 - .../enums/advertising_channel_sub_type.proto | 96 - .../v5/enums/advertising_channel_type.proto | 70 - ...iate_location_feed_relationship_type.proto | 48 - ...affiliate_location_placeholder_field.proto | 77 - .../googleads/v5/enums/age_range_type.proto | 65 - .../v5/enums/app_campaign_app_store.proto | 50 - ..._campaign_bidding_strategy_goal_type.proto | 64 - .../v5/enums/app_payment_model_type.proto | 47 - .../v5/enums/app_placeholder_field.proto | 75 - google/ads/googleads/v5/enums/app_store.proto | 50 - .../enums/app_url_operating_system_type.proto | 50 - .../googleads/v5/enums/asset_field_type.proto | 66 - .../v5/enums/asset_link_status.proto | 50 - .../v5/enums/asset_performance_label.proto | 62 - .../ads/googleads/v5/enums/asset_type.proto | 59 - .../v5/enums/attribution_model.proto | 72 - .../googleads/v5/enums/batch_job_status.proto | 53 - .../v5/enums/bid_modifier_source.proto | 51 - .../googleads/v5/enums/bidding_source.proto | 55 - .../v5/enums/bidding_strategy_status.proto | 52 - .../v5/enums/bidding_strategy_type.proto | 110 - .../v5/enums/billing_setup_status.proto | 58 - .../v5/enums/brand_safety_suitability.proto | 73 - .../budget_campaign_association_status.proto | 51 - .../v5/enums/budget_delivery_method.proto | 53 - .../googleads/v5/enums/budget_period.proto | 53 - .../googleads/v5/enums/budget_status.proto | 50 - .../ads/googleads/v5/enums/budget_type.proto | 66 - .../call_conversion_reporting_state.proto | 56 - .../v5/enums/call_placeholder_field.proto | 66 - .../v5/enums/callout_placeholder_field.proto | 47 - .../v5/enums/campaign_criterion_status.proto | 55 - .../v5/enums/campaign_draft_status.proto | 65 - .../v5/enums/campaign_experiment_status.proto | 77 - ...mpaign_experiment_traffic_split_type.proto | 53 - .../v5/enums/campaign_experiment_type.proto | 59 - .../v5/enums/campaign_serving_status.proto | 61 - .../v5/enums/campaign_shared_set_status.proto | 50 - .../googleads/v5/enums/campaign_status.proto | 53 - .../v5/enums/change_status_operation.proto | 54 - .../enums/change_status_resource_type.proto | 76 - .../ads/googleads/v5/enums/click_type.proto | 203 - .../v5/enums/content_label_type.proto | 89 - .../v5/enums/conversion_action_category.proto | 106 - .../conversion_action_counting_type.proto | 52 - .../v5/enums/conversion_action_status.proto | 54 - .../v5/enums/conversion_action_type.proto | 173 - .../v5/enums/conversion_adjustment_type.proto | 52 - .../conversion_attribution_event_type.proto | 48 - .../v5/enums/conversion_lag_bucket.proto | 117 - .../conversion_or_adjustment_lag_bucket.proto | 206 - ...n_category_channel_availability_mode.proto | 58 - ...on_category_locale_availability_mode.proto | 61 - .../criterion_system_serving_status.proto | 50 - .../googleads/v5/enums/criterion_type.proto | 134 - .../enums/custom_interest_member_type.proto | 50 - .../v5/enums/custom_interest_status.proto | 51 - .../v5/enums/custom_interest_type.proto | 50 - .../v5/enums/custom_placeholder_field.proto | 129 - .../customer_match_upload_key_type.proto | 53 - ...onversion_eligibility_failure_reason.proto | 68 - .../v5/enums/data_driven_model_status.proto | 62 - .../ads/googleads/v5/enums/day_of_week.proto | 65 - google/ads/googleads/v5/enums/device.proto | 59 - .../v5/enums/display_ad_format_setting.proto | 54 - .../enums/display_upload_product_type.proto | 97 - .../googleads/v5/enums/distance_bucket.proto | 127 - .../enums/dsa_page_feed_criterion_field.proto | 51 - .../enums/education_placeholder_field.proto | 111 - .../v5/enums/extension_setting_device.proto | 52 - .../googleads/v5/enums/extension_type.proto | 81 - .../v5/enums/external_conversion_source.proto | 135 - .../v5/enums/feed_attribute_type.proto | 83 - .../feed_item_quality_approval_status.proto | 52 - ...feed_item_quality_disapproval_reason.proto | 99 - .../googleads/v5/enums/feed_item_status.proto | 50 - .../v5/enums/feed_item_target_device.proto | 48 - .../v5/enums/feed_item_target_status.proto | 50 - .../v5/enums/feed_item_target_type.proto | 53 - .../enums/feed_item_validation_status.proto | 53 - .../googleads/v5/enums/feed_link_status.proto | 50 - .../enums/feed_mapping_criterion_type.proto | 50 - .../v5/enums/feed_mapping_status.proto | 50 - .../ads/googleads/v5/enums/feed_origin.proto | 53 - .../ads/googleads/v5/enums/feed_status.proto | 50 - .../v5/enums/flight_placeholder_field.proto | 118 - .../v5/enums/frequency_cap_event_type.proto | 50 - .../v5/enums/frequency_cap_level.proto | 54 - .../v5/enums/frequency_cap_time_unit.proto | 53 - .../ads/googleads/v5/enums/gender_type.proto | 53 - .../v5/enums/geo_target_constant_status.proto | 52 - .../v5/enums/geo_targeting_restriction.proto | 49 - .../v5/enums/geo_targeting_type.proto | 50 - .../v5/enums/google_ads_field_category.proto | 61 - .../v5/enums/google_ads_field_data_type.proto | 102 - .../v5/enums/hotel_date_selection_type.proto | 50 - .../v5/enums/hotel_placeholder_field.proto | 124 - .../v5/enums/hotel_price_bucket.proto | 52 - .../googleads/v5/enums/hotel_rate_type.proto | 62 - .../v5/enums/income_range_type.proto | 65 - .../v5/enums/interaction_event_type.proto | 62 - .../googleads/v5/enums/interaction_type.proto | 47 - .../ads/googleads/v5/enums/invoice_type.proto | 50 - .../v5/enums/job_placeholder_field.proto | 115 - .../v5/enums/keyword_match_type.proto | 53 - .../keyword_plan_competition_level.proto | 57 - .../keyword_plan_forecast_interval.proto | 56 - .../v5/enums/keyword_plan_network.proto | 50 - .../ads/googleads/v5/enums/label_status.proto | 48 - .../legacy_app_install_ad_app_store.proto | 59 - .../v5/enums/linked_account_type.proto | 52 - .../v5/enums/listing_group_type.proto | 52 - .../v5/enums/local_placeholder_field.proto | 119 - ..._extension_targeting_criterion_field.proto | 62 - .../enums/location_group_radius_units.proto | 50 - .../v5/enums/location_placeholder_field.proto | 68 - .../v5/enums/location_source_type.proto | 51 - .../v5/enums/manager_link_status.proto | 59 - .../matching_function_context_type.proto | 50 - .../v5/enums/matching_function_operator.proto | 65 - .../ads/googleads/v5/enums/media_type.proto | 64 - .../enums/merchant_center_link_status.proto | 53 - .../v5/enums/message_placeholder_field.proto | 61 - google/ads/googleads/v5/enums/mime_type.proto | 82 - .../googleads/v5/enums/minute_of_hour.proto | 56 - .../v5/enums/mobile_app_vendor.proto | 48 - .../v5/enums/mobile_device_type.proto | 50 - .../googleads/v5/enums/month_of_year.proto | 80 - .../v5/enums/negative_geo_target_type.proto | 52 - ...offline_user_data_job_failure_reason.proto | 51 - .../enums/offline_user_data_job_status.proto | 56 - .../v5/enums/offline_user_data_job_type.proto | 53 - ...erating_system_version_operator_type.proto | 50 - .../v5/enums/optimization_goal_type.proto | 53 - .../page_one_promoted_strategy_goal.proto | 30 - .../v5/enums/parental_status_type.proto | 53 - .../ads/googleads/v5/enums/payment_mode.proto | 64 - .../googleads/v5/enums/placeholder_type.proto | 121 - .../googleads/v5/enums/placement_type.proto | 59 - .../v5/enums/policy_approval_status.proto | 61 - .../v5/enums/policy_review_status.proto | 60 - .../v5/enums/policy_topic_entry_type.proto | 66 - ...idence_destination_mismatch_url_type.proto | 62 - ...dence_destination_not_working_device.proto | 57 - ...stination_not_working_dns_error_type.proto | 56 - .../v5/enums/positive_geo_target_type.proto | 58 - .../v5/enums/preferred_content_type.proto | 47 - .../price_extension_price_qualifier.proto | 53 - .../v5/enums/price_extension_price_unit.proto | 62 - .../v5/enums/price_extension_type.proto | 71 - .../v5/enums/price_placeholder_field.proto | 240 - .../product_bidding_category_level.proto | 57 - .../product_bidding_category_status.proto | 50 - .../googleads/v5/enums/product_channel.proto | 50 - .../enums/product_channel_exclusivity.proto | 52 - .../v5/enums/product_condition.proto | 53 - .../product_custom_attribute_index.proto | 59 - .../v5/enums/product_type_level.proto | 59 - ...romotion_extension_discount_modifier.proto | 48 - .../enums/promotion_extension_occasion.proto | 157 - .../enums/promotion_placeholder_field.proto | 95 - .../v5/enums/proximity_radius_units.proto | 50 - .../v5/enums/quality_score_bucket.proto | 53 - .../v5/enums/reach_plan_ad_length.proto | 53 - .../v5/enums/reach_plan_age_range.proto | 122 - .../v5/enums/reach_plan_network.proto | 54 - .../enums/real_estate_placeholder_field.proto | 115 - .../v5/enums/recommendation_type.proto | 99 - .../v5/enums/response_content_type.proto | 48 - .../search_engine_results_page_type.proto | 54 - .../v5/enums/search_term_match_type.proto | 59 - .../enums/search_term_targeting_status.proto | 58 - .../v5/enums/served_asset_field_type.proto | 61 - .../v5/enums/shared_set_status.proto | 50 - .../googleads/v5/enums/shared_set_type.proto | 50 - .../simulation_modification_method.proto | 54 - .../googleads/v5/enums/simulation_type.proto | 62 - .../v5/enums/sitelink_placeholder_field.proto | 69 - google/ads/googleads/v5/enums/slot.proto | 65 - .../v5/enums/spending_limit_type.proto | 48 - ...structured_snippet_placeholder_field.proto | 55 - .../v5/enums/summary_row_setting.proto | 54 - .../enums/system_managed_entity_source.proto | 47 - ...arget_cpa_opt_in_recommendation_goal.proto | 57 - .../target_impression_share_location.proto | 55 - .../v5/enums/targeting_dimension.proto | 74 - google/ads/googleads/v5/enums/time_type.proto | 51 - .../v5/enums/tracking_code_page_format.proto | 50 - .../v5/enums/tracking_code_type.proto | 59 - .../v5/enums/travel_placeholder_field.proto | 128 - .../enums/user_interest_taxonomy_type.proto | 59 - .../v5/enums/user_list_access_status.proto | 50 - .../v5/enums/user_list_closing_reason.proto | 48 - .../user_list_combined_rule_operator.proto | 48 - .../user_list_crm_data_source_type.proto | 51 - .../user_list_date_rule_item_operator.proto | 54 - .../user_list_logical_rule_operator.proto | 51 - .../enums/user_list_membership_status.proto | 52 - .../user_list_number_rule_item_operator.proto | 60 - .../user_list_prepopulation_status.proto | 51 - .../v5/enums/user_list_rule_type.proto | 48 - .../v5/enums/user_list_size_range.proto | 92 - .../user_list_string_rule_item_operator.proto | 66 - .../googleads/v5/enums/user_list_type.proto | 63 - .../vanity_pharma_display_url_mode.proto | 50 - .../v5/enums/vanity_pharma_text.proto | 87 - .../v5/enums/webpage_condition_operand.proto | 59 - .../v5/enums/webpage_condition_operator.proto | 51 - google/ads/googleads/v5/errors/BUILD.bazel | 94 - .../v5/errors/access_invitation_error.proto | 50 - .../account_budget_proposal_error.proto | 122 - .../v5/errors/account_link_error.proto | 47 - .../v5/errors/ad_customizer_error.proto | 59 - google/ads/googleads/v5/errors/ad_error.proto | 505 - .../v5/errors/ad_group_ad_error.proto | 76 - .../errors/ad_group_bid_modifier_error.proto | 51 - .../v5/errors/ad_group_criterion_error.proto | 137 - .../googleads/v5/errors/ad_group_error.proto | 87 - .../v5/errors/ad_group_feed_error.proto | 67 - .../v5/errors/ad_parameter_error.proto | 50 - .../v5/errors/ad_sharing_error.proto | 54 - .../ads/googleads/v5/errors/adx_error.proto | 47 - .../ads/googleads/v5/errors/asset_error.proto | 61 - .../v5/errors/asset_link_error.proto | 57 - .../v5/errors/authentication_error.proto | 103 - .../v5/errors/authorization_error.proto | 88 - .../googleads/v5/errors/batch_job_error.proto | 63 - .../googleads/v5/errors/bidding_error.proto | 122 - .../v5/errors/bidding_strategy_error.proto | 61 - .../v5/errors/billing_setup_error.proto | 105 - .../v5/errors/campaign_budget_error.proto | 97 - .../v5/errors/campaign_criterion_error.proto | 81 - .../v5/errors/campaign_draft_error.proto | 79 - .../googleads/v5/errors/campaign_error.proto | 179 - .../v5/errors/campaign_experiment_error.proto | 81 - .../v5/errors/campaign_feed_error.proto | 67 - .../v5/errors/campaign_shared_set_error.proto | 47 - .../v5/errors/change_status_error.proto | 47 - .../v5/errors/collection_size_error.proto | 50 - .../googleads/v5/errors/context_error.proto | 50 - .../v5/errors/conversion_action_error.proto | 82 - .../conversion_adjustment_upload_error.proto | 85 - .../v5/errors/conversion_upload_error.proto | 130 - .../v5/errors/country_code_error.proto | 47 - .../googleads/v5/errors/criterion_error.proto | 409 - .../v5/errors/currency_code_error.proto | 47 - .../v5/errors/custom_interest_error.proto | 66 - .../errors/customer_client_link_error.proto | 68 - .../googleads/v5/errors/customer_error.proto | 50 - .../v5/errors/customer_feed_error.proto | 66 - .../errors/customer_manager_link_error.proto | 75 - .../googleads/v5/errors/database_error.proto | 56 - .../ads/googleads/v5/errors/date_error.proto | 74 - .../v5/errors/date_range_error.proto | 59 - .../googleads/v5/errors/distinct_error.proto | 50 - .../ads/googleads/v5/errors/enum_error.proto | 47 - google/ads/googleads/v5/errors/errors.proto | 606 - .../v5/errors/extension_feed_item_error.proto | 195 - .../v5/errors/extension_setting_error.proto | 261 - .../feed_attribute_reference_error.proto | 53 - .../ads/googleads/v5/errors/feed_error.proto | 111 - .../googleads/v5/errors/feed_item_error.proto | 71 - .../v5/errors/feed_item_target_error.proto | 70 - .../errors/feed_item_validation_error.proto | 353 - .../v5/errors/feed_mapping_error.proto | 100 - .../ads/googleads/v5/errors/field_error.proto | 65 - .../v5/errors/field_mask_error.proto | 58 - .../googleads/v5/errors/function_error.proto | 93 - .../v5/errors/function_parsing_error.proto | 77 - ...geo_target_constant_suggestion_error.proto | 56 - .../googleads/v5/errors/header_error.proto | 50 - google/ads/googleads/v5/errors/id_error.proto | 47 - .../ads/googleads/v5/errors/image_error.proto | 161 - .../googleads/v5/errors/internal_error.proto | 58 - .../googleads/v5/errors/invoice_error.proto | 50 - .../errors/keyword_plan_ad_group_error.proto | 53 - .../keyword_plan_ad_group_keyword_error.proto | 69 - .../errors/keyword_plan_campaign_error.proto | 65 - .../keyword_plan_campaign_keyword_error.proto | 49 - .../v5/errors/keyword_plan_error.proto | 91 - .../v5/errors/keyword_plan_idea_error.proto | 50 - .../ads/googleads/v5/errors/label_error.proto | 73 - .../v5/errors/language_code_error.proto | 50 - .../v5/errors/list_operation_error.proto | 50 - .../v5/errors/manager_link_error.proto | 97 - .../v5/errors/media_bundle_error.proto | 110 - .../v5/errors/media_file_error.proto | 113 - .../v5/errors/media_upload_error.proto | 146 - .../v5/errors/multiplier_error.proto | 81 - .../googleads/v5/errors/mutate_error.proto | 69 - .../errors/new_resource_creation_error.proto | 54 - .../v5/errors/not_allowlisted_error.proto | 47 - .../googleads/v5/errors/not_empty_error.proto | 47 - .../ads/googleads/v5/errors/null_error.proto | 47 - .../errors/offline_user_data_job_error.proto | 134 - .../operation_access_denied_error.proto | 74 - .../googleads/v5/errors/operator_error.proto | 47 - .../v5/errors/partial_failure_error.proto | 48 - .../v5/errors/payments_account_error.proto | 47 - .../v5/errors/policy_finding_error.proto | 51 - .../policy_validation_parameter_error.proto | 54 - .../v5/errors/policy_violation_error.proto | 47 - .../ads/googleads/v5/errors/query_error.proto | 218 - .../ads/googleads/v5/errors/quota_error.proto | 53 - .../ads/googleads/v5/errors/range_error.proto | 50 - .../v5/errors/reach_plan_error.proto | 45 - .../v5/errors/recommendation_error.proto | 90 - .../v5/errors/region_code_error.proto | 47 - .../googleads/v5/errors/request_error.proto | 116 - .../errors/resource_access_denied_error.proto | 47 - .../resource_count_limit_exceeded_error.proto | 93 - .../googleads/v5/errors/setting_error.proto | 85 - .../v5/errors/shared_criterion_error.proto | 47 - .../v5/errors/shared_set_error.proto | 56 - .../v5/errors/size_limit_error.proto | 50 - .../v5/errors/string_format_error.proto | 50 - .../v5/errors/string_length_error.proto | 54 - ...third_party_app_analytics_link_error.proto | 57 - .../googleads/v5/errors/time_zone_error.proto | 47 - .../googleads/v5/errors/url_field_error.proto | 215 - .../googleads/v5/errors/user_data_error.proto | 53 - .../googleads/v5/errors/user_list_error.proto | 129 - .../youtube_video_registration_error.proto | 53 - google/ads/googleads/v5/googleads_gapic.yaml | 26 - .../v5/googleads_grpc_service_config.json | 357 - google/ads/googleads/v5/googleads_v5.yaml | 1145 - google/ads/googleads/v5/resources/BUILD.bazel | 97 - .../v5/resources/account_budget.proto | 252 - .../resources/account_budget_proposal.proto | 161 - .../googleads/v5/resources/account_link.proto | 126 - google/ads/googleads/v5/resources/ad.proto | 185 - .../ads/googleads/v5/resources/ad_group.proto | 176 - .../googleads/v5/resources/ad_group_ad.proto | 90 - .../v5/resources/ad_group_ad_asset_view.proto | 106 - .../v5/resources/ad_group_ad_label.proto | 67 - .../v5/resources/ad_group_audience_view.proto | 54 - .../v5/resources/ad_group_bid_modifier.proto | 109 - .../v5/resources/ad_group_criterion.proto | 272 - .../resources/ad_group_criterion_label.proto | 67 - .../ad_group_criterion_simulation.proto | 90 - .../ad_group_extension_setting.proto | 80 - .../v5/resources/ad_group_feed.proto | 84 - .../v5/resources/ad_group_label.proto | 67 - .../v5/resources/ad_group_simulation.proto | 96 - .../googleads/v5/resources/ad_parameter.proto | 82 - .../v5/resources/ad_schedule_view.proto | 52 - .../v5/resources/age_range_view.proto | 51 - google/ads/googleads/v5/resources/asset.proto | 81 - .../googleads/v5/resources/batch_job.proto | 99 - .../v5/resources/bidding_strategy.proto | 122 - .../v5/resources/billing_setup.proto | 139 - .../ads/googleads/v5/resources/campaign.proto | 419 - .../v5/resources/campaign_asset.proto | 77 - .../v5/resources/campaign_audience_view.proto | 55 - .../v5/resources/campaign_bid_modifier.proto | 76 - .../v5/resources/campaign_budget.proto | 156 - .../v5/resources/campaign_criterion.proto | 167 - .../campaign_criterion_simulation.proto | 84 - .../v5/resources/campaign_draft.proto | 99 - .../v5/resources/campaign_experiment.proto | 122 - .../campaign_extension_setting.proto | 80 - .../v5/resources/campaign_feed.proto | 84 - .../v5/resources/campaign_label.proto | 67 - .../v5/resources/campaign_shared_set.proto | 77 - .../v5/resources/carrier_constant.proto | 61 - .../v5/resources/change_status.proto | 151 - .../googleads/v5/resources/click_view.proto | 95 - .../v5/resources/conversion_action.proto | 173 - .../v5/resources/currency_constant.proto | 64 - .../v5/resources/custom_interest.proto | 90 - .../ads/googleads/v5/resources/customer.proto | 149 - .../v5/resources/customer_client.proto | 90 - .../v5/resources/customer_client_link.proto | 71 - .../customer_extension_setting.proto | 68 - .../v5/resources/customer_feed.proto | 76 - .../v5/resources/customer_label.proto | 73 - .../v5/resources/customer_manager_link.proto | 66 - .../customer_negative_criterion.proto | 82 - .../v5/resources/detail_placement_view.proto | 72 - .../v5/resources/display_keyword_view.proto | 51 - .../v5/resources/distance_view.proto | 62 - .../v5/resources/domain_category.proto | 90 - .../dynamic_search_ads_search_term_view.proto | 86 - .../expanded_landing_page_view.proto | 56 - .../v5/resources/extension_feed_item.proto | 149 - google/ads/googleads/v5/resources/feed.proto | 193 - .../googleads/v5/resources/feed_item.proto | 215 - .../v5/resources/feed_item_target.proto | 109 - .../googleads/v5/resources/feed_mapping.proto | 186 - .../v5/resources/feed_placeholder_view.proto | 55 - .../googleads/v5/resources/gender_view.proto | 51 - .../v5/resources/geo_target_constant.proto | 82 - .../v5/resources/geographic_view.proto | 63 - .../v5/resources/google_ads_field.proto | 117 - .../v5/resources/group_placement_view.proto | 67 - .../v5/resources/hotel_group_view.proto | 51 - .../v5/resources/hotel_performance_view.proto | 51 - .../v5/resources/income_range_view.proto | 51 - .../ads/googleads/v5/resources/invoice.proto | 190 - .../googleads/v5/resources/keyword_plan.proto | 83 - .../v5/resources/keyword_plan_ad_group.proto | 72 - .../keyword_plan_ad_group_keyword.proto | 78 - .../v5/resources/keyword_plan_campaign.proto | 99 - .../keyword_plan_campaign_keyword.proto | 72 - .../googleads/v5/resources/keyword_view.proto | 51 - google/ads/googleads/v5/resources/label.proto | 67 - .../v5/resources/landing_page_view.proto | 56 - .../v5/resources/language_constant.proto | 64 - .../v5/resources/location_view.proto | 52 - .../v5/resources/managed_placement_view.proto | 51 - .../googleads/v5/resources/media_file.proto | 135 - .../v5/resources/merchant_center_link.proto | 64 - .../mobile_app_category_constant.proto | 57 - .../v5/resources/mobile_device_constant.proto | 67 - .../v5/resources/offline_user_data_job.proto | 83 - .../operating_system_version_constant.proto | 70 - .../paid_organic_search_term_view.proto | 57 - .../v5/resources/parental_status_view.proto | 51 - .../v5/resources/payments_account.proto | 79 - .../product_bidding_category_constant.proto | 84 - .../v5/resources/product_group_view.proto | 51 - .../v5/resources/recommendation.proto | 335 - .../v5/resources/remarketing_action.proto | 66 - .../v5/resources/search_term_view.proto | 69 - .../v5/resources/shared_criterion.proto | 92 - .../googleads/v5/resources/shared_set.proto | 77 - .../resources/shopping_performance_view.proto | 55 - .../third_party_app_analytics_link.proto | 56 - .../v5/resources/topic_constant.proto | 71 - .../googleads/v5/resources/topic_view.proto | 51 - .../v5/resources/user_interest.proto | 77 - .../googleads/v5/resources/user_list.proto | 168 - .../v5/resources/user_location_view.proto | 63 - google/ads/googleads/v5/resources/video.proto | 64 - google/ads/googleads/v5/services/BUILD.bazel | 138 - .../account_budget_proposal_service.proto | 138 - .../v5/services/account_budget_service.proto | 62 - .../v5/services/account_link_service.proto | 139 - .../ad_group_ad_asset_view_service.proto | 59 - .../services/ad_group_ad_label_service.proto | 124 - .../v5/services/ad_group_ad_service.proto | 142 - .../ad_group_audience_view_service.proto | 59 - .../ad_group_bid_modifier_service.proto | 141 - .../ad_group_criterion_label_service.proto | 125 - .../services/ad_group_criterion_service.proto | 151 - ...d_group_criterion_simulation_service.proto | 60 - .../ad_group_extension_setting_service.proto | 135 - .../v5/services/ad_group_feed_service.proto | 140 - .../v5/services/ad_group_label_service.proto | 123 - .../v5/services/ad_group_service.proto | 137 - .../ad_group_simulation_service.proto | 59 - .../v5/services/ad_parameter_service.proto | 130 - .../services/ad_schedule_view_service.proto | 59 - .../googleads/v5/services/ad_service.proto | 115 - .../v5/services/age_range_view_service.proto | 59 - .../googleads/v5/services/asset_service.proto | 111 - .../v5/services/batch_job_service.proto | 236 - .../services/bidding_strategy_service.proto | 131 - .../v5/services/billing_setup_service.proto | 116 - .../v5/services/campaign_asset_service.proto | 122 - .../campaign_audience_view_service.proto | 59 - .../campaign_bid_modifier_service.proto | 132 - .../v5/services/campaign_budget_service.proto | 140 - .../services/campaign_criterion_service.proto | 139 - ...ampaign_criterion_simulation_service.proto | 60 - .../v5/services/campaign_draft_service.proto | 213 - .../campaign_experiment_service.proto | 304 - .../campaign_extension_setting_service.proto | 135 - .../v5/services/campaign_feed_service.proto | 140 - .../v5/services/campaign_label_service.proto | 123 - .../v5/services/campaign_service.proto | 138 - .../campaign_shared_set_service.proto | 122 - .../services/carrier_constant_service.proto | 59 - .../v5/services/change_status_service.proto | 59 - .../v5/services/click_view_service.proto | 59 - .../services/conversion_action_service.proto | 131 - ...conversion_adjustment_upload_service.proto | 181 - .../services/conversion_upload_service.proto | 235 - .../services/currency_constant_service.proto | 57 - .../v5/services/custom_interest_service.proto | 111 - .../customer_client_link_service.proto | 103 - .../v5/services/customer_client_service.proto | 59 - .../customer_extension_setting_service.proto | 135 - .../v5/services/customer_feed_service.proto | 140 - .../v5/services/customer_label_service.proto | 123 - .../customer_manager_link_service.proto | 140 - .../customer_negative_criterion_service.proto | 123 - .../v5/services/customer_service.proto | 170 - .../detail_placement_view_service.proto | 59 - .../display_keyword_view_service.proto | 59 - .../v5/services/distance_view_service.proto | 59 - .../v5/services/domain_category_service.proto | 60 - ..._search_ads_search_term_view_service.proto | 60 - .../expanded_landing_page_view_service.proto | 60 - .../extension_feed_item_service.proto | 142 - .../v5/services/feed_item_service.proto | 139 - .../services/feed_item_target_service.proto | 105 - .../v5/services/feed_mapping_service.proto | 122 - .../feed_placeholder_view_service.proto | 59 - .../googleads/v5/services/feed_service.proto | 139 - .../v5/services/gender_view_service.proto | 59 - .../geo_target_constant_service.proto | 129 - .../v5/services/geographic_view_service.proto | 59 - .../services/google_ads_field_service.proto | 98 - .../v5/services/google_ads_service.proto | 994 - .../group_placement_view_service.proto | 59 - .../services/hotel_group_view_service.proto | 59 - .../hotel_performance_view_service.proto | 59 - .../services/income_range_view_service.proto | 59 - .../v5/services/invoice_service.proto | 73 - ...eyword_plan_ad_group_keyword_service.proto | 143 - .../keyword_plan_ad_group_service.proto | 135 - ...eyword_plan_campaign_keyword_service.proto | 141 - .../keyword_plan_campaign_service.proto | 135 - .../services/keyword_plan_idea_service.proto | 156 - .../v5/services/keyword_plan_service.proto | 379 - .../v5/services/keyword_view_service.proto | 59 - .../googleads/v5/services/label_service.proto | 135 - .../services/landing_page_view_service.proto | 59 - .../services/language_constant_service.proto | 59 - .../v5/services/location_view_service.proto | 59 - .../managed_placement_view_service.proto | 59 - .../v5/services/media_file_service.proto | 125 - .../merchant_center_link_service.proto | 131 - ...mobile_app_category_constant_service.proto | 58 - .../mobile_device_constant_service.proto | 59 - .../offline_user_data_job_service.proto | 171 - ...ting_system_version_constant_service.proto | 60 - ...aid_organic_search_term_view_service.proto | 60 - .../parental_status_view_service.proto | 59 - .../services/payments_account_service.proto | 62 - ...ct_bidding_category_constant_service.proto | 60 - .../services/product_group_view_service.proto | 59 - .../v5/services/reach_plan_service.proto | 392 - .../v5/services/recommendation_service.proto | 271 - .../services/remarketing_action_service.proto | 124 - .../services/search_term_view_service.proto | 59 - .../services/shared_criterion_service.proto | 122 - .../v5/services/shared_set_service.proto | 139 - .../shopping_performance_view_service.proto | 60 - ...ird_party_app_analytics_link_service.proto | 78 - .../v5/services/topic_constant_service.proto | 59 - .../v5/services/topic_view_service.proto | 59 - .../v5/services/user_data_service.proto | 86 - .../v5/services/user_interest_service.proto | 59 - .../v5/services/user_list_service.proto | 129 - .../services/user_location_view_service.proto | 59 - .../googleads/v5/services/video_service.proto | 59 - google/ads/googleads/v6/BUILD.bazel | 262 - google/ads/googleads/v6/common/BUILD.bazel | 94 - google/ads/googleads/v6/common/ad_asset.proto | 69 - .../googleads/v6/common/ad_type_infos.proto | 674 - .../googleads/v6/common/asset_policy.proto | 46 - .../ads/googleads/v6/common/asset_types.proto | 196 - google/ads/googleads/v6/common/bidding.proto | 174 - .../googleads/v6/common/click_location.proto | 48 - google/ads/googleads/v6/common/criteria.proto | 611 - .../criterion_category_availability.proto | 82 - .../v6/common/custom_parameter.proto | 40 - google/ads/googleads/v6/common/dates.proto | 39 - .../explorer_auto_optimizer_setting.proto | 38 - .../ads/googleads/v6/common/extensions.proto | 368 - .../ads/googleads/v6/common/feed_common.proto | 39 - .../feed_item_set_filter_type_infos.proto | 58 - .../googleads/v6/common/final_app_url.proto | 46 - .../googleads/v6/common/frequency_cap.proto | 61 - .../v6/common/keyword_plan_common.proto | 75 - .../v6/common/matching_function.proto | 126 - google/ads/googleads/v6/common/metrics.proto | 605 - .../v6/common/offline_user_data.proto | 214 - google/ads/googleads/v6/common/policy.proto | 222 - .../v6/common/real_time_bidding_setting.proto | 37 - google/ads/googleads/v6/common/segments.proto | 329 - .../ads/googleads/v6/common/simulation.proto | 235 - .../ads/googleads/v6/common/tag_snippet.proto | 50 - .../v6/common/targeting_setting.proto | 85 - .../ads/googleads/v6/common/text_label.proto | 40 - .../googleads/v6/common/url_collection.proto | 45 - .../ads/googleads/v6/common/user_lists.proto | 291 - google/ads/googleads/v6/common/value.proto | 51 - google/ads/googleads/v6/enums/BUILD.bazel | 89 - .../v6/enums/access_invitation_status.proto | 55 - .../googleads/v6/enums/access_reason.proto | 57 - .../ads/googleads/v6/enums/access_role.proto | 55 - .../account_budget_proposal_status.proto | 63 - .../enums/account_budget_proposal_type.proto | 56 - .../v6/enums/account_budget_status.proto | 53 - .../v6/enums/account_link_status.proto | 63 - .../ad_customizer_placeholder_field.proto | 56 - .../v6/enums/ad_destination_type.proto | 77 - .../v6/enums/ad_group_ad_rotation_mode.proto | 53 - .../v6/enums/ad_group_ad_status.proto | 55 - .../ad_group_criterion_approval_status.proto | 56 - .../v6/enums/ad_group_criterion_status.proto | 55 - .../googleads/v6/enums/ad_group_status.proto | 55 - .../googleads/v6/enums/ad_group_type.proto | 90 - .../googleads/v6/enums/ad_network_type.proto | 62 - .../ad_serving_optimization_status.proto | 64 - .../ads/googleads/v6/enums/ad_strength.proto | 62 - google/ads/googleads/v6/enums/ad_type.proto | 125 - .../enums/advertising_channel_sub_type.proto | 96 - .../v6/enums/advertising_channel_type.proto | 70 - ...iate_location_feed_relationship_type.proto | 48 - ...affiliate_location_placeholder_field.proto | 77 - .../googleads/v6/enums/age_range_type.proto | 65 - .../v6/enums/app_campaign_app_store.proto | 50 - ..._campaign_bidding_strategy_goal_type.proto | 64 - .../v6/enums/app_payment_model_type.proto | 47 - .../v6/enums/app_placeholder_field.proto | 75 - google/ads/googleads/v6/enums/app_store.proto | 50 - .../enums/app_url_operating_system_type.proto | 50 - .../googleads/v6/enums/asset_field_type.proto | 69 - .../v6/enums/asset_link_status.proto | 50 - .../v6/enums/asset_performance_label.proto | 62 - .../ads/googleads/v6/enums/asset_type.proto | 62 - .../v6/enums/attribution_model.proto | 72 - .../googleads/v6/enums/batch_job_status.proto | 53 - .../v6/enums/bid_modifier_source.proto | 51 - .../googleads/v6/enums/bidding_source.proto | 55 - .../v6/enums/bidding_strategy_status.proto | 52 - .../v6/enums/bidding_strategy_type.proto | 110 - .../v6/enums/billing_setup_status.proto | 58 - .../v6/enums/brand_safety_suitability.proto | 73 - .../budget_campaign_association_status.proto | 51 - .../v6/enums/budget_delivery_method.proto | 53 - .../googleads/v6/enums/budget_period.proto | 53 - .../googleads/v6/enums/budget_status.proto | 50 - .../ads/googleads/v6/enums/budget_type.proto | 66 - .../call_conversion_reporting_state.proto | 56 - .../v6/enums/call_placeholder_field.proto | 66 - .../call_tracking_display_location.proto | 50 - google/ads/googleads/v6/enums/call_type.proto | 51 - .../v6/enums/callout_placeholder_field.proto | 47 - .../v6/enums/campaign_criterion_status.proto | 55 - .../v6/enums/campaign_draft_status.proto | 65 - .../v6/enums/campaign_experiment_status.proto | 77 - ...mpaign_experiment_traffic_split_type.proto | 53 - .../v6/enums/campaign_experiment_type.proto | 59 - .../v6/enums/campaign_serving_status.proto | 61 - .../v6/enums/campaign_shared_set_status.proto | 50 - .../googleads/v6/enums/campaign_status.proto | 53 - .../v6/enums/change_client_type.proto | 87 - .../v6/enums/change_event_resource_type.proto | 82 - .../v6/enums/change_status_operation.proto | 54 - .../enums/change_status_resource_type.proto | 76 - .../ads/googleads/v6/enums/click_type.proto | 203 - .../v6/enums/combined_audience_status.proto | 51 - .../v6/enums/content_label_type.proto | 89 - .../v6/enums/conversion_action_category.proto | 106 - .../conversion_action_counting_type.proto | 52 - .../v6/enums/conversion_action_status.proto | 54 - .../v6/enums/conversion_action_type.proto | 173 - .../v6/enums/conversion_adjustment_type.proto | 52 - .../conversion_attribution_event_type.proto | 48 - .../v6/enums/conversion_lag_bucket.proto | 117 - .../conversion_or_adjustment_lag_bucket.proto | 206 - ...n_category_channel_availability_mode.proto | 58 - ...on_category_locale_availability_mode.proto | 61 - .../criterion_system_serving_status.proto | 50 - .../googleads/v6/enums/criterion_type.proto | 140 - .../enums/custom_audience_member_type.proto | 56 - .../v6/enums/custom_audience_status.proto | 51 - .../v6/enums/custom_audience_type.proto | 58 - .../enums/custom_interest_member_type.proto | 50 - .../v6/enums/custom_interest_status.proto | 51 - .../v6/enums/custom_interest_type.proto | 50 - .../v6/enums/custom_placeholder_field.proto | 129 - .../customer_match_upload_key_type.proto | 53 - ...onversion_eligibility_failure_reason.proto | 68 - .../v6/enums/data_driven_model_status.proto | 62 - .../ads/googleads/v6/enums/day_of_week.proto | 65 - google/ads/googleads/v6/enums/device.proto | 59 - .../v6/enums/display_ad_format_setting.proto | 54 - .../enums/display_upload_product_type.proto | 97 - .../googleads/v6/enums/distance_bucket.proto | 127 - .../enums/dsa_page_feed_criterion_field.proto | 51 - .../enums/education_placeholder_field.proto | 111 - .../v6/enums/extension_setting_device.proto | 52 - .../googleads/v6/enums/extension_type.proto | 84 - .../v6/enums/external_conversion_source.proto | 149 - .../v6/enums/feed_attribute_type.proto | 83 - .../feed_item_quality_approval_status.proto | 52 - ...feed_item_quality_disapproval_reason.proto | 99 - .../v6/enums/feed_item_set_status.proto | 50 - .../feed_item_set_string_filter_type.proto | 45 - .../googleads/v6/enums/feed_item_status.proto | 50 - .../v6/enums/feed_item_target_device.proto | 48 - .../v6/enums/feed_item_target_status.proto | 50 - .../v6/enums/feed_item_target_type.proto | 53 - .../enums/feed_item_validation_status.proto | 53 - .../googleads/v6/enums/feed_link_status.proto | 50 - .../enums/feed_mapping_criterion_type.proto | 50 - .../v6/enums/feed_mapping_status.proto | 50 - .../ads/googleads/v6/enums/feed_origin.proto | 53 - .../ads/googleads/v6/enums/feed_status.proto | 50 - .../v6/enums/flight_placeholder_field.proto | 118 - .../v6/enums/frequency_cap_event_type.proto | 50 - .../v6/enums/frequency_cap_level.proto | 54 - .../v6/enums/frequency_cap_time_unit.proto | 53 - .../ads/googleads/v6/enums/gender_type.proto | 53 - .../v6/enums/geo_target_constant_status.proto | 52 - .../v6/enums/geo_targeting_restriction.proto | 49 - .../v6/enums/geo_targeting_type.proto | 50 - .../v6/enums/google_ads_field_category.proto | 61 - .../v6/enums/google_ads_field_data_type.proto | 102 - .../v6/enums/google_voice_call_status.proto | 50 - .../v6/enums/hotel_date_selection_type.proto | 50 - .../v6/enums/hotel_placeholder_field.proto | 124 - .../v6/enums/hotel_price_bucket.proto | 59 - .../googleads/v6/enums/hotel_rate_type.proto | 62 - .../v6/enums/image_placeholder_field.proto | 47 - .../v6/enums/income_range_type.proto | 65 - .../v6/enums/interaction_event_type.proto | 62 - .../googleads/v6/enums/interaction_type.proto | 47 - .../ads/googleads/v6/enums/invoice_type.proto | 50 - .../v6/enums/job_placeholder_field.proto | 115 - .../v6/enums/keyword_match_type.proto | 53 - .../keyword_plan_competition_level.proto | 57 - .../keyword_plan_forecast_interval.proto | 56 - .../v6/enums/keyword_plan_network.proto | 50 - .../ads/googleads/v6/enums/label_status.proto | 48 - .../enums/lead_form_call_to_action_type.proto | 84 - .../v6/enums/lead_form_desired_intent.proto | 48 - .../lead_form_field_user_input_type.proto | 273 - ...form_post_submit_call_to_action_type.proto | 55 - .../legacy_app_install_ad_app_store.proto | 59 - .../v6/enums/linked_account_type.proto | 52 - .../v6/enums/listing_group_type.proto | 52 - .../v6/enums/local_placeholder_field.proto | 119 - ..._extension_targeting_criterion_field.proto | 62 - .../enums/location_group_radius_units.proto | 53 - .../v6/enums/location_placeholder_field.proto | 68 - .../v6/enums/location_source_type.proto | 51 - .../v6/enums/manager_link_status.proto | 59 - .../matching_function_context_type.proto | 53 - .../v6/enums/matching_function_operator.proto | 65 - .../ads/googleads/v6/enums/media_type.proto | 64 - .../enums/merchant_center_link_status.proto | 53 - .../v6/enums/message_placeholder_field.proto | 61 - google/ads/googleads/v6/enums/mime_type.proto | 82 - .../googleads/v6/enums/minute_of_hour.proto | 56 - .../v6/enums/mobile_app_vendor.proto | 48 - .../v6/enums/mobile_device_type.proto | 50 - .../googleads/v6/enums/month_of_year.proto | 80 - .../v6/enums/negative_geo_target_type.proto | 52 - ...offline_user_data_job_failure_reason.proto | 51 - .../enums/offline_user_data_job_status.proto | 56 - .../v6/enums/offline_user_data_job_type.proto | 56 - ...erating_system_version_operator_type.proto | 50 - .../v6/enums/optimization_goal_type.proto | 53 - .../page_one_promoted_strategy_goal.proto | 30 - .../v6/enums/parental_status_type.proto | 53 - .../ads/googleads/v6/enums/payment_mode.proto | 64 - .../googleads/v6/enums/placeholder_type.proto | 124 - .../googleads/v6/enums/placement_type.proto | 59 - .../v6/enums/policy_approval_status.proto | 61 - .../v6/enums/policy_review_status.proto | 60 - .../v6/enums/policy_topic_entry_type.proto | 66 - ...idence_destination_mismatch_url_type.proto | 62 - ...dence_destination_not_working_device.proto | 57 - ...stination_not_working_dns_error_type.proto | 56 - .../v6/enums/positive_geo_target_type.proto | 58 - .../v6/enums/preferred_content_type.proto | 47 - .../price_extension_price_qualifier.proto | 53 - .../v6/enums/price_extension_price_unit.proto | 62 - .../v6/enums/price_extension_type.proto | 71 - .../v6/enums/price_placeholder_field.proto | 240 - .../product_bidding_category_level.proto | 57 - .../product_bidding_category_status.proto | 50 - .../googleads/v6/enums/product_channel.proto | 50 - .../enums/product_channel_exclusivity.proto | 52 - .../v6/enums/product_condition.proto | 53 - .../product_custom_attribute_index.proto | 59 - .../v6/enums/product_type_level.proto | 59 - ...romotion_extension_discount_modifier.proto | 48 - .../enums/promotion_extension_occasion.proto | 157 - .../enums/promotion_placeholder_field.proto | 95 - .../v6/enums/proximity_radius_units.proto | 50 - .../v6/enums/quality_score_bucket.proto | 53 - .../v6/enums/reach_plan_ad_length.proto | 53 - .../v6/enums/reach_plan_age_range.proto | 122 - .../v6/enums/reach_plan_network.proto | 54 - .../enums/real_estate_placeholder_field.proto | 115 - .../v6/enums/recommendation_type.proto | 108 - .../v6/enums/resource_change_operation.proto | 55 - .../v6/enums/response_content_type.proto | 48 - .../search_engine_results_page_type.proto | 54 - .../v6/enums/search_term_match_type.proto | 59 - .../enums/search_term_targeting_status.proto | 58 - .../v6/enums/served_asset_field_type.proto | 61 - .../v6/enums/shared_set_status.proto | 50 - .../googleads/v6/enums/shared_set_type.proto | 50 - .../simulation_modification_method.proto | 54 - .../googleads/v6/enums/simulation_type.proto | 62 - .../v6/enums/sitelink_placeholder_field.proto | 69 - google/ads/googleads/v6/enums/slot.proto | 65 - .../v6/enums/spending_limit_type.proto | 48 - ...structured_snippet_placeholder_field.proto | 55 - .../v6/enums/summary_row_setting.proto | 54 - .../enums/system_managed_entity_source.proto | 47 - ...arget_cpa_opt_in_recommendation_goal.proto | 57 - .../target_impression_share_location.proto | 55 - .../v6/enums/targeting_dimension.proto | 74 - google/ads/googleads/v6/enums/time_type.proto | 51 - .../v6/enums/tracking_code_page_format.proto | 50 - .../v6/enums/tracking_code_type.proto | 59 - .../v6/enums/travel_placeholder_field.proto | 128 - .../v6/enums/user_identifier_source.proto | 54 - .../enums/user_interest_taxonomy_type.proto | 59 - .../v6/enums/user_list_access_status.proto | 50 - .../v6/enums/user_list_closing_reason.proto | 48 - .../user_list_combined_rule_operator.proto | 48 - .../user_list_crm_data_source_type.proto | 51 - .../user_list_date_rule_item_operator.proto | 54 - .../user_list_logical_rule_operator.proto | 51 - .../enums/user_list_membership_status.proto | 52 - .../user_list_number_rule_item_operator.proto | 60 - .../user_list_prepopulation_status.proto | 51 - .../v6/enums/user_list_rule_type.proto | 48 - .../v6/enums/user_list_size_range.proto | 92 - .../user_list_string_rule_item_operator.proto | 66 - .../googleads/v6/enums/user_list_type.proto | 63 - .../vanity_pharma_display_url_mode.proto | 50 - .../v6/enums/vanity_pharma_text.proto | 87 - .../v6/enums/webpage_condition_operand.proto | 59 - .../v6/enums/webpage_condition_operator.proto | 51 - google/ads/googleads/v6/errors/BUILD.bazel | 94 - .../v6/errors/access_invitation_error.proto | 65 - .../account_budget_proposal_error.proto | 122 - .../v6/errors/account_link_error.proto | 47 - .../v6/errors/ad_customizer_error.proto | 59 - google/ads/googleads/v6/errors/ad_error.proto | 505 - .../v6/errors/ad_group_ad_error.proto | 76 - .../errors/ad_group_bid_modifier_error.proto | 51 - .../v6/errors/ad_group_criterion_error.proto | 137 - .../googleads/v6/errors/ad_group_error.proto | 87 - .../v6/errors/ad_group_feed_error.proto | 67 - .../v6/errors/ad_parameter_error.proto | 50 - .../v6/errors/ad_sharing_error.proto | 54 - .../ads/googleads/v6/errors/adx_error.proto | 47 - .../ads/googleads/v6/errors/asset_error.proto | 80 - .../v6/errors/asset_link_error.proto | 99 - .../v6/errors/authentication_error.proto | 103 - .../v6/errors/authorization_error.proto | 92 - .../googleads/v6/errors/batch_job_error.proto | 63 - .../googleads/v6/errors/bidding_error.proto | 122 - .../v6/errors/bidding_strategy_error.proto | 61 - .../v6/errors/billing_setup_error.proto | 105 - .../v6/errors/campaign_budget_error.proto | 97 - .../v6/errors/campaign_criterion_error.proto | 81 - .../v6/errors/campaign_draft_error.proto | 79 - .../googleads/v6/errors/campaign_error.proto | 183 - .../v6/errors/campaign_experiment_error.proto | 81 - .../v6/errors/campaign_feed_error.proto | 67 - .../v6/errors/campaign_shared_set_error.proto | 47 - .../v6/errors/change_event_error.proto | 63 - .../v6/errors/change_status_error.proto | 63 - .../v6/errors/collection_size_error.proto | 50 - .../googleads/v6/errors/context_error.proto | 50 - .../v6/errors/conversion_action_error.proto | 82 - .../conversion_adjustment_upload_error.proto | 85 - .../v6/errors/conversion_upload_error.proto | 130 - .../v6/errors/country_code_error.proto | 47 - .../googleads/v6/errors/criterion_error.proto | 439 - .../v6/errors/currency_code_error.proto | 47 - .../v6/errors/custom_audience_error.proto | 68 - .../v6/errors/custom_interest_error.proto | 66 - .../errors/customer_client_link_error.proto | 68 - .../googleads/v6/errors/customer_error.proto | 50 - .../v6/errors/customer_feed_error.proto | 66 - .../errors/customer_manager_link_error.proto | 75 - .../errors/customer_user_access_error.proto | 60 - .../googleads/v6/errors/database_error.proto | 56 - .../ads/googleads/v6/errors/date_error.proto | 74 - .../v6/errors/date_range_error.proto | 59 - .../googleads/v6/errors/distinct_error.proto | 50 - .../ads/googleads/v6/errors/enum_error.proto | 47 - google/ads/googleads/v6/errors/errors.proto | 625 - .../v6/errors/extension_feed_item_error.proto | 195 - .../v6/errors/extension_setting_error.proto | 261 - .../feed_attribute_reference_error.proto | 53 - .../ads/googleads/v6/errors/feed_error.proto | 111 - .../googleads/v6/errors/feed_item_error.proto | 71 - .../v6/errors/feed_item_set_error.proto | 68 - .../v6/errors/feed_item_set_link_error.proto | 51 - .../v6/errors/feed_item_target_error.proto | 70 - .../errors/feed_item_validation_error.proto | 377 - .../v6/errors/feed_mapping_error.proto | 100 - .../ads/googleads/v6/errors/field_error.proto | 65 - .../v6/errors/field_mask_error.proto | 58 - .../googleads/v6/errors/function_error.proto | 93 - .../v6/errors/function_parsing_error.proto | 77 - ...geo_target_constant_suggestion_error.proto | 56 - .../googleads/v6/errors/header_error.proto | 50 - google/ads/googleads/v6/errors/id_error.proto | 47 - .../ads/googleads/v6/errors/image_error.proto | 164 - .../googleads/v6/errors/internal_error.proto | 58 - .../googleads/v6/errors/invoice_error.proto | 50 - .../errors/keyword_plan_ad_group_error.proto | 53 - .../keyword_plan_ad_group_keyword_error.proto | 69 - .../errors/keyword_plan_campaign_error.proto | 65 - .../keyword_plan_campaign_keyword_error.proto | 49 - .../v6/errors/keyword_plan_error.proto | 91 - .../v6/errors/keyword_plan_idea_error.proto | 50 - .../ads/googleads/v6/errors/label_error.proto | 73 - .../v6/errors/language_code_error.proto | 50 - .../v6/errors/list_operation_error.proto | 50 - .../v6/errors/manager_link_error.proto | 97 - .../v6/errors/media_bundle_error.proto | 110 - .../v6/errors/media_file_error.proto | 113 - .../v6/errors/media_upload_error.proto | 149 - .../v6/errors/multiplier_error.proto | 81 - .../googleads/v6/errors/mutate_error.proto | 69 - .../errors/new_resource_creation_error.proto | 54 - .../v6/errors/not_allowlisted_error.proto | 47 - .../googleads/v6/errors/not_empty_error.proto | 47 - .../ads/googleads/v6/errors/null_error.proto | 47 - .../errors/offline_user_data_job_error.proto | 146 - .../operation_access_denied_error.proto | 74 - .../googleads/v6/errors/operator_error.proto | 47 - .../v6/errors/partial_failure_error.proto | 48 - .../v6/errors/payments_account_error.proto | 47 - .../v6/errors/policy_finding_error.proto | 51 - .../policy_validation_parameter_error.proto | 54 - .../v6/errors/policy_violation_error.proto | 47 - .../ads/googleads/v6/errors/query_error.proto | 222 - .../ads/googleads/v6/errors/quota_error.proto | 53 - .../ads/googleads/v6/errors/range_error.proto | 50 - .../v6/errors/reach_plan_error.proto | 48 - .../v6/errors/recommendation_error.proto | 90 - .../v6/errors/region_code_error.proto | 47 - .../googleads/v6/errors/request_error.proto | 119 - .../errors/resource_access_denied_error.proto | 47 - .../resource_count_limit_exceeded_error.proto | 93 - .../googleads/v6/errors/setting_error.proto | 85 - .../v6/errors/shared_criterion_error.proto | 47 - .../v6/errors/shared_set_error.proto | 56 - .../v6/errors/size_limit_error.proto | 50 - .../v6/errors/string_format_error.proto | 50 - .../v6/errors/string_length_error.proto | 54 - ...third_party_app_analytics_link_error.proto | 57 - .../googleads/v6/errors/time_zone_error.proto | 47 - .../googleads/v6/errors/url_field_error.proto | 215 - .../googleads/v6/errors/user_data_error.proto | 53 - .../googleads/v6/errors/user_list_error.proto | 129 - .../youtube_video_registration_error.proto | 53 - google/ads/googleads/v6/googleads_gapic.yaml | 26 - .../v6/googleads_grpc_service_config.json | 375 - google/ads/googleads/v6/googleads_v6.yaml | 1217 - google/ads/googleads/v6/resources/BUILD.bazel | 97 - .../v6/resources/account_budget.proto | 252 - .../resources/account_budget_proposal.proto | 160 - .../googleads/v6/resources/account_link.proto | 125 - google/ads/googleads/v6/resources/ad.proto | 185 - .../ads/googleads/v6/resources/ad_group.proto | 176 - .../googleads/v6/resources/ad_group_ad.proto | 90 - .../v6/resources/ad_group_ad_asset_view.proto | 105 - .../v6/resources/ad_group_ad_label.proto | 66 - .../v6/resources/ad_group_audience_view.proto | 54 - .../v6/resources/ad_group_bid_modifier.proto | 109 - .../v6/resources/ad_group_criterion.proto | 278 - .../resources/ad_group_criterion_label.proto | 66 - .../ad_group_criterion_simulation.proto | 90 - .../ad_group_extension_setting.proto | 79 - .../v6/resources/ad_group_feed.proto | 83 - .../v6/resources/ad_group_label.proto | 66 - .../v6/resources/ad_group_simulation.proto | 96 - .../googleads/v6/resources/ad_parameter.proto | 82 - .../v6/resources/ad_schedule_view.proto | 52 - .../v6/resources/age_range_view.proto | 51 - google/ads/googleads/v6/resources/asset.proto | 106 - .../googleads/v6/resources/batch_job.proto | 98 - .../v6/resources/bidding_strategy.proto | 130 - .../v6/resources/billing_setup.proto | 138 - .../googleads/v6/resources/call_view.proto | 80 - .../ads/googleads/v6/resources/campaign.proto | 419 - .../v6/resources/campaign_asset.proto | 77 - .../v6/resources/campaign_audience_view.proto | 55 - .../v6/resources/campaign_bid_modifier.proto | 76 - .../v6/resources/campaign_budget.proto | 156 - .../v6/resources/campaign_criterion.proto | 173 - .../campaign_criterion_simulation.proto | 84 - .../v6/resources/campaign_draft.proto | 98 - .../v6/resources/campaign_experiment.proto | 121 - .../campaign_extension_setting.proto | 79 - .../v6/resources/campaign_feed.proto | 83 - .../v6/resources/campaign_label.proto | 66 - .../v6/resources/campaign_shared_set.proto | 77 - .../v6/resources/carrier_constant.proto | 61 - .../googleads/v6/resources/change_event.proto | 178 - .../v6/resources/change_status.proto | 150 - .../googleads/v6/resources/click_view.proto | 95 - .../v6/resources/combined_audience.proto | 67 - .../v6/resources/conversion_action.proto | 176 - .../v6/resources/currency_constant.proto | 64 - .../v6/resources/custom_audience.proto | 107 - .../v6/resources/custom_interest.proto | 89 - .../ads/googleads/v6/resources/customer.proto | 161 - .../v6/resources/customer_client.proto | 89 - .../v6/resources/customer_client_link.proto | 70 - .../customer_extension_setting.proto | 67 - .../v6/resources/customer_feed.proto | 75 - .../v6/resources/customer_label.proto | 72 - .../v6/resources/customer_manager_link.proto | 65 - .../customer_negative_criterion.proto | 82 - .../v6/resources/customer_user_access.proto | 72 - .../customer_user_access_invitation.proto | 73 - .../v6/resources/detail_placement_view.proto | 71 - .../v6/resources/display_keyword_view.proto | 51 - .../v6/resources/distance_view.proto | 62 - .../v6/resources/domain_category.proto | 90 - .../dynamic_search_ads_search_term_view.proto | 86 - .../expanded_landing_page_view.proto | 55 - .../v6/resources/extension_feed_item.proto | 151 - google/ads/googleads/v6/resources/feed.proto | 192 - .../googleads/v6/resources/feed_item.proto | 214 - .../v6/resources/feed_item_set.proto | 84 - .../v6/resources/feed_item_set_link.proto | 66 - .../v6/resources/feed_item_target.proto | 108 - .../googleads/v6/resources/feed_mapping.proto | 189 - .../v6/resources/feed_placeholder_view.proto | 55 - .../googleads/v6/resources/gender_view.proto | 51 - .../v6/resources/geo_target_constant.proto | 82 - .../v6/resources/geographic_view.proto | 63 - .../v6/resources/google_ads_field.proto | 117 - .../v6/resources/group_placement_view.proto | 66 - .../v6/resources/hotel_group_view.proto | 51 - .../v6/resources/hotel_performance_view.proto | 51 - .../v6/resources/income_range_view.proto | 51 - .../ads/googleads/v6/resources/invoice.proto | 203 - .../googleads/v6/resources/keyword_plan.proto | 82 - .../v6/resources/keyword_plan_ad_group.proto | 71 - .../keyword_plan_ad_group_keyword.proto | 77 - .../v6/resources/keyword_plan_campaign.proto | 98 - .../keyword_plan_campaign_keyword.proto | 71 - .../googleads/v6/resources/keyword_view.proto | 51 - google/ads/googleads/v6/resources/label.proto | 66 - .../v6/resources/landing_page_view.proto | 55 - .../v6/resources/language_constant.proto | 64 - .../v6/resources/location_view.proto | 52 - .../v6/resources/managed_placement_view.proto | 51 - .../googleads/v6/resources/media_file.proto | 135 - .../v6/resources/merchant_center_link.proto | 64 - .../mobile_app_category_constant.proto | 57 - .../v6/resources/mobile_device_constant.proto | 67 - .../v6/resources/offline_user_data_job.proto | 82 - .../operating_system_version_constant.proto | 70 - .../paid_organic_search_term_view.proto | 56 - .../v6/resources/parental_status_view.proto | 51 - .../v6/resources/payments_account.proto | 78 - .../product_bidding_category_constant.proto | 83 - .../v6/resources/product_group_view.proto | 51 - .../v6/resources/recommendation.proto | 346 - .../v6/resources/remarketing_action.proto | 66 - .../v6/resources/search_term_view.proto | 68 - .../v6/resources/shared_criterion.proto | 92 - .../googleads/v6/resources/shared_set.proto | 77 - .../resources/shopping_performance_view.proto | 55 - .../third_party_app_analytics_link.proto | 55 - .../v6/resources/topic_constant.proto | 71 - .../googleads/v6/resources/topic_view.proto | 51 - .../v6/resources/user_interest.proto | 76 - .../googleads/v6/resources/user_list.proto | 174 - .../v6/resources/user_location_view.proto | 62 - google/ads/googleads/v6/resources/video.proto | 63 - google/ads/googleads/v6/services/BUILD.bazel | 138 - .../account_budget_proposal_service.proto | 138 - .../v6/services/account_budget_service.proto | 62 - .../v6/services/account_link_service.proto | 147 - .../ad_group_ad_asset_view_service.proto | 59 - .../services/ad_group_ad_label_service.proto | 124 - .../v6/services/ad_group_ad_service.proto | 142 - .../ad_group_audience_view_service.proto | 59 - .../ad_group_bid_modifier_service.proto | 141 - .../ad_group_criterion_label_service.proto | 125 - .../services/ad_group_criterion_service.proto | 151 - ...d_group_criterion_simulation_service.proto | 60 - .../ad_group_extension_setting_service.proto | 145 - .../v6/services/ad_group_feed_service.proto | 140 - .../v6/services/ad_group_label_service.proto | 123 - .../v6/services/ad_group_service.proto | 137 - .../ad_group_simulation_service.proto | 59 - .../v6/services/ad_parameter_service.proto | 140 - .../services/ad_schedule_view_service.proto | 59 - .../googleads/v6/services/ad_service.proto | 119 - .../v6/services/age_range_view_service.proto | 59 - .../googleads/v6/services/asset_service.proto | 121 - .../v6/services/batch_job_service.proto | 236 - .../services/bidding_strategy_service.proto | 131 - .../v6/services/billing_setup_service.proto | 116 - .../v6/services/campaign_asset_service.proto | 122 - .../campaign_audience_view_service.proto | 59 - .../campaign_bid_modifier_service.proto | 142 - .../v6/services/campaign_budget_service.proto | 140 - .../services/campaign_criterion_service.proto | 139 - ...ampaign_criterion_simulation_service.proto | 60 - .../v6/services/campaign_draft_service.proto | 213 - .../campaign_experiment_service.proto | 304 - .../campaign_extension_setting_service.proto | 135 - .../v6/services/campaign_feed_service.proto | 140 - .../v6/services/campaign_label_service.proto | 123 - .../v6/services/campaign_service.proto | 138 - .../campaign_shared_set_service.proto | 132 - .../services/carrier_constant_service.proto | 59 - .../v6/services/change_status_service.proto | 59 - .../v6/services/click_view_service.proto | 59 - .../services/combined_audience_service.proto | 61 - .../services/conversion_action_service.proto | 131 - ...conversion_adjustment_upload_service.proto | 181 - .../services/conversion_upload_service.proto | 235 - .../services/currency_constant_service.proto | 57 - .../v6/services/custom_audience_service.proto | 117 - .../v6/services/custom_interest_service.proto | 111 - .../customer_client_link_service.proto | 103 - .../v6/services/customer_client_service.proto | 59 - .../customer_extension_setting_service.proto | 135 - .../v6/services/customer_feed_service.proto | 140 - .../v6/services/customer_label_service.proto | 123 - .../customer_manager_link_service.proto | 140 - .../customer_negative_criterion_service.proto | 132 - .../v6/services/customer_service.proto | 170 - ...tomer_user_access_invitation_service.proto | 108 - .../customer_user_access_service.proto | 110 - .../detail_placement_view_service.proto | 59 - .../display_keyword_view_service.proto | 59 - .../v6/services/distance_view_service.proto | 59 - .../v6/services/domain_category_service.proto | 60 - ..._search_ads_search_term_view_service.proto | 60 - .../expanded_landing_page_view_service.proto | 60 - .../extension_feed_item_service.proto | 142 - .../v6/services/feed_item_service.proto | 139 - .../services/feed_item_set_link_service.proto | 115 - .../v6/services/feed_item_set_service.proto | 122 - .../services/feed_item_target_service.proto | 115 - .../v6/services/feed_mapping_service.proto | 132 - .../feed_placeholder_view_service.proto | 59 - .../googleads/v6/services/feed_service.proto | 139 - .../v6/services/gender_view_service.proto | 59 - .../geo_target_constant_service.proto | 129 - .../v6/services/geographic_view_service.proto | 59 - .../services/google_ads_field_service.proto | 98 - .../v6/services/google_ads_service.proto | 1040 - .../group_placement_view_service.proto | 59 - .../services/hotel_group_view_service.proto | 59 - .../hotel_performance_view_service.proto | 59 - .../services/income_range_view_service.proto | 59 - .../v6/services/invoice_service.proto | 73 - ...eyword_plan_ad_group_keyword_service.proto | 143 - .../keyword_plan_ad_group_service.proto | 135 - ...eyword_plan_campaign_keyword_service.proto | 141 - .../keyword_plan_campaign_service.proto | 135 - .../services/keyword_plan_idea_service.proto | 154 - .../v6/services/keyword_plan_service.proto | 378 - .../v6/services/keyword_view_service.proto | 59 - .../googleads/v6/services/label_service.proto | 135 - .../services/landing_page_view_service.proto | 59 - .../services/language_constant_service.proto | 59 - .../v6/services/location_view_service.proto | 59 - .../managed_placement_view_service.proto | 59 - .../v6/services/media_file_service.proto | 125 - .../merchant_center_link_service.proto | 131 - ...mobile_app_category_constant_service.proto | 58 - .../mobile_device_constant_service.proto | 59 - .../offline_user_data_job_service.proto | 170 - ...ting_system_version_constant_service.proto | 60 - ...aid_organic_search_term_view_service.proto | 60 - .../parental_status_view_service.proto | 59 - .../services/payments_account_service.proto | 62 - ...ct_bidding_category_constant_service.proto | 60 - .../services/product_group_view_service.proto | 59 - .../v6/services/reach_plan_service.proto | 429 - .../v6/services/recommendation_service.proto | 279 - .../services/remarketing_action_service.proto | 124 - .../services/search_term_view_service.proto | 59 - .../services/shared_criterion_service.proto | 132 - .../v6/services/shared_set_service.proto | 139 - .../shopping_performance_view_service.proto | 60 - ...ird_party_app_analytics_link_service.proto | 78 - .../v6/services/topic_constant_service.proto | 59 - .../v6/services/topic_view_service.proto | 59 - .../v6/services/user_data_service.proto | 85 - .../v6/services/user_interest_service.proto | 59 - .../v6/services/user_list_service.proto | 129 - .../services/user_location_view_service.proto | 59 - .../googleads/v6/services/video_service.proto | 59 - google/ads/googleads/v7/BUILD.bazel | 17 +- .../googleads/v7/common/ad_type_infos.proto | 57 +- .../ads/googleads/v7/common/asset_types.proto | 2 +- google/ads/googleads/v7/common/bidding.proto | 13 +- .../v7/common/offline_user_data.proto | 4 + .../ads/googleads/v7/common/user_lists.proto | 2 +- google/ads/googleads/v7/common/value.proto | 2 +- .../v7/enums/google_ads_field_category.proto | 2 +- .../v7/enums/google_ads_field_data_type.proto | 2 +- .../v7/enums/lead_form_desired_intent.proto | 2 +- .../v7/enums/location_source_type.proto | 3 +- .../googleads/v7/enums/placeholder_type.proto | 4 +- .../v7/errors/authentication_error.proto | 6 +- .../v7/errors/conversion_upload_error.proto | 4 +- google/ads/googleads/v7/errors/errors.proto | 2 +- .../ads/googleads/v7/errors/feed_error.proto | 4 +- .../googleads/v7/errors/header_error.proto | 4 +- .../keyword_plan_ad_group_keyword_error.proto | 3 + .../v7/errors/manager_link_error.proto | 2 +- .../operation_access_denied_error.proto | 4 +- .../googleads/v7/errors/url_field_error.proto | 2 +- google/ads/googleads/v7/googleads_v7.yaml | 6 +- .../ads/googleads/v7/resources/ad_group.proto | 11 +- .../v7/resources/ad_group_simulation.proto | 2 - .../ads/googleads/v7/resources/campaign.proto | 58 +- .../campaign_criterion_simulation.proto | 3 +- .../googleads/v7/resources/change_event.proto | 2 +- .../v7/resources/extension_feed_item.proto | 4 +- google/ads/googleads/v7/resources/feed.proto | 16 +- .../v7/resources/google_ads_field.proto | 21 +- .../operating_system_version_constant.proto | 2 +- .../v7/resources/recommendation.proto | 94 +- .../services/google_ads_field_service.proto | 2 +- .../v7/services/reach_plan_service.proto | 72 +- .../v7/services/recommendation_service.proto | 2 +- .../v7/services/user_data_service.proto | 1 - google/ads/googleads/v8/BUILD.bazel | 263 + google/ads/googleads/v8/common/BUILD.bazel | 94 + google/ads/googleads/v8/common/ad_asset.proto | 69 + .../googleads/v8/common/ad_type_infos.proto | 691 + .../googleads/v8/common/asset_policy.proto | 46 + .../ads/googleads/v8/common/asset_types.proto | 325 + google/ads/googleads/v8/common/bidding.proto | 179 + .../googleads/v8/common/click_location.proto | 48 + google/ads/googleads/v8/common/criteria.proto | 651 + .../criterion_category_availability.proto | 82 + .../v8/common/custom_parameter.proto | 40 + google/ads/googleads/v8/common/dates.proto | 59 + .../explorer_auto_optimizer_setting.proto | 38 + .../ads/googleads/v8/common/extensions.proto | 368 + .../ads/googleads/v8/common/feed_common.proto | 39 + .../feed_item_set_filter_type_infos.proto | 58 + .../googleads/v8/common/final_app_url.proto | 46 + .../googleads/v8/common/frequency_cap.proto | 61 + .../v8/common/keyword_plan_common.proto | 139 + .../v8/common/matching_function.proto | 126 + google/ads/googleads/v8/common/metrics.proto | 619 + .../v8/common/offline_user_data.proto | 284 + google/ads/googleads/v8/common/policy.proto | 220 + .../v8/common/real_time_bidding_setting.proto | 37 + google/ads/googleads/v8/common/segments.proto | 369 + .../ads/googleads/v8/common/simulation.proto | 358 + .../ads/googleads/v8/common/tag_snippet.proto | 50 + .../v8/common/targeting_setting.proto | 85 + .../ads/googleads/v8/common/text_label.proto | 40 + .../googleads/v8/common/url_collection.proto | 45 + .../ads/googleads/v8/common/user_lists.proto | 291 + google/ads/googleads/v8/common/value.proto | 51 + .../googleads/{v4 => v8}/enums/BUILD.bazel | 0 .../v8/enums/access_invitation_status.proto | 55 + .../googleads/v8/enums/access_reason.proto | 57 + .../ads/googleads/v8/enums/access_role.proto | 55 + .../account_budget_proposal_status.proto | 63 + .../enums/account_budget_proposal_type.proto | 56 + .../v8/enums/account_budget_status.proto | 53 + .../v8/enums/account_link_status.proto | 63 + .../ad_customizer_placeholder_field.proto | 56 + .../v8/enums/ad_destination_type.proto | 77 + .../v8/enums/ad_group_ad_rotation_mode.proto | 53 + .../v8/enums/ad_group_ad_status.proto | 55 + .../ad_group_criterion_approval_status.proto | 56 + .../v8/enums/ad_group_criterion_status.proto | 55 + .../googleads/v8/enums/ad_group_status.proto | 55 + .../googleads/v8/enums/ad_group_type.proto | 96 + .../googleads/v8/enums/ad_network_type.proto | 62 + .../ad_serving_optimization_status.proto | 64 + .../ads/googleads/v8/enums/ad_strength.proto | 62 + google/ads/googleads/v8/enums/ad_type.proto | 128 + .../enums/advertising_channel_sub_type.proto | 96 + .../v8/enums/advertising_channel_type.proto | 70 + ...iate_location_feed_relationship_type.proto | 48 + ...affiliate_location_placeholder_field.proto | 77 + .../googleads/v8/enums/age_range_type.proto | 65 + .../v8/enums/app_campaign_app_store.proto | 50 + ..._campaign_bidding_strategy_goal_type.proto | 64 + .../v8/enums/app_payment_model_type.proto | 47 + .../v8/enums/app_placeholder_field.proto | 75 + google/ads/googleads/v8/enums/app_store.proto | 50 + .../enums/app_url_operating_system_type.proto | 50 + .../googleads/v8/enums/asset_field_type.proto | 81 + .../v8/enums/asset_link_status.proto | 53 + .../v8/enums/asset_performance_label.proto | 62 + .../ads/googleads/v8/enums/asset_type.proto | 74 + .../v8/enums/attribution_model.proto | 72 + .../googleads/v8/enums/batch_job_status.proto | 53 + .../v8/enums/bid_modifier_source.proto | 51 + .../googleads/v8/enums/bidding_source.proto | 55 + .../v8/enums/bidding_strategy_status.proto | 52 + .../v8/enums/bidding_strategy_type.proto | 119 + .../v8/enums/billing_setup_status.proto | 58 + .../v8/enums/brand_safety_suitability.proto | 73 + .../budget_campaign_association_status.proto | 51 + .../v8/enums/budget_delivery_method.proto | 53 + .../googleads/v8/enums/budget_period.proto | 53 + .../googleads/v8/enums/budget_status.proto | 50 + .../ads/googleads/v8/enums/budget_type.proto | 74 + .../call_conversion_reporting_state.proto | 56 + .../v8/enums/call_placeholder_field.proto | 66 + .../call_tracking_display_location.proto | 50 + google/ads/googleads/v8/enums/call_type.proto | 51 + .../v8/enums/callout_placeholder_field.proto | 47 + .../v8/enums/campaign_criterion_status.proto | 55 + .../v8/enums/campaign_draft_status.proto | 65 + .../v8/enums/campaign_experiment_status.proto | 77 + ...mpaign_experiment_traffic_split_type.proto | 53 + .../v8/enums/campaign_experiment_type.proto | 59 + .../v8/enums/campaign_serving_status.proto | 61 + .../v8/enums/campaign_shared_set_status.proto | 50 + .../googleads/v8/enums/campaign_status.proto | 53 + .../v8/enums/change_client_type.proto | 87 + .../v8/enums/change_event_resource_type.proto | 94 + .../v8/enums/change_status_operation.proto | 54 + .../enums/change_status_resource_type.proto | 94 + .../ads/googleads/v8/enums/click_type.proto | 203 + .../v8/enums/combined_audience_status.proto | 51 + .../v8/enums/content_label_type.proto | 89 + .../v8/enums/conversion_action_category.proto | 106 + .../conversion_action_counting_type.proto | 52 + .../v8/enums/conversion_action_status.proto | 54 + .../v8/enums/conversion_action_type.proto | 174 + .../v8/enums/conversion_adjustment_type.proto | 56 + .../conversion_attribution_event_type.proto | 48 + .../conversion_custom_variable_status.proto | 58 + .../v8/enums/conversion_lag_bucket.proto | 117 + .../conversion_or_adjustment_lag_bucket.proto | 206 + ...version_value_rule_primary_dimension.proto | 66 + .../conversion_value_rule_set_status.proto | 55 + .../enums/conversion_value_rule_status.proto | 53 + ...n_category_channel_availability_mode.proto | 58 + ...on_category_locale_availability_mode.proto | 61 + .../criterion_system_serving_status.proto | 50 + .../googleads/v8/enums/criterion_type.proto | 143 + .../enums/custom_audience_member_type.proto | 56 + .../v8/enums/custom_audience_status.proto | 51 + .../v8/enums/custom_audience_type.proto | 58 + .../enums/custom_interest_member_type.proto | 50 + .../v8/enums/custom_interest_status.proto | 51 + .../v8/enums/custom_interest_type.proto | 50 + .../v8/enums/custom_placeholder_field.proto | 129 + .../customer_match_upload_key_type.proto | 53 + ...onversion_eligibility_failure_reason.proto | 68 + .../v8/enums/data_driven_model_status.proto | 62 + .../ads/googleads/v8/enums/day_of_week.proto | 65 + google/ads/googleads/v8/enums/device.proto | 59 + .../v8/enums/display_ad_format_setting.proto | 54 + .../enums/display_upload_product_type.proto | 97 + .../googleads/v8/enums/distance_bucket.proto | 127 + .../enums/dsa_page_feed_criterion_field.proto | 51 + .../enums/education_placeholder_field.proto | 111 + .../v8/enums/extension_setting_device.proto | 52 + .../googleads/v8/enums/extension_type.proto | 84 + .../v8/enums/external_conversion_source.proto | 152 + .../v8/enums/feed_attribute_type.proto | 83 + .../feed_item_quality_approval_status.proto | 52 + ...feed_item_quality_disapproval_reason.proto | 99 + .../v8/enums/feed_item_set_status.proto | 50 + .../feed_item_set_string_filter_type.proto | 45 + .../googleads/v8/enums/feed_item_status.proto | 50 + .../v8/enums/feed_item_target_device.proto | 48 + .../v8/enums/feed_item_target_status.proto | 50 + .../v8/enums/feed_item_target_type.proto | 53 + .../enums/feed_item_validation_status.proto | 53 + .../googleads/v8/enums/feed_link_status.proto | 50 + .../enums/feed_mapping_criterion_type.proto | 50 + .../v8/enums/feed_mapping_status.proto | 50 + .../ads/googleads/v8/enums/feed_origin.proto | 53 + .../ads/googleads/v8/enums/feed_status.proto | 50 + .../v8/enums/flight_placeholder_field.proto | 118 + .../v8/enums/frequency_cap_event_type.proto | 50 + .../v8/enums/frequency_cap_level.proto | 54 + .../v8/enums/frequency_cap_time_unit.proto | 53 + .../ads/googleads/v8/enums/gender_type.proto | 53 + .../v8/enums/geo_target_constant_status.proto | 52 + .../v8/enums/geo_targeting_restriction.proto | 49 + .../v8/enums/geo_targeting_type.proto | 50 + .../v8/enums/google_ads_field_category.proto | 61 + .../v8/enums/google_ads_field_data_type.proto | 102 + .../v8/enums/google_voice_call_status.proto | 50 + .../v8/enums/hotel_date_selection_type.proto | 50 + .../v8/enums/hotel_placeholder_field.proto | 124 + .../v8/enums/hotel_price_bucket.proto | 59 + .../googleads/v8/enums/hotel_rate_type.proto | 62 + .../v8/enums/image_placeholder_field.proto | 47 + .../v8/enums/income_range_type.proto | 65 + .../v8/enums/interaction_event_type.proto | 62 + .../googleads/v8/enums/interaction_type.proto | 47 + .../ads/googleads/v8/enums/invoice_type.proto | 50 + .../v8/enums/job_placeholder_field.proto | 115 + .../v8/enums/keyword_match_type.proto | 53 + .../keyword_plan_aggregate_metric_type.proto | 47 + .../keyword_plan_competition_level.proto | 57 + .../keyword_plan_concept_group_type.proto | 58 + .../keyword_plan_forecast_interval.proto | 56 + .../keyword_plan_keyword_annotation.proto | 47 + .../v8/enums/keyword_plan_network.proto | 50 + .../ads/googleads/v8/enums/label_status.proto | 48 + .../enums/lead_form_call_to_action_type.proto | 84 + .../v8/enums/lead_form_desired_intent.proto | 48 + .../lead_form_field_user_input_type.proto | 273 + ...form_post_submit_call_to_action_type.proto | 55 + .../legacy_app_install_ad_app_store.proto | 59 + .../v8/enums/linked_account_type.proto | 52 + .../v8/enums/listing_group_type.proto | 52 + .../v8/enums/local_placeholder_field.proto | 119 + ..._extension_targeting_criterion_field.proto | 62 + .../enums/location_group_radius_units.proto | 53 + .../v8/enums/location_placeholder_field.proto | 68 + .../v8/enums/location_source_type.proto | 50 + .../v8/enums/manager_link_status.proto | 59 + .../matching_function_context_type.proto | 53 + .../v8/enums/matching_function_operator.proto | 65 + .../ads/googleads/v8/enums/media_type.proto | 64 + .../enums/merchant_center_link_status.proto | 53 + .../v8/enums/message_placeholder_field.proto | 61 + google/ads/googleads/v8/enums/mime_type.proto | 82 + .../googleads/v8/enums/minute_of_hour.proto | 56 + .../v8/enums/mobile_app_vendor.proto | 48 + .../v8/enums/mobile_device_type.proto | 50 + .../googleads/v8/enums/month_of_year.proto | 80 + .../v8/enums/negative_geo_target_type.proto | 52 + ...offline_user_data_job_failure_reason.proto | 51 + .../enums/offline_user_data_job_status.proto | 56 + .../v8/enums/offline_user_data_job_type.proto | 56 + ...erating_system_version_operator_type.proto | 50 + .../v8/enums/optimization_goal_type.proto | 53 + .../v8/enums/parental_status_type.proto | 53 + .../ads/googleads/v8/enums/payment_mode.proto | 64 + .../googleads/v8/enums/placeholder_type.proto | 124 + .../googleads/v8/enums/placement_type.proto | 59 + .../v8/enums/policy_approval_status.proto | 61 + .../v8/enums/policy_review_status.proto | 60 + .../v8/enums/policy_topic_entry_type.proto | 66 + ...idence_destination_mismatch_url_type.proto | 62 + ...dence_destination_not_working_device.proto | 57 + ...stination_not_working_dns_error_type.proto | 56 + .../v8/enums/positive_geo_target_type.proto | 58 + .../v8/enums/preferred_content_type.proto | 47 + .../price_extension_price_qualifier.proto | 53 + .../v8/enums/price_extension_price_unit.proto | 62 + .../v8/enums/price_extension_type.proto | 71 + .../v8/enums/price_placeholder_field.proto | 240 + .../product_bidding_category_level.proto | 57 + .../product_bidding_category_status.proto | 50 + .../googleads/v8/enums/product_channel.proto | 50 + .../enums/product_channel_exclusivity.proto | 52 + .../v8/enums/product_condition.proto | 53 + .../product_custom_attribute_index.proto | 59 + .../v8/enums/product_type_level.proto | 59 + ...romotion_extension_discount_modifier.proto | 48 + .../enums/promotion_extension_occasion.proto | 157 + .../enums/promotion_placeholder_field.proto | 95 + .../v8/enums/proximity_radius_units.proto | 50 + .../v8/enums/quality_score_bucket.proto | 53 + .../v8/enums/reach_plan_ad_length.proto | 53 + .../v8/enums/reach_plan_age_range.proto | 122 + .../v8/enums/reach_plan_network.proto | 54 + .../enums/real_estate_placeholder_field.proto | 115 + .../v8/enums/recommendation_type.proto | 112 + .../v8/enums/resource_change_operation.proto | 55 + .../v8/enums/resource_limit_type.proto | 333 + .../v8/enums/response_content_type.proto | 48 + .../search_engine_results_page_type.proto | 54 + .../v8/enums/search_term_match_type.proto | 59 + .../enums/search_term_targeting_status.proto | 58 + .../v8/enums/seasonality_event_scope.proto | 59 + .../v8/enums/seasonality_event_status.proto | 53 + .../v8/enums/served_asset_field_type.proto | 61 + .../v8/enums/shared_set_status.proto | 50 + .../googleads/v8/enums/shared_set_type.proto | 50 + .../simulation_modification_method.proto | 59 + .../googleads/v8/enums/simulation_type.proto | 68 + .../v8/enums/sitelink_placeholder_field.proto | 69 + google/ads/googleads/v8/enums/slot.proto | 65 + .../v8/enums/spending_limit_type.proto | 48 + ...structured_snippet_placeholder_field.proto | 55 + .../v8/enums/summary_row_setting.proto | 54 + .../enums/system_managed_entity_source.proto | 47 + ...arget_cpa_opt_in_recommendation_goal.proto | 57 + .../target_impression_share_location.proto | 55 + .../v8/enums/targeting_dimension.proto | 74 + google/ads/googleads/v8/enums/time_type.proto | 51 + .../v8/enums/tracking_code_page_format.proto | 50 + .../v8/enums/tracking_code_type.proto | 59 + .../v8/enums/travel_placeholder_field.proto | 128 + .../v8/enums/user_identifier_source.proto | 54 + .../enums/user_interest_taxonomy_type.proto | 59 + .../v8/enums/user_list_access_status.proto | 50 + .../v8/enums/user_list_closing_reason.proto | 48 + .../user_list_combined_rule_operator.proto | 48 + .../user_list_crm_data_source_type.proto | 51 + .../user_list_date_rule_item_operator.proto | 54 + .../user_list_logical_rule_operator.proto | 51 + .../enums/user_list_membership_status.proto | 52 + .../user_list_number_rule_item_operator.proto | 60 + .../user_list_prepopulation_status.proto | 51 + .../v8/enums/user_list_rule_type.proto | 48 + .../v8/enums/user_list_size_range.proto | 92 + .../user_list_string_rule_item_operator.proto | 66 + .../googleads/v8/enums/user_list_type.proto | 63 + .../v8/enums/value_rule_device_type.proto | 54 + .../value_rule_geo_location_match_type.proto | 51 + .../v8/enums/value_rule_operation.proto | 54 + .../value_rule_set_attachment_type.proto | 50 + .../v8/enums/value_rule_set_dimension.proto | 54 + .../vanity_pharma_display_url_mode.proto | 50 + .../v8/enums/vanity_pharma_text.proto | 87 + .../v8/enums/webpage_condition_operand.proto | 59 + .../v8/enums/webpage_condition_operator.proto | 51 + google/ads/googleads/v8/errors/BUILD.bazel | 94 + .../v8/errors/access_invitation_error.proto | 69 + .../account_budget_proposal_error.proto | 122 + .../v8/errors/account_link_error.proto | 47 + .../v8/errors/ad_customizer_error.proto | 59 + google/ads/googleads/v8/errors/ad_error.proto | 512 + .../v8/errors/ad_group_ad_error.proto | 80 + .../errors/ad_group_bid_modifier_error.proto | 51 + .../v8/errors/ad_group_criterion_error.proto | 137 + .../googleads/v8/errors/ad_group_error.proto | 91 + .../v8/errors/ad_group_feed_error.proto | 67 + .../v8/errors/ad_parameter_error.proto | 50 + .../v8/errors/ad_sharing_error.proto | 54 + .../ads/googleads/v8/errors/adx_error.proto | 47 + .../ads/googleads/v8/errors/asset_error.proto | 99 + .../v8/errors/asset_link_error.proto | 108 + .../v8/errors/authentication_error.proto | 103 + .../v8/errors/authorization_error.proto | 92 + .../googleads/v8/errors/batch_job_error.proto | 63 + .../googleads/v8/errors/bidding_error.proto | 122 + .../v8/errors/bidding_strategy_error.proto | 61 + .../v8/errors/billing_setup_error.proto | 105 + .../v8/errors/campaign_budget_error.proto | 97 + .../v8/errors/campaign_criterion_error.proto | 99 + .../v8/errors/campaign_draft_error.proto | 79 + .../googleads/v8/errors/campaign_error.proto | 190 + .../v8/errors/campaign_experiment_error.proto | 81 + .../v8/errors/campaign_feed_error.proto | 67 + .../v8/errors/campaign_shared_set_error.proto | 47 + .../v8/errors/change_event_error.proto | 63 + .../v8/errors/change_status_error.proto | 63 + .../v8/errors/collection_size_error.proto | 50 + .../googleads/v8/errors/context_error.proto | 50 + .../v8/errors/conversion_action_error.proto | 82 + .../conversion_adjustment_upload_error.proto | 105 + .../conversion_custom_variable_error.proto | 50 + .../v8/errors/conversion_upload_error.proto | 169 + .../errors/conversion_value_rule_error.proto | 92 + .../conversion_value_rule_set_error.proto | 84 + .../v8/errors/country_code_error.proto | 47 + .../googleads/v8/errors/criterion_error.proto | 456 + .../v8/errors/currency_code_error.proto | 47 + .../v8/errors/custom_audience_error.proto | 68 + .../v8/errors/custom_interest_error.proto | 66 + .../errors/customer_client_link_error.proto | 68 + .../googleads/v8/errors/customer_error.proto | 50 + .../v8/errors/customer_feed_error.proto | 66 + .../errors/customer_manager_link_error.proto | 75 + .../errors/customer_user_access_error.proto | 60 + .../googleads/v8/errors/database_error.proto | 56 + .../ads/googleads/v8/errors/date_error.proto | 74 + .../v8/errors/date_range_error.proto | 59 + .../googleads/v8/errors/distinct_error.proto | 50 + .../ads/googleads/v8/errors/enum_error.proto | 47 + google/ads/googleads/v8/errors/errors.proto | 664 + .../v8/errors/extension_feed_item_error.proto | 195 + .../v8/errors/extension_setting_error.proto | 261 + .../feed_attribute_reference_error.proto | 53 + .../ads/googleads/v8/errors/feed_error.proto | 111 + .../googleads/v8/errors/feed_item_error.proto | 71 + .../v8/errors/feed_item_set_error.proto | 71 + .../v8/errors/feed_item_set_link_error.proto | 51 + .../v8/errors/feed_item_target_error.proto | 70 + .../errors/feed_item_validation_error.proto | 377 + .../v8/errors/feed_mapping_error.proto | 100 + .../ads/googleads/v8/errors/field_error.proto | 65 + .../v8/errors/field_mask_error.proto | 58 + .../googleads/v8/errors/function_error.proto | 93 + .../v8/errors/function_parsing_error.proto | 77 + ...geo_target_constant_suggestion_error.proto | 56 + .../googleads/v8/errors/header_error.proto | 50 + google/ads/googleads/v8/errors/id_error.proto | 47 + .../ads/googleads/v8/errors/image_error.proto | 164 + .../googleads/v8/errors/internal_error.proto | 58 + .../googleads/v8/errors/invoice_error.proto | 53 + .../errors/keyword_plan_ad_group_error.proto | 53 + .../keyword_plan_ad_group_keyword_error.proto | 72 + .../errors/keyword_plan_campaign_error.proto | 65 + .../keyword_plan_campaign_keyword_error.proto | 49 + .../v8/errors/keyword_plan_error.proto | 91 + .../v8/errors/keyword_plan_idea_error.proto | 50 + .../ads/googleads/v8/errors/label_error.proto | 73 + .../v8/errors/language_code_error.proto | 50 + .../v8/errors/list_operation_error.proto | 50 + .../v8/errors/manager_link_error.proto | 97 + .../v8/errors/media_bundle_error.proto | 110 + .../v8/errors/media_file_error.proto | 113 + .../v8/errors/media_upload_error.proto | 152 + .../v8/errors/multiplier_error.proto | 81 + .../googleads/v8/errors/mutate_error.proto | 69 + .../errors/new_resource_creation_error.proto | 54 + .../v8/errors/not_allowlisted_error.proto | 47 + .../googleads/v8/errors/not_empty_error.proto | 47 + .../ads/googleads/v8/errors/null_error.proto | 47 + .../errors/offline_user_data_job_error.proto | 152 + .../operation_access_denied_error.proto | 74 + .../googleads/v8/errors/operator_error.proto | 47 + .../v8/errors/partial_failure_error.proto | 48 + .../v8/errors/payments_account_error.proto | 47 + .../v8/errors/policy_finding_error.proto | 51 + .../policy_validation_parameter_error.proto | 54 + .../v8/errors/policy_violation_error.proto | 47 + .../ads/googleads/v8/errors/query_error.proto | 222 + .../ads/googleads/v8/errors/quota_error.proto | 53 + .../ads/googleads/v8/errors/range_error.proto | 50 + .../v8/errors/reach_plan_error.proto | 48 + .../v8/errors/recommendation_error.proto | 90 + .../v8/errors/region_code_error.proto | 47 + .../googleads/v8/errors/request_error.proto | 119 + .../errors/resource_access_denied_error.proto | 47 + .../resource_count_limit_exceeded_error.proto | 93 + .../googleads/v8/errors/setting_error.proto | 85 + .../v8/errors/shared_criterion_error.proto | 47 + .../v8/errors/shared_set_error.proto | 56 + .../v8/errors/size_limit_error.proto | 50 + .../v8/errors/string_format_error.proto | 50 + .../v8/errors/string_length_error.proto | 54 + ...third_party_app_analytics_link_error.proto | 57 + .../googleads/v8/errors/time_zone_error.proto | 47 + .../googleads/v8/errors/url_field_error.proto | 214 + .../googleads/v8/errors/user_data_error.proto | 53 + .../googleads/v8/errors/user_list_error.proto | 129 + .../youtube_video_registration_error.proto | 53 + google/ads/googleads/v8/googleads_gapic.yaml | 26 + .../v8/googleads_grpc_service_config.json | 429 + google/ads/googleads/v8/googleads_v8.yaml | 1403 + google/ads/googleads/v8/resources/BUILD.bazel | 97 + .../accessible_bidding_strategy.proto | 172 + .../v8/resources/account_budget.proto | 252 + .../resources/account_budget_proposal.proto | 160 + .../googleads/v8/resources/account_link.proto | 125 + google/ads/googleads/v8/resources/ad.proto | 188 + .../ads/googleads/v8/resources/ad_group.proto | 187 + .../googleads/v8/resources/ad_group_ad.proto | 103 + .../v8/resources/ad_group_ad_asset_view.proto | 105 + .../v8/resources/ad_group_ad_label.proto | 66 + .../v8/resources/ad_group_asset.proto | 80 + .../v8/resources/ad_group_audience_view.proto | 54 + .../v8/resources/ad_group_bid_modifier.proto | 112 + .../v8/resources/ad_group_criterion.proto | 291 + .../resources/ad_group_criterion_label.proto | 66 + .../ad_group_criterion_simulation.proto | 90 + .../ad_group_extension_setting.proto | 79 + .../v8/resources/ad_group_feed.proto | 83 + .../v8/resources/ad_group_label.proto | 66 + .../v8/resources/ad_group_simulation.proto | 94 + .../googleads/v8/resources/ad_parameter.proto | 82 + .../v8/resources/ad_schedule_view.proto | 52 + .../v8/resources/age_range_view.proto | 51 + google/ads/googleads/v8/resources/asset.proto | 135 + .../v8/resources/asset_field_type_view.proto | 57 + .../googleads/v8/resources/batch_job.proto | 98 + .../v8/resources/bidding_data_exclusion.proto | 108 + .../bidding_seasonality_adjustment.proto | 114 + .../v8/resources/bidding_strategy.proto | 139 + .../bidding_strategy_simulation.proto | 82 + .../v8/resources/billing_setup.proto | 138 + .../googleads/v8/resources/call_view.proto | 80 + .../ads/googleads/v8/resources/campaign.proto | 441 + .../v8/resources/campaign_asset.proto | 76 + .../v8/resources/campaign_audience_view.proto | 55 + .../v8/resources/campaign_bid_modifier.proto | 76 + .../v8/resources/campaign_budget.proto | 156 + .../v8/resources/campaign_criterion.proto | 181 + .../campaign_criterion_simulation.proto | 83 + .../v8/resources/campaign_draft.proto | 98 + .../v8/resources/campaign_experiment.proto | 121 + .../campaign_extension_setting.proto | 79 + .../v8/resources/campaign_feed.proto | 83 + .../v8/resources/campaign_label.proto | 66 + .../v8/resources/campaign_shared_set.proto | 77 + .../v8/resources/campaign_simulation.proto | 102 + .../v8/resources/carrier_constant.proto | 61 + .../googleads/v8/resources/change_event.proto | 203 + .../v8/resources/change_status.proto | 199 + .../googleads/v8/resources/click_view.proto | 108 + .../v8/resources/combined_audience.proto | 67 + .../v8/resources/conversion_action.proto | 176 + .../conversion_custom_variable.proto | 86 + .../v8/resources/conversion_value_rule.proto | 135 + .../resources/conversion_value_rule_set.proto | 96 + .../v8/resources/currency_constant.proto | 64 + .../v8/resources/custom_audience.proto | 107 + .../v8/resources/custom_interest.proto | 89 + .../ads/googleads/v8/resources/customer.proto | 161 + .../v8/resources/customer_asset.proto | 71 + .../v8/resources/customer_client.proto | 101 + .../v8/resources/customer_client_link.proto | 70 + .../customer_extension_setting.proto | 67 + .../v8/resources/customer_feed.proto | 75 + .../v8/resources/customer_label.proto | 72 + .../v8/resources/customer_manager_link.proto | 65 + .../customer_negative_criterion.proto | 82 + .../v8/resources/customer_user_access.proto | 72 + .../customer_user_access_invitation.proto | 73 + .../v8/resources/detail_placement_view.proto | 71 + .../v8/resources/detailed_demographic.proto | 74 + .../v8/resources/display_keyword_view.proto | 51 + .../v8/resources/distance_view.proto | 62 + .../v8/resources/domain_category.proto | 90 + .../dynamic_search_ads_search_term_view.proto | 86 + .../expanded_landing_page_view.proto | 55 + .../v8/resources/extension_feed_item.proto | 151 + google/ads/googleads/v8/resources/feed.proto | 190 + .../googleads/v8/resources/feed_item.proto | 214 + .../v8/resources/feed_item_set.proto | 84 + .../v8/resources/feed_item_set_link.proto | 66 + .../v8/resources/feed_item_target.proto | 108 + .../googleads/v8/resources/feed_mapping.proto | 189 + .../v8/resources/feed_placeholder_view.proto | 55 + .../googleads/v8/resources/gender_view.proto | 51 + .../v8/resources/geo_target_constant.proto | 82 + .../v8/resources/geographic_view.proto | 63 + .../v8/resources/google_ads_field.proto | 108 + .../v8/resources/group_placement_view.proto | 66 + .../v8/resources/hotel_group_view.proto | 51 + .../v8/resources/hotel_performance_view.proto | 51 + .../v8/resources/income_range_view.proto | 51 + .../ads/googleads/v8/resources/invoice.proto | 203 + .../googleads/v8/resources/keyword_plan.proto | 82 + .../v8/resources/keyword_plan_ad_group.proto | 71 + .../keyword_plan_ad_group_keyword.proto | 77 + .../v8/resources/keyword_plan_campaign.proto | 98 + .../keyword_plan_campaign_keyword.proto | 71 + .../v8/resources/keyword_theme_constant.proto | 64 + .../googleads/v8/resources/keyword_view.proto | 51 + google/ads/googleads/v8/resources/label.proto | 66 + .../v8/resources/landing_page_view.proto | 55 + .../v8/resources/language_constant.proto | 64 + .../googleads/v8/resources/life_event.proto | 73 + .../v8/resources/location_view.proto | 52 + .../v8/resources/managed_placement_view.proto | 51 + .../googleads/v8/resources/media_file.proto | 137 + .../v8/resources/merchant_center_link.proto | 64 + .../mobile_app_category_constant.proto | 57 + .../v8/resources/mobile_device_constant.proto | 67 + .../v8/resources/offline_user_data_job.proto | 82 + .../operating_system_version_constant.proto | 70 + .../paid_organic_search_term_view.proto | 56 + .../v8/resources/parental_status_view.proto | 51 + .../v8/resources/payments_account.proto | 78 + .../product_bidding_category_constant.proto | 83 + .../v8/resources/product_group_view.proto | 51 + .../v8/resources/recommendation.proto | 350 + .../v8/resources/remarketing_action.proto | 66 + .../v8/resources/search_term_view.proto | 68 + .../v8/resources/shared_criterion.proto | 92 + .../googleads/v8/resources/shared_set.proto | 77 + .../resources/shopping_performance_view.proto | 55 + .../smart_campaign_search_term_view.proto | 62 + .../v8/resources/smart_campaign_setting.proto | 91 + .../third_party_app_analytics_link.proto | 55 + .../v8/resources/topic_constant.proto | 71 + .../googleads/v8/resources/topic_view.proto | 51 + .../v8/resources/user_interest.proto | 76 + .../googleads/v8/resources/user_list.proto | 174 + .../v8/resources/user_location_view.proto | 62 + google/ads/googleads/v8/resources/video.proto | 63 + .../googleads/v8/resources/webpage_view.proto | 51 + google/ads/googleads/v8/services/BUILD.bazel | 138 + .../accessible_bidding_strategy_service.proto | 58 + .../account_budget_proposal_service.proto | 161 + .../v8/services/account_budget_service.proto | 70 + .../v8/services/account_link_service.proto | 178 + .../ad_group_ad_asset_view_service.proto | 67 + .../services/ad_group_ad_label_service.proto | 144 + .../v8/services/ad_group_ad_service.proto | 195 + .../v8/services/ad_group_asset_service.proto | 162 + .../ad_group_audience_view_service.proto | 67 + .../ad_group_bid_modifier_service.proto | 174 + .../ad_group_criterion_label_service.proto | 143 + .../services/ad_group_criterion_service.proto | 194 + ...d_group_criterion_simulation_service.proto | 68 + .../ad_group_extension_setting_service.proto | 183 + .../v8/services/ad_group_feed_service.proto | 172 + .../v8/services/ad_group_label_service.proto | 144 + .../v8/services/ad_group_service.proto | 178 + .../ad_group_simulation_service.proto | 67 + .../v8/services/ad_parameter_service.proto | 162 + .../services/ad_schedule_view_service.proto | 67 + .../googleads/v8/services/ad_service.proto | 184 + .../v8/services/age_range_view_service.proto | 67 + .../asset_field_type_view_service.proto | 59 + .../googleads/v8/services/asset_service.proto | 175 + .../v8/services/batch_job_service.proto | 286 + .../bidding_data_exclusion_service.proto | 141 + ...dding_seasonality_adjustment_service.proto | 141 + .../services/bidding_strategy_service.proto | 177 + .../bidding_strategy_simulation_service.proto | 60 + .../v8/services/billing_setup_service.proto | 136 + .../v8/services/campaign_asset_service.proto | 163 + .../campaign_audience_view_service.proto | 67 + .../campaign_bid_modifier_service.proto | 174 + .../v8/services/campaign_budget_service.proto | 167 + .../services/campaign_criterion_service.proto | 178 + ...ampaign_criterion_simulation_service.proto | 68 + .../v8/services/campaign_draft_service.proto | 254 + .../campaign_experiment_service.proto | 382 + .../campaign_extension_setting_service.proto | 182 + .../v8/services/campaign_feed_service.proto | 173 + .../v8/services/campaign_label_service.proto | 144 + .../v8/services/campaign_service.proto | 183 + .../campaign_shared_set_service.proto | 164 + .../campaign_simulation_service.proto | 60 + .../services/carrier_constant_service.proto | 67 + .../v8/services/change_status_service.proto | 67 + .../v8/services/click_view_service.proto | 67 + .../services/combined_audience_service.proto | 69 + .../services/conversion_action_service.proto | 167 + ...conversion_adjustment_upload_service.proto | 203 + .../conversion_custom_variable_service.proto | 158 + .../services/conversion_upload_service.proto | 327 + .../conversion_value_rule_service.proto | 144 + .../conversion_value_rule_set_service.proto | 144 + .../services/currency_constant_service.proto | 65 + .../v8/services/custom_audience_service.proto | 140 + .../v8/services/custom_interest_service.proto | 132 + .../v8/services/customer_asset_service.proto | 160 + .../customer_client_link_service.proto | 129 + .../v8/services/customer_client_service.proto | 67 + .../customer_extension_setting_service.proto | 180 + .../v8/services/customer_feed_service.proto | 172 + .../v8/services/customer_label_service.proto | 142 + .../customer_manager_link_service.proto | 180 + .../customer_negative_criterion_service.proto | 152 + .../v8/services/customer_service.proto | 214 + ...tomer_user_access_invitation_service.proto | 125 + .../customer_user_access_service.proto | 129 + .../detail_placement_view_service.proto | 67 + .../detailed_demographic_service.proto | 59 + .../display_keyword_view_service.proto | 67 + .../v8/services/distance_view_service.proto | 67 + .../v8/services/domain_category_service.proto | 68 + ..._search_ads_search_term_view_service.proto | 68 + .../expanded_landing_page_view_service.proto | 68 + .../extension_feed_item_service.proto | 175 + .../v8/services/feed_item_service.proto | 174 + .../services/feed_item_set_link_service.proto | 131 + .../v8/services/feed_item_set_service.proto | 139 + .../services/feed_item_target_service.proto | 161 + .../v8/services/feed_mapping_service.proto | 161 + .../feed_placeholder_view_service.proto | 67 + .../googleads/v8/services/feed_service.proto | 173 + .../v8/services/gender_view_service.proto | 67 + .../geo_target_constant_service.proto | 146 + .../v8/services/geographic_view_service.proto | 67 + .../services/google_ads_field_service.proto | 115 + .../v8/services/google_ads_service.proto | 1252 + .../group_placement_view_service.proto | 67 + .../services/hotel_group_view_service.proto | 67 + .../hotel_performance_view_service.proto | 67 + .../services/income_range_view_service.proto | 67 + .../v8/services/invoice_service.proto | 83 + ...eyword_plan_ad_group_keyword_service.proto | 165 + .../keyword_plan_ad_group_service.proto | 159 + ...eyword_plan_campaign_keyword_service.proto | 162 + .../keyword_plan_campaign_service.proto | 160 + .../services/keyword_plan_idea_service.proto | 181 + .../v8/services/keyword_plan_service.proto | 446 + .../keyword_theme_constant_service.proto | 98 + .../v8/services/keyword_view_service.proto | 67 + .../googleads/v8/services/label_service.proto | 168 + .../services/landing_page_view_service.proto | 67 + .../services/language_constant_service.proto | 67 + .../v8/services/life_event_service.proto | 59 + .../v8/services/location_view_service.proto | 67 + .../managed_placement_view_service.proto | 67 + .../v8/services/media_file_service.proto | 156 + .../merchant_center_link_service.proto | 160 + ...mobile_app_category_constant_service.proto | 66 + .../mobile_device_constant_service.proto | 67 + .../offline_user_data_job_service.proto | 224 + ...ting_system_version_constant_service.proto | 68 + ...aid_organic_search_term_view_service.proto | 68 + .../parental_status_view_service.proto | 67 + .../services/payments_account_service.proto | 71 + ...ct_bidding_category_constant_service.proto | 68 + .../services/product_group_view_service.proto | 67 + .../v8/services/reach_plan_service.proto | 552 + .../v8/services/recommendation_service.proto | 309 + .../services/remarketing_action_service.proto | 141 + .../services/search_term_view_service.proto | 67 + .../services/shared_criterion_service.proto | 162 + .../v8/services/shared_set_service.proto | 172 + .../shopping_performance_view_service.proto | 68 + ...rt_campaign_search_term_view_service.proto | 68 + .../smart_campaign_setting_service.proto | 128 + .../smart_campaign_suggest_service.proto | 191 + ...ird_party_app_analytics_link_service.proto | 94 + .../v8/services/topic_constant_service.proto | 67 + .../v8/services/topic_view_service.proto | 67 + .../v8/services/user_data_service.proto | 97 + .../v8/services/user_interest_service.proto | 67 + .../v8/services/user_list_service.proto | 159 + .../services/user_location_view_service.proto | 67 + .../googleads/v8/services/video_service.proto | 67 + .../v8/services/webpage_view_service.proto | 59 + google/ads/googleads/v9/BUILD.bazel | 263 + google/ads/googleads/v9/common/BUILD.bazel | 94 + google/ads/googleads/v9/common/ad_asset.proto | 69 + .../googleads/v9/common/ad_type_infos.proto | 724 + .../googleads/v9/common/asset_policy.proto | 46 + .../ads/googleads/v9/common/asset_types.proto | 502 + google/ads/googleads/v9/common/bidding.proto | 199 + .../googleads/v9/common/click_location.proto | 48 + google/ads/googleads/v9/common/criteria.proto | 651 + .../criterion_category_availability.proto | 82 + .../v9/common/custom_parameter.proto | 40 + .../v9/common/customizer_value.proto | 45 + google/ads/googleads/v9/common/dates.proto | 59 + .../explorer_auto_optimizer_setting.proto | 38 + .../ads/googleads/v9/common/extensions.proto | 368 + .../ads/googleads/v9/common/feed_common.proto | 39 + .../feed_item_set_filter_type_infos.proto | 58 + .../googleads/v9/common/final_app_url.proto | 46 + .../googleads/v9/common/frequency_cap.proto | 61 + .../v9/common/keyword_plan_common.proto | 139 + .../v9/common/matching_function.proto | 126 + google/ads/googleads/v9/common/metrics.proto | 619 + .../v9/common/offline_user_data.proto | 296 + google/ads/googleads/v9/common/policy.proto | 220 + .../googleads/v9/common/policy_summary.proto | 46 + .../v9/common/real_time_bidding_setting.proto | 37 + google/ads/googleads/v9/common/segments.proto | 369 + .../ads/googleads/v9/common/simulation.proto | 358 + .../ads/googleads/v9/common/tag_snippet.proto | 50 + .../v9/common/targeting_setting.proto | 85 + .../ads/googleads/v9/common/text_label.proto | 40 + .../googleads/v9/common/url_collection.proto | 45 + .../ads/googleads/v9/common/user_lists.proto | 291 + google/ads/googleads/v9/common/value.proto | 51 + .../googleads/{v5 => v9}/enums/BUILD.bazel | 0 .../v9/enums/access_invitation_status.proto | 55 + .../googleads/v9/enums/access_reason.proto | 57 + .../ads/googleads/v9/enums/access_role.proto | 55 + .../account_budget_proposal_status.proto | 63 + .../enums/account_budget_proposal_type.proto | 56 + .../v9/enums/account_budget_status.proto | 53 + .../v9/enums/account_link_status.proto | 63 + .../ad_customizer_placeholder_field.proto | 56 + .../v9/enums/ad_destination_type.proto | 77 + .../v9/enums/ad_group_ad_rotation_mode.proto | 53 + .../v9/enums/ad_group_ad_status.proto | 55 + .../ad_group_criterion_approval_status.proto | 56 + .../v9/enums/ad_group_criterion_status.proto | 55 + .../googleads/v9/enums/ad_group_status.proto | 55 + .../googleads/v9/enums/ad_group_type.proto | 96 + .../googleads/v9/enums/ad_network_type.proto | 62 + .../ad_serving_optimization_status.proto | 64 + .../ads/googleads/v9/enums/ad_strength.proto | 62 + google/ads/googleads/v9/enums/ad_type.proto | 131 + .../enums/advertising_channel_sub_type.proto | 102 + .../v9/enums/advertising_channel_type.proto | 73 + ...iate_location_feed_relationship_type.proto | 48 + ...affiliate_location_placeholder_field.proto | 77 + .../googleads/v9/enums/age_range_type.proto | 65 + .../v9/enums/app_campaign_app_store.proto | 50 + ..._campaign_bidding_strategy_goal_type.proto | 70 + .../v9/enums/app_payment_model_type.proto | 47 + .../v9/enums/app_placeholder_field.proto | 75 + google/ads/googleads/v9/enums/app_store.proto | 50 + .../enums/app_url_operating_system_type.proto | 50 + .../googleads/v9/enums/asset_field_type.proto | 117 + .../v9/enums/asset_group_status.proto | 53 + .../v9/enums/asset_link_status.proto | 53 + .../v9/enums/asset_performance_label.proto | 62 + .../v9/enums/asset_set_asset_status.proto | 51 + .../v9/enums/asset_set_link_status.proto | 52 + .../googleads/v9/enums/asset_set_status.proto | 51 + .../googleads/v9/enums/asset_set_type.proto | 53 + .../ads/googleads/v9/enums/asset_type.proto | 95 + .../v9/enums/attribution_model.proto | 72 + .../googleads/v9/enums/batch_job_status.proto | 53 + .../v9/enums/bid_modifier_source.proto | 51 + .../googleads/v9/enums/bidding_source.proto | 55 + .../v9/enums/bidding_strategy_status.proto | 52 + .../v9/enums/bidding_strategy_type.proto | 119 + .../v9/enums/billing_setup_status.proto | 58 + .../v9/enums/brand_safety_suitability.proto | 73 + .../budget_campaign_association_status.proto | 51 + .../v9/enums/budget_delivery_method.proto | 53 + .../googleads/v9/enums/budget_period.proto | 53 + .../googleads/v9/enums/budget_status.proto | 50 + .../ads/googleads/v9/enums/budget_type.proto | 66 + .../call_conversion_reporting_state.proto | 56 + .../v9/enums/call_placeholder_field.proto | 66 + .../v9/enums/call_to_action_type.proto | 71 + .../call_tracking_display_location.proto | 50 + google/ads/googleads/v9/enums/call_type.proto | 51 + .../v9/enums/callout_placeholder_field.proto | 47 + .../v9/enums/campaign_criterion_status.proto | 55 + .../v9/enums/campaign_draft_status.proto | 65 + .../v9/enums/campaign_experiment_status.proto | 77 + ...mpaign_experiment_traffic_split_type.proto | 53 + .../v9/enums/campaign_experiment_type.proto | 59 + .../v9/enums/campaign_serving_status.proto | 61 + .../v9/enums/campaign_shared_set_status.proto | 50 + .../googleads/v9/enums/campaign_status.proto | 53 + .../v9/enums/change_client_type.proto | 87 + .../v9/enums/change_event_resource_type.proto | 94 + .../v9/enums/change_status_operation.proto | 54 + .../enums/change_status_resource_type.proto | 94 + .../ads/googleads/v9/enums/click_type.proto | 203 + .../v9/enums/combined_audience_status.proto | 51 + .../v9/enums/content_label_type.proto | 89 + .../v9/enums/conversion_action_category.proto | 106 + .../conversion_action_counting_type.proto | 52 + .../v9/enums/conversion_action_status.proto | 54 + .../v9/enums/conversion_action_type.proto | 174 + .../v9/enums/conversion_adjustment_type.proto | 56 + .../conversion_attribution_event_type.proto | 48 + .../conversion_custom_variable_status.proto | 58 + .../v9/enums/conversion_lag_bucket.proto | 117 + .../conversion_or_adjustment_lag_bucket.proto | 206 + .../v9/enums/conversion_origin.proto | 67 + ...version_value_rule_primary_dimension.proto | 66 + .../conversion_value_rule_set_status.proto | 55 + .../enums/conversion_value_rule_status.proto | 53 + ...n_category_channel_availability_mode.proto | 58 + ...on_category_locale_availability_mode.proto | 61 + .../criterion_system_serving_status.proto | 50 + .../googleads/v9/enums/criterion_type.proto | 143 + .../enums/custom_audience_member_type.proto | 56 + .../v9/enums/custom_audience_status.proto | 51 + .../v9/enums/custom_audience_type.proto | 58 + .../enums/custom_conversion_goal_status.proto | 50 + .../enums/custom_interest_member_type.proto | 50 + .../v9/enums/custom_interest_status.proto | 51 + .../v9/enums/custom_interest_type.proto | 50 + .../v9/enums/custom_placeholder_field.proto | 129 + .../customer_match_upload_key_type.proto | 53 + ...onversion_eligibility_failure_reason.proto | 68 + .../enums/customizer_attribute_status.proto | 50 + .../v9/enums/customizer_attribute_type.proto | 56 + .../v9/enums/customizer_value_status.proto | 50 + .../v9/enums/data_driven_model_status.proto | 62 + .../ads/googleads/v9/enums/day_of_week.proto | 65 + google/ads/googleads/v9/enums/device.proto | 59 + .../v9/enums/display_ad_format_setting.proto | 54 + .../enums/display_upload_product_type.proto | 97 + .../googleads/v9/enums/distance_bucket.proto | 127 + .../enums/dsa_page_feed_criterion_field.proto | 51 + .../enums/education_placeholder_field.proto | 111 + .../v9/enums/extension_setting_device.proto | 52 + .../googleads/v9/enums/extension_type.proto | 84 + .../v9/enums/external_conversion_source.proto | 152 + .../v9/enums/feed_attribute_type.proto | 83 + .../feed_item_quality_approval_status.proto | 52 + ...feed_item_quality_disapproval_reason.proto | 99 + .../v9/enums/feed_item_set_status.proto | 50 + .../feed_item_set_string_filter_type.proto | 45 + .../googleads/v9/enums/feed_item_status.proto | 50 + .../v9/enums/feed_item_target_device.proto | 48 + .../v9/enums/feed_item_target_status.proto | 50 + .../v9/enums/feed_item_target_type.proto | 53 + .../enums/feed_item_validation_status.proto | 53 + .../googleads/v9/enums/feed_link_status.proto | 50 + .../enums/feed_mapping_criterion_type.proto | 50 + .../v9/enums/feed_mapping_status.proto | 50 + .../ads/googleads/v9/enums/feed_origin.proto | 53 + .../ads/googleads/v9/enums/feed_status.proto | 50 + .../v9/enums/flight_placeholder_field.proto | 118 + .../v9/enums/frequency_cap_event_type.proto | 50 + .../v9/enums/frequency_cap_level.proto | 54 + .../v9/enums/frequency_cap_time_unit.proto | 53 + .../ads/googleads/v9/enums/gender_type.proto | 53 + .../v9/enums/geo_target_constant_status.proto | 52 + .../v9/enums/geo_targeting_restriction.proto | 49 + .../v9/enums/geo_targeting_type.proto | 50 + .../v9/enums/goal_config_level.proto | 52 + .../v9/enums/google_ads_field_category.proto | 61 + .../v9/enums/google_ads_field_data_type.proto | 102 + .../v9/enums/google_voice_call_status.proto | 50 + .../v9/enums/hotel_date_selection_type.proto | 50 + .../v9/enums/hotel_placeholder_field.proto | 124 + .../v9/enums/hotel_price_bucket.proto | 59 + .../googleads/v9/enums/hotel_rate_type.proto | 62 + .../enums/hotel_reconciliation_status.proto | 62 + .../v9/enums/image_placeholder_field.proto | 47 + .../v9/enums/income_range_type.proto | 65 + .../v9/enums/interaction_event_type.proto | 62 + .../googleads/v9/enums/interaction_type.proto | 47 + .../ads/googleads/v9/enums/invoice_type.proto | 50 + .../v9/enums/job_placeholder_field.proto | 115 + .../v9/enums/keyword_match_type.proto | 53 + .../keyword_plan_aggregate_metric_type.proto | 47 + .../keyword_plan_competition_level.proto | 57 + .../keyword_plan_concept_group_type.proto | 58 + .../keyword_plan_forecast_interval.proto | 56 + .../keyword_plan_keyword_annotation.proto | 47 + .../v9/enums/keyword_plan_network.proto | 50 + .../ads/googleads/v9/enums/label_status.proto | 48 + .../enums/lead_form_call_to_action_type.proto | 84 + .../v9/enums/lead_form_desired_intent.proto | 48 + .../lead_form_field_user_input_type.proto | 273 + ...form_post_submit_call_to_action_type.proto | 55 + .../legacy_app_install_ad_app_store.proto | 59 + .../v9/enums/linked_account_type.proto | 52 + ..._group_filter_bidding_category_level.proto | 60 + ..._group_filter_custom_attribute_index.proto | 60 + ...listing_group_filter_product_channel.proto | 50 + ...sting_group_filter_product_condition.proto | 53 + ...ting_group_filter_product_type_level.proto | 59 + .../listing_group_filter_type_enum.proto | 53 + .../enums/listing_group_filter_vertical.proto | 48 + .../v9/enums/listing_group_type.proto | 52 + .../v9/enums/local_placeholder_field.proto | 119 + ..._extension_targeting_criterion_field.proto | 62 + .../enums/location_group_radius_units.proto | 53 + .../v9/enums/location_placeholder_field.proto | 68 + .../v9/enums/location_source_type.proto | 50 + .../v9/enums/manager_link_status.proto | 59 + .../matching_function_context_type.proto | 53 + .../v9/enums/matching_function_operator.proto | 65 + .../ads/googleads/v9/enums/media_type.proto | 64 + .../enums/merchant_center_link_status.proto | 53 + .../v9/enums/message_placeholder_field.proto | 61 + google/ads/googleads/v9/enums/mime_type.proto | 82 + .../googleads/v9/enums/minute_of_hour.proto | 56 + .../v9/enums/mobile_app_vendor.proto | 48 + .../v9/enums/mobile_device_type.proto | 50 + .../googleads/v9/enums/month_of_year.proto | 80 + .../v9/enums/negative_geo_target_type.proto | 52 + ...offline_user_data_job_failure_reason.proto | 51 + ...fline_user_data_job_match_rate_range.proto | 71 + .../enums/offline_user_data_job_status.proto | 56 + .../v9/enums/offline_user_data_job_type.proto | 56 + ...erating_system_version_operator_type.proto | 50 + .../v9/enums/optimization_goal_type.proto | 58 + .../v9/enums/parental_status_type.proto | 53 + .../ads/googleads/v9/enums/payment_mode.proto | 64 + .../googleads/v9/enums/placeholder_type.proto | 124 + .../googleads/v9/enums/placement_type.proto | 59 + .../v9/enums/policy_approval_status.proto | 61 + .../v9/enums/policy_review_status.proto | 60 + .../v9/enums/policy_topic_entry_type.proto | 66 + ...idence_destination_mismatch_url_type.proto | 62 + ...dence_destination_not_working_device.proto | 57 + ...stination_not_working_dns_error_type.proto | 56 + .../v9/enums/positive_geo_target_type.proto | 58 + .../v9/enums/preferred_content_type.proto | 47 + .../price_extension_price_qualifier.proto | 53 + .../v9/enums/price_extension_price_unit.proto | 62 + .../v9/enums/price_extension_type.proto | 71 + .../v9/enums/price_placeholder_field.proto | 240 + .../product_bidding_category_level.proto | 57 + .../product_bidding_category_status.proto | 50 + .../googleads/v9/enums/product_channel.proto | 50 + .../enums/product_channel_exclusivity.proto | 52 + .../v9/enums/product_condition.proto | 53 + .../product_custom_attribute_index.proto | 59 + .../v9/enums/product_type_level.proto | 59 + ...romotion_extension_discount_modifier.proto | 48 + .../enums/promotion_extension_occasion.proto | 157 + .../enums/promotion_placeholder_field.proto | 95 + .../v9/enums/proximity_radius_units.proto | 50 + .../v9/enums/quality_score_bucket.proto | 53 + .../v9/enums/reach_plan_ad_length.proto | 53 + .../v9/enums/reach_plan_age_range.proto | 122 + .../v9/enums/reach_plan_network.proto | 54 + .../enums/real_estate_placeholder_field.proto | 115 + .../v9/enums/recommendation_type.proto | 112 + .../v9/enums/resource_change_operation.proto | 55 + .../v9/enums/resource_limit_type.proto | 405 + .../v9/enums/response_content_type.proto | 48 + .../search_engine_results_page_type.proto | 54 + .../v9/enums/search_term_match_type.proto | 59 + .../enums/search_term_targeting_status.proto | 58 + .../v9/enums/seasonality_event_scope.proto | 59 + .../v9/enums/seasonality_event_status.proto | 53 + .../v9/enums/served_asset_field_type.proto | 61 + .../v9/enums/shared_set_status.proto | 50 + .../googleads/v9/enums/shared_set_type.proto | 50 + .../simulation_modification_method.proto | 59 + .../googleads/v9/enums/simulation_type.proto | 68 + .../v9/enums/sitelink_placeholder_field.proto | 69 + google/ads/googleads/v9/enums/slot.proto | 65 + .../v9/enums/spending_limit_type.proto | 48 + ...structured_snippet_placeholder_field.proto | 55 + .../v9/enums/summary_row_setting.proto | 54 + .../enums/system_managed_entity_source.proto | 47 + ...arget_cpa_opt_in_recommendation_goal.proto | 57 + .../target_impression_share_location.proto | 55 + .../v9/enums/targeting_dimension.proto | 74 + google/ads/googleads/v9/enums/time_type.proto | 51 + .../v9/enums/tracking_code_page_format.proto | 50 + .../v9/enums/tracking_code_type.proto | 59 + .../v9/enums/travel_placeholder_field.proto | 128 + .../v9/enums/user_identifier_source.proto | 54 + .../enums/user_interest_taxonomy_type.proto | 59 + .../v9/enums/user_list_access_status.proto | 50 + .../v9/enums/user_list_closing_reason.proto | 48 + .../user_list_combined_rule_operator.proto | 48 + .../user_list_crm_data_source_type.proto | 51 + .../user_list_date_rule_item_operator.proto | 54 + .../user_list_logical_rule_operator.proto | 51 + .../enums/user_list_membership_status.proto | 52 + .../user_list_number_rule_item_operator.proto | 60 + .../user_list_prepopulation_status.proto | 51 + .../v9/enums/user_list_rule_type.proto | 48 + .../v9/enums/user_list_size_range.proto | 92 + .../user_list_string_rule_item_operator.proto | 66 + .../googleads/v9/enums/user_list_type.proto | 63 + .../v9/enums/value_rule_device_type.proto | 54 + .../value_rule_geo_location_match_type.proto | 51 + .../v9/enums/value_rule_operation.proto | 54 + .../value_rule_set_attachment_type.proto | 50 + .../v9/enums/value_rule_set_dimension.proto | 54 + .../vanity_pharma_display_url_mode.proto | 50 + .../v9/enums/vanity_pharma_text.proto | 87 + .../googleads/v9/enums/video_thumbnail.proto | 59 + .../v9/enums/webpage_condition_operand.proto | 59 + .../v9/enums/webpage_condition_operator.proto | 51 + google/ads/googleads/v9/errors/BUILD.bazel | 94 + .../v9/errors/access_invitation_error.proto | 69 + .../account_budget_proposal_error.proto | 122 + .../v9/errors/account_link_error.proto | 47 + .../v9/errors/ad_customizer_error.proto | 59 + google/ads/googleads/v9/errors/ad_error.proto | 524 + .../v9/errors/ad_group_ad_error.proto | 80 + .../errors/ad_group_bid_modifier_error.proto | 51 + .../ad_group_criterion_customizer_error.proto | 47 + .../v9/errors/ad_group_criterion_error.proto | 137 + .../v9/errors/ad_group_customizer_error.proto | 44 + .../googleads/v9/errors/ad_group_error.proto | 91 + .../v9/errors/ad_group_feed_error.proto | 67 + .../v9/errors/ad_parameter_error.proto | 50 + .../v9/errors/ad_sharing_error.proto | 54 + .../ads/googleads/v9/errors/adx_error.proto | 47 + .../ads/googleads/v9/errors/asset_error.proto | 134 + .../v9/errors/asset_group_asset_error.proto | 53 + .../v9/errors/asset_group_error.proto | 74 + ...set_group_listing_group_filter_error.proto | 85 + .../v9/errors/asset_link_error.proto | 108 + .../v9/errors/asset_set_asset_error.proto | 56 + .../googleads/v9/errors/asset_set_error.proto | 47 + .../v9/errors/asset_set_link_error.proto | 61 + .../v9/errors/authentication_error.proto | 103 + .../v9/errors/authorization_error.proto | 92 + .../googleads/v9/errors/batch_job_error.proto | 63 + .../googleads/v9/errors/bidding_error.proto | 122 + .../v9/errors/bidding_strategy_error.proto | 61 + .../v9/errors/billing_setup_error.proto | 109 + .../v9/errors/campaign_budget_error.proto | 100 + .../v9/errors/campaign_criterion_error.proto | 99 + .../v9/errors/campaign_customizer_error.proto | 44 + .../v9/errors/campaign_draft_error.proto | 79 + .../googleads/v9/errors/campaign_error.proto | 201 + .../v9/errors/campaign_experiment_error.proto | 81 + .../v9/errors/campaign_feed_error.proto | 67 + .../v9/errors/campaign_shared_set_error.proto | 47 + .../v9/errors/change_event_error.proto | 63 + .../v9/errors/change_status_error.proto | 63 + .../v9/errors/collection_size_error.proto | 50 + .../googleads/v9/errors/context_error.proto | 50 + .../v9/errors/conversion_action_error.proto | 82 + .../conversion_adjustment_upload_error.proto | 122 + .../conversion_custom_variable_error.proto | 50 + .../v9/errors/conversion_upload_error.proto | 202 + .../errors/conversion_value_rule_error.proto | 92 + .../conversion_value_rule_set_error.proto | 84 + .../v9/errors/country_code_error.proto | 47 + .../googleads/v9/errors/criterion_error.proto | 456 + .../v9/errors/currency_code_error.proto | 47 + .../v9/errors/custom_audience_error.proto | 68 + .../errors/custom_conversion_goal_error.proto | 55 + .../v9/errors/custom_interest_error.proto | 66 + .../errors/customer_client_link_error.proto | 68 + .../v9/errors/customer_customizer_error.proto | 44 + .../googleads/v9/errors/customer_error.proto | 50 + .../v9/errors/customer_feed_error.proto | 66 + .../errors/customer_manager_link_error.proto | 75 + .../errors/customer_user_access_error.proto | 60 + .../errors/customizer_attribute_error.proto | 48 + .../googleads/v9/errors/database_error.proto | 56 + .../ads/googleads/v9/errors/date_error.proto | 74 + .../v9/errors/date_range_error.proto | 59 + .../googleads/v9/errors/distinct_error.proto | 50 + .../ads/googleads/v9/errors/enum_error.proto | 47 + google/ads/googleads/v9/errors/errors.proto | 716 + .../v9/errors/extension_feed_item_error.proto | 195 + .../v9/errors/extension_setting_error.proto | 261 + .../feed_attribute_reference_error.proto | 53 + .../ads/googleads/v9/errors/feed_error.proto | 114 + .../googleads/v9/errors/feed_item_error.proto | 71 + .../v9/errors/feed_item_set_error.proto | 71 + .../v9/errors/feed_item_set_link_error.proto | 51 + .../v9/errors/feed_item_target_error.proto | 70 + .../errors/feed_item_validation_error.proto | 377 + .../v9/errors/feed_mapping_error.proto | 100 + .../ads/googleads/v9/errors/field_error.proto | 65 + .../v9/errors/field_mask_error.proto | 58 + .../googleads/v9/errors/function_error.proto | 93 + .../v9/errors/function_parsing_error.proto | 77 + ...geo_target_constant_suggestion_error.proto | 56 + .../googleads/v9/errors/header_error.proto | 50 + google/ads/googleads/v9/errors/id_error.proto | 47 + .../ads/googleads/v9/errors/image_error.proto | 164 + .../googleads/v9/errors/internal_error.proto | 58 + .../googleads/v9/errors/invoice_error.proto | 60 + .../errors/keyword_plan_ad_group_error.proto | 53 + .../keyword_plan_ad_group_keyword_error.proto | 72 + .../errors/keyword_plan_campaign_error.proto | 65 + .../keyword_plan_campaign_keyword_error.proto | 49 + .../v9/errors/keyword_plan_error.proto | 91 + .../v9/errors/keyword_plan_idea_error.proto | 50 + .../ads/googleads/v9/errors/label_error.proto | 73 + .../v9/errors/language_code_error.proto | 50 + .../v9/errors/list_operation_error.proto | 50 + .../v9/errors/manager_link_error.proto | 103 + .../v9/errors/media_bundle_error.proto | 110 + .../v9/errors/media_file_error.proto | 113 + .../v9/errors/media_upload_error.proto | 152 + .../v9/errors/merchant_center_error.proto | 50 + .../v9/errors/multiplier_error.proto | 81 + .../googleads/v9/errors/mutate_error.proto | 72 + .../errors/new_resource_creation_error.proto | 54 + .../v9/errors/not_allowlisted_error.proto | 47 + .../googleads/v9/errors/not_empty_error.proto | 47 + .../ads/googleads/v9/errors/null_error.proto | 47 + .../errors/offline_user_data_job_error.proto | 160 + .../operation_access_denied_error.proto | 74 + .../googleads/v9/errors/operator_error.proto | 47 + .../v9/errors/partial_failure_error.proto | 48 + .../v9/errors/payments_account_error.proto | 47 + .../v9/errors/policy_finding_error.proto | 51 + .../policy_validation_parameter_error.proto | 54 + .../v9/errors/policy_violation_error.proto | 47 + .../ads/googleads/v9/errors/query_error.proto | 227 + .../ads/googleads/v9/errors/quota_error.proto | 53 + .../ads/googleads/v9/errors/range_error.proto | 50 + .../v9/errors/reach_plan_error.proto | 48 + .../v9/errors/recommendation_error.proto | 90 + .../v9/errors/region_code_error.proto | 47 + .../googleads/v9/errors/request_error.proto | 119 + .../errors/resource_access_denied_error.proto | 47 + .../resource_count_limit_exceeded_error.proto | 93 + .../googleads/v9/errors/setting_error.proto | 85 + .../v9/errors/shared_criterion_error.proto | 47 + .../v9/errors/shared_set_error.proto | 56 + .../v9/errors/size_limit_error.proto | 50 + .../v9/errors/string_format_error.proto | 50 + .../v9/errors/string_length_error.proto | 54 + ...third_party_app_analytics_link_error.proto | 57 + .../googleads/v9/errors/time_zone_error.proto | 47 + .../googleads/v9/errors/url_field_error.proto | 217 + .../googleads/v9/errors/user_data_error.proto | 53 + .../googleads/v9/errors/user_list_error.proto | 129 + .../youtube_video_registration_error.proto | 53 + google/ads/googleads/v9/googleads_gapic.yaml | 26 + .../v9/googleads_grpc_service_config.json | 474 + google/ads/googleads/v9/googleads_v9.yaml | 1514 + google/ads/googleads/v9/resources/BUILD.bazel | 97 + .../accessible_bidding_strategy.proto | 172 + .../v9/resources/account_budget.proto | 252 + .../resources/account_budget_proposal.proto | 160 + .../googleads/v9/resources/account_link.proto | 125 + google/ads/googleads/v9/resources/ad.proto | 191 + .../ads/googleads/v9/resources/ad_group.proto | 187 + .../googleads/v9/resources/ad_group_ad.proto | 103 + .../v9/resources/ad_group_ad_asset_view.proto | 105 + .../v9/resources/ad_group_ad_label.proto | 66 + .../v9/resources/ad_group_asset.proto | 80 + .../v9/resources/ad_group_audience_view.proto | 54 + .../v9/resources/ad_group_bid_modifier.proto | 112 + .../v9/resources/ad_group_criterion.proto | 291 + .../ad_group_criterion_customizer.proto | 77 + .../resources/ad_group_criterion_label.proto | 66 + .../ad_group_criterion_simulation.proto | 90 + .../v9/resources/ad_group_customizer.proto | 76 + .../ad_group_extension_setting.proto | 79 + .../v9/resources/ad_group_feed.proto | 83 + .../v9/resources/ad_group_label.proto | 66 + .../v9/resources/ad_group_simulation.proto | 94 + .../googleads/v9/resources/ad_parameter.proto | 82 + .../v9/resources/ad_schedule_view.proto | 52 + .../v9/resources/age_range_view.proto | 51 + google/ads/googleads/v9/resources/asset.proto | 156 + .../v9/resources/asset_field_type_view.proto | 57 + .../googleads/v9/resources/asset_group.proto | 88 + .../v9/resources/asset_group_asset.proto | 83 + .../asset_group_listing_group_filter.proto | 173 + .../asset_group_product_group_view.proto | 51 + .../googleads/v9/resources/asset_set.proto | 77 + .../v9/resources/asset_set_asset.proto | 70 + .../googleads/v9/resources/batch_job.proto | 98 + .../v9/resources/bidding_data_exclusion.proto | 108 + .../bidding_seasonality_adjustment.proto | 114 + .../v9/resources/bidding_strategy.proto | 139 + .../bidding_strategy_simulation.proto | 82 + .../v9/resources/billing_setup.proto | 138 + .../googleads/v9/resources/call_view.proto | 80 + .../ads/googleads/v9/resources/campaign.proto | 449 + .../v9/resources/campaign_asset.proto | 76 + .../v9/resources/campaign_asset_set.proto | 72 + .../v9/resources/campaign_audience_view.proto | 55 + .../v9/resources/campaign_bid_modifier.proto | 76 + .../v9/resources/campaign_budget.proto | 156 + .../resources/campaign_conversion_goal.proto | 69 + .../v9/resources/campaign_criterion.proto | 181 + .../campaign_criterion_simulation.proto | 83 + .../v9/resources/campaign_customizer.proto | 76 + .../v9/resources/campaign_draft.proto | 98 + .../v9/resources/campaign_experiment.proto | 121 + .../campaign_extension_setting.proto | 79 + .../v9/resources/campaign_feed.proto | 83 + .../v9/resources/campaign_label.proto | 66 + .../v9/resources/campaign_shared_set.proto | 77 + .../v9/resources/campaign_simulation.proto | 102 + .../v9/resources/carrier_constant.proto | 61 + .../googleads/v9/resources/change_event.proto | 203 + .../v9/resources/change_status.proto | 199 + .../googleads/v9/resources/click_view.proto | 108 + .../v9/resources/combined_audience.proto | 67 + .../v9/resources/conversion_action.proto | 189 + .../conversion_custom_variable.proto | 86 + .../conversion_goal_campaign_config.proto | 66 + .../v9/resources/conversion_value_rule.proto | 135 + .../resources/conversion_value_rule_set.proto | 96 + .../v9/resources/currency_constant.proto | 64 + .../v9/resources/custom_audience.proto | 107 + .../v9/resources/custom_conversion_goal.proto | 64 + .../v9/resources/custom_interest.proto | 89 + .../ads/googleads/v9/resources/customer.proto | 161 + .../v9/resources/customer_asset.proto | 71 + .../v9/resources/customer_client.proto | 101 + .../v9/resources/customer_client_link.proto | 70 + .../resources/customer_conversion_goal.proto | 64 + .../v9/resources/customer_customizer.proto | 68 + .../customer_extension_setting.proto | 67 + .../v9/resources/customer_feed.proto | 75 + .../v9/resources/customer_label.proto | 72 + .../v9/resources/customer_manager_link.proto | 65 + .../customer_negative_criterion.proto | 82 + .../v9/resources/customer_user_access.proto | 72 + .../customer_user_access_invitation.proto | 73 + .../v9/resources/customizer_attribute.proto | 72 + .../v9/resources/detail_placement_view.proto | 71 + .../v9/resources/detailed_demographic.proto | 74 + .../v9/resources/display_keyword_view.proto | 51 + .../v9/resources/distance_view.proto | 62 + .../v9/resources/domain_category.proto | 90 + .../dynamic_search_ads_search_term_view.proto | 86 + .../expanded_landing_page_view.proto | 55 + .../v9/resources/extension_feed_item.proto | 151 + google/ads/googleads/v9/resources/feed.proto | 190 + .../googleads/v9/resources/feed_item.proto | 214 + .../v9/resources/feed_item_set.proto | 84 + .../v9/resources/feed_item_set_link.proto | 66 + .../v9/resources/feed_item_target.proto | 108 + .../googleads/v9/resources/feed_mapping.proto | 189 + .../v9/resources/feed_placeholder_view.proto | 55 + .../googleads/v9/resources/gender_view.proto | 51 + .../v9/resources/geo_target_constant.proto | 82 + .../v9/resources/geographic_view.proto | 63 + .../v9/resources/google_ads_field.proto | 108 + .../v9/resources/group_placement_view.proto | 66 + .../v9/resources/hotel_group_view.proto | 51 + .../v9/resources/hotel_performance_view.proto | 51 + .../v9/resources/hotel_reconciliation.proto | 109 + .../v9/resources/income_range_view.proto | 51 + .../ads/googleads/v9/resources/invoice.proto | 203 + .../googleads/v9/resources/keyword_plan.proto | 82 + .../v9/resources/keyword_plan_ad_group.proto | 71 + .../keyword_plan_ad_group_keyword.proto | 77 + .../v9/resources/keyword_plan_campaign.proto | 98 + .../keyword_plan_campaign_keyword.proto | 71 + .../v9/resources/keyword_theme_constant.proto | 64 + .../googleads/v9/resources/keyword_view.proto | 51 + google/ads/googleads/v9/resources/label.proto | 66 + .../v9/resources/landing_page_view.proto | 55 + .../v9/resources/language_constant.proto | 64 + .../googleads/v9/resources/life_event.proto | 73 + .../v9/resources/location_view.proto | 52 + .../v9/resources/managed_placement_view.proto | 51 + .../googleads/v9/resources/media_file.proto | 137 + .../v9/resources/merchant_center_link.proto | 64 + .../mobile_app_category_constant.proto | 57 + .../v9/resources/mobile_device_constant.proto | 67 + .../v9/resources/offline_user_data_job.proto | 95 + .../operating_system_version_constant.proto | 70 + .../paid_organic_search_term_view.proto | 56 + .../v9/resources/parental_status_view.proto | 51 + .../v9/resources/payments_account.proto | 78 + .../product_bidding_category_constant.proto | 83 + .../v9/resources/product_group_view.proto | 51 + .../v9/resources/recommendation.proto | 350 + .../v9/resources/remarketing_action.proto | 66 + .../v9/resources/search_term_view.proto | 68 + .../v9/resources/shared_criterion.proto | 92 + .../googleads/v9/resources/shared_set.proto | 77 + .../resources/shopping_performance_view.proto | 55 + .../smart_campaign_search_term_view.proto | 62 + .../v9/resources/smart_campaign_setting.proto | 91 + .../third_party_app_analytics_link.proto | 55 + .../v9/resources/topic_constant.proto | 71 + .../googleads/v9/resources/topic_view.proto | 51 + .../v9/resources/user_interest.proto | 76 + .../googleads/v9/resources/user_list.proto | 174 + .../v9/resources/user_location_view.proto | 62 + google/ads/googleads/v9/resources/video.proto | 63 + .../googleads/v9/resources/webpage_view.proto | 51 + google/ads/googleads/v9/services/BUILD.bazel | 138 + .../accessible_bidding_strategy_service.proto | 58 + .../account_budget_proposal_service.proto | 161 + .../v9/services/account_budget_service.proto | 70 + .../v9/services/account_link_service.proto | 185 + .../ad_group_ad_asset_view_service.proto | 67 + .../services/ad_group_ad_label_service.proto | 144 + .../v9/services/ad_group_ad_service.proto | 195 + .../v9/services/ad_group_asset_service.proto | 162 + .../ad_group_audience_view_service.proto | 67 + .../ad_group_bid_modifier_service.proto | 174 + ...d_group_criterion_customizer_service.proto | 116 + .../ad_group_criterion_label_service.proto | 143 + .../services/ad_group_criterion_service.proto | 194 + ...d_group_criterion_simulation_service.proto | 68 + .../ad_group_customizer_service.proto | 113 + .../ad_group_extension_setting_service.proto | 183 + .../v9/services/ad_group_feed_service.proto | 172 + .../v9/services/ad_group_label_service.proto | 144 + .../v9/services/ad_group_service.proto | 178 + .../ad_group_simulation_service.proto | 67 + .../v9/services/ad_parameter_service.proto | 162 + .../services/ad_schedule_view_service.proto | 67 + .../googleads/v9/services/ad_service.proto | 184 + .../v9/services/age_range_view_service.proto | 67 + .../asset_field_type_view_service.proto | 59 + .../services/asset_group_asset_service.proto | 130 + ...t_group_listing_group_filter_service.proto | 115 + .../v9/services/asset_group_service.proto | 123 + .../googleads/v9/services/asset_service.proto | 175 + .../v9/services/asset_set_asset_service.proto | 112 + .../v9/services/asset_set_service.proto | 118 + .../v9/services/batch_job_service.proto | 286 + .../bidding_data_exclusion_service.proto | 141 + ...dding_seasonality_adjustment_service.proto | 141 + .../services/bidding_strategy_service.proto | 177 + .../bidding_strategy_simulation_service.proto | 60 + .../v9/services/billing_setup_service.proto | 136 + .../v9/services/campaign_asset_service.proto | 163 + .../services/campaign_asset_set_service.proto | 112 + .../campaign_audience_view_service.proto | 67 + .../campaign_bid_modifier_service.proto | 174 + .../v9/services/campaign_budget_service.proto | 167 + .../campaign_conversion_goal_service.proto | 89 + .../services/campaign_criterion_service.proto | 178 + ...ampaign_criterion_simulation_service.proto | 68 + .../campaign_customizer_service.proto | 113 + .../v9/services/campaign_draft_service.proto | 254 + .../campaign_experiment_service.proto | 382 + .../campaign_extension_setting_service.proto | 182 + .../v9/services/campaign_feed_service.proto | 173 + .../v9/services/campaign_label_service.proto | 144 + .../v9/services/campaign_service.proto | 183 + .../campaign_shared_set_service.proto | 164 + .../campaign_simulation_service.proto | 60 + .../services/carrier_constant_service.proto | 67 + .../v9/services/change_status_service.proto | 67 + .../v9/services/click_view_service.proto | 67 + .../services/combined_audience_service.proto | 69 + .../services/conversion_action_service.proto | 167 + ...conversion_adjustment_upload_service.proto | 200 + .../conversion_custom_variable_service.proto | 158 + ...version_goal_campaign_config_service.proto | 100 + .../services/conversion_upload_service.proto | 343 + .../conversion_value_rule_service.proto | 144 + .../conversion_value_rule_set_service.proto | 144 + .../services/currency_constant_service.proto | 65 + .../v9/services/custom_audience_service.proto | 140 + .../custom_conversion_goal_service.proto | 109 + .../v9/services/custom_interest_service.proto | 132 + .../v9/services/customer_asset_service.proto | 160 + .../customer_client_link_service.proto | 129 + .../v9/services/customer_client_service.proto | 67 + .../customer_conversion_goal_service.proto | 89 + .../customer_customizer_service.proto | 113 + .../customer_extension_setting_service.proto | 180 + .../v9/services/customer_feed_service.proto | 172 + .../v9/services/customer_label_service.proto | 142 + .../customer_manager_link_service.proto | 180 + .../customer_negative_criterion_service.proto | 152 + .../v9/services/customer_service.proto | 214 + ...tomer_user_access_invitation_service.proto | 125 + .../customer_user_access_service.proto | 129 + .../customizer_attribute_service.proto | 117 + .../detail_placement_view_service.proto | 67 + .../detailed_demographic_service.proto | 59 + .../display_keyword_view_service.proto | 67 + .../v9/services/distance_view_service.proto | 67 + .../v9/services/domain_category_service.proto | 68 + ..._search_ads_search_term_view_service.proto | 68 + .../expanded_landing_page_view_service.proto | 68 + .../extension_feed_item_service.proto | 175 + .../v9/services/feed_item_service.proto | 174 + .../services/feed_item_set_link_service.proto | 138 + .../v9/services/feed_item_set_service.proto | 146 + .../services/feed_item_target_service.proto | 161 + .../v9/services/feed_mapping_service.proto | 161 + .../feed_placeholder_view_service.proto | 67 + .../googleads/v9/services/feed_service.proto | 173 + .../v9/services/gender_view_service.proto | 67 + .../geo_target_constant_service.proto | 146 + .../v9/services/geographic_view_service.proto | 67 + .../services/google_ads_field_service.proto | 115 + .../v9/services/google_ads_service.proto | 1425 + .../group_placement_view_service.proto | 67 + .../services/hotel_group_view_service.proto | 67 + .../hotel_performance_view_service.proto | 67 + .../services/income_range_view_service.proto | 67 + .../v9/services/invoice_service.proto | 83 + ...eyword_plan_ad_group_keyword_service.proto | 165 + .../keyword_plan_ad_group_service.proto | 159 + ...eyword_plan_campaign_keyword_service.proto | 162 + .../keyword_plan_campaign_service.proto | 160 + .../services/keyword_plan_idea_service.proto | 181 + .../v9/services/keyword_plan_service.proto | 446 + .../keyword_theme_constant_service.proto | 98 + .../v9/services/keyword_view_service.proto | 67 + .../googleads/v9/services/label_service.proto | 168 + .../services/landing_page_view_service.proto | 67 + .../services/language_constant_service.proto | 67 + .../v9/services/life_event_service.proto | 59 + .../v9/services/location_view_service.proto | 67 + .../managed_placement_view_service.proto | 67 + .../v9/services/media_file_service.proto | 156 + .../merchant_center_link_service.proto | 160 + ...mobile_app_category_constant_service.proto | 66 + .../mobile_device_constant_service.proto | 67 + .../offline_user_data_job_service.proto | 237 + ...ting_system_version_constant_service.proto | 68 + ...aid_organic_search_term_view_service.proto | 68 + .../parental_status_view_service.proto | 67 + .../services/payments_account_service.proto | 71 + ...ct_bidding_category_constant_service.proto | 68 + .../services/product_group_view_service.proto | 67 + .../v9/services/reach_plan_service.proto | 568 + .../v9/services/recommendation_service.proto | 309 + .../services/remarketing_action_service.proto | 141 + .../services/search_term_view_service.proto | 67 + .../services/shared_criterion_service.proto | 162 + .../v9/services/shared_set_service.proto | 172 + .../shopping_performance_view_service.proto | 68 + ...rt_campaign_search_term_view_service.proto | 68 + .../smart_campaign_setting_service.proto | 128 + .../smart_campaign_suggest_service.proto | 224 + ...ird_party_app_analytics_link_service.proto | 94 + .../v9/services/topic_constant_service.proto | 67 + .../v9/services/topic_view_service.proto | 67 + .../v9/services/user_data_service.proto | 97 + .../v9/services/user_interest_service.proto | 67 + .../v9/services/user_list_service.proto | 159 + .../services/user_location_view_service.proto | 67 + .../googleads/v9/services/video_service.proto | 67 + .../v9/services/webpage_view_service.proto | 59 + google/analytics/admin/BUILD.bazel | 39 + google/analytics/admin/v1alpha/BUILD.bazel | 9 +- .../admin/v1alpha/analytics_admin.proto | 560 +- .../admin/v1alpha/analyticsadmin_v1alpha.yaml | 32 +- .../analytics/admin/v1alpha/resources.proto | 471 +- google/analytics/data/BUILD.bazel | 41 + google/analytics/data/v1alpha/BUILD.bazel | 338 - .../data/v1alpha/analytics_data_api.proto | 477 - .../analytics_data_grpc_service_config.json | 36 - .../data/v1alpha/analyticsdata_gapic.yaml | 2 - .../data/v1alpha/analyticsdata_v1alpha.yaml | 23 - google/analytics/data/v1alpha/data.proto | 793 - google/analytics/data/v1beta/BUILD.bazel | 18 +- .../data/v1beta/analytics_data_api.proto | 81 +- google/analytics/data/v1beta/data.proto | 166 +- google/api/BUILD.bazel | 77 +- .../api/expr/conformance/v1alpha1/BUILD.bazel | 178 + .../v1alpha1/conformance_service.proto | 38 +- google/api/expr/v1alpha1/BUILD.bazel | 109 +- google/api/expr/v1alpha1/checked.proto | 14 +- google/api/expr/v1alpha1/eval.proto | 2 +- google/api/expr/v1alpha1/explain.proto | 2 +- google/api/expr/v1alpha1/syntax.proto | 13 +- google/api/expr/v1alpha1/value.proto | 2 +- google/api/field_behavior.proto | 6 + google/api/httpbody.proto | 10 +- google/api/resource.proto | 81 +- google/api/routing.proto | 461 + google/api/servicecontrol/BUILD.bazel | 40 + google/api/servicecontrol/v1/BUILD.bazel | 250 +- .../api/servicecontrol/v1/check_error.proto | 2 +- .../api/servicecontrol/v1/distribution.proto | 15 +- .../api/servicecontrol/v1/http_request.proto | 2 +- google/api/servicecontrol/v1/log_entry.proto | 2 +- .../api/servicecontrol/v1/metric_value.proto | 8 +- google/api/servicecontrol/v1/operation.proto | 18 +- .../servicecontrol/v1/quota_controller.proto | 14 +- .../v1/service_controller.proto | 31 +- .../api/servicecontrol/v1/servicecontrol.yaml | 6 +- .../servicecontrol_grpc_service_config.json | 29 + google/api/servicemanagement/BUILD.bazel | 41 +- google/api/servicemanagement/v1/BUILD.bazel | 27 +- google/api/serviceusage/BUILD.bazel | 40 + google/api/serviceusage/v1/BUILD.bazel | 39 +- google/api/serviceusage/v1/serviceusage.proto | 2 +- google/api/serviceusage/v1beta1/BUILD.bazel | 18 +- google/appengine/BUILD.bazel | 40 + google/appengine/legacy/BUILD.bazel | 24 +- google/appengine/logging/v1/BUILD.bazel | 23 +- google/appengine/v1/BUILD.bazel | 27 +- google/appengine/v1beta/BUILD.bazel | 6 +- google/apps/alertcenter/v1beta1/BUILD.bazel | 8 +- google/apps/drive/activity/v2/BUILD.bazel | 9 +- google/apps/market/v2/BUILD.bazel | 9 +- google/apps/script/type/BUILD.bazel | 30 +- google/apps/script/type/calendar/BUILD.bazel | 18 +- google/apps/script/type/docs/BUILD.bazel | 18 +- google/apps/script/type/drive/BUILD.bazel | 18 +- google/apps/script/type/gmail/BUILD.bazel | 19 +- google/apps/script/type/sheets/BUILD.bazel | 18 +- google/apps/script/type/slides/BUILD.bazel | 18 +- google/area120/tables/BUILD.bazel | 40 + google/area120/tables/v1alpha1/BUILD.bazel | 9 +- google/bigtable/admin/v2/BUILD.bazel | 14 +- .../admin/v2/bigtable_instance_admin.proto | 84 +- .../admin/v2/bigtable_table_admin.proto | 42 +- .../admin/v2/bigtableadmin_gapic.yaml | 6 + .../v2/bigtableadmin_grpc_service_config.json | 4 + .../bigtable/admin/v2/bigtableadmin_v2.yaml | 1 + google/bigtable/admin/v2/common.proto | 3 +- google/bigtable/admin/v2/instance.proto | 62 +- google/bigtable/admin/v2/table.proto | 6 +- google/bigtable/v2/BUILD.bazel | 11 +- google/bigtable/v2/bigtable.proto | 76 +- google/bigtable/v2/data.proto | 5 +- google/chromeos/moblab/v1beta1/BUILD.bazel | 17 +- .../moblab/v1beta1/build_service.proto | 115 +- .../chromeos/moblab/v1beta1/resources.proto | 6 +- google/chromeos/uidetection/v1/BUILD.bazel | 350 + .../v1/chromeosuidetection_v1.yaml | 18 + .../uidetection/v1/ui_detection.proto | 105 + .../v1/ui_detection_grpc_service_config.json | 13 + google/cloud/BUILD.bazel | 99 + google/cloud/accessapproval/BUILD.bazel | 40 + google/cloud/accessapproval/v1/BUILD.bazel | 30 +- .../accessapproval_grpc_service_config.json | 1 - google/cloud/aiplatform/logging/BUILD.bazel | 24 +- google/cloud/aiplatform/v1/BUILD.bazel | 112 +- .../aiplatform/v1/accelerator_type.proto | 12 +- .../v1/aiplatform_grpc_service_config.json | 218 +- google/cloud/aiplatform/v1/aiplatform_v1.yaml | 510 +- google/cloud/aiplatform/v1/annotation.proto | 4 + .../cloud/aiplatform/v1/annotation_spec.proto | 3 + google/cloud/aiplatform/v1/artifact.proto | 111 + .../aiplatform/v1/batch_prediction_job.proto | 60 +- .../aiplatform/v1/completion_stats.proto | 3 + google/cloud/aiplatform/v1/context.proto | 96 + google/cloud/aiplatform/v1/custom_job.proto | 51 +- google/cloud/aiplatform/v1/data_item.proto | 4 + .../aiplatform/v1/data_labeling_job.proto | 3 + google/cloud/aiplatform/v1/dataset.proto | 6 + .../cloud/aiplatform/v1/dataset_service.proto | 5 + .../aiplatform/v1/deployed_index_ref.proto | 43 + .../aiplatform/v1/deployed_model_ref.proto | 3 + .../cloud/aiplatform/v1/encryption_spec.proto | 3 + google/cloud/aiplatform/v1/endpoint.proto | 91 +- .../aiplatform/v1/endpoint_service.proto | 15 + google/cloud/aiplatform/v1/entity_type.proto | 77 + google/cloud/aiplatform/v1/env_var.proto | 3 + google/cloud/aiplatform/v1/event.proto | 81 + google/cloud/aiplatform/v1/execution.proto | 117 + google/cloud/aiplatform/v1/explanation.proto | 403 + .../aiplatform/v1/explanation_metadata.proto | 396 + google/cloud/aiplatform/v1/feature.proto | 116 + .../v1/feature_monitoring_stats.proto | 87 + .../aiplatform/v1/feature_selector.proto | 45 + google/cloud/aiplatform/v1/featurestore.proto | 108 + .../v1/featurestore_online_service.proto | 225 + .../aiplatform/v1/featurestore_service.proto | 1219 + .../v1/hyperparameter_tuning_job.proto | 3 + google/cloud/aiplatform/v1/index.proto | 98 + .../cloud/aiplatform/v1/index_endpoint.proto | 232 + .../v1/index_endpoint_service.proto | 335 + .../cloud/aiplatform/v1/index_service.proto | 277 + google/cloud/aiplatform/v1/io.proto | 30 +- google/cloud/aiplatform/v1/job_service.proto | 309 + google/cloud/aiplatform/v1/job_state.proto | 6 + .../aiplatform/v1/lineage_subgraph.proto | 43 + .../aiplatform/v1/machine_resources.proto | 51 +- .../v1/manual_batch_tuning_parameters.proto | 3 + .../cloud/aiplatform/v1/metadata_schema.proto | 80 + .../aiplatform/v1/metadata_service.proto | 1257 + .../cloud/aiplatform/v1/metadata_store.proto | 66 + .../aiplatform/v1/migratable_resource.proto | 3 + .../aiplatform/v1/migration_service.proto | 7 +- google/cloud/aiplatform/v1/model.proto | 54 +- .../v1/model_deployment_monitoring_job.proto | 289 + .../aiplatform/v1/model_evaluation.proto | 10 + .../v1/model_evaluation_slice.proto | 3 + .../aiplatform/v1/model_monitoring.proto | 203 + .../cloud/aiplatform/v1/model_service.proto | 12 +- google/cloud/aiplatform/v1/operation.proto | 3 + google/cloud/aiplatform/v1/pipeline_job.proto | 320 + .../aiplatform/v1/pipeline_service.proto | 201 +- .../cloud/aiplatform/v1/pipeline_state.proto | 3 + .../aiplatform/v1/prediction_service.proto | 141 + .../aiplatform/v1/schema/aiplatform_v1.yaml | 20 +- .../v1/schema/predict/instance/BUILD.bazel | 24 +- .../instance/image_classification.proto | 5 +- .../instance/image_object_detection.proto | 5 +- .../predict/instance/image_segmentation.proto | 5 +- .../instance/text_classification.proto | 3 + .../predict/instance/text_extraction.proto | 5 +- .../predict/instance/text_sentiment.proto | 3 + .../instance/video_action_recognition.proto | 3 + .../instance/video_classification.proto | 3 + .../instance/video_object_tracking.proto | 3 + .../v1/schema/predict/params/BUILD.bazel | 24 +- .../predict/params/image_classification.proto | 3 + .../params/image_object_detection.proto | 3 + .../predict/params/image_segmentation.proto | 5 +- .../params/video_action_recognition.proto | 3 + .../predict/params/video_classification.proto | 11 +- .../params/video_object_tracking.proto | 3 + .../v1/schema/predict/prediction/BUILD.bazel | 24 +- .../predict/prediction/classification.proto | 6 +- .../prediction/image_object_detection.proto | 3 + .../prediction/image_segmentation.proto | 5 +- .../prediction/tabular_classification.proto | 3 + .../prediction/tabular_regression.proto | 3 + .../predict/prediction/text_extraction.proto | 3 + .../predict/prediction/text_sentiment.proto | 3 + .../prediction/video_action_recognition.proto | 3 + .../prediction/video_classification.proto | 3 + .../prediction/video_object_tracking.proto | 3 + .../schema/trainingjob/definition/BUILD.bazel | 27 +- .../automl_image_classification.proto | 3 + .../automl_image_object_detection.proto | 3 + .../automl_image_segmentation.proto | 5 +- .../definition/automl_tables.proto | 7 + .../automl_text_classification.proto | 3 + .../definition/automl_text_extraction.proto | 3 + .../definition/automl_text_sentiment.proto | 3 + .../automl_video_action_recognition.proto | 13 + .../automl_video_classification.proto | 3 + .../automl_video_object_tracking.proto | 3 + .../export_evaluated_data_items_config.proto | 4 +- .../cloud/aiplatform/v1/specialist_pool.proto | 20 +- .../v1/specialist_pool_service.proto | 3 + google/cloud/aiplatform/v1/study.proto | 159 +- google/cloud/aiplatform/v1/tensorboard.proto | 87 + .../aiplatform/v1/tensorboard_data.proto | 102 + .../v1/tensorboard_experiment.proto | 79 + .../cloud/aiplatform/v1/tensorboard_run.proto | 82 + .../aiplatform/v1/tensorboard_service.proto | 1006 + .../v1/tensorboard_time_series.proto | 107 + .../aiplatform/v1/training_pipeline.proto | 40 + google/cloud/aiplatform/v1/types.proto | 51 + .../v1/unmanaged_container_model.proto | 44 + .../aiplatform/v1/user_action_reference.proto | 3 + google/cloud/aiplatform/v1/value.proto | 41 + .../cloud/aiplatform/v1/vizier_service.proto | 505 + google/cloud/aiplatform/v1beta1/BUILD.bazel | 18 +- .../aiplatform/v1beta1/accelerator_type.proto | 3 + .../v1beta1/aiplatform_v1beta1.yaml | 71 +- .../cloud/aiplatform/v1beta1/annotation.proto | 3 + .../aiplatform/v1beta1/annotation_spec.proto | 3 + .../cloud/aiplatform/v1beta1/artifact.proto | 8 +- .../v1beta1/batch_prediction_job.proto | 32 +- .../aiplatform/v1beta1/completion_stats.proto | 3 + google/cloud/aiplatform/v1beta1/context.proto | 4 + .../cloud/aiplatform/v1beta1/custom_job.proto | 34 +- .../cloud/aiplatform/v1beta1/data_item.proto | 3 + .../v1beta1/data_labeling_job.proto | 3 + google/cloud/aiplatform/v1beta1/dataset.proto | 6 + .../aiplatform/v1beta1/dataset_service.proto | 5 + .../v1beta1/deployed_index_ref.proto | 3 + .../v1beta1/deployed_model_ref.proto | 3 + .../aiplatform/v1beta1/encryption_spec.proto | 3 + .../cloud/aiplatform/v1beta1/endpoint.proto | 78 +- .../aiplatform/v1beta1/endpoint_service.proto | 15 + .../aiplatform/v1beta1/entity_type.proto | 6 +- google/cloud/aiplatform/v1beta1/env_var.proto | 3 + google/cloud/aiplatform/v1beta1/event.proto | 3 + .../cloud/aiplatform/v1beta1/execution.proto | 12 +- .../aiplatform/v1beta1/explanation.proto | 52 +- .../v1beta1/explanation_metadata.proto | 44 +- google/cloud/aiplatform/v1beta1/feature.proto | 7 +- .../v1beta1/feature_monitoring_stats.proto | 3 + .../aiplatform/v1beta1/feature_selector.proto | 3 + .../aiplatform/v1beta1/featurestore.proto | 16 +- .../v1beta1/featurestore_monitoring.proto | 17 +- .../v1beta1/featurestore_online_service.proto | 40 +- .../v1beta1/featurestore_service.proto | 94 +- .../v1beta1/hyperparameter_tuning_job.proto | 3 + google/cloud/aiplatform/v1beta1/index.proto | 4 + .../aiplatform/v1beta1/index_endpoint.proto | 66 +- .../v1beta1/index_endpoint_service.proto | 53 + .../aiplatform/v1beta1/index_service.proto | 6 + google/cloud/aiplatform/v1beta1/io.proto | 6 +- .../aiplatform/v1beta1/job_service.proto | 33 +- .../cloud/aiplatform/v1beta1/job_state.proto | 3 + .../aiplatform/v1beta1/lineage_subgraph.proto | 12 +- .../v1beta1/machine_resources.proto | 10 +- .../manual_batch_tuning_parameters.proto | 3 + .../aiplatform/v1beta1/metadata_schema.proto | 5 +- .../aiplatform/v1beta1/metadata_service.proto | 340 +- .../aiplatform/v1beta1/metadata_store.proto | 3 + .../v1beta1/migratable_resource.proto | 3 + .../v1beta1/migration_service.proto | 7 +- google/cloud/aiplatform/v1beta1/model.proto | 13 +- .../model_deployment_monitoring_job.proto | 23 +- .../aiplatform/v1beta1/model_evaluation.proto | 3 + .../v1beta1/model_evaluation_slice.proto | 3 + .../aiplatform/v1beta1/model_monitoring.proto | 69 +- .../aiplatform/v1beta1/model_service.proto | 12 +- .../cloud/aiplatform/v1beta1/operation.proto | 3 + .../aiplatform/v1beta1/pipeline_job.proto | 42 +- .../aiplatform/v1beta1/pipeline_service.proto | 56 +- .../aiplatform/v1beta1/pipeline_state.proto | 3 + .../v1beta1/prediction_service.proto | 62 + .../aiplatform/v1beta1/schema/BUILD.bazel | 6 +- .../v1beta1/schema/aiplatform_v1beta1.yaml | 10 +- .../aiplatform/v1beta1/schema/io_format.proto | 65 + .../schema/predict/instance/BUILD.bazel | 6 +- .../instance/image_classification.proto | 2 +- .../instance/image_object_detection.proto | 2 +- .../predict/instance/text_extraction.proto | 2 +- .../v1beta1/schema/predict/params/BUILD.bazel | 6 +- .../predict/params/video_classification.proto | 8 +- .../schema/predict/prediction/BUILD.bazel | 6 +- .../predict/prediction/classification.proto | 3 +- .../schema/trainingjob/definition/BUILD.bazel | 9 +- .../automl_image_classification.proto | 2 +- .../definition/automl_tables.proto | 3 + .../automl_time_series_forecasting.proto | 3 + .../automl_video_action_recognition.proto | 10 + .../export_evaluated_data_items_config.proto | 1 - .../aiplatform/v1beta1/specialist_pool.proto | 20 +- .../v1beta1/specialist_pool_service.proto | 3 + google/cloud/aiplatform/v1beta1/study.proto | 68 +- .../aiplatform/v1beta1/tensorboard.proto | 3 + .../aiplatform/v1beta1/tensorboard_data.proto | 3 + .../v1beta1/tensorboard_experiment.proto | 3 + .../aiplatform/v1beta1/tensorboard_run.proto | 21 + .../v1beta1/tensorboard_service.proto | 170 +- .../v1beta1/tensorboard_time_series.proto | 3 + .../v1beta1/training_pipeline.proto | 40 + google/cloud/aiplatform/v1beta1/types.proto | 3 + .../v1beta1/unmanaged_container_model.proto | 44 + .../v1beta1/user_action_reference.proto | 3 + google/cloud/aiplatform/v1beta1/value.proto | 3 + .../aiplatform/v1beta1/vizier_service.proto | 9 +- google/cloud/apigateway/BUILD.bazel | 40 + google/cloud/apigateway/v1/BUILD.bazel | 27 +- google/cloud/apigateway/v1/apigateway_v1.yaml | 55 + google/cloud/apigeeconnect/BUILD.bazel | 40 + google/cloud/apigeeconnect/v1/BUILD.bazel | 36 +- .../cloud/apigeeconnect/v1/connection.proto | 3 + google/cloud/apigeeconnect/v1/tether.proto | 3 + google/cloud/asset/BUILD.bazel | 40 + google/cloud/asset/v1/BUILD.bazel | 36 +- google/cloud/asset/v1/asset_service.proto | 247 +- google/cloud/asset/v1/assets.proto | 181 + .../v1/cloudasset_grpc_service_config.json | 38 +- google/cloud/asset/v1/cloudasset_v1.yaml | 1 + google/cloud/asset/v1p1beta1/BUILD.bazel | 9 +- google/cloud/asset/v1p2beta1/BUILD.bazel | 9 +- google/cloud/asset/v1p4beta1/BUILD.bazel | 9 +- google/cloud/asset/v1p5beta1/BUILD.bazel | 9 +- google/cloud/asset/v1p7beta1/BUILD.bazel | 9 +- google/cloud/assuredworkloads/BUILD.bazel | 40 + google/cloud/assuredworkloads/v1/BUILD.bazel | 367 + .../v1/assuredworkloads.proto | 463 + .../assuredworkloads_grpc_service_config.json | 12 + .../v1/assuredworkloads_v1.yaml | 42 + .../assuredworkloads/v1beta1/BUILD.bazel | 30 +- .../v1beta1/assuredworkloads_v1beta1.proto | 188 +- google/cloud/audit/BUILD.bazel | 64 +- google/cloud/audit/audit_log.proto | 37 +- .../cloud/audit/bigquery_audit_metadata.proto | 1184 + google/cloud/audit/cloudaudit.yaml | 3 +- google/cloud/automl/BUILD.bazel | 43 + google/cloud/automl/v1/BUILD.bazel | 27 +- .../cloud/automl/v1/annotation_payload.proto | 4 +- google/cloud/automl/v1/annotation_spec.proto | 5 +- google/cloud/automl/v1/automl_v1.yaml | 72 +- google/cloud/automl/v1/classification.proto | 4 +- google/cloud/automl/v1/data_items.proto | 5 +- google/cloud/automl/v1/dataset.proto | 4 +- google/cloud/automl/v1/detection.proto | 4 +- google/cloud/automl/v1/geometry.proto | 2 +- google/cloud/automl/v1/image.proto | 43 +- google/cloud/automl/v1/io.proto | 107 +- google/cloud/automl/v1/model.proto | 4 +- google/cloud/automl/v1/model_evaluation.proto | 8 +- google/cloud/automl/v1/operations.proto | 10 +- .../cloud/automl/v1/prediction_service.proto | 6 +- google/cloud/automl/v1/service.proto | 14 +- google/cloud/automl/v1/text.proto | 5 +- google/cloud/automl/v1/text_extraction.proto | 4 +- google/cloud/automl/v1/text_segment.proto | 2 +- google/cloud/automl/v1/text_sentiment.proto | 4 +- google/cloud/automl/v1/translation.proto | 4 +- google/cloud/automl/v1beta1/BUILD.bazel | 9 +- google/cloud/automl/v1beta1/service.proto | 9 +- google/cloud/baremetalsolution/v2/BUILD.bazel | 357 + .../v2/baremetalsolution.proto | 1020 + ...baremetalsolution_grpc_service_config.json | 12 + .../v2/baremetalsolution_v2.yaml | 68 + google/cloud/bigquery/connection/BUILD.bazel | 40 + .../cloud/bigquery/connection/v1/BUILD.bazel | 27 +- .../bigquery/connection/v1/connection.proto | 30 +- .../bigquery/connection/v1beta1/BUILD.bazel | 9 +- .../cloud/bigquery/datatransfer/BUILD.bazel | 40 + .../bigquery/datatransfer/v1/BUILD.bazel | 27 +- .../v1/bigquerydatatransfer_v1.yaml | 14 + .../datatransfer/v1/datatransfer.proto | 89 +- .../bigquery/datatransfer/v1/transfer.proto | 57 +- google/cloud/bigquery/logging/v1/BUILD.bazel | 23 +- .../bigquery/migration/v2alpha/BUILD.bazel | 14 +- .../migration/v2alpha/assessment_task.proto | 49 + .../v2alpha/bigquerymigration_v2alpha.yaml | 9 +- .../v2alpha/migration_entities.proto | 31 + .../v2alpha/migration_error_details.proto | 2 + .../migration/v2alpha/migration_metrics.proto | 2 + .../migration/v2alpha/migration_service.proto | 2 + .../v2alpha/translation_service.proto | 135 + .../migration/v2alpha/translation_task.proto | 207 + google/cloud/bigquery/reservation/BUILD.bazel | 40 + .../cloud/bigquery/reservation/v1/BUILD.bazel | 50 +- ...gqueryreservation_grpc_service_config.json | 4 +- .../v1/bigqueryreservation_v1.yaml | 11 +- .../bigquery/reservation/v1/reservation.proto | 123 +- .../bigquery/reservation/v1beta1/BUILD.bazel | 9 +- google/cloud/bigquery/storage/BUILD.bazel | 39 + google/cloud/bigquery/storage/v1/BUILD.bazel | 17 +- .../bigquerystorage_grpc_service_config.json | 43 +- .../storage/v1/bigquerystorage_v1.yaml | 20 +- .../cloud/bigquery/storage/v1/protobuf.proto | 48 + .../cloud/bigquery/storage/v1/storage.proto | 363 +- google/cloud/bigquery/storage/v1/stream.proto | 66 + google/cloud/bigquery/storage/v1/table.proto | 164 + .../bigquery/storage/v1beta1/BUILD.bazel | 11 +- .../bigquery/storage/v1beta2/BUILD.bazel | 19 +- .../bigquerystorage_grpc_service_config.json | 1 + .../bigquery/storage/v1beta2/storage.proto | 2 +- google/cloud/bigquery/v2/BUILD.bazel | 27 +- google/cloud/bigquery/v2/bigquery_v2.yaml | 6 +- .../cloud/bigquery/v2/encryption_config.proto | 2 +- google/cloud/bigquery/v2/model.proto | 120 +- .../cloud/bigquery/v2/model_reference.proto | 2 +- google/cloud/bigquery/v2/standard_sql.proto | 14 +- .../cloud/bigquery/v2/table_reference.proto | 14 +- ...bigquerymigration_grpc_service_config.json | 63 + google/cloud/billing/BUILD.bazel | 41 + google/cloud/billing/budgets/BUILD.bazel | 40 + google/cloud/billing/budgets/v1/BUILD.bazel | 36 +- .../cloud/billing/budgets/v1beta1/BUILD.bazel | 9 +- google/cloud/billing/v1/BUILD.bazel | 27 +- google/cloud/binaryauthorization/BUILD.bazel | 41 + .../cloud/binaryauthorization/v1/BUILD.bazel | 369 + ...naryauthorization_grpc_service_config.json | 51 + .../v1/binaryauthorization_v1.yaml | 75 + .../binaryauthorization/v1/resources.proto | 334 + .../binaryauthorization/v1/service.proto | 312 + .../binaryauthorization/v1beta1/BUILD.bazel | 10 +- .../v1beta1/binaryauthorization_v1beta1.yaml | 30 +- .../v1beta1/resources.proto | 120 +- .../binaryauthorization/v1beta1/service.proto | 139 +- google/cloud/channel/BUILD.bazel | 40 + google/cloud/channel/v1/BUILD.bazel | 27 +- .../channel/v1/channel_partner_links.proto | 10 +- google/cloud/channel/v1/cloudchannel_v1.yaml | 6 + google/cloud/channel/v1/common.proto | 8 +- google/cloud/channel/v1/customers.proto | 53 +- google/cloud/channel/v1/entitlements.proto | 20 +- google/cloud/channel/v1/offers.proto | 2 +- google/cloud/channel/v1/operations.proto | 2 +- google/cloud/channel/v1/products.proto | 2 +- google/cloud/channel/v1/service.proto | 134 +- .../cloud/channel/v1/subscriber_event.proto | 9 +- google/cloud/clouddms/BUILD.bazel | 41 + google/cloud/clouddms/logging/v1/BUILD.bazel | 24 +- .../logging/v1/clouddms_platform_logs.proto | 2 +- google/cloud/clouddms/v1/BUILD.bazel | 44 +- google/cloud/clouddms/v1/clouddms.proto | 2 +- .../clouddms/v1/clouddms_resources.proto | 2 +- .../clouddms/v1/datamigration_gapic.yaml | 18 - google/cloud/common/BUILD.bazel | 179 + google/cloud/common/common.yaml | 7 + google/cloud/common/operation_metadata.proto | 53 + google/cloud/compute/BUILD.bazel | 41 + google/cloud/compute/v1/BUILD.bazel | 395 + google/cloud/compute/v1/compute.proto | 32086 +++++++++ google/cloud/compute/v1/compute.v1.json | 59972 ++++++++++++++++ google/cloud/compute/v1/compute_gapic.yaml | 1958 + .../v1/compute_grpc_service_config.json | 1770 + google/cloud/compute/v1/compute_v1.yaml | 108 + google/cloud/compute/v1small/BUILD.bazel | 182 + google/cloud/compute/v1small/README.md | 8 + .../compute/v1small/compute.v1small.json | 1062 + .../cloud/compute/v1small/compute_small.proto | 740 + .../compute/v1small/compute_small_gapic.yaml | 40 + .../compute_small_grpc_service_config.json | 33 + .../compute/v1small/compute_small_v1.yaml | 30 + .../cloud/contactcenterinsights/BUILD.bazel | 39 + .../contactcenterinsights/v1/BUILD.bazel | 42 +- .../v1/contact_center_insights.proto | 435 +- .../v1/contactcenterinsights_v1.yaml | 6 + .../contactcenterinsights/v1/resources.proto | 165 +- google/cloud/datacatalog/BUILD.bazel | 40 + google/cloud/datacatalog/v1/BUILD.bazel | 29 +- google/cloud/datacatalog/v1/bigquery.proto | 82 + google/cloud/datacatalog/v1/common.proto | 5 +- google/cloud/datacatalog/v1/data_source.proto | 11 +- google/cloud/datacatalog/v1/datacatalog.proto | 954 +- .../cloud/datacatalog/v1/datacatalog_v1.yaml | 6 +- .../datacatalog/v1/gcs_fileset_spec.proto | 31 +- .../datacatalog/v1/policytagmanager.proto | 183 +- .../v1/policytagmanagerserialization.proto | 107 +- google/cloud/datacatalog/v1/schema.proto | 6 +- google/cloud/datacatalog/v1/search.proto | 83 +- google/cloud/datacatalog/v1/table_spec.proto | 42 +- google/cloud/datacatalog/v1/tags.proto | 154 +- google/cloud/datacatalog/v1/timestamps.proto | 17 +- google/cloud/datacatalog/v1/usage.proto | 65 + google/cloud/datacatalog/v1beta1/BUILD.bazel | 9 +- google/cloud/datafusion/BUILD.bazel | 39 + google/cloud/datafusion/v1/BUILD.bazel | 365 + google/cloud/datafusion/v1/datafusion.proto | 584 + .../v1/datafusion_grpc_service_config.json | 12 + google/cloud/datafusion/v1/datafusion_v1.yaml | 111 + google/cloud/datafusion/v1beta1/BUILD.bazel | 351 + .../datafusion_grpc_service_config.json | 12 + .../v1beta1/datafusion_v1beta1.yaml | 119 + google/cloud/datafusion/v1beta1/v1beta1.proto | 791 + google/cloud/datalabeling/BUILD.bazel | 39 + google/cloud/datalabeling/v1beta1/BUILD.bazel | 10 +- .../v1beta1/datalabeling_v1beta1.yaml | 17 +- google/cloud/dataplex/v1/BUILD.bazel | 366 + .../v1/dataplex_grpc_service_config.json | 206 + google/cloud/dataplex/v1/dataplex_v1.yaml | 140 + google/cloud/dataplex/v1/logs.proto | 281 + google/cloud/dataplex/v1/metadata.proto | 580 + google/cloud/dataplex/v1/resources.proto | 798 + google/cloud/dataplex/v1/service.proto | 897 + google/cloud/dataplex/v1/tasks.proto | 344 + google/cloud/dataproc/BUILD.bazel | 41 + google/cloud/dataproc/dataproc.yaml | 72 +- google/cloud/dataproc/logging/BUILD.bazel | 24 +- google/cloud/dataproc/v1/BUILD.bazel | 28 +- .../dataproc/v1/autoscaling_policies.proto | 11 +- google/cloud/dataproc/v1/batches.proto | 372 + google/cloud/dataproc/v1/clusters.proto | 82 +- google/cloud/dataproc/v1/dataproc_v1.yaml | 6 + google/cloud/dataproc/v1/jobs.proto | 73 +- google/cloud/dataproc/v1/operations.proto | 39 +- google/cloud/dataproc/v1/shared.proto | 102 +- .../dataproc/v1/workflow_templates.proto | 109 +- google/cloud/dataproc/v1beta2/BUILD.bazel | 349 - .../v1beta2/autoscaling_policies.proto | 369 - google/cloud/dataproc/v1beta2/clusters.proto | 1082 - .../dataproc/v1beta2/dataproc_gapic.yaml | 43 - .../v1beta2/dataproc_grpc_service_config.json | 215 - .../dataproc/v1beta2/dataproc_v1beta2.yaml | 94 - google/cloud/dataproc/v1beta2/jobs.proto | 903 - .../cloud/dataproc/v1beta2/operations.proto | 82 - google/cloud/dataproc/v1beta2/shared.proto | 63 - .../dataproc/v1beta2/workflow_templates.proto | 848 - google/cloud/dataqna/BUILD.bazel | 42 + google/cloud/dataqna/v1alpha/BUILD.bazel | 10 +- google/cloud/datastream/BUILD.bazel | 39 + google/cloud/datastream/v1alpha1/BUILD.bazel | 347 + .../datastream/v1alpha1/datastream.proto | 895 + .../datastream_grpc_service_config.json | 28 + .../v1alpha1/datastream_resources.proto | 684 + .../v1alpha1/datastream_v1alpha1.yaml | 69 + google/cloud/deploy/BUILD.bazel | 39 + google/cloud/deploy/v1/BUILD.bazel | 366 + google/cloud/deploy/v1/cloud_deploy.proto | 1390 + .../v1/clouddeploy_grpc_service_config.json | 92 + google/cloud/deploy/v1/clouddeploy_v1.yaml | 109 + google/cloud/dialogflow/BUILD.bazel | 42 +- google/cloud/dialogflow/cx/BUILD.bazel | 41 + google/cloud/dialogflow/cx/v3/BUILD.bazel | 45 +- .../dialogflow/cx/v3/advanced_settings.proto | 53 + google/cloud/dialogflow/cx/v3/agent.proto | 46 +- .../cloud/dialogflow/cx/v3/audio_config.proto | 146 +- google/cloud/dialogflow/cx/v3/changelog.proto | 154 + .../cloud/dialogflow/cx/v3/deployment.proto | 171 + .../cloud/dialogflow/cx/v3/dialogflow_v3.yaml | 56 + .../cloud/dialogflow/cx/v3/entity_type.proto | 75 +- .../cloud/dialogflow/cx/v3/environment.proto | 106 + .../cloud/dialogflow/cx/v3/experiment.proto | 175 +- google/cloud/dialogflow/cx/v3/flow.proto | 49 +- .../cloud/dialogflow/cx/v3/fulfillment.proto | 15 +- google/cloud/dialogflow/cx/v3/intent.proto | 23 +- google/cloud/dialogflow/cx/v3/page.proto | 14 + .../dialogflow/cx/v3/response_message.proto | 18 +- .../dialogflow/cx/v3/security_settings.proto | 77 +- google/cloud/dialogflow/cx/v3/session.proto | 147 +- .../cx/v3/session_entity_type.proto | 1 + google/cloud/dialogflow/cx/v3/test_case.proto | 36 +- .../cx/v3/transition_route_group.proto | 13 + .../dialogflow/cx/v3/validation_message.proto | 3 +- google/cloud/dialogflow/cx/v3/version.proto | 78 + google/cloud/dialogflow/cx/v3/webhook.proto | 18 + .../cloud/dialogflow/cx/v3beta1/BUILD.bazel | 45 +- .../cx/v3beta1/advanced_settings.proto | 53 + .../cloud/dialogflow/cx/v3beta1/agent.proto | 46 +- .../dialogflow/cx/v3beta1/audio_config.proto | 146 +- .../dialogflow/cx/v3beta1/changelog.proto | 154 + .../dialogflow/cx/v3beta1/deployment.proto | 171 + .../cx/v3beta1/dialogflow_v3beta1.yaml | 56 + .../dialogflow/cx/v3beta1/entity_type.proto | 71 +- .../dialogflow/cx/v3beta1/environment.proto | 106 + .../dialogflow/cx/v3beta1/experiment.proto | 175 +- google/cloud/dialogflow/cx/v3beta1/flow.proto | 49 +- .../dialogflow/cx/v3beta1/fulfillment.proto | 15 +- .../cloud/dialogflow/cx/v3beta1/intent.proto | 15 + google/cloud/dialogflow/cx/v3beta1/page.proto | 2 + .../cx/v3beta1/response_message.proto | 18 +- .../cx/v3beta1/security_settings.proto | 77 +- .../cloud/dialogflow/cx/v3beta1/session.proto | 147 +- .../cx/v3beta1/session_entity_type.proto | 1 + .../dialogflow/cx/v3beta1/test_case.proto | 36 +- .../cx/v3beta1/transition_route_group.proto | 13 + .../cx/v3beta1/validation_message.proto | 3 +- .../cloud/dialogflow/cx/v3beta1/version.proto | 78 + .../cloud/dialogflow/cx/v3beta1/webhook.proto | 18 + google/cloud/dialogflow/v2/BUILD.bazel | 14 +- google/cloud/dialogflow/v2/agent.proto | 70 +- google/cloud/dialogflow/v2/audio_config.proto | 186 +- google/cloud/dialogflow/v2/conversation.proto | 2 + .../dialogflow/v2/conversation_event.proto | 2 +- .../dialogflow/v2/conversation_profile.proto | 49 +- google/cloud/dialogflow/v2/dialogflow_v2.yaml | 25 + google/cloud/dialogflow/v2/document.proto | 227 +- google/cloud/dialogflow/v2/entity_type.proto | 127 +- google/cloud/dialogflow/v2/environment.proto | 43 +- google/cloud/dialogflow/v2/gcs.proto | 20 +- .../v2/human_agent_assistant_event.proto | 2 +- google/cloud/dialogflow/v2/intent.proto | 208 +- .../cloud/dialogflow/v2/knowledge_base.proto | 28 + google/cloud/dialogflow/v2/participant.proto | 206 +- google/cloud/dialogflow/v2/session.proto | 79 +- .../dialogflow/v2/validation_result.proto | 2 +- google/cloud/dialogflow/v2/version.proto | 6 + google/cloud/dialogflow/v2/webhook.proto | 2 +- google/cloud/dialogflow/v2beta1/BUILD.bazel | 39 +- google/cloud/dialogflow/v2beta1/agent.proto | 66 +- .../dialogflow/v2beta1/answer_record.proto | 24 +- .../dialogflow/v2beta1/audio_config.proto | 204 +- .../dialogflow/v2beta1/conversation.proto | 2 + .../v2beta1/conversation_event.proto | 2 +- .../v2beta1/conversation_profile.proto | 25 + .../dialogflow_grpc_service_config.json | 12 + .../v2beta1/dialogflow_v2beta1.yaml | 24 + .../cloud/dialogflow/v2beta1/document.proto | 61 +- .../dialogflow/v2beta1/entity_type.proto | 130 +- .../dialogflow/v2beta1/environment.proto | 7 +- google/cloud/dialogflow/v2beta1/gcs.proto | 2 +- .../v2beta1/human_agent_assistant_event.proto | 2 +- google/cloud/dialogflow/v2beta1/intent.proto | 205 +- .../dialogflow/v2beta1/participant.proto | 99 +- google/cloud/dialogflow/v2beta1/session.proto | 78 +- .../v2beta1/validation_result.proto | 2 +- google/cloud/dialogflow/v2beta1/webhook.proto | 2 +- google/cloud/documentai/BUILD.bazel | 40 + google/cloud/documentai/v1/BUILD.bazel | 34 +- google/cloud/documentai/v1/document.proto | 16 +- .../v1/document_processor_service.proto | 55 +- google/cloud/documentai/v1/documentai_v1.yaml | 39 +- google/cloud/documentai/v1/geometry.proto | 4 +- .../documentai/v1/operation_metadata.proto | 64 + google/cloud/documentai/v1beta1/BUILD.bazel | 10 +- google/cloud/documentai/v1beta2/BUILD.bazel | 9 +- .../v1beta2/document_understanding.proto | 2 +- google/cloud/documentai/v1beta3/BUILD.bazel | 15 +- .../cloud/documentai/v1beta3/document.proto | 16 +- .../v1beta3/document_processor_service.proto | 250 +- .../v1beta3/documentai_v1beta3.yaml | 5 + .../cloud/documentai/v1beta3/geometry.proto | 4 +- .../v1beta3/operation_metadata.proto | 64 + .../cloud/documentai/v1beta3/processor.proto | 99 + .../documentai/v1beta3/processor_type.proto | 60 + google/cloud/domains/BUILD.bazel | 40 + google/cloud/domains/v1/BUILD.bazel | 369 + google/cloud/domains/v1/domains.proto | 1147 + .../v1/domains_grpc_service_config.json | 36 + google/cloud/domains/v1/domains_v1.yaml | 101 + google/cloud/domains/v1alpha2/BUILD.bazel | 31 +- google/cloud/domains/v1alpha2/domains.proto | 232 +- .../cloud/domains/v1alpha2/domains_gapic.yaml | 16 - .../v1alpha2/domains_grpc_service_config.json | 2 + .../domains/v1alpha2/domains_v1alpha2.yaml | 37 + google/cloud/domains/v1beta1/BUILD.bazel | 23 +- google/cloud/domains/v1beta1/domains.proto | 232 +- .../v1beta1/domains_grpc_service_config.json | 2 + .../domains/v1beta1/domains_v1beta1.yaml | 37 + google/cloud/essentialcontacts/BUILD.bazel | 40 + google/cloud/essentialcontacts/v1/BUILD.bazel | 36 +- google/cloud/eventarc/BUILD.bazel | 40 + google/cloud/eventarc/publishing/BUILD.bazel | 40 + .../cloud/eventarc/publishing/v1/BUILD.bazel | 361 + ...ventarcpublishing_grpc_service_config.json | 8 + .../publishing/v1/eventarcpublishing_v1.yaml | 14 + .../eventarc/publishing/v1/publisher.proto | 81 + google/cloud/eventarc/v1/BUILD.bazel | 362 + google/cloud/eventarc/v1/eventarc.proto | 237 + .../v1/eventarc_grpc_service_config.json | 24 + google/cloud/eventarc/v1/eventarc_v1.yaml | 101 + google/cloud/eventarc/v1/trigger.proto | 184 + google/cloud/extended_operations.proto | 150 + google/cloud/filestore/BUILD.bazel | 39 + google/cloud/filestore/v1/BUILD.bazel | 370 + .../v1/cloud_filestore_service.proto | 718 + .../v1/file_grpc_service_config.json | 43 + google/cloud/filestore/v1/file_v1.yaml | 64 + google/cloud/filestore/v1beta1/BUILD.bazel | 359 + .../v1beta1/cloud_filestore_service.proto | 766 + .../v1beta1/file_grpc_service_config.json | 48 + .../cloud/filestore/v1beta1/file_v1beta1.yaml | 64 + google/cloud/functions/BUILD.bazel | 40 + google/cloud/functions/v1/BUILD.bazel | 28 +- .../cloud/functions/v1/cloudfunctions_v1.yaml | 18 + google/cloud/functions/v1/functions.proto | 235 +- google/cloud/functions/v1/operations.proto | 13 +- google/cloud/gaming/BUILD.bazel | 40 + .../allocationendpoint/v1alpha/BUILD.bazel | 333 + .../v1alpha/allocation_endpoint.proto | 94 + ...location_endpoint_grpc_service_config.json | 19 + .../v1alpha/allocation_endpoint_v1alpha.yaml | 10 + google/cloud/gaming/v1/BUILD.bazel | 33 +- google/cloud/gaming/v1/common.proto | 11 +- .../gaming/v1/game_server_clusters.proto | 138 +- .../v1/game_server_clusters_service.proto | 2 +- .../cloud/gaming/v1/game_server_configs.proto | 18 +- .../v1/game_server_configs_service.proto | 2 +- .../gaming/v1/game_server_deployments.proto | 42 +- .../v1/game_server_deployments_service.proto | 2 +- google/cloud/gaming/v1/gameservices_v1.yaml | 44 +- .../gaming/v1/gaming_grpc_service_config.json | 16 +- google/cloud/gaming/v1/realms.proto | 22 +- google/cloud/gaming/v1/realms_service.proto | 2 +- google/cloud/gaming/v1beta/BUILD.bazel | 12 +- google/cloud/gaming/v1beta/common.proto | 6 +- google/cloud/gkebackup/logging/v1/BUILD.bazel | 184 + .../gkebackup/logging/v1/logged_backup.proto | 74 + .../logging/v1/logged_backup_plan.proto | 109 + .../gkebackup/logging/v1/logged_common.proto | 54 + .../gkebackup/logging/v1/logged_restore.proto | 70 + .../logging/v1/logged_restore_plan.proto | 234 + .../cloud/gkebackup/logging/v1/logging.proto | 143 + google/cloud/gkeconnect/gateway/BUILD.bazel | 40 + .../cloud/gkeconnect/gateway/v1/BUILD.bazel | 191 + .../gateway/v1/connectgateway_v1.yaml | 12 + .../v1/connectgw_grpc_service_config.json | 15 + .../cloud/gkeconnect/gateway/v1/gateway.proto | 38 + .../gkeconnect/gateway/v1alpha1/BUILD.bazel | 175 + .../v1alpha1/connectgateway_v1alpha1.yaml | 12 + .../connectgw_grpc_service_config.json | 15 + .../gkeconnect/gateway/v1alpha1/gateway.proto | 38 + .../gkeconnect/gateway/v1beta1/BUILD.bazel | 341 + .../v1beta1/connectgateway_v1beta1.yaml | 24 + .../connectgw_grpc_service_config.json | 15 + .../gkeconnect/gateway/v1beta1/gateway.proto | 75 + google/cloud/gkehub/BUILD.bazel | 40 + google/cloud/gkehub/v1/BUILD.bazel | 372 + .../gkehub/v1/configmanagement/BUILD.bazel | 162 + .../configmanagement/configmanagement.proto | 383 + google/cloud/gkehub/v1/feature.proto | 199 + google/cloud/gkehub/v1/gkehub_v1.yaml | 111 + google/cloud/gkehub/v1/membership.proto | 293 + .../gkehub/v1/multiclusteringress/BUILD.bazel | 161 + .../multiclusteringress.proto | 35 + google/cloud/gkehub/v1/service.proto | 627 + .../gkehub/v1/v1_grpc_service_config.json | 13 + google/cloud/gkehub/v1alpha/BUILD.bazel | 376 + .../v1alpha/cloudauditlogging/BUILD.bazel | 145 + .../cloudauditlogging/cloudauditlogging.proto | 37 + .../v1alpha/configmanagement/BUILD.bazel | 146 + .../configmanagement/configmanagement.proto | 416 + google/cloud/gkehub/v1alpha/feature.proto | 216 + .../cloud/gkehub/v1alpha/gkehub_v1alpha.yaml | 111 + .../cloud/gkehub/v1alpha/metering/BUILD.bazel | 146 + .../gkehub/v1alpha/metering/metering.proto | 39 + .../v1alpha/multiclusteringress/BUILD.bazel | 145 + .../multiclusteringress.proto | 50 + google/cloud/gkehub/v1alpha/service.proto | 281 + .../gkehub/v1alpha/servicemesh/BUILD.bazel | 147 + .../v1alpha/servicemesh/servicemesh.proto | 115 + .../v1alpha/v1alpha_grpc_service_config.json | 13 + google/cloud/gkehub/v1alpha2/BUILD.bazel | 227 +- .../gkehub/v1alpha2/gkehub_v1alpha2.yaml | 4 +- google/cloud/gkehub/v1alpha2/membership.proto | 74 +- google/cloud/gkehub/v1beta/BUILD.bazel | 373 + .../v1beta/configmanagement/BUILD.bazel | 146 + .../configmanagement/configmanagement.proto | 410 + google/cloud/gkehub/v1beta/feature.proto | 203 + google/cloud/gkehub/v1beta/gkehub_v1beta.yaml | 111 + .../cloud/gkehub/v1beta/metering/BUILD.bazel | 146 + .../gkehub/v1beta/metering/metering.proto | 39 + .../v1beta/multiclusteringress/BUILD.bazel | 145 + .../multiclusteringress.proto | 50 + google/cloud/gkehub/v1beta/service.proto | 281 + .../v1beta/v1beta_grpc_service_config.json | 13 + google/cloud/gkehub/v1beta1/BUILD.bazel | 33 +- .../cloud/gkehub/v1beta1/gkehub_v1beta1.yaml | 4 +- google/cloud/gkehub/v1beta1/membership.proto | 125 +- .../cloud/gsuiteaddons/logging/v1/BUILD.bazel | 176 + .../v1/g_suite_add_ons_log_entry.proto | 45 + google/cloud/gsuiteaddons/v1/BUILD.bazel | 39 +- google/cloud/iap/BUILD.bazel | 40 + google/cloud/iap/v1/BUILD.bazel | 363 + .../cloud/iap/v1/iap_grpc_service_config.json | 15 + google/cloud/iap/v1/iap_v1.yaml | 23 + google/cloud/iap/v1/service.proto | 411 + google/cloud/iap/v1beta1/BUILD.bazel | 342 + .../iap/v1beta1/iap_grpc_service_config.json | 12 + google/cloud/iap/v1beta1/iap_v1beta1.yaml | 17 + google/cloud/iap/v1beta1/service.proto | 71 + google/cloud/identitytoolkit/v2/BUILD.bazel | 364 + .../v2/account_management_service.proto | 142 + .../v2/authentication_service.proto | 113 + .../identitytoolkit_grpc_service_config.json | 15 + .../v2/identitytoolkit_v2.yaml | 37 + .../cloud/identitytoolkit/v2/mfa_info.proto | 92 + google/cloud/ids/BUILD.bazel | 40 + google/cloud/ids/v1/BUILD.bazel | 365 + google/cloud/ids/v1/ids.proto | 297 + google/cloud/ids/v1/ids_gapic.yaml | 17 + .../cloud/ids/v1/ids_grpc_service_config.json | 31 + google/cloud/ids/v1/ids_v1.yaml | 107 + google/cloud/integrations/v1alpha/BUILD.bazel | 168 + .../v1alpha/event_parameter.proto | 37 + .../v1alpha/json_validation.proto | 43 + .../integrations/v1alpha/log_entries.proto | 277 + .../cloud/integrations/v1alpha/product.proto | 37 + .../integrations/v1alpha/task_config.proto | 217 + .../integrations/v1alpha/value_type.proto | 78 + google/cloud/iot/BUILD.bazel | 39 + google/cloud/iot/v1/BUILD.bazel | 27 +- google/cloud/kms/BUILD.bazel | 40 + google/cloud/kms/v1/BUILD.bazel | 6 +- .../cloud/kms/v1/cloudkms_gapic.legacy.yaml | 683 - google/cloud/kms/v1/cloudkms_gapic.yaml | 52 - .../kms/v1/cloudkms_grpc_service_config.json | 12 + google/cloud/kms/v1/cloudkms_v1.yaml | 20 + google/cloud/kms/v1/resources.proto | 66 +- google/cloud/kms/v1/service.proto | 489 +- google/cloud/language/BUILD.bazel | 40 + google/cloud/language/v1/BUILD.bazel | 26 +- google/cloud/language/v1beta1/BUILD.bazel | 1 - google/cloud/language/v1beta2/BUILD.bazel | 8 +- google/cloud/lifesciences/BUILD.bazel | 41 + google/cloud/lifesciences/v2beta/BUILD.bazel | 20 +- .../cloud/lifesciences/v2beta/workflows.proto | 3 + google/cloud/location/BUILD.bazel | 93 +- google/cloud/managedidentities/BUILD.bazel | 40 + google/cloud/managedidentities/v1/BUILD.bazel | 28 +- .../v1/managedidentities_v1.yaml | 61 +- .../managedidentities/v1beta1/BUILD.bazel | 46 +- .../v1beta1/managed_identities_service.proto | 144 +- .../v1beta1/managedidentities_v1beta1.yaml | 61 +- .../managedidentities/v1beta1/resource.proto | 53 +- google/cloud/mediatranslation/BUILD.bazel | 40 + .../mediatranslation/v1alpha1/BUILD.bazel | 6 +- .../mediatranslation/v1beta1/BUILD.bazel | 11 +- google/cloud/memcache/BUILD.bazel | 40 + google/cloud/memcache/v1/BUILD.bazel | 27 +- google/cloud/memcache/v1beta2/BUILD.bazel | 9 +- google/cloud/metastore/BUILD.bazel | 40 + google/cloud/metastore/logging/v1/BUILD.bazel | 27 +- google/cloud/metastore/v1/BUILD.bazel | 29 +- google/cloud/metastore/v1/metastore.proto | 355 +- .../v1/metastore_grpc_service_config.json | 12 + google/cloud/metastore/v1/metastore_v1.yaml | 5 + google/cloud/metastore/v1alpha/BUILD.bazel | 9 +- google/cloud/metastore/v1beta/BUILD.bazel | 9 +- google/cloud/networkconnectivity/BUILD.bazel | 40 + .../cloud/networkconnectivity/v1/BUILD.bazel | 365 + .../cloud/networkconnectivity/v1/common.proto | 56 + google/cloud/networkconnectivity/v1/hub.proto | 626 + .../v1/networkconnectivity_v1.yaml | 116 + ...rkconnectivity_v1_grpc_service_config.json | 26 + .../networkconnectivity/v1alpha1/BUILD.bazel | 20 +- google/cloud/networkmanagement/BUILD.bazel | 39 + google/cloud/networkmanagement/v1/BUILD.bazel | 369 + .../v1/connectivity_test.proto | 225 + ...networkmanagement_grpc_service_config.json | 12 + .../v1/networkmanagement_v1.yaml | 108 + .../networkmanagement/v1/reachability.proto | 275 + google/cloud/networkmanagement/v1/trace.proto | 891 + .../networkmanagement/v1beta1/BUILD.bazel | 348 + .../v1beta1/connectivity_test.proto | 313 + ...networkmanagement_grpc_service_config.json | 12 + .../v1beta1/networkmanagement_v1beta1.yaml | 108 + .../v1beta1/reachability.proto | 270 + .../networkmanagement/v1beta1/trace.proto | 891 + google/cloud/networksecurity/BUILD.bazel | 39 + .../cloud/networksecurity/v1beta1/BUILD.bazel | 354 + .../v1beta1/authorization_policy.proto | 250 + .../v1beta1/client_tls_policy.proto | 161 + .../networksecurity/v1beta1/common.proto | 56 + .../v1beta1/network_security.proto | 201 + .../v1beta1/networksecurity_v1beta1.yaml | 114 + ...ksecurity_v1beta1_grpc_service_config.json | 12 + .../v1beta1/server_tls_policy.proto | 180 + .../cloud/networksecurity/v1beta1/tls.proto | 79 + google/cloud/networkservices/v1/BUILD.bazel | 360 + google/cloud/networkservices/v1/common.proto | 137 + .../networkservices/v1/endpoint_policy.proto | 220 + .../networkservices/v1/network_services.proto | 88 + .../networkservices_grpc_service_config.json | 12 + .../v1/networkservices_v1.yaml | 119 + .../cloud/networkservices/v1beta1/BUILD.bazel | 358 + .../networkservices/v1beta1/common.proto | 137 + .../v1beta1/endpoint_policy.proto | 221 + .../v1beta1/network_services.proto | 88 + .../v1beta1/networkservices_v1beta1.yaml | 101 + ...kservices_v1beta1_grpc_service_config.json | 12 + google/cloud/notebooks/BUILD.bazel | 40 + google/cloud/notebooks/v1/BUILD.bazel | 381 + google/cloud/notebooks/v1/environment.proto | 96 + google/cloud/notebooks/v1/event.proto | 42 + google/cloud/notebooks/v1/execution.proto | 321 + google/cloud/notebooks/v1/instance.proto | 524 + .../cloud/notebooks/v1/instance_config.proto | 35 + .../cloud/notebooks/v1/managed_service.proto | 283 + .../v1/notebooks_grpc_service_config.json | 81 + google/cloud/notebooks/v1/notebooks_v1.yaml | 111 + google/cloud/notebooks/v1/runtime.proto | 538 + google/cloud/notebooks/v1/schedule.proto | 107 + google/cloud/notebooks/v1/service.proto | 933 + google/cloud/notebooks/v1beta1/BUILD.bazel | 9 +- .../orchestration/airflow/service/BUILD.bazel | 39 + .../airflow/service/v1/BUILD.bazel | 368 + .../v1/composer_grpc_service_config.json | 15 + .../airflow/service/v1/composer_v1.yaml | 48 + .../airflow/service/v1/environments.proto | 730 + .../airflow/service/v1/image_versions.proto | 88 + .../airflow/service/v1/operations.proto | 88 + .../airflow/service/v1beta1/BUILD.bazel | 349 + .../v1beta1/composer_grpc_service_config.json | 15 + .../service/v1beta1/composer_v1beta1.yaml | 48 + .../service/v1beta1/environments.proto | 972 + .../service/v1beta1/image_versions.proto | 88 + .../airflow/service/v1beta1/operations.proto | 84 + google/cloud/orgpolicy/BUILD.bazel | 40 + google/cloud/orgpolicy/v1/BUILD.bazel | 35 +- google/cloud/orgpolicy/v2/BUILD.bazel | 27 +- google/cloud/osconfig/BUILD.bazel | 40 + .../osconfig/agentendpoint/v1/BUILD.bazel | 29 +- .../agentendpoint/v1/agentendpoint.proto | 18 +- .../osconfig/agentendpoint/v1/inventory.proto | 50 +- .../osconfig/agentendpoint/v1beta/BUILD.bazel | 9 +- google/cloud/osconfig/v1/BUILD.bazel | 46 +- google/cloud/osconfig/v1/inventory.proto | 162 +- google/cloud/osconfig/v1/os_policy.proto | 548 + .../v1/os_policy_assignment_reports.proto | 296 + .../osconfig/v1/os_policy_assignments.proto | 386 + .../v1/osconfig_grpc_service_config.json | 5 +- .../cloud/osconfig/v1/osconfig_service.proto | 19 +- google/cloud/osconfig/v1/osconfig_v1.yaml | 25 +- .../osconfig/v1/osconfig_zonal_service.proto | 202 + .../cloud/osconfig/v1/patch_deployments.proto | 4 + google/cloud/osconfig/v1/vulnerability.proto | 365 + google/cloud/osconfig/v1alpha/BUILD.bazel | 25 +- google/cloud/osconfig/v1alpha/inventory.proto | 40 +- google/cloud/osconfig/v1beta/BUILD.bazel | 12 +- .../osconfig/v1beta/patch_deployments.proto | 4 + google/cloud/oslogin/BUILD.bazel | 40 + google/cloud/oslogin/common/BUILD.bazel | 44 +- google/cloud/oslogin/v1/BUILD.bazel | 27 +- google/cloud/oslogin/v1beta/BUILD.bazel | 9 +- google/cloud/phishingprotection/BUILD.bazel | 42 + .../phishingprotection/v1beta1/BUILD.bazel | 9 +- google/cloud/policytroubleshooter/BUILD.bazel | 40 + .../cloud/policytroubleshooter/v1/BUILD.bazel | 27 +- google/cloud/privatecatalog/BUILD.bazel | 40 + .../cloud/privatecatalog/v1beta1/BUILD.bazel | 24 +- google/cloud/pubsublite/v1/BUILD.bazel | 23 +- google/cloud/pubsublite/v1/admin.proto | 268 + google/cloud/pubsublite/v1/common.proto | 36 + google/cloud/pubsublite/v1/publisher.proto | 1 + .../v1/pubsublite_grpc_service_config.json | 8 + google/cloud/pubsublite/v1/pubsublite_v1.yaml | 20 + google/cloud/pubsublite/v1/subscriber.proto | 7 +- google/cloud/recaptchaenterprise/BUILD.bazel | 40 + .../cloud/recaptchaenterprise/v1/BUILD.bazel | 30 +- .../v1/recaptchaenterprise.proto | 452 +- .../recaptchaenterprise/v1beta1/BUILD.bazel | 12 +- google/cloud/recommendationengine/BUILD.bazel | 40 + .../recommendationengine/v1beta1/BUILD.bazel | 47 +- google/cloud/recommender/BUILD.bazel | 40 + .../cloud/recommender/logging/v1/BUILD.bazel | 24 +- .../recommender/logging/v1beta1/BUILD.bazel | 6 +- google/cloud/recommender/v1/BUILD.bazel | 42 +- .../cloud/recommender/v1/recommendation.proto | 21 +- .../recommender/v1/recommender_service.proto | 12 +- google/cloud/recommender/v1beta1/BUILD.bazel | 44 +- .../cloud/recommender/v1beta1/insight.proto | 41 +- .../v1beta1/insight_type_config.proto | 85 + .../recommender/v1beta1/recommendation.proto | 73 +- .../v1beta1/recommender_config.proto | 85 + .../v1beta1/recommender_service.proto | 207 +- google/cloud/redis/BUILD.bazel | 40 + google/cloud/redis/v1/BUILD.bazel | 48 +- google/cloud/redis/v1/cloud_redis.proto | 100 +- google/cloud/redis/v1/redis_v1.yaml | 39 +- google/cloud/redis/v1beta1/BUILD.bazel | 55 +- google/cloud/redis/v1beta1/cloud_redis.proto | 306 +- .../v1beta1/redis_grpc_service_config.json | 8 + google/cloud/redis/v1beta1/redis_v1beta1.yaml | 24 + google/cloud/resourcemanager/v2/BUILD.bazel | 27 +- google/cloud/resourcemanager/v3/BUILD.bazel | 34 +- .../v3/cloudresourcemanager_gapic.yaml | 18 - google/cloud/resourcemanager/v3/folders.proto | 3 + .../resourcemanager/v3/organizations.proto | 4 +- .../cloud/resourcemanager/v3/projects.proto | 5 + .../resourcemanager/v3/tag_bindings.proto | 1 + .../cloud/resourcemanager/v3/tag_keys.proto | 1 + .../cloud/resourcemanager/v3/tag_values.proto | 1 + google/cloud/resourcesettings/BUILD.bazel | 39 + google/cloud/resourcesettings/v1/BUILD.bazel | 206 +- .../v1/resource_settings.proto | 5 + .../resourcesettings_grpc_service_config.json | 8 +- google/cloud/retail/BUILD.bazel | 40 + google/cloud/retail/logging/error_log.proto | 129 + google/cloud/retail/v2/BUILD.bazel | 143 +- google/cloud/retail/v2/catalog.proto | 28 +- google/cloud/retail/v2/catalog_service.proto | 119 +- google/cloud/retail/v2/common.proto | 274 +- .../cloud/retail/v2/completion_service.proto | 195 + google/cloud/retail/v2/import_config.proto | 153 +- .../cloud/retail/v2/prediction_service.proto | 65 +- google/cloud/retail/v2/product.proto | 290 +- google/cloud/retail/v2/product_service.proto | 460 +- google/cloud/retail/v2/purge_config.proto | 4 +- .../retail/v2/retail_grpc_service_config.json | 65 +- google/cloud/retail/v2/retail_v2.yaml | 40 +- google/cloud/retail/v2/search_service.proto | 738 + google/cloud/retail/v2/user_event.proto | 123 +- .../cloud/retail/v2/user_event_service.proto | 2 +- google/cloud/retail/v2alpha/BUILD.bazel | 123 +- google/cloud/retail/v2alpha/catalog.proto | 69 +- .../retail/v2alpha/catalog_service.proto | 119 +- google/cloud/retail/v2alpha/common.proto | 311 +- .../retail/v2alpha/completion_service.proto | 196 + .../cloud/retail/v2alpha/export_config.proto | 78 + .../cloud/retail/v2alpha/import_config.proto | 166 +- .../retail/v2alpha/prediction_service.proto | 65 +- google/cloud/retail/v2alpha/product.proto | 302 +- .../retail/v2alpha/product_service.proto | 664 +- .../cloud/retail/v2alpha/purge_config.proto | 4 +- .../v2alpha/retail_grpc_service_config.json | 65 +- .../cloud/retail/v2alpha/retail_v2alpha.yaml | 59 +- .../cloud/retail/v2alpha/search_service.proto | 786 + google/cloud/retail/v2alpha/user_event.proto | 126 +- .../retail/v2alpha/user_event_service.proto | 9 +- google/cloud/retail/v2beta/BUILD.bazel | 123 +- google/cloud/retail/v2beta/catalog.proto | 28 +- .../cloud/retail/v2beta/catalog_service.proto | 119 +- google/cloud/retail/v2beta/common.proto | 282 +- .../retail/v2beta/completion_service.proto | 195 + .../cloud/retail/v2beta/export_config.proto | 78 + .../cloud/retail/v2beta/import_config.proto | 166 +- .../retail/v2beta/prediction_service.proto | 65 +- google/cloud/retail/v2beta/product.proto | 300 +- .../cloud/retail/v2beta/product_service.proto | 469 +- google/cloud/retail/v2beta/purge_config.proto | 4 +- .../v2beta/retail_grpc_service_config.json | 65 +- google/cloud/retail/v2beta/retail_v2beta.yaml | 59 +- .../cloud/retail/v2beta/search_service.proto | 744 + google/cloud/retail/v2beta/user_event.proto | 124 +- .../retail/v2beta/user_event_service.proto | 9 +- .../management/logs/v1/BUILD.bazel | 33 +- .../v1/notification_service_payload.proto | 66 + .../logs/v1/saas_instance_payload.proto | 2 +- google/cloud/scheduler/BUILD.bazel | 40 + google/cloud/scheduler/v1/BUILD.bazel | 27 +- google/cloud/scheduler/v1beta1/BUILD.bazel | 9 +- google/cloud/secretmanager/BUILD.bazel | 40 + .../secretmanager/logging/v1/BUILD.bazel | 24 +- google/cloud/secretmanager/v1/BUILD.bazel | 27 +- .../v1/secretmanager_grpc_service_config.json | 7 +- .../secretmanager/v1/secretmanager_v1.yaml | 25 + google/cloud/secretmanager/v1/service.proto | 14 + google/cloud/secrets/v1beta1/BUILD.bazel | 9 +- google/cloud/security/privateca/BUILD.bazel | 41 + .../cloud/security/privateca/v1/BUILD.bazel | 50 +- .../security/privateca/v1/privateca_v1.yaml | 4 +- .../security/privateca/v1/resources.proto | 31 +- .../cloud/security/privateca/v1/service.proto | 4 +- .../security/privateca/v1beta1/BUILD.bazel | 12 +- .../privateca/v1beta1/resources.proto | 10 +- google/cloud/securitycenter/BUILD.bazel | 40 + .../settings/v1beta1/BUILD.bazel | 9 +- google/cloud/securitycenter/v1/BUILD.bazel | 54 +- .../securitycenter/v1/external_system.proto | 59 + google/cloud/securitycenter/v1/finding.proto | 69 + .../cloud/securitycenter/v1/indicator.proto | 40 + .../cloud/securitycenter/v1/mute_config.proto | 90 + google/cloud/securitycenter/v1/resource.proto | 6 + .../v1/securitycenter_service.proto | 366 +- .../securitycenter/v1/securitycenter_v1.yaml | 3 + .../securitycenter/v1/vulnerability.proto | 215 + .../cloud/securitycenter/v1beta1/BUILD.bazel | 9 +- .../securitycenter/v1p1beta1/BUILD.bazel | 9 +- .../v1p1beta1/securitycenter_service.proto | 2 +- google/cloud/servicedirectory/BUILD.bazel | 40 + google/cloud/servicedirectory/v1/BUILD.bazel | 32 +- .../cloud/servicedirectory/v1/endpoint.proto | 2 +- .../cloud/servicedirectory/v1/namespace.proto | 2 +- .../cloud/servicedirectory/v1/service.proto | 2 +- .../servicedirectory/v1beta1/BUILD.bazel | 34 +- .../servicedirectory/v1beta1/endpoint.proto | 72 +- .../v1beta1/lookup_service.proto | 45 +- .../servicedirectory/v1beta1/namespace.proto | 15 +- .../v1beta1/registration_service.proto | 206 +- .../servicedirectory/v1beta1/service.proto | 44 +- .../v1beta1/servicedirectory_v1beta1.yaml | 25 +- google/cloud/shell/BUILD.bazel | 40 + google/cloud/shell/v1/BUILD.bazel | 34 +- google/cloud/speech/BUILD.bazel | 40 + google/cloud/speech/v1/BUILD.bazel | 32 +- google/cloud/speech/v1/cloud_speech.proto | 159 +- google/cloud/speech/v1/resource.proto | 140 + google/cloud/speech/v1/speech_v1.yaml | 4 - google/cloud/speech/v1p1beta1/BUILD.bazel | 9 +- .../cloud/speech/v1p1beta1/cloud_speech.proto | 32 +- .../v1p1beta1/cloud_speech_adaptation.proto | 110 +- google/cloud/speech/v1p1beta1/resource.proto | 40 +- google/cloud/sql/v1/BUILD.bazel | 378 + .../cloud/sql/v1/cloud_sql_backup_runs.proto | 257 + google/cloud/sql/v1/cloud_sql_connect.proto | 125 + google/cloud/sql/v1/cloud_sql_databases.proto | 152 + google/cloud/sql/v1/cloud_sql_flags.proto | 126 + .../sql/v1/cloud_sql_instance_names.proto | 34 + google/cloud/sql/v1/cloud_sql_instances.proto | 1219 + .../cloud/sql/v1/cloud_sql_operations.proto | 89 + google/cloud/sql/v1/cloud_sql_resources.proto | 1197 + google/cloud/sql/v1/cloud_sql_ssl_certs.proto | 143 + google/cloud/sql/v1/cloud_sql_tiers.proto | 78 + google/cloud/sql/v1/cloud_sql_users.proto | 195 + .../sql/v1/sqladmin_grpc_service_config.json | 15 + google/cloud/sql/v1/sqladmin_v1.yaml | 114 + google/cloud/sql/v1beta4/BUILD.bazel | 359 +- google/cloud/sql/v1beta4/cloud_sql.proto | 47 +- .../cloud/sql/v1beta4/cloud_sql_connect.proto | 129 + .../sql/v1beta4/cloud_sql_resources.proto | 709 +- .../cloud/sql/v1beta4/cloud_sql_tiers.proto | 5 +- .../cloud/sql/v1beta4/cloud_sql_users.proto | 40 +- .../cloud/sql/v1beta4/sqladmin_v1beta4.yaml | 19 +- google/cloud/talent/BUILD.bazel | 40 + google/cloud/talent/v4/BUILD.bazel | 28 +- google/cloud/talent/v4/common.proto | 15 +- google/cloud/talent/v4/company.proto | 2 +- google/cloud/talent/v4/company_service.proto | 2 +- .../cloud/talent/v4/completion_service.proto | 2 +- google/cloud/talent/v4/event.proto | 2 +- google/cloud/talent/v4/event_service.proto | 2 +- google/cloud/talent/v4/filters.proto | 22 +- google/cloud/talent/v4/histogram.proto | 2 +- google/cloud/talent/v4/job.proto | 13 +- google/cloud/talent/v4/job_service.proto | 94 +- google/cloud/talent/v4/tenant.proto | 2 +- google/cloud/talent/v4/tenant_service.proto | 2 +- google/cloud/talent/v4beta1/BUILD.bazel | 10 +- google/cloud/talent/v4beta1/job.proto | 2 +- google/cloud/talent/v4beta1/job_service.proto | 2 +- google/cloud/talent/v4beta1/jobs_v4beta1.yaml | 5 + .../talent/v4beta1/profile_service.proto | 2 +- google/cloud/tasks/BUILD.bazel | 40 + google/cloud/tasks/v2/BUILD.bazel | 27 +- google/cloud/tasks/v2/target.proto | 4 +- google/cloud/tasks/v2beta2/BUILD.bazel | 9 +- google/cloud/tasks/v2beta3/BUILD.bazel | 9 +- google/cloud/tasks/v2beta3/target.proto | 4 +- google/cloud/texttospeech/BUILD.bazel | 40 + google/cloud/texttospeech/v1/BUILD.bazel | 31 +- google/cloud/texttospeech/v1/cloud_tts.proto | 28 +- .../v1/texttospeech_grpc_service_config.json | 13 +- google/cloud/texttospeech/v1beta1/BUILD.bazel | 31 +- .../texttospeech/v1beta1/cloud_tts.proto | 50 +- google/cloud/tpu/BUILD.bazel | 40 + google/cloud/tpu/v1/BUILD.bazel | 36 +- google/cloud/tpu/v2alpha1/BUILD.bazel | 342 + google/cloud/tpu/v2alpha1/cloud_tpu.proto | 782 + google/cloud/tpu/v2alpha1/tpu.yaml | 82 + .../tpu/v2alpha1/tpu_grpc_service_config.json | 9 + google/cloud/translate/BUILD.bazel | 41 + google/cloud/translate/v3/BUILD.bazel | 59 +- .../v3/translate_grpc_service_config.json | 8 + google/cloud/translate/v3/translate_v3.yaml | 43 + .../translate/v3/translation_service.proto | 596 +- google/cloud/translate/v3beta1/BUILD.bazel | 25 +- .../v3beta1/translation_service.proto | 59 +- .../video/livestream/logging/v1/BUILD.bazel | 179 + .../video/livestream/logging/v1/logs.proto | 155 + google/cloud/video/livestream/v1/BUILD.bazel | 352 + .../v1/livestream_grpc_service_config.json | 35 + .../video/livestream/v1/livestream_v1.yaml | 65 + .../cloud/video/livestream/v1/outputs.proto | 398 + .../cloud/video/livestream/v1/resources.proto | 406 + .../cloud/video/livestream/v1/service.proto | 719 + google/cloud/video/transcoder/BUILD.bazel | 40 + google/cloud/video/transcoder/v1/BUILD.bazel | 361 + .../cloud/video/transcoder/v1/resources.proto | 1063 + .../cloud/video/transcoder/v1/services.proto | 281 + .../v1/transcoder_grpc_service_config.json | 26 + .../video/transcoder/v1/transcoder_v1.yaml | 24 + .../video/transcoder/v1beta1/BUILD.bazel | 21 +- .../video/transcoder/v1beta1/resources.proto | 192 +- .../video/transcoder/v1beta1/services.proto | 3 +- .../v1beta1/transcoder_v1beta1.yaml | 5 + google/cloud/videointelligence/BUILD.bazel | 40 + google/cloud/videointelligence/v1/BUILD.bazel | 28 +- .../videointelligence/v1beta2/BUILD.bazel | 9 +- .../videointelligence/v1p1beta1/BUILD.bazel | 9 +- .../videointelligence/v1p2beta1/BUILD.bazel | 9 +- .../videointelligence/v1p3beta1/BUILD.bazel | 20 +- .../v1p3beta1/video_intelligence.proto | 1 + google/cloud/vision/BUILD.bazel | 40 + google/cloud/vision/v1/BUILD.bazel | 11 +- google/cloud/vision/v1p1beta1/BUILD.bazel | 9 +- google/cloud/vision/v1p2beta1/BUILD.bazel | 9 +- google/cloud/vision/v1p3beta1/BUILD.bazel | 9 +- google/cloud/vision/v1p4beta1/BUILD.bazel | 20 +- google/cloud/vmmigration/BUILD.bazel | 40 + google/cloud/vmmigration/v1/BUILD.bazel | 373 + google/cloud/vmmigration/v1/vmmigration.proto | 2656 + .../cloud/vmmigration/v1/vmmigration_v1.yaml | 105 + .../vmmigration_v1_grpc_service_config.json | 34 + google/cloud/vpcaccess/BUILD.bazel | 40 + google/cloud/vpcaccess/v1/BUILD.bazel | 38 +- google/cloud/webrisk/BUILD.bazel | 41 + google/cloud/webrisk/v1/BUILD.bazel | 27 +- google/cloud/webrisk/v1beta1/BUILD.bazel | 9 +- google/cloud/websecurityscanner/BUILD.bazel | 39 + .../cloud/websecurityscanner/v1/BUILD.bazel | 27 +- .../websecurityscanner/v1alpha/BUILD.bazel | 9 +- .../websecurityscanner/v1beta/BUILD.bazel | 9 +- google/cloud/workflows/BUILD.bazel | 40 + google/cloud/workflows/executions/BUILD.bazel | 40 + .../cloud/workflows/executions/v1/BUILD.bazel | 50 +- .../workflows/executions/v1/executions.proto | 65 +- .../v1/executions_grpc_service_config.json | 2 +- .../executions/v1/workflowexecutions_v1.yaml | 2 +- .../workflows/executions/v1beta/BUILD.bazel | 10 +- google/cloud/workflows/type/BUILD.bazel | 178 + google/cloud/workflows/type/engine_call.proto | 105 + .../workflows/type/executions_system.proto | 87 + google/cloud/workflows/v1/BUILD.bazel | 49 +- google/cloud/workflows/v1/workflows.proto | 22 +- .../v1/workflows_grpc_service_config.json | 2 +- google/cloud/workflows/v1/workflows_v1.yaml | 35 +- google/cloud/workflows/v1beta/BUILD.bazel | 11 +- .../workflows/v1beta/workflows_v1beta.yaml | 36 + google/container/BUILD.bazel | 40 + google/container/v1/BUILD.bazel | 58 +- google/container/v1/cluster_service.proto | 664 +- google/container/v1/container_v1.yaml | 10 +- google/container/v1alpha1/BUILD.bazel | 178 + google/container/v1beta1/BUILD.bazel | 55 +- .../container/v1beta1/cluster_service.proto | 732 +- .../container/v1beta1/container_v1beta1.yaml | 7 +- google/dataflow/BUILD.bazel | 41 + google/dataflow/v1beta3/BUILD.bazel | 361 + .../v1beta3/dataflow_grpc_service_config.json | 24 + google/dataflow/v1beta3/dataflow_v1beta3.yaml | 75 + google/dataflow/v1beta3/environment.proto | 550 + google/dataflow/v1beta3/jobs.proto | 888 + google/dataflow/v1beta3/messages.proto | 233 + google/dataflow/v1beta3/metrics.proto | 357 + google/dataflow/v1beta3/snapshots.proto | 167 + google/dataflow/v1beta3/streaming.proto | 231 + google/dataflow/v1beta3/templates.proto | 584 + google/datastore/admin/v1/BUILD.bazel | 58 +- .../datastore/admin/v1/datastore_admin.proto | 57 +- .../admin/v1/datastore_admin_v1.yaml | 49 - google/datastore/admin/v1/datastore_v1.yaml | 3 + google/datastore/admin/v1/migration.proto | 42 + google/datastore/v1/BUILD.bazel | 28 +- google/devtools/artifactregistry/BUILD.bazel | 40 + .../devtools/artifactregistry/v1/BUILD.bazel | 370 + .../artifactregistry/v1/artifact.proto | 106 + .../artifactregistry_grpc_service_config.json | 12 + .../v1/artifactregistry_v1.yaml | 69 + .../artifactregistry/v1/repository.proto | 129 + .../artifactregistry/v1/service.proto | 75 + .../artifactregistry/v1beta2/BUILD.bazel | 15 +- .../v1beta2/apt_artifact.proto | 117 + .../v1beta2/artifactregistry_v1beta2.yaml | 98 +- .../artifactregistry/v1beta2/file.proto | 10 +- .../artifactregistry/v1beta2/repository.proto | 92 +- .../artifactregistry/v1beta2/service.proto | 65 +- .../artifactregistry/v1beta2/settings.proto | 57 +- .../artifactregistry/v1beta2/tag.proto | 16 +- .../artifactregistry/v1beta2/version.proto | 50 +- .../v1beta2/yum_artifact.proto | 109 + google/devtools/build/v1/BUILD.bazel | 27 +- google/devtools/cloudbuild/BUILD.bazel | 40 + google/devtools/cloudbuild/v1/BUILD.bazel | 30 +- .../devtools/cloudbuild/v1/cloudbuild.proto | 788 +- .../devtools/cloudbuild/v1/cloudbuild_v1.yaml | 13 +- google/devtools/clouddebugger/v2/BUILD.bazel | 39 +- .../clouderrorreporting/v1beta1/BUILD.bazel | 9 +- google/devtools/cloudprofiler/BUILD.bazel | 39 + google/devtools/cloudprofiler/v2/BUILD.bazel | 27 +- google/devtools/cloudtrace/v1/BUILD.bazel | 9 +- google/devtools/cloudtrace/v2/BUILD.bazel | 9 +- google/devtools/containeranalysis/BUILD.bazel | 40 + .../devtools/containeranalysis/v1/BUILD.bazel | 106 +- .../v1/containeranalysis.proto | 31 +- .../v1/containeranalysis_v1.yaml | 6 - .../remoteworkers/v1test2/BUILD.bazel | 9 +- google/devtools/resultstore/v2/BUILD.bazel | 24 +- google/devtools/source/v1/BUILD.bazel | 67 +- google/devtools/testing/v1/BUILD.bazel | 365 + .../testing/v1/application_details.proto | 97 + .../v1/test_environment_discovery.proto | 478 + .../devtools/testing/v1/test_execution.proto | 1269 + .../v1/testing_grpc_service_config.json | 18 + google/devtools/testing/v1/testing_v1.yaml | 39 + google/example/endpointsapis/README.md | 3 - google/example/endpointsapis/goapp/main.go | 8 +- google/example/library/v1/BUILD.bazel | 26 +- google/example/library/v1/library.proto | 2 +- google/example/showcase/v1/compliance.proto | 167 + google/example/showcase/v1/echo.proto | 229 + google/example/showcase/v1/sequence.proto | 138 + .../v1/showcase_grpc_service_config.json | 90 + google/example/showcase/v1/testing.proto | 392 + .../example/showcase/v1beta1/compliance.proto | 168 + google/example/showcase/v1beta1/echo.proto | 229 + .../example/showcase/v1beta1/sequence.proto | 138 + .../v1beta1/showcase_grpc_service_config.json | 90 + google/example/showcase/v1beta1/testing.proto | 392 + .../example/showcase/v1beta2/compliance.proto | 168 + google/example/showcase/v1beta2/echo.proto | 229 + .../example/showcase/v1beta2/sequence.proto | 138 + .../v1beta2/showcase_grpc_service_config.json | 90 + google/example/showcase/v1beta2/testing.proto | 392 + .../example/showcase/v1beta3/compliance.proto | 167 + google/example/showcase/v1beta3/echo.proto | 229 + .../example/showcase/v1beta3/sequence.proto | 138 + .../v1beta3/showcase_grpc_service_config.json | 90 + google/example/showcase/v1beta3/testing.proto | 392 + google/firestore/admin/v1/BUILD.bazel | 60 +- google/firestore/admin/v1/database.proto | 98 + google/firestore/admin/v1/field.proto | 8 +- .../firestore/admin/v1/firestore_admin.proto | 118 +- google/firestore/admin/v1/firestore_v1.yaml | 21 + google/firestore/admin/v1/index.proto | 5 +- google/firestore/admin/v1/location.proto | 3 +- google/firestore/admin/v1/operation.proto | 25 +- google/firestore/bundle/BUILD.bazel | 19 +- google/firestore/v1/BUILD.bazel | 27 +- google/firestore/v1beta1/BUILD.bazel | 9 +- google/geo/type/BUILD.bazel | 18 +- google/home/enterprise/sdm/v1/BUILD.bazel | 9 +- google/home/graph/v1/BUILD.bazel | 9 +- google/iam/admin/v1/BUILD.bazel | 9 +- google/iam/admin/v1/audit_data.proto | 2 + google/iam/admin/v1/iam.proto | 2 + google/iam/credentials/BUILD.bazel | 39 + google/iam/credentials/v1/BUILD.bazel | 14 +- google/iam/v1/BUILD.bazel | 62 +- google/iam/v1/logging/BUILD.bazel | 20 + google/iam/v1beta/BUILD.bazel | 9 +- .../identity/accesscontextmanager/BUILD.bazel | 39 + .../accesscontextmanager/type/BUILD.bazel | 35 +- .../accesscontextmanager/v1/BUILD.bazel | 241 +- .../v1/access_context_manager.proto | 942 + .../v1/access_level.proto | 14 +- .../v1/access_policy.proto | 12 +- ...esscontextmanager_grpc_service_config.json | 12 + .../v1/accesscontextmanager_v1.yaml | 42 + .../v1/gcp_user_access_binding.proto | 69 + .../v1/service_perimeter.proto | 321 +- google/logging/type/BUILD.bazel | 30 +- google/logging/v2/BUILD.bazel | 9 +- google/longrunning/BUILD.bazel | 60 +- .../maps/fleetengine/delivery/v1/BUILD.bazel | 349 + .../delivery/v1/delivery_api.proto | 431 + .../delivery/v1/delivery_vehicles.proto | 210 + .../fleetengine/delivery/v1/fleetengine.yaml | 35 + .../maps/fleetengine/delivery/v1/tasks.proto | 197 + google/maps/fleetengine/v1/BUILD.bazel | 347 + google/maps/fleetengine/v1/fleetengine.proto | 292 + google/maps/fleetengine/v1/fleetengine.yaml | 22 + .../v1/fleetengine_grpc_service_config.json | 46 + google/maps/fleetengine/v1/header.proto | 103 + google/maps/fleetengine/v1/traffic.proto | 67 + google/maps/fleetengine/v1/trip_api.proto | 339 + google/maps/fleetengine/v1/trips.proto | 302 + google/maps/fleetengine/v1/vehicle_api.proto | 692 + google/maps/fleetengine/v1/vehicles.proto | 334 + google/maps/playablelocations/v3/BUILD.bazel | 9 +- .../playablelocations/v3/sample/BUILD.bazel | 5 +- google/maps/roads/v1op/BUILD.bazel | 9 +- google/maps/routes/v1/BUILD.bazel | 5 +- .../v1/compute_custom_routes_request.proto | 4 +- .../v1/compute_custom_routes_response.proto | 3 +- .../routes/v1/compute_routes_request.proto | 88 +- google/maps/routes/v1/route_service.proto | 41 + google/maps/routes/v1/routespreferred.yaml | 6 +- google/maps/routes/v1/toll_passes.proto | 8 + google/maps/routes/v1/waypoint.proto | 1 + google/maps/routes/v1alpha/BUILD.bazel | 6 +- google/maps/unity/BUILD.bazel | 5 +- google/monitoring/BUILD.bazel | 40 + google/monitoring/dashboard/BUILD.bazel | 40 + google/monitoring/dashboard/v1/BUILD.bazel | 16 +- .../monitoring/dashboard/v1/alertchart.proto | 41 + google/monitoring/dashboard/v1/common.proto | 1 + .../monitoring/dashboard/v1/dashboard.proto | 1 + .../dashboard/v1/dashboards_service.proto | 17 +- .../monitoring/dashboard/v1/drilldowns.proto | 1 + google/monitoring/dashboard/v1/layouts.proto | 1 + google/monitoring/dashboard/v1/metrics.proto | 12 +- .../monitoring/dashboard/v1/monitoring.yaml | 2 +- .../monitoring/dashboard/v1/scorecard.proto | 7 +- google/monitoring/dashboard/v1/service.proto | 1 + google/monitoring/dashboard/v1/text.proto | 1 + google/monitoring/dashboard/v1/widget.proto | 5 + google/monitoring/dashboard/v1/xychart.proto | 15 +- google/monitoring/metricsscope/BUILD.bazel | 40 + google/monitoring/metricsscope/v1/BUILD.bazel | 369 + .../metricsscope/v1/metrics_scope.proto | 77 + .../metricsscope/v1/metrics_scopes.proto | 183 + .../v1/metricsscopes_grpc_service_config.json | 23 + .../metricsscope/v1/monitoring.yaml | 52 + .../metricsscope/v1/monitoring_gapic.yaml | 17 + google/monitoring/v3/BUILD.bazel | 17 +- google/monitoring/v3/alert.proto | 57 +- google/monitoring/v3/alert_service.proto | 6 +- google/monitoring/v3/common.proto | 4 +- google/monitoring/v3/group_service.proto | 6 +- google/monitoring/v3/metric.proto | 4 +- google/monitoring/v3/metric_service.proto | 44 +- google/monitoring/v3/monitoring.yaml | 22 +- .../v3/monitoring_grpc_service_config.json | 46 +- .../monitoring/v3/notification_service.proto | 12 +- google/monitoring/v3/service.proto | 27 +- google/monitoring/v3/service_service.proto | 6 +- google/monitoring/v3/span_context.proto | 4 +- google/monitoring/v3/uptime.proto | 49 +- google/monitoring/v3/uptime_service.proto | 7 +- .../trafficdirector/type/BUILD.bazel | 173 + .../type/traffic_director_log_entry.proto | 101 + google/partner/aistreams/v1alpha1/BUILD.bazel | 9 +- google/privacy/dlp/BUILD.bazel | 40 + google/privacy/dlp/v2/BUILD.bazel | 27 +- google/privacy/dlp/v2/dlp.proto | 126 +- google/privacy/dlp/v2/storage.proto | 41 +- google/pubsub/v1/BUILD.bazel | 3 +- google/pubsub/v1/pubsub.proto | 36 +- google/pubsub/v1/pubsub_gapic.yaml | 272 - google/pubsub/v1/pubsub_v1.yaml | 5 + google/pubsub/v1/schema.proto | 4 +- google/rpc/BUILD.bazel | 18 +- google/rpc/context/BUILD.bazel | 17 +- .../logging/v1/BUILD.bazel | 6 +- google/spanner/admin/database/v1/BUILD.bazel | 13 +- google/spanner/admin/database/v1/backup.proto | 5 +- google/spanner/admin/database/v1/common.proto | 15 +- .../database/v1/spanner_database_admin.proto | 26 +- google/spanner/admin/instance/v1/BUILD.bazel | 13 +- .../instance/v1/spanner_instance_admin.proto | 9 + google/spanner/v1/BUILD.bazel | 11 +- google/spanner/v1/commit_response.proto | 6 +- google/spanner/v1/keys.proto | 2 +- google/spanner/v1/mutation.proto | 4 +- google/spanner/v1/query_plan.proto | 38 +- google/spanner/v1/result_set.proto | 3 +- google/spanner/v1/spanner.proto | 34 +- google/spanner/v1/transaction.proto | 52 +- google/spanner/v1/type.proto | 38 +- google/storage/v1/BUILD.bazel | 10 +- google/storage/v2/BUILD.bazel | 362 + google/storage/v2/storage.proto | 2144 + .../v2/storage_grpc_service_config.json | 15 + google/storage/v2/storage_v2.yaml | 35 + google/storagetransfer/BUILD.bazel | 39 + google/storagetransfer/v1/BUILD.bazel | 376 + .../storagetransfer_grpc_service_config.json | 12 + .../v1/storagetransfer_v1.yaml | 80 + google/storagetransfer/v1/transfer.proto | 147 +- .../storagetransfer/v1/transfer_types.proto | 611 +- google/streetview/publish/v1/BUILD.bazel | 75 +- google/streetview/publish/v1/resources.proto | 138 +- .../streetview/publish/v1/rpcmessages.proto | 86 +- .../publish/v1/streetview_publish.proto | 77 +- .../publish/v1/streetviewpublish.yaml | 29 + google/type/BUILD.bazel | 33 +- grafeas/BUILD.bazel | 39 + grafeas/v1/BUILD.bazel | 167 +- grafeas/v1/attestation.proto | 17 + grafeas/v1/build.proto | 14 +- grafeas/v1/common.proto | 22 +- grafeas/v1/compliance.proto | 79 + grafeas/v1/cvss.proto | 75 + grafeas/v1/discovery.proto | 5 + grafeas/v1/dsse_attestation.proto | 52 + grafeas/v1/grafeas.proto | 13 + grafeas/v1/intoto_provenance.proto | 113 + grafeas/v1/intoto_statement.proto | 50 + grafeas/v1/package.proto | 10 +- grafeas/v1/severity.proto | 38 + grafeas/v1/slsa_provenance.proto | 114 + grafeas/v1/vulnerability.proto | 50 +- repository_rules.bzl | 75 +- storage/clouddms/logging/v1/BUILD.bazel | 167 - .../v1/clouddms_stackdriver_logs.proto | 374 - 4788 files changed, 417684 insertions(+), 206289 deletions(-) delete mode 100644 gapic/lang/common.yaml delete mode 100644 gapic/lang/csharp_gapic.yaml delete mode 100644 gapic/lang/doc.yaml delete mode 100644 gapic/lang/go_gapic.yaml delete mode 100644 gapic/lang/java_gapic.yaml delete mode 100644 gapic/lang/nodejs_doc.yaml delete mode 100644 gapic/lang/nodejs_gapic.yaml delete mode 100644 gapic/lang/php_gapic.yaml delete mode 100644 gapic/lang/python_doc.yaml delete mode 100644 gapic/lang/python_gapic.yaml delete mode 100644 gapic/lang/ruby_doc.yaml delete mode 100644 gapic/lang/ruby_gapic.yaml delete mode 100644 gapic/packaging/api_defaults.yaml delete mode 100644 gapic/packaging/common_protos.yaml delete mode 100644 gapic/packaging/dependencies.yaml delete mode 100644 google/ads/googleads/v4/BUILD.bazel delete mode 100644 google/ads/googleads/v4/common/BUILD.bazel delete mode 100644 google/ads/googleads/v4/common/ad_asset.proto delete mode 100644 google/ads/googleads/v4/common/ad_type_infos.proto delete mode 100644 google/ads/googleads/v4/common/asset_types.proto delete mode 100644 google/ads/googleads/v4/common/bidding.proto delete mode 100644 google/ads/googleads/v4/common/click_location.proto delete mode 100644 google/ads/googleads/v4/common/criteria.proto delete mode 100644 google/ads/googleads/v4/common/criterion_category_availability.proto delete mode 100644 google/ads/googleads/v4/common/custom_parameter.proto delete mode 100644 google/ads/googleads/v4/common/dates.proto delete mode 100644 google/ads/googleads/v4/common/explorer_auto_optimizer_setting.proto delete mode 100644 google/ads/googleads/v4/common/extensions.proto delete mode 100644 google/ads/googleads/v4/common/feed_common.proto delete mode 100644 google/ads/googleads/v4/common/final_app_url.proto delete mode 100644 google/ads/googleads/v4/common/frequency_cap.proto delete mode 100644 google/ads/googleads/v4/common/keyword_plan_common.proto delete mode 100644 google/ads/googleads/v4/common/matching_function.proto delete mode 100644 google/ads/googleads/v4/common/metrics.proto delete mode 100644 google/ads/googleads/v4/common/offline_user_data.proto delete mode 100644 google/ads/googleads/v4/common/policy.proto delete mode 100644 google/ads/googleads/v4/common/real_time_bidding_setting.proto delete mode 100644 google/ads/googleads/v4/common/segments.proto delete mode 100644 google/ads/googleads/v4/common/simulation.proto delete mode 100644 google/ads/googleads/v4/common/tag_snippet.proto delete mode 100644 google/ads/googleads/v4/common/targeting_setting.proto delete mode 100644 google/ads/googleads/v4/common/text_label.proto delete mode 100644 google/ads/googleads/v4/common/url_collection.proto delete mode 100644 google/ads/googleads/v4/common/user_lists.proto delete mode 100644 google/ads/googleads/v4/common/value.proto delete mode 100644 google/ads/googleads/v4/enums/access_reason.proto delete mode 100644 google/ads/googleads/v4/enums/access_role.proto delete mode 100644 google/ads/googleads/v4/enums/account_budget_proposal_status.proto delete mode 100644 google/ads/googleads/v4/enums/account_budget_proposal_type.proto delete mode 100644 google/ads/googleads/v4/enums/account_budget_status.proto delete mode 100644 google/ads/googleads/v4/enums/account_link_status.proto delete mode 100644 google/ads/googleads/v4/enums/ad_customizer_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/ad_group_ad_rotation_mode.proto delete mode 100644 google/ads/googleads/v4/enums/ad_group_ad_status.proto delete mode 100644 google/ads/googleads/v4/enums/ad_group_criterion_approval_status.proto delete mode 100644 google/ads/googleads/v4/enums/ad_group_criterion_status.proto delete mode 100644 google/ads/googleads/v4/enums/ad_group_status.proto delete mode 100644 google/ads/googleads/v4/enums/ad_group_type.proto delete mode 100644 google/ads/googleads/v4/enums/ad_network_type.proto delete mode 100644 google/ads/googleads/v4/enums/ad_serving_optimization_status.proto delete mode 100644 google/ads/googleads/v4/enums/ad_strength.proto delete mode 100644 google/ads/googleads/v4/enums/ad_type.proto delete mode 100644 google/ads/googleads/v4/enums/advertising_channel_sub_type.proto delete mode 100644 google/ads/googleads/v4/enums/advertising_channel_type.proto delete mode 100644 google/ads/googleads/v4/enums/affiliate_location_feed_relationship_type.proto delete mode 100644 google/ads/googleads/v4/enums/affiliate_location_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/age_range_type.proto delete mode 100644 google/ads/googleads/v4/enums/app_campaign_app_store.proto delete mode 100644 google/ads/googleads/v4/enums/app_campaign_bidding_strategy_goal_type.proto delete mode 100644 google/ads/googleads/v4/enums/app_payment_model_type.proto delete mode 100644 google/ads/googleads/v4/enums/app_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/app_store.proto delete mode 100644 google/ads/googleads/v4/enums/app_url_operating_system_type.proto delete mode 100644 google/ads/googleads/v4/enums/asset_field_type.proto delete mode 100644 google/ads/googleads/v4/enums/asset_performance_label.proto delete mode 100644 google/ads/googleads/v4/enums/asset_type.proto delete mode 100644 google/ads/googleads/v4/enums/attribution_model.proto delete mode 100644 google/ads/googleads/v4/enums/batch_job_status.proto delete mode 100644 google/ads/googleads/v4/enums/bid_modifier_source.proto delete mode 100644 google/ads/googleads/v4/enums/bidding_source.proto delete mode 100644 google/ads/googleads/v4/enums/bidding_strategy_status.proto delete mode 100644 google/ads/googleads/v4/enums/bidding_strategy_type.proto delete mode 100644 google/ads/googleads/v4/enums/billing_setup_status.proto delete mode 100644 google/ads/googleads/v4/enums/brand_safety_suitability.proto delete mode 100644 google/ads/googleads/v4/enums/budget_delivery_method.proto delete mode 100644 google/ads/googleads/v4/enums/budget_period.proto delete mode 100644 google/ads/googleads/v4/enums/budget_status.proto delete mode 100644 google/ads/googleads/v4/enums/budget_type.proto delete mode 100644 google/ads/googleads/v4/enums/call_conversion_reporting_state.proto delete mode 100644 google/ads/googleads/v4/enums/call_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/callout_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/campaign_criterion_status.proto delete mode 100644 google/ads/googleads/v4/enums/campaign_draft_status.proto delete mode 100644 google/ads/googleads/v4/enums/campaign_experiment_status.proto delete mode 100644 google/ads/googleads/v4/enums/campaign_experiment_traffic_split_type.proto delete mode 100644 google/ads/googleads/v4/enums/campaign_experiment_type.proto delete mode 100644 google/ads/googleads/v4/enums/campaign_serving_status.proto delete mode 100644 google/ads/googleads/v4/enums/campaign_shared_set_status.proto delete mode 100644 google/ads/googleads/v4/enums/campaign_status.proto delete mode 100644 google/ads/googleads/v4/enums/change_status_operation.proto delete mode 100644 google/ads/googleads/v4/enums/change_status_resource_type.proto delete mode 100644 google/ads/googleads/v4/enums/click_type.proto delete mode 100644 google/ads/googleads/v4/enums/content_label_type.proto delete mode 100644 google/ads/googleads/v4/enums/conversion_action_category.proto delete mode 100644 google/ads/googleads/v4/enums/conversion_action_counting_type.proto delete mode 100644 google/ads/googleads/v4/enums/conversion_action_status.proto delete mode 100644 google/ads/googleads/v4/enums/conversion_action_type.proto delete mode 100644 google/ads/googleads/v4/enums/conversion_adjustment_type.proto delete mode 100644 google/ads/googleads/v4/enums/conversion_attribution_event_type.proto delete mode 100644 google/ads/googleads/v4/enums/conversion_lag_bucket.proto delete mode 100644 google/ads/googleads/v4/enums/conversion_or_adjustment_lag_bucket.proto delete mode 100644 google/ads/googleads/v4/enums/criterion_category_channel_availability_mode.proto delete mode 100644 google/ads/googleads/v4/enums/criterion_category_locale_availability_mode.proto delete mode 100644 google/ads/googleads/v4/enums/criterion_system_serving_status.proto delete mode 100644 google/ads/googleads/v4/enums/criterion_type.proto delete mode 100644 google/ads/googleads/v4/enums/custom_interest_member_type.proto delete mode 100644 google/ads/googleads/v4/enums/custom_interest_status.proto delete mode 100644 google/ads/googleads/v4/enums/custom_interest_type.proto delete mode 100644 google/ads/googleads/v4/enums/custom_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/customer_match_upload_key_type.proto delete mode 100644 google/ads/googleads/v4/enums/customer_pay_per_conversion_eligibility_failure_reason.proto delete mode 100644 google/ads/googleads/v4/enums/data_driven_model_status.proto delete mode 100644 google/ads/googleads/v4/enums/day_of_week.proto delete mode 100644 google/ads/googleads/v4/enums/device.proto delete mode 100644 google/ads/googleads/v4/enums/display_ad_format_setting.proto delete mode 100644 google/ads/googleads/v4/enums/display_upload_product_type.proto delete mode 100644 google/ads/googleads/v4/enums/distance_bucket.proto delete mode 100644 google/ads/googleads/v4/enums/dsa_page_feed_criterion_field.proto delete mode 100644 google/ads/googleads/v4/enums/education_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/extension_setting_device.proto delete mode 100644 google/ads/googleads/v4/enums/extension_type.proto delete mode 100644 google/ads/googleads/v4/enums/external_conversion_source.proto delete mode 100644 google/ads/googleads/v4/enums/feed_attribute_type.proto delete mode 100644 google/ads/googleads/v4/enums/feed_item_quality_approval_status.proto delete mode 100644 google/ads/googleads/v4/enums/feed_item_quality_disapproval_reason.proto delete mode 100644 google/ads/googleads/v4/enums/feed_item_status.proto delete mode 100644 google/ads/googleads/v4/enums/feed_item_target_device.proto delete mode 100644 google/ads/googleads/v4/enums/feed_item_target_status.proto delete mode 100644 google/ads/googleads/v4/enums/feed_item_target_type.proto delete mode 100644 google/ads/googleads/v4/enums/feed_item_validation_status.proto delete mode 100644 google/ads/googleads/v4/enums/feed_link_status.proto delete mode 100644 google/ads/googleads/v4/enums/feed_mapping_criterion_type.proto delete mode 100644 google/ads/googleads/v4/enums/feed_mapping_status.proto delete mode 100644 google/ads/googleads/v4/enums/feed_origin.proto delete mode 100644 google/ads/googleads/v4/enums/feed_status.proto delete mode 100644 google/ads/googleads/v4/enums/flight_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/frequency_cap_event_type.proto delete mode 100644 google/ads/googleads/v4/enums/frequency_cap_level.proto delete mode 100644 google/ads/googleads/v4/enums/frequency_cap_time_unit.proto delete mode 100644 google/ads/googleads/v4/enums/gender_type.proto delete mode 100644 google/ads/googleads/v4/enums/geo_target_constant_status.proto delete mode 100644 google/ads/googleads/v4/enums/geo_targeting_restriction.proto delete mode 100644 google/ads/googleads/v4/enums/geo_targeting_type.proto delete mode 100644 google/ads/googleads/v4/enums/google_ads_field_category.proto delete mode 100644 google/ads/googleads/v4/enums/google_ads_field_data_type.proto delete mode 100644 google/ads/googleads/v4/enums/hotel_date_selection_type.proto delete mode 100644 google/ads/googleads/v4/enums/hotel_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/hotel_price_bucket.proto delete mode 100644 google/ads/googleads/v4/enums/hotel_rate_type.proto delete mode 100644 google/ads/googleads/v4/enums/income_range_type.proto delete mode 100644 google/ads/googleads/v4/enums/interaction_event_type.proto delete mode 100644 google/ads/googleads/v4/enums/interaction_type.proto delete mode 100644 google/ads/googleads/v4/enums/invoice_type.proto delete mode 100644 google/ads/googleads/v4/enums/job_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/keyword_match_type.proto delete mode 100644 google/ads/googleads/v4/enums/keyword_plan_competition_level.proto delete mode 100644 google/ads/googleads/v4/enums/keyword_plan_forecast_interval.proto delete mode 100644 google/ads/googleads/v4/enums/keyword_plan_network.proto delete mode 100644 google/ads/googleads/v4/enums/label_status.proto delete mode 100644 google/ads/googleads/v4/enums/legacy_app_install_ad_app_store.proto delete mode 100644 google/ads/googleads/v4/enums/linked_account_type.proto delete mode 100644 google/ads/googleads/v4/enums/listing_group_type.proto delete mode 100644 google/ads/googleads/v4/enums/local_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/location_extension_targeting_criterion_field.proto delete mode 100644 google/ads/googleads/v4/enums/location_group_radius_units.proto delete mode 100644 google/ads/googleads/v4/enums/location_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/location_source_type.proto delete mode 100644 google/ads/googleads/v4/enums/manager_link_status.proto delete mode 100644 google/ads/googleads/v4/enums/matching_function_context_type.proto delete mode 100644 google/ads/googleads/v4/enums/matching_function_operator.proto delete mode 100644 google/ads/googleads/v4/enums/media_type.proto delete mode 100644 google/ads/googleads/v4/enums/merchant_center_link_status.proto delete mode 100644 google/ads/googleads/v4/enums/message_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/mime_type.proto delete mode 100644 google/ads/googleads/v4/enums/minute_of_hour.proto delete mode 100644 google/ads/googleads/v4/enums/mobile_app_vendor.proto delete mode 100644 google/ads/googleads/v4/enums/mobile_device_type.proto delete mode 100644 google/ads/googleads/v4/enums/month_of_year.proto delete mode 100644 google/ads/googleads/v4/enums/negative_geo_target_type.proto delete mode 100644 google/ads/googleads/v4/enums/offline_user_data_job_failure_reason.proto delete mode 100644 google/ads/googleads/v4/enums/offline_user_data_job_status.proto delete mode 100644 google/ads/googleads/v4/enums/offline_user_data_job_type.proto delete mode 100644 google/ads/googleads/v4/enums/operating_system_version_operator_type.proto delete mode 100644 google/ads/googleads/v4/enums/optimization_goal_type.proto delete mode 100644 google/ads/googleads/v4/enums/page_one_promoted_strategy_goal.proto delete mode 100644 google/ads/googleads/v4/enums/parental_status_type.proto delete mode 100644 google/ads/googleads/v4/enums/payment_mode.proto delete mode 100644 google/ads/googleads/v4/enums/placeholder_type.proto delete mode 100644 google/ads/googleads/v4/enums/placement_type.proto delete mode 100644 google/ads/googleads/v4/enums/policy_approval_status.proto delete mode 100644 google/ads/googleads/v4/enums/policy_review_status.proto delete mode 100644 google/ads/googleads/v4/enums/policy_topic_entry_type.proto delete mode 100644 google/ads/googleads/v4/enums/policy_topic_evidence_destination_mismatch_url_type.proto delete mode 100644 google/ads/googleads/v4/enums/policy_topic_evidence_destination_not_working_device.proto delete mode 100644 google/ads/googleads/v4/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto delete mode 100644 google/ads/googleads/v4/enums/positive_geo_target_type.proto delete mode 100644 google/ads/googleads/v4/enums/preferred_content_type.proto delete mode 100644 google/ads/googleads/v4/enums/price_extension_price_qualifier.proto delete mode 100644 google/ads/googleads/v4/enums/price_extension_price_unit.proto delete mode 100644 google/ads/googleads/v4/enums/price_extension_type.proto delete mode 100644 google/ads/googleads/v4/enums/price_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/product_bidding_category_level.proto delete mode 100644 google/ads/googleads/v4/enums/product_bidding_category_status.proto delete mode 100644 google/ads/googleads/v4/enums/product_channel.proto delete mode 100644 google/ads/googleads/v4/enums/product_channel_exclusivity.proto delete mode 100644 google/ads/googleads/v4/enums/product_condition.proto delete mode 100644 google/ads/googleads/v4/enums/product_custom_attribute_index.proto delete mode 100644 google/ads/googleads/v4/enums/product_type_level.proto delete mode 100644 google/ads/googleads/v4/enums/promotion_extension_discount_modifier.proto delete mode 100644 google/ads/googleads/v4/enums/promotion_extension_occasion.proto delete mode 100644 google/ads/googleads/v4/enums/promotion_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/proximity_radius_units.proto delete mode 100644 google/ads/googleads/v4/enums/quality_score_bucket.proto delete mode 100644 google/ads/googleads/v4/enums/reach_plan_ad_length.proto delete mode 100644 google/ads/googleads/v4/enums/reach_plan_age_range.proto delete mode 100644 google/ads/googleads/v4/enums/reach_plan_network.proto delete mode 100644 google/ads/googleads/v4/enums/real_estate_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/recommendation_type.proto delete mode 100644 google/ads/googleads/v4/enums/search_engine_results_page_type.proto delete mode 100644 google/ads/googleads/v4/enums/search_term_match_type.proto delete mode 100644 google/ads/googleads/v4/enums/search_term_targeting_status.proto delete mode 100644 google/ads/googleads/v4/enums/served_asset_field_type.proto delete mode 100644 google/ads/googleads/v4/enums/shared_set_status.proto delete mode 100644 google/ads/googleads/v4/enums/shared_set_type.proto delete mode 100644 google/ads/googleads/v4/enums/simulation_modification_method.proto delete mode 100644 google/ads/googleads/v4/enums/simulation_type.proto delete mode 100644 google/ads/googleads/v4/enums/sitelink_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/slot.proto delete mode 100644 google/ads/googleads/v4/enums/spending_limit_type.proto delete mode 100644 google/ads/googleads/v4/enums/structured_snippet_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/summary_row_setting.proto delete mode 100644 google/ads/googleads/v4/enums/system_managed_entity_source.proto delete mode 100644 google/ads/googleads/v4/enums/target_cpa_opt_in_recommendation_goal.proto delete mode 100644 google/ads/googleads/v4/enums/target_impression_share_location.proto delete mode 100644 google/ads/googleads/v4/enums/targeting_dimension.proto delete mode 100644 google/ads/googleads/v4/enums/time_type.proto delete mode 100644 google/ads/googleads/v4/enums/tracking_code_page_format.proto delete mode 100644 google/ads/googleads/v4/enums/tracking_code_type.proto delete mode 100644 google/ads/googleads/v4/enums/travel_placeholder_field.proto delete mode 100644 google/ads/googleads/v4/enums/user_interest_taxonomy_type.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_access_status.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_closing_reason.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_combined_rule_operator.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_crm_data_source_type.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_date_rule_item_operator.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_logical_rule_operator.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_membership_status.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_number_rule_item_operator.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_prepopulation_status.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_rule_type.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_size_range.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_string_rule_item_operator.proto delete mode 100644 google/ads/googleads/v4/enums/user_list_type.proto delete mode 100644 google/ads/googleads/v4/enums/vanity_pharma_display_url_mode.proto delete mode 100644 google/ads/googleads/v4/enums/vanity_pharma_text.proto delete mode 100644 google/ads/googleads/v4/enums/webpage_condition_operand.proto delete mode 100644 google/ads/googleads/v4/enums/webpage_condition_operator.proto delete mode 100644 google/ads/googleads/v4/errors/BUILD.bazel delete mode 100644 google/ads/googleads/v4/errors/access_invitation_error.proto delete mode 100644 google/ads/googleads/v4/errors/account_budget_proposal_error.proto delete mode 100644 google/ads/googleads/v4/errors/account_link_error.proto delete mode 100644 google/ads/googleads/v4/errors/ad_customizer_error.proto delete mode 100644 google/ads/googleads/v4/errors/ad_error.proto delete mode 100644 google/ads/googleads/v4/errors/ad_group_ad_error.proto delete mode 100644 google/ads/googleads/v4/errors/ad_group_bid_modifier_error.proto delete mode 100644 google/ads/googleads/v4/errors/ad_group_criterion_error.proto delete mode 100644 google/ads/googleads/v4/errors/ad_group_error.proto delete mode 100644 google/ads/googleads/v4/errors/ad_group_feed_error.proto delete mode 100644 google/ads/googleads/v4/errors/ad_parameter_error.proto delete mode 100644 google/ads/googleads/v4/errors/ad_sharing_error.proto delete mode 100644 google/ads/googleads/v4/errors/adx_error.proto delete mode 100644 google/ads/googleads/v4/errors/asset_error.proto delete mode 100644 google/ads/googleads/v4/errors/asset_link_error.proto delete mode 100644 google/ads/googleads/v4/errors/authentication_error.proto delete mode 100644 google/ads/googleads/v4/errors/authorization_error.proto delete mode 100644 google/ads/googleads/v4/errors/batch_job_error.proto delete mode 100644 google/ads/googleads/v4/errors/bidding_error.proto delete mode 100644 google/ads/googleads/v4/errors/bidding_strategy_error.proto delete mode 100644 google/ads/googleads/v4/errors/billing_setup_error.proto delete mode 100644 google/ads/googleads/v4/errors/campaign_budget_error.proto delete mode 100644 google/ads/googleads/v4/errors/campaign_criterion_error.proto delete mode 100644 google/ads/googleads/v4/errors/campaign_draft_error.proto delete mode 100644 google/ads/googleads/v4/errors/campaign_error.proto delete mode 100644 google/ads/googleads/v4/errors/campaign_experiment_error.proto delete mode 100644 google/ads/googleads/v4/errors/campaign_feed_error.proto delete mode 100644 google/ads/googleads/v4/errors/campaign_shared_set_error.proto delete mode 100644 google/ads/googleads/v4/errors/change_status_error.proto delete mode 100644 google/ads/googleads/v4/errors/collection_size_error.proto delete mode 100644 google/ads/googleads/v4/errors/context_error.proto delete mode 100644 google/ads/googleads/v4/errors/conversion_action_error.proto delete mode 100644 google/ads/googleads/v4/errors/conversion_adjustment_upload_error.proto delete mode 100644 google/ads/googleads/v4/errors/conversion_upload_error.proto delete mode 100644 google/ads/googleads/v4/errors/country_code_error.proto delete mode 100644 google/ads/googleads/v4/errors/criterion_error.proto delete mode 100644 google/ads/googleads/v4/errors/currency_code_error.proto delete mode 100644 google/ads/googleads/v4/errors/custom_interest_error.proto delete mode 100644 google/ads/googleads/v4/errors/customer_client_link_error.proto delete mode 100644 google/ads/googleads/v4/errors/customer_error.proto delete mode 100644 google/ads/googleads/v4/errors/customer_feed_error.proto delete mode 100644 google/ads/googleads/v4/errors/customer_manager_link_error.proto delete mode 100644 google/ads/googleads/v4/errors/database_error.proto delete mode 100644 google/ads/googleads/v4/errors/date_error.proto delete mode 100644 google/ads/googleads/v4/errors/date_range_error.proto delete mode 100644 google/ads/googleads/v4/errors/distinct_error.proto delete mode 100644 google/ads/googleads/v4/errors/enum_error.proto delete mode 100644 google/ads/googleads/v4/errors/errors.proto delete mode 100644 google/ads/googleads/v4/errors/extension_feed_item_error.proto delete mode 100644 google/ads/googleads/v4/errors/extension_setting_error.proto delete mode 100644 google/ads/googleads/v4/errors/feed_attribute_reference_error.proto delete mode 100644 google/ads/googleads/v4/errors/feed_error.proto delete mode 100644 google/ads/googleads/v4/errors/feed_item_error.proto delete mode 100644 google/ads/googleads/v4/errors/feed_item_target_error.proto delete mode 100644 google/ads/googleads/v4/errors/feed_item_validation_error.proto delete mode 100644 google/ads/googleads/v4/errors/feed_mapping_error.proto delete mode 100644 google/ads/googleads/v4/errors/field_error.proto delete mode 100644 google/ads/googleads/v4/errors/field_mask_error.proto delete mode 100644 google/ads/googleads/v4/errors/function_error.proto delete mode 100644 google/ads/googleads/v4/errors/function_parsing_error.proto delete mode 100644 google/ads/googleads/v4/errors/geo_target_constant_suggestion_error.proto delete mode 100644 google/ads/googleads/v4/errors/header_error.proto delete mode 100644 google/ads/googleads/v4/errors/id_error.proto delete mode 100644 google/ads/googleads/v4/errors/image_error.proto delete mode 100644 google/ads/googleads/v4/errors/internal_error.proto delete mode 100644 google/ads/googleads/v4/errors/invoice_error.proto delete mode 100644 google/ads/googleads/v4/errors/keyword_plan_ad_group_error.proto delete mode 100644 google/ads/googleads/v4/errors/keyword_plan_ad_group_keyword_error.proto delete mode 100644 google/ads/googleads/v4/errors/keyword_plan_campaign_error.proto delete mode 100644 google/ads/googleads/v4/errors/keyword_plan_campaign_keyword_error.proto delete mode 100644 google/ads/googleads/v4/errors/keyword_plan_error.proto delete mode 100644 google/ads/googleads/v4/errors/keyword_plan_idea_error.proto delete mode 100644 google/ads/googleads/v4/errors/label_error.proto delete mode 100644 google/ads/googleads/v4/errors/language_code_error.proto delete mode 100644 google/ads/googleads/v4/errors/list_operation_error.proto delete mode 100644 google/ads/googleads/v4/errors/manager_link_error.proto delete mode 100644 google/ads/googleads/v4/errors/media_bundle_error.proto delete mode 100644 google/ads/googleads/v4/errors/media_file_error.proto delete mode 100644 google/ads/googleads/v4/errors/media_upload_error.proto delete mode 100644 google/ads/googleads/v4/errors/multiplier_error.proto delete mode 100644 google/ads/googleads/v4/errors/mutate_error.proto delete mode 100644 google/ads/googleads/v4/errors/new_resource_creation_error.proto delete mode 100644 google/ads/googleads/v4/errors/not_empty_error.proto delete mode 100644 google/ads/googleads/v4/errors/not_whitelisted_error.proto delete mode 100644 google/ads/googleads/v4/errors/null_error.proto delete mode 100644 google/ads/googleads/v4/errors/offline_user_data_job_error.proto delete mode 100644 google/ads/googleads/v4/errors/operation_access_denied_error.proto delete mode 100644 google/ads/googleads/v4/errors/operator_error.proto delete mode 100644 google/ads/googleads/v4/errors/partial_failure_error.proto delete mode 100644 google/ads/googleads/v4/errors/payments_account_error.proto delete mode 100644 google/ads/googleads/v4/errors/policy_finding_error.proto delete mode 100644 google/ads/googleads/v4/errors/policy_validation_parameter_error.proto delete mode 100644 google/ads/googleads/v4/errors/policy_violation_error.proto delete mode 100644 google/ads/googleads/v4/errors/query_error.proto delete mode 100644 google/ads/googleads/v4/errors/quota_error.proto delete mode 100644 google/ads/googleads/v4/errors/range_error.proto delete mode 100644 google/ads/googleads/v4/errors/reach_plan_error.proto delete mode 100644 google/ads/googleads/v4/errors/recommendation_error.proto delete mode 100644 google/ads/googleads/v4/errors/region_code_error.proto delete mode 100644 google/ads/googleads/v4/errors/request_error.proto delete mode 100644 google/ads/googleads/v4/errors/resource_access_denied_error.proto delete mode 100644 google/ads/googleads/v4/errors/resource_count_limit_exceeded_error.proto delete mode 100644 google/ads/googleads/v4/errors/setting_error.proto delete mode 100644 google/ads/googleads/v4/errors/shared_criterion_error.proto delete mode 100644 google/ads/googleads/v4/errors/shared_set_error.proto delete mode 100644 google/ads/googleads/v4/errors/size_limit_error.proto delete mode 100644 google/ads/googleads/v4/errors/string_format_error.proto delete mode 100644 google/ads/googleads/v4/errors/string_length_error.proto delete mode 100644 google/ads/googleads/v4/errors/third_party_app_analytics_link_error.proto delete mode 100644 google/ads/googleads/v4/errors/time_zone_error.proto delete mode 100644 google/ads/googleads/v4/errors/url_field_error.proto delete mode 100644 google/ads/googleads/v4/errors/user_data_error.proto delete mode 100644 google/ads/googleads/v4/errors/user_list_error.proto delete mode 100644 google/ads/googleads/v4/errors/youtube_video_registration_error.proto delete mode 100644 google/ads/googleads/v4/googleads_gapic.yaml delete mode 100644 google/ads/googleads/v4/googleads_grpc_service_config.json delete mode 100644 google/ads/googleads/v4/googleads_v4.yaml delete mode 100644 google/ads/googleads/v4/resources/BUILD.bazel delete mode 100644 google/ads/googleads/v4/resources/account_budget.proto delete mode 100644 google/ads/googleads/v4/resources/account_budget_proposal.proto delete mode 100644 google/ads/googleads/v4/resources/account_link.proto delete mode 100644 google/ads/googleads/v4/resources/ad.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_ad.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_ad_asset_view.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_ad_label.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_audience_view.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_bid_modifier.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_criterion.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_criterion_label.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_criterion_simulation.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_extension_setting.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_feed.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_label.proto delete mode 100644 google/ads/googleads/v4/resources/ad_group_simulation.proto delete mode 100644 google/ads/googleads/v4/resources/ad_parameter.proto delete mode 100644 google/ads/googleads/v4/resources/ad_schedule_view.proto delete mode 100644 google/ads/googleads/v4/resources/age_range_view.proto delete mode 100644 google/ads/googleads/v4/resources/asset.proto delete mode 100644 google/ads/googleads/v4/resources/batch_job.proto delete mode 100644 google/ads/googleads/v4/resources/bidding_strategy.proto delete mode 100644 google/ads/googleads/v4/resources/billing_setup.proto delete mode 100644 google/ads/googleads/v4/resources/campaign.proto delete mode 100644 google/ads/googleads/v4/resources/campaign_audience_view.proto delete mode 100644 google/ads/googleads/v4/resources/campaign_bid_modifier.proto delete mode 100644 google/ads/googleads/v4/resources/campaign_budget.proto delete mode 100644 google/ads/googleads/v4/resources/campaign_criterion.proto delete mode 100644 google/ads/googleads/v4/resources/campaign_criterion_simulation.proto delete mode 100644 google/ads/googleads/v4/resources/campaign_draft.proto delete mode 100644 google/ads/googleads/v4/resources/campaign_experiment.proto delete mode 100644 google/ads/googleads/v4/resources/campaign_extension_setting.proto delete mode 100644 google/ads/googleads/v4/resources/campaign_feed.proto delete mode 100644 google/ads/googleads/v4/resources/campaign_label.proto delete mode 100644 google/ads/googleads/v4/resources/campaign_shared_set.proto delete mode 100644 google/ads/googleads/v4/resources/carrier_constant.proto delete mode 100644 google/ads/googleads/v4/resources/change_status.proto delete mode 100644 google/ads/googleads/v4/resources/click_view.proto delete mode 100644 google/ads/googleads/v4/resources/conversion_action.proto delete mode 100644 google/ads/googleads/v4/resources/currency_constant.proto delete mode 100644 google/ads/googleads/v4/resources/custom_interest.proto delete mode 100644 google/ads/googleads/v4/resources/customer.proto delete mode 100644 google/ads/googleads/v4/resources/customer_client.proto delete mode 100644 google/ads/googleads/v4/resources/customer_client_link.proto delete mode 100644 google/ads/googleads/v4/resources/customer_extension_setting.proto delete mode 100644 google/ads/googleads/v4/resources/customer_feed.proto delete mode 100644 google/ads/googleads/v4/resources/customer_label.proto delete mode 100644 google/ads/googleads/v4/resources/customer_manager_link.proto delete mode 100644 google/ads/googleads/v4/resources/customer_negative_criterion.proto delete mode 100644 google/ads/googleads/v4/resources/detail_placement_view.proto delete mode 100644 google/ads/googleads/v4/resources/display_keyword_view.proto delete mode 100644 google/ads/googleads/v4/resources/distance_view.proto delete mode 100644 google/ads/googleads/v4/resources/domain_category.proto delete mode 100644 google/ads/googleads/v4/resources/dynamic_search_ads_search_term_view.proto delete mode 100644 google/ads/googleads/v4/resources/expanded_landing_page_view.proto delete mode 100644 google/ads/googleads/v4/resources/extension_feed_item.proto delete mode 100644 google/ads/googleads/v4/resources/feed.proto delete mode 100644 google/ads/googleads/v4/resources/feed_item.proto delete mode 100644 google/ads/googleads/v4/resources/feed_item_target.proto delete mode 100644 google/ads/googleads/v4/resources/feed_mapping.proto delete mode 100644 google/ads/googleads/v4/resources/feed_placeholder_view.proto delete mode 100644 google/ads/googleads/v4/resources/gender_view.proto delete mode 100644 google/ads/googleads/v4/resources/geo_target_constant.proto delete mode 100644 google/ads/googleads/v4/resources/geographic_view.proto delete mode 100644 google/ads/googleads/v4/resources/google_ads_field.proto delete mode 100644 google/ads/googleads/v4/resources/group_placement_view.proto delete mode 100644 google/ads/googleads/v4/resources/hotel_group_view.proto delete mode 100644 google/ads/googleads/v4/resources/hotel_performance_view.proto delete mode 100644 google/ads/googleads/v4/resources/income_range_view.proto delete mode 100644 google/ads/googleads/v4/resources/invoice.proto delete mode 100644 google/ads/googleads/v4/resources/keyword_plan.proto delete mode 100644 google/ads/googleads/v4/resources/keyword_plan_ad_group.proto delete mode 100644 google/ads/googleads/v4/resources/keyword_plan_ad_group_keyword.proto delete mode 100644 google/ads/googleads/v4/resources/keyword_plan_campaign.proto delete mode 100644 google/ads/googleads/v4/resources/keyword_plan_campaign_keyword.proto delete mode 100644 google/ads/googleads/v4/resources/keyword_view.proto delete mode 100644 google/ads/googleads/v4/resources/label.proto delete mode 100644 google/ads/googleads/v4/resources/landing_page_view.proto delete mode 100644 google/ads/googleads/v4/resources/language_constant.proto delete mode 100644 google/ads/googleads/v4/resources/location_view.proto delete mode 100644 google/ads/googleads/v4/resources/managed_placement_view.proto delete mode 100644 google/ads/googleads/v4/resources/media_file.proto delete mode 100644 google/ads/googleads/v4/resources/merchant_center_link.proto delete mode 100644 google/ads/googleads/v4/resources/mobile_app_category_constant.proto delete mode 100644 google/ads/googleads/v4/resources/mobile_device_constant.proto delete mode 100644 google/ads/googleads/v4/resources/offline_user_data_job.proto delete mode 100644 google/ads/googleads/v4/resources/operating_system_version_constant.proto delete mode 100644 google/ads/googleads/v4/resources/paid_organic_search_term_view.proto delete mode 100644 google/ads/googleads/v4/resources/parental_status_view.proto delete mode 100644 google/ads/googleads/v4/resources/payments_account.proto delete mode 100644 google/ads/googleads/v4/resources/product_bidding_category_constant.proto delete mode 100644 google/ads/googleads/v4/resources/product_group_view.proto delete mode 100644 google/ads/googleads/v4/resources/recommendation.proto delete mode 100644 google/ads/googleads/v4/resources/remarketing_action.proto delete mode 100644 google/ads/googleads/v4/resources/search_term_view.proto delete mode 100644 google/ads/googleads/v4/resources/shared_criterion.proto delete mode 100644 google/ads/googleads/v4/resources/shared_set.proto delete mode 100644 google/ads/googleads/v4/resources/shopping_performance_view.proto delete mode 100644 google/ads/googleads/v4/resources/third_party_app_analytics_link.proto delete mode 100644 google/ads/googleads/v4/resources/topic_constant.proto delete mode 100644 google/ads/googleads/v4/resources/topic_view.proto delete mode 100644 google/ads/googleads/v4/resources/user_interest.proto delete mode 100644 google/ads/googleads/v4/resources/user_list.proto delete mode 100644 google/ads/googleads/v4/resources/user_location_view.proto delete mode 100644 google/ads/googleads/v4/resources/video.proto delete mode 100644 google/ads/googleads/v4/services/BUILD.bazel delete mode 100644 google/ads/googleads/v4/services/account_budget_proposal_service.proto delete mode 100644 google/ads/googleads/v4/services/account_budget_service.proto delete mode 100644 google/ads/googleads/v4/services/account_link_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_ad_asset_view_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_ad_label_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_ad_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_audience_view_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_bid_modifier_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_criterion_label_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_criterion_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_criterion_simulation_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_extension_setting_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_feed_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_label_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_group_simulation_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_parameter_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_schedule_view_service.proto delete mode 100644 google/ads/googleads/v4/services/ad_service.proto delete mode 100644 google/ads/googleads/v4/services/age_range_view_service.proto delete mode 100644 google/ads/googleads/v4/services/asset_service.proto delete mode 100644 google/ads/googleads/v4/services/batch_job_service.proto delete mode 100644 google/ads/googleads/v4/services/bidding_strategy_service.proto delete mode 100644 google/ads/googleads/v4/services/billing_setup_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_audience_view_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_bid_modifier_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_budget_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_criterion_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_criterion_simulation_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_draft_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_experiment_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_extension_setting_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_feed_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_label_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_service.proto delete mode 100644 google/ads/googleads/v4/services/campaign_shared_set_service.proto delete mode 100644 google/ads/googleads/v4/services/carrier_constant_service.proto delete mode 100644 google/ads/googleads/v4/services/change_status_service.proto delete mode 100644 google/ads/googleads/v4/services/click_view_service.proto delete mode 100644 google/ads/googleads/v4/services/conversion_action_service.proto delete mode 100644 google/ads/googleads/v4/services/conversion_adjustment_upload_service.proto delete mode 100644 google/ads/googleads/v4/services/conversion_upload_service.proto delete mode 100644 google/ads/googleads/v4/services/currency_constant_service.proto delete mode 100644 google/ads/googleads/v4/services/custom_interest_service.proto delete mode 100644 google/ads/googleads/v4/services/customer_client_link_service.proto delete mode 100644 google/ads/googleads/v4/services/customer_client_service.proto delete mode 100644 google/ads/googleads/v4/services/customer_extension_setting_service.proto delete mode 100644 google/ads/googleads/v4/services/customer_feed_service.proto delete mode 100644 google/ads/googleads/v4/services/customer_label_service.proto delete mode 100644 google/ads/googleads/v4/services/customer_manager_link_service.proto delete mode 100644 google/ads/googleads/v4/services/customer_negative_criterion_service.proto delete mode 100644 google/ads/googleads/v4/services/customer_service.proto delete mode 100644 google/ads/googleads/v4/services/detail_placement_view_service.proto delete mode 100644 google/ads/googleads/v4/services/display_keyword_view_service.proto delete mode 100644 google/ads/googleads/v4/services/distance_view_service.proto delete mode 100644 google/ads/googleads/v4/services/domain_category_service.proto delete mode 100644 google/ads/googleads/v4/services/dynamic_search_ads_search_term_view_service.proto delete mode 100644 google/ads/googleads/v4/services/expanded_landing_page_view_service.proto delete mode 100644 google/ads/googleads/v4/services/extension_feed_item_service.proto delete mode 100644 google/ads/googleads/v4/services/feed_item_service.proto delete mode 100644 google/ads/googleads/v4/services/feed_item_target_service.proto delete mode 100644 google/ads/googleads/v4/services/feed_mapping_service.proto delete mode 100644 google/ads/googleads/v4/services/feed_placeholder_view_service.proto delete mode 100644 google/ads/googleads/v4/services/feed_service.proto delete mode 100644 google/ads/googleads/v4/services/gender_view_service.proto delete mode 100644 google/ads/googleads/v4/services/geo_target_constant_service.proto delete mode 100644 google/ads/googleads/v4/services/geographic_view_service.proto delete mode 100644 google/ads/googleads/v4/services/google_ads_field_service.proto delete mode 100644 google/ads/googleads/v4/services/google_ads_service.proto delete mode 100644 google/ads/googleads/v4/services/group_placement_view_service.proto delete mode 100644 google/ads/googleads/v4/services/hotel_group_view_service.proto delete mode 100644 google/ads/googleads/v4/services/hotel_performance_view_service.proto delete mode 100644 google/ads/googleads/v4/services/income_range_view_service.proto delete mode 100644 google/ads/googleads/v4/services/invoice_service.proto delete mode 100644 google/ads/googleads/v4/services/keyword_plan_ad_group_keyword_service.proto delete mode 100644 google/ads/googleads/v4/services/keyword_plan_ad_group_service.proto delete mode 100644 google/ads/googleads/v4/services/keyword_plan_campaign_keyword_service.proto delete mode 100644 google/ads/googleads/v4/services/keyword_plan_campaign_service.proto delete mode 100644 google/ads/googleads/v4/services/keyword_plan_idea_service.proto delete mode 100644 google/ads/googleads/v4/services/keyword_plan_service.proto delete mode 100644 google/ads/googleads/v4/services/keyword_view_service.proto delete mode 100644 google/ads/googleads/v4/services/label_service.proto delete mode 100644 google/ads/googleads/v4/services/landing_page_view_service.proto delete mode 100644 google/ads/googleads/v4/services/language_constant_service.proto delete mode 100644 google/ads/googleads/v4/services/location_view_service.proto delete mode 100644 google/ads/googleads/v4/services/managed_placement_view_service.proto delete mode 100644 google/ads/googleads/v4/services/media_file_service.proto delete mode 100644 google/ads/googleads/v4/services/merchant_center_link_service.proto delete mode 100644 google/ads/googleads/v4/services/mobile_app_category_constant_service.proto delete mode 100644 google/ads/googleads/v4/services/mobile_device_constant_service.proto delete mode 100644 google/ads/googleads/v4/services/offline_user_data_job_service.proto delete mode 100644 google/ads/googleads/v4/services/operating_system_version_constant_service.proto delete mode 100644 google/ads/googleads/v4/services/paid_organic_search_term_view_service.proto delete mode 100644 google/ads/googleads/v4/services/parental_status_view_service.proto delete mode 100644 google/ads/googleads/v4/services/payments_account_service.proto delete mode 100644 google/ads/googleads/v4/services/product_bidding_category_constant_service.proto delete mode 100644 google/ads/googleads/v4/services/product_group_view_service.proto delete mode 100644 google/ads/googleads/v4/services/reach_plan_service.proto delete mode 100644 google/ads/googleads/v4/services/recommendation_service.proto delete mode 100644 google/ads/googleads/v4/services/remarketing_action_service.proto delete mode 100644 google/ads/googleads/v4/services/search_term_view_service.proto delete mode 100644 google/ads/googleads/v4/services/shared_criterion_service.proto delete mode 100644 google/ads/googleads/v4/services/shared_set_service.proto delete mode 100644 google/ads/googleads/v4/services/shopping_performance_view_service.proto delete mode 100644 google/ads/googleads/v4/services/third_party_app_analytics_link_service.proto delete mode 100644 google/ads/googleads/v4/services/topic_constant_service.proto delete mode 100644 google/ads/googleads/v4/services/topic_view_service.proto delete mode 100644 google/ads/googleads/v4/services/user_data_service.proto delete mode 100644 google/ads/googleads/v4/services/user_interest_service.proto delete mode 100644 google/ads/googleads/v4/services/user_list_service.proto delete mode 100644 google/ads/googleads/v4/services/user_location_view_service.proto delete mode 100644 google/ads/googleads/v4/services/video_service.proto delete mode 100644 google/ads/googleads/v5/BUILD.bazel delete mode 100644 google/ads/googleads/v5/common/BUILD.bazel delete mode 100644 google/ads/googleads/v5/common/ad_asset.proto delete mode 100644 google/ads/googleads/v5/common/ad_type_infos.proto delete mode 100644 google/ads/googleads/v5/common/asset_types.proto delete mode 100644 google/ads/googleads/v5/common/bidding.proto delete mode 100644 google/ads/googleads/v5/common/click_location.proto delete mode 100644 google/ads/googleads/v5/common/criteria.proto delete mode 100644 google/ads/googleads/v5/common/criterion_category_availability.proto delete mode 100644 google/ads/googleads/v5/common/custom_parameter.proto delete mode 100644 google/ads/googleads/v5/common/dates.proto delete mode 100644 google/ads/googleads/v5/common/explorer_auto_optimizer_setting.proto delete mode 100644 google/ads/googleads/v5/common/extensions.proto delete mode 100644 google/ads/googleads/v5/common/feed_common.proto delete mode 100644 google/ads/googleads/v5/common/final_app_url.proto delete mode 100644 google/ads/googleads/v5/common/frequency_cap.proto delete mode 100644 google/ads/googleads/v5/common/keyword_plan_common.proto delete mode 100644 google/ads/googleads/v5/common/matching_function.proto delete mode 100644 google/ads/googleads/v5/common/metrics.proto delete mode 100644 google/ads/googleads/v5/common/offline_user_data.proto delete mode 100644 google/ads/googleads/v5/common/policy.proto delete mode 100644 google/ads/googleads/v5/common/real_time_bidding_setting.proto delete mode 100644 google/ads/googleads/v5/common/segments.proto delete mode 100644 google/ads/googleads/v5/common/simulation.proto delete mode 100644 google/ads/googleads/v5/common/tag_snippet.proto delete mode 100644 google/ads/googleads/v5/common/targeting_setting.proto delete mode 100644 google/ads/googleads/v5/common/text_label.proto delete mode 100644 google/ads/googleads/v5/common/url_collection.proto delete mode 100644 google/ads/googleads/v5/common/user_lists.proto delete mode 100644 google/ads/googleads/v5/common/value.proto delete mode 100644 google/ads/googleads/v5/enums/access_reason.proto delete mode 100644 google/ads/googleads/v5/enums/access_role.proto delete mode 100644 google/ads/googleads/v5/enums/account_budget_proposal_status.proto delete mode 100644 google/ads/googleads/v5/enums/account_budget_proposal_type.proto delete mode 100644 google/ads/googleads/v5/enums/account_budget_status.proto delete mode 100644 google/ads/googleads/v5/enums/account_link_status.proto delete mode 100644 google/ads/googleads/v5/enums/ad_customizer_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/ad_group_ad_rotation_mode.proto delete mode 100644 google/ads/googleads/v5/enums/ad_group_ad_status.proto delete mode 100644 google/ads/googleads/v5/enums/ad_group_criterion_approval_status.proto delete mode 100644 google/ads/googleads/v5/enums/ad_group_criterion_status.proto delete mode 100644 google/ads/googleads/v5/enums/ad_group_status.proto delete mode 100644 google/ads/googleads/v5/enums/ad_group_type.proto delete mode 100644 google/ads/googleads/v5/enums/ad_network_type.proto delete mode 100644 google/ads/googleads/v5/enums/ad_serving_optimization_status.proto delete mode 100644 google/ads/googleads/v5/enums/ad_strength.proto delete mode 100644 google/ads/googleads/v5/enums/ad_type.proto delete mode 100644 google/ads/googleads/v5/enums/advertising_channel_sub_type.proto delete mode 100644 google/ads/googleads/v5/enums/advertising_channel_type.proto delete mode 100644 google/ads/googleads/v5/enums/affiliate_location_feed_relationship_type.proto delete mode 100644 google/ads/googleads/v5/enums/affiliate_location_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/age_range_type.proto delete mode 100644 google/ads/googleads/v5/enums/app_campaign_app_store.proto delete mode 100644 google/ads/googleads/v5/enums/app_campaign_bidding_strategy_goal_type.proto delete mode 100644 google/ads/googleads/v5/enums/app_payment_model_type.proto delete mode 100644 google/ads/googleads/v5/enums/app_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/app_store.proto delete mode 100644 google/ads/googleads/v5/enums/app_url_operating_system_type.proto delete mode 100644 google/ads/googleads/v5/enums/asset_field_type.proto delete mode 100644 google/ads/googleads/v5/enums/asset_link_status.proto delete mode 100644 google/ads/googleads/v5/enums/asset_performance_label.proto delete mode 100644 google/ads/googleads/v5/enums/asset_type.proto delete mode 100644 google/ads/googleads/v5/enums/attribution_model.proto delete mode 100644 google/ads/googleads/v5/enums/batch_job_status.proto delete mode 100644 google/ads/googleads/v5/enums/bid_modifier_source.proto delete mode 100644 google/ads/googleads/v5/enums/bidding_source.proto delete mode 100644 google/ads/googleads/v5/enums/bidding_strategy_status.proto delete mode 100644 google/ads/googleads/v5/enums/bidding_strategy_type.proto delete mode 100644 google/ads/googleads/v5/enums/billing_setup_status.proto delete mode 100644 google/ads/googleads/v5/enums/brand_safety_suitability.proto delete mode 100644 google/ads/googleads/v5/enums/budget_campaign_association_status.proto delete mode 100644 google/ads/googleads/v5/enums/budget_delivery_method.proto delete mode 100644 google/ads/googleads/v5/enums/budget_period.proto delete mode 100644 google/ads/googleads/v5/enums/budget_status.proto delete mode 100644 google/ads/googleads/v5/enums/budget_type.proto delete mode 100644 google/ads/googleads/v5/enums/call_conversion_reporting_state.proto delete mode 100644 google/ads/googleads/v5/enums/call_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/callout_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/campaign_criterion_status.proto delete mode 100644 google/ads/googleads/v5/enums/campaign_draft_status.proto delete mode 100644 google/ads/googleads/v5/enums/campaign_experiment_status.proto delete mode 100644 google/ads/googleads/v5/enums/campaign_experiment_traffic_split_type.proto delete mode 100644 google/ads/googleads/v5/enums/campaign_experiment_type.proto delete mode 100644 google/ads/googleads/v5/enums/campaign_serving_status.proto delete mode 100644 google/ads/googleads/v5/enums/campaign_shared_set_status.proto delete mode 100644 google/ads/googleads/v5/enums/campaign_status.proto delete mode 100644 google/ads/googleads/v5/enums/change_status_operation.proto delete mode 100644 google/ads/googleads/v5/enums/change_status_resource_type.proto delete mode 100644 google/ads/googleads/v5/enums/click_type.proto delete mode 100644 google/ads/googleads/v5/enums/content_label_type.proto delete mode 100644 google/ads/googleads/v5/enums/conversion_action_category.proto delete mode 100644 google/ads/googleads/v5/enums/conversion_action_counting_type.proto delete mode 100644 google/ads/googleads/v5/enums/conversion_action_status.proto delete mode 100644 google/ads/googleads/v5/enums/conversion_action_type.proto delete mode 100644 google/ads/googleads/v5/enums/conversion_adjustment_type.proto delete mode 100644 google/ads/googleads/v5/enums/conversion_attribution_event_type.proto delete mode 100644 google/ads/googleads/v5/enums/conversion_lag_bucket.proto delete mode 100644 google/ads/googleads/v5/enums/conversion_or_adjustment_lag_bucket.proto delete mode 100644 google/ads/googleads/v5/enums/criterion_category_channel_availability_mode.proto delete mode 100644 google/ads/googleads/v5/enums/criterion_category_locale_availability_mode.proto delete mode 100644 google/ads/googleads/v5/enums/criterion_system_serving_status.proto delete mode 100644 google/ads/googleads/v5/enums/criterion_type.proto delete mode 100644 google/ads/googleads/v5/enums/custom_interest_member_type.proto delete mode 100644 google/ads/googleads/v5/enums/custom_interest_status.proto delete mode 100644 google/ads/googleads/v5/enums/custom_interest_type.proto delete mode 100644 google/ads/googleads/v5/enums/custom_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/customer_match_upload_key_type.proto delete mode 100644 google/ads/googleads/v5/enums/customer_pay_per_conversion_eligibility_failure_reason.proto delete mode 100644 google/ads/googleads/v5/enums/data_driven_model_status.proto delete mode 100644 google/ads/googleads/v5/enums/day_of_week.proto delete mode 100644 google/ads/googleads/v5/enums/device.proto delete mode 100644 google/ads/googleads/v5/enums/display_ad_format_setting.proto delete mode 100644 google/ads/googleads/v5/enums/display_upload_product_type.proto delete mode 100644 google/ads/googleads/v5/enums/distance_bucket.proto delete mode 100644 google/ads/googleads/v5/enums/dsa_page_feed_criterion_field.proto delete mode 100644 google/ads/googleads/v5/enums/education_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/extension_setting_device.proto delete mode 100644 google/ads/googleads/v5/enums/extension_type.proto delete mode 100644 google/ads/googleads/v5/enums/external_conversion_source.proto delete mode 100644 google/ads/googleads/v5/enums/feed_attribute_type.proto delete mode 100644 google/ads/googleads/v5/enums/feed_item_quality_approval_status.proto delete mode 100644 google/ads/googleads/v5/enums/feed_item_quality_disapproval_reason.proto delete mode 100644 google/ads/googleads/v5/enums/feed_item_status.proto delete mode 100644 google/ads/googleads/v5/enums/feed_item_target_device.proto delete mode 100644 google/ads/googleads/v5/enums/feed_item_target_status.proto delete mode 100644 google/ads/googleads/v5/enums/feed_item_target_type.proto delete mode 100644 google/ads/googleads/v5/enums/feed_item_validation_status.proto delete mode 100644 google/ads/googleads/v5/enums/feed_link_status.proto delete mode 100644 google/ads/googleads/v5/enums/feed_mapping_criterion_type.proto delete mode 100644 google/ads/googleads/v5/enums/feed_mapping_status.proto delete mode 100644 google/ads/googleads/v5/enums/feed_origin.proto delete mode 100644 google/ads/googleads/v5/enums/feed_status.proto delete mode 100644 google/ads/googleads/v5/enums/flight_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/frequency_cap_event_type.proto delete mode 100644 google/ads/googleads/v5/enums/frequency_cap_level.proto delete mode 100644 google/ads/googleads/v5/enums/frequency_cap_time_unit.proto delete mode 100644 google/ads/googleads/v5/enums/gender_type.proto delete mode 100644 google/ads/googleads/v5/enums/geo_target_constant_status.proto delete mode 100644 google/ads/googleads/v5/enums/geo_targeting_restriction.proto delete mode 100644 google/ads/googleads/v5/enums/geo_targeting_type.proto delete mode 100644 google/ads/googleads/v5/enums/google_ads_field_category.proto delete mode 100644 google/ads/googleads/v5/enums/google_ads_field_data_type.proto delete mode 100644 google/ads/googleads/v5/enums/hotel_date_selection_type.proto delete mode 100644 google/ads/googleads/v5/enums/hotel_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/hotel_price_bucket.proto delete mode 100644 google/ads/googleads/v5/enums/hotel_rate_type.proto delete mode 100644 google/ads/googleads/v5/enums/income_range_type.proto delete mode 100644 google/ads/googleads/v5/enums/interaction_event_type.proto delete mode 100644 google/ads/googleads/v5/enums/interaction_type.proto delete mode 100644 google/ads/googleads/v5/enums/invoice_type.proto delete mode 100644 google/ads/googleads/v5/enums/job_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/keyword_match_type.proto delete mode 100644 google/ads/googleads/v5/enums/keyword_plan_competition_level.proto delete mode 100644 google/ads/googleads/v5/enums/keyword_plan_forecast_interval.proto delete mode 100644 google/ads/googleads/v5/enums/keyword_plan_network.proto delete mode 100644 google/ads/googleads/v5/enums/label_status.proto delete mode 100644 google/ads/googleads/v5/enums/legacy_app_install_ad_app_store.proto delete mode 100644 google/ads/googleads/v5/enums/linked_account_type.proto delete mode 100644 google/ads/googleads/v5/enums/listing_group_type.proto delete mode 100644 google/ads/googleads/v5/enums/local_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/location_extension_targeting_criterion_field.proto delete mode 100644 google/ads/googleads/v5/enums/location_group_radius_units.proto delete mode 100644 google/ads/googleads/v5/enums/location_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/location_source_type.proto delete mode 100644 google/ads/googleads/v5/enums/manager_link_status.proto delete mode 100644 google/ads/googleads/v5/enums/matching_function_context_type.proto delete mode 100644 google/ads/googleads/v5/enums/matching_function_operator.proto delete mode 100644 google/ads/googleads/v5/enums/media_type.proto delete mode 100644 google/ads/googleads/v5/enums/merchant_center_link_status.proto delete mode 100644 google/ads/googleads/v5/enums/message_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/mime_type.proto delete mode 100644 google/ads/googleads/v5/enums/minute_of_hour.proto delete mode 100644 google/ads/googleads/v5/enums/mobile_app_vendor.proto delete mode 100644 google/ads/googleads/v5/enums/mobile_device_type.proto delete mode 100644 google/ads/googleads/v5/enums/month_of_year.proto delete mode 100644 google/ads/googleads/v5/enums/negative_geo_target_type.proto delete mode 100644 google/ads/googleads/v5/enums/offline_user_data_job_failure_reason.proto delete mode 100644 google/ads/googleads/v5/enums/offline_user_data_job_status.proto delete mode 100644 google/ads/googleads/v5/enums/offline_user_data_job_type.proto delete mode 100644 google/ads/googleads/v5/enums/operating_system_version_operator_type.proto delete mode 100644 google/ads/googleads/v5/enums/optimization_goal_type.proto delete mode 100644 google/ads/googleads/v5/enums/page_one_promoted_strategy_goal.proto delete mode 100644 google/ads/googleads/v5/enums/parental_status_type.proto delete mode 100644 google/ads/googleads/v5/enums/payment_mode.proto delete mode 100644 google/ads/googleads/v5/enums/placeholder_type.proto delete mode 100644 google/ads/googleads/v5/enums/placement_type.proto delete mode 100644 google/ads/googleads/v5/enums/policy_approval_status.proto delete mode 100644 google/ads/googleads/v5/enums/policy_review_status.proto delete mode 100644 google/ads/googleads/v5/enums/policy_topic_entry_type.proto delete mode 100644 google/ads/googleads/v5/enums/policy_topic_evidence_destination_mismatch_url_type.proto delete mode 100644 google/ads/googleads/v5/enums/policy_topic_evidence_destination_not_working_device.proto delete mode 100644 google/ads/googleads/v5/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto delete mode 100644 google/ads/googleads/v5/enums/positive_geo_target_type.proto delete mode 100644 google/ads/googleads/v5/enums/preferred_content_type.proto delete mode 100644 google/ads/googleads/v5/enums/price_extension_price_qualifier.proto delete mode 100644 google/ads/googleads/v5/enums/price_extension_price_unit.proto delete mode 100644 google/ads/googleads/v5/enums/price_extension_type.proto delete mode 100644 google/ads/googleads/v5/enums/price_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/product_bidding_category_level.proto delete mode 100644 google/ads/googleads/v5/enums/product_bidding_category_status.proto delete mode 100644 google/ads/googleads/v5/enums/product_channel.proto delete mode 100644 google/ads/googleads/v5/enums/product_channel_exclusivity.proto delete mode 100644 google/ads/googleads/v5/enums/product_condition.proto delete mode 100644 google/ads/googleads/v5/enums/product_custom_attribute_index.proto delete mode 100644 google/ads/googleads/v5/enums/product_type_level.proto delete mode 100644 google/ads/googleads/v5/enums/promotion_extension_discount_modifier.proto delete mode 100644 google/ads/googleads/v5/enums/promotion_extension_occasion.proto delete mode 100644 google/ads/googleads/v5/enums/promotion_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/proximity_radius_units.proto delete mode 100644 google/ads/googleads/v5/enums/quality_score_bucket.proto delete mode 100644 google/ads/googleads/v5/enums/reach_plan_ad_length.proto delete mode 100644 google/ads/googleads/v5/enums/reach_plan_age_range.proto delete mode 100644 google/ads/googleads/v5/enums/reach_plan_network.proto delete mode 100644 google/ads/googleads/v5/enums/real_estate_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/recommendation_type.proto delete mode 100644 google/ads/googleads/v5/enums/response_content_type.proto delete mode 100644 google/ads/googleads/v5/enums/search_engine_results_page_type.proto delete mode 100644 google/ads/googleads/v5/enums/search_term_match_type.proto delete mode 100644 google/ads/googleads/v5/enums/search_term_targeting_status.proto delete mode 100644 google/ads/googleads/v5/enums/served_asset_field_type.proto delete mode 100644 google/ads/googleads/v5/enums/shared_set_status.proto delete mode 100644 google/ads/googleads/v5/enums/shared_set_type.proto delete mode 100644 google/ads/googleads/v5/enums/simulation_modification_method.proto delete mode 100644 google/ads/googleads/v5/enums/simulation_type.proto delete mode 100644 google/ads/googleads/v5/enums/sitelink_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/slot.proto delete mode 100644 google/ads/googleads/v5/enums/spending_limit_type.proto delete mode 100644 google/ads/googleads/v5/enums/structured_snippet_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/summary_row_setting.proto delete mode 100644 google/ads/googleads/v5/enums/system_managed_entity_source.proto delete mode 100644 google/ads/googleads/v5/enums/target_cpa_opt_in_recommendation_goal.proto delete mode 100644 google/ads/googleads/v5/enums/target_impression_share_location.proto delete mode 100644 google/ads/googleads/v5/enums/targeting_dimension.proto delete mode 100644 google/ads/googleads/v5/enums/time_type.proto delete mode 100644 google/ads/googleads/v5/enums/tracking_code_page_format.proto delete mode 100644 google/ads/googleads/v5/enums/tracking_code_type.proto delete mode 100644 google/ads/googleads/v5/enums/travel_placeholder_field.proto delete mode 100644 google/ads/googleads/v5/enums/user_interest_taxonomy_type.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_access_status.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_closing_reason.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_combined_rule_operator.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_crm_data_source_type.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_date_rule_item_operator.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_logical_rule_operator.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_membership_status.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_number_rule_item_operator.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_prepopulation_status.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_rule_type.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_size_range.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_string_rule_item_operator.proto delete mode 100644 google/ads/googleads/v5/enums/user_list_type.proto delete mode 100644 google/ads/googleads/v5/enums/vanity_pharma_display_url_mode.proto delete mode 100644 google/ads/googleads/v5/enums/vanity_pharma_text.proto delete mode 100644 google/ads/googleads/v5/enums/webpage_condition_operand.proto delete mode 100644 google/ads/googleads/v5/enums/webpage_condition_operator.proto delete mode 100644 google/ads/googleads/v5/errors/BUILD.bazel delete mode 100644 google/ads/googleads/v5/errors/access_invitation_error.proto delete mode 100644 google/ads/googleads/v5/errors/account_budget_proposal_error.proto delete mode 100644 google/ads/googleads/v5/errors/account_link_error.proto delete mode 100644 google/ads/googleads/v5/errors/ad_customizer_error.proto delete mode 100644 google/ads/googleads/v5/errors/ad_error.proto delete mode 100644 google/ads/googleads/v5/errors/ad_group_ad_error.proto delete mode 100644 google/ads/googleads/v5/errors/ad_group_bid_modifier_error.proto delete mode 100644 google/ads/googleads/v5/errors/ad_group_criterion_error.proto delete mode 100644 google/ads/googleads/v5/errors/ad_group_error.proto delete mode 100644 google/ads/googleads/v5/errors/ad_group_feed_error.proto delete mode 100644 google/ads/googleads/v5/errors/ad_parameter_error.proto delete mode 100644 google/ads/googleads/v5/errors/ad_sharing_error.proto delete mode 100644 google/ads/googleads/v5/errors/adx_error.proto delete mode 100644 google/ads/googleads/v5/errors/asset_error.proto delete mode 100644 google/ads/googleads/v5/errors/asset_link_error.proto delete mode 100644 google/ads/googleads/v5/errors/authentication_error.proto delete mode 100644 google/ads/googleads/v5/errors/authorization_error.proto delete mode 100644 google/ads/googleads/v5/errors/batch_job_error.proto delete mode 100644 google/ads/googleads/v5/errors/bidding_error.proto delete mode 100644 google/ads/googleads/v5/errors/bidding_strategy_error.proto delete mode 100644 google/ads/googleads/v5/errors/billing_setup_error.proto delete mode 100644 google/ads/googleads/v5/errors/campaign_budget_error.proto delete mode 100644 google/ads/googleads/v5/errors/campaign_criterion_error.proto delete mode 100644 google/ads/googleads/v5/errors/campaign_draft_error.proto delete mode 100644 google/ads/googleads/v5/errors/campaign_error.proto delete mode 100644 google/ads/googleads/v5/errors/campaign_experiment_error.proto delete mode 100644 google/ads/googleads/v5/errors/campaign_feed_error.proto delete mode 100644 google/ads/googleads/v5/errors/campaign_shared_set_error.proto delete mode 100644 google/ads/googleads/v5/errors/change_status_error.proto delete mode 100644 google/ads/googleads/v5/errors/collection_size_error.proto delete mode 100644 google/ads/googleads/v5/errors/context_error.proto delete mode 100644 google/ads/googleads/v5/errors/conversion_action_error.proto delete mode 100644 google/ads/googleads/v5/errors/conversion_adjustment_upload_error.proto delete mode 100644 google/ads/googleads/v5/errors/conversion_upload_error.proto delete mode 100644 google/ads/googleads/v5/errors/country_code_error.proto delete mode 100644 google/ads/googleads/v5/errors/criterion_error.proto delete mode 100644 google/ads/googleads/v5/errors/currency_code_error.proto delete mode 100644 google/ads/googleads/v5/errors/custom_interest_error.proto delete mode 100644 google/ads/googleads/v5/errors/customer_client_link_error.proto delete mode 100644 google/ads/googleads/v5/errors/customer_error.proto delete mode 100644 google/ads/googleads/v5/errors/customer_feed_error.proto delete mode 100644 google/ads/googleads/v5/errors/customer_manager_link_error.proto delete mode 100644 google/ads/googleads/v5/errors/database_error.proto delete mode 100644 google/ads/googleads/v5/errors/date_error.proto delete mode 100644 google/ads/googleads/v5/errors/date_range_error.proto delete mode 100644 google/ads/googleads/v5/errors/distinct_error.proto delete mode 100644 google/ads/googleads/v5/errors/enum_error.proto delete mode 100644 google/ads/googleads/v5/errors/errors.proto delete mode 100644 google/ads/googleads/v5/errors/extension_feed_item_error.proto delete mode 100644 google/ads/googleads/v5/errors/extension_setting_error.proto delete mode 100644 google/ads/googleads/v5/errors/feed_attribute_reference_error.proto delete mode 100644 google/ads/googleads/v5/errors/feed_error.proto delete mode 100644 google/ads/googleads/v5/errors/feed_item_error.proto delete mode 100644 google/ads/googleads/v5/errors/feed_item_target_error.proto delete mode 100644 google/ads/googleads/v5/errors/feed_item_validation_error.proto delete mode 100644 google/ads/googleads/v5/errors/feed_mapping_error.proto delete mode 100644 google/ads/googleads/v5/errors/field_error.proto delete mode 100644 google/ads/googleads/v5/errors/field_mask_error.proto delete mode 100644 google/ads/googleads/v5/errors/function_error.proto delete mode 100644 google/ads/googleads/v5/errors/function_parsing_error.proto delete mode 100644 google/ads/googleads/v5/errors/geo_target_constant_suggestion_error.proto delete mode 100644 google/ads/googleads/v5/errors/header_error.proto delete mode 100644 google/ads/googleads/v5/errors/id_error.proto delete mode 100644 google/ads/googleads/v5/errors/image_error.proto delete mode 100644 google/ads/googleads/v5/errors/internal_error.proto delete mode 100644 google/ads/googleads/v5/errors/invoice_error.proto delete mode 100644 google/ads/googleads/v5/errors/keyword_plan_ad_group_error.proto delete mode 100644 google/ads/googleads/v5/errors/keyword_plan_ad_group_keyword_error.proto delete mode 100644 google/ads/googleads/v5/errors/keyword_plan_campaign_error.proto delete mode 100644 google/ads/googleads/v5/errors/keyword_plan_campaign_keyword_error.proto delete mode 100644 google/ads/googleads/v5/errors/keyword_plan_error.proto delete mode 100644 google/ads/googleads/v5/errors/keyword_plan_idea_error.proto delete mode 100644 google/ads/googleads/v5/errors/label_error.proto delete mode 100644 google/ads/googleads/v5/errors/language_code_error.proto delete mode 100644 google/ads/googleads/v5/errors/list_operation_error.proto delete mode 100644 google/ads/googleads/v5/errors/manager_link_error.proto delete mode 100644 google/ads/googleads/v5/errors/media_bundle_error.proto delete mode 100644 google/ads/googleads/v5/errors/media_file_error.proto delete mode 100644 google/ads/googleads/v5/errors/media_upload_error.proto delete mode 100644 google/ads/googleads/v5/errors/multiplier_error.proto delete mode 100644 google/ads/googleads/v5/errors/mutate_error.proto delete mode 100644 google/ads/googleads/v5/errors/new_resource_creation_error.proto delete mode 100644 google/ads/googleads/v5/errors/not_allowlisted_error.proto delete mode 100644 google/ads/googleads/v5/errors/not_empty_error.proto delete mode 100644 google/ads/googleads/v5/errors/null_error.proto delete mode 100644 google/ads/googleads/v5/errors/offline_user_data_job_error.proto delete mode 100644 google/ads/googleads/v5/errors/operation_access_denied_error.proto delete mode 100644 google/ads/googleads/v5/errors/operator_error.proto delete mode 100644 google/ads/googleads/v5/errors/partial_failure_error.proto delete mode 100644 google/ads/googleads/v5/errors/payments_account_error.proto delete mode 100644 google/ads/googleads/v5/errors/policy_finding_error.proto delete mode 100644 google/ads/googleads/v5/errors/policy_validation_parameter_error.proto delete mode 100644 google/ads/googleads/v5/errors/policy_violation_error.proto delete mode 100644 google/ads/googleads/v5/errors/query_error.proto delete mode 100644 google/ads/googleads/v5/errors/quota_error.proto delete mode 100644 google/ads/googleads/v5/errors/range_error.proto delete mode 100644 google/ads/googleads/v5/errors/reach_plan_error.proto delete mode 100644 google/ads/googleads/v5/errors/recommendation_error.proto delete mode 100644 google/ads/googleads/v5/errors/region_code_error.proto delete mode 100644 google/ads/googleads/v5/errors/request_error.proto delete mode 100644 google/ads/googleads/v5/errors/resource_access_denied_error.proto delete mode 100644 google/ads/googleads/v5/errors/resource_count_limit_exceeded_error.proto delete mode 100644 google/ads/googleads/v5/errors/setting_error.proto delete mode 100644 google/ads/googleads/v5/errors/shared_criterion_error.proto delete mode 100644 google/ads/googleads/v5/errors/shared_set_error.proto delete mode 100644 google/ads/googleads/v5/errors/size_limit_error.proto delete mode 100644 google/ads/googleads/v5/errors/string_format_error.proto delete mode 100644 google/ads/googleads/v5/errors/string_length_error.proto delete mode 100644 google/ads/googleads/v5/errors/third_party_app_analytics_link_error.proto delete mode 100644 google/ads/googleads/v5/errors/time_zone_error.proto delete mode 100644 google/ads/googleads/v5/errors/url_field_error.proto delete mode 100644 google/ads/googleads/v5/errors/user_data_error.proto delete mode 100644 google/ads/googleads/v5/errors/user_list_error.proto delete mode 100644 google/ads/googleads/v5/errors/youtube_video_registration_error.proto delete mode 100644 google/ads/googleads/v5/googleads_gapic.yaml delete mode 100644 google/ads/googleads/v5/googleads_grpc_service_config.json delete mode 100644 google/ads/googleads/v5/googleads_v5.yaml delete mode 100644 google/ads/googleads/v5/resources/BUILD.bazel delete mode 100644 google/ads/googleads/v5/resources/account_budget.proto delete mode 100644 google/ads/googleads/v5/resources/account_budget_proposal.proto delete mode 100644 google/ads/googleads/v5/resources/account_link.proto delete mode 100644 google/ads/googleads/v5/resources/ad.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_ad.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_ad_asset_view.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_ad_label.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_audience_view.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_bid_modifier.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_criterion.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_criterion_label.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_criterion_simulation.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_extension_setting.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_feed.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_label.proto delete mode 100644 google/ads/googleads/v5/resources/ad_group_simulation.proto delete mode 100644 google/ads/googleads/v5/resources/ad_parameter.proto delete mode 100644 google/ads/googleads/v5/resources/ad_schedule_view.proto delete mode 100644 google/ads/googleads/v5/resources/age_range_view.proto delete mode 100644 google/ads/googleads/v5/resources/asset.proto delete mode 100644 google/ads/googleads/v5/resources/batch_job.proto delete mode 100644 google/ads/googleads/v5/resources/bidding_strategy.proto delete mode 100644 google/ads/googleads/v5/resources/billing_setup.proto delete mode 100644 google/ads/googleads/v5/resources/campaign.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_asset.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_audience_view.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_bid_modifier.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_budget.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_criterion.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_criterion_simulation.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_draft.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_experiment.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_extension_setting.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_feed.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_label.proto delete mode 100644 google/ads/googleads/v5/resources/campaign_shared_set.proto delete mode 100644 google/ads/googleads/v5/resources/carrier_constant.proto delete mode 100644 google/ads/googleads/v5/resources/change_status.proto delete mode 100644 google/ads/googleads/v5/resources/click_view.proto delete mode 100644 google/ads/googleads/v5/resources/conversion_action.proto delete mode 100644 google/ads/googleads/v5/resources/currency_constant.proto delete mode 100644 google/ads/googleads/v5/resources/custom_interest.proto delete mode 100644 google/ads/googleads/v5/resources/customer.proto delete mode 100644 google/ads/googleads/v5/resources/customer_client.proto delete mode 100644 google/ads/googleads/v5/resources/customer_client_link.proto delete mode 100644 google/ads/googleads/v5/resources/customer_extension_setting.proto delete mode 100644 google/ads/googleads/v5/resources/customer_feed.proto delete mode 100644 google/ads/googleads/v5/resources/customer_label.proto delete mode 100644 google/ads/googleads/v5/resources/customer_manager_link.proto delete mode 100644 google/ads/googleads/v5/resources/customer_negative_criterion.proto delete mode 100644 google/ads/googleads/v5/resources/detail_placement_view.proto delete mode 100644 google/ads/googleads/v5/resources/display_keyword_view.proto delete mode 100644 google/ads/googleads/v5/resources/distance_view.proto delete mode 100644 google/ads/googleads/v5/resources/domain_category.proto delete mode 100644 google/ads/googleads/v5/resources/dynamic_search_ads_search_term_view.proto delete mode 100644 google/ads/googleads/v5/resources/expanded_landing_page_view.proto delete mode 100644 google/ads/googleads/v5/resources/extension_feed_item.proto delete mode 100644 google/ads/googleads/v5/resources/feed.proto delete mode 100644 google/ads/googleads/v5/resources/feed_item.proto delete mode 100644 google/ads/googleads/v5/resources/feed_item_target.proto delete mode 100644 google/ads/googleads/v5/resources/feed_mapping.proto delete mode 100644 google/ads/googleads/v5/resources/feed_placeholder_view.proto delete mode 100644 google/ads/googleads/v5/resources/gender_view.proto delete mode 100644 google/ads/googleads/v5/resources/geo_target_constant.proto delete mode 100644 google/ads/googleads/v5/resources/geographic_view.proto delete mode 100644 google/ads/googleads/v5/resources/google_ads_field.proto delete mode 100644 google/ads/googleads/v5/resources/group_placement_view.proto delete mode 100644 google/ads/googleads/v5/resources/hotel_group_view.proto delete mode 100644 google/ads/googleads/v5/resources/hotel_performance_view.proto delete mode 100644 google/ads/googleads/v5/resources/income_range_view.proto delete mode 100644 google/ads/googleads/v5/resources/invoice.proto delete mode 100644 google/ads/googleads/v5/resources/keyword_plan.proto delete mode 100644 google/ads/googleads/v5/resources/keyword_plan_ad_group.proto delete mode 100644 google/ads/googleads/v5/resources/keyword_plan_ad_group_keyword.proto delete mode 100644 google/ads/googleads/v5/resources/keyword_plan_campaign.proto delete mode 100644 google/ads/googleads/v5/resources/keyword_plan_campaign_keyword.proto delete mode 100644 google/ads/googleads/v5/resources/keyword_view.proto delete mode 100644 google/ads/googleads/v5/resources/label.proto delete mode 100644 google/ads/googleads/v5/resources/landing_page_view.proto delete mode 100644 google/ads/googleads/v5/resources/language_constant.proto delete mode 100644 google/ads/googleads/v5/resources/location_view.proto delete mode 100644 google/ads/googleads/v5/resources/managed_placement_view.proto delete mode 100644 google/ads/googleads/v5/resources/media_file.proto delete mode 100644 google/ads/googleads/v5/resources/merchant_center_link.proto delete mode 100644 google/ads/googleads/v5/resources/mobile_app_category_constant.proto delete mode 100644 google/ads/googleads/v5/resources/mobile_device_constant.proto delete mode 100644 google/ads/googleads/v5/resources/offline_user_data_job.proto delete mode 100644 google/ads/googleads/v5/resources/operating_system_version_constant.proto delete mode 100644 google/ads/googleads/v5/resources/paid_organic_search_term_view.proto delete mode 100644 google/ads/googleads/v5/resources/parental_status_view.proto delete mode 100644 google/ads/googleads/v5/resources/payments_account.proto delete mode 100644 google/ads/googleads/v5/resources/product_bidding_category_constant.proto delete mode 100644 google/ads/googleads/v5/resources/product_group_view.proto delete mode 100644 google/ads/googleads/v5/resources/recommendation.proto delete mode 100644 google/ads/googleads/v5/resources/remarketing_action.proto delete mode 100644 google/ads/googleads/v5/resources/search_term_view.proto delete mode 100644 google/ads/googleads/v5/resources/shared_criterion.proto delete mode 100644 google/ads/googleads/v5/resources/shared_set.proto delete mode 100644 google/ads/googleads/v5/resources/shopping_performance_view.proto delete mode 100644 google/ads/googleads/v5/resources/third_party_app_analytics_link.proto delete mode 100644 google/ads/googleads/v5/resources/topic_constant.proto delete mode 100644 google/ads/googleads/v5/resources/topic_view.proto delete mode 100644 google/ads/googleads/v5/resources/user_interest.proto delete mode 100644 google/ads/googleads/v5/resources/user_list.proto delete mode 100644 google/ads/googleads/v5/resources/user_location_view.proto delete mode 100644 google/ads/googleads/v5/resources/video.proto delete mode 100644 google/ads/googleads/v5/services/BUILD.bazel delete mode 100644 google/ads/googleads/v5/services/account_budget_proposal_service.proto delete mode 100644 google/ads/googleads/v5/services/account_budget_service.proto delete mode 100644 google/ads/googleads/v5/services/account_link_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_ad_asset_view_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_ad_label_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_ad_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_audience_view_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_bid_modifier_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_criterion_label_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_criterion_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_criterion_simulation_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_extension_setting_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_feed_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_label_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_group_simulation_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_parameter_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_schedule_view_service.proto delete mode 100644 google/ads/googleads/v5/services/ad_service.proto delete mode 100644 google/ads/googleads/v5/services/age_range_view_service.proto delete mode 100644 google/ads/googleads/v5/services/asset_service.proto delete mode 100644 google/ads/googleads/v5/services/batch_job_service.proto delete mode 100644 google/ads/googleads/v5/services/bidding_strategy_service.proto delete mode 100644 google/ads/googleads/v5/services/billing_setup_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_asset_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_audience_view_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_bid_modifier_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_budget_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_criterion_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_criterion_simulation_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_draft_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_experiment_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_extension_setting_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_feed_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_label_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_service.proto delete mode 100644 google/ads/googleads/v5/services/campaign_shared_set_service.proto delete mode 100644 google/ads/googleads/v5/services/carrier_constant_service.proto delete mode 100644 google/ads/googleads/v5/services/change_status_service.proto delete mode 100644 google/ads/googleads/v5/services/click_view_service.proto delete mode 100644 google/ads/googleads/v5/services/conversion_action_service.proto delete mode 100644 google/ads/googleads/v5/services/conversion_adjustment_upload_service.proto delete mode 100644 google/ads/googleads/v5/services/conversion_upload_service.proto delete mode 100644 google/ads/googleads/v5/services/currency_constant_service.proto delete mode 100644 google/ads/googleads/v5/services/custom_interest_service.proto delete mode 100644 google/ads/googleads/v5/services/customer_client_link_service.proto delete mode 100644 google/ads/googleads/v5/services/customer_client_service.proto delete mode 100644 google/ads/googleads/v5/services/customer_extension_setting_service.proto delete mode 100644 google/ads/googleads/v5/services/customer_feed_service.proto delete mode 100644 google/ads/googleads/v5/services/customer_label_service.proto delete mode 100644 google/ads/googleads/v5/services/customer_manager_link_service.proto delete mode 100644 google/ads/googleads/v5/services/customer_negative_criterion_service.proto delete mode 100644 google/ads/googleads/v5/services/customer_service.proto delete mode 100644 google/ads/googleads/v5/services/detail_placement_view_service.proto delete mode 100644 google/ads/googleads/v5/services/display_keyword_view_service.proto delete mode 100644 google/ads/googleads/v5/services/distance_view_service.proto delete mode 100644 google/ads/googleads/v5/services/domain_category_service.proto delete mode 100644 google/ads/googleads/v5/services/dynamic_search_ads_search_term_view_service.proto delete mode 100644 google/ads/googleads/v5/services/expanded_landing_page_view_service.proto delete mode 100644 google/ads/googleads/v5/services/extension_feed_item_service.proto delete mode 100644 google/ads/googleads/v5/services/feed_item_service.proto delete mode 100644 google/ads/googleads/v5/services/feed_item_target_service.proto delete mode 100644 google/ads/googleads/v5/services/feed_mapping_service.proto delete mode 100644 google/ads/googleads/v5/services/feed_placeholder_view_service.proto delete mode 100644 google/ads/googleads/v5/services/feed_service.proto delete mode 100644 google/ads/googleads/v5/services/gender_view_service.proto delete mode 100644 google/ads/googleads/v5/services/geo_target_constant_service.proto delete mode 100644 google/ads/googleads/v5/services/geographic_view_service.proto delete mode 100644 google/ads/googleads/v5/services/google_ads_field_service.proto delete mode 100644 google/ads/googleads/v5/services/google_ads_service.proto delete mode 100644 google/ads/googleads/v5/services/group_placement_view_service.proto delete mode 100644 google/ads/googleads/v5/services/hotel_group_view_service.proto delete mode 100644 google/ads/googleads/v5/services/hotel_performance_view_service.proto delete mode 100644 google/ads/googleads/v5/services/income_range_view_service.proto delete mode 100644 google/ads/googleads/v5/services/invoice_service.proto delete mode 100644 google/ads/googleads/v5/services/keyword_plan_ad_group_keyword_service.proto delete mode 100644 google/ads/googleads/v5/services/keyword_plan_ad_group_service.proto delete mode 100644 google/ads/googleads/v5/services/keyword_plan_campaign_keyword_service.proto delete mode 100644 google/ads/googleads/v5/services/keyword_plan_campaign_service.proto delete mode 100644 google/ads/googleads/v5/services/keyword_plan_idea_service.proto delete mode 100644 google/ads/googleads/v5/services/keyword_plan_service.proto delete mode 100644 google/ads/googleads/v5/services/keyword_view_service.proto delete mode 100644 google/ads/googleads/v5/services/label_service.proto delete mode 100644 google/ads/googleads/v5/services/landing_page_view_service.proto delete mode 100644 google/ads/googleads/v5/services/language_constant_service.proto delete mode 100644 google/ads/googleads/v5/services/location_view_service.proto delete mode 100644 google/ads/googleads/v5/services/managed_placement_view_service.proto delete mode 100644 google/ads/googleads/v5/services/media_file_service.proto delete mode 100644 google/ads/googleads/v5/services/merchant_center_link_service.proto delete mode 100644 google/ads/googleads/v5/services/mobile_app_category_constant_service.proto delete mode 100644 google/ads/googleads/v5/services/mobile_device_constant_service.proto delete mode 100644 google/ads/googleads/v5/services/offline_user_data_job_service.proto delete mode 100644 google/ads/googleads/v5/services/operating_system_version_constant_service.proto delete mode 100644 google/ads/googleads/v5/services/paid_organic_search_term_view_service.proto delete mode 100644 google/ads/googleads/v5/services/parental_status_view_service.proto delete mode 100644 google/ads/googleads/v5/services/payments_account_service.proto delete mode 100644 google/ads/googleads/v5/services/product_bidding_category_constant_service.proto delete mode 100644 google/ads/googleads/v5/services/product_group_view_service.proto delete mode 100644 google/ads/googleads/v5/services/reach_plan_service.proto delete mode 100644 google/ads/googleads/v5/services/recommendation_service.proto delete mode 100644 google/ads/googleads/v5/services/remarketing_action_service.proto delete mode 100644 google/ads/googleads/v5/services/search_term_view_service.proto delete mode 100644 google/ads/googleads/v5/services/shared_criterion_service.proto delete mode 100644 google/ads/googleads/v5/services/shared_set_service.proto delete mode 100644 google/ads/googleads/v5/services/shopping_performance_view_service.proto delete mode 100644 google/ads/googleads/v5/services/third_party_app_analytics_link_service.proto delete mode 100644 google/ads/googleads/v5/services/topic_constant_service.proto delete mode 100644 google/ads/googleads/v5/services/topic_view_service.proto delete mode 100644 google/ads/googleads/v5/services/user_data_service.proto delete mode 100644 google/ads/googleads/v5/services/user_interest_service.proto delete mode 100644 google/ads/googleads/v5/services/user_list_service.proto delete mode 100644 google/ads/googleads/v5/services/user_location_view_service.proto delete mode 100644 google/ads/googleads/v5/services/video_service.proto delete mode 100644 google/ads/googleads/v6/BUILD.bazel delete mode 100644 google/ads/googleads/v6/common/BUILD.bazel delete mode 100644 google/ads/googleads/v6/common/ad_asset.proto delete mode 100644 google/ads/googleads/v6/common/ad_type_infos.proto delete mode 100644 google/ads/googleads/v6/common/asset_policy.proto delete mode 100644 google/ads/googleads/v6/common/asset_types.proto delete mode 100644 google/ads/googleads/v6/common/bidding.proto delete mode 100644 google/ads/googleads/v6/common/click_location.proto delete mode 100644 google/ads/googleads/v6/common/criteria.proto delete mode 100644 google/ads/googleads/v6/common/criterion_category_availability.proto delete mode 100644 google/ads/googleads/v6/common/custom_parameter.proto delete mode 100644 google/ads/googleads/v6/common/dates.proto delete mode 100644 google/ads/googleads/v6/common/explorer_auto_optimizer_setting.proto delete mode 100644 google/ads/googleads/v6/common/extensions.proto delete mode 100644 google/ads/googleads/v6/common/feed_common.proto delete mode 100644 google/ads/googleads/v6/common/feed_item_set_filter_type_infos.proto delete mode 100644 google/ads/googleads/v6/common/final_app_url.proto delete mode 100644 google/ads/googleads/v6/common/frequency_cap.proto delete mode 100644 google/ads/googleads/v6/common/keyword_plan_common.proto delete mode 100644 google/ads/googleads/v6/common/matching_function.proto delete mode 100644 google/ads/googleads/v6/common/metrics.proto delete mode 100644 google/ads/googleads/v6/common/offline_user_data.proto delete mode 100644 google/ads/googleads/v6/common/policy.proto delete mode 100644 google/ads/googleads/v6/common/real_time_bidding_setting.proto delete mode 100644 google/ads/googleads/v6/common/segments.proto delete mode 100644 google/ads/googleads/v6/common/simulation.proto delete mode 100644 google/ads/googleads/v6/common/tag_snippet.proto delete mode 100644 google/ads/googleads/v6/common/targeting_setting.proto delete mode 100644 google/ads/googleads/v6/common/text_label.proto delete mode 100644 google/ads/googleads/v6/common/url_collection.proto delete mode 100644 google/ads/googleads/v6/common/user_lists.proto delete mode 100644 google/ads/googleads/v6/common/value.proto delete mode 100644 google/ads/googleads/v6/enums/BUILD.bazel delete mode 100644 google/ads/googleads/v6/enums/access_invitation_status.proto delete mode 100644 google/ads/googleads/v6/enums/access_reason.proto delete mode 100644 google/ads/googleads/v6/enums/access_role.proto delete mode 100644 google/ads/googleads/v6/enums/account_budget_proposal_status.proto delete mode 100644 google/ads/googleads/v6/enums/account_budget_proposal_type.proto delete mode 100644 google/ads/googleads/v6/enums/account_budget_status.proto delete mode 100644 google/ads/googleads/v6/enums/account_link_status.proto delete mode 100644 google/ads/googleads/v6/enums/ad_customizer_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/ad_destination_type.proto delete mode 100644 google/ads/googleads/v6/enums/ad_group_ad_rotation_mode.proto delete mode 100644 google/ads/googleads/v6/enums/ad_group_ad_status.proto delete mode 100644 google/ads/googleads/v6/enums/ad_group_criterion_approval_status.proto delete mode 100644 google/ads/googleads/v6/enums/ad_group_criterion_status.proto delete mode 100644 google/ads/googleads/v6/enums/ad_group_status.proto delete mode 100644 google/ads/googleads/v6/enums/ad_group_type.proto delete mode 100644 google/ads/googleads/v6/enums/ad_network_type.proto delete mode 100644 google/ads/googleads/v6/enums/ad_serving_optimization_status.proto delete mode 100644 google/ads/googleads/v6/enums/ad_strength.proto delete mode 100644 google/ads/googleads/v6/enums/ad_type.proto delete mode 100644 google/ads/googleads/v6/enums/advertising_channel_sub_type.proto delete mode 100644 google/ads/googleads/v6/enums/advertising_channel_type.proto delete mode 100644 google/ads/googleads/v6/enums/affiliate_location_feed_relationship_type.proto delete mode 100644 google/ads/googleads/v6/enums/affiliate_location_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/age_range_type.proto delete mode 100644 google/ads/googleads/v6/enums/app_campaign_app_store.proto delete mode 100644 google/ads/googleads/v6/enums/app_campaign_bidding_strategy_goal_type.proto delete mode 100644 google/ads/googleads/v6/enums/app_payment_model_type.proto delete mode 100644 google/ads/googleads/v6/enums/app_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/app_store.proto delete mode 100644 google/ads/googleads/v6/enums/app_url_operating_system_type.proto delete mode 100644 google/ads/googleads/v6/enums/asset_field_type.proto delete mode 100644 google/ads/googleads/v6/enums/asset_link_status.proto delete mode 100644 google/ads/googleads/v6/enums/asset_performance_label.proto delete mode 100644 google/ads/googleads/v6/enums/asset_type.proto delete mode 100644 google/ads/googleads/v6/enums/attribution_model.proto delete mode 100644 google/ads/googleads/v6/enums/batch_job_status.proto delete mode 100644 google/ads/googleads/v6/enums/bid_modifier_source.proto delete mode 100644 google/ads/googleads/v6/enums/bidding_source.proto delete mode 100644 google/ads/googleads/v6/enums/bidding_strategy_status.proto delete mode 100644 google/ads/googleads/v6/enums/bidding_strategy_type.proto delete mode 100644 google/ads/googleads/v6/enums/billing_setup_status.proto delete mode 100644 google/ads/googleads/v6/enums/brand_safety_suitability.proto delete mode 100644 google/ads/googleads/v6/enums/budget_campaign_association_status.proto delete mode 100644 google/ads/googleads/v6/enums/budget_delivery_method.proto delete mode 100644 google/ads/googleads/v6/enums/budget_period.proto delete mode 100644 google/ads/googleads/v6/enums/budget_status.proto delete mode 100644 google/ads/googleads/v6/enums/budget_type.proto delete mode 100644 google/ads/googleads/v6/enums/call_conversion_reporting_state.proto delete mode 100644 google/ads/googleads/v6/enums/call_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/call_tracking_display_location.proto delete mode 100644 google/ads/googleads/v6/enums/call_type.proto delete mode 100644 google/ads/googleads/v6/enums/callout_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/campaign_criterion_status.proto delete mode 100644 google/ads/googleads/v6/enums/campaign_draft_status.proto delete mode 100644 google/ads/googleads/v6/enums/campaign_experiment_status.proto delete mode 100644 google/ads/googleads/v6/enums/campaign_experiment_traffic_split_type.proto delete mode 100644 google/ads/googleads/v6/enums/campaign_experiment_type.proto delete mode 100644 google/ads/googleads/v6/enums/campaign_serving_status.proto delete mode 100644 google/ads/googleads/v6/enums/campaign_shared_set_status.proto delete mode 100644 google/ads/googleads/v6/enums/campaign_status.proto delete mode 100644 google/ads/googleads/v6/enums/change_client_type.proto delete mode 100644 google/ads/googleads/v6/enums/change_event_resource_type.proto delete mode 100644 google/ads/googleads/v6/enums/change_status_operation.proto delete mode 100644 google/ads/googleads/v6/enums/change_status_resource_type.proto delete mode 100644 google/ads/googleads/v6/enums/click_type.proto delete mode 100644 google/ads/googleads/v6/enums/combined_audience_status.proto delete mode 100644 google/ads/googleads/v6/enums/content_label_type.proto delete mode 100644 google/ads/googleads/v6/enums/conversion_action_category.proto delete mode 100644 google/ads/googleads/v6/enums/conversion_action_counting_type.proto delete mode 100644 google/ads/googleads/v6/enums/conversion_action_status.proto delete mode 100644 google/ads/googleads/v6/enums/conversion_action_type.proto delete mode 100644 google/ads/googleads/v6/enums/conversion_adjustment_type.proto delete mode 100644 google/ads/googleads/v6/enums/conversion_attribution_event_type.proto delete mode 100644 google/ads/googleads/v6/enums/conversion_lag_bucket.proto delete mode 100644 google/ads/googleads/v6/enums/conversion_or_adjustment_lag_bucket.proto delete mode 100644 google/ads/googleads/v6/enums/criterion_category_channel_availability_mode.proto delete mode 100644 google/ads/googleads/v6/enums/criterion_category_locale_availability_mode.proto delete mode 100644 google/ads/googleads/v6/enums/criterion_system_serving_status.proto delete mode 100644 google/ads/googleads/v6/enums/criterion_type.proto delete mode 100644 google/ads/googleads/v6/enums/custom_audience_member_type.proto delete mode 100644 google/ads/googleads/v6/enums/custom_audience_status.proto delete mode 100644 google/ads/googleads/v6/enums/custom_audience_type.proto delete mode 100644 google/ads/googleads/v6/enums/custom_interest_member_type.proto delete mode 100644 google/ads/googleads/v6/enums/custom_interest_status.proto delete mode 100644 google/ads/googleads/v6/enums/custom_interest_type.proto delete mode 100644 google/ads/googleads/v6/enums/custom_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/customer_match_upload_key_type.proto delete mode 100644 google/ads/googleads/v6/enums/customer_pay_per_conversion_eligibility_failure_reason.proto delete mode 100644 google/ads/googleads/v6/enums/data_driven_model_status.proto delete mode 100644 google/ads/googleads/v6/enums/day_of_week.proto delete mode 100644 google/ads/googleads/v6/enums/device.proto delete mode 100644 google/ads/googleads/v6/enums/display_ad_format_setting.proto delete mode 100644 google/ads/googleads/v6/enums/display_upload_product_type.proto delete mode 100644 google/ads/googleads/v6/enums/distance_bucket.proto delete mode 100644 google/ads/googleads/v6/enums/dsa_page_feed_criterion_field.proto delete mode 100644 google/ads/googleads/v6/enums/education_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/extension_setting_device.proto delete mode 100644 google/ads/googleads/v6/enums/extension_type.proto delete mode 100644 google/ads/googleads/v6/enums/external_conversion_source.proto delete mode 100644 google/ads/googleads/v6/enums/feed_attribute_type.proto delete mode 100644 google/ads/googleads/v6/enums/feed_item_quality_approval_status.proto delete mode 100644 google/ads/googleads/v6/enums/feed_item_quality_disapproval_reason.proto delete mode 100644 google/ads/googleads/v6/enums/feed_item_set_status.proto delete mode 100644 google/ads/googleads/v6/enums/feed_item_set_string_filter_type.proto delete mode 100644 google/ads/googleads/v6/enums/feed_item_status.proto delete mode 100644 google/ads/googleads/v6/enums/feed_item_target_device.proto delete mode 100644 google/ads/googleads/v6/enums/feed_item_target_status.proto delete mode 100644 google/ads/googleads/v6/enums/feed_item_target_type.proto delete mode 100644 google/ads/googleads/v6/enums/feed_item_validation_status.proto delete mode 100644 google/ads/googleads/v6/enums/feed_link_status.proto delete mode 100644 google/ads/googleads/v6/enums/feed_mapping_criterion_type.proto delete mode 100644 google/ads/googleads/v6/enums/feed_mapping_status.proto delete mode 100644 google/ads/googleads/v6/enums/feed_origin.proto delete mode 100644 google/ads/googleads/v6/enums/feed_status.proto delete mode 100644 google/ads/googleads/v6/enums/flight_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/frequency_cap_event_type.proto delete mode 100644 google/ads/googleads/v6/enums/frequency_cap_level.proto delete mode 100644 google/ads/googleads/v6/enums/frequency_cap_time_unit.proto delete mode 100644 google/ads/googleads/v6/enums/gender_type.proto delete mode 100644 google/ads/googleads/v6/enums/geo_target_constant_status.proto delete mode 100644 google/ads/googleads/v6/enums/geo_targeting_restriction.proto delete mode 100644 google/ads/googleads/v6/enums/geo_targeting_type.proto delete mode 100644 google/ads/googleads/v6/enums/google_ads_field_category.proto delete mode 100644 google/ads/googleads/v6/enums/google_ads_field_data_type.proto delete mode 100644 google/ads/googleads/v6/enums/google_voice_call_status.proto delete mode 100644 google/ads/googleads/v6/enums/hotel_date_selection_type.proto delete mode 100644 google/ads/googleads/v6/enums/hotel_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/hotel_price_bucket.proto delete mode 100644 google/ads/googleads/v6/enums/hotel_rate_type.proto delete mode 100644 google/ads/googleads/v6/enums/image_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/income_range_type.proto delete mode 100644 google/ads/googleads/v6/enums/interaction_event_type.proto delete mode 100644 google/ads/googleads/v6/enums/interaction_type.proto delete mode 100644 google/ads/googleads/v6/enums/invoice_type.proto delete mode 100644 google/ads/googleads/v6/enums/job_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/keyword_match_type.proto delete mode 100644 google/ads/googleads/v6/enums/keyword_plan_competition_level.proto delete mode 100644 google/ads/googleads/v6/enums/keyword_plan_forecast_interval.proto delete mode 100644 google/ads/googleads/v6/enums/keyword_plan_network.proto delete mode 100644 google/ads/googleads/v6/enums/label_status.proto delete mode 100644 google/ads/googleads/v6/enums/lead_form_call_to_action_type.proto delete mode 100644 google/ads/googleads/v6/enums/lead_form_desired_intent.proto delete mode 100644 google/ads/googleads/v6/enums/lead_form_field_user_input_type.proto delete mode 100644 google/ads/googleads/v6/enums/lead_form_post_submit_call_to_action_type.proto delete mode 100644 google/ads/googleads/v6/enums/legacy_app_install_ad_app_store.proto delete mode 100644 google/ads/googleads/v6/enums/linked_account_type.proto delete mode 100644 google/ads/googleads/v6/enums/listing_group_type.proto delete mode 100644 google/ads/googleads/v6/enums/local_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/location_extension_targeting_criterion_field.proto delete mode 100644 google/ads/googleads/v6/enums/location_group_radius_units.proto delete mode 100644 google/ads/googleads/v6/enums/location_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/location_source_type.proto delete mode 100644 google/ads/googleads/v6/enums/manager_link_status.proto delete mode 100644 google/ads/googleads/v6/enums/matching_function_context_type.proto delete mode 100644 google/ads/googleads/v6/enums/matching_function_operator.proto delete mode 100644 google/ads/googleads/v6/enums/media_type.proto delete mode 100644 google/ads/googleads/v6/enums/merchant_center_link_status.proto delete mode 100644 google/ads/googleads/v6/enums/message_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/mime_type.proto delete mode 100644 google/ads/googleads/v6/enums/minute_of_hour.proto delete mode 100644 google/ads/googleads/v6/enums/mobile_app_vendor.proto delete mode 100644 google/ads/googleads/v6/enums/mobile_device_type.proto delete mode 100644 google/ads/googleads/v6/enums/month_of_year.proto delete mode 100644 google/ads/googleads/v6/enums/negative_geo_target_type.proto delete mode 100644 google/ads/googleads/v6/enums/offline_user_data_job_failure_reason.proto delete mode 100644 google/ads/googleads/v6/enums/offline_user_data_job_status.proto delete mode 100644 google/ads/googleads/v6/enums/offline_user_data_job_type.proto delete mode 100644 google/ads/googleads/v6/enums/operating_system_version_operator_type.proto delete mode 100644 google/ads/googleads/v6/enums/optimization_goal_type.proto delete mode 100644 google/ads/googleads/v6/enums/page_one_promoted_strategy_goal.proto delete mode 100644 google/ads/googleads/v6/enums/parental_status_type.proto delete mode 100644 google/ads/googleads/v6/enums/payment_mode.proto delete mode 100644 google/ads/googleads/v6/enums/placeholder_type.proto delete mode 100644 google/ads/googleads/v6/enums/placement_type.proto delete mode 100644 google/ads/googleads/v6/enums/policy_approval_status.proto delete mode 100644 google/ads/googleads/v6/enums/policy_review_status.proto delete mode 100644 google/ads/googleads/v6/enums/policy_topic_entry_type.proto delete mode 100644 google/ads/googleads/v6/enums/policy_topic_evidence_destination_mismatch_url_type.proto delete mode 100644 google/ads/googleads/v6/enums/policy_topic_evidence_destination_not_working_device.proto delete mode 100644 google/ads/googleads/v6/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto delete mode 100644 google/ads/googleads/v6/enums/positive_geo_target_type.proto delete mode 100644 google/ads/googleads/v6/enums/preferred_content_type.proto delete mode 100644 google/ads/googleads/v6/enums/price_extension_price_qualifier.proto delete mode 100644 google/ads/googleads/v6/enums/price_extension_price_unit.proto delete mode 100644 google/ads/googleads/v6/enums/price_extension_type.proto delete mode 100644 google/ads/googleads/v6/enums/price_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/product_bidding_category_level.proto delete mode 100644 google/ads/googleads/v6/enums/product_bidding_category_status.proto delete mode 100644 google/ads/googleads/v6/enums/product_channel.proto delete mode 100644 google/ads/googleads/v6/enums/product_channel_exclusivity.proto delete mode 100644 google/ads/googleads/v6/enums/product_condition.proto delete mode 100644 google/ads/googleads/v6/enums/product_custom_attribute_index.proto delete mode 100644 google/ads/googleads/v6/enums/product_type_level.proto delete mode 100644 google/ads/googleads/v6/enums/promotion_extension_discount_modifier.proto delete mode 100644 google/ads/googleads/v6/enums/promotion_extension_occasion.proto delete mode 100644 google/ads/googleads/v6/enums/promotion_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/proximity_radius_units.proto delete mode 100644 google/ads/googleads/v6/enums/quality_score_bucket.proto delete mode 100644 google/ads/googleads/v6/enums/reach_plan_ad_length.proto delete mode 100644 google/ads/googleads/v6/enums/reach_plan_age_range.proto delete mode 100644 google/ads/googleads/v6/enums/reach_plan_network.proto delete mode 100644 google/ads/googleads/v6/enums/real_estate_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/recommendation_type.proto delete mode 100644 google/ads/googleads/v6/enums/resource_change_operation.proto delete mode 100644 google/ads/googleads/v6/enums/response_content_type.proto delete mode 100644 google/ads/googleads/v6/enums/search_engine_results_page_type.proto delete mode 100644 google/ads/googleads/v6/enums/search_term_match_type.proto delete mode 100644 google/ads/googleads/v6/enums/search_term_targeting_status.proto delete mode 100644 google/ads/googleads/v6/enums/served_asset_field_type.proto delete mode 100644 google/ads/googleads/v6/enums/shared_set_status.proto delete mode 100644 google/ads/googleads/v6/enums/shared_set_type.proto delete mode 100644 google/ads/googleads/v6/enums/simulation_modification_method.proto delete mode 100644 google/ads/googleads/v6/enums/simulation_type.proto delete mode 100644 google/ads/googleads/v6/enums/sitelink_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/slot.proto delete mode 100644 google/ads/googleads/v6/enums/spending_limit_type.proto delete mode 100644 google/ads/googleads/v6/enums/structured_snippet_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/summary_row_setting.proto delete mode 100644 google/ads/googleads/v6/enums/system_managed_entity_source.proto delete mode 100644 google/ads/googleads/v6/enums/target_cpa_opt_in_recommendation_goal.proto delete mode 100644 google/ads/googleads/v6/enums/target_impression_share_location.proto delete mode 100644 google/ads/googleads/v6/enums/targeting_dimension.proto delete mode 100644 google/ads/googleads/v6/enums/time_type.proto delete mode 100644 google/ads/googleads/v6/enums/tracking_code_page_format.proto delete mode 100644 google/ads/googleads/v6/enums/tracking_code_type.proto delete mode 100644 google/ads/googleads/v6/enums/travel_placeholder_field.proto delete mode 100644 google/ads/googleads/v6/enums/user_identifier_source.proto delete mode 100644 google/ads/googleads/v6/enums/user_interest_taxonomy_type.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_access_status.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_closing_reason.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_combined_rule_operator.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_crm_data_source_type.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_date_rule_item_operator.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_logical_rule_operator.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_membership_status.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_number_rule_item_operator.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_prepopulation_status.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_rule_type.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_size_range.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_string_rule_item_operator.proto delete mode 100644 google/ads/googleads/v6/enums/user_list_type.proto delete mode 100644 google/ads/googleads/v6/enums/vanity_pharma_display_url_mode.proto delete mode 100644 google/ads/googleads/v6/enums/vanity_pharma_text.proto delete mode 100644 google/ads/googleads/v6/enums/webpage_condition_operand.proto delete mode 100644 google/ads/googleads/v6/enums/webpage_condition_operator.proto delete mode 100644 google/ads/googleads/v6/errors/BUILD.bazel delete mode 100644 google/ads/googleads/v6/errors/access_invitation_error.proto delete mode 100644 google/ads/googleads/v6/errors/account_budget_proposal_error.proto delete mode 100644 google/ads/googleads/v6/errors/account_link_error.proto delete mode 100644 google/ads/googleads/v6/errors/ad_customizer_error.proto delete mode 100644 google/ads/googleads/v6/errors/ad_error.proto delete mode 100644 google/ads/googleads/v6/errors/ad_group_ad_error.proto delete mode 100644 google/ads/googleads/v6/errors/ad_group_bid_modifier_error.proto delete mode 100644 google/ads/googleads/v6/errors/ad_group_criterion_error.proto delete mode 100644 google/ads/googleads/v6/errors/ad_group_error.proto delete mode 100644 google/ads/googleads/v6/errors/ad_group_feed_error.proto delete mode 100644 google/ads/googleads/v6/errors/ad_parameter_error.proto delete mode 100644 google/ads/googleads/v6/errors/ad_sharing_error.proto delete mode 100644 google/ads/googleads/v6/errors/adx_error.proto delete mode 100644 google/ads/googleads/v6/errors/asset_error.proto delete mode 100644 google/ads/googleads/v6/errors/asset_link_error.proto delete mode 100644 google/ads/googleads/v6/errors/authentication_error.proto delete mode 100644 google/ads/googleads/v6/errors/authorization_error.proto delete mode 100644 google/ads/googleads/v6/errors/batch_job_error.proto delete mode 100644 google/ads/googleads/v6/errors/bidding_error.proto delete mode 100644 google/ads/googleads/v6/errors/bidding_strategy_error.proto delete mode 100644 google/ads/googleads/v6/errors/billing_setup_error.proto delete mode 100644 google/ads/googleads/v6/errors/campaign_budget_error.proto delete mode 100644 google/ads/googleads/v6/errors/campaign_criterion_error.proto delete mode 100644 google/ads/googleads/v6/errors/campaign_draft_error.proto delete mode 100644 google/ads/googleads/v6/errors/campaign_error.proto delete mode 100644 google/ads/googleads/v6/errors/campaign_experiment_error.proto delete mode 100644 google/ads/googleads/v6/errors/campaign_feed_error.proto delete mode 100644 google/ads/googleads/v6/errors/campaign_shared_set_error.proto delete mode 100644 google/ads/googleads/v6/errors/change_event_error.proto delete mode 100644 google/ads/googleads/v6/errors/change_status_error.proto delete mode 100644 google/ads/googleads/v6/errors/collection_size_error.proto delete mode 100644 google/ads/googleads/v6/errors/context_error.proto delete mode 100644 google/ads/googleads/v6/errors/conversion_action_error.proto delete mode 100644 google/ads/googleads/v6/errors/conversion_adjustment_upload_error.proto delete mode 100644 google/ads/googleads/v6/errors/conversion_upload_error.proto delete mode 100644 google/ads/googleads/v6/errors/country_code_error.proto delete mode 100644 google/ads/googleads/v6/errors/criterion_error.proto delete mode 100644 google/ads/googleads/v6/errors/currency_code_error.proto delete mode 100644 google/ads/googleads/v6/errors/custom_audience_error.proto delete mode 100644 google/ads/googleads/v6/errors/custom_interest_error.proto delete mode 100644 google/ads/googleads/v6/errors/customer_client_link_error.proto delete mode 100644 google/ads/googleads/v6/errors/customer_error.proto delete mode 100644 google/ads/googleads/v6/errors/customer_feed_error.proto delete mode 100644 google/ads/googleads/v6/errors/customer_manager_link_error.proto delete mode 100644 google/ads/googleads/v6/errors/customer_user_access_error.proto delete mode 100644 google/ads/googleads/v6/errors/database_error.proto delete mode 100644 google/ads/googleads/v6/errors/date_error.proto delete mode 100644 google/ads/googleads/v6/errors/date_range_error.proto delete mode 100644 google/ads/googleads/v6/errors/distinct_error.proto delete mode 100644 google/ads/googleads/v6/errors/enum_error.proto delete mode 100644 google/ads/googleads/v6/errors/errors.proto delete mode 100644 google/ads/googleads/v6/errors/extension_feed_item_error.proto delete mode 100644 google/ads/googleads/v6/errors/extension_setting_error.proto delete mode 100644 google/ads/googleads/v6/errors/feed_attribute_reference_error.proto delete mode 100644 google/ads/googleads/v6/errors/feed_error.proto delete mode 100644 google/ads/googleads/v6/errors/feed_item_error.proto delete mode 100644 google/ads/googleads/v6/errors/feed_item_set_error.proto delete mode 100644 google/ads/googleads/v6/errors/feed_item_set_link_error.proto delete mode 100644 google/ads/googleads/v6/errors/feed_item_target_error.proto delete mode 100644 google/ads/googleads/v6/errors/feed_item_validation_error.proto delete mode 100644 google/ads/googleads/v6/errors/feed_mapping_error.proto delete mode 100644 google/ads/googleads/v6/errors/field_error.proto delete mode 100644 google/ads/googleads/v6/errors/field_mask_error.proto delete mode 100644 google/ads/googleads/v6/errors/function_error.proto delete mode 100644 google/ads/googleads/v6/errors/function_parsing_error.proto delete mode 100644 google/ads/googleads/v6/errors/geo_target_constant_suggestion_error.proto delete mode 100644 google/ads/googleads/v6/errors/header_error.proto delete mode 100644 google/ads/googleads/v6/errors/id_error.proto delete mode 100644 google/ads/googleads/v6/errors/image_error.proto delete mode 100644 google/ads/googleads/v6/errors/internal_error.proto delete mode 100644 google/ads/googleads/v6/errors/invoice_error.proto delete mode 100644 google/ads/googleads/v6/errors/keyword_plan_ad_group_error.proto delete mode 100644 google/ads/googleads/v6/errors/keyword_plan_ad_group_keyword_error.proto delete mode 100644 google/ads/googleads/v6/errors/keyword_plan_campaign_error.proto delete mode 100644 google/ads/googleads/v6/errors/keyword_plan_campaign_keyword_error.proto delete mode 100644 google/ads/googleads/v6/errors/keyword_plan_error.proto delete mode 100644 google/ads/googleads/v6/errors/keyword_plan_idea_error.proto delete mode 100644 google/ads/googleads/v6/errors/label_error.proto delete mode 100644 google/ads/googleads/v6/errors/language_code_error.proto delete mode 100644 google/ads/googleads/v6/errors/list_operation_error.proto delete mode 100644 google/ads/googleads/v6/errors/manager_link_error.proto delete mode 100644 google/ads/googleads/v6/errors/media_bundle_error.proto delete mode 100644 google/ads/googleads/v6/errors/media_file_error.proto delete mode 100644 google/ads/googleads/v6/errors/media_upload_error.proto delete mode 100644 google/ads/googleads/v6/errors/multiplier_error.proto delete mode 100644 google/ads/googleads/v6/errors/mutate_error.proto delete mode 100644 google/ads/googleads/v6/errors/new_resource_creation_error.proto delete mode 100644 google/ads/googleads/v6/errors/not_allowlisted_error.proto delete mode 100644 google/ads/googleads/v6/errors/not_empty_error.proto delete mode 100644 google/ads/googleads/v6/errors/null_error.proto delete mode 100644 google/ads/googleads/v6/errors/offline_user_data_job_error.proto delete mode 100644 google/ads/googleads/v6/errors/operation_access_denied_error.proto delete mode 100644 google/ads/googleads/v6/errors/operator_error.proto delete mode 100644 google/ads/googleads/v6/errors/partial_failure_error.proto delete mode 100644 google/ads/googleads/v6/errors/payments_account_error.proto delete mode 100644 google/ads/googleads/v6/errors/policy_finding_error.proto delete mode 100644 google/ads/googleads/v6/errors/policy_validation_parameter_error.proto delete mode 100644 google/ads/googleads/v6/errors/policy_violation_error.proto delete mode 100644 google/ads/googleads/v6/errors/query_error.proto delete mode 100644 google/ads/googleads/v6/errors/quota_error.proto delete mode 100644 google/ads/googleads/v6/errors/range_error.proto delete mode 100644 google/ads/googleads/v6/errors/reach_plan_error.proto delete mode 100644 google/ads/googleads/v6/errors/recommendation_error.proto delete mode 100644 google/ads/googleads/v6/errors/region_code_error.proto delete mode 100644 google/ads/googleads/v6/errors/request_error.proto delete mode 100644 google/ads/googleads/v6/errors/resource_access_denied_error.proto delete mode 100644 google/ads/googleads/v6/errors/resource_count_limit_exceeded_error.proto delete mode 100644 google/ads/googleads/v6/errors/setting_error.proto delete mode 100644 google/ads/googleads/v6/errors/shared_criterion_error.proto delete mode 100644 google/ads/googleads/v6/errors/shared_set_error.proto delete mode 100644 google/ads/googleads/v6/errors/size_limit_error.proto delete mode 100644 google/ads/googleads/v6/errors/string_format_error.proto delete mode 100644 google/ads/googleads/v6/errors/string_length_error.proto delete mode 100644 google/ads/googleads/v6/errors/third_party_app_analytics_link_error.proto delete mode 100644 google/ads/googleads/v6/errors/time_zone_error.proto delete mode 100644 google/ads/googleads/v6/errors/url_field_error.proto delete mode 100644 google/ads/googleads/v6/errors/user_data_error.proto delete mode 100644 google/ads/googleads/v6/errors/user_list_error.proto delete mode 100644 google/ads/googleads/v6/errors/youtube_video_registration_error.proto delete mode 100644 google/ads/googleads/v6/googleads_gapic.yaml delete mode 100644 google/ads/googleads/v6/googleads_grpc_service_config.json delete mode 100644 google/ads/googleads/v6/googleads_v6.yaml delete mode 100644 google/ads/googleads/v6/resources/BUILD.bazel delete mode 100644 google/ads/googleads/v6/resources/account_budget.proto delete mode 100644 google/ads/googleads/v6/resources/account_budget_proposal.proto delete mode 100644 google/ads/googleads/v6/resources/account_link.proto delete mode 100644 google/ads/googleads/v6/resources/ad.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_ad.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_ad_asset_view.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_ad_label.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_audience_view.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_bid_modifier.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_criterion.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_criterion_label.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_criterion_simulation.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_extension_setting.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_feed.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_label.proto delete mode 100644 google/ads/googleads/v6/resources/ad_group_simulation.proto delete mode 100644 google/ads/googleads/v6/resources/ad_parameter.proto delete mode 100644 google/ads/googleads/v6/resources/ad_schedule_view.proto delete mode 100644 google/ads/googleads/v6/resources/age_range_view.proto delete mode 100644 google/ads/googleads/v6/resources/asset.proto delete mode 100644 google/ads/googleads/v6/resources/batch_job.proto delete mode 100644 google/ads/googleads/v6/resources/bidding_strategy.proto delete mode 100644 google/ads/googleads/v6/resources/billing_setup.proto delete mode 100644 google/ads/googleads/v6/resources/call_view.proto delete mode 100644 google/ads/googleads/v6/resources/campaign.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_asset.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_audience_view.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_bid_modifier.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_budget.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_criterion.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_criterion_simulation.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_draft.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_experiment.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_extension_setting.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_feed.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_label.proto delete mode 100644 google/ads/googleads/v6/resources/campaign_shared_set.proto delete mode 100644 google/ads/googleads/v6/resources/carrier_constant.proto delete mode 100644 google/ads/googleads/v6/resources/change_event.proto delete mode 100644 google/ads/googleads/v6/resources/change_status.proto delete mode 100644 google/ads/googleads/v6/resources/click_view.proto delete mode 100644 google/ads/googleads/v6/resources/combined_audience.proto delete mode 100644 google/ads/googleads/v6/resources/conversion_action.proto delete mode 100644 google/ads/googleads/v6/resources/currency_constant.proto delete mode 100644 google/ads/googleads/v6/resources/custom_audience.proto delete mode 100644 google/ads/googleads/v6/resources/custom_interest.proto delete mode 100644 google/ads/googleads/v6/resources/customer.proto delete mode 100644 google/ads/googleads/v6/resources/customer_client.proto delete mode 100644 google/ads/googleads/v6/resources/customer_client_link.proto delete mode 100644 google/ads/googleads/v6/resources/customer_extension_setting.proto delete mode 100644 google/ads/googleads/v6/resources/customer_feed.proto delete mode 100644 google/ads/googleads/v6/resources/customer_label.proto delete mode 100644 google/ads/googleads/v6/resources/customer_manager_link.proto delete mode 100644 google/ads/googleads/v6/resources/customer_negative_criterion.proto delete mode 100644 google/ads/googleads/v6/resources/customer_user_access.proto delete mode 100644 google/ads/googleads/v6/resources/customer_user_access_invitation.proto delete mode 100644 google/ads/googleads/v6/resources/detail_placement_view.proto delete mode 100644 google/ads/googleads/v6/resources/display_keyword_view.proto delete mode 100644 google/ads/googleads/v6/resources/distance_view.proto delete mode 100644 google/ads/googleads/v6/resources/domain_category.proto delete mode 100644 google/ads/googleads/v6/resources/dynamic_search_ads_search_term_view.proto delete mode 100644 google/ads/googleads/v6/resources/expanded_landing_page_view.proto delete mode 100644 google/ads/googleads/v6/resources/extension_feed_item.proto delete mode 100644 google/ads/googleads/v6/resources/feed.proto delete mode 100644 google/ads/googleads/v6/resources/feed_item.proto delete mode 100644 google/ads/googleads/v6/resources/feed_item_set.proto delete mode 100644 google/ads/googleads/v6/resources/feed_item_set_link.proto delete mode 100644 google/ads/googleads/v6/resources/feed_item_target.proto delete mode 100644 google/ads/googleads/v6/resources/feed_mapping.proto delete mode 100644 google/ads/googleads/v6/resources/feed_placeholder_view.proto delete mode 100644 google/ads/googleads/v6/resources/gender_view.proto delete mode 100644 google/ads/googleads/v6/resources/geo_target_constant.proto delete mode 100644 google/ads/googleads/v6/resources/geographic_view.proto delete mode 100644 google/ads/googleads/v6/resources/google_ads_field.proto delete mode 100644 google/ads/googleads/v6/resources/group_placement_view.proto delete mode 100644 google/ads/googleads/v6/resources/hotel_group_view.proto delete mode 100644 google/ads/googleads/v6/resources/hotel_performance_view.proto delete mode 100644 google/ads/googleads/v6/resources/income_range_view.proto delete mode 100644 google/ads/googleads/v6/resources/invoice.proto delete mode 100644 google/ads/googleads/v6/resources/keyword_plan.proto delete mode 100644 google/ads/googleads/v6/resources/keyword_plan_ad_group.proto delete mode 100644 google/ads/googleads/v6/resources/keyword_plan_ad_group_keyword.proto delete mode 100644 google/ads/googleads/v6/resources/keyword_plan_campaign.proto delete mode 100644 google/ads/googleads/v6/resources/keyword_plan_campaign_keyword.proto delete mode 100644 google/ads/googleads/v6/resources/keyword_view.proto delete mode 100644 google/ads/googleads/v6/resources/label.proto delete mode 100644 google/ads/googleads/v6/resources/landing_page_view.proto delete mode 100644 google/ads/googleads/v6/resources/language_constant.proto delete mode 100644 google/ads/googleads/v6/resources/location_view.proto delete mode 100644 google/ads/googleads/v6/resources/managed_placement_view.proto delete mode 100644 google/ads/googleads/v6/resources/media_file.proto delete mode 100644 google/ads/googleads/v6/resources/merchant_center_link.proto delete mode 100644 google/ads/googleads/v6/resources/mobile_app_category_constant.proto delete mode 100644 google/ads/googleads/v6/resources/mobile_device_constant.proto delete mode 100644 google/ads/googleads/v6/resources/offline_user_data_job.proto delete mode 100644 google/ads/googleads/v6/resources/operating_system_version_constant.proto delete mode 100644 google/ads/googleads/v6/resources/paid_organic_search_term_view.proto delete mode 100644 google/ads/googleads/v6/resources/parental_status_view.proto delete mode 100644 google/ads/googleads/v6/resources/payments_account.proto delete mode 100644 google/ads/googleads/v6/resources/product_bidding_category_constant.proto delete mode 100644 google/ads/googleads/v6/resources/product_group_view.proto delete mode 100644 google/ads/googleads/v6/resources/recommendation.proto delete mode 100644 google/ads/googleads/v6/resources/remarketing_action.proto delete mode 100644 google/ads/googleads/v6/resources/search_term_view.proto delete mode 100644 google/ads/googleads/v6/resources/shared_criterion.proto delete mode 100644 google/ads/googleads/v6/resources/shared_set.proto delete mode 100644 google/ads/googleads/v6/resources/shopping_performance_view.proto delete mode 100644 google/ads/googleads/v6/resources/third_party_app_analytics_link.proto delete mode 100644 google/ads/googleads/v6/resources/topic_constant.proto delete mode 100644 google/ads/googleads/v6/resources/topic_view.proto delete mode 100644 google/ads/googleads/v6/resources/user_interest.proto delete mode 100644 google/ads/googleads/v6/resources/user_list.proto delete mode 100644 google/ads/googleads/v6/resources/user_location_view.proto delete mode 100644 google/ads/googleads/v6/resources/video.proto delete mode 100644 google/ads/googleads/v6/services/BUILD.bazel delete mode 100644 google/ads/googleads/v6/services/account_budget_proposal_service.proto delete mode 100644 google/ads/googleads/v6/services/account_budget_service.proto delete mode 100644 google/ads/googleads/v6/services/account_link_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_ad_asset_view_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_ad_label_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_ad_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_audience_view_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_bid_modifier_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_criterion_label_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_criterion_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_criterion_simulation_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_extension_setting_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_feed_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_label_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_group_simulation_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_parameter_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_schedule_view_service.proto delete mode 100644 google/ads/googleads/v6/services/ad_service.proto delete mode 100644 google/ads/googleads/v6/services/age_range_view_service.proto delete mode 100644 google/ads/googleads/v6/services/asset_service.proto delete mode 100644 google/ads/googleads/v6/services/batch_job_service.proto delete mode 100644 google/ads/googleads/v6/services/bidding_strategy_service.proto delete mode 100644 google/ads/googleads/v6/services/billing_setup_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_asset_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_audience_view_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_bid_modifier_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_budget_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_criterion_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_criterion_simulation_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_draft_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_experiment_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_extension_setting_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_feed_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_label_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_service.proto delete mode 100644 google/ads/googleads/v6/services/campaign_shared_set_service.proto delete mode 100644 google/ads/googleads/v6/services/carrier_constant_service.proto delete mode 100644 google/ads/googleads/v6/services/change_status_service.proto delete mode 100644 google/ads/googleads/v6/services/click_view_service.proto delete mode 100644 google/ads/googleads/v6/services/combined_audience_service.proto delete mode 100644 google/ads/googleads/v6/services/conversion_action_service.proto delete mode 100644 google/ads/googleads/v6/services/conversion_adjustment_upload_service.proto delete mode 100644 google/ads/googleads/v6/services/conversion_upload_service.proto delete mode 100644 google/ads/googleads/v6/services/currency_constant_service.proto delete mode 100644 google/ads/googleads/v6/services/custom_audience_service.proto delete mode 100644 google/ads/googleads/v6/services/custom_interest_service.proto delete mode 100644 google/ads/googleads/v6/services/customer_client_link_service.proto delete mode 100644 google/ads/googleads/v6/services/customer_client_service.proto delete mode 100644 google/ads/googleads/v6/services/customer_extension_setting_service.proto delete mode 100644 google/ads/googleads/v6/services/customer_feed_service.proto delete mode 100644 google/ads/googleads/v6/services/customer_label_service.proto delete mode 100644 google/ads/googleads/v6/services/customer_manager_link_service.proto delete mode 100644 google/ads/googleads/v6/services/customer_negative_criterion_service.proto delete mode 100644 google/ads/googleads/v6/services/customer_service.proto delete mode 100644 google/ads/googleads/v6/services/customer_user_access_invitation_service.proto delete mode 100644 google/ads/googleads/v6/services/customer_user_access_service.proto delete mode 100644 google/ads/googleads/v6/services/detail_placement_view_service.proto delete mode 100644 google/ads/googleads/v6/services/display_keyword_view_service.proto delete mode 100644 google/ads/googleads/v6/services/distance_view_service.proto delete mode 100644 google/ads/googleads/v6/services/domain_category_service.proto delete mode 100644 google/ads/googleads/v6/services/dynamic_search_ads_search_term_view_service.proto delete mode 100644 google/ads/googleads/v6/services/expanded_landing_page_view_service.proto delete mode 100644 google/ads/googleads/v6/services/extension_feed_item_service.proto delete mode 100644 google/ads/googleads/v6/services/feed_item_service.proto delete mode 100644 google/ads/googleads/v6/services/feed_item_set_link_service.proto delete mode 100644 google/ads/googleads/v6/services/feed_item_set_service.proto delete mode 100644 google/ads/googleads/v6/services/feed_item_target_service.proto delete mode 100644 google/ads/googleads/v6/services/feed_mapping_service.proto delete mode 100644 google/ads/googleads/v6/services/feed_placeholder_view_service.proto delete mode 100644 google/ads/googleads/v6/services/feed_service.proto delete mode 100644 google/ads/googleads/v6/services/gender_view_service.proto delete mode 100644 google/ads/googleads/v6/services/geo_target_constant_service.proto delete mode 100644 google/ads/googleads/v6/services/geographic_view_service.proto delete mode 100644 google/ads/googleads/v6/services/google_ads_field_service.proto delete mode 100644 google/ads/googleads/v6/services/google_ads_service.proto delete mode 100644 google/ads/googleads/v6/services/group_placement_view_service.proto delete mode 100644 google/ads/googleads/v6/services/hotel_group_view_service.proto delete mode 100644 google/ads/googleads/v6/services/hotel_performance_view_service.proto delete mode 100644 google/ads/googleads/v6/services/income_range_view_service.proto delete mode 100644 google/ads/googleads/v6/services/invoice_service.proto delete mode 100644 google/ads/googleads/v6/services/keyword_plan_ad_group_keyword_service.proto delete mode 100644 google/ads/googleads/v6/services/keyword_plan_ad_group_service.proto delete mode 100644 google/ads/googleads/v6/services/keyword_plan_campaign_keyword_service.proto delete mode 100644 google/ads/googleads/v6/services/keyword_plan_campaign_service.proto delete mode 100644 google/ads/googleads/v6/services/keyword_plan_idea_service.proto delete mode 100644 google/ads/googleads/v6/services/keyword_plan_service.proto delete mode 100644 google/ads/googleads/v6/services/keyword_view_service.proto delete mode 100644 google/ads/googleads/v6/services/label_service.proto delete mode 100644 google/ads/googleads/v6/services/landing_page_view_service.proto delete mode 100644 google/ads/googleads/v6/services/language_constant_service.proto delete mode 100644 google/ads/googleads/v6/services/location_view_service.proto delete mode 100644 google/ads/googleads/v6/services/managed_placement_view_service.proto delete mode 100644 google/ads/googleads/v6/services/media_file_service.proto delete mode 100644 google/ads/googleads/v6/services/merchant_center_link_service.proto delete mode 100644 google/ads/googleads/v6/services/mobile_app_category_constant_service.proto delete mode 100644 google/ads/googleads/v6/services/mobile_device_constant_service.proto delete mode 100644 google/ads/googleads/v6/services/offline_user_data_job_service.proto delete mode 100644 google/ads/googleads/v6/services/operating_system_version_constant_service.proto delete mode 100644 google/ads/googleads/v6/services/paid_organic_search_term_view_service.proto delete mode 100644 google/ads/googleads/v6/services/parental_status_view_service.proto delete mode 100644 google/ads/googleads/v6/services/payments_account_service.proto delete mode 100644 google/ads/googleads/v6/services/product_bidding_category_constant_service.proto delete mode 100644 google/ads/googleads/v6/services/product_group_view_service.proto delete mode 100644 google/ads/googleads/v6/services/reach_plan_service.proto delete mode 100644 google/ads/googleads/v6/services/recommendation_service.proto delete mode 100644 google/ads/googleads/v6/services/remarketing_action_service.proto delete mode 100644 google/ads/googleads/v6/services/search_term_view_service.proto delete mode 100644 google/ads/googleads/v6/services/shared_criterion_service.proto delete mode 100644 google/ads/googleads/v6/services/shared_set_service.proto delete mode 100644 google/ads/googleads/v6/services/shopping_performance_view_service.proto delete mode 100644 google/ads/googleads/v6/services/third_party_app_analytics_link_service.proto delete mode 100644 google/ads/googleads/v6/services/topic_constant_service.proto delete mode 100644 google/ads/googleads/v6/services/topic_view_service.proto delete mode 100644 google/ads/googleads/v6/services/user_data_service.proto delete mode 100644 google/ads/googleads/v6/services/user_interest_service.proto delete mode 100644 google/ads/googleads/v6/services/user_list_service.proto delete mode 100644 google/ads/googleads/v6/services/user_location_view_service.proto delete mode 100644 google/ads/googleads/v6/services/video_service.proto create mode 100644 google/ads/googleads/v8/BUILD.bazel create mode 100644 google/ads/googleads/v8/common/BUILD.bazel create mode 100644 google/ads/googleads/v8/common/ad_asset.proto create mode 100644 google/ads/googleads/v8/common/ad_type_infos.proto create mode 100644 google/ads/googleads/v8/common/asset_policy.proto create mode 100644 google/ads/googleads/v8/common/asset_types.proto create mode 100644 google/ads/googleads/v8/common/bidding.proto create mode 100644 google/ads/googleads/v8/common/click_location.proto create mode 100644 google/ads/googleads/v8/common/criteria.proto create mode 100644 google/ads/googleads/v8/common/criterion_category_availability.proto create mode 100644 google/ads/googleads/v8/common/custom_parameter.proto create mode 100644 google/ads/googleads/v8/common/dates.proto create mode 100644 google/ads/googleads/v8/common/explorer_auto_optimizer_setting.proto create mode 100644 google/ads/googleads/v8/common/extensions.proto create mode 100644 google/ads/googleads/v8/common/feed_common.proto create mode 100644 google/ads/googleads/v8/common/feed_item_set_filter_type_infos.proto create mode 100644 google/ads/googleads/v8/common/final_app_url.proto create mode 100644 google/ads/googleads/v8/common/frequency_cap.proto create mode 100644 google/ads/googleads/v8/common/keyword_plan_common.proto create mode 100644 google/ads/googleads/v8/common/matching_function.proto create mode 100644 google/ads/googleads/v8/common/metrics.proto create mode 100644 google/ads/googleads/v8/common/offline_user_data.proto create mode 100644 google/ads/googleads/v8/common/policy.proto create mode 100644 google/ads/googleads/v8/common/real_time_bidding_setting.proto create mode 100644 google/ads/googleads/v8/common/segments.proto create mode 100644 google/ads/googleads/v8/common/simulation.proto create mode 100644 google/ads/googleads/v8/common/tag_snippet.proto create mode 100644 google/ads/googleads/v8/common/targeting_setting.proto create mode 100644 google/ads/googleads/v8/common/text_label.proto create mode 100644 google/ads/googleads/v8/common/url_collection.proto create mode 100644 google/ads/googleads/v8/common/user_lists.proto create mode 100644 google/ads/googleads/v8/common/value.proto rename google/ads/googleads/{v4 => v8}/enums/BUILD.bazel (100%) create mode 100644 google/ads/googleads/v8/enums/access_invitation_status.proto create mode 100644 google/ads/googleads/v8/enums/access_reason.proto create mode 100644 google/ads/googleads/v8/enums/access_role.proto create mode 100644 google/ads/googleads/v8/enums/account_budget_proposal_status.proto create mode 100644 google/ads/googleads/v8/enums/account_budget_proposal_type.proto create mode 100644 google/ads/googleads/v8/enums/account_budget_status.proto create mode 100644 google/ads/googleads/v8/enums/account_link_status.proto create mode 100644 google/ads/googleads/v8/enums/ad_customizer_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/ad_destination_type.proto create mode 100644 google/ads/googleads/v8/enums/ad_group_ad_rotation_mode.proto create mode 100644 google/ads/googleads/v8/enums/ad_group_ad_status.proto create mode 100644 google/ads/googleads/v8/enums/ad_group_criterion_approval_status.proto create mode 100644 google/ads/googleads/v8/enums/ad_group_criterion_status.proto create mode 100644 google/ads/googleads/v8/enums/ad_group_status.proto create mode 100644 google/ads/googleads/v8/enums/ad_group_type.proto create mode 100644 google/ads/googleads/v8/enums/ad_network_type.proto create mode 100644 google/ads/googleads/v8/enums/ad_serving_optimization_status.proto create mode 100644 google/ads/googleads/v8/enums/ad_strength.proto create mode 100644 google/ads/googleads/v8/enums/ad_type.proto create mode 100644 google/ads/googleads/v8/enums/advertising_channel_sub_type.proto create mode 100644 google/ads/googleads/v8/enums/advertising_channel_type.proto create mode 100644 google/ads/googleads/v8/enums/affiliate_location_feed_relationship_type.proto create mode 100644 google/ads/googleads/v8/enums/affiliate_location_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/age_range_type.proto create mode 100644 google/ads/googleads/v8/enums/app_campaign_app_store.proto create mode 100644 google/ads/googleads/v8/enums/app_campaign_bidding_strategy_goal_type.proto create mode 100644 google/ads/googleads/v8/enums/app_payment_model_type.proto create mode 100644 google/ads/googleads/v8/enums/app_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/app_store.proto create mode 100644 google/ads/googleads/v8/enums/app_url_operating_system_type.proto create mode 100644 google/ads/googleads/v8/enums/asset_field_type.proto create mode 100644 google/ads/googleads/v8/enums/asset_link_status.proto create mode 100644 google/ads/googleads/v8/enums/asset_performance_label.proto create mode 100644 google/ads/googleads/v8/enums/asset_type.proto create mode 100644 google/ads/googleads/v8/enums/attribution_model.proto create mode 100644 google/ads/googleads/v8/enums/batch_job_status.proto create mode 100644 google/ads/googleads/v8/enums/bid_modifier_source.proto create mode 100644 google/ads/googleads/v8/enums/bidding_source.proto create mode 100644 google/ads/googleads/v8/enums/bidding_strategy_status.proto create mode 100644 google/ads/googleads/v8/enums/bidding_strategy_type.proto create mode 100644 google/ads/googleads/v8/enums/billing_setup_status.proto create mode 100644 google/ads/googleads/v8/enums/brand_safety_suitability.proto create mode 100644 google/ads/googleads/v8/enums/budget_campaign_association_status.proto create mode 100644 google/ads/googleads/v8/enums/budget_delivery_method.proto create mode 100644 google/ads/googleads/v8/enums/budget_period.proto create mode 100644 google/ads/googleads/v8/enums/budget_status.proto create mode 100644 google/ads/googleads/v8/enums/budget_type.proto create mode 100644 google/ads/googleads/v8/enums/call_conversion_reporting_state.proto create mode 100644 google/ads/googleads/v8/enums/call_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/call_tracking_display_location.proto create mode 100644 google/ads/googleads/v8/enums/call_type.proto create mode 100644 google/ads/googleads/v8/enums/callout_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/campaign_criterion_status.proto create mode 100644 google/ads/googleads/v8/enums/campaign_draft_status.proto create mode 100644 google/ads/googleads/v8/enums/campaign_experiment_status.proto create mode 100644 google/ads/googleads/v8/enums/campaign_experiment_traffic_split_type.proto create mode 100644 google/ads/googleads/v8/enums/campaign_experiment_type.proto create mode 100644 google/ads/googleads/v8/enums/campaign_serving_status.proto create mode 100644 google/ads/googleads/v8/enums/campaign_shared_set_status.proto create mode 100644 google/ads/googleads/v8/enums/campaign_status.proto create mode 100644 google/ads/googleads/v8/enums/change_client_type.proto create mode 100644 google/ads/googleads/v8/enums/change_event_resource_type.proto create mode 100644 google/ads/googleads/v8/enums/change_status_operation.proto create mode 100644 google/ads/googleads/v8/enums/change_status_resource_type.proto create mode 100644 google/ads/googleads/v8/enums/click_type.proto create mode 100644 google/ads/googleads/v8/enums/combined_audience_status.proto create mode 100644 google/ads/googleads/v8/enums/content_label_type.proto create mode 100644 google/ads/googleads/v8/enums/conversion_action_category.proto create mode 100644 google/ads/googleads/v8/enums/conversion_action_counting_type.proto create mode 100644 google/ads/googleads/v8/enums/conversion_action_status.proto create mode 100644 google/ads/googleads/v8/enums/conversion_action_type.proto create mode 100644 google/ads/googleads/v8/enums/conversion_adjustment_type.proto create mode 100644 google/ads/googleads/v8/enums/conversion_attribution_event_type.proto create mode 100644 google/ads/googleads/v8/enums/conversion_custom_variable_status.proto create mode 100644 google/ads/googleads/v8/enums/conversion_lag_bucket.proto create mode 100644 google/ads/googleads/v8/enums/conversion_or_adjustment_lag_bucket.proto create mode 100644 google/ads/googleads/v8/enums/conversion_value_rule_primary_dimension.proto create mode 100644 google/ads/googleads/v8/enums/conversion_value_rule_set_status.proto create mode 100644 google/ads/googleads/v8/enums/conversion_value_rule_status.proto create mode 100644 google/ads/googleads/v8/enums/criterion_category_channel_availability_mode.proto create mode 100644 google/ads/googleads/v8/enums/criterion_category_locale_availability_mode.proto create mode 100644 google/ads/googleads/v8/enums/criterion_system_serving_status.proto create mode 100644 google/ads/googleads/v8/enums/criterion_type.proto create mode 100644 google/ads/googleads/v8/enums/custom_audience_member_type.proto create mode 100644 google/ads/googleads/v8/enums/custom_audience_status.proto create mode 100644 google/ads/googleads/v8/enums/custom_audience_type.proto create mode 100644 google/ads/googleads/v8/enums/custom_interest_member_type.proto create mode 100644 google/ads/googleads/v8/enums/custom_interest_status.proto create mode 100644 google/ads/googleads/v8/enums/custom_interest_type.proto create mode 100644 google/ads/googleads/v8/enums/custom_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/customer_match_upload_key_type.proto create mode 100644 google/ads/googleads/v8/enums/customer_pay_per_conversion_eligibility_failure_reason.proto create mode 100644 google/ads/googleads/v8/enums/data_driven_model_status.proto create mode 100644 google/ads/googleads/v8/enums/day_of_week.proto create mode 100644 google/ads/googleads/v8/enums/device.proto create mode 100644 google/ads/googleads/v8/enums/display_ad_format_setting.proto create mode 100644 google/ads/googleads/v8/enums/display_upload_product_type.proto create mode 100644 google/ads/googleads/v8/enums/distance_bucket.proto create mode 100644 google/ads/googleads/v8/enums/dsa_page_feed_criterion_field.proto create mode 100644 google/ads/googleads/v8/enums/education_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/extension_setting_device.proto create mode 100644 google/ads/googleads/v8/enums/extension_type.proto create mode 100644 google/ads/googleads/v8/enums/external_conversion_source.proto create mode 100644 google/ads/googleads/v8/enums/feed_attribute_type.proto create mode 100644 google/ads/googleads/v8/enums/feed_item_quality_approval_status.proto create mode 100644 google/ads/googleads/v8/enums/feed_item_quality_disapproval_reason.proto create mode 100644 google/ads/googleads/v8/enums/feed_item_set_status.proto create mode 100644 google/ads/googleads/v8/enums/feed_item_set_string_filter_type.proto create mode 100644 google/ads/googleads/v8/enums/feed_item_status.proto create mode 100644 google/ads/googleads/v8/enums/feed_item_target_device.proto create mode 100644 google/ads/googleads/v8/enums/feed_item_target_status.proto create mode 100644 google/ads/googleads/v8/enums/feed_item_target_type.proto create mode 100644 google/ads/googleads/v8/enums/feed_item_validation_status.proto create mode 100644 google/ads/googleads/v8/enums/feed_link_status.proto create mode 100644 google/ads/googleads/v8/enums/feed_mapping_criterion_type.proto create mode 100644 google/ads/googleads/v8/enums/feed_mapping_status.proto create mode 100644 google/ads/googleads/v8/enums/feed_origin.proto create mode 100644 google/ads/googleads/v8/enums/feed_status.proto create mode 100644 google/ads/googleads/v8/enums/flight_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/frequency_cap_event_type.proto create mode 100644 google/ads/googleads/v8/enums/frequency_cap_level.proto create mode 100644 google/ads/googleads/v8/enums/frequency_cap_time_unit.proto create mode 100644 google/ads/googleads/v8/enums/gender_type.proto create mode 100644 google/ads/googleads/v8/enums/geo_target_constant_status.proto create mode 100644 google/ads/googleads/v8/enums/geo_targeting_restriction.proto create mode 100644 google/ads/googleads/v8/enums/geo_targeting_type.proto create mode 100644 google/ads/googleads/v8/enums/google_ads_field_category.proto create mode 100644 google/ads/googleads/v8/enums/google_ads_field_data_type.proto create mode 100644 google/ads/googleads/v8/enums/google_voice_call_status.proto create mode 100644 google/ads/googleads/v8/enums/hotel_date_selection_type.proto create mode 100644 google/ads/googleads/v8/enums/hotel_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/hotel_price_bucket.proto create mode 100644 google/ads/googleads/v8/enums/hotel_rate_type.proto create mode 100644 google/ads/googleads/v8/enums/image_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/income_range_type.proto create mode 100644 google/ads/googleads/v8/enums/interaction_event_type.proto create mode 100644 google/ads/googleads/v8/enums/interaction_type.proto create mode 100644 google/ads/googleads/v8/enums/invoice_type.proto create mode 100644 google/ads/googleads/v8/enums/job_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/keyword_match_type.proto create mode 100644 google/ads/googleads/v8/enums/keyword_plan_aggregate_metric_type.proto create mode 100644 google/ads/googleads/v8/enums/keyword_plan_competition_level.proto create mode 100644 google/ads/googleads/v8/enums/keyword_plan_concept_group_type.proto create mode 100644 google/ads/googleads/v8/enums/keyword_plan_forecast_interval.proto create mode 100644 google/ads/googleads/v8/enums/keyword_plan_keyword_annotation.proto create mode 100644 google/ads/googleads/v8/enums/keyword_plan_network.proto create mode 100644 google/ads/googleads/v8/enums/label_status.proto create mode 100644 google/ads/googleads/v8/enums/lead_form_call_to_action_type.proto create mode 100644 google/ads/googleads/v8/enums/lead_form_desired_intent.proto create mode 100644 google/ads/googleads/v8/enums/lead_form_field_user_input_type.proto create mode 100644 google/ads/googleads/v8/enums/lead_form_post_submit_call_to_action_type.proto create mode 100644 google/ads/googleads/v8/enums/legacy_app_install_ad_app_store.proto create mode 100644 google/ads/googleads/v8/enums/linked_account_type.proto create mode 100644 google/ads/googleads/v8/enums/listing_group_type.proto create mode 100644 google/ads/googleads/v8/enums/local_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/location_extension_targeting_criterion_field.proto create mode 100644 google/ads/googleads/v8/enums/location_group_radius_units.proto create mode 100644 google/ads/googleads/v8/enums/location_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/location_source_type.proto create mode 100644 google/ads/googleads/v8/enums/manager_link_status.proto create mode 100644 google/ads/googleads/v8/enums/matching_function_context_type.proto create mode 100644 google/ads/googleads/v8/enums/matching_function_operator.proto create mode 100644 google/ads/googleads/v8/enums/media_type.proto create mode 100644 google/ads/googleads/v8/enums/merchant_center_link_status.proto create mode 100644 google/ads/googleads/v8/enums/message_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/mime_type.proto create mode 100644 google/ads/googleads/v8/enums/minute_of_hour.proto create mode 100644 google/ads/googleads/v8/enums/mobile_app_vendor.proto create mode 100644 google/ads/googleads/v8/enums/mobile_device_type.proto create mode 100644 google/ads/googleads/v8/enums/month_of_year.proto create mode 100644 google/ads/googleads/v8/enums/negative_geo_target_type.proto create mode 100644 google/ads/googleads/v8/enums/offline_user_data_job_failure_reason.proto create mode 100644 google/ads/googleads/v8/enums/offline_user_data_job_status.proto create mode 100644 google/ads/googleads/v8/enums/offline_user_data_job_type.proto create mode 100644 google/ads/googleads/v8/enums/operating_system_version_operator_type.proto create mode 100644 google/ads/googleads/v8/enums/optimization_goal_type.proto create mode 100644 google/ads/googleads/v8/enums/parental_status_type.proto create mode 100644 google/ads/googleads/v8/enums/payment_mode.proto create mode 100644 google/ads/googleads/v8/enums/placeholder_type.proto create mode 100644 google/ads/googleads/v8/enums/placement_type.proto create mode 100644 google/ads/googleads/v8/enums/policy_approval_status.proto create mode 100644 google/ads/googleads/v8/enums/policy_review_status.proto create mode 100644 google/ads/googleads/v8/enums/policy_topic_entry_type.proto create mode 100644 google/ads/googleads/v8/enums/policy_topic_evidence_destination_mismatch_url_type.proto create mode 100644 google/ads/googleads/v8/enums/policy_topic_evidence_destination_not_working_device.proto create mode 100644 google/ads/googleads/v8/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto create mode 100644 google/ads/googleads/v8/enums/positive_geo_target_type.proto create mode 100644 google/ads/googleads/v8/enums/preferred_content_type.proto create mode 100644 google/ads/googleads/v8/enums/price_extension_price_qualifier.proto create mode 100644 google/ads/googleads/v8/enums/price_extension_price_unit.proto create mode 100644 google/ads/googleads/v8/enums/price_extension_type.proto create mode 100644 google/ads/googleads/v8/enums/price_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/product_bidding_category_level.proto create mode 100644 google/ads/googleads/v8/enums/product_bidding_category_status.proto create mode 100644 google/ads/googleads/v8/enums/product_channel.proto create mode 100644 google/ads/googleads/v8/enums/product_channel_exclusivity.proto create mode 100644 google/ads/googleads/v8/enums/product_condition.proto create mode 100644 google/ads/googleads/v8/enums/product_custom_attribute_index.proto create mode 100644 google/ads/googleads/v8/enums/product_type_level.proto create mode 100644 google/ads/googleads/v8/enums/promotion_extension_discount_modifier.proto create mode 100644 google/ads/googleads/v8/enums/promotion_extension_occasion.proto create mode 100644 google/ads/googleads/v8/enums/promotion_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/proximity_radius_units.proto create mode 100644 google/ads/googleads/v8/enums/quality_score_bucket.proto create mode 100644 google/ads/googleads/v8/enums/reach_plan_ad_length.proto create mode 100644 google/ads/googleads/v8/enums/reach_plan_age_range.proto create mode 100644 google/ads/googleads/v8/enums/reach_plan_network.proto create mode 100644 google/ads/googleads/v8/enums/real_estate_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/recommendation_type.proto create mode 100644 google/ads/googleads/v8/enums/resource_change_operation.proto create mode 100644 google/ads/googleads/v8/enums/resource_limit_type.proto create mode 100644 google/ads/googleads/v8/enums/response_content_type.proto create mode 100644 google/ads/googleads/v8/enums/search_engine_results_page_type.proto create mode 100644 google/ads/googleads/v8/enums/search_term_match_type.proto create mode 100644 google/ads/googleads/v8/enums/search_term_targeting_status.proto create mode 100644 google/ads/googleads/v8/enums/seasonality_event_scope.proto create mode 100644 google/ads/googleads/v8/enums/seasonality_event_status.proto create mode 100644 google/ads/googleads/v8/enums/served_asset_field_type.proto create mode 100644 google/ads/googleads/v8/enums/shared_set_status.proto create mode 100644 google/ads/googleads/v8/enums/shared_set_type.proto create mode 100644 google/ads/googleads/v8/enums/simulation_modification_method.proto create mode 100644 google/ads/googleads/v8/enums/simulation_type.proto create mode 100644 google/ads/googleads/v8/enums/sitelink_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/slot.proto create mode 100644 google/ads/googleads/v8/enums/spending_limit_type.proto create mode 100644 google/ads/googleads/v8/enums/structured_snippet_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/summary_row_setting.proto create mode 100644 google/ads/googleads/v8/enums/system_managed_entity_source.proto create mode 100644 google/ads/googleads/v8/enums/target_cpa_opt_in_recommendation_goal.proto create mode 100644 google/ads/googleads/v8/enums/target_impression_share_location.proto create mode 100644 google/ads/googleads/v8/enums/targeting_dimension.proto create mode 100644 google/ads/googleads/v8/enums/time_type.proto create mode 100644 google/ads/googleads/v8/enums/tracking_code_page_format.proto create mode 100644 google/ads/googleads/v8/enums/tracking_code_type.proto create mode 100644 google/ads/googleads/v8/enums/travel_placeholder_field.proto create mode 100644 google/ads/googleads/v8/enums/user_identifier_source.proto create mode 100644 google/ads/googleads/v8/enums/user_interest_taxonomy_type.proto create mode 100644 google/ads/googleads/v8/enums/user_list_access_status.proto create mode 100644 google/ads/googleads/v8/enums/user_list_closing_reason.proto create mode 100644 google/ads/googleads/v8/enums/user_list_combined_rule_operator.proto create mode 100644 google/ads/googleads/v8/enums/user_list_crm_data_source_type.proto create mode 100644 google/ads/googleads/v8/enums/user_list_date_rule_item_operator.proto create mode 100644 google/ads/googleads/v8/enums/user_list_logical_rule_operator.proto create mode 100644 google/ads/googleads/v8/enums/user_list_membership_status.proto create mode 100644 google/ads/googleads/v8/enums/user_list_number_rule_item_operator.proto create mode 100644 google/ads/googleads/v8/enums/user_list_prepopulation_status.proto create mode 100644 google/ads/googleads/v8/enums/user_list_rule_type.proto create mode 100644 google/ads/googleads/v8/enums/user_list_size_range.proto create mode 100644 google/ads/googleads/v8/enums/user_list_string_rule_item_operator.proto create mode 100644 google/ads/googleads/v8/enums/user_list_type.proto create mode 100644 google/ads/googleads/v8/enums/value_rule_device_type.proto create mode 100644 google/ads/googleads/v8/enums/value_rule_geo_location_match_type.proto create mode 100644 google/ads/googleads/v8/enums/value_rule_operation.proto create mode 100644 google/ads/googleads/v8/enums/value_rule_set_attachment_type.proto create mode 100644 google/ads/googleads/v8/enums/value_rule_set_dimension.proto create mode 100644 google/ads/googleads/v8/enums/vanity_pharma_display_url_mode.proto create mode 100644 google/ads/googleads/v8/enums/vanity_pharma_text.proto create mode 100644 google/ads/googleads/v8/enums/webpage_condition_operand.proto create mode 100644 google/ads/googleads/v8/enums/webpage_condition_operator.proto create mode 100644 google/ads/googleads/v8/errors/BUILD.bazel create mode 100644 google/ads/googleads/v8/errors/access_invitation_error.proto create mode 100644 google/ads/googleads/v8/errors/account_budget_proposal_error.proto create mode 100644 google/ads/googleads/v8/errors/account_link_error.proto create mode 100644 google/ads/googleads/v8/errors/ad_customizer_error.proto create mode 100644 google/ads/googleads/v8/errors/ad_error.proto create mode 100644 google/ads/googleads/v8/errors/ad_group_ad_error.proto create mode 100644 google/ads/googleads/v8/errors/ad_group_bid_modifier_error.proto create mode 100644 google/ads/googleads/v8/errors/ad_group_criterion_error.proto create mode 100644 google/ads/googleads/v8/errors/ad_group_error.proto create mode 100644 google/ads/googleads/v8/errors/ad_group_feed_error.proto create mode 100644 google/ads/googleads/v8/errors/ad_parameter_error.proto create mode 100644 google/ads/googleads/v8/errors/ad_sharing_error.proto create mode 100644 google/ads/googleads/v8/errors/adx_error.proto create mode 100644 google/ads/googleads/v8/errors/asset_error.proto create mode 100644 google/ads/googleads/v8/errors/asset_link_error.proto create mode 100644 google/ads/googleads/v8/errors/authentication_error.proto create mode 100644 google/ads/googleads/v8/errors/authorization_error.proto create mode 100644 google/ads/googleads/v8/errors/batch_job_error.proto create mode 100644 google/ads/googleads/v8/errors/bidding_error.proto create mode 100644 google/ads/googleads/v8/errors/bidding_strategy_error.proto create mode 100644 google/ads/googleads/v8/errors/billing_setup_error.proto create mode 100644 google/ads/googleads/v8/errors/campaign_budget_error.proto create mode 100644 google/ads/googleads/v8/errors/campaign_criterion_error.proto create mode 100644 google/ads/googleads/v8/errors/campaign_draft_error.proto create mode 100644 google/ads/googleads/v8/errors/campaign_error.proto create mode 100644 google/ads/googleads/v8/errors/campaign_experiment_error.proto create mode 100644 google/ads/googleads/v8/errors/campaign_feed_error.proto create mode 100644 google/ads/googleads/v8/errors/campaign_shared_set_error.proto create mode 100644 google/ads/googleads/v8/errors/change_event_error.proto create mode 100644 google/ads/googleads/v8/errors/change_status_error.proto create mode 100644 google/ads/googleads/v8/errors/collection_size_error.proto create mode 100644 google/ads/googleads/v8/errors/context_error.proto create mode 100644 google/ads/googleads/v8/errors/conversion_action_error.proto create mode 100644 google/ads/googleads/v8/errors/conversion_adjustment_upload_error.proto create mode 100644 google/ads/googleads/v8/errors/conversion_custom_variable_error.proto create mode 100644 google/ads/googleads/v8/errors/conversion_upload_error.proto create mode 100644 google/ads/googleads/v8/errors/conversion_value_rule_error.proto create mode 100644 google/ads/googleads/v8/errors/conversion_value_rule_set_error.proto create mode 100644 google/ads/googleads/v8/errors/country_code_error.proto create mode 100644 google/ads/googleads/v8/errors/criterion_error.proto create mode 100644 google/ads/googleads/v8/errors/currency_code_error.proto create mode 100644 google/ads/googleads/v8/errors/custom_audience_error.proto create mode 100644 google/ads/googleads/v8/errors/custom_interest_error.proto create mode 100644 google/ads/googleads/v8/errors/customer_client_link_error.proto create mode 100644 google/ads/googleads/v8/errors/customer_error.proto create mode 100644 google/ads/googleads/v8/errors/customer_feed_error.proto create mode 100644 google/ads/googleads/v8/errors/customer_manager_link_error.proto create mode 100644 google/ads/googleads/v8/errors/customer_user_access_error.proto create mode 100644 google/ads/googleads/v8/errors/database_error.proto create mode 100644 google/ads/googleads/v8/errors/date_error.proto create mode 100644 google/ads/googleads/v8/errors/date_range_error.proto create mode 100644 google/ads/googleads/v8/errors/distinct_error.proto create mode 100644 google/ads/googleads/v8/errors/enum_error.proto create mode 100644 google/ads/googleads/v8/errors/errors.proto create mode 100644 google/ads/googleads/v8/errors/extension_feed_item_error.proto create mode 100644 google/ads/googleads/v8/errors/extension_setting_error.proto create mode 100644 google/ads/googleads/v8/errors/feed_attribute_reference_error.proto create mode 100644 google/ads/googleads/v8/errors/feed_error.proto create mode 100644 google/ads/googleads/v8/errors/feed_item_error.proto create mode 100644 google/ads/googleads/v8/errors/feed_item_set_error.proto create mode 100644 google/ads/googleads/v8/errors/feed_item_set_link_error.proto create mode 100644 google/ads/googleads/v8/errors/feed_item_target_error.proto create mode 100644 google/ads/googleads/v8/errors/feed_item_validation_error.proto create mode 100644 google/ads/googleads/v8/errors/feed_mapping_error.proto create mode 100644 google/ads/googleads/v8/errors/field_error.proto create mode 100644 google/ads/googleads/v8/errors/field_mask_error.proto create mode 100644 google/ads/googleads/v8/errors/function_error.proto create mode 100644 google/ads/googleads/v8/errors/function_parsing_error.proto create mode 100644 google/ads/googleads/v8/errors/geo_target_constant_suggestion_error.proto create mode 100644 google/ads/googleads/v8/errors/header_error.proto create mode 100644 google/ads/googleads/v8/errors/id_error.proto create mode 100644 google/ads/googleads/v8/errors/image_error.proto create mode 100644 google/ads/googleads/v8/errors/internal_error.proto create mode 100644 google/ads/googleads/v8/errors/invoice_error.proto create mode 100644 google/ads/googleads/v8/errors/keyword_plan_ad_group_error.proto create mode 100644 google/ads/googleads/v8/errors/keyword_plan_ad_group_keyword_error.proto create mode 100644 google/ads/googleads/v8/errors/keyword_plan_campaign_error.proto create mode 100644 google/ads/googleads/v8/errors/keyword_plan_campaign_keyword_error.proto create mode 100644 google/ads/googleads/v8/errors/keyword_plan_error.proto create mode 100644 google/ads/googleads/v8/errors/keyword_plan_idea_error.proto create mode 100644 google/ads/googleads/v8/errors/label_error.proto create mode 100644 google/ads/googleads/v8/errors/language_code_error.proto create mode 100644 google/ads/googleads/v8/errors/list_operation_error.proto create mode 100644 google/ads/googleads/v8/errors/manager_link_error.proto create mode 100644 google/ads/googleads/v8/errors/media_bundle_error.proto create mode 100644 google/ads/googleads/v8/errors/media_file_error.proto create mode 100644 google/ads/googleads/v8/errors/media_upload_error.proto create mode 100644 google/ads/googleads/v8/errors/multiplier_error.proto create mode 100644 google/ads/googleads/v8/errors/mutate_error.proto create mode 100644 google/ads/googleads/v8/errors/new_resource_creation_error.proto create mode 100644 google/ads/googleads/v8/errors/not_allowlisted_error.proto create mode 100644 google/ads/googleads/v8/errors/not_empty_error.proto create mode 100644 google/ads/googleads/v8/errors/null_error.proto create mode 100644 google/ads/googleads/v8/errors/offline_user_data_job_error.proto create mode 100644 google/ads/googleads/v8/errors/operation_access_denied_error.proto create mode 100644 google/ads/googleads/v8/errors/operator_error.proto create mode 100644 google/ads/googleads/v8/errors/partial_failure_error.proto create mode 100644 google/ads/googleads/v8/errors/payments_account_error.proto create mode 100644 google/ads/googleads/v8/errors/policy_finding_error.proto create mode 100644 google/ads/googleads/v8/errors/policy_validation_parameter_error.proto create mode 100644 google/ads/googleads/v8/errors/policy_violation_error.proto create mode 100644 google/ads/googleads/v8/errors/query_error.proto create mode 100644 google/ads/googleads/v8/errors/quota_error.proto create mode 100644 google/ads/googleads/v8/errors/range_error.proto create mode 100644 google/ads/googleads/v8/errors/reach_plan_error.proto create mode 100644 google/ads/googleads/v8/errors/recommendation_error.proto create mode 100644 google/ads/googleads/v8/errors/region_code_error.proto create mode 100644 google/ads/googleads/v8/errors/request_error.proto create mode 100644 google/ads/googleads/v8/errors/resource_access_denied_error.proto create mode 100644 google/ads/googleads/v8/errors/resource_count_limit_exceeded_error.proto create mode 100644 google/ads/googleads/v8/errors/setting_error.proto create mode 100644 google/ads/googleads/v8/errors/shared_criterion_error.proto create mode 100644 google/ads/googleads/v8/errors/shared_set_error.proto create mode 100644 google/ads/googleads/v8/errors/size_limit_error.proto create mode 100644 google/ads/googleads/v8/errors/string_format_error.proto create mode 100644 google/ads/googleads/v8/errors/string_length_error.proto create mode 100644 google/ads/googleads/v8/errors/third_party_app_analytics_link_error.proto create mode 100644 google/ads/googleads/v8/errors/time_zone_error.proto create mode 100644 google/ads/googleads/v8/errors/url_field_error.proto create mode 100644 google/ads/googleads/v8/errors/user_data_error.proto create mode 100644 google/ads/googleads/v8/errors/user_list_error.proto create mode 100644 google/ads/googleads/v8/errors/youtube_video_registration_error.proto create mode 100644 google/ads/googleads/v8/googleads_gapic.yaml create mode 100755 google/ads/googleads/v8/googleads_grpc_service_config.json create mode 100644 google/ads/googleads/v8/googleads_v8.yaml create mode 100644 google/ads/googleads/v8/resources/BUILD.bazel create mode 100644 google/ads/googleads/v8/resources/accessible_bidding_strategy.proto create mode 100644 google/ads/googleads/v8/resources/account_budget.proto create mode 100644 google/ads/googleads/v8/resources/account_budget_proposal.proto create mode 100644 google/ads/googleads/v8/resources/account_link.proto create mode 100644 google/ads/googleads/v8/resources/ad.proto create mode 100644 google/ads/googleads/v8/resources/ad_group.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_ad.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_ad_asset_view.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_ad_label.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_asset.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_audience_view.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_bid_modifier.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_criterion.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_criterion_label.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_criterion_simulation.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_extension_setting.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_feed.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_label.proto create mode 100644 google/ads/googleads/v8/resources/ad_group_simulation.proto create mode 100644 google/ads/googleads/v8/resources/ad_parameter.proto create mode 100644 google/ads/googleads/v8/resources/ad_schedule_view.proto create mode 100644 google/ads/googleads/v8/resources/age_range_view.proto create mode 100644 google/ads/googleads/v8/resources/asset.proto create mode 100644 google/ads/googleads/v8/resources/asset_field_type_view.proto create mode 100644 google/ads/googleads/v8/resources/batch_job.proto create mode 100644 google/ads/googleads/v8/resources/bidding_data_exclusion.proto create mode 100644 google/ads/googleads/v8/resources/bidding_seasonality_adjustment.proto create mode 100644 google/ads/googleads/v8/resources/bidding_strategy.proto create mode 100644 google/ads/googleads/v8/resources/bidding_strategy_simulation.proto create mode 100644 google/ads/googleads/v8/resources/billing_setup.proto create mode 100644 google/ads/googleads/v8/resources/call_view.proto create mode 100644 google/ads/googleads/v8/resources/campaign.proto create mode 100644 google/ads/googleads/v8/resources/campaign_asset.proto create mode 100644 google/ads/googleads/v8/resources/campaign_audience_view.proto create mode 100644 google/ads/googleads/v8/resources/campaign_bid_modifier.proto create mode 100644 google/ads/googleads/v8/resources/campaign_budget.proto create mode 100644 google/ads/googleads/v8/resources/campaign_criterion.proto create mode 100644 google/ads/googleads/v8/resources/campaign_criterion_simulation.proto create mode 100644 google/ads/googleads/v8/resources/campaign_draft.proto create mode 100644 google/ads/googleads/v8/resources/campaign_experiment.proto create mode 100644 google/ads/googleads/v8/resources/campaign_extension_setting.proto create mode 100644 google/ads/googleads/v8/resources/campaign_feed.proto create mode 100644 google/ads/googleads/v8/resources/campaign_label.proto create mode 100644 google/ads/googleads/v8/resources/campaign_shared_set.proto create mode 100644 google/ads/googleads/v8/resources/campaign_simulation.proto create mode 100644 google/ads/googleads/v8/resources/carrier_constant.proto create mode 100644 google/ads/googleads/v8/resources/change_event.proto create mode 100644 google/ads/googleads/v8/resources/change_status.proto create mode 100644 google/ads/googleads/v8/resources/click_view.proto create mode 100644 google/ads/googleads/v8/resources/combined_audience.proto create mode 100644 google/ads/googleads/v8/resources/conversion_action.proto create mode 100644 google/ads/googleads/v8/resources/conversion_custom_variable.proto create mode 100644 google/ads/googleads/v8/resources/conversion_value_rule.proto create mode 100644 google/ads/googleads/v8/resources/conversion_value_rule_set.proto create mode 100644 google/ads/googleads/v8/resources/currency_constant.proto create mode 100644 google/ads/googleads/v8/resources/custom_audience.proto create mode 100644 google/ads/googleads/v8/resources/custom_interest.proto create mode 100644 google/ads/googleads/v8/resources/customer.proto create mode 100644 google/ads/googleads/v8/resources/customer_asset.proto create mode 100644 google/ads/googleads/v8/resources/customer_client.proto create mode 100644 google/ads/googleads/v8/resources/customer_client_link.proto create mode 100644 google/ads/googleads/v8/resources/customer_extension_setting.proto create mode 100644 google/ads/googleads/v8/resources/customer_feed.proto create mode 100644 google/ads/googleads/v8/resources/customer_label.proto create mode 100644 google/ads/googleads/v8/resources/customer_manager_link.proto create mode 100644 google/ads/googleads/v8/resources/customer_negative_criterion.proto create mode 100644 google/ads/googleads/v8/resources/customer_user_access.proto create mode 100644 google/ads/googleads/v8/resources/customer_user_access_invitation.proto create mode 100644 google/ads/googleads/v8/resources/detail_placement_view.proto create mode 100644 google/ads/googleads/v8/resources/detailed_demographic.proto create mode 100644 google/ads/googleads/v8/resources/display_keyword_view.proto create mode 100644 google/ads/googleads/v8/resources/distance_view.proto create mode 100644 google/ads/googleads/v8/resources/domain_category.proto create mode 100644 google/ads/googleads/v8/resources/dynamic_search_ads_search_term_view.proto create mode 100644 google/ads/googleads/v8/resources/expanded_landing_page_view.proto create mode 100644 google/ads/googleads/v8/resources/extension_feed_item.proto create mode 100644 google/ads/googleads/v8/resources/feed.proto create mode 100644 google/ads/googleads/v8/resources/feed_item.proto create mode 100644 google/ads/googleads/v8/resources/feed_item_set.proto create mode 100644 google/ads/googleads/v8/resources/feed_item_set_link.proto create mode 100644 google/ads/googleads/v8/resources/feed_item_target.proto create mode 100644 google/ads/googleads/v8/resources/feed_mapping.proto create mode 100644 google/ads/googleads/v8/resources/feed_placeholder_view.proto create mode 100644 google/ads/googleads/v8/resources/gender_view.proto create mode 100644 google/ads/googleads/v8/resources/geo_target_constant.proto create mode 100644 google/ads/googleads/v8/resources/geographic_view.proto create mode 100644 google/ads/googleads/v8/resources/google_ads_field.proto create mode 100644 google/ads/googleads/v8/resources/group_placement_view.proto create mode 100644 google/ads/googleads/v8/resources/hotel_group_view.proto create mode 100644 google/ads/googleads/v8/resources/hotel_performance_view.proto create mode 100644 google/ads/googleads/v8/resources/income_range_view.proto create mode 100644 google/ads/googleads/v8/resources/invoice.proto create mode 100644 google/ads/googleads/v8/resources/keyword_plan.proto create mode 100644 google/ads/googleads/v8/resources/keyword_plan_ad_group.proto create mode 100644 google/ads/googleads/v8/resources/keyword_plan_ad_group_keyword.proto create mode 100644 google/ads/googleads/v8/resources/keyword_plan_campaign.proto create mode 100644 google/ads/googleads/v8/resources/keyword_plan_campaign_keyword.proto create mode 100644 google/ads/googleads/v8/resources/keyword_theme_constant.proto create mode 100644 google/ads/googleads/v8/resources/keyword_view.proto create mode 100644 google/ads/googleads/v8/resources/label.proto create mode 100644 google/ads/googleads/v8/resources/landing_page_view.proto create mode 100644 google/ads/googleads/v8/resources/language_constant.proto create mode 100644 google/ads/googleads/v8/resources/life_event.proto create mode 100644 google/ads/googleads/v8/resources/location_view.proto create mode 100644 google/ads/googleads/v8/resources/managed_placement_view.proto create mode 100644 google/ads/googleads/v8/resources/media_file.proto create mode 100644 google/ads/googleads/v8/resources/merchant_center_link.proto create mode 100644 google/ads/googleads/v8/resources/mobile_app_category_constant.proto create mode 100644 google/ads/googleads/v8/resources/mobile_device_constant.proto create mode 100644 google/ads/googleads/v8/resources/offline_user_data_job.proto create mode 100644 google/ads/googleads/v8/resources/operating_system_version_constant.proto create mode 100644 google/ads/googleads/v8/resources/paid_organic_search_term_view.proto create mode 100644 google/ads/googleads/v8/resources/parental_status_view.proto create mode 100644 google/ads/googleads/v8/resources/payments_account.proto create mode 100644 google/ads/googleads/v8/resources/product_bidding_category_constant.proto create mode 100644 google/ads/googleads/v8/resources/product_group_view.proto create mode 100644 google/ads/googleads/v8/resources/recommendation.proto create mode 100644 google/ads/googleads/v8/resources/remarketing_action.proto create mode 100644 google/ads/googleads/v8/resources/search_term_view.proto create mode 100644 google/ads/googleads/v8/resources/shared_criterion.proto create mode 100644 google/ads/googleads/v8/resources/shared_set.proto create mode 100644 google/ads/googleads/v8/resources/shopping_performance_view.proto create mode 100644 google/ads/googleads/v8/resources/smart_campaign_search_term_view.proto create mode 100644 google/ads/googleads/v8/resources/smart_campaign_setting.proto create mode 100644 google/ads/googleads/v8/resources/third_party_app_analytics_link.proto create mode 100644 google/ads/googleads/v8/resources/topic_constant.proto create mode 100644 google/ads/googleads/v8/resources/topic_view.proto create mode 100644 google/ads/googleads/v8/resources/user_interest.proto create mode 100644 google/ads/googleads/v8/resources/user_list.proto create mode 100644 google/ads/googleads/v8/resources/user_location_view.proto create mode 100644 google/ads/googleads/v8/resources/video.proto create mode 100644 google/ads/googleads/v8/resources/webpage_view.proto create mode 100644 google/ads/googleads/v8/services/BUILD.bazel create mode 100644 google/ads/googleads/v8/services/accessible_bidding_strategy_service.proto create mode 100644 google/ads/googleads/v8/services/account_budget_proposal_service.proto create mode 100644 google/ads/googleads/v8/services/account_budget_service.proto create mode 100644 google/ads/googleads/v8/services/account_link_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_ad_asset_view_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_ad_label_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_ad_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_asset_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_audience_view_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_bid_modifier_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_criterion_label_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_criterion_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_criterion_simulation_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_extension_setting_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_feed_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_label_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_service.proto create mode 100644 google/ads/googleads/v8/services/ad_group_simulation_service.proto create mode 100644 google/ads/googleads/v8/services/ad_parameter_service.proto create mode 100644 google/ads/googleads/v8/services/ad_schedule_view_service.proto create mode 100644 google/ads/googleads/v8/services/ad_service.proto create mode 100644 google/ads/googleads/v8/services/age_range_view_service.proto create mode 100644 google/ads/googleads/v8/services/asset_field_type_view_service.proto create mode 100644 google/ads/googleads/v8/services/asset_service.proto create mode 100644 google/ads/googleads/v8/services/batch_job_service.proto create mode 100644 google/ads/googleads/v8/services/bidding_data_exclusion_service.proto create mode 100644 google/ads/googleads/v8/services/bidding_seasonality_adjustment_service.proto create mode 100644 google/ads/googleads/v8/services/bidding_strategy_service.proto create mode 100644 google/ads/googleads/v8/services/bidding_strategy_simulation_service.proto create mode 100644 google/ads/googleads/v8/services/billing_setup_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_asset_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_audience_view_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_bid_modifier_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_budget_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_criterion_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_criterion_simulation_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_draft_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_experiment_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_extension_setting_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_feed_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_label_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_shared_set_service.proto create mode 100644 google/ads/googleads/v8/services/campaign_simulation_service.proto create mode 100644 google/ads/googleads/v8/services/carrier_constant_service.proto create mode 100644 google/ads/googleads/v8/services/change_status_service.proto create mode 100644 google/ads/googleads/v8/services/click_view_service.proto create mode 100644 google/ads/googleads/v8/services/combined_audience_service.proto create mode 100644 google/ads/googleads/v8/services/conversion_action_service.proto create mode 100644 google/ads/googleads/v8/services/conversion_adjustment_upload_service.proto create mode 100644 google/ads/googleads/v8/services/conversion_custom_variable_service.proto create mode 100644 google/ads/googleads/v8/services/conversion_upload_service.proto create mode 100644 google/ads/googleads/v8/services/conversion_value_rule_service.proto create mode 100644 google/ads/googleads/v8/services/conversion_value_rule_set_service.proto create mode 100644 google/ads/googleads/v8/services/currency_constant_service.proto create mode 100644 google/ads/googleads/v8/services/custom_audience_service.proto create mode 100644 google/ads/googleads/v8/services/custom_interest_service.proto create mode 100644 google/ads/googleads/v8/services/customer_asset_service.proto create mode 100644 google/ads/googleads/v8/services/customer_client_link_service.proto create mode 100644 google/ads/googleads/v8/services/customer_client_service.proto create mode 100644 google/ads/googleads/v8/services/customer_extension_setting_service.proto create mode 100644 google/ads/googleads/v8/services/customer_feed_service.proto create mode 100644 google/ads/googleads/v8/services/customer_label_service.proto create mode 100644 google/ads/googleads/v8/services/customer_manager_link_service.proto create mode 100644 google/ads/googleads/v8/services/customer_negative_criterion_service.proto create mode 100644 google/ads/googleads/v8/services/customer_service.proto create mode 100644 google/ads/googleads/v8/services/customer_user_access_invitation_service.proto create mode 100644 google/ads/googleads/v8/services/customer_user_access_service.proto create mode 100644 google/ads/googleads/v8/services/detail_placement_view_service.proto create mode 100644 google/ads/googleads/v8/services/detailed_demographic_service.proto create mode 100644 google/ads/googleads/v8/services/display_keyword_view_service.proto create mode 100644 google/ads/googleads/v8/services/distance_view_service.proto create mode 100644 google/ads/googleads/v8/services/domain_category_service.proto create mode 100644 google/ads/googleads/v8/services/dynamic_search_ads_search_term_view_service.proto create mode 100644 google/ads/googleads/v8/services/expanded_landing_page_view_service.proto create mode 100644 google/ads/googleads/v8/services/extension_feed_item_service.proto create mode 100644 google/ads/googleads/v8/services/feed_item_service.proto create mode 100644 google/ads/googleads/v8/services/feed_item_set_link_service.proto create mode 100644 google/ads/googleads/v8/services/feed_item_set_service.proto create mode 100644 google/ads/googleads/v8/services/feed_item_target_service.proto create mode 100644 google/ads/googleads/v8/services/feed_mapping_service.proto create mode 100644 google/ads/googleads/v8/services/feed_placeholder_view_service.proto create mode 100644 google/ads/googleads/v8/services/feed_service.proto create mode 100644 google/ads/googleads/v8/services/gender_view_service.proto create mode 100644 google/ads/googleads/v8/services/geo_target_constant_service.proto create mode 100644 google/ads/googleads/v8/services/geographic_view_service.proto create mode 100644 google/ads/googleads/v8/services/google_ads_field_service.proto create mode 100644 google/ads/googleads/v8/services/google_ads_service.proto create mode 100644 google/ads/googleads/v8/services/group_placement_view_service.proto create mode 100644 google/ads/googleads/v8/services/hotel_group_view_service.proto create mode 100644 google/ads/googleads/v8/services/hotel_performance_view_service.proto create mode 100644 google/ads/googleads/v8/services/income_range_view_service.proto create mode 100644 google/ads/googleads/v8/services/invoice_service.proto create mode 100644 google/ads/googleads/v8/services/keyword_plan_ad_group_keyword_service.proto create mode 100644 google/ads/googleads/v8/services/keyword_plan_ad_group_service.proto create mode 100644 google/ads/googleads/v8/services/keyword_plan_campaign_keyword_service.proto create mode 100644 google/ads/googleads/v8/services/keyword_plan_campaign_service.proto create mode 100644 google/ads/googleads/v8/services/keyword_plan_idea_service.proto create mode 100644 google/ads/googleads/v8/services/keyword_plan_service.proto create mode 100644 google/ads/googleads/v8/services/keyword_theme_constant_service.proto create mode 100644 google/ads/googleads/v8/services/keyword_view_service.proto create mode 100644 google/ads/googleads/v8/services/label_service.proto create mode 100644 google/ads/googleads/v8/services/landing_page_view_service.proto create mode 100644 google/ads/googleads/v8/services/language_constant_service.proto create mode 100644 google/ads/googleads/v8/services/life_event_service.proto create mode 100644 google/ads/googleads/v8/services/location_view_service.proto create mode 100644 google/ads/googleads/v8/services/managed_placement_view_service.proto create mode 100644 google/ads/googleads/v8/services/media_file_service.proto create mode 100644 google/ads/googleads/v8/services/merchant_center_link_service.proto create mode 100644 google/ads/googleads/v8/services/mobile_app_category_constant_service.proto create mode 100644 google/ads/googleads/v8/services/mobile_device_constant_service.proto create mode 100644 google/ads/googleads/v8/services/offline_user_data_job_service.proto create mode 100644 google/ads/googleads/v8/services/operating_system_version_constant_service.proto create mode 100644 google/ads/googleads/v8/services/paid_organic_search_term_view_service.proto create mode 100644 google/ads/googleads/v8/services/parental_status_view_service.proto create mode 100644 google/ads/googleads/v8/services/payments_account_service.proto create mode 100644 google/ads/googleads/v8/services/product_bidding_category_constant_service.proto create mode 100644 google/ads/googleads/v8/services/product_group_view_service.proto create mode 100644 google/ads/googleads/v8/services/reach_plan_service.proto create mode 100644 google/ads/googleads/v8/services/recommendation_service.proto create mode 100644 google/ads/googleads/v8/services/remarketing_action_service.proto create mode 100644 google/ads/googleads/v8/services/search_term_view_service.proto create mode 100644 google/ads/googleads/v8/services/shared_criterion_service.proto create mode 100644 google/ads/googleads/v8/services/shared_set_service.proto create mode 100644 google/ads/googleads/v8/services/shopping_performance_view_service.proto create mode 100644 google/ads/googleads/v8/services/smart_campaign_search_term_view_service.proto create mode 100644 google/ads/googleads/v8/services/smart_campaign_setting_service.proto create mode 100644 google/ads/googleads/v8/services/smart_campaign_suggest_service.proto create mode 100644 google/ads/googleads/v8/services/third_party_app_analytics_link_service.proto create mode 100644 google/ads/googleads/v8/services/topic_constant_service.proto create mode 100644 google/ads/googleads/v8/services/topic_view_service.proto create mode 100644 google/ads/googleads/v8/services/user_data_service.proto create mode 100644 google/ads/googleads/v8/services/user_interest_service.proto create mode 100644 google/ads/googleads/v8/services/user_list_service.proto create mode 100644 google/ads/googleads/v8/services/user_location_view_service.proto create mode 100644 google/ads/googleads/v8/services/video_service.proto create mode 100644 google/ads/googleads/v8/services/webpage_view_service.proto create mode 100644 google/ads/googleads/v9/BUILD.bazel create mode 100644 google/ads/googleads/v9/common/BUILD.bazel create mode 100644 google/ads/googleads/v9/common/ad_asset.proto create mode 100644 google/ads/googleads/v9/common/ad_type_infos.proto create mode 100644 google/ads/googleads/v9/common/asset_policy.proto create mode 100644 google/ads/googleads/v9/common/asset_types.proto create mode 100644 google/ads/googleads/v9/common/bidding.proto create mode 100644 google/ads/googleads/v9/common/click_location.proto create mode 100644 google/ads/googleads/v9/common/criteria.proto create mode 100644 google/ads/googleads/v9/common/criterion_category_availability.proto create mode 100644 google/ads/googleads/v9/common/custom_parameter.proto create mode 100644 google/ads/googleads/v9/common/customizer_value.proto create mode 100644 google/ads/googleads/v9/common/dates.proto create mode 100644 google/ads/googleads/v9/common/explorer_auto_optimizer_setting.proto create mode 100644 google/ads/googleads/v9/common/extensions.proto create mode 100644 google/ads/googleads/v9/common/feed_common.proto create mode 100644 google/ads/googleads/v9/common/feed_item_set_filter_type_infos.proto create mode 100644 google/ads/googleads/v9/common/final_app_url.proto create mode 100644 google/ads/googleads/v9/common/frequency_cap.proto create mode 100644 google/ads/googleads/v9/common/keyword_plan_common.proto create mode 100644 google/ads/googleads/v9/common/matching_function.proto create mode 100644 google/ads/googleads/v9/common/metrics.proto create mode 100644 google/ads/googleads/v9/common/offline_user_data.proto create mode 100644 google/ads/googleads/v9/common/policy.proto create mode 100644 google/ads/googleads/v9/common/policy_summary.proto create mode 100644 google/ads/googleads/v9/common/real_time_bidding_setting.proto create mode 100644 google/ads/googleads/v9/common/segments.proto create mode 100644 google/ads/googleads/v9/common/simulation.proto create mode 100644 google/ads/googleads/v9/common/tag_snippet.proto create mode 100644 google/ads/googleads/v9/common/targeting_setting.proto create mode 100644 google/ads/googleads/v9/common/text_label.proto create mode 100644 google/ads/googleads/v9/common/url_collection.proto create mode 100644 google/ads/googleads/v9/common/user_lists.proto create mode 100644 google/ads/googleads/v9/common/value.proto rename google/ads/googleads/{v5 => v9}/enums/BUILD.bazel (100%) create mode 100644 google/ads/googleads/v9/enums/access_invitation_status.proto create mode 100644 google/ads/googleads/v9/enums/access_reason.proto create mode 100644 google/ads/googleads/v9/enums/access_role.proto create mode 100644 google/ads/googleads/v9/enums/account_budget_proposal_status.proto create mode 100644 google/ads/googleads/v9/enums/account_budget_proposal_type.proto create mode 100644 google/ads/googleads/v9/enums/account_budget_status.proto create mode 100644 google/ads/googleads/v9/enums/account_link_status.proto create mode 100644 google/ads/googleads/v9/enums/ad_customizer_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/ad_destination_type.proto create mode 100644 google/ads/googleads/v9/enums/ad_group_ad_rotation_mode.proto create mode 100644 google/ads/googleads/v9/enums/ad_group_ad_status.proto create mode 100644 google/ads/googleads/v9/enums/ad_group_criterion_approval_status.proto create mode 100644 google/ads/googleads/v9/enums/ad_group_criterion_status.proto create mode 100644 google/ads/googleads/v9/enums/ad_group_status.proto create mode 100644 google/ads/googleads/v9/enums/ad_group_type.proto create mode 100644 google/ads/googleads/v9/enums/ad_network_type.proto create mode 100644 google/ads/googleads/v9/enums/ad_serving_optimization_status.proto create mode 100644 google/ads/googleads/v9/enums/ad_strength.proto create mode 100644 google/ads/googleads/v9/enums/ad_type.proto create mode 100644 google/ads/googleads/v9/enums/advertising_channel_sub_type.proto create mode 100644 google/ads/googleads/v9/enums/advertising_channel_type.proto create mode 100644 google/ads/googleads/v9/enums/affiliate_location_feed_relationship_type.proto create mode 100644 google/ads/googleads/v9/enums/affiliate_location_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/age_range_type.proto create mode 100644 google/ads/googleads/v9/enums/app_campaign_app_store.proto create mode 100644 google/ads/googleads/v9/enums/app_campaign_bidding_strategy_goal_type.proto create mode 100644 google/ads/googleads/v9/enums/app_payment_model_type.proto create mode 100644 google/ads/googleads/v9/enums/app_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/app_store.proto create mode 100644 google/ads/googleads/v9/enums/app_url_operating_system_type.proto create mode 100644 google/ads/googleads/v9/enums/asset_field_type.proto create mode 100644 google/ads/googleads/v9/enums/asset_group_status.proto create mode 100644 google/ads/googleads/v9/enums/asset_link_status.proto create mode 100644 google/ads/googleads/v9/enums/asset_performance_label.proto create mode 100644 google/ads/googleads/v9/enums/asset_set_asset_status.proto create mode 100644 google/ads/googleads/v9/enums/asset_set_link_status.proto create mode 100644 google/ads/googleads/v9/enums/asset_set_status.proto create mode 100644 google/ads/googleads/v9/enums/asset_set_type.proto create mode 100644 google/ads/googleads/v9/enums/asset_type.proto create mode 100644 google/ads/googleads/v9/enums/attribution_model.proto create mode 100644 google/ads/googleads/v9/enums/batch_job_status.proto create mode 100644 google/ads/googleads/v9/enums/bid_modifier_source.proto create mode 100644 google/ads/googleads/v9/enums/bidding_source.proto create mode 100644 google/ads/googleads/v9/enums/bidding_strategy_status.proto create mode 100644 google/ads/googleads/v9/enums/bidding_strategy_type.proto create mode 100644 google/ads/googleads/v9/enums/billing_setup_status.proto create mode 100644 google/ads/googleads/v9/enums/brand_safety_suitability.proto create mode 100644 google/ads/googleads/v9/enums/budget_campaign_association_status.proto create mode 100644 google/ads/googleads/v9/enums/budget_delivery_method.proto create mode 100644 google/ads/googleads/v9/enums/budget_period.proto create mode 100644 google/ads/googleads/v9/enums/budget_status.proto create mode 100644 google/ads/googleads/v9/enums/budget_type.proto create mode 100644 google/ads/googleads/v9/enums/call_conversion_reporting_state.proto create mode 100644 google/ads/googleads/v9/enums/call_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/call_to_action_type.proto create mode 100644 google/ads/googleads/v9/enums/call_tracking_display_location.proto create mode 100644 google/ads/googleads/v9/enums/call_type.proto create mode 100644 google/ads/googleads/v9/enums/callout_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/campaign_criterion_status.proto create mode 100644 google/ads/googleads/v9/enums/campaign_draft_status.proto create mode 100644 google/ads/googleads/v9/enums/campaign_experiment_status.proto create mode 100644 google/ads/googleads/v9/enums/campaign_experiment_traffic_split_type.proto create mode 100644 google/ads/googleads/v9/enums/campaign_experiment_type.proto create mode 100644 google/ads/googleads/v9/enums/campaign_serving_status.proto create mode 100644 google/ads/googleads/v9/enums/campaign_shared_set_status.proto create mode 100644 google/ads/googleads/v9/enums/campaign_status.proto create mode 100644 google/ads/googleads/v9/enums/change_client_type.proto create mode 100644 google/ads/googleads/v9/enums/change_event_resource_type.proto create mode 100644 google/ads/googleads/v9/enums/change_status_operation.proto create mode 100644 google/ads/googleads/v9/enums/change_status_resource_type.proto create mode 100644 google/ads/googleads/v9/enums/click_type.proto create mode 100644 google/ads/googleads/v9/enums/combined_audience_status.proto create mode 100644 google/ads/googleads/v9/enums/content_label_type.proto create mode 100644 google/ads/googleads/v9/enums/conversion_action_category.proto create mode 100644 google/ads/googleads/v9/enums/conversion_action_counting_type.proto create mode 100644 google/ads/googleads/v9/enums/conversion_action_status.proto create mode 100644 google/ads/googleads/v9/enums/conversion_action_type.proto create mode 100644 google/ads/googleads/v9/enums/conversion_adjustment_type.proto create mode 100644 google/ads/googleads/v9/enums/conversion_attribution_event_type.proto create mode 100644 google/ads/googleads/v9/enums/conversion_custom_variable_status.proto create mode 100644 google/ads/googleads/v9/enums/conversion_lag_bucket.proto create mode 100644 google/ads/googleads/v9/enums/conversion_or_adjustment_lag_bucket.proto create mode 100644 google/ads/googleads/v9/enums/conversion_origin.proto create mode 100644 google/ads/googleads/v9/enums/conversion_value_rule_primary_dimension.proto create mode 100644 google/ads/googleads/v9/enums/conversion_value_rule_set_status.proto create mode 100644 google/ads/googleads/v9/enums/conversion_value_rule_status.proto create mode 100644 google/ads/googleads/v9/enums/criterion_category_channel_availability_mode.proto create mode 100644 google/ads/googleads/v9/enums/criterion_category_locale_availability_mode.proto create mode 100644 google/ads/googleads/v9/enums/criterion_system_serving_status.proto create mode 100644 google/ads/googleads/v9/enums/criterion_type.proto create mode 100644 google/ads/googleads/v9/enums/custom_audience_member_type.proto create mode 100644 google/ads/googleads/v9/enums/custom_audience_status.proto create mode 100644 google/ads/googleads/v9/enums/custom_audience_type.proto create mode 100644 google/ads/googleads/v9/enums/custom_conversion_goal_status.proto create mode 100644 google/ads/googleads/v9/enums/custom_interest_member_type.proto create mode 100644 google/ads/googleads/v9/enums/custom_interest_status.proto create mode 100644 google/ads/googleads/v9/enums/custom_interest_type.proto create mode 100644 google/ads/googleads/v9/enums/custom_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/customer_match_upload_key_type.proto create mode 100644 google/ads/googleads/v9/enums/customer_pay_per_conversion_eligibility_failure_reason.proto create mode 100644 google/ads/googleads/v9/enums/customizer_attribute_status.proto create mode 100644 google/ads/googleads/v9/enums/customizer_attribute_type.proto create mode 100644 google/ads/googleads/v9/enums/customizer_value_status.proto create mode 100644 google/ads/googleads/v9/enums/data_driven_model_status.proto create mode 100644 google/ads/googleads/v9/enums/day_of_week.proto create mode 100644 google/ads/googleads/v9/enums/device.proto create mode 100644 google/ads/googleads/v9/enums/display_ad_format_setting.proto create mode 100644 google/ads/googleads/v9/enums/display_upload_product_type.proto create mode 100644 google/ads/googleads/v9/enums/distance_bucket.proto create mode 100644 google/ads/googleads/v9/enums/dsa_page_feed_criterion_field.proto create mode 100644 google/ads/googleads/v9/enums/education_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/extension_setting_device.proto create mode 100644 google/ads/googleads/v9/enums/extension_type.proto create mode 100644 google/ads/googleads/v9/enums/external_conversion_source.proto create mode 100644 google/ads/googleads/v9/enums/feed_attribute_type.proto create mode 100644 google/ads/googleads/v9/enums/feed_item_quality_approval_status.proto create mode 100644 google/ads/googleads/v9/enums/feed_item_quality_disapproval_reason.proto create mode 100644 google/ads/googleads/v9/enums/feed_item_set_status.proto create mode 100644 google/ads/googleads/v9/enums/feed_item_set_string_filter_type.proto create mode 100644 google/ads/googleads/v9/enums/feed_item_status.proto create mode 100644 google/ads/googleads/v9/enums/feed_item_target_device.proto create mode 100644 google/ads/googleads/v9/enums/feed_item_target_status.proto create mode 100644 google/ads/googleads/v9/enums/feed_item_target_type.proto create mode 100644 google/ads/googleads/v9/enums/feed_item_validation_status.proto create mode 100644 google/ads/googleads/v9/enums/feed_link_status.proto create mode 100644 google/ads/googleads/v9/enums/feed_mapping_criterion_type.proto create mode 100644 google/ads/googleads/v9/enums/feed_mapping_status.proto create mode 100644 google/ads/googleads/v9/enums/feed_origin.proto create mode 100644 google/ads/googleads/v9/enums/feed_status.proto create mode 100644 google/ads/googleads/v9/enums/flight_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/frequency_cap_event_type.proto create mode 100644 google/ads/googleads/v9/enums/frequency_cap_level.proto create mode 100644 google/ads/googleads/v9/enums/frequency_cap_time_unit.proto create mode 100644 google/ads/googleads/v9/enums/gender_type.proto create mode 100644 google/ads/googleads/v9/enums/geo_target_constant_status.proto create mode 100644 google/ads/googleads/v9/enums/geo_targeting_restriction.proto create mode 100644 google/ads/googleads/v9/enums/geo_targeting_type.proto create mode 100644 google/ads/googleads/v9/enums/goal_config_level.proto create mode 100644 google/ads/googleads/v9/enums/google_ads_field_category.proto create mode 100644 google/ads/googleads/v9/enums/google_ads_field_data_type.proto create mode 100644 google/ads/googleads/v9/enums/google_voice_call_status.proto create mode 100644 google/ads/googleads/v9/enums/hotel_date_selection_type.proto create mode 100644 google/ads/googleads/v9/enums/hotel_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/hotel_price_bucket.proto create mode 100644 google/ads/googleads/v9/enums/hotel_rate_type.proto create mode 100644 google/ads/googleads/v9/enums/hotel_reconciliation_status.proto create mode 100644 google/ads/googleads/v9/enums/image_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/income_range_type.proto create mode 100644 google/ads/googleads/v9/enums/interaction_event_type.proto create mode 100644 google/ads/googleads/v9/enums/interaction_type.proto create mode 100644 google/ads/googleads/v9/enums/invoice_type.proto create mode 100644 google/ads/googleads/v9/enums/job_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/keyword_match_type.proto create mode 100644 google/ads/googleads/v9/enums/keyword_plan_aggregate_metric_type.proto create mode 100644 google/ads/googleads/v9/enums/keyword_plan_competition_level.proto create mode 100644 google/ads/googleads/v9/enums/keyword_plan_concept_group_type.proto create mode 100644 google/ads/googleads/v9/enums/keyword_plan_forecast_interval.proto create mode 100644 google/ads/googleads/v9/enums/keyword_plan_keyword_annotation.proto create mode 100644 google/ads/googleads/v9/enums/keyword_plan_network.proto create mode 100644 google/ads/googleads/v9/enums/label_status.proto create mode 100644 google/ads/googleads/v9/enums/lead_form_call_to_action_type.proto create mode 100644 google/ads/googleads/v9/enums/lead_form_desired_intent.proto create mode 100644 google/ads/googleads/v9/enums/lead_form_field_user_input_type.proto create mode 100644 google/ads/googleads/v9/enums/lead_form_post_submit_call_to_action_type.proto create mode 100644 google/ads/googleads/v9/enums/legacy_app_install_ad_app_store.proto create mode 100644 google/ads/googleads/v9/enums/linked_account_type.proto create mode 100644 google/ads/googleads/v9/enums/listing_group_filter_bidding_category_level.proto create mode 100644 google/ads/googleads/v9/enums/listing_group_filter_custom_attribute_index.proto create mode 100644 google/ads/googleads/v9/enums/listing_group_filter_product_channel.proto create mode 100644 google/ads/googleads/v9/enums/listing_group_filter_product_condition.proto create mode 100644 google/ads/googleads/v9/enums/listing_group_filter_product_type_level.proto create mode 100644 google/ads/googleads/v9/enums/listing_group_filter_type_enum.proto create mode 100644 google/ads/googleads/v9/enums/listing_group_filter_vertical.proto create mode 100644 google/ads/googleads/v9/enums/listing_group_type.proto create mode 100644 google/ads/googleads/v9/enums/local_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/location_extension_targeting_criterion_field.proto create mode 100644 google/ads/googleads/v9/enums/location_group_radius_units.proto create mode 100644 google/ads/googleads/v9/enums/location_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/location_source_type.proto create mode 100644 google/ads/googleads/v9/enums/manager_link_status.proto create mode 100644 google/ads/googleads/v9/enums/matching_function_context_type.proto create mode 100644 google/ads/googleads/v9/enums/matching_function_operator.proto create mode 100644 google/ads/googleads/v9/enums/media_type.proto create mode 100644 google/ads/googleads/v9/enums/merchant_center_link_status.proto create mode 100644 google/ads/googleads/v9/enums/message_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/mime_type.proto create mode 100644 google/ads/googleads/v9/enums/minute_of_hour.proto create mode 100644 google/ads/googleads/v9/enums/mobile_app_vendor.proto create mode 100644 google/ads/googleads/v9/enums/mobile_device_type.proto create mode 100644 google/ads/googleads/v9/enums/month_of_year.proto create mode 100644 google/ads/googleads/v9/enums/negative_geo_target_type.proto create mode 100644 google/ads/googleads/v9/enums/offline_user_data_job_failure_reason.proto create mode 100644 google/ads/googleads/v9/enums/offline_user_data_job_match_rate_range.proto create mode 100644 google/ads/googleads/v9/enums/offline_user_data_job_status.proto create mode 100644 google/ads/googleads/v9/enums/offline_user_data_job_type.proto create mode 100644 google/ads/googleads/v9/enums/operating_system_version_operator_type.proto create mode 100644 google/ads/googleads/v9/enums/optimization_goal_type.proto create mode 100644 google/ads/googleads/v9/enums/parental_status_type.proto create mode 100644 google/ads/googleads/v9/enums/payment_mode.proto create mode 100644 google/ads/googleads/v9/enums/placeholder_type.proto create mode 100644 google/ads/googleads/v9/enums/placement_type.proto create mode 100644 google/ads/googleads/v9/enums/policy_approval_status.proto create mode 100644 google/ads/googleads/v9/enums/policy_review_status.proto create mode 100644 google/ads/googleads/v9/enums/policy_topic_entry_type.proto create mode 100644 google/ads/googleads/v9/enums/policy_topic_evidence_destination_mismatch_url_type.proto create mode 100644 google/ads/googleads/v9/enums/policy_topic_evidence_destination_not_working_device.proto create mode 100644 google/ads/googleads/v9/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto create mode 100644 google/ads/googleads/v9/enums/positive_geo_target_type.proto create mode 100644 google/ads/googleads/v9/enums/preferred_content_type.proto create mode 100644 google/ads/googleads/v9/enums/price_extension_price_qualifier.proto create mode 100644 google/ads/googleads/v9/enums/price_extension_price_unit.proto create mode 100644 google/ads/googleads/v9/enums/price_extension_type.proto create mode 100644 google/ads/googleads/v9/enums/price_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/product_bidding_category_level.proto create mode 100644 google/ads/googleads/v9/enums/product_bidding_category_status.proto create mode 100644 google/ads/googleads/v9/enums/product_channel.proto create mode 100644 google/ads/googleads/v9/enums/product_channel_exclusivity.proto create mode 100644 google/ads/googleads/v9/enums/product_condition.proto create mode 100644 google/ads/googleads/v9/enums/product_custom_attribute_index.proto create mode 100644 google/ads/googleads/v9/enums/product_type_level.proto create mode 100644 google/ads/googleads/v9/enums/promotion_extension_discount_modifier.proto create mode 100644 google/ads/googleads/v9/enums/promotion_extension_occasion.proto create mode 100644 google/ads/googleads/v9/enums/promotion_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/proximity_radius_units.proto create mode 100644 google/ads/googleads/v9/enums/quality_score_bucket.proto create mode 100644 google/ads/googleads/v9/enums/reach_plan_ad_length.proto create mode 100644 google/ads/googleads/v9/enums/reach_plan_age_range.proto create mode 100644 google/ads/googleads/v9/enums/reach_plan_network.proto create mode 100644 google/ads/googleads/v9/enums/real_estate_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/recommendation_type.proto create mode 100644 google/ads/googleads/v9/enums/resource_change_operation.proto create mode 100644 google/ads/googleads/v9/enums/resource_limit_type.proto create mode 100644 google/ads/googleads/v9/enums/response_content_type.proto create mode 100644 google/ads/googleads/v9/enums/search_engine_results_page_type.proto create mode 100644 google/ads/googleads/v9/enums/search_term_match_type.proto create mode 100644 google/ads/googleads/v9/enums/search_term_targeting_status.proto create mode 100644 google/ads/googleads/v9/enums/seasonality_event_scope.proto create mode 100644 google/ads/googleads/v9/enums/seasonality_event_status.proto create mode 100644 google/ads/googleads/v9/enums/served_asset_field_type.proto create mode 100644 google/ads/googleads/v9/enums/shared_set_status.proto create mode 100644 google/ads/googleads/v9/enums/shared_set_type.proto create mode 100644 google/ads/googleads/v9/enums/simulation_modification_method.proto create mode 100644 google/ads/googleads/v9/enums/simulation_type.proto create mode 100644 google/ads/googleads/v9/enums/sitelink_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/slot.proto create mode 100644 google/ads/googleads/v9/enums/spending_limit_type.proto create mode 100644 google/ads/googleads/v9/enums/structured_snippet_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/summary_row_setting.proto create mode 100644 google/ads/googleads/v9/enums/system_managed_entity_source.proto create mode 100644 google/ads/googleads/v9/enums/target_cpa_opt_in_recommendation_goal.proto create mode 100644 google/ads/googleads/v9/enums/target_impression_share_location.proto create mode 100644 google/ads/googleads/v9/enums/targeting_dimension.proto create mode 100644 google/ads/googleads/v9/enums/time_type.proto create mode 100644 google/ads/googleads/v9/enums/tracking_code_page_format.proto create mode 100644 google/ads/googleads/v9/enums/tracking_code_type.proto create mode 100644 google/ads/googleads/v9/enums/travel_placeholder_field.proto create mode 100644 google/ads/googleads/v9/enums/user_identifier_source.proto create mode 100644 google/ads/googleads/v9/enums/user_interest_taxonomy_type.proto create mode 100644 google/ads/googleads/v9/enums/user_list_access_status.proto create mode 100644 google/ads/googleads/v9/enums/user_list_closing_reason.proto create mode 100644 google/ads/googleads/v9/enums/user_list_combined_rule_operator.proto create mode 100644 google/ads/googleads/v9/enums/user_list_crm_data_source_type.proto create mode 100644 google/ads/googleads/v9/enums/user_list_date_rule_item_operator.proto create mode 100644 google/ads/googleads/v9/enums/user_list_logical_rule_operator.proto create mode 100644 google/ads/googleads/v9/enums/user_list_membership_status.proto create mode 100644 google/ads/googleads/v9/enums/user_list_number_rule_item_operator.proto create mode 100644 google/ads/googleads/v9/enums/user_list_prepopulation_status.proto create mode 100644 google/ads/googleads/v9/enums/user_list_rule_type.proto create mode 100644 google/ads/googleads/v9/enums/user_list_size_range.proto create mode 100644 google/ads/googleads/v9/enums/user_list_string_rule_item_operator.proto create mode 100644 google/ads/googleads/v9/enums/user_list_type.proto create mode 100644 google/ads/googleads/v9/enums/value_rule_device_type.proto create mode 100644 google/ads/googleads/v9/enums/value_rule_geo_location_match_type.proto create mode 100644 google/ads/googleads/v9/enums/value_rule_operation.proto create mode 100644 google/ads/googleads/v9/enums/value_rule_set_attachment_type.proto create mode 100644 google/ads/googleads/v9/enums/value_rule_set_dimension.proto create mode 100644 google/ads/googleads/v9/enums/vanity_pharma_display_url_mode.proto create mode 100644 google/ads/googleads/v9/enums/vanity_pharma_text.proto create mode 100644 google/ads/googleads/v9/enums/video_thumbnail.proto create mode 100644 google/ads/googleads/v9/enums/webpage_condition_operand.proto create mode 100644 google/ads/googleads/v9/enums/webpage_condition_operator.proto create mode 100644 google/ads/googleads/v9/errors/BUILD.bazel create mode 100644 google/ads/googleads/v9/errors/access_invitation_error.proto create mode 100644 google/ads/googleads/v9/errors/account_budget_proposal_error.proto create mode 100644 google/ads/googleads/v9/errors/account_link_error.proto create mode 100644 google/ads/googleads/v9/errors/ad_customizer_error.proto create mode 100644 google/ads/googleads/v9/errors/ad_error.proto create mode 100644 google/ads/googleads/v9/errors/ad_group_ad_error.proto create mode 100644 google/ads/googleads/v9/errors/ad_group_bid_modifier_error.proto create mode 100644 google/ads/googleads/v9/errors/ad_group_criterion_customizer_error.proto create mode 100644 google/ads/googleads/v9/errors/ad_group_criterion_error.proto create mode 100644 google/ads/googleads/v9/errors/ad_group_customizer_error.proto create mode 100644 google/ads/googleads/v9/errors/ad_group_error.proto create mode 100644 google/ads/googleads/v9/errors/ad_group_feed_error.proto create mode 100644 google/ads/googleads/v9/errors/ad_parameter_error.proto create mode 100644 google/ads/googleads/v9/errors/ad_sharing_error.proto create mode 100644 google/ads/googleads/v9/errors/adx_error.proto create mode 100644 google/ads/googleads/v9/errors/asset_error.proto create mode 100644 google/ads/googleads/v9/errors/asset_group_asset_error.proto create mode 100644 google/ads/googleads/v9/errors/asset_group_error.proto create mode 100644 google/ads/googleads/v9/errors/asset_group_listing_group_filter_error.proto create mode 100644 google/ads/googleads/v9/errors/asset_link_error.proto create mode 100644 google/ads/googleads/v9/errors/asset_set_asset_error.proto create mode 100644 google/ads/googleads/v9/errors/asset_set_error.proto create mode 100644 google/ads/googleads/v9/errors/asset_set_link_error.proto create mode 100644 google/ads/googleads/v9/errors/authentication_error.proto create mode 100644 google/ads/googleads/v9/errors/authorization_error.proto create mode 100644 google/ads/googleads/v9/errors/batch_job_error.proto create mode 100644 google/ads/googleads/v9/errors/bidding_error.proto create mode 100644 google/ads/googleads/v9/errors/bidding_strategy_error.proto create mode 100644 google/ads/googleads/v9/errors/billing_setup_error.proto create mode 100644 google/ads/googleads/v9/errors/campaign_budget_error.proto create mode 100644 google/ads/googleads/v9/errors/campaign_criterion_error.proto create mode 100644 google/ads/googleads/v9/errors/campaign_customizer_error.proto create mode 100644 google/ads/googleads/v9/errors/campaign_draft_error.proto create mode 100644 google/ads/googleads/v9/errors/campaign_error.proto create mode 100644 google/ads/googleads/v9/errors/campaign_experiment_error.proto create mode 100644 google/ads/googleads/v9/errors/campaign_feed_error.proto create mode 100644 google/ads/googleads/v9/errors/campaign_shared_set_error.proto create mode 100644 google/ads/googleads/v9/errors/change_event_error.proto create mode 100644 google/ads/googleads/v9/errors/change_status_error.proto create mode 100644 google/ads/googleads/v9/errors/collection_size_error.proto create mode 100644 google/ads/googleads/v9/errors/context_error.proto create mode 100644 google/ads/googleads/v9/errors/conversion_action_error.proto create mode 100644 google/ads/googleads/v9/errors/conversion_adjustment_upload_error.proto create mode 100644 google/ads/googleads/v9/errors/conversion_custom_variable_error.proto create mode 100644 google/ads/googleads/v9/errors/conversion_upload_error.proto create mode 100644 google/ads/googleads/v9/errors/conversion_value_rule_error.proto create mode 100644 google/ads/googleads/v9/errors/conversion_value_rule_set_error.proto create mode 100644 google/ads/googleads/v9/errors/country_code_error.proto create mode 100644 google/ads/googleads/v9/errors/criterion_error.proto create mode 100644 google/ads/googleads/v9/errors/currency_code_error.proto create mode 100644 google/ads/googleads/v9/errors/custom_audience_error.proto create mode 100644 google/ads/googleads/v9/errors/custom_conversion_goal_error.proto create mode 100644 google/ads/googleads/v9/errors/custom_interest_error.proto create mode 100644 google/ads/googleads/v9/errors/customer_client_link_error.proto create mode 100644 google/ads/googleads/v9/errors/customer_customizer_error.proto create mode 100644 google/ads/googleads/v9/errors/customer_error.proto create mode 100644 google/ads/googleads/v9/errors/customer_feed_error.proto create mode 100644 google/ads/googleads/v9/errors/customer_manager_link_error.proto create mode 100644 google/ads/googleads/v9/errors/customer_user_access_error.proto create mode 100644 google/ads/googleads/v9/errors/customizer_attribute_error.proto create mode 100644 google/ads/googleads/v9/errors/database_error.proto create mode 100644 google/ads/googleads/v9/errors/date_error.proto create mode 100644 google/ads/googleads/v9/errors/date_range_error.proto create mode 100644 google/ads/googleads/v9/errors/distinct_error.proto create mode 100644 google/ads/googleads/v9/errors/enum_error.proto create mode 100644 google/ads/googleads/v9/errors/errors.proto create mode 100644 google/ads/googleads/v9/errors/extension_feed_item_error.proto create mode 100644 google/ads/googleads/v9/errors/extension_setting_error.proto create mode 100644 google/ads/googleads/v9/errors/feed_attribute_reference_error.proto create mode 100644 google/ads/googleads/v9/errors/feed_error.proto create mode 100644 google/ads/googleads/v9/errors/feed_item_error.proto create mode 100644 google/ads/googleads/v9/errors/feed_item_set_error.proto create mode 100644 google/ads/googleads/v9/errors/feed_item_set_link_error.proto create mode 100644 google/ads/googleads/v9/errors/feed_item_target_error.proto create mode 100644 google/ads/googleads/v9/errors/feed_item_validation_error.proto create mode 100644 google/ads/googleads/v9/errors/feed_mapping_error.proto create mode 100644 google/ads/googleads/v9/errors/field_error.proto create mode 100644 google/ads/googleads/v9/errors/field_mask_error.proto create mode 100644 google/ads/googleads/v9/errors/function_error.proto create mode 100644 google/ads/googleads/v9/errors/function_parsing_error.proto create mode 100644 google/ads/googleads/v9/errors/geo_target_constant_suggestion_error.proto create mode 100644 google/ads/googleads/v9/errors/header_error.proto create mode 100644 google/ads/googleads/v9/errors/id_error.proto create mode 100644 google/ads/googleads/v9/errors/image_error.proto create mode 100644 google/ads/googleads/v9/errors/internal_error.proto create mode 100644 google/ads/googleads/v9/errors/invoice_error.proto create mode 100644 google/ads/googleads/v9/errors/keyword_plan_ad_group_error.proto create mode 100644 google/ads/googleads/v9/errors/keyword_plan_ad_group_keyword_error.proto create mode 100644 google/ads/googleads/v9/errors/keyword_plan_campaign_error.proto create mode 100644 google/ads/googleads/v9/errors/keyword_plan_campaign_keyword_error.proto create mode 100644 google/ads/googleads/v9/errors/keyword_plan_error.proto create mode 100644 google/ads/googleads/v9/errors/keyword_plan_idea_error.proto create mode 100644 google/ads/googleads/v9/errors/label_error.proto create mode 100644 google/ads/googleads/v9/errors/language_code_error.proto create mode 100644 google/ads/googleads/v9/errors/list_operation_error.proto create mode 100644 google/ads/googleads/v9/errors/manager_link_error.proto create mode 100644 google/ads/googleads/v9/errors/media_bundle_error.proto create mode 100644 google/ads/googleads/v9/errors/media_file_error.proto create mode 100644 google/ads/googleads/v9/errors/media_upload_error.proto create mode 100644 google/ads/googleads/v9/errors/merchant_center_error.proto create mode 100644 google/ads/googleads/v9/errors/multiplier_error.proto create mode 100644 google/ads/googleads/v9/errors/mutate_error.proto create mode 100644 google/ads/googleads/v9/errors/new_resource_creation_error.proto create mode 100644 google/ads/googleads/v9/errors/not_allowlisted_error.proto create mode 100644 google/ads/googleads/v9/errors/not_empty_error.proto create mode 100644 google/ads/googleads/v9/errors/null_error.proto create mode 100644 google/ads/googleads/v9/errors/offline_user_data_job_error.proto create mode 100644 google/ads/googleads/v9/errors/operation_access_denied_error.proto create mode 100644 google/ads/googleads/v9/errors/operator_error.proto create mode 100644 google/ads/googleads/v9/errors/partial_failure_error.proto create mode 100644 google/ads/googleads/v9/errors/payments_account_error.proto create mode 100644 google/ads/googleads/v9/errors/policy_finding_error.proto create mode 100644 google/ads/googleads/v9/errors/policy_validation_parameter_error.proto create mode 100644 google/ads/googleads/v9/errors/policy_violation_error.proto create mode 100644 google/ads/googleads/v9/errors/query_error.proto create mode 100644 google/ads/googleads/v9/errors/quota_error.proto create mode 100644 google/ads/googleads/v9/errors/range_error.proto create mode 100644 google/ads/googleads/v9/errors/reach_plan_error.proto create mode 100644 google/ads/googleads/v9/errors/recommendation_error.proto create mode 100644 google/ads/googleads/v9/errors/region_code_error.proto create mode 100644 google/ads/googleads/v9/errors/request_error.proto create mode 100644 google/ads/googleads/v9/errors/resource_access_denied_error.proto create mode 100644 google/ads/googleads/v9/errors/resource_count_limit_exceeded_error.proto create mode 100644 google/ads/googleads/v9/errors/setting_error.proto create mode 100644 google/ads/googleads/v9/errors/shared_criterion_error.proto create mode 100644 google/ads/googleads/v9/errors/shared_set_error.proto create mode 100644 google/ads/googleads/v9/errors/size_limit_error.proto create mode 100644 google/ads/googleads/v9/errors/string_format_error.proto create mode 100644 google/ads/googleads/v9/errors/string_length_error.proto create mode 100644 google/ads/googleads/v9/errors/third_party_app_analytics_link_error.proto create mode 100644 google/ads/googleads/v9/errors/time_zone_error.proto create mode 100644 google/ads/googleads/v9/errors/url_field_error.proto create mode 100644 google/ads/googleads/v9/errors/user_data_error.proto create mode 100644 google/ads/googleads/v9/errors/user_list_error.proto create mode 100644 google/ads/googleads/v9/errors/youtube_video_registration_error.proto create mode 100644 google/ads/googleads/v9/googleads_gapic.yaml create mode 100755 google/ads/googleads/v9/googleads_grpc_service_config.json create mode 100644 google/ads/googleads/v9/googleads_v9.yaml create mode 100644 google/ads/googleads/v9/resources/BUILD.bazel create mode 100644 google/ads/googleads/v9/resources/accessible_bidding_strategy.proto create mode 100644 google/ads/googleads/v9/resources/account_budget.proto create mode 100644 google/ads/googleads/v9/resources/account_budget_proposal.proto create mode 100644 google/ads/googleads/v9/resources/account_link.proto create mode 100644 google/ads/googleads/v9/resources/ad.proto create mode 100644 google/ads/googleads/v9/resources/ad_group.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_ad.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_ad_asset_view.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_ad_label.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_asset.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_audience_view.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_bid_modifier.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_criterion.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_criterion_customizer.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_criterion_label.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_criterion_simulation.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_customizer.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_extension_setting.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_feed.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_label.proto create mode 100644 google/ads/googleads/v9/resources/ad_group_simulation.proto create mode 100644 google/ads/googleads/v9/resources/ad_parameter.proto create mode 100644 google/ads/googleads/v9/resources/ad_schedule_view.proto create mode 100644 google/ads/googleads/v9/resources/age_range_view.proto create mode 100644 google/ads/googleads/v9/resources/asset.proto create mode 100644 google/ads/googleads/v9/resources/asset_field_type_view.proto create mode 100644 google/ads/googleads/v9/resources/asset_group.proto create mode 100644 google/ads/googleads/v9/resources/asset_group_asset.proto create mode 100644 google/ads/googleads/v9/resources/asset_group_listing_group_filter.proto create mode 100644 google/ads/googleads/v9/resources/asset_group_product_group_view.proto create mode 100644 google/ads/googleads/v9/resources/asset_set.proto create mode 100644 google/ads/googleads/v9/resources/asset_set_asset.proto create mode 100644 google/ads/googleads/v9/resources/batch_job.proto create mode 100644 google/ads/googleads/v9/resources/bidding_data_exclusion.proto create mode 100644 google/ads/googleads/v9/resources/bidding_seasonality_adjustment.proto create mode 100644 google/ads/googleads/v9/resources/bidding_strategy.proto create mode 100644 google/ads/googleads/v9/resources/bidding_strategy_simulation.proto create mode 100644 google/ads/googleads/v9/resources/billing_setup.proto create mode 100644 google/ads/googleads/v9/resources/call_view.proto create mode 100644 google/ads/googleads/v9/resources/campaign.proto create mode 100644 google/ads/googleads/v9/resources/campaign_asset.proto create mode 100644 google/ads/googleads/v9/resources/campaign_asset_set.proto create mode 100644 google/ads/googleads/v9/resources/campaign_audience_view.proto create mode 100644 google/ads/googleads/v9/resources/campaign_bid_modifier.proto create mode 100644 google/ads/googleads/v9/resources/campaign_budget.proto create mode 100644 google/ads/googleads/v9/resources/campaign_conversion_goal.proto create mode 100644 google/ads/googleads/v9/resources/campaign_criterion.proto create mode 100644 google/ads/googleads/v9/resources/campaign_criterion_simulation.proto create mode 100644 google/ads/googleads/v9/resources/campaign_customizer.proto create mode 100644 google/ads/googleads/v9/resources/campaign_draft.proto create mode 100644 google/ads/googleads/v9/resources/campaign_experiment.proto create mode 100644 google/ads/googleads/v9/resources/campaign_extension_setting.proto create mode 100644 google/ads/googleads/v9/resources/campaign_feed.proto create mode 100644 google/ads/googleads/v9/resources/campaign_label.proto create mode 100644 google/ads/googleads/v9/resources/campaign_shared_set.proto create mode 100644 google/ads/googleads/v9/resources/campaign_simulation.proto create mode 100644 google/ads/googleads/v9/resources/carrier_constant.proto create mode 100644 google/ads/googleads/v9/resources/change_event.proto create mode 100644 google/ads/googleads/v9/resources/change_status.proto create mode 100644 google/ads/googleads/v9/resources/click_view.proto create mode 100644 google/ads/googleads/v9/resources/combined_audience.proto create mode 100644 google/ads/googleads/v9/resources/conversion_action.proto create mode 100644 google/ads/googleads/v9/resources/conversion_custom_variable.proto create mode 100644 google/ads/googleads/v9/resources/conversion_goal_campaign_config.proto create mode 100644 google/ads/googleads/v9/resources/conversion_value_rule.proto create mode 100644 google/ads/googleads/v9/resources/conversion_value_rule_set.proto create mode 100644 google/ads/googleads/v9/resources/currency_constant.proto create mode 100644 google/ads/googleads/v9/resources/custom_audience.proto create mode 100644 google/ads/googleads/v9/resources/custom_conversion_goal.proto create mode 100644 google/ads/googleads/v9/resources/custom_interest.proto create mode 100644 google/ads/googleads/v9/resources/customer.proto create mode 100644 google/ads/googleads/v9/resources/customer_asset.proto create mode 100644 google/ads/googleads/v9/resources/customer_client.proto create mode 100644 google/ads/googleads/v9/resources/customer_client_link.proto create mode 100644 google/ads/googleads/v9/resources/customer_conversion_goal.proto create mode 100644 google/ads/googleads/v9/resources/customer_customizer.proto create mode 100644 google/ads/googleads/v9/resources/customer_extension_setting.proto create mode 100644 google/ads/googleads/v9/resources/customer_feed.proto create mode 100644 google/ads/googleads/v9/resources/customer_label.proto create mode 100644 google/ads/googleads/v9/resources/customer_manager_link.proto create mode 100644 google/ads/googleads/v9/resources/customer_negative_criterion.proto create mode 100644 google/ads/googleads/v9/resources/customer_user_access.proto create mode 100644 google/ads/googleads/v9/resources/customer_user_access_invitation.proto create mode 100644 google/ads/googleads/v9/resources/customizer_attribute.proto create mode 100644 google/ads/googleads/v9/resources/detail_placement_view.proto create mode 100644 google/ads/googleads/v9/resources/detailed_demographic.proto create mode 100644 google/ads/googleads/v9/resources/display_keyword_view.proto create mode 100644 google/ads/googleads/v9/resources/distance_view.proto create mode 100644 google/ads/googleads/v9/resources/domain_category.proto create mode 100644 google/ads/googleads/v9/resources/dynamic_search_ads_search_term_view.proto create mode 100644 google/ads/googleads/v9/resources/expanded_landing_page_view.proto create mode 100644 google/ads/googleads/v9/resources/extension_feed_item.proto create mode 100644 google/ads/googleads/v9/resources/feed.proto create mode 100644 google/ads/googleads/v9/resources/feed_item.proto create mode 100644 google/ads/googleads/v9/resources/feed_item_set.proto create mode 100644 google/ads/googleads/v9/resources/feed_item_set_link.proto create mode 100644 google/ads/googleads/v9/resources/feed_item_target.proto create mode 100644 google/ads/googleads/v9/resources/feed_mapping.proto create mode 100644 google/ads/googleads/v9/resources/feed_placeholder_view.proto create mode 100644 google/ads/googleads/v9/resources/gender_view.proto create mode 100644 google/ads/googleads/v9/resources/geo_target_constant.proto create mode 100644 google/ads/googleads/v9/resources/geographic_view.proto create mode 100644 google/ads/googleads/v9/resources/google_ads_field.proto create mode 100644 google/ads/googleads/v9/resources/group_placement_view.proto create mode 100644 google/ads/googleads/v9/resources/hotel_group_view.proto create mode 100644 google/ads/googleads/v9/resources/hotel_performance_view.proto create mode 100644 google/ads/googleads/v9/resources/hotel_reconciliation.proto create mode 100644 google/ads/googleads/v9/resources/income_range_view.proto create mode 100644 google/ads/googleads/v9/resources/invoice.proto create mode 100644 google/ads/googleads/v9/resources/keyword_plan.proto create mode 100644 google/ads/googleads/v9/resources/keyword_plan_ad_group.proto create mode 100644 google/ads/googleads/v9/resources/keyword_plan_ad_group_keyword.proto create mode 100644 google/ads/googleads/v9/resources/keyword_plan_campaign.proto create mode 100644 google/ads/googleads/v9/resources/keyword_plan_campaign_keyword.proto create mode 100644 google/ads/googleads/v9/resources/keyword_theme_constant.proto create mode 100644 google/ads/googleads/v9/resources/keyword_view.proto create mode 100644 google/ads/googleads/v9/resources/label.proto create mode 100644 google/ads/googleads/v9/resources/landing_page_view.proto create mode 100644 google/ads/googleads/v9/resources/language_constant.proto create mode 100644 google/ads/googleads/v9/resources/life_event.proto create mode 100644 google/ads/googleads/v9/resources/location_view.proto create mode 100644 google/ads/googleads/v9/resources/managed_placement_view.proto create mode 100644 google/ads/googleads/v9/resources/media_file.proto create mode 100644 google/ads/googleads/v9/resources/merchant_center_link.proto create mode 100644 google/ads/googleads/v9/resources/mobile_app_category_constant.proto create mode 100644 google/ads/googleads/v9/resources/mobile_device_constant.proto create mode 100644 google/ads/googleads/v9/resources/offline_user_data_job.proto create mode 100644 google/ads/googleads/v9/resources/operating_system_version_constant.proto create mode 100644 google/ads/googleads/v9/resources/paid_organic_search_term_view.proto create mode 100644 google/ads/googleads/v9/resources/parental_status_view.proto create mode 100644 google/ads/googleads/v9/resources/payments_account.proto create mode 100644 google/ads/googleads/v9/resources/product_bidding_category_constant.proto create mode 100644 google/ads/googleads/v9/resources/product_group_view.proto create mode 100644 google/ads/googleads/v9/resources/recommendation.proto create mode 100644 google/ads/googleads/v9/resources/remarketing_action.proto create mode 100644 google/ads/googleads/v9/resources/search_term_view.proto create mode 100644 google/ads/googleads/v9/resources/shared_criterion.proto create mode 100644 google/ads/googleads/v9/resources/shared_set.proto create mode 100644 google/ads/googleads/v9/resources/shopping_performance_view.proto create mode 100644 google/ads/googleads/v9/resources/smart_campaign_search_term_view.proto create mode 100644 google/ads/googleads/v9/resources/smart_campaign_setting.proto create mode 100644 google/ads/googleads/v9/resources/third_party_app_analytics_link.proto create mode 100644 google/ads/googleads/v9/resources/topic_constant.proto create mode 100644 google/ads/googleads/v9/resources/topic_view.proto create mode 100644 google/ads/googleads/v9/resources/user_interest.proto create mode 100644 google/ads/googleads/v9/resources/user_list.proto create mode 100644 google/ads/googleads/v9/resources/user_location_view.proto create mode 100644 google/ads/googleads/v9/resources/video.proto create mode 100644 google/ads/googleads/v9/resources/webpage_view.proto create mode 100644 google/ads/googleads/v9/services/BUILD.bazel create mode 100644 google/ads/googleads/v9/services/accessible_bidding_strategy_service.proto create mode 100644 google/ads/googleads/v9/services/account_budget_proposal_service.proto create mode 100644 google/ads/googleads/v9/services/account_budget_service.proto create mode 100644 google/ads/googleads/v9/services/account_link_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_ad_asset_view_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_ad_label_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_ad_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_asset_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_audience_view_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_bid_modifier_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_criterion_customizer_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_criterion_label_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_criterion_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_criterion_simulation_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_customizer_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_extension_setting_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_feed_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_label_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_service.proto create mode 100644 google/ads/googleads/v9/services/ad_group_simulation_service.proto create mode 100644 google/ads/googleads/v9/services/ad_parameter_service.proto create mode 100644 google/ads/googleads/v9/services/ad_schedule_view_service.proto create mode 100644 google/ads/googleads/v9/services/ad_service.proto create mode 100644 google/ads/googleads/v9/services/age_range_view_service.proto create mode 100644 google/ads/googleads/v9/services/asset_field_type_view_service.proto create mode 100644 google/ads/googleads/v9/services/asset_group_asset_service.proto create mode 100644 google/ads/googleads/v9/services/asset_group_listing_group_filter_service.proto create mode 100644 google/ads/googleads/v9/services/asset_group_service.proto create mode 100644 google/ads/googleads/v9/services/asset_service.proto create mode 100644 google/ads/googleads/v9/services/asset_set_asset_service.proto create mode 100644 google/ads/googleads/v9/services/asset_set_service.proto create mode 100644 google/ads/googleads/v9/services/batch_job_service.proto create mode 100644 google/ads/googleads/v9/services/bidding_data_exclusion_service.proto create mode 100644 google/ads/googleads/v9/services/bidding_seasonality_adjustment_service.proto create mode 100644 google/ads/googleads/v9/services/bidding_strategy_service.proto create mode 100644 google/ads/googleads/v9/services/bidding_strategy_simulation_service.proto create mode 100644 google/ads/googleads/v9/services/billing_setup_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_asset_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_asset_set_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_audience_view_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_bid_modifier_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_budget_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_conversion_goal_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_criterion_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_criterion_simulation_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_customizer_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_draft_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_experiment_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_extension_setting_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_feed_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_label_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_shared_set_service.proto create mode 100644 google/ads/googleads/v9/services/campaign_simulation_service.proto create mode 100644 google/ads/googleads/v9/services/carrier_constant_service.proto create mode 100644 google/ads/googleads/v9/services/change_status_service.proto create mode 100644 google/ads/googleads/v9/services/click_view_service.proto create mode 100644 google/ads/googleads/v9/services/combined_audience_service.proto create mode 100644 google/ads/googleads/v9/services/conversion_action_service.proto create mode 100644 google/ads/googleads/v9/services/conversion_adjustment_upload_service.proto create mode 100644 google/ads/googleads/v9/services/conversion_custom_variable_service.proto create mode 100644 google/ads/googleads/v9/services/conversion_goal_campaign_config_service.proto create mode 100644 google/ads/googleads/v9/services/conversion_upload_service.proto create mode 100644 google/ads/googleads/v9/services/conversion_value_rule_service.proto create mode 100644 google/ads/googleads/v9/services/conversion_value_rule_set_service.proto create mode 100644 google/ads/googleads/v9/services/currency_constant_service.proto create mode 100644 google/ads/googleads/v9/services/custom_audience_service.proto create mode 100644 google/ads/googleads/v9/services/custom_conversion_goal_service.proto create mode 100644 google/ads/googleads/v9/services/custom_interest_service.proto create mode 100644 google/ads/googleads/v9/services/customer_asset_service.proto create mode 100644 google/ads/googleads/v9/services/customer_client_link_service.proto create mode 100644 google/ads/googleads/v9/services/customer_client_service.proto create mode 100644 google/ads/googleads/v9/services/customer_conversion_goal_service.proto create mode 100644 google/ads/googleads/v9/services/customer_customizer_service.proto create mode 100644 google/ads/googleads/v9/services/customer_extension_setting_service.proto create mode 100644 google/ads/googleads/v9/services/customer_feed_service.proto create mode 100644 google/ads/googleads/v9/services/customer_label_service.proto create mode 100644 google/ads/googleads/v9/services/customer_manager_link_service.proto create mode 100644 google/ads/googleads/v9/services/customer_negative_criterion_service.proto create mode 100644 google/ads/googleads/v9/services/customer_service.proto create mode 100644 google/ads/googleads/v9/services/customer_user_access_invitation_service.proto create mode 100644 google/ads/googleads/v9/services/customer_user_access_service.proto create mode 100644 google/ads/googleads/v9/services/customizer_attribute_service.proto create mode 100644 google/ads/googleads/v9/services/detail_placement_view_service.proto create mode 100644 google/ads/googleads/v9/services/detailed_demographic_service.proto create mode 100644 google/ads/googleads/v9/services/display_keyword_view_service.proto create mode 100644 google/ads/googleads/v9/services/distance_view_service.proto create mode 100644 google/ads/googleads/v9/services/domain_category_service.proto create mode 100644 google/ads/googleads/v9/services/dynamic_search_ads_search_term_view_service.proto create mode 100644 google/ads/googleads/v9/services/expanded_landing_page_view_service.proto create mode 100644 google/ads/googleads/v9/services/extension_feed_item_service.proto create mode 100644 google/ads/googleads/v9/services/feed_item_service.proto create mode 100644 google/ads/googleads/v9/services/feed_item_set_link_service.proto create mode 100644 google/ads/googleads/v9/services/feed_item_set_service.proto create mode 100644 google/ads/googleads/v9/services/feed_item_target_service.proto create mode 100644 google/ads/googleads/v9/services/feed_mapping_service.proto create mode 100644 google/ads/googleads/v9/services/feed_placeholder_view_service.proto create mode 100644 google/ads/googleads/v9/services/feed_service.proto create mode 100644 google/ads/googleads/v9/services/gender_view_service.proto create mode 100644 google/ads/googleads/v9/services/geo_target_constant_service.proto create mode 100644 google/ads/googleads/v9/services/geographic_view_service.proto create mode 100644 google/ads/googleads/v9/services/google_ads_field_service.proto create mode 100644 google/ads/googleads/v9/services/google_ads_service.proto create mode 100644 google/ads/googleads/v9/services/group_placement_view_service.proto create mode 100644 google/ads/googleads/v9/services/hotel_group_view_service.proto create mode 100644 google/ads/googleads/v9/services/hotel_performance_view_service.proto create mode 100644 google/ads/googleads/v9/services/income_range_view_service.proto create mode 100644 google/ads/googleads/v9/services/invoice_service.proto create mode 100644 google/ads/googleads/v9/services/keyword_plan_ad_group_keyword_service.proto create mode 100644 google/ads/googleads/v9/services/keyword_plan_ad_group_service.proto create mode 100644 google/ads/googleads/v9/services/keyword_plan_campaign_keyword_service.proto create mode 100644 google/ads/googleads/v9/services/keyword_plan_campaign_service.proto create mode 100644 google/ads/googleads/v9/services/keyword_plan_idea_service.proto create mode 100644 google/ads/googleads/v9/services/keyword_plan_service.proto create mode 100644 google/ads/googleads/v9/services/keyword_theme_constant_service.proto create mode 100644 google/ads/googleads/v9/services/keyword_view_service.proto create mode 100644 google/ads/googleads/v9/services/label_service.proto create mode 100644 google/ads/googleads/v9/services/landing_page_view_service.proto create mode 100644 google/ads/googleads/v9/services/language_constant_service.proto create mode 100644 google/ads/googleads/v9/services/life_event_service.proto create mode 100644 google/ads/googleads/v9/services/location_view_service.proto create mode 100644 google/ads/googleads/v9/services/managed_placement_view_service.proto create mode 100644 google/ads/googleads/v9/services/media_file_service.proto create mode 100644 google/ads/googleads/v9/services/merchant_center_link_service.proto create mode 100644 google/ads/googleads/v9/services/mobile_app_category_constant_service.proto create mode 100644 google/ads/googleads/v9/services/mobile_device_constant_service.proto create mode 100644 google/ads/googleads/v9/services/offline_user_data_job_service.proto create mode 100644 google/ads/googleads/v9/services/operating_system_version_constant_service.proto create mode 100644 google/ads/googleads/v9/services/paid_organic_search_term_view_service.proto create mode 100644 google/ads/googleads/v9/services/parental_status_view_service.proto create mode 100644 google/ads/googleads/v9/services/payments_account_service.proto create mode 100644 google/ads/googleads/v9/services/product_bidding_category_constant_service.proto create mode 100644 google/ads/googleads/v9/services/product_group_view_service.proto create mode 100644 google/ads/googleads/v9/services/reach_plan_service.proto create mode 100644 google/ads/googleads/v9/services/recommendation_service.proto create mode 100644 google/ads/googleads/v9/services/remarketing_action_service.proto create mode 100644 google/ads/googleads/v9/services/search_term_view_service.proto create mode 100644 google/ads/googleads/v9/services/shared_criterion_service.proto create mode 100644 google/ads/googleads/v9/services/shared_set_service.proto create mode 100644 google/ads/googleads/v9/services/shopping_performance_view_service.proto create mode 100644 google/ads/googleads/v9/services/smart_campaign_search_term_view_service.proto create mode 100644 google/ads/googleads/v9/services/smart_campaign_setting_service.proto create mode 100644 google/ads/googleads/v9/services/smart_campaign_suggest_service.proto create mode 100644 google/ads/googleads/v9/services/third_party_app_analytics_link_service.proto create mode 100644 google/ads/googleads/v9/services/topic_constant_service.proto create mode 100644 google/ads/googleads/v9/services/topic_view_service.proto create mode 100644 google/ads/googleads/v9/services/user_data_service.proto create mode 100644 google/ads/googleads/v9/services/user_interest_service.proto create mode 100644 google/ads/googleads/v9/services/user_list_service.proto create mode 100644 google/ads/googleads/v9/services/user_location_view_service.proto create mode 100644 google/ads/googleads/v9/services/video_service.proto create mode 100644 google/ads/googleads/v9/services/webpage_view_service.proto create mode 100644 google/analytics/admin/BUILD.bazel create mode 100644 google/analytics/data/BUILD.bazel delete mode 100644 google/analytics/data/v1alpha/BUILD.bazel delete mode 100644 google/analytics/data/v1alpha/analytics_data_api.proto delete mode 100644 google/analytics/data/v1alpha/analytics_data_grpc_service_config.json delete mode 100644 google/analytics/data/v1alpha/analyticsdata_gapic.yaml delete mode 100644 google/analytics/data/v1alpha/analyticsdata_v1alpha.yaml delete mode 100644 google/analytics/data/v1alpha/data.proto create mode 100644 google/api/expr/conformance/v1alpha1/BUILD.bazel rename google/api/expr/{ => conformance}/v1alpha1/conformance_service.proto (83%) create mode 100644 google/api/routing.proto create mode 100644 google/api/servicecontrol/v1/servicecontrol_grpc_service_config.json create mode 100644 google/api/serviceusage/BUILD.bazel create mode 100644 google/appengine/BUILD.bazel create mode 100644 google/area120/tables/BUILD.bazel create mode 100644 google/chromeos/uidetection/v1/BUILD.bazel create mode 100644 google/chromeos/uidetection/v1/chromeosuidetection_v1.yaml create mode 100644 google/chromeos/uidetection/v1/ui_detection.proto create mode 100644 google/chromeos/uidetection/v1/ui_detection_grpc_service_config.json create mode 100644 google/cloud/accessapproval/BUILD.bazel create mode 100644 google/cloud/aiplatform/v1/artifact.proto create mode 100644 google/cloud/aiplatform/v1/context.proto create mode 100644 google/cloud/aiplatform/v1/deployed_index_ref.proto create mode 100644 google/cloud/aiplatform/v1/entity_type.proto create mode 100644 google/cloud/aiplatform/v1/event.proto create mode 100644 google/cloud/aiplatform/v1/execution.proto create mode 100644 google/cloud/aiplatform/v1/explanation.proto create mode 100644 google/cloud/aiplatform/v1/explanation_metadata.proto create mode 100644 google/cloud/aiplatform/v1/feature.proto create mode 100644 google/cloud/aiplatform/v1/feature_monitoring_stats.proto create mode 100644 google/cloud/aiplatform/v1/feature_selector.proto create mode 100644 google/cloud/aiplatform/v1/featurestore.proto create mode 100644 google/cloud/aiplatform/v1/featurestore_online_service.proto create mode 100644 google/cloud/aiplatform/v1/featurestore_service.proto create mode 100644 google/cloud/aiplatform/v1/index.proto create mode 100644 google/cloud/aiplatform/v1/index_endpoint.proto create mode 100644 google/cloud/aiplatform/v1/index_endpoint_service.proto create mode 100644 google/cloud/aiplatform/v1/index_service.proto create mode 100644 google/cloud/aiplatform/v1/lineage_subgraph.proto create mode 100644 google/cloud/aiplatform/v1/metadata_schema.proto create mode 100644 google/cloud/aiplatform/v1/metadata_service.proto create mode 100644 google/cloud/aiplatform/v1/metadata_store.proto create mode 100644 google/cloud/aiplatform/v1/model_deployment_monitoring_job.proto create mode 100644 google/cloud/aiplatform/v1/model_monitoring.proto create mode 100644 google/cloud/aiplatform/v1/pipeline_job.proto create mode 100644 google/cloud/aiplatform/v1/tensorboard.proto create mode 100644 google/cloud/aiplatform/v1/tensorboard_data.proto create mode 100644 google/cloud/aiplatform/v1/tensorboard_experiment.proto create mode 100644 google/cloud/aiplatform/v1/tensorboard_run.proto create mode 100644 google/cloud/aiplatform/v1/tensorboard_service.proto create mode 100644 google/cloud/aiplatform/v1/tensorboard_time_series.proto create mode 100644 google/cloud/aiplatform/v1/types.proto create mode 100644 google/cloud/aiplatform/v1/unmanaged_container_model.proto create mode 100644 google/cloud/aiplatform/v1/value.proto create mode 100644 google/cloud/aiplatform/v1/vizier_service.proto create mode 100644 google/cloud/aiplatform/v1beta1/schema/io_format.proto create mode 100644 google/cloud/aiplatform/v1beta1/unmanaged_container_model.proto create mode 100644 google/cloud/apigateway/BUILD.bazel create mode 100644 google/cloud/apigeeconnect/BUILD.bazel create mode 100644 google/cloud/assuredworkloads/BUILD.bazel create mode 100644 google/cloud/assuredworkloads/v1/BUILD.bazel create mode 100644 google/cloud/assuredworkloads/v1/assuredworkloads.proto create mode 100644 google/cloud/assuredworkloads/v1/assuredworkloads_grpc_service_config.json create mode 100644 google/cloud/assuredworkloads/v1/assuredworkloads_v1.yaml create mode 100644 google/cloud/audit/bigquery_audit_metadata.proto create mode 100644 google/cloud/baremetalsolution/v2/BUILD.bazel create mode 100644 google/cloud/baremetalsolution/v2/baremetalsolution.proto create mode 100644 google/cloud/baremetalsolution/v2/baremetalsolution_grpc_service_config.json create mode 100644 google/cloud/baremetalsolution/v2/baremetalsolution_v2.yaml create mode 100644 google/cloud/bigquery/connection/BUILD.bazel create mode 100644 google/cloud/bigquery/migration/v2alpha/assessment_task.proto create mode 100644 google/cloud/bigquery/migration/v2alpha/translation_service.proto create mode 100644 google/cloud/bigquery/migration/v2alpha/translation_task.proto create mode 100644 google/cloud/bigquery/reservation/BUILD.bazel create mode 100644 google/cloud/bigquery/storage/v1/protobuf.proto create mode 100644 google/cloud/bigquery/storage/v1/table.proto create mode 100644 google/cloud/bigquerymigration/v2alpha/bigquerymigration_grpc_service_config.json create mode 100644 google/cloud/billing/BUILD.bazel create mode 100644 google/cloud/billing/budgets/BUILD.bazel create mode 100644 google/cloud/binaryauthorization/BUILD.bazel create mode 100644 google/cloud/binaryauthorization/v1/BUILD.bazel create mode 100644 google/cloud/binaryauthorization/v1/binaryauthorization_grpc_service_config.json create mode 100644 google/cloud/binaryauthorization/v1/binaryauthorization_v1.yaml create mode 100644 google/cloud/binaryauthorization/v1/resources.proto create mode 100644 google/cloud/binaryauthorization/v1/service.proto create mode 100644 google/cloud/channel/BUILD.bazel delete mode 100644 google/cloud/clouddms/v1/datamigration_gapic.yaml create mode 100644 google/cloud/common/BUILD.bazel create mode 100644 google/cloud/common/common.yaml create mode 100644 google/cloud/common/operation_metadata.proto create mode 100644 google/cloud/compute/BUILD.bazel create mode 100644 google/cloud/compute/v1/BUILD.bazel create mode 100644 google/cloud/compute/v1/compute.proto create mode 100644 google/cloud/compute/v1/compute.v1.json create mode 100755 google/cloud/compute/v1/compute_gapic.yaml create mode 100755 google/cloud/compute/v1/compute_grpc_service_config.json create mode 100644 google/cloud/compute/v1/compute_v1.yaml create mode 100644 google/cloud/compute/v1small/BUILD.bazel create mode 100644 google/cloud/compute/v1small/README.md create mode 100644 google/cloud/compute/v1small/compute.v1small.json create mode 100644 google/cloud/compute/v1small/compute_small.proto create mode 100755 google/cloud/compute/v1small/compute_small_gapic.yaml create mode 100755 google/cloud/compute/v1small/compute_small_grpc_service_config.json create mode 100644 google/cloud/compute/v1small/compute_small_v1.yaml create mode 100644 google/cloud/contactcenterinsights/BUILD.bazel create mode 100644 google/cloud/datacatalog/BUILD.bazel create mode 100644 google/cloud/datacatalog/v1/bigquery.proto create mode 100644 google/cloud/datacatalog/v1/usage.proto create mode 100644 google/cloud/datafusion/BUILD.bazel create mode 100644 google/cloud/datafusion/v1/BUILD.bazel create mode 100644 google/cloud/datafusion/v1/datafusion.proto create mode 100644 google/cloud/datafusion/v1/datafusion_grpc_service_config.json create mode 100644 google/cloud/datafusion/v1/datafusion_v1.yaml create mode 100644 google/cloud/datafusion/v1beta1/BUILD.bazel create mode 100644 google/cloud/datafusion/v1beta1/datafusion_grpc_service_config.json create mode 100644 google/cloud/datafusion/v1beta1/datafusion_v1beta1.yaml create mode 100644 google/cloud/datafusion/v1beta1/v1beta1.proto create mode 100644 google/cloud/dataplex/v1/BUILD.bazel create mode 100644 google/cloud/dataplex/v1/dataplex_grpc_service_config.json create mode 100644 google/cloud/dataplex/v1/dataplex_v1.yaml create mode 100644 google/cloud/dataplex/v1/logs.proto create mode 100644 google/cloud/dataplex/v1/metadata.proto create mode 100644 google/cloud/dataplex/v1/resources.proto create mode 100644 google/cloud/dataplex/v1/service.proto create mode 100644 google/cloud/dataplex/v1/tasks.proto create mode 100644 google/cloud/dataproc/v1/batches.proto delete mode 100644 google/cloud/dataproc/v1beta2/BUILD.bazel delete mode 100644 google/cloud/dataproc/v1beta2/autoscaling_policies.proto delete mode 100644 google/cloud/dataproc/v1beta2/clusters.proto delete mode 100644 google/cloud/dataproc/v1beta2/dataproc_gapic.yaml delete mode 100755 google/cloud/dataproc/v1beta2/dataproc_grpc_service_config.json delete mode 100644 google/cloud/dataproc/v1beta2/dataproc_v1beta2.yaml delete mode 100644 google/cloud/dataproc/v1beta2/jobs.proto delete mode 100644 google/cloud/dataproc/v1beta2/operations.proto delete mode 100644 google/cloud/dataproc/v1beta2/shared.proto delete mode 100644 google/cloud/dataproc/v1beta2/workflow_templates.proto create mode 100644 google/cloud/dataqna/BUILD.bazel create mode 100644 google/cloud/datastream/BUILD.bazel create mode 100644 google/cloud/datastream/v1alpha1/BUILD.bazel create mode 100644 google/cloud/datastream/v1alpha1/datastream.proto create mode 100644 google/cloud/datastream/v1alpha1/datastream_grpc_service_config.json create mode 100644 google/cloud/datastream/v1alpha1/datastream_resources.proto create mode 100644 google/cloud/datastream/v1alpha1/datastream_v1alpha1.yaml create mode 100644 google/cloud/deploy/BUILD.bazel create mode 100644 google/cloud/deploy/v1/BUILD.bazel create mode 100644 google/cloud/deploy/v1/cloud_deploy.proto create mode 100644 google/cloud/deploy/v1/clouddeploy_grpc_service_config.json create mode 100644 google/cloud/deploy/v1/clouddeploy_v1.yaml create mode 100644 google/cloud/dialogflow/cx/BUILD.bazel create mode 100644 google/cloud/dialogflow/cx/v3/advanced_settings.proto create mode 100644 google/cloud/dialogflow/cx/v3/changelog.proto create mode 100644 google/cloud/dialogflow/cx/v3/deployment.proto create mode 100644 google/cloud/dialogflow/cx/v3beta1/advanced_settings.proto create mode 100644 google/cloud/dialogflow/cx/v3beta1/changelog.proto create mode 100644 google/cloud/dialogflow/cx/v3beta1/deployment.proto create mode 100644 google/cloud/documentai/v1/operation_metadata.proto create mode 100644 google/cloud/documentai/v1beta3/operation_metadata.proto create mode 100644 google/cloud/documentai/v1beta3/processor.proto create mode 100644 google/cloud/documentai/v1beta3/processor_type.proto create mode 100644 google/cloud/domains/BUILD.bazel create mode 100644 google/cloud/domains/v1/BUILD.bazel create mode 100644 google/cloud/domains/v1/domains.proto create mode 100644 google/cloud/domains/v1/domains_grpc_service_config.json create mode 100644 google/cloud/domains/v1/domains_v1.yaml delete mode 100644 google/cloud/domains/v1alpha2/domains_gapic.yaml create mode 100644 google/cloud/essentialcontacts/BUILD.bazel create mode 100644 google/cloud/eventarc/BUILD.bazel create mode 100644 google/cloud/eventarc/publishing/BUILD.bazel create mode 100644 google/cloud/eventarc/publishing/v1/BUILD.bazel create mode 100644 google/cloud/eventarc/publishing/v1/eventarcpublishing_grpc_service_config.json create mode 100644 google/cloud/eventarc/publishing/v1/eventarcpublishing_v1.yaml create mode 100644 google/cloud/eventarc/publishing/v1/publisher.proto create mode 100644 google/cloud/eventarc/v1/BUILD.bazel create mode 100644 google/cloud/eventarc/v1/eventarc.proto create mode 100644 google/cloud/eventarc/v1/eventarc_grpc_service_config.json create mode 100644 google/cloud/eventarc/v1/eventarc_v1.yaml create mode 100644 google/cloud/eventarc/v1/trigger.proto create mode 100644 google/cloud/extended_operations.proto create mode 100644 google/cloud/filestore/BUILD.bazel create mode 100644 google/cloud/filestore/v1/BUILD.bazel create mode 100644 google/cloud/filestore/v1/cloud_filestore_service.proto create mode 100644 google/cloud/filestore/v1/file_grpc_service_config.json create mode 100644 google/cloud/filestore/v1/file_v1.yaml create mode 100644 google/cloud/filestore/v1beta1/BUILD.bazel create mode 100644 google/cloud/filestore/v1beta1/cloud_filestore_service.proto create mode 100644 google/cloud/filestore/v1beta1/file_grpc_service_config.json create mode 100644 google/cloud/filestore/v1beta1/file_v1beta1.yaml create mode 100644 google/cloud/functions/BUILD.bazel create mode 100644 google/cloud/gaming/BUILD.bazel create mode 100644 google/cloud/gaming/allocationendpoint/v1alpha/BUILD.bazel create mode 100644 google/cloud/gaming/allocationendpoint/v1alpha/allocation_endpoint.proto create mode 100644 google/cloud/gaming/allocationendpoint/v1alpha/allocation_endpoint_grpc_service_config.json create mode 100644 google/cloud/gaming/allocationendpoint/v1alpha/allocation_endpoint_v1alpha.yaml create mode 100644 google/cloud/gkebackup/logging/v1/BUILD.bazel create mode 100644 google/cloud/gkebackup/logging/v1/logged_backup.proto create mode 100644 google/cloud/gkebackup/logging/v1/logged_backup_plan.proto create mode 100644 google/cloud/gkebackup/logging/v1/logged_common.proto create mode 100644 google/cloud/gkebackup/logging/v1/logged_restore.proto create mode 100644 google/cloud/gkebackup/logging/v1/logged_restore_plan.proto create mode 100644 google/cloud/gkebackup/logging/v1/logging.proto create mode 100644 google/cloud/gkeconnect/gateway/BUILD.bazel create mode 100644 google/cloud/gkeconnect/gateway/v1/BUILD.bazel create mode 100644 google/cloud/gkeconnect/gateway/v1/connectgateway_v1.yaml create mode 100644 google/cloud/gkeconnect/gateway/v1/connectgw_grpc_service_config.json create mode 100644 google/cloud/gkeconnect/gateway/v1/gateway.proto create mode 100644 google/cloud/gkeconnect/gateway/v1alpha1/BUILD.bazel create mode 100644 google/cloud/gkeconnect/gateway/v1alpha1/connectgateway_v1alpha1.yaml create mode 100644 google/cloud/gkeconnect/gateway/v1alpha1/connectgw_grpc_service_config.json create mode 100644 google/cloud/gkeconnect/gateway/v1alpha1/gateway.proto create mode 100644 google/cloud/gkeconnect/gateway/v1beta1/BUILD.bazel create mode 100644 google/cloud/gkeconnect/gateway/v1beta1/connectgateway_v1beta1.yaml create mode 100644 google/cloud/gkeconnect/gateway/v1beta1/connectgw_grpc_service_config.json create mode 100644 google/cloud/gkeconnect/gateway/v1beta1/gateway.proto create mode 100644 google/cloud/gkehub/BUILD.bazel create mode 100644 google/cloud/gkehub/v1/BUILD.bazel create mode 100644 google/cloud/gkehub/v1/configmanagement/BUILD.bazel create mode 100644 google/cloud/gkehub/v1/configmanagement/configmanagement.proto create mode 100644 google/cloud/gkehub/v1/feature.proto create mode 100644 google/cloud/gkehub/v1/gkehub_v1.yaml create mode 100644 google/cloud/gkehub/v1/membership.proto create mode 100644 google/cloud/gkehub/v1/multiclusteringress/BUILD.bazel create mode 100644 google/cloud/gkehub/v1/multiclusteringress/multiclusteringress.proto create mode 100644 google/cloud/gkehub/v1/service.proto create mode 100644 google/cloud/gkehub/v1/v1_grpc_service_config.json create mode 100644 google/cloud/gkehub/v1alpha/BUILD.bazel create mode 100644 google/cloud/gkehub/v1alpha/cloudauditlogging/BUILD.bazel create mode 100644 google/cloud/gkehub/v1alpha/cloudauditlogging/cloudauditlogging.proto create mode 100644 google/cloud/gkehub/v1alpha/configmanagement/BUILD.bazel create mode 100644 google/cloud/gkehub/v1alpha/configmanagement/configmanagement.proto create mode 100644 google/cloud/gkehub/v1alpha/feature.proto create mode 100644 google/cloud/gkehub/v1alpha/gkehub_v1alpha.yaml create mode 100644 google/cloud/gkehub/v1alpha/metering/BUILD.bazel create mode 100644 google/cloud/gkehub/v1alpha/metering/metering.proto create mode 100644 google/cloud/gkehub/v1alpha/multiclusteringress/BUILD.bazel create mode 100644 google/cloud/gkehub/v1alpha/multiclusteringress/multiclusteringress.proto create mode 100644 google/cloud/gkehub/v1alpha/service.proto create mode 100644 google/cloud/gkehub/v1alpha/servicemesh/BUILD.bazel create mode 100644 google/cloud/gkehub/v1alpha/servicemesh/servicemesh.proto create mode 100644 google/cloud/gkehub/v1alpha/v1alpha_grpc_service_config.json create mode 100644 google/cloud/gkehub/v1beta/BUILD.bazel create mode 100644 google/cloud/gkehub/v1beta/configmanagement/BUILD.bazel create mode 100644 google/cloud/gkehub/v1beta/configmanagement/configmanagement.proto create mode 100644 google/cloud/gkehub/v1beta/feature.proto create mode 100644 google/cloud/gkehub/v1beta/gkehub_v1beta.yaml create mode 100644 google/cloud/gkehub/v1beta/metering/BUILD.bazel create mode 100644 google/cloud/gkehub/v1beta/metering/metering.proto create mode 100644 google/cloud/gkehub/v1beta/multiclusteringress/BUILD.bazel create mode 100644 google/cloud/gkehub/v1beta/multiclusteringress/multiclusteringress.proto create mode 100644 google/cloud/gkehub/v1beta/service.proto create mode 100644 google/cloud/gkehub/v1beta/v1beta_grpc_service_config.json create mode 100644 google/cloud/gsuiteaddons/logging/v1/BUILD.bazel create mode 100644 google/cloud/gsuiteaddons/logging/v1/g_suite_add_ons_log_entry.proto create mode 100644 google/cloud/iap/BUILD.bazel create mode 100644 google/cloud/iap/v1/BUILD.bazel create mode 100644 google/cloud/iap/v1/iap_grpc_service_config.json create mode 100644 google/cloud/iap/v1/iap_v1.yaml create mode 100644 google/cloud/iap/v1/service.proto create mode 100644 google/cloud/iap/v1beta1/BUILD.bazel create mode 100644 google/cloud/iap/v1beta1/iap_grpc_service_config.json create mode 100644 google/cloud/iap/v1beta1/iap_v1beta1.yaml create mode 100644 google/cloud/iap/v1beta1/service.proto create mode 100644 google/cloud/identitytoolkit/v2/BUILD.bazel create mode 100644 google/cloud/identitytoolkit/v2/account_management_service.proto create mode 100644 google/cloud/identitytoolkit/v2/authentication_service.proto create mode 100644 google/cloud/identitytoolkit/v2/identitytoolkit_grpc_service_config.json create mode 100644 google/cloud/identitytoolkit/v2/identitytoolkit_v2.yaml create mode 100644 google/cloud/identitytoolkit/v2/mfa_info.proto create mode 100644 google/cloud/ids/BUILD.bazel create mode 100644 google/cloud/ids/v1/BUILD.bazel create mode 100644 google/cloud/ids/v1/ids.proto create mode 100644 google/cloud/ids/v1/ids_gapic.yaml create mode 100644 google/cloud/ids/v1/ids_grpc_service_config.json create mode 100644 google/cloud/ids/v1/ids_v1.yaml create mode 100644 google/cloud/integrations/v1alpha/BUILD.bazel create mode 100644 google/cloud/integrations/v1alpha/event_parameter.proto create mode 100644 google/cloud/integrations/v1alpha/json_validation.proto create mode 100644 google/cloud/integrations/v1alpha/log_entries.proto create mode 100644 google/cloud/integrations/v1alpha/product.proto create mode 100644 google/cloud/integrations/v1alpha/task_config.proto create mode 100644 google/cloud/integrations/v1alpha/value_type.proto delete mode 100644 google/cloud/kms/v1/cloudkms_gapic.legacy.yaml delete mode 100644 google/cloud/kms/v1/cloudkms_gapic.yaml create mode 100644 google/cloud/lifesciences/BUILD.bazel create mode 100644 google/cloud/managedidentities/BUILD.bazel create mode 100644 google/cloud/mediatranslation/BUILD.bazel create mode 100644 google/cloud/memcache/BUILD.bazel create mode 100644 google/cloud/metastore/BUILD.bazel create mode 100644 google/cloud/networkconnectivity/BUILD.bazel create mode 100644 google/cloud/networkconnectivity/v1/BUILD.bazel create mode 100644 google/cloud/networkconnectivity/v1/common.proto create mode 100644 google/cloud/networkconnectivity/v1/hub.proto create mode 100644 google/cloud/networkconnectivity/v1/networkconnectivity_v1.yaml create mode 100644 google/cloud/networkconnectivity/v1/networkconnectivity_v1_grpc_service_config.json create mode 100644 google/cloud/networkmanagement/BUILD.bazel create mode 100644 google/cloud/networkmanagement/v1/BUILD.bazel create mode 100644 google/cloud/networkmanagement/v1/connectivity_test.proto create mode 100644 google/cloud/networkmanagement/v1/networkmanagement_grpc_service_config.json create mode 100644 google/cloud/networkmanagement/v1/networkmanagement_v1.yaml create mode 100644 google/cloud/networkmanagement/v1/reachability.proto create mode 100644 google/cloud/networkmanagement/v1/trace.proto create mode 100644 google/cloud/networkmanagement/v1beta1/BUILD.bazel create mode 100644 google/cloud/networkmanagement/v1beta1/connectivity_test.proto create mode 100644 google/cloud/networkmanagement/v1beta1/networkmanagement_grpc_service_config.json create mode 100644 google/cloud/networkmanagement/v1beta1/networkmanagement_v1beta1.yaml create mode 100644 google/cloud/networkmanagement/v1beta1/reachability.proto create mode 100644 google/cloud/networkmanagement/v1beta1/trace.proto create mode 100644 google/cloud/networksecurity/BUILD.bazel create mode 100644 google/cloud/networksecurity/v1beta1/BUILD.bazel create mode 100644 google/cloud/networksecurity/v1beta1/authorization_policy.proto create mode 100644 google/cloud/networksecurity/v1beta1/client_tls_policy.proto create mode 100644 google/cloud/networksecurity/v1beta1/common.proto create mode 100644 google/cloud/networksecurity/v1beta1/network_security.proto create mode 100644 google/cloud/networksecurity/v1beta1/networksecurity_v1beta1.yaml create mode 100644 google/cloud/networksecurity/v1beta1/networksecurity_v1beta1_grpc_service_config.json create mode 100644 google/cloud/networksecurity/v1beta1/server_tls_policy.proto create mode 100644 google/cloud/networksecurity/v1beta1/tls.proto create mode 100644 google/cloud/networkservices/v1/BUILD.bazel create mode 100644 google/cloud/networkservices/v1/common.proto create mode 100644 google/cloud/networkservices/v1/endpoint_policy.proto create mode 100644 google/cloud/networkservices/v1/network_services.proto create mode 100644 google/cloud/networkservices/v1/networkservices_grpc_service_config.json create mode 100644 google/cloud/networkservices/v1/networkservices_v1.yaml create mode 100644 google/cloud/networkservices/v1beta1/BUILD.bazel create mode 100644 google/cloud/networkservices/v1beta1/common.proto create mode 100644 google/cloud/networkservices/v1beta1/endpoint_policy.proto create mode 100644 google/cloud/networkservices/v1beta1/network_services.proto create mode 100644 google/cloud/networkservices/v1beta1/networkservices_v1beta1.yaml create mode 100644 google/cloud/networkservices/v1beta1/networkservices_v1beta1_grpc_service_config.json create mode 100644 google/cloud/notebooks/BUILD.bazel create mode 100644 google/cloud/notebooks/v1/BUILD.bazel create mode 100644 google/cloud/notebooks/v1/environment.proto create mode 100644 google/cloud/notebooks/v1/event.proto create mode 100644 google/cloud/notebooks/v1/execution.proto create mode 100644 google/cloud/notebooks/v1/instance.proto create mode 100644 google/cloud/notebooks/v1/instance_config.proto create mode 100644 google/cloud/notebooks/v1/managed_service.proto create mode 100644 google/cloud/notebooks/v1/notebooks_grpc_service_config.json create mode 100644 google/cloud/notebooks/v1/notebooks_v1.yaml create mode 100644 google/cloud/notebooks/v1/runtime.proto create mode 100644 google/cloud/notebooks/v1/schedule.proto create mode 100644 google/cloud/notebooks/v1/service.proto create mode 100644 google/cloud/orchestration/airflow/service/BUILD.bazel create mode 100644 google/cloud/orchestration/airflow/service/v1/BUILD.bazel create mode 100644 google/cloud/orchestration/airflow/service/v1/composer_grpc_service_config.json create mode 100644 google/cloud/orchestration/airflow/service/v1/composer_v1.yaml create mode 100644 google/cloud/orchestration/airflow/service/v1/environments.proto create mode 100644 google/cloud/orchestration/airflow/service/v1/image_versions.proto create mode 100644 google/cloud/orchestration/airflow/service/v1/operations.proto create mode 100644 google/cloud/orchestration/airflow/service/v1beta1/BUILD.bazel create mode 100644 google/cloud/orchestration/airflow/service/v1beta1/composer_grpc_service_config.json create mode 100644 google/cloud/orchestration/airflow/service/v1beta1/composer_v1beta1.yaml create mode 100644 google/cloud/orchestration/airflow/service/v1beta1/environments.proto create mode 100644 google/cloud/orchestration/airflow/service/v1beta1/image_versions.proto create mode 100644 google/cloud/orchestration/airflow/service/v1beta1/operations.proto create mode 100644 google/cloud/orgpolicy/BUILD.bazel create mode 100644 google/cloud/osconfig/BUILD.bazel create mode 100644 google/cloud/osconfig/v1/os_policy.proto create mode 100644 google/cloud/osconfig/v1/os_policy_assignment_reports.proto create mode 100644 google/cloud/osconfig/v1/os_policy_assignments.proto create mode 100644 google/cloud/osconfig/v1/osconfig_zonal_service.proto create mode 100644 google/cloud/osconfig/v1/vulnerability.proto create mode 100644 google/cloud/phishingprotection/BUILD.bazel create mode 100644 google/cloud/policytroubleshooter/BUILD.bazel create mode 100644 google/cloud/privatecatalog/BUILD.bazel create mode 100644 google/cloud/recommendationengine/BUILD.bazel create mode 100644 google/cloud/recommender/v1beta1/insight_type_config.proto create mode 100644 google/cloud/recommender/v1beta1/recommender_config.proto delete mode 100644 google/cloud/resourcemanager/v3/cloudresourcemanager_gapic.yaml create mode 100644 google/cloud/retail/BUILD.bazel create mode 100644 google/cloud/retail/logging/error_log.proto create mode 100644 google/cloud/retail/v2/completion_service.proto create mode 100644 google/cloud/retail/v2/search_service.proto create mode 100644 google/cloud/retail/v2alpha/completion_service.proto create mode 100644 google/cloud/retail/v2alpha/export_config.proto create mode 100644 google/cloud/retail/v2alpha/search_service.proto create mode 100644 google/cloud/retail/v2beta/completion_service.proto create mode 100644 google/cloud/retail/v2beta/export_config.proto create mode 100644 google/cloud/retail/v2beta/search_service.proto create mode 100644 google/cloud/saasaccelerator/management/logs/v1/notification_service_payload.proto create mode 100644 google/cloud/secretmanager/BUILD.bazel create mode 100644 google/cloud/security/privateca/BUILD.bazel create mode 100644 google/cloud/securitycenter/v1/external_system.proto create mode 100644 google/cloud/securitycenter/v1/indicator.proto create mode 100644 google/cloud/securitycenter/v1/mute_config.proto create mode 100644 google/cloud/securitycenter/v1/vulnerability.proto create mode 100644 google/cloud/servicedirectory/BUILD.bazel create mode 100644 google/cloud/shell/BUILD.bazel create mode 100644 google/cloud/speech/v1/resource.proto create mode 100644 google/cloud/sql/v1/BUILD.bazel create mode 100644 google/cloud/sql/v1/cloud_sql_backup_runs.proto create mode 100644 google/cloud/sql/v1/cloud_sql_connect.proto create mode 100644 google/cloud/sql/v1/cloud_sql_databases.proto create mode 100644 google/cloud/sql/v1/cloud_sql_flags.proto create mode 100644 google/cloud/sql/v1/cloud_sql_instance_names.proto create mode 100644 google/cloud/sql/v1/cloud_sql_instances.proto create mode 100644 google/cloud/sql/v1/cloud_sql_operations.proto create mode 100644 google/cloud/sql/v1/cloud_sql_resources.proto create mode 100644 google/cloud/sql/v1/cloud_sql_ssl_certs.proto create mode 100644 google/cloud/sql/v1/cloud_sql_tiers.proto create mode 100644 google/cloud/sql/v1/cloud_sql_users.proto create mode 100644 google/cloud/sql/v1/sqladmin_grpc_service_config.json create mode 100644 google/cloud/sql/v1/sqladmin_v1.yaml create mode 100644 google/cloud/sql/v1beta4/cloud_sql_connect.proto create mode 100644 google/cloud/tpu/BUILD.bazel create mode 100644 google/cloud/tpu/v2alpha1/BUILD.bazel create mode 100644 google/cloud/tpu/v2alpha1/cloud_tpu.proto create mode 100644 google/cloud/tpu/v2alpha1/tpu.yaml create mode 100644 google/cloud/tpu/v2alpha1/tpu_grpc_service_config.json create mode 100644 google/cloud/translate/BUILD.bazel create mode 100644 google/cloud/video/livestream/logging/v1/BUILD.bazel create mode 100644 google/cloud/video/livestream/logging/v1/logs.proto create mode 100644 google/cloud/video/livestream/v1/BUILD.bazel create mode 100644 google/cloud/video/livestream/v1/livestream_grpc_service_config.json create mode 100644 google/cloud/video/livestream/v1/livestream_v1.yaml create mode 100644 google/cloud/video/livestream/v1/outputs.proto create mode 100644 google/cloud/video/livestream/v1/resources.proto create mode 100644 google/cloud/video/livestream/v1/service.proto create mode 100644 google/cloud/video/transcoder/BUILD.bazel create mode 100644 google/cloud/video/transcoder/v1/BUILD.bazel create mode 100644 google/cloud/video/transcoder/v1/resources.proto create mode 100644 google/cloud/video/transcoder/v1/services.proto create mode 100644 google/cloud/video/transcoder/v1/transcoder_grpc_service_config.json create mode 100644 google/cloud/video/transcoder/v1/transcoder_v1.yaml create mode 100644 google/cloud/vmmigration/BUILD.bazel create mode 100644 google/cloud/vmmigration/v1/BUILD.bazel create mode 100644 google/cloud/vmmigration/v1/vmmigration.proto create mode 100644 google/cloud/vmmigration/v1/vmmigration_v1.yaml create mode 100644 google/cloud/vmmigration/v1/vmmigration_v1_grpc_service_config.json create mode 100644 google/cloud/vpcaccess/BUILD.bazel create mode 100644 google/cloud/webrisk/BUILD.bazel create mode 100644 google/cloud/workflows/BUILD.bazel create mode 100644 google/cloud/workflows/executions/BUILD.bazel create mode 100644 google/cloud/workflows/type/BUILD.bazel create mode 100644 google/cloud/workflows/type/engine_call.proto create mode 100644 google/cloud/workflows/type/executions_system.proto create mode 100644 google/container/v1alpha1/BUILD.bazel create mode 100644 google/dataflow/BUILD.bazel create mode 100644 google/dataflow/v1beta3/BUILD.bazel create mode 100644 google/dataflow/v1beta3/dataflow_grpc_service_config.json create mode 100644 google/dataflow/v1beta3/dataflow_v1beta3.yaml create mode 100644 google/dataflow/v1beta3/environment.proto create mode 100644 google/dataflow/v1beta3/jobs.proto create mode 100644 google/dataflow/v1beta3/messages.proto create mode 100644 google/dataflow/v1beta3/metrics.proto create mode 100644 google/dataflow/v1beta3/snapshots.proto create mode 100644 google/dataflow/v1beta3/streaming.proto create mode 100644 google/dataflow/v1beta3/templates.proto delete mode 100644 google/datastore/admin/v1/datastore_admin_v1.yaml create mode 100644 google/devtools/artifactregistry/BUILD.bazel create mode 100644 google/devtools/artifactregistry/v1/BUILD.bazel create mode 100644 google/devtools/artifactregistry/v1/artifact.proto create mode 100644 google/devtools/artifactregistry/v1/artifactregistry_grpc_service_config.json create mode 100644 google/devtools/artifactregistry/v1/artifactregistry_v1.yaml create mode 100644 google/devtools/artifactregistry/v1/repository.proto create mode 100644 google/devtools/artifactregistry/v1/service.proto create mode 100644 google/devtools/artifactregistry/v1beta2/apt_artifact.proto create mode 100644 google/devtools/artifactregistry/v1beta2/yum_artifact.proto create mode 100644 google/devtools/cloudbuild/BUILD.bazel create mode 100644 google/devtools/testing/v1/BUILD.bazel create mode 100644 google/devtools/testing/v1/application_details.proto create mode 100644 google/devtools/testing/v1/test_environment_discovery.proto create mode 100644 google/devtools/testing/v1/test_execution.proto create mode 100644 google/devtools/testing/v1/testing_grpc_service_config.json create mode 100644 google/devtools/testing/v1/testing_v1.yaml create mode 100644 google/example/showcase/v1/compliance.proto create mode 100644 google/example/showcase/v1/echo.proto create mode 100644 google/example/showcase/v1/sequence.proto create mode 100644 google/example/showcase/v1/showcase_grpc_service_config.json create mode 100644 google/example/showcase/v1/testing.proto create mode 100644 google/example/showcase/v1beta1/compliance.proto create mode 100644 google/example/showcase/v1beta1/echo.proto create mode 100644 google/example/showcase/v1beta1/sequence.proto create mode 100644 google/example/showcase/v1beta1/showcase_grpc_service_config.json create mode 100644 google/example/showcase/v1beta1/testing.proto create mode 100644 google/example/showcase/v1beta2/compliance.proto create mode 100644 google/example/showcase/v1beta2/echo.proto create mode 100644 google/example/showcase/v1beta2/sequence.proto create mode 100644 google/example/showcase/v1beta2/showcase_grpc_service_config.json create mode 100644 google/example/showcase/v1beta2/testing.proto create mode 100644 google/example/showcase/v1beta3/compliance.proto create mode 100644 google/example/showcase/v1beta3/echo.proto create mode 100644 google/example/showcase/v1beta3/sequence.proto create mode 100644 google/example/showcase/v1beta3/showcase_grpc_service_config.json create mode 100644 google/example/showcase/v1beta3/testing.proto create mode 100644 google/firestore/admin/v1/database.proto create mode 100644 google/identity/accesscontextmanager/BUILD.bazel create mode 100644 google/identity/accesscontextmanager/v1/access_context_manager.proto create mode 100644 google/identity/accesscontextmanager/v1/accesscontextmanager_grpc_service_config.json create mode 100644 google/identity/accesscontextmanager/v1/accesscontextmanager_v1.yaml create mode 100644 google/identity/accesscontextmanager/v1/gcp_user_access_binding.proto create mode 100644 google/maps/fleetengine/delivery/v1/BUILD.bazel create mode 100644 google/maps/fleetengine/delivery/v1/delivery_api.proto create mode 100644 google/maps/fleetengine/delivery/v1/delivery_vehicles.proto create mode 100644 google/maps/fleetengine/delivery/v1/fleetengine.yaml create mode 100644 google/maps/fleetengine/delivery/v1/tasks.proto create mode 100644 google/maps/fleetengine/v1/BUILD.bazel create mode 100644 google/maps/fleetengine/v1/fleetengine.proto create mode 100644 google/maps/fleetengine/v1/fleetengine.yaml create mode 100644 google/maps/fleetengine/v1/fleetengine_grpc_service_config.json create mode 100644 google/maps/fleetengine/v1/header.proto create mode 100644 google/maps/fleetengine/v1/traffic.proto create mode 100644 google/maps/fleetengine/v1/trip_api.proto create mode 100644 google/maps/fleetengine/v1/trips.proto create mode 100644 google/maps/fleetengine/v1/vehicle_api.proto create mode 100644 google/maps/fleetengine/v1/vehicles.proto create mode 100644 google/monitoring/dashboard/BUILD.bazel create mode 100644 google/monitoring/dashboard/v1/alertchart.proto create mode 100644 google/monitoring/metricsscope/BUILD.bazel create mode 100644 google/monitoring/metricsscope/v1/BUILD.bazel create mode 100644 google/monitoring/metricsscope/v1/metrics_scope.proto create mode 100644 google/monitoring/metricsscope/v1/metrics_scopes.proto create mode 100644 google/monitoring/metricsscope/v1/metricsscopes_grpc_service_config.json create mode 100644 google/monitoring/metricsscope/v1/monitoring.yaml create mode 100644 google/monitoring/metricsscope/v1/monitoring_gapic.yaml create mode 100644 google/networking/trafficdirector/type/BUILD.bazel create mode 100644 google/networking/trafficdirector/type/traffic_director_log_entry.proto create mode 100644 google/storage/v2/BUILD.bazel create mode 100644 google/storage/v2/storage.proto create mode 100644 google/storage/v2/storage_grpc_service_config.json create mode 100644 google/storage/v2/storage_v2.yaml create mode 100644 google/storagetransfer/BUILD.bazel create mode 100644 google/storagetransfer/v1/BUILD.bazel create mode 100644 google/storagetransfer/v1/storagetransfer_grpc_service_config.json create mode 100644 google/storagetransfer/v1/storagetransfer_v1.yaml create mode 100644 google/streetview/publish/v1/streetviewpublish.yaml create mode 100644 grafeas/v1/compliance.proto create mode 100644 grafeas/v1/dsse_attestation.proto create mode 100644 grafeas/v1/intoto_provenance.proto create mode 100644 grafeas/v1/intoto_statement.proto create mode 100644 grafeas/v1/severity.proto create mode 100644 grafeas/v1/slsa_provenance.proto delete mode 100644 storage/clouddms/logging/v1/BUILD.bazel delete mode 100644 storage/clouddms/logging/v1/clouddms_stackdriver_logs.proto diff --git a/.github/mistaken-pull-closer.yml b/.github/mistaken-pull-closer.yml index 832ce1060..586371263 100644 --- a/.github/mistaken-pull-closer.yml +++ b/.github/mistaken-pull-closer.yml @@ -3,7 +3,8 @@ # by probot. # Default behavior: Close all PRs. filters: - - true + # Don't close PRs in the pubsub_dev branch. + - '@.pull_request.base.ref != "pubsub_dev"' # The message to post to the closed PR. commentBody: | diff --git a/.github/workflows/generate_api_index.yaml b/.github/workflows/generate_api_index.yaml index fd4f9e7ef..24b3fc228 100644 --- a/.github/workflows/generate_api_index.yaml +++ b/.github/workflows/generate_api_index.yaml @@ -11,6 +11,8 @@ jobs: uses: actions/setup-dotnet@v1.8.0 - name: Checkout googleapis (this repository) uses: actions/checkout@v2 + with: + path: googleapis - name: Checkout index generator uses: actions/checkout@v2 with: @@ -19,10 +21,11 @@ jobs: - name: Generate API index run: | gen/scripts/generate-schema.sh - gen/scripts/generate-index.sh $PWD - cp gen/tmp/api-index-v1.json $PWD + gen/scripts/generate-index.sh $PWD/googleapis + cp gen/tmp/api-index-v1.json $PWD/googleapis - name: Commit API index run: | + cd googleapis [[ ! $(git diff --exit-code api-index-v1.json) ]] && echo "Nothing to commit." && exit 0 git config user.name "Google APIs" git add api-index-v1.json diff --git a/.kokoro/continuous.cfg b/.kokoro/continuous.cfg index 43fd5fd7d..9b90ef2c7 100644 --- a/.kokoro/continuous.cfg +++ b/.kokoro/continuous.cfg @@ -1,3 +1,5 @@ # Format: //devtools/kokoro/config/proto/build.proto +# This configuration file defines Kokoro job for GitHub presubmit, +# the build_file will be looked up in https://github.com/googleapis/googleapis/ build_file: "googleapis/.kokoro/start.sh" diff --git a/.kokoro/presubmit.cfg b/.kokoro/presubmit.cfg index 43fd5fd7d..9b90ef2c7 100644 --- a/.kokoro/presubmit.cfg +++ b/.kokoro/presubmit.cfg @@ -1,3 +1,5 @@ # Format: //devtools/kokoro/config/proto/build.proto +# This configuration file defines Kokoro job for GitHub presubmit, +# the build_file will be looked up in https://github.com/googleapis/googleapis/ build_file: "googleapis/.kokoro/start.sh" diff --git a/README.md b/README.md index 47056850c..11209e3c5 100644 --- a/README.md +++ b/README.md @@ -41,24 +41,6 @@ bazel build //google/example/library/v1:google-cloud-library-v1-java Bazel packages exist in all the libraries for Java, Go, Python, Ruby, Node.js, PHP and C#. -### Artman - -API client libraries can be built directly from files in this repo using -[Artman](https://github.com/googleapis/artman). The latest generation status can -be tracked [here](https://circleci.com/gh/googleapis/googleapis) which currently -has status [![CircleCI](https://circleci.com/gh/googleapis/googleapis.svg?style=svg)](https://circleci.com/gh/googleapis/googleapis). - -To build the Java package for one library: - -``` -artman --config google/example/library/artman_library_example_v1.yaml generate java_gapic -``` - -Artman can only build one library in one language at a time. - -For more details on all Google APIs and developer tools, see the [Google -Developers](https://developers.google.com/products/) site. - ## Overview Google APIs are typically deployed as API services that are hosted diff --git a/WORKSPACE b/WORKSPACE index 674ed36e4..5a9478571 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -41,15 +41,15 @@ http_archive( # version of the library will be selected as a transitive dependency of gRPC. http_archive( name = "rules_python", - strip_prefix = "rules_python-0.1.0", - url = "https://github.com/bazelbuild/rules_python/archive/0.1.0.tar.gz", + strip_prefix = "rules_python-0.5.0", + url = "https://github.com/bazelbuild/rules_python/archive/0.5.0.tar.gz", ) http_archive( name = "com_google_protobuf", - sha256 = "b10bf4e2d1a7586f54e64a5d9e7837e5188fc75ae69e36f215eb01def4f9721b", - strip_prefix = "protobuf-3.15.3", - urls = ["https://github.com/protocolbuffers/protobuf/archive/v3.15.3.tar.gz"], + sha256 = "9111bf0b542b631165fadbd80aa60e7fb25b25311c532139ed2089d76ddf6dd7", + strip_prefix = "protobuf-3.18.1", + urls = ["https://github.com/protocolbuffers/protobuf/archive/v3.18.1.tar.gz"], ) load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps") @@ -72,14 +72,6 @@ rules_proto_dependencies() rules_proto_toolchains() -# Note gapic-generator contains java-specific and common code, that is why it is imported in common -# section -http_archive( - name = "com_google_api_codegen", - strip_prefix = "gapic-generator-2.11.0", - urls = ["https://github.com/googleapis/gapic-generator/archive/v2.11.0.zip"], -) - # rules_go (support Golang under bazel) # This is not in the Go section because we override the same, older dependency brought in by gRPC. # TODO(ndietz): move this back to the Go section if gRPC is updated per https://github.com/grpc/grpc/issues/22172 @@ -100,10 +92,10 @@ http_archive( # bazel-gazelle (support Golang under bazel) http_archive( name = "bazel_gazelle", - sha256 = "b85f48fa105c4403326e9525ad2b2cc437babaa6e15a3fc0b1dbab0ab064bc7c", + sha256 = "62ca106be173579c0a167deb23358fdfe71ffa1e4cfdddf5582af26520f1c66f", urls = [ - "https://storage.googleapis.com/bazel-mirror/github.com/bazelbuild/bazel-gazelle/releases/download/v0.22.2/bazel-gazelle-v0.22.2.tar.gz", - "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.22.2/bazel-gazelle-v0.22.2.tar.gz", + "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.23.0/bazel-gazelle-v0.23.0.tar.gz", + "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.23.0/bazel-gazelle-v0.23.0.tar.gz", ], ) @@ -118,8 +110,8 @@ go_repository( name = "org_golang_google_genproto", build_file_proto_mode = "disable_global", importpath = "google.golang.org/genproto", - sum = "h1:hcskBH5qZCOa7WpTUFUFvoebnSFZBYpjykLtjIp9DVk=", - version = "v0.0.0-20210303154014-9728d6b83eeb", + sum = "h1:4xoALQmXxqVdDdLimpPyPeDdsJzo+nFTJw9euAMpqgM=", + version = "v0.0.0-20210729151513-df9385d47c1b", ) go_rules_dependencies() @@ -128,10 +120,13 @@ go_register_toolchains() gazelle_dependencies() -_rules_gapic_version = "0.5.3" +_rules_gapic_version = "0.11.1" + +_rules_gapic_sha256 = "edf4fa526cd8d9ae0d4aab3dc608a985ef75f631fe14f0c109a793eab2b5c31d" http_archive( name = "rules_gapic", + sha256 = _rules_gapic_sha256, strip_prefix = "rules_gapic-%s" % _rules_gapic_version, urls = ["https://github.com/googleapis/rules_gapic/archive/v%s.tar.gz" % _rules_gapic_version], ) @@ -152,10 +147,15 @@ rules_gapic_repositories() # for most of the other languages as well, so they can be considered as the core cross-language # dependencies. +_grpc_version = "1.42.0" + +_grpc_sha256 = "9f387689b7fdf6c003fd90ef55853107f89a2121792146770df5486f0199f400" + http_archive( name = "com_github_grpc_grpc", - strip_prefix = "grpc-1.36.4", - urls = ["https://github.com/grpc/grpc/archive/v1.36.4.zip"], + sha256 = _grpc_sha256, + strip_prefix = "grpc-%s" % _grpc_version, + urls = ["https://github.com/grpc/grpc/archive/v%s.zip" % _grpc_version], ) load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps") @@ -177,7 +177,7 @@ apple_support_dependencies() ############################################################################## # Java ############################################################################## -_gax_java_version = "1.63.3" +_gax_java_version = "2.10.0" http_archive( name = "com_google_api_gax_java", @@ -202,7 +202,7 @@ grpc_java_repositories() # Java microgenerator. # Must go AFTER java-gax, since both java gax and gapic-generator are written in java and may conflict. -_gapic_generator_java_version = "1.0.9" +_gapic_generator_java_version = "2.5.0" http_archive( name = "gapic_generator_java", @@ -221,65 +221,23 @@ load("@gapic_generator_java//:repositories.bzl", "gapic_generator_java_repositor gapic_generator_java_repositories() -# gapic-generator transitive -# (goes AFTER java-gax, since both java gax and gapic-generator are written in java and may conflict) -load("@com_google_api_codegen//:repository_rules.bzl", "com_google_api_codegen_properties") - -com_google_api_codegen_properties( - name = "com_google_api_codegen_properties", - file = "@com_google_api_codegen//:dependencies.properties", -) - -load("@com_google_api_codegen//:repositories.bzl", "com_google_api_codegen_repositories") - -http_archive( - name = "com_google_protoc_java_resource_names_plugin", - strip_prefix = "protoc-java-resource-names-plugin-8d749cb5b7aa2734656e1ad36ceda92894f33153", - urls = ["https://github.com/googleapis/protoc-java-resource-names-plugin/archive/8d749cb5b7aa2734656e1ad36ceda92894f33153.zip"], -) - -com_google_api_codegen_repositories() - -# protoc-java-resource-names-plugin (loaded in com_google_api_codegen_repositories()) -# (required to support resource names feature in gapic generator) -load( - "@com_google_protoc_java_resource_names_plugin//:repositories.bzl", - "com_google_protoc_java_resource_names_plugin_repositories", -) - -com_google_protoc_java_resource_names_plugin_repositories() - ############################################################################## # Python ############################################################################## -load("@com_google_api_codegen//rules_gapic/python:py_gapic_repositories.bzl", "py_gapic_repositories") +load("@rules_gapic//python:py_gapic_repositories.bzl", "py_gapic_repositories") py_gapic_repositories() -http_archive( - name = "protoc_docs_plugin", - strip_prefix = "protoc-docs-plugin-2bdf14e394bbaa44b81286b1a19c5f229b51c667", - urls = ["https://github.com/googleapis/protoc-docs-plugin/archive/2bdf14e394bbaa44b81286b1a19c5f229b51c667.zip"], -) - -load( - "@protoc_docs_plugin//:repositories.bzl", - "protoc_docs_plugin_register_toolchains", - "protoc_docs_plugin_repositories", -) - -protoc_docs_plugin_repositories() - -protoc_docs_plugin_register_toolchains() - load("@rules_python//python:pip.bzl", "pip_repositories") pip_repositories() +_gapic_generator_python_version = "0.60.0" + http_archive( name = "gapic_generator_python", - strip_prefix = "gapic-generator-python-0.46.3", - urls = ["https://github.com/googleapis/gapic-generator-python/archive/v0.46.3.zip"], + strip_prefix = "gapic-generator-python-%s" % _gapic_generator_python_version, + urls = ["https://github.com/googleapis/gapic-generator-python/archive/v%s.zip" % _gapic_generator_python_version], ) load( @@ -296,7 +254,7 @@ gapic_generator_register_toolchains() # Go ############################################################################## -_gapic_generator_go_version = "0.20.0" +_gapic_generator_go_version = "0.24.0" http_archive( name = "com_googleapis_gapic_generator_go", @@ -308,17 +266,13 @@ load("@com_googleapis_gapic_generator_go//:repositories.bzl", "com_googleapis_ga com_googleapis_gapic_generator_go_repositories() -load("@com_googleapis_gapic_generator_go//rules_go_gapic:go_gapic_repositories.bzl", "go_gapic_repositories") - -go_gapic_repositories() - ############################################################################## # TypeScript ############################################################################## -_gapic_generator_typescript_version = "1.4.0" +_gapic_generator_typescript_version = "2.11.0" -_gapic_generator_typescript_sha256 = "34718494b0696706ccfa46c8ed360f1999d7e33d5121aa86bb302af402b72d46" +_gapic_generator_typescript_sha256 = "afb5d00a95f1fffd4c9f7fa474ff9e179b4b7a133384913a2407720537ac10a0" ### TypeScript generator http_archive( @@ -348,19 +302,8 @@ yarn_install( # PHP ############################################################################## -load("@com_google_api_codegen//rules_gapic/php:php_gapic_repositories.bzl", "php", "php_gapic_repositories") - -php( - name = "php", - prebuilt_phps = ["@com_google_api_codegen//rules_gapic/php:resources/php-7.1.30_linux_x86_64.tar.gz"], - strip_prefix = "php-7.1.30", - urls = ["https://www.php.net/distributions/php-7.1.30.tar.gz"], -) - -php_gapic_repositories() - -# PHP micro-generator (beta) -_gapic_generator_php_version = "0.1.6" +# PHP micro-generator +_gapic_generator_php_version = "1.4.0" http_archive( name = "gapic_generator_php", @@ -368,6 +311,17 @@ http_archive( urls = ["https://github.com/googleapis/gapic-generator-php/archive/v%s.zip" % _gapic_generator_php_version], ) +load("@rules_gapic//php:php_gapic_repositories.bzl", "php", "php_gapic_repositories") + +php( + name = "php", + prebuilt_phps = ["@gapic_generator_php//rules_php_gapic:resources/php-7.4.15_linux_x86_64.tar.gz"], + strip_prefix = "php-7.4.15", + urls = ["https://www.php.net/distributions/php-7.4.15.tar.gz"], +) + +php_gapic_repositories() + load("@gapic_generator_php//:repositories.bzl", "gapic_generator_php_repositories") gapic_generator_php_repositories() @@ -389,9 +343,9 @@ http_archive( urls = ["https://github.com/googleapis/gax-dotnet/archive/refs/tags/%s.tar.gz" % _gax_dotnet_version], ) -_gapic_generator_csharp_version = "1.3.6" +_gapic_generator_csharp_version = "1.3.16" -_gapic_generator_csharp_sha256 = "6340309dc6b86bfd0dc2c9fca41cf991c7163eda2f48a7062fe4da5bd62c99d6" +_gapic_generator_csharp_sha256 = "f14d706f013f253d52eddc40df549c128db7d9390980a3f422c523fd9a6c4f35" http_archive( name = "gapic_generator_csharp", @@ -407,17 +361,41 @@ gapic_generator_csharp_repositories() ############################################################################## # Ruby ############################################################################## -_gapic_generator_ruby_version = "e10d40afa96a28036da03bb9b0af17d702715886" -_gapic_generator_ruby_sha256 = "a560f2f0d12411b2b4f76ba087f6fcf4d517ef1e9abec1b5a517dfe348e67f3b" +_gapic_generator_ruby_version = "v0.10.5" + +_gapic_generator_ruby_sha256 = "c5f013d82d17a5094cc656004677656fa7efcafd712d6dee90819f06497b5524" http_archive( name = "gapic_generator_ruby", sha256 = _gapic_generator_ruby_sha256, - strip_prefix = "gapic-generator-ruby-%s" % _gapic_generator_ruby_version, - urls = ["https://github.com/googleapis/gapic-generator-ruby/archive/%s.tar.gz" % _gapic_generator_ruby_version], + strip_prefix = "gapic-generator-ruby-gapic-generator-%s" % _gapic_generator_ruby_version, + urls = ["https://github.com/googleapis/gapic-generator-ruby/archive/refs/tags/gapic-generator/%s.tar.gz" % _gapic_generator_ruby_version], ) load("@gapic_generator_ruby//rules_ruby_gapic:repositories.bzl", "gapic_generator_ruby_repositories") gapic_generator_ruby_repositories() + +############################################################################## +# Discovery +############################################################################## + +_disco_to_proto3_converter_version = "ce8d8732120cdfb5bf4847c3238b5be8acde87e3" + +http_archive( + name = "com_google_disco_to_proto3_converter", + strip_prefix = "disco-to-proto3-converter-%s" % _disco_to_proto3_converter_version, + urls = ["https://github.com/googleapis/disco-to-proto3-converter/archive/%s.zip" % _disco_to_proto3_converter_version], +) + +load("@com_google_disco_to_proto3_converter//:repository_rules.bzl", "com_google_disco_to_proto3_converter_properties") + +com_google_disco_to_proto3_converter_properties( + name = "com_google_disco_to_proto3_converter_properties", + file = "@com_google_disco_to_proto3_converter//:pom.xml", +) + +load("@com_google_disco_to_proto3_converter//:repositories.bzl", "com_google_disco_to_proto3_converter_repositories") + +com_google_disco_to_proto3_converter_repositories() diff --git a/api-index-v1.json b/api-index-v1.json index bb585b2a4..db96195fa 100644 --- a/api-index-v1.json +++ b/api-index-v1.json @@ -23,13 +23,13 @@ "google/type" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.actions.sdk.v2": 18, - "com.google.actions.sdk.v2.interactionmodel": 8, - "com.google.actions.sdk.v2.interactionmodel.prompt": 14, - "com.google.actions.sdk.v2.interactionmodel.type": 6, - "com.google.actions.sdk.v2.conversation": 14 + "google.golang.org/genproto/googleapis/actions/sdk/v2/conversation;conversation": 14, + "google.golang.org/genproto/googleapis/actions/sdk/v2/interactionmodel/prompt;prompt": 14, + "google.golang.org/genproto/googleapis/actions/sdk/v2/interactionmodel/type": 6, + "google.golang.org/genproto/googleapis/actions/sdk/v2/interactionmodel;interactionmodel": 8, + "google.golang.org/genproto/googleapis/actions/sdk/v2;sdk": 18 } }, "java_multiple_files": { @@ -37,13 +37,13 @@ "true": 60 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/actions/sdk/v2;sdk": 18, - "google.golang.org/genproto/googleapis/actions/sdk/v2/interactionmodel;interactionmodel": 8, - "google.golang.org/genproto/googleapis/actions/sdk/v2/interactionmodel/prompt;prompt": 14, - "google.golang.org/genproto/googleapis/actions/sdk/v2/interactionmodel/type": 6, - "google.golang.org/genproto/googleapis/actions/sdk/v2/conversation;conversation": 14 + "com.google.actions.sdk.v2": 18, + "com.google.actions.sdk.v2.conversation": 14, + "com.google.actions.sdk.v2.interactionmodel": 8, + "com.google.actions.sdk.v2.interactionmodel.prompt": 14, + "com.google.actions.sdk.v2.interactionmodel.type": 6 } } }, @@ -203,108 +203,109 @@ } ] } - ] + ], + "configFile": "actions_v2.yaml" }, { - "id": "google.ads.googleads.v4", - "directory": "google/ads/googleads/v4", - "version": "v4", - "majorVersion": "v4", + "id": "google.ads.googleads.v7", + "directory": "google/ads/googleads/v7", + "version": "v7", + "majorVersion": "v7", "hostName": "googleads.googleapis.com", "title": "Google Ads API", "description": "Manage your Google Ads accounts, campaigns, and reports with this API.", "importDirectories": [ - "google/ads/googleads/v4/common", - "google/ads/googleads/v4/enums", - "google/ads/googleads/v4/errors", - "google/ads/googleads/v4/resources", - "google/ads/googleads/v4/services", + "google/ads/googleads/v7/common", + "google/ads/googleads/v7/enums", + "google/ads/googleads/v7/errors", + "google/ads/googleads/v7/resources", + "google/ads/googleads/v7/services", "google/api", "google/longrunning", "google/protobuf", "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.ads.googleads.v4.errors": 114, - "com.google.ads.googleads.v4.enums": 222, - "com.google.ads.googleads.v4.common": 28, - "com.google.ads.googleads.v4.resources": 106, - "com.google.ads.googleads.v4.services": 112 + "Google.Ads.GoogleAds.V7.Common": 30, + "Google.Ads.GoogleAds.V7.Enums": 249, + "Google.Ads.GoogleAds.V7.Errors": 120, + "Google.Ads.GoogleAds.V7.Resources": 122, + "Google.Ads.GoogleAds.V7.Services": 126 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 582 + "google.golang.org/genproto/googleapis/ads/googleads/v7/common;common": 30, + "google.golang.org/genproto/googleapis/ads/googleads/v7/enums;enums": 249, + "google.golang.org/genproto/googleapis/ads/googleads/v7/errors;errors": 120, + "google.golang.org/genproto/googleapis/ads/googleads/v7/resources;resources": 122, + "google.golang.org/genproto/googleapis/ads/googleads/v7/services;services": 126 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors": 114, - "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums": 222, - "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common": 28, - "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources": 106, - "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services": 112 + "true": 647 } }, - "objc_class_prefix": { + "java_package": { "valueCounts": { - "GAA": 582 + "com.google.ads.googleads.v7.common": 30, + "com.google.ads.googleads.v7.enums": 249, + "com.google.ads.googleads.v7.errors": 120, + "com.google.ads.googleads.v7.resources": 122, + "com.google.ads.googleads.v7.services": 126 } }, - "csharp_namespace": { + "objc_class_prefix": { "valueCounts": { - "Google.Ads.GoogleAds.V4.Errors": 114, - "Google.Ads.GoogleAds.V4.Enums": 222, - "Google.Ads.GoogleAds.V4.Common": 28, - "Google.Ads.GoogleAds.V4.Resources": 106, - "Google.Ads.GoogleAds.V4.Services": 112 + "GAA": 647 } }, "php_namespace": { "valueCounts": { - "Google\\Ads\\GoogleAds\\V4\\Errors": 114, - "Google\\Ads\\GoogleAds\\V4\\Enums": 222, - "Google\\Ads\\GoogleAds\\V4\\Common": 28, - "Google\\Ads\\GoogleAds\\V4\\Resources": 106, - "Google\\Ads\\GoogleAds\\V4\\Services": 112 + "Google\\Ads\\GoogleAds\\V7\\Common": 30, + "Google\\Ads\\GoogleAds\\V7\\Enums": 249, + "Google\\Ads\\GoogleAds\\V7\\Errors": 120, + "Google\\Ads\\GoogleAds\\V7\\Resources": 122, + "Google\\Ads\\GoogleAds\\V7\\Services": 126 } }, "ruby_package": { "valueCounts": { - "Google::Ads::GoogleAds::V4::Errors": 114, - "Google::Ads::GoogleAds::V4::Enums": 222, - "Google::Ads::GoogleAds::V4::Common": 28, - "Google::Ads::GoogleAds::V4::Resources": 106, - "Google::Ads::GoogleAds::V4::Services": 112 + "Google::Ads::GoogleAds::V7::Common": 30, + "Google::Ads::GoogleAds::V7::Enums": 249, + "Google::Ads::GoogleAds::V7::Errors": 120, + "Google::Ads::GoogleAds::V7::Resources": 122, + "Google::Ads::GoogleAds::V7::Services": 126 } } }, "services": [ { "shortName": "AccountBudgetProposalService", - "fullName": "google.ads.googleads.v4.services.AccountBudgetProposalService", + "fullName": "google.ads.googleads.v7.services.AccountBudgetProposalService", "methods": [ { "shortName": "GetAccountBudgetProposal", - "fullName": "google.ads.googleads.v4.services.AccountBudgetProposalService.GetAccountBudgetProposal", + "fullName": "google.ads.googleads.v7.services.AccountBudgetProposalService.GetAccountBudgetProposal", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/accountBudgetProposals/*}" + "path": "/v7/{resource_name=customers/*/accountBudgetProposals/*}" } ] }, { "shortName": "MutateAccountBudgetProposal", - "fullName": "google.ads.googleads.v4.services.AccountBudgetProposalService.MutateAccountBudgetProposal", + "fullName": "google.ads.googleads.v7.services.AccountBudgetProposalService.MutateAccountBudgetProposal", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/accountBudgetProposals:mutate" + "path": "/v7/customers/{customer_id=*}/accountBudgetProposals:mutate" } ] } @@ -312,16 +313,16 @@ }, { "shortName": "AccountBudgetService", - "fullName": "google.ads.googleads.v4.services.AccountBudgetService", + "fullName": "google.ads.googleads.v7.services.AccountBudgetService", "methods": [ { "shortName": "GetAccountBudget", - "fullName": "google.ads.googleads.v4.services.AccountBudgetService.GetAccountBudget", + "fullName": "google.ads.googleads.v7.services.AccountBudgetService.GetAccountBudget", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/accountBudgets/*}" + "path": "/v7/{resource_name=customers/*/accountBudgets/*}" } ] } @@ -329,27 +330,38 @@ }, { "shortName": "AccountLinkService", - "fullName": "google.ads.googleads.v4.services.AccountLinkService", + "fullName": "google.ads.googleads.v7.services.AccountLinkService", "methods": [ + { + "shortName": "CreateAccountLink", + "fullName": "google.ads.googleads.v7.services.AccountLinkService.CreateAccountLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}/accountLinks:create" + } + ] + }, { "shortName": "GetAccountLink", - "fullName": "google.ads.googleads.v4.services.AccountLinkService.GetAccountLink", + "fullName": "google.ads.googleads.v7.services.AccountLinkService.GetAccountLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/accountLinks/*}" + "path": "/v7/{resource_name=customers/*/accountLinks/*}" } ] }, { "shortName": "MutateAccountLink", - "fullName": "google.ads.googleads.v4.services.AccountLinkService.MutateAccountLink", + "fullName": "google.ads.googleads.v7.services.AccountLinkService.MutateAccountLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/accountLinks:mutate" + "path": "/v7/customers/{customer_id=*}/accountLinks:mutate" } ] } @@ -357,16 +369,16 @@ }, { "shortName": "AdGroupAdAssetViewService", - "fullName": "google.ads.googleads.v4.services.AdGroupAdAssetViewService", + "fullName": "google.ads.googleads.v7.services.AdGroupAdAssetViewService", "methods": [ { "shortName": "GetAdGroupAdAssetView", - "fullName": "google.ads.googleads.v4.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView", + "fullName": "google.ads.googleads.v7.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupAdAssetViews/*}" + "path": "/v7/{resource_name=customers/*/adGroupAdAssetViews/*}" } ] } @@ -374,27 +386,27 @@ }, { "shortName": "AdGroupAdLabelService", - "fullName": "google.ads.googleads.v4.services.AdGroupAdLabelService", + "fullName": "google.ads.googleads.v7.services.AdGroupAdLabelService", "methods": [ { "shortName": "GetAdGroupAdLabel", - "fullName": "google.ads.googleads.v4.services.AdGroupAdLabelService.GetAdGroupAdLabel", + "fullName": "google.ads.googleads.v7.services.AdGroupAdLabelService.GetAdGroupAdLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupAdLabels/*}" + "path": "/v7/{resource_name=customers/*/adGroupAdLabels/*}" } ] }, { "shortName": "MutateAdGroupAdLabels", - "fullName": "google.ads.googleads.v4.services.AdGroupAdLabelService.MutateAdGroupAdLabels", + "fullName": "google.ads.googleads.v7.services.AdGroupAdLabelService.MutateAdGroupAdLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/adGroupAdLabels:mutate" + "path": "/v7/customers/{customer_id=*}/adGroupAdLabels:mutate" } ] } @@ -402,27 +414,55 @@ }, { "shortName": "AdGroupAdService", - "fullName": "google.ads.googleads.v4.services.AdGroupAdService", + "fullName": "google.ads.googleads.v7.services.AdGroupAdService", "methods": [ { "shortName": "GetAdGroupAd", - "fullName": "google.ads.googleads.v4.services.AdGroupAdService.GetAdGroupAd", + "fullName": "google.ads.googleads.v7.services.AdGroupAdService.GetAdGroupAd", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupAds/*}" + "path": "/v7/{resource_name=customers/*/adGroupAds/*}" } ] }, { "shortName": "MutateAdGroupAds", - "fullName": "google.ads.googleads.v4.services.AdGroupAdService.MutateAdGroupAds", + "fullName": "google.ads.googleads.v7.services.AdGroupAdService.MutateAdGroupAds", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}/adGroupAds:mutate" + } + ] + } + ] + }, + { + "shortName": "AdGroupAssetService", + "fullName": "google.ads.googleads.v7.services.AdGroupAssetService", + "methods": [ + { + "shortName": "GetAdGroupAsset", + "fullName": "google.ads.googleads.v7.services.AdGroupAssetService.GetAdGroupAsset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/adGroupAssets/*}" + } + ] + }, + { + "shortName": "MutateAdGroupAssets", + "fullName": "google.ads.googleads.v7.services.AdGroupAssetService.MutateAdGroupAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/adGroupAds:mutate" + "path": "/v7/customers/{customer_id=*}/adGroupAssets:mutate" } ] } @@ -430,16 +470,16 @@ }, { "shortName": "AdGroupAudienceViewService", - "fullName": "google.ads.googleads.v4.services.AdGroupAudienceViewService", + "fullName": "google.ads.googleads.v7.services.AdGroupAudienceViewService", "methods": [ { "shortName": "GetAdGroupAudienceView", - "fullName": "google.ads.googleads.v4.services.AdGroupAudienceViewService.GetAdGroupAudienceView", + "fullName": "google.ads.googleads.v7.services.AdGroupAudienceViewService.GetAdGroupAudienceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupAudienceViews/*}" + "path": "/v7/{resource_name=customers/*/adGroupAudienceViews/*}" } ] } @@ -447,27 +487,27 @@ }, { "shortName": "AdGroupBidModifierService", - "fullName": "google.ads.googleads.v4.services.AdGroupBidModifierService", + "fullName": "google.ads.googleads.v7.services.AdGroupBidModifierService", "methods": [ { "shortName": "GetAdGroupBidModifier", - "fullName": "google.ads.googleads.v4.services.AdGroupBidModifierService.GetAdGroupBidModifier", + "fullName": "google.ads.googleads.v7.services.AdGroupBidModifierService.GetAdGroupBidModifier", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupBidModifiers/*}" + "path": "/v7/{resource_name=customers/*/adGroupBidModifiers/*}" } ] }, { "shortName": "MutateAdGroupBidModifiers", - "fullName": "google.ads.googleads.v4.services.AdGroupBidModifierService.MutateAdGroupBidModifiers", + "fullName": "google.ads.googleads.v7.services.AdGroupBidModifierService.MutateAdGroupBidModifiers", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/adGroupBidModifiers:mutate" + "path": "/v7/customers/{customer_id=*}/adGroupBidModifiers:mutate" } ] } @@ -475,27 +515,27 @@ }, { "shortName": "AdGroupCriterionLabelService", - "fullName": "google.ads.googleads.v4.services.AdGroupCriterionLabelService", + "fullName": "google.ads.googleads.v7.services.AdGroupCriterionLabelService", "methods": [ { "shortName": "GetAdGroupCriterionLabel", - "fullName": "google.ads.googleads.v4.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel", + "fullName": "google.ads.googleads.v7.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupCriterionLabels/*}" + "path": "/v7/{resource_name=customers/*/adGroupCriterionLabels/*}" } ] }, { "shortName": "MutateAdGroupCriterionLabels", - "fullName": "google.ads.googleads.v4.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels", + "fullName": "google.ads.googleads.v7.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/adGroupCriterionLabels:mutate" + "path": "/v7/customers/{customer_id=*}/adGroupCriterionLabels:mutate" } ] } @@ -503,27 +543,27 @@ }, { "shortName": "AdGroupCriterionService", - "fullName": "google.ads.googleads.v4.services.AdGroupCriterionService", + "fullName": "google.ads.googleads.v7.services.AdGroupCriterionService", "methods": [ { "shortName": "GetAdGroupCriterion", - "fullName": "google.ads.googleads.v4.services.AdGroupCriterionService.GetAdGroupCriterion", + "fullName": "google.ads.googleads.v7.services.AdGroupCriterionService.GetAdGroupCriterion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupCriteria/*}" + "path": "/v7/{resource_name=customers/*/adGroupCriteria/*}" } ] }, { "shortName": "MutateAdGroupCriteria", - "fullName": "google.ads.googleads.v4.services.AdGroupCriterionService.MutateAdGroupCriteria", + "fullName": "google.ads.googleads.v7.services.AdGroupCriterionService.MutateAdGroupCriteria", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/adGroupCriteria:mutate" + "path": "/v7/customers/{customer_id=*}/adGroupCriteria:mutate" } ] } @@ -531,16 +571,16 @@ }, { "shortName": "AdGroupCriterionSimulationService", - "fullName": "google.ads.googleads.v4.services.AdGroupCriterionSimulationService", + "fullName": "google.ads.googleads.v7.services.AdGroupCriterionSimulationService", "methods": [ { "shortName": "GetAdGroupCriterionSimulation", - "fullName": "google.ads.googleads.v4.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation", + "fullName": "google.ads.googleads.v7.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupCriterionSimulations/*}" + "path": "/v7/{resource_name=customers/*/adGroupCriterionSimulations/*}" } ] } @@ -548,27 +588,27 @@ }, { "shortName": "AdGroupExtensionSettingService", - "fullName": "google.ads.googleads.v4.services.AdGroupExtensionSettingService", + "fullName": "google.ads.googleads.v7.services.AdGroupExtensionSettingService", "methods": [ { "shortName": "GetAdGroupExtensionSetting", - "fullName": "google.ads.googleads.v4.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting", + "fullName": "google.ads.googleads.v7.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupExtensionSettings/*}" + "path": "/v7/{resource_name=customers/*/adGroupExtensionSettings/*}" } ] }, { "shortName": "MutateAdGroupExtensionSettings", - "fullName": "google.ads.googleads.v4.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings", + "fullName": "google.ads.googleads.v7.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/adGroupExtensionSettings:mutate" + "path": "/v7/customers/{customer_id=*}/adGroupExtensionSettings:mutate" } ] } @@ -576,27 +616,27 @@ }, { "shortName": "AdGroupFeedService", - "fullName": "google.ads.googleads.v4.services.AdGroupFeedService", + "fullName": "google.ads.googleads.v7.services.AdGroupFeedService", "methods": [ { "shortName": "GetAdGroupFeed", - "fullName": "google.ads.googleads.v4.services.AdGroupFeedService.GetAdGroupFeed", + "fullName": "google.ads.googleads.v7.services.AdGroupFeedService.GetAdGroupFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupFeeds/*}" + "path": "/v7/{resource_name=customers/*/adGroupFeeds/*}" } ] }, { "shortName": "MutateAdGroupFeeds", - "fullName": "google.ads.googleads.v4.services.AdGroupFeedService.MutateAdGroupFeeds", + "fullName": "google.ads.googleads.v7.services.AdGroupFeedService.MutateAdGroupFeeds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/adGroupFeeds:mutate" + "path": "/v7/customers/{customer_id=*}/adGroupFeeds:mutate" } ] } @@ -604,27 +644,27 @@ }, { "shortName": "AdGroupLabelService", - "fullName": "google.ads.googleads.v4.services.AdGroupLabelService", + "fullName": "google.ads.googleads.v7.services.AdGroupLabelService", "methods": [ { "shortName": "GetAdGroupLabel", - "fullName": "google.ads.googleads.v4.services.AdGroupLabelService.GetAdGroupLabel", + "fullName": "google.ads.googleads.v7.services.AdGroupLabelService.GetAdGroupLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupLabels/*}" + "path": "/v7/{resource_name=customers/*/adGroupLabels/*}" } ] }, { "shortName": "MutateAdGroupLabels", - "fullName": "google.ads.googleads.v4.services.AdGroupLabelService.MutateAdGroupLabels", + "fullName": "google.ads.googleads.v7.services.AdGroupLabelService.MutateAdGroupLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/adGroupLabels:mutate" + "path": "/v7/customers/{customer_id=*}/adGroupLabels:mutate" } ] } @@ -632,27 +672,27 @@ }, { "shortName": "AdGroupService", - "fullName": "google.ads.googleads.v4.services.AdGroupService", + "fullName": "google.ads.googleads.v7.services.AdGroupService", "methods": [ { "shortName": "GetAdGroup", - "fullName": "google.ads.googleads.v4.services.AdGroupService.GetAdGroup", + "fullName": "google.ads.googleads.v7.services.AdGroupService.GetAdGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroups/*}" + "path": "/v7/{resource_name=customers/*/adGroups/*}" } ] }, { "shortName": "MutateAdGroups", - "fullName": "google.ads.googleads.v4.services.AdGroupService.MutateAdGroups", + "fullName": "google.ads.googleads.v7.services.AdGroupService.MutateAdGroups", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/adGroups:mutate" + "path": "/v7/customers/{customer_id=*}/adGroups:mutate" } ] } @@ -660,16 +700,16 @@ }, { "shortName": "AdGroupSimulationService", - "fullName": "google.ads.googleads.v4.services.AdGroupSimulationService", + "fullName": "google.ads.googleads.v7.services.AdGroupSimulationService", "methods": [ { "shortName": "GetAdGroupSimulation", - "fullName": "google.ads.googleads.v4.services.AdGroupSimulationService.GetAdGroupSimulation", + "fullName": "google.ads.googleads.v7.services.AdGroupSimulationService.GetAdGroupSimulation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adGroupSimulations/*}" + "path": "/v7/{resource_name=customers/*/adGroupSimulations/*}" } ] } @@ -677,27 +717,27 @@ }, { "shortName": "AdParameterService", - "fullName": "google.ads.googleads.v4.services.AdParameterService", + "fullName": "google.ads.googleads.v7.services.AdParameterService", "methods": [ { "shortName": "GetAdParameter", - "fullName": "google.ads.googleads.v4.services.AdParameterService.GetAdParameter", + "fullName": "google.ads.googleads.v7.services.AdParameterService.GetAdParameter", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adParameters/*}" + "path": "/v7/{resource_name=customers/*/adParameters/*}" } ] }, { "shortName": "MutateAdParameters", - "fullName": "google.ads.googleads.v4.services.AdParameterService.MutateAdParameters", + "fullName": "google.ads.googleads.v7.services.AdParameterService.MutateAdParameters", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/adParameters:mutate" + "path": "/v7/customers/{customer_id=*}/adParameters:mutate" } ] } @@ -705,16 +745,16 @@ }, { "shortName": "AdScheduleViewService", - "fullName": "google.ads.googleads.v4.services.AdScheduleViewService", + "fullName": "google.ads.googleads.v7.services.AdScheduleViewService", "methods": [ { "shortName": "GetAdScheduleView", - "fullName": "google.ads.googleads.v4.services.AdScheduleViewService.GetAdScheduleView", + "fullName": "google.ads.googleads.v7.services.AdScheduleViewService.GetAdScheduleView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/adScheduleViews/*}" + "path": "/v7/{resource_name=customers/*/adScheduleViews/*}" } ] } @@ -722,27 +762,27 @@ }, { "shortName": "AdService", - "fullName": "google.ads.googleads.v4.services.AdService", + "fullName": "google.ads.googleads.v7.services.AdService", "methods": [ { "shortName": "GetAd", - "fullName": "google.ads.googleads.v4.services.AdService.GetAd", + "fullName": "google.ads.googleads.v7.services.AdService.GetAd", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/ads/*}" + "path": "/v7/{resource_name=customers/*/ads/*}" } ] }, { "shortName": "MutateAds", - "fullName": "google.ads.googleads.v4.services.AdService.MutateAds", + "fullName": "google.ads.googleads.v7.services.AdService.MutateAds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/ads:mutate" + "path": "/v7/customers/{customer_id=*}/ads:mutate" } ] } @@ -750,16 +790,16 @@ }, { "shortName": "AgeRangeViewService", - "fullName": "google.ads.googleads.v4.services.AgeRangeViewService", + "fullName": "google.ads.googleads.v7.services.AgeRangeViewService", "methods": [ { "shortName": "GetAgeRangeView", - "fullName": "google.ads.googleads.v4.services.AgeRangeViewService.GetAgeRangeView", + "fullName": "google.ads.googleads.v7.services.AgeRangeViewService.GetAgeRangeView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/ageRangeViews/*}" + "path": "/v7/{resource_name=customers/*/ageRangeViews/*}" } ] } @@ -767,27 +807,27 @@ }, { "shortName": "AssetService", - "fullName": "google.ads.googleads.v4.services.AssetService", + "fullName": "google.ads.googleads.v7.services.AssetService", "methods": [ { "shortName": "GetAsset", - "fullName": "google.ads.googleads.v4.services.AssetService.GetAsset", + "fullName": "google.ads.googleads.v7.services.AssetService.GetAsset", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/assets/*}" + "path": "/v7/{resource_name=customers/*/assets/*}" } ] }, { "shortName": "MutateAssets", - "fullName": "google.ads.googleads.v4.services.AssetService.MutateAssets", + "fullName": "google.ads.googleads.v7.services.AssetService.MutateAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/assets:mutate" + "path": "/v7/customers/{customer_id=*}/assets:mutate" } ] } @@ -795,60 +835,60 @@ }, { "shortName": "BatchJobService", - "fullName": "google.ads.googleads.v4.services.BatchJobService", + "fullName": "google.ads.googleads.v7.services.BatchJobService", "methods": [ { "shortName": "AddBatchJobOperations", - "fullName": "google.ads.googleads.v4.services.BatchJobService.AddBatchJobOperations", + "fullName": "google.ads.googleads.v7.services.BatchJobService.AddBatchJobOperations", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/{resource_name=customers/*/batchJobs/*}:addOperations" + "path": "/v7/{resource_name=customers/*/batchJobs/*}:addOperations" } ] }, { "shortName": "GetBatchJob", - "fullName": "google.ads.googleads.v4.services.BatchJobService.GetBatchJob", + "fullName": "google.ads.googleads.v7.services.BatchJobService.GetBatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/batchJobs/*}" + "path": "/v7/{resource_name=customers/*/batchJobs/*}" } ] }, { "shortName": "ListBatchJobResults", - "fullName": "google.ads.googleads.v4.services.BatchJobService.ListBatchJobResults", + "fullName": "google.ads.googleads.v7.services.BatchJobService.ListBatchJobResults", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/batchJobs/*}:listResults" + "path": "/v7/{resource_name=customers/*/batchJobs/*}:listResults" } ] }, { "shortName": "MutateBatchJob", - "fullName": "google.ads.googleads.v4.services.BatchJobService.MutateBatchJob", + "fullName": "google.ads.googleads.v7.services.BatchJobService.MutateBatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/batchJobs:mutate" + "path": "/v7/customers/{customer_id=*}/batchJobs:mutate" } ] }, { "shortName": "RunBatchJob", - "fullName": "google.ads.googleads.v4.services.BatchJobService.RunBatchJob", + "fullName": "google.ads.googleads.v7.services.BatchJobService.RunBatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/{resource_name=customers/*/batchJobs/*}:run" + "path": "/v7/{resource_name=customers/*/batchJobs/*}:run" } ] } @@ -856,27 +896,44 @@ }, { "shortName": "BiddingStrategyService", - "fullName": "google.ads.googleads.v4.services.BiddingStrategyService", + "fullName": "google.ads.googleads.v7.services.BiddingStrategyService", "methods": [ { "shortName": "GetBiddingStrategy", - "fullName": "google.ads.googleads.v4.services.BiddingStrategyService.GetBiddingStrategy", + "fullName": "google.ads.googleads.v7.services.BiddingStrategyService.GetBiddingStrategy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/biddingStrategies/*}" + "path": "/v7/{resource_name=customers/*/biddingStrategies/*}" } ] }, { "shortName": "MutateBiddingStrategies", - "fullName": "google.ads.googleads.v4.services.BiddingStrategyService.MutateBiddingStrategies", + "fullName": "google.ads.googleads.v7.services.BiddingStrategyService.MutateBiddingStrategies", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/biddingStrategies:mutate" + "path": "/v7/customers/{customer_id=*}/biddingStrategies:mutate" + } + ] + } + ] + }, + { + "shortName": "BiddingStrategySimulationService", + "fullName": "google.ads.googleads.v7.services.BiddingStrategySimulationService", + "methods": [ + { + "shortName": "GetBiddingStrategySimulation", + "fullName": "google.ads.googleads.v7.services.BiddingStrategySimulationService.GetBiddingStrategySimulation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/biddingStrategySimulations/*}" } ] } @@ -884,27 +941,55 @@ }, { "shortName": "BillingSetupService", - "fullName": "google.ads.googleads.v4.services.BillingSetupService", + "fullName": "google.ads.googleads.v7.services.BillingSetupService", "methods": [ { "shortName": "GetBillingSetup", - "fullName": "google.ads.googleads.v4.services.BillingSetupService.GetBillingSetup", + "fullName": "google.ads.googleads.v7.services.BillingSetupService.GetBillingSetup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/billingSetups/*}" + "path": "/v7/{resource_name=customers/*/billingSetups/*}" } ] }, { "shortName": "MutateBillingSetup", - "fullName": "google.ads.googleads.v4.services.BillingSetupService.MutateBillingSetup", + "fullName": "google.ads.googleads.v7.services.BillingSetupService.MutateBillingSetup", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}/billingSetups:mutate" + } + ] + } + ] + }, + { + "shortName": "CampaignAssetService", + "fullName": "google.ads.googleads.v7.services.CampaignAssetService", + "methods": [ + { + "shortName": "GetCampaignAsset", + "fullName": "google.ads.googleads.v7.services.CampaignAssetService.GetCampaignAsset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/campaignAssets/*}" + } + ] + }, + { + "shortName": "MutateCampaignAssets", + "fullName": "google.ads.googleads.v7.services.CampaignAssetService.MutateCampaignAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/billingSetups:mutate" + "path": "/v7/customers/{customer_id=*}/campaignAssets:mutate" } ] } @@ -912,16 +997,16 @@ }, { "shortName": "CampaignAudienceViewService", - "fullName": "google.ads.googleads.v4.services.CampaignAudienceViewService", + "fullName": "google.ads.googleads.v7.services.CampaignAudienceViewService", "methods": [ { "shortName": "GetCampaignAudienceView", - "fullName": "google.ads.googleads.v4.services.CampaignAudienceViewService.GetCampaignAudienceView", + "fullName": "google.ads.googleads.v7.services.CampaignAudienceViewService.GetCampaignAudienceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignAudienceViews/*}" + "path": "/v7/{resource_name=customers/*/campaignAudienceViews/*}" } ] } @@ -929,27 +1014,27 @@ }, { "shortName": "CampaignBidModifierService", - "fullName": "google.ads.googleads.v4.services.CampaignBidModifierService", + "fullName": "google.ads.googleads.v7.services.CampaignBidModifierService", "methods": [ { "shortName": "GetCampaignBidModifier", - "fullName": "google.ads.googleads.v4.services.CampaignBidModifierService.GetCampaignBidModifier", + "fullName": "google.ads.googleads.v7.services.CampaignBidModifierService.GetCampaignBidModifier", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignBidModifiers/*}" + "path": "/v7/{resource_name=customers/*/campaignBidModifiers/*}" } ] }, { "shortName": "MutateCampaignBidModifiers", - "fullName": "google.ads.googleads.v4.services.CampaignBidModifierService.MutateCampaignBidModifiers", + "fullName": "google.ads.googleads.v7.services.CampaignBidModifierService.MutateCampaignBidModifiers", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/campaignBidModifiers:mutate" + "path": "/v7/customers/{customer_id=*}/campaignBidModifiers:mutate" } ] } @@ -957,27 +1042,27 @@ }, { "shortName": "CampaignBudgetService", - "fullName": "google.ads.googleads.v4.services.CampaignBudgetService", + "fullName": "google.ads.googleads.v7.services.CampaignBudgetService", "methods": [ { "shortName": "GetCampaignBudget", - "fullName": "google.ads.googleads.v4.services.CampaignBudgetService.GetCampaignBudget", + "fullName": "google.ads.googleads.v7.services.CampaignBudgetService.GetCampaignBudget", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignBudgets/*}" + "path": "/v7/{resource_name=customers/*/campaignBudgets/*}" } ] }, { "shortName": "MutateCampaignBudgets", - "fullName": "google.ads.googleads.v4.services.CampaignBudgetService.MutateCampaignBudgets", + "fullName": "google.ads.googleads.v7.services.CampaignBudgetService.MutateCampaignBudgets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/campaignBudgets:mutate" + "path": "/v7/customers/{customer_id=*}/campaignBudgets:mutate" } ] } @@ -985,27 +1070,27 @@ }, { "shortName": "CampaignCriterionService", - "fullName": "google.ads.googleads.v4.services.CampaignCriterionService", + "fullName": "google.ads.googleads.v7.services.CampaignCriterionService", "methods": [ { "shortName": "GetCampaignCriterion", - "fullName": "google.ads.googleads.v4.services.CampaignCriterionService.GetCampaignCriterion", + "fullName": "google.ads.googleads.v7.services.CampaignCriterionService.GetCampaignCriterion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignCriteria/*}" + "path": "/v7/{resource_name=customers/*/campaignCriteria/*}" } ] }, { "shortName": "MutateCampaignCriteria", - "fullName": "google.ads.googleads.v4.services.CampaignCriterionService.MutateCampaignCriteria", + "fullName": "google.ads.googleads.v7.services.CampaignCriterionService.MutateCampaignCriteria", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/campaignCriteria:mutate" + "path": "/v7/customers/{customer_id=*}/campaignCriteria:mutate" } ] } @@ -1013,16 +1098,16 @@ }, { "shortName": "CampaignCriterionSimulationService", - "fullName": "google.ads.googleads.v4.services.CampaignCriterionSimulationService", + "fullName": "google.ads.googleads.v7.services.CampaignCriterionSimulationService", "methods": [ { "shortName": "GetCampaignCriterionSimulation", - "fullName": "google.ads.googleads.v4.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation", + "fullName": "google.ads.googleads.v7.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignCriterionSimulations/*}" + "path": "/v7/{resource_name=customers/*/campaignCriterionSimulations/*}" } ] } @@ -1030,49 +1115,49 @@ }, { "shortName": "CampaignDraftService", - "fullName": "google.ads.googleads.v4.services.CampaignDraftService", + "fullName": "google.ads.googleads.v7.services.CampaignDraftService", "methods": [ { "shortName": "GetCampaignDraft", - "fullName": "google.ads.googleads.v4.services.CampaignDraftService.GetCampaignDraft", + "fullName": "google.ads.googleads.v7.services.CampaignDraftService.GetCampaignDraft", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignDrafts/*}" + "path": "/v7/{resource_name=customers/*/campaignDrafts/*}" } ] }, { "shortName": "ListCampaignDraftAsyncErrors", - "fullName": "google.ads.googleads.v4.services.CampaignDraftService.ListCampaignDraftAsyncErrors", + "fullName": "google.ads.googleads.v7.services.CampaignDraftService.ListCampaignDraftAsyncErrors", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" + "path": "/v7/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" } ] }, { "shortName": "MutateCampaignDrafts", - "fullName": "google.ads.googleads.v4.services.CampaignDraftService.MutateCampaignDrafts", + "fullName": "google.ads.googleads.v7.services.CampaignDraftService.MutateCampaignDrafts", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/campaignDrafts:mutate" + "path": "/v7/customers/{customer_id=*}/campaignDrafts:mutate" } ] }, { "shortName": "PromoteCampaignDraft", - "fullName": "google.ads.googleads.v4.services.CampaignDraftService.PromoteCampaignDraft", + "fullName": "google.ads.googleads.v7.services.CampaignDraftService.PromoteCampaignDraft", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/{campaign_draft=customers/*/campaignDrafts/*}:promote" + "path": "/v7/{campaign_draft=customers/*/campaignDrafts/*}:promote" } ] } @@ -1080,82 +1165,82 @@ }, { "shortName": "CampaignExperimentService", - "fullName": "google.ads.googleads.v4.services.CampaignExperimentService", + "fullName": "google.ads.googleads.v7.services.CampaignExperimentService", "methods": [ { "shortName": "CreateCampaignExperiment", - "fullName": "google.ads.googleads.v4.services.CampaignExperimentService.CreateCampaignExperiment", + "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.CreateCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/campaignExperiments:create" + "path": "/v7/customers/{customer_id=*}/campaignExperiments:create" } ] }, { "shortName": "EndCampaignExperiment", - "fullName": "google.ads.googleads.v4.services.CampaignExperimentService.EndCampaignExperiment", + "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.EndCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/{campaign_experiment=customers/*/campaignExperiments/*}:end" + "path": "/v7/{campaign_experiment=customers/*/campaignExperiments/*}:end" } ] }, { "shortName": "GetCampaignExperiment", - "fullName": "google.ads.googleads.v4.services.CampaignExperimentService.GetCampaignExperiment", + "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.GetCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignExperiments/*}" + "path": "/v7/{resource_name=customers/*/campaignExperiments/*}" } ] }, { "shortName": "GraduateCampaignExperiment", - "fullName": "google.ads.googleads.v4.services.CampaignExperimentService.GraduateCampaignExperiment", + "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.GraduateCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" + "path": "/v7/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" } ] }, { "shortName": "ListCampaignExperimentAsyncErrors", - "fullName": "google.ads.googleads.v4.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors", + "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" + "path": "/v7/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" } ] }, { "shortName": "MutateCampaignExperiments", - "fullName": "google.ads.googleads.v4.services.CampaignExperimentService.MutateCampaignExperiments", + "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.MutateCampaignExperiments", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/campaignExperiments:mutate" + "path": "/v7/customers/{customer_id=*}/campaignExperiments:mutate" } ] }, { "shortName": "PromoteCampaignExperiment", - "fullName": "google.ads.googleads.v4.services.CampaignExperimentService.PromoteCampaignExperiment", + "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.PromoteCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/{campaign_experiment=customers/*/campaignExperiments/*}:promote" + "path": "/v7/{campaign_experiment=customers/*/campaignExperiments/*}:promote" } ] } @@ -1163,27 +1248,27 @@ }, { "shortName": "CampaignExtensionSettingService", - "fullName": "google.ads.googleads.v4.services.CampaignExtensionSettingService", + "fullName": "google.ads.googleads.v7.services.CampaignExtensionSettingService", "methods": [ { "shortName": "GetCampaignExtensionSetting", - "fullName": "google.ads.googleads.v4.services.CampaignExtensionSettingService.GetCampaignExtensionSetting", + "fullName": "google.ads.googleads.v7.services.CampaignExtensionSettingService.GetCampaignExtensionSetting", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignExtensionSettings/*}" + "path": "/v7/{resource_name=customers/*/campaignExtensionSettings/*}" } ] }, { "shortName": "MutateCampaignExtensionSettings", - "fullName": "google.ads.googleads.v4.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings", + "fullName": "google.ads.googleads.v7.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/campaignExtensionSettings:mutate" + "path": "/v7/customers/{customer_id=*}/campaignExtensionSettings:mutate" } ] } @@ -1191,27 +1276,27 @@ }, { "shortName": "CampaignFeedService", - "fullName": "google.ads.googleads.v4.services.CampaignFeedService", + "fullName": "google.ads.googleads.v7.services.CampaignFeedService", "methods": [ { "shortName": "GetCampaignFeed", - "fullName": "google.ads.googleads.v4.services.CampaignFeedService.GetCampaignFeed", + "fullName": "google.ads.googleads.v7.services.CampaignFeedService.GetCampaignFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignFeeds/*}" + "path": "/v7/{resource_name=customers/*/campaignFeeds/*}" } ] }, { "shortName": "MutateCampaignFeeds", - "fullName": "google.ads.googleads.v4.services.CampaignFeedService.MutateCampaignFeeds", + "fullName": "google.ads.googleads.v7.services.CampaignFeedService.MutateCampaignFeeds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/campaignFeeds:mutate" + "path": "/v7/customers/{customer_id=*}/campaignFeeds:mutate" } ] } @@ -1219,27 +1304,27 @@ }, { "shortName": "CampaignLabelService", - "fullName": "google.ads.googleads.v4.services.CampaignLabelService", + "fullName": "google.ads.googleads.v7.services.CampaignLabelService", "methods": [ { "shortName": "GetCampaignLabel", - "fullName": "google.ads.googleads.v4.services.CampaignLabelService.GetCampaignLabel", + "fullName": "google.ads.googleads.v7.services.CampaignLabelService.GetCampaignLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignLabels/*}" + "path": "/v7/{resource_name=customers/*/campaignLabels/*}" } ] }, { "shortName": "MutateCampaignLabels", - "fullName": "google.ads.googleads.v4.services.CampaignLabelService.MutateCampaignLabels", + "fullName": "google.ads.googleads.v7.services.CampaignLabelService.MutateCampaignLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/campaignLabels:mutate" + "path": "/v7/customers/{customer_id=*}/campaignLabels:mutate" } ] } @@ -1247,27 +1332,27 @@ }, { "shortName": "CampaignService", - "fullName": "google.ads.googleads.v4.services.CampaignService", + "fullName": "google.ads.googleads.v7.services.CampaignService", "methods": [ { "shortName": "GetCampaign", - "fullName": "google.ads.googleads.v4.services.CampaignService.GetCampaign", + "fullName": "google.ads.googleads.v7.services.CampaignService.GetCampaign", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaigns/*}" + "path": "/v7/{resource_name=customers/*/campaigns/*}" } ] }, { "shortName": "MutateCampaigns", - "fullName": "google.ads.googleads.v4.services.CampaignService.MutateCampaigns", + "fullName": "google.ads.googleads.v7.services.CampaignService.MutateCampaigns", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/campaigns:mutate" + "path": "/v7/customers/{customer_id=*}/campaigns:mutate" } ] } @@ -1275,27 +1360,44 @@ }, { "shortName": "CampaignSharedSetService", - "fullName": "google.ads.googleads.v4.services.CampaignSharedSetService", + "fullName": "google.ads.googleads.v7.services.CampaignSharedSetService", "methods": [ { "shortName": "GetCampaignSharedSet", - "fullName": "google.ads.googleads.v4.services.CampaignSharedSetService.GetCampaignSharedSet", + "fullName": "google.ads.googleads.v7.services.CampaignSharedSetService.GetCampaignSharedSet", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/campaignSharedSets/*}" + "path": "/v7/{resource_name=customers/*/campaignSharedSets/*}" } ] }, { "shortName": "MutateCampaignSharedSets", - "fullName": "google.ads.googleads.v4.services.CampaignSharedSetService.MutateCampaignSharedSets", + "fullName": "google.ads.googleads.v7.services.CampaignSharedSetService.MutateCampaignSharedSets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/campaignSharedSets:mutate" + "path": "/v7/customers/{customer_id=*}/campaignSharedSets:mutate" + } + ] + } + ] + }, + { + "shortName": "CampaignSimulationService", + "fullName": "google.ads.googleads.v7.services.CampaignSimulationService", + "methods": [ + { + "shortName": "GetCampaignSimulation", + "fullName": "google.ads.googleads.v7.services.CampaignSimulationService.GetCampaignSimulation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/campaignSimulations/*}" } ] } @@ -1303,16 +1405,16 @@ }, { "shortName": "CarrierConstantService", - "fullName": "google.ads.googleads.v4.services.CarrierConstantService", + "fullName": "google.ads.googleads.v7.services.CarrierConstantService", "methods": [ { "shortName": "GetCarrierConstant", - "fullName": "google.ads.googleads.v4.services.CarrierConstantService.GetCarrierConstant", + "fullName": "google.ads.googleads.v7.services.CarrierConstantService.GetCarrierConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=carrierConstants/*}" + "path": "/v7/{resource_name=carrierConstants/*}" } ] } @@ -1320,16 +1422,16 @@ }, { "shortName": "ChangeStatusService", - "fullName": "google.ads.googleads.v4.services.ChangeStatusService", + "fullName": "google.ads.googleads.v7.services.ChangeStatusService", "methods": [ { "shortName": "GetChangeStatus", - "fullName": "google.ads.googleads.v4.services.ChangeStatusService.GetChangeStatus", + "fullName": "google.ads.googleads.v7.services.ChangeStatusService.GetChangeStatus", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/changeStatus/*}" + "path": "/v7/{resource_name=customers/*/changeStatus/*}" } ] } @@ -1337,16 +1439,33 @@ }, { "shortName": "ClickViewService", - "fullName": "google.ads.googleads.v4.services.ClickViewService", + "fullName": "google.ads.googleads.v7.services.ClickViewService", "methods": [ { "shortName": "GetClickView", - "fullName": "google.ads.googleads.v4.services.ClickViewService.GetClickView", + "fullName": "google.ads.googleads.v7.services.ClickViewService.GetClickView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/clickViews/*}" + } + ] + } + ] + }, + { + "shortName": "CombinedAudienceService", + "fullName": "google.ads.googleads.v7.services.CombinedAudienceService", + "methods": [ + { + "shortName": "GetCombinedAudience", + "fullName": "google.ads.googleads.v7.services.CombinedAudienceService.GetCombinedAudience", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/clickViews/*}" + "path": "/v7/{resource_name=customers/*/combinedAudiences/*}" } ] } @@ -1354,27 +1473,27 @@ }, { "shortName": "ConversionActionService", - "fullName": "google.ads.googleads.v4.services.ConversionActionService", + "fullName": "google.ads.googleads.v7.services.ConversionActionService", "methods": [ { "shortName": "GetConversionAction", - "fullName": "google.ads.googleads.v4.services.ConversionActionService.GetConversionAction", + "fullName": "google.ads.googleads.v7.services.ConversionActionService.GetConversionAction", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/conversionActions/*}" + "path": "/v7/{resource_name=customers/*/conversionActions/*}" } ] }, { "shortName": "MutateConversionActions", - "fullName": "google.ads.googleads.v4.services.ConversionActionService.MutateConversionActions", + "fullName": "google.ads.googleads.v7.services.ConversionActionService.MutateConversionActions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/conversionActions:mutate" + "path": "/v7/customers/{customer_id=*}/conversionActions:mutate" } ] } @@ -1382,335 +1501,475 @@ }, { "shortName": "ConversionAdjustmentUploadService", - "fullName": "google.ads.googleads.v4.services.ConversionAdjustmentUploadService", + "fullName": "google.ads.googleads.v7.services.ConversionAdjustmentUploadService", "methods": [ { "shortName": "UploadConversionAdjustments", - "fullName": "google.ads.googleads.v4.services.ConversionAdjustmentUploadService.UploadConversionAdjustments", + "fullName": "google.ads.googleads.v7.services.ConversionAdjustmentUploadService.UploadConversionAdjustments", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}:uploadConversionAdjustments" + "path": "/v7/customers/{customer_id=*}:uploadConversionAdjustments" } ] } ] }, { - "shortName": "ConversionUploadService", - "fullName": "google.ads.googleads.v4.services.ConversionUploadService", + "shortName": "ConversionCustomVariableService", + "fullName": "google.ads.googleads.v7.services.ConversionCustomVariableService", "methods": [ { - "shortName": "UploadCallConversions", - "fullName": "google.ads.googleads.v4.services.ConversionUploadService.UploadCallConversions", + "shortName": "GetConversionCustomVariable", + "fullName": "google.ads.googleads.v7.services.ConversionCustomVariableService.GetConversionCustomVariable", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}:uploadCallConversions" + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/conversionCustomVariables/*}" } ] }, { - "shortName": "UploadClickConversions", - "fullName": "google.ads.googleads.v4.services.ConversionUploadService.UploadClickConversions", + "shortName": "MutateConversionCustomVariables", + "fullName": "google.ads.googleads.v7.services.ConversionCustomVariableService.MutateConversionCustomVariables", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}:uploadClickConversions" - } - ] - } - ] - }, - { - "shortName": "CurrencyConstantService", - "fullName": "google.ads.googleads.v4.services.CurrencyConstantService", - "methods": [ - { - "shortName": "GetCurrencyConstant", - "fullName": "google.ads.googleads.v4.services.CurrencyConstantService.GetCurrencyConstant", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v4/{resource_name=currencyConstants/*}" + "path": "/v7/customers/{customer_id=*}/conversionCustomVariables:mutate" } ] } ] }, { - "shortName": "CustomerClientLinkService", - "fullName": "google.ads.googleads.v4.services.CustomerClientLinkService", + "shortName": "ConversionUploadService", + "fullName": "google.ads.googleads.v7.services.ConversionUploadService", "methods": [ { - "shortName": "GetCustomerClientLink", - "fullName": "google.ads.googleads.v4.services.CustomerClientLinkService.GetCustomerClientLink", + "shortName": "UploadCallConversions", + "fullName": "google.ads.googleads.v7.services.ConversionUploadService.UploadCallConversions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/customerClientLinks/*}" + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}:uploadCallConversions" } ] }, { - "shortName": "MutateCustomerClientLink", - "fullName": "google.ads.googleads.v4.services.CustomerClientLinkService.MutateCustomerClientLink", + "shortName": "UploadClickConversions", + "fullName": "google.ads.googleads.v7.services.ConversionUploadService.UploadClickConversions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/customerClientLinks:mutate" + "path": "/v7/customers/{customer_id=*}:uploadClickConversions" } ] } ] }, { - "shortName": "CustomerClientService", - "fullName": "google.ads.googleads.v4.services.CustomerClientService", + "shortName": "CurrencyConstantService", + "fullName": "google.ads.googleads.v7.services.CurrencyConstantService", "methods": [ { - "shortName": "GetCustomerClient", - "fullName": "google.ads.googleads.v4.services.CustomerClientService.GetCustomerClient", + "shortName": "GetCurrencyConstant", + "fullName": "google.ads.googleads.v7.services.CurrencyConstantService.GetCurrencyConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/customerClients/*}" + "path": "/v7/{resource_name=currencyConstants/*}" } ] } ] }, { - "shortName": "CustomerExtensionSettingService", - "fullName": "google.ads.googleads.v4.services.CustomerExtensionSettingService", + "shortName": "CustomAudienceService", + "fullName": "google.ads.googleads.v7.services.CustomAudienceService", "methods": [ { - "shortName": "GetCustomerExtensionSetting", - "fullName": "google.ads.googleads.v4.services.CustomerExtensionSettingService.GetCustomerExtensionSetting", + "shortName": "GetCustomAudience", + "fullName": "google.ads.googleads.v7.services.CustomAudienceService.GetCustomAudience", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/customerExtensionSettings/*}" + "path": "/v7/{resource_name=customers/*/customAudiences/*}" } ] }, { - "shortName": "MutateCustomerExtensionSettings", - "fullName": "google.ads.googleads.v4.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings", + "shortName": "MutateCustomAudiences", + "fullName": "google.ads.googleads.v7.services.CustomAudienceService.MutateCustomAudiences", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/customerExtensionSettings:mutate" + "path": "/v7/customers/{customer_id=*}/customAudiences:mutate" } ] } ] }, { - "shortName": "CustomerFeedService", - "fullName": "google.ads.googleads.v4.services.CustomerFeedService", + "shortName": "CustomInterestService", + "fullName": "google.ads.googleads.v7.services.CustomInterestService", "methods": [ { - "shortName": "GetCustomerFeed", - "fullName": "google.ads.googleads.v4.services.CustomerFeedService.GetCustomerFeed", + "shortName": "GetCustomInterest", + "fullName": "google.ads.googleads.v7.services.CustomInterestService.GetCustomInterest", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/customerFeeds/*}" + "path": "/v7/{resource_name=customers/*/customInterests/*}" } ] }, { - "shortName": "MutateCustomerFeeds", - "fullName": "google.ads.googleads.v4.services.CustomerFeedService.MutateCustomerFeeds", + "shortName": "MutateCustomInterests", + "fullName": "google.ads.googleads.v7.services.CustomInterestService.MutateCustomInterests", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/customerFeeds:mutate" + "path": "/v7/customers/{customer_id=*}/customInterests:mutate" } ] } ] }, { - "shortName": "CustomerLabelService", - "fullName": "google.ads.googleads.v4.services.CustomerLabelService", + "shortName": "CustomerAssetService", + "fullName": "google.ads.googleads.v7.services.CustomerAssetService", "methods": [ { - "shortName": "GetCustomerLabel", - "fullName": "google.ads.googleads.v4.services.CustomerLabelService.GetCustomerLabel", + "shortName": "GetCustomerAsset", + "fullName": "google.ads.googleads.v7.services.CustomerAssetService.GetCustomerAsset", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/customerLabels/*}" + "path": "/v7/{resource_name=customers/*/customerAssets/*}" } ] }, { - "shortName": "MutateCustomerLabels", - "fullName": "google.ads.googleads.v4.services.CustomerLabelService.MutateCustomerLabels", + "shortName": "MutateCustomerAssets", + "fullName": "google.ads.googleads.v7.services.CustomerAssetService.MutateCustomerAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/customerLabels:mutate" + "path": "/v7/customers/{customer_id=*}/customerAssets:mutate" } ] } ] }, { - "shortName": "CustomerManagerLinkService", - "fullName": "google.ads.googleads.v4.services.CustomerManagerLinkService", + "shortName": "CustomerClientLinkService", + "fullName": "google.ads.googleads.v7.services.CustomerClientLinkService", "methods": [ { - "shortName": "GetCustomerManagerLink", - "fullName": "google.ads.googleads.v4.services.CustomerManagerLinkService.GetCustomerManagerLink", + "shortName": "GetCustomerClientLink", + "fullName": "google.ads.googleads.v7.services.CustomerClientLinkService.GetCustomerClientLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/customerManagerLinks/*}" + "path": "/v7/{resource_name=customers/*/customerClientLinks/*}" } ] }, { - "shortName": "MoveManagerLink", - "fullName": "google.ads.googleads.v4.services.CustomerManagerLinkService.MoveManagerLink", + "shortName": "MutateCustomerClientLink", + "fullName": "google.ads.googleads.v7.services.CustomerClientLinkService.MutateCustomerClientLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" + "path": "/v7/customers/{customer_id=*}/customerClientLinks:mutate" } ] - }, + } + ] + }, + { + "shortName": "CustomerClientService", + "fullName": "google.ads.googleads.v7.services.CustomerClientService", + "methods": [ { - "shortName": "MutateCustomerManagerLink", - "fullName": "google.ads.googleads.v4.services.CustomerManagerLinkService.MutateCustomerManagerLink", + "shortName": "GetCustomerClient", + "fullName": "google.ads.googleads.v7.services.CustomerClientService.GetCustomerClient", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/customerManagerLinks:mutate" + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/customerClients/*}" } ] } ] }, { - "shortName": "CustomerNegativeCriterionService", - "fullName": "google.ads.googleads.v4.services.CustomerNegativeCriterionService", + "shortName": "CustomerExtensionSettingService", + "fullName": "google.ads.googleads.v7.services.CustomerExtensionSettingService", "methods": [ { - "shortName": "GetCustomerNegativeCriterion", - "fullName": "google.ads.googleads.v4.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion", + "shortName": "GetCustomerExtensionSetting", + "fullName": "google.ads.googleads.v7.services.CustomerExtensionSettingService.GetCustomerExtensionSetting", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/customerNegativeCriteria/*}" + "path": "/v7/{resource_name=customers/*/customerExtensionSettings/*}" } ] }, { - "shortName": "MutateCustomerNegativeCriteria", - "fullName": "google.ads.googleads.v4.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria", + "shortName": "MutateCustomerExtensionSettings", + "fullName": "google.ads.googleads.v7.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/customerNegativeCriteria:mutate" + "path": "/v7/customers/{customer_id=*}/customerExtensionSettings:mutate" } ] } ] }, { - "shortName": "CustomerService", - "fullName": "google.ads.googleads.v4.services.CustomerService", + "shortName": "CustomerFeedService", + "fullName": "google.ads.googleads.v7.services.CustomerFeedService", "methods": [ { - "shortName": "CreateCustomerClient", - "fullName": "google.ads.googleads.v4.services.CustomerService.CreateCustomerClient", + "shortName": "GetCustomerFeed", + "fullName": "google.ads.googleads.v7.services.CustomerFeedService.GetCustomerFeed", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}:createCustomerClient" + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/customerFeeds/*}" } ] }, { - "shortName": "GetCustomer", - "fullName": "google.ads.googleads.v4.services.CustomerService.GetCustomer", + "shortName": "MutateCustomerFeeds", + "fullName": "google.ads.googleads.v7.services.CustomerFeedService.MutateCustomerFeeds", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*}" - } + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}/customerFeeds:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerLabelService", + "fullName": "google.ads.googleads.v7.services.CustomerLabelService", + "methods": [ + { + "shortName": "GetCustomerLabel", + "fullName": "google.ads.googleads.v7.services.CustomerLabelService.GetCustomerLabel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/customerLabels/*}" + } + ] + }, + { + "shortName": "MutateCustomerLabels", + "fullName": "google.ads.googleads.v7.services.CustomerLabelService.MutateCustomerLabels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}/customerLabels:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerManagerLinkService", + "fullName": "google.ads.googleads.v7.services.CustomerManagerLinkService", + "methods": [ + { + "shortName": "GetCustomerManagerLink", + "fullName": "google.ads.googleads.v7.services.CustomerManagerLinkService.GetCustomerManagerLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/customerManagerLinks/*}" + } + ] + }, + { + "shortName": "MoveManagerLink", + "fullName": "google.ads.googleads.v7.services.CustomerManagerLinkService.MoveManagerLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" + } + ] + }, + { + "shortName": "MutateCustomerManagerLink", + "fullName": "google.ads.googleads.v7.services.CustomerManagerLinkService.MutateCustomerManagerLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}/customerManagerLinks:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerNegativeCriterionService", + "fullName": "google.ads.googleads.v7.services.CustomerNegativeCriterionService", + "methods": [ + { + "shortName": "GetCustomerNegativeCriterion", + "fullName": "google.ads.googleads.v7.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/customerNegativeCriteria/*}" + } + ] + }, + { + "shortName": "MutateCustomerNegativeCriteria", + "fullName": "google.ads.googleads.v7.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}/customerNegativeCriteria:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerService", + "fullName": "google.ads.googleads.v7.services.CustomerService", + "methods": [ + { + "shortName": "CreateCustomerClient", + "fullName": "google.ads.googleads.v7.services.CustomerService.CreateCustomerClient", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}:createCustomerClient" + } + ] + }, + { + "shortName": "GetCustomer", + "fullName": "google.ads.googleads.v7.services.CustomerService.GetCustomer", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*}" + } ] }, { "shortName": "ListAccessibleCustomers", - "fullName": "google.ads.googleads.v4.services.CustomerService.ListAccessibleCustomers", + "fullName": "google.ads.googleads.v7.services.CustomerService.ListAccessibleCustomers", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/customers:listAccessibleCustomers" + "path": "/v7/customers:listAccessibleCustomers" } ] }, { "shortName": "MutateCustomer", - "fullName": "google.ads.googleads.v4.services.CustomerService.MutateCustomer", + "fullName": "google.ads.googleads.v7.services.CustomerService.MutateCustomer", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}:mutate" + "path": "/v7/customers/{customer_id=*}:mutate" } ] } ] }, { - "shortName": "CustomInterestService", - "fullName": "google.ads.googleads.v4.services.CustomInterestService", + "shortName": "CustomerUserAccessInvitationService", + "fullName": "google.ads.googleads.v7.services.CustomerUserAccessInvitationService", "methods": [ { - "shortName": "GetCustomInterest", - "fullName": "google.ads.googleads.v4.services.CustomInterestService.GetCustomInterest", + "shortName": "GetCustomerUserAccessInvitation", + "fullName": "google.ads.googleads.v7.services.CustomerUserAccessInvitationService.GetCustomerUserAccessInvitation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/customInterests/*}" + "path": "/v7/{resource_name=customers/*/customerUserAccessInvitations/*}" } ] }, { - "shortName": "MutateCustomInterests", - "fullName": "google.ads.googleads.v4.services.CustomInterestService.MutateCustomInterests", + "shortName": "MutateCustomerUserAccessInvitation", + "fullName": "google.ads.googleads.v7.services.CustomerUserAccessInvitationService.MutateCustomerUserAccessInvitation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}/customerUserAccessInvitations:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerUserAccessService", + "fullName": "google.ads.googleads.v7.services.CustomerUserAccessService", + "methods": [ + { + "shortName": "GetCustomerUserAccess", + "fullName": "google.ads.googleads.v7.services.CustomerUserAccessService.GetCustomerUserAccess", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/customerUserAccesses/*}" + } + ] + }, + { + "shortName": "MutateCustomerUserAccess", + "fullName": "google.ads.googleads.v7.services.CustomerUserAccessService.MutateCustomerUserAccess", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/customInterests:mutate" + "path": "/v7/customers/{customer_id=*}/customerUserAccesses:mutate" } ] } @@ -1718,16 +1977,16 @@ }, { "shortName": "DetailPlacementViewService", - "fullName": "google.ads.googleads.v4.services.DetailPlacementViewService", + "fullName": "google.ads.googleads.v7.services.DetailPlacementViewService", "methods": [ { "shortName": "GetDetailPlacementView", - "fullName": "google.ads.googleads.v4.services.DetailPlacementViewService.GetDetailPlacementView", + "fullName": "google.ads.googleads.v7.services.DetailPlacementViewService.GetDetailPlacementView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/detailPlacementViews/*}" + "path": "/v7/{resource_name=customers/*/detailPlacementViews/*}" } ] } @@ -1735,16 +1994,16 @@ }, { "shortName": "DisplayKeywordViewService", - "fullName": "google.ads.googleads.v4.services.DisplayKeywordViewService", + "fullName": "google.ads.googleads.v7.services.DisplayKeywordViewService", "methods": [ { "shortName": "GetDisplayKeywordView", - "fullName": "google.ads.googleads.v4.services.DisplayKeywordViewService.GetDisplayKeywordView", + "fullName": "google.ads.googleads.v7.services.DisplayKeywordViewService.GetDisplayKeywordView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/displayKeywordViews/*}" + "path": "/v7/{resource_name=customers/*/displayKeywordViews/*}" } ] } @@ -1752,16 +2011,16 @@ }, { "shortName": "DistanceViewService", - "fullName": "google.ads.googleads.v4.services.DistanceViewService", + "fullName": "google.ads.googleads.v7.services.DistanceViewService", "methods": [ { "shortName": "GetDistanceView", - "fullName": "google.ads.googleads.v4.services.DistanceViewService.GetDistanceView", + "fullName": "google.ads.googleads.v7.services.DistanceViewService.GetDistanceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/distanceViews/*}" + "path": "/v7/{resource_name=customers/*/distanceViews/*}" } ] } @@ -1769,16 +2028,16 @@ }, { "shortName": "DomainCategoryService", - "fullName": "google.ads.googleads.v4.services.DomainCategoryService", + "fullName": "google.ads.googleads.v7.services.DomainCategoryService", "methods": [ { "shortName": "GetDomainCategory", - "fullName": "google.ads.googleads.v4.services.DomainCategoryService.GetDomainCategory", + "fullName": "google.ads.googleads.v7.services.DomainCategoryService.GetDomainCategory", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/domainCategories/*}" + "path": "/v7/{resource_name=customers/*/domainCategories/*}" } ] } @@ -1786,16 +2045,16 @@ }, { "shortName": "DynamicSearchAdsSearchTermViewService", - "fullName": "google.ads.googleads.v4.services.DynamicSearchAdsSearchTermViewService", + "fullName": "google.ads.googleads.v7.services.DynamicSearchAdsSearchTermViewService", "methods": [ { "shortName": "GetDynamicSearchAdsSearchTermView", - "fullName": "google.ads.googleads.v4.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView", + "fullName": "google.ads.googleads.v7.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" + "path": "/v7/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" } ] } @@ -1803,16 +2062,16 @@ }, { "shortName": "ExpandedLandingPageViewService", - "fullName": "google.ads.googleads.v4.services.ExpandedLandingPageViewService", + "fullName": "google.ads.googleads.v7.services.ExpandedLandingPageViewService", "methods": [ { "shortName": "GetExpandedLandingPageView", - "fullName": "google.ads.googleads.v4.services.ExpandedLandingPageViewService.GetExpandedLandingPageView", + "fullName": "google.ads.googleads.v7.services.ExpandedLandingPageViewService.GetExpandedLandingPageView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/expandedLandingPageViews/*}" + "path": "/v7/{resource_name=customers/*/expandedLandingPageViews/*}" } ] } @@ -1820,27 +2079,27 @@ }, { "shortName": "ExtensionFeedItemService", - "fullName": "google.ads.googleads.v4.services.ExtensionFeedItemService", + "fullName": "google.ads.googleads.v7.services.ExtensionFeedItemService", "methods": [ { "shortName": "GetExtensionFeedItem", - "fullName": "google.ads.googleads.v4.services.ExtensionFeedItemService.GetExtensionFeedItem", + "fullName": "google.ads.googleads.v7.services.ExtensionFeedItemService.GetExtensionFeedItem", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/extensionFeedItems/*}" + "path": "/v7/{resource_name=customers/*/extensionFeedItems/*}" } ] }, { "shortName": "MutateExtensionFeedItems", - "fullName": "google.ads.googleads.v4.services.ExtensionFeedItemService.MutateExtensionFeedItems", + "fullName": "google.ads.googleads.v7.services.ExtensionFeedItemService.MutateExtensionFeedItems", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/extensionFeedItems:mutate" + "path": "/v7/customers/{customer_id=*}/extensionFeedItems:mutate" } ] } @@ -1848,27 +2107,83 @@ }, { "shortName": "FeedItemService", - "fullName": "google.ads.googleads.v4.services.FeedItemService", + "fullName": "google.ads.googleads.v7.services.FeedItemService", "methods": [ { "shortName": "GetFeedItem", - "fullName": "google.ads.googleads.v4.services.FeedItemService.GetFeedItem", + "fullName": "google.ads.googleads.v7.services.FeedItemService.GetFeedItem", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/feedItems/*}" + "path": "/v7/{resource_name=customers/*/feedItems/*}" } ] }, { "shortName": "MutateFeedItems", - "fullName": "google.ads.googleads.v4.services.FeedItemService.MutateFeedItems", + "fullName": "google.ads.googleads.v7.services.FeedItemService.MutateFeedItems", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}/feedItems:mutate" + } + ] + } + ] + }, + { + "shortName": "FeedItemSetLinkService", + "fullName": "google.ads.googleads.v7.services.FeedItemSetLinkService", + "methods": [ + { + "shortName": "GetFeedItemSetLink", + "fullName": "google.ads.googleads.v7.services.FeedItemSetLinkService.GetFeedItemSetLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/feedItemSetLinks/*}" + } + ] + }, + { + "shortName": "MutateFeedItemSetLinks", + "fullName": "google.ads.googleads.v7.services.FeedItemSetLinkService.MutateFeedItemSetLinks", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/feedItems:mutate" + "path": "/v7/customers/{customer_id=*}/feedItemSetLinks:mutate" + } + ] + } + ] + }, + { + "shortName": "FeedItemSetService", + "fullName": "google.ads.googleads.v7.services.FeedItemSetService", + "methods": [ + { + "shortName": "GetFeedItemSet", + "fullName": "google.ads.googleads.v7.services.FeedItemSetService.GetFeedItemSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/feedItemSets/*}" + } + ] + }, + { + "shortName": "MutateFeedItemSets", + "fullName": "google.ads.googleads.v7.services.FeedItemSetService.MutateFeedItemSets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/customers/{customer_id=*}/feedItemSets:mutate" } ] } @@ -1876,27 +2191,27 @@ }, { "shortName": "FeedItemTargetService", - "fullName": "google.ads.googleads.v4.services.FeedItemTargetService", + "fullName": "google.ads.googleads.v7.services.FeedItemTargetService", "methods": [ { "shortName": "GetFeedItemTarget", - "fullName": "google.ads.googleads.v4.services.FeedItemTargetService.GetFeedItemTarget", + "fullName": "google.ads.googleads.v7.services.FeedItemTargetService.GetFeedItemTarget", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/feedItemTargets/*}" + "path": "/v7/{resource_name=customers/*/feedItemTargets/*}" } ] }, { "shortName": "MutateFeedItemTargets", - "fullName": "google.ads.googleads.v4.services.FeedItemTargetService.MutateFeedItemTargets", + "fullName": "google.ads.googleads.v7.services.FeedItemTargetService.MutateFeedItemTargets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/feedItemTargets:mutate" + "path": "/v7/customers/{customer_id=*}/feedItemTargets:mutate" } ] } @@ -1904,27 +2219,27 @@ }, { "shortName": "FeedMappingService", - "fullName": "google.ads.googleads.v4.services.FeedMappingService", + "fullName": "google.ads.googleads.v7.services.FeedMappingService", "methods": [ { "shortName": "GetFeedMapping", - "fullName": "google.ads.googleads.v4.services.FeedMappingService.GetFeedMapping", + "fullName": "google.ads.googleads.v7.services.FeedMappingService.GetFeedMapping", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/feedMappings/*}" + "path": "/v7/{resource_name=customers/*/feedMappings/*}" } ] }, { "shortName": "MutateFeedMappings", - "fullName": "google.ads.googleads.v4.services.FeedMappingService.MutateFeedMappings", + "fullName": "google.ads.googleads.v7.services.FeedMappingService.MutateFeedMappings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/feedMappings:mutate" + "path": "/v7/customers/{customer_id=*}/feedMappings:mutate" } ] } @@ -1932,16 +2247,16 @@ }, { "shortName": "FeedPlaceholderViewService", - "fullName": "google.ads.googleads.v4.services.FeedPlaceholderViewService", + "fullName": "google.ads.googleads.v7.services.FeedPlaceholderViewService", "methods": [ { "shortName": "GetFeedPlaceholderView", - "fullName": "google.ads.googleads.v4.services.FeedPlaceholderViewService.GetFeedPlaceholderView", + "fullName": "google.ads.googleads.v7.services.FeedPlaceholderViewService.GetFeedPlaceholderView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/feedPlaceholderViews/*}" + "path": "/v7/{resource_name=customers/*/feedPlaceholderViews/*}" } ] } @@ -1949,27 +2264,27 @@ }, { "shortName": "FeedService", - "fullName": "google.ads.googleads.v4.services.FeedService", + "fullName": "google.ads.googleads.v7.services.FeedService", "methods": [ { "shortName": "GetFeed", - "fullName": "google.ads.googleads.v4.services.FeedService.GetFeed", + "fullName": "google.ads.googleads.v7.services.FeedService.GetFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/feeds/*}" + "path": "/v7/{resource_name=customers/*/feeds/*}" } ] }, { "shortName": "MutateFeeds", - "fullName": "google.ads.googleads.v4.services.FeedService.MutateFeeds", + "fullName": "google.ads.googleads.v7.services.FeedService.MutateFeeds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/feeds:mutate" + "path": "/v7/customers/{customer_id=*}/feeds:mutate" } ] } @@ -1977,61 +2292,61 @@ }, { "shortName": "GenderViewService", - "fullName": "google.ads.googleads.v4.services.GenderViewService", + "fullName": "google.ads.googleads.v7.services.GenderViewService", "methods": [ { "shortName": "GetGenderView", - "fullName": "google.ads.googleads.v4.services.GenderViewService.GetGenderView", + "fullName": "google.ads.googleads.v7.services.GenderViewService.GetGenderView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/genderViews/*}" + "path": "/v7/{resource_name=customers/*/genderViews/*}" } ] } ] }, { - "shortName": "GeographicViewService", - "fullName": "google.ads.googleads.v4.services.GeographicViewService", + "shortName": "GeoTargetConstantService", + "fullName": "google.ads.googleads.v7.services.GeoTargetConstantService", "methods": [ { - "shortName": "GetGeographicView", - "fullName": "google.ads.googleads.v4.services.GeographicViewService.GetGeographicView", + "shortName": "GetGeoTargetConstant", + "fullName": "google.ads.googleads.v7.services.GeoTargetConstantService.GetGeoTargetConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/geographicViews/*}" + "path": "/v7/{resource_name=geoTargetConstants/*}" } ] - } - ] - }, - { - "shortName": "GeoTargetConstantService", - "fullName": "google.ads.googleads.v4.services.GeoTargetConstantService", - "methods": [ + }, { - "shortName": "GetGeoTargetConstant", - "fullName": "google.ads.googleads.v4.services.GeoTargetConstantService.GetGeoTargetConstant", + "shortName": "SuggestGeoTargetConstants", + "fullName": "google.ads.googleads.v7.services.GeoTargetConstantService.SuggestGeoTargetConstants", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v4/{resource_name=geoTargetConstants/*}" + "httpMethod": "POST", + "path": "/v7/geoTargetConstants:suggest" } ] - }, + } + ] + }, + { + "shortName": "GeographicViewService", + "fullName": "google.ads.googleads.v7.services.GeographicViewService", + "methods": [ { - "shortName": "SuggestGeoTargetConstants", - "fullName": "google.ads.googleads.v4.services.GeoTargetConstantService.SuggestGeoTargetConstants", + "shortName": "GetGeographicView", + "fullName": "google.ads.googleads.v7.services.GeographicViewService.GetGeographicView", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v4/geoTargetConstants:suggest" + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/geographicViews/*}" } ] } @@ -2039,27 +2354,27 @@ }, { "shortName": "GoogleAdsFieldService", - "fullName": "google.ads.googleads.v4.services.GoogleAdsFieldService", + "fullName": "google.ads.googleads.v7.services.GoogleAdsFieldService", "methods": [ { "shortName": "GetGoogleAdsField", - "fullName": "google.ads.googleads.v4.services.GoogleAdsFieldService.GetGoogleAdsField", + "fullName": "google.ads.googleads.v7.services.GoogleAdsFieldService.GetGoogleAdsField", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=googleAdsFields/*}" + "path": "/v7/{resource_name=googleAdsFields/*}" } ] }, { "shortName": "SearchGoogleAdsFields", - "fullName": "google.ads.googleads.v4.services.GoogleAdsFieldService.SearchGoogleAdsFields", + "fullName": "google.ads.googleads.v7.services.GoogleAdsFieldService.SearchGoogleAdsFields", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/googleAdsFields:search" + "path": "/v7/googleAdsFields:search" } ] } @@ -2067,38 +2382,38 @@ }, { "shortName": "GoogleAdsService", - "fullName": "google.ads.googleads.v4.services.GoogleAdsService", + "fullName": "google.ads.googleads.v7.services.GoogleAdsService", "methods": [ { "shortName": "Mutate", - "fullName": "google.ads.googleads.v4.services.GoogleAdsService.Mutate", + "fullName": "google.ads.googleads.v7.services.GoogleAdsService.Mutate", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/googleAds:mutate" + "path": "/v7/customers/{customer_id=*}/googleAds:mutate" } ] }, { "shortName": "Search", - "fullName": "google.ads.googleads.v4.services.GoogleAdsService.Search", + "fullName": "google.ads.googleads.v7.services.GoogleAdsService.Search", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/googleAds:search" + "path": "/v7/customers/{customer_id=*}/googleAds:search" } ] }, { "shortName": "SearchStream", - "fullName": "google.ads.googleads.v4.services.GoogleAdsService.SearchStream", + "fullName": "google.ads.googleads.v7.services.GoogleAdsService.SearchStream", "mode": "SERVER_STREAMING", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/googleAds:searchStream" + "path": "/v7/customers/{customer_id=*}/googleAds:searchStream" } ] } @@ -2106,16 +2421,16 @@ }, { "shortName": "GroupPlacementViewService", - "fullName": "google.ads.googleads.v4.services.GroupPlacementViewService", + "fullName": "google.ads.googleads.v7.services.GroupPlacementViewService", "methods": [ { "shortName": "GetGroupPlacementView", - "fullName": "google.ads.googleads.v4.services.GroupPlacementViewService.GetGroupPlacementView", + "fullName": "google.ads.googleads.v7.services.GroupPlacementViewService.GetGroupPlacementView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/groupPlacementViews/*}" + "path": "/v7/{resource_name=customers/*/groupPlacementViews/*}" } ] } @@ -2123,16 +2438,16 @@ }, { "shortName": "HotelGroupViewService", - "fullName": "google.ads.googleads.v4.services.HotelGroupViewService", + "fullName": "google.ads.googleads.v7.services.HotelGroupViewService", "methods": [ { "shortName": "GetHotelGroupView", - "fullName": "google.ads.googleads.v4.services.HotelGroupViewService.GetHotelGroupView", + "fullName": "google.ads.googleads.v7.services.HotelGroupViewService.GetHotelGroupView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/hotelGroupViews/*}" + "path": "/v7/{resource_name=customers/*/hotelGroupViews/*}" } ] } @@ -2140,16 +2455,16 @@ }, { "shortName": "HotelPerformanceViewService", - "fullName": "google.ads.googleads.v4.services.HotelPerformanceViewService", + "fullName": "google.ads.googleads.v7.services.HotelPerformanceViewService", "methods": [ { "shortName": "GetHotelPerformanceView", - "fullName": "google.ads.googleads.v4.services.HotelPerformanceViewService.GetHotelPerformanceView", + "fullName": "google.ads.googleads.v7.services.HotelPerformanceViewService.GetHotelPerformanceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/hotelPerformanceView}" + "path": "/v7/{resource_name=customers/*/hotelPerformanceView}" } ] } @@ -2157,16 +2472,16 @@ }, { "shortName": "IncomeRangeViewService", - "fullName": "google.ads.googleads.v4.services.IncomeRangeViewService", + "fullName": "google.ads.googleads.v7.services.IncomeRangeViewService", "methods": [ { "shortName": "GetIncomeRangeView", - "fullName": "google.ads.googleads.v4.services.IncomeRangeViewService.GetIncomeRangeView", + "fullName": "google.ads.googleads.v7.services.IncomeRangeViewService.GetIncomeRangeView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/incomeRangeViews/*}" + "path": "/v7/{resource_name=customers/*/incomeRangeViews/*}" } ] } @@ -2174,16 +2489,16 @@ }, { "shortName": "InvoiceService", - "fullName": "google.ads.googleads.v4.services.InvoiceService", + "fullName": "google.ads.googleads.v7.services.InvoiceService", "methods": [ { "shortName": "ListInvoices", - "fullName": "google.ads.googleads.v4.services.InvoiceService.ListInvoices", + "fullName": "google.ads.googleads.v7.services.InvoiceService.ListInvoices", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/customers/{customer_id=*}/invoices" + "path": "/v7/customers/{customer_id=*}/invoices" } ] } @@ -2191,27 +2506,27 @@ }, { "shortName": "KeywordPlanAdGroupKeywordService", - "fullName": "google.ads.googleads.v4.services.KeywordPlanAdGroupKeywordService", + "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupKeywordService", "methods": [ { "shortName": "GetKeywordPlanAdGroupKeyword", - "fullName": "google.ads.googleads.v4.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword", + "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" + "path": "/v7/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" } ] }, { "shortName": "MutateKeywordPlanAdGroupKeywords", - "fullName": "google.ads.googleads.v4.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords", + "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" + "path": "/v7/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" } ] } @@ -2219,27 +2534,27 @@ }, { "shortName": "KeywordPlanAdGroupService", - "fullName": "google.ads.googleads.v4.services.KeywordPlanAdGroupService", + "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupService", "methods": [ { "shortName": "GetKeywordPlanAdGroup", - "fullName": "google.ads.googleads.v4.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup", + "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/keywordPlanAdGroups/*}" + "path": "/v7/{resource_name=customers/*/keywordPlanAdGroups/*}" } ] }, { "shortName": "MutateKeywordPlanAdGroups", - "fullName": "google.ads.googleads.v4.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups", + "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/keywordPlanAdGroups:mutate" + "path": "/v7/customers/{customer_id=*}/keywordPlanAdGroups:mutate" } ] } @@ -2247,27 +2562,27 @@ }, { "shortName": "KeywordPlanCampaignKeywordService", - "fullName": "google.ads.googleads.v4.services.KeywordPlanCampaignKeywordService", + "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignKeywordService", "methods": [ { "shortName": "GetKeywordPlanCampaignKeyword", - "fullName": "google.ads.googleads.v4.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword", + "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" + "path": "/v7/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" } ] }, { "shortName": "MutateKeywordPlanCampaignKeywords", - "fullName": "google.ads.googleads.v4.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords", + "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" + "path": "/v7/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" } ] } @@ -2275,27 +2590,27 @@ }, { "shortName": "KeywordPlanCampaignService", - "fullName": "google.ads.googleads.v4.services.KeywordPlanCampaignService", + "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignService", "methods": [ { "shortName": "GetKeywordPlanCampaign", - "fullName": "google.ads.googleads.v4.services.KeywordPlanCampaignService.GetKeywordPlanCampaign", + "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignService.GetKeywordPlanCampaign", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/keywordPlanCampaigns/*}" + "path": "/v7/{resource_name=customers/*/keywordPlanCampaigns/*}" } ] }, { "shortName": "MutateKeywordPlanCampaigns", - "fullName": "google.ads.googleads.v4.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns", + "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/keywordPlanCampaigns:mutate" + "path": "/v7/customers/{customer_id=*}/keywordPlanCampaigns:mutate" } ] } @@ -2303,16 +2618,16 @@ }, { "shortName": "KeywordPlanIdeaService", - "fullName": "google.ads.googleads.v4.services.KeywordPlanIdeaService", + "fullName": "google.ads.googleads.v7.services.KeywordPlanIdeaService", "methods": [ { "shortName": "GenerateKeywordIdeas", - "fullName": "google.ads.googleads.v4.services.KeywordPlanIdeaService.GenerateKeywordIdeas", + "fullName": "google.ads.googleads.v7.services.KeywordPlanIdeaService.GenerateKeywordIdeas", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}:generateKeywordIdeas" + "path": "/v7/customers/{customer_id=*}:generateKeywordIdeas" } ] } @@ -2320,60 +2635,71 @@ }, { "shortName": "KeywordPlanService", - "fullName": "google.ads.googleads.v4.services.KeywordPlanService", + "fullName": "google.ads.googleads.v7.services.KeywordPlanService", "methods": [ { "shortName": "GenerateForecastCurve", - "fullName": "google.ads.googleads.v4.services.KeywordPlanService.GenerateForecastCurve", + "fullName": "google.ads.googleads.v7.services.KeywordPlanService.GenerateForecastCurve", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" + "path": "/v7/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" } ] }, { "shortName": "GenerateForecastMetrics", - "fullName": "google.ads.googleads.v4.services.KeywordPlanService.GenerateForecastMetrics", + "fullName": "google.ads.googleads.v7.services.KeywordPlanService.GenerateForecastMetrics", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" + } + ] + }, + { + "shortName": "GenerateForecastTimeSeries", + "fullName": "google.ads.googleads.v7.services.KeywordPlanService.GenerateForecastTimeSeries", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" + "path": "/v7/{keyword_plan=customers/*/keywordPlans/*}:generateForecastTimeSeries" } ] }, { "shortName": "GenerateHistoricalMetrics", - "fullName": "google.ads.googleads.v4.services.KeywordPlanService.GenerateHistoricalMetrics", + "fullName": "google.ads.googleads.v7.services.KeywordPlanService.GenerateHistoricalMetrics", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" + "path": "/v7/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" } ] }, { "shortName": "GetKeywordPlan", - "fullName": "google.ads.googleads.v4.services.KeywordPlanService.GetKeywordPlan", + "fullName": "google.ads.googleads.v7.services.KeywordPlanService.GetKeywordPlan", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/keywordPlans/*}" + "path": "/v7/{resource_name=customers/*/keywordPlans/*}" } ] }, { "shortName": "MutateKeywordPlans", - "fullName": "google.ads.googleads.v4.services.KeywordPlanService.MutateKeywordPlans", + "fullName": "google.ads.googleads.v7.services.KeywordPlanService.MutateKeywordPlans", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/keywordPlans:mutate" + "path": "/v7/customers/{customer_id=*}/keywordPlans:mutate" } ] } @@ -2381,16 +2707,16 @@ }, { "shortName": "KeywordViewService", - "fullName": "google.ads.googleads.v4.services.KeywordViewService", + "fullName": "google.ads.googleads.v7.services.KeywordViewService", "methods": [ { "shortName": "GetKeywordView", - "fullName": "google.ads.googleads.v4.services.KeywordViewService.GetKeywordView", + "fullName": "google.ads.googleads.v7.services.KeywordViewService.GetKeywordView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/keywordViews/*}" + "path": "/v7/{resource_name=customers/*/keywordViews/*}" } ] } @@ -2398,27 +2724,27 @@ }, { "shortName": "LabelService", - "fullName": "google.ads.googleads.v4.services.LabelService", + "fullName": "google.ads.googleads.v7.services.LabelService", "methods": [ { "shortName": "GetLabel", - "fullName": "google.ads.googleads.v4.services.LabelService.GetLabel", + "fullName": "google.ads.googleads.v7.services.LabelService.GetLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/labels/*}" + "path": "/v7/{resource_name=customers/*/labels/*}" } ] }, { "shortName": "MutateLabels", - "fullName": "google.ads.googleads.v4.services.LabelService.MutateLabels", + "fullName": "google.ads.googleads.v7.services.LabelService.MutateLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/labels:mutate" + "path": "/v7/customers/{customer_id=*}/labels:mutate" } ] } @@ -2426,16 +2752,16 @@ }, { "shortName": "LandingPageViewService", - "fullName": "google.ads.googleads.v4.services.LandingPageViewService", + "fullName": "google.ads.googleads.v7.services.LandingPageViewService", "methods": [ { "shortName": "GetLandingPageView", - "fullName": "google.ads.googleads.v4.services.LandingPageViewService.GetLandingPageView", + "fullName": "google.ads.googleads.v7.services.LandingPageViewService.GetLandingPageView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/landingPageViews/*}" + "path": "/v7/{resource_name=customers/*/landingPageViews/*}" } ] } @@ -2443,16 +2769,33 @@ }, { "shortName": "LanguageConstantService", - "fullName": "google.ads.googleads.v4.services.LanguageConstantService", + "fullName": "google.ads.googleads.v7.services.LanguageConstantService", "methods": [ { "shortName": "GetLanguageConstant", - "fullName": "google.ads.googleads.v4.services.LanguageConstantService.GetLanguageConstant", + "fullName": "google.ads.googleads.v7.services.LanguageConstantService.GetLanguageConstant", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=languageConstants/*}" + } + ] + } + ] + }, + { + "shortName": "LifeEventService", + "fullName": "google.ads.googleads.v7.services.LifeEventService", + "methods": [ + { + "shortName": "GetLifeEvent", + "fullName": "google.ads.googleads.v7.services.LifeEventService.GetLifeEvent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=languageConstants/*}" + "path": "/v7/{resource_name=customers/*/lifeEvents/*}" } ] } @@ -2460,16 +2803,16 @@ }, { "shortName": "LocationViewService", - "fullName": "google.ads.googleads.v4.services.LocationViewService", + "fullName": "google.ads.googleads.v7.services.LocationViewService", "methods": [ { "shortName": "GetLocationView", - "fullName": "google.ads.googleads.v4.services.LocationViewService.GetLocationView", + "fullName": "google.ads.googleads.v7.services.LocationViewService.GetLocationView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/locationViews/*}" + "path": "/v7/{resource_name=customers/*/locationViews/*}" } ] } @@ -2477,16 +2820,16 @@ }, { "shortName": "ManagedPlacementViewService", - "fullName": "google.ads.googleads.v4.services.ManagedPlacementViewService", + "fullName": "google.ads.googleads.v7.services.ManagedPlacementViewService", "methods": [ { "shortName": "GetManagedPlacementView", - "fullName": "google.ads.googleads.v4.services.ManagedPlacementViewService.GetManagedPlacementView", + "fullName": "google.ads.googleads.v7.services.ManagedPlacementViewService.GetManagedPlacementView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/managedPlacementViews/*}" + "path": "/v7/{resource_name=customers/*/managedPlacementViews/*}" } ] } @@ -2494,27 +2837,27 @@ }, { "shortName": "MediaFileService", - "fullName": "google.ads.googleads.v4.services.MediaFileService", + "fullName": "google.ads.googleads.v7.services.MediaFileService", "methods": [ { "shortName": "GetMediaFile", - "fullName": "google.ads.googleads.v4.services.MediaFileService.GetMediaFile", + "fullName": "google.ads.googleads.v7.services.MediaFileService.GetMediaFile", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/mediaFiles/*}" + "path": "/v7/{resource_name=customers/*/mediaFiles/*}" } ] }, { "shortName": "MutateMediaFiles", - "fullName": "google.ads.googleads.v4.services.MediaFileService.MutateMediaFiles", + "fullName": "google.ads.googleads.v7.services.MediaFileService.MutateMediaFiles", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/mediaFiles:mutate" + "path": "/v7/customers/{customer_id=*}/mediaFiles:mutate" } ] } @@ -2522,38 +2865,38 @@ }, { "shortName": "MerchantCenterLinkService", - "fullName": "google.ads.googleads.v4.services.MerchantCenterLinkService", + "fullName": "google.ads.googleads.v7.services.MerchantCenterLinkService", "methods": [ { "shortName": "GetMerchantCenterLink", - "fullName": "google.ads.googleads.v4.services.MerchantCenterLinkService.GetMerchantCenterLink", + "fullName": "google.ads.googleads.v7.services.MerchantCenterLinkService.GetMerchantCenterLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/merchantCenterLinks/*}" + "path": "/v7/{resource_name=customers/*/merchantCenterLinks/*}" } ] }, { "shortName": "ListMerchantCenterLinks", - "fullName": "google.ads.googleads.v4.services.MerchantCenterLinkService.ListMerchantCenterLinks", + "fullName": "google.ads.googleads.v7.services.MerchantCenterLinkService.ListMerchantCenterLinks", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/customers/{customer_id=*}/merchantCenterLinks" + "path": "/v7/customers/{customer_id=*}/merchantCenterLinks" } ] }, { "shortName": "MutateMerchantCenterLink", - "fullName": "google.ads.googleads.v4.services.MerchantCenterLinkService.MutateMerchantCenterLink", + "fullName": "google.ads.googleads.v7.services.MerchantCenterLinkService.MutateMerchantCenterLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/merchantCenterLinks:mutate" + "path": "/v7/customers/{customer_id=*}/merchantCenterLinks:mutate" } ] } @@ -2561,16 +2904,16 @@ }, { "shortName": "MobileAppCategoryConstantService", - "fullName": "google.ads.googleads.v4.services.MobileAppCategoryConstantService", + "fullName": "google.ads.googleads.v7.services.MobileAppCategoryConstantService", "methods": [ { "shortName": "GetMobileAppCategoryConstant", - "fullName": "google.ads.googleads.v4.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant", + "fullName": "google.ads.googleads.v7.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=mobileAppCategoryConstants/*}" + "path": "/v7/{resource_name=mobileAppCategoryConstants/*}" } ] } @@ -2578,16 +2921,16 @@ }, { "shortName": "MobileDeviceConstantService", - "fullName": "google.ads.googleads.v4.services.MobileDeviceConstantService", + "fullName": "google.ads.googleads.v7.services.MobileDeviceConstantService", "methods": [ { "shortName": "GetMobileDeviceConstant", - "fullName": "google.ads.googleads.v4.services.MobileDeviceConstantService.GetMobileDeviceConstant", + "fullName": "google.ads.googleads.v7.services.MobileDeviceConstantService.GetMobileDeviceConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=mobileDeviceConstants/*}" + "path": "/v7/{resource_name=mobileDeviceConstants/*}" } ] } @@ -2595,49 +2938,49 @@ }, { "shortName": "OfflineUserDataJobService", - "fullName": "google.ads.googleads.v4.services.OfflineUserDataJobService", + "fullName": "google.ads.googleads.v7.services.OfflineUserDataJobService", "methods": [ { "shortName": "AddOfflineUserDataJobOperations", - "fullName": "google.ads.googleads.v4.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations", + "fullName": "google.ads.googleads.v7.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" + "path": "/v7/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" } ] }, { "shortName": "CreateOfflineUserDataJob", - "fullName": "google.ads.googleads.v4.services.OfflineUserDataJobService.CreateOfflineUserDataJob", + "fullName": "google.ads.googleads.v7.services.OfflineUserDataJobService.CreateOfflineUserDataJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/offlineUserDataJobs:create" + "path": "/v7/customers/{customer_id=*}/offlineUserDataJobs:create" } ] }, { "shortName": "GetOfflineUserDataJob", - "fullName": "google.ads.googleads.v4.services.OfflineUserDataJobService.GetOfflineUserDataJob", + "fullName": "google.ads.googleads.v7.services.OfflineUserDataJobService.GetOfflineUserDataJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/offlineUserDataJobs/*}" + "path": "/v7/{resource_name=customers/*/offlineUserDataJobs/*}" } ] }, { "shortName": "RunOfflineUserDataJob", - "fullName": "google.ads.googleads.v4.services.OfflineUserDataJobService.RunOfflineUserDataJob", + "fullName": "google.ads.googleads.v7.services.OfflineUserDataJobService.RunOfflineUserDataJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/{resource_name=customers/*/offlineUserDataJobs/*}:run" + "path": "/v7/{resource_name=customers/*/offlineUserDataJobs/*}:run" } ] } @@ -2645,16 +2988,16 @@ }, { "shortName": "OperatingSystemVersionConstantService", - "fullName": "google.ads.googleads.v4.services.OperatingSystemVersionConstantService", + "fullName": "google.ads.googleads.v7.services.OperatingSystemVersionConstantService", "methods": [ { "shortName": "GetOperatingSystemVersionConstant", - "fullName": "google.ads.googleads.v4.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant", + "fullName": "google.ads.googleads.v7.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=operatingSystemVersionConstants/*}" + "path": "/v7/{resource_name=operatingSystemVersionConstants/*}" } ] } @@ -2662,16 +3005,16 @@ }, { "shortName": "PaidOrganicSearchTermViewService", - "fullName": "google.ads.googleads.v4.services.PaidOrganicSearchTermViewService", + "fullName": "google.ads.googleads.v7.services.PaidOrganicSearchTermViewService", "methods": [ { "shortName": "GetPaidOrganicSearchTermView", - "fullName": "google.ads.googleads.v4.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView", + "fullName": "google.ads.googleads.v7.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/paidOrganicSearchTermViews/*}" + "path": "/v7/{resource_name=customers/*/paidOrganicSearchTermViews/*}" } ] } @@ -2679,16 +3022,16 @@ }, { "shortName": "ParentalStatusViewService", - "fullName": "google.ads.googleads.v4.services.ParentalStatusViewService", + "fullName": "google.ads.googleads.v7.services.ParentalStatusViewService", "methods": [ { "shortName": "GetParentalStatusView", - "fullName": "google.ads.googleads.v4.services.ParentalStatusViewService.GetParentalStatusView", + "fullName": "google.ads.googleads.v7.services.ParentalStatusViewService.GetParentalStatusView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/parentalStatusViews/*}" + "path": "/v7/{resource_name=customers/*/parentalStatusViews/*}" } ] } @@ -2696,16 +3039,16 @@ }, { "shortName": "PaymentsAccountService", - "fullName": "google.ads.googleads.v4.services.PaymentsAccountService", + "fullName": "google.ads.googleads.v7.services.PaymentsAccountService", "methods": [ { "shortName": "ListPaymentsAccounts", - "fullName": "google.ads.googleads.v4.services.PaymentsAccountService.ListPaymentsAccounts", + "fullName": "google.ads.googleads.v7.services.PaymentsAccountService.ListPaymentsAccounts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/customers/{customer_id=*}/paymentsAccounts" + "path": "/v7/customers/{customer_id=*}/paymentsAccounts" } ] } @@ -2713,16 +3056,16 @@ }, { "shortName": "ProductBiddingCategoryConstantService", - "fullName": "google.ads.googleads.v4.services.ProductBiddingCategoryConstantService", + "fullName": "google.ads.googleads.v7.services.ProductBiddingCategoryConstantService", "methods": [ { "shortName": "GetProductBiddingCategoryConstant", - "fullName": "google.ads.googleads.v4.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant", + "fullName": "google.ads.googleads.v7.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=productBiddingCategoryConstants/*}" + "path": "/v7/{resource_name=productBiddingCategoryConstants/*}" } ] } @@ -2730,16 +3073,16 @@ }, { "shortName": "ProductGroupViewService", - "fullName": "google.ads.googleads.v4.services.ProductGroupViewService", + "fullName": "google.ads.googleads.v7.services.ProductGroupViewService", "methods": [ { "shortName": "GetProductGroupView", - "fullName": "google.ads.googleads.v4.services.ProductGroupViewService.GetProductGroupView", + "fullName": "google.ads.googleads.v7.services.ProductGroupViewService.GetProductGroupView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/productGroupViews/*}" + "path": "/v7/{resource_name=customers/*/productGroupViews/*}" } ] } @@ -2747,49 +3090,49 @@ }, { "shortName": "ReachPlanService", - "fullName": "google.ads.googleads.v4.services.ReachPlanService", + "fullName": "google.ads.googleads.v7.services.ReachPlanService", "methods": [ { "shortName": "GenerateProductMixIdeas", - "fullName": "google.ads.googleads.v4.services.ReachPlanService.GenerateProductMixIdeas", + "fullName": "google.ads.googleads.v7.services.ReachPlanService.GenerateProductMixIdeas", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}:generateProductMixIdeas" + "path": "/v7/customers/{customer_id=*}:generateProductMixIdeas" } ] }, { "shortName": "GenerateReachForecast", - "fullName": "google.ads.googleads.v4.services.ReachPlanService.GenerateReachForecast", + "fullName": "google.ads.googleads.v7.services.ReachPlanService.GenerateReachForecast", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}:generateReachForecast" + "path": "/v7/customers/{customer_id=*}:generateReachForecast" } ] }, { "shortName": "ListPlannableLocations", - "fullName": "google.ads.googleads.v4.services.ReachPlanService.ListPlannableLocations", + "fullName": "google.ads.googleads.v7.services.ReachPlanService.ListPlannableLocations", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4:listPlannableLocations" + "path": "/v7:listPlannableLocations" } ] }, { "shortName": "ListPlannableProducts", - "fullName": "google.ads.googleads.v4.services.ReachPlanService.ListPlannableProducts", + "fullName": "google.ads.googleads.v7.services.ReachPlanService.ListPlannableProducts", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4:listPlannableProducts" + "path": "/v7:listPlannableProducts" } ] } @@ -2797,38 +3140,38 @@ }, { "shortName": "RecommendationService", - "fullName": "google.ads.googleads.v4.services.RecommendationService", + "fullName": "google.ads.googleads.v7.services.RecommendationService", "methods": [ { "shortName": "ApplyRecommendation", - "fullName": "google.ads.googleads.v4.services.RecommendationService.ApplyRecommendation", + "fullName": "google.ads.googleads.v7.services.RecommendationService.ApplyRecommendation", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/recommendations:apply" + "path": "/v7/customers/{customer_id=*}/recommendations:apply" } ] }, { "shortName": "DismissRecommendation", - "fullName": "google.ads.googleads.v4.services.RecommendationService.DismissRecommendation", + "fullName": "google.ads.googleads.v7.services.RecommendationService.DismissRecommendation", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/recommendations:dismiss" + "path": "/v7/customers/{customer_id=*}/recommendations:dismiss" } ] }, { "shortName": "GetRecommendation", - "fullName": "google.ads.googleads.v4.services.RecommendationService.GetRecommendation", + "fullName": "google.ads.googleads.v7.services.RecommendationService.GetRecommendation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/recommendations/*}" + "path": "/v7/{resource_name=customers/*/recommendations/*}" } ] } @@ -2836,27 +3179,27 @@ }, { "shortName": "RemarketingActionService", - "fullName": "google.ads.googleads.v4.services.RemarketingActionService", + "fullName": "google.ads.googleads.v7.services.RemarketingActionService", "methods": [ { "shortName": "GetRemarketingAction", - "fullName": "google.ads.googleads.v4.services.RemarketingActionService.GetRemarketingAction", + "fullName": "google.ads.googleads.v7.services.RemarketingActionService.GetRemarketingAction", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/remarketingActions/*}" + "path": "/v7/{resource_name=customers/*/remarketingActions/*}" } ] }, { "shortName": "MutateRemarketingActions", - "fullName": "google.ads.googleads.v4.services.RemarketingActionService.MutateRemarketingActions", + "fullName": "google.ads.googleads.v7.services.RemarketingActionService.MutateRemarketingActions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/remarketingActions:mutate" + "path": "/v7/customers/{customer_id=*}/remarketingActions:mutate" } ] } @@ -2864,16 +3207,16 @@ }, { "shortName": "SearchTermViewService", - "fullName": "google.ads.googleads.v4.services.SearchTermViewService", + "fullName": "google.ads.googleads.v7.services.SearchTermViewService", "methods": [ { "shortName": "GetSearchTermView", - "fullName": "google.ads.googleads.v4.services.SearchTermViewService.GetSearchTermView", + "fullName": "google.ads.googleads.v7.services.SearchTermViewService.GetSearchTermView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/searchTermViews/*}" + "path": "/v7/{resource_name=customers/*/searchTermViews/*}" } ] } @@ -2881,27 +3224,27 @@ }, { "shortName": "SharedCriterionService", - "fullName": "google.ads.googleads.v4.services.SharedCriterionService", + "fullName": "google.ads.googleads.v7.services.SharedCriterionService", "methods": [ { "shortName": "GetSharedCriterion", - "fullName": "google.ads.googleads.v4.services.SharedCriterionService.GetSharedCriterion", + "fullName": "google.ads.googleads.v7.services.SharedCriterionService.GetSharedCriterion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/sharedCriteria/*}" + "path": "/v7/{resource_name=customers/*/sharedCriteria/*}" } ] }, { "shortName": "MutateSharedCriteria", - "fullName": "google.ads.googleads.v4.services.SharedCriterionService.MutateSharedCriteria", + "fullName": "google.ads.googleads.v7.services.SharedCriterionService.MutateSharedCriteria", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/sharedCriteria:mutate" + "path": "/v7/customers/{customer_id=*}/sharedCriteria:mutate" } ] } @@ -2909,27 +3252,27 @@ }, { "shortName": "SharedSetService", - "fullName": "google.ads.googleads.v4.services.SharedSetService", + "fullName": "google.ads.googleads.v7.services.SharedSetService", "methods": [ { "shortName": "GetSharedSet", - "fullName": "google.ads.googleads.v4.services.SharedSetService.GetSharedSet", + "fullName": "google.ads.googleads.v7.services.SharedSetService.GetSharedSet", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/sharedSets/*}" + "path": "/v7/{resource_name=customers/*/sharedSets/*}" } ] }, { "shortName": "MutateSharedSets", - "fullName": "google.ads.googleads.v4.services.SharedSetService.MutateSharedSets", + "fullName": "google.ads.googleads.v7.services.SharedSetService.MutateSharedSets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/sharedSets:mutate" + "path": "/v7/customers/{customer_id=*}/sharedSets:mutate" } ] } @@ -2937,16 +3280,16 @@ }, { "shortName": "ShoppingPerformanceViewService", - "fullName": "google.ads.googleads.v4.services.ShoppingPerformanceViewService", + "fullName": "google.ads.googleads.v7.services.ShoppingPerformanceViewService", "methods": [ { "shortName": "GetShoppingPerformanceView", - "fullName": "google.ads.googleads.v4.services.ShoppingPerformanceViewService.GetShoppingPerformanceView", + "fullName": "google.ads.googleads.v7.services.ShoppingPerformanceViewService.GetShoppingPerformanceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/shoppingPerformanceView}" + "path": "/v7/{resource_name=customers/*/shoppingPerformanceView}" } ] } @@ -2954,33 +3297,44 @@ }, { "shortName": "ThirdPartyAppAnalyticsLinkService", - "fullName": "google.ads.googleads.v4.services.ThirdPartyAppAnalyticsLinkService", + "fullName": "google.ads.googleads.v7.services.ThirdPartyAppAnalyticsLinkService", "methods": [ { "shortName": "GetThirdPartyAppAnalyticsLink", - "fullName": "google.ads.googleads.v4.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink", + "fullName": "google.ads.googleads.v7.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" + "path": "/v7/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" } ] - } - ] - }, - { - "shortName": "TopicConstantService", - "fullName": "google.ads.googleads.v4.services.TopicConstantService", - "methods": [ + }, { - "shortName": "GetTopicConstant", - "fullName": "google.ads.googleads.v4.services.TopicConstantService.GetTopicConstant", + "shortName": "RegenerateShareableLinkId", + "fullName": "google.ads.googleads.v7.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v7/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}:regenerateShareableLinkId" + } + ] + } + ] + }, + { + "shortName": "TopicConstantService", + "fullName": "google.ads.googleads.v7.services.TopicConstantService", + "methods": [ + { + "shortName": "GetTopicConstant", + "fullName": "google.ads.googleads.v7.services.TopicConstantService.GetTopicConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=topicConstants/*}" + "path": "/v7/{resource_name=topicConstants/*}" } ] } @@ -2988,16 +3342,16 @@ }, { "shortName": "TopicViewService", - "fullName": "google.ads.googleads.v4.services.TopicViewService", + "fullName": "google.ads.googleads.v7.services.TopicViewService", "methods": [ { "shortName": "GetTopicView", - "fullName": "google.ads.googleads.v4.services.TopicViewService.GetTopicView", + "fullName": "google.ads.googleads.v7.services.TopicViewService.GetTopicView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/topicViews/*}" + "path": "/v7/{resource_name=customers/*/topicViews/*}" } ] } @@ -3005,16 +3359,16 @@ }, { "shortName": "UserDataService", - "fullName": "google.ads.googleads.v4.services.UserDataService", + "fullName": "google.ads.googleads.v7.services.UserDataService", "methods": [ { "shortName": "UploadUserData", - "fullName": "google.ads.googleads.v4.services.UserDataService.UploadUserData", + "fullName": "google.ads.googleads.v7.services.UserDataService.UploadUserData", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}:uploadUserData" + "path": "/v7/customers/{customer_id=*}:uploadUserData" } ] } @@ -3022,16 +3376,16 @@ }, { "shortName": "UserInterestService", - "fullName": "google.ads.googleads.v4.services.UserInterestService", + "fullName": "google.ads.googleads.v7.services.UserInterestService", "methods": [ { "shortName": "GetUserInterest", - "fullName": "google.ads.googleads.v4.services.UserInterestService.GetUserInterest", + "fullName": "google.ads.googleads.v7.services.UserInterestService.GetUserInterest", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/userInterests/*}" + "path": "/v7/{resource_name=customers/*/userInterests/*}" } ] } @@ -3039,27 +3393,27 @@ }, { "shortName": "UserListService", - "fullName": "google.ads.googleads.v4.services.UserListService", + "fullName": "google.ads.googleads.v7.services.UserListService", "methods": [ { "shortName": "GetUserList", - "fullName": "google.ads.googleads.v4.services.UserListService.GetUserList", + "fullName": "google.ads.googleads.v7.services.UserListService.GetUserList", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/userLists/*}" + "path": "/v7/{resource_name=customers/*/userLists/*}" } ] }, { "shortName": "MutateUserLists", - "fullName": "google.ads.googleads.v4.services.UserListService.MutateUserLists", + "fullName": "google.ads.googleads.v7.services.UserListService.MutateUserLists", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v4/customers/{customer_id=*}/userLists:mutate" + "path": "/v7/customers/{customer_id=*}/userLists:mutate" } ] } @@ -3067,16 +3421,16 @@ }, { "shortName": "UserLocationViewService", - "fullName": "google.ads.googleads.v4.services.UserLocationViewService", + "fullName": "google.ads.googleads.v7.services.UserLocationViewService", "methods": [ { "shortName": "GetUserLocationView", - "fullName": "google.ads.googleads.v4.services.UserLocationViewService.GetUserLocationView", + "fullName": "google.ads.googleads.v7.services.UserLocationViewService.GetUserLocationView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/userLocationViews/*}" + "path": "/v7/{resource_name=customers/*/userLocationViews/*}" } ] } @@ -3084,123 +3438,158 @@ }, { "shortName": "VideoService", - "fullName": "google.ads.googleads.v4.services.VideoService", + "fullName": "google.ads.googleads.v7.services.VideoService", "methods": [ { "shortName": "GetVideo", - "fullName": "google.ads.googleads.v4.services.VideoService.GetVideo", + "fullName": "google.ads.googleads.v7.services.VideoService.GetVideo", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v7/{resource_name=customers/*/videos/*}" + } + ] + } + ] + }, + { + "shortName": "WebpageViewService", + "fullName": "google.ads.googleads.v7.services.WebpageViewService", + "methods": [ + { + "shortName": "GetWebpageView", + "fullName": "google.ads.googleads.v7.services.WebpageViewService.GetWebpageView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v4/{resource_name=customers/*/videos/*}" + "path": "/v7/{resource_name=customers/*/webpageViews/*}" } ] } ] } - ] + ], + "configFile": "googleads_v7.yaml" }, { - "id": "google.ads.googleads.v5", - "directory": "google/ads/googleads/v5", - "version": "v5", - "majorVersion": "v5", + "id": "google.ads.googleads.v8", + "directory": "google/ads/googleads/v8", + "version": "v8", + "majorVersion": "v8", "hostName": "googleads.googleapis.com", "title": "Google Ads API", "description": "Manage your Google Ads accounts, campaigns, and reports with this API.", "importDirectories": [ - "google/ads/googleads/v5/common", - "google/ads/googleads/v5/enums", - "google/ads/googleads/v5/errors", - "google/ads/googleads/v5/resources", - "google/ads/googleads/v5/services", + "google/ads/googleads/v8/common", + "google/ads/googleads/v8/enums", + "google/ads/googleads/v8/errors", + "google/ads/googleads/v8/resources", + "google/ads/googleads/v8/services", "google/api", "google/longrunning", "google/protobuf", "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.ads.googleads.v5.errors": 114, - "com.google.ads.googleads.v5.enums": 225, - "com.google.ads.googleads.v5.common": 28, - "com.google.ads.googleads.v5.resources": 107, - "com.google.ads.googleads.v5.services": 113 + "Google.Ads.GoogleAds.V8.Common": 30, + "Google.Ads.GoogleAds.V8.Enums": 259, + "Google.Ads.GoogleAds.V8.Errors": 122, + "Google.Ads.GoogleAds.V8.Resources": 132, + "Google.Ads.GoogleAds.V8.Services": 137 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 587 + "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common": 30, + "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums": 259, + "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors": 122, + "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources": 132, + "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services": 137 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors": 114, - "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums": 225, - "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common": 28, - "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources": 107, - "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services": 113 + "true": 680 } }, - "objc_class_prefix": { + "java_package": { "valueCounts": { - "GAA": 587 + "com.google.ads.googleads.v8.common": 30, + "com.google.ads.googleads.v8.enums": 259, + "com.google.ads.googleads.v8.errors": 122, + "com.google.ads.googleads.v8.resources": 132, + "com.google.ads.googleads.v8.services": 137 } }, - "csharp_namespace": { + "objc_class_prefix": { "valueCounts": { - "Google.Ads.GoogleAds.V5.Errors": 114, - "Google.Ads.GoogleAds.V5.Enums": 225, - "Google.Ads.GoogleAds.V5.Common": 28, - "Google.Ads.GoogleAds.V5.Resources": 107, - "Google.Ads.GoogleAds.V5.Services": 113 + "GAA": 680 } }, "php_namespace": { "valueCounts": { - "Google\\Ads\\GoogleAds\\V5\\Errors": 114, - "Google\\Ads\\GoogleAds\\V5\\Enums": 225, - "Google\\Ads\\GoogleAds\\V5\\Common": 28, - "Google\\Ads\\GoogleAds\\V5\\Resources": 107, - "Google\\Ads\\GoogleAds\\V5\\Services": 113 + "Google\\Ads\\GoogleAds\\V8\\Common": 30, + "Google\\Ads\\GoogleAds\\V8\\Enums": 259, + "Google\\Ads\\GoogleAds\\V8\\Errors": 122, + "Google\\Ads\\GoogleAds\\V8\\Resources": 132, + "Google\\Ads\\GoogleAds\\V8\\Services": 137 } }, "ruby_package": { "valueCounts": { - "Google::Ads::GoogleAds::V5::Errors": 114, - "Google::Ads::GoogleAds::V5::Enums": 225, - "Google::Ads::GoogleAds::V5::Common": 28, - "Google::Ads::GoogleAds::V5::Resources": 107, - "Google::Ads::GoogleAds::V5::Services": 113 + "Google::Ads::GoogleAds::V8::Common": 30, + "Google::Ads::GoogleAds::V8::Enums": 259, + "Google::Ads::GoogleAds::V8::Errors": 122, + "Google::Ads::GoogleAds::V8::Resources": 132, + "Google::Ads::GoogleAds::V8::Services": 137 } } }, "services": [ + { + "shortName": "AccessibleBiddingStrategyService", + "fullName": "google.ads.googleads.v8.services.AccessibleBiddingStrategyService", + "methods": [ + { + "shortName": "GetAccessibleBiddingStrategy", + "fullName": "google.ads.googleads.v8.services.AccessibleBiddingStrategyService.GetAccessibleBiddingStrategy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/accessibleBiddingStrategies/*}" + } + ] + } + ] + }, { "shortName": "AccountBudgetProposalService", - "fullName": "google.ads.googleads.v5.services.AccountBudgetProposalService", + "fullName": "google.ads.googleads.v8.services.AccountBudgetProposalService", "methods": [ { "shortName": "GetAccountBudgetProposal", - "fullName": "google.ads.googleads.v5.services.AccountBudgetProposalService.GetAccountBudgetProposal", + "fullName": "google.ads.googleads.v8.services.AccountBudgetProposalService.GetAccountBudgetProposal", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/accountBudgetProposals/*}" + "path": "/v8/{resource_name=customers/*/accountBudgetProposals/*}" } ] }, { "shortName": "MutateAccountBudgetProposal", - "fullName": "google.ads.googleads.v5.services.AccountBudgetProposalService.MutateAccountBudgetProposal", + "fullName": "google.ads.googleads.v8.services.AccountBudgetProposalService.MutateAccountBudgetProposal", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/accountBudgetProposals:mutate" + "path": "/v8/customers/{customer_id=*}/accountBudgetProposals:mutate" } ] } @@ -3208,16 +3597,16 @@ }, { "shortName": "AccountBudgetService", - "fullName": "google.ads.googleads.v5.services.AccountBudgetService", + "fullName": "google.ads.googleads.v8.services.AccountBudgetService", "methods": [ { "shortName": "GetAccountBudget", - "fullName": "google.ads.googleads.v5.services.AccountBudgetService.GetAccountBudget", + "fullName": "google.ads.googleads.v8.services.AccountBudgetService.GetAccountBudget", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/accountBudgets/*}" + "path": "/v8/{resource_name=customers/*/accountBudgets/*}" } ] } @@ -3225,38 +3614,38 @@ }, { "shortName": "AccountLinkService", - "fullName": "google.ads.googleads.v5.services.AccountLinkService", + "fullName": "google.ads.googleads.v8.services.AccountLinkService", "methods": [ { "shortName": "CreateAccountLink", - "fullName": "google.ads.googleads.v5.services.AccountLinkService.CreateAccountLink", + "fullName": "google.ads.googleads.v8.services.AccountLinkService.CreateAccountLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/accountLinks:create" + "path": "/v8/customers/{customer_id=*}/accountLinks:create" } ] }, { "shortName": "GetAccountLink", - "fullName": "google.ads.googleads.v5.services.AccountLinkService.GetAccountLink", + "fullName": "google.ads.googleads.v8.services.AccountLinkService.GetAccountLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/accountLinks/*}" + "path": "/v8/{resource_name=customers/*/accountLinks/*}" } ] }, { "shortName": "MutateAccountLink", - "fullName": "google.ads.googleads.v5.services.AccountLinkService.MutateAccountLink", + "fullName": "google.ads.googleads.v8.services.AccountLinkService.MutateAccountLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/accountLinks:mutate" + "path": "/v8/customers/{customer_id=*}/accountLinks:mutate" } ] } @@ -3264,16 +3653,16 @@ }, { "shortName": "AdGroupAdAssetViewService", - "fullName": "google.ads.googleads.v5.services.AdGroupAdAssetViewService", + "fullName": "google.ads.googleads.v8.services.AdGroupAdAssetViewService", "methods": [ { "shortName": "GetAdGroupAdAssetView", - "fullName": "google.ads.googleads.v5.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView", + "fullName": "google.ads.googleads.v8.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupAdAssetViews/*}" + "path": "/v8/{resource_name=customers/*/adGroupAdAssetViews/*}" } ] } @@ -3281,27 +3670,27 @@ }, { "shortName": "AdGroupAdLabelService", - "fullName": "google.ads.googleads.v5.services.AdGroupAdLabelService", + "fullName": "google.ads.googleads.v8.services.AdGroupAdLabelService", "methods": [ { "shortName": "GetAdGroupAdLabel", - "fullName": "google.ads.googleads.v5.services.AdGroupAdLabelService.GetAdGroupAdLabel", + "fullName": "google.ads.googleads.v8.services.AdGroupAdLabelService.GetAdGroupAdLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupAdLabels/*}" + "path": "/v8/{resource_name=customers/*/adGroupAdLabels/*}" } ] }, { "shortName": "MutateAdGroupAdLabels", - "fullName": "google.ads.googleads.v5.services.AdGroupAdLabelService.MutateAdGroupAdLabels", + "fullName": "google.ads.googleads.v8.services.AdGroupAdLabelService.MutateAdGroupAdLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/adGroupAdLabels:mutate" + "path": "/v8/customers/{customer_id=*}/adGroupAdLabels:mutate" } ] } @@ -3309,27 +3698,55 @@ }, { "shortName": "AdGroupAdService", - "fullName": "google.ads.googleads.v5.services.AdGroupAdService", + "fullName": "google.ads.googleads.v8.services.AdGroupAdService", "methods": [ { "shortName": "GetAdGroupAd", - "fullName": "google.ads.googleads.v5.services.AdGroupAdService.GetAdGroupAd", + "fullName": "google.ads.googleads.v8.services.AdGroupAdService.GetAdGroupAd", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupAds/*}" + "path": "/v8/{resource_name=customers/*/adGroupAds/*}" } ] }, { "shortName": "MutateAdGroupAds", - "fullName": "google.ads.googleads.v5.services.AdGroupAdService.MutateAdGroupAds", + "fullName": "google.ads.googleads.v8.services.AdGroupAdService.MutateAdGroupAds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/adGroupAds:mutate" + "path": "/v8/customers/{customer_id=*}/adGroupAds:mutate" + } + ] + } + ] + }, + { + "shortName": "AdGroupAssetService", + "fullName": "google.ads.googleads.v8.services.AdGroupAssetService", + "methods": [ + { + "shortName": "GetAdGroupAsset", + "fullName": "google.ads.googleads.v8.services.AdGroupAssetService.GetAdGroupAsset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/adGroupAssets/*}" + } + ] + }, + { + "shortName": "MutateAdGroupAssets", + "fullName": "google.ads.googleads.v8.services.AdGroupAssetService.MutateAdGroupAssets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/adGroupAssets:mutate" } ] } @@ -3337,16 +3754,16 @@ }, { "shortName": "AdGroupAudienceViewService", - "fullName": "google.ads.googleads.v5.services.AdGroupAudienceViewService", + "fullName": "google.ads.googleads.v8.services.AdGroupAudienceViewService", "methods": [ { "shortName": "GetAdGroupAudienceView", - "fullName": "google.ads.googleads.v5.services.AdGroupAudienceViewService.GetAdGroupAudienceView", + "fullName": "google.ads.googleads.v8.services.AdGroupAudienceViewService.GetAdGroupAudienceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupAudienceViews/*}" + "path": "/v8/{resource_name=customers/*/adGroupAudienceViews/*}" } ] } @@ -3354,27 +3771,27 @@ }, { "shortName": "AdGroupBidModifierService", - "fullName": "google.ads.googleads.v5.services.AdGroupBidModifierService", + "fullName": "google.ads.googleads.v8.services.AdGroupBidModifierService", "methods": [ { "shortName": "GetAdGroupBidModifier", - "fullName": "google.ads.googleads.v5.services.AdGroupBidModifierService.GetAdGroupBidModifier", + "fullName": "google.ads.googleads.v8.services.AdGroupBidModifierService.GetAdGroupBidModifier", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupBidModifiers/*}" + "path": "/v8/{resource_name=customers/*/adGroupBidModifiers/*}" } ] }, { "shortName": "MutateAdGroupBidModifiers", - "fullName": "google.ads.googleads.v5.services.AdGroupBidModifierService.MutateAdGroupBidModifiers", + "fullName": "google.ads.googleads.v8.services.AdGroupBidModifierService.MutateAdGroupBidModifiers", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/adGroupBidModifiers:mutate" + "path": "/v8/customers/{customer_id=*}/adGroupBidModifiers:mutate" } ] } @@ -3382,27 +3799,27 @@ }, { "shortName": "AdGroupCriterionLabelService", - "fullName": "google.ads.googleads.v5.services.AdGroupCriterionLabelService", + "fullName": "google.ads.googleads.v8.services.AdGroupCriterionLabelService", "methods": [ { "shortName": "GetAdGroupCriterionLabel", - "fullName": "google.ads.googleads.v5.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel", + "fullName": "google.ads.googleads.v8.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupCriterionLabels/*}" + "path": "/v8/{resource_name=customers/*/adGroupCriterionLabels/*}" } ] }, { "shortName": "MutateAdGroupCriterionLabels", - "fullName": "google.ads.googleads.v5.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels", + "fullName": "google.ads.googleads.v8.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/adGroupCriterionLabels:mutate" + "path": "/v8/customers/{customer_id=*}/adGroupCriterionLabels:mutate" } ] } @@ -3410,27 +3827,27 @@ }, { "shortName": "AdGroupCriterionService", - "fullName": "google.ads.googleads.v5.services.AdGroupCriterionService", + "fullName": "google.ads.googleads.v8.services.AdGroupCriterionService", "methods": [ { "shortName": "GetAdGroupCriterion", - "fullName": "google.ads.googleads.v5.services.AdGroupCriterionService.GetAdGroupCriterion", + "fullName": "google.ads.googleads.v8.services.AdGroupCriterionService.GetAdGroupCriterion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupCriteria/*}" + "path": "/v8/{resource_name=customers/*/adGroupCriteria/*}" } ] }, { "shortName": "MutateAdGroupCriteria", - "fullName": "google.ads.googleads.v5.services.AdGroupCriterionService.MutateAdGroupCriteria", + "fullName": "google.ads.googleads.v8.services.AdGroupCriterionService.MutateAdGroupCriteria", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/adGroupCriteria:mutate" + "path": "/v8/customers/{customer_id=*}/adGroupCriteria:mutate" } ] } @@ -3438,16 +3855,16 @@ }, { "shortName": "AdGroupCriterionSimulationService", - "fullName": "google.ads.googleads.v5.services.AdGroupCriterionSimulationService", + "fullName": "google.ads.googleads.v8.services.AdGroupCriterionSimulationService", "methods": [ { "shortName": "GetAdGroupCriterionSimulation", - "fullName": "google.ads.googleads.v5.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation", + "fullName": "google.ads.googleads.v8.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupCriterionSimulations/*}" + "path": "/v8/{resource_name=customers/*/adGroupCriterionSimulations/*}" } ] } @@ -3455,27 +3872,27 @@ }, { "shortName": "AdGroupExtensionSettingService", - "fullName": "google.ads.googleads.v5.services.AdGroupExtensionSettingService", + "fullName": "google.ads.googleads.v8.services.AdGroupExtensionSettingService", "methods": [ { "shortName": "GetAdGroupExtensionSetting", - "fullName": "google.ads.googleads.v5.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting", + "fullName": "google.ads.googleads.v8.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupExtensionSettings/*}" + "path": "/v8/{resource_name=customers/*/adGroupExtensionSettings/*}" } ] }, { "shortName": "MutateAdGroupExtensionSettings", - "fullName": "google.ads.googleads.v5.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings", + "fullName": "google.ads.googleads.v8.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/adGroupExtensionSettings:mutate" + "path": "/v8/customers/{customer_id=*}/adGroupExtensionSettings:mutate" } ] } @@ -3483,27 +3900,27 @@ }, { "shortName": "AdGroupFeedService", - "fullName": "google.ads.googleads.v5.services.AdGroupFeedService", + "fullName": "google.ads.googleads.v8.services.AdGroupFeedService", "methods": [ { "shortName": "GetAdGroupFeed", - "fullName": "google.ads.googleads.v5.services.AdGroupFeedService.GetAdGroupFeed", + "fullName": "google.ads.googleads.v8.services.AdGroupFeedService.GetAdGroupFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupFeeds/*}" + "path": "/v8/{resource_name=customers/*/adGroupFeeds/*}" } ] }, { "shortName": "MutateAdGroupFeeds", - "fullName": "google.ads.googleads.v5.services.AdGroupFeedService.MutateAdGroupFeeds", + "fullName": "google.ads.googleads.v8.services.AdGroupFeedService.MutateAdGroupFeeds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/adGroupFeeds:mutate" + "path": "/v8/customers/{customer_id=*}/adGroupFeeds:mutate" } ] } @@ -3511,27 +3928,27 @@ }, { "shortName": "AdGroupLabelService", - "fullName": "google.ads.googleads.v5.services.AdGroupLabelService", + "fullName": "google.ads.googleads.v8.services.AdGroupLabelService", "methods": [ { "shortName": "GetAdGroupLabel", - "fullName": "google.ads.googleads.v5.services.AdGroupLabelService.GetAdGroupLabel", + "fullName": "google.ads.googleads.v8.services.AdGroupLabelService.GetAdGroupLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupLabels/*}" + "path": "/v8/{resource_name=customers/*/adGroupLabels/*}" } ] }, { "shortName": "MutateAdGroupLabels", - "fullName": "google.ads.googleads.v5.services.AdGroupLabelService.MutateAdGroupLabels", + "fullName": "google.ads.googleads.v8.services.AdGroupLabelService.MutateAdGroupLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/adGroupLabels:mutate" + "path": "/v8/customers/{customer_id=*}/adGroupLabels:mutate" } ] } @@ -3539,27 +3956,27 @@ }, { "shortName": "AdGroupService", - "fullName": "google.ads.googleads.v5.services.AdGroupService", + "fullName": "google.ads.googleads.v8.services.AdGroupService", "methods": [ { "shortName": "GetAdGroup", - "fullName": "google.ads.googleads.v5.services.AdGroupService.GetAdGroup", + "fullName": "google.ads.googleads.v8.services.AdGroupService.GetAdGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroups/*}" + "path": "/v8/{resource_name=customers/*/adGroups/*}" } ] }, { "shortName": "MutateAdGroups", - "fullName": "google.ads.googleads.v5.services.AdGroupService.MutateAdGroups", + "fullName": "google.ads.googleads.v8.services.AdGroupService.MutateAdGroups", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/adGroups:mutate" + "path": "/v8/customers/{customer_id=*}/adGroups:mutate" } ] } @@ -3567,16 +3984,16 @@ }, { "shortName": "AdGroupSimulationService", - "fullName": "google.ads.googleads.v5.services.AdGroupSimulationService", + "fullName": "google.ads.googleads.v8.services.AdGroupSimulationService", "methods": [ { "shortName": "GetAdGroupSimulation", - "fullName": "google.ads.googleads.v5.services.AdGroupSimulationService.GetAdGroupSimulation", + "fullName": "google.ads.googleads.v8.services.AdGroupSimulationService.GetAdGroupSimulation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adGroupSimulations/*}" + "path": "/v8/{resource_name=customers/*/adGroupSimulations/*}" } ] } @@ -3584,27 +4001,27 @@ }, { "shortName": "AdParameterService", - "fullName": "google.ads.googleads.v5.services.AdParameterService", + "fullName": "google.ads.googleads.v8.services.AdParameterService", "methods": [ { "shortName": "GetAdParameter", - "fullName": "google.ads.googleads.v5.services.AdParameterService.GetAdParameter", + "fullName": "google.ads.googleads.v8.services.AdParameterService.GetAdParameter", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adParameters/*}" + "path": "/v8/{resource_name=customers/*/adParameters/*}" } ] }, { "shortName": "MutateAdParameters", - "fullName": "google.ads.googleads.v5.services.AdParameterService.MutateAdParameters", + "fullName": "google.ads.googleads.v8.services.AdParameterService.MutateAdParameters", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/adParameters:mutate" + "path": "/v8/customers/{customer_id=*}/adParameters:mutate" } ] } @@ -3612,16 +4029,16 @@ }, { "shortName": "AdScheduleViewService", - "fullName": "google.ads.googleads.v5.services.AdScheduleViewService", + "fullName": "google.ads.googleads.v8.services.AdScheduleViewService", "methods": [ { "shortName": "GetAdScheduleView", - "fullName": "google.ads.googleads.v5.services.AdScheduleViewService.GetAdScheduleView", + "fullName": "google.ads.googleads.v8.services.AdScheduleViewService.GetAdScheduleView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/adScheduleViews/*}" + "path": "/v8/{resource_name=customers/*/adScheduleViews/*}" } ] } @@ -3629,27 +4046,27 @@ }, { "shortName": "AdService", - "fullName": "google.ads.googleads.v5.services.AdService", + "fullName": "google.ads.googleads.v8.services.AdService", "methods": [ { "shortName": "GetAd", - "fullName": "google.ads.googleads.v5.services.AdService.GetAd", + "fullName": "google.ads.googleads.v8.services.AdService.GetAd", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/ads/*}" + "path": "/v8/{resource_name=customers/*/ads/*}" } ] }, { "shortName": "MutateAds", - "fullName": "google.ads.googleads.v5.services.AdService.MutateAds", + "fullName": "google.ads.googleads.v8.services.AdService.MutateAds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/ads:mutate" + "path": "/v8/customers/{customer_id=*}/ads:mutate" } ] } @@ -3657,16 +4074,33 @@ }, { "shortName": "AgeRangeViewService", - "fullName": "google.ads.googleads.v5.services.AgeRangeViewService", + "fullName": "google.ads.googleads.v8.services.AgeRangeViewService", "methods": [ { "shortName": "GetAgeRangeView", - "fullName": "google.ads.googleads.v5.services.AgeRangeViewService.GetAgeRangeView", + "fullName": "google.ads.googleads.v8.services.AgeRangeViewService.GetAgeRangeView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/ageRangeViews/*}" + "path": "/v8/{resource_name=customers/*/ageRangeViews/*}" + } + ] + } + ] + }, + { + "shortName": "AssetFieldTypeViewService", + "fullName": "google.ads.googleads.v8.services.AssetFieldTypeViewService", + "methods": [ + { + "shortName": "GetAssetFieldTypeView", + "fullName": "google.ads.googleads.v8.services.AssetFieldTypeViewService.GetAssetFieldTypeView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/assetFieldTypeViews/*}" } ] } @@ -3674,27 +4108,27 @@ }, { "shortName": "AssetService", - "fullName": "google.ads.googleads.v5.services.AssetService", + "fullName": "google.ads.googleads.v8.services.AssetService", "methods": [ { "shortName": "GetAsset", - "fullName": "google.ads.googleads.v5.services.AssetService.GetAsset", + "fullName": "google.ads.googleads.v8.services.AssetService.GetAsset", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/assets/*}" + "path": "/v8/{resource_name=customers/*/assets/*}" } ] }, { "shortName": "MutateAssets", - "fullName": "google.ads.googleads.v5.services.AssetService.MutateAssets", + "fullName": "google.ads.googleads.v8.services.AssetService.MutateAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/assets:mutate" + "path": "/v8/customers/{customer_id=*}/assets:mutate" } ] } @@ -3702,60 +4136,116 @@ }, { "shortName": "BatchJobService", - "fullName": "google.ads.googleads.v5.services.BatchJobService", + "fullName": "google.ads.googleads.v8.services.BatchJobService", "methods": [ { "shortName": "AddBatchJobOperations", - "fullName": "google.ads.googleads.v5.services.BatchJobService.AddBatchJobOperations", + "fullName": "google.ads.googleads.v8.services.BatchJobService.AddBatchJobOperations", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{resource_name=customers/*/batchJobs/*}:addOperations" + "path": "/v8/{resource_name=customers/*/batchJobs/*}:addOperations" } ] }, { "shortName": "GetBatchJob", - "fullName": "google.ads.googleads.v5.services.BatchJobService.GetBatchJob", + "fullName": "google.ads.googleads.v8.services.BatchJobService.GetBatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/batchJobs/*}" + "path": "/v8/{resource_name=customers/*/batchJobs/*}" } ] }, { "shortName": "ListBatchJobResults", - "fullName": "google.ads.googleads.v5.services.BatchJobService.ListBatchJobResults", + "fullName": "google.ads.googleads.v8.services.BatchJobService.ListBatchJobResults", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/batchJobs/*}:listResults" + "path": "/v8/{resource_name=customers/*/batchJobs/*}:listResults" } ] }, { "shortName": "MutateBatchJob", - "fullName": "google.ads.googleads.v5.services.BatchJobService.MutateBatchJob", + "fullName": "google.ads.googleads.v8.services.BatchJobService.MutateBatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/batchJobs:mutate" + "path": "/v8/customers/{customer_id=*}/batchJobs:mutate" } ] }, { "shortName": "RunBatchJob", - "fullName": "google.ads.googleads.v5.services.BatchJobService.RunBatchJob", + "fullName": "google.ads.googleads.v8.services.BatchJobService.RunBatchJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/{resource_name=customers/*/batchJobs/*}:run" + } + ] + } + ] + }, + { + "shortName": "BiddingDataExclusionService", + "fullName": "google.ads.googleads.v8.services.BiddingDataExclusionService", + "methods": [ + { + "shortName": "GetBiddingDataExclusion", + "fullName": "google.ads.googleads.v8.services.BiddingDataExclusionService.GetBiddingDataExclusion", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/biddingDataExclusions/*}" + } + ] + }, + { + "shortName": "MutateBiddingDataExclusions", + "fullName": "google.ads.googleads.v8.services.BiddingDataExclusionService.MutateBiddingDataExclusions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{resource_name=customers/*/batchJobs/*}:run" + "path": "/v8/customers/{customer_id=*}/biddingDataExclusions:mutate" + } + ] + } + ] + }, + { + "shortName": "BiddingSeasonalityAdjustmentService", + "fullName": "google.ads.googleads.v8.services.BiddingSeasonalityAdjustmentService", + "methods": [ + { + "shortName": "GetBiddingSeasonalityAdjustment", + "fullName": "google.ads.googleads.v8.services.BiddingSeasonalityAdjustmentService.GetBiddingSeasonalityAdjustment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/biddingSeasonalityAdjustments/*}" + } + ] + }, + { + "shortName": "MutateBiddingSeasonalityAdjustments", + "fullName": "google.ads.googleads.v8.services.BiddingSeasonalityAdjustmentService.MutateBiddingSeasonalityAdjustments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/biddingSeasonalityAdjustments:mutate" } ] } @@ -3763,27 +4253,44 @@ }, { "shortName": "BiddingStrategyService", - "fullName": "google.ads.googleads.v5.services.BiddingStrategyService", + "fullName": "google.ads.googleads.v8.services.BiddingStrategyService", "methods": [ { "shortName": "GetBiddingStrategy", - "fullName": "google.ads.googleads.v5.services.BiddingStrategyService.GetBiddingStrategy", + "fullName": "google.ads.googleads.v8.services.BiddingStrategyService.GetBiddingStrategy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/biddingStrategies/*}" + "path": "/v8/{resource_name=customers/*/biddingStrategies/*}" } ] }, { "shortName": "MutateBiddingStrategies", - "fullName": "google.ads.googleads.v5.services.BiddingStrategyService.MutateBiddingStrategies", + "fullName": "google.ads.googleads.v8.services.BiddingStrategyService.MutateBiddingStrategies", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/biddingStrategies:mutate" + "path": "/v8/customers/{customer_id=*}/biddingStrategies:mutate" + } + ] + } + ] + }, + { + "shortName": "BiddingStrategySimulationService", + "fullName": "google.ads.googleads.v8.services.BiddingStrategySimulationService", + "methods": [ + { + "shortName": "GetBiddingStrategySimulation", + "fullName": "google.ads.googleads.v8.services.BiddingStrategySimulationService.GetBiddingStrategySimulation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/biddingStrategySimulations/*}" } ] } @@ -3791,27 +4298,27 @@ }, { "shortName": "BillingSetupService", - "fullName": "google.ads.googleads.v5.services.BillingSetupService", + "fullName": "google.ads.googleads.v8.services.BillingSetupService", "methods": [ { "shortName": "GetBillingSetup", - "fullName": "google.ads.googleads.v5.services.BillingSetupService.GetBillingSetup", + "fullName": "google.ads.googleads.v8.services.BillingSetupService.GetBillingSetup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/billingSetups/*}" + "path": "/v8/{resource_name=customers/*/billingSetups/*}" } ] }, { "shortName": "MutateBillingSetup", - "fullName": "google.ads.googleads.v5.services.BillingSetupService.MutateBillingSetup", + "fullName": "google.ads.googleads.v8.services.BillingSetupService.MutateBillingSetup", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/billingSetups:mutate" + "path": "/v8/customers/{customer_id=*}/billingSetups:mutate" } ] } @@ -3819,27 +4326,27 @@ }, { "shortName": "CampaignAssetService", - "fullName": "google.ads.googleads.v5.services.CampaignAssetService", + "fullName": "google.ads.googleads.v8.services.CampaignAssetService", "methods": [ { "shortName": "GetCampaignAsset", - "fullName": "google.ads.googleads.v5.services.CampaignAssetService.GetCampaignAsset", + "fullName": "google.ads.googleads.v8.services.CampaignAssetService.GetCampaignAsset", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignAssets/*}" + "path": "/v8/{resource_name=customers/*/campaignAssets/*}" } ] }, { "shortName": "MutateCampaignAssets", - "fullName": "google.ads.googleads.v5.services.CampaignAssetService.MutateCampaignAssets", + "fullName": "google.ads.googleads.v8.services.CampaignAssetService.MutateCampaignAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaignAssets:mutate" + "path": "/v8/customers/{customer_id=*}/campaignAssets:mutate" } ] } @@ -3847,16 +4354,16 @@ }, { "shortName": "CampaignAudienceViewService", - "fullName": "google.ads.googleads.v5.services.CampaignAudienceViewService", + "fullName": "google.ads.googleads.v8.services.CampaignAudienceViewService", "methods": [ { "shortName": "GetCampaignAudienceView", - "fullName": "google.ads.googleads.v5.services.CampaignAudienceViewService.GetCampaignAudienceView", + "fullName": "google.ads.googleads.v8.services.CampaignAudienceViewService.GetCampaignAudienceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignAudienceViews/*}" + "path": "/v8/{resource_name=customers/*/campaignAudienceViews/*}" } ] } @@ -3864,27 +4371,27 @@ }, { "shortName": "CampaignBidModifierService", - "fullName": "google.ads.googleads.v5.services.CampaignBidModifierService", + "fullName": "google.ads.googleads.v8.services.CampaignBidModifierService", "methods": [ { "shortName": "GetCampaignBidModifier", - "fullName": "google.ads.googleads.v5.services.CampaignBidModifierService.GetCampaignBidModifier", + "fullName": "google.ads.googleads.v8.services.CampaignBidModifierService.GetCampaignBidModifier", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignBidModifiers/*}" + "path": "/v8/{resource_name=customers/*/campaignBidModifiers/*}" } ] }, { "shortName": "MutateCampaignBidModifiers", - "fullName": "google.ads.googleads.v5.services.CampaignBidModifierService.MutateCampaignBidModifiers", + "fullName": "google.ads.googleads.v8.services.CampaignBidModifierService.MutateCampaignBidModifiers", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaignBidModifiers:mutate" + "path": "/v8/customers/{customer_id=*}/campaignBidModifiers:mutate" } ] } @@ -3892,27 +4399,27 @@ }, { "shortName": "CampaignBudgetService", - "fullName": "google.ads.googleads.v5.services.CampaignBudgetService", + "fullName": "google.ads.googleads.v8.services.CampaignBudgetService", "methods": [ { "shortName": "GetCampaignBudget", - "fullName": "google.ads.googleads.v5.services.CampaignBudgetService.GetCampaignBudget", + "fullName": "google.ads.googleads.v8.services.CampaignBudgetService.GetCampaignBudget", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignBudgets/*}" + "path": "/v8/{resource_name=customers/*/campaignBudgets/*}" } ] }, { "shortName": "MutateCampaignBudgets", - "fullName": "google.ads.googleads.v5.services.CampaignBudgetService.MutateCampaignBudgets", + "fullName": "google.ads.googleads.v8.services.CampaignBudgetService.MutateCampaignBudgets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaignBudgets:mutate" + "path": "/v8/customers/{customer_id=*}/campaignBudgets:mutate" } ] } @@ -3920,27 +4427,27 @@ }, { "shortName": "CampaignCriterionService", - "fullName": "google.ads.googleads.v5.services.CampaignCriterionService", + "fullName": "google.ads.googleads.v8.services.CampaignCriterionService", "methods": [ { "shortName": "GetCampaignCriterion", - "fullName": "google.ads.googleads.v5.services.CampaignCriterionService.GetCampaignCriterion", + "fullName": "google.ads.googleads.v8.services.CampaignCriterionService.GetCampaignCriterion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignCriteria/*}" + "path": "/v8/{resource_name=customers/*/campaignCriteria/*}" } ] }, { "shortName": "MutateCampaignCriteria", - "fullName": "google.ads.googleads.v5.services.CampaignCriterionService.MutateCampaignCriteria", + "fullName": "google.ads.googleads.v8.services.CampaignCriterionService.MutateCampaignCriteria", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaignCriteria:mutate" + "path": "/v8/customers/{customer_id=*}/campaignCriteria:mutate" } ] } @@ -3948,16 +4455,16 @@ }, { "shortName": "CampaignCriterionSimulationService", - "fullName": "google.ads.googleads.v5.services.CampaignCriterionSimulationService", + "fullName": "google.ads.googleads.v8.services.CampaignCriterionSimulationService", "methods": [ { "shortName": "GetCampaignCriterionSimulation", - "fullName": "google.ads.googleads.v5.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation", + "fullName": "google.ads.googleads.v8.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignCriterionSimulations/*}" + "path": "/v8/{resource_name=customers/*/campaignCriterionSimulations/*}" } ] } @@ -3965,49 +4472,49 @@ }, { "shortName": "CampaignDraftService", - "fullName": "google.ads.googleads.v5.services.CampaignDraftService", + "fullName": "google.ads.googleads.v8.services.CampaignDraftService", "methods": [ { "shortName": "GetCampaignDraft", - "fullName": "google.ads.googleads.v5.services.CampaignDraftService.GetCampaignDraft", + "fullName": "google.ads.googleads.v8.services.CampaignDraftService.GetCampaignDraft", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignDrafts/*}" + "path": "/v8/{resource_name=customers/*/campaignDrafts/*}" } ] }, { "shortName": "ListCampaignDraftAsyncErrors", - "fullName": "google.ads.googleads.v5.services.CampaignDraftService.ListCampaignDraftAsyncErrors", + "fullName": "google.ads.googleads.v8.services.CampaignDraftService.ListCampaignDraftAsyncErrors", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" + "path": "/v8/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" } ] }, { "shortName": "MutateCampaignDrafts", - "fullName": "google.ads.googleads.v5.services.CampaignDraftService.MutateCampaignDrafts", + "fullName": "google.ads.googleads.v8.services.CampaignDraftService.MutateCampaignDrafts", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaignDrafts:mutate" + "path": "/v8/customers/{customer_id=*}/campaignDrafts:mutate" } ] }, { "shortName": "PromoteCampaignDraft", - "fullName": "google.ads.googleads.v5.services.CampaignDraftService.PromoteCampaignDraft", + "fullName": "google.ads.googleads.v8.services.CampaignDraftService.PromoteCampaignDraft", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{campaign_draft=customers/*/campaignDrafts/*}:promote" + "path": "/v8/{campaign_draft=customers/*/campaignDrafts/*}:promote" } ] } @@ -4015,82 +4522,82 @@ }, { "shortName": "CampaignExperimentService", - "fullName": "google.ads.googleads.v5.services.CampaignExperimentService", + "fullName": "google.ads.googleads.v8.services.CampaignExperimentService", "methods": [ { "shortName": "CreateCampaignExperiment", - "fullName": "google.ads.googleads.v5.services.CampaignExperimentService.CreateCampaignExperiment", + "fullName": "google.ads.googleads.v8.services.CampaignExperimentService.CreateCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaignExperiments:create" + "path": "/v8/customers/{customer_id=*}/campaignExperiments:create" } ] }, { "shortName": "EndCampaignExperiment", - "fullName": "google.ads.googleads.v5.services.CampaignExperimentService.EndCampaignExperiment", + "fullName": "google.ads.googleads.v8.services.CampaignExperimentService.EndCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{campaign_experiment=customers/*/campaignExperiments/*}:end" + "path": "/v8/{campaign_experiment=customers/*/campaignExperiments/*}:end" } ] }, { "shortName": "GetCampaignExperiment", - "fullName": "google.ads.googleads.v5.services.CampaignExperimentService.GetCampaignExperiment", + "fullName": "google.ads.googleads.v8.services.CampaignExperimentService.GetCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignExperiments/*}" + "path": "/v8/{resource_name=customers/*/campaignExperiments/*}" } ] }, { "shortName": "GraduateCampaignExperiment", - "fullName": "google.ads.googleads.v5.services.CampaignExperimentService.GraduateCampaignExperiment", + "fullName": "google.ads.googleads.v8.services.CampaignExperimentService.GraduateCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" + "path": "/v8/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" } ] }, { "shortName": "ListCampaignExperimentAsyncErrors", - "fullName": "google.ads.googleads.v5.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors", + "fullName": "google.ads.googleads.v8.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" + "path": "/v8/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" } ] }, { "shortName": "MutateCampaignExperiments", - "fullName": "google.ads.googleads.v5.services.CampaignExperimentService.MutateCampaignExperiments", + "fullName": "google.ads.googleads.v8.services.CampaignExperimentService.MutateCampaignExperiments", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaignExperiments:mutate" + "path": "/v8/customers/{customer_id=*}/campaignExperiments:mutate" } ] }, { "shortName": "PromoteCampaignExperiment", - "fullName": "google.ads.googleads.v5.services.CampaignExperimentService.PromoteCampaignExperiment", + "fullName": "google.ads.googleads.v8.services.CampaignExperimentService.PromoteCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{campaign_experiment=customers/*/campaignExperiments/*}:promote" + "path": "/v8/{campaign_experiment=customers/*/campaignExperiments/*}:promote" } ] } @@ -4098,27 +4605,27 @@ }, { "shortName": "CampaignExtensionSettingService", - "fullName": "google.ads.googleads.v5.services.CampaignExtensionSettingService", + "fullName": "google.ads.googleads.v8.services.CampaignExtensionSettingService", "methods": [ { "shortName": "GetCampaignExtensionSetting", - "fullName": "google.ads.googleads.v5.services.CampaignExtensionSettingService.GetCampaignExtensionSetting", + "fullName": "google.ads.googleads.v8.services.CampaignExtensionSettingService.GetCampaignExtensionSetting", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignExtensionSettings/*}" + "path": "/v8/{resource_name=customers/*/campaignExtensionSettings/*}" } ] }, { "shortName": "MutateCampaignExtensionSettings", - "fullName": "google.ads.googleads.v5.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings", + "fullName": "google.ads.googleads.v8.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaignExtensionSettings:mutate" + "path": "/v8/customers/{customer_id=*}/campaignExtensionSettings:mutate" } ] } @@ -4126,27 +4633,27 @@ }, { "shortName": "CampaignFeedService", - "fullName": "google.ads.googleads.v5.services.CampaignFeedService", + "fullName": "google.ads.googleads.v8.services.CampaignFeedService", "methods": [ { "shortName": "GetCampaignFeed", - "fullName": "google.ads.googleads.v5.services.CampaignFeedService.GetCampaignFeed", + "fullName": "google.ads.googleads.v8.services.CampaignFeedService.GetCampaignFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignFeeds/*}" + "path": "/v8/{resource_name=customers/*/campaignFeeds/*}" } ] }, { "shortName": "MutateCampaignFeeds", - "fullName": "google.ads.googleads.v5.services.CampaignFeedService.MutateCampaignFeeds", + "fullName": "google.ads.googleads.v8.services.CampaignFeedService.MutateCampaignFeeds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaignFeeds:mutate" + "path": "/v8/customers/{customer_id=*}/campaignFeeds:mutate" } ] } @@ -4154,27 +4661,27 @@ }, { "shortName": "CampaignLabelService", - "fullName": "google.ads.googleads.v5.services.CampaignLabelService", + "fullName": "google.ads.googleads.v8.services.CampaignLabelService", "methods": [ { "shortName": "GetCampaignLabel", - "fullName": "google.ads.googleads.v5.services.CampaignLabelService.GetCampaignLabel", + "fullName": "google.ads.googleads.v8.services.CampaignLabelService.GetCampaignLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignLabels/*}" + "path": "/v8/{resource_name=customers/*/campaignLabels/*}" } ] }, { "shortName": "MutateCampaignLabels", - "fullName": "google.ads.googleads.v5.services.CampaignLabelService.MutateCampaignLabels", + "fullName": "google.ads.googleads.v8.services.CampaignLabelService.MutateCampaignLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaignLabels:mutate" + "path": "/v8/customers/{customer_id=*}/campaignLabels:mutate" } ] } @@ -4182,27 +4689,27 @@ }, { "shortName": "CampaignService", - "fullName": "google.ads.googleads.v5.services.CampaignService", + "fullName": "google.ads.googleads.v8.services.CampaignService", "methods": [ { "shortName": "GetCampaign", - "fullName": "google.ads.googleads.v5.services.CampaignService.GetCampaign", + "fullName": "google.ads.googleads.v8.services.CampaignService.GetCampaign", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaigns/*}" + "path": "/v8/{resource_name=customers/*/campaigns/*}" } ] }, { "shortName": "MutateCampaigns", - "fullName": "google.ads.googleads.v5.services.CampaignService.MutateCampaigns", + "fullName": "google.ads.googleads.v8.services.CampaignService.MutateCampaigns", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaigns:mutate" + "path": "/v8/customers/{customer_id=*}/campaigns:mutate" } ] } @@ -4210,414 +4717,314 @@ }, { "shortName": "CampaignSharedSetService", - "fullName": "google.ads.googleads.v5.services.CampaignSharedSetService", + "fullName": "google.ads.googleads.v8.services.CampaignSharedSetService", "methods": [ { "shortName": "GetCampaignSharedSet", - "fullName": "google.ads.googleads.v5.services.CampaignSharedSetService.GetCampaignSharedSet", + "fullName": "google.ads.googleads.v8.services.CampaignSharedSetService.GetCampaignSharedSet", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/campaignSharedSets/*}" + "path": "/v8/{resource_name=customers/*/campaignSharedSets/*}" } ] }, { "shortName": "MutateCampaignSharedSets", - "fullName": "google.ads.googleads.v5.services.CampaignSharedSetService.MutateCampaignSharedSets", + "fullName": "google.ads.googleads.v8.services.CampaignSharedSetService.MutateCampaignSharedSets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/campaignSharedSets:mutate" + "path": "/v8/customers/{customer_id=*}/campaignSharedSets:mutate" } ] } ] }, { - "shortName": "CarrierConstantService", - "fullName": "google.ads.googleads.v5.services.CarrierConstantService", + "shortName": "CampaignSimulationService", + "fullName": "google.ads.googleads.v8.services.CampaignSimulationService", "methods": [ { - "shortName": "GetCarrierConstant", - "fullName": "google.ads.googleads.v5.services.CarrierConstantService.GetCarrierConstant", + "shortName": "GetCampaignSimulation", + "fullName": "google.ads.googleads.v8.services.CampaignSimulationService.GetCampaignSimulation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=carrierConstants/*}" + "path": "/v8/{resource_name=customers/*/campaignSimulations/*}" } ] } ] }, { - "shortName": "ChangeStatusService", - "fullName": "google.ads.googleads.v5.services.ChangeStatusService", + "shortName": "CarrierConstantService", + "fullName": "google.ads.googleads.v8.services.CarrierConstantService", "methods": [ { - "shortName": "GetChangeStatus", - "fullName": "google.ads.googleads.v5.services.ChangeStatusService.GetChangeStatus", + "shortName": "GetCarrierConstant", + "fullName": "google.ads.googleads.v8.services.CarrierConstantService.GetCarrierConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/changeStatus/*}" + "path": "/v8/{resource_name=carrierConstants/*}" } ] } ] }, { - "shortName": "ClickViewService", - "fullName": "google.ads.googleads.v5.services.ClickViewService", + "shortName": "ChangeStatusService", + "fullName": "google.ads.googleads.v8.services.ChangeStatusService", "methods": [ { - "shortName": "GetClickView", - "fullName": "google.ads.googleads.v5.services.ClickViewService.GetClickView", + "shortName": "GetChangeStatus", + "fullName": "google.ads.googleads.v8.services.ChangeStatusService.GetChangeStatus", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/clickViews/*}" + "path": "/v8/{resource_name=customers/*/changeStatus/*}" } ] } ] }, { - "shortName": "ConversionActionService", - "fullName": "google.ads.googleads.v5.services.ConversionActionService", + "shortName": "ClickViewService", + "fullName": "google.ads.googleads.v8.services.ClickViewService", "methods": [ { - "shortName": "GetConversionAction", - "fullName": "google.ads.googleads.v5.services.ConversionActionService.GetConversionAction", + "shortName": "GetClickView", + "fullName": "google.ads.googleads.v8.services.ClickViewService.GetClickView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/conversionActions/*}" - } - ] - }, - { - "shortName": "MutateConversionActions", - "fullName": "google.ads.googleads.v5.services.ConversionActionService.MutateConversionActions", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/conversionActions:mutate" - } - ] - } - ] - }, - { - "shortName": "ConversionAdjustmentUploadService", - "fullName": "google.ads.googleads.v5.services.ConversionAdjustmentUploadService", - "methods": [ - { - "shortName": "UploadConversionAdjustments", - "fullName": "google.ads.googleads.v5.services.ConversionAdjustmentUploadService.UploadConversionAdjustments", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}:uploadConversionAdjustments" + "path": "/v8/{resource_name=customers/*/clickViews/*}" } ] } ] }, { - "shortName": "ConversionUploadService", - "fullName": "google.ads.googleads.v5.services.ConversionUploadService", - "methods": [ - { - "shortName": "UploadCallConversions", - "fullName": "google.ads.googleads.v5.services.ConversionUploadService.UploadCallConversions", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}:uploadCallConversions" - } - ] - }, - { - "shortName": "UploadClickConversions", - "fullName": "google.ads.googleads.v5.services.ConversionUploadService.UploadClickConversions", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}:uploadClickConversions" - } - ] - } - ] - }, - { - "shortName": "CurrencyConstantService", - "fullName": "google.ads.googleads.v5.services.CurrencyConstantService", + "shortName": "CombinedAudienceService", + "fullName": "google.ads.googleads.v8.services.CombinedAudienceService", "methods": [ { - "shortName": "GetCurrencyConstant", - "fullName": "google.ads.googleads.v5.services.CurrencyConstantService.GetCurrencyConstant", + "shortName": "GetCombinedAudience", + "fullName": "google.ads.googleads.v8.services.CombinedAudienceService.GetCombinedAudience", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=currencyConstants/*}" + "path": "/v8/{resource_name=customers/*/combinedAudiences/*}" } ] } ] }, { - "shortName": "CustomerClientLinkService", - "fullName": "google.ads.googleads.v5.services.CustomerClientLinkService", + "shortName": "ConversionActionService", + "fullName": "google.ads.googleads.v8.services.ConversionActionService", "methods": [ { - "shortName": "GetCustomerClientLink", - "fullName": "google.ads.googleads.v5.services.CustomerClientLinkService.GetCustomerClientLink", + "shortName": "GetConversionAction", + "fullName": "google.ads.googleads.v8.services.ConversionActionService.GetConversionAction", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/customerClientLinks/*}" + "path": "/v8/{resource_name=customers/*/conversionActions/*}" } ] }, { - "shortName": "MutateCustomerClientLink", - "fullName": "google.ads.googleads.v5.services.CustomerClientLinkService.MutateCustomerClientLink", + "shortName": "MutateConversionActions", + "fullName": "google.ads.googleads.v8.services.ConversionActionService.MutateConversionActions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/customerClientLinks:mutate" + "path": "/v8/customers/{customer_id=*}/conversionActions:mutate" } ] } ] }, { - "shortName": "CustomerClientService", - "fullName": "google.ads.googleads.v5.services.CustomerClientService", + "shortName": "ConversionAdjustmentUploadService", + "fullName": "google.ads.googleads.v8.services.ConversionAdjustmentUploadService", "methods": [ { - "shortName": "GetCustomerClient", - "fullName": "google.ads.googleads.v5.services.CustomerClientService.GetCustomerClient", + "shortName": "UploadConversionAdjustments", + "fullName": "google.ads.googleads.v8.services.ConversionAdjustmentUploadService.UploadConversionAdjustments", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/customerClients/*}" + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}:uploadConversionAdjustments" } ] } ] }, { - "shortName": "CustomerExtensionSettingService", - "fullName": "google.ads.googleads.v5.services.CustomerExtensionSettingService", + "shortName": "ConversionCustomVariableService", + "fullName": "google.ads.googleads.v8.services.ConversionCustomVariableService", "methods": [ { - "shortName": "GetCustomerExtensionSetting", - "fullName": "google.ads.googleads.v5.services.CustomerExtensionSettingService.GetCustomerExtensionSetting", + "shortName": "GetConversionCustomVariable", + "fullName": "google.ads.googleads.v8.services.ConversionCustomVariableService.GetConversionCustomVariable", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/customerExtensionSettings/*}" + "path": "/v8/{resource_name=customers/*/conversionCustomVariables/*}" } ] }, { - "shortName": "MutateCustomerExtensionSettings", - "fullName": "google.ads.googleads.v5.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings", + "shortName": "MutateConversionCustomVariables", + "fullName": "google.ads.googleads.v8.services.ConversionCustomVariableService.MutateConversionCustomVariables", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/customerExtensionSettings:mutate" + "path": "/v8/customers/{customer_id=*}/conversionCustomVariables:mutate" } ] } ] }, { - "shortName": "CustomerFeedService", - "fullName": "google.ads.googleads.v5.services.CustomerFeedService", + "shortName": "ConversionUploadService", + "fullName": "google.ads.googleads.v8.services.ConversionUploadService", "methods": [ { - "shortName": "GetCustomerFeed", - "fullName": "google.ads.googleads.v5.services.CustomerFeedService.GetCustomerFeed", + "shortName": "UploadCallConversions", + "fullName": "google.ads.googleads.v8.services.ConversionUploadService.UploadCallConversions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/customerFeeds/*}" + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}:uploadCallConversions" } ] }, { - "shortName": "MutateCustomerFeeds", - "fullName": "google.ads.googleads.v5.services.CustomerFeedService.MutateCustomerFeeds", + "shortName": "UploadClickConversions", + "fullName": "google.ads.googleads.v8.services.ConversionUploadService.UploadClickConversions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/customerFeeds:mutate" + "path": "/v8/customers/{customer_id=*}:uploadClickConversions" } ] } ] }, { - "shortName": "CustomerLabelService", - "fullName": "google.ads.googleads.v5.services.CustomerLabelService", + "shortName": "ConversionValueRuleService", + "fullName": "google.ads.googleads.v8.services.ConversionValueRuleService", "methods": [ { - "shortName": "GetCustomerLabel", - "fullName": "google.ads.googleads.v5.services.CustomerLabelService.GetCustomerLabel", + "shortName": "GetConversionValueRule", + "fullName": "google.ads.googleads.v8.services.ConversionValueRuleService.GetConversionValueRule", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/customerLabels/*}" + "path": "/v8/{resource_name=customers/*/conversionValueRules/*}" } ] }, { - "shortName": "MutateCustomerLabels", - "fullName": "google.ads.googleads.v5.services.CustomerLabelService.MutateCustomerLabels", + "shortName": "MutateConversionValueRules", + "fullName": "google.ads.googleads.v8.services.ConversionValueRuleService.MutateConversionValueRules", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/customerLabels:mutate" + "path": "/v8/customers/{customer_id=*}/conversionValueRules:mutate" } ] } ] }, { - "shortName": "CustomerManagerLinkService", - "fullName": "google.ads.googleads.v5.services.CustomerManagerLinkService", + "shortName": "ConversionValueRuleSetService", + "fullName": "google.ads.googleads.v8.services.ConversionValueRuleSetService", "methods": [ { - "shortName": "GetCustomerManagerLink", - "fullName": "google.ads.googleads.v5.services.CustomerManagerLinkService.GetCustomerManagerLink", + "shortName": "GetConversionValueRuleSet", + "fullName": "google.ads.googleads.v8.services.ConversionValueRuleSetService.GetConversionValueRuleSet", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/customerManagerLinks/*}" + "path": "/v8/{resource_name=customers/*/conversionValueRuleSets/*}" } ] }, { - "shortName": "MoveManagerLink", - "fullName": "google.ads.googleads.v5.services.CustomerManagerLinkService.MoveManagerLink", + "shortName": "MutateConversionValueRuleSets", + "fullName": "google.ads.googleads.v8.services.ConversionValueRuleSetService.MutateConversionValueRuleSets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" - } - ] - }, - { - "shortName": "MutateCustomerManagerLink", - "fullName": "google.ads.googleads.v5.services.CustomerManagerLinkService.MutateCustomerManagerLink", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/customerManagerLinks:mutate" + "path": "/v8/customers/{customer_id=*}/conversionValueRuleSets:mutate" } ] } ] }, { - "shortName": "CustomerNegativeCriterionService", - "fullName": "google.ads.googleads.v5.services.CustomerNegativeCriterionService", + "shortName": "CurrencyConstantService", + "fullName": "google.ads.googleads.v8.services.CurrencyConstantService", "methods": [ { - "shortName": "GetCustomerNegativeCriterion", - "fullName": "google.ads.googleads.v5.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion", + "shortName": "GetCurrencyConstant", + "fullName": "google.ads.googleads.v8.services.CurrencyConstantService.GetCurrencyConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/customerNegativeCriteria/*}" - } - ] - }, - { - "shortName": "MutateCustomerNegativeCriteria", - "fullName": "google.ads.googleads.v5.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/customerNegativeCriteria:mutate" + "path": "/v8/{resource_name=currencyConstants/*}" } ] } ] }, { - "shortName": "CustomerService", - "fullName": "google.ads.googleads.v5.services.CustomerService", + "shortName": "CustomAudienceService", + "fullName": "google.ads.googleads.v8.services.CustomAudienceService", "methods": [ { - "shortName": "CreateCustomerClient", - "fullName": "google.ads.googleads.v5.services.CustomerService.CreateCustomerClient", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}:createCustomerClient" - } - ] - }, - { - "shortName": "GetCustomer", - "fullName": "google.ads.googleads.v5.services.CustomerService.GetCustomer", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*}" - } - ] - }, - { - "shortName": "ListAccessibleCustomers", - "fullName": "google.ads.googleads.v5.services.CustomerService.ListAccessibleCustomers", + "shortName": "GetCustomAudience", + "fullName": "google.ads.googleads.v8.services.CustomAudienceService.GetCustomAudience", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/customers:listAccessibleCustomers" + "path": "/v8/{resource_name=customers/*/customAudiences/*}" } ] }, { - "shortName": "MutateCustomer", - "fullName": "google.ads.googleads.v5.services.CustomerService.MutateCustomer", + "shortName": "MutateCustomAudiences", + "fullName": "google.ads.googleads.v8.services.CustomAudienceService.MutateCustomAudiences", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}:mutate" + "path": "/v8/customers/{customer_id=*}/customAudiences:mutate" } ] } @@ -4625,27 +5032,357 @@ }, { "shortName": "CustomInterestService", - "fullName": "google.ads.googleads.v5.services.CustomInterestService", + "fullName": "google.ads.googleads.v8.services.CustomInterestService", "methods": [ { "shortName": "GetCustomInterest", - "fullName": "google.ads.googleads.v5.services.CustomInterestService.GetCustomInterest", + "fullName": "google.ads.googleads.v8.services.CustomInterestService.GetCustomInterest", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/customInterests/*}" + "path": "/v8/{resource_name=customers/*/customInterests/*}" } ] }, { "shortName": "MutateCustomInterests", - "fullName": "google.ads.googleads.v5.services.CustomInterestService.MutateCustomInterests", + "fullName": "google.ads.googleads.v8.services.CustomInterestService.MutateCustomInterests", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/customInterests:mutate" + "path": "/v8/customers/{customer_id=*}/customInterests:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerAssetService", + "fullName": "google.ads.googleads.v8.services.CustomerAssetService", + "methods": [ + { + "shortName": "GetCustomerAsset", + "fullName": "google.ads.googleads.v8.services.CustomerAssetService.GetCustomerAsset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/customerAssets/*}" + } + ] + }, + { + "shortName": "MutateCustomerAssets", + "fullName": "google.ads.googleads.v8.services.CustomerAssetService.MutateCustomerAssets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/customerAssets:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerClientLinkService", + "fullName": "google.ads.googleads.v8.services.CustomerClientLinkService", + "methods": [ + { + "shortName": "GetCustomerClientLink", + "fullName": "google.ads.googleads.v8.services.CustomerClientLinkService.GetCustomerClientLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/customerClientLinks/*}" + } + ] + }, + { + "shortName": "MutateCustomerClientLink", + "fullName": "google.ads.googleads.v8.services.CustomerClientLinkService.MutateCustomerClientLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/customerClientLinks:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerClientService", + "fullName": "google.ads.googleads.v8.services.CustomerClientService", + "methods": [ + { + "shortName": "GetCustomerClient", + "fullName": "google.ads.googleads.v8.services.CustomerClientService.GetCustomerClient", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/customerClients/*}" + } + ] + } + ] + }, + { + "shortName": "CustomerExtensionSettingService", + "fullName": "google.ads.googleads.v8.services.CustomerExtensionSettingService", + "methods": [ + { + "shortName": "GetCustomerExtensionSetting", + "fullName": "google.ads.googleads.v8.services.CustomerExtensionSettingService.GetCustomerExtensionSetting", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/customerExtensionSettings/*}" + } + ] + }, + { + "shortName": "MutateCustomerExtensionSettings", + "fullName": "google.ads.googleads.v8.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/customerExtensionSettings:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerFeedService", + "fullName": "google.ads.googleads.v8.services.CustomerFeedService", + "methods": [ + { + "shortName": "GetCustomerFeed", + "fullName": "google.ads.googleads.v8.services.CustomerFeedService.GetCustomerFeed", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/customerFeeds/*}" + } + ] + }, + { + "shortName": "MutateCustomerFeeds", + "fullName": "google.ads.googleads.v8.services.CustomerFeedService.MutateCustomerFeeds", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/customerFeeds:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerLabelService", + "fullName": "google.ads.googleads.v8.services.CustomerLabelService", + "methods": [ + { + "shortName": "GetCustomerLabel", + "fullName": "google.ads.googleads.v8.services.CustomerLabelService.GetCustomerLabel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/customerLabels/*}" + } + ] + }, + { + "shortName": "MutateCustomerLabels", + "fullName": "google.ads.googleads.v8.services.CustomerLabelService.MutateCustomerLabels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/customerLabels:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerManagerLinkService", + "fullName": "google.ads.googleads.v8.services.CustomerManagerLinkService", + "methods": [ + { + "shortName": "GetCustomerManagerLink", + "fullName": "google.ads.googleads.v8.services.CustomerManagerLinkService.GetCustomerManagerLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/customerManagerLinks/*}" + } + ] + }, + { + "shortName": "MoveManagerLink", + "fullName": "google.ads.googleads.v8.services.CustomerManagerLinkService.MoveManagerLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" + } + ] + }, + { + "shortName": "MutateCustomerManagerLink", + "fullName": "google.ads.googleads.v8.services.CustomerManagerLinkService.MutateCustomerManagerLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/customerManagerLinks:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerNegativeCriterionService", + "fullName": "google.ads.googleads.v8.services.CustomerNegativeCriterionService", + "methods": [ + { + "shortName": "GetCustomerNegativeCriterion", + "fullName": "google.ads.googleads.v8.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/customerNegativeCriteria/*}" + } + ] + }, + { + "shortName": "MutateCustomerNegativeCriteria", + "fullName": "google.ads.googleads.v8.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/customerNegativeCriteria:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerService", + "fullName": "google.ads.googleads.v8.services.CustomerService", + "methods": [ + { + "shortName": "CreateCustomerClient", + "fullName": "google.ads.googleads.v8.services.CustomerService.CreateCustomerClient", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}:createCustomerClient" + } + ] + }, + { + "shortName": "GetCustomer", + "fullName": "google.ads.googleads.v8.services.CustomerService.GetCustomer", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*}" + } + ] + }, + { + "shortName": "ListAccessibleCustomers", + "fullName": "google.ads.googleads.v8.services.CustomerService.ListAccessibleCustomers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/customers:listAccessibleCustomers" + } + ] + }, + { + "shortName": "MutateCustomer", + "fullName": "google.ads.googleads.v8.services.CustomerService.MutateCustomer", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerUserAccessInvitationService", + "fullName": "google.ads.googleads.v8.services.CustomerUserAccessInvitationService", + "methods": [ + { + "shortName": "GetCustomerUserAccessInvitation", + "fullName": "google.ads.googleads.v8.services.CustomerUserAccessInvitationService.GetCustomerUserAccessInvitation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/customerUserAccessInvitations/*}" + } + ] + }, + { + "shortName": "MutateCustomerUserAccessInvitation", + "fullName": "google.ads.googleads.v8.services.CustomerUserAccessInvitationService.MutateCustomerUserAccessInvitation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/customerUserAccessInvitations:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerUserAccessService", + "fullName": "google.ads.googleads.v8.services.CustomerUserAccessService", + "methods": [ + { + "shortName": "GetCustomerUserAccess", + "fullName": "google.ads.googleads.v8.services.CustomerUserAccessService.GetCustomerUserAccess", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/customerUserAccesses/*}" + } + ] + }, + { + "shortName": "MutateCustomerUserAccess", + "fullName": "google.ads.googleads.v8.services.CustomerUserAccessService.MutateCustomerUserAccess", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/customerUserAccesses:mutate" } ] } @@ -4653,16 +5390,33 @@ }, { "shortName": "DetailPlacementViewService", - "fullName": "google.ads.googleads.v5.services.DetailPlacementViewService", + "fullName": "google.ads.googleads.v8.services.DetailPlacementViewService", "methods": [ { "shortName": "GetDetailPlacementView", - "fullName": "google.ads.googleads.v5.services.DetailPlacementViewService.GetDetailPlacementView", + "fullName": "google.ads.googleads.v8.services.DetailPlacementViewService.GetDetailPlacementView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/detailPlacementViews/*}" + } + ] + } + ] + }, + { + "shortName": "DetailedDemographicService", + "fullName": "google.ads.googleads.v8.services.DetailedDemographicService", + "methods": [ + { + "shortName": "GetDetailedDemographic", + "fullName": "google.ads.googleads.v8.services.DetailedDemographicService.GetDetailedDemographic", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/detailPlacementViews/*}" + "path": "/v8/{resource_name=customers/*/detailedDemographics/*}" } ] } @@ -4670,16 +5424,16 @@ }, { "shortName": "DisplayKeywordViewService", - "fullName": "google.ads.googleads.v5.services.DisplayKeywordViewService", + "fullName": "google.ads.googleads.v8.services.DisplayKeywordViewService", "methods": [ { "shortName": "GetDisplayKeywordView", - "fullName": "google.ads.googleads.v5.services.DisplayKeywordViewService.GetDisplayKeywordView", + "fullName": "google.ads.googleads.v8.services.DisplayKeywordViewService.GetDisplayKeywordView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/displayKeywordViews/*}" + "path": "/v8/{resource_name=customers/*/displayKeywordViews/*}" } ] } @@ -4687,16 +5441,16 @@ }, { "shortName": "DistanceViewService", - "fullName": "google.ads.googleads.v5.services.DistanceViewService", + "fullName": "google.ads.googleads.v8.services.DistanceViewService", "methods": [ { "shortName": "GetDistanceView", - "fullName": "google.ads.googleads.v5.services.DistanceViewService.GetDistanceView", + "fullName": "google.ads.googleads.v8.services.DistanceViewService.GetDistanceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/distanceViews/*}" + "path": "/v8/{resource_name=customers/*/distanceViews/*}" } ] } @@ -4704,16 +5458,16 @@ }, { "shortName": "DomainCategoryService", - "fullName": "google.ads.googleads.v5.services.DomainCategoryService", + "fullName": "google.ads.googleads.v8.services.DomainCategoryService", "methods": [ { "shortName": "GetDomainCategory", - "fullName": "google.ads.googleads.v5.services.DomainCategoryService.GetDomainCategory", + "fullName": "google.ads.googleads.v8.services.DomainCategoryService.GetDomainCategory", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/domainCategories/*}" + "path": "/v8/{resource_name=customers/*/domainCategories/*}" } ] } @@ -4721,16 +5475,16 @@ }, { "shortName": "DynamicSearchAdsSearchTermViewService", - "fullName": "google.ads.googleads.v5.services.DynamicSearchAdsSearchTermViewService", + "fullName": "google.ads.googleads.v8.services.DynamicSearchAdsSearchTermViewService", "methods": [ { "shortName": "GetDynamicSearchAdsSearchTermView", - "fullName": "google.ads.googleads.v5.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView", + "fullName": "google.ads.googleads.v8.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" + "path": "/v8/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" } ] } @@ -4738,16 +5492,16 @@ }, { "shortName": "ExpandedLandingPageViewService", - "fullName": "google.ads.googleads.v5.services.ExpandedLandingPageViewService", + "fullName": "google.ads.googleads.v8.services.ExpandedLandingPageViewService", "methods": [ { "shortName": "GetExpandedLandingPageView", - "fullName": "google.ads.googleads.v5.services.ExpandedLandingPageViewService.GetExpandedLandingPageView", + "fullName": "google.ads.googleads.v8.services.ExpandedLandingPageViewService.GetExpandedLandingPageView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/expandedLandingPageViews/*}" + "path": "/v8/{resource_name=customers/*/expandedLandingPageViews/*}" } ] } @@ -4755,27 +5509,27 @@ }, { "shortName": "ExtensionFeedItemService", - "fullName": "google.ads.googleads.v5.services.ExtensionFeedItemService", + "fullName": "google.ads.googleads.v8.services.ExtensionFeedItemService", "methods": [ { "shortName": "GetExtensionFeedItem", - "fullName": "google.ads.googleads.v5.services.ExtensionFeedItemService.GetExtensionFeedItem", + "fullName": "google.ads.googleads.v8.services.ExtensionFeedItemService.GetExtensionFeedItem", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/extensionFeedItems/*}" + "path": "/v8/{resource_name=customers/*/extensionFeedItems/*}" } ] }, { "shortName": "MutateExtensionFeedItems", - "fullName": "google.ads.googleads.v5.services.ExtensionFeedItemService.MutateExtensionFeedItems", + "fullName": "google.ads.googleads.v8.services.ExtensionFeedItemService.MutateExtensionFeedItems", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/extensionFeedItems:mutate" + "path": "/v8/customers/{customer_id=*}/extensionFeedItems:mutate" } ] } @@ -4783,27 +5537,83 @@ }, { "shortName": "FeedItemService", - "fullName": "google.ads.googleads.v5.services.FeedItemService", + "fullName": "google.ads.googleads.v8.services.FeedItemService", "methods": [ { "shortName": "GetFeedItem", - "fullName": "google.ads.googleads.v5.services.FeedItemService.GetFeedItem", + "fullName": "google.ads.googleads.v8.services.FeedItemService.GetFeedItem", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/feedItems/*}" + "path": "/v8/{resource_name=customers/*/feedItems/*}" } ] }, { "shortName": "MutateFeedItems", - "fullName": "google.ads.googleads.v5.services.FeedItemService.MutateFeedItems", + "fullName": "google.ads.googleads.v8.services.FeedItemService.MutateFeedItems", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/feedItems:mutate" + } + ] + } + ] + }, + { + "shortName": "FeedItemSetLinkService", + "fullName": "google.ads.googleads.v8.services.FeedItemSetLinkService", + "methods": [ + { + "shortName": "GetFeedItemSetLink", + "fullName": "google.ads.googleads.v8.services.FeedItemSetLinkService.GetFeedItemSetLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/feedItemSetLinks/*}" + } + ] + }, + { + "shortName": "MutateFeedItemSetLinks", + "fullName": "google.ads.googleads.v8.services.FeedItemSetLinkService.MutateFeedItemSetLinks", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/feedItems:mutate" + "path": "/v8/customers/{customer_id=*}/feedItemSetLinks:mutate" + } + ] + } + ] + }, + { + "shortName": "FeedItemSetService", + "fullName": "google.ads.googleads.v8.services.FeedItemSetService", + "methods": [ + { + "shortName": "GetFeedItemSet", + "fullName": "google.ads.googleads.v8.services.FeedItemSetService.GetFeedItemSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/feedItemSets/*}" + } + ] + }, + { + "shortName": "MutateFeedItemSets", + "fullName": "google.ads.googleads.v8.services.FeedItemSetService.MutateFeedItemSets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/feedItemSets:mutate" } ] } @@ -4811,27 +5621,27 @@ }, { "shortName": "FeedItemTargetService", - "fullName": "google.ads.googleads.v5.services.FeedItemTargetService", + "fullName": "google.ads.googleads.v8.services.FeedItemTargetService", "methods": [ { "shortName": "GetFeedItemTarget", - "fullName": "google.ads.googleads.v5.services.FeedItemTargetService.GetFeedItemTarget", + "fullName": "google.ads.googleads.v8.services.FeedItemTargetService.GetFeedItemTarget", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/feedItemTargets/*}" + "path": "/v8/{resource_name=customers/*/feedItemTargets/*}" } ] }, { "shortName": "MutateFeedItemTargets", - "fullName": "google.ads.googleads.v5.services.FeedItemTargetService.MutateFeedItemTargets", + "fullName": "google.ads.googleads.v8.services.FeedItemTargetService.MutateFeedItemTargets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/feedItemTargets:mutate" + "path": "/v8/customers/{customer_id=*}/feedItemTargets:mutate" } ] } @@ -4839,27 +5649,27 @@ }, { "shortName": "FeedMappingService", - "fullName": "google.ads.googleads.v5.services.FeedMappingService", + "fullName": "google.ads.googleads.v8.services.FeedMappingService", "methods": [ { "shortName": "GetFeedMapping", - "fullName": "google.ads.googleads.v5.services.FeedMappingService.GetFeedMapping", + "fullName": "google.ads.googleads.v8.services.FeedMappingService.GetFeedMapping", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/feedMappings/*}" + "path": "/v8/{resource_name=customers/*/feedMappings/*}" } ] }, { "shortName": "MutateFeedMappings", - "fullName": "google.ads.googleads.v5.services.FeedMappingService.MutateFeedMappings", + "fullName": "google.ads.googleads.v8.services.FeedMappingService.MutateFeedMappings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/feedMappings:mutate" + "path": "/v8/customers/{customer_id=*}/feedMappings:mutate" } ] } @@ -4867,16 +5677,16 @@ }, { "shortName": "FeedPlaceholderViewService", - "fullName": "google.ads.googleads.v5.services.FeedPlaceholderViewService", + "fullName": "google.ads.googleads.v8.services.FeedPlaceholderViewService", "methods": [ { "shortName": "GetFeedPlaceholderView", - "fullName": "google.ads.googleads.v5.services.FeedPlaceholderViewService.GetFeedPlaceholderView", + "fullName": "google.ads.googleads.v8.services.FeedPlaceholderViewService.GetFeedPlaceholderView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/feedPlaceholderViews/*}" + "path": "/v8/{resource_name=customers/*/feedPlaceholderViews/*}" } ] } @@ -4884,27 +5694,27 @@ }, { "shortName": "FeedService", - "fullName": "google.ads.googleads.v5.services.FeedService", + "fullName": "google.ads.googleads.v8.services.FeedService", "methods": [ { "shortName": "GetFeed", - "fullName": "google.ads.googleads.v5.services.FeedService.GetFeed", + "fullName": "google.ads.googleads.v8.services.FeedService.GetFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/feeds/*}" + "path": "/v8/{resource_name=customers/*/feeds/*}" } ] }, { "shortName": "MutateFeeds", - "fullName": "google.ads.googleads.v5.services.FeedService.MutateFeeds", + "fullName": "google.ads.googleads.v8.services.FeedService.MutateFeeds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/feeds:mutate" + "path": "/v8/customers/{customer_id=*}/feeds:mutate" } ] } @@ -4912,61 +5722,61 @@ }, { "shortName": "GenderViewService", - "fullName": "google.ads.googleads.v5.services.GenderViewService", + "fullName": "google.ads.googleads.v8.services.GenderViewService", "methods": [ { "shortName": "GetGenderView", - "fullName": "google.ads.googleads.v5.services.GenderViewService.GetGenderView", + "fullName": "google.ads.googleads.v8.services.GenderViewService.GetGenderView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/genderViews/*}" + "path": "/v8/{resource_name=customers/*/genderViews/*}" } ] } ] }, { - "shortName": "GeographicViewService", - "fullName": "google.ads.googleads.v5.services.GeographicViewService", + "shortName": "GeoTargetConstantService", + "fullName": "google.ads.googleads.v8.services.GeoTargetConstantService", "methods": [ { - "shortName": "GetGeographicView", - "fullName": "google.ads.googleads.v5.services.GeographicViewService.GetGeographicView", + "shortName": "GetGeoTargetConstant", + "fullName": "google.ads.googleads.v8.services.GeoTargetConstantService.GetGeoTargetConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/geographicViews/*}" + "path": "/v8/{resource_name=geoTargetConstants/*}" } ] - } - ] - }, - { - "shortName": "GeoTargetConstantService", - "fullName": "google.ads.googleads.v5.services.GeoTargetConstantService", - "methods": [ + }, { - "shortName": "GetGeoTargetConstant", - "fullName": "google.ads.googleads.v5.services.GeoTargetConstantService.GetGeoTargetConstant", + "shortName": "SuggestGeoTargetConstants", + "fullName": "google.ads.googleads.v8.services.GeoTargetConstantService.SuggestGeoTargetConstants", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v5/{resource_name=geoTargetConstants/*}" + "httpMethod": "POST", + "path": "/v8/geoTargetConstants:suggest" } ] - }, + } + ] + }, + { + "shortName": "GeographicViewService", + "fullName": "google.ads.googleads.v8.services.GeographicViewService", + "methods": [ { - "shortName": "SuggestGeoTargetConstants", - "fullName": "google.ads.googleads.v5.services.GeoTargetConstantService.SuggestGeoTargetConstants", + "shortName": "GetGeographicView", + "fullName": "google.ads.googleads.v8.services.GeographicViewService.GetGeographicView", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v5/geoTargetConstants:suggest" + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/geographicViews/*}" } ] } @@ -4974,27 +5784,27 @@ }, { "shortName": "GoogleAdsFieldService", - "fullName": "google.ads.googleads.v5.services.GoogleAdsFieldService", + "fullName": "google.ads.googleads.v8.services.GoogleAdsFieldService", "methods": [ { "shortName": "GetGoogleAdsField", - "fullName": "google.ads.googleads.v5.services.GoogleAdsFieldService.GetGoogleAdsField", + "fullName": "google.ads.googleads.v8.services.GoogleAdsFieldService.GetGoogleAdsField", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=googleAdsFields/*}" + "path": "/v8/{resource_name=googleAdsFields/*}" } ] }, { "shortName": "SearchGoogleAdsFields", - "fullName": "google.ads.googleads.v5.services.GoogleAdsFieldService.SearchGoogleAdsFields", + "fullName": "google.ads.googleads.v8.services.GoogleAdsFieldService.SearchGoogleAdsFields", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/googleAdsFields:search" + "path": "/v8/googleAdsFields:search" } ] } @@ -5002,38 +5812,38 @@ }, { "shortName": "GoogleAdsService", - "fullName": "google.ads.googleads.v5.services.GoogleAdsService", + "fullName": "google.ads.googleads.v8.services.GoogleAdsService", "methods": [ { "shortName": "Mutate", - "fullName": "google.ads.googleads.v5.services.GoogleAdsService.Mutate", + "fullName": "google.ads.googleads.v8.services.GoogleAdsService.Mutate", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/googleAds:mutate" + "path": "/v8/customers/{customer_id=*}/googleAds:mutate" } ] }, { "shortName": "Search", - "fullName": "google.ads.googleads.v5.services.GoogleAdsService.Search", + "fullName": "google.ads.googleads.v8.services.GoogleAdsService.Search", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/googleAds:search" + "path": "/v8/customers/{customer_id=*}/googleAds:search" } ] }, { "shortName": "SearchStream", - "fullName": "google.ads.googleads.v5.services.GoogleAdsService.SearchStream", + "fullName": "google.ads.googleads.v8.services.GoogleAdsService.SearchStream", "mode": "SERVER_STREAMING", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/googleAds:searchStream" + "path": "/v8/customers/{customer_id=*}/googleAds:searchStream" } ] } @@ -5041,16 +5851,16 @@ }, { "shortName": "GroupPlacementViewService", - "fullName": "google.ads.googleads.v5.services.GroupPlacementViewService", + "fullName": "google.ads.googleads.v8.services.GroupPlacementViewService", "methods": [ { "shortName": "GetGroupPlacementView", - "fullName": "google.ads.googleads.v5.services.GroupPlacementViewService.GetGroupPlacementView", + "fullName": "google.ads.googleads.v8.services.GroupPlacementViewService.GetGroupPlacementView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/groupPlacementViews/*}" + "path": "/v8/{resource_name=customers/*/groupPlacementViews/*}" } ] } @@ -5058,16 +5868,16 @@ }, { "shortName": "HotelGroupViewService", - "fullName": "google.ads.googleads.v5.services.HotelGroupViewService", + "fullName": "google.ads.googleads.v8.services.HotelGroupViewService", "methods": [ { "shortName": "GetHotelGroupView", - "fullName": "google.ads.googleads.v5.services.HotelGroupViewService.GetHotelGroupView", + "fullName": "google.ads.googleads.v8.services.HotelGroupViewService.GetHotelGroupView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/hotelGroupViews/*}" + "path": "/v8/{resource_name=customers/*/hotelGroupViews/*}" } ] } @@ -5075,16 +5885,16 @@ }, { "shortName": "HotelPerformanceViewService", - "fullName": "google.ads.googleads.v5.services.HotelPerformanceViewService", + "fullName": "google.ads.googleads.v8.services.HotelPerformanceViewService", "methods": [ { "shortName": "GetHotelPerformanceView", - "fullName": "google.ads.googleads.v5.services.HotelPerformanceViewService.GetHotelPerformanceView", + "fullName": "google.ads.googleads.v8.services.HotelPerformanceViewService.GetHotelPerformanceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/hotelPerformanceView}" + "path": "/v8/{resource_name=customers/*/hotelPerformanceView}" } ] } @@ -5092,16 +5902,16 @@ }, { "shortName": "IncomeRangeViewService", - "fullName": "google.ads.googleads.v5.services.IncomeRangeViewService", + "fullName": "google.ads.googleads.v8.services.IncomeRangeViewService", "methods": [ { "shortName": "GetIncomeRangeView", - "fullName": "google.ads.googleads.v5.services.IncomeRangeViewService.GetIncomeRangeView", + "fullName": "google.ads.googleads.v8.services.IncomeRangeViewService.GetIncomeRangeView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/incomeRangeViews/*}" + "path": "/v8/{resource_name=customers/*/incomeRangeViews/*}" } ] } @@ -5109,16 +5919,16 @@ }, { "shortName": "InvoiceService", - "fullName": "google.ads.googleads.v5.services.InvoiceService", + "fullName": "google.ads.googleads.v8.services.InvoiceService", "methods": [ { "shortName": "ListInvoices", - "fullName": "google.ads.googleads.v5.services.InvoiceService.ListInvoices", + "fullName": "google.ads.googleads.v8.services.InvoiceService.ListInvoices", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/customers/{customer_id=*}/invoices" + "path": "/v8/customers/{customer_id=*}/invoices" } ] } @@ -5126,27 +5936,27 @@ }, { "shortName": "KeywordPlanAdGroupKeywordService", - "fullName": "google.ads.googleads.v5.services.KeywordPlanAdGroupKeywordService", + "fullName": "google.ads.googleads.v8.services.KeywordPlanAdGroupKeywordService", "methods": [ { "shortName": "GetKeywordPlanAdGroupKeyword", - "fullName": "google.ads.googleads.v5.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword", + "fullName": "google.ads.googleads.v8.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" + "path": "/v8/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" } ] }, { "shortName": "MutateKeywordPlanAdGroupKeywords", - "fullName": "google.ads.googleads.v5.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords", + "fullName": "google.ads.googleads.v8.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" + "path": "/v8/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" } ] } @@ -5154,27 +5964,27 @@ }, { "shortName": "KeywordPlanAdGroupService", - "fullName": "google.ads.googleads.v5.services.KeywordPlanAdGroupService", + "fullName": "google.ads.googleads.v8.services.KeywordPlanAdGroupService", "methods": [ { "shortName": "GetKeywordPlanAdGroup", - "fullName": "google.ads.googleads.v5.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup", + "fullName": "google.ads.googleads.v8.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/keywordPlanAdGroups/*}" + "path": "/v8/{resource_name=customers/*/keywordPlanAdGroups/*}" } ] }, { "shortName": "MutateKeywordPlanAdGroups", - "fullName": "google.ads.googleads.v5.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups", + "fullName": "google.ads.googleads.v8.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/keywordPlanAdGroups:mutate" + "path": "/v8/customers/{customer_id=*}/keywordPlanAdGroups:mutate" } ] } @@ -5182,27 +5992,27 @@ }, { "shortName": "KeywordPlanCampaignKeywordService", - "fullName": "google.ads.googleads.v5.services.KeywordPlanCampaignKeywordService", + "fullName": "google.ads.googleads.v8.services.KeywordPlanCampaignKeywordService", "methods": [ { "shortName": "GetKeywordPlanCampaignKeyword", - "fullName": "google.ads.googleads.v5.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword", + "fullName": "google.ads.googleads.v8.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" + "path": "/v8/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" } ] }, { "shortName": "MutateKeywordPlanCampaignKeywords", - "fullName": "google.ads.googleads.v5.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords", + "fullName": "google.ads.googleads.v8.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" + "path": "/v8/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" } ] } @@ -5210,27 +6020,27 @@ }, { "shortName": "KeywordPlanCampaignService", - "fullName": "google.ads.googleads.v5.services.KeywordPlanCampaignService", + "fullName": "google.ads.googleads.v8.services.KeywordPlanCampaignService", "methods": [ { "shortName": "GetKeywordPlanCampaign", - "fullName": "google.ads.googleads.v5.services.KeywordPlanCampaignService.GetKeywordPlanCampaign", + "fullName": "google.ads.googleads.v8.services.KeywordPlanCampaignService.GetKeywordPlanCampaign", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/keywordPlanCampaigns/*}" + "path": "/v8/{resource_name=customers/*/keywordPlanCampaigns/*}" } ] }, { "shortName": "MutateKeywordPlanCampaigns", - "fullName": "google.ads.googleads.v5.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns", + "fullName": "google.ads.googleads.v8.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/keywordPlanCampaigns:mutate" + "path": "/v8/customers/{customer_id=*}/keywordPlanCampaigns:mutate" } ] } @@ -5238,16 +6048,16 @@ }, { "shortName": "KeywordPlanIdeaService", - "fullName": "google.ads.googleads.v5.services.KeywordPlanIdeaService", + "fullName": "google.ads.googleads.v8.services.KeywordPlanIdeaService", "methods": [ { "shortName": "GenerateKeywordIdeas", - "fullName": "google.ads.googleads.v5.services.KeywordPlanIdeaService.GenerateKeywordIdeas", + "fullName": "google.ads.googleads.v8.services.KeywordPlanIdeaService.GenerateKeywordIdeas", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}:generateKeywordIdeas" + "path": "/v8/customers/{customer_id=*}:generateKeywordIdeas" } ] } @@ -5255,71 +6065,99 @@ }, { "shortName": "KeywordPlanService", - "fullName": "google.ads.googleads.v5.services.KeywordPlanService", + "fullName": "google.ads.googleads.v8.services.KeywordPlanService", "methods": [ { "shortName": "GenerateForecastCurve", - "fullName": "google.ads.googleads.v5.services.KeywordPlanService.GenerateForecastCurve", + "fullName": "google.ads.googleads.v8.services.KeywordPlanService.GenerateForecastCurve", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" + "path": "/v8/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" } ] }, { "shortName": "GenerateForecastMetrics", - "fullName": "google.ads.googleads.v5.services.KeywordPlanService.GenerateForecastMetrics", + "fullName": "google.ads.googleads.v8.services.KeywordPlanService.GenerateForecastMetrics", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" + "path": "/v8/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" } ] }, { "shortName": "GenerateForecastTimeSeries", - "fullName": "google.ads.googleads.v5.services.KeywordPlanService.GenerateForecastTimeSeries", + "fullName": "google.ads.googleads.v8.services.KeywordPlanService.GenerateForecastTimeSeries", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{keyword_plan=customers/*/keywordPlans/*}:generateForecastTimeSeries" + "path": "/v8/{keyword_plan=customers/*/keywordPlans/*}:generateForecastTimeSeries" } ] }, { "shortName": "GenerateHistoricalMetrics", - "fullName": "google.ads.googleads.v5.services.KeywordPlanService.GenerateHistoricalMetrics", + "fullName": "google.ads.googleads.v8.services.KeywordPlanService.GenerateHistoricalMetrics", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" + "path": "/v8/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" } ] }, { "shortName": "GetKeywordPlan", - "fullName": "google.ads.googleads.v5.services.KeywordPlanService.GetKeywordPlan", + "fullName": "google.ads.googleads.v8.services.KeywordPlanService.GetKeywordPlan", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/keywordPlans/*}" + "path": "/v8/{resource_name=customers/*/keywordPlans/*}" } ] }, { "shortName": "MutateKeywordPlans", - "fullName": "google.ads.googleads.v5.services.KeywordPlanService.MutateKeywordPlans", + "fullName": "google.ads.googleads.v8.services.KeywordPlanService.MutateKeywordPlans", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/keywordPlans:mutate" + } + ] + } + ] + }, + { + "shortName": "KeywordThemeConstantService", + "fullName": "google.ads.googleads.v8.services.KeywordThemeConstantService", + "methods": [ + { + "shortName": "GetKeywordThemeConstant", + "fullName": "google.ads.googleads.v8.services.KeywordThemeConstantService.GetKeywordThemeConstant", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=keywordThemeConstants/*}" + } + ] + }, + { + "shortName": "SuggestKeywordThemeConstants", + "fullName": "google.ads.googleads.v8.services.KeywordThemeConstantService.SuggestKeywordThemeConstants", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/keywordPlans:mutate" + "path": "/v8/keywordThemeConstants:suggest" } ] } @@ -5327,16 +6165,16 @@ }, { "shortName": "KeywordViewService", - "fullName": "google.ads.googleads.v5.services.KeywordViewService", + "fullName": "google.ads.googleads.v8.services.KeywordViewService", "methods": [ { "shortName": "GetKeywordView", - "fullName": "google.ads.googleads.v5.services.KeywordViewService.GetKeywordView", + "fullName": "google.ads.googleads.v8.services.KeywordViewService.GetKeywordView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/keywordViews/*}" + "path": "/v8/{resource_name=customers/*/keywordViews/*}" } ] } @@ -5344,27 +6182,27 @@ }, { "shortName": "LabelService", - "fullName": "google.ads.googleads.v5.services.LabelService", + "fullName": "google.ads.googleads.v8.services.LabelService", "methods": [ { "shortName": "GetLabel", - "fullName": "google.ads.googleads.v5.services.LabelService.GetLabel", + "fullName": "google.ads.googleads.v8.services.LabelService.GetLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/labels/*}" + "path": "/v8/{resource_name=customers/*/labels/*}" } ] }, { "shortName": "MutateLabels", - "fullName": "google.ads.googleads.v5.services.LabelService.MutateLabels", + "fullName": "google.ads.googleads.v8.services.LabelService.MutateLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/labels:mutate" + "path": "/v8/customers/{customer_id=*}/labels:mutate" } ] } @@ -5372,16 +6210,16 @@ }, { "shortName": "LandingPageViewService", - "fullName": "google.ads.googleads.v5.services.LandingPageViewService", + "fullName": "google.ads.googleads.v8.services.LandingPageViewService", "methods": [ { "shortName": "GetLandingPageView", - "fullName": "google.ads.googleads.v5.services.LandingPageViewService.GetLandingPageView", + "fullName": "google.ads.googleads.v8.services.LandingPageViewService.GetLandingPageView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/landingPageViews/*}" + "path": "/v8/{resource_name=customers/*/landingPageViews/*}" } ] } @@ -5389,16 +6227,33 @@ }, { "shortName": "LanguageConstantService", - "fullName": "google.ads.googleads.v5.services.LanguageConstantService", + "fullName": "google.ads.googleads.v8.services.LanguageConstantService", "methods": [ { "shortName": "GetLanguageConstant", - "fullName": "google.ads.googleads.v5.services.LanguageConstantService.GetLanguageConstant", + "fullName": "google.ads.googleads.v8.services.LanguageConstantService.GetLanguageConstant", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=languageConstants/*}" + } + ] + } + ] + }, + { + "shortName": "LifeEventService", + "fullName": "google.ads.googleads.v8.services.LifeEventService", + "methods": [ + { + "shortName": "GetLifeEvent", + "fullName": "google.ads.googleads.v8.services.LifeEventService.GetLifeEvent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=languageConstants/*}" + "path": "/v8/{resource_name=customers/*/lifeEvents/*}" } ] } @@ -5406,16 +6261,16 @@ }, { "shortName": "LocationViewService", - "fullName": "google.ads.googleads.v5.services.LocationViewService", + "fullName": "google.ads.googleads.v8.services.LocationViewService", "methods": [ { "shortName": "GetLocationView", - "fullName": "google.ads.googleads.v5.services.LocationViewService.GetLocationView", + "fullName": "google.ads.googleads.v8.services.LocationViewService.GetLocationView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/locationViews/*}" + "path": "/v8/{resource_name=customers/*/locationViews/*}" } ] } @@ -5423,16 +6278,16 @@ }, { "shortName": "ManagedPlacementViewService", - "fullName": "google.ads.googleads.v5.services.ManagedPlacementViewService", + "fullName": "google.ads.googleads.v8.services.ManagedPlacementViewService", "methods": [ { "shortName": "GetManagedPlacementView", - "fullName": "google.ads.googleads.v5.services.ManagedPlacementViewService.GetManagedPlacementView", + "fullName": "google.ads.googleads.v8.services.ManagedPlacementViewService.GetManagedPlacementView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/managedPlacementViews/*}" + "path": "/v8/{resource_name=customers/*/managedPlacementViews/*}" } ] } @@ -5440,27 +6295,27 @@ }, { "shortName": "MediaFileService", - "fullName": "google.ads.googleads.v5.services.MediaFileService", + "fullName": "google.ads.googleads.v8.services.MediaFileService", "methods": [ { "shortName": "GetMediaFile", - "fullName": "google.ads.googleads.v5.services.MediaFileService.GetMediaFile", + "fullName": "google.ads.googleads.v8.services.MediaFileService.GetMediaFile", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/mediaFiles/*}" + "path": "/v8/{resource_name=customers/*/mediaFiles/*}" } ] }, { "shortName": "MutateMediaFiles", - "fullName": "google.ads.googleads.v5.services.MediaFileService.MutateMediaFiles", + "fullName": "google.ads.googleads.v8.services.MediaFileService.MutateMediaFiles", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/mediaFiles:mutate" + "path": "/v8/customers/{customer_id=*}/mediaFiles:mutate" } ] } @@ -5468,38 +6323,38 @@ }, { "shortName": "MerchantCenterLinkService", - "fullName": "google.ads.googleads.v5.services.MerchantCenterLinkService", + "fullName": "google.ads.googleads.v8.services.MerchantCenterLinkService", "methods": [ { "shortName": "GetMerchantCenterLink", - "fullName": "google.ads.googleads.v5.services.MerchantCenterLinkService.GetMerchantCenterLink", + "fullName": "google.ads.googleads.v8.services.MerchantCenterLinkService.GetMerchantCenterLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/merchantCenterLinks/*}" + "path": "/v8/{resource_name=customers/*/merchantCenterLinks/*}" } ] }, { "shortName": "ListMerchantCenterLinks", - "fullName": "google.ads.googleads.v5.services.MerchantCenterLinkService.ListMerchantCenterLinks", + "fullName": "google.ads.googleads.v8.services.MerchantCenterLinkService.ListMerchantCenterLinks", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/customers/{customer_id=*}/merchantCenterLinks" + "path": "/v8/customers/{customer_id=*}/merchantCenterLinks" } ] }, { "shortName": "MutateMerchantCenterLink", - "fullName": "google.ads.googleads.v5.services.MerchantCenterLinkService.MutateMerchantCenterLink", + "fullName": "google.ads.googleads.v8.services.MerchantCenterLinkService.MutateMerchantCenterLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/merchantCenterLinks:mutate" + "path": "/v8/customers/{customer_id=*}/merchantCenterLinks:mutate" } ] } @@ -5507,16 +6362,16 @@ }, { "shortName": "MobileAppCategoryConstantService", - "fullName": "google.ads.googleads.v5.services.MobileAppCategoryConstantService", + "fullName": "google.ads.googleads.v8.services.MobileAppCategoryConstantService", "methods": [ { "shortName": "GetMobileAppCategoryConstant", - "fullName": "google.ads.googleads.v5.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant", + "fullName": "google.ads.googleads.v8.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=mobileAppCategoryConstants/*}" + "path": "/v8/{resource_name=mobileAppCategoryConstants/*}" } ] } @@ -5524,16 +6379,16 @@ }, { "shortName": "MobileDeviceConstantService", - "fullName": "google.ads.googleads.v5.services.MobileDeviceConstantService", + "fullName": "google.ads.googleads.v8.services.MobileDeviceConstantService", "methods": [ { "shortName": "GetMobileDeviceConstant", - "fullName": "google.ads.googleads.v5.services.MobileDeviceConstantService.GetMobileDeviceConstant", + "fullName": "google.ads.googleads.v8.services.MobileDeviceConstantService.GetMobileDeviceConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=mobileDeviceConstants/*}" + "path": "/v8/{resource_name=mobileDeviceConstants/*}" } ] } @@ -5541,49 +6396,49 @@ }, { "shortName": "OfflineUserDataJobService", - "fullName": "google.ads.googleads.v5.services.OfflineUserDataJobService", + "fullName": "google.ads.googleads.v8.services.OfflineUserDataJobService", "methods": [ { "shortName": "AddOfflineUserDataJobOperations", - "fullName": "google.ads.googleads.v5.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations", + "fullName": "google.ads.googleads.v8.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" + "path": "/v8/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" } ] }, { "shortName": "CreateOfflineUserDataJob", - "fullName": "google.ads.googleads.v5.services.OfflineUserDataJobService.CreateOfflineUserDataJob", + "fullName": "google.ads.googleads.v8.services.OfflineUserDataJobService.CreateOfflineUserDataJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/offlineUserDataJobs:create" + "path": "/v8/customers/{customer_id=*}/offlineUserDataJobs:create" } ] }, { "shortName": "GetOfflineUserDataJob", - "fullName": "google.ads.googleads.v5.services.OfflineUserDataJobService.GetOfflineUserDataJob", + "fullName": "google.ads.googleads.v8.services.OfflineUserDataJobService.GetOfflineUserDataJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/offlineUserDataJobs/*}" + "path": "/v8/{resource_name=customers/*/offlineUserDataJobs/*}" } ] }, { "shortName": "RunOfflineUserDataJob", - "fullName": "google.ads.googleads.v5.services.OfflineUserDataJobService.RunOfflineUserDataJob", + "fullName": "google.ads.googleads.v8.services.OfflineUserDataJobService.RunOfflineUserDataJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{resource_name=customers/*/offlineUserDataJobs/*}:run" + "path": "/v8/{resource_name=customers/*/offlineUserDataJobs/*}:run" } ] } @@ -5591,16 +6446,16 @@ }, { "shortName": "OperatingSystemVersionConstantService", - "fullName": "google.ads.googleads.v5.services.OperatingSystemVersionConstantService", + "fullName": "google.ads.googleads.v8.services.OperatingSystemVersionConstantService", "methods": [ { "shortName": "GetOperatingSystemVersionConstant", - "fullName": "google.ads.googleads.v5.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant", + "fullName": "google.ads.googleads.v8.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=operatingSystemVersionConstants/*}" + "path": "/v8/{resource_name=operatingSystemVersionConstants/*}" } ] } @@ -5608,16 +6463,16 @@ }, { "shortName": "PaidOrganicSearchTermViewService", - "fullName": "google.ads.googleads.v5.services.PaidOrganicSearchTermViewService", + "fullName": "google.ads.googleads.v8.services.PaidOrganicSearchTermViewService", "methods": [ { "shortName": "GetPaidOrganicSearchTermView", - "fullName": "google.ads.googleads.v5.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView", + "fullName": "google.ads.googleads.v8.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/paidOrganicSearchTermViews/*}" + "path": "/v8/{resource_name=customers/*/paidOrganicSearchTermViews/*}" } ] } @@ -5625,16 +6480,16 @@ }, { "shortName": "ParentalStatusViewService", - "fullName": "google.ads.googleads.v5.services.ParentalStatusViewService", + "fullName": "google.ads.googleads.v8.services.ParentalStatusViewService", "methods": [ { "shortName": "GetParentalStatusView", - "fullName": "google.ads.googleads.v5.services.ParentalStatusViewService.GetParentalStatusView", + "fullName": "google.ads.googleads.v8.services.ParentalStatusViewService.GetParentalStatusView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/parentalStatusViews/*}" + "path": "/v8/{resource_name=customers/*/parentalStatusViews/*}" } ] } @@ -5642,16 +6497,16 @@ }, { "shortName": "PaymentsAccountService", - "fullName": "google.ads.googleads.v5.services.PaymentsAccountService", + "fullName": "google.ads.googleads.v8.services.PaymentsAccountService", "methods": [ { "shortName": "ListPaymentsAccounts", - "fullName": "google.ads.googleads.v5.services.PaymentsAccountService.ListPaymentsAccounts", + "fullName": "google.ads.googleads.v8.services.PaymentsAccountService.ListPaymentsAccounts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/customers/{customer_id=*}/paymentsAccounts" + "path": "/v8/customers/{customer_id=*}/paymentsAccounts" } ] } @@ -5659,16 +6514,16 @@ }, { "shortName": "ProductBiddingCategoryConstantService", - "fullName": "google.ads.googleads.v5.services.ProductBiddingCategoryConstantService", + "fullName": "google.ads.googleads.v8.services.ProductBiddingCategoryConstantService", "methods": [ { "shortName": "GetProductBiddingCategoryConstant", - "fullName": "google.ads.googleads.v5.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant", + "fullName": "google.ads.googleads.v8.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=productBiddingCategoryConstants/*}" + "path": "/v8/{resource_name=productBiddingCategoryConstants/*}" } ] } @@ -5676,16 +6531,16 @@ }, { "shortName": "ProductGroupViewService", - "fullName": "google.ads.googleads.v5.services.ProductGroupViewService", + "fullName": "google.ads.googleads.v8.services.ProductGroupViewService", "methods": [ { "shortName": "GetProductGroupView", - "fullName": "google.ads.googleads.v5.services.ProductGroupViewService.GetProductGroupView", + "fullName": "google.ads.googleads.v8.services.ProductGroupViewService.GetProductGroupView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/productGroupViews/*}" + "path": "/v8/{resource_name=customers/*/productGroupViews/*}" } ] } @@ -5693,49 +6548,49 @@ }, { "shortName": "ReachPlanService", - "fullName": "google.ads.googleads.v5.services.ReachPlanService", + "fullName": "google.ads.googleads.v8.services.ReachPlanService", "methods": [ { "shortName": "GenerateProductMixIdeas", - "fullName": "google.ads.googleads.v5.services.ReachPlanService.GenerateProductMixIdeas", + "fullName": "google.ads.googleads.v8.services.ReachPlanService.GenerateProductMixIdeas", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}:generateProductMixIdeas" + "path": "/v8/customers/{customer_id=*}:generateProductMixIdeas" } ] }, { "shortName": "GenerateReachForecast", - "fullName": "google.ads.googleads.v5.services.ReachPlanService.GenerateReachForecast", + "fullName": "google.ads.googleads.v8.services.ReachPlanService.GenerateReachForecast", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}:generateReachForecast" + "path": "/v8/customers/{customer_id=*}:generateReachForecast" } ] }, { "shortName": "ListPlannableLocations", - "fullName": "google.ads.googleads.v5.services.ReachPlanService.ListPlannableLocations", + "fullName": "google.ads.googleads.v8.services.ReachPlanService.ListPlannableLocations", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5:listPlannableLocations" + "path": "/v8:listPlannableLocations" } ] }, { "shortName": "ListPlannableProducts", - "fullName": "google.ads.googleads.v5.services.ReachPlanService.ListPlannableProducts", + "fullName": "google.ads.googleads.v8.services.ReachPlanService.ListPlannableProducts", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5:listPlannableProducts" + "path": "/v8:listPlannableProducts" } ] } @@ -5743,38 +6598,38 @@ }, { "shortName": "RecommendationService", - "fullName": "google.ads.googleads.v5.services.RecommendationService", + "fullName": "google.ads.googleads.v8.services.RecommendationService", "methods": [ { "shortName": "ApplyRecommendation", - "fullName": "google.ads.googleads.v5.services.RecommendationService.ApplyRecommendation", + "fullName": "google.ads.googleads.v8.services.RecommendationService.ApplyRecommendation", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/recommendations:apply" + "path": "/v8/customers/{customer_id=*}/recommendations:apply" } ] }, { "shortName": "DismissRecommendation", - "fullName": "google.ads.googleads.v5.services.RecommendationService.DismissRecommendation", + "fullName": "google.ads.googleads.v8.services.RecommendationService.DismissRecommendation", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/recommendations:dismiss" + "path": "/v8/customers/{customer_id=*}/recommendations:dismiss" } ] }, { "shortName": "GetRecommendation", - "fullName": "google.ads.googleads.v5.services.RecommendationService.GetRecommendation", + "fullName": "google.ads.googleads.v8.services.RecommendationService.GetRecommendation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/recommendations/*}" + "path": "/v8/{resource_name=customers/*/recommendations/*}" } ] } @@ -5782,27 +6637,27 @@ }, { "shortName": "RemarketingActionService", - "fullName": "google.ads.googleads.v5.services.RemarketingActionService", + "fullName": "google.ads.googleads.v8.services.RemarketingActionService", "methods": [ { "shortName": "GetRemarketingAction", - "fullName": "google.ads.googleads.v5.services.RemarketingActionService.GetRemarketingAction", + "fullName": "google.ads.googleads.v8.services.RemarketingActionService.GetRemarketingAction", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/remarketingActions/*}" + "path": "/v8/{resource_name=customers/*/remarketingActions/*}" } ] }, { "shortName": "MutateRemarketingActions", - "fullName": "google.ads.googleads.v5.services.RemarketingActionService.MutateRemarketingActions", + "fullName": "google.ads.googleads.v8.services.RemarketingActionService.MutateRemarketingActions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/remarketingActions:mutate" + "path": "/v8/customers/{customer_id=*}/remarketingActions:mutate" } ] } @@ -5810,16 +6665,16 @@ }, { "shortName": "SearchTermViewService", - "fullName": "google.ads.googleads.v5.services.SearchTermViewService", + "fullName": "google.ads.googleads.v8.services.SearchTermViewService", "methods": [ { "shortName": "GetSearchTermView", - "fullName": "google.ads.googleads.v5.services.SearchTermViewService.GetSearchTermView", + "fullName": "google.ads.googleads.v8.services.SearchTermViewService.GetSearchTermView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/searchTermViews/*}" + "path": "/v8/{resource_name=customers/*/searchTermViews/*}" } ] } @@ -5827,27 +6682,27 @@ }, { "shortName": "SharedCriterionService", - "fullName": "google.ads.googleads.v5.services.SharedCriterionService", + "fullName": "google.ads.googleads.v8.services.SharedCriterionService", "methods": [ { "shortName": "GetSharedCriterion", - "fullName": "google.ads.googleads.v5.services.SharedCriterionService.GetSharedCriterion", + "fullName": "google.ads.googleads.v8.services.SharedCriterionService.GetSharedCriterion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/sharedCriteria/*}" + "path": "/v8/{resource_name=customers/*/sharedCriteria/*}" } ] }, { "shortName": "MutateSharedCriteria", - "fullName": "google.ads.googleads.v5.services.SharedCriterionService.MutateSharedCriteria", + "fullName": "google.ads.googleads.v8.services.SharedCriterionService.MutateSharedCriteria", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/sharedCriteria:mutate" + "path": "/v8/customers/{customer_id=*}/sharedCriteria:mutate" } ] } @@ -5855,27 +6710,27 @@ }, { "shortName": "SharedSetService", - "fullName": "google.ads.googleads.v5.services.SharedSetService", + "fullName": "google.ads.googleads.v8.services.SharedSetService", "methods": [ { "shortName": "GetSharedSet", - "fullName": "google.ads.googleads.v5.services.SharedSetService.GetSharedSet", + "fullName": "google.ads.googleads.v8.services.SharedSetService.GetSharedSet", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/sharedSets/*}" + "path": "/v8/{resource_name=customers/*/sharedSets/*}" } ] }, { "shortName": "MutateSharedSets", - "fullName": "google.ads.googleads.v5.services.SharedSetService.MutateSharedSets", + "fullName": "google.ads.googleads.v8.services.SharedSetService.MutateSharedSets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/sharedSets:mutate" + "path": "/v8/customers/{customer_id=*}/sharedSets:mutate" } ] } @@ -5883,16 +6738,89 @@ }, { "shortName": "ShoppingPerformanceViewService", - "fullName": "google.ads.googleads.v5.services.ShoppingPerformanceViewService", + "fullName": "google.ads.googleads.v8.services.ShoppingPerformanceViewService", "methods": [ { "shortName": "GetShoppingPerformanceView", - "fullName": "google.ads.googleads.v5.services.ShoppingPerformanceViewService.GetShoppingPerformanceView", + "fullName": "google.ads.googleads.v8.services.ShoppingPerformanceViewService.GetShoppingPerformanceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/shoppingPerformanceView}" + "path": "/v8/{resource_name=customers/*/shoppingPerformanceView}" + } + ] + } + ] + }, + { + "shortName": "SmartCampaignSearchTermViewService", + "fullName": "google.ads.googleads.v8.services.SmartCampaignSearchTermViewService", + "methods": [ + { + "shortName": "GetSmartCampaignSearchTermView", + "fullName": "google.ads.googleads.v8.services.SmartCampaignSearchTermViewService.GetSmartCampaignSearchTermView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/smartCampaignSearchTermViews/*}" + } + ] + } + ] + }, + { + "shortName": "SmartCampaignSettingService", + "fullName": "google.ads.googleads.v8.services.SmartCampaignSettingService", + "methods": [ + { + "shortName": "GetSmartCampaignSetting", + "fullName": "google.ads.googleads.v8.services.SmartCampaignSettingService.GetSmartCampaignSetting", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/smartCampaignSettings/*}" + } + ] + }, + { + "shortName": "MutateSmartCampaignSettings", + "fullName": "google.ads.googleads.v8.services.SmartCampaignSettingService.MutateSmartCampaignSettings", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}/smartCampaignSettings:mutate" + } + ] + } + ] + }, + { + "shortName": "SmartCampaignSuggestService", + "fullName": "google.ads.googleads.v8.services.SmartCampaignSuggestService", + "methods": [ + { + "shortName": "SuggestSmartCampaignAd", + "fullName": "google.ads.googleads.v8.services.SmartCampaignSuggestService.SuggestSmartCampaignAd", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}:suggestSmartCampaignAd" + } + ] + }, + { + "shortName": "SuggestSmartCampaignBudgetOptions", + "fullName": "google.ads.googleads.v8.services.SmartCampaignSuggestService.SuggestSmartCampaignBudgetOptions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v8/customers/{customer_id=*}:suggestSmartCampaignBudgetOptions" } ] } @@ -5900,27 +6828,27 @@ }, { "shortName": "ThirdPartyAppAnalyticsLinkService", - "fullName": "google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService", + "fullName": "google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService", "methods": [ { "shortName": "GetThirdPartyAppAnalyticsLink", - "fullName": "google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink", + "fullName": "google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" + "path": "/v8/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" } ] }, { "shortName": "RegenerateShareableLinkId", - "fullName": "google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId", + "fullName": "google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}:regenerateShareableLinkId" + "path": "/v8/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}:regenerateShareableLinkId" } ] } @@ -5928,16 +6856,16 @@ }, { "shortName": "TopicConstantService", - "fullName": "google.ads.googleads.v5.services.TopicConstantService", + "fullName": "google.ads.googleads.v8.services.TopicConstantService", "methods": [ { "shortName": "GetTopicConstant", - "fullName": "google.ads.googleads.v5.services.TopicConstantService.GetTopicConstant", + "fullName": "google.ads.googleads.v8.services.TopicConstantService.GetTopicConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=topicConstants/*}" + "path": "/v8/{resource_name=topicConstants/*}" } ] } @@ -5945,16 +6873,16 @@ }, { "shortName": "TopicViewService", - "fullName": "google.ads.googleads.v5.services.TopicViewService", + "fullName": "google.ads.googleads.v8.services.TopicViewService", "methods": [ { "shortName": "GetTopicView", - "fullName": "google.ads.googleads.v5.services.TopicViewService.GetTopicView", + "fullName": "google.ads.googleads.v8.services.TopicViewService.GetTopicView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/topicViews/*}" + "path": "/v8/{resource_name=customers/*/topicViews/*}" } ] } @@ -5962,16 +6890,16 @@ }, { "shortName": "UserDataService", - "fullName": "google.ads.googleads.v5.services.UserDataService", + "fullName": "google.ads.googleads.v8.services.UserDataService", "methods": [ { "shortName": "UploadUserData", - "fullName": "google.ads.googleads.v5.services.UserDataService.UploadUserData", + "fullName": "google.ads.googleads.v8.services.UserDataService.UploadUserData", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}:uploadUserData" + "path": "/v8/customers/{customer_id=*}:uploadUserData" } ] } @@ -5979,16 +6907,16 @@ }, { "shortName": "UserInterestService", - "fullName": "google.ads.googleads.v5.services.UserInterestService", + "fullName": "google.ads.googleads.v8.services.UserInterestService", "methods": [ { "shortName": "GetUserInterest", - "fullName": "google.ads.googleads.v5.services.UserInterestService.GetUserInterest", + "fullName": "google.ads.googleads.v8.services.UserInterestService.GetUserInterest", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/userInterests/*}" + "path": "/v8/{resource_name=customers/*/userInterests/*}" } ] } @@ -5996,27 +6924,27 @@ }, { "shortName": "UserListService", - "fullName": "google.ads.googleads.v5.services.UserListService", + "fullName": "google.ads.googleads.v8.services.UserListService", "methods": [ { "shortName": "GetUserList", - "fullName": "google.ads.googleads.v5.services.UserListService.GetUserList", + "fullName": "google.ads.googleads.v8.services.UserListService.GetUserList", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/userLists/*}" + "path": "/v8/{resource_name=customers/*/userLists/*}" } ] }, { "shortName": "MutateUserLists", - "fullName": "google.ads.googleads.v5.services.UserListService.MutateUserLists", + "fullName": "google.ads.googleads.v8.services.UserListService.MutateUserLists", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v5/customers/{customer_id=*}/userLists:mutate" + "path": "/v8/customers/{customer_id=*}/userLists:mutate" } ] } @@ -6024,16 +6952,16 @@ }, { "shortName": "UserLocationViewService", - "fullName": "google.ads.googleads.v5.services.UserLocationViewService", + "fullName": "google.ads.googleads.v8.services.UserLocationViewService", "methods": [ { "shortName": "GetUserLocationView", - "fullName": "google.ads.googleads.v5.services.UserLocationViewService.GetUserLocationView", + "fullName": "google.ads.googleads.v8.services.UserLocationViewService.GetUserLocationView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/userLocationViews/*}" + "path": "/v8/{resource_name=customers/*/userLocationViews/*}" } ] } @@ -6041,123 +6969,158 @@ }, { "shortName": "VideoService", - "fullName": "google.ads.googleads.v5.services.VideoService", + "fullName": "google.ads.googleads.v8.services.VideoService", "methods": [ { "shortName": "GetVideo", - "fullName": "google.ads.googleads.v5.services.VideoService.GetVideo", + "fullName": "google.ads.googleads.v8.services.VideoService.GetVideo", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v8/{resource_name=customers/*/videos/*}" + } + ] + } + ] + }, + { + "shortName": "WebpageViewService", + "fullName": "google.ads.googleads.v8.services.WebpageViewService", + "methods": [ + { + "shortName": "GetWebpageView", + "fullName": "google.ads.googleads.v8.services.WebpageViewService.GetWebpageView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v5/{resource_name=customers/*/videos/*}" + "path": "/v8/{resource_name=customers/*/webpageViews/*}" } ] } ] } - ] + ], + "configFile": "googleads_v8.yaml" }, { - "id": "google.ads.googleads.v6", - "directory": "google/ads/googleads/v6", - "version": "v6", - "majorVersion": "v6", + "id": "google.ads.googleads.v9", + "directory": "google/ads/googleads/v9", + "version": "v9", + "majorVersion": "v9", "hostName": "googleads.googleapis.com", "title": "Google Ads API", "description": "Manage your Google Ads accounts, campaigns, and reports with this API.", "importDirectories": [ - "google/ads/googleads/v6/common", - "google/ads/googleads/v6/enums", - "google/ads/googleads/v6/errors", - "google/ads/googleads/v6/resources", - "google/ads/googleads/v6/services", + "google/ads/googleads/v9/common", + "google/ads/googleads/v9/enums", + "google/ads/googleads/v9/errors", + "google/ads/googleads/v9/resources", + "google/ads/googleads/v9/services", "google/api", "google/longrunning", "google/protobuf", "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.ads.googleads.v6.errors": 119, - "com.google.ads.googleads.v6.enums": 245, - "com.google.ads.googleads.v6.common": 30, - "com.google.ads.googleads.v6.resources": 115, - "com.google.ads.googleads.v6.services": 119 + "Google.Ads.GoogleAds.V9.Common": 32, + "Google.Ads.GoogleAds.V9.Enums": 281, + "Google.Ads.GoogleAds.V9.Errors": 135, + "Google.Ads.GoogleAds.V9.Resources": 149, + "Google.Ads.GoogleAds.V9.Services": 152 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 628 + "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common": 32, + "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums": 281, + "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors": 135, + "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources": 149, + "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services": 152 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors": 119, - "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums": 245, - "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common": 30, - "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources": 115, - "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services": 119 + "true": 749 } }, - "objc_class_prefix": { + "java_package": { "valueCounts": { - "GAA": 628 + "com.google.ads.googleads.v9.common": 32, + "com.google.ads.googleads.v9.enums": 281, + "com.google.ads.googleads.v9.errors": 135, + "com.google.ads.googleads.v9.resources": 149, + "com.google.ads.googleads.v9.services": 152 } }, - "csharp_namespace": { + "objc_class_prefix": { "valueCounts": { - "Google.Ads.GoogleAds.V6.Errors": 119, - "Google.Ads.GoogleAds.V6.Enums": 245, - "Google.Ads.GoogleAds.V6.Common": 30, - "Google.Ads.GoogleAds.V6.Resources": 115, - "Google.Ads.GoogleAds.V6.Services": 119 + "GAA": 749 } }, "php_namespace": { "valueCounts": { - "Google\\Ads\\GoogleAds\\V6\\Errors": 119, - "Google\\Ads\\GoogleAds\\V6\\Enums": 245, - "Google\\Ads\\GoogleAds\\V6\\Common": 30, - "Google\\Ads\\GoogleAds\\V6\\Resources": 115, - "Google\\Ads\\GoogleAds\\V6\\Services": 119 + "Google\\Ads\\GoogleAds\\V9\\Common": 32, + "Google\\Ads\\GoogleAds\\V9\\Enums": 281, + "Google\\Ads\\GoogleAds\\V9\\Errors": 135, + "Google\\Ads\\GoogleAds\\V9\\Resources": 149, + "Google\\Ads\\GoogleAds\\V9\\Services": 152 } }, "ruby_package": { "valueCounts": { - "Google::Ads::GoogleAds::V6::Errors": 119, - "Google::Ads::GoogleAds::V6::Enums": 245, - "Google::Ads::GoogleAds::V6::Common": 30, - "Google::Ads::GoogleAds::V6::Resources": 115, - "Google::Ads::GoogleAds::V6::Services": 119 + "Google::Ads::GoogleAds::V9::Common": 32, + "Google::Ads::GoogleAds::V9::Enums": 281, + "Google::Ads::GoogleAds::V9::Errors": 135, + "Google::Ads::GoogleAds::V9::Resources": 149, + "Google::Ads::GoogleAds::V9::Services": 152 } } }, "services": [ + { + "shortName": "AccessibleBiddingStrategyService", + "fullName": "google.ads.googleads.v9.services.AccessibleBiddingStrategyService", + "methods": [ + { + "shortName": "GetAccessibleBiddingStrategy", + "fullName": "google.ads.googleads.v9.services.AccessibleBiddingStrategyService.GetAccessibleBiddingStrategy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/accessibleBiddingStrategies/*}" + } + ] + } + ] + }, { "shortName": "AccountBudgetProposalService", - "fullName": "google.ads.googleads.v6.services.AccountBudgetProposalService", + "fullName": "google.ads.googleads.v9.services.AccountBudgetProposalService", "methods": [ { "shortName": "GetAccountBudgetProposal", - "fullName": "google.ads.googleads.v6.services.AccountBudgetProposalService.GetAccountBudgetProposal", + "fullName": "google.ads.googleads.v9.services.AccountBudgetProposalService.GetAccountBudgetProposal", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/accountBudgetProposals/*}" + "path": "/v9/{resource_name=customers/*/accountBudgetProposals/*}" } ] }, { "shortName": "MutateAccountBudgetProposal", - "fullName": "google.ads.googleads.v6.services.AccountBudgetProposalService.MutateAccountBudgetProposal", + "fullName": "google.ads.googleads.v9.services.AccountBudgetProposalService.MutateAccountBudgetProposal", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/accountBudgetProposals:mutate" + "path": "/v9/customers/{customer_id=*}/accountBudgetProposals:mutate" } ] } @@ -6165,16 +7128,16 @@ }, { "shortName": "AccountBudgetService", - "fullName": "google.ads.googleads.v6.services.AccountBudgetService", + "fullName": "google.ads.googleads.v9.services.AccountBudgetService", "methods": [ { "shortName": "GetAccountBudget", - "fullName": "google.ads.googleads.v6.services.AccountBudgetService.GetAccountBudget", + "fullName": "google.ads.googleads.v9.services.AccountBudgetService.GetAccountBudget", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/accountBudgets/*}" + "path": "/v9/{resource_name=customers/*/accountBudgets/*}" } ] } @@ -6182,38 +7145,38 @@ }, { "shortName": "AccountLinkService", - "fullName": "google.ads.googleads.v6.services.AccountLinkService", + "fullName": "google.ads.googleads.v9.services.AccountLinkService", "methods": [ { "shortName": "CreateAccountLink", - "fullName": "google.ads.googleads.v6.services.AccountLinkService.CreateAccountLink", + "fullName": "google.ads.googleads.v9.services.AccountLinkService.CreateAccountLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/accountLinks:create" + "path": "/v9/customers/{customer_id=*}/accountLinks:create" } ] }, { "shortName": "GetAccountLink", - "fullName": "google.ads.googleads.v6.services.AccountLinkService.GetAccountLink", + "fullName": "google.ads.googleads.v9.services.AccountLinkService.GetAccountLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/accountLinks/*}" + "path": "/v9/{resource_name=customers/*/accountLinks/*}" } ] }, { "shortName": "MutateAccountLink", - "fullName": "google.ads.googleads.v6.services.AccountLinkService.MutateAccountLink", + "fullName": "google.ads.googleads.v9.services.AccountLinkService.MutateAccountLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/accountLinks:mutate" + "path": "/v9/customers/{customer_id=*}/accountLinks:mutate" } ] } @@ -6221,16 +7184,16 @@ }, { "shortName": "AdGroupAdAssetViewService", - "fullName": "google.ads.googleads.v6.services.AdGroupAdAssetViewService", + "fullName": "google.ads.googleads.v9.services.AdGroupAdAssetViewService", "methods": [ { "shortName": "GetAdGroupAdAssetView", - "fullName": "google.ads.googleads.v6.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView", + "fullName": "google.ads.googleads.v9.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupAdAssetViews/*}" + "path": "/v9/{resource_name=customers/*/adGroupAdAssetViews/*}" } ] } @@ -6238,27 +7201,27 @@ }, { "shortName": "AdGroupAdLabelService", - "fullName": "google.ads.googleads.v6.services.AdGroupAdLabelService", + "fullName": "google.ads.googleads.v9.services.AdGroupAdLabelService", "methods": [ { "shortName": "GetAdGroupAdLabel", - "fullName": "google.ads.googleads.v6.services.AdGroupAdLabelService.GetAdGroupAdLabel", + "fullName": "google.ads.googleads.v9.services.AdGroupAdLabelService.GetAdGroupAdLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupAdLabels/*}" + "path": "/v9/{resource_name=customers/*/adGroupAdLabels/*}" } ] }, { "shortName": "MutateAdGroupAdLabels", - "fullName": "google.ads.googleads.v6.services.AdGroupAdLabelService.MutateAdGroupAdLabels", + "fullName": "google.ads.googleads.v9.services.AdGroupAdLabelService.MutateAdGroupAdLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/adGroupAdLabels:mutate" + "path": "/v9/customers/{customer_id=*}/adGroupAdLabels:mutate" } ] } @@ -6266,27 +7229,55 @@ }, { "shortName": "AdGroupAdService", - "fullName": "google.ads.googleads.v6.services.AdGroupAdService", + "fullName": "google.ads.googleads.v9.services.AdGroupAdService", "methods": [ { "shortName": "GetAdGroupAd", - "fullName": "google.ads.googleads.v6.services.AdGroupAdService.GetAdGroupAd", + "fullName": "google.ads.googleads.v9.services.AdGroupAdService.GetAdGroupAd", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupAds/*}" + "path": "/v9/{resource_name=customers/*/adGroupAds/*}" } ] }, { "shortName": "MutateAdGroupAds", - "fullName": "google.ads.googleads.v6.services.AdGroupAdService.MutateAdGroupAds", + "fullName": "google.ads.googleads.v9.services.AdGroupAdService.MutateAdGroupAds", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/adGroupAds:mutate" + } + ] + } + ] + }, + { + "shortName": "AdGroupAssetService", + "fullName": "google.ads.googleads.v9.services.AdGroupAssetService", + "methods": [ + { + "shortName": "GetAdGroupAsset", + "fullName": "google.ads.googleads.v9.services.AdGroupAssetService.GetAdGroupAsset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/adGroupAssets/*}" + } + ] + }, + { + "shortName": "MutateAdGroupAssets", + "fullName": "google.ads.googleads.v9.services.AdGroupAssetService.MutateAdGroupAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/adGroupAds:mutate" + "path": "/v9/customers/{customer_id=*}/adGroupAssets:mutate" } ] } @@ -6294,16 +7285,16 @@ }, { "shortName": "AdGroupAudienceViewService", - "fullName": "google.ads.googleads.v6.services.AdGroupAudienceViewService", + "fullName": "google.ads.googleads.v9.services.AdGroupAudienceViewService", "methods": [ { "shortName": "GetAdGroupAudienceView", - "fullName": "google.ads.googleads.v6.services.AdGroupAudienceViewService.GetAdGroupAudienceView", + "fullName": "google.ads.googleads.v9.services.AdGroupAudienceViewService.GetAdGroupAudienceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupAudienceViews/*}" + "path": "/v9/{resource_name=customers/*/adGroupAudienceViews/*}" } ] } @@ -6311,27 +7302,44 @@ }, { "shortName": "AdGroupBidModifierService", - "fullName": "google.ads.googleads.v6.services.AdGroupBidModifierService", + "fullName": "google.ads.googleads.v9.services.AdGroupBidModifierService", "methods": [ { "shortName": "GetAdGroupBidModifier", - "fullName": "google.ads.googleads.v6.services.AdGroupBidModifierService.GetAdGroupBidModifier", + "fullName": "google.ads.googleads.v9.services.AdGroupBidModifierService.GetAdGroupBidModifier", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupBidModifiers/*}" + "path": "/v9/{resource_name=customers/*/adGroupBidModifiers/*}" } ] }, { "shortName": "MutateAdGroupBidModifiers", - "fullName": "google.ads.googleads.v6.services.AdGroupBidModifierService.MutateAdGroupBidModifiers", + "fullName": "google.ads.googleads.v9.services.AdGroupBidModifierService.MutateAdGroupBidModifiers", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/adGroupBidModifiers:mutate" + "path": "/v9/customers/{customer_id=*}/adGroupBidModifiers:mutate" + } + ] + } + ] + }, + { + "shortName": "AdGroupCriterionCustomizerService", + "fullName": "google.ads.googleads.v9.services.AdGroupCriterionCustomizerService", + "methods": [ + { + "shortName": "MutateAdGroupCriterionCustomizers", + "fullName": "google.ads.googleads.v9.services.AdGroupCriterionCustomizerService.MutateAdGroupCriterionCustomizers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/AdGroupCriterionCustomizers:mutate" } ] } @@ -6339,27 +7347,27 @@ }, { "shortName": "AdGroupCriterionLabelService", - "fullName": "google.ads.googleads.v6.services.AdGroupCriterionLabelService", + "fullName": "google.ads.googleads.v9.services.AdGroupCriterionLabelService", "methods": [ { "shortName": "GetAdGroupCriterionLabel", - "fullName": "google.ads.googleads.v6.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel", + "fullName": "google.ads.googleads.v9.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupCriterionLabels/*}" + "path": "/v9/{resource_name=customers/*/adGroupCriterionLabels/*}" } ] }, { "shortName": "MutateAdGroupCriterionLabels", - "fullName": "google.ads.googleads.v6.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels", + "fullName": "google.ads.googleads.v9.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/adGroupCriterionLabels:mutate" + "path": "/v9/customers/{customer_id=*}/adGroupCriterionLabels:mutate" } ] } @@ -6367,27 +7375,27 @@ }, { "shortName": "AdGroupCriterionService", - "fullName": "google.ads.googleads.v6.services.AdGroupCriterionService", + "fullName": "google.ads.googleads.v9.services.AdGroupCriterionService", "methods": [ { "shortName": "GetAdGroupCriterion", - "fullName": "google.ads.googleads.v6.services.AdGroupCriterionService.GetAdGroupCriterion", + "fullName": "google.ads.googleads.v9.services.AdGroupCriterionService.GetAdGroupCriterion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupCriteria/*}" + "path": "/v9/{resource_name=customers/*/adGroupCriteria/*}" } ] }, { "shortName": "MutateAdGroupCriteria", - "fullName": "google.ads.googleads.v6.services.AdGroupCriterionService.MutateAdGroupCriteria", + "fullName": "google.ads.googleads.v9.services.AdGroupCriterionService.MutateAdGroupCriteria", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/adGroupCriteria:mutate" + "path": "/v9/customers/{customer_id=*}/adGroupCriteria:mutate" } ] } @@ -6395,16 +7403,33 @@ }, { "shortName": "AdGroupCriterionSimulationService", - "fullName": "google.ads.googleads.v6.services.AdGroupCriterionSimulationService", + "fullName": "google.ads.googleads.v9.services.AdGroupCriterionSimulationService", "methods": [ { "shortName": "GetAdGroupCriterionSimulation", - "fullName": "google.ads.googleads.v6.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation", + "fullName": "google.ads.googleads.v9.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupCriterionSimulations/*}" + "path": "/v9/{resource_name=customers/*/adGroupCriterionSimulations/*}" + } + ] + } + ] + }, + { + "shortName": "AdGroupCustomizerService", + "fullName": "google.ads.googleads.v9.services.AdGroupCustomizerService", + "methods": [ + { + "shortName": "MutateAdGroupCustomizers", + "fullName": "google.ads.googleads.v9.services.AdGroupCustomizerService.MutateAdGroupCustomizers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/adGroupCustomizers:mutate" } ] } @@ -6412,27 +7437,27 @@ }, { "shortName": "AdGroupExtensionSettingService", - "fullName": "google.ads.googleads.v6.services.AdGroupExtensionSettingService", + "fullName": "google.ads.googleads.v9.services.AdGroupExtensionSettingService", "methods": [ { "shortName": "GetAdGroupExtensionSetting", - "fullName": "google.ads.googleads.v6.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting", + "fullName": "google.ads.googleads.v9.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupExtensionSettings/*}" + "path": "/v9/{resource_name=customers/*/adGroupExtensionSettings/*}" } ] }, { "shortName": "MutateAdGroupExtensionSettings", - "fullName": "google.ads.googleads.v6.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings", + "fullName": "google.ads.googleads.v9.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/adGroupExtensionSettings:mutate" + "path": "/v9/customers/{customer_id=*}/adGroupExtensionSettings:mutate" } ] } @@ -6440,27 +7465,27 @@ }, { "shortName": "AdGroupFeedService", - "fullName": "google.ads.googleads.v6.services.AdGroupFeedService", + "fullName": "google.ads.googleads.v9.services.AdGroupFeedService", "methods": [ { "shortName": "GetAdGroupFeed", - "fullName": "google.ads.googleads.v6.services.AdGroupFeedService.GetAdGroupFeed", + "fullName": "google.ads.googleads.v9.services.AdGroupFeedService.GetAdGroupFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupFeeds/*}" + "path": "/v9/{resource_name=customers/*/adGroupFeeds/*}" } ] }, { "shortName": "MutateAdGroupFeeds", - "fullName": "google.ads.googleads.v6.services.AdGroupFeedService.MutateAdGroupFeeds", + "fullName": "google.ads.googleads.v9.services.AdGroupFeedService.MutateAdGroupFeeds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/adGroupFeeds:mutate" + "path": "/v9/customers/{customer_id=*}/adGroupFeeds:mutate" } ] } @@ -6468,27 +7493,27 @@ }, { "shortName": "AdGroupLabelService", - "fullName": "google.ads.googleads.v6.services.AdGroupLabelService", + "fullName": "google.ads.googleads.v9.services.AdGroupLabelService", "methods": [ { "shortName": "GetAdGroupLabel", - "fullName": "google.ads.googleads.v6.services.AdGroupLabelService.GetAdGroupLabel", + "fullName": "google.ads.googleads.v9.services.AdGroupLabelService.GetAdGroupLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupLabels/*}" + "path": "/v9/{resource_name=customers/*/adGroupLabels/*}" } ] }, { "shortName": "MutateAdGroupLabels", - "fullName": "google.ads.googleads.v6.services.AdGroupLabelService.MutateAdGroupLabels", + "fullName": "google.ads.googleads.v9.services.AdGroupLabelService.MutateAdGroupLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/adGroupLabels:mutate" + "path": "/v9/customers/{customer_id=*}/adGroupLabels:mutate" } ] } @@ -6496,27 +7521,27 @@ }, { "shortName": "AdGroupService", - "fullName": "google.ads.googleads.v6.services.AdGroupService", + "fullName": "google.ads.googleads.v9.services.AdGroupService", "methods": [ { "shortName": "GetAdGroup", - "fullName": "google.ads.googleads.v6.services.AdGroupService.GetAdGroup", + "fullName": "google.ads.googleads.v9.services.AdGroupService.GetAdGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroups/*}" + "path": "/v9/{resource_name=customers/*/adGroups/*}" } ] }, { "shortName": "MutateAdGroups", - "fullName": "google.ads.googleads.v6.services.AdGroupService.MutateAdGroups", + "fullName": "google.ads.googleads.v9.services.AdGroupService.MutateAdGroups", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/adGroups:mutate" + "path": "/v9/customers/{customer_id=*}/adGroups:mutate" } ] } @@ -6524,16 +7549,16 @@ }, { "shortName": "AdGroupSimulationService", - "fullName": "google.ads.googleads.v6.services.AdGroupSimulationService", + "fullName": "google.ads.googleads.v9.services.AdGroupSimulationService", "methods": [ { "shortName": "GetAdGroupSimulation", - "fullName": "google.ads.googleads.v6.services.AdGroupSimulationService.GetAdGroupSimulation", + "fullName": "google.ads.googleads.v9.services.AdGroupSimulationService.GetAdGroupSimulation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adGroupSimulations/*}" + "path": "/v9/{resource_name=customers/*/adGroupSimulations/*}" } ] } @@ -6541,27 +7566,27 @@ }, { "shortName": "AdParameterService", - "fullName": "google.ads.googleads.v6.services.AdParameterService", + "fullName": "google.ads.googleads.v9.services.AdParameterService", "methods": [ { "shortName": "GetAdParameter", - "fullName": "google.ads.googleads.v6.services.AdParameterService.GetAdParameter", + "fullName": "google.ads.googleads.v9.services.AdParameterService.GetAdParameter", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adParameters/*}" + "path": "/v9/{resource_name=customers/*/adParameters/*}" } ] }, { "shortName": "MutateAdParameters", - "fullName": "google.ads.googleads.v6.services.AdParameterService.MutateAdParameters", + "fullName": "google.ads.googleads.v9.services.AdParameterService.MutateAdParameters", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/adParameters:mutate" + "path": "/v9/customers/{customer_id=*}/adParameters:mutate" } ] } @@ -6569,16 +7594,16 @@ }, { "shortName": "AdScheduleViewService", - "fullName": "google.ads.googleads.v6.services.AdScheduleViewService", + "fullName": "google.ads.googleads.v9.services.AdScheduleViewService", "methods": [ { "shortName": "GetAdScheduleView", - "fullName": "google.ads.googleads.v6.services.AdScheduleViewService.GetAdScheduleView", + "fullName": "google.ads.googleads.v9.services.AdScheduleViewService.GetAdScheduleView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/adScheduleViews/*}" + "path": "/v9/{resource_name=customers/*/adScheduleViews/*}" } ] } @@ -6586,27 +7611,27 @@ }, { "shortName": "AdService", - "fullName": "google.ads.googleads.v6.services.AdService", + "fullName": "google.ads.googleads.v9.services.AdService", "methods": [ { "shortName": "GetAd", - "fullName": "google.ads.googleads.v6.services.AdService.GetAd", + "fullName": "google.ads.googleads.v9.services.AdService.GetAd", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/ads/*}" + "path": "/v9/{resource_name=customers/*/ads/*}" } ] }, { "shortName": "MutateAds", - "fullName": "google.ads.googleads.v6.services.AdService.MutateAds", + "fullName": "google.ads.googleads.v9.services.AdService.MutateAds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/ads:mutate" + "path": "/v9/customers/{customer_id=*}/ads:mutate" } ] } @@ -6614,16 +7639,106 @@ }, { "shortName": "AgeRangeViewService", - "fullName": "google.ads.googleads.v6.services.AgeRangeViewService", + "fullName": "google.ads.googleads.v9.services.AgeRangeViewService", "methods": [ { "shortName": "GetAgeRangeView", - "fullName": "google.ads.googleads.v6.services.AgeRangeViewService.GetAgeRangeView", + "fullName": "google.ads.googleads.v9.services.AgeRangeViewService.GetAgeRangeView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/ageRangeViews/*}" + } + ] + } + ] + }, + { + "shortName": "AssetFieldTypeViewService", + "fullName": "google.ads.googleads.v9.services.AssetFieldTypeViewService", + "methods": [ + { + "shortName": "GetAssetFieldTypeView", + "fullName": "google.ads.googleads.v9.services.AssetFieldTypeViewService.GetAssetFieldTypeView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/assetFieldTypeViews/*}" + } + ] + } + ] + }, + { + "shortName": "AssetGroupAssetService", + "fullName": "google.ads.googleads.v9.services.AssetGroupAssetService", + "methods": [ + { + "shortName": "GetAssetGroupAsset", + "fullName": "google.ads.googleads.v9.services.AssetGroupAssetService.GetAssetGroupAsset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/assetGroupAssets/*}" + } + ] + }, + { + "shortName": "MutateAssetGroupAssets", + "fullName": "google.ads.googleads.v9.services.AssetGroupAssetService.MutateAssetGroupAssets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/assetGroupAssets:mutate" + } + ] + } + ] + }, + { + "shortName": "AssetGroupListingGroupFilterService", + "fullName": "google.ads.googleads.v9.services.AssetGroupListingGroupFilterService", + "methods": [ + { + "shortName": "MutateAssetGroupListingGroupFilters", + "fullName": "google.ads.googleads.v9.services.AssetGroupListingGroupFilterService.MutateAssetGroupListingGroupFilters", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/assetGroupListingGroupFilters:mutate" + } + ] + } + ] + }, + { + "shortName": "AssetGroupService", + "fullName": "google.ads.googleads.v9.services.AssetGroupService", + "methods": [ + { + "shortName": "GetAssetGroup", + "fullName": "google.ads.googleads.v9.services.AssetGroupService.GetAssetGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/ageRangeViews/*}" + "path": "/v9/{resource_name=customers/*/assetGroups/*}" + } + ] + }, + { + "shortName": "MutateAssetGroups", + "fullName": "google.ads.googleads.v9.services.AssetGroupService.MutateAssetGroups", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/assetGroups:mutate" } ] } @@ -6631,27 +7746,61 @@ }, { "shortName": "AssetService", - "fullName": "google.ads.googleads.v6.services.AssetService", + "fullName": "google.ads.googleads.v9.services.AssetService", "methods": [ { "shortName": "GetAsset", - "fullName": "google.ads.googleads.v6.services.AssetService.GetAsset", + "fullName": "google.ads.googleads.v9.services.AssetService.GetAsset", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/assets/*}" + "path": "/v9/{resource_name=customers/*/assets/*}" } ] }, { "shortName": "MutateAssets", - "fullName": "google.ads.googleads.v6.services.AssetService.MutateAssets", + "fullName": "google.ads.googleads.v9.services.AssetService.MutateAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/assets:mutate" + "path": "/v9/customers/{customer_id=*}/assets:mutate" + } + ] + } + ] + }, + { + "shortName": "AssetSetAssetService", + "fullName": "google.ads.googleads.v9.services.AssetSetAssetService", + "methods": [ + { + "shortName": "MutateAssetSetAssets", + "fullName": "google.ads.googleads.v9.services.AssetSetAssetService.MutateAssetSetAssets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/assetSetAssets:mutate" + } + ] + } + ] + }, + { + "shortName": "AssetSetService", + "fullName": "google.ads.googleads.v9.services.AssetSetService", + "methods": [ + { + "shortName": "MutateAssetSets", + "fullName": "google.ads.googleads.v9.services.AssetSetService.MutateAssetSets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/assetSets:mutate" } ] } @@ -6659,60 +7808,116 @@ }, { "shortName": "BatchJobService", - "fullName": "google.ads.googleads.v6.services.BatchJobService", + "fullName": "google.ads.googleads.v9.services.BatchJobService", "methods": [ { "shortName": "AddBatchJobOperations", - "fullName": "google.ads.googleads.v6.services.BatchJobService.AddBatchJobOperations", + "fullName": "google.ads.googleads.v9.services.BatchJobService.AddBatchJobOperations", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{resource_name=customers/*/batchJobs/*}:addOperations" + "path": "/v9/{resource_name=customers/*/batchJobs/*}:addOperations" } ] }, { "shortName": "GetBatchJob", - "fullName": "google.ads.googleads.v6.services.BatchJobService.GetBatchJob", + "fullName": "google.ads.googleads.v9.services.BatchJobService.GetBatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/batchJobs/*}" + "path": "/v9/{resource_name=customers/*/batchJobs/*}" } ] }, { "shortName": "ListBatchJobResults", - "fullName": "google.ads.googleads.v6.services.BatchJobService.ListBatchJobResults", + "fullName": "google.ads.googleads.v9.services.BatchJobService.ListBatchJobResults", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/batchJobs/*}:listResults" + "path": "/v9/{resource_name=customers/*/batchJobs/*}:listResults" } ] }, { "shortName": "MutateBatchJob", - "fullName": "google.ads.googleads.v6.services.BatchJobService.MutateBatchJob", + "fullName": "google.ads.googleads.v9.services.BatchJobService.MutateBatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/batchJobs:mutate" + "path": "/v9/customers/{customer_id=*}/batchJobs:mutate" } ] }, { "shortName": "RunBatchJob", - "fullName": "google.ads.googleads.v6.services.BatchJobService.RunBatchJob", + "fullName": "google.ads.googleads.v9.services.BatchJobService.RunBatchJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/{resource_name=customers/*/batchJobs/*}:run" + } + ] + } + ] + }, + { + "shortName": "BiddingDataExclusionService", + "fullName": "google.ads.googleads.v9.services.BiddingDataExclusionService", + "methods": [ + { + "shortName": "GetBiddingDataExclusion", + "fullName": "google.ads.googleads.v9.services.BiddingDataExclusionService.GetBiddingDataExclusion", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/biddingDataExclusions/*}" + } + ] + }, + { + "shortName": "MutateBiddingDataExclusions", + "fullName": "google.ads.googleads.v9.services.BiddingDataExclusionService.MutateBiddingDataExclusions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/biddingDataExclusions:mutate" + } + ] + } + ] + }, + { + "shortName": "BiddingSeasonalityAdjustmentService", + "fullName": "google.ads.googleads.v9.services.BiddingSeasonalityAdjustmentService", + "methods": [ + { + "shortName": "GetBiddingSeasonalityAdjustment", + "fullName": "google.ads.googleads.v9.services.BiddingSeasonalityAdjustmentService.GetBiddingSeasonalityAdjustment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/biddingSeasonalityAdjustments/*}" + } + ] + }, + { + "shortName": "MutateBiddingSeasonalityAdjustments", + "fullName": "google.ads.googleads.v9.services.BiddingSeasonalityAdjustmentService.MutateBiddingSeasonalityAdjustments", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{resource_name=customers/*/batchJobs/*}:run" + "path": "/v9/customers/{customer_id=*}/biddingSeasonalityAdjustments:mutate" } ] } @@ -6720,27 +7925,44 @@ }, { "shortName": "BiddingStrategyService", - "fullName": "google.ads.googleads.v6.services.BiddingStrategyService", + "fullName": "google.ads.googleads.v9.services.BiddingStrategyService", "methods": [ { "shortName": "GetBiddingStrategy", - "fullName": "google.ads.googleads.v6.services.BiddingStrategyService.GetBiddingStrategy", + "fullName": "google.ads.googleads.v9.services.BiddingStrategyService.GetBiddingStrategy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/biddingStrategies/*}" + "path": "/v9/{resource_name=customers/*/biddingStrategies/*}" } ] }, { "shortName": "MutateBiddingStrategies", - "fullName": "google.ads.googleads.v6.services.BiddingStrategyService.MutateBiddingStrategies", + "fullName": "google.ads.googleads.v9.services.BiddingStrategyService.MutateBiddingStrategies", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/biddingStrategies:mutate" + "path": "/v9/customers/{customer_id=*}/biddingStrategies:mutate" + } + ] + } + ] + }, + { + "shortName": "BiddingStrategySimulationService", + "fullName": "google.ads.googleads.v9.services.BiddingStrategySimulationService", + "methods": [ + { + "shortName": "GetBiddingStrategySimulation", + "fullName": "google.ads.googleads.v9.services.BiddingStrategySimulationService.GetBiddingStrategySimulation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/biddingStrategySimulations/*}" } ] } @@ -6748,27 +7970,27 @@ }, { "shortName": "BillingSetupService", - "fullName": "google.ads.googleads.v6.services.BillingSetupService", + "fullName": "google.ads.googleads.v9.services.BillingSetupService", "methods": [ { "shortName": "GetBillingSetup", - "fullName": "google.ads.googleads.v6.services.BillingSetupService.GetBillingSetup", + "fullName": "google.ads.googleads.v9.services.BillingSetupService.GetBillingSetup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/billingSetups/*}" + "path": "/v9/{resource_name=customers/*/billingSetups/*}" } ] }, { "shortName": "MutateBillingSetup", - "fullName": "google.ads.googleads.v6.services.BillingSetupService.MutateBillingSetup", + "fullName": "google.ads.googleads.v9.services.BillingSetupService.MutateBillingSetup", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/billingSetups:mutate" + "path": "/v9/customers/{customer_id=*}/billingSetups:mutate" } ] } @@ -6776,27 +7998,44 @@ }, { "shortName": "CampaignAssetService", - "fullName": "google.ads.googleads.v6.services.CampaignAssetService", + "fullName": "google.ads.googleads.v9.services.CampaignAssetService", "methods": [ { "shortName": "GetCampaignAsset", - "fullName": "google.ads.googleads.v6.services.CampaignAssetService.GetCampaignAsset", + "fullName": "google.ads.googleads.v9.services.CampaignAssetService.GetCampaignAsset", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignAssets/*}" + "path": "/v9/{resource_name=customers/*/campaignAssets/*}" } ] }, { "shortName": "MutateCampaignAssets", - "fullName": "google.ads.googleads.v6.services.CampaignAssetService.MutateCampaignAssets", + "fullName": "google.ads.googleads.v9.services.CampaignAssetService.MutateCampaignAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaignAssets:mutate" + "path": "/v9/customers/{customer_id=*}/campaignAssets:mutate" + } + ] + } + ] + }, + { + "shortName": "CampaignAssetSetService", + "fullName": "google.ads.googleads.v9.services.CampaignAssetSetService", + "methods": [ + { + "shortName": "MutateCampaignAssetSets", + "fullName": "google.ads.googleads.v9.services.CampaignAssetSetService.MutateCampaignAssetSets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/campaignAssetSets:mutate" } ] } @@ -6804,16 +8043,16 @@ }, { "shortName": "CampaignAudienceViewService", - "fullName": "google.ads.googleads.v6.services.CampaignAudienceViewService", + "fullName": "google.ads.googleads.v9.services.CampaignAudienceViewService", "methods": [ { "shortName": "GetCampaignAudienceView", - "fullName": "google.ads.googleads.v6.services.CampaignAudienceViewService.GetCampaignAudienceView", + "fullName": "google.ads.googleads.v9.services.CampaignAudienceViewService.GetCampaignAudienceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignAudienceViews/*}" + "path": "/v9/{resource_name=customers/*/campaignAudienceViews/*}" } ] } @@ -6821,27 +8060,27 @@ }, { "shortName": "CampaignBidModifierService", - "fullName": "google.ads.googleads.v6.services.CampaignBidModifierService", + "fullName": "google.ads.googleads.v9.services.CampaignBidModifierService", "methods": [ { "shortName": "GetCampaignBidModifier", - "fullName": "google.ads.googleads.v6.services.CampaignBidModifierService.GetCampaignBidModifier", + "fullName": "google.ads.googleads.v9.services.CampaignBidModifierService.GetCampaignBidModifier", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignBidModifiers/*}" + "path": "/v9/{resource_name=customers/*/campaignBidModifiers/*}" } ] }, { "shortName": "MutateCampaignBidModifiers", - "fullName": "google.ads.googleads.v6.services.CampaignBidModifierService.MutateCampaignBidModifiers", + "fullName": "google.ads.googleads.v9.services.CampaignBidModifierService.MutateCampaignBidModifiers", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaignBidModifiers:mutate" + "path": "/v9/customers/{customer_id=*}/campaignBidModifiers:mutate" } ] } @@ -6849,27 +8088,44 @@ }, { "shortName": "CampaignBudgetService", - "fullName": "google.ads.googleads.v6.services.CampaignBudgetService", + "fullName": "google.ads.googleads.v9.services.CampaignBudgetService", "methods": [ { "shortName": "GetCampaignBudget", - "fullName": "google.ads.googleads.v6.services.CampaignBudgetService.GetCampaignBudget", + "fullName": "google.ads.googleads.v9.services.CampaignBudgetService.GetCampaignBudget", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignBudgets/*}" + "path": "/v9/{resource_name=customers/*/campaignBudgets/*}" } ] }, { "shortName": "MutateCampaignBudgets", - "fullName": "google.ads.googleads.v6.services.CampaignBudgetService.MutateCampaignBudgets", + "fullName": "google.ads.googleads.v9.services.CampaignBudgetService.MutateCampaignBudgets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/campaignBudgets:mutate" + } + ] + } + ] + }, + { + "shortName": "CampaignConversionGoalService", + "fullName": "google.ads.googleads.v9.services.CampaignConversionGoalService", + "methods": [ + { + "shortName": "MutateCampaignConversionGoals", + "fullName": "google.ads.googleads.v9.services.CampaignConversionGoalService.MutateCampaignConversionGoals", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaignBudgets:mutate" + "path": "/v9/customers/{customer_id=*}/campaignConversionGoals:mutate" } ] } @@ -6877,27 +8133,27 @@ }, { "shortName": "CampaignCriterionService", - "fullName": "google.ads.googleads.v6.services.CampaignCriterionService", + "fullName": "google.ads.googleads.v9.services.CampaignCriterionService", "methods": [ { "shortName": "GetCampaignCriterion", - "fullName": "google.ads.googleads.v6.services.CampaignCriterionService.GetCampaignCriterion", + "fullName": "google.ads.googleads.v9.services.CampaignCriterionService.GetCampaignCriterion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignCriteria/*}" + "path": "/v9/{resource_name=customers/*/campaignCriteria/*}" } ] }, { "shortName": "MutateCampaignCriteria", - "fullName": "google.ads.googleads.v6.services.CampaignCriterionService.MutateCampaignCriteria", + "fullName": "google.ads.googleads.v9.services.CampaignCriterionService.MutateCampaignCriteria", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaignCriteria:mutate" + "path": "/v9/customers/{customer_id=*}/campaignCriteria:mutate" } ] } @@ -6905,16 +8161,33 @@ }, { "shortName": "CampaignCriterionSimulationService", - "fullName": "google.ads.googleads.v6.services.CampaignCriterionSimulationService", + "fullName": "google.ads.googleads.v9.services.CampaignCriterionSimulationService", "methods": [ { "shortName": "GetCampaignCriterionSimulation", - "fullName": "google.ads.googleads.v6.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation", + "fullName": "google.ads.googleads.v9.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignCriterionSimulations/*}" + "path": "/v9/{resource_name=customers/*/campaignCriterionSimulations/*}" + } + ] + } + ] + }, + { + "shortName": "CampaignCustomizerService", + "fullName": "google.ads.googleads.v9.services.CampaignCustomizerService", + "methods": [ + { + "shortName": "MutateCampaignCustomizers", + "fullName": "google.ads.googleads.v9.services.CampaignCustomizerService.MutateCampaignCustomizers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/campaignCustomizers:mutate" } ] } @@ -6922,49 +8195,49 @@ }, { "shortName": "CampaignDraftService", - "fullName": "google.ads.googleads.v6.services.CampaignDraftService", + "fullName": "google.ads.googleads.v9.services.CampaignDraftService", "methods": [ { "shortName": "GetCampaignDraft", - "fullName": "google.ads.googleads.v6.services.CampaignDraftService.GetCampaignDraft", + "fullName": "google.ads.googleads.v9.services.CampaignDraftService.GetCampaignDraft", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignDrafts/*}" + "path": "/v9/{resource_name=customers/*/campaignDrafts/*}" } ] }, { "shortName": "ListCampaignDraftAsyncErrors", - "fullName": "google.ads.googleads.v6.services.CampaignDraftService.ListCampaignDraftAsyncErrors", + "fullName": "google.ads.googleads.v9.services.CampaignDraftService.ListCampaignDraftAsyncErrors", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" + "path": "/v9/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" } ] }, { "shortName": "MutateCampaignDrafts", - "fullName": "google.ads.googleads.v6.services.CampaignDraftService.MutateCampaignDrafts", + "fullName": "google.ads.googleads.v9.services.CampaignDraftService.MutateCampaignDrafts", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaignDrafts:mutate" + "path": "/v9/customers/{customer_id=*}/campaignDrafts:mutate" } ] }, { "shortName": "PromoteCampaignDraft", - "fullName": "google.ads.googleads.v6.services.CampaignDraftService.PromoteCampaignDraft", + "fullName": "google.ads.googleads.v9.services.CampaignDraftService.PromoteCampaignDraft", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{campaign_draft=customers/*/campaignDrafts/*}:promote" + "path": "/v9/{campaign_draft=customers/*/campaignDrafts/*}:promote" } ] } @@ -6972,82 +8245,82 @@ }, { "shortName": "CampaignExperimentService", - "fullName": "google.ads.googleads.v6.services.CampaignExperimentService", + "fullName": "google.ads.googleads.v9.services.CampaignExperimentService", "methods": [ { "shortName": "CreateCampaignExperiment", - "fullName": "google.ads.googleads.v6.services.CampaignExperimentService.CreateCampaignExperiment", + "fullName": "google.ads.googleads.v9.services.CampaignExperimentService.CreateCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaignExperiments:create" + "path": "/v9/customers/{customer_id=*}/campaignExperiments:create" } ] }, { "shortName": "EndCampaignExperiment", - "fullName": "google.ads.googleads.v6.services.CampaignExperimentService.EndCampaignExperiment", + "fullName": "google.ads.googleads.v9.services.CampaignExperimentService.EndCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{campaign_experiment=customers/*/campaignExperiments/*}:end" + "path": "/v9/{campaign_experiment=customers/*/campaignExperiments/*}:end" } ] }, { "shortName": "GetCampaignExperiment", - "fullName": "google.ads.googleads.v6.services.CampaignExperimentService.GetCampaignExperiment", + "fullName": "google.ads.googleads.v9.services.CampaignExperimentService.GetCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignExperiments/*}" + "path": "/v9/{resource_name=customers/*/campaignExperiments/*}" } ] }, { "shortName": "GraduateCampaignExperiment", - "fullName": "google.ads.googleads.v6.services.CampaignExperimentService.GraduateCampaignExperiment", + "fullName": "google.ads.googleads.v9.services.CampaignExperimentService.GraduateCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" + "path": "/v9/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" } ] }, { "shortName": "ListCampaignExperimentAsyncErrors", - "fullName": "google.ads.googleads.v6.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors", + "fullName": "google.ads.googleads.v9.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" + "path": "/v9/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" } ] }, { "shortName": "MutateCampaignExperiments", - "fullName": "google.ads.googleads.v6.services.CampaignExperimentService.MutateCampaignExperiments", + "fullName": "google.ads.googleads.v9.services.CampaignExperimentService.MutateCampaignExperiments", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaignExperiments:mutate" + "path": "/v9/customers/{customer_id=*}/campaignExperiments:mutate" } ] }, { "shortName": "PromoteCampaignExperiment", - "fullName": "google.ads.googleads.v6.services.CampaignExperimentService.PromoteCampaignExperiment", + "fullName": "google.ads.googleads.v9.services.CampaignExperimentService.PromoteCampaignExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{campaign_experiment=customers/*/campaignExperiments/*}:promote" + "path": "/v9/{campaign_experiment=customers/*/campaignExperiments/*}:promote" } ] } @@ -7055,27 +8328,27 @@ }, { "shortName": "CampaignExtensionSettingService", - "fullName": "google.ads.googleads.v6.services.CampaignExtensionSettingService", + "fullName": "google.ads.googleads.v9.services.CampaignExtensionSettingService", "methods": [ { "shortName": "GetCampaignExtensionSetting", - "fullName": "google.ads.googleads.v6.services.CampaignExtensionSettingService.GetCampaignExtensionSetting", + "fullName": "google.ads.googleads.v9.services.CampaignExtensionSettingService.GetCampaignExtensionSetting", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignExtensionSettings/*}" + "path": "/v9/{resource_name=customers/*/campaignExtensionSettings/*}" } ] }, { "shortName": "MutateCampaignExtensionSettings", - "fullName": "google.ads.googleads.v6.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings", + "fullName": "google.ads.googleads.v9.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaignExtensionSettings:mutate" + "path": "/v9/customers/{customer_id=*}/campaignExtensionSettings:mutate" } ] } @@ -7083,27 +8356,27 @@ }, { "shortName": "CampaignFeedService", - "fullName": "google.ads.googleads.v6.services.CampaignFeedService", + "fullName": "google.ads.googleads.v9.services.CampaignFeedService", "methods": [ { "shortName": "GetCampaignFeed", - "fullName": "google.ads.googleads.v6.services.CampaignFeedService.GetCampaignFeed", + "fullName": "google.ads.googleads.v9.services.CampaignFeedService.GetCampaignFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignFeeds/*}" + "path": "/v9/{resource_name=customers/*/campaignFeeds/*}" } ] }, { "shortName": "MutateCampaignFeeds", - "fullName": "google.ads.googleads.v6.services.CampaignFeedService.MutateCampaignFeeds", + "fullName": "google.ads.googleads.v9.services.CampaignFeedService.MutateCampaignFeeds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaignFeeds:mutate" + "path": "/v9/customers/{customer_id=*}/campaignFeeds:mutate" } ] } @@ -7111,27 +8384,27 @@ }, { "shortName": "CampaignLabelService", - "fullName": "google.ads.googleads.v6.services.CampaignLabelService", + "fullName": "google.ads.googleads.v9.services.CampaignLabelService", "methods": [ { "shortName": "GetCampaignLabel", - "fullName": "google.ads.googleads.v6.services.CampaignLabelService.GetCampaignLabel", + "fullName": "google.ads.googleads.v9.services.CampaignLabelService.GetCampaignLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignLabels/*}" + "path": "/v9/{resource_name=customers/*/campaignLabels/*}" } ] }, { "shortName": "MutateCampaignLabels", - "fullName": "google.ads.googleads.v6.services.CampaignLabelService.MutateCampaignLabels", + "fullName": "google.ads.googleads.v9.services.CampaignLabelService.MutateCampaignLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaignLabels:mutate" + "path": "/v9/customers/{customer_id=*}/campaignLabels:mutate" } ] } @@ -7139,27 +8412,27 @@ }, { "shortName": "CampaignService", - "fullName": "google.ads.googleads.v6.services.CampaignService", + "fullName": "google.ads.googleads.v9.services.CampaignService", "methods": [ { "shortName": "GetCampaign", - "fullName": "google.ads.googleads.v6.services.CampaignService.GetCampaign", + "fullName": "google.ads.googleads.v9.services.CampaignService.GetCampaign", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaigns/*}" + "path": "/v9/{resource_name=customers/*/campaigns/*}" } ] }, { "shortName": "MutateCampaigns", - "fullName": "google.ads.googleads.v6.services.CampaignService.MutateCampaigns", + "fullName": "google.ads.googleads.v9.services.CampaignService.MutateCampaigns", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaigns:mutate" + "path": "/v9/customers/{customer_id=*}/campaigns:mutate" } ] } @@ -7167,27 +8440,44 @@ }, { "shortName": "CampaignSharedSetService", - "fullName": "google.ads.googleads.v6.services.CampaignSharedSetService", + "fullName": "google.ads.googleads.v9.services.CampaignSharedSetService", "methods": [ { "shortName": "GetCampaignSharedSet", - "fullName": "google.ads.googleads.v6.services.CampaignSharedSetService.GetCampaignSharedSet", + "fullName": "google.ads.googleads.v9.services.CampaignSharedSetService.GetCampaignSharedSet", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/campaignSharedSets/*}" + "path": "/v9/{resource_name=customers/*/campaignSharedSets/*}" } ] }, { "shortName": "MutateCampaignSharedSets", - "fullName": "google.ads.googleads.v6.services.CampaignSharedSetService.MutateCampaignSharedSets", + "fullName": "google.ads.googleads.v9.services.CampaignSharedSetService.MutateCampaignSharedSets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/campaignSharedSets:mutate" + "path": "/v9/customers/{customer_id=*}/campaignSharedSets:mutate" + } + ] + } + ] + }, + { + "shortName": "CampaignSimulationService", + "fullName": "google.ads.googleads.v9.services.CampaignSimulationService", + "methods": [ + { + "shortName": "GetCampaignSimulation", + "fullName": "google.ads.googleads.v9.services.CampaignSimulationService.GetCampaignSimulation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/campaignSimulations/*}" } ] } @@ -7195,16 +8485,16 @@ }, { "shortName": "CarrierConstantService", - "fullName": "google.ads.googleads.v6.services.CarrierConstantService", + "fullName": "google.ads.googleads.v9.services.CarrierConstantService", "methods": [ { "shortName": "GetCarrierConstant", - "fullName": "google.ads.googleads.v6.services.CarrierConstantService.GetCarrierConstant", + "fullName": "google.ads.googleads.v9.services.CarrierConstantService.GetCarrierConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=carrierConstants/*}" + "path": "/v9/{resource_name=carrierConstants/*}" } ] } @@ -7212,16 +8502,16 @@ }, { "shortName": "ChangeStatusService", - "fullName": "google.ads.googleads.v6.services.ChangeStatusService", + "fullName": "google.ads.googleads.v9.services.ChangeStatusService", "methods": [ { "shortName": "GetChangeStatus", - "fullName": "google.ads.googleads.v6.services.ChangeStatusService.GetChangeStatus", + "fullName": "google.ads.googleads.v9.services.ChangeStatusService.GetChangeStatus", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/changeStatus/*}" + "path": "/v9/{resource_name=customers/*/changeStatus/*}" } ] } @@ -7229,16 +8519,16 @@ }, { "shortName": "ClickViewService", - "fullName": "google.ads.googleads.v6.services.ClickViewService", + "fullName": "google.ads.googleads.v9.services.ClickViewService", "methods": [ { "shortName": "GetClickView", - "fullName": "google.ads.googleads.v6.services.ClickViewService.GetClickView", + "fullName": "google.ads.googleads.v9.services.ClickViewService.GetClickView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/clickViews/*}" + "path": "/v9/{resource_name=customers/*/clickViews/*}" } ] } @@ -7246,16 +8536,16 @@ }, { "shortName": "CombinedAudienceService", - "fullName": "google.ads.googleads.v6.services.CombinedAudienceService", + "fullName": "google.ads.googleads.v9.services.CombinedAudienceService", "methods": [ { "shortName": "GetCombinedAudience", - "fullName": "google.ads.googleads.v6.services.CombinedAudienceService.GetCombinedAudience", + "fullName": "google.ads.googleads.v9.services.CombinedAudienceService.GetCombinedAudience", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/combinedAudiences/*}" + "path": "/v9/{resource_name=customers/*/combinedAudiences/*}" } ] } @@ -7263,27 +8553,27 @@ }, { "shortName": "ConversionActionService", - "fullName": "google.ads.googleads.v6.services.ConversionActionService", + "fullName": "google.ads.googleads.v9.services.ConversionActionService", "methods": [ { "shortName": "GetConversionAction", - "fullName": "google.ads.googleads.v6.services.ConversionActionService.GetConversionAction", + "fullName": "google.ads.googleads.v9.services.ConversionActionService.GetConversionAction", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/conversionActions/*}" + "path": "/v9/{resource_name=customers/*/conversionActions/*}" } ] }, { "shortName": "MutateConversionActions", - "fullName": "google.ads.googleads.v6.services.ConversionActionService.MutateConversionActions", + "fullName": "google.ads.googleads.v9.services.ConversionActionService.MutateConversionActions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/conversionActions:mutate" + "path": "/v9/customers/{customer_id=*}/conversionActions:mutate" } ] } @@ -7291,16 +8581,61 @@ }, { "shortName": "ConversionAdjustmentUploadService", - "fullName": "google.ads.googleads.v6.services.ConversionAdjustmentUploadService", + "fullName": "google.ads.googleads.v9.services.ConversionAdjustmentUploadService", "methods": [ { "shortName": "UploadConversionAdjustments", - "fullName": "google.ads.googleads.v6.services.ConversionAdjustmentUploadService.UploadConversionAdjustments", + "fullName": "google.ads.googleads.v9.services.ConversionAdjustmentUploadService.UploadConversionAdjustments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}:uploadConversionAdjustments" + } + ] + } + ] + }, + { + "shortName": "ConversionCustomVariableService", + "fullName": "google.ads.googleads.v9.services.ConversionCustomVariableService", + "methods": [ + { + "shortName": "GetConversionCustomVariable", + "fullName": "google.ads.googleads.v9.services.ConversionCustomVariableService.GetConversionCustomVariable", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/conversionCustomVariables/*}" + } + ] + }, + { + "shortName": "MutateConversionCustomVariables", + "fullName": "google.ads.googleads.v9.services.ConversionCustomVariableService.MutateConversionCustomVariables", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/conversionCustomVariables:mutate" + } + ] + } + ] + }, + { + "shortName": "ConversionGoalCampaignConfigService", + "fullName": "google.ads.googleads.v9.services.ConversionGoalCampaignConfigService", + "methods": [ + { + "shortName": "MutateConversionGoalCampaignConfigs", + "fullName": "google.ads.googleads.v9.services.ConversionGoalCampaignConfigService.MutateConversionGoalCampaignConfigs", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}:uploadConversionAdjustments" + "path": "/v9/customers/{customer_id=*}/conversionGoalCampaignConfigs:mutate" } ] } @@ -7308,27 +8643,83 @@ }, { "shortName": "ConversionUploadService", - "fullName": "google.ads.googleads.v6.services.ConversionUploadService", + "fullName": "google.ads.googleads.v9.services.ConversionUploadService", "methods": [ { "shortName": "UploadCallConversions", - "fullName": "google.ads.googleads.v6.services.ConversionUploadService.UploadCallConversions", + "fullName": "google.ads.googleads.v9.services.ConversionUploadService.UploadCallConversions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}:uploadCallConversions" + "path": "/v9/customers/{customer_id=*}:uploadCallConversions" } ] }, { "shortName": "UploadClickConversions", - "fullName": "google.ads.googleads.v6.services.ConversionUploadService.UploadClickConversions", + "fullName": "google.ads.googleads.v9.services.ConversionUploadService.UploadClickConversions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}:uploadClickConversions" + } + ] + } + ] + }, + { + "shortName": "ConversionValueRuleService", + "fullName": "google.ads.googleads.v9.services.ConversionValueRuleService", + "methods": [ + { + "shortName": "GetConversionValueRule", + "fullName": "google.ads.googleads.v9.services.ConversionValueRuleService.GetConversionValueRule", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/conversionValueRules/*}" + } + ] + }, + { + "shortName": "MutateConversionValueRules", + "fullName": "google.ads.googleads.v9.services.ConversionValueRuleService.MutateConversionValueRules", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/conversionValueRules:mutate" + } + ] + } + ] + }, + { + "shortName": "ConversionValueRuleSetService", + "fullName": "google.ads.googleads.v9.services.ConversionValueRuleSetService", + "methods": [ + { + "shortName": "GetConversionValueRuleSet", + "fullName": "google.ads.googleads.v9.services.ConversionValueRuleSetService.GetConversionValueRuleSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/conversionValueRuleSets/*}" + } + ] + }, + { + "shortName": "MutateConversionValueRuleSets", + "fullName": "google.ads.googleads.v9.services.ConversionValueRuleSetService.MutateConversionValueRuleSets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}:uploadClickConversions" + "path": "/v9/customers/{customer_id=*}/conversionValueRuleSets:mutate" } ] } @@ -7336,16 +8727,16 @@ }, { "shortName": "CurrencyConstantService", - "fullName": "google.ads.googleads.v6.services.CurrencyConstantService", + "fullName": "google.ads.googleads.v9.services.CurrencyConstantService", "methods": [ { "shortName": "GetCurrencyConstant", - "fullName": "google.ads.googleads.v6.services.CurrencyConstantService.GetCurrencyConstant", + "fullName": "google.ads.googleads.v9.services.CurrencyConstantService.GetCurrencyConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=currencyConstants/*}" + "path": "/v9/{resource_name=currencyConstants/*}" } ] } @@ -7353,27 +8744,100 @@ }, { "shortName": "CustomAudienceService", - "fullName": "google.ads.googleads.v6.services.CustomAudienceService", + "fullName": "google.ads.googleads.v9.services.CustomAudienceService", "methods": [ { "shortName": "GetCustomAudience", - "fullName": "google.ads.googleads.v6.services.CustomAudienceService.GetCustomAudience", + "fullName": "google.ads.googleads.v9.services.CustomAudienceService.GetCustomAudience", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/customAudiences/*}" + "path": "/v9/{resource_name=customers/*/customAudiences/*}" } ] }, { "shortName": "MutateCustomAudiences", - "fullName": "google.ads.googleads.v6.services.CustomAudienceService.MutateCustomAudiences", + "fullName": "google.ads.googleads.v9.services.CustomAudienceService.MutateCustomAudiences", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/customAudiences:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomConversionGoalService", + "fullName": "google.ads.googleads.v9.services.CustomConversionGoalService", + "methods": [ + { + "shortName": "MutateCustomConversionGoals", + "fullName": "google.ads.googleads.v9.services.CustomConversionGoalService.MutateCustomConversionGoals", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/customConversionGoals:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomInterestService", + "fullName": "google.ads.googleads.v9.services.CustomInterestService", + "methods": [ + { + "shortName": "GetCustomInterest", + "fullName": "google.ads.googleads.v9.services.CustomInterestService.GetCustomInterest", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/customInterests/*}" + } + ] + }, + { + "shortName": "MutateCustomInterests", + "fullName": "google.ads.googleads.v9.services.CustomInterestService.MutateCustomInterests", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/customAudiences:mutate" + "path": "/v9/customers/{customer_id=*}/customInterests:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerAssetService", + "fullName": "google.ads.googleads.v9.services.CustomerAssetService", + "methods": [ + { + "shortName": "GetCustomerAsset", + "fullName": "google.ads.googleads.v9.services.CustomerAssetService.GetCustomerAsset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/customerAssets/*}" + } + ] + }, + { + "shortName": "MutateCustomerAssets", + "fullName": "google.ads.googleads.v9.services.CustomerAssetService.MutateCustomerAssets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/customerAssets:mutate" } ] } @@ -7381,27 +8845,27 @@ }, { "shortName": "CustomerClientLinkService", - "fullName": "google.ads.googleads.v6.services.CustomerClientLinkService", + "fullName": "google.ads.googleads.v9.services.CustomerClientLinkService", "methods": [ { "shortName": "GetCustomerClientLink", - "fullName": "google.ads.googleads.v6.services.CustomerClientLinkService.GetCustomerClientLink", + "fullName": "google.ads.googleads.v9.services.CustomerClientLinkService.GetCustomerClientLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/customerClientLinks/*}" + "path": "/v9/{resource_name=customers/*/customerClientLinks/*}" } ] }, { "shortName": "MutateCustomerClientLink", - "fullName": "google.ads.googleads.v6.services.CustomerClientLinkService.MutateCustomerClientLink", + "fullName": "google.ads.googleads.v9.services.CustomerClientLinkService.MutateCustomerClientLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/customerClientLinks:mutate" + "path": "/v9/customers/{customer_id=*}/customerClientLinks:mutate" } ] } @@ -7409,16 +8873,50 @@ }, { "shortName": "CustomerClientService", - "fullName": "google.ads.googleads.v6.services.CustomerClientService", + "fullName": "google.ads.googleads.v9.services.CustomerClientService", "methods": [ { "shortName": "GetCustomerClient", - "fullName": "google.ads.googleads.v6.services.CustomerClientService.GetCustomerClient", + "fullName": "google.ads.googleads.v9.services.CustomerClientService.GetCustomerClient", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/customerClients/*}" + "path": "/v9/{resource_name=customers/*/customerClients/*}" + } + ] + } + ] + }, + { + "shortName": "CustomerConversionGoalService", + "fullName": "google.ads.googleads.v9.services.CustomerConversionGoalService", + "methods": [ + { + "shortName": "MutateCustomerConversionGoals", + "fullName": "google.ads.googleads.v9.services.CustomerConversionGoalService.MutateCustomerConversionGoals", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/customerConversionGoals:mutate" + } + ] + } + ] + }, + { + "shortName": "CustomerCustomizerService", + "fullName": "google.ads.googleads.v9.services.CustomerCustomizerService", + "methods": [ + { + "shortName": "MutateCustomerCustomizers", + "fullName": "google.ads.googleads.v9.services.CustomerCustomizerService.MutateCustomerCustomizers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/CustomerCustomizers:mutate" } ] } @@ -7426,27 +8924,27 @@ }, { "shortName": "CustomerExtensionSettingService", - "fullName": "google.ads.googleads.v6.services.CustomerExtensionSettingService", + "fullName": "google.ads.googleads.v9.services.CustomerExtensionSettingService", "methods": [ { "shortName": "GetCustomerExtensionSetting", - "fullName": "google.ads.googleads.v6.services.CustomerExtensionSettingService.GetCustomerExtensionSetting", + "fullName": "google.ads.googleads.v9.services.CustomerExtensionSettingService.GetCustomerExtensionSetting", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/customerExtensionSettings/*}" + "path": "/v9/{resource_name=customers/*/customerExtensionSettings/*}" } ] }, { "shortName": "MutateCustomerExtensionSettings", - "fullName": "google.ads.googleads.v6.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings", + "fullName": "google.ads.googleads.v9.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/customerExtensionSettings:mutate" + "path": "/v9/customers/{customer_id=*}/customerExtensionSettings:mutate" } ] } @@ -7454,27 +8952,27 @@ }, { "shortName": "CustomerFeedService", - "fullName": "google.ads.googleads.v6.services.CustomerFeedService", + "fullName": "google.ads.googleads.v9.services.CustomerFeedService", "methods": [ { "shortName": "GetCustomerFeed", - "fullName": "google.ads.googleads.v6.services.CustomerFeedService.GetCustomerFeed", + "fullName": "google.ads.googleads.v9.services.CustomerFeedService.GetCustomerFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/customerFeeds/*}" + "path": "/v9/{resource_name=customers/*/customerFeeds/*}" } ] }, { "shortName": "MutateCustomerFeeds", - "fullName": "google.ads.googleads.v6.services.CustomerFeedService.MutateCustomerFeeds", + "fullName": "google.ads.googleads.v9.services.CustomerFeedService.MutateCustomerFeeds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/customerFeeds:mutate" + "path": "/v9/customers/{customer_id=*}/customerFeeds:mutate" } ] } @@ -7482,27 +8980,27 @@ }, { "shortName": "CustomerLabelService", - "fullName": "google.ads.googleads.v6.services.CustomerLabelService", + "fullName": "google.ads.googleads.v9.services.CustomerLabelService", "methods": [ { "shortName": "GetCustomerLabel", - "fullName": "google.ads.googleads.v6.services.CustomerLabelService.GetCustomerLabel", + "fullName": "google.ads.googleads.v9.services.CustomerLabelService.GetCustomerLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/customerLabels/*}" + "path": "/v9/{resource_name=customers/*/customerLabels/*}" } ] }, { "shortName": "MutateCustomerLabels", - "fullName": "google.ads.googleads.v6.services.CustomerLabelService.MutateCustomerLabels", + "fullName": "google.ads.googleads.v9.services.CustomerLabelService.MutateCustomerLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/customerLabels:mutate" + "path": "/v9/customers/{customer_id=*}/customerLabels:mutate" } ] } @@ -7510,38 +9008,38 @@ }, { "shortName": "CustomerManagerLinkService", - "fullName": "google.ads.googleads.v6.services.CustomerManagerLinkService", + "fullName": "google.ads.googleads.v9.services.CustomerManagerLinkService", "methods": [ { "shortName": "GetCustomerManagerLink", - "fullName": "google.ads.googleads.v6.services.CustomerManagerLinkService.GetCustomerManagerLink", + "fullName": "google.ads.googleads.v9.services.CustomerManagerLinkService.GetCustomerManagerLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/customerManagerLinks/*}" + "path": "/v9/{resource_name=customers/*/customerManagerLinks/*}" } ] }, { "shortName": "MoveManagerLink", - "fullName": "google.ads.googleads.v6.services.CustomerManagerLinkService.MoveManagerLink", + "fullName": "google.ads.googleads.v9.services.CustomerManagerLinkService.MoveManagerLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" + "path": "/v9/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" } ] }, { "shortName": "MutateCustomerManagerLink", - "fullName": "google.ads.googleads.v6.services.CustomerManagerLinkService.MutateCustomerManagerLink", + "fullName": "google.ads.googleads.v9.services.CustomerManagerLinkService.MutateCustomerManagerLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/customerManagerLinks:mutate" + "path": "/v9/customers/{customer_id=*}/customerManagerLinks:mutate" } ] } @@ -7549,27 +9047,27 @@ }, { "shortName": "CustomerNegativeCriterionService", - "fullName": "google.ads.googleads.v6.services.CustomerNegativeCriterionService", + "fullName": "google.ads.googleads.v9.services.CustomerNegativeCriterionService", "methods": [ { "shortName": "GetCustomerNegativeCriterion", - "fullName": "google.ads.googleads.v6.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion", + "fullName": "google.ads.googleads.v9.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/customerNegativeCriteria/*}" + "path": "/v9/{resource_name=customers/*/customerNegativeCriteria/*}" } ] }, { "shortName": "MutateCustomerNegativeCriteria", - "fullName": "google.ads.googleads.v6.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria", + "fullName": "google.ads.googleads.v9.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/customerNegativeCriteria:mutate" + "path": "/v9/customers/{customer_id=*}/customerNegativeCriteria:mutate" } ] } @@ -7577,49 +9075,49 @@ }, { "shortName": "CustomerService", - "fullName": "google.ads.googleads.v6.services.CustomerService", + "fullName": "google.ads.googleads.v9.services.CustomerService", "methods": [ { "shortName": "CreateCustomerClient", - "fullName": "google.ads.googleads.v6.services.CustomerService.CreateCustomerClient", + "fullName": "google.ads.googleads.v9.services.CustomerService.CreateCustomerClient", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}:createCustomerClient" + "path": "/v9/customers/{customer_id=*}:createCustomerClient" } ] }, { "shortName": "GetCustomer", - "fullName": "google.ads.googleads.v6.services.CustomerService.GetCustomer", + "fullName": "google.ads.googleads.v9.services.CustomerService.GetCustomer", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*}" + "path": "/v9/{resource_name=customers/*}" } ] }, { "shortName": "ListAccessibleCustomers", - "fullName": "google.ads.googleads.v6.services.CustomerService.ListAccessibleCustomers", + "fullName": "google.ads.googleads.v9.services.CustomerService.ListAccessibleCustomers", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/customers:listAccessibleCustomers" + "path": "/v9/customers:listAccessibleCustomers" } ] }, { "shortName": "MutateCustomer", - "fullName": "google.ads.googleads.v6.services.CustomerService.MutateCustomer", + "fullName": "google.ads.googleads.v9.services.CustomerService.MutateCustomer", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}:mutate" + "path": "/v9/customers/{customer_id=*}:mutate" } ] } @@ -7627,27 +9125,27 @@ }, { "shortName": "CustomerUserAccessInvitationService", - "fullName": "google.ads.googleads.v6.services.CustomerUserAccessInvitationService", + "fullName": "google.ads.googleads.v9.services.CustomerUserAccessInvitationService", "methods": [ { "shortName": "GetCustomerUserAccessInvitation", - "fullName": "google.ads.googleads.v6.services.CustomerUserAccessInvitationService.GetCustomerUserAccessInvitation", + "fullName": "google.ads.googleads.v9.services.CustomerUserAccessInvitationService.GetCustomerUserAccessInvitation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/customerUserAccessInvitations/*}" + "path": "/v9/{resource_name=customers/*/customerUserAccessInvitations/*}" } ] }, { "shortName": "MutateCustomerUserAccessInvitation", - "fullName": "google.ads.googleads.v6.services.CustomerUserAccessInvitationService.MutateCustomerUserAccessInvitation", + "fullName": "google.ads.googleads.v9.services.CustomerUserAccessInvitationService.MutateCustomerUserAccessInvitation", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/customerUserAccessInvitations:mutate" + "path": "/v9/customers/{customer_id=*}/customerUserAccessInvitations:mutate" } ] } @@ -7655,72 +9153,78 @@ }, { "shortName": "CustomerUserAccessService", - "fullName": "google.ads.googleads.v6.services.CustomerUserAccessService", + "fullName": "google.ads.googleads.v9.services.CustomerUserAccessService", "methods": [ { "shortName": "GetCustomerUserAccess", - "fullName": "google.ads.googleads.v6.services.CustomerUserAccessService.GetCustomerUserAccess", + "fullName": "google.ads.googleads.v9.services.CustomerUserAccessService.GetCustomerUserAccess", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/customerUserAccesses/*}" + "path": "/v9/{resource_name=customers/*/customerUserAccesses/*}" } ] }, { "shortName": "MutateCustomerUserAccess", - "fullName": "google.ads.googleads.v6.services.CustomerUserAccessService.MutateCustomerUserAccess", + "fullName": "google.ads.googleads.v9.services.CustomerUserAccessService.MutateCustomerUserAccess", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/customerUserAccesses:mutate" + "path": "/v9/customers/{customer_id=*}/customerUserAccesses:mutate" } ] } ] }, { - "shortName": "CustomInterestService", - "fullName": "google.ads.googleads.v6.services.CustomInterestService", + "shortName": "CustomizerAttributeService", + "fullName": "google.ads.googleads.v9.services.CustomizerAttributeService", "methods": [ { - "shortName": "GetCustomInterest", - "fullName": "google.ads.googleads.v6.services.CustomInterestService.GetCustomInterest", + "shortName": "MutateCustomizerAttributes", + "fullName": "google.ads.googleads.v9.services.CustomizerAttributeService.MutateCustomizerAttributes", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/customInterests/*}" + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/customizerAttributes:mutate" } ] - }, + } + ] + }, + { + "shortName": "DetailPlacementViewService", + "fullName": "google.ads.googleads.v9.services.DetailPlacementViewService", + "methods": [ { - "shortName": "MutateCustomInterests", - "fullName": "google.ads.googleads.v6.services.CustomInterestService.MutateCustomInterests", + "shortName": "GetDetailPlacementView", + "fullName": "google.ads.googleads.v9.services.DetailPlacementViewService.GetDetailPlacementView", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/customInterests:mutate" + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/detailPlacementViews/*}" } ] } ] }, { - "shortName": "DetailPlacementViewService", - "fullName": "google.ads.googleads.v6.services.DetailPlacementViewService", + "shortName": "DetailedDemographicService", + "fullName": "google.ads.googleads.v9.services.DetailedDemographicService", "methods": [ { - "shortName": "GetDetailPlacementView", - "fullName": "google.ads.googleads.v6.services.DetailPlacementViewService.GetDetailPlacementView", + "shortName": "GetDetailedDemographic", + "fullName": "google.ads.googleads.v9.services.DetailedDemographicService.GetDetailedDemographic", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/detailPlacementViews/*}" + "path": "/v9/{resource_name=customers/*/detailedDemographics/*}" } ] } @@ -7728,16 +9232,16 @@ }, { "shortName": "DisplayKeywordViewService", - "fullName": "google.ads.googleads.v6.services.DisplayKeywordViewService", + "fullName": "google.ads.googleads.v9.services.DisplayKeywordViewService", "methods": [ { "shortName": "GetDisplayKeywordView", - "fullName": "google.ads.googleads.v6.services.DisplayKeywordViewService.GetDisplayKeywordView", + "fullName": "google.ads.googleads.v9.services.DisplayKeywordViewService.GetDisplayKeywordView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/displayKeywordViews/*}" + "path": "/v9/{resource_name=customers/*/displayKeywordViews/*}" } ] } @@ -7745,16 +9249,16 @@ }, { "shortName": "DistanceViewService", - "fullName": "google.ads.googleads.v6.services.DistanceViewService", + "fullName": "google.ads.googleads.v9.services.DistanceViewService", "methods": [ { "shortName": "GetDistanceView", - "fullName": "google.ads.googleads.v6.services.DistanceViewService.GetDistanceView", + "fullName": "google.ads.googleads.v9.services.DistanceViewService.GetDistanceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/distanceViews/*}" + "path": "/v9/{resource_name=customers/*/distanceViews/*}" } ] } @@ -7762,16 +9266,16 @@ }, { "shortName": "DomainCategoryService", - "fullName": "google.ads.googleads.v6.services.DomainCategoryService", + "fullName": "google.ads.googleads.v9.services.DomainCategoryService", "methods": [ { "shortName": "GetDomainCategory", - "fullName": "google.ads.googleads.v6.services.DomainCategoryService.GetDomainCategory", + "fullName": "google.ads.googleads.v9.services.DomainCategoryService.GetDomainCategory", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/domainCategories/*}" + "path": "/v9/{resource_name=customers/*/domainCategories/*}" } ] } @@ -7779,16 +9283,16 @@ }, { "shortName": "DynamicSearchAdsSearchTermViewService", - "fullName": "google.ads.googleads.v6.services.DynamicSearchAdsSearchTermViewService", + "fullName": "google.ads.googleads.v9.services.DynamicSearchAdsSearchTermViewService", "methods": [ { "shortName": "GetDynamicSearchAdsSearchTermView", - "fullName": "google.ads.googleads.v6.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView", + "fullName": "google.ads.googleads.v9.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" + "path": "/v9/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" } ] } @@ -7796,16 +9300,16 @@ }, { "shortName": "ExpandedLandingPageViewService", - "fullName": "google.ads.googleads.v6.services.ExpandedLandingPageViewService", + "fullName": "google.ads.googleads.v9.services.ExpandedLandingPageViewService", "methods": [ { "shortName": "GetExpandedLandingPageView", - "fullName": "google.ads.googleads.v6.services.ExpandedLandingPageViewService.GetExpandedLandingPageView", + "fullName": "google.ads.googleads.v9.services.ExpandedLandingPageViewService.GetExpandedLandingPageView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/expandedLandingPageViews/*}" + "path": "/v9/{resource_name=customers/*/expandedLandingPageViews/*}" } ] } @@ -7813,27 +9317,27 @@ }, { "shortName": "ExtensionFeedItemService", - "fullName": "google.ads.googleads.v6.services.ExtensionFeedItemService", + "fullName": "google.ads.googleads.v9.services.ExtensionFeedItemService", "methods": [ { "shortName": "GetExtensionFeedItem", - "fullName": "google.ads.googleads.v6.services.ExtensionFeedItemService.GetExtensionFeedItem", + "fullName": "google.ads.googleads.v9.services.ExtensionFeedItemService.GetExtensionFeedItem", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/extensionFeedItems/*}" + "path": "/v9/{resource_name=customers/*/extensionFeedItems/*}" } ] }, { "shortName": "MutateExtensionFeedItems", - "fullName": "google.ads.googleads.v6.services.ExtensionFeedItemService.MutateExtensionFeedItems", + "fullName": "google.ads.googleads.v9.services.ExtensionFeedItemService.MutateExtensionFeedItems", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/extensionFeedItems:mutate" + "path": "/v9/customers/{customer_id=*}/extensionFeedItems:mutate" } ] } @@ -7841,27 +9345,27 @@ }, { "shortName": "FeedItemService", - "fullName": "google.ads.googleads.v6.services.FeedItemService", + "fullName": "google.ads.googleads.v9.services.FeedItemService", "methods": [ { "shortName": "GetFeedItem", - "fullName": "google.ads.googleads.v6.services.FeedItemService.GetFeedItem", + "fullName": "google.ads.googleads.v9.services.FeedItemService.GetFeedItem", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/feedItems/*}" + "path": "/v9/{resource_name=customers/*/feedItems/*}" } ] }, { "shortName": "MutateFeedItems", - "fullName": "google.ads.googleads.v6.services.FeedItemService.MutateFeedItems", + "fullName": "google.ads.googleads.v9.services.FeedItemService.MutateFeedItems", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/feedItems:mutate" + "path": "/v9/customers/{customer_id=*}/feedItems:mutate" } ] } @@ -7869,27 +9373,27 @@ }, { "shortName": "FeedItemSetLinkService", - "fullName": "google.ads.googleads.v6.services.FeedItemSetLinkService", + "fullName": "google.ads.googleads.v9.services.FeedItemSetLinkService", "methods": [ { "shortName": "GetFeedItemSetLink", - "fullName": "google.ads.googleads.v6.services.FeedItemSetLinkService.GetFeedItemSetLink", + "fullName": "google.ads.googleads.v9.services.FeedItemSetLinkService.GetFeedItemSetLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/feedItemSetLinks/*}" + "path": "/v9/{resource_name=customers/*/feedItemSetLinks/*}" } ] }, { "shortName": "MutateFeedItemSetLinks", - "fullName": "google.ads.googleads.v6.services.FeedItemSetLinkService.MutateFeedItemSetLinks", + "fullName": "google.ads.googleads.v9.services.FeedItemSetLinkService.MutateFeedItemSetLinks", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/feedItemSetLinks:mutate" + "path": "/v9/customers/{customer_id=*}/feedItemSetLinks:mutate" } ] } @@ -7897,27 +9401,27 @@ }, { "shortName": "FeedItemSetService", - "fullName": "google.ads.googleads.v6.services.FeedItemSetService", + "fullName": "google.ads.googleads.v9.services.FeedItemSetService", "methods": [ { "shortName": "GetFeedItemSet", - "fullName": "google.ads.googleads.v6.services.FeedItemSetService.GetFeedItemSet", + "fullName": "google.ads.googleads.v9.services.FeedItemSetService.GetFeedItemSet", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/feedItemSets/*}" + "path": "/v9/{resource_name=customers/*/feedItemSets/*}" } ] }, { "shortName": "MutateFeedItemSets", - "fullName": "google.ads.googleads.v6.services.FeedItemSetService.MutateFeedItemSets", + "fullName": "google.ads.googleads.v9.services.FeedItemSetService.MutateFeedItemSets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/feedItemSets:mutate" + "path": "/v9/customers/{customer_id=*}/feedItemSets:mutate" } ] } @@ -7925,27 +9429,27 @@ }, { "shortName": "FeedItemTargetService", - "fullName": "google.ads.googleads.v6.services.FeedItemTargetService", + "fullName": "google.ads.googleads.v9.services.FeedItemTargetService", "methods": [ { "shortName": "GetFeedItemTarget", - "fullName": "google.ads.googleads.v6.services.FeedItemTargetService.GetFeedItemTarget", + "fullName": "google.ads.googleads.v9.services.FeedItemTargetService.GetFeedItemTarget", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/feedItemTargets/*}" + "path": "/v9/{resource_name=customers/*/feedItemTargets/*}" } ] }, { "shortName": "MutateFeedItemTargets", - "fullName": "google.ads.googleads.v6.services.FeedItemTargetService.MutateFeedItemTargets", + "fullName": "google.ads.googleads.v9.services.FeedItemTargetService.MutateFeedItemTargets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/feedItemTargets:mutate" + "path": "/v9/customers/{customer_id=*}/feedItemTargets:mutate" } ] } @@ -7953,27 +9457,27 @@ }, { "shortName": "FeedMappingService", - "fullName": "google.ads.googleads.v6.services.FeedMappingService", + "fullName": "google.ads.googleads.v9.services.FeedMappingService", "methods": [ { "shortName": "GetFeedMapping", - "fullName": "google.ads.googleads.v6.services.FeedMappingService.GetFeedMapping", + "fullName": "google.ads.googleads.v9.services.FeedMappingService.GetFeedMapping", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/feedMappings/*}" + "path": "/v9/{resource_name=customers/*/feedMappings/*}" } ] }, { "shortName": "MutateFeedMappings", - "fullName": "google.ads.googleads.v6.services.FeedMappingService.MutateFeedMappings", + "fullName": "google.ads.googleads.v9.services.FeedMappingService.MutateFeedMappings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/feedMappings:mutate" + "path": "/v9/customers/{customer_id=*}/feedMappings:mutate" } ] } @@ -7981,16 +9485,16 @@ }, { "shortName": "FeedPlaceholderViewService", - "fullName": "google.ads.googleads.v6.services.FeedPlaceholderViewService", + "fullName": "google.ads.googleads.v9.services.FeedPlaceholderViewService", "methods": [ { "shortName": "GetFeedPlaceholderView", - "fullName": "google.ads.googleads.v6.services.FeedPlaceholderViewService.GetFeedPlaceholderView", + "fullName": "google.ads.googleads.v9.services.FeedPlaceholderViewService.GetFeedPlaceholderView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/feedPlaceholderViews/*}" + "path": "/v9/{resource_name=customers/*/feedPlaceholderViews/*}" } ] } @@ -7998,27 +9502,27 @@ }, { "shortName": "FeedService", - "fullName": "google.ads.googleads.v6.services.FeedService", + "fullName": "google.ads.googleads.v9.services.FeedService", "methods": [ { "shortName": "GetFeed", - "fullName": "google.ads.googleads.v6.services.FeedService.GetFeed", + "fullName": "google.ads.googleads.v9.services.FeedService.GetFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/feeds/*}" + "path": "/v9/{resource_name=customers/*/feeds/*}" } ] }, { "shortName": "MutateFeeds", - "fullName": "google.ads.googleads.v6.services.FeedService.MutateFeeds", + "fullName": "google.ads.googleads.v9.services.FeedService.MutateFeeds", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/feeds:mutate" + "path": "/v9/customers/{customer_id=*}/feeds:mutate" } ] } @@ -8026,61 +9530,61 @@ }, { "shortName": "GenderViewService", - "fullName": "google.ads.googleads.v6.services.GenderViewService", + "fullName": "google.ads.googleads.v9.services.GenderViewService", "methods": [ { "shortName": "GetGenderView", - "fullName": "google.ads.googleads.v6.services.GenderViewService.GetGenderView", + "fullName": "google.ads.googleads.v9.services.GenderViewService.GetGenderView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/genderViews/*}" + "path": "/v9/{resource_name=customers/*/genderViews/*}" } ] } ] }, { - "shortName": "GeographicViewService", - "fullName": "google.ads.googleads.v6.services.GeographicViewService", + "shortName": "GeoTargetConstantService", + "fullName": "google.ads.googleads.v9.services.GeoTargetConstantService", "methods": [ { - "shortName": "GetGeographicView", - "fullName": "google.ads.googleads.v6.services.GeographicViewService.GetGeographicView", + "shortName": "GetGeoTargetConstant", + "fullName": "google.ads.googleads.v9.services.GeoTargetConstantService.GetGeoTargetConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/geographicViews/*}" + "path": "/v9/{resource_name=geoTargetConstants/*}" } ] - } - ] - }, - { - "shortName": "GeoTargetConstantService", - "fullName": "google.ads.googleads.v6.services.GeoTargetConstantService", - "methods": [ + }, { - "shortName": "GetGeoTargetConstant", - "fullName": "google.ads.googleads.v6.services.GeoTargetConstantService.GetGeoTargetConstant", + "shortName": "SuggestGeoTargetConstants", + "fullName": "google.ads.googleads.v9.services.GeoTargetConstantService.SuggestGeoTargetConstants", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v6/{resource_name=geoTargetConstants/*}" + "httpMethod": "POST", + "path": "/v9/geoTargetConstants:suggest" } ] - }, + } + ] + }, + { + "shortName": "GeographicViewService", + "fullName": "google.ads.googleads.v9.services.GeographicViewService", + "methods": [ { - "shortName": "SuggestGeoTargetConstants", - "fullName": "google.ads.googleads.v6.services.GeoTargetConstantService.SuggestGeoTargetConstants", + "shortName": "GetGeographicView", + "fullName": "google.ads.googleads.v9.services.GeographicViewService.GetGeographicView", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v6/geoTargetConstants:suggest" + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/geographicViews/*}" } ] } @@ -8088,27 +9592,27 @@ }, { "shortName": "GoogleAdsFieldService", - "fullName": "google.ads.googleads.v6.services.GoogleAdsFieldService", + "fullName": "google.ads.googleads.v9.services.GoogleAdsFieldService", "methods": [ { "shortName": "GetGoogleAdsField", - "fullName": "google.ads.googleads.v6.services.GoogleAdsFieldService.GetGoogleAdsField", + "fullName": "google.ads.googleads.v9.services.GoogleAdsFieldService.GetGoogleAdsField", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=googleAdsFields/*}" + "path": "/v9/{resource_name=googleAdsFields/*}" } ] }, { "shortName": "SearchGoogleAdsFields", - "fullName": "google.ads.googleads.v6.services.GoogleAdsFieldService.SearchGoogleAdsFields", + "fullName": "google.ads.googleads.v9.services.GoogleAdsFieldService.SearchGoogleAdsFields", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/googleAdsFields:search" + "path": "/v9/googleAdsFields:search" } ] } @@ -8116,38 +9620,38 @@ }, { "shortName": "GoogleAdsService", - "fullName": "google.ads.googleads.v6.services.GoogleAdsService", + "fullName": "google.ads.googleads.v9.services.GoogleAdsService", "methods": [ { "shortName": "Mutate", - "fullName": "google.ads.googleads.v6.services.GoogleAdsService.Mutate", + "fullName": "google.ads.googleads.v9.services.GoogleAdsService.Mutate", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/googleAds:mutate" + "path": "/v9/customers/{customer_id=*}/googleAds:mutate" } ] }, { "shortName": "Search", - "fullName": "google.ads.googleads.v6.services.GoogleAdsService.Search", + "fullName": "google.ads.googleads.v9.services.GoogleAdsService.Search", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/googleAds:search" + "path": "/v9/customers/{customer_id=*}/googleAds:search" } ] }, { "shortName": "SearchStream", - "fullName": "google.ads.googleads.v6.services.GoogleAdsService.SearchStream", + "fullName": "google.ads.googleads.v9.services.GoogleAdsService.SearchStream", "mode": "SERVER_STREAMING", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/googleAds:searchStream" + "path": "/v9/customers/{customer_id=*}/googleAds:searchStream" } ] } @@ -8155,16 +9659,16 @@ }, { "shortName": "GroupPlacementViewService", - "fullName": "google.ads.googleads.v6.services.GroupPlacementViewService", + "fullName": "google.ads.googleads.v9.services.GroupPlacementViewService", "methods": [ { "shortName": "GetGroupPlacementView", - "fullName": "google.ads.googleads.v6.services.GroupPlacementViewService.GetGroupPlacementView", + "fullName": "google.ads.googleads.v9.services.GroupPlacementViewService.GetGroupPlacementView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/groupPlacementViews/*}" + "path": "/v9/{resource_name=customers/*/groupPlacementViews/*}" } ] } @@ -8172,16 +9676,16 @@ }, { "shortName": "HotelGroupViewService", - "fullName": "google.ads.googleads.v6.services.HotelGroupViewService", + "fullName": "google.ads.googleads.v9.services.HotelGroupViewService", "methods": [ { "shortName": "GetHotelGroupView", - "fullName": "google.ads.googleads.v6.services.HotelGroupViewService.GetHotelGroupView", + "fullName": "google.ads.googleads.v9.services.HotelGroupViewService.GetHotelGroupView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/hotelGroupViews/*}" + "path": "/v9/{resource_name=customers/*/hotelGroupViews/*}" } ] } @@ -8189,16 +9693,16 @@ }, { "shortName": "HotelPerformanceViewService", - "fullName": "google.ads.googleads.v6.services.HotelPerformanceViewService", + "fullName": "google.ads.googleads.v9.services.HotelPerformanceViewService", "methods": [ { "shortName": "GetHotelPerformanceView", - "fullName": "google.ads.googleads.v6.services.HotelPerformanceViewService.GetHotelPerformanceView", + "fullName": "google.ads.googleads.v9.services.HotelPerformanceViewService.GetHotelPerformanceView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/hotelPerformanceView}" + "path": "/v9/{resource_name=customers/*/hotelPerformanceView}" } ] } @@ -8206,16 +9710,16 @@ }, { "shortName": "IncomeRangeViewService", - "fullName": "google.ads.googleads.v6.services.IncomeRangeViewService", + "fullName": "google.ads.googleads.v9.services.IncomeRangeViewService", "methods": [ { "shortName": "GetIncomeRangeView", - "fullName": "google.ads.googleads.v6.services.IncomeRangeViewService.GetIncomeRangeView", + "fullName": "google.ads.googleads.v9.services.IncomeRangeViewService.GetIncomeRangeView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/incomeRangeViews/*}" + "path": "/v9/{resource_name=customers/*/incomeRangeViews/*}" } ] } @@ -8223,16 +9727,16 @@ }, { "shortName": "InvoiceService", - "fullName": "google.ads.googleads.v6.services.InvoiceService", + "fullName": "google.ads.googleads.v9.services.InvoiceService", "methods": [ { "shortName": "ListInvoices", - "fullName": "google.ads.googleads.v6.services.InvoiceService.ListInvoices", + "fullName": "google.ads.googleads.v9.services.InvoiceService.ListInvoices", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/customers/{customer_id=*}/invoices" + "path": "/v9/customers/{customer_id=*}/invoices" } ] } @@ -8240,27 +9744,27 @@ }, { "shortName": "KeywordPlanAdGroupKeywordService", - "fullName": "google.ads.googleads.v6.services.KeywordPlanAdGroupKeywordService", + "fullName": "google.ads.googleads.v9.services.KeywordPlanAdGroupKeywordService", "methods": [ { "shortName": "GetKeywordPlanAdGroupKeyword", - "fullName": "google.ads.googleads.v6.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword", + "fullName": "google.ads.googleads.v9.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" + "path": "/v9/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" } ] }, { "shortName": "MutateKeywordPlanAdGroupKeywords", - "fullName": "google.ads.googleads.v6.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords", + "fullName": "google.ads.googleads.v9.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" + "path": "/v9/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" } ] } @@ -8268,27 +9772,27 @@ }, { "shortName": "KeywordPlanAdGroupService", - "fullName": "google.ads.googleads.v6.services.KeywordPlanAdGroupService", + "fullName": "google.ads.googleads.v9.services.KeywordPlanAdGroupService", "methods": [ { "shortName": "GetKeywordPlanAdGroup", - "fullName": "google.ads.googleads.v6.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup", + "fullName": "google.ads.googleads.v9.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/keywordPlanAdGroups/*}" + "path": "/v9/{resource_name=customers/*/keywordPlanAdGroups/*}" } ] }, { "shortName": "MutateKeywordPlanAdGroups", - "fullName": "google.ads.googleads.v6.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups", + "fullName": "google.ads.googleads.v9.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/keywordPlanAdGroups:mutate" + "path": "/v9/customers/{customer_id=*}/keywordPlanAdGroups:mutate" } ] } @@ -8296,27 +9800,27 @@ }, { "shortName": "KeywordPlanCampaignKeywordService", - "fullName": "google.ads.googleads.v6.services.KeywordPlanCampaignKeywordService", + "fullName": "google.ads.googleads.v9.services.KeywordPlanCampaignKeywordService", "methods": [ { "shortName": "GetKeywordPlanCampaignKeyword", - "fullName": "google.ads.googleads.v6.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword", + "fullName": "google.ads.googleads.v9.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" + "path": "/v9/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" } ] }, { "shortName": "MutateKeywordPlanCampaignKeywords", - "fullName": "google.ads.googleads.v6.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords", + "fullName": "google.ads.googleads.v9.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" + "path": "/v9/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" } ] } @@ -8324,27 +9828,27 @@ }, { "shortName": "KeywordPlanCampaignService", - "fullName": "google.ads.googleads.v6.services.KeywordPlanCampaignService", + "fullName": "google.ads.googleads.v9.services.KeywordPlanCampaignService", "methods": [ { "shortName": "GetKeywordPlanCampaign", - "fullName": "google.ads.googleads.v6.services.KeywordPlanCampaignService.GetKeywordPlanCampaign", + "fullName": "google.ads.googleads.v9.services.KeywordPlanCampaignService.GetKeywordPlanCampaign", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/keywordPlanCampaigns/*}" + "path": "/v9/{resource_name=customers/*/keywordPlanCampaigns/*}" } ] }, { "shortName": "MutateKeywordPlanCampaigns", - "fullName": "google.ads.googleads.v6.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns", + "fullName": "google.ads.googleads.v9.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/keywordPlanCampaigns:mutate" + "path": "/v9/customers/{customer_id=*}/keywordPlanCampaigns:mutate" } ] } @@ -8352,16 +9856,16 @@ }, { "shortName": "KeywordPlanIdeaService", - "fullName": "google.ads.googleads.v6.services.KeywordPlanIdeaService", + "fullName": "google.ads.googleads.v9.services.KeywordPlanIdeaService", "methods": [ { "shortName": "GenerateKeywordIdeas", - "fullName": "google.ads.googleads.v6.services.KeywordPlanIdeaService.GenerateKeywordIdeas", + "fullName": "google.ads.googleads.v9.services.KeywordPlanIdeaService.GenerateKeywordIdeas", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}:generateKeywordIdeas" + "path": "/v9/customers/{customer_id=*}:generateKeywordIdeas" } ] } @@ -8369,71 +9873,99 @@ }, { "shortName": "KeywordPlanService", - "fullName": "google.ads.googleads.v6.services.KeywordPlanService", + "fullName": "google.ads.googleads.v9.services.KeywordPlanService", "methods": [ { "shortName": "GenerateForecastCurve", - "fullName": "google.ads.googleads.v6.services.KeywordPlanService.GenerateForecastCurve", + "fullName": "google.ads.googleads.v9.services.KeywordPlanService.GenerateForecastCurve", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" + "path": "/v9/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" } ] }, { "shortName": "GenerateForecastMetrics", - "fullName": "google.ads.googleads.v6.services.KeywordPlanService.GenerateForecastMetrics", + "fullName": "google.ads.googleads.v9.services.KeywordPlanService.GenerateForecastMetrics", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" + "path": "/v9/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" } ] }, { "shortName": "GenerateForecastTimeSeries", - "fullName": "google.ads.googleads.v6.services.KeywordPlanService.GenerateForecastTimeSeries", + "fullName": "google.ads.googleads.v9.services.KeywordPlanService.GenerateForecastTimeSeries", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{keyword_plan=customers/*/keywordPlans/*}:generateForecastTimeSeries" + "path": "/v9/{keyword_plan=customers/*/keywordPlans/*}:generateForecastTimeSeries" } ] }, { "shortName": "GenerateHistoricalMetrics", - "fullName": "google.ads.googleads.v6.services.KeywordPlanService.GenerateHistoricalMetrics", + "fullName": "google.ads.googleads.v9.services.KeywordPlanService.GenerateHistoricalMetrics", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" + "path": "/v9/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" } ] }, { "shortName": "GetKeywordPlan", - "fullName": "google.ads.googleads.v6.services.KeywordPlanService.GetKeywordPlan", + "fullName": "google.ads.googleads.v9.services.KeywordPlanService.GetKeywordPlan", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/keywordPlans/*}" + "path": "/v9/{resource_name=customers/*/keywordPlans/*}" } ] }, { "shortName": "MutateKeywordPlans", - "fullName": "google.ads.googleads.v6.services.KeywordPlanService.MutateKeywordPlans", + "fullName": "google.ads.googleads.v9.services.KeywordPlanService.MutateKeywordPlans", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/keywordPlans:mutate" + "path": "/v9/customers/{customer_id=*}/keywordPlans:mutate" + } + ] + } + ] + }, + { + "shortName": "KeywordThemeConstantService", + "fullName": "google.ads.googleads.v9.services.KeywordThemeConstantService", + "methods": [ + { + "shortName": "GetKeywordThemeConstant", + "fullName": "google.ads.googleads.v9.services.KeywordThemeConstantService.GetKeywordThemeConstant", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=keywordThemeConstants/*}" + } + ] + }, + { + "shortName": "SuggestKeywordThemeConstants", + "fullName": "google.ads.googleads.v9.services.KeywordThemeConstantService.SuggestKeywordThemeConstants", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/keywordThemeConstants:suggest" } ] } @@ -8441,16 +9973,16 @@ }, { "shortName": "KeywordViewService", - "fullName": "google.ads.googleads.v6.services.KeywordViewService", + "fullName": "google.ads.googleads.v9.services.KeywordViewService", "methods": [ { "shortName": "GetKeywordView", - "fullName": "google.ads.googleads.v6.services.KeywordViewService.GetKeywordView", + "fullName": "google.ads.googleads.v9.services.KeywordViewService.GetKeywordView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/keywordViews/*}" + "path": "/v9/{resource_name=customers/*/keywordViews/*}" } ] } @@ -8458,27 +9990,27 @@ }, { "shortName": "LabelService", - "fullName": "google.ads.googleads.v6.services.LabelService", + "fullName": "google.ads.googleads.v9.services.LabelService", "methods": [ { "shortName": "GetLabel", - "fullName": "google.ads.googleads.v6.services.LabelService.GetLabel", + "fullName": "google.ads.googleads.v9.services.LabelService.GetLabel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/labels/*}" + "path": "/v9/{resource_name=customers/*/labels/*}" } ] }, { "shortName": "MutateLabels", - "fullName": "google.ads.googleads.v6.services.LabelService.MutateLabels", + "fullName": "google.ads.googleads.v9.services.LabelService.MutateLabels", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/labels:mutate" + "path": "/v9/customers/{customer_id=*}/labels:mutate" } ] } @@ -8486,16 +10018,16 @@ }, { "shortName": "LandingPageViewService", - "fullName": "google.ads.googleads.v6.services.LandingPageViewService", + "fullName": "google.ads.googleads.v9.services.LandingPageViewService", "methods": [ { "shortName": "GetLandingPageView", - "fullName": "google.ads.googleads.v6.services.LandingPageViewService.GetLandingPageView", + "fullName": "google.ads.googleads.v9.services.LandingPageViewService.GetLandingPageView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/landingPageViews/*}" + "path": "/v9/{resource_name=customers/*/landingPageViews/*}" } ] } @@ -8503,16 +10035,33 @@ }, { "shortName": "LanguageConstantService", - "fullName": "google.ads.googleads.v6.services.LanguageConstantService", + "fullName": "google.ads.googleads.v9.services.LanguageConstantService", "methods": [ { "shortName": "GetLanguageConstant", - "fullName": "google.ads.googleads.v6.services.LanguageConstantService.GetLanguageConstant", + "fullName": "google.ads.googleads.v9.services.LanguageConstantService.GetLanguageConstant", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=languageConstants/*}" + } + ] + } + ] + }, + { + "shortName": "LifeEventService", + "fullName": "google.ads.googleads.v9.services.LifeEventService", + "methods": [ + { + "shortName": "GetLifeEvent", + "fullName": "google.ads.googleads.v9.services.LifeEventService.GetLifeEvent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=languageConstants/*}" + "path": "/v9/{resource_name=customers/*/lifeEvents/*}" } ] } @@ -8520,16 +10069,16 @@ }, { "shortName": "LocationViewService", - "fullName": "google.ads.googleads.v6.services.LocationViewService", + "fullName": "google.ads.googleads.v9.services.LocationViewService", "methods": [ { "shortName": "GetLocationView", - "fullName": "google.ads.googleads.v6.services.LocationViewService.GetLocationView", + "fullName": "google.ads.googleads.v9.services.LocationViewService.GetLocationView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/locationViews/*}" + "path": "/v9/{resource_name=customers/*/locationViews/*}" } ] } @@ -8537,16 +10086,16 @@ }, { "shortName": "ManagedPlacementViewService", - "fullName": "google.ads.googleads.v6.services.ManagedPlacementViewService", + "fullName": "google.ads.googleads.v9.services.ManagedPlacementViewService", "methods": [ { "shortName": "GetManagedPlacementView", - "fullName": "google.ads.googleads.v6.services.ManagedPlacementViewService.GetManagedPlacementView", + "fullName": "google.ads.googleads.v9.services.ManagedPlacementViewService.GetManagedPlacementView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/managedPlacementViews/*}" + "path": "/v9/{resource_name=customers/*/managedPlacementViews/*}" } ] } @@ -8554,27 +10103,27 @@ }, { "shortName": "MediaFileService", - "fullName": "google.ads.googleads.v6.services.MediaFileService", + "fullName": "google.ads.googleads.v9.services.MediaFileService", "methods": [ { "shortName": "GetMediaFile", - "fullName": "google.ads.googleads.v6.services.MediaFileService.GetMediaFile", + "fullName": "google.ads.googleads.v9.services.MediaFileService.GetMediaFile", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/mediaFiles/*}" + "path": "/v9/{resource_name=customers/*/mediaFiles/*}" } ] }, { "shortName": "MutateMediaFiles", - "fullName": "google.ads.googleads.v6.services.MediaFileService.MutateMediaFiles", + "fullName": "google.ads.googleads.v9.services.MediaFileService.MutateMediaFiles", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/mediaFiles:mutate" + "path": "/v9/customers/{customer_id=*}/mediaFiles:mutate" } ] } @@ -8582,38 +10131,38 @@ }, { "shortName": "MerchantCenterLinkService", - "fullName": "google.ads.googleads.v6.services.MerchantCenterLinkService", + "fullName": "google.ads.googleads.v9.services.MerchantCenterLinkService", "methods": [ { "shortName": "GetMerchantCenterLink", - "fullName": "google.ads.googleads.v6.services.MerchantCenterLinkService.GetMerchantCenterLink", + "fullName": "google.ads.googleads.v9.services.MerchantCenterLinkService.GetMerchantCenterLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/merchantCenterLinks/*}" + "path": "/v9/{resource_name=customers/*/merchantCenterLinks/*}" } ] }, { "shortName": "ListMerchantCenterLinks", - "fullName": "google.ads.googleads.v6.services.MerchantCenterLinkService.ListMerchantCenterLinks", + "fullName": "google.ads.googleads.v9.services.MerchantCenterLinkService.ListMerchantCenterLinks", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/customers/{customer_id=*}/merchantCenterLinks" + "path": "/v9/customers/{customer_id=*}/merchantCenterLinks" } ] }, { "shortName": "MutateMerchantCenterLink", - "fullName": "google.ads.googleads.v6.services.MerchantCenterLinkService.MutateMerchantCenterLink", + "fullName": "google.ads.googleads.v9.services.MerchantCenterLinkService.MutateMerchantCenterLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/merchantCenterLinks:mutate" + "path": "/v9/customers/{customer_id=*}/merchantCenterLinks:mutate" } ] } @@ -8621,16 +10170,16 @@ }, { "shortName": "MobileAppCategoryConstantService", - "fullName": "google.ads.googleads.v6.services.MobileAppCategoryConstantService", + "fullName": "google.ads.googleads.v9.services.MobileAppCategoryConstantService", "methods": [ { "shortName": "GetMobileAppCategoryConstant", - "fullName": "google.ads.googleads.v6.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant", + "fullName": "google.ads.googleads.v9.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=mobileAppCategoryConstants/*}" + "path": "/v9/{resource_name=mobileAppCategoryConstants/*}" } ] } @@ -8638,16 +10187,16 @@ }, { "shortName": "MobileDeviceConstantService", - "fullName": "google.ads.googleads.v6.services.MobileDeviceConstantService", + "fullName": "google.ads.googleads.v9.services.MobileDeviceConstantService", "methods": [ { "shortName": "GetMobileDeviceConstant", - "fullName": "google.ads.googleads.v6.services.MobileDeviceConstantService.GetMobileDeviceConstant", + "fullName": "google.ads.googleads.v9.services.MobileDeviceConstantService.GetMobileDeviceConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=mobileDeviceConstants/*}" + "path": "/v9/{resource_name=mobileDeviceConstants/*}" } ] } @@ -8655,49 +10204,49 @@ }, { "shortName": "OfflineUserDataJobService", - "fullName": "google.ads.googleads.v6.services.OfflineUserDataJobService", + "fullName": "google.ads.googleads.v9.services.OfflineUserDataJobService", "methods": [ { "shortName": "AddOfflineUserDataJobOperations", - "fullName": "google.ads.googleads.v6.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations", + "fullName": "google.ads.googleads.v9.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" + "path": "/v9/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" } ] }, { "shortName": "CreateOfflineUserDataJob", - "fullName": "google.ads.googleads.v6.services.OfflineUserDataJobService.CreateOfflineUserDataJob", + "fullName": "google.ads.googleads.v9.services.OfflineUserDataJobService.CreateOfflineUserDataJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/offlineUserDataJobs:create" + "path": "/v9/customers/{customer_id=*}/offlineUserDataJobs:create" } ] }, { "shortName": "GetOfflineUserDataJob", - "fullName": "google.ads.googleads.v6.services.OfflineUserDataJobService.GetOfflineUserDataJob", + "fullName": "google.ads.googleads.v9.services.OfflineUserDataJobService.GetOfflineUserDataJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/offlineUserDataJobs/*}" + "path": "/v9/{resource_name=customers/*/offlineUserDataJobs/*}" } ] }, { "shortName": "RunOfflineUserDataJob", - "fullName": "google.ads.googleads.v6.services.OfflineUserDataJobService.RunOfflineUserDataJob", + "fullName": "google.ads.googleads.v9.services.OfflineUserDataJobService.RunOfflineUserDataJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{resource_name=customers/*/offlineUserDataJobs/*}:run" + "path": "/v9/{resource_name=customers/*/offlineUserDataJobs/*}:run" } ] } @@ -8705,16 +10254,16 @@ }, { "shortName": "OperatingSystemVersionConstantService", - "fullName": "google.ads.googleads.v6.services.OperatingSystemVersionConstantService", + "fullName": "google.ads.googleads.v9.services.OperatingSystemVersionConstantService", "methods": [ { "shortName": "GetOperatingSystemVersionConstant", - "fullName": "google.ads.googleads.v6.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant", + "fullName": "google.ads.googleads.v9.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=operatingSystemVersionConstants/*}" + "path": "/v9/{resource_name=operatingSystemVersionConstants/*}" } ] } @@ -8722,16 +10271,16 @@ }, { "shortName": "PaidOrganicSearchTermViewService", - "fullName": "google.ads.googleads.v6.services.PaidOrganicSearchTermViewService", + "fullName": "google.ads.googleads.v9.services.PaidOrganicSearchTermViewService", "methods": [ { "shortName": "GetPaidOrganicSearchTermView", - "fullName": "google.ads.googleads.v6.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView", + "fullName": "google.ads.googleads.v9.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/paidOrganicSearchTermViews/*}" + "path": "/v9/{resource_name=customers/*/paidOrganicSearchTermViews/*}" } ] } @@ -8739,16 +10288,16 @@ }, { "shortName": "ParentalStatusViewService", - "fullName": "google.ads.googleads.v6.services.ParentalStatusViewService", + "fullName": "google.ads.googleads.v9.services.ParentalStatusViewService", "methods": [ { "shortName": "GetParentalStatusView", - "fullName": "google.ads.googleads.v6.services.ParentalStatusViewService.GetParentalStatusView", + "fullName": "google.ads.googleads.v9.services.ParentalStatusViewService.GetParentalStatusView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/parentalStatusViews/*}" + "path": "/v9/{resource_name=customers/*/parentalStatusViews/*}" } ] } @@ -8756,16 +10305,16 @@ }, { "shortName": "PaymentsAccountService", - "fullName": "google.ads.googleads.v6.services.PaymentsAccountService", + "fullName": "google.ads.googleads.v9.services.PaymentsAccountService", "methods": [ { "shortName": "ListPaymentsAccounts", - "fullName": "google.ads.googleads.v6.services.PaymentsAccountService.ListPaymentsAccounts", + "fullName": "google.ads.googleads.v9.services.PaymentsAccountService.ListPaymentsAccounts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/customers/{customer_id=*}/paymentsAccounts" + "path": "/v9/customers/{customer_id=*}/paymentsAccounts" } ] } @@ -8773,16 +10322,16 @@ }, { "shortName": "ProductBiddingCategoryConstantService", - "fullName": "google.ads.googleads.v6.services.ProductBiddingCategoryConstantService", + "fullName": "google.ads.googleads.v9.services.ProductBiddingCategoryConstantService", "methods": [ { "shortName": "GetProductBiddingCategoryConstant", - "fullName": "google.ads.googleads.v6.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant", + "fullName": "google.ads.googleads.v9.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=productBiddingCategoryConstants/*}" + "path": "/v9/{resource_name=productBiddingCategoryConstants/*}" } ] } @@ -8790,16 +10339,16 @@ }, { "shortName": "ProductGroupViewService", - "fullName": "google.ads.googleads.v6.services.ProductGroupViewService", + "fullName": "google.ads.googleads.v9.services.ProductGroupViewService", "methods": [ { "shortName": "GetProductGroupView", - "fullName": "google.ads.googleads.v6.services.ProductGroupViewService.GetProductGroupView", + "fullName": "google.ads.googleads.v9.services.ProductGroupViewService.GetProductGroupView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/productGroupViews/*}" + "path": "/v9/{resource_name=customers/*/productGroupViews/*}" } ] } @@ -8807,49 +10356,49 @@ }, { "shortName": "ReachPlanService", - "fullName": "google.ads.googleads.v6.services.ReachPlanService", + "fullName": "google.ads.googleads.v9.services.ReachPlanService", "methods": [ { "shortName": "GenerateProductMixIdeas", - "fullName": "google.ads.googleads.v6.services.ReachPlanService.GenerateProductMixIdeas", + "fullName": "google.ads.googleads.v9.services.ReachPlanService.GenerateProductMixIdeas", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}:generateProductMixIdeas" + "path": "/v9/customers/{customer_id=*}:generateProductMixIdeas" } ] }, { "shortName": "GenerateReachForecast", - "fullName": "google.ads.googleads.v6.services.ReachPlanService.GenerateReachForecast", + "fullName": "google.ads.googleads.v9.services.ReachPlanService.GenerateReachForecast", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}:generateReachForecast" + "path": "/v9/customers/{customer_id=*}:generateReachForecast" } ] }, { "shortName": "ListPlannableLocations", - "fullName": "google.ads.googleads.v6.services.ReachPlanService.ListPlannableLocations", + "fullName": "google.ads.googleads.v9.services.ReachPlanService.ListPlannableLocations", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6:listPlannableLocations" + "path": "/v9:listPlannableLocations" } ] }, { "shortName": "ListPlannableProducts", - "fullName": "google.ads.googleads.v6.services.ReachPlanService.ListPlannableProducts", + "fullName": "google.ads.googleads.v9.services.ReachPlanService.ListPlannableProducts", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6:listPlannableProducts" + "path": "/v9:listPlannableProducts" } ] } @@ -8857,38 +10406,38 @@ }, { "shortName": "RecommendationService", - "fullName": "google.ads.googleads.v6.services.RecommendationService", + "fullName": "google.ads.googleads.v9.services.RecommendationService", "methods": [ { "shortName": "ApplyRecommendation", - "fullName": "google.ads.googleads.v6.services.RecommendationService.ApplyRecommendation", + "fullName": "google.ads.googleads.v9.services.RecommendationService.ApplyRecommendation", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/recommendations:apply" + "path": "/v9/customers/{customer_id=*}/recommendations:apply" } ] }, { "shortName": "DismissRecommendation", - "fullName": "google.ads.googleads.v6.services.RecommendationService.DismissRecommendation", + "fullName": "google.ads.googleads.v9.services.RecommendationService.DismissRecommendation", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/recommendations:dismiss" + "path": "/v9/customers/{customer_id=*}/recommendations:dismiss" } ] }, { "shortName": "GetRecommendation", - "fullName": "google.ads.googleads.v6.services.RecommendationService.GetRecommendation", + "fullName": "google.ads.googleads.v9.services.RecommendationService.GetRecommendation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/recommendations/*}" + "path": "/v9/{resource_name=customers/*/recommendations/*}" } ] } @@ -8896,27 +10445,27 @@ }, { "shortName": "RemarketingActionService", - "fullName": "google.ads.googleads.v6.services.RemarketingActionService", + "fullName": "google.ads.googleads.v9.services.RemarketingActionService", "methods": [ { "shortName": "GetRemarketingAction", - "fullName": "google.ads.googleads.v6.services.RemarketingActionService.GetRemarketingAction", + "fullName": "google.ads.googleads.v9.services.RemarketingActionService.GetRemarketingAction", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/remarketingActions/*}" + "path": "/v9/{resource_name=customers/*/remarketingActions/*}" } ] }, { "shortName": "MutateRemarketingActions", - "fullName": "google.ads.googleads.v6.services.RemarketingActionService.MutateRemarketingActions", + "fullName": "google.ads.googleads.v9.services.RemarketingActionService.MutateRemarketingActions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/remarketingActions:mutate" + "path": "/v9/customers/{customer_id=*}/remarketingActions:mutate" } ] } @@ -8924,16 +10473,16 @@ }, { "shortName": "SearchTermViewService", - "fullName": "google.ads.googleads.v6.services.SearchTermViewService", + "fullName": "google.ads.googleads.v9.services.SearchTermViewService", "methods": [ { "shortName": "GetSearchTermView", - "fullName": "google.ads.googleads.v6.services.SearchTermViewService.GetSearchTermView", + "fullName": "google.ads.googleads.v9.services.SearchTermViewService.GetSearchTermView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/searchTermViews/*}" + "path": "/v9/{resource_name=customers/*/searchTermViews/*}" } ] } @@ -8941,27 +10490,27 @@ }, { "shortName": "SharedCriterionService", - "fullName": "google.ads.googleads.v6.services.SharedCriterionService", + "fullName": "google.ads.googleads.v9.services.SharedCriterionService", "methods": [ { "shortName": "GetSharedCriterion", - "fullName": "google.ads.googleads.v6.services.SharedCriterionService.GetSharedCriterion", + "fullName": "google.ads.googleads.v9.services.SharedCriterionService.GetSharedCriterion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/sharedCriteria/*}" + "path": "/v9/{resource_name=customers/*/sharedCriteria/*}" } ] }, { "shortName": "MutateSharedCriteria", - "fullName": "google.ads.googleads.v6.services.SharedCriterionService.MutateSharedCriteria", + "fullName": "google.ads.googleads.v9.services.SharedCriterionService.MutateSharedCriteria", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/sharedCriteria:mutate" + "path": "/v9/customers/{customer_id=*}/sharedCriteria:mutate" } ] } @@ -8969,27 +10518,27 @@ }, { "shortName": "SharedSetService", - "fullName": "google.ads.googleads.v6.services.SharedSetService", + "fullName": "google.ads.googleads.v9.services.SharedSetService", "methods": [ { "shortName": "GetSharedSet", - "fullName": "google.ads.googleads.v6.services.SharedSetService.GetSharedSet", + "fullName": "google.ads.googleads.v9.services.SharedSetService.GetSharedSet", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/sharedSets/*}" + "path": "/v9/{resource_name=customers/*/sharedSets/*}" } ] }, { "shortName": "MutateSharedSets", - "fullName": "google.ads.googleads.v6.services.SharedSetService.MutateSharedSets", + "fullName": "google.ads.googleads.v9.services.SharedSetService.MutateSharedSets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/sharedSets:mutate" + "path": "/v9/customers/{customer_id=*}/sharedSets:mutate" } ] } @@ -8997,16 +10546,100 @@ }, { "shortName": "ShoppingPerformanceViewService", - "fullName": "google.ads.googleads.v6.services.ShoppingPerformanceViewService", + "fullName": "google.ads.googleads.v9.services.ShoppingPerformanceViewService", "methods": [ { "shortName": "GetShoppingPerformanceView", - "fullName": "google.ads.googleads.v6.services.ShoppingPerformanceViewService.GetShoppingPerformanceView", + "fullName": "google.ads.googleads.v9.services.ShoppingPerformanceViewService.GetShoppingPerformanceView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/shoppingPerformanceView}" + } + ] + } + ] + }, + { + "shortName": "SmartCampaignSearchTermViewService", + "fullName": "google.ads.googleads.v9.services.SmartCampaignSearchTermViewService", + "methods": [ + { + "shortName": "GetSmartCampaignSearchTermView", + "fullName": "google.ads.googleads.v9.services.SmartCampaignSearchTermViewService.GetSmartCampaignSearchTermView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/smartCampaignSearchTermViews/*}" + } + ] + } + ] + }, + { + "shortName": "SmartCampaignSettingService", + "fullName": "google.ads.googleads.v9.services.SmartCampaignSettingService", + "methods": [ + { + "shortName": "GetSmartCampaignSetting", + "fullName": "google.ads.googleads.v9.services.SmartCampaignSettingService.GetSmartCampaignSetting", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/shoppingPerformanceView}" + "path": "/v9/{resource_name=customers/*/smartCampaignSettings/*}" + } + ] + }, + { + "shortName": "MutateSmartCampaignSettings", + "fullName": "google.ads.googleads.v9.services.SmartCampaignSettingService.MutateSmartCampaignSettings", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}/smartCampaignSettings:mutate" + } + ] + } + ] + }, + { + "shortName": "SmartCampaignSuggestService", + "fullName": "google.ads.googleads.v9.services.SmartCampaignSuggestService", + "methods": [ + { + "shortName": "SuggestKeywordThemes", + "fullName": "google.ads.googleads.v9.services.SmartCampaignSuggestService.SuggestKeywordThemes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}:suggestKeywordThemes" + } + ] + }, + { + "shortName": "SuggestSmartCampaignAd", + "fullName": "google.ads.googleads.v9.services.SmartCampaignSuggestService.SuggestSmartCampaignAd", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}:suggestSmartCampaignAd" + } + ] + }, + { + "shortName": "SuggestSmartCampaignBudgetOptions", + "fullName": "google.ads.googleads.v9.services.SmartCampaignSuggestService.SuggestSmartCampaignBudgetOptions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v9/customers/{customer_id=*}:suggestSmartCampaignBudgetOptions" } ] } @@ -9014,27 +10647,27 @@ }, { "shortName": "ThirdPartyAppAnalyticsLinkService", - "fullName": "google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService", + "fullName": "google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService", "methods": [ { "shortName": "GetThirdPartyAppAnalyticsLink", - "fullName": "google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink", + "fullName": "google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" + "path": "/v9/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" } ] }, { "shortName": "RegenerateShareableLinkId", - "fullName": "google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId", + "fullName": "google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}:regenerateShareableLinkId" + "path": "/v9/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}:regenerateShareableLinkId" } ] } @@ -9042,16 +10675,16 @@ }, { "shortName": "TopicConstantService", - "fullName": "google.ads.googleads.v6.services.TopicConstantService", + "fullName": "google.ads.googleads.v9.services.TopicConstantService", "methods": [ { "shortName": "GetTopicConstant", - "fullName": "google.ads.googleads.v6.services.TopicConstantService.GetTopicConstant", + "fullName": "google.ads.googleads.v9.services.TopicConstantService.GetTopicConstant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=topicConstants/*}" + "path": "/v9/{resource_name=topicConstants/*}" } ] } @@ -9059,16 +10692,16 @@ }, { "shortName": "TopicViewService", - "fullName": "google.ads.googleads.v6.services.TopicViewService", + "fullName": "google.ads.googleads.v9.services.TopicViewService", "methods": [ { "shortName": "GetTopicView", - "fullName": "google.ads.googleads.v6.services.TopicViewService.GetTopicView", + "fullName": "google.ads.googleads.v9.services.TopicViewService.GetTopicView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/topicViews/*}" + "path": "/v9/{resource_name=customers/*/topicViews/*}" } ] } @@ -9076,16 +10709,16 @@ }, { "shortName": "UserDataService", - "fullName": "google.ads.googleads.v6.services.UserDataService", + "fullName": "google.ads.googleads.v9.services.UserDataService", "methods": [ { "shortName": "UploadUserData", - "fullName": "google.ads.googleads.v6.services.UserDataService.UploadUserData", + "fullName": "google.ads.googleads.v9.services.UserDataService.UploadUserData", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}:uploadUserData" + "path": "/v9/customers/{customer_id=*}:uploadUserData" } ] } @@ -9093,16 +10726,16 @@ }, { "shortName": "UserInterestService", - "fullName": "google.ads.googleads.v6.services.UserInterestService", + "fullName": "google.ads.googleads.v9.services.UserInterestService", "methods": [ { "shortName": "GetUserInterest", - "fullName": "google.ads.googleads.v6.services.UserInterestService.GetUserInterest", + "fullName": "google.ads.googleads.v9.services.UserInterestService.GetUserInterest", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/userInterests/*}" + "path": "/v9/{resource_name=customers/*/userInterests/*}" } ] } @@ -9110,27 +10743,27 @@ }, { "shortName": "UserListService", - "fullName": "google.ads.googleads.v6.services.UserListService", + "fullName": "google.ads.googleads.v9.services.UserListService", "methods": [ { "shortName": "GetUserList", - "fullName": "google.ads.googleads.v6.services.UserListService.GetUserList", + "fullName": "google.ads.googleads.v9.services.UserListService.GetUserList", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/userLists/*}" + "path": "/v9/{resource_name=customers/*/userLists/*}" } ] }, { "shortName": "MutateUserLists", - "fullName": "google.ads.googleads.v6.services.UserListService.MutateUserLists", + "fullName": "google.ads.googleads.v9.services.UserListService.MutateUserLists", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v6/customers/{customer_id=*}/userLists:mutate" + "path": "/v9/customers/{customer_id=*}/userLists:mutate" } ] } @@ -9138,16 +10771,16 @@ }, { "shortName": "UserLocationViewService", - "fullName": "google.ads.googleads.v6.services.UserLocationViewService", + "fullName": "google.ads.googleads.v9.services.UserLocationViewService", "methods": [ { "shortName": "GetUserLocationView", - "fullName": "google.ads.googleads.v6.services.UserLocationViewService.GetUserLocationView", + "fullName": "google.ads.googleads.v9.services.UserLocationViewService.GetUserLocationView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/userLocationViews/*}" + "path": "/v9/{resource_name=customers/*/userLocationViews/*}" } ] } @@ -9155,7204 +10788,6765 @@ }, { "shortName": "VideoService", - "fullName": "google.ads.googleads.v6.services.VideoService", + "fullName": "google.ads.googleads.v9.services.VideoService", "methods": [ { "shortName": "GetVideo", - "fullName": "google.ads.googleads.v6.services.VideoService.GetVideo", + "fullName": "google.ads.googleads.v9.services.VideoService.GetVideo", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v9/{resource_name=customers/*/videos/*}" + } + ] + } + ] + }, + { + "shortName": "WebpageViewService", + "fullName": "google.ads.googleads.v9.services.WebpageViewService", + "methods": [ + { + "shortName": "GetWebpageView", + "fullName": "google.ads.googleads.v9.services.WebpageViewService.GetWebpageView", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v6/{resource_name=customers/*/videos/*}" + "path": "/v9/{resource_name=customers/*/webpageViews/*}" } ] } ] } - ] + ], + "configFile": "googleads_v9.yaml" }, { - "id": "google.ads.googleads.v7", - "directory": "google/ads/googleads/v7", - "version": "v7", - "majorVersion": "v7", - "hostName": "googleads.googleapis.com", - "title": "Google Ads API", - "description": "Manage your Google Ads accounts, campaigns, and reports with this API.", + "id": "google.analytics.admin.v1alpha", + "directory": "google/analytics/admin/v1alpha", + "version": "v1alpha", + "majorVersion": "v1", + "hostName": "analyticsadmin.googleapis.com", + "title": "Google Analytics Admin API", + "description": "", "importDirectories": [ - "google/ads/googleads/v7/common", - "google/ads/googleads/v7/enums", - "google/ads/googleads/v7/errors", - "google/ads/googleads/v7/resources", - "google/ads/googleads/v7/services", + "google/analytics/admin/v1alpha", "google/api", - "google/longrunning", - "google/protobuf", - "google/rpc" + "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.ads.googleads.v7.errors": 120, - "com.google.ads.googleads.v7.enums": 249, - "com.google.ads.googleads.v7.common": 30, - "com.google.ads.googleads.v7.resources": 122, - "com.google.ads.googleads.v7.services": 126 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 647 - } - }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/ads/googleads/v7/errors;errors": 120, - "google.golang.org/genproto/googleapis/ads/googleads/v7/enums;enums": 249, - "google.golang.org/genproto/googleapis/ads/googleads/v7/common;common": 30, - "google.golang.org/genproto/googleapis/ads/googleads/v7/resources;resources": 122, - "google.golang.org/genproto/googleapis/ads/googleads/v7/services;services": 126 - } - }, - "objc_class_prefix": { - "valueCounts": { - "GAA": 647 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Ads.GoogleAds.V7.Errors": 120, - "Google.Ads.GoogleAds.V7.Enums": 249, - "Google.Ads.GoogleAds.V7.Common": 30, - "Google.Ads.GoogleAds.V7.Resources": 122, - "Google.Ads.GoogleAds.V7.Services": 126 + "google.golang.org/genproto/googleapis/analytics/admin/v1alpha;admin": 2 } }, - "php_namespace": { + "java_multiple_files": { "valueCounts": { - "Google\\Ads\\GoogleAds\\V7\\Errors": 120, - "Google\\Ads\\GoogleAds\\V7\\Enums": 249, - "Google\\Ads\\GoogleAds\\V7\\Common": 30, - "Google\\Ads\\GoogleAds\\V7\\Resources": 122, - "Google\\Ads\\GoogleAds\\V7\\Services": 126 + "true": 2 } }, - "ruby_package": { + "java_package": { "valueCounts": { - "Google::Ads::GoogleAds::V7::Errors": 120, - "Google::Ads::GoogleAds::V7::Enums": 249, - "Google::Ads::GoogleAds::V7::Common": 30, - "Google::Ads::GoogleAds::V7::Resources": 122, - "Google::Ads::GoogleAds::V7::Services": 126 + "com.google.analytics.admin.v1alpha": 2 } } }, "services": [ { - "shortName": "AccountBudgetProposalService", - "fullName": "google.ads.googleads.v7.services.AccountBudgetProposalService", + "shortName": "AnalyticsAdminService", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService", "methods": [ { - "shortName": "GetAccountBudgetProposal", - "fullName": "google.ads.googleads.v7.services.AccountBudgetProposalService.GetAccountBudgetProposal", + "shortName": "AcknowledgeUserDataCollection", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.AcknowledgeUserDataCollection", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/accountBudgetProposals/*}" + "httpMethod": "POST", + "path": "/v1alpha/{property=properties/*}:acknowledgeUserDataCollection" } ] }, { - "shortName": "MutateAccountBudgetProposal", - "fullName": "google.ads.googleads.v7.services.AccountBudgetProposalService.MutateAccountBudgetProposal", + "shortName": "ApproveDisplayVideo360AdvertiserLinkProposal", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ApproveDisplayVideo360AdvertiserLinkProposal", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/accountBudgetProposals:mutate" + "path": "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinkProposals/*}:approve" } ] - } - ] - }, - { - "shortName": "AccountBudgetService", - "fullName": "google.ads.googleads.v7.services.AccountBudgetService", - "methods": [ + }, { - "shortName": "GetAccountBudget", - "fullName": "google.ads.googleads.v7.services.AccountBudgetService.GetAccountBudget", + "shortName": "ArchiveCustomDimension", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ArchiveCustomDimension", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/accountBudgets/*}" + "httpMethod": "POST", + "path": "/v1alpha/{name=properties/*/customDimensions/*}:archive" } ] - } - ] - }, - { - "shortName": "AccountLinkService", - "fullName": "google.ads.googleads.v7.services.AccountLinkService", - "methods": [ + }, { - "shortName": "CreateAccountLink", - "fullName": "google.ads.googleads.v7.services.AccountLinkService.CreateAccountLink", + "shortName": "ArchiveCustomMetric", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ArchiveCustomMetric", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/accountLinks:create" + "path": "/v1alpha/{name=properties/*/customMetrics/*}:archive" } ] }, { - "shortName": "GetAccountLink", - "fullName": "google.ads.googleads.v7.services.AccountLinkService.GetAccountLink", + "shortName": "AuditUserLinks", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.AuditUserLinks", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/accountLinks/*}" + "httpMethod": "POST", + "path": "/v1alpha/{parent=accounts/*}/userLinks:audit" + }, + { + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*}/userLinks:audit" } ] }, { - "shortName": "MutateAccountLink", - "fullName": "google.ads.googleads.v7.services.AccountLinkService.MutateAccountLink", + "shortName": "BatchCreateUserLinks", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.BatchCreateUserLinks", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/accountLinks:mutate" + "path": "/v1alpha/{parent=accounts/*}/userLinks:batchCreate" + }, + { + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*}/userLinks:batchCreate" } ] - } - ] - }, - { - "shortName": "AdGroupAdAssetViewService", - "fullName": "google.ads.googleads.v7.services.AdGroupAdAssetViewService", - "methods": [ + }, { - "shortName": "GetAdGroupAdAssetView", - "fullName": "google.ads.googleads.v7.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView", + "shortName": "BatchDeleteUserLinks", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.BatchDeleteUserLinks", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupAdAssetViews/*}" + "httpMethod": "POST", + "path": "/v1alpha/{parent=accounts/*}/userLinks:batchDelete" + }, + { + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*}/userLinks:batchDelete" } ] - } - ] - }, - { - "shortName": "AdGroupAdLabelService", - "fullName": "google.ads.googleads.v7.services.AdGroupAdLabelService", - "methods": [ + }, { - "shortName": "GetAdGroupAdLabel", - "fullName": "google.ads.googleads.v7.services.AdGroupAdLabelService.GetAdGroupAdLabel", + "shortName": "BatchGetUserLinks", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.BatchGetUserLinks", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupAdLabels/*}" + "path": "/v1alpha/{parent=accounts/*}/userLinks:batchGet" + }, + { + "httpMethod": "GET", + "path": "/v1alpha/{parent=properties/*}/userLinks:batchGet" } ] }, { - "shortName": "MutateAdGroupAdLabels", - "fullName": "google.ads.googleads.v7.services.AdGroupAdLabelService.MutateAdGroupAdLabels", + "shortName": "BatchUpdateUserLinks", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.BatchUpdateUserLinks", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/adGroupAdLabels:mutate" + "path": "/v1alpha/{parent=accounts/*}/userLinks:batchUpdate" + }, + { + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*}/userLinks:batchUpdate" } ] - } - ] - }, - { - "shortName": "AdGroupAdService", - "fullName": "google.ads.googleads.v7.services.AdGroupAdService", - "methods": [ + }, { - "shortName": "GetAdGroupAd", - "fullName": "google.ads.googleads.v7.services.AdGroupAdService.GetAdGroupAd", + "shortName": "CancelDisplayVideo360AdvertiserLinkProposal", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CancelDisplayVideo360AdvertiserLinkProposal", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupAds/*}" + "httpMethod": "POST", + "path": "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinkProposals/*}:cancel" } ] }, { - "shortName": "MutateAdGroupAds", - "fullName": "google.ads.googleads.v7.services.AdGroupAdService.MutateAdGroupAds", + "shortName": "CreateConversionEvent", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateConversionEvent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/adGroupAds:mutate" + "path": "/v1alpha/{parent=properties/*}/conversionEvents" } ] - } - ] - }, - { - "shortName": "AdGroupAssetService", - "fullName": "google.ads.googleads.v7.services.AdGroupAssetService", - "methods": [ + }, { - "shortName": "GetAdGroupAsset", - "fullName": "google.ads.googleads.v7.services.AdGroupAssetService.GetAdGroupAsset", + "shortName": "CreateCustomDimension", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateCustomDimension", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupAssets/*}" + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*}/customDimensions" } ] }, { - "shortName": "MutateAdGroupAssets", - "fullName": "google.ads.googleads.v7.services.AdGroupAssetService.MutateAdGroupAssets", + "shortName": "CreateCustomMetric", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateCustomMetric", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/adGroupAssets:mutate" + "path": "/v1alpha/{parent=properties/*}/customMetrics" } ] - } - ] - }, - { - "shortName": "AdGroupAudienceViewService", - "fullName": "google.ads.googleads.v7.services.AdGroupAudienceViewService", - "methods": [ + }, { - "shortName": "GetAdGroupAudienceView", - "fullName": "google.ads.googleads.v7.services.AdGroupAudienceViewService.GetAdGroupAudienceView", + "shortName": "CreateDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupAudienceViews/*}" + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*}/dataStreams" } ] - } - ] - }, - { - "shortName": "AdGroupBidModifierService", - "fullName": "google.ads.googleads.v7.services.AdGroupBidModifierService", - "methods": [ + }, { - "shortName": "GetAdGroupBidModifier", - "fullName": "google.ads.googleads.v7.services.AdGroupBidModifierService.GetAdGroupBidModifier", + "shortName": "CreateDisplayVideo360AdvertiserLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateDisplayVideo360AdvertiserLink", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupBidModifiers/*}" + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*}/displayVideo360AdvertiserLinks" } ] }, { - "shortName": "MutateAdGroupBidModifiers", - "fullName": "google.ads.googleads.v7.services.AdGroupBidModifierService.MutateAdGroupBidModifiers", + "shortName": "CreateDisplayVideo360AdvertiserLinkProposal", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateDisplayVideo360AdvertiserLinkProposal", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/adGroupBidModifiers:mutate" + "path": "/v1alpha/{parent=properties/*}/displayVideo360AdvertiserLinkProposals" } ] - } - ] - }, - { - "shortName": "AdGroupCriterionLabelService", - "fullName": "google.ads.googleads.v7.services.AdGroupCriterionLabelService", - "methods": [ + }, { - "shortName": "GetAdGroupCriterionLabel", - "fullName": "google.ads.googleads.v7.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel", + "shortName": "CreateFirebaseLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateFirebaseLink", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupCriterionLabels/*}" + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*}/firebaseLinks" } ] }, { - "shortName": "MutateAdGroupCriterionLabels", - "fullName": "google.ads.googleads.v7.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels", + "shortName": "CreateGoogleAdsLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateGoogleAdsLink", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/adGroupCriterionLabels:mutate" + "path": "/v1alpha/{parent=properties/*}/googleAdsLinks" } ] - } - ] - }, - { - "shortName": "AdGroupCriterionService", - "fullName": "google.ads.googleads.v7.services.AdGroupCriterionService", - "methods": [ + }, { - "shortName": "GetAdGroupCriterion", - "fullName": "google.ads.googleads.v7.services.AdGroupCriterionService.GetAdGroupCriterion", + "shortName": "CreateMeasurementProtocolSecret", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateMeasurementProtocolSecret", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupCriteria/*}" + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*/webDataStreams/*}/measurementProtocolSecrets" + }, + { + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*/iosAppDataStreams/*}/measurementProtocolSecrets" + }, + { + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*/androidAppDataStreams/*}/measurementProtocolSecrets" } ] }, { - "shortName": "MutateAdGroupCriteria", - "fullName": "google.ads.googleads.v7.services.AdGroupCriterionService.MutateAdGroupCriteria", + "shortName": "CreateProperty", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateProperty", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/adGroupCriteria:mutate" + "path": "/v1alpha/properties" } ] - } - ] - }, - { - "shortName": "AdGroupCriterionSimulationService", - "fullName": "google.ads.googleads.v7.services.AdGroupCriterionSimulationService", - "methods": [ + }, { - "shortName": "GetAdGroupCriterionSimulation", - "fullName": "google.ads.googleads.v7.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation", + "shortName": "CreateUserLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateUserLink", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupCriterionSimulations/*}" + "httpMethod": "POST", + "path": "/v1alpha/{parent=accounts/*}/userLinks" + }, + { + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*}/userLinks" } ] - } - ] - }, - { - "shortName": "AdGroupExtensionSettingService", - "fullName": "google.ads.googleads.v7.services.AdGroupExtensionSettingService", - "methods": [ + }, { - "shortName": "GetAdGroupExtensionSetting", - "fullName": "google.ads.googleads.v7.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting", + "shortName": "CreateWebDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateWebDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupExtensionSettings/*}" + "httpMethod": "POST", + "path": "/v1alpha/{parent=properties/*}/webDataStreams" } ] }, { - "shortName": "MutateAdGroupExtensionSettings", - "fullName": "google.ads.googleads.v7.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings", + "shortName": "DeleteAccount", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteAccount", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/adGroupExtensionSettings:mutate" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=accounts/*}" } ] - } - ] - }, - { - "shortName": "AdGroupFeedService", - "fullName": "google.ads.googleads.v7.services.AdGroupFeedService", - "methods": [ + }, { - "shortName": "GetAdGroupFeed", - "fullName": "google.ads.googleads.v7.services.AdGroupFeedService.GetAdGroupFeed", + "shortName": "DeleteAndroidAppDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteAndroidAppDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupFeeds/*}" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/androidAppDataStreams/*}" } ] }, { - "shortName": "MutateAdGroupFeeds", - "fullName": "google.ads.googleads.v7.services.AdGroupFeedService.MutateAdGroupFeeds", + "shortName": "DeleteConversionEvent", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteConversionEvent", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/adGroupFeeds:mutate" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/conversionEvents/*}" } ] - } - ] - }, - { - "shortName": "AdGroupLabelService", - "fullName": "google.ads.googleads.v7.services.AdGroupLabelService", - "methods": [ + }, { - "shortName": "GetAdGroupLabel", - "fullName": "google.ads.googleads.v7.services.AdGroupLabelService.GetAdGroupLabel", + "shortName": "DeleteDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupLabels/*}" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/dataStreams/*}" } ] }, { - "shortName": "MutateAdGroupLabels", - "fullName": "google.ads.googleads.v7.services.AdGroupLabelService.MutateAdGroupLabels", + "shortName": "DeleteDisplayVideo360AdvertiserLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteDisplayVideo360AdvertiserLink", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/adGroupLabels:mutate" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinks/*}" } ] - } - ] - }, - { - "shortName": "AdGroupService", - "fullName": "google.ads.googleads.v7.services.AdGroupService", - "methods": [ + }, { - "shortName": "GetAdGroup", - "fullName": "google.ads.googleads.v7.services.AdGroupService.GetAdGroup", + "shortName": "DeleteDisplayVideo360AdvertiserLinkProposal", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteDisplayVideo360AdvertiserLinkProposal", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroups/*}" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinkProposals/*}" } ] }, { - "shortName": "MutateAdGroups", - "fullName": "google.ads.googleads.v7.services.AdGroupService.MutateAdGroups", + "shortName": "DeleteFirebaseLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteFirebaseLink", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/adGroups:mutate" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/firebaseLinks/*}" } ] - } - ] - }, - { - "shortName": "AdGroupSimulationService", - "fullName": "google.ads.googleads.v7.services.AdGroupSimulationService", - "methods": [ + }, { - "shortName": "GetAdGroupSimulation", - "fullName": "google.ads.googleads.v7.services.AdGroupSimulationService.GetAdGroupSimulation", + "shortName": "DeleteGoogleAdsLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteGoogleAdsLink", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adGroupSimulations/*}" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/googleAdsLinks/*}" } ] - } - ] - }, - { - "shortName": "AdParameterService", - "fullName": "google.ads.googleads.v7.services.AdParameterService", - "methods": [ + }, { - "shortName": "GetAdParameter", - "fullName": "google.ads.googleads.v7.services.AdParameterService.GetAdParameter", + "shortName": "DeleteIosAppDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteIosAppDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adParameters/*}" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/iosAppDataStreams/*}" } ] }, { - "shortName": "MutateAdParameters", - "fullName": "google.ads.googleads.v7.services.AdParameterService.MutateAdParameters", + "shortName": "DeleteMeasurementProtocolSecret", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteMeasurementProtocolSecret", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/adParameters:mutate" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/webDataStreams/*/measurementProtocolSecrets/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/iosAppDataStreams/*/measurementProtocolSecrets/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/androidAppDataStreams/*/measurementProtocolSecrets/*}" } ] - } - ] - }, - { - "shortName": "AdScheduleViewService", - "fullName": "google.ads.googleads.v7.services.AdScheduleViewService", - "methods": [ + }, { - "shortName": "GetAdScheduleView", - "fullName": "google.ads.googleads.v7.services.AdScheduleViewService.GetAdScheduleView", + "shortName": "DeleteProperty", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteProperty", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/adScheduleViews/*}" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*}" } ] - } - ] - }, - { - "shortName": "AdService", - "fullName": "google.ads.googleads.v7.services.AdService", - "methods": [ + }, { - "shortName": "GetAd", - "fullName": "google.ads.googleads.v7.services.AdService.GetAd", + "shortName": "DeleteUserLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteUserLink", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/ads/*}" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=accounts/*/userLinks/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/userLinks/*}" } ] }, { - "shortName": "MutateAds", - "fullName": "google.ads.googleads.v7.services.AdService.MutateAds", + "shortName": "DeleteWebDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteWebDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/ads:mutate" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=properties/*/webDataStreams/*}" } ] - } - ] - }, - { - "shortName": "AgeRangeViewService", - "fullName": "google.ads.googleads.v7.services.AgeRangeViewService", - "methods": [ + }, { - "shortName": "GetAgeRangeView", - "fullName": "google.ads.googleads.v7.services.AgeRangeViewService.GetAgeRangeView", + "shortName": "GetAccount", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetAccount", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/ageRangeViews/*}" + "path": "/v1alpha/{name=accounts/*}" } ] - } - ] - }, - { - "shortName": "AssetService", - "fullName": "google.ads.googleads.v7.services.AssetService", - "methods": [ + }, { - "shortName": "GetAsset", - "fullName": "google.ads.googleads.v7.services.AssetService.GetAsset", + "shortName": "GetAndroidAppDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetAndroidAppDataStream", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/assets/*}" + "path": "/v1alpha/{name=properties/*/androidAppDataStreams/*}" } ] }, { - "shortName": "MutateAssets", - "fullName": "google.ads.googleads.v7.services.AssetService.MutateAssets", + "shortName": "GetConversionEvent", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetConversionEvent", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/assets:mutate" + "httpMethod": "GET", + "path": "/v1alpha/{name=properties/*/conversionEvents/*}" } ] - } - ] - }, - { - "shortName": "BatchJobService", - "fullName": "google.ads.googleads.v7.services.BatchJobService", - "methods": [ + }, { - "shortName": "AddBatchJobOperations", - "fullName": "google.ads.googleads.v7.services.BatchJobService.AddBatchJobOperations", + "shortName": "GetCustomDimension", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetCustomDimension", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/{resource_name=customers/*/batchJobs/*}:addOperations" + "httpMethod": "GET", + "path": "/v1alpha/{name=properties/*/customDimensions/*}" } ] }, { - "shortName": "GetBatchJob", - "fullName": "google.ads.googleads.v7.services.BatchJobService.GetBatchJob", + "shortName": "GetCustomMetric", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetCustomMetric", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/batchJobs/*}" + "path": "/v1alpha/{name=properties/*/customMetrics/*}" } ] }, { - "shortName": "ListBatchJobResults", - "fullName": "google.ads.googleads.v7.services.BatchJobService.ListBatchJobResults", + "shortName": "GetDataRetentionSettings", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetDataRetentionSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/batchJobs/*}:listResults" + "path": "/v1alpha/{name=properties/*/dataRetentionSettings}" } ] }, { - "shortName": "MutateBatchJob", - "fullName": "google.ads.googleads.v7.services.BatchJobService.MutateBatchJob", + "shortName": "GetDataSharingSettings", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetDataSharingSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/batchJobs:mutate" + "httpMethod": "GET", + "path": "/v1alpha/{name=accounts/*/dataSharingSettings}" } ] }, { - "shortName": "RunBatchJob", - "fullName": "google.ads.googleads.v7.services.BatchJobService.RunBatchJob", + "shortName": "GetDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/{resource_name=customers/*/batchJobs/*}:run" + "httpMethod": "GET", + "path": "/v1alpha/{name=properties/*/dataStreams/*}" } ] - } - ] - }, - { - "shortName": "BiddingStrategyService", - "fullName": "google.ads.googleads.v7.services.BiddingStrategyService", - "methods": [ + }, { - "shortName": "GetBiddingStrategy", - "fullName": "google.ads.googleads.v7.services.BiddingStrategyService.GetBiddingStrategy", + "shortName": "GetDisplayVideo360AdvertiserLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetDisplayVideo360AdvertiserLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/biddingStrategies/*}" + "path": "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinks/*}" } ] }, { - "shortName": "MutateBiddingStrategies", - "fullName": "google.ads.googleads.v7.services.BiddingStrategyService.MutateBiddingStrategies", + "shortName": "GetDisplayVideo360AdvertiserLinkProposal", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetDisplayVideo360AdvertiserLinkProposal", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/biddingStrategies:mutate" + "httpMethod": "GET", + "path": "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinkProposals/*}" } ] - } - ] - }, - { - "shortName": "BiddingStrategySimulationService", - "fullName": "google.ads.googleads.v7.services.BiddingStrategySimulationService", - "methods": [ + }, { - "shortName": "GetBiddingStrategySimulation", - "fullName": "google.ads.googleads.v7.services.BiddingStrategySimulationService.GetBiddingStrategySimulation", + "shortName": "GetGlobalSiteTag", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetGlobalSiteTag", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/biddingStrategySimulations/*}" + "path": "/v1alpha/{name=properties/*/webDataStreams/*/globalSiteTag}" } ] - } - ] - }, - { - "shortName": "BillingSetupService", - "fullName": "google.ads.googleads.v7.services.BillingSetupService", - "methods": [ + }, { - "shortName": "GetBillingSetup", - "fullName": "google.ads.googleads.v7.services.BillingSetupService.GetBillingSetup", + "shortName": "GetGoogleSignalsSettings", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetGoogleSignalsSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/billingSetups/*}" + "path": "/v1alpha/{name=properties/*/googleSignalsSettings}" } ] }, { - "shortName": "MutateBillingSetup", - "fullName": "google.ads.googleads.v7.services.BillingSetupService.MutateBillingSetup", + "shortName": "GetIosAppDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetIosAppDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/billingSetups:mutate" + "httpMethod": "GET", + "path": "/v1alpha/{name=properties/*/iosAppDataStreams/*}" } ] - } - ] - }, - { - "shortName": "CampaignAssetService", - "fullName": "google.ads.googleads.v7.services.CampaignAssetService", - "methods": [ + }, { - "shortName": "GetCampaignAsset", - "fullName": "google.ads.googleads.v7.services.CampaignAssetService.GetCampaignAsset", + "shortName": "GetMeasurementProtocolSecret", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetMeasurementProtocolSecret", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignAssets/*}" + "path": "/v1alpha/{name=properties/*/webDataStreams/*/measurementProtocolSecrets/*}" + }, + { + "httpMethod": "GET", + "path": "/v1alpha/{name=properties/*/iosAppDataStreams/*/measurementProtocolSecrets/*}" + }, + { + "httpMethod": "GET", + "path": "/v1alpha/{name=properties/*/androidAppDataStreams/*/measurementProtocolSecrets/*}" } ] }, { - "shortName": "MutateCampaignAssets", - "fullName": "google.ads.googleads.v7.services.CampaignAssetService.MutateCampaignAssets", + "shortName": "GetProperty", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetProperty", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaignAssets:mutate" + "httpMethod": "GET", + "path": "/v1alpha/{name=properties/*}" } ] - } - ] - }, - { - "shortName": "CampaignAudienceViewService", - "fullName": "google.ads.googleads.v7.services.CampaignAudienceViewService", - "methods": [ + }, { - "shortName": "GetCampaignAudienceView", - "fullName": "google.ads.googleads.v7.services.CampaignAudienceViewService.GetCampaignAudienceView", + "shortName": "GetUserLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetUserLink", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignAudienceViews/*}" + "path": "/v1alpha/{name=accounts/*/userLinks/*}" + }, + { + "httpMethod": "GET", + "path": "/v1alpha/{name=properties/*/userLinks/*}" } ] - } - ] - }, - { - "shortName": "CampaignBidModifierService", - "fullName": "google.ads.googleads.v7.services.CampaignBidModifierService", - "methods": [ + }, { - "shortName": "GetCampaignBidModifier", - "fullName": "google.ads.googleads.v7.services.CampaignBidModifierService.GetCampaignBidModifier", + "shortName": "GetWebDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetWebDataStream", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignBidModifiers/*}" + "path": "/v1alpha/{name=properties/*/webDataStreams/*}" } ] }, { - "shortName": "MutateCampaignBidModifiers", - "fullName": "google.ads.googleads.v7.services.CampaignBidModifierService.MutateCampaignBidModifiers", + "shortName": "ListAccountSummaries", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListAccountSummaries", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaignBidModifiers:mutate" + "httpMethod": "GET", + "path": "/v1alpha/accountSummaries" } ] - } - ] - }, - { - "shortName": "CampaignBudgetService", - "fullName": "google.ads.googleads.v7.services.CampaignBudgetService", - "methods": [ + }, { - "shortName": "GetCampaignBudget", - "fullName": "google.ads.googleads.v7.services.CampaignBudgetService.GetCampaignBudget", + "shortName": "ListAccounts", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListAccounts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignBudgets/*}" + "path": "/v1alpha/accounts" } ] }, { - "shortName": "MutateCampaignBudgets", - "fullName": "google.ads.googleads.v7.services.CampaignBudgetService.MutateCampaignBudgets", + "shortName": "ListAndroidAppDataStreams", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListAndroidAppDataStreams", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaignBudgets:mutate" + "httpMethod": "GET", + "path": "/v1alpha/{parent=properties/*}/androidAppDataStreams" } ] - } - ] - }, - { - "shortName": "CampaignCriterionService", - "fullName": "google.ads.googleads.v7.services.CampaignCriterionService", - "methods": [ + }, { - "shortName": "GetCampaignCriterion", - "fullName": "google.ads.googleads.v7.services.CampaignCriterionService.GetCampaignCriterion", + "shortName": "ListConversionEvents", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListConversionEvents", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignCriteria/*}" + "path": "/v1alpha/{parent=properties/*}/conversionEvents" } ] }, { - "shortName": "MutateCampaignCriteria", - "fullName": "google.ads.googleads.v7.services.CampaignCriterionService.MutateCampaignCriteria", + "shortName": "ListCustomDimensions", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListCustomDimensions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaignCriteria:mutate" + "httpMethod": "GET", + "path": "/v1alpha/{parent=properties/*}/customDimensions" } ] - } - ] - }, - { - "shortName": "CampaignCriterionSimulationService", - "fullName": "google.ads.googleads.v7.services.CampaignCriterionSimulationService", - "methods": [ + }, { - "shortName": "GetCampaignCriterionSimulation", - "fullName": "google.ads.googleads.v7.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation", + "shortName": "ListCustomMetrics", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListCustomMetrics", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignCriterionSimulations/*}" + "path": "/v1alpha/{parent=properties/*}/customMetrics" } ] - } - ] - }, - { - "shortName": "CampaignDraftService", - "fullName": "google.ads.googleads.v7.services.CampaignDraftService", - "methods": [ + }, { - "shortName": "GetCampaignDraft", - "fullName": "google.ads.googleads.v7.services.CampaignDraftService.GetCampaignDraft", + "shortName": "ListDataStreams", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListDataStreams", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignDrafts/*}" + "path": "/v1alpha/{parent=properties/*}/dataStreams" } ] }, { - "shortName": "ListCampaignDraftAsyncErrors", - "fullName": "google.ads.googleads.v7.services.CampaignDraftService.ListCampaignDraftAsyncErrors", + "shortName": "ListDisplayVideo360AdvertiserLinkProposals", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListDisplayVideo360AdvertiserLinkProposals", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" + "path": "/v1alpha/{parent=properties/*}/displayVideo360AdvertiserLinkProposals" } ] }, { - "shortName": "MutateCampaignDrafts", - "fullName": "google.ads.googleads.v7.services.CampaignDraftService.MutateCampaignDrafts", + "shortName": "ListDisplayVideo360AdvertiserLinks", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListDisplayVideo360AdvertiserLinks", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaignDrafts:mutate" + "httpMethod": "GET", + "path": "/v1alpha/{parent=properties/*}/displayVideo360AdvertiserLinks" } ] }, { - "shortName": "PromoteCampaignDraft", - "fullName": "google.ads.googleads.v7.services.CampaignDraftService.PromoteCampaignDraft", + "shortName": "ListFirebaseLinks", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListFirebaseLinks", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/{campaign_draft=customers/*/campaignDrafts/*}:promote" + "httpMethod": "GET", + "path": "/v1alpha/{parent=properties/*}/firebaseLinks" } ] - } - ] - }, - { - "shortName": "CampaignExperimentService", - "fullName": "google.ads.googleads.v7.services.CampaignExperimentService", - "methods": [ + }, { - "shortName": "CreateCampaignExperiment", - "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.CreateCampaignExperiment", + "shortName": "ListGoogleAdsLinks", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListGoogleAdsLinks", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaignExperiments:create" + "httpMethod": "GET", + "path": "/v1alpha/{parent=properties/*}/googleAdsLinks" } ] }, { - "shortName": "EndCampaignExperiment", - "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.EndCampaignExperiment", + "shortName": "ListIosAppDataStreams", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListIosAppDataStreams", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/{campaign_experiment=customers/*/campaignExperiments/*}:end" + "httpMethod": "GET", + "path": "/v1alpha/{parent=properties/*}/iosAppDataStreams" } ] }, { - "shortName": "GetCampaignExperiment", - "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.GetCampaignExperiment", + "shortName": "ListMeasurementProtocolSecrets", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListMeasurementProtocolSecrets", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignExperiments/*}" + "path": "/v1alpha/{parent=properties/*/webDataStreams/*}/measurementProtocolSecrets" + }, + { + "httpMethod": "GET", + "path": "/v1alpha/{parent=properties/*/iosAppDataStreams/*}/measurementProtocolSecrets" + }, + { + "httpMethod": "GET", + "path": "/v1alpha/{parent=properties/*/androidAppDataStreams/*}/measurementProtocolSecrets" } ] }, { - "shortName": "GraduateCampaignExperiment", - "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.GraduateCampaignExperiment", + "shortName": "ListProperties", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListProperties", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" + "httpMethod": "GET", + "path": "/v1alpha/properties" } ] }, { - "shortName": "ListCampaignExperimentAsyncErrors", - "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors", + "shortName": "ListUserLinks", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListUserLinks", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" + "path": "/v1alpha/{parent=accounts/*}/userLinks" + }, + { + "httpMethod": "GET", + "path": "/v1alpha/{parent=properties/*}/userLinks" } ] }, { - "shortName": "MutateCampaignExperiments", - "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.MutateCampaignExperiments", + "shortName": "ListWebDataStreams", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListWebDataStreams", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaignExperiments:mutate" + "httpMethod": "GET", + "path": "/v1alpha/{parent=properties/*}/webDataStreams" } ] }, { - "shortName": "PromoteCampaignExperiment", - "fullName": "google.ads.googleads.v7.services.CampaignExperimentService.PromoteCampaignExperiment", + "shortName": "ProvisionAccountTicket", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ProvisionAccountTicket", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/{campaign_experiment=customers/*/campaignExperiments/*}:promote" + "path": "/v1alpha/accounts:provisionAccountTicket" } ] - } - ] - }, - { - "shortName": "CampaignExtensionSettingService", - "fullName": "google.ads.googleads.v7.services.CampaignExtensionSettingService", - "methods": [ + }, { - "shortName": "GetCampaignExtensionSetting", - "fullName": "google.ads.googleads.v7.services.CampaignExtensionSettingService.GetCampaignExtensionSetting", + "shortName": "SearchChangeHistoryEvents", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.SearchChangeHistoryEvents", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignExtensionSettings/*}" + "httpMethod": "POST", + "path": "/v1alpha/{account=accounts/*}:searchChangeHistoryEvents" } ] }, { - "shortName": "MutateCampaignExtensionSettings", - "fullName": "google.ads.googleads.v7.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings", + "shortName": "UpdateAccount", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateAccount", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaignExtensionSettings:mutate" + "httpMethod": "PATCH", + "path": "/v1alpha/{account.name=accounts/*}" } ] - } - ] - }, - { - "shortName": "CampaignFeedService", - "fullName": "google.ads.googleads.v7.services.CampaignFeedService", - "methods": [ + }, { - "shortName": "GetCampaignFeed", - "fullName": "google.ads.googleads.v7.services.CampaignFeedService.GetCampaignFeed", + "shortName": "UpdateAndroidAppDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateAndroidAppDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignFeeds/*}" + "httpMethod": "PATCH", + "path": "/v1alpha/{android_app_data_stream.name=properties/*/androidAppDataStreams/*}" } ] }, { - "shortName": "MutateCampaignFeeds", - "fullName": "google.ads.googleads.v7.services.CampaignFeedService.MutateCampaignFeeds", + "shortName": "UpdateCustomDimension", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateCustomDimension", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaignFeeds:mutate" + "httpMethod": "PATCH", + "path": "/v1alpha/{custom_dimension.name=properties/*/customDimensions/*}" } ] - } - ] - }, - { - "shortName": "CampaignLabelService", - "fullName": "google.ads.googleads.v7.services.CampaignLabelService", - "methods": [ + }, { - "shortName": "GetCampaignLabel", - "fullName": "google.ads.googleads.v7.services.CampaignLabelService.GetCampaignLabel", + "shortName": "UpdateCustomMetric", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateCustomMetric", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignLabels/*}" + "httpMethod": "PATCH", + "path": "/v1alpha/{custom_metric.name=properties/*/customMetrics/*}" } ] }, { - "shortName": "MutateCampaignLabels", - "fullName": "google.ads.googleads.v7.services.CampaignLabelService.MutateCampaignLabels", + "shortName": "UpdateDataRetentionSettings", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateDataRetentionSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaignLabels:mutate" + "httpMethod": "PATCH", + "path": "/v1alpha/{data_retention_settings.name=properties/*/dataRetentionSettings}" } ] - } - ] - }, - { - "shortName": "CampaignService", - "fullName": "google.ads.googleads.v7.services.CampaignService", - "methods": [ + }, { - "shortName": "GetCampaign", - "fullName": "google.ads.googleads.v7.services.CampaignService.GetCampaign", + "shortName": "UpdateDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaigns/*}" + "httpMethod": "PATCH", + "path": "/v1alpha/{data_stream.name=properties/*/dataStreams/*}" } ] }, { - "shortName": "MutateCampaigns", - "fullName": "google.ads.googleads.v7.services.CampaignService.MutateCampaigns", + "shortName": "UpdateDisplayVideo360AdvertiserLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateDisplayVideo360AdvertiserLink", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaigns:mutate" + "httpMethod": "PATCH", + "path": "/v1alpha/{display_video_360_advertiser_link.name=properties/*/displayVideo360AdvertiserLinks/*}" } ] - } - ] - }, - { - "shortName": "CampaignSharedSetService", - "fullName": "google.ads.googleads.v7.services.CampaignSharedSetService", - "methods": [ + }, { - "shortName": "GetCampaignSharedSet", - "fullName": "google.ads.googleads.v7.services.CampaignSharedSetService.GetCampaignSharedSet", + "shortName": "UpdateGoogleAdsLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateGoogleAdsLink", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignSharedSets/*}" + "httpMethod": "PATCH", + "path": "/v1alpha/{google_ads_link.name=properties/*/googleAdsLinks/*}" } ] }, { - "shortName": "MutateCampaignSharedSets", - "fullName": "google.ads.googleads.v7.services.CampaignSharedSetService.MutateCampaignSharedSets", + "shortName": "UpdateGoogleSignalsSettings", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateGoogleSignalsSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/campaignSharedSets:mutate" + "httpMethod": "PATCH", + "path": "/v1alpha/{google_signals_settings.name=properties/*/googleSignalsSettings}" } ] - } - ] - }, - { - "shortName": "CampaignSimulationService", - "fullName": "google.ads.googleads.v7.services.CampaignSimulationService", - "methods": [ + }, { - "shortName": "GetCampaignSimulation", - "fullName": "google.ads.googleads.v7.services.CampaignSimulationService.GetCampaignSimulation", + "shortName": "UpdateIosAppDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateIosAppDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/campaignSimulations/*}" + "httpMethod": "PATCH", + "path": "/v1alpha/{ios_app_data_stream.name=properties/*/iosAppDataStreams/*}" } ] - } - ] - }, - { - "shortName": "CarrierConstantService", - "fullName": "google.ads.googleads.v7.services.CarrierConstantService", - "methods": [ + }, { - "shortName": "GetCarrierConstant", - "fullName": "google.ads.googleads.v7.services.CarrierConstantService.GetCarrierConstant", + "shortName": "UpdateMeasurementProtocolSecret", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateMeasurementProtocolSecret", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=carrierConstants/*}" + "httpMethod": "PATCH", + "path": "/v1alpha/{measurement_protocol_secret.name=properties/*/webDataStreams/*/measurementProtocolSecrets/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1alpha/{measurement_protocol_secret.name=properties/*/iosAppDataStreams/*/measurementProtocolSecrets/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1alpha/{measurement_protocol_secret.name=properties/*/androidAppDataStreams/*/measurementProtocolSecrets/*}" } ] - } - ] - }, - { - "shortName": "ChangeStatusService", - "fullName": "google.ads.googleads.v7.services.ChangeStatusService", - "methods": [ + }, { - "shortName": "GetChangeStatus", - "fullName": "google.ads.googleads.v7.services.ChangeStatusService.GetChangeStatus", + "shortName": "UpdateProperty", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateProperty", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/changeStatus/*}" + "httpMethod": "PATCH", + "path": "/v1alpha/{property.name=properties/*}" } ] - } - ] - }, - { - "shortName": "ClickViewService", - "fullName": "google.ads.googleads.v7.services.ClickViewService", - "methods": [ + }, { - "shortName": "GetClickView", - "fullName": "google.ads.googleads.v7.services.ClickViewService.GetClickView", + "shortName": "UpdateUserLink", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateUserLink", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/clickViews/*}" + "httpMethod": "PATCH", + "path": "/v1alpha/{user_link.name=accounts/*/userLinks/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1alpha/{user_link.name=properties/*/userLinks/*}" } ] - } - ] - }, - { - "shortName": "CombinedAudienceService", - "fullName": "google.ads.googleads.v7.services.CombinedAudienceService", - "methods": [ + }, { - "shortName": "GetCombinedAudience", - "fullName": "google.ads.googleads.v7.services.CombinedAudienceService.GetCombinedAudience", + "shortName": "UpdateWebDataStream", + "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateWebDataStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/combinedAudiences/*}" + "httpMethod": "PATCH", + "path": "/v1alpha/{web_data_stream.name=properties/*/webDataStreams/*}" } ] } ] + } + ], + "configFile": "analyticsadmin_v1alpha.yaml" + }, + { + "id": "google.analytics.data.v1beta", + "directory": "google/analytics/data/v1beta", + "version": "v1beta", + "majorVersion": "v1", + "hostName": "analyticsdata.googleapis.com", + "title": "Google Analytics Data API", + "description": "Accesses report data in Google Analytics.", + "importDirectories": [ + "google/analytics/data/v1beta", + "google/api" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/analytics/data/v1beta;data": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } }, + "java_package": { + "valueCounts": { + "com.google.analytics.data.v1beta": 2 + } + } + }, + "services": [ { - "shortName": "ConversionActionService", - "fullName": "google.ads.googleads.v7.services.ConversionActionService", + "shortName": "BetaAnalyticsData", + "fullName": "google.analytics.data.v1beta.BetaAnalyticsData", "methods": [ { - "shortName": "GetConversionAction", - "fullName": "google.ads.googleads.v7.services.ConversionActionService.GetConversionAction", + "shortName": "BatchRunPivotReports", + "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.BatchRunPivotReports", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/conversionActions/*}" + "httpMethod": "POST", + "path": "/v1beta/{property=properties/*}:batchRunPivotReports" } ] }, { - "shortName": "MutateConversionActions", - "fullName": "google.ads.googleads.v7.services.ConversionActionService.MutateConversionActions", + "shortName": "BatchRunReports", + "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.BatchRunReports", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/conversionActions:mutate" + "path": "/v1beta/{property=properties/*}:batchRunReports" } ] - } - ] - }, - { - "shortName": "ConversionAdjustmentUploadService", - "fullName": "google.ads.googleads.v7.services.ConversionAdjustmentUploadService", - "methods": [ + }, { - "shortName": "UploadConversionAdjustments", - "fullName": "google.ads.googleads.v7.services.ConversionAdjustmentUploadService.UploadConversionAdjustments", + "shortName": "CheckCompatibility", + "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.CheckCompatibility", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}:uploadConversionAdjustments" + "path": "/v1beta/{property=properties/*}:checkCompatibility" } ] - } - ] - }, - { - "shortName": "ConversionCustomVariableService", - "fullName": "google.ads.googleads.v7.services.ConversionCustomVariableService", - "methods": [ + }, { - "shortName": "GetConversionCustomVariable", - "fullName": "google.ads.googleads.v7.services.ConversionCustomVariableService.GetConversionCustomVariable", + "shortName": "GetMetadata", + "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.GetMetadata", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/conversionCustomVariables/*}" + "path": "/v1beta/{name=properties/*/metadata}" } ] }, { - "shortName": "MutateConversionCustomVariables", - "fullName": "google.ads.googleads.v7.services.ConversionCustomVariableService.MutateConversionCustomVariables", + "shortName": "RunPivotReport", + "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.RunPivotReport", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/conversionCustomVariables:mutate" + "path": "/v1beta/{property=properties/*}:runPivotReport" } ] - } - ] - }, - { - "shortName": "ConversionUploadService", - "fullName": "google.ads.googleads.v7.services.ConversionUploadService", - "methods": [ + }, { - "shortName": "UploadCallConversions", - "fullName": "google.ads.googleads.v7.services.ConversionUploadService.UploadCallConversions", + "shortName": "RunRealtimeReport", + "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.RunRealtimeReport", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}:uploadCallConversions" + "path": "/v1beta/{property=properties/*}:runRealtimeReport" } ] }, { - "shortName": "UploadClickConversions", - "fullName": "google.ads.googleads.v7.services.ConversionUploadService.UploadClickConversions", + "shortName": "RunReport", + "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.RunReport", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}:uploadClickConversions" + "path": "/v1beta/{property=properties/*}:runReport" } ] } ] + } + ], + "configFile": "analyticsdata_v1beta.yaml" + }, + { + "id": "google.api.servicecontrol.v1", + "directory": "google/api/servicecontrol/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "servicecontrol.googleapis.com", + "title": "Service Control API", + "description": "Provides admission control and telemetry reporting for services integrated with Service Infrastructure.", + "importDirectories": [ + "google/api", + "google/api/servicecontrol/v1", + "google/logging/type", + "google/protobuf", + "google/rpc" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "": 2, + "true": 6 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.ServiceControl.V1": 8 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/api/servicecontrol/v1;servicecontrol": 8 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 8 + } + }, + "java_package": { + "valueCounts": { + "com.google.api.servicecontrol.v1": 8 + } + }, + "objc_class_prefix": { + "valueCounts": { + "": 7, + "GASC": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\ServiceControl\\V1": 8 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::ServiceControl::V1": 8 + } + } + }, + "services": [ { - "shortName": "CurrencyConstantService", - "fullName": "google.ads.googleads.v7.services.CurrencyConstantService", + "shortName": "QuotaController", + "fullName": "google.api.servicecontrol.v1.QuotaController", "methods": [ { - "shortName": "GetCurrencyConstant", - "fullName": "google.ads.googleads.v7.services.CurrencyConstantService.GetCurrencyConstant", + "shortName": "AllocateQuota", + "fullName": "google.api.servicecontrol.v1.QuotaController.AllocateQuota", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=currencyConstants/*}" + "httpMethod": "POST", + "path": "/v1/services/{service_name}:allocateQuota" } ] } ] }, { - "shortName": "CustomAudienceService", - "fullName": "google.ads.googleads.v7.services.CustomAudienceService", + "shortName": "ServiceController", + "fullName": "google.api.servicecontrol.v1.ServiceController", "methods": [ { - "shortName": "GetCustomAudience", - "fullName": "google.ads.googleads.v7.services.CustomAudienceService.GetCustomAudience", + "shortName": "Check", + "fullName": "google.api.servicecontrol.v1.ServiceController.Check", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customAudiences/*}" + "httpMethod": "POST", + "path": "/v1/services/{service_name}:check" } ] }, { - "shortName": "MutateCustomAudiences", - "fullName": "google.ads.googleads.v7.services.CustomAudienceService.MutateCustomAudiences", + "shortName": "Report", + "fullName": "google.api.servicecontrol.v1.ServiceController.Report", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customAudiences:mutate" + "path": "/v1/services/{service_name}:report" } ] } ] + } + ], + "configFile": "servicecontrol.yaml" + }, + { + "id": "google.api.servicemanagement.v1", + "directory": "google/api/servicemanagement/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "servicemanagement.googleapis.com", + "title": "Service Management API", + "description": "Google Service Management allows service producers to publish their services on Google Cloud Platform so that they can be discovered and used by service consumers.", + "importDirectories": [ + "google/api", + "google/api/servicemanagement/v1", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.ServiceManagement.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/api/servicemanagement/v1;servicemanagement": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } }, + "java_package": { + "valueCounts": { + "com.google.api.servicemanagement.v1": 2 + } + }, + "objc_class_prefix": { + "valueCounts": { + "GASM": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\ServiceManagement\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::ServiceManagement::V1": 2 + } + } + }, + "services": [ { - "shortName": "CustomerAssetService", - "fullName": "google.ads.googleads.v7.services.CustomerAssetService", + "shortName": "ServiceManager", + "fullName": "google.api.servicemanagement.v1.ServiceManager", "methods": [ { - "shortName": "GetCustomerAsset", - "fullName": "google.ads.googleads.v7.services.CustomerAssetService.GetCustomerAsset", + "shortName": "CreateService", + "fullName": "google.api.servicemanagement.v1.ServiceManager.CreateService", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customerAssets/*}" + "httpMethod": "POST", + "path": "/v1/services" } ] }, { - "shortName": "MutateCustomerAssets", - "fullName": "google.ads.googleads.v7.services.CustomerAssetService.MutateCustomerAssets", + "shortName": "CreateServiceConfig", + "fullName": "google.api.servicemanagement.v1.ServiceManager.CreateServiceConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customerAssets:mutate" + "path": "/v1/services/{service_name}/configs" } ] - } - ] - }, - { - "shortName": "CustomerClientLinkService", - "fullName": "google.ads.googleads.v7.services.CustomerClientLinkService", - "methods": [ + }, { - "shortName": "GetCustomerClientLink", - "fullName": "google.ads.googleads.v7.services.CustomerClientLinkService.GetCustomerClientLink", + "shortName": "CreateServiceRollout", + "fullName": "google.api.servicemanagement.v1.ServiceManager.CreateServiceRollout", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customerClientLinks/*}" + "httpMethod": "POST", + "path": "/v1/services/{service_name}/rollouts" } ] }, { - "shortName": "MutateCustomerClientLink", - "fullName": "google.ads.googleads.v7.services.CustomerClientLinkService.MutateCustomerClientLink", + "shortName": "DeleteService", + "fullName": "google.api.servicemanagement.v1.ServiceManager.DeleteService", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customerClientLinks:mutate" + "httpMethod": "DELETE", + "path": "/v1/services/{service_name}" } ] - } - ] - }, - { - "shortName": "CustomerClientService", - "fullName": "google.ads.googleads.v7.services.CustomerClientService", - "methods": [ + }, { - "shortName": "GetCustomerClient", - "fullName": "google.ads.googleads.v7.services.CustomerClientService.GetCustomerClient", + "shortName": "DisableService", + "fullName": "google.api.servicemanagement.v1.ServiceManager.DisableService", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customerClients/*}" + "httpMethod": "POST", + "path": "/v1/services/{service_name}:disable" } ] - } - ] - }, - { - "shortName": "CustomerExtensionSettingService", - "fullName": "google.ads.googleads.v7.services.CustomerExtensionSettingService", - "methods": [ + }, { - "shortName": "GetCustomerExtensionSetting", - "fullName": "google.ads.googleads.v7.services.CustomerExtensionSettingService.GetCustomerExtensionSetting", + "shortName": "EnableService", + "fullName": "google.api.servicemanagement.v1.ServiceManager.EnableService", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customerExtensionSettings/*}" + "httpMethod": "POST", + "path": "/v1/services/{service_name}:enable" } ] }, { - "shortName": "MutateCustomerExtensionSettings", - "fullName": "google.ads.googleads.v7.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings", + "shortName": "GenerateConfigReport", + "fullName": "google.api.servicemanagement.v1.ServiceManager.GenerateConfigReport", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customerExtensionSettings:mutate" + "path": "/v1/services:generateConfigReport" } ] - } - ] - }, - { - "shortName": "CustomerFeedService", - "fullName": "google.ads.googleads.v7.services.CustomerFeedService", - "methods": [ + }, { - "shortName": "GetCustomerFeed", - "fullName": "google.ads.googleads.v7.services.CustomerFeedService.GetCustomerFeed", + "shortName": "GetService", + "fullName": "google.api.servicemanagement.v1.ServiceManager.GetService", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customerFeeds/*}" + "path": "/v1/services/{service_name}" } ] }, { - "shortName": "MutateCustomerFeeds", - "fullName": "google.ads.googleads.v7.services.CustomerFeedService.MutateCustomerFeeds", + "shortName": "GetServiceConfig", + "fullName": "google.api.servicemanagement.v1.ServiceManager.GetServiceConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customerFeeds:mutate" + "httpMethod": "GET", + "path": "/v1/services/{service_name}/configs/{config_id}" + }, + { + "httpMethod": "GET", + "path": "/v1/services/{service_name}/config" } ] - } - ] - }, - { - "shortName": "CustomerLabelService", - "fullName": "google.ads.googleads.v7.services.CustomerLabelService", - "methods": [ + }, { - "shortName": "GetCustomerLabel", - "fullName": "google.ads.googleads.v7.services.CustomerLabelService.GetCustomerLabel", + "shortName": "GetServiceRollout", + "fullName": "google.api.servicemanagement.v1.ServiceManager.GetServiceRollout", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customerLabels/*}" + "path": "/v1/services/{service_name}/rollouts/{rollout_id}" } ] }, { - "shortName": "MutateCustomerLabels", - "fullName": "google.ads.googleads.v7.services.CustomerLabelService.MutateCustomerLabels", + "shortName": "ListServiceConfigs", + "fullName": "google.api.servicemanagement.v1.ServiceManager.ListServiceConfigs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customerLabels:mutate" + "httpMethod": "GET", + "path": "/v1/services/{service_name}/configs" } ] - } - ] - }, - { - "shortName": "CustomerManagerLinkService", - "fullName": "google.ads.googleads.v7.services.CustomerManagerLinkService", - "methods": [ + }, { - "shortName": "GetCustomerManagerLink", - "fullName": "google.ads.googleads.v7.services.CustomerManagerLinkService.GetCustomerManagerLink", + "shortName": "ListServiceRollouts", + "fullName": "google.api.servicemanagement.v1.ServiceManager.ListServiceRollouts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customerManagerLinks/*}" + "path": "/v1/services/{service_name}/rollouts" } ] }, { - "shortName": "MoveManagerLink", - "fullName": "google.ads.googleads.v7.services.CustomerManagerLinkService.MoveManagerLink", + "shortName": "ListServices", + "fullName": "google.api.servicemanagement.v1.ServiceManager.ListServices", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" + "httpMethod": "GET", + "path": "/v1/services" } ] }, { - "shortName": "MutateCustomerManagerLink", - "fullName": "google.ads.googleads.v7.services.CustomerManagerLinkService.MutateCustomerManagerLink", + "shortName": "SubmitConfigSource", + "fullName": "google.api.servicemanagement.v1.ServiceManager.SubmitConfigSource", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customerManagerLinks:mutate" - } - ] - } - ] - }, - { - "shortName": "CustomerNegativeCriterionService", - "fullName": "google.ads.googleads.v7.services.CustomerNegativeCriterionService", - "methods": [ - { - "shortName": "GetCustomerNegativeCriterion", - "fullName": "google.ads.googleads.v7.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customerNegativeCriteria/*}" + "path": "/v1/services/{service_name}/configs:submit" } ] }, { - "shortName": "MutateCustomerNegativeCriteria", - "fullName": "google.ads.googleads.v7.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria", + "shortName": "UndeleteService", + "fullName": "google.api.servicemanagement.v1.ServiceManager.UndeleteService", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customerNegativeCriteria:mutate" + "path": "/v1/services/{service_name}:undelete" } ] } ] + } + ], + "configFile": "servicemanagement_v1.yaml" + }, + { + "id": "google.api.serviceusage.v1", + "directory": "google/api/serviceusage/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "serviceusage.googleapis.com", + "title": "Service Usage API", + "description": "Enables services that service consumers want to use on Google Cloud Platform, lists the available or enabled services, or disables services that service consumers no longer use.", + "importDirectories": [ + "google/api", + "google/api/serviceusage/v1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.ServiceUsage.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/api/serviceusage/v1;serviceusage": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.api.serviceusage.v1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\ServiceUsage\\V1": 2 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::ServiceUsage::V1": 2 + } + } + }, + "services": [ { - "shortName": "CustomerService", - "fullName": "google.ads.googleads.v7.services.CustomerService", + "shortName": "ServiceUsage", + "fullName": "google.api.serviceusage.v1.ServiceUsage", "methods": [ { - "shortName": "CreateCustomerClient", - "fullName": "google.ads.googleads.v7.services.CustomerService.CreateCustomerClient", + "shortName": "BatchEnableServices", + "fullName": "google.api.serviceusage.v1.ServiceUsage.BatchEnableServices", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}:createCustomerClient" + "path": "/v1/{parent=*/*}/services:batchEnable" } ] }, { - "shortName": "GetCustomer", - "fullName": "google.ads.googleads.v7.services.CustomerService.GetCustomer", + "shortName": "BatchGetServices", + "fullName": "google.api.serviceusage.v1.ServiceUsage.BatchGetServices", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*}" + "path": "/v1/{parent=*/*}/services:batchGet" } ] }, { - "shortName": "ListAccessibleCustomers", - "fullName": "google.ads.googleads.v7.services.CustomerService.ListAccessibleCustomers", + "shortName": "DisableService", + "fullName": "google.api.serviceusage.v1.ServiceUsage.DisableService", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/customers:listAccessibleCustomers" + "httpMethod": "POST", + "path": "/v1/{name=*/*/services/*}:disable" } ] }, { - "shortName": "MutateCustomer", - "fullName": "google.ads.googleads.v7.services.CustomerService.MutateCustomer", + "shortName": "EnableService", + "fullName": "google.api.serviceusage.v1.ServiceUsage.EnableService", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}:mutate" + "path": "/v1/{name=*/*/services/*}:enable" } ] - } - ] - }, - { - "shortName": "CustomerUserAccessInvitationService", - "fullName": "google.ads.googleads.v7.services.CustomerUserAccessInvitationService", - "methods": [ + }, { - "shortName": "GetCustomerUserAccessInvitation", - "fullName": "google.ads.googleads.v7.services.CustomerUserAccessInvitationService.GetCustomerUserAccessInvitation", + "shortName": "GetService", + "fullName": "google.api.serviceusage.v1.ServiceUsage.GetService", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customerUserAccessInvitations/*}" + "path": "/v1/{name=*/*/services/*}" } ] }, { - "shortName": "MutateCustomerUserAccessInvitation", - "fullName": "google.ads.googleads.v7.services.CustomerUserAccessInvitationService.MutateCustomerUserAccessInvitation", + "shortName": "ListServices", + "fullName": "google.api.serviceusage.v1.ServiceUsage.ListServices", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customerUserAccessInvitations:mutate" + "httpMethod": "GET", + "path": "/v1/{parent=*/*}/services" } ] } ] + } + ], + "configFile": "serviceusage_v1.yaml" + }, + { + "id": "google.api.serviceusage.v1beta1", + "directory": "google/api/serviceusage/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "serviceusage.googleapis.com", + "title": "Service Usage API", + "description": "Enables services that service consumers want to use on Google Cloud Platform, lists the available or enabled services, or disables services that service consumers no longer use.", + "importDirectories": [ + "google/api", + "google/api/serviceusage/v1beta1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Api.ServiceUsage.V1Beta1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/api/serviceusage/v1beta1;serviceusage": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.api.serviceusage.v1beta1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Api\\ServiceUsage\\V1beta1": 2 + } }, + "ruby_package": { + "valueCounts": { + "Google::Api::ServiceUsage::V1beta1": 2 + } + } + }, + "services": [ { - "shortName": "CustomerUserAccessService", - "fullName": "google.ads.googleads.v7.services.CustomerUserAccessService", + "shortName": "ServiceUsage", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage", "methods": [ { - "shortName": "GetCustomerUserAccess", - "fullName": "google.ads.googleads.v7.services.CustomerUserAccessService.GetCustomerUserAccess", + "shortName": "BatchEnableServices", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.BatchEnableServices", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customerUserAccesses/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=*/*}/services:batchEnable" } ] }, { - "shortName": "MutateCustomerUserAccess", - "fullName": "google.ads.googleads.v7.services.CustomerUserAccessService.MutateCustomerUserAccess", + "shortName": "CreateAdminOverride", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.CreateAdminOverride", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customerUserAccesses:mutate" + "path": "/v1beta1/{parent=*/*/services/*/consumerQuotaMetrics/*/limits/*}/adminOverrides" } ] - } - ] - }, - { - "shortName": "CustomInterestService", - "fullName": "google.ads.googleads.v7.services.CustomInterestService", - "methods": [ + }, { - "shortName": "GetCustomInterest", - "fullName": "google.ads.googleads.v7.services.CustomInterestService.GetCustomInterest", + "shortName": "CreateConsumerOverride", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.CreateConsumerOverride", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/customInterests/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=*/*/services/*/consumerQuotaMetrics/*/limits/*}/consumerOverrides" } ] }, { - "shortName": "MutateCustomInterests", - "fullName": "google.ads.googleads.v7.services.CustomInterestService.MutateCustomInterests", + "shortName": "DeleteAdminOverride", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.DeleteAdminOverride", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/customInterests:mutate" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*/limits/*/adminOverrides/*}" } ] - } - ] - }, - { - "shortName": "DetailPlacementViewService", - "fullName": "google.ads.googleads.v7.services.DetailPlacementViewService", - "methods": [ + }, { - "shortName": "GetDetailPlacementView", - "fullName": "google.ads.googleads.v7.services.DetailPlacementViewService.GetDetailPlacementView", + "shortName": "DeleteConsumerOverride", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.DeleteConsumerOverride", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/detailPlacementViews/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*/limits/*/consumerOverrides/*}" } ] - } - ] - }, - { - "shortName": "DisplayKeywordViewService", - "fullName": "google.ads.googleads.v7.services.DisplayKeywordViewService", - "methods": [ + }, { - "shortName": "GetDisplayKeywordView", - "fullName": "google.ads.googleads.v7.services.DisplayKeywordViewService.GetDisplayKeywordView", + "shortName": "DisableService", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.DisableService", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/displayKeywordViews/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=*/*/services/*}:disable" } ] - } - ] - }, - { - "shortName": "DistanceViewService", - "fullName": "google.ads.googleads.v7.services.DistanceViewService", - "methods": [ + }, { - "shortName": "GetDistanceView", - "fullName": "google.ads.googleads.v7.services.DistanceViewService.GetDistanceView", + "shortName": "EnableService", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.EnableService", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/distanceViews/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=*/*/services/*}:enable" } ] - } - ] - }, - { - "shortName": "DomainCategoryService", - "fullName": "google.ads.googleads.v7.services.DomainCategoryService", - "methods": [ + }, { - "shortName": "GetDomainCategory", - "fullName": "google.ads.googleads.v7.services.DomainCategoryService.GetDomainCategory", + "shortName": "GenerateServiceIdentity", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.GenerateServiceIdentity", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/domainCategories/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=*/*/services/*}:generateServiceIdentity" } ] - } - ] - }, - { - "shortName": "DynamicSearchAdsSearchTermViewService", - "fullName": "google.ads.googleads.v7.services.DynamicSearchAdsSearchTermViewService", - "methods": [ + }, { - "shortName": "GetDynamicSearchAdsSearchTermView", - "fullName": "google.ads.googleads.v7.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView", + "shortName": "GetConsumerQuotaLimit", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.GetConsumerQuotaLimit", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" + "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*/limits/*}" } ] - } - ] - }, - { - "shortName": "ExpandedLandingPageViewService", - "fullName": "google.ads.googleads.v7.services.ExpandedLandingPageViewService", - "methods": [ + }, { - "shortName": "GetExpandedLandingPageView", - "fullName": "google.ads.googleads.v7.services.ExpandedLandingPageViewService.GetExpandedLandingPageView", + "shortName": "GetConsumerQuotaMetric", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.GetConsumerQuotaMetric", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/expandedLandingPageViews/*}" + "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*}" } ] - } - ] - }, - { - "shortName": "ExtensionFeedItemService", - "fullName": "google.ads.googleads.v7.services.ExtensionFeedItemService", - "methods": [ + }, { - "shortName": "GetExtensionFeedItem", - "fullName": "google.ads.googleads.v7.services.ExtensionFeedItemService.GetExtensionFeedItem", + "shortName": "GetService", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.GetService", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/extensionFeedItems/*}" + "path": "/v1beta1/{name=*/*/services/*}" } ] }, { - "shortName": "MutateExtensionFeedItems", - "fullName": "google.ads.googleads.v7.services.ExtensionFeedItemService.MutateExtensionFeedItems", + "shortName": "ImportAdminOverrides", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ImportAdminOverrides", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/extensionFeedItems:mutate" - } - ] - } - ] - }, - { - "shortName": "FeedItemService", - "fullName": "google.ads.googleads.v7.services.FeedItemService", - "methods": [ - { - "shortName": "GetFeedItem", - "fullName": "google.ads.googleads.v7.services.FeedItemService.GetFeedItem", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/feedItems/*}" + "path": "/v1beta1/{parent=*/*/services/*}/consumerQuotaMetrics:importAdminOverrides" } ] }, { - "shortName": "MutateFeedItems", - "fullName": "google.ads.googleads.v7.services.FeedItemService.MutateFeedItems", + "shortName": "ImportConsumerOverrides", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ImportConsumerOverrides", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/feedItems:mutate" + "path": "/v1beta1/{parent=*/*/services/*}/consumerQuotaMetrics:importConsumerOverrides" } ] - } - ] - }, - { - "shortName": "FeedItemSetLinkService", - "fullName": "google.ads.googleads.v7.services.FeedItemSetLinkService", - "methods": [ + }, { - "shortName": "GetFeedItemSetLink", - "fullName": "google.ads.googleads.v7.services.FeedItemSetLinkService.GetFeedItemSetLink", + "shortName": "ListAdminOverrides", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ListAdminOverrides", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/feedItemSetLinks/*}" + "path": "/v1beta1/{parent=*/*/services/*/consumerQuotaMetrics/*/limits/*}/adminOverrides" } ] }, { - "shortName": "MutateFeedItemSetLinks", - "fullName": "google.ads.googleads.v7.services.FeedItemSetLinkService.MutateFeedItemSetLinks", + "shortName": "ListConsumerOverrides", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ListConsumerOverrides", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/feedItemSetLinks:mutate" + "httpMethod": "GET", + "path": "/v1beta1/{parent=*/*/services/*/consumerQuotaMetrics/*/limits/*}/consumerOverrides" } ] - } - ] - }, - { - "shortName": "FeedItemSetService", - "fullName": "google.ads.googleads.v7.services.FeedItemSetService", - "methods": [ + }, { - "shortName": "GetFeedItemSet", - "fullName": "google.ads.googleads.v7.services.FeedItemSetService.GetFeedItemSet", + "shortName": "ListConsumerQuotaMetrics", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ListConsumerQuotaMetrics", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/feedItemSets/*}" + "path": "/v1beta1/{parent=*/*/services/*}/consumerQuotaMetrics" } ] }, { - "shortName": "MutateFeedItemSets", - "fullName": "google.ads.googleads.v7.services.FeedItemSetService.MutateFeedItemSets", + "shortName": "ListServices", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ListServices", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/feedItemSets:mutate" + "httpMethod": "GET", + "path": "/v1beta1/{parent=*/*}/services" } ] - } - ] - }, - { - "shortName": "FeedItemTargetService", - "fullName": "google.ads.googleads.v7.services.FeedItemTargetService", - "methods": [ + }, { - "shortName": "GetFeedItemTarget", - "fullName": "google.ads.googleads.v7.services.FeedItemTargetService.GetFeedItemTarget", + "shortName": "UpdateAdminOverride", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.UpdateAdminOverride", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/feedItemTargets/*}" + "httpMethod": "PATCH", + "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*/limits/*/adminOverrides/*}" } ] }, { - "shortName": "MutateFeedItemTargets", - "fullName": "google.ads.googleads.v7.services.FeedItemTargetService.MutateFeedItemTargets", + "shortName": "UpdateConsumerOverride", + "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.UpdateConsumerOverride", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/feedItemTargets:mutate" + "httpMethod": "PATCH", + "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*/limits/*/consumerOverrides/*}" } ] } ] + } + ], + "configFile": "serviceusage_v1beta1.yaml" + }, + { + "id": "google.appengine.v1", + "directory": "google/appengine/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "appengine.googleapis.com", + "title": "App Engine Admin API", + "description": "Provisions and manages developers' App Engine applications.", + "importDirectories": [ + "google/api", + "google/appengine/v1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.AppEngine.V1": 16 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/appengine/v1;appengine": 16 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 16 + } + }, + "java_package": { + "valueCounts": { + "com.google.appengine.v1": 15, + "com.google.appengine.v1.firewall": 1 + } }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\AppEngine\\V1": 16 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::AppEngine::V1": 16 + } + } + }, + "services": [ { - "shortName": "FeedMappingService", - "fullName": "google.ads.googleads.v7.services.FeedMappingService", + "shortName": "Applications", + "fullName": "google.appengine.v1.Applications", "methods": [ { - "shortName": "GetFeedMapping", - "fullName": "google.ads.googleads.v7.services.FeedMappingService.GetFeedMapping", + "shortName": "CreateApplication", + "fullName": "google.appengine.v1.Applications.CreateApplication", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/feedMappings/*}" + "httpMethod": "POST", + "path": "/v1/apps" } ] }, { - "shortName": "MutateFeedMappings", - "fullName": "google.ads.googleads.v7.services.FeedMappingService.MutateFeedMappings", + "shortName": "GetApplication", + "fullName": "google.appengine.v1.Applications.GetApplication", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=apps/*}" + } + ] + }, + { + "shortName": "RepairApplication", + "fullName": "google.appengine.v1.Applications.RepairApplication", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/feedMappings:mutate" + "path": "/v1/{name=apps/*}:repair" + } + ] + }, + { + "shortName": "UpdateApplication", + "fullName": "google.appengine.v1.Applications.UpdateApplication", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{name=apps/*}" } ] } ] }, { - "shortName": "FeedPlaceholderViewService", - "fullName": "google.ads.googleads.v7.services.FeedPlaceholderViewService", + "shortName": "AuthorizedCertificates", + "fullName": "google.appengine.v1.AuthorizedCertificates", "methods": [ { - "shortName": "GetFeedPlaceholderView", - "fullName": "google.ads.googleads.v7.services.FeedPlaceholderViewService.GetFeedPlaceholderView", + "shortName": "CreateAuthorizedCertificate", + "fullName": "google.appengine.v1.AuthorizedCertificates.CreateAuthorizedCertificate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=apps/*}/authorizedCertificates" + } + ] + }, + { + "shortName": "DeleteAuthorizedCertificate", + "fullName": "google.appengine.v1.AuthorizedCertificates.DeleteAuthorizedCertificate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=apps/*/authorizedCertificates/*}" + } + ] + }, + { + "shortName": "GetAuthorizedCertificate", + "fullName": "google.appengine.v1.AuthorizedCertificates.GetAuthorizedCertificate", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/feedPlaceholderViews/*}" + "path": "/v1/{name=apps/*/authorizedCertificates/*}" } ] - } - ] - }, - { - "shortName": "FeedService", - "fullName": "google.ads.googleads.v7.services.FeedService", - "methods": [ + }, { - "shortName": "GetFeed", - "fullName": "google.ads.googleads.v7.services.FeedService.GetFeed", + "shortName": "ListAuthorizedCertificates", + "fullName": "google.appengine.v1.AuthorizedCertificates.ListAuthorizedCertificates", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/feeds/*}" + "path": "/v1/{parent=apps/*}/authorizedCertificates" } ] }, { - "shortName": "MutateFeeds", - "fullName": "google.ads.googleads.v7.services.FeedService.MutateFeeds", + "shortName": "UpdateAuthorizedCertificate", + "fullName": "google.appengine.v1.AuthorizedCertificates.UpdateAuthorizedCertificate", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/feeds:mutate" + "httpMethod": "PATCH", + "path": "/v1/{name=apps/*/authorizedCertificates/*}" } ] } ] }, { - "shortName": "GenderViewService", - "fullName": "google.ads.googleads.v7.services.GenderViewService", + "shortName": "AuthorizedDomains", + "fullName": "google.appengine.v1.AuthorizedDomains", "methods": [ { - "shortName": "GetGenderView", - "fullName": "google.ads.googleads.v7.services.GenderViewService.GetGenderView", + "shortName": "ListAuthorizedDomains", + "fullName": "google.appengine.v1.AuthorizedDomains.ListAuthorizedDomains", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/genderViews/*}" + "path": "/v1/{parent=apps/*}/authorizedDomains" } ] } ] }, { - "shortName": "GeographicViewService", - "fullName": "google.ads.googleads.v7.services.GeographicViewService", + "shortName": "DomainMappings", + "fullName": "google.appengine.v1.DomainMappings", "methods": [ { - "shortName": "GetGeographicView", - "fullName": "google.ads.googleads.v7.services.GeographicViewService.GetGeographicView", + "shortName": "CreateDomainMapping", + "fullName": "google.appengine.v1.DomainMappings.CreateDomainMapping", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/geographicViews/*}" + "httpMethod": "POST", + "path": "/v1/{parent=apps/*}/domainMappings" } ] - } - ] - }, - { - "shortName": "GeoTargetConstantService", - "fullName": "google.ads.googleads.v7.services.GeoTargetConstantService", - "methods": [ + }, { - "shortName": "GetGeoTargetConstant", - "fullName": "google.ads.googleads.v7.services.GeoTargetConstantService.GetGeoTargetConstant", + "shortName": "DeleteDomainMapping", + "fullName": "google.appengine.v1.DomainMappings.DeleteDomainMapping", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=geoTargetConstants/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=apps/*/domainMappings/*}" } ] }, { - "shortName": "SuggestGeoTargetConstants", - "fullName": "google.ads.googleads.v7.services.GeoTargetConstantService.SuggestGeoTargetConstants", + "shortName": "GetDomainMapping", + "fullName": "google.appengine.v1.DomainMappings.GetDomainMapping", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/geoTargetConstants:suggest" + "httpMethod": "GET", + "path": "/v1/{name=apps/*/domainMappings/*}" } ] - } - ] - }, - { - "shortName": "GoogleAdsFieldService", - "fullName": "google.ads.googleads.v7.services.GoogleAdsFieldService", - "methods": [ + }, { - "shortName": "GetGoogleAdsField", - "fullName": "google.ads.googleads.v7.services.GoogleAdsFieldService.GetGoogleAdsField", + "shortName": "ListDomainMappings", + "fullName": "google.appengine.v1.DomainMappings.ListDomainMappings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=googleAdsFields/*}" + "path": "/v1/{parent=apps/*}/domainMappings" } ] }, { - "shortName": "SearchGoogleAdsFields", - "fullName": "google.ads.googleads.v7.services.GoogleAdsFieldService.SearchGoogleAdsFields", + "shortName": "UpdateDomainMapping", + "fullName": "google.appengine.v1.DomainMappings.UpdateDomainMapping", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/googleAdsFields:search" + "httpMethod": "PATCH", + "path": "/v1/{name=apps/*/domainMappings/*}" } ] } ] }, { - "shortName": "GoogleAdsService", - "fullName": "google.ads.googleads.v7.services.GoogleAdsService", + "shortName": "Firewall", + "fullName": "google.appengine.v1.Firewall", "methods": [ { - "shortName": "Mutate", - "fullName": "google.ads.googleads.v7.services.GoogleAdsService.Mutate", + "shortName": "BatchUpdateIngressRules", + "fullName": "google.appengine.v1.Firewall.BatchUpdateIngressRules", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/googleAds:mutate" + "path": "/v1/{name=apps/*/firewall/ingressRules}:batchUpdate" } ] }, { - "shortName": "Search", - "fullName": "google.ads.googleads.v7.services.GoogleAdsService.Search", + "shortName": "CreateIngressRule", + "fullName": "google.appengine.v1.Firewall.CreateIngressRule", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/googleAds:search" + "path": "/v1/{parent=apps/*}/firewall/ingressRules" } ] }, { - "shortName": "SearchStream", - "fullName": "google.ads.googleads.v7.services.GoogleAdsService.SearchStream", - "mode": "SERVER_STREAMING", + "shortName": "DeleteIngressRule", + "fullName": "google.appengine.v1.Firewall.DeleteIngressRule", + "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/googleAds:searchStream" + "httpMethod": "DELETE", + "path": "/v1/{name=apps/*/firewall/ingressRules/*}" } ] - } - ] - }, - { - "shortName": "GroupPlacementViewService", - "fullName": "google.ads.googleads.v7.services.GroupPlacementViewService", - "methods": [ + }, { - "shortName": "GetGroupPlacementView", - "fullName": "google.ads.googleads.v7.services.GroupPlacementViewService.GetGroupPlacementView", + "shortName": "GetIngressRule", + "fullName": "google.appengine.v1.Firewall.GetIngressRule", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/groupPlacementViews/*}" + "path": "/v1/{name=apps/*/firewall/ingressRules/*}" } ] - } - ] - }, - { - "shortName": "HotelGroupViewService", - "fullName": "google.ads.googleads.v7.services.HotelGroupViewService", - "methods": [ + }, { - "shortName": "GetHotelGroupView", - "fullName": "google.ads.googleads.v7.services.HotelGroupViewService.GetHotelGroupView", + "shortName": "ListIngressRules", + "fullName": "google.appengine.v1.Firewall.ListIngressRules", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/hotelGroupViews/*}" + "path": "/v1/{parent=apps/*}/firewall/ingressRules" } ] - } - ] - }, - { - "shortName": "HotelPerformanceViewService", - "fullName": "google.ads.googleads.v7.services.HotelPerformanceViewService", - "methods": [ + }, { - "shortName": "GetHotelPerformanceView", - "fullName": "google.ads.googleads.v7.services.HotelPerformanceViewService.GetHotelPerformanceView", + "shortName": "UpdateIngressRule", + "fullName": "google.appengine.v1.Firewall.UpdateIngressRule", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/hotelPerformanceView}" + "httpMethod": "PATCH", + "path": "/v1/{name=apps/*/firewall/ingressRules/*}" } ] } ] }, { - "shortName": "IncomeRangeViewService", - "fullName": "google.ads.googleads.v7.services.IncomeRangeViewService", + "shortName": "Instances", + "fullName": "google.appengine.v1.Instances", "methods": [ { - "shortName": "GetIncomeRangeView", - "fullName": "google.ads.googleads.v7.services.IncomeRangeViewService.GetIncomeRangeView", + "shortName": "DebugInstance", + "fullName": "google.appengine.v1.Instances.DebugInstance", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=apps/*/services/*/versions/*/instances/*}:debug" + } + ] + }, + { + "shortName": "DeleteInstance", + "fullName": "google.appengine.v1.Instances.DeleteInstance", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=apps/*/services/*/versions/*/instances/*}" + } + ] + }, + { + "shortName": "GetInstance", + "fullName": "google.appengine.v1.Instances.GetInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/incomeRangeViews/*}" + "path": "/v1/{name=apps/*/services/*/versions/*/instances/*}" } ] - } - ] - }, - { - "shortName": "InvoiceService", - "fullName": "google.ads.googleads.v7.services.InvoiceService", - "methods": [ + }, { - "shortName": "ListInvoices", - "fullName": "google.ads.googleads.v7.services.InvoiceService.ListInvoices", + "shortName": "ListInstances", + "fullName": "google.appengine.v1.Instances.ListInstances", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/customers/{customer_id=*}/invoices" + "path": "/v1/{parent=apps/*/services/*/versions/*}/instances" } ] } ] }, { - "shortName": "KeywordPlanAdGroupKeywordService", - "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupKeywordService", + "shortName": "Services", + "fullName": "google.appengine.v1.Services", "methods": [ { - "shortName": "GetKeywordPlanAdGroupKeyword", - "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword", + "shortName": "DeleteService", + "fullName": "google.appengine.v1.Services.DeleteService", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=apps/*/services/*}" } ] }, { - "shortName": "MutateKeywordPlanAdGroupKeywords", - "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords", + "shortName": "GetService", + "fullName": "google.appengine.v1.Services.GetService", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" + "httpMethod": "GET", + "path": "/v1/{name=apps/*/services/*}" } ] - } - ] - }, - { - "shortName": "KeywordPlanAdGroupService", - "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupService", - "methods": [ + }, { - "shortName": "GetKeywordPlanAdGroup", - "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup", + "shortName": "ListServices", + "fullName": "google.appengine.v1.Services.ListServices", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/keywordPlanAdGroups/*}" + "path": "/v1/{parent=apps/*}/services" } ] }, { - "shortName": "MutateKeywordPlanAdGroups", - "fullName": "google.ads.googleads.v7.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups", + "shortName": "UpdateService", + "fullName": "google.appengine.v1.Services.UpdateService", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/keywordPlanAdGroups:mutate" + "httpMethod": "PATCH", + "path": "/v1/{name=apps/*/services/*}" } ] } ] }, { - "shortName": "KeywordPlanCampaignKeywordService", - "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignKeywordService", + "shortName": "Versions", + "fullName": "google.appengine.v1.Versions", "methods": [ { - "shortName": "GetKeywordPlanCampaignKeyword", - "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword", + "shortName": "CreateVersion", + "fullName": "google.appengine.v1.Versions.CreateVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" + "httpMethod": "POST", + "path": "/v1/{parent=apps/*/services/*}/versions" } ] }, { - "shortName": "MutateKeywordPlanCampaignKeywords", - "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords", + "shortName": "DeleteVersion", + "fullName": "google.appengine.v1.Versions.DeleteVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" + "httpMethod": "DELETE", + "path": "/v1/{name=apps/*/services/*/versions/*}" } ] - } - ] - }, - { - "shortName": "KeywordPlanCampaignService", - "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignService", - "methods": [ + }, { - "shortName": "GetKeywordPlanCampaign", - "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignService.GetKeywordPlanCampaign", + "shortName": "GetVersion", + "fullName": "google.appengine.v1.Versions.GetVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/keywordPlanCampaigns/*}" + "path": "/v1/{name=apps/*/services/*/versions/*}" } ] }, { - "shortName": "MutateKeywordPlanCampaigns", - "fullName": "google.ads.googleads.v7.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns", + "shortName": "ListVersions", + "fullName": "google.appengine.v1.Versions.ListVersions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/keywordPlanCampaigns:mutate" + "httpMethod": "GET", + "path": "/v1/{parent=apps/*/services/*}/versions" } ] - } - ] - }, - { - "shortName": "KeywordPlanIdeaService", - "fullName": "google.ads.googleads.v7.services.KeywordPlanIdeaService", - "methods": [ + }, { - "shortName": "GenerateKeywordIdeas", - "fullName": "google.ads.googleads.v7.services.KeywordPlanIdeaService.GenerateKeywordIdeas", + "shortName": "UpdateVersion", + "fullName": "google.appengine.v1.Versions.UpdateVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}:generateKeywordIdeas" + "httpMethod": "PATCH", + "path": "/v1/{name=apps/*/services/*/versions/*}" } ] } ] + } + ], + "configFile": "appengine_v1.yaml" + }, + { + "id": "google.apps.alertcenter.v1beta1", + "directory": "google/apps/alertcenter/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "alertcenter.googleapis.com", + "title": "Google Workspace Alert Center API", + "description": "Manages alerts on issues affecting your domain.", + "importDirectories": [ + "google/api", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Apps.AlertCenter.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/apps/alertcenter/v1beta1;alertcenter": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.apps.alertcenter.v1beta1": 1 + } + }, + "objc_class_prefix": { + "valueCounts": { + "GAIC": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Apps\\AlertCenter\\V1beta1": 1 + } }, + "ruby_package": { + "valueCounts": { + "Google::Apps::AlertCenter::V1beta1": 1 + } + } + }, + "services": [ { - "shortName": "KeywordPlanService", - "fullName": "google.ads.googleads.v7.services.KeywordPlanService", + "shortName": "AlertCenterService", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService", "methods": [ { - "shortName": "GenerateForecastCurve", - "fullName": "google.ads.googleads.v7.services.KeywordPlanService.GenerateForecastCurve", + "shortName": "BatchDeleteAlerts", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.BatchDeleteAlerts", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" + "path": "/v1beta1/alerts:batchDelete" } ] }, { - "shortName": "GenerateForecastMetrics", - "fullName": "google.ads.googleads.v7.services.KeywordPlanService.GenerateForecastMetrics", + "shortName": "BatchUndeleteAlerts", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.BatchUndeleteAlerts", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" + "path": "/v1beta1/alerts:batchUndelete" } ] }, { - "shortName": "GenerateForecastTimeSeries", - "fullName": "google.ads.googleads.v7.services.KeywordPlanService.GenerateForecastTimeSeries", + "shortName": "CreateAlertFeedback", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.CreateAlertFeedback", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/{keyword_plan=customers/*/keywordPlans/*}:generateForecastTimeSeries" + "path": "/v1beta1/alerts/{alert_id}/feedback" } ] }, { - "shortName": "GenerateHistoricalMetrics", - "fullName": "google.ads.googleads.v7.services.KeywordPlanService.GenerateHistoricalMetrics", + "shortName": "DeleteAlert", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.DeleteAlert", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" + "httpMethod": "DELETE", + "path": "/v1beta1/alerts/{alert_id}" } ] }, { - "shortName": "GetKeywordPlan", - "fullName": "google.ads.googleads.v7.services.KeywordPlanService.GetKeywordPlan", + "shortName": "GetAlert", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.GetAlert", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/keywordPlans/*}" + "path": "/v1beta1/alerts/{alert_id}" } ] }, { - "shortName": "MutateKeywordPlans", - "fullName": "google.ads.googleads.v7.services.KeywordPlanService.MutateKeywordPlans", + "shortName": "GetAlertMetadata", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.GetAlertMetadata", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/keywordPlans:mutate" + "httpMethod": "GET", + "path": "/v1beta1/alerts/{alert_id}/metadata" } ] - } - ] - }, - { - "shortName": "KeywordViewService", - "fullName": "google.ads.googleads.v7.services.KeywordViewService", - "methods": [ + }, { - "shortName": "GetKeywordView", - "fullName": "google.ads.googleads.v7.services.KeywordViewService.GetKeywordView", + "shortName": "GetSettings", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.GetSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/keywordViews/*}" + "path": "/v1beta1/settings" } ] - } - ] - }, - { - "shortName": "LabelService", - "fullName": "google.ads.googleads.v7.services.LabelService", - "methods": [ + }, { - "shortName": "GetLabel", - "fullName": "google.ads.googleads.v7.services.LabelService.GetLabel", + "shortName": "ListAlertFeedback", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.ListAlertFeedback", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/labels/*}" + "path": "/v1beta1/alerts/{alert_id}/feedback" } ] }, { - "shortName": "MutateLabels", - "fullName": "google.ads.googleads.v7.services.LabelService.MutateLabels", + "shortName": "ListAlerts", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.ListAlerts", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/labels:mutate" + "httpMethod": "GET", + "path": "/v1beta1/alerts" } ] - } - ] - }, - { - "shortName": "LandingPageViewService", - "fullName": "google.ads.googleads.v7.services.LandingPageViewService", - "methods": [ + }, { - "shortName": "GetLandingPageView", - "fullName": "google.ads.googleads.v7.services.LandingPageViewService.GetLandingPageView", + "shortName": "UndeleteAlert", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.UndeleteAlert", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/landingPageViews/*}" + "httpMethod": "POST", + "path": "/v1beta1/alerts/{alert_id}:undelete" } ] - } - ] - }, - { - "shortName": "LanguageConstantService", - "fullName": "google.ads.googleads.v7.services.LanguageConstantService", - "methods": [ + }, { - "shortName": "GetLanguageConstant", - "fullName": "google.ads.googleads.v7.services.LanguageConstantService.GetLanguageConstant", + "shortName": "UpdateSettings", + "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.UpdateSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=languageConstants/*}" + "httpMethod": "PATCH", + "path": "/v1beta1/settings" } ] } ] + } + ], + "configFile": "alertcenter.yaml" + }, + { + "id": "google.apps.drive.activity.v2", + "directory": "google/apps/drive/activity/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "driveactivity.googleapis.com", + "title": "Drive Activity API", + "description": "Provides a historical view of activity in Google Drive.", + "importDirectories": [ + "google/api", + "google/apps/drive/activity/v2", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Apps.Drive.Activity.V2": 7 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/apps/drive/activity/v2;activity": 7 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 7 + } + }, + "java_package": { + "valueCounts": { + "com.google.apps.drive.activity.v2": 7 + } + }, + "objc_class_prefix": { + "valueCounts": { + "GADA": 7 + } }, + "php_namespace": { + "valueCounts": { + "Google\\Apps\\Drive\\Activity\\V2": 7 + } + } + }, + "services": [ { - "shortName": "LifeEventService", - "fullName": "google.ads.googleads.v7.services.LifeEventService", + "shortName": "DriveActivityService", + "fullName": "google.apps.drive.activity.v2.DriveActivityService", "methods": [ { - "shortName": "GetLifeEvent", - "fullName": "google.ads.googleads.v7.services.LifeEventService.GetLifeEvent", + "shortName": "QueryDriveActivity", + "fullName": "google.apps.drive.activity.v2.DriveActivityService.QueryDriveActivity", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/lifeEvents/*}" + "httpMethod": "POST", + "path": "/v2/activity:query" } ] } ] + } + ], + "configFile": "driveactivity_v2.yaml" + }, + { + "id": "google.apps.market.v2", + "directory": "google/apps/market/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "appsmarket.googleapis.com", + "title": "Google Workspace Marketplace API", + "description": "Lets your Google Workspace Marketplace applications integrate with Google's licensing and billing services.", + "importDirectories": [ + "google/api", + "google/apps/market/v2" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/ccc/hosted/marketplace/v2;marketplace": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } }, + "java_package": { + "valueCounts": { + "com.google.ccc.hosted.marketplace.v2": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Apps\\Market\\V2": 2 + } + } + }, + "services": [ { - "shortName": "LocationViewService", - "fullName": "google.ads.googleads.v7.services.LocationViewService", + "shortName": "CustomerLicenseService", + "fullName": "ccc.hosted.marketplace.v2.CustomerLicenseService", "methods": [ { - "shortName": "GetLocationView", - "fullName": "google.ads.googleads.v7.services.LocationViewService.GetLocationView", + "shortName": "Get", + "fullName": "ccc.hosted.marketplace.v2.CustomerLicenseService.Get", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/locationViews/*}" + "path": "/appsmarket/v2/customerLicense/{application_id}/{customer_id}" } ] } ] }, { - "shortName": "ManagedPlacementViewService", - "fullName": "google.ads.googleads.v7.services.ManagedPlacementViewService", + "shortName": "LicenseNotificationService", + "fullName": "ccc.hosted.marketplace.v2.LicenseNotificationService", "methods": [ { - "shortName": "GetManagedPlacementView", - "fullName": "google.ads.googleads.v7.services.ManagedPlacementViewService.GetManagedPlacementView", + "shortName": "List", + "fullName": "ccc.hosted.marketplace.v2.LicenseNotificationService.List", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/managedPlacementViews/*}" + "path": "/appsmarket/v2/licenseNotification/{application_id}" } ] } ] }, { - "shortName": "MediaFileService", - "fullName": "google.ads.googleads.v7.services.MediaFileService", + "shortName": "UserLicenseService", + "fullName": "ccc.hosted.marketplace.v2.UserLicenseService", "methods": [ { - "shortName": "GetMediaFile", - "fullName": "google.ads.googleads.v7.services.MediaFileService.GetMediaFile", + "shortName": "Get", + "fullName": "ccc.hosted.marketplace.v2.UserLicenseService.Get", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/mediaFiles/*}" - } - ] - }, - { - "shortName": "MutateMediaFiles", - "fullName": "google.ads.googleads.v7.services.MediaFileService.MutateMediaFiles", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/mediaFiles:mutate" + "path": "/appsmarket/v2/userLicense/{application_id}/{user_id}" } ] } ] + } + ], + "configFile": "appsmarket_v2.yaml" + }, + { + "id": "google.area120.tables.v1alpha1", + "directory": "google/area120/tables/v1alpha1", + "version": "v1alpha1", + "majorVersion": "v1", + "hostName": "area120tables.googleapis.com", + "title": "Area120 Tables API", + "description": "", + "importDirectories": [ + "google/api", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/area120/tables/v1alpha1;tables": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } }, + "java_package": { + "valueCounts": { + "com.google.area120.tables.v1alpha1": 1 + } + } + }, + "services": [ { - "shortName": "MerchantCenterLinkService", - "fullName": "google.ads.googleads.v7.services.MerchantCenterLinkService", + "shortName": "TablesService", + "fullName": "google.area120.tables.v1alpha1.TablesService", "methods": [ { - "shortName": "GetMerchantCenterLink", - "fullName": "google.ads.googleads.v7.services.MerchantCenterLinkService.GetMerchantCenterLink", + "shortName": "BatchCreateRows", + "fullName": "google.area120.tables.v1alpha1.TablesService.BatchCreateRows", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/merchantCenterLinks/*}" + "httpMethod": "POST", + "path": "/v1alpha1/{parent=tables/*}/rows:batchCreate" } ] }, { - "shortName": "ListMerchantCenterLinks", - "fullName": "google.ads.googleads.v7.services.MerchantCenterLinkService.ListMerchantCenterLinks", + "shortName": "BatchDeleteRows", + "fullName": "google.area120.tables.v1alpha1.TablesService.BatchDeleteRows", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/customers/{customer_id=*}/merchantCenterLinks" + "httpMethod": "POST", + "path": "/v1alpha1/{parent=tables/*}/rows:batchDelete" } ] }, { - "shortName": "MutateMerchantCenterLink", - "fullName": "google.ads.googleads.v7.services.MerchantCenterLinkService.MutateMerchantCenterLink", + "shortName": "BatchUpdateRows", + "fullName": "google.area120.tables.v1alpha1.TablesService.BatchUpdateRows", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/merchantCenterLinks:mutate" + "path": "/v1alpha1/{parent=tables/*}/rows:batchUpdate" } ] - } - ] - }, - { - "shortName": "MobileAppCategoryConstantService", - "fullName": "google.ads.googleads.v7.services.MobileAppCategoryConstantService", - "methods": [ + }, { - "shortName": "GetMobileAppCategoryConstant", - "fullName": "google.ads.googleads.v7.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant", + "shortName": "CreateRow", + "fullName": "google.area120.tables.v1alpha1.TablesService.CreateRow", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=mobileAppCategoryConstants/*}" + "httpMethod": "POST", + "path": "/v1alpha1/{parent=tables/*}/rows" } ] - } - ] - }, - { - "shortName": "MobileDeviceConstantService", - "fullName": "google.ads.googleads.v7.services.MobileDeviceConstantService", - "methods": [ + }, { - "shortName": "GetMobileDeviceConstant", - "fullName": "google.ads.googleads.v7.services.MobileDeviceConstantService.GetMobileDeviceConstant", + "shortName": "DeleteRow", + "fullName": "google.area120.tables.v1alpha1.TablesService.DeleteRow", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=mobileDeviceConstants/*}" + "httpMethod": "DELETE", + "path": "/v1alpha1/{name=tables/*/rows/*}" } ] - } - ] - }, - { - "shortName": "OfflineUserDataJobService", - "fullName": "google.ads.googleads.v7.services.OfflineUserDataJobService", - "methods": [ + }, { - "shortName": "AddOfflineUserDataJobOperations", - "fullName": "google.ads.googleads.v7.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations", + "shortName": "GetRow", + "fullName": "google.area120.tables.v1alpha1.TablesService.GetRow", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" + "httpMethod": "GET", + "path": "/v1alpha1/{name=tables/*/rows/*}" } ] }, { - "shortName": "CreateOfflineUserDataJob", - "fullName": "google.ads.googleads.v7.services.OfflineUserDataJobService.CreateOfflineUserDataJob", + "shortName": "GetTable", + "fullName": "google.area120.tables.v1alpha1.TablesService.GetTable", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/offlineUserDataJobs:create" + "httpMethod": "GET", + "path": "/v1alpha1/{name=tables/*}" } ] }, { - "shortName": "GetOfflineUserDataJob", - "fullName": "google.ads.googleads.v7.services.OfflineUserDataJobService.GetOfflineUserDataJob", + "shortName": "GetWorkspace", + "fullName": "google.area120.tables.v1alpha1.TablesService.GetWorkspace", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/offlineUserDataJobs/*}" + "path": "/v1alpha1/{name=workspaces/*}" } ] }, { - "shortName": "RunOfflineUserDataJob", - "fullName": "google.ads.googleads.v7.services.OfflineUserDataJobService.RunOfflineUserDataJob", + "shortName": "ListRows", + "fullName": "google.area120.tables.v1alpha1.TablesService.ListRows", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/{resource_name=customers/*/offlineUserDataJobs/*}:run" + "httpMethod": "GET", + "path": "/v1alpha1/{parent=tables/*}/rows" } ] - } - ] - }, - { - "shortName": "OperatingSystemVersionConstantService", - "fullName": "google.ads.googleads.v7.services.OperatingSystemVersionConstantService", - "methods": [ + }, { - "shortName": "GetOperatingSystemVersionConstant", - "fullName": "google.ads.googleads.v7.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant", + "shortName": "ListTables", + "fullName": "google.area120.tables.v1alpha1.TablesService.ListTables", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=operatingSystemVersionConstants/*}" + "path": "/v1alpha1/tables" } ] - } - ] - }, - { - "shortName": "PaidOrganicSearchTermViewService", - "fullName": "google.ads.googleads.v7.services.PaidOrganicSearchTermViewService", - "methods": [ + }, { - "shortName": "GetPaidOrganicSearchTermView", - "fullName": "google.ads.googleads.v7.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView", + "shortName": "ListWorkspaces", + "fullName": "google.area120.tables.v1alpha1.TablesService.ListWorkspaces", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/paidOrganicSearchTermViews/*}" + "path": "/v1alpha1/workspaces" } ] - } - ] - }, - { - "shortName": "ParentalStatusViewService", - "fullName": "google.ads.googleads.v7.services.ParentalStatusViewService", - "methods": [ + }, { - "shortName": "GetParentalStatusView", - "fullName": "google.ads.googleads.v7.services.ParentalStatusViewService.GetParentalStatusView", + "shortName": "UpdateRow", + "fullName": "google.area120.tables.v1alpha1.TablesService.UpdateRow", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/parentalStatusViews/*}" + "httpMethod": "PATCH", + "path": "/v1alpha1/{row.name=tables/*/rows/*}" } ] } ] + } + ], + "configFile": "area120tables_v1alpha1.yaml" + }, + { + "id": "google.bigtable.admin.v2", + "directory": "google/bigtable/admin/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "bigtableadmin.googleapis.com", + "title": "Cloud Bigtable Admin API", + "description": "Administer your Cloud Bigtable tables and instances.", + "importDirectories": [ + "google/api", + "google/bigtable/admin/v2", + "google/iam/v1", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Bigtable.Admin.V2": 5 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/bigtable/admin/v2;admin": 5 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 5 + } + }, + "java_package": { + "valueCounts": { + "com.google.bigtable.admin.v2": 5 + } }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Bigtable\\Admin\\V2": 5 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Bigtable::Admin::V2": 5 + } + } + }, + "services": [ { - "shortName": "PaymentsAccountService", - "fullName": "google.ads.googleads.v7.services.PaymentsAccountService", + "shortName": "BigtableInstanceAdmin", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin", "methods": [ { - "shortName": "ListPaymentsAccounts", - "fullName": "google.ads.googleads.v7.services.PaymentsAccountService.ListPaymentsAccounts", + "shortName": "CreateAppProfile", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.CreateAppProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/customers/{customer_id=*}/paymentsAccounts" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/instances/*}/appProfiles" } ] - } - ] - }, - { - "shortName": "ProductBiddingCategoryConstantService", - "fullName": "google.ads.googleads.v7.services.ProductBiddingCategoryConstantService", - "methods": [ + }, { - "shortName": "GetProductBiddingCategoryConstant", - "fullName": "google.ads.googleads.v7.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant", + "shortName": "CreateCluster", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.CreateCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=productBiddingCategoryConstants/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/instances/*}/clusters" } ] - } - ] - }, - { - "shortName": "ProductGroupViewService", - "fullName": "google.ads.googleads.v7.services.ProductGroupViewService", - "methods": [ + }, { - "shortName": "GetProductGroupView", - "fullName": "google.ads.googleads.v7.services.ProductGroupViewService.GetProductGroupView", + "shortName": "CreateInstance", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.CreateInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/productGroupViews/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*}/instances" } ] - } - ] - }, - { - "shortName": "ReachPlanService", - "fullName": "google.ads.googleads.v7.services.ReachPlanService", - "methods": [ + }, { - "shortName": "GenerateProductMixIdeas", - "fullName": "google.ads.googleads.v7.services.ReachPlanService.GenerateProductMixIdeas", + "shortName": "DeleteAppProfile", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.DeleteAppProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}:generateProductMixIdeas" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/instances/*/appProfiles/*}" } ] }, { - "shortName": "GenerateReachForecast", - "fullName": "google.ads.googleads.v7.services.ReachPlanService.GenerateReachForecast", + "shortName": "DeleteCluster", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.DeleteCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}:generateReachForecast" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/instances/*/clusters/*}" } ] }, { - "shortName": "ListPlannableLocations", - "fullName": "google.ads.googleads.v7.services.ReachPlanService.ListPlannableLocations", + "shortName": "DeleteInstance", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.DeleteInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7:listPlannableLocations" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/instances/*}" } ] }, { - "shortName": "ListPlannableProducts", - "fullName": "google.ads.googleads.v7.services.ReachPlanService.ListPlannableProducts", + "shortName": "GetAppProfile", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.GetAppProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7:listPlannableProducts" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/instances/*/appProfiles/*}" } ] - } - ] - }, - { - "shortName": "RecommendationService", - "fullName": "google.ads.googleads.v7.services.RecommendationService", - "methods": [ + }, { - "shortName": "ApplyRecommendation", - "fullName": "google.ads.googleads.v7.services.RecommendationService.ApplyRecommendation", + "shortName": "GetCluster", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.GetCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/recommendations:apply" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/instances/*/clusters/*}" } ] }, { - "shortName": "DismissRecommendation", - "fullName": "google.ads.googleads.v7.services.RecommendationService.DismissRecommendation", + "shortName": "GetIamPolicy", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/recommendations:dismiss" + "path": "/v2/{resource=projects/*/instances/*}:getIamPolicy" } ] }, { - "shortName": "GetRecommendation", - "fullName": "google.ads.googleads.v7.services.RecommendationService.GetRecommendation", + "shortName": "GetInstance", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.GetInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/recommendations/*}" + "path": "/v2/{name=projects/*/instances/*}" } ] - } - ] - }, - { - "shortName": "RemarketingActionService", - "fullName": "google.ads.googleads.v7.services.RemarketingActionService", - "methods": [ + }, { - "shortName": "GetRemarketingAction", - "fullName": "google.ads.googleads.v7.services.RemarketingActionService.GetRemarketingAction", + "shortName": "ListAppProfiles", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.ListAppProfiles", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/remarketingActions/*}" + "path": "/v2/{parent=projects/*/instances/*}/appProfiles" } ] }, { - "shortName": "MutateRemarketingActions", - "fullName": "google.ads.googleads.v7.services.RemarketingActionService.MutateRemarketingActions", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/remarketingActions:mutate" - } - ] - } - ] - }, - { - "shortName": "SearchTermViewService", - "fullName": "google.ads.googleads.v7.services.SearchTermViewService", - "methods": [ - { - "shortName": "GetSearchTermView", - "fullName": "google.ads.googleads.v7.services.SearchTermViewService.GetSearchTermView", + "shortName": "ListClusters", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.ListClusters", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/searchTermViews/*}" + "path": "/v2/{parent=projects/*/instances/*}/clusters" } ] - } - ] - }, - { - "shortName": "SharedCriterionService", - "fullName": "google.ads.googleads.v7.services.SharedCriterionService", - "methods": [ + }, { - "shortName": "GetSharedCriterion", - "fullName": "google.ads.googleads.v7.services.SharedCriterionService.GetSharedCriterion", + "shortName": "ListInstances", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.ListInstances", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/sharedCriteria/*}" + "path": "/v2/{parent=projects/*}/instances" } ] }, { - "shortName": "MutateSharedCriteria", - "fullName": "google.ads.googleads.v7.services.SharedCriterionService.MutateSharedCriteria", + "shortName": "PartialUpdateCluster", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.PartialUpdateCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/sharedCriteria:mutate" + "httpMethod": "PATCH", + "path": "/v2/{cluster.name=projects/*/instances/*/clusters/*}" } ] - } - ] - }, - { - "shortName": "SharedSetService", - "fullName": "google.ads.googleads.v7.services.SharedSetService", - "methods": [ + }, { - "shortName": "GetSharedSet", - "fullName": "google.ads.googleads.v7.services.SharedSetService.GetSharedSet", + "shortName": "PartialUpdateInstance", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.PartialUpdateInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/sharedSets/*}" + "httpMethod": "PATCH", + "path": "/v2/{instance.name=projects/*/instances/*}" } ] }, { - "shortName": "MutateSharedSets", - "fullName": "google.ads.googleads.v7.services.SharedSetService.MutateSharedSets", + "shortName": "SetIamPolicy", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/sharedSets:mutate" - } - ] - } - ] - }, - { - "shortName": "ShoppingPerformanceViewService", - "fullName": "google.ads.googleads.v7.services.ShoppingPerformanceViewService", - "methods": [ - { - "shortName": "GetShoppingPerformanceView", - "fullName": "google.ads.googleads.v7.services.ShoppingPerformanceViewService.GetShoppingPerformanceView", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/shoppingPerformanceView}" - } - ] - } - ] - }, - { - "shortName": "ThirdPartyAppAnalyticsLinkService", - "fullName": "google.ads.googleads.v7.services.ThirdPartyAppAnalyticsLinkService", - "methods": [ - { - "shortName": "GetThirdPartyAppAnalyticsLink", - "fullName": "google.ads.googleads.v7.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" + "path": "/v2/{resource=projects/*/instances/*}:setIamPolicy" } ] }, { - "shortName": "RegenerateShareableLinkId", - "fullName": "google.ads.googleads.v7.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId", + "shortName": "TestIamPermissions", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.TestIamPermissions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}:regenerateShareableLinkId" + "path": "/v2/{resource=projects/*/instances/*}:testIamPermissions" } ] - } - ] - }, - { - "shortName": "TopicConstantService", - "fullName": "google.ads.googleads.v7.services.TopicConstantService", - "methods": [ + }, { - "shortName": "GetTopicConstant", - "fullName": "google.ads.googleads.v7.services.TopicConstantService.GetTopicConstant", + "shortName": "UpdateAppProfile", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.UpdateAppProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=topicConstants/*}" + "httpMethod": "PATCH", + "path": "/v2/{app_profile.name=projects/*/instances/*/appProfiles/*}" } ] - } - ] - }, - { - "shortName": "TopicViewService", - "fullName": "google.ads.googleads.v7.services.TopicViewService", - "methods": [ + }, { - "shortName": "GetTopicView", - "fullName": "google.ads.googleads.v7.services.TopicViewService.GetTopicView", + "shortName": "UpdateCluster", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.UpdateCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/topicViews/*}" + "httpMethod": "PUT", + "path": "/v2/{name=projects/*/instances/*/clusters/*}" } ] - } - ] - }, - { - "shortName": "UserDataService", - "fullName": "google.ads.googleads.v7.services.UserDataService", - "methods": [ + }, { - "shortName": "UploadUserData", - "fullName": "google.ads.googleads.v7.services.UserDataService.UploadUserData", + "shortName": "UpdateInstance", + "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.UpdateInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}:uploadUserData" + "httpMethod": "PUT", + "path": "/v2/{name=projects/*/instances/*}" } ] } ] }, { - "shortName": "UserInterestService", - "fullName": "google.ads.googleads.v7.services.UserInterestService", + "shortName": "BigtableTableAdmin", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin", "methods": [ { - "shortName": "GetUserInterest", - "fullName": "google.ads.googleads.v7.services.UserInterestService.GetUserInterest", + "shortName": "CheckConsistency", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.CheckConsistency", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/userInterests/*}" + "httpMethod": "POST", + "path": "/v2/{name=projects/*/instances/*/tables/*}:checkConsistency" } ] - } - ] - }, - { - "shortName": "UserListService", - "fullName": "google.ads.googleads.v7.services.UserListService", - "methods": [ + }, { - "shortName": "GetUserList", - "fullName": "google.ads.googleads.v7.services.UserListService.GetUserList", + "shortName": "CreateBackup", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.CreateBackup", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/userLists/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/instances/*/clusters/*}/backups" } ] }, { - "shortName": "MutateUserLists", - "fullName": "google.ads.googleads.v7.services.UserListService.MutateUserLists", + "shortName": "CreateTable", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.CreateTable", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v7/customers/{customer_id=*}/userLists:mutate" + "path": "/v2/{parent=projects/*/instances/*}/tables" } ] - } - ] - }, - { - "shortName": "UserLocationViewService", - "fullName": "google.ads.googleads.v7.services.UserLocationViewService", - "methods": [ + }, { - "shortName": "GetUserLocationView", - "fullName": "google.ads.googleads.v7.services.UserLocationViewService.GetUserLocationView", + "shortName": "CreateTableFromSnapshot", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.CreateTableFromSnapshot", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/userLocationViews/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/instances/*}/tables:createFromSnapshot" } ] - } - ] - }, - { - "shortName": "VideoService", - "fullName": "google.ads.googleads.v7.services.VideoService", - "methods": [ + }, { - "shortName": "GetVideo", - "fullName": "google.ads.googleads.v7.services.VideoService.GetVideo", + "shortName": "DeleteBackup", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.DeleteBackup", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/videos/*}" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/instances/*/clusters/*/backups/*}" } ] - } - ] - }, - { - "shortName": "WebpageViewService", - "fullName": "google.ads.googleads.v7.services.WebpageViewService", - "methods": [ + }, { - "shortName": "GetWebpageView", - "fullName": "google.ads.googleads.v7.services.WebpageViewService.GetWebpageView", + "shortName": "DeleteSnapshot", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.DeleteSnapshot", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v7/{resource_name=customers/*/webpageViews/*}" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/instances/*/clusters/*/snapshots/*}" } ] - } - ] - } - ] - }, - { - "id": "google.analytics.admin.v1alpha", - "directory": "google/analytics/admin/v1alpha", - "version": "v1alpha", - "majorVersion": "v1", - "hostName": "analyticsadmin.googleapis.com", - "title": "Google Analytics Admin API", - "description": "", - "importDirectories": [ - "google/analytics/admin/v1alpha", - "google/api", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.analytics.admin.v1alpha": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/analytics/admin/v1alpha;admin": 2 - } - } - }, - "services": [ - { - "shortName": "AnalyticsAdminService", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService", - "methods": [ + }, { - "shortName": "ArchiveCustomDimension", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ArchiveCustomDimension", + "shortName": "DeleteTable", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.DeleteTable", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha/{name=properties/*/customDimensions/*}:archive" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/instances/*/tables/*}" } ] }, { - "shortName": "ArchiveCustomMetric", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ArchiveCustomMetric", + "shortName": "DropRowRange", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.DropRowRange", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{name=properties/*/customMetrics/*}:archive" + "path": "/v2/{name=projects/*/instances/*/tables/*}:dropRowRange" } ] }, { - "shortName": "AuditUserLinks", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.AuditUserLinks", + "shortName": "GenerateConsistencyToken", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.GenerateConsistencyToken", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{parent=accounts/*}/userLinks:audit" - }, - { - "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*}/userLinks:audit" + "path": "/v2/{name=projects/*/instances/*/tables/*}:generateConsistencyToken" } ] }, { - "shortName": "BatchCreateUserLinks", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.BatchCreateUserLinks", + "shortName": "GetBackup", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.GetBackup", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha/{parent=accounts/*}/userLinks:batchCreate" - }, - { - "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*}/userLinks:batchCreate" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/instances/*/clusters/*/backups/*}" } ] }, { - "shortName": "BatchDeleteUserLinks", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.BatchDeleteUserLinks", + "shortName": "GetIamPolicy", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{parent=accounts/*}/userLinks:batchDelete" + "path": "/v2/{resource=projects/*/instances/*/tables/*}:getIamPolicy" }, { "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*}/userLinks:batchDelete" + "path": "/v2/{resource=projects/*/instances/*/clusters/*/backups/*}:getIamPolicy" } ] }, { - "shortName": "BatchGetUserLinks", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.BatchGetUserLinks", + "shortName": "GetSnapshot", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.GetSnapshot", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=accounts/*}/userLinks:batchGet" - }, - { - "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*}/userLinks:batchGet" + "path": "/v2/{name=projects/*/instances/*/clusters/*/snapshots/*}" } ] }, { - "shortName": "BatchUpdateUserLinks", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.BatchUpdateUserLinks", + "shortName": "GetTable", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.GetTable", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha/{parent=accounts/*}/userLinks:batchUpdate" - }, - { - "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*}/userLinks:batchUpdate" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/instances/*/tables/*}" } ] }, { - "shortName": "CreateConversionEvent", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateConversionEvent", + "shortName": "ListBackups", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.ListBackups", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*}/conversionEvents" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/instances/*/clusters/*}/backups" } ] }, { - "shortName": "CreateCustomDimension", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateCustomDimension", + "shortName": "ListSnapshots", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.ListSnapshots", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*}/customDimensions" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/instances/*/clusters/*}/snapshots" } ] }, { - "shortName": "CreateCustomMetric", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateCustomMetric", + "shortName": "ListTables", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.ListTables", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*}/customMetrics" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/instances/*}/tables" } ] }, { - "shortName": "CreateFirebaseLink", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateFirebaseLink", + "shortName": "ModifyColumnFamilies", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.ModifyColumnFamilies", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*}/firebaseLinks" + "path": "/v2/{name=projects/*/instances/*/tables/*}:modifyColumnFamilies" } ] }, { - "shortName": "CreateGoogleAdsLink", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateGoogleAdsLink", + "shortName": "RestoreTable", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.RestoreTable", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*}/googleAdsLinks" + "path": "/v2/{parent=projects/*/instances/*}/tables:restore" } ] }, { - "shortName": "CreateMeasurementProtocolSecret", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateMeasurementProtocolSecret", + "shortName": "SetIamPolicy", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*/webDataStreams/*}/measurementProtocolSecrets" - }, - { - "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*/iosAppDataStreams/*}/measurementProtocolSecrets" + "path": "/v2/{resource=projects/*/instances/*/tables/*}:setIamPolicy" }, { "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*/androidAppDataStreams/*}/measurementProtocolSecrets" + "path": "/v2/{resource=projects/*/instances/*/clusters/*/backups/*}:setIamPolicy" } ] }, { - "shortName": "CreateProperty", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateProperty", + "shortName": "SnapshotTable", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.SnapshotTable", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/properties" + "path": "/v2/{name=projects/*/instances/*/tables/*}:snapshot" } ] }, { - "shortName": "CreateUserLink", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateUserLink", + "shortName": "TestIamPermissions", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.TestIamPermissions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{parent=accounts/*}/userLinks" + "path": "/v2/{resource=projects/*/instances/*/tables/*}:testIamPermissions" }, { "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*}/userLinks" + "path": "/v2/{resource=projects/*/instances/*/clusters/*/backups/*}:testIamPermissions" } ] }, { - "shortName": "CreateWebDataStream", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.CreateWebDataStream", + "shortName": "UpdateBackup", + "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.UpdateBackup", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha/{parent=properties/*}/webDataStreams" + "httpMethod": "PATCH", + "path": "/v2/{backup.name=projects/*/instances/*/clusters/*/backups/*}" } ] - }, + } + ] + } + ], + "configFile": "bigtableadmin_v2.yaml" + }, + { + "id": "google.bigtable.v2", + "directory": "google/bigtable/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "bigtable.googleapis.com", + "title": "Cloud Bigtable API", + "description": "API for reading and writing the contents of Bigtables associated with a cloud project.", + "importDirectories": [ + "google/api", + "google/bigtable/v2", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Bigtable.V2": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/bigtable/v2;bigtable": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.bigtable.v2": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Bigtable\\V2": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Bigtable::V2": 2 + } + } + }, + "services": [ + { + "shortName": "Bigtable", + "fullName": "google.bigtable.v2.Bigtable", + "methods": [ { - "shortName": "DeleteAccount", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteAccount", + "shortName": "CheckAndMutateRow", + "fullName": "google.bigtable.v2.Bigtable.CheckAndMutateRow", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=accounts/*}" + "httpMethod": "POST", + "path": "/v2/{table_name=projects/*/instances/*/tables/*}:checkAndMutateRow" } ] }, { - "shortName": "DeleteAndroidAppDataStream", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteAndroidAppDataStream", + "shortName": "MutateRow", + "fullName": "google.bigtable.v2.Bigtable.MutateRow", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=properties/*/androidAppDataStreams/*}" + "httpMethod": "POST", + "path": "/v2/{table_name=projects/*/instances/*/tables/*}:mutateRow" } ] }, { - "shortName": "DeleteConversionEvent", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteConversionEvent", - "mode": "UNARY", + "shortName": "MutateRows", + "fullName": "google.bigtable.v2.Bigtable.MutateRows", + "mode": "SERVER_STREAMING", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=properties/*/conversionEvents/*}" + "httpMethod": "POST", + "path": "/v2/{table_name=projects/*/instances/*/tables/*}:mutateRows" } ] }, { - "shortName": "DeleteFirebaseLink", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteFirebaseLink", + "shortName": "ReadModifyWriteRow", + "fullName": "google.bigtable.v2.Bigtable.ReadModifyWriteRow", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=properties/*/firebaseLinks/*}" + "httpMethod": "POST", + "path": "/v2/{table_name=projects/*/instances/*/tables/*}:readModifyWriteRow" } ] }, { - "shortName": "DeleteGoogleAdsLink", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteGoogleAdsLink", - "mode": "UNARY", + "shortName": "ReadRows", + "fullName": "google.bigtable.v2.Bigtable.ReadRows", + "mode": "SERVER_STREAMING", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=properties/*/googleAdsLinks/*}" + "httpMethod": "POST", + "path": "/v2/{table_name=projects/*/instances/*/tables/*}:readRows" } ] }, { - "shortName": "DeleteIosAppDataStream", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteIosAppDataStream", - "mode": "UNARY", + "shortName": "SampleRowKeys", + "fullName": "google.bigtable.v2.Bigtable.SampleRowKeys", + "mode": "SERVER_STREAMING", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=properties/*/iosAppDataStreams/*}" + "httpMethod": "GET", + "path": "/v2/{table_name=projects/*/instances/*/tables/*}:sampleRowKeys" } ] - }, + } + ] + } + ], + "configFile": "bigtable_v2.yaml" + }, + { + "id": "google.chromeos.moblab.v1beta1", + "directory": "google/chromeos/moblab/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "chromeosmoblab.googleapis.com", + "title": "Chrome OS Moblab API", + "description": "Moblab API is an external-facing API that Moblabs deployed in remote external labs of Chrome OS partners can communicate with for various testing needs.", + "importDirectories": [ + "google/api", + "google/chromeos/moblab/v1beta1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/chromeos/moblab/v1beta1;moblab": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.chromeos.moblab.v1beta1": 2 + } + } + }, + "services": [ + { + "shortName": "BuildService", + "fullName": "google.chromeos.moblab.v1beta1.BuildService", + "methods": [ { - "shortName": "DeleteMeasurementProtocolSecret", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteMeasurementProtocolSecret", + "shortName": "CheckBuildStageStatus", + "fullName": "google.chromeos.moblab.v1beta1.BuildService.CheckBuildStageStatus", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=properties/*/webDataStreams/*/measurementProtocolSecrets/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=properties/*/iosAppDataStreams/*/measurementProtocolSecrets/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=properties/*/androidAppDataStreams/*/measurementProtocolSecrets/*}" + "httpMethod": "GET", + "path": "/v1beta1/{name=buildTargets/*/models/*/builds/*/artifacts/*}:check" } ] }, { - "shortName": "DeleteProperty", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteProperty", + "shortName": "FindMostStableBuild", + "fullName": "google.chromeos.moblab.v1beta1.BuildService.FindMostStableBuild", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=properties/*}" + "httpMethod": "GET", + "path": "/v1beta1/{build_target=buildTargets/*}:findMostStableBuild" } ] }, { - "shortName": "DeleteUserLink", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteUserLink", + "shortName": "ListBuildTargets", + "fullName": "google.chromeos.moblab.v1beta1.BuildService.ListBuildTargets", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=accounts/*/userLinks/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=properties/*/userLinks/*}" + "httpMethod": "GET", + "path": "/v1beta1/buildTargets" } ] }, { - "shortName": "DeleteWebDataStream", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.DeleteWebDataStream", + "shortName": "ListBuilds", + "fullName": "google.chromeos.moblab.v1beta1.BuildService.ListBuilds", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=properties/*/webDataStreams/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=buildTargets/*/models/*}/builds" } ] }, { - "shortName": "GetAccount", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetAccount", + "shortName": "ListModels", + "fullName": "google.chromeos.moblab.v1beta1.BuildService.ListModels", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{name=accounts/*}" + "path": "/v1beta1/{parent=buildTargets/*}/models" } ] }, { - "shortName": "GetAndroidAppDataStream", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetAndroidAppDataStream", + "shortName": "StageBuild", + "fullName": "google.chromeos.moblab.v1beta1.BuildService.StageBuild", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/androidAppDataStreams/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=buildTargets/*/models/*/builds/*/artifacts/*}:stage" } ] - }, + } + ] + } + ], + "configFile": "chromeosmoblab_v1beta1.yaml" + }, + { + "id": "google.chromeos.uidetection.v1", + "directory": "google/chromeos/uidetection/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "chromeosuidetection.googleapis.com", + "title": "ChromeOS UI Detection API", + "description": "ChromeOS UI Detection API allows image-based UI detection in E2E testing frameworks of ChromeOS. It will be used by ChromeOS labs and ChromeOS partners.", + "importDirectories": [ + "google/api" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/chromeos/uidetection/v1;uidetection": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.chromeos.uidetection.v1": 1 + } + } + }, + "services": [ + { + "shortName": "UiDetectionService", + "fullName": "google.chromeos.uidetection.v1.UiDetectionService", + "methods": [ { - "shortName": "GetConversionEvent", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetConversionEvent", + "shortName": "ExecuteDetection", + "fullName": "google.chromeos.uidetection.v1.UiDetectionService.ExecuteDetection", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/conversionEvents/*}" + "path": "/v1/executeDetection:execute" } ] - }, + } + ] + } + ], + "configFile": "chromeosuidetection_v1.yaml" + }, + { + "id": "google.cloud.accessapproval.v1", + "directory": "google/cloud/accessapproval/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "accessapproval.googleapis.com", + "title": "Access Approval API", + "description": "An API for controlling access to data by Google personnel.", + "importDirectories": [ + "google/api", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.AccessApproval.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/accessapproval/v1;accessapproval": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.accessapproval.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\AccessApproval\\V1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::AccessApproval::V1": 1 + } + } + }, + "services": [ + { + "shortName": "AccessApproval", + "fullName": "google.cloud.accessapproval.v1.AccessApproval", + "methods": [ { - "shortName": "GetCustomDimension", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetCustomDimension", + "shortName": "ApproveApprovalRequest", + "fullName": "google.cloud.accessapproval.v1.AccessApproval.ApproveApprovalRequest", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/customDimensions/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/approvalRequests/*}:approve" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=folders/*/approvalRequests/*}:approve" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=organizations/*/approvalRequests/*}:approve" } ] }, { - "shortName": "GetCustomMetric", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetCustomMetric", + "shortName": "DeleteAccessApprovalSettings", + "fullName": "google.cloud.accessapproval.v1.AccessApproval.DeleteAccessApprovalSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/customMetrics/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/accessApprovalSettings}" + }, + { + "httpMethod": "DELETE", + "path": "/v1/{name=folders/*/accessApprovalSettings}" + }, + { + "httpMethod": "DELETE", + "path": "/v1/{name=organizations/*/accessApprovalSettings}" } ] }, { - "shortName": "GetDataSharingSettings", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetDataSharingSettings", + "shortName": "DismissApprovalRequest", + "fullName": "google.cloud.accessapproval.v1.AccessApproval.DismissApprovalRequest", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{name=accounts/*/dataSharingSettings}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/approvalRequests/*}:dismiss" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=folders/*/approvalRequests/*}:dismiss" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=organizations/*/approvalRequests/*}:dismiss" } ] }, { - "shortName": "GetEnhancedMeasurementSettings", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetEnhancedMeasurementSettings", + "shortName": "GetAccessApprovalSettings", + "fullName": "google.cloud.accessapproval.v1.AccessApproval.GetAccessApprovalSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/webDataStreams/*/enhancedMeasurementSettings}" - } - ] - }, - { - "shortName": "GetGlobalSiteTag", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetGlobalSiteTag", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{name=projects/*/accessApprovalSettings}" + }, { "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/webDataStreams/*/globalSiteTag}" - } - ] - }, - { - "shortName": "GetGoogleSignalsSettings", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetGoogleSignalsSettings", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{name=folders/*/accessApprovalSettings}" + }, { "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/googleSignalsSettings}" + "path": "/v1/{name=organizations/*/accessApprovalSettings}" } ] }, { - "shortName": "GetIosAppDataStream", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetIosAppDataStream", + "shortName": "GetApprovalRequest", + "fullName": "google.cloud.accessapproval.v1.AccessApproval.GetApprovalRequest", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/iosAppDataStreams/*}" + "path": "/v1/{name=projects/*/approvalRequests/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=folders/*/approvalRequests/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=organizations/*/approvalRequests/*}" } ] }, { - "shortName": "GetMeasurementProtocolSecret", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetMeasurementProtocolSecret", + "shortName": "ListApprovalRequests", + "fullName": "google.cloud.accessapproval.v1.AccessApproval.ListApprovalRequests", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/webDataStreams/*/measurementProtocolSecrets/*}" + "path": "/v1/{parent=projects/*}/approvalRequests" }, { "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/iosAppDataStreams/*/measurementProtocolSecrets/*}" + "path": "/v1/{parent=folders/*}/approvalRequests" }, { "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/androidAppDataStreams/*/measurementProtocolSecrets/*}" + "path": "/v1/{parent=organizations/*}/approvalRequests" } ] }, { - "shortName": "GetProperty", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetProperty", + "shortName": "UpdateAccessApprovalSettings", + "fullName": "google.cloud.accessapproval.v1.AccessApproval.UpdateAccessApprovalSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*}" + "httpMethod": "PATCH", + "path": "/v1/{settings.name=projects/*/accessApprovalSettings}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{settings.name=folders/*/accessApprovalSettings}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{settings.name=organizations/*/accessApprovalSettings}" } ] - }, + } + ] + } + ], + "configFile": "accessapproval_v1.yaml" + }, + { + "id": "google.cloud.aiplatform.v1", + "directory": "google/cloud/aiplatform/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "aiplatform.googleapis.com", + "title": "Vertex AI API", + "description": "Train high-quality custom machine learning models with minimal machine learning expertise and effort.", + "importDirectories": [ + "google/api", + "google/cloud/aiplatform/v1", + "google/cloud/aiplatform/v1/schema/trainingjob/definition", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/type" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.AIPlatform.V1": 71, + "Google.Cloud.AIPlatform.V1.Schema.Predict.Instance": 9, + "Google.Cloud.AIPlatform.V1.Schema.Predict.Params": 6, + "Google.Cloud.AIPlatform.V1.Schema.Predict.Prediction": 10, + "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition": 11 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/instance;instance": 9, + "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/params;params": 6, + "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction": 10, + "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition": 11, + "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform": 71 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 107 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.aiplatform.v1": 71, + "com.google.cloud.aiplatform.v1.schema.predict.instance": 9, + "com.google.cloud.aiplatform.v1.schema.predict.params": 6, + "com.google.cloud.aiplatform.v1.schema.predict.prediction": 10, + "com.google.cloud.aiplatform.v1.schema.trainingjob.definition": 11 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\AIPlatform\\V1": 71, + "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Instance": 9, + "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Params": 6, + "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Prediction": 10, + "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition": 11 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::AIPlatform::V1": 71, + "Google::Cloud::AIPlatform::V1::Schema::Predict::Instance": 9, + "Google::Cloud::AIPlatform::V1::Schema::Predict::Params": 6, + "Google::Cloud::AIPlatform::V1::Schema::Predict::Prediction": 10, + "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition": 11 + } + } + }, + "services": [ + { + "shortName": "DatasetService", + "fullName": "google.cloud.aiplatform.v1.DatasetService", + "methods": [ { - "shortName": "GetUserLink", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetUserLink", + "shortName": "CreateDataset", + "fullName": "google.cloud.aiplatform.v1.DatasetService.CreateDataset", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{name=accounts/*/userLinks/*}" - }, - { - "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/userLinks/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/datasets" } ] }, { - "shortName": "GetWebDataStream", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.GetWebDataStream", + "shortName": "DeleteDataset", + "fullName": "google.cloud.aiplatform.v1.DatasetService.DeleteDataset", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/webDataStreams/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/datasets/*}" } ] }, { - "shortName": "ListAccounts", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListAccounts", + "shortName": "ExportData", + "fullName": "google.cloud.aiplatform.v1.DatasetService.ExportData", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/accounts" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/datasets/*}:export" } ] }, { - "shortName": "ListAccountSummaries", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListAccountSummaries", + "shortName": "GetAnnotationSpec", + "fullName": "google.cloud.aiplatform.v1.DatasetService.GetAnnotationSpec", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/accountSummaries" + "path": "/v1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}" } ] }, { - "shortName": "ListAndroidAppDataStreams", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListAndroidAppDataStreams", + "shortName": "GetDataset", + "fullName": "google.cloud.aiplatform.v1.DatasetService.GetDataset", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*}/androidAppDataStreams" + "path": "/v1/{name=projects/*/locations/*/datasets/*}" } ] }, { - "shortName": "ListConversionEvents", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListConversionEvents", + "shortName": "ImportData", + "fullName": "google.cloud.aiplatform.v1.DatasetService.ImportData", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*}/conversionEvents" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/datasets/*}:import" } ] }, { - "shortName": "ListCustomDimensions", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListCustomDimensions", + "shortName": "ListAnnotations", + "fullName": "google.cloud.aiplatform.v1.DatasetService.ListAnnotations", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*}/customDimensions" + "path": "/v1/{parent=projects/*/locations/*/datasets/*/dataItems/*}/annotations" } ] }, { - "shortName": "ListCustomMetrics", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListCustomMetrics", + "shortName": "ListDataItems", + "fullName": "google.cloud.aiplatform.v1.DatasetService.ListDataItems", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*}/customMetrics" + "path": "/v1/{parent=projects/*/locations/*/datasets/*}/dataItems" } ] }, { - "shortName": "ListFirebaseLinks", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListFirebaseLinks", + "shortName": "ListDatasets", + "fullName": "google.cloud.aiplatform.v1.DatasetService.ListDatasets", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*}/firebaseLinks" + "path": "/v1/{parent=projects/*/locations/*}/datasets" } ] }, { - "shortName": "ListGoogleAdsLinks", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListGoogleAdsLinks", + "shortName": "UpdateDataset", + "fullName": "google.cloud.aiplatform.v1.DatasetService.UpdateDataset", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*}/googleAdsLinks" + "httpMethod": "PATCH", + "path": "/v1/{dataset.name=projects/*/locations/*/datasets/*}" } ] - }, + } + ] + }, + { + "shortName": "EndpointService", + "fullName": "google.cloud.aiplatform.v1.EndpointService", + "methods": [ { - "shortName": "ListIosAppDataStreams", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListIosAppDataStreams", + "shortName": "CreateEndpoint", + "fullName": "google.cloud.aiplatform.v1.EndpointService.CreateEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*}/iosAppDataStreams" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/endpoints" } ] }, { - "shortName": "ListMeasurementProtocolSecrets", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListMeasurementProtocolSecrets", + "shortName": "DeleteEndpoint", + "fullName": "google.cloud.aiplatform.v1.EndpointService.DeleteEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*/webDataStreams/*}/measurementProtocolSecrets" - }, - { - "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*/iosAppDataStreams/*}/measurementProtocolSecrets" - }, - { - "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*/androidAppDataStreams/*}/measurementProtocolSecrets" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/endpoints/*}" } ] }, { - "shortName": "ListProperties", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListProperties", + "shortName": "DeployModel", + "fullName": "google.cloud.aiplatform.v1.EndpointService.DeployModel", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/properties" + "httpMethod": "POST", + "path": "/v1/{endpoint=projects/*/locations/*/endpoints/*}:deployModel" } ] }, { - "shortName": "ListUserLinks", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListUserLinks", + "shortName": "GetEndpoint", + "fullName": "google.cloud.aiplatform.v1.EndpointService.GetEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=accounts/*}/userLinks" - }, - { - "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*}/userLinks" + "path": "/v1/{name=projects/*/locations/*/endpoints/*}" } ] }, { - "shortName": "ListWebDataStreams", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ListWebDataStreams", + "shortName": "ListEndpoints", + "fullName": "google.cloud.aiplatform.v1.EndpointService.ListEndpoints", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=properties/*}/webDataStreams" + "path": "/v1/{parent=projects/*/locations/*}/endpoints" } ] }, { - "shortName": "ProvisionAccountTicket", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.ProvisionAccountTicket", + "shortName": "UndeployModel", + "fullName": "google.cloud.aiplatform.v1.EndpointService.UndeployModel", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/accounts:provisionAccountTicket" + "path": "/v1/{endpoint=projects/*/locations/*/endpoints/*}:undeployModel" } ] }, { - "shortName": "SearchChangeHistoryEvents", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.SearchChangeHistoryEvents", + "shortName": "UpdateEndpoint", + "fullName": "google.cloud.aiplatform.v1.EndpointService.UpdateEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha/{account=accounts/*}:searchChangeHistoryEvents" + "httpMethod": "PATCH", + "path": "/v1/{endpoint.name=projects/*/locations/*/endpoints/*}" } ] - }, + } + ] + }, + { + "shortName": "FeaturestoreOnlineServingService", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreOnlineServingService", + "methods": [ { - "shortName": "UpdateAccount", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateAccount", + "shortName": "ReadFeatureValues", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.ReadFeatureValues", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{account.name=accounts/*}" + "httpMethod": "POST", + "path": "/v1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:readFeatureValues" } ] }, { - "shortName": "UpdateAndroidAppDataStream", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateAndroidAppDataStream", + "shortName": "StreamingReadFeatureValues", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.StreamingReadFeatureValues", + "mode": "SERVER_STREAMING", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:streamingReadFeatureValues" + } + ] + } + ] + }, + { + "shortName": "FeaturestoreService", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService", + "methods": [ + { + "shortName": "BatchCreateFeatures", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.BatchCreateFeatures", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{android_app_data_stream.name=properties/*/androidAppDataStreams/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features:batchCreate" } ] }, { - "shortName": "UpdateCustomDimension", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateCustomDimension", + "shortName": "BatchReadFeatureValues", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.BatchReadFeatureValues", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{custom_dimension.name=properties/*/customDimensions/*}" + "httpMethod": "POST", + "path": "/v1/{featurestore=projects/*/locations/*/featurestores/*}:batchReadFeatureValues" } ] }, { - "shortName": "UpdateCustomMetric", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateCustomMetric", + "shortName": "CreateEntityType", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.CreateEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{custom_metric.name=properties/*/customMetrics/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/featurestores/*}/entityTypes" } ] }, { - "shortName": "UpdateEnhancedMeasurementSettings", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateEnhancedMeasurementSettings", + "shortName": "CreateFeature", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.CreateFeature", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{enhanced_measurement_settings.name=properties/*/webDataStreams/*/enhancedMeasurementSettings}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features" } ] }, { - "shortName": "UpdateFirebaseLink", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateFirebaseLink", + "shortName": "CreateFeaturestore", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.CreateFeaturestore", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{firebase_link.name=properties/*/firebaseLinks/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/featurestores" } ] }, { - "shortName": "UpdateGoogleAdsLink", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateGoogleAdsLink", + "shortName": "DeleteEntityType", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.DeleteEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{google_ads_link.name=properties/*/googleAdsLinks/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*}" } ] }, { - "shortName": "UpdateGoogleSignalsSettings", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateGoogleSignalsSettings", + "shortName": "DeleteFeature", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.DeleteFeature", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{google_signals_settings.name=properties/*/googleSignalsSettings}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" } ] }, { - "shortName": "UpdateIosAppDataStream", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateIosAppDataStream", + "shortName": "DeleteFeaturestore", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.DeleteFeaturestore", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{ios_app_data_stream.name=properties/*/iosAppDataStreams/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/featurestores/*}" } ] }, { - "shortName": "UpdateMeasurementProtocolSecret", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateMeasurementProtocolSecret", + "shortName": "ExportFeatureValues", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.ExportFeatureValues", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{measurement_protocol_secret.name=properties/*/webDataStreams/*/measurementProtocolSecrets/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v1alpha/{measurement_protocol_secret.name=properties/*/iosAppDataStreams/*/measurementProtocolSecrets/*}" - }, + "httpMethod": "POST", + "path": "/v1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:exportFeatureValues" + } + ] + }, + { + "shortName": "GetEntityType", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.GetEntityType", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{measurement_protocol_secret.name=properties/*/androidAppDataStreams/*/measurementProtocolSecrets/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*}" } ] }, { - "shortName": "UpdateProperty", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateProperty", + "shortName": "GetFeature", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.GetFeature", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{property.name=properties/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" } ] }, { - "shortName": "UpdateUserLink", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateUserLink", + "shortName": "GetFeaturestore", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.GetFeaturestore", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{user_link.name=accounts/*/userLinks/*}" - }, + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/featurestores/*}" + } + ] + }, + { + "shortName": "ImportFeatureValues", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.ImportFeatureValues", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{user_link.name=properties/*/userLinks/*}" + "httpMethod": "POST", + "path": "/v1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:importFeatureValues" } ] }, { - "shortName": "UpdateWebDataStream", - "fullName": "google.analytics.admin.v1alpha.AnalyticsAdminService.UpdateWebDataStream", + "shortName": "ListEntityTypes", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.ListEntityTypes", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{web_data_stream.name=properties/*/webDataStreams/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/featurestores/*}/entityTypes" } ] - } - ] - } - ] - }, - { - "id": "google.analytics.data.v1alpha", - "directory": "google/analytics/data/v1alpha", - "version": "v1alpha", - "majorVersion": "v1", - "hostName": "analyticsdata.googleapis.com", - "title": "Google Analytics Data API", - "description": "Accesses report data in Google Analytics.", - "importDirectories": [ - "google/analytics/data/v1alpha", - "google/api" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.analytics.data.v1alpha": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/analytics/data/v1alpha;data": 2 - } - } - }, - "services": [ - { - "shortName": "AlphaAnalyticsData", - "fullName": "google.analytics.data.v1alpha.AlphaAnalyticsData", - "methods": [ + }, { - "shortName": "BatchRunPivotReports", - "fullName": "google.analytics.data.v1alpha.AlphaAnalyticsData.BatchRunPivotReports", + "shortName": "ListFeatures", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.ListFeatures", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha:batchRunPivotReports" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features" } ] }, { - "shortName": "BatchRunReports", - "fullName": "google.analytics.data.v1alpha.AlphaAnalyticsData.BatchRunReports", + "shortName": "ListFeaturestores", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.ListFeaturestores", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha:batchRunReports" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/featurestores" } ] }, { - "shortName": "GetMetadata", - "fullName": "google.analytics.data.v1alpha.AlphaAnalyticsData.GetMetadata", + "shortName": "SearchFeatures", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.SearchFeatures", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{name=properties/*/metadata}" + "path": "/v1/{location=projects/*/locations/*}/featurestores:searchFeatures" } ] }, { - "shortName": "RunPivotReport", - "fullName": "google.analytics.data.v1alpha.AlphaAnalyticsData.RunPivotReport", + "shortName": "UpdateEntityType", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.UpdateEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha:runPivotReport" + "httpMethod": "PATCH", + "path": "/v1/{entity_type.name=projects/*/locations/*/featurestores/*/entityTypes/*}" } ] }, { - "shortName": "RunRealtimeReport", - "fullName": "google.analytics.data.v1alpha.AlphaAnalyticsData.RunRealtimeReport", + "shortName": "UpdateFeature", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.UpdateFeature", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha/{property=properties/*}:runRealtimeReport" + "httpMethod": "PATCH", + "path": "/v1/{feature.name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" } ] }, { - "shortName": "RunReport", - "fullName": "google.analytics.data.v1alpha.AlphaAnalyticsData.RunReport", + "shortName": "UpdateFeaturestore", + "fullName": "google.cloud.aiplatform.v1.FeaturestoreService.UpdateFeaturestore", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha:runReport" + "httpMethod": "PATCH", + "path": "/v1/{featurestore.name=projects/*/locations/*/featurestores/*}" } ] } ] - } - ] - }, - { - "id": "google.analytics.data.v1beta", - "directory": "google/analytics/data/v1beta", - "version": "v1beta", - "majorVersion": "v1", - "hostName": "analyticsdata.googleapis.com", - "title": "Google Analytics Data API", - "description": "Accesses report data in Google Analytics.", - "importDirectories": [ - "google/analytics/data/v1beta", - "google/api" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.analytics.data.v1beta": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/analytics/data/v1beta;data": 2 - } - } - }, - "services": [ { - "shortName": "BetaAnalyticsData", - "fullName": "google.analytics.data.v1beta.BetaAnalyticsData", + "shortName": "IndexEndpointService", + "fullName": "google.cloud.aiplatform.v1.IndexEndpointService", "methods": [ { - "shortName": "BatchRunPivotReports", - "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.BatchRunPivotReports", + "shortName": "CreateIndexEndpoint", + "fullName": "google.cloud.aiplatform.v1.IndexEndpointService.CreateIndexEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta/{property=properties/*}:batchRunPivotReports" + "path": "/v1/{parent=projects/*/locations/*}/indexEndpoints" } ] }, { - "shortName": "BatchRunReports", - "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.BatchRunReports", + "shortName": "DeleteIndexEndpoint", + "fullName": "google.cloud.aiplatform.v1.IndexEndpointService.DeleteIndexEndpoint", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/indexEndpoints/*}" + } + ] + }, + { + "shortName": "DeployIndex", + "fullName": "google.cloud.aiplatform.v1.IndexEndpointService.DeployIndex", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta/{property=properties/*}:batchRunReports" + "path": "/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:deployIndex" } ] }, { - "shortName": "GetMetadata", - "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.GetMetadata", + "shortName": "GetIndexEndpoint", + "fullName": "google.cloud.aiplatform.v1.IndexEndpointService.GetIndexEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{name=properties/*/metadata}" + "path": "/v1/{name=projects/*/locations/*/indexEndpoints/*}" } ] }, { - "shortName": "RunPivotReport", - "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.RunPivotReport", + "shortName": "ListIndexEndpoints", + "fullName": "google.cloud.aiplatform.v1.IndexEndpointService.ListIndexEndpoints", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta/{property=properties/*}:runPivotReport" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/indexEndpoints" } ] }, { - "shortName": "RunRealtimeReport", - "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.RunRealtimeReport", + "shortName": "MutateDeployedIndex", + "fullName": "google.cloud.aiplatform.v1.IndexEndpointService.MutateDeployedIndex", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta/{property=properties/*}:runRealtimeReport" + "path": "/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:mutateDeployedIndex" } ] }, { - "shortName": "RunReport", - "fullName": "google.analytics.data.v1beta.BetaAnalyticsData.RunReport", + "shortName": "UndeployIndex", + "fullName": "google.cloud.aiplatform.v1.IndexEndpointService.UndeployIndex", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta/{property=properties/*}:runReport" + "path": "/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:undeployIndex" } ] - } - ] - } - ] - }, - { - "id": "google.api.servicecontrol.v1", - "directory": "google/api/servicecontrol/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "servicecontrol.googleapis.com", - "title": "Service Control API", - "description": "Provides control plane functionality to managed services, such as logging, monitoring, and status checks.", - "importDirectories": [ - "google/api", - "google/api/servicecontrol/v1", - "google/logging/type", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.api.servicecontrol.v1": 8 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 8 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/api/servicecontrol/v1;servicecontrol": 8 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.ServiceControl.V1": 8 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\ServiceControl\\V1": 8 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::ServiceControl::V1": 8 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 6, - "": 2 - } - }, - "objc_class_prefix": { - "valueCounts": { - "GASC": 1, - "": 7 - } - } - }, - "services": [ - { - "shortName": "QuotaController", - "fullName": "google.api.servicecontrol.v1.QuotaController", - "methods": [ + }, { - "shortName": "AllocateQuota", - "fullName": "google.api.servicecontrol.v1.QuotaController.AllocateQuota", + "shortName": "UpdateIndexEndpoint", + "fullName": "google.cloud.aiplatform.v1.IndexEndpointService.UpdateIndexEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/services/{service_name}:allocateQuota" + "httpMethod": "PATCH", + "path": "/v1/{index_endpoint.name=projects/*/locations/*/indexEndpoints/*}" } ] } ] }, { - "shortName": "ServiceController", - "fullName": "google.api.servicecontrol.v1.ServiceController", + "shortName": "IndexService", + "fullName": "google.cloud.aiplatform.v1.IndexService", "methods": [ { - "shortName": "Check", - "fullName": "google.api.servicecontrol.v1.ServiceController.Check", + "shortName": "CreateIndex", + "fullName": "google.cloud.aiplatform.v1.IndexService.CreateIndex", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/services/{service_name}:check" + "path": "/v1/{parent=projects/*/locations/*}/indexes" } ] }, { - "shortName": "Report", - "fullName": "google.api.servicecontrol.v1.ServiceController.Report", + "shortName": "DeleteIndex", + "fullName": "google.cloud.aiplatform.v1.IndexService.DeleteIndex", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/services/{service_name}:report" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/indexes/*}" + } + ] + }, + { + "shortName": "GetIndex", + "fullName": "google.cloud.aiplatform.v1.IndexService.GetIndex", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/indexes/*}" + } + ] + }, + { + "shortName": "ListIndexes", + "fullName": "google.cloud.aiplatform.v1.IndexService.ListIndexes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/indexes" + } + ] + }, + { + "shortName": "UpdateIndex", + "fullName": "google.cloud.aiplatform.v1.IndexService.UpdateIndex", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{index.name=projects/*/locations/*/indexes/*}" } ] } ] - } - ] - }, - { - "id": "google.api.servicemanagement.v1", - "directory": "google/api/servicemanagement/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "servicemanagement.googleapis.com", - "title": "Service Management API", - "description": "Google Service Management allows service producers to publish their services on Google Cloud Platform so that they can be discovered and used by service consumers.", - "importDirectories": [ - "google/api", - "google/api/servicemanagement/v1", - "google/longrunning", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.api.servicemanagement.v1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/api/servicemanagement/v1;servicemanagement": 2 - } - }, - "objc_class_prefix": { - "valueCounts": { - "GASM": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.ServiceManagement.V1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\ServiceManagement\\V1": 2 - } }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::ServiceManagement::V1": 2 - } - } - }, - "services": [ { - "shortName": "ServiceManager", - "fullName": "google.api.servicemanagement.v1.ServiceManager", + "shortName": "JobService", + "fullName": "google.cloud.aiplatform.v1.JobService", "methods": [ { - "shortName": "CreateService", - "fullName": "google.api.servicemanagement.v1.ServiceManager.CreateService", + "shortName": "CancelBatchPredictionJob", + "fullName": "google.cloud.aiplatform.v1.JobService.CancelBatchPredictionJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/services" + "path": "/v1/{name=projects/*/locations/*/batchPredictionJobs/*}:cancel" } ] }, { - "shortName": "CreateServiceConfig", - "fullName": "google.api.servicemanagement.v1.ServiceManager.CreateServiceConfig", + "shortName": "CancelCustomJob", + "fullName": "google.cloud.aiplatform.v1.JobService.CancelCustomJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/services/{service_name}/configs" + "path": "/v1/{name=projects/*/locations/*/customJobs/*}:cancel" } ] }, { - "shortName": "CreateServiceRollout", - "fullName": "google.api.servicemanagement.v1.ServiceManager.CreateServiceRollout", + "shortName": "CancelDataLabelingJob", + "fullName": "google.cloud.aiplatform.v1.JobService.CancelDataLabelingJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/services/{service_name}/rollouts" + "path": "/v1/{name=projects/*/locations/*/dataLabelingJobs/*}:cancel" } ] }, { - "shortName": "DeleteService", - "fullName": "google.api.servicemanagement.v1.ServiceManager.DeleteService", + "shortName": "CancelHyperparameterTuningJob", + "fullName": "google.cloud.aiplatform.v1.JobService.CancelHyperparameterTuningJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/services/{service_name}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}:cancel" } ] }, { - "shortName": "DisableService", - "fullName": "google.api.servicemanagement.v1.ServiceManager.DisableService", + "shortName": "CreateBatchPredictionJob", + "fullName": "google.cloud.aiplatform.v1.JobService.CreateBatchPredictionJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/services/{service_name}:disable" + "path": "/v1/{parent=projects/*/locations/*}/batchPredictionJobs" } ] }, { - "shortName": "EnableService", - "fullName": "google.api.servicemanagement.v1.ServiceManager.EnableService", + "shortName": "CreateCustomJob", + "fullName": "google.cloud.aiplatform.v1.JobService.CreateCustomJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/services/{service_name}:enable" + "path": "/v1/{parent=projects/*/locations/*}/customJobs" } ] }, { - "shortName": "GenerateConfigReport", - "fullName": "google.api.servicemanagement.v1.ServiceManager.GenerateConfigReport", + "shortName": "CreateDataLabelingJob", + "fullName": "google.cloud.aiplatform.v1.JobService.CreateDataLabelingJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/services:generateConfigReport" + "path": "/v1/{parent=projects/*/locations/*}/dataLabelingJobs" } ] }, { - "shortName": "GetService", - "fullName": "google.api.servicemanagement.v1.ServiceManager.GetService", + "shortName": "CreateHyperparameterTuningJob", + "fullName": "google.cloud.aiplatform.v1.JobService.CreateHyperparameterTuningJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/services/{service_name}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/hyperparameterTuningJobs" } ] }, { - "shortName": "GetServiceConfig", - "fullName": "google.api.servicemanagement.v1.ServiceManager.GetServiceConfig", + "shortName": "CreateModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1.JobService.CreateModelDeploymentMonitoringJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/services/{service_name}/configs/{config_id}" - }, - { - "httpMethod": "GET", - "path": "/v1/services/{service_name}/config" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/modelDeploymentMonitoringJobs" } ] }, { - "shortName": "GetServiceRollout", - "fullName": "google.api.servicemanagement.v1.ServiceManager.GetServiceRollout", + "shortName": "DeleteBatchPredictionJob", + "fullName": "google.cloud.aiplatform.v1.JobService.DeleteBatchPredictionJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/services/{service_name}/rollouts/{rollout_id}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/batchPredictionJobs/*}" } ] }, { - "shortName": "ListServiceConfigs", - "fullName": "google.api.servicemanagement.v1.ServiceManager.ListServiceConfigs", + "shortName": "DeleteCustomJob", + "fullName": "google.cloud.aiplatform.v1.JobService.DeleteCustomJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/services/{service_name}/configs" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/customJobs/*}" } ] }, { - "shortName": "ListServiceRollouts", - "fullName": "google.api.servicemanagement.v1.ServiceManager.ListServiceRollouts", + "shortName": "DeleteDataLabelingJob", + "fullName": "google.cloud.aiplatform.v1.JobService.DeleteDataLabelingJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/services/{service_name}/rollouts" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/dataLabelingJobs/*}" } ] }, { - "shortName": "ListServices", - "fullName": "google.api.servicemanagement.v1.ServiceManager.ListServices", + "shortName": "DeleteHyperparameterTuningJob", + "fullName": "google.cloud.aiplatform.v1.JobService.DeleteHyperparameterTuningJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/services" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}" } ] }, { - "shortName": "SubmitConfigSource", - "fullName": "google.api.servicemanagement.v1.ServiceManager.SubmitConfigSource", + "shortName": "DeleteModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1.JobService.DeleteModelDeploymentMonitoringJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/services/{service_name}/configs:submit" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" } ] }, { - "shortName": "UndeleteService", - "fullName": "google.api.servicemanagement.v1.ServiceManager.UndeleteService", + "shortName": "GetBatchPredictionJob", + "fullName": "google.cloud.aiplatform.v1.JobService.GetBatchPredictionJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/services/{service_name}:undelete" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/batchPredictionJobs/*}" } ] - } - ] - } - ] - }, - { - "id": "google.api.serviceusage.v1", - "directory": "google/api/serviceusage/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "serviceusage.googleapis.com", - "title": "Service Usage API", - "description": "Enables services that service consumers want to use on Google Cloud Platform, lists the available or enabled services, or disables services that service consumers no longer use.", - "importDirectories": [ - "google/api", - "google/api/serviceusage/v1", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.api.serviceusage.v1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/api/serviceusage/v1;serviceusage": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.ServiceUsage.V1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\ServiceUsage\\V1": 2 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::ServiceUsage::V1": 2 - } - } - }, - "services": [ - { - "shortName": "ServiceUsage", - "fullName": "google.api.serviceusage.v1.ServiceUsage", - "methods": [ + }, { - "shortName": "BatchEnableServices", - "fullName": "google.api.serviceusage.v1.ServiceUsage.BatchEnableServices", + "shortName": "GetCustomJob", + "fullName": "google.cloud.aiplatform.v1.JobService.GetCustomJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=*/*}/services:batchEnable" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/customJobs/*}" } ] }, { - "shortName": "BatchGetServices", - "fullName": "google.api.serviceusage.v1.ServiceUsage.BatchGetServices", + "shortName": "GetDataLabelingJob", + "fullName": "google.cloud.aiplatform.v1.JobService.GetDataLabelingJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=*/*}/services:batchGet" + "path": "/v1/{name=projects/*/locations/*/dataLabelingJobs/*}" } ] }, { - "shortName": "DisableService", - "fullName": "google.api.serviceusage.v1.ServiceUsage.DisableService", + "shortName": "GetHyperparameterTuningJob", + "fullName": "google.cloud.aiplatform.v1.JobService.GetHyperparameterTuningJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=*/*/services/*}:disable" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}" } ] }, { - "shortName": "EnableService", - "fullName": "google.api.serviceusage.v1.ServiceUsage.EnableService", + "shortName": "GetModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1.JobService.GetModelDeploymentMonitoringJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=*/*/services/*}:enable" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" } ] }, { - "shortName": "GetService", - "fullName": "google.api.serviceusage.v1.ServiceUsage.GetService", + "shortName": "ListBatchPredictionJobs", + "fullName": "google.cloud.aiplatform.v1.JobService.ListBatchPredictionJobs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=*/*/services/*}" + "path": "/v1/{parent=projects/*/locations/*}/batchPredictionJobs" } ] }, { - "shortName": "ListServices", - "fullName": "google.api.serviceusage.v1.ServiceUsage.ListServices", + "shortName": "ListCustomJobs", + "fullName": "google.cloud.aiplatform.v1.JobService.ListCustomJobs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=*/*}/services" + "path": "/v1/{parent=projects/*/locations/*}/customJobs" } ] - } - ] - } - ] - }, - { - "id": "google.api.serviceusage.v1beta1", - "directory": "google/api/serviceusage/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "serviceusage.googleapis.com", - "title": "Service Usage API", - "description": "Enables services that service consumers want to use on Google Cloud Platform, lists the available or enabled services, or disables services that service consumers no longer use.", - "importDirectories": [ - "google/api", - "google/api/serviceusage/v1beta1", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.api.serviceusage.v1beta1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/api/serviceusage/v1beta1;serviceusage": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Api.ServiceUsage.V1Beta1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Api\\ServiceUsage\\V1beta1": 2 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Api::ServiceUsage::V1beta1": 2 - } - } - }, - "services": [ - { - "shortName": "ServiceUsage", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage", - "methods": [ + }, { - "shortName": "BatchEnableServices", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.BatchEnableServices", + "shortName": "ListDataLabelingJobs", + "fullName": "google.cloud.aiplatform.v1.JobService.ListDataLabelingJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=*/*}/services:batchEnable" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/dataLabelingJobs" } ] }, { - "shortName": "CreateAdminOverride", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.CreateAdminOverride", + "shortName": "ListHyperparameterTuningJobs", + "fullName": "google.cloud.aiplatform.v1.JobService.ListHyperparameterTuningJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=*/*/services/*/consumerQuotaMetrics/*/limits/*}/adminOverrides" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/hyperparameterTuningJobs" } ] }, { - "shortName": "CreateConsumerOverride", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.CreateConsumerOverride", + "shortName": "ListModelDeploymentMonitoringJobs", + "fullName": "google.cloud.aiplatform.v1.JobService.ListModelDeploymentMonitoringJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=*/*/services/*/consumerQuotaMetrics/*/limits/*}/consumerOverrides" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/modelDeploymentMonitoringJobs" } ] }, { - "shortName": "DeleteAdminOverride", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.DeleteAdminOverride", + "shortName": "PauseModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1.JobService.PauseModelDeploymentMonitoringJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*/limits/*/adminOverrides/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:pause" } ] }, { - "shortName": "DeleteConsumerOverride", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.DeleteConsumerOverride", + "shortName": "ResumeModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1.JobService.ResumeModelDeploymentMonitoringJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*/limits/*/consumerOverrides/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:resume" } ] }, { - "shortName": "DisableService", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.DisableService", + "shortName": "SearchModelDeploymentMonitoringStatsAnomalies", + "fullName": "google.cloud.aiplatform.v1.JobService.SearchModelDeploymentMonitoringStatsAnomalies", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=*/*/services/*}:disable" + "path": "/v1/{model_deployment_monitoring_job=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:searchModelDeploymentMonitoringStatsAnomalies" } ] }, { - "shortName": "EnableService", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.EnableService", + "shortName": "UpdateModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1.JobService.UpdateModelDeploymentMonitoringJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=*/*/services/*}:enable" + "httpMethod": "PATCH", + "path": "/v1/{model_deployment_monitoring_job.name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" } ] - }, + } + ] + }, + { + "shortName": "MetadataService", + "fullName": "google.cloud.aiplatform.v1.MetadataService", + "methods": [ { - "shortName": "GenerateServiceIdentity", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.GenerateServiceIdentity", + "shortName": "AddContextArtifactsAndExecutions", + "fullName": "google.cloud.aiplatform.v1.MetadataService.AddContextArtifactsAndExecutions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=*/*/services/*}:generateServiceIdentity" + "path": "/v1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:addContextArtifactsAndExecutions" } ] }, { - "shortName": "GetConsumerQuotaLimit", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.GetConsumerQuotaLimit", + "shortName": "AddContextChildren", + "fullName": "google.cloud.aiplatform.v1.MetadataService.AddContextChildren", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*/limits/*}" + "httpMethod": "POST", + "path": "/v1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:addContextChildren" } ] }, { - "shortName": "GetConsumerQuotaMetric", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.GetConsumerQuotaMetric", + "shortName": "AddExecutionEvents", + "fullName": "google.cloud.aiplatform.v1.MetadataService.AddExecutionEvents", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*}" + "httpMethod": "POST", + "path": "/v1/{execution=projects/*/locations/*/metadataStores/*/executions/*}:addExecutionEvents" } ] }, { - "shortName": "GetService", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.GetService", + "shortName": "CreateArtifact", + "fullName": "google.cloud.aiplatform.v1.MetadataService.CreateArtifact", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=*/*/services/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/metadataStores/*}/artifacts" } ] }, { - "shortName": "ImportAdminOverrides", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ImportAdminOverrides", + "shortName": "CreateContext", + "fullName": "google.cloud.aiplatform.v1.MetadataService.CreateContext", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=*/*/services/*}/consumerQuotaMetrics:importAdminOverrides" + "path": "/v1/{parent=projects/*/locations/*/metadataStores/*}/contexts" } ] }, { - "shortName": "ImportConsumerOverrides", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ImportConsumerOverrides", + "shortName": "CreateExecution", + "fullName": "google.cloud.aiplatform.v1.MetadataService.CreateExecution", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=*/*/services/*}/consumerQuotaMetrics:importConsumerOverrides" + "path": "/v1/{parent=projects/*/locations/*/metadataStores/*}/executions" } ] }, { - "shortName": "ListAdminOverrides", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ListAdminOverrides", + "shortName": "CreateMetadataSchema", + "fullName": "google.cloud.aiplatform.v1.MetadataService.CreateMetadataSchema", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=*/*/services/*/consumerQuotaMetrics/*/limits/*}/adminOverrides" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/metadataStores/*}/metadataSchemas" } ] }, { - "shortName": "ListConsumerOverrides", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ListConsumerOverrides", + "shortName": "CreateMetadataStore", + "fullName": "google.cloud.aiplatform.v1.MetadataService.CreateMetadataStore", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=*/*/services/*/consumerQuotaMetrics/*/limits/*}/consumerOverrides" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/metadataStores" } ] }, { - "shortName": "ListConsumerQuotaMetrics", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ListConsumerQuotaMetrics", + "shortName": "DeleteArtifact", + "fullName": "google.cloud.aiplatform.v1.MetadataService.DeleteArtifact", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=*/*/services/*}/consumerQuotaMetrics" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/metadataStores/*/artifacts/*}" } ] }, { - "shortName": "ListServices", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.ListServices", + "shortName": "DeleteContext", + "fullName": "google.cloud.aiplatform.v1.MetadataService.DeleteContext", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=*/*}/services" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/metadataStores/*/contexts/*}" } ] }, { - "shortName": "UpdateAdminOverride", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.UpdateAdminOverride", + "shortName": "DeleteExecution", + "fullName": "google.cloud.aiplatform.v1.MetadataService.DeleteExecution", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*/limits/*/adminOverrides/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/metadataStores/*/executions/*}" } ] }, { - "shortName": "UpdateConsumerOverride", - "fullName": "google.api.serviceusage.v1beta1.ServiceUsage.UpdateConsumerOverride", + "shortName": "DeleteMetadataStore", + "fullName": "google.cloud.aiplatform.v1.MetadataService.DeleteMetadataStore", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{name=*/*/services/*/consumerQuotaMetrics/*/limits/*/consumerOverrides/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/metadataStores/*}" } ] - } - ] - } - ] - }, - { - "id": "google.appengine.v1", - "directory": "google/appengine/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "appengine.googleapis.com", - "title": "App Engine Admin API", - "description": "Provisions and manages developers' App Engine applications.", - "importDirectories": [ - "google/api", - "google/appengine/v1", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.appengine.v1.firewall": 1, - "com.google.appengine.v1": 15 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 16 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/appengine/v1;appengine": 16 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.AppEngine.V1": 16 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\AppEngine\\V1": 16 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::AppEngine::V1": 16 - } - } - }, - "services": [ - { - "shortName": "Applications", - "fullName": "google.appengine.v1.Applications", - "methods": [ + }, { - "shortName": "CreateApplication", - "fullName": "google.appengine.v1.Applications.CreateApplication", + "shortName": "GetArtifact", + "fullName": "google.cloud.aiplatform.v1.MetadataService.GetArtifact", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/apps" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/metadataStores/*/artifacts/*}" } ] }, { - "shortName": "GetApplication", - "fullName": "google.appengine.v1.Applications.GetApplication", + "shortName": "GetContext", + "fullName": "google.cloud.aiplatform.v1.MetadataService.GetContext", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=apps/*}" + "path": "/v1/{name=projects/*/locations/*/metadataStores/*/contexts/*}" } ] }, { - "shortName": "RepairApplication", - "fullName": "google.appengine.v1.Applications.RepairApplication", + "shortName": "GetExecution", + "fullName": "google.cloud.aiplatform.v1.MetadataService.GetExecution", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=apps/*}:repair" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/metadataStores/*/executions/*}" } ] }, { - "shortName": "UpdateApplication", - "fullName": "google.appengine.v1.Applications.UpdateApplication", + "shortName": "GetMetadataSchema", + "fullName": "google.cloud.aiplatform.v1.MetadataService.GetMetadataSchema", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{name=apps/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/metadataStores/*/metadataSchemas/*}" } ] - } - ] - }, - { - "shortName": "AuthorizedCertificates", - "fullName": "google.appengine.v1.AuthorizedCertificates", - "methods": [ + }, { - "shortName": "CreateAuthorizedCertificate", - "fullName": "google.appengine.v1.AuthorizedCertificates.CreateAuthorizedCertificate", + "shortName": "GetMetadataStore", + "fullName": "google.cloud.aiplatform.v1.MetadataService.GetMetadataStore", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=apps/*}/authorizedCertificates" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/metadataStores/*}" } ] }, { - "shortName": "DeleteAuthorizedCertificate", - "fullName": "google.appengine.v1.AuthorizedCertificates.DeleteAuthorizedCertificate", + "shortName": "ListArtifacts", + "fullName": "google.cloud.aiplatform.v1.MetadataService.ListArtifacts", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=apps/*/authorizedCertificates/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/metadataStores/*}/artifacts" } ] }, { - "shortName": "GetAuthorizedCertificate", - "fullName": "google.appengine.v1.AuthorizedCertificates.GetAuthorizedCertificate", + "shortName": "ListContexts", + "fullName": "google.cloud.aiplatform.v1.MetadataService.ListContexts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=apps/*/authorizedCertificates/*}" + "path": "/v1/{parent=projects/*/locations/*/metadataStores/*}/contexts" } ] }, { - "shortName": "ListAuthorizedCertificates", - "fullName": "google.appengine.v1.AuthorizedCertificates.ListAuthorizedCertificates", + "shortName": "ListExecutions", + "fullName": "google.cloud.aiplatform.v1.MetadataService.ListExecutions", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=apps/*}/authorizedCertificates" + "path": "/v1/{parent=projects/*/locations/*/metadataStores/*}/executions" } ] }, { - "shortName": "UpdateAuthorizedCertificate", - "fullName": "google.appengine.v1.AuthorizedCertificates.UpdateAuthorizedCertificate", + "shortName": "ListMetadataSchemas", + "fullName": "google.cloud.aiplatform.v1.MetadataService.ListMetadataSchemas", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{name=apps/*/authorizedCertificates/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/metadataStores/*}/metadataSchemas" } ] - } - ] - }, - { - "shortName": "AuthorizedDomains", - "fullName": "google.appengine.v1.AuthorizedDomains", - "methods": [ + }, { - "shortName": "ListAuthorizedDomains", - "fullName": "google.appengine.v1.AuthorizedDomains.ListAuthorizedDomains", + "shortName": "ListMetadataStores", + "fullName": "google.cloud.aiplatform.v1.MetadataService.ListMetadataStores", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=apps/*}/authorizedDomains" + "path": "/v1/{parent=projects/*/locations/*}/metadataStores" } ] - } - ] - }, - { - "shortName": "DomainMappings", - "fullName": "google.appengine.v1.DomainMappings", - "methods": [ + }, { - "shortName": "CreateDomainMapping", - "fullName": "google.appengine.v1.DomainMappings.CreateDomainMapping", + "shortName": "PurgeArtifacts", + "fullName": "google.cloud.aiplatform.v1.MetadataService.PurgeArtifacts", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=apps/*}/domainMappings" + "path": "/v1/{parent=projects/*/locations/*/metadataStores/*}/artifacts:purge" } ] }, { - "shortName": "DeleteDomainMapping", - "fullName": "google.appengine.v1.DomainMappings.DeleteDomainMapping", + "shortName": "PurgeContexts", + "fullName": "google.cloud.aiplatform.v1.MetadataService.PurgeContexts", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=apps/*/domainMappings/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/metadataStores/*}/contexts:purge" } ] }, { - "shortName": "GetDomainMapping", - "fullName": "google.appengine.v1.DomainMappings.GetDomainMapping", + "shortName": "PurgeExecutions", + "fullName": "google.cloud.aiplatform.v1.MetadataService.PurgeExecutions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=apps/*/domainMappings/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/metadataStores/*}/executions:purge" } ] }, { - "shortName": "ListDomainMappings", - "fullName": "google.appengine.v1.DomainMappings.ListDomainMappings", + "shortName": "QueryArtifactLineageSubgraph", + "fullName": "google.cloud.aiplatform.v1.MetadataService.QueryArtifactLineageSubgraph", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=apps/*}/domainMappings" + "path": "/v1/{artifact=projects/*/locations/*/metadataStores/*/artifacts/*}:queryArtifactLineageSubgraph" } ] }, { - "shortName": "UpdateDomainMapping", - "fullName": "google.appengine.v1.DomainMappings.UpdateDomainMapping", + "shortName": "QueryContextLineageSubgraph", + "fullName": "google.cloud.aiplatform.v1.MetadataService.QueryContextLineageSubgraph", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{name=apps/*/domainMappings/*}" + "httpMethod": "GET", + "path": "/v1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:queryContextLineageSubgraph" } ] - } - ] - }, - { - "shortName": "Firewall", - "fullName": "google.appengine.v1.Firewall", - "methods": [ + }, { - "shortName": "BatchUpdateIngressRules", - "fullName": "google.appengine.v1.Firewall.BatchUpdateIngressRules", + "shortName": "QueryExecutionInputsAndOutputs", + "fullName": "google.cloud.aiplatform.v1.MetadataService.QueryExecutionInputsAndOutputs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=apps/*/firewall/ingressRules}:batchUpdate" + "httpMethod": "GET", + "path": "/v1/{execution=projects/*/locations/*/metadataStores/*/executions/*}:queryExecutionInputsAndOutputs" } ] }, { - "shortName": "CreateIngressRule", - "fullName": "google.appengine.v1.Firewall.CreateIngressRule", + "shortName": "UpdateArtifact", + "fullName": "google.cloud.aiplatform.v1.MetadataService.UpdateArtifact", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=apps/*}/firewall/ingressRules" + "httpMethod": "PATCH", + "path": "/v1/{artifact.name=projects/*/locations/*/metadataStores/*/artifacts/*}" } ] }, { - "shortName": "DeleteIngressRule", - "fullName": "google.appengine.v1.Firewall.DeleteIngressRule", + "shortName": "UpdateContext", + "fullName": "google.cloud.aiplatform.v1.MetadataService.UpdateContext", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=apps/*/firewall/ingressRules/*}" + "httpMethod": "PATCH", + "path": "/v1/{context.name=projects/*/locations/*/metadataStores/*/contexts/*}" } ] }, { - "shortName": "GetIngressRule", - "fullName": "google.appengine.v1.Firewall.GetIngressRule", + "shortName": "UpdateExecution", + "fullName": "google.cloud.aiplatform.v1.MetadataService.UpdateExecution", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=apps/*/firewall/ingressRules/*}" + "httpMethod": "PATCH", + "path": "/v1/{execution.name=projects/*/locations/*/metadataStores/*/executions/*}" } ] - }, + } + ] + }, + { + "shortName": "MigrationService", + "fullName": "google.cloud.aiplatform.v1.MigrationService", + "methods": [ { - "shortName": "ListIngressRules", - "fullName": "google.appengine.v1.Firewall.ListIngressRules", + "shortName": "BatchMigrateResources", + "fullName": "google.cloud.aiplatform.v1.MigrationService.BatchMigrateResources", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=apps/*}/firewall/ingressRules" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/migratableResources:batchMigrate" } ] }, { - "shortName": "UpdateIngressRule", - "fullName": "google.appengine.v1.Firewall.UpdateIngressRule", + "shortName": "SearchMigratableResources", + "fullName": "google.cloud.aiplatform.v1.MigrationService.SearchMigratableResources", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{name=apps/*/firewall/ingressRules/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/migratableResources:search" } ] } ] }, { - "shortName": "Instances", - "fullName": "google.appengine.v1.Instances", + "shortName": "ModelService", + "fullName": "google.cloud.aiplatform.v1.ModelService", "methods": [ { - "shortName": "DebugInstance", - "fullName": "google.appengine.v1.Instances.DebugInstance", + "shortName": "DeleteModel", + "fullName": "google.cloud.aiplatform.v1.ModelService.DeleteModel", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=apps/*/services/*/versions/*/instances/*}:debug" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/models/*}" } ] }, { - "shortName": "DeleteInstance", - "fullName": "google.appengine.v1.Instances.DeleteInstance", + "shortName": "ExportModel", + "fullName": "google.cloud.aiplatform.v1.ModelService.ExportModel", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=apps/*/services/*/versions/*/instances/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/models/*}:export" } ] }, { - "shortName": "GetInstance", - "fullName": "google.appengine.v1.Instances.GetInstance", + "shortName": "GetModel", + "fullName": "google.cloud.aiplatform.v1.ModelService.GetModel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=apps/*/services/*/versions/*/instances/*}" + "path": "/v1/{name=projects/*/locations/*/models/*}" } ] }, { - "shortName": "ListInstances", - "fullName": "google.appengine.v1.Instances.ListInstances", + "shortName": "GetModelEvaluation", + "fullName": "google.cloud.aiplatform.v1.ModelService.GetModelEvaluation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=apps/*/services/*/versions/*}/instances" + "path": "/v1/{name=projects/*/locations/*/models/*/evaluations/*}" } ] - } - ] - }, - { - "shortName": "Services", - "fullName": "google.appengine.v1.Services", - "methods": [ + }, { - "shortName": "DeleteService", - "fullName": "google.appengine.v1.Services.DeleteService", + "shortName": "GetModelEvaluationSlice", + "fullName": "google.cloud.aiplatform.v1.ModelService.GetModelEvaluationSlice", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=apps/*/services/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/models/*/evaluations/*/slices/*}" } ] }, { - "shortName": "GetService", - "fullName": "google.appengine.v1.Services.GetService", + "shortName": "ListModelEvaluationSlices", + "fullName": "google.cloud.aiplatform.v1.ModelService.ListModelEvaluationSlices", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=apps/*/services/*}" + "path": "/v1/{parent=projects/*/locations/*/models/*/evaluations/*}/slices" } ] }, { - "shortName": "ListServices", - "fullName": "google.appengine.v1.Services.ListServices", + "shortName": "ListModelEvaluations", + "fullName": "google.cloud.aiplatform.v1.ModelService.ListModelEvaluations", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=apps/*}/services" + "path": "/v1/{parent=projects/*/locations/*/models/*}/evaluations" } ] }, { - "shortName": "UpdateService", - "fullName": "google.appengine.v1.Services.UpdateService", + "shortName": "ListModels", + "fullName": "google.cloud.aiplatform.v1.ModelService.ListModels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/models" + } + ] + }, + { + "shortName": "UpdateModel", + "fullName": "google.cloud.aiplatform.v1.ModelService.UpdateModel", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{name=apps/*/services/*}" + "path": "/v1/{model.name=projects/*/locations/*/models/*}" + } + ] + }, + { + "shortName": "UploadModel", + "fullName": "google.cloud.aiplatform.v1.ModelService.UploadModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/models:upload" } ] } ] }, { - "shortName": "Versions", - "fullName": "google.appengine.v1.Versions", + "shortName": "PipelineService", + "fullName": "google.cloud.aiplatform.v1.PipelineService", "methods": [ { - "shortName": "CreateVersion", - "fullName": "google.appengine.v1.Versions.CreateVersion", + "shortName": "CancelPipelineJob", + "fullName": "google.cloud.aiplatform.v1.PipelineService.CancelPipelineJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=apps/*/services/*}/versions" + "path": "/v1/{name=projects/*/locations/*/pipelineJobs/*}:cancel" } ] }, { - "shortName": "DeleteVersion", - "fullName": "google.appengine.v1.Versions.DeleteVersion", + "shortName": "CancelTrainingPipeline", + "fullName": "google.cloud.aiplatform.v1.PipelineService.CancelTrainingPipeline", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/trainingPipelines/*}:cancel" + } + ] + }, + { + "shortName": "CreatePipelineJob", + "fullName": "google.cloud.aiplatform.v1.PipelineService.CreatePipelineJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/pipelineJobs" + } + ] + }, + { + "shortName": "CreateTrainingPipeline", + "fullName": "google.cloud.aiplatform.v1.PipelineService.CreateTrainingPipeline", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/trainingPipelines" + } + ] + }, + { + "shortName": "DeletePipelineJob", + "fullName": "google.cloud.aiplatform.v1.PipelineService.DeletePipelineJob", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=apps/*/services/*/versions/*}" + "path": "/v1/{name=projects/*/locations/*/pipelineJobs/*}" } ] }, { - "shortName": "GetVersion", - "fullName": "google.appengine.v1.Versions.GetVersion", + "shortName": "DeleteTrainingPipeline", + "fullName": "google.cloud.aiplatform.v1.PipelineService.DeleteTrainingPipeline", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/trainingPipelines/*}" + } + ] + }, + { + "shortName": "GetPipelineJob", + "fullName": "google.cloud.aiplatform.v1.PipelineService.GetPipelineJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=apps/*/services/*/versions/*}" + "path": "/v1/{name=projects/*/locations/*/pipelineJobs/*}" } ] }, { - "shortName": "ListVersions", - "fullName": "google.appengine.v1.Versions.ListVersions", + "shortName": "GetTrainingPipeline", + "fullName": "google.cloud.aiplatform.v1.PipelineService.GetTrainingPipeline", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=apps/*/services/*}/versions" + "path": "/v1/{name=projects/*/locations/*/trainingPipelines/*}" } ] }, { - "shortName": "UpdateVersion", - "fullName": "google.appengine.v1.Versions.UpdateVersion", + "shortName": "ListPipelineJobs", + "fullName": "google.cloud.aiplatform.v1.PipelineService.ListPipelineJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{name=apps/*/services/*/versions/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/pipelineJobs" + } + ] + }, + { + "shortName": "ListTrainingPipelines", + "fullName": "google.cloud.aiplatform.v1.PipelineService.ListTrainingPipelines", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/trainingPipelines" } ] } ] - } - ] - }, - { - "id": "google.apps.alertcenter.v1beta1", - "directory": "google/apps/alertcenter/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "alertcenter.googleapis.com", - "title": "Google Workspace Alert Center API", - "description": "Manages alerts on issues affecting your domain.", - "importDirectories": [ - "google/api", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.apps.alertcenter.v1beta1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/apps/alertcenter/v1beta1;alertcenter": 1 - } - }, - "objc_class_prefix": { - "valueCounts": { - "GAIC": 1 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Apps.AlertCenter.V1Beta1": 1 - } }, - "php_namespace": { - "valueCounts": { - "Google\\Apps\\AlertCenter\\V1beta1": 1 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Apps::AlertCenter::V1beta1": 1 - } - } - }, - "services": [ { - "shortName": "AlertCenterService", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService", + "shortName": "PredictionService", + "fullName": "google.cloud.aiplatform.v1.PredictionService", "methods": [ { - "shortName": "BatchDeleteAlerts", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.BatchDeleteAlerts", + "shortName": "Explain", + "fullName": "google.cloud.aiplatform.v1.PredictionService.Explain", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/alerts:batchDelete" + "path": "/v1/{endpoint=projects/*/locations/*/endpoints/*}:explain" } ] }, { - "shortName": "BatchUndeleteAlerts", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.BatchUndeleteAlerts", + "shortName": "Predict", + "fullName": "google.cloud.aiplatform.v1.PredictionService.Predict", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/alerts:batchUndelete" + "path": "/v1/{endpoint=projects/*/locations/*/endpoints/*}:predict" } ] }, { - "shortName": "CreateAlertFeedback", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.CreateAlertFeedback", + "shortName": "RawPredict", + "fullName": "google.cloud.aiplatform.v1.PredictionService.RawPredict", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/alerts/{alert_id}/feedback" + "path": "/v1/{endpoint=projects/*/locations/*/endpoints/*}:rawPredict" + } + ] + } + ] + }, + { + "shortName": "SpecialistPoolService", + "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService", + "methods": [ + { + "shortName": "CreateSpecialistPool", + "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService.CreateSpecialistPool", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/specialistPools" } ] }, { - "shortName": "DeleteAlert", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.DeleteAlert", + "shortName": "DeleteSpecialistPool", + "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService.DeleteSpecialistPool", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/alerts/{alert_id}" + "path": "/v1/{name=projects/*/locations/*/specialistPools/*}" } ] }, { - "shortName": "GetAlert", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.GetAlert", + "shortName": "GetSpecialistPool", + "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService.GetSpecialistPool", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/alerts/{alert_id}" + "path": "/v1/{name=projects/*/locations/*/specialistPools/*}" } ] }, { - "shortName": "GetAlertMetadata", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.GetAlertMetadata", + "shortName": "ListSpecialistPools", + "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService.ListSpecialistPools", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/alerts/{alert_id}/metadata" + "path": "/v1/{parent=projects/*/locations/*}/specialistPools" } ] }, { - "shortName": "GetSettings", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.GetSettings", + "shortName": "UpdateSpecialistPool", + "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService.UpdateSpecialistPool", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/settings" + "httpMethod": "PATCH", + "path": "/v1/{specialist_pool.name=projects/*/locations/*/specialistPools/*}" + } + ] + } + ] + }, + { + "shortName": "TensorboardService", + "fullName": "google.cloud.aiplatform.v1.TensorboardService", + "methods": [ + { + "shortName": "BatchCreateTensorboardRuns", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.BatchCreateTensorboardRuns", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs:batchCreate" } ] }, { - "shortName": "ListAlertFeedback", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.ListAlertFeedback", + "shortName": "BatchCreateTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.BatchCreateTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/alerts/{alert_id}/feedback" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs/*/timeSeries:batchCreate" } ] }, { - "shortName": "ListAlerts", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.ListAlerts", + "shortName": "BatchReadTensorboardTimeSeriesData", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.BatchReadTensorboardTimeSeriesData", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/alerts" + "path": "/v1/{tensorboard=projects/*/locations/*/tensorboards/*}/experiments/*/runs/*/timeSeries:batchRead" } ] }, { - "shortName": "UndeleteAlert", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.UndeleteAlert", + "shortName": "CreateTensorboard", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.CreateTensorboard", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/alerts/{alert_id}:undelete" + "path": "/v1/{parent=projects/*/locations/*}/tensorboards" } ] }, { - "shortName": "UpdateSettings", - "fullName": "google.apps.alertcenter.v1beta1.AlertCenterService.UpdateSettings", + "shortName": "CreateTensorboardExperiment", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.CreateTensorboardExperiment", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/settings" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/tensorboards/*}/experiments" } ] - } - ] - } - ] - }, - { - "id": "google.apps.drive.activity.v2", - "directory": "google/apps/drive/activity/v2", - "version": "v2", - "majorVersion": "v2", - "hostName": "driveactivity.googleapis.com", - "title": "Drive Activity API", - "description": "Provides a historical view of activity in Google Drive.", - "importDirectories": [ - "google/api", - "google/apps/drive/activity/v2", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.apps.drive.activity.v2": 7 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 7 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/apps/drive/activity/v2;activity": 7 - } - }, - "objc_class_prefix": { - "valueCounts": { - "GADA": 7 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Apps.Drive.Activity.V2": 7 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Apps\\Drive\\Activity\\V2": 7 - } - } - }, - "services": [ - { - "shortName": "DriveActivityService", - "fullName": "google.apps.drive.activity.v2.DriveActivityService", - "methods": [ + }, { - "shortName": "QueryDriveActivity", - "fullName": "google.apps.drive.activity.v2.DriveActivityService.QueryDriveActivity", + "shortName": "CreateTensorboardRun", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.CreateTensorboardRun", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/activity:query" + "path": "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs" } ] - } - ] - } - ] - }, - { - "id": "google.apps.market.v2", - "directory": "google/apps/market/v2", - "version": "v2", - "majorVersion": "v2", - "hostName": "appsmarket.googleapis.com", - "title": "Google Workspace Marketplace API", - "description": "Lets your Google Workspace Marketplace applications integrate with Google's licensing and billing services.", - "importDirectories": [ - "google/api", - "google/apps/market/v2" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.ccc.hosted.marketplace.v2": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/ccc/hosted/marketplace/v2;marketplace": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Apps\\Market\\V2": 2 - } - } - }, - "services": [ - { - "shortName": "CustomerLicenseService", - "fullName": "ccc.hosted.marketplace.v2.CustomerLicenseService", - "methods": [ + }, { - "shortName": "Get", - "fullName": "ccc.hosted.marketplace.v2.CustomerLicenseService.Get", + "shortName": "CreateTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.CreateTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/appsmarket/v2/customerLicense/{application_id}/{customer_id}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/timeSeries" } ] - } - ] - }, - { - "shortName": "LicenseNotificationService", - "fullName": "ccc.hosted.marketplace.v2.LicenseNotificationService", - "methods": [ + }, { - "shortName": "List", - "fullName": "ccc.hosted.marketplace.v2.LicenseNotificationService.List", + "shortName": "DeleteTensorboard", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.DeleteTensorboard", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/appsmarket/v2/licenseNotification/{application_id}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/tensorboards/*}" } ] - } - ] - }, - { - "shortName": "UserLicenseService", - "fullName": "ccc.hosted.marketplace.v2.UserLicenseService", - "methods": [ + }, { - "shortName": "Get", - "fullName": "ccc.hosted.marketplace.v2.UserLicenseService.Get", + "shortName": "DeleteTensorboardExperiment", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.DeleteTensorboardExperiment", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/appsmarket/v2/userLicense/{application_id}/{user_id}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*}" } ] - } - ] - } - ] - }, - { - "id": "google.area120.tables.v1alpha1", - "directory": "google/area120/tables/v1alpha1", - "version": "v1alpha1", - "majorVersion": "v1", - "hostName": "area120tables.googleapis.com", - "title": "Area120 Tables API", - "description": "", - "importDirectories": [ - "google/api", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.area120.tables.v1alpha1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/area120/tables/v1alpha1;tables": 1 - } - } - }, - "services": [ - { - "shortName": "TablesService", - "fullName": "google.area120.tables.v1alpha1.TablesService", - "methods": [ + }, { - "shortName": "BatchCreateRows", - "fullName": "google.area120.tables.v1alpha1.TablesService.BatchCreateRows", + "shortName": "DeleteTensorboardRun", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.DeleteTensorboardRun", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha1/{parent=tables/*}/rows:batchCreate" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" } ] }, { - "shortName": "BatchDeleteRows", - "fullName": "google.area120.tables.v1alpha1.TablesService.BatchDeleteRows", + "shortName": "DeleteTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.DeleteTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha1/{parent=tables/*}/rows:batchDelete" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" } ] }, { - "shortName": "BatchUpdateRows", - "fullName": "google.area120.tables.v1alpha1.TablesService.BatchUpdateRows", + "shortName": "ExportTensorboardTimeSeriesData", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.ExportTensorboardTimeSeriesData", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha1/{parent=tables/*}/rows:batchUpdate" + "path": "/v1/{tensorboard_time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:exportTensorboardTimeSeries" } ] }, { - "shortName": "CreateRow", - "fullName": "google.area120.tables.v1alpha1.TablesService.CreateRow", + "shortName": "GetTensorboard", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.GetTensorboard", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha1/{parent=tables/*}/rows" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/tensorboards/*}" } ] }, { - "shortName": "DeleteRow", - "fullName": "google.area120.tables.v1alpha1.TablesService.DeleteRow", + "shortName": "GetTensorboardExperiment", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.GetTensorboardExperiment", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1alpha1/{name=tables/*/rows/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*}" } ] }, { - "shortName": "GetRow", - "fullName": "google.area120.tables.v1alpha1.TablesService.GetRow", + "shortName": "GetTensorboardRun", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.GetTensorboardRun", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha1/{name=tables/*/rows/*}" + "path": "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" } ] }, { - "shortName": "GetTable", - "fullName": "google.area120.tables.v1alpha1.TablesService.GetTable", + "shortName": "GetTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.GetTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha1/{name=tables/*}" + "path": "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" } ] }, { - "shortName": "GetWorkspace", - "fullName": "google.area120.tables.v1alpha1.TablesService.GetWorkspace", + "shortName": "ListTensorboardExperiments", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.ListTensorboardExperiments", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha1/{name=workspaces/*}" + "path": "/v1/{parent=projects/*/locations/*/tensorboards/*}/experiments" } ] }, { - "shortName": "ListRows", - "fullName": "google.area120.tables.v1alpha1.TablesService.ListRows", + "shortName": "ListTensorboardRuns", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.ListTensorboardRuns", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha1/{parent=tables/*}/rows" + "path": "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs" } ] }, { - "shortName": "ListTables", - "fullName": "google.area120.tables.v1alpha1.TablesService.ListTables", + "shortName": "ListTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.ListTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha1/tables" + "path": "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/timeSeries" } ] }, { - "shortName": "ListWorkspaces", - "fullName": "google.area120.tables.v1alpha1.TablesService.ListWorkspaces", + "shortName": "ListTensorboards", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.ListTensorboards", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha1/workspaces" + "path": "/v1/{parent=projects/*/locations/*}/tensorboards" } ] }, { - "shortName": "UpdateRow", - "fullName": "google.area120.tables.v1alpha1.TablesService.UpdateRow", - "mode": "UNARY", + "shortName": "ReadTensorboardBlobData", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.ReadTensorboardBlobData", + "mode": "SERVER_STREAMING", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha1/{row.name=tables/*/rows/*}" + "httpMethod": "GET", + "path": "/v1/{time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:readBlobData" } ] - } - ] - } - ] - }, - { - "id": "google.bigtable.admin.v2", - "directory": "google/bigtable/admin/v2", - "version": "v2", - "majorVersion": "v2", - "hostName": "bigtableadmin.googleapis.com", - "title": "Cloud Bigtable Admin API", - "description": "Administer your Cloud Bigtable tables and instances.", - "importDirectories": [ - "google/api", - "google/bigtable/admin/v2", - "google/iam/v1", - "google/longrunning", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.bigtable.admin.v2": 5 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 5 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/bigtable/admin/v2;admin": 5 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Bigtable.Admin.V2": 5 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\Bigtable\\Admin\\V2": 5 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::Bigtable::Admin::V2": 5 - } - } - }, - "services": [ - { - "shortName": "BigtableInstanceAdmin", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin", - "methods": [ + }, { - "shortName": "CreateAppProfile", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.CreateAppProfile", + "shortName": "ReadTensorboardTimeSeriesData", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.ReadTensorboardTimeSeriesData", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/instances/*}/appProfiles" + "httpMethod": "GET", + "path": "/v1/{tensorboard_time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:read" } ] }, { - "shortName": "CreateCluster", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.CreateCluster", + "shortName": "UpdateTensorboard", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.UpdateTensorboard", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/instances/*}/clusters" + "httpMethod": "PATCH", + "path": "/v1/{tensorboard.name=projects/*/locations/*/tensorboards/*}" } ] }, { - "shortName": "CreateInstance", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.CreateInstance", + "shortName": "UpdateTensorboardExperiment", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.UpdateTensorboardExperiment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*}/instances" + "httpMethod": "PATCH", + "path": "/v1/{tensorboard_experiment.name=projects/*/locations/*/tensorboards/*/experiments/*}" } ] }, { - "shortName": "DeleteAppProfile", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.DeleteAppProfile", + "shortName": "UpdateTensorboardRun", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.UpdateTensorboardRun", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/instances/*/appProfiles/*}" + "httpMethod": "PATCH", + "path": "/v1/{tensorboard_run.name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" } ] }, { - "shortName": "DeleteCluster", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.DeleteCluster", + "shortName": "UpdateTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.UpdateTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/instances/*/clusters/*}" + "httpMethod": "PATCH", + "path": "/v1/{tensorboard_time_series.name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" } ] }, { - "shortName": "DeleteInstance", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.DeleteInstance", + "shortName": "WriteTensorboardExperimentData", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.WriteTensorboardExperimentData", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/instances/*}" + "httpMethod": "POST", + "path": "/v1/{tensorboard_experiment=projects/*/locations/*/tensorboards/*/experiments/*}:write" } ] }, { - "shortName": "GetAppProfile", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.GetAppProfile", + "shortName": "WriteTensorboardRunData", + "fullName": "google.cloud.aiplatform.v1.TensorboardService.WriteTensorboardRunData", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/instances/*/appProfiles/*}" + "httpMethod": "POST", + "path": "/v1/{tensorboard_run=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}:write" } ] - }, + } + ] + }, + { + "shortName": "VizierService", + "fullName": "google.cloud.aiplatform.v1.VizierService", + "methods": [ { - "shortName": "GetCluster", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.GetCluster", + "shortName": "AddTrialMeasurement", + "fullName": "google.cloud.aiplatform.v1.VizierService.AddTrialMeasurement", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/instances/*/clusters/*}" + "httpMethod": "POST", + "path": "/v1/{trial_name=projects/*/locations/*/studies/*/trials/*}:addTrialMeasurement" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.GetIamPolicy", + "shortName": "CheckTrialEarlyStoppingState", + "fullName": "google.cloud.aiplatform.v1.VizierService.CheckTrialEarlyStoppingState", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{resource=projects/*/instances/*}:getIamPolicy" + "path": "/v1/{trial_name=projects/*/locations/*/studies/*/trials/*}:checkTrialEarlyStoppingState" } ] }, { - "shortName": "GetInstance", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.GetInstance", + "shortName": "CompleteTrial", + "fullName": "google.cloud.aiplatform.v1.VizierService.CompleteTrial", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/instances/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/studies/*/trials/*}:complete" } ] }, { - "shortName": "ListAppProfiles", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.ListAppProfiles", + "shortName": "CreateStudy", + "fullName": "google.cloud.aiplatform.v1.VizierService.CreateStudy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/instances/*}/appProfiles" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/studies" } ] }, { - "shortName": "ListClusters", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.ListClusters", + "shortName": "CreateTrial", + "fullName": "google.cloud.aiplatform.v1.VizierService.CreateTrial", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/instances/*}/clusters" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/studies/*}/trials" } ] }, { - "shortName": "ListInstances", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.ListInstances", + "shortName": "DeleteStudy", + "fullName": "google.cloud.aiplatform.v1.VizierService.DeleteStudy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*}/instances" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/studies/*}" } ] }, { - "shortName": "PartialUpdateInstance", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.PartialUpdateInstance", + "shortName": "DeleteTrial", + "fullName": "google.cloud.aiplatform.v1.VizierService.DeleteTrial", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{instance.name=projects/*/instances/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/studies/*/trials/*}" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.SetIamPolicy", + "shortName": "GetStudy", + "fullName": "google.cloud.aiplatform.v1.VizierService.GetStudy", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{resource=projects/*/instances/*}:setIamPolicy" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/studies/*}" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.TestIamPermissions", + "shortName": "GetTrial", + "fullName": "google.cloud.aiplatform.v1.VizierService.GetTrial", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{resource=projects/*/instances/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/studies/*/trials/*}" } ] }, { - "shortName": "UpdateAppProfile", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.UpdateAppProfile", + "shortName": "ListOptimalTrials", + "fullName": "google.cloud.aiplatform.v1.VizierService.ListOptimalTrials", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{app_profile.name=projects/*/instances/*/appProfiles/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/studies/*}/trials:listOptimalTrials" } ] }, { - "shortName": "UpdateCluster", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.UpdateCluster", + "shortName": "ListStudies", + "fullName": "google.cloud.aiplatform.v1.VizierService.ListStudies", "mode": "UNARY", "bindings": [ { - "httpMethod": "PUT", - "path": "/v2/{name=projects/*/instances/*/clusters/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/studies" } ] }, { - "shortName": "UpdateInstance", - "fullName": "google.bigtable.admin.v2.BigtableInstanceAdmin.UpdateInstance", + "shortName": "ListTrials", + "fullName": "google.cloud.aiplatform.v1.VizierService.ListTrials", "mode": "UNARY", "bindings": [ { - "httpMethod": "PUT", - "path": "/v2/{name=projects/*/instances/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/studies/*}/trials" } ] - } - ] - }, - { - "shortName": "BigtableTableAdmin", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin", - "methods": [ + }, { - "shortName": "CheckConsistency", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.CheckConsistency", + "shortName": "LookupStudy", + "fullName": "google.cloud.aiplatform.v1.VizierService.LookupStudy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{name=projects/*/instances/*/tables/*}:checkConsistency" + "path": "/v1/{parent=projects/*/locations/*}/studies:lookup" } ] }, { - "shortName": "CreateBackup", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.CreateBackup", + "shortName": "StopTrial", + "fullName": "google.cloud.aiplatform.v1.VizierService.StopTrial", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/instances/*/clusters/*}/backups" + "path": "/v1/{name=projects/*/locations/*/studies/*/trials/*}:stop" } ] }, { - "shortName": "CreateTable", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.CreateTable", + "shortName": "SuggestTrials", + "fullName": "google.cloud.aiplatform.v1.VizierService.SuggestTrials", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/instances/*}/tables" + "path": "/v1/{parent=projects/*/locations/*/studies/*}/trials:suggest" } ] - }, + } + ] + } + ], + "configFile": "aiplatform_v1.yaml" + }, + { + "id": "google.cloud.aiplatform.v1beta1", + "directory": "google/cloud/aiplatform/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "aiplatform.googleapis.com", + "title": "Vertex AI API", + "description": "Train high-quality custom machine learning models with minimal machine learning expertise and effort.", + "importDirectories": [ + "google/api", + "google/cloud/aiplatform/v1beta1", + "google/cloud/aiplatform/v1beta1/schema", + "google/cloud/aiplatform/v1beta1/schema/predict/instance", + "google/cloud/aiplatform/v1beta1/schema/trainingjob/definition", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/type" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "": 44, + "Google.Cloud.AIPlatform.V1Beta1": 72 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1/schema/predict/instance;instance": 9, + "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1/schema/predict/params;params": 6, + "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1/schema/predict/prediction;prediction": 11, + "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1/schema/trainingjob/definition;definition": 12, + "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1/schema;schema": 6, + "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform": 72 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 116 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.aiplatform.v1beta1": 72, + "com.google.cloud.aiplatform.v1beta1.schema": 6, + "com.google.cloud.aiplatform.v1beta1.schema.predict.instance": 9, + "com.google.cloud.aiplatform.v1beta1.schema.predict.params": 6, + "com.google.cloud.aiplatform.v1beta1.schema.predict.prediction": 11, + "com.google.cloud.aiplatform.v1beta1.schema.trainingjob.definition": 12 + } + }, + "php_namespace": { + "valueCounts": { + "": 44, + "Google\\Cloud\\AIPlatform\\V1beta1": 72 + } + }, + "ruby_package": { + "valueCounts": { + "": 44, + "Google::Cloud::AIPlatform::V1beta1": 72 + } + } + }, + "services": [ + { + "shortName": "DatasetService", + "fullName": "google.cloud.aiplatform.v1beta1.DatasetService", + "methods": [ { - "shortName": "CreateTableFromSnapshot", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.CreateTableFromSnapshot", + "shortName": "CreateDataset", + "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.CreateDataset", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/instances/*}/tables:createFromSnapshot" + "path": "/v1beta1/{parent=projects/*/locations/*}/datasets" } ] }, { - "shortName": "DeleteBackup", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.DeleteBackup", + "shortName": "DeleteDataset", + "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.DeleteDataset", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/instances/*/clusters/*/backups/*}" + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}" } ] }, { - "shortName": "DeleteSnapshot", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.DeleteSnapshot", + "shortName": "ExportData", + "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.ExportData", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/instances/*/clusters/*/snapshots/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}:export" } ] }, { - "shortName": "DeleteTable", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.DeleteTable", + "shortName": "GetAnnotationSpec", + "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.GetAnnotationSpec", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/instances/*/tables/*}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}" } ] }, { - "shortName": "DropRowRange", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.DropRowRange", + "shortName": "GetDataset", + "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.GetDataset", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{name=projects/*/instances/*/tables/*}:dropRowRange" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}" } ] }, { - "shortName": "GenerateConsistencyToken", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.GenerateConsistencyToken", + "shortName": "ImportData", + "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.ImportData", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{name=projects/*/instances/*/tables/*}:generateConsistencyToken" + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}:import" } ] }, { - "shortName": "GetBackup", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.GetBackup", + "shortName": "ListAnnotations", + "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.ListAnnotations", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{name=projects/*/instances/*/clusters/*/backups/*}" + "path": "/v1beta1/{parent=projects/*/locations/*/datasets/*/dataItems/*}/annotations" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.GetIamPolicy", + "shortName": "ListDataItems", + "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.ListDataItems", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{resource=projects/*/instances/*/tables/*}:getIamPolicy" - }, - { - "httpMethod": "POST", - "path": "/v2/{resource=projects/*/instances/*/clusters/*/backups/*}:getIamPolicy" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/datasets/*}/dataItems" } ] }, { - "shortName": "GetSnapshot", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.GetSnapshot", + "shortName": "ListDatasets", + "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.ListDatasets", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{name=projects/*/instances/*/clusters/*/snapshots/*}" + "path": "/v1beta1/{parent=projects/*/locations/*}/datasets" } ] }, { - "shortName": "GetTable", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.GetTable", + "shortName": "UpdateDataset", + "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.UpdateDataset", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/instances/*/tables/*}" + "httpMethod": "PATCH", + "path": "/v1beta1/{dataset.name=projects/*/locations/*/datasets/*}" } ] - }, + } + ] + }, + { + "shortName": "EndpointService", + "fullName": "google.cloud.aiplatform.v1beta1.EndpointService", + "methods": [ { - "shortName": "ListBackups", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.ListBackups", + "shortName": "CreateEndpoint", + "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.CreateEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/instances/*/clusters/*}/backups" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/endpoints" } ] }, { - "shortName": "ListSnapshots", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.ListSnapshots", + "shortName": "DeleteEndpoint", + "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.DeleteEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/instances/*/clusters/*}/snapshots" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/endpoints/*}" } ] }, { - "shortName": "ListTables", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.ListTables", + "shortName": "DeployModel", + "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.DeployModel", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/instances/*}/tables" + "httpMethod": "POST", + "path": "/v1beta1/{endpoint=projects/*/locations/*/endpoints/*}:deployModel" } ] }, { - "shortName": "ModifyColumnFamilies", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.ModifyColumnFamilies", + "shortName": "GetEndpoint", + "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.GetEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{name=projects/*/instances/*/tables/*}:modifyColumnFamilies" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/endpoints/*}" } ] }, { - "shortName": "RestoreTable", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.RestoreTable", + "shortName": "ListEndpoints", + "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.ListEndpoints", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/instances/*}/tables:restore" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/endpoints" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.SetIamPolicy", + "shortName": "UndeployModel", + "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.UndeployModel", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{resource=projects/*/instances/*/tables/*}:setIamPolicy" - }, - { - "httpMethod": "POST", - "path": "/v2/{resource=projects/*/instances/*/clusters/*/backups/*}:setIamPolicy" + "path": "/v1beta1/{endpoint=projects/*/locations/*/endpoints/*}:undeployModel" } ] }, { - "shortName": "SnapshotTable", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.SnapshotTable", + "shortName": "UpdateEndpoint", + "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.UpdateEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{name=projects/*/instances/*/tables/*}:snapshot" + "httpMethod": "PATCH", + "path": "/v1beta1/{endpoint.name=projects/*/locations/*/endpoints/*}" } ] - }, + } + ] + }, + { + "shortName": "FeaturestoreOnlineServingService", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreOnlineServingService", + "methods": [ { - "shortName": "TestIamPermissions", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.TestIamPermissions", + "shortName": "ReadFeatureValues", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreOnlineServingService.ReadFeatureValues", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{resource=projects/*/instances/*/tables/*}:testIamPermissions" - }, - { - "httpMethod": "POST", - "path": "/v2/{resource=projects/*/instances/*/clusters/*/backups/*}:testIamPermissions" + "path": "/v1beta1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:readFeatureValues" } ] }, { - "shortName": "UpdateBackup", - "fullName": "google.bigtable.admin.v2.BigtableTableAdmin.UpdateBackup", - "mode": "UNARY", + "shortName": "StreamingReadFeatureValues", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreOnlineServingService.StreamingReadFeatureValues", + "mode": "SERVER_STREAMING", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{backup.name=projects/*/instances/*/clusters/*/backups/*}" + "httpMethod": "POST", + "path": "/v1beta1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:streamingReadFeatureValues" } ] } ] - } - ] - }, - { - "id": "google.bigtable.v2", - "directory": "google/bigtable/v2", - "version": "v2", - "majorVersion": "v2", - "hostName": "bigtable.googleapis.com", - "title": "Cloud Bigtable API", - "description": "API for reading and writing the contents of Bigtables associated with a cloud project.", - "importDirectories": [ - "google/api", - "google/bigtable/v2", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.bigtable.v2": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/bigtable/v2;bigtable": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Bigtable.V2": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\Bigtable\\V2": 2 - } }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::Bigtable::V2": 2 - } - } - }, - "services": [ { - "shortName": "Bigtable", - "fullName": "google.bigtable.v2.Bigtable", + "shortName": "FeaturestoreService", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService", "methods": [ { - "shortName": "CheckAndMutateRow", - "fullName": "google.bigtable.v2.Bigtable.CheckAndMutateRow", + "shortName": "BatchCreateFeatures", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.BatchCreateFeatures", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{table_name=projects/*/instances/*/tables/*}:checkAndMutateRow" + "path": "/v1beta1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features:batchCreate" } ] }, { - "shortName": "MutateRow", - "fullName": "google.bigtable.v2.Bigtable.MutateRow", + "shortName": "BatchReadFeatureValues", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.BatchReadFeatureValues", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{table_name=projects/*/instances/*/tables/*}:mutateRow" + "path": "/v1beta1/{featurestore=projects/*/locations/*/featurestores/*}:batchReadFeatureValues" } ] }, { - "shortName": "MutateRows", - "fullName": "google.bigtable.v2.Bigtable.MutateRows", - "mode": "SERVER_STREAMING", + "shortName": "CreateEntityType", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.CreateEntityType", + "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{table_name=projects/*/instances/*/tables/*}:mutateRows" + "path": "/v1beta1/{parent=projects/*/locations/*/featurestores/*}/entityTypes" } ] }, { - "shortName": "ReadModifyWriteRow", - "fullName": "google.bigtable.v2.Bigtable.ReadModifyWriteRow", + "shortName": "CreateFeature", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.CreateFeature", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{table_name=projects/*/instances/*/tables/*}:readModifyWriteRow" + "path": "/v1beta1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features" } ] }, { - "shortName": "ReadRows", - "fullName": "google.bigtable.v2.Bigtable.ReadRows", - "mode": "SERVER_STREAMING", + "shortName": "CreateFeaturestore", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.CreateFeaturestore", + "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{table_name=projects/*/instances/*/tables/*}:readRows" + "path": "/v1beta1/{parent=projects/*/locations/*}/featurestores" } ] }, { - "shortName": "SampleRowKeys", - "fullName": "google.bigtable.v2.Bigtable.SampleRowKeys", - "mode": "SERVER_STREAMING", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v2/{table_name=projects/*/instances/*/tables/*}:sampleRowKeys" + "shortName": "DeleteEntityType", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.DeleteEntityType", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*}" } ] - } - ] - } - ] - }, - { - "id": "google.chromeos.moblab.v1beta1", - "directory": "google/chromeos/moblab/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "chromeosmoblab.googleapis.com", - "title": "Chrome OS Moblab API", - "description": "Moblab API is an external-facing API that Moblabs deployed in remote external labs of Chrome OS partners can communicate with for various testing needs.", - "importDirectories": [ - "google/api", - "google/chromeos/moblab/v1beta1", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.chromeos.moblab.v1beta1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/chromeos/moblab/v1beta1;moblab": 2 - } - } - }, - "services": [ - { - "shortName": "BuildService", - "fullName": "google.chromeos.moblab.v1beta1.BuildService", - "methods": [ + }, { - "shortName": "CheckBuildStageStatus", - "fullName": "google.chromeos.moblab.v1beta1.BuildService.CheckBuildStageStatus", + "shortName": "DeleteFeature", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.DeleteFeature", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=buildTargets/*/models/*/builds/*/artifacts/*}:check" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" } ] }, { - "shortName": "ListBuilds", - "fullName": "google.chromeos.moblab.v1beta1.BuildService.ListBuilds", + "shortName": "DeleteFeaturestore", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.DeleteFeaturestore", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=buildTargets/*/models/*}/builds" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*}" } ] }, { - "shortName": "StageBuild", - "fullName": "google.chromeos.moblab.v1beta1.BuildService.StageBuild", + "shortName": "ExportFeatureValues", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.ExportFeatureValues", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=buildTargets/*/models/*/builds/*/artifacts/*}:stage" + "path": "/v1beta1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:exportFeatureValues" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.accessapproval.v1", - "directory": "google/cloud/accessapproval/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "accessapproval.googleapis.com", - "title": "Access Approval API", - "description": "An API for controlling access to data by Google personnel.", - "importDirectories": [ - "google/api", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.accessapproval.v1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/accessapproval/v1;accessapproval": 1 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.AccessApproval.V1": 1 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\AccessApproval\\V1": 1 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::AccessApproval::V1": 1 - } - } - }, - "services": [ - { - "shortName": "AccessApproval", - "fullName": "google.cloud.accessapproval.v1.AccessApproval", - "methods": [ + }, { - "shortName": "ApproveApprovalRequest", - "fullName": "google.cloud.accessapproval.v1.AccessApproval.ApproveApprovalRequest", + "shortName": "GetEntityType", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.GetEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/approvalRequests/*}:approve" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=folders/*/approvalRequests/*}:approve" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=organizations/*/approvalRequests/*}:approve" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*}" } ] }, { - "shortName": "DeleteAccessApprovalSettings", - "fullName": "google.cloud.accessapproval.v1.AccessApproval.DeleteAccessApprovalSettings", + "shortName": "GetFeature", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.GetFeature", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/accessApprovalSettings}" - }, - { - "httpMethod": "DELETE", - "path": "/v1/{name=folders/*/accessApprovalSettings}" - }, - { - "httpMethod": "DELETE", - "path": "/v1/{name=organizations/*/accessApprovalSettings}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" } ] }, { - "shortName": "DismissApprovalRequest", - "fullName": "google.cloud.accessapproval.v1.AccessApproval.DismissApprovalRequest", + "shortName": "GetFeaturestore", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.GetFeaturestore", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/approvalRequests/*}:dismiss" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=folders/*/approvalRequests/*}:dismiss" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=organizations/*/approvalRequests/*}:dismiss" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*}" } ] }, { - "shortName": "GetAccessApprovalSettings", - "fullName": "google.cloud.accessapproval.v1.AccessApproval.GetAccessApprovalSettings", + "shortName": "ImportFeatureValues", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.ImportFeatureValues", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/accessApprovalSettings}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=folders/*/accessApprovalSettings}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=organizations/*/accessApprovalSettings}" + "httpMethod": "POST", + "path": "/v1beta1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:importFeatureValues" } ] }, { - "shortName": "GetApprovalRequest", - "fullName": "google.cloud.accessapproval.v1.AccessApproval.GetApprovalRequest", + "shortName": "ListEntityTypes", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.ListEntityTypes", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/approvalRequests/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=folders/*/approvalRequests/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=organizations/*/approvalRequests/*}" + "path": "/v1beta1/{parent=projects/*/locations/*/featurestores/*}/entityTypes" } ] }, { - "shortName": "ListApprovalRequests", - "fullName": "google.cloud.accessapproval.v1.AccessApproval.ListApprovalRequests", + "shortName": "ListFeatures", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.ListFeatures", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/approvalRequests" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=folders/*}/approvalRequests" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=organizations/*}/approvalRequests" + "path": "/v1beta1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features" } ] }, { - "shortName": "UpdateAccessApprovalSettings", - "fullName": "google.cloud.accessapproval.v1.AccessApproval.UpdateAccessApprovalSettings", + "shortName": "ListFeaturestores", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.ListFeaturestores", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{settings.name=projects/*/accessApprovalSettings}" - }, - { - "httpMethod": "PATCH", - "path": "/v1/{settings.name=folders/*/accessApprovalSettings}" - }, - { - "httpMethod": "PATCH", - "path": "/v1/{settings.name=organizations/*/accessApprovalSettings}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/featurestores" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.aiplatform.v1", - "directory": "google/cloud/aiplatform/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "aiplatform.googleapis.com", - "title": "Vertex AI API", - "description": "Train high-quality custom machine learning models with minimal machine learning expertise and effort.", - "importDirectories": [ - "google/api", - "google/cloud/aiplatform/v1", - "google/cloud/aiplatform/v1/schema/trainingjob/definition", - "google/longrunning", - "google/protobuf", - "google/rpc", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.aiplatform.v1": 36, - "com.google.cloud.aiplatform.v1.schema.predict.instance": 9, - "com.google.cloud.aiplatform.v1.schema.predict.params": 6, - "com.google.cloud.aiplatform.v1.schema.predict.prediction": 10, - "com.google.cloud.aiplatform.v1.schema.trainingjob.definition": 11 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 72 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform": 36, - "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/instance;instance": 9, - "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/params;params": 6, - "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction": 10, - "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition": 11 - } - } - }, - "services": [ - { - "shortName": "DatasetService", - "fullName": "google.cloud.aiplatform.v1.DatasetService", - "methods": [ + }, { - "shortName": "CreateDataset", - "fullName": "google.cloud.aiplatform.v1.DatasetService.CreateDataset", + "shortName": "SearchFeatures", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.SearchFeatures", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/datasets" + "httpMethod": "GET", + "path": "/v1beta1/{location=projects/*/locations/*}/featurestores:searchFeatures" } ] }, { - "shortName": "DeleteDataset", - "fullName": "google.cloud.aiplatform.v1.DatasetService.DeleteDataset", + "shortName": "UpdateEntityType", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.UpdateEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/datasets/*}" + "httpMethod": "PATCH", + "path": "/v1beta1/{entity_type.name=projects/*/locations/*/featurestores/*/entityTypes/*}" } ] }, { - "shortName": "ExportData", - "fullName": "google.cloud.aiplatform.v1.DatasetService.ExportData", + "shortName": "UpdateFeature", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.UpdateFeature", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/datasets/*}:export" + "httpMethod": "PATCH", + "path": "/v1beta1/{feature.name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" } ] }, { - "shortName": "GetAnnotationSpec", - "fullName": "google.cloud.aiplatform.v1.DatasetService.GetAnnotationSpec", + "shortName": "UpdateFeaturestore", + "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.UpdateFeaturestore", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}" + "httpMethod": "PATCH", + "path": "/v1beta1/{featurestore.name=projects/*/locations/*/featurestores/*}" } ] - }, + } + ] + }, + { + "shortName": "IndexEndpointService", + "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService", + "methods": [ { - "shortName": "GetDataset", - "fullName": "google.cloud.aiplatform.v1.DatasetService.GetDataset", + "shortName": "CreateIndexEndpoint", + "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.CreateIndexEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/datasets/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/indexEndpoints" } ] }, { - "shortName": "ImportData", - "fullName": "google.cloud.aiplatform.v1.DatasetService.ImportData", + "shortName": "DeleteIndexEndpoint", + "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.DeleteIndexEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/datasets/*}:import" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/indexEndpoints/*}" } ] }, { - "shortName": "ListAnnotations", - "fullName": "google.cloud.aiplatform.v1.DatasetService.ListAnnotations", + "shortName": "DeployIndex", + "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.DeployIndex", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/datasets/*/dataItems/*}/annotations" + "httpMethod": "POST", + "path": "/v1beta1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:deployIndex" } ] }, { - "shortName": "ListDataItems", - "fullName": "google.cloud.aiplatform.v1.DatasetService.ListDataItems", + "shortName": "GetIndexEndpoint", + "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.GetIndexEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/datasets/*}/dataItems" + "path": "/v1beta1/{name=projects/*/locations/*/indexEndpoints/*}" } ] }, { - "shortName": "ListDatasets", - "fullName": "google.cloud.aiplatform.v1.DatasetService.ListDatasets", + "shortName": "ListIndexEndpoints", + "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.ListIndexEndpoints", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/datasets" + "path": "/v1beta1/{parent=projects/*/locations/*}/indexEndpoints" } ] }, { - "shortName": "UpdateDataset", - "fullName": "google.cloud.aiplatform.v1.DatasetService.UpdateDataset", + "shortName": "MutateDeployedIndex", + "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.MutateDeployedIndex", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{dataset.name=projects/*/locations/*/datasets/*}" + "httpMethod": "POST", + "path": "/v1beta1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:mutateDeployedIndex" } ] - } - ] - }, - { - "shortName": "EndpointService", - "fullName": "google.cloud.aiplatform.v1.EndpointService", - "methods": [ + }, { - "shortName": "CreateEndpoint", - "fullName": "google.cloud.aiplatform.v1.EndpointService.CreateEndpoint", + "shortName": "UndeployIndex", + "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.UndeployIndex", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/endpoints" + "path": "/v1beta1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:undeployIndex" } ] }, { - "shortName": "DeleteEndpoint", - "fullName": "google.cloud.aiplatform.v1.EndpointService.DeleteEndpoint", + "shortName": "UpdateIndexEndpoint", + "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.UpdateIndexEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/endpoints/*}" + "httpMethod": "PATCH", + "path": "/v1beta1/{index_endpoint.name=projects/*/locations/*/indexEndpoints/*}" } ] - }, + } + ] + }, + { + "shortName": "IndexService", + "fullName": "google.cloud.aiplatform.v1beta1.IndexService", + "methods": [ { - "shortName": "DeployModel", - "fullName": "google.cloud.aiplatform.v1.EndpointService.DeployModel", + "shortName": "CreateIndex", + "fullName": "google.cloud.aiplatform.v1beta1.IndexService.CreateIndex", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{endpoint=projects/*/locations/*/endpoints/*}:deployModel" + "path": "/v1beta1/{parent=projects/*/locations/*}/indexes" } ] }, { - "shortName": "GetEndpoint", - "fullName": "google.cloud.aiplatform.v1.EndpointService.GetEndpoint", + "shortName": "DeleteIndex", + "fullName": "google.cloud.aiplatform.v1beta1.IndexService.DeleteIndex", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/endpoints/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/indexes/*}" } ] }, { - "shortName": "ListEndpoints", - "fullName": "google.cloud.aiplatform.v1.EndpointService.ListEndpoints", + "shortName": "GetIndex", + "fullName": "google.cloud.aiplatform.v1beta1.IndexService.GetIndex", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/endpoints" + "path": "/v1beta1/{name=projects/*/locations/*/indexes/*}" } ] }, { - "shortName": "UndeployModel", - "fullName": "google.cloud.aiplatform.v1.EndpointService.UndeployModel", + "shortName": "ListIndexes", + "fullName": "google.cloud.aiplatform.v1beta1.IndexService.ListIndexes", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{endpoint=projects/*/locations/*/endpoints/*}:undeployModel" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/indexes" } ] }, { - "shortName": "UpdateEndpoint", - "fullName": "google.cloud.aiplatform.v1.EndpointService.UpdateEndpoint", + "shortName": "UpdateIndex", + "fullName": "google.cloud.aiplatform.v1beta1.IndexService.UpdateIndex", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{endpoint.name=projects/*/locations/*/endpoints/*}" + "path": "/v1beta1/{index.name=projects/*/locations/*/indexes/*}" } ] } @@ -16360,15406 +17554,29078 @@ }, { "shortName": "JobService", - "fullName": "google.cloud.aiplatform.v1.JobService", + "fullName": "google.cloud.aiplatform.v1beta1.JobService", "methods": [ { "shortName": "CancelBatchPredictionJob", - "fullName": "google.cloud.aiplatform.v1.JobService.CancelBatchPredictionJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.CancelBatchPredictionJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/batchPredictionJobs/*}:cancel" + "path": "/v1beta1/{name=projects/*/locations/*/batchPredictionJobs/*}:cancel" } ] }, { "shortName": "CancelCustomJob", - "fullName": "google.cloud.aiplatform.v1.JobService.CancelCustomJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.CancelCustomJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/customJobs/*}:cancel" + "path": "/v1beta1/{name=projects/*/locations/*/customJobs/*}:cancel" } ] }, { "shortName": "CancelDataLabelingJob", - "fullName": "google.cloud.aiplatform.v1.JobService.CancelDataLabelingJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.CancelDataLabelingJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/dataLabelingJobs/*}:cancel" + "path": "/v1beta1/{name=projects/*/locations/*/dataLabelingJobs/*}:cancel" } ] }, { "shortName": "CancelHyperparameterTuningJob", - "fullName": "google.cloud.aiplatform.v1.JobService.CancelHyperparameterTuningJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.CancelHyperparameterTuningJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}:cancel" + "path": "/v1beta1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}:cancel" } ] }, { "shortName": "CreateBatchPredictionJob", - "fullName": "google.cloud.aiplatform.v1.JobService.CreateBatchPredictionJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.CreateBatchPredictionJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/batchPredictionJobs" + "path": "/v1beta1/{parent=projects/*/locations/*}/batchPredictionJobs" } ] }, { "shortName": "CreateCustomJob", - "fullName": "google.cloud.aiplatform.v1.JobService.CreateCustomJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.CreateCustomJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/customJobs" + "path": "/v1beta1/{parent=projects/*/locations/*}/customJobs" } ] }, { "shortName": "CreateDataLabelingJob", - "fullName": "google.cloud.aiplatform.v1.JobService.CreateDataLabelingJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.CreateDataLabelingJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/dataLabelingJobs" + "path": "/v1beta1/{parent=projects/*/locations/*}/dataLabelingJobs" } ] }, { "shortName": "CreateHyperparameterTuningJob", - "fullName": "google.cloud.aiplatform.v1.JobService.CreateHyperparameterTuningJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.CreateHyperparameterTuningJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/hyperparameterTuningJobs" + "path": "/v1beta1/{parent=projects/*/locations/*}/hyperparameterTuningJobs" + } + ] + }, + { + "shortName": "CreateModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.CreateModelDeploymentMonitoringJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/modelDeploymentMonitoringJobs" } ] }, { "shortName": "DeleteBatchPredictionJob", - "fullName": "google.cloud.aiplatform.v1.JobService.DeleteBatchPredictionJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.DeleteBatchPredictionJob", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/batchPredictionJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/batchPredictionJobs/*}" } ] }, { "shortName": "DeleteCustomJob", - "fullName": "google.cloud.aiplatform.v1.JobService.DeleteCustomJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.DeleteCustomJob", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/customJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/customJobs/*}" } ] }, { "shortName": "DeleteDataLabelingJob", - "fullName": "google.cloud.aiplatform.v1.JobService.DeleteDataLabelingJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.DeleteDataLabelingJob", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/dataLabelingJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/dataLabelingJobs/*}" } ] }, { "shortName": "DeleteHyperparameterTuningJob", - "fullName": "google.cloud.aiplatform.v1.JobService.DeleteHyperparameterTuningJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.DeleteHyperparameterTuningJob", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}" + } + ] + }, + { + "shortName": "DeleteModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.DeleteModelDeploymentMonitoringJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" } ] }, { "shortName": "GetBatchPredictionJob", - "fullName": "google.cloud.aiplatform.v1.JobService.GetBatchPredictionJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.GetBatchPredictionJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/batchPredictionJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/batchPredictionJobs/*}" } ] }, { "shortName": "GetCustomJob", - "fullName": "google.cloud.aiplatform.v1.JobService.GetCustomJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.GetCustomJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/customJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/customJobs/*}" } ] }, { "shortName": "GetDataLabelingJob", - "fullName": "google.cloud.aiplatform.v1.JobService.GetDataLabelingJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.GetDataLabelingJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/dataLabelingJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/dataLabelingJobs/*}" } ] }, { "shortName": "GetHyperparameterTuningJob", - "fullName": "google.cloud.aiplatform.v1.JobService.GetHyperparameterTuningJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.GetHyperparameterTuningJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}" } ] }, { - "shortName": "ListBatchPredictionJobs", - "fullName": "google.cloud.aiplatform.v1.JobService.ListBatchPredictionJobs", + "shortName": "GetModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.GetModelDeploymentMonitoringJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/batchPredictionJobs" + "path": "/v1beta1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" } ] }, { - "shortName": "ListCustomJobs", - "fullName": "google.cloud.aiplatform.v1.JobService.ListCustomJobs", + "shortName": "ListBatchPredictionJobs", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.ListBatchPredictionJobs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/customJobs" + "path": "/v1beta1/{parent=projects/*/locations/*}/batchPredictionJobs" } ] }, { - "shortName": "ListDataLabelingJobs", - "fullName": "google.cloud.aiplatform.v1.JobService.ListDataLabelingJobs", + "shortName": "ListCustomJobs", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.ListCustomJobs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/dataLabelingJobs" + "path": "/v1beta1/{parent=projects/*/locations/*}/customJobs" } ] }, { - "shortName": "ListHyperparameterTuningJobs", - "fullName": "google.cloud.aiplatform.v1.JobService.ListHyperparameterTuningJobs", + "shortName": "ListDataLabelingJobs", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.ListDataLabelingJobs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/hyperparameterTuningJobs" + "path": "/v1beta1/{parent=projects/*/locations/*}/dataLabelingJobs" } ] - } - ] - }, - { - "shortName": "MigrationService", - "fullName": "google.cloud.aiplatform.v1.MigrationService", - "methods": [ + }, { - "shortName": "BatchMigrateResources", - "fullName": "google.cloud.aiplatform.v1.MigrationService.BatchMigrateResources", + "shortName": "ListHyperparameterTuningJobs", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.ListHyperparameterTuningJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/migratableResources:batchMigrate" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/hyperparameterTuningJobs" } ] }, { - "shortName": "SearchMigratableResources", - "fullName": "google.cloud.aiplatform.v1.MigrationService.SearchMigratableResources", + "shortName": "ListModelDeploymentMonitoringJobs", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.ListModelDeploymentMonitoringJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/migratableResources:search" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/modelDeploymentMonitoringJobs" } ] - } - ] - }, - { - "shortName": "ModelService", - "fullName": "google.cloud.aiplatform.v1.ModelService", - "methods": [ + }, { - "shortName": "DeleteModel", - "fullName": "google.cloud.aiplatform.v1.ModelService.DeleteModel", + "shortName": "PauseModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.PauseModelDeploymentMonitoringJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/models/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:pause" } ] }, { - "shortName": "ExportModel", - "fullName": "google.cloud.aiplatform.v1.ModelService.ExportModel", + "shortName": "ResumeModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.ResumeModelDeploymentMonitoringJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/models/*}:export" + "path": "/v1beta1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:resume" } ] }, { - "shortName": "GetModel", - "fullName": "google.cloud.aiplatform.v1.ModelService.GetModel", + "shortName": "SearchModelDeploymentMonitoringStatsAnomalies", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.SearchModelDeploymentMonitoringStatsAnomalies", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/models/*}" + "httpMethod": "POST", + "path": "/v1beta1/{model_deployment_monitoring_job=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:searchModelDeploymentMonitoringStatsAnomalies" } ] }, { - "shortName": "GetModelEvaluation", - "fullName": "google.cloud.aiplatform.v1.ModelService.GetModelEvaluation", + "shortName": "UpdateModelDeploymentMonitoringJob", + "fullName": "google.cloud.aiplatform.v1beta1.JobService.UpdateModelDeploymentMonitoringJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/models/*/evaluations/*}" + "httpMethod": "PATCH", + "path": "/v1beta1/{model_deployment_monitoring_job.name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" } ] - }, + } + ] + }, + { + "shortName": "MetadataService", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService", + "methods": [ { - "shortName": "GetModelEvaluationSlice", - "fullName": "google.cloud.aiplatform.v1.ModelService.GetModelEvaluationSlice", + "shortName": "AddContextArtifactsAndExecutions", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.AddContextArtifactsAndExecutions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/models/*/evaluations/*/slices/*}" + "httpMethod": "POST", + "path": "/v1beta1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:addContextArtifactsAndExecutions" } ] }, { - "shortName": "ListModelEvaluations", - "fullName": "google.cloud.aiplatform.v1.ModelService.ListModelEvaluations", + "shortName": "AddContextChildren", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.AddContextChildren", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/models/*}/evaluations" + "httpMethod": "POST", + "path": "/v1beta1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:addContextChildren" } ] }, { - "shortName": "ListModelEvaluationSlices", - "fullName": "google.cloud.aiplatform.v1.ModelService.ListModelEvaluationSlices", + "shortName": "AddExecutionEvents", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.AddExecutionEvents", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/models/*/evaluations/*}/slices" + "httpMethod": "POST", + "path": "/v1beta1/{execution=projects/*/locations/*/metadataStores/*/executions/*}:addExecutionEvents" } ] }, { - "shortName": "ListModels", - "fullName": "google.cloud.aiplatform.v1.ModelService.ListModels", + "shortName": "CreateArtifact", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.CreateArtifact", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/models" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/artifacts" } ] }, { - "shortName": "UpdateModel", - "fullName": "google.cloud.aiplatform.v1.ModelService.UpdateModel", + "shortName": "CreateContext", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.CreateContext", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{model.name=projects/*/locations/*/models/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/contexts" } ] }, { - "shortName": "UploadModel", - "fullName": "google.cloud.aiplatform.v1.ModelService.UploadModel", + "shortName": "CreateExecution", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.CreateExecution", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/models:upload" + "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/executions" } ] - } - ] - }, - { - "shortName": "PipelineService", - "fullName": "google.cloud.aiplatform.v1.PipelineService", - "methods": [ + }, { - "shortName": "CancelTrainingPipeline", - "fullName": "google.cloud.aiplatform.v1.PipelineService.CancelTrainingPipeline", + "shortName": "CreateMetadataSchema", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.CreateMetadataSchema", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/trainingPipelines/*}:cancel" + "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/metadataSchemas" } ] }, { - "shortName": "CreateTrainingPipeline", - "fullName": "google.cloud.aiplatform.v1.PipelineService.CreateTrainingPipeline", + "shortName": "CreateMetadataStore", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.CreateMetadataStore", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/trainingPipelines" + "path": "/v1beta1/{parent=projects/*/locations/*}/metadataStores" } ] }, { - "shortName": "DeleteTrainingPipeline", - "fullName": "google.cloud.aiplatform.v1.PipelineService.DeleteTrainingPipeline", + "shortName": "DeleteArtifact", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.DeleteArtifact", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/trainingPipelines/*}" + "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/artifacts/*}" } ] }, { - "shortName": "GetTrainingPipeline", - "fullName": "google.cloud.aiplatform.v1.PipelineService.GetTrainingPipeline", + "shortName": "DeleteContext", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.DeleteContext", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/trainingPipelines/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/contexts/*}" } ] }, { - "shortName": "ListTrainingPipelines", - "fullName": "google.cloud.aiplatform.v1.PipelineService.ListTrainingPipelines", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/trainingPipelines" - } - ] - } - ] - }, - { - "shortName": "PredictionService", - "fullName": "google.cloud.aiplatform.v1.PredictionService", - "methods": [ - { - "shortName": "Predict", - "fullName": "google.cloud.aiplatform.v1.PredictionService.Predict", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1/{endpoint=projects/*/locations/*/endpoints/*}:predict" - } - ] - } - ] - }, - { - "shortName": "SpecialistPoolService", - "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService", - "methods": [ - { - "shortName": "CreateSpecialistPool", - "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService.CreateSpecialistPool", + "shortName": "DeleteExecution", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.DeleteExecution", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/specialistPools" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/executions/*}" } ] }, { - "shortName": "DeleteSpecialistPool", - "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService.DeleteSpecialistPool", + "shortName": "DeleteMetadataStore", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.DeleteMetadataStore", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/specialistPools/*}" + "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*}" } ] }, { - "shortName": "GetSpecialistPool", - "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService.GetSpecialistPool", + "shortName": "GetArtifact", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.GetArtifact", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/specialistPools/*}" + "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/artifacts/*}" } ] }, { - "shortName": "ListSpecialistPools", - "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService.ListSpecialistPools", + "shortName": "GetContext", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.GetContext", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/specialistPools" + "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/contexts/*}" } ] }, { - "shortName": "UpdateSpecialistPool", - "fullName": "google.cloud.aiplatform.v1.SpecialistPoolService.UpdateSpecialistPool", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v1/{specialist_pool.name=projects/*/locations/*/specialistPools/*}" - } - ] - } - ] - } - ] - }, - { - "id": "google.cloud.aiplatform.v1beta1", - "directory": "google/cloud/aiplatform/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "aiplatform.googleapis.com", - "title": "Vertex AI API", - "description": "Train high-quality custom machine learning models with minimal machine learning expertise and effort.", - "importDirectories": [ - "google/api", - "google/cloud/aiplatform/v1beta1", - "google/cloud/aiplatform/v1beta1/schema", - "google/cloud/aiplatform/v1beta1/schema/trainingjob/definition", - "google/longrunning", - "google/protobuf", - "google/rpc", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.aiplatform.v1beta1": 71, - "com.google.cloud.aiplatform.v1beta1.schema": 5, - "com.google.cloud.aiplatform.v1beta1.schema.predict.instance": 9, - "com.google.cloud.aiplatform.v1beta1.schema.predict.params": 6, - "com.google.cloud.aiplatform.v1beta1.schema.predict.prediction": 11, - "com.google.cloud.aiplatform.v1beta1.schema.trainingjob.definition": 12 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 114 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform": 71, - "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1/schema;schema": 5, - "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1/schema/predict/instance;instance": 9, - "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1/schema/predict/params;params": 6, - "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1/schema/predict/prediction;prediction": 11, - "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1/schema/trainingjob/definition;definition": 12 - } - } - }, - "services": [ - { - "shortName": "DatasetService", - "fullName": "google.cloud.aiplatform.v1beta1.DatasetService", - "methods": [ - { - "shortName": "CreateDataset", - "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.CreateDataset", + "shortName": "GetExecution", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.GetExecution", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/datasets" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/executions/*}" } ] }, { - "shortName": "DeleteDataset", - "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.DeleteDataset", + "shortName": "GetMetadataSchema", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.GetMetadataSchema", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/metadataSchemas/*}" } ] }, { - "shortName": "ExportData", - "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.ExportData", + "shortName": "GetMetadataStore", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.GetMetadataStore", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}:export" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*}" } ] }, { - "shortName": "GetAnnotationSpec", - "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.GetAnnotationSpec", + "shortName": "ListArtifacts", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.ListArtifacts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}" + "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/artifacts" } ] }, { - "shortName": "GetDataset", - "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.GetDataset", + "shortName": "ListContexts", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.ListContexts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}" + "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/contexts" } ] }, { - "shortName": "ImportData", - "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.ImportData", + "shortName": "ListExecutions", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.ListExecutions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}:import" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/executions" } ] }, { - "shortName": "ListAnnotations", - "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.ListAnnotations", + "shortName": "ListMetadataSchemas", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.ListMetadataSchemas", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/datasets/*/dataItems/*}/annotations" + "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/metadataSchemas" } ] }, { - "shortName": "ListDataItems", - "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.ListDataItems", + "shortName": "ListMetadataStores", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.ListMetadataStores", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/datasets/*}/dataItems" + "path": "/v1beta1/{parent=projects/*/locations/*}/metadataStores" } ] }, { - "shortName": "ListDatasets", - "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.ListDatasets", + "shortName": "PurgeArtifacts", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.PurgeArtifacts", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/datasets" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/artifacts:purge" } ] }, { - "shortName": "UpdateDataset", - "fullName": "google.cloud.aiplatform.v1beta1.DatasetService.UpdateDataset", + "shortName": "PurgeContexts", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.PurgeContexts", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{dataset.name=projects/*/locations/*/datasets/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/contexts:purge" } ] - } - ] - }, - { - "shortName": "EndpointService", - "fullName": "google.cloud.aiplatform.v1beta1.EndpointService", - "methods": [ + }, { - "shortName": "CreateEndpoint", - "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.CreateEndpoint", + "shortName": "PurgeExecutions", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.PurgeExecutions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/endpoints" + "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/executions:purge" } ] }, { - "shortName": "DeleteEndpoint", - "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.DeleteEndpoint", + "shortName": "QueryArtifactLineageSubgraph", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.QueryArtifactLineageSubgraph", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/endpoints/*}" + "httpMethod": "GET", + "path": "/v1beta1/{artifact=projects/*/locations/*/metadataStores/*/artifacts/*}:queryArtifactLineageSubgraph" } ] }, { - "shortName": "DeployModel", - "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.DeployModel", + "shortName": "QueryContextLineageSubgraph", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.QueryContextLineageSubgraph", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{endpoint=projects/*/locations/*/endpoints/*}:deployModel" + "httpMethod": "GET", + "path": "/v1beta1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:queryContextLineageSubgraph" } ] }, { - "shortName": "GetEndpoint", - "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.GetEndpoint", + "shortName": "QueryExecutionInputsAndOutputs", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.QueryExecutionInputsAndOutputs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/endpoints/*}" + "path": "/v1beta1/{execution=projects/*/locations/*/metadataStores/*/executions/*}:queryExecutionInputsAndOutputs" } ] }, { - "shortName": "ListEndpoints", - "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.ListEndpoints", + "shortName": "UpdateArtifact", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.UpdateArtifact", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/endpoints" + "httpMethod": "PATCH", + "path": "/v1beta1/{artifact.name=projects/*/locations/*/metadataStores/*/artifacts/*}" } ] }, { - "shortName": "UndeployModel", - "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.UndeployModel", + "shortName": "UpdateContext", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.UpdateContext", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{endpoint=projects/*/locations/*/endpoints/*}:undeployModel" + "httpMethod": "PATCH", + "path": "/v1beta1/{context.name=projects/*/locations/*/metadataStores/*/contexts/*}" } ] }, { - "shortName": "UpdateEndpoint", - "fullName": "google.cloud.aiplatform.v1beta1.EndpointService.UpdateEndpoint", + "shortName": "UpdateExecution", + "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.UpdateExecution", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{endpoint.name=projects/*/locations/*/endpoints/*}" + "path": "/v1beta1/{execution.name=projects/*/locations/*/metadataStores/*/executions/*}" } ] } ] }, { - "shortName": "FeaturestoreOnlineServingService", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreOnlineServingService", + "shortName": "MigrationService", + "fullName": "google.cloud.aiplatform.v1beta1.MigrationService", "methods": [ { - "shortName": "ReadFeatureValues", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreOnlineServingService.ReadFeatureValues", + "shortName": "BatchMigrateResources", + "fullName": "google.cloud.aiplatform.v1beta1.MigrationService.BatchMigrateResources", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:readFeatureValues" + "path": "/v1beta1/{parent=projects/*/locations/*}/migratableResources:batchMigrate" } ] }, { - "shortName": "StreamingReadFeatureValues", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreOnlineServingService.StreamingReadFeatureValues", - "mode": "SERVER_STREAMING", + "shortName": "SearchMigratableResources", + "fullName": "google.cloud.aiplatform.v1beta1.MigrationService.SearchMigratableResources", + "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:streamingReadFeatureValues" + "path": "/v1beta1/{parent=projects/*/locations/*}/migratableResources:search" } ] } ] }, { - "shortName": "FeaturestoreService", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "shortName": "ModelService", + "fullName": "google.cloud.aiplatform.v1beta1.ModelService", "methods": [ { - "shortName": "BatchCreateFeatures", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.BatchCreateFeatures", + "shortName": "DeleteModel", + "fullName": "google.cloud.aiplatform.v1beta1.ModelService.DeleteModel", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features:batchCreate" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/models/*}" } ] }, { - "shortName": "BatchReadFeatureValues", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.BatchReadFeatureValues", + "shortName": "ExportModel", + "fullName": "google.cloud.aiplatform.v1beta1.ModelService.ExportModel", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{featurestore=projects/*/locations/*/featurestores/*}:batchReadFeatureValues" + "path": "/v1beta1/{name=projects/*/locations/*/models/*}:export" } ] }, { - "shortName": "CreateEntityType", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.CreateEntityType", + "shortName": "GetModel", + "fullName": "google.cloud.aiplatform.v1beta1.ModelService.GetModel", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/featurestores/*}/entityTypes" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/models/*}" } ] }, { - "shortName": "CreateFeature", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.CreateFeature", + "shortName": "GetModelEvaluation", + "fullName": "google.cloud.aiplatform.v1beta1.ModelService.GetModelEvaluation", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/models/*/evaluations/*}" } ] }, { - "shortName": "CreateFeaturestore", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.CreateFeaturestore", + "shortName": "GetModelEvaluationSlice", + "fullName": "google.cloud.aiplatform.v1beta1.ModelService.GetModelEvaluationSlice", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/featurestores" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/models/*/evaluations/*/slices/*}" } ] }, { - "shortName": "DeleteEntityType", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.DeleteEntityType", + "shortName": "ListModelEvaluationSlices", + "fullName": "google.cloud.aiplatform.v1beta1.ModelService.ListModelEvaluationSlices", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/models/*/evaluations/*}/slices" } ] }, { - "shortName": "DeleteFeature", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.DeleteFeature", + "shortName": "ListModelEvaluations", + "fullName": "google.cloud.aiplatform.v1beta1.ModelService.ListModelEvaluations", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/models/*}/evaluations" } ] }, { - "shortName": "DeleteFeaturestore", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.DeleteFeaturestore", + "shortName": "ListModels", + "fullName": "google.cloud.aiplatform.v1beta1.ModelService.ListModels", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/models" } ] }, { - "shortName": "ExportFeatureValues", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.ExportFeatureValues", + "shortName": "UpdateModel", + "fullName": "google.cloud.aiplatform.v1beta1.ModelService.UpdateModel", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:exportFeatureValues" + "httpMethod": "PATCH", + "path": "/v1beta1/{model.name=projects/*/locations/*/models/*}" } ] }, { - "shortName": "GetEntityType", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.GetEntityType", + "shortName": "UploadModel", + "fullName": "google.cloud.aiplatform.v1beta1.ModelService.UploadModel", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/models:upload" } ] - }, + } + ] + }, + { + "shortName": "PipelineService", + "fullName": "google.cloud.aiplatform.v1beta1.PipelineService", + "methods": [ { - "shortName": "GetFeature", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.GetFeature", + "shortName": "CancelPipelineJob", + "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.CancelPipelineJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/pipelineJobs/*}:cancel" } ] }, { - "shortName": "GetFeaturestore", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.GetFeaturestore", + "shortName": "CancelTrainingPipeline", + "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.CancelTrainingPipeline", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/featurestores/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/trainingPipelines/*}:cancel" } ] }, { - "shortName": "ImportFeatureValues", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.ImportFeatureValues", + "shortName": "CreatePipelineJob", + "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.CreatePipelineJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:importFeatureValues" + "path": "/v1beta1/{parent=projects/*/locations/*}/pipelineJobs" } ] }, { - "shortName": "ListEntityTypes", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.ListEntityTypes", + "shortName": "CreateTrainingPipeline", + "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.CreateTrainingPipeline", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/featurestores/*}/entityTypes" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/trainingPipelines" } ] }, { - "shortName": "ListFeatures", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.ListFeatures", + "shortName": "DeletePipelineJob", + "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.DeletePipelineJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/pipelineJobs/*}" } ] }, { - "shortName": "ListFeaturestores", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.ListFeaturestores", + "shortName": "DeleteTrainingPipeline", + "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.DeleteTrainingPipeline", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/featurestores" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/trainingPipelines/*}" } ] }, { - "shortName": "SearchFeatures", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.SearchFeatures", + "shortName": "GetPipelineJob", + "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.GetPipelineJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{location=projects/*/locations/*}/featurestores:searchFeatures" + "path": "/v1beta1/{name=projects/*/locations/*/pipelineJobs/*}" } ] }, { - "shortName": "UpdateEntityType", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.UpdateEntityType", + "shortName": "GetTrainingPipeline", + "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.GetTrainingPipeline", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{entity_type.name=projects/*/locations/*/featurestores/*/entityTypes/*}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/trainingPipelines/*}" } ] }, { - "shortName": "UpdateFeature", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.UpdateFeature", + "shortName": "ListPipelineJobs", + "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.ListPipelineJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{feature.name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/pipelineJobs" } ] }, { - "shortName": "UpdateFeaturestore", - "fullName": "google.cloud.aiplatform.v1beta1.FeaturestoreService.UpdateFeaturestore", + "shortName": "ListTrainingPipelines", + "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.ListTrainingPipelines", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{featurestore.name=projects/*/locations/*/featurestores/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/trainingPipelines" } ] } ] }, { - "shortName": "IndexEndpointService", - "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService", + "shortName": "PredictionService", + "fullName": "google.cloud.aiplatform.v1beta1.PredictionService", "methods": [ { - "shortName": "CreateIndexEndpoint", - "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.CreateIndexEndpoint", + "shortName": "Explain", + "fullName": "google.cloud.aiplatform.v1beta1.PredictionService.Explain", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/indexEndpoints" - } - ] - }, - { - "shortName": "DeleteIndexEndpoint", - "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.DeleteIndexEndpoint", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/indexEndpoints/*}" + "path": "/v1beta1/{endpoint=projects/*/locations/*/endpoints/*}:explain" } ] }, { - "shortName": "DeployIndex", - "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.DeployIndex", + "shortName": "Predict", + "fullName": "google.cloud.aiplatform.v1beta1.PredictionService.Predict", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:deployIndex" - } - ] - }, - { - "shortName": "GetIndexEndpoint", - "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.GetIndexEndpoint", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/indexEndpoints/*}" - } - ] - }, - { - "shortName": "ListIndexEndpoints", - "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.ListIndexEndpoints", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/indexEndpoints" + "path": "/v1beta1/{endpoint=projects/*/locations/*/endpoints/*}:predict" } ] }, { - "shortName": "UndeployIndex", - "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.UndeployIndex", + "shortName": "RawPredict", + "fullName": "google.cloud.aiplatform.v1beta1.PredictionService.RawPredict", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:undeployIndex" - } - ] - }, - { - "shortName": "UpdateIndexEndpoint", - "fullName": "google.cloud.aiplatform.v1beta1.IndexEndpointService.UpdateIndexEndpoint", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v1beta1/{index_endpoint.name=projects/*/locations/*/indexEndpoints/*}" + "path": "/v1beta1/{endpoint=projects/*/locations/*/endpoints/*}:rawPredict" } ] } ] }, { - "shortName": "IndexService", - "fullName": "google.cloud.aiplatform.v1beta1.IndexService", + "shortName": "SpecialistPoolService", + "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService", "methods": [ { - "shortName": "CreateIndex", - "fullName": "google.cloud.aiplatform.v1beta1.IndexService.CreateIndex", + "shortName": "CreateSpecialistPool", + "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService.CreateSpecialistPool", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/indexes" + "path": "/v1beta1/{parent=projects/*/locations/*}/specialistPools" } ] }, { - "shortName": "DeleteIndex", - "fullName": "google.cloud.aiplatform.v1beta1.IndexService.DeleteIndex", + "shortName": "DeleteSpecialistPool", + "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService.DeleteSpecialistPool", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/indexes/*}" + "path": "/v1beta1/{name=projects/*/locations/*/specialistPools/*}" } ] }, { - "shortName": "GetIndex", - "fullName": "google.cloud.aiplatform.v1beta1.IndexService.GetIndex", + "shortName": "GetSpecialistPool", + "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService.GetSpecialistPool", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/indexes/*}" + "path": "/v1beta1/{name=projects/*/locations/*/specialistPools/*}" } ] }, { - "shortName": "ListIndexes", - "fullName": "google.cloud.aiplatform.v1beta1.IndexService.ListIndexes", + "shortName": "ListSpecialistPools", + "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService.ListSpecialistPools", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/indexes" + "path": "/v1beta1/{parent=projects/*/locations/*}/specialistPools" } ] }, { - "shortName": "UpdateIndex", - "fullName": "google.cloud.aiplatform.v1beta1.IndexService.UpdateIndex", + "shortName": "UpdateSpecialistPool", + "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService.UpdateSpecialistPool", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{index.name=projects/*/locations/*/indexes/*}" + "path": "/v1beta1/{specialist_pool.name=projects/*/locations/*/specialistPools/*}" } ] } ] }, { - "shortName": "JobService", - "fullName": "google.cloud.aiplatform.v1beta1.JobService", + "shortName": "TensorboardService", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService", "methods": [ { - "shortName": "CancelBatchPredictionJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.CancelBatchPredictionJob", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/batchPredictionJobs/*}:cancel" - } - ] - }, - { - "shortName": "CancelCustomJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.CancelCustomJob", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/customJobs/*}:cancel" - } - ] - }, - { - "shortName": "CancelDataLabelingJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.CancelDataLabelingJob", + "shortName": "BatchCreateTensorboardRuns", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardRuns", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/dataLabelingJobs/*}:cancel" + "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs:batchCreate" } ] }, { - "shortName": "CancelHyperparameterTuningJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.CancelHyperparameterTuningJob", + "shortName": "BatchCreateTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}:cancel" + "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs/*/timeSeries:batchCreate" } ] }, { - "shortName": "CreateBatchPredictionJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.CreateBatchPredictionJob", + "shortName": "BatchReadTensorboardTimeSeriesData", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.BatchReadTensorboardTimeSeriesData", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/batchPredictionJobs" + "httpMethod": "GET", + "path": "/v1beta1/{tensorboard=projects/*/locations/*/tensorboards/*}/experiments/*/runs/*/timeSeries:batchRead" } ] }, { - "shortName": "CreateCustomJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.CreateCustomJob", + "shortName": "CreateTensorboard", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboard", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/customJobs" + "path": "/v1beta1/{parent=projects/*/locations/*}/tensorboards" } ] }, { - "shortName": "CreateDataLabelingJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.CreateDataLabelingJob", + "shortName": "CreateTensorboardExperiment", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/dataLabelingJobs" + "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*}/experiments" } ] }, { - "shortName": "CreateHyperparameterTuningJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.CreateHyperparameterTuningJob", + "shortName": "CreateTensorboardRun", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardRun", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/hyperparameterTuningJobs" + "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs" } ] }, { - "shortName": "CreateModelDeploymentMonitoringJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.CreateModelDeploymentMonitoringJob", + "shortName": "CreateTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/modelDeploymentMonitoringJobs" + "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/timeSeries" } ] }, { - "shortName": "DeleteBatchPredictionJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.DeleteBatchPredictionJob", + "shortName": "DeleteTensorboard", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboard", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/batchPredictionJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*}" } ] }, { - "shortName": "DeleteCustomJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.DeleteCustomJob", + "shortName": "DeleteTensorboardExperiment", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/customJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*}" } ] }, { - "shortName": "DeleteDataLabelingJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.DeleteDataLabelingJob", + "shortName": "DeleteTensorboardRun", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardRun", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/dataLabelingJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" } ] }, { - "shortName": "DeleteHyperparameterTuningJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.DeleteHyperparameterTuningJob", + "shortName": "DeleteTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" } ] }, { - "shortName": "DeleteModelDeploymentMonitoringJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.DeleteModelDeploymentMonitoringJob", + "shortName": "ExportTensorboardTimeSeriesData", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" + "httpMethod": "POST", + "path": "/v1beta1/{tensorboard_time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:exportTensorboardTimeSeries" } ] }, { - "shortName": "GetBatchPredictionJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.GetBatchPredictionJob", + "shortName": "GetTensorboard", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboard", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/batchPredictionJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*}" } ] }, { - "shortName": "GetCustomJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.GetCustomJob", + "shortName": "GetTensorboardExperiment", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/customJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*}" } ] }, { - "shortName": "GetDataLabelingJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.GetDataLabelingJob", + "shortName": "GetTensorboardRun", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardRun", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/dataLabelingJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" } ] }, { - "shortName": "GetHyperparameterTuningJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.GetHyperparameterTuningJob", + "shortName": "GetTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" } ] }, { - "shortName": "GetModelDeploymentMonitoringJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.GetModelDeploymentMonitoringJob", + "shortName": "ListTensorboardExperiments", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" + "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*}/experiments" } ] }, { - "shortName": "ListBatchPredictionJobs", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.ListBatchPredictionJobs", + "shortName": "ListTensorboardRuns", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/batchPredictionJobs" + "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs" } ] }, { - "shortName": "ListCustomJobs", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.ListCustomJobs", + "shortName": "ListTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/customJobs" + "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/timeSeries" } ] }, { - "shortName": "ListDataLabelingJobs", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.ListDataLabelingJobs", + "shortName": "ListTensorboards", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/dataLabelingJobs" + "path": "/v1beta1/{parent=projects/*/locations/*}/tensorboards" } ] }, { - "shortName": "ListHyperparameterTuningJobs", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.ListHyperparameterTuningJobs", - "mode": "UNARY", + "shortName": "ReadTensorboardBlobData", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardBlobData", + "mode": "SERVER_STREAMING", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/hyperparameterTuningJobs" + "path": "/v1beta1/{time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:readBlobData" } ] }, { - "shortName": "ListModelDeploymentMonitoringJobs", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.ListModelDeploymentMonitoringJobs", + "shortName": "ReadTensorboardTimeSeriesData", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardTimeSeriesData", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/modelDeploymentMonitoringJobs" + "path": "/v1beta1/{tensorboard_time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:read" } ] }, { - "shortName": "PauseModelDeploymentMonitoringJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.PauseModelDeploymentMonitoringJob", + "shortName": "UpdateTensorboard", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboard", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:pause" + "httpMethod": "PATCH", + "path": "/v1beta1/{tensorboard.name=projects/*/locations/*/tensorboards/*}" } ] }, { - "shortName": "ResumeModelDeploymentMonitoringJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.ResumeModelDeploymentMonitoringJob", + "shortName": "UpdateTensorboardExperiment", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardExperiment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:resume" + "httpMethod": "PATCH", + "path": "/v1beta1/{tensorboard_experiment.name=projects/*/locations/*/tensorboards/*/experiments/*}" } ] }, { - "shortName": "SearchModelDeploymentMonitoringStatsAnomalies", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.SearchModelDeploymentMonitoringStatsAnomalies", + "shortName": "UpdateTensorboardRun", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardRun", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{model_deployment_monitoring_job=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:searchModelDeploymentMonitoringStatsAnomalies" + "httpMethod": "PATCH", + "path": "/v1beta1/{tensorboard_run.name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" } ] }, { - "shortName": "UpdateModelDeploymentMonitoringJob", - "fullName": "google.cloud.aiplatform.v1beta1.JobService.UpdateModelDeploymentMonitoringJob", + "shortName": "UpdateTensorboardTimeSeries", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardTimeSeries", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{model_deployment_monitoring_job.name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" - } - ] - } - ] - }, - { - "shortName": "MetadataService", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService", - "methods": [ - { - "shortName": "AddContextArtifactsAndExecutions", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.AddContextArtifactsAndExecutions", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1beta1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:addContextArtifactsAndExecutions" + "path": "/v1beta1/{tensorboard_time_series.name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" } ] }, { - "shortName": "AddContextChildren", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.AddContextChildren", + "shortName": "WriteTensorboardExperimentData", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardExperimentData", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:addContextChildren" + "path": "/v1beta1/{tensorboard_experiment=projects/*/locations/*/tensorboards/*/experiments/*}:write" } ] }, { - "shortName": "AddExecutionEvents", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.AddExecutionEvents", + "shortName": "WriteTensorboardRunData", + "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardRunData", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{execution=projects/*/locations/*/metadataStores/*/executions/*}:addExecutionEvents" + "path": "/v1beta1/{tensorboard_run=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}:write" } ] - }, + } + ] + }, + { + "shortName": "VizierService", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService", + "methods": [ { - "shortName": "CreateArtifact", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.CreateArtifact", + "shortName": "AddTrialMeasurement", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.AddTrialMeasurement", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/artifacts" + "path": "/v1beta1/{trial_name=projects/*/locations/*/studies/*/trials/*}:addTrialMeasurement" } ] }, { - "shortName": "CreateContext", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.CreateContext", + "shortName": "CheckTrialEarlyStoppingState", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.CheckTrialEarlyStoppingState", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/contexts" + "path": "/v1beta1/{trial_name=projects/*/locations/*/studies/*/trials/*}:checkTrialEarlyStoppingState" } ] }, { - "shortName": "CreateExecution", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.CreateExecution", + "shortName": "CompleteTrial", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.CompleteTrial", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/executions" + "path": "/v1beta1/{name=projects/*/locations/*/studies/*/trials/*}:complete" } ] }, { - "shortName": "CreateMetadataSchema", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.CreateMetadataSchema", + "shortName": "CreateStudy", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.CreateStudy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/metadataSchemas" + "path": "/v1beta1/{parent=projects/*/locations/*}/studies" } ] }, { - "shortName": "CreateMetadataStore", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.CreateMetadataStore", + "shortName": "CreateTrial", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.CreateTrial", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/metadataStores" + "path": "/v1beta1/{parent=projects/*/locations/*/studies/*}/trials" } ] }, { - "shortName": "DeleteContext", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.DeleteContext", + "shortName": "DeleteStudy", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.DeleteStudy", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/contexts/*}" + "path": "/v1beta1/{name=projects/*/locations/*/studies/*}" } ] }, { - "shortName": "DeleteMetadataStore", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.DeleteMetadataStore", + "shortName": "DeleteTrial", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.DeleteTrial", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*}" - } - ] - }, - { - "shortName": "GetArtifact", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.GetArtifact", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/artifacts/*}" + "path": "/v1beta1/{name=projects/*/locations/*/studies/*/trials/*}" } ] }, { - "shortName": "GetContext", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.GetContext", + "shortName": "GetStudy", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.GetStudy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/contexts/*}" + "path": "/v1beta1/{name=projects/*/locations/*/studies/*}" } ] }, { - "shortName": "GetExecution", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.GetExecution", + "shortName": "GetTrial", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.GetTrial", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/executions/*}" + "path": "/v1beta1/{name=projects/*/locations/*/studies/*/trials/*}" } ] }, { - "shortName": "GetMetadataSchema", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.GetMetadataSchema", + "shortName": "ListOptimalTrials", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.ListOptimalTrials", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*/metadataSchemas/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/studies/*}/trials:listOptimalTrials" } ] }, { - "shortName": "GetMetadataStore", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.GetMetadataStore", + "shortName": "ListStudies", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.ListStudies", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/metadataStores/*}" + "path": "/v1beta1/{parent=projects/*/locations/*}/studies" } ] }, { - "shortName": "ListArtifacts", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.ListArtifacts", + "shortName": "ListTrials", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.ListTrials", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/artifacts" + "path": "/v1beta1/{parent=projects/*/locations/*/studies/*}/trials" } ] }, { - "shortName": "ListContexts", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.ListContexts", + "shortName": "LookupStudy", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.LookupStudy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/contexts" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/studies:lookup" } ] }, { - "shortName": "ListExecutions", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.ListExecutions", + "shortName": "StopTrial", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.StopTrial", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/executions" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/studies/*/trials/*}:stop" } ] }, { - "shortName": "ListMetadataSchemas", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.ListMetadataSchemas", + "shortName": "SuggestTrials", + "fullName": "google.cloud.aiplatform.v1beta1.VizierService.SuggestTrials", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/metadataSchemas" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/studies/*}/trials:suggest" } ] - }, - { - "shortName": "ListMetadataStores", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.ListMetadataStores", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/metadataStores" - } - ] - }, + } + ] + } + ], + "configFile": "aiplatform_v1beta1.yaml" + }, + { + "id": "google.cloud.apigateway.v1", + "directory": "google/cloud/apigateway/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "apigateway.googleapis.com", + "title": "API Gateway API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/apigateway/v1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.ApiGateway.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/apigateway/v1;apigateway": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.apigateway.v1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\ApiGateway\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::ApiGateway::V1": 2 + } + } + }, + "services": [ + { + "shortName": "ApiGatewayService", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService", + "methods": [ { - "shortName": "QueryArtifactLineageSubgraph", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.QueryArtifactLineageSubgraph", + "shortName": "CreateApi", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.CreateApi", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{artifact=projects/*/locations/*/metadataStores/*/artifacts/*}:queryArtifactLineageSubgraph" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/apis" } ] }, { - "shortName": "QueryContextLineageSubgraph", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.QueryContextLineageSubgraph", + "shortName": "CreateApiConfig", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.CreateApiConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:queryContextLineageSubgraph" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/apis/*}/configs" } ] }, { - "shortName": "QueryExecutionInputsAndOutputs", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.QueryExecutionInputsAndOutputs", + "shortName": "CreateGateway", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.CreateGateway", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{execution=projects/*/locations/*/metadataStores/*/executions/*}:queryExecutionInputsAndOutputs" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/gateways" } ] }, { - "shortName": "UpdateArtifact", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.UpdateArtifact", + "shortName": "DeleteApi", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.DeleteApi", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{artifact.name=projects/*/locations/*/metadataStores/*/artifacts/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/apis/*}" } ] }, { - "shortName": "UpdateContext", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.UpdateContext", + "shortName": "DeleteApiConfig", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.DeleteApiConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{context.name=projects/*/locations/*/metadataStores/*/contexts/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/apis/*/configs/*}" } ] }, { - "shortName": "UpdateExecution", - "fullName": "google.cloud.aiplatform.v1beta1.MetadataService.UpdateExecution", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v1beta1/{execution.name=projects/*/locations/*/metadataStores/*/executions/*}" - } - ] - } - ] - }, - { - "shortName": "MigrationService", - "fullName": "google.cloud.aiplatform.v1beta1.MigrationService", - "methods": [ - { - "shortName": "BatchMigrateResources", - "fullName": "google.cloud.aiplatform.v1beta1.MigrationService.BatchMigrateResources", + "shortName": "DeleteGateway", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.DeleteGateway", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/migratableResources:batchMigrate" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/gateways/*}" } ] }, { - "shortName": "SearchMigratableResources", - "fullName": "google.cloud.aiplatform.v1beta1.MigrationService.SearchMigratableResources", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/migratableResources:search" - } - ] - } - ] - }, - { - "shortName": "ModelService", - "fullName": "google.cloud.aiplatform.v1beta1.ModelService", - "methods": [ - { - "shortName": "DeleteModel", - "fullName": "google.cloud.aiplatform.v1beta1.ModelService.DeleteModel", + "shortName": "GetApi", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.GetApi", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/models/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/apis/*}" } ] }, { - "shortName": "ExportModel", - "fullName": "google.cloud.aiplatform.v1beta1.ModelService.ExportModel", + "shortName": "GetApiConfig", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.GetApiConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/models/*}:export" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/apis/*/configs/*}" } ] }, { - "shortName": "GetModel", - "fullName": "google.cloud.aiplatform.v1beta1.ModelService.GetModel", + "shortName": "GetGateway", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.GetGateway", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/models/*}" + "path": "/v1/{name=projects/*/locations/*/gateways/*}" } ] }, { - "shortName": "GetModelEvaluation", - "fullName": "google.cloud.aiplatform.v1beta1.ModelService.GetModelEvaluation", + "shortName": "ListApiConfigs", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.ListApiConfigs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/models/*/evaluations/*}" + "path": "/v1/{parent=projects/*/locations/*/apis/*}/configs" } ] }, { - "shortName": "GetModelEvaluationSlice", - "fullName": "google.cloud.aiplatform.v1beta1.ModelService.GetModelEvaluationSlice", + "shortName": "ListApis", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.ListApis", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/models/*/evaluations/*/slices/*}" + "path": "/v1/{parent=projects/*/locations/*}/apis" } ] }, { - "shortName": "ListModelEvaluations", - "fullName": "google.cloud.aiplatform.v1beta1.ModelService.ListModelEvaluations", + "shortName": "ListGateways", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.ListGateways", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/models/*}/evaluations" + "path": "/v1/{parent=projects/*/locations/*}/gateways" } ] }, { - "shortName": "ListModelEvaluationSlices", - "fullName": "google.cloud.aiplatform.v1beta1.ModelService.ListModelEvaluationSlices", + "shortName": "UpdateApi", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.UpdateApi", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/models/*/evaluations/*}/slices" + "httpMethod": "PATCH", + "path": "/v1/{api.name=projects/*/locations/*/apis/*}" } ] }, { - "shortName": "ListModels", - "fullName": "google.cloud.aiplatform.v1beta1.ModelService.ListModels", + "shortName": "UpdateApiConfig", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.UpdateApiConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/models" + "httpMethod": "PATCH", + "path": "/v1/{api_config.name=projects/*/locations/*/apis/*/configs/*}" } ] }, { - "shortName": "UpdateModel", - "fullName": "google.cloud.aiplatform.v1beta1.ModelService.UpdateModel", + "shortName": "UpdateGateway", + "fullName": "google.cloud.apigateway.v1.ApiGatewayService.UpdateGateway", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{model.name=projects/*/locations/*/models/*}" + "path": "/v1/{gateway.name=projects/*/locations/*/gateways/*}" } ] - }, + } + ] + } + ], + "configFile": "apigateway_v1.yaml" + }, + { + "id": "google.cloud.apigeeconnect.v1", + "directory": "google/cloud/apigeeconnect/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "apigeeconnect.googleapis.com", + "title": "Apigee Connect API", + "description": "", + "importDirectories": [ + "google/api", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.ApigeeConnect.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/apigeeconnect/v1;apigeeconnect": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.apigeeconnect.v1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\ApigeeConnect\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::ApigeeConnect::V1": 2 + } + } + }, + "services": [ + { + "shortName": "ConnectionService", + "fullName": "google.cloud.apigeeconnect.v1.ConnectionService", + "methods": [ { - "shortName": "UploadModel", - "fullName": "google.cloud.aiplatform.v1beta1.ModelService.UploadModel", + "shortName": "ListConnections", + "fullName": "google.cloud.apigeeconnect.v1.ConnectionService.ListConnections", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/models:upload" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/endpoints/*}/connections" } ] } ] }, { - "shortName": "PipelineService", - "fullName": "google.cloud.aiplatform.v1beta1.PipelineService", + "shortName": "Tether", + "fullName": "google.cloud.apigeeconnect.v1.Tether", "methods": [ { - "shortName": "CancelPipelineJob", - "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.CancelPipelineJob", + "shortName": "Egress", + "fullName": "google.cloud.apigeeconnect.v1.Tether.Egress", + "mode": "BIDIRECTIONAL_STREAMING" + } + ] + } + ], + "configFile": "apigeeconnect_v1.yaml" + }, + { + "id": "google.cloud.asset.v1", + "directory": "google/cloud/asset/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "cloudasset.googleapis.com", + "title": "Cloud Asset API", + "description": "The cloud asset API manages the history and inventory of cloud resources.", + "importDirectories": [ + "google/api", + "google/cloud/asset/v1", + "google/cloud/orgpolicy/v1", + "google/cloud/osconfig/v1", + "google/iam/v1", + "google/identity/accesscontextmanager/v1", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/type" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "": 1, + "true": 1 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Asset.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/asset/v1;asset": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.asset.v1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Asset\\V1": 2 + } + } + }, + "services": [ + { + "shortName": "AssetService", + "fullName": "google.cloud.asset.v1.AssetService", + "methods": [ + { + "shortName": "AnalyzeIamPolicy", + "fullName": "google.cloud.asset.v1.AssetService.AnalyzeIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/pipelineJobs/*}:cancel" + "httpMethod": "GET", + "path": "/v1/{analysis_query.scope=*/*}:analyzeIamPolicy" } ] }, { - "shortName": "CancelTrainingPipeline", - "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.CancelTrainingPipeline", + "shortName": "AnalyzeIamPolicyLongrunning", + "fullName": "google.cloud.asset.v1.AssetService.AnalyzeIamPolicyLongrunning", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/trainingPipelines/*}:cancel" + "path": "/v1/{analysis_query.scope=*/*}:analyzeIamPolicyLongrunning" } ] }, { - "shortName": "CreatePipelineJob", - "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.CreatePipelineJob", + "shortName": "AnalyzeMove", + "fullName": "google.cloud.asset.v1.AssetService.AnalyzeMove", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/pipelineJobs" + "httpMethod": "GET", + "path": "/v1/{resource=*/*}:analyzeMove" } ] }, { - "shortName": "CreateTrainingPipeline", - "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.CreateTrainingPipeline", + "shortName": "BatchGetAssetsHistory", + "fullName": "google.cloud.asset.v1.AssetService.BatchGetAssetsHistory", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=*/*}:batchGetAssetsHistory" + } + ] + }, + { + "shortName": "CreateFeed", + "fullName": "google.cloud.asset.v1.AssetService.CreateFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/trainingPipelines" + "path": "/v1/{parent=*/*}/feeds" } ] }, { - "shortName": "DeletePipelineJob", - "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.DeletePipelineJob", + "shortName": "DeleteFeed", + "fullName": "google.cloud.asset.v1.AssetService.DeleteFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/pipelineJobs/*}" + "path": "/v1/{name=*/*/feeds/*}" } ] }, { - "shortName": "DeleteTrainingPipeline", - "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.DeleteTrainingPipeline", + "shortName": "ExportAssets", + "fullName": "google.cloud.asset.v1.AssetService.ExportAssets", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/trainingPipelines/*}" + "httpMethod": "POST", + "path": "/v1/{parent=*/*}:exportAssets" } ] }, { - "shortName": "GetPipelineJob", - "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.GetPipelineJob", + "shortName": "GetFeed", + "fullName": "google.cloud.asset.v1.AssetService.GetFeed", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/pipelineJobs/*}" + "path": "/v1/{name=*/*/feeds/*}" } ] }, { - "shortName": "GetTrainingPipeline", - "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.GetTrainingPipeline", + "shortName": "ListAssets", + "fullName": "google.cloud.asset.v1.AssetService.ListAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/trainingPipelines/*}" + "path": "/v1/{parent=*/*}/assets" } ] }, { - "shortName": "ListPipelineJobs", - "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.ListPipelineJobs", + "shortName": "ListFeeds", + "fullName": "google.cloud.asset.v1.AssetService.ListFeeds", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/pipelineJobs" + "path": "/v1/{parent=*/*}/feeds" } ] }, { - "shortName": "ListTrainingPipelines", - "fullName": "google.cloud.aiplatform.v1beta1.PipelineService.ListTrainingPipelines", + "shortName": "SearchAllIamPolicies", + "fullName": "google.cloud.asset.v1.AssetService.SearchAllIamPolicies", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/trainingPipelines" + "path": "/v1/{scope=*/*}:searchAllIamPolicies" } ] - } - ] - }, - { - "shortName": "PredictionService", - "fullName": "google.cloud.aiplatform.v1beta1.PredictionService", - "methods": [ + }, { - "shortName": "Explain", - "fullName": "google.cloud.aiplatform.v1beta1.PredictionService.Explain", + "shortName": "SearchAllResources", + "fullName": "google.cloud.asset.v1.AssetService.SearchAllResources", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{endpoint=projects/*/locations/*/endpoints/*}:explain" + "httpMethod": "GET", + "path": "/v1/{scope=*/*}:searchAllResources" } ] }, { - "shortName": "Predict", - "fullName": "google.cloud.aiplatform.v1beta1.PredictionService.Predict", + "shortName": "UpdateFeed", + "fullName": "google.cloud.asset.v1.AssetService.UpdateFeed", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{endpoint=projects/*/locations/*/endpoints/*}:predict" + "httpMethod": "PATCH", + "path": "/v1/{feed.name=*/*/feeds/*}" } ] } ] + } + ], + "configFile": "cloudasset_v1.yaml" + }, + { + "id": "google.cloud.asset.v1p1beta1", + "directory": "google/cloud/asset/v1p1beta1", + "version": "v1p1beta1", + "majorVersion": "v1", + "hostName": "cloudasset.googleapis.com", + "title": "Cloud Asset API", + "description": "The cloud asset API manages the history and inventory of cloud resources.", + "importDirectories": [ + "google/api", + "google/cloud/asset/v1p1beta1", + "google/iam/v1" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "": 1, + "true": 1 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Asset.V1P1Beta1": 2 + } }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/asset/v1p1beta1;asset": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.asset.v1p1beta1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Asset\\V1p1beta1": 2 + } + } + }, + "services": [ { - "shortName": "SpecialistPoolService", - "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService", + "shortName": "AssetService", + "fullName": "google.cloud.asset.v1p1beta1.AssetService", "methods": [ { - "shortName": "CreateSpecialistPool", - "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService.CreateSpecialistPool", + "shortName": "SearchAllIamPolicies", + "fullName": "google.cloud.asset.v1p1beta1.AssetService.SearchAllIamPolicies", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/specialistPools" + "httpMethod": "GET", + "path": "/v1p1beta1/{scope=*/*}/iamPolicies:searchAll" } ] }, { - "shortName": "DeleteSpecialistPool", - "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService.DeleteSpecialistPool", + "shortName": "SearchAllResources", + "fullName": "google.cloud.asset.v1p1beta1.AssetService.SearchAllResources", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/specialistPools/*}" + "httpMethod": "GET", + "path": "/v1p1beta1/{scope=*/*}/resources:searchAll" } ] - }, - { - "shortName": "GetSpecialistPool", - "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService.GetSpecialistPool", - "mode": "UNARY", - "bindings": [ + } + ] + } + ], + "configFile": "cloudasset_v1p1beta1.yaml" + }, + { + "id": "google.cloud.asset.v1p2beta1", + "directory": "google/cloud/asset/v1p2beta1", + "version": "v1p2beta1", + "majorVersion": "v1", + "hostName": "cloudasset.googleapis.com", + "title": "Cloud Asset API", + "description": "The cloud asset API manages the history and inventory of cloud resources.", + "importDirectories": [ + "google/api", + "google/cloud/asset/v1p2beta1", + "google/iam/v1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "": 1, + "true": 1 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Asset.V1p2Beta1": 1, + "Google.Cloud.Asset.v1p2beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/asset/v1p2beta1;asset": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.asset.v1p2beta1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Asset\\V1p2beta1": 2 + } + } + }, + "services": [ + { + "shortName": "AssetService", + "fullName": "google.cloud.asset.v1p2beta1.AssetService", + "methods": [ + { + "shortName": "CreateFeed", + "fullName": "google.cloud.asset.v1p2beta1.AssetService.CreateFeed", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p2beta1/{parent=*/*}/feeds" + } + ] + }, + { + "shortName": "DeleteFeed", + "fullName": "google.cloud.asset.v1p2beta1.AssetService.DeleteFeed", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1p2beta1/{name=*/*/feeds/*}" + } + ] + }, + { + "shortName": "GetFeed", + "fullName": "google.cloud.asset.v1p2beta1.AssetService.GetFeed", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1p2beta1/{name=*/*/feeds/*}" + } + ] + }, + { + "shortName": "ListFeeds", + "fullName": "google.cloud.asset.v1p2beta1.AssetService.ListFeeds", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1p2beta1/{parent=*/*}/feeds" + } + ] + }, + { + "shortName": "UpdateFeed", + "fullName": "google.cloud.asset.v1p2beta1.AssetService.UpdateFeed", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1p2beta1/{feed.name=*/*/feeds/*}" + } + ] + } + ] + } + ], + "configFile": "cloudasset_v1p2beta1.yaml" + }, + { + "id": "google.cloud.asset.v1p4beta1", + "directory": "google/cloud/asset/v1p4beta1", + "version": "v1p4beta1", + "majorVersion": "v1", + "hostName": "cloudasset.googleapis.com", + "title": "Cloud Asset API", + "description": "The cloud asset API manages the history and inventory of cloud resources.", + "importDirectories": [ + "google/api", + "google/cloud/asset/v1p4beta1", + "google/iam/v1", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "": 1, + "true": 1 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Asset.V1P4Beta1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/asset/v1p4beta1;asset": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.asset.v1p4beta1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Asset\\V1p4beta1": 2 + } + } + }, + "services": [ + { + "shortName": "AssetService", + "fullName": "google.cloud.asset.v1p4beta1.AssetService", + "methods": [ + { + "shortName": "AnalyzeIamPolicy", + "fullName": "google.cloud.asset.v1p4beta1.AssetService.AnalyzeIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1p4beta1/{analysis_query.parent=*/*}:analyzeIamPolicy" + } + ] + }, + { + "shortName": "ExportIamPolicyAnalysis", + "fullName": "google.cloud.asset.v1p4beta1.AssetService.ExportIamPolicyAnalysis", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p4beta1/{analysis_query.parent=*/*}:exportIamPolicyAnalysis" + } + ] + } + ] + } + ], + "configFile": "cloudasset_v1p4beta1.yaml" + }, + { + "id": "google.cloud.asset.v1p5beta1", + "directory": "google/cloud/asset/v1p5beta1", + "version": "v1p5beta1", + "majorVersion": "v1", + "hostName": "cloudasset.googleapis.com", + "title": "Cloud Asset API", + "description": "The cloud asset API manages the history and inventory of cloud resources.", + "importDirectories": [ + "google/api", + "google/cloud/asset/v1p5beta1", + "google/cloud/orgpolicy/v1", + "google/iam/v1", + "google/identity/accesscontextmanager/v1", + "google/protobuf" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "": 1, + "true": 1 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Asset.V1P5Beta1": 1, + "Google.Cloud.Asset.V1p5Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/asset/v1p5beta1;asset": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.asset.v1p5beta1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Asset\\V1p5beta1": 2 + } + } + }, + "services": [ + { + "shortName": "AssetService", + "fullName": "google.cloud.asset.v1p5beta1.AssetService", + "methods": [ + { + "shortName": "ListAssets", + "fullName": "google.cloud.asset.v1p5beta1.AssetService.ListAssets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1p5beta1/{parent=*/*}/assets" + } + ] + } + ] + } + ], + "configFile": "cloudasset_v1p5beta1.yaml" + }, + { + "id": "google.cloud.asset.v1p7beta1", + "directory": "google/cloud/asset/v1p7beta1", + "version": "v1p7beta1", + "majorVersion": "v1", + "hostName": "cloudasset.googleapis.com", + "title": "Cloud Asset API", + "description": "The cloud asset API manages the history and inventory of cloud resources.", + "importDirectories": [ + "google/api", + "google/cloud/asset/v1p7beta1", + "google/cloud/orgpolicy/v1", + "google/cloud/osconfig/v1", + "google/iam/v1", + "google/identity/accesscontextmanager/v1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "": 1, + "true": 1 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Asset.V1P7Beta1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/asset/v1p7beta1;asset": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.asset.v1p7beta1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Asset\\V1p7beta1": 2 + } + } + }, + "services": [ + { + "shortName": "AssetService", + "fullName": "google.cloud.asset.v1p7beta1.AssetService", + "methods": [ + { + "shortName": "ExportAssets", + "fullName": "google.cloud.asset.v1p7beta1.AssetService.ExportAssets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p7beta1/{parent=*/*}:exportAssets" + } + ] + } + ] + } + ], + "configFile": "cloudasset_v1p7beta1.yaml" + }, + { + "id": "google.cloud.assuredworkloads.v1", + "directory": "google/cloud/assuredworkloads/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "assuredworkloads.googleapis.com", + "title": "Assured Workloads API", + "description": "", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.AssuredWorkloads.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/assuredworkloads/v1;assuredworkloads": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.assuredworkloads.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\AssuredWorkloads\\V1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::AssuredWorkloads::V1": 1 + } + } + }, + "services": [ + { + "shortName": "AssuredWorkloadsService", + "fullName": "google.cloud.assuredworkloads.v1.AssuredWorkloadsService", + "methods": [ + { + "shortName": "CreateWorkload", + "fullName": "google.cloud.assuredworkloads.v1.AssuredWorkloadsService.CreateWorkload", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=organizations/*/locations/*}/workloads" + } + ] + }, + { + "shortName": "DeleteWorkload", + "fullName": "google.cloud.assuredworkloads.v1.AssuredWorkloadsService.DeleteWorkload", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=organizations/*/locations/*/workloads/*}" + } + ] + }, + { + "shortName": "GetWorkload", + "fullName": "google.cloud.assuredworkloads.v1.AssuredWorkloadsService.GetWorkload", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=organizations/*/locations/*/workloads/*}" + } + ] + }, + { + "shortName": "ListWorkloads", + "fullName": "google.cloud.assuredworkloads.v1.AssuredWorkloadsService.ListWorkloads", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=organizations/*/locations/*}/workloads" + } + ] + }, + { + "shortName": "UpdateWorkload", + "fullName": "google.cloud.assuredworkloads.v1.AssuredWorkloadsService.UpdateWorkload", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{workload.name=organizations/*/locations/*/workloads/*}" + } + ] + } + ] + } + ], + "configFile": "assuredworkloads_v1.yaml" + }, + { + "id": "google.cloud.assuredworkloads.v1beta1", + "directory": "google/cloud/assuredworkloads/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "assuredworkloads.googleapis.com", + "title": "Assured Workloads API", + "description": "", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.AssuredWorkloads.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/assuredworkloads/v1beta1;assuredworkloads": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.assuredworkloads.v1beta1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\AssuredWorkloads\\V1beta1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::AssuredWorkloads::V1beta1": 1 + } + } + }, + "services": [ + { + "shortName": "AssuredWorkloadsService", + "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService", + "methods": [ + { + "shortName": "CreateWorkload", + "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService.CreateWorkload", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=organizations/*/locations/*}/workloads" + } + ] + }, + { + "shortName": "DeleteWorkload", + "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService.DeleteWorkload", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=organizations/*/locations/*/workloads/*}" + } + ] + }, + { + "shortName": "GetWorkload", + "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService.GetWorkload", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=organizations/*/locations/*/workloads/*}" + } + ] + }, + { + "shortName": "ListWorkloads", + "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService.ListWorkloads", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=organizations/*/locations/*}/workloads" + } + ] + }, + { + "shortName": "UpdateWorkload", + "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService.UpdateWorkload", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{workload.name=organizations/*/locations/*/workloads/*}" + } + ] + } + ] + } + ], + "configFile": "assuredworkloads_v1beta1.yaml" + }, + { + "id": "google.cloud.automl.v1", + "directory": "google/cloud/automl/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "automl.googleapis.com", + "title": "Cloud AutoML API", + "description": "Train high-quality custom machine learning models with minimum effort and machine learning expertise.", + "importDirectories": [ + "google/api", + "google/cloud/automl/v1", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.AutoML.V1": 19 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/automl/v1;automl": 19 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 19 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.automl.v1": 19 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\AutoMl\\V1": 19 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::AutoML::V1": 19 + } + } + }, + "services": [ + { + "shortName": "AutoMl", + "fullName": "google.cloud.automl.v1.AutoMl", + "methods": [ + { + "shortName": "CreateDataset", + "fullName": "google.cloud.automl.v1.AutoMl.CreateDataset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/datasets" + } + ] + }, + { + "shortName": "CreateModel", + "fullName": "google.cloud.automl.v1.AutoMl.CreateModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/models" + } + ] + }, + { + "shortName": "DeleteDataset", + "fullName": "google.cloud.automl.v1.AutoMl.DeleteDataset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/datasets/*}" + } + ] + }, + { + "shortName": "DeleteModel", + "fullName": "google.cloud.automl.v1.AutoMl.DeleteModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/models/*}" + } + ] + }, + { + "shortName": "DeployModel", + "fullName": "google.cloud.automl.v1.AutoMl.DeployModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/models/*}:deploy" + } + ] + }, + { + "shortName": "ExportData", + "fullName": "google.cloud.automl.v1.AutoMl.ExportData", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/datasets/*}:exportData" + } + ] + }, + { + "shortName": "ExportModel", + "fullName": "google.cloud.automl.v1.AutoMl.ExportModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/models/*}:export" + } + ] + }, + { + "shortName": "GetAnnotationSpec", + "fullName": "google.cloud.automl.v1.AutoMl.GetAnnotationSpec", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}" + } + ] + }, + { + "shortName": "GetDataset", + "fullName": "google.cloud.automl.v1.AutoMl.GetDataset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/datasets/*}" + } + ] + }, + { + "shortName": "GetModel", + "fullName": "google.cloud.automl.v1.AutoMl.GetModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/models/*}" + } + ] + }, + { + "shortName": "GetModelEvaluation", + "fullName": "google.cloud.automl.v1.AutoMl.GetModelEvaluation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/models/*/modelEvaluations/*}" + } + ] + }, + { + "shortName": "ImportData", + "fullName": "google.cloud.automl.v1.AutoMl.ImportData", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/datasets/*}:importData" + } + ] + }, + { + "shortName": "ListDatasets", + "fullName": "google.cloud.automl.v1.AutoMl.ListDatasets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/datasets" + } + ] + }, + { + "shortName": "ListModelEvaluations", + "fullName": "google.cloud.automl.v1.AutoMl.ListModelEvaluations", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/models/*}/modelEvaluations" + } + ] + }, + { + "shortName": "ListModels", + "fullName": "google.cloud.automl.v1.AutoMl.ListModels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/models" + } + ] + }, + { + "shortName": "UndeployModel", + "fullName": "google.cloud.automl.v1.AutoMl.UndeployModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/models/*}:undeploy" + } + ] + }, + { + "shortName": "UpdateDataset", + "fullName": "google.cloud.automl.v1.AutoMl.UpdateDataset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{dataset.name=projects/*/locations/*/datasets/*}" + } + ] + }, + { + "shortName": "UpdateModel", + "fullName": "google.cloud.automl.v1.AutoMl.UpdateModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{model.name=projects/*/locations/*/models/*}" + } + ] + } + ] + }, + { + "shortName": "PredictionService", + "fullName": "google.cloud.automl.v1.PredictionService", + "methods": [ + { + "shortName": "BatchPredict", + "fullName": "google.cloud.automl.v1.PredictionService.BatchPredict", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/models/*}:batchPredict" + } + ] + }, + { + "shortName": "Predict", + "fullName": "google.cloud.automl.v1.PredictionService.Predict", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/models/*}:predict" + } + ] + } + ] + } + ], + "configFile": "automl_v1.yaml" + }, + { + "id": "google.cloud.automl.v1beta1", + "directory": "google/cloud/automl/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "automl.googleapis.com", + "title": "Cloud AutoML API", + "description": "Train high-quality custom machine learning models with minimum effort and machine learning expertise.", + "importDirectories": [ + "google/api", + "google/cloud/automl/v1beta1", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/automl/v1beta1;automl": 28 + } + }, + "java_multiple_files": { + "valueCounts": { + "": 3, + "true": 25 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.automl.v1beta1": 28 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\AutoMl\\V1beta1": 28 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::AutoML::V1beta1": 28 + } + } + }, + "services": [ + { + "shortName": "AutoMl", + "fullName": "google.cloud.automl.v1beta1.AutoMl", + "methods": [ + { + "shortName": "CreateDataset", + "fullName": "google.cloud.automl.v1beta1.AutoMl.CreateDataset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/datasets" + } + ] + }, + { + "shortName": "CreateModel", + "fullName": "google.cloud.automl.v1beta1.AutoMl.CreateModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/models" + } + ] + }, + { + "shortName": "DeleteDataset", + "fullName": "google.cloud.automl.v1beta1.AutoMl.DeleteDataset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}" + } + ] + }, + { + "shortName": "DeleteModel", + "fullName": "google.cloud.automl.v1beta1.AutoMl.DeleteModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/models/*}" + } + ] + }, + { + "shortName": "DeployModel", + "fullName": "google.cloud.automl.v1beta1.AutoMl.DeployModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/models/*}:deploy" + } + ] + }, + { + "shortName": "ExportData", + "fullName": "google.cloud.automl.v1beta1.AutoMl.ExportData", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}:exportData" + } + ] + }, + { + "shortName": "ExportEvaluatedExamples", + "fullName": "google.cloud.automl.v1beta1.AutoMl.ExportEvaluatedExamples", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/models/*}:exportEvaluatedExamples" + } + ] + }, + { + "shortName": "ExportModel", + "fullName": "google.cloud.automl.v1beta1.AutoMl.ExportModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/models/*}:export" + } + ] + }, + { + "shortName": "GetAnnotationSpec", + "fullName": "google.cloud.automl.v1beta1.AutoMl.GetAnnotationSpec", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}" + } + ] + }, + { + "shortName": "GetColumnSpec", + "fullName": "google.cloud.automl.v1beta1.AutoMl.GetColumnSpec", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*/tableSpecs/*/columnSpecs/*}" + } + ] + }, + { + "shortName": "GetDataset", + "fullName": "google.cloud.automl.v1beta1.AutoMl.GetDataset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}" + } + ] + }, + { + "shortName": "GetModel", + "fullName": "google.cloud.automl.v1beta1.AutoMl.GetModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/models/*}" + } + ] + }, + { + "shortName": "GetModelEvaluation", + "fullName": "google.cloud.automl.v1beta1.AutoMl.GetModelEvaluation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/models/*/modelEvaluations/*}" + } + ] + }, + { + "shortName": "GetTableSpec", + "fullName": "google.cloud.automl.v1beta1.AutoMl.GetTableSpec", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*/tableSpecs/*}" + } + ] + }, + { + "shortName": "ImportData", + "fullName": "google.cloud.automl.v1beta1.AutoMl.ImportData", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}:importData" + } + ] + }, + { + "shortName": "ListColumnSpecs", + "fullName": "google.cloud.automl.v1beta1.AutoMl.ListColumnSpecs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/datasets/*/tableSpecs/*}/columnSpecs" + } + ] + }, + { + "shortName": "ListDatasets", + "fullName": "google.cloud.automl.v1beta1.AutoMl.ListDatasets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/datasets" + } + ] + }, + { + "shortName": "ListModelEvaluations", + "fullName": "google.cloud.automl.v1beta1.AutoMl.ListModelEvaluations", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/models/*}/modelEvaluations" + } + ] + }, + { + "shortName": "ListModels", + "fullName": "google.cloud.automl.v1beta1.AutoMl.ListModels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/models" + } + ] + }, + { + "shortName": "ListTableSpecs", + "fullName": "google.cloud.automl.v1beta1.AutoMl.ListTableSpecs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/datasets/*}/tableSpecs" + } + ] + }, + { + "shortName": "UndeployModel", + "fullName": "google.cloud.automl.v1beta1.AutoMl.UndeployModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/models/*}:undeploy" + } + ] + }, + { + "shortName": "UpdateColumnSpec", + "fullName": "google.cloud.automl.v1beta1.AutoMl.UpdateColumnSpec", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{column_spec.name=projects/*/locations/*/datasets/*/tableSpecs/*/columnSpecs/*}" + } + ] + }, + { + "shortName": "UpdateDataset", + "fullName": "google.cloud.automl.v1beta1.AutoMl.UpdateDataset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{dataset.name=projects/*/locations/*/datasets/*}" + } + ] + }, + { + "shortName": "UpdateTableSpec", + "fullName": "google.cloud.automl.v1beta1.AutoMl.UpdateTableSpec", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{table_spec.name=projects/*/locations/*/datasets/*/tableSpecs/*}" + } + ] + } + ] + }, + { + "shortName": "PredictionService", + "fullName": "google.cloud.automl.v1beta1.PredictionService", + "methods": [ + { + "shortName": "BatchPredict", + "fullName": "google.cloud.automl.v1beta1.PredictionService.BatchPredict", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/models/*}:batchPredict" + } + ] + }, + { + "shortName": "Predict", + "fullName": "google.cloud.automl.v1beta1.PredictionService.Predict", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/models/*}:predict" + } + ] + } + ] + } + ], + "configFile": "automl_v1beta1.yaml" + }, + { + "id": "google.cloud.baremetalsolution.v2", + "directory": "google/cloud/baremetalsolution/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "baremetalsolution.googleapis.com", + "title": "Bare Metal Solution API", + "description": "Provides ways to manage Bare Metal Solution hardware installed in a regional extension located near a Google Cloud data center.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.BaremetalSolution.V2": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/baremetalsolution/v2;baremetalsolution": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.baremetalsolution.v2": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\BaremetalSolution\\V2": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::BaremetalSolution::V2": 1 + } + } + }, + "services": [ + { + "shortName": "BareMetalSolution", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution", + "methods": [ + { + "shortName": "CreateSnapshotSchedulePolicy", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.CreateSnapshotSchedulePolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*}/snapshotSchedulePolicies" + } + ] + }, + { + "shortName": "CreateVolumeSnapshot", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.CreateVolumeSnapshot", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/volumes/*}/snapshots" + } + ] + }, + { + "shortName": "DeleteSnapshotSchedulePolicy", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.DeleteSnapshotSchedulePolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/snapshotSchedulePolicies/*}" + } + ] + }, + { + "shortName": "DeleteVolumeSnapshot", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.DeleteVolumeSnapshot", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/volumes/*/snapshots/*}" + } + ] + }, + { + "shortName": "GetInstance", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.GetInstance", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/instances/*}" + } + ] + }, + { + "shortName": "GetLun", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.GetLun", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/volumes/*/luns/*}" + } + ] + }, + { + "shortName": "GetNetwork", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.GetNetwork", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/networks/*}" + } + ] + }, + { + "shortName": "GetSnapshotSchedulePolicy", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.GetSnapshotSchedulePolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/snapshotSchedulePolicies/*}" + } + ] + }, + { + "shortName": "GetVolume", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.GetVolume", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/volumes/*}" + } + ] + }, + { + "shortName": "GetVolumeSnapshot", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.GetVolumeSnapshot", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/volumes/*/snapshots/*}" + } + ] + }, + { + "shortName": "ListInstances", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.ListInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/instances" + } + ] + }, + { + "shortName": "ListLuns", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.ListLuns", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/volumes/*}/luns" + } + ] + }, + { + "shortName": "ListNetworks", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.ListNetworks", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/networks" + } + ] + }, + { + "shortName": "ListSnapshotSchedulePolicies", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.ListSnapshotSchedulePolicies", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/snapshotSchedulePolicies" + } + ] + }, + { + "shortName": "ListVolumeSnapshots", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.ListVolumeSnapshots", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/volumes/*}/snapshots" + } + ] + }, + { + "shortName": "ListVolumes", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.ListVolumes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/volumes" + } + ] + }, + { + "shortName": "ResetInstance", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.ResetInstance", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2/{name=projects/*/locations/*/instances/*}:reset" + } + ] + }, + { + "shortName": "RestoreVolumeSnapshot", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.RestoreVolumeSnapshot", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2/{volume_snapshot=projects/*/locations/*/volumes/*/snapshots/*}:restoreVolumeSnapshot" + } + ] + }, + { + "shortName": "UpdateSnapshotSchedulePolicy", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.UpdateSnapshotSchedulePolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v2/{snapshot_schedule_policy.name=projects/*/locations/*/snapshotSchedulePolicies/*}" + } + ] + }, + { + "shortName": "UpdateVolume", + "fullName": "google.cloud.baremetalsolution.v2.BareMetalSolution.UpdateVolume", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v2/{volume.name=projects/*/locations/*/volumes/*}" + } + ] + } + ] + } + ], + "configFile": "baremetalsolution_v2.yaml" + }, + { + "id": "google.cloud.bigquery.connection.v1", + "directory": "google/cloud/bigquery/connection/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "bigqueryconnection.googleapis.com", + "title": "BigQuery Connection API", + "description": "Allows users to manage BigQuery connections to external data sources.", + "importDirectories": [ + "google/api", + "google/iam/v1", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.BigQuery.Connection.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/bigquery/connection/v1;connection": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.bigquery.connection.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\BigQuery\\Connection\\V1": 1 + } + } + }, + "services": [ + { + "shortName": "ConnectionService", + "fullName": "google.cloud.bigquery.connection.v1.ConnectionService", + "methods": [ + { + "shortName": "CreateConnection", + "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.CreateConnection", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/connections" + } + ] + }, + { + "shortName": "DeleteConnection", + "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.DeleteConnection", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/connections/*}" + } + ] + }, + { + "shortName": "GetConnection", + "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.GetConnection", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/connections/*}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/connections/*}:getIamPolicy" + } + ] + }, + { + "shortName": "ListConnections", + "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.ListConnections", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/connections" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/connections/*}:setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/connections/*}:testIamPermissions" + } + ] + }, + { + "shortName": "UpdateConnection", + "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.UpdateConnection", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{name=projects/*/locations/*/connections/*}" + } + ] + } + ] + } + ], + "configFile": "bigqueryconnection_v1.yaml" + }, + { + "id": "google.cloud.bigquery.connection.v1beta1", + "directory": "google/cloud/bigquery/connection/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "bigqueryconnection.googleapis.com", + "title": "BigQuery Connection API", + "description": "Allows users to manage BigQuery connections to external data sources.", + "importDirectories": [ + "google/api", + "google/iam/v1", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.BigQuery.Connection.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/bigquery/connection/v1beta1;connection": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.bigquery.connection.v1beta1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\BigQuery\\Connection\\V1beta1": 1 + } + } + }, + "services": [ + { + "shortName": "ConnectionService", + "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService", + "methods": [ + { + "shortName": "CreateConnection", + "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.CreateConnection", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/connections" + } + ] + }, + { + "shortName": "DeleteConnection", + "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.DeleteConnection", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/connections/*}" + } + ] + }, + { + "shortName": "GetConnection", + "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.GetConnection", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/connections/*}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/connections/*}:getIamPolicy" + } + ] + }, + { + "shortName": "ListConnections", + "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.ListConnections", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/connections" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/connections/*}:setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/connections/*}:testIamPermissions" + } + ] + }, + { + "shortName": "UpdateConnection", + "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.UpdateConnection", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{name=projects/*/locations/*/connections/*}" + } + ] + }, + { + "shortName": "UpdateConnectionCredential", + "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.UpdateConnectionCredential", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{name=projects/*/locations/*/connections/*/credential}" + } + ] + } + ] + } + ], + "configFile": "bigqueryconnection_v1beta1.yaml" + }, + { + "id": "google.cloud.bigquery.datatransfer.v1", + "directory": "google/cloud/bigquery/datatransfer/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "bigquerydatatransfer.googleapis.com", + "title": "BigQuery Data Transfer API", + "description": "Schedule queries or transfer external data from SaaS applications to Google BigQuery on a regular basis.", + "importDirectories": [ + "google/api", + "google/cloud/bigquery/datatransfer/v1", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.BigQuery.DataTransfer.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/bigquery/datatransfer/v1;datatransfer": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.bigquery.datatransfer.v1": 2 + } + }, + "objc_class_prefix": { + "valueCounts": { + "": 1, + "GCBDT": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\BigQuery\\DataTransfer\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Bigquery::DataTransfer::V1": 2 + } + } + }, + "services": [ + { + "shortName": "DataTransferService", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService", + "methods": [ + { + "shortName": "CheckValidCreds", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.CheckValidCreds", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/dataSources/*}:checkValidCreds" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/dataSources/*}:checkValidCreds" + } + ] + }, + { + "shortName": "CreateTransferConfig", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.CreateTransferConfig", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/transferConfigs" + }, + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*}/transferConfigs" + } + ] + }, + { + "shortName": "DeleteTransferConfig", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.DeleteTransferConfig", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/transferConfigs/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/transferConfigs/*}" + } + ] + }, + { + "shortName": "DeleteTransferRun", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.DeleteTransferRun", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/transferConfigs/*/runs/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/transferConfigs/*/runs/*}" + } + ] + }, + { + "shortName": "EnrollDataSources", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.EnrollDataSources", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*}:enrollDataSources" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*}:enrollDataSources" + } + ] + }, + { + "shortName": "GetDataSource", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.GetDataSource", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/dataSources/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/dataSources/*}" + } + ] + }, + { + "shortName": "GetTransferConfig", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.GetTransferConfig", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/transferConfigs/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/transferConfigs/*}" + } + ] + }, + { + "shortName": "GetTransferRun", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.GetTransferRun", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/transferConfigs/*/runs/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/transferConfigs/*/runs/*}" + } + ] + }, + { + "shortName": "ListDataSources", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.ListDataSources", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/dataSources" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/dataSources" + } + ] + }, + { + "shortName": "ListTransferConfigs", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.ListTransferConfigs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/transferConfigs" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/transferConfigs" + } + ] + }, + { + "shortName": "ListTransferLogs", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.ListTransferLogs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/transferConfigs/*/runs/*}/transferLogs" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/transferConfigs/*/runs/*}/transferLogs" + } + ] + }, + { + "shortName": "ListTransferRuns", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.ListTransferRuns", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/transferConfigs/*}/runs" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/transferConfigs/*}/runs" + } + ] + }, + { + "shortName": "ScheduleTransferRuns", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.ScheduleTransferRuns", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/transferConfigs/*}:scheduleRuns" + }, + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/transferConfigs/*}:scheduleRuns" + } + ] + }, + { + "shortName": "StartManualTransferRuns", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.StartManualTransferRuns", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/transferConfigs/*}:startManualRuns" + }, + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/transferConfigs/*}:startManualRuns" + } + ] + }, + { + "shortName": "UpdateTransferConfig", + "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.UpdateTransferConfig", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{transfer_config.name=projects/*/locations/*/transferConfigs/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{transfer_config.name=projects/*/transferConfigs/*}" + } + ] + } + ] + } + ], + "configFile": "bigquerydatatransfer_v1.yaml" + }, + { + "id": "google.cloud.bigquery.migration.v2alpha", + "directory": "google/cloud/bigquery/migration/v2alpha", + "version": "v2alpha", + "majorVersion": "v2", + "hostName": "bigquerymigration.googleapis.com", + "title": "BigQuery Migration API", + "description": "The migration service, exposing apis for migration jobs operations, and agent management.", + "importDirectories": [ + "google/api", + "google/cloud/bigquery/migration/v2alpha", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.BigQuery.Migration.V2Alpha": 7 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/bigquery/migration/v2alpha;migration": 7 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 7 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.bigquery.migration.v2alpha": 7 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\BigQuery\\Migration\\V2alpha": 7 + } + } + }, + "services": [ + { + "shortName": "MigrationService", + "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService", + "methods": [ + { + "shortName": "CreateMigrationWorkflow", + "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.CreateMigrationWorkflow", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2alpha/{parent=projects/*/locations/*}/workflows" + } + ] + }, + { + "shortName": "DeleteMigrationWorkflow", + "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.DeleteMigrationWorkflow", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v2alpha/{name=projects/*/locations/*/workflows/*}" + } + ] + }, + { + "shortName": "GetMigrationSubtask", + "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.GetMigrationSubtask", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2alpha/{name=projects/*/locations/*/workflows/*/subtasks/*}" + } + ] + }, + { + "shortName": "GetMigrationWorkflow", + "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.GetMigrationWorkflow", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2alpha/{name=projects/*/locations/*/workflows/*}" + } + ] + }, + { + "shortName": "ListMigrationSubtasks", + "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.ListMigrationSubtasks", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2alpha/{parent=projects/*/locations/*/workflows/*}/subtasks" + } + ] + }, + { + "shortName": "ListMigrationWorkflows", + "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.ListMigrationWorkflows", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2alpha/{parent=projects/*/locations/*}/workflows" + } + ] + }, + { + "shortName": "StartMigrationWorkflow", + "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.StartMigrationWorkflow", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2alpha/{name=projects/*/locations/*/workflows/*}:start" + } + ] + } + ] + }, + { + "shortName": "SqlTranslationService", + "fullName": "google.cloud.bigquery.migration.v2alpha.SqlTranslationService", + "methods": [ + { + "shortName": "TranslateQuery", + "fullName": "google.cloud.bigquery.migration.v2alpha.SqlTranslationService.TranslateQuery", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2alpha/{parent=projects/*/locations/*}:translateQuery" + } + ] + } + ] + } + ], + "configFile": "bigquerymigration_v2alpha.yaml" + }, + { + "id": "google.cloud.bigquery.reservation.v1", + "directory": "google/cloud/bigquery/reservation/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "bigqueryreservation.googleapis.com", + "title": "BigQuery Reservation API", + "description": "A service to modify your BigQuery flat-rate reservations.", + "importDirectories": [ + "google/api", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.BigQuery.Reservation.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/bigquery/reservation/v1;reservation": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.bigquery.reservation.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\BigQuery\\Reservation\\V1": 1 + } + } + }, + "services": [ + { + "shortName": "ReservationService", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService", + "methods": [ + { + "shortName": "CreateAssignment", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.CreateAssignment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/reservations/*}/assignments" + } + ] + }, + { + "shortName": "CreateCapacityCommitment", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.CreateCapacityCommitment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/capacityCommitments" + } + ] + }, + { + "shortName": "CreateReservation", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.CreateReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/reservations" + } + ] + }, + { + "shortName": "DeleteAssignment", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.DeleteAssignment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/reservations/*/assignments/*}" + } + ] + }, + { + "shortName": "DeleteCapacityCommitment", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.DeleteCapacityCommitment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/capacityCommitments/*}" + } + ] + }, + { + "shortName": "DeleteReservation", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.DeleteReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/reservations/*}" + } + ] + }, + { + "shortName": "GetBiReservation", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.GetBiReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/biReservation}" + } + ] + }, + { + "shortName": "GetCapacityCommitment", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.GetCapacityCommitment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/capacityCommitments/*}" + } + ] + }, + { + "shortName": "GetReservation", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.GetReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/reservations/*}" + } + ] + }, + { + "shortName": "ListAssignments", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.ListAssignments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/reservations/*}/assignments" + } + ] + }, + { + "shortName": "ListCapacityCommitments", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.ListCapacityCommitments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/capacityCommitments" + } + ] + }, + { + "shortName": "ListReservations", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.ListReservations", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/reservations" + } + ] + }, + { + "shortName": "MergeCapacityCommitments", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.MergeCapacityCommitments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/capacityCommitments:merge" + } + ] + }, + { + "shortName": "MoveAssignment", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.MoveAssignment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/reservations/*/assignments/*}:move" + } + ] + }, + { + "shortName": "SearchAllAssignments", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.SearchAllAssignments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}:searchAllAssignments" + } + ] + }, + { + "shortName": "SearchAssignments", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.SearchAssignments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}:searchAssignments" + } + ] + }, + { + "shortName": "SplitCapacityCommitment", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.SplitCapacityCommitment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/capacityCommitments/*}:split" + } + ] + }, + { + "shortName": "UpdateBiReservation", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.UpdateBiReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{bi_reservation.name=projects/*/locations/*/biReservation}" + } + ] + }, + { + "shortName": "UpdateCapacityCommitment", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.UpdateCapacityCommitment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{capacity_commitment.name=projects/*/locations/*/capacityCommitments/*}" + } + ] + }, + { + "shortName": "UpdateReservation", + "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.UpdateReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{reservation.name=projects/*/locations/*/reservations/*}" + } + ] + } + ] + } + ], + "configFile": "bigqueryreservation_v1.yaml" + }, + { + "id": "google.cloud.bigquery.reservation.v1beta1", + "directory": "google/cloud/bigquery/reservation/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "bigqueryreservation.googleapis.com", + "title": "BigQuery Reservation API", + "description": "A service to modify your BigQuery flat-rate reservations.", + "importDirectories": [ + "google/api", + "google/protobuf", + "google/rpc" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/bigquery/reservation/v1beta1;reservation": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.bigquery.reservation.v1beta1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\BigQuery\\Reservation\\V1beta1": 1 + } + } + }, + "services": [ + { + "shortName": "ReservationService", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService", + "methods": [ + { + "shortName": "CreateAssignment", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.CreateAssignment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/reservations/*}/assignments" + } + ] + }, + { + "shortName": "CreateCapacityCommitment", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.CreateCapacityCommitment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/capacityCommitments" + } + ] + }, + { + "shortName": "CreateReservation", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.CreateReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/reservations" + } + ] + }, + { + "shortName": "DeleteAssignment", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.DeleteAssignment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/reservations/*/assignments/*}" + } + ] + }, + { + "shortName": "DeleteCapacityCommitment", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.DeleteCapacityCommitment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/capacityCommitments/*}" + } + ] + }, + { + "shortName": "DeleteReservation", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.DeleteReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/reservations/*}" + } + ] + }, + { + "shortName": "GetBiReservation", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.GetBiReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/biReservation}" + } + ] + }, + { + "shortName": "GetCapacityCommitment", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.GetCapacityCommitment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/capacityCommitments/*}" + } + ] + }, + { + "shortName": "GetReservation", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.GetReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/reservations/*}" + } + ] + }, + { + "shortName": "ListAssignments", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.ListAssignments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/reservations/*}/assignments" + } + ] + }, + { + "shortName": "ListCapacityCommitments", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.ListCapacityCommitments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/capacityCommitments" + } + ] + }, + { + "shortName": "ListReservations", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.ListReservations", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/reservations" + } + ] + }, + { + "shortName": "MergeCapacityCommitments", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.MergeCapacityCommitments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/capacityCommitments:merge" + } + ] + }, + { + "shortName": "MoveAssignment", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.MoveAssignment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/reservations/*/assignments/*}:move" + } + ] + }, + { + "shortName": "SearchAssignments", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.SearchAssignments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}:searchAssignments" + } + ] + }, + { + "shortName": "SplitCapacityCommitment", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.SplitCapacityCommitment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/capacityCommitments/*}:split" + } + ] + }, + { + "shortName": "UpdateBiReservation", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.UpdateBiReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{reservation.name=projects/*/locations/*/biReservation}" + } + ] + }, + { + "shortName": "UpdateCapacityCommitment", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.UpdateCapacityCommitment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{capacity_commitment.name=projects/*/locations/*/capacityCommitments/*}" + } + ] + }, + { + "shortName": "UpdateReservation", + "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.UpdateReservation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{reservation.name=projects/*/locations/*/reservations/*}" + } + ] + } + ] + } + ], + "configFile": "bigqueryreservation_v1beta1.yaml" + }, + { + "id": "google.cloud.bigquery.storage.v1", + "directory": "google/cloud/bigquery/storage/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "bigquerystorage.googleapis.com", + "title": "BigQuery Storage API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/bigquery/storage/v1", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.BigQuery.Storage.V1": 6 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/bigquery/storage/v1;storage": 6 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 6 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.bigquery.storage.v1": 6 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\BigQuery\\Storage\\V1": 6 + } + } + }, + "services": [ + { + "shortName": "BigQueryRead", + "fullName": "google.cloud.bigquery.storage.v1.BigQueryRead", + "methods": [ + { + "shortName": "CreateReadSession", + "fullName": "google.cloud.bigquery.storage.v1.BigQueryRead.CreateReadSession", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{read_session.table=projects/*/datasets/*/tables/*}" + } + ] + }, + { + "shortName": "ReadRows", + "fullName": "google.cloud.bigquery.storage.v1.BigQueryRead.ReadRows", + "mode": "SERVER_STREAMING", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{read_stream=projects/*/locations/*/sessions/*/streams/*}" + } + ] + }, + { + "shortName": "SplitReadStream", + "fullName": "google.cloud.bigquery.storage.v1.BigQueryRead.SplitReadStream", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/sessions/*/streams/*}" + } + ] + } + ] + }, + { + "shortName": "BigQueryWrite", + "fullName": "google.cloud.bigquery.storage.v1.BigQueryWrite", + "methods": [ + { + "shortName": "AppendRows", + "fullName": "google.cloud.bigquery.storage.v1.BigQueryWrite.AppendRows", + "mode": "BIDIRECTIONAL_STREAMING", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{write_stream=projects/*/datasets/*/tables/*/streams/*}" + } + ] + }, + { + "shortName": "BatchCommitWriteStreams", + "fullName": "google.cloud.bigquery.storage.v1.BigQueryWrite.BatchCommitWriteStreams", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/datasets/*/tables/*}" + } + ] + }, + { + "shortName": "CreateWriteStream", + "fullName": "google.cloud.bigquery.storage.v1.BigQueryWrite.CreateWriteStream", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/datasets/*/tables/*}" + } + ] + }, + { + "shortName": "FinalizeWriteStream", + "fullName": "google.cloud.bigquery.storage.v1.BigQueryWrite.FinalizeWriteStream", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/datasets/*/tables/*/streams/*}" + } + ] + }, + { + "shortName": "FlushRows", + "fullName": "google.cloud.bigquery.storage.v1.BigQueryWrite.FlushRows", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{write_stream=projects/*/datasets/*/tables/*/streams/*}" + } + ] + }, + { + "shortName": "GetWriteStream", + "fullName": "google.cloud.bigquery.storage.v1.BigQueryWrite.GetWriteStream", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/datasets/*/tables/*/streams/*}" + } + ] + } + ] + } + ], + "configFile": "bigquerystorage_v1.yaml" + }, + { + "id": "google.cloud.bigquery.storage.v1beta1", + "directory": "google/cloud/bigquery/storage/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "bigquerystorage.googleapis.com", + "title": "BigQuery Storage API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/bigquery/storage/v1beta1", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/bigquery/storage/v1beta1;storage": 5 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.bigquery.storage.v1beta1": 5 + } + } + }, + "services": [ + { + "shortName": "BigQueryStorage", + "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage", + "methods": [ + { + "shortName": "BatchCreateReadSessionStreams", + "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage.BatchCreateReadSessionStreams", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{session.name=projects/*/sessions/*}" + } + ] + }, + { + "shortName": "CreateReadSession", + "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage.CreateReadSession", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{table_reference.project_id=projects/*}" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{table_reference.dataset_id=projects/*/datasets/*}" + } + ] + }, + { + "shortName": "FinalizeStream", + "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage.FinalizeStream", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{stream.name=projects/*/streams/*}" + } + ] + }, + { + "shortName": "ReadRows", + "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage.ReadRows", + "mode": "SERVER_STREAMING", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{read_position.stream.name=projects/*/streams/*}" + } + ] + }, + { + "shortName": "SplitReadStream", + "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage.SplitReadStream", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{original_stream.name=projects/*/streams/*}" + } + ] + } + ] + } + ], + "configFile": "bigquerystorage_v1beta1.yaml" + }, + { + "id": "google.cloud.bigquery.storage.v1beta2", + "directory": "google/cloud/bigquery/storage/v1beta2", + "version": "v1beta2", + "majorVersion": "v1", + "hostName": "bigquerystorage.googleapis.com", + "title": "BigQuery Storage API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/bigquery/storage/v1beta2", + "google/protobuf", + "google/rpc" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/bigquery/storage/v1beta2;storage": 6 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 6 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.bigquery.storage.v1beta2": 6 + } + } + }, + "services": [ + { + "shortName": "BigQueryRead", + "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryRead", + "methods": [ + { + "shortName": "CreateReadSession", + "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryRead.CreateReadSession", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta2/{read_session.table=projects/*/datasets/*/tables/*}" + } + ] + }, + { + "shortName": "ReadRows", + "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryRead.ReadRows", + "mode": "SERVER_STREAMING", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta2/{read_stream=projects/*/locations/*/sessions/*/streams/*}" + } + ] + }, + { + "shortName": "SplitReadStream", + "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryRead.SplitReadStream", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta2/{name=projects/*/locations/*/sessions/*/streams/*}" + } + ] + } + ] + }, + { + "shortName": "BigQueryWrite", + "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite", + "methods": [ + { + "shortName": "AppendRows", + "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.AppendRows", + "mode": "BIDIRECTIONAL_STREAMING", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta2/{write_stream=projects/*/datasets/*/tables/*/streams/*}" + } + ] + }, + { + "shortName": "BatchCommitWriteStreams", + "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.BatchCommitWriteStreams", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta2/{parent=projects/*/datasets/*/tables/*}" + } + ] + }, + { + "shortName": "CreateWriteStream", + "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.CreateWriteStream", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta2/{parent=projects/*/datasets/*/tables/*}" + } + ] + }, + { + "shortName": "FinalizeWriteStream", + "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.FinalizeWriteStream", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta2/{name=projects/*/datasets/*/tables/*/streams/*}" + } + ] + }, + { + "shortName": "FlushRows", + "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.FlushRows", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta2/{write_stream=projects/*/datasets/*/tables/*/streams/*}" + } + ] + }, + { + "shortName": "GetWriteStream", + "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.GetWriteStream", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta2/{name=projects/*/datasets/*/tables/*/streams/*}" + } + ] + } + ] + } + ], + "configFile": "bigquerystorage_v1beta2.yaml" + }, + { + "id": "google.cloud.bigquery.v2", + "directory": "google/cloud/bigquery/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "bigquery.googleapis.com", + "title": "BigQuery API", + "description": "A data platform for customers to create, manage, share and query data.", + "importDirectories": [ + "google/api", + "google/cloud/bigquery/v2", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/bigquery/v2;bigquery": 5 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.bigquery.v2": 5 + } + } + }, + "services": [ + { + "shortName": "ModelService", + "fullName": "google.cloud.bigquery.v2.ModelService", + "methods": [ + { + "shortName": "DeleteModel", + "fullName": "google.cloud.bigquery.v2.ModelService.DeleteModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/bigquery/v2/projects/{project_id=*}/datasets/{dataset_id=*}/models/{model_id=*}" + } + ] + }, + { + "shortName": "GetModel", + "fullName": "google.cloud.bigquery.v2.ModelService.GetModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/bigquery/v2/projects/{project_id=*}/datasets/{dataset_id=*}/models/{model_id=*}" + } + ] + }, + { + "shortName": "ListModels", + "fullName": "google.cloud.bigquery.v2.ModelService.ListModels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/bigquery/v2/projects/{project_id=*}/datasets/{dataset_id=*}/models" + } + ] + }, + { + "shortName": "PatchModel", + "fullName": "google.cloud.bigquery.v2.ModelService.PatchModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/bigquery/v2/projects/{project_id=*}/datasets/{dataset_id=*}/models/{model_id=*}" + } + ] + } + ] + } + ], + "configFile": "bigquery_v2.yaml" + }, + { + "id": "google.cloud.billing.budgets.v1", + "directory": "google/cloud/billing/budgets/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "billingbudgets.googleapis.com", + "title": "Cloud Billing Budget API", + "description": "The Cloud Billing Budget API stores Cloud Billing budgets, which define a budget plan and the rules to execute as spend is tracked against that plan.", + "importDirectories": [ + "google/api", + "google/cloud/billing/budgets/v1", + "google/protobuf", + "google/type" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/billing/budgets/v1;budgets": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.billing.budgets.v1": 2 + } + } + }, + "services": [ + { + "shortName": "BudgetService", + "fullName": "google.cloud.billing.budgets.v1.BudgetService", + "methods": [ + { + "shortName": "CreateBudget", + "fullName": "google.cloud.billing.budgets.v1.BudgetService.CreateBudget", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=billingAccounts/*}/budgets" + } + ] + }, + { + "shortName": "DeleteBudget", + "fullName": "google.cloud.billing.budgets.v1.BudgetService.DeleteBudget", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=billingAccounts/*/budgets/*}" + } + ] + }, + { + "shortName": "GetBudget", + "fullName": "google.cloud.billing.budgets.v1.BudgetService.GetBudget", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=billingAccounts/*/budgets/*}" + } + ] + }, + { + "shortName": "ListBudgets", + "fullName": "google.cloud.billing.budgets.v1.BudgetService.ListBudgets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=billingAccounts/*}/budgets" + } + ] + }, + { + "shortName": "UpdateBudget", + "fullName": "google.cloud.billing.budgets.v1.BudgetService.UpdateBudget", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{budget.name=billingAccounts/*/budgets/*}" + } + ] + } + ] + } + ], + "configFile": "billingbudgets.yaml" + }, + { + "id": "google.cloud.billing.budgets.v1beta1", + "directory": "google/cloud/billing/budgets/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "billingbudgets.googleapis.com", + "title": "Cloud Billing Budget API", + "description": "The Cloud Billing Budget API stores Cloud Billing budgets, which define a budget plan and the rules to execute as spend is tracked against that plan.", + "importDirectories": [ + "google/api", + "google/cloud/billing/budgets/v1beta1", + "google/protobuf", + "google/type" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/billing/budgets/v1beta1;budgets": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.billing.budgets.v1beta1": 2 + } + } + }, + "services": [ + { + "shortName": "BudgetService", + "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService", + "methods": [ + { + "shortName": "CreateBudget", + "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService.CreateBudget", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=billingAccounts/*}/budgets" + } + ] + }, + { + "shortName": "DeleteBudget", + "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService.DeleteBudget", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=billingAccounts/*/budgets/*}" + } + ] + }, + { + "shortName": "GetBudget", + "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService.GetBudget", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=billingAccounts/*/budgets/*}" + } + ] + }, + { + "shortName": "ListBudgets", + "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService.ListBudgets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=billingAccounts/*}/budgets" + } + ] + }, + { + "shortName": "UpdateBudget", + "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService.UpdateBudget", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{budget.name=billingAccounts/*/budgets/*}" + } + ] + } + ] + } + ], + "configFile": "billingbudgets.yaml" + }, + { + "id": "google.cloud.billing.v1", + "directory": "google/cloud/billing/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "cloudbilling.googleapis.com", + "title": "Cloud Billing API", + "description": "Allows developers to manage billing for their Google Cloud Platform projects programmatically.", + "importDirectories": [ + "google/api", + "google/iam/v1", + "google/protobuf", + "google/type" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "": 1, + "Google.Cloud.Billing.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/billing/v1;billing": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.billing.v1": 2 + } + }, + "objc_class_prefix": { + "valueCounts": { + "": 1, + "CLDCTLG": 1 + } + } + }, + "services": [ + { + "shortName": "CloudBilling", + "fullName": "google.cloud.billing.v1.CloudBilling", + "methods": [ + { + "shortName": "CreateBillingAccount", + "fullName": "google.cloud.billing.v1.CloudBilling.CreateBillingAccount", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/billingAccounts" + } + ] + }, + { + "shortName": "GetBillingAccount", + "fullName": "google.cloud.billing.v1.CloudBilling.GetBillingAccount", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=billingAccounts/*}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.billing.v1.CloudBilling.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{resource=billingAccounts/*}:getIamPolicy" + } + ] + }, + { + "shortName": "GetProjectBillingInfo", + "fullName": "google.cloud.billing.v1.CloudBilling.GetProjectBillingInfo", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*}/billingInfo" + } + ] + }, + { + "shortName": "ListBillingAccounts", + "fullName": "google.cloud.billing.v1.CloudBilling.ListBillingAccounts", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/billingAccounts" + } + ] + }, + { + "shortName": "ListProjectBillingInfo", + "fullName": "google.cloud.billing.v1.CloudBilling.ListProjectBillingInfo", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=billingAccounts/*}/projects" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.billing.v1.CloudBilling.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=billingAccounts/*}:setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.billing.v1.CloudBilling.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=billingAccounts/*}:testIamPermissions" + } + ] + }, + { + "shortName": "UpdateBillingAccount", + "fullName": "google.cloud.billing.v1.CloudBilling.UpdateBillingAccount", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{name=billingAccounts/*}" + } + ] + }, + { + "shortName": "UpdateProjectBillingInfo", + "fullName": "google.cloud.billing.v1.CloudBilling.UpdateProjectBillingInfo", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/v1/{name=projects/*}/billingInfo" + } + ] + } + ] + }, + { + "shortName": "CloudCatalog", + "fullName": "google.cloud.billing.v1.CloudCatalog", + "methods": [ + { + "shortName": "ListServices", + "fullName": "google.cloud.billing.v1.CloudCatalog.ListServices", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/services" + } + ] + }, + { + "shortName": "ListSkus", + "fullName": "google.cloud.billing.v1.CloudCatalog.ListSkus", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=services/*}/skus" + } + ] + } + ] + } + ], + "configFile": "cloudbilling.yaml" + }, + { + "id": "google.cloud.binaryauthorization.v1", + "directory": "google/cloud/binaryauthorization/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "binaryauthorization.googleapis.com", + "title": "Binary Authorization API", + "description": "The management interface for Binary Authorization, a system providing policy control for images deployed to Kubernetes Engine clusters.", + "importDirectories": [ + "google/api", + "google/cloud/binaryauthorization/v1", + "google/protobuf", + "grafeas/v1" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 2 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.BinaryAuthorization.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/binaryauthorization/v1;binaryauthorization": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "false": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.protos.google.cloud.binaryauthorization.v1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\BinaryAuthorization\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::BinaryAuthorization::V1": 2 + } + } + }, + "services": [ + { + "shortName": "BinauthzManagementServiceV1", + "fullName": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1", + "methods": [ + { + "shortName": "CreateAttestor", + "fullName": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.CreateAttestor", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*}/attestors" + } + ] + }, + { + "shortName": "DeleteAttestor", + "fullName": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.DeleteAttestor", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/attestors/*}" + } + ] + }, + { + "shortName": "GetAttestor", + "fullName": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.GetAttestor", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/attestors/*}" + } + ] + }, + { + "shortName": "GetPolicy", + "fullName": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.GetPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/policy}" + } + ] + }, + { + "shortName": "ListAttestors", + "fullName": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.ListAttestors", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/attestors" + } + ] + }, + { + "shortName": "UpdateAttestor", + "fullName": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.UpdateAttestor", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/v1/{attestor.name=projects/*/attestors/*}" + } + ] + }, + { + "shortName": "UpdatePolicy", + "fullName": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.UpdatePolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/v1/{policy.name=projects/*/policy}" + } + ] + } + ] + }, + { + "shortName": "SystemPolicyV1", + "fullName": "google.cloud.binaryauthorization.v1.SystemPolicyV1", + "methods": [ + { + "shortName": "GetSystemPolicy", + "fullName": "google.cloud.binaryauthorization.v1.SystemPolicyV1.GetSystemPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=locations/*/policy}" + } + ] + } + ] + }, + { + "shortName": "ValidationHelperV1", + "fullName": "google.cloud.binaryauthorization.v1.ValidationHelperV1", + "methods": [ + { + "shortName": "ValidateAttestationOccurrence", + "fullName": "google.cloud.binaryauthorization.v1.ValidationHelperV1.ValidateAttestationOccurrence", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{attestor=projects/*/attestors/*}:validateAttestationOccurrence" + } + ] + } + ] + } + ], + "configFile": "binaryauthorization_v1.yaml" + }, + { + "id": "google.cloud.binaryauthorization.v1beta1", + "directory": "google/cloud/binaryauthorization/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "binaryauthorization.googleapis.com", + "title": "Binary Authorization API", + "description": "The management interface for Binary Authorization, a system providing policy control for images deployed to Kubernetes Engine clusters.", + "importDirectories": [ + "google/api", + "google/cloud/binaryauthorization/v1beta1", + "google/protobuf" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 3 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.BinaryAuthorization.V1Beta1": 3 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/binaryauthorization/v1beta1;binaryauthorization": 3 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 3 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.binaryauthorization.v1beta1": 3 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\BinaryAuthorization\\V1beta1": 3 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::BinaryAuthorization::V1beta1": 3 + } + } + }, + "services": [ + { + "shortName": "BinauthzManagementServiceV1Beta1", + "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1", + "methods": [ + { + "shortName": "CreateAttestor", + "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.CreateAttestor", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*}/attestors" + } + ] + }, + { + "shortName": "DeleteAttestor", + "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.DeleteAttestor", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/attestors/*}" + } + ] + }, + { + "shortName": "GetAttestor", + "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetAttestor", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/attestors/*}" + } + ] + }, + { + "shortName": "GetPolicy", + "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/policy}" + } + ] + }, + { + "shortName": "ListAttestors", + "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.ListAttestors", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*}/attestors" + } + ] + }, + { + "shortName": "UpdateAttestor", + "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdateAttestor", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/v1beta1/{attestor.name=projects/*/attestors/*}" + } + ] + }, + { + "shortName": "UpdatePolicy", + "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdatePolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/v1beta1/{policy.name=projects/*/policy}" + } + ] + } + ] + }, + { + "shortName": "SystemPolicyV1Beta1", + "fullName": "google.cloud.binaryauthorization.v1beta1.SystemPolicyV1Beta1", + "methods": [ + { + "shortName": "GetSystemPolicy", + "fullName": "google.cloud.binaryauthorization.v1beta1.SystemPolicyV1Beta1.GetSystemPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=locations/*/policy}" + } + ] + } + ] + } + ], + "configFile": "binaryauthorization_v1beta1.yaml" + }, + { + "id": "google.cloud.channel.v1", + "directory": "google/cloud/channel/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "cloudchannel.googleapis.com", + "title": "Cloud Channel API", + "description": "The Cloud Channel API enables Google Cloud partners to have a single unified resale platform and APIs across all of Google Cloud including GCP, Workspace, Maps and Chrome.", + "importDirectories": [ + "google/api", + "google/cloud/channel/v1", + "google/longrunning", + "google/protobuf", + "google/type" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/channel/v1;channel": 9 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 9 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.channel.v1": 9 + } + } + }, + "services": [ + { + "shortName": "CloudChannelService", + "fullName": "google.cloud.channel.v1.CloudChannelService", + "methods": [ + { + "shortName": "ActivateEntitlement", + "fullName": "google.cloud.channel.v1.CloudChannelService.ActivateEntitlement", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:activate" + } + ] + }, + { + "shortName": "CancelEntitlement", + "fullName": "google.cloud.channel.v1.CloudChannelService.CancelEntitlement", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:cancel" + } + ] + }, + { + "shortName": "ChangeOffer", + "fullName": "google.cloud.channel.v1.CloudChannelService.ChangeOffer", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:changeOffer" + } + ] + }, + { + "shortName": "ChangeParameters", + "fullName": "google.cloud.channel.v1.CloudChannelService.ChangeParameters", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:changeParameters" + } + ] + }, + { + "shortName": "ChangeRenewalSettings", + "fullName": "google.cloud.channel.v1.CloudChannelService.ChangeRenewalSettings", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:changeRenewalSettings" + } + ] + }, + { + "shortName": "CheckCloudIdentityAccountsExist", + "fullName": "google.cloud.channel.v1.CloudChannelService.CheckCloudIdentityAccountsExist", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accounts/*}:checkCloudIdentityAccountsExist" + } + ] + }, + { + "shortName": "CreateChannelPartnerLink", + "fullName": "google.cloud.channel.v1.CloudChannelService.CreateChannelPartnerLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accounts/*}/channelPartnerLinks" + } + ] + }, + { + "shortName": "CreateCustomer", + "fullName": "google.cloud.channel.v1.CloudChannelService.CreateCustomer", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accounts/*}/customers" + }, + { + "httpMethod": "POST", + "path": "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers" + } + ] + }, + { + "shortName": "CreateEntitlement", + "fullName": "google.cloud.channel.v1.CloudChannelService.CreateEntitlement", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accounts/*/customers/*}/entitlements" + } + ] + }, + { + "shortName": "DeleteCustomer", + "fullName": "google.cloud.channel.v1.CloudChannelService.DeleteCustomer", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=accounts/*/customers/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v1/{name=accounts/*/channelPartnerLinks/*/customers/*}" + } + ] + }, + { + "shortName": "GetChannelPartnerLink", + "fullName": "google.cloud.channel.v1.CloudChannelService.GetChannelPartnerLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=accounts/*/channelPartnerLinks/*}" + } + ] + }, + { + "shortName": "GetCustomer", + "fullName": "google.cloud.channel.v1.CloudChannelService.GetCustomer", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=accounts/*/customers/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=accounts/*/channelPartnerLinks/*/customers/*}" + } + ] + }, + { + "shortName": "GetEntitlement", + "fullName": "google.cloud.channel.v1.CloudChannelService.GetEntitlement", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=accounts/*/customers/*/entitlements/*}" + } + ] + }, + { + "shortName": "ImportCustomer", + "fullName": "google.cloud.channel.v1.CloudChannelService.ImportCustomer", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accounts/*}/customers:import" + }, + { + "httpMethod": "POST", + "path": "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers:import" + } + ] + }, + { + "shortName": "ListChannelPartnerLinks", + "fullName": "google.cloud.channel.v1.CloudChannelService.ListChannelPartnerLinks", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=accounts/*}/channelPartnerLinks" + } + ] + }, + { + "shortName": "ListCustomers", + "fullName": "google.cloud.channel.v1.CloudChannelService.ListCustomers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=accounts/*}/customers" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers" + } + ] + }, + { + "shortName": "ListEntitlements", + "fullName": "google.cloud.channel.v1.CloudChannelService.ListEntitlements", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=accounts/*/customers/*}/entitlements" + } + ] + }, + { + "shortName": "ListOffers", + "fullName": "google.cloud.channel.v1.CloudChannelService.ListOffers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=accounts/*}/offers" + } + ] + }, + { + "shortName": "ListProducts", + "fullName": "google.cloud.channel.v1.CloudChannelService.ListProducts", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/products" + } + ] + }, + { + "shortName": "ListPurchasableOffers", + "fullName": "google.cloud.channel.v1.CloudChannelService.ListPurchasableOffers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{customer=accounts/*/customers/*}:listPurchasableOffers" + } + ] + }, + { + "shortName": "ListPurchasableSkus", + "fullName": "google.cloud.channel.v1.CloudChannelService.ListPurchasableSkus", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{customer=accounts/*/customers/*}:listPurchasableSkus" + } + ] + }, + { + "shortName": "ListSkus", + "fullName": "google.cloud.channel.v1.CloudChannelService.ListSkus", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=products/*}/skus" + } + ] + }, + { + "shortName": "ListSubscribers", + "fullName": "google.cloud.channel.v1.CloudChannelService.ListSubscribers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{account=accounts/*}:listSubscribers" + } + ] + }, + { + "shortName": "ListTransferableOffers", + "fullName": "google.cloud.channel.v1.CloudChannelService.ListTransferableOffers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accounts/*}:listTransferableOffers" + } + ] + }, + { + "shortName": "ListTransferableSkus", + "fullName": "google.cloud.channel.v1.CloudChannelService.ListTransferableSkus", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accounts/*}:listTransferableSkus" + } + ] + }, + { + "shortName": "LookupOffer", + "fullName": "google.cloud.channel.v1.CloudChannelService.LookupOffer", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{entitlement=accounts/*/customers/*/entitlements/*}:lookupOffer" + } + ] + }, + { + "shortName": "ProvisionCloudIdentity", + "fullName": "google.cloud.channel.v1.CloudChannelService.ProvisionCloudIdentity", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{customer=accounts/*/customers/*}:provisionCloudIdentity" + } + ] + }, + { + "shortName": "RegisterSubscriber", + "fullName": "google.cloud.channel.v1.CloudChannelService.RegisterSubscriber", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{account=accounts/*}:register" + } + ] + }, + { + "shortName": "StartPaidService", + "fullName": "google.cloud.channel.v1.CloudChannelService.StartPaidService", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:startPaidService" + } + ] + }, + { + "shortName": "SuspendEntitlement", + "fullName": "google.cloud.channel.v1.CloudChannelService.SuspendEntitlement", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:suspend" + } + ] + }, + { + "shortName": "TransferEntitlements", + "fullName": "google.cloud.channel.v1.CloudChannelService.TransferEntitlements", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accounts/*/customers/*}:transferEntitlements" + } + ] + }, + { + "shortName": "TransferEntitlementsToGoogle", + "fullName": "google.cloud.channel.v1.CloudChannelService.TransferEntitlementsToGoogle", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accounts/*/customers/*}:transferEntitlementsToGoogle" + } + ] + }, + { + "shortName": "UnregisterSubscriber", + "fullName": "google.cloud.channel.v1.CloudChannelService.UnregisterSubscriber", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{account=accounts/*}:unregister" + } + ] + }, + { + "shortName": "UpdateChannelPartnerLink", + "fullName": "google.cloud.channel.v1.CloudChannelService.UpdateChannelPartnerLink", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{name=accounts/*/channelPartnerLinks/*}" + } + ] + }, + { + "shortName": "UpdateCustomer", + "fullName": "google.cloud.channel.v1.CloudChannelService.UpdateCustomer", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{customer.name=accounts/*/customers/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{customer.name=accounts/*/channelPartnerLinks/*/customers/*}" + } + ] + } + ] + } + ], + "configFile": "cloudchannel_v1.yaml" + }, + { + "id": "google.cloud.clouddms.v1", + "directory": "google/cloud/clouddms/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "datamigration.googleapis.com", + "title": "Database Migration API", + "description": "Manage Cloud Database Migration Service resources on Google Cloud Platform.", + "importDirectories": [ + "google/api", + "google/cloud/clouddms/v1", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.CloudDms.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/clouddms/v1;clouddms": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.clouddms.v1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\CloudDms\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::CloudDMS::V1": 2 + } + } + }, + "services": [ + { + "shortName": "DataMigrationService", + "fullName": "google.cloud.clouddms.v1.DataMigrationService", + "methods": [ + { + "shortName": "CreateConnectionProfile", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.CreateConnectionProfile", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/connectionProfiles" + } + ] + }, + { + "shortName": "CreateMigrationJob", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.CreateMigrationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/migrationJobs" + } + ] + }, + { + "shortName": "DeleteConnectionProfile", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.DeleteConnectionProfile", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/connectionProfiles/*}" + } + ] + }, + { + "shortName": "DeleteMigrationJob", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.DeleteMigrationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}" + } + ] + }, + { + "shortName": "GenerateSshScript", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.GenerateSshScript", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{migration_job=projects/*/locations/*/migrationJobs/*}:generateSshScript" + } + ] + }, + { + "shortName": "GetConnectionProfile", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.GetConnectionProfile", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/connectionProfiles/*}" + } + ] + }, + { + "shortName": "GetMigrationJob", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.GetMigrationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}" + } + ] + }, + { + "shortName": "ListConnectionProfiles", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.ListConnectionProfiles", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/connectionProfiles" + } + ] + }, + { + "shortName": "ListMigrationJobs", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.ListMigrationJobs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/migrationJobs" + } + ] + }, + { + "shortName": "PromoteMigrationJob", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.PromoteMigrationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:promote" + } + ] + }, + { + "shortName": "RestartMigrationJob", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.RestartMigrationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:restart" + } + ] + }, + { + "shortName": "ResumeMigrationJob", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.ResumeMigrationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:resume" + } + ] + }, + { + "shortName": "StartMigrationJob", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.StartMigrationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:start" + } + ] + }, + { + "shortName": "StopMigrationJob", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.StopMigrationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:stop" + } + ] + }, + { + "shortName": "UpdateConnectionProfile", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.UpdateConnectionProfile", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{connection_profile.name=projects/*/locations/*/connectionProfiles/*}" + } + ] + }, + { + "shortName": "UpdateMigrationJob", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.UpdateMigrationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{migration_job.name=projects/*/locations/*/migrationJobs/*}" + } + ] + }, + { + "shortName": "VerifyMigrationJob", + "fullName": "google.cloud.clouddms.v1.DataMigrationService.VerifyMigrationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:verify" + } + ] + } + ] + } + ], + "configFile": "datamigration_v1.yaml" + }, + { + "id": "google.cloud.compute.v1", + "directory": "google/cloud/compute/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "compute.googleapis.com", + "title": "Google Compute Engine API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Compute.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/compute/v1;compute": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.compute.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Compute\\V1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Compute::V1": 1 + } + } + }, + "services": [ + { + "shortName": "AcceleratorTypes", + "fullName": "google.cloud.compute.v1.AcceleratorTypes", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.AcceleratorTypes.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/acceleratorTypes" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.AcceleratorTypes.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/acceleratorTypes/{accelerator_type}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.AcceleratorTypes.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/acceleratorTypes" + } + ] + } + ] + }, + { + "shortName": "Addresses", + "fullName": "google.cloud.compute.v1.Addresses", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.Addresses.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/addresses" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Addresses.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/addresses/{address}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Addresses.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/addresses/{address}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Addresses.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/addresses" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Addresses.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/addresses" + } + ] + } + ] + }, + { + "shortName": "Autoscalers", + "fullName": "google.cloud.compute.v1.Autoscalers", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.Autoscalers.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/autoscalers" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Autoscalers.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/zones/{zone}/autoscalers/{autoscaler}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Autoscalers.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/autoscalers/{autoscaler}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Autoscalers.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/autoscalers" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Autoscalers.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/autoscalers" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.Autoscalers.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/zones/{zone}/autoscalers" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.Autoscalers.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/zones/{zone}/autoscalers" + } + ] + } + ] + }, + { + "shortName": "BackendBuckets", + "fullName": "google.cloud.compute.v1.BackendBuckets", + "methods": [ + { + "shortName": "AddSignedUrlKey", + "fullName": "google.cloud.compute.v1.BackendBuckets.AddSignedUrlKey", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}/addSignedUrlKey" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.BackendBuckets.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}" + } + ] + }, + { + "shortName": "DeleteSignedUrlKey", + "fullName": "google.cloud.compute.v1.BackendBuckets.DeleteSignedUrlKey", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}/deleteSignedUrlKey" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.BackendBuckets.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.BackendBuckets.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/backendBuckets" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.BackendBuckets.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/backendBuckets" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.BackendBuckets.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.BackendBuckets.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}" + } + ] + } + ] + }, + { + "shortName": "BackendServices", + "fullName": "google.cloud.compute.v1.BackendServices", + "methods": [ + { + "shortName": "AddSignedUrlKey", + "fullName": "google.cloud.compute.v1.BackendServices.AddSignedUrlKey", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/backendServices/{backend_service}/addSignedUrlKey" + } + ] + }, + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.BackendServices.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/backendServices" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.BackendServices.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/backendServices/{backend_service}" + } + ] + }, + { + "shortName": "DeleteSignedUrlKey", + "fullName": "google.cloud.compute.v1.BackendServices.DeleteSignedUrlKey", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/backendServices/{backend_service}/deleteSignedUrlKey" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.BackendServices.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/backendServices/{backend_service}" + } + ] + }, + { + "shortName": "GetHealth", + "fullName": "google.cloud.compute.v1.BackendServices.GetHealth", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/backendServices/{backend_service}/getHealth" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.BackendServices.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/backendServices" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.BackendServices.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/backendServices" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.BackendServices.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/backendServices/{backend_service}" + } + ] + }, + { + "shortName": "SetSecurityPolicy", + "fullName": "google.cloud.compute.v1.BackendServices.SetSecurityPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/backendServices/{backend_service}/setSecurityPolicy" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.BackendServices.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/global/backendServices/{backend_service}" + } + ] + } + ] + }, + { + "shortName": "DiskTypes", + "fullName": "google.cloud.compute.v1.DiskTypes", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.DiskTypes.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/diskTypes" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.DiskTypes.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/diskTypes/{disk_type}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.DiskTypes.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/diskTypes" + } + ] + } + ] + }, + { + "shortName": "Disks", + "fullName": "google.cloud.compute.v1.Disks", + "methods": [ + { + "shortName": "AddResourcePolicies", + "fullName": "google.cloud.compute.v1.Disks.AddResourcePolicies", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/addResourcePolicies" + } + ] + }, + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.Disks.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/disks" + } + ] + }, + { + "shortName": "CreateSnapshot", + "fullName": "google.cloud.compute.v1.Disks.CreateSnapshot", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/createSnapshot" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Disks.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Disks.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.Disks.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Disks.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Disks.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks" + } + ] + }, + { + "shortName": "RemoveResourcePolicies", + "fullName": "google.cloud.compute.v1.Disks.RemoveResourcePolicies", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/removeResourcePolicies" + } + ] + }, + { + "shortName": "Resize", + "fullName": "google.cloud.compute.v1.Disks.Resize", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/resize" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.Disks.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "SetLabels", + "fullName": "google.cloud.compute.v1.Disks.SetLabels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks/{resource}/setLabels" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.Disks.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/disks/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "ExternalVpnGateways", + "fullName": "google.cloud.compute.v1.ExternalVpnGateways", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.ExternalVpnGateways.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/externalVpnGateways/{external_vpn_gateway}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.ExternalVpnGateways.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/externalVpnGateways/{external_vpn_gateway}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.ExternalVpnGateways.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/externalVpnGateways" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.ExternalVpnGateways.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/externalVpnGateways" + } + ] + }, + { + "shortName": "SetLabels", + "fullName": "google.cloud.compute.v1.ExternalVpnGateways.SetLabels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/externalVpnGateways/{resource}/setLabels" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.ExternalVpnGateways.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/externalVpnGateways/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "FirewallPolicies", + "fullName": "google.cloud.compute.v1.FirewallPolicies", + "methods": [ + { + "shortName": "AddAssociation", + "fullName": "google.cloud.compute.v1.FirewallPolicies.AddAssociation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/addAssociation" + } + ] + }, + { + "shortName": "AddRule", + "fullName": "google.cloud.compute.v1.FirewallPolicies.AddRule", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/addRule" + } + ] + }, + { + "shortName": "CloneRules", + "fullName": "google.cloud.compute.v1.FirewallPolicies.CloneRules", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/cloneRules" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.FirewallPolicies.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.FirewallPolicies.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}" + } + ] + }, + { + "shortName": "GetAssociation", + "fullName": "google.cloud.compute.v1.FirewallPolicies.GetAssociation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/getAssociation" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.FirewallPolicies.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/locations/global/firewallPolicies/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "GetRule", + "fullName": "google.cloud.compute.v1.FirewallPolicies.GetRule", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/getRule" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.FirewallPolicies.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/locations/global/firewallPolicies" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.FirewallPolicies.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/locations/global/firewallPolicies" + } + ] + }, + { + "shortName": "ListAssociations", + "fullName": "google.cloud.compute.v1.FirewallPolicies.ListAssociations", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/locations/global/firewallPolicies/listAssociations" + } + ] + }, + { + "shortName": "Move", + "fullName": "google.cloud.compute.v1.FirewallPolicies.Move", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/move" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.FirewallPolicies.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}" + } + ] + }, + { + "shortName": "PatchRule", + "fullName": "google.cloud.compute.v1.FirewallPolicies.PatchRule", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/patchRule" + } + ] + }, + { + "shortName": "RemoveAssociation", + "fullName": "google.cloud.compute.v1.FirewallPolicies.RemoveAssociation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/removeAssociation" + } + ] + }, + { + "shortName": "RemoveRule", + "fullName": "google.cloud.compute.v1.FirewallPolicies.RemoveRule", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/removeRule" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.FirewallPolicies.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/locations/global/firewallPolicies/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.FirewallPolicies.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/locations/global/firewallPolicies/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "Firewalls", + "fullName": "google.cloud.compute.v1.Firewalls", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Firewalls.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/firewalls/{firewall}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Firewalls.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/firewalls/{firewall}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Firewalls.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/firewalls" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Firewalls.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/firewalls" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.Firewalls.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/firewalls/{firewall}" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.Firewalls.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/global/firewalls/{firewall}" + } + ] + } + ] + }, + { + "shortName": "ForwardingRules", + "fullName": "google.cloud.compute.v1.ForwardingRules", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.ForwardingRules.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/forwardingRules" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.ForwardingRules.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.ForwardingRules.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.ForwardingRules.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/forwardingRules" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.ForwardingRules.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/forwardingRules" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.ForwardingRules.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}" + } + ] + }, + { + "shortName": "SetLabels", + "fullName": "google.cloud.compute.v1.ForwardingRules.SetLabels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/forwardingRules/{resource}/setLabels" + } + ] + }, + { + "shortName": "SetTarget", + "fullName": "google.cloud.compute.v1.ForwardingRules.SetTarget", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}/setTarget" + } + ] + } + ] + }, + { + "shortName": "GlobalAddresses", + "fullName": "google.cloud.compute.v1.GlobalAddresses", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.GlobalAddresses.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/addresses/{address}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.GlobalAddresses.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/addresses/{address}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.GlobalAddresses.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/addresses" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.GlobalAddresses.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/addresses" + } + ] + } + ] + }, + { + "shortName": "GlobalForwardingRules", + "fullName": "google.cloud.compute.v1.GlobalForwardingRules", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.GlobalForwardingRules.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.GlobalForwardingRules.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.GlobalForwardingRules.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/forwardingRules" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.GlobalForwardingRules.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/forwardingRules" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.GlobalForwardingRules.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}" + } + ] + }, + { + "shortName": "SetLabels", + "fullName": "google.cloud.compute.v1.GlobalForwardingRules.SetLabels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/forwardingRules/{resource}/setLabels" + } + ] + }, + { + "shortName": "SetTarget", + "fullName": "google.cloud.compute.v1.GlobalForwardingRules.SetTarget", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}/setTarget" + } + ] + } + ] + }, + { + "shortName": "GlobalNetworkEndpointGroups", + "fullName": "google.cloud.compute.v1.GlobalNetworkEndpointGroups", + "methods": [ + { + "shortName": "AttachNetworkEndpoints", + "fullName": "google.cloud.compute.v1.GlobalNetworkEndpointGroups.AttachNetworkEndpoints", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/attachNetworkEndpoints" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.GlobalNetworkEndpointGroups.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}" + } + ] + }, + { + "shortName": "DetachNetworkEndpoints", + "fullName": "google.cloud.compute.v1.GlobalNetworkEndpointGroups.DetachNetworkEndpoints", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/detachNetworkEndpoints" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.GlobalNetworkEndpointGroups.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.GlobalNetworkEndpointGroups.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/networkEndpointGroups" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.GlobalNetworkEndpointGroups.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/networkEndpointGroups" + } + ] + }, + { + "shortName": "ListNetworkEndpoints", + "fullName": "google.cloud.compute.v1.GlobalNetworkEndpointGroups.ListNetworkEndpoints", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/listNetworkEndpoints" + } + ] + } + ] + }, + { + "shortName": "GlobalOperations", + "fullName": "google.cloud.compute.v1.GlobalOperations", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.GlobalOperations.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/operations" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.GlobalOperations.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/operations/{operation}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.GlobalOperations.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/operations/{operation}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.GlobalOperations.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/operations" + } + ] + }, + { + "shortName": "Wait", + "fullName": "google.cloud.compute.v1.GlobalOperations.Wait", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/operations/{operation}/wait" + } + ] + } + ] + }, + { + "shortName": "GlobalOrganizationOperations", + "fullName": "google.cloud.compute.v1.GlobalOrganizationOperations", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.GlobalOrganizationOperations.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/locations/global/operations/{operation}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.GlobalOrganizationOperations.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/locations/global/operations/{operation}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.GlobalOrganizationOperations.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/locations/global/operations" + } + ] + } + ] + }, + { + "shortName": "GlobalPublicDelegatedPrefixes", + "fullName": "google.cloud.compute.v1.GlobalPublicDelegatedPrefixes", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.GlobalPublicDelegatedPrefixes.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.GlobalPublicDelegatedPrefixes.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.GlobalPublicDelegatedPrefixes.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/publicDelegatedPrefixes" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.GlobalPublicDelegatedPrefixes.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/publicDelegatedPrefixes" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.GlobalPublicDelegatedPrefixes.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}" + } + ] + } + ] + }, + { + "shortName": "HealthChecks", + "fullName": "google.cloud.compute.v1.HealthChecks", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.HealthChecks.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/healthChecks" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.HealthChecks.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/healthChecks/{health_check}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.HealthChecks.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/healthChecks/{health_check}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.HealthChecks.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/healthChecks" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.HealthChecks.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/healthChecks" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.HealthChecks.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/healthChecks/{health_check}" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.HealthChecks.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/global/healthChecks/{health_check}" + } + ] + } + ] + }, + { + "shortName": "ImageFamilyViews", + "fullName": "google.cloud.compute.v1.ImageFamilyViews", + "methods": [ + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.ImageFamilyViews.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/imageFamilyViews/{family}" + } + ] + } + ] + }, + { + "shortName": "Images", + "fullName": "google.cloud.compute.v1.Images", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Images.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/images/{image}" + } + ] + }, + { + "shortName": "Deprecate", + "fullName": "google.cloud.compute.v1.Images.Deprecate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/images/{image}/deprecate" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Images.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/images/{image}" + } + ] + }, + { + "shortName": "GetFromFamily", + "fullName": "google.cloud.compute.v1.Images.GetFromFamily", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/images/family/{family}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.Images.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/images/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Images.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/images" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Images.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/images" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.Images.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/images/{image}" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.Images.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/images/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "SetLabels", + "fullName": "google.cloud.compute.v1.Images.SetLabels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/images/{resource}/setLabels" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.Images.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/images/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "InstanceGroupManagers", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers", + "methods": [ + { + "shortName": "AbandonInstances", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.AbandonInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/abandonInstances" + } + ] + }, + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/instanceGroupManagers" + } + ] + }, + { + "shortName": "ApplyUpdatesToInstances", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.ApplyUpdatesToInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/applyUpdatesToInstances" + } + ] + }, + { + "shortName": "CreateInstances", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.CreateInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/createInstances" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}" + } + ] + }, + { + "shortName": "DeleteInstances", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.DeleteInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/deleteInstances" + } + ] + }, + { + "shortName": "DeletePerInstanceConfigs", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.DeletePerInstanceConfigs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/deletePerInstanceConfigs" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers" + } + ] + }, + { + "shortName": "ListErrors", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.ListErrors", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listErrors" + } + ] + }, + { + "shortName": "ListManagedInstances", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.ListManagedInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listManagedInstances" + } + ] + }, + { + "shortName": "ListPerInstanceConfigs", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.ListPerInstanceConfigs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listPerInstanceConfigs" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}" + } + ] + }, + { + "shortName": "PatchPerInstanceConfigs", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.PatchPerInstanceConfigs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/patchPerInstanceConfigs" + } + ] + }, + { + "shortName": "RecreateInstances", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.RecreateInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/recreateInstances" + } + ] + }, + { + "shortName": "Resize", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.Resize", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resize" + } + ] + }, + { + "shortName": "SetInstanceTemplate", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.SetInstanceTemplate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/setInstanceTemplate" + } + ] + }, + { + "shortName": "SetTargetPools", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.SetTargetPools", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/setTargetPools" + } + ] + }, + { + "shortName": "UpdatePerInstanceConfigs", + "fullName": "google.cloud.compute.v1.InstanceGroupManagers.UpdatePerInstanceConfigs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/updatePerInstanceConfigs" + } + ] + } + ] + }, + { + "shortName": "InstanceGroups", + "fullName": "google.cloud.compute.v1.InstanceGroups", + "methods": [ + { + "shortName": "AddInstances", + "fullName": "google.cloud.compute.v1.InstanceGroups.AddInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/addInstances" + } + ] + }, + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.InstanceGroups.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/instanceGroups" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.InstanceGroups.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.InstanceGroups.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.InstanceGroups.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroups" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.InstanceGroups.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroups" + } + ] + }, + { + "shortName": "ListInstances", + "fullName": "google.cloud.compute.v1.InstanceGroups.ListInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/listInstances" + } + ] + }, + { + "shortName": "RemoveInstances", + "fullName": "google.cloud.compute.v1.InstanceGroups.RemoveInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/removeInstances" + } + ] + }, + { + "shortName": "SetNamedPorts", + "fullName": "google.cloud.compute.v1.InstanceGroups.SetNamedPorts", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/setNamedPorts" + } + ] + } + ] + }, + { + "shortName": "InstanceTemplates", + "fullName": "google.cloud.compute.v1.InstanceTemplates", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.InstanceTemplates.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/instanceTemplates/{instance_template}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.InstanceTemplates.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/instanceTemplates/{instance_template}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.InstanceTemplates.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/instanceTemplates/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.InstanceTemplates.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/instanceTemplates" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.InstanceTemplates.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/instanceTemplates" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.InstanceTemplates.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/instanceTemplates/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.InstanceTemplates.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/instanceTemplates/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "Instances", + "fullName": "google.cloud.compute.v1.Instances", + "methods": [ + { + "shortName": "AddAccessConfig", + "fullName": "google.cloud.compute.v1.Instances.AddAccessConfig", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addAccessConfig" + } + ] + }, + { + "shortName": "AddResourcePolicies", + "fullName": "google.cloud.compute.v1.Instances.AddResourcePolicies", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addResourcePolicies" + } + ] + }, + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.Instances.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/instances" + } + ] + }, + { + "shortName": "AttachDisk", + "fullName": "google.cloud.compute.v1.Instances.AttachDisk", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/attachDisk" + } + ] + }, + { + "shortName": "BulkInsert", + "fullName": "google.cloud.compute.v1.Instances.BulkInsert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/bulkInsert" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Instances.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}" + } + ] + }, + { + "shortName": "DeleteAccessConfig", + "fullName": "google.cloud.compute.v1.Instances.DeleteAccessConfig", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/deleteAccessConfig" + } + ] + }, + { + "shortName": "DetachDisk", + "fullName": "google.cloud.compute.v1.Instances.DetachDisk", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/detachDisk" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Instances.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}" + } + ] + }, + { + "shortName": "GetEffectiveFirewalls", + "fullName": "google.cloud.compute.v1.Instances.GetEffectiveFirewalls", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls" + } + ] + }, + { + "shortName": "GetGuestAttributes", + "fullName": "google.cloud.compute.v1.Instances.GetGuestAttributes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getGuestAttributes" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.Instances.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "GetScreenshot", + "fullName": "google.cloud.compute.v1.Instances.GetScreenshot", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/screenshot" + } + ] + }, + { + "shortName": "GetSerialPortOutput", + "fullName": "google.cloud.compute.v1.Instances.GetSerialPortOutput", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/serialPort" + } + ] + }, + { + "shortName": "GetShieldedInstanceIdentity", + "fullName": "google.cloud.compute.v1.Instances.GetShieldedInstanceIdentity", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getShieldedInstanceIdentity" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Instances.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Instances.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances" + } + ] + }, + { + "shortName": "ListReferrers", + "fullName": "google.cloud.compute.v1.Instances.ListReferrers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/referrers" + } + ] + }, + { + "shortName": "RemoveResourcePolicies", + "fullName": "google.cloud.compute.v1.Instances.RemoveResourcePolicies", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/removeResourcePolicies" + } + ] + }, + { + "shortName": "Reset", + "fullName": "google.cloud.compute.v1.Instances.Reset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/reset" + } + ] + }, + { + "shortName": "SendDiagnosticInterrupt", + "fullName": "google.cloud.compute.v1.Instances.SendDiagnosticInterrupt", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/sendDiagnosticInterrupt" + } + ] + }, + { + "shortName": "SetDeletionProtection", + "fullName": "google.cloud.compute.v1.Instances.SetDeletionProtection", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setDeletionProtection" + } + ] + }, + { + "shortName": "SetDiskAutoDelete", + "fullName": "google.cloud.compute.v1.Instances.SetDiskAutoDelete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.Instances.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "SetLabels", + "fullName": "google.cloud.compute.v1.Instances.SetLabels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setLabels" + } + ] + }, + { + "shortName": "SetMachineResources", + "fullName": "google.cloud.compute.v1.Instances.SetMachineResources", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineResources" + } + ] + }, + { + "shortName": "SetMachineType", + "fullName": "google.cloud.compute.v1.Instances.SetMachineType", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineType" + } + ] + }, + { + "shortName": "SetMetadata", + "fullName": "google.cloud.compute.v1.Instances.SetMetadata", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMetadata" + } + ] + }, + { + "shortName": "SetMinCpuPlatform", + "fullName": "google.cloud.compute.v1.Instances.SetMinCpuPlatform", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform" + } + ] + }, + { + "shortName": "SetScheduling", + "fullName": "google.cloud.compute.v1.Instances.SetScheduling", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setScheduling" + } + ] + }, + { + "shortName": "SetServiceAccount", + "fullName": "google.cloud.compute.v1.Instances.SetServiceAccount", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setServiceAccount" + } + ] + }, + { + "shortName": "SetShieldedInstanceIntegrityPolicy", + "fullName": "google.cloud.compute.v1.Instances.SetShieldedInstanceIntegrityPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy" + } + ] + }, + { + "shortName": "SetTags", + "fullName": "google.cloud.compute.v1.Instances.SetTags", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setTags" + } + ] + }, + { + "shortName": "SimulateMaintenanceEvent", + "fullName": "google.cloud.compute.v1.Instances.SimulateMaintenanceEvent", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent" + } + ] + }, + { + "shortName": "Start", + "fullName": "google.cloud.compute.v1.Instances.Start", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/start" + } + ] + }, + { + "shortName": "StartWithEncryptionKey", + "fullName": "google.cloud.compute.v1.Instances.StartWithEncryptionKey", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey" + } + ] + }, + { + "shortName": "Stop", + "fullName": "google.cloud.compute.v1.Instances.Stop", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/stop" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.Instances.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.Instances.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}" + } + ] + }, + { + "shortName": "UpdateAccessConfig", + "fullName": "google.cloud.compute.v1.Instances.UpdateAccessConfig", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateAccessConfig" + } + ] + }, + { + "shortName": "UpdateDisplayDevice", + "fullName": "google.cloud.compute.v1.Instances.UpdateDisplayDevice", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateDisplayDevice" + } + ] + }, + { + "shortName": "UpdateNetworkInterface", + "fullName": "google.cloud.compute.v1.Instances.UpdateNetworkInterface", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateNetworkInterface" + } + ] + }, + { + "shortName": "UpdateShieldedInstanceConfig", + "fullName": "google.cloud.compute.v1.Instances.UpdateShieldedInstanceConfig", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateShieldedInstanceConfig" + } + ] + } + ] + }, + { + "shortName": "InterconnectAttachments", + "fullName": "google.cloud.compute.v1.InterconnectAttachments", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.InterconnectAttachments.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/interconnectAttachments" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.InterconnectAttachments.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.InterconnectAttachments.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.InterconnectAttachments.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/interconnectAttachments" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.InterconnectAttachments.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/interconnectAttachments" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.InterconnectAttachments.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}" + } + ] + } + ] + }, + { + "shortName": "InterconnectLocations", + "fullName": "google.cloud.compute.v1.InterconnectLocations", + "methods": [ + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.InterconnectLocations.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/interconnectLocations/{interconnect_location}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.InterconnectLocations.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/interconnectLocations" + } + ] + } + ] + }, + { + "shortName": "Interconnects", + "fullName": "google.cloud.compute.v1.Interconnects", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Interconnects.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/interconnects/{interconnect}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Interconnects.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/interconnects/{interconnect}" + } + ] + }, + { + "shortName": "GetDiagnostics", + "fullName": "google.cloud.compute.v1.Interconnects.GetDiagnostics", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/interconnects/{interconnect}/getDiagnostics" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Interconnects.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/interconnects" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Interconnects.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/interconnects" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.Interconnects.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/interconnects/{interconnect}" + } + ] + } + ] + }, + { + "shortName": "LicenseCodes", + "fullName": "google.cloud.compute.v1.LicenseCodes", + "methods": [ + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.LicenseCodes.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/licenseCodes/{license_code}" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.LicenseCodes.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/licenseCodes/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "Licenses", + "fullName": "google.cloud.compute.v1.Licenses", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Licenses.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/licenses/{license}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Licenses.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/licenses/{license}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.Licenses.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/licenses/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Licenses.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/licenses" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Licenses.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/licenses" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.Licenses.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/licenses/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.Licenses.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/licenses/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "MachineTypes", + "fullName": "google.cloud.compute.v1.MachineTypes", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.MachineTypes.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/machineTypes" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.MachineTypes.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/machineTypes/{machine_type}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.MachineTypes.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/machineTypes" + } + ] + } + ] + }, + { + "shortName": "NetworkEndpointGroups", + "fullName": "google.cloud.compute.v1.NetworkEndpointGroups", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.NetworkEndpointGroups.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/networkEndpointGroups" + } + ] + }, + { + "shortName": "AttachNetworkEndpoints", + "fullName": "google.cloud.compute.v1.NetworkEndpointGroups.AttachNetworkEndpoints", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{network_endpoint_group}/attachNetworkEndpoints" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.NetworkEndpointGroups.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{network_endpoint_group}" + } + ] + }, + { + "shortName": "DetachNetworkEndpoints", + "fullName": "google.cloud.compute.v1.NetworkEndpointGroups.DetachNetworkEndpoints", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{network_endpoint_group}/detachNetworkEndpoints" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.NetworkEndpointGroups.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{network_endpoint_group}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.NetworkEndpointGroups.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.NetworkEndpointGroups.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups" + } + ] + }, + { + "shortName": "ListNetworkEndpoints", + "fullName": "google.cloud.compute.v1.NetworkEndpointGroups.ListNetworkEndpoints", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{network_endpoint_group}/listNetworkEndpoints" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.NetworkEndpointGroups.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "Networks", + "fullName": "google.cloud.compute.v1.Networks", + "methods": [ + { + "shortName": "AddPeering", + "fullName": "google.cloud.compute.v1.Networks.AddPeering", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/networks/{network}/addPeering" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Networks.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/networks/{network}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Networks.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/networks/{network}" + } + ] + }, + { + "shortName": "GetEffectiveFirewalls", + "fullName": "google.cloud.compute.v1.Networks.GetEffectiveFirewalls", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/networks/{network}/getEffectiveFirewalls" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Networks.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/networks" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Networks.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/networks" + } + ] + }, + { + "shortName": "ListPeeringRoutes", + "fullName": "google.cloud.compute.v1.Networks.ListPeeringRoutes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/networks/{network}/listPeeringRoutes" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.Networks.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/networks/{network}" + } + ] + }, + { + "shortName": "RemovePeering", + "fullName": "google.cloud.compute.v1.Networks.RemovePeering", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/networks/{network}/removePeering" + } + ] + }, + { + "shortName": "SwitchToCustomMode", + "fullName": "google.cloud.compute.v1.Networks.SwitchToCustomMode", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/networks/{network}/switchToCustomMode" + } + ] + }, + { + "shortName": "UpdatePeering", + "fullName": "google.cloud.compute.v1.Networks.UpdatePeering", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/networks/{network}/updatePeering" + } + ] + } + ] + }, + { + "shortName": "NodeGroups", + "fullName": "google.cloud.compute.v1.NodeGroups", + "methods": [ + { + "shortName": "AddNodes", + "fullName": "google.cloud.compute.v1.NodeGroups.AddNodes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/addNodes" + } + ] + }, + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.NodeGroups.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/nodeGroups" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.NodeGroups.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}" + } + ] + }, + { + "shortName": "DeleteNodes", + "fullName": "google.cloud.compute.v1.NodeGroups.DeleteNodes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/deleteNodes" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.NodeGroups.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.NodeGroups.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.NodeGroups.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.NodeGroups.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups" + } + ] + }, + { + "shortName": "ListNodes", + "fullName": "google.cloud.compute.v1.NodeGroups.ListNodes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/listNodes" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.NodeGroups.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.NodeGroups.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "SetNodeTemplate", + "fullName": "google.cloud.compute.v1.NodeGroups.SetNodeTemplate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/setNodeTemplate" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.NodeGroups.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "NodeTemplates", + "fullName": "google.cloud.compute.v1.NodeTemplates", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.NodeTemplates.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/nodeTemplates" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.NodeTemplates.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{node_template}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.NodeTemplates.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{node_template}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.NodeTemplates.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.NodeTemplates.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/nodeTemplates" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.NodeTemplates.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/nodeTemplates" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.NodeTemplates.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.NodeTemplates.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "NodeTypes", + "fullName": "google.cloud.compute.v1.NodeTypes", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.NodeTypes.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/nodeTypes" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.NodeTypes.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeTypes/{node_type}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.NodeTypes.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/nodeTypes" + } + ] + } + ] + }, + { + "shortName": "PacketMirrorings", + "fullName": "google.cloud.compute.v1.PacketMirrorings", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.PacketMirrorings.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/packetMirrorings" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.PacketMirrorings.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.PacketMirrorings.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.PacketMirrorings.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/packetMirrorings" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.PacketMirrorings.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/packetMirrorings" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.PacketMirrorings.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.PacketMirrorings.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "Projects", + "fullName": "google.cloud.compute.v1.Projects", + "methods": [ + { + "shortName": "DisableXpnHost", + "fullName": "google.cloud.compute.v1.Projects.DisableXpnHost", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/disableXpnHost" + } + ] + }, + { + "shortName": "DisableXpnResource", + "fullName": "google.cloud.compute.v1.Projects.DisableXpnResource", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/disableXpnResource" + } + ] + }, + { + "shortName": "EnableXpnHost", + "fullName": "google.cloud.compute.v1.Projects.EnableXpnHost", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/enableXpnHost" + } + ] + }, + { + "shortName": "EnableXpnResource", + "fullName": "google.cloud.compute.v1.Projects.EnableXpnResource", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/enableXpnResource" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Projects.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}" + } + ] + }, + { + "shortName": "GetXpnHost", + "fullName": "google.cloud.compute.v1.Projects.GetXpnHost", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/getXpnHost" + } + ] + }, + { + "shortName": "GetXpnResources", + "fullName": "google.cloud.compute.v1.Projects.GetXpnResources", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/getXpnResources" + } + ] + }, + { + "shortName": "ListXpnHosts", + "fullName": "google.cloud.compute.v1.Projects.ListXpnHosts", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/listXpnHosts" + } + ] + }, + { + "shortName": "MoveDisk", + "fullName": "google.cloud.compute.v1.Projects.MoveDisk", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/moveDisk" + } + ] + }, + { + "shortName": "MoveInstance", + "fullName": "google.cloud.compute.v1.Projects.MoveInstance", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/moveInstance" + } + ] + }, + { + "shortName": "SetCommonInstanceMetadata", + "fullName": "google.cloud.compute.v1.Projects.SetCommonInstanceMetadata", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/setCommonInstanceMetadata" + } + ] + }, + { + "shortName": "SetDefaultNetworkTier", + "fullName": "google.cloud.compute.v1.Projects.SetDefaultNetworkTier", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/setDefaultNetworkTier" + } + ] + }, + { + "shortName": "SetUsageExportBucket", + "fullName": "google.cloud.compute.v1.Projects.SetUsageExportBucket", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/setUsageExportBucket" + } + ] + } + ] + }, + { + "shortName": "PublicAdvertisedPrefixes", + "fullName": "google.cloud.compute.v1.PublicAdvertisedPrefixes", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.PublicAdvertisedPrefixes.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.PublicAdvertisedPrefixes.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.PublicAdvertisedPrefixes.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/publicAdvertisedPrefixes" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.PublicAdvertisedPrefixes.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/publicAdvertisedPrefixes" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.PublicAdvertisedPrefixes.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}" + } + ] + } + ] + }, + { + "shortName": "PublicDelegatedPrefixes", + "fullName": "google.cloud.compute.v1.PublicDelegatedPrefixes", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.PublicDelegatedPrefixes.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/publicDelegatedPrefixes" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.PublicDelegatedPrefixes.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.PublicDelegatedPrefixes.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.PublicDelegatedPrefixes.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.PublicDelegatedPrefixes.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.PublicDelegatedPrefixes.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}" + } + ] + } + ] + }, + { + "shortName": "RegionAutoscalers", + "fullName": "google.cloud.compute.v1.RegionAutoscalers", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionAutoscalers.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/autoscalers/{autoscaler}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionAutoscalers.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/autoscalers/{autoscaler}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionAutoscalers.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/autoscalers" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionAutoscalers.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/autoscalers" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.RegionAutoscalers.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/autoscalers" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.RegionAutoscalers.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/regions/{region}/autoscalers" + } + ] + } + ] + }, + { + "shortName": "RegionBackendServices", + "fullName": "google.cloud.compute.v1.RegionBackendServices", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionBackendServices.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionBackendServices.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}" + } + ] + }, + { + "shortName": "GetHealth", + "fullName": "google.cloud.compute.v1.RegionBackendServices.GetHealth", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}/getHealth" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionBackendServices.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/backendServices" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionBackendServices.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/backendServices" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.RegionBackendServices.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.RegionBackendServices.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}" + } + ] + } + ] + }, + { + "shortName": "RegionCommitments", + "fullName": "google.cloud.compute.v1.RegionCommitments", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.RegionCommitments.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/commitments" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionCommitments.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/commitments/{commitment}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionCommitments.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/commitments" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionCommitments.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/commitments" + } + ] + } + ] + }, + { + "shortName": "RegionDiskTypes", + "fullName": "google.cloud.compute.v1.RegionDiskTypes", + "methods": [ + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionDiskTypes.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/diskTypes/{disk_type}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionDiskTypes.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/diskTypes" + } + ] + } + ] + }, + { + "shortName": "RegionDisks", + "fullName": "google.cloud.compute.v1.RegionDisks", + "methods": [ + { + "shortName": "AddResourcePolicies", + "fullName": "google.cloud.compute.v1.RegionDisks.AddResourcePolicies", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies" + } + ] + }, + { + "shortName": "CreateSnapshot", + "fullName": "google.cloud.compute.v1.RegionDisks.CreateSnapshot", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/disks/{disk}/createSnapshot" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionDisks.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/disks/{disk}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionDisks.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/disks/{disk}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.RegionDisks.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/disks/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionDisks.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/disks" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionDisks.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/disks" + } + ] + }, + { + "shortName": "RemoveResourcePolicies", + "fullName": "google.cloud.compute.v1.RegionDisks.RemoveResourcePolicies", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/disks/{disk}/removeResourcePolicies" + } + ] + }, + { + "shortName": "Resize", + "fullName": "google.cloud.compute.v1.RegionDisks.Resize", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/disks/{disk}/resize" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.RegionDisks.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/disks/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "SetLabels", + "fullName": "google.cloud.compute.v1.RegionDisks.SetLabels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/disks/{resource}/setLabels" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.RegionDisks.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/disks/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "RegionHealthCheckServices", + "fullName": "google.cloud.compute.v1.RegionHealthCheckServices", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionHealthCheckServices.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionHealthCheckServices.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionHealthCheckServices.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/healthCheckServices" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionHealthCheckServices.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/healthCheckServices" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.RegionHealthCheckServices.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}" + } + ] + } + ] + }, + { + "shortName": "RegionHealthChecks", + "fullName": "google.cloud.compute.v1.RegionHealthChecks", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionHealthChecks.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionHealthChecks.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionHealthChecks.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/healthChecks" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionHealthChecks.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/healthChecks" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.RegionHealthChecks.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.RegionHealthChecks.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}" + } + ] + } + ] + }, + { + "shortName": "RegionInstanceGroupManagers", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers", + "methods": [ + { + "shortName": "AbandonInstances", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.AbandonInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/abandonInstances" + } + ] + }, + { + "shortName": "ApplyUpdatesToInstances", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.ApplyUpdatesToInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/applyUpdatesToInstances" + } + ] + }, + { + "shortName": "CreateInstances", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.CreateInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/createInstances" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}" + } + ] + }, + { + "shortName": "DeleteInstances", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.DeleteInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/deleteInstances" + } + ] + }, + { + "shortName": "DeletePerInstanceConfigs", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.DeletePerInstanceConfigs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/deletePerInstanceConfigs" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers" + } + ] + }, + { + "shortName": "ListErrors", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.ListErrors", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/listErrors" + } + ] + }, + { + "shortName": "ListManagedInstances", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.ListManagedInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/listManagedInstances" + } + ] + }, + { + "shortName": "ListPerInstanceConfigs", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.ListPerInstanceConfigs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/listPerInstanceConfigs" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}" + } + ] + }, + { + "shortName": "PatchPerInstanceConfigs", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.PatchPerInstanceConfigs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/patchPerInstanceConfigs" + } + ] + }, + { + "shortName": "RecreateInstances", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.RecreateInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/recreateInstances" + } + ] + }, + { + "shortName": "Resize", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.Resize", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/resize" + } + ] + }, + { + "shortName": "SetInstanceTemplate", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.SetInstanceTemplate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/setInstanceTemplate" + } + ] + }, + { + "shortName": "SetTargetPools", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.SetTargetPools", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/setTargetPools" + } + ] + }, + { + "shortName": "UpdatePerInstanceConfigs", + "fullName": "google.cloud.compute.v1.RegionInstanceGroupManagers.UpdatePerInstanceConfigs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/updatePerInstanceConfigs" + } + ] + } + ] + }, + { + "shortName": "RegionInstanceGroups", + "fullName": "google.cloud.compute.v1.RegionInstanceGroups", + "methods": [ + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionInstanceGroups.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionInstanceGroups.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroups" + } + ] + }, + { + "shortName": "ListInstances", + "fullName": "google.cloud.compute.v1.RegionInstanceGroups.ListInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}/listInstances" + } + ] + }, + { + "shortName": "SetNamedPorts", + "fullName": "google.cloud.compute.v1.RegionInstanceGroups.SetNamedPorts", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}/setNamedPorts" + } + ] + } + ] + }, + { + "shortName": "RegionInstances", + "fullName": "google.cloud.compute.v1.RegionInstances", + "methods": [ + { + "shortName": "BulkInsert", + "fullName": "google.cloud.compute.v1.RegionInstances.BulkInsert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/instances/bulkInsert" + } + ] + } + ] + }, + { + "shortName": "RegionNetworkEndpointGroups", + "fullName": "google.cloud.compute.v1.RegionNetworkEndpointGroups", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionNetworkEndpointGroups.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionNetworkEndpointGroups.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionNetworkEndpointGroups.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionNetworkEndpointGroups.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups" + } + ] + } + ] + }, + { + "shortName": "RegionNotificationEndpoints", + "fullName": "google.cloud.compute.v1.RegionNotificationEndpoints", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionNotificationEndpoints.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/notificationEndpoints/{notification_endpoint}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionNotificationEndpoints.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/notificationEndpoints/{notification_endpoint}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionNotificationEndpoints.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/notificationEndpoints" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionNotificationEndpoints.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/notificationEndpoints" + } + ] + } + ] + }, + { + "shortName": "RegionOperations", + "fullName": "google.cloud.compute.v1.RegionOperations", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionOperations.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/operations/{operation}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionOperations.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/operations/{operation}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionOperations.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/operations" + } + ] + }, + { + "shortName": "Wait", + "fullName": "google.cloud.compute.v1.RegionOperations.Wait", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/operations/{operation}/wait" + } + ] + } + ] + }, + { + "shortName": "RegionSslCertificates", + "fullName": "google.cloud.compute.v1.RegionSslCertificates", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionSslCertificates.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/sslCertificates/{ssl_certificate}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionSslCertificates.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/sslCertificates/{ssl_certificate}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionSslCertificates.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/sslCertificates" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionSslCertificates.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/sslCertificates" + } + ] + } + ] + }, + { + "shortName": "RegionTargetHttpProxies", + "fullName": "google.cloud.compute.v1.RegionTargetHttpProxies", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionTargetHttpProxies.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionTargetHttpProxies.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionTargetHttpProxies.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetHttpProxies" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionTargetHttpProxies.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/targetHttpProxies" + } + ] + }, + { + "shortName": "SetUrlMap", + "fullName": "google.cloud.compute.v1.RegionTargetHttpProxies.SetUrlMap", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}/setUrlMap" + } + ] + } + ] + }, + { + "shortName": "RegionTargetHttpsProxies", + "fullName": "google.cloud.compute.v1.RegionTargetHttpsProxies", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionTargetHttpsProxies.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionTargetHttpsProxies.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionTargetHttpsProxies.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionTargetHttpsProxies.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies" + } + ] + }, + { + "shortName": "SetSslCertificates", + "fullName": "google.cloud.compute.v1.RegionTargetHttpsProxies.SetSslCertificates", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}/setSslCertificates" + } + ] + }, + { + "shortName": "SetUrlMap", + "fullName": "google.cloud.compute.v1.RegionTargetHttpsProxies.SetUrlMap", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}/setUrlMap" + } + ] + } + ] + }, + { + "shortName": "RegionUrlMaps", + "fullName": "google.cloud.compute.v1.RegionUrlMaps", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.RegionUrlMaps.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/urlMaps/{url_map}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.RegionUrlMaps.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/urlMaps/{url_map}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.RegionUrlMaps.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/urlMaps" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.RegionUrlMaps.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/urlMaps" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.RegionUrlMaps.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/urlMaps/{url_map}" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.RegionUrlMaps.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/regions/{region}/urlMaps/{url_map}" + } + ] + }, + { + "shortName": "Validate", + "fullName": "google.cloud.compute.v1.RegionUrlMaps.Validate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/urlMaps/{url_map}/validate" + } + ] + } + ] + }, + { + "shortName": "Regions", + "fullName": "google.cloud.compute.v1.Regions", + "methods": [ + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Regions.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Regions.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions" + } + ] + } + ] + }, + { + "shortName": "Reservations", + "fullName": "google.cloud.compute.v1.Reservations", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.Reservations.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/reservations" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Reservations.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Reservations.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.Reservations.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Reservations.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/reservations" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Reservations.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/reservations" + } + ] + }, + { + "shortName": "Resize", + "fullName": "google.cloud.compute.v1.Reservations.Resize", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/resize" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.Reservations.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.Reservations.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "ResourcePolicies", + "fullName": "google.cloud.compute.v1.ResourcePolicies", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.ResourcePolicies.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/resourcePolicies" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.ResourcePolicies.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource_policy}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.ResourcePolicies.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource_policy}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.ResourcePolicies.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.ResourcePolicies.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/resourcePolicies" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.ResourcePolicies.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/resourcePolicies" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.ResourcePolicies.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.ResourcePolicies.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "Routers", + "fullName": "google.cloud.compute.v1.Routers", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.Routers.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/routers" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Routers.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/routers/{router}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Routers.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/routers/{router}" + } + ] + }, + { + "shortName": "GetNatMappingInfo", + "fullName": "google.cloud.compute.v1.Routers.GetNatMappingInfo", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/routers/{router}/getNatMappingInfo" + } + ] + }, + { + "shortName": "GetRouterStatus", + "fullName": "google.cloud.compute.v1.Routers.GetRouterStatus", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/routers/{router}/getRouterStatus" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Routers.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/routers" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Routers.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/routers" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.Routers.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/routers/{router}" + } + ] + }, + { + "shortName": "Preview", + "fullName": "google.cloud.compute.v1.Routers.Preview", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/routers/{router}/preview" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.Routers.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/regions/{region}/routers/{router}" + } + ] + } + ] + }, + { + "shortName": "Routes", + "fullName": "google.cloud.compute.v1.Routes", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Routes.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/routes/{route}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Routes.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/routes/{route}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Routes.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/routes" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Routes.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/routes" + } + ] + } + ] + }, + { + "shortName": "SecurityPolicies", + "fullName": "google.cloud.compute.v1.SecurityPolicies", + "methods": [ + { + "shortName": "AddRule", + "fullName": "google.cloud.compute.v1.SecurityPolicies.AddRule", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/addRule" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.SecurityPolicies.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.SecurityPolicies.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}" + } + ] + }, + { + "shortName": "GetRule", + "fullName": "google.cloud.compute.v1.SecurityPolicies.GetRule", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/getRule" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.SecurityPolicies.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/securityPolicies" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.SecurityPolicies.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/securityPolicies" + } + ] + }, + { + "shortName": "ListPreconfiguredExpressionSets", + "fullName": "google.cloud.compute.v1.SecurityPolicies.ListPreconfiguredExpressionSets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/securityPolicies/listPreconfiguredExpressionSets" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.SecurityPolicies.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}" + } + ] + }, + { + "shortName": "PatchRule", + "fullName": "google.cloud.compute.v1.SecurityPolicies.PatchRule", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/patchRule" + } + ] + }, + { + "shortName": "RemoveRule", + "fullName": "google.cloud.compute.v1.SecurityPolicies.RemoveRule", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/removeRule" + } + ] + } + ] + }, + { + "shortName": "ServiceAttachments", + "fullName": "google.cloud.compute.v1.ServiceAttachments", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.ServiceAttachments.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/serviceAttachments" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.ServiceAttachments.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{service_attachment}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.ServiceAttachments.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{service_attachment}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.ServiceAttachments.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.ServiceAttachments.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/serviceAttachments" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.ServiceAttachments.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/serviceAttachments" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.ServiceAttachments.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{service_attachment}" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.ServiceAttachments.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.ServiceAttachments.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "Snapshots", + "fullName": "google.cloud.compute.v1.Snapshots", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Snapshots.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/snapshots/{snapshot}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Snapshots.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/snapshots/{snapshot}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.Snapshots.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/snapshots/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Snapshots.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/snapshots" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.Snapshots.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/snapshots/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "SetLabels", + "fullName": "google.cloud.compute.v1.Snapshots.SetLabels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/snapshots/{resource}/setLabels" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.Snapshots.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/snapshots/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "SslCertificates", + "fullName": "google.cloud.compute.v1.SslCertificates", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.SslCertificates.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/sslCertificates" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.SslCertificates.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/sslCertificates/{ssl_certificate}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.SslCertificates.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/sslCertificates/{ssl_certificate}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.SslCertificates.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/sslCertificates" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.SslCertificates.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/sslCertificates" + } + ] + } + ] + }, + { + "shortName": "SslPolicies", + "fullName": "google.cloud.compute.v1.SslPolicies", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.SslPolicies.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.SslPolicies.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.SslPolicies.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/sslPolicies" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.SslPolicies.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/sslPolicies" + } + ] + }, + { + "shortName": "ListAvailableFeatures", + "fullName": "google.cloud.compute.v1.SslPolicies.ListAvailableFeatures", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/sslPolicies/listAvailableFeatures" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.SslPolicies.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}" + } + ] + } + ] + }, + { + "shortName": "Subnetworks", + "fullName": "google.cloud.compute.v1.Subnetworks", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.Subnetworks.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/subnetworks" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.Subnetworks.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetwork}" + } + ] + }, + { + "shortName": "ExpandIpCidrRange", + "fullName": "google.cloud.compute.v1.Subnetworks.ExpandIpCidrRange", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Subnetworks.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetwork}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.compute.v1.Subnetworks.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/subnetworks/{resource}/getIamPolicy" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.Subnetworks.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/subnetworks" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Subnetworks.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/subnetworks" + } + ] + }, + { + "shortName": "ListUsable", + "fullName": "google.cloud.compute.v1.Subnetworks.ListUsable", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/subnetworks/listUsable" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.Subnetworks.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetwork}" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.compute.v1.Subnetworks.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/subnetworks/{resource}/setIamPolicy" + } + ] + }, + { + "shortName": "SetPrivateIpGoogleAccess", + "fullName": "google.cloud.compute.v1.Subnetworks.SetPrivateIpGoogleAccess", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.Subnetworks.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/subnetworks/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "TargetGrpcProxies", + "fullName": "google.cloud.compute.v1.TargetGrpcProxies", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.TargetGrpcProxies.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/targetGrpcProxies/{target_grpc_proxy}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.TargetGrpcProxies.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/targetGrpcProxies/{target_grpc_proxy}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.TargetGrpcProxies.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetGrpcProxies" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.TargetGrpcProxies.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/targetGrpcProxies" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.TargetGrpcProxies.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/targetGrpcProxies/{target_grpc_proxy}" + } + ] + } + ] + }, + { + "shortName": "TargetHttpProxies", + "fullName": "google.cloud.compute.v1.TargetHttpProxies", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.TargetHttpProxies.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/targetHttpProxies" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.TargetHttpProxies.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/targetHttpProxies/{target_http_proxy}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.TargetHttpProxies.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/targetHttpProxies/{target_http_proxy}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.TargetHttpProxies.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetHttpProxies" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.TargetHttpProxies.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/targetHttpProxies" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.TargetHttpProxies.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/targetHttpProxies/{target_http_proxy}" + } + ] + }, + { + "shortName": "SetUrlMap", + "fullName": "google.cloud.compute.v1.TargetHttpProxies.SetUrlMap", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/targetHttpProxies/{target_http_proxy}/setUrlMap" + } + ] + } + ] + }, + { + "shortName": "TargetHttpsProxies", + "fullName": "google.cloud.compute.v1.TargetHttpsProxies", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.TargetHttpsProxies.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/targetHttpsProxies" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.TargetHttpsProxies.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/targetHttpsProxies/{target_https_proxy}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.TargetHttpsProxies.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/targetHttpsProxies/{target_https_proxy}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.TargetHttpsProxies.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetHttpsProxies" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.TargetHttpsProxies.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/targetHttpsProxies" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.TargetHttpsProxies.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/targetHttpsProxies/{target_https_proxy}" + } + ] + }, + { + "shortName": "SetQuicOverride", + "fullName": "google.cloud.compute.v1.TargetHttpsProxies.SetQuicOverride", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetHttpsProxies/{target_https_proxy}/setQuicOverride" + } + ] + }, + { + "shortName": "SetSslCertificates", + "fullName": "google.cloud.compute.v1.TargetHttpsProxies.SetSslCertificates", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/targetHttpsProxies/{target_https_proxy}/setSslCertificates" + } + ] + }, + { + "shortName": "SetSslPolicy", + "fullName": "google.cloud.compute.v1.TargetHttpsProxies.SetSslPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetHttpsProxies/{target_https_proxy}/setSslPolicy" + } + ] + }, + { + "shortName": "SetUrlMap", + "fullName": "google.cloud.compute.v1.TargetHttpsProxies.SetUrlMap", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/targetHttpsProxies/{target_https_proxy}/setUrlMap" + } + ] + } + ] + }, + { + "shortName": "TargetInstances", + "fullName": "google.cloud.compute.v1.TargetInstances", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.TargetInstances.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/targetInstances" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.TargetInstances.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/zones/{zone}/targetInstances/{target_instance}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.TargetInstances.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/targetInstances/{target_instance}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.TargetInstances.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/targetInstances" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.TargetInstances.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/targetInstances" + } + ] + } + ] + }, + { + "shortName": "TargetPools", + "fullName": "google.cloud.compute.v1.TargetPools", + "methods": [ + { + "shortName": "AddHealthCheck", + "fullName": "google.cloud.compute.v1.TargetPools.AddHealthCheck", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/addHealthCheck" + } + ] + }, + { + "shortName": "AddInstance", + "fullName": "google.cloud.compute.v1.TargetPools.AddInstance", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/addInstance" + } + ] + }, + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.TargetPools.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/targetPools" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.TargetPools.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.TargetPools.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}" + } + ] + }, + { + "shortName": "GetHealth", + "fullName": "google.cloud.compute.v1.TargetPools.GetHealth", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/getHealth" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.TargetPools.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetPools" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.TargetPools.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/targetPools" + } + ] + }, + { + "shortName": "RemoveHealthCheck", + "fullName": "google.cloud.compute.v1.TargetPools.RemoveHealthCheck", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/removeHealthCheck" + } + ] + }, + { + "shortName": "RemoveInstance", + "fullName": "google.cloud.compute.v1.TargetPools.RemoveInstance", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/removeInstance" + } + ] + }, + { + "shortName": "SetBackup", + "fullName": "google.cloud.compute.v1.TargetPools.SetBackup", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/setBackup" + } + ] + } + ] + }, + { + "shortName": "TargetSslProxies", + "fullName": "google.cloud.compute.v1.TargetSslProxies", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.TargetSslProxies.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.TargetSslProxies.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.TargetSslProxies.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetSslProxies" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.TargetSslProxies.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/targetSslProxies" + } + ] + }, + { + "shortName": "SetBackendService", + "fullName": "google.cloud.compute.v1.TargetSslProxies.SetBackendService", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}/setBackendService" + } + ] + }, + { + "shortName": "SetProxyHeader", + "fullName": "google.cloud.compute.v1.TargetSslProxies.SetProxyHeader", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}/setProxyHeader" + } + ] + }, + { + "shortName": "SetSslCertificates", + "fullName": "google.cloud.compute.v1.TargetSslProxies.SetSslCertificates", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}/setSslCertificates" + } + ] + }, + { + "shortName": "SetSslPolicy", + "fullName": "google.cloud.compute.v1.TargetSslProxies.SetSslPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}/setSslPolicy" + } + ] + } + ] + }, + { + "shortName": "TargetTcpProxies", + "fullName": "google.cloud.compute.v1.TargetTcpProxies", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.TargetTcpProxies.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.TargetTcpProxies.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.TargetTcpProxies.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetTcpProxies" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.TargetTcpProxies.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/targetTcpProxies" + } + ] + }, + { + "shortName": "SetBackendService", + "fullName": "google.cloud.compute.v1.TargetTcpProxies.SetBackendService", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}/setBackendService" + } + ] + }, + { + "shortName": "SetProxyHeader", + "fullName": "google.cloud.compute.v1.TargetTcpProxies.SetProxyHeader", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}/setProxyHeader" + } + ] + } + ] + }, + { + "shortName": "TargetVpnGateways", + "fullName": "google.cloud.compute.v1.TargetVpnGateways", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.TargetVpnGateways.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/targetVpnGateways" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.TargetVpnGateways.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/targetVpnGateways/{target_vpn_gateway}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.TargetVpnGateways.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/targetVpnGateways/{target_vpn_gateway}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.TargetVpnGateways.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/targetVpnGateways" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.TargetVpnGateways.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/targetVpnGateways" + } + ] + } + ] + }, + { + "shortName": "UrlMaps", + "fullName": "google.cloud.compute.v1.UrlMaps", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.UrlMaps.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/urlMaps" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.UrlMaps.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/global/urlMaps/{url_map}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.UrlMaps.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/urlMaps/{url_map}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.UrlMaps.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/urlMaps" + } + ] + }, + { + "shortName": "InvalidateCache", + "fullName": "google.cloud.compute.v1.UrlMaps.InvalidateCache", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/urlMaps/{url_map}/invalidateCache" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.UrlMaps.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/global/urlMaps" + } + ] + }, + { + "shortName": "Patch", + "fullName": "google.cloud.compute.v1.UrlMaps.Patch", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/compute/v1/projects/{project}/global/urlMaps/{url_map}" + } + ] + }, + { + "shortName": "Update", + "fullName": "google.cloud.compute.v1.UrlMaps.Update", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/compute/v1/projects/{project}/global/urlMaps/{url_map}" + } + ] + }, + { + "shortName": "Validate", + "fullName": "google.cloud.compute.v1.UrlMaps.Validate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/global/urlMaps/{url_map}/validate" + } + ] + } + ] + }, + { + "shortName": "VpnGateways", + "fullName": "google.cloud.compute.v1.VpnGateways", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.VpnGateways.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/vpnGateways" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.VpnGateways.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.VpnGateways.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}" + } + ] + }, + { + "shortName": "GetStatus", + "fullName": "google.cloud.compute.v1.VpnGateways.GetStatus", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}/getStatus" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.VpnGateways.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/vpnGateways" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.VpnGateways.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/vpnGateways" + } + ] + }, + { + "shortName": "SetLabels", + "fullName": "google.cloud.compute.v1.VpnGateways.SetLabels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.compute.v1.VpnGateways.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "VpnTunnels", + "fullName": "google.cloud.compute.v1.VpnTunnels", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1.VpnTunnels.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/vpnTunnels" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.VpnTunnels.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/vpnTunnels/{vpn_tunnel}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.VpnTunnels.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/vpnTunnels/{vpn_tunnel}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1.VpnTunnels.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/vpnTunnels" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.VpnTunnels.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/vpnTunnels" + } + ] + } + ] + }, + { + "shortName": "ZoneOperations", + "fullName": "google.cloud.compute.v1.ZoneOperations", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1.ZoneOperations.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/zones/{zone}/operations/{operation}" + } + ] + }, + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.ZoneOperations.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/operations/{operation}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.ZoneOperations.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}/operations" + } + ] + }, + { + "shortName": "Wait", + "fullName": "google.cloud.compute.v1.ZoneOperations.Wait", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/zones/{zone}/operations/{operation}/wait" + } + ] + } + ] + }, + { + "shortName": "Zones", + "fullName": "google.cloud.compute.v1.Zones", + "methods": [ + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1.Zones.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones/{zone}" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1.Zones.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/zones" + } + ] + } + ] + } + ], + "configFile": "compute_v1.yaml" + }, + { + "id": "google.cloud.compute.v1small", + "directory": "google/cloud/compute/v1small", + "version": "v1small", + "majorVersion": "v1", + "hostName": "compute.googleapis.com", + "title": "Google Compute Engine API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Compute.V1Small": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/compute/v1small;compute": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.compute.v1small": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Compute\\V1small": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Compute::V1small": 1 + } + } + }, + "services": [ + { + "shortName": "Addresses", + "fullName": "google.cloud.compute.v1small.Addresses", + "methods": [ + { + "shortName": "AggregatedList", + "fullName": "google.cloud.compute.v1small.Addresses.AggregatedList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/aggregated/addresses" + } + ] + }, + { + "shortName": "Delete", + "fullName": "google.cloud.compute.v1small.Addresses.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/compute/v1/projects/{project}/regions/{region}/addresses/{address}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.compute.v1small.Addresses.Insert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/{project}/regions/{region}/addresses" + } + ] + }, + { + "shortName": "List", + "fullName": "google.cloud.compute.v1small.Addresses.List", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/addresses" + } + ] + } + ] + }, + { + "shortName": "RegionOperations", + "fullName": "google.cloud.compute.v1small.RegionOperations", + "methods": [ + { + "shortName": "Get", + "fullName": "google.cloud.compute.v1small.RegionOperations.Get", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/compute/v1/projects/{project}/regions/{region}/operations/{operation}" + } + ] + }, + { + "shortName": "Wait", + "fullName": "google.cloud.compute.v1small.RegionOperations.Wait", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/compute/v1/projects/projects/{project}/regions/{region}/operations/{operation}/wait" + } + ] + } + ] + } + ], + "configFile": "compute_small_v1.yaml" + }, + { + "id": "google.cloud.contactcenterinsights.v1", + "directory": "google/cloud/contactcenterinsights/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "contactcenterinsights.googleapis.com", + "title": "Contact Center AI Insights API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/contactcenterinsights/v1", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.ContactCenterInsights.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/contactcenterinsights/v1;contactcenterinsights": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.contactcenterinsights.v1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\ContactCenterInsights\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::ContactCenterInsights::V1": 2 + } + } + }, + "services": [ + { + "shortName": "ContactCenterInsights", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights", + "methods": [ + { + "shortName": "CalculateIssueModelStats", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CalculateIssueModelStats", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{issue_model=projects/*/locations/*/issueModels/*}:calculateIssueModelStats" + } + ] + }, + { + "shortName": "CalculateStats", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CalculateStats", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{location=projects/*/locations/*}/conversations:calculateStats" + } + ] + }, + { + "shortName": "CreateAnalysis", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CreateAnalysis", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/conversations/*}/analyses" + } + ] + }, + { + "shortName": "CreateConversation", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CreateConversation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/conversations" + } + ] + }, + { + "shortName": "CreateIssueModel", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CreateIssueModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/issueModels" + } + ] + }, + { + "shortName": "CreatePhraseMatcher", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CreatePhraseMatcher", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/phraseMatchers" + } + ] + }, + { + "shortName": "CreateView", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CreateView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/views" + } + ] + }, + { + "shortName": "DeleteAnalysis", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.DeleteAnalysis", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/conversations/*/analyses/*}" + } + ] + }, + { + "shortName": "DeleteConversation", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.DeleteConversation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/conversations/*}" + } + ] + }, + { + "shortName": "DeleteIssueModel", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.DeleteIssueModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/issueModels/*}" + } + ] + }, + { + "shortName": "DeletePhraseMatcher", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.DeletePhraseMatcher", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/phraseMatchers/*}" + } + ] + }, + { + "shortName": "DeleteView", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.DeleteView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/views/*}" + } + ] + }, + { + "shortName": "DeployIssueModel", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.DeployIssueModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/issueModels/*}:deploy" + } + ] + }, + { + "shortName": "ExportInsightsData", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ExportInsightsData", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/insightsdata:export" + } + ] + }, + { + "shortName": "GetAnalysis", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetAnalysis", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/conversations/*/analyses/*}" + } + ] + }, + { + "shortName": "GetConversation", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetConversation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/conversations/*}" + } + ] + }, + { + "shortName": "GetIssue", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetIssue", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/issueModels/*/issues/*}" + } + ] + }, + { + "shortName": "GetIssueModel", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetIssueModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/issueModels/*}" + } + ] + }, + { + "shortName": "GetPhraseMatcher", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetPhraseMatcher", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/phraseMatchers/*}" + } + ] + }, + { + "shortName": "GetSettings", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetSettings", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/settings}" + } + ] + }, + { + "shortName": "GetView", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/views/*}" + } + ] + }, + { + "shortName": "ListAnalyses", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ListAnalyses", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/conversations/*}/analyses" + } + ] + }, + { + "shortName": "ListConversations", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ListConversations", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/conversations" + } + ] + }, + { + "shortName": "ListIssueModels", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ListIssueModels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/issueModels" + } + ] + }, + { + "shortName": "ListIssues", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ListIssues", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/issueModels/*}/issues" + } + ] + }, + { + "shortName": "ListPhraseMatchers", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ListPhraseMatchers", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/phraseMatchers" + } + ] + }, + { + "shortName": "ListViews", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ListViews", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/views" + } + ] + }, + { + "shortName": "UndeployIssueModel", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.UndeployIssueModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/issueModels/*}:undeploy" + } + ] + }, + { + "shortName": "UpdateConversation", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.UpdateConversation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{conversation.name=projects/*/locations/*/conversations/*}" + } + ] + }, + { + "shortName": "UpdateIssue", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.UpdateIssue", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{issue.name=projects/*/locations/*/issueModels/*/issues/*}" + } + ] + }, + { + "shortName": "UpdateIssueModel", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.UpdateIssueModel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{issue_model.name=projects/*/locations/*/issueModels/*}" + } + ] + }, + { + "shortName": "UpdatePhraseMatcher", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.UpdatePhraseMatcher", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{phrase_matcher.name=projects/*/locations/*/phraseMatchers/*}" + } + ] + }, + { + "shortName": "UpdateSettings", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.UpdateSettings", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{settings.name=projects/*/locations/*/settings}" + } + ] + }, + { + "shortName": "UpdateView", + "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.UpdateView", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{view.name=projects/*/locations/*/views/*}" + } + ] + } + ] + } + ], + "configFile": "contactcenterinsights_v1.yaml" + }, + { + "id": "google.cloud.datacatalog.v1", + "directory": "google/cloud/datacatalog/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "datacatalog.googleapis.com", + "title": "Google Cloud Data Catalog API", + "description": "A fully managed and highly scalable data discovery and metadata management service.", + "importDirectories": [ + "google/api", + "google/cloud/datacatalog/v1", + "google/iam/v1", + "google/protobuf" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 13 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.DataCatalog.V1": 13 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/datacatalog/v1;datacatalog": 13 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 13 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.datacatalog.v1": 13 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\DataCatalog\\V1": 13 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::DataCatalog::V1": 13 + } + } + }, + "services": [ + { + "shortName": "DataCatalog", + "fullName": "google.cloud.datacatalog.v1.DataCatalog", + "methods": [ + { + "shortName": "CreateEntry", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.CreateEntry", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/entryGroups/*}/entries" + } + ] + }, + { + "shortName": "CreateEntryGroup", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.CreateEntryGroup", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/entryGroups" + } + ] + }, + { + "shortName": "CreateTag", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.CreateTag", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/entryGroups/*/entries/*}/tags" + }, + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/entryGroups/*}/tags" + } + ] + }, + { + "shortName": "CreateTagTemplate", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.CreateTagTemplate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/tagTemplates" + } + ] + }, + { + "shortName": "CreateTagTemplateField", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.CreateTagTemplateField", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/tagTemplates/*}/fields" + } + ] + }, + { + "shortName": "DeleteEntry", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.DeleteEntry", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/entryGroups/*/entries/*}" + } + ] + }, + { + "shortName": "DeleteEntryGroup", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.DeleteEntryGroup", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/entryGroups/*}" + } + ] + }, + { + "shortName": "DeleteTag", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.DeleteTag", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/entryGroups/*/entries/*/tags/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/entryGroups/*/tags/*}" + } + ] + }, + { + "shortName": "DeleteTagTemplate", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.DeleteTagTemplate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/tagTemplates/*}" + } + ] + }, + { + "shortName": "DeleteTagTemplateField", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.DeleteTagTemplateField", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*}" + } + ] + }, + { + "shortName": "GetEntry", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.GetEntry", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/entryGroups/*/entries/*}" + } + ] + }, + { + "shortName": "GetEntryGroup", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.GetEntryGroup", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/entryGroups/*}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/tagTemplates/*}:getIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/entryGroups/*}:getIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/entryGroups/*/entries/*}:getIamPolicy" + } + ] + }, + { + "shortName": "GetTagTemplate", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.GetTagTemplate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/tagTemplates/*}" + } + ] + }, + { + "shortName": "ListEntries", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.ListEntries", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/entryGroups/*}/entries" + } + ] + }, + { + "shortName": "ListEntryGroups", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.ListEntryGroups", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/entryGroups" + } + ] + }, + { + "shortName": "ListTags", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.ListTags", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/entryGroups/*/entries/*}/tags" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/entryGroups/*}/tags" + } + ] + }, + { + "shortName": "LookupEntry", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.LookupEntry", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/entries:lookup" + } + ] + }, + { + "shortName": "RenameTagTemplateField", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.RenameTagTemplateField", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*}:rename" + } + ] + }, + { + "shortName": "RenameTagTemplateFieldEnumValue", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.RenameTagTemplateFieldEnumValue", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*/enumValues/*}:rename" + } + ] + }, + { + "shortName": "SearchCatalog", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.SearchCatalog", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/catalog:search" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/tagTemplates/*}:setIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/entryGroups/*}:setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/tagTemplates/*}:testIamPermissions" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/entryGroups/*}:testIamPermissions" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/entryGroups/*/entries/*}:testIamPermissions" + } + ] + }, + { + "shortName": "UpdateEntry", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.UpdateEntry", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{entry.name=projects/*/locations/*/entryGroups/*/entries/*}" + } + ] + }, + { + "shortName": "UpdateEntryGroup", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.UpdateEntryGroup", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{entry_group.name=projects/*/locations/*/entryGroups/*}" + } + ] + }, + { + "shortName": "UpdateTag", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.UpdateTag", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{tag.name=projects/*/locations/*/entryGroups/*/entries/*/tags/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{tag.name=projects/*/locations/*/entryGroups/*/tags/*}" + } + ] + }, + { + "shortName": "UpdateTagTemplate", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.UpdateTagTemplate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{tag_template.name=projects/*/locations/*/tagTemplates/*}" + } + ] + }, + { + "shortName": "UpdateTagTemplateField", + "fullName": "google.cloud.datacatalog.v1.DataCatalog.UpdateTagTemplateField", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*}" + } + ] + } + ] + }, + { + "shortName": "PolicyTagManager", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager", + "methods": [ + { + "shortName": "CreatePolicyTag", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.CreatePolicyTag", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/taxonomies/*}/policyTags" + } + ] + }, + { + "shortName": "CreateTaxonomy", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.CreateTaxonomy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/taxonomies" + } + ] + }, + { + "shortName": "DeletePolicyTag", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.DeletePolicyTag", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/taxonomies/*/policyTags/*}" + } + ] + }, + { + "shortName": "DeleteTaxonomy", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.DeleteTaxonomy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/taxonomies/*}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/taxonomies/*}:getIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:getIamPolicy" + } + ] + }, + { + "shortName": "GetPolicyTag", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.GetPolicyTag", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/specialistPools/*}" + "path": "/v1/{name=projects/*/locations/*/taxonomies/*/policyTags/*}" } ] }, { - "shortName": "ListSpecialistPools", - "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService.ListSpecialistPools", + "shortName": "GetTaxonomy", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.GetTaxonomy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/specialistPools" + "path": "/v1/{name=projects/*/locations/*/taxonomies/*}" } ] }, { - "shortName": "UpdateSpecialistPool", - "fullName": "google.cloud.aiplatform.v1beta1.SpecialistPoolService.UpdateSpecialistPool", + "shortName": "ListPolicyTags", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.ListPolicyTags", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/taxonomies/*}/policyTags" + } + ] + }, + { + "shortName": "ListTaxonomies", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.ListTaxonomies", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/taxonomies" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/taxonomies/*}:setIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/taxonomies/*}:testIamPermissions" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:testIamPermissions" + } + ] + }, + { + "shortName": "UpdatePolicyTag", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.UpdatePolicyTag", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{specialist_pool.name=projects/*/locations/*/specialistPools/*}" + "path": "/v1/{policy_tag.name=projects/*/locations/*/taxonomies/*/policyTags/*}" + } + ] + }, + { + "shortName": "UpdateTaxonomy", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.UpdateTaxonomy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{taxonomy.name=projects/*/locations/*/taxonomies/*}" } ] } ] }, { - "shortName": "TensorboardService", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService", + "shortName": "PolicyTagManagerSerialization", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManagerSerialization", "methods": [ { - "shortName": "CreateTensorboard", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboard", + "shortName": "ExportTaxonomies", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManagerSerialization.ExportTaxonomies", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/taxonomies:export" + } + ] + }, + { + "shortName": "ImportTaxonomies", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManagerSerialization.ImportTaxonomies", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/tensorboards" + "path": "/v1/{parent=projects/*/locations/*}/taxonomies:import" } ] }, { - "shortName": "CreateTensorboardExperiment", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardExperiment", + "shortName": "ReplaceTaxonomy", + "fullName": "google.cloud.datacatalog.v1.PolicyTagManagerSerialization.ReplaceTaxonomy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*}/experiments" + "path": "/v1/{name=projects/*/locations/*/taxonomies/*}:replace" + } + ] + } + ] + } + ], + "configFile": "datacatalog_v1.yaml" + }, + { + "id": "google.cloud.datacatalog.v1beta1", + "directory": "google/cloud/datacatalog/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "datacatalog.googleapis.com", + "title": "Google Cloud Data Catalog API", + "description": "A fully managed and highly scalable data discovery and metadata management service.", + "importDirectories": [ + "google/api", + "google/cloud/datacatalog/v1beta1", + "google/iam/v1", + "google/protobuf" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 10 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.DataCatalog.V1Beta1": 10 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/datacatalog/v1beta1;datacatalog": 10 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 10 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.datacatalog.v1beta1": 10 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\DataCatalog\\V1beta1": 10 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::DataCatalog::V1beta1": 10 + } + } + }, + "services": [ + { + "shortName": "DataCatalog", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog", + "methods": [ + { + "shortName": "CreateEntry", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.CreateEntry", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*}/entries" } ] }, { - "shortName": "CreateTensorboardRun", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardRun", + "shortName": "CreateEntryGroup", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.CreateEntryGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs" + "path": "/v1beta1/{parent=projects/*/locations/*}/entryGroups" } ] }, { - "shortName": "CreateTensorboardTimeSeries", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardTimeSeries", + "shortName": "CreateTag", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.CreateTag", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/timeSeries" + "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*/entries/*}/tags" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*}/tags" } ] }, { - "shortName": "DeleteTensorboard", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboard", + "shortName": "CreateTagTemplate", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.CreateTagTemplate", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/tagTemplates" + } + ] + }, + { + "shortName": "CreateTagTemplateField", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.CreateTagTemplateField", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/tagTemplates/*}/fields" + } + ] + }, + { + "shortName": "DeleteEntry", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.DeleteEntry", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*}" + "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*/entries/*}" } ] }, { - "shortName": "DeleteTensorboardExperiment", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardExperiment", + "shortName": "DeleteEntryGroup", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.DeleteEntryGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*}" + "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*}" } ] }, { - "shortName": "DeleteTensorboardRun", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardRun", + "shortName": "DeleteTag", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.DeleteTag", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" + "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*/entries/*/tags/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*/tags/*}" } ] }, { - "shortName": "DeleteTensorboardTimeSeries", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.DeleteTensorboardTimeSeries", + "shortName": "DeleteTagTemplate", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.DeleteTagTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" + "path": "/v1beta1/{name=projects/*/locations/*/tagTemplates/*}" } ] }, { - "shortName": "ExportTensorboardTimeSeriesData", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ExportTensorboardTimeSeriesData", + "shortName": "DeleteTagTemplateField", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.DeleteTagTemplateField", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{tensorboard_time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:exportTensorboardTimeSeries" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/tagTemplates/*/fields/*}" } ] }, { - "shortName": "GetTensorboard", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboard", + "shortName": "GetEntry", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.GetEntry", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*}" + "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*/entries/*}" } ] }, { - "shortName": "GetTensorboardExperiment", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardExperiment", + "shortName": "GetEntryGroup", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.GetEntryGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*}" + "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*}" } ] }, { - "shortName": "GetTensorboardRun", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardRun", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.GetIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/tagTemplates/*}:getIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/entryGroups/*}:getIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/entryGroups/*/entries/*}:getIamPolicy" } ] }, { - "shortName": "GetTensorboardTimeSeries", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.GetTensorboardTimeSeries", + "shortName": "GetTagTemplate", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.GetTagTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" + "path": "/v1beta1/{name=projects/*/locations/*/tagTemplates/*}" } ] }, { - "shortName": "ListTensorboardExperiments", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardExperiments", + "shortName": "ListEntries", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.ListEntries", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*}/experiments" + "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*}/entries" } ] }, { - "shortName": "ListTensorboardRuns", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns", + "shortName": "ListEntryGroups", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.ListEntryGroups", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs" + "path": "/v1beta1/{parent=projects/*/locations/*}/entryGroups" } ] }, { - "shortName": "ListTensorboards", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboards", + "shortName": "ListTags", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.ListTags", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/tensorboards" + "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*/entries/*}/tags" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*}/tags" } ] }, { - "shortName": "ListTensorboardTimeSeries", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardTimeSeries", + "shortName": "LookupEntry", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.LookupEntry", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/timeSeries" + "path": "/v1beta1/entries:lookup" } ] }, { - "shortName": "ReadTensorboardBlobData", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardBlobData", - "mode": "SERVER_STREAMING", + "shortName": "RenameTagTemplateField", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.RenameTagTemplateField", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/tagTemplates/*/fields/*}:rename" + } + ] + }, + { + "shortName": "SearchCatalog", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.SearchCatalog", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/catalog:search" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.SetIamPolicy", + "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:readBlobData" + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/tagTemplates/*}:setIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/entryGroups/*}:setIamPolicy" } ] }, { - "shortName": "ReadTensorboardTimeSeriesData", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardTimeSeriesData", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.TestIamPermissions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{tensorboard_time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:read" + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/tagTemplates/*}:testIamPermissions" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/entryGroups/*}:testIamPermissions" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/entryGroups/*/entries/*}:testIamPermissions" } ] }, { - "shortName": "UpdateTensorboard", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboard", + "shortName": "UpdateEntry", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.UpdateEntry", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{tensorboard.name=projects/*/locations/*/tensorboards/*}" + "path": "/v1beta1/{entry.name=projects/*/locations/*/entryGroups/*/entries/*}" } ] }, { - "shortName": "UpdateTensorboardExperiment", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardExperiment", + "shortName": "UpdateEntryGroup", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.UpdateEntryGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{tensorboard_experiment.name=projects/*/locations/*/tensorboards/*/experiments/*}" + "path": "/v1beta1/{entry_group.name=projects/*/locations/*/entryGroups/*}" } ] }, { - "shortName": "UpdateTensorboardRun", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardRun", + "shortName": "UpdateTag", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.UpdateTag", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{tensorboard_run.name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" + "path": "/v1beta1/{tag.name=projects/*/locations/*/entryGroups/*/entries/*/tags/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1beta1/{tag.name=projects/*/locations/*/entryGroups/*/tags/*}" } ] }, { - "shortName": "UpdateTensorboardTimeSeries", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.UpdateTensorboardTimeSeries", + "shortName": "UpdateTagTemplate", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.UpdateTagTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{tensorboard_time_series.name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" + "path": "/v1beta1/{tag_template.name=projects/*/locations/*/tagTemplates/*}" } ] }, { - "shortName": "WriteTensorboardRunData", - "fullName": "google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardRunData", + "shortName": "UpdateTagTemplateField", + "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.UpdateTagTemplateField", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{tensorboard_run=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}:write" + "httpMethod": "PATCH", + "path": "/v1beta1/{name=projects/*/locations/*/tagTemplates/*/fields/*}" } ] } ] }, { - "shortName": "VizierService", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService", + "shortName": "PolicyTagManager", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager", "methods": [ { - "shortName": "AddTrialMeasurement", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.AddTrialMeasurement", + "shortName": "CreatePolicyTag", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.CreatePolicyTag", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{trial_name=projects/*/locations/*/studies/*/trials/*}:addTrialMeasurement" + "path": "/v1beta1/{parent=projects/*/locations/*/taxonomies/*}/policyTags" } ] }, { - "shortName": "CheckTrialEarlyStoppingState", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.CheckTrialEarlyStoppingState", + "shortName": "CreateTaxonomy", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.CreateTaxonomy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{trial_name=projects/*/locations/*/studies/*/trials/*}:checkTrialEarlyStoppingState" + "path": "/v1beta1/{parent=projects/*/locations/*}/taxonomies" } ] }, { - "shortName": "CompleteTrial", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.CompleteTrial", + "shortName": "DeletePolicyTag", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.DeletePolicyTag", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/studies/*/trials/*}:complete" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/taxonomies/*/policyTags/*}" } ] }, { - "shortName": "CreateStudy", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.CreateStudy", + "shortName": "DeleteTaxonomy", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.DeleteTaxonomy", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/studies" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/taxonomies/*}" } ] }, { - "shortName": "CreateTrial", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.CreateTrial", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/studies/*}/trials" + "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*}:getIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:getIamPolicy" } ] }, { - "shortName": "DeleteStudy", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.DeleteStudy", + "shortName": "GetPolicyTag", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.GetPolicyTag", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/studies/*}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/taxonomies/*/policyTags/*}" } ] }, { - "shortName": "DeleteTrial", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.DeleteTrial", + "shortName": "GetTaxonomy", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.GetTaxonomy", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/studies/*/trials/*}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/taxonomies/*}" } ] }, { - "shortName": "GetStudy", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.GetStudy", + "shortName": "ListPolicyTags", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.ListPolicyTags", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/studies/*}" + "path": "/v1beta1/{parent=projects/*/locations/*/taxonomies/*}/policyTags" } ] }, { - "shortName": "GetTrial", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.GetTrial", + "shortName": "ListTaxonomies", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.ListTaxonomies", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/studies/*/trials/*}" + "path": "/v1beta1/{parent=projects/*/locations/*}/taxonomies" } ] }, { - "shortName": "ListOptimalTrials", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.ListOptimalTrials", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/studies/*}/trials:listOptimalTrials" + "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*}:setIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:setIamPolicy" } ] }, { - "shortName": "ListStudies", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.ListStudies", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.TestIamPermissions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/studies" + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*}:testIamPermissions" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:testIamPermissions" } ] }, { - "shortName": "ListTrials", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.ListTrials", + "shortName": "UpdatePolicyTag", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.UpdatePolicyTag", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/studies/*}/trials" + "httpMethod": "PATCH", + "path": "/v1beta1/{policy_tag.name=projects/*/locations/*/taxonomies/*/policyTags/*}" } ] }, { - "shortName": "LookupStudy", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.LookupStudy", + "shortName": "UpdateTaxonomy", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.UpdateTaxonomy", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/studies:lookup" + "httpMethod": "PATCH", + "path": "/v1beta1/{taxonomy.name=projects/*/locations/*/taxonomies/*}" } ] - }, + } + ] + }, + { + "shortName": "PolicyTagManagerSerialization", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManagerSerialization", + "methods": [ { - "shortName": "StopTrial", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.StopTrial", + "shortName": "ExportTaxonomies", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManagerSerialization.ExportTaxonomies", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/studies/*/trials/*}:stop" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/taxonomies:export" } ] }, { - "shortName": "SuggestTrials", - "fullName": "google.cloud.aiplatform.v1beta1.VizierService.SuggestTrials", + "shortName": "ImportTaxonomies", + "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManagerSerialization.ImportTaxonomies", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/studies/*}/trials:suggest" + "path": "/v1beta1/{parent=projects/*/locations/*}/taxonomies:import" } ] } ] } - ] + ], + "configFile": "datacatalog_v1beta1.yaml" }, { - "id": "google.cloud.apigateway.v1", - "directory": "google/cloud/apigateway/v1", + "id": "google.cloud.datafusion.v1", + "directory": "google/cloud/datafusion/v1", "version": "v1", "majorVersion": "v1", - "hostName": "apigateway.googleapis.com", - "title": "API Gateway API", - "description": "", + "hostName": "datafusion.googleapis.com", + "title": "Cloud Data Fusion API", + "description": "Cloud Data Fusion is a fully-managed, cloud native, enterprise data integration service for quickly building and managing data pipelines. It provides a graphical interface to increase time efficiency and reduce complexity, and allows business users, developers, and data scientists to easily and reliably build scalable data integration solutions to cleanse, prepare, blend, transfer and transform data without having to wrestle with infrastructure.", "importDirectories": [ "google/api", - "google/cloud/apigateway/v1", "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.apigateway.v1": 2 + "Google.Cloud.DataFusion.V1": 1 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 2 + "google.golang.org/genproto/googleapis/cloud/datafusion/v1;datafusion": 1 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/apigateway/v1;apigateway": 2 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.ApiGateway.V1": 2 + "com.google.cloud.datafusion.v1": 1 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\ApiGateway\\V1": 2 + "Google\\Cloud\\DataFusion\\V1": 1 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::ApiGateway::V1": 2 + "Google::Cloud::DataFusion::V1": 1 } } }, "services": [ { - "shortName": "ApiGatewayService", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService", + "shortName": "DataFusion", + "fullName": "google.cloud.datafusion.v1.DataFusion", "methods": [ { - "shortName": "CreateApi", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.CreateApi", + "shortName": "CreateInstance", + "fullName": "google.cloud.datafusion.v1.DataFusion.CreateInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/apis" + "path": "/v1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "CreateApiConfig", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.CreateApiConfig", + "shortName": "DeleteInstance", + "fullName": "google.cloud.datafusion.v1.DataFusion.DeleteInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/apis/*}/configs" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "CreateGateway", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.CreateGateway", + "shortName": "GetInstance", + "fullName": "google.cloud.datafusion.v1.DataFusion.GetInstance", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/instances/*}" + } + ] + }, + { + "shortName": "ListAvailableVersions", + "fullName": "google.cloud.datafusion.v1.DataFusion.ListAvailableVersions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/versions" + } + ] + }, + { + "shortName": "ListInstances", + "fullName": "google.cloud.datafusion.v1.DataFusion.ListInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/instances" + } + ] + }, + { + "shortName": "RestartInstance", + "fullName": "google.cloud.datafusion.v1.DataFusion.RestartInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/gateways" + "path": "/v1/{name=projects/*/locations/*/instances/*}:restart" } ] }, { - "shortName": "DeleteApi", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.DeleteApi", + "shortName": "UpdateInstance", + "fullName": "google.cloud.datafusion.v1.DataFusion.UpdateInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/apis/*}" + "httpMethod": "PATCH", + "path": "/v1/{instance.name=projects/*/locations/*/instances/*}" + } + ] + } + ] + } + ], + "configFile": "datafusion_v1.yaml" + }, + { + "id": "google.cloud.datafusion.v1beta1", + "directory": "google/cloud/datafusion/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "datafusion.googleapis.com", + "title": "Cloud Data Fusion API", + "description": "Cloud Data Fusion is a fully-managed, cloud native, enterprise data integration service for quickly building and managing data pipelines. It provides a graphical interface to increase time efficiency and reduce complexity, and allows business users, developers, and data scientists to easily and reliably build scalable data integration solutions to cleanse, prepare, blend, transfer and transform data without having to wrestle with infrastructure.", + "importDirectories": [ + "google/api", + "google/iam/v1", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.DataFusion.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/datafusion/v1beta1;datafusion": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.datafusion.v1beta1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\DataFusion\\V1beta1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::DataFusion::V1beta1": 1 + } + } + }, + "services": [ + { + "shortName": "DataFusion", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion", + "methods": [ + { + "shortName": "AddDnsPeering", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.AddDnsPeering", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:add" } ] }, { - "shortName": "DeleteApiConfig", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.DeleteApiConfig", + "shortName": "CreateInstance", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.CreateInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/apis/*/configs/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "DeleteGateway", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.DeleteGateway", + "shortName": "DeleteInstance", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.DeleteInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/gateways/*}" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "GetApi", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.GetApi", + "shortName": "GetInstance", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.GetInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/apis/*}" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "GetApiConfig", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.GetApiConfig", + "shortName": "ListAvailableVersions", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.ListAvailableVersions", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/apis/*/configs/*}" + "path": "/v1beta1/{parent=projects/*/locations/*}/versions" } ] }, { - "shortName": "GetGateway", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.GetGateway", + "shortName": "ListDnsPeerings", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.ListDnsPeerings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/gateways/*}" + "path": "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:list" } ] }, { - "shortName": "ListApiConfigs", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.ListApiConfigs", + "shortName": "ListInstances", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.ListInstances", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/apis/*}/configs" + "path": "/v1beta1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "ListApis", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.ListApis", + "shortName": "ListNamespaces", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.ListNamespaces", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/apis" + "path": "/v1beta1/{parent=projects/*/locations/*/instances/*}/namespaces" } ] }, { - "shortName": "ListGateways", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.ListGateways", + "shortName": "RemoveDnsPeering", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.RemoveDnsPeering", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/gateways" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:remove" } ] }, { - "shortName": "UpdateApi", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.UpdateApi", + "shortName": "RemoveIamPolicy", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.RemoveIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{api.name=projects/*/locations/*/apis/*}" + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/**}:removeIamPolicy" } ] }, { - "shortName": "UpdateApiConfig", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.UpdateApiConfig", + "shortName": "RestartInstance", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.RestartInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{api_config.name=projects/*/locations/*/apis/*/configs/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:restart" } ] }, { - "shortName": "UpdateGateway", - "fullName": "google.cloud.apigateway.v1.ApiGatewayService.UpdateGateway", + "shortName": "UpdateInstance", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.UpdateInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{gateway.name=projects/*/locations/*/gateways/*}" + "path": "/v1beta1/{instance.name=projects/*/locations/*/instances/*}" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.apigeeconnect.v1", - "directory": "google/cloud/apigeeconnect/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "apigeeconnect.googleapis.com", - "title": "Apigee Connect API", - "description": "", - "importDirectories": [ - "google/api", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.apigeeconnect.v1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/apigeeconnect/v1;apigeeconnect": 2 - } - } - }, - "services": [ - { - "shortName": "ConnectionService", - "fullName": "google.cloud.apigeeconnect.v1.ConnectionService", - "methods": [ + }, { - "shortName": "ListConnections", - "fullName": "google.cloud.apigeeconnect.v1.ConnectionService.ListConnections", + "shortName": "UpgradeInstance", + "fullName": "google.cloud.datafusion.v1beta1.DataFusion.UpgradeInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/endpoints/*}/connections" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:upgrade" } ] } ] - }, - { - "shortName": "Tether", - "fullName": "google.cloud.apigeeconnect.v1.Tether", - "methods": [ - { - "shortName": "Egress", - "fullName": "google.cloud.apigeeconnect.v1.Tether.Egress", - "mode": "BIDIRECTIONAL_STREAMING" - } - ] } - ] + ], + "configFile": "datafusion_v1beta1.yaml" }, { - "id": "google.cloud.asset.v1", - "directory": "google/cloud/asset/v1", - "version": "v1", + "id": "google.cloud.datalabeling.v1beta1", + "directory": "google/cloud/datalabeling/v1beta1", + "version": "v1beta1", "majorVersion": "v1", - "hostName": "cloudasset.googleapis.com", - "title": "Cloud Asset API", - "description": "The cloud asset API manages the history and inventory of cloud resources.", + "hostName": "datalabeling.googleapis.com", + "title": "Data Labeling API", + "description": "Public API for Google Cloud AI Data Labeling Service.", "importDirectories": [ "google/api", - "google/cloud/asset/v1", - "google/cloud/orgpolicy/v1", - "google/cloud/osconfig/v1", - "google/iam/v1", - "google/identity/accesscontextmanager/v1", + "google/cloud/datalabeling/v1beta1", "google/longrunning", "google/protobuf", - "google/rpc", - "google/type" + "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.asset.v1": 2 + "Google.Cloud.DataLabeling.V1Beta1": 10 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 2 + "google.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling": 10 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/asset/v1;asset": 2 + "true": 10 } }, - "cc_enable_arenas": { + "java_package": { "valueCounts": { - "true": 1, - "": 1 + "com.google.cloud.datalabeling.v1beta1": 10 } }, - "csharp_namespace": { + "php_namespace": { "valueCounts": { - "Google.Cloud.Asset.V1": 2 + "Google\\Cloud\\DataLabeling\\V1beta1": 10 } }, - "php_namespace": { + "ruby_package": { "valueCounts": { - "Google\\Cloud\\Asset\\V1": 2 + "Google::Cloud::DataLabeling::V1beta1": 10 } } }, "services": [ { - "shortName": "AssetService", - "fullName": "google.cloud.asset.v1.AssetService", + "shortName": "DataLabelingService", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService", "methods": [ { - "shortName": "AnalyzeIamPolicy", - "fullName": "google.cloud.asset.v1.AssetService.AnalyzeIamPolicy", + "shortName": "CreateAnnotationSpecSet", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.CreateAnnotationSpecSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*}/annotationSpecSets" + } + ] + }, + { + "shortName": "CreateDataset", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.CreateDataset", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*}/datasets" + } + ] + }, + { + "shortName": "CreateEvaluationJob", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.CreateEvaluationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*}/evaluationJobs" + } + ] + }, + { + "shortName": "CreateInstruction", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.CreateInstruction", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*}/instructions" + } + ] + }, + { + "shortName": "DeleteAnnotatedDataset", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteAnnotatedDataset", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{analysis_query.scope=*/*}:analyzeIamPolicy" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}" } ] }, { - "shortName": "AnalyzeIamPolicyLongrunning", - "fullName": "google.cloud.asset.v1.AssetService.AnalyzeIamPolicyLongrunning", + "shortName": "DeleteAnnotationSpecSet", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteAnnotationSpecSet", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{analysis_query.scope=*/*}:analyzeIamPolicyLongrunning" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/annotationSpecSets/*}" } ] }, { - "shortName": "BatchGetAssetsHistory", - "fullName": "google.cloud.asset.v1.AssetService.BatchGetAssetsHistory", + "shortName": "DeleteDataset", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteDataset", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=*/*}:batchGetAssetsHistory" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/datasets/*}" } ] }, { - "shortName": "CreateFeed", - "fullName": "google.cloud.asset.v1.AssetService.CreateFeed", + "shortName": "DeleteEvaluationJob", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteEvaluationJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=*/*}/feeds" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/evaluationJobs/*}" } ] }, { - "shortName": "DeleteFeed", - "fullName": "google.cloud.asset.v1.AssetService.DeleteFeed", + "shortName": "DeleteInstruction", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteInstruction", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=*/*/feeds/*}" + "path": "/v1beta1/{name=projects/*/instructions/*}" } ] }, { - "shortName": "ExportAssets", - "fullName": "google.cloud.asset.v1.AssetService.ExportAssets", + "shortName": "ExportData", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ExportData", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=*/*}:exportAssets" + "path": "/v1beta1/{name=projects/*/datasets/*}:exportData" } ] }, { - "shortName": "GetFeed", - "fullName": "google.cloud.asset.v1.AssetService.GetFeed", + "shortName": "GetAnnotatedDataset", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetAnnotatedDataset", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=*/*/feeds/*}" + "path": "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}" } ] }, { - "shortName": "ListAssets", - "fullName": "google.cloud.asset.v1.AssetService.ListAssets", + "shortName": "GetAnnotationSpecSet", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetAnnotationSpecSet", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=*/*}/assets" + "path": "/v1beta1/{name=projects/*/annotationSpecSets/*}" } ] }, { - "shortName": "ListFeeds", - "fullName": "google.cloud.asset.v1.AssetService.ListFeeds", + "shortName": "GetDataItem", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetDataItem", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=*/*}/feeds" + "path": "/v1beta1/{name=projects/*/datasets/*/dataItems/*}" } ] }, { - "shortName": "SearchAllIamPolicies", - "fullName": "google.cloud.asset.v1.AssetService.SearchAllIamPolicies", + "shortName": "GetDataset", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetDataset", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{scope=*/*}:searchAllIamPolicies" + "path": "/v1beta1/{name=projects/*/datasets/*}" } ] }, { - "shortName": "SearchAllResources", - "fullName": "google.cloud.asset.v1.AssetService.SearchAllResources", + "shortName": "GetEvaluation", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetEvaluation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{scope=*/*}:searchAllResources" + "path": "/v1beta1/{name=projects/*/datasets/*/evaluations/*}" } ] }, { - "shortName": "UpdateFeed", - "fullName": "google.cloud.asset.v1.AssetService.UpdateFeed", + "shortName": "GetEvaluationJob", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetEvaluationJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{feed.name=*/*/feeds/*}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/evaluationJobs/*}" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.asset.v1p1beta1", - "directory": "google/cloud/asset/v1p1beta1", - "version": "v1p1beta1", - "majorVersion": "v1", - "hostName": "cloudasset.googleapis.com", - "title": "Cloud Asset API", - "description": "The cloud asset API manages the history and inventory of cloud resources.", - "importDirectories": [ - "google/api", - "google/cloud/asset/v1p1beta1", - "google/iam/v1" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.asset.v1p1beta1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/asset/v1p1beta1;asset": 2 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 1, - "": 1 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Asset.V1P1Beta1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\Asset\\V1p1beta1": 2 - } - } - }, - "services": [ - { - "shortName": "AssetService", - "fullName": "google.cloud.asset.v1p1beta1.AssetService", - "methods": [ + }, { - "shortName": "SearchAllIamPolicies", - "fullName": "google.cloud.asset.v1p1beta1.AssetService.SearchAllIamPolicies", + "shortName": "GetExample", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetExample", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p1beta1/{scope=*/*}/iamPolicies:searchAll" + "path": "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*/examples/*}" } ] }, { - "shortName": "SearchAllResources", - "fullName": "google.cloud.asset.v1p1beta1.AssetService.SearchAllResources", + "shortName": "GetInstruction", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetInstruction", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p1beta1/{scope=*/*}/resources:searchAll" + "path": "/v1beta1/{name=projects/*/instructions/*}" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.asset.v1p2beta1", - "directory": "google/cloud/asset/v1p2beta1", - "version": "v1p2beta1", - "majorVersion": "v1", - "hostName": "cloudasset.googleapis.com", - "title": "Cloud Asset API", - "description": "The cloud asset API manages the history and inventory of cloud resources.", - "importDirectories": [ - "google/api", - "google/cloud/asset/v1p2beta1", - "google/iam/v1", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.asset.v1p2beta1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/asset/v1p2beta1;asset": 2 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 1, - "": 1 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Asset.v1p2beta1": 1, - "Google.Cloud.Asset.V1p2Beta1": 1 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\Asset\\V1p2beta1": 2 - } - } - }, - "services": [ - { - "shortName": "AssetService", - "fullName": "google.cloud.asset.v1p2beta1.AssetService", - "methods": [ + }, { - "shortName": "CreateFeed", - "fullName": "google.cloud.asset.v1p2beta1.AssetService.CreateFeed", + "shortName": "ImportData", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ImportData", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p2beta1/{parent=*/*}/feeds" + "path": "/v1beta1/{name=projects/*/datasets/*}:importData" } ] }, { - "shortName": "DeleteFeed", - "fullName": "google.cloud.asset.v1p2beta1.AssetService.DeleteFeed", + "shortName": "LabelImage", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.LabelImage", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1p2beta1/{name=*/*/feeds/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/datasets/*}/image:label" } ] }, { - "shortName": "GetFeed", - "fullName": "google.cloud.asset.v1p2beta1.AssetService.GetFeed", + "shortName": "LabelText", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.LabelText", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/datasets/*}/text:label" + } + ] + }, + { + "shortName": "LabelVideo", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.LabelVideo", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/datasets/*}/video:label" + } + ] + }, + { + "shortName": "ListAnnotatedDatasets", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListAnnotatedDatasets", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p2beta1/{name=*/*/feeds/*}" + "path": "/v1beta1/{parent=projects/*/datasets/*}/annotatedDatasets" } ] }, { - "shortName": "ListFeeds", - "fullName": "google.cloud.asset.v1p2beta1.AssetService.ListFeeds", + "shortName": "ListAnnotationSpecSets", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListAnnotationSpecSets", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p2beta1/{parent=*/*}/feeds" + "path": "/v1beta1/{parent=projects/*}/annotationSpecSets" } ] }, { - "shortName": "UpdateFeed", - "fullName": "google.cloud.asset.v1p2beta1.AssetService.UpdateFeed", + "shortName": "ListDataItems", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListDataItems", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1p2beta1/{feed.name=*/*/feeds/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/datasets/*}/dataItems" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.asset.v1p4beta1", - "directory": "google/cloud/asset/v1p4beta1", - "version": "v1p4beta1", - "majorVersion": "v1", - "hostName": "cloudasset.googleapis.com", - "title": "Cloud Asset API", - "description": "The cloud asset API manages the history and inventory of cloud resources.", - "importDirectories": [ - "google/api", - "google/cloud/asset/v1p4beta1", - "google/iam/v1", - "google/longrunning", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.asset.v1p4beta1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/asset/v1p4beta1;asset": 2 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 1, - "": 1 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Asset.V1P4Beta1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\Asset\\V1p4beta1": 2 - } - } - }, - "services": [ - { - "shortName": "AssetService", - "fullName": "google.cloud.asset.v1p4beta1.AssetService", - "methods": [ + }, { - "shortName": "AnalyzeIamPolicy", - "fullName": "google.cloud.asset.v1p4beta1.AssetService.AnalyzeIamPolicy", + "shortName": "ListDatasets", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListDatasets", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p4beta1/{analysis_query.parent=*/*}:analyzeIamPolicy" + "path": "/v1beta1/{parent=projects/*}/datasets" } ] }, { - "shortName": "ExportIamPolicyAnalysis", - "fullName": "google.cloud.asset.v1p4beta1.AssetService.ExportIamPolicyAnalysis", + "shortName": "ListEvaluationJobs", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListEvaluationJobs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*}/evaluationJobs" + } + ] + }, + { + "shortName": "ListExamples", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListExamples", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/datasets/*/annotatedDatasets/*}/examples" + } + ] + }, + { + "shortName": "ListInstructions", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListInstructions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*}/instructions" + } + ] + }, + { + "shortName": "PauseEvaluationJob", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.PauseEvaluationJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p4beta1/{analysis_query.parent=*/*}:exportIamPolicyAnalysis" + "path": "/v1beta1/{name=projects/*/evaluationJobs/*}:pause" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.asset.v1p5beta1", - "directory": "google/cloud/asset/v1p5beta1", - "version": "v1p5beta1", - "majorVersion": "v1", - "hostName": "cloudasset.googleapis.com", - "title": "Cloud Asset API", - "description": "The cloud asset API manages the history and inventory of cloud resources.", - "importDirectories": [ - "google/api", - "google/cloud/asset/v1p5beta1", - "google/cloud/orgpolicy/v1", - "google/iam/v1", - "google/identity/accesscontextmanager/v1", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.asset.v1p5beta1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/asset/v1p5beta1;asset": 2 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 1, - "": 1 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Asset.V1p5Beta1": 1, - "Google.Cloud.Asset.V1P5Beta1": 1 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\Asset\\V1p5beta1": 2 - } - } - }, - "services": [ - { - "shortName": "AssetService", - "fullName": "google.cloud.asset.v1p5beta1.AssetService", - "methods": [ + }, { - "shortName": "ListAssets", - "fullName": "google.cloud.asset.v1p5beta1.AssetService.ListAssets", + "shortName": "ResumeEvaluationJob", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ResumeEvaluationJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/evaluationJobs/*}:resume" + } + ] + }, + { + "shortName": "SearchEvaluations", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.SearchEvaluations", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p5beta1/{parent=*/*}/assets" + "path": "/v1beta1/{parent=projects/*}/evaluations:search" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.asset.v1p7beta1", - "directory": "google/cloud/asset/v1p7beta1", - "version": "v1p7beta1", - "majorVersion": "v1", - "hostName": "cloudasset.googleapis.com", - "title": "Cloud Asset API", - "description": "The cloud asset API manages the history and inventory of cloud resources.", - "importDirectories": [ - "google/api", - "google/cloud/asset/v1p7beta1", - "google/cloud/orgpolicy/v1", - "google/cloud/osconfig/v1", - "google/iam/v1", - "google/identity/accesscontextmanager/v1", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.asset.v1p7beta1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/asset/v1p7beta1;asset": 2 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 1, - "": 1 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Asset.V1P7Beta1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\Asset\\V1p7beta1": 2 - } - } - }, - "services": [ - { - "shortName": "AssetService", - "fullName": "google.cloud.asset.v1p7beta1.AssetService", - "methods": [ + }, { - "shortName": "ExportAssets", - "fullName": "google.cloud.asset.v1p7beta1.AssetService.ExportAssets", + "shortName": "SearchExampleComparisons", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.SearchExampleComparisons", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/datasets/*/evaluations/*}/exampleComparisons:search" + } + ] + }, + { + "shortName": "UpdateEvaluationJob", + "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.UpdateEvaluationJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1p7beta1/{parent=*/*}:exportAssets" + "httpMethod": "PATCH", + "path": "/v1beta1/{evaluation_job.name=projects/*/evaluationJobs/*}" } ] } ] } - ] + ], + "configFile": "datalabeling_v1beta1.yaml" }, { - "id": "google.cloud.assuredworkloads.v1beta1", - "directory": "google/cloud/assuredworkloads/v1beta1", - "version": "v1beta1", + "id": "google.cloud.dataplex.v1", + "directory": "google/cloud/dataplex/v1", + "version": "v1", "majorVersion": "v1", - "hostName": "assuredworkloads.googleapis.com", - "title": "Assured Workloads API", - "description": "", + "hostName": "dataplex.googleapis.com", + "title": "Cloud Dataplex API", + "description": "Dataplex API is used to manage the lifecycle of data lakes.", "importDirectories": [ "google/api", + "google/cloud/dataplex/v1", "google/longrunning", "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.assuredworkloads.v1beta1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/assuredworkloads/v1beta1;assuredworkloads": 1 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.AssuredWorkloads.V1Beta1": 1 + "google.golang.org/genproto/googleapis/cloud/dataplex/v1;dataplex": 5 } }, - "php_namespace": { + "java_multiple_files": { "valueCounts": { - "Google\\Cloud\\AssuredWorkloads\\V1beta1": 1 + "true": 5 } }, - "ruby_package": { + "java_package": { "valueCounts": { - "Google::Cloud::AssuredWorkloads::V1beta1": 1 + "com.google.cloud.dataplex.v1": 5 } } }, "services": [ { - "shortName": "AssuredWorkloadsService", - "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService", + "shortName": "DataplexService", + "fullName": "google.cloud.dataplex.v1.DataplexService", "methods": [ { - "shortName": "CreateWorkload", - "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService.CreateWorkload", + "shortName": "CancelJob", + "fullName": "google.cloud.dataplex.v1.DataplexService.CancelJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=organizations/*/locations/*}/workloads" + "path": "/v1/{name=projects/*/locations/*/lakes/*/tasks/*/jobs/*}:cancel" } ] }, { - "shortName": "DeleteWorkload", - "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService.DeleteWorkload", + "shortName": "CreateAsset", + "fullName": "google.cloud.dataplex.v1.DataplexService.CreateAsset", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=organizations/*/locations/*/workloads/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/lakes/*/zones/*}/assets" } ] }, { - "shortName": "GetWorkload", - "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService.GetWorkload", + "shortName": "CreateLake", + "fullName": "google.cloud.dataplex.v1.DataplexService.CreateLake", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=organizations/*/locations/*/workloads/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/lakes" } ] }, { - "shortName": "ListWorkloads", - "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService.ListWorkloads", + "shortName": "CreateTask", + "fullName": "google.cloud.dataplex.v1.DataplexService.CreateTask", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=organizations/*/locations/*}/workloads" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/lakes/*}/tasks" } ] }, { - "shortName": "UpdateWorkload", - "fullName": "google.cloud.assuredworkloads.v1beta1.AssuredWorkloadsService.UpdateWorkload", + "shortName": "CreateZone", + "fullName": "google.cloud.dataplex.v1.DataplexService.CreateZone", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{workload.name=organizations/*/locations/*/workloads/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/lakes/*}/zones" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.automl.v1", - "directory": "google/cloud/automl/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "automl.googleapis.com", - "title": "Cloud AutoML API", - "description": "Train high-quality custom machine learning models with minimum effort and machine learning expertise.", - "importDirectories": [ - "google/api", - "google/cloud/automl/v1", - "google/longrunning", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.automl.v1": 19 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 19 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/automl/v1;automl": 19 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.AutoML.V1": 19 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\AutoMl\\V1": 19 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::AutoML::V1": 19 - } - } - }, - "services": [ - { - "shortName": "AutoMl", - "fullName": "google.cloud.automl.v1.AutoMl", - "methods": [ + }, { - "shortName": "CreateDataset", - "fullName": "google.cloud.automl.v1.AutoMl.CreateDataset", + "shortName": "DeleteAsset", + "fullName": "google.cloud.dataplex.v1.DataplexService.DeleteAsset", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/datasets" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/lakes/*/zones/*/assets/*}" } ] }, { - "shortName": "CreateModel", - "fullName": "google.cloud.automl.v1.AutoMl.CreateModel", + "shortName": "DeleteLake", + "fullName": "google.cloud.dataplex.v1.DataplexService.DeleteLake", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/models" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/lakes/*}" } ] }, { - "shortName": "DeleteDataset", - "fullName": "google.cloud.automl.v1.AutoMl.DeleteDataset", + "shortName": "DeleteTask", + "fullName": "google.cloud.dataplex.v1.DataplexService.DeleteTask", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/datasets/*}" + "path": "/v1/{name=projects/*/locations/*/lakes/*/tasks/*}" } ] }, { - "shortName": "DeleteModel", - "fullName": "google.cloud.automl.v1.AutoMl.DeleteModel", + "shortName": "DeleteZone", + "fullName": "google.cloud.dataplex.v1.DataplexService.DeleteZone", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/models/*}" + "path": "/v1/{name=projects/*/locations/*/lakes/*/zones/*}" } ] }, { - "shortName": "DeployModel", - "fullName": "google.cloud.automl.v1.AutoMl.DeployModel", + "shortName": "GetAsset", + "fullName": "google.cloud.dataplex.v1.DataplexService.GetAsset", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/models/*}:deploy" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/lakes/*/zones/*/assets/*}" } ] }, { - "shortName": "ExportData", - "fullName": "google.cloud.automl.v1.AutoMl.ExportData", + "shortName": "GetJob", + "fullName": "google.cloud.dataplex.v1.DataplexService.GetJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/datasets/*}:exportData" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/lakes/*/tasks/*/jobs/*}" } ] }, { - "shortName": "ExportModel", - "fullName": "google.cloud.automl.v1.AutoMl.ExportModel", + "shortName": "GetLake", + "fullName": "google.cloud.dataplex.v1.DataplexService.GetLake", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/models/*}:export" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/lakes/*}" } ] }, { - "shortName": "GetAnnotationSpec", - "fullName": "google.cloud.automl.v1.AutoMl.GetAnnotationSpec", + "shortName": "GetTask", + "fullName": "google.cloud.dataplex.v1.DataplexService.GetTask", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}" + "path": "/v1/{name=projects/*/locations/*/lakes/*/tasks/*}" } ] }, { - "shortName": "GetDataset", - "fullName": "google.cloud.automl.v1.AutoMl.GetDataset", + "shortName": "GetZone", + "fullName": "google.cloud.dataplex.v1.DataplexService.GetZone", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/datasets/*}" + "path": "/v1/{name=projects/*/locations/*/lakes/*/zones/*}" } ] }, { - "shortName": "GetModel", - "fullName": "google.cloud.automl.v1.AutoMl.GetModel", + "shortName": "ListAssetActions", + "fullName": "google.cloud.dataplex.v1.DataplexService.ListAssetActions", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/models/*}" + "path": "/v1/{parent=projects/*/locations/*/lakes/*/zones/*/assets/*}/actions" } ] }, { - "shortName": "GetModelEvaluation", - "fullName": "google.cloud.automl.v1.AutoMl.GetModelEvaluation", + "shortName": "ListAssets", + "fullName": "google.cloud.dataplex.v1.DataplexService.ListAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/models/*/modelEvaluations/*}" + "path": "/v1/{parent=projects/*/locations/*/lakes/*/zones/*}/assets" } ] }, { - "shortName": "ImportData", - "fullName": "google.cloud.automl.v1.AutoMl.ImportData", + "shortName": "ListJobs", + "fullName": "google.cloud.dataplex.v1.DataplexService.ListJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/datasets/*}:importData" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/lakes/*/tasks/*}/jobs" } ] }, { - "shortName": "ListDatasets", - "fullName": "google.cloud.automl.v1.AutoMl.ListDatasets", + "shortName": "ListLakeActions", + "fullName": "google.cloud.dataplex.v1.DataplexService.ListLakeActions", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/datasets" + "path": "/v1/{parent=projects/*/locations/*/lakes/*}/actions" } ] }, { - "shortName": "ListModelEvaluations", - "fullName": "google.cloud.automl.v1.AutoMl.ListModelEvaluations", + "shortName": "ListLakes", + "fullName": "google.cloud.dataplex.v1.DataplexService.ListLakes", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/models/*}/modelEvaluations" + "path": "/v1/{parent=projects/*/locations/*}/lakes" } ] }, { - "shortName": "ListModels", - "fullName": "google.cloud.automl.v1.AutoMl.ListModels", + "shortName": "ListTasks", + "fullName": "google.cloud.dataplex.v1.DataplexService.ListTasks", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/models" + "path": "/v1/{parent=projects/*/locations/*/lakes/*}/tasks" } ] }, { - "shortName": "UndeployModel", - "fullName": "google.cloud.automl.v1.AutoMl.UndeployModel", + "shortName": "ListZoneActions", + "fullName": "google.cloud.dataplex.v1.DataplexService.ListZoneActions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/models/*}:undeploy" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/lakes/*/zones/*}/actions" } ] }, { - "shortName": "UpdateDataset", - "fullName": "google.cloud.automl.v1.AutoMl.UpdateDataset", + "shortName": "ListZones", + "fullName": "google.cloud.dataplex.v1.DataplexService.ListZones", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/lakes/*}/zones" + } + ] + }, + { + "shortName": "UpdateAsset", + "fullName": "google.cloud.dataplex.v1.DataplexService.UpdateAsset", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{dataset.name=projects/*/locations/*/datasets/*}" + "path": "/v1/{asset.name=projects/*/locations/*/lakes/*/zones/*/assets/*}" } ] }, { - "shortName": "UpdateModel", - "fullName": "google.cloud.automl.v1.AutoMl.UpdateModel", + "shortName": "UpdateLake", + "fullName": "google.cloud.dataplex.v1.DataplexService.UpdateLake", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{model.name=projects/*/locations/*/models/*}" + "path": "/v1/{lake.name=projects/*/locations/*/lakes/*}" + } + ] + }, + { + "shortName": "UpdateTask", + "fullName": "google.cloud.dataplex.v1.DataplexService.UpdateTask", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{task.name=projects/*/locations/*/lakes/*/tasks/*}" + } + ] + }, + { + "shortName": "UpdateZone", + "fullName": "google.cloud.dataplex.v1.DataplexService.UpdateZone", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{zone.name=projects/*/locations/*/lakes/*/zones/*}" } ] } ] }, { - "shortName": "PredictionService", - "fullName": "google.cloud.automl.v1.PredictionService", + "shortName": "MetadataService", + "fullName": "google.cloud.dataplex.v1.MetadataService", "methods": [ { - "shortName": "BatchPredict", - "fullName": "google.cloud.automl.v1.PredictionService.BatchPredict", + "shortName": "GetEntity", + "fullName": "google.cloud.dataplex.v1.MetadataService.GetEntity", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/models/*}:batchPredict" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/lakes/*/zones/*/entities/*}" } ] }, { - "shortName": "Predict", - "fullName": "google.cloud.automl.v1.PredictionService.Predict", + "shortName": "GetPartition", + "fullName": "google.cloud.dataplex.v1.MetadataService.GetPartition", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/models/*}:predict" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/lakes/*/zones/*/entities/*/partitions/**}" + } + ] + }, + { + "shortName": "ListEntities", + "fullName": "google.cloud.dataplex.v1.MetadataService.ListEntities", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/lakes/*/zones/*}/entities" + } + ] + }, + { + "shortName": "ListPartitions", + "fullName": "google.cloud.dataplex.v1.MetadataService.ListPartitions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/lakes/*/zones/*/entities/*}/partitions" } ] } ] } - ] + ], + "configFile": "dataplex_v1.yaml" }, { - "id": "google.cloud.automl.v1beta1", - "directory": "google/cloud/automl/v1beta1", - "version": "v1beta1", + "id": "google.cloud.dataproc.v1", + "directory": "google/cloud/dataproc/v1", + "version": "v1", "majorVersion": "v1", - "hostName": "automl.googleapis.com", - "title": "Cloud AutoML API", - "description": "Train high-quality custom machine learning models with minimum effort and machine learning expertise.", + "hostName": "dataproc.googleapis.com", + "title": "Cloud Dataproc API", + "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", "importDirectories": [ "google/api", - "google/cloud/automl/v1beta1", + "google/cloud/dataproc/v1", "google/longrunning", - "google/protobuf", - "google/rpc" + "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.automl.v1beta1": 28 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 25, - "": 3 - } - }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/automl/v1beta1;automl": 28 + "google.golang.org/genproto/googleapis/cloud/dataproc/v1;dataproc": 7 } }, - "php_namespace": { + "java_multiple_files": { "valueCounts": { - "Google\\Cloud\\AutoMl\\V1beta1": 28 + "true": 7 } }, - "ruby_package": { + "java_package": { "valueCounts": { - "Google::Cloud::AutoML::V1beta1": 28 + "com.google.cloud.dataproc.v1": 7 } } }, "services": [ { - "shortName": "AutoMl", - "fullName": "google.cloud.automl.v1beta1.AutoMl", + "shortName": "AutoscalingPolicyService", + "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService", "methods": [ { - "shortName": "CreateDataset", - "fullName": "google.cloud.automl.v1beta1.AutoMl.CreateDataset", + "shortName": "CreateAutoscalingPolicy", + "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService.CreateAutoscalingPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/datasets" - } - ] - }, - { - "shortName": "CreateModel", - "fullName": "google.cloud.automl.v1beta1.AutoMl.CreateModel", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{parent=projects/*/locations/*}/autoscalingPolicies" + }, { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/models" + "path": "/v1/{parent=projects/*/regions/*}/autoscalingPolicies" } ] }, { - "shortName": "DeleteDataset", - "fullName": "google.cloud.automl.v1beta1.AutoMl.DeleteDataset", + "shortName": "DeleteAutoscalingPolicy", + "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService.DeleteAutoscalingPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}" - } - ] - }, - { - "shortName": "DeleteModel", - "fullName": "google.cloud.automl.v1beta1.AutoMl.DeleteModel", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{name=projects/*/locations/*/autoscalingPolicies/*}" + }, { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/models/*}" + "path": "/v1/{name=projects/*/regions/*/autoscalingPolicies/*}" } ] }, { - "shortName": "DeployModel", - "fullName": "google.cloud.automl.v1beta1.AutoMl.DeployModel", + "shortName": "GetAutoscalingPolicy", + "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService.GetAutoscalingPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/models/*}:deploy" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/autoscalingPolicies/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/regions/*/autoscalingPolicies/*}" } ] }, { - "shortName": "ExportData", - "fullName": "google.cloud.automl.v1beta1.AutoMl.ExportData", + "shortName": "ListAutoscalingPolicies", + "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService.ListAutoscalingPolicies", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}:exportData" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/autoscalingPolicies" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/regions/*}/autoscalingPolicies" } ] }, { - "shortName": "ExportEvaluatedExamples", - "fullName": "google.cloud.automl.v1beta1.AutoMl.ExportEvaluatedExamples", + "shortName": "UpdateAutoscalingPolicy", + "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService.UpdateAutoscalingPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/models/*}:exportEvaluatedExamples" + "httpMethod": "PUT", + "path": "/v1/{policy.name=projects/*/locations/*/autoscalingPolicies/*}" + }, + { + "httpMethod": "PUT", + "path": "/v1/{policy.name=projects/*/regions/*/autoscalingPolicies/*}" } ] - }, + } + ] + }, + { + "shortName": "BatchController", + "fullName": "google.cloud.dataproc.v1.BatchController", + "methods": [ { - "shortName": "ExportModel", - "fullName": "google.cloud.automl.v1beta1.AutoMl.ExportModel", + "shortName": "CreateBatch", + "fullName": "google.cloud.dataproc.v1.BatchController.CreateBatch", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/models/*}:export" + "path": "/v1/{parent=projects/*/locations/*}/batches" } ] }, { - "shortName": "GetAnnotationSpec", - "fullName": "google.cloud.automl.v1beta1.AutoMl.GetAnnotationSpec", + "shortName": "DeleteBatch", + "fullName": "google.cloud.dataproc.v1.BatchController.DeleteBatch", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/batches/*}" } ] }, { - "shortName": "GetColumnSpec", - "fullName": "google.cloud.automl.v1beta1.AutoMl.GetColumnSpec", + "shortName": "GetBatch", + "fullName": "google.cloud.dataproc.v1.BatchController.GetBatch", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*/tableSpecs/*/columnSpecs/*}" + "path": "/v1/{name=projects/*/locations/*/batches/*}" } ] }, { - "shortName": "GetDataset", - "fullName": "google.cloud.automl.v1beta1.AutoMl.GetDataset", + "shortName": "ListBatches", + "fullName": "google.cloud.dataproc.v1.BatchController.ListBatches", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}" + "path": "/v1/{parent=projects/*/locations/*}/batches" } ] - }, + } + ] + }, + { + "shortName": "ClusterController", + "fullName": "google.cloud.dataproc.v1.ClusterController", + "methods": [ { - "shortName": "GetModel", - "fullName": "google.cloud.automl.v1beta1.AutoMl.GetModel", + "shortName": "CreateCluster", + "fullName": "google.cloud.dataproc.v1.ClusterController.CreateCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/models/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project_id}/regions/{region}/clusters" } ] }, { - "shortName": "GetModelEvaluation", - "fullName": "google.cloud.automl.v1beta1.AutoMl.GetModelEvaluation", + "shortName": "DeleteCluster", + "fullName": "google.cloud.dataproc.v1.ClusterController.DeleteCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/models/*/modelEvaluations/*}" + "httpMethod": "DELETE", + "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}" } ] }, { - "shortName": "GetTableSpec", - "fullName": "google.cloud.automl.v1beta1.AutoMl.GetTableSpec", + "shortName": "DiagnoseCluster", + "fullName": "google.cloud.dataproc.v1.ClusterController.DiagnoseCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*/tableSpecs/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}:diagnose" } ] }, { - "shortName": "ImportData", - "fullName": "google.cloud.automl.v1beta1.AutoMl.ImportData", + "shortName": "GetCluster", + "fullName": "google.cloud.dataproc.v1.ClusterController.GetCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/datasets/*}:importData" + "httpMethod": "GET", + "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}" } ] }, { - "shortName": "ListColumnSpecs", - "fullName": "google.cloud.automl.v1beta1.AutoMl.ListColumnSpecs", + "shortName": "ListClusters", + "fullName": "google.cloud.dataproc.v1.ClusterController.ListClusters", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/datasets/*/tableSpecs/*}/columnSpecs" + "path": "/v1/projects/{project_id}/regions/{region}/clusters" } ] }, { - "shortName": "ListDatasets", - "fullName": "google.cloud.automl.v1beta1.AutoMl.ListDatasets", + "shortName": "StartCluster", + "fullName": "google.cloud.dataproc.v1.ClusterController.StartCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/datasets" + "httpMethod": "POST", + "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}:start" } ] }, { - "shortName": "ListModelEvaluations", - "fullName": "google.cloud.automl.v1beta1.AutoMl.ListModelEvaluations", + "shortName": "StopCluster", + "fullName": "google.cloud.dataproc.v1.ClusterController.StopCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/models/*}/modelEvaluations" + "httpMethod": "POST", + "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}:stop" } ] }, { - "shortName": "ListModels", - "fullName": "google.cloud.automl.v1beta1.AutoMl.ListModels", + "shortName": "UpdateCluster", + "fullName": "google.cloud.dataproc.v1.ClusterController.UpdateCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/models" + "httpMethod": "PATCH", + "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}" } ] - }, + } + ] + }, + { + "shortName": "JobController", + "fullName": "google.cloud.dataproc.v1.JobController", + "methods": [ { - "shortName": "ListTableSpecs", - "fullName": "google.cloud.automl.v1beta1.AutoMl.ListTableSpecs", + "shortName": "CancelJob", + "fullName": "google.cloud.dataproc.v1.JobController.CancelJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/datasets/*}/tableSpecs" + "httpMethod": "POST", + "path": "/v1/projects/{project_id}/regions/{region}/jobs/{job_id}:cancel" } ] }, { - "shortName": "UndeployModel", - "fullName": "google.cloud.automl.v1beta1.AutoMl.UndeployModel", + "shortName": "DeleteJob", + "fullName": "google.cloud.dataproc.v1.JobController.DeleteJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/models/*}:undeploy" + "httpMethod": "DELETE", + "path": "/v1/projects/{project_id}/regions/{region}/jobs/{job_id}" } ] }, { - "shortName": "UpdateColumnSpec", - "fullName": "google.cloud.automl.v1beta1.AutoMl.UpdateColumnSpec", + "shortName": "GetJob", + "fullName": "google.cloud.dataproc.v1.JobController.GetJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{column_spec.name=projects/*/locations/*/datasets/*/tableSpecs/*/columnSpecs/*}" + "httpMethod": "GET", + "path": "/v1/projects/{project_id}/regions/{region}/jobs/{job_id}" } ] }, { - "shortName": "UpdateDataset", - "fullName": "google.cloud.automl.v1beta1.AutoMl.UpdateDataset", + "shortName": "ListJobs", + "fullName": "google.cloud.dataproc.v1.JobController.ListJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{dataset.name=projects/*/locations/*/datasets/*}" + "httpMethod": "GET", + "path": "/v1/projects/{project_id}/regions/{region}/jobs" } ] }, { - "shortName": "UpdateTableSpec", - "fullName": "google.cloud.automl.v1beta1.AutoMl.UpdateTableSpec", + "shortName": "SubmitJob", + "fullName": "google.cloud.dataproc.v1.JobController.SubmitJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{table_spec.name=projects/*/locations/*/datasets/*/tableSpecs/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project_id}/regions/{region}/jobs:submit" } ] - } - ] - }, - { - "shortName": "PredictionService", - "fullName": "google.cloud.automl.v1beta1.PredictionService", - "methods": [ + }, { - "shortName": "BatchPredict", - "fullName": "google.cloud.automl.v1beta1.PredictionService.BatchPredict", + "shortName": "SubmitJobAsOperation", + "fullName": "google.cloud.dataproc.v1.JobController.SubmitJobAsOperation", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/models/*}:batchPredict" + "path": "/v1/projects/{project_id}/regions/{region}/jobs:submitAsOperation" } ] }, - { - "shortName": "Predict", - "fullName": "google.cloud.automl.v1beta1.PredictionService.Predict", + { + "shortName": "UpdateJob", + "fullName": "google.cloud.dataproc.v1.JobController.UpdateJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/models/*}:predict" + "httpMethod": "PATCH", + "path": "/v1/projects/{project_id}/regions/{region}/jobs/{job_id}" } ] } ] - } - ] - }, - { - "id": "google.cloud.bigquery.connection.v1", - "directory": "google/cloud/bigquery/connection/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "bigqueryconnection.googleapis.com", - "title": "BigQuery Connection API", - "description": "Allows users to manage BigQuery connections to external data sources.", - "importDirectories": [ - "google/api", - "google/iam/v1", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.bigquery.connection.v1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/bigquery/connection/v1;connection": 1 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.BigQuery.Connection.V1": 1 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\BigQuery\\Connection\\V1": 1 - } - } - }, - "services": [ { - "shortName": "ConnectionService", - "fullName": "google.cloud.bigquery.connection.v1.ConnectionService", + "shortName": "WorkflowTemplateService", + "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService", "methods": [ { - "shortName": "CreateConnection", - "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.CreateConnection", + "shortName": "CreateWorkflowTemplate", + "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.CreateWorkflowTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/connections" + "path": "/v1/{parent=projects/*/locations/*}/workflowTemplates" + }, + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/regions/*}/workflowTemplates" } ] }, { - "shortName": "DeleteConnection", - "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.DeleteConnection", + "shortName": "DeleteWorkflowTemplate", + "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.DeleteWorkflowTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/connections/*}" + "path": "/v1/{name=projects/*/locations/*/workflowTemplates/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/regions/*/workflowTemplates/*}" } ] }, { - "shortName": "GetConnection", - "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.GetConnection", + "shortName": "GetWorkflowTemplate", + "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.GetWorkflowTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/connections/*}" + "path": "/v1/{name=projects/*/locations/*/workflowTemplates/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/regions/*/workflowTemplates/*}" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.GetIamPolicy", + "shortName": "InstantiateInlineWorkflowTemplate", + "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.InstantiateInlineWorkflowTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/connections/*}:getIamPolicy" - } - ] - }, - { - "shortName": "ListConnections", - "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.ListConnections", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{parent=projects/*/locations/*}/workflowTemplates:instantiateInline" + }, { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/connections" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/regions/*}/workflowTemplates:instantiateInline" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.SetIamPolicy", + "shortName": "InstantiateWorkflowTemplate", + "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.InstantiateWorkflowTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/connections/*}:setIamPolicy" + "path": "/v1/{name=projects/*/locations/*/workflowTemplates/*}:instantiate" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/regions/*/workflowTemplates/*}:instantiate" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.TestIamPermissions", + "shortName": "ListWorkflowTemplates", + "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.ListWorkflowTemplates", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/connections/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/workflowTemplates" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/regions/*}/workflowTemplates" } ] }, { - "shortName": "UpdateConnection", - "fullName": "google.cloud.bigquery.connection.v1.ConnectionService.UpdateConnection", + "shortName": "UpdateWorkflowTemplate", + "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.UpdateWorkflowTemplate", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{name=projects/*/locations/*/connections/*}" + "httpMethod": "PUT", + "path": "/v1/{template.name=projects/*/locations/*/workflowTemplates/*}" + }, + { + "httpMethod": "PUT", + "path": "/v1/{template.name=projects/*/regions/*/workflowTemplates/*}" } ] } ] } - ] + ], + "configFile": "dataproc_v1.yaml" }, { - "id": "google.cloud.bigquery.connection.v1beta1", - "directory": "google/cloud/bigquery/connection/v1beta1", - "version": "v1beta1", + "id": "google.cloud.dataqna.v1alpha", + "directory": "google/cloud/dataqna/v1alpha", + "version": "v1alpha", "majorVersion": "v1", - "hostName": "bigqueryconnection.googleapis.com", - "title": "BigQuery Connection API", - "description": "Allows users to manage BigQuery connections to external data sources.", + "hostName": "dataqna.googleapis.com", + "title": "Data QnA API", + "description": "Data QnA is a natural language question and answer service for BigQuery data.", "importDirectories": [ "google/api", - "google/iam/v1", - "google/protobuf" + "google/cloud/dataqna/v1alpha", + "google/protobuf", + "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.bigquery.connection.v1beta1": 1 + "Google.Cloud.DataQnA.V1Alpha": 5 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/bigquery/connection/v1beta1;connection": 1 + "google.golang.org/genproto/googleapis/cloud/dataqna/v1alpha;dataqna": 5 } }, - "csharp_namespace": { + "java_multiple_files": { "valueCounts": { - "Google.Cloud.BigQuery.Connection.V1Beta1": 1 + "true": 5 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.dataqna.v1alpha": 5 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\BigQuery\\Connection\\V1beta1": 1 + "Google\\Cloud\\DataQnA\\V1alpha": 5 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::DataQnA::V1alpha": 5 } } }, "services": [ { - "shortName": "ConnectionService", - "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService", + "shortName": "AutoSuggestionService", + "fullName": "google.cloud.dataqna.v1alpha.AutoSuggestionService", "methods": [ { - "shortName": "CreateConnection", - "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.CreateConnection", + "shortName": "SuggestQueries", + "fullName": "google.cloud.dataqna.v1alpha.AutoSuggestionService.SuggestQueries", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/connections" - } - ] - }, - { - "shortName": "DeleteConnection", - "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.DeleteConnection", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/connections/*}" - } - ] - }, - { - "shortName": "GetConnection", - "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.GetConnection", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/connections/*}" + "path": "/v1alpha/{parent=projects/*/locations/*}:suggestQueries" } ] - }, + } + ] + }, + { + "shortName": "QuestionService", + "fullName": "google.cloud.dataqna.v1alpha.QuestionService", + "methods": [ { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.GetIamPolicy", + "shortName": "CreateQuestion", + "fullName": "google.cloud.dataqna.v1alpha.QuestionService.CreateQuestion", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/connections/*}:getIamPolicy" - } - ] - }, - { - "shortName": "ListConnections", - "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.ListConnections", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/connections" + "path": "/v1alpha/{parent=projects/*/locations/*}/questions" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.SetIamPolicy", + "shortName": "ExecuteQuestion", + "fullName": "google.cloud.dataqna.v1alpha.QuestionService.ExecuteQuestion", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/connections/*}:setIamPolicy" + "path": "/v1alpha/{name=projects/*/locations/*/questions/*}:execute" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.TestIamPermissions", + "shortName": "GetQuestion", + "fullName": "google.cloud.dataqna.v1alpha.QuestionService.GetQuestion", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/connections/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v1alpha/{name=projects/*/locations/*/questions/*}" } ] }, { - "shortName": "UpdateConnection", - "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.UpdateConnection", + "shortName": "GetUserFeedback", + "fullName": "google.cloud.dataqna.v1alpha.QuestionService.GetUserFeedback", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{name=projects/*/locations/*/connections/*}" + "httpMethod": "GET", + "path": "/v1alpha/{name=projects/*/locations/*/questions/*/userFeedback}" } ] }, { - "shortName": "UpdateConnectionCredential", - "fullName": "google.cloud.bigquery.connection.v1beta1.ConnectionService.UpdateConnectionCredential", + "shortName": "UpdateUserFeedback", + "fullName": "google.cloud.dataqna.v1alpha.QuestionService.UpdateUserFeedback", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{name=projects/*/locations/*/connections/*/credential}" + "path": "/v1alpha/{user_feedback.name=projects/*/locations/*/questions/*/userFeedback}" } ] } ] } - ] + ], + "configFile": "dataqna_v1alpha.yaml" }, { - "id": "google.cloud.bigquery.datatransfer.v1", - "directory": "google/cloud/bigquery/datatransfer/v1", - "version": "v1", + "id": "google.cloud.datastream.v1alpha1", + "directory": "google/cloud/datastream/v1alpha1", + "version": "v1alpha1", "majorVersion": "v1", - "hostName": "bigquerydatatransfer.googleapis.com", - "title": "BigQuery Data Transfer API", - "description": "Schedule queries or transfer external data from SaaS applications to Google BigQuery on a regular basis.", + "hostName": "datastream.googleapis.com", + "title": "Datastream API", + "description": "", "importDirectories": [ "google/api", - "google/cloud/bigquery/datatransfer/v1", - "google/protobuf", - "google/rpc" + "google/cloud/datastream/v1alpha1", + "google/longrunning", + "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.bigquery.datatransfer.v1": 2 - } - }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 2 + "Google.Cloud.Datastream.V1Alpha1": 2 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/bigquery/datatransfer/v1;datatransfer": 2 + "google.golang.org/genproto/googleapis/cloud/datastream/v1alpha1;datastream": 2 } }, - "objc_class_prefix": { + "java_multiple_files": { "valueCounts": { - "GCBDT": 1, - "": 1 + "true": 2 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.BigQuery.DataTransfer.V1": 2 + "com.google.cloud.datastream.v1alpha1": 2 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\BigQuery\\DataTransfer\\V1": 2 + "Google\\Cloud\\Datastream\\V1alpha1": 2 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::Bigquery::DataTransfer::V1": 2 + "Google::Cloud::Datastream::V1alpha1": 2 } } }, "services": [ { - "shortName": "DataTransferService", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService", + "shortName": "Datastream", + "fullName": "google.cloud.datastream.v1alpha1.Datastream", "methods": [ { - "shortName": "CheckValidCreds", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.CheckValidCreds", + "shortName": "CreateConnectionProfile", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.CreateConnectionProfile", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/dataSources/*}:checkValidCreds" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/dataSources/*}:checkValidCreds" + "path": "/v1alpha1/{parent=projects/*/locations/*}/connectionProfiles" } ] }, { - "shortName": "CreateTransferConfig", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.CreateTransferConfig", + "shortName": "CreatePrivateConnection", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.CreatePrivateConnection", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/transferConfigs" - }, - { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*}/transferConfigs" + "path": "/v1alpha1/{parent=projects/*/locations/*}/privateConnections" } ] }, { - "shortName": "DeleteTransferConfig", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.DeleteTransferConfig", + "shortName": "CreateRoute", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.CreateRoute", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/transferConfigs/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/transferConfigs/*}" + "httpMethod": "POST", + "path": "/v1alpha1/{parent=projects/*/locations/*/privateConnections/*}/routes" } ] }, { - "shortName": "DeleteTransferRun", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.DeleteTransferRun", + "shortName": "CreateStream", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.CreateStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/transferConfigs/*/runs/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/transferConfigs/*/runs/*}" + "httpMethod": "POST", + "path": "/v1alpha1/{parent=projects/*/locations/*}/streams" } ] }, { - "shortName": "GetDataSource", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.GetDataSource", + "shortName": "DeleteConnectionProfile", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.DeleteConnectionProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/dataSources/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/dataSources/*}" + "httpMethod": "DELETE", + "path": "/v1alpha1/{name=projects/*/locations/*/connectionProfiles/*}" } ] }, { - "shortName": "GetTransferConfig", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.GetTransferConfig", + "shortName": "DeletePrivateConnection", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.DeletePrivateConnection", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/transferConfigs/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/transferConfigs/*}" + "httpMethod": "DELETE", + "path": "/v1alpha1/{name=projects/*/locations/*/privateConnections/*}" } ] }, { - "shortName": "GetTransferRun", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.GetTransferRun", + "shortName": "DeleteRoute", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.DeleteRoute", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/transferConfigs/*/runs/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/transferConfigs/*/runs/*}" + "httpMethod": "DELETE", + "path": "/v1alpha1/{name=projects/*/locations/*/privateConnections/*/routes/*}" } ] }, { - "shortName": "ListDataSources", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.ListDataSources", + "shortName": "DeleteStream", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.DeleteStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/dataSources" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/dataSources" + "httpMethod": "DELETE", + "path": "/v1alpha1/{name=projects/*/locations/*/streams/*}" } ] }, { - "shortName": "ListTransferConfigs", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.ListTransferConfigs", + "shortName": "DiscoverConnectionProfile", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.DiscoverConnectionProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/transferConfigs" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/transferConfigs" + "httpMethod": "POST", + "path": "/v1alpha1/{parent=projects/*/locations/*}/connectionProfiles:discover" } ] }, { - "shortName": "ListTransferLogs", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.ListTransferLogs", + "shortName": "FetchErrors", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.FetchErrors", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/transferConfigs/*/runs/*}/transferLogs" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/transferConfigs/*/runs/*}/transferLogs" + "httpMethod": "POST", + "path": "/v1alpha1/{stream=projects/*/locations/*/streams/*}:fetchErrors" } ] }, { - "shortName": "ListTransferRuns", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.ListTransferRuns", + "shortName": "FetchStaticIps", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.FetchStaticIps", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/transferConfigs/*}/runs" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/transferConfigs/*}/runs" + "path": "/v1alpha1/{name=projects/*/locations/*}:fetchStaticIps" } ] }, { - "shortName": "ScheduleTransferRuns", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.ScheduleTransferRuns", + "shortName": "GetConnectionProfile", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.GetConnectionProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/transferConfigs/*}:scheduleRuns" - }, - { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/transferConfigs/*}:scheduleRuns" + "httpMethod": "GET", + "path": "/v1alpha1/{name=projects/*/locations/*/connectionProfiles/*}" } ] }, { - "shortName": "StartManualTransferRuns", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.StartManualTransferRuns", + "shortName": "GetPrivateConnection", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.GetPrivateConnection", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/transferConfigs/*}:startManualRuns" - }, - { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/transferConfigs/*}:startManualRuns" + "httpMethod": "GET", + "path": "/v1alpha1/{name=projects/*/locations/*/privateConnections/*}" } ] }, { - "shortName": "UpdateTransferConfig", - "fullName": "google.cloud.bigquery.datatransfer.v1.DataTransferService.UpdateTransferConfig", + "shortName": "GetRoute", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.GetRoute", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{transfer_config.name=projects/*/locations/*/transferConfigs/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v1/{transfer_config.name=projects/*/transferConfigs/*}" + "httpMethod": "GET", + "path": "/v1alpha1/{name=projects/*/locations/*/privateConnections/*/routes/*}" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.bigquery.migration.v2alpha", - "directory": "google/cloud/bigquery/migration/v2alpha", - "version": "v2alpha", - "majorVersion": "v2", - "hostName": "bigquerymigration.googleapis.com", - "title": "BigQuery Migration API", - "description": "The BigQuery migration service, exposing apis for migration jobs operations, and agent management.", - "importDirectories": [ - "google/api", - "google/cloud/bigquery/migration/v2alpha", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.bigquery.migration.v2alpha": 4 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 4 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/bigquery/migration/v2alpha;migration": 4 - } - } - }, - "services": [ - { - "shortName": "MigrationService", - "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService", - "methods": [ + }, { - "shortName": "CreateMigrationWorkflow", - "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.CreateMigrationWorkflow", + "shortName": "GetStream", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.GetStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2alpha/{parent=projects/*/locations/*}/workflows" + "httpMethod": "GET", + "path": "/v1alpha1/{name=projects/*/locations/*/streams/*}" } ] }, { - "shortName": "DeleteMigrationWorkflow", - "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.DeleteMigrationWorkflow", + "shortName": "ListConnectionProfiles", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.ListConnectionProfiles", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2alpha/{name=projects/*/locations/*/workflows/*}" + "httpMethod": "GET", + "path": "/v1alpha1/{parent=projects/*/locations/*}/connectionProfiles" } ] }, { - "shortName": "GetMigrationSubtask", - "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.GetMigrationSubtask", + "shortName": "ListPrivateConnections", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.ListPrivateConnections", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2alpha/{name=projects/*/locations/*/workflows/*/subtasks/*}" + "path": "/v1alpha1/{parent=projects/*/locations/*}/privateConnections" } ] }, { - "shortName": "GetMigrationWorkflow", - "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.GetMigrationWorkflow", + "shortName": "ListRoutes", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.ListRoutes", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2alpha/{name=projects/*/locations/*/workflows/*}" + "path": "/v1alpha1/{parent=projects/*/locations/*/privateConnections/*}/routes" } ] }, { - "shortName": "ListMigrationSubtasks", - "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.ListMigrationSubtasks", + "shortName": "ListStreams", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.ListStreams", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2alpha/{parent=projects/*/locations/*/workflows/*}/subtasks" + "path": "/v1alpha1/{parent=projects/*/locations/*}/streams" } ] }, { - "shortName": "ListMigrationWorkflows", - "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.ListMigrationWorkflows", + "shortName": "UpdateConnectionProfile", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.UpdateConnectionProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2alpha/{parent=projects/*/locations/*}/workflows" + "httpMethod": "PATCH", + "path": "/v1alpha1/{connection_profile.name=projects/*/locations/*/connectionProfiles/*}" } ] }, { - "shortName": "StartMigrationWorkflow", - "fullName": "google.cloud.bigquery.migration.v2alpha.MigrationService.StartMigrationWorkflow", + "shortName": "UpdateStream", + "fullName": "google.cloud.datastream.v1alpha1.Datastream.UpdateStream", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2alpha/{name=projects/*/locations/*/workflows/*}:start" + "httpMethod": "PATCH", + "path": "/v1alpha1/{stream.name=projects/*/locations/*/streams/*}" } ] } ] } - ] + ], + "configFile": "datastream_v1alpha1.yaml" }, { - "id": "google.cloud.bigquery.reservation.v1", - "directory": "google/cloud/bigquery/reservation/v1", + "id": "google.cloud.deploy.v1", + "directory": "google/cloud/deploy/v1", "version": "v1", "majorVersion": "v1", - "hostName": "bigqueryreservation.googleapis.com", - "title": "BigQuery Reservation API", - "description": "A service to modify your BigQuery flat-rate reservations.", + "hostName": "clouddeploy.googleapis.com", + "title": "Google Cloud Deploy API", + "description": "", "importDirectories": [ "google/api", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.bigquery.reservation.v1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, + "google/longrunning", + "google/protobuf", + "google/type" + ], + "options": { "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/bigquery/reservation/v1;reservation": 1 + "google.golang.org/genproto/googleapis/cloud/deploy/v1;deploy": 1 } }, - "csharp_namespace": { + "java_multiple_files": { "valueCounts": { - "Google.Cloud.BigQuery.Reservation.V1": 1 + "true": 1 } }, - "php_namespace": { + "java_package": { "valueCounts": { - "Google\\Cloud\\BigQuery\\Reservation\\V1": 1 + "com.google.cloud.deploy.v1": 1 } } }, "services": [ { - "shortName": "ReservationService", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService", + "shortName": "CloudDeploy", + "fullName": "google.cloud.deploy.v1.CloudDeploy", "methods": [ { - "shortName": "CreateAssignment", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.CreateAssignment", + "shortName": "ApproveRollout", + "fullName": "google.cloud.deploy.v1.CloudDeploy.ApproveRollout", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/reservations/*}/assignments" + "path": "/v1/{name=projects/*/locations/*/deliveryPipelines/*/releases/*/rollouts/*}:approve" } ] }, { - "shortName": "CreateCapacityCommitment", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.CreateCapacityCommitment", + "shortName": "CreateDeliveryPipeline", + "fullName": "google.cloud.deploy.v1.CloudDeploy.CreateDeliveryPipeline", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/capacityCommitments" + "path": "/v1/{parent=projects/*/locations/*}/deliveryPipelines" } ] }, { - "shortName": "CreateReservation", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.CreateReservation", + "shortName": "CreateRelease", + "fullName": "google.cloud.deploy.v1.CloudDeploy.CreateRelease", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/reservations" + "path": "/v1/{parent=projects/*/locations/*/deliveryPipelines/*}/releases" } ] }, { - "shortName": "DeleteAssignment", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.DeleteAssignment", + "shortName": "CreateRollout", + "fullName": "google.cloud.deploy.v1.CloudDeploy.CreateRollout", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/reservations/*/assignments/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/deliveryPipelines/*/releases/*}/rollouts" } ] }, { - "shortName": "DeleteCapacityCommitment", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.DeleteCapacityCommitment", + "shortName": "CreateTarget", + "fullName": "google.cloud.deploy.v1.CloudDeploy.CreateTarget", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/capacityCommitments/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/targets" } ] }, { - "shortName": "DeleteReservation", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.DeleteReservation", + "shortName": "DeleteDeliveryPipeline", + "fullName": "google.cloud.deploy.v1.CloudDeploy.DeleteDeliveryPipeline", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/reservations/*}" + "path": "/v1/{name=projects/*/locations/*/deliveryPipelines/*}" } ] }, { - "shortName": "GetBiReservation", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.GetBiReservation", + "shortName": "DeleteTarget", + "fullName": "google.cloud.deploy.v1.CloudDeploy.DeleteTarget", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/biReservation}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/targets/*}" } ] }, { - "shortName": "GetCapacityCommitment", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.GetCapacityCommitment", + "shortName": "GetConfig", + "fullName": "google.cloud.deploy.v1.CloudDeploy.GetConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/capacityCommitments/*}" + "path": "/v1/{name=projects/*/locations/*/config}" } ] }, { - "shortName": "GetReservation", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.GetReservation", + "shortName": "GetDeliveryPipeline", + "fullName": "google.cloud.deploy.v1.CloudDeploy.GetDeliveryPipeline", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/reservations/*}" + "path": "/v1/{name=projects/*/locations/*/deliveryPipelines/*}" } ] }, { - "shortName": "ListAssignments", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.ListAssignments", + "shortName": "GetRelease", + "fullName": "google.cloud.deploy.v1.CloudDeploy.GetRelease", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/reservations/*}/assignments" + "path": "/v1/{name=projects/*/locations/*/deliveryPipelines/*/releases/*}" } ] }, { - "shortName": "ListCapacityCommitments", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.ListCapacityCommitments", + "shortName": "GetRollout", + "fullName": "google.cloud.deploy.v1.CloudDeploy.GetRollout", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/capacityCommitments" + "path": "/v1/{name=projects/*/locations/*/deliveryPipelines/*/releases/*/rollouts/*}" } ] }, { - "shortName": "ListReservations", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.ListReservations", + "shortName": "GetTarget", + "fullName": "google.cloud.deploy.v1.CloudDeploy.GetTarget", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/reservations" - } - ] - }, - { - "shortName": "MergeCapacityCommitments", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.MergeCapacityCommitments", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/capacityCommitments:merge" + "path": "/v1/{name=projects/*/locations/*/targets/*}" } ] }, { - "shortName": "MoveAssignment", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.MoveAssignment", + "shortName": "ListDeliveryPipelines", + "fullName": "google.cloud.deploy.v1.CloudDeploy.ListDeliveryPipelines", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/reservations/*/assignments/*}:move" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/deliveryPipelines" } ] }, { - "shortName": "SearchAssignments", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.SearchAssignments", + "shortName": "ListReleases", + "fullName": "google.cloud.deploy.v1.CloudDeploy.ListReleases", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}:searchAssignments" + "path": "/v1/{parent=projects/*/locations/*/deliveryPipelines/*}/releases" } ] }, { - "shortName": "SplitCapacityCommitment", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.SplitCapacityCommitment", + "shortName": "ListRollouts", + "fullName": "google.cloud.deploy.v1.CloudDeploy.ListRollouts", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/capacityCommitments/*}:split" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/deliveryPipelines/*/releases/*}/rollouts" } ] }, { - "shortName": "UpdateBiReservation", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.UpdateBiReservation", + "shortName": "ListTargets", + "fullName": "google.cloud.deploy.v1.CloudDeploy.ListTargets", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{bi_reservation.name=projects/*/locations/*/biReservation}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/targets" } ] }, { - "shortName": "UpdateCapacityCommitment", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.UpdateCapacityCommitment", + "shortName": "UpdateDeliveryPipeline", + "fullName": "google.cloud.deploy.v1.CloudDeploy.UpdateDeliveryPipeline", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{capacity_commitment.name=projects/*/locations/*/capacityCommitments/*}" + "path": "/v1/{delivery_pipeline.name=projects/*/locations/*/deliveryPipelines/*}" } ] }, { - "shortName": "UpdateReservation", - "fullName": "google.cloud.bigquery.reservation.v1.ReservationService.UpdateReservation", + "shortName": "UpdateTarget", + "fullName": "google.cloud.deploy.v1.CloudDeploy.UpdateTarget", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{reservation.name=projects/*/locations/*/reservations/*}" + "path": "/v1/{target.name=projects/*/locations/*/targets/*}" } ] } ] } - ] + ], + "configFile": "clouddeploy_v1.yaml" }, { - "id": "google.cloud.bigquery.reservation.v1beta1", - "directory": "google/cloud/bigquery/reservation/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "bigqueryreservation.googleapis.com", - "title": "BigQuery Reservation API", - "description": "A service to modify your BigQuery flat-rate reservations.", + "id": "google.cloud.dialogflow.cx.v3", + "directory": "google/cloud/dialogflow/cx/v3", + "version": "v3", + "majorVersion": "v3", + "hostName": "dialogflow.googleapis.com", + "title": "Dialogflow API", + "description": "Builds conversational interfaces (for example, chatbots, and voice-powered apps and devices).", "importDirectories": [ "google/api", + "google/cloud/dialogflow/cx/v3", + "google/longrunning", "google/protobuf", - "google/rpc" + "google/rpc", + "google/type" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.bigquery.reservation.v1beta1": 1 + "true": 21 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 1 + "Google.Cloud.Dialogflow.Cx.V3": 21 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/bigquery/reservation/v1beta1;reservation": 1 + "google.golang.org/genproto/googleapis/cloud/dialogflow/cx/v3;cx": 21 } }, - "php_namespace": { + "java_multiple_files": { "valueCounts": { - "Google\\Cloud\\BigQuery\\Reservation\\V1beta1": 1 + "true": 21 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.dialogflow.cx.v3": 21 + } + }, + "objc_class_prefix": { + "valueCounts": { + "DF": 21 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Dialogflow::CX::V3": 21 } } }, "services": [ { - "shortName": "ReservationService", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService", + "shortName": "Agents", + "fullName": "google.cloud.dialogflow.cx.v3.Agents", "methods": [ { - "shortName": "CreateAssignment", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.CreateAssignment", + "shortName": "CreateAgent", + "fullName": "google.cloud.dialogflow.cx.v3.Agents.CreateAgent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/reservations/*}/assignments" + "path": "/v3/{parent=projects/*/locations/*}/agents" } ] }, { - "shortName": "CreateCapacityCommitment", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.CreateCapacityCommitment", + "shortName": "DeleteAgent", + "fullName": "google.cloud.dialogflow.cx.v3.Agents.DeleteAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/capacityCommitments" + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/agents/*}" } ] }, { - "shortName": "CreateReservation", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.CreateReservation", + "shortName": "ExportAgent", + "fullName": "google.cloud.dialogflow.cx.v3.Agents.ExportAgent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/reservations" + "path": "/v3/{name=projects/*/locations/*/agents/*}:export" } ] }, { - "shortName": "DeleteAssignment", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.DeleteAssignment", + "shortName": "GetAgent", + "fullName": "google.cloud.dialogflow.cx.v3.Agents.GetAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/reservations/*/assignments/*}" + "httpMethod": "GET", + "path": "/v3/{name=projects/*/locations/*/agents/*}" } ] }, { - "shortName": "DeleteCapacityCommitment", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.DeleteCapacityCommitment", + "shortName": "GetAgentValidationResult", + "fullName": "google.cloud.dialogflow.cx.v3.Agents.GetAgentValidationResult", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/capacityCommitments/*}" + "httpMethod": "GET", + "path": "/v3/{name=projects/*/locations/*/agents/*/validationResult}" } ] }, { - "shortName": "DeleteReservation", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.DeleteReservation", + "shortName": "ListAgents", + "fullName": "google.cloud.dialogflow.cx.v3.Agents.ListAgents", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/reservations/*}" + "httpMethod": "GET", + "path": "/v3/{parent=projects/*/locations/*}/agents" } ] }, { - "shortName": "GetBiReservation", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.GetBiReservation", + "shortName": "RestoreAgent", + "fullName": "google.cloud.dialogflow.cx.v3.Agents.RestoreAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/biReservation}" + "httpMethod": "POST", + "path": "/v3/{name=projects/*/locations/*/agents/*}:restore" } ] }, { - "shortName": "GetCapacityCommitment", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.GetCapacityCommitment", + "shortName": "UpdateAgent", + "fullName": "google.cloud.dialogflow.cx.v3.Agents.UpdateAgent", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v3/{agent.name=projects/*/locations/*/agents/*}" + } + ] + }, + { + "shortName": "ValidateAgent", + "fullName": "google.cloud.dialogflow.cx.v3.Agents.ValidateAgent", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{name=projects/*/locations/*/agents/*}:validate" + } + ] + } + ] + }, + { + "shortName": "Changelogs", + "fullName": "google.cloud.dialogflow.cx.v3.Changelogs", + "methods": [ + { + "shortName": "GetChangelog", + "fullName": "google.cloud.dialogflow.cx.v3.Changelogs.GetChangelog", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/capacityCommitments/*}" + "path": "/v3/{name=projects/*/locations/*/agents/*/changelogs/*}" } ] }, { - "shortName": "GetReservation", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.GetReservation", + "shortName": "ListChangelogs", + "fullName": "google.cloud.dialogflow.cx.v3.Changelogs.ListChangelogs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/reservations/*}" + "path": "/v3/{parent=projects/*/locations/*/agents/*}/changelogs" + } + ] + } + ] + }, + { + "shortName": "Deployments", + "fullName": "google.cloud.dialogflow.cx.v3.Deployments", + "methods": [ + { + "shortName": "GetDeployment", + "fullName": "google.cloud.dialogflow.cx.v3.Deployments.GetDeployment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/deployments/*}" } ] }, { - "shortName": "ListAssignments", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.ListAssignments", + "shortName": "ListDeployments", + "fullName": "google.cloud.dialogflow.cx.v3.Deployments.ListDeployments", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/reservations/*}/assignments" + "path": "/v3/{parent=projects/*/locations/*/agents/*/environments/*}/deployments" + } + ] + } + ] + }, + { + "shortName": "EntityTypes", + "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes", + "methods": [ + { + "shortName": "CreateEntityType", + "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes.CreateEntityType", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*/agents/*}/entityTypes" } ] }, { - "shortName": "ListCapacityCommitments", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.ListCapacityCommitments", + "shortName": "DeleteEntityType", + "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes.DeleteEntityType", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/agents/*/entityTypes/*}" + } + ] + }, + { + "shortName": "GetEntityType", + "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes.GetEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/capacityCommitments" + "path": "/v3/{name=projects/*/locations/*/agents/*/entityTypes/*}" } ] }, { - "shortName": "ListReservations", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.ListReservations", + "shortName": "ListEntityTypes", + "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes.ListEntityTypes", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/reservations" + "path": "/v3/{parent=projects/*/locations/*/agents/*}/entityTypes" } ] }, { - "shortName": "MergeCapacityCommitments", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.MergeCapacityCommitments", + "shortName": "UpdateEntityType", + "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes.UpdateEntityType", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v3/{entity_type.name=projects/*/locations/*/agents/*/entityTypes/*}" + } + ] + } + ] + }, + { + "shortName": "Environments", + "fullName": "google.cloud.dialogflow.cx.v3.Environments", + "methods": [ + { + "shortName": "CreateEnvironment", + "fullName": "google.cloud.dialogflow.cx.v3.Environments.CreateEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/capacityCommitments:merge" + "path": "/v3/{parent=projects/*/locations/*/agents/*}/environments" } ] }, { - "shortName": "MoveAssignment", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.MoveAssignment", + "shortName": "DeleteEnvironment", + "fullName": "google.cloud.dialogflow.cx.v3.Environments.DeleteEnvironment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*}" + } + ] + }, + { + "shortName": "DeployFlow", + "fullName": "google.cloud.dialogflow.cx.v3.Environments.DeployFlow", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/reservations/*/assignments/*}:move" + "path": "/v3/{environment=projects/*/locations/*/agents/*/environments/*}:deployFlow" } ] }, { - "shortName": "SearchAssignments", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.SearchAssignments", + "shortName": "GetEnvironment", + "fullName": "google.cloud.dialogflow.cx.v3.Environments.GetEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}:searchAssignments" + "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*}" } ] }, { - "shortName": "SplitCapacityCommitment", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.SplitCapacityCommitment", + "shortName": "ListContinuousTestResults", + "fullName": "google.cloud.dialogflow.cx.v3.Environments.ListContinuousTestResults", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/capacityCommitments/*}:split" + "httpMethod": "GET", + "path": "/v3/{parent=projects/*/locations/*/agents/*/environments/*}/continuousTestResults" } ] }, { - "shortName": "UpdateBiReservation", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.UpdateBiReservation", + "shortName": "ListEnvironments", + "fullName": "google.cloud.dialogflow.cx.v3.Environments.ListEnvironments", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{reservation.name=projects/*/locations/*/biReservation}" + "httpMethod": "GET", + "path": "/v3/{parent=projects/*/locations/*/agents/*}/environments" } ] }, { - "shortName": "UpdateCapacityCommitment", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.UpdateCapacityCommitment", + "shortName": "LookupEnvironmentHistory", + "fullName": "google.cloud.dialogflow.cx.v3.Environments.LookupEnvironmentHistory", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{capacity_commitment.name=projects/*/locations/*/capacityCommitments/*}" + "httpMethod": "GET", + "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*}:lookupEnvironmentHistory" } ] }, { - "shortName": "UpdateReservation", - "fullName": "google.cloud.bigquery.reservation.v1beta1.ReservationService.UpdateReservation", + "shortName": "RunContinuousTest", + "fullName": "google.cloud.dialogflow.cx.v3.Environments.RunContinuousTest", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{environment=projects/*/locations/*/agents/*/environments/*}:runContinuousTest" + } + ] + }, + { + "shortName": "UpdateEnvironment", + "fullName": "google.cloud.dialogflow.cx.v3.Environments.UpdateEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{reservation.name=projects/*/locations/*/reservations/*}" + "path": "/v3/{environment.name=projects/*/locations/*/agents/*/environments/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.bigquery.storage.v1", - "directory": "google/cloud/bigquery/storage/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "bigquerystorage.googleapis.com", - "title": "BigQuery Storage API", - "description": "", - "importDirectories": [ - "google/api", - "google/cloud/bigquery/storage/v1", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.bigquery.storage.v1": 4 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 4 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/bigquery/storage/v1;storage": 4 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.BigQuery.Storage.V1": 4 - } }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\BigQuery\\Storage\\V1": 4 - } - } - }, - "services": [ { - "shortName": "BigQueryRead", - "fullName": "google.cloud.bigquery.storage.v1.BigQueryRead", + "shortName": "Experiments", + "fullName": "google.cloud.dialogflow.cx.v3.Experiments", "methods": [ { - "shortName": "CreateReadSession", - "fullName": "google.cloud.bigquery.storage.v1.BigQueryRead.CreateReadSession", + "shortName": "CreateExperiment", + "fullName": "google.cloud.dialogflow.cx.v3.Experiments.CreateExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{read_session.table=projects/*/datasets/*/tables/*}" + "path": "/v3/{parent=projects/*/locations/*/agents/*/environments/*}/experiments" } ] }, { - "shortName": "ReadRows", - "fullName": "google.cloud.bigquery.storage.v1.BigQueryRead.ReadRows", - "mode": "SERVER_STREAMING", + "shortName": "DeleteExperiment", + "fullName": "google.cloud.dialogflow.cx.v3.Experiments.DeleteExperiment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}" + } + ] + }, + { + "shortName": "GetExperiment", + "fullName": "google.cloud.dialogflow.cx.v3.Experiments.GetExperiment", + "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{read_stream=projects/*/locations/*/sessions/*/streams/*}" + "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}" } ] }, { - "shortName": "SplitReadStream", - "fullName": "google.cloud.bigquery.storage.v1.BigQueryRead.SplitReadStream", + "shortName": "ListExperiments", + "fullName": "google.cloud.dialogflow.cx.v3.Experiments.ListExperiments", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/sessions/*/streams/*}" + "path": "/v3/{parent=projects/*/locations/*/agents/*/environments/*}/experiments" + } + ] + }, + { + "shortName": "StartExperiment", + "fullName": "google.cloud.dialogflow.cx.v3.Experiments.StartExperiment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}:start" + } + ] + }, + { + "shortName": "StopExperiment", + "fullName": "google.cloud.dialogflow.cx.v3.Experiments.StopExperiment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}:stop" + } + ] + }, + { + "shortName": "UpdateExperiment", + "fullName": "google.cloud.dialogflow.cx.v3.Experiments.UpdateExperiment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v3/{experiment.name=projects/*/locations/*/agents/*/environments/*/experiments/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.bigquery.storage.v1beta1", - "directory": "google/cloud/bigquery/storage/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "bigquerystorage.googleapis.com", - "title": "BigQuery Storage API", - "description": "", - "importDirectories": [ - "google/api", - "google/cloud/bigquery/storage/v1beta1", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.bigquery.storage.v1beta1": 5 - } }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/bigquery/storage/v1beta1;storage": 5 - } - } - }, - "services": [ { - "shortName": "BigQueryStorage", - "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage", + "shortName": "Flows", + "fullName": "google.cloud.dialogflow.cx.v3.Flows", "methods": [ { - "shortName": "BatchCreateReadSessionStreams", - "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage.BatchCreateReadSessionStreams", + "shortName": "CreateFlow", + "fullName": "google.cloud.dialogflow.cx.v3.Flows.CreateFlow", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{session.name=projects/*/sessions/*}" + "path": "/v3/{parent=projects/*/locations/*/agents/*}/flows" } ] }, { - "shortName": "CreateReadSession", - "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage.CreateReadSession", + "shortName": "DeleteFlow", + "fullName": "google.cloud.dialogflow.cx.v3.Flows.DeleteFlow", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{table_reference.project_id=projects/*}" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{table_reference.dataset_id=projects/*/datasets/*}" + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*}" } ] }, { - "shortName": "FinalizeStream", - "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage.FinalizeStream", + "shortName": "ExportFlow", + "fullName": "google.cloud.dialogflow.cx.v3.Flows.ExportFlow", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{stream.name=projects/*/streams/*}" + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*}:export" } ] }, { - "shortName": "ReadRows", - "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage.ReadRows", - "mode": "SERVER_STREAMING", + "shortName": "GetFlow", + "fullName": "google.cloud.dialogflow.cx.v3.Flows.GetFlow", + "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{read_position.stream.name=projects/*/streams/*}" + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*}" } ] }, { - "shortName": "SplitReadStream", - "fullName": "google.cloud.bigquery.storage.v1beta1.BigQueryStorage.SplitReadStream", + "shortName": "GetFlowValidationResult", + "fullName": "google.cloud.dialogflow.cx.v3.Flows.GetFlowValidationResult", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{original_stream.name=projects/*/streams/*}" + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/validationResult}" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.bigquery.storage.v1beta2", - "directory": "google/cloud/bigquery/storage/v1beta2", - "version": "v1beta2", - "majorVersion": "v1", - "hostName": "bigquerystorage.googleapis.com", - "title": "BigQuery Storage API", - "description": "", - "importDirectories": [ - "google/api", - "google/cloud/bigquery/storage/v1beta2", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.bigquery.storage.v1beta2": 6 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 6 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/bigquery/storage/v1beta2;storage": 6 - } - } - }, - "services": [ - { - "shortName": "BigQueryRead", - "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryRead", - "methods": [ + }, { - "shortName": "CreateReadSession", - "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryRead.CreateReadSession", + "shortName": "ImportFlow", + "fullName": "google.cloud.dialogflow.cx.v3.Flows.ImportFlow", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/{read_session.table=projects/*/datasets/*/tables/*}" + "path": "/v3/{parent=projects/*/locations/*/agents/*}/flows:import" } ] }, { - "shortName": "ReadRows", - "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryRead.ReadRows", - "mode": "SERVER_STREAMING", + "shortName": "ListFlows", + "fullName": "google.cloud.dialogflow.cx.v3.Flows.ListFlows", + "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta2/{read_stream=projects/*/locations/*/sessions/*/streams/*}" + "path": "/v3/{parent=projects/*/locations/*/agents/*}/flows" } ] }, { - "shortName": "SplitReadStream", - "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryRead.SplitReadStream", + "shortName": "TrainFlow", + "fullName": "google.cloud.dialogflow.cx.v3.Flows.TrainFlow", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta2/{name=projects/*/locations/*/sessions/*/streams/*}" + "httpMethod": "POST", + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*}:train" } ] - } - ] - }, - { - "shortName": "BigQueryWrite", - "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite", - "methods": [ + }, { - "shortName": "AppendRows", - "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.AppendRows", - "mode": "BIDIRECTIONAL_STREAMING", + "shortName": "UpdateFlow", + "fullName": "google.cloud.dialogflow.cx.v3.Flows.UpdateFlow", + "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/{write_stream=projects/*/datasets/*/tables/*/streams/*}" + "httpMethod": "PATCH", + "path": "/v3/{flow.name=projects/*/locations/*/agents/*/flows/*}" } ] }, { - "shortName": "BatchCommitWriteStreams", - "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.BatchCommitWriteStreams", + "shortName": "ValidateFlow", + "fullName": "google.cloud.dialogflow.cx.v3.Flows.ValidateFlow", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta2/{parent=projects/*/datasets/*/tables/*}" + "httpMethod": "POST", + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*}:validate" } ] - }, + } + ] + }, + { + "shortName": "Intents", + "fullName": "google.cloud.dialogflow.cx.v3.Intents", + "methods": [ { - "shortName": "CreateWriteStream", - "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.CreateWriteStream", + "shortName": "CreateIntent", + "fullName": "google.cloud.dialogflow.cx.v3.Intents.CreateIntent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*/datasets/*/tables/*}" + "path": "/v3/{parent=projects/*/locations/*/agents/*}/intents" } ] }, { - "shortName": "FinalizeWriteStream", - "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.FinalizeWriteStream", + "shortName": "DeleteIntent", + "fullName": "google.cloud.dialogflow.cx.v3.Intents.DeleteIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/{name=projects/*/datasets/*/tables/*/streams/*}" + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/agents/*/intents/*}" } ] }, { - "shortName": "FlushRows", - "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.FlushRows", + "shortName": "GetIntent", + "fullName": "google.cloud.dialogflow.cx.v3.Intents.GetIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/{write_stream=projects/*/datasets/*/tables/*/streams/*}" + "httpMethod": "GET", + "path": "/v3/{name=projects/*/locations/*/agents/*/intents/*}" } ] }, { - "shortName": "GetWriteStream", - "fullName": "google.cloud.bigquery.storage.v1beta2.BigQueryWrite.GetWriteStream", + "shortName": "ListIntents", + "fullName": "google.cloud.dialogflow.cx.v3.Intents.ListIntents", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/{name=projects/*/datasets/*/tables/*/streams/*}" + "httpMethod": "GET", + "path": "/v3/{parent=projects/*/locations/*/agents/*}/intents" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.bigquery.v2", - "directory": "google/cloud/bigquery/v2", - "version": "v2", - "majorVersion": "v2", - "hostName": "bigquery.googleapis.com", - "title": "BigQuery API", - "description": "A data platform for customers to create, manage, share and query data.", - "importDirectories": [ - "google/api", - "google/cloud/bigquery/v2", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.bigquery.v2": 5 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/bigquery/v2;bigquery": 5 - } - } - }, - "services": [ - { - "shortName": "ModelService", - "fullName": "google.cloud.bigquery.v2.ModelService", - "methods": [ - { - "shortName": "DeleteModel", - "fullName": "google.cloud.bigquery.v2.ModelService.DeleteModel", - "mode": "UNARY" - }, - { - "shortName": "GetModel", - "fullName": "google.cloud.bigquery.v2.ModelService.GetModel", - "mode": "UNARY" - }, - { - "shortName": "ListModels", - "fullName": "google.cloud.bigquery.v2.ModelService.ListModels", - "mode": "UNARY" }, { - "shortName": "PatchModel", - "fullName": "google.cloud.bigquery.v2.ModelService.PatchModel", - "mode": "UNARY" + "shortName": "UpdateIntent", + "fullName": "google.cloud.dialogflow.cx.v3.Intents.UpdateIntent", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v3/{intent.name=projects/*/locations/*/agents/*/intents/*}" + } + ] } ] - } - ] - }, - { - "id": "google.cloud.billing.budgets.v1", - "directory": "google/cloud/billing/budgets/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "billingbudgets.googleapis.com", - "title": "Cloud Billing Budget API", - "description": "The Cloud Billing Budget API stores Cloud Billing budgets, which define a budget plan and the rules to execute as spend is tracked against that plan.", - "importDirectories": [ - "google/api", - "google/cloud/billing/budgets/v1", - "google/protobuf", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.billing.budgets.v1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/billing/budgets/v1;budgets": 2 - } - } - }, - "services": [ { - "shortName": "BudgetService", - "fullName": "google.cloud.billing.budgets.v1.BudgetService", + "shortName": "Pages", + "fullName": "google.cloud.dialogflow.cx.v3.Pages", "methods": [ { - "shortName": "CreateBudget", - "fullName": "google.cloud.billing.budgets.v1.BudgetService.CreateBudget", + "shortName": "CreatePage", + "fullName": "google.cloud.dialogflow.cx.v3.Pages.CreatePage", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=billingAccounts/*}/budgets" + "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/pages" } ] }, { - "shortName": "DeleteBudget", - "fullName": "google.cloud.billing.budgets.v1.BudgetService.DeleteBudget", + "shortName": "DeletePage", + "fullName": "google.cloud.dialogflow.cx.v3.Pages.DeletePage", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=billingAccounts/*/budgets/*}" + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/pages/*}" } ] }, { - "shortName": "GetBudget", - "fullName": "google.cloud.billing.budgets.v1.BudgetService.GetBudget", + "shortName": "GetPage", + "fullName": "google.cloud.dialogflow.cx.v3.Pages.GetPage", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=billingAccounts/*/budgets/*}" + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/pages/*}" } ] }, { - "shortName": "ListBudgets", - "fullName": "google.cloud.billing.budgets.v1.BudgetService.ListBudgets", + "shortName": "ListPages", + "fullName": "google.cloud.dialogflow.cx.v3.Pages.ListPages", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=billingAccounts/*}/budgets" + "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/pages" } ] }, { - "shortName": "UpdateBudget", - "fullName": "google.cloud.billing.budgets.v1.BudgetService.UpdateBudget", + "shortName": "UpdatePage", + "fullName": "google.cloud.dialogflow.cx.v3.Pages.UpdatePage", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{budget.name=billingAccounts/*/budgets/*}" + "path": "/v3/{page.name=projects/*/locations/*/agents/*/flows/*/pages/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.billing.budgets.v1beta1", - "directory": "google/cloud/billing/budgets/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "billingbudgets.googleapis.com", - "title": "Cloud Billing Budget API", - "description": "The Cloud Billing Budget API stores Cloud Billing budgets, which define a budget plan and the rules to execute as spend is tracked against that plan.", - "importDirectories": [ - "google/api", - "google/cloud/billing/budgets/v1beta1", - "google/protobuf", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.billing.budgets.v1beta1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/billing/budgets/v1beta1;budgets": 2 - } - } - }, - "services": [ { - "shortName": "BudgetService", - "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService", + "shortName": "SecuritySettingsService", + "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService", "methods": [ { - "shortName": "CreateBudget", - "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService.CreateBudget", + "shortName": "CreateSecuritySettings", + "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService.CreateSecuritySettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=billingAccounts/*}/budgets" + "path": "/v3/{parent=projects/*/locations/*}/securitySettings" } ] }, { - "shortName": "DeleteBudget", - "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService.DeleteBudget", + "shortName": "DeleteSecuritySettings", + "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService.DeleteSecuritySettings", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=billingAccounts/*/budgets/*}" + "path": "/v3/{name=projects/*/locations/*/securitySettings/*}" } ] }, { - "shortName": "GetBudget", - "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService.GetBudget", + "shortName": "GetSecuritySettings", + "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService.GetSecuritySettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=billingAccounts/*/budgets/*}" + "path": "/v3/{name=projects/*/locations/*/securitySettings/*}" } ] }, { - "shortName": "ListBudgets", - "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService.ListBudgets", + "shortName": "ListSecuritySettings", + "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService.ListSecuritySettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=billingAccounts/*}/budgets" + "path": "/v3/{parent=projects/*/locations/*}/securitySettings" } ] }, { - "shortName": "UpdateBudget", - "fullName": "google.cloud.billing.budgets.v1beta1.BudgetService.UpdateBudget", + "shortName": "UpdateSecuritySettings", + "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService.UpdateSecuritySettings", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{budget.name=billingAccounts/*/budgets/*}" + "path": "/v3/{security_settings.name=projects/*/locations/*/securitySettings/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.billing.v1", - "directory": "google/cloud/billing/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "cloudbilling.googleapis.com", - "title": "Cloud Billing API", - "description": "Allows developers to manage billing for their Google Cloud Platform projects programmatically.", - "importDirectories": [ - "google/api", - "google/iam/v1", - "google/protobuf", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.billing.v1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/billing/v1;billing": 2 - } - }, - "objc_class_prefix": { - "valueCounts": { - "CLDCTLG": 1, - "": 1 - } }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Billing.V1": 1, - "": 1 - } - } - }, - "services": [ { - "shortName": "CloudBilling", - "fullName": "google.cloud.billing.v1.CloudBilling", + "shortName": "SessionEntityTypes", + "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes", "methods": [ { - "shortName": "CreateBillingAccount", - "fullName": "google.cloud.billing.v1.CloudBilling.CreateBillingAccount", + "shortName": "CreateSessionEntityType", + "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes.CreateSessionEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/billingAccounts" + "path": "/v3/{parent=projects/*/locations/*/agents/*/sessions/*}/entityTypes" + }, + { + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*/agents/*/environments/*/sessions/*}/entityTypes" } ] }, { - "shortName": "GetBillingAccount", - "fullName": "google.cloud.billing.v1.CloudBilling.GetBillingAccount", + "shortName": "DeleteSessionEntityType", + "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes.DeleteSessionEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=billingAccounts/*}" + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.billing.v1.CloudBilling.GetIamPolicy", + "shortName": "GetSessionEntityType", + "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes.GetSessionEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{resource=billingAccounts/*}:getIamPolicy" + "path": "/v3/{name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "GET", + "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" } ] }, { - "shortName": "GetProjectBillingInfo", - "fullName": "google.cloud.billing.v1.CloudBilling.GetProjectBillingInfo", + "shortName": "ListSessionEntityTypes", + "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes.ListSessionEntityTypes", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*}/billingInfo" + "path": "/v3/{parent=projects/*/locations/*/agents/*/sessions/*}/entityTypes" + }, + { + "httpMethod": "GET", + "path": "/v3/{parent=projects/*/locations/*/agents/*/environments/*/sessions/*}/entityTypes" } ] }, { - "shortName": "ListBillingAccounts", - "fullName": "google.cloud.billing.v1.CloudBilling.ListBillingAccounts", + "shortName": "UpdateSessionEntityType", + "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes.UpdateSessionEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/billingAccounts" + "httpMethod": "PATCH", + "path": "/v3/{session_entity_type.name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v3/{session_entity_type.name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" + } + ] + } + ] + }, + { + "shortName": "Sessions", + "fullName": "google.cloud.dialogflow.cx.v3.Sessions", + "methods": [ + { + "shortName": "DetectIntent", + "fullName": "google.cloud.dialogflow.cx.v3.Sessions.DetectIntent", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{session=projects/*/locations/*/agents/*/sessions/*}:detectIntent" + }, + { + "httpMethod": "POST", + "path": "/v3/{session=projects/*/locations/*/agents/*/environments/*/sessions/*}:detectIntent" } ] }, { - "shortName": "ListProjectBillingInfo", - "fullName": "google.cloud.billing.v1.CloudBilling.ListProjectBillingInfo", + "shortName": "FulfillIntent", + "fullName": "google.cloud.dialogflow.cx.v3.Sessions.FulfillIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=billingAccounts/*}/projects" + "httpMethod": "POST", + "path": "/v3/{match_intent_request.session=projects/*/locations/*/agents/*/sessions/*}:fulfillIntent" + }, + { + "httpMethod": "POST", + "path": "/v3/{match_intent_request.session=projects/*/locations/*/agents/*/environments/*/sessions/*}:fulfillIntent" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.billing.v1.CloudBilling.SetIamPolicy", + "shortName": "MatchIntent", + "fullName": "google.cloud.dialogflow.cx.v3.Sessions.MatchIntent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=billingAccounts/*}:setIamPolicy" + "path": "/v3/{session=projects/*/locations/*/agents/*/sessions/*}:matchIntent" + }, + { + "httpMethod": "POST", + "path": "/v3/{session=projects/*/locations/*/agents/*/environments/*/sessions/*}:matchIntent" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.billing.v1.CloudBilling.TestIamPermissions", + "shortName": "StreamingDetectIntent", + "fullName": "google.cloud.dialogflow.cx.v3.Sessions.StreamingDetectIntent", + "mode": "BIDIRECTIONAL_STREAMING" + } + ] + }, + { + "shortName": "TestCases", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases", + "methods": [ + { + "shortName": "BatchDeleteTestCases", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.BatchDeleteTestCases", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=billingAccounts/*}:testIamPermissions" + "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases:batchDelete" } ] }, { - "shortName": "UpdateBillingAccount", - "fullName": "google.cloud.billing.v1.CloudBilling.UpdateBillingAccount", + "shortName": "BatchRunTestCases", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.BatchRunTestCases", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{name=billingAccounts/*}" + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases:batchRun" } ] }, { - "shortName": "UpdateProjectBillingInfo", - "fullName": "google.cloud.billing.v1.CloudBilling.UpdateProjectBillingInfo", + "shortName": "CalculateCoverage", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.CalculateCoverage", "mode": "UNARY", "bindings": [ { - "httpMethod": "PUT", - "path": "/v1/{name=projects/*}/billingInfo" + "httpMethod": "GET", + "path": "/v3/{agent=projects/*/locations/*/agents/*}/testCases:calculateCoverage" } ] - } - ] - }, - { - "shortName": "CloudCatalog", - "fullName": "google.cloud.billing.v1.CloudCatalog", - "methods": [ + }, { - "shortName": "ListServices", - "fullName": "google.cloud.billing.v1.CloudCatalog.ListServices", + "shortName": "CreateTestCase", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.CreateTestCase", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/services" + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases" } ] }, { - "shortName": "ListSkus", - "fullName": "google.cloud.billing.v1.CloudCatalog.ListSkus", + "shortName": "ExportTestCases", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.ExportTestCases", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=services/*}/skus" + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases:export" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.binaryauthorization.v1beta1", - "directory": "google/cloud/binaryauthorization/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "binaryauthorization.googleapis.com", - "title": "Binary Authorization API", - "description": "The management interface for Binary Authorization, a system providing policy control for images deployed to Kubernetes Engine clusters.", - "importDirectories": [ - "google/api", - "google/cloud/binaryauthorization/v1beta1", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.binaryauthorization.v1beta1": 3 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 3 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/binaryauthorization/v1beta1;binaryauthorization": 3 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 3 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.BinaryAuthorization.V1Beta1": 3 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\BinaryAuthorization\\V1beta1": 3 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::BinaryAuthorization::V1beta1": 3 - } - } - }, - "services": [ - { - "shortName": "BinauthzManagementServiceV1Beta1", - "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1", - "methods": [ + }, { - "shortName": "CreateAttestor", - "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.CreateAttestor", + "shortName": "GetTestCase", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.GetTestCase", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*}/attestors" + "httpMethod": "GET", + "path": "/v3/{name=projects/*/locations/*/agents/*/testCases/*}" } ] }, { - "shortName": "DeleteAttestor", - "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.DeleteAttestor", + "shortName": "GetTestCaseResult", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.GetTestCaseResult", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/attestors/*}" + "httpMethod": "GET", + "path": "/v3/{name=projects/*/locations/*/agents/*/testCases/*/results/*}" } ] }, { - "shortName": "GetAttestor", - "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetAttestor", + "shortName": "ImportTestCases", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.ImportTestCases", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/attestors/*}" + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases:import" } ] }, { - "shortName": "GetPolicy", - "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.GetPolicy", + "shortName": "ListTestCaseResults", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.ListTestCaseResults", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/policy}" + "path": "/v3/{parent=projects/*/locations/*/agents/*/testCases/*}/results" } ] }, { - "shortName": "ListAttestors", - "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.ListAttestors", + "shortName": "ListTestCases", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.ListTestCases", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*}/attestors" + "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases" } ] }, { - "shortName": "UpdateAttestor", - "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdateAttestor", + "shortName": "RunTestCase", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.RunTestCase", "mode": "UNARY", "bindings": [ { - "httpMethod": "PUT", - "path": "/v1beta1/{attestor.name=projects/*/attestors/*}" + "httpMethod": "POST", + "path": "/v3/{name=projects/*/locations/*/agents/*/testCases/*}:run" } ] }, { - "shortName": "UpdatePolicy", - "fullName": "google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.UpdatePolicy", + "shortName": "UpdateTestCase", + "fullName": "google.cloud.dialogflow.cx.v3.TestCases.UpdateTestCase", "mode": "UNARY", "bindings": [ { - "httpMethod": "PUT", - "path": "/v1beta1/{policy.name=projects/*/policy}" + "httpMethod": "PATCH", + "path": "/v3/{test_case.name=projects/*/locations/*/agents/*/testCases/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.channel.v1", - "directory": "google/cloud/channel/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "cloudchannel.googleapis.com", - "title": "Cloud Channel API", - "description": "", - "importDirectories": [ - "google/api", - "google/cloud/channel/v1", - "google/longrunning", - "google/protobuf", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.channel.v1": 9 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 9 - } }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/channel/v1;channel": 9 - } - } - }, - "services": [ { - "shortName": "CloudChannelService", - "fullName": "google.cloud.channel.v1.CloudChannelService", + "shortName": "TransitionRouteGroups", + "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups", "methods": [ { - "shortName": "ActivateEntitlement", - "fullName": "google.cloud.channel.v1.CloudChannelService.ActivateEntitlement", + "shortName": "CreateTransitionRouteGroup", + "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups.CreateTransitionRouteGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:activate" + "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/transitionRouteGroups" } ] }, { - "shortName": "CancelEntitlement", - "fullName": "google.cloud.channel.v1.CloudChannelService.CancelEntitlement", + "shortName": "DeleteTransitionRouteGroup", + "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups.DeleteTransitionRouteGroup", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:cancel" + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" } ] }, { - "shortName": "ChangeOffer", - "fullName": "google.cloud.channel.v1.CloudChannelService.ChangeOffer", + "shortName": "GetTransitionRouteGroup", + "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups.GetTransitionRouteGroup", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:changeOffer" + "httpMethod": "GET", + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" } ] }, { - "shortName": "ChangeParameters", - "fullName": "google.cloud.channel.v1.CloudChannelService.ChangeParameters", + "shortName": "ListTransitionRouteGroups", + "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups.ListTransitionRouteGroups", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:changeParameters" + "httpMethod": "GET", + "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/transitionRouteGroups" } ] }, { - "shortName": "ChangeRenewalSettings", - "fullName": "google.cloud.channel.v1.CloudChannelService.ChangeRenewalSettings", + "shortName": "UpdateTransitionRouteGroup", + "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups.UpdateTransitionRouteGroup", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:changeRenewalSettings" + "httpMethod": "PATCH", + "path": "/v3/{transition_route_group.name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" } ] - }, + } + ] + }, + { + "shortName": "Versions", + "fullName": "google.cloud.dialogflow.cx.v3.Versions", + "methods": [ { - "shortName": "CheckCloudIdentityAccountsExist", - "fullName": "google.cloud.channel.v1.CloudChannelService.CheckCloudIdentityAccountsExist", + "shortName": "CompareVersions", + "fullName": "google.cloud.dialogflow.cx.v3.Versions.CompareVersions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=accounts/*}:checkCloudIdentityAccountsExist" + "path": "/v3/{base_version=projects/*/locations/*/agents/*/flows/*/versions/*}:compareVersions" } ] }, { - "shortName": "CreateChannelPartnerLink", - "fullName": "google.cloud.channel.v1.CloudChannelService.CreateChannelPartnerLink", + "shortName": "CreateVersion", + "fullName": "google.cloud.dialogflow.cx.v3.Versions.CreateVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=accounts/*}/channelPartnerLinks" + "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/versions" } ] }, { - "shortName": "CreateCustomer", - "fullName": "google.cloud.channel.v1.CloudChannelService.CreateCustomer", + "shortName": "DeleteVersion", + "fullName": "google.cloud.dialogflow.cx.v3.Versions.DeleteVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=accounts/*}/customers" + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/versions/*}" } ] }, { - "shortName": "CreateEntitlement", - "fullName": "google.cloud.channel.v1.CloudChannelService.CreateEntitlement", + "shortName": "GetVersion", + "fullName": "google.cloud.dialogflow.cx.v3.Versions.GetVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=accounts/*/customers/*}/entitlements" + "httpMethod": "GET", + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/versions/*}" } ] }, { - "shortName": "DeleteCustomer", - "fullName": "google.cloud.channel.v1.CloudChannelService.DeleteCustomer", + "shortName": "ListVersions", + "fullName": "google.cloud.dialogflow.cx.v3.Versions.ListVersions", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=accounts/*/customers/*}" + "httpMethod": "GET", + "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/versions" } ] }, { - "shortName": "GetChannelPartnerLink", - "fullName": "google.cloud.channel.v1.CloudChannelService.GetChannelPartnerLink", + "shortName": "LoadVersion", + "fullName": "google.cloud.dialogflow.cx.v3.Versions.LoadVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=accounts/*/channelPartnerLinks/*}" + "httpMethod": "POST", + "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/versions/*}:load" } ] }, { - "shortName": "GetCustomer", - "fullName": "google.cloud.channel.v1.CloudChannelService.GetCustomer", + "shortName": "UpdateVersion", + "fullName": "google.cloud.dialogflow.cx.v3.Versions.UpdateVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=accounts/*/customers/*}" + "httpMethod": "PATCH", + "path": "/v3/{version.name=projects/*/locations/*/agents/*/flows/*/versions/*}" } ] - }, + } + ] + }, + { + "shortName": "Webhooks", + "fullName": "google.cloud.dialogflow.cx.v3.Webhooks", + "methods": [ { - "shortName": "GetEntitlement", - "fullName": "google.cloud.channel.v1.CloudChannelService.GetEntitlement", + "shortName": "CreateWebhook", + "fullName": "google.cloud.dialogflow.cx.v3.Webhooks.CreateWebhook", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=accounts/*/customers/*/entitlements/*}" + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*/agents/*}/webhooks" } ] }, { - "shortName": "ListChannelPartnerLinks", - "fullName": "google.cloud.channel.v1.CloudChannelService.ListChannelPartnerLinks", + "shortName": "DeleteWebhook", + "fullName": "google.cloud.dialogflow.cx.v3.Webhooks.DeleteWebhook", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=accounts/*}/channelPartnerLinks" + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/agents/*/webhooks/*}" } ] }, { - "shortName": "ListCustomers", - "fullName": "google.cloud.channel.v1.CloudChannelService.ListCustomers", + "shortName": "GetWebhook", + "fullName": "google.cloud.dialogflow.cx.v3.Webhooks.GetWebhook", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=accounts/*}/customers" + "path": "/v3/{name=projects/*/locations/*/agents/*/webhooks/*}" } ] }, { - "shortName": "ListEntitlements", - "fullName": "google.cloud.channel.v1.CloudChannelService.ListEntitlements", + "shortName": "ListWebhooks", + "fullName": "google.cloud.dialogflow.cx.v3.Webhooks.ListWebhooks", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=accounts/*/customers/*}/entitlements" + "path": "/v3/{parent=projects/*/locations/*/agents/*}/webhooks" } ] }, { - "shortName": "ListOffers", - "fullName": "google.cloud.channel.v1.CloudChannelService.ListOffers", + "shortName": "UpdateWebhook", + "fullName": "google.cloud.dialogflow.cx.v3.Webhooks.UpdateWebhook", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=accounts/*}/offers" + "httpMethod": "PATCH", + "path": "/v3/{webhook.name=projects/*/locations/*/agents/*/webhooks/*}" + } + ] + } + ] + } + ], + "configFile": "dialogflow_v3.yaml" + }, + { + "id": "google.cloud.dialogflow.cx.v3beta1", + "directory": "google/cloud/dialogflow/cx/v3beta1", + "version": "v3beta1", + "majorVersion": "v3", + "hostName": "dialogflow.googleapis.com", + "title": "Dialogflow API", + "description": "Builds conversational interfaces (for example, chatbots, and voice-powered apps and devices).", + "importDirectories": [ + "google/api", + "google/cloud/dialogflow/cx/v3beta1", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/type" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 21 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Dialogflow.Cx.V3Beta1": 21 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/dialogflow/cx/v3beta1;cx": 21 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 21 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.dialogflow.cx.v3beta1": 21 + } + }, + "objc_class_prefix": { + "valueCounts": { + "DF": 21 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Dialogflow::CX::V3beta1": 21 + } + } + }, + "services": [ + { + "shortName": "Agents", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents", + "methods": [ + { + "shortName": "CreateAgent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.CreateAgent", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*}/agents" } ] }, { - "shortName": "ListProducts", - "fullName": "google.cloud.channel.v1.CloudChannelService.ListProducts", + "shortName": "DeleteAgent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.DeleteAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/products" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*}" } ] }, { - "shortName": "ListPurchasableOffers", - "fullName": "google.cloud.channel.v1.CloudChannelService.ListPurchasableOffers", + "shortName": "ExportAgent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.ExportAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{customer=accounts/*/customers/*}:listPurchasableOffers" + "httpMethod": "POST", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*}:export" } ] }, { - "shortName": "ListPurchasableSkus", - "fullName": "google.cloud.channel.v1.CloudChannelService.ListPurchasableSkus", + "shortName": "GetAgent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.GetAgent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{customer=accounts/*/customers/*}:listPurchasableSkus" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*}" } ] }, { - "shortName": "ListSkus", - "fullName": "google.cloud.channel.v1.CloudChannelService.ListSkus", + "shortName": "GetAgentValidationResult", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.GetAgentValidationResult", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=products/*}/skus" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/validationResult}" } ] }, { - "shortName": "ListSubscribers", - "fullName": "google.cloud.channel.v1.CloudChannelService.ListSubscribers", + "shortName": "ListAgents", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.ListAgents", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{account=accounts/*}:listSubscribers" + "path": "/v3beta1/{parent=projects/*/locations/*}/agents" } ] }, { - "shortName": "ListTransferableOffers", - "fullName": "google.cloud.channel.v1.CloudChannelService.ListTransferableOffers", + "shortName": "RestoreAgent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.RestoreAgent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=accounts/*}:listTransferableOffers" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*}:restore" } ] }, { - "shortName": "ListTransferableSkus", - "fullName": "google.cloud.channel.v1.CloudChannelService.ListTransferableSkus", + "shortName": "UpdateAgent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.UpdateAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=accounts/*}:listTransferableSkus" + "httpMethod": "PATCH", + "path": "/v3beta1/{agent.name=projects/*/locations/*/agents/*}" } ] }, { - "shortName": "ProvisionCloudIdentity", - "fullName": "google.cloud.channel.v1.CloudChannelService.ProvisionCloudIdentity", + "shortName": "ValidateAgent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.ValidateAgent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{customer=accounts/*/customers/*}:provisionCloudIdentity" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*}:validate" } ] - }, + } + ] + }, + { + "shortName": "Changelogs", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Changelogs", + "methods": [ { - "shortName": "RegisterSubscriber", - "fullName": "google.cloud.channel.v1.CloudChannelService.RegisterSubscriber", + "shortName": "GetChangelog", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Changelogs.GetChangelog", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{account=accounts/*}:register" + "httpMethod": "GET", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/changelogs/*}" } ] }, { - "shortName": "StartPaidService", - "fullName": "google.cloud.channel.v1.CloudChannelService.StartPaidService", + "shortName": "ListChangelogs", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Changelogs.ListChangelogs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:startPaidService" + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/changelogs" } ] - }, + } + ] + }, + { + "shortName": "Deployments", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Deployments", + "methods": [ { - "shortName": "SuspendEntitlement", - "fullName": "google.cloud.channel.v1.CloudChannelService.SuspendEntitlement", + "shortName": "GetDeployment", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Deployments.GetDeployment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=accounts/*/customers/*/entitlements/*}:suspend" + "httpMethod": "GET", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/deployments/*}" } ] }, { - "shortName": "TransferEntitlements", - "fullName": "google.cloud.channel.v1.CloudChannelService.TransferEntitlements", + "shortName": "ListDeployments", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Deployments.ListDeployments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/environments/*}/deployments" + } + ] + } + ] + }, + { + "shortName": "EntityTypes", + "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes", + "methods": [ + { + "shortName": "CreateEntityType", + "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes.CreateEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=accounts/*/customers/*}:transferEntitlements" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/entityTypes" } ] }, { - "shortName": "TransferEntitlementsToGoogle", - "fullName": "google.cloud.channel.v1.CloudChannelService.TransferEntitlementsToGoogle", + "shortName": "DeleteEntityType", + "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes.DeleteEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=accounts/*/customers/*}:transferEntitlementsToGoogle" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/entityTypes/*}" } ] }, { - "shortName": "UnregisterSubscriber", - "fullName": "google.cloud.channel.v1.CloudChannelService.UnregisterSubscriber", + "shortName": "GetEntityType", + "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes.GetEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{account=accounts/*}:unregister" + "httpMethod": "GET", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/entityTypes/*}" } ] }, { - "shortName": "UpdateChannelPartnerLink", - "fullName": "google.cloud.channel.v1.CloudChannelService.UpdateChannelPartnerLink", + "shortName": "ListEntityTypes", + "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes.ListEntityTypes", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{name=accounts/*/channelPartnerLinks/*}" + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/entityTypes" } ] }, { - "shortName": "UpdateCustomer", - "fullName": "google.cloud.channel.v1.CloudChannelService.UpdateCustomer", + "shortName": "UpdateEntityType", + "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes.UpdateEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{customer.name=accounts/*/customers/*}" + "path": "/v3beta1/{entity_type.name=projects/*/locations/*/agents/*/entityTypes/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.clouddms.v1", - "directory": "google/cloud/clouddms/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "datamigration.googleapis.com", - "title": "Database Migration API", - "description": "Manage Cloud Database Migration Service resources on Google Cloud Platform.", - "importDirectories": [ - "google/api", - "google/cloud/clouddms/v1", - "google/longrunning", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.clouddms.v1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/clouddms/v1;clouddms": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.CloudDms.V1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\CloudDms\\V1": 2 - } }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::CloudDMS::V1": 2 - } - } - }, - "services": [ { - "shortName": "DataMigrationService", - "fullName": "google.cloud.clouddms.v1.DataMigrationService", + "shortName": "Environments", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments", "methods": [ { - "shortName": "CreateConnectionProfile", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.CreateConnectionProfile", + "shortName": "CreateEnvironment", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.CreateEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/connectionProfiles" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/environments" } ] }, { - "shortName": "CreateMigrationJob", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.CreateMigrationJob", + "shortName": "DeleteEnvironment", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.DeleteEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/migrationJobs" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*}" } ] }, { - "shortName": "DeleteConnectionProfile", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.DeleteConnectionProfile", + "shortName": "DeployFlow", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.DeployFlow", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/connectionProfiles/*}" + "httpMethod": "POST", + "path": "/v3beta1/{environment=projects/*/locations/*/agents/*/environments/*}:deployFlow" } ] }, { - "shortName": "DeleteMigrationJob", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.DeleteMigrationJob", + "shortName": "GetEnvironment", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.GetEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}" + "httpMethod": "GET", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*}" } ] }, { - "shortName": "GenerateSshScript", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.GenerateSshScript", + "shortName": "ListContinuousTestResults", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.ListContinuousTestResults", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{migration_job=projects/*/locations/*/migrationJobs/*}:generateSshScript" + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/environments/*}/continuousTestResults" } ] }, { - "shortName": "GetConnectionProfile", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.GetConnectionProfile", + "shortName": "ListEnvironments", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.ListEnvironments", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/connectionProfiles/*}" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/environments" } ] }, { - "shortName": "GetMigrationJob", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.GetMigrationJob", + "shortName": "LookupEnvironmentHistory", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.LookupEnvironmentHistory", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*}:lookupEnvironmentHistory" } ] }, { - "shortName": "ListConnectionProfiles", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.ListConnectionProfiles", + "shortName": "RunContinuousTest", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.RunContinuousTest", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/connectionProfiles" + "httpMethod": "POST", + "path": "/v3beta1/{environment=projects/*/locations/*/agents/*/environments/*}:runContinuousTest" } ] }, { - "shortName": "ListMigrationJobs", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.ListMigrationJobs", + "shortName": "UpdateEnvironment", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.UpdateEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/migrationJobs" + "httpMethod": "PATCH", + "path": "/v3beta1/{environment.name=projects/*/locations/*/agents/*/environments/*}" } ] - }, + } + ] + }, + { + "shortName": "Experiments", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments", + "methods": [ { - "shortName": "PromoteMigrationJob", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.PromoteMigrationJob", + "shortName": "CreateExperiment", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.CreateExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:promote" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/environments/*}/experiments" } ] }, { - "shortName": "RestartMigrationJob", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.RestartMigrationJob", + "shortName": "DeleteExperiment", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.DeleteExperiment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:restart" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}" } ] }, { - "shortName": "ResumeMigrationJob", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.ResumeMigrationJob", + "shortName": "GetExperiment", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.GetExperiment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:resume" + "httpMethod": "GET", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}" } ] }, { - "shortName": "StartMigrationJob", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.StartMigrationJob", + "shortName": "ListExperiments", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.ListExperiments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/environments/*}/experiments" + } + ] + }, + { + "shortName": "StartExperiment", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.StartExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:start" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}:start" } ] }, { - "shortName": "StopMigrationJob", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.StopMigrationJob", + "shortName": "StopExperiment", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.StopExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:stop" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}:stop" } ] }, { - "shortName": "UpdateConnectionProfile", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.UpdateConnectionProfile", + "shortName": "UpdateExperiment", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.UpdateExperiment", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{connection_profile.name=projects/*/locations/*/connectionProfiles/*}" + "path": "/v3beta1/{experiment.name=projects/*/locations/*/agents/*/environments/*/experiments/*}" + } + ] + } + ] + }, + { + "shortName": "Flows", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows", + "methods": [ + { + "shortName": "CreateFlow", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.CreateFlow", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/flows" } ] }, { - "shortName": "UpdateMigrationJob", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.UpdateMigrationJob", + "shortName": "DeleteFlow", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.DeleteFlow", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{migration_job.name=projects/*/locations/*/migrationJobs/*}" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*}" } ] }, { - "shortName": "VerifyMigrationJob", - "fullName": "google.cloud.clouddms.v1.DataMigrationService.VerifyMigrationJob", + "shortName": "ExportFlow", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.ExportFlow", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/migrationJobs/*}:verify" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*}:export" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.contactcenterinsights.v1", - "directory": "google/cloud/contactcenterinsights/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "contactcenterinsights.googleapis.com", - "title": "Contact Center AI Insights API", - "description": "", - "importDirectories": [ - "google/api", - "google/cloud/contactcenterinsights/v1", - "google/longrunning", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.contactcenterinsights.v1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/contactcenterinsights/v1;contactcenterinsights": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.ContactCenterInsights.V1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\ContactCenterInsights\\V1": 2 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::ContactCenterInsights::V1": 2 - } - } - }, - "services": [ - { - "shortName": "ContactCenterInsights", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights", - "methods": [ + }, { - "shortName": "CalculateIssueModelStats", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CalculateIssueModelStats", + "shortName": "GetFlow", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.GetFlow", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{issue_model=projects/*/locations/*/issueModels/*}:calculateIssueModelStats" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*}" } ] }, { - "shortName": "CalculateStats", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CalculateStats", + "shortName": "GetFlowValidationResult", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.GetFlowValidationResult", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{location=projects/*/locations/*}/conversations:calculateStats" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/validationResult}" } ] }, { - "shortName": "CreateAnalysis", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CreateAnalysis", + "shortName": "ImportFlow", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.ImportFlow", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/conversations/*}/analyses" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/flows:import" } ] }, { - "shortName": "CreateConversation", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CreateConversation", + "shortName": "ListFlows", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.ListFlows", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/conversations" + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/flows" } ] }, { - "shortName": "CreatePhraseMatcher", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.CreatePhraseMatcher", + "shortName": "TrainFlow", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.TrainFlow", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/phraseMatchers" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*}:train" } ] }, { - "shortName": "DeleteAnalysis", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.DeleteAnalysis", + "shortName": "UpdateFlow", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.UpdateFlow", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/conversations/*/analyses/*}" + "httpMethod": "PATCH", + "path": "/v3beta1/{flow.name=projects/*/locations/*/agents/*/flows/*}" } ] }, { - "shortName": "DeleteConversation", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.DeleteConversation", + "shortName": "ValidateFlow", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.ValidateFlow", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/conversations/*}" + "httpMethod": "POST", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*}:validate" } ] - }, + } + ] + }, + { + "shortName": "Intents", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents", + "methods": [ { - "shortName": "DeletePhraseMatcher", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.DeletePhraseMatcher", + "shortName": "CreateIntent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents.CreateIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/phraseMatchers/*}" + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/intents" } ] }, { - "shortName": "ExportInsightsData", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ExportInsightsData", + "shortName": "DeleteIntent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents.DeleteIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/insightsdata:export" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/intents/*}" } ] }, { - "shortName": "GetAnalysis", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetAnalysis", + "shortName": "GetIntent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents.GetIntent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/conversations/*/analyses/*}" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/intents/*}" } ] }, { - "shortName": "GetConversation", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetConversation", + "shortName": "ListIntents", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents.ListIntents", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/conversations/*}" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/intents" } ] }, { - "shortName": "GetIssue", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetIssue", + "shortName": "UpdateIntent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents.UpdateIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/issueModels/*/issues/*}" + "httpMethod": "PATCH", + "path": "/v3beta1/{intent.name=projects/*/locations/*/agents/*/intents/*}" } ] - }, + } + ] + }, + { + "shortName": "Pages", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages", + "methods": [ { - "shortName": "GetIssueModel", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetIssueModel", + "shortName": "CreatePage", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages.CreatePage", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/issueModels/*}" + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/pages" } ] }, { - "shortName": "GetPhraseMatcher", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetPhraseMatcher", + "shortName": "DeletePage", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages.DeletePage", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/phraseMatchers/*}" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/pages/*}" } ] }, { - "shortName": "GetSettings", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.GetSettings", + "shortName": "GetPage", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages.GetPage", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/settings}" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/pages/*}" } ] }, { - "shortName": "ListAnalyses", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ListAnalyses", + "shortName": "ListPages", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages.ListPages", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/conversations/*}/analyses" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/pages" } ] }, { - "shortName": "ListConversations", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ListConversations", + "shortName": "UpdatePage", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages.UpdatePage", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/conversations" + "httpMethod": "PATCH", + "path": "/v3beta1/{page.name=projects/*/locations/*/agents/*/flows/*/pages/*}" } ] - }, + } + ] + }, + { + "shortName": "SecuritySettingsService", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService", + "methods": [ { - "shortName": "ListIssueModels", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ListIssueModels", + "shortName": "CreateSecuritySettings", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService.CreateSecuritySettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/issueModels" + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*}/securitySettings" } ] }, { - "shortName": "ListIssues", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ListIssues", + "shortName": "DeleteSecuritySettings", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService.DeleteSecuritySettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/issueModels/*}/issues" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/securitySettings/*}" } ] }, { - "shortName": "ListPhraseMatchers", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.ListPhraseMatchers", + "shortName": "GetSecuritySettings", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService.GetSecuritySettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/phraseMatchers" + "path": "/v3beta1/{name=projects/*/locations/*/securitySettings/*}" } ] }, { - "shortName": "UpdateConversation", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.UpdateConversation", + "shortName": "ListSecuritySettings", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService.ListSecuritySettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{conversation.name=projects/*/locations/*/conversations/*}" + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*}/securitySettings" } ] }, { - "shortName": "UpdateSettings", - "fullName": "google.cloud.contactcenterinsights.v1.ContactCenterInsights.UpdateSettings", + "shortName": "UpdateSecuritySettings", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService.UpdateSecuritySettings", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{settings.name=projects/*/locations/*/settings}" + "path": "/v3beta1/{security_settings.name=projects/*/locations/*/securitySettings/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.datacatalog.v1", - "directory": "google/cloud/datacatalog/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "datacatalog.googleapis.com", - "title": "Google Cloud Data Catalog API", - "description": "A fully managed and highly scalable data discovery and metadata management service.", - "importDirectories": [ - "google/api", - "google/cloud/datacatalog/v1", - "google/iam/v1", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.datacatalog.v1": 11 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 11 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/datacatalog/v1;datacatalog": 11 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 11 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.DataCatalog.V1": 11 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\DataCatalog\\V1": 11 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::DataCatalog::V1": 11 - } - } - }, - "services": [ + }, { - "shortName": "DataCatalog", - "fullName": "google.cloud.datacatalog.v1.DataCatalog", + "shortName": "SessionEntityTypes", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes", "methods": [ { - "shortName": "CreateEntry", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.CreateEntry", + "shortName": "CreateSessionEntityType", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes.CreateSessionEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/entryGroups/*}/entries" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/sessions/*}/entityTypes" + }, + { + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/environments/*/sessions/*}/entityTypes" } ] }, { - "shortName": "CreateEntryGroup", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.CreateEntryGroup", + "shortName": "DeleteSessionEntityType", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes.DeleteSessionEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/entryGroups" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" } ] }, { - "shortName": "CreateTag", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.CreateTag", + "shortName": "GetSessionEntityType", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes.GetSessionEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/entryGroups/*/entries/*}/tags" + "httpMethod": "GET", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" }, { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/entryGroups/*}/tags" + "httpMethod": "GET", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" } ] }, { - "shortName": "CreateTagTemplate", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.CreateTagTemplate", + "shortName": "ListSessionEntityTypes", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes.ListSessionEntityTypes", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/tagTemplates" + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/sessions/*}/entityTypes" + }, + { + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/environments/*/sessions/*}/entityTypes" } ] }, { - "shortName": "CreateTagTemplateField", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.CreateTagTemplateField", + "shortName": "UpdateSessionEntityType", + "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes.UpdateSessionEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/tagTemplates/*}/fields" + "httpMethod": "PATCH", + "path": "/v3beta1/{session_entity_type.name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v3beta1/{session_entity_type.name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" } ] - }, + } + ] + }, + { + "shortName": "Sessions", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Sessions", + "methods": [ { - "shortName": "DeleteEntry", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.DeleteEntry", + "shortName": "DetectIntent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Sessions.DetectIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/entryGroups/*/entries/*}" + "httpMethod": "POST", + "path": "/v3beta1/{session=projects/*/locations/*/agents/*/sessions/*}:detectIntent" + }, + { + "httpMethod": "POST", + "path": "/v3beta1/{session=projects/*/locations/*/agents/*/environments/*/sessions/*}:detectIntent" } ] }, { - "shortName": "DeleteEntryGroup", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.DeleteEntryGroup", + "shortName": "FulfillIntent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Sessions.FulfillIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/entryGroups/*}" + "httpMethod": "POST", + "path": "/v3beta1/{match_intent_request.session=projects/*/locations/*/agents/*/sessions/*}:fulfillIntent" + }, + { + "httpMethod": "POST", + "path": "/v3beta1/{match_intent_request.session=projects/*/locations/*/agents/*/environments/*/sessions/*}:fulfillIntent" } ] }, { - "shortName": "DeleteTag", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.DeleteTag", + "shortName": "MatchIntent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Sessions.MatchIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/entryGroups/*/entries/*/tags/*}" + "httpMethod": "POST", + "path": "/v3beta1/{session=projects/*/locations/*/agents/*/sessions/*}:matchIntent" }, { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/entryGroups/*/tags/*}" + "httpMethod": "POST", + "path": "/v3beta1/{session=projects/*/locations/*/agents/*/environments/*/sessions/*}:matchIntent" } ] }, { - "shortName": "DeleteTagTemplate", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.DeleteTagTemplate", + "shortName": "StreamingDetectIntent", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Sessions.StreamingDetectIntent", + "mode": "BIDIRECTIONAL_STREAMING" + } + ] + }, + { + "shortName": "TestCases", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases", + "methods": [ + { + "shortName": "BatchDeleteTestCases", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.BatchDeleteTestCases", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/tagTemplates/*}" + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases:batchDelete" } ] }, { - "shortName": "DeleteTagTemplateField", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.DeleteTagTemplateField", + "shortName": "BatchRunTestCases", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.BatchRunTestCases", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*}" + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases:batchRun" } ] }, { - "shortName": "GetEntry", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.GetEntry", + "shortName": "CalculateCoverage", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.CalculateCoverage", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/entryGroups/*/entries/*}" + "path": "/v3beta1/{agent=projects/*/locations/*/agents/*}/testCases:calculateCoverage" } ] }, { - "shortName": "GetEntryGroup", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.GetEntryGroup", + "shortName": "CreateTestCase", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.CreateTestCase", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/entryGroups/*}" + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.GetIamPolicy", + "shortName": "ExportTestCases", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.ExportTestCases", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/tagTemplates/*}:getIamPolicy" - }, - { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/entryGroups/*}:getIamPolicy" - }, - { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/entryGroups/*/entries/*}:getIamPolicy" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases:export" } ] }, { - "shortName": "GetTagTemplate", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.GetTagTemplate", + "shortName": "GetTestCase", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.GetTestCase", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/tagTemplates/*}" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/testCases/*}" } ] }, { - "shortName": "ListEntries", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.ListEntries", + "shortName": "GetTestCaseResult", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.GetTestCaseResult", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/entryGroups/*}/entries" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/testCases/*/results/*}" } ] }, { - "shortName": "ListEntryGroups", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.ListEntryGroups", + "shortName": "ImportTestCases", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.ImportTestCases", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/entryGroups" + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases:import" } ] }, { - "shortName": "ListTags", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.ListTags", + "shortName": "ListTestCaseResults", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.ListTestCaseResults", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/entryGroups/*/entries/*}/tags" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/entryGroups/*}/tags" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/testCases/*}/results" } ] }, { - "shortName": "LookupEntry", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.LookupEntry", + "shortName": "ListTestCases", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.ListTestCases", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/entries:lookup" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases" } ] }, { - "shortName": "RenameTagTemplateField", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.RenameTagTemplateField", + "shortName": "RunTestCase", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.RunTestCase", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*}:rename" + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/testCases/*}:run" } ] }, { - "shortName": "RenameTagTemplateFieldEnumValue", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.RenameTagTemplateFieldEnumValue", + "shortName": "UpdateTestCase", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.UpdateTestCase", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v3beta1/{test_case.name=projects/*/locations/*/agents/*/testCases/*}" + } + ] + } + ] + }, + { + "shortName": "TransitionRouteGroups", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups", + "methods": [ + { + "shortName": "CreateTransitionRouteGroup", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups.CreateTransitionRouteGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*/enumValues/*}:rename" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/transitionRouteGroups" } ] }, { - "shortName": "SearchCatalog", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.SearchCatalog", + "shortName": "DeleteTransitionRouteGroup", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups.DeleteTransitionRouteGroup", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/catalog:search" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.SetIamPolicy", + "shortName": "GetTransitionRouteGroup", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups.GetTransitionRouteGroup", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/tagTemplates/*}:setIamPolicy" - }, + "httpMethod": "GET", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" + } + ] + }, + { + "shortName": "ListTransitionRouteGroups", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups.ListTransitionRouteGroups", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/entryGroups/*}:setIamPolicy" + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/transitionRouteGroups" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.TestIamPermissions", + "shortName": "UpdateTransitionRouteGroup", + "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups.UpdateTransitionRouteGroup", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/tagTemplates/*}:testIamPermissions" - }, + "httpMethod": "PATCH", + "path": "/v3beta1/{transition_route_group.name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" + } + ] + } + ] + }, + { + "shortName": "Versions", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions", + "methods": [ + { + "shortName": "CompareVersions", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.CompareVersions", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/entryGroups/*}:testIamPermissions" - }, + "path": "/v3beta1/{base_version=projects/*/locations/*/agents/*/flows/*/versions/*}:compareVersions" + } + ] + }, + { + "shortName": "CreateVersion", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.CreateVersion", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/entryGroups/*/entries/*}:testIamPermissions" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/versions" } ] }, { - "shortName": "UpdateEntry", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.UpdateEntry", + "shortName": "DeleteVersion", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.DeleteVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{entry.name=projects/*/locations/*/entryGroups/*/entries/*}" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/versions/*}" } ] }, { - "shortName": "UpdateEntryGroup", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.UpdateEntryGroup", + "shortName": "GetVersion", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.GetVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{entry_group.name=projects/*/locations/*/entryGroups/*}" + "httpMethod": "GET", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/versions/*}" } ] }, { - "shortName": "UpdateTag", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.UpdateTag", + "shortName": "ListVersions", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.ListVersions", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{tag.name=projects/*/locations/*/entryGroups/*/entries/*/tags/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v1/{tag.name=projects/*/locations/*/entryGroups/*/tags/*}" + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/versions" } ] }, { - "shortName": "UpdateTagTemplate", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.UpdateTagTemplate", + "shortName": "LoadVersion", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.LoadVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{tag_template.name=projects/*/locations/*/tagTemplates/*}" + "httpMethod": "POST", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/versions/*}:load" } ] }, { - "shortName": "UpdateTagTemplateField", - "fullName": "google.cloud.datacatalog.v1.DataCatalog.UpdateTagTemplateField", + "shortName": "UpdateVersion", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.UpdateVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*}" + "path": "/v3beta1/{version.name=projects/*/locations/*/agents/*/flows/*/versions/*}" } ] } ] }, { - "shortName": "PolicyTagManager", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager", + "shortName": "Webhooks", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks", "methods": [ { - "shortName": "CreatePolicyTag", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.CreatePolicyTag", + "shortName": "CreateWebhook", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks.CreateWebhook", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/taxonomies/*}/policyTags" + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/webhooks" } ] }, { - "shortName": "CreateTaxonomy", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.CreateTaxonomy", + "shortName": "DeleteWebhook", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks.DeleteWebhook", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/taxonomies" + "httpMethod": "DELETE", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/webhooks/*}" } ] }, { - "shortName": "DeletePolicyTag", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.DeletePolicyTag", + "shortName": "GetWebhook", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks.GetWebhook", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/taxonomies/*/policyTags/*}" + "httpMethod": "GET", + "path": "/v3beta1/{name=projects/*/locations/*/agents/*/webhooks/*}" } ] }, { - "shortName": "DeleteTaxonomy", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.DeleteTaxonomy", + "shortName": "ListWebhooks", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks.ListWebhooks", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/taxonomies/*}" + "httpMethod": "GET", + "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/webhooks" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.GetIamPolicy", + "shortName": "UpdateWebhook", + "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks.UpdateWebhook", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/taxonomies/*}:getIamPolicy" + "httpMethod": "PATCH", + "path": "/v3beta1/{webhook.name=projects/*/locations/*/agents/*/webhooks/*}" + } + ] + } + ] + } + ], + "configFile": "dialogflow_v3beta1.yaml" + }, + { + "id": "google.cloud.dialogflow.v2", + "directory": "google/cloud/dialogflow/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "dialogflow.googleapis.com", + "title": "Dialogflow API", + "description": "Builds conversational interfaces (for example, chatbots, and voice-powered apps and devices).", + "importDirectories": [ + "google/api", + "google/cloud/dialogflow/v2", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/type" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 21 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Dialogflow.V2": 21 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/dialogflow/v2;dialogflow": 21 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 21 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.dialogflow.v2": 21 + } + }, + "objc_class_prefix": { + "valueCounts": { + "DF": 21 + } + } + }, + "services": [ + { + "shortName": "Agents", + "fullName": "google.cloud.dialogflow.v2.Agents", + "methods": [ + { + "shortName": "DeleteAgent", + "fullName": "google.cloud.dialogflow.v2.Agents.DeleteAgent", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v2/{parent=projects/*}/agent" }, { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:getIamPolicy" + "httpMethod": "DELETE", + "path": "/v2/{parent=projects/*/locations/*}/agent" } ] }, { - "shortName": "GetPolicyTag", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.GetPolicyTag", + "shortName": "ExportAgent", + "fullName": "google.cloud.dialogflow.v2.Agents.ExportAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/taxonomies/*/policyTags/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*}/agent:export" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*}/agent:export" } ] }, { - "shortName": "GetTaxonomy", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.GetTaxonomy", + "shortName": "GetAgent", + "fullName": "google.cloud.dialogflow.v2.Agents.GetAgent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/taxonomies/*}" + "path": "/v2/{parent=projects/*}/agent" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/agent" } ] }, { - "shortName": "ListPolicyTags", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.ListPolicyTags", + "shortName": "GetValidationResult", + "fullName": "google.cloud.dialogflow.v2.Agents.GetValidationResult", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/taxonomies/*}/policyTags" + "path": "/v2/{parent=projects/*}/agent/validationResult" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/agent/validationResult" } ] }, { - "shortName": "ListTaxonomies", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.ListTaxonomies", + "shortName": "ImportAgent", + "fullName": "google.cloud.dialogflow.v2.Agents.ImportAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/taxonomies" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*}/agent:import" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*}/agent:import" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.SetIamPolicy", + "shortName": "RestoreAgent", + "fullName": "google.cloud.dialogflow.v2.Agents.RestoreAgent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/taxonomies/*}:setIamPolicy" + "path": "/v2/{parent=projects/*}/agent:restore" }, { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:setIamPolicy" + "path": "/v2/{parent=projects/*/locations/*}/agent:restore" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.TestIamPermissions", + "shortName": "SearchAgents", + "fullName": "google.cloud.dialogflow.v2.Agents.SearchAgents", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/taxonomies/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*}/agent:search" }, { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/agent:search" } ] }, { - "shortName": "UpdatePolicyTag", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.UpdatePolicyTag", + "shortName": "SetAgent", + "fullName": "google.cloud.dialogflow.v2.Agents.SetAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{policy_tag.name=projects/*/locations/*/taxonomies/*/policyTags/*}" + "httpMethod": "POST", + "path": "/v2/{agent.parent=projects/*}/agent" + }, + { + "httpMethod": "POST", + "path": "/v2/{agent.parent=projects/*/locations/*}/agent" } ] }, { - "shortName": "UpdateTaxonomy", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManager.UpdateTaxonomy", + "shortName": "TrainAgent", + "fullName": "google.cloud.dialogflow.v2.Agents.TrainAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{taxonomy.name=projects/*/locations/*/taxonomies/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*}/agent:train" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*}/agent:train" } ] } ] }, { - "shortName": "PolicyTagManagerSerialization", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManagerSerialization", + "shortName": "AnswerRecords", + "fullName": "google.cloud.dialogflow.v2.AnswerRecords", "methods": [ { - "shortName": "ExportTaxonomies", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManagerSerialization.ExportTaxonomies", + "shortName": "ListAnswerRecords", + "fullName": "google.cloud.dialogflow.v2.AnswerRecords.ListAnswerRecords", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/taxonomies:export" + "path": "/v2/{parent=projects/*}/answerRecords" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/answerRecords" } ] }, { - "shortName": "ImportTaxonomies", - "fullName": "google.cloud.datacatalog.v1.PolicyTagManagerSerialization.ImportTaxonomies", + "shortName": "UpdateAnswerRecord", + "fullName": "google.cloud.dialogflow.v2.AnswerRecords.UpdateAnswerRecord", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/taxonomies:import" + "httpMethod": "PATCH", + "path": "/v2/{answer_record.name=projects/*/answerRecords/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{answer_record.name=projects/*/locations/*/answerRecords/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.datacatalog.v1beta1", - "directory": "google/cloud/datacatalog/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "datacatalog.googleapis.com", - "title": "Google Cloud Data Catalog API", - "description": "A fully managed and highly scalable data discovery and metadata management service.", - "importDirectories": [ - "google/api", - "google/cloud/datacatalog/v1beta1", - "google/iam/v1", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.datacatalog.v1beta1": 10 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 10 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/datacatalog/v1beta1;datacatalog": 10 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 10 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.DataCatalog.V1Beta1": 10 - } }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\DataCatalog\\V1beta1": 10 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::DataCatalog::V1beta1": 10 - } - } - }, - "services": [ { - "shortName": "DataCatalog", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog", + "shortName": "Contexts", + "fullName": "google.cloud.dialogflow.v2.Contexts", "methods": [ { - "shortName": "CreateEntry", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.CreateEntry", + "shortName": "CreateContext", + "fullName": "google.cloud.dialogflow.v2.Contexts.CreateContext", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*}/entries" + "path": "/v2/{parent=projects/*/agent/sessions/*}/contexts" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent/sessions/*}/contexts" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" } ] }, { - "shortName": "CreateEntryGroup", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.CreateEntryGroup", + "shortName": "DeleteAllContexts", + "fullName": "google.cloud.dialogflow.v2.Contexts.DeleteAllContexts", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/entryGroups" + "httpMethod": "DELETE", + "path": "/v2/{parent=projects/*/agent/sessions/*}/contexts" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{parent=projects/*/locations/*/agent/sessions/*}/contexts" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" } ] }, { - "shortName": "CreateTag", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.CreateTag", + "shortName": "DeleteContext", + "fullName": "google.cloud.dialogflow.v2.Contexts.DeleteContext", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*/entries/*}/tags" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/agent/sessions/*/contexts/*}" }, { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*}/tags" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/agent/sessions/*/contexts/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" } ] }, { - "shortName": "CreateTagTemplate", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.CreateTagTemplate", + "shortName": "GetContext", + "fullName": "google.cloud.dialogflow.v2.Contexts.GetContext", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/tagTemplates" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/agent/sessions/*/contexts/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/agent/sessions/*/contexts/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" } ] }, { - "shortName": "CreateTagTemplateField", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.CreateTagTemplateField", + "shortName": "ListContexts", + "fullName": "google.cloud.dialogflow.v2.Contexts.ListContexts", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/tagTemplates/*}/fields" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/agent/sessions/*}/contexts" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/agent/sessions/*}/contexts" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" } ] }, { - "shortName": "DeleteEntry", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.DeleteEntry", + "shortName": "UpdateContext", + "fullName": "google.cloud.dialogflow.v2.Contexts.UpdateContext", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*/entries/*}" + "httpMethod": "PATCH", + "path": "/v2/{context.name=projects/*/agent/sessions/*/contexts/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{context.name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{context.name=projects/*/locations/*/agent/sessions/*/contexts/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{context.name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" } ] - }, + } + ] + }, + { + "shortName": "ConversationProfiles", + "fullName": "google.cloud.dialogflow.v2.ConversationProfiles", + "methods": [ { - "shortName": "DeleteEntryGroup", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.DeleteEntryGroup", + "shortName": "CreateConversationProfile", + "fullName": "google.cloud.dialogflow.v2.ConversationProfiles.CreateConversationProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*}/conversationProfiles" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*}/conversationProfiles" } ] }, { - "shortName": "DeleteTag", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.DeleteTag", + "shortName": "DeleteConversationProfile", + "fullName": "google.cloud.dialogflow.v2.ConversationProfiles.DeleteConversationProfile", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*/entries/*/tags/*}" + "path": "/v2/{name=projects/*/conversationProfiles/*}" }, { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*/tags/*}" + "path": "/v2/{name=projects/*/locations/*/conversationProfiles/*}" } ] }, { - "shortName": "DeleteTagTemplate", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.DeleteTagTemplate", + "shortName": "GetConversationProfile", + "fullName": "google.cloud.dialogflow.v2.ConversationProfiles.GetConversationProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/tagTemplates/*}" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/conversationProfiles/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/conversationProfiles/*}" } ] }, { - "shortName": "DeleteTagTemplateField", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.DeleteTagTemplateField", + "shortName": "ListConversationProfiles", + "fullName": "google.cloud.dialogflow.v2.ConversationProfiles.ListConversationProfiles", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/tagTemplates/*/fields/*}" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*}/conversationProfiles" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/conversationProfiles" } ] }, { - "shortName": "GetEntry", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.GetEntry", + "shortName": "UpdateConversationProfile", + "fullName": "google.cloud.dialogflow.v2.ConversationProfiles.UpdateConversationProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*/entries/*}" + "httpMethod": "PATCH", + "path": "/v2/{conversation_profile.name=projects/*/conversationProfiles/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{conversation_profile.name=projects/*/locations/*/conversationProfiles/*}" } ] - }, + } + ] + }, + { + "shortName": "Conversations", + "fullName": "google.cloud.dialogflow.v2.Conversations", + "methods": [ { - "shortName": "GetEntryGroup", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.GetEntryGroup", + "shortName": "CompleteConversation", + "fullName": "google.cloud.dialogflow.v2.Conversations.CompleteConversation", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/entryGroups/*}" + "httpMethod": "POST", + "path": "/v2/{name=projects/*/conversations/*}:complete" + }, + { + "httpMethod": "POST", + "path": "/v2/{name=projects/*/locations/*/conversations/*}:complete" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.GetIamPolicy", + "shortName": "CreateConversation", + "fullName": "google.cloud.dialogflow.v2.Conversations.CreateConversation", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/tagTemplates/*}:getIamPolicy" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/entryGroups/*}:getIamPolicy" + "path": "/v2/{parent=projects/*}/conversations" }, { "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/entryGroups/*/entries/*}:getIamPolicy" + "path": "/v2/{parent=projects/*/locations/*}/conversations" } ] }, { - "shortName": "GetTagTemplate", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.GetTagTemplate", + "shortName": "GetConversation", + "fullName": "google.cloud.dialogflow.v2.Conversations.GetConversation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/tagTemplates/*}" + "path": "/v2/{name=projects/*/conversations/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/conversations/*}" } ] }, { - "shortName": "ListEntries", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.ListEntries", + "shortName": "ListConversations", + "fullName": "google.cloud.dialogflow.v2.Conversations.ListConversations", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*}/entries" + "path": "/v2/{parent=projects/*}/conversations" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/conversations" } ] }, { - "shortName": "ListEntryGroups", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.ListEntryGroups", + "shortName": "ListMessages", + "fullName": "google.cloud.dialogflow.v2.Conversations.ListMessages", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/entryGroups" + "path": "/v2/{parent=projects/*/conversations/*}/messages" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/conversations/*}/messages" } ] - }, + } + ] + }, + { + "shortName": "Documents", + "fullName": "google.cloud.dialogflow.v2.Documents", + "methods": [ { - "shortName": "ListTags", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.ListTags", + "shortName": "CreateDocument", + "fullName": "google.cloud.dialogflow.v2.Documents.CreateDocument", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*/entries/*}/tags" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/knowledgeBases/*}/documents" }, { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/entryGroups/*}/tags" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/knowledgeBases/*}/documents" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/agent/knowledgeBases/*}/documents" } ] }, { - "shortName": "LookupEntry", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.LookupEntry", + "shortName": "DeleteDocument", + "fullName": "google.cloud.dialogflow.v2.Documents.DeleteDocument", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/entries:lookup" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/agent/knowledgeBases/*/documents/*}" } ] }, { - "shortName": "RenameTagTemplateField", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.RenameTagTemplateField", + "shortName": "ExportDocument", + "fullName": "google.cloud.dialogflow.v2.Documents.ExportDocument", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/tagTemplates/*/fields/*}:rename" + "path": "/v2/{name=projects/*/knowledgeBases/*/documents/*}:export" + }, + { + "httpMethod": "POST", + "path": "/v2/{name=projects/*/locations/*/knowledgeBases/*/documents/*}:export" } ] }, { - "shortName": "SearchCatalog", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.SearchCatalog", + "shortName": "GetDocument", + "fullName": "google.cloud.dialogflow.v2.Documents.GetDocument", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/catalog:search" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/agent/knowledgeBases/*/documents/*}" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.SetIamPolicy", + "shortName": "ImportDocuments", + "fullName": "google.cloud.dialogflow.v2.Documents.ImportDocuments", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/tagTemplates/*}:setIamPolicy" + "path": "/v2/{parent=projects/*/knowledgeBases/*}/documents:import" }, { "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/entryGroups/*}:setIamPolicy" + "path": "/v2/{parent=projects/*/locations/*/knowledgeBases/*}/documents:import" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.TestIamPermissions", + "shortName": "ListDocuments", + "fullName": "google.cloud.dialogflow.v2.Documents.ListDocuments", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/tagTemplates/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/knowledgeBases/*}/documents" }, { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/entryGroups/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/knowledgeBases/*}/documents" }, { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/entryGroups/*/entries/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/agent/knowledgeBases/*}/documents" } ] }, { - "shortName": "UpdateEntry", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.UpdateEntry", + "shortName": "ReloadDocument", + "fullName": "google.cloud.dialogflow.v2.Documents.ReloadDocument", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{entry.name=projects/*/locations/*/entryGroups/*/entries/*}" + "httpMethod": "POST", + "path": "/v2/{name=projects/*/knowledgeBases/*/documents/*}:reload" + }, + { + "httpMethod": "POST", + "path": "/v2/{name=projects/*/locations/*/knowledgeBases/*/documents/*}:reload" + }, + { + "httpMethod": "POST", + "path": "/v2/{name=projects/*/agent/knowledgeBases/*/documents/*}:reload" } ] }, { - "shortName": "UpdateEntryGroup", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.UpdateEntryGroup", + "shortName": "UpdateDocument", + "fullName": "google.cloud.dialogflow.v2.Documents.UpdateDocument", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{entry_group.name=projects/*/locations/*/entryGroups/*}" + "path": "/v2/{document.name=projects/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{document.name=projects/*/locations/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{document.name=projects/*/agent/knowledgeBases/*/documents/*}" } ] - }, + } + ] + }, + { + "shortName": "EntityTypes", + "fullName": "google.cloud.dialogflow.v2.EntityTypes", + "methods": [ { - "shortName": "UpdateTag", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.UpdateTag", + "shortName": "BatchCreateEntities", + "fullName": "google.cloud.dialogflow.v2.EntityTypes.BatchCreateEntities", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{tag.name=projects/*/locations/*/entryGroups/*/entries/*/tags/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/agent/entityTypes/*}/entities:batchCreate" }, { - "httpMethod": "PATCH", - "path": "/v1beta1/{tag.name=projects/*/locations/*/entryGroups/*/tags/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchCreate" } ] }, { - "shortName": "UpdateTagTemplate", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.UpdateTagTemplate", + "shortName": "BatchDeleteEntities", + "fullName": "google.cloud.dialogflow.v2.EntityTypes.BatchDeleteEntities", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{tag_template.name=projects/*/locations/*/tagTemplates/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/agent/entityTypes/*}/entities:batchDelete" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchDelete" } ] }, { - "shortName": "UpdateTagTemplateField", - "fullName": "google.cloud.datacatalog.v1beta1.DataCatalog.UpdateTagTemplateField", + "shortName": "BatchDeleteEntityTypes", + "fullName": "google.cloud.dialogflow.v2.EntityTypes.BatchDeleteEntityTypes", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{name=projects/*/locations/*/tagTemplates/*/fields/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/agent}/entityTypes:batchDelete" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent}/entityTypes:batchDelete" } ] - } - ] - }, - { - "shortName": "PolicyTagManager", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager", - "methods": [ + }, { - "shortName": "CreatePolicyTag", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.CreatePolicyTag", + "shortName": "BatchUpdateEntities", + "fullName": "google.cloud.dialogflow.v2.EntityTypes.BatchUpdateEntities", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/taxonomies/*}/policyTags" + "path": "/v2/{parent=projects/*/agent/entityTypes/*}/entities:batchUpdate" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchUpdate" } ] }, { - "shortName": "CreateTaxonomy", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.CreateTaxonomy", + "shortName": "BatchUpdateEntityTypes", + "fullName": "google.cloud.dialogflow.v2.EntityTypes.BatchUpdateEntityTypes", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/taxonomies" + "path": "/v2/{parent=projects/*/agent}/entityTypes:batchUpdate" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent}/entityTypes:batchUpdate" } ] }, { - "shortName": "DeletePolicyTag", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.DeletePolicyTag", + "shortName": "CreateEntityType", + "fullName": "google.cloud.dialogflow.v2.EntityTypes.CreateEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/taxonomies/*/policyTags/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/agent}/entityTypes" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent}/entityTypes" } ] }, { - "shortName": "DeleteTaxonomy", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.DeleteTaxonomy", + "shortName": "DeleteEntityType", + "fullName": "google.cloud.dialogflow.v2.EntityTypes.DeleteEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/taxonomies/*}" + "path": "/v2/{name=projects/*/agent/entityTypes/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/agent/entityTypes/*}" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.GetIamPolicy", + "shortName": "GetEntityType", + "fullName": "google.cloud.dialogflow.v2.EntityTypes.GetEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*}:getIamPolicy" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/agent/entityTypes/*}" }, { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:getIamPolicy" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/agent/entityTypes/*}" } ] }, { - "shortName": "GetPolicyTag", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.GetPolicyTag", + "shortName": "ListEntityTypes", + "fullName": "google.cloud.dialogflow.v2.EntityTypes.ListEntityTypes", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/taxonomies/*/policyTags/*}" + "path": "/v2/{parent=projects/*/agent}/entityTypes" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/agent}/entityTypes" } ] }, { - "shortName": "GetTaxonomy", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.GetTaxonomy", + "shortName": "UpdateEntityType", + "fullName": "google.cloud.dialogflow.v2.EntityTypes.UpdateEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/taxonomies/*}" + "httpMethod": "PATCH", + "path": "/v2/{entity_type.name=projects/*/agent/entityTypes/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{entity_type.name=projects/*/locations/*/agent/entityTypes/*}" } ] - }, + } + ] + }, + { + "shortName": "Environments", + "fullName": "google.cloud.dialogflow.v2.Environments", + "methods": [ { - "shortName": "ListPolicyTags", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.ListPolicyTags", + "shortName": "CreateEnvironment", + "fullName": "google.cloud.dialogflow.v2.Environments.CreateEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/taxonomies/*}/policyTags" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/agent}/environments" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent}/environments" } ] }, { - "shortName": "ListTaxonomies", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.ListTaxonomies", + "shortName": "DeleteEnvironment", + "fullName": "google.cloud.dialogflow.v2.Environments.DeleteEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/taxonomies" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/agent/environments/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/agent/environments/*}" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.SetIamPolicy", + "shortName": "GetEnvironment", + "fullName": "google.cloud.dialogflow.v2.Environments.GetEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*}:setIamPolicy" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/agent/environments/*}" }, { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:setIamPolicy" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/agent/environments/*}" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.TestIamPermissions", + "shortName": "GetEnvironmentHistory", + "fullName": "google.cloud.dialogflow.v2.Environments.GetEnvironmentHistory", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/agent/environments/*}/history" }, { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/taxonomies/*/policyTags/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/agent/environments/*}/history" } ] }, { - "shortName": "UpdatePolicyTag", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.UpdatePolicyTag", + "shortName": "ListEnvironments", + "fullName": "google.cloud.dialogflow.v2.Environments.ListEnvironments", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{policy_tag.name=projects/*/locations/*/taxonomies/*/policyTags/*}" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/agent}/environments" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/agent}/environments" } ] }, { - "shortName": "UpdateTaxonomy", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManager.UpdateTaxonomy", + "shortName": "UpdateEnvironment", + "fullName": "google.cloud.dialogflow.v2.Environments.UpdateEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{taxonomy.name=projects/*/locations/*/taxonomies/*}" + "path": "/v2/{environment.name=projects/*/agent/environments/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{environment.name=projects/*/locations/*/agent/environments/*}" } ] } ] }, { - "shortName": "PolicyTagManagerSerialization", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManagerSerialization", + "shortName": "Fulfillments", + "fullName": "google.cloud.dialogflow.v2.Fulfillments", "methods": [ { - "shortName": "ExportTaxonomies", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManagerSerialization.ExportTaxonomies", + "shortName": "GetFulfillment", + "fullName": "google.cloud.dialogflow.v2.Fulfillments.GetFulfillment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/taxonomies:export" + "path": "/v2/{name=projects/*/agent/fulfillment}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/agent/fulfillment}" } ] }, { - "shortName": "ImportTaxonomies", - "fullName": "google.cloud.datacatalog.v1beta1.PolicyTagManagerSerialization.ImportTaxonomies", + "shortName": "UpdateFulfillment", + "fullName": "google.cloud.dialogflow.v2.Fulfillments.UpdateFulfillment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/taxonomies:import" + "httpMethod": "PATCH", + "path": "/v2/{fulfillment.name=projects/*/agent/fulfillment}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{fulfillment.name=projects/*/locations/*/agent/fulfillment}" } ] } ] - } - ] - }, - { - "id": "google.cloud.datalabeling.v1beta1", - "directory": "google/cloud/datalabeling/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "datalabeling.googleapis.com", - "title": "Data Labeling API", - "description": "Public API for Google Cloud AI Data Labeling Service.", - "importDirectories": [ - "google/api", - "google/cloud/datalabeling/v1beta1", - "google/longrunning", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.datalabeling.v1beta1": 10 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 10 - } }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/datalabeling/v1beta1;datalabeling": 10 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.DataLabeling.V1Beta1": 10 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\DataLabeling\\V1beta1": 10 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::DataLabeling::V1beta1": 10 - } - } - }, - "services": [ { - "shortName": "DataLabelingService", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService", + "shortName": "Intents", + "fullName": "google.cloud.dialogflow.v2.Intents", "methods": [ { - "shortName": "CreateAnnotationSpecSet", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.CreateAnnotationSpecSet", + "shortName": "BatchDeleteIntents", + "fullName": "google.cloud.dialogflow.v2.Intents.BatchDeleteIntents", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*}/annotationSpecSets" - } - ] - }, - { - "shortName": "CreateDataset", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.CreateDataset", - "mode": "UNARY", - "bindings": [ + "path": "/v2/{parent=projects/*/agent}/intents:batchDelete" + }, { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*}/datasets" + "path": "/v2/{parent=projects/*/locations/*/agent}/intents:batchDelete" } ] }, { - "shortName": "CreateEvaluationJob", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.CreateEvaluationJob", + "shortName": "BatchUpdateIntents", + "fullName": "google.cloud.dialogflow.v2.Intents.BatchUpdateIntents", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*}/evaluationJobs" + "path": "/v2/{parent=projects/*/agent}/intents:batchUpdate" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent}/intents:batchUpdate" } ] }, { - "shortName": "CreateInstruction", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.CreateInstruction", + "shortName": "CreateIntent", + "fullName": "google.cloud.dialogflow.v2.Intents.CreateIntent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*}/instructions" + "path": "/v2/{parent=projects/*/agent}/intents" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent}/intents" } ] }, { - "shortName": "DeleteAnnotatedDataset", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteAnnotatedDataset", + "shortName": "DeleteIntent", + "fullName": "google.cloud.dialogflow.v2.Intents.DeleteIntent", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}" + "path": "/v2/{name=projects/*/agent/intents/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/agent/intents/*}" } ] }, { - "shortName": "DeleteAnnotationSpecSet", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteAnnotationSpecSet", + "shortName": "GetIntent", + "fullName": "google.cloud.dialogflow.v2.Intents.GetIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/annotationSpecSets/*}" + "httpMethod": "GET", + "path": "/v2/{name=projects/*/agent/intents/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/agent/intents/*}" } ] }, { - "shortName": "DeleteDataset", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteDataset", + "shortName": "ListIntents", + "fullName": "google.cloud.dialogflow.v2.Intents.ListIntents", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/datasets/*}" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/agent}/intents" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/agent}/intents" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/agent/environments/*}/intents" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/agent/environments/*}/intents" } ] }, { - "shortName": "DeleteEvaluationJob", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteEvaluationJob", + "shortName": "UpdateIntent", + "fullName": "google.cloud.dialogflow.v2.Intents.UpdateIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/evaluationJobs/*}" + "httpMethod": "PATCH", + "path": "/v2/{intent.name=projects/*/agent/intents/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{intent.name=projects/*/locations/*/agent/intents/*}" } ] - }, + } + ] + }, + { + "shortName": "KnowledgeBases", + "fullName": "google.cloud.dialogflow.v2.KnowledgeBases", + "methods": [ { - "shortName": "DeleteInstruction", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.DeleteInstruction", + "shortName": "CreateKnowledgeBase", + "fullName": "google.cloud.dialogflow.v2.KnowledgeBases.CreateKnowledgeBase", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/instructions/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*}/knowledgeBases" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*}/knowledgeBases" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/agent}/knowledgeBases" } ] }, { - "shortName": "ExportData", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ExportData", + "shortName": "DeleteKnowledgeBase", + "fullName": "google.cloud.dialogflow.v2.KnowledgeBases.DeleteKnowledgeBase", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/datasets/*}:exportData" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/knowledgeBases/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/knowledgeBases/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/agent/knowledgeBases/*}" } ] }, { - "shortName": "GetAnnotatedDataset", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetAnnotatedDataset", + "shortName": "GetKnowledgeBase", + "fullName": "google.cloud.dialogflow.v2.KnowledgeBases.GetKnowledgeBase", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*}" + "path": "/v2/{name=projects/*/knowledgeBases/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/knowledgeBases/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/agent/knowledgeBases/*}" } ] }, { - "shortName": "GetAnnotationSpecSet", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetAnnotationSpecSet", + "shortName": "ListKnowledgeBases", + "fullName": "google.cloud.dialogflow.v2.KnowledgeBases.ListKnowledgeBases", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/annotationSpecSets/*}" + "path": "/v2/{parent=projects/*}/knowledgeBases" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/knowledgeBases" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/agent}/knowledgeBases" } ] }, { - "shortName": "GetDataItem", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetDataItem", + "shortName": "UpdateKnowledgeBase", + "fullName": "google.cloud.dialogflow.v2.KnowledgeBases.UpdateKnowledgeBase", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/datasets/*/dataItems/*}" + "httpMethod": "PATCH", + "path": "/v2/{knowledge_base.name=projects/*/knowledgeBases/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{knowledge_base.name=projects/*/locations/*/knowledgeBases/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{knowledge_base.name=projects/*/agent/knowledgeBases/*}" } ] - }, + } + ] + }, + { + "shortName": "Participants", + "fullName": "google.cloud.dialogflow.v2.Participants", + "methods": [ { - "shortName": "GetDataset", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetDataset", + "shortName": "AnalyzeContent", + "fullName": "google.cloud.dialogflow.v2.Participants.AnalyzeContent", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/datasets/*}" + "httpMethod": "POST", + "path": "/v2/{participant=projects/*/conversations/*/participants/*}:analyzeContent" + }, + { + "httpMethod": "POST", + "path": "/v2/{participant=projects/*/locations/*/conversations/*/participants/*}:analyzeContent" } ] }, { - "shortName": "GetEvaluation", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetEvaluation", + "shortName": "CreateParticipant", + "fullName": "google.cloud.dialogflow.v2.Participants.CreateParticipant", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/datasets/*/evaluations/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/conversations/*}/participants" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/conversations/*}/participants" } ] }, { - "shortName": "GetEvaluationJob", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetEvaluationJob", + "shortName": "GetParticipant", + "fullName": "google.cloud.dialogflow.v2.Participants.GetParticipant", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/evaluationJobs/*}" + "path": "/v2/{name=projects/*/conversations/*/participants/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/conversations/*/participants/*}" } ] }, { - "shortName": "GetExample", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetExample", + "shortName": "ListParticipants", + "fullName": "google.cloud.dialogflow.v2.Participants.ListParticipants", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/datasets/*/annotatedDatasets/*/examples/*}" + "path": "/v2/{parent=projects/*/conversations/*}/participants" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/conversations/*}/participants" } ] }, { - "shortName": "GetInstruction", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.GetInstruction", + "shortName": "SuggestArticles", + "fullName": "google.cloud.dialogflow.v2.Participants.SuggestArticles", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/instructions/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestArticles" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestArticles" } ] }, { - "shortName": "ImportData", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ImportData", + "shortName": "SuggestFaqAnswers", + "fullName": "google.cloud.dialogflow.v2.Participants.SuggestFaqAnswers", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/datasets/*}:importData" + "path": "/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers" } ] }, { - "shortName": "LabelImage", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.LabelImage", + "shortName": "SuggestSmartReplies", + "fullName": "google.cloud.dialogflow.v2.Participants.SuggestSmartReplies", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/datasets/*}/image:label" + "path": "/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestSmartReplies" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestSmartReplies" } ] }, { - "shortName": "LabelText", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.LabelText", + "shortName": "UpdateParticipant", + "fullName": "google.cloud.dialogflow.v2.Participants.UpdateParticipant", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/datasets/*}/text:label" + "httpMethod": "PATCH", + "path": "/v2/{participant.name=projects/*/conversations/*/participants/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{participant.name=projects/*/locations/*/conversations/*/participants/*}" } ] - }, + } + ] + }, + { + "shortName": "SessionEntityTypes", + "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes", + "methods": [ { - "shortName": "LabelVideo", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.LabelVideo", + "shortName": "CreateSessionEntityType", + "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes.CreateSessionEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/datasets/*}/video:label" + "path": "/v2/{parent=projects/*/agent/sessions/*}/entityTypes" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/agent/environments/*/users/*/sessions/*}/entityTypes" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent/sessions/*}/entityTypes" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/entityTypes" } ] }, { - "shortName": "ListAnnotatedDatasets", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListAnnotatedDatasets", + "shortName": "DeleteSessionEntityType", + "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes.DeleteSessionEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/datasets/*}/annotatedDatasets" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/agent/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" } ] }, { - "shortName": "ListAnnotationSpecSets", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListAnnotationSpecSets", + "shortName": "GetSessionEntityType", + "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes.GetSessionEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*}/annotationSpecSets" - } - ] - }, - { - "shortName": "ListDataItems", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListDataItems", - "mode": "UNARY", - "bindings": [ + "path": "/v2/{name=projects/*/agent/sessions/*/entityTypes/*}" + }, { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/datasets/*}/dataItems" - } - ] - }, - { - "shortName": "ListDatasets", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListDatasets", - "mode": "UNARY", - "bindings": [ + "path": "/v2/{name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" + }, { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*}/datasets" + "path": "/v2/{name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" } ] }, { - "shortName": "ListEvaluationJobs", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListEvaluationJobs", + "shortName": "ListSessionEntityTypes", + "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes.ListSessionEntityTypes", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*}/evaluationJobs" + "path": "/v2/{parent=projects/*/agent/sessions/*}/entityTypes" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/agent/environments/*/users/*/sessions/*}/entityTypes" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/agent/sessions/*}/entityTypes" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/entityTypes" } ] }, { - "shortName": "ListExamples", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListExamples", + "shortName": "UpdateSessionEntityType", + "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes.UpdateSessionEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/datasets/*/annotatedDatasets/*}/examples" + "httpMethod": "PATCH", + "path": "/v2/{session_entity_type.name=projects/*/agent/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{session_entity_type.name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{session_entity_type.name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{session_entity_type.name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" } ] - }, + } + ] + }, + { + "shortName": "Sessions", + "fullName": "google.cloud.dialogflow.v2.Sessions", + "methods": [ { - "shortName": "ListInstructions", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ListInstructions", + "shortName": "DetectIntent", + "fullName": "google.cloud.dialogflow.v2.Sessions.DetectIntent", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*}/instructions" + "httpMethod": "POST", + "path": "/v2/{session=projects/*/agent/sessions/*}:detectIntent" + }, + { + "httpMethod": "POST", + "path": "/v2/{session=projects/*/agent/environments/*/users/*/sessions/*}:detectIntent" + }, + { + "httpMethod": "POST", + "path": "/v2/{session=projects/*/locations/*/agent/sessions/*}:detectIntent" + }, + { + "httpMethod": "POST", + "path": "/v2/{session=projects/*/locations/*/agent/environments/*/users/*/sessions/*}:detectIntent" } ] }, { - "shortName": "PauseEvaluationJob", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.PauseEvaluationJob", + "shortName": "StreamingDetectIntent", + "fullName": "google.cloud.dialogflow.v2.Sessions.StreamingDetectIntent", + "mode": "BIDIRECTIONAL_STREAMING" + } + ] + }, + { + "shortName": "Versions", + "fullName": "google.cloud.dialogflow.v2.Versions", + "methods": [ + { + "shortName": "CreateVersion", + "fullName": "google.cloud.dialogflow.v2.Versions.CreateVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/evaluationJobs/*}:pause" + "path": "/v2/{parent=projects/*/agent}/versions" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/agent}/versions" } ] }, { - "shortName": "ResumeEvaluationJob", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.ResumeEvaluationJob", + "shortName": "DeleteVersion", + "fullName": "google.cloud.dialogflow.v2.Versions.DeleteVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/evaluationJobs/*}:resume" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/agent/versions/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/agent/versions/*}" } ] }, { - "shortName": "SearchEvaluations", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.SearchEvaluations", + "shortName": "GetVersion", + "fullName": "google.cloud.dialogflow.v2.Versions.GetVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*}/evaluations:search" + "path": "/v2/{name=projects/*/agent/versions/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=projects/*/locations/*/agent/versions/*}" } ] }, { - "shortName": "SearchExampleComparisons", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.SearchExampleComparisons", + "shortName": "ListVersions", + "fullName": "google.cloud.dialogflow.v2.Versions.ListVersions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/datasets/*/evaluations/*}/exampleComparisons:search" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/agent}/versions" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/agent}/versions" } ] }, { - "shortName": "UpdateEvaluationJob", - "fullName": "google.cloud.datalabeling.v1beta1.DataLabelingService.UpdateEvaluationJob", + "shortName": "UpdateVersion", + "fullName": "google.cloud.dialogflow.v2.Versions.UpdateVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{evaluation_job.name=projects/*/evaluationJobs/*}" + "path": "/v2/{version.name=projects/*/agent/versions/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{version.name=projects/*/locations/*/agent/versions/*}" } ] } ] } - ] + ], + "configFile": "dialogflow_v2.yaml" }, { - "id": "google.cloud.dataproc.v1", - "directory": "google/cloud/dataproc/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "dataproc.googleapis.com", - "title": "Cloud Dataproc API", - "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", + "id": "google.cloud.dialogflow.v2beta1", + "directory": "google/cloud/dialogflow/v2beta1", + "version": "v2beta1", + "majorVersion": "v2", + "hostName": "dialogflow.googleapis.com", + "title": "Dialogflow API", + "description": "Builds conversational interfaces (for example, chatbots, and voice-powered apps and devices).", "importDirectories": [ "google/api", - "google/cloud/dataproc/v1", + "google/cloud/dialogflow/v2beta1", "google/longrunning", - "google/protobuf" + "google/protobuf", + "google/rpc", + "google/type" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.dataproc.v1": 6 + "true": 21 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 6 + "Google.Cloud.Dialogflow.V2beta1": 21 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/dataproc/v1;dataproc": 6 + "google.golang.org/genproto/googleapis/cloud/dialogflow/v2beta1;dialogflow": 21 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 21 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.dialogflow.v2beta1": 21 + } + }, + "objc_class_prefix": { + "valueCounts": { + "DF": 21 } } }, "services": [ { - "shortName": "AutoscalingPolicyService", - "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService", + "shortName": "Agents", + "fullName": "google.cloud.dialogflow.v2beta1.Agents", "methods": [ { - "shortName": "CreateAutoscalingPolicy", - "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService.CreateAutoscalingPolicy", + "shortName": "DeleteAgent", + "fullName": "google.cloud.dialogflow.v2beta1.Agents.DeleteAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/autoscalingPolicies" + "httpMethod": "DELETE", + "path": "/v2beta1/{parent=projects/*}/agent" }, { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/regions/*}/autoscalingPolicies" + "httpMethod": "DELETE", + "path": "/v2beta1/{parent=projects/*/locations/*}/agent" } ] }, { - "shortName": "DeleteAutoscalingPolicy", - "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService.DeleteAutoscalingPolicy", + "shortName": "ExportAgent", + "fullName": "google.cloud.dialogflow.v2beta1.Agents.ExportAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/autoscalingPolicies/*}" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*}/agent:export" }, { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/regions/*/autoscalingPolicies/*}" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*}/agent:export" } ] }, { - "shortName": "GetAutoscalingPolicy", - "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService.GetAutoscalingPolicy", + "shortName": "GetAgent", + "fullName": "google.cloud.dialogflow.v2beta1.Agents.GetAgent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/autoscalingPolicies/*}" + "path": "/v2beta1/{parent=projects/*}/agent" }, { "httpMethod": "GET", - "path": "/v1/{name=projects/*/regions/*/autoscalingPolicies/*}" + "path": "/v2beta1/{parent=projects/*/locations/*}/agent" } ] }, { - "shortName": "ListAutoscalingPolicies", - "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService.ListAutoscalingPolicies", + "shortName": "GetValidationResult", + "fullName": "google.cloud.dialogflow.v2beta1.Agents.GetValidationResult", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/autoscalingPolicies" + "path": "/v2beta1/{parent=projects/*}/agent/validationResult" }, { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/regions/*}/autoscalingPolicies" + "path": "/v2beta1/{parent=projects/*/locations/*}/agent/validationResult" } ] }, { - "shortName": "UpdateAutoscalingPolicy", - "fullName": "google.cloud.dataproc.v1.AutoscalingPolicyService.UpdateAutoscalingPolicy", + "shortName": "ImportAgent", + "fullName": "google.cloud.dialogflow.v2beta1.Agents.ImportAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "PUT", - "path": "/v1/{policy.name=projects/*/locations/*/autoscalingPolicies/*}" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*}/agent:import" }, - { - "httpMethod": "PUT", - "path": "/v1/{policy.name=projects/*/regions/*/autoscalingPolicies/*}" - } - ] - } - ] - }, - { - "shortName": "ClusterController", - "fullName": "google.cloud.dataproc.v1.ClusterController", - "methods": [ - { - "shortName": "CreateCluster", - "fullName": "google.cloud.dataproc.v1.ClusterController.CreateCluster", - "mode": "UNARY", - "bindings": [ { "httpMethod": "POST", - "path": "/v1/projects/{project_id}/regions/{region}/clusters" + "path": "/v2beta1/{parent=projects/*/locations/*}/agent:import" } ] }, { - "shortName": "DeleteCluster", - "fullName": "google.cloud.dataproc.v1.ClusterController.DeleteCluster", + "shortName": "RestoreAgent", + "fullName": "google.cloud.dialogflow.v2beta1.Agents.RestoreAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}" - } - ] - }, - { - "shortName": "DiagnoseCluster", - "fullName": "google.cloud.dataproc.v1.ClusterController.DiagnoseCluster", - "mode": "UNARY", - "bindings": [ + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*}/agent:restore" + }, { "httpMethod": "POST", - "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}:diagnose" + "path": "/v2beta1/{parent=projects/*/locations/*}/agent:restore" } ] }, { - "shortName": "GetCluster", - "fullName": "google.cloud.dataproc.v1.ClusterController.GetCluster", + "shortName": "SearchAgents", + "fullName": "google.cloud.dialogflow.v2beta1.Agents.SearchAgents", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}" - } - ] - }, - { - "shortName": "ListClusters", - "fullName": "google.cloud.dataproc.v1.ClusterController.ListClusters", - "mode": "UNARY", - "bindings": [ + "path": "/v2beta1/{parent=projects/*}/agent:search" + }, { "httpMethod": "GET", - "path": "/v1/projects/{project_id}/regions/{region}/clusters" + "path": "/v2beta1/{parent=projects/*/locations/*}/agent:search" } ] }, { - "shortName": "StartCluster", - "fullName": "google.cloud.dataproc.v1.ClusterController.StartCluster", + "shortName": "SetAgent", + "fullName": "google.cloud.dialogflow.v2beta1.Agents.SetAgent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}:start" - } - ] - }, - { - "shortName": "StopCluster", - "fullName": "google.cloud.dataproc.v1.ClusterController.StopCluster", - "mode": "UNARY", - "bindings": [ + "path": "/v2beta1/{agent.parent=projects/*}/agent" + }, { "httpMethod": "POST", - "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}:stop" + "path": "/v2beta1/{agent.parent=projects/*/locations/*}/agent" } ] }, { - "shortName": "UpdateCluster", - "fullName": "google.cloud.dataproc.v1.ClusterController.UpdateCluster", + "shortName": "TrainAgent", + "fullName": "google.cloud.dialogflow.v2beta1.Agents.TrainAgent", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*}/agent:train" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*}/agent:train" } ] } ] }, { - "shortName": "JobController", - "fullName": "google.cloud.dataproc.v1.JobController", + "shortName": "AnswerRecords", + "fullName": "google.cloud.dialogflow.v2beta1.AnswerRecords", "methods": [ { - "shortName": "CancelJob", - "fullName": "google.cloud.dataproc.v1.JobController.CancelJob", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1/projects/{project_id}/regions/{region}/jobs/{job_id}:cancel" - } - ] - }, - { - "shortName": "DeleteJob", - "fullName": "google.cloud.dataproc.v1.JobController.DeleteJob", + "shortName": "GetAnswerRecord", + "fullName": "google.cloud.dialogflow.v2beta1.AnswerRecords.GetAnswerRecord", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/projects/{project_id}/regions/{region}/jobs/{job_id}" - } - ] - }, - { - "shortName": "GetJob", - "fullName": "google.cloud.dataproc.v1.JobController.GetJob", - "mode": "UNARY", - "bindings": [ + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/answerRecords/*}" + }, { "httpMethod": "GET", - "path": "/v1/projects/{project_id}/regions/{region}/jobs/{job_id}" + "path": "/v2beta1/{name=projects/*/locations/*/answerRecords/*}" } ] }, { - "shortName": "ListJobs", - "fullName": "google.cloud.dataproc.v1.JobController.ListJobs", + "shortName": "ListAnswerRecords", + "fullName": "google.cloud.dialogflow.v2beta1.AnswerRecords.ListAnswerRecords", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/projects/{project_id}/regions/{region}/jobs" - } - ] - }, - { - "shortName": "SubmitJob", - "fullName": "google.cloud.dataproc.v1.JobController.SubmitJob", - "mode": "UNARY", - "bindings": [ + "path": "/v2beta1/{parent=projects/*}/answerRecords" + }, { - "httpMethod": "POST", - "path": "/v1/projects/{project_id}/regions/{region}/jobs:submit" + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*}/answerRecords" } ] }, { - "shortName": "SubmitJobAsOperation", - "fullName": "google.cloud.dataproc.v1.JobController.SubmitJobAsOperation", + "shortName": "UpdateAnswerRecord", + "fullName": "google.cloud.dialogflow.v2beta1.AnswerRecords.UpdateAnswerRecord", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/projects/{project_id}/regions/{region}/jobs:submitAsOperation" - } - ] - }, - { - "shortName": "UpdateJob", - "fullName": "google.cloud.dataproc.v1.JobController.UpdateJob", - "mode": "UNARY", - "bindings": [ + "httpMethod": "PATCH", + "path": "/v2beta1/{answer_record.name=projects/*/answerRecords/*}" + }, { "httpMethod": "PATCH", - "path": "/v1/projects/{project_id}/regions/{region}/jobs/{job_id}" + "path": "/v2beta1/{answer_record.name=projects/*/locations/*/answerRecords/*}" } ] } ] }, { - "shortName": "WorkflowTemplateService", - "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService", + "shortName": "Contexts", + "fullName": "google.cloud.dialogflow.v2beta1.Contexts", "methods": [ { - "shortName": "CreateWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.CreateWorkflowTemplate", + "shortName": "CreateContext", + "fullName": "google.cloud.dialogflow.v2beta1.Contexts.CreateContext", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/workflowTemplates" + "path": "/v2beta1/{parent=projects/*/agent/sessions/*}/contexts" }, { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/regions/*}/workflowTemplates" + "path": "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent/sessions/*}/contexts" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" } ] }, { - "shortName": "DeleteWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.DeleteWorkflowTemplate", + "shortName": "DeleteAllContexts", + "fullName": "google.cloud.dialogflow.v2beta1.Contexts.DeleteAllContexts", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/workflowTemplates/*}" + "path": "/v2beta1/{parent=projects/*/agent/sessions/*}/contexts" }, { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/regions/*/workflowTemplates/*}" + "path": "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{parent=projects/*/locations/*/agent/sessions/*}/contexts" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" } ] }, { - "shortName": "GetWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.GetWorkflowTemplate", + "shortName": "DeleteContext", + "fullName": "google.cloud.dialogflow.v2beta1.Contexts.DeleteContext", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/agent/sessions/*/contexts/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/locations/*/agent/sessions/*/contexts/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" + } + ] + }, + { + "shortName": "GetContext", + "fullName": "google.cloud.dialogflow.v2beta1.Contexts.GetContext", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/workflowTemplates/*}" + "path": "/v2beta1/{name=projects/*/agent/sessions/*/contexts/*}" }, { "httpMethod": "GET", - "path": "/v1/{name=projects/*/regions/*/workflowTemplates/*}" - } - ] - }, - { - "shortName": "InstantiateInlineWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.InstantiateInlineWorkflowTemplate", - "mode": "UNARY", - "bindings": [ + "path": "/v2beta1/{name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" + }, { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/workflowTemplates:instantiateInline" + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/locations/*/agent/sessions/*/contexts/*}" }, { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/regions/*}/workflowTemplates:instantiateInline" + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" } ] }, { - "shortName": "InstantiateWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.InstantiateWorkflowTemplate", + "shortName": "ListContexts", + "fullName": "google.cloud.dialogflow.v2beta1.Contexts.ListContexts", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/workflowTemplates/*}:instantiate" + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/agent/sessions/*}/contexts" }, { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/regions/*/workflowTemplates/*}:instantiate" - } - ] - }, - { - "shortName": "ListWorkflowTemplates", - "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.ListWorkflowTemplates", - "mode": "UNARY", - "bindings": [ + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" + }, { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/workflowTemplates" + "path": "/v2beta1/{parent=projects/*/locations/*/agent/sessions/*}/contexts" }, { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/regions/*}/workflowTemplates" + "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" } ] }, { - "shortName": "UpdateWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1.WorkflowTemplateService.UpdateWorkflowTemplate", + "shortName": "UpdateContext", + "fullName": "google.cloud.dialogflow.v2beta1.Contexts.UpdateContext", "mode": "UNARY", "bindings": [ { - "httpMethod": "PUT", - "path": "/v1/{template.name=projects/*/locations/*/workflowTemplates/*}" + "httpMethod": "PATCH", + "path": "/v2beta1/{context.name=projects/*/agent/sessions/*/contexts/*}" }, { - "httpMethod": "PUT", - "path": "/v1/{template.name=projects/*/regions/*/workflowTemplates/*}" + "httpMethod": "PATCH", + "path": "/v2beta1/{context.name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{context.name=projects/*/locations/*/agent/sessions/*/contexts/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{context.name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.dataproc.v1beta2", - "directory": "google/cloud/dataproc/v1beta2", - "version": "v1beta2", - "majorVersion": "v1", - "hostName": "dataproc.googleapis.com", - "title": "Cloud Dataproc API", - "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", - "importDirectories": [ - "google/api", - "google/cloud/dataproc/v1beta2", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.dataproc.v1beta2": 6 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 6 - } }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/dataproc/v1beta2;dataproc": 6 - } - } - }, - "services": [ { - "shortName": "AutoscalingPolicyService", - "fullName": "google.cloud.dataproc.v1beta2.AutoscalingPolicyService", + "shortName": "ConversationProfiles", + "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles", "methods": [ { - "shortName": "CreateAutoscalingPolicy", - "fullName": "google.cloud.dataproc.v1beta2.AutoscalingPolicyService.CreateAutoscalingPolicy", + "shortName": "CreateConversationProfile", + "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles.CreateConversationProfile", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*/locations/*}/autoscalingPolicies" + "path": "/v2beta1/{parent=projects/*}/conversationProfiles" }, { "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*/regions/*}/autoscalingPolicies" + "path": "/v2beta1/{parent=projects/*/locations/*}/conversationProfiles" } ] }, { - "shortName": "DeleteAutoscalingPolicy", - "fullName": "google.cloud.dataproc.v1beta2.AutoscalingPolicyService.DeleteAutoscalingPolicy", + "shortName": "DeleteConversationProfile", + "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles.DeleteConversationProfile", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta2/{name=projects/*/locations/*/autoscalingPolicies/*}" + "path": "/v2beta1/{name=projects/*/conversationProfiles/*}" }, { "httpMethod": "DELETE", - "path": "/v1beta2/{name=projects/*/regions/*/autoscalingPolicies/*}" + "path": "/v2beta1/{name=projects/*/locations/*/conversationProfiles/*}" } ] }, { - "shortName": "GetAutoscalingPolicy", - "fullName": "google.cloud.dataproc.v1beta2.AutoscalingPolicyService.GetAutoscalingPolicy", + "shortName": "GetConversationProfile", + "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta2/{name=projects/*/locations/*/autoscalingPolicies/*}" + "path": "/v2beta1/{name=projects/*/conversationProfiles/*}" }, { "httpMethod": "GET", - "path": "/v1beta2/{name=projects/*/regions/*/autoscalingPolicies/*}" + "path": "/v2beta1/{name=projects/*/locations/*/conversationProfiles/*}" } ] }, { - "shortName": "ListAutoscalingPolicies", - "fullName": "google.cloud.dataproc.v1beta2.AutoscalingPolicyService.ListAutoscalingPolicies", + "shortName": "ListConversationProfiles", + "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles.ListConversationProfiles", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta2/{parent=projects/*/locations/*}/autoscalingPolicies" + "path": "/v2beta1/{parent=projects/*}/conversationProfiles" }, { "httpMethod": "GET", - "path": "/v1beta2/{parent=projects/*/regions/*}/autoscalingPolicies" + "path": "/v2beta1/{parent=projects/*/locations/*}/conversationProfiles" } ] }, { - "shortName": "UpdateAutoscalingPolicy", - "fullName": "google.cloud.dataproc.v1beta2.AutoscalingPolicyService.UpdateAutoscalingPolicy", + "shortName": "UpdateConversationProfile", + "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles.UpdateConversationProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "PUT", - "path": "/v1beta2/{policy.name=projects/*/locations/*/autoscalingPolicies/*}" + "httpMethod": "PATCH", + "path": "/v2beta1/{conversation_profile.name=projects/*/conversationProfiles/*}" }, { - "httpMethod": "PUT", - "path": "/v1beta2/{policy.name=projects/*/regions/*/autoscalingPolicies/*}" + "httpMethod": "PATCH", + "path": "/v2beta1/{conversation_profile.name=projects/*/locations/*/conversationProfiles/*}" } ] } ] }, { - "shortName": "ClusterController", - "fullName": "google.cloud.dataproc.v1beta2.ClusterController", + "shortName": "Conversations", + "fullName": "google.cloud.dialogflow.v2beta1.Conversations", "methods": [ { - "shortName": "CreateCluster", - "fullName": "google.cloud.dataproc.v1beta2.ClusterController.CreateCluster", + "shortName": "BatchCreateMessages", + "fullName": "google.cloud.dialogflow.v2beta1.Conversations.BatchCreateMessages", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/projects/{project_id}/regions/{region}/clusters" + "path": "/v2beta1/{parent=projects/*/conversations/*}/messages:batchCreate" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*}/messages:batchCreate" } ] }, { - "shortName": "DeleteCluster", - "fullName": "google.cloud.dataproc.v1beta2.ClusterController.DeleteCluster", + "shortName": "CompleteConversation", + "fullName": "google.cloud.dialogflow.v2beta1.Conversations.CompleteConversation", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta2/projects/{project_id}/regions/{region}/clusters/{cluster_name}" + "httpMethod": "POST", + "path": "/v2beta1/{name=projects/*/conversations/*}:complete" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{name=projects/*/locations/*/conversations/*}:complete" } ] }, { - "shortName": "DiagnoseCluster", - "fullName": "google.cloud.dataproc.v1beta2.ClusterController.DiagnoseCluster", + "shortName": "CreateConversation", + "fullName": "google.cloud.dialogflow.v2beta1.Conversations.CreateConversation", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/projects/{project_id}/regions/{region}/clusters/{cluster_name}:diagnose" + "path": "/v2beta1/{parent=projects/*}/conversations" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*}/conversations" } ] }, { - "shortName": "GetCluster", - "fullName": "google.cloud.dataproc.v1beta2.ClusterController.GetCluster", + "shortName": "GetConversation", + "fullName": "google.cloud.dialogflow.v2beta1.Conversations.GetConversation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta2/projects/{project_id}/regions/{region}/clusters/{cluster_name}" + "path": "/v2beta1/{name=projects/*/conversations/*}" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/locations/*/conversations/*}" } ] }, { - "shortName": "ListClusters", - "fullName": "google.cloud.dataproc.v1beta2.ClusterController.ListClusters", + "shortName": "ListConversations", + "fullName": "google.cloud.dialogflow.v2beta1.Conversations.ListConversations", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta2/projects/{project_id}/regions/{region}/clusters" + "path": "/v2beta1/{parent=projects/*}/conversations" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*}/conversations" } ] }, { - "shortName": "UpdateCluster", - "fullName": "google.cloud.dataproc.v1beta2.ClusterController.UpdateCluster", + "shortName": "ListMessages", + "fullName": "google.cloud.dialogflow.v2beta1.Conversations.ListMessages", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta2/projects/{project_id}/regions/{region}/clusters/{cluster_name}" + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/conversations/*}/messages" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*}/messages" } ] } ] }, { - "shortName": "JobController", - "fullName": "google.cloud.dataproc.v1beta2.JobController", + "shortName": "Documents", + "fullName": "google.cloud.dialogflow.v2beta1.Documents", "methods": [ { - "shortName": "CancelJob", - "fullName": "google.cloud.dataproc.v1beta2.JobController.CancelJob", + "shortName": "CreateDocument", + "fullName": "google.cloud.dialogflow.v2beta1.Documents.CreateDocument", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/projects/{project_id}/regions/{region}/jobs/{job_id}:cancel" + "path": "/v2beta1/{parent=projects/*/knowledgeBases/*}/documents" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/knowledgeBases/*}/documents" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/agent/knowledgeBases/*}/documents" } ] }, { - "shortName": "DeleteJob", - "fullName": "google.cloud.dataproc.v1beta2.JobController.DeleteJob", + "shortName": "DeleteDocument", + "fullName": "google.cloud.dialogflow.v2beta1.Documents.DeleteDocument", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta2/projects/{project_id}/regions/{region}/jobs/{job_id}" + "path": "/v2beta1/{name=projects/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/locations/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/agent/knowledgeBases/*/documents/*}" } ] }, { - "shortName": "GetJob", - "fullName": "google.cloud.dataproc.v1beta2.JobController.GetJob", + "shortName": "GetDocument", + "fullName": "google.cloud.dialogflow.v2beta1.Documents.GetDocument", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta2/projects/{project_id}/regions/{region}/jobs/{job_id}" + "path": "/v2beta1/{name=projects/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/locations/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/agent/knowledgeBases/*/documents/*}" } ] }, { - "shortName": "ListJobs", - "fullName": "google.cloud.dataproc.v1beta2.JobController.ListJobs", + "shortName": "ImportDocuments", + "fullName": "google.cloud.dialogflow.v2beta1.Documents.ImportDocuments", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta2/projects/{project_id}/regions/{region}/jobs" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/knowledgeBases/*}/documents:import" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/knowledgeBases/*}/documents:import" } ] }, { - "shortName": "SubmitJob", - "fullName": "google.cloud.dataproc.v1beta2.JobController.SubmitJob", + "shortName": "ListDocuments", + "fullName": "google.cloud.dialogflow.v2beta1.Documents.ListDocuments", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/projects/{project_id}/regions/{region}/jobs:submit" + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/knowledgeBases/*}/documents" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*/knowledgeBases/*}/documents" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/agent/knowledgeBases/*}/documents" } ] }, { - "shortName": "SubmitJobAsOperation", - "fullName": "google.cloud.dataproc.v1beta2.JobController.SubmitJobAsOperation", + "shortName": "ReloadDocument", + "fullName": "google.cloud.dialogflow.v2beta1.Documents.ReloadDocument", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/projects/{project_id}/regions/{region}/jobs:submitAsOperation" + "path": "/v2beta1/{name=projects/*/knowledgeBases/*/documents/*}:reload" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{name=projects/*/locations/*/knowledgeBases/*/documents/*}:reload" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{name=projects/*/agent/knowledgeBases/*/documents/*}:reload" } ] }, { - "shortName": "UpdateJob", - "fullName": "google.cloud.dataproc.v1beta2.JobController.UpdateJob", + "shortName": "UpdateDocument", + "fullName": "google.cloud.dialogflow.v2beta1.Documents.UpdateDocument", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta2/projects/{project_id}/regions/{region}/jobs/{job_id}" + "path": "/v2beta1/{document.name=projects/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{document.name=projects/*/locations/*/knowledgeBases/*/documents/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{document.name=projects/*/agent/knowledgeBases/*/documents/*}" } ] } ] }, { - "shortName": "WorkflowTemplateService", - "fullName": "google.cloud.dataproc.v1beta2.WorkflowTemplateService", + "shortName": "EntityTypes", + "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes", "methods": [ { - "shortName": "CreateWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1beta2.WorkflowTemplateService.CreateWorkflowTemplate", + "shortName": "BatchCreateEntities", + "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.BatchCreateEntities", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*/regions/*}/workflowTemplates" + "path": "/v2beta1/{parent=projects/*/agent/entityTypes/*}/entities:batchCreate" }, { "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*/locations/*}/workflowTemplates" + "path": "/v2beta1/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchCreate" } ] }, { - "shortName": "DeleteWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1beta2.WorkflowTemplateService.DeleteWorkflowTemplate", + "shortName": "BatchDeleteEntities", + "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntities", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta2/{name=projects/*/regions/*/workflowTemplates/*}" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/agent/entityTypes/*}/entities:batchDelete" }, { - "httpMethod": "DELETE", - "path": "/v1beta2/{name=projects/*/locations/*/workflowTemplates/*}" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchDelete" } ] }, { - "shortName": "GetWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1beta2.WorkflowTemplateService.GetWorkflowTemplate", + "shortName": "BatchDeleteEntityTypes", + "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntityTypes", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta2/{name=projects/*/regions/*/workflowTemplates/*}" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/agent}/entityTypes:batchDelete" }, { - "httpMethod": "GET", - "path": "/v1beta2/{name=projects/*/locations/*/workflowTemplates/*}" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/entityTypes:batchDelete" } ] }, { - "shortName": "InstantiateInlineWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1beta2.WorkflowTemplateService.InstantiateInlineWorkflowTemplate", + "shortName": "BatchUpdateEntities", + "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntities", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*/locations/*}/workflowTemplates:instantiateInline" + "path": "/v2beta1/{parent=projects/*/agent/entityTypes/*}/entities:batchUpdate" }, { "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*/regions/*}/workflowTemplates:instantiateInline" + "path": "/v2beta1/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchUpdate" } ] }, { - "shortName": "InstantiateWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1beta2.WorkflowTemplateService.InstantiateWorkflowTemplate", + "shortName": "BatchUpdateEntityTypes", + "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/{name=projects/*/regions/*/workflowTemplates/*}:instantiate" + "path": "/v2beta1/{parent=projects/*/agent}/entityTypes:batchUpdate" }, { "httpMethod": "POST", - "path": "/v1beta2/{name=projects/*/locations/*/workflowTemplates/*}:instantiate" + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/entityTypes:batchUpdate" } ] }, { - "shortName": "ListWorkflowTemplates", - "fullName": "google.cloud.dataproc.v1beta2.WorkflowTemplateService.ListWorkflowTemplates", + "shortName": "CreateEntityType", + "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.CreateEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta2/{parent=projects/*/regions/*}/workflowTemplates" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/agent}/entityTypes" }, { - "httpMethod": "GET", - "path": "/v1beta2/{parent=projects/*/locations/*}/workflowTemplates" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/entityTypes" } ] }, { - "shortName": "UpdateWorkflowTemplate", - "fullName": "google.cloud.dataproc.v1beta2.WorkflowTemplateService.UpdateWorkflowTemplate", + "shortName": "DeleteEntityType", + "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.DeleteEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "PUT", - "path": "/v1beta2/{template.name=projects/*/regions/*/workflowTemplates/*}" + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/agent/entityTypes/*}" }, { - "httpMethod": "PUT", - "path": "/v1beta2/{template.name=projects/*/locations/*/workflowTemplates/*}" - } - ] - } - ] - } - ] - }, - { - "id": "google.cloud.dataqna.v1alpha", - "directory": "google/cloud/dataqna/v1alpha", - "version": "v1alpha", - "majorVersion": "v1", - "hostName": "dataqna.googleapis.com", - "title": "Data QnA API", - "description": "Data QnA is a natural language question and answer service for BigQuery data.", - "importDirectories": [ - "google/api", - "google/cloud/dataqna/v1alpha", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.dataqna.v1alpha": 5 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 5 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/dataqna/v1alpha;dataqna": 5 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.DataQnA.V1Alpha": 5 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\DataQnA\\V1alpha": 5 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::DataQnA::V1alpha": 5 - } - } - }, - "services": [ - { - "shortName": "AutoSuggestionService", - "fullName": "google.cloud.dataqna.v1alpha.AutoSuggestionService", - "methods": [ - { - "shortName": "SuggestQueries", - "fullName": "google.cloud.dataqna.v1alpha.AutoSuggestionService.SuggestQueries", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1alpha/{parent=projects/*/locations/*}:suggestQueries" - } - ] - } - ] - }, - { - "shortName": "QuestionService", - "fullName": "google.cloud.dataqna.v1alpha.QuestionService", - "methods": [ - { - "shortName": "CreateQuestion", - "fullName": "google.cloud.dataqna.v1alpha.QuestionService.CreateQuestion", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1alpha/{parent=projects/*/locations/*}/questions" + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/locations/*/agent/entityTypes/*}" } ] }, { - "shortName": "ExecuteQuestion", - "fullName": "google.cloud.dataqna.v1alpha.QuestionService.ExecuteQuestion", + "shortName": "GetEntityType", + "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.GetEntityType", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha/{name=projects/*/locations/*/questions/*}:execute" - } - ] - }, - { - "shortName": "GetQuestion", - "fullName": "google.cloud.dataqna.v1alpha.QuestionService.GetQuestion", - "mode": "UNARY", - "bindings": [ + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/agent/entityTypes/*}" + }, { "httpMethod": "GET", - "path": "/v1alpha/{name=projects/*/locations/*/questions/*}" + "path": "/v2beta1/{name=projects/*/locations/*/agent/entityTypes/*}" } ] }, { - "shortName": "GetUserFeedback", - "fullName": "google.cloud.dataqna.v1alpha.QuestionService.GetUserFeedback", + "shortName": "ListEntityTypes", + "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.ListEntityTypes", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{name=projects/*/locations/*/questions/*/userFeedback}" + "path": "/v2beta1/{parent=projects/*/agent}/entityTypes" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/entityTypes" } ] }, { - "shortName": "UpdateUserFeedback", - "fullName": "google.cloud.dataqna.v1alpha.QuestionService.UpdateUserFeedback", + "shortName": "UpdateEntityType", + "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.UpdateEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1alpha/{user_feedback.name=projects/*/locations/*/questions/*/userFeedback}" + "path": "/v2beta1/{entity_type.name=projects/*/agent/entityTypes/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{entity_type.name=projects/*/locations/*/agent/entityTypes/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.dialogflow.cx.v3", - "directory": "google/cloud/dialogflow/cx/v3", - "version": "v3", - "majorVersion": "v3", - "hostName": "dialogflow.googleapis.com", - "title": "Dialogflow API", - "description": "Builds conversational interfaces (for example, chatbots, and voice-powered apps and devices).", - "importDirectories": [ - "google/api", - "google/cloud/dialogflow/cx/v3", - "google/longrunning", - "google/protobuf", - "google/rpc", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.dialogflow.cx.v3": 18 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 18 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/dialogflow/cx/v3;cx": 18 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 18 - } - }, - "objc_class_prefix": { - "valueCounts": { - "DF": 18 - } }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Dialogflow.Cx.V3": 18 - } - } - }, - "services": [ { - "shortName": "Agents", - "fullName": "google.cloud.dialogflow.cx.v3.Agents", + "shortName": "Environments", + "fullName": "google.cloud.dialogflow.v2beta1.Environments", "methods": [ { - "shortName": "CreateAgent", - "fullName": "google.cloud.dialogflow.cx.v3.Agents.CreateAgent", + "shortName": "CreateEnvironment", + "fullName": "google.cloud.dialogflow.v2beta1.Environments.CreateEnvironment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/agent}/environments" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/environments" + } + ] + }, + { + "shortName": "DeleteEnvironment", + "fullName": "google.cloud.dialogflow.v2beta1.Environments.DeleteEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*}/agents" + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/agent/environments/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*}" } ] }, { - "shortName": "DeleteAgent", - "fullName": "google.cloud.dialogflow.cx.v3.Agents.DeleteAgent", + "shortName": "GetEnvironment", + "fullName": "google.cloud.dialogflow.v2beta1.Environments.GetEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*}" + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/agent/environments/*}" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*}" } ] }, { - "shortName": "ExportAgent", - "fullName": "google.cloud.dialogflow.cx.v3.Agents.ExportAgent", + "shortName": "GetEnvironmentHistory", + "fullName": "google.cloud.dialogflow.v2beta1.Environments.GetEnvironmentHistory", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{name=projects/*/locations/*/agents/*}:export" + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/agent/environments/*}/history" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*}/history" } ] }, { - "shortName": "GetAgent", - "fullName": "google.cloud.dialogflow.cx.v3.Agents.GetAgent", + "shortName": "ListEnvironments", + "fullName": "google.cloud.dialogflow.v2beta1.Environments.ListEnvironments", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*}" + "path": "/v2beta1/{parent=projects/*/agent}/environments" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/environments" } ] }, { - "shortName": "GetAgentValidationResult", - "fullName": "google.cloud.dialogflow.cx.v3.Agents.GetAgentValidationResult", + "shortName": "UpdateEnvironment", + "fullName": "google.cloud.dialogflow.v2beta1.Environments.UpdateEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/validationResult}" + "httpMethod": "PATCH", + "path": "/v2beta1/{environment.name=projects/*/agent/environments/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{environment.name=projects/*/locations/*/agent/environments/*}" } ] - }, + } + ] + }, + { + "shortName": "Fulfillments", + "fullName": "google.cloud.dialogflow.v2beta1.Fulfillments", + "methods": [ { - "shortName": "ListAgents", - "fullName": "google.cloud.dialogflow.cx.v3.Agents.ListAgents", + "shortName": "GetFulfillment", + "fullName": "google.cloud.dialogflow.v2beta1.Fulfillments.GetFulfillment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*}/agents" + "path": "/v2beta1/{name=projects/*/agent/fulfillment}" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/locations/*/agent/fulfillment}" } ] }, { - "shortName": "RestoreAgent", - "fullName": "google.cloud.dialogflow.cx.v3.Agents.RestoreAgent", + "shortName": "UpdateFulfillment", + "fullName": "google.cloud.dialogflow.v2beta1.Fulfillments.UpdateFulfillment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{name=projects/*/locations/*/agents/*}:restore" + "httpMethod": "PATCH", + "path": "/v2beta1/{fulfillment.name=projects/*/agent/fulfillment}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{fulfillment.name=projects/*/locations/*/agent/fulfillment}" } ] - }, + } + ] + }, + { + "shortName": "Intents", + "fullName": "google.cloud.dialogflow.v2beta1.Intents", + "methods": [ { - "shortName": "UpdateAgent", - "fullName": "google.cloud.dialogflow.cx.v3.Agents.UpdateAgent", + "shortName": "BatchDeleteIntents", + "fullName": "google.cloud.dialogflow.v2beta1.Intents.BatchDeleteIntents", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v3/{agent.name=projects/*/locations/*/agents/*}" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/agent}/intents:batchDelete" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/intents:batchDelete" } ] }, { - "shortName": "ValidateAgent", - "fullName": "google.cloud.dialogflow.cx.v3.Agents.ValidateAgent", + "shortName": "BatchUpdateIntents", + "fullName": "google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{name=projects/*/locations/*/agents/*}:validate" + "path": "/v2beta1/{parent=projects/*/agent}/intents:batchUpdate" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/intents:batchUpdate" } ] - } - ] - }, - { - "shortName": "EntityTypes", - "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes", - "methods": [ + }, { - "shortName": "CreateEntityType", - "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes.CreateEntityType", + "shortName": "CreateIntent", + "fullName": "google.cloud.dialogflow.v2beta1.Intents.CreateIntent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/entityTypes" + "path": "/v2beta1/{parent=projects/*/agent}/intents" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/intents" } ] }, { - "shortName": "DeleteEntityType", - "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes.DeleteEntityType", + "shortName": "DeleteIntent", + "fullName": "google.cloud.dialogflow.v2beta1.Intents.DeleteIntent", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*/entityTypes/*}" + "path": "/v2beta1/{name=projects/*/agent/intents/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/locations/*/agent/intents/*}" } ] }, { - "shortName": "GetEntityType", - "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes.GetEntityType", + "shortName": "GetIntent", + "fullName": "google.cloud.dialogflow.v2beta1.Intents.GetIntent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/entityTypes/*}" + "path": "/v2beta1/{name=projects/*/agent/intents/*}" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/locations/*/agent/intents/*}" } ] }, { - "shortName": "ListEntityTypes", - "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes.ListEntityTypes", + "shortName": "ListIntents", + "fullName": "google.cloud.dialogflow.v2beta1.Intents.ListIntents", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/entityTypes" + "path": "/v2beta1/{parent=projects/*/agent}/intents" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/intents" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/agent/environments/*}/intents" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*}/intents" } ] }, { - "shortName": "UpdateEntityType", - "fullName": "google.cloud.dialogflow.cx.v3.EntityTypes.UpdateEntityType", + "shortName": "UpdateIntent", + "fullName": "google.cloud.dialogflow.v2beta1.Intents.UpdateIntent", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3/{entity_type.name=projects/*/locations/*/agents/*/entityTypes/*}" + "path": "/v2beta1/{intent.name=projects/*/agent/intents/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{intent.name=projects/*/locations/*/agent/intents/*}" } ] } ] }, { - "shortName": "Environments", - "fullName": "google.cloud.dialogflow.cx.v3.Environments", + "shortName": "KnowledgeBases", + "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases", "methods": [ { - "shortName": "CreateEnvironment", - "fullName": "google.cloud.dialogflow.cx.v3.Environments.CreateEnvironment", + "shortName": "CreateKnowledgeBase", + "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases.CreateKnowledgeBase", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/environments" + "path": "/v2beta1/{parent=projects/*}/knowledgeBases" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*}/knowledgeBases" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/agent}/knowledgeBases" } ] }, { - "shortName": "DeleteEnvironment", - "fullName": "google.cloud.dialogflow.cx.v3.Environments.DeleteEnvironment", + "shortName": "DeleteKnowledgeBase", + "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases.DeleteKnowledgeBase", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*}" + "path": "/v2beta1/{name=projects/*/knowledgeBases/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/locations/*/knowledgeBases/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/agent/knowledgeBases/*}" } ] }, { - "shortName": "GetEnvironment", - "fullName": "google.cloud.dialogflow.cx.v3.Environments.GetEnvironment", + "shortName": "GetKnowledgeBase", + "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases.GetKnowledgeBase", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*}" + "path": "/v2beta1/{name=projects/*/knowledgeBases/*}" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/locations/*/knowledgeBases/*}" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/agent/knowledgeBases/*}" } ] }, { - "shortName": "ListContinuousTestResults", - "fullName": "google.cloud.dialogflow.cx.v3.Environments.ListContinuousTestResults", + "shortName": "ListKnowledgeBases", + "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*/environments/*}/continuousTestResults" + "path": "/v2beta1/{parent=projects/*}/knowledgeBases" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*}/knowledgeBases" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/agent}/knowledgeBases" } ] }, { - "shortName": "ListEnvironments", - "fullName": "google.cloud.dialogflow.cx.v3.Environments.ListEnvironments", + "shortName": "UpdateKnowledgeBase", + "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases.UpdateKnowledgeBase", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/environments" + "httpMethod": "PATCH", + "path": "/v2beta1/{knowledge_base.name=projects/*/knowledgeBases/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{knowledge_base.name=projects/*/locations/*/knowledgeBases/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{knowledge_base.name=projects/*/agent/knowledgeBases/*}" } ] - }, + } + ] + }, + { + "shortName": "Participants", + "fullName": "google.cloud.dialogflow.v2beta1.Participants", + "methods": [ { - "shortName": "LookupEnvironmentHistory", - "fullName": "google.cloud.dialogflow.cx.v3.Environments.LookupEnvironmentHistory", + "shortName": "AnalyzeContent", + "fullName": "google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*}:lookupEnvironmentHistory" + "httpMethod": "POST", + "path": "/v2beta1/{participant=projects/*/conversations/*/participants/*}:analyzeContent" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{participant=projects/*/locations/*/conversations/*/participants/*}:analyzeContent" } ] }, { - "shortName": "RunContinuousTest", - "fullName": "google.cloud.dialogflow.cx.v3.Environments.RunContinuousTest", + "shortName": "CompileSuggestion", + "fullName": "google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{environment=projects/*/locations/*/agents/*/environments/*}:runContinuousTest" + "path": "/v2beta1/{parent=projects/*/conversations/*/participants/*}/suggestions:compile" } ] }, { - "shortName": "UpdateEnvironment", - "fullName": "google.cloud.dialogflow.cx.v3.Environments.UpdateEnvironment", + "shortName": "CreateParticipant", + "fullName": "google.cloud.dialogflow.v2beta1.Participants.CreateParticipant", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v3/{environment.name=projects/*/locations/*/agents/*/environments/*}" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/conversations/*}/participants" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*}/participants" } ] - } - ] - }, - { - "shortName": "Experiments", - "fullName": "google.cloud.dialogflow.cx.v3.Experiments", - "methods": [ + }, { - "shortName": "CreateExperiment", - "fullName": "google.cloud.dialogflow.cx.v3.Experiments.CreateExperiment", + "shortName": "GetParticipant", + "fullName": "google.cloud.dialogflow.v2beta1.Participants.GetParticipant", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*/environments/*}/experiments" + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/conversations/*/participants/*}" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/locations/*/conversations/*/participants/*}" } ] }, { - "shortName": "DeleteExperiment", - "fullName": "google.cloud.dialogflow.cx.v3.Experiments.DeleteExperiment", + "shortName": "ListParticipants", + "fullName": "google.cloud.dialogflow.v2beta1.Participants.ListParticipants", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}" + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/conversations/*}/participants" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*}/participants" } ] }, { - "shortName": "GetExperiment", - "fullName": "google.cloud.dialogflow.cx.v3.Experiments.GetExperiment", + "shortName": "ListSuggestions", + "fullName": "google.cloud.dialogflow.v2beta1.Participants.ListSuggestions", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}" + "path": "/v2beta1/{parent=projects/*/conversations/*/participants/*}/suggestions" } ] }, { - "shortName": "ListExperiments", - "fullName": "google.cloud.dialogflow.cx.v3.Experiments.ListExperiments", + "shortName": "SuggestArticles", + "fullName": "google.cloud.dialogflow.v2beta1.Participants.SuggestArticles", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*/environments/*}/experiments" + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestArticles" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestArticles" } ] }, { - "shortName": "StartExperiment", - "fullName": "google.cloud.dialogflow.cx.v3.Experiments.StartExperiment", + "shortName": "SuggestFaqAnswers", + "fullName": "google.cloud.dialogflow.v2beta1.Participants.SuggestFaqAnswers", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}:start" + "path": "/v2beta1/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers" } ] }, { - "shortName": "StopExperiment", - "fullName": "google.cloud.dialogflow.cx.v3.Experiments.StopExperiment", + "shortName": "SuggestSmartReplies", + "fullName": "google.cloud.dialogflow.v2beta1.Participants.SuggestSmartReplies", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}:stop" + "path": "/v2beta1/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestSmartReplies" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestSmartReplies" } ] }, { - "shortName": "UpdateExperiment", - "fullName": "google.cloud.dialogflow.cx.v3.Experiments.UpdateExperiment", + "shortName": "UpdateParticipant", + "fullName": "google.cloud.dialogflow.v2beta1.Participants.UpdateParticipant", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3/{experiment.name=projects/*/locations/*/agents/*/environments/*/experiments/*}" + "path": "/v2beta1/{participant.name=projects/*/conversations/*/participants/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{participant.name=projects/*/locations/*/conversations/*/participants/*}" } ] } ] }, { - "shortName": "Flows", - "fullName": "google.cloud.dialogflow.cx.v3.Flows", + "shortName": "SessionEntityTypes", + "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes", "methods": [ { - "shortName": "CreateFlow", - "fullName": "google.cloud.dialogflow.cx.v3.Flows.CreateFlow", + "shortName": "CreateSessionEntityType", + "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes.CreateSessionEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/flows" + "path": "/v2beta1/{parent=projects/*/agent/sessions/*}/entityTypes" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/entityTypes" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent/sessions/*}/entityTypes" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/entityTypes" } ] }, { - "shortName": "DeleteFlow", - "fullName": "google.cloud.dialogflow.cx.v3.Flows.DeleteFlow", + "shortName": "DeleteSessionEntityType", + "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes.DeleteSessionEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*}" - } - ] - }, - { - "shortName": "ExportFlow", - "fullName": "google.cloud.dialogflow.cx.v3.Flows.ExportFlow", - "mode": "UNARY", - "bindings": [ + "path": "/v2beta1/{name=projects/*/agent/sessions/*/entityTypes/*}" + }, { - "httpMethod": "POST", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*}:export" + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" } ] }, { - "shortName": "GetFlow", - "fullName": "google.cloud.dialogflow.cx.v3.Flows.GetFlow", + "shortName": "GetSessionEntityType", + "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes.GetSessionEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*}" - } - ] - }, - { - "shortName": "GetFlowValidationResult", - "fullName": "google.cloud.dialogflow.cx.v3.Flows.GetFlowValidationResult", - "mode": "UNARY", - "bindings": [ + "path": "/v2beta1/{name=projects/*/agent/sessions/*/entityTypes/*}" + }, { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/validationResult}" - } - ] - }, - { - "shortName": "ImportFlow", - "fullName": "google.cloud.dialogflow.cx.v3.Flows.ImportFlow", - "mode": "UNARY", - "bindings": [ + "path": "/v2beta1/{name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" + }, { - "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/flows:import" - } - ] - }, - { - "shortName": "ListFlows", - "fullName": "google.cloud.dialogflow.cx.v3.Flows.ListFlows", - "mode": "UNARY", - "bindings": [ + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" + }, { "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/flows" + "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" } ] }, { - "shortName": "TrainFlow", - "fullName": "google.cloud.dialogflow.cx.v3.Flows.TrainFlow", + "shortName": "ListSessionEntityTypes", + "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*}:train" + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/agent/sessions/*}/entityTypes" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/entityTypes" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*/agent/sessions/*}/entityTypes" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/entityTypes" } ] }, { - "shortName": "UpdateFlow", - "fullName": "google.cloud.dialogflow.cx.v3.Flows.UpdateFlow", + "shortName": "UpdateSessionEntityType", + "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes.UpdateSessionEntityType", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3/{flow.name=projects/*/locations/*/agents/*/flows/*}" + "path": "/v2beta1/{session_entity_type.name=projects/*/agent/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{session_entity_type.name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{session_entity_type.name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{session_entity_type.name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" } ] - }, + } + ] + }, + { + "shortName": "Sessions", + "fullName": "google.cloud.dialogflow.v2beta1.Sessions", + "methods": [ { - "shortName": "ValidateFlow", - "fullName": "google.cloud.dialogflow.cx.v3.Flows.ValidateFlow", + "shortName": "DetectIntent", + "fullName": "google.cloud.dialogflow.v2beta1.Sessions.DetectIntent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*}:validate" + "path": "/v2beta1/{session=projects/*/agent/sessions/*}:detectIntent" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{session=projects/*/agent/environments/*/users/*/sessions/*}:detectIntent" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{session=projects/*/locations/*/agent/sessions/*}:detectIntent" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{session=projects/*/locations/*/agent/environments/*/users/*/sessions/*}:detectIntent" } ] + }, + { + "shortName": "StreamingDetectIntent", + "fullName": "google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent", + "mode": "BIDIRECTIONAL_STREAMING" } ] }, { - "shortName": "Intents", - "fullName": "google.cloud.dialogflow.cx.v3.Intents", + "shortName": "Versions", + "fullName": "google.cloud.dialogflow.v2beta1.Versions", "methods": [ { - "shortName": "CreateIntent", - "fullName": "google.cloud.dialogflow.cx.v3.Intents.CreateIntent", + "shortName": "CreateVersion", + "fullName": "google.cloud.dialogflow.v2beta1.Versions.CreateVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/intents" + "path": "/v2beta1/{parent=projects/*/agent}/versions" + }, + { + "httpMethod": "POST", + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/versions" } ] }, { - "shortName": "DeleteIntent", - "fullName": "google.cloud.dialogflow.cx.v3.Intents.DeleteIntent", + "shortName": "DeleteVersion", + "fullName": "google.cloud.dialogflow.v2beta1.Versions.DeleteVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*/intents/*}" + "path": "/v2beta1/{name=projects/*/agent/versions/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2beta1/{name=projects/*/locations/*/agent/versions/*}" } ] }, { - "shortName": "GetIntent", - "fullName": "google.cloud.dialogflow.cx.v3.Intents.GetIntent", + "shortName": "GetVersion", + "fullName": "google.cloud.dialogflow.v2beta1.Versions.GetVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/intents/*}" + "path": "/v2beta1/{name=projects/*/agent/versions/*}" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{name=projects/*/locations/*/agent/versions/*}" } ] }, { - "shortName": "ListIntents", - "fullName": "google.cloud.dialogflow.cx.v3.Intents.ListIntents", + "shortName": "ListVersions", + "fullName": "google.cloud.dialogflow.v2beta1.Versions.ListVersions", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/intents" + "path": "/v2beta1/{parent=projects/*/agent}/versions" + }, + { + "httpMethod": "GET", + "path": "/v2beta1/{parent=projects/*/locations/*/agent}/versions" } ] }, { - "shortName": "UpdateIntent", - "fullName": "google.cloud.dialogflow.cx.v3.Intents.UpdateIntent", + "shortName": "UpdateVersion", + "fullName": "google.cloud.dialogflow.v2beta1.Versions.UpdateVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3/{intent.name=projects/*/locations/*/agents/*/intents/*}" + "path": "/v2beta1/{version.name=projects/*/agent/versions/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2beta1/{version.name=projects/*/locations/*/agent/versions/*}" } ] } ] + } + ], + "configFile": "dialogflow_v2beta1.yaml" + }, + { + "id": "google.cloud.documentai.v1", + "directory": "google/cloud/documentai/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "documentai.googleapis.com", + "title": "Cloud Document AI API", + "description": "Service to parse structured information from unstructured or semi-structured documents using state-of-the-art Google AI such as natural language, computer vision, translation, and AutoML.", + "importDirectories": [ + "google/api", + "google/cloud/documentai/v1", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/type" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.DocumentAI.V1": 5 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/documentai/v1;documentai": 5 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 5 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.documentai.v1": 5 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\DocumentAI\\V1": 5 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::DocumentAI::V1": 5 + } + } + }, + "services": [ { - "shortName": "Pages", - "fullName": "google.cloud.dialogflow.cx.v3.Pages", + "shortName": "DocumentProcessorService", + "fullName": "google.cloud.documentai.v1.DocumentProcessorService", "methods": [ { - "shortName": "CreatePage", - "fullName": "google.cloud.dialogflow.cx.v3.Pages.CreatePage", + "shortName": "BatchProcessDocuments", + "fullName": "google.cloud.documentai.v1.DocumentProcessorService.BatchProcessDocuments", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/pages" + "path": "/v1/{name=projects/*/locations/*/processors/*}:batchProcess" } ] }, { - "shortName": "DeletePage", - "fullName": "google.cloud.dialogflow.cx.v3.Pages.DeletePage", + "shortName": "ProcessDocument", + "fullName": "google.cloud.documentai.v1.DocumentProcessorService.ProcessDocument", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/pages/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/processors/*}:process" } ] }, { - "shortName": "GetPage", - "fullName": "google.cloud.dialogflow.cx.v3.Pages.GetPage", + "shortName": "ReviewDocument", + "fullName": "google.cloud.documentai.v1.DocumentProcessorService.ReviewDocument", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/pages/*}" + "httpMethod": "POST", + "path": "/v1/{human_review_config=projects/*/locations/*/processors/*/humanReviewConfig}:reviewDocument" } ] - }, + } + ] + } + ], + "configFile": "documentai_v1.yaml" + }, + { + "id": "google.cloud.documentai.v1beta2", + "directory": "google/cloud/documentai/v1beta2", + "version": "v1beta2", + "majorVersion": "v1", + "hostName": "documentai.googleapis.com", + "title": "Cloud Document AI API", + "description": "Service to parse structured information from unstructured or semi-structured documents using state-of-the-art Google AI such as natural language, computer vision, translation, and AutoML.", + "importDirectories": [ + "google/api", + "google/cloud/documentai/v1beta2", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/type" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.DocumentAI.V1Beta2": 3 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/documentai/v1beta2;documentai": 3 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 3 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.documentai.v1beta2": 3 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\DocumentAI\\V1beta2": 3 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::DocumentAI::V1beta2": 3 + } + } + }, + "services": [ + { + "shortName": "DocumentUnderstandingService", + "fullName": "google.cloud.documentai.v1beta2.DocumentUnderstandingService", + "methods": [ { - "shortName": "ListPages", - "fullName": "google.cloud.dialogflow.cx.v3.Pages.ListPages", + "shortName": "BatchProcessDocuments", + "fullName": "google.cloud.documentai.v1beta2.DocumentUnderstandingService.BatchProcessDocuments", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/pages" + "httpMethod": "POST", + "path": "/v1beta2/{parent=projects/*/locations/*}/documents:batchProcess" + }, + { + "httpMethod": "POST", + "path": "/v1beta2/{parent=projects/*}/documents:batchProcess" } ] }, { - "shortName": "UpdatePage", - "fullName": "google.cloud.dialogflow.cx.v3.Pages.UpdatePage", + "shortName": "ProcessDocument", + "fullName": "google.cloud.documentai.v1beta2.DocumentUnderstandingService.ProcessDocument", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v3/{page.name=projects/*/locations/*/agents/*/flows/*/pages/*}" + "httpMethod": "POST", + "path": "/v1beta2/{parent=projects/*/locations/*}/documents:process" + }, + { + "httpMethod": "POST", + "path": "/v1beta2/{parent=projects/*}/documents:process" } ] } ] + } + ], + "configFile": "documentai_v1beta2.yaml" + }, + { + "id": "google.cloud.documentai.v1beta3", + "directory": "google/cloud/documentai/v1beta3", + "version": "v1beta3", + "majorVersion": "v1", + "hostName": "documentai.googleapis.com", + "title": "Cloud Document AI API", + "description": "Service to parse structured information from unstructured or semi-structured documents using state-of-the-art Google AI such as natural language, computer vision, translation, and AutoML.", + "importDirectories": [ + "google/api", + "google/cloud/documentai/v1beta3", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/type" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.DocumentAI.V1Beta3": 7 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/documentai/v1beta3;documentai": 7 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 7 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.documentai.v1beta3": 7 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\DocumentAI\\V1beta3": 7 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::DocumentAI::V1beta3": 7 + } + } + }, + "services": [ { - "shortName": "SecuritySettingsService", - "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService", + "shortName": "DocumentProcessorService", + "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService", "methods": [ { - "shortName": "CreateSecuritySettings", - "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService.CreateSecuritySettings", + "shortName": "BatchProcessDocuments", + "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.BatchProcessDocuments", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*}/securitySettings" + "path": "/v1beta3/{name=projects/*/locations/*/processors/*}:batchProcess" } ] }, { - "shortName": "DeleteSecuritySettings", - "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService.DeleteSecuritySettings", + "shortName": "CreateProcessor", + "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.CreateProcessor", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/securitySettings/*}" + "httpMethod": "POST", + "path": "/v1beta3/{parent=projects/*/locations/*}/processors" } ] }, { - "shortName": "GetSecuritySettings", - "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService.GetSecuritySettings", + "shortName": "DeleteProcessor", + "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.DeleteProcessor", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/securitySettings/*}" + "httpMethod": "DELETE", + "path": "/v1beta3/{name=projects/*/locations/*/processors/*}" } ] }, { - "shortName": "ListSecuritySettings", - "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService.ListSecuritySettings", + "shortName": "DisableProcessor", + "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.DisableProcessor", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*}/securitySettings" + "httpMethod": "POST", + "path": "/v1beta3/{name=projects/*/locations/*/processors/*}:disable" } ] }, { - "shortName": "UpdateSecuritySettings", - "fullName": "google.cloud.dialogflow.cx.v3.SecuritySettingsService.UpdateSecuritySettings", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v3/{security_settings.name=projects/*/locations/*/securitySettings/*}" - } - ] - } - ] - }, - { - "shortName": "SessionEntityTypes", - "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes", - "methods": [ - { - "shortName": "CreateSessionEntityType", - "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes.CreateSessionEntityType", + "shortName": "EnableProcessor", + "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.EnableProcessor", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*/sessions/*}/entityTypes" - }, - { - "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*/environments/*/sessions/*}/entityTypes" + "path": "/v1beta3/{name=projects/*/locations/*/processors/*}:enable" } ] }, { - "shortName": "DeleteSessionEntityType", - "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes.DeleteSessionEntityType", + "shortName": "FetchProcessorTypes", + "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.FetchProcessorTypes", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" + "httpMethod": "GET", + "path": "/v1beta3/{parent=projects/*/locations/*}:fetchProcessorTypes" } ] }, { - "shortName": "GetSessionEntityType", - "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes.GetSessionEntityType", + "shortName": "ListProcessors", + "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.ListProcessors", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" + "path": "/v1beta3/{parent=projects/*/locations/*}/processors" } ] }, { - "shortName": "ListSessionEntityTypes", - "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes.ListSessionEntityTypes", + "shortName": "ProcessDocument", + "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.ProcessDocument", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*/sessions/*}/entityTypes" - }, - { - "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*/environments/*/sessions/*}/entityTypes" + "httpMethod": "POST", + "path": "/v1beta3/{name=projects/*/locations/*/processors/*}:process" } ] }, { - "shortName": "UpdateSessionEntityType", - "fullName": "google.cloud.dialogflow.cx.v3.SessionEntityTypes.UpdateSessionEntityType", + "shortName": "ReviewDocument", + "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.ReviewDocument", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v3/{session_entity_type.name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v3/{session_entity_type.name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" + "httpMethod": "POST", + "path": "/v1beta3/{human_review_config=projects/*/locations/*/processors/*/humanReviewConfig}:reviewDocument" } ] } ] + } + ], + "configFile": "documentai_v1beta3.yaml" + }, + { + "id": "google.cloud.domains.v1", + "directory": "google/cloud/domains/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "domains.googleapis.com", + "title": "Cloud Domains API", + "description": "Enables management and configuration of domain names.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf", + "google/type" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/domains/v1;domains": 1 + } }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.domains.v1": 1 + } + } + }, + "services": [ { - "shortName": "Sessions", - "fullName": "google.cloud.dialogflow.cx.v3.Sessions", + "shortName": "Domains", + "fullName": "google.cloud.domains.v1.Domains", "methods": [ { - "shortName": "DetectIntent", - "fullName": "google.cloud.dialogflow.cx.v3.Sessions.DetectIntent", + "shortName": "ConfigureContactSettings", + "fullName": "google.cloud.domains.v1.Domains.ConfigureContactSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{session=projects/*/locations/*/agents/*/sessions/*}:detectIntent" - }, - { - "httpMethod": "POST", - "path": "/v3/{session=projects/*/locations/*/agents/*/environments/*/sessions/*}:detectIntent" + "path": "/v1/{registration=projects/*/locations/*/registrations/*}:configureContactSettings" } ] }, { - "shortName": "FulfillIntent", - "fullName": "google.cloud.dialogflow.cx.v3.Sessions.FulfillIntent", + "shortName": "ConfigureDnsSettings", + "fullName": "google.cloud.domains.v1.Domains.ConfigureDnsSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{match_intent_request.session=projects/*/locations/*/agents/*/sessions/*}:fulfillIntent" - }, - { - "httpMethod": "POST", - "path": "/v3/{match_intent_request.session=projects/*/locations/*/agents/*/environments/*/sessions/*}:fulfillIntent" + "path": "/v1/{registration=projects/*/locations/*/registrations/*}:configureDnsSettings" } ] }, { - "shortName": "MatchIntent", - "fullName": "google.cloud.dialogflow.cx.v3.Sessions.MatchIntent", + "shortName": "ConfigureManagementSettings", + "fullName": "google.cloud.domains.v1.Domains.ConfigureManagementSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{session=projects/*/locations/*/agents/*/sessions/*}:matchIntent" - }, - { - "httpMethod": "POST", - "path": "/v3/{session=projects/*/locations/*/agents/*/environments/*/sessions/*}:matchIntent" + "path": "/v1/{registration=projects/*/locations/*/registrations/*}:configureManagementSettings" } ] }, { - "shortName": "StreamingDetectIntent", - "fullName": "google.cloud.dialogflow.cx.v3.Sessions.StreamingDetectIntent", - "mode": "BIDIRECTIONAL_STREAMING" - } - ] - }, - { - "shortName": "TestCases", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases", - "methods": [ - { - "shortName": "BatchDeleteTestCases", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.BatchDeleteTestCases", + "shortName": "DeleteRegistration", + "fullName": "google.cloud.domains.v1.Domains.DeleteRegistration", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases:batchDelete" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/registrations/*}" } ] }, { - "shortName": "BatchRunTestCases", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.BatchRunTestCases", + "shortName": "ExportRegistration", + "fullName": "google.cloud.domains.v1.Domains.ExportRegistration", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases:batchRun" + "path": "/v1/{name=projects/*/locations/*/registrations/*}:export" } ] }, { - "shortName": "CalculateCoverage", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.CalculateCoverage", + "shortName": "GetRegistration", + "fullName": "google.cloud.domains.v1.Domains.GetRegistration", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{agent=projects/*/locations/*/agents/*}/testCases:calculateCoverage" + "path": "/v1/{name=projects/*/locations/*/registrations/*}" } ] }, { - "shortName": "CreateTestCase", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.CreateTestCase", + "shortName": "ListRegistrations", + "fullName": "google.cloud.domains.v1.Domains.ListRegistrations", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/registrations" } ] }, { - "shortName": "ExportTestCases", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.ExportTestCases", + "shortName": "RegisterDomain", + "fullName": "google.cloud.domains.v1.Domains.RegisterDomain", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases:export" + "path": "/v1/{parent=projects/*/locations/*}/registrations:register" } ] }, { - "shortName": "GetTestCase", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.GetTestCase", + "shortName": "ResetAuthorizationCode", + "fullName": "google.cloud.domains.v1.Domains.ResetAuthorizationCode", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/testCases/*}" + "httpMethod": "POST", + "path": "/v1/{registration=projects/*/locations/*/registrations/*}:resetAuthorizationCode" } ] }, { - "shortName": "GetTestCaseResult", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.GetTestCaseResult", + "shortName": "RetrieveAuthorizationCode", + "fullName": "google.cloud.domains.v1.Domains.RetrieveAuthorizationCode", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/testCases/*/results/*}" + "path": "/v1/{registration=projects/*/locations/*/registrations/*}:retrieveAuthorizationCode" } ] }, { - "shortName": "ImportTestCases", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.ImportTestCases", + "shortName": "RetrieveRegisterParameters", + "fullName": "google.cloud.domains.v1.Domains.RetrieveRegisterParameters", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases:import" + "httpMethod": "GET", + "path": "/v1/{location=projects/*/locations/*}/registrations:retrieveRegisterParameters" } ] }, { - "shortName": "ListTestCaseResults", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.ListTestCaseResults", + "shortName": "RetrieveTransferParameters", + "fullName": "google.cloud.domains.v1.Domains.RetrieveTransferParameters", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*/testCases/*}/results" + "path": "/v1/{location=projects/*/locations/*}/registrations:retrieveTransferParameters" } ] }, { - "shortName": "ListTestCases", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.ListTestCases", + "shortName": "SearchDomains", + "fullName": "google.cloud.domains.v1.Domains.SearchDomains", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/testCases" + "path": "/v1/{location=projects/*/locations/*}/registrations:searchDomains" } ] }, { - "shortName": "RunTestCase", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.RunTestCase", + "shortName": "TransferDomain", + "fullName": "google.cloud.domains.v1.Domains.TransferDomain", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{name=projects/*/locations/*/agents/*/testCases/*}:run" + "path": "/v1/{parent=projects/*/locations/*}/registrations:transfer" } ] }, { - "shortName": "UpdateTestCase", - "fullName": "google.cloud.dialogflow.cx.v3.TestCases.UpdateTestCase", + "shortName": "UpdateRegistration", + "fullName": "google.cloud.domains.v1.Domains.UpdateRegistration", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3/{test_case.name=projects/*/locations/*/agents/*/testCases/*}" + "path": "/v1/{registration.name=projects/*/locations/*/registrations/*}" } ] } ] + } + ], + "configFile": "domains_v1.yaml" + }, + { + "id": "google.cloud.domains.v1alpha2", + "directory": "google/cloud/domains/v1alpha2", + "version": "v1alpha2", + "majorVersion": "v1", + "hostName": "domains.googleapis.com", + "title": "Cloud Domains API", + "description": "Enables management and configuration of domain names.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf", + "google/type" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/domains/v1alpha2;domains": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } }, + "java_package": { + "valueCounts": { + "com.google.cloud.domains.v1alpha2": 1 + } + } + }, + "services": [ { - "shortName": "TransitionRouteGroups", - "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups", + "shortName": "Domains", + "fullName": "google.cloud.domains.v1alpha2.Domains", "methods": [ { - "shortName": "CreateTransitionRouteGroup", - "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups.CreateTransitionRouteGroup", + "shortName": "ConfigureContactSettings", + "fullName": "google.cloud.domains.v1alpha2.Domains.ConfigureContactSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/transitionRouteGroups" + "path": "/v1alpha2/{registration=projects/*/locations/*/registrations/*}:configureContactSettings" } ] }, { - "shortName": "DeleteTransitionRouteGroup", - "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups.DeleteTransitionRouteGroup", + "shortName": "ConfigureDnsSettings", + "fullName": "google.cloud.domains.v1alpha2.Domains.ConfigureDnsSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" + "httpMethod": "POST", + "path": "/v1alpha2/{registration=projects/*/locations/*/registrations/*}:configureDnsSettings" } ] }, { - "shortName": "GetTransitionRouteGroup", - "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups.GetTransitionRouteGroup", + "shortName": "ConfigureManagementSettings", + "fullName": "google.cloud.domains.v1alpha2.Domains.ConfigureManagementSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" + "httpMethod": "POST", + "path": "/v1alpha2/{registration=projects/*/locations/*/registrations/*}:configureManagementSettings" } ] }, { - "shortName": "ListTransitionRouteGroups", - "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups.ListTransitionRouteGroups", + "shortName": "DeleteRegistration", + "fullName": "google.cloud.domains.v1alpha2.Domains.DeleteRegistration", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/transitionRouteGroups" + "httpMethod": "DELETE", + "path": "/v1alpha2/{name=projects/*/locations/*/registrations/*}" } ] }, { - "shortName": "UpdateTransitionRouteGroup", - "fullName": "google.cloud.dialogflow.cx.v3.TransitionRouteGroups.UpdateTransitionRouteGroup", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v3/{transition_route_group.name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" - } - ] - } - ] - }, - { - "shortName": "Versions", - "fullName": "google.cloud.dialogflow.cx.v3.Versions", - "methods": [ - { - "shortName": "CreateVersion", - "fullName": "google.cloud.dialogflow.cx.v3.Versions.CreateVersion", + "shortName": "ExportRegistration", + "fullName": "google.cloud.domains.v1alpha2.Domains.ExportRegistration", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/versions" + "path": "/v1alpha2/{name=projects/*/locations/*/registrations/*}:export" } ] }, { - "shortName": "DeleteVersion", - "fullName": "google.cloud.dialogflow.cx.v3.Versions.DeleteVersion", + "shortName": "GetRegistration", + "fullName": "google.cloud.domains.v1alpha2.Domains.GetRegistration", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/versions/*}" + "httpMethod": "GET", + "path": "/v1alpha2/{name=projects/*/locations/*/registrations/*}" } ] }, { - "shortName": "GetVersion", - "fullName": "google.cloud.dialogflow.cx.v3.Versions.GetVersion", + "shortName": "ListRegistrations", + "fullName": "google.cloud.domains.v1alpha2.Domains.ListRegistrations", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/versions/*}" + "path": "/v1alpha2/{parent=projects/*/locations/*}/registrations" } ] }, { - "shortName": "ListVersions", - "fullName": "google.cloud.dialogflow.cx.v3.Versions.ListVersions", + "shortName": "RegisterDomain", + "fullName": "google.cloud.domains.v1alpha2.Domains.RegisterDomain", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/versions" + "httpMethod": "POST", + "path": "/v1alpha2/{parent=projects/*/locations/*}/registrations:register" } ] }, { - "shortName": "LoadVersion", - "fullName": "google.cloud.dialogflow.cx.v3.Versions.LoadVersion", + "shortName": "ResetAuthorizationCode", + "fullName": "google.cloud.domains.v1alpha2.Domains.ResetAuthorizationCode", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{name=projects/*/locations/*/agents/*/flows/*/versions/*}:load" + "path": "/v1alpha2/{registration=projects/*/locations/*/registrations/*}:resetAuthorizationCode" } ] }, { - "shortName": "UpdateVersion", - "fullName": "google.cloud.dialogflow.cx.v3.Versions.UpdateVersion", + "shortName": "RetrieveAuthorizationCode", + "fullName": "google.cloud.domains.v1alpha2.Domains.RetrieveAuthorizationCode", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v3/{version.name=projects/*/locations/*/agents/*/flows/*/versions/*}" + "httpMethod": "GET", + "path": "/v1alpha2/{registration=projects/*/locations/*/registrations/*}:retrieveAuthorizationCode" } ] - } - ] - }, - { - "shortName": "Webhooks", - "fullName": "google.cloud.dialogflow.cx.v3.Webhooks", - "methods": [ + }, { - "shortName": "CreateWebhook", - "fullName": "google.cloud.dialogflow.cx.v3.Webhooks.CreateWebhook", + "shortName": "RetrieveRegisterParameters", + "fullName": "google.cloud.domains.v1alpha2.Domains.RetrieveRegisterParameters", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/webhooks" + "httpMethod": "GET", + "path": "/v1alpha2/{location=projects/*/locations/*}/registrations:retrieveRegisterParameters" } ] }, { - "shortName": "DeleteWebhook", - "fullName": "google.cloud.dialogflow.cx.v3.Webhooks.DeleteWebhook", + "shortName": "RetrieveTransferParameters", + "fullName": "google.cloud.domains.v1alpha2.Domains.RetrieveTransferParameters", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/agents/*/webhooks/*}" + "httpMethod": "GET", + "path": "/v1alpha2/{location=projects/*/locations/*}/registrations:retrieveTransferParameters" } ] }, { - "shortName": "GetWebhook", - "fullName": "google.cloud.dialogflow.cx.v3.Webhooks.GetWebhook", + "shortName": "SearchDomains", + "fullName": "google.cloud.domains.v1alpha2.Domains.SearchDomains", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/agents/*/webhooks/*}" + "path": "/v1alpha2/{location=projects/*/locations/*}/registrations:searchDomains" } ] }, { - "shortName": "ListWebhooks", - "fullName": "google.cloud.dialogflow.cx.v3.Webhooks.ListWebhooks", + "shortName": "TransferDomain", + "fullName": "google.cloud.domains.v1alpha2.Domains.TransferDomain", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*/agents/*}/webhooks" + "httpMethod": "POST", + "path": "/v1alpha2/{parent=projects/*/locations/*}/registrations:transfer" } ] }, { - "shortName": "UpdateWebhook", - "fullName": "google.cloud.dialogflow.cx.v3.Webhooks.UpdateWebhook", + "shortName": "UpdateRegistration", + "fullName": "google.cloud.domains.v1alpha2.Domains.UpdateRegistration", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3/{webhook.name=projects/*/locations/*/agents/*/webhooks/*}" + "path": "/v1alpha2/{registration.name=projects/*/locations/*/registrations/*}" } ] } ] } - ] + ], + "configFile": "domains_v1alpha2.yaml" }, { - "id": "google.cloud.dialogflow.cx.v3beta1", - "directory": "google/cloud/dialogflow/cx/v3beta1", - "version": "v3beta1", - "majorVersion": "v3", - "hostName": "dialogflow.googleapis.com", - "title": "Dialogflow API", - "description": "Builds conversational interfaces (for example, chatbots, and voice-powered apps and devices).", + "id": "google.cloud.domains.v1beta1", + "directory": "google/cloud/domains/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "domains.googleapis.com", + "title": "Cloud Domains API", + "description": "Enables management and configuration of domain names.", "importDirectories": [ "google/api", - "google/cloud/dialogflow/cx/v3beta1", "google/longrunning", "google/protobuf", - "google/rpc", "google/type" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.dialogflow.cx.v3beta1": 18 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 18 - } - }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/dialogflow/cx/v3beta1;cx": 18 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 18 + "google.golang.org/genproto/googleapis/cloud/domains/v1beta1;domains": 1 } }, - "objc_class_prefix": { + "java_multiple_files": { "valueCounts": { - "DF": 18 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Dialogflow.Cx.V3Beta1": 18 + "com.google.cloud.domains.v1beta1": 1 } } }, "services": [ { - "shortName": "Agents", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents", + "shortName": "Domains", + "fullName": "google.cloud.domains.v1beta1.Domains", "methods": [ { - "shortName": "CreateAgent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.CreateAgent", + "shortName": "ConfigureContactSettings", + "fullName": "google.cloud.domains.v1beta1.Domains.ConfigureContactSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*}/agents" + "path": "/v1beta1/{registration=projects/*/locations/*/registrations/*}:configureContactSettings" } ] }, { - "shortName": "DeleteAgent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.DeleteAgent", + "shortName": "ConfigureDnsSettings", + "fullName": "google.cloud.domains.v1beta1.Domains.ConfigureDnsSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*}" + "httpMethod": "POST", + "path": "/v1beta1/{registration=projects/*/locations/*/registrations/*}:configureDnsSettings" } ] }, { - "shortName": "ExportAgent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.ExportAgent", + "shortName": "ConfigureManagementSettings", + "fullName": "google.cloud.domains.v1beta1.Domains.ConfigureManagementSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*}:export" + "path": "/v1beta1/{registration=projects/*/locations/*/registrations/*}:configureManagementSettings" } ] }, { - "shortName": "GetAgent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.GetAgent", + "shortName": "DeleteRegistration", + "fullName": "google.cloud.domains.v1beta1.Domains.DeleteRegistration", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/registrations/*}" } ] }, { - "shortName": "GetAgentValidationResult", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.GetAgentValidationResult", + "shortName": "ExportRegistration", + "fullName": "google.cloud.domains.v1beta1.Domains.ExportRegistration", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/validationResult}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/registrations/*}:export" } ] }, { - "shortName": "ListAgents", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.ListAgents", + "shortName": "GetRegistration", + "fullName": "google.cloud.domains.v1beta1.Domains.GetRegistration", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*}/agents" + "path": "/v1beta1/{name=projects/*/locations/*/registrations/*}" } ] }, { - "shortName": "RestoreAgent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.RestoreAgent", + "shortName": "ListRegistrations", + "fullName": "google.cloud.domains.v1beta1.Domains.ListRegistrations", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*}:restore" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/registrations" } ] }, { - "shortName": "UpdateAgent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.UpdateAgent", + "shortName": "RegisterDomain", + "fullName": "google.cloud.domains.v1beta1.Domains.RegisterDomain", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v3beta1/{agent.name=projects/*/locations/*/agents/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/registrations:register" } ] }, { - "shortName": "ValidateAgent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Agents.ValidateAgent", + "shortName": "ResetAuthorizationCode", + "fullName": "google.cloud.domains.v1beta1.Domains.ResetAuthorizationCode", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*}:validate" + "path": "/v1beta1/{registration=projects/*/locations/*/registrations/*}:resetAuthorizationCode" } ] - } - ] - }, - { - "shortName": "EntityTypes", - "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes", - "methods": [ + }, { - "shortName": "CreateEntityType", - "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes.CreateEntityType", + "shortName": "RetrieveAuthorizationCode", + "fullName": "google.cloud.domains.v1beta1.Domains.RetrieveAuthorizationCode", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/entityTypes" + "httpMethod": "GET", + "path": "/v1beta1/{registration=projects/*/locations/*/registrations/*}:retrieveAuthorizationCode" } ] }, { - "shortName": "DeleteEntityType", - "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes.DeleteEntityType", + "shortName": "RetrieveRegisterParameters", + "fullName": "google.cloud.domains.v1beta1.Domains.RetrieveRegisterParameters", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/entityTypes/*}" + "httpMethod": "GET", + "path": "/v1beta1/{location=projects/*/locations/*}/registrations:retrieveRegisterParameters" } ] }, { - "shortName": "GetEntityType", - "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes.GetEntityType", + "shortName": "RetrieveTransferParameters", + "fullName": "google.cloud.domains.v1beta1.Domains.RetrieveTransferParameters", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/entityTypes/*}" + "path": "/v1beta1/{location=projects/*/locations/*}/registrations:retrieveTransferParameters" } ] }, { - "shortName": "ListEntityTypes", - "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes.ListEntityTypes", + "shortName": "SearchDomains", + "fullName": "google.cloud.domains.v1beta1.Domains.SearchDomains", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/entityTypes" + "path": "/v1beta1/{location=projects/*/locations/*}/registrations:searchDomains" } ] }, { - "shortName": "UpdateEntityType", - "fullName": "google.cloud.dialogflow.cx.v3beta1.EntityTypes.UpdateEntityType", + "shortName": "TransferDomain", + "fullName": "google.cloud.domains.v1beta1.Domains.TransferDomain", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/registrations:transfer" + } + ] + }, + { + "shortName": "UpdateRegistration", + "fullName": "google.cloud.domains.v1beta1.Domains.UpdateRegistration", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3beta1/{entity_type.name=projects/*/locations/*/agents/*/entityTypes/*}" + "path": "/v1beta1/{registration.name=projects/*/locations/*/registrations/*}" } ] } ] + } + ], + "configFile": "domains_v1beta1.yaml" + }, + { + "id": "google.cloud.essentialcontacts.v1", + "directory": "google/cloud/essentialcontacts/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "essentialcontacts.googleapis.com", + "title": "Essential Contacts API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/essentialcontacts/v1", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.EssentialContacts.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/essentialcontacts/v1;essentialcontacts": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.essentialcontacts.v1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\EssentialContacts\\V1": 2 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::EssentialContacts::V1": 2 + } + } + }, + "services": [ { - "shortName": "Environments", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments", + "shortName": "EssentialContactsService", + "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService", "methods": [ { - "shortName": "CreateEnvironment", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.CreateEnvironment", + "shortName": "ComputeContacts", + "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.ComputeContacts", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/environments" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/contacts:compute" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=folders/*}/contacts:compute" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=organizations/*}/contacts:compute" } ] }, { - "shortName": "DeleteEnvironment", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.DeleteEnvironment", + "shortName": "CreateContact", + "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.CreateContact", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*}/contacts" + }, + { + "httpMethod": "POST", + "path": "/v1/{parent=folders/*}/contacts" + }, + { + "httpMethod": "POST", + "path": "/v1/{parent=organizations/*}/contacts" } ] }, { - "shortName": "GetEnvironment", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.GetEnvironment", + "shortName": "DeleteContact", + "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.DeleteContact", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/contacts/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v1/{name=folders/*/contacts/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v1/{name=organizations/*/contacts/*}" } ] }, { - "shortName": "ListContinuousTestResults", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.ListContinuousTestResults", + "shortName": "GetContact", + "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.GetContact", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/environments/*}/continuousTestResults" + "path": "/v1/{name=projects/*/contacts/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=folders/*/contacts/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=organizations/*/contacts/*}" } ] }, { - "shortName": "ListEnvironments", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.ListEnvironments", + "shortName": "ListContacts", + "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.ListContacts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/environments" + "path": "/v1/{parent=projects/*}/contacts" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=folders/*}/contacts" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=organizations/*}/contacts" } ] }, { - "shortName": "LookupEnvironmentHistory", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.LookupEnvironmentHistory", + "shortName": "SendTestMessage", + "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.SendTestMessage", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*}:lookupEnvironmentHistory" + "httpMethod": "POST", + "path": "/v1/{resource=projects/*}/contacts:sendTestMessage" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=folders/*}/contacts:sendTestMessage" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=organizations/*}/contacts:sendTestMessage" } ] }, { - "shortName": "RunContinuousTest", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.RunContinuousTest", + "shortName": "UpdateContact", + "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.UpdateContact", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{environment=projects/*/locations/*/agents/*/environments/*}:runContinuousTest" + "httpMethod": "PATCH", + "path": "/v1/{contact.name=projects/*/contacts/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{contact.name=folders/*/contacts/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{contact.name=organizations/*/contacts/*}" } ] - }, + } + ] + } + ], + "configFile": "essentialcontacts_v1.yaml" + }, + { + "id": "google.cloud.eventarc.publishing.v1", + "directory": "google/cloud/eventarc/publishing/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "eventarcpublishing.googleapis.com", + "title": "Eventarc Publishing API", + "description": "", + "importDirectories": [ + "google/api", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Eventarc.Publishing.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/eventarc/publishing/v1;publisher": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.eventarc.publishing.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Eventarc\\Publishing\\V1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Eventarc::Publishing::V1": 1 + } + } + }, + "services": [ + { + "shortName": "Publisher", + "fullName": "google.cloud.eventarc.publishing.v1.Publisher", + "methods": [ { - "shortName": "UpdateEnvironment", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Environments.UpdateEnvironment", + "shortName": "PublishChannelConnectionEvents", + "fullName": "google.cloud.eventarc.publishing.v1.Publisher.PublishChannelConnectionEvents", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v3beta1/{environment.name=projects/*/locations/*/agents/*/environments/*}" + "httpMethod": "POST", + "path": "/v1/{channel_connection=projects/*/locations/*/channelConnections/*}:publishEvents" } ] } ] + } + ], + "configFile": "eventarcpublishing_v1.yaml" + }, + { + "id": "google.cloud.eventarc.v1", + "directory": "google/cloud/eventarc/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "eventarc.googleapis.com", + "title": "Eventarc API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/eventarc/v1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "": 1, + "Google.Cloud.Eventarc.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/eventarc/v1;eventarc": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.eventarc.v1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "": 1, + "Google\\Cloud\\Eventarc\\V1": 1 + } }, + "ruby_package": { + "valueCounts": { + "": 1, + "Google::Cloud::Eventarc::V1": 1 + } + } + }, + "services": [ { - "shortName": "Experiments", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments", + "shortName": "Eventarc", + "fullName": "google.cloud.eventarc.v1.Eventarc", "methods": [ { - "shortName": "CreateExperiment", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.CreateExperiment", + "shortName": "CreateTrigger", + "fullName": "google.cloud.eventarc.v1.Eventarc.CreateTrigger", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/environments/*}/experiments" + "path": "/v1/{parent=projects/*/locations/*}/triggers" } ] }, { - "shortName": "DeleteExperiment", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.DeleteExperiment", + "shortName": "DeleteTrigger", + "fullName": "google.cloud.eventarc.v1.Eventarc.DeleteTrigger", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}" + "path": "/v1/{name=projects/*/locations/*/triggers/*}" } ] }, { - "shortName": "GetExperiment", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.GetExperiment", + "shortName": "GetTrigger", + "fullName": "google.cloud.eventarc.v1.Eventarc.GetTrigger", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}" + "path": "/v1/{name=projects/*/locations/*/triggers/*}" } ] }, { - "shortName": "ListExperiments", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.ListExperiments", + "shortName": "ListTriggers", + "fullName": "google.cloud.eventarc.v1.Eventarc.ListTriggers", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/environments/*}/experiments" + "path": "/v1/{parent=projects/*/locations/*}/triggers" } ] }, { - "shortName": "StartExperiment", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.StartExperiment", + "shortName": "UpdateTrigger", + "fullName": "google.cloud.eventarc.v1.Eventarc.UpdateTrigger", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}:start" + "httpMethod": "PATCH", + "path": "/v1/{trigger.name=projects/*/locations/*/triggers/*}" } ] - }, + } + ] + } + ], + "configFile": "eventarc_v1.yaml" + }, + { + "id": "google.cloud.filestore.v1", + "directory": "google/cloud/filestore/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "file.googleapis.com", + "title": "Cloud Filestore API", + "description": "The Cloud Filestore API is used for creating and managing cloud file servers.", + "importDirectories": [ + "google/api", + "google/cloud/common", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Filestore.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/filestore/v1;filestore": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.filestore.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Filestore\\V1": 1 + } + } + }, + "services": [ + { + "shortName": "CloudFilestoreManager", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager", + "methods": [ { - "shortName": "StopExperiment", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.StopExperiment", + "shortName": "CreateBackup", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager.CreateBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/experiments/*}:stop" + "path": "/v1/{parent=projects/*/locations/*}/backups" } ] }, { - "shortName": "UpdateExperiment", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Experiments.UpdateExperiment", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v3beta1/{experiment.name=projects/*/locations/*/agents/*/environments/*/experiments/*}" - } - ] - } - ] - }, - { - "shortName": "Flows", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows", - "methods": [ - { - "shortName": "CreateFlow", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.CreateFlow", + "shortName": "CreateInstance", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager.CreateInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/flows" + "path": "/v1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "DeleteFlow", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.DeleteFlow", + "shortName": "DeleteBackup", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager.DeleteBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*}" + "path": "/v1/{name=projects/*/locations/*/backups/*}" } ] }, { - "shortName": "ExportFlow", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.ExportFlow", + "shortName": "DeleteInstance", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager.DeleteInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*}:export" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "GetFlow", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.GetFlow", + "shortName": "GetBackup", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager.GetBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*}" + "path": "/v1/{name=projects/*/locations/*/backups/*}" } ] }, { - "shortName": "GetFlowValidationResult", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.GetFlowValidationResult", + "shortName": "GetInstance", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager.GetInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/validationResult}" + "path": "/v1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "ImportFlow", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.ImportFlow", + "shortName": "ListBackups", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager.ListBackups", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/flows:import" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/backups" } ] }, { - "shortName": "ListFlows", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.ListFlows", + "shortName": "ListInstances", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager.ListInstances", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/flows" + "path": "/v1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "TrainFlow", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.TrainFlow", + "shortName": "RestoreInstance", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager.RestoreInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*}:train" + "path": "/v1/{name=projects/*/locations/*/instances/*}:restore" } ] }, { - "shortName": "UpdateFlow", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.UpdateFlow", + "shortName": "UpdateBackup", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager.UpdateBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3beta1/{flow.name=projects/*/locations/*/agents/*/flows/*}" + "path": "/v1/{backup.name=projects/*/locations/*/backups/*}" } ] }, { - "shortName": "ValidateFlow", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Flows.ValidateFlow", + "shortName": "UpdateInstance", + "fullName": "google.cloud.filestore.v1.CloudFilestoreManager.UpdateInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*}:validate" + "httpMethod": "PATCH", + "path": "/v1/{instance.name=projects/*/locations/*/instances/*}" } ] } ] + } + ], + "configFile": "file_v1.yaml" + }, + { + "id": "google.cloud.filestore.v1beta1", + "directory": "google/cloud/filestore/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "file.googleapis.com", + "title": "Cloud Filestore API", + "description": "The Cloud Filestore API is used for creating and managing cloud file servers.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Filestore.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/filestore/v1beta1;filestore": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.filestore.v1beta1": 1 + } }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Filestore\\V1beta1": 1 + } + } + }, + "services": [ { - "shortName": "Intents", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents", + "shortName": "CloudFilestoreManager", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager", "methods": [ { - "shortName": "CreateIntent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents.CreateIntent", + "shortName": "CreateBackup", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager.CreateBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/intents" + "path": "/v1beta1/{parent=projects/*/locations/*}/backups" } ] }, { - "shortName": "DeleteIntent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents.DeleteIntent", + "shortName": "CreateInstance", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager.CreateInstance", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/instances" + } + ] + }, + { + "shortName": "DeleteBackup", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager.DeleteBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/intents/*}" + "path": "/v1beta1/{name=projects/*/locations/*/backups/*}" } ] }, { - "shortName": "GetIntent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents.GetIntent", + "shortName": "DeleteInstance", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager.DeleteInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/intents/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "ListIntents", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents.ListIntents", + "shortName": "GetBackup", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager.GetBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/intents" + "path": "/v1beta1/{name=projects/*/locations/*/backups/*}" } ] }, { - "shortName": "UpdateIntent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Intents.UpdateIntent", + "shortName": "GetInstance", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager.GetInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v3beta1/{intent.name=projects/*/locations/*/agents/*/intents/*}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" } ] - } - ] - }, - { - "shortName": "Pages", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages", - "methods": [ + }, { - "shortName": "CreatePage", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages.CreatePage", + "shortName": "ListBackups", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager.ListBackups", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/pages" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/backups" } ] }, { - "shortName": "DeletePage", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages.DeletePage", + "shortName": "ListInstances", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager.ListInstances", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/pages/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "GetPage", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages.GetPage", + "shortName": "RestoreInstance", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager.RestoreInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/pages/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:restore" } ] }, { - "shortName": "ListPages", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages.ListPages", + "shortName": "UpdateBackup", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager.UpdateBackup", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/pages" + "httpMethod": "PATCH", + "path": "/v1beta1/{backup.name=projects/*/locations/*/backups/*}" } ] }, { - "shortName": "UpdatePage", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Pages.UpdatePage", + "shortName": "UpdateInstance", + "fullName": "google.cloud.filestore.v1beta1.CloudFilestoreManager.UpdateInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3beta1/{page.name=projects/*/locations/*/agents/*/flows/*/pages/*}" + "path": "/v1beta1/{instance.name=projects/*/locations/*/instances/*}" } ] } ] + } + ], + "configFile": "file_v1beta1.yaml" + }, + { + "id": "google.cloud.functions.v1", + "directory": "google/cloud/functions/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "cloudfunctions.googleapis.com", + "title": "Cloud Functions API", + "description": "Manages lightweight user-provided functions executed in response to events.", + "importDirectories": [ + "google/api", + "google/iam/v1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/functions/v1;functions": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.functions.v1": 2 + } }, + "objc_class_prefix": { + "valueCounts": { + "": 1, + "GCF": 1 + } + } + }, + "services": [ { - "shortName": "SecuritySettingsService", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService", + "shortName": "CloudFunctionsService", + "fullName": "google.cloud.functions.v1.CloudFunctionsService", "methods": [ { - "shortName": "CreateSecuritySettings", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService.CreateSecuritySettings", + "shortName": "CallFunction", + "fullName": "google.cloud.functions.v1.CloudFunctionsService.CallFunction", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*}/securitySettings" + "path": "/v1/{name=projects/*/locations/*/functions/*}:call" } ] }, { - "shortName": "DeleteSecuritySettings", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService.DeleteSecuritySettings", + "shortName": "CreateFunction", + "fullName": "google.cloud.functions.v1.CloudFunctionsService.CreateFunction", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/securitySettings/*}" + "httpMethod": "POST", + "path": "/v1/{location=projects/*/locations/*}/functions" } ] }, { - "shortName": "GetSecuritySettings", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService.GetSecuritySettings", + "shortName": "DeleteFunction", + "fullName": "google.cloud.functions.v1.CloudFunctionsService.DeleteFunction", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/securitySettings/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/functions/*}" } ] }, { - "shortName": "ListSecuritySettings", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService.ListSecuritySettings", + "shortName": "GenerateDownloadUrl", + "fullName": "google.cloud.functions.v1.CloudFunctionsService.GenerateDownloadUrl", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*}/securitySettings" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/functions/*}:generateDownloadUrl" } ] }, { - "shortName": "UpdateSecuritySettings", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SecuritySettingsService.UpdateSecuritySettings", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v3beta1/{security_settings.name=projects/*/locations/*/securitySettings/*}" - } - ] - } - ] - }, - { - "shortName": "SessionEntityTypes", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes", - "methods": [ - { - "shortName": "CreateSessionEntityType", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes.CreateSessionEntityType", + "shortName": "GenerateUploadUrl", + "fullName": "google.cloud.functions.v1.CloudFunctionsService.GenerateUploadUrl", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/sessions/*}/entityTypes" - }, - { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/environments/*/sessions/*}/entityTypes" + "path": "/v1/{parent=projects/*/locations/*}/functions:generateUploadUrl" } ] }, { - "shortName": "DeleteSessionEntityType", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes.DeleteSessionEntityType", + "shortName": "GetFunction", + "fullName": "google.cloud.functions.v1.CloudFunctionsService.GetFunction", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/functions/*}" } ] }, { - "shortName": "GetSessionEntityType", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes.GetSessionEntityType", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.functions.v1.CloudFunctionsService.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" + "path": "/v1/{resource=projects/*/locations/*/functions/*}:getIamPolicy" } ] }, { - "shortName": "ListSessionEntityTypes", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes.ListSessionEntityTypes", + "shortName": "ListFunctions", + "fullName": "google.cloud.functions.v1.CloudFunctionsService.ListFunctions", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/sessions/*}/entityTypes" - }, - { - "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/environments/*/sessions/*}/entityTypes" + "path": "/v1/{parent=projects/*/locations/*}/functions" } ] }, { - "shortName": "UpdateSessionEntityType", - "fullName": "google.cloud.dialogflow.cx.v3beta1.SessionEntityTypes.UpdateSessionEntityType", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v3beta1/{session_entity_type.name=projects/*/locations/*/agents/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v3beta1/{session_entity_type.name=projects/*/locations/*/agents/*/environments/*/sessions/*/entityTypes/*}" - } - ] - } - ] - }, - { - "shortName": "Sessions", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Sessions", - "methods": [ - { - "shortName": "DetectIntent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Sessions.DetectIntent", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.functions.v1.CloudFunctionsService.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{session=projects/*/locations/*/agents/*/sessions/*}:detectIntent" - }, - { - "httpMethod": "POST", - "path": "/v3beta1/{session=projects/*/locations/*/agents/*/environments/*/sessions/*}:detectIntent" + "path": "/v1/{resource=projects/*/locations/*/functions/*}:setIamPolicy" } ] }, { - "shortName": "FulfillIntent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Sessions.FulfillIntent", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.functions.v1.CloudFunctionsService.TestIamPermissions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{match_intent_request.session=projects/*/locations/*/agents/*/sessions/*}:fulfillIntent" - }, - { - "httpMethod": "POST", - "path": "/v3beta1/{match_intent_request.session=projects/*/locations/*/agents/*/environments/*/sessions/*}:fulfillIntent" + "path": "/v1/{resource=projects/*/locations/*/functions/*}:testIamPermissions" } ] }, { - "shortName": "MatchIntent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Sessions.MatchIntent", + "shortName": "UpdateFunction", + "fullName": "google.cloud.functions.v1.CloudFunctionsService.UpdateFunction", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{session=projects/*/locations/*/agents/*/sessions/*}:matchIntent" - }, - { - "httpMethod": "POST", - "path": "/v3beta1/{session=projects/*/locations/*/agents/*/environments/*/sessions/*}:matchIntent" + "httpMethod": "PATCH", + "path": "/v1/{function.name=projects/*/locations/*/functions/*}" } ] - }, + } + ] + } + ], + "configFile": "cloudfunctions_v1.yaml" + }, + { + "id": "google.cloud.gaming.allocationendpoint.v1alpha", + "directory": "google/cloud/gaming/allocationendpoint/v1alpha", + "version": "v1alpha", + "majorVersion": "v1", + "hostName": "example.com", + "title": "Allocation Endpoint API", + "description": "Allocation Endpoint API for Google cloud game server allocations.", + "importDirectories": [ + "google/api" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/gaming/allocationendpoint/v1alpha;allocationendpoint": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.gaming.allocationendpoint.v1alpha": 1 + } + } + }, + "services": [ + { + "shortName": "AllocationEndpointService", + "fullName": "google.cloud.gaming.allocationendpoint.v1alpha.AllocationEndpointService", + "methods": [ { - "shortName": "StreamingDetectIntent", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Sessions.StreamingDetectIntent", - "mode": "BIDIRECTIONAL_STREAMING" + "shortName": "Allocate", + "fullName": "google.cloud.gaming.allocationendpoint.v1alpha.AllocationEndpointService.Allocate", + "mode": "UNARY" } ] + } + ], + "configFile": "allocation_endpoint_v1alpha.yaml" + }, + { + "id": "google.cloud.gaming.v1", + "directory": "google/cloud/gaming/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "gameservices.googleapis.com", + "title": "Game Services API", + "description": "Deploy and manage infrastructure for global multiplayer gaming experiences.", + "importDirectories": [ + "google/api", + "google/cloud/gaming/v1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/gaming/v1;gaming": 9 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 9 + } }, + "java_package": { + "valueCounts": { + "com.google.cloud.gaming.v1": 9 + } + } + }, + "services": [ { - "shortName": "TestCases", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases", + "shortName": "GameServerClustersService", + "fullName": "google.cloud.gaming.v1.GameServerClustersService", "methods": [ { - "shortName": "BatchDeleteTestCases", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.BatchDeleteTestCases", + "shortName": "CreateGameServerCluster", + "fullName": "google.cloud.gaming.v1.GameServerClustersService.CreateGameServerCluster", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases:batchDelete" + "path": "/v1/{parent=projects/*/locations/*/realms/*}/gameServerClusters" } ] }, { - "shortName": "BatchRunTestCases", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.BatchRunTestCases", + "shortName": "DeleteGameServerCluster", + "fullName": "google.cloud.gaming.v1.GameServerClustersService.DeleteGameServerCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases:batchRun" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/realms/*/gameServerClusters/*}" } ] }, { - "shortName": "CalculateCoverage", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.CalculateCoverage", + "shortName": "GetGameServerCluster", + "fullName": "google.cloud.gaming.v1.GameServerClustersService.GetGameServerCluster", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{agent=projects/*/locations/*/agents/*}/testCases:calculateCoverage" + "path": "/v1/{name=projects/*/locations/*/realms/*/gameServerClusters/*}" } ] }, { - "shortName": "CreateTestCase", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.CreateTestCase", + "shortName": "ListGameServerClusters", + "fullName": "google.cloud.gaming.v1.GameServerClustersService.ListGameServerClusters", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/realms/*}/gameServerClusters" } ] }, { - "shortName": "ExportTestCases", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.ExportTestCases", + "shortName": "PreviewCreateGameServerCluster", + "fullName": "google.cloud.gaming.v1.GameServerClustersService.PreviewCreateGameServerCluster", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases:export" + "path": "/v1/{parent=projects/*/locations/*/realms/*}/gameServerClusters:previewCreate" } ] }, { - "shortName": "GetTestCase", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.GetTestCase", + "shortName": "PreviewDeleteGameServerCluster", + "fullName": "google.cloud.gaming.v1.GameServerClustersService.PreviewDeleteGameServerCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/testCases/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/realms/*/gameServerClusters/*}:previewDelete" } ] }, { - "shortName": "GetTestCaseResult", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.GetTestCaseResult", + "shortName": "PreviewUpdateGameServerCluster", + "fullName": "google.cloud.gaming.v1.GameServerClustersService.PreviewUpdateGameServerCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/testCases/*/results/*}" + "httpMethod": "PATCH", + "path": "/v1/{game_server_cluster.name=projects/*/locations/*/realms/*/gameServerClusters/*}:previewUpdate" } ] }, { - "shortName": "ImportTestCases", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.ImportTestCases", + "shortName": "UpdateGameServerCluster", + "fullName": "google.cloud.gaming.v1.GameServerClustersService.UpdateGameServerCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases:import" + "httpMethod": "PATCH", + "path": "/v1/{game_server_cluster.name=projects/*/locations/*/realms/*/gameServerClusters/*}" } ] - }, + } + ] + }, + { + "shortName": "GameServerConfigsService", + "fullName": "google.cloud.gaming.v1.GameServerConfigsService", + "methods": [ { - "shortName": "ListTestCaseResults", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.ListTestCaseResults", + "shortName": "CreateGameServerConfig", + "fullName": "google.cloud.gaming.v1.GameServerConfigsService.CreateGameServerConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/testCases/*}/results" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/gameServerDeployments/*}/configs" } ] }, { - "shortName": "ListTestCases", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.ListTestCases", + "shortName": "DeleteGameServerConfig", + "fullName": "google.cloud.gaming.v1.GameServerConfigsService.DeleteGameServerConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/testCases" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*/configs/*}" } ] }, { - "shortName": "RunTestCase", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.RunTestCase", + "shortName": "GetGameServerConfig", + "fullName": "google.cloud.gaming.v1.GameServerConfigsService.GetGameServerConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/testCases/*}:run" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*/configs/*}" } ] }, { - "shortName": "UpdateTestCase", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TestCases.UpdateTestCase", + "shortName": "ListGameServerConfigs", + "fullName": "google.cloud.gaming.v1.GameServerConfigsService.ListGameServerConfigs", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v3beta1/{test_case.name=projects/*/locations/*/agents/*/testCases/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/gameServerDeployments/*}/configs" } ] } ] }, { - "shortName": "TransitionRouteGroups", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups", + "shortName": "GameServerDeploymentsService", + "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService", "methods": [ { - "shortName": "CreateTransitionRouteGroup", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups.CreateTransitionRouteGroup", + "shortName": "CreateGameServerDeployment", + "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.CreateGameServerDeployment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/transitionRouteGroups" + "path": "/v1/{parent=projects/*/locations/*}/gameServerDeployments" } ] }, { - "shortName": "DeleteTransitionRouteGroup", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups.DeleteTransitionRouteGroup", + "shortName": "DeleteGameServerDeployment", + "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.DeleteGameServerDeployment", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" + "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*}" } ] }, { - "shortName": "GetTransitionRouteGroup", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups.GetTransitionRouteGroup", + "shortName": "FetchDeploymentState", + "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.FetchDeploymentState", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*}:fetchDeploymentState" } ] }, { - "shortName": "ListTransitionRouteGroups", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups.ListTransitionRouteGroups", + "shortName": "GetGameServerDeployment", + "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.GetGameServerDeployment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/transitionRouteGroups" - } - ] - }, - { - "shortName": "UpdateTransitionRouteGroup", - "fullName": "google.cloud.dialogflow.cx.v3beta1.TransitionRouteGroups.UpdateTransitionRouteGroup", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v3beta1/{transition_route_group.name=projects/*/locations/*/agents/*/flows/*/transitionRouteGroups/*}" - } - ] - } - ] - }, - { - "shortName": "Versions", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions", - "methods": [ - { - "shortName": "CreateVersion", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.CreateVersion", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/versions" + "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*}" } ] }, { - "shortName": "DeleteVersion", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.DeleteVersion", + "shortName": "GetGameServerDeploymentRollout", + "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.GetGameServerDeploymentRollout", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/versions/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*}/rollout" } ] }, { - "shortName": "GetVersion", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.GetVersion", + "shortName": "ListGameServerDeployments", + "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.ListGameServerDeployments", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/versions/*}" + "path": "/v1/{parent=projects/*/locations/*}/gameServerDeployments" } ] }, { - "shortName": "ListVersions", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.ListVersions", + "shortName": "PreviewGameServerDeploymentRollout", + "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.PreviewGameServerDeploymentRollout", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*/flows/*}/versions" + "httpMethod": "PATCH", + "path": "/v1/{rollout.name=projects/*/locations/*/gameServerDeployments/*}/rollout:preview" } ] }, { - "shortName": "LoadVersion", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.LoadVersion", + "shortName": "UpdateGameServerDeployment", + "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.UpdateGameServerDeployment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/flows/*/versions/*}:load" + "httpMethod": "PATCH", + "path": "/v1/{game_server_deployment.name=projects/*/locations/*/gameServerDeployments/*}" } ] }, { - "shortName": "UpdateVersion", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Versions.UpdateVersion", + "shortName": "UpdateGameServerDeploymentRollout", + "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.UpdateGameServerDeploymentRollout", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3beta1/{version.name=projects/*/locations/*/agents/*/flows/*/versions/*}" + "path": "/v1/{rollout.name=projects/*/locations/*/gameServerDeployments/*}/rollout" } ] } ] }, { - "shortName": "Webhooks", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks", + "shortName": "RealmsService", + "fullName": "google.cloud.gaming.v1.RealmsService", "methods": [ { - "shortName": "CreateWebhook", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks.CreateWebhook", + "shortName": "CreateRealm", + "fullName": "google.cloud.gaming.v1.RealmsService.CreateRealm", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/webhooks" + "path": "/v1/{parent=projects/*/locations/*}/realms" } ] }, { - "shortName": "DeleteWebhook", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks.DeleteWebhook", + "shortName": "DeleteRealm", + "fullName": "google.cloud.gaming.v1.RealmsService.DeleteRealm", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/webhooks/*}" + "path": "/v1/{name=projects/*/locations/*/realms/*}" } ] }, { - "shortName": "GetWebhook", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks.GetWebhook", + "shortName": "GetRealm", + "fullName": "google.cloud.gaming.v1.RealmsService.GetRealm", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/agents/*/webhooks/*}" + "path": "/v1/{name=projects/*/locations/*/realms/*}" } ] }, { - "shortName": "ListWebhooks", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks.ListWebhooks", + "shortName": "ListRealms", + "fullName": "google.cloud.gaming.v1.RealmsService.ListRealms", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*/agents/*}/webhooks" + "path": "/v1/{parent=projects/*/locations/*}/realms" } ] }, { - "shortName": "UpdateWebhook", - "fullName": "google.cloud.dialogflow.cx.v3beta1.Webhooks.UpdateWebhook", + "shortName": "PreviewRealmUpdate", + "fullName": "google.cloud.gaming.v1.RealmsService.PreviewRealmUpdate", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3beta1/{webhook.name=projects/*/locations/*/agents/*/webhooks/*}" + "path": "/v1/{realm.name=projects/*/locations/*/realms/*}:previewUpdate" + } + ] + }, + { + "shortName": "UpdateRealm", + "fullName": "google.cloud.gaming.v1.RealmsService.UpdateRealm", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{realm.name=projects/*/locations/*/realms/*}" } ] } ] } - ] + ], + "configFile": "gameservices_v1.yaml" }, { - "id": "google.cloud.dialogflow.v2", - "directory": "google/cloud/dialogflow/v2", - "version": "v2", - "majorVersion": "v2", - "hostName": "dialogflow.googleapis.com", - "title": "Dialogflow API", - "description": "Builds conversational interfaces (for example, chatbots, and voice-powered apps and devices).", + "id": "google.cloud.gaming.v1beta", + "directory": "google/cloud/gaming/v1beta", + "version": "v1beta", + "majorVersion": "v1", + "hostName": "gameservices.googleapis.com", + "title": "Game Services API", + "description": "Deploy and manage infrastructure for global multiplayer gaming experiences.", "importDirectories": [ "google/api", - "google/cloud/dialogflow/v2", + "google/cloud/gaming/v1beta", "google/longrunning", - "google/protobuf", - "google/rpc", - "google/type" + "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.dialogflow.v2": 21 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 21 - } - }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/dialogflow/v2;dialogflow": 21 + "google.golang.org/genproto/googleapis/cloud/gaming/v1beta;gaming": 9 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { - "true": 21 + "true": 9 } }, - "objc_class_prefix": { + "java_package": { "valueCounts": { - "DF": 21 + "com.google.cloud.gaming.v1beta": 9 } }, - "csharp_namespace": { + "php_namespace": { "valueCounts": { - "Google.Cloud.Dialogflow.V2": 21 + "": 1, + "Google\\Cloud\\Gaming\\V1beta": 8 } } }, "services": [ { - "shortName": "Agents", - "fullName": "google.cloud.dialogflow.v2.Agents", + "shortName": "GameServerClustersService", + "fullName": "google.cloud.gaming.v1beta.GameServerClustersService", "methods": [ { - "shortName": "DeleteAgent", - "fullName": "google.cloud.dialogflow.v2.Agents.DeleteAgent", + "shortName": "CreateGameServerCluster", + "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.CreateGameServerCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{parent=projects/*}/agent" - }, + "httpMethod": "POST", + "path": "/v1beta/{parent=projects/*/locations/*/realms/*}/gameServerClusters" + } + ] + }, + { + "shortName": "DeleteGameServerCluster", + "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.DeleteGameServerCluster", + "mode": "UNARY", + "bindings": [ { "httpMethod": "DELETE", - "path": "/v2/{parent=projects/*/locations/*}/agent" + "path": "/v1beta/{name=projects/*/locations/*/realms/*/gameServerClusters/*}" } ] }, { - "shortName": "ExportAgent", - "fullName": "google.cloud.dialogflow.v2.Agents.ExportAgent", + "shortName": "GetGameServerCluster", + "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.GetGameServerCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*}/agent:export" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*}/agent:export" + "httpMethod": "GET", + "path": "/v1beta/{name=projects/*/locations/*/realms/*/gameServerClusters/*}" } ] }, { - "shortName": "GetAgent", - "fullName": "google.cloud.dialogflow.v2.Agents.GetAgent", + "shortName": "ListGameServerClusters", + "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.ListGameServerClusters", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*}/agent" - }, + "path": "/v1beta/{parent=projects/*/locations/*/realms/*}/gameServerClusters" + } + ] + }, + { + "shortName": "PreviewCreateGameServerCluster", + "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.PreviewCreateGameServerCluster", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*}/agent" + "httpMethod": "POST", + "path": "/v1beta/{parent=projects/*/locations/*/realms/*}/gameServerClusters:previewCreate" } ] }, { - "shortName": "GetValidationResult", - "fullName": "google.cloud.dialogflow.v2.Agents.GetValidationResult", + "shortName": "PreviewDeleteGameServerCluster", + "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.PreviewDeleteGameServerCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*}/agent/validationResult" - }, + "httpMethod": "DELETE", + "path": "/v1beta/{name=projects/*/locations/*/realms/*/gameServerClusters/*}:previewDelete" + } + ] + }, + { + "shortName": "PreviewUpdateGameServerCluster", + "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.PreviewUpdateGameServerCluster", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*}/agent/validationResult" + "httpMethod": "PATCH", + "path": "/v1beta/{game_server_cluster.name=projects/*/locations/*/realms/*/gameServerClusters/*}:previewUpdate" } ] }, { - "shortName": "ImportAgent", - "fullName": "google.cloud.dialogflow.v2.Agents.ImportAgent", + "shortName": "UpdateGameServerCluster", + "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.UpdateGameServerCluster", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*}/agent:import" - }, + "httpMethod": "PATCH", + "path": "/v1beta/{game_server_cluster.name=projects/*/locations/*/realms/*/gameServerClusters/*}" + } + ] + } + ] + }, + { + "shortName": "GameServerConfigsService", + "fullName": "google.cloud.gaming.v1beta.GameServerConfigsService", + "methods": [ + { + "shortName": "CreateGameServerConfig", + "fullName": "google.cloud.gaming.v1beta.GameServerConfigsService.CreateGameServerConfig", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*}/agent:import" + "path": "/v1beta/{parent=projects/*/locations/*/gameServerDeployments/*}/configs" } ] }, { - "shortName": "RestoreAgent", - "fullName": "google.cloud.dialogflow.v2.Agents.RestoreAgent", + "shortName": "DeleteGameServerConfig", + "fullName": "google.cloud.gaming.v1beta.GameServerConfigsService.DeleteGameServerConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*}/agent:restore" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*}/agent:restore" + "httpMethod": "DELETE", + "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*/configs/*}" } ] }, { - "shortName": "SearchAgents", - "fullName": "google.cloud.dialogflow.v2.Agents.SearchAgents", + "shortName": "GetGameServerConfig", + "fullName": "google.cloud.gaming.v1beta.GameServerConfigsService.GetGameServerConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*}/agent:search" - }, + "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*/configs/*}" + } + ] + }, + { + "shortName": "ListGameServerConfigs", + "fullName": "google.cloud.gaming.v1beta.GameServerConfigsService.ListGameServerConfigs", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*}/agent:search" + "path": "/v1beta/{parent=projects/*/locations/*/gameServerDeployments/*}/configs" } ] - }, + } + ] + }, + { + "shortName": "GameServerDeploymentsService", + "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService", + "methods": [ { - "shortName": "SetAgent", - "fullName": "google.cloud.dialogflow.v2.Agents.SetAgent", + "shortName": "CreateGameServerDeployment", + "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.CreateGameServerDeployment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{agent.parent=projects/*}/agent" - }, + "path": "/v1beta/{parent=projects/*/locations/*}/gameServerDeployments" + } + ] + }, + { + "shortName": "DeleteGameServerDeployment", + "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.DeleteGameServerDeployment", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{agent.parent=projects/*/locations/*}/agent" + "httpMethod": "DELETE", + "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*}" } ] }, { - "shortName": "TrainAgent", - "fullName": "google.cloud.dialogflow.v2.Agents.TrainAgent", + "shortName": "FetchDeploymentState", + "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.FetchDeploymentState", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*}/agent:train" - }, + "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*}:fetchDeploymentState" + } + ] + }, + { + "shortName": "GetGameServerDeployment", + "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.GetGameServerDeployment", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*}/agent:train" + "httpMethod": "GET", + "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*}" } ] - } - ] - }, - { - "shortName": "AnswerRecords", - "fullName": "google.cloud.dialogflow.v2.AnswerRecords", - "methods": [ + }, { - "shortName": "ListAnswerRecords", - "fullName": "google.cloud.dialogflow.v2.AnswerRecords.ListAnswerRecords", + "shortName": "GetGameServerDeploymentRollout", + "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.GetGameServerDeploymentRollout", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*}/answerRecords" - }, + "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*}/rollout" + } + ] + }, + { + "shortName": "ListGameServerDeployments", + "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.ListGameServerDeployments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta/{parent=projects/*/locations/*}/gameServerDeployments" + } + ] + }, + { + "shortName": "PreviewGameServerDeploymentRollout", + "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.PreviewGameServerDeploymentRollout", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta/{rollout.name=projects/*/locations/*/gameServerDeployments/*}/rollout:preview" + } + ] + }, + { + "shortName": "UpdateGameServerDeployment", + "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.UpdateGameServerDeployment", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*}/answerRecords" + "httpMethod": "PATCH", + "path": "/v1beta/{game_server_deployment.name=projects/*/locations/*/gameServerDeployments/*}" } ] }, { - "shortName": "UpdateAnswerRecord", - "fullName": "google.cloud.dialogflow.v2.AnswerRecords.UpdateAnswerRecord", + "shortName": "UpdateGameServerDeploymentRollout", + "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.UpdateGameServerDeploymentRollout", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v2/{answer_record.name=projects/*/answerRecords/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{answer_record.name=projects/*/locations/*/answerRecords/*}" + "path": "/v1beta/{rollout.name=projects/*/locations/*/gameServerDeployments/*}/rollout" } ] } ] }, { - "shortName": "Contexts", - "fullName": "google.cloud.dialogflow.v2.Contexts", + "shortName": "RealmsService", + "fullName": "google.cloud.gaming.v1beta.RealmsService", "methods": [ { - "shortName": "CreateContext", - "fullName": "google.cloud.dialogflow.v2.Contexts.CreateContext", + "shortName": "CreateRealm", + "fullName": "google.cloud.gaming.v1beta.RealmsService.CreateRealm", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent/sessions/*}/contexts" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent/sessions/*}/contexts" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" + "path": "/v1beta/{parent=projects/*/locations/*}/realms" } ] }, { - "shortName": "DeleteAllContexts", - "fullName": "google.cloud.dialogflow.v2.Contexts.DeleteAllContexts", + "shortName": "DeleteRealm", + "fullName": "google.cloud.gaming.v1beta.RealmsService.DeleteRealm", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v2/{parent=projects/*/agent/sessions/*}/contexts" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{parent=projects/*/locations/*/agent/sessions/*}/contexts" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" + "path": "/v1beta/{name=projects/*/locations/*/realms/*}" } ] }, { - "shortName": "DeleteContext", - "fullName": "google.cloud.dialogflow.v2.Contexts.DeleteContext", + "shortName": "GetRealm", + "fullName": "google.cloud.gaming.v1beta.RealmsService.GetRealm", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/agent/sessions/*/contexts/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/agent/sessions/*/contexts/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" + "httpMethod": "GET", + "path": "/v1beta/{name=projects/*/locations/*/realms/*}" } ] }, { - "shortName": "GetContext", - "fullName": "google.cloud.dialogflow.v2.Contexts.GetContext", + "shortName": "ListRealms", + "fullName": "google.cloud.gaming.v1beta.RealmsService.ListRealms", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{name=projects/*/agent/sessions/*/contexts/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/agent/sessions/*/contexts/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" + "path": "/v1beta/{parent=projects/*/locations/*}/realms" } ] }, { - "shortName": "ListContexts", - "fullName": "google.cloud.dialogflow.v2.Contexts.ListContexts", + "shortName": "PreviewRealmUpdate", + "fullName": "google.cloud.gaming.v1beta.RealmsService.PreviewRealmUpdate", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent/sessions/*}/contexts" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/agent/sessions/*}/contexts" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" + "httpMethod": "PATCH", + "path": "/v1beta/{realm.name=projects/*/locations/*/realms/*}:previewUpdate" } ] }, { - "shortName": "UpdateContext", - "fullName": "google.cloud.dialogflow.v2.Contexts.UpdateContext", + "shortName": "UpdateRealm", + "fullName": "google.cloud.gaming.v1beta.RealmsService.UpdateRealm", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v2/{context.name=projects/*/agent/sessions/*/contexts/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{context.name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{context.name=projects/*/locations/*/agent/sessions/*/contexts/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{context.name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" + "path": "/v1beta/{realm.name=projects/*/locations/*/realms/*}" } ] } ] + } + ], + "configFile": "gameservices_v1beta.yaml" + }, + { + "id": "google.cloud.gkeconnect.gateway.v1", + "directory": "google/cloud/gkeconnect/gateway/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "connectgateway.googleapis.com", + "title": "Connect Gateway API", + "description": "The Connect Gateway service allows connectivity from external parties to connected Kubernetes clusters.", + "importDirectories": [ + "google/api" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.GkeConnect.Gateway.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/gkeconnect/gateway/v1;gateway": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.gkeconnect.gateway.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\GkeConnect\\Gateway\\V1": 1 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::GkeConnect::Gateway::V1": 1 + } + } + }, + "services": [ { - "shortName": "ConversationProfiles", - "fullName": "google.cloud.dialogflow.v2.ConversationProfiles", + "shortName": "GatewayService", + "fullName": "google.cloud.gkeconnect.gateway.v1.GatewayService" + } + ], + "configFile": "connectgateway_v1.yaml" + }, + { + "id": "google.cloud.gkeconnect.gateway.v1alpha1", + "directory": "google/cloud/gkeconnect/gateway/v1alpha1", + "version": "v1alpha1", + "majorVersion": "v1", + "hostName": "connectgateway.googleapis.com", + "title": "Connect Gateway API", + "description": "The Connect Gateway service allows connectivity from external parties to connected Kubernetes clusters.", + "importDirectories": [ + "google/api" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.GkeConnect.Gateway.V1Alpha1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/gkeconnect/gateway/v1alpha1;gateway": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.gkeconnect.gateway.v1alpha1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\GkeConnect\\Gateway\\V1alpha1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::GkeConnect::Gateway::V1alpha1": 1 + } + } + }, + "services": [ + { + "shortName": "GatewayService", + "fullName": "google.cloud.gkeconnect.gateway.v1alpha1.GatewayService" + } + ], + "configFile": "connectgateway_v1alpha1.yaml" + }, + { + "id": "google.cloud.gkeconnect.gateway.v1beta1", + "directory": "google/cloud/gkeconnect/gateway/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "connectgateway.googleapis.com", + "title": "Connect Gateway API", + "description": "The Connect Gateway service allows connectivity from external parties to connected Kubernetes clusters.", + "importDirectories": [ + "google/api" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.GkeConnect.Gateway.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/gkeconnect/gateway/v1beta1;gateway": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.gkeconnect.gateway.v1beta1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\GkeConnect\\Gateway\\V1beta1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::GkeConnect::Gateway::V1beta1": 1 + } + } + }, + "services": [ + { + "shortName": "GatewayService", + "fullName": "google.cloud.gkeconnect.gateway.v1beta1.GatewayService", "methods": [ { - "shortName": "CreateConversationProfile", - "fullName": "google.cloud.dialogflow.v2.ConversationProfiles.CreateConversationProfile", + "shortName": "DeleteResource", + "fullName": "google.cloud.gkeconnect.gateway.v1beta1.GatewayService.DeleteResource", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*}/conversationProfiles" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*}/conversationProfiles" + "httpMethod": "DELETE", + "path": "/v1beta1/**" } ] }, { - "shortName": "DeleteConversationProfile", - "fullName": "google.cloud.dialogflow.v2.ConversationProfiles.DeleteConversationProfile", + "shortName": "GetResource", + "fullName": "google.cloud.gkeconnect.gateway.v1beta1.GatewayService.GetResource", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/conversationProfiles/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/conversationProfiles/*}" + "httpMethod": "GET", + "path": "/v1beta1/**" } ] }, { - "shortName": "GetConversationProfile", - "fullName": "google.cloud.dialogflow.v2.ConversationProfiles.GetConversationProfile", + "shortName": "PatchResource", + "fullName": "google.cloud.gkeconnect.gateway.v1beta1.GatewayService.PatchResource", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/conversationProfiles/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/conversationProfiles/*}" + "httpMethod": "PATCH", + "path": "/v1beta1/**" } ] }, { - "shortName": "ListConversationProfiles", - "fullName": "google.cloud.dialogflow.v2.ConversationProfiles.ListConversationProfiles", + "shortName": "PostResource", + "fullName": "google.cloud.gkeconnect.gateway.v1beta1.GatewayService.PostResource", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*}/conversationProfiles" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*}/conversationProfiles" + "httpMethod": "POST", + "path": "/v1beta1/**" } ] }, { - "shortName": "UpdateConversationProfile", - "fullName": "google.cloud.dialogflow.v2.ConversationProfiles.UpdateConversationProfile", + "shortName": "PutResource", + "fullName": "google.cloud.gkeconnect.gateway.v1beta1.GatewayService.PutResource", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{conversation_profile.name=projects/*/conversationProfiles/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{conversation_profile.name=projects/*/locations/*/conversationProfiles/*}" + "httpMethod": "PUT", + "path": "/v1beta1/**" } ] } ] + } + ], + "configFile": "connectgateway_v1beta1.yaml" + }, + { + "id": "google.cloud.gkehub.v1", + "directory": "google/cloud/gkehub/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "gkehub.googleapis.com", + "title": "GKE Hub", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/gkehub/v1", + "google/cloud/gkehub/v1/configmanagement", + "google/cloud/gkehub/v1/multiclusteringress", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.GkeHub.ConfigManagement.V1": 1, + "Google.Cloud.GkeHub.MultiClusterIngress.V1": 1, + "Google.Cloud.GkeHub.V1": 3 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1;configmanagement": 1, + "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1;multiclusteringress": 1, + "google.golang.org/genproto/googleapis/cloud/gkehub/v1;gkehub": 3 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 5 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.gkehub.configmanagement.v1": 1, + "com.google.cloud.gkehub.multiclusteringress.v1": 1, + "com.google.cloud.gkehub.v1": 3 + } }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\GkeHub\\ConfigManagement\\V1": 1, + "Google\\Cloud\\GkeHub\\MultiClusterIngress\\V1": 1, + "Google\\Cloud\\GkeHub\\V1": 3 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::GkeHub::ConfigManagement::V1": 1, + "Google::Cloud::GkeHub::MultiClusterIngress::V1": 1, + "Google::Cloud::GkeHub::V1": 3 + } + } + }, + "services": [ { - "shortName": "Conversations", - "fullName": "google.cloud.dialogflow.v2.Conversations", + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1.GkeHub", "methods": [ { - "shortName": "CompleteConversation", - "fullName": "google.cloud.dialogflow.v2.Conversations.CompleteConversation", + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.CreateFeature", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{name=projects/*/conversations/*}:complete" - }, - { - "httpMethod": "POST", - "path": "/v2/{name=projects/*/locations/*/conversations/*}:complete" + "path": "/v1/{parent=projects/*/locations/*}/features" } ] }, { - "shortName": "CreateConversation", - "fullName": "google.cloud.dialogflow.v2.Conversations.CreateConversation", + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.CreateMembership", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*}/conversations" - }, + "path": "/v1/{parent=projects/*/locations/*}/memberships" + } + ] + }, + { + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteFeature", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*}/conversations" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/features/*}" } ] }, { - "shortName": "GetConversation", - "fullName": "google.cloud.dialogflow.v2.Conversations.GetConversation", + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.DeleteMembership", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/conversations/*}" - }, + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/memberships/*}" + } + ] + }, + { + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1.GkeHub.GenerateConnectManifest", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/conversations/*}" + "path": "/v1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" } ] }, { - "shortName": "ListConversations", - "fullName": "google.cloud.dialogflow.v2.Conversations.ListConversations", + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.GetFeature", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*}/conversations" - }, + "path": "/v1/{name=projects/*/locations/*/features/*}" + } + ] + }, + { + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.GetMembership", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*}/conversations" + "path": "/v1/{name=projects/*/locations/*/memberships/*}" } ] }, { - "shortName": "ListMessages", - "fullName": "google.cloud.dialogflow.v2.Conversations.ListMessages", + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1.GkeHub.ListFeatures", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/conversations/*}/messages" - }, + "path": "/v1/{parent=projects/*/locations/*}/features" + } + ] + }, + { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1.GkeHub.ListMemberships", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/conversations/*}/messages" + "path": "/v1/{parent=projects/*/locations/*}/memberships" } ] - } - ] - }, - { - "shortName": "Documents", - "fullName": "google.cloud.dialogflow.v2.Documents", - "methods": [ + }, { - "shortName": "CreateDocument", - "fullName": "google.cloud.dialogflow.v2.Documents.CreateDocument", + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateFeature", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/knowledgeBases/*}/documents" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/knowledgeBases/*}/documents" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent/knowledgeBases/*}/documents" + "httpMethod": "PATCH", + "path": "/v1/{name=projects/*/locations/*/features/*}" } ] }, { - "shortName": "DeleteDocument", - "fullName": "google.cloud.dialogflow.v2.Documents.DeleteDocument", + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1.GkeHub.UpdateMembership", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/knowledgeBases/*/documents/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/knowledgeBases/*/documents/*}" - }, + "httpMethod": "PATCH", + "path": "/v1/{name=projects/*/locations/*/memberships/*}" + } + ] + } + ] + } + ], + "configFile": "gkehub_v1.yaml" + }, + { + "id": "google.cloud.gkehub.v1alpha", + "directory": "google/cloud/gkehub/v1alpha", + "version": "v1alpha", + "majorVersion": "v1", + "hostName": "gkehub.googleapis.com", + "title": "GKE Hub", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/gkehub/v1alpha", + "google/cloud/gkehub/v1alpha/cloudauditlogging", + "google/cloud/gkehub/v1alpha/configmanagement", + "google/cloud/gkehub/v1alpha/metering", + "google/cloud/gkehub/v1alpha/multiclusteringress", + "google/cloud/gkehub/v1alpha/servicemesh", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.GkeHub.CloudAuditLogging.V1Alpha": 1, + "Google.Cloud.GkeHub.ConfigManagement.V1Alpha": 1, + "Google.Cloud.GkeHub.Metering.V1Alpha": 1, + "Google.Cloud.GkeHub.MultiClusterIngress.V1Alpha": 1, + "Google.Cloud.GkeHub.ServiceMesh.V1Alpha": 1, + "Google.Cloud.GkeHub.V1Alpha": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/gkehub/cloudauditlogging/v1alpha;cloudauditlogging": 1, + "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1alpha;configmanagement": 1, + "google.golang.org/genproto/googleapis/cloud/gkehub/metering/v1alpha;metering": 1, + "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1alpha;multiclusteringress": 1, + "google.golang.org/genproto/googleapis/cloud/gkehub/servicemesh/v1alpha;servicemesh": 1, + "google.golang.org/genproto/googleapis/cloud/gkehub/v1alpha;gkehub": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 7 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.gkehub.cloudauditlogging.v1alpha": 1, + "com.google.cloud.gkehub.configmanagement.v1alpha": 1, + "com.google.cloud.gkehub.metering.v1alpha": 1, + "com.google.cloud.gkehub.multiclusteringress.v1alpha": 1, + "com.google.cloud.gkehub.servicemesh.v1alpha": 1, + "com.google.cloud.gkehub.v1alpha": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\GkeHub\\CloudAuditLogging\\V1alpha": 1, + "Google\\Cloud\\GkeHub\\ConfigManagement\\V1alpha": 1, + "Google\\Cloud\\GkeHub\\Metering\\V1alpha": 1, + "Google\\Cloud\\GkeHub\\MultiClusterIngress\\V1alpha": 1, + "Google\\Cloud\\GkeHub\\ServiceMesh\\V1alpha": 1, + "Google\\Cloud\\GkeHub\\V1alpha": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::GkeHub::CloudAuditLogging::V1alpha": 1, + "Google::Cloud::GkeHub::ConfigManagement::V1alpha": 1, + "Google::Cloud::GkeHub::Metering::V1alpha": 1, + "Google::Cloud::GkeHub::MultiClusterIngress::V1alpha": 1, + "Google::Cloud::GkeHub::ServiceMesh::V1alpha": 1, + "Google::Cloud::GkeHub::V1alpha": 2 + } + } + }, + "services": [ + { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub", + "methods": [ + { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.CreateFeature", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/agent/knowledgeBases/*/documents/*}" + "httpMethod": "POST", + "path": "/v1alpha/{parent=projects/*/locations/*}/features" } ] }, { - "shortName": "GetDocument", - "fullName": "google.cloud.dialogflow.v2.Documents.GetDocument", + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.DeleteFeature", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/knowledgeBases/*/documents/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/knowledgeBases/*/documents/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/agent/knowledgeBases/*/documents/*}" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=projects/*/locations/*/features/*}" } ] }, { - "shortName": "ListDocuments", - "fullName": "google.cloud.dialogflow.v2.Documents.ListDocuments", + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.GetFeature", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/knowledgeBases/*}/documents" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/knowledgeBases/*}/documents" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent/knowledgeBases/*}/documents" + "path": "/v1alpha/{name=projects/*/locations/*/features/*}" } ] }, { - "shortName": "ReloadDocument", - "fullName": "google.cloud.dialogflow.v2.Documents.ReloadDocument", + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.ListFeatures", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{name=projects/*/knowledgeBases/*/documents/*}:reload" - }, - { - "httpMethod": "POST", - "path": "/v2/{name=projects/*/locations/*/knowledgeBases/*/documents/*}:reload" - }, - { - "httpMethod": "POST", - "path": "/v2/{name=projects/*/agent/knowledgeBases/*/documents/*}:reload" + "httpMethod": "GET", + "path": "/v1alpha/{parent=projects/*/locations/*}/features" } ] }, { - "shortName": "UpdateDocument", - "fullName": "google.cloud.dialogflow.v2.Documents.UpdateDocument", + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1alpha.GkeHub.UpdateFeature", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v2/{document.name=projects/*/knowledgeBases/*/documents/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{document.name=projects/*/locations/*/knowledgeBases/*/documents/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{document.name=projects/*/agent/knowledgeBases/*/documents/*}" + "path": "/v1alpha/{name=projects/*/locations/*/features/*}" } ] } ] + } + ], + "configFile": "gkehub_v1alpha.yaml" + }, + { + "id": "google.cloud.gkehub.v1alpha2", + "directory": "google/cloud/gkehub/v1alpha2", + "version": "v1alpha2", + "majorVersion": "v1", + "hostName": "gkehub.googleapis.com", + "title": "GKE Hub API", + "description": "", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.GkeHub.V1Alpha2": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/gkehub/v1alpha2;gkehub": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.gkehub.v1alpha2": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\GkeHub\\V1alpha2": 1 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::GkeHub::V1alpha2": 1 + } + } + }, + "services": [ { - "shortName": "EntityTypes", - "fullName": "google.cloud.dialogflow.v2.EntityTypes", + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub", "methods": [ { - "shortName": "BatchCreateEntities", - "fullName": "google.cloud.dialogflow.v2.EntityTypes.BatchCreateEntities", + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.CreateMembership", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent/entityTypes/*}/entities:batchCreate" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchCreate" + "path": "/v1alpha2/{parent=projects/*/locations/*}/memberships" } ] }, { - "shortName": "BatchDeleteEntities", - "fullName": "google.cloud.dialogflow.v2.EntityTypes.BatchDeleteEntities", + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembership", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent/entityTypes/*}/entities:batchDelete" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchDelete" + "httpMethod": "DELETE", + "path": "/v1alpha2/{name=projects/*/locations/*/memberships/*}" } ] }, { - "shortName": "BatchDeleteEntityTypes", - "fullName": "google.cloud.dialogflow.v2.EntityTypes.BatchDeleteEntityTypes", + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifest", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent}/entityTypes:batchDelete" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent}/entityTypes:batchDelete" + "httpMethod": "GET", + "path": "/v1alpha2/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" } ] }, { - "shortName": "BatchUpdateEntities", - "fullName": "google.cloud.dialogflow.v2.EntityTypes.BatchUpdateEntities", + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GetMembership", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent/entityTypes/*}/entities:batchUpdate" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchUpdate" + "httpMethod": "GET", + "path": "/v1alpha2/{name=projects/*/locations/*/memberships/*}" } ] }, { - "shortName": "BatchUpdateEntityTypes", - "fullName": "google.cloud.dialogflow.v2.EntityTypes.BatchUpdateEntityTypes", + "shortName": "InitializeHub", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.InitializeHub", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent}/entityTypes:batchUpdate" - }, + "path": "/v1alpha2/{project=projects/*/locations/global/memberships}:initializeHub" + } + ] + }, + { + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.ListMemberships", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent}/entityTypes:batchUpdate" + "httpMethod": "GET", + "path": "/v1alpha2/{parent=projects/*/locations/*}/memberships" } ] }, { - "shortName": "CreateEntityType", - "fullName": "google.cloud.dialogflow.v2.EntityTypes.CreateEntityType", + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembership", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent}/entityTypes" - }, + "httpMethod": "PATCH", + "path": "/v1alpha2/{name=projects/*/locations/*/memberships/*}" + } + ] + } + ] + } + ], + "configFile": "gkehub_v1alpha2.yaml" + }, + { + "id": "google.cloud.gkehub.v1beta", + "directory": "google/cloud/gkehub/v1beta", + "version": "v1beta", + "majorVersion": "v1", + "hostName": "gkehub.googleapis.com", + "title": "GKE Hub", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/gkehub/v1beta", + "google/cloud/gkehub/v1beta/configmanagement", + "google/cloud/gkehub/v1beta/metering", + "google/cloud/gkehub/v1beta/multiclusteringress", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.GkeHub.ConfigManagement.V1Beta": 1, + "Google.Cloud.GkeHub.Metering.V1Beta": 1, + "Google.Cloud.GkeHub.MultiClusterIngress.V1Beta": 1, + "Google.Cloud.GkeHub.V1Beta": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/gkehub/configmanagement/v1beta;configmanagement": 1, + "google.golang.org/genproto/googleapis/cloud/gkehub/metering/v1beta;metering": 1, + "google.golang.org/genproto/googleapis/cloud/gkehub/multiclusteringress/v1beta;multiclusteringress": 1, + "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta;gkehub": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 5 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.gkehub.configmanagement.v1beta": 1, + "com.google.cloud.gkehub.metering.v1beta": 1, + "com.google.cloud.gkehub.multiclusteringress.v1beta": 1, + "com.google.cloud.gkehub.v1beta": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\GkeHub\\ConfigManagement\\V1beta": 1, + "Google\\Cloud\\GkeHub\\Metering\\V1beta": 1, + "Google\\Cloud\\GkeHub\\MultiClusterIngress\\V1beta": 1, + "Google\\Cloud\\GkeHub\\V1beta": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::GkeHub::ConfigManagement::V1beta": 1, + "Google::Cloud::GkeHub::Metering::V1beta": 1, + "Google::Cloud::GkeHub::MultiClusterIngress::V1beta": 1, + "Google::Cloud::GkeHub::V1beta": 2 + } + } + }, + "services": [ + { + "shortName": "GkeHub", + "fullName": "google.cloud.gkehub.v1beta.GkeHub", + "methods": [ + { + "shortName": "CreateFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.CreateFeature", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent}/entityTypes" + "path": "/v1beta/{parent=projects/*/locations/*}/features" } ] }, { - "shortName": "DeleteEntityType", - "fullName": "google.cloud.dialogflow.v2.EntityTypes.DeleteEntityType", + "shortName": "DeleteFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.DeleteFeature", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/agent/entityTypes/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/agent/entityTypes/*}" + "path": "/v1beta/{name=projects/*/locations/*/features/*}" } ] }, { - "shortName": "GetEntityType", - "fullName": "google.cloud.dialogflow.v2.EntityTypes.GetEntityType", + "shortName": "GetFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.GetFeature", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{name=projects/*/agent/entityTypes/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/agent/entityTypes/*}" + "path": "/v1beta/{name=projects/*/locations/*/features/*}" } ] }, { - "shortName": "ListEntityTypes", - "fullName": "google.cloud.dialogflow.v2.EntityTypes.ListEntityTypes", + "shortName": "ListFeatures", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.ListFeatures", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent}/entityTypes" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/agent}/entityTypes" + "path": "/v1beta/{parent=projects/*/locations/*}/features" } ] }, { - "shortName": "UpdateEntityType", - "fullName": "google.cloud.dialogflow.v2.EntityTypes.UpdateEntityType", + "shortName": "UpdateFeature", + "fullName": "google.cloud.gkehub.v1beta.GkeHub.UpdateFeature", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v2/{entity_type.name=projects/*/agent/entityTypes/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{entity_type.name=projects/*/locations/*/agent/entityTypes/*}" + "path": "/v1beta/{name=projects/*/locations/*/features/*}" } ] } ] + } + ], + "configFile": "gkehub_v1beta.yaml" + }, + { + "id": "google.cloud.gkehub.v1beta1", + "directory": "google/cloud/gkehub/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "gkehub.googleapis.com", + "title": "GKE Hub API", + "description": "", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.GkeHub.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta1;gkehub": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.gkehub.v1beta1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\GkeHub\\V1beta1": 1 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::GkeHub::V1beta1": 1 + } + } + }, + "services": [ { - "shortName": "Environments", - "fullName": "google.cloud.dialogflow.v2.Environments", + "shortName": "GkeHubMembershipService", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService", "methods": [ { - "shortName": "CreateEnvironment", - "fullName": "google.cloud.dialogflow.v2.Environments.CreateEnvironment", + "shortName": "CreateMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembership", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent}/environments" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent}/environments" + "path": "/v1beta1/{parent=projects/*/locations/*}/memberships" } ] }, { - "shortName": "DeleteEnvironment", - "fullName": "google.cloud.dialogflow.v2.Environments.DeleteEnvironment", + "shortName": "DeleteMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembership", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/agent/environments/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/agent/environments/*}" + "path": "/v1beta1/{name=projects/*/locations/*/memberships/*}" } ] }, { - "shortName": "GetEnvironment", - "fullName": "google.cloud.dialogflow.v2.Environments.GetEnvironment", + "shortName": "GenerateConnectManifest", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifest", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{name=projects/*/agent/environments/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/agent/environments/*}" + "path": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" } ] }, { - "shortName": "GetEnvironmentHistory", - "fullName": "google.cloud.dialogflow.v2.Environments.GetEnvironmentHistory", + "shortName": "GenerateExclusivityManifest", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifest", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent/environments/*}/history" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/agent/environments/*}/history" + "path": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateExclusivityManifest" } ] }, { - "shortName": "ListEnvironments", - "fullName": "google.cloud.dialogflow.v2.Environments.ListEnvironments", + "shortName": "GetMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembership", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent}/environments" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/agent}/environments" + "path": "/v1beta1/{name=projects/*/locations/*/memberships/*}" } ] }, { - "shortName": "UpdateEnvironment", - "fullName": "google.cloud.dialogflow.v2.Environments.UpdateEnvironment", + "shortName": "ListMemberships", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMemberships", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{environment.name=projects/*/agent/environments/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{environment.name=projects/*/locations/*/agent/environments/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/memberships" } ] - } - ] - }, - { - "shortName": "Fulfillments", - "fullName": "google.cloud.dialogflow.v2.Fulfillments", - "methods": [ + }, { - "shortName": "GetFulfillment", - "fullName": "google.cloud.dialogflow.v2.Fulfillments.GetFulfillment", + "shortName": "UpdateMembership", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembership", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/agent/fulfillment}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/agent/fulfillment}" + "httpMethod": "PATCH", + "path": "/v1beta1/{name=projects/*/locations/*/memberships/*}" } ] }, { - "shortName": "UpdateFulfillment", - "fullName": "google.cloud.dialogflow.v2.Fulfillments.UpdateFulfillment", + "shortName": "ValidateExclusivity", + "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivity", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{fulfillment.name=projects/*/agent/fulfillment}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{fulfillment.name=projects/*/locations/*/agent/fulfillment}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/memberships:validateExclusivity" } ] } ] + } + ], + "configFile": "gkehub_v1beta1.yaml" + }, + { + "id": "google.cloud.gsuiteaddons.v1", + "directory": "google/cloud/gsuiteaddons/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "gsuiteaddons.googleapis.com", + "title": "Google Workspace Add-ons API", + "description": "", + "importDirectories": [ + "google/api", + "google/apps/script/type", + "google/apps/script/type/calendar", + "google/apps/script/type/docs", + "google/apps/script/type/drive", + "google/apps/script/type/gmail", + "google/apps/script/type/sheets", + "google/apps/script/type/slides", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.GSuiteAddOns.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/gsuiteaddons/v1;gsuiteaddons": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.gsuiteaddons.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\GSuiteAddOns\\V1": 1 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::GSuiteAddOns::V1": 1 + } + } + }, + "services": [ { - "shortName": "Intents", - "fullName": "google.cloud.dialogflow.v2.Intents", + "shortName": "GSuiteAddOns", + "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns", "methods": [ { - "shortName": "BatchDeleteIntents", - "fullName": "google.cloud.dialogflow.v2.Intents.BatchDeleteIntents", + "shortName": "CreateDeployment", + "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.CreateDeployment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent}/intents:batchDelete" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent}/intents:batchDelete" + "path": "/v1/{parent=projects/*}/deployments" } ] }, { - "shortName": "BatchUpdateIntents", - "fullName": "google.cloud.dialogflow.v2.Intents.BatchUpdateIntents", + "shortName": "DeleteDeployment", + "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.DeleteDeployment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent}/intents:batchUpdate" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent}/intents:batchUpdate" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/deployments/*}" } ] }, { - "shortName": "CreateIntent", - "fullName": "google.cloud.dialogflow.v2.Intents.CreateIntent", + "shortName": "GetAuthorization", + "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.GetAuthorization", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent}/intents" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent}/intents" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/authorization}" } ] }, { - "shortName": "DeleteIntent", - "fullName": "google.cloud.dialogflow.v2.Intents.DeleteIntent", + "shortName": "GetDeployment", + "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.GetDeployment", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/agent/intents/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/agent/intents/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/deployments/*}" } ] }, { - "shortName": "GetIntent", - "fullName": "google.cloud.dialogflow.v2.Intents.GetIntent", + "shortName": "GetInstallStatus", + "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.GetInstallStatus", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{name=projects/*/agent/intents/*}" - }, + "path": "/v1/{name=projects/*/deployments/*/installStatus}" + } + ] + }, + { + "shortName": "InstallDeployment", + "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.InstallDeployment", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/deployments/*}:install" + } + ] + }, + { + "shortName": "ListDeployments", + "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.ListDeployments", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/agent/intents/*}" + "path": "/v1/{parent=projects/*}/deployments" } ] }, { - "shortName": "ListIntents", - "fullName": "google.cloud.dialogflow.v2.Intents.ListIntents", + "shortName": "ReplaceDeployment", + "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.ReplaceDeployment", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent}/intents" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/agent}/intents" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent/environments/*}/intents" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/agent/environments/*}/intents" + "httpMethod": "PUT", + "path": "/v1/{deployment.name=projects/*/deployments/*}" } ] }, { - "shortName": "UpdateIntent", - "fullName": "google.cloud.dialogflow.v2.Intents.UpdateIntent", + "shortName": "UninstallDeployment", + "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.UninstallDeployment", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{intent.name=projects/*/agent/intents/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{intent.name=projects/*/locations/*/agent/intents/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/deployments/*}:uninstall" } ] } ] + } + ], + "configFile": "gsuiteaddons_v1.yaml" + }, + { + "id": "google.cloud.iap.v1", + "directory": "google/cloud/iap/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "iap.googleapis.com", + "title": "Cloud Identity-Aware Proxy API", + "description": "Controls access to cloud applications running on Google Cloud Platform.", + "importDirectories": [ + "google/api", + "google/iam/v1", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Iap.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/iap/v1;iap": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.iap.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Iap\\V1": 1 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Iap::V1": 1 + } + } + }, + "services": [ { - "shortName": "KnowledgeBases", - "fullName": "google.cloud.dialogflow.v2.KnowledgeBases", + "shortName": "IdentityAwareProxyAdminService", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyAdminService", "methods": [ { - "shortName": "CreateKnowledgeBase", - "fullName": "google.cloud.dialogflow.v2.KnowledgeBases.CreateKnowledgeBase", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyAdminService.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*}/knowledgeBases" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*}/knowledgeBases" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent}/knowledgeBases" + "path": "/v1/{resource=**}:getIamPolicy" } ] }, { - "shortName": "DeleteKnowledgeBase", - "fullName": "google.cloud.dialogflow.v2.KnowledgeBases.DeleteKnowledgeBase", + "shortName": "GetIapSettings", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyAdminService.GetIapSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/knowledgeBases/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/knowledgeBases/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/agent/knowledgeBases/*}" + "httpMethod": "GET", + "path": "/v1/{name=**}:iapSettings" } ] }, { - "shortName": "GetKnowledgeBase", - "fullName": "google.cloud.dialogflow.v2.KnowledgeBases.GetKnowledgeBase", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyAdminService.SetIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/knowledgeBases/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/knowledgeBases/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/agent/knowledgeBases/*}" + "httpMethod": "POST", + "path": "/v1/{resource=**}:setIamPolicy" } ] }, { - "shortName": "ListKnowledgeBases", - "fullName": "google.cloud.dialogflow.v2.KnowledgeBases.ListKnowledgeBases", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyAdminService.TestIamPermissions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*}/knowledgeBases" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*}/knowledgeBases" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent}/knowledgeBases" + "httpMethod": "POST", + "path": "/v1/{resource=**}:testIamPermissions" } ] }, { - "shortName": "UpdateKnowledgeBase", - "fullName": "google.cloud.dialogflow.v2.KnowledgeBases.UpdateKnowledgeBase", + "shortName": "UpdateIapSettings", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyAdminService.UpdateIapSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v2/{knowledge_base.name=projects/*/knowledgeBases/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{knowledge_base.name=projects/*/locations/*/knowledgeBases/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{knowledge_base.name=projects/*/agent/knowledgeBases/*}" + "path": "/v1/{iap_settings.name=**}:iapSettings" } ] } ] }, { - "shortName": "Participants", - "fullName": "google.cloud.dialogflow.v2.Participants", + "shortName": "IdentityAwareProxyOAuthService", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyOAuthService", "methods": [ { - "shortName": "AnalyzeContent", - "fullName": "google.cloud.dialogflow.v2.Participants.AnalyzeContent", + "shortName": "CreateBrand", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyOAuthService.CreateBrand", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{participant=projects/*/conversations/*/participants/*}:analyzeContent" - }, - { - "httpMethod": "POST", - "path": "/v2/{participant=projects/*/locations/*/conversations/*/participants/*}:analyzeContent" + "path": "/v1/{parent=projects/*}/brands" } ] }, { - "shortName": "CreateParticipant", - "fullName": "google.cloud.dialogflow.v2.Participants.CreateParticipant", + "shortName": "CreateIdentityAwareProxyClient", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyOAuthService.CreateIdentityAwareProxyClient", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/conversations/*}/participants" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/conversations/*}/participants" + "path": "/v1/{parent=projects/*/brands/*}/identityAwareProxyClients" } ] }, { - "shortName": "GetParticipant", - "fullName": "google.cloud.dialogflow.v2.Participants.GetParticipant", + "shortName": "DeleteIdentityAwareProxyClient", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyOAuthService.DeleteIdentityAwareProxyClient", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/conversations/*/participants/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/conversations/*/participants/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/brands/*/identityAwareProxyClients/*}" } ] }, { - "shortName": "ListParticipants", - "fullName": "google.cloud.dialogflow.v2.Participants.ListParticipants", + "shortName": "GetBrand", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyOAuthService.GetBrand", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/conversations/*}/participants" - }, + "path": "/v1/{name=projects/*/brands/*}" + } + ] + }, + { + "shortName": "GetIdentityAwareProxyClient", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyOAuthService.GetIdentityAwareProxyClient", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/conversations/*}/participants" + "path": "/v1/{name=projects/*/brands/*/identityAwareProxyClients/*}" } ] }, { - "shortName": "SuggestArticles", - "fullName": "google.cloud.dialogflow.v2.Participants.SuggestArticles", + "shortName": "ListBrands", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyOAuthService.ListBrands", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestArticles" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestArticles" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/brands" } ] }, { - "shortName": "SuggestFaqAnswers", - "fullName": "google.cloud.dialogflow.v2.Participants.SuggestFaqAnswers", + "shortName": "ListIdentityAwareProxyClients", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyOAuthService.ListIdentityAwareProxyClients", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/brands/*}/identityAwareProxyClients" } ] }, { - "shortName": "UpdateParticipant", - "fullName": "google.cloud.dialogflow.v2.Participants.UpdateParticipant", + "shortName": "ResetIdentityAwareProxyClientSecret", + "fullName": "google.cloud.iap.v1.IdentityAwareProxyOAuthService.ResetIdentityAwareProxyClientSecret", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{participant.name=projects/*/conversations/*/participants/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{participant.name=projects/*/locations/*/conversations/*/participants/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/brands/*/identityAwareProxyClients/*}:resetSecret" } ] } ] + } + ], + "configFile": "iap_v1.yaml" + }, + { + "id": "google.cloud.iap.v1beta1", + "directory": "google/cloud/iap/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "iap.googleapis.com", + "title": "Cloud Identity-Aware Proxy API", + "description": "Controls access to cloud applications running on Google Cloud Platform.", + "importDirectories": [ + "google/api", + "google/iam/v1" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/iap/v1beta1;iap": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } }, + "java_package": { + "valueCounts": { + "com.google.cloud.iap.v1beta1": 1 + } + } + }, + "services": [ { - "shortName": "SessionEntityTypes", - "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes", + "shortName": "IdentityAwareProxyAdminV1Beta1", + "fullName": "google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1", "methods": [ { - "shortName": "CreateSessionEntityType", - "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes.CreateSessionEntityType", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent/sessions/*}/entityTypes" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent/environments/*/users/*/sessions/*}/entityTypes" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent/sessions/*}/entityTypes" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/entityTypes" + "path": "/v1beta1/{resource=**}:getIamPolicy" } ] }, { - "shortName": "DeleteSessionEntityType", - "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes.DeleteSessionEntityType", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1.SetIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/agent/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" + "httpMethod": "POST", + "path": "/v1beta1/{resource=**}:setIamPolicy" } ] }, { - "shortName": "GetSessionEntityType", - "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes.GetSessionEntityType", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.iap.v1beta1.IdentityAwareProxyAdminV1Beta1.TestIamPermissions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/agent/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" - }, + "httpMethod": "POST", + "path": "/v1beta1/{resource=**}:testIamPermissions" + } + ] + } + ] + } + ], + "configFile": "iap_v1beta1.yaml" + }, + { + "id": "google.cloud.identitytoolkit.v2", + "directory": "google/cloud/identitytoolkit/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "identitytoolkit.googleapis.com", + "title": "Identity Toolkit API", + "description": "The Google Identity Toolkit API lets you use open standards to verify a user's identity.", + "importDirectories": [ + "google/api", + "google/cloud/identitytoolkit/v2", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.IdentityToolkit.V2": 3 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/identitytoolkit/v2;identitytoolkit": 3 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 3 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.identitytoolkit.v2": 3 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\IdentityToolkit\\V2": 3 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::IdentityToolkit::V2": 3 + } + } + }, + "services": [ + { + "shortName": "AccountManagementService", + "fullName": "google.cloud.identitytoolkit.v2.AccountManagementService", + "methods": [ + { + "shortName": "FinalizeMfaEnrollment", + "fullName": "google.cloud.identitytoolkit.v2.AccountManagementService.FinalizeMfaEnrollment", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" + "httpMethod": "POST", + "path": "/v2/accounts/mfaEnrollment:finalize" } ] }, { - "shortName": "ListSessionEntityTypes", - "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes.ListSessionEntityTypes", + "shortName": "StartMfaEnrollment", + "fullName": "google.cloud.identitytoolkit.v2.AccountManagementService.StartMfaEnrollment", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent/sessions/*}/entityTypes" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent/environments/*/users/*/sessions/*}/entityTypes" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/agent/sessions/*}/entityTypes" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/entityTypes" + "httpMethod": "POST", + "path": "/v2/accounts/mfaEnrollment:start" } ] }, { - "shortName": "UpdateSessionEntityType", - "fullName": "google.cloud.dialogflow.v2.SessionEntityTypes.UpdateSessionEntityType", + "shortName": "WithdrawMfa", + "fullName": "google.cloud.identitytoolkit.v2.AccountManagementService.WithdrawMfa", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{session_entity_type.name=projects/*/agent/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{session_entity_type.name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{session_entity_type.name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{session_entity_type.name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" + "httpMethod": "POST", + "path": "/v2/accounts/mfaEnrollment:withdraw" } ] } ] }, { - "shortName": "Sessions", - "fullName": "google.cloud.dialogflow.v2.Sessions", + "shortName": "AuthenticationService", + "fullName": "google.cloud.identitytoolkit.v2.AuthenticationService", "methods": [ { - "shortName": "DetectIntent", - "fullName": "google.cloud.dialogflow.v2.Sessions.DetectIntent", + "shortName": "FinalizeMfaSignIn", + "fullName": "google.cloud.identitytoolkit.v2.AuthenticationService.FinalizeMfaSignIn", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{session=projects/*/agent/sessions/*}:detectIntent" - }, - { - "httpMethod": "POST", - "path": "/v2/{session=projects/*/agent/environments/*/users/*/sessions/*}:detectIntent" - }, - { - "httpMethod": "POST", - "path": "/v2/{session=projects/*/locations/*/agent/sessions/*}:detectIntent" - }, - { - "httpMethod": "POST", - "path": "/v2/{session=projects/*/locations/*/agent/environments/*/users/*/sessions/*}:detectIntent" + "path": "/v2/accounts/mfaSignIn:finalize" } ] }, { - "shortName": "StreamingDetectIntent", - "fullName": "google.cloud.dialogflow.v2.Sessions.StreamingDetectIntent", - "mode": "BIDIRECTIONAL_STREAMING" + "shortName": "StartMfaSignIn", + "fullName": "google.cloud.identitytoolkit.v2.AuthenticationService.StartMfaSignIn", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2/accounts/mfaSignIn:start" + } + ] } ] + } + ], + "configFile": "identitytoolkit_v2.yaml" + }, + { + "id": "google.cloud.ids.v1", + "directory": "google/cloud/ids/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "ids.googleapis.com", + "title": "Cloud IDS API", + "description": "Cloud IDS (Cloud Intrusion Detection System) detects malware, spyware, command-and-control attacks, and other network-based threats. Its security efficacy is industry leading, built with Palo Alto Networks technologies. When you use this product, your organization name and consumption levels will be shared with Palo Alto Networks.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/ids/v1;ids": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.ids.v1": 1 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::IDS::V1": 1 + } + } + }, + "services": [ { - "shortName": "Versions", - "fullName": "google.cloud.dialogflow.v2.Versions", + "shortName": "IDS", + "fullName": "google.cloud.ids.v1.IDS", "methods": [ { - "shortName": "CreateVersion", - "fullName": "google.cloud.dialogflow.v2.Versions.CreateVersion", + "shortName": "CreateEndpoint", + "fullName": "google.cloud.ids.v1.IDS.CreateEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/agent}/versions" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/agent}/versions" + "path": "/v1/{parent=projects/*/locations/*}/endpoints" } ] }, { - "shortName": "DeleteVersion", - "fullName": "google.cloud.dialogflow.v2.Versions.DeleteVersion", + "shortName": "DeleteEndpoint", + "fullName": "google.cloud.ids.v1.IDS.DeleteEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/agent/versions/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/agent/versions/*}" + "path": "/v1/{name=projects/*/locations/*/endpoints/*}" } ] }, { - "shortName": "GetVersion", - "fullName": "google.cloud.dialogflow.v2.Versions.GetVersion", + "shortName": "GetEndpoint", + "fullName": "google.cloud.ids.v1.IDS.GetEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{name=projects/*/agent/versions/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/agent/versions/*}" + "path": "/v1/{name=projects/*/locations/*/endpoints/*}" } ] }, { - "shortName": "ListVersions", - "fullName": "google.cloud.dialogflow.v2.Versions.ListVersions", + "shortName": "ListEndpoints", + "fullName": "google.cloud.ids.v1.IDS.ListEndpoints", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/agent}/versions" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/agent}/versions" - } - ] - }, - { - "shortName": "UpdateVersion", - "fullName": "google.cloud.dialogflow.v2.Versions.UpdateVersion", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v2/{version.name=projects/*/agent/versions/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{version.name=projects/*/locations/*/agent/versions/*}" + "path": "/v1/{parent=projects/*/locations/*}/endpoints" } ] } ] } - ] + ], + "configFile": "ids_v1.yaml" }, { - "id": "google.cloud.dialogflow.v2beta1", - "directory": "google/cloud/dialogflow/v2beta1", - "version": "v2beta1", - "majorVersion": "v2", - "hostName": "dialogflow.googleapis.com", - "title": "Dialogflow API", - "description": "Builds conversational interfaces (for example, chatbots, and voice-powered apps and devices).", + "id": "google.cloud.iot.v1", + "directory": "google/cloud/iot/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "cloudiot.googleapis.com", + "title": "Cloud IoT API", + "description": "Registers and manages IoT (Internet of Things) devices that connect to the Google Cloud Platform.", "importDirectories": [ "google/api", - "google/cloud/dialogflow/v2beta1", - "google/longrunning", + "google/cloud/iot/v1", + "google/iam/v1", "google/protobuf", - "google/rpc", - "google/type" + "google/rpc" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.dialogflow.v2beta1": 21 - } - }, - "java_multiple_files": { + "cc_enable_arenas": { "valueCounts": { - "true": 21 + "true": 2 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/dialogflow/v2beta1;dialogflow": 21 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 21 + "google.golang.org/genproto/googleapis/cloud/iot/v1;iot": 2 } }, - "objc_class_prefix": { + "java_multiple_files": { "valueCounts": { - "DF": 21 + "true": 2 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Dialogflow.V2beta1": 21 + "com.google.cloud.iot.v1": 2 } } }, "services": [ { - "shortName": "Agents", - "fullName": "google.cloud.dialogflow.v2beta1.Agents", + "shortName": "DeviceManager", + "fullName": "google.cloud.iot.v1.DeviceManager", "methods": [ { - "shortName": "DeleteAgent", - "fullName": "google.cloud.dialogflow.v2beta1.Agents.DeleteAgent", + "shortName": "BindDeviceToGateway", + "fullName": "google.cloud.iot.v1.DeviceManager.BindDeviceToGateway", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2beta1/{parent=projects/*}/agent" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/registries/*}:bindDeviceToGateway" }, { - "httpMethod": "DELETE", - "path": "/v2beta1/{parent=projects/*/locations/*}/agent" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/registries/*/groups/*}:bindDeviceToGateway" } ] }, { - "shortName": "ExportAgent", - "fullName": "google.cloud.dialogflow.v2beta1.Agents.ExportAgent", + "shortName": "CreateDevice", + "fullName": "google.cloud.iot.v1.DeviceManager.CreateDevice", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*}/agent:export" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*}/agent:export" + "path": "/v1/{parent=projects/*/locations/*/registries/*}/devices" } ] }, { - "shortName": "GetAgent", - "fullName": "google.cloud.dialogflow.v2beta1.Agents.GetAgent", + "shortName": "CreateDeviceRegistry", + "fullName": "google.cloud.iot.v1.DeviceManager.CreateDeviceRegistry", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*}/agent" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*}/agent" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/registries" } ] }, { - "shortName": "GetValidationResult", - "fullName": "google.cloud.dialogflow.v2beta1.Agents.GetValidationResult", + "shortName": "DeleteDevice", + "fullName": "google.cloud.iot.v1.DeviceManager.DeleteDevice", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*}/agent/validationResult" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*}/agent/validationResult" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}" } ] }, { - "shortName": "ImportAgent", - "fullName": "google.cloud.dialogflow.v2beta1.Agents.ImportAgent", + "shortName": "DeleteDeviceRegistry", + "fullName": "google.cloud.iot.v1.DeviceManager.DeleteDeviceRegistry", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*}/agent:import" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*}/agent:import" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/registries/*}" } ] }, { - "shortName": "RestoreAgent", - "fullName": "google.cloud.dialogflow.v2beta1.Agents.RestoreAgent", + "shortName": "GetDevice", + "fullName": "google.cloud.iot.v1.DeviceManager.GetDevice", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*}/agent:restore" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}" }, { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*}/agent:restore" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/registries/*/groups/*/devices/*}" } ] }, { - "shortName": "SearchAgents", - "fullName": "google.cloud.dialogflow.v2beta1.Agents.SearchAgents", + "shortName": "GetDeviceRegistry", + "fullName": "google.cloud.iot.v1.DeviceManager.GetDeviceRegistry", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*}/agent:search" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*}/agent:search" + "path": "/v1/{name=projects/*/locations/*/registries/*}" } ] }, { - "shortName": "SetAgent", - "fullName": "google.cloud.dialogflow.v2beta1.Agents.SetAgent", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.iot.v1.DeviceManager.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{agent.parent=projects/*}/agent" + "path": "/v1/{resource=projects/*/locations/*/registries/*}:getIamPolicy" }, { "httpMethod": "POST", - "path": "/v2beta1/{agent.parent=projects/*/locations/*}/agent" + "path": "/v1/{resource=projects/*/locations/*/registries/*/groups/*}:getIamPolicy" } ] }, { - "shortName": "TrainAgent", - "fullName": "google.cloud.dialogflow.v2beta1.Agents.TrainAgent", + "shortName": "ListDeviceConfigVersions", + "fullName": "google.cloud.iot.v1.DeviceManager.ListDeviceConfigVersions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*}/agent:train" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}/configVersions" }, { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*}/agent:train" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/registries/*/groups/*/devices/*}/configVersions" } ] - } - ] - }, - { - "shortName": "AnswerRecords", - "fullName": "google.cloud.dialogflow.v2beta1.AnswerRecords", - "methods": [ + }, { - "shortName": "GetAnswerRecord", - "fullName": "google.cloud.dialogflow.v2beta1.AnswerRecords.GetAnswerRecord", + "shortName": "ListDeviceRegistries", + "fullName": "google.cloud.iot.v1.DeviceManager.ListDeviceRegistries", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/answerRecords/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/answerRecords/*}" + "path": "/v1/{parent=projects/*/locations/*}/registries" } ] }, { - "shortName": "ListAnswerRecords", - "fullName": "google.cloud.dialogflow.v2beta1.AnswerRecords.ListAnswerRecords", + "shortName": "ListDeviceStates", + "fullName": "google.cloud.iot.v1.DeviceManager.ListDeviceStates", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*}/answerRecords" + "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}/states" }, { "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*}/answerRecords" + "path": "/v1/{name=projects/*/locations/*/registries/*/groups/*/devices/*}/states" } ] }, { - "shortName": "UpdateAnswerRecord", - "fullName": "google.cloud.dialogflow.v2beta1.AnswerRecords.UpdateAnswerRecord", + "shortName": "ListDevices", + "fullName": "google.cloud.iot.v1.DeviceManager.ListDevices", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2beta1/{answer_record.name=projects/*/answerRecords/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/registries/*}/devices" }, { - "httpMethod": "PATCH", - "path": "/v2beta1/{answer_record.name=projects/*/locations/*/answerRecords/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/registries/*/groups/*}/devices" } ] - } - ] - }, - { - "shortName": "Contexts", - "fullName": "google.cloud.dialogflow.v2beta1.Contexts", - "methods": [ + }, { - "shortName": "CreateContext", - "fullName": "google.cloud.dialogflow.v2beta1.Contexts.CreateContext", + "shortName": "ModifyCloudToDeviceConfig", + "fullName": "google.cloud.iot.v1.DeviceManager.ModifyCloudToDeviceConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent/sessions/*}/contexts" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/sessions/*}/contexts" + "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}:modifyCloudToDeviceConfig" }, { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" + "path": "/v1/{name=projects/*/locations/*/registries/*/groups/*/devices/*}:modifyCloudToDeviceConfig" } ] }, { - "shortName": "DeleteAllContexts", - "fullName": "google.cloud.dialogflow.v2beta1.Contexts.DeleteAllContexts", + "shortName": "SendCommandToDevice", + "fullName": "google.cloud.iot.v1.DeviceManager.SendCommandToDevice", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2beta1/{parent=projects/*/agent/sessions/*}/contexts" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/sessions/*}/contexts" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}:sendCommandToDevice" }, { - "httpMethod": "DELETE", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/registries/*/groups/*/devices/*}:sendCommandToDevice" } ] }, { - "shortName": "DeleteContext", - "fullName": "google.cloud.dialogflow.v2beta1.Contexts.DeleteContext", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.iot.v1.DeviceManager.SetIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/agent/sessions/*/contexts/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/locations/*/agent/sessions/*/contexts/*}" + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/registries/*}:setIamPolicy" }, { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/registries/*/groups/*}:setIamPolicy" } ] }, { - "shortName": "GetContext", - "fullName": "google.cloud.dialogflow.v2beta1.Contexts.GetContext", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.iot.v1.DeviceManager.TestIamPermissions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/agent/sessions/*/contexts/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/agent/sessions/*/contexts/*}" + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/registries/*}:testIamPermissions" }, { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/registries/*/groups/*}:testIamPermissions" } ] }, { - "shortName": "ListContexts", - "fullName": "google.cloud.dialogflow.v2beta1.Contexts.ListContexts", + "shortName": "UnbindDeviceFromGateway", + "fullName": "google.cloud.iot.v1.DeviceManager.UnbindDeviceFromGateway", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent/sessions/*}/contexts" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/contexts" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/sessions/*}/contexts" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/registries/*}:unbindDeviceFromGateway" }, { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/contexts" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/registries/*/groups/*}:unbindDeviceFromGateway" } ] }, { - "shortName": "UpdateContext", - "fullName": "google.cloud.dialogflow.v2beta1.Contexts.UpdateContext", + "shortName": "UpdateDevice", + "fullName": "google.cloud.iot.v1.DeviceManager.UpdateDevice", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v2beta1/{context.name=projects/*/agent/sessions/*/contexts/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{context.name=projects/*/agent/environments/*/users/*/sessions/*/contexts/*}" + "path": "/v1/{device.name=projects/*/locations/*/registries/*/devices/*}" }, { "httpMethod": "PATCH", - "path": "/v2beta1/{context.name=projects/*/locations/*/agent/sessions/*/contexts/*}" - }, + "path": "/v1/{device.name=projects/*/locations/*/registries/*/groups/*/devices/*}" + } + ] + }, + { + "shortName": "UpdateDeviceRegistry", + "fullName": "google.cloud.iot.v1.DeviceManager.UpdateDeviceRegistry", + "mode": "UNARY", + "bindings": [ { "httpMethod": "PATCH", - "path": "/v2beta1/{context.name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/contexts/*}" + "path": "/v1/{device_registry.name=projects/*/locations/*/registries/*}" } ] } ] + } + ], + "configFile": "cloudiot_v1.yaml" + }, + { + "id": "google.cloud.kms.v1", + "directory": "google/cloud/kms/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "cloudkms.googleapis.com", + "title": "Cloud Key Management Service (KMS) API", + "description": "Manages keys and performs cryptographic operations in a central cloud service, for direct use by other cloud resources and applications.", + "importDirectories": [ + "google/api", + "google/cloud/kms/v1", + "google/protobuf" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 2 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Kms.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/kms/v1;kms": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.kms.v1": 2 + } }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Kms\\V1": 2 + } + } + }, + "services": [ { - "shortName": "ConversationProfiles", - "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles", + "shortName": "KeyManagementService", + "fullName": "google.cloud.kms.v1.KeyManagementService", "methods": [ { - "shortName": "CreateConversationProfile", - "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles.CreateConversationProfile", + "shortName": "AsymmetricDecrypt", + "fullName": "google.cloud.kms.v1.KeyManagementService.AsymmetricDecrypt", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*}/conversationProfiles" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*}/conversationProfiles" + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:asymmetricDecrypt" } ] }, { - "shortName": "DeleteConversationProfile", - "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles.DeleteConversationProfile", + "shortName": "AsymmetricSign", + "fullName": "google.cloud.kms.v1.KeyManagementService.AsymmetricSign", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/conversationProfiles/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/locations/*/conversationProfiles/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:asymmetricSign" } ] }, { - "shortName": "GetConversationProfile", - "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile", + "shortName": "CreateCryptoKey", + "fullName": "google.cloud.kms.v1.KeyManagementService.CreateCryptoKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/conversationProfiles/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/conversationProfiles/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/keyRings/*}/cryptoKeys" } ] }, { - "shortName": "ListConversationProfiles", - "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles.ListConversationProfiles", + "shortName": "CreateCryptoKeyVersion", + "fullName": "google.cloud.kms.v1.KeyManagementService.CreateCryptoKeyVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*}/conversationProfiles" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*}/conversationProfiles" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/keyRings/*/cryptoKeys/*}/cryptoKeyVersions" } ] }, { - "shortName": "UpdateConversationProfile", - "fullName": "google.cloud.dialogflow.v2beta1.ConversationProfiles.UpdateConversationProfile", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v2beta1/{conversation_profile.name=projects/*/conversationProfiles/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{conversation_profile.name=projects/*/locations/*/conversationProfiles/*}" - } - ] - } - ] - }, - { - "shortName": "Conversations", - "fullName": "google.cloud.dialogflow.v2beta1.Conversations", - "methods": [ - { - "shortName": "BatchCreateMessages", - "fullName": "google.cloud.dialogflow.v2beta1.Conversations.BatchCreateMessages", + "shortName": "CreateImportJob", + "fullName": "google.cloud.kms.v1.KeyManagementService.CreateImportJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/conversations/*}/messages:batchCreate" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*}/messages:batchCreate" + "path": "/v1/{parent=projects/*/locations/*/keyRings/*}/importJobs" } ] }, { - "shortName": "CompleteConversation", - "fullName": "google.cloud.dialogflow.v2beta1.Conversations.CompleteConversation", + "shortName": "CreateKeyRing", + "fullName": "google.cloud.kms.v1.KeyManagementService.CreateKeyRing", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{name=projects/*/conversations/*}:complete" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{name=projects/*/locations/*/conversations/*}:complete" + "path": "/v1/{parent=projects/*/locations/*}/keyRings" } ] }, { - "shortName": "CreateConversation", - "fullName": "google.cloud.dialogflow.v2beta1.Conversations.CreateConversation", + "shortName": "Decrypt", + "fullName": "google.cloud.kms.v1.KeyManagementService.Decrypt", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*}/conversations" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*}/conversations" + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}:decrypt" } ] }, { - "shortName": "GetConversation", - "fullName": "google.cloud.dialogflow.v2beta1.Conversations.GetConversation", + "shortName": "DestroyCryptoKeyVersion", + "fullName": "google.cloud.kms.v1.KeyManagementService.DestroyCryptoKeyVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/conversations/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/conversations/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:destroy" } ] }, { - "shortName": "ListConversations", - "fullName": "google.cloud.dialogflow.v2beta1.Conversations.ListConversations", + "shortName": "Encrypt", + "fullName": "google.cloud.kms.v1.KeyManagementService.Encrypt", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*}/conversations" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*}/conversations" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/**}:encrypt" } ] }, { - "shortName": "ListMessages", - "fullName": "google.cloud.dialogflow.v2beta1.Conversations.ListMessages", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/conversations/*}/messages" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*}/messages" - } - ] - } - ] - }, - { - "shortName": "Documents", - "fullName": "google.cloud.dialogflow.v2beta1.Documents", - "methods": [ - { - "shortName": "CreateDocument", - "fullName": "google.cloud.dialogflow.v2beta1.Documents.CreateDocument", + "shortName": "GenerateRandomBytes", + "fullName": "google.cloud.kms.v1.KeyManagementService.GenerateRandomBytes", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/knowledgeBases/*}/documents" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/knowledgeBases/*}/documents" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent/knowledgeBases/*}/documents" + "path": "/v1/{location=projects/*/locations/*}:generateRandomBytes" } ] }, { - "shortName": "DeleteDocument", - "fullName": "google.cloud.dialogflow.v2beta1.Documents.DeleteDocument", + "shortName": "GetCryptoKey", + "fullName": "google.cloud.kms.v1.KeyManagementService.GetCryptoKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/knowledgeBases/*/documents/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/locations/*/knowledgeBases/*/documents/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/agent/knowledgeBases/*/documents/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}" } ] }, { - "shortName": "GetDocument", - "fullName": "google.cloud.dialogflow.v2beta1.Documents.GetDocument", + "shortName": "GetCryptoKeyVersion", + "fullName": "google.cloud.kms.v1.KeyManagementService.GetCryptoKeyVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/knowledgeBases/*/documents/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/knowledgeBases/*/documents/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/agent/knowledgeBases/*/documents/*}" + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}" } ] }, { - "shortName": "ImportDocuments", - "fullName": "google.cloud.dialogflow.v2beta1.Documents.ImportDocuments", + "shortName": "GetImportJob", + "fullName": "google.cloud.kms.v1.KeyManagementService.GetImportJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/knowledgeBases/*}/documents:import" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/knowledgeBases/*}/documents:import" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/keyRings/*/importJobs/*}" } ] }, { - "shortName": "ListDocuments", - "fullName": "google.cloud.dialogflow.v2beta1.Documents.ListDocuments", + "shortName": "GetKeyRing", + "fullName": "google.cloud.kms.v1.KeyManagementService.GetKeyRing", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/knowledgeBases/*}/documents" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/knowledgeBases/*}/documents" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent/knowledgeBases/*}/documents" + "path": "/v1/{name=projects/*/locations/*/keyRings/*}" } ] }, { - "shortName": "ReloadDocument", - "fullName": "google.cloud.dialogflow.v2beta1.Documents.ReloadDocument", + "shortName": "GetPublicKey", + "fullName": "google.cloud.kms.v1.KeyManagementService.GetPublicKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{name=projects/*/knowledgeBases/*/documents/*}:reload" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{name=projects/*/locations/*/knowledgeBases/*/documents/*}:reload" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{name=projects/*/agent/knowledgeBases/*/documents/*}:reload" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}/publicKey" } ] }, { - "shortName": "UpdateDocument", - "fullName": "google.cloud.dialogflow.v2beta1.Documents.UpdateDocument", + "shortName": "ImportCryptoKeyVersion", + "fullName": "google.cloud.kms.v1.KeyManagementService.ImportCryptoKeyVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2beta1/{document.name=projects/*/knowledgeBases/*/documents/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{document.name=projects/*/locations/*/knowledgeBases/*/documents/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{document.name=projects/*/agent/knowledgeBases/*/documents/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/keyRings/*/cryptoKeys/*}/cryptoKeyVersions:import" } ] - } - ] - }, - { - "shortName": "EntityTypes", - "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes", - "methods": [ + }, { - "shortName": "BatchCreateEntities", - "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.BatchCreateEntities", + "shortName": "ListCryptoKeyVersions", + "fullName": "google.cloud.kms.v1.KeyManagementService.ListCryptoKeyVersions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent/entityTypes/*}/entities:batchCreate" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchCreate" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/keyRings/*/cryptoKeys/*}/cryptoKeyVersions" } ] }, { - "shortName": "BatchDeleteEntities", - "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntities", + "shortName": "ListCryptoKeys", + "fullName": "google.cloud.kms.v1.KeyManagementService.ListCryptoKeys", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent/entityTypes/*}/entities:batchDelete" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchDelete" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/keyRings/*}/cryptoKeys" } ] }, { - "shortName": "BatchDeleteEntityTypes", - "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntityTypes", + "shortName": "ListImportJobs", + "fullName": "google.cloud.kms.v1.KeyManagementService.ListImportJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent}/entityTypes:batchDelete" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/entityTypes:batchDelete" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/keyRings/*}/importJobs" } ] }, { - "shortName": "BatchUpdateEntities", - "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntities", + "shortName": "ListKeyRings", + "fullName": "google.cloud.kms.v1.KeyManagementService.ListKeyRings", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent/entityTypes/*}/entities:batchUpdate" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/entityTypes/*}/entities:batchUpdate" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/keyRings" } ] }, { - "shortName": "BatchUpdateEntityTypes", - "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes", + "shortName": "MacSign", + "fullName": "google.cloud.kms.v1.KeyManagementService.MacSign", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent}/entityTypes:batchUpdate" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/entityTypes:batchUpdate" + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:macSign" } ] }, { - "shortName": "CreateEntityType", - "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.CreateEntityType", + "shortName": "MacVerify", + "fullName": "google.cloud.kms.v1.KeyManagementService.MacVerify", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent}/entityTypes" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/entityTypes" + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:macVerify" } ] }, { - "shortName": "DeleteEntityType", - "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.DeleteEntityType", + "shortName": "RestoreCryptoKeyVersion", + "fullName": "google.cloud.kms.v1.KeyManagementService.RestoreCryptoKeyVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/agent/entityTypes/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/locations/*/agent/entityTypes/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:restore" } ] }, { - "shortName": "GetEntityType", - "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.GetEntityType", + "shortName": "UpdateCryptoKey", + "fullName": "google.cloud.kms.v1.KeyManagementService.UpdateCryptoKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/agent/entityTypes/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/agent/entityTypes/*}" + "httpMethod": "PATCH", + "path": "/v1/{crypto_key.name=projects/*/locations/*/keyRings/*/cryptoKeys/*}" } ] }, { - "shortName": "ListEntityTypes", - "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.ListEntityTypes", + "shortName": "UpdateCryptoKeyPrimaryVersion", + "fullName": "google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyPrimaryVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent}/entityTypes" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/entityTypes" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}:updatePrimaryVersion" } ] }, { - "shortName": "UpdateEntityType", - "fullName": "google.cloud.dialogflow.v2beta1.EntityTypes.UpdateEntityType", + "shortName": "UpdateCryptoKeyVersion", + "fullName": "google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v2beta1/{entity_type.name=projects/*/agent/entityTypes/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{entity_type.name=projects/*/locations/*/agent/entityTypes/*}" + "path": "/v1/{crypto_key_version.name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}" } ] } ] + } + ], + "configFile": "cloudkms_v1.yaml" + }, + { + "id": "google.cloud.language.v1", + "directory": "google/cloud/language/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "language.googleapis.com", + "title": "Cloud Natural Language API", + "description": "Provides natural language understanding technologies, such as sentiment analysis, entity recognition, entity sentiment analysis, and other text annotations, to developers.", + "importDirectories": [ + "google/api" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/language/v1;language": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } }, + "java_package": { + "valueCounts": { + "com.google.cloud.language.v1": 1 + } + } + }, + "services": [ { - "shortName": "Environments", - "fullName": "google.cloud.dialogflow.v2beta1.Environments", + "shortName": "LanguageService", + "fullName": "google.cloud.language.v1.LanguageService", "methods": [ { - "shortName": "CreateEnvironment", - "fullName": "google.cloud.dialogflow.v2beta1.Environments.CreateEnvironment", + "shortName": "AnalyzeEntities", + "fullName": "google.cloud.language.v1.LanguageService.AnalyzeEntities", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent}/environments" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/environments" + "path": "/v1/documents:analyzeEntities" } ] }, { - "shortName": "DeleteEnvironment", - "fullName": "google.cloud.dialogflow.v2beta1.Environments.DeleteEnvironment", + "shortName": "AnalyzeEntitySentiment", + "fullName": "google.cloud.language.v1.LanguageService.AnalyzeEntitySentiment", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/agent/environments/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*}" + "httpMethod": "POST", + "path": "/v1/documents:analyzeEntitySentiment" } ] }, { - "shortName": "GetEnvironment", - "fullName": "google.cloud.dialogflow.v2beta1.Environments.GetEnvironment", + "shortName": "AnalyzeSentiment", + "fullName": "google.cloud.language.v1.LanguageService.AnalyzeSentiment", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/agent/environments/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*}" + "httpMethod": "POST", + "path": "/v1/documents:analyzeSentiment" } ] }, { - "shortName": "GetEnvironmentHistory", - "fullName": "google.cloud.dialogflow.v2beta1.Environments.GetEnvironmentHistory", + "shortName": "AnalyzeSyntax", + "fullName": "google.cloud.language.v1.LanguageService.AnalyzeSyntax", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent/environments/*}/history" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*}/history" + "httpMethod": "POST", + "path": "/v1/documents:analyzeSyntax" } ] }, { - "shortName": "ListEnvironments", - "fullName": "google.cloud.dialogflow.v2beta1.Environments.ListEnvironments", + "shortName": "AnnotateText", + "fullName": "google.cloud.language.v1.LanguageService.AnnotateText", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent}/environments" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/environments" + "httpMethod": "POST", + "path": "/v1/documents:annotateText" } ] }, { - "shortName": "UpdateEnvironment", - "fullName": "google.cloud.dialogflow.v2beta1.Environments.UpdateEnvironment", + "shortName": "ClassifyText", + "fullName": "google.cloud.language.v1.LanguageService.ClassifyText", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2beta1/{environment.name=projects/*/agent/environments/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{environment.name=projects/*/locations/*/agent/environments/*}" + "httpMethod": "POST", + "path": "/v1/documents:classifyText" } ] } ] + } + ], + "configFile": "language_v1.yaml" + }, + { + "id": "google.cloud.language.v1beta2", + "directory": "google/cloud/language/v1beta2", + "version": "v1beta2", + "majorVersion": "v1", + "hostName": "language.googleapis.com", + "title": "Google Cloud Natural Language API", + "description": "Google Cloud Natural Language API provides natural language understanding technologies to developers. Examples include sentiment analysis, entity recognition, and text annotations.", + "importDirectories": [ + "google/api", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/language/v1beta2;language": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } }, + "java_package": { + "valueCounts": { + "com.google.cloud.language.v1beta2": 1 + } + } + }, + "services": [ { - "shortName": "Fulfillments", - "fullName": "google.cloud.dialogflow.v2beta1.Fulfillments", + "shortName": "LanguageService", + "fullName": "google.cloud.language.v1beta2.LanguageService", "methods": [ { - "shortName": "GetFulfillment", - "fullName": "google.cloud.dialogflow.v2beta1.Fulfillments.GetFulfillment", + "shortName": "AnalyzeEntities", + "fullName": "google.cloud.language.v1beta2.LanguageService.AnalyzeEntities", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/agent/fulfillment}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/agent/fulfillment}" + "httpMethod": "POST", + "path": "/v1beta2/documents:analyzeEntities" } ] }, { - "shortName": "UpdateFulfillment", - "fullName": "google.cloud.dialogflow.v2beta1.Fulfillments.UpdateFulfillment", + "shortName": "AnalyzeEntitySentiment", + "fullName": "google.cloud.language.v1beta2.LanguageService.AnalyzeEntitySentiment", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2beta1/{fulfillment.name=projects/*/agent/fulfillment}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{fulfillment.name=projects/*/locations/*/agent/fulfillment}" + "httpMethod": "POST", + "path": "/v1beta2/documents:analyzeEntitySentiment" } ] - } - ] - }, - { - "shortName": "Intents", - "fullName": "google.cloud.dialogflow.v2beta1.Intents", - "methods": [ + }, { - "shortName": "BatchDeleteIntents", - "fullName": "google.cloud.dialogflow.v2beta1.Intents.BatchDeleteIntents", + "shortName": "AnalyzeSentiment", + "fullName": "google.cloud.language.v1beta2.LanguageService.AnalyzeSentiment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent}/intents:batchDelete" - }, + "path": "/v1beta2/documents:analyzeSentiment" + } + ] + }, + { + "shortName": "AnalyzeSyntax", + "fullName": "google.cloud.language.v1beta2.LanguageService.AnalyzeSyntax", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/intents:batchDelete" + "path": "/v1beta2/documents:analyzeSyntax" } ] }, { - "shortName": "BatchUpdateIntents", - "fullName": "google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents", + "shortName": "AnnotateText", + "fullName": "google.cloud.language.v1beta2.LanguageService.AnnotateText", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent}/intents:batchUpdate" - }, + "path": "/v1beta2/documents:annotateText" + } + ] + }, + { + "shortName": "ClassifyText", + "fullName": "google.cloud.language.v1beta2.LanguageService.ClassifyText", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/intents:batchUpdate" + "path": "/v1beta2/documents:classifyText" } ] - }, + } + ] + } + ], + "configFile": "language_v1beta2.yaml" + }, + { + "id": "google.cloud.lifesciences.v2beta", + "directory": "google/cloud/lifesciences/v2beta", + "version": "v2beta", + "majorVersion": "v2", + "hostName": "lifesciences.googleapis.com", + "title": "Cloud Life Sciences API", + "description": "Cloud Life Sciences is a suite of services and tools for managing, processing, and transforming life sciences data.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.LifeSciences.V2Beta": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/lifesciences/v2beta;lifesciences": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.lifesciences.v2beta": 1 + } + }, + "objc_class_prefix": { + "valueCounts": { + "CLSW": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\LifeSciences\\V2beta": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::LifeSciences::V2beta": 1 + } + } + }, + "services": [ + { + "shortName": "WorkflowsServiceV2Beta", + "fullName": "google.cloud.lifesciences.v2beta.WorkflowsServiceV2Beta", + "methods": [ { - "shortName": "CreateIntent", - "fullName": "google.cloud.dialogflow.v2beta1.Intents.CreateIntent", + "shortName": "RunPipeline", + "fullName": "google.cloud.lifesciences.v2beta.WorkflowsServiceV2Beta.RunPipeline", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent}/intents" - }, + "path": "/v2beta/{parent=projects/*/locations/*}/pipelines:run" + } + ] + } + ] + } + ], + "configFile": "lifesciences_v2beta.yaml" + }, + { + "id": "google.cloud.managedidentities.v1", + "directory": "google/cloud/managedidentities/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "managedidentities.googleapis.com", + "title": "Managed Service for Microsoft Active Directory API", + "description": "The Managed Service for Microsoft Active Directory API is used for managing a highly available, hardened service running Microsoft Active Directory (AD).", + "importDirectories": [ + "google/api", + "google/cloud/managedidentities/v1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.ManagedIdentities.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/managedidentities/v1;managedidentities": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.managedidentities.v1": 2 + } + }, + "objc_class_prefix": { + "valueCounts": { + "": 1, + "GCMI": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\ManagedIdentities\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::ManagedIdentities::V1": 2 + } + } + }, + "services": [ + { + "shortName": "ManagedIdentitiesService", + "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService", + "methods": [ + { + "shortName": "AttachTrust", + "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.AttachTrust", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/intents" + "path": "/v1/{name=projects/*/locations/global/domains/*}:attachTrust" } ] }, { - "shortName": "DeleteIntent", - "fullName": "google.cloud.dialogflow.v2beta1.Intents.DeleteIntent", + "shortName": "CreateMicrosoftAdDomain", + "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.CreateMicrosoftAdDomain", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/agent/intents/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/locations/*/agent/intents/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/global}/domains" } ] }, { - "shortName": "GetIntent", - "fullName": "google.cloud.dialogflow.v2beta1.Intents.GetIntent", + "shortName": "DeleteDomain", + "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.DeleteDomain", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/agent/intents/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/agent/intents/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/global/domains/*}" } ] }, { - "shortName": "ListIntents", - "fullName": "google.cloud.dialogflow.v2beta1.Intents.ListIntents", + "shortName": "DetachTrust", + "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.DetachTrust", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent}/intents" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/intents" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent/environments/*}/intents" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*}/intents" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/global/domains/*}:detachTrust" } ] }, { - "shortName": "UpdateIntent", - "fullName": "google.cloud.dialogflow.v2beta1.Intents.UpdateIntent", + "shortName": "GetDomain", + "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.GetDomain", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2beta1/{intent.name=projects/*/agent/intents/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{intent.name=projects/*/locations/*/agent/intents/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/global/domains/*}" } ] - } - ] - }, - { - "shortName": "KnowledgeBases", - "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases", - "methods": [ + }, { - "shortName": "CreateKnowledgeBase", - "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases.CreateKnowledgeBase", + "shortName": "ListDomains", + "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.ListDomains", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*}/knowledgeBases" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*}/knowledgeBases" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent}/knowledgeBases" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/global}/domains" } ] }, { - "shortName": "DeleteKnowledgeBase", - "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases.DeleteKnowledgeBase", + "shortName": "ReconfigureTrust", + "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.ReconfigureTrust", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/knowledgeBases/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/locations/*/knowledgeBases/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/agent/knowledgeBases/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/global/domains/*}:reconfigureTrust" } ] }, { - "shortName": "GetKnowledgeBase", - "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases.GetKnowledgeBase", + "shortName": "ResetAdminPassword", + "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.ResetAdminPassword", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/knowledgeBases/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/knowledgeBases/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/agent/knowledgeBases/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/global/domains/*}:resetAdminPassword" } ] }, { - "shortName": "ListKnowledgeBases", - "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases", + "shortName": "UpdateDomain", + "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.UpdateDomain", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*}/knowledgeBases" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*}/knowledgeBases" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent}/knowledgeBases" + "httpMethod": "PATCH", + "path": "/v1/{domain.name=projects/*/locations/global/domains/*}" } ] }, { - "shortName": "UpdateKnowledgeBase", - "fullName": "google.cloud.dialogflow.v2beta1.KnowledgeBases.UpdateKnowledgeBase", + "shortName": "ValidateTrust", + "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.ValidateTrust", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2beta1/{knowledge_base.name=projects/*/knowledgeBases/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{knowledge_base.name=projects/*/locations/*/knowledgeBases/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{knowledge_base.name=projects/*/agent/knowledgeBases/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/global/domains/*}:validateTrust" } ] } ] + } + ], + "configFile": "managedidentities_v1.yaml" + }, + { + "id": "google.cloud.managedidentities.v1beta1", + "directory": "google/cloud/managedidentities/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "managedidentities.googleapis.com", + "title": "Managed Service for Microsoft Active Directory API", + "description": "The Managed Service for Microsoft Active Directory API is used for managing a highly available, hardened service running Microsoft Active Directory (AD).", + "importDirectories": [ + "google/api", + "google/cloud/managedidentities/v1beta1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.ManagedIdentities.V1Beta1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/managedidentities/v1beta1;managedidentities": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.managedidentities.v1beta1": 2 + } + }, + "objc_class_prefix": { + "valueCounts": { + "": 1, + "GCMI": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\ManagedIdentities\\V1beta1": 2 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::ManagedIdentities::V1beta1": 2 + } + } + }, + "services": [ { - "shortName": "Participants", - "fullName": "google.cloud.dialogflow.v2beta1.Participants", + "shortName": "ManagedIdentitiesService", + "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService", "methods": [ { - "shortName": "AnalyzeContent", - "fullName": "google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent", + "shortName": "AttachTrust", + "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.AttachTrust", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{participant=projects/*/conversations/*/participants/*}:analyzeContent" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{participant=projects/*/locations/*/conversations/*/participants/*}:analyzeContent" + "path": "/v1beta1/{name=projects/*/locations/global/domains/*}:attachTrust" } ] }, { - "shortName": "CompileSuggestion", - "fullName": "google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion", + "shortName": "CreateMicrosoftAdDomain", + "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.CreateMicrosoftAdDomain", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/conversations/*/participants/*}/suggestions:compile" + "path": "/v1beta1/{parent=projects/*/locations/global}/domains" } ] }, { - "shortName": "CreateParticipant", - "fullName": "google.cloud.dialogflow.v2beta1.Participants.CreateParticipant", + "shortName": "DeleteDomain", + "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.DeleteDomain", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/conversations/*}/participants" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*}/participants" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/global/domains/*}" } ] }, { - "shortName": "GetParticipant", - "fullName": "google.cloud.dialogflow.v2beta1.Participants.GetParticipant", + "shortName": "DetachTrust", + "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.DetachTrust", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/conversations/*/participants/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/conversations/*/participants/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/global/domains/*}:detachTrust" } ] }, { - "shortName": "ListParticipants", - "fullName": "google.cloud.dialogflow.v2beta1.Participants.ListParticipants", + "shortName": "GetDomain", + "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.GetDomain", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/conversations/*}/participants" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*}/participants" + "path": "/v1beta1/{name=projects/*/locations/global/domains/*}" } ] }, { - "shortName": "ListSuggestions", - "fullName": "google.cloud.dialogflow.v2beta1.Participants.ListSuggestions", + "shortName": "ListDomains", + "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.ListDomains", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/conversations/*/participants/*}/suggestions" + "path": "/v1beta1/{parent=projects/*/locations/global}/domains" } ] }, { - "shortName": "SuggestArticles", - "fullName": "google.cloud.dialogflow.v2beta1.Participants.SuggestArticles", + "shortName": "ReconfigureTrust", + "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.ReconfigureTrust", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestArticles" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestArticles" + "path": "/v1beta1/{name=projects/*/locations/global/domains/*}:reconfigureTrust" } ] }, { - "shortName": "SuggestFaqAnswers", - "fullName": "google.cloud.dialogflow.v2beta1.Participants.SuggestFaqAnswers", + "shortName": "ResetAdminPassword", + "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.ResetAdminPassword", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers" + "path": "/v1beta1/{name=projects/*/locations/global/domains/*}:resetAdminPassword" } ] }, { - "shortName": "SuggestSmartReplies", - "fullName": "google.cloud.dialogflow.v2beta1.Participants.SuggestSmartReplies", + "shortName": "UpdateDomain", + "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.UpdateDomain", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestSmartReplies" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestSmartReplies" + "httpMethod": "PATCH", + "path": "/v1beta1/{domain.name=projects/*/locations/global/domains/*}" } ] }, { - "shortName": "UpdateParticipant", - "fullName": "google.cloud.dialogflow.v2beta1.Participants.UpdateParticipant", + "shortName": "ValidateTrust", + "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.ValidateTrust", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2beta1/{participant.name=projects/*/conversations/*/participants/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{participant.name=projects/*/locations/*/conversations/*/participants/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/global/domains/*}:validateTrust" } ] } ] + } + ], + "configFile": "managedidentities_v1beta1.yaml" + }, + { + "id": "google.cloud.mediatranslation.v1alpha1", + "directory": "google/cloud/mediatranslation/v1alpha1", + "version": "v1alpha1", + "majorVersion": "v1", + "hostName": "mediatranslation.googleapis.com", + "title": "Media Translation API", + "description": "", + "importDirectories": [ + "google/api", + "google/rpc" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/mediatranslation/v1alpha1;mediatranslation": 1 + } }, + "java_package": { + "valueCounts": { + "com.google.cloud.mediatranslation.v1alpha1": 1 + } + } + }, + "services": [ { - "shortName": "SessionEntityTypes", - "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes", + "shortName": "SpeechTranslationService", + "fullName": "google.cloud.mediatranslation.v1alpha1.SpeechTranslationService", "methods": [ { - "shortName": "CreateSessionEntityType", - "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes.CreateSessionEntityType", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent/sessions/*}/entityTypes" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/entityTypes" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/sessions/*}/entityTypes" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/entityTypes" - } - ] - }, - { - "shortName": "DeleteSessionEntityType", - "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes.DeleteSessionEntityType", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/agent/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" - } - ] - }, - { - "shortName": "GetSessionEntityType", - "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes.GetSessionEntityType", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/agent/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" - } - ] - }, - { - "shortName": "ListSessionEntityTypes", - "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent/sessions/*}/entityTypes" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent/environments/*/users/*/sessions/*}/entityTypes" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/sessions/*}/entityTypes" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/agent/environments/*/users/*/sessions/*}/entityTypes" - } - ] - }, - { - "shortName": "UpdateSessionEntityType", - "fullName": "google.cloud.dialogflow.v2beta1.SessionEntityTypes.UpdateSessionEntityType", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v2beta1/{session_entity_type.name=projects/*/agent/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{session_entity_type.name=projects/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{session_entity_type.name=projects/*/locations/*/agent/sessions/*/entityTypes/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2beta1/{session_entity_type.name=projects/*/locations/*/agent/environments/*/users/*/sessions/*/entityTypes/*}" - } - ] + "shortName": "StreamingTranslateSpeech", + "fullName": "google.cloud.mediatranslation.v1alpha1.SpeechTranslationService.StreamingTranslateSpeech", + "mode": "BIDIRECTIONAL_STREAMING" + } + ] + } + ], + "configFile": "mediatranslation_v1alpha1.yaml" + }, + { + "id": "google.cloud.mediatranslation.v1beta1", + "directory": "google/cloud/mediatranslation/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "mediatranslation.googleapis.com", + "title": "Media Translation API", + "description": "", + "importDirectories": [ + "google/api", + "google/rpc" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 1 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.MediaTranslation.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/mediatranslation/v1beta1;mediatranslation": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.mediatranslation.v1beta1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\MediaTranslation\\V1beta1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::MediaTranslation::V1beta1": 1 + } + } + }, + "services": [ + { + "shortName": "SpeechTranslationService", + "fullName": "google.cloud.mediatranslation.v1beta1.SpeechTranslationService", + "methods": [ + { + "shortName": "StreamingTranslateSpeech", + "fullName": "google.cloud.mediatranslation.v1beta1.SpeechTranslationService.StreamingTranslateSpeech", + "mode": "BIDIRECTIONAL_STREAMING" } ] + } + ], + "configFile": "mediatranslation_v1beta1.yaml" + }, + { + "id": "google.cloud.memcache.v1", + "directory": "google/cloud/memcache/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "memcache.googleapis.com", + "title": "Cloud Memorystore for Memcached API", + "description": "Google Cloud Memorystore for Memcached API is used for creating and managing Memcached instances in GCP.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/memcache/v1;memcache": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } }, + "java_package": { + "valueCounts": { + "com.google.cloud.memcache.v1": 1 + } + } + }, + "services": [ { - "shortName": "Sessions", - "fullName": "google.cloud.dialogflow.v2beta1.Sessions", + "shortName": "CloudMemcache", + "fullName": "google.cloud.memcache.v1.CloudMemcache", "methods": [ { - "shortName": "DetectIntent", - "fullName": "google.cloud.dialogflow.v2beta1.Sessions.DetectIntent", + "shortName": "ApplyParameters", + "fullName": "google.cloud.memcache.v1.CloudMemcache.ApplyParameters", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{session=projects/*/agent/sessions/*}:detectIntent" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{session=projects/*/agent/environments/*/users/*/sessions/*}:detectIntent" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{session=projects/*/locations/*/agent/sessions/*}:detectIntent" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{session=projects/*/locations/*/agent/environments/*/users/*/sessions/*}:detectIntent" + "path": "/v1/{name=projects/*/locations/*/instances/*}:applyParameters" } ] }, { - "shortName": "StreamingDetectIntent", - "fullName": "google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent", - "mode": "BIDIRECTIONAL_STREAMING" - } - ] - }, - { - "shortName": "Versions", - "fullName": "google.cloud.dialogflow.v2beta1.Versions", - "methods": [ - { - "shortName": "CreateVersion", - "fullName": "google.cloud.dialogflow.v2beta1.Versions.CreateVersion", + "shortName": "CreateInstance", + "fullName": "google.cloud.memcache.v1.CloudMemcache.CreateInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/agent}/versions" - }, - { - "httpMethod": "POST", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/versions" + "path": "/v1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "DeleteVersion", - "fullName": "google.cloud.dialogflow.v2beta1.Versions.DeleteVersion", + "shortName": "DeleteInstance", + "fullName": "google.cloud.memcache.v1.CloudMemcache.DeleteInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/agent/versions/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2beta1/{name=projects/*/locations/*/agent/versions/*}" + "path": "/v1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "GetVersion", - "fullName": "google.cloud.dialogflow.v2beta1.Versions.GetVersion", + "shortName": "GetInstance", + "fullName": "google.cloud.memcache.v1.CloudMemcache.GetInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/agent/versions/*}" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{name=projects/*/locations/*/agent/versions/*}" + "path": "/v1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "ListVersions", - "fullName": "google.cloud.dialogflow.v2beta1.Versions.ListVersions", + "shortName": "ListInstances", + "fullName": "google.cloud.memcache.v1.CloudMemcache.ListInstances", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/agent}/versions" - }, - { - "httpMethod": "GET", - "path": "/v2beta1/{parent=projects/*/locations/*/agent}/versions" + "path": "/v1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "UpdateVersion", - "fullName": "google.cloud.dialogflow.v2beta1.Versions.UpdateVersion", + "shortName": "UpdateInstance", + "fullName": "google.cloud.memcache.v1.CloudMemcache.UpdateInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v2beta1/{version.name=projects/*/agent/versions/*}" - }, + "path": "/v1/{instance.name=projects/*/locations/*/instances/*}" + } + ] + }, + { + "shortName": "UpdateParameters", + "fullName": "google.cloud.memcache.v1.CloudMemcache.UpdateParameters", + "mode": "UNARY", + "bindings": [ { "httpMethod": "PATCH", - "path": "/v2beta1/{version.name=projects/*/locations/*/agent/versions/*}" + "path": "/v1/{name=projects/*/locations/*/instances/*}:updateParameters" } ] } ] } - ] + ], + "configFile": "memcache_v1.yaml" }, { - "id": "google.cloud.documentai.v1", - "directory": "google/cloud/documentai/v1", - "version": "v1", + "id": "google.cloud.memcache.v1beta2", + "directory": "google/cloud/memcache/v1beta2", + "version": "v1beta2", "majorVersion": "v1", - "hostName": "documentai.googleapis.com", - "title": "Cloud Document AI API", - "description": "Service to parse structured information from unstructured or semi-structured documents using state-of-the-art Google AI such as natural language, computer vision, translation, and AutoML.", + "hostName": "memcache.googleapis.com", + "title": "Cloud Memorystore for Memcached API", + "description": "Google Cloud Memorystore for Memcached API is used for creating and managing Memcached instances in GCP.", "importDirectories": [ "google/api", - "google/cloud/documentai/v1", "google/longrunning", - "google/protobuf", - "google/rpc", - "google/type" + "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.documentai.v1": 4 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 4 - } - }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/documentai/v1;documentai": 4 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.DocumentAI.V1": 4 + "google.golang.org/genproto/googleapis/cloud/memcache/v1beta2;memcache": 1 } }, - "php_namespace": { + "java_multiple_files": { "valueCounts": { - "Google\\Cloud\\DocumentAI\\V1": 4 + "true": 1 } }, - "ruby_package": { + "java_package": { "valueCounts": { - "Google::Cloud::DocumentAI::V1": 4 + "com.google.cloud.memcache.v1beta2": 1 } } }, "services": [ { - "shortName": "DocumentProcessorService", - "fullName": "google.cloud.documentai.v1.DocumentProcessorService", + "shortName": "CloudMemcache", + "fullName": "google.cloud.memcache.v1beta2.CloudMemcache", "methods": [ { - "shortName": "BatchProcessDocuments", - "fullName": "google.cloud.documentai.v1.DocumentProcessorService.BatchProcessDocuments", + "shortName": "ApplyParameters", + "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.ApplyParameters", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/processors/*}:batchProcess" + "path": "/v1beta2/{name=projects/*/locations/*/instances/*}:applyParameters" } ] }, { - "shortName": "ProcessDocument", - "fullName": "google.cloud.documentai.v1.DocumentProcessorService.ProcessDocument", + "shortName": "ApplySoftwareUpdate", + "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.ApplySoftwareUpdate", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/processors/*}:process" + "path": "/v1beta2/{instance=projects/*/locations/*/instances/*}:applySoftwareUpdate" } ] }, { - "shortName": "ReviewDocument", - "fullName": "google.cloud.documentai.v1.DocumentProcessorService.ReviewDocument", + "shortName": "CreateInstance", + "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.CreateInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{human_review_config=projects/*/locations/*/processors/*/humanReviewConfig}:reviewDocument" + "path": "/v1beta2/{parent=projects/*/locations/*}/instances" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.documentai.v1beta2", - "directory": "google/cloud/documentai/v1beta2", - "version": "v1beta2", - "majorVersion": "v1", - "hostName": "documentai.googleapis.com", - "title": "Cloud Document AI API", - "description": "Service to parse structured information from unstructured or semi-structured documents using state-of-the-art Google AI such as natural language, computer vision, translation, and AutoML.", - "importDirectories": [ - "google/api", - "google/cloud/documentai/v1beta2", - "google/longrunning", - "google/protobuf", - "google/rpc", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.documentai.v1beta2": 3 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 3 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/documentai/v1beta2;documentai": 3 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.DocumentAI.V1Beta2": 3 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\DocumentAI\\V1beta2": 3 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::DocumentAI::V1beta2": 3 - } - } - }, - "services": [ - { - "shortName": "DocumentUnderstandingService", - "fullName": "google.cloud.documentai.v1beta2.DocumentUnderstandingService", - "methods": [ + }, { - "shortName": "BatchProcessDocuments", - "fullName": "google.cloud.documentai.v1beta2.DocumentUnderstandingService.BatchProcessDocuments", + "shortName": "DeleteInstance", + "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.DeleteInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*/locations/*}/documents:batchProcess" - }, - { - "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*}/documents:batchProcess" + "httpMethod": "DELETE", + "path": "/v1beta2/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "ProcessDocument", - "fullName": "google.cloud.documentai.v1beta2.DocumentUnderstandingService.ProcessDocument", + "shortName": "GetInstance", + "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.GetInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*/locations/*}/documents:process" - }, - { - "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*}/documents:process" + "httpMethod": "GET", + "path": "/v1beta2/{name=projects/*/locations/*/instances/*}" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.documentai.v1beta3", - "directory": "google/cloud/documentai/v1beta3", - "version": "v1beta3", - "majorVersion": "v1", - "hostName": "documentai.googleapis.com", - "title": "Cloud Document AI API", - "description": "Service to parse structured information from unstructured or semi-structured documents using state-of-the-art Google AI such as natural language, computer vision, translation, and AutoML.", - "importDirectories": [ - "google/api", - "google/cloud/documentai/v1beta3", - "google/longrunning", - "google/protobuf", - "google/rpc", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.documentai.v1beta3": 4 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 4 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/documentai/v1beta3;documentai": 4 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.DocumentAI.V1Beta3": 4 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\DocumentAI\\V1beta3": 4 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::DocumentAI::V1beta3": 4 - } - } - }, - "services": [ - { - "shortName": "DocumentProcessorService", - "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService", - "methods": [ + }, { - "shortName": "BatchProcessDocuments", - "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.BatchProcessDocuments", + "shortName": "ListInstances", + "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.ListInstances", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta3/{name=projects/*/locations/*/processors/*}:batchProcess" + "httpMethod": "GET", + "path": "/v1beta2/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "ProcessDocument", - "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.ProcessDocument", + "shortName": "UpdateInstance", + "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.UpdateInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta3/{name=projects/*/locations/*/processors/*}:process" + "httpMethod": "PATCH", + "path": "/v1beta2/{resource.name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "ReviewDocument", - "fullName": "google.cloud.documentai.v1beta3.DocumentProcessorService.ReviewDocument", + "shortName": "UpdateParameters", + "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.UpdateParameters", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta3/{human_review_config=projects/*/locations/*/processors/*/humanReviewConfig}:reviewDocument" + "httpMethod": "PATCH", + "path": "/v1beta2/{name=projects/*/locations/*/instances/*}:updateParameters" } ] } ] } - ] + ], + "configFile": "memcache_v1beta2.yaml" }, { - "id": "google.cloud.domains.v1alpha2", - "directory": "google/cloud/domains/v1alpha2", - "version": "v1alpha2", + "id": "google.cloud.metastore.v1", + "directory": "google/cloud/metastore/v1", + "version": "v1", "majorVersion": "v1", - "hostName": "domains.googleapis.com", - "title": "Cloud Domains API", - "description": "Enables management and configuration of domain names.", + "hostName": "metastore.googleapis.com", + "title": "Dataproc Metastore API", + "description": "The Dataproc Metastore API is used to manage the lifecycle and configuration of metastore services.", "importDirectories": [ "google/api", "google/longrunning", @@ -31767,9 +46633,9 @@ "google/type" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.domains.v1alpha2": 1 + "google.golang.org/genproto/googleapis/cloud/metastore/v1;metastore": 1 } }, "java_multiple_files": { @@ -31777,172 +46643,195 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/domains/v1alpha2;domains": 1 + "com.google.cloud.metastore.v1": 1 } } }, "services": [ { - "shortName": "Domains", - "fullName": "google.cloud.domains.v1alpha2.Domains", + "shortName": "DataprocMetastore", + "fullName": "google.cloud.metastore.v1.DataprocMetastore", "methods": [ { - "shortName": "ConfigureContactSettings", - "fullName": "google.cloud.domains.v1alpha2.Domains.ConfigureContactSettings", + "shortName": "CreateBackup", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.CreateBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha2/{registration=projects/*/locations/*/registrations/*}:configureContactSettings" + "path": "/v1/{parent=projects/*/locations/*/services/*}/backups" } ] }, { - "shortName": "ConfigureDnsSettings", - "fullName": "google.cloud.domains.v1alpha2.Domains.ConfigureDnsSettings", + "shortName": "CreateMetadataImport", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.CreateMetadataImport", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha2/{registration=projects/*/locations/*/registrations/*}:configureDnsSettings" + "path": "/v1/{parent=projects/*/locations/*/services/*}/metadataImports" } ] }, { - "shortName": "ConfigureManagementSettings", - "fullName": "google.cloud.domains.v1alpha2.Domains.ConfigureManagementSettings", + "shortName": "CreateService", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.CreateService", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha2/{registration=projects/*/locations/*/registrations/*}:configureManagementSettings" + "path": "/v1/{parent=projects/*/locations/*}/services" } ] }, { - "shortName": "DeleteRegistration", - "fullName": "google.cloud.domains.v1alpha2.Domains.DeleteRegistration", + "shortName": "DeleteBackup", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.DeleteBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1alpha2/{name=projects/*/locations/*/registrations/*}" + "path": "/v1/{name=projects/*/locations/*/services/*/backups/*}" } ] }, { - "shortName": "ExportRegistration", - "fullName": "google.cloud.domains.v1alpha2.Domains.ExportRegistration", + "shortName": "DeleteService", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.DeleteService", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/services/*}" + } + ] + }, + { + "shortName": "ExportMetadata", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.ExportMetadata", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha2/{name=projects/*/locations/*/registrations/*}:export" + "path": "/v1/{service=projects/*/locations/*/services/*}:exportMetadata" } ] }, { - "shortName": "GetRegistration", - "fullName": "google.cloud.domains.v1alpha2.Domains.GetRegistration", + "shortName": "GetBackup", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.GetBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha2/{name=projects/*/locations/*/registrations/*}" + "path": "/v1/{name=projects/*/locations/*/services/*/backups/*}" } ] }, { - "shortName": "ListRegistrations", - "fullName": "google.cloud.domains.v1alpha2.Domains.ListRegistrations", + "shortName": "GetMetadataImport", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.GetMetadataImport", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha2/{parent=projects/*/locations/*}/registrations" + "path": "/v1/{name=projects/*/locations/*/services/*/metadataImports/*}" } ] }, { - "shortName": "RegisterDomain", - "fullName": "google.cloud.domains.v1alpha2.Domains.RegisterDomain", + "shortName": "GetService", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.GetService", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha2/{parent=projects/*/locations/*}/registrations:register" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/services/*}" } ] }, { - "shortName": "ResetAuthorizationCode", - "fullName": "google.cloud.domains.v1alpha2.Domains.ResetAuthorizationCode", + "shortName": "ListBackups", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.ListBackups", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha2/{registration=projects/*/locations/*/registrations/*}:resetAuthorizationCode" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/services/*}/backups" } ] }, { - "shortName": "RetrieveAuthorizationCode", - "fullName": "google.cloud.domains.v1alpha2.Domains.RetrieveAuthorizationCode", + "shortName": "ListMetadataImports", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.ListMetadataImports", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha2/{registration=projects/*/locations/*/registrations/*}:retrieveAuthorizationCode" + "path": "/v1/{parent=projects/*/locations/*/services/*}/metadataImports" } ] }, { - "shortName": "RetrieveRegisterParameters", - "fullName": "google.cloud.domains.v1alpha2.Domains.RetrieveRegisterParameters", + "shortName": "ListServices", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.ListServices", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha2/{location=projects/*/locations/*}/registrations:retrieveRegisterParameters" + "path": "/v1/{parent=projects/*/locations/*}/services" } ] }, { - "shortName": "SearchDomains", - "fullName": "google.cloud.domains.v1alpha2.Domains.SearchDomains", + "shortName": "RestoreService", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.RestoreService", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha2/{location=projects/*/locations/*}/registrations:searchDomains" + "httpMethod": "POST", + "path": "/v1/{service=projects/*/locations/*/services/*}:restore" } ] }, { - "shortName": "UpdateRegistration", - "fullName": "google.cloud.domains.v1alpha2.Domains.UpdateRegistration", + "shortName": "UpdateMetadataImport", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.UpdateMetadataImport", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1alpha2/{registration.name=projects/*/locations/*/registrations/*}" + "path": "/v1/{metadata_import.name=projects/*/locations/*/services/*/metadataImports/*}" + } + ] + }, + { + "shortName": "UpdateService", + "fullName": "google.cloud.metastore.v1.DataprocMetastore.UpdateService", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{service.name=projects/*/locations/*/services/*}" } ] } ] } - ] + ], + "configFile": "metastore_v1.yaml" }, { - "id": "google.cloud.domains.v1beta1", - "directory": "google/cloud/domains/v1beta1", - "version": "v1beta1", + "id": "google.cloud.metastore.v1alpha", + "directory": "google/cloud/metastore/v1alpha", + "version": "v1alpha", "majorVersion": "v1", - "hostName": "domains.googleapis.com", - "title": "Cloud Domains API", - "description": "Enables management and configuration of domain names.", + "hostName": "metastore.googleapis.com", + "title": "Dataproc Metastore API", + "description": "The Dataproc Metastore API is used to manage the lifecycle and configuration of metastore services.", "importDirectories": [ "google/api", "google/longrunning", @@ -31950,9 +46839,9 @@ "google/type" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.domains.v1beta1": 1 + "google.golang.org/genproto/googleapis/cloud/metastore/v1alpha;metastore": 1 } }, "java_multiple_files": { @@ -31960,3604 +46849,3489 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/domains/v1beta1;domains": 1 + "com.google.cloud.metastore.v1alpha": 1 } } }, "services": [ { - "shortName": "Domains", - "fullName": "google.cloud.domains.v1beta1.Domains", + "shortName": "DataprocMetastore", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore", "methods": [ { - "shortName": "ConfigureContactSettings", - "fullName": "google.cloud.domains.v1beta1.Domains.ConfigureContactSettings", + "shortName": "CreateBackup", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.CreateBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{registration=projects/*/locations/*/registrations/*}:configureContactSettings" + "path": "/v1alpha/{parent=projects/*/locations/*/services/*}/backups" + } + ] + }, + { + "shortName": "CreateMetadataImport", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.CreateMetadataImport", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1alpha/{parent=projects/*/locations/*/services/*}/metadataImports" } ] }, { - "shortName": "ConfigureDnsSettings", - "fullName": "google.cloud.domains.v1beta1.Domains.ConfigureDnsSettings", + "shortName": "CreateService", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.CreateService", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{registration=projects/*/locations/*/registrations/*}:configureDnsSettings" + "path": "/v1alpha/{parent=projects/*/locations/*}/services" } ] }, { - "shortName": "ConfigureManagementSettings", - "fullName": "google.cloud.domains.v1beta1.Domains.ConfigureManagementSettings", + "shortName": "DeleteBackup", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.DeleteBackup", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{registration=projects/*/locations/*/registrations/*}:configureManagementSettings" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=projects/*/locations/*/services/*/backups/*}" } ] }, { - "shortName": "DeleteRegistration", - "fullName": "google.cloud.domains.v1beta1.Domains.DeleteRegistration", + "shortName": "DeleteService", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.DeleteService", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/registrations/*}" + "path": "/v1alpha/{name=projects/*/locations/*/services/*}" } ] }, { - "shortName": "ExportRegistration", - "fullName": "google.cloud.domains.v1beta1.Domains.ExportRegistration", + "shortName": "ExportMetadata", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.ExportMetadata", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/registrations/*}:export" + "path": "/v1alpha/{service=projects/*/locations/*/services/*}:exportMetadata" } ] }, { - "shortName": "GetRegistration", - "fullName": "google.cloud.domains.v1beta1.Domains.GetRegistration", + "shortName": "GetBackup", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.GetBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/registrations/*}" + "path": "/v1alpha/{name=projects/*/locations/*/services/*/backups/*}" } ] }, { - "shortName": "ListRegistrations", - "fullName": "google.cloud.domains.v1beta1.Domains.ListRegistrations", + "shortName": "GetMetadataImport", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.GetMetadataImport", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/registrations" + "path": "/v1alpha/{name=projects/*/locations/*/services/*/metadataImports/*}" } ] }, { - "shortName": "RegisterDomain", - "fullName": "google.cloud.domains.v1beta1.Domains.RegisterDomain", + "shortName": "GetService", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.GetService", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/registrations:register" + "httpMethod": "GET", + "path": "/v1alpha/{name=projects/*/locations/*/services/*}" } ] }, { - "shortName": "ResetAuthorizationCode", - "fullName": "google.cloud.domains.v1beta1.Domains.ResetAuthorizationCode", + "shortName": "ListBackups", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.ListBackups", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{registration=projects/*/locations/*/registrations/*}:resetAuthorizationCode" + "httpMethod": "GET", + "path": "/v1alpha/{parent=projects/*/locations/*/services/*}/backups" } ] }, { - "shortName": "RetrieveAuthorizationCode", - "fullName": "google.cloud.domains.v1beta1.Domains.RetrieveAuthorizationCode", + "shortName": "ListMetadataImports", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.ListMetadataImports", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{registration=projects/*/locations/*/registrations/*}:retrieveAuthorizationCode" + "path": "/v1alpha/{parent=projects/*/locations/*/services/*}/metadataImports" } ] }, { - "shortName": "RetrieveRegisterParameters", - "fullName": "google.cloud.domains.v1beta1.Domains.RetrieveRegisterParameters", + "shortName": "ListServices", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.ListServices", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{location=projects/*/locations/*}/registrations:retrieveRegisterParameters" + "path": "/v1alpha/{parent=projects/*/locations/*}/services" } ] }, { - "shortName": "SearchDomains", - "fullName": "google.cloud.domains.v1beta1.Domains.SearchDomains", + "shortName": "RestoreService", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.RestoreService", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{location=projects/*/locations/*}/registrations:searchDomains" + "httpMethod": "POST", + "path": "/v1alpha/{service=projects/*/locations/*/services/*}:restore" } ] }, { - "shortName": "UpdateRegistration", - "fullName": "google.cloud.domains.v1beta1.Domains.UpdateRegistration", + "shortName": "UpdateMetadataImport", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.UpdateMetadataImport", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{registration.name=projects/*/locations/*/registrations/*}" + "path": "/v1alpha/{metadata_import.name=projects/*/locations/*/services/*/metadataImports/*}" + } + ] + }, + { + "shortName": "UpdateService", + "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.UpdateService", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1alpha/{service.name=projects/*/locations/*/services/*}" } ] } ] } - ] + ], + "configFile": "metastore_v1alpha.yaml" }, { - "id": "google.cloud.essentialcontacts.v1", - "directory": "google/cloud/essentialcontacts/v1", - "version": "v1", + "id": "google.cloud.metastore.v1beta", + "directory": "google/cloud/metastore/v1beta", + "version": "v1beta", "majorVersion": "v1", - "hostName": "essentialcontacts.googleapis.com", - "title": "Essential Contacts API", - "description": "", + "hostName": "metastore.googleapis.com", + "title": "Dataproc Metastore API", + "description": "The Dataproc Metastore API is used to manage the lifecycle and configuration of metastore services.", "importDirectories": [ "google/api", - "google/cloud/essentialcontacts/v1", - "google/protobuf" + "google/longrunning", + "google/protobuf", + "google/type" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.essentialcontacts.v1": 2 + "google.golang.org/genproto/googleapis/cloud/metastore/v1beta;metastore": 1 } }, "java_multiple_files": { "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/essentialcontacts/v1;essentialcontacts": 2 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.EssentialContacts.V1": 2 + "com.google.cloud.metastore.v1beta": 1 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\EssentialContacts\\V1": 2 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::EssentialContacts::V1": 2 + "Google\\Cloud\\Metastore\\V1beta": 1 } } }, "services": [ { - "shortName": "EssentialContactsService", - "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService", + "shortName": "DataprocMetastore", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore", "methods": [ { - "shortName": "ComputeContacts", - "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.ComputeContacts", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/contacts:compute" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=folders/*}/contacts:compute" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=organizations/*}/contacts:compute" - } - ] - }, - { - "shortName": "CreateContact", - "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.CreateContact", + "shortName": "CreateBackup", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.CreateBackup", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*}/contacts" - }, - { - "httpMethod": "POST", - "path": "/v1/{parent=folders/*}/contacts" - }, - { - "httpMethod": "POST", - "path": "/v1/{parent=organizations/*}/contacts" - } - ] - }, - { - "shortName": "DeleteContact", - "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.DeleteContact", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/contacts/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v1/{name=folders/*/contacts/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v1/{name=organizations/*/contacts/*}" - } - ] - }, - { - "shortName": "GetContact", - "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.GetContact", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/contacts/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=folders/*/contacts/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=organizations/*/contacts/*}" + "path": "/v1beta/{parent=projects/*/locations/*/services/*}/backups" } ] }, { - "shortName": "ListContacts", - "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.ListContacts", + "shortName": "CreateMetadataImport", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.CreateMetadataImport", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/contacts" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=folders/*}/contacts" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=organizations/*}/contacts" + "httpMethod": "POST", + "path": "/v1beta/{parent=projects/*/locations/*/services/*}/metadataImports" } ] }, { - "shortName": "SendTestMessage", - "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.SendTestMessage", + "shortName": "CreateService", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.CreateService", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*}/contacts:sendTestMessage" - }, - { - "httpMethod": "POST", - "path": "/v1/{resource=folders/*}/contacts:sendTestMessage" - }, - { - "httpMethod": "POST", - "path": "/v1/{resource=organizations/*}/contacts:sendTestMessage" + "path": "/v1beta/{parent=projects/*/locations/*}/services" } ] }, { - "shortName": "UpdateContact", - "fullName": "google.cloud.essentialcontacts.v1.EssentialContactsService.UpdateContact", + "shortName": "DeleteBackup", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.DeleteBackup", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{contact.name=projects/*/contacts/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v1/{contact.name=folders/*/contacts/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v1/{contact.name=organizations/*/contacts/*}" + "httpMethod": "DELETE", + "path": "/v1beta/{name=projects/*/locations/*/services/*/backups/*}" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.functions.v1", - "directory": "google/cloud/functions/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "cloudfunctions.googleapis.com", - "title": "Cloud Functions API", - "description": "Manages lightweight user-provided functions executed in response to events.", - "importDirectories": [ - "google/api", - "google/iam/v1", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.functions.v1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/functions/v1;functions": 2 - } - }, - "objc_class_prefix": { - "valueCounts": { - "GCF": 1, - "": 1 - } - } - }, - "services": [ - { - "shortName": "CloudFunctionsService", - "fullName": "google.cloud.functions.v1.CloudFunctionsService", - "methods": [ + }, { - "shortName": "CallFunction", - "fullName": "google.cloud.functions.v1.CloudFunctionsService.CallFunction", + "shortName": "DeleteService", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.DeleteService", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/functions/*}:call" + "httpMethod": "DELETE", + "path": "/v1beta/{name=projects/*/locations/*/services/*}" } ] }, { - "shortName": "CreateFunction", - "fullName": "google.cloud.functions.v1.CloudFunctionsService.CreateFunction", + "shortName": "ExportMetadata", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.ExportMetadata", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{location=projects/*/locations/*}/functions" + "path": "/v1beta/{service=projects/*/locations/*/services/*}:exportMetadata" } ] }, { - "shortName": "DeleteFunction", - "fullName": "google.cloud.functions.v1.CloudFunctionsService.DeleteFunction", + "shortName": "GetBackup", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.GetBackup", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/functions/*}" + "httpMethod": "GET", + "path": "/v1beta/{name=projects/*/locations/*/services/*/backups/*}" } ] }, { - "shortName": "GenerateDownloadUrl", - "fullName": "google.cloud.functions.v1.CloudFunctionsService.GenerateDownloadUrl", + "shortName": "GetMetadataImport", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.GetMetadataImport", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/functions/*}:generateDownloadUrl" + "httpMethod": "GET", + "path": "/v1beta/{name=projects/*/locations/*/services/*/metadataImports/*}" } ] }, { - "shortName": "GenerateUploadUrl", - "fullName": "google.cloud.functions.v1.CloudFunctionsService.GenerateUploadUrl", + "shortName": "GetService", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.GetService", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/functions:generateUploadUrl" + "httpMethod": "GET", + "path": "/v1beta/{name=projects/*/locations/*/services/*}" } ] }, { - "shortName": "GetFunction", - "fullName": "google.cloud.functions.v1.CloudFunctionsService.GetFunction", + "shortName": "ListBackups", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.ListBackups", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/functions/*}" + "path": "/v1beta/{parent=projects/*/locations/*/services/*}/backups" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.functions.v1.CloudFunctionsService.GetIamPolicy", + "shortName": "ListMetadataImports", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.ListMetadataImports", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{resource=projects/*/locations/*/functions/*}:getIamPolicy" + "path": "/v1beta/{parent=projects/*/locations/*/services/*}/metadataImports" } ] }, { - "shortName": "ListFunctions", - "fullName": "google.cloud.functions.v1.CloudFunctionsService.ListFunctions", + "shortName": "ListServices", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.ListServices", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/functions" + "path": "/v1beta/{parent=projects/*/locations/*}/services" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.functions.v1.CloudFunctionsService.SetIamPolicy", + "shortName": "RestoreService", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.RestoreService", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/functions/*}:setIamPolicy" + "path": "/v1beta/{service=projects/*/locations/*/services/*}:restore" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.functions.v1.CloudFunctionsService.TestIamPermissions", + "shortName": "UpdateMetadataImport", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.UpdateMetadataImport", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/functions/*}:testIamPermissions" + "httpMethod": "PATCH", + "path": "/v1beta/{metadata_import.name=projects/*/locations/*/services/*/metadataImports/*}" } ] }, { - "shortName": "UpdateFunction", - "fullName": "google.cloud.functions.v1.CloudFunctionsService.UpdateFunction", + "shortName": "UpdateService", + "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.UpdateService", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{function.name=projects/*/locations/*/functions/*}" + "path": "/v1beta/{service.name=projects/*/locations/*/services/*}" } ] } ] } - ] + ], + "configFile": "metastore_v1beta.yaml" }, { - "id": "google.cloud.gaming.v1", - "directory": "google/cloud/gaming/v1", + "id": "google.cloud.networkconnectivity.v1", + "directory": "google/cloud/networkconnectivity/v1", "version": "v1", "majorVersion": "v1", - "hostName": "gameservices.googleapis.com", - "title": "Game Services API", - "description": "Deploy and manage infrastructure for global multiplayer gaming experiences.", + "hostName": "networkconnectivity.googleapis.com", + "title": "Network Connectivity API", + "description": "The Network Connectivity API provides access to Network Connectivity Center.", "importDirectories": [ "google/api", - "google/cloud/gaming/v1", "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.gaming.v1": 9 + "Google.Cloud.NetworkConnectivity.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/networkconnectivity/v1;networkconnectivity": 2 } }, "java_multiple_files": { "valueCounts": { - "true": 9 + "true": 2 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/gaming/v1;gaming": 9 + "com.google.cloud.networkconnectivity.v1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\NetworkConnectivity\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::NetworkConnectivity::V1": 2 } } }, "services": [ { - "shortName": "GameServerClustersService", - "fullName": "google.cloud.gaming.v1.GameServerClustersService", + "shortName": "HubService", + "fullName": "google.cloud.networkconnectivity.v1.HubService", "methods": [ { - "shortName": "CreateGameServerCluster", - "fullName": "google.cloud.gaming.v1.GameServerClustersService.CreateGameServerCluster", + "shortName": "CreateHub", + "fullName": "google.cloud.networkconnectivity.v1.HubService.CreateHub", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/realms/*}/gameServerClusters" + "path": "/v1/{parent=projects/*/locations/global}/hubs" } ] }, { - "shortName": "DeleteGameServerCluster", - "fullName": "google.cloud.gaming.v1.GameServerClustersService.DeleteGameServerCluster", + "shortName": "CreateSpoke", + "fullName": "google.cloud.networkconnectivity.v1.HubService.CreateSpoke", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/realms/*/gameServerClusters/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/spokes" } ] }, { - "shortName": "GetGameServerCluster", - "fullName": "google.cloud.gaming.v1.GameServerClustersService.GetGameServerCluster", + "shortName": "DeleteHub", + "fullName": "google.cloud.networkconnectivity.v1.HubService.DeleteHub", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/realms/*/gameServerClusters/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/global/hubs/*}" } ] }, { - "shortName": "ListGameServerClusters", - "fullName": "google.cloud.gaming.v1.GameServerClustersService.ListGameServerClusters", + "shortName": "DeleteSpoke", + "fullName": "google.cloud.networkconnectivity.v1.HubService.DeleteSpoke", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/realms/*}/gameServerClusters" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/spokes/*}" } ] }, { - "shortName": "PreviewCreateGameServerCluster", - "fullName": "google.cloud.gaming.v1.GameServerClustersService.PreviewCreateGameServerCluster", + "shortName": "GetHub", + "fullName": "google.cloud.networkconnectivity.v1.HubService.GetHub", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/realms/*}/gameServerClusters:previewCreate" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/global/hubs/*}" } ] }, { - "shortName": "PreviewDeleteGameServerCluster", - "fullName": "google.cloud.gaming.v1.GameServerClustersService.PreviewDeleteGameServerCluster", + "shortName": "GetSpoke", + "fullName": "google.cloud.networkconnectivity.v1.HubService.GetSpoke", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/realms/*/gameServerClusters/*}:previewDelete" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/spokes/*}" } ] }, { - "shortName": "PreviewUpdateGameServerCluster", - "fullName": "google.cloud.gaming.v1.GameServerClustersService.PreviewUpdateGameServerCluster", + "shortName": "ListHubs", + "fullName": "google.cloud.networkconnectivity.v1.HubService.ListHubs", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{game_server_cluster.name=projects/*/locations/*/realms/*/gameServerClusters/*}:previewUpdate" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/global}/hubs" } ] }, { - "shortName": "UpdateGameServerCluster", - "fullName": "google.cloud.gaming.v1.GameServerClustersService.UpdateGameServerCluster", + "shortName": "ListSpokes", + "fullName": "google.cloud.networkconnectivity.v1.HubService.ListSpokes", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{game_server_cluster.name=projects/*/locations/*/realms/*/gameServerClusters/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/spokes" } ] - } - ] - }, - { - "shortName": "GameServerConfigsService", - "fullName": "google.cloud.gaming.v1.GameServerConfigsService", - "methods": [ + }, { - "shortName": "CreateGameServerConfig", - "fullName": "google.cloud.gaming.v1.GameServerConfigsService.CreateGameServerConfig", + "shortName": "UpdateHub", + "fullName": "google.cloud.networkconnectivity.v1.HubService.UpdateHub", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/gameServerDeployments/*}/configs" + "httpMethod": "PATCH", + "path": "/v1/{hub.name=projects/*/locations/global/hubs/*}" } ] }, { - "shortName": "DeleteGameServerConfig", - "fullName": "google.cloud.gaming.v1.GameServerConfigsService.DeleteGameServerConfig", + "shortName": "UpdateSpoke", + "fullName": "google.cloud.networkconnectivity.v1.HubService.UpdateSpoke", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*/configs/*}" + "httpMethod": "PATCH", + "path": "/v1/{spoke.name=projects/*/locations/*/spokes/*}" } ] - }, + } + ] + } + ], + "configFile": "networkconnectivity_v1.yaml" + }, + { + "id": "google.cloud.networkconnectivity.v1alpha1", + "directory": "google/cloud/networkconnectivity/v1alpha1", + "version": "v1alpha1", + "majorVersion": "v1", + "hostName": "networkconnectivity.googleapis.com", + "title": "Network Connectivity API", + "description": "The Network Connectivity API will be home to various services which provide information pertaining to network connectivity.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.NetworkConnectivity.V1Alpha1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/networkconnectivity/v1alpha1;networkconnectivity": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.networkconnectivity.v1alpha1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\NetworkConnectivity\\V1alpha1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::NetworkConnectivity::V1alpha1": 2 + } + } + }, + "services": [ + { + "shortName": "HubService", + "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService", + "methods": [ { - "shortName": "GetGameServerConfig", - "fullName": "google.cloud.gaming.v1.GameServerConfigsService.GetGameServerConfig", + "shortName": "CreateHub", + "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.CreateHub", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*/configs/*}" + "httpMethod": "POST", + "path": "/v1alpha1/{parent=projects/*/locations/global}/hubs" } ] }, { - "shortName": "ListGameServerConfigs", - "fullName": "google.cloud.gaming.v1.GameServerConfigsService.ListGameServerConfigs", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/gameServerDeployments/*}/configs" - } - ] - } - ] - }, - { - "shortName": "GameServerDeploymentsService", - "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService", - "methods": [ - { - "shortName": "CreateGameServerDeployment", - "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.CreateGameServerDeployment", + "shortName": "CreateSpoke", + "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.CreateSpoke", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/gameServerDeployments" + "path": "/v1alpha1/{parent=projects/*/locations/*}/spokes" } ] }, { - "shortName": "DeleteGameServerDeployment", - "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.DeleteGameServerDeployment", + "shortName": "DeleteHub", + "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.DeleteHub", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*}" + "path": "/v1alpha1/{name=projects/*/locations/global/hubs/*}" } ] }, { - "shortName": "FetchDeploymentState", - "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.FetchDeploymentState", + "shortName": "DeleteSpoke", + "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.DeleteSpoke", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*}:fetchDeploymentState" + "httpMethod": "DELETE", + "path": "/v1alpha1/{name=projects/*/locations/*/spokes/*}" } ] }, { - "shortName": "GetGameServerDeployment", - "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.GetGameServerDeployment", + "shortName": "GetHub", + "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.GetHub", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*}" + "path": "/v1alpha1/{name=projects/*/locations/global/hubs/*}" } ] }, { - "shortName": "GetGameServerDeploymentRollout", - "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.GetGameServerDeploymentRollout", + "shortName": "GetSpoke", + "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.GetSpoke", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/gameServerDeployments/*}/rollout" + "path": "/v1alpha1/{name=projects/*/locations/*/spokes/*}" } ] }, { - "shortName": "ListGameServerDeployments", - "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.ListGameServerDeployments", + "shortName": "ListHubs", + "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.ListHubs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/gameServerDeployments" + "path": "/v1alpha1/{parent=projects/*/locations/global}/hubs" } ] }, { - "shortName": "PreviewGameServerDeploymentRollout", - "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.PreviewGameServerDeploymentRollout", + "shortName": "ListSpokes", + "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.ListSpokes", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{rollout.name=projects/*/locations/*/gameServerDeployments/*}/rollout:preview" + "httpMethod": "GET", + "path": "/v1alpha1/{parent=projects/*/locations/*}/spokes" } ] }, { - "shortName": "UpdateGameServerDeployment", - "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.UpdateGameServerDeployment", + "shortName": "UpdateHub", + "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.UpdateHub", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{game_server_deployment.name=projects/*/locations/*/gameServerDeployments/*}" + "path": "/v1alpha1/{hub.name=projects/*/locations/global/hubs/*}" } ] }, { - "shortName": "UpdateGameServerDeploymentRollout", - "fullName": "google.cloud.gaming.v1.GameServerDeploymentsService.UpdateGameServerDeploymentRollout", + "shortName": "UpdateSpoke", + "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.UpdateSpoke", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{rollout.name=projects/*/locations/*/gameServerDeployments/*}/rollout" + "path": "/v1alpha1/{spoke.name=projects/*/locations/*/spokes/*}" } ] } ] + } + ], + "configFile": "networkconnectivity_v1alpha1.yaml" + }, + { + "id": "google.cloud.networkmanagement.v1", + "directory": "google/cloud/networkmanagement/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "networkmanagement.googleapis.com", + "title": "Network Management API", + "description": "The Network Management API provides a collection of network performance monitoring and diagnostic capabilities.", + "importDirectories": [ + "google/api", + "google/cloud/networkmanagement/v1", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.NetworkManagement.V1": 3 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/networkmanagement/v1;networkmanagement": 3 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 3 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.networkmanagement.v1": 3 + } }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\NetworkManagement\\V1": 3 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::NetworkManagement::V1": 3 + } + } + }, + "services": [ { - "shortName": "RealmsService", - "fullName": "google.cloud.gaming.v1.RealmsService", + "shortName": "ReachabilityService", + "fullName": "google.cloud.networkmanagement.v1.ReachabilityService", "methods": [ { - "shortName": "CreateRealm", - "fullName": "google.cloud.gaming.v1.RealmsService.CreateRealm", + "shortName": "CreateConnectivityTest", + "fullName": "google.cloud.networkmanagement.v1.ReachabilityService.CreateConnectivityTest", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/realms" + "path": "/v1/{parent=projects/*/locations/global}/connectivityTests" } ] }, { - "shortName": "DeleteRealm", - "fullName": "google.cloud.gaming.v1.RealmsService.DeleteRealm", + "shortName": "DeleteConnectivityTest", + "fullName": "google.cloud.networkmanagement.v1.ReachabilityService.DeleteConnectivityTest", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/realms/*}" + "path": "/v1/{name=projects/*/locations/global/connectivityTests/*}" } ] }, { - "shortName": "GetRealm", - "fullName": "google.cloud.gaming.v1.RealmsService.GetRealm", + "shortName": "GetConnectivityTest", + "fullName": "google.cloud.networkmanagement.v1.ReachabilityService.GetConnectivityTest", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/realms/*}" + "path": "/v1/{name=projects/*/locations/global/connectivityTests/*}" } ] }, { - "shortName": "ListRealms", - "fullName": "google.cloud.gaming.v1.RealmsService.ListRealms", + "shortName": "ListConnectivityTests", + "fullName": "google.cloud.networkmanagement.v1.ReachabilityService.ListConnectivityTests", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/realms" + "path": "/v1/{parent=projects/*/locations/global}/connectivityTests" } ] }, { - "shortName": "PreviewRealmUpdate", - "fullName": "google.cloud.gaming.v1.RealmsService.PreviewRealmUpdate", + "shortName": "RerunConnectivityTest", + "fullName": "google.cloud.networkmanagement.v1.ReachabilityService.RerunConnectivityTest", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{realm.name=projects/*/locations/*/realms/*}:previewUpdate" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/global/connectivityTests/*}:rerun" } ] }, { - "shortName": "UpdateRealm", - "fullName": "google.cloud.gaming.v1.RealmsService.UpdateRealm", + "shortName": "UpdateConnectivityTest", + "fullName": "google.cloud.networkmanagement.v1.ReachabilityService.UpdateConnectivityTest", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{realm.name=projects/*/locations/*/realms/*}" + "path": "/v1/{resource.name=projects/*/locations/global/connectivityTests/*}" } ] } ] } - ] + ], + "configFile": "networkmanagement_v1.yaml" }, { - "id": "google.cloud.gaming.v1beta", - "directory": "google/cloud/gaming/v1beta", - "version": "v1beta", + "id": "google.cloud.networkmanagement.v1beta1", + "directory": "google/cloud/networkmanagement/v1beta1", + "version": "v1beta1", "majorVersion": "v1", - "hostName": "gameservices.googleapis.com", - "title": "Game Services API", - "description": "Deploy and manage infrastructure for global multiplayer gaming experiences.", + "hostName": "networkmanagement.googleapis.com", + "title": "Network Management API", + "description": "The Network Management API provides a collection of network performance monitoring and diagnostic capabilities.", "importDirectories": [ "google/api", - "google/cloud/gaming/v1beta", + "google/cloud/networkmanagement/v1beta1", "google/longrunning", - "google/protobuf" + "google/protobuf", + "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.gaming.v1beta": 9 + "Google.Cloud.NetworkManagement.V1Beta1": 3 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/networkmanagement/v1beta1;networkmanagement": 3 } }, "java_multiple_files": { "valueCounts": { - "true": 9 + "true": 3 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/gaming/v1beta;gaming": 9 + "com.google.cloud.networkmanagement.v1beta1": 3 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Gaming\\V1beta": 8, - "": 1 + "Google\\Cloud\\NetworkManagement\\V1beta1": 3 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::NetworkManagement::V1beta1": 3 } } }, "services": [ { - "shortName": "GameServerClustersService", - "fullName": "google.cloud.gaming.v1beta.GameServerClustersService", + "shortName": "ReachabilityService", + "fullName": "google.cloud.networkmanagement.v1beta1.ReachabilityService", "methods": [ { - "shortName": "CreateGameServerCluster", - "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.CreateGameServerCluster", + "shortName": "CreateConnectivityTest", + "fullName": "google.cloud.networkmanagement.v1beta1.ReachabilityService.CreateConnectivityTest", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta/{parent=projects/*/locations/*/realms/*}/gameServerClusters" + "path": "/v1beta1/{parent=projects/*/locations/global}/connectivityTests" } ] }, { - "shortName": "DeleteGameServerCluster", - "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.DeleteGameServerCluster", + "shortName": "DeleteConnectivityTest", + "fullName": "google.cloud.networkmanagement.v1beta1.ReachabilityService.DeleteConnectivityTest", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta/{name=projects/*/locations/*/realms/*/gameServerClusters/*}" + "path": "/v1beta1/{name=projects/*/locations/global/connectivityTests/*}" } ] }, { - "shortName": "GetGameServerCluster", - "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.GetGameServerCluster", + "shortName": "GetConnectivityTest", + "fullName": "google.cloud.networkmanagement.v1beta1.ReachabilityService.GetConnectivityTest", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{name=projects/*/locations/*/realms/*/gameServerClusters/*}" + "path": "/v1beta1/{name=projects/*/locations/global/connectivityTests/*}" } ] }, { - "shortName": "ListGameServerClusters", - "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.ListGameServerClusters", + "shortName": "ListConnectivityTests", + "fullName": "google.cloud.networkmanagement.v1beta1.ReachabilityService.ListConnectivityTests", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*/locations/*/realms/*}/gameServerClusters" + "path": "/v1beta1/{parent=projects/*/locations/global}/connectivityTests" } ] }, { - "shortName": "PreviewCreateGameServerCluster", - "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.PreviewCreateGameServerCluster", + "shortName": "RerunConnectivityTest", + "fullName": "google.cloud.networkmanagement.v1beta1.ReachabilityService.RerunConnectivityTest", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta/{parent=projects/*/locations/*/realms/*}/gameServerClusters:previewCreate" - } - ] - }, - { - "shortName": "PreviewDeleteGameServerCluster", - "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.PreviewDeleteGameServerCluster", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v1beta/{name=projects/*/locations/*/realms/*/gameServerClusters/*}:previewDelete" - } - ] - }, - { - "shortName": "PreviewUpdateGameServerCluster", - "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.PreviewUpdateGameServerCluster", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v1beta/{game_server_cluster.name=projects/*/locations/*/realms/*/gameServerClusters/*}:previewUpdate" + "path": "/v1beta1/{name=projects/*/locations/global/connectivityTests/*}:rerun" } ] }, { - "shortName": "UpdateGameServerCluster", - "fullName": "google.cloud.gaming.v1beta.GameServerClustersService.UpdateGameServerCluster", + "shortName": "UpdateConnectivityTest", + "fullName": "google.cloud.networkmanagement.v1beta1.ReachabilityService.UpdateConnectivityTest", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta/{game_server_cluster.name=projects/*/locations/*/realms/*/gameServerClusters/*}" + "path": "/v1beta1/{resource.name=projects/*/locations/global/connectivityTests/*}" } ] } ] + } + ], + "configFile": "networkmanagement_v1beta1.yaml" + }, + { + "id": "google.cloud.networksecurity.v1beta1", + "directory": "google/cloud/networksecurity/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "networksecurity.googleapis.com", + "title": "Network Security API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/networksecurity/v1beta1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.NetworkSecurity.V1Beta1": 6 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/networksecurity/v1beta1;networksecurity": 6 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 6 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.networksecurity.v1beta1": 6 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\NetworkSecurity\\V1beta1": 6 + } }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::NetworkSecurity::V1beta1": 6 + } + } + }, + "services": [ { - "shortName": "GameServerConfigsService", - "fullName": "google.cloud.gaming.v1beta.GameServerConfigsService", + "shortName": "NetworkSecurity", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity", "methods": [ { - "shortName": "CreateGameServerConfig", - "fullName": "google.cloud.gaming.v1beta.GameServerConfigsService.CreateGameServerConfig", + "shortName": "CreateAuthorizationPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.CreateAuthorizationPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta/{parent=projects/*/locations/*/gameServerDeployments/*}/configs" - } - ] - }, - { - "shortName": "DeleteGameServerConfig", - "fullName": "google.cloud.gaming.v1beta.GameServerConfigsService.DeleteGameServerConfig", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*/configs/*}" + "path": "/v1beta1/{parent=projects/*/locations/*}/authorizationPolicies" } ] }, { - "shortName": "GetGameServerConfig", - "fullName": "google.cloud.gaming.v1beta.GameServerConfigsService.GetGameServerConfig", + "shortName": "CreateClientTlsPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.CreateClientTlsPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*/configs/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/clientTlsPolicies" } ] }, { - "shortName": "ListGameServerConfigs", - "fullName": "google.cloud.gaming.v1beta.GameServerConfigsService.ListGameServerConfigs", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*/locations/*/gameServerDeployments/*}/configs" - } - ] - } - ] - }, - { - "shortName": "GameServerDeploymentsService", - "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService", - "methods": [ - { - "shortName": "CreateGameServerDeployment", - "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.CreateGameServerDeployment", + "shortName": "CreateServerTlsPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.CreateServerTlsPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta/{parent=projects/*/locations/*}/gameServerDeployments" + "path": "/v1beta1/{parent=projects/*/locations/*}/serverTlsPolicies" } ] }, { - "shortName": "DeleteGameServerDeployment", - "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.DeleteGameServerDeployment", + "shortName": "DeleteAuthorizationPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.DeleteAuthorizationPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*}" + "path": "/v1beta1/{name=projects/*/locations/*/authorizationPolicies/*}" } ] }, { - "shortName": "FetchDeploymentState", - "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.FetchDeploymentState", + "shortName": "DeleteClientTlsPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.DeleteClientTlsPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*}:fetchDeploymentState" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/clientTlsPolicies/*}" } ] }, { - "shortName": "GetGameServerDeployment", - "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.GetGameServerDeployment", + "shortName": "DeleteServerTlsPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.DeleteServerTlsPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/serverTlsPolicies/*}" } ] }, { - "shortName": "GetGameServerDeploymentRollout", - "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.GetGameServerDeploymentRollout", + "shortName": "GetAuthorizationPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.GetAuthorizationPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{name=projects/*/locations/*/gameServerDeployments/*}/rollout" + "path": "/v1beta1/{name=projects/*/locations/*/authorizationPolicies/*}" } ] }, { - "shortName": "ListGameServerDeployments", - "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.ListGameServerDeployments", + "shortName": "GetClientTlsPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.GetClientTlsPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*/locations/*}/gameServerDeployments" - } - ] - }, - { - "shortName": "PreviewGameServerDeploymentRollout", - "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.PreviewGameServerDeploymentRollout", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v1beta/{rollout.name=projects/*/locations/*/gameServerDeployments/*}/rollout:preview" + "path": "/v1beta1/{name=projects/*/locations/*/clientTlsPolicies/*}" } ] }, { - "shortName": "UpdateGameServerDeployment", - "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.UpdateGameServerDeployment", + "shortName": "GetServerTlsPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.GetServerTlsPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta/{game_server_deployment.name=projects/*/locations/*/gameServerDeployments/*}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/serverTlsPolicies/*}" } ] }, { - "shortName": "UpdateGameServerDeploymentRollout", - "fullName": "google.cloud.gaming.v1beta.GameServerDeploymentsService.UpdateGameServerDeploymentRollout", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v1beta/{rollout.name=projects/*/locations/*/gameServerDeployments/*}/rollout" - } - ] - } - ] - }, - { - "shortName": "RealmsService", - "fullName": "google.cloud.gaming.v1beta.RealmsService", - "methods": [ - { - "shortName": "CreateRealm", - "fullName": "google.cloud.gaming.v1beta.RealmsService.CreateRealm", + "shortName": "ListAuthorizationPolicies", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.ListAuthorizationPolicies", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta/{parent=projects/*/locations/*}/realms" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/authorizationPolicies" } ] }, { - "shortName": "DeleteRealm", - "fullName": "google.cloud.gaming.v1beta.RealmsService.DeleteRealm", + "shortName": "ListClientTlsPolicies", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.ListClientTlsPolicies", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta/{name=projects/*/locations/*/realms/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/clientTlsPolicies" } ] }, { - "shortName": "GetRealm", - "fullName": "google.cloud.gaming.v1beta.RealmsService.GetRealm", + "shortName": "ListServerTlsPolicies", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.ListServerTlsPolicies", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{name=projects/*/locations/*/realms/*}" + "path": "/v1beta1/{parent=projects/*/locations/*}/serverTlsPolicies" } ] }, { - "shortName": "ListRealms", - "fullName": "google.cloud.gaming.v1beta.RealmsService.ListRealms", + "shortName": "UpdateAuthorizationPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.UpdateAuthorizationPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*/locations/*}/realms" + "httpMethod": "PATCH", + "path": "/v1beta1/{authorization_policy.name=projects/*/locations/*/authorizationPolicies/*}" } ] }, { - "shortName": "PreviewRealmUpdate", - "fullName": "google.cloud.gaming.v1beta.RealmsService.PreviewRealmUpdate", + "shortName": "UpdateClientTlsPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.UpdateClientTlsPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta/{realm.name=projects/*/locations/*/realms/*}:previewUpdate" + "path": "/v1beta1/{client_tls_policy.name=projects/*/locations/*/clientTlsPolicies/*}" } ] }, { - "shortName": "UpdateRealm", - "fullName": "google.cloud.gaming.v1beta.RealmsService.UpdateRealm", + "shortName": "UpdateServerTlsPolicy", + "fullName": "google.cloud.networksecurity.v1beta1.NetworkSecurity.UpdateServerTlsPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta/{realm.name=projects/*/locations/*/realms/*}" + "path": "/v1beta1/{server_tls_policy.name=projects/*/locations/*/serverTlsPolicies/*}" } ] } ] } - ] + ], + "configFile": "networksecurity_v1beta1.yaml" }, { - "id": "google.cloud.gkehub.v1alpha2", - "directory": "google/cloud/gkehub/v1alpha2", - "version": "v1alpha2", + "id": "google.cloud.networkservices.v1", + "directory": "google/cloud/networkservices/v1", + "version": "v1", "majorVersion": "v1", - "hostName": "gkehub.googleapis.com", - "title": "GKE Hub", + "hostName": "networkservices.googleapis.com", + "title": "Network Services API", "description": "", "importDirectories": [ "google/api", + "google/cloud/networkservices/v1", "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.gkehub.v1alpha2": 1 + "Google.Cloud.NetworkServices.V1": 3 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/cloud/networkservices/v1;networkservices": 3 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/gkehub/v1alpha2;gkehub": 1 + "true": 3 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.GkeHub.V1Alpha2": 1 + "com.google.cloud.networkservices.v1": 3 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\GkeHub\\V1alpha2": 1 + "Google\\Cloud\\NetworkServices\\V1": 3 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::GkeHub::V1alpha2": 1 + "Google::Cloud::NetworkServices::V1": 3 } } }, "services": [ { - "shortName": "GkeHub", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub", + "shortName": "NetworkServices", + "fullName": "google.cloud.networkservices.v1.NetworkServices", "methods": [ { - "shortName": "CreateMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.CreateMembership", + "shortName": "CreateEndpointPolicy", + "fullName": "google.cloud.networkservices.v1.NetworkServices.CreateEndpointPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha2/{parent=projects/*/locations/*}/memberships" + "path": "/v1/{parent=projects/*/locations/*}/endpointPolicies" } ] }, { - "shortName": "DeleteMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.DeleteMembership", + "shortName": "DeleteEndpointPolicy", + "fullName": "google.cloud.networkservices.v1.NetworkServices.DeleteEndpointPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1alpha2/{name=projects/*/locations/*/memberships/*}" + "path": "/v1/{name=projects/*/locations/*/endpointPolicies/*}" } ] }, { - "shortName": "GenerateConnectManifest", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GenerateConnectManifest", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1alpha2/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" - } - ] - }, - { - "shortName": "GetMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.GetMembership", + "shortName": "GetEndpointPolicy", + "fullName": "google.cloud.networkservices.v1.NetworkServices.GetEndpointPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha2/{name=projects/*/locations/*/memberships/*}" - } - ] - }, - { - "shortName": "InitializeHub", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.InitializeHub", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1alpha2/{project=projects/*/locations/global/memberships}:initializeHub" + "path": "/v1/{name=projects/*/locations/*/endpointPolicies/*}" } ] }, { - "shortName": "ListMemberships", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.ListMemberships", + "shortName": "ListEndpointPolicies", + "fullName": "google.cloud.networkservices.v1.NetworkServices.ListEndpointPolicies", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha2/{parent=projects/*/locations/*}/memberships" + "path": "/v1/{parent=projects/*/locations/*}/endpointPolicies" } ] }, { - "shortName": "UpdateMembership", - "fullName": "google.cloud.gkehub.v1alpha2.GkeHub.UpdateMembership", + "shortName": "UpdateEndpointPolicy", + "fullName": "google.cloud.networkservices.v1.NetworkServices.UpdateEndpointPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1alpha2/{name=projects/*/locations/*/memberships/*}" + "path": "/v1/{endpoint_policy.name=projects/*/locations/*/endpointPolicies/*}" } ] } ] } - ] + ], + "configFile": "networkservices_v1.yaml" }, { - "id": "google.cloud.gkehub.v1beta1", - "directory": "google/cloud/gkehub/v1beta1", + "id": "google.cloud.networkservices.v1beta1", + "directory": "google/cloud/networkservices/v1beta1", "version": "v1beta1", "majorVersion": "v1", - "hostName": "gkehub.googleapis.com", - "title": "GKE Hub", + "hostName": "networkservices.googleapis.com", + "title": "Network Services API", "description": "", "importDirectories": [ "google/api", + "google/cloud/networkservices/v1beta1", "google/longrunning", - "google/protobuf", - "google/rpc" + "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.gkehub.v1beta1": 1 + "Google.Cloud.NetworkServices.V1Beta1": 3 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/cloud/networkservices/v1beta1;networkservices": 3 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/gkehub/v1beta1;gkehub": 1 + "true": 3 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.GkeHub.V1Beta1": 1 + "com.google.cloud.networkservices.v1beta1": 3 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\GkeHub\\V1beta1": 1 + "Google\\Cloud\\NetworkServices\\V1beta1": 3 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::GkeHub::V1beta1": 1 + "Google::Cloud::NetworkServices::V1beta1": 3 } } }, "services": [ { - "shortName": "GkeHubMembershipService", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService", + "shortName": "NetworkServices", + "fullName": "google.cloud.networkservices.v1beta1.NetworkServices", "methods": [ { - "shortName": "CreateMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.CreateMembership", + "shortName": "CreateEndpointPolicy", + "fullName": "google.cloud.networkservices.v1beta1.NetworkServices.CreateEndpointPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/memberships" - } - ] - }, - { - "shortName": "DeleteMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.DeleteMembership", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/memberships/*}" - } - ] - }, - { - "shortName": "GenerateConnectManifest", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateConnectManifest", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateConnectManifest" - } - ] - }, - { - "shortName": "GenerateExclusivityManifest", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GenerateExclusivityManifest", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/memberships/*}:generateExclusivityManifest" + "path": "/v1beta1/{parent=projects/*/locations/*}/endpointPolicies" } ] }, { - "shortName": "GetMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.GetMembership", + "shortName": "DeleteEndpointPolicy", + "fullName": "google.cloud.networkservices.v1beta1.NetworkServices.DeleteEndpointPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/memberships/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/endpointPolicies/*}" } ] }, { - "shortName": "ListMemberships", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ListMemberships", + "shortName": "GetEndpointPolicy", + "fullName": "google.cloud.networkservices.v1beta1.NetworkServices.GetEndpointPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/memberships" + "path": "/v1beta1/{name=projects/*/locations/*/endpointPolicies/*}" } ] }, { - "shortName": "UpdateMembership", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.UpdateMembership", + "shortName": "ListEndpointPolicies", + "fullName": "google.cloud.networkservices.v1beta1.NetworkServices.ListEndpointPolicies", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{name=projects/*/locations/*/memberships/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/endpointPolicies" } ] }, { - "shortName": "ValidateExclusivity", - "fullName": "google.cloud.gkehub.v1beta1.GkeHubMembershipService.ValidateExclusivity", + "shortName": "UpdateEndpointPolicy", + "fullName": "google.cloud.networkservices.v1beta1.NetworkServices.UpdateEndpointPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/memberships:validateExclusivity" + "httpMethod": "PATCH", + "path": "/v1beta1/{endpoint_policy.name=projects/*/locations/*/endpointPolicies/*}" } ] } ] } - ] + ], + "configFile": "networkservices_v1beta1.yaml" }, { - "id": "google.cloud.gsuiteaddons.v1", - "directory": "google/cloud/gsuiteaddons/v1", + "id": "google.cloud.notebooks.v1", + "directory": "google/cloud/notebooks/v1", "version": "v1", "majorVersion": "v1", - "hostName": "gsuiteaddons.googleapis.com", - "title": "Google Workspace Add-ons API", - "description": "", + "hostName": "notebooks.googleapis.com", + "title": "Notebooks API", + "description": "Notebooks API is used to manage notebook resources in Google Cloud.", "importDirectories": [ "google/api", - "google/apps/script/type", - "google/apps/script/type/calendar", - "google/apps/script/type/docs", - "google/apps/script/type/drive", - "google/apps/script/type/gmail", - "google/apps/script/type/sheets", - "google/apps/script/type/slides", + "google/cloud/notebooks/v1", + "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.gsuiteaddons.v1": 1 + "": 3, + "Google.Cloud.Notebooks.V1": 6 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/cloud/notebooks/v1;notebooks": 9 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/gsuiteaddons/v1;gsuiteaddons": 1 + "true": 9 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.GSuiteAddOns.V1": 1 + "com.google.cloud.notebooks.v1": 9 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\GSuiteAddOns\\V1": 1 + "": 3, + "Google\\Cloud\\Notebooks\\V1": 6 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::GSuiteAddOns::V1": 1 + "": 3, + "Google::Cloud::Notebooks::V1": 6 } } }, "services": [ { - "shortName": "GSuiteAddOns", - "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns", + "shortName": "ManagedNotebookService", + "fullName": "google.cloud.notebooks.v1.ManagedNotebookService", "methods": [ { - "shortName": "CreateDeployment", - "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.CreateDeployment", + "shortName": "CreateRuntime", + "fullName": "google.cloud.notebooks.v1.ManagedNotebookService.CreateRuntime", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*}/deployments" + "path": "/v1/{parent=projects/*/locations/*}/runtimes" } ] }, { - "shortName": "DeleteDeployment", - "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.DeleteDeployment", + "shortName": "DeleteRuntime", + "fullName": "google.cloud.notebooks.v1.ManagedNotebookService.DeleteRuntime", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/deployments/*}" + "path": "/v1/{name=projects/*/locations/*/runtimes/*}" } ] }, { - "shortName": "GetAuthorization", - "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.GetAuthorization", + "shortName": "GetRuntime", + "fullName": "google.cloud.notebooks.v1.ManagedNotebookService.GetRuntime", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/authorization}" + "path": "/v1/{name=projects/*/locations/*/runtimes/*}" } ] }, { - "shortName": "GetDeployment", - "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.GetDeployment", + "shortName": "ListRuntimes", + "fullName": "google.cloud.notebooks.v1.ManagedNotebookService.ListRuntimes", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/deployments/*}" + "path": "/v1/{parent=projects/*/locations/*}/runtimes" } ] }, { - "shortName": "GetInstallStatus", - "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.GetInstallStatus", + "shortName": "ReportRuntimeEvent", + "fullName": "google.cloud.notebooks.v1.ManagedNotebookService.ReportRuntimeEvent", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/deployments/*/installStatus}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/runtimes/*}:reportEvent" } ] }, { - "shortName": "InstallDeployment", - "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.InstallDeployment", + "shortName": "ResetRuntime", + "fullName": "google.cloud.notebooks.v1.ManagedNotebookService.ResetRuntime", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/deployments/*}:install" + "path": "/v1/{name=projects/*/locations/*/runtimes/*}:reset" } ] }, { - "shortName": "ListDeployments", - "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.ListDeployments", + "shortName": "StartRuntime", + "fullName": "google.cloud.notebooks.v1.ManagedNotebookService.StartRuntime", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/deployments" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/runtimes/*}:start" } ] }, { - "shortName": "ReplaceDeployment", - "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.ReplaceDeployment", + "shortName": "StopRuntime", + "fullName": "google.cloud.notebooks.v1.ManagedNotebookService.StopRuntime", "mode": "UNARY", "bindings": [ { - "httpMethod": "PUT", - "path": "/v1/{deployment.name=projects/*/deployments/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/runtimes/*}:stop" } ] }, { - "shortName": "UninstallDeployment", - "fullName": "google.cloud.gsuiteaddons.v1.GSuiteAddOns.UninstallDeployment", + "shortName": "SwitchRuntime", + "fullName": "google.cloud.notebooks.v1.ManagedNotebookService.SwitchRuntime", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/deployments/*}:uninstall" + "path": "/v1/{name=projects/*/locations/*/runtimes/*}:switch" } ] } ] - } - ] - }, - { - "id": "google.cloud.iot.v1", - "directory": "google/cloud/iot/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "cloudiot.googleapis.com", - "title": "Cloud IoT API", - "description": "Registers and manages IoT (Internet of Things) devices that connect to the Google Cloud Platform.", - "importDirectories": [ - "google/api", - "google/cloud/iot/v1", - "google/iam/v1", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.iot.v1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/iot/v1;iot": 2 - } }, - "cc_enable_arenas": { - "valueCounts": { - "true": 2 - } - } - }, - "services": [ { - "shortName": "DeviceManager", - "fullName": "google.cloud.iot.v1.DeviceManager", + "shortName": "NotebookService", + "fullName": "google.cloud.notebooks.v1.NotebookService", "methods": [ { - "shortName": "BindDeviceToGateway", - "fullName": "google.cloud.iot.v1.DeviceManager.BindDeviceToGateway", + "shortName": "CreateEnvironment", + "fullName": "google.cloud.notebooks.v1.NotebookService.CreateEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/registries/*}:bindDeviceToGateway" - }, + "path": "/v1/{parent=projects/*/locations/*}/environments" + } + ] + }, + { + "shortName": "CreateExecution", + "fullName": "google.cloud.notebooks.v1.NotebookService.CreateExecution", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/registries/*/groups/*}:bindDeviceToGateway" + "path": "/v1/{parent=projects/*/locations/*}/executions" } ] }, { - "shortName": "CreateDevice", - "fullName": "google.cloud.iot.v1.DeviceManager.CreateDevice", + "shortName": "CreateInstance", + "fullName": "google.cloud.notebooks.v1.NotebookService.CreateInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/registries/*}/devices" + "path": "/v1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "CreateDeviceRegistry", - "fullName": "google.cloud.iot.v1.DeviceManager.CreateDeviceRegistry", + "shortName": "CreateSchedule", + "fullName": "google.cloud.notebooks.v1.NotebookService.CreateSchedule", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/registries" + "path": "/v1/{parent=projects/*/locations/*}/schedules" } ] }, { - "shortName": "DeleteDevice", - "fullName": "google.cloud.iot.v1.DeviceManager.DeleteDevice", + "shortName": "DeleteEnvironment", + "fullName": "google.cloud.notebooks.v1.NotebookService.DeleteEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}" + "path": "/v1/{name=projects/*/locations/*/environments/*}" } ] }, { - "shortName": "DeleteDeviceRegistry", - "fullName": "google.cloud.iot.v1.DeviceManager.DeleteDeviceRegistry", + "shortName": "DeleteExecution", + "fullName": "google.cloud.notebooks.v1.NotebookService.DeleteExecution", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/registries/*}" + "path": "/v1/{name=projects/*/locations/*/executions/*}" } ] }, { - "shortName": "GetDevice", - "fullName": "google.cloud.iot.v1.DeviceManager.GetDevice", + "shortName": "DeleteInstance", + "fullName": "google.cloud.notebooks.v1.NotebookService.DeleteInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/registries/*/groups/*/devices/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "GetDeviceRegistry", - "fullName": "google.cloud.iot.v1.DeviceManager.GetDeviceRegistry", + "shortName": "DeleteSchedule", + "fullName": "google.cloud.notebooks.v1.NotebookService.DeleteSchedule", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/registries/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/schedules/*}" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.iot.v1.DeviceManager.GetIamPolicy", + "shortName": "GetEnvironment", + "fullName": "google.cloud.notebooks.v1.NotebookService.GetEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/registries/*}:getIamPolicy" - }, - { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/registries/*/groups/*}:getIamPolicy" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/environments/*}" } ] }, { - "shortName": "ListDeviceConfigVersions", - "fullName": "google.cloud.iot.v1.DeviceManager.ListDeviceConfigVersions", + "shortName": "GetExecution", + "fullName": "google.cloud.notebooks.v1.NotebookService.GetExecution", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}/configVersions" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/registries/*/groups/*/devices/*}/configVersions" + "path": "/v1/{name=projects/*/locations/*/executions/*}" } ] }, { - "shortName": "ListDeviceRegistries", - "fullName": "google.cloud.iot.v1.DeviceManager.ListDeviceRegistries", + "shortName": "GetInstance", + "fullName": "google.cloud.notebooks.v1.NotebookService.GetInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/registries" + "path": "/v1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "ListDevices", - "fullName": "google.cloud.iot.v1.DeviceManager.ListDevices", + "shortName": "GetInstanceHealth", + "fullName": "google.cloud.notebooks.v1.NotebookService.GetInstanceHealth", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/registries/*}/devices" - }, + "path": "/v1/{name=projects/*/locations/*/instances/*}:getInstanceHealth" + } + ] + }, + { + "shortName": "GetSchedule", + "fullName": "google.cloud.notebooks.v1.NotebookService.GetSchedule", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/registries/*/groups/*}/devices" + "path": "/v1/{name=projects/*/locations/*/schedules/*}" } ] }, { - "shortName": "ListDeviceStates", - "fullName": "google.cloud.iot.v1.DeviceManager.ListDeviceStates", + "shortName": "IsInstanceUpgradeable", + "fullName": "google.cloud.notebooks.v1.NotebookService.IsInstanceUpgradeable", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}/states" - }, + "path": "/v1/{notebook_instance=projects/*/locations/*/instances/*}:isUpgradeable" + } + ] + }, + { + "shortName": "ListEnvironments", + "fullName": "google.cloud.notebooks.v1.NotebookService.ListEnvironments", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/registries/*/groups/*/devices/*}/states" + "path": "/v1/{parent=projects/*/locations/*}/environments" } ] }, { - "shortName": "ModifyCloudToDeviceConfig", - "fullName": "google.cloud.iot.v1.DeviceManager.ModifyCloudToDeviceConfig", + "shortName": "ListExecutions", + "fullName": "google.cloud.notebooks.v1.NotebookService.ListExecutions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}:modifyCloudToDeviceConfig" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/registries/*/groups/*/devices/*}:modifyCloudToDeviceConfig" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/executions" } ] }, { - "shortName": "SendCommandToDevice", - "fullName": "google.cloud.iot.v1.DeviceManager.SendCommandToDevice", + "shortName": "ListInstances", + "fullName": "google.cloud.notebooks.v1.NotebookService.ListInstances", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/registries/*/devices/*}:sendCommandToDevice" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/registries/*/groups/*/devices/*}:sendCommandToDevice" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.iot.v1.DeviceManager.SetIamPolicy", + "shortName": "ListSchedules", + "fullName": "google.cloud.notebooks.v1.NotebookService.ListSchedules", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/registries/*}:setIamPolicy" - }, - { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/registries/*/groups/*}:setIamPolicy" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/schedules" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.iot.v1.DeviceManager.TestIamPermissions", + "shortName": "RegisterInstance", + "fullName": "google.cloud.notebooks.v1.NotebookService.RegisterInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/registries/*}:testIamPermissions" - }, - { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/registries/*/groups/*}:testIamPermissions" + "path": "/v1/{parent=projects/*/locations/*}/instances:register" } ] }, { - "shortName": "UnbindDeviceFromGateway", - "fullName": "google.cloud.iot.v1.DeviceManager.UnbindDeviceFromGateway", + "shortName": "ReportInstanceInfo", + "fullName": "google.cloud.notebooks.v1.NotebookService.ReportInstanceInfo", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/registries/*}:unbindDeviceFromGateway" - }, - { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/registries/*/groups/*}:unbindDeviceFromGateway" + "path": "/v1/{name=projects/*/locations/*/instances/*}:report" } ] }, { - "shortName": "UpdateDevice", - "fullName": "google.cloud.iot.v1.DeviceManager.UpdateDevice", + "shortName": "ResetInstance", + "fullName": "google.cloud.notebooks.v1.NotebookService.ResetInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{device.name=projects/*/locations/*/registries/*/devices/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v1/{device.name=projects/*/locations/*/registries/*/groups/*/devices/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/instances/*}:reset" } ] }, { - "shortName": "UpdateDeviceRegistry", - "fullName": "google.cloud.iot.v1.DeviceManager.UpdateDeviceRegistry", + "shortName": "RollbackInstance", + "fullName": "google.cloud.notebooks.v1.NotebookService.RollbackInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{device_registry.name=projects/*/locations/*/registries/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/instances/*}:rollback" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.kms.v1", - "directory": "google/cloud/kms/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "cloudkms.googleapis.com", - "title": "Cloud Key Management Service (KMS) API", - "description": "Manages keys and performs cryptographic operations in a central cloud service, for direct use by other cloud resources and applications.", - "importDirectories": [ - "google/api", - "google/cloud/kms/v1", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.kms.v1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/kms/v1;kms": 2 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Kms.V1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\Kms\\V1": 2 - } - } - }, - "services": [ - { - "shortName": "KeyManagementService", - "fullName": "google.cloud.kms.v1.KeyManagementService", - "methods": [ + }, { - "shortName": "AsymmetricDecrypt", - "fullName": "google.cloud.kms.v1.KeyManagementService.AsymmetricDecrypt", + "shortName": "SetInstanceAccelerator", + "fullName": "google.cloud.notebooks.v1.NotebookService.SetInstanceAccelerator", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:asymmetricDecrypt" + "httpMethod": "PATCH", + "path": "/v1/{name=projects/*/locations/*/instances/*}:setAccelerator" } ] }, { - "shortName": "AsymmetricSign", - "fullName": "google.cloud.kms.v1.KeyManagementService.AsymmetricSign", + "shortName": "SetInstanceLabels", + "fullName": "google.cloud.notebooks.v1.NotebookService.SetInstanceLabels", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:asymmetricSign" + "httpMethod": "PATCH", + "path": "/v1/{name=projects/*/locations/*/instances/*}:setLabels" } ] }, { - "shortName": "CreateCryptoKey", - "fullName": "google.cloud.kms.v1.KeyManagementService.CreateCryptoKey", + "shortName": "SetInstanceMachineType", + "fullName": "google.cloud.notebooks.v1.NotebookService.SetInstanceMachineType", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/keyRings/*}/cryptoKeys" + "httpMethod": "PATCH", + "path": "/v1/{name=projects/*/locations/*/instances/*}:setMachineType" } ] }, { - "shortName": "CreateCryptoKeyVersion", - "fullName": "google.cloud.kms.v1.KeyManagementService.CreateCryptoKeyVersion", + "shortName": "StartInstance", + "fullName": "google.cloud.notebooks.v1.NotebookService.StartInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/keyRings/*/cryptoKeys/*}/cryptoKeyVersions" + "path": "/v1/{name=projects/*/locations/*/instances/*}:start" } ] }, { - "shortName": "CreateImportJob", - "fullName": "google.cloud.kms.v1.KeyManagementService.CreateImportJob", + "shortName": "StopInstance", + "fullName": "google.cloud.notebooks.v1.NotebookService.StopInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/keyRings/*}/importJobs" + "path": "/v1/{name=projects/*/locations/*/instances/*}:stop" } ] }, { - "shortName": "CreateKeyRing", - "fullName": "google.cloud.kms.v1.KeyManagementService.CreateKeyRing", + "shortName": "TriggerSchedule", + "fullName": "google.cloud.notebooks.v1.NotebookService.TriggerSchedule", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/keyRings" + "path": "/v1/{name=projects/*/locations/*/schedules/*}:trigger" } ] }, { - "shortName": "Decrypt", - "fullName": "google.cloud.kms.v1.KeyManagementService.Decrypt", + "shortName": "UpdateInstanceConfig", + "fullName": "google.cloud.notebooks.v1.NotebookService.UpdateInstanceConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}:decrypt" + "httpMethod": "PATCH", + "path": "/v1/{name=projects/*/locations/*/instances/*}:updateConfig" } ] }, { - "shortName": "DestroyCryptoKeyVersion", - "fullName": "google.cloud.kms.v1.KeyManagementService.DestroyCryptoKeyVersion", + "shortName": "UpdateShieldedInstanceConfig", + "fullName": "google.cloud.notebooks.v1.NotebookService.UpdateShieldedInstanceConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:destroy" + "httpMethod": "PATCH", + "path": "/v1/{name=projects/*/locations/*/instances/*}:updateShieldedInstanceConfig" } ] }, { - "shortName": "Encrypt", - "fullName": "google.cloud.kms.v1.KeyManagementService.Encrypt", + "shortName": "UpgradeInstance", + "fullName": "google.cloud.notebooks.v1.NotebookService.UpgradeInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/**}:encrypt" + "path": "/v1/{name=projects/*/locations/*/instances/*}:upgrade" } ] }, { - "shortName": "GetCryptoKey", - "fullName": "google.cloud.kms.v1.KeyManagementService.GetCryptoKey", + "shortName": "UpgradeInstanceInternal", + "fullName": "google.cloud.notebooks.v1.NotebookService.UpgradeInstanceInternal", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/instances/*}:upgradeInternal" } ] - }, + } + ] + } + ], + "configFile": "notebooks_v1.yaml" + }, + { + "id": "google.cloud.notebooks.v1beta1", + "directory": "google/cloud/notebooks/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "notebooks.googleapis.com", + "title": "Notebooks API", + "description": "AI Platform Notebooks API is used to manage notebook resources in Google Cloud.", + "importDirectories": [ + "google/api", + "google/cloud/notebooks/v1beta1", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Notebooks.V1Beta1": 3 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/notebooks/v1beta1;notebooks": 3 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 3 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.notebooks.v1beta1": 3 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Notebooks\\V1beta1": 3 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Notebooks::V1beta1": 3 + } + } + }, + "services": [ + { + "shortName": "NotebookService", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService", + "methods": [ { - "shortName": "GetCryptoKeyVersion", - "fullName": "google.cloud.kms.v1.KeyManagementService.GetCryptoKeyVersion", + "shortName": "CreateEnvironment", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.CreateEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/environments" } ] }, { - "shortName": "GetImportJob", - "fullName": "google.cloud.kms.v1.KeyManagementService.GetImportJob", + "shortName": "CreateInstance", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.CreateInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/keyRings/*/importJobs/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "GetKeyRing", - "fullName": "google.cloud.kms.v1.KeyManagementService.GetKeyRing", + "shortName": "DeleteEnvironment", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.DeleteEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/keyRings/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/environments/*}" } ] }, { - "shortName": "GetPublicKey", - "fullName": "google.cloud.kms.v1.KeyManagementService.GetPublicKey", + "shortName": "DeleteInstance", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.DeleteInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}/publicKey" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "ImportCryptoKeyVersion", - "fullName": "google.cloud.kms.v1.KeyManagementService.ImportCryptoKeyVersion", + "shortName": "GetEnvironment", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.GetEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/keyRings/*/cryptoKeys/*}/cryptoKeyVersions:import" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/environments/*}" } ] }, { - "shortName": "ListCryptoKeys", - "fullName": "google.cloud.kms.v1.KeyManagementService.ListCryptoKeys", + "shortName": "GetInstance", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.GetInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/keyRings/*}/cryptoKeys" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "ListCryptoKeyVersions", - "fullName": "google.cloud.kms.v1.KeyManagementService.ListCryptoKeyVersions", + "shortName": "IsInstanceUpgradeable", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.IsInstanceUpgradeable", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/keyRings/*/cryptoKeys/*}/cryptoKeyVersions" + "path": "/v1beta1/{notebook_instance=projects/*/locations/*/instances/*}:isUpgradeable" } ] }, { - "shortName": "ListImportJobs", - "fullName": "google.cloud.kms.v1.KeyManagementService.ListImportJobs", + "shortName": "ListEnvironments", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.ListEnvironments", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/keyRings/*}/importJobs" + "path": "/v1beta1/{parent=projects/*/locations/*}/environments" } ] }, { - "shortName": "ListKeyRings", - "fullName": "google.cloud.kms.v1.KeyManagementService.ListKeyRings", + "shortName": "ListInstances", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.ListInstances", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/keyRings" + "path": "/v1beta1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "RestoreCryptoKeyVersion", - "fullName": "google.cloud.kms.v1.KeyManagementService.RestoreCryptoKeyVersion", + "shortName": "RegisterInstance", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.RegisterInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}:restore" + "path": "/v1beta1/{parent=projects/*/locations/*}/instances:register" } ] }, { - "shortName": "UpdateCryptoKey", - "fullName": "google.cloud.kms.v1.KeyManagementService.UpdateCryptoKey", + "shortName": "ReportInstanceInfo", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.ReportInstanceInfo", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{crypto_key.name=projects/*/locations/*/keyRings/*/cryptoKeys/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:report" } ] }, { - "shortName": "UpdateCryptoKeyPrimaryVersion", - "fullName": "google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyPrimaryVersion", + "shortName": "ResetInstance", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.ResetInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/keyRings/*/cryptoKeys/*}:updatePrimaryVersion" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:reset" } ] }, { - "shortName": "UpdateCryptoKeyVersion", - "fullName": "google.cloud.kms.v1.KeyManagementService.UpdateCryptoKeyVersion", + "shortName": "SetInstanceAccelerator", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.SetInstanceAccelerator", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{crypto_key_version.name=projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*}" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:setAccelerator" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.language.v1", - "directory": "google/cloud/language/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "language.googleapis.com", - "title": "Cloud Natural Language API", - "description": "Provides natural language understanding technologies, such as sentiment analysis, entity recognition, entity sentiment analysis, and other text annotations, to developers.", - "importDirectories": [ - "google/api" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.language.v1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/language/v1;language": 1 - } - } - }, - "services": [ - { - "shortName": "LanguageService", - "fullName": "google.cloud.language.v1.LanguageService", - "methods": [ + }, { - "shortName": "AnalyzeEntities", - "fullName": "google.cloud.language.v1.LanguageService.AnalyzeEntities", + "shortName": "SetInstanceLabels", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.SetInstanceLabels", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/documents:analyzeEntities" + "httpMethod": "PATCH", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:setLabels" } ] }, { - "shortName": "AnalyzeEntitySentiment", - "fullName": "google.cloud.language.v1.LanguageService.AnalyzeEntitySentiment", + "shortName": "SetInstanceMachineType", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.SetInstanceMachineType", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/documents:analyzeEntitySentiment" + "httpMethod": "PATCH", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:setMachineType" } ] }, { - "shortName": "AnalyzeSentiment", - "fullName": "google.cloud.language.v1.LanguageService.AnalyzeSentiment", + "shortName": "StartInstance", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.StartInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/documents:analyzeSentiment" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:start" } ] }, { - "shortName": "AnalyzeSyntax", - "fullName": "google.cloud.language.v1.LanguageService.AnalyzeSyntax", + "shortName": "StopInstance", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.StopInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/documents:analyzeSyntax" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:stop" } ] }, { - "shortName": "AnnotateText", - "fullName": "google.cloud.language.v1.LanguageService.AnnotateText", + "shortName": "UpgradeInstance", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.UpgradeInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/documents:annotateText" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:upgrade" } ] }, { - "shortName": "ClassifyText", - "fullName": "google.cloud.language.v1.LanguageService.ClassifyText", + "shortName": "UpgradeInstanceInternal", + "fullName": "google.cloud.notebooks.v1beta1.NotebookService.UpgradeInstanceInternal", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/documents:classifyText" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:upgradeInternal" } ] } ] } - ] + ], + "configFile": "notebooks_v1beta1.yaml" }, { - "id": "google.cloud.language.v1beta2", - "directory": "google/cloud/language/v1beta2", - "version": "v1beta2", + "id": "google.cloud.orchestration.airflow.service.v1", + "directory": "google/cloud/orchestration/airflow/service/v1", + "version": "v1", "majorVersion": "v1", - "hostName": "language.googleapis.com", - "title": "Google Cloud Natural Language API", - "description": "Google Cloud Natural Language API provides natural language understanding technologies to developers. Examples include sentiment analysis, entity recognition, and text annotations.", + "hostName": "composer.googleapis.com", + "title": "Cloud Composer API", + "description": "Manages Apache Airflow environments on Google Cloud Platform.", "importDirectories": [ "google/api", - "google/protobuf" + "google/longrunning", + "google/protobuf", + "google/type" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.language.v1beta2": 1 + "google.golang.org/genproto/googleapis/cloud/orchestration/airflow/service/v1;service": 3 } }, "java_multiple_files": { "valueCounts": { - "true": 1 + "true": 3 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/language/v1beta2;language": 1 + "com.google.cloud.orchestration.airflow.service.v1": 3 } } }, "services": [ { - "shortName": "LanguageService", - "fullName": "google.cloud.language.v1beta2.LanguageService", + "shortName": "Environments", + "fullName": "google.cloud.orchestration.airflow.service.v1.Environments", "methods": [ { - "shortName": "AnalyzeEntities", - "fullName": "google.cloud.language.v1beta2.LanguageService.AnalyzeEntities", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1beta2/documents:analyzeEntities" - } - ] - }, - { - "shortName": "AnalyzeEntitySentiment", - "fullName": "google.cloud.language.v1beta2.LanguageService.AnalyzeEntitySentiment", + "shortName": "CreateEnvironment", + "fullName": "google.cloud.orchestration.airflow.service.v1.Environments.CreateEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/documents:analyzeEntitySentiment" + "path": "/v1/{parent=projects/*/locations/*}/environments" } ] }, { - "shortName": "AnalyzeSentiment", - "fullName": "google.cloud.language.v1beta2.LanguageService.AnalyzeSentiment", + "shortName": "DeleteEnvironment", + "fullName": "google.cloud.orchestration.airflow.service.v1.Environments.DeleteEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/documents:analyzeSentiment" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/environments/*}" } ] }, { - "shortName": "AnalyzeSyntax", - "fullName": "google.cloud.language.v1beta2.LanguageService.AnalyzeSyntax", + "shortName": "GetEnvironment", + "fullName": "google.cloud.orchestration.airflow.service.v1.Environments.GetEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/documents:analyzeSyntax" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/environments/*}" } ] }, { - "shortName": "AnnotateText", - "fullName": "google.cloud.language.v1beta2.LanguageService.AnnotateText", + "shortName": "ListEnvironments", + "fullName": "google.cloud.orchestration.airflow.service.v1.Environments.ListEnvironments", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/documents:annotateText" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/environments" } ] }, { - "shortName": "ClassifyText", - "fullName": "google.cloud.language.v1beta2.LanguageService.ClassifyText", + "shortName": "UpdateEnvironment", + "fullName": "google.cloud.orchestration.airflow.service.v1.Environments.UpdateEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/documents:classifyText" + "httpMethod": "PATCH", + "path": "/v1/{name=projects/*/locations/*/environments/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.lifesciences.v2beta", - "directory": "google/cloud/lifesciences/v2beta", - "version": "v2beta", - "majorVersion": "v2", - "hostName": "lifesciences.googleapis.com", - "title": "Cloud Life Sciences API", - "description": "Cloud Life Sciences is a suite of services and tools for managing, processing, and transforming life sciences data.", - "importDirectories": [ - "google/api", - "google/longrunning", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.lifesciences.v2beta": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/lifesciences/v2beta;lifesciences": 1 - } }, - "objc_class_prefix": { - "valueCounts": { - "CLSW": 1 - } - } - }, - "services": [ { - "shortName": "WorkflowsServiceV2Beta", - "fullName": "google.cloud.lifesciences.v2beta.WorkflowsServiceV2Beta", + "shortName": "ImageVersions", + "fullName": "google.cloud.orchestration.airflow.service.v1.ImageVersions", "methods": [ { - "shortName": "RunPipeline", - "fullName": "google.cloud.lifesciences.v2beta.WorkflowsServiceV2Beta.RunPipeline", + "shortName": "ListImageVersions", + "fullName": "google.cloud.orchestration.airflow.service.v1.ImageVersions.ListImageVersions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta/{parent=projects/*/locations/*}/pipelines:run" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/imageVersions" } ] } ] } - ] + ], + "configFile": "composer_v1.yaml" }, { - "id": "google.cloud.managedidentities.v1", - "directory": "google/cloud/managedidentities/v1", - "version": "v1", + "id": "google.cloud.orchestration.airflow.service.v1beta1", + "directory": "google/cloud/orchestration/airflow/service/v1beta1", + "version": "v1beta1", "majorVersion": "v1", - "hostName": "managedidentities.googleapis.com", - "title": "Managed Service for Microsoft Active Directory API", - "description": "The Managed Service for Microsoft Active Directory API is used for managing a highly available, hardened service running Microsoft Active Directory (AD).", + "hostName": "composer.googleapis.com", + "title": "Cloud Composer API", + "description": "Manages Apache Airflow environments on Google Cloud Platform.", "importDirectories": [ "google/api", - "google/cloud/managedidentities/v1", "google/longrunning", - "google/protobuf" + "google/protobuf", + "google/type" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.managedidentities.v1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/managedidentities/v1;managedidentities": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.ManagedIdentities.V1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\ManagedIdentities\\V1": 2 + "google.golang.org/genproto/googleapis/cloud/orchestration/airflow/service/v1beta1;service": 3 } }, - "ruby_package": { + "java_multiple_files": { "valueCounts": { - "Google::Cloud::ManagedIdentities::V1": 2 + "true": 3 } }, - "objc_class_prefix": { + "java_package": { "valueCounts": { - "GCMI": 1, - "": 1 + "com.google.cloud.orchestration.airflow.service.v1beta1": 3 } } }, "services": [ { - "shortName": "ManagedIdentitiesService", - "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService", + "shortName": "Environments", + "fullName": "google.cloud.orchestration.airflow.service.v1beta1.Environments", "methods": [ { - "shortName": "AttachTrust", - "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.AttachTrust", + "shortName": "CheckUpgrade", + "fullName": "google.cloud.orchestration.airflow.service.v1beta1.Environments.CheckUpgrade", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/global/domains/*}:attachTrust" + "path": "/v1beta1/{environment=projects/*/locations/*/environments/*}:checkUpgrade" } ] }, { - "shortName": "CreateMicrosoftAdDomain", - "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.CreateMicrosoftAdDomain", + "shortName": "CreateEnvironment", + "fullName": "google.cloud.orchestration.airflow.service.v1beta1.Environments.CreateEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/global}/domains" + "path": "/v1beta1/{parent=projects/*/locations/*}/environments" } ] }, { - "shortName": "DeleteDomain", - "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.DeleteDomain", + "shortName": "DeleteEnvironment", + "fullName": "google.cloud.orchestration.airflow.service.v1beta1.Environments.DeleteEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/global/domains/*}" - } - ] - }, - { - "shortName": "DetachTrust", - "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.DetachTrust", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/global/domains/*}:detachTrust" + "path": "/v1beta1/{name=projects/*/locations/*/environments/*}" } ] }, { - "shortName": "GetDomain", - "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.GetDomain", + "shortName": "GetEnvironment", + "fullName": "google.cloud.orchestration.airflow.service.v1beta1.Environments.GetEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/global/domains/*}" + "path": "/v1beta1/{name=projects/*/locations/*/environments/*}" } ] }, { - "shortName": "ListDomains", - "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.ListDomains", + "shortName": "ListEnvironments", + "fullName": "google.cloud.orchestration.airflow.service.v1beta1.Environments.ListEnvironments", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/global}/domains" - } - ] - }, - { - "shortName": "ReconfigureTrust", - "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.ReconfigureTrust", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/global/domains/*}:reconfigureTrust" + "path": "/v1beta1/{parent=projects/*/locations/*}/environments" } ] }, { - "shortName": "ResetAdminPassword", - "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.ResetAdminPassword", + "shortName": "RestartWebServer", + "fullName": "google.cloud.orchestration.airflow.service.v1beta1.Environments.RestartWebServer", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/global/domains/*}:resetAdminPassword" + "path": "/v1beta1/{name=projects/*/locations/*/environments/*}:restartWebServer" } ] }, { - "shortName": "UpdateDomain", - "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.UpdateDomain", + "shortName": "UpdateEnvironment", + "fullName": "google.cloud.orchestration.airflow.service.v1beta1.Environments.UpdateEnvironment", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{domain.name=projects/*/locations/global/domains/*}" + "path": "/v1beta1/{name=projects/*/locations/*/environments/*}" } ] - }, + } + ] + }, + { + "shortName": "ImageVersions", + "fullName": "google.cloud.orchestration.airflow.service.v1beta1.ImageVersions", + "methods": [ { - "shortName": "ValidateTrust", - "fullName": "google.cloud.managedidentities.v1.ManagedIdentitiesService.ValidateTrust", + "shortName": "ListImageVersions", + "fullName": "google.cloud.orchestration.airflow.service.v1beta1.ImageVersions.ListImageVersions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/global/domains/*}:validateTrust" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/imageVersions" } ] } ] } - ] + ], + "configFile": "composer_v1beta1.yaml" }, { - "id": "google.cloud.managedidentities.v1beta1", - "directory": "google/cloud/managedidentities/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "managedidentities.googleapis.com", - "title": "Managed Service for Microsoft Active Directory API", - "description": "The Managed Service for Microsoft Active Directory API is used for managing a highly available, hardened service running Microsoft Active Directory (AD).", + "id": "google.cloud.orgpolicy.v2", + "directory": "google/cloud/orgpolicy/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "orgpolicy.googleapis.com", + "title": "Organization Policy API", + "description": "The Org Policy API allows users to configure governance rules on their GCP resources across the Cloud Resource Hierarchy.", "importDirectories": [ "google/api", - "google/cloud/managedidentities/v1beta1", - "google/longrunning", - "google/protobuf" + "google/cloud/orgpolicy/v2", + "google/protobuf", + "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.managedidentities.v1beta1": 2 + "Google.Cloud.OrgPolicy.V2": 2 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 2 + "google.golang.org/genproto/googleapis/cloud/orgpolicy/v2;orgpolicy": 2 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/managedidentities/v1beta1;managedidentities": 2 + "true": 2 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.ManagedIdentities.V1Beta1": 2 + "com.google.cloud.orgpolicy.v2": 2 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\ManagedIdentities\\V1beta1": 2 + "Google\\Cloud\\OrgPolicy\\V2": 2 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::ManagedIdentities::V1beta1": 2 - } - }, - "objc_class_prefix": { - "valueCounts": { - "GCMI": 1, - "": 1 + "Google::Cloud::OrgPolicy::V2": 2 } } }, "services": [ { - "shortName": "ManagedIdentitiesService", - "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService", + "shortName": "OrgPolicy", + "fullName": "google.cloud.orgpolicy.v2.OrgPolicy", "methods": [ { - "shortName": "AttachTrust", - "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.AttachTrust", + "shortName": "CreatePolicy", + "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.CreatePolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/global/domains/*}:attachTrust" - } - ] - }, - { - "shortName": "CreateMicrosoftAdDomain", - "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.CreateMicrosoftAdDomain", - "mode": "UNARY", - "bindings": [ + "path": "/v2/{parent=projects/*}/policies" + }, { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/global}/domains" + "path": "/v2/{parent=folders/*}/policies" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=organizations/*}/policies" } ] }, { - "shortName": "DeleteDomain", - "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.DeleteDomain", + "shortName": "DeletePolicy", + "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.DeletePolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/global/domains/*}" - } - ] - }, - { - "shortName": "DetachTrust", - "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.DetachTrust", - "mode": "UNARY", - "bindings": [ + "path": "/v2/{name=projects/*/policies/*}" + }, { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/global/domains/*}:detachTrust" + "httpMethod": "DELETE", + "path": "/v2/{name=folders/*/policies/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=organizations/*/policies/*}" } ] }, { - "shortName": "GetDomain", - "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.GetDomain", + "shortName": "GetEffectivePolicy", + "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.GetEffectivePolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/global/domains/*}" + "path": "/v2/{name=projects/*/policies/*}:getEffectivePolicy" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=folders/*/policies/*}:getEffectivePolicy" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=organizations/*/policies/*}:getEffectivePolicy" } ] }, { - "shortName": "ListDomains", - "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.ListDomains", + "shortName": "GetPolicy", + "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.GetPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/global}/domains" + "path": "/v2/{name=projects/*/policies/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=folders/*/policies/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=organizations/*/policies/*}" } ] }, { - "shortName": "ReconfigureTrust", - "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.ReconfigureTrust", + "shortName": "ListConstraints", + "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.ListConstraints", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/global/domains/*}:reconfigureTrust" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*}/constraints" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=folders/*}/constraints" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=organizations/*}/constraints" } ] }, { - "shortName": "ResetAdminPassword", - "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.ResetAdminPassword", + "shortName": "ListPolicies", + "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.ListPolicies", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/global/domains/*}:resetAdminPassword" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*}/policies" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=folders/*}/policies" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=organizations/*}/policies" } ] }, { - "shortName": "UpdateDomain", - "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.UpdateDomain", + "shortName": "UpdatePolicy", + "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.UpdatePolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{domain.name=projects/*/locations/global/domains/*}" - } - ] - }, - { - "shortName": "ValidateTrust", - "fullName": "google.cloud.managedidentities.v1beta1.ManagedIdentitiesService.ValidateTrust", - "mode": "UNARY", - "bindings": [ + "path": "/v2/{policy.name=projects/*/policies/*}" + }, { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/global/domains/*}:validateTrust" + "httpMethod": "PATCH", + "path": "/v2/{policy.name=folders/*/policies/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{policy.name=organizations/*/policies/*}" } ] } ] } - ] + ], + "configFile": "orgpolicy_v2.yaml" }, { - "id": "google.cloud.mediatranslation.v1alpha1", - "directory": "google/cloud/mediatranslation/v1alpha1", - "version": "v1alpha1", + "id": "google.cloud.osconfig.agentendpoint.v1", + "directory": "google/cloud/osconfig/agentendpoint/v1", + "version": "v1", "majorVersion": "v1", - "hostName": "mediatranslation.googleapis.com", - "title": "Media Translation API", - "description": "", + "hostName": "osconfig.googleapis.com", + "title": "OS Config API", + "description": "OS management tools that can be used for patch management, patch compliance, and configuration management on VM instances.", "importDirectories": [ "google/api", - "google/rpc" + "google/cloud/osconfig/agentendpoint/v1", + "google/protobuf", + "google/type" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.mediatranslation.v1alpha1": 1 + "google.golang.org/genproto/googleapis/cloud/osconfig/agentendpoint/v1;agentendpoint": 6 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/mediatranslation/v1alpha1;mediatranslation": 1 + "": 1, + "true": 5 } }, - "cc_enable_arenas": { + "java_package": { "valueCounts": { - "true": 1 + "com.google.cloud.osconfig.agentendpoint.v1": 6 } } }, "services": [ { - "shortName": "SpeechTranslationService", - "fullName": "google.cloud.mediatranslation.v1alpha1.SpeechTranslationService", + "shortName": "AgentEndpointService", + "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService", "methods": [ { - "shortName": "StreamingTranslateSpeech", - "fullName": "google.cloud.mediatranslation.v1alpha1.SpeechTranslationService.StreamingTranslateSpeech", - "mode": "BIDIRECTIONAL_STREAMING" + "shortName": "ReceiveTaskNotification", + "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.ReceiveTaskNotification", + "mode": "SERVER_STREAMING" + }, + { + "shortName": "RegisterAgent", + "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.RegisterAgent", + "mode": "UNARY" + }, + { + "shortName": "ReportInventory", + "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.ReportInventory", + "mode": "UNARY" + }, + { + "shortName": "ReportTaskComplete", + "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.ReportTaskComplete", + "mode": "UNARY" + }, + { + "shortName": "ReportTaskProgress", + "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.ReportTaskProgress", + "mode": "UNARY" + }, + { + "shortName": "StartNextTask", + "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.StartNextTask", + "mode": "UNARY" } ] } - ] + ], + "configFile": "osconfig_v1.yaml" }, { - "id": "google.cloud.mediatranslation.v1beta1", - "directory": "google/cloud/mediatranslation/v1beta1", - "version": "v1beta1", + "id": "google.cloud.osconfig.agentendpoint.v1beta", + "directory": "google/cloud/osconfig/agentendpoint/v1beta", + "version": "v1beta", "majorVersion": "v1", - "hostName": "mediatranslation.googleapis.com", - "title": "Media Translation API", - "description": "", + "hostName": "osconfig.googleapis.com", + "title": "Cloud OS Config API", + "description": "OS management tools that can be used for patch management, patch compliance, and configuration management on VM instances.", "importDirectories": [ "google/api", - "google/rpc" + "google/cloud/osconfig/agentendpoint/v1beta" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.mediatranslation.v1beta1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/mediatranslation/v1beta1;mediatranslation": 1 + "google.golang.org/genproto/googleapis/cloud/osconfig/agentendpoint/v1beta;agentendpoint": 4 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { - "true": 1 + "": 2, + "true": 2 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.MediaTranslation.V1Beta1": 1 + "com.google.cloud.osconfig.agentendpoint.v1beta": 4 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\MediaTranslation\\V1beta1": 1 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::MediaTranslation::V1beta1": 1 + "Google\\Cloud\\OsConfig\\V1beta": 4 } } }, "services": [ { - "shortName": "SpeechTranslationService", - "fullName": "google.cloud.mediatranslation.v1beta1.SpeechTranslationService", + "shortName": "AgentEndpointService", + "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService", "methods": [ { - "shortName": "StreamingTranslateSpeech", - "fullName": "google.cloud.mediatranslation.v1beta1.SpeechTranslationService.StreamingTranslateSpeech", - "mode": "BIDIRECTIONAL_STREAMING" + "shortName": "LookupEffectiveGuestPolicy", + "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.LookupEffectiveGuestPolicy", + "mode": "UNARY" + }, + { + "shortName": "ReceiveTaskNotification", + "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.ReceiveTaskNotification", + "mode": "SERVER_STREAMING" + }, + { + "shortName": "RegisterAgent", + "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.RegisterAgent", + "mode": "UNARY" + }, + { + "shortName": "ReportTaskComplete", + "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.ReportTaskComplete", + "mode": "UNARY" + }, + { + "shortName": "ReportTaskProgress", + "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.ReportTaskProgress", + "mode": "UNARY" + }, + { + "shortName": "StartNextTask", + "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.StartNextTask", + "mode": "UNARY" } ] } - ] + ], + "configFile": "osconfig_v1beta.yaml" }, { - "id": "google.cloud.memcache.v1", - "directory": "google/cloud/memcache/v1", + "id": "google.cloud.osconfig.v1", + "directory": "google/cloud/osconfig/v1", "version": "v1", "majorVersion": "v1", - "hostName": "memcache.googleapis.com", - "title": "Cloud Memorystore for Memcached API", - "description": "Google Cloud Memorystore for Memcached API is used for creating and managing Memcached instances in GCP.", + "hostName": "osconfig.googleapis.com", + "title": "OS Config API", + "description": "OS management tools that can be used for patch management, patch compliance, and configuration management on VM instances.", "importDirectories": [ "google/api", + "google/cloud/osconfig/v1", "google/longrunning", - "google/protobuf" + "google/protobuf", + "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.memcache.v1": 1 + "Google.Cloud.OsConfig.V1": 10 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/osconfig/v1;osconfig": 10 } }, "java_multiple_files": { "valueCounts": { - "true": 1 + "": 4, + "true": 6 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/memcache/v1;memcache": 1 + "com.google.cloud.osconfig.v1": 10 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\OsConfig\\V1": 10 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::OsConfig::V1": 10 } } }, "services": [ { - "shortName": "CloudMemcache", - "fullName": "google.cloud.memcache.v1.CloudMemcache", + "shortName": "OsConfigService", + "fullName": "google.cloud.osconfig.v1.OsConfigService", "methods": [ { - "shortName": "ApplyParameters", - "fullName": "google.cloud.memcache.v1.CloudMemcache.ApplyParameters", + "shortName": "CancelPatchJob", + "fullName": "google.cloud.osconfig.v1.OsConfigService.CancelPatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/instances/*}:applyParameters" + "path": "/v1/{name=projects/*/patchJobs/*}:cancel" } ] }, { - "shortName": "CreateInstance", - "fullName": "google.cloud.memcache.v1.CloudMemcache.CreateInstance", + "shortName": "CreatePatchDeployment", + "fullName": "google.cloud.osconfig.v1.OsConfigService.CreatePatchDeployment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/instances" + "path": "/v1/{parent=projects/*}/patchDeployments" } ] }, { - "shortName": "DeleteInstance", - "fullName": "google.cloud.memcache.v1.CloudMemcache.DeleteInstance", + "shortName": "DeletePatchDeployment", + "fullName": "google.cloud.osconfig.v1.OsConfigService.DeletePatchDeployment", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/instances/*}" + "path": "/v1/{name=projects/*/patchDeployments/*}" } ] }, { - "shortName": "GetInstance", - "fullName": "google.cloud.memcache.v1.CloudMemcache.GetInstance", + "shortName": "ExecutePatchJob", + "fullName": "google.cloud.osconfig.v1.OsConfigService.ExecutePatchJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*}/patchJobs:execute" + } + ] + }, + { + "shortName": "GetPatchDeployment", + "fullName": "google.cloud.osconfig.v1.OsConfigService.GetPatchDeployment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/instances/*}" + "path": "/v1/{name=projects/*/patchDeployments/*}" } ] }, { - "shortName": "ListInstances", - "fullName": "google.cloud.memcache.v1.CloudMemcache.ListInstances", + "shortName": "GetPatchJob", + "fullName": "google.cloud.osconfig.v1.OsConfigService.GetPatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/instances" + "path": "/v1/{name=projects/*/patchJobs/*}" } ] }, { - "shortName": "UpdateInstance", - "fullName": "google.cloud.memcache.v1.CloudMemcache.UpdateInstance", + "shortName": "ListPatchDeployments", + "fullName": "google.cloud.osconfig.v1.OsConfigService.ListPatchDeployments", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{instance.name=projects/*/locations/*/instances/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/patchDeployments" } ] }, { - "shortName": "UpdateParameters", - "fullName": "google.cloud.memcache.v1.CloudMemcache.UpdateParameters", + "shortName": "ListPatchJobInstanceDetails", + "fullName": "google.cloud.osconfig.v1.OsConfigService.ListPatchJobInstanceDetails", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{name=projects/*/locations/*/instances/*}:updateParameters" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/patchJobs/*}/instanceDetails" + } + ] + }, + { + "shortName": "ListPatchJobs", + "fullName": "google.cloud.osconfig.v1.OsConfigService.ListPatchJobs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/patchJobs" } ] } ] - } - ] - }, - { - "id": "google.cloud.memcache.v1beta2", - "directory": "google/cloud/memcache/v1beta2", - "version": "v1beta2", - "majorVersion": "v1", - "hostName": "memcache.googleapis.com", - "title": "Cloud Memorystore for Memcached API", - "description": "Google Cloud Memorystore for Memcached API is used for creating and managing Memcached instances in GCP.", - "importDirectories": [ - "google/api", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.memcache.v1beta2": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/memcache/v1beta2;memcache": 1 - } - } - }, - "services": [ { - "shortName": "CloudMemcache", - "fullName": "google.cloud.memcache.v1beta2.CloudMemcache", + "shortName": "OsConfigZonalService", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService", "methods": [ { - "shortName": "ApplyParameters", - "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.ApplyParameters", + "shortName": "CreateOSPolicyAssignment", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.CreateOSPolicyAssignment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta2/{name=projects/*/locations/*/instances/*}:applyParameters" + "path": "/v1/{parent=projects/*/locations/*}/osPolicyAssignments" } ] }, { - "shortName": "ApplySoftwareUpdate", - "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.ApplySoftwareUpdate", + "shortName": "DeleteOSPolicyAssignment", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.DeleteOSPolicyAssignment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/{instance=projects/*/locations/*/instances/*}:applySoftwareUpdate" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/osPolicyAssignments/*}" } ] }, { - "shortName": "CreateInstance", - "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.CreateInstance", + "shortName": "GetInventory", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.GetInventory", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta2/{parent=projects/*/locations/*}/instances" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/instances/*/inventory}" } ] }, { - "shortName": "DeleteInstance", - "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.DeleteInstance", + "shortName": "GetOSPolicyAssignment", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.GetOSPolicyAssignment", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta2/{name=projects/*/locations/*/instances/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/osPolicyAssignments/*}" } ] }, { - "shortName": "GetInstance", - "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.GetInstance", + "shortName": "GetOSPolicyAssignmentReport", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.GetOSPolicyAssignmentReport", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta2/{name=projects/*/locations/*/instances/*}" + "path": "/v1/{name=projects/*/locations/*/instances/*/osPolicyAssignments/*/report}" } ] }, { - "shortName": "ListInstances", - "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.ListInstances", + "shortName": "GetVulnerabilityReport", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.GetVulnerabilityReport", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta2/{parent=projects/*/locations/*}/instances" + "path": "/v1/{name=projects/*/locations/*/instances/*/vulnerabilityReport}" } ] }, { - "shortName": "UpdateInstance", - "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.UpdateInstance", + "shortName": "ListInventories", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.ListInventories", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta2/{resource.name=projects/*/locations/*/instances/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/instances/*}/inventories" } ] }, { - "shortName": "UpdateParameters", - "fullName": "google.cloud.memcache.v1beta2.CloudMemcache.UpdateParameters", + "shortName": "ListOSPolicyAssignmentReports", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.ListOSPolicyAssignmentReports", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/instances/*/osPolicyAssignments/*}/reports" + } + ] + }, + { + "shortName": "ListOSPolicyAssignmentRevisions", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.ListOSPolicyAssignmentRevisions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/osPolicyAssignments/*}:listRevisions" + } + ] + }, + { + "shortName": "ListOSPolicyAssignments", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.ListOSPolicyAssignments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/osPolicyAssignments" + } + ] + }, + { + "shortName": "ListVulnerabilityReports", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.ListVulnerabilityReports", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/instances/*}/vulnerabilityReports" + } + ] + }, + { + "shortName": "UpdateOSPolicyAssignment", + "fullName": "google.cloud.osconfig.v1.OsConfigZonalService.UpdateOSPolicyAssignment", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta2/{name=projects/*/locations/*/instances/*}:updateParameters" + "path": "/v1/{os_policy_assignment.name=projects/*/locations/*/osPolicyAssignments/*}" } ] } ] } - ] + ], + "configFile": "osconfig_v1.yaml" }, { - "id": "google.cloud.metastore.v1", - "directory": "google/cloud/metastore/v1", - "version": "v1", + "id": "google.cloud.osconfig.v1alpha", + "directory": "google/cloud/osconfig/v1alpha", + "version": "v1alpha", "majorVersion": "v1", - "hostName": "metastore.googleapis.com", - "title": "Dataproc Metastore API", - "description": "The Dataproc Metastore API is used to manage the lifecycle and configuration of metastore services.", + "hostName": "osconfig.googleapis.com", + "title": "OS Config API", + "description": "OS management tools that can be used for patch management, patch compliance, and configuration management on VM instances.", "importDirectories": [ "google/api", + "google/cloud/osconfig/v1alpha", "google/longrunning", "google/protobuf", "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.metastore.v1": 1 + "Google.Cloud.OsConfig.V1Alpha": 8 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/osconfig/v1alpha;osconfig": 8 } }, "java_multiple_files": { "valueCounts": { - "true": 1 + "true": 8 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/metastore/v1;metastore": 1 + "com.google.cloud.osconfig.v1alpha": 8 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\OsConfig\\V1alpha": 8 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::OsConfig::V1alpha": 8 } } }, "services": [ { - "shortName": "DataprocMetastore", - "fullName": "google.cloud.metastore.v1.DataprocMetastore", + "shortName": "OsConfigZonalService", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService", "methods": [ { - "shortName": "CreateMetadataImport", - "fullName": "google.cloud.metastore.v1.DataprocMetastore.CreateMetadataImport", + "shortName": "CreateOSPolicyAssignment", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.CreateOSPolicyAssignment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/services/*}/metadataImports" + "path": "/v1alpha/{parent=projects/*/locations/*}/osPolicyAssignments" } ] }, { - "shortName": "CreateService", - "fullName": "google.cloud.metastore.v1.DataprocMetastore.CreateService", + "shortName": "DeleteOSPolicyAssignment", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.DeleteOSPolicyAssignment", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/services" + "httpMethod": "DELETE", + "path": "/v1alpha/{name=projects/*/locations/*/osPolicyAssignments/*}" } ] }, { - "shortName": "DeleteService", - "fullName": "google.cloud.metastore.v1.DataprocMetastore.DeleteService", + "shortName": "GetInstanceOSPoliciesCompliance", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.GetInstanceOSPoliciesCompliance", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/services/*}" + "httpMethod": "GET", + "path": "/v1alpha/{name=projects/*/locations/*/instanceOSPoliciesCompliances/*}" } ] }, { - "shortName": "ExportMetadata", - "fullName": "google.cloud.metastore.v1.DataprocMetastore.ExportMetadata", + "shortName": "GetInventory", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.GetInventory", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{service=projects/*/locations/*/services/*}:exportMetadata" + "httpMethod": "GET", + "path": "/v1alpha/{name=projects/*/locations/*/instances/*/inventory}" } ] }, { - "shortName": "GetMetadataImport", - "fullName": "google.cloud.metastore.v1.DataprocMetastore.GetMetadataImport", + "shortName": "GetOSPolicyAssignment", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.GetOSPolicyAssignment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/services/*/metadataImports/*}" + "path": "/v1alpha/{name=projects/*/locations/*/osPolicyAssignments/*}" } ] }, { - "shortName": "GetService", - "fullName": "google.cloud.metastore.v1.DataprocMetastore.GetService", + "shortName": "GetVulnerabilityReport", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.GetVulnerabilityReport", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/services/*}" + "path": "/v1alpha/{name=projects/*/locations/*/instances/*/vulnerabilityReport}" } ] }, { - "shortName": "ListMetadataImports", - "fullName": "google.cloud.metastore.v1.DataprocMetastore.ListMetadataImports", + "shortName": "ListInstanceOSPoliciesCompliances", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.ListInstanceOSPoliciesCompliances", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/services/*}/metadataImports" + "path": "/v1alpha/{parent=projects/*/locations/*}/instanceOSPoliciesCompliances" } ] }, { - "shortName": "ListServices", - "fullName": "google.cloud.metastore.v1.DataprocMetastore.ListServices", + "shortName": "ListInventories", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.ListInventories", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/services" + "path": "/v1alpha/{parent=projects/*/locations/*/instances/*}/inventories" } ] }, { - "shortName": "UpdateMetadataImport", - "fullName": "google.cloud.metastore.v1.DataprocMetastore.UpdateMetadataImport", + "shortName": "ListOSPolicyAssignmentRevisions", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.ListOSPolicyAssignmentRevisions", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{metadata_import.name=projects/*/locations/*/services/*/metadataImports/*}" + "httpMethod": "GET", + "path": "/v1alpha/{name=projects/*/locations/*/osPolicyAssignments/*}:listRevisions" } ] }, { - "shortName": "UpdateService", - "fullName": "google.cloud.metastore.v1.DataprocMetastore.UpdateService", + "shortName": "ListOSPolicyAssignments", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.ListOSPolicyAssignments", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1alpha/{parent=projects/*/locations/*}/osPolicyAssignments" + } + ] + }, + { + "shortName": "ListVulnerabilityReports", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.ListVulnerabilityReports", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1alpha/{parent=projects/*/locations/*/instances/*}/vulnerabilityReports" + } + ] + }, + { + "shortName": "UpdateOSPolicyAssignment", + "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.UpdateOSPolicyAssignment", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{service.name=projects/*/locations/*/services/*}" + "path": "/v1alpha/{os_policy_assignment.name=projects/*/locations/*/osPolicyAssignments/*}" } ] } ] } - ] + ], + "configFile": "osconfig_v1alpha.yaml" }, { - "id": "google.cloud.metastore.v1alpha", - "directory": "google/cloud/metastore/v1alpha", - "version": "v1alpha", + "id": "google.cloud.osconfig.v1beta", + "directory": "google/cloud/osconfig/v1beta", + "version": "v1beta", "majorVersion": "v1", - "hostName": "metastore.googleapis.com", - "title": "Dataproc Metastore API", - "description": "The Dataproc Metastore API is used to manage the lifecycle and configuration of metastore services.", + "hostName": "osconfig.googleapis.com", + "title": "Cloud OS Config API", + "description": "OS management tools that can be used for patch management, patch compliance, and configuration management on VM instances.", "importDirectories": [ "google/api", - "google/longrunning", + "google/cloud/osconfig/v1beta", "google/protobuf", "google/type" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.metastore.v1alpha": 1 - } - }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/cloud/osconfig/v1beta;osconfig": 4 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/metastore/v1alpha;metastore": 1 + "com.google.cloud.osconfig.v1beta": 4 } } }, "services": [ { - "shortName": "DataprocMetastore", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore", + "shortName": "OsConfigService", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService", "methods": [ { - "shortName": "CreateBackup", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.CreateBackup", + "shortName": "CancelPatchJob", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.CancelPatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{parent=projects/*/locations/*/services/*}/backups" + "path": "/v1beta/{name=projects/*/patchJobs/*}:cancel" } ] }, { - "shortName": "CreateMetadataImport", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.CreateMetadataImport", + "shortName": "CreateGuestPolicy", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.CreateGuestPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{parent=projects/*/locations/*/services/*}/metadataImports" + "path": "/v1beta/{parent=projects/*}/guestPolicies" } ] }, { - "shortName": "CreateService", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.CreateService", + "shortName": "CreatePatchDeployment", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.CreatePatchDeployment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{parent=projects/*/locations/*}/services" + "path": "/v1beta/{parent=projects/*}/patchDeployments" } ] }, - { - "shortName": "DeleteBackup", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.DeleteBackup", + { + "shortName": "DeleteGuestPolicy", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.DeleteGuestPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1alpha/{name=projects/*/locations/*/services/*/backups/*}" + "path": "/v1beta/{name=projects/*/guestPolicies/*}" } ] }, { - "shortName": "DeleteService", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.DeleteService", + "shortName": "DeletePatchDeployment", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.DeletePatchDeployment", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1alpha/{name=projects/*/locations/*/services/*}" + "path": "/v1beta/{name=projects/*/patchDeployments/*}" } ] }, { - "shortName": "ExportMetadata", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.ExportMetadata", + "shortName": "ExecutePatchJob", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.ExecutePatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{service=projects/*/locations/*/services/*}:exportMetadata" + "path": "/v1beta/{parent=projects/*}/patchJobs:execute" } ] }, { - "shortName": "GetBackup", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.GetBackup", + "shortName": "GetGuestPolicy", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.GetGuestPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{name=projects/*/locations/*/services/*/backups/*}" + "path": "/v1beta/{name=projects/*/guestPolicies/*}" } ] }, { - "shortName": "GetMetadataImport", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.GetMetadataImport", + "shortName": "GetPatchDeployment", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.GetPatchDeployment", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{name=projects/*/locations/*/services/*/metadataImports/*}" + "path": "/v1beta/{name=projects/*/patchDeployments/*}" } ] }, { - "shortName": "GetService", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.GetService", + "shortName": "GetPatchJob", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.GetPatchJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{name=projects/*/locations/*/services/*}" + "path": "/v1beta/{name=projects/*/patchJobs/*}" } ] }, { - "shortName": "ListBackups", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.ListBackups", + "shortName": "ListGuestPolicies", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.ListGuestPolicies", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=projects/*/locations/*/services/*}/backups" + "path": "/v1beta/{parent=projects/*}/guestPolicies" } ] }, { - "shortName": "ListMetadataImports", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.ListMetadataImports", + "shortName": "ListPatchDeployments", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.ListPatchDeployments", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=projects/*/locations/*/services/*}/metadataImports" + "path": "/v1beta/{parent=projects/*}/patchDeployments" } ] }, { - "shortName": "ListServices", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.ListServices", + "shortName": "ListPatchJobInstanceDetails", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.ListPatchJobInstanceDetails", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=projects/*/locations/*}/services" + "path": "/v1beta/{parent=projects/*/patchJobs/*}/instanceDetails" } ] }, { - "shortName": "RestoreService", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.RestoreService", + "shortName": "ListPatchJobs", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.ListPatchJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1alpha/{service=projects/*/locations/*/services/*}:restore" + "httpMethod": "GET", + "path": "/v1beta/{parent=projects/*}/patchJobs" } ] }, { - "shortName": "UpdateMetadataImport", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.UpdateMetadataImport", + "shortName": "LookupEffectiveGuestPolicy", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.LookupEffectiveGuestPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha/{metadata_import.name=projects/*/locations/*/services/*/metadataImports/*}" + "httpMethod": "POST", + "path": "/v1beta/{instance=projects/*/zones/*/instances/*}:lookupEffectiveGuestPolicy" } ] }, { - "shortName": "UpdateService", - "fullName": "google.cloud.metastore.v1alpha.DataprocMetastore.UpdateService", + "shortName": "UpdateGuestPolicy", + "fullName": "google.cloud.osconfig.v1beta.OsConfigService.UpdateGuestPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1alpha/{service.name=projects/*/locations/*/services/*}" + "path": "/v1beta/{guest_policy.name=projects/*/guestPolicies/*}" } ] } ] } - ] + ], + "configFile": "osconfig_v1beta.yaml" }, { - "id": "google.cloud.metastore.v1beta", - "directory": "google/cloud/metastore/v1beta", - "version": "v1beta", + "id": "google.cloud.oslogin.v1", + "directory": "google/cloud/oslogin/v1", + "version": "v1", "majorVersion": "v1", - "hostName": "metastore.googleapis.com", - "title": "Dataproc Metastore API", - "description": "The Dataproc Metastore API is used to manage the lifecycle and configuration of metastore services.", + "hostName": "oslogin.googleapis.com", + "title": "Cloud OS Login API", + "description": "You can use OS Login to manage access to your VM instances using IAM roles.", "importDirectories": [ "google/api", - "google/longrunning", - "google/protobuf", - "google/type" + "google/cloud/oslogin/common", + "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.metastore.v1beta": 1 + "Google.Cloud.OsLogin.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/oslogin/v1;oslogin": 1 } }, "java_multiple_files": { @@ -35565,1510 +50339,1471 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/metastore/v1beta;metastore": 1 + "com.google.cloud.oslogin.v1": 1 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Metastore\\V1beta": 1 + "Google\\Cloud\\OsLogin\\V1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::OsLogin::V1": 1 } } }, "services": [ { - "shortName": "DataprocMetastore", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore", + "shortName": "OsLoginService", + "fullName": "google.cloud.oslogin.v1.OsLoginService", "methods": [ { - "shortName": "CreateBackup", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.CreateBackup", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1beta/{parent=projects/*/locations/*/services/*}/backups" - } - ] - }, - { - "shortName": "CreateMetadataImport", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.CreateMetadataImport", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1beta/{parent=projects/*/locations/*/services/*}/metadataImports" - } - ] - }, - { - "shortName": "CreateService", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.CreateService", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1beta/{parent=projects/*/locations/*}/services" - } - ] - }, - { - "shortName": "DeleteBackup", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.DeleteBackup", + "shortName": "DeletePosixAccount", + "fullName": "google.cloud.oslogin.v1.OsLoginService.DeletePosixAccount", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta/{name=projects/*/locations/*/services/*/backups/*}" + "path": "/v1/{name=users/*/projects/*}" } ] }, { - "shortName": "DeleteService", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.DeleteService", + "shortName": "DeleteSshPublicKey", + "fullName": "google.cloud.oslogin.v1.OsLoginService.DeleteSshPublicKey", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta/{name=projects/*/locations/*/services/*}" + "path": "/v1/{name=users/*/sshPublicKeys/*}" } ] }, { - "shortName": "ExportMetadata", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.ExportMetadata", + "shortName": "GetLoginProfile", + "fullName": "google.cloud.oslogin.v1.OsLoginService.GetLoginProfile", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta/{service=projects/*/locations/*/services/*}:exportMetadata" + "httpMethod": "GET", + "path": "/v1/{name=users/*}/loginProfile" } ] }, { - "shortName": "GetBackup", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.GetBackup", + "shortName": "GetSshPublicKey", + "fullName": "google.cloud.oslogin.v1.OsLoginService.GetSshPublicKey", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{name=projects/*/locations/*/services/*/backups/*}" + "path": "/v1/{name=users/*/sshPublicKeys/*}" } ] }, { - "shortName": "GetMetadataImport", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.GetMetadataImport", + "shortName": "ImportSshPublicKey", + "fullName": "google.cloud.oslogin.v1.OsLoginService.ImportSshPublicKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta/{name=projects/*/locations/*/services/*/metadataImports/*}" + "httpMethod": "POST", + "path": "/v1/{parent=users/*}:importSshPublicKey" } ] }, { - "shortName": "GetService", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.GetService", + "shortName": "UpdateSshPublicKey", + "fullName": "google.cloud.oslogin.v1.OsLoginService.UpdateSshPublicKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta/{name=projects/*/locations/*/services/*}" + "httpMethod": "PATCH", + "path": "/v1/{name=users/*/sshPublicKeys/*}" } ] - }, + } + ] + } + ], + "configFile": "oslogin_v1.yaml" + }, + { + "id": "google.cloud.oslogin.v1beta", + "directory": "google/cloud/oslogin/v1beta", + "version": "v1beta", + "majorVersion": "v1", + "hostName": "oslogin.googleapis.com", + "title": "Cloud OS Login API", + "description": "You can use OS Login to manage access to your VM instances using IAM roles.", + "importDirectories": [ + "google/api", + "google/cloud/oslogin/common", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.OsLogin.V1Beta": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/oslogin/v1beta;oslogin": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.oslogin.v1beta": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\OsLogin\\V1beta": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::OsLogin::V1beta": 1 + } + } + }, + "services": [ + { + "shortName": "OsLoginService", + "fullName": "google.cloud.oslogin.v1beta.OsLoginService", + "methods": [ { - "shortName": "ListBackups", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.ListBackups", + "shortName": "DeletePosixAccount", + "fullName": "google.cloud.oslogin.v1beta.OsLoginService.DeletePosixAccount", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*/locations/*/services/*}/backups" + "httpMethod": "DELETE", + "path": "/v1beta/{name=users/*/projects/*}" } ] }, { - "shortName": "ListMetadataImports", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.ListMetadataImports", + "shortName": "DeleteSshPublicKey", + "fullName": "google.cloud.oslogin.v1beta.OsLoginService.DeleteSshPublicKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*/locations/*/services/*}/metadataImports" + "httpMethod": "DELETE", + "path": "/v1beta/{name=users/*/sshPublicKeys/*}" } ] }, { - "shortName": "ListServices", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.ListServices", + "shortName": "GetLoginProfile", + "fullName": "google.cloud.oslogin.v1beta.OsLoginService.GetLoginProfile", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*/locations/*}/services" + "path": "/v1beta/{name=users/*}/loginProfile" } ] }, { - "shortName": "RestoreService", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.RestoreService", + "shortName": "GetSshPublicKey", + "fullName": "google.cloud.oslogin.v1beta.OsLoginService.GetSshPublicKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta/{service=projects/*/locations/*/services/*}:restore" + "httpMethod": "GET", + "path": "/v1beta/{name=users/*/sshPublicKeys/*}" } ] }, { - "shortName": "UpdateMetadataImport", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.UpdateMetadataImport", + "shortName": "ImportSshPublicKey", + "fullName": "google.cloud.oslogin.v1beta.OsLoginService.ImportSshPublicKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta/{metadata_import.name=projects/*/locations/*/services/*/metadataImports/*}" + "httpMethod": "POST", + "path": "/v1beta/{parent=users/*}:importSshPublicKey" } ] }, { - "shortName": "UpdateService", - "fullName": "google.cloud.metastore.v1beta.DataprocMetastore.UpdateService", + "shortName": "UpdateSshPublicKey", + "fullName": "google.cloud.oslogin.v1beta.OsLoginService.UpdateSshPublicKey", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta/{service.name=projects/*/locations/*/services/*}" + "path": "/v1beta/{name=users/*/sshPublicKeys/*}" } ] } ] } - ] + ], + "configFile": "oslogin_v1beta.yaml" }, { - "id": "google.cloud.networkconnectivity.v1alpha1", - "directory": "google/cloud/networkconnectivity/v1alpha1", - "version": "v1alpha1", + "id": "google.cloud.phishingprotection.v1beta1", + "directory": "google/cloud/phishingprotection/v1beta1", + "version": "v1beta1", "majorVersion": "v1", - "hostName": "networkconnectivity.googleapis.com", - "title": "Network Connectivity API", - "description": "The Network Connectivity API will be home to various services which provide information pertaining to network connectivity.", + "hostName": "phishingprotection.googleapis.com", + "title": "Phishing Protection API", + "description": "", "importDirectories": [ - "google/api", - "google/longrunning", - "google/protobuf" + "google/api" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.networkconnectivity.v1alpha1": 2 + "Google.Cloud.PhishingProtection.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/phishingprotection/v1beta1;phishingprotection": 1 } }, "java_multiple_files": { "valueCounts": { - "true": 2 + "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/networkconnectivity/v1alpha1;networkconnectivity": 2 + "com.google.phishingprotection.v1beta1": 1 } }, - "csharp_namespace": { + "objc_class_prefix": { "valueCounts": { - "Google.Cloud.NetworkConnectivity.V1Alpha1": 2 + "GCPP": 1 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\NetworkConnectivity\\V1alpha1": 2 + "Google\\Cloud\\PhishingProtection\\V1beta1": 1 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::NetworkConnectivity::V1alpha1": 2 + "Google::Cloud::PhishingProtection::V1beta1": 1 } } }, "services": [ { - "shortName": "HubService", - "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService", + "shortName": "PhishingProtectionServiceV1Beta1", + "fullName": "google.cloud.phishingprotection.v1beta1.PhishingProtectionServiceV1Beta1", "methods": [ { - "shortName": "CreateHub", - "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.CreateHub", + "shortName": "ReportPhishing", + "fullName": "google.cloud.phishingprotection.v1beta1.PhishingProtectionServiceV1Beta1.ReportPhishing", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha1/{parent=projects/*/locations/global}/hubs" + "path": "/v1beta1/{parent=projects/*}/phishing:report" } ] - }, + } + ] + } + ], + "configFile": "phishingprotection_v1beta1.yaml" + }, + { + "id": "google.cloud.policytroubleshooter.v1", + "directory": "google/cloud/policytroubleshooter/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "policytroubleshooter.googleapis.com", + "title": "Policy Troubleshooter API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/policytroubleshooter/v1", + "google/iam/v1", + "google/type" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "": 1, + "true": 1 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.PolicyTroubleshooter.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/policytroubleshooter/v1;policytroubleshooter": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "": 1, + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "": 1, + "com.google.cloud.policytroubleshooter.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\PolicyTroubleshooter\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::PolicyTroubleshooter::V1": 2 + } + } + }, + "services": [ + { + "shortName": "IamChecker", + "fullName": "google.cloud.policytroubleshooter.v1.IamChecker", + "methods": [ { - "shortName": "CreateSpoke", - "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.CreateSpoke", + "shortName": "TroubleshootIamPolicy", + "fullName": "google.cloud.policytroubleshooter.v1.IamChecker.TroubleshootIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha1/{parent=projects/*/locations/*}/spokes" - } - ] - }, - { - "shortName": "DeleteHub", - "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.DeleteHub", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v1alpha1/{name=projects/*/locations/global/hubs/*}" - } - ] - }, - { - "shortName": "DeleteSpoke", - "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.DeleteSpoke", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v1alpha1/{name=projects/*/locations/*/spokes/*}" - } - ] - }, - { - "shortName": "GetHub", - "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.GetHub", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1alpha1/{name=projects/*/locations/global/hubs/*}" - } - ] - }, - { - "shortName": "GetSpoke", - "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.GetSpoke", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1alpha1/{name=projects/*/locations/*/spokes/*}" + "path": "/v1/iam:troubleshoot" } ] - }, - { - "shortName": "ListHubs", - "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.ListHubs", + } + ] + } + ], + "configFile": "policytroubleshooter_v1.yaml" + }, + { + "id": "google.cloud.privatecatalog.v1beta1", + "directory": "google/cloud/privatecatalog/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "cloudprivatecatalog.googleapis.com", + "title": "Cloud Private Catalog API", + "description": "Enable cloud users to discover private catalogs and products in their organizations.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.PrivateCatalog.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/privatecatalog/v1beta1;privatecatalog": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.privatecatalog.v1beta1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\PrivateCatalog\\V1beta1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::PrivateCatalog::V1beta1": 1 + } + } + }, + "services": [ + { + "shortName": "PrivateCatalog", + "fullName": "google.cloud.privatecatalog.v1beta1.PrivateCatalog", + "methods": [ + { + "shortName": "SearchCatalogs", + "fullName": "google.cloud.privatecatalog.v1beta1.PrivateCatalog.SearchCatalogs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha1/{parent=projects/*/locations/global}/hubs" - } - ] - }, - { - "shortName": "ListSpokes", - "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.ListSpokes", - "mode": "UNARY", - "bindings": [ + "path": "/v1beta1/{resource=projects/*}/catalogs:search" + }, { "httpMethod": "GET", - "path": "/v1alpha1/{parent=projects/*/locations/*}/spokes" + "path": "/v1beta1/{resource=organizations/*}/catalogs:search" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{resource=folders/*}/catalogs:search" } ] }, { - "shortName": "UpdateHub", - "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.UpdateHub", + "shortName": "SearchProducts", + "fullName": "google.cloud.privatecatalog.v1beta1.PrivateCatalog.SearchProducts", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha1/{hub.name=projects/*/locations/global/hubs/*}" + "httpMethod": "GET", + "path": "/v1beta1/{resource=projects/*}/products:search" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{resource=organizations/*}/products:search" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{resource=folders/*}/products:search" } ] }, { - "shortName": "UpdateSpoke", - "fullName": "google.cloud.networkconnectivity.v1alpha1.HubService.UpdateSpoke", + "shortName": "SearchVersions", + "fullName": "google.cloud.privatecatalog.v1beta1.PrivateCatalog.SearchVersions", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1alpha1/{spoke.name=projects/*/locations/*/spokes/*}" + "httpMethod": "GET", + "path": "/v1beta1/{resource=projects/*}/versions:search" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{resource=organizations/*}/versions:search" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{resource=folders/*}/versions:search" } ] } ] } - ] + ], + "configFile": "cloudprivatecatalog_v1beta1.yaml" }, { - "id": "google.cloud.notebooks.v1beta1", - "directory": "google/cloud/notebooks/v1beta1", - "version": "v1beta1", + "id": "google.cloud.pubsublite.v1", + "directory": "google/cloud/pubsublite/v1", + "version": "v1", "majorVersion": "v1", - "hostName": "notebooks.googleapis.com", - "title": "Notebooks API", - "description": "AI Platform Notebooks API is used to manage notebook resources in Google Cloud.", + "hostName": "pubsublite.googleapis.com", + "title": "Pub/Sub Lite API", + "description": "", "importDirectories": [ "google/api", - "google/cloud/notebooks/v1beta1", + "google/cloud/pubsublite/v1", "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.notebooks.v1beta1": 3 + "": 2, + "true": 4 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 3 + "Google.Cloud.PubSubLite.V1": 6 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/notebooks/v1beta1;notebooks": 3 + "google.golang.org/genproto/googleapis/cloud/pubsublite/v1;pubsublite": 6 } }, - "csharp_namespace": { + "java_multiple_files": { "valueCounts": { - "Google.Cloud.Notebooks.V1Beta1": 3 + "true": 6 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.pubsublite.proto": 6 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Notebooks\\V1beta1": 3 + "Google\\Cloud\\PubSubLite\\V1": 6 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::Notebooks::V1beta1": 3 + "Google::Cloud::PubSubLite::V1": 6 } } }, "services": [ { - "shortName": "NotebookService", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService", + "shortName": "AdminService", + "fullName": "google.cloud.pubsublite.v1.AdminService", "methods": [ { - "shortName": "CreateEnvironment", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.CreateEnvironment", + "shortName": "CreateReservation", + "fullName": "google.cloud.pubsublite.v1.AdminService.CreateReservation", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/environments" + "path": "/v1/admin/{parent=projects/*/locations/*}/reservations" } ] }, { - "shortName": "CreateInstance", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.CreateInstance", + "shortName": "CreateSubscription", + "fullName": "google.cloud.pubsublite.v1.AdminService.CreateSubscription", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/instances" + "path": "/v1/admin/{parent=projects/*/locations/*}/subscriptions" } ] }, { - "shortName": "DeleteEnvironment", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.DeleteEnvironment", + "shortName": "CreateTopic", + "fullName": "google.cloud.pubsublite.v1.AdminService.CreateTopic", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/environments/*}" + "httpMethod": "POST", + "path": "/v1/admin/{parent=projects/*/locations/*}/topics" } ] }, { - "shortName": "DeleteInstance", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.DeleteInstance", + "shortName": "DeleteReservation", + "fullName": "google.cloud.pubsublite.v1.AdminService.DeleteReservation", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" + "path": "/v1/admin/{name=projects/*/locations/*/reservations/*}" } ] }, { - "shortName": "GetEnvironment", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.GetEnvironment", + "shortName": "DeleteSubscription", + "fullName": "google.cloud.pubsublite.v1.AdminService.DeleteSubscription", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/environments/*}" + "httpMethod": "DELETE", + "path": "/v1/admin/{name=projects/*/locations/*/subscriptions/*}" } ] }, { - "shortName": "GetInstance", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.GetInstance", + "shortName": "DeleteTopic", + "fullName": "google.cloud.pubsublite.v1.AdminService.DeleteTopic", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" + "httpMethod": "DELETE", + "path": "/v1/admin/{name=projects/*/locations/*/topics/*}" } ] }, { - "shortName": "IsInstanceUpgradeable", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.IsInstanceUpgradeable", + "shortName": "GetReservation", + "fullName": "google.cloud.pubsublite.v1.AdminService.GetReservation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{notebook_instance=projects/*/locations/*/instances/*}:isUpgradeable" + "path": "/v1/admin/{name=projects/*/locations/*/reservations/*}" } ] }, { - "shortName": "ListEnvironments", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.ListEnvironments", + "shortName": "GetSubscription", + "fullName": "google.cloud.pubsublite.v1.AdminService.GetSubscription", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/environments" + "path": "/v1/admin/{name=projects/*/locations/*/subscriptions/*}" } ] }, { - "shortName": "ListInstances", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.ListInstances", + "shortName": "GetTopic", + "fullName": "google.cloud.pubsublite.v1.AdminService.GetTopic", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/instances" + "path": "/v1/admin/{name=projects/*/locations/*/topics/*}" } ] }, { - "shortName": "RegisterInstance", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.RegisterInstance", + "shortName": "GetTopicPartitions", + "fullName": "google.cloud.pubsublite.v1.AdminService.GetTopicPartitions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/instances:register" + "httpMethod": "GET", + "path": "/v1/admin/{name=projects/*/locations/*/topics/*}/partitions" } ] }, { - "shortName": "ReportInstanceInfo", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.ReportInstanceInfo", + "shortName": "ListReservationTopics", + "fullName": "google.cloud.pubsublite.v1.AdminService.ListReservationTopics", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:report" + "httpMethod": "GET", + "path": "/v1/admin/{name=projects/*/locations/*/reservations/*}/topics" } ] }, { - "shortName": "ResetInstance", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.ResetInstance", + "shortName": "ListReservations", + "fullName": "google.cloud.pubsublite.v1.AdminService.ListReservations", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:reset" + "httpMethod": "GET", + "path": "/v1/admin/{parent=projects/*/locations/*}/reservations" } ] }, { - "shortName": "SetInstanceAccelerator", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.SetInstanceAccelerator", + "shortName": "ListSubscriptions", + "fullName": "google.cloud.pubsublite.v1.AdminService.ListSubscriptions", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:setAccelerator" + "httpMethod": "GET", + "path": "/v1/admin/{parent=projects/*/locations/*}/subscriptions" } ] }, { - "shortName": "SetInstanceLabels", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.SetInstanceLabels", + "shortName": "ListTopicSubscriptions", + "fullName": "google.cloud.pubsublite.v1.AdminService.ListTopicSubscriptions", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:setLabels" + "httpMethod": "GET", + "path": "/v1/admin/{name=projects/*/locations/*/topics/*}/subscriptions" } ] }, { - "shortName": "SetInstanceMachineType", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.SetInstanceMachineType", + "shortName": "ListTopics", + "fullName": "google.cloud.pubsublite.v1.AdminService.ListTopics", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:setMachineType" + "httpMethod": "GET", + "path": "/v1/admin/{parent=projects/*/locations/*}/topics" } ] }, { - "shortName": "StartInstance", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.StartInstance", + "shortName": "SeekSubscription", + "fullName": "google.cloud.pubsublite.v1.AdminService.SeekSubscription", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:start" + "path": "/v1/admin/{name=projects/*/locations/*/subscriptions/*}:seek" } ] }, { - "shortName": "StopInstance", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.StopInstance", + "shortName": "UpdateReservation", + "fullName": "google.cloud.pubsublite.v1.AdminService.UpdateReservation", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:stop" + "httpMethod": "PATCH", + "path": "/v1/admin/{reservation.name=projects/*/locations/*/reservations/*}" } ] }, { - "shortName": "UpgradeInstance", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.UpgradeInstance", + "shortName": "UpdateSubscription", + "fullName": "google.cloud.pubsublite.v1.AdminService.UpdateSubscription", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:upgrade" + "httpMethod": "PATCH", + "path": "/v1/admin/{subscription.name=projects/*/locations/*/subscriptions/*}" } ] }, { - "shortName": "UpgradeInstanceInternal", - "fullName": "google.cloud.notebooks.v1beta1.NotebookService.UpgradeInstanceInternal", + "shortName": "UpdateTopic", + "fullName": "google.cloud.pubsublite.v1.AdminService.UpdateTopic", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:upgradeInternal" + "httpMethod": "PATCH", + "path": "/v1/admin/{topic.name=projects/*/locations/*/topics/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.orgpolicy.v2", - "directory": "google/cloud/orgpolicy/v2", - "version": "v2", - "majorVersion": "v2", - "hostName": "orgpolicy.googleapis.com", - "title": "Organization Policy API", - "description": "The Org Policy API allows users to configure governance rules on their GCP resources across the Cloud Resource Hierarchy.", - "importDirectories": [ - "google/api", - "google/cloud/orgpolicy/v2", - "google/protobuf", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.orgpolicy.v2": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/orgpolicy/v2;orgpolicy": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.OrgPolicy.V2": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\OrgPolicy\\V2": 2 - } }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::OrgPolicy::V2": 2 - } - } - }, - "services": [ { - "shortName": "OrgPolicy", - "fullName": "google.cloud.orgpolicy.v2.OrgPolicy", + "shortName": "CursorService", + "fullName": "google.cloud.pubsublite.v1.CursorService", "methods": [ { - "shortName": "CreatePolicy", - "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.CreatePolicy", + "shortName": "CommitCursor", + "fullName": "google.cloud.pubsublite.v1.CursorService.CommitCursor", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*}/policies" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=folders/*}/policies" - }, - { - "httpMethod": "POST", - "path": "/v2/{parent=organizations/*}/policies" - } - ] - }, - { - "shortName": "DeletePolicy", - "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.DeletePolicy", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/policies/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=folders/*/policies/*}" - }, - { - "httpMethod": "DELETE", - "path": "/v2/{name=organizations/*/policies/*}" - } - ] - }, - { - "shortName": "GetEffectivePolicy", - "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.GetEffectivePolicy", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/policies/*}:getEffectivePolicy" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=folders/*/policies/*}:getEffectivePolicy" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=organizations/*/policies/*}:getEffectivePolicy" - } - ] - }, - { - "shortName": "GetPolicy", - "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.GetPolicy", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v2/{name=projects/*/policies/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=folders/*/policies/*}" - }, - { - "httpMethod": "GET", - "path": "/v2/{name=organizations/*/policies/*}" - } - ] - }, - { - "shortName": "ListConstraints", - "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.ListConstraints", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v2/{parent=projects/*}/constraints" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=folders/*}/constraints" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=organizations/*}/constraints" + "path": "/v1/cursor/{subscription=projects/*/locations/*/subscriptions/*}:commitCursor" } ] }, { - "shortName": "ListPolicies", - "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.ListPolicies", + "shortName": "ListPartitionCursors", + "fullName": "google.cloud.pubsublite.v1.CursorService.ListPartitionCursors", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*}/policies" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=folders/*}/policies" - }, - { - "httpMethod": "GET", - "path": "/v2/{parent=organizations/*}/policies" + "path": "/v1/cursor/{parent=projects/*/locations/*/subscriptions/*}/cursors" } ] }, { - "shortName": "UpdatePolicy", - "fullName": "google.cloud.orgpolicy.v2.OrgPolicy.UpdatePolicy", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v2/{policy.name=projects/*/policies/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{policy.name=folders/*/policies/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v2/{policy.name=organizations/*/policies/*}" - } - ] + "shortName": "StreamingCommitCursor", + "fullName": "google.cloud.pubsublite.v1.CursorService.StreamingCommitCursor", + "mode": "BIDIRECTIONAL_STREAMING" } ] - } - ] - }, - { - "id": "google.cloud.osconfig.agentendpoint.v1", - "directory": "google/cloud/osconfig/agentendpoint/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "osconfig.googleapis.com", - "title": "OS Config API", - "description": "OS management tools that can be used for patch management, patch compliance, and configuration management on VM instances.", - "importDirectories": [ - "google/api", - "google/cloud/osconfig/agentendpoint/v1", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.osconfig.agentendpoint.v1": 6 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 5, - "": 1 - } }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/osconfig/agentendpoint/v1;agentendpoint": 6 - } - } - }, - "services": [ { - "shortName": "AgentEndpointService", - "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService", + "shortName": "PartitionAssignmentService", + "fullName": "google.cloud.pubsublite.v1.PartitionAssignmentService", "methods": [ { - "shortName": "ReceiveTaskNotification", - "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.ReceiveTaskNotification", - "mode": "SERVER_STREAMING" - }, - { - "shortName": "RegisterAgent", - "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.RegisterAgent", - "mode": "UNARY" - }, - { - "shortName": "ReportInventory", - "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.ReportInventory", - "mode": "UNARY" - }, - { - "shortName": "ReportTaskComplete", - "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.ReportTaskComplete", - "mode": "UNARY" - }, - { - "shortName": "ReportTaskProgress", - "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.ReportTaskProgress", - "mode": "UNARY" - }, - { - "shortName": "StartNextTask", - "fullName": "google.cloud.osconfig.agentendpoint.v1.AgentEndpointService.StartNextTask", - "mode": "UNARY" + "shortName": "AssignPartitions", + "fullName": "google.cloud.pubsublite.v1.PartitionAssignmentService.AssignPartitions", + "mode": "BIDIRECTIONAL_STREAMING" } ] - } - ] - }, - { - "id": "google.cloud.osconfig.agentendpoint.v1beta", - "directory": "google/cloud/osconfig/agentendpoint/v1beta", - "version": "v1beta", - "majorVersion": "v1", - "hostName": "osconfig.googleapis.com", - "title": "Cloud OS Config API", - "description": "OS management tools that can be used for patch management, patch compliance, and configuration management on VM instances.", - "importDirectories": [ - "google/api", - "google/cloud/osconfig/agentendpoint/v1beta" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.osconfig.agentendpoint.v1beta": 4 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/osconfig/agentendpoint/v1beta;agentendpoint": 4 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\OsConfig\\V1beta": 4 - } }, - "java_multiple_files": { - "valueCounts": { - "true": 2, - "": 2 - } - } - }, - "services": [ { - "shortName": "AgentEndpointService", - "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService", + "shortName": "PublisherService", + "fullName": "google.cloud.pubsublite.v1.PublisherService", "methods": [ { - "shortName": "LookupEffectiveGuestPolicy", - "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.LookupEffectiveGuestPolicy", - "mode": "UNARY" - }, - { - "shortName": "ReceiveTaskNotification", - "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.ReceiveTaskNotification", - "mode": "SERVER_STREAMING" - }, + "shortName": "Publish", + "fullName": "google.cloud.pubsublite.v1.PublisherService.Publish", + "mode": "BIDIRECTIONAL_STREAMING" + } + ] + }, + { + "shortName": "SubscriberService", + "fullName": "google.cloud.pubsublite.v1.SubscriberService", + "methods": [ { - "shortName": "RegisterAgent", - "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.RegisterAgent", - "mode": "UNARY" - }, + "shortName": "Subscribe", + "fullName": "google.cloud.pubsublite.v1.SubscriberService.Subscribe", + "mode": "BIDIRECTIONAL_STREAMING" + } + ] + }, + { + "shortName": "TopicStatsService", + "fullName": "google.cloud.pubsublite.v1.TopicStatsService", + "methods": [ { - "shortName": "ReportTaskComplete", - "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.ReportTaskComplete", - "mode": "UNARY" + "shortName": "ComputeHeadCursor", + "fullName": "google.cloud.pubsublite.v1.TopicStatsService.ComputeHeadCursor", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/topicStats/{topic=projects/*/locations/*/topics/*}:computeHeadCursor" + } + ] }, { - "shortName": "ReportTaskProgress", - "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.ReportTaskProgress", - "mode": "UNARY" + "shortName": "ComputeMessageStats", + "fullName": "google.cloud.pubsublite.v1.TopicStatsService.ComputeMessageStats", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/topicStats/{topic=projects/*/locations/*/topics/*}:computeMessageStats" + } + ] }, { - "shortName": "StartNextTask", - "fullName": "google.cloud.osconfig.agentendpoint.v1beta.AgentEndpointService.StartNextTask", - "mode": "UNARY" + "shortName": "ComputeTimeCursor", + "fullName": "google.cloud.pubsublite.v1.TopicStatsService.ComputeTimeCursor", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/topicStats/{topic=projects/*/locations/*/topics/*}:computeTimeCursor" + } + ] } ] } - ] + ], + "configFile": "pubsublite_v1.yaml" }, { - "id": "google.cloud.osconfig.v1", - "directory": "google/cloud/osconfig/v1", + "id": "google.cloud.recaptchaenterprise.v1", + "directory": "google/cloud/recaptchaenterprise/v1", "version": "v1", "majorVersion": "v1", - "hostName": "osconfig.googleapis.com", - "title": "OS Config API", - "description": "OS management tools that can be used for patch management, patch compliance, and configuration management on VM instances.", + "hostName": "recaptchaenterprise.googleapis.com", + "title": "reCAPTCHA Enterprise API", + "description": "", "importDirectories": [ "google/api", - "google/cloud/osconfig/v1", - "google/protobuf", - "google/type" + "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.RecaptchaEnterprise.V1": 1 + } + }, + "go_package": { "valueCounts": { - "com.google.cloud.osconfig.v1": 5 + "google.golang.org/genproto/googleapis/cloud/recaptchaenterprise/v1;recaptchaenterprise": 1 } }, "java_multiple_files": { "valueCounts": { - "true": 1, - "": 4 + "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/osconfig/v1;osconfig": 5 + "com.google.recaptchaenterprise.v1": 1 } }, - "csharp_namespace": { + "objc_class_prefix": { "valueCounts": { - "Google.Cloud.OsConfig.V1": 5 + "GCRE": 1 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\OsConfig\\V1": 5 + "Google\\Cloud\\RecaptchaEnterprise\\V1": 1 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::OsConfig::V1": 5 + "Google::Cloud::RecaptchaEnterprise::V1": 1 } } }, "services": [ { - "shortName": "OsConfigService", - "fullName": "google.cloud.osconfig.v1.OsConfigService", + "shortName": "RecaptchaEnterpriseService", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService", "methods": [ { - "shortName": "CancelPatchJob", - "fullName": "google.cloud.osconfig.v1.OsConfigService.CancelPatchJob", + "shortName": "AnnotateAssessment", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.AnnotateAssessment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/patchJobs/*}:cancel" + "path": "/v1/{name=projects/*/assessments/*}:annotate" } ] }, { - "shortName": "CreatePatchDeployment", - "fullName": "google.cloud.osconfig.v1.OsConfigService.CreatePatchDeployment", + "shortName": "CreateAssessment", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.CreateAssessment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*}/patchDeployments" + "path": "/v1/{parent=projects/*}/assessments" } ] }, { - "shortName": "DeletePatchDeployment", - "fullName": "google.cloud.osconfig.v1.OsConfigService.DeletePatchDeployment", + "shortName": "CreateKey", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.CreateKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/patchDeployments/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*}/keys" } ] }, { - "shortName": "ExecutePatchJob", - "fullName": "google.cloud.osconfig.v1.OsConfigService.ExecutePatchJob", + "shortName": "DeleteKey", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.DeleteKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*}/patchJobs:execute" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/keys/*}" } ] }, { - "shortName": "GetPatchDeployment", - "fullName": "google.cloud.osconfig.v1.OsConfigService.GetPatchDeployment", + "shortName": "GetKey", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.GetKey", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/patchDeployments/*}" + "path": "/v1/{name=projects/*/keys/*}" } ] }, { - "shortName": "GetPatchJob", - "fullName": "google.cloud.osconfig.v1.OsConfigService.GetPatchJob", + "shortName": "GetMetrics", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.GetMetrics", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/patchJobs/*}" + "path": "/v1/{name=projects/*/keys/*/metrics}" } ] }, { - "shortName": "ListPatchDeployments", - "fullName": "google.cloud.osconfig.v1.OsConfigService.ListPatchDeployments", + "shortName": "ListKeys", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.ListKeys", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/patchDeployments" + "path": "/v1/{parent=projects/*}/keys" } ] }, { - "shortName": "ListPatchJobInstanceDetails", - "fullName": "google.cloud.osconfig.v1.OsConfigService.ListPatchJobInstanceDetails", + "shortName": "ListRelatedAccountGroupMemberships", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.ListRelatedAccountGroupMemberships", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/patchJobs/*}/instanceDetails" + "path": "/v1/{parent=projects/*/relatedaccountgroups/*}/memberships" } ] }, { - "shortName": "ListPatchJobs", - "fullName": "google.cloud.osconfig.v1.OsConfigService.ListPatchJobs", + "shortName": "ListRelatedAccountGroups", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.ListRelatedAccountGroups", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/patchJobs" + "path": "/v1/{parent=projects/*}/relatedaccountgroups" + } + ] + }, + { + "shortName": "MigrateKey", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.MigrateKey", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/keys/*}:migrate" + } + ] + }, + { + "shortName": "SearchRelatedAccountGroupMemberships", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.SearchRelatedAccountGroupMemberships", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*}/relatedaccountgroupmemberships:search" + } + ] + }, + { + "shortName": "UpdateKey", + "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.UpdateKey", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{key.name=projects/*/keys/*}" } ] } ] } - ] + ], + "configFile": "recaptchaenterprise_v1.yaml" }, { - "id": "google.cloud.osconfig.v1alpha", - "directory": "google/cloud/osconfig/v1alpha", - "version": "v1alpha", + "id": "google.cloud.recaptchaenterprise.v1beta1", + "directory": "google/cloud/recaptchaenterprise/v1beta1", + "version": "v1beta1", "majorVersion": "v1", - "hostName": "osconfig.googleapis.com", - "title": "OS Config API", - "description": "OS management tools that can be used for patch management, patch compliance, and configuration management on VM instances.", + "hostName": "recaptchaenterprise.googleapis.com", + "title": "reCAPTCHA Enterprise API", + "description": "", "importDirectories": [ "google/api", - "google/cloud/osconfig/v1alpha", - "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.osconfig.v1alpha": 8 + "Google.Cloud.RecaptchaEnterprise.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/recaptchaenterprise/v1beta1;recaptchaenterprise": 1 } }, "java_multiple_files": { "valueCounts": { - "true": 8 + "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/osconfig/v1alpha;osconfig": 8 + "com.google.recaptchaenterprise.v1beta1": 1 } }, - "csharp_namespace": { + "objc_class_prefix": { "valueCounts": { - "Google.Cloud.OsConfig.V1Alpha": 8 + "GCRE": 1 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\OsConfig\\V1alpha": 8 + "Google\\Cloud\\RecaptchaEnterprise\\V1beta1": 1 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::OsConfig::V1alpha": 8 + "Google::Cloud::RecaptchaEnterprise::V1beta1": 1 } } }, "services": [ { - "shortName": "OsConfigZonalService", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService", + "shortName": "RecaptchaEnterpriseServiceV1Beta1", + "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1", "methods": [ { - "shortName": "CreateOSPolicyAssignment", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.CreateOSPolicyAssignment", + "shortName": "AnnotateAssessment", + "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.AnnotateAssessment", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1alpha/{parent=projects/*/locations/*}/osPolicyAssignments" - } - ] - }, - { - "shortName": "DeleteOSPolicyAssignment", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.DeleteOSPolicyAssignment", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v1alpha/{name=projects/*/locations/*/osPolicyAssignments/*}" - } - ] - }, - { - "shortName": "GetInstanceOSPoliciesCompliance", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.GetInstanceOSPoliciesCompliance", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1alpha/{name=projects/*/locations/*/instanceOSPoliciesCompliances/*}" - } - ] - }, - { - "shortName": "GetInventory", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.GetInventory", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1alpha/{name=projects/*/locations/*/instances/*/inventory}" - } - ] - }, - { - "shortName": "GetOSPolicyAssignment", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.GetOSPolicyAssignment", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1alpha/{name=projects/*/locations/*/osPolicyAssignments/*}" - } - ] - }, - { - "shortName": "GetVulnerabilityReport", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.GetVulnerabilityReport", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1alpha/{name=projects/*/locations/*/instances/*/vulnerabilityReport}" + "path": "/v1beta1/{name=projects/*/assessments/*}:annotate" } ] }, { - "shortName": "ListInstanceOSPoliciesCompliances", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.ListInstanceOSPoliciesCompliances", + "shortName": "CreateAssessment", + "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.CreateAssessment", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{parent=projects/*/locations/*}/instanceOSPoliciesCompliances" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*}/assessments" } ] }, { - "shortName": "ListInventories", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.ListInventories", + "shortName": "CreateKey", + "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.CreateKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{parent=projects/*/locations/*/instances/*}/inventories" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*}/keys" } ] }, { - "shortName": "ListOSPolicyAssignmentRevisions", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.ListOSPolicyAssignmentRevisions", + "shortName": "DeleteKey", + "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.DeleteKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1alpha/{name=projects/*/locations/*/osPolicyAssignments/*}:listRevisions" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/keys/*}" } ] }, { - "shortName": "ListOSPolicyAssignments", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.ListOSPolicyAssignments", + "shortName": "GetKey", + "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.GetKey", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=projects/*/locations/*}/osPolicyAssignments" + "path": "/v1beta1/{name=projects/*/keys/*}" } ] }, { - "shortName": "ListVulnerabilityReports", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.ListVulnerabilityReports", + "shortName": "ListKeys", + "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.ListKeys", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=projects/*/locations/*/instances/*}/vulnerabilityReports" + "path": "/v1beta1/{parent=projects/*}/keys" } ] }, { - "shortName": "UpdateOSPolicyAssignment", - "fullName": "google.cloud.osconfig.v1alpha.OsConfigZonalService.UpdateOSPolicyAssignment", + "shortName": "UpdateKey", + "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.UpdateKey", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1alpha/{os_policy_assignment.name=projects/*/locations/*/osPolicyAssignments/*}" + "path": "/v1beta1/{key.name=projects/*/keys/*}" } ] } ] } - ] + ], + "configFile": "recaptchaenterprise_v1beta1.yaml" }, { - "id": "google.cloud.osconfig.v1beta", - "directory": "google/cloud/osconfig/v1beta", - "version": "v1beta", + "id": "google.cloud.recommendationengine.v1beta1", + "directory": "google/cloud/recommendationengine/v1beta1", + "version": "v1beta1", "majorVersion": "v1", - "hostName": "osconfig.googleapis.com", - "title": "Cloud OS Config API", - "description": "OS management tools that can be used for patch management, patch compliance, and configuration management on VM instances.", + "hostName": "recommendationengine.googleapis.com", + "title": "Recommendations AI", + "description": "Recommendations AI service enables customers to build end-to-end personalized recommendation systems without requiring a high level of expertise in machine learning, recommendation system, or Google Cloud.", "importDirectories": [ "google/api", - "google/cloud/osconfig/v1beta", + "google/cloud/recommendationengine/v1beta1", + "google/longrunning", "google/protobuf", + "google/rpc", "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.osconfig.v1beta": 4 + "Google.Cloud.RecommendationEngine.V1Beta1": 9 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/osconfig/v1beta;osconfig": 4 + "google.golang.org/genproto/googleapis/cloud/recommendationengine/v1beta1;recommendationengine": 9 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 9 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.recommendationengine.v1beta1": 9 + } + }, + "objc_class_prefix": { + "valueCounts": { + "RECAI": 9 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\RecommendationEngine\\V1beta1": 9 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::RecommendationEngine::V1beta1": 9 } } }, "services": [ { - "shortName": "OsConfigService", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService", + "shortName": "CatalogService", + "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService", "methods": [ { - "shortName": "CancelPatchJob", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.CancelPatchJob", + "shortName": "CreateCatalogItem", + "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.CreateCatalogItem", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta/{name=projects/*/patchJobs/*}:cancel" + "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems" } ] }, { - "shortName": "CreateGuestPolicy", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.CreateGuestPolicy", + "shortName": "DeleteCatalogItem", + "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.DeleteCatalogItem", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta/{parent=projects/*}/guestPolicies" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/catalogs/*/catalogItems/**}" } ] }, { - "shortName": "CreatePatchDeployment", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.CreatePatchDeployment", + "shortName": "GetCatalogItem", + "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.GetCatalogItem", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta/{parent=projects/*}/patchDeployments" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/catalogs/*/catalogItems/**}" } ] }, { - "shortName": "DeleteGuestPolicy", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.DeleteGuestPolicy", + "shortName": "ImportCatalogItems", + "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.ImportCatalogItems", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta/{name=projects/*/guestPolicies/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems:import" } ] }, { - "shortName": "DeletePatchDeployment", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.DeletePatchDeployment", + "shortName": "ListCatalogItems", + "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.ListCatalogItems", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta/{name=projects/*/patchDeployments/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems" } ] }, { - "shortName": "ExecutePatchJob", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.ExecutePatchJob", + "shortName": "UpdateCatalogItem", + "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.UpdateCatalogItem", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta/{parent=projects/*}/patchJobs:execute" + "httpMethod": "PATCH", + "path": "/v1beta1/{name=projects/*/locations/*/catalogs/*/catalogItems/**}" } ] - }, + } + ] + }, + { + "shortName": "PredictionApiKeyRegistry", + "fullName": "google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry", + "methods": [ { - "shortName": "GetGuestPolicy", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.GetGuestPolicy", + "shortName": "CreatePredictionApiKeyRegistration", + "fullName": "google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry.CreatePredictionApiKeyRegistration", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta/{name=projects/*/guestPolicies/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/predictionApiKeyRegistrations" } ] }, { - "shortName": "GetPatchDeployment", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.GetPatchDeployment", + "shortName": "DeletePredictionApiKeyRegistration", + "fullName": "google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry.DeletePredictionApiKeyRegistration", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta/{name=projects/*/patchDeployments/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/catalogs/*/eventStores/*/predictionApiKeyRegistrations/*}" } ] }, { - "shortName": "GetPatchJob", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.GetPatchJob", + "shortName": "ListPredictionApiKeyRegistrations", + "fullName": "google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry.ListPredictionApiKeyRegistrations", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{name=projects/*/patchJobs/*}" + "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/predictionApiKeyRegistrations" } ] - }, + } + ] + }, + { + "shortName": "PredictionService", + "fullName": "google.cloud.recommendationengine.v1beta1.PredictionService", + "methods": [ { - "shortName": "ListGuestPolicies", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.ListGuestPolicies", + "shortName": "Predict", + "fullName": "google.cloud.recommendationengine.v1beta1.PredictionService.Predict", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*}/guestPolicies" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/catalogs/*/eventStores/*/placements/*}:predict" } ] - }, + } + ] + }, + { + "shortName": "UserEventService", + "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService", + "methods": [ { - "shortName": "ListPatchDeployments", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.ListPatchDeployments", + "shortName": "CollectUserEvent", + "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService.CollectUserEvent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*}/patchDeployments" + "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:collect" } ] }, { - "shortName": "ListPatchJobInstanceDetails", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.ListPatchJobInstanceDetails", + "shortName": "ImportUserEvents", + "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService.ImportUserEvents", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*/patchJobs/*}/instanceDetails" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:import" } ] }, { - "shortName": "ListPatchJobs", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.ListPatchJobs", + "shortName": "ListUserEvents", + "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService.ListUserEvents", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*}/patchJobs" + "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents" } ] }, { - "shortName": "LookupEffectiveGuestPolicy", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.LookupEffectiveGuestPolicy", + "shortName": "PurgeUserEvents", + "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService.PurgeUserEvents", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta/{instance=projects/*/zones/*/instances/*}:lookupEffectiveGuestPolicy" + "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:purge" } ] }, { - "shortName": "UpdateGuestPolicy", - "fullName": "google.cloud.osconfig.v1beta.OsConfigService.UpdateGuestPolicy", + "shortName": "WriteUserEvent", + "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService.WriteUserEvent", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta/{guest_policy.name=projects/*/guestPolicies/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:write" } ] } ] } - ] + ], + "configFile": "recommendationengine_v1beta1.yaml" + }, + { + "id": "google.cloud.recommender.logging.v1", + "directory": "google/cloud/recommender/logging/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "recommender.googleapis.com", + "title": "Recommender API Logging", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/recommender/v1" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/recommender/logging/v1;logging": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.recommender.logging.v1": 1 + } + } + }, + "configFile": "recommender.yaml" }, { - "id": "google.cloud.oslogin.v1", - "directory": "google/cloud/oslogin/v1", - "version": "v1", + "id": "google.cloud.recommender.logging.v1beta1", + "directory": "google/cloud/recommender/logging/v1beta1", + "version": "v1beta1", "majorVersion": "v1", - "hostName": "oslogin.googleapis.com", - "title": "Cloud OS Login API", - "description": "You can use OS Login to manage access to your VM instances using IAM roles.", + "hostName": "recommender.googleapis.com", + "title": "Recommender API Logging", + "description": "", "importDirectories": [ "google/api", - "google/cloud/oslogin/common", - "google/protobuf" + "google/cloud/recommender/v1beta1" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.oslogin.v1": 1 + "google.golang.org/genproto/googleapis/cloud/recommender/logging/v1beta1;logging": 1 } }, "java_multiple_files": { @@ -37076,7316 +51811,7252 @@ "true": 1 } }, + "java_package": { + "valueCounts": { + "com.google.cloud.recommender.logging.v1beta1": 1 + } + } + }, + "configFile": "recommender.yaml" + }, + { + "id": "google.cloud.recommender.v1", + "directory": "google/cloud/recommender/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "recommender.googleapis.com", + "title": "Recommender API", + "description": "", + "importDirectories": [ + "google/api", + "google/cloud/recommender/v1", + "google/protobuf", + "google/type" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Recommender.V1": 3 + } + }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/oslogin/v1;oslogin": 1 + "google.golang.org/genproto/googleapis/cloud/recommender/v1;recommender": 3 } }, - "csharp_namespace": { + "java_multiple_files": { "valueCounts": { - "Google.Cloud.OsLogin.V1": 1 + "true": 3 } }, - "php_namespace": { + "java_package": { "valueCounts": { - "Google\\Cloud\\OsLogin\\V1": 1 + "com.google.cloud.recommender.v1": 3 } }, - "ruby_package": { + "objc_class_prefix": { "valueCounts": { - "Google::Cloud::OsLogin::V1": 1 + "CREC": 3 } } }, "services": [ { - "shortName": "OsLoginService", - "fullName": "google.cloud.oslogin.v1.OsLoginService", + "shortName": "Recommender", + "fullName": "google.cloud.recommender.v1.Recommender", "methods": [ { - "shortName": "DeletePosixAccount", - "fullName": "google.cloud.oslogin.v1.OsLoginService.DeletePosixAccount", + "shortName": "GetInsight", + "fullName": "google.cloud.recommender.v1.Recommender.GetInsight", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=users/*/projects/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/insightTypes/*/insights/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=folders/*/locations/*/insightTypes/*/insights/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=organizations/*/locations/*/insightTypes/*/insights/*}" } ] }, { - "shortName": "DeleteSshPublicKey", - "fullName": "google.cloud.oslogin.v1.OsLoginService.DeleteSshPublicKey", + "shortName": "GetRecommendation", + "fullName": "google.cloud.recommender.v1.Recommender.GetRecommendation", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=users/*/sshPublicKeys/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}" } ] }, { - "shortName": "GetLoginProfile", - "fullName": "google.cloud.oslogin.v1.OsLoginService.GetLoginProfile", + "shortName": "ListInsights", + "fullName": "google.cloud.recommender.v1.Recommender.ListInsights", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=users/*}/loginProfile" + "path": "/v1/{parent=projects/*/locations/*/insightTypes/*}/insights" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=billingAccounts/*/locations/*/insightTypes/*}/insights" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=folders/*/locations/*/insightTypes/*}/insights" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=organizations/*/locations/*/insightTypes/*}/insights" } ] }, { - "shortName": "GetSshPublicKey", - "fullName": "google.cloud.oslogin.v1.OsLoginService.GetSshPublicKey", + "shortName": "ListRecommendations", + "fullName": "google.cloud.recommender.v1.Recommender.ListRecommendations", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=users/*/sshPublicKeys/*}" + "path": "/v1/{parent=projects/*/locations/*/recommenders/*}/recommendations" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=billingAccounts/*/locations/*/recommenders/*}/recommendations" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=folders/*/locations/*/recommenders/*}/recommendations" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=organizations/*/locations/*/recommenders/*}/recommendations" } ] }, { - "shortName": "ImportSshPublicKey", - "fullName": "google.cloud.oslogin.v1.OsLoginService.ImportSshPublicKey", + "shortName": "MarkInsightAccepted", + "fullName": "google.cloud.recommender.v1.Recommender.MarkInsightAccepted", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=users/*}:importSshPublicKey" + "path": "/v1/{name=projects/*/locations/*/insightTypes/*/insights/*}:markAccepted" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}:markAccepted" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=folders/*/locations/*/insightTypes/*/insights/*}:markAccepted" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=organizations/*/locations/*/insightTypes/*/insights/*}:markAccepted" } ] }, { - "shortName": "UpdateSshPublicKey", - "fullName": "google.cloud.oslogin.v1.OsLoginService.UpdateSshPublicKey", + "shortName": "MarkRecommendationClaimed", + "fullName": "google.cloud.recommender.v1.Recommender.MarkRecommendationClaimed", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{name=users/*/sshPublicKeys/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markClaimed" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markClaimed" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markClaimed" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markClaimed" + } + ] + }, + { + "shortName": "MarkRecommendationFailed", + "fullName": "google.cloud.recommender.v1.Recommender.MarkRecommendationFailed", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markFailed" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markFailed" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markFailed" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markFailed" + } + ] + }, + { + "shortName": "MarkRecommendationSucceeded", + "fullName": "google.cloud.recommender.v1.Recommender.MarkRecommendationSucceeded", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" } ] } ] } - ] + ], + "configFile": "recommender_v1.yaml" }, { - "id": "google.cloud.oslogin.v1beta", - "directory": "google/cloud/oslogin/v1beta", - "version": "v1beta", + "id": "google.cloud.recommender.v1beta1", + "directory": "google/cloud/recommender/v1beta1", + "version": "v1beta1", "majorVersion": "v1", - "hostName": "oslogin.googleapis.com", - "title": "Cloud OS Login API", - "description": "You can use OS Login to manage access to your VM instances using IAM roles.", + "hostName": "recommender.googleapis.com", + "title": "Recommender API", + "description": "", "importDirectories": [ "google/api", - "google/cloud/oslogin/common", - "google/protobuf" + "google/cloud/recommender/v1beta1", + "google/protobuf", + "google/type" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.oslogin.v1beta": 1 - } - }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 1 + "Google.Cloud.Recommender.V1Beta1": 5 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/oslogin/v1beta;oslogin": 1 + "google.golang.org/genproto/googleapis/cloud/recommender/v1beta1;recommender": 5 } }, - "csharp_namespace": { + "java_multiple_files": { "valueCounts": { - "Google.Cloud.OsLogin.V1Beta": 1 + "true": 5 } }, - "php_namespace": { + "java_package": { "valueCounts": { - "Google\\Cloud\\OsLogin\\V1beta": 1 + "com.google.cloud.recommender.v1beta1": 5 } }, - "ruby_package": { + "objc_class_prefix": { "valueCounts": { - "Google::Cloud::OsLogin::V1beta": 1 + "CREC": 5 } } }, "services": [ { - "shortName": "OsLoginService", - "fullName": "google.cloud.oslogin.v1beta.OsLoginService", + "shortName": "Recommender", + "fullName": "google.cloud.recommender.v1beta1.Recommender", "methods": [ { - "shortName": "DeletePosixAccount", - "fullName": "google.cloud.oslogin.v1beta.OsLoginService.DeletePosixAccount", + "shortName": "GetInsight", + "fullName": "google.cloud.recommender.v1beta1.Recommender.GetInsight", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta/{name=users/*/projects/*}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/insightTypes/*/insights/*}" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{name=folders/*/locations/*/insightTypes/*/insights/*}" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{name=organizations/*/locations/*/insightTypes/*/insights/*}" } ] }, { - "shortName": "DeleteSshPublicKey", - "fullName": "google.cloud.oslogin.v1beta.OsLoginService.DeleteSshPublicKey", + "shortName": "GetInsightTypeConfig", + "fullName": "google.cloud.recommender.v1beta1.Recommender.GetInsightTypeConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta/{name=users/*/sshPublicKeys/*}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/insightTypes/*/config}" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{name=organizations/*/locations/*/insightTypes/*/config}" } ] }, { - "shortName": "GetLoginProfile", - "fullName": "google.cloud.oslogin.v1beta.OsLoginService.GetLoginProfile", + "shortName": "GetRecommendation", + "fullName": "google.cloud.recommender.v1beta1.Recommender.GetRecommendation", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{name=users/*}/loginProfile" + "path": "/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{name=folders/*/locations/*/recommenders/*/recommendations/*}" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}" } ] }, { - "shortName": "GetSshPublicKey", - "fullName": "google.cloud.oslogin.v1beta.OsLoginService.GetSshPublicKey", + "shortName": "GetRecommenderConfig", + "fullName": "google.cloud.recommender.v1beta1.Recommender.GetRecommenderConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{name=users/*/sshPublicKeys/*}" + "path": "/v1beta1/{name=projects/*/locations/*/recommenders/*/config}" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{name=organizations/*/locations/*/recommenders/*/config}" } ] }, { - "shortName": "ImportSshPublicKey", - "fullName": "google.cloud.oslogin.v1beta.OsLoginService.ImportSshPublicKey", + "shortName": "ListInsights", + "fullName": "google.cloud.recommender.v1beta1.Recommender.ListInsights", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta/{parent=users/*}:importSshPublicKey" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/insightTypes/*}/insights" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=billingAccounts/*/locations/*/insightTypes/*}/insights" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=folders/*/locations/*/insightTypes/*}/insights" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=organizations/*/locations/*/insightTypes/*}/insights" } ] }, { - "shortName": "UpdateSshPublicKey", - "fullName": "google.cloud.oslogin.v1beta.OsLoginService.UpdateSshPublicKey", + "shortName": "ListRecommendations", + "fullName": "google.cloud.recommender.v1beta1.Recommender.ListRecommendations", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta/{name=users/*/sshPublicKeys/*}" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/recommenders/*}/recommendations" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=billingAccounts/*/locations/*/recommenders/*}/recommendations" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=folders/*/locations/*/recommenders/*}/recommendations" + }, + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=organizations/*/locations/*/recommenders/*}/recommendations" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.phishingprotection.v1beta1", - "directory": "google/cloud/phishingprotection/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "phishingprotection.googleapis.com", - "title": "Phishing Protection API", - "description": "", - "importDirectories": [ - "google/api" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.phishingprotection.v1beta1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/phishingprotection/v1beta1;phishingprotection": 1 - } - }, - "objc_class_prefix": { - "valueCounts": { - "GCPP": 1 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.PhishingProtection.V1Beta1": 1 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\PhishingProtection\\V1beta1": 1 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::PhishingProtection::V1beta1": 1 - } - } - }, - "services": [ - { - "shortName": "PhishingProtectionServiceV1Beta1", - "fullName": "google.cloud.phishingprotection.v1beta1.PhishingProtectionServiceV1Beta1", - "methods": [ + }, { - "shortName": "ReportPhishing", - "fullName": "google.cloud.phishingprotection.v1beta1.PhishingProtectionServiceV1Beta1.ReportPhishing", + "shortName": "MarkInsightAccepted", + "fullName": "google.cloud.recommender.v1beta1.Recommender.MarkInsightAccepted", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*}/phishing:report" + "path": "/v1beta1/{name=projects/*/locations/*/insightTypes/*/insights/*}:markAccepted" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}:markAccepted" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{name=folders/*/locations/*/insightTypes/*/insights/*}:markAccepted" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{name=organizations/*/locations/*/insightTypes/*/insights/*}:markAccepted" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.policytroubleshooter.v1", - "directory": "google/cloud/policytroubleshooter/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "policytroubleshooter.googleapis.com", - "title": "Policy Troubleshooter API", - "description": "", - "importDirectories": [ - "google/api", - "google/cloud/policytroubleshooter/v1", - "google/iam/v1", - "google/type" - ], - "options": { - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/policytroubleshooter/v1;policytroubleshooter": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.PolicyTroubleshooter.V1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\PolicyTroubleshooter\\V1": 2 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::PolicyTroubleshooter::V1": 2 - } - }, - "java_package": { - "valueCounts": { - "com.google.cloud.policytroubleshooter.v1": 1, - "": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1, - "": 1 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 1, - "": 1 - } - } - }, - "services": [ - { - "shortName": "IamChecker", - "fullName": "google.cloud.policytroubleshooter.v1.IamChecker", - "methods": [ + }, { - "shortName": "TroubleshootIamPolicy", - "fullName": "google.cloud.policytroubleshooter.v1.IamChecker.TroubleshootIamPolicy", + "shortName": "MarkRecommendationClaimed", + "fullName": "google.cloud.recommender.v1beta1.Recommender.MarkRecommendationClaimed", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/iam:troubleshoot" + "path": "/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markClaimed" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markClaimed" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markClaimed" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markClaimed" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.privatecatalog.v1beta1", - "directory": "google/cloud/privatecatalog/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "cloudprivatecatalog.googleapis.com", - "title": "Cloud Private Catalog API", - "description": "Enable cloud users to discover private catalogs and products in their organizations.", - "importDirectories": [ - "google/api", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.privatecatalog.v1beta1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/privatecatalog/v1beta1;privatecatalog": 1 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.PrivateCatalog.V1Beta1": 1 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\PrivateCatalog\\V1beta1": 1 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::PrivateCatalog::V1beta1": 1 - } - } - }, - "services": [ - { - "shortName": "PrivateCatalog", - "fullName": "google.cloud.privatecatalog.v1beta1.PrivateCatalog", - "methods": [ + }, { - "shortName": "SearchCatalogs", - "fullName": "google.cloud.privatecatalog.v1beta1.PrivateCatalog.SearchCatalogs", + "shortName": "MarkRecommendationFailed", + "fullName": "google.cloud.recommender.v1beta1.Recommender.MarkRecommendationFailed", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{resource=projects/*}/catalogs:search" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markFailed" }, { - "httpMethod": "GET", - "path": "/v1beta1/{resource=organizations/*}/catalogs:search" + "httpMethod": "POST", + "path": "/v1beta1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markFailed" }, { - "httpMethod": "GET", - "path": "/v1beta1/{resource=folders/*}/catalogs:search" + "httpMethod": "POST", + "path": "/v1beta1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markFailed" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markFailed" } ] }, { - "shortName": "SearchProducts", - "fullName": "google.cloud.privatecatalog.v1beta1.PrivateCatalog.SearchProducts", + "shortName": "MarkRecommendationSucceeded", + "fullName": "google.cloud.recommender.v1beta1.Recommender.MarkRecommendationSucceeded", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{resource=projects/*}/products:search" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" }, { - "httpMethod": "GET", - "path": "/v1beta1/{resource=organizations/*}/products:search" + "httpMethod": "POST", + "path": "/v1beta1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" }, { - "httpMethod": "GET", - "path": "/v1beta1/{resource=folders/*}/products:search" + "httpMethod": "POST", + "path": "/v1beta1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" } ] }, { - "shortName": "SearchVersions", - "fullName": "google.cloud.privatecatalog.v1beta1.PrivateCatalog.SearchVersions", + "shortName": "UpdateInsightTypeConfig", + "fullName": "google.cloud.recommender.v1beta1.Recommender.UpdateInsightTypeConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{resource=projects/*}/versions:search" + "httpMethod": "PATCH", + "path": "/v1beta1/{insight_type_config.name=projects/*/locations/*/insightTypes/*/config}" }, { - "httpMethod": "GET", - "path": "/v1beta1/{resource=organizations/*}/versions:search" + "httpMethod": "POST", + "path": "/v1beta1/{insight_type_config.name=organizations/*/locations/*/insightTypes/*/config}" + } + ] + }, + { + "shortName": "UpdateRecommenderConfig", + "fullName": "google.cloud.recommender.v1beta1.Recommender.UpdateRecommenderConfig", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{recommender_config.name=projects/*/locations/*/recommenders/*/config}" }, { - "httpMethod": "GET", - "path": "/v1beta1/{resource=folders/*}/versions:search" + "httpMethod": "POST", + "path": "/v1beta1/{recommender_config.name=organizations/*/locations/*/recommenders/*/config}" } ] } ] } - ] + ], + "configFile": "recommender_v1beta1.yaml" }, { - "id": "google.cloud.pubsublite.v1", - "directory": "google/cloud/pubsublite/v1", + "id": "google.cloud.redis.v1", + "directory": "google/cloud/redis/v1", "version": "v1", "majorVersion": "v1", - "hostName": "pubsublite.googleapis.com", - "title": "Pub/Sub Lite API", - "description": "", + "hostName": "redis.googleapis.com", + "title": "Google Cloud Memorystore for Redis API", + "description": "Creates and manages Redis instances on the Google Cloud Platform.", "importDirectories": [ "google/api", - "google/cloud/pubsublite/v1", + "google/longrunning", "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.pubsublite.proto": 6 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 6 - } - }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/pubsublite/v1;pubsublite": 6 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 4, - "": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.PubSubLite.V1": 6 + "google.golang.org/genproto/googleapis/cloud/redis/v1;redis": 1 } }, - "php_namespace": { + "java_multiple_files": { "valueCounts": { - "Google\\Cloud\\PubSubLite\\V1": 6 + "true": 1 } }, - "ruby_package": { + "java_package": { "valueCounts": { - "Google::Cloud::PubSubLite::V1": 6 + "com.google.cloud.redis.v1": 1 } } }, "services": [ { - "shortName": "AdminService", - "fullName": "google.cloud.pubsublite.v1.AdminService", + "shortName": "CloudRedis", + "fullName": "google.cloud.redis.v1.CloudRedis", "methods": [ { - "shortName": "CreateSubscription", - "fullName": "google.cloud.pubsublite.v1.AdminService.CreateSubscription", + "shortName": "CreateInstance", + "fullName": "google.cloud.redis.v1.CloudRedis.CreateInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/admin/{parent=projects/*/locations/*}/subscriptions" + "path": "/v1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "CreateTopic", - "fullName": "google.cloud.pubsublite.v1.AdminService.CreateTopic", + "shortName": "DeleteInstance", + "fullName": "google.cloud.redis.v1.CloudRedis.DeleteInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/admin/{parent=projects/*/locations/*}/topics" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "DeleteSubscription", - "fullName": "google.cloud.pubsublite.v1.AdminService.DeleteSubscription", + "shortName": "ExportInstance", + "fullName": "google.cloud.redis.v1.CloudRedis.ExportInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/admin/{name=projects/*/locations/*/subscriptions/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/instances/*}:export" } ] }, { - "shortName": "DeleteTopic", - "fullName": "google.cloud.pubsublite.v1.AdminService.DeleteTopic", + "shortName": "FailoverInstance", + "fullName": "google.cloud.redis.v1.CloudRedis.FailoverInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/admin/{name=projects/*/locations/*/topics/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/instances/*}:failover" } ] }, { - "shortName": "GetSubscription", - "fullName": "google.cloud.pubsublite.v1.AdminService.GetSubscription", + "shortName": "GetInstance", + "fullName": "google.cloud.redis.v1.CloudRedis.GetInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/admin/{name=projects/*/locations/*/subscriptions/*}" + "path": "/v1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "GetTopic", - "fullName": "google.cloud.pubsublite.v1.AdminService.GetTopic", + "shortName": "ImportInstance", + "fullName": "google.cloud.redis.v1.CloudRedis.ImportInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/admin/{name=projects/*/locations/*/topics/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/instances/*}:import" } ] }, { - "shortName": "GetTopicPartitions", - "fullName": "google.cloud.pubsublite.v1.AdminService.GetTopicPartitions", + "shortName": "ListInstances", + "fullName": "google.cloud.redis.v1.CloudRedis.ListInstances", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/admin/{name=projects/*/locations/*/topics/*}/partitions" + "path": "/v1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "ListSubscriptions", - "fullName": "google.cloud.pubsublite.v1.AdminService.ListSubscriptions", + "shortName": "UpdateInstance", + "fullName": "google.cloud.redis.v1.CloudRedis.UpdateInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/admin/{parent=projects/*/locations/*}/subscriptions" + "httpMethod": "PATCH", + "path": "/v1/{instance.name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "ListTopics", - "fullName": "google.cloud.pubsublite.v1.AdminService.ListTopics", + "shortName": "UpgradeInstance", + "fullName": "google.cloud.redis.v1.CloudRedis.UpgradeInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/admin/{parent=projects/*/locations/*}/topics" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/instances/*}:upgrade" } ] - }, + } + ] + } + ], + "configFile": "redis_v1.yaml" + }, + { + "id": "google.cloud.redis.v1beta1", + "directory": "google/cloud/redis/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "redis.googleapis.com", + "title": "Google Cloud Memorystore for Redis API", + "description": "Creates and manages Redis instances on the Google Cloud Platform.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf", + "google/type" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/redis/v1beta1;redis": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.redis.v1beta1": 1 + } + } + }, + "services": [ + { + "shortName": "CloudRedis", + "fullName": "google.cloud.redis.v1beta1.CloudRedis", + "methods": [ { - "shortName": "ListTopicSubscriptions", - "fullName": "google.cloud.pubsublite.v1.AdminService.ListTopicSubscriptions", + "shortName": "CreateInstance", + "fullName": "google.cloud.redis.v1beta1.CloudRedis.CreateInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/admin/{name=projects/*/locations/*/topics/*}/subscriptions" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/instances" } ] }, { - "shortName": "UpdateSubscription", - "fullName": "google.cloud.pubsublite.v1.AdminService.UpdateSubscription", + "shortName": "DeleteInstance", + "fullName": "google.cloud.redis.v1beta1.CloudRedis.DeleteInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/admin/{subscription.name=projects/*/locations/*/subscriptions/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "UpdateTopic", - "fullName": "google.cloud.pubsublite.v1.AdminService.UpdateTopic", + "shortName": "ExportInstance", + "fullName": "google.cloud.redis.v1beta1.CloudRedis.ExportInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/admin/{topic.name=projects/*/locations/*/topics/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:export" } ] - } - ] - }, - { - "shortName": "CursorService", - "fullName": "google.cloud.pubsublite.v1.CursorService", - "methods": [ + }, { - "shortName": "CommitCursor", - "fullName": "google.cloud.pubsublite.v1.CursorService.CommitCursor", + "shortName": "FailoverInstance", + "fullName": "google.cloud.redis.v1beta1.CloudRedis.FailoverInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/cursor/{subscription=projects/*/locations/*/subscriptions/*}:commitCursor" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:failover" } ] }, { - "shortName": "ListPartitionCursors", - "fullName": "google.cloud.pubsublite.v1.CursorService.ListPartitionCursors", + "shortName": "GetInstance", + "fullName": "google.cloud.redis.v1beta1.CloudRedis.GetInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/cursor/{parent=projects/*/locations/*/subscriptions/*}/cursors" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "StreamingCommitCursor", - "fullName": "google.cloud.pubsublite.v1.CursorService.StreamingCommitCursor", - "mode": "BIDIRECTIONAL_STREAMING" - } - ] - }, - { - "shortName": "PartitionAssignmentService", - "fullName": "google.cloud.pubsublite.v1.PartitionAssignmentService", - "methods": [ - { - "shortName": "AssignPartitions", - "fullName": "google.cloud.pubsublite.v1.PartitionAssignmentService.AssignPartitions", - "mode": "BIDIRECTIONAL_STREAMING" - } - ] - }, - { - "shortName": "PublisherService", - "fullName": "google.cloud.pubsublite.v1.PublisherService", - "methods": [ + "shortName": "GetInstanceAuthString", + "fullName": "google.cloud.redis.v1beta1.CloudRedis.GetInstanceAuthString", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}/authString" + } + ] + }, { - "shortName": "Publish", - "fullName": "google.cloud.pubsublite.v1.PublisherService.Publish", - "mode": "BIDIRECTIONAL_STREAMING" - } - ] - }, - { - "shortName": "SubscriberService", - "fullName": "google.cloud.pubsublite.v1.SubscriberService", - "methods": [ + "shortName": "ImportInstance", + "fullName": "google.cloud.redis.v1beta1.CloudRedis.ImportInstance", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:import" + } + ] + }, { - "shortName": "Subscribe", - "fullName": "google.cloud.pubsublite.v1.SubscriberService.Subscribe", - "mode": "BIDIRECTIONAL_STREAMING" - } - ] - }, - { - "shortName": "TopicStatsService", - "fullName": "google.cloud.pubsublite.v1.TopicStatsService", - "methods": [ + "shortName": "ListInstances", + "fullName": "google.cloud.redis.v1beta1.CloudRedis.ListInstances", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/instances" + } + ] + }, { - "shortName": "ComputeHeadCursor", - "fullName": "google.cloud.pubsublite.v1.TopicStatsService.ComputeHeadCursor", + "shortName": "RescheduleMaintenance", + "fullName": "google.cloud.redis.v1beta1.CloudRedis.RescheduleMaintenance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/topicStats/{topic=projects/*/locations/*/topics/*}:computeHeadCursor" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:rescheduleMaintenance" } ] }, { - "shortName": "ComputeMessageStats", - "fullName": "google.cloud.pubsublite.v1.TopicStatsService.ComputeMessageStats", + "shortName": "UpdateInstance", + "fullName": "google.cloud.redis.v1beta1.CloudRedis.UpdateInstance", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/topicStats/{topic=projects/*/locations/*/topics/*}:computeMessageStats" + "httpMethod": "PATCH", + "path": "/v1beta1/{instance.name=projects/*/locations/*/instances/*}" } ] }, { - "shortName": "ComputeTimeCursor", - "fullName": "google.cloud.pubsublite.v1.TopicStatsService.ComputeTimeCursor", + "shortName": "UpgradeInstance", + "fullName": "google.cloud.redis.v1beta1.CloudRedis.UpgradeInstance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/topicStats/{topic=projects/*/locations/*/topics/*}:computeTimeCursor" + "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:upgrade" } ] } ] } - ] + ], + "configFile": "redis_v1beta1.yaml" }, { - "id": "google.cloud.recaptchaenterprise.v1", - "directory": "google/cloud/recaptchaenterprise/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "recaptchaenterprise.googleapis.com", - "title": "reCAPTCHA Enterprise API", - "description": "", + "id": "google.cloud.resourcemanager.v2", + "directory": "google/cloud/resourcemanager/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "cloudresourcemanager.googleapis.com", + "title": "Cloud Resource Manager API", + "description": "Creates, reads, and updates metadata for Google Cloud Platform resource containers.", "importDirectories": [ "google/api", + "google/iam/v1", + "google/longrunning", "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.recaptchaenterprise.v1": 1 - } - }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 1 + "Google.Cloud.ResourceManager.V2": 1 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/recaptchaenterprise/v1;recaptchaenterprise": 1 + "google.golang.org/genproto/googleapis/cloud/resourcemanager/v2;resourcemanager": 1 } }, - "objc_class_prefix": { + "java_multiple_files": { "valueCounts": { - "GCRE": 1 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.RecaptchaEnterprise.V1": 1 + "com.google.cloud.resourcemanager.v2": 1 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\RecaptchaEnterprise\\V1": 1 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::RecaptchaEnterprise::V1": 1 + "Google\\Cloud\\ResourceManager\\V2": 1 } } }, "services": [ { - "shortName": "RecaptchaEnterpriseService", - "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService", + "shortName": "Folders", + "fullName": "google.cloud.resourcemanager.v2.Folders", "methods": [ { - "shortName": "AnnotateAssessment", - "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.AnnotateAssessment", + "shortName": "CreateFolder", + "fullName": "google.cloud.resourcemanager.v2.Folders.CreateFolder", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/assessments/*}:annotate" + "path": "/v2/folders" } ] }, { - "shortName": "CreateAssessment", - "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.CreateAssessment", + "shortName": "DeleteFolder", + "fullName": "google.cloud.resourcemanager.v2.Folders.DeleteFolder", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v2/{name=folders/*}" + } + ] + }, + { + "shortName": "GetFolder", + "fullName": "google.cloud.resourcemanager.v2.Folders.GetFolder", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/{name=folders/*}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.resourcemanager.v2.Folders.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2/{resource=folders/*}:getIamPolicy" + } + ] + }, + { + "shortName": "ListFolders", + "fullName": "google.cloud.resourcemanager.v2.Folders.ListFolders", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2/folders" + } + ] + }, + { + "shortName": "MoveFolder", + "fullName": "google.cloud.resourcemanager.v2.Folders.MoveFolder", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*}/assessments" + "path": "/v2/{name=folders/*}:move" } ] }, { - "shortName": "CreateKey", - "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.CreateKey", + "shortName": "SearchFolders", + "fullName": "google.cloud.resourcemanager.v2.Folders.SearchFolders", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*}/keys" + "path": "/v2/folders:search" } ] }, { - "shortName": "DeleteKey", - "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.DeleteKey", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.resourcemanager.v2.Folders.SetIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/keys/*}" + "httpMethod": "POST", + "path": "/v2/{resource=folders/*}:setIamPolicy" } ] }, { - "shortName": "GetKey", - "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.GetKey", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.resourcemanager.v2.Folders.TestIamPermissions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/keys/*}" + "httpMethod": "POST", + "path": "/v2/{resource=folders/*}:testIamPermissions" } ] }, { - "shortName": "ListKeys", - "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.ListKeys", + "shortName": "UndeleteFolder", + "fullName": "google.cloud.resourcemanager.v2.Folders.UndeleteFolder", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/keys" + "httpMethod": "POST", + "path": "/v2/{name=folders/*}:undelete" } ] }, { - "shortName": "UpdateKey", - "fullName": "google.cloud.recaptchaenterprise.v1.RecaptchaEnterpriseService.UpdateKey", + "shortName": "UpdateFolder", + "fullName": "google.cloud.resourcemanager.v2.Folders.UpdateFolder", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{key.name=projects/*/keys/*}" + "path": "/v2/{folder.name=folders/*}" } ] } ] } - ] + ], + "configFile": "cloudresourcemanager_v2.yaml" }, { - "id": "google.cloud.recaptchaenterprise.v1beta1", - "directory": "google/cloud/recaptchaenterprise/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "recaptchaenterprise.googleapis.com", - "title": "reCAPTCHA Enterprise API", - "description": "", + "id": "google.cloud.resourcemanager.v3", + "directory": "google/cloud/resourcemanager/v3", + "version": "v3", + "majorVersion": "v3", + "hostName": "cloudresourcemanager.googleapis.com", + "title": "Cloud Resource Manager API", + "description": "Creates, reads, and updates metadata for Google Cloud Platform resource containers.", "importDirectories": [ "google/api", + "google/iam/v1", + "google/longrunning", "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.recaptchaenterprise.v1beta1": 1 - } - }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 1 + "Google.Cloud.ResourceManager.V3": 6 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/recaptchaenterprise/v1beta1;recaptchaenterprise": 1 + "google.golang.org/genproto/googleapis/cloud/resourcemanager/v3;resourcemanager": 6 } }, - "objc_class_prefix": { + "java_multiple_files": { "valueCounts": { - "GCRE": 1 + "true": 6 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.RecaptchaEnterprise.V1Beta1": 1 + "com.google.cloud.resourcemanager.v3": 6 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\RecaptchaEnterprise\\V1beta1": 1 + "Google\\Cloud\\ResourceManager\\V3": 6 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::RecaptchaEnterprise::V1beta1": 1 + "Google::Cloud::ResourceManager::V3": 6 } } }, "services": [ { - "shortName": "RecaptchaEnterpriseServiceV1Beta1", - "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1", + "shortName": "Folders", + "fullName": "google.cloud.resourcemanager.v3.Folders", "methods": [ { - "shortName": "AnnotateAssessment", - "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.AnnotateAssessment", + "shortName": "CreateFolder", + "fullName": "google.cloud.resourcemanager.v3.Folders.CreateFolder", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/assessments/*}:annotate" + "path": "/v3/folders" } ] }, { - "shortName": "CreateAssessment", - "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.CreateAssessment", + "shortName": "DeleteFolder", + "fullName": "google.cloud.resourcemanager.v3.Folders.DeleteFolder", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*}/assessments" + "httpMethod": "DELETE", + "path": "/v3/{name=folders/*}" } ] }, { - "shortName": "CreateKey", - "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.CreateKey", + "shortName": "GetFolder", + "fullName": "google.cloud.resourcemanager.v3.Folders.GetFolder", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*}/keys" + "httpMethod": "GET", + "path": "/v3/{name=folders/*}" } ] }, { - "shortName": "DeleteKey", - "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.DeleteKey", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.resourcemanager.v3.Folders.GetIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/keys/*}" + "httpMethod": "POST", + "path": "/v3/{resource=folders/*}:getIamPolicy" } ] }, { - "shortName": "GetKey", - "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.GetKey", + "shortName": "ListFolders", + "fullName": "google.cloud.resourcemanager.v3.Folders.ListFolders", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/keys/*}" + "path": "/v3/folders" } ] }, { - "shortName": "ListKeys", - "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.ListKeys", + "shortName": "MoveFolder", + "fullName": "google.cloud.resourcemanager.v3.Folders.MoveFolder", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{name=folders/*}:move" + } + ] + }, + { + "shortName": "SearchFolders", + "fullName": "google.cloud.resourcemanager.v3.Folders.SearchFolders", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*}/keys" + "path": "/v3/folders:search" } ] }, { - "shortName": "UpdateKey", - "fullName": "google.cloud.recaptchaenterprise.v1beta1.RecaptchaEnterpriseServiceV1Beta1.UpdateKey", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.resourcemanager.v3.Folders.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{resource=folders/*}:setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.resourcemanager.v3.Folders.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{resource=folders/*}:testIamPermissions" + } + ] + }, + { + "shortName": "UndeleteFolder", + "fullName": "google.cloud.resourcemanager.v3.Folders.UndeleteFolder", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{name=folders/*}:undelete" + } + ] + }, + { + "shortName": "UpdateFolder", + "fullName": "google.cloud.resourcemanager.v3.Folders.UpdateFolder", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{key.name=projects/*/keys/*}" + "path": "/v3/{folder.name=folders/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.recommendationengine.v1beta1", - "directory": "google/cloud/recommendationengine/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "recommendationengine.googleapis.com", - "title": "Recommendations AI", - "description": "Recommendations AI service enables customers to build end-to-end personalized recommendation systems without requiring a high level of expertise in machine learning, recommendation system, or Google Cloud.", - "importDirectories": [ - "google/api", - "google/cloud/recommendationengine/v1beta1", - "google/longrunning", - "google/protobuf", - "google/rpc", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.recommendationengine.v1beta1": 9 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 9 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/recommendationengine/v1beta1;recommendationengine": 9 - } - }, - "objc_class_prefix": { - "valueCounts": { - "RECAI": 9 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.RecommendationEngine.V1Beta1": 9 - } }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\RecommendationEngine\\V1beta1": 9 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::RecommendationEngine::V1beta1": 9 - } - } - }, - "services": [ { - "shortName": "CatalogService", - "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService", + "shortName": "Organizations", + "fullName": "google.cloud.resourcemanager.v3.Organizations", "methods": [ { - "shortName": "CreateCatalogItem", - "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.CreateCatalogItem", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.resourcemanager.v3.Organizations.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems" + "path": "/v3/{resource=organizations/*}:getIamPolicy" } ] }, { - "shortName": "DeleteCatalogItem", - "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.DeleteCatalogItem", + "shortName": "GetOrganization", + "fullName": "google.cloud.resourcemanager.v3.Organizations.GetOrganization", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/catalogs/*/catalogItems/**}" + "httpMethod": "GET", + "path": "/v3/{name=organizations/*}" } ] }, { - "shortName": "GetCatalogItem", - "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.GetCatalogItem", + "shortName": "SearchOrganizations", + "fullName": "google.cloud.resourcemanager.v3.Organizations.SearchOrganizations", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/catalogs/*/catalogItems/**}" + "path": "/v3/organizations:search" } ] }, { - "shortName": "ImportCatalogItems", - "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.ImportCatalogItems", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.resourcemanager.v3.Organizations.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems:import" + "path": "/v3/{resource=organizations/*}:setIamPolicy" } ] }, { - "shortName": "ListCatalogItems", - "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.ListCatalogItems", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.resourcemanager.v3.Organizations.TestIamPermissions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*}/catalogItems" + "httpMethod": "POST", + "path": "/v3/{resource=organizations/*}:testIamPermissions" + } + ] + } + ] + }, + { + "shortName": "Projects", + "fullName": "google.cloud.resourcemanager.v3.Projects", + "methods": [ + { + "shortName": "CreateProject", + "fullName": "google.cloud.resourcemanager.v3.Projects.CreateProject", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/projects" } ] }, { - "shortName": "UpdateCatalogItem", - "fullName": "google.cloud.recommendationengine.v1beta1.CatalogService.UpdateCatalogItem", + "shortName": "DeleteProject", + "fullName": "google.cloud.resourcemanager.v3.Projects.DeleteProject", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{name=projects/*/locations/*/catalogs/*/catalogItems/**}" + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*}" } ] - } - ] - }, - { - "shortName": "PredictionApiKeyRegistry", - "fullName": "google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry", - "methods": [ + }, { - "shortName": "CreatePredictionApiKeyRegistration", - "fullName": "google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry.CreatePredictionApiKeyRegistration", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.resourcemanager.v3.Projects.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/predictionApiKeyRegistrations" + "path": "/v3/{resource=projects/*}:getIamPolicy" } ] }, { - "shortName": "DeletePredictionApiKeyRegistration", - "fullName": "google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry.DeletePredictionApiKeyRegistration", + "shortName": "GetProject", + "fullName": "google.cloud.resourcemanager.v3.Projects.GetProject", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/catalogs/*/eventStores/*/predictionApiKeyRegistrations/*}" + "httpMethod": "GET", + "path": "/v3/{name=projects/*}" } ] }, { - "shortName": "ListPredictionApiKeyRegistrations", - "fullName": "google.cloud.recommendationengine.v1beta1.PredictionApiKeyRegistry.ListPredictionApiKeyRegistrations", + "shortName": "ListProjects", + "fullName": "google.cloud.resourcemanager.v3.Projects.ListProjects", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/predictionApiKeyRegistrations" + "path": "/v3/projects" } ] - } - ] - }, - { - "shortName": "PredictionService", - "fullName": "google.cloud.recommendationengine.v1beta1.PredictionService", - "methods": [ + }, { - "shortName": "Predict", - "fullName": "google.cloud.recommendationengine.v1beta1.PredictionService.Predict", + "shortName": "MoveProject", + "fullName": "google.cloud.resourcemanager.v3.Projects.MoveProject", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/catalogs/*/eventStores/*/placements/*}:predict" + "path": "/v3/{name=projects/*}:move" } ] - } - ] - }, - { - "shortName": "UserEventService", - "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService", - "methods": [ + }, { - "shortName": "CollectUserEvent", - "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService.CollectUserEvent", + "shortName": "SearchProjects", + "fullName": "google.cloud.resourcemanager.v3.Projects.SearchProjects", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:collect" + "path": "/v3/projects:search" } ] }, { - "shortName": "ImportUserEvents", - "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService.ImportUserEvents", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.resourcemanager.v3.Projects.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:import" + "path": "/v3/{resource=projects/*}:setIamPolicy" } ] }, { - "shortName": "ListUserEvents", - "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService.ListUserEvents", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.resourcemanager.v3.Projects.TestIamPermissions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents" + "httpMethod": "POST", + "path": "/v3/{resource=projects/*}:testIamPermissions" } ] }, { - "shortName": "PurgeUserEvents", - "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService.PurgeUserEvents", + "shortName": "UndeleteProject", + "fullName": "google.cloud.resourcemanager.v3.Projects.UndeleteProject", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:purge" + "path": "/v3/{name=projects/*}:undelete" } ] }, { - "shortName": "WriteUserEvent", - "fullName": "google.cloud.recommendationengine.v1beta1.UserEventService.WriteUserEvent", + "shortName": "UpdateProject", + "fullName": "google.cloud.resourcemanager.v3.Projects.UpdateProject", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/catalogs/*/eventStores/*}/userEvents:write" + "httpMethod": "PATCH", + "path": "/v3/{project.name=projects/*}" + } + ] + } + ] + }, + { + "shortName": "TagBindings", + "fullName": "google.cloud.resourcemanager.v3.TagBindings", + "methods": [ + { + "shortName": "CreateTagBinding", + "fullName": "google.cloud.resourcemanager.v3.TagBindings.CreateTagBinding", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/tagBindings" + } + ] + }, + { + "shortName": "DeleteTagBinding", + "fullName": "google.cloud.resourcemanager.v3.TagBindings.DeleteTagBinding", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v3/{name=tagBindings/**}" + } + ] + }, + { + "shortName": "ListTagBindings", + "fullName": "google.cloud.resourcemanager.v3.TagBindings.ListTagBindings", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v3/tagBindings" } ] } ] - } - ] - }, - { - "id": "google.cloud.recommender.logging.v1", - "directory": "google/cloud/recommender/logging/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "recommender.googleapis.com", - "title": "Recommender API Logging", - "description": "", - "importDirectories": [ - "google/api", - "google/cloud/recommender/v1" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.recommender.logging.v1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/recommender/logging/v1;logging": 1 - } - } - } - }, - { - "id": "google.cloud.recommender.logging.v1beta1", - "directory": "google/cloud/recommender/logging/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "recommender.googleapis.com", - "title": "Recommender API Logging", - "description": "", - "importDirectories": [ - "google/api", - "google/cloud/recommender/v1beta1" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.recommender.logging.v1beta1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/recommender/logging/v1beta1;logging": 1 - } - } - } - }, - { - "id": "google.cloud.recommender.v1", - "directory": "google/cloud/recommender/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "recommender.googleapis.com", - "title": "Recommender API", - "description": "", - "importDirectories": [ - "google/api", - "google/cloud/recommender/v1", - "google/protobuf", - "google/type" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.recommender.v1": 3 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 3 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/recommender/v1;recommender": 3 - } }, - "objc_class_prefix": { - "valueCounts": { - "CREC": 3 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Recommender.V1": 3 - } - } - }, - "services": [ { - "shortName": "Recommender", - "fullName": "google.cloud.recommender.v1.Recommender", + "shortName": "TagKeys", + "fullName": "google.cloud.resourcemanager.v3.TagKeys", "methods": [ { - "shortName": "GetInsight", - "fullName": "google.cloud.recommender.v1.Recommender.GetInsight", + "shortName": "CreateTagKey", + "fullName": "google.cloud.resourcemanager.v3.TagKeys.CreateTagKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/insightTypes/*/insights/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=folders/*/locations/*/insightTypes/*/insights/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=organizations/*/locations/*/insightTypes/*/insights/*}" + "httpMethod": "POST", + "path": "/v3/tagKeys" } ] }, { - "shortName": "GetRecommendation", - "fullName": "google.cloud.recommender.v1.Recommender.GetRecommendation", + "shortName": "DeleteTagKey", + "fullName": "google.cloud.resourcemanager.v3.TagKeys.DeleteTagKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}" + "httpMethod": "DELETE", + "path": "/v3/{name=tagKeys/*}" } ] }, { - "shortName": "ListInsights", - "fullName": "google.cloud.recommender.v1.Recommender.ListInsights", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.resourcemanager.v3.TagKeys.GetIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/insightTypes/*}/insights" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=billingAccounts/*/locations/*/insightTypes/*}/insights" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=folders/*/locations/*/insightTypes/*}/insights" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=organizations/*/locations/*/insightTypes/*}/insights" + "httpMethod": "POST", + "path": "/v3/{resource=tagKeys/*}:getIamPolicy" } ] }, { - "shortName": "ListRecommendations", - "fullName": "google.cloud.recommender.v1.Recommender.ListRecommendations", + "shortName": "GetTagKey", + "fullName": "google.cloud.resourcemanager.v3.TagKeys.GetTagKey", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/recommenders/*}/recommendations" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=billingAccounts/*/locations/*/recommenders/*}/recommendations" - }, - { - "httpMethod": "GET", - "path": "/v1/{parent=folders/*/locations/*/recommenders/*}/recommendations" - }, + "path": "/v3/{name=tagKeys/*}" + } + ] + }, + { + "shortName": "ListTagKeys", + "fullName": "google.cloud.resourcemanager.v3.TagKeys.ListTagKeys", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=organizations/*/locations/*/recommenders/*}/recommendations" + "path": "/v3/tagKeys" } ] }, { - "shortName": "MarkInsightAccepted", - "fullName": "google.cloud.recommender.v1.Recommender.MarkInsightAccepted", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.resourcemanager.v3.TagKeys.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/insightTypes/*/insights/*}:markAccepted" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}:markAccepted" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=folders/*/locations/*/insightTypes/*/insights/*}:markAccepted" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=organizations/*/locations/*/insightTypes/*/insights/*}:markAccepted" + "path": "/v3/{resource=tagKeys/*}:setIamPolicy" } ] }, { - "shortName": "MarkRecommendationClaimed", - "fullName": "google.cloud.recommender.v1.Recommender.MarkRecommendationClaimed", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.resourcemanager.v3.TagKeys.TestIamPermissions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markClaimed" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markClaimed" - }, + "path": "/v3/{resource=tagKeys/*}:testIamPermissions" + } + ] + }, + { + "shortName": "UpdateTagKey", + "fullName": "google.cloud.resourcemanager.v3.TagKeys.UpdateTagKey", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markClaimed" - }, + "httpMethod": "PATCH", + "path": "/v3/{tag_key.name=tagKeys/*}" + } + ] + } + ] + }, + { + "shortName": "TagValues", + "fullName": "google.cloud.resourcemanager.v3.TagValues", + "methods": [ + { + "shortName": "CreateTagValue", + "fullName": "google.cloud.resourcemanager.v3.TagValues.CreateTagValue", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markClaimed" + "path": "/v3/tagValues" } ] }, { - "shortName": "MarkRecommendationFailed", - "fullName": "google.cloud.recommender.v1.Recommender.MarkRecommendationFailed", + "shortName": "DeleteTagValue", + "fullName": "google.cloud.resourcemanager.v3.TagValues.DeleteTagValue", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markFailed" - }, - { - "httpMethod": "POST", - "path": "/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markFailed" - }, + "httpMethod": "DELETE", + "path": "/v3/{name=tagValues/*}" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.resourcemanager.v3.TagValues.GetIamPolicy", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markFailed" - }, + "path": "/v3/{resource=tagValues/*}:getIamPolicy" + } + ] + }, + { + "shortName": "GetTagValue", + "fullName": "google.cloud.resourcemanager.v3.TagValues.GetTagValue", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markFailed" + "httpMethod": "GET", + "path": "/v3/{name=tagValues/*}" } ] }, { - "shortName": "MarkRecommendationSucceeded", - "fullName": "google.cloud.recommender.v1.Recommender.MarkRecommendationSucceeded", + "shortName": "ListTagValues", + "fullName": "google.cloud.resourcemanager.v3.TagValues.ListTagValues", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" - }, + "httpMethod": "GET", + "path": "/v3/tagValues" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.resourcemanager.v3.TagValues.SetIamPolicy", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" - }, + "path": "/v3/{resource=tagValues/*}:setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.resourcemanager.v3.TagValues.TestIamPermissions", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" - }, + "path": "/v3/{resource=tagValues/*}:testIamPermissions" + } + ] + }, + { + "shortName": "UpdateTagValue", + "fullName": "google.cloud.resourcemanager.v3.TagValues.UpdateTagValue", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" + "httpMethod": "PATCH", + "path": "/v3/{tag_value.name=tagValues/*}" } ] } ] } - ] + ], + "configFile": "cloudresourcemanager_v3.yaml" }, { - "id": "google.cloud.recommender.v1beta1", - "directory": "google/cloud/recommender/v1beta1", - "version": "v1beta1", + "id": "google.cloud.resourcesettings.v1", + "directory": "google/cloud/resourcesettings/v1", + "version": "v1", "majorVersion": "v1", - "hostName": "recommender.googleapis.com", - "title": "Recommender API", - "description": "", + "hostName": "resourcesettings.googleapis.com", + "title": "Resource Settings API", + "description": "The Resource Settings API allows users to control and modify the behavior of their GCP resources (e.g., VM, firewall, Project, etc.) across the Cloud Resource Hierarchy.", "importDirectories": [ - "google/api", - "google/cloud/recommender/v1beta1", - "google/protobuf", - "google/type" + "google/api" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.recommender.v1beta1": 3 + "true": 1 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 3 + "Google.Cloud.ResourceSettings.V1": 1 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/recommender/v1beta1;recommender": 3 + "google.golang.org/genproto/googleapis/cloud/resourcesettings/v1;resourcesettings": 1 } }, - "objc_class_prefix": { + "java_multiple_files": { "valueCounts": { - "CREC": 3 + "true": 1 } }, - "csharp_namespace": { + "java_package": { + "valueCounts": { + "com.google.cloud.resourcesettings.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\ResourceSettings\\V1": 1 + } + }, + "ruby_package": { "valueCounts": { - "Google.Cloud.Recommender.V1Beta1": 3 + "Google::Cloud::ResourceSettings::V1": 1 } } }, "services": [ { - "shortName": "Recommender", - "fullName": "google.cloud.recommender.v1beta1.Recommender", + "shortName": "ResourceSettingsService", + "fullName": "google.cloud.resourcesettings.v1.ResourceSettingsService", "methods": [ { - "shortName": "GetInsight", - "fullName": "google.cloud.recommender.v1beta1.Recommender.GetInsight", + "shortName": "GetSetting", + "fullName": "google.cloud.resourcesettings.v1.ResourceSettingsService.GetSetting", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/insightTypes/*/insights/*}" - }, - { - "httpMethod": "GET", - "path": "/v1beta1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}" + "path": "/v1/{name=organizations/*/settings/*}" }, { "httpMethod": "GET", - "path": "/v1beta1/{name=folders/*/locations/*/insightTypes/*/insights/*}" + "path": "/v1/{name=folders/*/settings/*}" }, { "httpMethod": "GET", - "path": "/v1beta1/{name=organizations/*/locations/*/insightTypes/*/insights/*}" + "path": "/v1/{name=projects/*/settings/*}" } ] }, { - "shortName": "GetRecommendation", - "fullName": "google.cloud.recommender.v1beta1.Recommender.GetRecommendation", + "shortName": "ListSettings", + "fullName": "google.cloud.resourcesettings.v1.ResourceSettingsService.ListSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}" - }, - { - "httpMethod": "GET", - "path": "/v1beta1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}" + "path": "/v1/{parent=organizations/*}/settings" }, { "httpMethod": "GET", - "path": "/v1beta1/{name=folders/*/locations/*/recommenders/*/recommendations/*}" + "path": "/v1/{parent=folders/*}/settings" }, { "httpMethod": "GET", - "path": "/v1beta1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}" + "path": "/v1/{parent=projects/*}/settings" } ] }, { - "shortName": "ListInsights", - "fullName": "google.cloud.recommender.v1beta1.Recommender.ListInsights", + "shortName": "UpdateSetting", + "fullName": "google.cloud.resourcesettings.v1.ResourceSettingsService.UpdateSetting", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/insightTypes/*}/insights" - }, - { - "httpMethod": "GET", - "path": "/v1beta1/{parent=billingAccounts/*/locations/*/insightTypes/*}/insights" + "httpMethod": "PATCH", + "path": "/v1/{setting.name=organizations/*/settings/*}" }, { - "httpMethod": "GET", - "path": "/v1beta1/{parent=folders/*/locations/*/insightTypes/*}/insights" + "httpMethod": "PATCH", + "path": "/v1/{setting.name=folders/*/settings/*}" }, { - "httpMethod": "GET", - "path": "/v1beta1/{parent=organizations/*/locations/*/insightTypes/*}/insights" + "httpMethod": "PATCH", + "path": "/v1/{setting.name=projects/*/settings/*}" } ] - }, + } + ] + } + ], + "configFile": "resourcesettings_v1.yaml" + }, + { + "id": "google.cloud.retail.v2", + "directory": "google/cloud/retail/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "retail.googleapis.com", + "title": "Retail API", + "description": "Cloud Retail service enables customers to build end-to-end personalized recommendation systems without requiring a high level of expertise in machine learning, recommendation system, or Google Cloud.", + "importDirectories": [ + "google/api", + "google/cloud/retail/v2", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/type" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Retail.V2": 12 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/retail/v2;retail": 12 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 12 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.retail.v2": 12 + } + }, + "objc_class_prefix": { + "valueCounts": { + "RETAIL": 12 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Retail\\V2": 12 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Retail::V2": 12 + } + } + }, + "services": [ + { + "shortName": "CatalogService", + "fullName": "google.cloud.retail.v2.CatalogService", + "methods": [ { - "shortName": "ListRecommendations", - "fullName": "google.cloud.recommender.v1beta1.Recommender.ListRecommendations", + "shortName": "GetDefaultBranch", + "fullName": "google.cloud.retail.v2.CatalogService.GetDefaultBranch", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/recommenders/*}/recommendations" - }, - { - "httpMethod": "GET", - "path": "/v1beta1/{parent=billingAccounts/*/locations/*/recommenders/*}/recommendations" - }, - { - "httpMethod": "GET", - "path": "/v1beta1/{parent=folders/*/locations/*/recommenders/*}/recommendations" - }, - { - "httpMethod": "GET", - "path": "/v1beta1/{parent=organizations/*/locations/*/recommenders/*}/recommendations" - } - ] - }, - { - "shortName": "MarkInsightAccepted", - "fullName": "google.cloud.recommender.v1beta1.Recommender.MarkInsightAccepted", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/insightTypes/*/insights/*}:markAccepted" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=billingAccounts/*/locations/*/insightTypes/*/insights/*}:markAccepted" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=folders/*/locations/*/insightTypes/*/insights/*}:markAccepted" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=organizations/*/locations/*/insightTypes/*/insights/*}:markAccepted" + "path": "/v2/{catalog=projects/*/locations/*/catalogs/*}:getDefaultBranch" } ] }, { - "shortName": "MarkRecommendationClaimed", - "fullName": "google.cloud.recommender.v1beta1.Recommender.MarkRecommendationClaimed", + "shortName": "ListCatalogs", + "fullName": "google.cloud.retail.v2.CatalogService.ListCatalogs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markClaimed" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markClaimed" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markClaimed" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markClaimed" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*}/catalogs" } ] }, { - "shortName": "MarkRecommendationFailed", - "fullName": "google.cloud.recommender.v1beta1.Recommender.MarkRecommendationFailed", + "shortName": "SetDefaultBranch", + "fullName": "google.cloud.retail.v2.CatalogService.SetDefaultBranch", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markFailed" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markFailed" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markFailed" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markFailed" + "path": "/v2/{catalog=projects/*/locations/*/catalogs/*}:setDefaultBranch" } ] }, { - "shortName": "MarkRecommendationSucceeded", - "fullName": "google.cloud.recommender.v1beta1.Recommender.MarkRecommendationSucceeded", + "shortName": "UpdateCatalog", + "fullName": "google.cloud.retail.v2.CatalogService.UpdateCatalog", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=billingAccounts/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=folders/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{name=organizations/*/locations/*/recommenders/*/recommendations/*}:markSucceeded" + "httpMethod": "PATCH", + "path": "/v2/{catalog.name=projects/*/locations/*/catalogs/*}" } ] } ] - } - ] - }, - { - "id": "google.cloud.redis.v1", - "directory": "google/cloud/redis/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "redis.googleapis.com", - "title": "Google Cloud Memorystore for Redis API", - "description": "Creates and manages Redis instances on the Google Cloud Platform.", - "importDirectories": [ - "google/api", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.redis.v1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/redis/v1;redis": 1 - } - } - }, - "services": [ { - "shortName": "CloudRedis", - "fullName": "google.cloud.redis.v1.CloudRedis", + "shortName": "CompletionService", + "fullName": "google.cloud.retail.v2.CompletionService", "methods": [ { - "shortName": "CreateInstance", - "fullName": "google.cloud.redis.v1.CloudRedis.CreateInstance", + "shortName": "CompleteQuery", + "fullName": "google.cloud.retail.v2.CompletionService.CompleteQuery", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/instances" + "httpMethod": "GET", + "path": "/v2/{catalog=projects/*/locations/*/catalogs/*}:completeQuery" } ] }, { - "shortName": "DeleteInstance", - "fullName": "google.cloud.redis.v1.CloudRedis.DeleteInstance", + "shortName": "ImportCompletionData", + "fullName": "google.cloud.retail.v2.CompletionService.ImportCompletionData", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/instances/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/catalogs/*}/completionData:import" } ] - }, + } + ] + }, + { + "shortName": "PredictionService", + "fullName": "google.cloud.retail.v2.PredictionService", + "methods": [ { - "shortName": "ExportInstance", - "fullName": "google.cloud.redis.v1.CloudRedis.ExportInstance", + "shortName": "Predict", + "fullName": "google.cloud.retail.v2.PredictionService.Predict", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/instances/*}:export" + "path": "/v2/{placement=projects/*/locations/*/catalogs/*/placements/*}:predict" } ] - }, + } + ] + }, + { + "shortName": "ProductService", + "fullName": "google.cloud.retail.v2.ProductService", + "methods": [ { - "shortName": "FailoverInstance", - "fullName": "google.cloud.redis.v1.CloudRedis.FailoverInstance", + "shortName": "AddFulfillmentPlaces", + "fullName": "google.cloud.retail.v2.ProductService.AddFulfillmentPlaces", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/instances/*}:failover" + "path": "/v2/{product=projects/*/locations/*/catalogs/*/branches/*/products/**}:addFulfillmentPlaces" } ] }, { - "shortName": "GetInstance", - "fullName": "google.cloud.redis.v1.CloudRedis.GetInstance", + "shortName": "CreateProduct", + "fullName": "google.cloud.retail.v2.ProductService.CreateProduct", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/instances/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/catalogs/*/branches/*}/products" } ] }, { - "shortName": "ImportInstance", - "fullName": "google.cloud.redis.v1.CloudRedis.ImportInstance", + "shortName": "DeleteProduct", + "fullName": "google.cloud.retail.v2.ProductService.DeleteProduct", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/instances/*}:import" + "httpMethod": "DELETE", + "path": "/v2/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" } ] }, { - "shortName": "ListInstances", - "fullName": "google.cloud.redis.v1.CloudRedis.ListInstances", + "shortName": "GetProduct", + "fullName": "google.cloud.retail.v2.ProductService.GetProduct", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/instances" + "path": "/v2/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" } ] }, { - "shortName": "UpdateInstance", - "fullName": "google.cloud.redis.v1.CloudRedis.UpdateInstance", + "shortName": "ImportProducts", + "fullName": "google.cloud.retail.v2.ProductService.ImportProducts", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{instance.name=projects/*/locations/*/instances/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/catalogs/*/branches/*}/products:import" } ] }, { - "shortName": "UpgradeInstance", - "fullName": "google.cloud.redis.v1.CloudRedis.UpgradeInstance", + "shortName": "ListProducts", + "fullName": "google.cloud.retail.v2.ProductService.ListProducts", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/instances/*}:upgrade" + "httpMethod": "GET", + "path": "/v2/{parent=projects/*/locations/*/catalogs/*/branches/*}/products" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.redis.v1beta1", - "directory": "google/cloud/redis/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "redis.googleapis.com", - "title": "Google Cloud Memorystore for Redis API", - "description": "Creates and manages Redis instances on the Google Cloud Platform.", - "importDirectories": [ - "google/api", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.redis.v1beta1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/redis/v1beta1;redis": 1 - } - } - }, - "services": [ - { - "shortName": "CloudRedis", - "fullName": "google.cloud.redis.v1beta1.CloudRedis", - "methods": [ + }, { - "shortName": "CreateInstance", - "fullName": "google.cloud.redis.v1beta1.CloudRedis.CreateInstance", + "shortName": "RemoveFulfillmentPlaces", + "fullName": "google.cloud.retail.v2.ProductService.RemoveFulfillmentPlaces", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/instances" + "path": "/v2/{product=projects/*/locations/*/catalogs/*/branches/*/products/**}:removeFulfillmentPlaces" } ] }, { - "shortName": "DeleteInstance", - "fullName": "google.cloud.redis.v1beta1.CloudRedis.DeleteInstance", + "shortName": "SetInventory", + "fullName": "google.cloud.retail.v2.ProductService.SetInventory", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" + "httpMethod": "POST", + "path": "/v2/{inventory.name=projects/*/locations/*/catalogs/*/branches/*/products/**}:setInventory" } ] }, { - "shortName": "ExportInstance", - "fullName": "google.cloud.redis.v1beta1.CloudRedis.ExportInstance", + "shortName": "UpdateProduct", + "fullName": "google.cloud.retail.v2.ProductService.UpdateProduct", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:export" + "httpMethod": "PATCH", + "path": "/v2/{product.name=projects/*/locations/*/catalogs/*/branches/*/products/**}" } ] - }, + } + ] + }, + { + "shortName": "SearchService", + "fullName": "google.cloud.retail.v2.SearchService", + "methods": [ { - "shortName": "FailoverInstance", - "fullName": "google.cloud.redis.v1beta1.CloudRedis.FailoverInstance", + "shortName": "Search", + "fullName": "google.cloud.retail.v2.SearchService.Search", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:failover" + "path": "/v2/{placement=projects/*/locations/*/catalogs/*/placements/*}:search" } ] - }, + } + ] + }, + { + "shortName": "UserEventService", + "fullName": "google.cloud.retail.v2.UserEventService", + "methods": [ { - "shortName": "GetInstance", - "fullName": "google.cloud.redis.v1beta1.CloudRedis.GetInstance", + "shortName": "CollectUserEvent", + "fullName": "google.cloud.retail.v2.UserEventService.CollectUserEvent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}" + "path": "/v2/{parent=projects/*/locations/*/catalogs/*}/userEvents:collect" } ] }, { - "shortName": "ImportInstance", - "fullName": "google.cloud.redis.v1beta1.CloudRedis.ImportInstance", + "shortName": "ImportUserEvents", + "fullName": "google.cloud.retail.v2.UserEventService.ImportUserEvents", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:import" + "path": "/v2/{parent=projects/*/locations/*/catalogs/*}/userEvents:import" } ] }, { - "shortName": "ListInstances", - "fullName": "google.cloud.redis.v1beta1.CloudRedis.ListInstances", + "shortName": "PurgeUserEvents", + "fullName": "google.cloud.retail.v2.UserEventService.PurgeUserEvents", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/instances" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/catalogs/*}/userEvents:purge" } ] }, { - "shortName": "UpdateInstance", - "fullName": "google.cloud.redis.v1beta1.CloudRedis.UpdateInstance", + "shortName": "RejoinUserEvents", + "fullName": "google.cloud.retail.v2.UserEventService.RejoinUserEvents", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{instance.name=projects/*/locations/*/instances/*}" + "httpMethod": "POST", + "path": "/v2/{parent=projects/*/locations/*/catalogs/*}/userEvents:rejoin" } ] }, { - "shortName": "UpgradeInstance", - "fullName": "google.cloud.redis.v1beta1.CloudRedis.UpgradeInstance", + "shortName": "WriteUserEvent", + "fullName": "google.cloud.retail.v2.UserEventService.WriteUserEvent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/instances/*}:upgrade" + "path": "/v2/{parent=projects/*/locations/*/catalogs/*}/userEvents:write" } ] } ] } - ] + ], + "configFile": "retail_v2.yaml" }, { - "id": "google.cloud.resourcemanager.v2", - "directory": "google/cloud/resourcemanager/v2", - "version": "v2", + "id": "google.cloud.retail.v2alpha", + "directory": "google/cloud/retail/v2alpha", + "version": "v2alpha", "majorVersion": "v2", - "hostName": "cloudresourcemanager.googleapis.com", - "title": "Cloud Resource Manager API", - "description": "Creates, reads, and updates metadata for Google Cloud Platform resource containers.", + "hostName": "retail.googleapis.com", + "title": "Retail API", + "description": "Cloud Retail service enables customers to build end-to-end personalized recommendation systems without requiring a high level of expertise in machine learning, recommendation system, or Google Cloud.", "importDirectories": [ "google/api", - "google/iam/v1", + "google/cloud/retail/v2alpha", "google/longrunning", - "google/protobuf" + "google/protobuf", + "google/rpc", + "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.resourcemanager.v2": 1 + "Google.Cloud.Retail.V2Alpha": 13 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/retail/v2alpha;retail": 13 } }, "java_multiple_files": { "valueCounts": { - "true": 1 + "true": 13 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/resourcemanager/v2;resourcemanager": 1 + "com.google.cloud.retail.v2alpha": 13 } }, - "csharp_namespace": { + "objc_class_prefix": { "valueCounts": { - "Google.Cloud.ResourceManager.V2": 1 + "RETAIL": 13 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\ResourceManager\\V2": 1 + "Google\\Cloud\\Retail\\V2alpha": 13 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Retail::V2alpha": 13 } } }, "services": [ { - "shortName": "Folders", - "fullName": "google.cloud.resourcemanager.v2.Folders", + "shortName": "CatalogService", + "fullName": "google.cloud.retail.v2alpha.CatalogService", "methods": [ { - "shortName": "CreateFolder", - "fullName": "google.cloud.resourcemanager.v2.Folders.CreateFolder", + "shortName": "GetDefaultBranch", + "fullName": "google.cloud.retail.v2alpha.CatalogService.GetDefaultBranch", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/folders" + "httpMethod": "GET", + "path": "/v2alpha/{catalog=projects/*/locations/*/catalogs/*}:getDefaultBranch" } ] }, { - "shortName": "DeleteFolder", - "fullName": "google.cloud.resourcemanager.v2.Folders.DeleteFolder", + "shortName": "ListCatalogs", + "fullName": "google.cloud.retail.v2alpha.CatalogService.ListCatalogs", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=folders/*}" + "httpMethod": "GET", + "path": "/v2alpha/{parent=projects/*/locations/*}/catalogs" } ] }, { - "shortName": "GetFolder", - "fullName": "google.cloud.resourcemanager.v2.Folders.GetFolder", + "shortName": "SetDefaultBranch", + "fullName": "google.cloud.retail.v2alpha.CatalogService.SetDefaultBranch", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2/{name=folders/*}" + "httpMethod": "POST", + "path": "/v2alpha/{catalog=projects/*/locations/*/catalogs/*}:setDefaultBranch" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.resourcemanager.v2.Folders.GetIamPolicy", + "shortName": "UpdateCatalog", + "fullName": "google.cloud.retail.v2alpha.CatalogService.UpdateCatalog", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{resource=folders/*}:getIamPolicy" + "httpMethod": "PATCH", + "path": "/v2alpha/{catalog.name=projects/*/locations/*/catalogs/*}" } ] - }, + } + ] + }, + { + "shortName": "CompletionService", + "fullName": "google.cloud.retail.v2alpha.CompletionService", + "methods": [ { - "shortName": "ListFolders", - "fullName": "google.cloud.resourcemanager.v2.Folders.ListFolders", + "shortName": "CompleteQuery", + "fullName": "google.cloud.retail.v2alpha.CompletionService.CompleteQuery", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/folders" + "path": "/v2alpha/{catalog=projects/*/locations/*/catalogs/*}:completeQuery" } ] }, { - "shortName": "MoveFolder", - "fullName": "google.cloud.resourcemanager.v2.Folders.MoveFolder", + "shortName": "ImportCompletionData", + "fullName": "google.cloud.retail.v2alpha.CompletionService.ImportCompletionData", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{name=folders/*}:move" + "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*}/completionData:import" } ] - }, + } + ] + }, + { + "shortName": "PredictionService", + "fullName": "google.cloud.retail.v2alpha.PredictionService", + "methods": [ { - "shortName": "SearchFolders", - "fullName": "google.cloud.resourcemanager.v2.Folders.SearchFolders", + "shortName": "Predict", + "fullName": "google.cloud.retail.v2alpha.PredictionService.Predict", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/folders:search" + "path": "/v2alpha/{placement=projects/*/locations/*/catalogs/*/placements/*}:predict" } ] - }, + } + ] + }, + { + "shortName": "ProductService", + "fullName": "google.cloud.retail.v2alpha.ProductService", + "methods": [ { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.resourcemanager.v2.Folders.SetIamPolicy", + "shortName": "AddFulfillmentPlaces", + "fullName": "google.cloud.retail.v2alpha.ProductService.AddFulfillmentPlaces", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{resource=folders/*}:setIamPolicy" + "path": "/v2alpha/{product=projects/*/locations/*/catalogs/*/branches/*/products/**}:addFulfillmentPlaces" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.resourcemanager.v2.Folders.TestIamPermissions", + "shortName": "AddLocalInventories", + "fullName": "google.cloud.retail.v2alpha.ProductService.AddLocalInventories", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{resource=folders/*}:testIamPermissions" + "path": "/v2alpha/{product=projects/*/locations/*/catalogs/*/branches/*/products/**}:addLocalInventories" } ] }, { - "shortName": "UndeleteFolder", - "fullName": "google.cloud.resourcemanager.v2.Folders.UndeleteFolder", + "shortName": "CreateProduct", + "fullName": "google.cloud.retail.v2alpha.ProductService.CreateProduct", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{name=folders/*}:undelete" + "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*/branches/*}/products" } ] }, { - "shortName": "UpdateFolder", - "fullName": "google.cloud.resourcemanager.v2.Folders.UpdateFolder", + "shortName": "DeleteProduct", + "fullName": "google.cloud.retail.v2alpha.ProductService.DeleteProduct", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{folder.name=folders/*}" + "httpMethod": "DELETE", + "path": "/v2alpha/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.resourcemanager.v3", - "directory": "google/cloud/resourcemanager/v3", - "version": "v3", - "majorVersion": "v3", - "hostName": "cloudresourcemanager.googleapis.com", - "title": "Cloud Resource Manager API", - "description": "Creates, reads, and updates metadata for Google Cloud Platform resource containers.", - "importDirectories": [ - "google/api", - "google/iam/v1", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.resourcemanager.v3": 6 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 6 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/resourcemanager/v3;resourcemanager": 6 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.ResourceManager.V3": 6 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\ResourceManager\\V3": 6 - } - } - }, - "services": [ - { - "shortName": "Folders", - "fullName": "google.cloud.resourcemanager.v3.Folders", - "methods": [ + }, { - "shortName": "CreateFolder", - "fullName": "google.cloud.resourcemanager.v3.Folders.CreateFolder", + "shortName": "GetProduct", + "fullName": "google.cloud.retail.v2alpha.ProductService.GetProduct", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/folders" + "httpMethod": "GET", + "path": "/v2alpha/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" } ] }, { - "shortName": "DeleteFolder", - "fullName": "google.cloud.resourcemanager.v3.Folders.DeleteFolder", + "shortName": "ImportProducts", + "fullName": "google.cloud.retail.v2alpha.ProductService.ImportProducts", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3/{name=folders/*}" + "httpMethod": "POST", + "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*/branches/*}/products:import" } ] }, { - "shortName": "GetFolder", - "fullName": "google.cloud.resourcemanager.v3.Folders.GetFolder", + "shortName": "ListProducts", + "fullName": "google.cloud.retail.v2alpha.ProductService.ListProducts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=folders/*}" + "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*/branches/*}/products" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.resourcemanager.v3.Folders.GetIamPolicy", + "shortName": "RemoveFulfillmentPlaces", + "fullName": "google.cloud.retail.v2alpha.ProductService.RemoveFulfillmentPlaces", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{resource=folders/*}:getIamPolicy" + "path": "/v2alpha/{product=projects/*/locations/*/catalogs/*/branches/*/products/**}:removeFulfillmentPlaces" } ] }, { - "shortName": "ListFolders", - "fullName": "google.cloud.resourcemanager.v3.Folders.ListFolders", + "shortName": "RemoveLocalInventories", + "fullName": "google.cloud.retail.v2alpha.ProductService.RemoveLocalInventories", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/folders" + "httpMethod": "POST", + "path": "/v2alpha/{product=projects/*/locations/*/catalogs/*/branches/*/products/**}:removeLocalInventories" } ] }, { - "shortName": "MoveFolder", - "fullName": "google.cloud.resourcemanager.v3.Folders.MoveFolder", + "shortName": "SetInventory", + "fullName": "google.cloud.retail.v2alpha.ProductService.SetInventory", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{name=folders/*}:move" + "path": "/v2alpha/{inventory.name=projects/*/locations/*/catalogs/*/branches/*/products/**}:setInventory" } ] }, { - "shortName": "SearchFolders", - "fullName": "google.cloud.resourcemanager.v3.Folders.SearchFolders", + "shortName": "UpdateProduct", + "fullName": "google.cloud.retail.v2alpha.ProductService.UpdateProduct", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/folders:search" + "httpMethod": "PATCH", + "path": "/v2alpha/{product.name=projects/*/locations/*/catalogs/*/branches/*/products/**}" } ] - }, + } + ] + }, + { + "shortName": "SearchService", + "fullName": "google.cloud.retail.v2alpha.SearchService", + "methods": [ { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.resourcemanager.v3.Folders.SetIamPolicy", + "shortName": "Search", + "fullName": "google.cloud.retail.v2alpha.SearchService.Search", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{resource=folders/*}:setIamPolicy" + "path": "/v2alpha/{placement=projects/*/locations/*/catalogs/*/placements/*}:search" } ] - }, + } + ] + }, + { + "shortName": "UserEventService", + "fullName": "google.cloud.retail.v2alpha.UserEventService", + "methods": [ { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.resourcemanager.v3.Folders.TestIamPermissions", + "shortName": "CollectUserEvent", + "fullName": "google.cloud.retail.v2alpha.UserEventService.CollectUserEvent", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{resource=folders/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*}/userEvents:collect" } ] }, { - "shortName": "UndeleteFolder", - "fullName": "google.cloud.resourcemanager.v3.Folders.UndeleteFolder", + "shortName": "ImportUserEvents", + "fullName": "google.cloud.retail.v2alpha.UserEventService.ImportUserEvents", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{name=folders/*}:undelete" + "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*}/userEvents:import" } ] }, { - "shortName": "UpdateFolder", - "fullName": "google.cloud.resourcemanager.v3.Folders.UpdateFolder", + "shortName": "PurgeUserEvents", + "fullName": "google.cloud.retail.v2alpha.UserEventService.PurgeUserEvents", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v3/{folder.name=folders/*}" + "httpMethod": "POST", + "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*}/userEvents:purge" } ] - } - ] - }, - { - "shortName": "Organizations", - "fullName": "google.cloud.resourcemanager.v3.Organizations", - "methods": [ + }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.resourcemanager.v3.Organizations.GetIamPolicy", + "shortName": "RejoinUserEvents", + "fullName": "google.cloud.retail.v2alpha.UserEventService.RejoinUserEvents", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{resource=organizations/*}:getIamPolicy" + "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*}/userEvents:rejoin" } ] }, { - "shortName": "GetOrganization", - "fullName": "google.cloud.resourcemanager.v3.Organizations.GetOrganization", + "shortName": "WriteUserEvent", + "fullName": "google.cloud.retail.v2alpha.UserEventService.WriteUserEvent", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*}/userEvents:write" + } + ] + } + ] + } + ], + "configFile": "retail_v2alpha.yaml" + }, + { + "id": "google.cloud.retail.v2beta", + "directory": "google/cloud/retail/v2beta", + "version": "v2beta", + "majorVersion": "v2", + "hostName": "retail.googleapis.com", + "title": "Retail API", + "description": "Cloud Retail service enables customers to build end-to-end personalized recommendation systems without requiring a high level of expertise in machine learning, recommendation system, or Google Cloud.", + "importDirectories": [ + "google/api", + "google/cloud/retail/v2beta", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/type" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Retail.V2Beta": 13 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/retail/v2beta;retail": 13 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 13 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.retail.v2beta": 13 + } + }, + "objc_class_prefix": { + "valueCounts": { + "RETAIL": 13 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Retail\\V2beta": 13 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Retail::V2beta": 13 + } + } + }, + "services": [ + { + "shortName": "CatalogService", + "fullName": "google.cloud.retail.v2beta.CatalogService", + "methods": [ + { + "shortName": "GetDefaultBranch", + "fullName": "google.cloud.retail.v2beta.CatalogService.GetDefaultBranch", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=organizations/*}" + "path": "/v2beta/{catalog=projects/*/locations/*/catalogs/*}:getDefaultBranch" } ] }, { - "shortName": "SearchOrganizations", - "fullName": "google.cloud.resourcemanager.v3.Organizations.SearchOrganizations", + "shortName": "ListCatalogs", + "fullName": "google.cloud.retail.v2beta.CatalogService.ListCatalogs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/organizations:search" + "path": "/v2beta/{parent=projects/*/locations/*}/catalogs" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.resourcemanager.v3.Organizations.SetIamPolicy", + "shortName": "SetDefaultBranch", + "fullName": "google.cloud.retail.v2beta.CatalogService.SetDefaultBranch", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{resource=organizations/*}:setIamPolicy" + "path": "/v2beta/{catalog=projects/*/locations/*/catalogs/*}:setDefaultBranch" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.resourcemanager.v3.Organizations.TestIamPermissions", + "shortName": "UpdateCatalog", + "fullName": "google.cloud.retail.v2beta.CatalogService.UpdateCatalog", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{resource=organizations/*}:testIamPermissions" + "httpMethod": "PATCH", + "path": "/v2beta/{catalog.name=projects/*/locations/*/catalogs/*}" } ] } ] }, { - "shortName": "Projects", - "fullName": "google.cloud.resourcemanager.v3.Projects", + "shortName": "CompletionService", + "fullName": "google.cloud.retail.v2beta.CompletionService", "methods": [ { - "shortName": "CreateProject", - "fullName": "google.cloud.resourcemanager.v3.Projects.CreateProject", + "shortName": "CompleteQuery", + "fullName": "google.cloud.retail.v2beta.CompletionService.CompleteQuery", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/projects" + "httpMethod": "GET", + "path": "/v2beta/{catalog=projects/*/locations/*/catalogs/*}:completeQuery" } ] }, { - "shortName": "DeleteProject", - "fullName": "google.cloud.resourcemanager.v3.Projects.DeleteProject", + "shortName": "ImportCompletionData", + "fullName": "google.cloud.retail.v2beta.CompletionService.ImportCompletionData", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v3/{name=projects/*}" + "httpMethod": "POST", + "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*}/completionData:import" } ] - }, + } + ] + }, + { + "shortName": "PredictionService", + "fullName": "google.cloud.retail.v2beta.PredictionService", + "methods": [ { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.resourcemanager.v3.Projects.GetIamPolicy", + "shortName": "Predict", + "fullName": "google.cloud.retail.v2beta.PredictionService.Predict", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{resource=projects/*}:getIamPolicy" + "path": "/v2beta/{placement=projects/*/locations/*/catalogs/*/placements/*}:predict" } ] - }, + } + ] + }, + { + "shortName": "ProductService", + "fullName": "google.cloud.retail.v2beta.ProductService", + "methods": [ { - "shortName": "GetProject", - "fullName": "google.cloud.resourcemanager.v3.Projects.GetProject", + "shortName": "AddFulfillmentPlaces", + "fullName": "google.cloud.retail.v2beta.ProductService.AddFulfillmentPlaces", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/{name=projects/*}" + "httpMethod": "POST", + "path": "/v2beta/{product=projects/*/locations/*/catalogs/*/branches/*/products/**}:addFulfillmentPlaces" } ] }, { - "shortName": "ListProjects", - "fullName": "google.cloud.resourcemanager.v3.Projects.ListProjects", + "shortName": "CreateProduct", + "fullName": "google.cloud.retail.v2beta.ProductService.CreateProduct", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/projects" + "httpMethod": "POST", + "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*/branches/*}/products" } ] }, { - "shortName": "MoveProject", - "fullName": "google.cloud.resourcemanager.v3.Projects.MoveProject", + "shortName": "DeleteProduct", + "fullName": "google.cloud.retail.v2beta.ProductService.DeleteProduct", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{name=projects/*}:move" + "httpMethod": "DELETE", + "path": "/v2beta/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" } ] }, { - "shortName": "SearchProjects", - "fullName": "google.cloud.resourcemanager.v3.Projects.SearchProjects", + "shortName": "GetProduct", + "fullName": "google.cloud.retail.v2beta.ProductService.GetProduct", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/projects:search" + "path": "/v2beta/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.resourcemanager.v3.Projects.SetIamPolicy", + "shortName": "ImportProducts", + "fullName": "google.cloud.retail.v2beta.ProductService.ImportProducts", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{resource=projects/*}:setIamPolicy" + "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*/branches/*}/products:import" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.resourcemanager.v3.Projects.TestIamPermissions", + "shortName": "ListProducts", + "fullName": "google.cloud.retail.v2beta.ProductService.ListProducts", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{resource=projects/*}:testIamPermissions" + "httpMethod": "GET", + "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*/branches/*}/products" } ] }, { - "shortName": "UndeleteProject", - "fullName": "google.cloud.resourcemanager.v3.Projects.UndeleteProject", + "shortName": "RemoveFulfillmentPlaces", + "fullName": "google.cloud.retail.v2beta.ProductService.RemoveFulfillmentPlaces", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{name=projects/*}:undelete" + "path": "/v2beta/{product=projects/*/locations/*/catalogs/*/branches/*/products/**}:removeFulfillmentPlaces" } ] }, { - "shortName": "UpdateProject", - "fullName": "google.cloud.resourcemanager.v3.Projects.UpdateProject", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v3/{project.name=projects/*}" - } - ] - } - ] - }, - { - "shortName": "TagBindings", - "fullName": "google.cloud.resourcemanager.v3.TagBindings", - "methods": [ - { - "shortName": "CreateTagBinding", - "fullName": "google.cloud.resourcemanager.v3.TagBindings.CreateTagBinding", + "shortName": "SetInventory", + "fullName": "google.cloud.retail.v2beta.ProductService.SetInventory", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/tagBindings" - } - ] - }, - { - "shortName": "DeleteTagBinding", - "fullName": "google.cloud.resourcemanager.v3.TagBindings.DeleteTagBinding", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v3/{name=tagBindings/**}" + "path": "/v2beta/{inventory.name=projects/*/locations/*/catalogs/*/branches/*/products/**}:setInventory" } ] }, { - "shortName": "ListTagBindings", - "fullName": "google.cloud.resourcemanager.v3.TagBindings.ListTagBindings", + "shortName": "UpdateProduct", + "fullName": "google.cloud.retail.v2beta.ProductService.UpdateProduct", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/tagBindings" + "httpMethod": "PATCH", + "path": "/v2beta/{product.name=projects/*/locations/*/catalogs/*/branches/*/products/**}" } ] } ] }, { - "shortName": "TagKeys", - "fullName": "google.cloud.resourcemanager.v3.TagKeys", + "shortName": "SearchService", + "fullName": "google.cloud.retail.v2beta.SearchService", "methods": [ { - "shortName": "CreateTagKey", - "fullName": "google.cloud.resourcemanager.v3.TagKeys.CreateTagKey", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v3/tagKeys" - } - ] - }, - { - "shortName": "DeleteTagKey", - "fullName": "google.cloud.resourcemanager.v3.TagKeys.DeleteTagKey", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v3/{name=tagKeys/*}" - } - ] - }, - { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.resourcemanager.v3.TagKeys.GetIamPolicy", + "shortName": "Search", + "fullName": "google.cloud.retail.v2beta.SearchService.Search", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{resource=tagKeys/*}:getIamPolicy" + "path": "/v2beta/{placement=projects/*/locations/*/catalogs/*/placements/*}:search" } ] - }, + } + ] + }, + { + "shortName": "UserEventService", + "fullName": "google.cloud.retail.v2beta.UserEventService", + "methods": [ { - "shortName": "GetTagKey", - "fullName": "google.cloud.resourcemanager.v3.TagKeys.GetTagKey", + "shortName": "CollectUserEvent", + "fullName": "google.cloud.retail.v2beta.UserEventService.CollectUserEvent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=tagKeys/*}" + "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*}/userEvents:collect" } ] }, { - "shortName": "ListTagKeys", - "fullName": "google.cloud.resourcemanager.v3.TagKeys.ListTagKeys", + "shortName": "ImportUserEvents", + "fullName": "google.cloud.retail.v2beta.UserEventService.ImportUserEvents", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/tagKeys" + "httpMethod": "POST", + "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*}/userEvents:import" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.resourcemanager.v3.TagKeys.SetIamPolicy", + "shortName": "PurgeUserEvents", + "fullName": "google.cloud.retail.v2beta.UserEventService.PurgeUserEvents", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{resource=tagKeys/*}:setIamPolicy" + "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*}/userEvents:purge" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.resourcemanager.v3.TagKeys.TestIamPermissions", + "shortName": "RejoinUserEvents", + "fullName": "google.cloud.retail.v2beta.UserEventService.RejoinUserEvents", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{resource=tagKeys/*}:testIamPermissions" + "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*}/userEvents:rejoin" } ] }, { - "shortName": "UpdateTagKey", - "fullName": "google.cloud.resourcemanager.v3.TagKeys.UpdateTagKey", + "shortName": "WriteUserEvent", + "fullName": "google.cloud.retail.v2beta.UserEventService.WriteUserEvent", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v3/{tag_key.name=tagKeys/*}" + "httpMethod": "POST", + "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*}/userEvents:write" } ] } ] + } + ], + "configFile": "retail_v2beta.yaml" + }, + { + "id": "google.cloud.scheduler.v1", + "directory": "google/cloud/scheduler/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "cloudscheduler.googleapis.com", + "title": "Cloud Scheduler API", + "description": "Creates and manages jobs run on a regular recurring schedule.", + "importDirectories": [ + "google/api", + "google/cloud/scheduler/v1", + "google/protobuf", + "google/rpc" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/scheduler/v1;scheduler": 3 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 3 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.scheduler.v1": 3 + } }, + "objc_class_prefix": { + "valueCounts": { + "": 2, + "SCHEDULER": 1 + } + } + }, + "services": [ { - "shortName": "TagValues", - "fullName": "google.cloud.resourcemanager.v3.TagValues", + "shortName": "CloudScheduler", + "fullName": "google.cloud.scheduler.v1.CloudScheduler", "methods": [ { - "shortName": "CreateTagValue", - "fullName": "google.cloud.resourcemanager.v3.TagValues.CreateTagValue", + "shortName": "CreateJob", + "fullName": "google.cloud.scheduler.v1.CloudScheduler.CreateJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/tagValues" + "path": "/v1/{parent=projects/*/locations/*}/jobs" } ] }, { - "shortName": "DeleteTagValue", - "fullName": "google.cloud.resourcemanager.v3.TagValues.DeleteTagValue", + "shortName": "DeleteJob", + "fullName": "google.cloud.scheduler.v1.CloudScheduler.DeleteJob", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3/{name=tagValues/*}" + "path": "/v1/{name=projects/*/locations/*/jobs/*}" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.resourcemanager.v3.TagValues.GetIamPolicy", + "shortName": "GetJob", + "fullName": "google.cloud.scheduler.v1.CloudScheduler.GetJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{resource=tagValues/*}:getIamPolicy" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/jobs/*}" } ] }, { - "shortName": "GetTagValue", - "fullName": "google.cloud.resourcemanager.v3.TagValues.GetTagValue", + "shortName": "ListJobs", + "fullName": "google.cloud.scheduler.v1.CloudScheduler.ListJobs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=tagValues/*}" + "path": "/v1/{parent=projects/*/locations/*}/jobs" } ] }, { - "shortName": "ListTagValues", - "fullName": "google.cloud.resourcemanager.v3.TagValues.ListTagValues", + "shortName": "PauseJob", + "fullName": "google.cloud.scheduler.v1.CloudScheduler.PauseJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v3/tagValues" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/jobs/*}:pause" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.resourcemanager.v3.TagValues.SetIamPolicy", + "shortName": "ResumeJob", + "fullName": "google.cloud.scheduler.v1.CloudScheduler.ResumeJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{resource=tagValues/*}:setIamPolicy" + "path": "/v1/{name=projects/*/locations/*/jobs/*}:resume" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.resourcemanager.v3.TagValues.TestIamPermissions", + "shortName": "RunJob", + "fullName": "google.cloud.scheduler.v1.CloudScheduler.RunJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{resource=tagValues/*}:testIamPermissions" + "path": "/v1/{name=projects/*/locations/*/jobs/*}:run" } ] }, { - "shortName": "UpdateTagValue", - "fullName": "google.cloud.resourcemanager.v3.TagValues.UpdateTagValue", + "shortName": "UpdateJob", + "fullName": "google.cloud.scheduler.v1.CloudScheduler.UpdateJob", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v3/{tag_value.name=tagValues/*}" + "path": "/v1/{job.name=projects/*/locations/*/jobs/*}" } ] } ] } - ] + ], + "configFile": "cloudscheduler_v1.yaml" }, { - "id": "google.cloud.resourcesettings.v1", - "directory": "google/cloud/resourcesettings/v1", - "version": "v1", + "id": "google.cloud.scheduler.v1beta1", + "directory": "google/cloud/scheduler/v1beta1", + "version": "v1beta1", "majorVersion": "v1", - "hostName": "resourcesettings.googleapis.com", - "title": "Resource Settings API", - "description": "The Resource Settings API allows users to control and modify the behavior of their GCP resources (e.g., VM, firewall, Project, etc.) across the Cloud Resource Hierarchy.", + "hostName": "cloudscheduler.googleapis.com", + "title": "Cloud Scheduler API", + "description": "Creates and manages jobs run on a regular recurring schedule.", "importDirectories": [ - "google/api" + "google/api", + "google/cloud/scheduler/v1beta1", + "google/protobuf", + "google/rpc" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.resourcesettings.v1": 1 + "google.golang.org/genproto/googleapis/cloud/scheduler/v1beta1;scheduler": 3 } }, "java_multiple_files": { "valueCounts": { - "true": 1 + "true": 3 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/resourcesettings/v1;resourcesettings": 1 + "com.google.cloud.scheduler.v1beta1": 3 } }, - "cc_enable_arenas": { + "objc_class_prefix": { "valueCounts": { - "true": 1 + "": 2, + "SCHEDULER": 1 } } }, "services": [ { - "shortName": "ResourceSettingsService", - "fullName": "google.cloud.resourcesettings.v1.ResourceSettingsService", + "shortName": "CloudScheduler", + "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler", "methods": [ { - "shortName": "GetSetting", - "fullName": "google.cloud.resourcesettings.v1.ResourceSettingsService.GetSetting", + "shortName": "CreateJob", + "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.CreateJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=organizations/*/settings/*}" - }, - { - "httpMethod": "GET", - "path": "/v1/{name=folders/*/settings/*}" - }, + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*}/jobs" + } + ] + }, + { + "shortName": "DeleteJob", + "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.DeleteJob", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/settings/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/jobs/*}" } ] }, { - "shortName": "ListSettings", - "fullName": "google.cloud.resourcesettings.v1.ResourceSettingsService.ListSettings", + "shortName": "GetJob", + "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.GetJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=organizations/*}/settings" - }, + "path": "/v1beta1/{name=projects/*/locations/*/jobs/*}" + } + ] + }, + { + "shortName": "ListJobs", + "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.ListJobs", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=folders/*}/settings" - }, + "path": "/v1beta1/{parent=projects/*/locations/*}/jobs" + } + ] + }, + { + "shortName": "PauseJob", + "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.PauseJob", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/settings" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/jobs/*}:pause" } ] }, { - "shortName": "UpdateSetting", - "fullName": "google.cloud.resourcesettings.v1.ResourceSettingsService.UpdateSetting", + "shortName": "ResumeJob", + "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.ResumeJob", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{setting.name=organizations/*/settings/*}" - }, + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/jobs/*}:resume" + } + ] + }, + { + "shortName": "RunJob", + "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.RunJob", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{setting.name=folders/*/settings/*}" - }, + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/jobs/*}:run" + } + ] + }, + { + "shortName": "UpdateJob", + "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.UpdateJob", + "mode": "UNARY", + "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{setting.name=projects/*/settings/*}" + "path": "/v1beta1/{job.name=projects/*/locations/*/jobs/*}" } ] } ] } - ] + ], + "configFile": "cloudscheduler_v1beta1.yaml" }, { - "id": "google.cloud.retail.v2", - "directory": "google/cloud/retail/v2", - "version": "v2", - "majorVersion": "v2", - "hostName": "retail.googleapis.com", - "title": "Retail API", - "description": "Cloud Retail service enables customers to build end-to-end personalized recommendation systems without requiring a high level of expertise in machine learning, recommendation system, or Google Cloud.", + "id": "google.cloud.secretmanager.v1", + "directory": "google/cloud/secretmanager/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "secretmanager.googleapis.com", + "title": "Secret Manager API", + "description": "Stores sensitive data such as API keys, passwords, and certificates. Provides convenience while improving security.", "importDirectories": [ "google/api", - "google/cloud/retail/v2", - "google/longrunning", - "google/protobuf", - "google/rpc" + "google/cloud/secretmanager/v1", + "google/iam/v1", + "google/protobuf" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.retail.v2": 10 + "true": 2 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 10 + "Google.Cloud.SecretManager.V1": 2 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/retail/v2;retail": 10 + "google.golang.org/genproto/googleapis/cloud/secretmanager/v1;secretmanager": 2 } }, - "objc_class_prefix": { + "java_multiple_files": { "valueCounts": { - "RETAIL": 10 + "true": 2 } }, - "csharp_namespace": { + "java_package": { + "valueCounts": { + "com.google.cloud.secretmanager.v1": 2 + } + }, + "objc_class_prefix": { "valueCounts": { - "Google.Cloud.Retail.V2": 10 + "GSM": 2 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Retail\\V2": 10 + "Google\\Cloud\\SecretManager\\V1": 2 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::Retail::V2": 10 + "Google::Cloud::SecretManager::V1": 2 } } }, "services": [ { - "shortName": "CatalogService", - "fullName": "google.cloud.retail.v2.CatalogService", + "shortName": "SecretManagerService", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService", "methods": [ { - "shortName": "ListCatalogs", - "fullName": "google.cloud.retail.v2.CatalogService.ListCatalogs", + "shortName": "AccessSecretVersion", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.AccessSecretVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*}/catalogs" + "path": "/v1/{name=projects/*/secrets/*/versions/*}:access" } ] }, { - "shortName": "UpdateCatalog", - "fullName": "google.cloud.retail.v2.CatalogService.UpdateCatalog", + "shortName": "AddSecretVersion", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.AddSecretVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{catalog.name=projects/*/locations/*/catalogs/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/secrets/*}:addVersion" } ] - } - ] - }, - { - "shortName": "PredictionService", - "fullName": "google.cloud.retail.v2.PredictionService", - "methods": [ + }, + { + "shortName": "CreateSecret", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.CreateSecret", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*}/secrets" + } + ] + }, + { + "shortName": "DeleteSecret", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.DeleteSecret", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/secrets/*}" + } + ] + }, { - "shortName": "Predict", - "fullName": "google.cloud.retail.v2.PredictionService.Predict", + "shortName": "DestroySecretVersion", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.DestroySecretVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{placement=projects/*/locations/*/catalogs/*/placements/*}:predict" + "path": "/v1/{name=projects/*/secrets/*/versions/*}:destroy" } ] - } - ] - }, - { - "shortName": "ProductService", - "fullName": "google.cloud.retail.v2.ProductService", - "methods": [ + }, { - "shortName": "CreateProduct", - "fullName": "google.cloud.retail.v2.ProductService.CreateProduct", + "shortName": "DisableSecretVersion", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.DisableSecretVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/catalogs/*/branches/*}/products" + "path": "/v1/{name=projects/*/secrets/*/versions/*}:disable" } ] }, { - "shortName": "DeleteProduct", - "fullName": "google.cloud.retail.v2.ProductService.DeleteProduct", + "shortName": "EnableSecretVersion", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.EnableSecretVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/secrets/*/versions/*}:enable" } ] }, { - "shortName": "GetProduct", - "fullName": "google.cloud.retail.v2.ProductService.GetProduct", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" + "path": "/v1/{resource=projects/*/secrets/*}:getIamPolicy" } ] }, { - "shortName": "ImportProducts", - "fullName": "google.cloud.retail.v2.ProductService.ImportProducts", + "shortName": "GetSecret", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.GetSecret", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/catalogs/*/branches/*}/products:import" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/secrets/*}" } ] }, { - "shortName": "UpdateProduct", - "fullName": "google.cloud.retail.v2.ProductService.UpdateProduct", + "shortName": "GetSecretVersion", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.GetSecretVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2/{product.name=projects/*/locations/*/catalogs/*/branches/*/products/**}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/secrets/*/versions/*}" } ] - } - ] - }, - { - "shortName": "UserEventService", - "fullName": "google.cloud.retail.v2.UserEventService", - "methods": [ + }, { - "shortName": "CollectUserEvent", - "fullName": "google.cloud.retail.v2.UserEventService.CollectUserEvent", + "shortName": "ListSecretVersions", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.ListSecretVersions", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2/{parent=projects/*/locations/*/catalogs/*}/userEvents:collect" + "path": "/v1/{parent=projects/*/secrets/*}/versions" } ] }, { - "shortName": "ImportUserEvents", - "fullName": "google.cloud.retail.v2.UserEventService.ImportUserEvents", + "shortName": "ListSecrets", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.ListSecrets", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/catalogs/*}/userEvents:import" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/secrets" } ] }, { - "shortName": "PurgeUserEvents", - "fullName": "google.cloud.retail.v2.UserEventService.PurgeUserEvents", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/catalogs/*}/userEvents:purge" + "path": "/v1/{resource=projects/*/secrets/*}:setIamPolicy" } ] }, { - "shortName": "RejoinUserEvents", - "fullName": "google.cloud.retail.v2.UserEventService.RejoinUserEvents", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.TestIamPermissions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/catalogs/*}/userEvents:rejoin" + "path": "/v1/{resource=projects/*/secrets/*}:testIamPermissions" } ] }, { - "shortName": "WriteUserEvent", - "fullName": "google.cloud.retail.v2.UserEventService.WriteUserEvent", + "shortName": "UpdateSecret", + "fullName": "google.cloud.secretmanager.v1.SecretManagerService.UpdateSecret", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2/{parent=projects/*/locations/*/catalogs/*}/userEvents:write" + "httpMethod": "PATCH", + "path": "/v1/{secret.name=projects/*/secrets/*}" } ] } ] } - ] + ], + "configFile": "secretmanager_v1.yaml" }, { - "id": "google.cloud.retail.v2alpha", - "directory": "google/cloud/retail/v2alpha", - "version": "v2alpha", - "majorVersion": "v2", - "hostName": "retail.googleapis.com", - "title": "Cloud Retail", - "description": "Cloud Retail service enables customers to build end-to-end personalized recommendation systems without requiring a high level of expertise in machine learning, recommendation system, or Google Cloud.", + "id": "google.cloud.secrets.v1beta1", + "directory": "google/cloud/secrets/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "secretmanager.googleapis.com", + "title": "Secret Manager API", + "description": "Stores sensitive data such as API keys, passwords, and certificates. Provides convenience while improving security.", "importDirectories": [ "google/api", - "google/cloud/retail/v2alpha", - "google/longrunning", - "google/protobuf", - "google/rpc" + "google/cloud/secrets/v1beta1", + "google/iam/v1", + "google/protobuf" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.retail.v2alpha": 10 + "true": 2 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 10 + "Google.Cloud.SecretManager.V1Beta1": 2 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/retail/v2alpha;retail": 10 + "google.golang.org/genproto/googleapis/cloud/secretmanager/v1beta1;secretmanager": 2 } }, - "objc_class_prefix": { + "java_multiple_files": { "valueCounts": { - "RETAIL": 10 + "true": 2 } }, - "csharp_namespace": { + "java_package": { + "valueCounts": { + "com.google.cloud.secretmanager.v1beta1": 2 + } + }, + "objc_class_prefix": { "valueCounts": { - "Google.Cloud.Retail.V2Alpha": 10 + "GSM": 2 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Retail\\V2alpha": 10 + "Google\\Cloud\\SecretManager\\V1beta1": 2 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::Retail::V2alpha": 10 + "Google::Cloud::SecretManager::V1beta1": 2 } } }, "services": [ { - "shortName": "CatalogService", - "fullName": "google.cloud.retail.v2alpha.CatalogService", + "shortName": "SecretManagerService", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService", "methods": [ { - "shortName": "ListCatalogs", - "fullName": "google.cloud.retail.v2alpha.CatalogService.ListCatalogs", + "shortName": "AccessSecretVersion", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.AccessSecretVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2alpha/{parent=projects/*/locations/*}/catalogs" + "path": "/v1beta1/{name=projects/*/secrets/*/versions/*}:access" } ] }, { - "shortName": "UpdateCatalog", - "fullName": "google.cloud.retail.v2alpha.CatalogService.UpdateCatalog", + "shortName": "AddSecretVersion", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.AddSecretVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2alpha/{catalog.name=projects/*/locations/*/catalogs/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/secrets/*}:addVersion" } ] - } - ] - }, - { - "shortName": "PredictionService", - "fullName": "google.cloud.retail.v2alpha.PredictionService", - "methods": [ + }, { - "shortName": "Predict", - "fullName": "google.cloud.retail.v2alpha.PredictionService.Predict", + "shortName": "CreateSecret", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.CreateSecret", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2alpha/{placement=projects/*/locations/*/catalogs/*/placements/*}:predict" + "path": "/v1beta1/{parent=projects/*}/secrets" } ] - } - ] - }, - { - "shortName": "ProductService", - "fullName": "google.cloud.retail.v2alpha.ProductService", - "methods": [ + }, { - "shortName": "CreateProduct", - "fullName": "google.cloud.retail.v2alpha.ProductService.CreateProduct", + "shortName": "DeleteSecret", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.DeleteSecret", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/secrets/*}" + } + ] + }, + { + "shortName": "DestroySecretVersion", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.DestroySecretVersion", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*/branches/*}/products" + "path": "/v1beta1/{name=projects/*/secrets/*/versions/*}:destroy" } ] }, { - "shortName": "DeleteProduct", - "fullName": "google.cloud.retail.v2alpha.ProductService.DeleteProduct", + "shortName": "DisableSecretVersion", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.DisableSecretVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2alpha/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/secrets/*/versions/*}:disable" } ] }, { - "shortName": "GetProduct", - "fullName": "google.cloud.retail.v2alpha.ProductService.GetProduct", + "shortName": "EnableSecretVersion", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.EnableSecretVersion", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/secrets/*/versions/*}:enable" + } + ] + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2alpha/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" + "path": "/v1beta1/{resource=projects/*/secrets/*}:getIamPolicy" } ] }, { - "shortName": "ImportProducts", - "fullName": "google.cloud.retail.v2alpha.ProductService.ImportProducts", + "shortName": "GetSecret", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.GetSecret", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*/branches/*}/products:import" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/secrets/*}" } ] }, { - "shortName": "UpdateProduct", - "fullName": "google.cloud.retail.v2alpha.ProductService.UpdateProduct", + "shortName": "GetSecretVersion", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.GetSecretVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2alpha/{product.name=projects/*/locations/*/catalogs/*/branches/*/products/**}" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/secrets/*/versions/*}" } ] - } - ] - }, - { - "shortName": "UserEventService", - "fullName": "google.cloud.retail.v2alpha.UserEventService", - "methods": [ + }, { - "shortName": "CollectUserEvent", - "fullName": "google.cloud.retail.v2alpha.UserEventService.CollectUserEvent", + "shortName": "ListSecretVersions", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.ListSecretVersions", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*}/userEvents:collect" + "path": "/v1beta1/{parent=projects/*/secrets/*}/versions" } ] }, { - "shortName": "ImportUserEvents", - "fullName": "google.cloud.retail.v2alpha.UserEventService.ImportUserEvents", + "shortName": "ListSecrets", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.ListSecrets", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*}/userEvents:import" + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*}/secrets" } ] }, { - "shortName": "PurgeUserEvents", - "fullName": "google.cloud.retail.v2alpha.UserEventService.PurgeUserEvents", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*}/userEvents:purge" + "path": "/v1beta1/{resource=projects/*/secrets/*}:setIamPolicy" } ] }, { - "shortName": "RejoinUserEvents", - "fullName": "google.cloud.retail.v2alpha.UserEventService.RejoinUserEvents", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.TestIamPermissions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*}/userEvents:rejoin" + "path": "/v1beta1/{resource=projects/*/secrets/*}:testIamPermissions" } ] }, { - "shortName": "WriteUserEvent", - "fullName": "google.cloud.retail.v2alpha.UserEventService.WriteUserEvent", + "shortName": "UpdateSecret", + "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.UpdateSecret", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2alpha/{parent=projects/*/locations/*/catalogs/*}/userEvents:write" + "httpMethod": "PATCH", + "path": "/v1beta1/{secret.name=projects/*/secrets/*}" } ] } ] } - ] + ], + "configFile": "secretmanager_v1beta1.yaml" }, { - "id": "google.cloud.retail.v2beta", - "directory": "google/cloud/retail/v2beta", - "version": "v2beta", - "majorVersion": "v2", - "hostName": "retail.googleapis.com", - "title": "Cloud Retail", - "description": "Cloud Retail service enables customers to build end-to-end personalized recommendation systems without requiring a high level of expertise in machine learning, recommendation system, or Google Cloud.", + "id": "google.cloud.security.privateca.v1", + "directory": "google/cloud/security/privateca/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "privateca.googleapis.com", + "title": "Certificate Authority API", + "description": "The Certificate Authority Service API is a highly-available, scalable service that enables you to simplify and automate the management of private certificate authorities (CAs) while staying in control of your private keys.", "importDirectories": [ "google/api", - "google/cloud/retail/v2beta", + "google/cloud/security/privateca/v1", "google/longrunning", "google/protobuf", - "google/rpc" + "google/type" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.retail.v2beta": 10 + "true": 2 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 10 + "Google.Cloud.Security.PrivateCA.V1": 2 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/retail/v2beta;retail": 10 + "google.golang.org/genproto/googleapis/cloud/security/privateca/v1;privateca": 2 } }, - "objc_class_prefix": { + "java_multiple_files": { "valueCounts": { - "RETAIL": 10 + "true": 2 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Retail.V2Beta": 10 + "com.google.cloud.security.privateca.v1": 2 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Retail\\V2beta": 10 + "Google\\Cloud\\Security\\PrivateCA\\V1": 2 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::Retail::V2beta": 10 + "Google::Cloud::Security::PrivateCA::V1": 2 } } }, "services": [ { - "shortName": "CatalogService", - "fullName": "google.cloud.retail.v2beta.CatalogService", + "shortName": "CertificateAuthorityService", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService", "methods": [ { - "shortName": "ListCatalogs", - "fullName": "google.cloud.retail.v2beta.CatalogService.ListCatalogs", + "shortName": "ActivateCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ActivateCertificateAuthority", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta/{parent=projects/*/locations/*}/catalogs" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}:activate" } ] }, { - "shortName": "UpdateCatalog", - "fullName": "google.cloud.retail.v2beta.CatalogService.UpdateCatalog", + "shortName": "CreateCaPool", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.CreateCaPool", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2beta/{catalog.name=projects/*/locations/*/catalogs/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/caPools" } ] - } - ] - }, - { - "shortName": "PredictionService", - "fullName": "google.cloud.retail.v2beta.PredictionService", - "methods": [ + }, { - "shortName": "Predict", - "fullName": "google.cloud.retail.v2beta.PredictionService.Predict", + "shortName": "CreateCertificate", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.CreateCertificate", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta/{placement=projects/*/locations/*/catalogs/*/placements/*}:predict" + "path": "/v1/{parent=projects/*/locations/*/caPools/*}/certificates" } ] - } - ] - }, - { - "shortName": "ProductService", - "fullName": "google.cloud.retail.v2beta.ProductService", - "methods": [ + }, { - "shortName": "CreateProduct", - "fullName": "google.cloud.retail.v2beta.ProductService.CreateProduct", + "shortName": "CreateCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.CreateCertificateAuthority", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*/branches/*}/products" + "path": "/v1/{parent=projects/*/locations/*/caPools/*}/certificateAuthorities" } ] }, { - "shortName": "DeleteProduct", - "fullName": "google.cloud.retail.v2beta.ProductService.DeleteProduct", + "shortName": "CreateCertificateTemplate", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.CreateCertificateTemplate", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v2beta/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/certificateTemplates" } ] }, { - "shortName": "GetProduct", - "fullName": "google.cloud.retail.v2beta.ProductService.GetProduct", + "shortName": "DeleteCaPool", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.DeleteCaPool", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta/{name=projects/*/locations/*/catalogs/*/branches/*/products/**}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/caPools/*}" } ] }, { - "shortName": "ImportProducts", - "fullName": "google.cloud.retail.v2beta.ProductService.ImportProducts", + "shortName": "DeleteCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.DeleteCertificateAuthority", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*/branches/*}/products:import" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}" } ] }, { - "shortName": "UpdateProduct", - "fullName": "google.cloud.retail.v2beta.ProductService.UpdateProduct", + "shortName": "DeleteCertificateTemplate", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.DeleteCertificateTemplate", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v2beta/{product.name=projects/*/locations/*/catalogs/*/branches/*/products/**}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/certificateTemplates/*}" } ] - } - ] - }, - { - "shortName": "UserEventService", - "fullName": "google.cloud.retail.v2beta.UserEventService", - "methods": [ + }, { - "shortName": "CollectUserEvent", - "fullName": "google.cloud.retail.v2beta.UserEventService.CollectUserEvent", + "shortName": "DisableCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.DisableCertificateAuthority", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*}/userEvents:collect" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}:disable" } ] }, { - "shortName": "ImportUserEvents", - "fullName": "google.cloud.retail.v2beta.UserEventService.ImportUserEvents", + "shortName": "EnableCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.EnableCertificateAuthority", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*}/userEvents:import" + "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}:enable" } ] }, { - "shortName": "PurgeUserEvents", - "fullName": "google.cloud.retail.v2beta.UserEventService.PurgeUserEvents", + "shortName": "FetchCaCerts", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.FetchCaCerts", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*}/userEvents:purge" + "path": "/v1/{ca_pool=projects/*/locations/*/caPools/*}:fetchCaCerts" } ] }, { - "shortName": "RejoinUserEvents", - "fullName": "google.cloud.retail.v2beta.UserEventService.RejoinUserEvents", + "shortName": "FetchCertificateAuthorityCsr", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.FetchCertificateAuthorityCsr", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*}/userEvents:rejoin" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}:fetch" } ] }, { - "shortName": "WriteUserEvent", - "fullName": "google.cloud.retail.v2beta.UserEventService.WriteUserEvent", + "shortName": "GetCaPool", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.GetCaPool", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta/{parent=projects/*/locations/*/catalogs/*}/userEvents:write" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/caPools/*}" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.scheduler.v1", - "directory": "google/cloud/scheduler/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "cloudscheduler.googleapis.com", - "title": "Cloud Scheduler API", - "description": "Creates and manages jobs run on a regular recurring schedule.", - "importDirectories": [ - "google/api", - "google/cloud/scheduler/v1", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.scheduler.v1": 3 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 3 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/scheduler/v1;scheduler": 3 - } - }, - "objc_class_prefix": { - "valueCounts": { - "SCHEDULER": 1, - "": 2 - } - } - }, - "services": [ - { - "shortName": "CloudScheduler", - "fullName": "google.cloud.scheduler.v1.CloudScheduler", - "methods": [ + }, { - "shortName": "CreateJob", - "fullName": "google.cloud.scheduler.v1.CloudScheduler.CreateJob", + "shortName": "GetCertificate", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.GetCertificate", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/jobs" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/caPools/*/certificates/*}" } ] }, { - "shortName": "DeleteJob", - "fullName": "google.cloud.scheduler.v1.CloudScheduler.DeleteJob", + "shortName": "GetCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.GetCertificateAuthority", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/jobs/*}" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}" } ] }, { - "shortName": "GetJob", - "fullName": "google.cloud.scheduler.v1.CloudScheduler.GetJob", + "shortName": "GetCertificateRevocationList", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.GetCertificateRevocationList", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/jobs/*}" + "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*/certificateRevocationLists/*}" } ] }, { - "shortName": "ListJobs", - "fullName": "google.cloud.scheduler.v1.CloudScheduler.ListJobs", + "shortName": "GetCertificateTemplate", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.GetCertificateTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/jobs" + "path": "/v1/{name=projects/*/locations/*/certificateTemplates/*}" } ] }, { - "shortName": "PauseJob", - "fullName": "google.cloud.scheduler.v1.CloudScheduler.PauseJob", + "shortName": "ListCaPools", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ListCaPools", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/jobs/*}:pause" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/caPools" } ] }, { - "shortName": "ResumeJob", - "fullName": "google.cloud.scheduler.v1.CloudScheduler.ResumeJob", + "shortName": "ListCertificateAuthorities", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ListCertificateAuthorities", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/jobs/*}:resume" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/caPools/*}/certificateAuthorities" } ] }, { - "shortName": "RunJob", - "fullName": "google.cloud.scheduler.v1.CloudScheduler.RunJob", + "shortName": "ListCertificateRevocationLists", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ListCertificateRevocationLists", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/jobs/*}:run" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/caPools/*/certificateAuthorities/*}/certificateRevocationLists" } ] }, { - "shortName": "UpdateJob", - "fullName": "google.cloud.scheduler.v1.CloudScheduler.UpdateJob", + "shortName": "ListCertificateTemplates", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ListCertificateTemplates", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{job.name=projects/*/locations/*/jobs/*}" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/certificateTemplates" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.scheduler.v1beta1", - "directory": "google/cloud/scheduler/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "cloudscheduler.googleapis.com", - "title": "Cloud Scheduler API", - "description": "Creates and manages jobs run on a regular recurring schedule.", - "importDirectories": [ - "google/api", - "google/cloud/scheduler/v1beta1", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.scheduler.v1beta1": 3 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 3 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/scheduler/v1beta1;scheduler": 3 - } - }, - "objc_class_prefix": { - "valueCounts": { - "SCHEDULER": 1, - "": 2 - } - } - }, - "services": [ - { - "shortName": "CloudScheduler", - "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler", - "methods": [ + }, { - "shortName": "CreateJob", - "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.CreateJob", + "shortName": "ListCertificates", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ListCertificates", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/jobs" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/caPools/*}/certificates" } ] }, { - "shortName": "DeleteJob", - "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.DeleteJob", + "shortName": "RevokeCertificate", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.RevokeCertificate", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/jobs/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/caPools/*/certificates/*}:revoke" } ] }, { - "shortName": "GetJob", - "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.GetJob", + "shortName": "UndeleteCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UndeleteCertificateAuthority", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/jobs/*}" + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}:undelete" } ] }, { - "shortName": "ListJobs", - "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.ListJobs", + "shortName": "UpdateCaPool", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UpdateCaPool", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/jobs" + "httpMethod": "PATCH", + "path": "/v1/{ca_pool.name=projects/*/locations/*/caPools/*}" } ] }, { - "shortName": "PauseJob", - "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.PauseJob", + "shortName": "UpdateCertificate", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UpdateCertificate", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/jobs/*}:pause" + "httpMethod": "PATCH", + "path": "/v1/{certificate.name=projects/*/locations/*/caPools/*/certificates/*}" } ] }, { - "shortName": "ResumeJob", - "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.ResumeJob", + "shortName": "UpdateCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UpdateCertificateAuthority", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/jobs/*}:resume" + "httpMethod": "PATCH", + "path": "/v1/{certificate_authority.name=projects/*/locations/*/caPools/*/certificateAuthorities/*}" } ] }, { - "shortName": "RunJob", - "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.RunJob", + "shortName": "UpdateCertificateRevocationList", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UpdateCertificateRevocationList", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/jobs/*}:run" + "httpMethod": "PATCH", + "path": "/v1/{certificate_revocation_list.name=projects/*/locations/*/caPools/*/certificateAuthorities/*/certificateRevocationLists/*}" } ] }, { - "shortName": "UpdateJob", - "fullName": "google.cloud.scheduler.v1beta1.CloudScheduler.UpdateJob", + "shortName": "UpdateCertificateTemplate", + "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UpdateCertificateTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{job.name=projects/*/locations/*/jobs/*}" + "path": "/v1/{certificate_template.name=projects/*/locations/*/certificateTemplates/*}" } ] } ] } - ] + ], + "configFile": "privateca_v1.yaml" }, { - "id": "google.cloud.secretmanager.v1", - "directory": "google/cloud/secretmanager/v1", - "version": "v1", + "id": "google.cloud.security.privateca.v1beta1", + "directory": "google/cloud/security/privateca/v1beta1", + "version": "v1beta1", "majorVersion": "v1", - "hostName": "secretmanager.googleapis.com", - "title": "Secret Manager API", - "description": "Stores sensitive data such as API keys, passwords, and certificates. Provides convenience while improving security.", + "hostName": "privateca.googleapis.com", + "title": "Certificate Authority API", + "description": "", "importDirectories": [ "google/api", - "google/cloud/secretmanager/v1", - "google/iam/v1", + "google/cloud/security/privateca/v1beta1", + "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.secretmanager.v1": 2 + "true": 2 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 2 + "Google.Cloud.Security.PrivateCA.V1Beta1": 2 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/secretmanager/v1;secretmanager": 2 + "google.golang.org/genproto/googleapis/cloud/security/privateca/v1beta1;privateca": 2 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 2 } }, - "objc_class_prefix": { - "valueCounts": { - "GSM": 2 - } - }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.SecretManager.V1": 2 + "com.google.cloud.security.privateca.v1beta1": 2 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\SecretManager\\V1": 2 + "Google\\Cloud\\Security\\PrivateCA\\V1beta1": 2 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::SecretManager::V1": 2 + "Google::Cloud::Security::PrivateCA::V1beta1": 2 } } }, "services": [ { - "shortName": "SecretManagerService", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService", + "shortName": "CertificateAuthorityService", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService", "methods": [ { - "shortName": "AccessSecretVersion", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.AccessSecretVersion", + "shortName": "ActivateCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ActivateCertificateAuthority", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/secrets/*/versions/*}:access" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:activate" } ] }, { - "shortName": "AddSecretVersion", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.AddSecretVersion", + "shortName": "CreateCertificate", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.CreateCertificate", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/secrets/*}:addVersion" + "path": "/v1beta1/{parent=projects/*/locations/*/certificateAuthorities/*}/certificates" } ] }, { - "shortName": "CreateSecret", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.CreateSecret", + "shortName": "CreateCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.CreateCertificateAuthority", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*}/secrets" + "path": "/v1beta1/{parent=projects/*/locations/*}/certificateAuthorities" } ] }, { - "shortName": "DeleteSecret", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.DeleteSecret", + "shortName": "DisableCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.DisableCertificateAuthority", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/secrets/*}" + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:disable" } ] }, { - "shortName": "DestroySecretVersion", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.DestroySecretVersion", + "shortName": "EnableCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.EnableCertificateAuthority", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/secrets/*/versions/*}:destroy" + "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:enable" } ] }, { - "shortName": "DisableSecretVersion", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.DisableSecretVersion", + "shortName": "FetchCertificateAuthorityCsr", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.FetchCertificateAuthorityCsr", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/secrets/*/versions/*}:disable" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:fetch" } ] }, { - "shortName": "EnableSecretVersion", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.EnableSecretVersion", + "shortName": "GetCertificate", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.GetCertificate", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{name=projects/*/secrets/*/versions/*}:enable" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*/certificates/*}" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.GetIamPolicy", + "shortName": "GetCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.GetCertificateAuthority", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{resource=projects/*/secrets/*}:getIamPolicy" + "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}" } ] }, { - "shortName": "GetSecret", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.GetSecret", + "shortName": "GetCertificateRevocationList", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.GetCertificateRevocationList", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/secrets/*}" + "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*/certificateRevocationLists/*}" } ] }, { - "shortName": "GetSecretVersion", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.GetSecretVersion", + "shortName": "GetReusableConfig", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.GetReusableConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/secrets/*/versions/*}" + "path": "/v1beta1/{name=projects/*/locations/*/reusableConfigs/*}" } ] }, { - "shortName": "ListSecrets", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.ListSecrets", + "shortName": "ListCertificateAuthorities", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ListCertificateAuthorities", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/secrets" + "path": "/v1beta1/{parent=projects/*/locations/*}/certificateAuthorities" } ] }, { - "shortName": "ListSecretVersions", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.ListSecretVersions", + "shortName": "ListCertificateRevocationLists", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ListCertificateRevocationLists", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/secrets/*}/versions" + "path": "/v1beta1/{parent=projects/*/locations/*/certificateAuthorities/*}/certificateRevocationLists" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.SetIamPolicy", + "shortName": "ListCertificates", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ListCertificates", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*/certificateAuthorities/*}/certificates" + } + ] + }, + { + "shortName": "ListReusableConfigs", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ListReusableConfigs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/{parent=projects/*/locations/*}/reusableConfigs" + } + ] + }, + { + "shortName": "RestoreCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.RestoreCertificateAuthority", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/secrets/*}:setIamPolicy" + "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:restore" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.TestIamPermissions", + "shortName": "RevokeCertificate", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.RevokeCertificate", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/secrets/*}:testIamPermissions" + "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*/certificates/*}:revoke" } ] }, { - "shortName": "UpdateSecret", - "fullName": "google.cloud.secretmanager.v1.SecretManagerService.UpdateSecret", + "shortName": "ScheduleDeleteCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ScheduleDeleteCertificateAuthority", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:scheduleDelete" + } + ] + }, + { + "shortName": "UpdateCertificate", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.UpdateCertificate", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{secret.name=projects/*/secrets/*}" + "path": "/v1beta1/{certificate.name=projects/*/locations/*/certificateAuthorities/*/certificates/*}" + } + ] + }, + { + "shortName": "UpdateCertificateAuthority", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.UpdateCertificateAuthority", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{certificate_authority.name=projects/*/locations/*/certificateAuthorities/*}" + } + ] + }, + { + "shortName": "UpdateCertificateRevocationList", + "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.UpdateCertificateRevocationList", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta1/{certificate_revocation_list.name=projects/*/locations/*/certificateAuthorities/*/certificateRevocationLists/*}" } ] } ] } - ] + ], + "configFile": "privateca_v1beta1.yaml" }, { - "id": "google.cloud.secrets.v1beta1", - "directory": "google/cloud/secrets/v1beta1", + "id": "google.cloud.securitycenter.settings.v1beta1", + "directory": "google/cloud/securitycenter/settings/v1beta1", "version": "v1beta1", "majorVersion": "v1", - "hostName": "secretmanager.googleapis.com", - "title": "Secret Manager API", - "description": "Stores sensitive data such as API keys, passwords, and certificates. Provides convenience while improving security.", + "hostName": "securitycenter.googleapis.com", + "title": "Cloud Security Command Center API", + "description": "Cloud Security Command Center Settings API provides functionality to retrieve and update configurations.", "importDirectories": [ "google/api", - "google/cloud/secrets/v1beta1", - "google/iam/v1", + "google/cloud/securitycenter/settings/v1beta1", "google/protobuf" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.secretmanager.v1beta1": 2 + "true": 6 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 2 + "Google.Cloud.SecurityCenter.Settings.V1Beta1": 6 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/secretmanager/v1beta1;secretmanager": 2 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 2 + "google.golang.org/genproto/googleapis/cloud/securitycenter/settings/v1beta1;settings": 6 } }, - "objc_class_prefix": { + "java_multiple_files": { "valueCounts": { - "GSM": 2 + "true": 6 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.SecretManager.V1Beta1": 2 + "com.google.cloud.securitycenter.settings.v1beta1": 6 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\SecretManager\\V1beta1": 2 + "Google\\Cloud\\SecurityCenter\\Settings\\V1beta1": 6 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::SecretManager::V1beta1": 2 + "Google::Cloud::SecurityCenter::Settings::V1beta1": 6 } } }, "services": [ { - "shortName": "SecretManagerService", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService", + "shortName": "SecurityCenterSettingsService", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService", "methods": [ { - "shortName": "AccessSecretVersion", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.AccessSecretVersion", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/secrets/*/versions/*}:access" - } - ] - }, - { - "shortName": "AddSecretVersion", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.AddSecretVersion", + "shortName": "BatchCalculateEffectiveSettings", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.BatchCalculateEffectiveSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/secrets/*}:addVersion" + "path": "/settings/v1beta1/{parent=organizations/*}/effectiveSettings:batchCalculate" } ] }, { - "shortName": "CreateSecret", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.CreateSecret", + "shortName": "BatchGetSettings", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.BatchGetSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*}/secrets" + "httpMethod": "GET", + "path": "/settings/v1beta1/{parent=organizations/*}/settings:batchGet" } ] }, { - "shortName": "DeleteSecret", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.DeleteSecret", + "shortName": "CalculateEffectiveComponentSettings", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.CalculateEffectiveComponentSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/secrets/*}" + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=organizations/*/components/*/effectiveSettings}:calculate" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=folders/*/components/*/effectiveSettings}:calculate" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/components/*/effectiveSettings}:calculate" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/components/*/effectiveSettings}:calculate" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/components/*/effectiveSettings}:calculate" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/components/*/effectiveSettings}:calculate" } ] }, { - "shortName": "DestroySecretVersion", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.DestroySecretVersion", + "shortName": "CalculateEffectiveSettings", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.CalculateEffectiveSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/secrets/*/versions/*}:destroy" + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=organizations/*/effectiveSettings}:calculate" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=folders/*/effectiveSettings}:calculate" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/effectiveSettings}:calculate" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/effectiveSettings}:calculate" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/effectiveSettings}:calculate" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/effectiveSettings}:calculate" } ] }, { - "shortName": "DisableSecretVersion", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.DisableSecretVersion", + "shortName": "GetComponentSettings", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.GetComponentSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/secrets/*/versions/*}:disable" + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=organizations/*/components/*/settings}" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=folders/*/components/*/settings}" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/components/*/settings}" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/components/*/settings}" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/components/*/settings}" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/components/*/settings}" } ] }, { - "shortName": "EnableSecretVersion", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.EnableSecretVersion", + "shortName": "GetServiceAccount", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.GetServiceAccount", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/secrets/*/versions/*}:enable" + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=organizations/*/serviceAccount}" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.GetIamPolicy", + "shortName": "GetSettings", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.GetSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{resource=projects/*/secrets/*}:getIamPolicy" - } - ] - }, - { - "shortName": "GetSecret", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.GetSecret", - "mode": "UNARY", - "bindings": [ + "path": "/settings/v1beta1/{name=organizations/*/settings}" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=folders/*/settings}" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/settings}" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/settings}" + }, + { + "httpMethod": "GET", + "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/settings}" + }, { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/secrets/*}" + "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/settings}" } ] }, { - "shortName": "GetSecretVersion", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.GetSecretVersion", + "shortName": "ListComponents", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.ListComponents", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/secrets/*/versions/*}" + "path": "/settings/v1beta1/{parent=organizations/*}/components" } ] }, { - "shortName": "ListSecrets", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.ListSecrets", + "shortName": "ListDetectors", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.ListDetectors", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*}/secrets" + "path": "/settings/v1beta1/{parent=organizations/*}/detectors" } ] }, { - "shortName": "ListSecretVersions", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.ListSecretVersions", + "shortName": "ResetComponentSettings", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.ResetComponentSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/secrets/*}/versions" + "httpMethod": "POST", + "path": "/settings/v1beta1/{name=organizations/*/components/*/settings}:reset" + }, + { + "httpMethod": "POST", + "path": "/settings/v1beta1/{name=folders/*/components/*/settings}:reset" + }, + { + "httpMethod": "POST", + "path": "/settings/v1beta1/{name=projects/*/components/*/settings}:reset" + }, + { + "httpMethod": "POST", + "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/components/*/settings}:reset" + }, + { + "httpMethod": "POST", + "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/components/*/settings}:reset" + }, + { + "httpMethod": "POST", + "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/components/*/settings}:reset" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.SetIamPolicy", + "shortName": "ResetSettings", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.ResetSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/secrets/*}:setIamPolicy" + "path": "/settings/v1beta1/{name=organizations/*/settings}:reset" + }, + { + "httpMethod": "POST", + "path": "/settings/v1beta1/{name=folders/*/settings}:reset" + }, + { + "httpMethod": "POST", + "path": "/settings/v1beta1/{name=projects/*/settings}:reset" + }, + { + "httpMethod": "POST", + "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/settings}:reset" + }, + { + "httpMethod": "POST", + "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/settings}:reset" + }, + { + "httpMethod": "POST", + "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/settings}:reset" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.TestIamPermissions", + "shortName": "UpdateComponentSettings", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.UpdateComponentSettings", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/secrets/*}:testIamPermissions" + "httpMethod": "PATCH", + "path": "/settings/v1beta1/{component_settings.name=organizations/*/components/*/settings}" + }, + { + "httpMethod": "PATCH", + "path": "/settings/v1beta1/{component_settings.name=folders/*/components/*/settings}" + }, + { + "httpMethod": "PATCH", + "path": "/settings/v1beta1/{component_settings.name=projects/*/components/*/settings}" + }, + { + "httpMethod": "PATCH", + "path": "/settings/v1beta1/{component_settings.name=projects/*/locations/*/clusters/*/components/*/settings}" + }, + { + "httpMethod": "PATCH", + "path": "/settings/v1beta1/{component_settings.name=projects/*/regions/*/clusters/*/components/*/settings}" + }, + { + "httpMethod": "PATCH", + "path": "/settings/v1beta1/{component_settings.name=projects/*/zones/*/clusters/*/components/*/settings}" } ] }, { - "shortName": "UpdateSecret", - "fullName": "google.cloud.secrets.v1beta1.SecretManagerService.UpdateSecret", + "shortName": "UpdateSettings", + "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.UpdateSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{secret.name=projects/*/secrets/*}" + "path": "/settings/v1beta1/{settings.name=organizations/*/settings}" + }, + { + "httpMethod": "PATCH", + "path": "/settings/v1beta1/{settings.name=folders/*/settings}" + }, + { + "httpMethod": "PATCH", + "path": "/settings/v1beta1/{settings.name=projects/*/settings}" + }, + { + "httpMethod": "PATCH", + "path": "/settings/v1beta1/{settings.name=projects/*/locations/*/clusters/*/settings}" + }, + { + "httpMethod": "PATCH", + "path": "/settings/v1beta1/{settings.name=projects/*/regions/*/clusters/*/settings}" + }, + { + "httpMethod": "PATCH", + "path": "/settings/v1beta1/{settings.name=projects/*/zones/*/clusters/*/settings}" } ] } ] } - ] + ], + "configFile": "securitycenter_settings.yaml" }, { - "id": "google.cloud.security.privateca.v1", - "directory": "google/cloud/security/privateca/v1", + "id": "google.cloud.securitycenter.v1", + "directory": "google/cloud/securitycenter/v1", "version": "v1", "majorVersion": "v1", - "hostName": "privateca.googleapis.com", - "title": "Certificate Authority API", - "description": "The Certificate Authority Service API is a highly-available, scalable service that enables you to simplify and automate the management of private certificate authorities (CAs) while staying in control of your private keys.\"", + "hostName": "securitycenter.googleapis.com", + "title": "Security Command Center API", + "description": "Security Command Center API provides access to temporal views of assets and findings within an organization.", "importDirectories": [ "google/api", - "google/cloud/security/privateca/v1", + "google/cloud/securitycenter/v1", + "google/iam/v1", "google/longrunning", - "google/protobuf", - "google/type" + "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.security.privateca.v1": 2 - } - }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 2 + "Google.Cloud.SecurityCenter.V1": 15 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/security/privateca/v1;privateca": 2 + "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter": 15 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { - "true": 2 + "true": 15 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Security.PrivateCA.V1": 2 + "com.google.cloud.securitycenter.v1": 15 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Security\\PrivateCA\\V1": 2 + "Google\\Cloud\\SecurityCenter\\V1": 15 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::Security::PrivateCA::V1": 1, - "Google::Cloud::Security::PrivateCA::v1": 1 + "Google::Cloud::SecurityCenter::V1": 15 } } }, "services": [ { - "shortName": "CertificateAuthorityService", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService", + "shortName": "SecurityCenter", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter", "methods": [ { - "shortName": "ActivateCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ActivateCertificateAuthority", + "shortName": "BulkMuteFindings", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.BulkMuteFindings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}:activate" - } - ] - }, - { - "shortName": "CreateCaPool", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.CreateCaPool", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{parent=organizations/*}/findings:bulkMute" + }, { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/caPools" - } - ] - }, - { - "shortName": "CreateCertificate", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.CreateCertificate", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{parent=folders/*}/findings:bulkMute" + }, { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/caPools/*}/certificates" + "path": "/v1/{parent=projects/*}/findings:bulkMute" } ] }, { - "shortName": "CreateCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.CreateCertificateAuthority", + "shortName": "CreateFinding", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.CreateFinding", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/caPools/*}/certificateAuthorities" + "path": "/v1/{parent=organizations/*/sources/*}/findings" } ] }, { - "shortName": "CreateCertificateTemplate", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.CreateCertificateTemplate", + "shortName": "CreateMuteConfig", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.CreateMuteConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/certificateTemplates" - } - ] - }, - { - "shortName": "DeleteCaPool", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.DeleteCaPool", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/caPools/*}" - } - ] - }, - { - "shortName": "DeleteCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.DeleteCertificateAuthority", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}" - } - ] - }, - { - "shortName": "DeleteCertificateTemplate", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.DeleteCertificateTemplate", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{parent=organizations/*}/muteConfigs" + }, { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/certificateTemplates/*}" - } - ] - }, - { - "shortName": "DisableCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.DisableCertificateAuthority", - "mode": "UNARY", - "bindings": [ + "httpMethod": "POST", + "path": "/v1/{parent=folders/*}/muteConfigs" + }, { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}:disable" + "path": "/v1/{parent=projects/*}/muteConfigs" } ] }, { - "shortName": "EnableCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.EnableCertificateAuthority", + "shortName": "CreateNotificationConfig", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.CreateNotificationConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}:enable" + "path": "/v1/{parent=organizations/*}/notificationConfigs" } ] }, { - "shortName": "FetchCaCerts", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.FetchCaCerts", + "shortName": "CreateSource", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.CreateSource", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{ca_pool=projects/*/locations/*/caPools/*}:fetchCaCerts" + "path": "/v1/{parent=organizations/*}/sources" } ] }, { - "shortName": "FetchCertificateAuthorityCsr", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.FetchCertificateAuthorityCsr", + "shortName": "DeleteMuteConfig", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.DeleteMuteConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}:fetch" - } - ] - }, - { - "shortName": "GetCaPool", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.GetCaPool", - "mode": "UNARY", - "bindings": [ + "httpMethod": "DELETE", + "path": "/v1/{name=organizations/*/muteConfigs/*}" + }, { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/caPools/*}" - } - ] - }, - { - "shortName": "GetCertificate", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.GetCertificate", - "mode": "UNARY", - "bindings": [ + "httpMethod": "DELETE", + "path": "/v1/{name=folders/*/muteConfigs/*}" + }, { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/caPools/*/certificates/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/muteConfigs/*}" } ] }, { - "shortName": "GetCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.GetCertificateAuthority", + "shortName": "DeleteNotificationConfig", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.DeleteNotificationConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=organizations/*/notificationConfigs/*}" } ] }, { - "shortName": "GetCertificateRevocationList", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.GetCertificateRevocationList", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GetIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*/certificateRevocationLists/*}" + "httpMethod": "POST", + "path": "/v1/{resource=organizations/*/sources/*}:getIamPolicy" } ] }, { - "shortName": "GetCertificateTemplate", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.GetCertificateTemplate", + "shortName": "GetMuteConfig", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GetMuteConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/certificateTemplates/*}" - } - ] - }, - { - "shortName": "ListCaPools", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ListCaPools", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{name=organizations/*/muteConfigs/*}" + }, { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/caPools" - } - ] - }, - { - "shortName": "ListCertificateAuthorities", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ListCertificateAuthorities", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{name=folders/*/muteConfigs/*}" + }, { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/caPools/*}/certificateAuthorities" + "path": "/v1/{name=projects/*/muteConfigs/*}" } ] }, { - "shortName": "ListCertificateRevocationLists", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ListCertificateRevocationLists", + "shortName": "GetNotificationConfig", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GetNotificationConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/caPools/*/certificateAuthorities/*}/certificateRevocationLists" + "path": "/v1/{name=organizations/*/notificationConfigs/*}" } ] }, { - "shortName": "ListCertificates", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ListCertificates", + "shortName": "GetOrganizationSettings", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GetOrganizationSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/caPools/*}/certificates" + "path": "/v1/{name=organizations/*/organizationSettings}" } ] }, { - "shortName": "ListCertificateTemplates", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.ListCertificateTemplates", + "shortName": "GetSource", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GetSource", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/certificateTemplates" + "path": "/v1/{name=organizations/*/sources/*}" } ] }, { - "shortName": "RevokeCertificate", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.RevokeCertificate", + "shortName": "GroupAssets", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GroupAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/caPools/*/certificates/*}:revoke" - } - ] - }, - { - "shortName": "UndeleteCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UndeleteCertificateAuthority", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{parent=organizations/*}/assets:group" + }, { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/caPools/*/certificateAuthorities/*}:undelete" - } - ] - }, - { - "shortName": "UpdateCaPool", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UpdateCaPool", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v1/{ca_pool.name=projects/*/locations/*/caPools/*}" - } - ] - }, - { - "shortName": "UpdateCertificate", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UpdateCertificate", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v1/{certificate.name=projects/*/locations/*/caPools/*/certificates/*}" - } - ] - }, - { - "shortName": "UpdateCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UpdateCertificateAuthority", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v1/{certificate_authority.name=projects/*/locations/*/caPools/*/certificateAuthorities/*}" - } - ] - }, - { - "shortName": "UpdateCertificateRevocationList", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UpdateCertificateRevocationList", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{parent=folders/*}/assets:group" + }, { - "httpMethod": "PATCH", - "path": "/v1/{certificate_revocation_list.name=projects/*/locations/*/caPools/*/certificateAuthorities/*/certificateRevocationLists/*}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*}/assets:group" } ] }, { - "shortName": "UpdateCertificateTemplate", - "fullName": "google.cloud.security.privateca.v1.CertificateAuthorityService.UpdateCertificateTemplate", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "PATCH", - "path": "/v1/{certificate_template.name=projects/*/locations/*/certificateTemplates/*}" - } - ] - } - ] - } - ] - }, - { - "id": "google.cloud.security.privateca.v1beta1", - "directory": "google/cloud/security/privateca/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "privateca.googleapis.com", - "title": "Certificate Authority API", - "description": "", - "importDirectories": [ - "google/api", - "google/cloud/security/privateca/v1beta1", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.security.privateca.v1beta1": 2 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 2 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/security/privateca/v1beta1;privateca": 2 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 2 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Security.PrivateCA.V1Beta1": 2 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\Security\\PrivateCA\\V1beta1": 2 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::Security::PrivateCA::V1beta1": 2 - } - } - }, - "services": [ - { - "shortName": "CertificateAuthorityService", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService", - "methods": [ - { - "shortName": "ActivateCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ActivateCertificateAuthority", + "shortName": "GroupFindings", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GroupFindings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:activate" - } - ] - }, - { - "shortName": "CreateCertificate", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.CreateCertificate", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{parent=organizations/*/sources/*}/findings:group" + }, { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/certificateAuthorities/*}/certificates" - } - ] - }, - { - "shortName": "CreateCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.CreateCertificateAuthority", - "mode": "UNARY", - "bindings": [ + "path": "/v1/{parent=folders/*/sources/*}/findings:group" + }, { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/certificateAuthorities" + "path": "/v1/{parent=projects/*/sources/*}/findings:group" } ] }, { - "shortName": "DisableCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.DisableCertificateAuthority", + "shortName": "ListAssets", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.ListAssets", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:disable" + "httpMethod": "GET", + "path": "/v1/{parent=organizations/*}/assets" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=folders/*}/assets" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/assets" } ] }, { - "shortName": "EnableCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.EnableCertificateAuthority", + "shortName": "ListFindings", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.ListFindings", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:enable" + "httpMethod": "GET", + "path": "/v1/{parent=organizations/*/sources/*}/findings" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=folders/*/sources/*}/findings" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/sources/*}/findings" } ] }, { - "shortName": "FetchCertificateAuthorityCsr", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.FetchCertificateAuthorityCsr", + "shortName": "ListMuteConfigs", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.ListMuteConfigs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:fetch" + "path": "/v1/{parent=organizations/*}/muteConfigs" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=folders/*}/muteConfigs" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/muteConfigs" } ] }, { - "shortName": "GetCertificate", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.GetCertificate", + "shortName": "ListNotificationConfigs", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.ListNotificationConfigs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*/certificates/*}" + "path": "/v1/{parent=organizations/*}/notificationConfigs" } ] }, { - "shortName": "GetCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.GetCertificateAuthority", + "shortName": "ListSources", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.ListSources", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}" + "path": "/v1/{parent=organizations/*}/sources" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=folders/*}/sources" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/sources" } ] }, { - "shortName": "GetCertificateRevocationList", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.GetCertificateRevocationList", + "shortName": "RunAssetDiscovery", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.RunAssetDiscovery", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*/certificateRevocationLists/*}" + "httpMethod": "POST", + "path": "/v1/{parent=organizations/*}/assets:runDiscovery" } ] }, { - "shortName": "GetReusableConfig", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.GetReusableConfig", + "shortName": "SetFindingState", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.SetFindingState", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/reusableConfigs/*}" + "httpMethod": "POST", + "path": "/v1/{name=organizations/*/sources/*/findings/*}:setState" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=folders/*/sources/*/findings/*}:setState" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/sources/*/findings/*}:setState" } ] }, { - "shortName": "ListCertificateAuthorities", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ListCertificateAuthorities", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.SetIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/certificateAuthorities" + "httpMethod": "POST", + "path": "/v1/{resource=organizations/*/sources/*}:setIamPolicy" } ] }, { - "shortName": "ListCertificateRevocationLists", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ListCertificateRevocationLists", + "shortName": "SetMute", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.SetMute", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/certificateAuthorities/*}/certificateRevocationLists" + "httpMethod": "POST", + "path": "/v1/{name=organizations/*/sources/*/findings/*}:setMute" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=folders/*/sources/*/findings/*}:setMute" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/sources/*/findings/*}:setMute" } ] }, { - "shortName": "ListCertificates", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ListCertificates", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.TestIamPermissions", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/certificateAuthorities/*}/certificates" + "httpMethod": "POST", + "path": "/v1/{resource=organizations/*/sources/*}:testIamPermissions" } ] }, { - "shortName": "ListReusableConfigs", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ListReusableConfigs", + "shortName": "UpdateExternalSystem", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateExternalSystem", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/reusableConfigs" + "httpMethod": "PATCH", + "path": "/v1/{external_system.name=organizations/*/sources/*/findings/*/externalSystems/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{external_system.name=folders/*/sources/*/findings/*/externalSystems/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{external_system.name=projects/*/sources/*/findings/*/externalSystems/*}" } ] }, { - "shortName": "RestoreCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.RestoreCertificateAuthority", + "shortName": "UpdateFinding", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateFinding", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:restore" + "httpMethod": "PATCH", + "path": "/v1/{finding.name=organizations/*/sources/*/findings/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{finding.name=folders/*/sources/*/findings/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{finding.name=projects/*/sources/*/findings/*}" } ] }, { - "shortName": "RevokeCertificate", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.RevokeCertificate", + "shortName": "UpdateMuteConfig", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateMuteConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*/certificates/*}:revoke" + "httpMethod": "PATCH", + "path": "/v1/{mute_config.name=organizations/*/muteConfigs/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{mute_config.name=folders/*/muteConfigs/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{mute_config.name=projects/*/muteConfigs/*}" } ] }, { - "shortName": "ScheduleDeleteCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.ScheduleDeleteCertificateAuthority", + "shortName": "UpdateNotificationConfig", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateNotificationConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/certificateAuthorities/*}:scheduleDelete" + "httpMethod": "PATCH", + "path": "/v1/{notification_config.name=organizations/*/notificationConfigs/*}" } ] }, { - "shortName": "UpdateCertificate", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.UpdateCertificate", + "shortName": "UpdateOrganizationSettings", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateOrganizationSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{certificate.name=projects/*/locations/*/certificateAuthorities/*/certificates/*}" + "path": "/v1/{organization_settings.name=organizations/*/organizationSettings}" } ] }, { - "shortName": "UpdateCertificateAuthority", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.UpdateCertificateAuthority", + "shortName": "UpdateSecurityMarks", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateSecurityMarks", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{certificate_authority.name=projects/*/locations/*/certificateAuthorities/*}" + "path": "/v1/{security_marks.name=organizations/*/assets/*/securityMarks}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{security_marks.name=folders/*/assets/*/securityMarks}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{security_marks.name=projects/*/assets/*/securityMarks}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{security_marks.name=organizations/*/sources/*/findings/*/securityMarks}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{security_marks.name=folders/*/sources/*/findings/*/securityMarks}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{security_marks.name=projects/*/sources/*/findings/*/securityMarks}" } ] }, { - "shortName": "UpdateCertificateRevocationList", - "fullName": "google.cloud.security.privateca.v1beta1.CertificateAuthorityService.UpdateCertificateRevocationList", + "shortName": "UpdateSource", + "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateSource", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{certificate_revocation_list.name=projects/*/locations/*/certificateAuthorities/*/certificateRevocationLists/*}" + "path": "/v1/{source.name=organizations/*/sources/*}" } ] } ] } - ] + ], + "configFile": "securitycenter_v1.yaml" }, { - "id": "google.cloud.securitycenter.settings.v1beta1", - "directory": "google/cloud/securitycenter/settings/v1beta1", + "id": "google.cloud.securitycenter.v1beta1", + "directory": "google/cloud/securitycenter/v1beta1", "version": "v1beta1", "majorVersion": "v1", "hostName": "securitycenter.googleapis.com", - "title": "Cloud Security Command Center API", - "description": "Cloud Security Command Center Settings API provides functionality to retrieve and update configurations.", + "title": "Security Command Center API", + "description": "Security Command Center API provides access to temporal views of assets and findings within an organization.", "importDirectories": [ "google/api", - "google/cloud/securitycenter/settings/v1beta1", + "google/cloud/securitycenter/v1beta1", + "google/iam/v1", + "google/longrunning", "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.securitycenter.settings.v1beta1": 6 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 6 - } - }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/securitycenter/settings/v1beta1;settings": 6 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 6 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.SecurityCenter.Settings.V1Beta1": 6 + "google.golang.org/genproto/googleapis/cloud/securitycenter/v1beta1;securitycenter": 7 } }, - "php_namespace": { + "java_multiple_files": { "valueCounts": { - "Google\\Cloud\\SecurityCenter\\Settings\\V1beta1": 6 + "true": 7 } }, - "ruby_package": { + "java_package": { "valueCounts": { - "Google::Cloud::SecurityCenter::Settings::V1beta1": 6 + "com.google.cloud.securitycenter.v1beta1": 7 } } }, "services": [ { - "shortName": "SecurityCenterSettingsService", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService", + "shortName": "SecurityCenter", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter", "methods": [ { - "shortName": "BatchCalculateEffectiveSettings", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.BatchCalculateEffectiveSettings", + "shortName": "CreateFinding", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.CreateFinding", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/settings/v1beta1/{parent=organizations/*}/effectiveSettings:batchCalculate" + "path": "/v1beta1/{parent=organizations/*/sources/*}/findings" } ] }, { - "shortName": "BatchGetSettings", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.BatchGetSettings", + "shortName": "CreateSource", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.CreateSource", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/settings/v1beta1/{parent=organizations/*}/settings:batchGet" + "httpMethod": "POST", + "path": "/v1beta1/{parent=organizations/*}/sources" } ] }, { - "shortName": "CalculateEffectiveComponentSettings", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.CalculateEffectiveComponentSettings", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.GetIamPolicy", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=organizations/*/components/*/effectiveSettings}:calculate" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=folders/*/components/*/effectiveSettings}:calculate" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/components/*/effectiveSettings}:calculate" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/components/*/effectiveSettings}:calculate" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/components/*/effectiveSettings}:calculate" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/components/*/effectiveSettings}:calculate" + "httpMethod": "POST", + "path": "/v1beta1/{resource=organizations/*/sources/*}:getIamPolicy" } ] }, { - "shortName": "CalculateEffectiveSettings", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.CalculateEffectiveSettings", + "shortName": "GetOrganizationSettings", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.GetOrganizationSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/settings/v1beta1/{name=organizations/*/effectiveSettings}:calculate" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=folders/*/effectiveSettings}:calculate" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/effectiveSettings}:calculate" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/effectiveSettings}:calculate" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/effectiveSettings}:calculate" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/effectiveSettings}:calculate" + "path": "/v1beta1/{name=organizations/*/organizationSettings}" } ] }, { - "shortName": "GetComponentSettings", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.GetComponentSettings", + "shortName": "GetSource", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.GetSource", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/settings/v1beta1/{name=organizations/*/components/*/settings}" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=folders/*/components/*/settings}" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/components/*/settings}" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/components/*/settings}" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/components/*/settings}" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/components/*/settings}" + "path": "/v1beta1/{name=organizations/*/sources/*}" } ] }, { - "shortName": "GetServiceAccount", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.GetServiceAccount", + "shortName": "GroupAssets", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.GroupAssets", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=organizations/*/serviceAccount}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=organizations/*}/assets:group" } ] }, { - "shortName": "GetSettings", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.GetSettings", + "shortName": "GroupFindings", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.GroupFindings", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=organizations/*/settings}" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=folders/*/settings}" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/settings}" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/settings}" - }, - { - "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/settings}" - }, + "httpMethod": "POST", + "path": "/v1beta1/{parent=organizations/*/sources/*}/findings:group" + } + ] + }, + { + "shortName": "ListAssets", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.ListAssets", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/settings}" + "path": "/v1beta1/{parent=organizations/*}/assets" } ] }, { - "shortName": "ListComponents", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.ListComponents", + "shortName": "ListFindings", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.ListFindings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/settings/v1beta1/{parent=organizations/*}/components" + "path": "/v1beta1/{parent=organizations/*/sources/*}/findings" } ] }, { - "shortName": "ListDetectors", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.ListDetectors", + "shortName": "ListSources", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.ListSources", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/settings/v1beta1/{parent=organizations/*}/detectors" + "path": "/v1beta1/{parent=organizations/*}/sources" } ] }, { - "shortName": "ResetComponentSettings", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.ResetComponentSettings", + "shortName": "RunAssetDiscovery", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.RunAssetDiscovery", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/settings/v1beta1/{name=organizations/*/components/*/settings}:reset" - }, - { - "httpMethod": "POST", - "path": "/settings/v1beta1/{name=folders/*/components/*/settings}:reset" - }, - { - "httpMethod": "POST", - "path": "/settings/v1beta1/{name=projects/*/components/*/settings}:reset" - }, - { - "httpMethod": "POST", - "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/components/*/settings}:reset" - }, - { - "httpMethod": "POST", - "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/components/*/settings}:reset" - }, - { - "httpMethod": "POST", - "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/components/*/settings}:reset" + "path": "/v1beta1/{parent=organizations/*}/assets:runDiscovery" } ] }, { - "shortName": "ResetSettings", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.ResetSettings", + "shortName": "SetFindingState", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.SetFindingState", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/settings/v1beta1/{name=organizations/*/settings}:reset" - }, - { - "httpMethod": "POST", - "path": "/settings/v1beta1/{name=folders/*/settings}:reset" - }, - { - "httpMethod": "POST", - "path": "/settings/v1beta1/{name=projects/*/settings}:reset" - }, - { - "httpMethod": "POST", - "path": "/settings/v1beta1/{name=projects/*/locations/*/clusters/*/settings}:reset" - }, + "path": "/v1beta1/{name=organizations/*/sources/*/findings/*}:setState" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.SetIamPolicy", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/settings/v1beta1/{name=projects/*/regions/*/clusters/*/settings}:reset" - }, + "path": "/v1beta1/{resource=organizations/*/sources/*}:setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.TestIamPermissions", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/settings/v1beta1/{name=projects/*/zones/*/clusters/*/settings}:reset" + "path": "/v1beta1/{resource=organizations/*/sources/*}:testIamPermissions" } ] }, { - "shortName": "UpdateComponentSettings", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.UpdateComponentSettings", + "shortName": "UpdateFinding", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateFinding", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/settings/v1beta1/{component_settings.name=organizations/*/components/*/settings}" - }, - { - "httpMethod": "PATCH", - "path": "/settings/v1beta1/{component_settings.name=folders/*/components/*/settings}" - }, - { - "httpMethod": "PATCH", - "path": "/settings/v1beta1/{component_settings.name=projects/*/components/*/settings}" - }, - { - "httpMethod": "PATCH", - "path": "/settings/v1beta1/{component_settings.name=projects/*/locations/*/clusters/*/components/*/settings}" - }, - { - "httpMethod": "PATCH", - "path": "/settings/v1beta1/{component_settings.name=projects/*/regions/*/clusters/*/components/*/settings}" - }, - { - "httpMethod": "PATCH", - "path": "/settings/v1beta1/{component_settings.name=projects/*/zones/*/clusters/*/components/*/settings}" + "path": "/v1beta1/{finding.name=organizations/*/sources/*/findings/*}" } ] }, { - "shortName": "UpdateSettings", - "fullName": "google.cloud.securitycenter.settings.v1beta1.SecurityCenterSettingsService.UpdateSettings", + "shortName": "UpdateOrganizationSettings", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateOrganizationSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/settings/v1beta1/{settings.name=organizations/*/settings}" - }, - { - "httpMethod": "PATCH", - "path": "/settings/v1beta1/{settings.name=folders/*/settings}" - }, - { - "httpMethod": "PATCH", - "path": "/settings/v1beta1/{settings.name=projects/*/settings}" - }, + "path": "/v1beta1/{organization_settings.name=organizations/*/organizationSettings}" + } + ] + }, + { + "shortName": "UpdateSecurityMarks", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateSecurityMarks", + "mode": "UNARY", + "bindings": [ { "httpMethod": "PATCH", - "path": "/settings/v1beta1/{settings.name=projects/*/locations/*/clusters/*/settings}" + "path": "/v1beta1/{security_marks.name=organizations/*/assets/*/securityMarks}" }, { "httpMethod": "PATCH", - "path": "/settings/v1beta1/{settings.name=projects/*/regions/*/clusters/*/settings}" - }, + "path": "/v1beta1/{security_marks.name=organizations/*/sources/*/findings/*/securityMarks}" + } + ] + }, + { + "shortName": "UpdateSource", + "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateSource", + "mode": "UNARY", + "bindings": [ { "httpMethod": "PATCH", - "path": "/settings/v1beta1/{settings.name=projects/*/zones/*/clusters/*/settings}" + "path": "/v1beta1/{source.name=organizations/*/sources/*}" } ] } ] } - ] + ], + "configFile": "securitycenter_v1beta1.yaml" }, { - "id": "google.cloud.securitycenter.v1", - "directory": "google/cloud/securitycenter/v1", - "version": "v1", + "id": "google.cloud.securitycenter.v1p1beta1", + "directory": "google/cloud/securitycenter/v1p1beta1", + "version": "v1p1beta1", "majorVersion": "v1", "hostName": "securitycenter.googleapis.com", "title": "Security Command Center API", "description": "Security Command Center API provides access to temporal views of assets and findings within an organization.", "importDirectories": [ "google/api", - "google/cloud/securitycenter/v1", + "google/cloud/securitycenter/v1p1beta1", "google/iam/v1", "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.securitycenter.v1": 11 + "Google.Cloud.SecurityCenter.V1P1Beta1": 11 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 11 + "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter": 11 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter": 11 + "true": 11 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.SecurityCenter.V1": 11 + "com.google.cloud.securitycenter.v1p1beta1": 11 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\SecurityCenter\\V1": 11 + "Google\\Cloud\\SecurityCenter\\V1p1beta1": 11 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::SecurityCenter::V1": 11 + "Google::Cloud::SecurityCenter::V1p1Beta1": 1, + "Google::Cloud::SecurityCenter::V1p1beta1": 10 } } }, "services": [ { "shortName": "SecurityCenter", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter", "methods": [ { "shortName": "CreateFinding", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.CreateFinding", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.CreateFinding", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=organizations/*/sources/*}/findings" + "path": "/v1p1beta1/{parent=organizations/*/sources/*}/findings" } ] }, { "shortName": "CreateNotificationConfig", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.CreateNotificationConfig", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.CreateNotificationConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=organizations/*}/notificationConfigs" + "path": "/v1p1beta1/{parent=organizations/*}/notificationConfigs" } ] }, { "shortName": "CreateSource", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.CreateSource", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.CreateSource", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=organizations/*}/sources" + "path": "/v1p1beta1/{parent=organizations/*}/sources" } ] }, { "shortName": "DeleteNotificationConfig", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.DeleteNotificationConfig", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.DeleteNotificationConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=organizations/*/notificationConfigs/*}" + "path": "/v1p1beta1/{name=organizations/*/notificationConfigs/*}" } ] }, { "shortName": "GetIamPolicy", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GetIamPolicy", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=organizations/*/sources/*}:getIamPolicy" + "path": "/v1p1beta1/{resource=organizations/*/sources/*}:getIamPolicy" } ] }, { "shortName": "GetNotificationConfig", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GetNotificationConfig", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetNotificationConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=organizations/*/notificationConfigs/*}" + "path": "/v1p1beta1/{name=organizations/*/notificationConfigs/*}" } ] }, { "shortName": "GetOrganizationSettings", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GetOrganizationSettings", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetOrganizationSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=organizations/*/organizationSettings}" + "path": "/v1p1beta1/{name=organizations/*/organizationSettings}" } ] }, { "shortName": "GetSource", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GetSource", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetSource", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=organizations/*/sources/*}" + "path": "/v1p1beta1/{name=organizations/*/sources/*}" } ] }, { "shortName": "GroupAssets", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GroupAssets", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GroupAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=organizations/*}/assets:group" + "path": "/v1p1beta1/{parent=organizations/*}/assets:group" }, { "httpMethod": "POST", - "path": "/v1/{parent=folders/*}/assets:group" + "path": "/v1p1beta1/{parent=folders/*}/assets:group" }, { "httpMethod": "POST", - "path": "/v1/{parent=projects/*}/assets:group" + "path": "/v1p1beta1/{parent=projects/*}/assets:group" } ] }, { "shortName": "GroupFindings", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.GroupFindings", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GroupFindings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=organizations/*/sources/*}/findings:group" + "path": "/v1p1beta1/{parent=organizations/*/sources/*}/findings:group" }, { "httpMethod": "POST", - "path": "/v1/{parent=folders/*/sources/*}/findings:group" + "path": "/v1p1beta1/{parent=folders/*/sources/*}/findings:group" }, { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/sources/*}/findings:group" + "path": "/v1p1beta1/{parent=projects/*/sources/*}/findings:group" } ] }, { "shortName": "ListAssets", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.ListAssets", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListAssets", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=organizations/*}/assets" + "path": "/v1p1beta1/{parent=organizations/*}/assets" }, { "httpMethod": "GET", - "path": "/v1/{parent=folders/*}/assets" + "path": "/v1p1beta1/{parent=folders/*}/assets" }, { "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/assets" + "path": "/v1p1beta1/{parent=projects/*}/assets" } ] }, { "shortName": "ListFindings", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.ListFindings", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListFindings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=organizations/*/sources/*}/findings" + "path": "/v1p1beta1/{parent=organizations/*/sources/*}/findings" }, { "httpMethod": "GET", - "path": "/v1/{parent=folders/*/sources/*}/findings" + "path": "/v1p1beta1/{parent=folders/*/sources/*}/findings" }, { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/sources/*}/findings" + "path": "/v1p1beta1/{parent=projects/*/sources/*}/findings" } ] }, { "shortName": "ListNotificationConfigs", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.ListNotificationConfigs", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListNotificationConfigs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=organizations/*}/notificationConfigs" + "path": "/v1p1beta1/{parent=organizations/*}/notificationConfigs" } ] }, { "shortName": "ListSources", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.ListSources", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListSources", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=organizations/*}/sources" + "path": "/v1p1beta1/{parent=organizations/*}/sources" }, { "httpMethod": "GET", - "path": "/v1/{parent=folders/*}/sources" + "path": "/v1p1beta1/{parent=folders/*}/sources" }, { "httpMethod": "GET", - "path": "/v1/{parent=projects/*}/sources" + "path": "/v1p1beta1/{parent=projects/*}/sources" } ] }, { "shortName": "RunAssetDiscovery", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.RunAssetDiscovery", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.RunAssetDiscovery", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=organizations/*}/assets:runDiscovery" + "path": "/v1p1beta1/{parent=organizations/*}/assets:runDiscovery" } ] }, { "shortName": "SetFindingState", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.SetFindingState", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.SetFindingState", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=organizations/*/sources/*/findings/*}:setState" + "path": "/v1p1beta1/{name=organizations/*/sources/*/findings/*}:setState" }, { "httpMethod": "POST", - "path": "/v1/{name=folders/*/sources/*/findings/*}:setState" + "path": "/v1p1beta1/{name=folders/*/sources/*/findings/*}:setState" }, { "httpMethod": "POST", - "path": "/v1/{name=projects/*/sources/*/findings/*}:setState" + "path": "/v1p1beta1/{name=projects/*/sources/*/findings/*}:setState" } ] }, { "shortName": "SetIamPolicy", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.SetIamPolicy", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=organizations/*/sources/*}:setIamPolicy" + "path": "/v1p1beta1/{resource=organizations/*/sources/*}:setIamPolicy" } ] }, { "shortName": "TestIamPermissions", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.TestIamPermissions", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.TestIamPermissions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=organizations/*/sources/*}:testIamPermissions" + "path": "/v1p1beta1/{resource=organizations/*/sources/*}:testIamPermissions" } ] }, { "shortName": "UpdateFinding", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateFinding", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateFinding", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{finding.name=organizations/*/sources/*/findings/*}" + "path": "/v1p1beta1/{finding.name=organizations/*/sources/*/findings/*}" }, { "httpMethod": "PATCH", - "path": "/v1/{finding.name=folders/*/sources/*/findings/*}" + "path": "/v1p1beta1/{finding.name=folders/*/sources/*/findings/*}" }, { "httpMethod": "PATCH", - "path": "/v1/{finding.name=projects/*/sources/*/findings/*}" + "path": "/v1p1beta1/{finding.name=projects/*/sources/*/findings/*}" } ] }, { "shortName": "UpdateNotificationConfig", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateNotificationConfig", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateNotificationConfig", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{notification_config.name=organizations/*/notificationConfigs/*}" + "path": "/v1p1beta1/{notification_config.name=organizations/*/notificationConfigs/*}" } ] }, { "shortName": "UpdateOrganizationSettings", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateOrganizationSettings", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateOrganizationSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{organization_settings.name=organizations/*/organizationSettings}" + "path": "/v1p1beta1/{organization_settings.name=organizations/*/organizationSettings}" } ] }, { "shortName": "UpdateSecurityMarks", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateSecurityMarks", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateSecurityMarks", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{security_marks.name=organizations/*/assets/*/securityMarks}" + "path": "/v1p1beta1/{security_marks.name=organizations/*/assets/*/securityMarks}" }, { "httpMethod": "PATCH", - "path": "/v1/{security_marks.name=folders/*/assets/*/securityMarks}" + "path": "/v1p1beta1/{security_marks.name=folders/*/assets/*/securityMarks}" }, { "httpMethod": "PATCH", - "path": "/v1/{security_marks.name=projects/*/assets/*/securityMarks}" + "path": "/v1p1beta1/{security_marks.name=projects/*/assets/*/securityMarks}" }, { "httpMethod": "PATCH", - "path": "/v1/{security_marks.name=organizations/*/sources/*/findings/*/securityMarks}" + "path": "/v1p1beta1/{security_marks.name=organizations/*/sources/*/findings/*/securityMarks}" }, { "httpMethod": "PATCH", - "path": "/v1/{security_marks.name=folders/*/sources/*/findings/*/securityMarks}" + "path": "/v1p1beta1/{security_marks.name=folders/*/sources/*/findings/*/securityMarks}" }, { "httpMethod": "PATCH", - "path": "/v1/{security_marks.name=projects/*/sources/*/findings/*/securityMarks}" + "path": "/v1p1beta1/{security_marks.name=projects/*/sources/*/findings/*/securityMarks}" } ] }, { "shortName": "UpdateSource", - "fullName": "google.cloud.securitycenter.v1.SecurityCenter.UpdateSource", + "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateSource", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{source.name=organizations/*/sources/*}" + "path": "/v1p1beta1/{source.name=organizations/*/sources/*}" } ] } ] } - ] + ], + "configFile": "securitycenter_v1p1beta1.yaml" }, { - "id": "google.cloud.securitycenter.v1beta1", - "directory": "google/cloud/securitycenter/v1beta1", - "version": "v1beta1", + "id": "google.cloud.servicedirectory.v1", + "directory": "google/cloud/servicedirectory/v1", + "version": "v1", "majorVersion": "v1", - "hostName": "securitycenter.googleapis.com", - "title": "Security Command Center API", - "description": "Security Command Center API provides access to temporal views of assets and findings within an organization.", + "hostName": "servicedirectory.googleapis.com", + "title": "Service Directory API", + "description": "Service Directory is a platform for discovering, publishing, and connecting services.", "importDirectories": [ "google/api", - "google/cloud/securitycenter/v1beta1", + "google/cloud/servicedirectory/v1", "google/iam/v1", - "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.securitycenter.v1beta1": 7 + "true": 5 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 7 + "Google.Cloud.ServiceDirectory.V1": 5 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/securitycenter/v1beta1;securitycenter": 7 + "google.golang.org/genproto/googleapis/cloud/servicedirectory/v1;servicedirectory": 5 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 5 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.servicedirectory.v1": 5 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\ServiceDirectory\\V1": 5 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::ServiceDirectory::V1": 5 } } }, "services": [ { - "shortName": "SecurityCenter", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter", + "shortName": "LookupService", + "fullName": "google.cloud.servicedirectory.v1.LookupService", "methods": [ { - "shortName": "CreateFinding", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.CreateFinding", + "shortName": "ResolveService", + "fullName": "google.cloud.servicedirectory.v1.LookupService.ResolveService", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=organizations/*/sources/*}/findings" + "path": "/v1/{name=projects/*/locations/*/namespaces/*/services/*}:resolve" } ] - }, + } + ] + }, + { + "shortName": "RegistrationService", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService", + "methods": [ { - "shortName": "CreateSource", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.CreateSource", + "shortName": "CreateEndpoint", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.CreateEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=organizations/*}/sources" + "path": "/v1/{parent=projects/*/locations/*/namespaces/*/services/*}/endpoints" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.GetIamPolicy", + "shortName": "CreateNamespace", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.CreateNamespace", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{resource=organizations/*/sources/*}:getIamPolicy" + "path": "/v1/{parent=projects/*/locations/*}/namespaces" } ] }, { - "shortName": "GetOrganizationSettings", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.GetOrganizationSettings", + "shortName": "CreateService", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.CreateService", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=organizations/*/organizationSettings}" + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/namespaces/*}/services" } ] }, { - "shortName": "GetSource", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.GetSource", + "shortName": "DeleteEndpoint", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.DeleteEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=organizations/*/sources/*}" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" } ] }, { - "shortName": "GroupAssets", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.GroupAssets", + "shortName": "DeleteNamespace", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.DeleteNamespace", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=organizations/*}/assets:group" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/namespaces/*}" } ] }, { - "shortName": "GroupFindings", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.GroupFindings", + "shortName": "DeleteService", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.DeleteService", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=organizations/*/sources/*}/findings:group" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/namespaces/*/services/*}" } ] }, { - "shortName": "ListAssets", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.ListAssets", + "shortName": "GetEndpoint", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.GetEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=organizations/*}/assets" + "path": "/v1/{name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" } ] }, { - "shortName": "ListFindings", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.ListFindings", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.GetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/namespaces/*}:getIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/namespaces/*/services/*}:getIamPolicy" + } + ] + }, + { + "shortName": "GetNamespace", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.GetNamespace", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=organizations/*/sources/*}/findings" + "path": "/v1/{name=projects/*/locations/*/namespaces/*}" } ] }, { - "shortName": "ListSources", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.ListSources", + "shortName": "GetService", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.GetService", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=organizations/*}/sources" + "path": "/v1/{name=projects/*/locations/*/namespaces/*/services/*}" } ] }, { - "shortName": "RunAssetDiscovery", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.RunAssetDiscovery", + "shortName": "ListEndpoints", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.ListEndpoints", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{parent=organizations/*}/assets:runDiscovery" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/namespaces/*/services/*}/endpoints" } ] }, { - "shortName": "SetFindingState", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.SetFindingState", + "shortName": "ListNamespaces", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.ListNamespaces", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=organizations/*/sources/*/findings/*}:setState" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/namespaces" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.SetIamPolicy", + "shortName": "ListServices", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.ListServices", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{resource=organizations/*/sources/*}:setIamPolicy" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/namespaces/*}/services" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.TestIamPermissions", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{resource=organizations/*/sources/*}:testIamPermissions" + "path": "/v1/{resource=projects/*/locations/*/namespaces/*}:setIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/namespaces/*/services/*}:setIamPolicy" } ] }, { - "shortName": "UpdateFinding", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateFinding", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.TestIamPermissions", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{finding.name=organizations/*/sources/*/findings/*}" + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/namespaces/*}:testIamPermissions" + }, + { + "httpMethod": "POST", + "path": "/v1/{resource=projects/*/locations/*/namespaces/*/services/*}:testIamPermissions" } ] }, { - "shortName": "UpdateOrganizationSettings", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateOrganizationSettings", + "shortName": "UpdateEndpoint", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.UpdateEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{organization_settings.name=organizations/*/organizationSettings}" + "path": "/v1/{endpoint.name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" } ] }, { - "shortName": "UpdateSecurityMarks", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateSecurityMarks", + "shortName": "UpdateNamespace", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.UpdateNamespace", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{security_marks.name=organizations/*/assets/*/securityMarks}" - }, - { - "httpMethod": "PATCH", - "path": "/v1beta1/{security_marks.name=organizations/*/sources/*/findings/*/securityMarks}" + "path": "/v1/{namespace.name=projects/*/locations/*/namespaces/*}" } ] }, { - "shortName": "UpdateSource", - "fullName": "google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateSource", + "shortName": "UpdateService", + "fullName": "google.cloud.servicedirectory.v1.RegistrationService.UpdateService", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1beta1/{source.name=organizations/*/sources/*}" + "path": "/v1/{service.name=projects/*/locations/*/namespaces/*/services/*}" } ] } ] } - ] + ], + "configFile": "servicedirectory_v1.yaml" }, { - "id": "google.cloud.securitycenter.v1p1beta1", - "directory": "google/cloud/securitycenter/v1p1beta1", - "version": "v1p1beta1", + "id": "google.cloud.servicedirectory.v1beta1", + "directory": "google/cloud/servicedirectory/v1beta1", + "version": "v1beta1", "majorVersion": "v1", - "hostName": "securitycenter.googleapis.com", - "title": "Security Command Center API", - "description": "Security Command Center API provides access to temporal views of assets and findings within an organization.", + "hostName": "servicedirectory.googleapis.com", + "title": "Service Directory API", + "description": "Service Directory is a platform for discovering, publishing, and connecting services.", "importDirectories": [ "google/api", - "google/cloud/securitycenter/v1p1beta1", + "google/cloud/servicedirectory/v1beta1", "google/iam/v1", - "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.securitycenter.v1p1beta1": 11 + "true": 5 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 11 + "Google.Cloud.ServiceDirectory.V1Beta1": 5 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter": 11 + "google.golang.org/genproto/googleapis/cloud/servicedirectory/v1beta1;servicedirectory": 5 } }, - "csharp_namespace": { + "java_multiple_files": { "valueCounts": { - "Google.Cloud.SecurityCenter.V1P1Beta1": 11 + "true": 5 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.servicedirectory.v1beta1": 5 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\SecurityCenter\\V1p1beta1": 11 + "Google\\Cloud\\ServiceDirectory\\V1beta1": 5 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::SecurityCenter::V1p1beta1": 10, - "Google::Cloud::SecurityCenter::V1p1Beta1": 1 + "Google::Cloud::ServiceDirectory::V1beta1": 5 } } }, "services": [ { - "shortName": "SecurityCenter", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter", + "shortName": "LookupService", + "fullName": "google.cloud.servicedirectory.v1beta1.LookupService", "methods": [ { - "shortName": "CreateFinding", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.CreateFinding", + "shortName": "ResolveService", + "fullName": "google.cloud.servicedirectory.v1beta1.LookupService.ResolveService", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p1beta1/{parent=organizations/*/sources/*}/findings" + "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*/services/*}:resolve" } ] - }, + } + ] + }, + { + "shortName": "RegistrationService", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService", + "methods": [ { - "shortName": "CreateNotificationConfig", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.CreateNotificationConfig", + "shortName": "CreateEndpoint", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.CreateEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p1beta1/{parent=organizations/*}/notificationConfigs" + "path": "/v1beta1/{parent=projects/*/locations/*/namespaces/*/services/*}/endpoints" } ] }, { - "shortName": "CreateSource", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.CreateSource", + "shortName": "CreateNamespace", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.CreateNamespace", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p1beta1/{parent=organizations/*}/sources" + "path": "/v1beta1/{parent=projects/*/locations/*}/namespaces" } ] }, { - "shortName": "DeleteNotificationConfig", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.DeleteNotificationConfig", + "shortName": "CreateService", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.CreateService", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1p1beta1/{name=organizations/*/notificationConfigs/*}" + "httpMethod": "POST", + "path": "/v1beta1/{parent=projects/*/locations/*/namespaces/*}/services" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetIamPolicy", + "shortName": "DeleteEndpoint", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.DeleteEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1p1beta1/{resource=organizations/*/sources/*}:getIamPolicy" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" } ] }, { - "shortName": "GetNotificationConfig", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetNotificationConfig", + "shortName": "DeleteNamespace", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.DeleteNamespace", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1p1beta1/{name=organizations/*/notificationConfigs/*}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*}" } ] }, { - "shortName": "GetOrganizationSettings", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetOrganizationSettings", + "shortName": "DeleteService", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.DeleteService", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1p1beta1/{name=organizations/*/organizationSettings}" + "httpMethod": "DELETE", + "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*/services/*}" } ] }, { - "shortName": "GetSource", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetSource", + "shortName": "GetEndpoint", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.GetEndpoint", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p1beta1/{name=organizations/*/sources/*}" + "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" } ] }, { - "shortName": "GroupAssets", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GroupAssets", + "shortName": "GetIamPolicy", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.GetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p1beta1/{parent=organizations/*}/assets:group" - }, - { - "httpMethod": "POST", - "path": "/v1p1beta1/{parent=folders/*}/assets:group" + "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*}:getIamPolicy" }, { "httpMethod": "POST", - "path": "/v1p1beta1/{parent=projects/*}/assets:group" + "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*/services/*}:getIamPolicy" } ] }, { - "shortName": "GroupFindings", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.GroupFindings", + "shortName": "GetNamespace", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.GetNamespace", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1p1beta1/{parent=organizations/*/sources/*}/findings:group" - }, - { - "httpMethod": "POST", - "path": "/v1p1beta1/{parent=folders/*/sources/*}/findings:group" - }, - { - "httpMethod": "POST", - "path": "/v1p1beta1/{parent=projects/*/sources/*}/findings:group" + "httpMethod": "GET", + "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*}" } ] }, { - "shortName": "ListAssets", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListAssets", + "shortName": "GetService", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.GetService", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p1beta1/{parent=organizations/*}/assets" - }, - { - "httpMethod": "GET", - "path": "/v1p1beta1/{parent=folders/*}/assets" - }, - { - "httpMethod": "GET", - "path": "/v1p1beta1/{parent=projects/*}/assets" + "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*/services/*}" } ] }, { - "shortName": "ListFindings", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListFindings", + "shortName": "ListEndpoints", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.ListEndpoints", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p1beta1/{parent=organizations/*/sources/*}/findings" - }, - { - "httpMethod": "GET", - "path": "/v1p1beta1/{parent=folders/*/sources/*}/findings" - }, - { - "httpMethod": "GET", - "path": "/v1p1beta1/{parent=projects/*/sources/*}/findings" + "path": "/v1beta1/{parent=projects/*/locations/*/namespaces/*/services/*}/endpoints" } ] }, { - "shortName": "ListNotificationConfigs", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListNotificationConfigs", + "shortName": "ListNamespaces", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.ListNamespaces", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p1beta1/{parent=organizations/*}/notificationConfigs" + "path": "/v1beta1/{parent=projects/*/locations/*}/namespaces" } ] }, { - "shortName": "ListSources", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListSources", + "shortName": "ListServices", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.ListServices", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p1beta1/{parent=organizations/*}/sources" - }, - { - "httpMethod": "GET", - "path": "/v1p1beta1/{parent=folders/*}/sources" - }, - { - "httpMethod": "GET", - "path": "/v1p1beta1/{parent=projects/*}/sources" + "path": "/v1beta1/{parent=projects/*/locations/*/namespaces/*}/services" } ] }, { - "shortName": "RunAssetDiscovery", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.RunAssetDiscovery", + "shortName": "SetIamPolicy", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.SetIamPolicy", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p1beta1/{parent=organizations/*}/assets:runDiscovery" + "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*}:setIamPolicy" + }, + { + "httpMethod": "POST", + "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*/services/*}:setIamPolicy" } ] }, { - "shortName": "SetFindingState", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.SetFindingState", + "shortName": "TestIamPermissions", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.TestIamPermissions", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p1beta1/{name=organizations/*/sources/*/findings/*}:setState" - }, - { - "httpMethod": "POST", - "path": "/v1p1beta1/{name=folders/*/sources/*/findings/*}:setState" + "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*}:testIamPermissions" }, { "httpMethod": "POST", - "path": "/v1p1beta1/{name=projects/*/sources/*/findings/*}:setState" + "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*/services/*}:testIamPermissions" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.SetIamPolicy", + "shortName": "UpdateEndpoint", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.UpdateEndpoint", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1p1beta1/{resource=organizations/*/sources/*}:setIamPolicy" + "httpMethod": "PATCH", + "path": "/v1beta1/{endpoint.name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.TestIamPermissions", + "shortName": "UpdateNamespace", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.UpdateNamespace", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1p1beta1/{resource=organizations/*/sources/*}:testIamPermissions" + "httpMethod": "PATCH", + "path": "/v1beta1/{namespace.name=projects/*/locations/*/namespaces/*}" } ] }, { - "shortName": "UpdateFinding", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateFinding", + "shortName": "UpdateService", + "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.UpdateService", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1p1beta1/{finding.name=organizations/*/sources/*/findings/*}" - }, - { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{finding.name=folders/*/sources/*/findings/*}" - }, + "path": "/v1beta1/{service.name=projects/*/locations/*/namespaces/*/services/*}" + } + ] + } + ] + } + ], + "configFile": "servicedirectory_v1beta1.yaml" + }, + { + "id": "google.cloud.shell.v1", + "directory": "google/cloud/shell/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "cloudshell.googleapis.com", + "title": "Cloud Shell API", + "description": "Allows users to start, configure, and connect to interactive shell sessions running in the cloud.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/shell/v1;shell": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.shell.v1": 1 + } + } + }, + "services": [ + { + "shortName": "CloudShellService", + "fullName": "google.cloud.shell.v1.CloudShellService", + "methods": [ + { + "shortName": "AddPublicKey", + "fullName": "google.cloud.shell.v1.CloudShellService.AddPublicKey", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{finding.name=projects/*/sources/*/findings/*}" + "httpMethod": "POST", + "path": "/v1/{environment=users/*/environments/*}:addPublicKey" } ] }, { - "shortName": "UpdateNotificationConfig", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateNotificationConfig", + "shortName": "AuthorizeEnvironment", + "fullName": "google.cloud.shell.v1.CloudShellService.AuthorizeEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{notification_config.name=organizations/*/notificationConfigs/*}" + "httpMethod": "POST", + "path": "/v1/{name=users/*/environments/*}:authorize" } ] }, { - "shortName": "UpdateOrganizationSettings", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateOrganizationSettings", + "shortName": "GetEnvironment", + "fullName": "google.cloud.shell.v1.CloudShellService.GetEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{organization_settings.name=organizations/*/organizationSettings}" + "httpMethod": "GET", + "path": "/v1/{name=users/*/environments/*}" } ] }, { - "shortName": "UpdateSecurityMarks", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateSecurityMarks", + "shortName": "RemovePublicKey", + "fullName": "google.cloud.shell.v1.CloudShellService.RemovePublicKey", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{security_marks.name=organizations/*/assets/*/securityMarks}" - }, - { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{security_marks.name=folders/*/assets/*/securityMarks}" - }, - { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{security_marks.name=projects/*/assets/*/securityMarks}" - }, - { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{security_marks.name=organizations/*/sources/*/findings/*/securityMarks}" - }, - { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{security_marks.name=folders/*/sources/*/findings/*/securityMarks}" - }, - { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{security_marks.name=projects/*/sources/*/findings/*/securityMarks}" + "httpMethod": "POST", + "path": "/v1/{environment=users/*/environments/*}:removePublicKey" } ] }, { - "shortName": "UpdateSource", - "fullName": "google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateSource", + "shortName": "StartEnvironment", + "fullName": "google.cloud.shell.v1.CloudShellService.StartEnvironment", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{source.name=organizations/*/sources/*}" + "httpMethod": "POST", + "path": "/v1/{name=users/*/environments/*}:start" } ] } ] } - ] + ], + "configFile": "cloudshell_v1.yaml" }, { - "id": "google.cloud.servicedirectory.v1", - "directory": "google/cloud/servicedirectory/v1", + "id": "google.cloud.speech.v1", + "directory": "google/cloud/speech/v1", "version": "v1", "majorVersion": "v1", - "hostName": "servicedirectory.googleapis.com", - "title": "Service Directory API", - "description": "Service Directory is a platform for discovering, publishing, and connecting services.", + "hostName": "speech.googleapis.com", + "title": "Cloud Speech-to-Text API", + "description": "Converts audio to text by applying powerful neural network models.", "importDirectories": [ "google/api", - "google/cloud/servicedirectory/v1", - "google/iam/v1", - "google/protobuf" + "google/cloud/speech/v1", + "google/longrunning", + "google/protobuf", + "google/rpc" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.servicedirectory.v1": 5 - } - }, - "java_multiple_files": { + "cc_enable_arenas": { "valueCounts": { - "true": 5 + "true": 2 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/servicedirectory/v1;servicedirectory": 5 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 5 + "google.golang.org/genproto/googleapis/cloud/speech/v1;speech": 2 } }, - "csharp_namespace": { + "java_multiple_files": { "valueCounts": { - "Google.Cloud.ServiceDirectory.V1": 5 + "true": 2 } }, - "php_namespace": { + "java_package": { "valueCounts": { - "Google\\Cloud\\ServiceDirectory\\V1": 5 + "com.google.cloud.speech.v1": 2 } }, - "ruby_package": { + "objc_class_prefix": { "valueCounts": { - "Google::Cloud::ServiceDirectory::V1": 5 + "GCS": 2 } } }, "services": [ { - "shortName": "LookupService", - "fullName": "google.cloud.servicedirectory.v1.LookupService", + "shortName": "Speech", + "fullName": "google.cloud.speech.v1.Speech", "methods": [ { - "shortName": "ResolveService", - "fullName": "google.cloud.servicedirectory.v1.LookupService.ResolveService", + "shortName": "LongRunningRecognize", + "fullName": "google.cloud.speech.v1.Speech.LongRunningRecognize", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/namespaces/*/services/*}:resolve" + "path": "/v1/speech:longrunningrecognize" } ] + }, + { + "shortName": "Recognize", + "fullName": "google.cloud.speech.v1.Speech.Recognize", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/speech:recognize" + } + ] + }, + { + "shortName": "StreamingRecognize", + "fullName": "google.cloud.speech.v1.Speech.StreamingRecognize", + "mode": "BIDIRECTIONAL_STREAMING" } ] + } + ], + "configFile": "speech_v1.yaml" + }, + { + "id": "google.cloud.speech.v1p1beta1", + "directory": "google/cloud/speech/v1p1beta1", + "version": "v1p1beta1", + "majorVersion": "v1", + "hostName": "speech.googleapis.com", + "title": "Cloud Speech-to-Text API", + "description": "Converts audio to text by applying powerful neural network models.", + "importDirectories": [ + "google/api", + "google/cloud/speech/v1p1beta1", + "google/longrunning", + "google/protobuf", + "google/rpc" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 3 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/speech/v1p1beta1;speech": 3 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 3 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.speech.v1p1beta1": 3 + } }, + "objc_class_prefix": { + "valueCounts": { + "GCS": 3 + } + } + }, + "services": [ { - "shortName": "RegistrationService", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService", + "shortName": "Adaptation", + "fullName": "google.cloud.speech.v1p1beta1.Adaptation", "methods": [ { - "shortName": "CreateEndpoint", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.CreateEndpoint", + "shortName": "CreateCustomClass", + "fullName": "google.cloud.speech.v1p1beta1.Adaptation.CreateCustomClass", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/namespaces/*/services/*}/endpoints" + "path": "/v1p1beta1/{parent=projects/*/locations/*}/customClasses" } ] }, { - "shortName": "CreateNamespace", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.CreateNamespace", + "shortName": "CreatePhraseSet", + "fullName": "google.cloud.speech.v1p1beta1.Adaptation.CreatePhraseSet", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/namespaces" + "path": "/v1p1beta1/{parent=projects/*/locations/*}/phraseSets" } ] }, { - "shortName": "CreateService", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.CreateService", + "shortName": "DeleteCustomClass", + "fullName": "google.cloud.speech.v1p1beta1.Adaptation.DeleteCustomClass", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*/namespaces/*}/services" + "httpMethod": "DELETE", + "path": "/v1p1beta1/{name=projects/*/locations/*/customClasses/*}" } ] }, { - "shortName": "DeleteEndpoint", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.DeleteEndpoint", + "shortName": "DeletePhraseSet", + "fullName": "google.cloud.speech.v1p1beta1.Adaptation.DeletePhraseSet", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" + "path": "/v1p1beta1/{name=projects/*/locations/*/phraseSets/*}" } ] }, { - "shortName": "DeleteNamespace", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.DeleteNamespace", + "shortName": "GetCustomClass", + "fullName": "google.cloud.speech.v1p1beta1.Adaptation.GetCustomClass", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/namespaces/*}" + "httpMethod": "GET", + "path": "/v1p1beta1/{name=projects/*/locations/*/customClasses/*}" } ] }, { - "shortName": "DeleteService", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.DeleteService", + "shortName": "GetPhraseSet", + "fullName": "google.cloud.speech.v1p1beta1.Adaptation.GetPhraseSet", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/namespaces/*/services/*}" + "httpMethod": "GET", + "path": "/v1p1beta1/{name=projects/*/locations/*/phraseSets/*}" } ] }, { - "shortName": "GetEndpoint", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.GetEndpoint", + "shortName": "ListCustomClasses", + "fullName": "google.cloud.speech.v1p1beta1.Adaptation.ListCustomClasses", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" + "path": "/v1p1beta1/{parent=projects/*/locations/*}/customClasses" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.GetIamPolicy", + "shortName": "ListPhraseSet", + "fullName": "google.cloud.speech.v1p1beta1.Adaptation.ListPhraseSet", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/namespaces/*}:getIamPolicy" - }, + "httpMethod": "GET", + "path": "/v1p1beta1/{parent=projects/*/locations/*}/phraseSets" + } + ] + }, + { + "shortName": "UpdateCustomClass", + "fullName": "google.cloud.speech.v1p1beta1.Adaptation.UpdateCustomClass", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1p1beta1/{custom_class.name=projects/*/locations/*/customClasses/*}" + } + ] + }, + { + "shortName": "UpdatePhraseSet", + "fullName": "google.cloud.speech.v1p1beta1.Adaptation.UpdatePhraseSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1p1beta1/{phrase_set.name=projects/*/locations/*/phraseSets/*}" + } + ] + } + ] + }, + { + "shortName": "Speech", + "fullName": "google.cloud.speech.v1p1beta1.Speech", + "methods": [ + { + "shortName": "LongRunningRecognize", + "fullName": "google.cloud.speech.v1p1beta1.Speech.LongRunningRecognize", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/namespaces/*/services/*}:getIamPolicy" + "path": "/v1p1beta1/speech:longrunningrecognize" } ] }, { - "shortName": "GetNamespace", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.GetNamespace", + "shortName": "Recognize", + "fullName": "google.cloud.speech.v1p1beta1.Speech.Recognize", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/namespaces/*}" + "httpMethod": "POST", + "path": "/v1p1beta1/speech:recognize" } ] }, { - "shortName": "GetService", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.GetService", + "shortName": "StreamingRecognize", + "fullName": "google.cloud.speech.v1p1beta1.Speech.StreamingRecognize", + "mode": "BIDIRECTIONAL_STREAMING" + } + ] + } + ], + "configFile": "speech_v1p1beta1.yaml" + }, + { + "id": "google.cloud.sql.v1", + "directory": "google/cloud/sql/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "sqladmin.googleapis.com", + "title": "Cloud SQL Admin API", + "description": "API for Cloud SQL database instance management", + "importDirectories": [ + "google/api", + "google/cloud/sql/v1", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/sql/v1;sql": 11 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 11 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.sql.v1": 11 + } + } + }, + "services": [ + { + "shortName": "SqlBackupRunsService", + "fullName": "google.cloud.sql.v1.SqlBackupRunsService", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.sql.v1.SqlBackupRunsService.Delete", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/namespaces/*/services/*}" + "httpMethod": "DELETE", + "path": "/v1/projects/{project}/instances/{instance}/backupRuns/{id}" } ] }, { - "shortName": "ListEndpoints", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.ListEndpoints", + "shortName": "Get", + "fullName": "google.cloud.sql.v1.SqlBackupRunsService.Get", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/namespaces/*/services/*}/endpoints" + "path": "/v1/projects/{project}/instances/{instance}/backupRuns/{id}" } ] }, { - "shortName": "ListNamespaces", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.ListNamespaces", + "shortName": "Insert", + "fullName": "google.cloud.sql.v1.SqlBackupRunsService.Insert", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/namespaces" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances/{instance}/backupRuns" } ] }, { - "shortName": "ListServices", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.ListServices", + "shortName": "List", + "fullName": "google.cloud.sql.v1.SqlBackupRunsService.List", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*/namespaces/*}/services" + "path": "/v1/projects/{project}/instances/{instance}/backupRuns" } ] - }, + } + ] + }, + { + "shortName": "SqlConnectService", + "fullName": "google.cloud.sql.v1.SqlConnectService", + "methods": [ { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.SetIamPolicy", + "shortName": "GenerateEphemeralCert", + "fullName": "google.cloud.sql.v1.SqlConnectService.GenerateEphemeralCert", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/namespaces/*}:setIamPolicy" - }, + "path": "/v1/projects/{project}/instances/{instance}:generateEphemeralCert" + } + ] + }, + { + "shortName": "GetConnectSettings", + "fullName": "google.cloud.sql.v1.SqlConnectService.GetConnectSettings", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/namespaces/*/services/*}:setIamPolicy" + "httpMethod": "GET", + "path": "/v1/projects/{project}/instances/{instance}/connectSettings" + } + ] + } + ] + }, + { + "shortName": "SqlDatabasesService", + "fullName": "google.cloud.sql.v1.SqlDatabasesService", + "methods": [ + { + "shortName": "Delete", + "fullName": "google.cloud.sql.v1.SqlDatabasesService.Delete", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/projects/{project}/instances/{instance}/databases/{database}" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.TestIamPermissions", + "shortName": "Get", + "fullName": "google.cloud.sql.v1.SqlDatabasesService.Get", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/namespaces/*}:testIamPermissions" - }, + "httpMethod": "GET", + "path": "/v1/projects/{project}/instances/{instance}/databases/{database}" + } + ] + }, + { + "shortName": "Insert", + "fullName": "google.cloud.sql.v1.SqlDatabasesService.Insert", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v1/{resource=projects/*/locations/*/namespaces/*/services/*}:testIamPermissions" + "path": "/v1/projects/{project}/instances/{instance}/databases" } ] }, { - "shortName": "UpdateEndpoint", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.UpdateEndpoint", + "shortName": "List", + "fullName": "google.cloud.sql.v1.SqlDatabasesService.List", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{endpoint.name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" + "httpMethod": "GET", + "path": "/v1/projects/{project}/instances/{instance}/databases" } ] }, { - "shortName": "UpdateNamespace", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.UpdateNamespace", + "shortName": "Patch", + "fullName": "google.cloud.sql.v1.SqlDatabasesService.Patch", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1/{namespace.name=projects/*/locations/*/namespaces/*}" + "path": "/v1/projects/{project}/instances/{instance}/databases/{database}" } ] }, { - "shortName": "UpdateService", - "fullName": "google.cloud.servicedirectory.v1.RegistrationService.UpdateService", + "shortName": "Update", + "fullName": "google.cloud.sql.v1.SqlDatabasesService.Update", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1/{service.name=projects/*/locations/*/namespaces/*/services/*}" + "httpMethod": "PUT", + "path": "/v1/projects/{project}/instances/{instance}/databases/{database}" } ] } ] - } - ] - }, - { - "id": "google.cloud.servicedirectory.v1beta1", - "directory": "google/cloud/servicedirectory/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "servicedirectory.googleapis.com", - "title": "Service Directory API", - "description": "Allows the registration and lookup of services.", - "importDirectories": [ - "google/api", - "google/cloud/servicedirectory/v1beta1", - "google/iam/v1", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.servicedirectory.v1beta1": 5 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 5 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/servicedirectory/v1beta1;servicedirectory": 5 - } }, - "cc_enable_arenas": { - "valueCounts": { - "true": 5 - } - }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.ServiceDirectory.V1Beta1": 5 - } - }, - "php_namespace": { - "valueCounts": { - "Google\\Cloud\\ServiceDirectory\\V1beta1": 5 - } - }, - "ruby_package": { - "valueCounts": { - "Google::Cloud::ServiceDirectory::V1beta1": 5 - } - } - }, - "services": [ { - "shortName": "LookupService", - "fullName": "google.cloud.servicedirectory.v1beta1.LookupService", + "shortName": "SqlFlagsService", + "fullName": "google.cloud.sql.v1.SqlFlagsService", "methods": [ { - "shortName": "ResolveService", - "fullName": "google.cloud.servicedirectory.v1beta1.LookupService.ResolveService", + "shortName": "List", + "fullName": "google.cloud.sql.v1.SqlFlagsService.List", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*/services/*}:resolve" + "httpMethod": "GET", + "path": "/v1/flags" } ] } ] }, { - "shortName": "RegistrationService", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService", + "shortName": "SqlInstanceNamesService", + "fullName": "google.cloud.sql.v1.SqlInstanceNamesService" + }, + { + "shortName": "SqlInstancesService", + "fullName": "google.cloud.sql.v1.SqlInstancesService", "methods": [ { - "shortName": "CreateEndpoint", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.CreateEndpoint", + "shortName": "AddServerCa", + "fullName": "google.cloud.sql.v1.SqlInstancesService.AddServerCa", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/namespaces/*/services/*}/endpoints" + "path": "/v1/projects/{project}/instances/{instance}/addServerCa" } ] }, { - "shortName": "CreateNamespace", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.CreateNamespace", + "shortName": "Clone", + "fullName": "google.cloud.sql.v1.SqlInstancesService.Clone", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*}/namespaces" + "path": "/v1/projects/{project}/instances/{instance}/clone" } ] }, { - "shortName": "CreateService", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.CreateService", + "shortName": "CreateEphemeral", + "fullName": "google.cloud.sql.v1.SqlInstancesService.CreateEphemeral", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{parent=projects/*/locations/*/namespaces/*}/services" + "path": "/v1/projects/{project}/instances/{instance}/createEphemeral" } ] }, { - "shortName": "DeleteEndpoint", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.DeleteEndpoint", + "shortName": "Delete", + "fullName": "google.cloud.sql.v1.SqlInstancesService.Delete", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" + "path": "/v1/projects/{project}/instances/{instance}" } ] }, { - "shortName": "DeleteNamespace", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.DeleteNamespace", + "shortName": "DemoteMaster", + "fullName": "google.cloud.sql.v1.SqlInstancesService.DemoteMaster", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances/{instance}/demoteMaster" } ] }, { - "shortName": "DeleteService", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.DeleteService", + "shortName": "Export", + "fullName": "google.cloud.sql.v1.SqlInstancesService.Export", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*/services/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances/{instance}/export" } ] }, { - "shortName": "GetEndpoint", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.GetEndpoint", + "shortName": "Failover", + "fullName": "google.cloud.sql.v1.SqlInstancesService.Failover", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances/{instance}/failover" } ] }, { - "shortName": "GetIamPolicy", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.GetIamPolicy", + "shortName": "Get", + "fullName": "google.cloud.sql.v1.SqlInstancesService.Get", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*}:getIamPolicy" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*/services/*}:getIamPolicy" + "httpMethod": "GET", + "path": "/v1/projects/{project}/instances/{instance}" } ] }, { - "shortName": "GetNamespace", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.GetNamespace", + "shortName": "Import", + "fullName": "google.cloud.sql.v1.SqlInstancesService.Import", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances/{instance}/import" } ] }, { - "shortName": "GetService", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.GetService", + "shortName": "Insert", + "fullName": "google.cloud.sql.v1.SqlInstancesService.Insert", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{name=projects/*/locations/*/namespaces/*/services/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances" } ] }, { - "shortName": "ListEndpoints", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.ListEndpoints", + "shortName": "List", + "fullName": "google.cloud.sql.v1.SqlInstancesService.List", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/namespaces/*/services/*}/endpoints" + "path": "/v1/projects/{project}/instances" } ] }, { - "shortName": "ListNamespaces", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.ListNamespaces", + "shortName": "ListServerCas", + "fullName": "google.cloud.sql.v1.SqlInstancesService.ListServerCas", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/namespaces" + "path": "/v1/projects/{project}/instances/{instance}/listServerCas" } ] }, { - "shortName": "ListServices", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.ListServices", + "shortName": "Patch", + "fullName": "google.cloud.sql.v1.SqlInstancesService.Patch", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*/namespaces/*}/services" + "httpMethod": "PATCH", + "path": "/v1/projects/{project}/instances/{instance}" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.SetIamPolicy", + "shortName": "PromoteReplica", + "fullName": "google.cloud.sql.v1.SqlInstancesService.PromoteReplica", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*}:setIamPolicy" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*/services/*}:setIamPolicy" + "path": "/v1/projects/{project}/instances/{instance}/promoteReplica" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.TestIamPermissions", + "shortName": "RescheduleMaintenance", + "fullName": "google.cloud.sql.v1.SqlInstancesService.RescheduleMaintenance", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*}:testIamPermissions" - }, - { - "httpMethod": "POST", - "path": "/v1beta1/{resource=projects/*/locations/*/namespaces/*/services/*}:testIamPermissions" + "path": "/v1/projects/{project}/instances/{instance}/rescheduleMaintenance" } ] }, { - "shortName": "UpdateEndpoint", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.UpdateEndpoint", + "shortName": "ResetSslConfig", + "fullName": "google.cloud.sql.v1.SqlInstancesService.ResetSslConfig", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{endpoint.name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances/{instance}/resetSslConfig" } ] }, { - "shortName": "UpdateNamespace", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.UpdateNamespace", + "shortName": "Restart", + "fullName": "google.cloud.sql.v1.SqlInstancesService.Restart", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{namespace.name=projects/*/locations/*/namespaces/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances/{instance}/restart" } ] }, { - "shortName": "UpdateService", - "fullName": "google.cloud.servicedirectory.v1beta1.RegistrationService.UpdateService", + "shortName": "RestoreBackup", + "fullName": "google.cloud.sql.v1.SqlInstancesService.RestoreBackup", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1beta1/{service.name=projects/*/locations/*/namespaces/*/services/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances/{instance}/restoreBackup" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.shell.v1", - "directory": "google/cloud/shell/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "cloudshell.googleapis.com", - "title": "Cloud Shell API", - "description": "Allows users to start, configure, and connect to interactive shell sessions running in the cloud.", - "importDirectories": [ - "google/api", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.shell.v1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/shell/v1;shell": 1 - } - } - }, - "services": [ - { - "shortName": "CloudShellService", - "fullName": "google.cloud.shell.v1.CloudShellService", - "methods": [ + }, { - "shortName": "AddPublicKey", - "fullName": "google.cloud.shell.v1.CloudShellService.AddPublicKey", + "shortName": "RotateServerCa", + "fullName": "google.cloud.sql.v1.SqlInstancesService.RotateServerCa", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{environment=users/*/environments/*}:addPublicKey" + "path": "/v1/projects/{project}/instances/{instance}/rotateServerCa" } ] }, { - "shortName": "AuthorizeEnvironment", - "fullName": "google.cloud.shell.v1.CloudShellService.AuthorizeEnvironment", + "shortName": "StartExternalSync", + "fullName": "google.cloud.sql.v1.SqlInstancesService.StartExternalSync", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=users/*/environments/*}:authorize" + "path": "/v1/projects/{project}/instances/{instance}/startExternalSync" } ] }, { - "shortName": "GetEnvironment", - "fullName": "google.cloud.shell.v1.CloudShellService.GetEnvironment", + "shortName": "StartReplica", + "fullName": "google.cloud.sql.v1.SqlInstancesService.StartReplica", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=users/*/environments/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances/{instance}/startReplica" } ] }, { - "shortName": "RemovePublicKey", - "fullName": "google.cloud.shell.v1.CloudShellService.RemovePublicKey", + "shortName": "StopReplica", + "fullName": "google.cloud.sql.v1.SqlInstancesService.StopReplica", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{environment=users/*/environments/*}:removePublicKey" + "path": "/v1/projects/{project}/instances/{instance}/stopReplica" } ] }, { - "shortName": "StartEnvironment", - "fullName": "google.cloud.shell.v1.CloudShellService.StartEnvironment", + "shortName": "TruncateLog", + "fullName": "google.cloud.sql.v1.SqlInstancesService.TruncateLog", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=users/*/environments/*}:start" + "path": "/v1/projects/{project}/instances/{instance}/truncateLog" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.speech.v1", - "directory": "google/cloud/speech/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "speech.googleapis.com", - "title": "Cloud Speech-to-Text API", - "description": "Converts audio to text by applying powerful neural network models.", - "importDirectories": [ - "google/api", - "google/longrunning", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.speech.v1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/speech/v1;speech": 1 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 1 - } - }, - "objc_class_prefix": { - "valueCounts": { - "GCS": 1 - } - } - }, - "services": [ - { - "shortName": "Speech", - "fullName": "google.cloud.speech.v1.Speech", - "methods": [ + }, { - "shortName": "LongRunningRecognize", - "fullName": "google.cloud.speech.v1.Speech.LongRunningRecognize", + "shortName": "Update", + "fullName": "google.cloud.sql.v1.SqlInstancesService.Update", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1/speech:longrunningrecognize" + "httpMethod": "PUT", + "path": "/v1/projects/{project}/instances/{instance}" } ] }, { - "shortName": "Recognize", - "fullName": "google.cloud.speech.v1.Speech.Recognize", + "shortName": "VerifyExternalSyncSettings", + "fullName": "google.cloud.sql.v1.SqlInstancesService.VerifyExternalSyncSettings", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/speech:recognize" + "path": "/v1/projects/{project}/instances/{instance}/verifyExternalSyncSettings" } ] - }, - { - "shortName": "StreamingRecognize", - "fullName": "google.cloud.speech.v1.Speech.StreamingRecognize", - "mode": "BIDIRECTIONAL_STREAMING" } ] - } - ] - }, - { - "id": "google.cloud.speech.v1p1beta1", - "directory": "google/cloud/speech/v1p1beta1", - "version": "v1p1beta1", - "majorVersion": "v1", - "hostName": "speech.googleapis.com", - "title": "Cloud Speech-to-Text API", - "description": "Converts audio to text by applying powerful neural network models.", - "importDirectories": [ - "google/api", - "google/cloud/speech/v1p1beta1", - "google/longrunning", - "google/protobuf", - "google/rpc" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.speech.v1p1beta1": 3 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 3 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/speech/v1p1beta1;speech": 3 - } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 3 - } }, - "objc_class_prefix": { - "valueCounts": { - "GCS": 3 - } - } - }, - "services": [ { - "shortName": "Adaptation", - "fullName": "google.cloud.speech.v1p1beta1.Adaptation", + "shortName": "SqlOperationsService", + "fullName": "google.cloud.sql.v1.SqlOperationsService", "methods": [ { - "shortName": "CreateCustomClass", - "fullName": "google.cloud.speech.v1p1beta1.Adaptation.CreateCustomClass", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v1p1beta1/{parent=projects/*/locations/*}/customClasses" - } - ] - }, - { - "shortName": "CreatePhraseSet", - "fullName": "google.cloud.speech.v1p1beta1.Adaptation.CreatePhraseSet", + "shortName": "Get", + "fullName": "google.cloud.sql.v1.SqlOperationsService.Get", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1p1beta1/{parent=projects/*/locations/*}/phraseSets" + "httpMethod": "GET", + "path": "/v1/projects/{project}/operations/{operation}" } ] }, { - "shortName": "DeleteCustomClass", - "fullName": "google.cloud.speech.v1p1beta1.Adaptation.DeleteCustomClass", + "shortName": "List", + "fullName": "google.cloud.sql.v1.SqlOperationsService.List", "mode": "UNARY", "bindings": [ { - "httpMethod": "DELETE", - "path": "/v1p1beta1/{name=projects/*/locations/*/customClasses/*}" + "httpMethod": "GET", + "path": "/v1/projects/{project}/operations" } ] - }, + } + ] + }, + { + "shortName": "SqlSslCertsService", + "fullName": "google.cloud.sql.v1.SqlSslCertsService", + "methods": [ { - "shortName": "DeletePhraseSet", - "fullName": "google.cloud.speech.v1p1beta1.Adaptation.DeletePhraseSet", + "shortName": "Delete", + "fullName": "google.cloud.sql.v1.SqlSslCertsService.Delete", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1p1beta1/{name=projects/*/locations/*/phraseSets/*}" + "path": "/v1/projects/{project}/instances/{instance}/sslCerts/{sha1_fingerprint}" } ] }, { - "shortName": "GetCustomClass", - "fullName": "google.cloud.speech.v1p1beta1.Adaptation.GetCustomClass", + "shortName": "Get", + "fullName": "google.cloud.sql.v1.SqlSslCertsService.Get", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p1beta1/{name=projects/*/locations/*/customClasses/*}" + "path": "/v1/projects/{project}/instances/{instance}/sslCerts/{sha1_fingerprint}" } ] }, { - "shortName": "GetPhraseSet", - "fullName": "google.cloud.speech.v1p1beta1.Adaptation.GetPhraseSet", + "shortName": "Insert", + "fullName": "google.cloud.sql.v1.SqlSslCertsService.Insert", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1p1beta1/{name=projects/*/locations/*/phraseSets/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances/{instance}/sslCerts" } ] }, { - "shortName": "ListCustomClasses", - "fullName": "google.cloud.speech.v1p1beta1.Adaptation.ListCustomClasses", + "shortName": "List", + "fullName": "google.cloud.sql.v1.SqlSslCertsService.List", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p1beta1/{parent=projects/*/locations/*}/customClasses" + "path": "/v1/projects/{project}/instances/{instance}/sslCerts" } ] - }, + } + ] + }, + { + "shortName": "SqlTiersService", + "fullName": "google.cloud.sql.v1.SqlTiersService", + "methods": [ { - "shortName": "ListPhraseSet", - "fullName": "google.cloud.speech.v1p1beta1.Adaptation.ListPhraseSet", + "shortName": "List", + "fullName": "google.cloud.sql.v1.SqlTiersService.List", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p1beta1/{parent=projects/*/locations/*}/phraseSets" + "path": "/v1/projects/{project}/tiers" } ] - }, + } + ] + }, + { + "shortName": "SqlUsersService", + "fullName": "google.cloud.sql.v1.SqlUsersService", + "methods": [ { - "shortName": "UpdateCustomClass", - "fullName": "google.cloud.speech.v1p1beta1.Adaptation.UpdateCustomClass", + "shortName": "Delete", + "fullName": "google.cloud.sql.v1.SqlUsersService.Delete", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{custom_class.name=projects/*/locations/*/customClasses/*}" + "httpMethod": "DELETE", + "path": "/v1/projects/{project}/instances/{instance}/users" } ] }, { - "shortName": "UpdatePhraseSet", - "fullName": "google.cloud.speech.v1p1beta1.Adaptation.UpdatePhraseSet", + "shortName": "Insert", + "fullName": "google.cloud.sql.v1.SqlUsersService.Insert", "mode": "UNARY", "bindings": [ { - "httpMethod": "PATCH", - "path": "/v1p1beta1/{phrase_set.name=projects/*/locations/*/phraseSets/*}" + "httpMethod": "POST", + "path": "/v1/projects/{project}/instances/{instance}/users" } ] - } - ] - }, - { - "shortName": "Speech", - "fullName": "google.cloud.speech.v1p1beta1.Speech", - "methods": [ + }, { - "shortName": "LongRunningRecognize", - "fullName": "google.cloud.speech.v1p1beta1.Speech.LongRunningRecognize", + "shortName": "List", + "fullName": "google.cloud.sql.v1.SqlUsersService.List", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1p1beta1/speech:longrunningrecognize" + "httpMethod": "GET", + "path": "/v1/projects/{project}/instances/{instance}/users" } ] }, { - "shortName": "Recognize", - "fullName": "google.cloud.speech.v1p1beta1.Speech.Recognize", + "shortName": "Update", + "fullName": "google.cloud.sql.v1.SqlUsersService.Update", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1p1beta1/speech:recognize" + "httpMethod": "PUT", + "path": "/v1/projects/{project}/instances/{instance}/users" } ] - }, - { - "shortName": "StreamingRecognize", - "fullName": "google.cloud.speech.v1p1beta1.Speech.StreamingRecognize", - "mode": "BIDIRECTIONAL_STREAMING" } ] } - ] + ], + "configFile": "sqladmin_v1.yaml" }, { "id": "google.cloud.sql.v1beta4", @@ -44401,19 +59072,19 @@ "google/protobuf" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.sql.v1beta4": 4 + "google.golang.org/genproto/googleapis/cloud/sql/v1beta4;sql": 5 } }, "java_multiple_files": { "valueCounts": { - "true": 4 + "true": 5 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/sql/v1beta4;sql": 4 + "com.google.cloud.sql.v1beta4": 5 } } }, @@ -44468,6 +59139,34 @@ } ] }, + { + "shortName": "SqlConnectService", + "fullName": "google.cloud.sql.v1beta4.SqlConnectService", + "methods": [ + { + "shortName": "GenerateEphemeralCert", + "fullName": "google.cloud.sql.v1beta4.SqlConnectService.GenerateEphemeralCert", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/sql/v1beta4/projects/{project}/instances/{instance}:generateEphemeralCert" + } + ] + }, + { + "shortName": "GetConnectSettings", + "fullName": "google.cloud.sql.v1beta4.SqlConnectService.GetConnectSettings", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/sql/v1beta4/projects/{project}/instances/{instance}/connectSettings" + } + ] + } + ] + }, { "shortName": "SqlDatabasesService", "fullName": "google.cloud.sql.v1beta4.SqlDatabasesService", @@ -44983,7 +59682,8 @@ } ] } - ] + ], + "configFile": "sqladmin_v1beta4.yaml" }, { "id": "google.cloud.talent.v4", @@ -45002,9 +59702,9 @@ "google/type" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.talent.v4": 12 + "google.golang.org/genproto/googleapis/cloud/talent/v4;talent": 12 } }, "java_multiple_files": { @@ -45012,9 +59712,9 @@ "true": 12 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/talent/v4;talent": 12 + "com.google.cloud.talent.v4": 12 } }, "objc_class_prefix": { @@ -45296,7 +59996,8 @@ } ] } - ] + ], + "configFile": "jobs_v4.yaml" }, { "id": "google.cloud.talent.v4beta1", @@ -45315,9 +60016,9 @@ "google/type" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.talent.v4beta1": 17 + "google.golang.org/genproto/googleapis/cloud/talent/v4beta1;talent": 17 } }, "java_multiple_files": { @@ -45325,9 +60026,9 @@ "true": 17 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/talent/v4beta1;talent": 17 + "com.google.cloud.talent.v4beta1": 17 } }, "objc_class_prefix": { @@ -45810,7 +60511,8 @@ } ] } - ] + ], + "configFile": "jobs_v4beta1.yaml" }, { "id": "google.cloud.tasks.v2", @@ -45828,9 +60530,9 @@ "google/rpc" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.tasks.v2": 4 + "google.golang.org/genproto/googleapis/cloud/tasks/v2;tasks": 4 } }, "java_multiple_files": { @@ -45838,15 +60540,15 @@ "true": 4 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/tasks/v2;tasks": 4 + "com.google.cloud.tasks.v2": 4 } }, "objc_class_prefix": { "valueCounts": { - "TASKS": 1, - "": 3 + "": 3, + "TASKS": 1 } } }, @@ -46033,7 +60735,8 @@ } ] } - ] + ], + "configFile": "cloudtasks_v2.yaml" }, { "id": "google.cloud.tasks.v2beta2", @@ -46051,9 +60754,9 @@ "google/rpc" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.tasks.v2beta2": 5 + "google.golang.org/genproto/googleapis/cloud/tasks/v2beta2;tasks": 5 } }, "java_multiple_files": { @@ -46061,15 +60764,15 @@ "true": 5 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/tasks/v2beta2;tasks": 5 + "com.google.cloud.tasks.v2beta2": 5 } }, "objc_class_prefix": { "valueCounts": { - "TASKS": 1, - "": 4 + "": 4, + "TASKS": 1 } } }, @@ -46300,7 +61003,8 @@ } ] } - ] + ], + "configFile": "cloudtasks_v2beta2.yaml" }, { "id": "google.cloud.tasks.v2beta3", @@ -46318,9 +61022,9 @@ "google/rpc" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.tasks.v2beta3": 4 + "google.golang.org/genproto/googleapis/cloud/tasks/v2beta3;tasks": 4 } }, "java_multiple_files": { @@ -46328,15 +61032,15 @@ "true": 4 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/tasks/v2beta3;tasks": 4 + "com.google.cloud.tasks.v2beta3": 4 } }, "objc_class_prefix": { "valueCounts": { - "TASKS": 1, - "": 3 + "": 3, + "TASKS": 1 } } }, @@ -46406,782 +61110,1375 @@ "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta3/{name=projects/*/locations/*/queues/*}" + "httpMethod": "GET", + "path": "/v2beta3/{name=projects/*/locations/*/queues/*}" + } + ] + }, + { + "shortName": "GetTask", + "fullName": "google.cloud.tasks.v2beta3.CloudTasks.GetTask", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2beta3/{name=projects/*/locations/*/queues/*/tasks/*}" + } + ] + }, + { + "shortName": "ListQueues", + "fullName": "google.cloud.tasks.v2beta3.CloudTasks.ListQueues", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2beta3/{parent=projects/*/locations/*}/queues" + } + ] + }, + { + "shortName": "ListTasks", + "fullName": "google.cloud.tasks.v2beta3.CloudTasks.ListTasks", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v2beta3/{parent=projects/*/locations/*/queues/*}/tasks" + } + ] + }, + { + "shortName": "PauseQueue", + "fullName": "google.cloud.tasks.v2beta3.CloudTasks.PauseQueue", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2beta3/{name=projects/*/locations/*/queues/*}:pause" + } + ] + }, + { + "shortName": "PurgeQueue", + "fullName": "google.cloud.tasks.v2beta3.CloudTasks.PurgeQueue", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2beta3/{name=projects/*/locations/*/queues/*}:purge" + } + ] + }, + { + "shortName": "ResumeQueue", + "fullName": "google.cloud.tasks.v2beta3.CloudTasks.ResumeQueue", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2beta3/{name=projects/*/locations/*/queues/*}:resume" + } + ] + }, + { + "shortName": "RunTask", + "fullName": "google.cloud.tasks.v2beta3.CloudTasks.RunTask", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2beta3/{name=projects/*/locations/*/queues/*/tasks/*}:run" + } + ] + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.cloud.tasks.v2beta3.CloudTasks.SetIamPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2beta3/{resource=projects/*/locations/*/queues/*}:setIamPolicy" + } + ] + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.cloud.tasks.v2beta3.CloudTasks.TestIamPermissions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2beta3/{resource=projects/*/locations/*/queues/*}:testIamPermissions" + } + ] + }, + { + "shortName": "UpdateQueue", + "fullName": "google.cloud.tasks.v2beta3.CloudTasks.UpdateQueue", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v2beta3/{queue.name=projects/*/locations/*/queues/*}" + } + ] + } + ] + } + ], + "configFile": "cloudtasks_v2beta3.yaml" + }, + { + "id": "google.cloud.texttospeech.v1", + "directory": "google/cloud/texttospeech/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "texttospeech.googleapis.com", + "title": "Cloud Text-to-Speech API", + "description": "Synthesizes natural-sounding speech by applying powerful neural network models.", + "importDirectories": [ + "google/api" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 1 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.TextToSpeech.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/texttospeech/v1;texttospeech": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.texttospeech.v1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\TextToSpeech\\V1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::TextToSpeech::V1": 1 + } + } + }, + "services": [ + { + "shortName": "TextToSpeech", + "fullName": "google.cloud.texttospeech.v1.TextToSpeech", + "methods": [ + { + "shortName": "ListVoices", + "fullName": "google.cloud.texttospeech.v1.TextToSpeech.ListVoices", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/voices" + } + ] + }, + { + "shortName": "SynthesizeSpeech", + "fullName": "google.cloud.texttospeech.v1.TextToSpeech.SynthesizeSpeech", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/text:synthesize" + } + ] + } + ] + } + ], + "configFile": "texttospeech_v1.yaml" + }, + { + "id": "google.cloud.texttospeech.v1beta1", + "directory": "google/cloud/texttospeech/v1beta1", + "version": "v1beta1", + "majorVersion": "v1", + "hostName": "texttospeech.googleapis.com", + "title": "Cloud Text-to-Speech API", + "description": "Synthesizes natural-sounding speech by applying powerful neural network models.", + "importDirectories": [ + "google/api" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 1 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.TextToSpeech.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/texttospeech/v1beta1;texttospeech": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.texttospeech.v1beta1": 1 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\TextToSpeech\\V1beta1": 1 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::TextToSpeech::V1beta1": 1 + } + } + }, + "services": [ + { + "shortName": "TextToSpeech", + "fullName": "google.cloud.texttospeech.v1beta1.TextToSpeech", + "methods": [ + { + "shortName": "ListVoices", + "fullName": "google.cloud.texttospeech.v1beta1.TextToSpeech.ListVoices", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta1/voices" + } + ] + }, + { + "shortName": "SynthesizeSpeech", + "fullName": "google.cloud.texttospeech.v1beta1.TextToSpeech.SynthesizeSpeech", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta1/text:synthesize" + } + ] + } + ] + } + ], + "configFile": "texttospeech_v1beta1.yaml" + }, + { + "id": "google.cloud.tpu.v1", + "directory": "google/cloud/tpu/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "tpu.googleapis.com", + "title": "Cloud TPU API", + "description": "TPU API provides customers with access to Google TPU technology.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/tpu/v1;tpu": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.tpu.v1": 1 + } + } + }, + "services": [ + { + "shortName": "Tpu", + "fullName": "google.cloud.tpu.v1.Tpu", + "methods": [ + { + "shortName": "CreateNode", + "fullName": "google.cloud.tpu.v1.Tpu.CreateNode", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/nodes" + } + ] + }, + { + "shortName": "DeleteNode", + "fullName": "google.cloud.tpu.v1.Tpu.DeleteNode", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/nodes/*}" + } + ] + }, + { + "shortName": "GetAcceleratorType", + "fullName": "google.cloud.tpu.v1.Tpu.GetAcceleratorType", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/acceleratorTypes/*}" + } + ] + }, + { + "shortName": "GetNode", + "fullName": "google.cloud.tpu.v1.Tpu.GetNode", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/nodes/*}" + } + ] + }, + { + "shortName": "GetTensorFlowVersion", + "fullName": "google.cloud.tpu.v1.Tpu.GetTensorFlowVersion", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/tensorflowVersions/*}" + } + ] + }, + { + "shortName": "ListAcceleratorTypes", + "fullName": "google.cloud.tpu.v1.Tpu.ListAcceleratorTypes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/acceleratorTypes" + } + ] + }, + { + "shortName": "ListNodes", + "fullName": "google.cloud.tpu.v1.Tpu.ListNodes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/nodes" + } + ] + }, + { + "shortName": "ListTensorFlowVersions", + "fullName": "google.cloud.tpu.v1.Tpu.ListTensorFlowVersions", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/tensorflowVersions" + } + ] + }, + { + "shortName": "ReimageNode", + "fullName": "google.cloud.tpu.v1.Tpu.ReimageNode", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/nodes/*}:reimage" + } + ] + }, + { + "shortName": "StartNode", + "fullName": "google.cloud.tpu.v1.Tpu.StartNode", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/nodes/*}:start" + } + ] + }, + { + "shortName": "StopNode", + "fullName": "google.cloud.tpu.v1.Tpu.StopNode", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/nodes/*}:stop" + } + ] + } + ] + } + ], + "configFile": "tpu_v1.yaml" + }, + { + "id": "google.cloud.tpu.v2alpha1", + "directory": "google/cloud/tpu/v2alpha1", + "version": "v2alpha1", + "majorVersion": "v2", + "hostName": "tpu.googleapis.com", + "title": "Cloud TPU API", + "description": "TPU API provides customers with access to Google TPU technology.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/tpu/v2alpha1;tpu": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.tpu.v2alpha1": 1 + } + } + }, + "services": [ + { + "shortName": "Tpu", + "fullName": "google.cloud.tpu.v2alpha1.Tpu", + "methods": [ + { + "shortName": "CreateNode", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.CreateNode", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2alpha1/{parent=projects/*/locations/*}/nodes" + } + ] + }, + { + "shortName": "DeleteNode", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.DeleteNode", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v2alpha1/{name=projects/*/locations/*/nodes/*}" + } + ] + }, + { + "shortName": "GenerateServiceIdentity", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.GenerateServiceIdentity", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v2alpha1/{parent=projects/*/locations/*}:generateServiceIdentity" } ] }, { - "shortName": "GetTask", - "fullName": "google.cloud.tasks.v2beta3.CloudTasks.GetTask", + "shortName": "GetAcceleratorType", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.GetAcceleratorType", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2beta3/{name=projects/*/locations/*/queues/*/tasks/*}" + "path": "/v2alpha1/{name=projects/*/locations/*/acceleratorTypes/*}" } ] }, { - "shortName": "ListQueues", - "fullName": "google.cloud.tasks.v2beta3.CloudTasks.ListQueues", + "shortName": "GetGuestAttributes", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.GetGuestAttributes", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v2beta3/{parent=projects/*/locations/*}/queues" + "httpMethod": "POST", + "path": "/v2alpha1/{name=projects/*/locations/*/nodes/*}:getGuestAttributes" } ] }, { - "shortName": "ListTasks", - "fullName": "google.cloud.tasks.v2beta3.CloudTasks.ListTasks", + "shortName": "GetNode", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.GetNode", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v2beta3/{parent=projects/*/locations/*/queues/*}/tasks" + "path": "/v2alpha1/{name=projects/*/locations/*/nodes/*}" } ] }, { - "shortName": "PauseQueue", - "fullName": "google.cloud.tasks.v2beta3.CloudTasks.PauseQueue", + "shortName": "GetRuntimeVersion", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.GetRuntimeVersion", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta3/{name=projects/*/locations/*/queues/*}:pause" + "httpMethod": "GET", + "path": "/v2alpha1/{name=projects/*/locations/*/runtimeVersions/*}" } ] }, { - "shortName": "PurgeQueue", - "fullName": "google.cloud.tasks.v2beta3.CloudTasks.PurgeQueue", + "shortName": "ListAcceleratorTypes", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.ListAcceleratorTypes", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta3/{name=projects/*/locations/*/queues/*}:purge" + "httpMethod": "GET", + "path": "/v2alpha1/{parent=projects/*/locations/*}/acceleratorTypes" } ] }, { - "shortName": "ResumeQueue", - "fullName": "google.cloud.tasks.v2beta3.CloudTasks.ResumeQueue", + "shortName": "ListNodes", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.ListNodes", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta3/{name=projects/*/locations/*/queues/*}:resume" + "httpMethod": "GET", + "path": "/v2alpha1/{parent=projects/*/locations/*}/nodes" } ] }, { - "shortName": "RunTask", - "fullName": "google.cloud.tasks.v2beta3.CloudTasks.RunTask", + "shortName": "ListRuntimeVersions", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.ListRuntimeVersions", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v2beta3/{name=projects/*/locations/*/queues/*/tasks/*}:run" + "httpMethod": "GET", + "path": "/v2alpha1/{parent=projects/*/locations/*}/runtimeVersions" } ] }, { - "shortName": "SetIamPolicy", - "fullName": "google.cloud.tasks.v2beta3.CloudTasks.SetIamPolicy", + "shortName": "StartNode", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.StartNode", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta3/{resource=projects/*/locations/*/queues/*}:setIamPolicy" + "path": "/v2alpha1/{name=projects/*/locations/*/nodes/*}:start" } ] }, { - "shortName": "TestIamPermissions", - "fullName": "google.cloud.tasks.v2beta3.CloudTasks.TestIamPermissions", + "shortName": "StopNode", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.StopNode", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v2beta3/{resource=projects/*/locations/*/queues/*}:testIamPermissions" + "path": "/v2alpha1/{name=projects/*/locations/*/nodes/*}:stop" } ] }, { - "shortName": "UpdateQueue", - "fullName": "google.cloud.tasks.v2beta3.CloudTasks.UpdateQueue", + "shortName": "UpdateNode", + "fullName": "google.cloud.tpu.v2alpha1.Tpu.UpdateNode", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v2beta3/{queue.name=projects/*/locations/*/queues/*}" + "path": "/v2alpha1/{node.name=projects/*/locations/*/nodes/*}" } ] } ] } - ] + ], + "configFile": "tpu.yaml" }, { - "id": "google.cloud.texttospeech.v1", - "directory": "google/cloud/texttospeech/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "texttospeech.googleapis.com", - "title": "Cloud Text-to-Speech API", - "description": "Synthesizes natural-sounding speech by applying powerful neural network models.", + "id": "google.cloud.translate.v3", + "directory": "google/cloud/translate/v3", + "version": "v3", + "majorVersion": "v3", + "hostName": "translate.googleapis.com", + "title": "Cloud Translation API", + "description": "Integrates text translation into your website or application.", "importDirectories": [ - "google/api" + "google/api", + "google/longrunning", + "google/protobuf", + "google/rpc" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.texttospeech.v1": 1 + "true": 1 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 1 + "Google.Cloud.Translate.V3": 1 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/texttospeech/v1;texttospeech": 1 + "google.golang.org/genproto/googleapis/cloud/translate/v3;translate": 1 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.TextToSpeech.V1": 1 + "com.google.cloud.translate.v3": 1 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\TextToSpeech\\V1": 1 + "Google\\Cloud\\Translate\\V3": 1 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::TextToSpeech::V1": 1 + "Google::Cloud::Translate::V3": 1 } } }, "services": [ { - "shortName": "TextToSpeech", - "fullName": "google.cloud.texttospeech.v1.TextToSpeech", + "shortName": "TranslationService", + "fullName": "google.cloud.translation.v3.TranslationService", "methods": [ { - "shortName": "ListVoices", - "fullName": "google.cloud.texttospeech.v1.TextToSpeech.ListVoices", + "shortName": "BatchTranslateDocument", + "fullName": "google.cloud.translation.v3.TranslationService.BatchTranslateDocument", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*}:batchTranslateDocument" + } + ] + }, + { + "shortName": "BatchTranslateText", + "fullName": "google.cloud.translation.v3.TranslationService.BatchTranslateText", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*}:batchTranslateText" + } + ] + }, + { + "shortName": "CreateGlossary", + "fullName": "google.cloud.translation.v3.TranslationService.CreateGlossary", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*}/glossaries" + } + ] + }, + { + "shortName": "DeleteGlossary", + "fullName": "google.cloud.translation.v3.TranslationService.DeleteGlossary", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v3/{name=projects/*/locations/*/glossaries/*}" + } + ] + }, + { + "shortName": "DetectLanguage", + "fullName": "google.cloud.translation.v3.TranslationService.DetectLanguage", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*}:detectLanguage" + }, + { + "httpMethod": "POST", + "path": "/v3/{parent=projects/*}:detectLanguage" + } + ] + }, + { + "shortName": "GetGlossary", + "fullName": "google.cloud.translation.v3.TranslationService.GetGlossary", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/voices" + "path": "/v3/{name=projects/*/locations/*/glossaries/*}" } ] }, { - "shortName": "SynthesizeSpeech", - "fullName": "google.cloud.texttospeech.v1.TextToSpeech.SynthesizeSpeech", + "shortName": "GetSupportedLanguages", + "fullName": "google.cloud.translation.v3.TranslationService.GetSupportedLanguages", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v3/{parent=projects/*/locations/*}/supportedLanguages" + }, + { + "httpMethod": "GET", + "path": "/v3/{parent=projects/*}/supportedLanguages" + } + ] + }, + { + "shortName": "ListGlossaries", + "fullName": "google.cloud.translation.v3.TranslationService.ListGlossaries", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v3/{parent=projects/*/locations/*}/glossaries" + } + ] + }, + { + "shortName": "TranslateDocument", + "fullName": "google.cloud.translation.v3.TranslationService.TranslateDocument", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/text:synthesize" + "path": "/v3/{parent=projects/*/locations/*}:translateDocument" + } + ] + }, + { + "shortName": "TranslateText", + "fullName": "google.cloud.translation.v3.TranslationService.TranslateText", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{parent=projects/*/locations/*}:translateText" + }, + { + "httpMethod": "POST", + "path": "/v3/{parent=projects/*}:translateText" } ] } ] } - ] + ], + "configFile": "translate_v3.yaml" }, { - "id": "google.cloud.texttospeech.v1beta1", - "directory": "google/cloud/texttospeech/v1beta1", - "version": "v1beta1", - "majorVersion": "v1", - "hostName": "texttospeech.googleapis.com", - "title": "Cloud Text-to-Speech API", - "description": "Synthesizes natural-sounding speech by applying powerful neural network models.", + "id": "google.cloud.translate.v3beta1", + "directory": "google/cloud/translate/v3beta1", + "version": "v3beta1", + "majorVersion": "v3", + "hostName": "translate.googleapis.com", + "title": "Cloud Translation API", + "description": "Integrates text translation into your website or application.", "importDirectories": [ - "google/api" + "google/api", + "google/longrunning", + "google/protobuf", + "google/rpc" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.texttospeech.v1beta1": 1 + "true": 1 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 1 + "Google.Cloud.Translate.V3Beta1": 1 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/texttospeech/v1beta1;texttospeech": 1 + "google.golang.org/genproto/googleapis/cloud/translate/v3beta1;translate": 1 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.TextToSpeech.V1Beta1": 1 + "com.google.cloud.translate.v3beta1": 1 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\TextToSpeech\\V1beta1": 1 + "Google\\Cloud\\Translate\\V3beta1": 1 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::TextToSpeech::V1beta1": 1 + "Google::Cloud::Translate::V3beta1": 1 } } }, "services": [ { - "shortName": "TextToSpeech", - "fullName": "google.cloud.texttospeech.v1beta1.TextToSpeech", + "shortName": "TranslationService", + "fullName": "google.cloud.translation.v3beta1.TranslationService", "methods": [ { - "shortName": "ListVoices", - "fullName": "google.cloud.texttospeech.v1beta1.TextToSpeech.ListVoices", + "shortName": "BatchTranslateDocument", + "fullName": "google.cloud.translation.v3beta1.TranslationService.BatchTranslateDocument", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1beta1/voices" + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*}:batchTranslateDocument" } ] }, { - "shortName": "SynthesizeSpeech", - "fullName": "google.cloud.texttospeech.v1beta1.TextToSpeech.SynthesizeSpeech", + "shortName": "BatchTranslateText", + "fullName": "google.cloud.translation.v3beta1.TranslationService.BatchTranslateText", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1beta1/text:synthesize" + "path": "/v3beta1/{parent=projects/*/locations/*}:batchTranslateText" } ] - } - ] - } - ] - }, - { - "id": "google.cloud.tpu.v1", - "directory": "google/cloud/tpu/v1", - "version": "v1", - "majorVersion": "v1", - "hostName": "tpu.googleapis.com", - "title": "Cloud TPU API", - "description": "TPU API provides customers with access to Google TPU technology.", - "importDirectories": [ - "google/api", - "google/longrunning", - "google/protobuf" - ], - "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.tpu.v1": 1 - } - }, - "java_multiple_files": { - "valueCounts": { - "true": 1 - } - }, - "go_package": { - "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/tpu/v1;tpu": 1 - } - } - }, - "services": [ - { - "shortName": "Tpu", - "fullName": "google.cloud.tpu.v1.Tpu", - "methods": [ + }, { - "shortName": "CreateNode", - "fullName": "google.cloud.tpu.v1.Tpu.CreateNode", + "shortName": "CreateGlossary", + "fullName": "google.cloud.translation.v3beta1.TranslationService.CreateGlossary", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{parent=projects/*/locations/*}/nodes" + "path": "/v3beta1/{parent=projects/*/locations/*}/glossaries" } ] }, { - "shortName": "DeleteNode", - "fullName": "google.cloud.tpu.v1.Tpu.DeleteNode", + "shortName": "DeleteGlossary", + "fullName": "google.cloud.translation.v3beta1.TranslationService.DeleteGlossary", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1/{name=projects/*/locations/*/nodes/*}" + "path": "/v3beta1/{name=projects/*/locations/*/glossaries/*}" } ] }, { - "shortName": "GetAcceleratorType", - "fullName": "google.cloud.tpu.v1.Tpu.GetAcceleratorType", + "shortName": "DetectLanguage", + "fullName": "google.cloud.translation.v3beta1.TranslationService.DetectLanguage", "mode": "UNARY", "bindings": [ { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/acceleratorTypes/*}" - } - ] - }, - { - "shortName": "GetNode", - "fullName": "google.cloud.tpu.v1.Tpu.GetNode", - "mode": "UNARY", - "bindings": [ + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*/locations/*}:detectLanguage" + }, { - "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/nodes/*}" + "httpMethod": "POST", + "path": "/v3beta1/{parent=projects/*}:detectLanguage" } ] }, { - "shortName": "GetTensorFlowVersion", - "fullName": "google.cloud.tpu.v1.Tpu.GetTensorFlowVersion", + "shortName": "GetGlossary", + "fullName": "google.cloud.translation.v3beta1.TranslationService.GetGlossary", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{name=projects/*/locations/*/tensorflowVersions/*}" + "path": "/v3beta1/{name=projects/*/locations/*/glossaries/*}" } ] }, { - "shortName": "ListAcceleratorTypes", - "fullName": "google.cloud.tpu.v1.Tpu.ListAcceleratorTypes", + "shortName": "GetSupportedLanguages", + "fullName": "google.cloud.translation.v3beta1.TranslationService.GetSupportedLanguages", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/acceleratorTypes" - } - ] - }, - { - "shortName": "ListNodes", - "fullName": "google.cloud.tpu.v1.Tpu.ListNodes", - "mode": "UNARY", - "bindings": [ + "path": "/v3beta1/{parent=projects/*/locations/*}/supportedLanguages" + }, { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/nodes" + "path": "/v3beta1/{parent=projects/*}/supportedLanguages" } ] }, { - "shortName": "ListTensorFlowVersions", - "fullName": "google.cloud.tpu.v1.Tpu.ListTensorFlowVersions", + "shortName": "ListGlossaries", + "fullName": "google.cloud.translation.v3beta1.TranslationService.ListGlossaries", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/tensorflowVersions" + "path": "/v3beta1/{parent=projects/*/locations/*}/glossaries" } ] }, { - "shortName": "ReimageNode", - "fullName": "google.cloud.tpu.v1.Tpu.ReimageNode", + "shortName": "TranslateDocument", + "fullName": "google.cloud.translation.v3beta1.TranslationService.TranslateDocument", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/nodes/*}:reimage" + "path": "/v3beta1/{parent=projects/*/locations/*}:translateDocument" } ] }, { - "shortName": "StartNode", - "fullName": "google.cloud.tpu.v1.Tpu.StartNode", + "shortName": "TranslateText", + "fullName": "google.cloud.translation.v3beta1.TranslationService.TranslateText", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/nodes/*}:start" - } - ] - }, - { - "shortName": "StopNode", - "fullName": "google.cloud.tpu.v1.Tpu.StopNode", - "mode": "UNARY", - "bindings": [ + "path": "/v3beta1/{parent=projects/*/locations/*}:translateText" + }, { "httpMethod": "POST", - "path": "/v1/{name=projects/*/locations/*/nodes/*}:stop" + "path": "/v3beta1/{parent=projects/*}:translateText" } ] } ] } - ] + ], + "configFile": "translate_v3beta1.yaml" }, { - "id": "google.cloud.translate.v3", - "directory": "google/cloud/translate/v3", - "version": "v3", - "majorVersion": "v3", - "hostName": "translate.googleapis.com", - "title": "Cloud Translation API", - "description": "Integrates text translation into your website or application.", + "id": "google.cloud.video.livestream.v1", + "directory": "google/cloud/video/livestream/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "livestream.googleapis.com", + "title": "Live Stream API", + "description": "", "importDirectories": [ "google/api", + "google/cloud/video/livestream/v1", "google/longrunning", - "google/protobuf" + "google/protobuf", + "google/rpc" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.translate.v3": 1 - } - }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 1 + "Google.Cloud.Video.LiveStream.V1": 3 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/translate/v3;translate": 1 + "google.golang.org/genproto/googleapis/cloud/video/livestream/v1;livestream": 3 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { - "true": 1 + "true": 3 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Translate.V3": 1 + "com.google.cloud.video.livestream.v1": 3 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Translate\\V3": 1 + "Google\\Cloud\\Video\\LiveStream\\V1": 3 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::Translate::V3": 1 + "Google::Cloud::Video::LiveStream::V1": 3 } } }, "services": [ { - "shortName": "TranslationService", - "fullName": "google.cloud.translation.v3.TranslationService", + "shortName": "LivestreamService", + "fullName": "google.cloud.video.livestream.v1.LivestreamService", "methods": [ { - "shortName": "BatchTranslateText", - "fullName": "google.cloud.translation.v3.TranslationService.BatchTranslateText", + "shortName": "CreateChannel", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.CreateChannel", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*}:batchTranslateText" + "path": "/v1/{parent=projects/*/locations/*}/channels" } ] }, { - "shortName": "CreateGlossary", - "fullName": "google.cloud.translation.v3.TranslationService.CreateGlossary", + "shortName": "CreateEvent", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.CreateEvent", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*}/glossaries" + "path": "/v1/{parent=projects/*/locations/*/channels/*}/events" } ] }, { - "shortName": "DeleteGlossary", - "fullName": "google.cloud.translation.v3.TranslationService.DeleteGlossary", + "shortName": "CreateInput", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.CreateInput", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/inputs" + } + ] + }, + { + "shortName": "DeleteChannel", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.DeleteChannel", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3/{name=projects/*/locations/*/glossaries/*}" + "path": "/v1/{name=projects/*/locations/*/channels/*}" } ] }, { - "shortName": "DetectLanguage", - "fullName": "google.cloud.translation.v3.TranslationService.DetectLanguage", + "shortName": "DeleteEvent", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.DeleteEvent", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*}:detectLanguage" - }, + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/channels/*/events/*}" + } + ] + }, + { + "shortName": "DeleteInput", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.DeleteInput", + "mode": "UNARY", + "bindings": [ { - "httpMethod": "POST", - "path": "/v3/{parent=projects/*}:detectLanguage" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/inputs/*}" } ] }, { - "shortName": "GetGlossary", - "fullName": "google.cloud.translation.v3.TranslationService.GetGlossary", + "shortName": "GetChannel", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.GetChannel", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{name=projects/*/locations/*/glossaries/*}" + "path": "/v1/{name=projects/*/locations/*/channels/*}" } ] }, { - "shortName": "GetSupportedLanguages", - "fullName": "google.cloud.translation.v3.TranslationService.GetSupportedLanguages", + "shortName": "GetEvent", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.GetEvent", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*}/supportedLanguages" - }, + "path": "/v1/{name=projects/*/locations/*/channels/*/events/*}" + } + ] + }, + { + "shortName": "GetInput", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.GetInput", + "mode": "UNARY", + "bindings": [ { "httpMethod": "GET", - "path": "/v3/{parent=projects/*}/supportedLanguages" + "path": "/v1/{name=projects/*/locations/*/inputs/*}" } ] }, { - "shortName": "ListGlossaries", - "fullName": "google.cloud.translation.v3.TranslationService.ListGlossaries", + "shortName": "ListChannels", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.ListChannels", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3/{parent=projects/*/locations/*}/glossaries" + "path": "/v1/{parent=projects/*/locations/*}/channels" } ] }, { - "shortName": "TranslateText", - "fullName": "google.cloud.translation.v3.TranslationService.TranslateText", + "shortName": "ListEvents", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.ListEvents", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/channels/*}/events" + } + ] + }, + { + "shortName": "ListInputs", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.ListInputs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/inputs" + } + ] + }, + { + "shortName": "StartChannel", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.StartChannel", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*/locations/*}:translateText" - }, + "path": "/v1/{name=projects/*/locations/*/channels/*}:start" + } + ] + }, + { + "shortName": "StopChannel", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.StopChannel", + "mode": "UNARY", + "bindings": [ { "httpMethod": "POST", - "path": "/v3/{parent=projects/*}:translateText" + "path": "/v1/{name=projects/*/locations/*/channels/*}:stop" + } + ] + }, + { + "shortName": "UpdateChannel", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.UpdateChannel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{channel.name=projects/*/locations/*/channels/*}" + } + ] + }, + { + "shortName": "UpdateInput", + "fullName": "google.cloud.video.livestream.v1.LivestreamService.UpdateInput", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{input.name=projects/*/locations/*/inputs/*}" } ] } ] } - ] + ], + "configFile": "livestream_v1.yaml" }, { - "id": "google.cloud.translate.v3beta1", - "directory": "google/cloud/translate/v3beta1", - "version": "v3beta1", - "majorVersion": "v3", - "hostName": "translate.googleapis.com", - "title": "Cloud Translation API", - "description": "Integrates text translation into your website or application.", + "id": "google.cloud.video.transcoder.v1", + "directory": "google/cloud/video/transcoder/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "transcoder.googleapis.com", + "title": "Transcoder API", + "description": "This API converts video files into formats suitable for consumer distribution.", "importDirectories": [ "google/api", - "google/longrunning", - "google/protobuf" + "google/cloud/video/transcoder/v1", + "google/protobuf", + "google/rpc" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.translate.v3beta1": 1 - } - }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 1 + "": 1, + "Google.Cloud.Video.Transcoder.V1": 1 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/translate/v3beta1;translate": 1 + "google.golang.org/genproto/googleapis/cloud/video/transcoder/v1;transcoder": 2 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { - "true": 1 + "true": 2 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Translate.V3Beta1": 1 + "com.google.cloud.video.transcoder.v1": 2 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Translate\\V3beta1": 1 + "": 1, + "Google\\Cloud\\Video\\Transcoder\\V1": 1 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::Translate::V3beta1": 1 + "": 1, + "Google::Cloud::Video::Transcoder::V1": 1 } } }, "services": [ { - "shortName": "TranslationService", - "fullName": "google.cloud.translation.v3beta1.TranslationService", + "shortName": "TranscoderService", + "fullName": "google.cloud.video.transcoder.v1.TranscoderService", "methods": [ { - "shortName": "BatchTranslateDocument", - "fullName": "google.cloud.translation.v3beta1.TranslationService.BatchTranslateDocument", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*}:batchTranslateDocument" - } - ] - }, - { - "shortName": "BatchTranslateText", - "fullName": "google.cloud.translation.v3beta1.TranslationService.BatchTranslateText", + "shortName": "CreateJob", + "fullName": "google.cloud.video.transcoder.v1.TranscoderService.CreateJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*}:batchTranslateText" + "path": "/v1/{parent=projects/*/locations/*}/jobs" } ] }, { - "shortName": "CreateGlossary", - "fullName": "google.cloud.translation.v3beta1.TranslationService.CreateGlossary", + "shortName": "CreateJobTemplate", + "fullName": "google.cloud.video.transcoder.v1.TranscoderService.CreateJobTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*}/glossaries" + "path": "/v1/{parent=projects/*/locations/*}/jobTemplates" } ] }, { - "shortName": "DeleteGlossary", - "fullName": "google.cloud.translation.v3beta1.TranslationService.DeleteGlossary", + "shortName": "DeleteJob", + "fullName": "google.cloud.video.transcoder.v1.TranscoderService.DeleteJob", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v3beta1/{name=projects/*/locations/*/glossaries/*}" + "path": "/v1/{name=projects/*/locations/*/jobs/*}" } ] }, { - "shortName": "DetectLanguage", - "fullName": "google.cloud.translation.v3beta1.TranslationService.DetectLanguage", + "shortName": "DeleteJobTemplate", + "fullName": "google.cloud.video.transcoder.v1.TranscoderService.DeleteJobTemplate", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*}:detectLanguage" - }, - { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*}:detectLanguage" + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/jobTemplates/*}" } ] }, { - "shortName": "GetGlossary", - "fullName": "google.cloud.translation.v3beta1.TranslationService.GetGlossary", + "shortName": "GetJob", + "fullName": "google.cloud.video.transcoder.v1.TranscoderService.GetJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{name=projects/*/locations/*/glossaries/*}" + "path": "/v1/{name=projects/*/locations/*/jobs/*}" } ] }, { - "shortName": "GetSupportedLanguages", - "fullName": "google.cloud.translation.v3beta1.TranslationService.GetSupportedLanguages", + "shortName": "GetJobTemplate", + "fullName": "google.cloud.video.transcoder.v1.TranscoderService.GetJobTemplate", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*}/supportedLanguages" - }, - { - "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*}/supportedLanguages" + "path": "/v1/{name=projects/*/locations/*/jobTemplates/*}" } ] }, { - "shortName": "ListGlossaries", - "fullName": "google.cloud.translation.v3beta1.TranslationService.ListGlossaries", + "shortName": "ListJobTemplates", + "fullName": "google.cloud.video.transcoder.v1.TranscoderService.ListJobTemplates", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v3beta1/{parent=projects/*/locations/*}/glossaries" - } - ] - }, - { - "shortName": "TranslateDocument", - "fullName": "google.cloud.translation.v3beta1.TranslationService.TranslateDocument", - "mode": "UNARY", - "bindings": [ - { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*}:translateDocument" + "path": "/v1/{parent=projects/*/locations/*}/jobTemplates" } ] }, { - "shortName": "TranslateText", - "fullName": "google.cloud.translation.v3beta1.TranslationService.TranslateText", + "shortName": "ListJobs", + "fullName": "google.cloud.video.transcoder.v1.TranscoderService.ListJobs", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*/locations/*}:translateText" - }, - { - "httpMethod": "POST", - "path": "/v3beta1/{parent=projects/*}:translateText" + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/jobs" } ] } ] } - ] + ], + "configFile": "transcoder_v1.yaml" }, { "id": "google.cloud.video.transcoder.v1beta1", @@ -47197,9 +62494,9 @@ "google/protobuf" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.video.transcoder.v1beta1": 2 + "google.golang.org/genproto/googleapis/cloud/video/transcoder/v1beta1;transcoder": 2 } }, "java_multiple_files": { @@ -47207,9 +62504,9 @@ "true": 2 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/video/transcoder/v1beta1;transcoder": 2 + "com.google.cloud.video.transcoder.v1beta1": 2 } } }, @@ -47285,30 +62582,31 @@ ] }, { - "shortName": "ListJobs", - "fullName": "google.cloud.video.transcoder.v1beta1.TranscoderService.ListJobs", + "shortName": "ListJobTemplates", + "fullName": "google.cloud.video.transcoder.v1beta1.TranscoderService.ListJobTemplates", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/jobs" + "path": "/v1beta1/{parent=projects/*/locations/*}/jobTemplates" } ] }, { - "shortName": "ListJobTemplates", - "fullName": "google.cloud.video.transcoder.v1beta1.TranscoderService.ListJobTemplates", + "shortName": "ListJobs", + "fullName": "google.cloud.video.transcoder.v1beta1.TranscoderService.ListJobs", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta1/{parent=projects/*/locations/*}/jobTemplates" + "path": "/v1beta1/{parent=projects/*/locations/*}/jobs" } ] } ] } - ] + ], + "configFile": "transcoder_v1beta1.yaml" }, { "id": "google.cloud.videointelligence.v1", @@ -47325,24 +62623,24 @@ "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.videointelligence.v1": 1 + "Google.Cloud.VideoIntelligence.V1": 1 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/cloud/videointelligence/v1;videointelligence": 1 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/videointelligence/v1;videointelligence": 1 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.VideoIntelligence.V1": 1 + "com.google.cloud.videointelligence.v1": 1 } }, "php_namespace": { @@ -47374,7 +62672,8 @@ } ] } - ] + ], + "configFile": "videointelligence_v1.yaml" }, { "id": "google.cloud.videointelligence.v1p3beta1", @@ -47391,30 +62690,35 @@ "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.videointelligence.v1p3beta1": 1 + "Google.Cloud.VideoIntelligence.V1P3Beta1": 1 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/cloud/videointelligence/v1p3beta1;videointelligence": 1 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/videointelligence/v1p3beta1;videointelligence": 1 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.VideoIntelligence.V1P3Beta1": 1 + "com.google.cloud.videointelligence.v1p3beta1": 1 } }, "php_namespace": { "valueCounts": { "Google\\Cloud\\VideoIntelligence\\V1p3beta1": 1 } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::VideoIntelligence::V1p3beta1": 1 + } } }, "services": [ @@ -47446,7 +62750,8 @@ } ] } - ] + ], + "configFile": "videointelligence_v1p3beta1.yaml" }, { "id": "google.cloud.vision.v1", @@ -47465,12 +62770,7 @@ "google/type" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.vision.v1": 6 - } - }, - "java_multiple_files": { + "cc_enable_arenas": { "valueCounts": { "true": 6 } @@ -47480,11 +62780,16 @@ "google.golang.org/genproto/googleapis/cloud/vision/v1;vision": 6 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 6 } }, + "java_package": { + "valueCounts": { + "com.google.cloud.vision.v1": 6 + } + }, "objc_class_prefix": { "valueCounts": { "GCVN": 6 @@ -47700,24 +63005,24 @@ ] }, { - "shortName": "ListProducts", - "fullName": "google.cloud.vision.v1.ProductSearch.ListProducts", + "shortName": "ListProductSets", + "fullName": "google.cloud.vision.v1.ProductSearch.ListProductSets", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/products" + "path": "/v1/{parent=projects/*/locations/*}/productSets" } ] }, { - "shortName": "ListProductSets", - "fullName": "google.cloud.vision.v1.ProductSearch.ListProductSets", + "shortName": "ListProducts", + "fullName": "google.cloud.vision.v1.ProductSearch.ListProducts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/productSets" + "path": "/v1/{parent=projects/*/locations/*}/products" } ] }, @@ -47789,7 +63094,8 @@ } ] } - ] + ], + "configFile": "vision_v1.yaml" }, { "id": "google.cloud.vision.v1p1beta1", @@ -47806,12 +63112,7 @@ "google/type" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.vision.v1p1beta1": 4 - } - }, - "java_multiple_files": { + "cc_enable_arenas": { "valueCounts": { "true": 4 } @@ -47821,10 +63122,15 @@ "google.golang.org/genproto/googleapis/cloud/vision/v1p1beta1;vision": 4 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 4 } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.vision.v1p1beta1": 4 + } } }, "services": [ @@ -47845,7 +63151,8 @@ } ] } - ] + ], + "configFile": "vision_v1p1beta1.yaml" }, { "id": "google.cloud.vision.v1p2beta1", @@ -47864,12 +63171,7 @@ "google/type" ], "options": { - "java_package": { - "valueCounts": { - "com.google.cloud.vision.v1p2beta1": 4 - } - }, - "java_multiple_files": { + "cc_enable_arenas": { "valueCounts": { "true": 4 } @@ -47879,10 +63181,15 @@ "google.golang.org/genproto/googleapis/cloud/vision/v1p2beta1;vision": 4 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 4 } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.vision.v1p2beta1": 4 + } } }, "services": [ @@ -47914,7 +63221,8 @@ } ] } - ] + ], + "configFile": "vision_v1p2beta1.yaml" }, { "id": "google.cloud.vision.v1p3beta1", @@ -47933,9 +63241,14 @@ "google/type" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.vision.v1p3beta1": 6 + "true": 6 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/vision/v1p3beta1;vision": 6 } }, "java_multiple_files": { @@ -47943,41 +63256,337 @@ "true": 6 } }, + "java_package": { + "valueCounts": { + "com.google.cloud.vision.v1p3beta1": 6 + } + } + }, + "services": [ + { + "shortName": "ImageAnnotator", + "fullName": "google.cloud.vision.v1p3beta1.ImageAnnotator", + "methods": [ + { + "shortName": "AsyncBatchAnnotateFiles", + "fullName": "google.cloud.vision.v1p3beta1.ImageAnnotator.AsyncBatchAnnotateFiles", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p3beta1/files:asyncBatchAnnotate" + } + ] + }, + { + "shortName": "BatchAnnotateImages", + "fullName": "google.cloud.vision.v1p3beta1.ImageAnnotator.BatchAnnotateImages", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p3beta1/images:annotate" + } + ] + } + ] + }, + { + "shortName": "ProductSearch", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch", + "methods": [ + { + "shortName": "AddProductToProductSet", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.AddProductToProductSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p3beta1/{name=projects/*/locations/*/productSets/*}:addProduct" + } + ] + }, + { + "shortName": "CreateProduct", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.CreateProduct", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p3beta1/{parent=projects/*/locations/*}/products" + } + ] + }, + { + "shortName": "CreateProductSet", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.CreateProductSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p3beta1/{parent=projects/*/locations/*}/productSets" + } + ] + }, + { + "shortName": "CreateReferenceImage", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.CreateReferenceImage", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p3beta1/{parent=projects/*/locations/*/products/*}/referenceImages" + } + ] + }, + { + "shortName": "DeleteProduct", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.DeleteProduct", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1p3beta1/{name=projects/*/locations/*/products/*}" + } + ] + }, + { + "shortName": "DeleteProductSet", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.DeleteProductSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1p3beta1/{name=projects/*/locations/*/productSets/*}" + } + ] + }, + { + "shortName": "DeleteReferenceImage", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.DeleteReferenceImage", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1p3beta1/{name=projects/*/locations/*/products/*/referenceImages/*}" + } + ] + }, + { + "shortName": "GetProduct", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.GetProduct", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1p3beta1/{name=projects/*/locations/*/products/*}" + } + ] + }, + { + "shortName": "GetProductSet", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.GetProductSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1p3beta1/{name=projects/*/locations/*/productSets/*}" + } + ] + }, + { + "shortName": "GetReferenceImage", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.GetReferenceImage", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1p3beta1/{name=projects/*/locations/*/products/*/referenceImages/*}" + } + ] + }, + { + "shortName": "ImportProductSets", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.ImportProductSets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p3beta1/{parent=projects/*/locations/*}/productSets:import" + } + ] + }, + { + "shortName": "ListProductSets", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.ListProductSets", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1p3beta1/{parent=projects/*/locations/*}/productSets" + } + ] + }, + { + "shortName": "ListProducts", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.ListProducts", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1p3beta1/{parent=projects/*/locations/*}/products" + } + ] + }, + { + "shortName": "ListProductsInProductSet", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.ListProductsInProductSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1p3beta1/{name=projects/*/locations/*/productSets/*}/products" + } + ] + }, + { + "shortName": "ListReferenceImages", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.ListReferenceImages", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1p3beta1/{parent=projects/*/locations/*/products/*}/referenceImages" + } + ] + }, + { + "shortName": "RemoveProductFromProductSet", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.RemoveProductFromProductSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p3beta1/{name=projects/*/locations/*/productSets/*}:removeProduct" + } + ] + }, + { + "shortName": "UpdateProduct", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.UpdateProduct", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1p3beta1/{product.name=projects/*/locations/*/products/*}" + } + ] + }, + { + "shortName": "UpdateProductSet", + "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.UpdateProductSet", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1p3beta1/{product_set.name=projects/*/locations/*/productSets/*}" + } + ] + } + ] + } + ], + "configFile": "vision_v1p3beta1.yaml" + }, + { + "id": "google.cloud.vision.v1p4beta1", + "directory": "google/cloud/vision/v1p4beta1", + "version": "v1p4beta1", + "majorVersion": "v1", + "hostName": "vision.googleapis.com", + "title": "Cloud Vision API", + "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.", + "importDirectories": [ + "google/api", + "google/cloud/vision/v1p4beta1", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/type" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 7 + } + }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/vision/v1p3beta1;vision": 6 + "google.golang.org/genproto/googleapis/cloud/vision/v1p4beta1;vision": 7 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 7 + } + }, + "java_package": { + "valueCounts": { + "com.google.cloud.vision.v1p4beta1": 7 } }, - "cc_enable_arenas": { + "objc_class_prefix": { "valueCounts": { - "true": 6 + "GCVN": 7 } } }, "services": [ { "shortName": "ImageAnnotator", - "fullName": "google.cloud.vision.v1p3beta1.ImageAnnotator", + "fullName": "google.cloud.vision.v1p4beta1.ImageAnnotator", "methods": [ { "shortName": "AsyncBatchAnnotateFiles", - "fullName": "google.cloud.vision.v1p3beta1.ImageAnnotator.AsyncBatchAnnotateFiles", + "fullName": "google.cloud.vision.v1p4beta1.ImageAnnotator.AsyncBatchAnnotateFiles", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p3beta1/files:asyncBatchAnnotate" + "path": "/v1p4beta1/files:asyncBatchAnnotate" + } + ] + }, + { + "shortName": "AsyncBatchAnnotateImages", + "fullName": "google.cloud.vision.v1p4beta1.ImageAnnotator.AsyncBatchAnnotateImages", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p4beta1/images:asyncBatchAnnotate" + } + ] + }, + { + "shortName": "BatchAnnotateFiles", + "fullName": "google.cloud.vision.v1p4beta1.ImageAnnotator.BatchAnnotateFiles", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p4beta1/files:annotate" } ] }, { "shortName": "BatchAnnotateImages", - "fullName": "google.cloud.vision.v1p3beta1.ImageAnnotator.BatchAnnotateImages", + "fullName": "google.cloud.vision.v1p4beta1.ImageAnnotator.BatchAnnotateImages", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p3beta1/images:annotate" + "path": "/v1p4beta1/images:annotate" } ] } @@ -47985,520 +63594,750 @@ }, { "shortName": "ProductSearch", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch", "methods": [ { "shortName": "AddProductToProductSet", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.AddProductToProductSet", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.AddProductToProductSet", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p3beta1/{name=projects/*/locations/*/productSets/*}:addProduct" + "path": "/v1p4beta1/{name=projects/*/locations/*/productSets/*}:addProduct" } ] }, { "shortName": "CreateProduct", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.CreateProduct", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.CreateProduct", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p3beta1/{parent=projects/*/locations/*}/products" + "path": "/v1p4beta1/{parent=projects/*/locations/*}/products" } ] }, { "shortName": "CreateProductSet", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.CreateProductSet", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.CreateProductSet", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p3beta1/{parent=projects/*/locations/*}/productSets" + "path": "/v1p4beta1/{parent=projects/*/locations/*}/productSets" } ] }, { "shortName": "CreateReferenceImage", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.CreateReferenceImage", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.CreateReferenceImage", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p3beta1/{parent=projects/*/locations/*/products/*}/referenceImages" + "path": "/v1p4beta1/{parent=projects/*/locations/*/products/*}/referenceImages" } ] }, { "shortName": "DeleteProduct", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.DeleteProduct", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.DeleteProduct", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1p3beta1/{name=projects/*/locations/*/products/*}" + "path": "/v1p4beta1/{name=projects/*/locations/*/products/*}" } ] }, { "shortName": "DeleteProductSet", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.DeleteProductSet", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.DeleteProductSet", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1p3beta1/{name=projects/*/locations/*/productSets/*}" + "path": "/v1p4beta1/{name=projects/*/locations/*/productSets/*}" } ] }, { "shortName": "DeleteReferenceImage", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.DeleteReferenceImage", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.DeleteReferenceImage", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1p3beta1/{name=projects/*/locations/*/products/*/referenceImages/*}" + "path": "/v1p4beta1/{name=projects/*/locations/*/products/*/referenceImages/*}" } ] }, { "shortName": "GetProduct", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.GetProduct", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.GetProduct", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p3beta1/{name=projects/*/locations/*/products/*}" + "path": "/v1p4beta1/{name=projects/*/locations/*/products/*}" } ] }, { "shortName": "GetProductSet", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.GetProductSet", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.GetProductSet", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p3beta1/{name=projects/*/locations/*/productSets/*}" + "path": "/v1p4beta1/{name=projects/*/locations/*/productSets/*}" } ] }, { "shortName": "GetReferenceImage", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.GetReferenceImage", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.GetReferenceImage", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p3beta1/{name=projects/*/locations/*/products/*/referenceImages/*}" + "path": "/v1p4beta1/{name=projects/*/locations/*/products/*/referenceImages/*}" } ] }, { "shortName": "ImportProductSets", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.ImportProductSets", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.ImportProductSets", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p3beta1/{parent=projects/*/locations/*}/productSets:import" + "path": "/v1p4beta1/{parent=projects/*/locations/*}/productSets:import" } ] }, { - "shortName": "ListProducts", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.ListProducts", + "shortName": "ListProductSets", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.ListProductSets", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p3beta1/{parent=projects/*/locations/*}/products" + "path": "/v1p4beta1/{parent=projects/*/locations/*}/productSets" } ] }, { - "shortName": "ListProductSets", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.ListProductSets", + "shortName": "ListProducts", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.ListProducts", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p3beta1/{parent=projects/*/locations/*}/productSets" + "path": "/v1p4beta1/{parent=projects/*/locations/*}/products" } ] }, { "shortName": "ListProductsInProductSet", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.ListProductsInProductSet", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.ListProductsInProductSet", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p3beta1/{name=projects/*/locations/*/productSets/*}/products" + "path": "/v1p4beta1/{name=projects/*/locations/*/productSets/*}/products" } ] }, { "shortName": "ListReferenceImages", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.ListReferenceImages", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.ListReferenceImages", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p3beta1/{parent=projects/*/locations/*/products/*}/referenceImages" + "path": "/v1p4beta1/{parent=projects/*/locations/*/products/*}/referenceImages" + } + ] + }, + { + "shortName": "PurgeProducts", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.PurgeProducts", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1p4beta1/{parent=projects/*/locations/*}/products:purge" } ] }, { "shortName": "RemoveProductFromProductSet", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.RemoveProductFromProductSet", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.RemoveProductFromProductSet", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p3beta1/{name=projects/*/locations/*/productSets/*}:removeProduct" + "path": "/v1p4beta1/{name=projects/*/locations/*/productSets/*}:removeProduct" } ] }, { "shortName": "UpdateProduct", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.UpdateProduct", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.UpdateProduct", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1p3beta1/{product.name=projects/*/locations/*/products/*}" + "path": "/v1p4beta1/{product.name=projects/*/locations/*/products/*}" } ] }, { "shortName": "UpdateProductSet", - "fullName": "google.cloud.vision.v1p3beta1.ProductSearch.UpdateProductSet", + "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.UpdateProductSet", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1p3beta1/{product_set.name=projects/*/locations/*/productSets/*}" + "path": "/v1p4beta1/{product_set.name=projects/*/locations/*/productSets/*}" } ] } ] } - ] + ], + "configFile": "vision_v1p4beta1.yaml" }, { - "id": "google.cloud.vision.v1p4beta1", - "directory": "google/cloud/vision/v1p4beta1", - "version": "v1p4beta1", + "id": "google.cloud.vmmigration.v1", + "directory": "google/cloud/vmmigration/v1", + "version": "v1", "majorVersion": "v1", - "hostName": "vision.googleapis.com", - "title": "Cloud Vision API", - "description": "Integrates Google Vision features, including image labeling, face, logo, and landmark detection, optical character recognition (OCR), and detection of explicit content, into applications.", + "hostName": "vmmigration.googleapis.com", + "title": "VM Migration API", + "description": "Use the Migrate for Compute Engine API to programmatically migrate workloads.", "importDirectories": [ "google/api", - "google/cloud/vision/v1p4beta1", "google/longrunning", "google/protobuf", - "google/rpc", - "google/type" + "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.vision.v1p4beta1": 7 + "Google.Cloud.VMMigration.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/vmmigration/v1;vmmigration": 1 } }, "java_multiple_files": { "valueCounts": { - "true": 7 + "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/vision/v1p4beta1;vision": 7 + "com.google.cloud.vmmigration.v1": 1 } }, - "cc_enable_arenas": { + "php_namespace": { "valueCounts": { - "true": 7 + "Google\\Cloud\\VMMigration\\V1": 1 } }, - "objc_class_prefix": { + "ruby_package": { "valueCounts": { - "GCVN": 7 + "Google::Cloud::VMMigration::V1": 1 } } }, "services": [ { - "shortName": "ImageAnnotator", - "fullName": "google.cloud.vision.v1p4beta1.ImageAnnotator", + "shortName": "VmMigration", + "fullName": "google.cloud.vmmigration.v1.VmMigration", "methods": [ { - "shortName": "AsyncBatchAnnotateFiles", - "fullName": "google.cloud.vision.v1p4beta1.ImageAnnotator.AsyncBatchAnnotateFiles", + "shortName": "AddGroupMigration", + "fullName": "google.cloud.vmmigration.v1.VmMigration.AddGroupMigration", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p4beta1/files:asyncBatchAnnotate" + "path": "/v1/{group=projects/*/locations/*/groups/*}:addGroupMigration" } ] }, { - "shortName": "AsyncBatchAnnotateImages", - "fullName": "google.cloud.vision.v1p4beta1.ImageAnnotator.AsyncBatchAnnotateImages", + "shortName": "CancelCloneJob", + "fullName": "google.cloud.vmmigration.v1.VmMigration.CancelCloneJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p4beta1/images:asyncBatchAnnotate" + "path": "/v1/{name=projects/*/locations/*/sources/*/migratingVms/*/cloneJobs/*}:cancel" } ] }, { - "shortName": "BatchAnnotateFiles", - "fullName": "google.cloud.vision.v1p4beta1.ImageAnnotator.BatchAnnotateFiles", + "shortName": "CancelCutoverJob", + "fullName": "google.cloud.vmmigration.v1.VmMigration.CancelCutoverJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p4beta1/files:annotate" + "path": "/v1/{name=projects/*/locations/*/sources/*/migratingVms/*/cutoverJobs/*}:cancel" } ] }, { - "shortName": "BatchAnnotateImages", - "fullName": "google.cloud.vision.v1p4beta1.ImageAnnotator.BatchAnnotateImages", + "shortName": "CreateCloneJob", + "fullName": "google.cloud.vmmigration.v1.VmMigration.CreateCloneJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p4beta1/images:annotate" + "path": "/v1/{parent=projects/*/locations/*/sources/*/migratingVms/*}/cloneJobs" } ] - } - ] - }, - { - "shortName": "ProductSearch", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch", - "methods": [ + }, { - "shortName": "AddProductToProductSet", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.AddProductToProductSet", + "shortName": "CreateCutoverJob", + "fullName": "google.cloud.vmmigration.v1.VmMigration.CreateCutoverJob", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p4beta1/{name=projects/*/locations/*/productSets/*}:addProduct" + "path": "/v1/{parent=projects/*/locations/*/sources/*/migratingVms/*}/cutoverJobs" } ] }, { - "shortName": "CreateProduct", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.CreateProduct", + "shortName": "CreateDatacenterConnector", + "fullName": "google.cloud.vmmigration.v1.VmMigration.CreateDatacenterConnector", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p4beta1/{parent=projects/*/locations/*}/products" + "path": "/v1/{parent=projects/*/locations/*/sources/*}/datacenterConnectors" } ] }, { - "shortName": "CreateProductSet", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.CreateProductSet", + "shortName": "CreateGroup", + "fullName": "google.cloud.vmmigration.v1.VmMigration.CreateGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p4beta1/{parent=projects/*/locations/*}/productSets" + "path": "/v1/{parent=projects/*/locations/*}/groups" } ] }, { - "shortName": "CreateReferenceImage", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.CreateReferenceImage", + "shortName": "CreateMigratingVm", + "fullName": "google.cloud.vmmigration.v1.VmMigration.CreateMigratingVm", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p4beta1/{parent=projects/*/locations/*/products/*}/referenceImages" + "path": "/v1/{parent=projects/*/locations/*/sources/*}/migratingVms" } ] }, { - "shortName": "DeleteProduct", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.DeleteProduct", + "shortName": "CreateSource", + "fullName": "google.cloud.vmmigration.v1.VmMigration.CreateSource", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/sources" + } + ] + }, + { + "shortName": "CreateTargetProject", + "fullName": "google.cloud.vmmigration.v1.VmMigration.CreateTargetProject", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/targetProjects" + } + ] + }, + { + "shortName": "CreateUtilizationReport", + "fullName": "google.cloud.vmmigration.v1.VmMigration.CreateUtilizationReport", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*/sources/*}/utilizationReports" + } + ] + }, + { + "shortName": "DeleteDatacenterConnector", + "fullName": "google.cloud.vmmigration.v1.VmMigration.DeleteDatacenterConnector", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1p4beta1/{name=projects/*/locations/*/products/*}" + "path": "/v1/{name=projects/*/locations/*/sources/*/datacenterConnectors/*}" } ] }, { - "shortName": "DeleteProductSet", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.DeleteProductSet", + "shortName": "DeleteGroup", + "fullName": "google.cloud.vmmigration.v1.VmMigration.DeleteGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1p4beta1/{name=projects/*/locations/*/productSets/*}" + "path": "/v1/{name=projects/*/locations/*/groups/*}" } ] }, { - "shortName": "DeleteReferenceImage", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.DeleteReferenceImage", + "shortName": "DeleteMigratingVm", + "fullName": "google.cloud.vmmigration.v1.VmMigration.DeleteMigratingVm", "mode": "UNARY", "bindings": [ { "httpMethod": "DELETE", - "path": "/v1p4beta1/{name=projects/*/locations/*/products/*/referenceImages/*}" + "path": "/v1/{name=projects/*/locations/*/sources/*/migratingVms/*}" } ] }, { - "shortName": "GetProduct", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.GetProduct", + "shortName": "DeleteSource", + "fullName": "google.cloud.vmmigration.v1.VmMigration.DeleteSource", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/sources/*}" + } + ] + }, + { + "shortName": "DeleteTargetProject", + "fullName": "google.cloud.vmmigration.v1.VmMigration.DeleteTargetProject", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/targetProjects/*}" + } + ] + }, + { + "shortName": "DeleteUtilizationReport", + "fullName": "google.cloud.vmmigration.v1.VmMigration.DeleteUtilizationReport", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/sources/*/utilizationReports/*}" + } + ] + }, + { + "shortName": "FetchInventory", + "fullName": "google.cloud.vmmigration.v1.VmMigration.FetchInventory", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p4beta1/{name=projects/*/locations/*/products/*}" + "path": "/v1/{source=projects/*/locations/*/sources/*}:fetchInventory" } ] }, { - "shortName": "GetProductSet", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.GetProductSet", + "shortName": "FinalizeMigration", + "fullName": "google.cloud.vmmigration.v1.VmMigration.FinalizeMigration", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{migrating_vm=projects/*/locations/*/sources/*/migratingVms/*}:finalizeMigration" + } + ] + }, + { + "shortName": "GetCloneJob", + "fullName": "google.cloud.vmmigration.v1.VmMigration.GetCloneJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p4beta1/{name=projects/*/locations/*/productSets/*}" + "path": "/v1/{name=projects/*/locations/*/sources/*/migratingVms/*/cloneJobs/*}" } ] }, { - "shortName": "GetReferenceImage", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.GetReferenceImage", + "shortName": "GetCutoverJob", + "fullName": "google.cloud.vmmigration.v1.VmMigration.GetCutoverJob", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p4beta1/{name=projects/*/locations/*/products/*/referenceImages/*}" + "path": "/v1/{name=projects/*/locations/*/sources/*/migratingVms/*/cutoverJobs/*}" } ] }, { - "shortName": "ImportProductSets", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.ImportProductSets", + "shortName": "GetDatacenterConnector", + "fullName": "google.cloud.vmmigration.v1.VmMigration.GetDatacenterConnector", "mode": "UNARY", "bindings": [ { - "httpMethod": "POST", - "path": "/v1p4beta1/{parent=projects/*/locations/*}/productSets:import" + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/sources/*/datacenterConnectors/*}" } ] }, { - "shortName": "ListProducts", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.ListProducts", + "shortName": "GetGroup", + "fullName": "google.cloud.vmmigration.v1.VmMigration.GetGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p4beta1/{parent=projects/*/locations/*}/products" + "path": "/v1/{name=projects/*/locations/*/groups/*}" } ] }, { - "shortName": "ListProductSets", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.ListProductSets", + "shortName": "GetMigratingVm", + "fullName": "google.cloud.vmmigration.v1.VmMigration.GetMigratingVm", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p4beta1/{parent=projects/*/locations/*}/productSets" + "path": "/v1/{name=projects/*/locations/*/sources/*/migratingVms/*}" } ] }, { - "shortName": "ListProductsInProductSet", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.ListProductsInProductSet", + "shortName": "GetSource", + "fullName": "google.cloud.vmmigration.v1.VmMigration.GetSource", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p4beta1/{name=projects/*/locations/*/productSets/*}/products" + "path": "/v1/{name=projects/*/locations/*/sources/*}" } ] }, { - "shortName": "ListReferenceImages", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.ListReferenceImages", + "shortName": "GetTargetProject", + "fullName": "google.cloud.vmmigration.v1.VmMigration.GetTargetProject", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1p4beta1/{parent=projects/*/locations/*/products/*}/referenceImages" + "path": "/v1/{name=projects/*/locations/*/targetProjects/*}" } ] }, { - "shortName": "PurgeProducts", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.PurgeProducts", + "shortName": "GetUtilizationReport", + "fullName": "google.cloud.vmmigration.v1.VmMigration.GetUtilizationReport", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/sources/*/utilizationReports/*}" + } + ] + }, + { + "shortName": "ListCloneJobs", + "fullName": "google.cloud.vmmigration.v1.VmMigration.ListCloneJobs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/sources/*/migratingVms/*}/cloneJobs" + } + ] + }, + { + "shortName": "ListCutoverJobs", + "fullName": "google.cloud.vmmigration.v1.VmMigration.ListCutoverJobs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/sources/*/migratingVms/*}/cutoverJobs" + } + ] + }, + { + "shortName": "ListDatacenterConnectors", + "fullName": "google.cloud.vmmigration.v1.VmMigration.ListDatacenterConnectors", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/sources/*}/datacenterConnectors" + } + ] + }, + { + "shortName": "ListGroups", + "fullName": "google.cloud.vmmigration.v1.VmMigration.ListGroups", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/groups" + } + ] + }, + { + "shortName": "ListMigratingVms", + "fullName": "google.cloud.vmmigration.v1.VmMigration.ListMigratingVms", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/sources/*}/migratingVms" + } + ] + }, + { + "shortName": "ListSources", + "fullName": "google.cloud.vmmigration.v1.VmMigration.ListSources", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/sources" + } + ] + }, + { + "shortName": "ListTargetProjects", + "fullName": "google.cloud.vmmigration.v1.VmMigration.ListTargetProjects", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/targetProjects" + } + ] + }, + { + "shortName": "ListUtilizationReports", + "fullName": "google.cloud.vmmigration.v1.VmMigration.ListUtilizationReports", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/sources/*}/utilizationReports" + } + ] + }, + { + "shortName": "PauseMigration", + "fullName": "google.cloud.vmmigration.v1.VmMigration.PauseMigration", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p4beta1/{parent=projects/*/locations/*}/products:purge" + "path": "/v1/{migrating_vm=projects/*/locations/*/sources/*/migratingVms/*}:pauseMigration" } ] }, { - "shortName": "RemoveProductFromProductSet", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.RemoveProductFromProductSet", + "shortName": "RemoveGroupMigration", + "fullName": "google.cloud.vmmigration.v1.VmMigration.RemoveGroupMigration", "mode": "UNARY", "bindings": [ { "httpMethod": "POST", - "path": "/v1p4beta1/{name=projects/*/locations/*/productSets/*}:removeProduct" + "path": "/v1/{group=projects/*/locations/*/groups/*}:removeGroupMigration" } ] }, { - "shortName": "UpdateProduct", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.UpdateProduct", + "shortName": "ResumeMigration", + "fullName": "google.cloud.vmmigration.v1.VmMigration.ResumeMigration", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{migrating_vm=projects/*/locations/*/sources/*/migratingVms/*}:resumeMigration" + } + ] + }, + { + "shortName": "StartMigration", + "fullName": "google.cloud.vmmigration.v1.VmMigration.StartMigration", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{migrating_vm=projects/*/locations/*/sources/*/migratingVms/*}:startMigration" + } + ] + }, + { + "shortName": "UpdateGroup", + "fullName": "google.cloud.vmmigration.v1.VmMigration.UpdateGroup", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1p4beta1/{product.name=projects/*/locations/*/products/*}" + "path": "/v1/{group.name=projects/*/locations/*/groups/*}" } ] }, { - "shortName": "UpdateProductSet", - "fullName": "google.cloud.vision.v1p4beta1.ProductSearch.UpdateProductSet", + "shortName": "UpdateMigratingVm", + "fullName": "google.cloud.vmmigration.v1.VmMigration.UpdateMigratingVm", "mode": "UNARY", "bindings": [ { "httpMethod": "PATCH", - "path": "/v1p4beta1/{product_set.name=projects/*/locations/*/productSets/*}" + "path": "/v1/{migrating_vm.name=projects/*/locations/*/sources/*/migratingVms/*}" + } + ] + }, + { + "shortName": "UpdateSource", + "fullName": "google.cloud.vmmigration.v1.VmMigration.UpdateSource", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{source.name=projects/*/locations/*/sources/*}" + } + ] + }, + { + "shortName": "UpdateTargetProject", + "fullName": "google.cloud.vmmigration.v1.VmMigration.UpdateTargetProject", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{target_project.name=projects/*/locations/*/targetProjects/*}" } ] } ] } - ] + ], + "configFile": "vmmigration_v1.yaml" }, { "id": "google.cloud.vpcaccess.v1", @@ -48514,24 +64353,24 @@ "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.vpcaccess.v1": 1 + "Google.Cloud.VpcAccess.V1": 1 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/cloud/vpcaccess/v1;vpcaccess": 1 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/vpcaccess/v1;vpcaccess": 1 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.VpcAccess.V1": 1 + "com.google.cloud.vpcaccess.v1": 1 } }, "php_namespace": { @@ -48596,7 +64435,8 @@ } ] } - ] + ], + "configFile": "vpcaccess_v1.yaml" }, { "id": "google.cloud.webrisk.v1", @@ -48611,9 +64451,14 @@ "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.webrisk.v1": 1 + "Google.Cloud.WebRisk.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/webrisk/v1;webrisk": 1 } }, "java_multiple_files": { @@ -48621,9 +64466,9 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/webrisk/v1;webrisk": 1 + "com.google.webrisk.v1": 1 } }, "objc_class_prefix": { @@ -48631,11 +64476,6 @@ "GCWR": 1 } }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.WebRisk.V1": 1 - } - }, "php_namespace": { "valueCounts": { "Google\\Cloud\\WebRisk\\V1": 1 @@ -48698,7 +64538,8 @@ } ] } - ] + ], + "configFile": "webrisk_v1.yaml" }, { "id": "google.cloud.webrisk.v1beta1", @@ -48713,9 +64554,14 @@ "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.webrisk.v1beta1": 1 + "Google.Cloud.WebRisk.V1Beta1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/cloud/webrisk/v1beta1;webrisk": 1 } }, "java_multiple_files": { @@ -48723,9 +64569,9 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/webrisk/v1beta1;webrisk": 1 + "com.google.webrisk.v1beta1": 1 } }, "objc_class_prefix": { @@ -48733,11 +64579,6 @@ "GCWR": 1 } }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.WebRisk.V1Beta1": 1 - } - }, "php_namespace": { "valueCounts": { "Google\\Cloud\\WebRisk\\V1beta1": 1 @@ -48789,7 +64630,8 @@ } ] } - ] + ], + "configFile": "webrisk_v1beta1.yaml" }, { "id": "google.cloud.websecurityscanner.v1", @@ -48805,24 +64647,24 @@ "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.websecurityscanner.v1": 10 + "Google.Cloud.WebSecurityScanner.V1": 10 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 10 + "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1;websecurityscanner": 10 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1;websecurityscanner": 10 + "true": 10 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.WebSecurityScanner.V1": 10 + "com.google.cloud.websecurityscanner.v1": 10 } }, "php_namespace": { @@ -48908,24 +64750,24 @@ ] }, { - "shortName": "ListFindings", - "fullName": "google.cloud.websecurityscanner.v1.WebSecurityScanner.ListFindings", + "shortName": "ListFindingTypeStats", + "fullName": "google.cloud.websecurityscanner.v1.WebSecurityScanner.ListFindingTypeStats", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/scanConfigs/*/scanRuns/*}/findings" + "path": "/v1/{parent=projects/*/scanConfigs/*/scanRuns/*}/findingTypeStats" } ] }, { - "shortName": "ListFindingTypeStats", - "fullName": "google.cloud.websecurityscanner.v1.WebSecurityScanner.ListFindingTypeStats", + "shortName": "ListFindings", + "fullName": "google.cloud.websecurityscanner.v1.WebSecurityScanner.ListFindings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/scanConfigs/*/scanRuns/*}/findingTypeStats" + "path": "/v1/{parent=projects/*/scanConfigs/*/scanRuns/*}/findings" } ] }, @@ -48986,7 +64828,8 @@ } ] } - ] + ], + "configFile": "websecurityscanner_v1.yaml" }, { "id": "google.cloud.websecurityscanner.v1alpha", @@ -49002,9 +64845,9 @@ "google/protobuf" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.websecurityscanner.v1alpha": 7 + "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1alpha;websecurityscanner": 7 } }, "java_multiple_files": { @@ -49012,9 +64855,9 @@ "true": 7 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1alpha;websecurityscanner": 7 + "com.google.cloud.websecurityscanner.v1alpha": 7 } } }, @@ -49090,24 +64933,24 @@ ] }, { - "shortName": "ListFindings", - "fullName": "google.cloud.websecurityscanner.v1alpha.WebSecurityScanner.ListFindings", + "shortName": "ListFindingTypeStats", + "fullName": "google.cloud.websecurityscanner.v1alpha.WebSecurityScanner.ListFindingTypeStats", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=projects/*/scanConfigs/*/scanRuns/*}/findings" + "path": "/v1alpha/{parent=projects/*/scanConfigs/*/scanRuns/*}/findingTypeStats" } ] }, { - "shortName": "ListFindingTypeStats", - "fullName": "google.cloud.websecurityscanner.v1alpha.WebSecurityScanner.ListFindingTypeStats", + "shortName": "ListFindings", + "fullName": "google.cloud.websecurityscanner.v1alpha.WebSecurityScanner.ListFindings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1alpha/{parent=projects/*/scanConfigs/*/scanRuns/*}/findingTypeStats" + "path": "/v1alpha/{parent=projects/*/scanConfigs/*/scanRuns/*}/findings" } ] }, @@ -49168,7 +65011,8 @@ } ] } - ] + ], + "configFile": "websecurityscanner_v1alpha.yaml" }, { "id": "google.cloud.websecurityscanner.v1beta", @@ -49184,24 +65028,24 @@ "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloud.websecurityscanner.v1beta": 10 + "Google.Cloud.WebSecurityScanner.V1Beta": 10 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 10 + "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1beta;websecurityscanner": 10 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/websecurityscanner/v1beta;websecurityscanner": 10 + "true": 10 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.WebSecurityScanner.V1Beta": 10 + "com.google.cloud.websecurityscanner.v1beta": 10 } }, "php_namespace": { @@ -49287,24 +65131,24 @@ ] }, { - "shortName": "ListFindings", - "fullName": "google.cloud.websecurityscanner.v1beta.WebSecurityScanner.ListFindings", + "shortName": "ListFindingTypeStats", + "fullName": "google.cloud.websecurityscanner.v1beta.WebSecurityScanner.ListFindingTypeStats", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*/scanConfigs/*/scanRuns/*}/findings" + "path": "/v1beta/{parent=projects/*/scanConfigs/*/scanRuns/*}/findingTypeStats" } ] }, { - "shortName": "ListFindingTypeStats", - "fullName": "google.cloud.websecurityscanner.v1beta.WebSecurityScanner.ListFindingTypeStats", + "shortName": "ListFindings", + "fullName": "google.cloud.websecurityscanner.v1beta.WebSecurityScanner.ListFindings", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1beta/{parent=projects/*/scanConfigs/*/scanRuns/*}/findingTypeStats" + "path": "/v1beta/{parent=projects/*/scanConfigs/*/scanRuns/*}/findings" } ] }, @@ -49365,7 +65209,8 @@ } ] } - ] + ], + "configFile": "websecurityscanner_v1beta.yaml" }, { "id": "google.cloud.workflows.executions.v1", @@ -49380,9 +65225,9 @@ "google/protobuf" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.workflows.executions.v1": 1 + "google.golang.org/genproto/googleapis/cloud/workflows/executions/v1;executions": 1 } }, "java_multiple_files": { @@ -49390,9 +65235,9 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/workflows/executions/v1;executions": 1 + "com.google.cloud.workflows.executions.v1": 1 } } }, @@ -49447,7 +65292,8 @@ } ] } - ] + ], + "configFile": "workflowexecutions_v1.yaml" }, { "id": "google.cloud.workflows.executions.v1beta", @@ -49462,9 +65308,9 @@ "google/protobuf" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.workflows.executions.v1beta": 1 + "google.golang.org/genproto/googleapis/cloud/workflows/executions/v1beta;executions": 1 } }, "java_multiple_files": { @@ -49472,9 +65318,9 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/workflows/executions/v1beta;executions": 1 + "com.google.cloud.workflows.executions.v1beta": 1 } } }, @@ -49529,7 +65375,8 @@ } ] } - ] + ], + "configFile": "workflowexecutions_v1beta.yaml" }, { "id": "google.cloud.workflows.v1", @@ -49538,16 +65385,16 @@ "majorVersion": "v1", "hostName": "workflows.googleapis.com", "title": "Workflows API", - "description": "Orchestrate Workflows that invoke Google Cloud APIs, SaaS APIs or private API endpoints.", + "description": "Manage workflow definitions. To execute workflows and manage executions, see the Workflows Executions API.", "importDirectories": [ "google/api", "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.workflows.v1": 1 + "google.golang.org/genproto/googleapis/cloud/workflows/v1;workflows": 1 } }, "java_multiple_files": { @@ -49555,9 +65402,9 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/workflows/v1;workflows": 1 + "com.google.cloud.workflows.v1": 1 } } }, @@ -49623,7 +65470,8 @@ } ] } - ] + ], + "configFile": "workflows_v1.yaml" }, { "id": "google.cloud.workflows.v1beta", @@ -49632,16 +65480,16 @@ "majorVersion": "v1", "hostName": "workflows.googleapis.com", "title": "Workflows API", - "description": "", + "description": "Manage workflow definitions. To execute workflows and manage executions, see the Workflows Executions API.", "importDirectories": [ "google/api", "google/longrunning", "google/protobuf" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.cloud.workflows.v1beta": 1 + "google.golang.org/genproto/googleapis/cloud/workflows/v1beta;workflows": 1 } }, "java_multiple_files": { @@ -49649,9 +65497,9 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/cloud/workflows/v1beta;workflows": 1 + "com.google.cloud.workflows.v1beta": 1 } } }, @@ -49717,7 +65565,8 @@ } ] } - ] + ], + "configFile": "workflows_v1beta.yaml" }, { "id": "google.container.v1", @@ -49729,27 +65578,28 @@ "description": "Builds and manages container-based applications, powered by the open source Kubernetes technology.", "importDirectories": [ "google/api", - "google/protobuf" + "google/protobuf", + "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.container.v1": 1 + "Google.Cloud.Container.V1": 1 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/container/v1;container": 1 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/container/v1;container": 1 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Container.V1": 1 + "com.google.container.v1": 1 } }, "php_namespace": { @@ -50242,7 +66092,8 @@ } ] } - ] + ], + "configFile": "container_v1.yaml" }, { "id": "google.container.v1beta1", @@ -50255,27 +66106,28 @@ "importDirectories": [ "google/api", "google/protobuf", - "google/rpc" + "google/rpc", + "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.container.v1beta1": 1 + "Google.Cloud.Container.V1Beta1": 1 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/container/v1beta1;container": 1 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/container/v1beta1;container": 1 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Container.V1Beta1": 1 + "com.google.container.v1beta1": 1 } }, "php_namespace": { @@ -50779,7 +66631,184 @@ } ] } - ] + ], + "configFile": "container_v1beta1.yaml" + }, + { + "id": "google.dataflow.v1beta3", + "directory": "google/dataflow/v1beta3", + "version": "v1beta3", + "majorVersion": "v1", + "hostName": "dataflow.googleapis.com", + "title": "Dataflow API", + "description": "Manages Google Cloud Dataflow projects on Google Cloud Platform.", + "importDirectories": [ + "google/api", + "google/dataflow/v1beta3", + "google/protobuf", + "google/rpc" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Dataflow.V1Beta3": 7 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/dataflow/v1beta3;dataflow": 7 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 7 + } + }, + "java_package": { + "valueCounts": { + "com.google.dataflow.v1beta3": 7 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Dataflow\\V1beta3": 7 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Dataflow::V1beta3": 7 + } + } + }, + "services": [ + { + "shortName": "FlexTemplatesService", + "fullName": "google.dataflow.v1beta3.FlexTemplatesService", + "methods": [ + { + "shortName": "LaunchFlexTemplate", + "fullName": "google.dataflow.v1beta3.FlexTemplatesService.LaunchFlexTemplate", + "mode": "UNARY" + } + ] + }, + { + "shortName": "JobsV1Beta3", + "fullName": "google.dataflow.v1beta3.JobsV1Beta3", + "methods": [ + { + "shortName": "AggregatedListJobs", + "fullName": "google.dataflow.v1beta3.JobsV1Beta3.AggregatedListJobs", + "mode": "UNARY" + }, + { + "shortName": "CheckActiveJobs", + "fullName": "google.dataflow.v1beta3.JobsV1Beta3.CheckActiveJobs", + "mode": "UNARY" + }, + { + "shortName": "CreateJob", + "fullName": "google.dataflow.v1beta3.JobsV1Beta3.CreateJob", + "mode": "UNARY" + }, + { + "shortName": "GetJob", + "fullName": "google.dataflow.v1beta3.JobsV1Beta3.GetJob", + "mode": "UNARY" + }, + { + "shortName": "ListJobs", + "fullName": "google.dataflow.v1beta3.JobsV1Beta3.ListJobs", + "mode": "UNARY" + }, + { + "shortName": "SnapshotJob", + "fullName": "google.dataflow.v1beta3.JobsV1Beta3.SnapshotJob", + "mode": "UNARY" + }, + { + "shortName": "UpdateJob", + "fullName": "google.dataflow.v1beta3.JobsV1Beta3.UpdateJob", + "mode": "UNARY" + } + ] + }, + { + "shortName": "MessagesV1Beta3", + "fullName": "google.dataflow.v1beta3.MessagesV1Beta3", + "methods": [ + { + "shortName": "ListJobMessages", + "fullName": "google.dataflow.v1beta3.MessagesV1Beta3.ListJobMessages", + "mode": "UNARY" + } + ] + }, + { + "shortName": "MetricsV1Beta3", + "fullName": "google.dataflow.v1beta3.MetricsV1Beta3", + "methods": [ + { + "shortName": "GetJobExecutionDetails", + "fullName": "google.dataflow.v1beta3.MetricsV1Beta3.GetJobExecutionDetails", + "mode": "UNARY" + }, + { + "shortName": "GetJobMetrics", + "fullName": "google.dataflow.v1beta3.MetricsV1Beta3.GetJobMetrics", + "mode": "UNARY" + }, + { + "shortName": "GetStageExecutionDetails", + "fullName": "google.dataflow.v1beta3.MetricsV1Beta3.GetStageExecutionDetails", + "mode": "UNARY" + } + ] + }, + { + "shortName": "SnapshotsV1Beta3", + "fullName": "google.dataflow.v1beta3.SnapshotsV1Beta3", + "methods": [ + { + "shortName": "DeleteSnapshot", + "fullName": "google.dataflow.v1beta3.SnapshotsV1Beta3.DeleteSnapshot", + "mode": "UNARY" + }, + { + "shortName": "GetSnapshot", + "fullName": "google.dataflow.v1beta3.SnapshotsV1Beta3.GetSnapshot", + "mode": "UNARY" + }, + { + "shortName": "ListSnapshots", + "fullName": "google.dataflow.v1beta3.SnapshotsV1Beta3.ListSnapshots", + "mode": "UNARY" + } + ] + }, + { + "shortName": "TemplatesService", + "fullName": "google.dataflow.v1beta3.TemplatesService", + "methods": [ + { + "shortName": "CreateJobFromTemplate", + "fullName": "google.dataflow.v1beta3.TemplatesService.CreateJobFromTemplate", + "mode": "UNARY" + }, + { + "shortName": "GetTemplate", + "fullName": "google.dataflow.v1beta3.TemplatesService.GetTemplate", + "mode": "UNARY" + }, + { + "shortName": "LaunchTemplate", + "fullName": "google.dataflow.v1beta3.TemplatesService.LaunchTemplate", + "mode": "UNARY" + } + ] + } + ], + "configFile": "dataflow_v1beta3.yaml" }, { "id": "google.datastore.admin.v1", @@ -50796,24 +66825,24 @@ "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.datastore.admin.v1": 3 + "Google.Cloud.Datastore.Admin.V1": 3 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 3 + "google.golang.org/genproto/googleapis/datastore/admin/v1;admin": 3 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/datastore/admin/v1;admin": 3 + "true": 3 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Datastore.Admin.V1": 3 + "com.google.datastore.admin.v1": 3 } }, "php_namespace": { @@ -50900,7 +66929,8 @@ } ] } - ] + ], + "configFile": "datastore_v1.yaml" }, { "id": "google.datastore.v1", @@ -50917,24 +66947,24 @@ "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.datastore.v1": 3 + "Google.Cloud.Datastore.V1": 3 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 3 + "google.golang.org/genproto/googleapis/datastore/v1;datastore": 3 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/datastore/v1;datastore": 3 + "true": 3 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Datastore.V1": 3 + "com.google.datastore.v1": 3 } }, "php_namespace": { @@ -51032,7 +67062,97 @@ } ] } - ] + ], + "configFile": "datastore_v1.yaml" + }, + { + "id": "google.devtools.artifactregistry.v1", + "directory": "google/devtools/artifactregistry/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "artifactregistry.googleapis.com", + "title": "Artifact Registry API", + "description": "Store and manage build artifacts in a scalable and integrated service built on Google infrastructure.", + "importDirectories": [ + "google/api", + "google/devtools/artifactregistry/v1", + "google/iam/v1", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.ArtifactRegistry.V1": 3 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/devtools/artifactregistry/v1;artifactregistry": 3 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 3 + } + }, + "java_package": { + "valueCounts": { + "com.google.devtools.artifactregistry.v1": 3 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\ArtifactRegistry\\V1": 3 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::ArtifactRegistry::V1": 3 + } + } + }, + "services": [ + { + "shortName": "ArtifactRegistry", + "fullName": "google.devtools.artifactregistry.v1.ArtifactRegistry", + "methods": [ + { + "shortName": "GetRepository", + "fullName": "google.devtools.artifactregistry.v1.ArtifactRegistry.GetRepository", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/repositories/*}" + } + ] + }, + { + "shortName": "ListDockerImages", + "fullName": "google.devtools.artifactregistry.v1.ArtifactRegistry.ListDockerImages", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*/repositories/*}/dockerImages" + } + ] + }, + { + "shortName": "ListRepositories", + "fullName": "google.devtools.artifactregistry.v1.ArtifactRegistry.ListRepositories", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/repositories" + } + ] + } + ] + } + ], + "configFile": "artifactregistry_v1.yaml" }, { "id": "google.devtools.artifactregistry.v1beta2", @@ -51047,37 +67167,38 @@ "google/devtools/artifactregistry/v1beta2", "google/iam/v1", "google/longrunning", - "google/protobuf" + "google/protobuf", + "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.devtools.artifactregistry.v1beta2": 7 + "Google.Cloud.ArtifactRegistry.V1Beta2": 9 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 7 + "google.golang.org/genproto/googleapis/devtools/artifactregistry/v1beta2;artifactregistry": 9 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/devtools/artifactregistry/v1beta2;artifactregistry": 7 + "true": 9 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.ArtifactRegistry.V1Beta2": 7 + "com.google.devtools.artifactregistry.v1beta2": 9 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\ArtifactRegistry\\V1beta2": 7 + "Google\\Cloud\\ArtifactRegistry\\V1beta2": 9 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::ArtifactRegistry::V1beta2": 7 + "Google::Cloud::ArtifactRegistry::V1beta2": 9 } } }, @@ -51185,6 +67306,17 @@ } ] }, + { + "shortName": "GetProjectSettings", + "fullName": "google.devtools.artifactregistry.v1beta2.ArtifactRegistry.GetProjectSettings", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1beta2/{name=projects/*/projectSettings}" + } + ] + }, { "shortName": "GetRepository", "fullName": "google.devtools.artifactregistry.v1beta2.ArtifactRegistry.GetRepository", @@ -51218,6 +67350,28 @@ } ] }, + { + "shortName": "ImportAptArtifacts", + "fullName": "google.devtools.artifactregistry.v1beta2.ArtifactRegistry.ImportAptArtifacts", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta2/{parent=projects/*/locations/*/repositories/*}/aptArtifacts:import" + } + ] + }, + { + "shortName": "ImportYumArtifacts", + "fullName": "google.devtools.artifactregistry.v1beta2.ArtifactRegistry.ImportYumArtifacts", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1beta2/{parent=projects/*/locations/*/repositories/*}/yumArtifacts:import" + } + ] + }, { "shortName": "ListFiles", "fullName": "google.devtools.artifactregistry.v1beta2.ArtifactRegistry.ListFiles", @@ -51295,6 +67449,17 @@ } ] }, + { + "shortName": "UpdateProjectSettings", + "fullName": "google.devtools.artifactregistry.v1beta2.ArtifactRegistry.UpdateProjectSettings", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1beta2/{project_settings.name=projects/*/projectSettings}" + } + ] + }, { "shortName": "UpdateRepository", "fullName": "google.devtools.artifactregistry.v1beta2.ArtifactRegistry.UpdateRepository", @@ -51319,7 +67484,8 @@ } ] } - ] + ], + "configFile": "artifactregistry_v1beta2.yaml" }, { "id": "google.devtools.build.v1", @@ -51335,12 +67501,7 @@ "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.devtools.build.v1": 3 - } - }, - "java_multiple_files": { + "cc_enable_arenas": { "valueCounts": { "true": 3 } @@ -51350,11 +67511,16 @@ "google.golang.org/genproto/googleapis/devtools/build/v1;build": 3 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 3 } }, + "java_package": { + "valueCounts": { + "com.google.devtools.build.v1": 3 + } + }, "php_namespace": { "valueCounts": { "Google\\Cloud\\Build\\V1": 3 @@ -51398,7 +67564,8 @@ } ] } - ] + ], + "configFile": "buildeventservice_v1.yaml" }, { "id": "google.devtools.cloudbuild.v1", @@ -51414,9 +67581,14 @@ "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.cloudbuild.v1": 1 + "Google.Cloud.CloudBuild.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/devtools/cloudbuild/v1;cloudbuild": 1 } }, "java_multiple_files": { @@ -51424,9 +67596,9 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/devtools/cloudbuild/v1;cloudbuild": 1 + "com.google.cloudbuild.v1": 1 } }, "objc_class_prefix": { @@ -51434,11 +67606,6 @@ "GCB": 1 } }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.CloudBuild.V1": 1 - } - }, "ruby_package": { "valueCounts": { "Google::Cloud::Build::V1": 1 @@ -51450,6 +67617,21 @@ "shortName": "CloudBuild", "fullName": "google.devtools.cloudbuild.v1.CloudBuild", "methods": [ + { + "shortName": "ApproveBuild", + "fullName": "google.devtools.cloudbuild.v1.CloudBuild.ApproveBuild", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/builds/*}:approve" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/builds/*}:approve" + } + ] + }, { "shortName": "CancelBuild", "fullName": "google.devtools.cloudbuild.v1.CloudBuild.CancelBuild", @@ -51488,13 +67670,23 @@ { "httpMethod": "POST", "path": "/v1/projects/{project_id}/triggers" + }, + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/triggers" } ] }, { "shortName": "CreateWorkerPool", "fullName": "google.devtools.cloudbuild.v1.CloudBuild.CreateWorkerPool", - "mode": "UNARY" + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=projects/*/locations/*}/workerPools" + } + ] }, { "shortName": "DeleteBuildTrigger", @@ -51504,13 +67696,23 @@ { "httpMethod": "DELETE", "path": "/v1/projects/{project_id}/triggers/{trigger_id}" + }, + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/triggers/*}" } ] }, { "shortName": "DeleteWorkerPool", "fullName": "google.devtools.cloudbuild.v1.CloudBuild.DeleteWorkerPool", - "mode": "UNARY" + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=projects/*/locations/*/workerPools/*}" + } + ] }, { "shortName": "GetBuild", @@ -51535,44 +67737,64 @@ { "httpMethod": "GET", "path": "/v1/projects/{project_id}/triggers/{trigger_id}" + }, + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/triggers/*}" } ] }, { "shortName": "GetWorkerPool", "fullName": "google.devtools.cloudbuild.v1.CloudBuild.GetWorkerPool", - "mode": "UNARY" + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/locations/*/workerPools/*}" + } + ] }, { - "shortName": "ListBuilds", - "fullName": "google.devtools.cloudbuild.v1.CloudBuild.ListBuilds", + "shortName": "ListBuildTriggers", + "fullName": "google.devtools.cloudbuild.v1.CloudBuild.ListBuildTriggers", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/projects/{project_id}/builds" + "path": "/v1/projects/{project_id}/triggers" }, { "httpMethod": "GET", - "path": "/v1/{parent=projects/*/locations/*}/builds" + "path": "/v1/{parent=projects/*/locations/*}/triggers" } ] }, { - "shortName": "ListBuildTriggers", - "fullName": "google.devtools.cloudbuild.v1.CloudBuild.ListBuildTriggers", + "shortName": "ListBuilds", + "fullName": "google.devtools.cloudbuild.v1.CloudBuild.ListBuilds", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/projects/{project_id}/triggers" + "path": "/v1/projects/{project_id}/builds" + }, + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/builds" } ] }, { "shortName": "ListWorkerPools", "fullName": "google.devtools.cloudbuild.v1.CloudBuild.ListWorkerPools", - "mode": "UNARY" + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*/locations/*}/workerPools" + } + ] }, { "shortName": "ReceiveTriggerWebhook", @@ -51582,6 +67804,10 @@ { "httpMethod": "POST", "path": "/v1/projects/{project_id}/triggers/{trigger}:webhook" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/triggers/*}:webhook" } ] }, @@ -51608,6 +67834,10 @@ { "httpMethod": "POST", "path": "/v1/projects/{project_id}/triggers/{trigger_id}:run" + }, + { + "httpMethod": "POST", + "path": "/v1/{name=projects/*/locations/*/triggers/*}:run" } ] }, @@ -51619,17 +67849,28 @@ { "httpMethod": "PATCH", "path": "/v1/projects/{project_id}/triggers/{trigger_id}" + }, + { + "httpMethod": "PATCH", + "path": "/v1/{trigger.resource_name=projects/*/locations/*/triggers/*}" } ] }, { "shortName": "UpdateWorkerPool", "fullName": "google.devtools.cloudbuild.v1.CloudBuild.UpdateWorkerPool", - "mode": "UNARY" + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{worker_pool.name=projects/*/locations/*/workerPools/*}" + } + ] } ] } - ] + ], + "configFile": "cloudbuild_v1.yaml" }, { "id": "google.devtools.clouddebugger.v2", @@ -51646,14 +67887,15 @@ "google/protobuf" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.devtools.clouddebugger.v2": 3 + "": 2, + "true": 1 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 3 + "Google.Cloud.Debugger.V2": 3 } }, "go_package": { @@ -51661,15 +67903,14 @@ "google.golang.org/genproto/googleapis/devtools/clouddebugger/v2;clouddebugger": 3 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { - "true": 1, - "": 2 + "true": 3 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Debugger.V2": 3 + "com.google.devtools.clouddebugger.v2": 3 } }, "php_namespace": { @@ -51784,7 +68025,8 @@ } ] } - ] + ], + "configFile": "clouddebugger_v2.yaml" }, { "id": "google.devtools.clouderrorreporting.v1beta1", @@ -51800,14 +68042,14 @@ "google/protobuf" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.devtools.clouderrorreporting.v1beta1": 4 + "true": 4 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 4 + "Google.Cloud.ErrorReporting.V1Beta1": 4 } }, "go_package": { @@ -51815,14 +68057,14 @@ "google.golang.org/genproto/googleapis/devtools/clouderrorreporting/v1beta1;clouderrorreporting": 4 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 4 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.ErrorReporting.V1Beta1": 4 + "com.google.devtools.clouderrorreporting.v1beta1": 4 } }, "php_namespace": { @@ -51921,7 +68163,8 @@ } ] } - ] + ], + "configFile": "clouderrorreporting_v1beta1.yaml" }, { "id": "google.devtools.cloudprofiler.v2", @@ -51936,24 +68179,24 @@ "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.devtools.cloudprofiler.v2": 1 + "Google.Cloud.Profiler.V2": 1 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/devtools/cloudprofiler/v2;cloudprofiler": 1 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/devtools/cloudprofiler/v2;cloudprofiler": 1 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Profiler.V2": 1 + "com.google.devtools.cloudprofiler.v2": 1 } }, "php_namespace": { @@ -52007,7 +68250,8 @@ } ] } - ] + ], + "configFile": "cloudprofiler_v2.yaml" }, { "id": "google.devtools.cloudtrace.v1", @@ -52022,24 +68266,24 @@ "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.devtools.cloudtrace.v1": 1 + "Google.Cloud.Trace.V1": 1 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/devtools/cloudtrace/v1;cloudtrace": 1 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/devtools/cloudtrace/v1;cloudtrace": 1 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Trace.V1": 1 + "com.google.devtools.cloudtrace.v1": 1 } }, "php_namespace": { @@ -52093,7 +68337,8 @@ } ] } - ] + ], + "configFile": "cloudtrace_v1.yaml" }, { "id": "google.devtools.cloudtrace.v2", @@ -52110,24 +68355,24 @@ "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.devtools.cloudtrace.v2": 2 + "Google.Cloud.Trace.V2": 2 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 2 + "google.golang.org/genproto/googleapis/devtools/cloudtrace/v2;cloudtrace": 2 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/devtools/cloudtrace/v2;cloudtrace": 2 + "true": 2 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Trace.V2": 2 + "com.google.devtools.cloudtrace.v2": 2 } }, "php_namespace": { @@ -52170,7 +68415,8 @@ } ] } - ] + ], + "configFile": "cloudtrace_v2.yaml" }, { "id": "google.devtools.containeranalysis.v1", @@ -52187,9 +68433,14 @@ "grafeas/v1" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.containeranalysis.v1": 1 + "Google.Cloud.DevTools.ContainerAnalysis.V1": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1;containeranalysis": 1 } }, "java_multiple_files": { @@ -52197,9 +68448,9 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1;containeranalysis": 1 + "com.google.containeranalysis.v1": 1 } }, "objc_class_prefix": { @@ -52207,11 +68458,6 @@ "GCA": 1 } }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.DevTools.ContainerAnalysis.V1": 1 - } - }, "php_namespace": { "valueCounts": { "Google\\Cloud\\ContainerAnalysis\\V1": 1 @@ -52286,7 +68532,8 @@ } ] } - ] + ], + "configFile": "containeranalysis_v1.yaml" }, { "id": "google.devtools.containeranalysis.v1beta1", @@ -52314,20 +68561,21 @@ "google/rpc" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "io.grafeas.v1beta1.image": 1, - "io.grafeas.v1beta1.common": 1, - "io.grafeas.v1beta1.discovery": 1, - "io.grafeas.v1beta1.vulnerability": 2, - "io.grafeas.v1beta1.pkg": 1, - "io.grafeas.v1beta1.attestation": 1, - "io.grafeas.v1beta1.source": 1, - "io.grafeas.v1beta1.provenance": 1, - "io.grafeas.v1beta1.build": 1, - "io.grafeas.v1beta1.deployment": 1, - "io.grafeas.v1beta1": 1, - "com.google.containeranalysis.v1beta1": 1 + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/attestation;attestation": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/build;build": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/common;common": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/cvss;cvss": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/deployment;deployment": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/discovery;discovery": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/grafeas;grafeas": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/image;image": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/package": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/provenance;provenance": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/source;source": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/vulnerability;vulnerability": 1, + "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1;containeranalysis": 1 } }, "java_multiple_files": { @@ -52335,27 +68583,26 @@ "true": 13 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/image;image": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/common;common": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/discovery;discovery": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/cvss;cvss": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/package": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/attestation;attestation": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/source;source": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/provenance;provenance": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/build;build": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/deployment;deployment": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/vulnerability;vulnerability": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1/grafeas;grafeas": 1, - "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1beta1;containeranalysis": 1 + "com.google.containeranalysis.v1beta1": 1, + "io.grafeas.v1beta1": 1, + "io.grafeas.v1beta1.attestation": 1, + "io.grafeas.v1beta1.build": 1, + "io.grafeas.v1beta1.common": 1, + "io.grafeas.v1beta1.deployment": 1, + "io.grafeas.v1beta1.discovery": 1, + "io.grafeas.v1beta1.image": 1, + "io.grafeas.v1beta1.pkg": 1, + "io.grafeas.v1beta1.provenance": 1, + "io.grafeas.v1beta1.source": 1, + "io.grafeas.v1beta1.vulnerability": 2 } }, "objc_class_prefix": { "valueCounts": { - "GRA": 12, - "GCA": 1 + "GCA": 1, + "GRA": 12 } } }, @@ -52615,7 +68862,8 @@ } ] } - ] + ], + "configFile": "containeranalysis_v1beta1.yaml" }, { "id": "google.devtools.remoteworkers.v1test2", @@ -52632,9 +68880,14 @@ "google/rpc" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.devtools.remoteworkers.v1test2": 3 + "Google.DevTools.RemoteWorkers.V1Test2": 3 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/devtools/remoteworkers/v1test2;remoteworkers": 3 } }, "java_multiple_files": { @@ -52642,9 +68895,9 @@ "true": 3 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/devtools/remoteworkers/v1test2;remoteworkers": 3 + "com.google.devtools.remoteworkers.v1test2": 3 } }, "objc_class_prefix": { @@ -52652,11 +68905,6 @@ "RW": 3 } }, - "csharp_namespace": { - "valueCounts": { - "Google.DevTools.RemoteWorkers.V1Test2": 3 - } - }, "php_namespace": { "valueCounts": { "Google\\Cloud\\Remoteworkers\\V1test2": 3 @@ -52692,7 +68940,8 @@ } ] } - ] + ], + "configFile": "remoteworkers_v1beta2.yaml" }, { "id": "google.devtools.resultstore.v2", @@ -52708,9 +68957,9 @@ "google/protobuf" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.devtools.resultstore.v2": 17 + "google.golang.org/genproto/googleapis/devtools/resultstore/v2;resultstore": 17 } }, "java_multiple_files": { @@ -52718,9 +68967,9 @@ "true": 17 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/devtools/resultstore/v2;resultstore": 17 + "com.google.devtools.resultstore.v2": 17 } } }, @@ -53220,7 +69469,116 @@ } ] } - ] + ], + "configFile": "resultstore_v2.yaml" + }, + { + "id": "google.devtools.testing.v1", + "directory": "google/devtools/testing/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "testing.googleapis.com", + "title": "Cloud Testing API", + "description": "Allows developers to run automated tests for their mobile applications on Google infrastructure.", + "importDirectories": [ + "google/api", + "google/devtools/testing/v1", + "google/protobuf", + "google/type" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/devtools/testing/v1;testing": 3 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 3 + } + }, + "java_package": { + "valueCounts": { + "com.google.devtools.testing.v1": 3 + } + } + }, + "services": [ + { + "shortName": "ApplicationDetailService", + "fullName": "google.devtools.testing.v1.ApplicationDetailService", + "methods": [ + { + "shortName": "GetApkDetails", + "fullName": "google.devtools.testing.v1.ApplicationDetailService.GetApkDetails", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/applicationDetailService/getApkDetails" + } + ] + } + ] + }, + { + "shortName": "TestEnvironmentDiscoveryService", + "fullName": "google.devtools.testing.v1.TestEnvironmentDiscoveryService", + "methods": [ + { + "shortName": "GetTestEnvironmentCatalog", + "fullName": "google.devtools.testing.v1.TestEnvironmentDiscoveryService.GetTestEnvironmentCatalog", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/testEnvironmentCatalog/{environment_type}" + } + ] + } + ] + }, + { + "shortName": "TestExecutionService", + "fullName": "google.devtools.testing.v1.TestExecutionService", + "methods": [ + { + "shortName": "CancelTestMatrix", + "fullName": "google.devtools.testing.v1.TestExecutionService.CancelTestMatrix", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/projects/{project_id}/testMatrices/{test_matrix_id}:cancel" + } + ] + }, + { + "shortName": "CreateTestMatrix", + "fullName": "google.devtools.testing.v1.TestExecutionService.CreateTestMatrix", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/projects/{project_id}/testMatrices" + } + ] + }, + { + "shortName": "GetTestMatrix", + "fullName": "google.devtools.testing.v1.TestExecutionService.GetTestMatrix", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/projects/{project_id}/testMatrices/{test_matrix_id}" + } + ] + } + ] + } + ], + "configFile": "testing_v1.yaml" }, { "id": "google.firestore.admin.v1", @@ -53238,39 +69596,39 @@ "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.firestore.admin.v1": 5 + "Google.Cloud.Firestore.Admin.V1": 6 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 5 + "google.golang.org/genproto/googleapis/firestore/admin/v1;admin": 6 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/firestore/admin/v1;admin": 5 + "true": 6 } }, - "objc_class_prefix": { + "java_package": { "valueCounts": { - "GCFS": 5 + "com.google.firestore.admin.v1": 6 } }, - "csharp_namespace": { + "objc_class_prefix": { "valueCounts": { - "Google.Cloud.Firestore.Admin.V1": 5 + "GCFS": 6 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Firestore\\Admin\\V1": 5 + "Google\\Cloud\\Firestore\\Admin\\V1": 6 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::Firestore::Admin::V1": 5 + "Google::Cloud::Firestore::Admin::V1": 6 } } }, @@ -53312,6 +69670,17 @@ } ] }, + { + "shortName": "GetDatabase", + "fullName": "google.firestore.admin.v1.FirestoreAdmin.GetDatabase", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=projects/*/databases/*}" + } + ] + }, { "shortName": "GetField", "fullName": "google.firestore.admin.v1.FirestoreAdmin.GetField", @@ -53345,6 +69714,17 @@ } ] }, + { + "shortName": "ListDatabases", + "fullName": "google.firestore.admin.v1.FirestoreAdmin.ListDatabases", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=projects/*}/databases" + } + ] + }, { "shortName": "ListFields", "fullName": "google.firestore.admin.v1.FirestoreAdmin.ListFields", @@ -53367,6 +69747,17 @@ } ] }, + { + "shortName": "UpdateDatabase", + "fullName": "google.firestore.admin.v1.FirestoreAdmin.UpdateDatabase", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{database.name=projects/*/databases/*}" + } + ] + }, { "shortName": "UpdateField", "fullName": "google.firestore.admin.v1.FirestoreAdmin.UpdateField", @@ -53380,7 +69771,8 @@ } ] } - ] + ], + "configFile": "firestore_v1.yaml" }, { "id": "google.firestore.v1", @@ -53398,9 +69790,14 @@ "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.firestore.v1": 5 + "Google.Cloud.Firestore.V1": 5 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/firestore/v1;firestore": 5 } }, "java_multiple_files": { @@ -53408,9 +69805,9 @@ "true": 5 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/firestore/v1;firestore": 5 + "com.google.firestore.v1": 5 } }, "objc_class_prefix": { @@ -53418,11 +69815,6 @@ "GCFS": 5 } }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Firestore.V1": 5 - } - }, "php_namespace": { "valueCounts": { "Google\\Cloud\\Firestore\\V1": 5 @@ -53618,7 +70010,8 @@ } ] } - ] + ], + "configFile": "firestore_v1.yaml" }, { "id": "google.firestore.v1beta1", @@ -53636,9 +70029,14 @@ "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.firestore.v1beta1": 5 + "Google.Cloud.Firestore.V1Beta1": 5 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/firestore/v1beta1;firestore": 5 } }, "java_multiple_files": { @@ -53646,9 +70044,9 @@ "true": 5 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/firestore/v1beta1;firestore": 5 + "com.google.firestore.v1beta1": 5 } }, "objc_class_prefix": { @@ -53656,11 +70054,6 @@ "GCFS": 5 } }, - "csharp_namespace": { - "valueCounts": { - "Google.Cloud.Firestore.V1Beta1": 5 - } - }, "php_namespace": { "valueCounts": { "Google\\Cloud\\Firestore\\V1beta1": 5 @@ -53856,7 +70249,8 @@ } ] } - ] + ], + "configFile": "firestore_v1beta1.yaml" }, { "id": "google.home.enterprise.sdm.v1", @@ -53872,9 +70266,14 @@ "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.home.enterprise.sdm.v1": 3 + "Google.Home.Enterprise.Sdm.V1": 3 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/home/enterprise/sdm/v1;sdm": 3 } }, "java_multiple_files": { @@ -53882,9 +70281,9 @@ "true": 3 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/home/enterprise/sdm/v1;sdm": 3 + "com.google.home.enterprise.sdm.v1": 3 } }, "objc_class_prefix": { @@ -53892,11 +70291,6 @@ "GHENTSDM": 3 } }, - "csharp_namespace": { - "valueCounts": { - "Google.Home.Enterprise.Sdm.V1": 3 - } - }, "php_namespace": { "valueCounts": { "Google\\Home\\Enterprise\\Sdm\\V1": 3 @@ -53987,7 +70381,8 @@ } ] } - ] + ], + "configFile": "smartdevicemanagement_v1.yaml" }, { "id": "google.home.graph.v1", @@ -54003,14 +70398,14 @@ "google/protobuf" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.home.graph.v1": 2 + "google.golang.org/genproto/googleapis/home/graph/v1;graph": 2 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/home/graph/v1;graph": 2 + "com.google.home.graph.v1": 2 } }, "php_namespace": { @@ -54081,7 +70476,8 @@ } ] } - ] + ], + "configFile": "homegraph_v1.yaml" }, { "id": "google.iam.admin.v1", @@ -54098,14 +70494,15 @@ "google/type" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.iam.admin.v1": 2 + "": 1, + "true": 1 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 2 + "Google.Cloud.Iam.Admin.V1": 2 } }, "go_package": { @@ -54113,10 +70510,19 @@ "google.golang.org/genproto/googleapis/iam/admin/v1;admin": 2 } }, - "cc_enable_arenas": { + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.iam.admin.v1": 2 + } + }, + "php_namespace": { "valueCounts": { - "true": 1, - "": 1 + "Google\\Cloud\\Iam\\Admin\\V1": 2 } } }, @@ -54478,7 +70884,8 @@ } ] } - ] + ], + "configFile": "iam.yaml" }, { "id": "google.iam.credentials.v1", @@ -54494,14 +70901,14 @@ "google/protobuf" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.cloud.iam.credentials.v1": 2 + "true": 2 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 2 + "Google.Cloud.Iam.Credentials.V1": 2 } }, "go_package": { @@ -54509,14 +70916,14 @@ "google.golang.org/genproto/googleapis/iam/credentials/v1;credentials": 2 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 2 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Iam.Credentials.V1": 2 + "com.google.cloud.iam.credentials.v1": 2 } } }, @@ -54571,7 +70978,8 @@ } ] } - ] + ], + "configFile": "iamcredentials_v1.yaml" }, { "id": "google.iam.v1", @@ -54587,39 +70995,39 @@ "google/type" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.iam.v1": 3, - "com.google.iam.v1.logging": 1 + "": 1, + "true": 3 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 4 + "Google.Cloud.Iam.V1": 3, + "Google.Cloud.Iam.V1.Logging": 1 } }, "go_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/iam/v1;iam": 3, - "google.golang.org/genproto/googleapis/iam/v1/logging;logging": 1 + "google.golang.org/genproto/googleapis/iam/v1/logging;logging": 1, + "google.golang.org/genproto/googleapis/iam/v1;iam": 3 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { - "true": 3, - "": 1 + "true": 4 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Iam.V1": 3, - "Google.Cloud.Iam.V1.Logging": 1 + "com.google.iam.v1": 3, + "com.google.iam.v1.logging": 1 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Iam\\V1": 3, - "": 1 + "": 1, + "Google\\Cloud\\Iam\\V1": 3 } } }, @@ -54663,7 +71071,8 @@ } ] } - ] + ], + "configFile": "iam_meta_api.yaml" }, { "id": "google.iam.v1beta", @@ -54679,9 +71088,9 @@ "google/protobuf" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.iam.v1beta": 1 + "google.golang.org/genproto/googleapis/iam/v1beta;iam": 1 } }, "java_multiple_files": { @@ -54689,9 +71098,9 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/iam/v1beta;iam": 1 + "com.google.iam.v1beta": 1 } } }, @@ -54834,7 +71243,324 @@ } ] } - ] + ], + "configFile": "iam_v1beta.yaml" + }, + { + "id": "google.identity.accesscontextmanager.v1", + "directory": "google/identity/accesscontextmanager/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "accesscontextmanager.googleapis.com", + "title": "Access Context Manager API", + "description": "An API for setting attribute based access control to requests to GCP services.", + "importDirectories": [ + "google/api", + "google/identity/accesscontextmanager/type", + "google/identity/accesscontextmanager/v1", + "google/longrunning", + "google/protobuf", + "google/type" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Identity.AccessContextManager.V1": 5 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/identity/accesscontextmanager/v1;accesscontextmanager": 5 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 5 + } + }, + "java_package": { + "valueCounts": { + "com.google.identity.accesscontextmanager.v1": 5 + } + }, + "objc_class_prefix": { + "valueCounts": { + "GACM": 5 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Identity\\AccessContextManager\\V1": 5 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Identity::AccessContextManager::V1": 5 + } + } + }, + "services": [ + { + "shortName": "AccessContextManager", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager", + "methods": [ + { + "shortName": "CommitServicePerimeters", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.CommitServicePerimeters", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accessPolicies/*}/servicePerimeters:commit" + } + ] + }, + { + "shortName": "CreateAccessLevel", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.CreateAccessLevel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accessPolicies/*}/accessLevels" + } + ] + }, + { + "shortName": "CreateAccessPolicy", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.CreateAccessPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/accessPolicies" + } + ] + }, + { + "shortName": "CreateGcpUserAccessBinding", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.CreateGcpUserAccessBinding", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=organizations/*}/gcpUserAccessBindings" + } + ] + }, + { + "shortName": "CreateServicePerimeter", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.CreateServicePerimeter", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accessPolicies/*}/servicePerimeters" + } + ] + }, + { + "shortName": "DeleteAccessLevel", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.DeleteAccessLevel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=accessPolicies/*/accessLevels/*}" + } + ] + }, + { + "shortName": "DeleteAccessPolicy", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.DeleteAccessPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=accessPolicies/*}" + } + ] + }, + { + "shortName": "DeleteGcpUserAccessBinding", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.DeleteGcpUserAccessBinding", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=organizations/*/gcpUserAccessBindings/*}" + } + ] + }, + { + "shortName": "DeleteServicePerimeter", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.DeleteServicePerimeter", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=accessPolicies/*/servicePerimeters/*}" + } + ] + }, + { + "shortName": "GetAccessLevel", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.GetAccessLevel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=accessPolicies/*/accessLevels/*}" + } + ] + }, + { + "shortName": "GetAccessPolicy", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.GetAccessPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=accessPolicies/*}" + } + ] + }, + { + "shortName": "GetGcpUserAccessBinding", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.GetGcpUserAccessBinding", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=organizations/*/gcpUserAccessBindings/*}" + } + ] + }, + { + "shortName": "GetServicePerimeter", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.GetServicePerimeter", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=accessPolicies/*/servicePerimeters/*}" + } + ] + }, + { + "shortName": "ListAccessLevels", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.ListAccessLevels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=accessPolicies/*}/accessLevels" + } + ] + }, + { + "shortName": "ListAccessPolicies", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.ListAccessPolicies", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/accessPolicies" + } + ] + }, + { + "shortName": "ListGcpUserAccessBindings", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.ListGcpUserAccessBindings", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=organizations/*}/gcpUserAccessBindings" + } + ] + }, + { + "shortName": "ListServicePerimeters", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.ListServicePerimeters", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=accessPolicies/*}/servicePerimeters" + } + ] + }, + { + "shortName": "ReplaceAccessLevels", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.ReplaceAccessLevels", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accessPolicies/*}/accessLevels:replaceAll" + } + ] + }, + { + "shortName": "ReplaceServicePerimeters", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.ReplaceServicePerimeters", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=accessPolicies/*}/servicePerimeters:replaceAll" + } + ] + }, + { + "shortName": "UpdateAccessLevel", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.UpdateAccessLevel", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{access_level.name=accessPolicies/*/accessLevels/*}" + } + ] + }, + { + "shortName": "UpdateAccessPolicy", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.UpdateAccessPolicy", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{policy.name=accessPolicies/*}" + } + ] + }, + { + "shortName": "UpdateGcpUserAccessBinding", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.UpdateGcpUserAccessBinding", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{gcp_user_access_binding.name=organizations/*/gcpUserAccessBindings/*}" + } + ] + }, + { + "shortName": "UpdateServicePerimeter", + "fullName": "google.identity.accesscontextmanager.v1.AccessContextManager.UpdateServicePerimeter", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{service_perimeter.name=accessPolicies/*/servicePerimeters/*}" + } + ] + } + ] + } + ], + "configFile": "accesscontextmanager_v1.yaml" }, { "id": "google.logging.v2", @@ -54852,14 +71578,14 @@ "google/rpc" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.logging.v2": 4 + "true": 4 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 4 + "Google.Cloud.Logging.V2": 4 } }, "go_package": { @@ -54867,14 +71593,14 @@ "google.golang.org/genproto/googleapis/logging/v2;logging": 4 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 4 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Logging.V2": 4 + "com.google.logging.v2": 4 } }, "php_namespace": { @@ -55673,7 +72399,350 @@ } ] } - ] + ], + "configFile": "logging.yaml" + }, + { + "id": "google.maps.fleetengine.delivery.v1", + "directory": "google/maps/fleetengine/delivery/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "fleetengine.googleapis.com", + "title": "Local Rides and Deliveries API", + "description": "Enables Fleet Engine for access to the On Demand Rides and Deliveries and Last Mile Fleet Solution APIs.", + "importDirectories": [ + "google/api", + "google/geo/type", + "google/maps/fleetengine/delivery/v1", + "google/maps/fleetengine/v1", + "google/protobuf", + "google/type" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/maps/fleetengine/delivery/v1;delivery": 3 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 3 + } + }, + "java_package": { + "valueCounts": { + "google.maps.fleetengine.delivery.v1": 3 + } + }, + "objc_class_prefix": { + "valueCounts": { + "CFE": 3 + } + } + }, + "services": [ + { + "shortName": "DeliveryService", + "fullName": "maps.fleetengine.delivery.v1.DeliveryService", + "methods": [ + { + "shortName": "CreateDeliveryVehicle", + "fullName": "maps.fleetengine.delivery.v1.DeliveryService.CreateDeliveryVehicle", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=providers/*}/deliveryVehicles" + } + ] + }, + { + "shortName": "CreateTask", + "fullName": "maps.fleetengine.delivery.v1.DeliveryService.CreateTask", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=providers/*}/tasks" + } + ] + }, + { + "shortName": "GetDeliveryVehicle", + "fullName": "maps.fleetengine.delivery.v1.DeliveryService.GetDeliveryVehicle", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=providers/*/deliveryVehicles/*}" + } + ] + }, + { + "shortName": "GetTask", + "fullName": "maps.fleetengine.delivery.v1.DeliveryService.GetTask", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=providers/*/tasks/*}" + } + ] + }, + { + "shortName": "ListDeliveryVehicles", + "fullName": "maps.fleetengine.delivery.v1.DeliveryService.ListDeliveryVehicles", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=providers/*}/deliveryVehicles" + } + ] + }, + { + "shortName": "ListTasks", + "fullName": "maps.fleetengine.delivery.v1.DeliveryService.ListTasks", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=providers/*}/tasks" + } + ] + }, + { + "shortName": "SearchTasks", + "fullName": "maps.fleetengine.delivery.v1.DeliveryService.SearchTasks", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=providers/*}/tasks:search" + } + ] + }, + { + "shortName": "UpdateDeliveryVehicle", + "fullName": "maps.fleetengine.delivery.v1.DeliveryService.UpdateDeliveryVehicle", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{delivery_vehicle.name=providers/*/deliveryVehicles/*}" + } + ] + }, + { + "shortName": "UpdateTask", + "fullName": "maps.fleetengine.delivery.v1.DeliveryService.UpdateTask", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{task.name=providers/*/tasks/*}" + } + ] + } + ] + } + ], + "configFile": "fleetengine.yaml" + }, + { + "id": "google.maps.fleetengine.v1", + "directory": "google/maps/fleetengine/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "fleetengine.googleapis.com", + "title": "Local Rides and Deliveries API", + "description": "Enables Fleet Engine for access to the On Demand Rides and Deliveries and Last Mile Fleet Solution APIs.", + "importDirectories": [ + "google/api", + "google/maps/fleetengine/v1", + "google/protobuf", + "google/type" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/maps/fleetengine/v1;fleetengine": 7 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 7 + } + }, + "java_package": { + "valueCounts": { + "google.maps.fleetengine.v1": 7 + } + }, + "objc_class_prefix": { + "valueCounts": { + "CFE": 7 + } + } + }, + "services": [ + { + "shortName": "TripService", + "fullName": "maps.fleetengine.v1.TripService", + "methods": [ + { + "shortName": "CreateTrip", + "fullName": "maps.fleetengine.v1.TripService.CreateTrip", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=providers/*}/trips" + } + ] + }, + { + "shortName": "GetTrip", + "fullName": "maps.fleetengine.v1.TripService.GetTrip", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=providers/*/trips/*}" + } + ] + }, + { + "shortName": "ReportBillableTrip", + "fullName": "maps.fleetengine.v1.TripService.ReportBillableTrip", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=providers/*/billableTrips/*}:report" + } + ] + }, + { + "shortName": "SearchTrips", + "fullName": "maps.fleetengine.v1.TripService.SearchTrips", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=providers/*}/trips:search" + } + ] + }, + { + "shortName": "UpdateTrip", + "fullName": "maps.fleetengine.v1.TripService.UpdateTrip", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/v1/{name=providers/*/trips/*}" + } + ] + } + ] + }, + { + "shortName": "VehicleService", + "fullName": "maps.fleetengine.v1.VehicleService", + "methods": [ + { + "shortName": "CreateVehicle", + "fullName": "maps.fleetengine.v1.VehicleService.CreateVehicle", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=providers/*}/vehicles" + } + ] + }, + { + "shortName": "GetVehicle", + "fullName": "maps.fleetengine.v1.VehicleService.GetVehicle", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=providers/*/vehicles/*}" + } + ] + }, + { + "shortName": "ListVehicles", + "fullName": "maps.fleetengine.v1.VehicleService.ListVehicles", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{parent=providers/*}/vehicles" + } + ] + }, + { + "shortName": "SearchFuzzedVehicles", + "fullName": "maps.fleetengine.v1.VehicleService.SearchFuzzedVehicles", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=providers/*}/vehicles:searchFuzzed" + } + ] + }, + { + "shortName": "SearchVehicles", + "fullName": "maps.fleetengine.v1.VehicleService.SearchVehicles", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=providers/*}/vehicles:search" + } + ] + }, + { + "shortName": "UpdateVehicle", + "fullName": "maps.fleetengine.v1.VehicleService.UpdateVehicle", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/v1/{name=providers/*/vehicles/*}" + } + ] + }, + { + "shortName": "UpdateVehicleAttributes", + "fullName": "maps.fleetengine.v1.VehicleService.UpdateVehicleAttributes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=providers/*/vehicles/*}:updateAttributes" + } + ] + }, + { + "shortName": "UpdateVehicleLocation", + "fullName": "maps.fleetengine.v1.VehicleService.UpdateVehicleLocation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PUT", + "path": "/v1/{name=providers/*/vehicles/*}:updateLocation" + } + ] + } + ] + } + ], + "configFile": "fleetengine.yaml" }, { "id": "google.maps.playablelocations.v3", @@ -55692,10 +72761,16 @@ "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.maps.playablelocations.v3": 2, - "com.google.maps.playablelocations.v3.sample": 1 + "Google.Maps.PlayableLocations.V3": 2, + "Google.Maps.PlayableLocations.V3.Sample": 1 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/maps/playablelocations/v3/sample;sample": 1, + "google.golang.org/genproto/googleapis/maps/playablelocations/v3;playablelocations": 2 } }, "java_multiple_files": { @@ -55703,10 +72778,10 @@ "true": 3 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/maps/playablelocations/v3;playablelocations": 2, - "google.golang.org/genproto/googleapis/maps/playablelocations/v3/sample;sample": 1 + "com.google.maps.playablelocations.v3": 2, + "com.google.maps.playablelocations.v3.sample": 1 } }, "objc_class_prefix": { @@ -55714,16 +72789,10 @@ "GMPL": 3 } }, - "csharp_namespace": { - "valueCounts": { - "Google.Maps.PlayableLocations.V3": 2, - "Google.Maps.PlayableLocations.V3.Sample": 1 - } - }, "php_namespace": { "valueCounts": { - "Google\\Maps\\PlayableLocations\\V3": 2, - "": 1 + "": 1, + "Google\\Maps\\PlayableLocations\\V3": 2 } } }, @@ -55767,7 +72836,8 @@ } ] } - ] + ], + "configFile": "playablelocations_v3.yaml" }, { "id": "google.maps.roads.v1op", @@ -55783,9 +72853,9 @@ "google/type" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.maps.roads.v1op": 1 + "google.golang.org/genproto/googleapis/maps/roads/v1op;roads": 1 } }, "java_multiple_files": { @@ -55793,9 +72863,9 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/maps/roads/v1op;roads": 1 + "com.google.maps.roads.v1op": 1 } } }, @@ -55816,7 +72886,8 @@ } ] } - ] + ], + "configFile": "roads_v1op.yaml" }, { "id": "google.maps.routes.v1", @@ -55835,14 +72906,14 @@ "google/type" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.maps.routes.v1": 14 + "true": 14 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 14 + "Google.Maps.Routes.V1": 14 } }, "go_package": { @@ -55850,19 +72921,19 @@ "google.golang.org/genproto/googleapis/maps/routes/v1;routes": 14 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 14 } }, - "objc_class_prefix": { + "java_package": { "valueCounts": { - "GMRS": 14 + "com.google.maps.routes.v1": 14 } }, - "csharp_namespace": { + "objc_class_prefix": { "valueCounts": { - "Google.Maps.Routes.V1": 14 + "GMRS": 14 } }, "php_namespace": { @@ -55876,6 +72947,17 @@ "shortName": "RoutesPreferred", "fullName": "google.maps.routes.v1.RoutesPreferred", "methods": [ + { + "shortName": "ComputeCustomRoutes", + "fullName": "google.maps.routes.v1.RoutesPreferred.ComputeCustomRoutes", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1:computeCustomRoutes" + } + ] + }, { "shortName": "ComputeRouteMatrix", "fullName": "google.maps.routes.v1.RoutesPreferred.ComputeRouteMatrix", @@ -55900,7 +72982,8 @@ } ] } - ] + ], + "configFile": "routespreferred.yaml" }, { "id": "google.maps.routes.v1alpha", @@ -55915,14 +72998,14 @@ "google/maps/routes/v1" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.maps.routes.v1alpha": 1 + "true": 1 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 1 + "Google.Maps.Routes.V1Alpha": 1 } }, "go_package": { @@ -55930,19 +73013,19 @@ "google.golang.org/genproto/googleapis/maps/routes/v1alpha;routes": 1 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 1 } }, - "objc_class_prefix": { + "java_package": { "valueCounts": { - "GMRS": 1 + "com.google.maps.routes.v1alpha": 1 } }, - "csharp_namespace": { + "objc_class_prefix": { "valueCounts": { - "Google.Maps.Routes.V1Alpha": 1 + "GMRS": 1 } }, "php_namespace": { @@ -55991,7 +73074,8 @@ } ] } - ] + ], + "configFile": "routespreferred_v1alpha.yaml" }, { "id": "google.maps.routespreferred.v1", @@ -56000,7 +73084,8 @@ "majorVersion": "v1", "hostName": "routespreferred.googleapis.com", "title": "Routes Preferred API", - "description": "" + "description": "", + "configFile": "routespreferred_v1.yaml" }, { "id": "google.monitoring.dashboard.v1", @@ -56009,36 +73094,41 @@ "majorVersion": "v1", "hostName": "monitoring.googleapis.com", "title": "Cloud Monitoring API", - "description": "Manages your Cloud Monitoring data and configurations. Most projects must be associated with a Workspace, with a few exceptions as noted on the individual method pages. The table entries below are presented in alphabetical order, not in order of common use. For explanations of the concepts found in the table entries, read the [Cloud Monitoring documentation](/monitoring/docs).", + "description": "Manages your Cloud Monitoring data and configurations. Most projects must be associated with a Workspace, with a few exceptions as noted on the individual method pages. The table entries below are presented in alphabetical order, not in order of common use. For explanations of the concepts found in the table entries, read the [Cloud Monitoring documentation](https://cloud.google.com/monitoring/docs).", "importDirectories": [ "google/api", "google/monitoring/dashboard/v1", "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.monitoring.dashboard.v1": 11 + "Google.Cloud.Monitoring.Dashboard.V1": 12 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/monitoring/dashboard/v1;dashboard": 12 } }, "java_multiple_files": { "valueCounts": { - "true": 11 + "true": 12 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/monitoring/dashboard/v1;dashboard": 11 + "com.google.monitoring.dashboard.v1": 12 } }, "php_namespace": { "valueCounts": { - "Google\\Cloud\\Monitoring\\Dashboard\\V1": 11 + "Google\\Cloud\\Monitoring\\Dashboard\\V1": 12 } }, "ruby_package": { "valueCounts": { - "Google::Cloud::Monitoring::Dashboard::V1": 11 + "Google::Cloud::Monitoring::Dashboard::V1": 12 } } }, @@ -56104,7 +73194,108 @@ } ] } - ] + ], + "configFile": "monitoring.yaml" + }, + { + "id": "google.monitoring.metricsscope.v1", + "directory": "google/monitoring/metricsscope/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "monitoring.googleapis.com", + "title": "Cloud Monitoring API", + "description": "Manages your Cloud Monitoring data and configurations. Most projects must be associated with a Workspace, with a few exceptions as noted on the individual method pages. The table entries below are presented in alphabetical order, not in order of common use. For explanations of the concepts found in the table entries, read the [Cloud Monitoring documentation](https://cloud.google.com/monitoring/docs).", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/monitoring/metricsscope/v1", + "google/protobuf" + ], + "options": { + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.Monitoring.MetricsScope.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/monitoring/metricsscope/v1;metricsscope": 2 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.monitoring.metricsscope.v1": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\Monitoring\\MetricsScope\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::Monitoring::MetricsScope::V1": 2 + } + } + }, + "services": [ + { + "shortName": "MetricsScopes", + "fullName": "google.monitoring.metricsscope.v1.MetricsScopes", + "methods": [ + { + "shortName": "CreateMonitoredProject", + "fullName": "google.monitoring.metricsscope.v1.MetricsScopes.CreateMonitoredProject", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{parent=locations/global/metricsScopes/*}/projects" + } + ] + }, + { + "shortName": "DeleteMonitoredProject", + "fullName": "google.monitoring.metricsscope.v1.MetricsScopes.DeleteMonitoredProject", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "DELETE", + "path": "/v1/{name=locations/global/metricsScopes/*/projects/*}" + } + ] + }, + { + "shortName": "GetMetricsScope", + "fullName": "google.monitoring.metricsscope.v1.MetricsScopes.GetMetricsScope", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{name=locations/global/metricsScopes/*}" + } + ] + }, + { + "shortName": "ListMetricsScopesByMonitoredProject", + "fullName": "google.monitoring.metricsscope.v1.MetricsScopes.ListMetricsScopesByMonitoredProject", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/locations/global/metricsScopes:listMetricsScopesByMonitoredProject" + } + ] + } + ] + } + ], + "configFile": "monitoring.yaml" }, { "id": "google.monitoring.v3", @@ -56113,33 +73304,34 @@ "majorVersion": "v3", "hostName": "monitoring.googleapis.com", "title": "Cloud Monitoring API", - "description": "Manages your Cloud Monitoring data and configurations. Most projects must be associated with a Workspace, with a few exceptions as noted on the individual method pages. The table entries below are presented in alphabetical order, not in order of common use. For explanations of the concepts found in the table entries, read the [Cloud Monitoring documentation](/monitoring/docs).", + "description": "Manages your Cloud Monitoring data and configurations.", "importDirectories": [ "google/api", + "google/longrunning", "google/monitoring/v3", "google/protobuf", "google/rpc", "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.monitoring.v3": 17 + "Google.Cloud.Monitoring.V3": 17 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 17 + "google.golang.org/genproto/googleapis/monitoring/v3;monitoring": 17 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/monitoring/v3;monitoring": 17 + "true": 17 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Monitoring.V3": 17 + "com.google.monitoring.v3": 17 } }, "php_namespace": { @@ -56302,6 +73494,17 @@ } ] }, + { + "shortName": "CreateServiceTimeSeries", + "fullName": "google.monitoring.v3.MetricService.CreateServiceTimeSeries", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v3/{name=projects/*}/timeSeries:createService" + } + ] + }, { "shortName": "CreateTimeSeries", "fullName": "google.monitoring.v3.MetricService.CreateTimeSeries", @@ -56710,7 +73913,8 @@ } ] } - ] + ], + "configFile": "monitoring.yaml" }, { "id": "google.partner.aistreams.v1alpha1", @@ -56726,12 +73930,7 @@ "google/protobuf" ], "options": { - "java_package": { - "valueCounts": { - "com.google.partner.aistreams.v1alpha1": 1 - } - }, - "java_multiple_files": { + "cc_enable_arenas": { "valueCounts": { "true": 1 } @@ -56741,11 +73940,16 @@ "google.golang.org/genproto/googleapis/partner/aistreams/v1alpha1;aistreams": 1 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 1 } }, + "java_package": { + "valueCounts": { + "com.google.partner.aistreams.v1alpha1": 1 + } + }, "php_namespace": { "valueCounts": { "Google\\Cloud\\Partner\\Aistreams\\V1alpha1": 1 @@ -56869,7 +74073,8 @@ } ] } - ] + ], + "configFile": "aistreams_v1alpha1.yaml" }, { "id": "google.privacy.dlp.v2", @@ -56887,24 +74092,24 @@ "google/type" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.privacy.dlp.v2": 2 + "Google.Cloud.Dlp.V2": 2 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 2 + "google.golang.org/genproto/googleapis/privacy/dlp/v2;dlp": 2 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/privacy/dlp/v2;dlp": 2 + "true": 2 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Dlp.V2": 2 + "com.google.privacy.dlp.v2": 2 } }, "php_namespace": { @@ -57026,6 +74231,10 @@ { "httpMethod": "POST", "path": "/v2/{parent=projects/*/locations/*}/jobTriggers" + }, + { + "httpMethod": "POST", + "path": "/v2/{parent=organizations/*/locations/*}/jobTriggers" } ] }, @@ -57140,6 +74349,10 @@ { "httpMethod": "DELETE", "path": "/v2/{name=projects/*/locations/*/jobTriggers/*}" + }, + { + "httpMethod": "DELETE", + "path": "/v2/{name=organizations/*/locations/*/jobTriggers/*}" } ] }, @@ -57250,6 +74463,10 @@ { "httpMethod": "GET", "path": "/v2/{name=projects/*/locations/*/jobTriggers/*}" + }, + { + "httpMethod": "GET", + "path": "/v2/{name=organizations/*/locations/*/jobTriggers/*}" } ] }, @@ -57348,6 +74565,10 @@ { "httpMethod": "GET", "path": "/v2/{parent=projects/*/locations/*}/dlpJobs" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=organizations/*/locations/*}/dlpJobs" } ] }, @@ -57401,6 +74622,10 @@ { "httpMethod": "GET", "path": "/v2/{parent=projects/*/locations/*}/jobTriggers" + }, + { + "httpMethod": "GET", + "path": "/v2/{parent=organizations/*/locations/*}/jobTriggers" } ] }, @@ -57515,6 +74740,10 @@ { "httpMethod": "PATCH", "path": "/v2/{name=projects/*/locations/*/jobTriggers/*}" + }, + { + "httpMethod": "PATCH", + "path": "/v2/{name=organizations/*/locations/*/jobTriggers/*}" } ] }, @@ -57543,7 +74772,8 @@ } ] } - ] + ], + "configFile": "dlp_v2.yaml" }, { "id": "google.pubsub.v1", @@ -57559,14 +74789,14 @@ "google/pubsub/v1" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.pubsub.v1": 2 + "true": 2 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 2 + "Google.Cloud.PubSub.V1": 2 } }, "go_package": { @@ -57574,14 +74804,14 @@ "google.golang.org/genproto/googleapis/pubsub/v1;pubsub": 2 } }, - "cc_enable_arenas": { + "java_multiple_files": { "valueCounts": { "true": 2 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.PubSub.V1": 2 + "com.google.pubsub.v1": 2 } }, "php_namespace": { @@ -57645,35 +74875,35 @@ ] }, { - "shortName": "ListTopics", - "fullName": "google.pubsub.v1.Publisher.ListTopics", + "shortName": "ListTopicSnapshots", + "fullName": "google.pubsub.v1.Publisher.ListTopicSnapshots", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{project=projects/*}/topics" + "path": "/v1/{topic=projects/*/topics/*}/snapshots" } ] }, { - "shortName": "ListTopicSnapshots", - "fullName": "google.pubsub.v1.Publisher.ListTopicSnapshots", + "shortName": "ListTopicSubscriptions", + "fullName": "google.pubsub.v1.Publisher.ListTopicSubscriptions", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{topic=projects/*/topics/*}/snapshots" + "path": "/v1/{topic=projects/*/topics/*}/subscriptions" } ] }, { - "shortName": "ListTopicSubscriptions", - "fullName": "google.pubsub.v1.Publisher.ListTopicSubscriptions", + "shortName": "ListTopics", + "fullName": "google.pubsub.v1.Publisher.ListTopics", "mode": "UNARY", "bindings": [ { "httpMethod": "GET", - "path": "/v1/{topic=projects/*/topics/*}/subscriptions" + "path": "/v1/{project=projects/*}/topics" } ] }, @@ -57949,7 +75179,8 @@ } ] } - ] + ], + "configFile": "pubsub_v1.yaml" }, { "id": "google.spanner.admin.database.v1", @@ -57968,24 +75199,24 @@ "google/spanner/admin/database/v1" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.spanner.admin.database.v1": 3 + "Google.Cloud.Spanner.Admin.Database.V1": 3 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 3 + "google.golang.org/genproto/googleapis/spanner/admin/database/v1;database": 3 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/spanner/admin/database/v1;database": 3 + "true": 3 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Spanner.Admin.Database.V1": 3 + "com.google.spanner.admin.database.v1": 3 } }, "php_namespace": { @@ -58205,7 +75436,8 @@ } ] } - ] + ], + "configFile": "spanner_admin_database.yaml" }, { "id": "google.spanner.admin.instance.v1", @@ -58222,24 +75454,24 @@ "google/protobuf" ], "options": { - "java_package": { + "csharp_namespace": { "valueCounts": { - "com.google.spanner.admin.instance.v1": 1 + "Google.Cloud.Spanner.Admin.Instance.V1": 1 } }, - "java_multiple_files": { + "go_package": { "valueCounts": { - "true": 1 + "google.golang.org/genproto/googleapis/spanner/admin/instance/v1;instance": 1 } }, - "go_package": { + "java_multiple_files": { "valueCounts": { - "google.golang.org/genproto/googleapis/spanner/admin/instance/v1;instance": 1 + "true": 1 } }, - "csharp_namespace": { + "java_package": { "valueCounts": { - "Google.Cloud.Spanner.Admin.Instance.V1": 1 + "com.google.spanner.admin.instance.v1": 1 } }, "php_namespace": { @@ -58370,7 +75602,8 @@ } ] } - ] + ], + "configFile": "spanner_admin_instance.yaml" }, { "id": "google.spanner.v1", @@ -58387,14 +75620,15 @@ "google/spanner/v1" ], "options": { - "java_package": { + "cc_enable_arenas": { "valueCounts": { - "com.google.spanner.v1": 8 + "": 7, + "true": 1 } }, - "java_multiple_files": { + "csharp_namespace": { "valueCounts": { - "true": 8 + "Google.Cloud.Spanner.V1": 8 } }, "go_package": { @@ -58402,9 +75636,14 @@ "google.golang.org/genproto/googleapis/spanner/v1;spanner": 8 } }, - "csharp_namespace": { + "java_multiple_files": { "valueCounts": { - "Google.Cloud.Spanner.V1": 8 + "true": 8 + } + }, + "java_package": { + "valueCounts": { + "com.google.spanner.v1": 8 } }, "php_namespace": { @@ -58416,12 +75655,6 @@ "valueCounts": { "Google::Cloud::Spanner::V1": 8 } - }, - "cc_enable_arenas": { - "valueCounts": { - "true": 1, - "": 7 - } } }, "services": [ @@ -58596,7 +75829,8 @@ } ] } - ] + ], + "configFile": "spanner.yaml" }, { "id": "google.storage.v1", @@ -58613,9 +75847,9 @@ "google/storage/v1" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.storage.v1": 2 + "google.golang.org/genproto/googleapis/storage/v1;storage": 2 } }, "java_multiple_files": { @@ -58623,9 +75857,9 @@ "true": 2 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/storage/v1;storage": 2 + "com.google.storage.v1": 2 } } }, @@ -58916,7 +76150,340 @@ } ] } - ] + ], + "configFile": "storage_v1.yaml" + }, + { + "id": "google.storage.v2", + "directory": "google/storage/v2", + "version": "v2", + "majorVersion": "v2", + "hostName": "storage.googleapis.com", + "title": "Cloud Storage API", + "description": "Lets you store and retrieve potentially-large, immutable data objects.", + "importDirectories": [ + "google/api", + "google/iam/v1", + "google/protobuf", + "google/type" + ], + "options": { + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/storage/v2;storage": 1 + } + }, + "java_multiple_files": { + "valueCounts": { + "true": 1 + } + }, + "java_package": { + "valueCounts": { + "com.google.storage.v2": 1 + } + } + }, + "services": [ + { + "shortName": "Storage", + "fullName": "google.storage.v2.Storage", + "methods": [ + { + "shortName": "ComposeObject", + "fullName": "google.storage.v2.Storage.ComposeObject", + "mode": "UNARY" + }, + { + "shortName": "CreateBucket", + "fullName": "google.storage.v2.Storage.CreateBucket", + "mode": "UNARY" + }, + { + "shortName": "CreateHmacKey", + "fullName": "google.storage.v2.Storage.CreateHmacKey", + "mode": "UNARY" + }, + { + "shortName": "CreateNotification", + "fullName": "google.storage.v2.Storage.CreateNotification", + "mode": "UNARY" + }, + { + "shortName": "DeleteBucket", + "fullName": "google.storage.v2.Storage.DeleteBucket", + "mode": "UNARY" + }, + { + "shortName": "DeleteHmacKey", + "fullName": "google.storage.v2.Storage.DeleteHmacKey", + "mode": "UNARY" + }, + { + "shortName": "DeleteNotification", + "fullName": "google.storage.v2.Storage.DeleteNotification", + "mode": "UNARY" + }, + { + "shortName": "DeleteObject", + "fullName": "google.storage.v2.Storage.DeleteObject", + "mode": "UNARY" + }, + { + "shortName": "GetBucket", + "fullName": "google.storage.v2.Storage.GetBucket", + "mode": "UNARY" + }, + { + "shortName": "GetHmacKey", + "fullName": "google.storage.v2.Storage.GetHmacKey", + "mode": "UNARY" + }, + { + "shortName": "GetIamPolicy", + "fullName": "google.storage.v2.Storage.GetIamPolicy", + "mode": "UNARY" + }, + { + "shortName": "GetNotification", + "fullName": "google.storage.v2.Storage.GetNotification", + "mode": "UNARY" + }, + { + "shortName": "GetObject", + "fullName": "google.storage.v2.Storage.GetObject", + "mode": "UNARY" + }, + { + "shortName": "GetServiceAccount", + "fullName": "google.storage.v2.Storage.GetServiceAccount", + "mode": "UNARY" + }, + { + "shortName": "ListBuckets", + "fullName": "google.storage.v2.Storage.ListBuckets", + "mode": "UNARY" + }, + { + "shortName": "ListHmacKeys", + "fullName": "google.storage.v2.Storage.ListHmacKeys", + "mode": "UNARY" + }, + { + "shortName": "ListNotifications", + "fullName": "google.storage.v2.Storage.ListNotifications", + "mode": "UNARY" + }, + { + "shortName": "ListObjects", + "fullName": "google.storage.v2.Storage.ListObjects", + "mode": "UNARY" + }, + { + "shortName": "LockBucketRetentionPolicy", + "fullName": "google.storage.v2.Storage.LockBucketRetentionPolicy", + "mode": "UNARY" + }, + { + "shortName": "QueryWriteStatus", + "fullName": "google.storage.v2.Storage.QueryWriteStatus", + "mode": "UNARY" + }, + { + "shortName": "ReadObject", + "fullName": "google.storage.v2.Storage.ReadObject", + "mode": "SERVER_STREAMING" + }, + { + "shortName": "RewriteObject", + "fullName": "google.storage.v2.Storage.RewriteObject", + "mode": "UNARY" + }, + { + "shortName": "SetIamPolicy", + "fullName": "google.storage.v2.Storage.SetIamPolicy", + "mode": "UNARY" + }, + { + "shortName": "StartResumableWrite", + "fullName": "google.storage.v2.Storage.StartResumableWrite", + "mode": "UNARY" + }, + { + "shortName": "TestIamPermissions", + "fullName": "google.storage.v2.Storage.TestIamPermissions", + "mode": "UNARY" + }, + { + "shortName": "UpdateBucket", + "fullName": "google.storage.v2.Storage.UpdateBucket", + "mode": "UNARY" + }, + { + "shortName": "UpdateHmacKey", + "fullName": "google.storage.v2.Storage.UpdateHmacKey", + "mode": "UNARY" + }, + { + "shortName": "UpdateObject", + "fullName": "google.storage.v2.Storage.UpdateObject", + "mode": "UNARY" + }, + { + "shortName": "WriteObject", + "fullName": "google.storage.v2.Storage.WriteObject", + "mode": "CLIENT_STREAMING" + } + ] + } + ], + "configFile": "storage_v2.yaml" + }, + { + "id": "google.storagetransfer.v1", + "directory": "google/storagetransfer/v1", + "version": "v1", + "majorVersion": "v1", + "hostName": "storagetransfer.googleapis.com", + "title": "Storage Transfer API", + "description": "Transfers data from external data sources to a Google Cloud Storage bucket or between Google Cloud Storage buckets.", + "importDirectories": [ + "google/api", + "google/longrunning", + "google/protobuf", + "google/rpc", + "google/storagetransfer/v1", + "google/type" + ], + "options": { + "cc_enable_arenas": { + "valueCounts": { + "true": 2 + } + }, + "csharp_namespace": { + "valueCounts": { + "Google.Cloud.StorageTransfer.V1": 2 + } + }, + "go_package": { + "valueCounts": { + "google.golang.org/genproto/googleapis/storagetransfer/v1;storagetransfer": 2 + } + }, + "java_package": { + "valueCounts": { + "com.google.storagetransfer.v1.proto": 2 + } + }, + "php_namespace": { + "valueCounts": { + "Google\\Cloud\\StorageTransfer\\V1": 2 + } + }, + "ruby_package": { + "valueCounts": { + "Google::Cloud::StorageTransfer::V1": 2 + } + } + }, + "services": [ + { + "shortName": "StorageTransferService", + "fullName": "google.storagetransfer.v1.StorageTransferService", + "methods": [ + { + "shortName": "CreateTransferJob", + "fullName": "google.storagetransfer.v1.StorageTransferService.CreateTransferJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/transferJobs" + } + ] + }, + { + "shortName": "GetGoogleServiceAccount", + "fullName": "google.storagetransfer.v1.StorageTransferService.GetGoogleServiceAccount", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/googleServiceAccounts/{project_id}" + } + ] + }, + { + "shortName": "GetTransferJob", + "fullName": "google.storagetransfer.v1.StorageTransferService.GetTransferJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/{job_name=transferJobs/**}" + } + ] + }, + { + "shortName": "ListTransferJobs", + "fullName": "google.storagetransfer.v1.StorageTransferService.ListTransferJobs", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "GET", + "path": "/v1/transferJobs" + } + ] + }, + { + "shortName": "PauseTransferOperation", + "fullName": "google.storagetransfer.v1.StorageTransferService.PauseTransferOperation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=transferOperations/**}:pause" + } + ] + }, + { + "shortName": "ResumeTransferOperation", + "fullName": "google.storagetransfer.v1.StorageTransferService.ResumeTransferOperation", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{name=transferOperations/**}:resume" + } + ] + }, + { + "shortName": "RunTransferJob", + "fullName": "google.storagetransfer.v1.StorageTransferService.RunTransferJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "POST", + "path": "/v1/{job_name=transferJobs/**}:run" + } + ] + }, + { + "shortName": "UpdateTransferJob", + "fullName": "google.storagetransfer.v1.StorageTransferService.UpdateTransferJob", + "mode": "UNARY", + "bindings": [ + { + "httpMethod": "PATCH", + "path": "/v1/{job_name=transferJobs/**}" + } + ] + } + ] + } + ], + "configFile": "storagetransfer_v1.yaml" }, { "id": "google.streetview.publish.v1", @@ -58928,20 +76495,21 @@ "description": "The Street View Publish API allows your application to publish 360 photos to Google Maps, along with image metadata that specifies the position, orientation, and connectivity of each photo. With this API, any app can offer an interface for positioning, connecting, and uploading user-generated Street View images.", "importDirectories": [ "google/api", + "google/longrunning", "google/protobuf", "google/rpc", "google/streetview/publish/v1", "google/type" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.geo.ugc.streetview.publish.v1": 3 + "google.golang.org/genproto/googleapis/streetview/publish/v1;publish": 3 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/streetview/publish/v1;publish": 3 + "com.google.geo.ugc.streetview.publish.v1": 3 } } }, @@ -59051,7 +76619,8 @@ } ] } - ] + ], + "configFile": "streetview_publish.yaml" }, { "id": "google.watcher.v1", @@ -59066,9 +76635,9 @@ "google/protobuf" ], "options": { - "java_package": { + "go_package": { "valueCounts": { - "com.google.watcher.v1": 1 + "google.golang.org/genproto/googleapis/watcher/v1;watcher": 1 } }, "java_multiple_files": { @@ -59076,9 +76645,9 @@ "true": 1 } }, - "go_package": { + "java_package": { "valueCounts": { - "google.golang.org/genproto/googleapis/watcher/v1;watcher": 1 + "com.google.watcher.v1": 1 } } }, @@ -59100,7 +76669,8 @@ } ] } - ] + ], + "configFile": "watcher.yaml" } ], "metadata": { diff --git a/gapic/lang/common.yaml b/gapic/lang/common.yaml deleted file mode 100644 index b609f9d46..000000000 --- a/gapic/lang/common.yaml +++ /dev/null @@ -1,33 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -common: - toolkit_path: ${TOOLKIT} - # common gRPC package generation parameters - package_dependencies_yaml: ${GOOGLEAPIS}/gapic/packaging/dependencies.yaml - package_defaults_yaml: ${GOOGLEAPIS}/gapic/packaging/api_defaults.yaml - common_protos_yaml: ${GOOGLEAPIS}/gapic/packaging/common_protos.yaml -java: - gapic_language_yaml: - - ${GOOGLEAPIS}/gapic/lang/java_gapic.yaml - discogapic_language_yaml: - - ${GOOGLEAPIS}/gapic/lang/java_discogapic.yam -python: - gapic_language_yaml: - - ${GOOGLEAPIS}/gapic/lang/python_gapic.yaml -go: - gapic_language_yaml: - - ${GOOGLEAPIS}/gapic/lang/go_gapic.yaml -csharp: - gapic_language_yaml: - - ${GOOGLEAPIS}/gapic/lang/csharp_gapic.yaml -php: - gapic_language_yaml: - - ${GOOGLEAPIS}/gapic/lang/php_gapic.yaml -ruby: - gapic_language_yaml: - - ${GOOGLEAPIS}/gapic/lang/ruby_gapic.yaml -nodejs: - gapic_language_yaml: - - ${GOOGLEAPIS}/gapic/lang/nodejs_gapic.yaml diff --git a/gapic/lang/csharp_gapic.yaml b/gapic/lang/csharp_gapic.yaml deleted file mode 100644 index e8609fddc..000000000 --- a/gapic/lang/csharp_gapic.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -type: com.google.api.codegen.ConfigProto -language: csharp -generator: - factory: com.google.api.codegen.gapic.MainGapicProviderFactory - id: csharp diff --git a/gapic/lang/doc.yaml b/gapic/lang/doc.yaml deleted file mode 100644 index 8fb0f6e28..000000000 --- a/gapic/lang/doc.yaml +++ /dev/null @@ -1,19 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -common: - toolkit_path: ${TOOLKIT} - # common gRPC package generation parameters - package_dependencies_yaml: ${GOOGLEAPIS}/gapic/packaging/dependencies.yaml - package_defaults_yaml: ${GOOGLEAPIS}/gapic/packaging/api_defaults.yaml - common_protos_yaml: ${GOOGLEAPIS}/gapic/packaging/common_protos.yaml -python: - gapic_language_yaml: - - ${GOOGLEAPIS}/gapic/lang/python_doc.yaml -ruby: - gapic_language_yaml: - - ${GOOGLEAPIS}/gapic/lang/ruby_doc.yaml -nodejs: - gapic_language_yaml: - - ${GOOGLEAPIS}/gapic/lang/nodejs_doc.yaml diff --git a/gapic/lang/go_gapic.yaml b/gapic/lang/go_gapic.yaml deleted file mode 100644 index 3b1e099b3..000000000 --- a/gapic/lang/go_gapic.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -type: com.google.api.codegen.ConfigProto -language: go -generator: - factory: com.google.api.codegen.gapic.MainGapicProviderFactory - id: go diff --git a/gapic/lang/java_gapic.yaml b/gapic/lang/java_gapic.yaml deleted file mode 100644 index 3b97170b4..000000000 --- a/gapic/lang/java_gapic.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -type: com.google.api.codegen.ConfigProto -language: java -generator: - factory: com.google.api.codegen.gapic.MainGapicProviderFactory - id: java diff --git a/gapic/lang/nodejs_doc.yaml b/gapic/lang/nodejs_doc.yaml deleted file mode 100644 index 53d8424f1..000000000 --- a/gapic/lang/nodejs_doc.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -type: com.google.api.codegen.ConfigProto -language: nodejs -generator: - factory: com.google.api.codegen.gapic.MainGapicProviderFactory - id: nodejs_doc diff --git a/gapic/lang/nodejs_gapic.yaml b/gapic/lang/nodejs_gapic.yaml deleted file mode 100644 index 20882578c..000000000 --- a/gapic/lang/nodejs_gapic.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -type: com.google.api.codegen.ConfigProto -language: nodejs -generator: - factory: com.google.api.codegen.gapic.MainGapicProviderFactory - id: nodejs diff --git a/gapic/lang/php_gapic.yaml b/gapic/lang/php_gapic.yaml deleted file mode 100644 index aa013ff79..000000000 --- a/gapic/lang/php_gapic.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -type: com.google.api.codegen.ConfigProto -language: php -generator: - factory: com.google.api.codegen.gapic.MainGapicProviderFactory - id: php diff --git a/gapic/lang/python_doc.yaml b/gapic/lang/python_doc.yaml deleted file mode 100644 index 1e6d79a7d..000000000 --- a/gapic/lang/python_doc.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -type: com.google.api.codegen.ConfigProto -language: python -generator: - factory: com.google.api.codegen.gapic.MainGapicProviderFactory - id: python_doc diff --git a/gapic/lang/python_gapic.yaml b/gapic/lang/python_gapic.yaml deleted file mode 100644 index ebc87e6d4..000000000 --- a/gapic/lang/python_gapic.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -type: com.google.api.codegen.ConfigProto -language: python -generator: - factory: com.google.api.codegen.gapic.MainGapicProviderFactory - id: py diff --git a/gapic/lang/ruby_doc.yaml b/gapic/lang/ruby_doc.yaml deleted file mode 100644 index 10576017b..000000000 --- a/gapic/lang/ruby_doc.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -type: com.google.api.codegen.ConfigProto -language: ruby -generator: - factory: com.google.api.codegen.gapic.MainGapicProviderFactory - id: ruby_doc diff --git a/gapic/lang/ruby_gapic.yaml b/gapic/lang/ruby_gapic.yaml deleted file mode 100644 index c1cf4bf33..000000000 --- a/gapic/lang/ruby_gapic.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# THIS FILE IS DEPRECATED -# Artman will no longer use this file as of version 0.11.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. -type: com.google.api.codegen.ConfigProto -language: ruby -generator: - factory: com.google.api.codegen.gapic.MainGapicProviderFactory - id: ruby diff --git a/gapic/metadata/BUILD.bazel b/gapic/metadata/BUILD.bazel index 5defebf6a..caa07ce6f 100644 --- a/gapic/metadata/BUILD.bazel +++ b/gapic/metadata/BUILD.bazel @@ -73,7 +73,6 @@ moved_proto_library( py_proto_library( name = "metadata_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":metadata_moved_proto"], ) @@ -85,12 +84,11 @@ py_grpc_library( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/gapic/packaging/api_defaults.yaml b/gapic/packaging/api_defaults.yaml deleted file mode 100644 index 4201dabcc..000000000 --- a/gapic/packaging/api_defaults.yaml +++ /dev/null @@ -1,49 +0,0 @@ -# Copyright 2016 Google Inc. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - - -# Provides default values used as metadata when constructing various packages. - -# THIS FILE IS DEPRECATED -# Its new location is: -# https://github.com/googleapis/gapic-generator/blob/master/src/main/resources/com/google/api/codegen/packaging/api_defaults.yaml -# Artman will no longer use this file as of version 0.10.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. - -author: Google LLC -email: googleapis-packages@google.com -homepage: https://github.com/googleapis/googleapis -license: Apache-2.0 -release_level: - python: alpha - java: alpha - ruby: alpha - nodejs: alpha -generated_package_version: - python: - lower: '0.1.0' - upper: '0.2dev' - nodejs: - lower: '0.1.0' - php: - lower: '0.1.0' - ruby: - lower: '0.1.0' - java: - lower: '0.12.0' - -generated_ga_package_version: - java: - lower: '1.11.0' diff --git a/gapic/packaging/common_protos.yaml b/gapic/packaging/common_protos.yaml deleted file mode 100644 index 1f8aea868..000000000 --- a/gapic/packaging/common_protos.yaml +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 2016 Google Inc. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# packages are the directories in the Google APIs repo that contain shared -# protos. name is the path below google, version is an optional path below -# name. -packages: - - - name: 'api' - version: '' - - - name: 'longrunning' - version: '' - - - name: 'rpc' - version: '' - - - name: 'type' - version: '' - - - name: 'logging/type' - version: '' - -# semver is the semantic version of the common protos package. -semver: 1.5.0 diff --git a/gapic/packaging/dependencies.yaml b/gapic/packaging/dependencies.yaml deleted file mode 100644 index e6f7c5d79..000000000 --- a/gapic/packaging/dependencies.yaml +++ /dev/null @@ -1,111 +0,0 @@ -# Copyright 2016 Google Inc. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - - -# Configures the version of the dependencies of various generated packages, and -# related information. - -# THIS FILE IS DEPRECATED -# Its new location is: -# https://github.com/googleapis/gapic-generator/blob/master/src/main/resources/com/google/api/codegen/packaging/dependencies.yaml -# Artman will no longer use this file as of version 0.10.0. It is only being -# kept around for users of older versions of Artman, and it will eventually -# be deleted. - -auth_version: - python: - lower: '1.0.2' - upper: '2.0dev' - nodejs: - lower: '0.9.8' - ruby: - lower: '0.6.1' - -grpc_version: - csharp: - lower: '1.10.1' - python: - lower: '1.0.2' - upper: '2.0dev' - nodejs: - lower: '1.1.2' - ruby: - lower: '1.0' - java: - lower: '1.10.1' - -gax_version: - python: - lower: '0.15.7' - upper: '0.16dev' - nodejs: - lower: '0.16.1' - php: - lower: '0.30.2' - ruby: - lower: '1.0' - java: - lower: '1.23.0' - -gax_grpc_version: - csharp: - lower: '2.3.0' - java: - lower: '1.23.0' - -proto_version: - python: - lower: '3.0.0' - upper: '4.0dev' - nodejs: - # This is the version of ProtoBuf.js. - lower: '5.0.1' - php: - lower: '3.5.1' - ruby: - lower: '3.5' - java: - lower: '3.5.1' - -# Dependencies on gRPC/proto packages referenced in the proto_deps -# field of the Artman config. - -google-common-protos_version: - python: - name_override: googleapis-common-protos - lower: '1.5.2' - upper: '2.0dev' - ruby: - name_override: googleapis-common-protos - lower: '1.3.1' - java: - lower: '1.11.0' - -google-iam-v1_version: - csharp: - name_override: Google.Cloud.Iam.V1 - lower: '1.0.0' - python: - name_override: grpc-google-iam-v1 - lower: '0.11.1' - upper: '0.12dev' - ruby: - name_override: grpc-google-iam-v1 - lower: '0.6.9' - java: - lower: '0.12.0' - -api_common_version: - java: - lower: '1.5.0' diff --git a/google/actions/type/BUILD.bazel b/google/actions/type/BUILD.bazel index f3e63f838..d865c47c4 100644 --- a/google/actions/type/BUILD.bazel +++ b/google/actions/type/BUILD.bazel @@ -87,11 +87,10 @@ py_proto_library( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_proto_library = "php_proto_library2", + "php_proto_library", ) php_proto_library( diff --git a/google/ads/admob/v1/BUILD.bazel b/google/ads/admob/v1/BUILD.bazel index 530d26eba..4182e33ad 100644 --- a/google/ads/admob/v1/BUILD.bazel +++ b/google/ads/admob/v1/BUILD.bazel @@ -192,24 +192,24 @@ py_gapic_assembly_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - "php_gapic_assembly_pkg2", - "php_gapic_library2", - "php_grpc_library2", - "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) -php_proto_library2( +php_proto_library( name = "admob_php_proto", deps = [":admob_proto"], ) -php_grpc_library2( +php_grpc_library( name = "admob_php_grpc", srcs = [":admob_proto"], deps = [":admob_php_proto"], ) -php_gapic_library2( +php_gapic_library( name = "admob_php_gapic", srcs = [":admob_proto"], gapic_yaml = "admob_gapic.yaml", @@ -222,7 +222,7 @@ php_gapic_library2( ) # Open Source Packages -php_gapic_assembly_pkg2( +php_gapic_assembly_pkg( name = "google-ads-admob-v1-php", deps = [ ":admob_php_gapic", @@ -263,8 +263,8 @@ nodejs_gapic_assembly_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - "ruby_gapic_assembly_pkg", "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", "ruby_grpc_library", "ruby_proto_library", ) @@ -282,7 +282,7 @@ ruby_grpc_library( ruby_cloud_gapic_library( name = "admob_ruby_gapic", - srcs = [":admob_proto_with_info",], + srcs = [":admob_proto_with_info"], extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-admob-v1"], grpc_service_config = None, deps = [ diff --git a/google/ads/googleads/v4/BUILD.bazel b/google/ads/googleads/v4/BUILD.bazel deleted file mode 100644 index 4dc215cfe..000000000 --- a/google/ads/googleads/v4/BUILD.bazel +++ /dev/null @@ -1,262 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -exports_files(["googleads_grpc_service_config.json"] + ["*.yaml"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") -load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") - -proto_library( - name = "googleads_proto", - srcs = [], - deps = [ - "//google/ads/googleads/v4/common:common_proto", - "//google/ads/googleads/v4/enums:enums_proto", - "//google/ads/googleads/v4/errors:errors_proto", - "//google/ads/googleads/v4/resources:resources_proto", - "//google/ads/googleads/v4/services:services_proto", - ], -) - -proto_library_with_info( - name = "googleads_proto_with_info", - deps = [ - ":googleads_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_gapic_assembly_gradle_pkg", - "java_gapic_library", - "java_gapic_test", -) - -java_gapic_library( - name = "googleads_java_gapic", - srcs = [ - ":googleads_proto_with_info", - ], - gapic_yaml = "googleads_gapic.yaml", - grpc_service_config = ":googleads_grpc_service_config.json", - deps = [ - "//google/ads/googleads/v4/common:common_java_proto", - "//google/ads/googleads/v4/enums:enums_java_proto", - "//google/ads/googleads/v4/resources:resources_java_proto", - "//google/ads/googleads/v4/services:services_java_grpc", - "//google/ads/googleads/v4/services:services_java_proto", - ], -) - -# TODO(ohren): Add more test classes when java_gapic_test is able to run more -# than a single test. Having at least one verifies proper compilation at least. -java_gapic_test( - name = "googleads_java_gapic_suite", - test_classes = [ - "com.google.ads.googleads.v4.services.CampaignServiceClientTest", - ], - runtime_deps = [":googleads_java_gapic_test"], -) - -java_gapic_assembly_gradle_pkg( - name = "googleads-java", - deps = [ - ":googleads_java_gapic", - "//google/ads/googleads/v4:googleads_proto", - "//google/ads/googleads/v4/common:common_java_proto", - "//google/ads/googleads/v4/enums:enums_java_proto", - "//google/ads/googleads/v4/errors:errors_java_proto", - "//google/ads/googleads/v4/resources:resources_java_proto", - "//google/ads/googleads/v4/services:services_java_grpc", - "//google/ads/googleads/v4/services:services_java_proto", - ], -) - -############################################################################## -# PHP -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "php_gapic_assembly_pkg2", - "php_gapic_library2", - "php_grpc_library2", - "php_proto_library2", -) - -php_proto_library2( - name = "googleads_php_proto", - plugin_args = ["aggregate_metadata=google.ads.googleads"], - deps = [":googleads_proto"], -) - -php_grpc_library2( - name = "googleads_php_grpc", - srcs = [":googleads_proto"], - deps = [":googleads_php_proto"], -) - -php_gapic_library2( - name = "googleads_php_gapic", - srcs = [":googleads_proto"], - gapic_yaml = "googleads_gapic.yaml", - grpc_service_config = "googleads_grpc_service_config.json", - service_yaml = "googleads_v4.yaml", - deps = [ - ":googleads_php_grpc", - ":googleads_php_proto", - ], -) - -php_gapic_assembly_pkg2( - name = "googleads-php", - deps = [ - ":googleads_php_gapic", - ":googleads_php_grpc", - ":googleads_php_proto", - ], -) - -############################################################################## -# C# -############################################################################## -load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", "csharp_gapic_library") -load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic_pkg.bzl", "csharp_gapic_assembly_pkg") - -csharp_gapic_library( - name = "googleads_csharp_gapic", - srcs = [ - ":googleads_proto_with_info", - ], - grpc_service_config = "googleads_grpc_service_config.json", - deps = [ - "//google/ads/googleads/v4/services:services_csharp_grpc", - ], -) - -csharp_gapic_assembly_pkg( - name = "googleads-csharp", - deps = [ - ":googleads_csharp_gapic", - "//google/ads/googleads/v4/common:common_csharp_proto", - "//google/ads/googleads/v4/enums:enums_csharp_proto", - "//google/ads/googleads/v4/errors:errors_csharp_proto", - "//google/ads/googleads/v4/resources:resources_csharp_proto", - "//google/ads/googleads/v4/services:services_csharp_grpc", - "//google/ads/googleads/v4/services:services_csharp_proto", - ], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "ruby_ads_gapic_library", - "ruby_gapic_assembly_pkg", -) - -ruby_ads_gapic_library( - name = "googleads_ruby_gapic", - srcs = ["googleads_proto_with_info"], - extra_protoc_parameters = [ - ":gem.:name=google-ads-googleads", - ":defaults.:service.:default_host=googleads.googleapis.com", - ":overrides.:namespace.Googleads=GoogleAds", - ], - grpc_service_config = "googleads_grpc_service_config.json", -) - -ruby_gapic_assembly_pkg( - name = "googleads-ruby", - deps = [ - ":googleads_ruby_gapic", - "//google/ads/googleads/v4/common:common_ruby_proto", - "//google/ads/googleads/v4/enums:enums_ruby_proto", - "//google/ads/googleads/v4/errors:errors_ruby_proto", - "//google/ads/googleads/v4/resources:resources_ruby_proto", - "//google/ads/googleads/v4/services:services_ruby_grpc", - "//google/ads/googleads/v4/services:services_ruby_proto", - ], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_gapic_assembly_pkg", - "py_gapic_library", -) - -py_gapic_library( - name = "googleads_py_gapic", - srcs = [":googleads_proto_with_info"], - grpc_service_config = "googleads_grpc_service_config.json", - opt_args = [ - "old-naming", - "lazy-import", - "python-gapic-name=googleads", - "python-gapic-templates=ads-templates", - ], -) - -py_gapic_assembly_pkg( - name = "googleads-py", - deps = [ - ":googleads_py_gapic", - "//google/ads/googleads/v4/common:common_py_proto", - "//google/ads/googleads/v4/enums:enums_py_proto", - "//google/ads/googleads/v4/errors:errors_py_proto", - "//google/ads/googleads/v4/resources:resources_py_proto", - "//google/ads/googleads/v4/services:services_py_grpc", - "//google/ads/googleads/v4/services:services_py_proto", - ], -) - -############################################################################## -# Node.js -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "nodejs_gapic_assembly_pkg", - "nodejs_gapic_library", -) - -nodejs_gapic_library( - name = "googleads_nodejs_gapic", - package_name = "google-ads", - src = ":googleads_proto_with_info", - extra_protoc_parameters = ["metadata"], - grpc_service_config = "googleads_grpc_service_config.json", - main_service = "GoogleAdsService", - package = "google.ads.googleads.v4", - service_yaml = "googleads_v4.yaml", - deps = [], -) - -nodejs_gapic_assembly_pkg( - name = "googleads-nodejs", - deps = [ - ":googleads_nodejs_gapic", - ":googleads_proto", - ], -) diff --git a/google/ads/googleads/v4/common/BUILD.bazel b/google/ads/googleads/v4/common/BUILD.bazel deleted file mode 100644 index 020851567..000000000 --- a/google/ads/googleads/v4/common/BUILD.bazel +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "common_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v4/enums:enums_proto", - "//google/api:annotations_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_proto_library", -) - -java_proto_library( - name = "common_java_proto", - deps = [":common_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_proto_library", -) - -csharp_proto_library( - name = "common_csharp_proto", - deps = [":common_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_proto_library", -) - -ruby_proto_library( - name = "common_ruby_proto", - deps = [":common_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_proto_library", -) - -py_proto_library( - name = "common_py_proto", - deps = [":common_proto"], -) diff --git a/google/ads/googleads/v4/common/ad_asset.proto b/google/ads/googleads/v4/common/ad_asset.proto deleted file mode 100644 index b2e58184c..000000000 --- a/google/ads/googleads/v4/common/ad_asset.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/served_asset_field_type.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "AdAssetProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing assets used inside an ad. - -// A text asset used inside an ad. -message AdTextAsset { - // Asset text. - google.protobuf.StringValue text = 1; - - // The pinned field of the asset. This restricts the asset to only serve - // within this field. Multiple assets can be pinned to the same field. An - // asset that is unpinned or pinned to a different field will not serve in a - // field where some other asset has been pinned. - google.ads.googleads.v4.enums.ServedAssetFieldTypeEnum.ServedAssetFieldType pinned_field = 2; -} - -// An image asset used inside an ad. -message AdImageAsset { - // The Asset resource name of this image. - google.protobuf.StringValue asset = 1; -} - -// A video asset used inside an ad. -message AdVideoAsset { - // The Asset resource name of this video. - google.protobuf.StringValue asset = 1; -} - -// A media bundle asset used inside an ad. -message AdMediaBundleAsset { - // The Asset resource name of this media bundle. - google.protobuf.StringValue asset = 1; -} diff --git a/google/ads/googleads/v4/common/ad_type_infos.proto b/google/ads/googleads/v4/common/ad_type_infos.proto deleted file mode 100644 index 11fbd78b6..000000000 --- a/google/ads/googleads/v4/common/ad_type_infos.proto +++ /dev/null @@ -1,636 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/common/ad_asset.proto"; -import "google/ads/googleads/v4/enums/call_conversion_reporting_state.proto"; -import "google/ads/googleads/v4/enums/display_ad_format_setting.proto"; -import "google/ads/googleads/v4/enums/display_upload_product_type.proto"; -import "google/ads/googleads/v4/enums/legacy_app_install_ad_app_store.proto"; -import "google/ads/googleads/v4/enums/mime_type.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "AdTypeInfosProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file containing info messages for specific ad types. - -// A text ad. -message TextAdInfo { - // The headline of the ad. - google.protobuf.StringValue headline = 1; - - // The first line of the ad's description. - google.protobuf.StringValue description1 = 2; - - // The second line of the ad's description. - google.protobuf.StringValue description2 = 3; -} - -// An expanded text ad. -message ExpandedTextAdInfo { - // The first part of the ad's headline. - google.protobuf.StringValue headline_part1 = 1; - - // The second part of the ad's headline. - google.protobuf.StringValue headline_part2 = 2; - - // The third part of the ad's headline. - google.protobuf.StringValue headline_part3 = 6; - - // The description of the ad. - google.protobuf.StringValue description = 3; - - // The second description of the ad. - google.protobuf.StringValue description2 = 7; - - // The text that can appear alongside the ad's displayed URL. - google.protobuf.StringValue path1 = 4; - - // Additional text that can appear alongside the ad's displayed URL. - google.protobuf.StringValue path2 = 5; -} - -// A call-only ad. -message CallOnlyAdInfo { - // The country code in the ad. - google.protobuf.StringValue country_code = 1; - - // The phone number in the ad. - google.protobuf.StringValue phone_number = 2; - - // The business name in the ad. - google.protobuf.StringValue business_name = 3; - - // First headline in the ad. - google.protobuf.StringValue headline1 = 11; - - // Second headline in the ad. - google.protobuf.StringValue headline2 = 12; - - // The first line of the ad's description. - google.protobuf.StringValue description1 = 4; - - // The second line of the ad's description. - google.protobuf.StringValue description2 = 5; - - // Whether to enable call tracking for the creative. Enabling call - // tracking also enables call conversions. - google.protobuf.BoolValue call_tracked = 6; - - // Whether to disable call conversion for the creative. - // If set to `true`, disables call conversions even when `call_tracked` is - // `true`. - // If `call_tracked` is `false`, this field is ignored. - google.protobuf.BoolValue disable_call_conversion = 7; - - // The URL to be used for phone number verification. - google.protobuf.StringValue phone_number_verification_url = 8; - - // The conversion action to attribute a call conversion to. If not set a - // default conversion action is used. This field only has effect if - // call_tracked is set to true. Otherwise this field is ignored. - google.protobuf.StringValue conversion_action = 9; - - // The call conversion behavior of this call only ad. It can use its own call - // conversion setting, inherit the account level setting, or be disabled. - google.ads.googleads.v4.enums.CallConversionReportingStateEnum.CallConversionReportingState conversion_reporting_state = 10; -} - -// An expanded dynamic search ad. -message ExpandedDynamicSearchAdInfo { - // The description of the ad. - google.protobuf.StringValue description = 1; - - // The second description of the ad. - google.protobuf.StringValue description2 = 2; -} - -// A hotel ad. -message HotelAdInfo { - -} - -// A Smart Shopping ad. -message ShoppingSmartAdInfo { - -} - -// A standard Shopping ad. -message ShoppingProductAdInfo { - -} - -// A Shopping Comparison Listing ad. -message ShoppingComparisonListingAdInfo { - // Headline of the ad. This field is required. Allowed length is between 25 - // and 45 characters. - google.protobuf.StringValue headline = 1; -} - -// A Gmail ad. -message GmailAdInfo { - // The Gmail teaser. - GmailTeaser teaser = 1; - - // The MediaFile resource name of the header image. Valid image types are GIF, - // JPEG and PNG. The minimum size is 300x100 pixels and the aspect ratio must - // be between 3:1 and 5:1 (+-1%). - google.protobuf.StringValue header_image = 2; - - // The MediaFile resource name of the marketing image. Valid image types are - // GIF, JPEG and PNG. The image must either be landscape with a minimum size - // of 600x314 pixels and aspect ratio of 600:314 (+-1%) or square with a - // minimum size of 300x300 pixels and aspect ratio of 1:1 (+-1%) - google.protobuf.StringValue marketing_image = 3; - - // Headline of the marketing image. - google.protobuf.StringValue marketing_image_headline = 4; - - // Description of the marketing image. - google.protobuf.StringValue marketing_image_description = 5; - - // Display-call-to-action of the marketing image. - DisplayCallToAction marketing_image_display_call_to_action = 6; - - // Product images. Up to 15 images are supported. - repeated ProductImage product_images = 7; - - // Product videos. Up to 7 videos are supported. At least one product video - // or a marketing image must be specified. - repeated ProductVideo product_videos = 8; -} - -// Gmail teaser data. The teaser is a small header that acts as an invitation -// to view the rest of the ad (the body). -message GmailTeaser { - // Headline of the teaser. - google.protobuf.StringValue headline = 1; - - // Description of the teaser. - google.protobuf.StringValue description = 2; - - // Business name of the advertiser. - google.protobuf.StringValue business_name = 3; - - // The MediaFile resource name of the logo image. Valid image types are GIF, - // JPEG and PNG. The minimum size is 144x144 pixels and the aspect ratio must - // be 1:1 (+-1%). - google.protobuf.StringValue logo_image = 4; -} - -// Data for display call to action. The call to action is a piece of the ad -// that prompts the user to do something. Like clicking a link or making a phone -// call. -message DisplayCallToAction { - // Text for the display-call-to-action. - google.protobuf.StringValue text = 1; - - // Text color for the display-call-to-action in hexadecimal, e.g. #ffffff for - // white. - google.protobuf.StringValue text_color = 2; - - // Identifies the url collection in the ad.url_collections field. If not set - // the url defaults to final_url. - google.protobuf.StringValue url_collection_id = 3; -} - -// Product image specific data. -message ProductImage { - // The MediaFile resource name of the product image. Valid image types are - // GIF, JPEG and PNG. The minimum size is 300x300 pixels and the aspect ratio - // must be 1:1 (+-1%). - google.protobuf.StringValue product_image = 1; - - // Description of the product. - google.protobuf.StringValue description = 2; - - // Display-call-to-action of the product image. - DisplayCallToAction display_call_to_action = 3; -} - -// Product video specific data. -message ProductVideo { - // The MediaFile resource name of a video which must be hosted on YouTube. - google.protobuf.StringValue product_video = 1; -} - -// An image ad. -message ImageAdInfo { - // Width in pixels of the full size image. - google.protobuf.Int64Value pixel_width = 4; - - // Height in pixels of the full size image. - google.protobuf.Int64Value pixel_height = 5; - - // URL of the full size image. - google.protobuf.StringValue image_url = 6; - - // Width in pixels of the preview size image. - google.protobuf.Int64Value preview_pixel_width = 7; - - // Height in pixels of the preview size image. - google.protobuf.Int64Value preview_pixel_height = 8; - - // URL of the preview size image. - google.protobuf.StringValue preview_image_url = 9; - - // The mime type of the image. - google.ads.googleads.v4.enums.MimeTypeEnum.MimeType mime_type = 10; - - // The name of the image. If the image was created from a MediaFile, this is - // the MediaFile's name. If the image was created from bytes, this is empty. - google.protobuf.StringValue name = 11; - - // The image to create the ImageAd from. This can be specified in one of - // two ways. - // 1. An existing MediaFile resource. - // 2. The raw image data as bytes. - oneof image { - // The MediaFile resource to use for the image. - google.protobuf.StringValue media_file = 1; - - // Raw image data as bytes. - google.protobuf.BytesValue data = 2; - - // An ad ID to copy the image from. - google.protobuf.Int64Value ad_id_to_copy_image_from = 3; - } -} - -// Representation of video bumper in-stream ad format (very short in-stream -// non-skippable video ad). -message VideoBumperInStreamAdInfo { - // The MediaFile resource name of the companion banner used with the ad. - google.protobuf.StringValue companion_banner = 1; -} - -// Representation of video non-skippable in-stream ad format (15 second -// in-stream non-skippable video ad). -message VideoNonSkippableInStreamAdInfo { - // The MediaFile resource name of the companion banner used with the ad. - google.protobuf.StringValue companion_banner = 1; -} - -// Representation of video TrueView in-stream ad format (ad shown during video -// playback, often at beginning, which displays a skip button a few seconds into -// the video). -message VideoTrueViewInStreamAdInfo { - // Label on the CTA (call-to-action) button taking the user to the video ad's - // final URL. - // Required for TrueView for action campaigns, optional otherwise. - google.protobuf.StringValue action_button_label = 1; - - // Additional text displayed with the CTA (call-to-action) button to give - // context and encourage clicking on the button. - google.protobuf.StringValue action_headline = 2; - - // The MediaFile resource name of the companion banner used with the ad. - google.protobuf.StringValue companion_banner = 3; -} - -// Representation of video out-stream ad format (ad shown alongside a feed -// with automatic playback, without sound). -message VideoOutstreamAdInfo { - // The headline of the ad. - google.protobuf.StringValue headline = 1; - - // The description line. - google.protobuf.StringValue description = 2; -} - -// Representation of video TrueView discovery ad format. -message VideoTrueViewDiscoveryAdInfo { - // The headline of the ad. - google.protobuf.StringValue headline = 1; - - // First text line for a TrueView video discovery ad. - google.protobuf.StringValue description1 = 2; - - // Second text line for a TrueView video discovery ad. - google.protobuf.StringValue description2 = 3; -} - -// A video ad. -message VideoAdInfo { - // The MediaFile resource to use for the video. - google.protobuf.StringValue media_file = 1; - - // Format-specific schema for the different video formats. - oneof format { - // Video TrueView in-stream ad format. - VideoTrueViewInStreamAdInfo in_stream = 2; - - // Video bumper in-stream ad format. - VideoBumperInStreamAdInfo bumper = 3; - - // Video out-stream ad format. - VideoOutstreamAdInfo out_stream = 4; - - // Video non-skippable in-stream ad format. - VideoNonSkippableInStreamAdInfo non_skippable = 5; - - // Video TrueView discovery ad format. - VideoTrueViewDiscoveryAdInfo discovery = 6; - } -} - -// A responsive search ad. -// -// Responsive search ads let you create an ad that adapts to show more text, and -// more relevant messages, to your customers. Enter multiple headlines and -// descriptions when creating a responsive search ad, and over time, Google Ads -// will automatically test different combinations and learn which combinations -// perform best. By adapting your ad's content to more closely match potential -// customers' search terms, responsive search ads may improve your campaign's -// performance. -// -// More information at https://support.google.com/google-ads/answer/7684791 -message ResponsiveSearchAdInfo { - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. - repeated AdTextAsset headlines = 1; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. - repeated AdTextAsset descriptions = 2; - - // First part of text that may appear appended to the url displayed in the ad. - google.protobuf.StringValue path1 = 3; - - // Second part of text that may appear appended to the url displayed in the - // ad. This field can only be set when path1 is also set. - google.protobuf.StringValue path2 = 4; -} - -// A legacy responsive display ad. Ads of this type are labeled 'Responsive ads' -// in the Google Ads UI. -message LegacyResponsiveDisplayAdInfo { - // The short version of the ad's headline. - google.protobuf.StringValue short_headline = 1; - - // The long version of the ad's headline. - google.protobuf.StringValue long_headline = 2; - - // The description of the ad. - google.protobuf.StringValue description = 3; - - // The business name in the ad. - google.protobuf.StringValue business_name = 4; - - // Advertiser's consent to allow flexible color. When true, the ad may be - // served with different color if necessary. When false, the ad will be served - // with the specified colors or a neutral color. - // The default value is true. - // Must be true if main_color and accent_color are not set. - google.protobuf.BoolValue allow_flexible_color = 5; - - // The accent color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - google.protobuf.StringValue accent_color = 6; - - // The main color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - google.protobuf.StringValue main_color = 7; - - // The call-to-action text for the ad. - google.protobuf.StringValue call_to_action_text = 8; - - // The MediaFile resource name of the logo image used in the ad. - google.protobuf.StringValue logo_image = 9; - - // The MediaFile resource name of the square logo image used in the ad. - google.protobuf.StringValue square_logo_image = 10; - - // The MediaFile resource name of the marketing image used in the ad. - google.protobuf.StringValue marketing_image = 11; - - // The MediaFile resource name of the square marketing image used in the ad. - google.protobuf.StringValue square_marketing_image = 12; - - // Specifies which format the ad will be served in. Default is ALL_FORMATS. - google.ads.googleads.v4.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting format_setting = 13; - - // Prefix before price. E.g. 'as low as'. - google.protobuf.StringValue price_prefix = 14; - - // Promotion text used for dyanmic formats of responsive ads. For example - // 'Free two-day shipping'. - google.protobuf.StringValue promo_text = 15; -} - -// An app ad. -message AppAdInfo { - // Mandatory ad text. - AdTextAsset mandatory_ad_text = 1; - - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. - repeated AdTextAsset headlines = 2; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. - repeated AdTextAsset descriptions = 3; - - // List of image assets that may be displayed with the ad. - repeated AdImageAsset images = 4; - - // List of YouTube video assets that may be displayed with the ad. - repeated AdVideoAsset youtube_videos = 5; - - // List of media bundle assets that may be used with the ad. - repeated AdMediaBundleAsset html5_media_bundles = 6; -} - -// App engagement ads allow you to write text encouraging a specific action in -// the app, like checking in, making a purchase, or booking a flight. -// They allow you to send users to a specific part of your app where they can -// find what they're looking for easier and faster. -message AppEngagementAdInfo { - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. - repeated AdTextAsset headlines = 1; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. - repeated AdTextAsset descriptions = 2; - - // List of image assets that may be displayed with the ad. - repeated AdImageAsset images = 3; - - // List of video assets that may be displayed with the ad. - repeated AdVideoAsset videos = 4; -} - -// A legacy app install ad that only can be used by a few select customers. -message LegacyAppInstallAdInfo { - // The id of the mobile app. - google.protobuf.StringValue app_id = 1; - - // The app store the mobile app is available in. - google.ads.googleads.v4.enums.LegacyAppInstallAdAppStoreEnum.LegacyAppInstallAdAppStore app_store = 2; - - // The headline of the ad. - google.protobuf.StringValue headline = 3; - - // The first description line of the ad. - google.protobuf.StringValue description1 = 4; - - // The second description line of the ad. - google.protobuf.StringValue description2 = 5; -} - -// A responsive display ad. -message ResponsiveDisplayAdInfo { - // Marketing images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must - // be 1.91:1 (+-1%). At least one marketing_image is required. Combined with - // square_marketing_images the maximum is 15. - repeated AdImageAsset marketing_images = 1; - - // Square marketing images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must - // be 1:1 (+-1%). At least one square marketing_image is required. Combined - // with marketing_images the maximum is 15. - repeated AdImageAsset square_marketing_images = 2; - - // Logo images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 512x128 and the aspect ratio must - // be 4:1 (+-1%). Combined with square_logo_images the maximum is 5. - repeated AdImageAsset logo_images = 3; - - // Square logo images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must - // be 1:1 (+-1%). Combined with square_logo_images the maximum is 5. - repeated AdImageAsset square_logo_images = 4; - - // Short format headlines for the ad. The maximum length is 30 characters. - // At least 1 and max 5 headlines can be specified. - repeated AdTextAsset headlines = 5; - - // A required long format headline. The maximum length is 90 characters. - AdTextAsset long_headline = 6; - - // Descriptive texts for the ad. The maximum length is 90 characters. At - // least 1 and max 5 headlines can be specified. - repeated AdTextAsset descriptions = 7; - - // Optional YouTube videos for the ad. A maximum of 5 videos can be specified. - repeated AdVideoAsset youtube_videos = 8; - - // The advertiser/brand name. Maximum display width is 25. - google.protobuf.StringValue business_name = 9; - - // The main color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - google.protobuf.StringValue main_color = 10; - - // The accent color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - google.protobuf.StringValue accent_color = 11; - - // Advertiser's consent to allow flexible color. When true, the ad may be - // served with different color if necessary. When false, the ad will be served - // with the specified colors or a neutral color. - // The default value is true. - // Must be true if main_color and accent_color are not set. - google.protobuf.BoolValue allow_flexible_color = 12; - - // The call-to-action text for the ad. Maximum display width is 30. - google.protobuf.StringValue call_to_action_text = 13; - - // Prefix before price. E.g. 'as low as'. - google.protobuf.StringValue price_prefix = 14; - - // Promotion text used for dyanmic formats of responsive ads. For example - // 'Free two-day shipping'. - google.protobuf.StringValue promo_text = 15; - - // Specifies which format the ad will be served in. Default is ALL_FORMATS. - google.ads.googleads.v4.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting format_setting = 16; -} - -// A local ad. -message LocalAdInfo { - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. At least 1 and at most 5 headlines must be - // specified. - repeated AdTextAsset headlines = 1; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. At least 1 and at most 5 descriptions must - // be specified. - repeated AdTextAsset descriptions = 2; - - // List of text assets for call-to-actions. When the ad serves the - // call-to-actions will be selected from this list. Call-to-actions are - // optional and at most 5 can be specified. - repeated AdTextAsset call_to_actions = 3; - - // List of marketing image assets that may be displayed with the ad. The - // images must be 314x600 pixels or 320x320 pixels. At least 1 and at most - // 20 image assets must be specified. - repeated AdImageAsset marketing_images = 4; - - // List of logo image assets that may be displayed with the ad. The images - // must be 128x128 pixels and not larger than 120KB. At least 1 and at most 5 - // image assets must be specified. - repeated AdImageAsset logo_images = 5; - - // List of YouTube video assets that may be displayed with the ad. Videos - // are optional and at most 20 can be specified. - repeated AdVideoAsset videos = 6; - - // First part of optional text that may appear appended to the url displayed - // in the ad. - google.protobuf.StringValue path1 = 7; - - // Second part of optional text that may appear appended to the url displayed - // in the ad. This field can only be set when path1 is also set. - google.protobuf.StringValue path2 = 8; -} - -// A generic type of display ad. The exact ad format is controlled by the -// display_upload_product_type field, which determines what kinds of data -// need to be included with the ad. -message DisplayUploadAdInfo { - // The product type of this ad. See comments on the enum for details. - google.ads.googleads.v4.enums.DisplayUploadProductTypeEnum.DisplayUploadProductType display_upload_product_type = 1; - - // The asset data that makes up the ad. - oneof media_asset { - // A media bundle asset to be used in the ad. For information about the - // media bundle for HTML5_UPLOAD_AD see - // https://support.google.com/google-ads/answer/1722096 - // Media bundles that are part of dynamic product types use a special format - // that needs to be created through the Google Web Designer. See - // https://support.google.com/webdesigner/answer/7543898 for more - // information. - AdMediaBundleAsset media_bundle = 2; - } -} diff --git a/google/ads/googleads/v4/common/asset_types.proto b/google/ads/googleads/v4/common/asset_types.proto deleted file mode 100644 index eb3943327..000000000 --- a/google/ads/googleads/v4/common/asset_types.proto +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/mime_type.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "AssetTypesProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file containing info messages for specific asset types. - -// A YouTube asset. -message YoutubeVideoAsset { - // YouTube video id. This is the 11 character string value used in the - // YouTube video URL. - google.protobuf.StringValue youtube_video_id = 1; -} - -// A MediaBundle asset. -message MediaBundleAsset { - // Media bundle (ZIP file) asset data. The format of the uploaded ZIP file - // depends on the ad field where it will be used. For more information on the - // format, see the documentation of the ad field where you plan on using the - // MediaBundleAsset. This field is mutate only. - google.protobuf.BytesValue data = 1; -} - -// An Image asset. -message ImageAsset { - // The raw bytes data of an image. This field is mutate only. - google.protobuf.BytesValue data = 1; - - // File size of the image asset in bytes. - google.protobuf.Int64Value file_size = 2; - - // MIME type of the image asset. - google.ads.googleads.v4.enums.MimeTypeEnum.MimeType mime_type = 3; - - // Metadata for this image at its original size. - ImageDimension full_size = 4; -} - -// Metadata for an image at a certain size, either original or resized. -message ImageDimension { - // Height of the image. - google.protobuf.Int64Value height_pixels = 1; - - // Width of the image. - google.protobuf.Int64Value width_pixels = 2; - - // A URL that returns the image with this height and width. - google.protobuf.StringValue url = 3; -} - -// A Text asset. -message TextAsset { - // Text content of the text asset. - google.protobuf.StringValue text = 1; -} - -// A Book on Google asset. Used to redirect user to book through Google. -// Book on Google will change the redirect url to book directly through -// Google. -message BookOnGoogleAsset { - -} diff --git a/google/ads/googleads/v4/common/bidding.proto b/google/ads/googleads/v4/common/bidding.proto deleted file mode 100644 index c99ec8360..000000000 --- a/google/ads/googleads/v4/common/bidding.proto +++ /dev/null @@ -1,171 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/target_impression_share_location.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "BiddingProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing bidding schemes. - -// Commission is an automatic bidding strategy in which the advertiser pays a -// certain portion of the conversion value. -message Commission { - // Commission rate defines the portion of the conversion value that the - // advertiser will be billed. A commission rate of x should be passed into - // this field as (x * 1,000,000). For example, 106,000 represents a commission - // rate of 0.106 (10.6%). - google.protobuf.Int64Value commission_rate_micros = 1; -} - -// An automated bidding strategy that raises bids for clicks -// that seem more likely to lead to a conversion and lowers -// them for clicks where they seem less likely. -message EnhancedCpc { - -} - -// Manual click-based bidding where user pays per click. -message ManualCpc { - // Whether bids are to be enhanced based on conversion optimizer data. - google.protobuf.BoolValue enhanced_cpc_enabled = 1; -} - -// Manual impression-based bidding where user pays per thousand impressions. -message ManualCpm { - -} - -// View based bidding where user pays per video view. -message ManualCpv { - -} - -// An automated bidding strategy to help get the most conversions for your -// campaigns while spending your budget. -message MaximizeConversions { - -} - -// An automated bidding strategy to help get the most conversion value for your -// campaigns while spending your budget. -message MaximizeConversionValue { - // The target return on ad spend (ROAS) option. If set, the bid strategy will - // maximize revenue while averaging the target return on ad spend. If the - // target ROAS is high, the bid strategy may not be able to spend the full - // budget. If the target ROAS is not set, the bid strategy will aim to - // achieve the highest possible ROAS for the budget. - google.protobuf.DoubleValue target_roas = 1; -} - -// An automated bid strategy that sets bids to help get as many conversions as -// possible at the target cost-per-acquisition (CPA) you set. -message TargetCpa { - // Average CPA target. - // This target should be greater than or equal to minimum billable unit based - // on the currency for the account. - google.protobuf.Int64Value target_cpa_micros = 1; - - // Maximum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - google.protobuf.Int64Value cpc_bid_ceiling_micros = 2; - - // Minimum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - google.protobuf.Int64Value cpc_bid_floor_micros = 3; -} - -// Target CPM (cost per thousand impressions) is an automated bidding strategy -// that sets bids to optimize performance given the target CPM you set. -message TargetCpm { - -} - -// An automated bidding strategy that sets bids so that a certain percentage of -// search ads are shown at the top of the first page (or other targeted -// location). -message TargetImpressionShare { - // The targeted location on the search results page. - google.ads.googleads.v4.enums.TargetImpressionShareLocationEnum.TargetImpressionShareLocation location = 1; - - // The desired fraction of ads to be shown in the targeted location in micros. - // E.g. 1% equals 10,000. - google.protobuf.Int64Value location_fraction_micros = 2; - - // The highest CPC bid the automated bidding system is permitted to specify. - // This is a required field entered by the advertiser that sets the ceiling - // and specified in local micros. - google.protobuf.Int64Value cpc_bid_ceiling_micros = 3; -} - -// An automated bidding strategy that helps you maximize revenue while -// averaging a specific target return on ad spend (ROAS). -message TargetRoas { - // Required. The desired revenue (based on conversion data) per unit of spend. - // Value must be between 0.01 and 1000.0, inclusive. - google.protobuf.DoubleValue target_roas = 1; - - // Maximum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - google.protobuf.Int64Value cpc_bid_ceiling_micros = 2; - - // Minimum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - google.protobuf.Int64Value cpc_bid_floor_micros = 3; -} - -// An automated bid strategy that sets your bids to help get as many clicks -// as possible within your budget. -message TargetSpend { - // The spend target under which to maximize clicks. - // A TargetSpend bidder will attempt to spend the smaller of this value - // or the natural throttling spend amount. - // If not specified, the budget is used as the spend target. - // This field is deprecated and should no longer be used. See - // https://ads-developers.googleblog.com/2020/05/reminder-about-sunset-creation-of.html - // for details. - google.protobuf.Int64Value target_spend_micros = 1 [deprecated = true]; - - // Maximum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - google.protobuf.Int64Value cpc_bid_ceiling_micros = 2; -} - -// A bidding strategy where bids are a fraction of the advertised price for -// some good or service. -message PercentCpc { - // Maximum bid limit that can be set by the bid strategy. This is - // an optional field entered by the advertiser and specified in local micros. - // Note: A zero value is interpreted in the same way as having bid_ceiling - // undefined. - google.protobuf.Int64Value cpc_bid_ceiling_micros = 1; - - // Adjusts the bid for each auction upward or downward, depending on the - // likelihood of a conversion. Individual bids may exceed - // cpc_bid_ceiling_micros, but the average bid amount for a campaign should - // not. - google.protobuf.BoolValue enhanced_cpc_enabled = 2; -} diff --git a/google/ads/googleads/v4/common/click_location.proto b/google/ads/googleads/v4/common/click_location.proto deleted file mode 100644 index d640a08f0..000000000 --- a/google/ads/googleads/v4/common/click_location.proto +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ClickLocationProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing a ClickLocation. - -// Location criteria associated with a click. -message ClickLocation { - // The city location criterion associated with the impression. - google.protobuf.StringValue city = 1; - - // The country location criterion associated with the impression. - google.protobuf.StringValue country = 2; - - // The metro location criterion associated with the impression. - google.protobuf.StringValue metro = 3; - - // The most specific location criterion associated with the impression. - google.protobuf.StringValue most_specific = 4; - - // The region location criterion associated with the impression. - google.protobuf.StringValue region = 5; -} diff --git a/google/ads/googleads/v4/common/criteria.proto b/google/ads/googleads/v4/common/criteria.proto deleted file mode 100644 index 938f3b498..000000000 --- a/google/ads/googleads/v4/common/criteria.proto +++ /dev/null @@ -1,594 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/age_range_type.proto"; -import "google/ads/googleads/v4/enums/app_payment_model_type.proto"; -import "google/ads/googleads/v4/enums/content_label_type.proto"; -import "google/ads/googleads/v4/enums/day_of_week.proto"; -import "google/ads/googleads/v4/enums/device.proto"; -import "google/ads/googleads/v4/enums/gender_type.proto"; -import "google/ads/googleads/v4/enums/hotel_date_selection_type.proto"; -import "google/ads/googleads/v4/enums/income_range_type.proto"; -import "google/ads/googleads/v4/enums/interaction_type.proto"; -import "google/ads/googleads/v4/enums/keyword_match_type.proto"; -import "google/ads/googleads/v4/enums/listing_group_type.proto"; -import "google/ads/googleads/v4/enums/location_group_radius_units.proto"; -import "google/ads/googleads/v4/enums/minute_of_hour.proto"; -import "google/ads/googleads/v4/enums/parental_status_type.proto"; -import "google/ads/googleads/v4/enums/preferred_content_type.proto"; -import "google/ads/googleads/v4/enums/product_bidding_category_level.proto"; -import "google/ads/googleads/v4/enums/product_channel.proto"; -import "google/ads/googleads/v4/enums/product_channel_exclusivity.proto"; -import "google/ads/googleads/v4/enums/product_condition.proto"; -import "google/ads/googleads/v4/enums/product_custom_attribute_index.proto"; -import "google/ads/googleads/v4/enums/product_type_level.proto"; -import "google/ads/googleads/v4/enums/proximity_radius_units.proto"; -import "google/ads/googleads/v4/enums/webpage_condition_operand.proto"; -import "google/ads/googleads/v4/enums/webpage_condition_operator.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "CriteriaProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing criteria types. - -// A keyword criterion. -message KeywordInfo { - // The text of the keyword (at most 80 characters and 10 words). - google.protobuf.StringValue text = 1; - - // The match type of the keyword. - google.ads.googleads.v4.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 2; -} - -// A placement criterion. This can be used to modify bids for sites when -// targeting the content network. -message PlacementInfo { - // URL of the placement. - // - // For example, "http://www.domain.com". - google.protobuf.StringValue url = 1; -} - -// A mobile app category criterion. -message MobileAppCategoryInfo { - // The mobile app category constant resource name. - google.protobuf.StringValue mobile_app_category_constant = 1; -} - -// A mobile application criterion. -message MobileApplicationInfo { - // A string that uniquely identifies a mobile application to Google Ads API. - // The format of this string is "{platform}-{platform_native_id}", where - // platform is "1" for iOS apps and "2" for Android apps, and where - // platform_native_id is the mobile application identifier native to the - // corresponding platform. - // For iOS, this native identifier is the 9 digit string that appears at the - // end of an App Store URL (e.g., "476943146" for "Flood-It! 2" whose App - // Store link is "http://itunes.apple.com/us/app/flood-it!-2/id476943146"). - // For Android, this native identifier is the application's package name - // (e.g., "com.labpixies.colordrips" for "Color Drips" given Google Play link - // "https://play.google.com/store/apps/details?id=com.labpixies.colordrips"). - // A well formed app id for Google Ads API would thus be "1-476943146" for iOS - // and "2-com.labpixies.colordrips" for Android. - // This field is required and must be set in CREATE operations. - google.protobuf.StringValue app_id = 2; - - // Name of this mobile application. - google.protobuf.StringValue name = 3; -} - -// A location criterion. -message LocationInfo { - // The geo target constant resource name. - google.protobuf.StringValue geo_target_constant = 1; -} - -// A device criterion. -message DeviceInfo { - // Type of the device. - google.ads.googleads.v4.enums.DeviceEnum.Device type = 1; -} - -// A preferred content criterion. -message PreferredContentInfo { - // Type of the preferred content. - google.ads.googleads.v4.enums.PreferredContentTypeEnum.PreferredContentType type = 2; -} - -// A listing group criterion. -message ListingGroupInfo { - // Type of the listing group. - google.ads.googleads.v4.enums.ListingGroupTypeEnum.ListingGroupType type = 1; - - // Dimension value with which this listing group is refining its parent. - // Undefined for the root group. - ListingDimensionInfo case_value = 2; - - // Resource name of ad group criterion which is the parent listing group - // subdivision. Null for the root group. - google.protobuf.StringValue parent_ad_group_criterion = 3; -} - -// A listing scope criterion. -message ListingScopeInfo { - // Scope of the campaign criterion. - repeated ListingDimensionInfo dimensions = 2; -} - -// Listing dimensions for listing group criterion. -message ListingDimensionInfo { - // Dimension of one of the types below is always present. - oneof dimension { - // Advertiser-specific hotel ID. - HotelIdInfo hotel_id = 2; - - // Class of the hotel as a number of stars 1 to 5. - HotelClassInfo hotel_class = 3; - - // Country or Region the hotel is located in. - HotelCountryRegionInfo hotel_country_region = 4; - - // State the hotel is located in. - HotelStateInfo hotel_state = 5; - - // City the hotel is located in. - HotelCityInfo hotel_city = 6; - - // Bidding category of a product offer. - ProductBiddingCategoryInfo product_bidding_category = 13; - - // Brand of a product offer. - ProductBrandInfo product_brand = 15; - - // Locality of a product offer. - ProductChannelInfo product_channel = 8; - - // Availability of a product offer. - ProductChannelExclusivityInfo product_channel_exclusivity = 9; - - // Condition of a product offer. - ProductConditionInfo product_condition = 10; - - // Custom attribute of a product offer. - ProductCustomAttributeInfo product_custom_attribute = 16; - - // Item id of a product offer. - ProductItemIdInfo product_item_id = 11; - - // Type of a product offer. - ProductTypeInfo product_type = 12; - - // Unknown dimension. Set when no other listing dimension is set. - UnknownListingDimensionInfo unknown_listing_dimension = 14; - } -} - -// Advertiser-specific hotel ID. -message HotelIdInfo { - // String value of the hotel ID. - google.protobuf.StringValue value = 1; -} - -// Class of the hotel as a number of stars 1 to 5. -message HotelClassInfo { - // Long value of the hotel class. - google.protobuf.Int64Value value = 1; -} - -// Country or Region the hotel is located in. -message HotelCountryRegionInfo { - // The Geo Target Constant resource name. - google.protobuf.StringValue country_region_criterion = 1; -} - -// State the hotel is located in. -message HotelStateInfo { - // The Geo Target Constant resource name. - google.protobuf.StringValue state_criterion = 1; -} - -// City the hotel is located in. -message HotelCityInfo { - // The Geo Target Constant resource name. - google.protobuf.StringValue city_criterion = 1; -} - -// Bidding category of a product offer. -message ProductBiddingCategoryInfo { - // ID of the product bidding category. - // - // This ID is equivalent to the google_product_category ID as described in - // this article: https://support.google.com/merchants/answer/6324436 - google.protobuf.Int64Value id = 1; - - // Two-letter upper-case country code of the product bidding category. It must - // match the campaign.shopping_setting.sales_country field. - google.protobuf.StringValue country_code = 2; - - // Level of the product bidding category. - google.ads.googleads.v4.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 3; -} - -// Brand of the product. -message ProductBrandInfo { - // String value of the product brand. - google.protobuf.StringValue value = 1; -} - -// Locality of a product offer. -message ProductChannelInfo { - // Value of the locality. - google.ads.googleads.v4.enums.ProductChannelEnum.ProductChannel channel = 1; -} - -// Availability of a product offer. -message ProductChannelExclusivityInfo { - // Value of the availability. - google.ads.googleads.v4.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity channel_exclusivity = 1; -} - -// Condition of a product offer. -message ProductConditionInfo { - // Value of the condition. - google.ads.googleads.v4.enums.ProductConditionEnum.ProductCondition condition = 1; -} - -// Custom attribute of a product offer. -message ProductCustomAttributeInfo { - // String value of the product custom attribute. - google.protobuf.StringValue value = 1; - - // Indicates the index of the custom attribute. - google.ads.googleads.v4.enums.ProductCustomAttributeIndexEnum.ProductCustomAttributeIndex index = 2; -} - -// Item id of a product offer. -message ProductItemIdInfo { - // Value of the id. - google.protobuf.StringValue value = 1; -} - -// Type of a product offer. -message ProductTypeInfo { - // Value of the type. - google.protobuf.StringValue value = 1; - - // Level of the type. - google.ads.googleads.v4.enums.ProductTypeLevelEnum.ProductTypeLevel level = 2; -} - -// Unknown listing dimension. -message UnknownListingDimensionInfo { - -} - -// Criterion for hotel date selection (default dates vs. user selected). -message HotelDateSelectionTypeInfo { - // Type of the hotel date selection - google.ads.googleads.v4.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType type = 1; -} - -// Criterion for number of days prior to the stay the booking is being made. -message HotelAdvanceBookingWindowInfo { - // Low end of the number of days prior to the stay. - google.protobuf.Int64Value min_days = 1; - - // High end of the number of days prior to the stay. - google.protobuf.Int64Value max_days = 2; -} - -// Criterion for length of hotel stay in nights. -message HotelLengthOfStayInfo { - // Low end of the number of nights in the stay. - google.protobuf.Int64Value min_nights = 1; - - // High end of the number of nights in the stay. - google.protobuf.Int64Value max_nights = 2; -} - -// Criterion for day of the week the booking is for. -message HotelCheckInDayInfo { - // The day of the week. - google.ads.googleads.v4.enums.DayOfWeekEnum.DayOfWeek day_of_week = 1; -} - -// Criterion for Interaction Type. -message InteractionTypeInfo { - // The interaction type. - google.ads.googleads.v4.enums.InteractionTypeEnum.InteractionType type = 1; -} - -// Represents an AdSchedule criterion. -// -// AdSchedule is specified as the day of the week and a time interval -// within which ads will be shown. -// -// No more than six AdSchedules can be added for the same day. -message AdScheduleInfo { - // Minutes after the start hour at which this schedule starts. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.ads.googleads.v4.enums.MinuteOfHourEnum.MinuteOfHour start_minute = 1; - - // Minutes after the end hour at which this schedule ends. The schedule is - // exclusive of the end minute. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.ads.googleads.v4.enums.MinuteOfHourEnum.MinuteOfHour end_minute = 2; - - // Starting hour in 24 hour time. - // This field must be between 0 and 23, inclusive. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.protobuf.Int32Value start_hour = 3; - - // Ending hour in 24 hour time; 24 signifies end of the day. - // This field must be between 0 and 24, inclusive. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.protobuf.Int32Value end_hour = 4; - - // Day of the week the schedule applies to. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.ads.googleads.v4.enums.DayOfWeekEnum.DayOfWeek day_of_week = 5; -} - -// An age range criterion. -message AgeRangeInfo { - // Type of the age range. - google.ads.googleads.v4.enums.AgeRangeTypeEnum.AgeRangeType type = 1; -} - -// A gender criterion. -message GenderInfo { - // Type of the gender. - google.ads.googleads.v4.enums.GenderTypeEnum.GenderType type = 1; -} - -// An income range criterion. -message IncomeRangeInfo { - // Type of the income range. - google.ads.googleads.v4.enums.IncomeRangeTypeEnum.IncomeRangeType type = 1; -} - -// A parental status criterion. -message ParentalStatusInfo { - // Type of the parental status. - google.ads.googleads.v4.enums.ParentalStatusTypeEnum.ParentalStatusType type = 1; -} - -// A YouTube Video criterion. -message YouTubeVideoInfo { - // YouTube video id as it appears on the YouTube watch page. - google.protobuf.StringValue video_id = 1; -} - -// A YouTube Channel criterion. -message YouTubeChannelInfo { - // The YouTube uploader channel id or the channel code of a YouTube channel. - google.protobuf.StringValue channel_id = 1; -} - -// A User List criterion. Represents a user list that is defined by the -// advertiser to be targeted. -message UserListInfo { - // The User List resource name. - google.protobuf.StringValue user_list = 1; -} - -// A Proximity criterion. The geo point and radius determine what geographical -// area is included. The address is a description of the geo point that does -// not affect ad serving. -// -// There are two ways to create a proximity. First, by setting an address -// and radius. The geo point will be automatically computed. Second, by -// setting a geo point and radius. The address is an optional label that won't -// be validated. -message ProximityInfo { - // Latitude and longitude. - GeoPointInfo geo_point = 1; - - // The radius of the proximity. - google.protobuf.DoubleValue radius = 2; - - // The unit of measurement of the radius. Default is KILOMETERS. - google.ads.googleads.v4.enums.ProximityRadiusUnitsEnum.ProximityRadiusUnits radius_units = 3; - - // Full address. - AddressInfo address = 4; -} - -// Geo point for proximity criterion. -message GeoPointInfo { - // Micro degrees for the longitude. - google.protobuf.Int32Value longitude_in_micro_degrees = 1; - - // Micro degrees for the latitude. - google.protobuf.Int32Value latitude_in_micro_degrees = 2; -} - -// Address for proximity criterion. -message AddressInfo { - // Postal code. - google.protobuf.StringValue postal_code = 1; - - // Province or state code. - google.protobuf.StringValue province_code = 2; - - // Country code. - google.protobuf.StringValue country_code = 3; - - // Province or state name. - google.protobuf.StringValue province_name = 4; - - // Street address line 1. - google.protobuf.StringValue street_address = 5; - - // Street address line 2. This field is write-only. It is only used for - // calculating the longitude and latitude of an address when geo_point is - // empty. - google.protobuf.StringValue street_address2 = 6; - - // Name of the city. - google.protobuf.StringValue city_name = 7; -} - -// A topic criterion. Use topics to target or exclude placements in the -// Google Display Network based on the category into which the placement falls -// (for example, "Pets & Animals/Pets/Dogs"). -message TopicInfo { - // The Topic Constant resource name. - google.protobuf.StringValue topic_constant = 1; - - // The category to target or exclude. Each subsequent element in the array - // describes a more specific sub-category. For example, - // "Pets & Animals", "Pets", "Dogs" represents the "Pets & Animals/Pets/Dogs" - // category. - repeated google.protobuf.StringValue path = 2; -} - -// A language criterion. -message LanguageInfo { - // The language constant resource name. - google.protobuf.StringValue language_constant = 1; -} - -// An IpBlock criterion used for IP exclusions. We allow: -// - IPv4 and IPv6 addresses -// - individual addresses (192.168.0.1) -// - masks for individual addresses (192.168.0.1/32) -// - masks for Class C networks (192.168.0.1/24) -message IpBlockInfo { - // The IP address of this IP block. - google.protobuf.StringValue ip_address = 1; -} - -// Content Label for category exclusion. -message ContentLabelInfo { - // Content label type, required for CREATE operations. - google.ads.googleads.v4.enums.ContentLabelTypeEnum.ContentLabelType type = 1; -} - -// Represents a Carrier Criterion. -message CarrierInfo { - // The Carrier constant resource name. - google.protobuf.StringValue carrier_constant = 1; -} - -// Represents a particular interest-based topic to be targeted. -message UserInterestInfo { - // The UserInterest resource name. - google.protobuf.StringValue user_interest_category = 1; -} - -// Represents a criterion for targeting webpages of an advertiser's website. -message WebpageInfo { - // The name of the criterion that is defined by this parameter. The name value - // will be used for identifying, sorting and filtering criteria with this type - // of parameters. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.protobuf.StringValue criterion_name = 1; - - // Conditions, or logical expressions, for webpage targeting. The list of - // webpage targeting conditions are and-ed together when evaluated - // for targeting. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - repeated WebpageConditionInfo conditions = 2; -} - -// Logical expression for targeting webpages of an advertiser's website. -message WebpageConditionInfo { - // Operand of webpage targeting condition. - google.ads.googleads.v4.enums.WebpageConditionOperandEnum.WebpageConditionOperand operand = 1; - - // Operator of webpage targeting condition. - google.ads.googleads.v4.enums.WebpageConditionOperatorEnum.WebpageConditionOperator operator = 2; - - // Argument of webpage targeting condition. - google.protobuf.StringValue argument = 3; -} - -// Represents an operating system version to be targeted. -message OperatingSystemVersionInfo { - // The operating system version constant resource name. - google.protobuf.StringValue operating_system_version_constant = 1; -} - -// An app payment model criterion. -message AppPaymentModelInfo { - // Type of the app payment model. - google.ads.googleads.v4.enums.AppPaymentModelTypeEnum.AppPaymentModelType type = 1; -} - -// A mobile device criterion. -message MobileDeviceInfo { - // The mobile device constant resource name. - google.protobuf.StringValue mobile_device_constant = 1; -} - -// A custom affinity criterion. -// A criterion of this type is only targetable. -message CustomAffinityInfo { - // The CustomInterest resource name. - google.protobuf.StringValue custom_affinity = 1; -} - -// A custom intent criterion. -// A criterion of this type is only targetable. -message CustomIntentInfo { - // The CustomInterest resource name. - google.protobuf.StringValue custom_intent = 1; -} - -// A radius around a list of locations specified via a feed. -message LocationGroupInfo { - // Feed specifying locations for targeting. - // This is required and must be set in CREATE operations. - google.protobuf.StringValue feed = 1; - - // Geo target constant(s) restricting the scope of the geographic area within - // the feed. Currently only one geo target constant is allowed. - repeated google.protobuf.StringValue geo_target_constants = 2; - - // Distance in units specifying the radius around targeted locations. - // This is required and must be set in CREATE operations. - google.protobuf.Int64Value radius = 3; - - // Unit of the radius. Miles and meters are supported for geo target - // constants. Milli miles and meters are supported for feed item sets. - // This is required and must be set in CREATE operations. - google.ads.googleads.v4.enums.LocationGroupRadiusUnitsEnum.LocationGroupRadiusUnits radius_units = 4; -} diff --git a/google/ads/googleads/v4/common/criterion_category_availability.proto b/google/ads/googleads/v4/common/criterion_category_availability.proto deleted file mode 100644 index c5bb0853f..000000000 --- a/google/ads/googleads/v4/common/criterion_category_availability.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/advertising_channel_sub_type.proto"; -import "google/ads/googleads/v4/enums/advertising_channel_type.proto"; -import "google/ads/googleads/v4/enums/criterion_category_channel_availability_mode.proto"; -import "google/ads/googleads/v4/enums/criterion_category_locale_availability_mode.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "CriterionCategoryAvailabilityProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing criterion category availability information. - -// Information of category availability, per advertising channel. -message CriterionCategoryAvailability { - // Channel types and subtypes that are available to the category. - CriterionCategoryChannelAvailability channel = 1; - - // Locales that are available to the category for the channel. - repeated CriterionCategoryLocaleAvailability locale = 2; -} - -// Information of advertising channel type and subtypes a category is available -// in. -message CriterionCategoryChannelAvailability { - // Format of the channel availability. Can be ALL_CHANNELS (the rest of the - // fields will not be set), CHANNEL_TYPE (only advertising_channel_type type - // will be set, the category is available to all sub types under it) or - // CHANNEL_TYPE_AND_SUBTYPES (advertising_channel_type, - // advertising_channel_sub_type, and include_default_channel_sub_type will all - // be set). - google.ads.googleads.v4.enums.CriterionCategoryChannelAvailabilityModeEnum.CriterionCategoryChannelAvailabilityMode availability_mode = 1; - - // Channel type the category is available to. - google.ads.googleads.v4.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_type = 2; - - // Channel subtypes under the channel type the category is available to. - repeated google.ads.googleads.v4.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType advertising_channel_sub_type = 3; - - // Whether default channel sub type is included. For example, - // advertising_channel_type being DISPLAY and include_default_channel_sub_type - // being false means that the default display campaign where channel sub type - // is not set is not included in this availability configuration. - google.protobuf.BoolValue include_default_channel_sub_type = 4; -} - -// Information about which locales a category is available in. -message CriterionCategoryLocaleAvailability { - // Format of the locale availability. Can be LAUNCHED_TO_ALL (both country and - // language will be empty), COUNTRY (only country will be set), LANGUAGE (only - // language wil be set), COUNTRY_AND_LANGUAGE (both country and language will - // be set). - google.ads.googleads.v4.enums.CriterionCategoryLocaleAvailabilityModeEnum.CriterionCategoryLocaleAvailabilityMode availability_mode = 1; - - // Code of the country. - google.protobuf.StringValue country_code = 2; - - // Code of the language. - google.protobuf.StringValue language_code = 3; -} diff --git a/google/ads/googleads/v4/common/custom_parameter.proto b/google/ads/googleads/v4/common/custom_parameter.proto deleted file mode 100644 index f1572904a..000000000 --- a/google/ads/googleads/v4/common/custom_parameter.proto +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "CustomParameterProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing CustomParameter and operation - -// A mapping that can be used by custom parameter tags in a -// `tracking_url_template`, `final_urls`, or `mobile_final_urls`. -message CustomParameter { - // The key matching the parameter tag name. - google.protobuf.StringValue key = 1; - - // The value to be substituted. - google.protobuf.StringValue value = 2; -} diff --git a/google/ads/googleads/v4/common/dates.proto b/google/ads/googleads/v4/common/dates.proto deleted file mode 100644 index 5ad0f695e..000000000 --- a/google/ads/googleads/v4/common/dates.proto +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "DatesProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing date range message. - -// A date range. -message DateRange { - // The start date, in yyyy-mm-dd format. This date is inclusive. - google.protobuf.StringValue start_date = 1; - - // The end date, in yyyy-mm-dd format. This date is inclusive. - google.protobuf.StringValue end_date = 2; -} diff --git a/google/ads/googleads/v4/common/explorer_auto_optimizer_setting.proto b/google/ads/googleads/v4/common/explorer_auto_optimizer_setting.proto deleted file mode 100644 index a74be7202..000000000 --- a/google/ads/googleads/v4/common/explorer_auto_optimizer_setting.proto +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ExplorerAutoOptimizerSettingProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing ExplorerAutoOptimizerSetting - -// Settings for the Display Campaign Optimizer, initially named "Explorer". -// Learn more about -// [automatic targeting](https://support.google.com/google-ads/answer/190596). -message ExplorerAutoOptimizerSetting { - // Indicates whether the optimizer is turned on. - google.protobuf.BoolValue opt_in = 1; -} diff --git a/google/ads/googleads/v4/common/extensions.proto b/google/ads/googleads/v4/common/extensions.proto deleted file mode 100644 index a583eae2e..000000000 --- a/google/ads/googleads/v4/common/extensions.proto +++ /dev/null @@ -1,357 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/common/custom_parameter.proto"; -import "google/ads/googleads/v4/common/feed_common.proto"; -import "google/ads/googleads/v4/enums/app_store.proto"; -import "google/ads/googleads/v4/enums/call_conversion_reporting_state.proto"; -import "google/ads/googleads/v4/enums/price_extension_price_qualifier.proto"; -import "google/ads/googleads/v4/enums/price_extension_price_unit.proto"; -import "google/ads/googleads/v4/enums/price_extension_type.proto"; -import "google/ads/googleads/v4/enums/promotion_extension_discount_modifier.proto"; -import "google/ads/googleads/v4/enums/promotion_extension_occasion.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionsProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing extension types. - -// Represents an App extension. -message AppFeedItem { - // The visible text displayed when the link is rendered in an ad. - // This string must not be empty, and the length of this string should - // be between 1 and 25, inclusive. - google.protobuf.StringValue link_text = 1; - - // The store-specific ID for the target application. - // This string must not be empty. - google.protobuf.StringValue app_id = 2; - - // The application store that the target application belongs to. - // This field is required. - google.ads.googleads.v4.enums.AppStoreEnum.AppStore app_store = 3; - - // A list of possible final URLs after all cross domain redirects. - // This list must not be empty. - repeated google.protobuf.StringValue final_urls = 4; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_mobile_urls = 5; - - // URL template for constructing a tracking URL. Default value is "{lpurl}". - google.protobuf.StringValue tracking_url_template = 6; - - // A list of mappings to be used for substituting URL custom parameter tags in - // the tracking_url_template, final_urls, and/or final_mobile_urls. - repeated CustomParameter url_custom_parameters = 7; - - // URL template for appending params to landing page URLs served with parallel - // tracking. - google.protobuf.StringValue final_url_suffix = 8; -} - -// Represents a Call extension. -message CallFeedItem { - // The advertiser's phone number to append to the ad. - // This string must not be empty. - google.protobuf.StringValue phone_number = 1; - - // Uppercase two-letter country code of the advertiser's phone number. - // This string must not be empty. - google.protobuf.StringValue country_code = 2; - - // Indicates whether call tracking is enabled. By default, call tracking is - // not enabled. - google.protobuf.BoolValue call_tracking_enabled = 3; - - // The conversion action to attribute a call conversion to. If not set a - // default conversion action is used. This field only has effect if - // call_tracking_enabled is set to true. Otherwise this field is ignored. - google.protobuf.StringValue call_conversion_action = 4; - - // If true, disable call conversion tracking. call_conversion_action should - // not be set if this is true. Optional. - google.protobuf.BoolValue call_conversion_tracking_disabled = 5; - - // Enum value that indicates whether this call extension uses its own call - // conversion setting (or just have call conversion disabled), or following - // the account level setting. - google.ads.googleads.v4.enums.CallConversionReportingStateEnum.CallConversionReportingState call_conversion_reporting_state = 6; -} - -// Represents a callout extension. -message CalloutFeedItem { - // The callout text. - // The length of this string should be between 1 and 25, inclusive. - google.protobuf.StringValue callout_text = 1; -} - -// Represents a location extension. -message LocationFeedItem { - // The name of the business. - google.protobuf.StringValue business_name = 1; - - // Line 1 of the business address. - google.protobuf.StringValue address_line_1 = 2; - - // Line 2 of the business address. - google.protobuf.StringValue address_line_2 = 3; - - // City of the business address. - google.protobuf.StringValue city = 4; - - // Province of the business address. - google.protobuf.StringValue province = 5; - - // Postal code of the business address. - google.protobuf.StringValue postal_code = 6; - - // Country code of the business address. - google.protobuf.StringValue country_code = 7; - - // Phone number of the business. - google.protobuf.StringValue phone_number = 8; -} - -// Represents an affiliate location extension. -message AffiliateLocationFeedItem { - // The name of the business. - google.protobuf.StringValue business_name = 1; - - // Line 1 of the business address. - google.protobuf.StringValue address_line_1 = 2; - - // Line 2 of the business address. - google.protobuf.StringValue address_line_2 = 3; - - // City of the business address. - google.protobuf.StringValue city = 4; - - // Province of the business address. - google.protobuf.StringValue province = 5; - - // Postal code of the business address. - google.protobuf.StringValue postal_code = 6; - - // Country code of the business address. - google.protobuf.StringValue country_code = 7; - - // Phone number of the business. - google.protobuf.StringValue phone_number = 8; - - // Id of the retail chain that is advertised as a seller of your product. - google.protobuf.Int64Value chain_id = 9; - - // Name of chain. - google.protobuf.StringValue chain_name = 10; -} - -// An extension that users can click on to send a text message to the -// advertiser. -message TextMessageFeedItem { - // The business name to prepend to the message text. - // This field is required. - google.protobuf.StringValue business_name = 1; - - // Uppercase two-letter country code of the advertiser's phone number. - // This field is required. - google.protobuf.StringValue country_code = 2; - - // The advertiser's phone number the message will be sent to. Required. - google.protobuf.StringValue phone_number = 3; - - // The text to show in the ad. - // This field is required. - google.protobuf.StringValue text = 4; - - // The message text populated in the messaging app. - google.protobuf.StringValue extension_text = 5; -} - -// Represents a Price extension. -message PriceFeedItem { - // Price extension type of this extension. - google.ads.googleads.v4.enums.PriceExtensionTypeEnum.PriceExtensionType type = 1; - - // Price qualifier for all offers of this price extension. - google.ads.googleads.v4.enums.PriceExtensionPriceQualifierEnum.PriceExtensionPriceQualifier price_qualifier = 2; - - // Tracking URL template for all offers of this price extension. - google.protobuf.StringValue tracking_url_template = 3; - - // The code of the language used for this price extension. - google.protobuf.StringValue language_code = 4; - - // The price offerings in this price extension. - repeated PriceOffer price_offerings = 5; - - // URL template for appending params to landing page URLs served with parallel - // tracking. - google.protobuf.StringValue final_url_suffix = 6; -} - -// Represents one price offer in a price extension. -message PriceOffer { - // Header text of this offer. - google.protobuf.StringValue header = 1; - - // Description text of this offer. - google.protobuf.StringValue description = 2; - - // Price value of this offer. - Money price = 3; - - // Price unit for this offer. - google.ads.googleads.v4.enums.PriceExtensionPriceUnitEnum.PriceExtensionPriceUnit unit = 4; - - // A list of possible final URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_urls = 5; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_mobile_urls = 6; -} - -// Represents a Promotion extension. -message PromotionFeedItem { - // A freeform description of what the promotion is targeting. - // This field is required. - google.protobuf.StringValue promotion_target = 1; - - // Enum that modifies the qualification of the discount. - google.ads.googleads.v4.enums.PromotionExtensionDiscountModifierEnum.PromotionExtensionDiscountModifier discount_modifier = 2; - - // Start date of when the promotion is eligible to be redeemed. - google.protobuf.StringValue promotion_start_date = 7; - - // End date of when the promotion is eligible to be redeemed. - google.protobuf.StringValue promotion_end_date = 8; - - // The occasion the promotion was intended for. - // If an occasion is set, the redemption window will need to fall within - // the date range associated with the occasion. - google.ads.googleads.v4.enums.PromotionExtensionOccasionEnum.PromotionExtensionOccasion occasion = 9; - - // A list of possible final URLs after all cross domain redirects. - // This field is required. - repeated google.protobuf.StringValue final_urls = 10; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_mobile_urls = 11; - - // URL template for constructing a tracking URL. - google.protobuf.StringValue tracking_url_template = 12; - - // A list of mappings to be used for substituting URL custom parameter tags in - // the tracking_url_template, final_urls, and/or final_mobile_urls. - repeated CustomParameter url_custom_parameters = 13; - - // URL template for appending params to landing page URLs served with parallel - // tracking. - google.protobuf.StringValue final_url_suffix = 14; - - // The language of the promotion. - // Represented as BCP 47 language tag. - google.protobuf.StringValue language_code = 15; - - // Discount type, can be percentage off or amount off. - oneof discount_type { - // Percentage off discount in the promotion in micros. - // One million is equivalent to one percent. - // Either this or money_off_amount is required. - google.protobuf.Int64Value percent_off = 3; - - // Money amount off for discount in the promotion. - // Either this or percent_off is required. - Money money_amount_off = 4; - } - - // Promotion trigger. Can be by promotion code or promo by eligible order - // amount. - oneof promotion_trigger { - // A code the user should use in order to be eligible for the promotion. - google.protobuf.StringValue promotion_code = 5; - - // The amount the total order needs to be for the user to be eligible for - // the promotion. - Money orders_over_amount = 6; - } -} - -// Represents a structured snippet extension. -message StructuredSnippetFeedItem { - // The header of the snippet. - // This string must not be empty. - google.protobuf.StringValue header = 1; - - // The values in the snippet. - // The maximum size of this collection is 10. - repeated google.protobuf.StringValue values = 2; -} - -// Represents a sitelink extension. -message SitelinkFeedItem { - // URL display text for the sitelink. - // The length of this string should be between 1 and 25, inclusive. - google.protobuf.StringValue link_text = 1; - - // First line of the description for the sitelink. - // If this value is set, line2 must also be set. - // The length of this string should be between 0 and 35, inclusive. - google.protobuf.StringValue line1 = 2; - - // Second line of the description for the sitelink. - // If this value is set, line1 must also be set. - // The length of this string should be between 0 and 35, inclusive. - google.protobuf.StringValue line2 = 3; - - // A list of possible final URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_urls = 4; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_mobile_urls = 5; - - // URL template for constructing a tracking URL. - google.protobuf.StringValue tracking_url_template = 6; - - // A list of mappings to be used for substituting URL custom parameter tags in - // the tracking_url_template, final_urls, and/or final_mobile_urls. - repeated CustomParameter url_custom_parameters = 7; - - // Final URL suffix to be appended to landing page URLs served with - // parallel tracking. - google.protobuf.StringValue final_url_suffix = 8; -} - -// Represents a hotel callout extension. -message HotelCalloutFeedItem { - // The callout text. - // The length of this string should be between 1 and 25, inclusive. - google.protobuf.StringValue text = 1; - - // The language of the hotel callout text. - // IETF BCP 47 compliant language code. - google.protobuf.StringValue language_code = 2; -} diff --git a/google/ads/googleads/v4/common/feed_common.proto b/google/ads/googleads/v4/common/feed_common.proto deleted file mode 100644 index 3da5fe8a5..000000000 --- a/google/ads/googleads/v4/common/feed_common.proto +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "FeedCommonProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing common feed proto messages. - -// Represents a price in a particular currency. -message Money { - // Three-character ISO 4217 currency code. - google.protobuf.StringValue currency_code = 1; - - // Amount in micros. One million is equivalent to one unit. - google.protobuf.Int64Value amount_micros = 2; -} diff --git a/google/ads/googleads/v4/common/final_app_url.proto b/google/ads/googleads/v4/common/final_app_url.proto deleted file mode 100644 index 4cc7d7c71..000000000 --- a/google/ads/googleads/v4/common/final_app_url.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/app_url_operating_system_type.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "FinalAppUrlProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file FinalAppUrl type. - -// A URL for deep linking into an app for the given operating system. -message FinalAppUrl { - // The operating system targeted by this URL. Required. - google.ads.googleads.v4.enums.AppUrlOperatingSystemTypeEnum.AppUrlOperatingSystemType os_type = 1; - - // The app deep link URL. Deep links specify a location in an app that - // corresponds to the content you'd like to show, and should be of the form - // {scheme}://{host_path} - // The scheme identifies which app to open. For your app, you can use a custom - // scheme that starts with the app's name. The host and path specify the - // unique location in the app where your content exists. - // Example: "exampleapp://productid_1234". Required. - google.protobuf.StringValue url = 2; -} diff --git a/google/ads/googleads/v4/common/frequency_cap.proto b/google/ads/googleads/v4/common/frequency_cap.proto deleted file mode 100644 index a57787661..000000000 --- a/google/ads/googleads/v4/common/frequency_cap.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/frequency_cap_event_type.proto"; -import "google/ads/googleads/v4/enums/frequency_cap_level.proto"; -import "google/ads/googleads/v4/enums/frequency_cap_time_unit.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing frequency caps. - -// A rule specifying the maximum number of times an ad (or some set of ads) can -// be shown to a user over a particular time period. -message FrequencyCapEntry { - // The key of a particular frequency cap. There can be no more - // than one frequency cap with the same key. - FrequencyCapKey key = 1; - - // Maximum number of events allowed during the time range by this cap. - google.protobuf.Int32Value cap = 2; -} - -// A group of fields used as keys for a frequency cap. -// There can be no more than one frequency cap with the same key. -message FrequencyCapKey { - // The level on which the cap is to be applied (e.g. ad group ad, ad group). - // The cap is applied to all the entities of this level. - google.ads.googleads.v4.enums.FrequencyCapLevelEnum.FrequencyCapLevel level = 1; - - // The type of event that the cap applies to (e.g. impression). - google.ads.googleads.v4.enums.FrequencyCapEventTypeEnum.FrequencyCapEventType event_type = 3; - - // Unit of time the cap is defined at (e.g. day, week). - google.ads.googleads.v4.enums.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit time_unit = 2; - - // Number of time units the cap lasts. - google.protobuf.Int32Value time_length = 4; -} diff --git a/google/ads/googleads/v4/common/keyword_plan_common.proto b/google/ads/googleads/v4/common/keyword_plan_common.proto deleted file mode 100644 index 4b3533ab8..000000000 --- a/google/ads/googleads/v4/common/keyword_plan_common.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/keyword_plan_competition_level.proto"; -import "google/ads/googleads/v4/enums/month_of_year.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCommonProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing Keyword Planner messages. - -// Historical metrics specific to the targeting options selected. -// Targeting options include geographies, network, etc. -// Refer to https://support.google.com/google-ads/answer/3022575 for more -// details. -message KeywordPlanHistoricalMetrics { - // Approximate number of monthly searches on this query averaged - // for the past 12 months. - google.protobuf.Int64Value avg_monthly_searches = 1; - - // Approximate number of searches on this query for the past twelve months. - repeated MonthlySearchVolume monthly_search_volumes = 6; - - // The competition level for the query. - google.ads.googleads.v4.enums.KeywordPlanCompetitionLevelEnum.KeywordPlanCompetitionLevel competition = 2; - - // The competition index for the query in the range [0, 100]. - // Shows how competitive ad placement is for a keyword. - // The level of competition from 0-100 is determined by the number of ad slots - // filled divided by the total number of ad slots available. If not enough - // data is available, null is returned. - google.protobuf.Int64Value competition_index = 3; - - // Top of page bid low range (20th percentile) in micros for the keyword. - google.protobuf.Int64Value low_top_of_page_bid_micros = 4; - - // Top of page bid high range (80th percentile) in micros for the keyword. - google.protobuf.Int64Value high_top_of_page_bid_micros = 5; -} - -// Monthly search volume. -message MonthlySearchVolume { - // The year of the search volume (e.g. 2020). - google.protobuf.Int64Value year = 1; - - // The month of the search volume. - google.ads.googleads.v4.enums.MonthOfYearEnum.MonthOfYear month = 2; - - // Approximate number of searches for the month. - // A null value indicates the search volume is unavailable for - // that month. - google.protobuf.Int64Value monthly_searches = 3; -} diff --git a/google/ads/googleads/v4/common/matching_function.proto b/google/ads/googleads/v4/common/matching_function.proto deleted file mode 100644 index c81f5ab89..000000000 --- a/google/ads/googleads/v4/common/matching_function.proto +++ /dev/null @@ -1,127 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/matching_function_context_type.proto"; -import "google/ads/googleads/v4/enums/matching_function_operator.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "MatchingFunctionProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing a matching function. - -// Matching function associated with a -// CustomerFeed, CampaignFeed, or AdGroupFeed. The matching function is used -// to filter the set of feed items selected. -message MatchingFunction { - // String representation of the Function. - // - // Examples: - // - // 1. IDENTITY(true) or IDENTITY(false). All or no feed items served. - // 2. EQUALS(CONTEXT.DEVICE,"Mobile") - // 3. IN(FEED_ITEM_ID,{1000001,1000002,1000003}) - // 4. CONTAINS_ANY(FeedAttribute[12345678,0],{"Mars cruise","Venus cruise"}) - // 5. AND(IN(FEED_ITEM_ID,{10001,10002}),EQUALS(CONTEXT.DEVICE,"Mobile")) - // - // For more details, visit - // https://developers.google.com/adwords/api/docs/guides/feed-matching-functions - // - // Note that because multiple strings may represent the same underlying - // function (whitespace and single versus double quotation marks, for - // example), the value returned may not be identical to the string sent in a - // mutate request. - google.protobuf.StringValue function_string = 1; - - // Operator for a function. - google.ads.googleads.v4.enums.MatchingFunctionOperatorEnum.MatchingFunctionOperator operator = 4; - - // The operands on the left hand side of the equation. This is also the - // operand to be used for single operand expressions such as NOT. - repeated Operand left_operands = 2; - - // The operands on the right hand side of the equation. - repeated Operand right_operands = 3; -} - -// An operand in a matching function. -message Operand { - // A constant operand in a matching function. - message ConstantOperand { - // Constant operand values. Required. - oneof constant_operand_value { - // String value of the operand if it is a string type. - google.protobuf.StringValue string_value = 1; - - // Int64 value of the operand if it is a int64 type. - google.protobuf.Int64Value long_value = 2; - - // Boolean value of the operand if it is a boolean type. - google.protobuf.BoolValue boolean_value = 3; - - // Double value of the operand if it is a double type. - google.protobuf.DoubleValue double_value = 4; - } - } - - // A feed attribute operand in a matching function. - // Used to represent a feed attribute in feed. - message FeedAttributeOperand { - // The associated feed. Required. - google.protobuf.Int64Value feed_id = 1; - - // Id of the referenced feed attribute. Required. - google.protobuf.Int64Value feed_attribute_id = 2; - } - - // A function operand in a matching function. - // Used to represent nested functions. - message FunctionOperand { - // The matching function held in this operand. - MatchingFunction matching_function = 1; - } - - // An operand in a function referring to a value in the request context. - message RequestContextOperand { - // Type of value to be referred in the request context. - google.ads.googleads.v4.enums.MatchingFunctionContextTypeEnum.MatchingFunctionContextType context_type = 1; - } - - // Different operands that can be used in a matching function. Required. - oneof function_argument_operand { - // A constant operand in a matching function. - ConstantOperand constant_operand = 1; - - // This operand specifies a feed attribute in feed. - FeedAttributeOperand feed_attribute_operand = 2; - - // A function operand in a matching function. - // Used to represent nested functions. - FunctionOperand function_operand = 3; - - // An operand in a function referring to a value in the request context. - RequestContextOperand request_context_operand = 4; - } -} diff --git a/google/ads/googleads/v4/common/metrics.proto b/google/ads/googleads/v4/common/metrics.proto deleted file mode 100644 index df767523e..000000000 --- a/google/ads/googleads/v4/common/metrics.proto +++ /dev/null @@ -1,560 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/interaction_event_type.proto"; -import "google/ads/googleads/v4/enums/quality_score_bucket.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "MetricsProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing metrics. - -// Metrics data. -message Metrics { - // The percent of your ad impressions that are shown as the very first ad - // above the organic search results. - google.protobuf.DoubleValue absolute_top_impression_percentage = 95; - - // Average cost of viewable impressions (`active_view_impressions`). - google.protobuf.DoubleValue active_view_cpm = 1; - - // Active view measurable clicks divided by active view viewable impressions. - // This metric is reported only for display network. - google.protobuf.DoubleValue active_view_ctr = 79; - - // A measurement of how often your ad has become viewable on a Display - // Network site. - google.protobuf.Int64Value active_view_impressions = 2; - - // The ratio of impressions that could be measured by Active View over the - // number of served impressions. - google.protobuf.DoubleValue active_view_measurability = 96; - - // The cost of the impressions you received that were measurable by Active - // View. - google.protobuf.Int64Value active_view_measurable_cost_micros = 3; - - // The number of times your ads are appearing on placements in positions - // where they can be seen. - google.protobuf.Int64Value active_view_measurable_impressions = 4; - - // The percentage of time when your ad appeared on an Active View enabled site - // (measurable impressions) and was viewable (viewable impressions). - google.protobuf.DoubleValue active_view_viewability = 97; - - // All conversions from interactions (as oppose to view through conversions) - // divided by the number of ad interactions. - google.protobuf.DoubleValue all_conversions_from_interactions_rate = 65; - - // The value of all conversions. - google.protobuf.DoubleValue all_conversions_value = 66; - - // The total number of conversions. This includes all conversions regardless - // of the value of include_in_conversions_metric. - google.protobuf.DoubleValue all_conversions = 7; - - // The value of all conversions divided by the total cost of ad interactions - // (such as clicks for text ads or views for video ads). - google.protobuf.DoubleValue all_conversions_value_per_cost = 62; - - // The number of times people clicked the "Call" button to call a store during - // or after clicking an ad. This number doesn't include whether or not calls - // were connected, or the duration of any calls. - // This metric applies to feed items only. - google.protobuf.DoubleValue all_conversions_from_click_to_call = 118; - - // The number of times people clicked a "Get directions" button to navigate to - // a store after clicking an ad. - // This metric applies to feed items only. - google.protobuf.DoubleValue all_conversions_from_directions = 119; - - // The value of all conversions from interactions divided by the total number - // of interactions. - google.protobuf.DoubleValue all_conversions_from_interactions_value_per_interaction = 67; - - // The number of times people clicked a link to view a store's menu after - // clicking an ad. - // This metric applies to feed items only. - google.protobuf.DoubleValue all_conversions_from_menu = 120; - - // The number of times people placed an order at a store after clicking an ad. - // This metric applies to feed items only. - google.protobuf.DoubleValue all_conversions_from_order = 121; - - // The number of other conversions (for example, posting a review or saving a - // location for a store) that occurred after people clicked an ad. - // This metric applies to feed items only. - google.protobuf.DoubleValue all_conversions_from_other_engagement = 122; - - // Estimated number of times people visited a store after clicking an ad. - // This metric applies to feed items only. - google.protobuf.DoubleValue all_conversions_from_store_visit = 123; - - // The number of times that people were taken to a store's URL after clicking - // an ad. - // This metric applies to feed items only. - google.protobuf.DoubleValue all_conversions_from_store_website = 124; - - // The average amount you pay per interaction. This amount is the total cost - // of your ads divided by the total number of interactions. - google.protobuf.DoubleValue average_cost = 8; - - // The total cost of all clicks divided by the total number of clicks - // received. - google.protobuf.DoubleValue average_cpc = 9; - - // The average amount that you've been charged for an ad engagement. This - // amount is the total cost of all ad engagements divided by the total number - // of ad engagements. - google.protobuf.DoubleValue average_cpe = 98; - - // Average cost-per-thousand impressions (CPM). - google.protobuf.DoubleValue average_cpm = 10; - - // The average amount you pay each time someone views your ad. - // The average CPV is defined by the total cost of all ad views divided by - // the number of views. - google.protobuf.DoubleValue average_cpv = 11; - - // Average number of pages viewed per session. - google.protobuf.DoubleValue average_page_views = 99; - - // Total duration of all sessions (in seconds) / number of sessions. Imported - // from Google Analytics. - google.protobuf.DoubleValue average_time_on_site = 84; - - // An indication of how other advertisers are bidding on similar products. - google.protobuf.DoubleValue benchmark_average_max_cpc = 14; - - // An indication on how other advertisers' Shopping ads for similar products - // are performing based on how often people who see their ad click on it. - google.protobuf.DoubleValue benchmark_ctr = 77; - - // Percentage of clicks where the user only visited a single page on your - // site. Imported from Google Analytics. - google.protobuf.DoubleValue bounce_rate = 15; - - // The number of clicks. - google.protobuf.Int64Value clicks = 19; - - // The number of times your ad or your site's listing in the unpaid - // results was clicked. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - google.protobuf.Int64Value combined_clicks = 115; - - // The number of times your ad or your site's listing in the unpaid - // results was clicked (combined_clicks) divided by combined_queries. See the - // help page at https://support.google.com/google-ads/answer/3097241 for - // details. - google.protobuf.DoubleValue combined_clicks_per_query = 116; - - // The number of searches that returned pages from your site in the unpaid - // results or showed one of your text ads. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - google.protobuf.Int64Value combined_queries = 117; - - // The estimated percent of times that your ad was eligible to show - // on the Display Network but didn't because your budget was too low. - // Note: Content budget lost impression share is reported in the range of 0 - // to 0.9. Any value above 0.9 is reported as 0.9001. - google.protobuf.DoubleValue content_budget_lost_impression_share = 20; - - // The impressions you've received on the Display Network divided - // by the estimated number of impressions you were eligible to receive. - // Note: Content impression share is reported in the range of 0.1 to 1. Any - // value below 0.1 is reported as 0.0999. - google.protobuf.DoubleValue content_impression_share = 21; - - // The last date/time a conversion tag for this conversion action successfully - // fired and was seen by Google Ads. This firing event may not have been the - // result of an attributable conversion (e.g. because the tag was fired from a - // browser that did not previously click an ad from an appropriate - // advertiser). The date/time is in the customer's time zone. - google.protobuf.StringValue conversion_last_received_request_date_time = 73; - - // The date of the most recent conversion for this conversion action. The date - // is in the customer's time zone. - google.protobuf.StringValue conversion_last_conversion_date = 74; - - // The estimated percentage of impressions on the Display Network - // that your ads didn't receive due to poor Ad Rank. - // Note: Content rank lost impression share is reported in the range of 0 - // to 0.9. Any value above 0.9 is reported as 0.9001. - google.protobuf.DoubleValue content_rank_lost_impression_share = 22; - - // Conversions from interactions divided by the number of ad interactions - // (such as clicks for text ads or views for video ads). This only includes - // conversion actions which include_in_conversions_metric attribute is set to - // true. If you use conversion-based bidding, your bid strategies will - // optimize for these conversions. - google.protobuf.DoubleValue conversions_from_interactions_rate = 69; - - // The value of conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - google.protobuf.DoubleValue conversions_value = 70; - - // The value of conversions divided by the cost of ad interactions. This only - // includes conversion actions which include_in_conversions_metric attribute - // is set to true. If you use conversion-based bidding, your bid strategies - // will optimize for these conversions. - google.protobuf.DoubleValue conversions_value_per_cost = 71; - - // The value of conversions from interactions divided by the number of ad - // interactions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - google.protobuf.DoubleValue conversions_from_interactions_value_per_interaction = 72; - - // The number of conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - google.protobuf.DoubleValue conversions = 25; - - // The sum of your cost-per-click (CPC) and cost-per-thousand impressions - // (CPM) costs during this period. - google.protobuf.Int64Value cost_micros = 26; - - // The cost of ad interactions divided by all conversions. - google.protobuf.DoubleValue cost_per_all_conversions = 68; - - // The cost of ad interactions divided by conversions. This only includes - // conversion actions which include_in_conversions_metric attribute is set to - // true. If you use conversion-based bidding, your bid strategies will - // optimize for these conversions. - google.protobuf.DoubleValue cost_per_conversion = 28; - - // The cost of ad interactions divided by current model attributed - // conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - google.protobuf.DoubleValue cost_per_current_model_attributed_conversion = 106; - - // Conversions from when a customer clicks on a Google Ads ad on one device, - // then converts on a different device or browser. - // Cross-device conversions are already included in all_conversions. - google.protobuf.DoubleValue cross_device_conversions = 29; - - // The number of clicks your ad receives (Clicks) divided by the number - // of times your ad is shown (Impressions). - google.protobuf.DoubleValue ctr = 30; - - // Shows how your historic conversions data would look under the attribution - // model you've currently selected. This only includes conversion actions - // which include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - google.protobuf.DoubleValue current_model_attributed_conversions = 101; - - // Current model attributed conversions from interactions divided by the - // number of ad interactions (such as clicks for text ads or views for video - // ads). This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - google.protobuf.DoubleValue current_model_attributed_conversions_from_interactions_rate = 102; - - // The value of current model attributed conversions from interactions divided - // by the number of ad interactions. This only includes conversion actions - // which include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - google.protobuf.DoubleValue current_model_attributed_conversions_from_interactions_value_per_interaction = 103; - - // The value of current model attributed conversions. This only includes - // conversion actions which include_in_conversions_metric attribute is set to - // true. If you use conversion-based bidding, your bid strategies will - // optimize for these conversions. - google.protobuf.DoubleValue current_model_attributed_conversions_value = 104; - - // The value of current model attributed conversions divided by the cost of ad - // interactions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - google.protobuf.DoubleValue current_model_attributed_conversions_value_per_cost = 105; - - // How often people engage with your ad after it's shown to them. This is the - // number of ad expansions divided by the number of times your ad is shown. - google.protobuf.DoubleValue engagement_rate = 31; - - // The number of engagements. - // An engagement occurs when a viewer expands your Lightbox ad. Also, in the - // future, other ad types may support engagement metrics. - google.protobuf.Int64Value engagements = 32; - - // Average lead value based on clicks. - google.protobuf.DoubleValue hotel_average_lead_value_micros = 75; - - // The average price difference between the price offered by reporting hotel - // advertiser and the cheapest price offered by the competing advertiser. - google.protobuf.DoubleValue hotel_price_difference_percentage = 129; - - // The number of impressions that hotel partners could have had given their - // feed performance. - google.protobuf.Int64Value hotel_eligible_impressions = 130; - - // The creative historical quality score. - google.ads.googleads.v4.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80; - - // The quality of historical landing page experience. - google.ads.googleads.v4.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81; - - // The historical quality score. - google.protobuf.Int64Value historical_quality_score = 82; - - // The historical search predicted click through rate (CTR). - google.ads.googleads.v4.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83; - - // The number of times the ad was forwarded to someone else as a message. - google.protobuf.Int64Value gmail_forwards = 85; - - // The number of times someone has saved your Gmail ad to their inbox as a - // message. - google.protobuf.Int64Value gmail_saves = 86; - - // The number of clicks to the landing page on the expanded state of Gmail - // ads. - google.protobuf.Int64Value gmail_secondary_clicks = 87; - - // The number of times a store's location-based ad was shown. - // This metric applies to feed items only. - google.protobuf.Int64Value impressions_from_store_reach = 125; - - // Count of how often your ad has appeared on a search results page or - // website on the Google Network. - google.protobuf.Int64Value impressions = 37; - - // How often people interact with your ad after it is shown to them. - // This is the number of interactions divided by the number of times your ad - // is shown. - google.protobuf.DoubleValue interaction_rate = 38; - - // The number of interactions. - // An interaction is the main user action associated with an ad format-clicks - // for text and shopping ads, views for video ads, and so on. - google.protobuf.Int64Value interactions = 39; - - // The types of payable and free interactions. - repeated google.ads.googleads.v4.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100; - - // The percentage of clicks filtered out of your total number of clicks - // (filtered + non-filtered clicks) during the reporting period. - google.protobuf.DoubleValue invalid_click_rate = 40; - - // Number of clicks Google considers illegitimate and doesn't charge you for. - google.protobuf.Int64Value invalid_clicks = 41; - - // Number of message chats initiated for Click To Message impressions that - // were message tracking eligible. - google.protobuf.Int64Value message_chats = 126; - - // Number of Click To Message impressions that were message tracking eligible. - google.protobuf.Int64Value message_impressions = 127; - - // Number of message chats initiated (message_chats) divided by the number - // of message impressions (message_impressions). - // Rate at which a user initiates a message chat from an ad impression with - // a messaging option and message tracking enabled. - // Note that this rate can be more than 1.0 for a given message impression. - google.protobuf.DoubleValue message_chat_rate = 128; - - // The percentage of mobile clicks that go to a mobile-friendly page. - google.protobuf.DoubleValue mobile_friendly_clicks_percentage = 109; - - // The number of times someone clicked your site's listing in the unpaid - // results for a particular query. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - google.protobuf.Int64Value organic_clicks = 110; - - // The number of times someone clicked your site's listing in the unpaid - // results (organic_clicks) divided by the total number of searches that - // returned pages from your site (organic_queries). See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - google.protobuf.DoubleValue organic_clicks_per_query = 111; - - // The number of listings for your site in the unpaid search results. See the - // help page at https://support.google.com/google-ads/answer/3097241 for - // details. - google.protobuf.Int64Value organic_impressions = 112; - - // The number of times a page from your site was listed in the unpaid search - // results (organic_impressions) divided by the number of searches returning - // your site's listing in the unpaid results (organic_queries). See the help - // page at https://support.google.com/google-ads/answer/3097241 for details. - google.protobuf.DoubleValue organic_impressions_per_query = 113; - - // The total number of searches that returned your site's listing in the - // unpaid results. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - google.protobuf.Int64Value organic_queries = 114; - - // Percentage of first-time sessions (from people who had never visited your - // site before). Imported from Google Analytics. - google.protobuf.DoubleValue percent_new_visitors = 42; - - // Number of offline phone calls. - google.protobuf.Int64Value phone_calls = 43; - - // Number of offline phone impressions. - google.protobuf.Int64Value phone_impressions = 44; - - // Number of phone calls received (phone_calls) divided by the number of - // times your phone number is shown (phone_impressions). - google.protobuf.DoubleValue phone_through_rate = 45; - - // Your clickthrough rate (Ctr) divided by the average clickthrough rate of - // all advertisers on the websites that show your ads. Measures how your ads - // perform on Display Network sites compared to other ads on the same sites. - google.protobuf.DoubleValue relative_ctr = 46; - - // The percentage of the customer's Shopping or Search ad impressions that are - // shown in the most prominent Shopping position. See - // https://support.google.com/google-ads/answer/7501826 - // for details. Any value below 0.1 is reported as 0.0999. - google.protobuf.DoubleValue search_absolute_top_impression_share = 78; - - // The number estimating how often your ad wasn't the very first ad above the - // organic search results due to a low budget. Note: Search - // budget lost absolute top impression share is reported in the range of 0 to - // 0.9. Any value above 0.9 is reported as 0.9001. - google.protobuf.DoubleValue search_budget_lost_absolute_top_impression_share = 88; - - // The estimated percent of times that your ad was eligible to show on the - // Search Network but didn't because your budget was too low. Note: Search - // budget lost impression share is reported in the range of 0 to 0.9. Any - // value above 0.9 is reported as 0.9001. - google.protobuf.DoubleValue search_budget_lost_impression_share = 47; - - // The number estimating how often your ad didn't show anywhere above the - // organic search results due to a low budget. Note: Search - // budget lost top impression share is reported in the range of 0 to 0.9. Any - // value above 0.9 is reported as 0.9001. - google.protobuf.DoubleValue search_budget_lost_top_impression_share = 89; - - // The number of clicks you've received on the Search Network - // divided by the estimated number of clicks you were eligible to receive. - // Note: Search click share is reported in the range of 0.1 to 1. Any value - // below 0.1 is reported as 0.0999. - google.protobuf.DoubleValue search_click_share = 48; - - // The impressions you've received divided by the estimated number of - // impressions you were eligible to receive on the Search Network for search - // terms that matched your keywords exactly (or were close variants of your - // keyword), regardless of your keyword match types. Note: Search exact match - // impression share is reported in the range of 0.1 to 1. Any value below 0.1 - // is reported as 0.0999. - google.protobuf.DoubleValue search_exact_match_impression_share = 49; - - // The impressions you've received on the Search Network divided - // by the estimated number of impressions you were eligible to receive. - // Note: Search impression share is reported in the range of 0.1 to 1. Any - // value below 0.1 is reported as 0.0999. - google.protobuf.DoubleValue search_impression_share = 50; - - // The number estimating how often your ad wasn't the very first ad above the - // organic search results due to poor Ad Rank. - // Note: Search rank lost absolute top impression share is reported in the - // range of 0 to 0.9. Any value above 0.9 is reported as 0.9001. - google.protobuf.DoubleValue search_rank_lost_absolute_top_impression_share = 90; - - // The estimated percentage of impressions on the Search Network - // that your ads didn't receive due to poor Ad Rank. - // Note: Search rank lost impression share is reported in the range of 0 to - // 0.9. Any value above 0.9 is reported as 0.9001. - google.protobuf.DoubleValue search_rank_lost_impression_share = 51; - - // The number estimating how often your ad didn't show anywhere above the - // organic search results due to poor Ad Rank. - // Note: Search rank lost top impression share is reported in the range of 0 - // to 0.9. Any value above 0.9 is reported as 0.9001. - google.protobuf.DoubleValue search_rank_lost_top_impression_share = 91; - - // The impressions you've received in the top location (anywhere above the - // organic search results) compared to the estimated number of impressions you - // were eligible to receive in the top location. - // Note: Search top impression share is reported in the range of 0.1 to 1. Any - // value below 0.1 is reported as 0.0999. - google.protobuf.DoubleValue search_top_impression_share = 92; - - // A measure of how quickly your page loads after clicks on your mobile ads. - // The score is a range from 1 to 10, 10 being the fastest. - google.protobuf.Int64Value speed_score = 107; - - // The percent of your ad impressions that are shown anywhere above the - // organic search results. - google.protobuf.DoubleValue top_impression_percentage = 93; - - // The percentage of ad clicks to Accelerated Mobile Pages (AMP) landing pages - // that reach a valid AMP page. - google.protobuf.DoubleValue valid_accelerated_mobile_pages_clicks_percentage = 108; - - // The value of all conversions divided by the number of all conversions. - google.protobuf.DoubleValue value_per_all_conversions = 52; - - // The value of conversions divided by the number of conversions. This only - // includes conversion actions which include_in_conversions_metric attribute - // is set to true. If you use conversion-based bidding, your bid strategies - // will optimize for these conversions. - google.protobuf.DoubleValue value_per_conversion = 53; - - // The value of current model attributed conversions divided by the number of - // the conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - google.protobuf.DoubleValue value_per_current_model_attributed_conversion = 94; - - // Percentage of impressions where the viewer watched all of your video. - google.protobuf.DoubleValue video_quartile_100_rate = 54; - - // Percentage of impressions where the viewer watched 25% of your video. - google.protobuf.DoubleValue video_quartile_25_rate = 55; - - // Percentage of impressions where the viewer watched 50% of your video. - google.protobuf.DoubleValue video_quartile_50_rate = 56; - - // Percentage of impressions where the viewer watched 75% of your video. - google.protobuf.DoubleValue video_quartile_75_rate = 57; - - // The number of views your TrueView video ad receives divided by its number - // of impressions, including thumbnail impressions for TrueView in-display - // ads. - google.protobuf.DoubleValue video_view_rate = 58; - - // The number of times your video ads were viewed. - google.protobuf.Int64Value video_views = 59; - - // The total number of view-through conversions. - // These happen when a customer sees an image or rich media ad, then later - // completes a conversion on your site without interacting with (e.g., - // clicking on) another ad. - google.protobuf.Int64Value view_through_conversions = 60; -} diff --git a/google/ads/googleads/v4/common/offline_user_data.proto b/google/ads/googleads/v4/common/offline_user_data.proto deleted file mode 100644 index 234ee70ad..000000000 --- a/google/ads/googleads/v4/common/offline_user_data.proto +++ /dev/null @@ -1,192 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing offline user data. - -// Address identifier of offline data. -message OfflineUserAddressInfo { - // First name of the user, which is hashed as SHA-256 after normalized - // (Lowercase all characters; Remove any extra spaces before, after, and in - // between). - google.protobuf.StringValue hashed_first_name = 1; - - // Last name of the user, which is hashed as SHA-256 after normalized (lower - // case only and no punctuation). - google.protobuf.StringValue hashed_last_name = 2; - - // City of the address. Only accepted for Store Sales Direct data. - google.protobuf.StringValue city = 3; - - // State code of the address. Only accepted for Store Sales Direct data. - google.protobuf.StringValue state = 4; - - // 2-letter country code in ISO-3166-1 alpha-2 of the user's address. - google.protobuf.StringValue country_code = 5; - - // Postal code of the user's address. - google.protobuf.StringValue postal_code = 6; -} - -// Hashed user identifying information. -message UserIdentifier { - // Exactly one must be specified. - oneof identifier { - // Hashed email address using SHA-256 hash function after normalization. - google.protobuf.StringValue hashed_email = 1; - - // Hashed phone number using SHA-256 hash function after normalization - // (E164 standard). - google.protobuf.StringValue hashed_phone_number = 2; - - // Mobile device ID (advertising ID/IDFA). - google.protobuf.StringValue mobile_id = 3; - - // Advertiser-assigned user ID for Customer Match upload, or - // third-party-assigned user ID for SSD. - google.protobuf.StringValue third_party_user_id = 4; - - // Address information. - OfflineUserAddressInfo address_info = 5; - } -} - -// Attribute of the store sales transaction. -message TransactionAttribute { - // Timestamp when transaction occurred. Required. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue transaction_date_time = 1; - - // Transaction amount in micros. Required. - google.protobuf.DoubleValue transaction_amount_micros = 2; - - // Transaction currency code. ISO 4217 three-letter code is used. Required. - google.protobuf.StringValue currency_code = 3; - - // The resource name of conversion action to report conversions to. - // Required. - google.protobuf.StringValue conversion_action = 4; - - // Transaction order id. - // Accessible only to customers on the allow-list. - google.protobuf.StringValue order_id = 5; - - // Store attributes of the transaction. - // Accessible only to customers on the allow-list. - StoreAttribute store_attribute = 6; - - // Value of the custom variable for each transaction. - // Accessible only to customers on the allow-list. - google.protobuf.StringValue custom_value = 7; -} - -// Store attributes of the transaction. -message StoreAttribute { - // Store code from - // https://support.google.com/business/answer/3370250#storecode - google.protobuf.StringValue store_code = 1; -} - -// User data holding user identifiers and attributes. -message UserData { - // User identification info. Required. - repeated UserIdentifier user_identifiers = 1; - - // Additional transactions/attributes associated with the user. - // Required when updating store sales data. - TransactionAttribute transaction_attribute = 2; -} - -// Metadata for customer match user list. -message CustomerMatchUserListMetadata { - // The resource name of remarketing list to update data. - // Required for job of CUSTOMER_MATCH_USER_LIST type. - google.protobuf.StringValue user_list = 1; -} - -// Metadata for Store Sales Direct. -message StoreSalesMetadata { - // This is the fraction of all transactions that are identifiable (i.e., - // associated with any form of customer information). - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - google.protobuf.DoubleValue loyalty_fraction = 1; - - // This is the ratio of sales being uploaded compared to the overall sales - // that can be associated with a customer. Required. - // The fraction needs to be between 0 and 1 (excluding 0). For example, if you - // upload half the sales that you are able to associate with a customer, this - // would be 0.5. - google.protobuf.DoubleValue transaction_upload_fraction = 2; - - // Name of the store sales custom variable key. A predefined key that - // can be applied to the transaction and then later used for custom - // segmentation in reporting. - // Accessible only to customers on the allow-list. - google.protobuf.StringValue custom_key = 4; - - // Metadata for a third party Store Sales upload. - StoreSalesThirdPartyMetadata third_party_metadata = 3; -} - -// Metadata for a third party Store Sales. -// This product is only for customers on the allow-list. Please contact your -// Google business development representative for details on the upload -// configuration. -message StoreSalesThirdPartyMetadata { - // Time the advertiser uploaded the data to the partner. Required. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue advertiser_upload_date_time = 1; - - // The fraction of transactions that are valid. Invalid transactions may - // include invalid formats or values. - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - google.protobuf.DoubleValue valid_transaction_fraction = 2; - - // The fraction of valid transactions that are matched to a third party - // assigned user ID on the partner side. - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - google.protobuf.DoubleValue partner_match_fraction = 3; - - // The fraction of valid transactions that are uploaded by the partner to - // Google. - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - google.protobuf.DoubleValue partner_upload_fraction = 4; - - // Version of partner IDs to be used for uploads. Required. - google.protobuf.StringValue bridge_map_version_id = 5; - - // ID of the third party partner updating the transaction feed. - google.protobuf.Int64Value partner_id = 6; -} diff --git a/google/ads/googleads/v4/common/policy.proto b/google/ads/googleads/v4/common/policy.proto deleted file mode 100644 index d7f50852e..000000000 --- a/google/ads/googleads/v4/common/policy.proto +++ /dev/null @@ -1,223 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/policy_topic_entry_type.proto"; -import "google/ads/googleads/v4/enums/policy_topic_evidence_destination_mismatch_url_type.proto"; -import "google/ads/googleads/v4/enums/policy_topic_evidence_destination_not_working_device.proto"; -import "google/ads/googleads/v4/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "PolicyProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing policy information. - -// Key of the violation. The key is used for referring to a violation -// when filing an exemption request. -message PolicyViolationKey { - // Unique ID of the violated policy. - google.protobuf.StringValue policy_name = 1; - - // The text that violates the policy if specified. - // Otherwise, refers to the policy in general - // (e.g., when requesting to be exempt from the whole policy). - // If not specified for criterion exemptions, the whole policy is implied. - // Must be specified for ad exemptions. - google.protobuf.StringValue violating_text = 2; -} - -// Parameter for controlling how policy exemption is done. Ignorable policy -// topics are only usable with expanded text ads and responsive search ads. All -// other ad types must use policy violation keys. -message PolicyValidationParameter { - // The list of policy topics that should not cause a PolicyFindingError to - // be reported. This field is currently only compatible with Enhanced Text Ad. - // It corresponds to the PolicyTopicEntry.topic field. - // - // Resources violating these policies will be saved, but will not be eligible - // to serve. They may begin serving at a later time due to a change in - // policies, re-review of the resource, or a change in advertiser - // certificates. - repeated google.protobuf.StringValue ignorable_policy_topics = 1; - - // The list of policy violation keys that should not cause a - // PolicyViolationError to be reported. Not all policy violations are - // exemptable, please refer to the is_exemptible field in the returned - // PolicyViolationError. - // - // Resources violating these polices will be saved, but will not be eligible - // to serve. They may begin serving at a later time due to a change in - // policies, re-review of the resource, or a change in advertiser - // certificates. - repeated PolicyViolationKey exempt_policy_violation_keys = 2; -} - -// Policy finding attached to a resource (e.g. alcohol policy associated with -// a site that sells alcohol). -// -// Each PolicyTopicEntry has a topic that indicates the specific ads policy -// the entry is about and a type to indicate the effect that the entry will have -// on serving. It may optionally have one or more evidences that indicate the -// reason for the finding. It may also optionally have one or more constraints -// that provide details about how serving may be restricted. -message PolicyTopicEntry { - // Policy topic this finding refers to. For example, "ALCOHOL", - // "TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible - // policy topics is not fixed for a particular API version and may change - // at any time. - google.protobuf.StringValue topic = 1; - - // Describes the negative or positive effect this policy will have on serving. - google.ads.googleads.v4.enums.PolicyTopicEntryTypeEnum.PolicyTopicEntryType type = 2; - - // Additional information that explains policy finding - // (e.g. the brand name for a trademark finding). - repeated PolicyTopicEvidence evidences = 3; - - // Indicates how serving of this resource may be affected (e.g. not serving - // in a country). - repeated PolicyTopicConstraint constraints = 4; -} - -// Additional information that explains a policy finding. -message PolicyTopicEvidence { - // A list of fragments of text that violated a policy. - message TextList { - // The fragments of text from the resource that caused the policy finding. - repeated google.protobuf.StringValue texts = 1; - } - - // A list of websites that caused a policy finding. Used for - // ONE_WEBSITE_PER_AD_GROUP policy topic, for example. In case there are more - // than five websites, only the top five (those that appear in resources the - // most) will be listed here. - message WebsiteList { - // Websites that caused the policy finding. - repeated google.protobuf.StringValue websites = 1; - } - - // A list of strings found in a destination page that caused a policy - // finding. - message DestinationTextList { - // List of text found in the resource's destination page. - repeated google.protobuf.StringValue destination_texts = 1; - } - - // Evidence of mismatches between the URLs of a resource. - message DestinationMismatch { - // The set of URLs that did not match each other. - repeated google.ads.googleads.v4.enums.PolicyTopicEvidenceDestinationMismatchUrlTypeEnum.PolicyTopicEvidenceDestinationMismatchUrlType url_types = 1; - } - - // Evidence details when the destination is returning an HTTP error - // code or isn't functional in all locations for commonly used devices. - message DestinationNotWorking { - // The full URL that didn't work. - google.protobuf.StringValue expanded_url = 3; - - // The type of device that failed to load the URL. - google.ads.googleads.v4.enums.PolicyTopicEvidenceDestinationNotWorkingDeviceEnum.PolicyTopicEvidenceDestinationNotWorkingDevice device = 4; - - // The time the URL was last checked. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue last_checked_date_time = 5; - - // Indicates the reason of the DESTINATION_NOT_WORKING policy finding. - oneof reason { - // The type of DNS error. - google.ads.googleads.v4.enums.PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum.PolicyTopicEvidenceDestinationNotWorkingDnsErrorType dns_error_type = 1; - - // The HTTP error code. - google.protobuf.Int64Value http_error_code = 2; - } - } - - // Specific evidence information depending on the evidence type. - oneof value { - // List of websites linked with this resource. - WebsiteList website_list = 3; - - // List of evidence found in the text of a resource. - TextList text_list = 4; - - // The language the resource was detected to be written in. - // This is an IETF language tag such as "en-US". - google.protobuf.StringValue language_code = 5; - - // The text in the destination of the resource that is causing a policy - // finding. - DestinationTextList destination_text_list = 6; - - // Mismatch between the destinations of a resource's URLs. - DestinationMismatch destination_mismatch = 7; - - // Details when the destination is returning an HTTP error code or isn't - // functional in all locations for commonly used devices. - DestinationNotWorking destination_not_working = 8; - } -} - -// Describes the effect on serving that a policy topic entry will have. -message PolicyTopicConstraint { - // A list of countries where a resource's serving is constrained. - message CountryConstraintList { - // Total number of countries targeted by the resource. - google.protobuf.Int32Value total_targeted_countries = 1; - - // Countries in which serving is restricted. - repeated CountryConstraint countries = 2; - } - - // Indicates that a policy topic was constrained due to disapproval of the - // website for reseller purposes. - message ResellerConstraint { - - } - - // Indicates that a resource's ability to serve in a particular country is - // constrained. - message CountryConstraint { - // Geo target constant resource name of the country in which serving is - // constrained. - google.protobuf.StringValue country_criterion = 1; - } - - // Specific information about the constraint. - oneof value { - // Countries where the resource cannot serve. - CountryConstraintList country_constraint_list = 1; - - // Reseller constraint. - ResellerConstraint reseller_constraint = 2; - - // Countries where a certificate is required for serving. - CountryConstraintList certificate_missing_in_country_list = 3; - - // Countries where the resource's domain is not covered by the - // certificates associated with it. - CountryConstraintList certificate_domain_mismatch_in_country_list = 4; - } -} diff --git a/google/ads/googleads/v4/common/real_time_bidding_setting.proto b/google/ads/googleads/v4/common/real_time_bidding_setting.proto deleted file mode 100644 index 6f9249712..000000000 --- a/google/ads/googleads/v4/common/real_time_bidding_setting.proto +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "RealTimeBiddingSettingProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing RealTimeBiddingSetting - -// Settings for Real-Time Bidding, a feature only available for campaigns -// targeting the Ad Exchange network. -message RealTimeBiddingSetting { - // Whether the campaign is opted in to real-time bidding. - google.protobuf.BoolValue opt_in = 1; -} diff --git a/google/ads/googleads/v4/common/segments.proto b/google/ads/googleads/v4/common/segments.proto deleted file mode 100644 index 577e25013..000000000 --- a/google/ads/googleads/v4/common/segments.proto +++ /dev/null @@ -1,313 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/common/criteria.proto"; -import "google/ads/googleads/v4/enums/ad_network_type.proto"; -import "google/ads/googleads/v4/enums/click_type.proto"; -import "google/ads/googleads/v4/enums/conversion_action_category.proto"; -import "google/ads/googleads/v4/enums/conversion_attribution_event_type.proto"; -import "google/ads/googleads/v4/enums/conversion_lag_bucket.proto"; -import "google/ads/googleads/v4/enums/conversion_or_adjustment_lag_bucket.proto"; -import "google/ads/googleads/v4/enums/day_of_week.proto"; -import "google/ads/googleads/v4/enums/device.proto"; -import "google/ads/googleads/v4/enums/external_conversion_source.proto"; -import "google/ads/googleads/v4/enums/hotel_date_selection_type.proto"; -import "google/ads/googleads/v4/enums/hotel_price_bucket.proto"; -import "google/ads/googleads/v4/enums/hotel_rate_type.proto"; -import "google/ads/googleads/v4/enums/month_of_year.proto"; -import "google/ads/googleads/v4/enums/placeholder_type.proto"; -import "google/ads/googleads/v4/enums/product_channel.proto"; -import "google/ads/googleads/v4/enums/product_channel_exclusivity.proto"; -import "google/ads/googleads/v4/enums/product_condition.proto"; -import "google/ads/googleads/v4/enums/search_engine_results_page_type.proto"; -import "google/ads/googleads/v4/enums/search_term_match_type.proto"; -import "google/ads/googleads/v4/enums/slot.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "SegmentsProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing segment only fields. - -// Segment only fields. -message Segments { - // Ad network type. - google.ads.googleads.v4.enums.AdNetworkTypeEnum.AdNetworkType ad_network_type = 3; - - // Click type. - google.ads.googleads.v4.enums.ClickTypeEnum.ClickType click_type = 26; - - // Resource name of the conversion action. - google.protobuf.StringValue conversion_action = 52; - - // Conversion action category. - google.ads.googleads.v4.enums.ConversionActionCategoryEnum.ConversionActionCategory conversion_action_category = 53; - - // Conversion action name. - google.protobuf.StringValue conversion_action_name = 54; - - // This segments your conversion columns by the original conversion and - // conversion value vs. the delta if conversions were adjusted. False row has - // the data as originally stated; While true row has the delta between data - // now and the data as originally stated. Summing the two together results - // post-adjustment data. - google.protobuf.BoolValue conversion_adjustment = 27; - - // Conversion attribution event type. - google.ads.googleads.v4.enums.ConversionAttributionEventTypeEnum.ConversionAttributionEventType conversion_attribution_event_type = 2; - - // An enum value representing the number of days between the impression and - // the conversion. - google.ads.googleads.v4.enums.ConversionLagBucketEnum.ConversionLagBucket conversion_lag_bucket = 50; - - // An enum value representing the number of days between the impression and - // the conversion or between the impression and adjustments to the conversion. - google.ads.googleads.v4.enums.ConversionOrAdjustmentLagBucketEnum.ConversionOrAdjustmentLagBucket conversion_or_adjustment_lag_bucket = 51; - - // Date to which metrics apply. - // yyyy-MM-dd format, e.g., 2018-04-17. - google.protobuf.StringValue date = 4; - - // Day of the week, e.g., MONDAY. - google.ads.googleads.v4.enums.DayOfWeekEnum.DayOfWeek day_of_week = 5; - - // Device to which metrics apply. - google.ads.googleads.v4.enums.DeviceEnum.Device device = 1; - - // External conversion source. - google.ads.googleads.v4.enums.ExternalConversionSourceEnum.ExternalConversionSource external_conversion_source = 55; - - // Resource name of the geo target constant that represents an airport. - google.protobuf.StringValue geo_target_airport = 65; - - // Resource name of the geo target constant that represents a canton. - google.protobuf.StringValue geo_target_canton = 76; - - // Resource name of the geo target constant that represents a city. - google.protobuf.StringValue geo_target_city = 62; - - // Resource name of the geo target constant that represents a country. - google.protobuf.StringValue geo_target_country = 77; - - // Resource name of the geo target constant that represents a county. - google.protobuf.StringValue geo_target_county = 68; - - // Resource name of the geo target constant that represents a district. - google.protobuf.StringValue geo_target_district = 69; - - // Resource name of the geo target constant that represents a metro. - google.protobuf.StringValue geo_target_metro = 63; - - // Resource name of the geo target constant that represents the most - // specific location. - google.protobuf.StringValue geo_target_most_specific_location = 72; - - // Resource name of the geo target constant that represents a postal code. - google.protobuf.StringValue geo_target_postal_code = 71; - - // Resource name of the geo target constant that represents a province. - google.protobuf.StringValue geo_target_province = 75; - - // Resource name of the geo target constant that represents a region. - google.protobuf.StringValue geo_target_region = 64; - - // Resource name of the geo target constant that represents a state. - google.protobuf.StringValue geo_target_state = 67; - - // Hotel booking window in days. - google.protobuf.Int64Value hotel_booking_window_days = 6; - - // Hotel center ID. - google.protobuf.Int64Value hotel_center_id = 7; - - // Hotel check-in date. Formatted as yyyy-MM-dd. - google.protobuf.StringValue hotel_check_in_date = 8; - - // Hotel check-in day of week. - google.ads.googleads.v4.enums.DayOfWeekEnum.DayOfWeek hotel_check_in_day_of_week = 9; - - // Hotel city. - google.protobuf.StringValue hotel_city = 10; - - // Hotel class. - google.protobuf.Int32Value hotel_class = 11; - - // Hotel country. - google.protobuf.StringValue hotel_country = 12; - - // Hotel date selection type. - google.ads.googleads.v4.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType hotel_date_selection_type = 13; - - // Hotel length of stay. - google.protobuf.Int32Value hotel_length_of_stay = 14; - - // Hotel rate rule ID. - google.protobuf.StringValue hotel_rate_rule_id = 73; - - // Hotel rate type. - google.ads.googleads.v4.enums.HotelRateTypeEnum.HotelRateType hotel_rate_type = 74; - - // Hotel price bucket. - google.ads.googleads.v4.enums.HotelPriceBucketEnum.HotelPriceBucket hotel_price_bucket = 78; - - // Hotel state. - google.protobuf.StringValue hotel_state = 15; - - // Hour of day as a number between 0 and 23, inclusive. - google.protobuf.Int32Value hour = 16; - - // Only used with feed item metrics. - // Indicates whether the interaction metrics occurred on the feed item itself - // or a different extension or ad unit. - google.protobuf.BoolValue interaction_on_this_extension = 49; - - // Keyword criterion. - Keyword keyword = 61; - - // Month as represented by the date of the first day of a month. Formatted as - // yyyy-MM-dd. - google.protobuf.StringValue month = 17; - - // Month of the year, e.g., January. - google.ads.googleads.v4.enums.MonthOfYearEnum.MonthOfYear month_of_year = 18; - - // Partner hotel ID. - google.protobuf.StringValue partner_hotel_id = 19; - - // Placeholder type. This is only used with feed item metrics. - google.ads.googleads.v4.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 20; - - // Aggregator ID of the product. - google.protobuf.UInt64Value product_aggregator_id = 28; - - // Bidding category (level 1) of the product. - google.protobuf.StringValue product_bidding_category_level1 = 56; - - // Bidding category (level 2) of the product. - google.protobuf.StringValue product_bidding_category_level2 = 57; - - // Bidding category (level 3) of the product. - google.protobuf.StringValue product_bidding_category_level3 = 58; - - // Bidding category (level 4) of the product. - google.protobuf.StringValue product_bidding_category_level4 = 59; - - // Bidding category (level 5) of the product. - google.protobuf.StringValue product_bidding_category_level5 = 60; - - // Brand of the product. - google.protobuf.StringValue product_brand = 29; - - // Channel of the product. - google.ads.googleads.v4.enums.ProductChannelEnum.ProductChannel product_channel = 30; - - // Channel exclusivity of the product. - google.ads.googleads.v4.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity product_channel_exclusivity = 31; - - // Condition of the product. - google.ads.googleads.v4.enums.ProductConditionEnum.ProductCondition product_condition = 32; - - // Resource name of the geo target constant for the country of sale of the - // product. - google.protobuf.StringValue product_country = 33; - - // Custom attribute 0 of the product. - google.protobuf.StringValue product_custom_attribute0 = 34; - - // Custom attribute 1 of the product. - google.protobuf.StringValue product_custom_attribute1 = 35; - - // Custom attribute 2 of the product. - google.protobuf.StringValue product_custom_attribute2 = 36; - - // Custom attribute 3 of the product. - google.protobuf.StringValue product_custom_attribute3 = 37; - - // Custom attribute 4 of the product. - google.protobuf.StringValue product_custom_attribute4 = 38; - - // Item ID of the product. - google.protobuf.StringValue product_item_id = 39; - - // Resource name of the language constant for the language of the product. - google.protobuf.StringValue product_language = 40; - - // Merchant ID of the product. - google.protobuf.UInt64Value product_merchant_id = 41; - - // Store ID of the product. - google.protobuf.StringValue product_store_id = 42; - - // Title of the product. - google.protobuf.StringValue product_title = 43; - - // Type (level 1) of the product. - google.protobuf.StringValue product_type_l1 = 44; - - // Type (level 2) of the product. - google.protobuf.StringValue product_type_l2 = 45; - - // Type (level 3) of the product. - google.protobuf.StringValue product_type_l3 = 46; - - // Type (level 4) of the product. - google.protobuf.StringValue product_type_l4 = 47; - - // Type (level 5) of the product. - google.protobuf.StringValue product_type_l5 = 48; - - // Quarter as represented by the date of the first day of a quarter. - // Uses the calendar year for quarters, e.g., the second quarter of 2018 - // starts on 2018-04-01. Formatted as yyyy-MM-dd. - google.protobuf.StringValue quarter = 21; - - // Type of the search engine results page. - google.ads.googleads.v4.enums.SearchEngineResultsPageTypeEnum.SearchEngineResultsPageType search_engine_results_page_type = 70; - - // Match type of the keyword that triggered the ad, including variants. - google.ads.googleads.v4.enums.SearchTermMatchTypeEnum.SearchTermMatchType search_term_match_type = 22; - - // Position of the ad. - google.ads.googleads.v4.enums.SlotEnum.Slot slot = 23; - - // Resource name of the ad group criterion that represents webpage criterion. - google.protobuf.StringValue webpage = 66; - - // Week as defined as Monday through Sunday, and represented by the date of - // Monday. Formatted as yyyy-MM-dd. - google.protobuf.StringValue week = 24; - - // Year, formatted as yyyy. - google.protobuf.Int32Value year = 25; -} - -// A Keyword criterion segment. -message Keyword { - // The AdGroupCriterion resource name. - google.protobuf.StringValue ad_group_criterion = 1; - - // Keyword info. - KeywordInfo info = 2; -} diff --git a/google/ads/googleads/v4/common/simulation.proto b/google/ads/googleads/v4/common/simulation.proto deleted file mode 100644 index 02afcb4b3..000000000 --- a/google/ads/googleads/v4/common/simulation.proto +++ /dev/null @@ -1,203 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "SimulationProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing simulation points. - -// A container for simulation points for simulations of type BID_MODIFIER. -message BidModifierSimulationPointList { - // Projected metrics for a series of bid modifier amounts. - repeated BidModifierSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type CPC_BID. -message CpcBidSimulationPointList { - // Projected metrics for a series of CPC bid amounts. - repeated CpcBidSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type CPV_BID. -message CpvBidSimulationPointList { - // Projected metrics for a series of CPV bid amounts. - repeated CpvBidSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type TARGET_CPA. -message TargetCpaSimulationPointList { - // Projected metrics for a series of target CPA amounts. - repeated TargetCpaSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type TARGET_ROAS. -message TargetRoasSimulationPointList { - // Projected metrics for a series of target ROAS amounts. - repeated TargetRoasSimulationPoint points = 1; -} - -// Projected metrics for a specific bid modifier amount. -message BidModifierSimulationPoint { - // The simulated bid modifier upon which projected metrics are based. - google.protobuf.DoubleValue bid_modifier = 1; - - // Projected number of biddable conversions. - // Only search advertising channel type supports this field. - google.protobuf.DoubleValue biddable_conversions = 2; - - // Projected total value of biddable conversions. - // Only search advertising channel type supports this field. - google.protobuf.DoubleValue biddable_conversions_value = 3; - - // Projected number of clicks. - google.protobuf.Int64Value clicks = 4; - - // Projected cost in micros. - google.protobuf.Int64Value cost_micros = 5; - - // Projected number of impressions. - google.protobuf.Int64Value impressions = 6; - - // Projected number of top slot impressions. - // Only search advertising channel type supports this field. - google.protobuf.Int64Value top_slot_impressions = 7; - - // Projected number of biddable conversions for the parent resource. - // Only search advertising channel type supports this field. - google.protobuf.DoubleValue parent_biddable_conversions = 8; - - // Projected total value of biddable conversions for the parent resource. - // Only search advertising channel type supports this field. - google.protobuf.DoubleValue parent_biddable_conversions_value = 9; - - // Projected number of clicks for the parent resource. - google.protobuf.Int64Value parent_clicks = 10; - - // Projected cost in micros for the parent resource. - google.protobuf.Int64Value parent_cost_micros = 11; - - // Projected number of impressions for the parent resource. - google.protobuf.Int64Value parent_impressions = 12; - - // Projected number of top slot impressions for the parent resource. - // Only search advertising channel type supports this field. - google.protobuf.Int64Value parent_top_slot_impressions = 13; - - // Projected minimum daily budget that must be available to the parent - // resource to realize this simulation. - google.protobuf.Int64Value parent_required_budget_micros = 14; -} - -// Projected metrics for a specific CPC bid amount. -message CpcBidSimulationPoint { - // The simulated CPC bid upon which projected metrics are based. - google.protobuf.Int64Value cpc_bid_micros = 1; - - // Projected number of biddable conversions. - google.protobuf.DoubleValue biddable_conversions = 2; - - // Projected total value of biddable conversions. - google.protobuf.DoubleValue biddable_conversions_value = 3; - - // Projected number of clicks. - google.protobuf.Int64Value clicks = 4; - - // Projected cost in micros. - google.protobuf.Int64Value cost_micros = 5; - - // Projected number of impressions. - google.protobuf.Int64Value impressions = 6; - - // Projected number of top slot impressions. - // Only search advertising channel type supports this field. - google.protobuf.Int64Value top_slot_impressions = 7; -} - -// Projected metrics for a specific CPV bid amount. -message CpvBidSimulationPoint { - // The simulated CPV bid upon which projected metrics are based. - google.protobuf.Int64Value cpv_bid_micros = 1; - - // Projected cost in micros. - google.protobuf.Int64Value cost_micros = 2; - - // Projected number of impressions. - google.protobuf.Int64Value impressions = 3; - - // Projected number of views. - google.protobuf.Int64Value views = 4; -} - -// Projected metrics for a specific target CPA amount. -message TargetCpaSimulationPoint { - // The simulated target CPA upon which projected metrics are based. - google.protobuf.Int64Value target_cpa_micros = 1; - - // Projected number of biddable conversions. - google.protobuf.DoubleValue biddable_conversions = 2; - - // Projected total value of biddable conversions. - google.protobuf.DoubleValue biddable_conversions_value = 3; - - // Projected number of clicks. - google.protobuf.Int64Value clicks = 4; - - // Projected cost in micros. - google.protobuf.Int64Value cost_micros = 5; - - // Projected number of impressions. - google.protobuf.Int64Value impressions = 6; - - // Projected number of top slot impressions. - // Only search advertising channel type supports this field. - google.protobuf.Int64Value top_slot_impressions = 7; -} - -// Projected metrics for a specific target ROAS amount. -message TargetRoasSimulationPoint { - // The simulated target ROAS upon which projected metrics are based. - google.protobuf.DoubleValue target_roas = 1; - - // Projected number of biddable conversions. - google.protobuf.DoubleValue biddable_conversions = 2; - - // Projected total value of biddable conversions. - google.protobuf.DoubleValue biddable_conversions_value = 3; - - // Projected number of clicks. - google.protobuf.Int64Value clicks = 4; - - // Projected cost in micros. - google.protobuf.Int64Value cost_micros = 5; - - // Projected number of impressions. - google.protobuf.Int64Value impressions = 6; - - // Projected number of top slot impressions. - // Only Search advertising channel type supports this field. - google.protobuf.Int64Value top_slot_impressions = 7; -} diff --git a/google/ads/googleads/v4/common/tag_snippet.proto b/google/ads/googleads/v4/common/tag_snippet.proto deleted file mode 100644 index 048bebe6e..000000000 --- a/google/ads/googleads/v4/common/tag_snippet.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/tracking_code_page_format.proto"; -import "google/ads/googleads/v4/enums/tracking_code_type.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "TagSnippetProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing TagSnippet - -// The site tag and event snippet pair for a TrackingCodeType. -message TagSnippet { - // The type of the generated tag snippets for tracking conversions. - google.ads.googleads.v4.enums.TrackingCodeTypeEnum.TrackingCodeType type = 1; - - // The format of the web page where the tracking tag and snippet will be - // installed, e.g. HTML. - google.ads.googleads.v4.enums.TrackingCodePageFormatEnum.TrackingCodePageFormat page_format = 2; - - // The site tag that adds visitors to your basic remarketing lists and sets - // new cookies on your domain. - google.protobuf.StringValue global_site_tag = 3; - - // The event snippet that works with the site tag to track actions that - // should be counted as conversions. - google.protobuf.StringValue event_snippet = 4; -} diff --git a/google/ads/googleads/v4/common/targeting_setting.proto b/google/ads/googleads/v4/common/targeting_setting.proto deleted file mode 100644 index 77720b082..000000000 --- a/google/ads/googleads/v4/common/targeting_setting.proto +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/targeting_dimension.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "TargetingSettingProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing TargetingSetting - -// Settings for the targeting-related features, at the campaign and ad group -// levels. For more details about the targeting setting, visit -// https://support.google.com/google-ads/answer/7365594 -message TargetingSetting { - // The per-targeting-dimension setting to restrict the reach of your campaign - // or ad group. - repeated TargetRestriction target_restrictions = 1; - - // The list of operations changing the target restrictions. - // - // Adding a target restriction with a targeting dimension that already exists - // causes the existing target restriction to be replaced with the new value. - repeated TargetRestrictionOperation target_restriction_operations = 2; -} - -// The list of per-targeting-dimension targeting settings. -message TargetRestriction { - // The targeting dimension that these settings apply to. - google.ads.googleads.v4.enums.TargetingDimensionEnum.TargetingDimension targeting_dimension = 1; - - // Indicates whether to restrict your ads to show only for the criteria you - // have selected for this targeting_dimension, or to target all values for - // this targeting_dimension and show ads based on your targeting in other - // TargetingDimensions. A value of `true` means that these criteria will only - // apply bid modifiers, and not affect targeting. A value of `false` means - // that these criteria will restrict targeting as well as applying bid - // modifiers. - google.protobuf.BoolValue bid_only = 2; -} - -// Operation to be performed on a target restriction list in a mutate. -message TargetRestrictionOperation { - // The operator. - enum Operator { - // Unspecified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Add the restriction to the existing restrictions. - ADD = 2; - - // Remove the restriction from the existing restrictions. - REMOVE = 3; - } - - // Type of list operation to perform. - Operator operator = 1; - - // The target restriction being added to or removed from the list. - TargetRestriction value = 2; -} diff --git a/google/ads/googleads/v4/common/text_label.proto b/google/ads/googleads/v4/common/text_label.proto deleted file mode 100644 index 50e4937d6..000000000 --- a/google/ads/googleads/v4/common/text_label.proto +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "TextLabelProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// A type of label displaying text on a colored background. -message TextLabel { - // Background color of the label in RGB format. This string must match the - // regular expression '^\#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$'. - // Note: The background color may not be visible for manager accounts. - google.protobuf.StringValue background_color = 1; - - // A short description of the label. The length must be no more than 200 - // characters. - google.protobuf.StringValue description = 2; -} diff --git a/google/ads/googleads/v4/common/url_collection.proto b/google/ads/googleads/v4/common/url_collection.proto deleted file mode 100644 index a94306c2c..000000000 --- a/google/ads/googleads/v4/common/url_collection.proto +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "UrlCollectionProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file UrlCollection type. - -// Collection of urls that is tagged with a unique identifier. -message UrlCollection { - // Unique identifier for this UrlCollection instance. - google.protobuf.StringValue url_collection_id = 1; - - // A list of possible final URLs. - repeated google.protobuf.StringValue final_urls = 2; - - // A list of possible final mobile URLs. - repeated google.protobuf.StringValue final_mobile_urls = 3; - - // URL template for constructing a tracking URL. - google.protobuf.StringValue tracking_url_template = 4; -} diff --git a/google/ads/googleads/v4/common/user_lists.proto b/google/ads/googleads/v4/common/user_lists.proto deleted file mode 100644 index 825ba22d2..000000000 --- a/google/ads/googleads/v4/common/user_lists.proto +++ /dev/null @@ -1,292 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/ads/googleads/v4/enums/customer_match_upload_key_type.proto"; -import "google/ads/googleads/v4/enums/user_list_combined_rule_operator.proto"; -import "google/ads/googleads/v4/enums/user_list_crm_data_source_type.proto"; -import "google/ads/googleads/v4/enums/user_list_date_rule_item_operator.proto"; -import "google/ads/googleads/v4/enums/user_list_logical_rule_operator.proto"; -import "google/ads/googleads/v4/enums/user_list_number_rule_item_operator.proto"; -import "google/ads/googleads/v4/enums/user_list_prepopulation_status.proto"; -import "google/ads/googleads/v4/enums/user_list_rule_type.proto"; -import "google/ads/googleads/v4/enums/user_list_string_rule_item_operator.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "UserListsProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing user list types. - -// SimilarUserList is a list of users which are similar to users from another -// UserList. These lists are read-only and automatically created by Google. -message SimilarUserListInfo { - // Seed UserList from which this list is derived. - google.protobuf.StringValue seed_user_list = 1; -} - -// UserList of CRM users provided by the advertiser. -message CrmBasedUserListInfo { - // A string that uniquely identifies a mobile application from which the data - // was collected to the Google Ads API. - // For iOS, the ID string is the 9 digit string that appears at the end of an - // App Store URL (e.g., "476943146" for "Flood-It! 2" whose App Store link is - // http://itunes.apple.com/us/app/flood-it!-2/id476943146). - // For Android, the ID string is the application's package name - // (e.g., "com.labpixies.colordrips" for "Color Drips" given Google Play link - // https://play.google.com/store/apps/details?id=com.labpixies.colordrips). - // Required when creating CrmBasedUserList for uploading mobile advertising - // IDs. - google.protobuf.StringValue app_id = 1; - - // Matching key type of the list. - // Mixed data types are not allowed on the same list. - // This field is required for an ADD operation. - google.ads.googleads.v4.enums.CustomerMatchUploadKeyTypeEnum.CustomerMatchUploadKeyType upload_key_type = 2; - - // Data source of the list. Default value is FIRST_PARTY. - // Only customers on the allow-list can create third-party sourced CRM lists. - google.ads.googleads.v4.enums.UserListCrmDataSourceTypeEnum.UserListCrmDataSourceType data_source_type = 3; -} - -// A client defined rule based on custom parameters sent by web sites or -// uploaded by the advertiser. -message UserListRuleInfo { - // Rule type is used to determine how to group rule items. - // - // The default is OR of ANDs (disjunctive normal form). - // That is, rule items will be ANDed together within rule item groups and the - // groups themselves will be ORed together. - // - // Currently AND of ORs (conjunctive normal form) is only supported for - // ExpressionRuleUserList. - google.ads.googleads.v4.enums.UserListRuleTypeEnum.UserListRuleType rule_type = 1; - - // List of rule item groups that defines this rule. - // Rule item groups are grouped together based on rule_type. - repeated UserListRuleItemGroupInfo rule_item_groups = 2; -} - -// A group of rule items. -message UserListRuleItemGroupInfo { - // Rule items that will be grouped together based on rule_type. - repeated UserListRuleItemInfo rule_items = 1; -} - -// An atomic rule item. -message UserListRuleItemInfo { - // Rule variable name. It should match the corresponding key name fired - // by the pixel. - // A name must begin with US-ascii letters or underscore or UTF8 code that is - // greater than 127 and consist of US-ascii letters or digits or underscore or - // UTF8 code that is greater than 127. - // For websites, there are two built-in variable URL (name = 'url__') and - // referrer URL (name = 'ref_url__'). - // This field must be populated when creating a new rule item. - google.protobuf.StringValue name = 1; - - // An atomic rule item. - oneof rule_item { - // An atomic rule item composed of a number operation. - UserListNumberRuleItemInfo number_rule_item = 2; - - // An atomic rule item composed of a string operation. - UserListStringRuleItemInfo string_rule_item = 3; - - // An atomic rule item composed of a date operation. - UserListDateRuleItemInfo date_rule_item = 4; - } -} - -// A rule item composed of a date operation. -message UserListDateRuleItemInfo { - // Date comparison operator. - // This field is required and must be populated when creating new date - // rule item. - google.ads.googleads.v4.enums.UserListDateRuleItemOperatorEnum.UserListDateRuleItemOperator operator = 1; - - // String representing date value to be compared with the rule variable. - // Supported date format is YYYY-MM-DD. - // Times are reported in the customer's time zone. - google.protobuf.StringValue value = 2; - - // The relative date value of the right hand side denoted by number of days - // offset from now. The value field will override this field when both are - // present. - google.protobuf.Int64Value offset_in_days = 3; -} - -// A rule item composed of a number operation. -message UserListNumberRuleItemInfo { - // Number comparison operator. - // This field is required and must be populated when creating a new number - // rule item. - google.ads.googleads.v4.enums.UserListNumberRuleItemOperatorEnum.UserListNumberRuleItemOperator operator = 1; - - // Number value to be compared with the variable. - // This field is required and must be populated when creating a new number - // rule item. - google.protobuf.DoubleValue value = 2; -} - -// A rule item composed of a string operation. -message UserListStringRuleItemInfo { - // String comparison operator. - // This field is required and must be populated when creating a new string - // rule item. - google.ads.googleads.v4.enums.UserListStringRuleItemOperatorEnum.UserListStringRuleItemOperator operator = 1; - - // The right hand side of the string rule item. For URLs or referrer URLs, - // the value can not contain illegal URL chars such as newlines, quotes, - // tabs, or parentheses. This field is required and must be populated when - // creating a new string rule item. - google.protobuf.StringValue value = 2; -} - -// User lists defined by combining two rules, left operand and right operand. -// There are two operators: AND where left operand and right operand have to be -// true; AND_NOT where left operand is true but right operand is false. -message CombinedRuleUserListInfo { - // Left operand of the combined rule. - // This field is required and must be populated when creating new combined - // rule based user list. - UserListRuleInfo left_operand = 1; - - // Right operand of the combined rule. - // This field is required and must be populated when creating new combined - // rule based user list. - UserListRuleInfo right_operand = 2; - - // Operator to connect the two operands. - // - // Required for creating a combined rule user list. - google.ads.googleads.v4.enums.UserListCombinedRuleOperatorEnum.UserListCombinedRuleOperator rule_operator = 3; -} - -// Visitors of a page during specific dates. -message DateSpecificRuleUserListInfo { - // Boolean rule that defines visitor of a page. - // - // Required for creating a date specific rule user list. - UserListRuleInfo rule = 1; - - // Start date of users visit. If set to 2000-01-01, then the list includes all - // users before end_date. The date's format should be YYYY-MM-DD. - // - // Required for creating a data specific rule user list. - google.protobuf.StringValue start_date = 2; - - // End date of users visit. If set to 2037-12-30, then the list includes all - // users after start_date. The date's format should be YYYY-MM-DD. - // - // Required for creating a data specific rule user list. - google.protobuf.StringValue end_date = 3; -} - -// Visitors of a page. The page visit is defined by one boolean rule expression. -message ExpressionRuleUserListInfo { - // Boolean rule that defines this user list. The rule consists of a list of - // rule item groups and each rule item group consists of a list of rule items. - // All the rule item groups are ORed or ANDed together for evaluation based on - // rule.rule_type. - // - // Required for creating an expression rule user list. - UserListRuleInfo rule = 1; -} - -// Representation of a userlist that is generated by a rule. -message RuleBasedUserListInfo { - // The status of pre-population. The field is default to NONE if not set which - // means the previous users will not be considered. If set to REQUESTED, past - // site visitors or app users who match the list definition will be included - // in the list (works on the Display Network only). This will only - // add past users from within the last 30 days, depending on the - // list's membership duration and the date when the remarketing tag is added. - // The status will be updated to FINISHED once request is processed, or FAILED - // if the request fails. - google.ads.googleads.v4.enums.UserListPrepopulationStatusEnum.UserListPrepopulationStatus prepopulation_status = 1; - - // Subtypes of rule based user lists. - oneof rule_based_user_list { - // User lists defined by combining two rules. - // There are two operators: AND, where the left and right operands have to - // be true; AND_NOT where left operand is true but right operand is false. - CombinedRuleUserListInfo combined_rule_user_list = 2; - - // Visitors of a page during specific dates. The visiting periods are - // defined as follows: - // Between start_date (inclusive) and end_date (inclusive); - // Before end_date (exclusive) with start_date = 2000-01-01; - // After start_date (exclusive) with end_date = 2037-12-30. - DateSpecificRuleUserListInfo date_specific_rule_user_list = 3; - - // Visitors of a page. The page visit is defined by one boolean rule - // expression. - ExpressionRuleUserListInfo expression_rule_user_list = 4; - } -} - -// Represents a user list that is a custom combination of user lists. -message LogicalUserListInfo { - // Logical list rules that define this user list. The rules are defined as a - // logical operator (ALL/ANY/NONE) and a list of user lists. All the rules are - // ANDed when they are evaluated. - // - // Required for creating a logical user list. - repeated UserListLogicalRuleInfo rules = 1; -} - -// A user list logical rule. A rule has a logical operator (and/or/not) and a -// list of user lists as operands. -message UserListLogicalRuleInfo { - // The logical operator of the rule. - google.ads.googleads.v4.enums.UserListLogicalRuleOperatorEnum.UserListLogicalRuleOperator operator = 1; - - // The list of operands of the rule. - repeated LogicalUserListOperandInfo rule_operands = 2; -} - -// Operand of logical user list that consists of a user list. -message LogicalUserListOperandInfo { - // Resource name of a user list as an operand. - google.protobuf.StringValue user_list = 1; -} - -// User list targeting as a collection of conversions or remarketing actions. -message BasicUserListInfo { - // Actions associated with this user list. - repeated UserListActionInfo actions = 1; -} - -// Represents an action type used for building remarketing user lists. -message UserListActionInfo { - // Subtypes of user list action. - oneof user_list_action { - // A conversion action that's not generated from remarketing. - google.protobuf.StringValue conversion_action = 1; - - // A remarketing action. - google.protobuf.StringValue remarketing_action = 2; - } -} diff --git a/google/ads/googleads/v4/common/value.proto b/google/ads/googleads/v4/common/value.proto deleted file mode 100644 index c313b7455..000000000 --- a/google/ads/googleads/v4/common/value.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ValueProto"; -option java_package = "com.google.ads.googleads.v4.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V4::Common"; - -// Proto file describing value types - -// A generic data container. -message Value { - // A value. - oneof value { - // A boolean. - bool boolean_value = 1; - - // An int64. - int64 int64_value = 2; - - // A float. - float float_value = 3; - - // A double. - double double_value = 4; - - // A string. - string string_value = 5; - } -} diff --git a/google/ads/googleads/v4/enums/access_reason.proto b/google/ads/googleads/v4/enums/access_reason.proto deleted file mode 100644 index c2d3e785a..000000000 --- a/google/ads/googleads/v4/enums/access_reason.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccessReasonProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Indicates the way the resource such as user list is related to a user. -message AccessReasonEnum { - // Enum describing possible access reasons. - enum AccessReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The resource is owned by the user. - OWNED = 2; - - // The resource is shared to the user. - SHARED = 3; - - // The resource is licensed to the user. - LICENSED = 4; - - // The user subscribed to the resource. - SUBSCRIBED = 5; - - // The resource is accessible to the user. - AFFILIATED = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/access_role.proto b/google/ads/googleads/v4/enums/access_role.proto deleted file mode 100644 index 06aa865bd..000000000 --- a/google/ads/googleads/v4/enums/access_role.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccessRoleProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum describing possible access role for user. -message AccessRoleEnum { - // Possible access role of a user. - enum AccessRole { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Owns its account and can control the addition of other users. - ADMIN = 2; - - // Can modify campaigns, but can't affect other users. - STANDARD = 3; - - // Can view campaigns and account changes, but cannot make edits. - READ_ONLY = 4; - - // Role for \"email only\" access. Represents an email recipient rather than - // a true User entity. - EMAIL_ONLY = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/account_budget_proposal_status.proto b/google/ads/googleads/v4/enums/account_budget_proposal_status.proto deleted file mode 100644 index 6978f2195..000000000 --- a/google/ads/googleads/v4/enums/account_budget_proposal_status.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing AccountBudgetProposal statuses. - -// Message describing AccountBudgetProposal statuses. -message AccountBudgetProposalStatusEnum { - // The possible statuses of an AccountBudgetProposal. - enum AccountBudgetProposalStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The proposal is pending approval. - PENDING = 2; - - // The proposal has been approved but the corresponding billing setup - // has not. This can occur for proposals that set up the first budget - // when signing up for billing or when performing a change of bill-to - // operation. - APPROVED_HELD = 3; - - // The proposal has been approved. - APPROVED = 4; - - // The proposal has been cancelled by the user. - CANCELLED = 5; - - // The proposal has been rejected by the user, e.g. by rejecting an - // acceptance email. - REJECTED = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/account_budget_proposal_type.proto b/google/ads/googleads/v4/enums/account_budget_proposal_type.proto deleted file mode 100644 index ddba188f3..000000000 --- a/google/ads/googleads/v4/enums/account_budget_proposal_type.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing AccountBudgetProposal types. - -// Message describing AccountBudgetProposal types. -message AccountBudgetProposalTypeEnum { - // The possible types of an AccountBudgetProposal. - enum AccountBudgetProposalType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Identifies a request to create a new budget. - CREATE = 2; - - // Identifies a request to edit an existing budget. - UPDATE = 3; - - // Identifies a request to end a budget that has already started. - END = 4; - - // Identifies a request to remove a budget that hasn't started yet. - REMOVE = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/account_budget_status.proto b/google/ads/googleads/v4/enums/account_budget_status.proto deleted file mode 100644 index 94e7e0f57..000000000 --- a/google/ads/googleads/v4/enums/account_budget_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing AccountBudget statuses. - -// Message describing AccountBudget statuses. -message AccountBudgetStatusEnum { - // The possible statuses of an AccountBudget. - enum AccountBudgetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The account budget is pending approval. - PENDING = 2; - - // The account budget has been approved. - APPROVED = 3; - - // The account budget has been cancelled by the user. - CANCELLED = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/account_link_status.proto b/google/ads/googleads/v4/enums/account_link_status.proto deleted file mode 100644 index e19d8be3e..000000000 --- a/google/ads/googleads/v4/enums/account_link_status.proto +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum describing possible statuses of an account link. -message AccountLinkStatusEnum { - // Describes the possible statuses for a link between a Google Ads customer - // and another account. - enum AccountLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The link is enabled. - ENABLED = 2; - - // The link is removed/disabled. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/ad_customizer_placeholder_field.proto b/google/ads/googleads/v4/enums/ad_customizer_placeholder_field.proto deleted file mode 100644 index bab3ac02c..000000000 --- a/google/ads/googleads/v4/enums/ad_customizer_placeholder_field.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdCustomizerPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Ad Customizer placeholder fields. - -// Values for Ad Customizer placeholder fields. -message AdCustomizerPlaceholderFieldEnum { - // Possible values for Ad Customizers placeholder fields. - enum AdCustomizerPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: INT64. Integer value to be inserted. - INTEGER = 2; - - // Data Type: STRING. Price value to be inserted. - PRICE = 3; - - // Data Type: DATE_TIME. Date value to be inserted. - DATE = 4; - - // Data Type: STRING. String value to be inserted. - STRING = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/ad_group_ad_rotation_mode.proto b/google/ads/googleads/v4/enums/ad_group_ad_rotation_mode.proto deleted file mode 100644 index c4e7daedb..000000000 --- a/google/ads/googleads/v4/enums/ad_group_ad_rotation_mode.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdRotationModeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing ad group ad rotation mode. - -// Container for enum describing possible ad rotation modes of ads within an -// ad group. -message AdGroupAdRotationModeEnum { - // The possible ad rotation modes of an ad group. - enum AdGroupAdRotationMode { - // The ad rotation mode has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Optimize ad group ads based on clicks or conversions. - OPTIMIZE = 2; - - // Rotate evenly forever. - ROTATE_FOREVER = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/ad_group_ad_status.proto b/google/ads/googleads/v4/enums/ad_group_ad_status.proto deleted file mode 100644 index e959c2c93..000000000 --- a/google/ads/googleads/v4/enums/ad_group_ad_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing ad group status. - -// Container for enum describing possible statuses of an AdGroupAd. -message AdGroupAdStatusEnum { - // The possible statuses of an AdGroupAd. - enum AdGroupAdStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad group ad is enabled. - ENABLED = 2; - - // The ad group ad is paused. - PAUSED = 3; - - // The ad group ad is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/ad_group_criterion_approval_status.proto b/google/ads/googleads/v4/enums/ad_group_criterion_approval_status.proto deleted file mode 100644 index 9fc408f8e..000000000 --- a/google/ads/googleads/v4/enums/ad_group_criterion_approval_status.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionApprovalStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing approval status for the criterion. - -// Container for enum describing possible AdGroupCriterion approval statuses. -message AdGroupCriterionApprovalStatusEnum { - // Enumerates AdGroupCriterion approval statuses. - enum AdGroupCriterionApprovalStatus { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Approved. - APPROVED = 2; - - // Disapproved. - DISAPPROVED = 3; - - // Pending Review. - PENDING_REVIEW = 4; - - // Under review. - UNDER_REVIEW = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/ad_group_criterion_status.proto b/google/ads/googleads/v4/enums/ad_group_criterion_status.proto deleted file mode 100644 index a7f2a56cb..000000000 --- a/google/ads/googleads/v4/enums/ad_group_criterion_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing AdGroupCriterion statuses. - -// Message describing AdGroupCriterion statuses. -message AdGroupCriterionStatusEnum { - // The possible statuses of an AdGroupCriterion. - enum AdGroupCriterionStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad group criterion is enabled. - ENABLED = 2; - - // The ad group criterion is paused. - PAUSED = 3; - - // The ad group criterion is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/ad_group_status.proto b/google/ads/googleads/v4/enums/ad_group_status.proto deleted file mode 100644 index 595c6e793..000000000 --- a/google/ads/googleads/v4/enums/ad_group_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing ad group status. - -// Container for enum describing possible statuses of an ad group. -message AdGroupStatusEnum { - // The possible statuses of an ad group. - enum AdGroupStatus { - // The status has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad group is enabled. - ENABLED = 2; - - // The ad group is paused. - PAUSED = 3; - - // The ad group is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/ad_group_type.proto b/google/ads/googleads/v4/enums/ad_group_type.proto deleted file mode 100644 index 832b985c7..000000000 --- a/google/ads/googleads/v4/enums/ad_group_type.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing ad group types. - -// Defines types of an ad group, specific to a particular campaign channel -// type. This type drives validations that restrict which entities can be -// added to the ad group. -message AdGroupTypeEnum { - // Enum listing the possible types of an ad group. - enum AdGroupType { - // The type has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The default ad group type for Search campaigns. - SEARCH_STANDARD = 2; - - // The default ad group type for Display campaigns. - DISPLAY_STANDARD = 3; - - // The ad group type for Shopping campaigns serving standard product ads. - SHOPPING_PRODUCT_ADS = 4; - - // The default ad group type for Hotel campaigns. - HOTEL_ADS = 6; - - // The type for ad groups in Smart Shopping campaigns. - SHOPPING_SMART_ADS = 7; - - // Short unskippable in-stream video ads. - VIDEO_BUMPER = 8; - - // TrueView (skippable) in-stream video ads. - VIDEO_TRUE_VIEW_IN_STREAM = 9; - - // TrueView in-display video ads. - VIDEO_TRUE_VIEW_IN_DISPLAY = 10; - - // Unskippable in-stream video ads. - VIDEO_NON_SKIPPABLE_IN_STREAM = 11; - - // Outstream video ads. - VIDEO_OUTSTREAM = 12; - - // Ad group type for Dynamic Search Ads ad groups. - SEARCH_DYNAMIC_ADS = 13; - - // The type for ad groups in Shopping Comparison Listing campaigns. - SHOPPING_COMPARISON_LISTING_ADS = 14; - - // The ad group type for Promoted Hotel ad groups. - PROMOTED_HOTEL_ADS = 15; - - // Video responsive ad groups. - VIDEO_RESPONSIVE = 16; - } - - -} diff --git a/google/ads/googleads/v4/enums/ad_network_type.proto b/google/ads/googleads/v4/enums/ad_network_type.proto deleted file mode 100644 index ce9c6619d..000000000 --- a/google/ads/googleads/v4/enums/ad_network_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdNetworkTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing ad network types. - -// Container for enumeration of Google Ads network types. -message AdNetworkTypeEnum { - // Enumerates Google Ads network types. - enum AdNetworkType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Google search. - SEARCH = 2; - - // Search partners. - SEARCH_PARTNERS = 3; - - // Display Network. - CONTENT = 4; - - // YouTube Search. - YOUTUBE_SEARCH = 5; - - // YouTube Videos - YOUTUBE_WATCH = 6; - - // Cross-network. - MIXED = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/ad_serving_optimization_status.proto b/google/ads/googleads/v4/enums/ad_serving_optimization_status.proto deleted file mode 100644 index 06d1e9e0b..000000000 --- a/google/ads/googleads/v4/enums/ad_serving_optimization_status.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdServingOptimizationStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing ad serving statuses. - -// Possible ad serving statuses of a campaign. -message AdServingOptimizationStatusEnum { - // Enum describing possible serving statuses. - enum AdServingOptimizationStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Ad serving is optimized based on CTR for the campaign. - OPTIMIZE = 2; - - // Ad serving is optimized based on CTR * Conversion for the campaign. If - // the campaign is not in the conversion optimizer bidding strategy, it will - // default to OPTIMIZED. - CONVERSION_OPTIMIZE = 3; - - // Ads are rotated evenly for 90 days, then optimized for clicks. - ROTATE = 4; - - // Show lower performing ads more evenly with higher performing ads, and do - // not optimize. - ROTATE_INDEFINITELY = 5; - - // Ad serving optimization status is not available. - UNAVAILABLE = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/ad_strength.proto b/google/ads/googleads/v4/enums/ad_strength.proto deleted file mode 100644 index 932ef53fe..000000000 --- a/google/ads/googleads/v4/enums/ad_strength.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdStrengthProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing ad strengths. - -// Container for enum describing possible ad strengths. -message AdStrengthEnum { - // Enum listing the possible ad strengths. - enum AdStrength { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The ad strength is currently pending. - PENDING = 2; - - // No ads could be generated. - NO_ADS = 3; - - // Poor strength. - POOR = 4; - - // Average strength. - AVERAGE = 5; - - // Good strength. - GOOD = 6; - - // Excellent strength. - EXCELLENT = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/ad_type.proto b/google/ads/googleads/v4/enums/ad_type.proto deleted file mode 100644 index 03262ed23..000000000 --- a/google/ads/googleads/v4/enums/ad_type.proto +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing the ad type. - -// Container for enum describing possible types of an ad. -message AdTypeEnum { - // The possible types of an ad. - enum AdType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad is a text ad. - TEXT_AD = 2; - - // The ad is an expanded text ad. - EXPANDED_TEXT_AD = 3; - - // The ad is a call only ad. - CALL_ONLY_AD = 6; - - // The ad is an expanded dynamic search ad. - EXPANDED_DYNAMIC_SEARCH_AD = 7; - - // The ad is a hotel ad. - HOTEL_AD = 8; - - // The ad is a Smart Shopping ad. - SHOPPING_SMART_AD = 9; - - // The ad is a standard Shopping ad. - SHOPPING_PRODUCT_AD = 10; - - // The ad is a video ad. - VIDEO_AD = 12; - - // This ad is a Gmail ad. - GMAIL_AD = 13; - - // This ad is an Image ad. - IMAGE_AD = 14; - - // The ad is a responsive search ad. - RESPONSIVE_SEARCH_AD = 15; - - // The ad is a legacy responsive display ad. - LEGACY_RESPONSIVE_DISPLAY_AD = 16; - - // The ad is an app ad. - APP_AD = 17; - - // The ad is a legacy app install ad. - LEGACY_APP_INSTALL_AD = 18; - - // The ad is a responsive display ad. - RESPONSIVE_DISPLAY_AD = 19; - - // The ad is a local ad. - LOCAL_AD = 20; - - // The ad is a display upload ad with the HTML5_UPLOAD_AD product type. - HTML5_UPLOAD_AD = 21; - - // The ad is a display upload ad with one of the DYNAMIC_HTML5_* product - // types. - DYNAMIC_HTML5_AD = 22; - - // The ad is an app engagement ad. - APP_ENGAGEMENT_AD = 23; - - // The ad is a Shopping Comparison Listing ad. - SHOPPING_COMPARISON_LISTING_AD = 24; - - // Video bumper ad. - VIDEO_BUMPER_AD = 25; - - // Video non-skippable in-stream ad. - VIDEO_NON_SKIPPABLE_IN_STREAM_AD = 26; - - // Video outstream ad. - VIDEO_OUTSTREAM_AD = 27; - - // Video TrueView in-display ad. - VIDEO_TRUEVIEW_DISCOVERY_AD = 28; - - // Video TrueView in-stream ad. - VIDEO_TRUEVIEW_IN_STREAM_AD = 29; - - // Video responsive ad. - VIDEO_RESPONSIVE_AD = 30; - } - - -} diff --git a/google/ads/googleads/v4/enums/advertising_channel_sub_type.proto b/google/ads/googleads/v4/enums/advertising_channel_sub_type.proto deleted file mode 100644 index e27296896..000000000 --- a/google/ads/googleads/v4/enums/advertising_channel_sub_type.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdvertisingChannelSubTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing advertising channel subtypes. - -// An immutable specialization of an Advertising Channel. -message AdvertisingChannelSubTypeEnum { - // Enum describing the different channel subtypes. - enum AdvertisingChannelSubType { - // Not specified. - UNSPECIFIED = 0; - - // Used as a return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile app campaigns for Search. - SEARCH_MOBILE_APP = 2; - - // Mobile app campaigns for Display. - DISPLAY_MOBILE_APP = 3; - - // AdWords express campaigns for search. - SEARCH_EXPRESS = 4; - - // AdWords Express campaigns for display. - DISPLAY_EXPRESS = 5; - - // Smart Shopping campaigns. - SHOPPING_SMART_ADS = 6; - - // Gmail Ad campaigns. - DISPLAY_GMAIL_AD = 7; - - // Smart display campaigns. - DISPLAY_SMART_CAMPAIGN = 8; - - // Video Outstream campaigns. - VIDEO_OUTSTREAM = 9; - - // Video TrueView for Action campaigns. - VIDEO_ACTION = 10; - - // Video campaigns with non-skippable video ads. - VIDEO_NON_SKIPPABLE = 11; - - // App Campaign that allows you to easily promote your Android or iOS app - // across Google's top properties including Search, Play, YouTube, and the - // Google Display Network. - APP_CAMPAIGN = 12; - - // App Campaign for engagement, focused on driving re-engagement with the - // app across several of Google’s top properties including Search, YouTube, - // and the Google Display Network. - APP_CAMPAIGN_FOR_ENGAGEMENT = 13; - - // Campaigns specialized for local advertising. - LOCAL_CAMPAIGN = 14; - - // Shopping Comparison Listing campaigns. - SHOPPING_COMPARISON_LISTING_ADS = 15; - } - - -} diff --git a/google/ads/googleads/v4/enums/advertising_channel_type.proto b/google/ads/googleads/v4/enums/advertising_channel_type.proto deleted file mode 100644 index 4f1b9052f..000000000 --- a/google/ads/googleads/v4/enums/advertising_channel_type.proto +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdvertisingChannelTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing advertising channel types - -// The channel type a campaign may target to serve on. -message AdvertisingChannelTypeEnum { - // Enum describing the various advertising channel types. - enum AdvertisingChannelType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Search Network. Includes display bundled, and Search+ campaigns. - SEARCH = 2; - - // Google Display Network only. - DISPLAY = 3; - - // Shopping campaigns serve on the shopping property - // and on google.com search results. - SHOPPING = 4; - - // Hotel Ads campaigns. - HOTEL = 5; - - // Video campaigns. - VIDEO = 6; - - // App Campaigns, and App Campaigns for Engagement, that run - // across multiple channels. - MULTI_CHANNEL = 7; - - // Local ads campaigns. - LOCAL = 8; - - // Smart campaigns. - SMART = 9; - } - - -} diff --git a/google/ads/googleads/v4/enums/affiliate_location_feed_relationship_type.proto b/google/ads/googleads/v4/enums/affiliate_location_feed_relationship_type.proto deleted file mode 100644 index 503a2d668..000000000 --- a/google/ads/googleads/v4/enums/affiliate_location_feed_relationship_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AffiliateLocationFeedRelationshipTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing relation type for affiliate location feeds. - -// Container for enum describing possible values for a relationship type for -// an affiliate location feed. -message AffiliateLocationFeedRelationshipTypeEnum { - // Possible values for a relationship type for an affiliate location feed. - enum AffiliateLocationFeedRelationshipType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // General retailer relationship. - GENERAL_RETAILER = 2; - } - - -} diff --git a/google/ads/googleads/v4/enums/affiliate_location_placeholder_field.proto b/google/ads/googleads/v4/enums/affiliate_location_placeholder_field.proto deleted file mode 100644 index 743d77ce1..000000000 --- a/google/ads/googleads/v4/enums/affiliate_location_placeholder_field.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AffiliateLocationPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Affiliate Location placeholder fields. - -// Values for Affiliate Location placeholder fields. -message AffiliateLocationPlaceholderFieldEnum { - // Possible values for Affiliate Location placeholder fields. - enum AffiliateLocationPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The name of the business. - BUSINESS_NAME = 2; - - // Data Type: STRING. Line 1 of the business address. - ADDRESS_LINE_1 = 3; - - // Data Type: STRING. Line 2 of the business address. - ADDRESS_LINE_2 = 4; - - // Data Type: STRING. City of the business address. - CITY = 5; - - // Data Type: STRING. Province of the business address. - PROVINCE = 6; - - // Data Type: STRING. Postal code of the business address. - POSTAL_CODE = 7; - - // Data Type: STRING. Country code of the business address. - COUNTRY_CODE = 8; - - // Data Type: STRING. Phone number of the business. - PHONE_NUMBER = 9; - - // Data Type: STRING. Language code of the business. - LANGUAGE_CODE = 10; - - // Data Type: INT64. ID of the chain. - CHAIN_ID = 11; - - // Data Type: STRING. Name of the chain. - CHAIN_NAME = 12; - } - - -} diff --git a/google/ads/googleads/v4/enums/age_range_type.proto b/google/ads/googleads/v4/enums/age_range_type.proto deleted file mode 100644 index 9eaaa2c73..000000000 --- a/google/ads/googleads/v4/enums/age_range_type.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AgeRangeTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing age range types. - -// Container for enum describing the type of demographic age ranges. -message AgeRangeTypeEnum { - // The type of demographic age ranges (e.g. between 18 and 24 years old). - enum AgeRangeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Between 18 and 24 years old. - AGE_RANGE_18_24 = 503001; - - // Between 25 and 34 years old. - AGE_RANGE_25_34 = 503002; - - // Between 35 and 44 years old. - AGE_RANGE_35_44 = 503003; - - // Between 45 and 54 years old. - AGE_RANGE_45_54 = 503004; - - // Between 55 and 64 years old. - AGE_RANGE_55_64 = 503005; - - // 65 years old and beyond. - AGE_RANGE_65_UP = 503006; - - // Undetermined age range. - AGE_RANGE_UNDETERMINED = 503999; - } - - -} diff --git a/google/ads/googleads/v4/enums/app_campaign_app_store.proto b/google/ads/googleads/v4/enums/app_campaign_app_store.proto deleted file mode 100644 index 98e48cb30..000000000 --- a/google/ads/googleads/v4/enums/app_campaign_app_store.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppCampaignAppStoreProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing App Campaign app store. - -// The application store that distributes mobile applications. -message AppCampaignAppStoreEnum { - // Enum describing app campaign app store. - enum AppCampaignAppStore { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Apple app store. - APPLE_APP_STORE = 2; - - // Google play. - GOOGLE_APP_STORE = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/app_campaign_bidding_strategy_goal_type.proto b/google/ads/googleads/v4/enums/app_campaign_bidding_strategy_goal_type.proto deleted file mode 100644 index c8aeadc98..000000000 --- a/google/ads/googleads/v4/enums/app_campaign_bidding_strategy_goal_type.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppCampaignBiddingStrategyGoalTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing App Campaign bidding strategy goal types. - -// Container for enum describing goal towards which the bidding strategy of an -// app campaign should optimize for. -message AppCampaignBiddingStrategyGoalTypeEnum { - // Goal type of App campaign BiddingStrategy. - enum AppCampaignBiddingStrategyGoalType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Aim to maximize the number of app installs. The cpa bid is the - // target cost per install. - OPTIMIZE_INSTALLS_TARGET_INSTALL_COST = 2; - - // Aim to maximize the long term number of selected in-app conversions from - // app installs. The cpa bid is the target cost per install. - OPTIMIZE_IN_APP_CONVERSIONS_TARGET_INSTALL_COST = 3; - - // Aim to maximize the long term number of selected in-app conversions from - // app installs. The cpa bid is the target cost per in-app conversion. Note - // that the actual cpa may seem higher than the target cpa at first, since - // the long term conversions haven’t happened yet. - OPTIMIZE_IN_APP_CONVERSIONS_TARGET_CONVERSION_COST = 4; - - // Aim to maximize all conversions' value, i.e. install + selected in-app - // conversions while achieving or exceeding target return on advertising - // spend. - OPTIMIZE_RETURN_ON_ADVERTISING_SPEND = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/app_payment_model_type.proto b/google/ads/googleads/v4/enums/app_payment_model_type.proto deleted file mode 100644 index f0b6ffe2f..000000000 --- a/google/ads/googleads/v4/enums/app_payment_model_type.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppPaymentModelTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing criteria types. - -// Represents a criterion for targeting paid apps. -message AppPaymentModelTypeEnum { - // Enum describing possible app payment models. - enum AppPaymentModelType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Represents paid-for apps. - PAID = 30; - } - - -} diff --git a/google/ads/googleads/v4/enums/app_placeholder_field.proto b/google/ads/googleads/v4/enums/app_placeholder_field.proto deleted file mode 100644 index d5ed84f99..000000000 --- a/google/ads/googleads/v4/enums/app_placeholder_field.proto +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing App placeholder fields. - -// Values for App placeholder fields. -message AppPlaceholderFieldEnum { - // Possible values for App placeholder fields. - enum AppPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: INT64. The application store that the target application - // belongs to. Valid values are: 1 = Apple iTunes Store; 2 = Google Play - // Store. - STORE = 2; - - // Data Type: STRING. The store-specific ID for the target application. - ID = 3; - - // Data Type: STRING. The visible text displayed when the link is rendered - // in an ad. - LINK_TEXT = 4; - - // Data Type: STRING. The destination URL of the in-app link. - URL = 5; - - // Data Type: URL_LIST. Final URLs for the in-app link when using Upgraded - // URLs. - FINAL_URLS = 6; - - // Data Type: URL_LIST. Final Mobile URLs for the in-app link when using - // Upgraded URLs. - FINAL_MOBILE_URLS = 7; - - // Data Type: URL. Tracking template for the in-app link when using Upgraded - // URLs. - TRACKING_URL = 8; - - // Data Type: STRING. Final URL suffix for the in-app link when using - // parallel tracking. - FINAL_URL_SUFFIX = 9; - } - - -} diff --git a/google/ads/googleads/v4/enums/app_store.proto b/google/ads/googleads/v4/enums/app_store.proto deleted file mode 100644 index f545fe86e..000000000 --- a/google/ads/googleads/v4/enums/app_store.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppStoreProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing app store types for an app extension. - -// Container for enum describing app store type in an app extension. -message AppStoreEnum { - // App store type in an app extension. - enum AppStore { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Apple iTunes. - APPLE_ITUNES = 2; - - // Google Play. - GOOGLE_PLAY = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/app_url_operating_system_type.proto b/google/ads/googleads/v4/enums/app_url_operating_system_type.proto deleted file mode 100644 index 616dc39df..000000000 --- a/google/ads/googleads/v4/enums/app_url_operating_system_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppUrlOperatingSystemTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing operating system for a deeplink app URL. - -// The possible OS types for a deeplink AppUrl. -message AppUrlOperatingSystemTypeEnum { - // Operating System - enum AppUrlOperatingSystemType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The Apple IOS operating system. - IOS = 2; - - // The Android operating system. - ANDROID = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/asset_field_type.proto b/google/ads/googleads/v4/enums/asset_field_type.proto deleted file mode 100644 index a9625a9f1..000000000 --- a/google/ads/googleads/v4/enums/asset_field_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AssetFieldTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing asset type. - -// Container for enum describing the possible placements of an asset. -message AssetFieldTypeEnum { - // Enum describing the possible placements of an asset. - enum AssetFieldType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The asset is linked for use as a headline. - HEADLINE = 2; - - // The asset is linked for use as a description. - DESCRIPTION = 3; - - // The asset is linked for use as mandatory ad text. - MANDATORY_AD_TEXT = 4; - - // The asset is linked for use as a marketing image. - MARKETING_IMAGE = 5; - - // The asset is linked for use as a media bundle. - MEDIA_BUNDLE = 6; - - // The asset is linked for use as a YouTube video. - YOUTUBE_VIDEO = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/asset_performance_label.proto b/google/ads/googleads/v4/enums/asset_performance_label.proto deleted file mode 100644 index bceffe70c..000000000 --- a/google/ads/googleads/v4/enums/asset_performance_label.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AssetPerformanceLabelProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing the performance label of an asset. - -// Container for enum describing the performance label of an asset. -message AssetPerformanceLabelEnum { - // Enum describing the possible performance labels of an asset, usually - // computed in the context of a linkage. - enum AssetPerformanceLabel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // This asset does not yet have any performance informantion. This may be - // because it is still under review. - PENDING = 2; - - // The asset has started getting impressions but the stats are not - // statistically significant enough to get an asset performance label. - LEARNING = 3; - - // Worst performing assets. - LOW = 4; - - // Good performing assets. - GOOD = 5; - - // Best performing assets. - BEST = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/asset_type.proto b/google/ads/googleads/v4/enums/asset_type.proto deleted file mode 100644 index bd8ea3f37..000000000 --- a/google/ads/googleads/v4/enums/asset_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AssetTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing asset type. - -// Container for enum describing the types of asset. -message AssetTypeEnum { - // Enum describing possible types of asset. - enum AssetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // YouTube video asset. - YOUTUBE_VIDEO = 2; - - // Media bundle asset. - MEDIA_BUNDLE = 3; - - // Image asset. - IMAGE = 4; - - // Text asset. - TEXT = 5; - - // Book on Google asset. - BOOK_ON_GOOGLE = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/attribution_model.proto b/google/ads/googleads/v4/enums/attribution_model.proto deleted file mode 100644 index 9e26108fa..000000000 --- a/google/ads/googleads/v4/enums/attribution_model.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AttributionModelProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum representing the attribution model that describes how to -// distribute credit for a particular conversion across potentially many prior -// interactions. -message AttributionModelEnum { - // The attribution model that describes how to distribute credit for a - // particular conversion across potentially many prior interactions. - enum AttributionModel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Uses external attribution. - EXTERNAL = 100; - - // Attributes all credit for a conversion to its last click. - GOOGLE_ADS_LAST_CLICK = 101; - - // Attributes all credit for a conversion to its first click using Google - // Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_FIRST_CLICK = 102; - - // Attributes credit for a conversion equally across all of its clicks using - // Google Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_LINEAR = 103; - - // Attributes exponentially more credit for a conversion to its more recent - // clicks using Google Search attribution (half-life is 1 week). - GOOGLE_SEARCH_ATTRIBUTION_TIME_DECAY = 104; - - // Attributes 40% of the credit for a conversion to its first and last - // clicks. Remaining 20% is evenly distributed across all other clicks. This - // uses Google Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_POSITION_BASED = 105; - - // Flexible model that uses machine learning to determine the appropriate - // distribution of credit among clicks using Google Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN = 106; - } - - -} diff --git a/google/ads/googleads/v4/enums/batch_job_status.proto b/google/ads/googleads/v4/enums/batch_job_status.proto deleted file mode 100644 index daa06ee8a..000000000 --- a/google/ads/googleads/v4/enums/batch_job_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing batch job statuses. - -// Container for enum describing possible batch job statuses. -message BatchJobStatusEnum { - // The batch job statuses. - enum BatchJobStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The job is not currently running. - PENDING = 2; - - // The job is running. - RUNNING = 3; - - // The job is done. - DONE = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/bid_modifier_source.proto b/google/ads/googleads/v4/enums/bid_modifier_source.proto deleted file mode 100644 index 3914dc8fb..000000000 --- a/google/ads/googleads/v4/enums/bid_modifier_source.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BidModifierSourceProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing bid modifier source. - -// Container for enum describing possible bid modifier sources. -message BidModifierSourceEnum { - // Enum describing possible bid modifier sources. - enum BidModifierSource { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The bid modifier is specified at the campaign level, on the campaign - // level criterion. - CAMPAIGN = 2; - - // The bid modifier is specified (overridden) at the ad group level. - AD_GROUP = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/bidding_source.proto b/google/ads/googleads/v4/enums/bidding_source.proto deleted file mode 100644 index bbdfba4ee..000000000 --- a/google/ads/googleads/v4/enums/bidding_source.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BiddingSourceProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing bidding sources. - -// Container for enum describing possible bidding sources. -message BiddingSourceEnum { - // Indicates where a bid or target is defined. For example, an ad group - // criterion may define a cpc bid directly, or it can inherit its cpc bid from - // the ad group. - enum BiddingSource { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Effective bid or target is inherited from campaign bidding strategy. - CAMPAIGN_BIDDING_STRATEGY = 5; - - // The bid or target is defined on the ad group. - AD_GROUP = 6; - - // The bid or target is defined on the ad group criterion. - AD_GROUP_CRITERION = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/bidding_strategy_status.proto b/google/ads/googleads/v4/enums/bidding_strategy_status.proto deleted file mode 100644 index 04596f287..000000000 --- a/google/ads/googleads/v4/enums/bidding_strategy_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing BiddingStrategy statuses. - -// Message describing BiddingStrategy statuses. -message BiddingStrategyStatusEnum { - // The possible statuses of a BiddingStrategy. - enum BiddingStrategyStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The bidding strategy is enabled. - ENABLED = 2; - - // The bidding strategy is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/bidding_strategy_type.proto b/google/ads/googleads/v4/enums/bidding_strategy_type.proto deleted file mode 100644 index c9af30b1d..000000000 --- a/google/ads/googleads/v4/enums/bidding_strategy_type.proto +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing bidding schemes. - -// Container for enum describing possible bidding strategy types. -message BiddingStrategyTypeEnum { - // Enum describing possible bidding strategy types. - enum BiddingStrategyType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Commission is an automatic bidding strategy in which the advertiser pays - // a certain portion of the conversion value. - COMMISSION = 16; - - // Enhanced CPC is a bidding strategy that raises bids for clicks - // that seem more likely to lead to a conversion and lowers - // them for clicks where they seem less likely. - ENHANCED_CPC = 2; - - // Manual click based bidding where user pays per click. - MANUAL_CPC = 3; - - // Manual impression based bidding - // where user pays per thousand impressions. - MANUAL_CPM = 4; - - // A bidding strategy that pays a configurable amount per video view. - MANUAL_CPV = 13; - - // A bidding strategy that automatically maximizes number of conversions - // given a daily budget. - MAXIMIZE_CONVERSIONS = 10; - - // An automated bidding strategy that automatically sets bids to maximize - // revenue while spending your budget. - MAXIMIZE_CONVERSION_VALUE = 11; - - // Page-One Promoted bidding scheme, which sets max cpc bids to - // target impressions on page one or page one promoted slots on google.com. - // This enum value is deprecated. - PAGE_ONE_PROMOTED = 5; - - // Percent Cpc is bidding strategy where bids are a fraction of the - // advertised price for some good or service. - PERCENT_CPC = 12; - - // Target CPA is an automated bid strategy that sets bids - // to help get as many conversions as possible - // at the target cost-per-acquisition (CPA) you set. - TARGET_CPA = 6; - - // Target CPM is an automated bid strategy that sets bids to help get - // as many impressions as possible at the target cost per one thousand - // impressions (CPM) you set. - TARGET_CPM = 14; - - // An automated bidding strategy that sets bids so that a certain percentage - // of search ads are shown at the top of the first page (or other targeted - // location). - TARGET_IMPRESSION_SHARE = 15; - - // Target Outrank Share is an automated bidding strategy that sets bids - // based on the target fraction of auctions where the advertiser - // should outrank a specific competitor. - // This enum value is deprecated. - TARGET_OUTRANK_SHARE = 7; - - // Target ROAS is an automated bidding strategy - // that helps you maximize revenue while averaging - // a specific target Return On Average Spend (ROAS). - TARGET_ROAS = 8; - - // Target Spend is an automated bid strategy that sets your bids - // to help get as many clicks as possible within your budget. - TARGET_SPEND = 9; - } - - -} diff --git a/google/ads/googleads/v4/enums/billing_setup_status.proto b/google/ads/googleads/v4/enums/billing_setup_status.proto deleted file mode 100644 index 393b95130..000000000 --- a/google/ads/googleads/v4/enums/billing_setup_status.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing BillingSetup statuses. - -// Message describing BillingSetup statuses. -message BillingSetupStatusEnum { - // The possible statuses of a BillingSetup. - enum BillingSetupStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The billing setup is pending approval. - PENDING = 2; - - // The billing setup has been approved but the corresponding first budget - // has not. This can only occur for billing setups configured for monthly - // invoicing. - APPROVED_HELD = 3; - - // The billing setup has been approved. - APPROVED = 4; - - // The billing setup was cancelled by the user prior to approval. - CANCELLED = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/brand_safety_suitability.proto b/google/ads/googleads/v4/enums/brand_safety_suitability.proto deleted file mode 100644 index e7a283e62..000000000 --- a/google/ads/googleads/v4/enums/brand_safety_suitability.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BrandSafetySuitabilityProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing brand safety suitability settings. - -// Container for enum with 3-Tier brand safety suitability control. -message BrandSafetySuitabilityEnum { - // 3-Tier brand safety suitability control. - enum BrandSafetySuitability { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // This option lets you show ads across all inventory on YouTube and video - // partners that meet our standards for monetization. This option may be an - // appropriate choice for brands that want maximum access to the full - // breadth of videos eligible for ads, including, for example, videos that - // have strong profanity in the context of comedy or a documentary, or - // excessive violence as featured in video games. - EXPANDED_INVENTORY = 2; - - // This option lets you show ads across a wide range of content that's - // appropriate for most brands, such as popular music videos, documentaries, - // and movie trailers. The content you can show ads on is based on YouTube's - // advertiser-friendly content guidelines that take into account, for - // example, the strength or frequency of profanity, or the appropriateness - // of subject matter like sensitive events. Ads won't show, for example, on - // content with repeated strong profanity, strong sexual content, or graphic - // violence. - STANDARD_INVENTORY = 3; - - // This option lets you show ads on a reduced range of content that's - // appropriate for brands with particularly strict guidelines around - // inappropriate language and sexual suggestiveness; above and beyond what - // YouTube's advertiser-friendly content guidelines address. The videos - // accessible in this sensitive category meet heightened requirements, - // especially for inappropriate language and sexual suggestiveness. For - // example, your ads will be excluded from showing on some of YouTube's most - // popular music videos and other pop culture content across YouTube and - // Google video partners. - LIMITED_INVENTORY = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/budget_delivery_method.proto b/google/ads/googleads/v4/enums/budget_delivery_method.proto deleted file mode 100644 index 82c847aad..000000000 --- a/google/ads/googleads/v4/enums/budget_delivery_method.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetDeliveryMethodProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Budget delivery methods. - -// Message describing Budget delivery methods. A delivery method determines the -// rate at which the Budget is spent. -message BudgetDeliveryMethodEnum { - // Possible delivery methods of a Budget. - enum BudgetDeliveryMethod { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The budget server will throttle serving evenly across - // the entire time period. - STANDARD = 2; - - // The budget server will not throttle serving, - // and ads will serve as fast as possible. - ACCELERATED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/budget_period.proto b/google/ads/googleads/v4/enums/budget_period.proto deleted file mode 100644 index 6c7f8b113..000000000 --- a/google/ads/googleads/v4/enums/budget_period.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetPeriodProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Budget delivery methods. - -// Message describing Budget period. -message BudgetPeriodEnum { - // Possible period of a Budget. - enum BudgetPeriod { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Daily budget. - DAILY = 2; - } - - -} diff --git a/google/ads/googleads/v4/enums/budget_status.proto b/google/ads/googleads/v4/enums/budget_status.proto deleted file mode 100644 index fe8c9f749..000000000 --- a/google/ads/googleads/v4/enums/budget_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Budget statuses - -// Message describing a Budget status -message BudgetStatusEnum { - // Possible statuses of a Budget. - enum BudgetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Budget is enabled. - ENABLED = 2; - - // Budget is removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/budget_type.proto b/google/ads/googleads/v4/enums/budget_type.proto deleted file mode 100644 index 2ff9f60eb..000000000 --- a/google/ads/googleads/v4/enums/budget_type.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Budget types. - -// Describes Budget types. -message BudgetTypeEnum { - // Possible Budget types. - enum BudgetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Budget type for standard Google Ads usage. - // Caps daily spend at two times the specified budget amount. - // Full details: https://support.google.com/google-ads/answer/6385083 - STANDARD = 2; - - // Budget type for Hotels Ads commission program. - // Full details: https://support.google.com/google-ads/answer/9243945 - // - // This type is only supported by campaigns with - // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION and - // PaymentMode.CONVERSION_VALUE. - HOTEL_ADS_COMMISSION = 3; - - // Budget type with a fixed cost-per-acquisition (conversion). - // Full details: https://support.google.com/google-ads/answer/7528254 - // - // This type is only supported by campaigns with - // AdvertisingChannelType.DISPLAY (excluding - // AdvertisingChannelSubType.DISPLAY_GMAIL), - // BiddingStrategyType.TARGET_CPA and PaymentMode.CONVERSIONS. - FIXED_CPA = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/call_conversion_reporting_state.proto b/google/ads/googleads/v4/enums/call_conversion_reporting_state.proto deleted file mode 100644 index d8a90a3e7..000000000 --- a/google/ads/googleads/v4/enums/call_conversion_reporting_state.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CallConversionReportingStateProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing call conversion reporting state. - -// Container for enum describing possible data types for call conversion -// reporting state. -message CallConversionReportingStateEnum { - // Possible data types for a call conversion action state. - enum CallConversionReportingState { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Call conversion action is disabled. - DISABLED = 2; - - // Call conversion action will use call conversion type set at the - // account level. - USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION = 3; - - // Call conversion action will use call conversion type set at the resource - // (call only ads/call extensions) level. - USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/call_placeholder_field.proto b/google/ads/googleads/v4/enums/call_placeholder_field.proto deleted file mode 100644 index 79e4bfafc..000000000 --- a/google/ads/googleads/v4/enums/call_placeholder_field.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CallPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Call placeholder fields. - -// Values for Call placeholder fields. -message CallPlaceholderFieldEnum { - // Possible values for Call placeholder fields. - enum CallPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The advertiser's phone number to append to the ad. - PHONE_NUMBER = 2; - - // Data Type: STRING. Uppercase two-letter country code of the advertiser's - // phone number. - COUNTRY_CODE = 3; - - // Data Type: BOOLEAN. Indicates whether call tracking is enabled. Default: - // true. - TRACKED = 4; - - // Data Type: INT64. The ID of an AdCallMetricsConversion object. This - // object contains the phoneCallDurationfield which is the minimum duration - // (in seconds) of a call to be considered a conversion. - CONVERSION_TYPE_ID = 5; - - // Data Type: STRING. Indicates whether this call extension uses its own - // call conversion setting or follows the account level setting. - // Valid values are: USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION and - // USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION. - CONVERSION_REPORTING_STATE = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/callout_placeholder_field.proto b/google/ads/googleads/v4/enums/callout_placeholder_field.proto deleted file mode 100644 index 204063066..000000000 --- a/google/ads/googleads/v4/enums/callout_placeholder_field.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CalloutPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Callout placeholder fields. - -// Values for Callout placeholder fields. -message CalloutPlaceholderFieldEnum { - // Possible values for Callout placeholder fields. - enum CalloutPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Callout text. - CALLOUT_TEXT = 2; - } - - -} diff --git a/google/ads/googleads/v4/enums/campaign_criterion_status.proto b/google/ads/googleads/v4/enums/campaign_criterion_status.proto deleted file mode 100644 index ec4f7bfac..000000000 --- a/google/ads/googleads/v4/enums/campaign_criterion_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing CampaignCriterion statuses. - -// Message describing CampaignCriterion statuses. -message CampaignCriterionStatusEnum { - // The possible statuses of a CampaignCriterion. - enum CampaignCriterionStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The campaign criterion is enabled. - ENABLED = 2; - - // The campaign criterion is paused. - PAUSED = 3; - - // The campaign criterion is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/campaign_draft_status.proto b/google/ads/googleads/v4/enums/campaign_draft_status.proto deleted file mode 100644 index eabdd359f..000000000 --- a/google/ads/googleads/v4/enums/campaign_draft_status.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing campaign draft status. - -// Container for enum describing possible statuses of a campaign draft. -message CampaignDraftStatusEnum { - // Possible statuses of a campaign draft. - enum CampaignDraftStatus { - // The status has not been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Initial state of the draft, the advertiser can start adding changes with - // no effect on serving. - PROPOSED = 2; - - // The campaign draft is removed. - REMOVED = 3; - - // Advertiser requested to promote draft's changes back into the original - // campaign. Advertiser can poll the long running operation returned by - // the promote action to see the status of the promotion. - PROMOTING = 5; - - // The process to merge changes in the draft back to the original campaign - // has completed successfully. - PROMOTED = 4; - - // The promotion failed after it was partially applied. Promote cannot be - // attempted again safely, so the issue must be corrected in the original - // campaign. - PROMOTE_FAILED = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/campaign_experiment_status.proto b/google/ads/googleads/v4/enums/campaign_experiment_status.proto deleted file mode 100644 index 7b3d3723a..000000000 --- a/google/ads/googleads/v4/enums/campaign_experiment_status.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing campaign experiment status. - -// Container for enum describing possible statuses of a campaign experiment. -message CampaignExperimentStatusEnum { - // Possible statuses of a campaign experiment. - enum CampaignExperimentStatus { - // The status has not been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The experiment campaign is being initialized. - INITIALIZING = 2; - - // Initialization of the experiment campaign failed. - INITIALIZATION_FAILED = 8; - - // The experiment campaign is fully initialized. The experiment is currently - // running, scheduled to run in the future or has ended based on its - // end date. An experiment with the status INITIALIZING will be updated to - // ENABLED when it is fully created. - ENABLED = 3; - - // The experiment campaign was graduated to a stand-alone - // campaign, existing independently of the experiment. - GRADUATED = 4; - - // The experiment is removed. - REMOVED = 5; - - // The experiment's changes are being applied to the original campaign. - // The long running operation returned by the promote method can be polled - // to see the status of the promotion. - PROMOTING = 6; - - // Promote of the experiment campaign failed. - PROMOTION_FAILED = 9; - - // The changes of the experiment are promoted to their original campaign. - PROMOTED = 7; - - // The experiment was ended manually. It did not end based on its end date. - ENDED_MANUALLY = 10; - } - - -} diff --git a/google/ads/googleads/v4/enums/campaign_experiment_traffic_split_type.proto b/google/ads/googleads/v4/enums/campaign_experiment_traffic_split_type.proto deleted file mode 100644 index 3f8207312..000000000 --- a/google/ads/googleads/v4/enums/campaign_experiment_traffic_split_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentTrafficSplitTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing campaign experiment traffic split type. - -// Container for enum describing campaign experiment traffic split type. -message CampaignExperimentTrafficSplitTypeEnum { - // Enum of strategies for splitting traffic between base and experiment - // campaigns in campaign experiment. - enum CampaignExperimentTrafficSplitType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Traffic is randomly assigned to the base or experiment arm for each - // query, independent of previous assignments for the same user. - RANDOM_QUERY = 2; - - // Traffic is split using cookies to keep users in the same arm (base or - // experiment) of the experiment. - COOKIE = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/campaign_experiment_type.proto b/google/ads/googleads/v4/enums/campaign_experiment_type.proto deleted file mode 100644 index 3bc90aa84..000000000 --- a/google/ads/googleads/v4/enums/campaign_experiment_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing campaign experiment type. - -// Container for enum describing campaign experiment type. -message CampaignExperimentTypeEnum { - // Indicates if this campaign is a normal campaign, - // a draft campaign, or an experiment campaign. - enum CampaignExperimentType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // This is a regular campaign. - BASE = 2; - - // This is a draft version of a campaign. - // It has some modifications from a base campaign, - // but it does not serve or accrue metrics. - DRAFT = 3; - - // This is an experiment version of a campaign. - // It has some modifications from a base campaign, - // and a percentage of traffic is being diverted - // from the BASE campaign to this experiment campaign. - EXPERIMENT = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/campaign_serving_status.proto b/google/ads/googleads/v4/enums/campaign_serving_status.proto deleted file mode 100644 index 15f171560..000000000 --- a/google/ads/googleads/v4/enums/campaign_serving_status.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignServingStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Campaign serving statuses. - -// Message describing Campaign serving statuses. -message CampaignServingStatusEnum { - // Possible serving statuses of a campaign. - enum CampaignServingStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Serving. - SERVING = 2; - - // None. - NONE = 3; - - // Ended. - ENDED = 4; - - // Pending. - PENDING = 5; - - // Suspended. - SUSPENDED = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/campaign_shared_set_status.proto b/google/ads/googleads/v4/enums/campaign_shared_set_status.proto deleted file mode 100644 index dda25edc5..000000000 --- a/google/ads/googleads/v4/enums/campaign_shared_set_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing campaign shared set statuses. - -// Container for enum describing types of campaign shared set statuses. -message CampaignSharedSetStatusEnum { - // Enum listing the possible campaign shared set statuses. - enum CampaignSharedSetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The campaign shared set is enabled. - ENABLED = 2; - - // The campaign shared set is removed and can no longer be used. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/campaign_status.proto b/google/ads/googleads/v4/enums/campaign_status.proto deleted file mode 100644 index 4a4fba5aa..000000000 --- a/google/ads/googleads/v4/enums/campaign_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing campaign status. - -// Container for enum describing possible statuses of a campaign. -message CampaignStatusEnum { - // Possible statuses of a campaign. - enum CampaignStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Campaign is currently serving ads depending on budget information. - ENABLED = 2; - - // Campaign has been paused by the user. - PAUSED = 3; - - // Campaign has been removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/change_status_operation.proto b/google/ads/googleads/v4/enums/change_status_operation.proto deleted file mode 100644 index 0cedd17c0..000000000 --- a/google/ads/googleads/v4/enums/change_status_operation.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusOperationProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing the change status operations. - -// Container for enum describing operations for the ChangeStatus resource. -message ChangeStatusOperationEnum { - // Status of the changed resource - enum ChangeStatusOperation { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents an unclassified resource unknown - // in this version. - UNKNOWN = 1; - - // The resource was created. - ADDED = 2; - - // The resource was modified. - CHANGED = 3; - - // The resource was removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/change_status_resource_type.proto b/google/ads/googleads/v4/enums/change_status_resource_type.proto deleted file mode 100644 index ed5df0702..000000000 --- a/google/ads/googleads/v4/enums/change_status_resource_type.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusResourceTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing the resource types the ChangeStatus resource supports. - -// Container for enum describing supported resource types for the ChangeStatus -// resource. -message ChangeStatusResourceTypeEnum { - // Enum listing the resource types support by the ChangeStatus resource. - enum ChangeStatusResourceType { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents an unclassified resource unknown - // in this version. - UNKNOWN = 1; - - // An AdGroup resource change. - AD_GROUP = 3; - - // An AdGroupAd resource change. - AD_GROUP_AD = 4; - - // An AdGroupCriterion resource change. - AD_GROUP_CRITERION = 5; - - // A Campaign resource change. - CAMPAIGN = 6; - - // A CampaignCriterion resource change. - CAMPAIGN_CRITERION = 7; - - // A Feed resource change. - FEED = 9; - - // A FeedItem resource change. - FEED_ITEM = 10; - - // An AdGroupFeed resource change. - AD_GROUP_FEED = 11; - - // A CampaignFeed resource change. - CAMPAIGN_FEED = 12; - - // An AdGroupBidModifier resource change. - AD_GROUP_BID_MODIFIER = 13; - } - - -} diff --git a/google/ads/googleads/v4/enums/click_type.proto b/google/ads/googleads/v4/enums/click_type.proto deleted file mode 100644 index 7e77f00f8..000000000 --- a/google/ads/googleads/v4/enums/click_type.proto +++ /dev/null @@ -1,203 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ClickTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing click types. - -// Container for enumeration of Google Ads click types. -message ClickTypeEnum { - // Enumerates Google Ads click types. - enum ClickType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // App engagement ad deep link. - APP_DEEPLINK = 2; - - // Breadcrumbs. - BREADCRUMBS = 3; - - // Broadband Plan. - BROADBAND_PLAN = 4; - - // Manually dialed phone calls. - CALL_TRACKING = 5; - - // Phone calls. - CALLS = 6; - - // Click on engagement ad. - CLICK_ON_ENGAGEMENT_AD = 7; - - // Driving direction. - GET_DIRECTIONS = 8; - - // Get location details. - LOCATION_EXPANSION = 9; - - // Call. - LOCATION_FORMAT_CALL = 10; - - // Directions. - LOCATION_FORMAT_DIRECTIONS = 11; - - // Image(s). - LOCATION_FORMAT_IMAGE = 12; - - // Go to landing page. - LOCATION_FORMAT_LANDING_PAGE = 13; - - // Map. - LOCATION_FORMAT_MAP = 14; - - // Go to store info. - LOCATION_FORMAT_STORE_INFO = 15; - - // Text. - LOCATION_FORMAT_TEXT = 16; - - // Mobile phone calls. - MOBILE_CALL_TRACKING = 17; - - // Print offer. - OFFER_PRINTS = 18; - - // Other. - OTHER = 19; - - // Product plusbox offer. - PRODUCT_EXTENSION_CLICKS = 20; - - // Shopping - Product - Online. - PRODUCT_LISTING_AD_CLICKS = 21; - - // Sitelink. - SITELINKS = 22; - - // Show nearby locations. - STORE_LOCATOR = 23; - - // Headline. - URL_CLICKS = 25; - - // App store. - VIDEO_APP_STORE_CLICKS = 26; - - // Call-to-Action overlay. - VIDEO_CALL_TO_ACTION_CLICKS = 27; - - // Cards. - VIDEO_CARD_ACTION_HEADLINE_CLICKS = 28; - - // End cap. - VIDEO_END_CAP_CLICKS = 29; - - // Website. - VIDEO_WEBSITE_CLICKS = 30; - - // Visual Sitelinks. - VISUAL_SITELINKS = 31; - - // Wireless Plan. - WIRELESS_PLAN = 32; - - // Shopping - Product - Local. - PRODUCT_LISTING_AD_LOCAL = 33; - - // Shopping - Product - MultiChannel Local. - PRODUCT_LISTING_AD_MULTICHANNEL_LOCAL = 34; - - // Shopping - Product - MultiChannel Online. - PRODUCT_LISTING_AD_MULTICHANNEL_ONLINE = 35; - - // Shopping - Product - Coupon. - PRODUCT_LISTING_ADS_COUPON = 36; - - // Shopping - Product - Sell on Google. - PRODUCT_LISTING_AD_TRANSACTABLE = 37; - - // Shopping - Product - App engagement ad deep link. - PRODUCT_AD_APP_DEEPLINK = 38; - - // Shopping - Showcase - Category. - SHOWCASE_AD_CATEGORY_LINK = 39; - - // Shopping - Showcase - Local storefront. - SHOWCASE_AD_LOCAL_STOREFRONT_LINK = 40; - - // Shopping - Showcase - Online product. - SHOWCASE_AD_ONLINE_PRODUCT_LINK = 42; - - // Shopping - Showcase - Local product. - SHOWCASE_AD_LOCAL_PRODUCT_LINK = 43; - - // Promotion Extension. - PROMOTION_EXTENSION = 44; - - // Ad Headline. - SWIPEABLE_GALLERY_AD_HEADLINE = 45; - - // Swipes. - SWIPEABLE_GALLERY_AD_SWIPES = 46; - - // See More. - SWIPEABLE_GALLERY_AD_SEE_MORE = 47; - - // Sitelink 1. - SWIPEABLE_GALLERY_AD_SITELINK_ONE = 48; - - // Sitelink 2. - SWIPEABLE_GALLERY_AD_SITELINK_TWO = 49; - - // Sitelink 3. - SWIPEABLE_GALLERY_AD_SITELINK_THREE = 50; - - // Sitelink 4. - SWIPEABLE_GALLERY_AD_SITELINK_FOUR = 51; - - // Sitelink 5. - SWIPEABLE_GALLERY_AD_SITELINK_FIVE = 52; - - // Hotel price. - HOTEL_PRICE = 53; - - // Price Extension. - PRICE_EXTENSION = 54; - - // Book on Google hotel room selection. - HOTEL_BOOK_ON_GOOGLE_ROOM_SELECTION = 55; - - // Shopping - Comparison Listing. - SHOPPING_COMPARISON_LISTING = 56; - } - - -} diff --git a/google/ads/googleads/v4/enums/content_label_type.proto b/google/ads/googleads/v4/enums/content_label_type.proto deleted file mode 100644 index 012097c4e..000000000 --- a/google/ads/googleads/v4/enums/content_label_type.proto +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ContentLabelTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing content label types. - -// Container for enum describing content label types in ContentLabel. -message ContentLabelTypeEnum { - // Enum listing the content label types supported by ContentLabel criterion. - enum ContentLabelType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Sexually suggestive content. - SEXUALLY_SUGGESTIVE = 2; - - // Below the fold placement. - BELOW_THE_FOLD = 3; - - // Parked domain. - PARKED_DOMAIN = 4; - - // Juvenile, gross & bizarre content. - JUVENILE = 6; - - // Profanity & rough language. - PROFANITY = 7; - - // Death & tragedy. - TRAGEDY = 8; - - // Video. - VIDEO = 9; - - // Content rating: G. - VIDEO_RATING_DV_G = 10; - - // Content rating: PG. - VIDEO_RATING_DV_PG = 11; - - // Content rating: T. - VIDEO_RATING_DV_T = 12; - - // Content rating: MA. - VIDEO_RATING_DV_MA = 13; - - // Content rating: not yet rated. - VIDEO_NOT_YET_RATED = 14; - - // Embedded video. - EMBEDDED_VIDEO = 15; - - // Live streaming video. - LIVE_STREAMING_VIDEO = 16; - - // Sensitive social issues. - SOCIAL_ISSUES = 17; - } - - -} diff --git a/google/ads/googleads/v4/enums/conversion_action_category.proto b/google/ads/googleads/v4/enums/conversion_action_category.proto deleted file mode 100644 index f2867e3f0..000000000 --- a/google/ads/googleads/v4/enums/conversion_action_category.proto +++ /dev/null @@ -1,106 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionCategoryProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum describing the category of conversions that are associated -// with a ConversionAction. -message ConversionActionCategoryEnum { - // The category of conversions that are associated with a ConversionAction. - enum ConversionActionCategory { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Default category. - DEFAULT = 2; - - // User visiting a page. - PAGE_VIEW = 3; - - // Purchase, sales, or "order placed" event. - PURCHASE = 4; - - // Signup user action. - SIGNUP = 5; - - // Lead-generating action. - LEAD = 6; - - // Software download action (as for an app). - DOWNLOAD = 7; - - // The addition of items to a shopping cart or bag on an advertiser site. - ADD_TO_CART = 8; - - // When someone enters the checkout flow on an advertiser site. - BEGIN_CHECKOUT = 9; - - // The start of a paid subscription for a product or service. - SUBSCRIBE_PAID = 10; - - // A call to indicate interest in an advertiser's offering. - PHONE_CALL_LEAD = 11; - - // A lead conversion imported from an external source into Google Ads. - IMPORTED_LEAD = 12; - - // A submission of a form on an advertiser site indicating business - // interest. - SUBMIT_LEAD_FORM = 13; - - // A booking of an appointment with an advertiser's business. - BOOK_APPOINTMENT = 14; - - // A quote or price estimate request. - REQUEST_QUOTE = 15; - - // A search for an advertiser's business location with intention to visit. - GET_DIRECTIONS = 16; - - // A click to an advertiser's partner's site. - OUTBOUND_CLICK = 17; - - // A call, SMS, email, chat or other type of contact to an advertiser. - CONTACT = 18; - - // A website engagement event such as long site time or a Google Analytics - // (GA) Smart Goal. Intended to be used for GA, Firebase, GA Gold goal - // imports. - ENGAGEMENT = 19; - - // A visit to a physical store location. - STORE_VISIT = 20; - - // A sale occurring in a physical store. - STORE_SALE = 21; - } - - -} diff --git a/google/ads/googleads/v4/enums/conversion_action_counting_type.proto b/google/ads/googleads/v4/enums/conversion_action_counting_type.proto deleted file mode 100644 index 53e961e52..000000000 --- a/google/ads/googleads/v4/enums/conversion_action_counting_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionCountingTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing conversion action counting type. - -// Container for enum describing the conversion deduplication mode for -// conversion optimizer. -message ConversionActionCountingTypeEnum { - // Indicates how conversions for this action will be counted. For more - // information, see https://support.google.com/google-ads/answer/3438531. - enum ConversionActionCountingType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Count only one conversion per click. - ONE_PER_CLICK = 2; - - // Count all conversions per click. - MANY_PER_CLICK = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/conversion_action_status.proto b/google/ads/googleads/v4/enums/conversion_action_status.proto deleted file mode 100644 index d59454f5e..000000000 --- a/google/ads/googleads/v4/enums/conversion_action_status.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing conversion action status. - -// Container for enum describing possible statuses of a conversion action. -message ConversionActionStatusEnum { - // Possible statuses of a conversion action. - enum ConversionActionStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversions will be recorded. - ENABLED = 2; - - // Conversions will not be recorded. - REMOVED = 3; - - // Conversions will not be recorded and the conversion action will not - // appear in the UI. - HIDDEN = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/conversion_action_type.proto b/google/ads/googleads/v4/enums/conversion_action_type.proto deleted file mode 100644 index 7e15a66e4..000000000 --- a/google/ads/googleads/v4/enums/conversion_action_type.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing conversion action type. - -// Container for enum describing possible types of a conversion action. -message ConversionActionTypeEnum { - // Possible types of a conversion action. - enum ConversionActionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversions that occur when a user clicks on an ad's call extension. - AD_CALL = 2; - - // Conversions that occur when a user on a mobile device clicks a phone - // number. - CLICK_TO_CALL = 3; - - // Conversions that occur when a user downloads a mobile app from the Google - // Play Store. - GOOGLE_PLAY_DOWNLOAD = 4; - - // Conversions that occur when a user makes a purchase in an app through - // Android billing. - GOOGLE_PLAY_IN_APP_PURCHASE = 5; - - // Call conversions that are tracked by the advertiser and uploaded. - UPLOAD_CALLS = 6; - - // Conversions that are tracked by the advertiser and uploaded with - // attributed clicks. - UPLOAD_CLICKS = 7; - - // Conversions that occur on a webpage. - WEBPAGE = 8; - - // Conversions that occur when a user calls a dynamically-generated phone - // number from an advertiser's website. - WEBSITE_CALL = 9; - - // Store Sales conversion based on first-party or third-party merchant - // data uploads. - // Only customers on the allowlist can use store sales direct upload types. - STORE_SALES_DIRECT_UPLOAD = 10; - - // Store Sales conversion based on first-party or third-party merchant - // data uploads and/or from in-store purchases using cards from payment - // networks. - // Only customers on the allowlist can use store sales types. - STORE_SALES = 11; - - // Android app first open conversions tracked via Firebase. - FIREBASE_ANDROID_FIRST_OPEN = 12; - - // Android app in app purchase conversions tracked via Firebase. - FIREBASE_ANDROID_IN_APP_PURCHASE = 13; - - // Android app custom conversions tracked via Firebase. - FIREBASE_ANDROID_CUSTOM = 14; - - // iOS app first open conversions tracked via Firebase. - FIREBASE_IOS_FIRST_OPEN = 15; - - // iOS app in app purchase conversions tracked via Firebase. - FIREBASE_IOS_IN_APP_PURCHASE = 16; - - // iOS app custom conversions tracked via Firebase. - FIREBASE_IOS_CUSTOM = 17; - - // Android app first open conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_ANDROID_FIRST_OPEN = 18; - - // Android app in app purchase conversions tracked via Third Party App - // Analytics. - THIRD_PARTY_APP_ANALYTICS_ANDROID_IN_APP_PURCHASE = 19; - - // Android app custom conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_ANDROID_CUSTOM = 20; - - // iOS app first open conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_IOS_FIRST_OPEN = 21; - - // iOS app in app purchase conversions tracked via Third Party App - // Analytics. - THIRD_PARTY_APP_ANALYTICS_IOS_IN_APP_PURCHASE = 22; - - // iOS app custom conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_IOS_CUSTOM = 23; - } - - -} diff --git a/google/ads/googleads/v4/enums/conversion_adjustment_type.proto b/google/ads/googleads/v4/enums/conversion_adjustment_type.proto deleted file mode 100644 index 828dbca0a..000000000 --- a/google/ads/googleads/v4/enums/conversion_adjustment_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAdjustmentTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing conversion adjustment type. - -// Container for enum describing conversion adjustment types. -message ConversionAdjustmentTypeEnum { - // The different actions advertisers can take to adjust the conversions that - // they already reported. Retractions negate a conversion. Restatements change - // the value of a conversion. - enum ConversionAdjustmentType { - // Not specified. - UNSPECIFIED = 0; - - // Represents value unknown in this version. - UNKNOWN = 1; - - // Negates a conversion so that its total value and count are both zero. - RETRACTION = 2; - - // Changes the value of a conversion. - RESTATEMENT = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/conversion_attribution_event_type.proto b/google/ads/googleads/v4/enums/conversion_attribution_event_type.proto deleted file mode 100644 index 6defd4f7f..000000000 --- a/google/ads/googleads/v4/enums/conversion_attribution_event_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAttributionEventTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum indicating the event type the conversion is attributed to. -message ConversionAttributionEventTypeEnum { - // The event type of conversions that are attributed to. - enum ConversionAttributionEventType { - // Not specified. - UNSPECIFIED = 0; - - // Represents value unknown in this version. - UNKNOWN = 1; - - // The conversion is attributed to an impression. - IMPRESSION = 2; - - // The conversion is attributed to an interaction. - INTERACTION = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/conversion_lag_bucket.proto b/google/ads/googleads/v4/enums/conversion_lag_bucket.proto deleted file mode 100644 index 010df9350..000000000 --- a/google/ads/googleads/v4/enums/conversion_lag_bucket.proto +++ /dev/null @@ -1,117 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionLagBucketProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum representing the number of days between impression and -// conversion. -message ConversionLagBucketEnum { - // Enum representing the number of days between impression and conversion. - enum ConversionLagBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversion lag bucket from 0 to 1 day. 0 day is included, 1 day is not. - LESS_THAN_ONE_DAY = 2; - - // Conversion lag bucket from 1 to 2 days. 1 day is included, 2 days is not. - ONE_TO_TWO_DAYS = 3; - - // Conversion lag bucket from 2 to 3 days. 2 days is included, - // 3 days is not. - TWO_TO_THREE_DAYS = 4; - - // Conversion lag bucket from 3 to 4 days. 3 days is included, - // 4 days is not. - THREE_TO_FOUR_DAYS = 5; - - // Conversion lag bucket from 4 to 5 days. 4 days is included, - // 5 days is not. - FOUR_TO_FIVE_DAYS = 6; - - // Conversion lag bucket from 5 to 6 days. 5 days is included, - // 6 days is not. - FIVE_TO_SIX_DAYS = 7; - - // Conversion lag bucket from 6 to 7 days. 6 days is included, - // 7 days is not. - SIX_TO_SEVEN_DAYS = 8; - - // Conversion lag bucket from 7 to 8 days. 7 days is included, - // 8 days is not. - SEVEN_TO_EIGHT_DAYS = 9; - - // Conversion lag bucket from 8 to 9 days. 8 days is included, - // 9 days is not. - EIGHT_TO_NINE_DAYS = 10; - - // Conversion lag bucket from 9 to 10 days. 9 days is included, - // 10 days is not. - NINE_TO_TEN_DAYS = 11; - - // Conversion lag bucket from 10 to 11 days. 10 days is included, - // 11 days is not. - TEN_TO_ELEVEN_DAYS = 12; - - // Conversion lag bucket from 11 to 12 days. 11 days is included, - // 12 days is not. - ELEVEN_TO_TWELVE_DAYS = 13; - - // Conversion lag bucket from 12 to 13 days. 12 days is included, - // 13 days is not. - TWELVE_TO_THIRTEEN_DAYS = 14; - - // Conversion lag bucket from 13 to 14 days. 13 days is included, - // 14 days is not. - THIRTEEN_TO_FOURTEEN_DAYS = 15; - - // Conversion lag bucket from 14 to 21 days. 14 days is included, - // 21 days is not. - FOURTEEN_TO_TWENTY_ONE_DAYS = 16; - - // Conversion lag bucket from 21 to 30 days. 21 days is included, - // 30 days is not. - TWENTY_ONE_TO_THIRTY_DAYS = 17; - - // Conversion lag bucket from 30 to 45 days. 30 days is included, - // 45 days is not. - THIRTY_TO_FORTY_FIVE_DAYS = 18; - - // Conversion lag bucket from 45 to 60 days. 45 days is included, - // 60 days is not. - FORTY_FIVE_TO_SIXTY_DAYS = 19; - - // Conversion lag bucket from 60 to 90 days. 60 days is included, - // 90 days is not. - SIXTY_TO_NINETY_DAYS = 20; - } - - -} diff --git a/google/ads/googleads/v4/enums/conversion_or_adjustment_lag_bucket.proto b/google/ads/googleads/v4/enums/conversion_or_adjustment_lag_bucket.proto deleted file mode 100644 index 15c5b289d..000000000 --- a/google/ads/googleads/v4/enums/conversion_or_adjustment_lag_bucket.proto +++ /dev/null @@ -1,206 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionOrAdjustmentLagBucketProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum representing the number of days between the impression and -// the conversion or between the impression and adjustments to the conversion. -message ConversionOrAdjustmentLagBucketEnum { - // Enum representing the number of days between the impression and the - // conversion or between the impression and adjustments to the conversion. - enum ConversionOrAdjustmentLagBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversion lag bucket from 0 to 1 day. 0 day is included, 1 day is not. - CONVERSION_LESS_THAN_ONE_DAY = 2; - - // Conversion lag bucket from 1 to 2 days. 1 day is included, 2 days is not. - CONVERSION_ONE_TO_TWO_DAYS = 3; - - // Conversion lag bucket from 2 to 3 days. 2 days is included, - // 3 days is not. - CONVERSION_TWO_TO_THREE_DAYS = 4; - - // Conversion lag bucket from 3 to 4 days. 3 days is included, - // 4 days is not. - CONVERSION_THREE_TO_FOUR_DAYS = 5; - - // Conversion lag bucket from 4 to 5 days. 4 days is included, - // 5 days is not. - CONVERSION_FOUR_TO_FIVE_DAYS = 6; - - // Conversion lag bucket from 5 to 6 days. 5 days is included, - // 6 days is not. - CONVERSION_FIVE_TO_SIX_DAYS = 7; - - // Conversion lag bucket from 6 to 7 days. 6 days is included, - // 7 days is not. - CONVERSION_SIX_TO_SEVEN_DAYS = 8; - - // Conversion lag bucket from 7 to 8 days. 7 days is included, - // 8 days is not. - CONVERSION_SEVEN_TO_EIGHT_DAYS = 9; - - // Conversion lag bucket from 8 to 9 days. 8 days is included, - // 9 days is not. - CONVERSION_EIGHT_TO_NINE_DAYS = 10; - - // Conversion lag bucket from 9 to 10 days. 9 days is included, - // 10 days is not. - CONVERSION_NINE_TO_TEN_DAYS = 11; - - // Conversion lag bucket from 10 to 11 days. 10 days is included, - // 11 days is not. - CONVERSION_TEN_TO_ELEVEN_DAYS = 12; - - // Conversion lag bucket from 11 to 12 days. 11 days is included, - // 12 days is not. - CONVERSION_ELEVEN_TO_TWELVE_DAYS = 13; - - // Conversion lag bucket from 12 to 13 days. 12 days is included, - // 13 days is not. - CONVERSION_TWELVE_TO_THIRTEEN_DAYS = 14; - - // Conversion lag bucket from 13 to 14 days. 13 days is included, - // 14 days is not. - CONVERSION_THIRTEEN_TO_FOURTEEN_DAYS = 15; - - // Conversion lag bucket from 14 to 21 days. 14 days is included, - // 21 days is not. - CONVERSION_FOURTEEN_TO_TWENTY_ONE_DAYS = 16; - - // Conversion lag bucket from 21 to 30 days. 21 days is included, - // 30 days is not. - CONVERSION_TWENTY_ONE_TO_THIRTY_DAYS = 17; - - // Conversion lag bucket from 30 to 45 days. 30 days is included, - // 45 days is not. - CONVERSION_THIRTY_TO_FORTY_FIVE_DAYS = 18; - - // Conversion lag bucket from 45 to 60 days. 45 days is included, - // 60 days is not. - CONVERSION_FORTY_FIVE_TO_SIXTY_DAYS = 19; - - // Conversion lag bucket from 60 to 90 days. 60 days is included, - // 90 days is not. - CONVERSION_SIXTY_TO_NINETY_DAYS = 20; - - // Conversion adjustment lag bucket from 0 to 1 day. 0 day is included, - // 1 day is not. - ADJUSTMENT_LESS_THAN_ONE_DAY = 21; - - // Conversion adjustment lag bucket from 1 to 2 days. 1 day is included, - // 2 days is not. - ADJUSTMENT_ONE_TO_TWO_DAYS = 22; - - // Conversion adjustment lag bucket from 2 to 3 days. 2 days is included, - // 3 days is not. - ADJUSTMENT_TWO_TO_THREE_DAYS = 23; - - // Conversion adjustment lag bucket from 3 to 4 days. 3 days is included, - // 4 days is not. - ADJUSTMENT_THREE_TO_FOUR_DAYS = 24; - - // Conversion adjustment lag bucket from 4 to 5 days. 4 days is included, - // 5 days is not. - ADJUSTMENT_FOUR_TO_FIVE_DAYS = 25; - - // Conversion adjustment lag bucket from 5 to 6 days. 5 days is included, - // 6 days is not. - ADJUSTMENT_FIVE_TO_SIX_DAYS = 26; - - // Conversion adjustment lag bucket from 6 to 7 days. 6 days is included, - // 7 days is not. - ADJUSTMENT_SIX_TO_SEVEN_DAYS = 27; - - // Conversion adjustment lag bucket from 7 to 8 days. 7 days is included, - // 8 days is not. - ADJUSTMENT_SEVEN_TO_EIGHT_DAYS = 28; - - // Conversion adjustment lag bucket from 8 to 9 days. 8 days is included, - // 9 days is not. - ADJUSTMENT_EIGHT_TO_NINE_DAYS = 29; - - // Conversion adjustment lag bucket from 9 to 10 days. 9 days is included, - // 10 days is not. - ADJUSTMENT_NINE_TO_TEN_DAYS = 30; - - // Conversion adjustment lag bucket from 10 to 11 days. 10 days is included, - // 11 days is not. - ADJUSTMENT_TEN_TO_ELEVEN_DAYS = 31; - - // Conversion adjustment lag bucket from 11 to 12 days. 11 days is included, - // 12 days is not. - ADJUSTMENT_ELEVEN_TO_TWELVE_DAYS = 32; - - // Conversion adjustment lag bucket from 12 to 13 days. 12 days is included, - // 13 days is not. - ADJUSTMENT_TWELVE_TO_THIRTEEN_DAYS = 33; - - // Conversion adjustment lag bucket from 13 to 14 days. 13 days is included, - // 14 days is not. - ADJUSTMENT_THIRTEEN_TO_FOURTEEN_DAYS = 34; - - // Conversion adjustment lag bucket from 14 to 21 days. 14 days is included, - // 21 days is not. - ADJUSTMENT_FOURTEEN_TO_TWENTY_ONE_DAYS = 35; - - // Conversion adjustment lag bucket from 21 to 30 days. 21 days is included, - // 30 days is not. - ADJUSTMENT_TWENTY_ONE_TO_THIRTY_DAYS = 36; - - // Conversion adjustment lag bucket from 30 to 45 days. 30 days is included, - // 45 days is not. - ADJUSTMENT_THIRTY_TO_FORTY_FIVE_DAYS = 37; - - // Conversion adjustment lag bucket from 45 to 60 days. 45 days is included, - // 60 days is not. - ADJUSTMENT_FORTY_FIVE_TO_SIXTY_DAYS = 38; - - // Conversion adjustment lag bucket from 60 to 90 days. 60 days is included, - // 90 days is not. - ADJUSTMENT_SIXTY_TO_NINETY_DAYS = 39; - - // Conversion adjustment lag bucket from 90 to 145 days. 90 days is - // included, 145 days is not. - ADJUSTMENT_NINETY_TO_ONE_HUNDRED_AND_FORTY_FIVE_DAYS = 40; - - // Conversion lag bucket UNKNOWN. This is for dates before conversion lag - // bucket was available in Google Ads. - CONVERSION_UNKNOWN = 41; - - // Conversion adjustment lag bucket UNKNOWN. This is for dates before - // conversion adjustment lag bucket was available in Google Ads. - ADJUSTMENT_UNKNOWN = 42; - } - - -} diff --git a/google/ads/googleads/v4/enums/criterion_category_channel_availability_mode.proto b/google/ads/googleads/v4/enums/criterion_category_channel_availability_mode.proto deleted file mode 100644 index 66e6f6c55..000000000 --- a/google/ads/googleads/v4/enums/criterion_category_channel_availability_mode.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionCategoryChannelAvailabilityModeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing the criterion category channel availability mode. - -// Describes channel availability mode for a criterion availability - whether -// the availability is meant to include all advertising channels, or a -// particular channel with all its channel subtypes, or a channel with a certain -// subset of channel subtypes. -message CriterionCategoryChannelAvailabilityModeEnum { - // Enum containing the possible CriterionCategoryChannelAvailabilityMode. - enum CriterionCategoryChannelAvailabilityMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The category is available to campaigns of all channel types and subtypes. - ALL_CHANNELS = 2; - - // The category is available to campaigns of a specific channel type, - // including all subtypes under it. - CHANNEL_TYPE_AND_ALL_SUBTYPES = 3; - - // The category is available to campaigns of a specific channel type and - // subtype(s). - CHANNEL_TYPE_AND_SUBSET_SUBTYPES = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/criterion_category_locale_availability_mode.proto b/google/ads/googleads/v4/enums/criterion_category_locale_availability_mode.proto deleted file mode 100644 index d8a5b0ad9..000000000 --- a/google/ads/googleads/v4/enums/criterion_category_locale_availability_mode.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionCategoryLocaleAvailabilityModeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing the criterion category locale availability mode. - -// Describes locale availability mode for a criterion availability - whether -// it's available globally, or a particular country with all languages, or a -// particular language with all countries, or a country-language pair. -message CriterionCategoryLocaleAvailabilityModeEnum { - // Enum containing the possible CriterionCategoryLocaleAvailabilityMode. - enum CriterionCategoryLocaleAvailabilityMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The category is available to campaigns of all locales. - ALL_LOCALES = 2; - - // The category is available to campaigns within a list of countries, - // regardless of language. - COUNTRY_AND_ALL_LANGUAGES = 3; - - // The category is available to campaigns within a list of languages, - // regardless of country. - LANGUAGE_AND_ALL_COUNTRIES = 4; - - // The category is available to campaigns within a list of country, language - // pairs. - COUNTRY_AND_LANGUAGE = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/criterion_system_serving_status.proto b/google/ads/googleads/v4/enums/criterion_system_serving_status.proto deleted file mode 100644 index b0d000998..000000000 --- a/google/ads/googleads/v4/enums/criterion_system_serving_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionSystemServingStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing approval status for the criterion. - -// Container for enum describing possible criterion system serving statuses. -message CriterionSystemServingStatusEnum { - // Enumerates criterion system serving statuses. - enum CriterionSystemServingStatus { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Eligible. - ELIGIBLE = 2; - - // Low search volume. - RARELY_SERVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/criterion_type.proto b/google/ads/googleads/v4/enums/criterion_type.proto deleted file mode 100644 index bf41ec01c..000000000 --- a/google/ads/googleads/v4/enums/criterion_type.proto +++ /dev/null @@ -1,134 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing criteria types. - -// The possible types of a criterion. -message CriterionTypeEnum { - // Enum describing possible criterion types. - enum CriterionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Keyword. e.g. 'mars cruise'. - KEYWORD = 2; - - // Placement, aka Website. e.g. 'www.flowers4sale.com' - PLACEMENT = 3; - - // Mobile application categories to target. - MOBILE_APP_CATEGORY = 4; - - // Mobile applications to target. - MOBILE_APPLICATION = 5; - - // Devices to target. - DEVICE = 6; - - // Locations to target. - LOCATION = 7; - - // Listing groups to target. - LISTING_GROUP = 8; - - // Ad Schedule. - AD_SCHEDULE = 9; - - // Age range. - AGE_RANGE = 10; - - // Gender. - GENDER = 11; - - // Income Range. - INCOME_RANGE = 12; - - // Parental status. - PARENTAL_STATUS = 13; - - // YouTube Video. - YOUTUBE_VIDEO = 14; - - // YouTube Channel. - YOUTUBE_CHANNEL = 15; - - // User list. - USER_LIST = 16; - - // Proximity. - PROXIMITY = 17; - - // A topic target on the display network (e.g. "Pets & Animals"). - TOPIC = 18; - - // Listing scope to target. - LISTING_SCOPE = 19; - - // Language. - LANGUAGE = 20; - - // IpBlock. - IP_BLOCK = 21; - - // Content Label for category exclusion. - CONTENT_LABEL = 22; - - // Carrier. - CARRIER = 23; - - // A category the user is interested in. - USER_INTEREST = 24; - - // Webpage criterion for dynamic search ads. - WEBPAGE = 25; - - // Operating system version. - OPERATING_SYSTEM_VERSION = 26; - - // App payment model. - APP_PAYMENT_MODEL = 27; - - // Mobile device. - MOBILE_DEVICE = 28; - - // Custom affinity. - CUSTOM_AFFINITY = 29; - - // Custom intent. - CUSTOM_INTENT = 30; - - // Location group. - LOCATION_GROUP = 31; - } - - -} diff --git a/google/ads/googleads/v4/enums/custom_interest_member_type.proto b/google/ads/googleads/v4/enums/custom_interest_member_type.proto deleted file mode 100644 index 039b49f40..000000000 --- a/google/ads/googleads/v4/enums/custom_interest_member_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestMemberTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing custom interest member type. - -// The types of custom interest member, either KEYWORD or URL. -message CustomInterestMemberTypeEnum { - // Enum containing possible custom interest member types. - enum CustomInterestMemberType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Custom interest member type KEYWORD. - KEYWORD = 2; - - // Custom interest member type URL. - URL = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/custom_interest_status.proto b/google/ads/googleads/v4/enums/custom_interest_status.proto deleted file mode 100644 index c41e4f279..000000000 --- a/google/ads/googleads/v4/enums/custom_interest_status.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing custom interest status. - -// The status of custom interest. -message CustomInterestStatusEnum { - // Enum containing possible custom interest types. - enum CustomInterestStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Enabled status - custom interest is enabled and can be targeted to. - ENABLED = 2; - - // Removed status - custom interest is removed and cannot be used for - // targeting. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/custom_interest_type.proto b/google/ads/googleads/v4/enums/custom_interest_type.proto deleted file mode 100644 index f83f29340..000000000 --- a/google/ads/googleads/v4/enums/custom_interest_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing custom interest type. - -// The types of custom interest. -message CustomInterestTypeEnum { - // Enum containing possible custom interest types. - enum CustomInterestType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Allows brand advertisers to define custom affinity audience lists. - CUSTOM_AFFINITY = 2; - - // Allows advertisers to define custom intent audience lists. - CUSTOM_INTENT = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/custom_placeholder_field.proto b/google/ads/googleads/v4/enums/custom_placeholder_field.proto deleted file mode 100644 index 6ea4cd0c8..000000000 --- a/google/ads/googleads/v4/enums/custom_placeholder_field.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Custom placeholder fields. - -// Values for Custom placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message CustomPlaceholderFieldEnum { - // Possible values for Custom placeholder fields. - enum CustomPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Combination ID and ID2 must be unique per - // offer. - ID = 2; - - // Data Type: STRING. Combination ID and ID2 must be unique per offer. - ID2 = 3; - - // Data Type: STRING. Required. Main headline with product name to be shown - // in dynamic ad. - ITEM_TITLE = 4; - - // Data Type: STRING. Optional text to be shown in the image ad. - ITEM_SUBTITLE = 5; - - // Data Type: STRING. Optional description of the product to be shown in the - // ad. - ITEM_DESCRIPTION = 6; - - // Data Type: STRING. Full address of your offer or service, including - // postal code. This will be used to identify the closest product to the - // user when there are multiple offers in the feed that are relevant to the - // user. - ITEM_ADDRESS = 7; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - PRICE = 8; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 9; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 10; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 11; - - // Data Type: URL. Image to be displayed in the ad. Highly recommended for - // image ads. - IMAGE_URL = 12; - - // Data Type: STRING. Used as a recommendation engine signal to serve items - // in the same category. - ITEM_CATEGORY = 13; - - // Data Type: URL_LIST. Final URLs for the ad when using Upgraded - // URLs. User will be redirected to these URLs when they click on an ad, or - // when they click on a specific product for ads that have multiple - // products. - FINAL_URLS = 14; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 15; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 16; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 17; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 18; - - // Data Type: STRING_LIST. List of recommended IDs to show together with - // this item. - SIMILAR_IDS = 19; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 20; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 21; - } - - -} diff --git a/google/ads/googleads/v4/enums/customer_match_upload_key_type.proto b/google/ads/googleads/v4/enums/customer_match_upload_key_type.proto deleted file mode 100644 index 6c957df60..000000000 --- a/google/ads/googleads/v4/enums/customer_match_upload_key_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomerMatchUploadKeyTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Indicates what type of data are the user list's members matched from. -message CustomerMatchUploadKeyTypeEnum { - // Enum describing possible customer match upload key types. - enum CustomerMatchUploadKeyType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Members are matched from customer info such as email address, phone - // number or physical address. - CONTACT_INFO = 2; - - // Members are matched from a user id generated and assigned by the - // advertiser. - CRM_ID = 3; - - // Members are matched from mobile advertising ids. - MOBILE_ADVERTISING_ID = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/customer_pay_per_conversion_eligibility_failure_reason.proto b/google/ads/googleads/v4/enums/customer_pay_per_conversion_eligibility_failure_reason.proto deleted file mode 100644 index 4795b9b00..000000000 --- a/google/ads/googleads/v4/enums/customer_pay_per_conversion_eligibility_failure_reason.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomerPayPerConversionEligibilityFailureReasonProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing pay per conversion eligibility failure reasons. - -// Container for enum describing reasons why a customer is not eligible to use -// PaymentMode.CONVERSIONS. -message CustomerPayPerConversionEligibilityFailureReasonEnum { - // Enum describing possible reasons a customer is not eligible to use - // PaymentMode.CONVERSIONS. - enum CustomerPayPerConversionEligibilityFailureReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Customer does not have enough conversions. - NOT_ENOUGH_CONVERSIONS = 2; - - // Customer's conversion lag is too high. - CONVERSION_LAG_TOO_HIGH = 3; - - // Customer uses shared budgets. - HAS_CAMPAIGN_WITH_SHARED_BUDGET = 4; - - // Customer has conversions with ConversionActionType.UPLOAD_CLICKS. - HAS_UPLOAD_CLICKS_CONVERSION = 5; - - // Customer's average daily spend is too high. - AVERAGE_DAILY_SPEND_TOO_HIGH = 6; - - // Customer's eligibility has not yet been calculated by the Google Ads - // backend. Check back soon. - ANALYSIS_NOT_COMPLETE = 7; - - // Customer is not eligible due to other reasons. - OTHER = 8; - } - - -} diff --git a/google/ads/googleads/v4/enums/data_driven_model_status.proto b/google/ads/googleads/v4/enums/data_driven_model_status.proto deleted file mode 100644 index 8badc9c2d..000000000 --- a/google/ads/googleads/v4/enums/data_driven_model_status.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DataDrivenModelStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing data-driven model status. - -// Container for enum indicating data driven model status. -message DataDrivenModelStatusEnum { - // Enumerates data driven model statuses. - enum DataDrivenModelStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The data driven model is available. - AVAILABLE = 2; - - // The data driven model is stale. It hasn't been updated for at least 7 - // days. It is still being used, but will become expired if it does not get - // updated for 30 days. - STALE = 3; - - // The data driven model expired. It hasn't been updated for at least 30 - // days and cannot be used. Most commonly this is because there hasn't been - // the required number of events in a recent 30-day period. - EXPIRED = 4; - - // The data driven model has never been generated. Most commonly this is - // because there has never been the required number of events in any 30-day - // period. - NEVER_GENERATED = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/day_of_week.proto b/google/ads/googleads/v4/enums/day_of_week.proto deleted file mode 100644 index 53c6886ca..000000000 --- a/google/ads/googleads/v4/enums/day_of_week.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DayOfWeekProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing days of week. - -// Container for enumeration of days of the week, e.g., "Monday". -message DayOfWeekEnum { - // Enumerates days of the week, e.g., "Monday". - enum DayOfWeek { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Monday. - MONDAY = 2; - - // Tuesday. - TUESDAY = 3; - - // Wednesday. - WEDNESDAY = 4; - - // Thursday. - THURSDAY = 5; - - // Friday. - FRIDAY = 6; - - // Saturday. - SATURDAY = 7; - - // Sunday. - SUNDAY = 8; - } - - -} diff --git a/google/ads/googleads/v4/enums/device.proto b/google/ads/googleads/v4/enums/device.proto deleted file mode 100644 index 26209c8af..000000000 --- a/google/ads/googleads/v4/enums/device.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DeviceProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing devices. - -// Container for enumeration of Google Ads devices available for targeting. -message DeviceEnum { - // Enumerates Google Ads devices available for targeting. - enum Device { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Mobile devices with full browsers. - MOBILE = 2; - - // Tablets with full browsers. - TABLET = 3; - - // Computers. - DESKTOP = 4; - - // Smart TVs and game consoles. - CONNECTED_TV = 6; - - // Other device types. - OTHER = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/display_ad_format_setting.proto b/google/ads/googleads/v4/enums/display_ad_format_setting.proto deleted file mode 100644 index 9e70f2fbc..000000000 --- a/google/ads/googleads/v4/enums/display_ad_format_setting.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DisplayAdFormatSettingProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing display ad format settings. - -// Container for display ad format settings. -message DisplayAdFormatSettingEnum { - // Enumerates display ad format settings. - enum DisplayAdFormatSetting { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Text, image and native formats. - ALL_FORMATS = 2; - - // Text and image formats. - NON_NATIVE = 3; - - // Native format, i.e. the format rendering is controlled by the publisher - // and not by Google. - NATIVE = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/display_upload_product_type.proto b/google/ads/googleads/v4/enums/display_upload_product_type.proto deleted file mode 100644 index f0d0a2945..000000000 --- a/google/ads/googleads/v4/enums/display_upload_product_type.proto +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DisplayUploadProductTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing display upload product types. - -// Container for display upload product types. Product types that have the word -// "DYNAMIC" in them must be associated with a campaign that has a dynamic -// remarketing feed. See https://support.google.com/google-ads/answer/6053288 -// for more info about dynamic remarketing. Other product types are regarded -// as "static" and do not have this requirement. -message DisplayUploadProductTypeEnum { - // Enumerates display upload product types. - enum DisplayUploadProductType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // HTML5 upload ad. This product type requires the upload_media_bundle - // field in DisplayUploadAdInfo to be set. - HTML5_UPLOAD_AD = 2; - - // Dynamic HTML5 education ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in an education campaign. - DYNAMIC_HTML5_EDUCATION_AD = 3; - - // Dynamic HTML5 flight ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a flight campaign. - DYNAMIC_HTML5_FLIGHT_AD = 4; - - // Dynamic HTML5 hotel and rental ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a hotel campaign. - DYNAMIC_HTML5_HOTEL_RENTAL_AD = 5; - - // Dynamic HTML5 job ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a job campaign. - DYNAMIC_HTML5_JOB_AD = 6; - - // Dynamic HTML5 local ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a local campaign. - DYNAMIC_HTML5_LOCAL_AD = 7; - - // Dynamic HTML5 real estate ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a real estate campaign. - DYNAMIC_HTML5_REAL_ESTATE_AD = 8; - - // Dynamic HTML5 custom ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a custom campaign. - DYNAMIC_HTML5_CUSTOM_AD = 9; - - // Dynamic HTML5 travel ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a travel campaign. - DYNAMIC_HTML5_TRAVEL_AD = 10; - - // Dynamic HTML5 hotel ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a hotel campaign. - DYNAMIC_HTML5_HOTEL_AD = 11; - } - - -} diff --git a/google/ads/googleads/v4/enums/distance_bucket.proto b/google/ads/googleads/v4/enums/distance_bucket.proto deleted file mode 100644 index dbbbe3616..000000000 --- a/google/ads/googleads/v4/enums/distance_bucket.proto +++ /dev/null @@ -1,127 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DistanceBucketProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing distance buckets. - -// Container for distance buckets of a user’s distance from an advertiser’s -// location extension. -message DistanceBucketEnum { - // The distance bucket for a user’s distance from an advertiser’s location - // extension. - enum DistanceBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // User was within 700m of the location. - WITHIN_700M = 2; - - // User was within 1KM of the location. - WITHIN_1KM = 3; - - // User was within 5KM of the location. - WITHIN_5KM = 4; - - // User was within 10KM of the location. - WITHIN_10KM = 5; - - // User was within 15KM of the location. - WITHIN_15KM = 6; - - // User was within 20KM of the location. - WITHIN_20KM = 7; - - // User was within 25KM of the location. - WITHIN_25KM = 8; - - // User was within 30KM of the location. - WITHIN_30KM = 9; - - // User was within 35KM of the location. - WITHIN_35KM = 10; - - // User was within 40KM of the location. - WITHIN_40KM = 11; - - // User was within 45KM of the location. - WITHIN_45KM = 12; - - // User was within 50KM of the location. - WITHIN_50KM = 13; - - // User was within 55KM of the location. - WITHIN_55KM = 14; - - // User was within 60KM of the location. - WITHIN_60KM = 15; - - // User was within 65KM of the location. - WITHIN_65KM = 16; - - // User was beyond 65KM of the location. - BEYOND_65KM = 17; - - // User was within 0.7 miles of the location. - WITHIN_0_7MILES = 18; - - // User was within 1 mile of the location. - WITHIN_1MILE = 19; - - // User was within 5 miles of the location. - WITHIN_5MILES = 20; - - // User was within 10 miles of the location. - WITHIN_10MILES = 21; - - // User was within 15 miles of the location. - WITHIN_15MILES = 22; - - // User was within 20 miles of the location. - WITHIN_20MILES = 23; - - // User was within 25 miles of the location. - WITHIN_25MILES = 24; - - // User was within 30 miles of the location. - WITHIN_30MILES = 25; - - // User was within 35 miles of the location. - WITHIN_35MILES = 26; - - // User was within 40 miles of the location. - WITHIN_40MILES = 27; - - // User was beyond 40 miles of the location. - BEYOND_40MILES = 28; - } - - -} diff --git a/google/ads/googleads/v4/enums/dsa_page_feed_criterion_field.proto b/google/ads/googleads/v4/enums/dsa_page_feed_criterion_field.proto deleted file mode 100644 index 3b90621de..000000000 --- a/google/ads/googleads/v4/enums/dsa_page_feed_criterion_field.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DsaPageFeedCriterionFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Dynamic Search Ad Page Feed criterion fields. - -// Values for Dynamic Search Ad Page Feed criterion fields. -message DsaPageFeedCriterionFieldEnum { - // Possible values for Dynamic Search Ad Page Feed criterion fields. - enum DsaPageFeedCriterionField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: URL or URL_LIST. URL of the web page you want to target. - PAGE_URL = 2; - - // Data Type: STRING_LIST. The labels that will help you target ads within - // your page feed. - LABEL = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/education_placeholder_field.proto b/google/ads/googleads/v4/enums/education_placeholder_field.proto deleted file mode 100644 index d72229adf..000000000 --- a/google/ads/googleads/v4/enums/education_placeholder_field.proto +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "EducationPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Education placeholder fields. - -// Values for Education placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message EducationPlaceholderFieldEnum { - // Possible values for Education placeholder fields. - enum EducationPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Combination of PROGRAM ID and LOCATION ID - // must be unique per offer. - PROGRAM_ID = 2; - - // Data Type: STRING. Combination of PROGRAM ID and LOCATION ID must be - // unique per offer. - LOCATION_ID = 3; - - // Data Type: STRING. Required. Main headline with program name to be shown - // in dynamic ad. - PROGRAM_NAME = 4; - - // Data Type: STRING. Area of study that can be shown in dynamic ad. - AREA_OF_STUDY = 5; - - // Data Type: STRING. Description of program that can be shown in dynamic - // ad. - PROGRAM_DESCRIPTION = 6; - - // Data Type: STRING. Name of school that can be shown in dynamic ad. - SCHOOL_NAME = 7; - - // Data Type: STRING. Complete school address, including postal code. - ADDRESS = 8; - - // Data Type: URL. Image to be displayed in ads. - THUMBNAIL_IMAGE_URL = 9; - - // Data Type: URL. Alternative hosted file of image to be used in the ad. - ALTERNATIVE_THUMBNAIL_IMAGE_URL = 10; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific program and its location). - FINAL_URLS = 11; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 12; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 13; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 14; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 15; - - // Data Type: STRING_LIST. List of recommended program IDs to show together - // with this item. - SIMILAR_PROGRAM_IDS = 16; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 17; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 18; - } - - -} diff --git a/google/ads/googleads/v4/enums/extension_setting_device.proto b/google/ads/googleads/v4/enums/extension_setting_device.proto deleted file mode 100644 index dcd17c038..000000000 --- a/google/ads/googleads/v4/enums/extension_setting_device.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionSettingDeviceProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing extension setting device type. - -// Container for enum describing extension setting device types. -message ExtensionSettingDeviceEnum { - // Possible device types for an extension setting. - enum ExtensionSettingDevice { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Mobile. The extensions in the extension setting will only serve on - // mobile devices. - MOBILE = 2; - - // Desktop. The extensions in the extension setting will only serve on - // desktop devices. - DESKTOP = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/extension_type.proto b/google/ads/googleads/v4/enums/extension_type.proto deleted file mode 100644 index 7761de75d..000000000 --- a/google/ads/googleads/v4/enums/extension_type.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing extension type. - -// Container for enum describing possible data types for an extension in an -// extension setting. -message ExtensionTypeEnum { - // Possible data types for an extension in an extension setting. - enum ExtensionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // None. - NONE = 2; - - // App. - APP = 3; - - // Call. - CALL = 4; - - // Callout. - CALLOUT = 5; - - // Message. - MESSAGE = 6; - - // Price. - PRICE = 7; - - // Promotion. - PROMOTION = 8; - - // Sitelink. - SITELINK = 10; - - // Structured snippet. - STRUCTURED_SNIPPET = 11; - - // Location. - LOCATION = 12; - - // Affiliate location. - AFFILIATE_LOCATION = 13; - - // Hotel callout - HOTEL_CALLOUT = 15; - } - - -} diff --git a/google/ads/googleads/v4/enums/external_conversion_source.proto b/google/ads/googleads/v4/enums/external_conversion_source.proto deleted file mode 100644 index 9f58e4bb3..000000000 --- a/google/ads/googleads/v4/enums/external_conversion_source.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ExternalConversionSourceProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum describing the external conversion source that is -// associated with a ConversionAction. -message ExternalConversionSourceEnum { - // The external conversion source that is associated with a ConversionAction. - enum ExternalConversionSource { - // Not specified. - UNSPECIFIED = 0; - - // Represents value unknown in this version. - UNKNOWN = 1; - - // Conversion that occurs when a user navigates to a particular webpage - // after viewing an ad; Displayed in Google Ads UI as 'Website'. - WEBPAGE = 2; - - // Conversion that comes from linked Google Analytics goal or transaction; - // Displayed in Google Ads UI as 'Analytics'. - ANALYTICS = 3; - - // Website conversion that is uploaded through ConversionUploadService; - // Displayed in Google Ads UI as 'Import from clicks'. - UPLOAD = 4; - - // Conversion that occurs when a user clicks on a call extension directly on - // an ad; Displayed in Google Ads UI as 'Calls from ads'. - AD_CALL_METRICS = 5; - - // Conversion that occurs when a user calls a dynamically-generated phone - // number (by installed javascript) from an advertiser's website after - // clicking on an ad; Displayed in Google Ads UI as 'Calls from website'. - WEBSITE_CALL_METRICS = 6; - - // Conversion that occurs when a user visits an advertiser's retail store - // after clicking on a Google ad; - // Displayed in Google Ads UI as 'Store visits'. - STORE_VISITS = 7; - - // Conversion that occurs when a user takes an in-app action such as a - // purchase in an Android app; - // Displayed in Google Ads UI as 'Android in-app action'. - ANDROID_IN_APP = 8; - - // Conversion that occurs when a user takes an in-app action such as a - // purchase in an iOS app; - // Displayed in Google Ads UI as 'iOS in-app action'. - IOS_IN_APP = 9; - - // Conversion that occurs when a user opens an iOS app for the first time; - // Displayed in Google Ads UI as 'iOS app install (first open)'. - IOS_FIRST_OPEN = 10; - - // Legacy app conversions that do not have an AppPlatform provided; - // Displayed in Google Ads UI as 'Mobile app'. - APP_UNSPECIFIED = 11; - - // Conversion that occurs when a user opens an Android app for the first - // time; Displayed in Google Ads UI as 'Android app install (first open)'. - ANDROID_FIRST_OPEN = 12; - - // Call conversion that is uploaded through ConversionUploadService; - // Displayed in Google Ads UI as 'Import from calls'. - UPLOAD_CALLS = 13; - - // Conversion that comes from a linked Firebase event; - // Displayed in Google Ads UI as 'Firebase'. - FIREBASE = 14; - - // Conversion that occurs when a user clicks on a mobile phone number; - // Displayed in Google Ads UI as 'Phone number clicks'. - CLICK_TO_CALL = 15; - - // Conversion that comes from Salesforce; - // Displayed in Google Ads UI as 'Salesforce.com'. - SALESFORCE = 16; - - // Conversion that comes from in-store purchases recorded by CRM; - // Displayed in Google Ads UI as 'Store sales (data partner)'. - STORE_SALES_CRM = 17; - - // Conversion that comes from in-store purchases from payment network; - // Displayed in Google Ads UI as 'Store sales (payment network)'. - STORE_SALES_PAYMENT_NETWORK = 18; - - // Codeless Google Play conversion; - // Displayed in Google Ads UI as 'Google Play'. - GOOGLE_PLAY = 19; - - // Conversion that comes from a linked third-party app analytics event; - // Displayed in Google Ads UI as 'Third-party app analytics'. - THIRD_PARTY_APP_ANALYTICS = 20; - - // Conversion that is controlled by Google Attribution. - GOOGLE_ATTRIBUTION = 21; - - // Store Sales conversion based on first-party or third-party merchant data - // uploads. Displayed in Google Ads UI as 'Store sales (direct upload)'. - STORE_SALES_DIRECT_UPLOAD = 23; - - // Store Sales conversion based on first-party or third-party merchant - // data uploads and/or from in-store purchases using cards from payment - // networks. Displayed in Google Ads UI as 'Store sales'. - STORE_SALES = 24; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_attribute_type.proto b/google/ads/googleads/v4/enums/feed_attribute_type.proto deleted file mode 100644 index edfeaffd9..000000000 --- a/google/ads/googleads/v4/enums/feed_attribute_type.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedAttributeTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed attribute type. - -// Container for enum describing possible data types for a feed attribute. -message FeedAttributeTypeEnum { - // Possible data types for a feed attribute. - enum FeedAttributeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Int64. - INT64 = 2; - - // Double. - DOUBLE = 3; - - // String. - STRING = 4; - - // Boolean. - BOOLEAN = 5; - - // Url. - URL = 6; - - // Datetime. - DATE_TIME = 7; - - // Int64 list. - INT64_LIST = 8; - - // Double (8 bytes) list. - DOUBLE_LIST = 9; - - // String list. - STRING_LIST = 10; - - // Boolean list. - BOOLEAN_LIST = 11; - - // Url list. - URL_LIST = 12; - - // Datetime list. - DATE_TIME_LIST = 13; - - // Price. - PRICE = 14; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_item_quality_approval_status.proto b/google/ads/googleads/v4/enums/feed_item_quality_approval_status.proto deleted file mode 100644 index a0561d5f5..000000000 --- a/google/ads/googleads/v4/enums/feed_item_quality_approval_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemQualityApprovalStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed item quality evaluation approval statuses. - -// Container for enum describing possible quality evaluation approval statuses -// of a feed item. -message FeedItemQualityApprovalStatusEnum { - // The possible quality evaluation approval statuses of a feed item. - enum FeedItemQualityApprovalStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Meets all quality expectations. - APPROVED = 2; - - // Does not meet some quality expectations. The specific reason is found in - // the quality_disapproval_reasons field. - DISAPPROVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_item_quality_disapproval_reason.proto b/google/ads/googleads/v4/enums/feed_item_quality_disapproval_reason.proto deleted file mode 100644 index 399c3b580..000000000 --- a/google/ads/googleads/v4/enums/feed_item_quality_disapproval_reason.proto +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemQualityDisapprovalReasonProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed item quality disapproval reasons. - -// Container for enum describing possible quality evaluation disapproval reasons -// of a feed item. -message FeedItemQualityDisapprovalReasonEnum { - // The possible quality evaluation disapproval reasons of a feed item. - enum FeedItemQualityDisapprovalReason { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Price contains repetitive headers. - PRICE_TABLE_REPETITIVE_HEADERS = 2; - - // Price contains repetitive description. - PRICE_TABLE_REPETITIVE_DESCRIPTION = 3; - - // Price contains inconsistent items. - PRICE_TABLE_INCONSISTENT_ROWS = 4; - - // Price contains qualifiers in description. - PRICE_DESCRIPTION_HAS_PRICE_QUALIFIERS = 5; - - // Price contains an unsupported language. - PRICE_UNSUPPORTED_LANGUAGE = 6; - - // Price item header is not relevant to the price type. - PRICE_TABLE_ROW_HEADER_TABLE_TYPE_MISMATCH = 7; - - // Price item header has promotional text. - PRICE_TABLE_ROW_HEADER_HAS_PROMOTIONAL_TEXT = 8; - - // Price item description is not relevant to the item header. - PRICE_TABLE_ROW_DESCRIPTION_NOT_RELEVANT = 9; - - // Price item description contains promotional text. - PRICE_TABLE_ROW_DESCRIPTION_HAS_PROMOTIONAL_TEXT = 10; - - // Price item header and description are repetitive. - PRICE_TABLE_ROW_HEADER_DESCRIPTION_REPETITIVE = 11; - - // Price item is in a foreign language, nonsense, or can't be rated. - PRICE_TABLE_ROW_UNRATEABLE = 12; - - // Price item price is invalid or inaccurate. - PRICE_TABLE_ROW_PRICE_INVALID = 13; - - // Price item URL is invalid or irrelevant. - PRICE_TABLE_ROW_URL_INVALID = 14; - - // Price item header or description has price. - PRICE_HEADER_OR_DESCRIPTION_HAS_PRICE = 15; - - // Structured snippet values do not match the header. - STRUCTURED_SNIPPETS_HEADER_POLICY_VIOLATED = 16; - - // Structured snippet values are repeated. - STRUCTURED_SNIPPETS_REPEATED_VALUES = 17; - - // Structured snippet values violate editorial guidelines like punctuation. - STRUCTURED_SNIPPETS_EDITORIAL_GUIDELINES = 18; - - // Structured snippet contain promotional text. - STRUCTURED_SNIPPETS_HAS_PROMOTIONAL_TEXT = 19; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_item_status.proto b/google/ads/googleads/v4/enums/feed_item_status.proto deleted file mode 100644 index be50156a3..000000000 --- a/google/ads/googleads/v4/enums/feed_item_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed item status. - -// Container for enum describing possible statuses of a feed item. -message FeedItemStatusEnum { - // Possible statuses of a feed item. - enum FeedItemStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item is enabled. - ENABLED = 2; - - // Feed item has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_item_target_device.proto b/google/ads/googleads/v4/enums/feed_item_target_device.proto deleted file mode 100644 index 46aa1b175..000000000 --- a/google/ads/googleads/v4/enums/feed_item_target_device.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetDeviceProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed item target device type. - -// Container for enum describing possible data types for a feed item target -// device. -message FeedItemTargetDeviceEnum { - // Possible data types for a feed item target device. - enum FeedItemTargetDevice { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile. - MOBILE = 2; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_item_target_status.proto b/google/ads/googleads/v4/enums/feed_item_target_status.proto deleted file mode 100644 index 848a4b10c..000000000 --- a/google/ads/googleads/v4/enums/feed_item_target_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed item target status. - -// Container for enum describing possible statuses of a feed item target. -message FeedItemTargetStatusEnum { - // Possible statuses of a feed item target. - enum FeedItemTargetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item target is enabled. - ENABLED = 2; - - // Feed item target has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_item_target_type.proto b/google/ads/googleads/v4/enums/feed_item_target_type.proto deleted file mode 100644 index 9a61da6f3..000000000 --- a/google/ads/googleads/v4/enums/feed_item_target_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed item target type status. - -// Container for enum describing possible types of a feed item target. -message FeedItemTargetTypeEnum { - // Possible type of a feed item target. - enum FeedItemTargetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item targets a campaign. - CAMPAIGN = 2; - - // Feed item targets an ad group. - AD_GROUP = 3; - - // Feed item targets a criterion. - CRITERION = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_item_validation_status.proto b/google/ads/googleads/v4/enums/feed_item_validation_status.proto deleted file mode 100644 index 86293d21a..000000000 --- a/google/ads/googleads/v4/enums/feed_item_validation_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemValidationStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed item validation statuses. - -// Container for enum describing possible validation statuses of a feed item. -message FeedItemValidationStatusEnum { - // The possible validation statuses of a feed item. - enum FeedItemValidationStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Validation pending. - PENDING = 2; - - // An error was found. - INVALID = 3; - - // Feed item is semantically well-formed. - VALID = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_link_status.proto b/google/ads/googleads/v4/enums/feed_link_status.proto deleted file mode 100644 index f0aa2b5ff..000000000 --- a/google/ads/googleads/v4/enums/feed_link_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedLinkStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing status of a feed link. - -// Container for an enum describing possible statuses of a feed link. -message FeedLinkStatusEnum { - // Possible statuses of a feed link. - enum FeedLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed link is enabled. - ENABLED = 2; - - // Feed link has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_mapping_criterion_type.proto b/google/ads/googleads/v4/enums/feed_mapping_criterion_type.proto deleted file mode 100644 index 18434e727..000000000 --- a/google/ads/googleads/v4/enums/feed_mapping_criterion_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingCriterionTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing criterion types for feed mappings. - -// Container for enum describing possible criterion types for a feed mapping. -message FeedMappingCriterionTypeEnum { - // Possible placeholder types for a feed mapping. - enum FeedMappingCriterionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Allows campaign targeting at locations within a location feed. - LOCATION_EXTENSION_TARGETING = 4; - - // Allows url targeting for your dynamic search ads within a page feed. - DSA_PAGE_FEED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_mapping_status.proto b/google/ads/googleads/v4/enums/feed_mapping_status.proto deleted file mode 100644 index d7e45bda6..000000000 --- a/google/ads/googleads/v4/enums/feed_mapping_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed mapping status. - -// Container for enum describing possible statuses of a feed mapping. -message FeedMappingStatusEnum { - // Possible statuses of a feed mapping. - enum FeedMappingStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed mapping is enabled. - ENABLED = 2; - - // Feed mapping has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_origin.proto b/google/ads/googleads/v4/enums/feed_origin.proto deleted file mode 100644 index 1563ec542..000000000 --- a/google/ads/googleads/v4/enums/feed_origin.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedOriginProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed origin. - -// Container for enum describing possible values for a feed origin. -message FeedOriginEnum { - // Possible values for a feed origin. - enum FeedOrigin { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The FeedAttributes for this Feed are managed by the - // user. Users can add FeedAttributes to this Feed. - USER = 2; - - // The FeedAttributes for an GOOGLE Feed are created by Google. A feed of - // this type is maintained by Google and will have the correct attributes - // for the placeholder type of the feed. - GOOGLE = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/feed_status.proto b/google/ads/googleads/v4/enums/feed_status.proto deleted file mode 100644 index f829f5d9e..000000000 --- a/google/ads/googleads/v4/enums/feed_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed status. - -// Container for enum describing possible statuses of a feed. -message FeedStatusEnum { - // Possible statuses of a feed. - enum FeedStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed is enabled. - ENABLED = 2; - - // Feed has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/flight_placeholder_field.proto b/google/ads/googleads/v4/enums/flight_placeholder_field.proto deleted file mode 100644 index ca0355f86..000000000 --- a/google/ads/googleads/v4/enums/flight_placeholder_field.proto +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FlightsPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Flight placeholder fields. - -// Values for Flight placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message FlightPlaceholderFieldEnum { - // Possible values for Flight placeholder fields. - enum FlightPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Destination id. Example: PAR, LON. - // For feed items that only have destination id, destination id must be a - // unique key. For feed items that have both destination id and origin id, - // then the combination must be a unique key. - DESTINATION_ID = 2; - - // Data Type: STRING. Origin id. Example: PAR, LON. - // Optional. Combination of destination id and origin id must be unique per - // offer. - ORIGIN_ID = 3; - - // Data Type: STRING. Required. Main headline with product name to be shown - // in dynamic ad. - FLIGHT_DESCRIPTION = 4; - - // Data Type: STRING. Shorter names are recommended. - ORIGIN_NAME = 5; - - // Data Type: STRING. Shorter names are recommended. - DESTINATION_NAME = 6; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - FLIGHT_PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - FLIGHT_SALE_PRICE = 9; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 10; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 11; - - // Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded - // URLs. User will be redirected to these URLs when they click on an ad, or - // when they click on a specific flight for ads that show multiple - // flights. - FINAL_URLS = 12; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 13; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 14; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 15; - - // Data Type: STRING_LIST. List of recommended destination IDs to show - // together with this item. - SIMILAR_DESTINATION_IDS = 16; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 17; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 18; - } - - -} diff --git a/google/ads/googleads/v4/enums/frequency_cap_event_type.proto b/google/ads/googleads/v4/enums/frequency_cap_event_type.proto deleted file mode 100644 index 57121af36..000000000 --- a/google/ads/googleads/v4/enums/frequency_cap_event_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapEventTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing frequency caps. - -// Container for enum describing the type of event that the cap applies to. -message FrequencyCapEventTypeEnum { - // The type of event that the cap applies to (e.g. impression). - enum FrequencyCapEventType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The cap applies on ad impressions. - IMPRESSION = 2; - - // The cap applies on video ad views. - VIDEO_VIEW = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/frequency_cap_level.proto b/google/ads/googleads/v4/enums/frequency_cap_level.proto deleted file mode 100644 index 6b04f0870..000000000 --- a/google/ads/googleads/v4/enums/frequency_cap_level.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapLevelProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing frequency caps. - -// Container for enum describing the level on which the cap is to be applied. -message FrequencyCapLevelEnum { - // The level on which the cap is to be applied (e.g ad group ad, ad group). - // Cap is applied to all the resources of this level. - enum FrequencyCapLevel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The cap is applied at the ad group ad level. - AD_GROUP_AD = 2; - - // The cap is applied at the ad group level. - AD_GROUP = 3; - - // The cap is applied at the campaign level. - CAMPAIGN = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/frequency_cap_time_unit.proto b/google/ads/googleads/v4/enums/frequency_cap_time_unit.proto deleted file mode 100644 index efe57705b..000000000 --- a/google/ads/googleads/v4/enums/frequency_cap_time_unit.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapTimeUnitProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing frequency caps. - -// Container for enum describing the unit of time the cap is defined at. -message FrequencyCapTimeUnitEnum { - // Unit of time the cap is defined at (e.g. day, week). - enum FrequencyCapTimeUnit { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The cap would define limit per one day. - DAY = 2; - - // The cap would define limit per one week. - WEEK = 3; - - // The cap would define limit per one month. - MONTH = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/gender_type.proto b/google/ads/googleads/v4/enums/gender_type.proto deleted file mode 100644 index bfda5a990..000000000 --- a/google/ads/googleads/v4/enums/gender_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GenderTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing gender types. - -// Container for enum describing the type of demographic genders. -message GenderTypeEnum { - // The type of demographic genders (e.g. female). - enum GenderType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Male. - MALE = 10; - - // Female. - FEMALE = 11; - - // Undetermined gender. - UNDETERMINED = 20; - } - - -} diff --git a/google/ads/googleads/v4/enums/geo_target_constant_status.proto b/google/ads/googleads/v4/enums/geo_target_constant_status.proto deleted file mode 100644 index 9efb131b3..000000000 --- a/google/ads/googleads/v4/enums/geo_target_constant_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing geo target constant statuses. - -// Container for describing the status of a geo target constant. -message GeoTargetConstantStatusEnum { - // The possible statuses of a geo target constant. - enum GeoTargetConstantStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The geo target constant is valid. - ENABLED = 2; - - // The geo target constant is obsolete and will be removed. - REMOVAL_PLANNED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/geo_targeting_restriction.proto b/google/ads/googleads/v4/enums/geo_targeting_restriction.proto deleted file mode 100644 index c6274ef41..000000000 --- a/google/ads/googleads/v4/enums/geo_targeting_restriction.proto +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetingRestrictionProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing GeoTargetingRestriction. - -// Message describing feed item geo targeting restriction. -message GeoTargetingRestrictionEnum { - // A restriction used to determine if the request context's - // geo should be matched. - enum GeoTargetingRestriction { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Indicates that request context should match the physical location of - // the user. - LOCATION_OF_PRESENCE = 2; - } - - -} diff --git a/google/ads/googleads/v4/enums/geo_targeting_type.proto b/google/ads/googleads/v4/enums/geo_targeting_type.proto deleted file mode 100644 index af608f546..000000000 --- a/google/ads/googleads/v4/enums/geo_targeting_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetingTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing geo targeting types. - -// Container for enum describing possible geo targeting types. -message GeoTargetingTypeEnum { - // The possible geo targeting types. - enum GeoTargetingType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Location the user is interested in while making the query. - AREA_OF_INTEREST = 2; - - // Location of the user issuing the query. - LOCATION_OF_PRESENCE = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/google_ads_field_category.proto b/google/ads/googleads/v4/enums/google_ads_field_category.proto deleted file mode 100644 index 8661f7522..000000000 --- a/google/ads/googleads/v4/enums/google_ads_field_category.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldCategoryProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing GoogleAdsField categories - -// Container for enum that determines if the described artifact is a resource -// or a field, and if it is a field, when it segments search queries. -message GoogleAdsFieldCategoryEnum { - // The category of the artifact. - enum GoogleAdsFieldCategory { - // Unspecified - UNSPECIFIED = 0; - - // Unknown - UNKNOWN = 1; - - // The described artifact is a resource. - RESOURCE = 2; - - // The described artifact is a field and is an attribute of a resource. - // Including a resource attribute field in a query may segment the query if - // the resource to which it is attributed segments the resource found in - // the FROM clause. - ATTRIBUTE = 3; - - // The described artifact is a field and always segments search queries. - SEGMENT = 5; - - // The described artifact is a field and is a metric. It never segments - // search queries. - METRIC = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/google_ads_field_data_type.proto b/google/ads/googleads/v4/enums/google_ads_field_data_type.proto deleted file mode 100644 index 549e2364f..000000000 --- a/google/ads/googleads/v4/enums/google_ads_field_data_type.proto +++ /dev/null @@ -1,102 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldDataTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing GoogleAdsField data types - -// Container holding the various data types. -message GoogleAdsFieldDataTypeEnum { - // These are the various types a GoogleAdsService artifact may take on. - enum GoogleAdsFieldDataType { - // Unspecified - UNSPECIFIED = 0; - - // Unknown - UNKNOWN = 1; - - // Maps to google.protobuf.BoolValue - // - // Applicable operators: =, != - BOOLEAN = 2; - - // Maps to google.protobuf.StringValue. It can be compared using the set of - // operators specific to dates however. - // - // Applicable operators: =, <, >, <=, >=, BETWEEN, DURING, and IN - DATE = 3; - - // Maps to google.protobuf.DoubleValue - // - // Applicable operators: =, !=, <, >, IN, NOT IN - DOUBLE = 4; - - // Maps to an enum. It's specific definition can be found at type_url. - // - // Applicable operators: =, !=, IN, NOT IN - ENUM = 5; - - // Maps to google.protobuf.FloatValue - // - // Applicable operators: =, !=, <, >, IN, NOT IN - FLOAT = 6; - - // Maps to google.protobuf.Int32Value - // - // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN - INT32 = 7; - - // Maps to google.protobuf.Int64Value - // - // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN - INT64 = 8; - - // Maps to a protocol buffer message type. The data type's details can be - // found in type_url. - // - // No operators work with MESSAGE fields. - MESSAGE = 9; - - // Maps to google.protobuf.StringValue. Represents the resource name - // (unique id) of a resource or one of its foreign keys. - // - // No operators work with RESOURCE_NAME fields. - RESOURCE_NAME = 10; - - // Maps to google.protobuf.StringValue. - // - // Applicable operators: =, !=, LIKE, NOT LIKE, IN, NOT IN - STRING = 11; - - // Maps to google.protobuf.UInt64Value - // - // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN - UINT64 = 12; - } - - -} diff --git a/google/ads/googleads/v4/enums/hotel_date_selection_type.proto b/google/ads/googleads/v4/enums/hotel_date_selection_type.proto deleted file mode 100644 index 9f5531158..000000000 --- a/google/ads/googleads/v4/enums/hotel_date_selection_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelDateSelectionTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing hotel date selection types. - -// Container for enum describing possible hotel date selection types -message HotelDateSelectionTypeEnum { - // Enum describing possible hotel date selection types. - enum HotelDateSelectionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Dates selected by default. - DEFAULT_SELECTION = 50; - - // Dates selected by the user. - USER_SELECTED = 51; - } - - -} diff --git a/google/ads/googleads/v4/enums/hotel_placeholder_field.proto b/google/ads/googleads/v4/enums/hotel_placeholder_field.proto deleted file mode 100644 index 7055a4631..000000000 --- a/google/ads/googleads/v4/enums/hotel_placeholder_field.proto +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelsPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Hotel placeholder fields. - -// Values for Hotel placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message HotelPlaceholderFieldEnum { - // Possible values for Hotel placeholder fields. - enum HotelPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Unique ID. - PROPERTY_ID = 2; - - // Data Type: STRING. Required. Main headline with property name to be shown - // in dynamic ad. - PROPERTY_NAME = 3; - - // Data Type: STRING. Name of destination to be shown in dynamic ad. - DESTINATION_NAME = 4; - - // Data Type: STRING. Description of destination to be shown in dynamic ad. - DESCRIPTION = 5; - - // Data Type: STRING. Complete property address, including postal code. - ADDRESS = 6; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 9; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 10; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 11; - - // Data Type: STRING. Category of property used to group like items together - // for recommendation engine. - CATEGORY = 12; - - // Data Type: INT64. Star rating (1 to 5) used to group like items - // together for recommendation engine. - STAR_RATING = 13; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 14; - - // Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded - // URLs. User will be redirected to these URLs when they click on an ad, or - // when they click on a specific flight for ads that show multiple - // flights. - FINAL_URLS = 15; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 16; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 17; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 18; - - // Data Type: STRING_LIST. List of recommended property IDs to show together - // with this item. - SIMILAR_PROPERTY_IDS = 19; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 20; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 21; - } - - -} diff --git a/google/ads/googleads/v4/enums/hotel_price_bucket.proto b/google/ads/googleads/v4/enums/hotel_price_bucket.proto deleted file mode 100644 index 370fb4cc8..000000000 --- a/google/ads/googleads/v4/enums/hotel_price_bucket.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelPriceBucketProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing hotel price buckets. - -// Container for enum describing hotel price bucket for a hotel itinerary. -message HotelPriceBucketEnum { - // Enum describing possible hotel price buckets. - enum HotelPriceBucket { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Tied for lowest price. Partner is within a small variance of the lowest - // price. - LOWEST_TIED = 3; - - // Not lowest price. Partner is not within a small variance of the lowest - // price. - NOT_LOWEST = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/hotel_rate_type.proto b/google/ads/googleads/v4/enums/hotel_rate_type.proto deleted file mode 100644 index 984c60285..000000000 --- a/google/ads/googleads/v4/enums/hotel_rate_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelRateTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing hotel rate types. - -// Container for enum describing possible hotel rate types. -message HotelRateTypeEnum { - // Enum describing possible hotel rate types. - enum HotelRateType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Rate type information is unavailable. - UNAVAILABLE = 2; - - // Rates available to everyone. - PUBLIC_RATE = 3; - - // A membership program rate is available and satisfies basic requirements - // like having a public rate available. UI treatment will strikethrough the - // public rate and indicate that a discount is available to the user. For - // more on Qualified Rates, visit - // https://developers.google.com/hotels/hotel-ads/dev-guide/qualified-rates - QUALIFIED_RATE = 4; - - // Rates available to users that satisfy some eligibility criteria. e.g. - // all signed-in users, 20% of mobile users, all mobile users in Canada, - // etc. - PRIVATE_RATE = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/income_range_type.proto b/google/ads/googleads/v4/enums/income_range_type.proto deleted file mode 100644 index 7c6c5604d..000000000 --- a/google/ads/googleads/v4/enums/income_range_type.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "IncomeRangeTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing income range types. - -// Container for enum describing the type of demographic income ranges. -message IncomeRangeTypeEnum { - // The type of demographic income ranges (e.g. between 0% to 50%). - enum IncomeRangeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // 0%-50%. - INCOME_RANGE_0_50 = 510001; - - // 50% to 60%. - INCOME_RANGE_50_60 = 510002; - - // 60% to 70%. - INCOME_RANGE_60_70 = 510003; - - // 70% to 80%. - INCOME_RANGE_70_80 = 510004; - - // 80% to 90%. - INCOME_RANGE_80_90 = 510005; - - // Greater than 90%. - INCOME_RANGE_90_UP = 510006; - - // Undetermined income range. - INCOME_RANGE_UNDETERMINED = 510000; - } - - -} diff --git a/google/ads/googleads/v4/enums/interaction_event_type.proto b/google/ads/googleads/v4/enums/interaction_event_type.proto deleted file mode 100644 index 1ceabfbc3..000000000 --- a/google/ads/googleads/v4/enums/interaction_event_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "InteractionEventTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing types of payable and free interactions. - -// Container for enum describing types of payable and free interactions. -message InteractionEventTypeEnum { - // Enum describing possible types of payable and free interactions. - enum InteractionEventType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Click to site. In most cases, this interaction navigates to an external - // location, usually the advertiser's landing page. This is also the default - // InteractionEventType for click events. - CLICK = 2; - - // The user's expressed intent to engage with the ad in-place. - ENGAGEMENT = 3; - - // User viewed a video ad. - VIDEO_VIEW = 4; - - // The default InteractionEventType for ad conversion events. - // This is used when an ad conversion row does NOT indicate - // that the free interactions (i.e., the ad conversions) - // should be 'promoted' and reported as part of the core metrics. - // These are simply other (ad) conversions. - NONE = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/interaction_type.proto b/google/ads/googleads/v4/enums/interaction_type.proto deleted file mode 100644 index cb65e92b8..000000000 --- a/google/ads/googleads/v4/enums/interaction_type.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "InteractionTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing interaction types. - -// Container for enum describing possible interaction types. -message InteractionTypeEnum { - // Enum describing possible interaction types. - enum InteractionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Calls. - CALLS = 8000; - } - - -} diff --git a/google/ads/googleads/v4/enums/invoice_type.proto b/google/ads/googleads/v4/enums/invoice_type.proto deleted file mode 100644 index 4caa281ff..000000000 --- a/google/ads/googleads/v4/enums/invoice_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing invoice types. - -// Container for enum describing the type of invoices. -message InvoiceTypeEnum { - // The possible type of invoices. - enum InvoiceType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // An invoice with a negative amount. The account receives a credit. - CREDIT_MEMO = 2; - - // An invoice with a positive amount. The account owes a balance. - INVOICE = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/job_placeholder_field.proto b/google/ads/googleads/v4/enums/job_placeholder_field.proto deleted file mode 100644 index 348fb69c0..000000000 --- a/google/ads/googleads/v4/enums/job_placeholder_field.proto +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "JobsPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Job placeholder fields. - -// Values for Job placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message JobPlaceholderFieldEnum { - // Possible values for Job placeholder fields. - enum JobPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. If only JOB_ID is specified, then it must be - // unique. If both JOB_ID and LOCATION_ID are specified, then the - // pair must be unique. - // ID) pair must be unique. - JOB_ID = 2; - - // Data Type: STRING. Combination of JOB_ID and LOCATION_ID must be unique - // per offer. - LOCATION_ID = 3; - - // Data Type: STRING. Required. Main headline with job title to be shown in - // dynamic ad. - TITLE = 4; - - // Data Type: STRING. Job subtitle to be shown in dynamic ad. - SUBTITLE = 5; - - // Data Type: STRING. Description of job to be shown in dynamic ad. - DESCRIPTION = 6; - - // Data Type: URL. Image to be displayed in the ad. Highly recommended for - // image ads. - IMAGE_URL = 7; - - // Data Type: STRING. Category of property used to group like items together - // for recommendation engine. - CATEGORY = 8; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 9; - - // Data Type: STRING. Complete property address, including postal code. - ADDRESS = 10; - - // Data Type: STRING. Salary or salary range of job to be shown in dynamic - // ad. - SALARY = 11; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific job and its location). - FINAL_URLS = 12; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 14; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 15; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 16; - - // Data Type: STRING_LIST. List of recommended job IDs to show together with - // this item. - SIMILAR_JOB_IDS = 17; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 18; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 19; - } - - -} diff --git a/google/ads/googleads/v4/enums/keyword_match_type.proto b/google/ads/googleads/v4/enums/keyword_match_type.proto deleted file mode 100644 index c527709e8..000000000 --- a/google/ads/googleads/v4/enums/keyword_match_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordMatchTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Keyword match types. - -// Message describing Keyword match types. -message KeywordMatchTypeEnum { - // Possible Keyword match types. - enum KeywordMatchType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Exact match. - EXACT = 2; - - // Phrase match. - PHRASE = 3; - - // Broad match. - BROAD = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/keyword_plan_competition_level.proto b/google/ads/googleads/v4/enums/keyword_plan_competition_level.proto deleted file mode 100644 index e155b317b..000000000 --- a/google/ads/googleads/v4/enums/keyword_plan_competition_level.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCompetitionLevelProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Keyword Planner competition levels. - -// Container for enumeration of keyword competition levels. The competition -// level indicates how competitive ad placement is for a keyword and -// is determined by the number of advertisers bidding on that keyword relative -// to all keywords across Google. The competition level can depend on the -// location and Search Network targeting options you've selected. -message KeywordPlanCompetitionLevelEnum { - // Competition level of a keyword. - enum KeywordPlanCompetitionLevel { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Low competition. The Competition Index range for this is [0, 33]. - LOW = 2; - - // Medium competition. The Competition Index range for this is [34, 66]. - MEDIUM = 3; - - // High competition. The Competition Index range for this is [67, 100]. - HIGH = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/keyword_plan_forecast_interval.proto b/google/ads/googleads/v4/enums/keyword_plan_forecast_interval.proto deleted file mode 100644 index 810de8525..000000000 --- a/google/ads/googleads/v4/enums/keyword_plan_forecast_interval.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanForecastIntervalProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing keyword plan forecast intervals. - -// Container for enumeration of forecast intervals. -message KeywordPlanForecastIntervalEnum { - // Forecast intervals. - enum KeywordPlanForecastInterval { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // The next week date range for keyword plan. The next week is based - // on the default locale of the user's account and is mostly SUN-SAT or - // MON-SUN. - // This can be different from next-7 days. - NEXT_WEEK = 3; - - // The next month date range for keyword plan. - NEXT_MONTH = 4; - - // The next quarter date range for keyword plan. - NEXT_QUARTER = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/keyword_plan_network.proto b/google/ads/googleads/v4/enums/keyword_plan_network.proto deleted file mode 100644 index 154346300..000000000 --- a/google/ads/googleads/v4/enums/keyword_plan_network.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanNetworkProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Keyword Planner forecastable network types. - -// Container for enumeration of keyword plan forecastable network types. -message KeywordPlanNetworkEnum { - // Enumerates keyword plan forecastable network types. - enum KeywordPlanNetwork { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Google Search. - GOOGLE_SEARCH = 2; - - // Google Search + Search partners. - GOOGLE_SEARCH_AND_PARTNERS = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/label_status.proto b/google/ads/googleads/v4/enums/label_status.proto deleted file mode 100644 index 7a7026361..000000000 --- a/google/ads/googleads/v4/enums/label_status.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LabelStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum describing possible status of a label. -message LabelStatusEnum { - // Possible statuses of a label. - enum LabelStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Label is enabled. - ENABLED = 2; - - // Label is removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/legacy_app_install_ad_app_store.proto b/google/ads/googleads/v4/enums/legacy_app_install_ad_app_store.proto deleted file mode 100644 index 35da6c885..000000000 --- a/google/ads/googleads/v4/enums/legacy_app_install_ad_app_store.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LegacyAppInstallAdAppStoreProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing app store types for a legacy app install ad. - -// Container for enum describing app store type in a legacy app install ad. -message LegacyAppInstallAdAppStoreEnum { - // App store type in a legacy app install ad. - enum LegacyAppInstallAdAppStore { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Apple iTunes. - APPLE_APP_STORE = 2; - - // Google Play. - GOOGLE_PLAY = 3; - - // Windows Store. - WINDOWS_STORE = 4; - - // Windows Phone Store. - WINDOWS_PHONE_STORE = 5; - - // The app is hosted in a Chinese app store. - CN_APP_STORE = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/linked_account_type.proto b/google/ads/googleads/v4/enums/linked_account_type.proto deleted file mode 100644 index c8350113c..000000000 --- a/google/ads/googleads/v4/enums/linked_account_type.proto +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LinkedAccountTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum describing different types of Linked accounts. -message LinkedAccountTypeEnum { - // Describes the possible link types between a Google Ads customer - // and another account. - enum LinkedAccountType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // A link to provide third party app analytics data. - THIRD_PARTY_APP_ANALYTICS = 2; - } - - -} diff --git a/google/ads/googleads/v4/enums/listing_group_type.proto b/google/ads/googleads/v4/enums/listing_group_type.proto deleted file mode 100644 index a19c7e628..000000000 --- a/google/ads/googleads/v4/enums/listing_group_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ListingGroupTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing listing groups. - -// Container for enum describing the type of the listing group. -message ListingGroupTypeEnum { - // The type of the listing group. - enum ListingGroupType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Subdivision of products along some listing dimension. These nodes - // are not used by serving to target listing entries, but is purely - // to define the structure of the tree. - SUBDIVISION = 2; - - // Listing group unit that defines a bid. - UNIT = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/local_placeholder_field.proto b/google/ads/googleads/v4/enums/local_placeholder_field.proto deleted file mode 100644 index 704db3236..000000000 --- a/google/ads/googleads/v4/enums/local_placeholder_field.proto +++ /dev/null @@ -1,119 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocalPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Local placeholder fields. - -// Values for Local placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message LocalPlaceholderFieldEnum { - // Possible values for Local placeholder fields. - enum LocalPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Unique ID. - DEAL_ID = 2; - - // Data Type: STRING. Required. Main headline with local deal title to be - // shown in dynamic ad. - DEAL_NAME = 3; - - // Data Type: STRING. Local deal subtitle to be shown in dynamic ad. - SUBTITLE = 4; - - // Data Type: STRING. Description of local deal to be shown in dynamic ad. - DESCRIPTION = 5; - - // Data Type: STRING. Price to be shown in the ad. Highly recommended for - // dynamic ads. Example: "100.00 USD" - PRICE = 6; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 7; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 8; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 9; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 10; - - // Data Type: STRING. Complete property address, including postal code. - ADDRESS = 11; - - // Data Type: STRING. Category of local deal used to group like items - // together for recommendation engine. - CATEGORY = 12; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 13; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific local deal and its location). - FINAL_URLS = 14; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 15; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 16; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 17; - - // Data Type: STRING_LIST. List of recommended local deal IDs to show - // together with this item. - SIMILAR_DEAL_IDS = 18; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 19; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 20; - } - - -} diff --git a/google/ads/googleads/v4/enums/location_extension_targeting_criterion_field.proto b/google/ads/googleads/v4/enums/location_extension_targeting_criterion_field.proto deleted file mode 100644 index 6285fd554..000000000 --- a/google/ads/googleads/v4/enums/location_extension_targeting_criterion_field.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationExtensionTargetingCriterionFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Location Extension Targeting criterion fields. - -// Values for Location Extension Targeting criterion fields. -message LocationExtensionTargetingCriterionFieldEnum { - // Possible values for Location Extension Targeting criterion fields. - enum LocationExtensionTargetingCriterionField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Line 1 of the business address. - ADDRESS_LINE_1 = 2; - - // Data Type: STRING. Line 2 of the business address. - ADDRESS_LINE_2 = 3; - - // Data Type: STRING. City of the business address. - CITY = 4; - - // Data Type: STRING. Province of the business address. - PROVINCE = 5; - - // Data Type: STRING. Postal code of the business address. - POSTAL_CODE = 6; - - // Data Type: STRING. Country code of the business address. - COUNTRY_CODE = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/location_group_radius_units.proto b/google/ads/googleads/v4/enums/location_group_radius_units.proto deleted file mode 100644 index 25d0a9b04..000000000 --- a/google/ads/googleads/v4/enums/location_group_radius_units.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationGroupRadiusUnitsProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing location group radius units. - -// Container for enum describing unit of radius in location group. -message LocationGroupRadiusUnitsEnum { - // The unit of radius distance in location group (e.g. MILES) - enum LocationGroupRadiusUnits { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Meters - METERS = 2; - - // Miles - MILES = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/location_placeholder_field.proto b/google/ads/googleads/v4/enums/location_placeholder_field.proto deleted file mode 100644 index 2db4f1e3a..000000000 --- a/google/ads/googleads/v4/enums/location_placeholder_field.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Location placeholder fields. - -// Values for Location placeholder fields. -message LocationPlaceholderFieldEnum { - // Possible values for Location placeholder fields. - enum LocationPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The name of the business. - BUSINESS_NAME = 2; - - // Data Type: STRING. Line 1 of the business address. - ADDRESS_LINE_1 = 3; - - // Data Type: STRING. Line 2 of the business address. - ADDRESS_LINE_2 = 4; - - // Data Type: STRING. City of the business address. - CITY = 5; - - // Data Type: STRING. Province of the business address. - PROVINCE = 6; - - // Data Type: STRING. Postal code of the business address. - POSTAL_CODE = 7; - - // Data Type: STRING. Country code of the business address. - COUNTRY_CODE = 8; - - // Data Type: STRING. Phone number of the business. - PHONE_NUMBER = 9; - } - - -} diff --git a/google/ads/googleads/v4/enums/location_source_type.proto b/google/ads/googleads/v4/enums/location_source_type.proto deleted file mode 100644 index c8244e7ea..000000000 --- a/google/ads/googleads/v4/enums/location_source_type.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationSourceTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing location source types. - -// Used to distinguish the location source type. -message LocationSourceTypeEnum { - // The possible types of a location source. - enum LocationSourceType { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Locations associated with the customer's linked Google My Business - // account. - GOOGLE_MY_BUSINESS = 2; - - // Affiliate (chain) store locations. For example, Best Buy store locations. - AFFILIATE = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/manager_link_status.proto b/google/ads/googleads/v4/enums/manager_link_status.proto deleted file mode 100644 index f64454cef..000000000 --- a/google/ads/googleads/v4/enums/manager_link_status.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ManagerLinkStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum describing possible status of a manager and client link. -message ManagerLinkStatusEnum { - // Possible statuses of a link. - enum ManagerLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Indicates current in-effect relationship - ACTIVE = 2; - - // Indicates terminated relationship - INACTIVE = 3; - - // Indicates relationship has been requested by manager, but the client - // hasn't accepted yet. - PENDING = 4; - - // Relationship was requested by the manager, but the client has refused. - REFUSED = 5; - - // Indicates relationship has been requested by manager, but manager - // canceled it. - CANCELED = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/matching_function_context_type.proto b/google/ads/googleads/v4/enums/matching_function_context_type.proto deleted file mode 100644 index 6758b1b3f..000000000 --- a/google/ads/googleads/v4/enums/matching_function_context_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MatchingFunctionContextTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing matching function context types. - -// Container for context types for an operand in a matching function. -message MatchingFunctionContextTypeEnum { - // Possible context types for an operand in a matching function. - enum MatchingFunctionContextType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item id in the request context. - FEED_ITEM_ID = 2; - - // The device being used (possible values are 'Desktop' or 'Mobile'). - DEVICE_NAME = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/matching_function_operator.proto b/google/ads/googleads/v4/enums/matching_function_operator.proto deleted file mode 100644 index d3544432d..000000000 --- a/google/ads/googleads/v4/enums/matching_function_operator.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MatchingFunctionOperatorProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing matching function operators. - -// Container for enum describing matching function operator. -message MatchingFunctionOperatorEnum { - // Possible operators in a matching function. - enum MatchingFunctionOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The IN operator. - IN = 2; - - // The IDENTITY operator. - IDENTITY = 3; - - // The EQUALS operator - EQUALS = 4; - - // Operator that takes two or more operands that are of type - // FunctionOperand and checks that all the operands evaluate to true. - // For functions related to ad formats, all the operands must be in - // left_operands. - AND = 5; - - // Operator that returns true if the elements in left_operands contain any - // of the elements in right_operands. Otherwise, return false. The - // right_operands must contain at least 1 and no more than 3 - // ConstantOperands. - CONTAINS_ANY = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/media_type.proto b/google/ads/googleads/v4/enums/media_type.proto deleted file mode 100644 index 755df8b60..000000000 --- a/google/ads/googleads/v4/enums/media_type.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MediaTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing media types. - -// Container for enum describing the types of media. -message MediaTypeEnum { - // The type of media. - enum MediaType { - // The media type has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Static image, used for image ad. - IMAGE = 2; - - // Small image, used for map ad. - ICON = 3; - - // ZIP file, used in fields of template ads. - MEDIA_BUNDLE = 4; - - // Audio file. - AUDIO = 5; - - // Video file. - VIDEO = 6; - - // Animated image, such as animated GIF. - DYNAMIC_IMAGE = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/merchant_center_link_status.proto b/google/ads/googleads/v4/enums/merchant_center_link_status.proto deleted file mode 100644 index 79ee833a3..000000000 --- a/google/ads/googleads/v4/enums/merchant_center_link_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MerchantCenterLinkStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Merchant Center link statuses. - -// Container for enum describing possible statuses of a Google Merchant Center -// link. -message MerchantCenterLinkStatusEnum { - // Describes the possible statuses for a link between a Google Ads customer - // and a Google Merchant Center account. - enum MerchantCenterLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The link is enabled. - ENABLED = 2; - - // The link has no effect. It was proposed by the Merchant Center Account - // owner and hasn't been confirmed by the customer. - PENDING = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/message_placeholder_field.proto b/google/ads/googleads/v4/enums/message_placeholder_field.proto deleted file mode 100644 index c9e1d6ce0..000000000 --- a/google/ads/googleads/v4/enums/message_placeholder_field.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MessagePlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Message placeholder fields. - -// Values for Message placeholder fields. -message MessagePlaceholderFieldEnum { - // Possible values for Message placeholder fields. - enum MessagePlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The name of your business. - BUSINESS_NAME = 2; - - // Data Type: STRING. Country code of phone number. - COUNTRY_CODE = 3; - - // Data Type: STRING. A phone number that's capable of sending and receiving - // text messages. - PHONE_NUMBER = 4; - - // Data Type: STRING. The text that will go in your click-to-message ad. - MESSAGE_EXTENSION_TEXT = 5; - - // Data Type: STRING. The message text automatically shows in people's - // messaging apps when they tap to send you a message. - MESSAGE_TEXT = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/mime_type.proto b/google/ads/googleads/v4/enums/mime_type.proto deleted file mode 100644 index 43c9c09a3..000000000 --- a/google/ads/googleads/v4/enums/mime_type.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MimeTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing mime types. - -// Container for enum describing the mime types. -message MimeTypeEnum { - // The mime type - enum MimeType { - // The mime type has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // MIME type of image/jpeg. - IMAGE_JPEG = 2; - - // MIME type of image/gif. - IMAGE_GIF = 3; - - // MIME type of image/png. - IMAGE_PNG = 4; - - // MIME type of application/x-shockwave-flash. - FLASH = 5; - - // MIME type of text/html. - TEXT_HTML = 6; - - // MIME type of application/pdf. - PDF = 7; - - // MIME type of application/msword. - MSWORD = 8; - - // MIME type of application/vnd.ms-excel. - MSEXCEL = 9; - - // MIME type of application/rtf. - RTF = 10; - - // MIME type of audio/wav. - AUDIO_WAV = 11; - - // MIME type of audio/mp3. - AUDIO_MP3 = 12; - - // MIME type of application/x-html5-ad-zip. - HTML5_AD_ZIP = 13; - } - - -} diff --git a/google/ads/googleads/v4/enums/minute_of_hour.proto b/google/ads/googleads/v4/enums/minute_of_hour.proto deleted file mode 100644 index 0eae256d9..000000000 --- a/google/ads/googleads/v4/enums/minute_of_hour.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MinuteOfHourProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing days of week. - -// Container for enumeration of quarter-hours. -message MinuteOfHourEnum { - // Enumerates of quarter-hours. E.g. "FIFTEEN" - enum MinuteOfHour { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Zero minutes past the hour. - ZERO = 2; - - // Fifteen minutes past the hour. - FIFTEEN = 3; - - // Thirty minutes past the hour. - THIRTY = 4; - - // Forty-five minutes past the hour. - FORTY_FIVE = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/mobile_app_vendor.proto b/google/ads/googleads/v4/enums/mobile_app_vendor.proto deleted file mode 100644 index dba305bf3..000000000 --- a/google/ads/googleads/v4/enums/mobile_app_vendor.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MobileAppVendorProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum describing different types of mobile app vendors. -message MobileAppVendorEnum { - // The type of mobile app vendor - enum MobileAppVendor { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile app vendor for Apple app store. - APPLE_APP_STORE = 2; - - // Mobile app vendor for Google app store. - GOOGLE_APP_STORE = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/mobile_device_type.proto b/google/ads/googleads/v4/enums/mobile_device_type.proto deleted file mode 100644 index 324c8a02d..000000000 --- a/google/ads/googleads/v4/enums/mobile_device_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MobileDeviceTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing mobile device types. - -// Container for enum describing the types of mobile device. -message MobileDeviceTypeEnum { - // The type of mobile device. - enum MobileDeviceType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile phones. - MOBILE = 2; - - // Tablets. - TABLET = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/month_of_year.proto b/google/ads/googleads/v4/enums/month_of_year.proto deleted file mode 100644 index e6c966512..000000000 --- a/google/ads/googleads/v4/enums/month_of_year.proto +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MonthOfYearProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing days of week. - -// Container for enumeration of months of the year, e.g., "January". -message MonthOfYearEnum { - // Enumerates months of the year, e.g., "January". - enum MonthOfYear { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // January. - JANUARY = 2; - - // February. - FEBRUARY = 3; - - // March. - MARCH = 4; - - // April. - APRIL = 5; - - // May. - MAY = 6; - - // June. - JUNE = 7; - - // July. - JULY = 8; - - // August. - AUGUST = 9; - - // September. - SEPTEMBER = 10; - - // October. - OCTOBER = 11; - - // November. - NOVEMBER = 12; - - // December. - DECEMBER = 13; - } - - -} diff --git a/google/ads/googleads/v4/enums/negative_geo_target_type.proto b/google/ads/googleads/v4/enums/negative_geo_target_type.proto deleted file mode 100644 index dfad76d65..000000000 --- a/google/ads/googleads/v4/enums/negative_geo_target_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "NegativeGeoTargetTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing negative geo target types. - -// Container for enum describing possible negative geo target types. -message NegativeGeoTargetTypeEnum { - // The possible negative geo target types. - enum NegativeGeoTargetType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Specifies that a user is excluded from seeing the ad if they - // are in, or show interest in, advertiser's excluded locations. - PRESENCE_OR_INTEREST = 4; - - // Specifies that a user is excluded from seeing the ad if they - // are in advertiser's excluded locations. - PRESENCE = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/offline_user_data_job_failure_reason.proto b/google/ads/googleads/v4/enums/offline_user_data_job_failure_reason.proto deleted file mode 100644 index a9a346901..000000000 --- a/google/ads/googleads/v4/enums/offline_user_data_job_failure_reason.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobFailureReasonProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing offline user data job failure reasons. - -// Container for enum describing reasons why an offline user data job -// failed to be processed. -message OfflineUserDataJobFailureReasonEnum { - // The failure reason of an offline user data job. - enum OfflineUserDataJobFailureReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The matched transactions are insufficient. - INSUFFICIENT_MATCHED_TRANSACTIONS = 2; - - // The uploaded transactions are insufficient. - INSUFFICIENT_TRANSACTIONS = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/offline_user_data_job_status.proto b/google/ads/googleads/v4/enums/offline_user_data_job_status.proto deleted file mode 100644 index 08d98dbb4..000000000 --- a/google/ads/googleads/v4/enums/offline_user_data_job_status.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing offline user data job status. - -// Container for enum describing status of an offline user data job. -message OfflineUserDataJobStatusEnum { - // The status of an offline user data job. - enum OfflineUserDataJobStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The job has been successfully created and pending for uploading. - PENDING = 2; - - // Upload(s) have been accepted and data is being processed. - RUNNING = 3; - - // Uploaded data has been successfully processed. - SUCCESS = 4; - - // Uploaded data has failed to be processed. - FAILED = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/offline_user_data_job_type.proto b/google/ads/googleads/v4/enums/offline_user_data_job_type.proto deleted file mode 100644 index 475eaf05e..000000000 --- a/google/ads/googleads/v4/enums/offline_user_data_job_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing offline user data job types. - -// Container for enum describing types of an offline user data job. -message OfflineUserDataJobTypeEnum { - // The type of an offline user data job. - enum OfflineUserDataJobType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Store Sales Direct data for self service. - STORE_SALES_UPLOAD_FIRST_PARTY = 2; - - // Store Sales Direct data for third party. - STORE_SALES_UPLOAD_THIRD_PARTY = 3; - - // Customer Match user list data. - CUSTOMER_MATCH_USER_LIST = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/operating_system_version_operator_type.proto b/google/ads/googleads/v4/enums/operating_system_version_operator_type.proto deleted file mode 100644 index c35cc715b..000000000 --- a/google/ads/googleads/v4/enums/operating_system_version_operator_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OperatingSystemVersionOperatorTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing operating system version operator types. - -// Container for enum describing the type of OS operators. -message OperatingSystemVersionOperatorTypeEnum { - // The type of operating system version. - enum OperatingSystemVersionOperatorType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Equals to the specified version. - EQUALS_TO = 2; - - // Greater than or equals to the specified version. - GREATER_THAN_EQUALS_TO = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/optimization_goal_type.proto b/google/ads/googleads/v4/enums/optimization_goal_type.proto deleted file mode 100644 index 01348fdd8..000000000 --- a/google/ads/googleads/v4/enums/optimization_goal_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OptimizationGoalTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing optimization goal type. - -// Container for enum describing the type of optimization goal. -message OptimizationGoalTypeEnum { - // The type of optimization goal - enum OptimizationGoalType { - // Not specified. - UNSPECIFIED = 0; - - // Used as a return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Optimize for call clicks. Call click conversions are times people - // selected 'Call' to contact a store after viewing an ad. - CALL_CLICKS = 2; - - // Optimize for driving directions. Driving directions conversions are - // times people selected 'Get directions' to navigate to a store after - // viewing an ad. - DRIVING_DIRECTIONS = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/page_one_promoted_strategy_goal.proto b/google/ads/googleads/v4/enums/page_one_promoted_strategy_goal.proto deleted file mode 100644 index ec42ac663..000000000 --- a/google/ads/googleads/v4/enums/page_one_promoted_strategy_goal.proto +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PageOnePromotedStrategyGoalProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing bidding schemes. diff --git a/google/ads/googleads/v4/enums/parental_status_type.proto b/google/ads/googleads/v4/enums/parental_status_type.proto deleted file mode 100644 index 5a587d33b..000000000 --- a/google/ads/googleads/v4/enums/parental_status_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ParentalStatusTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing parenal status types. - -// Container for enum describing the type of demographic parental statuses. -message ParentalStatusTypeEnum { - // The type of parental statuses (e.g. not a parent). - enum ParentalStatusType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Parent. - PARENT = 300; - - // Not a parent. - NOT_A_PARENT = 301; - - // Undetermined parental status. - UNDETERMINED = 302; - } - - -} diff --git a/google/ads/googleads/v4/enums/payment_mode.proto b/google/ads/googleads/v4/enums/payment_mode.proto deleted file mode 100644 index d3e677164..000000000 --- a/google/ads/googleads/v4/enums/payment_mode.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PaymentModeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing payment modes. - -// Container for enum describing possible payment modes. -message PaymentModeEnum { - // Enum describing possible payment modes. - enum PaymentMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Pay per click. - CLICKS = 4; - - // Pay per conversion value. This mode is only supported by campaigns with - // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION, and - // BudgetType.HOTEL_ADS_COMMISSION. - CONVERSION_VALUE = 5; - - // Pay per conversion. This mode is only supported by campaigns with - // AdvertisingChannelType.DISPLAY (excluding - // AdvertisingChannelSubType.DISPLAY_GMAIL), BiddingStrategyType.TARGET_CPA, - // and BudgetType.FIXED_CPA. The customer must also be eligible for this - // mode. See Customer.eligibility_failure_reasons for details. - CONVERSIONS = 6; - - // Pay per guest stay value. This mode is only supported by campaigns with - // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION, and - // BudgetType.STANDARD. - GUEST_STAY = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/placeholder_type.proto b/google/ads/googleads/v4/enums/placeholder_type.proto deleted file mode 100644 index 7feb1c2fa..000000000 --- a/google/ads/googleads/v4/enums/placeholder_type.proto +++ /dev/null @@ -1,121 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PlaceholderTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing feed placeholder types. - -// Container for enum describing possible placeholder types for a feed mapping. -message PlaceholderTypeEnum { - // Possible placeholder types for a feed mapping. - enum PlaceholderType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Lets you show links in your ad to pages from your website, including the - // main landing page. - SITELINK = 2; - - // Lets you attach a phone number to an ad, allowing customers to call - // directly from the ad. - CALL = 3; - - // Lets you provide users with a link that points to a mobile app in - // addition to a website. - APP = 4; - - // Lets you show locations of businesses from your Google My Business - // account in your ad. This helps people find your locations by showing your - // ads with your address, a map to your location, or the distance to your - // business. This extension type is useful to draw customers to your - // brick-and-mortar location. - LOCATION = 5; - - // If you sell your product through retail chains, affiliate location - // extensions let you show nearby stores that carry your products. - AFFILIATE_LOCATION = 6; - - // Lets you include additional text with your search ads that provide - // detailed information about your business, including products and services - // you offer. Callouts appear in ads at the top and bottom of Google search - // results. - CALLOUT = 7; - - // Lets you add more info to your ad, specific to some predefined categories - // such as types, brands, styles, etc. A minimum of 3 text (SNIPPETS) values - // are required. - STRUCTURED_SNIPPET = 8; - - // Allows users to see your ad, click an icon, and contact you directly by - // text message. With one tap on your ad, people can contact you to book an - // appointment, get a quote, ask for information, or request a service. - MESSAGE = 9; - - // Lets you display prices for a list of items along with your ads. A price - // feed is composed of three to eight price table rows. - PRICE = 10; - - // Allows you to highlight sales and other promotions that let users see how - // they can save by buying now. - PROMOTION = 11; - - // Lets you dynamically inject custom data into the title and description - // of your ads. - AD_CUSTOMIZER = 12; - - // Indicates that this feed is for education dynamic remarketing. - DYNAMIC_EDUCATION = 13; - - // Indicates that this feed is for flight dynamic remarketing. - DYNAMIC_FLIGHT = 14; - - // Indicates that this feed is for a custom dynamic remarketing type. Use - // this only if the other business types don't apply to your products or - // services. - DYNAMIC_CUSTOM = 15; - - // Indicates that this feed is for hotels and rentals dynamic remarketing. - DYNAMIC_HOTEL = 16; - - // Indicates that this feed is for real estate dynamic remarketing. - DYNAMIC_REAL_ESTATE = 17; - - // Indicates that this feed is for travel dynamic remarketing. - DYNAMIC_TRAVEL = 18; - - // Indicates that this feed is for local deals dynamic remarketing. - DYNAMIC_LOCAL = 19; - - // Indicates that this feed is for job dynamic remarketing. - DYNAMIC_JOB = 20; - } - - -} diff --git a/google/ads/googleads/v4/enums/placement_type.proto b/google/ads/googleads/v4/enums/placement_type.proto deleted file mode 100644 index d3b1d128f..000000000 --- a/google/ads/googleads/v4/enums/placement_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PlacementTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing placement types. - -// Container for enum describing possible placement types. -message PlacementTypeEnum { - // Possible placement types for a feed mapping. - enum PlacementType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Websites(e.g. 'www.flowers4sale.com'). - WEBSITE = 2; - - // Mobile application categories(e.g. 'Games'). - MOBILE_APP_CATEGORY = 3; - - // mobile applications(e.g. 'mobileapp::2-com.whatsthewordanswers'). - MOBILE_APPLICATION = 4; - - // YouTube videos(e.g. 'youtube.com/video/wtLJPvx7-ys'). - YOUTUBE_VIDEO = 5; - - // YouTube channels(e.g. 'youtube.com::L8ZULXASCc1I_oaOT0NaOQ'). - YOUTUBE_CHANNEL = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/policy_approval_status.proto b/google/ads/googleads/v4/enums/policy_approval_status.proto deleted file mode 100644 index 5e6e602aa..000000000 --- a/google/ads/googleads/v4/enums/policy_approval_status.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyApprovalStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing policy approval statuses. - -// Container for enum describing possible policy approval statuses. -message PolicyApprovalStatusEnum { - // The possible policy approval statuses. When there are several approval - // statuses available the most severe one will be used. The order of severity - // is DISAPPROVED, AREA_OF_INTEREST_ONLY, APPROVED_LIMITED and APPROVED. - enum PolicyApprovalStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Will not serve. - DISAPPROVED = 2; - - // Serves with restrictions. - APPROVED_LIMITED = 3; - - // Serves without restrictions. - APPROVED = 4; - - // Will not serve in targeted countries, but may serve for users who are - // searching for information about the targeted countries. - AREA_OF_INTEREST_ONLY = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/policy_review_status.proto b/google/ads/googleads/v4/enums/policy_review_status.proto deleted file mode 100644 index 77c806ede..000000000 --- a/google/ads/googleads/v4/enums/policy_review_status.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyReviewStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing policy review statuses. - -// Container for enum describing possible policy review statuses. -message PolicyReviewStatusEnum { - // The possible policy review statuses. - enum PolicyReviewStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Currently under review. - REVIEW_IN_PROGRESS = 2; - - // Primary review complete. Other reviews may be continuing. - REVIEWED = 3; - - // The resource has been resubmitted for approval or its policy decision has - // been appealed. - UNDER_APPEAL = 4; - - // The resource is eligible and may be serving but could still undergo - // further review. - ELIGIBLE_MAY_SERVE = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/policy_topic_entry_type.proto b/google/ads/googleads/v4/enums/policy_topic_entry_type.proto deleted file mode 100644 index a977d91f5..000000000 --- a/google/ads/googleads/v4/enums/policy_topic_entry_type.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEntryTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing policy topic entry types. - -// Container for enum describing possible policy topic entry types. -message PolicyTopicEntryTypeEnum { - // The possible policy topic entry types. - enum PolicyTopicEntryType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The resource will not be served. - PROHIBITED = 2; - - // The resource will not be served under some circumstances. - LIMITED = 4; - - // The resource cannot serve at all because of the current targeting - // criteria. - FULLY_LIMITED = 8; - - // May be of interest, but does not limit how the resource is served. - DESCRIPTIVE = 5; - - // Could increase coverage beyond normal. - BROADENING = 6; - - // Constrained for all targeted countries, but may serve in other countries - // through area of interest. - AREA_OF_INTEREST_ONLY = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/policy_topic_evidence_destination_mismatch_url_type.proto b/google/ads/googleads/v4/enums/policy_topic_evidence_destination_mismatch_url_type.proto deleted file mode 100644 index aeaf9679d..000000000 --- a/google/ads/googleads/v4/enums/policy_topic_evidence_destination_mismatch_url_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEvidenceDestinationMismatchUrlTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing policy topic evidence destination mismatch url types. - -// Container for enum describing possible policy topic evidence destination -// mismatch url types. -message PolicyTopicEvidenceDestinationMismatchUrlTypeEnum { - // The possible policy topic evidence destination mismatch url types. - enum PolicyTopicEvidenceDestinationMismatchUrlType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The display url. - DISPLAY_URL = 2; - - // The final url. - FINAL_URL = 3; - - // The final mobile url. - FINAL_MOBILE_URL = 4; - - // The tracking url template, with substituted desktop url. - TRACKING_URL = 5; - - // The tracking url template, with substituted mobile url. - MOBILE_TRACKING_URL = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/policy_topic_evidence_destination_not_working_device.proto b/google/ads/googleads/v4/enums/policy_topic_evidence_destination_not_working_device.proto deleted file mode 100644 index 058186a7a..000000000 --- a/google/ads/googleads/v4/enums/policy_topic_evidence_destination_not_working_device.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEvidenceDestinationNotWorkingDeviceProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing device of destination not working policy topic -// evidence. - -// Container for enum describing possible policy topic evidence destination not -// working devices. -message PolicyTopicEvidenceDestinationNotWorkingDeviceEnum { - // The possible policy topic evidence destination not working devices. - enum PolicyTopicEvidenceDestinationNotWorkingDevice { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Landing page doesn't work on desktop device. - DESKTOP = 2; - - // Landing page doesn't work on Android device. - ANDROID = 3; - - // Landing page doesn't work on iOS device. - IOS = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto b/google/ads/googleads/v4/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto deleted file mode 100644 index 8898970f4..000000000 --- a/google/ads/googleads/v4/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing DNS error types of destination not working policy topic -// evidence. - -// Container for enum describing possible policy topic evidence destination not -// working DNS error types. -message PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum { - // The possible policy topic evidence destination not working DNS error types. - enum PolicyTopicEvidenceDestinationNotWorkingDnsErrorType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Host name not found in DNS when fetching landing page. - HOSTNAME_NOT_FOUND = 2; - - // Google internal crawler issue when communicating with DNS. This error - // doesn't mean the landing page doesn't work. Google will recrawl the - // landing page. - GOOGLE_CRAWLER_DNS_ISSUE = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/positive_geo_target_type.proto b/google/ads/googleads/v4/enums/positive_geo_target_type.proto deleted file mode 100644 index 1b13151f4..000000000 --- a/google/ads/googleads/v4/enums/positive_geo_target_type.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PositiveGeoTargetTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing positive geo target types. - -// Container for enum describing possible positive geo target types. -message PositiveGeoTargetTypeEnum { - // The possible positive geo target types. - enum PositiveGeoTargetType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Specifies that an ad is triggered if the user is in, - // or shows interest in, advertiser's targeted locations. - PRESENCE_OR_INTEREST = 5; - - // Specifies that an ad is triggered if the user - // searches for advertiser's targeted locations. - // This can only be used with Search and standard - // Shopping campaigns. - SEARCH_INTEREST = 6; - - // Specifies that an ad is triggered if the user is in - // or regularly in advertiser's targeted locations. - PRESENCE = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/preferred_content_type.proto b/google/ads/googleads/v4/enums/preferred_content_type.proto deleted file mode 100644 index 458890ad6..000000000 --- a/google/ads/googleads/v4/enums/preferred_content_type.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PreferredContentTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing preferred content criterion type. - -// Container for enumeration of preferred content criterion type. -message PreferredContentTypeEnum { - // Enumerates preferred content criterion type. - enum PreferredContentType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Represents top content on YouTube. - YOUTUBE_TOP_CONTENT = 400; - } - - -} diff --git a/google/ads/googleads/v4/enums/price_extension_price_qualifier.proto b/google/ads/googleads/v4/enums/price_extension_price_qualifier.proto deleted file mode 100644 index e0a105d22..000000000 --- a/google/ads/googleads/v4/enums/price_extension_price_qualifier.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PriceExtensionPriceQualifierProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing price extension price qualifier type. - -// Container for enum describing a price extension price qualifier. -message PriceExtensionPriceQualifierEnum { - // Enums of price extension price qualifier. - enum PriceExtensionPriceQualifier { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // 'From' qualifier for the price. - FROM = 2; - - // 'Up to' qualifier for the price. - UP_TO = 3; - - // 'Average' qualifier for the price. - AVERAGE = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/price_extension_price_unit.proto b/google/ads/googleads/v4/enums/price_extension_price_unit.proto deleted file mode 100644 index 4d82fbee7..000000000 --- a/google/ads/googleads/v4/enums/price_extension_price_unit.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PriceExtensionPriceUnitProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing price extension price unit. - -// Container for enum describing price extension price unit. -message PriceExtensionPriceUnitEnum { - // Price extension price unit. - enum PriceExtensionPriceUnit { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Per hour. - PER_HOUR = 2; - - // Per day. - PER_DAY = 3; - - // Per week. - PER_WEEK = 4; - - // Per month. - PER_MONTH = 5; - - // Per year. - PER_YEAR = 6; - - // Per night. - PER_NIGHT = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/price_extension_type.proto b/google/ads/googleads/v4/enums/price_extension_type.proto deleted file mode 100644 index 69b36413d..000000000 --- a/google/ads/googleads/v4/enums/price_extension_type.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PriceExtensionTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing price extension type. - -// Container for enum describing types for a price extension. -message PriceExtensionTypeEnum { - // Price extension type. - enum PriceExtensionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The type for showing a list of brands. - BRANDS = 2; - - // The type for showing a list of events. - EVENTS = 3; - - // The type for showing locations relevant to your business. - LOCATIONS = 4; - - // The type for showing sub-regions or districts within a city or region. - NEIGHBORHOODS = 5; - - // The type for showing a collection of product categories. - PRODUCT_CATEGORIES = 6; - - // The type for showing a collection of related product tiers. - PRODUCT_TIERS = 7; - - // The type for showing a collection of services offered by your business. - SERVICES = 8; - - // The type for showing a collection of service categories. - SERVICE_CATEGORIES = 9; - - // The type for showing a collection of related service tiers. - SERVICE_TIERS = 10; - } - - -} diff --git a/google/ads/googleads/v4/enums/price_placeholder_field.proto b/google/ads/googleads/v4/enums/price_placeholder_field.proto deleted file mode 100644 index 3f74b2b91..000000000 --- a/google/ads/googleads/v4/enums/price_placeholder_field.proto +++ /dev/null @@ -1,240 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PricePlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Price placeholder fields. - -// Values for Price placeholder fields. -message PricePlaceholderFieldEnum { - // Possible values for Price placeholder fields. - enum PricePlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The type of your price feed. Must match one of the - // predefined price feed type exactly. - TYPE = 2; - - // Data Type: STRING. The qualifier of each price. Must match one of the - // predefined price qualifiers exactly. - PRICE_QUALIFIER = 3; - - // Data Type: URL. Tracking template for the price feed when using Upgraded - // URLs. - TRACKING_TEMPLATE = 4; - - // Data Type: STRING. Language of the price feed. Must match one of the - // available available locale codes exactly. - LANGUAGE = 5; - - // Data Type: STRING. Final URL suffix for the price feed when using - // parallel tracking. - FINAL_URL_SUFFIX = 6; - - // Data Type: STRING. The header of item 1 of the table. - ITEM_1_HEADER = 100; - - // Data Type: STRING. The description of item 1 of the table. - ITEM_1_DESCRIPTION = 101; - - // Data Type: MONEY. The price (money with currency) of item 1 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_1_PRICE = 102; - - // Data Type: STRING. The price unit of item 1 of the table. Must match one - // of the predefined price units. - ITEM_1_UNIT = 103; - - // Data Type: URL_LIST. The final URLs of item 1 of the table when using - // Upgraded URLs. - ITEM_1_FINAL_URLS = 104; - - // Data Type: URL_LIST. The final mobile URLs of item 1 of the table when - // using Upgraded URLs. - ITEM_1_FINAL_MOBILE_URLS = 105; - - // Data Type: STRING. The header of item 2 of the table. - ITEM_2_HEADER = 200; - - // Data Type: STRING. The description of item 2 of the table. - ITEM_2_DESCRIPTION = 201; - - // Data Type: MONEY. The price (money with currency) of item 2 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_2_PRICE = 202; - - // Data Type: STRING. The price unit of item 2 of the table. Must match one - // of the predefined price units. - ITEM_2_UNIT = 203; - - // Data Type: URL_LIST. The final URLs of item 2 of the table when using - // Upgraded URLs. - ITEM_2_FINAL_URLS = 204; - - // Data Type: URL_LIST. The final mobile URLs of item 2 of the table when - // using Upgraded URLs. - ITEM_2_FINAL_MOBILE_URLS = 205; - - // Data Type: STRING. The header of item 3 of the table. - ITEM_3_HEADER = 300; - - // Data Type: STRING. The description of item 3 of the table. - ITEM_3_DESCRIPTION = 301; - - // Data Type: MONEY. The price (money with currency) of item 3 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_3_PRICE = 302; - - // Data Type: STRING. The price unit of item 3 of the table. Must match one - // of the predefined price units. - ITEM_3_UNIT = 303; - - // Data Type: URL_LIST. The final URLs of item 3 of the table when using - // Upgraded URLs. - ITEM_3_FINAL_URLS = 304; - - // Data Type: URL_LIST. The final mobile URLs of item 3 of the table when - // using Upgraded URLs. - ITEM_3_FINAL_MOBILE_URLS = 305; - - // Data Type: STRING. The header of item 4 of the table. - ITEM_4_HEADER = 400; - - // Data Type: STRING. The description of item 4 of the table. - ITEM_4_DESCRIPTION = 401; - - // Data Type: MONEY. The price (money with currency) of item 4 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_4_PRICE = 402; - - // Data Type: STRING. The price unit of item 4 of the table. Must match one - // of the predefined price units. - ITEM_4_UNIT = 403; - - // Data Type: URL_LIST. The final URLs of item 4 of the table when using - // Upgraded URLs. - ITEM_4_FINAL_URLS = 404; - - // Data Type: URL_LIST. The final mobile URLs of item 4 of the table when - // using Upgraded URLs. - ITEM_4_FINAL_MOBILE_URLS = 405; - - // Data Type: STRING. The header of item 5 of the table. - ITEM_5_HEADER = 500; - - // Data Type: STRING. The description of item 5 of the table. - ITEM_5_DESCRIPTION = 501; - - // Data Type: MONEY. The price (money with currency) of item 5 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_5_PRICE = 502; - - // Data Type: STRING. The price unit of item 5 of the table. Must match one - // of the predefined price units. - ITEM_5_UNIT = 503; - - // Data Type: URL_LIST. The final URLs of item 5 of the table when using - // Upgraded URLs. - ITEM_5_FINAL_URLS = 504; - - // Data Type: URL_LIST. The final mobile URLs of item 5 of the table when - // using Upgraded URLs. - ITEM_5_FINAL_MOBILE_URLS = 505; - - // Data Type: STRING. The header of item 6 of the table. - ITEM_6_HEADER = 600; - - // Data Type: STRING. The description of item 6 of the table. - ITEM_6_DESCRIPTION = 601; - - // Data Type: MONEY. The price (money with currency) of item 6 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_6_PRICE = 602; - - // Data Type: STRING. The price unit of item 6 of the table. Must match one - // of the predefined price units. - ITEM_6_UNIT = 603; - - // Data Type: URL_LIST. The final URLs of item 6 of the table when using - // Upgraded URLs. - ITEM_6_FINAL_URLS = 604; - - // Data Type: URL_LIST. The final mobile URLs of item 6 of the table when - // using Upgraded URLs. - ITEM_6_FINAL_MOBILE_URLS = 605; - - // Data Type: STRING. The header of item 7 of the table. - ITEM_7_HEADER = 700; - - // Data Type: STRING. The description of item 7 of the table. - ITEM_7_DESCRIPTION = 701; - - // Data Type: MONEY. The price (money with currency) of item 7 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_7_PRICE = 702; - - // Data Type: STRING. The price unit of item 7 of the table. Must match one - // of the predefined price units. - ITEM_7_UNIT = 703; - - // Data Type: URL_LIST. The final URLs of item 7 of the table when using - // Upgraded URLs. - ITEM_7_FINAL_URLS = 704; - - // Data Type: URL_LIST. The final mobile URLs of item 7 of the table when - // using Upgraded URLs. - ITEM_7_FINAL_MOBILE_URLS = 705; - - // Data Type: STRING. The header of item 8 of the table. - ITEM_8_HEADER = 800; - - // Data Type: STRING. The description of item 8 of the table. - ITEM_8_DESCRIPTION = 801; - - // Data Type: MONEY. The price (money with currency) of item 8 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_8_PRICE = 802; - - // Data Type: STRING. The price unit of item 8 of the table. Must match one - // of the predefined price units. - ITEM_8_UNIT = 803; - - // Data Type: URL_LIST. The final URLs of item 8 of the table when using - // Upgraded URLs. - ITEM_8_FINAL_URLS = 804; - - // Data Type: URL_LIST. The final mobile URLs of item 8 of the table when - // using Upgraded URLs. - ITEM_8_FINAL_MOBILE_URLS = 805; - } - - -} diff --git a/google/ads/googleads/v4/enums/product_bidding_category_level.proto b/google/ads/googleads/v4/enums/product_bidding_category_level.proto deleted file mode 100644 index 9cc913be8..000000000 --- a/google/ads/googleads/v4/enums/product_bidding_category_level.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryLevelProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Level of a product bidding category. -message ProductBiddingCategoryLevelEnum { - // Enum describing the level of the product bidding category. - enum ProductBiddingCategoryLevel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Level 1. - LEVEL1 = 2; - - // Level 2. - LEVEL2 = 3; - - // Level 3. - LEVEL3 = 4; - - // Level 4. - LEVEL4 = 5; - - // Level 5. - LEVEL5 = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/product_bidding_category_status.proto b/google/ads/googleads/v4/enums/product_bidding_category_status.proto deleted file mode 100644 index cf812ee6d..000000000 --- a/google/ads/googleads/v4/enums/product_bidding_category_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing bidding schemes. - -// Status of the product bidding category. -message ProductBiddingCategoryStatusEnum { - // Enum describing the status of the product bidding category. - enum ProductBiddingCategoryStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The category is active and can be used for bidding. - ACTIVE = 2; - - // The category is obsolete. Used only for reporting purposes. - OBSOLETE = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/product_channel.proto b/google/ads/googleads/v4/enums/product_channel.proto deleted file mode 100644 index c89d92528..000000000 --- a/google/ads/googleads/v4/enums/product_channel.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductChannelProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing bidding schemes. - -// Locality of a product offer. -message ProductChannelEnum { - // Enum describing the locality of a product offer. - enum ProductChannel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The item is sold online. - ONLINE = 2; - - // The item is sold in local stores. - LOCAL = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/product_channel_exclusivity.proto b/google/ads/googleads/v4/enums/product_channel_exclusivity.proto deleted file mode 100644 index d88dc3850..000000000 --- a/google/ads/googleads/v4/enums/product_channel_exclusivity.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductChannelExclusivityProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing bidding schemes. - -// Availability of a product offer. -message ProductChannelExclusivityEnum { - // Enum describing the availability of a product offer. - enum ProductChannelExclusivity { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The item is sold through one channel only, either local stores or online - // as indicated by its ProductChannel. - SINGLE_CHANNEL = 2; - - // The item is matched to its online or local stores counterpart, indicating - // it is available for purchase in both ShoppingProductChannels. - MULTI_CHANNEL = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/product_condition.proto b/google/ads/googleads/v4/enums/product_condition.proto deleted file mode 100644 index 01b8ffb76..000000000 --- a/google/ads/googleads/v4/enums/product_condition.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductConditionProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing bidding schemes. - -// Condition of a product offer. -message ProductConditionEnum { - // Enum describing the condition of a product offer. - enum ProductCondition { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The product condition is new. - NEW = 3; - - // The product condition is refurbished. - REFURBISHED = 4; - - // The product condition is used. - USED = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/product_custom_attribute_index.proto b/google/ads/googleads/v4/enums/product_custom_attribute_index.proto deleted file mode 100644 index c8181a533..000000000 --- a/google/ads/googleads/v4/enums/product_custom_attribute_index.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductCustomAttributeIndexProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing product custom attributes. - -// Container for enum describing the index of the product custom attribute. -message ProductCustomAttributeIndexEnum { - // The index of the product custom attribute. - enum ProductCustomAttributeIndex { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // First product custom attribute. - INDEX0 = 7; - - // Second product custom attribute. - INDEX1 = 8; - - // Third product custom attribute. - INDEX2 = 9; - - // Fourth product custom attribute. - INDEX3 = 10; - - // Fifth product custom attribute. - INDEX4 = 11; - } - - -} diff --git a/google/ads/googleads/v4/enums/product_type_level.proto b/google/ads/googleads/v4/enums/product_type_level.proto deleted file mode 100644 index d3f12119e..000000000 --- a/google/ads/googleads/v4/enums/product_type_level.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductTypeLevelProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing bidding schemes. - -// Level of the type of a product offer. -message ProductTypeLevelEnum { - // Enum describing the level of the type of a product offer. - enum ProductTypeLevel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Level 1. - LEVEL1 = 7; - - // Level 2. - LEVEL2 = 8; - - // Level 3. - LEVEL3 = 9; - - // Level 4. - LEVEL4 = 10; - - // Level 5. - LEVEL5 = 11; - } - - -} diff --git a/google/ads/googleads/v4/enums/promotion_extension_discount_modifier.proto b/google/ads/googleads/v4/enums/promotion_extension_discount_modifier.proto deleted file mode 100644 index 130959f5f..000000000 --- a/google/ads/googleads/v4/enums/promotion_extension_discount_modifier.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PromotionExtensionDiscountModifierProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing promotion extension discount modifier. - -// Container for enum describing possible a promotion extension -// discount modifier. -message PromotionExtensionDiscountModifierEnum { - // A promotion extension discount modifier. - enum PromotionExtensionDiscountModifier { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // 'Up to'. - UP_TO = 2; - } - - -} diff --git a/google/ads/googleads/v4/enums/promotion_extension_occasion.proto b/google/ads/googleads/v4/enums/promotion_extension_occasion.proto deleted file mode 100644 index 6957793ec..000000000 --- a/google/ads/googleads/v4/enums/promotion_extension_occasion.proto +++ /dev/null @@ -1,157 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PromotionExtensionOccasionProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing promotion extension occasion. - -// Container for enum describing a promotion extension occasion. -// For more information about the occasions please check: -// https://support.google.com/google-ads/answer/7367521 -message PromotionExtensionOccasionEnum { - // A promotion extension occasion. - enum PromotionExtensionOccasion { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // New Year's. - NEW_YEARS = 2; - - // Chinese New Year. - CHINESE_NEW_YEAR = 3; - - // Valentine's Day. - VALENTINES_DAY = 4; - - // Easter. - EASTER = 5; - - // Mother's Day. - MOTHERS_DAY = 6; - - // Father's Day. - FATHERS_DAY = 7; - - // Labor Day. - LABOR_DAY = 8; - - // Back To School. - BACK_TO_SCHOOL = 9; - - // Halloween. - HALLOWEEN = 10; - - // Black Friday. - BLACK_FRIDAY = 11; - - // Cyber Monday. - CYBER_MONDAY = 12; - - // Christmas. - CHRISTMAS = 13; - - // Boxing Day. - BOXING_DAY = 14; - - // Independence Day in any country. - INDEPENDENCE_DAY = 15; - - // National Day in any country. - NATIONAL_DAY = 16; - - // End of any season. - END_OF_SEASON = 17; - - // Winter Sale. - WINTER_SALE = 18; - - // Summer sale. - SUMMER_SALE = 19; - - // Fall Sale. - FALL_SALE = 20; - - // Spring Sale. - SPRING_SALE = 21; - - // Ramadan. - RAMADAN = 22; - - // Eid al-Fitr. - EID_AL_FITR = 23; - - // Eid al-Adha. - EID_AL_ADHA = 24; - - // Singles Day. - SINGLES_DAY = 25; - - // Women's Day. - WOMENS_DAY = 26; - - // Holi. - HOLI = 27; - - // Parent's Day. - PARENTS_DAY = 28; - - // St. Nicholas Day. - ST_NICHOLAS_DAY = 29; - - // Carnival. - CARNIVAL = 30; - - // Epiphany, also known as Three Kings' Day. - EPIPHANY = 31; - - // Rosh Hashanah. - ROSH_HASHANAH = 32; - - // Passover. - PASSOVER = 33; - - // Hanukkah. - HANUKKAH = 34; - - // Diwali. - DIWALI = 35; - - // Navratri. - NAVRATRI = 36; - - // Available in Thai: Songkran. - SONGKRAN = 37; - - // Available in Japanese: Year-end Gift. - YEAR_END_GIFT = 38; - } - - -} diff --git a/google/ads/googleads/v4/enums/promotion_placeholder_field.proto b/google/ads/googleads/v4/enums/promotion_placeholder_field.proto deleted file mode 100644 index ded588571..000000000 --- a/google/ads/googleads/v4/enums/promotion_placeholder_field.proto +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PromotionPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Promotion placeholder fields. - -// Values for Promotion placeholder fields. -message PromotionPlaceholderFieldEnum { - // Possible values for Promotion placeholder fields. - enum PromotionPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The text that appears on the ad when the extension is - // shown. - PROMOTION_TARGET = 2; - - // Data Type: STRING. Allows you to add "up to" phrase to the promotion, - // in case you have variable promotion rates. - DISCOUNT_MODIFIER = 3; - - // Data Type: INT64. Takes a value in micros, where 1 million micros - // represents 1%, and is shown as a percentage when rendered. - PERCENT_OFF = 4; - - // Data Type: MONEY. Requires a currency and an amount of money. - MONEY_AMOUNT_OFF = 5; - - // Data Type: STRING. A string that the user enters to get the discount. - PROMOTION_CODE = 6; - - // Data Type: MONEY. A minimum spend before the user qualifies for the - // promotion. - ORDERS_OVER_AMOUNT = 7; - - // Data Type: DATE. The start date of the promotion. - PROMOTION_START = 8; - - // Data Type: DATE. The end date of the promotion. - PROMOTION_END = 9; - - // Data Type: STRING. Describes the associated event for the promotion using - // one of the PromotionExtensionOccasion enum values, for example NEW_YEARS. - OCCASION = 10; - - // Data Type: URL_LIST. Final URLs to be used in the ad when using Upgraded - // URLs. - FINAL_URLS = 11; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 12; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 13; - - // Data Type: STRING. A string represented by a language code for the - // promotion. - LANGUAGE = 14; - - // Data Type: STRING. Final URL suffix for the ad when using parallel - // tracking. - FINAL_URL_SUFFIX = 15; - } - - -} diff --git a/google/ads/googleads/v4/enums/proximity_radius_units.proto b/google/ads/googleads/v4/enums/proximity_radius_units.proto deleted file mode 100644 index 454d81b01..000000000 --- a/google/ads/googleads/v4/enums/proximity_radius_units.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProximityRadiusUnitsProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing proximity radius units. - -// Container for enum describing unit of radius in proximity. -message ProximityRadiusUnitsEnum { - // The unit of radius distance in proximity (e.g. MILES) - enum ProximityRadiusUnits { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Miles - MILES = 2; - - // Kilometers - KILOMETERS = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/quality_score_bucket.proto b/google/ads/googleads/v4/enums/quality_score_bucket.proto deleted file mode 100644 index ac31fe5fa..000000000 --- a/google/ads/googleads/v4/enums/quality_score_bucket.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "QualityScoreBucketProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing quality score buckets. - -// The relative performance compared to other advertisers. -message QualityScoreBucketEnum { - // Enum listing the possible quality score buckets. - enum QualityScoreBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Quality of the creative is below average. - BELOW_AVERAGE = 2; - - // Quality of the creative is average. - AVERAGE = 3; - - // Quality of the creative is above average. - ABOVE_AVERAGE = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/reach_plan_ad_length.proto b/google/ads/googleads/v4/enums/reach_plan_ad_length.proto deleted file mode 100644 index 85f139382..000000000 --- a/google/ads/googleads/v4/enums/reach_plan_ad_length.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanAdLengthProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing ad lengths of a plannable video ad. - -// Message describing length of a plannable video ad. -message ReachPlanAdLengthEnum { - // Possible ad length values. - enum ReachPlanAdLength { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // 6 seconds long ad. - SIX_SECONDS = 2; - - // 15 or 20 seconds long ad. - FIFTEEN_OR_TWENTY_SECONDS = 3; - - // More than 20 seconds long ad. - TWENTY_SECONDS_OR_MORE = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/reach_plan_age_range.proto b/google/ads/googleads/v4/enums/reach_plan_age_range.proto deleted file mode 100644 index bdd9fdf45..000000000 --- a/google/ads/googleads/v4/enums/reach_plan_age_range.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanAgeRangeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing a plannable age range. - -// Message describing plannable age ranges. -message ReachPlanAgeRangeEnum { - // Possible plannable age range values. - enum ReachPlanAgeRange { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Between 18 and 24 years old. - AGE_RANGE_18_24 = 503001; - - // Between 18 and 34 years old. - AGE_RANGE_18_34 = 2; - - // Between 18 and 44 years old. - AGE_RANGE_18_44 = 3; - - // Between 18 and 49 years old. - AGE_RANGE_18_49 = 4; - - // Between 18 and 54 years old. - AGE_RANGE_18_54 = 5; - - // Between 18 and 64 years old. - AGE_RANGE_18_64 = 6; - - // Between 18 and 65+ years old. - AGE_RANGE_18_65_UP = 7; - - // Between 21 and 34 years old. - AGE_RANGE_21_34 = 8; - - // Between 25 and 34 years old. - AGE_RANGE_25_34 = 503002; - - // Between 25 and 44 years old. - AGE_RANGE_25_44 = 9; - - // Between 25 and 49 years old. - AGE_RANGE_25_49 = 10; - - // Between 25 and 54 years old. - AGE_RANGE_25_54 = 11; - - // Between 25 and 64 years old. - AGE_RANGE_25_64 = 12; - - // Between 25 and 65+ years old. - AGE_RANGE_25_65_UP = 13; - - // Between 35 and 44 years old. - AGE_RANGE_35_44 = 503003; - - // Between 35 and 49 years old. - AGE_RANGE_35_49 = 14; - - // Between 35 and 54 years old. - AGE_RANGE_35_54 = 15; - - // Between 35 and 64 years old. - AGE_RANGE_35_64 = 16; - - // Between 35 and 65+ years old. - AGE_RANGE_35_65_UP = 17; - - // Between 45 and 54 years old. - AGE_RANGE_45_54 = 503004; - - // Between 45 and 64 years old. - AGE_RANGE_45_64 = 18; - - // Between 45 and 65+ years old. - AGE_RANGE_45_65_UP = 19; - - // Between 50 and 65+ years old. - AGE_RANGE_50_65_UP = 20; - - // Between 55 and 64 years old. - AGE_RANGE_55_64 = 503005; - - // Between 55 and 65+ years old. - AGE_RANGE_55_65_UP = 21; - - // 65 years old and beyond. - AGE_RANGE_65_UP = 503006; - } - - -} diff --git a/google/ads/googleads/v4/enums/reach_plan_network.proto b/google/ads/googleads/v4/enums/reach_plan_network.proto deleted file mode 100644 index 953c3baf2..000000000 --- a/google/ads/googleads/v4/enums/reach_plan_network.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanNetworkProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing a plannable network. - -// Container for enum describing plannable networks. -message ReachPlanNetworkEnum { - // Possible plannable network values. - enum ReachPlanNetwork { - // Not specified. - UNSPECIFIED = 0; - - // Used as a return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // YouTube network. - YOUTUBE = 2; - - // Google Video Partners (GVP) network. - GOOGLE_VIDEO_PARTNERS = 3; - - // A combination of the YouTube network and the Google Video Partners - // network. - YOUTUBE_AND_GOOGLE_VIDEO_PARTNERS = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/real_estate_placeholder_field.proto b/google/ads/googleads/v4/enums/real_estate_placeholder_field.proto deleted file mode 100644 index a64297c03..000000000 --- a/google/ads/googleads/v4/enums/real_estate_placeholder_field.proto +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "RealEstatePlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Real Estate placeholder fields. - -// Values for Real Estate placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message RealEstatePlaceholderFieldEnum { - // Possible values for Real Estate placeholder fields. - enum RealEstatePlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Unique ID. - LISTING_ID = 2; - - // Data Type: STRING. Main headline with listing name to be shown in dynamic - // ad. - LISTING_NAME = 3; - - // Data Type: STRING. City name to be shown in dynamic ad. - CITY_NAME = 4; - - // Data Type: STRING. Description of listing to be shown in dynamic ad. - DESCRIPTION = 5; - - // Data Type: STRING. Complete listing address, including postal code. - ADDRESS = 6; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 9; - - // Data Type: STRING. Type of property (house, condo, apartment, etc.) used - // to group like items together for recommendation engine. - PROPERTY_TYPE = 10; - - // Data Type: STRING. Type of listing (resale, rental, foreclosure, etc.) - // used to group like items together for recommendation engine. - LISTING_TYPE = 11; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 12; - - // Data Type: URL_LIST. Final URLs to be used in ad when using Upgraded - // URLs; the more specific the better (e.g. the individual URL of a specific - // listing and its location). - FINAL_URLS = 13; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 14; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 15; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 16; - - // Data Type: STRING_LIST. List of recommended listing IDs to show together - // with this item. - SIMILAR_LISTING_IDS = 17; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 18; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 19; - } - - -} diff --git a/google/ads/googleads/v4/enums/recommendation_type.proto b/google/ads/googleads/v4/enums/recommendation_type.proto deleted file mode 100644 index be6e37f09..000000000 --- a/google/ads/googleads/v4/enums/recommendation_type.proto +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Recommendation types. - -// Container for enum describing types of recommendations. -message RecommendationTypeEnum { - // Types of recommendations. - enum RecommendationType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Budget recommendation for campaigns that are currently budget-constrained - // (as opposed to the FORECASTING_CAMPAIGN_BUDGET recommendation, which - // applies to campaigns that are expected to become budget-constrained in - // the future). - CAMPAIGN_BUDGET = 2; - - // Keyword recommendation. - KEYWORD = 3; - - // Recommendation to add a new text ad. - TEXT_AD = 4; - - // Recommendation to update a campaign to use a Target CPA bidding strategy. - TARGET_CPA_OPT_IN = 5; - - // Recommendation to update a campaign to use the Maximize Conversions - // bidding strategy. - MAXIMIZE_CONVERSIONS_OPT_IN = 6; - - // Recommendation to enable Enhanced Cost Per Click for a campaign. - ENHANCED_CPC_OPT_IN = 7; - - // Recommendation to start showing your campaign's ads on Google Search - // Partners Websites. - SEARCH_PARTNERS_OPT_IN = 8; - - // Recommendation to update a campaign to use a Maximize Clicks bidding - // strategy. - MAXIMIZE_CLICKS_OPT_IN = 9; - - // Recommendation to start using the "Optimize" ad rotation setting for the - // given ad group. - OPTIMIZE_AD_ROTATION = 10; - - // Recommendation to add callout extensions to a campaign. - CALLOUT_EXTENSION = 11; - - // Recommendation to add sitelink extensions to a campaign. - SITELINK_EXTENSION = 12; - - // Recommendation to add call extensions to a campaign. - CALL_EXTENSION = 13; - - // Recommendation to change an existing keyword from one match type to a - // broader match type. - KEYWORD_MATCH_TYPE = 14; - - // Recommendation to move unused budget from one budget to a constrained - // budget. - MOVE_UNUSED_BUDGET = 15; - } - - -} diff --git a/google/ads/googleads/v4/enums/search_engine_results_page_type.proto b/google/ads/googleads/v4/enums/search_engine_results_page_type.proto deleted file mode 100644 index a29b30ac4..000000000 --- a/google/ads/googleads/v4/enums/search_engine_results_page_type.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SearchEngineResultsPageTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing search engine results page types. - -// The type of the search engine results page. -message SearchEngineResultsPageTypeEnum { - // The type of the search engine results page. - enum SearchEngineResultsPageType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Only ads were contained in the search engine results page. - ADS_ONLY = 2; - - // Only organic results were contained in the search engine results page. - ORGANIC_ONLY = 3; - - // Both ads and organic results were contained in the search engine results - // page. - ADS_AND_ORGANIC = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/search_term_match_type.proto b/google/ads/googleads/v4/enums/search_term_match_type.proto deleted file mode 100644 index 4a63af9d1..000000000 --- a/google/ads/googleads/v4/enums/search_term_match_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermMatchTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing search term match types. - -// Container for enum describing match types for a keyword triggering an ad. -message SearchTermMatchTypeEnum { - // Possible match types for a keyword triggering an ad, including variants. - enum SearchTermMatchType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Broad match. - BROAD = 2; - - // Exact match. - EXACT = 3; - - // Phrase match. - PHRASE = 4; - - // Exact match (close variant). - NEAR_EXACT = 5; - - // Phrase match (close variant). - NEAR_PHRASE = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/search_term_targeting_status.proto b/google/ads/googleads/v4/enums/search_term_targeting_status.proto deleted file mode 100644 index a67b13e20..000000000 --- a/google/ads/googleads/v4/enums/search_term_targeting_status.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermTargetingStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing search term targeting statuses. - -// Container for enum indicating whether a search term is one of your targeted -// or excluded keywords. -message SearchTermTargetingStatusEnum { - // Indicates whether the search term is one of your targeted or excluded - // keywords. - enum SearchTermTargetingStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Search term is added to targeted keywords. - ADDED = 2; - - // Search term matches a negative keyword. - EXCLUDED = 3; - - // Search term has been both added and excluded. - ADDED_EXCLUDED = 4; - - // Search term is neither targeted nor excluded. - NONE = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/served_asset_field_type.proto b/google/ads/googleads/v4/enums/served_asset_field_type.proto deleted file mode 100644 index 4d714ba74..000000000 --- a/google/ads/googleads/v4/enums/served_asset_field_type.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ServedAssetFieldTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing policy review statuses. - -// Container for enum describing possible asset field types. -message ServedAssetFieldTypeEnum { - // The possible asset field types. - enum ServedAssetFieldType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The asset is used in headline 1. - HEADLINE_1 = 2; - - // The asset is used in headline 2. - HEADLINE_2 = 3; - - // The asset is used in headline 3. - HEADLINE_3 = 4; - - // The asset is used in description 1. - DESCRIPTION_1 = 5; - - // The asset is used in description 2. - DESCRIPTION_2 = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/shared_set_status.proto b/google/ads/googleads/v4/enums/shared_set_status.proto deleted file mode 100644 index 9e7919e16..000000000 --- a/google/ads/googleads/v4/enums/shared_set_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing shared set statuses. - -// Container for enum describing types of shared set statuses. -message SharedSetStatusEnum { - // Enum listing the possible shared set statuses. - enum SharedSetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The shared set is enabled. - ENABLED = 2; - - // The shared set is removed and can no longer be used. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/shared_set_type.proto b/google/ads/googleads/v4/enums/shared_set_type.proto deleted file mode 100644 index 54491034a..000000000 --- a/google/ads/googleads/v4/enums/shared_set_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing shared set types. - -// Container for enum describing types of shared sets. -message SharedSetTypeEnum { - // Enum listing the possible shared set types. - enum SharedSetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // A set of keywords that can be excluded from targeting. - NEGATIVE_KEYWORDS = 2; - - // A set of placements that can be excluded from targeting. - NEGATIVE_PLACEMENTS = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/simulation_modification_method.proto b/google/ads/googleads/v4/enums/simulation_modification_method.proto deleted file mode 100644 index ecf05e542..000000000 --- a/google/ads/googleads/v4/enums/simulation_modification_method.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SimulationModificationMethodProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing simulation modification methods. - -// Container for enum describing the method by which a simulation modifies -// a field. -message SimulationModificationMethodEnum { - // Enum describing the method by which a simulation modifies a field. - enum SimulationModificationMethod { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The values in a simulation were applied to all children of a given - // resource uniformly. Overrides on child resources were not respected. - UNIFORM = 2; - - // The values in a simulation were applied to the given resource. - // Overrides on child resources were respected, and traffic estimates - // do not include these resources. - DEFAULT = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/simulation_type.proto b/google/ads/googleads/v4/enums/simulation_type.proto deleted file mode 100644 index 9d03b7c8d..000000000 --- a/google/ads/googleads/v4/enums/simulation_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SimulationTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing simulation types. - -// Container for enum describing the field a simulation modifies. -message SimulationTypeEnum { - // Enum describing the field a simulation modifies. - enum SimulationType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The simulation is for a CPC bid. - CPC_BID = 2; - - // The simulation is for a CPV bid. - CPV_BID = 3; - - // The simulation is for a CPA target. - TARGET_CPA = 4; - - // The simulation is for a bid modifier. - BID_MODIFIER = 5; - - // The simulation is for a ROAS target. - TARGET_ROAS = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/sitelink_placeholder_field.proto b/google/ads/googleads/v4/enums/sitelink_placeholder_field.proto deleted file mode 100644 index b79a83c74..000000000 --- a/google/ads/googleads/v4/enums/sitelink_placeholder_field.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SitelinkPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Sitelink placeholder fields. - -// Values for Sitelink placeholder fields. -message SitelinkPlaceholderFieldEnum { - // Possible values for Sitelink placeholder fields. - enum SitelinkPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The link text for your sitelink. - TEXT = 2; - - // Data Type: STRING. First line of the sitelink description. - LINE_1 = 3; - - // Data Type: STRING. Second line of the sitelink description. - LINE_2 = 4; - - // Data Type: URL_LIST. Final URLs for the sitelink when using Upgraded - // URLs. - FINAL_URLS = 5; - - // Data Type: URL_LIST. Final Mobile URLs for the sitelink when using - // Upgraded URLs. - FINAL_MOBILE_URLS = 6; - - // Data Type: URL. Tracking template for the sitelink when using Upgraded - // URLs. - TRACKING_URL = 7; - - // Data Type: STRING. Final URL suffix for sitelink when using parallel - // tracking. - FINAL_URL_SUFFIX = 8; - } - - -} diff --git a/google/ads/googleads/v4/enums/slot.proto b/google/ads/googleads/v4/enums/slot.proto deleted file mode 100644 index 28ce47fe3..000000000 --- a/google/ads/googleads/v4/enums/slot.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SlotProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing slots. - -// Container for enumeration of possible positions of the Ad. -message SlotEnum { - // Enumerates possible positions of the Ad. - enum Slot { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Google search: Side. - SEARCH_SIDE = 2; - - // Google search: Top. - SEARCH_TOP = 3; - - // Google search: Other. - SEARCH_OTHER = 4; - - // Google Display Network. - CONTENT = 5; - - // Search partners: Top. - SEARCH_PARTNER_TOP = 6; - - // Search partners: Other. - SEARCH_PARTNER_OTHER = 7; - - // Cross-network. - MIXED = 8; - } - - -} diff --git a/google/ads/googleads/v4/enums/spending_limit_type.proto b/google/ads/googleads/v4/enums/spending_limit_type.proto deleted file mode 100644 index 9740bf4e1..000000000 --- a/google/ads/googleads/v4/enums/spending_limit_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SpendingLimitTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing SpendingLimit types. - -// Message describing spending limit types. -message SpendingLimitTypeEnum { - // The possible spending limit types used by certain resources as an - // alternative to absolute money values in micros. - enum SpendingLimitType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Infinite, indicates unlimited spending power. - INFINITE = 2; - } - - -} diff --git a/google/ads/googleads/v4/enums/structured_snippet_placeholder_field.proto b/google/ads/googleads/v4/enums/structured_snippet_placeholder_field.proto deleted file mode 100644 index 1ce841749..000000000 --- a/google/ads/googleads/v4/enums/structured_snippet_placeholder_field.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "StructuredSnippetPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Structured Snippet placeholder fields. - -// Values for Structured Snippet placeholder fields. -message StructuredSnippetPlaceholderFieldEnum { - // Possible values for Structured Snippet placeholder fields. - enum StructuredSnippetPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The category of snippet of your products/services. - // Must match exactly one of the predefined structured snippets headers. - // For a list, visit - // https://developers.google.com/adwords/api/docs/appendix/structured-snippet-headers - HEADER = 2; - - // Data Type: STRING_LIST. Text values that describe your products/services. - // All text must be family safe. Special or non-ASCII characters are not - // permitted. A snippet can be at most 25 characters. - SNIPPETS = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/summary_row_setting.proto b/google/ads/googleads/v4/enums/summary_row_setting.proto deleted file mode 100644 index e64708050..000000000 --- a/google/ads/googleads/v4/enums/summary_row_setting.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SummaryRowSettingProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing summary row setting. - -// Indicates summary row setting in request parameter. -message SummaryRowSettingEnum { - // Enum describing return summary row settings. - enum SummaryRowSetting { - // Not specified. - UNSPECIFIED = 0; - - // Represent unknown values of return summary row. - UNKNOWN = 1; - - // Do not return summary row. - NO_SUMMARY_ROW = 2; - - // Return summary row along with results. The summary row will be returned - // in the last batch alone (last batch will contain no results). - SUMMARY_ROW_WITH_RESULTS = 3; - - // Return summary row only and return no results. - SUMMARY_ROW_ONLY = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/system_managed_entity_source.proto b/google/ads/googleads/v4/enums/system_managed_entity_source.proto deleted file mode 100644 index 608b55ec9..000000000 --- a/google/ads/googleads/v4/enums/system_managed_entity_source.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SystemManagedEntitySourceProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing system managed entity sources. - -// Container for enum describing possible system managed entity sources. -message SystemManagedResourceSourceEnum { - // Enum listing the possible system managed entity sources. - enum SystemManagedResourceSource { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Generated ad variations experiment ad. - AD_VARIATIONS = 2; - } - - -} diff --git a/google/ads/googleads/v4/enums/target_cpa_opt_in_recommendation_goal.proto b/google/ads/googleads/v4/enums/target_cpa_opt_in_recommendation_goal.proto deleted file mode 100644 index 09450228b..000000000 --- a/google/ads/googleads/v4/enums/target_cpa_opt_in_recommendation_goal.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TargetCpaOptInRecommendationGoalProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing TargetCpaOptIn recommendation goals. - -// Container for enum describing goals for TargetCpaOptIn recommendation. -message TargetCpaOptInRecommendationGoalEnum { - // Goal of TargetCpaOptIn recommendation. - enum TargetCpaOptInRecommendationGoal { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Recommendation to set Target CPA to maintain the same cost. - SAME_COST = 2; - - // Recommendation to set Target CPA to maintain the same conversions. - SAME_CONVERSIONS = 3; - - // Recommendation to set Target CPA to maintain the same CPA. - SAME_CPA = 4; - - // Recommendation to set Target CPA to a value that is as close as possible - // to, yet lower than, the actual CPA (computed for past 28 days). - CLOSEST_CPA = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/target_impression_share_location.proto b/google/ads/googleads/v4/enums/target_impression_share_location.proto deleted file mode 100644 index e29043a73..000000000 --- a/google/ads/googleads/v4/enums/target_impression_share_location.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TargetImpressionShareLocationProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing target impression share goal. - -// Container for enum describing where on the first search results page the -// automated bidding system should target impressions for the -// TargetImpressionShare bidding strategy. -message TargetImpressionShareLocationEnum { - // Enum describing possible goals. - enum TargetImpressionShareLocation { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Any location on the web page. - ANYWHERE_ON_PAGE = 2; - - // Top box of ads. - TOP_OF_PAGE = 3; - - // Top slot in the top box of ads. - ABSOLUTE_TOP_OF_PAGE = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/targeting_dimension.proto b/google/ads/googleads/v4/enums/targeting_dimension.proto deleted file mode 100644 index cdb780c4a..000000000 --- a/google/ads/googleads/v4/enums/targeting_dimension.proto +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TargetingDimensionProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing criteria types. - -// The dimensions that can be targeted. -message TargetingDimensionEnum { - // Enum describing possible targeting dimensions. - enum TargetingDimension { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Keyword criteria, e.g. 'mars cruise'. KEYWORD may be used as a custom bid - // dimension. Keywords are always a targeting dimension, so may not be set - // as a target "ALL" dimension with TargetRestriction. - KEYWORD = 2; - - // Audience criteria, which include user list, user interest, custom - // affinity, and custom in market. - AUDIENCE = 3; - - // Topic criteria for targeting categories of content, e.g. - // 'category::Animals>Pets' Used for Display and Video targeting. - TOPIC = 4; - - // Criteria for targeting gender. - GENDER = 5; - - // Criteria for targeting age ranges. - AGE_RANGE = 6; - - // Placement criteria, which include websites like 'www.flowers4sale.com', - // as well as mobile applications, mobile app categories, YouTube videos, - // and YouTube channels. - PLACEMENT = 7; - - // Criteria for parental status targeting. - PARENTAL_STATUS = 8; - - // Criteria for income range targeting. - INCOME_RANGE = 9; - } - - -} diff --git a/google/ads/googleads/v4/enums/time_type.proto b/google/ads/googleads/v4/enums/time_type.proto deleted file mode 100644 index 51b209706..000000000 --- a/google/ads/googleads/v4/enums/time_type.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TimeTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing TimeType types. - -// Message describing time types. -message TimeTypeEnum { - // The possible time types used by certain resources as an alternative to - // absolute timestamps. - enum TimeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // As soon as possible. - NOW = 2; - - // An infinite point in the future. - FOREVER = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/tracking_code_page_format.proto b/google/ads/googleads/v4/enums/tracking_code_page_format.proto deleted file mode 100644 index 4fa2554a2..000000000 --- a/google/ads/googleads/v4/enums/tracking_code_page_format.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TrackingCodePageFormatProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum describing the format of the web page where the tracking -// tag and snippet will be installed. -message TrackingCodePageFormatEnum { - // The format of the web page where the tracking tag and snippet will be - // installed. - enum TrackingCodePageFormat { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Standard HTML page format. - HTML = 2; - - // Google AMP page format. - AMP = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/tracking_code_type.proto b/google/ads/googleads/v4/enums/tracking_code_type.proto deleted file mode 100644 index 62c38cd47..000000000 --- a/google/ads/googleads/v4/enums/tracking_code_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TrackingCodeTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Container for enum describing the type of the generated tag snippets for -// tracking conversions. -message TrackingCodeTypeEnum { - // The type of the generated tag snippets for tracking conversions. - enum TrackingCodeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The snippet that is fired as a result of a website page loading. - WEBPAGE = 2; - - // The snippet contains a JavaScript function which fires the tag. This - // function is typically called from an onClick handler added to a link or - // button element on the page. - WEBPAGE_ONCLICK = 3; - - // For embedding on a mobile webpage. The snippet contains a JavaScript - // function which fires the tag. - CLICK_TO_CALL = 4; - - // The snippet that is used to replace the phone number on your website with - // a Google forwarding number for call tracking purposes. - WEBSITE_CALL = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/travel_placeholder_field.proto b/google/ads/googleads/v4/enums/travel_placeholder_field.proto deleted file mode 100644 index 6c34534f7..000000000 --- a/google/ads/googleads/v4/enums/travel_placeholder_field.proto +++ /dev/null @@ -1,128 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TravelPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing Travel placeholder fields. - -// Values for Travel placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message TravelPlaceholderFieldEnum { - // Possible values for Travel placeholder fields. - enum TravelPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Destination id. Example: PAR, LON. - // For feed items that only have destination id, destination id must be a - // unique key. For feed items that have both destination id and origin id, - // then the combination must be a unique key. - DESTINATION_ID = 2; - - // Data Type: STRING. Origin id. Example: PAR, LON. - // Combination of DESTINATION_ID and ORIGIN_ID must be - // unique per offer. - ORIGIN_ID = 3; - - // Data Type: STRING. Required. Main headline with name to be shown in - // dynamic ad. - TITLE = 4; - - // Data Type: STRING. The destination name. Shorter names are recommended. - DESTINATION_NAME = 5; - - // Data Type: STRING. Origin name. Shorter names are recommended. - ORIGIN_NAME = 6; - - // Data Type: STRING. Price to be shown in the ad. Highly recommended for - // dynamic ads. - // Example: "100.00 USD" - PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 9; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 10; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 11; - - // Data Type: STRING. Category of travel offer used to group like items - // together for recommendation engine. - CATEGORY = 12; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 13; - - // Data Type: STRING. Address of travel offer, including postal code. - DESTINATION_ADDRESS = 14; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad, when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific travel offer and its location). - FINAL_URL = 15; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 16; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 17; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 18; - - // Data Type: STRING_LIST. List of recommended destination IDs to show - // together with this item. - SIMILAR_DESTINATION_IDS = 19; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 20; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 21; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_interest_taxonomy_type.proto b/google/ads/googleads/v4/enums/user_interest_taxonomy_type.proto deleted file mode 100644 index 6a6f11a32..000000000 --- a/google/ads/googleads/v4/enums/user_interest_taxonomy_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserInterestTaxonomyTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing the UserInterest taxonomy type - -// Message describing a UserInterestTaxonomyType. -message UserInterestTaxonomyTypeEnum { - // Enum containing the possible UserInterestTaxonomyTypes. - enum UserInterestTaxonomyType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The affinity for this user interest. - AFFINITY = 2; - - // The market for this user interest. - IN_MARKET = 3; - - // Users known to have installed applications in the specified categories. - MOBILE_APP_INSTALL_USER = 4; - - // The geographical location of the interest-based vertical. - VERTICAL_GEO = 5; - - // User interest criteria for new smart phone users. - NEW_SMART_PHONE_USER = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_access_status.proto b/google/ads/googleads/v4/enums/user_list_access_status.proto deleted file mode 100644 index bc7413b3f..000000000 --- a/google/ads/googleads/v4/enums/user_list_access_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListAccessStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing user list access status. - -// Indicates if this client still has access to the list. -message UserListAccessStatusEnum { - // Enum containing possible user list access statuses. - enum UserListAccessStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The access is enabled. - ENABLED = 2; - - // The access is disabled. - DISABLED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_closing_reason.proto b/google/ads/googleads/v4/enums/user_list_closing_reason.proto deleted file mode 100644 index d8db736d5..000000000 --- a/google/ads/googleads/v4/enums/user_list_closing_reason.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListClosingReasonProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing user list closing reason. - -// Indicates the reason why the userlist was closed. -// This enum is only used when a list is auto-closed by the system. -message UserListClosingReasonEnum { - // Enum describing possible user list closing reasons. - enum UserListClosingReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The userlist was closed because of not being used for over one year. - UNUSED = 2; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_combined_rule_operator.proto b/google/ads/googleads/v4/enums/user_list_combined_rule_operator.proto deleted file mode 100644 index e361be661..000000000 --- a/google/ads/googleads/v4/enums/user_list_combined_rule_operator.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListCombinedRuleOperatorProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Logical operator connecting two rules. -message UserListCombinedRuleOperatorEnum { - // Enum describing possible user list combined rule operators. - enum UserListCombinedRuleOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // A AND B. - AND = 2; - - // A AND NOT B. - AND_NOT = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_crm_data_source_type.proto b/google/ads/googleads/v4/enums/user_list_crm_data_source_type.proto deleted file mode 100644 index dc981c863..000000000 --- a/google/ads/googleads/v4/enums/user_list_crm_data_source_type.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListCrmDataSourceTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Indicates source of Crm upload data. -message UserListCrmDataSourceTypeEnum { - // Enum describing possible user list crm data source type. - enum UserListCrmDataSourceType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The uploaded data is first-party data. - FIRST_PARTY = 2; - - // The uploaded data is from a third-party credit bureau. - THIRD_PARTY_CREDIT_BUREAU = 3; - - // The uploaded data is from a third-party voter file. - THIRD_PARTY_VOTER_FILE = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_date_rule_item_operator.proto b/google/ads/googleads/v4/enums/user_list_date_rule_item_operator.proto deleted file mode 100644 index aaa63a697..000000000 --- a/google/ads/googleads/v4/enums/user_list_date_rule_item_operator.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListDateRuleItemOperatorProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Supported rule operator for date type. -message UserListDateRuleItemOperatorEnum { - // Enum describing possible user list date rule item operators. - enum UserListDateRuleItemOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Equals. - EQUALS = 2; - - // Not Equals. - NOT_EQUALS = 3; - - // Before. - BEFORE = 4; - - // After. - AFTER = 5; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_logical_rule_operator.proto b/google/ads/googleads/v4/enums/user_list_logical_rule_operator.proto deleted file mode 100644 index 76dcafed3..000000000 --- a/google/ads/googleads/v4/enums/user_list_logical_rule_operator.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListLogicalRuleOperatorProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// The logical operator of the rule. -message UserListLogicalRuleOperatorEnum { - // Enum describing possible user list logical rule operators. - enum UserListLogicalRuleOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // And - all of the operands. - ALL = 2; - - // Or - at least one of the operands. - ANY = 3; - - // Not - none of the operands. - NONE = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_membership_status.proto b/google/ads/googleads/v4/enums/user_list_membership_status.proto deleted file mode 100644 index 36a5fb2af..000000000 --- a/google/ads/googleads/v4/enums/user_list_membership_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListMembershipStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing user list membership status. - -// Membership status of this user list. Indicates whether a user list is open -// or active. Only open user lists can accumulate more users and can be used for -// targeting. -message UserListMembershipStatusEnum { - // Enum containing possible user list membership statuses. - enum UserListMembershipStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Open status - List is accruing members and can be targeted to. - OPEN = 2; - - // Closed status - No new members being added. Cannot be used for targeting. - CLOSED = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_number_rule_item_operator.proto b/google/ads/googleads/v4/enums/user_list_number_rule_item_operator.proto deleted file mode 100644 index 7085993c7..000000000 --- a/google/ads/googleads/v4/enums/user_list_number_rule_item_operator.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListNumberRuleItemOperatorProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Supported rule operator for number type. -message UserListNumberRuleItemOperatorEnum { - // Enum describing possible user list number rule item operators. - enum UserListNumberRuleItemOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Greater than. - GREATER_THAN = 2; - - // Greater than or equal. - GREATER_THAN_OR_EQUAL = 3; - - // Equals. - EQUALS = 4; - - // Not equals. - NOT_EQUALS = 5; - - // Less than. - LESS_THAN = 6; - - // Less than or equal. - LESS_THAN_OR_EQUAL = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_prepopulation_status.proto b/google/ads/googleads/v4/enums/user_list_prepopulation_status.proto deleted file mode 100644 index c57b4a7c9..000000000 --- a/google/ads/googleads/v4/enums/user_list_prepopulation_status.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListPrepopulationStatusProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Indicates status of prepopulation based on the rule. -message UserListPrepopulationStatusEnum { - // Enum describing possible user list prepopulation status. - enum UserListPrepopulationStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Prepopoulation is being requested. - REQUESTED = 2; - - // Prepopulation is finished. - FINISHED = 3; - - // Prepopulation failed. - FAILED = 4; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_rule_type.proto b/google/ads/googleads/v4/enums/user_list_rule_type.proto deleted file mode 100644 index f4591186e..000000000 --- a/google/ads/googleads/v4/enums/user_list_rule_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListRuleTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Rule based user list rule type. -message UserListRuleTypeEnum { - // Enum describing possible user list rule types. - enum UserListRuleType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conjunctive normal form. - AND_OF_ORS = 2; - - // Disjunctive normal form. - OR_OF_ANDS = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_size_range.proto b/google/ads/googleads/v4/enums/user_list_size_range.proto deleted file mode 100644 index 5f58f6f8d..000000000 --- a/google/ads/googleads/v4/enums/user_list_size_range.proto +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListSizeRangeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing user list size range. - -// Size range in terms of number of users of a UserList. -message UserListSizeRangeEnum { - // Enum containing possible user list size ranges. - enum UserListSizeRange { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // User list has less than 500 users. - LESS_THAN_FIVE_HUNDRED = 2; - - // User list has number of users in range of 500 to 1000. - LESS_THAN_ONE_THOUSAND = 3; - - // User list has number of users in range of 1000 to 10000. - ONE_THOUSAND_TO_TEN_THOUSAND = 4; - - // User list has number of users in range of 10000 to 50000. - TEN_THOUSAND_TO_FIFTY_THOUSAND = 5; - - // User list has number of users in range of 50000 to 100000. - FIFTY_THOUSAND_TO_ONE_HUNDRED_THOUSAND = 6; - - // User list has number of users in range of 100000 to 300000. - ONE_HUNDRED_THOUSAND_TO_THREE_HUNDRED_THOUSAND = 7; - - // User list has number of users in range of 300000 to 500000. - THREE_HUNDRED_THOUSAND_TO_FIVE_HUNDRED_THOUSAND = 8; - - // User list has number of users in range of 500000 to 1 million. - FIVE_HUNDRED_THOUSAND_TO_ONE_MILLION = 9; - - // User list has number of users in range of 1 to 2 millions. - ONE_MILLION_TO_TWO_MILLION = 10; - - // User list has number of users in range of 2 to 3 millions. - TWO_MILLION_TO_THREE_MILLION = 11; - - // User list has number of users in range of 3 to 5 millions. - THREE_MILLION_TO_FIVE_MILLION = 12; - - // User list has number of users in range of 5 to 10 millions. - FIVE_MILLION_TO_TEN_MILLION = 13; - - // User list has number of users in range of 10 to 20 millions. - TEN_MILLION_TO_TWENTY_MILLION = 14; - - // User list has number of users in range of 20 to 30 millions. - TWENTY_MILLION_TO_THIRTY_MILLION = 15; - - // User list has number of users in range of 30 to 50 millions. - THIRTY_MILLION_TO_FIFTY_MILLION = 16; - - // User list has over 50 million users. - OVER_FIFTY_MILLION = 17; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_string_rule_item_operator.proto b/google/ads/googleads/v4/enums/user_list_string_rule_item_operator.proto deleted file mode 100644 index ca2e52223..000000000 --- a/google/ads/googleads/v4/enums/user_list_string_rule_item_operator.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListStringRuleItemOperatorProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Supported rule operator for string type. -message UserListStringRuleItemOperatorEnum { - // Enum describing possible user list string rule item operators. - enum UserListStringRuleItemOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Contains. - CONTAINS = 2; - - // Equals. - EQUALS = 3; - - // Starts with. - STARTS_WITH = 4; - - // Ends with. - ENDS_WITH = 5; - - // Not equals. - NOT_EQUALS = 6; - - // Not contains. - NOT_CONTAINS = 7; - - // Not starts with. - NOT_STARTS_WITH = 8; - - // Not ends with. - NOT_ENDS_WITH = 9; - } - - -} diff --git a/google/ads/googleads/v4/enums/user_list_type.proto b/google/ads/googleads/v4/enums/user_list_type.proto deleted file mode 100644 index 4b2920b6a..000000000 --- a/google/ads/googleads/v4/enums/user_list_type.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListTypeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing user list type. - -// The user list types. -message UserListTypeEnum { - // Enum containing possible user list types. - enum UserListType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // UserList represented as a collection of conversion types. - REMARKETING = 2; - - // UserList represented as a combination of other user lists/interests. - LOGICAL = 3; - - // UserList created in the Google Ad Manager platform. - EXTERNAL_REMARKETING = 4; - - // UserList associated with a rule. - RULE_BASED = 5; - - // UserList with users similar to users of another UserList. - SIMILAR = 6; - - // UserList of first-party CRM data provided by advertiser in the form of - // emails or other formats. - CRM_BASED = 7; - } - - -} diff --git a/google/ads/googleads/v4/enums/vanity_pharma_display_url_mode.proto b/google/ads/googleads/v4/enums/vanity_pharma_display_url_mode.proto deleted file mode 100644 index 8f6e5c7d8..000000000 --- a/google/ads/googleads/v4/enums/vanity_pharma_display_url_mode.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "VanityPharmaDisplayUrlModeProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing vanity pharma display url modes. - -// The display mode for vanity pharma URLs. -message VanityPharmaDisplayUrlModeEnum { - // Enum describing possible display modes for vanity pharma URLs. - enum VanityPharmaDisplayUrlMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Replace vanity pharma URL with manufacturer website url. - MANUFACTURER_WEBSITE_URL = 2; - - // Replace vanity pharma URL with description of the website. - WEBSITE_DESCRIPTION = 3; - } - - -} diff --git a/google/ads/googleads/v4/enums/vanity_pharma_text.proto b/google/ads/googleads/v4/enums/vanity_pharma_text.proto deleted file mode 100644 index 6a7b9a3be..000000000 --- a/google/ads/googleads/v4/enums/vanity_pharma_text.proto +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "VanityPharmaTextProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing vanity pharma texts. - -// The text that will be displayed in display URL of the text ad when website -// description is the selected display mode for vanity pharma URLs. -message VanityPharmaTextEnum { - // Enum describing possible text. - enum VanityPharmaText { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Prescription treatment website with website content in English. - PRESCRIPTION_TREATMENT_WEBSITE_EN = 2; - - // Prescription treatment website with website content in Spanish - // (Sitio de tratamientos con receta). - PRESCRIPTION_TREATMENT_WEBSITE_ES = 3; - - // Prescription device website with website content in English. - PRESCRIPTION_DEVICE_WEBSITE_EN = 4; - - // Prescription device website with website content in Spanish (Sitio de - // dispositivos con receta). - PRESCRIPTION_DEVICE_WEBSITE_ES = 5; - - // Medical device website with website content in English. - MEDICAL_DEVICE_WEBSITE_EN = 6; - - // Medical device website with website content in Spanish (Sitio de - // dispositivos médicos). - MEDICAL_DEVICE_WEBSITE_ES = 7; - - // Preventative treatment website with website content in English. - PREVENTATIVE_TREATMENT_WEBSITE_EN = 8; - - // Preventative treatment website with website content in Spanish (Sitio de - // tratamientos preventivos). - PREVENTATIVE_TREATMENT_WEBSITE_ES = 9; - - // Prescription contraception website with website content in English. - PRESCRIPTION_CONTRACEPTION_WEBSITE_EN = 10; - - // Prescription contraception website with website content in Spanish (Sitio - // de anticonceptivos con receta). - PRESCRIPTION_CONTRACEPTION_WEBSITE_ES = 11; - - // Prescription vaccine website with website content in English. - PRESCRIPTION_VACCINE_WEBSITE_EN = 12; - - // Prescription vaccine website with website content in Spanish (Sitio de - // vacunas con receta). - PRESCRIPTION_VACCINE_WEBSITE_ES = 13; - } - - -} diff --git a/google/ads/googleads/v4/enums/webpage_condition_operand.proto b/google/ads/googleads/v4/enums/webpage_condition_operand.proto deleted file mode 100644 index 02a161b30..000000000 --- a/google/ads/googleads/v4/enums/webpage_condition_operand.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "WebpageConditionOperandProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing webpage condition operand. - -// Container for enum describing webpage condition operand in webpage criterion. -message WebpageConditionOperandEnum { - // The webpage condition operand in webpage criterion. - enum WebpageConditionOperand { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Operand denoting a webpage URL targeting condition. - URL = 2; - - // Operand denoting a webpage category targeting condition. - CATEGORY = 3; - - // Operand denoting a webpage title targeting condition. - PAGE_TITLE = 4; - - // Operand denoting a webpage content targeting condition. - PAGE_CONTENT = 5; - - // Operand denoting a webpage custom label targeting condition. - CUSTOM_LABEL = 6; - } - - -} diff --git a/google/ads/googleads/v4/enums/webpage_condition_operator.proto b/google/ads/googleads/v4/enums/webpage_condition_operator.proto deleted file mode 100644 index cd8771bf1..000000000 --- a/google/ads/googleads/v4/enums/webpage_condition_operator.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "WebpageConditionOperatorProto"; -option java_package = "com.google.ads.googleads.v4.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V4::Enums"; - -// Proto file describing webpage condition operator. - -// Container for enum describing webpage condition operator in webpage -// criterion. -message WebpageConditionOperatorEnum { - // The webpage condition operator in webpage criterion. - enum WebpageConditionOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The argument web condition is equal to the compared web condition. - EQUALS = 2; - - // The argument web condition is part of the compared web condition. - CONTAINS = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/BUILD.bazel b/google/ads/googleads/v4/errors/BUILD.bazel deleted file mode 100644 index f88de1603..000000000 --- a/google/ads/googleads/v4/errors/BUILD.bazel +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "errors_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v4/common:common_proto", - "//google/ads/googleads/v4/enums:enums_proto", - "//google/api:annotations_proto", - "@com_google_protobuf//:duration_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_proto_library", -) - -java_proto_library( - name = "errors_java_proto", - deps = [":errors_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_proto_library", -) - -csharp_proto_library( - name = "errors_csharp_proto", - deps = [":errors_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_proto_library", -) - -ruby_proto_library( - name = "errors_ruby_proto", - deps = [":errors_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_proto_library", -) - -py_proto_library( - name = "errors_py_proto", - deps = [":errors_proto"], -) diff --git a/google/ads/googleads/v4/errors/access_invitation_error.proto b/google/ads/googleads/v4/errors/access_invitation_error.proto deleted file mode 100644 index 302b05c35..000000000 --- a/google/ads/googleads/v4/errors/access_invitation_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AccessInvitationErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing AccessInvitation errors. - -// Container for enum describing possible AccessInvitation errors. -message AccessInvitationErrorEnum { - // Enum describing possible AccessInvitation errors. - enum AccessInvitationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The email address is invalid for sending an invitation. - INVALID_EMAIL_ADDRESS = 2; - - // Email address already has access to this customer. - EMAIL_ADDRESS_ALREADY_HAS_ACCESS = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/account_budget_proposal_error.proto b/google/ads/googleads/v4/errors/account_budget_proposal_error.proto deleted file mode 100644 index 7b1f78eba..000000000 --- a/google/ads/googleads/v4/errors/account_budget_proposal_error.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing account budget proposal errors. - -// Container for enum describing possible account budget proposal errors. -message AccountBudgetProposalErrorEnum { - // Enum describing possible account budget proposal errors. - enum AccountBudgetProposalError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The field mask must be empty for create/end/remove proposals. - FIELD_MASK_NOT_ALLOWED = 2; - - // The field cannot be set because of the proposal type. - IMMUTABLE_FIELD = 3; - - // The field is required because of the proposal type. - REQUIRED_FIELD_MISSING = 4; - - // Proposals that have been approved cannot be cancelled. - CANNOT_CANCEL_APPROVED_PROPOSAL = 5; - - // Budgets that haven't been approved cannot be removed. - CANNOT_REMOVE_UNAPPROVED_BUDGET = 6; - - // Budgets that are currently running cannot be removed. - CANNOT_REMOVE_RUNNING_BUDGET = 7; - - // Budgets that haven't been approved cannot be truncated. - CANNOT_END_UNAPPROVED_BUDGET = 8; - - // Only budgets that are currently running can be truncated. - CANNOT_END_INACTIVE_BUDGET = 9; - - // All budgets must have names. - BUDGET_NAME_REQUIRED = 10; - - // Expired budgets cannot be edited after a sufficient amount of time has - // passed. - CANNOT_UPDATE_OLD_BUDGET = 11; - - // It is not permissible a propose a new budget that ends in the past. - CANNOT_END_IN_PAST = 12; - - // An expired budget cannot be extended to overlap with the running budget. - CANNOT_EXTEND_END_TIME = 13; - - // A purchase order number is required. - PURCHASE_ORDER_NUMBER_REQUIRED = 14; - - // Budgets that have a pending update cannot be updated. - PENDING_UPDATE_PROPOSAL_EXISTS = 15; - - // Cannot propose more than one budget when the corresponding billing setup - // hasn't been approved. - MULTIPLE_BUDGETS_NOT_ALLOWED_FOR_UNAPPROVED_BILLING_SETUP = 16; - - // Cannot update the start time of a budget that has already started. - CANNOT_UPDATE_START_TIME_FOR_STARTED_BUDGET = 17; - - // Cannot update the spending limit of a budget with an amount lower than - // what has already been spent. - SPENDING_LIMIT_LOWER_THAN_ACCRUED_COST_NOT_ALLOWED = 18; - - // Cannot propose a budget update without actually changing any fields. - UPDATE_IS_NO_OP = 19; - - // The end time must come after the start time. - END_TIME_MUST_FOLLOW_START_TIME = 20; - - // The budget's date range must fall within the date range of its billing - // setup. - BUDGET_DATE_RANGE_INCOMPATIBLE_WITH_BILLING_SETUP = 21; - - // The user is not authorized to mutate budgets for the given billing setup. - NOT_AUTHORIZED = 22; - - // Mutates are not allowed for the given billing setup. - INVALID_BILLING_SETUP = 23; - - // Budget creation failed as it overlaps with an pending budget proposal - // or an approved budget. - OVERLAPS_EXISTING_BUDGET = 24; - - // The control setting in user's payments profile doesn't allow budget - // creation through API. Log in to Google Ads to create budget. - CANNOT_CREATE_BUDGET_THROUGH_API = 25; - } - - -} diff --git a/google/ads/googleads/v4/errors/account_link_error.proto b/google/ads/googleads/v4/errors/account_link_error.proto deleted file mode 100644 index b3af87f34..000000000 --- a/google/ads/googleads/v4/errors/account_link_error.proto +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing AccountLink errors. diff --git a/google/ads/googleads/v4/errors/ad_customizer_error.proto b/google/ads/googleads/v4/errors/ad_customizer_error.proto deleted file mode 100644 index c09bffce2..000000000 --- a/google/ads/googleads/v4/errors/ad_customizer_error.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdCustomizerErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing ad customizer errors. - -// Container for enum describing possible ad customizer errors. -message AdCustomizerErrorEnum { - // Enum describing possible ad customizer errors. - enum AdCustomizerError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Invalid date argument in countdown function. - COUNTDOWN_INVALID_DATE_FORMAT = 2; - - // Countdown end date is in the past. - COUNTDOWN_DATE_IN_PAST = 3; - - // Invalid locale string in countdown function. - COUNTDOWN_INVALID_LOCALE = 4; - - // Days-before argument to countdown function is not positive. - COUNTDOWN_INVALID_START_DAYS_BEFORE = 5; - - // A user list referenced in an IF function does not exist. - UNKNOWN_USER_LIST = 6; - } - - -} diff --git a/google/ads/googleads/v4/errors/ad_error.proto b/google/ads/googleads/v4/errors/ad_error.proto deleted file mode 100644 index eea3388bf..000000000 --- a/google/ads/googleads/v4/errors/ad_error.proto +++ /dev/null @@ -1,505 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing ad errors. - -// Container for enum describing possible ad errors. -message AdErrorEnum { - // Enum describing possible ad errors. - enum AdError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Ad customizers are not supported for ad type. - AD_CUSTOMIZERS_NOT_SUPPORTED_FOR_AD_TYPE = 2; - - // Estimating character sizes the string is too long. - APPROXIMATELY_TOO_LONG = 3; - - // Estimating character sizes the string is too short. - APPROXIMATELY_TOO_SHORT = 4; - - // There is a problem with the snippet. - BAD_SNIPPET = 5; - - // Cannot modify an ad. - CANNOT_MODIFY_AD = 6; - - // business name and url cannot be set at the same time - CANNOT_SET_BUSINESS_NAME_IF_URL_SET = 7; - - // The specified field is incompatible with this ad's type or settings. - CANNOT_SET_FIELD = 8; - - // Cannot set field when originAdId is set. - CANNOT_SET_FIELD_WITH_ORIGIN_AD_ID_SET = 9; - - // Cannot set field when an existing ad id is set for sharing. - CANNOT_SET_FIELD_WITH_AD_ID_SET_FOR_SHARING = 10; - - // Cannot set allowFlexibleColor false if no color is provided by user. - CANNOT_SET_ALLOW_FLEXIBLE_COLOR_FALSE = 11; - - // When user select native, no color control is allowed because we will - // always respect publisher color for native format serving. - CANNOT_SET_COLOR_CONTROL_WHEN_NATIVE_FORMAT_SETTING = 12; - - // Cannot specify a url for the ad type - CANNOT_SET_URL = 13; - - // Cannot specify a tracking or mobile url without also setting final urls - CANNOT_SET_WITHOUT_FINAL_URLS = 14; - - // Cannot specify a legacy url and a final url simultaneously - CANNOT_SET_WITH_FINAL_URLS = 15; - - // Cannot specify a urls in UrlData and in template fields simultaneously. - CANNOT_SET_WITH_URL_DATA = 17; - - // This operator cannot be used with a subclass of Ad. - CANNOT_USE_AD_SUBCLASS_FOR_OPERATOR = 18; - - // Customer is not approved for mobile ads. - CUSTOMER_NOT_APPROVED_MOBILEADS = 19; - - // Customer is not approved for 3PAS richmedia ads. - CUSTOMER_NOT_APPROVED_THIRDPARTY_ADS = 20; - - // Customer is not approved for 3PAS redirect richmedia (Ad Exchange) ads. - CUSTOMER_NOT_APPROVED_THIRDPARTY_REDIRECT_ADS = 21; - - // Not an eligible customer - CUSTOMER_NOT_ELIGIBLE = 22; - - // Customer is not eligible for updating beacon url - CUSTOMER_NOT_ELIGIBLE_FOR_UPDATING_BEACON_URL = 23; - - // There already exists an ad with the same dimensions in the union. - DIMENSION_ALREADY_IN_UNION = 24; - - // Ad's dimension must be set before setting union dimension. - DIMENSION_MUST_BE_SET = 25; - - // Ad's dimension must be included in the union dimensions. - DIMENSION_NOT_IN_UNION = 26; - - // Display Url cannot be specified (applies to Ad Exchange Ads) - DISPLAY_URL_CANNOT_BE_SPECIFIED = 27; - - // Telephone number contains invalid characters or invalid format. Please - // re-enter your number using digits (0-9), dashes (-), and parentheses - // only. - DOMESTIC_PHONE_NUMBER_FORMAT = 28; - - // Emergency telephone numbers are not allowed. Please enter a valid - // domestic phone number to connect customers to your business. - EMERGENCY_PHONE_NUMBER = 29; - - // A required field was not specified or is an empty string. - EMPTY_FIELD = 30; - - // A feed attribute referenced in an ad customizer tag is not in the ad - // customizer mapping for the feed. - FEED_ATTRIBUTE_MUST_HAVE_MAPPING_FOR_TYPE_ID = 31; - - // The ad customizer field mapping for the feed attribute does not match the - // expected field type. - FEED_ATTRIBUTE_MAPPING_TYPE_MISMATCH = 32; - - // The use of ad customizer tags in the ad text is disallowed. Details in - // trigger. - ILLEGAL_AD_CUSTOMIZER_TAG_USE = 33; - - // Tags of the form {PH_x}, where x is a number, are disallowed in ad text. - ILLEGAL_TAG_USE = 34; - - // The dimensions of the ad are specified or derived in multiple ways and - // are not consistent. - INCONSISTENT_DIMENSIONS = 35; - - // The status cannot differ among template ads of the same union. - INCONSISTENT_STATUS_IN_TEMPLATE_UNION = 36; - - // The length of the string is not valid. - INCORRECT_LENGTH = 37; - - // The ad is ineligible for upgrade. - INELIGIBLE_FOR_UPGRADE = 38; - - // User cannot create mobile ad for countries targeted in specified - // campaign. - INVALID_AD_ADDRESS_CAMPAIGN_TARGET = 39; - - // Invalid Ad type. A specific type of Ad is required. - INVALID_AD_TYPE = 40; - - // Headline, description or phone cannot be present when creating mobile - // image ad. - INVALID_ATTRIBUTES_FOR_MOBILE_IMAGE = 41; - - // Image cannot be present when creating mobile text ad. - INVALID_ATTRIBUTES_FOR_MOBILE_TEXT = 42; - - // Invalid call to action text. - INVALID_CALL_TO_ACTION_TEXT = 43; - - // Invalid character in URL. - INVALID_CHARACTER_FOR_URL = 44; - - // Creative's country code is not valid. - INVALID_COUNTRY_CODE = 45; - - // Invalid use of Expanded Dynamic Search Ads tags ({lpurl} etc.) - INVALID_EXPANDED_DYNAMIC_SEARCH_AD_TAG = 47; - - // An input error whose real reason was not properly mapped (should not - // happen). - INVALID_INPUT = 48; - - // An invalid markup language was entered. - INVALID_MARKUP_LANGUAGE = 49; - - // An invalid mobile carrier was entered. - INVALID_MOBILE_CARRIER = 50; - - // Specified mobile carriers target a country not targeted by the campaign. - INVALID_MOBILE_CARRIER_TARGET = 51; - - // Wrong number of elements for given element type - INVALID_NUMBER_OF_ELEMENTS = 52; - - // The format of the telephone number is incorrect. Please re-enter the - // number using the correct format. - INVALID_PHONE_NUMBER_FORMAT = 53; - - // The certified vendor format id is incorrect. - INVALID_RICH_MEDIA_CERTIFIED_VENDOR_FORMAT_ID = 54; - - // The template ad data contains validation errors. - INVALID_TEMPLATE_DATA = 55; - - // The template field doesn't have have the correct type. - INVALID_TEMPLATE_ELEMENT_FIELD_TYPE = 56; - - // Invalid template id. - INVALID_TEMPLATE_ID = 57; - - // After substituting replacement strings, the line is too wide. - LINE_TOO_WIDE = 58; - - // The feed referenced must have ad customizer mapping to be used in a - // customizer tag. - MISSING_AD_CUSTOMIZER_MAPPING = 59; - - // Missing address component in template element address field. - MISSING_ADDRESS_COMPONENT = 60; - - // An ad name must be entered. - MISSING_ADVERTISEMENT_NAME = 61; - - // Business name must be entered. - MISSING_BUSINESS_NAME = 62; - - // Description (line 2) must be entered. - MISSING_DESCRIPTION1 = 63; - - // Description (line 3) must be entered. - MISSING_DESCRIPTION2 = 64; - - // The destination url must contain at least one tag (e.g. {lpurl}) - MISSING_DESTINATION_URL_TAG = 65; - - // The tracking url template of ExpandedDynamicSearchAd must contain at - // least one tag. (e.g. {lpurl}) - MISSING_LANDING_PAGE_URL_TAG = 66; - - // A valid dimension must be specified for this ad. - MISSING_DIMENSION = 67; - - // A display URL must be entered. - MISSING_DISPLAY_URL = 68; - - // Headline must be entered. - MISSING_HEADLINE = 69; - - // A height must be entered. - MISSING_HEIGHT = 70; - - // An image must be entered. - MISSING_IMAGE = 71; - - // Marketing image or product videos are required. - MISSING_MARKETING_IMAGE_OR_PRODUCT_VIDEOS = 72; - - // The markup language in which your site is written must be entered. - MISSING_MARKUP_LANGUAGES = 73; - - // A mobile carrier must be entered. - MISSING_MOBILE_CARRIER = 74; - - // Phone number must be entered. - MISSING_PHONE = 75; - - // Missing required template fields - MISSING_REQUIRED_TEMPLATE_FIELDS = 76; - - // Missing a required field value - MISSING_TEMPLATE_FIELD_VALUE = 77; - - // The ad must have text. - MISSING_TEXT = 78; - - // A visible URL must be entered. - MISSING_VISIBLE_URL = 79; - - // A width must be entered. - MISSING_WIDTH = 80; - - // Only 1 feed can be used as the source of ad customizer substitutions in a - // single ad. - MULTIPLE_DISTINCT_FEEDS_UNSUPPORTED = 81; - - // TempAdUnionId must be use when adding template ads. - MUST_USE_TEMP_AD_UNION_ID_ON_ADD = 82; - - // The string has too many characters. - TOO_LONG = 83; - - // The string has too few characters. - TOO_SHORT = 84; - - // Ad union dimensions cannot change for saved ads. - UNION_DIMENSIONS_CANNOT_CHANGE = 85; - - // Address component is not {country, lat, lng}. - UNKNOWN_ADDRESS_COMPONENT = 86; - - // Unknown unique field name - UNKNOWN_FIELD_NAME = 87; - - // Unknown unique name (template element type specifier) - UNKNOWN_UNIQUE_NAME = 88; - - // Unsupported ad dimension - UNSUPPORTED_DIMENSIONS = 89; - - // URL starts with an invalid scheme. - URL_INVALID_SCHEME = 90; - - // URL ends with an invalid top-level domain name. - URL_INVALID_TOP_LEVEL_DOMAIN = 91; - - // URL contains illegal characters. - URL_MALFORMED = 92; - - // URL must contain a host name. - URL_NO_HOST = 93; - - // URL not equivalent during upgrade. - URL_NOT_EQUIVALENT = 94; - - // URL host name too long to be stored as visible URL (applies to Ad - // Exchange ads) - URL_HOST_NAME_TOO_LONG = 95; - - // URL must start with a scheme. - URL_NO_SCHEME = 96; - - // URL should end in a valid domain extension, such as .com or .net. - URL_NO_TOP_LEVEL_DOMAIN = 97; - - // URL must not end with a path. - URL_PATH_NOT_ALLOWED = 98; - - // URL must not specify a port. - URL_PORT_NOT_ALLOWED = 99; - - // URL must not contain a query. - URL_QUERY_NOT_ALLOWED = 100; - - // A url scheme is not allowed in front of tag in tracking url template - // (e.g. http://{lpurl}) - URL_SCHEME_BEFORE_EXPANDED_DYNAMIC_SEARCH_AD_TAG = 102; - - // The user does not have permissions to create a template ad for the given - // template. - USER_DOES_NOT_HAVE_ACCESS_TO_TEMPLATE = 103; - - // Expandable setting is inconsistent/wrong. For example, an AdX ad is - // invalid if it has a expandable vendor format but no expanding directions - // specified, or expanding directions is specified, but the vendor format is - // not expandable. - INCONSISTENT_EXPANDABLE_SETTINGS = 104; - - // Format is invalid - INVALID_FORMAT = 105; - - // The text of this field did not match a pattern of allowed values. - INVALID_FIELD_TEXT = 106; - - // Template element is mising - ELEMENT_NOT_PRESENT = 107; - - // Error occurred during image processing - IMAGE_ERROR = 108; - - // The value is not within the valid range - VALUE_NOT_IN_RANGE = 109; - - // Template element field is not present - FIELD_NOT_PRESENT = 110; - - // Address is incomplete - ADDRESS_NOT_COMPLETE = 111; - - // Invalid address - ADDRESS_INVALID = 112; - - // Error retrieving specified video - VIDEO_RETRIEVAL_ERROR = 113; - - // Error processing audio - AUDIO_ERROR = 114; - - // Display URL is incorrect for YouTube PYV ads - INVALID_YOUTUBE_DISPLAY_URL = 115; - - // Too many product Images in GmailAd - TOO_MANY_PRODUCT_IMAGES = 116; - - // Too many product Videos in GmailAd - TOO_MANY_PRODUCT_VIDEOS = 117; - - // The device preference is not compatible with the ad type - INCOMPATIBLE_AD_TYPE_AND_DEVICE_PREFERENCE = 118; - - // Call tracking is not supported for specified country. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 119; - - // Carrier specific short number is not allowed. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 120; - - // Specified phone number type is disallowed. - DISALLOWED_NUMBER_TYPE = 121; - - // Phone number not supported for country. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 122; - - // Phone number not supported with call tracking enabled for country. - PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 123; - - // Premium rate phone number is not allowed. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 124; - - // Vanity phone number is not allowed. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 125; - - // Invalid call conversion type id. - INVALID_CALL_CONVERSION_TYPE_ID = 126; - - // Cannot disable call conversion and set conversion type id. - CANNOT_DISABLE_CALL_CONVERSION_AND_SET_CONVERSION_TYPE_ID = 127; - - // Cannot set path2 without path1. - CANNOT_SET_PATH2_WITHOUT_PATH1 = 128; - - // Missing domain name in campaign setting when adding expanded dynamic - // search ad. - MISSING_DYNAMIC_SEARCH_ADS_SETTING_DOMAIN_NAME = 129; - - // The associated ad is not compatible with restriction type. - INCOMPATIBLE_WITH_RESTRICTION_TYPE = 130; - - // Consent for call recording is required for creating/updating call only - // ads. Please see https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 131; - - // Either an image or a media bundle is required in a display upload ad. - MISSING_IMAGE_OR_MEDIA_BUNDLE = 132; - - // The display upload product type is not supported in this campaign. - PRODUCT_TYPE_NOT_SUPPORTED_IN_THIS_CAMPAIGN = 133; - - // The default value of an ad placeholder can not be the empty string. - PLACEHOLDER_CANNOT_HAVE_EMPTY_DEFAULT_VALUE = 134; - - // Ad placeholders with countdown functions must not have a default value. - PLACEHOLDER_COUNTDOWN_FUNCTION_CANNOT_HAVE_DEFAULT_VALUE = 135; - - // A previous ad placeholder that had a default value was found which means - // that all (non-countdown) placeholders must have a default value. This - // ad placeholder does not have a default value. - PLACEHOLDER_DEFAULT_VALUE_MISSING = 136; - - // A previous ad placeholder that did not have a default value was found - // which means that no placeholders may have a default value. This - // ad placeholder does have a default value. - UNEXPECTED_PLACEHOLDER_DEFAULT_VALUE = 137; - - // Two ad customizers may not be directly adjacent in an ad text. They must - // be separated by at least one character. - AD_CUSTOMIZERS_MAY_NOT_BE_ADJACENT = 138; - - // The ad is not associated with any enabled AdGroupAd, and cannot be - // updated. - UPDATING_AD_WITH_NO_ENABLED_ASSOCIATION = 139; - - // Too many ad customizers in one asset. - TOO_MANY_AD_CUSTOMIZERS = 141; - - // The ad customizer tag is recognized, but the format is invalid. - INVALID_AD_CUSTOMIZER_FORMAT = 142; - - // Customizer tags cannot be nested. - NESTED_AD_CUSTOMIZER_SYNTAX = 143; - - // The ad customizer syntax used in the ad is not supported. - UNSUPPORTED_AD_CUSTOMIZER_SYNTAX = 144; - - // There exists unpaired brace in the ad customizer tag. - UNPAIRED_BRACE_IN_AD_CUSTOMIZER_TAG = 145; - - // More than one type of countdown tag exists among all text lines. - MORE_THAN_ONE_COUNTDOWN_TAG_TYPE_EXISTS = 146; - - // Date time in the countdown tag is invalid. - DATE_TIME_IN_COUNTDOWN_TAG_IS_INVALID = 147; - - // Date time in the countdown tag is in the past. - DATE_TIME_IN_COUNTDOWN_TAG_IS_PAST = 148; - - // Cannot recognize the ad customizer tag. - UNRECOGNIZED_AD_CUSTOMIZER_TAG_FOUND = 149; - } - - -} diff --git a/google/ads/googleads/v4/errors/ad_group_ad_error.proto b/google/ads/googleads/v4/errors/ad_group_ad_error.proto deleted file mode 100644 index 316f15060..000000000 --- a/google/ads/googleads/v4/errors/ad_group_ad_error.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing ad group ad errors. - -// Container for enum describing possible ad group ad errors. -message AdGroupAdErrorEnum { - // Enum describing possible ad group ad errors. - enum AdGroupAdError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // No link found between the adgroup ad and the label. - AD_GROUP_AD_LABEL_DOES_NOT_EXIST = 2; - - // The label has already been attached to the adgroup ad. - AD_GROUP_AD_LABEL_ALREADY_EXISTS = 3; - - // The specified ad was not found in the adgroup - AD_NOT_UNDER_ADGROUP = 4; - - // Removed ads may not be modified - CANNOT_OPERATE_ON_REMOVED_ADGROUPAD = 5; - - // An ad of this type is deprecated and cannot be created. Only deletions - // are permitted. - CANNOT_CREATE_DEPRECATED_ADS = 6; - - // Text ads are deprecated and cannot be created. Use expanded text ads - // instead. - CANNOT_CREATE_TEXT_ADS = 7; - - // A required field was not specified or is an empty string. - EMPTY_FIELD = 8; - - // An ad may only be modified once per call - RESOURCE_REFERENCED_IN_MULTIPLE_OPS = 9; - - // AdGroupAds with the given ad type cannot be paused. - AD_TYPE_CANNOT_BE_PAUSED = 10; - - // AdGroupAds with the given ad type cannot be removed. - AD_TYPE_CANNOT_BE_REMOVED = 11; - } - - -} diff --git a/google/ads/googleads/v4/errors/ad_group_bid_modifier_error.proto b/google/ads/googleads/v4/errors/ad_group_bid_modifier_error.proto deleted file mode 100644 index 27d79198a..000000000 --- a/google/ads/googleads/v4/errors/ad_group_bid_modifier_error.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupBidModifierErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing ad group bid modifier errors. - -// Container for enum describing possible ad group bid modifier errors. -message AdGroupBidModifierErrorEnum { - // Enum describing possible ad group bid modifier errors. - enum AdGroupBidModifierError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The criterion ID does not support bid modification. - CRITERION_ID_NOT_SUPPORTED = 2; - - // Cannot override the bid modifier for the given criterion ID if the parent - // campaign is opted out of the same criterion. - CANNOT_OVERRIDE_OPTED_OUT_CAMPAIGN_CRITERION_BID_MODIFIER = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/ad_group_criterion_error.proto b/google/ads/googleads/v4/errors/ad_group_criterion_error.proto deleted file mode 100644 index 9529af7a8..000000000 --- a/google/ads/googleads/v4/errors/ad_group_criterion_error.proto +++ /dev/null @@ -1,137 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing ad group criterion errors. - -// Container for enum describing possible ad group criterion errors. -message AdGroupCriterionErrorEnum { - // Enum describing possible ad group criterion errors. - enum AdGroupCriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // No link found between the AdGroupCriterion and the label. - AD_GROUP_CRITERION_LABEL_DOES_NOT_EXIST = 2; - - // The label has already been attached to the AdGroupCriterion. - AD_GROUP_CRITERION_LABEL_ALREADY_EXISTS = 3; - - // Negative AdGroupCriterion cannot have labels. - CANNOT_ADD_LABEL_TO_NEGATIVE_CRITERION = 4; - - // Too many operations for a single call. - TOO_MANY_OPERATIONS = 5; - - // Negative ad group criteria are not updateable. - CANT_UPDATE_NEGATIVE = 6; - - // Concrete type of criterion (keyword v.s. placement) is required for ADD - // and SET operations. - CONCRETE_TYPE_REQUIRED = 7; - - // Bid is incompatible with ad group's bidding settings. - BID_INCOMPATIBLE_WITH_ADGROUP = 8; - - // Cannot target and exclude the same criterion at once. - CANNOT_TARGET_AND_EXCLUDE = 9; - - // The URL of a placement is invalid. - ILLEGAL_URL = 10; - - // Keyword text was invalid. - INVALID_KEYWORD_TEXT = 11; - - // Destination URL was invalid. - INVALID_DESTINATION_URL = 12; - - // The destination url must contain at least one tag (e.g. {lpurl}) - MISSING_DESTINATION_URL_TAG = 13; - - // Keyword-level cpm bid is not supported - KEYWORD_LEVEL_BID_NOT_SUPPORTED_FOR_MANUALCPM = 14; - - // For example, cannot add a biddable ad group criterion that had been - // removed. - INVALID_USER_STATUS = 15; - - // Criteria type cannot be targeted for the ad group. Either the account is - // restricted to keywords only, the criteria type is incompatible with the - // campaign's bidding strategy, or the criteria type can only be applied to - // campaigns. - CANNOT_ADD_CRITERIA_TYPE = 16; - - // Criteria type cannot be excluded for the ad group. Refer to the - // documentation for a specific criterion to check if it is excludable. - CANNOT_EXCLUDE_CRITERIA_TYPE = 17; - - // Partial failure is not supported for shopping campaign mutate operations. - CAMPAIGN_TYPE_NOT_COMPATIBLE_WITH_PARTIAL_FAILURE = 27; - - // Operations in the mutate request changes too many shopping ad groups. - // Please split requests for multiple shopping ad groups across multiple - // requests. - OPERATIONS_FOR_TOO_MANY_SHOPPING_ADGROUPS = 28; - - // Not allowed to modify url fields of an ad group criterion if there are - // duplicate elements for that ad group criterion in the request. - CANNOT_MODIFY_URL_FIELDS_WITH_DUPLICATE_ELEMENTS = 29; - - // Cannot set url fields without also setting final urls. - CANNOT_SET_WITHOUT_FINAL_URLS = 30; - - // Cannot clear final urls if final mobile urls exist. - CANNOT_CLEAR_FINAL_URLS_IF_FINAL_MOBILE_URLS_EXIST = 31; - - // Cannot clear final urls if final app urls exist. - CANNOT_CLEAR_FINAL_URLS_IF_FINAL_APP_URLS_EXIST = 32; - - // Cannot clear final urls if tracking url template exists. - CANNOT_CLEAR_FINAL_URLS_IF_TRACKING_URL_TEMPLATE_EXISTS = 33; - - // Cannot clear final urls if url custom parameters exist. - CANNOT_CLEAR_FINAL_URLS_IF_URL_CUSTOM_PARAMETERS_EXIST = 34; - - // Cannot set both destination url and final urls. - CANNOT_SET_BOTH_DESTINATION_URL_AND_FINAL_URLS = 35; - - // Cannot set both destination url and tracking url template. - CANNOT_SET_BOTH_DESTINATION_URL_AND_TRACKING_URL_TEMPLATE = 36; - - // Final urls are not supported for this criterion type. - FINAL_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE = 37; - - // Final mobile urls are not supported for this criterion type. - FINAL_MOBILE_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE = 38; - } - - -} diff --git a/google/ads/googleads/v4/errors/ad_group_error.proto b/google/ads/googleads/v4/errors/ad_group_error.proto deleted file mode 100644 index a6c077a45..000000000 --- a/google/ads/googleads/v4/errors/ad_group_error.proto +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing ad group errors. - -// Container for enum describing possible ad group errors. -message AdGroupErrorEnum { - // Enum describing possible ad group errors. - enum AdGroupError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // AdGroup with the same name already exists for the campaign. - DUPLICATE_ADGROUP_NAME = 2; - - // AdGroup name is not valid. - INVALID_ADGROUP_NAME = 3; - - // Advertiser is not allowed to target sites or set site bids that are not - // on the Google Search Network. - ADVERTISER_NOT_ON_CONTENT_NETWORK = 5; - - // Bid amount is too big. - BID_TOO_BIG = 6; - - // AdGroup bid does not match the campaign's bidding strategy. - BID_TYPE_AND_BIDDING_STRATEGY_MISMATCH = 7; - - // AdGroup name is required for Add. - MISSING_ADGROUP_NAME = 8; - - // No link found between the ad group and the label. - ADGROUP_LABEL_DOES_NOT_EXIST = 9; - - // The label has already been attached to the ad group. - ADGROUP_LABEL_ALREADY_EXISTS = 10; - - // The CriterionTypeGroup is not supported for the content bid dimension. - INVALID_CONTENT_BID_CRITERION_TYPE_GROUP = 11; - - // The ad group type is not compatible with the campaign channel type. - AD_GROUP_TYPE_NOT_VALID_FOR_ADVERTISING_CHANNEL_TYPE = 12; - - // The ad group type is not supported in the country of sale of the - // campaign. - ADGROUP_TYPE_NOT_SUPPORTED_FOR_CAMPAIGN_SALES_COUNTRY = 13; - - // Ad groups of AdGroupType.SEARCH_DYNAMIC_ADS can only be added to - // campaigns that have DynamicSearchAdsSetting attached. - CANNOT_ADD_ADGROUP_OF_TYPE_DSA_TO_CAMPAIGN_WITHOUT_DSA_SETTING = 14; - - // Promoted hotels ad groups are only available to customers on the - // allow-list. - PROMOTED_HOTEL_AD_GROUPS_NOT_AVAILABLE_FOR_CUSTOMER = 15; - } - - -} diff --git a/google/ads/googleads/v4/errors/ad_group_feed_error.proto b/google/ads/googleads/v4/errors/ad_group_feed_error.proto deleted file mode 100644 index ad537e5de..000000000 --- a/google/ads/googleads/v4/errors/ad_group_feed_error.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupFeedErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing ad group feed errors. - -// Container for enum describing possible ad group feed errors. -message AdGroupFeedErrorEnum { - // Enum describing possible ad group feed errors. - enum AdGroupFeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active feed already exists for this ad group and place holder type. - FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; - - // The specified feed is removed. - CANNOT_CREATE_FOR_REMOVED_FEED = 3; - - // The AdGroupFeed already exists. UPDATE operation should be used to modify - // the existing AdGroupFeed. - ADGROUP_FEED_ALREADY_EXISTS = 4; - - // Cannot operate on removed AdGroupFeed. - CANNOT_OPERATE_ON_REMOVED_ADGROUP_FEED = 5; - - // Invalid placeholder type. - INVALID_PLACEHOLDER_TYPE = 6; - - // Feed mapping for this placeholder type does not exist. - MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7; - - // Location AdGroupFeeds cannot be created unless there is a location - // CustomerFeed for the specified feed. - NO_EXISTING_LOCATION_CUSTOMER_FEED = 8; - } - - -} diff --git a/google/ads/googleads/v4/errors/ad_parameter_error.proto b/google/ads/googleads/v4/errors/ad_parameter_error.proto deleted file mode 100644 index 88fa97367..000000000 --- a/google/ads/googleads/v4/errors/ad_parameter_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdParameterErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing ad parameter errors. - -// Container for enum describing possible ad parameter errors. -message AdParameterErrorEnum { - // Enum describing possible ad parameter errors. - enum AdParameterError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The ad group criterion must be a keyword criterion. - AD_GROUP_CRITERION_MUST_BE_KEYWORD = 2; - - // The insertion text is invalid. - INVALID_INSERTION_TEXT_FORMAT = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/ad_sharing_error.proto b/google/ads/googleads/v4/errors/ad_sharing_error.proto deleted file mode 100644 index 94829da34..000000000 --- a/google/ads/googleads/v4/errors/ad_sharing_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdSharingErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing ad sharing errors. - -// Container for enum describing possible ad sharing errors. -message AdSharingErrorEnum { - // Enum describing possible ad sharing errors. - enum AdSharingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Error resulting in attempting to add an Ad to an AdGroup that already - // contains the Ad. - AD_GROUP_ALREADY_CONTAINS_AD = 2; - - // Ad is not compatible with the AdGroup it is being shared with. - INCOMPATIBLE_AD_UNDER_AD_GROUP = 3; - - // Cannot add AdGroupAd on inactive Ad. - CANNOT_SHARE_INACTIVE_AD = 4; - } - - -} diff --git a/google/ads/googleads/v4/errors/adx_error.proto b/google/ads/googleads/v4/errors/adx_error.proto deleted file mode 100644 index fc24ce5ee..000000000 --- a/google/ads/googleads/v4/errors/adx_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdxErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing adx errors. - -// Container for enum describing possible adx errors. -message AdxErrorEnum { - // Enum describing possible adx errors. - enum AdxError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Attempt to use non-AdX feature by AdX customer. - UNSUPPORTED_FEATURE = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/asset_error.proto b/google/ads/googleads/v4/errors/asset_error.proto deleted file mode 100644 index 71340c967..000000000 --- a/google/ads/googleads/v4/errors/asset_error.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AssetErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing asset errors. - -// Container for enum describing possible asset errors. -message AssetErrorEnum { - // Enum describing possible asset errors. - enum AssetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The customer is not on the allow-list for this asset type. - CUSTOMER_NOT_WHITELISTED_FOR_ASSET_TYPE = 2; - - // Assets are duplicated across operations. - DUPLICATE_ASSET = 3; - - // The asset name is duplicated, either across operations or with an - // existing asset. - DUPLICATE_ASSET_NAME = 4; - - // The Asset.asset_data oneof is empty. - ASSET_DATA_IS_MISSING = 5; - - // The asset has a name which is different from an existing duplicate that - // represents the same content. - CANNOT_MODIFY_ASSET_NAME = 6; - } - - -} diff --git a/google/ads/googleads/v4/errors/asset_link_error.proto b/google/ads/googleads/v4/errors/asset_link_error.proto deleted file mode 100644 index 3974489e6..000000000 --- a/google/ads/googleads/v4/errors/asset_link_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AssetLinkErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing asset link errors. - -// Container for enum describing possible asset link errors. -message AssetLinkErrorEnum { - // Enum describing possible asset link errors. - enum AssetLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Pinning is not supported for the given asset link field. - PINNING_UNSUPPORTED = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/authentication_error.proto b/google/ads/googleads/v4/errors/authentication_error.proto deleted file mode 100644 index 226ec5299..000000000 --- a/google/ads/googleads/v4/errors/authentication_error.proto +++ /dev/null @@ -1,103 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AuthenticationErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing authentication errors. - -// Container for enum describing possible authentication errors. -message AuthenticationErrorEnum { - // Enum describing possible authentication errors. - enum AuthenticationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Authentication of the request failed. - AUTHENTICATION_ERROR = 2; - - // Client Customer Id is not a number. - CLIENT_CUSTOMER_ID_INVALID = 5; - - // No customer found for the provided customer id. - CUSTOMER_NOT_FOUND = 8; - - // Client's Google Account is deleted. - GOOGLE_ACCOUNT_DELETED = 9; - - // Google account login token in the cookie is invalid. - GOOGLE_ACCOUNT_COOKIE_INVALID = 10; - - // A problem occurred during Google account authentication. - GOOGLE_ACCOUNT_AUTHENTICATION_FAILED = 25; - - // The user in the google account login token does not match the UserId in - // the cookie. - GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH = 12; - - // Login cookie is required for authentication. - LOGIN_COOKIE_REQUIRED = 13; - - // User in the cookie is not a valid Ads user. - NOT_ADS_USER = 14; - - // Oauth token in the header is not valid. - OAUTH_TOKEN_INVALID = 15; - - // Oauth token in the header has expired. - OAUTH_TOKEN_EXPIRED = 16; - - // Oauth token in the header has been disabled. - OAUTH_TOKEN_DISABLED = 17; - - // Oauth token in the header has been revoked. - OAUTH_TOKEN_REVOKED = 18; - - // Oauth token HTTP header is malformed. - OAUTH_TOKEN_HEADER_INVALID = 19; - - // Login cookie is not valid. - LOGIN_COOKIE_INVALID = 20; - - // User Id in the header is not a valid id. - USER_ID_INVALID = 22; - - // An account administrator changed this account's authentication settings. - // To access this Google Ads account, enable 2-Step Verification in your - // Google account at https://www.google.com/landing/2step. - TWO_STEP_VERIFICATION_NOT_ENROLLED = 23; - - // An account administrator changed this account's authentication settings. - // To access this Google Ads account, enable Advanced Protection in your - // Google account at https://landing.google.com/advancedprotection. - ADVANCED_PROTECTION_NOT_ENROLLED = 24; - } - - -} diff --git a/google/ads/googleads/v4/errors/authorization_error.proto b/google/ads/googleads/v4/errors/authorization_error.proto deleted file mode 100644 index a30a1914e..000000000 --- a/google/ads/googleads/v4/errors/authorization_error.proto +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AuthorizationErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing authorization errors. - -// Container for enum describing possible authorization errors. -message AuthorizationErrorEnum { - // Enum describing possible authorization errors. - enum AuthorizationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // User doesn't have permission to access customer. Note: If you're - // accessing a client customer, the manager's customer ID must be set in the - // `login-customer-id` header. Learn more at - // https://developers.google.com/google-ads/api/docs/concepts/call-structure#cid - USER_PERMISSION_DENIED = 2; - - // The developer token is not on the allow-list. - DEVELOPER_TOKEN_NOT_WHITELISTED = 3; - - // The developer token is not allowed with the project sent in the request. - DEVELOPER_TOKEN_PROHIBITED = 4; - - // The Google Cloud project sent in the request does not have permission to - // access the api. - PROJECT_DISABLED = 5; - - // Authorization of the client failed. - AUTHORIZATION_ERROR = 6; - - // The user does not have permission to perform this action - // (e.g., ADD, UPDATE, REMOVE) on the resource or call a method. - ACTION_NOT_PERMITTED = 7; - - // Signup not complete. - INCOMPLETE_SIGNUP = 8; - - // The customer can't be used because it isn't enabled. - CUSTOMER_NOT_ENABLED = 24; - - // The developer must sign the terms of service. They can be found here: - // ads.google.com/aw/apicenter - MISSING_TOS = 9; - - // The developer token is not approved. Non-approved developer tokens can - // only be used with test accounts. - DEVELOPER_TOKEN_NOT_APPROVED = 10; - - // The login customer specified does not have access to the account - // specified, so the request is invalid. - INVALID_LOGIN_CUSTOMER_ID_SERVING_CUSTOMER_ID_COMBINATION = 11; - - // The developer specified does not have access to the service. - SERVICE_ACCESS_DENIED = 12; - } - - -} diff --git a/google/ads/googleads/v4/errors/batch_job_error.proto b/google/ads/googleads/v4/errors/batch_job_error.proto deleted file mode 100644 index d1dc20555..000000000 --- a/google/ads/googleads/v4/errors/batch_job_error.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing batch job errors. - -// Container for enum describing possible batch job errors. -message BatchJobErrorEnum { - // Enum describing possible request errors. - enum BatchJobError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The batch job cannot add more operations or run after it has started - // running. - CANNOT_MODIFY_JOB_AFTER_JOB_STARTS_RUNNING = 2; - - // The operations for an AddBatchJobOperations request were empty. - EMPTY_OPERATIONS = 3; - - // The sequence token for an AddBatchJobOperations request was invalid. - INVALID_SEQUENCE_TOKEN = 4; - - // Batch job results can only be retrieved once the job is finished. - RESULTS_NOT_READY = 5; - - // The page size for ListBatchJobResults was invalid. - INVALID_PAGE_SIZE = 6; - - // The batch job cannot be removed because it has started running. - CAN_ONLY_REMOVE_PENDING_JOB = 7; - } - - -} diff --git a/google/ads/googleads/v4/errors/bidding_error.proto b/google/ads/googleads/v4/errors/bidding_error.proto deleted file mode 100644 index cbf4f5bec..000000000 --- a/google/ads/googleads/v4/errors/bidding_error.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BiddingErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing bidding errors. - -// Container for enum describing possible bidding errors. -message BiddingErrorEnum { - // Enum describing possible bidding errors. - enum BiddingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot transition to new bidding strategy. - BIDDING_STRATEGY_TRANSITION_NOT_ALLOWED = 2; - - // Cannot attach bidding strategy to campaign. - CANNOT_ATTACH_BIDDING_STRATEGY_TO_CAMPAIGN = 7; - - // Bidding strategy is not supported or cannot be used as anonymous. - INVALID_ANONYMOUS_BIDDING_STRATEGY_TYPE = 10; - - // The type does not match the named strategy's type. - INVALID_BIDDING_STRATEGY_TYPE = 14; - - // The bid is invalid. - INVALID_BID = 17; - - // Bidding strategy is not available for the account type. - BIDDING_STRATEGY_NOT_AVAILABLE_FOR_ACCOUNT_TYPE = 18; - - // Conversion tracking is not enabled in the campaign that has value-based - // bidding transitions. - CONVERSION_TRACKING_NOT_ENABLED = 19; - - // Not enough conversions tracked for value-based bidding transitions. - NOT_ENOUGH_CONVERSIONS = 20; - - // Campaign can not be created with given bidding strategy. It can be - // transitioned to the strategy, once eligible. - CANNOT_CREATE_CAMPAIGN_WITH_BIDDING_STRATEGY = 21; - - // Cannot target content network only as campaign uses Page One Promoted - // bidding strategy. - CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CAMPAIGN_LEVEL_POP_BIDDING_STRATEGY = 23; - - // Budget Optimizer and Target Spend bidding strategies are not supported - // for campaigns with AdSchedule targeting. - BIDDING_STRATEGY_NOT_SUPPORTED_WITH_AD_SCHEDULE = 24; - - // Pay per conversion is not available to all the customer, only few - // customers on the allow-list can use this. - PAY_PER_CONVERSION_NOT_AVAILABLE_FOR_CUSTOMER = 25; - - // Pay per conversion is not allowed with Target CPA. - PAY_PER_CONVERSION_NOT_ALLOWED_WITH_TARGET_CPA = 26; - - // Cannot set bidding strategy to Manual CPM for search network only - // campaigns. - BIDDING_STRATEGY_NOT_ALLOWED_FOR_SEARCH_ONLY_CAMPAIGNS = 27; - - // The bidding strategy is not supported for use in drafts or experiments. - BIDDING_STRATEGY_NOT_SUPPORTED_IN_DRAFTS_OR_EXPERIMENTS = 28; - - // Bidding strategy type does not support product type ad group criterion. - BIDDING_STRATEGY_TYPE_DOES_NOT_SUPPORT_PRODUCT_TYPE_ADGROUP_CRITERION = 29; - - // Bid amount is too small. - BID_TOO_SMALL = 30; - - // Bid amount is too big. - BID_TOO_BIG = 31; - - // Bid has too many fractional digit precision. - BID_TOO_MANY_FRACTIONAL_DIGITS = 32; - - // Invalid domain name specified. - INVALID_DOMAIN_NAME = 33; - - // The field is not compatible with the payment mode. - NOT_COMPATIBLE_WITH_PAYMENT_MODE = 34; - - // The field is not compatible with the budget type. - NOT_COMPATIBLE_WITH_BUDGET_TYPE = 35; - - // The field is not compatible with the bidding strategy type. - NOT_COMPATIBLE_WITH_BIDDING_STRATEGY_TYPE = 36; - - // Bidding strategy type is incompatible with shared budget. - BIDDING_STRATEGY_TYPE_INCOMPATIBLE_WITH_SHARED_BUDGET = 37; - } - - -} diff --git a/google/ads/googleads/v4/errors/bidding_strategy_error.proto b/google/ads/googleads/v4/errors/bidding_strategy_error.proto deleted file mode 100644 index a63c3446a..000000000 --- a/google/ads/googleads/v4/errors/bidding_strategy_error.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing bidding strategy errors. - -// Container for enum describing possible bidding strategy errors. -message BiddingStrategyErrorEnum { - // Enum describing possible bidding strategy errors. - enum BiddingStrategyError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Each bidding strategy must have a unique name. - DUPLICATE_NAME = 2; - - // Bidding strategy type is immutable. - CANNOT_CHANGE_BIDDING_STRATEGY_TYPE = 3; - - // Only bidding strategies not linked to campaigns, adgroups or adgroup - // criteria can be removed. - CANNOT_REMOVE_ASSOCIATED_STRATEGY = 4; - - // The specified bidding strategy is not supported. - BIDDING_STRATEGY_NOT_SUPPORTED = 5; - - // The bidding strategy is incompatible with the campaign's bidding - // strategy goal type. - INCOMPATIBLE_BIDDING_STRATEGY_AND_BIDDING_STRATEGY_GOAL_TYPE = 6; - } - - -} diff --git a/google/ads/googleads/v4/errors/billing_setup_error.proto b/google/ads/googleads/v4/errors/billing_setup_error.proto deleted file mode 100644 index 83d063bf1..000000000 --- a/google/ads/googleads/v4/errors/billing_setup_error.proto +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing billing setup errors. - -// Container for enum describing possible billing setup errors. -message BillingSetupErrorEnum { - // Enum describing possible billing setup errors. - enum BillingSetupError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot specify both an existing payments account and a new payments - // account when setting up billing. - CANNOT_USE_EXISTING_AND_NEW_ACCOUNT = 2; - - // Cannot cancel an approved billing setup whose start time has passed. - CANNOT_REMOVE_STARTED_BILLING_SETUP = 3; - - // Cannot perform a Change of Bill-To (CBT) to the same payments account. - CANNOT_CHANGE_BILLING_TO_SAME_PAYMENTS_ACCOUNT = 4; - - // Billing setups can only be used by customers with ENABLED or DRAFT - // status. - BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_STATUS = 5; - - // Billing setups must either include a correctly formatted existing - // payments account id, or a non-empty new payments account name. - INVALID_PAYMENTS_ACCOUNT = 6; - - // Only billable and third-party customers can create billing setups. - BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_CATEGORY = 7; - - // Billing setup creations can only use NOW for start time type. - INVALID_START_TIME_TYPE = 8; - - // Billing setups can only be created for a third-party customer if they do - // not already have a setup. - THIRD_PARTY_ALREADY_HAS_BILLING = 9; - - // Billing setups cannot be created if there is already a pending billing in - // progress. - BILLING_SETUP_IN_PROGRESS = 10; - - // Billing setups can only be created by customers who have permission to - // setup billings. Users can contact a representative for help setting up - // permissions. - NO_SIGNUP_PERMISSION = 11; - - // Billing setups cannot be created if there is already a future-approved - // billing. - CHANGE_OF_BILL_TO_IN_PROGRESS = 12; - - // Requested payments profile not found. - PAYMENTS_PROFILE_NOT_FOUND = 13; - - // Requested payments account not found. - PAYMENTS_ACCOUNT_NOT_FOUND = 14; - - // Billing setup creation failed because the payments profile is ineligible. - PAYMENTS_PROFILE_INELIGIBLE = 15; - - // Billing setup creation failed because the payments account is ineligible. - PAYMENTS_ACCOUNT_INELIGIBLE = 16; - - // Billing setup creation failed because the payments profile needs internal - // approval. - CUSTOMER_NEEDS_INTERNAL_APPROVAL = 17; - - // Payments account has different currency code than the current customer - // and hence cannot be used to setup billing. - PAYMENTS_ACCOUNT_INELIGIBLE_CURRENCY_CODE_MISMATCH = 19; - } - - -} diff --git a/google/ads/googleads/v4/errors/campaign_budget_error.proto b/google/ads/googleads/v4/errors/campaign_budget_error.proto deleted file mode 100644 index afb63fa2e..000000000 --- a/google/ads/googleads/v4/errors/campaign_budget_error.proto +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBudgetErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing campaign budget errors. - -// Container for enum describing possible campaign budget errors. -message CampaignBudgetErrorEnum { - // Enum describing possible campaign budget errors. - enum CampaignBudgetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The campaign budget cannot be shared. - CAMPAIGN_BUDGET_CANNOT_BE_SHARED = 17; - - // The requested campaign budget no longer exists. - CAMPAIGN_BUDGET_REMOVED = 2; - - // The campaign budget is associated with at least one campaign, and so the - // campaign budget cannot be removed. - CAMPAIGN_BUDGET_IN_USE = 3; - - // Customer is not on the allow-list for this campaign budget period. - CAMPAIGN_BUDGET_PERIOD_NOT_AVAILABLE = 4; - - // This field is not mutable on implicitly shared campaign budgets - CANNOT_MODIFY_FIELD_OF_IMPLICITLY_SHARED_CAMPAIGN_BUDGET = 6; - - // Cannot change explicitly shared campaign budgets back to implicitly - // shared ones. - CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_IMPLICITLY_SHARED = 7; - - // An implicit campaign budget without a name cannot be changed to - // explicitly shared campaign budget. - CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED_WITHOUT_NAME = 8; - - // Cannot change an implicitly shared campaign budget to an explicitly - // shared one. - CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED = 9; - - // Only explicitly shared campaign budgets can be used with multiple - // campaigns. - CANNOT_USE_IMPLICITLY_SHARED_CAMPAIGN_BUDGET_WITH_MULTIPLE_CAMPAIGNS = 10; - - // A campaign budget with this name already exists. - DUPLICATE_NAME = 11; - - // A money amount was not in the expected currency. - MONEY_AMOUNT_IN_WRONG_CURRENCY = 12; - - // A money amount was less than the minimum CPC for currency. - MONEY_AMOUNT_LESS_THAN_CURRENCY_MINIMUM_CPC = 13; - - // A money amount was greater than the maximum allowed. - MONEY_AMOUNT_TOO_LARGE = 14; - - // A money amount was negative. - NEGATIVE_MONEY_AMOUNT = 15; - - // A money amount was not a multiple of a minimum unit. - NON_MULTIPLE_OF_MINIMUM_CURRENCY_UNIT = 16; - - // Total budget amount must be unset when BudgetPeriod is DAILY. - TOTAL_BUDGET_AMOUNT_MUST_BE_UNSET_FOR_BUDGET_PERIOD_DAILY = 18; - } - - -} diff --git a/google/ads/googleads/v4/errors/campaign_criterion_error.proto b/google/ads/googleads/v4/errors/campaign_criterion_error.proto deleted file mode 100644 index 2e5dcec08..000000000 --- a/google/ads/googleads/v4/errors/campaign_criterion_error.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing campaign criterion errors. - -// Container for enum describing possible campaign criterion errors. -message CampaignCriterionErrorEnum { - // Enum describing possible campaign criterion errors. - enum CampaignCriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Concrete type of criterion (keyword v.s. placement) is required for - // CREATE and UPDATE operations. - CONCRETE_TYPE_REQUIRED = 2; - - // Invalid placement URL. - INVALID_PLACEMENT_URL = 3; - - // Criteria type can not be excluded for the campaign by the customer. like - // AOL account type cannot target site type criteria - CANNOT_EXCLUDE_CRITERIA_TYPE = 4; - - // Cannot set the campaign criterion status for this criteria type. - CANNOT_SET_STATUS_FOR_CRITERIA_TYPE = 5; - - // Cannot set the campaign criterion status for an excluded criteria. - CANNOT_SET_STATUS_FOR_EXCLUDED_CRITERIA = 6; - - // Cannot target and exclude the same criterion. - CANNOT_TARGET_AND_EXCLUDE = 7; - - // The mutate contained too many operations. - TOO_MANY_OPERATIONS = 8; - - // This operator cannot be applied to a criterion of this type. - OPERATOR_NOT_SUPPORTED_FOR_CRITERION_TYPE = 9; - - // The Shopping campaign sales country is not supported for - // ProductSalesChannel targeting. - SHOPPING_CAMPAIGN_SALES_COUNTRY_NOT_SUPPORTED_FOR_SALES_CHANNEL = 10; - - // The existing field can't be updated with CREATE operation. It can be - // updated with UPDATE operation only. - CANNOT_ADD_EXISTING_FIELD = 11; - - // Negative criteria are immutable, so updates are not allowed. - CANNOT_UPDATE_NEGATIVE_CRITERION = 12; - } - - -} diff --git a/google/ads/googleads/v4/errors/campaign_draft_error.proto b/google/ads/googleads/v4/errors/campaign_draft_error.proto deleted file mode 100644 index 0d4c3a5bf..000000000 --- a/google/ads/googleads/v4/errors/campaign_draft_error.proto +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing campaign draft errors. - -// Container for enum describing possible campaign draft errors. -message CampaignDraftErrorEnum { - // Enum describing possible campaign draft errors. - enum CampaignDraftError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A draft with this name already exists for this campaign. - DUPLICATE_DRAFT_NAME = 2; - - // The draft is removed and cannot be transitioned to another status. - INVALID_STATUS_TRANSITION_FROM_REMOVED = 3; - - // The draft has been promoted and cannot be transitioned to the specified - // status. - INVALID_STATUS_TRANSITION_FROM_PROMOTED = 4; - - // The draft has failed to be promoted and cannot be transitioned to the - // specified status. - INVALID_STATUS_TRANSITION_FROM_PROMOTE_FAILED = 5; - - // This customer is not allowed to create drafts. - CUSTOMER_CANNOT_CREATE_DRAFT = 6; - - // This campaign is not allowed to create drafts. - CAMPAIGN_CANNOT_CREATE_DRAFT = 7; - - // This modification cannot be made on a draft. - INVALID_DRAFT_CHANGE = 8; - - // The draft cannot be transitioned to the specified status from its - // current status. - INVALID_STATUS_TRANSITION = 9; - - // The campaign has reached the maximum number of drafts that can be created - // for a campaign throughout its lifetime. No additional drafts can be - // created for this campaign. Removed drafts also count towards this limit. - MAX_NUMBER_OF_DRAFTS_PER_CAMPAIGN_REACHED = 10; - - // ListAsyncErrors was called without first promoting the draft. - LIST_ERRORS_FOR_PROMOTED_DRAFT_ONLY = 11; - } - - -} diff --git a/google/ads/googleads/v4/errors/campaign_error.proto b/google/ads/googleads/v4/errors/campaign_error.proto deleted file mode 100644 index 0107b8e2b..000000000 --- a/google/ads/googleads/v4/errors/campaign_error.proto +++ /dev/null @@ -1,179 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing campaign errors. - -// Container for enum describing possible campaign errors. -message CampaignErrorEnum { - // Enum describing possible campaign errors. - enum CampaignError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot target content network. - CANNOT_TARGET_CONTENT_NETWORK = 3; - - // Cannot target search network. - CANNOT_TARGET_SEARCH_NETWORK = 4; - - // Cannot cover search network without google search network. - CANNOT_TARGET_SEARCH_NETWORK_WITHOUT_GOOGLE_SEARCH = 5; - - // Cannot target Google Search network for a CPM campaign. - CANNOT_TARGET_GOOGLE_SEARCH_FOR_CPM_CAMPAIGN = 6; - - // Must target at least one network. - CAMPAIGN_MUST_TARGET_AT_LEAST_ONE_NETWORK = 7; - - // Only some Google partners are allowed to target partner search network. - CANNOT_TARGET_PARTNER_SEARCH_NETWORK = 8; - - // Cannot target content network only as campaign has criteria-level bidding - // strategy. - CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CRITERIA_LEVEL_BIDDING_STRATEGY = 9; - - // Cannot modify the start or end date such that the campaign duration would - // not contain the durations of all runnable trials. - CAMPAIGN_DURATION_MUST_CONTAIN_ALL_RUNNABLE_TRIALS = 10; - - // Cannot modify dates, budget or campaign name of a trial campaign. - CANNOT_MODIFY_FOR_TRIAL_CAMPAIGN = 11; - - // Trying to modify the name of an active or paused campaign, where the name - // is already assigned to another active or paused campaign. - DUPLICATE_CAMPAIGN_NAME = 12; - - // Two fields are in conflicting modes. - INCOMPATIBLE_CAMPAIGN_FIELD = 13; - - // Campaign name cannot be used. - INVALID_CAMPAIGN_NAME = 14; - - // Given status is invalid. - INVALID_AD_SERVING_OPTIMIZATION_STATUS = 15; - - // Error in the campaign level tracking URL. - INVALID_TRACKING_URL = 16; - - // Cannot set both tracking URL template and tracking setting. A user has - // to clear legacy tracking setting in order to add tracking URL template. - CANNOT_SET_BOTH_TRACKING_URL_TEMPLATE_AND_TRACKING_SETTING = 17; - - // The maximum number of impressions for Frequency Cap should be an integer - // greater than 0. - MAX_IMPRESSIONS_NOT_IN_RANGE = 18; - - // Only the Day, Week and Month time units are supported. - TIME_UNIT_NOT_SUPPORTED = 19; - - // Operation not allowed on a campaign whose serving status has ended - INVALID_OPERATION_IF_SERVING_STATUS_HAS_ENDED = 20; - - // This budget is exclusively linked to a Campaign that is using experiments - // so it cannot be shared. - BUDGET_CANNOT_BE_SHARED = 21; - - // Campaigns using experiments cannot use a shared budget. - CAMPAIGN_CANNOT_USE_SHARED_BUDGET = 22; - - // A different budget cannot be assigned to a campaign when there are - // running or scheduled trials. - CANNOT_CHANGE_BUDGET_ON_CAMPAIGN_WITH_TRIALS = 23; - - // No link found between the campaign and the label. - CAMPAIGN_LABEL_DOES_NOT_EXIST = 24; - - // The label has already been attached to the campaign. - CAMPAIGN_LABEL_ALREADY_EXISTS = 25; - - // A ShoppingSetting was not found when creating a shopping campaign. - MISSING_SHOPPING_SETTING = 26; - - // The country in shopping setting is not an allowed country. - INVALID_SHOPPING_SALES_COUNTRY = 27; - - // The requested channel type is not available according to the customer's - // account setting. - ADVERTISING_CHANNEL_TYPE_NOT_AVAILABLE_FOR_ACCOUNT_TYPE = 31; - - // The AdvertisingChannelSubType is not a valid subtype of the primary - // channel type. - INVALID_ADVERTISING_CHANNEL_SUB_TYPE = 32; - - // At least one conversion must be selected. - AT_LEAST_ONE_CONVERSION_MUST_BE_SELECTED = 33; - - // Setting ad rotation mode for a campaign is not allowed. Ad rotation mode - // at campaign is deprecated. - CANNOT_SET_AD_ROTATION_MODE = 34; - - // Trying to change start date on a campaign that has started. - CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED = 35; - - // Trying to modify a date into the past. - CANNOT_SET_DATE_TO_PAST = 36; - - // Hotel center id in the hotel setting does not match any customer links. - MISSING_HOTEL_CUSTOMER_LINK = 37; - - // Hotel center id in the hotel setting must match an active customer link. - INVALID_HOTEL_CUSTOMER_LINK = 38; - - // Hotel setting was not found when creating a hotel ads campaign. - MISSING_HOTEL_SETTING = 39; - - // A Campaign cannot use shared campaign budgets and be part of a campaign - // group. - CANNOT_USE_SHARED_CAMPAIGN_BUDGET_WHILE_PART_OF_CAMPAIGN_GROUP = 40; - - // The app ID was not found. - APP_NOT_FOUND = 41; - - // Campaign.shopping_setting.enable_local is not supported for the specified - // campaign type. - SHOPPING_ENABLE_LOCAL_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE = 42; - - // The merchant does not support the creation of campaigns for Shopping - // Comparison Listing Ads. - MERCHANT_NOT_ALLOWED_FOR_COMPARISON_LISTING_ADS = 43; - - // The App campaign for engagement cannot be created because there aren't - // enough installs. - INSUFFICIENT_APP_INSTALLS_COUNT = 44; - - // The App campaign for engagement cannot be created because the app is - // sensitive. - SENSITIVE_CATEGORY_APP = 45; - } - - -} diff --git a/google/ads/googleads/v4/errors/campaign_experiment_error.proto b/google/ads/googleads/v4/errors/campaign_experiment_error.proto deleted file mode 100644 index 7a97e2f1f..000000000 --- a/google/ads/googleads/v4/errors/campaign_experiment_error.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing campaign experiment errors. - -// Container for enum describing possible campaign experiment errors. -message CampaignExperimentErrorEnum { - // Enum describing possible campaign experiment errors. - enum CampaignExperimentError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active campaign or experiment with this name already exists. - DUPLICATE_NAME = 2; - - // Experiment cannot be updated from the current state to the - // requested target state. For example, an experiment can only graduate - // if its status is ENABLED. - INVALID_TRANSITION = 3; - - // Cannot create an experiment from a campaign using an explicitly shared - // budget. - CANNOT_CREATE_EXPERIMENT_WITH_SHARED_BUDGET = 4; - - // Cannot create an experiment for a removed base campaign. - CANNOT_CREATE_EXPERIMENT_FOR_REMOVED_BASE_CAMPAIGN = 5; - - // Cannot create an experiment from a draft, which has a status other than - // proposed. - CANNOT_CREATE_EXPERIMENT_FOR_NON_PROPOSED_DRAFT = 6; - - // This customer is not allowed to create an experiment. - CUSTOMER_CANNOT_CREATE_EXPERIMENT = 7; - - // This campaign is not allowed to create an experiment. - CAMPAIGN_CANNOT_CREATE_EXPERIMENT = 8; - - // Trying to set an experiment duration which overlaps with another - // experiment. - EXPERIMENT_DURATIONS_MUST_NOT_OVERLAP = 9; - - // All non-removed experiments must start and end within their campaign's - // duration. - EXPERIMENT_DURATION_MUST_BE_WITHIN_CAMPAIGN_DURATION = 10; - - // The experiment cannot be modified because its status is in a terminal - // state, such as REMOVED. - CANNOT_MUTATE_EXPERIMENT_DUE_TO_STATUS = 11; - } - - -} diff --git a/google/ads/googleads/v4/errors/campaign_feed_error.proto b/google/ads/googleads/v4/errors/campaign_feed_error.proto deleted file mode 100644 index ffbcd7ce8..000000000 --- a/google/ads/googleads/v4/errors/campaign_feed_error.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignFeedErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing campaign feed errors. - -// Container for enum describing possible campaign feed errors. -message CampaignFeedErrorEnum { - // Enum describing possible campaign feed errors. - enum CampaignFeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active feed already exists for this campaign and placeholder type. - FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; - - // The specified feed is removed. - CANNOT_CREATE_FOR_REMOVED_FEED = 4; - - // The CampaignFeed already exists. UPDATE should be used to modify the - // existing CampaignFeed. - CANNOT_CREATE_ALREADY_EXISTING_CAMPAIGN_FEED = 5; - - // Cannot update removed campaign feed. - CANNOT_MODIFY_REMOVED_CAMPAIGN_FEED = 6; - - // Invalid placeholder type. - INVALID_PLACEHOLDER_TYPE = 7; - - // Feed mapping for this placeholder type does not exist. - MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 8; - - // Location CampaignFeeds cannot be created unless there is a location - // CustomerFeed for the specified feed. - NO_EXISTING_LOCATION_CUSTOMER_FEED = 9; - } - - -} diff --git a/google/ads/googleads/v4/errors/campaign_shared_set_error.proto b/google/ads/googleads/v4/errors/campaign_shared_set_error.proto deleted file mode 100644 index 0ccee4e3c..000000000 --- a/google/ads/googleads/v4/errors/campaign_shared_set_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing campaign shared set errors. - -// Container for enum describing possible campaign shared set errors. -message CampaignSharedSetErrorEnum { - // Enum describing possible campaign shared set errors. - enum CampaignSharedSetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The shared set belongs to another customer and permission isn't granted. - SHARED_SET_ACCESS_DENIED = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/change_status_error.proto b/google/ads/googleads/v4/errors/change_status_error.proto deleted file mode 100644 index 009c0725f..000000000 --- a/google/ads/googleads/v4/errors/change_status_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing change status errors. - -// Container for enum describing possible change status errors. -message ChangeStatusErrorEnum { - // Enum describing possible change status errors. - enum ChangeStatusError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The requested start date is too old. - START_DATE_TOO_OLD = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/collection_size_error.proto b/google/ads/googleads/v4/errors/collection_size_error.proto deleted file mode 100644 index cc356ba34..000000000 --- a/google/ads/googleads/v4/errors/collection_size_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CollectionSizeErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing collection size errors. - -// Container for enum describing possible collection size errors. -message CollectionSizeErrorEnum { - // Enum describing possible collection size errors. - enum CollectionSizeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Too few. - TOO_FEW = 2; - - // Too many. - TOO_MANY = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/context_error.proto b/google/ads/googleads/v4/errors/context_error.proto deleted file mode 100644 index 9031bd5b6..000000000 --- a/google/ads/googleads/v4/errors/context_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ContextErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing context errors. - -// Container for enum describing possible context errors. -message ContextErrorEnum { - // Enum describing possible context errors. - enum ContextError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The operation is not allowed for the given context. - OPERATION_NOT_PERMITTED_FOR_CONTEXT = 2; - - // The operation is not allowed for removed resources. - OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/conversion_action_error.proto b/google/ads/googleads/v4/errors/conversion_action_error.proto deleted file mode 100644 index 99986bce3..000000000 --- a/google/ads/googleads/v4/errors/conversion_action_error.proto +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing conversion action errors. - -// Container for enum describing possible conversion action errors. -message ConversionActionErrorEnum { - // Enum describing possible conversion action errors. - enum ConversionActionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified conversion action name already exists. - DUPLICATE_NAME = 2; - - // Another conversion action with the specified app id already exists. - DUPLICATE_APP_ID = 3; - - // Android first open action conflicts with Google play codeless download - // action tracking the same app. - TWO_CONVERSION_ACTIONS_BIDDING_ON_SAME_APP_DOWNLOAD = 4; - - // Android first open action conflicts with Google play codeless download - // action tracking the same app. - BIDDING_ON_SAME_APP_DOWNLOAD_AS_GLOBAL_ACTION = 5; - - // The attribution model cannot be set to DATA_DRIVEN because a data-driven - // model has never been generated. - DATA_DRIVEN_MODEL_WAS_NEVER_GENERATED = 6; - - // The attribution model cannot be set to DATA_DRIVEN because the - // data-driven model is expired. - DATA_DRIVEN_MODEL_EXPIRED = 7; - - // The attribution model cannot be set to DATA_DRIVEN because the - // data-driven model is stale. - DATA_DRIVEN_MODEL_STALE = 8; - - // The attribution model cannot be set to DATA_DRIVEN because the - // data-driven model is unavailable or the conversion action was newly - // added. - DATA_DRIVEN_MODEL_UNKNOWN = 9; - - // Creation of this conversion action type isn't supported by Google - // Ads API. - CREATION_NOT_SUPPORTED = 10; - } - - -} diff --git a/google/ads/googleads/v4/errors/conversion_adjustment_upload_error.proto b/google/ads/googleads/v4/errors/conversion_adjustment_upload_error.proto deleted file mode 100644 index b4850663d..000000000 --- a/google/ads/googleads/v4/errors/conversion_adjustment_upload_error.proto +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAdjustmentUploadErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing conversion adjustment upload errors. - -// Container for enum describing possible conversion adjustment upload errors. -message ConversionAdjustmentUploadErrorEnum { - // Enum describing possible conversion adjustment upload errors. - enum ConversionAdjustmentUploadError { - // Not specified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified conversion action was created too recently. - // Please try the upload again after 4-6 hours have passed since the - // conversion action was created. - TOO_RECENT_CONVERSION_ACTION = 2; - - // No conversion action of a supported ConversionActionType that matches the - // provided information can be found for the customer. - INVALID_CONVERSION_ACTION = 3; - - // A retraction was already reported for this conversion. - CONVERSION_ALREADY_RETRACTED = 4; - - // A conversion for the supplied combination of conversion - // action and conversion identifier could not be found. - CONVERSION_NOT_FOUND = 5; - - // The specified conversion has already expired. Conversions expire after 55 - // days, after which adjustments cannot be reported against them. - CONVERSION_EXPIRED = 6; - - // The supplied adjustment date time precedes that of the original - // conversion. - ADJUSTMENT_PRECEDES_CONVERSION = 7; - - // A restatement with a more recent adjustment date time was already - // reported for this conversion. - MORE_RECENT_RESTATEMENT_FOUND = 8; - - // The conversion was created too recently. - TOO_RECENT_CONVERSION = 9; - - // Restatements cannot be reported for a conversion action that always uses - // the default value. - CANNOT_RESTATE_CONVERSION_ACTION_THAT_ALWAYS_USES_DEFAULT_CONVERSION_VALUE = 10; - - // The request contained more than 2000 adjustments. - TOO_MANY_ADJUSTMENTS_IN_REQUEST = 11; - - // The conversion has been adjusted too many times. - TOO_MANY_ADJUSTMENTS = 12; - } - - -} diff --git a/google/ads/googleads/v4/errors/conversion_upload_error.proto b/google/ads/googleads/v4/errors/conversion_upload_error.proto deleted file mode 100644 index f828514b6..000000000 --- a/google/ads/googleads/v4/errors/conversion_upload_error.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ConversionUploadErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing conversion upload errors. - -// Container for enum describing possible conversion upload errors. -message ConversionUploadErrorEnum { - // Enum describing possible conversion upload errors. - enum ConversionUploadError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The request contained more than 2000 conversions. - TOO_MANY_CONVERSIONS_IN_REQUEST = 2; - - // The specified gclid could not be decoded. - UNPARSEABLE_GCLID = 3; - - // The specified conversion_date_time is before the event time - // associated with the given gclid. - CONVERSION_PRECEDES_GCLID = 4; - - // The click associated with the given gclid is either too old to be - // imported or occurred outside of the click through lookback window for the - // specified conversion action. - EXPIRED_GCLID = 5; - - // The click associated with the given gclid occurred too recently. Please - // try uploading again after 6 hours have passed since the click occurred. - TOO_RECENT_GCLID = 6; - - // The click associated with the given gclid could not be found in the - // system. This can happen if Google Click IDs are collected for non Google - // Ads clicks. - GCLID_NOT_FOUND = 7; - - // The click associated with the given gclid is owned by a customer - // account that the uploading customer does not manage. - UNAUTHORIZED_CUSTOMER = 8; - - // No upload eligible conversion action that matches the provided - // information can be found for the customer. - INVALID_CONVERSION_ACTION = 9; - - // The specified conversion action was created too recently. - // Please try the upload again after 4-6 hours have passed since the - // conversion action was created. - TOO_RECENT_CONVERSION_ACTION = 10; - - // The click associated with the given gclid does not contain conversion - // tracking information. - CONVERSION_TRACKING_NOT_ENABLED_AT_IMPRESSION_TIME = 11; - - // The specified conversion action does not use an external attribution - // model, but external_attribution_data was set. - EXTERNAL_ATTRIBUTION_DATA_SET_FOR_NON_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 12; - - // The specified conversion action uses an external attribution model, but - // external_attribution_data or one of its contained fields was not set. - // Both external_attribution_credit and external_attribution_model must be - // set for externally attributed conversion actions. - EXTERNAL_ATTRIBUTION_DATA_NOT_SET_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 13; - - // Order IDs are not supported for conversion actions which use an external - // attribution model. - ORDER_ID_NOT_PERMITTED_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 14; - - // A conversion with the same order id and conversion action combination - // already exists in our system. - ORDER_ID_ALREADY_IN_USE = 15; - - // The request contained two or more conversions with the same order id and - // conversion action combination. - DUPLICATE_ORDER_ID = 16; - - // The call occurred too recently. Please try uploading again after 12 hours - // have passed since the call occurred. - TOO_RECENT_CALL = 17; - - // The click that initiated the call is too old for this conversion to be - // imported. - EXPIRED_CALL = 18; - - // The call or the click leading to the call was not found. - CALL_NOT_FOUND = 19; - - // The specified conversion_date_time is before the call_start_date_time. - CONVERSION_PRECEDES_CALL = 20; - - // The click associated with the call does not contain conversion tracking - // information. - CONVERSION_TRACKING_NOT_ENABLED_AT_CALL_TIME = 21; - - // The caller’s phone number cannot be parsed. It should be formatted either - // as E.164 "+16502531234", International "+64 3-331 6005" or US national - // number "6502531234". - UNPARSEABLE_CALLERS_PHONE_NUMBER = 22; - } - - -} diff --git a/google/ads/googleads/v4/errors/country_code_error.proto b/google/ads/googleads/v4/errors/country_code_error.proto deleted file mode 100644 index a56e021bd..000000000 --- a/google/ads/googleads/v4/errors/country_code_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CountryCodeErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing country code errors. - -// Container for enum describing country code errors. -message CountryCodeErrorEnum { - // Enum describing country code errors. - enum CountryCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The country code is invalid. - INVALID_COUNTRY_CODE = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/criterion_error.proto b/google/ads/googleads/v4/errors/criterion_error.proto deleted file mode 100644 index 40cf4349b..000000000 --- a/google/ads/googleads/v4/errors/criterion_error.proto +++ /dev/null @@ -1,409 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CriterionErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing criterion errors. - -// Container for enum describing possible criterion errors. -message CriterionErrorEnum { - // Enum describing possible criterion errors. - enum CriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Concrete type of criterion is required for CREATE and UPDATE operations. - CONCRETE_TYPE_REQUIRED = 2; - - // The category requested for exclusion is invalid. - INVALID_EXCLUDED_CATEGORY = 3; - - // Invalid keyword criteria text. - INVALID_KEYWORD_TEXT = 4; - - // Keyword text should be less than 80 chars. - KEYWORD_TEXT_TOO_LONG = 5; - - // Keyword text has too many words. - KEYWORD_HAS_TOO_MANY_WORDS = 6; - - // Keyword text has invalid characters or symbols. - KEYWORD_HAS_INVALID_CHARS = 7; - - // Invalid placement URL. - INVALID_PLACEMENT_URL = 8; - - // Invalid user list criterion. - INVALID_USER_LIST = 9; - - // Invalid user interest criterion. - INVALID_USER_INTEREST = 10; - - // Placement URL has wrong format. - INVALID_FORMAT_FOR_PLACEMENT_URL = 11; - - // Placement URL is too long. - PLACEMENT_URL_IS_TOO_LONG = 12; - - // Indicates the URL contains an illegal character. - PLACEMENT_URL_HAS_ILLEGAL_CHAR = 13; - - // Indicates the URL contains multiple comma separated URLs. - PLACEMENT_URL_HAS_MULTIPLE_SITES_IN_LINE = 14; - - // Indicates the domain is blocked. - PLACEMENT_IS_NOT_AVAILABLE_FOR_TARGETING_OR_EXCLUSION = 15; - - // Invalid topic path. - INVALID_TOPIC_PATH = 16; - - // The YouTube Channel Id is invalid. - INVALID_YOUTUBE_CHANNEL_ID = 17; - - // The YouTube Video Id is invalid. - INVALID_YOUTUBE_VIDEO_ID = 18; - - // Indicates the placement is a YouTube vertical channel, which is no longer - // supported. - YOUTUBE_VERTICAL_CHANNEL_DEPRECATED = 19; - - // Indicates the placement is a YouTube demographic channel, which is no - // longer supported. - YOUTUBE_DEMOGRAPHIC_CHANNEL_DEPRECATED = 20; - - // YouTube urls are not supported in Placement criterion. Use YouTubeChannel - // and YouTubeVideo criterion instead. - YOUTUBE_URL_UNSUPPORTED = 21; - - // Criteria type can not be excluded by the customer, like AOL account type - // cannot target site type criteria. - CANNOT_EXCLUDE_CRITERIA_TYPE = 22; - - // Criteria type can not be targeted. - CANNOT_ADD_CRITERIA_TYPE = 23; - - // Not allowed to exclude similar user list. - CANNOT_EXCLUDE_SIMILAR_USER_LIST = 26; - - // Not allowed to target a closed user list. - CANNOT_ADD_CLOSED_USER_LIST = 27; - - // Not allowed to add display only UserLists to search only campaigns. - CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_ONLY_CAMPAIGNS = 28; - - // Not allowed to add display only UserLists to search plus campaigns. - CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_CAMPAIGNS = 29; - - // Not allowed to add display only UserLists to shopping campaigns. - CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SHOPPING_CAMPAIGNS = 30; - - // Not allowed to add User interests to search only campaigns. - CANNOT_ADD_USER_INTERESTS_TO_SEARCH_CAMPAIGNS = 31; - - // Not allowed to set bids for this criterion type in search campaigns - CANNOT_SET_BIDS_ON_CRITERION_TYPE_IN_SEARCH_CAMPAIGNS = 32; - - // Final URLs, URL Templates and CustomParameters cannot be set for the - // criterion types of Gender, AgeRange, UserList, Placement, MobileApp, and - // MobileAppCategory in search campaigns and shopping campaigns. - CANNOT_ADD_URLS_TO_CRITERION_TYPE_FOR_CAMPAIGN_TYPE = 33; - - // Invalid custom affinity criterion. - INVALID_CUSTOM_AFFINITY = 96; - - // Invalid custom intent criterion. - INVALID_CUSTOM_INTENT = 97; - - // IP address is not valid. - INVALID_IP_ADDRESS = 34; - - // IP format is not valid. - INVALID_IP_FORMAT = 35; - - // Mobile application is not valid. - INVALID_MOBILE_APP = 36; - - // Mobile application category is not valid. - INVALID_MOBILE_APP_CATEGORY = 37; - - // The CriterionId does not exist or is of the incorrect type. - INVALID_CRITERION_ID = 38; - - // The Criterion is not allowed to be targeted. - CANNOT_TARGET_CRITERION = 39; - - // The criterion is not allowed to be targeted as it is deprecated. - CANNOT_TARGET_OBSOLETE_CRITERION = 40; - - // The CriterionId is not valid for the type. - CRITERION_ID_AND_TYPE_MISMATCH = 41; - - // Distance for the radius for the proximity criterion is invalid. - INVALID_PROXIMITY_RADIUS = 42; - - // Units for the distance for the radius for the proximity criterion is - // invalid. - INVALID_PROXIMITY_RADIUS_UNITS = 43; - - // Street address in the address is not valid. - INVALID_STREETADDRESS_LENGTH = 44; - - // City name in the address is not valid. - INVALID_CITYNAME_LENGTH = 45; - - // Region code in the address is not valid. - INVALID_REGIONCODE_LENGTH = 46; - - // Region name in the address is not valid. - INVALID_REGIONNAME_LENGTH = 47; - - // Postal code in the address is not valid. - INVALID_POSTALCODE_LENGTH = 48; - - // Country code in the address is not valid. - INVALID_COUNTRY_CODE = 49; - - // Latitude for the GeoPoint is not valid. - INVALID_LATITUDE = 50; - - // Longitude for the GeoPoint is not valid. - INVALID_LONGITUDE = 51; - - // The Proximity input is not valid. Both address and geoPoint cannot be - // null. - PROXIMITY_GEOPOINT_AND_ADDRESS_BOTH_CANNOT_BE_NULL = 52; - - // The Proximity address cannot be geocoded to a valid lat/long. - INVALID_PROXIMITY_ADDRESS = 53; - - // User domain name is not valid. - INVALID_USER_DOMAIN_NAME = 54; - - // Length of serialized criterion parameter exceeded size limit. - CRITERION_PARAMETER_TOO_LONG = 55; - - // Time interval in the AdSchedule overlaps with another AdSchedule. - AD_SCHEDULE_TIME_INTERVALS_OVERLAP = 56; - - // AdSchedule time interval cannot span multiple days. - AD_SCHEDULE_INTERVAL_CANNOT_SPAN_MULTIPLE_DAYS = 57; - - // AdSchedule time interval specified is invalid, endTime cannot be earlier - // than startTime. - AD_SCHEDULE_INVALID_TIME_INTERVAL = 58; - - // The number of AdSchedule entries in a day exceeds the limit. - AD_SCHEDULE_EXCEEDED_INTERVALS_PER_DAY_LIMIT = 59; - - // CriteriaId does not match the interval of the AdSchedule specified. - AD_SCHEDULE_CRITERION_ID_MISMATCHING_FIELDS = 60; - - // Cannot set bid modifier for this criterion type. - CANNOT_BID_MODIFY_CRITERION_TYPE = 61; - - // Cannot bid modify criterion, since it is opted out of the campaign. - CANNOT_BID_MODIFY_CRITERION_CAMPAIGN_OPTED_OUT = 62; - - // Cannot set bid modifier for a negative criterion. - CANNOT_BID_MODIFY_NEGATIVE_CRITERION = 63; - - // Bid Modifier already exists. Use SET operation to update. - BID_MODIFIER_ALREADY_EXISTS = 64; - - // Feed Id is not allowed in these Location Groups. - FEED_ID_NOT_ALLOWED = 65; - - // The account may not use the requested criteria type. For example, some - // accounts are restricted to keywords only. - ACCOUNT_INELIGIBLE_FOR_CRITERIA_TYPE = 66; - - // The requested criteria type cannot be used with campaign or ad group - // bidding strategy. - CRITERIA_TYPE_INVALID_FOR_BIDDING_STRATEGY = 67; - - // The Criterion is not allowed to be excluded. - CANNOT_EXCLUDE_CRITERION = 68; - - // The criterion is not allowed to be removed. For example, we cannot remove - // any of the device criterion. - CANNOT_REMOVE_CRITERION = 69; - - // Bidding categories do not form a valid path in the Shopping bidding - // category taxonomy. - INVALID_PRODUCT_BIDDING_CATEGORY = 76; - - // ShoppingSetting must be added to the campaign before ProductScope - // criteria can be added. - MISSING_SHOPPING_SETTING = 77; - - // Matching function is invalid. - INVALID_MATCHING_FUNCTION = 78; - - // Filter parameters not allowed for location groups targeting. - LOCATION_FILTER_NOT_ALLOWED = 79; - - // Feed not found, or the feed is not an enabled location feed. - INVALID_FEED_FOR_LOCATION_FILTER = 98; - - // Given location filter parameter is invalid for location groups targeting. - LOCATION_FILTER_INVALID = 80; - - // Criteria type cannot be associated with a campaign and its ad group(s) - // simultaneously. - CANNOT_ATTACH_CRITERIA_AT_CAMPAIGN_AND_ADGROUP = 81; - - // Range represented by hotel length of stay's min nights and max nights - // overlaps with an existing criterion. - HOTEL_LENGTH_OF_STAY_OVERLAPS_WITH_EXISTING_CRITERION = 82; - - // Range represented by hotel advance booking window's min days and max days - // overlaps with an existing criterion. - HOTEL_ADVANCE_BOOKING_WINDOW_OVERLAPS_WITH_EXISTING_CRITERION = 83; - - // The field is not allowed to be set when the negative field is set to - // true, e.g. we don't allow bids in negative ad group or campaign criteria. - FIELD_INCOMPATIBLE_WITH_NEGATIVE_TARGETING = 84; - - // The combination of operand and operator in webpage condition is invalid. - INVALID_WEBPAGE_CONDITION = 85; - - // The URL of webpage condition is invalid. - INVALID_WEBPAGE_CONDITION_URL = 86; - - // The URL of webpage condition cannot be empty or contain white space. - WEBPAGE_CONDITION_URL_CANNOT_BE_EMPTY = 87; - - // The URL of webpage condition contains an unsupported protocol. - WEBPAGE_CONDITION_URL_UNSUPPORTED_PROTOCOL = 88; - - // The URL of webpage condition cannot be an IP address. - WEBPAGE_CONDITION_URL_CANNOT_BE_IP_ADDRESS = 89; - - // The domain of the URL is not consistent with the domain in campaign - // setting. - WEBPAGE_CONDITION_URL_DOMAIN_NOT_CONSISTENT_WITH_CAMPAIGN_SETTING = 90; - - // The URL of webpage condition cannot be a public suffix itself. - WEBPAGE_CONDITION_URL_CANNOT_BE_PUBLIC_SUFFIX = 91; - - // The URL of webpage condition has an invalid public suffix. - WEBPAGE_CONDITION_URL_INVALID_PUBLIC_SUFFIX = 92; - - // Value track parameter is not supported in webpage condition URL. - WEBPAGE_CONDITION_URL_VALUE_TRACK_VALUE_NOT_SUPPORTED = 93; - - // Only one URL-EQUALS webpage condition is allowed in a webpage - // criterion and it cannot be combined with other conditions. - WEBPAGE_CRITERION_URL_EQUALS_CAN_HAVE_ONLY_ONE_CONDITION = 94; - - // A webpage criterion cannot be added to a non-DSA ad group. - WEBPAGE_CRITERION_NOT_SUPPORTED_ON_NON_DSA_AD_GROUP = 95; - - // Cannot add positive user list criteria in Smart Display campaigns. - CANNOT_TARGET_USER_LIST_FOR_SMART_DISPLAY_CAMPAIGNS = 99; - - // Listing scope contains too many dimension types. - LISTING_SCOPE_TOO_MANY_DIMENSION_TYPES = 100; - - // Listing scope has too many IN operators. - LISTING_SCOPE_TOO_MANY_IN_OPERATORS = 101; - - // Listing scope contains IN operator on an unsupported dimension type. - LISTING_SCOPE_IN_OPERATOR_NOT_SUPPORTED = 102; - - // There are dimensions with duplicate dimension type. - DUPLICATE_LISTING_DIMENSION_TYPE = 103; - - // There are dimensions with duplicate dimension value. - DUPLICATE_LISTING_DIMENSION_VALUE = 104; - - // Listing group SUBDIVISION nodes cannot have bids. - CANNOT_SET_BIDS_ON_LISTING_GROUP_SUBDIVISION = 105; - - // Ad group is invalid due to the listing groups it contains. - INVALID_LISTING_GROUP_HIERARCHY = 106; - - // Listing group unit cannot have children. - LISTING_GROUP_UNIT_CANNOT_HAVE_CHILDREN = 107; - - // Subdivided listing groups must have an "others" case. - LISTING_GROUP_SUBDIVISION_REQUIRES_OTHERS_CASE = 108; - - // Dimension type of listing group must be the same as that of its siblings. - LISTING_GROUP_REQUIRES_SAME_DIMENSION_TYPE_AS_SIBLINGS = 109; - - // Listing group cannot be added to the ad group because it already exists. - LISTING_GROUP_ALREADY_EXISTS = 110; - - // Listing group referenced in the operation was not found in the ad group. - LISTING_GROUP_DOES_NOT_EXIST = 111; - - // Recursive removal failed because listing group subdivision is being - // created or modified in this request. - LISTING_GROUP_CANNOT_BE_REMOVED = 112; - - // Listing group type is not allowed for specified ad group criterion type. - INVALID_LISTING_GROUP_TYPE = 113; - - // Listing group in an ADD operation specifies a non temporary criterion id. - LISTING_GROUP_ADD_MAY_ONLY_USE_TEMP_ID = 114; - - // The combined length of dimension values of the Listing scope criterion - // is too long. - LISTING_SCOPE_TOO_LONG = 115; - - // Listing scope contains too many dimensions. - LISTING_SCOPE_TOO_MANY_DIMENSIONS = 116; - - // The combined length of dimension values of the Listing group criterion is - // too long. - LISTING_GROUP_TOO_LONG = 117; - - // Listing group tree is too deep. - LISTING_GROUP_TREE_TOO_DEEP = 118; - - // Listing dimension is invalid (e.g. dimension contains illegal value, - // dimension type is represented with wrong class, etc). Listing dimension - // value can not contain "==" or "&+". - INVALID_LISTING_DIMENSION = 119; - - // Listing dimension type is either invalid for campaigns of this type or - // cannot be used in the current context. BIDDING_CATEGORY_Lx and - // PRODUCT_TYPE_Lx dimensions must be used in ascending order of their - // levels: L1, L2, L3, L4, L5... The levels must be specified sequentially - // and start from L1. Furthermore, an "others" Listing group cannot be - // subdivided with a dimension of the same type but of a higher level - // ("others" BIDDING_CATEGORY_L3 can be subdivided with BRAND but not with - // BIDDING_CATEGORY_L4). - INVALID_LISTING_DIMENSION_TYPE = 120; - } - - -} diff --git a/google/ads/googleads/v4/errors/currency_code_error.proto b/google/ads/googleads/v4/errors/currency_code_error.proto deleted file mode 100644 index 9e427ea7b..000000000 --- a/google/ads/googleads/v4/errors/currency_code_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CurrencyCodeErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing currency code errors. - -// Container for enum describing possible currency code errors. -message CurrencyCodeErrorEnum { - // Enum describing possible currency code errors. - enum CurrencyCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The currency code is not supported. - UNSUPPORTED = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/custom_interest_error.proto b/google/ads/googleads/v4/errors/custom_interest_error.proto deleted file mode 100644 index f2e8b7fad..000000000 --- a/google/ads/googleads/v4/errors/custom_interest_error.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing custom interest errors. - -// Container for enum describing possible custom interest errors. -message CustomInterestErrorEnum { - // Enum describing possible custom interest errors. - enum CustomInterestError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Duplicate custom interest name ignoring case. - NAME_ALREADY_USED = 2; - - // In the remove custom interest member operation, both member ID and - // pair [type, parameter] are not present. - CUSTOM_INTEREST_MEMBER_ID_AND_TYPE_PARAMETER_NOT_PRESENT_IN_REMOVE = 3; - - // The pair of [type, parameter] does not exist. - TYPE_AND_PARAMETER_NOT_FOUND = 4; - - // The pair of [type, parameter] already exists. - TYPE_AND_PARAMETER_ALREADY_EXISTED = 5; - - // Unsupported custom interest member type. - INVALID_CUSTOM_INTEREST_MEMBER_TYPE = 6; - - // Cannot remove a custom interest while it's still being targeted. - CANNOT_REMOVE_WHILE_IN_USE = 7; - - // Cannot mutate custom interest type. - CANNOT_CHANGE_TYPE = 8; - } - - -} diff --git a/google/ads/googleads/v4/errors/customer_client_link_error.proto b/google/ads/googleads/v4/errors/customer_client_link_error.proto deleted file mode 100644 index 86d0256f8..000000000 --- a/google/ads/googleads/v4/errors/customer_client_link_error.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientLinkErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing CustomerClientLink errors. - -// Container for enum describing possible CustomeClientLink errors. -message CustomerClientLinkErrorEnum { - // Enum describing possible CustomerClientLink errors. - enum CustomerClientLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Trying to manage a client that already in being managed by customer. - CLIENT_ALREADY_INVITED_BY_THIS_MANAGER = 2; - - // Already managed by some other manager in the hierarchy. - CLIENT_ALREADY_MANAGED_IN_HIERARCHY = 3; - - // Attempt to create a cycle in the hierarchy. - CYCLIC_LINK_NOT_ALLOWED = 4; - - // Managed accounts has the maximum number of linked accounts. - CUSTOMER_HAS_TOO_MANY_ACCOUNTS = 5; - - // Invitor has the maximum pending invitations. - CLIENT_HAS_TOO_MANY_INVITATIONS = 6; - - // Attempt to change hidden status of a link that is not active. - CANNOT_HIDE_OR_UNHIDE_MANAGER_ACCOUNTS = 7; - - // Parent manager account has the maximum number of linked accounts. - CUSTOMER_HAS_TOO_MANY_ACCOUNTS_AT_MANAGER = 8; - - // Client has too many managers. - CLIENT_HAS_TOO_MANY_MANAGERS = 9; - } - - -} diff --git a/google/ads/googleads/v4/errors/customer_error.proto b/google/ads/googleads/v4/errors/customer_error.proto deleted file mode 100644 index 65f26e637..000000000 --- a/google/ads/googleads/v4/errors/customer_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Container for enum describing possible customer errors. -message CustomerErrorEnum { - // Set of errors that are related to requests dealing with Customer. - enum CustomerError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Customer status is not allowed to be changed from DRAFT and CLOSED. - // Currency code and at least one of country code and time zone needs to be - // set when status is changed to ENABLED. - STATUS_CHANGE_DISALLOWED = 2; - - // CustomerService cannot get a customer that has not been fully set up. - ACCOUNT_NOT_SET_UP = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/customer_feed_error.proto b/google/ads/googleads/v4/errors/customer_feed_error.proto deleted file mode 100644 index 57081a51d..000000000 --- a/google/ads/googleads/v4/errors/customer_feed_error.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerFeedErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing customer feed errors. - -// Container for enum describing possible customer feed errors. -message CustomerFeedErrorEnum { - // Enum describing possible customer feed errors. - enum CustomerFeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active feed already exists for this customer and place holder type. - FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; - - // The specified feed is removed. - CANNOT_CREATE_FOR_REMOVED_FEED = 3; - - // The CustomerFeed already exists. Update should be used to modify the - // existing CustomerFeed. - CANNOT_CREATE_ALREADY_EXISTING_CUSTOMER_FEED = 4; - - // Cannot update removed customer feed. - CANNOT_MODIFY_REMOVED_CUSTOMER_FEED = 5; - - // Invalid placeholder type. - INVALID_PLACEHOLDER_TYPE = 6; - - // Feed mapping for this placeholder type does not exist. - MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7; - - // Placeholder not allowed at the account level. - PLACEHOLDER_TYPE_NOT_ALLOWED_ON_CUSTOMER_FEED = 8; - } - - -} diff --git a/google/ads/googleads/v4/errors/customer_manager_link_error.proto b/google/ads/googleads/v4/errors/customer_manager_link_error.proto deleted file mode 100644 index ace964e7b..000000000 --- a/google/ads/googleads/v4/errors/customer_manager_link_error.proto +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerManagerLinkErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing CustomerManagerLink errors. - -// Container for enum describing possible CustomerManagerLink errors. -message CustomerManagerLinkErrorEnum { - // Enum describing possible CustomerManagerLink errors. - enum CustomerManagerLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // No pending invitation. - NO_PENDING_INVITE = 2; - - // Attempt to operate on the same client more than once in the same call. - SAME_CLIENT_MORE_THAN_ONCE_PER_CALL = 3; - - // Manager account has the maximum number of linked accounts. - MANAGER_HAS_MAX_NUMBER_OF_LINKED_ACCOUNTS = 4; - - // If no active user on account it cannot be unlinked from its manager. - CANNOT_UNLINK_ACCOUNT_WITHOUT_ACTIVE_USER = 5; - - // Account should have at least one active owner on it before being - // unlinked. - CANNOT_REMOVE_LAST_CLIENT_ACCOUNT_OWNER = 6; - - // Only account owners may change their permission role. - CANNOT_CHANGE_ROLE_BY_NON_ACCOUNT_OWNER = 7; - - // When a client's link to its manager is not active, the link role cannot - // be changed. - CANNOT_CHANGE_ROLE_FOR_NON_ACTIVE_LINK_ACCOUNT = 8; - - // Attempt to link a child to a parent that contains or will contain - // duplicate children. - DUPLICATE_CHILD_FOUND = 9; - - // The authorized customer is a test account. It can add no more than the - // allowed number of accounts - TEST_ACCOUNT_LINKS_TOO_MANY_CHILD_ACCOUNTS = 10; - } - - -} diff --git a/google/ads/googleads/v4/errors/database_error.proto b/google/ads/googleads/v4/errors/database_error.proto deleted file mode 100644 index 387593043..000000000 --- a/google/ads/googleads/v4/errors/database_error.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DatabaseErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing database errors. - -// Container for enum describing possible database errors. -message DatabaseErrorEnum { - // Enum describing possible database errors. - enum DatabaseError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Multiple requests were attempting to modify the same resource at once. - // Please retry the request. - CONCURRENT_MODIFICATION = 2; - - // The request conflicted with existing data. This error will usually be - // replaced with a more specific error if the request is retried. - DATA_CONSTRAINT_VIOLATION = 3; - - // The data written is too large. Please split the request into smaller - // requests. - REQUEST_TOO_LARGE = 4; - } - - -} diff --git a/google/ads/googleads/v4/errors/date_error.proto b/google/ads/googleads/v4/errors/date_error.proto deleted file mode 100644 index edc715afc..000000000 --- a/google/ads/googleads/v4/errors/date_error.proto +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DateErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing date errors. - -// Container for enum describing possible date errors. -message DateErrorEnum { - // Enum describing possible date errors. - enum DateError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Given field values do not correspond to a valid date. - INVALID_FIELD_VALUES_IN_DATE = 2; - - // Given field values do not correspond to a valid date time. - INVALID_FIELD_VALUES_IN_DATE_TIME = 3; - - // The string date's format should be yyyy-mm-dd. - INVALID_STRING_DATE = 4; - - // The string date time's format should be yyyy-mm-dd hh:mm:ss.ssssss. - INVALID_STRING_DATE_TIME_MICROS = 6; - - // The string date time's format should be yyyy-mm-dd hh:mm:ss. - INVALID_STRING_DATE_TIME_SECONDS = 11; - - // The string date time's format should be yyyy-mm-dd hh:mm:ss+|-hh:mm. - INVALID_STRING_DATE_TIME_SECONDS_WITH_OFFSET = 12; - - // Date is before allowed minimum. - EARLIER_THAN_MINIMUM_DATE = 7; - - // Date is after allowed maximum. - LATER_THAN_MAXIMUM_DATE = 8; - - // Date range bounds are not in order. - DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE = 9; - - // Both dates in range are null. - DATE_RANGE_MINIMUM_AND_MAXIMUM_DATES_BOTH_NULL = 10; - } - - -} diff --git a/google/ads/googleads/v4/errors/date_range_error.proto b/google/ads/googleads/v4/errors/date_range_error.proto deleted file mode 100644 index fc73ec06e..000000000 --- a/google/ads/googleads/v4/errors/date_range_error.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DateRangeErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing date range errors. - -// Container for enum describing possible date range errors. -message DateRangeErrorEnum { - // Enum describing possible date range errors. - enum DateRangeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Invalid date. - INVALID_DATE = 2; - - // The start date was after the end date. - START_DATE_AFTER_END_DATE = 3; - - // Cannot set date to past time - CANNOT_SET_DATE_TO_PAST = 4; - - // A date was used that is past the system "last" date. - AFTER_MAXIMUM_ALLOWABLE_DATE = 5; - - // Trying to change start date on a resource that has started. - CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED = 6; - } - - -} diff --git a/google/ads/googleads/v4/errors/distinct_error.proto b/google/ads/googleads/v4/errors/distinct_error.proto deleted file mode 100644 index e76375cdd..000000000 --- a/google/ads/googleads/v4/errors/distinct_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DistinctErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing distinct errors. - -// Container for enum describing possible distinct errors. -message DistinctErrorEnum { - // Enum describing possible distinct errors. - enum DistinctError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Duplicate element. - DUPLICATE_ELEMENT = 2; - - // Duplicate type. - DUPLICATE_TYPE = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/enum_error.proto b/google/ads/googleads/v4/errors/enum_error.proto deleted file mode 100644 index 427c11617..000000000 --- a/google/ads/googleads/v4/errors/enum_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "EnumErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing enum errors. - -// Container for enum describing possible enum errors. -message EnumErrorEnum { - // Enum describing possible enum errors. - enum EnumError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The enum value is not permitted. - ENUM_VALUE_NOT_PERMITTED = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/errors.proto b/google/ads/googleads/v4/errors/errors.proto deleted file mode 100644 index cfe644274..000000000 --- a/google/ads/googleads/v4/errors/errors.proto +++ /dev/null @@ -1,565 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/ads/googleads/v4/common/policy.proto"; -import "google/ads/googleads/v4/common/value.proto"; -import "google/ads/googleads/v4/errors/access_invitation_error.proto"; -import "google/ads/googleads/v4/errors/account_budget_proposal_error.proto"; -import "google/ads/googleads/v4/errors/ad_customizer_error.proto"; -import "google/ads/googleads/v4/errors/ad_error.proto"; -import "google/ads/googleads/v4/errors/ad_group_ad_error.proto"; -import "google/ads/googleads/v4/errors/ad_group_bid_modifier_error.proto"; -import "google/ads/googleads/v4/errors/ad_group_criterion_error.proto"; -import "google/ads/googleads/v4/errors/ad_group_error.proto"; -import "google/ads/googleads/v4/errors/ad_group_feed_error.proto"; -import "google/ads/googleads/v4/errors/ad_parameter_error.proto"; -import "google/ads/googleads/v4/errors/ad_sharing_error.proto"; -import "google/ads/googleads/v4/errors/adx_error.proto"; -import "google/ads/googleads/v4/errors/asset_error.proto"; -import "google/ads/googleads/v4/errors/asset_link_error.proto"; -import "google/ads/googleads/v4/errors/authentication_error.proto"; -import "google/ads/googleads/v4/errors/authorization_error.proto"; -import "google/ads/googleads/v4/errors/batch_job_error.proto"; -import "google/ads/googleads/v4/errors/bidding_error.proto"; -import "google/ads/googleads/v4/errors/bidding_strategy_error.proto"; -import "google/ads/googleads/v4/errors/billing_setup_error.proto"; -import "google/ads/googleads/v4/errors/campaign_budget_error.proto"; -import "google/ads/googleads/v4/errors/campaign_criterion_error.proto"; -import "google/ads/googleads/v4/errors/campaign_draft_error.proto"; -import "google/ads/googleads/v4/errors/campaign_error.proto"; -import "google/ads/googleads/v4/errors/campaign_experiment_error.proto"; -import "google/ads/googleads/v4/errors/campaign_feed_error.proto"; -import "google/ads/googleads/v4/errors/campaign_shared_set_error.proto"; -import "google/ads/googleads/v4/errors/change_status_error.proto"; -import "google/ads/googleads/v4/errors/collection_size_error.proto"; -import "google/ads/googleads/v4/errors/context_error.proto"; -import "google/ads/googleads/v4/errors/conversion_action_error.proto"; -import "google/ads/googleads/v4/errors/conversion_adjustment_upload_error.proto"; -import "google/ads/googleads/v4/errors/conversion_upload_error.proto"; -import "google/ads/googleads/v4/errors/country_code_error.proto"; -import "google/ads/googleads/v4/errors/criterion_error.proto"; -import "google/ads/googleads/v4/errors/currency_code_error.proto"; -import "google/ads/googleads/v4/errors/custom_interest_error.proto"; -import "google/ads/googleads/v4/errors/customer_client_link_error.proto"; -import "google/ads/googleads/v4/errors/customer_error.proto"; -import "google/ads/googleads/v4/errors/customer_feed_error.proto"; -import "google/ads/googleads/v4/errors/customer_manager_link_error.proto"; -import "google/ads/googleads/v4/errors/database_error.proto"; -import "google/ads/googleads/v4/errors/date_error.proto"; -import "google/ads/googleads/v4/errors/date_range_error.proto"; -import "google/ads/googleads/v4/errors/distinct_error.proto"; -import "google/ads/googleads/v4/errors/enum_error.proto"; -import "google/ads/googleads/v4/errors/extension_feed_item_error.proto"; -import "google/ads/googleads/v4/errors/extension_setting_error.proto"; -import "google/ads/googleads/v4/errors/feed_attribute_reference_error.proto"; -import "google/ads/googleads/v4/errors/feed_error.proto"; -import "google/ads/googleads/v4/errors/feed_item_error.proto"; -import "google/ads/googleads/v4/errors/feed_item_target_error.proto"; -import "google/ads/googleads/v4/errors/feed_item_validation_error.proto"; -import "google/ads/googleads/v4/errors/feed_mapping_error.proto"; -import "google/ads/googleads/v4/errors/field_error.proto"; -import "google/ads/googleads/v4/errors/field_mask_error.proto"; -import "google/ads/googleads/v4/errors/function_error.proto"; -import "google/ads/googleads/v4/errors/function_parsing_error.proto"; -import "google/ads/googleads/v4/errors/geo_target_constant_suggestion_error.proto"; -import "google/ads/googleads/v4/errors/header_error.proto"; -import "google/ads/googleads/v4/errors/id_error.proto"; -import "google/ads/googleads/v4/errors/image_error.proto"; -import "google/ads/googleads/v4/errors/internal_error.proto"; -import "google/ads/googleads/v4/errors/invoice_error.proto"; -import "google/ads/googleads/v4/errors/keyword_plan_ad_group_error.proto"; -import "google/ads/googleads/v4/errors/keyword_plan_ad_group_keyword_error.proto"; -import "google/ads/googleads/v4/errors/keyword_plan_campaign_error.proto"; -import "google/ads/googleads/v4/errors/keyword_plan_campaign_keyword_error.proto"; -import "google/ads/googleads/v4/errors/keyword_plan_error.proto"; -import "google/ads/googleads/v4/errors/keyword_plan_idea_error.proto"; -import "google/ads/googleads/v4/errors/label_error.proto"; -import "google/ads/googleads/v4/errors/language_code_error.proto"; -import "google/ads/googleads/v4/errors/list_operation_error.proto"; -import "google/ads/googleads/v4/errors/manager_link_error.proto"; -import "google/ads/googleads/v4/errors/media_bundle_error.proto"; -import "google/ads/googleads/v4/errors/media_file_error.proto"; -import "google/ads/googleads/v4/errors/media_upload_error.proto"; -import "google/ads/googleads/v4/errors/multiplier_error.proto"; -import "google/ads/googleads/v4/errors/mutate_error.proto"; -import "google/ads/googleads/v4/errors/new_resource_creation_error.proto"; -import "google/ads/googleads/v4/errors/not_empty_error.proto"; -import "google/ads/googleads/v4/errors/not_whitelisted_error.proto"; -import "google/ads/googleads/v4/errors/null_error.proto"; -import "google/ads/googleads/v4/errors/offline_user_data_job_error.proto"; -import "google/ads/googleads/v4/errors/operation_access_denied_error.proto"; -import "google/ads/googleads/v4/errors/operator_error.proto"; -import "google/ads/googleads/v4/errors/partial_failure_error.proto"; -import "google/ads/googleads/v4/errors/payments_account_error.proto"; -import "google/ads/googleads/v4/errors/policy_finding_error.proto"; -import "google/ads/googleads/v4/errors/policy_validation_parameter_error.proto"; -import "google/ads/googleads/v4/errors/policy_violation_error.proto"; -import "google/ads/googleads/v4/errors/query_error.proto"; -import "google/ads/googleads/v4/errors/quota_error.proto"; -import "google/ads/googleads/v4/errors/range_error.proto"; -import "google/ads/googleads/v4/errors/reach_plan_error.proto"; -import "google/ads/googleads/v4/errors/recommendation_error.proto"; -import "google/ads/googleads/v4/errors/region_code_error.proto"; -import "google/ads/googleads/v4/errors/request_error.proto"; -import "google/ads/googleads/v4/errors/resource_access_denied_error.proto"; -import "google/ads/googleads/v4/errors/resource_count_limit_exceeded_error.proto"; -import "google/ads/googleads/v4/errors/setting_error.proto"; -import "google/ads/googleads/v4/errors/shared_criterion_error.proto"; -import "google/ads/googleads/v4/errors/shared_set_error.proto"; -import "google/ads/googleads/v4/errors/size_limit_error.proto"; -import "google/ads/googleads/v4/errors/string_format_error.proto"; -import "google/ads/googleads/v4/errors/string_length_error.proto"; -import "google/ads/googleads/v4/errors/time_zone_error.proto"; -import "google/ads/googleads/v4/errors/url_field_error.proto"; -import "google/ads/googleads/v4/errors/user_data_error.proto"; -import "google/ads/googleads/v4/errors/user_list_error.proto"; -import "google/ads/googleads/v4/errors/youtube_video_registration_error.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ErrorsProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing the common error protos - -// Describes how a GoogleAds API call failed. It's returned inside -// google.rpc.Status.details when a call fails. -message GoogleAdsFailure { - // The list of errors that occurred. - repeated GoogleAdsError errors = 1; -} - -// GoogleAds-specific error. -message GoogleAdsError { - // An enum value that indicates which error occurred. - ErrorCode error_code = 1; - - // A human-readable description of the error. - string message = 2; - - // The value that triggered the error. - google.ads.googleads.v4.common.Value trigger = 3; - - // Describes the part of the request proto that caused the error. - ErrorLocation location = 4; - - // Additional error details, which are returned by certain error codes. Most - // error codes do not include details. - ErrorDetails details = 5; -} - -// The error reason represented by type and enum. -message ErrorCode { - // The list of error enums - oneof error_code { - // An error caused by the request - RequestErrorEnum.RequestError request_error = 1; - - // An error with a Bidding Strategy mutate. - BiddingStrategyErrorEnum.BiddingStrategyError bidding_strategy_error = 2; - - // An error with a URL field mutate. - UrlFieldErrorEnum.UrlFieldError url_field_error = 3; - - // An error with a list operation. - ListOperationErrorEnum.ListOperationError list_operation_error = 4; - - // An error with an AWQL query - QueryErrorEnum.QueryError query_error = 5; - - // An error with a mutate - MutateErrorEnum.MutateError mutate_error = 7; - - // An error with a field mask - FieldMaskErrorEnum.FieldMaskError field_mask_error = 8; - - // An error encountered when trying to authorize a user. - AuthorizationErrorEnum.AuthorizationError authorization_error = 9; - - // An unexpected server-side error. - InternalErrorEnum.InternalError internal_error = 10; - - // An error with the amonut of quota remaining. - QuotaErrorEnum.QuotaError quota_error = 11; - - // An error with an Ad Group Ad mutate. - AdErrorEnum.AdError ad_error = 12; - - // An error with an Ad Group mutate. - AdGroupErrorEnum.AdGroupError ad_group_error = 13; - - // An error with a Campaign Budget mutate. - CampaignBudgetErrorEnum.CampaignBudgetError campaign_budget_error = 14; - - // An error with a Campaign mutate. - CampaignErrorEnum.CampaignError campaign_error = 15; - - // Indicates failure to properly authenticate user. - AuthenticationErrorEnum.AuthenticationError authentication_error = 17; - - // Indicates failure to properly authenticate user. - AdGroupCriterionErrorEnum.AdGroupCriterionError ad_group_criterion_error = 18; - - // The reasons for the ad customizer error - AdCustomizerErrorEnum.AdCustomizerError ad_customizer_error = 19; - - // The reasons for the ad group ad error - AdGroupAdErrorEnum.AdGroupAdError ad_group_ad_error = 21; - - // The reasons for the ad sharing error - AdSharingErrorEnum.AdSharingError ad_sharing_error = 24; - - // The reasons for the adx error - AdxErrorEnum.AdxError adx_error = 25; - - // The reasons for the asset error - AssetErrorEnum.AssetError asset_error = 107; - - // The reasons for the bidding errors - BiddingErrorEnum.BiddingError bidding_error = 26; - - // The reasons for the campaign criterion error - CampaignCriterionErrorEnum.CampaignCriterionError campaign_criterion_error = 29; - - // The reasons for the collection size error - CollectionSizeErrorEnum.CollectionSizeError collection_size_error = 31; - - // The reasons for the country code error - CountryCodeErrorEnum.CountryCodeError country_code_error = 109; - - // The reasons for the criterion error - CriterionErrorEnum.CriterionError criterion_error = 32; - - // The reasons for the customer error - CustomerErrorEnum.CustomerError customer_error = 90; - - // The reasons for the date error - DateErrorEnum.DateError date_error = 33; - - // The reasons for the date range error - DateRangeErrorEnum.DateRangeError date_range_error = 34; - - // The reasons for the distinct error - DistinctErrorEnum.DistinctError distinct_error = 35; - - // The reasons for the feed attribute reference error - FeedAttributeReferenceErrorEnum.FeedAttributeReferenceError feed_attribute_reference_error = 36; - - // The reasons for the function error - FunctionErrorEnum.FunctionError function_error = 37; - - // The reasons for the function parsing error - FunctionParsingErrorEnum.FunctionParsingError function_parsing_error = 38; - - // The reasons for the id error - IdErrorEnum.IdError id_error = 39; - - // The reasons for the image error - ImageErrorEnum.ImageError image_error = 40; - - // The reasons for the language code error - LanguageCodeErrorEnum.LanguageCodeError language_code_error = 110; - - // The reasons for the media bundle error - MediaBundleErrorEnum.MediaBundleError media_bundle_error = 42; - - // The reasons for media uploading errors. - MediaUploadErrorEnum.MediaUploadError media_upload_error = 116; - - // The reasons for the media file error - MediaFileErrorEnum.MediaFileError media_file_error = 86; - - // The reasons for the multiplier error - MultiplierErrorEnum.MultiplierError multiplier_error = 44; - - // The reasons for the new resource creation error - NewResourceCreationErrorEnum.NewResourceCreationError new_resource_creation_error = 45; - - // The reasons for the not empty error - NotEmptyErrorEnum.NotEmptyError not_empty_error = 46; - - // The reasons for the null error - NullErrorEnum.NullError null_error = 47; - - // The reasons for the operator error - OperatorErrorEnum.OperatorError operator_error = 48; - - // The reasons for the range error - RangeErrorEnum.RangeError range_error = 49; - - // The reasons for error in applying a recommendation - RecommendationErrorEnum.RecommendationError recommendation_error = 58; - - // The reasons for the region code error - RegionCodeErrorEnum.RegionCodeError region_code_error = 51; - - // The reasons for the setting error - SettingErrorEnum.SettingError setting_error = 52; - - // The reasons for the string format error - StringFormatErrorEnum.StringFormatError string_format_error = 53; - - // The reasons for the string length error - StringLengthErrorEnum.StringLengthError string_length_error = 54; - - // The reasons for the operation access denied error - OperationAccessDeniedErrorEnum.OperationAccessDeniedError operation_access_denied_error = 55; - - // The reasons for the resource access denied error - ResourceAccessDeniedErrorEnum.ResourceAccessDeniedError resource_access_denied_error = 56; - - // The reasons for the resource count limit exceeded error - ResourceCountLimitExceededErrorEnum.ResourceCountLimitExceededError resource_count_limit_exceeded_error = 57; - - // The reasons for YouTube video registration errors. - YoutubeVideoRegistrationErrorEnum.YoutubeVideoRegistrationError youtube_video_registration_error = 117; - - // The reasons for the ad group bid modifier error - AdGroupBidModifierErrorEnum.AdGroupBidModifierError ad_group_bid_modifier_error = 59; - - // The reasons for the context error - ContextErrorEnum.ContextError context_error = 60; - - // The reasons for the field error - FieldErrorEnum.FieldError field_error = 61; - - // The reasons for the shared set error - SharedSetErrorEnum.SharedSetError shared_set_error = 62; - - // The reasons for the shared criterion error - SharedCriterionErrorEnum.SharedCriterionError shared_criterion_error = 63; - - // The reasons for the campaign shared set error - CampaignSharedSetErrorEnum.CampaignSharedSetError campaign_shared_set_error = 64; - - // The reasons for the conversion action error - ConversionActionErrorEnum.ConversionActionError conversion_action_error = 65; - - // The reasons for the conversion adjustment upload error - ConversionAdjustmentUploadErrorEnum.ConversionAdjustmentUploadError conversion_adjustment_upload_error = 115; - - // The reasons for the conversion upload error - ConversionUploadErrorEnum.ConversionUploadError conversion_upload_error = 111; - - // The reasons for the header error. - HeaderErrorEnum.HeaderError header_error = 66; - - // The reasons for the database error. - DatabaseErrorEnum.DatabaseError database_error = 67; - - // The reasons for the policy finding error. - PolicyFindingErrorEnum.PolicyFindingError policy_finding_error = 68; - - // The reason for enum error. - EnumErrorEnum.EnumError enum_error = 70; - - // The reason for keyword plan error. - KeywordPlanErrorEnum.KeywordPlanError keyword_plan_error = 71; - - // The reason for keyword plan campaign error. - KeywordPlanCampaignErrorEnum.KeywordPlanCampaignError keyword_plan_campaign_error = 72; - - // The reason for keyword plan campaign keyword error. - KeywordPlanCampaignKeywordErrorEnum.KeywordPlanCampaignKeywordError keyword_plan_campaign_keyword_error = 132; - - // The reason for keyword plan ad group error. - KeywordPlanAdGroupErrorEnum.KeywordPlanAdGroupError keyword_plan_ad_group_error = 74; - - // The reason for keyword plan ad group keyword error. - KeywordPlanAdGroupKeywordErrorEnum.KeywordPlanAdGroupKeywordError keyword_plan_ad_group_keyword_error = 133; - - // The reason for keyword idea error. - KeywordPlanIdeaErrorEnum.KeywordPlanIdeaError keyword_plan_idea_error = 76; - - // The reasons for account budget proposal errors. - AccountBudgetProposalErrorEnum.AccountBudgetProposalError account_budget_proposal_error = 77; - - // The reasons for the user list error - UserListErrorEnum.UserListError user_list_error = 78; - - // The reasons for the change status error - ChangeStatusErrorEnum.ChangeStatusError change_status_error = 79; - - // The reasons for the feed error - FeedErrorEnum.FeedError feed_error = 80; - - // The reasons for the geo target constant suggestion error. - GeoTargetConstantSuggestionErrorEnum.GeoTargetConstantSuggestionError geo_target_constant_suggestion_error = 81; - - // The reasons for the campaign draft error - CampaignDraftErrorEnum.CampaignDraftError campaign_draft_error = 82; - - // The reasons for the feed item error - FeedItemErrorEnum.FeedItemError feed_item_error = 83; - - // The reason for the label error. - LabelErrorEnum.LabelError label_error = 84; - - // The reasons for the billing setup error - BillingSetupErrorEnum.BillingSetupError billing_setup_error = 87; - - // The reasons for the customer client link error - CustomerClientLinkErrorEnum.CustomerClientLinkError customer_client_link_error = 88; - - // The reasons for the customer manager link error - CustomerManagerLinkErrorEnum.CustomerManagerLinkError customer_manager_link_error = 91; - - // The reasons for the feed mapping error - FeedMappingErrorEnum.FeedMappingError feed_mapping_error = 92; - - // The reasons for the customer feed error - CustomerFeedErrorEnum.CustomerFeedError customer_feed_error = 93; - - // The reasons for the ad group feed error - AdGroupFeedErrorEnum.AdGroupFeedError ad_group_feed_error = 94; - - // The reasons for the campaign feed error - CampaignFeedErrorEnum.CampaignFeedError campaign_feed_error = 96; - - // The reasons for the custom interest error - CustomInterestErrorEnum.CustomInterestError custom_interest_error = 97; - - // The reasons for the campaign experiment error - CampaignExperimentErrorEnum.CampaignExperimentError campaign_experiment_error = 98; - - // The reasons for the extension feed item error - ExtensionFeedItemErrorEnum.ExtensionFeedItemError extension_feed_item_error = 100; - - // The reasons for the ad parameter error - AdParameterErrorEnum.AdParameterError ad_parameter_error = 101; - - // The reasons for the feed item validation error - FeedItemValidationErrorEnum.FeedItemValidationError feed_item_validation_error = 102; - - // The reasons for the extension setting error - ExtensionSettingErrorEnum.ExtensionSettingError extension_setting_error = 103; - - // The reasons for the feed item target error - FeedItemTargetErrorEnum.FeedItemTargetError feed_item_target_error = 104; - - // The reasons for the policy violation error - PolicyViolationErrorEnum.PolicyViolationError policy_violation_error = 105; - - // The reasons for the mutate job error - PartialFailureErrorEnum.PartialFailureError partial_failure_error = 112; - - // The reasons for the policy validation parameter error - PolicyValidationParameterErrorEnum.PolicyValidationParameterError policy_validation_parameter_error = 114; - - // The reasons for the size limit error - SizeLimitErrorEnum.SizeLimitError size_limit_error = 118; - - // The reasons for the offline user data job error. - OfflineUserDataJobErrorEnum.OfflineUserDataJobError offline_user_data_job_error = 119; - - // The reasons for the not whitelisted error - NotWhitelistedErrorEnum.NotWhitelistedError not_whitelisted_error = 120; - - // The reasons for the manager link error - ManagerLinkErrorEnum.ManagerLinkError manager_link_error = 121; - - // The reasons for the currency code error - CurrencyCodeErrorEnum.CurrencyCodeError currency_code_error = 122; - - // The reasons for the access invitation error - AccessInvitationErrorEnum.AccessInvitationError access_invitation_error = 124; - - // The reasons for the reach plan error - ReachPlanErrorEnum.ReachPlanError reach_plan_error = 125; - - // The reasons for the invoice error - InvoiceErrorEnum.InvoiceError invoice_error = 126; - - // The reasons for errors in payments accounts service - PaymentsAccountErrorEnum.PaymentsAccountError payments_account_error = 127; - - // The reasons for the time zone error - TimeZoneErrorEnum.TimeZoneError time_zone_error = 128; - - // The reasons for the asset link error - AssetLinkErrorEnum.AssetLinkError asset_link_error = 129; - - // The reasons for the user data error. - UserDataErrorEnum.UserDataError user_data_error = 130; - - // The reasons for the batch job error - BatchJobErrorEnum.BatchJobError batch_job_error = 131; - } -} - -// Describes the part of the request proto that caused the error. -message ErrorLocation { - // A part of a field path. - message FieldPathElement { - // The name of a field or a oneof - string field_name = 1; - - // If field_name is a repeated field, this is the element that failed - google.protobuf.Int64Value index = 2; - } - - // A field path that indicates which field was invalid in the request. - repeated FieldPathElement field_path_elements = 2; -} - -// Additional error details. -message ErrorDetails { - // The error code that should have been returned, but wasn't. This is used - // when the error code is not published in the client specified version. - string unpublished_error_code = 1; - - // Describes an ad policy violation. - PolicyViolationDetails policy_violation_details = 2; - - // Describes policy violation findings. - PolicyFindingDetails policy_finding_details = 3; -} - -// Error returned as part of a mutate response. -// This error indicates single policy violation by some text -// in one of the fields. -message PolicyViolationDetails { - // Human readable description of policy violation. - string external_policy_description = 2; - - // Unique identifier for this violation. - // If policy is exemptible, this key may be used to request exemption. - google.ads.googleads.v4.common.PolicyViolationKey key = 4; - - // Human readable name of the policy. - string external_policy_name = 5; - - // Whether user can file an exemption request for this violation. - bool is_exemptible = 6; -} - -// Error returned as part of a mutate response. -// This error indicates one or more policy findings in the fields of a -// resource. -message PolicyFindingDetails { - // The list of policy topics for the resource. Contains the PROHIBITED or - // FULLY_LIMITED policy topic entries that prevented the resource from being - // saved (among any other entries the resource may also have). - repeated google.ads.googleads.v4.common.PolicyTopicEntry policy_topic_entries = 1; -} diff --git a/google/ads/googleads/v4/errors/extension_feed_item_error.proto b/google/ads/googleads/v4/errors/extension_feed_item_error.proto deleted file mode 100644 index c1361f030..000000000 --- a/google/ads/googleads/v4/errors/extension_feed_item_error.proto +++ /dev/null @@ -1,195 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionFeedItemErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing extension feed item errors. - -// Container for enum describing possible extension feed item error. -message ExtensionFeedItemErrorEnum { - // Enum describing possible extension feed item errors. - enum ExtensionFeedItemError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Value is not within the accepted range. - VALUE_OUT_OF_RANGE = 2; - - // Url list is too long. - URL_LIST_TOO_LONG = 3; - - // Cannot have a geo targeting restriction without having geo targeting. - CANNOT_HAVE_RESTRICTION_ON_EMPTY_GEO_TARGETING = 4; - - // Cannot simultaneously set sitelink field with final urls. - CANNOT_SET_WITH_FINAL_URLS = 5; - - // Must set field with final urls. - CANNOT_SET_WITHOUT_FINAL_URLS = 6; - - // Phone number for a call extension is invalid. - INVALID_PHONE_NUMBER = 7; - - // Phone number for a call extension is not supported for the given country - // code. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 8; - - // A carrier specific number in short format is not allowed for call - // extensions. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 9; - - // Premium rate numbers are not allowed for call extensions. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 10; - - // Phone number type for a call extension is not allowed. - // For example, personal number is not allowed for a call extension in - // most regions. - DISALLOWED_NUMBER_TYPE = 11; - - // Phone number for a call extension does not meet domestic format - // requirements. - INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 12; - - // Vanity phone numbers (i.e. those including letters) are not allowed for - // call extensions. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 13; - - // Call conversion action provided for a call extension is invalid. - INVALID_CALL_CONVERSION_ACTION = 14; - - // For a call extension, the customer is not on the allow-list for call - // tracking. - CUSTOMER_NOT_WHITELISTED_FOR_CALLTRACKING = 15; - - // Call tracking is not supported for the given country for a call - // extension. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 16; - - // Customer hasn't consented for call recording, which is required for - // creating/updating call feed items. Please see - // https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 17; - - // App id provided for an app extension is invalid. - INVALID_APP_ID = 18; - - // Quotation marks present in the review text for a review extension. - QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 19; - - // Hyphen character present in the review text for a review extension. - HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 20; - - // A denylisted review source name or url was provided for a review - // extension. - REVIEW_EXTENSION_SOURCE_INELIGIBLE = 21; - - // Review source name should not be found in the review text. - SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 22; - - // Inconsistent currency codes. - INCONSISTENT_CURRENCY_CODES = 23; - - // Price extension cannot have duplicated headers. - PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 24; - - // Price item cannot have duplicated header and description. - PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 25; - - // Price extension has too few items. - PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 26; - - // Price extension has too many items. - PRICE_EXTENSION_HAS_TOO_MANY_ITEMS = 27; - - // The input value is not currently supported. - UNSUPPORTED_VALUE = 28; - - // The input value is not currently supported in the selected language of an - // extension. - UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE = 29; - - // Unknown or unsupported device preference. - INVALID_DEVICE_PREFERENCE = 30; - - // Invalid feed item schedule end time (i.e., endHour = 24 and endMinute != - // 0). - INVALID_SCHEDULE_END = 31; - - // Date time zone does not match the account's time zone. - DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 32; - - // Invalid structured snippet header. - INVALID_SNIPPETS_HEADER = 33; - - // Cannot operate on removed feed item. - CANNOT_OPERATE_ON_REMOVED_FEED_ITEM = 34; - - // Phone number not supported when call tracking enabled for country. - PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 35; - - // Cannot set call_conversion_action while call_conversion_tracking_enabled - // is set to true. - CONFLICTING_CALL_CONVERSION_SETTINGS = 36; - - // The type of the input extension feed item doesn't match the existing - // extension feed item. - EXTENSION_TYPE_MISMATCH = 37; - - // The oneof field extension i.e. subtype of extension feed item is - // required. - EXTENSION_SUBTYPE_REQUIRED = 38; - - // The referenced feed item is not mapped to a supported extension type. - EXTENSION_TYPE_UNSUPPORTED = 39; - - // Cannot operate on a Feed with more than one active FeedMapping. - CANNOT_OPERATE_ON_FEED_WITH_MULTIPLE_MAPPINGS = 40; - - // Cannot operate on a Feed that has key attributes. - CANNOT_OPERATE_ON_FEED_WITH_KEY_ATTRIBUTES = 41; - - // Input price is not in a valid format. - INVALID_PRICE_FORMAT = 42; - - // The promotion time is invalid. - PROMOTION_INVALID_TIME = 43; - - // This field has too many decimal places specified. - TOO_MANY_DECIMAL_PLACES_SPECIFIED = 44; - - // Concrete sub type of ExtensionFeedItem is required for this operation. - CONCRETE_EXTENSION_TYPE_REQUIRED = 45; - - // Feed item schedule end time must be after start time. - SCHEDULE_END_NOT_AFTER_START = 46; - } - - -} diff --git a/google/ads/googleads/v4/errors/extension_setting_error.proto b/google/ads/googleads/v4/errors/extension_setting_error.proto deleted file mode 100644 index 5088e340d..000000000 --- a/google/ads/googleads/v4/errors/extension_setting_error.proto +++ /dev/null @@ -1,258 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionSettingErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing extension setting validation errors. - -// Container for enum describing validation errors of extension settings. -message ExtensionSettingErrorEnum { - // Enum describing possible extension setting errors. - enum ExtensionSettingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A platform restriction was provided without input extensions or existing - // extensions. - EXTENSIONS_REQUIRED = 2; - - // The provided feed type does not correspond to the provided extensions. - FEED_TYPE_EXTENSION_TYPE_MISMATCH = 3; - - // The provided feed type cannot be used. - INVALID_FEED_TYPE = 4; - - // The provided feed type cannot be used at the customer level. - INVALID_FEED_TYPE_FOR_CUSTOMER_EXTENSION_SETTING = 5; - - // Cannot change a feed item field on a CREATE operation. - CANNOT_CHANGE_FEED_ITEM_ON_CREATE = 6; - - // Cannot update an extension that is not already in this setting. - CANNOT_UPDATE_NEWLY_CREATED_EXTENSION = 7; - - // There is no existing AdGroupExtensionSetting for this type. - NO_EXISTING_AD_GROUP_EXTENSION_SETTING_FOR_TYPE = 8; - - // There is no existing CampaignExtensionSetting for this type. - NO_EXISTING_CAMPAIGN_EXTENSION_SETTING_FOR_TYPE = 9; - - // There is no existing CustomerExtensionSetting for this type. - NO_EXISTING_CUSTOMER_EXTENSION_SETTING_FOR_TYPE = 10; - - // The AdGroupExtensionSetting already exists. UPDATE should be used to - // modify the existing AdGroupExtensionSetting. - AD_GROUP_EXTENSION_SETTING_ALREADY_EXISTS = 11; - - // The CampaignExtensionSetting already exists. UPDATE should be used to - // modify the existing CampaignExtensionSetting. - CAMPAIGN_EXTENSION_SETTING_ALREADY_EXISTS = 12; - - // The CustomerExtensionSetting already exists. UPDATE should be used to - // modify the existing CustomerExtensionSetting. - CUSTOMER_EXTENSION_SETTING_ALREADY_EXISTS = 13; - - // An active ad group feed already exists for this place holder type. - AD_GROUP_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 14; - - // An active campaign feed already exists for this place holder type. - CAMPAIGN_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 15; - - // An active customer feed already exists for this place holder type. - CUSTOMER_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 16; - - // Value is not within the accepted range. - VALUE_OUT_OF_RANGE = 17; - - // Cannot simultaneously set specified field with final urls. - CANNOT_SET_FIELD_WITH_FINAL_URLS = 18; - - // Must set field with final urls. - FINAL_URLS_NOT_SET = 19; - - // Phone number for a call extension is invalid. - INVALID_PHONE_NUMBER = 20; - - // Phone number for a call extension is not supported for the given country - // code. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 21; - - // A carrier specific number in short format is not allowed for call - // extensions. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 22; - - // Premium rate numbers are not allowed for call extensions. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 23; - - // Phone number type for a call extension is not allowed. - DISALLOWED_NUMBER_TYPE = 24; - - // Phone number for a call extension does not meet domestic format - // requirements. - INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 25; - - // Vanity phone numbers (i.e. those including letters) are not allowed for - // call extensions. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 26; - - // Country code provided for a call extension is invalid. - INVALID_COUNTRY_CODE = 27; - - // Call conversion type id provided for a call extension is invalid. - INVALID_CALL_CONVERSION_TYPE_ID = 28; - - // For a call extension, the customer is not on the allow-list for call - // tracking. - CUSTOMER_NOT_WHITELISTED_FOR_CALLTRACKING = 29; - - // Call tracking is not supported for the given country for a call - // extension. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 30; - - // App id provided for an app extension is invalid. - INVALID_APP_ID = 31; - - // Quotation marks present in the review text for a review extension. - QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 32; - - // Hyphen character present in the review text for a review extension. - HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 33; - - // A blocked review source name or url was provided for a review - // extension. - REVIEW_EXTENSION_SOURCE_NOT_ELIGIBLE = 34; - - // Review source name should not be found in the review text. - SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 35; - - // Field must be set. - MISSING_FIELD = 36; - - // Inconsistent currency codes. - INCONSISTENT_CURRENCY_CODES = 37; - - // Price extension cannot have duplicated headers. - PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 38; - - // Price item cannot have duplicated header and description. - PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 39; - - // Price extension has too few items - PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 40; - - // Price extension has too many items - PRICE_EXTENSION_HAS_TOO_MANY_ITEMS = 41; - - // The input value is not currently supported. - UNSUPPORTED_VALUE = 42; - - // Unknown or unsupported device preference. - INVALID_DEVICE_PREFERENCE = 43; - - // Invalid feed item schedule end time (i.e., endHour = 24 and - // endMinute != 0). - INVALID_SCHEDULE_END = 45; - - // Date time zone does not match the account's time zone. - DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 47; - - // Overlapping feed item schedule times (e.g., 7-10AM and 8-11AM) are not - // allowed. - OVERLAPPING_SCHEDULES_NOT_ALLOWED = 48; - - // Feed item schedule end time must be after start time. - SCHEDULE_END_NOT_AFTER_START = 49; - - // There are too many feed item schedules per day. - TOO_MANY_SCHEDULES_PER_DAY = 50; - - // Cannot edit the same extension feed item more than once in the same - // request. - DUPLICATE_EXTENSION_FEED_ITEM_EDIT = 51; - - // Invalid structured snippet header. - INVALID_SNIPPETS_HEADER = 52; - - // Phone number with call tracking enabled is not supported for the - // specified country. - PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 53; - - // The targeted adgroup must belong to the targeted campaign. - CAMPAIGN_TARGETING_MISMATCH = 54; - - // The feed used by the ExtensionSetting is removed and cannot be operated - // on. Remove the ExtensionSetting to allow a new one to be created using - // an active feed. - CANNOT_OPERATE_ON_REMOVED_FEED = 55; - - // The ExtensionFeedItem type is required for this operation. - EXTENSION_TYPE_REQUIRED = 56; - - // The matching function that links the extension feed to the customer, - // campaign, or ad group is not compatible with the ExtensionSetting - // services. - INCOMPATIBLE_UNDERLYING_MATCHING_FUNCTION = 57; - - // Start date must be before end date. - START_DATE_AFTER_END_DATE = 58; - - // Input price is not in a valid format. - INVALID_PRICE_FORMAT = 59; - - // The promotion time is invalid. - PROMOTION_INVALID_TIME = 60; - - // Cannot set both percent discount and money discount fields. - PROMOTION_CANNOT_SET_PERCENT_DISCOUNT_AND_MONEY_DISCOUNT = 61; - - // Cannot set both promotion code and orders over amount fields. - PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 62; - - // This field has too many decimal places specified. - TOO_MANY_DECIMAL_PLACES_SPECIFIED = 63; - - // The language code is not valid. - INVALID_LANGUAGE_CODE = 64; - - // The language is not supported. - UNSUPPORTED_LANGUAGE = 65; - - // Customer hasn't consented for call recording, which is required for - // adding/updating call extensions. Please see - // https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 66; - - // The UPDATE operation does not specify any fields other than the resource - // name in the update mask. - EXTENSION_SETTING_UPDATE_IS_A_NOOP = 67; - } - - -} diff --git a/google/ads/googleads/v4/errors/feed_attribute_reference_error.proto b/google/ads/googleads/v4/errors/feed_attribute_reference_error.proto deleted file mode 100644 index 23bffb6a0..000000000 --- a/google/ads/googleads/v4/errors/feed_attribute_reference_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedAttributeReferenceErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing feed attribute reference errors. - -// Container for enum describing possible feed attribute reference errors. -message FeedAttributeReferenceErrorEnum { - // Enum describing possible feed attribute reference errors. - enum FeedAttributeReferenceError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A feed referenced by ID has been removed. - CANNOT_REFERENCE_REMOVED_FEED = 2; - - // There is no enabled feed with the given name. - INVALID_FEED_NAME = 3; - - // There is no feed attribute in an enabled feed with the given name. - INVALID_FEED_ATTRIBUTE_NAME = 4; - } - - -} diff --git a/google/ads/googleads/v4/errors/feed_error.proto b/google/ads/googleads/v4/errors/feed_error.proto deleted file mode 100644 index 7334b562b..000000000 --- a/google/ads/googleads/v4/errors/feed_error.proto +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing feed errors. - -// Container for enum describing possible feed errors. -message FeedErrorEnum { - // Enum describing possible feed errors. - enum FeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The names of the FeedAttributes must be unique. - ATTRIBUTE_NAMES_NOT_UNIQUE = 2; - - // The attribute list must be an exact copy of the existing list if the - // attribute ID's are present. - ATTRIBUTES_DO_NOT_MATCH_EXISTING_ATTRIBUTES = 3; - - // Cannot specify USER origin for a system generated feed. - CANNOT_SPECIFY_USER_ORIGIN_FOR_SYSTEM_FEED = 4; - - // Cannot specify GOOGLE origin for a non-system generated feed. - CANNOT_SPECIFY_GOOGLE_ORIGIN_FOR_NON_SYSTEM_FEED = 5; - - // Cannot specify feed attributes for system feed. - CANNOT_SPECIFY_FEED_ATTRIBUTES_FOR_SYSTEM_FEED = 6; - - // Cannot update FeedAttributes on feed with origin GOOGLE. - CANNOT_UPDATE_FEED_ATTRIBUTES_WITH_ORIGIN_GOOGLE = 7; - - // The given ID refers to a removed Feed. Removed Feeds are immutable. - FEED_REMOVED = 8; - - // The origin of the feed is not valid for the client. - INVALID_ORIGIN_VALUE = 9; - - // A user can only create and modify feeds with USER origin. - FEED_ORIGIN_IS_NOT_USER = 10; - - // Invalid auth token for the given email. - INVALID_AUTH_TOKEN_FOR_EMAIL = 11; - - // Invalid email specified. - INVALID_EMAIL = 12; - - // Feed name matches that of another active Feed. - DUPLICATE_FEED_NAME = 13; - - // Name of feed is not allowed. - INVALID_FEED_NAME = 14; - - // Missing OAuthInfo. - MISSING_OAUTH_INFO = 15; - - // New FeedAttributes must not affect the unique key. - NEW_ATTRIBUTE_CANNOT_BE_PART_OF_UNIQUE_KEY = 16; - - // Too many FeedAttributes for a Feed. - TOO_MANY_ATTRIBUTES = 17; - - // The business account is not valid. - INVALID_BUSINESS_ACCOUNT = 18; - - // Business account cannot access Google My Business account. - BUSINESS_ACCOUNT_CANNOT_ACCESS_LOCATION_ACCOUNT = 19; - - // Invalid chain ID provided for affiliate location feed. - INVALID_AFFILIATE_CHAIN_ID = 20; - - // There is already a feed with the given system feed generation data. - DUPLICATE_SYSTEM_FEED = 21; - - // An error occurred accessing GMB account. - GMB_ACCESS_ERROR = 22; - - // A customer cannot have both LOCATION and AFFILIATE_LOCATION feeds. - CANNOT_HAVE_LOCATION_AND_AFFILIATE_LOCATION_FEEDS = 23; - } - - -} diff --git a/google/ads/googleads/v4/errors/feed_item_error.proto b/google/ads/googleads/v4/errors/feed_item_error.proto deleted file mode 100644 index ea1cba3e3..000000000 --- a/google/ads/googleads/v4/errors/feed_item_error.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing feed item errors. - -// Container for enum describing possible feed item errors. -message FeedItemErrorEnum { - // Enum describing possible feed item errors. - enum FeedItemError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot convert the feed attribute value from string to its real type. - CANNOT_CONVERT_ATTRIBUTE_VALUE_FROM_STRING = 2; - - // Cannot operate on removed feed item. - CANNOT_OPERATE_ON_REMOVED_FEED_ITEM = 3; - - // Date time zone does not match the account's time zone. - DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 4; - - // Feed item with the key attributes could not be found. - KEY_ATTRIBUTES_NOT_FOUND = 5; - - // Url feed attribute value is not valid. - INVALID_URL = 6; - - // Some key attributes are missing. - MISSING_KEY_ATTRIBUTES = 7; - - // Feed item has same key attributes as another feed item. - KEY_ATTRIBUTES_NOT_UNIQUE = 8; - - // Cannot modify key attributes on an existing feed item. - CANNOT_MODIFY_KEY_ATTRIBUTE_VALUE = 9; - - // The feed attribute value is too large. - SIZE_TOO_LARGE_FOR_MULTI_VALUE_ATTRIBUTE = 10; - } - - -} diff --git a/google/ads/googleads/v4/errors/feed_item_target_error.proto b/google/ads/googleads/v4/errors/feed_item_target_error.proto deleted file mode 100644 index f09d78196..000000000 --- a/google/ads/googleads/v4/errors/feed_item_target_error.proto +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing feed item target errors. - -// Container for enum describing possible feed item target errors. -message FeedItemTargetErrorEnum { - // Enum describing possible feed item target errors. - enum FeedItemTargetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // On CREATE, the FeedItemTarget must have a populated field in the oneof - // target. - MUST_SET_TARGET_ONEOF_ON_CREATE = 2; - - // The specified feed item target already exists, so it cannot be added. - FEED_ITEM_TARGET_ALREADY_EXISTS = 3; - - // The schedules for a given feed item cannot overlap. - FEED_ITEM_SCHEDULES_CANNOT_OVERLAP = 4; - - // Too many targets of a given type were added for a single feed item. - TARGET_LIMIT_EXCEEDED_FOR_GIVEN_TYPE = 5; - - // Too many AdSchedules are enabled for the feed item for the given day. - TOO_MANY_SCHEDULES_PER_DAY = 6; - - // A feed item may either have an enabled campaign target or an enabled ad - // group target. - CANNOT_HAVE_ENABLED_CAMPAIGN_AND_ENABLED_AD_GROUP_TARGETS = 7; - - // Duplicate ad schedules aren't allowed. - DUPLICATE_AD_SCHEDULE = 8; - - // Duplicate keywords aren't allowed. - DUPLICATE_KEYWORD = 9; - } - - -} diff --git a/google/ads/googleads/v4/errors/feed_item_validation_error.proto b/google/ads/googleads/v4/errors/feed_item_validation_error.proto deleted file mode 100644 index e92bb7aec..000000000 --- a/google/ads/googleads/v4/errors/feed_item_validation_error.proto +++ /dev/null @@ -1,353 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemValidationErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing feed item validation errors. - -// Container for enum describing possible validation errors of a feed item. -message FeedItemValidationErrorEnum { - // The possible validation errors of a feed item. - enum FeedItemValidationError { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // String is too short. - STRING_TOO_SHORT = 2; - - // String is too long. - STRING_TOO_LONG = 3; - - // Value is not provided. - VALUE_NOT_SPECIFIED = 4; - - // Phone number format is invalid for region. - INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 5; - - // String does not represent a phone number. - INVALID_PHONE_NUMBER = 6; - - // Phone number format is not compatible with country code. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 7; - - // Premium rate number is not allowed. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 8; - - // Phone number type is not allowed. - DISALLOWED_NUMBER_TYPE = 9; - - // Specified value is outside of the valid range. - VALUE_OUT_OF_RANGE = 10; - - // Call tracking is not supported in the selected country. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 11; - - // Customer is not on the allow-list for call tracking. - CUSTOMER_NOT_WHITELISTED_FOR_CALLTRACKING = 12; - - // Country code is invalid. - INVALID_COUNTRY_CODE = 13; - - // The specified mobile app id is invalid. - INVALID_APP_ID = 14; - - // Some required field attributes are missing. - MISSING_ATTRIBUTES_FOR_FIELDS = 15; - - // Invalid email button type for email extension. - INVALID_TYPE_ID = 16; - - // Email address is invalid. - INVALID_EMAIL_ADDRESS = 17; - - // The HTTPS URL in email extension is invalid. - INVALID_HTTPS_URL = 18; - - // Delivery address is missing from email extension. - MISSING_DELIVERY_ADDRESS = 19; - - // FeedItem scheduling start date comes after end date. - START_DATE_AFTER_END_DATE = 20; - - // FeedItem scheduling start time is missing. - MISSING_FEED_ITEM_START_TIME = 21; - - // FeedItem scheduling end time is missing. - MISSING_FEED_ITEM_END_TIME = 22; - - // Cannot compute system attributes on a FeedItem that has no FeedItemId. - MISSING_FEED_ITEM_ID = 23; - - // Call extension vanity phone numbers are not supported. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 24; - - // Invalid review text. - INVALID_REVIEW_EXTENSION_SNIPPET = 25; - - // Invalid format for numeric value in ad parameter. - INVALID_NUMBER_FORMAT = 26; - - // Invalid format for date value in ad parameter. - INVALID_DATE_FORMAT = 27; - - // Invalid format for price value in ad parameter. - INVALID_PRICE_FORMAT = 28; - - // Unrecognized type given for value in ad parameter. - UNKNOWN_PLACEHOLDER_FIELD = 29; - - // Enhanced sitelinks must have both description lines specified. - MISSING_ENHANCED_SITELINK_DESCRIPTION_LINE = 30; - - // Review source is ineligible. - REVIEW_EXTENSION_SOURCE_INELIGIBLE = 31; - - // Review text cannot contain hyphens or dashes. - HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 32; - - // Review text cannot contain double quote characters. - DOUBLE_QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 33; - - // Review text cannot contain quote characters. - QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 34; - - // Parameters are encoded in the wrong format. - INVALID_FORM_ENCODED_PARAMS = 35; - - // URL parameter name must contain only letters, numbers, underscores, and - // dashes. - INVALID_URL_PARAMETER_NAME = 36; - - // Cannot find address location. - NO_GEOCODING_RESULT = 37; - - // Review extension text has source name. - SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 38; - - // Some phone numbers can be shorter than usual. Some of these short numbers - // are carrier-specific, and we disallow those in ad extensions because they - // will not be available to all users. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 39; - - // Triggered when a request references a placeholder field id that does not - // exist. - INVALID_PLACEHOLDER_FIELD_ID = 40; - - // URL contains invalid ValueTrack tags or format. - INVALID_URL_TAG = 41; - - // Provided list exceeds acceptable size. - LIST_TOO_LONG = 42; - - // Certain combinations of attributes aren't allowed to be specified in the - // same feed item. - INVALID_ATTRIBUTES_COMBINATION = 43; - - // An attribute has the same value repeatedly. - DUPLICATE_VALUES = 44; - - // Advertisers can link a conversion action with a phone number to indicate - // that sufficiently long calls forwarded to that phone number should be - // counted as conversions of the specified type. This is an error message - // indicating that the conversion action specified is invalid (e.g., the - // conversion action does not exist within the appropriate Google Ads - // account, or it is a type of conversion not appropriate to phone call - // conversions). - INVALID_CALL_CONVERSION_ACTION_ID = 45; - - // Tracking template requires final url to be set. - CANNOT_SET_WITHOUT_FINAL_URLS = 46; - - // An app id was provided that doesn't exist in the given app store. - APP_ID_DOESNT_EXIST_IN_APP_STORE = 47; - - // Invalid U2 final url. - INVALID_FINAL_URL = 48; - - // Invalid U2 tracking url. - INVALID_TRACKING_URL = 49; - - // Final URL should start from App download URL. - INVALID_FINAL_URL_FOR_APP_DOWNLOAD_URL = 50; - - // List provided is too short. - LIST_TOO_SHORT = 51; - - // User Action field has invalid value. - INVALID_USER_ACTION = 52; - - // Type field has invalid value. - INVALID_TYPE_NAME = 53; - - // Change status for event is invalid. - INVALID_EVENT_CHANGE_STATUS = 54; - - // The header of a structured snippets extension is not one of the valid - // headers. - INVALID_SNIPPETS_HEADER = 55; - - // Android app link is not formatted correctly - INVALID_ANDROID_APP_LINK = 56; - - // Phone number incompatible with call tracking for country. - NUMBER_TYPE_WITH_CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 57; - - // The input is identical to a reserved keyword - RESERVED_KEYWORD_OTHER = 58; - - // Each option label in the message extension must be unique. - DUPLICATE_OPTION_LABELS = 59; - - // Each option prefill in the message extension must be unique. - DUPLICATE_OPTION_PREFILLS = 60; - - // In message extensions, the number of optional labels and optional - // prefills must be the same. - UNEQUAL_LIST_LENGTHS = 61; - - // All currency codes in an ad extension must be the same. - INCONSISTENT_CURRENCY_CODES = 62; - - // Headers in price extension are not unique. - PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 63; - - // Header and description in an item are the same. - ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 64; - - // Price extension has too few items. - PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 65; - - // The given value is not supported. - UNSUPPORTED_VALUE = 66; - - // Invalid final mobile url. - INVALID_FINAL_MOBILE_URL = 67; - - // The given string value of Label contains invalid characters - INVALID_KEYWORDLESS_AD_RULE_LABEL = 68; - - // The given URL contains value track parameters. - VALUE_TRACK_PARAMETER_NOT_SUPPORTED = 69; - - // The given value is not supported in the selected language of an - // extension. - UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE = 70; - - // The iOS app link is not formatted correctly. - INVALID_IOS_APP_LINK = 71; - - // iOS app link or iOS app store id is missing. - MISSING_IOS_APP_LINK_OR_IOS_APP_STORE_ID = 72; - - // Promotion time is invalid. - PROMOTION_INVALID_TIME = 73; - - // Both the percent off and money amount off fields are set. - PROMOTION_CANNOT_SET_PERCENT_OFF_AND_MONEY_AMOUNT_OFF = 74; - - // Both the promotion code and orders over amount fields are set. - PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 75; - - // Too many decimal places are specified. - TOO_MANY_DECIMAL_PLACES_SPECIFIED = 76; - - // Ad Customizers are present and not allowed. - AD_CUSTOMIZERS_NOT_ALLOWED = 77; - - // Language code is not valid. - INVALID_LANGUAGE_CODE = 78; - - // Language is not supported. - UNSUPPORTED_LANGUAGE = 79; - - // IF Function is present and not allowed. - IF_FUNCTION_NOT_ALLOWED = 80; - - // Final url suffix is not valid. - INVALID_FINAL_URL_SUFFIX = 81; - - // Final url suffix contains an invalid tag. - INVALID_TAG_IN_FINAL_URL_SUFFIX = 82; - - // Final url suffix is formatted incorrectly. - INVALID_FINAL_URL_SUFFIX_FORMAT = 83; - - // Consent for call recording, which is required for the use of call - // extensions, was not provided by the advertiser. Please see - // https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 84; - - // Multiple message delivery options are set. - ONLY_ONE_DELIVERY_OPTION_IS_ALLOWED = 85; - - // No message delivery option is set. - NO_DELIVERY_OPTION_IS_SET = 86; - - // String value of conversion reporting state field is not valid. - INVALID_CONVERSION_REPORTING_STATE = 87; - - // Image size is not right. - IMAGE_SIZE_WRONG = 88; - - // Email delivery is not supported in the country specified in the country - // code field. - EMAIL_DELIVERY_NOT_AVAILABLE_IN_COUNTRY = 89; - - // Auto reply is not supported in the country specified in the country code - // field. - AUTO_REPLY_NOT_AVAILABLE_IN_COUNTRY = 90; - - // Invalid value specified for latitude. - INVALID_LATITUDE_VALUE = 91; - - // Invalid value specified for longitude. - INVALID_LONGITUDE_VALUE = 92; - - // Too many label fields provided. - TOO_MANY_LABELS = 93; - - // Invalid image url. - INVALID_IMAGE_URL = 94; - - // Latitude value is missing. - MISSING_LATITUDE_VALUE = 95; - - // Longitude value is missing. - MISSING_LONGITUDE_VALUE = 96; - - // Unable to find address. - ADDRESS_NOT_FOUND = 97; - - // Cannot target provided address. - ADDRESS_NOT_TARGETABLE = 98; - } - - -} diff --git a/google/ads/googleads/v4/errors/feed_mapping_error.proto b/google/ads/googleads/v4/errors/feed_mapping_error.proto deleted file mode 100644 index bfd404c1a..000000000 --- a/google/ads/googleads/v4/errors/feed_mapping_error.proto +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing feed item errors. - -// Container for enum describing possible feed item errors. -message FeedMappingErrorEnum { - // Enum describing possible feed item errors. - enum FeedMappingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The given placeholder field does not exist. - INVALID_PLACEHOLDER_FIELD = 2; - - // The given criterion field does not exist. - INVALID_CRITERION_FIELD = 3; - - // The given placeholder type does not exist. - INVALID_PLACEHOLDER_TYPE = 4; - - // The given criterion type does not exist. - INVALID_CRITERION_TYPE = 5; - - // A feed mapping must contain at least one attribute field mapping. - NO_ATTRIBUTE_FIELD_MAPPINGS = 7; - - // The type of the feed attribute referenced in the attribute field mapping - // must match the type of the placeholder field. - FEED_ATTRIBUTE_TYPE_MISMATCH = 8; - - // A feed mapping for a system generated feed cannot be operated on. - CANNOT_OPERATE_ON_MAPPINGS_FOR_SYSTEM_GENERATED_FEED = 9; - - // Only one feed mapping for a placeholder type is allowed per feed or - // customer (depending on the placeholder type). - MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_TYPE = 10; - - // Only one feed mapping for a criterion type is allowed per customer. - MULTIPLE_MAPPINGS_FOR_CRITERION_TYPE = 11; - - // Only one feed attribute mapping for a placeholder field is allowed - // (depending on the placeholder type). - MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_FIELD = 12; - - // Only one feed attribute mapping for a criterion field is allowed - // (depending on the criterion type). - MULTIPLE_MAPPINGS_FOR_CRITERION_FIELD = 13; - - // This feed mapping may not contain any explicit attribute field mappings. - UNEXPECTED_ATTRIBUTE_FIELD_MAPPINGS = 14; - - // Location placeholder feed mappings can only be created for Places feeds. - LOCATION_PLACEHOLDER_ONLY_FOR_PLACES_FEEDS = 15; - - // Mappings for typed feeds cannot be modified. - CANNOT_MODIFY_MAPPINGS_FOR_TYPED_FEED = 16; - - // The given placeholder type can only be mapped to system generated feeds. - INVALID_PLACEHOLDER_TYPE_FOR_NON_SYSTEM_GENERATED_FEED = 17; - - // The given placeholder type cannot be mapped to a system generated feed - // with the given type. - INVALID_PLACEHOLDER_TYPE_FOR_SYSTEM_GENERATED_FEED_TYPE = 18; - - // The "field" oneof was not set in an AttributeFieldMapping. - ATTRIBUTE_FIELD_MAPPING_MISSING_FIELD = 19; - } - - -} diff --git a/google/ads/googleads/v4/errors/field_error.proto b/google/ads/googleads/v4/errors/field_error.proto deleted file mode 100644 index 773a4be22..000000000 --- a/google/ads/googleads/v4/errors/field_error.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FieldErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing field errors. - -// Container for enum describing possible field errors. -message FieldErrorEnum { - // Enum describing possible field errors. - enum FieldError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The required field was not present. - REQUIRED = 2; - - // The field attempted to be mutated is immutable. - IMMUTABLE_FIELD = 3; - - // The field's value is invalid. - INVALID_VALUE = 4; - - // The field cannot be set. - VALUE_MUST_BE_UNSET = 5; - - // The required repeated field was empty. - REQUIRED_NONEMPTY_LIST = 6; - - // The field cannot be cleared. - FIELD_CANNOT_BE_CLEARED = 7; - - // The field's value is on a deny-list for this field. - BLACKLISTED_VALUE = 8; - } - - -} diff --git a/google/ads/googleads/v4/errors/field_mask_error.proto b/google/ads/googleads/v4/errors/field_mask_error.proto deleted file mode 100644 index 28f33d0df..000000000 --- a/google/ads/googleads/v4/errors/field_mask_error.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FieldMaskErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing field mask errors. - -// Container for enum describing possible field mask errors. -message FieldMaskErrorEnum { - // Enum describing possible field mask errors. - enum FieldMaskError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The field mask must be provided for update operations. - FIELD_MASK_MISSING = 5; - - // The field mask must be empty for create and remove operations. - FIELD_MASK_NOT_ALLOWED = 4; - - // The field mask contained an invalid field. - FIELD_NOT_FOUND = 2; - - // The field mask updated a field with subfields. Fields with subfields may - // be cleared, but not updated. To fix this, the field mask should select - // all the subfields of the invalid field. - FIELD_HAS_SUBFIELDS = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/function_error.proto b/google/ads/googleads/v4/errors/function_error.proto deleted file mode 100644 index 920cc6d54..000000000 --- a/google/ads/googleads/v4/errors/function_error.proto +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FunctionErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing function errors. - -// Container for enum describing possible function errors. -message FunctionErrorEnum { - // Enum describing possible function errors. - enum FunctionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The format of the function is not recognized as a supported function - // format. - INVALID_FUNCTION_FORMAT = 2; - - // Operand data types do not match. - DATA_TYPE_MISMATCH = 3; - - // The operands cannot be used together in a conjunction. - INVALID_CONJUNCTION_OPERANDS = 4; - - // Invalid numer of Operands. - INVALID_NUMBER_OF_OPERANDS = 5; - - // Operand Type not supported. - INVALID_OPERAND_TYPE = 6; - - // Operator not supported. - INVALID_OPERATOR = 7; - - // Request context type not supported. - INVALID_REQUEST_CONTEXT_TYPE = 8; - - // The matching function is not allowed for call placeholders - INVALID_FUNCTION_FOR_CALL_PLACEHOLDER = 9; - - // The matching function is not allowed for the specified placeholder - INVALID_FUNCTION_FOR_PLACEHOLDER = 10; - - // Invalid operand. - INVALID_OPERAND = 11; - - // Missing value for the constant operand. - MISSING_CONSTANT_OPERAND_VALUE = 12; - - // The value of the constant operand is invalid. - INVALID_CONSTANT_OPERAND_VALUE = 13; - - // Invalid function nesting. - INVALID_NESTING = 14; - - // The Feed ID was different from another Feed ID in the same function. - MULTIPLE_FEED_IDS_NOT_SUPPORTED = 15; - - // The matching function is invalid for use with a feed with a fixed schema. - INVALID_FUNCTION_FOR_FEED_WITH_FIXED_SCHEMA = 16; - - // Invalid attribute name. - INVALID_ATTRIBUTE_NAME = 17; - } - - -} diff --git a/google/ads/googleads/v4/errors/function_parsing_error.proto b/google/ads/googleads/v4/errors/function_parsing_error.proto deleted file mode 100644 index edc11f494..000000000 --- a/google/ads/googleads/v4/errors/function_parsing_error.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FunctionParsingErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing function parsing errors. - -// Container for enum describing possible function parsing errors. -message FunctionParsingErrorEnum { - // Enum describing possible function parsing errors. - enum FunctionParsingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Unexpected end of function string. - NO_MORE_INPUT = 2; - - // Could not find an expected character. - EXPECTED_CHARACTER = 3; - - // Unexpected separator character. - UNEXPECTED_SEPARATOR = 4; - - // Unmatched left bracket or parenthesis. - UNMATCHED_LEFT_BRACKET = 5; - - // Unmatched right bracket or parenthesis. - UNMATCHED_RIGHT_BRACKET = 6; - - // Functions are nested too deeply. - TOO_MANY_NESTED_FUNCTIONS = 7; - - // Missing right-hand-side operand. - MISSING_RIGHT_HAND_OPERAND = 8; - - // Invalid operator/function name. - INVALID_OPERATOR_NAME = 9; - - // Feed attribute operand's argument is not an integer. - FEED_ATTRIBUTE_OPERAND_ARGUMENT_NOT_INTEGER = 10; - - // Missing function operands. - NO_OPERANDS = 11; - - // Function had too many operands. - TOO_MANY_OPERANDS = 12; - } - - -} diff --git a/google/ads/googleads/v4/errors/geo_target_constant_suggestion_error.proto b/google/ads/googleads/v4/errors/geo_target_constant_suggestion_error.proto deleted file mode 100644 index e988751c6..000000000 --- a/google/ads/googleads/v4/errors/geo_target_constant_suggestion_error.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantSuggestionErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Container for enum describing possible geo target constant suggestion errors. -message GeoTargetConstantSuggestionErrorEnum { - // Enum describing possible geo target constant suggestion errors. - enum GeoTargetConstantSuggestionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A location name cannot be greater than 300 characters. - LOCATION_NAME_SIZE_LIMIT = 2; - - // At most 25 location names can be specified in a SuggestGeoTargetConstants - // method. - LOCATION_NAME_LIMIT = 3; - - // The country code is invalid. - INVALID_COUNTRY_CODE = 4; - - // Geo target constant resource names or location names must be provided in - // the request. - REQUEST_PARAMETERS_UNSET = 5; - } - - -} diff --git a/google/ads/googleads/v4/errors/header_error.proto b/google/ads/googleads/v4/errors/header_error.proto deleted file mode 100644 index b06b5cb38..000000000 --- a/google/ads/googleads/v4/errors/header_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "HeaderErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing header errors. - -// Container for enum describing possible header errors. -message HeaderErrorEnum { - // Enum describing possible header errors. - enum HeaderError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The login customer id could not be validated. - INVALID_LOGIN_CUSTOMER_ID = 3; - - // The linked customer id could not be validated. - INVALID_LINKED_CUSTOMER_ID = 7; - } - - -} diff --git a/google/ads/googleads/v4/errors/id_error.proto b/google/ads/googleads/v4/errors/id_error.proto deleted file mode 100644 index 9a112d464..000000000 --- a/google/ads/googleads/v4/errors/id_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "IdErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing id errors. - -// Container for enum describing possible id errors. -message IdErrorEnum { - // Enum describing possible id errors. - enum IdError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Id not found - NOT_FOUND = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/image_error.proto b/google/ads/googleads/v4/errors/image_error.proto deleted file mode 100644 index 0d3f8c124..000000000 --- a/google/ads/googleads/v4/errors/image_error.proto +++ /dev/null @@ -1,161 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ImageErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing image errors. - -// Container for enum describing possible image errors. -message ImageErrorEnum { - // Enum describing possible image errors. - enum ImageError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The image is not valid. - INVALID_IMAGE = 2; - - // The image could not be stored. - STORAGE_ERROR = 3; - - // There was a problem with the request. - BAD_REQUEST = 4; - - // The image is not of legal dimensions. - UNEXPECTED_SIZE = 5; - - // Animated image are not permitted. - ANIMATED_NOT_ALLOWED = 6; - - // Animation is too long. - ANIMATION_TOO_LONG = 7; - - // There was an error on the server. - SERVER_ERROR = 8; - - // Image cannot be in CMYK color format. - CMYK_JPEG_NOT_ALLOWED = 9; - - // Flash images are not permitted. - FLASH_NOT_ALLOWED = 10; - - // Flash images must support clickTag. - FLASH_WITHOUT_CLICKTAG = 11; - - // A flash error has occurred after fixing the click tag. - FLASH_ERROR_AFTER_FIXING_CLICK_TAG = 12; - - // Unacceptable visual effects. - ANIMATED_VISUAL_EFFECT = 13; - - // There was a problem with the flash image. - FLASH_ERROR = 14; - - // Incorrect image layout. - LAYOUT_PROBLEM = 15; - - // There was a problem reading the image file. - PROBLEM_READING_IMAGE_FILE = 16; - - // There was an error storing the image. - ERROR_STORING_IMAGE = 17; - - // The aspect ratio of the image is not allowed. - ASPECT_RATIO_NOT_ALLOWED = 18; - - // Flash cannot have network objects. - FLASH_HAS_NETWORK_OBJECTS = 19; - - // Flash cannot have network methods. - FLASH_HAS_NETWORK_METHODS = 20; - - // Flash cannot have a Url. - FLASH_HAS_URL = 21; - - // Flash cannot use mouse tracking. - FLASH_HAS_MOUSE_TRACKING = 22; - - // Flash cannot have a random number. - FLASH_HAS_RANDOM_NUM = 23; - - // Ad click target cannot be '_self'. - FLASH_SELF_TARGETS = 24; - - // GetUrl method should only use '_blank'. - FLASH_BAD_GETURL_TARGET = 25; - - // Flash version is not supported. - FLASH_VERSION_NOT_SUPPORTED = 26; - - // Flash movies need to have hard coded click URL or clickTAG - FLASH_WITHOUT_HARD_CODED_CLICK_URL = 27; - - // Uploaded flash file is corrupted. - INVALID_FLASH_FILE = 28; - - // Uploaded flash file can be parsed, but the click tag can not be fixed - // properly. - FAILED_TO_FIX_CLICK_TAG_IN_FLASH = 29; - - // Flash movie accesses network resources - FLASH_ACCESSES_NETWORK_RESOURCES = 30; - - // Flash movie attempts to call external javascript code - FLASH_EXTERNAL_JS_CALL = 31; - - // Flash movie attempts to call flash system commands - FLASH_EXTERNAL_FS_CALL = 32; - - // Image file is too large. - FILE_TOO_LARGE = 33; - - // Image data is too large. - IMAGE_DATA_TOO_LARGE = 34; - - // Error while processing the image. - IMAGE_PROCESSING_ERROR = 35; - - // Image is too small. - IMAGE_TOO_SMALL = 36; - - // Input was invalid. - INVALID_INPUT = 37; - - // There was a problem reading the image file. - PROBLEM_READING_FILE = 38; - - // Image constraints are violated, but details like ASPECT_RATIO_NOT_ALLOWED - // can't be provided. This happens when asset spec contains more than one - // constraint and different criteria of different constraints are violated. - IMAGE_CONSTRAINTS_VIOLATED = 39; - } - - -} diff --git a/google/ads/googleads/v4/errors/internal_error.proto b/google/ads/googleads/v4/errors/internal_error.proto deleted file mode 100644 index 3f4bda4be..000000000 --- a/google/ads/googleads/v4/errors/internal_error.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "InternalErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing internal errors. - -// Container for enum describing possible internal errors. -message InternalErrorEnum { - // Enum describing possible internal errors. - enum InternalError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Google Ads API encountered unexpected internal error. - INTERNAL_ERROR = 2; - - // The intended error code doesn't exist in specified API version. It will - // be released in a future API version. - ERROR_CODE_NOT_PUBLISHED = 3; - - // Google Ads API encountered an unexpected transient error. The user - // should retry their request in these cases. - TRANSIENT_ERROR = 4; - - // The request took longer than a deadline. - DEADLINE_EXCEEDED = 5; - } - - -} diff --git a/google/ads/googleads/v4/errors/invoice_error.proto b/google/ads/googleads/v4/errors/invoice_error.proto deleted file mode 100644 index 616986bc5..000000000 --- a/google/ads/googleads/v4/errors/invoice_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing invoice errors. - -// Container for enum describing possible invoice errors. -message InvoiceErrorEnum { - // Enum describing possible invoice errors. - enum InvoiceError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot request invoices issued before 2019-01-01. - YEAR_MONTH_TOO_OLD = 2; - - // Cannot request invoices for customer who doesn't receive invoices. - NOT_INVOICED_CUSTOMER = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/keyword_plan_ad_group_error.proto b/google/ads/googleads/v4/errors/keyword_plan_ad_group_error.proto deleted file mode 100644 index 27d5973b5..000000000 --- a/google/ads/googleads/v4/errors/keyword_plan_ad_group_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing errors from applying a keyword plan ad group. - -// Container for enum describing possible errors from applying a keyword plan -// ad group. -message KeywordPlanAdGroupErrorEnum { - // Enum describing possible errors from applying a keyword plan ad group. - enum KeywordPlanAdGroupError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The keyword plan ad group name is missing, empty, longer than allowed - // limit or contains invalid chars. - INVALID_NAME = 2; - - // The keyword plan ad group name is duplicate to an existing keyword plan - // AdGroup name or other keyword plan AdGroup name in the request. - DUPLICATE_NAME = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/keyword_plan_ad_group_keyword_error.proto b/google/ads/googleads/v4/errors/keyword_plan_ad_group_keyword_error.proto deleted file mode 100644 index c37fe027c..000000000 --- a/google/ads/googleads/v4/errors/keyword_plan_ad_group_keyword_error.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupKeywordErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing errors from applying a keyword plan ad group keyword or -// keyword plan campaign keyword. - -// Container for enum describing possible errors from applying an ad group -// keyword or a campaign keyword from a keyword plan. -message KeywordPlanAdGroupKeywordErrorEnum { - // Enum describing possible errors from applying a keyword plan ad group - // keyword or keyword plan campaign keyword. - enum KeywordPlanAdGroupKeywordError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A keyword or negative keyword has invalid match type. - INVALID_KEYWORD_MATCH_TYPE = 2; - - // A keyword or negative keyword with same text and match type already - // exists. - DUPLICATE_KEYWORD = 3; - - // Keyword or negative keyword text exceeds the allowed limit. - KEYWORD_TEXT_TOO_LONG = 4; - - // Keyword or negative keyword text has invalid characters or symbols. - KEYWORD_HAS_INVALID_CHARS = 5; - - // Keyword or negative keyword text has too many words. - KEYWORD_HAS_TOO_MANY_WORDS = 6; - - // Keyword or negative keyword has invalid text. - INVALID_KEYWORD_TEXT = 7; - - // Cpc Bid set for negative keyword. - NEGATIVE_KEYWORD_HAS_CPC_BID = 8; - } - - -} diff --git a/google/ads/googleads/v4/errors/keyword_plan_campaign_error.proto b/google/ads/googleads/v4/errors/keyword_plan_campaign_error.proto deleted file mode 100644 index 94d32690e..000000000 --- a/google/ads/googleads/v4/errors/keyword_plan_campaign_error.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing errors from applying a keyword plan campaign. - -// Container for enum describing possible errors from applying a keyword plan -// campaign. -message KeywordPlanCampaignErrorEnum { - // Enum describing possible errors from applying a keyword plan campaign. - enum KeywordPlanCampaignError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A keyword plan campaign name is missing, empty, longer than allowed limit - // or contains invalid chars. - INVALID_NAME = 2; - - // A keyword plan campaign contains one or more untargetable languages. - INVALID_LANGUAGES = 3; - - // A keyword plan campaign contains one or more invalid geo targets. - INVALID_GEOS = 4; - - // The keyword plan campaign name is duplicate to an existing keyword plan - // campaign name or other keyword plan campaign name in the request. - DUPLICATE_NAME = 5; - - // The number of geo targets in the keyword plan campaign exceeds limits. - MAX_GEOS_EXCEEDED = 6; - - // The number of languages in the keyword plan campaign exceeds limits. - MAX_LANGUAGES_EXCEEDED = 7; - } - - -} diff --git a/google/ads/googleads/v4/errors/keyword_plan_campaign_keyword_error.proto b/google/ads/googleads/v4/errors/keyword_plan_campaign_keyword_error.proto deleted file mode 100644 index 444fe5d65..000000000 --- a/google/ads/googleads/v4/errors/keyword_plan_campaign_keyword_error.proto +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignKeywordErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing errors from applying a keyword plan campaign keyword. - -// Container for enum describing possible errors from applying a keyword plan -// campaign keyword. -message KeywordPlanCampaignKeywordErrorEnum { - // Enum describing possible errors from applying a keyword plan campaign - // keyword. - enum KeywordPlanCampaignKeywordError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Keyword plan campaign keyword is positive. - CAMPAIGN_KEYWORD_IS_POSITIVE = 8; - } - - -} diff --git a/google/ads/googleads/v4/errors/keyword_plan_error.proto b/google/ads/googleads/v4/errors/keyword_plan_error.proto deleted file mode 100644 index c5cf07f3b..000000000 --- a/google/ads/googleads/v4/errors/keyword_plan_error.proto +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing errors from applying keyword plan resources (keyword -// plan, keyword plan campaign, keyword plan ad group or keyword plan keyword) -// or KeywordPlanService RPC. - -// Container for enum describing possible errors from applying a keyword plan -// resource (keyword plan, keyword plan campaign, keyword plan ad group or -// keyword plan keyword) or KeywordPlanService RPC. -message KeywordPlanErrorEnum { - // Enum describing possible errors from applying a keyword plan. - enum KeywordPlanError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The plan's bid multiplier value is outside the valid range. - BID_MULTIPLIER_OUT_OF_RANGE = 2; - - // The plan's bid value is too high. - BID_TOO_HIGH = 3; - - // The plan's bid value is too low. - BID_TOO_LOW = 4; - - // The plan's cpc bid is not a multiple of the minimum billable unit. - BID_TOO_MANY_FRACTIONAL_DIGITS = 5; - - // The plan's daily budget value is too low. - DAILY_BUDGET_TOO_LOW = 6; - - // The plan's daily budget is not a multiple of the minimum billable unit. - DAILY_BUDGET_TOO_MANY_FRACTIONAL_DIGITS = 7; - - // The input has an invalid value. - INVALID_VALUE = 8; - - // The plan has no keyword. - KEYWORD_PLAN_HAS_NO_KEYWORDS = 9; - - // The plan is not enabled and API cannot provide mutation, forecast or - // stats. - KEYWORD_PLAN_NOT_ENABLED = 10; - - // The requested plan cannot be found for providing forecast or stats. - KEYWORD_PLAN_NOT_FOUND = 11; - - // The plan is missing a cpc bid. - MISSING_BID = 13; - - // The plan is missing required forecast_period field. - MISSING_FORECAST_PERIOD = 14; - - // The plan's forecast_period has invalid forecast date range. - INVALID_FORECAST_DATE_RANGE = 15; - - // The plan's name is invalid. - INVALID_NAME = 16; - } - - -} diff --git a/google/ads/googleads/v4/errors/keyword_plan_idea_error.proto b/google/ads/googleads/v4/errors/keyword_plan_idea_error.proto deleted file mode 100644 index e650971cc..000000000 --- a/google/ads/googleads/v4/errors/keyword_plan_idea_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanIdeaErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing errors from KeywordPlanIdeaService. - -// Container for enum describing possible errors from KeywordPlanIdeaService. -message KeywordPlanIdeaErrorEnum { - // Enum describing possible errors from KeywordPlanIdeaService. - enum KeywordPlanIdeaError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Error when crawling the input URL. - URL_CRAWL_ERROR = 2; - - // The input has an invalid value. - INVALID_VALUE = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/label_error.proto b/google/ads/googleads/v4/errors/label_error.proto deleted file mode 100644 index b639ee2a7..000000000 --- a/google/ads/googleads/v4/errors/label_error.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "LabelErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing label errors. - -// Container for enum describing possible label errors. -message LabelErrorEnum { - // Enum describing possible label errors. - enum LabelError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An inactive label cannot be applied. - CANNOT_APPLY_INACTIVE_LABEL = 2; - - // A label cannot be applied to a disabled ad group criterion. - CANNOT_APPLY_LABEL_TO_DISABLED_AD_GROUP_CRITERION = 3; - - // A label cannot be applied to a negative ad group criterion. - CANNOT_APPLY_LABEL_TO_NEGATIVE_AD_GROUP_CRITERION = 4; - - // Cannot apply more than 50 labels per resource. - EXCEEDED_LABEL_LIMIT_PER_TYPE = 5; - - // Labels from a manager account cannot be applied to campaign, ad group, - // ad group ad, or ad group criterion resources. - INVALID_RESOURCE_FOR_MANAGER_LABEL = 6; - - // Label names must be unique. - DUPLICATE_NAME = 7; - - // Label names cannot be empty. - INVALID_LABEL_NAME = 8; - - // Labels cannot be applied to a draft. - CANNOT_ATTACH_LABEL_TO_DRAFT = 9; - - // Labels not from a manager account cannot be applied to the customer - // resource. - CANNOT_ATTACH_NON_MANAGER_LABEL_TO_CUSTOMER = 10; - } - - -} diff --git a/google/ads/googleads/v4/errors/language_code_error.proto b/google/ads/googleads/v4/errors/language_code_error.proto deleted file mode 100644 index 8b7ff5818..000000000 --- a/google/ads/googleads/v4/errors/language_code_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "LanguageCodeErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing language code errors. - -// Container for enum describing language code errors. -message LanguageCodeErrorEnum { - // Enum describing language code errors. - enum LanguageCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The input language code is not recognized. - LANGUAGE_CODE_NOT_FOUND = 2; - - // The language is not allowed to use. - INVALID_LANGUAGE_CODE = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/list_operation_error.proto b/google/ads/googleads/v4/errors/list_operation_error.proto deleted file mode 100644 index fae40ffca..000000000 --- a/google/ads/googleads/v4/errors/list_operation_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ListOperationErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing list operation errors. - -// Container for enum describing possible list operation errors. -message ListOperationErrorEnum { - // Enum describing possible list operation errors. - enum ListOperationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Field required in value is missing. - REQUIRED_FIELD_MISSING = 7; - - // Duplicate or identical value is sent in multiple list operations. - DUPLICATE_VALUES = 8; - } - - -} diff --git a/google/ads/googleads/v4/errors/manager_link_error.proto b/google/ads/googleads/v4/errors/manager_link_error.proto deleted file mode 100644 index bf10f5d2e..000000000 --- a/google/ads/googleads/v4/errors/manager_link_error.proto +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ManagerLinkErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing ManagerLink errors. - -// Container for enum describing possible ManagerLink errors. -message ManagerLinkErrorEnum { - // Enum describing possible ManagerLink errors. - enum ManagerLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The manager and client have incompatible account types. - ACCOUNTS_NOT_COMPATIBLE_FOR_LINKING = 2; - - // Client is already linked to too many managers. - TOO_MANY_MANAGERS = 3; - - // Manager has too many pending invitations. - TOO_MANY_INVITES = 4; - - // Client is already invited by this manager. - ALREADY_INVITED_BY_THIS_MANAGER = 5; - - // The client is already managed by this manager. - ALREADY_MANAGED_BY_THIS_MANAGER = 6; - - // Client is already managed in hierarchy. - ALREADY_MANAGED_IN_HIERARCHY = 7; - - // Manger and sub-manager to be linked have duplicate client. - DUPLICATE_CHILD_FOUND = 8; - - // Client has no active user that can access the client account. - CLIENT_HAS_NO_ADMIN_USER = 9; - - // Adding this link would exceed the maximum hierarchy depth. - MAX_DEPTH_EXCEEDED = 10; - - // Adding this link will create a cycle. - CYCLE_NOT_ALLOWED = 11; - - // Manager account has the maximum number of linked clients. - TOO_MANY_ACCOUNTS = 12; - - // Parent manager account has the maximum number of linked clients. - TOO_MANY_ACCOUNTS_AT_MANAGER = 13; - - // The account is not authorized owner. - NON_OWNER_USER_CANNOT_MODIFY_LINK = 14; - - // Your manager account is suspended, and you are no longer allowed to link - // to clients. - SUSPENDED_ACCOUNT_CANNOT_ADD_CLIENTS = 15; - - // You are not allowed to move a client to a manager that is not under your - // current hierarchy. - CLIENT_OUTSIDE_TREE = 16; - - // The changed status for mutate link is invalid. - INVALID_STATUS_CHANGE = 17; - - // The change for mutate link is invalid. - INVALID_CHANGE = 18; - } - - -} diff --git a/google/ads/googleads/v4/errors/media_bundle_error.proto b/google/ads/googleads/v4/errors/media_bundle_error.proto deleted file mode 100644 index 67ad3a401..000000000 --- a/google/ads/googleads/v4/errors/media_bundle_error.proto +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MediaBundleErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing media bundle errors. - -// Container for enum describing possible media bundle errors. -message MediaBundleErrorEnum { - // Enum describing possible media bundle errors. - enum MediaBundleError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // There was a problem with the request. - BAD_REQUEST = 3; - - // HTML5 ads using DoubleClick Studio created ZIP files are not supported. - DOUBLECLICK_BUNDLE_NOT_ALLOWED = 4; - - // Cannot reference URL external to the media bundle. - EXTERNAL_URL_NOT_ALLOWED = 5; - - // Media bundle file is too large. - FILE_TOO_LARGE = 6; - - // ZIP file from Google Web Designer is not published. - GOOGLE_WEB_DESIGNER_ZIP_FILE_NOT_PUBLISHED = 7; - - // Input was invalid. - INVALID_INPUT = 8; - - // There was a problem with the media bundle. - INVALID_MEDIA_BUNDLE = 9; - - // There was a problem with one or more of the media bundle entries. - INVALID_MEDIA_BUNDLE_ENTRY = 10; - - // The media bundle contains a file with an unknown mime type - INVALID_MIME_TYPE = 11; - - // The media bundle contain an invalid asset path. - INVALID_PATH = 12; - - // HTML5 ad is trying to reference an asset not in .ZIP file - INVALID_URL_REFERENCE = 13; - - // Media data is too large. - MEDIA_DATA_TOO_LARGE = 14; - - // The media bundle contains no primary entry. - MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY = 15; - - // There was an error on the server. - SERVER_ERROR = 16; - - // The image could not be stored. - STORAGE_ERROR = 17; - - // Media bundle created with the Swiffy tool is not allowed. - SWIFFY_BUNDLE_NOT_ALLOWED = 18; - - // The media bundle contains too many files. - TOO_MANY_FILES = 19; - - // The media bundle is not of legal dimensions. - UNEXPECTED_SIZE = 20; - - // Google Web Designer not created for "Google Ads" environment. - UNSUPPORTED_GOOGLE_WEB_DESIGNER_ENVIRONMENT = 21; - - // Unsupported HTML5 feature in HTML5 asset. - UNSUPPORTED_HTML5_FEATURE = 22; - - // URL in HTML5 entry is not ssl compliant. - URL_IN_MEDIA_BUNDLE_NOT_SSL_COMPLIANT = 23; - - // Custom exits not allowed in HTML5 entry. - CUSTOM_EXIT_NOT_ALLOWED = 24; - } - - -} diff --git a/google/ads/googleads/v4/errors/media_file_error.proto b/google/ads/googleads/v4/errors/media_file_error.proto deleted file mode 100644 index 4d99d133f..000000000 --- a/google/ads/googleads/v4/errors/media_file_error.proto +++ /dev/null @@ -1,113 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MediaFileErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing media file errors. - -// Container for enum describing possible media file errors. -message MediaFileErrorEnum { - // Enum describing possible media file errors. - enum MediaFileError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot create a standard icon type. - CANNOT_CREATE_STANDARD_ICON = 2; - - // May only select Standard Icons alone. - CANNOT_SELECT_STANDARD_ICON_WITH_OTHER_TYPES = 3; - - // Image contains both a media file ID and data. - CANNOT_SPECIFY_MEDIA_FILE_ID_AND_DATA = 4; - - // A media file with given type and reference ID already exists. - DUPLICATE_MEDIA = 5; - - // A required field was not specified or is an empty string. - EMPTY_FIELD = 6; - - // A media file may only be modified once per call. - RESOURCE_REFERENCED_IN_MULTIPLE_OPS = 7; - - // Field is not supported for the media sub type. - FIELD_NOT_SUPPORTED_FOR_MEDIA_SUB_TYPE = 8; - - // The media file ID is invalid. - INVALID_MEDIA_FILE_ID = 9; - - // The media subtype is invalid. - INVALID_MEDIA_SUB_TYPE = 10; - - // The media file type is invalid. - INVALID_MEDIA_FILE_TYPE = 11; - - // The mimetype is invalid. - INVALID_MIME_TYPE = 12; - - // The media reference ID is invalid. - INVALID_REFERENCE_ID = 13; - - // The YouTube video ID is invalid. - INVALID_YOU_TUBE_ID = 14; - - // Media file has failed transcoding - MEDIA_FILE_FAILED_TRANSCODING = 15; - - // Media file has not been transcoded. - MEDIA_NOT_TRANSCODED = 16; - - // The media type does not match the actual media file's type. - MEDIA_TYPE_DOES_NOT_MATCH_MEDIA_FILE_TYPE = 17; - - // None of the fields have been specified. - NO_FIELDS_SPECIFIED = 18; - - // One of reference ID or media file ID must be specified. - NULL_REFERENCE_ID_AND_MEDIA_ID = 19; - - // The string has too many characters. - TOO_LONG = 20; - - // The specified type is not supported. - UNSUPPORTED_TYPE = 21; - - // YouTube is unavailable for requesting video data. - YOU_TUBE_SERVICE_UNAVAILABLE = 22; - - // The YouTube video has a non positive duration. - YOU_TUBE_VIDEO_HAS_NON_POSITIVE_DURATION = 23; - - // The YouTube video ID is syntactically valid but the video was not found. - YOU_TUBE_VIDEO_NOT_FOUND = 24; - } - - -} diff --git a/google/ads/googleads/v4/errors/media_upload_error.proto b/google/ads/googleads/v4/errors/media_upload_error.proto deleted file mode 100644 index 8c046c59e..000000000 --- a/google/ads/googleads/v4/errors/media_upload_error.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MediaUploadErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing media uploading errors. - -// Container for enum describing possible media uploading errors. -message MediaUploadErrorEnum { - // Enum describing possible media uploading errors. - enum MediaUploadError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The uploaded file is too big. - FILE_TOO_BIG = 2; - - // Image data is unparseable. - UNPARSEABLE_IMAGE = 3; - - // Animated images are not allowed. - ANIMATED_IMAGE_NOT_ALLOWED = 4; - - // The image or media bundle format is not allowed. - FORMAT_NOT_ALLOWED = 5; - - // Cannot reference URL external to the media bundle. - EXTERNAL_URL_NOT_ALLOWED = 6; - - // HTML5 ad is trying to reference an asset not in .ZIP file. - INVALID_URL_REFERENCE = 7; - - // The media bundle contains no primary entry. - MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY = 8; - } - - -} diff --git a/google/ads/googleads/v4/errors/multiplier_error.proto b/google/ads/googleads/v4/errors/multiplier_error.proto deleted file mode 100644 index 6136b6d4c..000000000 --- a/google/ads/googleads/v4/errors/multiplier_error.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MultiplierErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing multiplier errors. - -// Container for enum describing possible multiplier errors. -message MultiplierErrorEnum { - // Enum describing possible multiplier errors. - enum MultiplierError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Multiplier value is too high - MULTIPLIER_TOO_HIGH = 2; - - // Multiplier value is too low - MULTIPLIER_TOO_LOW = 3; - - // Too many fractional digits - TOO_MANY_FRACTIONAL_DIGITS = 4; - - // A multiplier cannot be set for this bidding strategy - MULTIPLIER_NOT_ALLOWED_FOR_BIDDING_STRATEGY = 5; - - // A multiplier cannot be set when there is no base bid (e.g., content max - // cpc) - MULTIPLIER_NOT_ALLOWED_WHEN_BASE_BID_IS_MISSING = 6; - - // A bid multiplier must be specified - NO_MULTIPLIER_SPECIFIED = 7; - - // Multiplier causes bid to exceed daily budget - MULTIPLIER_CAUSES_BID_TO_EXCEED_DAILY_BUDGET = 8; - - // Multiplier causes bid to exceed monthly budget - MULTIPLIER_CAUSES_BID_TO_EXCEED_MONTHLY_BUDGET = 9; - - // Multiplier causes bid to exceed custom budget - MULTIPLIER_CAUSES_BID_TO_EXCEED_CUSTOM_BUDGET = 10; - - // Multiplier causes bid to exceed maximum allowed bid - MULTIPLIER_CAUSES_BID_TO_EXCEED_MAX_ALLOWED_BID = 11; - - // Multiplier causes bid to become less than the minimum bid allowed - BID_LESS_THAN_MIN_ALLOWED_BID_WITH_MULTIPLIER = 12; - - // Multiplier type (cpc vs. cpm) needs to match campaign's bidding strategy - MULTIPLIER_AND_BIDDING_STRATEGY_TYPE_MISMATCH = 13; - } - - -} diff --git a/google/ads/googleads/v4/errors/mutate_error.proto b/google/ads/googleads/v4/errors/mutate_error.proto deleted file mode 100644 index 29888fa6a..000000000 --- a/google/ads/googleads/v4/errors/mutate_error.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MutateErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing mutate errors. - -// Container for enum describing possible mutate errors. -message MutateErrorEnum { - // Enum describing possible mutate errors. - enum MutateError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Requested resource was not found. - RESOURCE_NOT_FOUND = 3; - - // Cannot mutate the same resource twice in one request. - ID_EXISTS_IN_MULTIPLE_MUTATES = 7; - - // The field's contents don't match another field that represents the same - // data. - INCONSISTENT_FIELD_VALUES = 8; - - // Mutates are not allowed for the requested resource. - MUTATE_NOT_ALLOWED = 9; - - // The resource isn't in Google Ads. It belongs to another ads system. - RESOURCE_NOT_IN_GOOGLE_ADS = 10; - - // The resource being created already exists. - RESOURCE_ALREADY_EXISTS = 11; - - // This resource cannot be used with "validate_only". - RESOURCE_DOES_NOT_SUPPORT_VALIDATE_ONLY = 12; - - // Attempt to write to read-only fields. - RESOURCE_READ_ONLY = 13; - } - - -} diff --git a/google/ads/googleads/v4/errors/new_resource_creation_error.proto b/google/ads/googleads/v4/errors/new_resource_creation_error.proto deleted file mode 100644 index 6282b49a6..000000000 --- a/google/ads/googleads/v4/errors/new_resource_creation_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NewResourceCreationErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing new resource creation errors. - -// Container for enum describing possible new resource creation errors. -message NewResourceCreationErrorEnum { - // Enum describing possible new resource creation errors. - enum NewResourceCreationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Do not set the id field while creating new resources. - CANNOT_SET_ID_FOR_CREATE = 2; - - // Creating more than one resource with the same temp ID is not allowed. - DUPLICATE_TEMP_IDS = 3; - - // Parent resource with specified temp ID failed validation, so no - // validation will be done for this child resource. - TEMP_ID_RESOURCE_HAD_ERRORS = 4; - } - - -} diff --git a/google/ads/googleads/v4/errors/not_empty_error.proto b/google/ads/googleads/v4/errors/not_empty_error.proto deleted file mode 100644 index b61b54316..000000000 --- a/google/ads/googleads/v4/errors/not_empty_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NotEmptyErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing not empty errors. - -// Container for enum describing possible not empty errors. -message NotEmptyErrorEnum { - // Enum describing possible not empty errors. - enum NotEmptyError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Empty list. - EMPTY_LIST = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/not_whitelisted_error.proto b/google/ads/googleads/v4/errors/not_whitelisted_error.proto deleted file mode 100644 index 127c878ce..000000000 --- a/google/ads/googleads/v4/errors/not_whitelisted_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NotWhitelistedErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing not whitelisted errors. - -// Container for enum describing possible not whitelisted errors. -message NotWhitelistedErrorEnum { - // Enum describing possible not whitelisted errors. - enum NotWhitelistedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Customer is not whitelisted for accessing this feature. - CUSTOMER_NOT_WHITELISTED_FOR_THIS_FEATURE = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/null_error.proto b/google/ads/googleads/v4/errors/null_error.proto deleted file mode 100644 index dd5c0813c..000000000 --- a/google/ads/googleads/v4/errors/null_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NullErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing null errors. - -// Container for enum describing possible null errors. -message NullErrorEnum { - // Enum describing possible null errors. - enum NullError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Specified list/container must not contain any null elements - NULL_CONTENT = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/offline_user_data_job_error.proto b/google/ads/googleads/v4/errors/offline_user_data_job_error.proto deleted file mode 100644 index 46003f266..000000000 --- a/google/ads/googleads/v4/errors/offline_user_data_job_error.proto +++ /dev/null @@ -1,134 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing offline user data job errors. - -// Container for enum describing possible offline user data job errors. -message OfflineUserDataJobErrorEnum { - // Enum describing possible request errors. - enum OfflineUserDataJobError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The user list ID provided for the job is invalid. - INVALID_USER_LIST_ID = 3; - - // Type of the user list is not applicable for the job. - INVALID_USER_LIST_TYPE = 4; - - // Customer is not on the allow-list for using user ID in upload data. - NOT_WHITELISTED_FOR_USER_ID = 5; - - // Upload data is not compatible with the upload key type of the associated - // user list. - INCOMPATIBLE_UPLOAD_KEY_TYPE = 6; - - // The user identifier is missing valid data. - MISSING_USER_IDENTIFIER = 7; - - // The mobile ID is malformed. - INVALID_MOBILE_ID_FORMAT = 8; - - // Maximum number of user identifiers allowed per request is 100,000. - TOO_MANY_USER_IDENTIFIERS = 9; - - // Customer is not on the allow-list for store sales direct data. - NOT_WHITELISTED_FOR_STORE_SALES_DIRECT = 10; - - // Customer is not on the allow-list for unified store sales data. - NOT_WHITELISTED_FOR_UNIFIED_STORE_SALES = 28; - - // The partner ID in store sales direct metadata is invalid. - INVALID_PARTNER_ID = 11; - - // The data in user identifier should not be encoded. - INVALID_ENCODING = 12; - - // The country code is invalid. - INVALID_COUNTRY_CODE = 13; - - // Incompatible user identifier when using third_party_user_id for store - // sales direct first party data or not using third_party_user_id for store - // sales third party data. - INCOMPATIBLE_USER_IDENTIFIER = 14; - - // A transaction time in the future is not allowed. - FUTURE_TRANSACTION_TIME = 15; - - // The conversion_action specified in transaction_attributes is used to - // report conversions to a conversion action configured in Google Ads. This - // error indicates there is no such conversion action in the account. - INVALID_CONVERSION_ACTION = 16; - - // Mobile ID is not supported for store sales direct data. - MOBILE_ID_NOT_SUPPORTED = 17; - - // When a remove-all operation is provided, it has to be the first operation - // of the operation list. - INVALID_OPERATION_ORDER = 18; - - // Mixing creation and removal of offline data in the same job is not - // allowed. - CONFLICTING_OPERATION = 19; - - // The external update ID already exists. - EXTERNAL_UPDATE_ID_ALREADY_EXISTS = 21; - - // Once the upload job is started, new operations cannot be added. - JOB_ALREADY_STARTED = 22; - - // Remove operation is not allowed for store sales direct updates. - REMOVE_NOT_SUPPORTED = 23; - - // Remove-all is not supported for certain offline user data job types. - REMOVE_ALL_NOT_SUPPORTED = 24; - - // The SHA256 encoded value is malformed. - INVALID_SHA256_FORMAT = 25; - - // The custom key specified is not enabled for the unified store sales - // upload. - CUSTOM_KEY_DISABLED = 26; - - // The custom key specified is not predefined through the Google Ads UI. - CUSTOM_KEY_NOT_PREDEFINED = 27; - - // The custom key specified is not set in the upload. - CUSTOM_KEY_NOT_SET = 29; - - // The customer has not accepted the customer data terms in the conversion - // settings page. - CUSTOMER_NOT_ACCEPTED_CUSTOMER_DATA_TERMS = 30; - } - - -} diff --git a/google/ads/googleads/v4/errors/operation_access_denied_error.proto b/google/ads/googleads/v4/errors/operation_access_denied_error.proto deleted file mode 100644 index 555e08d99..000000000 --- a/google/ads/googleads/v4/errors/operation_access_denied_error.proto +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "OperationAccessDeniedErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing operation access denied errors. - -// Container for enum describing possible operation access denied errors. -message OperationAccessDeniedErrorEnum { - // Enum describing possible operation access denied errors. - enum OperationAccessDeniedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Unauthorized invocation of a service's method (get, mutate, etc.) - ACTION_NOT_PERMITTED = 2; - - // Unauthorized CREATE operation in invoking a service's mutate method. - CREATE_OPERATION_NOT_PERMITTED = 3; - - // Unauthorized REMOVE operation in invoking a service's mutate method. - REMOVE_OPERATION_NOT_PERMITTED = 4; - - // Unauthorized UPDATE operation in invoking a service's mutate method. - UPDATE_OPERATION_NOT_PERMITTED = 5; - - // A mutate action is not allowed on this campaign, from this client. - MUTATE_ACTION_NOT_PERMITTED_FOR_CLIENT = 6; - - // This operation is not permitted on this campaign type - OPERATION_NOT_PERMITTED_FOR_CAMPAIGN_TYPE = 7; - - // A CREATE operation may not set status to REMOVED. - CREATE_AS_REMOVED_NOT_PERMITTED = 8; - - // This operation is not allowed because the campaign or adgroup is removed. - OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 9; - - // This operation is not permitted on this ad group type. - OPERATION_NOT_PERMITTED_FOR_AD_GROUP_TYPE = 10; - - // The mutate is not allowed for this customer. - MUTATE_NOT_PERMITTED_FOR_CUSTOMER = 11; - } - - -} diff --git a/google/ads/googleads/v4/errors/operator_error.proto b/google/ads/googleads/v4/errors/operator_error.proto deleted file mode 100644 index 24db27904..000000000 --- a/google/ads/googleads/v4/errors/operator_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "OperatorErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing operator errors. - -// Container for enum describing possible operator errors. -message OperatorErrorEnum { - // Enum describing possible operator errors. - enum OperatorError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Operator not supported. - OPERATOR_NOT_SUPPORTED = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/partial_failure_error.proto b/google/ads/googleads/v4/errors/partial_failure_error.proto deleted file mode 100644 index aba95f2ff..000000000 --- a/google/ads/googleads/v4/errors/partial_failure_error.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PartialFailureErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing partial failure errors. - -// Container for enum describing possible partial failure errors. -message PartialFailureErrorEnum { - // Enum describing possible partial failure errors. - enum PartialFailureError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The partial failure field was false in the request. - // This method requires this field be set to true. - PARTIAL_FAILURE_MODE_REQUIRED = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/payments_account_error.proto b/google/ads/googleads/v4/errors/payments_account_error.proto deleted file mode 100644 index ec43fbf91..000000000 --- a/google/ads/googleads/v4/errors/payments_account_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PaymentsAccountErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing payments account service errors. - -// Container for enum describing possible errors in payments account service. -message PaymentsAccountErrorEnum { - // Enum describing possible errors in payments account service. - enum PaymentsAccountError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Manager customers are not supported for payments account service. - NOT_SUPPORTED_FOR_MANAGER_CUSTOMER = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/policy_finding_error.proto b/google/ads/googleads/v4/errors/policy_finding_error.proto deleted file mode 100644 index 0e7fe1796..000000000 --- a/google/ads/googleads/v4/errors/policy_finding_error.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PolicyFindingErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing policy finding errors. - -// Container for enum describing possible policy finding errors. -message PolicyFindingErrorEnum { - // Enum describing possible policy finding errors. - enum PolicyFindingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The resource has been disapproved since the policy summary includes - // policy topics of type PROHIBITED. - POLICY_FINDING = 2; - - // The given policy topic does not exist. - POLICY_TOPIC_NOT_FOUND = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/policy_validation_parameter_error.proto b/google/ads/googleads/v4/errors/policy_validation_parameter_error.proto deleted file mode 100644 index fcca63865..000000000 --- a/google/ads/googleads/v4/errors/policy_validation_parameter_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PolicyValidationParameterErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing policy validation parameter errors. - -// Container for enum describing possible policy validation parameter errors. -message PolicyValidationParameterErrorEnum { - // Enum describing possible policy validation parameter errors. - enum PolicyValidationParameterError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Ignorable policy topics are not supported for the ad type. - UNSUPPORTED_AD_TYPE_FOR_IGNORABLE_POLICY_TOPICS = 2; - - // Exempt policy violation keys are not supported for the ad type. - UNSUPPORTED_AD_TYPE_FOR_EXEMPT_POLICY_VIOLATION_KEYS = 3; - - // Cannot set ignorable policy topics and exempt policy violation keys in - // the same policy violation parameter. - CANNOT_SET_BOTH_IGNORABLE_POLICY_TOPICS_AND_EXEMPT_POLICY_VIOLATION_KEYS = 4; - } - - -} diff --git a/google/ads/googleads/v4/errors/policy_violation_error.proto b/google/ads/googleads/v4/errors/policy_violation_error.proto deleted file mode 100644 index cb1d325d2..000000000 --- a/google/ads/googleads/v4/errors/policy_violation_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PolicyViolationErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing policy violation errors. - -// Container for enum describing possible policy violation errors. -message PolicyViolationErrorEnum { - // Enum describing possible policy violation errors. - enum PolicyViolationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A policy was violated. See PolicyViolationDetails for more detail. - POLICY_ERROR = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/query_error.proto b/google/ads/googleads/v4/errors/query_error.proto deleted file mode 100644 index ce1133b64..000000000 --- a/google/ads/googleads/v4/errors/query_error.proto +++ /dev/null @@ -1,218 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "QueryErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing query errors. - -// Container for enum describing possible query errors. -message QueryErrorEnum { - // Enum describing possible query errors. - enum QueryError { - // Name unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Returned if all other query error reasons are not applicable. - QUERY_ERROR = 50; - - // A condition used in the query references an invalid enum constant. - BAD_ENUM_CONSTANT = 18; - - // Query contains an invalid escape sequence. - BAD_ESCAPE_SEQUENCE = 7; - - // Field name is invalid. - BAD_FIELD_NAME = 12; - - // Limit value is invalid (i.e. not a number) - BAD_LIMIT_VALUE = 15; - - // Encountered number can not be parsed. - BAD_NUMBER = 5; - - // Invalid operator encountered. - BAD_OPERATOR = 3; - - // Parameter unknown or not supported. - BAD_PARAMETER_NAME = 61; - - // Parameter have invalid value. - BAD_PARAMETER_VALUE = 62; - - // Invalid resource type was specified in the FROM clause. - BAD_RESOURCE_TYPE_IN_FROM_CLAUSE = 45; - - // Non-ASCII symbol encountered outside of strings. - BAD_SYMBOL = 2; - - // Value is invalid. - BAD_VALUE = 4; - - // Date filters fail to restrict date to a range smaller than 31 days. - // Applicable if the query is segmented by date. - DATE_RANGE_TOO_WIDE = 36; - - // Filters on date/week/month/quarter have a start date after - // end date. - DATE_RANGE_TOO_NARROW = 60; - - // Expected AND between values with BETWEEN operator. - EXPECTED_AND = 30; - - // Expecting ORDER BY to have BY. - EXPECTED_BY = 14; - - // There was no dimension field selected. - EXPECTED_DIMENSION_FIELD_IN_SELECT_CLAUSE = 37; - - // Missing filters on date related fields. - EXPECTED_FILTERS_ON_DATE_RANGE = 55; - - // Missing FROM clause. - EXPECTED_FROM = 44; - - // The operator used in the conditions requires the value to be a list. - EXPECTED_LIST = 41; - - // Fields used in WHERE or ORDER BY clauses are missing from the SELECT - // clause. - EXPECTED_REFERENCED_FIELD_IN_SELECT_CLAUSE = 16; - - // SELECT is missing at the beginning of query. - EXPECTED_SELECT = 13; - - // A list was passed as a value to a condition whose operator expects a - // single value. - EXPECTED_SINGLE_VALUE = 42; - - // Missing one or both values with BETWEEN operator. - EXPECTED_VALUE_WITH_BETWEEN_OPERATOR = 29; - - // Invalid date format. Expected 'YYYY-MM-DD'. - INVALID_DATE_FORMAT = 38; - - // Value passed was not a string when it should have been. I.e., it was a - // number or unquoted literal. - INVALID_STRING_VALUE = 57; - - // A String value passed to the BETWEEN operator does not parse as a date. - INVALID_VALUE_WITH_BETWEEN_OPERATOR = 26; - - // The value passed to the DURING operator is not a Date range literal - INVALID_VALUE_WITH_DURING_OPERATOR = 22; - - // A non-string value was passed to the LIKE operator. - INVALID_VALUE_WITH_LIKE_OPERATOR = 56; - - // An operator was provided that is inapplicable to the field being - // filtered. - OPERATOR_FIELD_MISMATCH = 35; - - // A Condition was found with an empty list. - PROHIBITED_EMPTY_LIST_IN_CONDITION = 28; - - // A condition used in the query references an unsupported enum constant. - PROHIBITED_ENUM_CONSTANT = 54; - - // Fields that are not allowed to be selected together were included in - // the SELECT clause. - PROHIBITED_FIELD_COMBINATION_IN_SELECT_CLAUSE = 31; - - // A field that is not orderable was included in the ORDER BY clause. - PROHIBITED_FIELD_IN_ORDER_BY_CLAUSE = 40; - - // A field that is not selectable was included in the SELECT clause. - PROHIBITED_FIELD_IN_SELECT_CLAUSE = 23; - - // A field that is not filterable was included in the WHERE clause. - PROHIBITED_FIELD_IN_WHERE_CLAUSE = 24; - - // Resource type specified in the FROM clause is not supported by this - // service. - PROHIBITED_RESOURCE_TYPE_IN_FROM_CLAUSE = 43; - - // A field that comes from an incompatible resource was included in the - // SELECT clause. - PROHIBITED_RESOURCE_TYPE_IN_SELECT_CLAUSE = 48; - - // A field that comes from an incompatible resource was included in the - // WHERE clause. - PROHIBITED_RESOURCE_TYPE_IN_WHERE_CLAUSE = 58; - - // A metric incompatible with the main resource or other selected - // segmenting resources was included in the SELECT or WHERE clause. - PROHIBITED_METRIC_IN_SELECT_OR_WHERE_CLAUSE = 49; - - // A segment incompatible with the main resource or other selected - // segmenting resources was included in the SELECT or WHERE clause. - PROHIBITED_SEGMENT_IN_SELECT_OR_WHERE_CLAUSE = 51; - - // A segment in the SELECT clause is incompatible with a metric in the - // SELECT or WHERE clause. - PROHIBITED_SEGMENT_WITH_METRIC_IN_SELECT_OR_WHERE_CLAUSE = 53; - - // The value passed to the limit clause is too low. - LIMIT_VALUE_TOO_LOW = 25; - - // Query has a string containing a newline character. - PROHIBITED_NEWLINE_IN_STRING = 8; - - // List contains values of different types. - PROHIBITED_VALUE_COMBINATION_IN_LIST = 10; - - // The values passed to the BETWEEN operator are not of the same type. - PROHIBITED_VALUE_COMBINATION_WITH_BETWEEN_OPERATOR = 21; - - // Query contains unterminated string. - STRING_NOT_TERMINATED = 6; - - // Too many segments are specified in SELECT clause. - TOO_MANY_SEGMENTS = 34; - - // Query is incomplete and cannot be parsed. - UNEXPECTED_END_OF_QUERY = 9; - - // FROM clause cannot be specified in this query. - UNEXPECTED_FROM_CLAUSE = 47; - - // Query contains one or more unrecognized fields. - UNRECOGNIZED_FIELD = 32; - - // Query has an unexpected extra part. - UNEXPECTED_INPUT = 11; - - // Metrics cannot be requested for a manager account. To retrieve metrics, - // issue separate requests against each client account under the manager - // account. - REQUESTED_METRICS_FOR_MANAGER = 59; - } - - -} diff --git a/google/ads/googleads/v4/errors/quota_error.proto b/google/ads/googleads/v4/errors/quota_error.proto deleted file mode 100644 index 9b68bef14..000000000 --- a/google/ads/googleads/v4/errors/quota_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "QuotaErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing quota errors. - -// Container for enum describing possible quota errors. -message QuotaErrorEnum { - // Enum describing possible quota errors. - enum QuotaError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Too many requests. - RESOURCE_EXHAUSTED = 2; - - // Access is prohibited. - ACCESS_PROHIBITED = 3; - - // Too many requests in a short amount of time. - RESOURCE_TEMPORARILY_EXHAUSTED = 4; - } - - -} diff --git a/google/ads/googleads/v4/errors/range_error.proto b/google/ads/googleads/v4/errors/range_error.proto deleted file mode 100644 index e9dd0b493..000000000 --- a/google/ads/googleads/v4/errors/range_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RangeErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing range errors. - -// Container for enum describing possible range errors. -message RangeErrorEnum { - // Enum describing possible range errors. - enum RangeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Too low. - TOO_LOW = 2; - - // Too high. - TOO_HIGH = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/reach_plan_error.proto b/google/ads/googleads/v4/errors/reach_plan_error.proto deleted file mode 100644 index a36012e15..000000000 --- a/google/ads/googleads/v4/errors/reach_plan_error.proto +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing errors generated from ReachPlanService. - -// Container for enum describing possible errors returned from -// the ReachPlanService. -message ReachPlanErrorEnum { - // Enum describing possible errors from ReachPlanService. - enum ReachPlanError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - } - - -} diff --git a/google/ads/googleads/v4/errors/recommendation_error.proto b/google/ads/googleads/v4/errors/recommendation_error.proto deleted file mode 100644 index 348f0088b..000000000 --- a/google/ads/googleads/v4/errors/recommendation_error.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing errors from applying a recommendation. - -// Container for enum describing possible errors from applying a recommendation. -message RecommendationErrorEnum { - // Enum describing possible errors from applying a recommendation. - enum RecommendationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified budget amount is too low e.g. lower than minimum currency - // unit or lower than ad group minimum cost-per-click. - BUDGET_AMOUNT_TOO_SMALL = 2; - - // The specified budget amount is too large. - BUDGET_AMOUNT_TOO_LARGE = 3; - - // The specified budget amount is not a valid amount. e.g. not a multiple - // of minimum currency unit. - INVALID_BUDGET_AMOUNT = 4; - - // The specified keyword or ad violates ad policy. - POLICY_ERROR = 5; - - // The specified bid amount is not valid. e.g. too many fractional digits, - // or negative amount. - INVALID_BID_AMOUNT = 6; - - // The number of keywords in ad group have reached the maximum allowed. - ADGROUP_KEYWORD_LIMIT = 7; - - // The recommendation requested to apply has already been applied. - RECOMMENDATION_ALREADY_APPLIED = 8; - - // The recommendation requested to apply has been invalidated. - RECOMMENDATION_INVALIDATED = 9; - - // The number of operations in a single request exceeds the maximum allowed. - TOO_MANY_OPERATIONS = 10; - - // There are no operations in the request. - NO_OPERATIONS = 11; - - // Operations with multiple recommendation types are not supported when - // partial failure mode is not enabled. - DIFFERENT_TYPES_NOT_SUPPORTED = 12; - - // Request contains multiple operations with the same resource_name. - DUPLICATE_RESOURCE_NAME = 13; - - // The recommendation requested to dismiss has already been dismissed. - RECOMMENDATION_ALREADY_DISMISSED = 14; - - // The recommendation apply request was malformed and invalid. - INVALID_APPLY_REQUEST = 15; - } - - -} diff --git a/google/ads/googleads/v4/errors/region_code_error.proto b/google/ads/googleads/v4/errors/region_code_error.proto deleted file mode 100644 index 1bd666031..000000000 --- a/google/ads/googleads/v4/errors/region_code_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RegionCodeErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing region code errors. - -// Container for enum describing possible region code errors. -message RegionCodeErrorEnum { - // Enum describing possible region code errors. - enum RegionCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Invalid region code. - INVALID_REGION_CODE = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/request_error.proto b/google/ads/googleads/v4/errors/request_error.proto deleted file mode 100644 index 0fda68b6e..000000000 --- a/google/ads/googleads/v4/errors/request_error.proto +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RequestErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing request errors. - -// Container for enum describing possible request errors. -message RequestErrorEnum { - // Enum describing possible request errors. - enum RequestError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Resource name is required for this request. - RESOURCE_NAME_MISSING = 3; - - // Resource name provided is malformed. - RESOURCE_NAME_MALFORMED = 4; - - // Resource name provided is malformed. - BAD_RESOURCE_ID = 17; - - // Customer ID is invalid. - INVALID_CUSTOMER_ID = 16; - - // Mutate operation should have either create, update, or remove specified. - OPERATION_REQUIRED = 5; - - // Requested resource not found. - RESOURCE_NOT_FOUND = 6; - - // Next page token specified in user request is invalid. - INVALID_PAGE_TOKEN = 7; - - // Next page token specified in user request has expired. - EXPIRED_PAGE_TOKEN = 8; - - // Page size specified in user request is invalid. - INVALID_PAGE_SIZE = 22; - - // Required field is missing. - REQUIRED_FIELD_MISSING = 9; - - // The field cannot be modified because it's immutable. It's also possible - // that the field can be modified using 'create' operation but not 'update'. - IMMUTABLE_FIELD = 11; - - // Received too many entries in request. - TOO_MANY_MUTATE_OPERATIONS = 13; - - // Request cannot be executed by a manager account. - CANNOT_BE_EXECUTED_BY_MANAGER_ACCOUNT = 14; - - // Mutate request was attempting to modify a readonly field. - // For instance, Budget fields can be requested for Ad Group, - // but are read-only for adGroups:mutate. - CANNOT_MODIFY_FOREIGN_FIELD = 15; - - // Enum value is not permitted. - INVALID_ENUM_VALUE = 18; - - // The developer-token parameter is required for all requests. - DEVELOPER_TOKEN_PARAMETER_MISSING = 19; - - // The login-customer-id parameter is required for this request. - LOGIN_CUSTOMER_ID_PARAMETER_MISSING = 20; - - // page_token is set in the validate only request - VALIDATE_ONLY_REQUEST_HAS_PAGE_TOKEN = 21; - - // return_summary_row cannot be enabled if request did not select any - // metrics field. - CANNOT_RETURN_SUMMARY_ROW_FOR_REQUEST_WITHOUT_METRICS = 29; - - // return_summary_row should not be enabled for validate only requests. - CANNOT_RETURN_SUMMARY_ROW_FOR_VALIDATE_ONLY_REQUESTS = 30; - - // return_summary_row parameter value should be the same between requests - // with page_token field set and their original request. - INCONSISTENT_RETURN_SUMMARY_ROW_VALUE = 31; - - // The total results count cannot be returned if it was not requested in the - // original request. - TOTAL_RESULTS_COUNT_NOT_ORIGINALLY_REQUESTED = 32; - } - - -} diff --git a/google/ads/googleads/v4/errors/resource_access_denied_error.proto b/google/ads/googleads/v4/errors/resource_access_denied_error.proto deleted file mode 100644 index 82d88af69..000000000 --- a/google/ads/googleads/v4/errors/resource_access_denied_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ResourceAccessDeniedErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing resource access denied errors. - -// Container for enum describing possible resource access denied errors. -message ResourceAccessDeniedErrorEnum { - // Enum describing possible resource access denied errors. - enum ResourceAccessDeniedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // User did not have write access. - WRITE_ACCESS_DENIED = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/resource_count_limit_exceeded_error.proto b/google/ads/googleads/v4/errors/resource_count_limit_exceeded_error.proto deleted file mode 100644 index abdb9952d..000000000 --- a/google/ads/googleads/v4/errors/resource_count_limit_exceeded_error.proto +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ResourceCountLimitExceededErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing resource count limit exceeded errors. - -// Container for enum describing possible resource count limit exceeded errors. -message ResourceCountLimitExceededErrorEnum { - // Enum describing possible resource count limit exceeded errors. - enum ResourceCountLimitExceededError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Indicates that this request would exceed the number of allowed resources - // for the Google Ads account. The exact resource type and limit being - // checked can be inferred from accountLimitType. - ACCOUNT_LIMIT = 2; - - // Indicates that this request would exceed the number of allowed resources - // in a Campaign. The exact resource type and limit being checked can be - // inferred from accountLimitType, and the numeric id of the - // Campaign involved is given by enclosingId. - CAMPAIGN_LIMIT = 3; - - // Indicates that this request would exceed the number of allowed resources - // in an ad group. The exact resource type and limit being checked can be - // inferred from accountLimitType, and the numeric id of the - // ad group involved is given by enclosingId. - ADGROUP_LIMIT = 4; - - // Indicates that this request would exceed the number of allowed resources - // in an ad group ad. The exact resource type and limit being checked can - // be inferred from accountLimitType, and the enclosingId - // contains the ad group id followed by the ad id, separated by a single - // comma (,). - AD_GROUP_AD_LIMIT = 5; - - // Indicates that this request would exceed the number of allowed resources - // in an ad group criterion. The exact resource type and limit being checked - // can be inferred from accountLimitType, and the - // enclosingId contains the ad group id followed by the - // criterion id, separated by a single comma (,). - AD_GROUP_CRITERION_LIMIT = 6; - - // Indicates that this request would exceed the number of allowed resources - // in this shared set. The exact resource type and limit being checked can - // be inferred from accountLimitType, and the numeric id of the - // shared set involved is given by enclosingId. - SHARED_SET_LIMIT = 7; - - // Exceeds a limit related to a matching function. - MATCHING_FUNCTION_LIMIT = 8; - - // The response for this request would exceed the maximum number of rows - // that can be returned. - RESPONSE_ROW_LIMIT_EXCEEDED = 9; - - // This request would exceed a limit on the number of allowed resources. - // The details of which type of limit was exceeded will eventually be - // returned in ErrorDetails. - RESOURCE_LIMIT = 10; - } - - -} diff --git a/google/ads/googleads/v4/errors/setting_error.proto b/google/ads/googleads/v4/errors/setting_error.proto deleted file mode 100644 index 91acf2795..000000000 --- a/google/ads/googleads/v4/errors/setting_error.proto +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SettingErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing setting errors. - -// Container for enum describing possible setting errors. -message SettingErrorEnum { - // Enum describing possible setting errors. - enum SettingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The campaign setting is not available for this Google Ads account. - SETTING_TYPE_IS_NOT_AVAILABLE = 3; - - // The setting is not compatible with the campaign. - SETTING_TYPE_IS_NOT_COMPATIBLE_WITH_CAMPAIGN = 4; - - // The supplied TargetingSetting contains an invalid CriterionTypeGroup. See - // CriterionTypeGroup documentation for CriterionTypeGroups allowed - // in Campaign or AdGroup TargetingSettings. - TARGETING_SETTING_CONTAINS_INVALID_CRITERION_TYPE_GROUP = 5; - - // TargetingSetting must not explicitly - // set any of the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, - // PARENT, INCOME_RANGE) to false (it's okay to not set them at all, in - // which case the system will set them to true automatically). - TARGETING_SETTING_DEMOGRAPHIC_CRITERION_TYPE_GROUPS_MUST_BE_SET_TO_TARGET_ALL = 6; - - // TargetingSetting cannot change any of - // the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, PARENT, - // INCOME_RANGE) from true to false. - TARGETING_SETTING_CANNOT_CHANGE_TARGET_ALL_TO_FALSE_FOR_DEMOGRAPHIC_CRITERION_TYPE_GROUP = 7; - - // At least one feed id should be present. - DYNAMIC_SEARCH_ADS_SETTING_AT_LEAST_ONE_FEED_ID_MUST_BE_PRESENT = 8; - - // The supplied DynamicSearchAdsSetting contains an invalid domain name. - DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_DOMAIN_NAME = 9; - - // The supplied DynamicSearchAdsSetting contains a subdomain name. - DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_SUBDOMAIN_NAME = 10; - - // The supplied DynamicSearchAdsSetting contains an invalid language code. - DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_LANGUAGE_CODE = 11; - - // TargetingSettings in search campaigns should not have - // CriterionTypeGroup.PLACEMENT set to targetAll. - TARGET_ALL_IS_NOT_ALLOWED_FOR_PLACEMENT_IN_SEARCH_CAMPAIGN = 12; - - // The setting value is not compatible with the campaign type. - SETTING_VALUE_NOT_COMPATIBLE_WITH_CAMPAIGN = 20; - } - - -} diff --git a/google/ads/googleads/v4/errors/shared_criterion_error.proto b/google/ads/googleads/v4/errors/shared_criterion_error.proto deleted file mode 100644 index 2232b5190..000000000 --- a/google/ads/googleads/v4/errors/shared_criterion_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SharedCriterionErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing shared criterion errors. - -// Container for enum describing possible shared criterion errors. -message SharedCriterionErrorEnum { - // Enum describing possible shared criterion errors. - enum SharedCriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The criterion is not appropriate for the shared set type. - CRITERION_TYPE_NOT_ALLOWED_FOR_SHARED_SET_TYPE = 2; - } - - -} diff --git a/google/ads/googleads/v4/errors/shared_set_error.proto b/google/ads/googleads/v4/errors/shared_set_error.proto deleted file mode 100644 index 72e5ed2cf..000000000 --- a/google/ads/googleads/v4/errors/shared_set_error.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing shared set errors. - -// Container for enum describing possible shared set errors. -message SharedSetErrorEnum { - // Enum describing possible shared set errors. - enum SharedSetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The customer cannot create this type of shared set. - CUSTOMER_CANNOT_CREATE_SHARED_SET_OF_THIS_TYPE = 2; - - // A shared set with this name already exists. - DUPLICATE_NAME = 3; - - // Removed shared sets cannot be mutated. - SHARED_SET_REMOVED = 4; - - // The shared set cannot be removed because it is in use. - SHARED_SET_IN_USE = 5; - } - - -} diff --git a/google/ads/googleads/v4/errors/size_limit_error.proto b/google/ads/googleads/v4/errors/size_limit_error.proto deleted file mode 100644 index 3858591fa..000000000 --- a/google/ads/googleads/v4/errors/size_limit_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SizeLimitErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing size limit errors. - -// Container for enum describing possible size limit errors. -message SizeLimitErrorEnum { - // Enum describing possible size limit errors. - enum SizeLimitError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The number of entries in the request exceeds the system limit. - REQUEST_SIZE_LIMIT_EXCEEDED = 2; - - // The number of entries in the response exceeds the system limit. - RESPONSE_SIZE_LIMIT_EXCEEDED = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/string_format_error.proto b/google/ads/googleads/v4/errors/string_format_error.proto deleted file mode 100644 index 28d2b47bd..000000000 --- a/google/ads/googleads/v4/errors/string_format_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "StringFormatErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing string format errors. - -// Container for enum describing possible string format errors. -message StringFormatErrorEnum { - // Enum describing possible string format errors. - enum StringFormatError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The input string value contains disallowed characters. - ILLEGAL_CHARS = 2; - - // The input string value is invalid for the associated field. - INVALID_FORMAT = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/string_length_error.proto b/google/ads/googleads/v4/errors/string_length_error.proto deleted file mode 100644 index e254548f4..000000000 --- a/google/ads/googleads/v4/errors/string_length_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "StringLengthErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing string length errors. - -// Container for enum describing possible string length errors. -message StringLengthErrorEnum { - // Enum describing possible string length errors. - enum StringLengthError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified field should have a least one non-whitespace character in - // it. - EMPTY = 4; - - // Too short. - TOO_SHORT = 2; - - // Too long. - TOO_LONG = 3; - } - - -} diff --git a/google/ads/googleads/v4/errors/third_party_app_analytics_link_error.proto b/google/ads/googleads/v4/errors/third_party_app_analytics_link_error.proto deleted file mode 100644 index 95686b938..000000000 --- a/google/ads/googleads/v4/errors/third_party_app_analytics_link_error.proto +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ThirdPartyAppAnalyticsLinkErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing ThirdPartyAppAnalyticsLink errors. diff --git a/google/ads/googleads/v4/errors/time_zone_error.proto b/google/ads/googleads/v4/errors/time_zone_error.proto deleted file mode 100644 index 94c55282f..000000000 --- a/google/ads/googleads/v4/errors/time_zone_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "TimeZoneErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing time zone errors. - -// Container for enum describing possible time zone errors. -message TimeZoneErrorEnum { - // Enum describing possible currency code errors. - enum TimeZoneError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Time zone is not valid. - INVALID_TIME_ZONE = 5; - } - - -} diff --git a/google/ads/googleads/v4/errors/url_field_error.proto b/google/ads/googleads/v4/errors/url_field_error.proto deleted file mode 100644 index 7bcb8fc4b..000000000 --- a/google/ads/googleads/v4/errors/url_field_error.proto +++ /dev/null @@ -1,215 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "UrlFieldErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing url field errors. - -// Container for enum describing possible url field errors. -message UrlFieldErrorEnum { - // Enum describing possible url field errors. - enum UrlFieldError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The tracking url template is invalid. - INVALID_TRACKING_URL_TEMPLATE = 2; - - // The tracking url template contains invalid tag. - INVALID_TAG_IN_TRACKING_URL_TEMPLATE = 3; - - // The tracking url template must contain at least one tag (e.g. {lpurl}), - // This applies only to tracking url template associated with website ads or - // product ads. - MISSING_TRACKING_URL_TEMPLATE_TAG = 4; - - // The tracking url template must start with a valid protocol (or lpurl - // tag). - MISSING_PROTOCOL_IN_TRACKING_URL_TEMPLATE = 5; - - // The tracking url template starts with an invalid protocol. - INVALID_PROTOCOL_IN_TRACKING_URL_TEMPLATE = 6; - - // The tracking url template contains illegal characters. - MALFORMED_TRACKING_URL_TEMPLATE = 7; - - // The tracking url template must contain a host name (or lpurl tag). - MISSING_HOST_IN_TRACKING_URL_TEMPLATE = 8; - - // The tracking url template has an invalid or missing top level domain - // extension. - INVALID_TLD_IN_TRACKING_URL_TEMPLATE = 9; - - // The tracking url template contains nested occurrences of the same - // conditional tag (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_TRACKING_URL_TEMPLATE_TAG = 10; - - // The final url is invalid. - INVALID_FINAL_URL = 11; - - // The final url contains invalid tag. - INVALID_TAG_IN_FINAL_URL = 12; - - // The final url contains nested occurrences of the same conditional tag - // (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_FINAL_URL_TAG = 13; - - // The final url must start with a valid protocol. - MISSING_PROTOCOL_IN_FINAL_URL = 14; - - // The final url starts with an invalid protocol. - INVALID_PROTOCOL_IN_FINAL_URL = 15; - - // The final url contains illegal characters. - MALFORMED_FINAL_URL = 16; - - // The final url must contain a host name. - MISSING_HOST_IN_FINAL_URL = 17; - - // The tracking url template has an invalid or missing top level domain - // extension. - INVALID_TLD_IN_FINAL_URL = 18; - - // The final mobile url is invalid. - INVALID_FINAL_MOBILE_URL = 19; - - // The final mobile url contains invalid tag. - INVALID_TAG_IN_FINAL_MOBILE_URL = 20; - - // The final mobile url contains nested occurrences of the same conditional - // tag (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_FINAL_MOBILE_URL_TAG = 21; - - // The final mobile url must start with a valid protocol. - MISSING_PROTOCOL_IN_FINAL_MOBILE_URL = 22; - - // The final mobile url starts with an invalid protocol. - INVALID_PROTOCOL_IN_FINAL_MOBILE_URL = 23; - - // The final mobile url contains illegal characters. - MALFORMED_FINAL_MOBILE_URL = 24; - - // The final mobile url must contain a host name. - MISSING_HOST_IN_FINAL_MOBILE_URL = 25; - - // The tracking url template has an invalid or missing top level domain - // extension. - INVALID_TLD_IN_FINAL_MOBILE_URL = 26; - - // The final app url is invalid. - INVALID_FINAL_APP_URL = 27; - - // The final app url contains invalid tag. - INVALID_TAG_IN_FINAL_APP_URL = 28; - - // The final app url contains nested occurrences of the same conditional tag - // (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_FINAL_APP_URL_TAG = 29; - - // More than one app url found for the same OS type. - MULTIPLE_APP_URLS_FOR_OSTYPE = 30; - - // The OS type given for an app url is not valid. - INVALID_OSTYPE = 31; - - // The protocol given for an app url is not valid. (E.g. "android-app://") - INVALID_PROTOCOL_FOR_APP_URL = 32; - - // The package id (app id) given for an app url is not valid. - INVALID_PACKAGE_ID_FOR_APP_URL = 33; - - // The number of url custom parameters for an resource exceeds the maximum - // limit allowed. - URL_CUSTOM_PARAMETERS_COUNT_EXCEEDS_LIMIT = 34; - - // An invalid character appears in the parameter key. - INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_KEY = 39; - - // An invalid character appears in the parameter value. - INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_VALUE = 40; - - // The url custom parameter value fails url tag validation. - INVALID_TAG_IN_URL_CUSTOM_PARAMETER_VALUE = 41; - - // The custom parameter contains nested occurrences of the same conditional - // tag (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_URL_CUSTOM_PARAMETER_TAG = 42; - - // The protocol (http:// or https://) is missing. - MISSING_PROTOCOL = 43; - - // Unsupported protocol in URL. Only http and https are supported. - INVALID_PROTOCOL = 52; - - // The url is invalid. - INVALID_URL = 44; - - // Destination Url is deprecated. - DESTINATION_URL_DEPRECATED = 45; - - // The url contains invalid tag. - INVALID_TAG_IN_URL = 46; - - // The url must contain at least one tag (e.g. {lpurl}), This applies only - // to urls associated with website ads or product ads. - MISSING_URL_TAG = 47; - - // Duplicate url id. - DUPLICATE_URL_ID = 48; - - // Invalid url id. - INVALID_URL_ID = 49; - - // The final url suffix cannot begin with '?' or '&' characters and must be - // a valid query string. - FINAL_URL_SUFFIX_MALFORMED = 50; - - // The final url suffix cannot contain {lpurl} related or {ignore} tags. - INVALID_TAG_IN_FINAL_URL_SUFFIX = 51; - - // The top level domain is invalid, e.g, not a public top level domain - // listed in publicsuffix.org. - INVALID_TOP_LEVEL_DOMAIN = 53; - - // Malformed top level domain in URL. - MALFORMED_TOP_LEVEL_DOMAIN = 54; - - // Malformed URL. - MALFORMED_URL = 55; - - // No host found in URL. - MISSING_HOST = 56; - - // Custom parameter value cannot be null. - NULL_CUSTOM_PARAMETER_VALUE = 57; - } - - -} diff --git a/google/ads/googleads/v4/errors/user_data_error.proto b/google/ads/googleads/v4/errors/user_data_error.proto deleted file mode 100644 index 904e8cff0..000000000 --- a/google/ads/googleads/v4/errors/user_data_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "UserDataErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing user data errors. - -// Container for enum describing possible user data errors. -message UserDataErrorEnum { - // Enum describing possible request errors. - enum UserDataError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Customer is not allowed to perform operations related to Customer Match. - OPERATIONS_FOR_CUSTOMER_MATCH_NOT_ALLOWED = 2; - - // Maximum number of user identifiers allowed for each mutate is 100. - TOO_MANY_USER_IDENTIFIERS = 3; - - // Current user list is not applicable for the given customer. - USER_LIST_NOT_APPLICABLE = 4; - } - - -} diff --git a/google/ads/googleads/v4/errors/user_list_error.proto b/google/ads/googleads/v4/errors/user_list_error.proto deleted file mode 100644 index 8b6269c8b..000000000 --- a/google/ads/googleads/v4/errors/user_list_error.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "UserListErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing user list errors. - -// Container for enum describing possible user list errors. -message UserListErrorEnum { - // Enum describing possible user list errors. - enum UserListError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Creating and updating external remarketing user lists is not supported. - EXTERNAL_REMARKETING_USER_LIST_MUTATE_NOT_SUPPORTED = 2; - - // Concrete type of user list is required. - CONCRETE_TYPE_REQUIRED = 3; - - // Creating/updating user list conversion types requires specifying the - // conversion type Id. - CONVERSION_TYPE_ID_REQUIRED = 4; - - // Remarketing user list cannot have duplicate conversion types. - DUPLICATE_CONVERSION_TYPES = 5; - - // Conversion type is invalid/unknown. - INVALID_CONVERSION_TYPE = 6; - - // User list description is empty or invalid. - INVALID_DESCRIPTION = 7; - - // User list name is empty or invalid. - INVALID_NAME = 8; - - // Type of the UserList does not match. - INVALID_TYPE = 9; - - // Embedded logical user lists are not allowed. - CAN_NOT_ADD_LOGICAL_LIST_AS_LOGICAL_LIST_OPERAND = 10; - - // User list rule operand is invalid. - INVALID_USER_LIST_LOGICAL_RULE_OPERAND = 11; - - // Name is already being used for another user list for the account. - NAME_ALREADY_USED = 12; - - // Name is required when creating a new conversion type. - NEW_CONVERSION_TYPE_NAME_REQUIRED = 13; - - // The given conversion type name has been used. - CONVERSION_TYPE_NAME_ALREADY_USED = 14; - - // Only an owner account may edit a user list. - OWNERSHIP_REQUIRED_FOR_SET = 15; - - // Creating user list without setting type in oneof user_list field, or - // creating/updating read-only user list types is not allowed. - USER_LIST_MUTATE_NOT_SUPPORTED = 16; - - // Rule is invalid. - INVALID_RULE = 17; - - // The specified date range is empty. - INVALID_DATE_RANGE = 27; - - // A UserList which is privacy sensitive or legal rejected cannot be mutated - // by external users. - CAN_NOT_MUTATE_SENSITIVE_USERLIST = 28; - - // Maximum number of rulebased user lists a customer can have. - MAX_NUM_RULEBASED_USERLISTS = 29; - - // BasicUserList's billable record field cannot be modified once it is set. - CANNOT_MODIFY_BILLABLE_RECORD_COUNT = 30; - - // crm_based_user_list.app_id field must be set when upload_key_type is - // MOBILE_ADVERTISING_ID. - APP_ID_NOT_SET = 31; - - // Name of the user list is reserved for system generated lists and cannot - // be used. - USERLIST_NAME_IS_RESERVED_FOR_SYSTEM_LIST = 32; - - // Advertiser needs to be on the allow-list to use remarketing lists created - // from advertiser uploaded data (e.g., Customer Match lists). - ADVERTISER_NOT_WHITELISTED_FOR_USING_UPLOADED_DATA = 33; - - // The provided rule_type is not supported for the user list. - RULE_TYPE_IS_NOT_SUPPORTED = 34; - - // Similar user list cannot be used as a logical user list operand. - CAN_NOT_ADD_A_SIMILAR_USERLIST_AS_LOGICAL_LIST_OPERAND = 35; - - // Logical user list should not have a mix of CRM based user list and other - // types of lists in its rules. - CAN_NOT_MIX_CRM_BASED_IN_LOGICAL_LIST_WITH_OTHER_LISTS = 36; - } - - -} diff --git a/google/ads/googleads/v4/errors/youtube_video_registration_error.proto b/google/ads/googleads/v4/errors/youtube_video_registration_error.proto deleted file mode 100644 index fece5b482..000000000 --- a/google/ads/googleads/v4/errors/youtube_video_registration_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "YoutubeVideoRegistrationErrorProto"; -option java_package = "com.google.ads.googleads.v4.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V4::Errors"; - -// Proto file describing YouTube video registration errors. - -// Container for enum describing YouTube video registration errors. -message YoutubeVideoRegistrationErrorEnum { - // Enum describing YouTube video registration errors. - enum YoutubeVideoRegistrationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Video to be registered wasn't found. - VIDEO_NOT_FOUND = 2; - - // Video to be registered is not accessible (e.g. private). - VIDEO_NOT_ACCESSIBLE = 3; - - // Video to be registered is not eligible (e.g. mature content). - VIDEO_NOT_ELIGIBLE = 4; - } - - -} diff --git a/google/ads/googleads/v4/googleads_gapic.yaml b/google/ads/googleads/v4/googleads_gapic.yaml deleted file mode 100644 index 5e94457bf..000000000 --- a/google/ads/googleads/v4/googleads_gapic.yaml +++ /dev/null @@ -1,26 +0,0 @@ -type: com.google.api.codegen.ConfigProto -config_schema_version: 2.0.0 -language_settings: - csharp: - package_name: Google.Ads.GoogleAds.V4.Services - go: - package_name: google.golang.org/google/ads/googleads/v4/services - java: - package_name: com.google.ads.googleads.v4.services - nodejs: - package_name: v4.services - php: - package_name: Google\Ads\GoogleAds\V4\Services - python: - package_name: google.ads.googleads_v4.gapic.services - ruby: - package_name: Google::Ads::Googleads::V4::Services -interfaces: -- name: google.ads.googleads.v4.services.OfflineUserDataJobService - methods: - - name: RunOfflineUserDataJob - long_running: - initial_poll_delay_millis: 300000 - max_poll_delay_millis: 3600000 - poll_delay_multiplier: 1.25 - total_poll_timeout_millis: 43200000 diff --git a/google/ads/googleads/v4/googleads_grpc_service_config.json b/google/ads/googleads/v4/googleads_grpc_service_config.json deleted file mode 100644 index b9c8e3843..000000000 --- a/google/ads/googleads/v4/googleads_grpc_service_config.json +++ /dev/null @@ -1,354 +0,0 @@ -{ - "methodConfig": [ - { - "name": [ - { - "service": "google.ads.googleads.v4.services.AccountBudgetProposalService" - }, - { - "service": "google.ads.googleads.v4.services.AccountBudgetService" - }, - { - "service": "google.ads.googleads.v4.services.AccountLinkService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupAdAssetViewService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupAdLabelService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupAdService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupAudienceViewService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupBidModifierService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupCriterionLabelService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupCriterionService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupCriterionSimulationService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupExtensionSettingService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupFeedService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupLabelService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupService" - }, - { - "service": "google.ads.googleads.v4.services.AdGroupSimulationService" - }, - { - "service": "google.ads.googleads.v4.services.AdParameterService" - }, - { - "service": "google.ads.googleads.v4.services.AdScheduleViewService" - }, - { - "service": "google.ads.googleads.v4.services.AdService" - }, - { - "service": "google.ads.googleads.v4.services.AgeRangeViewService" - }, - { - "service": "google.ads.googleads.v4.services.AssetService" - }, - { - "service": "google.ads.googleads.v4.services.BatchJobService" - }, - { - "service": "google.ads.googleads.v4.services.BiddingStrategyService" - }, - { - "service": "google.ads.googleads.v4.services.BillingSetupService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignAudienceViewService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignBidModifierService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignBudgetService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignCriterionService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignCriterionSimulationService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignDraftService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignExperimentService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignExtensionSettingService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignFeedService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignLabelService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignService" - }, - { - "service": "google.ads.googleads.v4.services.CampaignSharedSetService" - }, - { - "service": "google.ads.googleads.v4.services.CarrierConstantService" - }, - { - "service": "google.ads.googleads.v4.services.ChangeStatusService" - }, - { - "service": "google.ads.googleads.v4.services.ClickViewService" - }, - { - "service": "google.ads.googleads.v4.services.ConversionActionService" - }, - { - "service": "google.ads.googleads.v4.services.ConversionAdjustmentUploadService" - }, - { - "service": "google.ads.googleads.v4.services.ConversionUploadService" - }, - { - "service": "google.ads.googleads.v4.services.CurrencyConstantService" - }, - { - "service": "google.ads.googleads.v4.services.CustomInterestService" - }, - { - "service": "google.ads.googleads.v4.services.CustomerClientLinkService" - }, - { - "service": "google.ads.googleads.v4.services.CustomerClientService" - }, - { - "service": "google.ads.googleads.v4.services.CustomerExtensionSettingService" - }, - { - "service": "google.ads.googleads.v4.services.CustomerFeedService" - }, - { - "service": "google.ads.googleads.v4.services.CustomerLabelService" - }, - { - "service": "google.ads.googleads.v4.services.CustomerManagerLinkService" - }, - { - "service": "google.ads.googleads.v4.services.CustomerNegativeCriterionService" - }, - { - "service": "google.ads.googleads.v4.services.CustomerService" - }, - { - "service": "google.ads.googleads.v4.services.DetailPlacementViewService" - }, - { - "service": "google.ads.googleads.v4.services.DisplayKeywordViewService" - }, - { - "service": "google.ads.googleads.v4.services.DistanceViewService" - }, - { - "service": "google.ads.googleads.v4.services.DomainCategoryService" - }, - { - "service": "google.ads.googleads.v4.services.DynamicSearchAdsSearchTermViewService" - }, - { - "service": "google.ads.googleads.v4.services.ExpandedLandingPageViewService" - }, - { - "service": "google.ads.googleads.v4.services.ExtensionFeedItemService" - }, - { - "service": "google.ads.googleads.v4.services.FeedItemService" - }, - { - "service": "google.ads.googleads.v4.services.FeedItemTargetService" - }, - { - "service": "google.ads.googleads.v4.services.FeedMappingService" - }, - { - "service": "google.ads.googleads.v4.services.FeedPlaceholderViewService" - }, - { - "service": "google.ads.googleads.v4.services.FeedService" - }, - { - "service": "google.ads.googleads.v4.services.GenderViewService" - }, - { - "service": "google.ads.googleads.v4.services.GeoTargetConstantService" - }, - { - "service": "google.ads.googleads.v4.services.GeographicViewService" - }, - { - "service": "google.ads.googleads.v4.services.GoogleAdsFieldService" - }, - { - "service": "google.ads.googleads.v4.services.GoogleAdsService" - }, - { - "service": "google.ads.googleads.v4.services.GroupPlacementViewService" - }, - { - "service": "google.ads.googleads.v4.services.HotelGroupViewService" - }, - { - "service": "google.ads.googleads.v4.services.HotelPerformanceViewService" - }, - { - "service": "google.ads.googleads.v4.services.IncomeRangeViewService" - }, - { - "service": "google.ads.googleads.v4.services.InvoiceService" - }, - { - "service": "google.ads.googleads.v4.services.KeywordPlanAdGroupKeywordService" - }, - { - "service": "google.ads.googleads.v4.services.KeywordPlanAdGroupService" - }, - { - "service": "google.ads.googleads.v4.services.KeywordPlanCampaignKeywordService" - }, - { - "service": "google.ads.googleads.v4.services.KeywordPlanCampaignService" - }, - { - "service": "google.ads.googleads.v4.services.KeywordPlanIdeaService" - }, - { - "service": "google.ads.googleads.v4.services.KeywordPlanService" - }, - { - "service": "google.ads.googleads.v4.services.KeywordViewService" - }, - { - "service": "google.ads.googleads.v4.services.LabelService" - }, - { - "service": "google.ads.googleads.v4.services.LandingPageViewService" - }, - { - "service": "google.ads.googleads.v4.services.LanguageConstantService" - }, - { - "service": "google.ads.googleads.v4.services.LocationViewService" - }, - { - "service": "google.ads.googleads.v4.services.ManagedPlacementViewService" - }, - { - "service": "google.ads.googleads.v4.services.MediaFileService" - }, - { - "service": "google.ads.googleads.v4.services.MerchantCenterLinkService" - }, - { - "service": "google.ads.googleads.v4.services.MobileAppCategoryConstantService" - }, - { - "service": "google.ads.googleads.v4.services.MobileDeviceConstantService" - }, - { - "service": "google.ads.googleads.v4.services.OfflineUserDataJobService" - }, - { - "service": "google.ads.googleads.v4.services.OperatingSystemVersionConstantService" - }, - { - "service": "google.ads.googleads.v4.services.PaidOrganicSearchTermViewService" - }, - { - "service": "google.ads.googleads.v4.services.ParentalStatusViewService" - }, - { - "service": "google.ads.googleads.v4.services.PaymentsAccountService" - }, - { - "service": "google.ads.googleads.v4.services.ProductBiddingCategoryConstantService" - }, - { - "service": "google.ads.googleads.v4.services.ProductGroupViewService" - }, - { - "service": "google.ads.googleads.v4.services.ReachPlanService" - }, - { - "service": "google.ads.googleads.v4.services.RecommendationService" - }, - { - "service": "google.ads.googleads.v4.services.RemarketingActionService" - }, - { - "service": "google.ads.googleads.v4.services.SearchTermViewService" - }, - { - "service": "google.ads.googleads.v4.services.SharedCriterionService" - }, - { - "service": "google.ads.googleads.v4.services.SharedSetService" - }, - { - "service": "google.ads.googleads.v4.services.ShoppingPerformanceViewService" - }, - { - "service": "google.ads.googleads.v4.services.ThirdPartyAppAnalyticsLinkService" - }, - { - "service": "google.ads.googleads.v4.services.TopicConstantService" - }, - { - "service": "google.ads.googleads.v4.services.TopicViewService" - }, - { - "service": "google.ads.googleads.v4.services.UserDataService" - }, - { - "service": "google.ads.googleads.v4.services.UserInterestService" - }, - { - "service": "google.ads.googleads.v4.services.UserListService" - }, - { - "service": "google.ads.googleads.v4.services.UserLocationViewService" - }, - { - "service": "google.ads.googleads.v4.services.VideoService" - } - ], - "timeout": "3600s", - "retryPolicy": { - "initialBackoff": "5s", - "maxBackoff": "60s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": [ - "UNAVAILABLE", - "DEADLINE_EXCEEDED" - ] - } - } - ] -} diff --git a/google/ads/googleads/v4/googleads_v4.yaml b/google/ads/googleads/v4/googleads_v4.yaml deleted file mode 100644 index 383c2034c..000000000 --- a/google/ads/googleads/v4/googleads_v4.yaml +++ /dev/null @@ -1,1132 +0,0 @@ -type: google.api.Service -config_version: 3 -name: googleads.googleapis.com -title: Google Ads API - -apis: -- name: google.ads.googleads.v4.services.AccountBudgetProposalService -- name: google.ads.googleads.v4.services.AccountBudgetService -- name: google.ads.googleads.v4.services.AccountLinkService -- name: google.ads.googleads.v4.services.AdGroupAdAssetViewService -- name: google.ads.googleads.v4.services.AdGroupAdLabelService -- name: google.ads.googleads.v4.services.AdGroupAdService -- name: google.ads.googleads.v4.services.AdGroupAudienceViewService -- name: google.ads.googleads.v4.services.AdGroupBidModifierService -- name: google.ads.googleads.v4.services.AdGroupCriterionLabelService -- name: google.ads.googleads.v4.services.AdGroupCriterionService -- name: google.ads.googleads.v4.services.AdGroupCriterionSimulationService -- name: google.ads.googleads.v4.services.AdGroupExtensionSettingService -- name: google.ads.googleads.v4.services.AdGroupFeedService -- name: google.ads.googleads.v4.services.AdGroupLabelService -- name: google.ads.googleads.v4.services.AdGroupService -- name: google.ads.googleads.v4.services.AdGroupSimulationService -- name: google.ads.googleads.v4.services.AdParameterService -- name: google.ads.googleads.v4.services.AdScheduleViewService -- name: google.ads.googleads.v4.services.AdService -- name: google.ads.googleads.v4.services.AgeRangeViewService -- name: google.ads.googleads.v4.services.AssetService -- name: google.ads.googleads.v4.services.BatchJobService -- name: google.ads.googleads.v4.services.BiddingStrategyService -- name: google.ads.googleads.v4.services.BillingSetupService -- name: google.ads.googleads.v4.services.CampaignAudienceViewService -- name: google.ads.googleads.v4.services.CampaignBidModifierService -- name: google.ads.googleads.v4.services.CampaignBudgetService -- name: google.ads.googleads.v4.services.CampaignCriterionService -- name: google.ads.googleads.v4.services.CampaignCriterionSimulationService -- name: google.ads.googleads.v4.services.CampaignDraftService -- name: google.ads.googleads.v4.services.CampaignExperimentService -- name: google.ads.googleads.v4.services.CampaignExtensionSettingService -- name: google.ads.googleads.v4.services.CampaignFeedService -- name: google.ads.googleads.v4.services.CampaignLabelService -- name: google.ads.googleads.v4.services.CampaignService -- name: google.ads.googleads.v4.services.CampaignSharedSetService -- name: google.ads.googleads.v4.services.CarrierConstantService -- name: google.ads.googleads.v4.services.ChangeStatusService -- name: google.ads.googleads.v4.services.ClickViewService -- name: google.ads.googleads.v4.services.ConversionActionService -- name: google.ads.googleads.v4.services.ConversionAdjustmentUploadService -- name: google.ads.googleads.v4.services.ConversionUploadService -- name: google.ads.googleads.v4.services.CurrencyConstantService -- name: google.ads.googleads.v4.services.CustomInterestService -- name: google.ads.googleads.v4.services.CustomerClientLinkService -- name: google.ads.googleads.v4.services.CustomerClientService -- name: google.ads.googleads.v4.services.CustomerExtensionSettingService -- name: google.ads.googleads.v4.services.CustomerFeedService -- name: google.ads.googleads.v4.services.CustomerLabelService -- name: google.ads.googleads.v4.services.CustomerManagerLinkService -- name: google.ads.googleads.v4.services.CustomerNegativeCriterionService -- name: google.ads.googleads.v4.services.CustomerService -- name: google.ads.googleads.v4.services.DetailPlacementViewService -- name: google.ads.googleads.v4.services.DisplayKeywordViewService -- name: google.ads.googleads.v4.services.DistanceViewService -- name: google.ads.googleads.v4.services.DomainCategoryService -- name: google.ads.googleads.v4.services.DynamicSearchAdsSearchTermViewService -- name: google.ads.googleads.v4.services.ExpandedLandingPageViewService -- name: google.ads.googleads.v4.services.ExtensionFeedItemService -- name: google.ads.googleads.v4.services.FeedItemService -- name: google.ads.googleads.v4.services.FeedItemTargetService -- name: google.ads.googleads.v4.services.FeedMappingService -- name: google.ads.googleads.v4.services.FeedPlaceholderViewService -- name: google.ads.googleads.v4.services.FeedService -- name: google.ads.googleads.v4.services.GenderViewService -- name: google.ads.googleads.v4.services.GeoTargetConstantService -- name: google.ads.googleads.v4.services.GeographicViewService -- name: google.ads.googleads.v4.services.GoogleAdsFieldService -- name: google.ads.googleads.v4.services.GoogleAdsService -- name: google.ads.googleads.v4.services.GroupPlacementViewService -- name: google.ads.googleads.v4.services.HotelGroupViewService -- name: google.ads.googleads.v4.services.HotelPerformanceViewService -- name: google.ads.googleads.v4.services.IncomeRangeViewService -- name: google.ads.googleads.v4.services.InvoiceService -- name: google.ads.googleads.v4.services.KeywordPlanAdGroupKeywordService -- name: google.ads.googleads.v4.services.KeywordPlanAdGroupService -- name: google.ads.googleads.v4.services.KeywordPlanCampaignKeywordService -- name: google.ads.googleads.v4.services.KeywordPlanCampaignService -- name: google.ads.googleads.v4.services.KeywordPlanIdeaService -- name: google.ads.googleads.v4.services.KeywordPlanService -- name: google.ads.googleads.v4.services.KeywordViewService -- name: google.ads.googleads.v4.services.LabelService -- name: google.ads.googleads.v4.services.LandingPageViewService -- name: google.ads.googleads.v4.services.LanguageConstantService -- name: google.ads.googleads.v4.services.LocationViewService -- name: google.ads.googleads.v4.services.ManagedPlacementViewService -- name: google.ads.googleads.v4.services.MediaFileService -- name: google.ads.googleads.v4.services.MerchantCenterLinkService -- name: google.ads.googleads.v4.services.MobileAppCategoryConstantService -- name: google.ads.googleads.v4.services.MobileDeviceConstantService -- name: google.ads.googleads.v4.services.OfflineUserDataJobService -- name: google.ads.googleads.v4.services.OperatingSystemVersionConstantService -- name: google.ads.googleads.v4.services.PaidOrganicSearchTermViewService -- name: google.ads.googleads.v4.services.ParentalStatusViewService -- name: google.ads.googleads.v4.services.PaymentsAccountService -- name: google.ads.googleads.v4.services.ProductBiddingCategoryConstantService -- name: google.ads.googleads.v4.services.ProductGroupViewService -- name: google.ads.googleads.v4.services.ReachPlanService -- name: google.ads.googleads.v4.services.RecommendationService -- name: google.ads.googleads.v4.services.RemarketingActionService -- name: google.ads.googleads.v4.services.SearchTermViewService -- name: google.ads.googleads.v4.services.SharedCriterionService -- name: google.ads.googleads.v4.services.SharedSetService -- name: google.ads.googleads.v4.services.ShoppingPerformanceViewService -- name: google.ads.googleads.v4.services.ThirdPartyAppAnalyticsLinkService -- name: google.ads.googleads.v4.services.TopicConstantService -- name: google.ads.googleads.v4.services.TopicViewService -- name: google.ads.googleads.v4.services.UserDataService -- name: google.ads.googleads.v4.services.UserInterestService -- name: google.ads.googleads.v4.services.UserListService -- name: google.ads.googleads.v4.services.UserLocationViewService -- name: google.ads.googleads.v4.services.VideoService - -types: -- name: google.ads.googleads.v4.errors.GoogleAdsFailure -- name: google.ads.googleads.v4.resources.BatchJob.BatchJobMetadata -- name: google.ads.googleads.v4.services.CreateCampaignExperimentMetadata - -documentation: - summary: 'Manage your Google Ads accounts, campaigns, and reports with this API.' - overview: |- - The Google Ads API enables an app to integrate with the Google Ads - platform. You can efficiently retrieve and change your Google Ads data - using the API, making it ideal for managing large or complex accounts and - campaigns. - -backend: - rules: - - selector: google.ads.googleads.v4.services.AccountBudgetProposalService.GetAccountBudgetProposal - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AccountBudgetProposalService.MutateAccountBudgetProposal - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AccountBudgetService.GetAccountBudget - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AccountLinkService.GetAccountLink - deadline: 600.0 - - selector: google.ads.googleads.v4.services.AccountLinkService.MutateAccountLink - deadline: 600.0 - - selector: google.ads.googleads.v4.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupAdLabelService.GetAdGroupAdLabel - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupAdLabelService.MutateAdGroupAdLabels - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupAdService.GetAdGroupAd - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupAdService.MutateAdGroupAds - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupAudienceViewService.GetAdGroupAudienceView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupBidModifierService.GetAdGroupBidModifier - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupBidModifierService.MutateAdGroupBidModifiers - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupCriterionService.GetAdGroupCriterion - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupCriterionService.MutateAdGroupCriteria - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupFeedService.GetAdGroupFeed - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupFeedService.MutateAdGroupFeeds - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupLabelService.GetAdGroupLabel - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupLabelService.MutateAdGroupLabels - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupService.GetAdGroup - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupService.MutateAdGroups - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdGroupSimulationService.GetAdGroupSimulation - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdParameterService.GetAdParameter - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdParameterService.MutateAdParameters - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdScheduleViewService.GetAdScheduleView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdService.GetAd - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AdService.MutateAds - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AgeRangeViewService.GetAgeRangeView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AssetService.GetAsset - deadline: 60.0 - - selector: google.ads.googleads.v4.services.AssetService.MutateAssets - deadline: 60.0 - - selector: 'google.ads.googleads.v4.services.BatchJobService.*' - deadline: 60.0 - - selector: google.ads.googleads.v4.services.BiddingStrategyService.GetBiddingStrategy - deadline: 60.0 - - selector: google.ads.googleads.v4.services.BiddingStrategyService.MutateBiddingStrategies - deadline: 60.0 - - selector: google.ads.googleads.v4.services.BillingSetupService.GetBillingSetup - deadline: 60.0 - - selector: google.ads.googleads.v4.services.BillingSetupService.MutateBillingSetup - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignAudienceViewService.GetCampaignAudienceView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignBidModifierService.GetCampaignBidModifier - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignBidModifierService.MutateCampaignBidModifiers - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignBudgetService.GetCampaignBudget - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignBudgetService.MutateCampaignBudgets - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignCriterionService.GetCampaignCriterion - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignCriterionService.MutateCampaignCriteria - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation - deadline: 60.0 - - selector: 'google.ads.googleads.v4.services.CampaignDraftService.*' - deadline: 60.0 - - selector: 'google.ads.googleads.v4.services.CampaignExperimentService.*' - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignExtensionSettingService.GetCampaignExtensionSetting - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignFeedService.GetCampaignFeed - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignFeedService.MutateCampaignFeeds - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignLabelService.GetCampaignLabel - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignLabelService.MutateCampaignLabels - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignService.GetCampaign - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignService.MutateCampaigns - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignSharedSetService.GetCampaignSharedSet - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CampaignSharedSetService.MutateCampaignSharedSets - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CarrierConstantService.GetCarrierConstant - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ChangeStatusService.GetChangeStatus - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ClickViewService.GetClickView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ConversionActionService.GetConversionAction - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ConversionActionService.MutateConversionActions - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ConversionAdjustmentUploadService.UploadConversionAdjustments - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ConversionUploadService.UploadCallConversions - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ConversionUploadService.UploadClickConversions - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CurrencyConstantService.GetCurrencyConstant - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomInterestService.GetCustomInterest - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomInterestService.MutateCustomInterests - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomerClientLinkService.GetCustomerClientLink - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomerClientLinkService.MutateCustomerClientLink - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomerClientService.GetCustomerClient - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomerExtensionSettingService.GetCustomerExtensionSetting - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomerFeedService.GetCustomerFeed - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomerFeedService.MutateCustomerFeeds - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomerLabelService.GetCustomerLabel - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomerLabelService.MutateCustomerLabels - deadline: 60.0 - - selector: 'google.ads.googleads.v4.services.CustomerManagerLinkService.*' - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion - deadline: 60.0 - - selector: google.ads.googleads.v4.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria - deadline: 60.0 - - selector: 'google.ads.googleads.v4.services.CustomerService.*' - deadline: 60.0 - - selector: google.ads.googleads.v4.services.DetailPlacementViewService.GetDetailPlacementView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.DisplayKeywordViewService.GetDisplayKeywordView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.DistanceViewService.GetDistanceView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.DomainCategoryService.GetDomainCategory - deadline: 60.0 - - selector: google.ads.googleads.v4.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ExpandedLandingPageViewService.GetExpandedLandingPageView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ExtensionFeedItemService.GetExtensionFeedItem - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ExtensionFeedItemService.MutateExtensionFeedItems - deadline: 60.0 - - selector: google.ads.googleads.v4.services.FeedItemService.GetFeedItem - deadline: 60.0 - - selector: google.ads.googleads.v4.services.FeedItemService.MutateFeedItems - deadline: 60.0 - - selector: google.ads.googleads.v4.services.FeedItemTargetService.GetFeedItemTarget - deadline: 60.0 - - selector: google.ads.googleads.v4.services.FeedItemTargetService.MutateFeedItemTargets - deadline: 60.0 - - selector: google.ads.googleads.v4.services.FeedMappingService.GetFeedMapping - deadline: 60.0 - - selector: google.ads.googleads.v4.services.FeedMappingService.MutateFeedMappings - deadline: 60.0 - - selector: google.ads.googleads.v4.services.FeedPlaceholderViewService.GetFeedPlaceholderView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.FeedService.GetFeed - deadline: 60.0 - - selector: google.ads.googleads.v4.services.FeedService.MutateFeeds - deadline: 60.0 - - selector: google.ads.googleads.v4.services.GenderViewService.GetGenderView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.GeoTargetConstantService.GetGeoTargetConstant - deadline: 60.0 - - selector: google.ads.googleads.v4.services.GeoTargetConstantService.SuggestGeoTargetConstants - deadline: 60.0 - - selector: google.ads.googleads.v4.services.GeographicViewService.GetGeographicView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.GoogleAdsFieldService.GetGoogleAdsField - deadline: 600.0 - - selector: google.ads.googleads.v4.services.GoogleAdsFieldService.SearchGoogleAdsFields - deadline: 600.0 - - selector: google.ads.googleads.v4.services.GoogleAdsService.Mutate - deadline: 600.0 - - selector: google.ads.googleads.v4.services.GoogleAdsService.Search - deadline: 3600.0 - - selector: google.ads.googleads.v4.services.GoogleAdsService.SearchStream - deadline: 3600.0 - - selector: google.ads.googleads.v4.services.GroupPlacementViewService.GetGroupPlacementView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.HotelGroupViewService.GetHotelGroupView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.HotelPerformanceViewService.GetHotelPerformanceView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.IncomeRangeViewService.GetIncomeRangeView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.InvoiceService.ListInvoices - deadline: 60.0 - - selector: google.ads.googleads.v4.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword - deadline: 60.0 - - selector: google.ads.googleads.v4.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords - deadline: 60.0 - - selector: google.ads.googleads.v4.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup - deadline: 60.0 - - selector: google.ads.googleads.v4.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups - deadline: 60.0 - - selector: google.ads.googleads.v4.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword - deadline: 60.0 - - selector: google.ads.googleads.v4.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords - deadline: 60.0 - - selector: google.ads.googleads.v4.services.KeywordPlanCampaignService.GetKeywordPlanCampaign - deadline: 60.0 - - selector: google.ads.googleads.v4.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns - deadline: 60.0 - - selector: google.ads.googleads.v4.services.KeywordPlanIdeaService.GenerateKeywordIdeas - deadline: 600.0 - - selector: 'google.ads.googleads.v4.services.KeywordPlanService.*' - deadline: 600.0 - - selector: google.ads.googleads.v4.services.KeywordPlanService.GetKeywordPlan - deadline: 60.0 - - selector: google.ads.googleads.v4.services.KeywordPlanService.MutateKeywordPlans - deadline: 60.0 - - selector: google.ads.googleads.v4.services.KeywordViewService.GetKeywordView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.LabelService.GetLabel - deadline: 60.0 - - selector: google.ads.googleads.v4.services.LabelService.MutateLabels - deadline: 60.0 - - selector: google.ads.googleads.v4.services.LandingPageViewService.GetLandingPageView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.LanguageConstantService.GetLanguageConstant - deadline: 60.0 - - selector: google.ads.googleads.v4.services.LocationViewService.GetLocationView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ManagedPlacementViewService.GetManagedPlacementView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.MediaFileService.GetMediaFile - deadline: 60.0 - - selector: google.ads.googleads.v4.services.MediaFileService.MutateMediaFiles - deadline: 60.0 - - selector: 'google.ads.googleads.v4.services.MerchantCenterLinkService.*' - deadline: 60.0 - - selector: google.ads.googleads.v4.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant - deadline: 60.0 - - selector: google.ads.googleads.v4.services.MobileDeviceConstantService.GetMobileDeviceConstant - deadline: 60.0 - - selector: 'google.ads.googleads.v4.services.OfflineUserDataJobService.*' - deadline: 600.0 - - selector: google.ads.googleads.v4.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant - deadline: 60.0 - - selector: google.ads.googleads.v4.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ParentalStatusViewService.GetParentalStatusView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.PaymentsAccountService.ListPaymentsAccounts - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ProductGroupViewService.GetProductGroupView - deadline: 60.0 - - selector: 'google.ads.googleads.v4.services.ReachPlanService.*' - deadline: 600.0 - - selector: 'google.ads.googleads.v4.services.RecommendationService.*' - deadline: 600.0 - - selector: google.ads.googleads.v4.services.RemarketingActionService.GetRemarketingAction - deadline: 60.0 - - selector: google.ads.googleads.v4.services.RemarketingActionService.MutateRemarketingActions - deadline: 60.0 - - selector: google.ads.googleads.v4.services.SearchTermViewService.GetSearchTermView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.SharedCriterionService.GetSharedCriterion - deadline: 60.0 - - selector: google.ads.googleads.v4.services.SharedCriterionService.MutateSharedCriteria - deadline: 60.0 - - selector: google.ads.googleads.v4.services.SharedSetService.GetSharedSet - deadline: 60.0 - - selector: google.ads.googleads.v4.services.SharedSetService.MutateSharedSets - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ShoppingPerformanceViewService.GetShoppingPerformanceView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink - deadline: 600.0 - - selector: google.ads.googleads.v4.services.TopicConstantService.GetTopicConstant - deadline: 60.0 - - selector: google.ads.googleads.v4.services.TopicViewService.GetTopicView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.UserDataService.UploadUserData - deadline: 600.0 - - selector: google.ads.googleads.v4.services.UserInterestService.GetUserInterest - deadline: 60.0 - - selector: google.ads.googleads.v4.services.UserListService.GetUserList - deadline: 60.0 - - selector: google.ads.googleads.v4.services.UserListService.MutateUserLists - deadline: 60.0 - - selector: google.ads.googleads.v4.services.UserLocationViewService.GetUserLocationView - deadline: 60.0 - - selector: google.ads.googleads.v4.services.VideoService.GetVideo - deadline: 60.0 - - selector: 'google.longrunning.Operations.*' - deadline: 60.0 - -http: - rules: - - selector: google.longrunning.Operations.CancelOperation - post: '/v4/{name=customers/*/operations/*}:cancel' - body: '*' - - selector: google.longrunning.Operations.DeleteOperation - delete: '/v4/{name=customers/*/operations/*}' - - selector: google.longrunning.Operations.GetOperation - get: '/v4/{name=customers/*/operations/*}' - - selector: google.longrunning.Operations.ListOperations - get: '/v4/{name=customers/*/operations}' - - selector: google.longrunning.Operations.WaitOperation - post: '/v4/{name=customers/*/operations/*}:wait' - body: '*' - -authentication: - rules: - - selector: google.ads.googleads.v4.services.AccountBudgetProposalService.GetAccountBudgetProposal - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AccountBudgetProposalService.MutateAccountBudgetProposal - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AccountBudgetService.GetAccountBudget - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AccountLinkService.GetAccountLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AccountLinkService.MutateAccountLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupAdLabelService.GetAdGroupAdLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupAdLabelService.MutateAdGroupAdLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupAdService.GetAdGroupAd - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupAdService.MutateAdGroupAds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupAudienceViewService.GetAdGroupAudienceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupBidModifierService.GetAdGroupBidModifier - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupBidModifierService.MutateAdGroupBidModifiers - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupCriterionService.GetAdGroupCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupCriterionService.MutateAdGroupCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupFeedService.GetAdGroupFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupFeedService.MutateAdGroupFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupLabelService.GetAdGroupLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupLabelService.MutateAdGroupLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupService.GetAdGroup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupService.MutateAdGroups - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdGroupSimulationService.GetAdGroupSimulation - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdParameterService.GetAdParameter - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdParameterService.MutateAdParameters - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdScheduleViewService.GetAdScheduleView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdService.GetAd - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AdService.MutateAds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AgeRangeViewService.GetAgeRangeView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AssetService.GetAsset - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.AssetService.MutateAssets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v4.services.BatchJobService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.BiddingStrategyService.GetBiddingStrategy - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.BiddingStrategyService.MutateBiddingStrategies - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.BillingSetupService.GetBillingSetup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.BillingSetupService.MutateBillingSetup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignAudienceViewService.GetCampaignAudienceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignBidModifierService.GetCampaignBidModifier - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignBidModifierService.MutateCampaignBidModifiers - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignBudgetService.GetCampaignBudget - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignBudgetService.MutateCampaignBudgets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignCriterionService.GetCampaignCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignCriterionService.MutateCampaignCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v4.services.CampaignDraftService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v4.services.CampaignExperimentService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignExtensionSettingService.GetCampaignExtensionSetting - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignFeedService.GetCampaignFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignFeedService.MutateCampaignFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignLabelService.GetCampaignLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignLabelService.MutateCampaignLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignService.GetCampaign - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignService.MutateCampaigns - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignSharedSetService.GetCampaignSharedSet - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CampaignSharedSetService.MutateCampaignSharedSets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CarrierConstantService.GetCarrierConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ChangeStatusService.GetChangeStatus - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ClickViewService.GetClickView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ConversionActionService.GetConversionAction - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ConversionActionService.MutateConversionActions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ConversionAdjustmentUploadService.UploadConversionAdjustments - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ConversionUploadService.UploadCallConversions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ConversionUploadService.UploadClickConversions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CurrencyConstantService.GetCurrencyConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomInterestService.GetCustomInterest - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomInterestService.MutateCustomInterests - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomerClientLinkService.GetCustomerClientLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomerClientLinkService.MutateCustomerClientLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomerClientService.GetCustomerClient - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomerExtensionSettingService.GetCustomerExtensionSetting - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomerFeedService.GetCustomerFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomerFeedService.MutateCustomerFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomerLabelService.GetCustomerLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomerLabelService.MutateCustomerLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v4.services.CustomerManagerLinkService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v4.services.CustomerService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.DetailPlacementViewService.GetDetailPlacementView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.DisplayKeywordViewService.GetDisplayKeywordView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.DistanceViewService.GetDistanceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.DomainCategoryService.GetDomainCategory - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ExpandedLandingPageViewService.GetExpandedLandingPageView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ExtensionFeedItemService.GetExtensionFeedItem - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ExtensionFeedItemService.MutateExtensionFeedItems - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.FeedItemService.GetFeedItem - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.FeedItemService.MutateFeedItems - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.FeedItemTargetService.GetFeedItemTarget - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.FeedItemTargetService.MutateFeedItemTargets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.FeedMappingService.GetFeedMapping - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.FeedMappingService.MutateFeedMappings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.FeedPlaceholderViewService.GetFeedPlaceholderView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.FeedService.GetFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.FeedService.MutateFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.GenderViewService.GetGenderView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.GeoTargetConstantService.GetGeoTargetConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.GeoTargetConstantService.SuggestGeoTargetConstants - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.GeographicViewService.GetGeographicView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.GoogleAdsFieldService.GetGoogleAdsField - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.GoogleAdsFieldService.SearchGoogleAdsFields - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v4.services.GoogleAdsService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.GroupPlacementViewService.GetGroupPlacementView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.HotelGroupViewService.GetHotelGroupView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.HotelPerformanceViewService.GetHotelPerformanceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.IncomeRangeViewService.GetIncomeRangeView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.InvoiceService.ListInvoices - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.KeywordPlanCampaignService.GetKeywordPlanCampaign - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.KeywordPlanIdeaService.GenerateKeywordIdeas - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v4.services.KeywordPlanService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.KeywordViewService.GetKeywordView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.LabelService.GetLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.LabelService.MutateLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.LandingPageViewService.GetLandingPageView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.LanguageConstantService.GetLanguageConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.LocationViewService.GetLocationView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ManagedPlacementViewService.GetManagedPlacementView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.MediaFileService.GetMediaFile - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.MediaFileService.MutateMediaFiles - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v4.services.MerchantCenterLinkService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.MobileDeviceConstantService.GetMobileDeviceConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v4.services.OfflineUserDataJobService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ParentalStatusViewService.GetParentalStatusView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.PaymentsAccountService.ListPaymentsAccounts - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ProductGroupViewService.GetProductGroupView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v4.services.ReachPlanService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v4.services.RecommendationService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.RemarketingActionService.GetRemarketingAction - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.RemarketingActionService.MutateRemarketingActions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.SearchTermViewService.GetSearchTermView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.SharedCriterionService.GetSharedCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.SharedCriterionService.MutateSharedCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.SharedSetService.GetSharedSet - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.SharedSetService.MutateSharedSets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ShoppingPerformanceViewService.GetShoppingPerformanceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.TopicConstantService.GetTopicConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.TopicViewService.GetTopicView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.UserDataService.UploadUserData - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.UserInterestService.GetUserInterest - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.UserListService.GetUserList - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.UserListService.MutateUserLists - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.UserLocationViewService.GetUserLocationView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v4.services.VideoService.GetVideo - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.longrunning.Operations.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords diff --git a/google/ads/googleads/v4/resources/BUILD.bazel b/google/ads/googleads/v4/resources/BUILD.bazel deleted file mode 100644 index 12e9933dd..000000000 --- a/google/ads/googleads/v4/resources/BUILD.bazel +++ /dev/null @@ -1,97 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "resources_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v4/common:common_proto", - "//google/ads/googleads/v4/enums:enums_proto", - "//google/ads/googleads/v4/errors:errors_proto", - "//google/api:annotations_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - "@com_google_protobuf//:field_mask_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_proto_library", -) - -java_proto_library( - name = "resources_java_proto", - deps = [":resources_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_proto_library", -) - -csharp_proto_library( - name = "resources_csharp_proto", - deps = [":resources_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_proto_library", -) - -ruby_proto_library( - name = "resources_ruby_proto", - deps = [":resources_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_proto_library", -) - -py_proto_library( - name = "resources_py_proto", - deps = [":resources_proto"], -) diff --git a/google/ads/googleads/v4/resources/account_budget.proto b/google/ads/googleads/v4/resources/account_budget.proto deleted file mode 100644 index cc4d0a9c5..000000000 --- a/google/ads/googleads/v4/resources/account_budget.proto +++ /dev/null @@ -1,253 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/account_budget_proposal_type.proto"; -import "google/ads/googleads/v4/enums/account_budget_status.proto"; -import "google/ads/googleads/v4/enums/spending_limit_type.proto"; -import "google/ads/googleads/v4/enums/time_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the AccountBudget resource. - -// An account-level budget. It contains information about the budget itself, -// as well as the most recently approved changes to the budget and proposed -// changes that are pending approval. The proposed changes that are pending -// approval, if any, are found in 'pending_proposal'. Effective details about -// the budget are found in fields prefixed 'approved_', 'adjusted_' and those -// without a prefix. Since some effective details may differ from what the user -// had originally requested (e.g. spending limit), these differences are -// juxtaposed via 'proposed_', 'approved_', and possibly 'adjusted_' fields. -// -// This resource is mutated using AccountBudgetProposal and cannot be mutated -// directly. A budget may have at most one pending proposal at any given time. -// It is read through pending_proposal. -// -// Once approved, a budget may be subject to adjustments, such as credit -// adjustments. Adjustments create differences between the 'approved' and -// 'adjusted' fields, which would otherwise be identical. -message AccountBudget { - option (google.api.resource) = { - type: "googleads.googleapis.com/AccountBudget" - pattern: "customers/{customer}/accountBudgets/{account_budget}" - }; - - // A pending proposal associated with the enclosing account-level budget, - // if applicable. - message PendingAccountBudgetProposal { - // Output only. The resource name of the proposal. - // AccountBudgetProposal resource names have the form: - // - // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` - google.protobuf.StringValue account_budget_proposal = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - } - ]; - - // Output only. The type of this proposal, e.g. END to end the budget associated - // with this proposal. - google.ads.googleads.v4.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name to assign to the account-level budget. - google.protobuf.StringValue name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The start time in yyyy-MM-dd HH:mm:ss format. - google.protobuf.StringValue start_date_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A purchase order number is a value that helps users reference this budget - // in their monthly invoices. - google.protobuf.StringValue purchase_order_number = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Notes associated with this budget. - google.protobuf.StringValue notes = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The time when this account-level budget proposal was created. - // Formatted as yyyy-MM-dd HH:mm:ss. - google.protobuf.StringValue creation_date_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The end time of the account-level budget. - oneof end_time { - // Output only. The end time in yyyy-MM-dd HH:mm:ss format. - google.protobuf.StringValue end_date_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The end time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v4.enums.TimeTypeEnum.TimeType end_time_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The spending limit. - oneof spending_limit { - // Output only. The spending limit in micros. One million is equivalent to - // one unit. - google.protobuf.Int64Value spending_limit_micros = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v4.enums.SpendingLimitTypeEnum.SpendingLimitType spending_limit_type = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - } - - // Output only. The resource name of the account-level budget. - // AccountBudget resource names have the form: - // - // `customers/{customer_id}/accountBudgets/{account_budget_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudget" - } - ]; - - // Output only. The ID of the account-level budget. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the billing setup associated with this account-level - // budget. BillingSetup resource names have the form: - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - google.protobuf.StringValue billing_setup = 3 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; - - // Output only. The status of this account-level budget. - google.ads.googleads.v4.enums.AccountBudgetStatusEnum.AccountBudgetStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the account-level budget. - google.protobuf.StringValue name = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The proposed start time of the account-level budget in - // yyyy-MM-dd HH:mm:ss format. If a start time type of NOW was proposed, - // this is the time of request. - google.protobuf.StringValue proposed_start_date_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved start time of the account-level budget in yyyy-MM-dd HH:mm:ss - // format. - // - // For example, if a new budget is approved after the proposed start time, - // the approved start time is the time of approval. - google.protobuf.StringValue approved_start_date_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total adjustments amount. - // - // An example of an adjustment is courtesy credits. - google.protobuf.Int64Value total_adjustments_micros = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The value of Ads that have been served, in micros. - // - // This includes overdelivery costs, in which case a credit might be - // automatically applied to the budget (see total_adjustments_micros). - google.protobuf.Int64Value amount_served_micros = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A purchase order number is a value that helps users reference this budget - // in their monthly invoices. - google.protobuf.StringValue purchase_order_number = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Notes associated with the budget. - google.protobuf.StringValue notes = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The pending proposal to modify this budget, if applicable. - PendingAccountBudgetProposal pending_proposal = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The proposed end time of the account-level budget. - oneof proposed_end_time { - // Output only. The proposed end time in yyyy-MM-dd HH:mm:ss format. - google.protobuf.StringValue proposed_end_date_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The proposed end time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v4.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The approved end time of the account-level budget. - // - // For example, if a budget's end time is updated and the proposal is approved - // after the proposed end time, the approved end time is the time of approval. - oneof approved_end_time { - // Output only. The approved end time in yyyy-MM-dd HH:mm:ss format. - google.protobuf.StringValue approved_end_date_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved end time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v4.enums.TimeTypeEnum.TimeType approved_end_time_type = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The proposed spending limit. - oneof proposed_spending_limit { - // Output only. The proposed spending limit in micros. One million is equivalent to - // one unit. - google.protobuf.Int64Value proposed_spending_limit_micros = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The proposed spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v4.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The approved spending limit. - // - // For example, if the amount already spent by the account exceeds the - // proposed spending limit at the time the proposal is approved, the approved - // spending limit is set to the amount already spent. - oneof approved_spending_limit { - // Output only. The approved spending limit in micros. One million is equivalent to - // one unit. This will only be populated if the proposed spending limit - // is finite, and will always be greater than or equal to the - // proposed spending limit. - google.protobuf.Int64Value approved_spending_limit_micros = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved spending limit as a well-defined type, e.g. INFINITE. This - // will only be populated if the approved spending limit is INFINITE. - google.ads.googleads.v4.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The spending limit after adjustments have been applied. Adjustments are - // stored in total_adjustments_micros. - // - // This value has the final say on how much the account is allowed to spend. - oneof adjusted_spending_limit { - // Output only. The adjusted spending limit in micros. One million is equivalent to - // one unit. - // - // If the approved spending limit is finite, the adjusted - // spending limit may vary depending on the types of adjustments applied - // to this budget, if applicable. - // - // The different kinds of adjustments are described here: - // https://support.google.com/google-ads/answer/1704323 - // - // For example, a debit adjustment reduces how much the account is - // allowed to spend. - google.protobuf.Int64Value adjusted_spending_limit_micros = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The adjusted spending limit as a well-defined type, e.g. INFINITE. - // This will only be populated if the adjusted spending limit is INFINITE, - // which is guaranteed to be true if the approved spending limit is - // INFINITE. - google.ads.googleads.v4.enums.SpendingLimitTypeEnum.SpendingLimitType adjusted_spending_limit_type = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v4/resources/account_budget_proposal.proto b/google/ads/googleads/v4/resources/account_budget_proposal.proto deleted file mode 100644 index 52123eebe..000000000 --- a/google/ads/googleads/v4/resources/account_budget_proposal.proto +++ /dev/null @@ -1,161 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/account_budget_proposal_status.proto"; -import "google/ads/googleads/v4/enums/account_budget_proposal_type.proto"; -import "google/ads/googleads/v4/enums/spending_limit_type.proto"; -import "google/ads/googleads/v4/enums/time_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the AccountBudgetProposal resource. - -// An account-level budget proposal. -// -// All fields prefixed with 'proposed' may not necessarily be applied directly. -// For example, proposed spending limits may be adjusted before their -// application. This is true if the 'proposed' field has an 'approved' -// counterpart, e.g. spending limits. -// -// Please note that the proposal type (proposal_type) changes which fields are -// required and which must remain empty. -message AccountBudgetProposal { - option (google.api.resource) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - pattern: "customers/{customer}/accountBudgetProposals/{account_budget_proposal}" - }; - - // Immutable. The resource name of the proposal. - // AccountBudgetProposal resource names have the form: - // - // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - } - ]; - - // Output only. The ID of the proposal. - google.protobuf.Int64Value id = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The resource name of the billing setup associated with this proposal. - google.protobuf.StringValue billing_setup = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; - - // Immutable. The resource name of the account-level budget associated with this - // proposal. - google.protobuf.StringValue account_budget = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudget" - } - ]; - - // Immutable. The type of this proposal, e.g. END to end the budget associated with this - // proposal. - google.ads.googleads.v4.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The status of this proposal. - // When a new proposal is created, the status defaults to PENDING. - google.ads.googleads.v4.enums.AccountBudgetProposalStatusEnum.AccountBudgetProposalStatus status = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The name to assign to the account-level budget. - google.protobuf.StringValue proposed_name = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The approved start date time in yyyy-mm-dd hh:mm:ss format. - google.protobuf.StringValue approved_start_date_time = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. A purchase order number is a value that enables the user to help them - // reference this budget in their monthly invoices. - google.protobuf.StringValue proposed_purchase_order_number = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Notes associated with this budget. - google.protobuf.StringValue proposed_notes = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The date time when this account-level budget proposal was created, which is - // not the same as its approval date time, if applicable. - google.protobuf.StringValue creation_date_time = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The date time when this account-level budget was approved, if applicable. - google.protobuf.StringValue approval_date_time = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The proposed start date time of the account-level budget, which cannot be - // in the past. - oneof proposed_start_time { - // Immutable. The proposed start date time in yyyy-mm-dd hh:mm:ss format. - google.protobuf.StringValue proposed_start_date_time = 18 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The proposed start date time as a well-defined type, e.g. NOW. - google.ads.googleads.v4.enums.TimeTypeEnum.TimeType proposed_start_time_type = 7 [(google.api.field_behavior) = IMMUTABLE]; - } - - // The proposed end date time of the account-level budget, which cannot be in - // the past. - oneof proposed_end_time { - // Immutable. The proposed end date time in yyyy-mm-dd hh:mm:ss format. - google.protobuf.StringValue proposed_end_date_time = 19 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The proposed end date time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v4.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9 [(google.api.field_behavior) = IMMUTABLE]; - } - - // The approved end date time of the account-level budget. - oneof approved_end_time { - // Output only. The approved end date time in yyyy-mm-dd hh:mm:ss format. - google.protobuf.StringValue approved_end_date_time = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved end date time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v4.enums.TimeTypeEnum.TimeType approved_end_time_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The proposed spending limit. - oneof proposed_spending_limit { - // Immutable. The proposed spending limit in micros. One million is equivalent to - // one unit. - google.protobuf.Int64Value proposed_spending_limit_micros = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The proposed spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v4.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 11 [(google.api.field_behavior) = IMMUTABLE]; - } - - // The approved spending limit. - oneof approved_spending_limit { - // Output only. The approved spending limit in micros. One million is equivalent to - // one unit. - google.protobuf.Int64Value approved_spending_limit_micros = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v4.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v4/resources/account_link.proto b/google/ads/googleads/v4/resources/account_link.proto deleted file mode 100644 index 114fbf6bf..000000000 --- a/google/ads/googleads/v4/resources/account_link.proto +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/account_link_status.proto"; -import "google/ads/googleads/v4/enums/linked_account_type.proto"; -import "google/ads/googleads/v4/enums/mobile_app_vendor.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Represents the data sharing connection between a Google Ads account and -// another account -message AccountLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/AccountLink" - pattern: "customers/{customer}/accountLinks/{account_link}" - }; - - // Immutable. Resource name of the account link. - // AccountLink resource names have the form: - // `customers/{customer_id}/accountLinks/{account_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountLink" - } - ]; - - // Output only. The ID of the link. - // This field is read only. - google.protobuf.Int64Value account_link_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the link. - google.ads.googleads.v4.enums.AccountLinkStatusEnum.AccountLinkStatus status = 3; - - // Output only. The type of the linked account. - google.ads.googleads.v4.enums.LinkedAccountTypeEnum.LinkedAccountType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // An account linked to this Google Ads account. - oneof linked_account { - // Immutable. A third party app analytics link. - ThirdPartyAppAnalyticsLinkIdentifier third_party_app_analytics = 5 [(google.api.field_behavior) = IMMUTABLE]; - } -} - -// The identifiers of a Third Party App Analytics Link. -message ThirdPartyAppAnalyticsLinkIdentifier { - // Immutable. The ID of the app analytics provider. - // This field should not be empty when creating a new third - // party app analytics link. It is unable to be modified after the creation of - // the link. - google.protobuf.Int64Value app_analytics_provider_id = 1 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A string that uniquely identifies a mobile application from which the data - // was collected to the Google Ads API. For iOS, the ID string is the 9 digit - // string that appears at the end of an App Store URL (e.g., "422689480" for - // "Gmail" whose App Store link is - // https://apps.apple.com/us/app/gmail-email-by-google/id422689480). For - // Android, the ID string is the application's package name (e.g., - // "com.google.android.gm" for "Gmail" given Google Play link - // https://play.google.com/store/apps/details?id=com.google.android.gm) - // This field should not be empty when creating a new third - // party app analytics link. It is unable to be modified after the creation of - // the link. - google.protobuf.StringValue app_id = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The vendor of the app. - // This field should not be empty when creating a new third - // party app analytics link. It is unable to be modified after the creation of - // the link. - google.ads.googleads.v4.enums.MobileAppVendorEnum.MobileAppVendor app_vendor = 3 [(google.api.field_behavior) = IMMUTABLE]; -} diff --git a/google/ads/googleads/v4/resources/ad.proto b/google/ads/googleads/v4/resources/ad.proto deleted file mode 100644 index 55ed5f03a..000000000 --- a/google/ads/googleads/v4/resources/ad.proto +++ /dev/null @@ -1,181 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/ad_type_infos.proto"; -import "google/ads/googleads/v4/common/custom_parameter.proto"; -import "google/ads/googleads/v4/common/final_app_url.proto"; -import "google/ads/googleads/v4/common/url_collection.proto"; -import "google/ads/googleads/v4/enums/ad_type.proto"; -import "google/ads/googleads/v4/enums/device.proto"; -import "google/ads/googleads/v4/enums/system_managed_entity_source.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad type. - -// An ad. -message Ad { - option (google.api.resource) = { - type: "googleads.googleapis.com/Ad" - pattern: "customers/{customer}/ads/{ad}" - }; - - // Immutable. The resource name of the ad. - // Ad resource names have the form: - // - // `customers/{customer_id}/ads/{ad_id}` - string resource_name = 37 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Ad" - } - ]; - - // Output only. The ID of the ad. - google.protobuf.Int64Value id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The list of possible final URLs after all cross-domain redirects for the - // ad. - repeated google.protobuf.StringValue final_urls = 2; - - // A list of final app URLs that will be used on mobile if the user has the - // specific app installed. - repeated google.ads.googleads.v4.common.FinalAppUrl final_app_urls = 35; - - // The list of possible final mobile URLs after all cross-domain redirects - // for the ad. - repeated google.protobuf.StringValue final_mobile_urls = 16; - - // The URL template for constructing a tracking URL. - google.protobuf.StringValue tracking_url_template = 12; - - // The suffix to use when constructing a final URL. - google.protobuf.StringValue final_url_suffix = 38; - - // The list of mappings that can be used to substitute custom parameter tags - // in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - // For mutates, please use url custom parameter operations. - repeated google.ads.googleads.v4.common.CustomParameter url_custom_parameters = 10; - - // The URL that appears in the ad description for some ad formats. - google.protobuf.StringValue display_url = 4; - - // Output only. The type of ad. - google.ads.googleads.v4.enums.AdTypeEnum.AdType type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates if this ad was automatically added by Google Ads and not by a - // user. For example, this could happen when ads are automatically created as - // suggestions for new ads based on knowledge of how existing ads are - // performing. - google.protobuf.BoolValue added_by_google_ads = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The device preference for the ad. You can only specify a preference for - // mobile devices. When this preference is set the ad will be preferred over - // other ads when being displayed on a mobile device. The ad can still be - // displayed on other device types, e.g. if no other ads are available. - // If unspecified (no device preference), all devices are targeted. - // This is only supported by some ad types. - google.ads.googleads.v4.enums.DeviceEnum.Device device_preference = 20; - - // Additional URLs for the ad that are tagged with a unique identifier that - // can be referenced from other fields in the ad. - repeated google.ads.googleads.v4.common.UrlCollection url_collections = 26; - - // Immutable. The name of the ad. This is only used to be able to identify the ad. It - // does not need to be unique and does not affect the served ad. - google.protobuf.StringValue name = 23 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. If this ad is system managed, then this field will indicate the source. - // This field is read-only. - google.ads.googleads.v4.enums.SystemManagedResourceSourceEnum.SystemManagedResourceSource system_managed_resource_source = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Details pertinent to the ad type. Exactly one value must be set. - oneof ad_data { - // Immutable. Details pertaining to a text ad. - google.ads.googleads.v4.common.TextAdInfo text_ad = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to an expanded text ad. - google.ads.googleads.v4.common.ExpandedTextAdInfo expanded_text_ad = 7; - - // Details pertaining to a call-only ad. - google.ads.googleads.v4.common.CallOnlyAdInfo call_only_ad = 13; - - // Immutable. Details pertaining to an Expanded Dynamic Search Ad. - // This type of ad has its headline, final URLs, and display URL - // auto-generated at serving time according to domain name specific - // information provided by `dynamic_search_ads_setting` linked at the - // campaign level. - google.ads.googleads.v4.common.ExpandedDynamicSearchAdInfo expanded_dynamic_search_ad = 14 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to a hotel ad. - google.ads.googleads.v4.common.HotelAdInfo hotel_ad = 15; - - // Details pertaining to a Smart Shopping ad. - google.ads.googleads.v4.common.ShoppingSmartAdInfo shopping_smart_ad = 17; - - // Details pertaining to a Shopping product ad. - google.ads.googleads.v4.common.ShoppingProductAdInfo shopping_product_ad = 18; - - // Immutable. Details pertaining to a Gmail ad. - google.ads.googleads.v4.common.GmailAdInfo gmail_ad = 21 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Details pertaining to an Image ad. - google.ads.googleads.v4.common.ImageAdInfo image_ad = 22 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to a Video ad. - google.ads.googleads.v4.common.VideoAdInfo video_ad = 24; - - // Details pertaining to a responsive search ad. - google.ads.googleads.v4.common.ResponsiveSearchAdInfo responsive_search_ad = 25; - - // Details pertaining to a legacy responsive display ad. - google.ads.googleads.v4.common.LegacyResponsiveDisplayAdInfo legacy_responsive_display_ad = 28; - - // Details pertaining to an app ad. - google.ads.googleads.v4.common.AppAdInfo app_ad = 29; - - // Immutable. Details pertaining to a legacy app install ad. - google.ads.googleads.v4.common.LegacyAppInstallAdInfo legacy_app_install_ad = 30 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to a responsive display ad. - google.ads.googleads.v4.common.ResponsiveDisplayAdInfo responsive_display_ad = 31; - - // Details pertaining to a local ad. - google.ads.googleads.v4.common.LocalAdInfo local_ad = 32; - - // Details pertaining to a display upload ad. - google.ads.googleads.v4.common.DisplayUploadAdInfo display_upload_ad = 33; - - // Details pertaining to an app engagement ad. - google.ads.googleads.v4.common.AppEngagementAdInfo app_engagement_ad = 34; - - // Details pertaining to a Shopping Comparison Listing ad. - google.ads.googleads.v4.common.ShoppingComparisonListingAdInfo shopping_comparison_listing_ad = 36; - } -} diff --git a/google/ads/googleads/v4/resources/ad_group.proto b/google/ads/googleads/v4/resources/ad_group.proto deleted file mode 100644 index d23806433..000000000 --- a/google/ads/googleads/v4/resources/ad_group.proto +++ /dev/null @@ -1,177 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/custom_parameter.proto"; -import "google/ads/googleads/v4/common/explorer_auto_optimizer_setting.proto"; -import "google/ads/googleads/v4/common/targeting_setting.proto"; -import "google/ads/googleads/v4/enums/ad_group_ad_rotation_mode.proto"; -import "google/ads/googleads/v4/enums/ad_group_status.proto"; -import "google/ads/googleads/v4/enums/ad_group_type.proto"; -import "google/ads/googleads/v4/enums/bidding_source.proto"; -import "google/ads/googleads/v4/enums/targeting_dimension.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad group resource. - -// An ad group. -message AdGroup { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroup" - pattern: "customers/{customer}/adGroups/{ad_group}" - }; - - // Immutable. The resource name of the ad group. - // Ad group resource names have the form: - // - // `customers/{customer_id}/adGroups/{ad_group_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. The ID of the ad group. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the ad group. - // - // This field is required and should not be empty when creating new ad - // groups. - // - // It must contain fewer than 255 UTF-8 full-width characters. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - google.protobuf.StringValue name = 4; - - // The status of the ad group. - google.ads.googleads.v4.enums.AdGroupStatusEnum.AdGroupStatus status = 5; - - // Immutable. The type of the ad group. - google.ads.googleads.v4.enums.AdGroupTypeEnum.AdGroupType type = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // The ad rotation mode of the ad group. - google.ads.googleads.v4.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; - - // Output only. For draft or experiment ad groups, this field is the resource name of the - // base ad group from which this ad group was created. If a draft or - // experiment ad group does not have a base ad group, then this field is null. - // - // For base ad groups, this field equals the ad group resource name. - // - // This field is read-only. - google.protobuf.StringValue base_ad_group = 18 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // The URL template for constructing a tracking URL. - google.protobuf.StringValue tracking_url_template = 13; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v4.common.CustomParameter url_custom_parameters = 6; - - // Immutable. The campaign to which the ad group belongs. - google.protobuf.StringValue campaign = 10 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The maximum CPC (cost-per-click) bid. - google.protobuf.Int64Value cpc_bid_micros = 14; - - // The maximum CPM (cost-per-thousand viewable impressions) bid. - google.protobuf.Int64Value cpm_bid_micros = 15; - - // The target CPA (cost-per-acquisition). - google.protobuf.Int64Value target_cpa_micros = 27; - - // Output only. The CPV (cost-per-view) bid. - google.protobuf.Int64Value cpv_bid_micros = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Average amount in micros that the advertiser is willing to pay for every - // thousand times the ad is shown. - google.protobuf.Int64Value target_cpm_micros = 26; - - // The target ROAS (return-on-ad-spend) override. If the ad group's campaign - // bidding strategy is a standard Target ROAS strategy, then this field - // overrides the target ROAS specified in the campaign's bidding strategy. - // Otherwise, this value is ignored. - google.protobuf.DoubleValue target_roas = 30; - - // The percent cpc bid amount, expressed as a fraction of the advertised price - // for some good or service. The valid range for the fraction is [0,1) and the - // value stored here is 1,000,000 * [fraction]. - google.protobuf.Int64Value percent_cpc_bid_micros = 20; - - // Settings for the Display Campaign Optimizer, initially termed "Explorer". - google.ads.googleads.v4.common.ExplorerAutoOptimizerSetting explorer_auto_optimizer_setting = 21; - - // Allows advertisers to specify a targeting dimension on which to place - // absolute bids. This is only applicable for campaigns that target only the - // display network and not search. - google.ads.googleads.v4.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; - - // URL template for appending params to Final URL. - google.protobuf.StringValue final_url_suffix = 24; - - // Setting for targeting related features. - google.ads.googleads.v4.common.TargetingSetting targeting_setting = 25; - - // Output only. The effective target CPA (cost-per-acquisition). - // This field is read-only. - google.protobuf.Int64Value effective_target_cpa_micros = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective target CPA. - // This field is read-only. - google.ads.googleads.v4.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective target ROAS (return-on-ad-spend). - // This field is read-only. - google.protobuf.DoubleValue effective_target_roas = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective target ROAS. - // This field is read-only. - google.ads.googleads.v4.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource names of labels attached to this ad group. - repeated google.protobuf.StringValue labels = 33 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupLabel" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/ad_group_ad.proto b/google/ads/googleads/v4/resources/ad_group_ad.proto deleted file mode 100644 index ff42d6c47..000000000 --- a/google/ads/googleads/v4/resources/ad_group_ad.proto +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/policy.proto"; -import "google/ads/googleads/v4/enums/ad_group_ad_status.proto"; -import "google/ads/googleads/v4/enums/ad_strength.proto"; -import "google/ads/googleads/v4/enums/policy_approval_status.proto"; -import "google/ads/googleads/v4/enums/policy_review_status.proto"; -import "google/ads/googleads/v4/resources/ad.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad group ad resource. - -// An ad group ad. -message AdGroupAd { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAd" - pattern: "customers/{customer}/adGroupAds/{ad_group_ad}" - }; - - // Immutable. The resource name of the ad. - // Ad group ad resource names have the form: - // - // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // The status of the ad. - google.ads.googleads.v4.enums.AdGroupAdStatusEnum.AdGroupAdStatus status = 3; - - // Immutable. The ad group to which the ad belongs. - google.protobuf.StringValue ad_group = 4 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Immutable. The ad. - Ad ad = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Policy information for the ad. - AdGroupAdPolicySummary policy_summary = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Overall ad strength for this ad group ad. - google.ads.googleads.v4.enums.AdStrengthEnum.AdStrength ad_strength = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Contains policy information for an ad. -message AdGroupAdPolicySummary { - // Output only. The list of policy findings for this ad. - repeated google.ads.googleads.v4.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Where in the review process this ad is. - google.ads.googleads.v4.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The overall approval status of this ad, calculated based on the status of - // its individual policy topic entries. - google.ads.googleads.v4.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/ad_group_ad_asset_view.proto b/google/ads/googleads/v4/resources/ad_group_ad_asset_view.proto deleted file mode 100644 index 57513455c..000000000 --- a/google/ads/googleads/v4/resources/ad_group_ad_asset_view.proto +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/policy.proto"; -import "google/ads/googleads/v4/enums/asset_field_type.proto"; -import "google/ads/googleads/v4/enums/asset_performance_label.proto"; -import "google/ads/googleads/v4/enums/policy_approval_status.proto"; -import "google/ads/googleads/v4/enums/policy_review_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdAssetViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad group ad asset view resource. - -// A link between an AdGroupAd and an Asset. -// Currently we only support AdGroupAdAssetView for AppAds. -message AdGroupAdAssetView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAdAssetView" - pattern: "customers/{customer}/adGroupAdAssetViews/{ad_group_ad_asset_view}" - }; - - // Output only. The resource name of the ad group ad asset view. - // Ad group ad asset view resource names have the form (Before V4): - // - // `customers/{customer_id}/adGroupAdAssets/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}` - // - // Ad group ad asset view resource names have the form (Beginning from V4): - // - // `customers/{customer_id}/adGroupAdAssetViews/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdAssetView" - } - ]; - - // Output only. The ad group ad to which the asset is linked. - google.protobuf.StringValue ad_group_ad = 5 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // Output only. The asset which is linked to the ad group ad. - google.protobuf.StringValue asset = 6 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; - - // Output only. Role that the asset takes in the ad. - google.ads.googleads.v4.enums.AssetFieldTypeEnum.AssetFieldType field_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Policy information for the ad group ad asset. - AdGroupAdAssetPolicySummary policy_summary = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Performance of an asset linkage. - google.ads.googleads.v4.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel performance_label = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Contains policy information for an ad group ad asset. -message AdGroupAdAssetPolicySummary { - // Output only. The list of policy findings for the ad group ad asset. - repeated google.ads.googleads.v4.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Where in the review process this ad group ad asset is. - google.ads.googleads.v4.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The overall approval status of this ad group ad asset, calculated based on - // the status of its individual policy topic entries. - google.ads.googleads.v4.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/ad_group_ad_label.proto b/google/ads/googleads/v4/resources/ad_group_ad_label.proto deleted file mode 100644 index 0190674ac..000000000 --- a/google/ads/googleads/v4/resources/ad_group_ad_label.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdLabelProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad group ad label resource. - -// A relationship between an ad group ad and a label. -message AdGroupAdLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAdLabel" - pattern: "customers/{customer}/adGroupAdLabels/{ad_group_ad_label}" - }; - - // Immutable. The resource name of the ad group ad label. - // Ad group ad label resource names have the form: - // `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdLabel" - } - ]; - - // Immutable. The ad group ad to which the label is attached. - google.protobuf.StringValue ad_group_ad = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // Immutable. The label assigned to the ad group ad. - google.protobuf.StringValue label = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/ad_group_audience_view.proto b/google/ads/googleads/v4/resources/ad_group_audience_view.proto deleted file mode 100644 index ab2a1984d..000000000 --- a/google/ads/googleads/v4/resources/ad_group_audience_view.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAudienceViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad group audience view resource. - -// An ad group audience view. -// Includes performance data from interests and remarketing lists for Display -// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), -// aggregated at the audience level. -message AdGroupAudienceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAudienceView" - pattern: "customers/{customer}/adGroupAudienceViews/{ad_group_audience_view}" - }; - - // Output only. The resource name of the ad group audience view. - // Ad group audience view resource names have the form: - // - // `customers/{customer_id}/adGroupAudienceViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/ad_group_bid_modifier.proto b/google/ads/googleads/v4/resources/ad_group_bid_modifier.proto deleted file mode 100644 index 37171de6e..000000000 --- a/google/ads/googleads/v4/resources/ad_group_bid_modifier.proto +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/criteria.proto"; -import "google/ads/googleads/v4/enums/bid_modifier_source.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupBidModifierProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad group bid modifier resource. - -// Represents an ad group bid modifier. -message AdGroupBidModifier { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - pattern: "customers/{customer}/adGroupBidModifiers/{ad_group_bid_modifier}" - }; - - // Immutable. The resource name of the ad group bid modifier. - // Ad group bid modifier resource names have the form: - // - // `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - } - ]; - - // Immutable. The ad group to which this criterion belongs. - google.protobuf.StringValue ad_group = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. The ID of the criterion to bid modify. - // - // This field is ignored for mutates. - google.protobuf.Int64Value criterion_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bid when the criterion matches. The modifier must be - // in the range: 0.1 - 10.0. The range is 1.0 - 6.0 for PreferredContent. - // Use 0 to opt out of a Device type. - google.protobuf.DoubleValue bid_modifier = 4; - - // Output only. The base ad group from which this draft/trial adgroup bid modifier was - // created. If ad_group is a base ad group then this field will be equal to - // ad_group. If the ad group was created in the draft or trial and has no - // corresponding base ad group, then this field will be null. - // This field is readonly. - google.protobuf.StringValue base_ad_group = 9 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Bid modifier source. - google.ads.googleads.v4.enums.BidModifierSourceEnum.BidModifierSource bid_modifier_source = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The criterion of this ad group bid modifier. - // - // Required in create operations starting in V5. - oneof criterion { - // Immutable. Criterion for hotel date selection (default dates vs. user selected). - google.ads.googleads.v4.common.HotelDateSelectionTypeInfo hotel_date_selection_type = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Criterion for number of days prior to the stay the booking is being made. - google.ads.googleads.v4.common.HotelAdvanceBookingWindowInfo hotel_advance_booking_window = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Criterion for length of hotel stay in nights. - google.ads.googleads.v4.common.HotelLengthOfStayInfo hotel_length_of_stay = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Criterion for day of the week the booking is for. - google.ads.googleads.v4.common.HotelCheckInDayInfo hotel_check_in_day = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A device criterion. - google.ads.googleads.v4.common.DeviceInfo device = 11 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A preferred content criterion. - google.ads.googleads.v4.common.PreferredContentInfo preferred_content = 12 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v4/resources/ad_group_criterion.proto b/google/ads/googleads/v4/resources/ad_group_criterion.proto deleted file mode 100644 index 00a875a29..000000000 --- a/google/ads/googleads/v4/resources/ad_group_criterion.proto +++ /dev/null @@ -1,273 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/criteria.proto"; -import "google/ads/googleads/v4/common/custom_parameter.proto"; -import "google/ads/googleads/v4/enums/ad_group_criterion_approval_status.proto"; -import "google/ads/googleads/v4/enums/ad_group_criterion_status.proto"; -import "google/ads/googleads/v4/enums/bidding_source.proto"; -import "google/ads/googleads/v4/enums/criterion_system_serving_status.proto"; -import "google/ads/googleads/v4/enums/criterion_type.proto"; -import "google/ads/googleads/v4/enums/quality_score_bucket.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad group criterion resource. - -// An ad group criterion. -message AdGroupCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupCriterion" - pattern: "customers/{customer}/adGroupCriteria/{ad_group_criterion}" - }; - - // A container for ad group criterion quality information. - message QualityInfo { - // Output only. The quality score. - // - // This field may not be populated if Google does not have enough - // information to determine a value. - google.protobuf.Int32Value quality_score = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The performance of the ad compared to other advertisers. - google.ads.googleads.v4.enums.QualityScoreBucketEnum.QualityScoreBucket creative_quality_score = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The quality score of the landing page. - google.ads.googleads.v4.enums.QualityScoreBucketEnum.QualityScoreBucket post_click_quality_score = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The click-through rate compared to that of other advertisers. - google.ads.googleads.v4.enums.QualityScoreBucketEnum.QualityScoreBucket search_predicted_ctr = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Estimates for criterion bids at various positions. - message PositionEstimates { - // Output only. The estimate of the CPC bid required for ad to be shown on first - // page of search results. - google.protobuf.Int64Value first_page_cpc_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimate of the CPC bid required for ad to be displayed in first - // position, at the top of the first page of search results. - google.protobuf.Int64Value first_position_cpc_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimate of the CPC bid required for ad to be displayed at the top - // of the first page of search results. - google.protobuf.Int64Value top_of_page_cpc_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimate of how many clicks per week you might get by changing your - // keyword bid to the value in first_position_cpc_micros. - google.protobuf.Int64Value estimated_add_clicks_at_first_position_cpc = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimate of how your cost per week might change when changing your - // keyword bid to the value in first_position_cpc_micros. - google.protobuf.Int64Value estimated_add_cost_at_first_position_cpc = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the ad group criterion. - // Ad group criterion resource names have the form: - // - // `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Output only. The ID of the criterion. - // - // This field is ignored for mutates. - google.protobuf.Int64Value criterion_id = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the criterion. - // - // This is the status of the ad group criterion entity, set by the client. - // Note: UI reports may incorporate additional information that affects - // whether a criterion is eligible to run. In some cases a criterion that's - // REMOVED in the API can still show as enabled in the UI. - // For example, campaigns by default show to users of all age ranges unless - // excluded. The UI will show each age range as "enabled", since they're - // eligible to see the ads; but AdGroupCriterion.status will show "removed", - // since no positive criterion was added. - google.ads.googleads.v4.enums.AdGroupCriterionStatusEnum.AdGroupCriterionStatus status = 3; - - // Output only. Information regarding the quality of the criterion. - QualityInfo quality_info = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The ad group to which the criterion belongs. - google.protobuf.StringValue ad_group = 5 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. The type of the criterion. - google.ads.googleads.v4.enums.CriterionTypeEnum.CriterionType type = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Whether to target (`false`) or exclude (`true`) the criterion. - // - // This field is immutable. To switch a criterion from positive to negative, - // remove then re-add it. - google.protobuf.BoolValue negative = 31 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Serving status of the criterion. - google.ads.googleads.v4.enums.CriterionSystemServingStatusEnum.CriterionSystemServingStatus system_serving_status = 52 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Approval status of the criterion. - google.ads.googleads.v4.enums.AdGroupCriterionApprovalStatusEnum.AdGroupCriterionApprovalStatus approval_status = 53 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of disapproval reasons of the criterion. - // - // The different reasons for disapproving a criterion can be found here: - // https://support.google.com/adspolicy/answer/6008942 - // - // This field is read-only. - repeated google.protobuf.StringValue disapproval_reasons = 55 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bid when the criterion matches. The modifier must be - // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. - google.protobuf.DoubleValue bid_modifier = 44; - - // The CPC (cost-per-click) bid. - google.protobuf.Int64Value cpc_bid_micros = 16; - - // The CPM (cost-per-thousand viewable impressions) bid. - google.protobuf.Int64Value cpm_bid_micros = 17; - - // The CPV (cost-per-view) bid. - google.protobuf.Int64Value cpv_bid_micros = 24; - - // The CPC bid amount, expressed as a fraction of the advertised price - // for some good or service. The valid range for the fraction is [0,1) and the - // value stored here is 1,000,000 * [fraction]. - google.protobuf.Int64Value percent_cpc_bid_micros = 33; - - // Output only. The effective CPC (cost-per-click) bid. - google.protobuf.Int64Value effective_cpc_bid_micros = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective CPM (cost-per-thousand viewable impressions) bid. - google.protobuf.Int64Value effective_cpm_bid_micros = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective CPV (cost-per-view) bid. - google.protobuf.Int64Value effective_cpv_bid_micros = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective Percent CPC bid amount. - google.protobuf.Int64Value effective_percent_cpc_bid_micros = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective CPC bid. - google.ads.googleads.v4.enums.BiddingSourceEnum.BiddingSource effective_cpc_bid_source = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective CPM bid. - google.ads.googleads.v4.enums.BiddingSourceEnum.BiddingSource effective_cpm_bid_source = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective CPV bid. - google.ads.googleads.v4.enums.BiddingSourceEnum.BiddingSource effective_cpv_bid_source = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective Percent CPC bid. - google.ads.googleads.v4.enums.BiddingSourceEnum.BiddingSource effective_percent_cpc_bid_source = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimates for criterion bids at various positions. - PositionEstimates position_estimates = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The list of possible final URLs after all cross-domain redirects for the - // ad. - repeated google.protobuf.StringValue final_urls = 11; - - // The list of possible final mobile URLs after all cross-domain redirects. - repeated google.protobuf.StringValue final_mobile_urls = 51; - - // URL template for appending params to final URL. - google.protobuf.StringValue final_url_suffix = 50; - - // The URL template for constructing a tracking URL. - google.protobuf.StringValue tracking_url_template = 13; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v4.common.CustomParameter url_custom_parameters = 14; - - // The ad group criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. Keyword. - google.ads.googleads.v4.common.KeywordInfo keyword = 27 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v4.common.PlacementInfo placement = 28 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile app category. - google.ads.googleads.v4.common.MobileAppCategoryInfo mobile_app_category = 29 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile application. - google.ads.googleads.v4.common.MobileApplicationInfo mobile_application = 30 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Listing group. - google.ads.googleads.v4.common.ListingGroupInfo listing_group = 32 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Age range. - google.ads.googleads.v4.common.AgeRangeInfo age_range = 36 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Gender. - google.ads.googleads.v4.common.GenderInfo gender = 37 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Income range. - google.ads.googleads.v4.common.IncomeRangeInfo income_range = 38 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Parental status. - google.ads.googleads.v4.common.ParentalStatusInfo parental_status = 39 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User List. - google.ads.googleads.v4.common.UserListInfo user_list = 42 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v4.common.YouTubeVideoInfo youtube_video = 40 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v4.common.YouTubeChannelInfo youtube_channel = 41 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Topic. - google.ads.googleads.v4.common.TopicInfo topic = 43 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User Interest. - google.ads.googleads.v4.common.UserInterestInfo user_interest = 45 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Webpage - google.ads.googleads.v4.common.WebpageInfo webpage = 46 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. App Payment Model. - google.ads.googleads.v4.common.AppPaymentModelInfo app_payment_model = 47 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Affinity. - google.ads.googleads.v4.common.CustomAffinityInfo custom_affinity = 48 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Intent. - google.ads.googleads.v4.common.CustomIntentInfo custom_intent = 49 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v4/resources/ad_group_criterion_label.proto b/google/ads/googleads/v4/resources/ad_group_criterion_label.proto deleted file mode 100644 index 4fe1dd838..000000000 --- a/google/ads/googleads/v4/resources/ad_group_criterion_label.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionLabelProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad group criterion label resource. - -// A relationship between an ad group criterion and a label. -message AdGroupCriterionLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupCriterionLabel" - pattern: "customers/{customer}/adGroupCriterionLabels/{ad_group_criterion_label}" - }; - - // Immutable. The resource name of the ad group criterion label. - // Ad group criterion label resource names have the form: - // `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionLabel" - } - ]; - - // Immutable. The ad group criterion to which the label is attached. - google.protobuf.StringValue ad_group_criterion = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Immutable. The label assigned to the ad group criterion. - google.protobuf.StringValue label = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/ad_group_criterion_simulation.proto b/google/ads/googleads/v4/resources/ad_group_criterion_simulation.proto deleted file mode 100644 index 2759db31c..000000000 --- a/google/ads/googleads/v4/resources/ad_group_criterion_simulation.proto +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/simulation.proto"; -import "google/ads/googleads/v4/enums/simulation_modification_method.proto"; -import "google/ads/googleads/v4/enums/simulation_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionSimulationProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad group criterion simulation resource. - -// An ad group criterion simulation. Supported combinations of advertising -// channel type, criterion type, simulation type, and simulation modification -// method are detailed below respectively. Hotel AdGroupCriterion simulation -// operations starting in V5. -// -// 1. DISPLAY - KEYWORD - CPC_BID - UNIFORM -// 2. SEARCH - KEYWORD - CPC_BID - UNIFORM -// 3. SHOPPING - LISTING_GROUP - CPC_BID - UNIFORM -// 4. HOTEL - LISTING_GROUP - CPC_BID - UNIFORM -// 5. HOTEL - LISTING_GROUP - PERCENT_CPC_BID - UNIFORM -message AdGroupCriterionSimulation { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupCriterionSimulation" - pattern: "customers/{customer}/adGroupCriterionSimulations/{ad_group_criterion_simulation}" - }; - - // Output only. The resource name of the ad group criterion simulation. - // Ad group criterion simulation resource names have the form: - // - // `customers/{customer_id}/adGroupCriterionSimulations/{ad_group_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionSimulation" - } - ]; - - // Output only. AdGroup ID of the simulation. - google.protobuf.Int64Value ad_group_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Criterion ID of the simulation. - google.protobuf.Int64Value criterion_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The field that the simulation modifies. - google.ads.googleads.v4.enums.SimulationTypeEnum.SimulationType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. How the simulation modifies the field. - google.ads.googleads.v4.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. First day on which the simulation is based, in YYYY-MM-DD format. - google.protobuf.StringValue start_date = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Last day on which the simulation is based, in YYYY-MM-DD format. - google.protobuf.StringValue end_date = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // List of simulation points. - oneof point_list { - // Output only. Simulation points if the simulation type is CPC_BID. - google.ads.googleads.v4.common.CpcBidSimulationPointList cpc_bid_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v4/resources/ad_group_extension_setting.proto b/google/ads/googleads/v4/resources/ad_group_extension_setting.proto deleted file mode 100644 index 973190451..000000000 --- a/google/ads/googleads/v4/resources/ad_group_extension_setting.proto +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/extension_setting_device.proto"; -import "google/ads/googleads/v4/enums/extension_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupExtensionSettingProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the AdGroupExtensionSetting resource. - -// An ad group extension setting. -message AdGroupExtensionSetting { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupExtensionSetting" - pattern: "customers/{customer}/adGroupExtensionSettings/{ad_group_extension_setting}" - }; - - // Immutable. The resource name of the ad group extension setting. - // AdGroupExtensionSetting resource names have the form: - // - // `customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupExtensionSetting" - } - ]; - - // Immutable. The extension type of the ad group extension setting. - google.ads.googleads.v4.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The resource name of the ad group. The linked extension feed items will - // serve under this ad group. - // AdGroup resource names have the form: - // - // `customers/{customer_id}/adGroups/{ad_group_id}` - google.protobuf.StringValue ad_group = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // The resource names of the extension feed items to serve under the ad group. - // ExtensionFeedItem resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - repeated google.protobuf.StringValue extension_feed_items = 4 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - }]; - - // The device for which the extensions will serve. Optional. - google.ads.googleads.v4.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; -} diff --git a/google/ads/googleads/v4/resources/ad_group_feed.proto b/google/ads/googleads/v4/resources/ad_group_feed.proto deleted file mode 100644 index 794375ad5..000000000 --- a/google/ads/googleads/v4/resources/ad_group_feed.proto +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/matching_function.proto"; -import "google/ads/googleads/v4/enums/feed_link_status.proto"; -import "google/ads/googleads/v4/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupFeedProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the AdGroupFeed resource. - -// An ad group feed. -message AdGroupFeed { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupFeed" - pattern: "customers/{customer}/adGroupFeeds/{ad_group_feed}" - }; - - // Immutable. The resource name of the ad group feed. - // Ad group feed resource names have the form: - // - // `customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id} - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupFeed" - } - ]; - - // Immutable. The feed being linked to the ad group. - google.protobuf.StringValue feed = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Immutable. The ad group being linked to the feed. - google.protobuf.StringValue ad_group = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Indicates which placeholder types the feed may populate under the connected - // ad group. Required. - repeated google.ads.googleads.v4.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; - - // Matching function associated with the AdGroupFeed. - // The matching function is used to filter the set of feed items selected. - // Required. - google.ads.googleads.v4.common.MatchingFunction matching_function = 5; - - // Output only. Status of the ad group feed. - // This field is read-only. - google.ads.googleads.v4.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/ad_group_label.proto b/google/ads/googleads/v4/resources/ad_group_label.proto deleted file mode 100644 index e9c91fc7b..000000000 --- a/google/ads/googleads/v4/resources/ad_group_label.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupLabelProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad group label resource. - -// A relationship between an ad group and a label. -message AdGroupLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupLabel" - pattern: "customers/{customer}/adGroupLabels/{ad_group_label}" - }; - - // Immutable. The resource name of the ad group label. - // Ad group label resource names have the form: - // `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupLabel" - } - ]; - - // Immutable. The ad group to which the label is attached. - google.protobuf.StringValue ad_group = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Immutable. The label assigned to the ad group. - google.protobuf.StringValue label = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/ad_group_simulation.proto b/google/ads/googleads/v4/resources/ad_group_simulation.proto deleted file mode 100644 index 3b1af10a2..000000000 --- a/google/ads/googleads/v4/resources/ad_group_simulation.proto +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/simulation.proto"; -import "google/ads/googleads/v4/enums/simulation_modification_method.proto"; -import "google/ads/googleads/v4/enums/simulation_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupSimulationProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad group simulation resource. - -// An ad group simulation. Supported combinations of advertising -// channel type, simulation type and simulation modification method is -// detailed below respectively. -// -// 1. SEARCH - CPC_BID - DEFAULT -// 2. SEARCH - CPC_BID - UNIFORM -// 3. SEARCH - TARGET_CPA - UNIFORM -// 4. SEARCH - TARGET_ROAS - UNIFORM -// 5. DISPLAY - CPC_BID - DEFAULT -// 6. DISPLAY - CPC_BID - UNIFORM -// 7. DISPLAY - TARGET_CPA - UNIFORM -// 8. VIDEO - CPV_BID - DEFAULT -// 9. VIDEO - CPV_BID - UNIFORM -message AdGroupSimulation { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupSimulation" - pattern: "customers/{customer}/adGroupSimulations/{ad_group_simulation}" - }; - - // Output only. The resource name of the ad group simulation. - // Ad group simulation resource names have the form: - // - // `customers/{customer_id}/adGroupSimulations/{ad_group_id}~{type}~{modification_method}~{start_date}~{end_date}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupSimulation" - } - ]; - - // Output only. Ad group id of the simulation. - google.protobuf.Int64Value ad_group_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The field that the simulation modifies. - google.ads.googleads.v4.enums.SimulationTypeEnum.SimulationType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. How the simulation modifies the field. - google.ads.googleads.v4.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. First day on which the simulation is based, in YYYY-MM-DD format. - google.protobuf.StringValue start_date = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Last day on which the simulation is based, in YYYY-MM-DD format - google.protobuf.StringValue end_date = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // List of simulation points. - oneof point_list { - // Output only. Simulation points if the simulation type is CPC_BID. - google.ads.googleads.v4.common.CpcBidSimulationPointList cpc_bid_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Simulation points if the simulation type is CPV_BID. - google.ads.googleads.v4.common.CpvBidSimulationPointList cpv_bid_point_list = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Simulation points if the simulation type is TARGET_CPA. - google.ads.googleads.v4.common.TargetCpaSimulationPointList target_cpa_point_list = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Simulation points if the simulation type is TARGET_ROAS. - google.ads.googleads.v4.common.TargetRoasSimulationPointList target_roas_point_list = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v4/resources/ad_parameter.proto b/google/ads/googleads/v4/resources/ad_parameter.proto deleted file mode 100644 index 4829f2b65..000000000 --- a/google/ads/googleads/v4/resources/ad_parameter.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdParameterProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad parameter resource. - -// An ad parameter that is used to update numeric values (such as prices or -// inventory levels) in any text line of an ad (including URLs). There can -// be a maximum of two AdParameters per ad group criterion. (One with -// parameter_index = 1 and one with parameter_index = 2.) -// In the ad the parameters are referenced by a placeholder of the form -// "{param#:value}". E.g. "{param1:$17}" -message AdParameter { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdParameter" - pattern: "customers/{customer}/adParameters/{ad_parameter}" - }; - - // Immutable. The resource name of the ad parameter. - // Ad parameter resource names have the form: - // - // `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdParameter" - } - ]; - - // Immutable. The ad group criterion that this ad parameter belongs to. - google.protobuf.StringValue ad_group_criterion = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Immutable. The unique index of this ad parameter. Must be either 1 or 2. - google.protobuf.Int64Value parameter_index = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Numeric value to insert into the ad text. The following restrictions - // apply: - // - Can use comma or period as a separator, with an optional period or - // comma (respectively) for fractional values. For example, 1,000,000.00 - // and 2.000.000,10 are valid. - // - Can be prepended or appended with a currency symbol. For example, - // $99.99 is valid. - // - Can be prepended or appended with a currency code. For example, 99.99USD - // and EUR200 are valid. - // - Can use '%'. For example, 1.0% and 1,0% are valid. - // - Can use plus or minus. For example, -10.99 and 25+ are valid. - // - Can use '/' between two numbers. For example 4/1 and 0.95/0.45 are - // valid. - google.protobuf.StringValue insertion_text = 4; -} diff --git a/google/ads/googleads/v4/resources/ad_schedule_view.proto b/google/ads/googleads/v4/resources/ad_schedule_view.proto deleted file mode 100644 index 1f2932ce8..000000000 --- a/google/ads/googleads/v4/resources/ad_schedule_view.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdScheduleViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ad schedule view resource. - -// An ad schedule view summarizes the performance of campaigns by -// AdSchedule criteria. -message AdScheduleView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdScheduleView" - pattern: "customers/{customer}/adScheduleViews/{ad_schedule_view}" - }; - - // Output only. The resource name of the ad schedule view. - // AdSchedule view resource names have the form: - // - // `customers/{customer_id}/adScheduleViews/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdScheduleView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/age_range_view.proto b/google/ads/googleads/v4/resources/age_range_view.proto deleted file mode 100644 index b69c15c8d..000000000 --- a/google/ads/googleads/v4/resources/age_range_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AgeRangeViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the age range view resource. - -// An age range view. -message AgeRangeView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AgeRangeView" - pattern: "customers/{customer}/ageRangeViews/{age_range_view}" - }; - - // Output only. The resource name of the age range view. - // Age range view resource names have the form: - // - // `customers/{customer_id}/ageRangeViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AgeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/asset.proto b/google/ads/googleads/v4/resources/asset.proto deleted file mode 100644 index e1fccdab4..000000000 --- a/google/ads/googleads/v4/resources/asset.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/asset_types.proto"; -import "google/ads/googleads/v4/enums/asset_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AssetProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the asset resource. - -// Asset is a part of an ad which can be shared across multiple ads. -// It can be an image (ImageAsset), a video (YoutubeVideoAsset), etc. -message Asset { - option (google.api.resource) = { - type: "googleads.googleapis.com/Asset" - pattern: "customers/{customer}/assets/{asset}" - }; - - // Immutable. The resource name of the asset. - // Asset resource names have the form: - // - // `customers/{customer_id}/assets/{asset_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; - - // Output only. The ID of the asset. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional name of the asset. - google.protobuf.StringValue name = 3; - - // Output only. Type of the asset. - google.ads.googleads.v4.enums.AssetTypeEnum.AssetType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The specific type of the asset. - oneof asset_data { - // Immutable. A YouTube video asset. - google.ads.googleads.v4.common.YoutubeVideoAsset youtube_video_asset = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A media bundle asset. - google.ads.googleads.v4.common.MediaBundleAsset media_bundle_asset = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. An image asset. - google.ads.googleads.v4.common.ImageAsset image_asset = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A text asset. - google.ads.googleads.v4.common.TextAsset text_asset = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // A book on google asset. - google.ads.googleads.v4.common.BookOnGoogleAsset book_on_google_asset = 10; - } -} diff --git a/google/ads/googleads/v4/resources/batch_job.proto b/google/ads/googleads/v4/resources/batch_job.proto deleted file mode 100644 index cab46e181..000000000 --- a/google/ads/googleads/v4/resources/batch_job.proto +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/batch_job_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the batch job resource. - -// A list of mutates being processed asynchronously. The mutates are uploaded -// by the user. The mutates themselves aren't readable and the results of the -// job can only be read using BatchJobService.ListBatchJobResults. -message BatchJob { - option (google.api.resource) = { - type: "googleads.googleapis.com/BatchJob" - pattern: "customers/{customer}/batchJobs/{batch_job}" - }; - - // Additional information about the batch job. This message is also used as - // metadata returned in batch job Long Running Operations. - message BatchJobMetadata { - // Output only. The time when this batch job was created. - // Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:00" - google.protobuf.StringValue creation_date_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The time when this batch job was completed. - // Formatted as yyyy-MM-dd HH:mm:ss. Example: "2018-03-05 09:16:00" - google.protobuf.StringValue completion_date_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The fraction (between 0.0 and 1.0) of mutates that have been processed. - // This is empty if the job hasn't started running yet. - google.protobuf.DoubleValue estimated_completion_ratio = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of mutate operations in the batch job. - google.protobuf.Int64Value operation_count = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of mutate operations executed by the batch job. - // Present only if the job has started running. - google.protobuf.Int64Value executed_operation_count = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the batch job. - // Batch job resource names have the form: - // - // `customers/{customer_id}/batchJobs/{batch_job_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; - - // Output only. ID of this batch job. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The next sequence token to use when adding operations. Only set when the - // batch job status is PENDING. - google.protobuf.StringValue next_add_sequence_token = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Contains additional information about this batch job. - BatchJobMetadata metadata = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Status of this batch job. - google.ads.googleads.v4.enums.BatchJobStatusEnum.BatchJobStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the long-running operation that can be used to poll - // for completion. Only set when the batch job status is RUNNING or DONE. - google.protobuf.StringValue long_running_operation = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/bidding_strategy.proto b/google/ads/googleads/v4/resources/bidding_strategy.proto deleted file mode 100644 index 1c85d6e74..000000000 --- a/google/ads/googleads/v4/resources/bidding_strategy.proto +++ /dev/null @@ -1,112 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/bidding.proto"; -import "google/ads/googleads/v4/enums/bidding_strategy_status.proto"; -import "google/ads/googleads/v4/enums/bidding_strategy_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the BiddingStrategy resource - -// A bidding strategy. -message BiddingStrategy { - option (google.api.resource) = { - type: "googleads.googleapis.com/BiddingStrategy" - pattern: "customers/{customer}/biddingStrategies/{bidding_strategy}" - }; - - // Immutable. The resource name of the bidding strategy. - // Bidding strategy resource names have the form: - // - // `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BiddingStrategy" - } - ]; - - // Output only. The ID of the bidding strategy. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the bidding strategy. - // All bidding strategies within an account must be named distinctly. - // - // The length of this string should be between 1 and 255, inclusive, - // in UTF-8 bytes, (trimmed). - google.protobuf.StringValue name = 4; - - // Output only. The status of the bidding strategy. - // - // This field is read-only. - google.ads.googleads.v4.enums.BiddingStrategyStatusEnum.BiddingStrategyStatus status = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of the bidding strategy. - // Create a bidding strategy by setting the bidding scheme. - // - // This field is read-only. - google.ads.googleads.v4.enums.BiddingStrategyTypeEnum.BiddingStrategyType type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of campaigns attached to this bidding strategy. - // - // This field is read-only. - google.protobuf.Int64Value campaign_count = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of non-removed campaigns attached to this bidding strategy. - // - // This field is read-only. - google.protobuf.Int64Value non_removed_campaign_count = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The bidding scheme. - // - // Only one can be set. - oneof scheme { - // A bidding strategy that raises bids for clicks that seem more likely to - // lead to a conversion and lowers them for clicks where they seem less - // likely. - google.ads.googleads.v4.common.EnhancedCpc enhanced_cpc = 7; - - // A bidding strategy that sets bids to help get as many conversions as - // possible at the target cost-per-acquisition (CPA) you set. - google.ads.googleads.v4.common.TargetCpa target_cpa = 9; - - // A bidding strategy that automatically optimizes towards a desired - // percentage of impressions. - google.ads.googleads.v4.common.TargetImpressionShare target_impression_share = 48; - - // A bidding strategy that helps you maximize revenue while averaging a - // specific target Return On Ad Spend (ROAS). - google.ads.googleads.v4.common.TargetRoas target_roas = 11; - - // A bid strategy that sets your bids to help get as many clicks as - // possible within your budget. - google.ads.googleads.v4.common.TargetSpend target_spend = 12; - } -} diff --git a/google/ads/googleads/v4/resources/billing_setup.proto b/google/ads/googleads/v4/resources/billing_setup.proto deleted file mode 100644 index efe966b22..000000000 --- a/google/ads/googleads/v4/resources/billing_setup.proto +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/billing_setup_status.proto"; -import "google/ads/googleads/v4/enums/time_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the BillingSetup resource. - -// A billing setup, which associates a payments account and an advertiser. A -// billing setup is specific to one advertiser. -message BillingSetup { - option (google.api.resource) = { - type: "googleads.googleapis.com/BillingSetup" - pattern: "customers/{customer}/billingSetups/{billing_setup}" - }; - - // Container of payments account information for this billing. - message PaymentsAccountInfo { - // Output only. A 16 digit id used to identify the payments account associated with the - // billing setup. - // - // This must be passed as a string with dashes, e.g. "1234-5678-9012-3456". - google.protobuf.StringValue payments_account_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The name of the payments account associated with the billing setup. - // - // This enables the user to specify a meaningful name for a payments account - // to aid in reconciling monthly invoices. - // - // This name will be printed in the monthly invoices. - google.protobuf.StringValue payments_account_name = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A 12 digit id used to identify the payments profile associated with the - // billing setup. - // - // This must be passed in as a string with dashes, e.g. "1234-5678-9012". - google.protobuf.StringValue payments_profile_id = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The name of the payments profile associated with the billing setup. - google.protobuf.StringValue payments_profile_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A secondary payments profile id present in uncommon situations, e.g. - // when a sequential liability agreement has been arranged. - google.protobuf.StringValue secondary_payments_profile_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the billing setup. - // BillingSetup resource names have the form: - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; - - // Output only. The ID of the billing setup. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The status of the billing setup. - google.ads.googleads.v4.enums.BillingSetupStatusEnum.BillingSetupStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The resource name of the payments account associated with this billing - // setup. Payments resource names have the form: - // - // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` - // When setting up billing, this is used to signup with an existing payments - // account (and then payments_account_info should not be set). - // When getting a billing setup, this and payments_account_info will be - // populated. - google.protobuf.StringValue payments_account = 11 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaymentsAccount" - } - ]; - - // Immutable. The payments account information associated with this billing setup. - // When setting up billing, this is used to signup with a new payments account - // (and then payments_account should not be set). - // When getting a billing setup, this and payments_account will be - // populated. - PaymentsAccountInfo payments_account_info = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // When creating a new billing setup, this is when the setup should take - // effect. NOW is the only acceptable start time if the customer doesn't have - // any approved setups. - // - // When fetching an existing billing setup, this is the requested start time. - // However, if the setup was approved (see status) after the requested start - // time, then this is the approval time. - oneof start_time { - // Immutable. The start date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. Only a - // future time is allowed. - google.protobuf.StringValue start_date_time = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The start time as a type. Only NOW is allowed. - google.ads.googleads.v4.enums.TimeTypeEnum.TimeType start_time_type = 10 [(google.api.field_behavior) = IMMUTABLE]; - } - - // When the billing setup ends / ended. This is either FOREVER or the start - // time of the next scheduled billing setup. - oneof end_time { - // Output only. The end date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. - google.protobuf.StringValue end_date_time = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The end time as a type. The only possible value is FOREVER. - google.ads.googleads.v4.enums.TimeTypeEnum.TimeType end_time_type = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v4/resources/campaign.proto b/google/ads/googleads/v4/resources/campaign.proto deleted file mode 100644 index 4e27fb4a2..000000000 --- a/google/ads/googleads/v4/resources/campaign.proto +++ /dev/null @@ -1,425 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/bidding.proto"; -import "google/ads/googleads/v4/common/custom_parameter.proto"; -import "google/ads/googleads/v4/common/frequency_cap.proto"; -import "google/ads/googleads/v4/common/real_time_bidding_setting.proto"; -import "google/ads/googleads/v4/common/targeting_setting.proto"; -import "google/ads/googleads/v4/enums/ad_serving_optimization_status.proto"; -import "google/ads/googleads/v4/enums/advertising_channel_sub_type.proto"; -import "google/ads/googleads/v4/enums/advertising_channel_type.proto"; -import "google/ads/googleads/v4/enums/app_campaign_app_store.proto"; -import "google/ads/googleads/v4/enums/app_campaign_bidding_strategy_goal_type.proto"; -import "google/ads/googleads/v4/enums/bidding_strategy_type.proto"; -import "google/ads/googleads/v4/enums/brand_safety_suitability.proto"; -import "google/ads/googleads/v4/enums/campaign_experiment_type.proto"; -import "google/ads/googleads/v4/enums/campaign_serving_status.proto"; -import "google/ads/googleads/v4/enums/campaign_status.proto"; -import "google/ads/googleads/v4/enums/location_source_type.proto"; -import "google/ads/googleads/v4/enums/negative_geo_target_type.proto"; -import "google/ads/googleads/v4/enums/optimization_goal_type.proto"; -import "google/ads/googleads/v4/enums/payment_mode.proto"; -import "google/ads/googleads/v4/enums/positive_geo_target_type.proto"; -import "google/ads/googleads/v4/enums/vanity_pharma_display_url_mode.proto"; -import "google/ads/googleads/v4/enums/vanity_pharma_text.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Campaign resource. - -// A campaign. -message Campaign { - option (google.api.resource) = { - type: "googleads.googleapis.com/Campaign" - pattern: "customers/{customer}/campaigns/{campaign}" - }; - - // The network settings for the campaign. - message NetworkSettings { - // Whether ads will be served with google.com search results. - google.protobuf.BoolValue target_google_search = 1; - - // Whether ads will be served on partner sites in the Google Search Network - // (requires `target_google_search` to also be `true`). - google.protobuf.BoolValue target_search_network = 2; - - // Whether ads will be served on specified placements in the Google Display - // Network. Placements are specified using the Placement criterion. - google.protobuf.BoolValue target_content_network = 3; - - // Whether ads will be served on the Google Partner Network. - // This is available only to some select Google partner accounts. - google.protobuf.BoolValue target_partner_search_network = 4; - } - - // Campaign-level settings for hotel ads. - message HotelSettingInfo { - // Immutable. The linked Hotel Center account. - google.protobuf.Int64Value hotel_center_id = 1 [(google.api.field_behavior) = IMMUTABLE]; - } - - // The setting for controlling Dynamic Search Ads (DSA). - message DynamicSearchAdsSetting { - // The Internet domain name that this setting represents, e.g., "google.com" - // or "www.google.com". - google.protobuf.StringValue domain_name = 1; - - // The language code specifying the language of the domain, e.g., "en". - google.protobuf.StringValue language_code = 2; - - // Whether the campaign uses advertiser supplied URLs exclusively. - google.protobuf.BoolValue use_supplied_urls_only = 3; - - // Output only. The list of page feeds associated with the campaign. - repeated google.protobuf.StringValue feeds = 5 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - } - - // Selective optimization setting for this campaign, which includes a set of - // conversion actions to optimize this campaign towards. - message SelectiveOptimization { - // The selected set of conversion actions for optimizing this campaign. - repeated google.protobuf.StringValue conversion_actions = 1 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - }]; - } - - // The setting for Shopping campaigns. Defines the universe of products that - // can be advertised by the campaign, and how this campaign interacts with - // other Shopping campaigns. - message ShoppingSetting { - // Immutable. ID of the Merchant Center account. - // This field is required for create operations. This field is immutable for - // Shopping campaigns. - google.protobuf.Int64Value merchant_id = 1 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Sales country of products to include in the campaign. - // This field is required for Shopping campaigns. This field is immutable. - // This field is optional for non-Shopping campaigns, but it must be equal - // to 'ZZ' if set. - google.protobuf.StringValue sales_country = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Priority of the campaign. Campaigns with numerically higher priorities - // take precedence over those with lower priorities. - // This field is required for Shopping campaigns, with values between 0 and - // 2, inclusive. - // This field is optional for Smart Shopping campaigns, but must be equal to - // 3 if set. - google.protobuf.Int32Value campaign_priority = 3; - - // Whether to include local products. - google.protobuf.BoolValue enable_local = 4; - } - - // Campaign setting for local campaigns. - message LocalCampaignSetting { - // The location source type for this local campaign. - google.ads.googleads.v4.enums.LocationSourceTypeEnum.LocationSourceType location_source_type = 1; - } - - // Campaign-level settings for tracking information. - message TrackingSetting { - // Output only. The url used for dynamic tracking. - google.protobuf.StringValue tracking_url = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Represents a collection of settings related to ads geotargeting. - message GeoTargetTypeSetting { - // The setting used for positive geotargeting in this particular campaign. - google.ads.googleads.v4.enums.PositiveGeoTargetTypeEnum.PositiveGeoTargetType positive_geo_target_type = 1; - - // The setting used for negative geotargeting in this particular campaign. - google.ads.googleads.v4.enums.NegativeGeoTargetTypeEnum.NegativeGeoTargetType negative_geo_target_type = 2; - } - - // Campaign-level settings for App Campaigns. - message AppCampaignSetting { - // Represents the goal which the bidding strategy of this app campaign - // should optimize towards. - google.ads.googleads.v4.enums.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType bidding_strategy_goal_type = 1; - - // Immutable. A string that uniquely identifies a mobile application. - google.protobuf.StringValue app_id = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The application store that distributes this specific app. - google.ads.googleads.v4.enums.AppCampaignAppStoreEnum.AppCampaignAppStore app_store = 3 [(google.api.field_behavior) = IMMUTABLE]; - } - - // Optimization goal setting for this campaign, which includes a set of - // optimization goal types. - message OptimizationGoalSetting { - // The list of optimization goal types. - repeated google.ads.googleads.v4.enums.OptimizationGoalTypeEnum.OptimizationGoalType optimization_goal_types = 1; - } - - // Describes how unbranded pharma ads will be displayed. - message VanityPharma { - // The display mode for vanity pharma URLs. - google.ads.googleads.v4.enums.VanityPharmaDisplayUrlModeEnum.VanityPharmaDisplayUrlMode vanity_pharma_display_url_mode = 1; - - // The text that will be displayed in display URL of the text ad when - // website description is the selected display mode for vanity pharma URLs. - google.ads.googleads.v4.enums.VanityPharmaTextEnum.VanityPharmaText vanity_pharma_text = 2; - } - - // Immutable. The resource name of the campaign. - // Campaign resource names have the form: - // - // `customers/{customer_id}/campaigns/{campaign_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ID of the campaign. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the campaign. - // - // This field is required and should not be empty when creating new - // campaigns. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - google.protobuf.StringValue name = 4; - - // The status of the campaign. - // - // When a new campaign is added, the status defaults to ENABLED. - google.ads.googleads.v4.enums.CampaignStatusEnum.CampaignStatus status = 5; - - // Output only. The ad serving status of the campaign. - google.ads.googleads.v4.enums.CampaignServingStatusEnum.CampaignServingStatus serving_status = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The ad serving optimization status of the campaign. - google.ads.googleads.v4.enums.AdServingOptimizationStatusEnum.AdServingOptimizationStatus ad_serving_optimization_status = 8; - - // Immutable. The primary serving target for ads within the campaign. - // The targeting options can be refined in `network_settings`. - // - // This field is required and should not be empty when creating new - // campaigns. - // - // Can be set only when creating campaigns. - // After the campaign is created, the field can not be changed. - google.ads.googleads.v4.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_type = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Optional refinement to `advertising_channel_type`. - // Must be a valid sub-type of the parent channel type. - // - // Can be set only when creating campaigns. - // After campaign is created, the field can not be changed. - google.ads.googleads.v4.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType advertising_channel_sub_type = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // The URL template for constructing a tracking URL. - google.protobuf.StringValue tracking_url_template = 11; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v4.common.CustomParameter url_custom_parameters = 12; - - // Settings for Real-Time Bidding, a feature only available for campaigns - // targeting the Ad Exchange network. - google.ads.googleads.v4.common.RealTimeBiddingSetting real_time_bidding_setting = 39; - - // The network settings for the campaign. - NetworkSettings network_settings = 14; - - // Immutable. The hotel setting for the campaign. - HotelSettingInfo hotel_setting = 32 [(google.api.field_behavior) = IMMUTABLE]; - - // The setting for controlling Dynamic Search Ads (DSA). - DynamicSearchAdsSetting dynamic_search_ads_setting = 33; - - // The setting for controlling Shopping campaigns. - ShoppingSetting shopping_setting = 36; - - // Setting for targeting related features. - google.ads.googleads.v4.common.TargetingSetting targeting_setting = 43; - - // The setting for ads geotargeting. - GeoTargetTypeSetting geo_target_type_setting = 47; - - // The setting for local campaign. - LocalCampaignSetting local_campaign_setting = 50; - - // The setting related to App Campaign. - AppCampaignSetting app_campaign_setting = 51; - - // Output only. The resource names of labels attached to this campaign. - repeated google.protobuf.StringValue labels = 53 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignLabel" - } - ]; - - // Output only. The type of campaign: normal, draft, or experiment. - google.ads.googleads.v4.enums.CampaignExperimentTypeEnum.CampaignExperimentType experiment_type = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the base campaign of a draft or experiment campaign. - // For base campaigns, this is equal to `resource_name`. - // - // This field is read-only. - google.protobuf.StringValue base_campaign = 28 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The budget of the campaign. - google.protobuf.StringValue campaign_budget = 6 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - }]; - - // Output only. The type of bidding strategy. - // - // A bidding strategy can be created by setting either the bidding scheme to - // create a standard bidding strategy or the `bidding_strategy` field to - // create a portfolio bidding strategy. - // - // This field is read-only. - google.ads.googleads.v4.enums.BiddingStrategyTypeEnum.BiddingStrategyType bidding_strategy_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The date when campaign started. - // This field must not be used in WHERE clauses. - google.protobuf.StringValue start_date = 19; - - // The date when campaign ended. - // This field must not be used in WHERE clauses. - google.protobuf.StringValue end_date = 20; - - // Suffix used to append query parameters to landing pages that are served - // with parallel tracking. - google.protobuf.StringValue final_url_suffix = 38; - - // A list that limits how often each user will see this campaign's ads. - repeated google.ads.googleads.v4.common.FrequencyCapEntry frequency_caps = 40; - - // Output only. 3-Tier Brand Safety setting for the campaign. - google.ads.googleads.v4.enums.BrandSafetySuitabilityEnum.BrandSafetySuitability video_brand_safety_suitability = 42 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Describes how unbranded pharma ads will be displayed. - VanityPharma vanity_pharma = 44; - - // Selective optimization setting for this campaign, which includes a set of - // conversion actions to optimize this campaign towards. - SelectiveOptimization selective_optimization = 45; - - // Optimization goal setting for this campaign, which includes a set of - // optimization goal types. - OptimizationGoalSetting optimization_goal_setting = 54; - - // Output only. Campaign-level settings for tracking information. - TrackingSetting tracking_setting = 46 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Payment mode for the campaign. - google.ads.googleads.v4.enums.PaymentModeEnum.PaymentMode payment_mode = 52; - - // Output only. Optimization score of the campaign. - // - // Optimization score is an estimate of how well a campaign is set to perform. - // It ranges from 0% (0.0) to 100% (1.0), with 100% indicating that the - // campaign is performing at full potential. This field is null for unscored - // campaigns. - // - // See "About optimization score" at - // https://support.google.com/google-ads/answer/9061546. - // - // This field is read-only. - google.protobuf.DoubleValue optimization_score = 55 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The bidding strategy for the campaign. - // - // Must be either portfolio (created via BiddingStrategy service) or - // standard, that is embedded into the campaign. - oneof campaign_bidding_strategy { - // Portfolio bidding strategy used by campaign. - google.protobuf.StringValue bidding_strategy = 23 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/BiddingStrategy" - }]; - - // Commission is an automatic bidding strategy in which the advertiser pays - // a certain portion of the conversion value. - google.ads.googleads.v4.common.Commission commission = 49; - - // Standard Manual CPC bidding strategy. - // Manual click-based bidding where user pays per click. - google.ads.googleads.v4.common.ManualCpc manual_cpc = 24; - - // Standard Manual CPM bidding strategy. - // Manual impression-based bidding where user pays per thousand - // impressions. - google.ads.googleads.v4.common.ManualCpm manual_cpm = 25; - - // Output only. A bidding strategy that pays a configurable amount per video view. - google.ads.googleads.v4.common.ManualCpv manual_cpv = 37 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Standard Maximize Conversions bidding strategy that automatically - // maximizes number of conversions while spending your budget. - google.ads.googleads.v4.common.MaximizeConversions maximize_conversions = 30; - - // Standard Maximize Conversion Value bidding strategy that automatically - // sets bids to maximize revenue while spending your budget. - google.ads.googleads.v4.common.MaximizeConversionValue maximize_conversion_value = 31; - - // Standard Target CPA bidding strategy that automatically sets bids to - // help get as many conversions as possible at the target - // cost-per-acquisition (CPA) you set. - google.ads.googleads.v4.common.TargetCpa target_cpa = 26; - - // Target Impression Share bidding strategy. An automated bidding strategy - // that sets bids to achieve a desired percentage of impressions. - google.ads.googleads.v4.common.TargetImpressionShare target_impression_share = 48; - - // Standard Target ROAS bidding strategy that automatically maximizes - // revenue while averaging a specific target return on ad spend (ROAS). - google.ads.googleads.v4.common.TargetRoas target_roas = 29; - - // Standard Target Spend bidding strategy that automatically sets your bids - // to help get as many clicks as possible within your budget. - google.ads.googleads.v4.common.TargetSpend target_spend = 27; - - // Standard Percent Cpc bidding strategy where bids are a fraction of the - // advertised price for some good or service. - google.ads.googleads.v4.common.PercentCpc percent_cpc = 34; - - // A bidding strategy that automatically optimizes cost per thousand - // impressions. - google.ads.googleads.v4.common.TargetCpm target_cpm = 41; - } -} diff --git a/google/ads/googleads/v4/resources/campaign_audience_view.proto b/google/ads/googleads/v4/resources/campaign_audience_view.proto deleted file mode 100644 index a720c6db1..000000000 --- a/google/ads/googleads/v4/resources/campaign_audience_view.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignAudienceViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the campaign audience view resource. - -// A campaign audience view. -// Includes performance data from interests and remarketing lists for Display -// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), -// aggregated by campaign and audience criterion. This view only includes -// audiences attached at the campaign level. -message CampaignAudienceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignAudienceView" - pattern: "customers/{customer}/campaignAudienceViews/{campaign_audience_view}" - }; - - // Output only. The resource name of the campaign audience view. - // Campaign audience view resource names have the form: - // - // `customers/{customer_id}/campaignAudienceViews/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/campaign_bid_modifier.proto b/google/ads/googleads/v4/resources/campaign_bid_modifier.proto deleted file mode 100644 index 5b1ca6c87..000000000 --- a/google/ads/googleads/v4/resources/campaign_bid_modifier.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/criteria.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBidModifierProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Campaign Bid Modifier resource. - -// Represents a bid-modifiable only criterion at the campaign level. -message CampaignBidModifier { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignBidModifier" - pattern: "customers/{customer}/campaignBidModifiers/{campaign_bid_modifier}" - }; - - // Immutable. The resource name of the campaign bid modifier. - // Campaign bid modifier resource names have the form: - // - // `customers/{customer_id}/campaignBidModifiers/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBidModifier" - } - ]; - - // Output only. The campaign to which this criterion belongs. - google.protobuf.StringValue campaign = 2 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ID of the criterion to bid modify. - // - // This field is ignored for mutates. - google.protobuf.Int64Value criterion_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bid when the criterion matches. - google.protobuf.DoubleValue bid_modifier = 4; - - // The criterion of this campaign bid modifier. - // - // Required in create operations starting in V5. - oneof criterion { - // Immutable. Criterion for interaction type. Only supported for search campaigns. - google.ads.googleads.v4.common.InteractionTypeInfo interaction_type = 5 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v4/resources/campaign_budget.proto b/google/ads/googleads/v4/resources/campaign_budget.proto deleted file mode 100644 index ebb9741b3..000000000 --- a/google/ads/googleads/v4/resources/campaign_budget.proto +++ /dev/null @@ -1,157 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/budget_delivery_method.proto"; -import "google/ads/googleads/v4/enums/budget_period.proto"; -import "google/ads/googleads/v4/enums/budget_status.proto"; -import "google/ads/googleads/v4/enums/budget_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBudgetProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Budget resource. - -// A campaign budget. -message CampaignBudget { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignBudget" - pattern: "customers/{customer}/campaignBudgets/{campaign_budget}" - }; - - // Immutable. The resource name of the campaign budget. - // Campaign budget resource names have the form: - // - // `customers/{customer_id}/campaignBudgets/{campaign_budget_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - } - ]; - - // Output only. The ID of the campaign budget. - // - // A campaign budget is created using the CampaignBudgetService create - // operation and is assigned a budget ID. A budget ID can be shared across - // different campaigns; the system will then allocate the campaign budget - // among different campaigns to get optimum results. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the campaign budget. - // - // When creating a campaign budget through CampaignBudgetService, every - // explicitly shared campaign budget must have a non-null, non-empty name. - // Campaign budgets that are not explicitly shared derive their name from the - // attached campaign's name. - // - // The length of this string must be between 1 and 255, inclusive, - // in UTF-8 bytes, (trimmed). - google.protobuf.StringValue name = 4; - - // The amount of the budget, in the local currency for the account. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. Monthly spend is capped at 30.4 times this amount. - google.protobuf.Int64Value amount_micros = 5; - - // The lifetime amount of the budget, in the local currency for the account. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - google.protobuf.Int64Value total_amount_micros = 10; - - // Output only. The status of this campaign budget. This field is read-only. - google.ads.googleads.v4.enums.BudgetStatusEnum.BudgetStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The delivery method that determines the rate at which the campaign budget - // is spent. - // - // Defaults to STANDARD if unspecified in a create operation. - google.ads.googleads.v4.enums.BudgetDeliveryMethodEnum.BudgetDeliveryMethod delivery_method = 7; - - // Specifies whether the budget is explicitly shared. Defaults to true if - // unspecified in a create operation. - // - // If true, the budget was created with the purpose of sharing - // across one or more campaigns. - // - // If false, the budget was created with the intention of only being used - // with a single campaign. The budget's name and status will stay in sync - // with the campaign's name and status. Attempting to share the budget with a - // second campaign will result in an error. - // - // A non-shared budget can become an explicitly shared. The same operation - // must also assign the budget a name. - // - // A shared campaign budget can never become non-shared. - google.protobuf.BoolValue explicitly_shared = 8; - - // Output only. The number of campaigns actively using the budget. - // - // This field is read-only. - google.protobuf.Int64Value reference_count = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates whether there is a recommended budget for this campaign budget. - // - // This field is read-only. - google.protobuf.BoolValue has_recommended_budget = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended budget amount. If no recommendation is available, this will - // be set to the budget amount. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - // - // This field is read-only. - google.protobuf.Int64Value recommended_budget_amount_micros = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Period over which to spend the budget. Defaults to DAILY if not specified. - google.ads.googleads.v4.enums.BudgetPeriodEnum.BudgetPeriod period = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The estimated change in weekly clicks if the recommended budget is applied. - // - // This field is read-only. - google.protobuf.Int64Value recommended_budget_estimated_change_weekly_clicks = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimated change in weekly cost in micros if the recommended budget is - // applied. One million is equivalent to one currency unit. - // - // This field is read-only. - google.protobuf.Int64Value recommended_budget_estimated_change_weekly_cost_micros = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimated change in weekly interactions if the recommended budget is - // applied. - // - // This field is read-only. - google.protobuf.Int64Value recommended_budget_estimated_change_weekly_interactions = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimated change in weekly views if the recommended budget is applied. - // - // This field is read-only. - google.protobuf.Int64Value recommended_budget_estimated_change_weekly_views = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The type of the campaign budget. - google.ads.googleads.v4.enums.BudgetTypeEnum.BudgetType type = 18 [(google.api.field_behavior) = IMMUTABLE]; -} diff --git a/google/ads/googleads/v4/resources/campaign_criterion.proto b/google/ads/googleads/v4/resources/campaign_criterion.proto deleted file mode 100644 index c359d8e46..000000000 --- a/google/ads/googleads/v4/resources/campaign_criterion.proto +++ /dev/null @@ -1,168 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/criteria.proto"; -import "google/ads/googleads/v4/enums/campaign_criterion_status.proto"; -import "google/ads/googleads/v4/enums/criterion_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Campaign Criterion resource. - -// A campaign criterion. -message CampaignCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignCriterion" - pattern: "customers/{customer}/campaignCriteria/{campaign_criterion}" - }; - - // Immutable. The resource name of the campaign criterion. - // Campaign criterion resource names have the form: - // - // `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterion" - } - ]; - - // Immutable. The campaign to which the criterion belongs. - google.protobuf.StringValue campaign = 4 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ID of the criterion. - // - // This field is ignored during mutate. - google.protobuf.Int64Value criterion_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bids when the criterion matches. The modifier must be - // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. - // Use 0 to opt out of a Device type. - google.protobuf.FloatValue bid_modifier = 14; - - // Immutable. Whether to target (`false`) or exclude (`true`) the criterion. - google.protobuf.BoolValue negative = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The type of the criterion. - google.ads.googleads.v4.enums.CriterionTypeEnum.CriterionType type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the criterion. - google.ads.googleads.v4.enums.CampaignCriterionStatusEnum.CampaignCriterionStatus status = 35; - - // The campaign criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. Keyword. - google.ads.googleads.v4.common.KeywordInfo keyword = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v4.common.PlacementInfo placement = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile app category. - google.ads.googleads.v4.common.MobileAppCategoryInfo mobile_app_category = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile application. - google.ads.googleads.v4.common.MobileApplicationInfo mobile_application = 11 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Location. - google.ads.googleads.v4.common.LocationInfo location = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Device. - google.ads.googleads.v4.common.DeviceInfo device = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Ad Schedule. - google.ads.googleads.v4.common.AdScheduleInfo ad_schedule = 15 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Age range. - google.ads.googleads.v4.common.AgeRangeInfo age_range = 16 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Gender. - google.ads.googleads.v4.common.GenderInfo gender = 17 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Income range. - google.ads.googleads.v4.common.IncomeRangeInfo income_range = 18 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Parental status. - google.ads.googleads.v4.common.ParentalStatusInfo parental_status = 19 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User List. - google.ads.googleads.v4.common.UserListInfo user_list = 22 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v4.common.YouTubeVideoInfo youtube_video = 20 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v4.common.YouTubeChannelInfo youtube_channel = 21 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Proximity. - google.ads.googleads.v4.common.ProximityInfo proximity = 23 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Topic. - google.ads.googleads.v4.common.TopicInfo topic = 24 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Listing scope. - google.ads.googleads.v4.common.ListingScopeInfo listing_scope = 25 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Language. - google.ads.googleads.v4.common.LanguageInfo language = 26 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. IpBlock. - google.ads.googleads.v4.common.IpBlockInfo ip_block = 27 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. ContentLabel. - google.ads.googleads.v4.common.ContentLabelInfo content_label = 28 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Carrier. - google.ads.googleads.v4.common.CarrierInfo carrier = 29 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User Interest. - google.ads.googleads.v4.common.UserInterestInfo user_interest = 30 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Webpage. - google.ads.googleads.v4.common.WebpageInfo webpage = 31 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Operating system version. - google.ads.googleads.v4.common.OperatingSystemVersionInfo operating_system_version = 32 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile Device. - google.ads.googleads.v4.common.MobileDeviceInfo mobile_device = 33 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Location Group - google.ads.googleads.v4.common.LocationGroupInfo location_group = 34 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Affinity. - google.ads.googleads.v4.common.CustomAffinityInfo custom_affinity = 36 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v4/resources/campaign_criterion_simulation.proto b/google/ads/googleads/v4/resources/campaign_criterion_simulation.proto deleted file mode 100644 index 96407660e..000000000 --- a/google/ads/googleads/v4/resources/campaign_criterion_simulation.proto +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/simulation.proto"; -import "google/ads/googleads/v4/enums/simulation_modification_method.proto"; -import "google/ads/googleads/v4/enums/simulation_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionSimulationProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the campaign criterion simulation resource. - -// A campaign criterion simulation. Supported combinations of advertising -// channel type, criterion ids, simulation type and simulation modification -// method is detailed below respectively. -// -// 1. SEARCH - 30000,30001,30002 - BID_MODIFIER - UNIFORM -// 2. SHOPPING - 30000,30001,30002 - BID_MODIFIER - UNIFORM -// 3. DISPLAY - 30001 - BID_MODIFIER - UNIFORM -message CampaignCriterionSimulation { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignCriterionSimulation" - pattern: "customers/{customer}/campaignCriterionSimulations/{campaign_criterion_simulation}" - }; - - // Output only. The resource name of the campaign criterion simulation. - // Campaign criterion simulation resource names have the form: - // - // `customers/{customer_id}/campaignCriterionSimulations/{campaign_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterionSimulation" - } - ]; - - // Output only. Campaign ID of the simulation. - google.protobuf.Int64Value campaign_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Criterion ID of the simulation. - google.protobuf.Int64Value criterion_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The field that the simulation modifies. - google.ads.googleads.v4.enums.SimulationTypeEnum.SimulationType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. How the simulation modifies the field. - google.ads.googleads.v4.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. First day on which the simulation is based, in YYYY-MM-DD format. - google.protobuf.StringValue start_date = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Last day on which the simulation is based, in YYYY-MM-DD format. - google.protobuf.StringValue end_date = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // List of simulation points. - oneof point_list { - // Output only. Simulation points if the simulation type is BID_MODIFIER. - google.ads.googleads.v4.common.BidModifierSimulationPointList bid_modifier_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v4/resources/campaign_draft.proto b/google/ads/googleads/v4/resources/campaign_draft.proto deleted file mode 100644 index 1918f8621..000000000 --- a/google/ads/googleads/v4/resources/campaign_draft.proto +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/campaign_draft_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Campaign Draft resource. - -// A campaign draft. -message CampaignDraft { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignDraft" - pattern: "customers/{customer}/campaignDrafts/{campaign_draft}" - }; - - // Immutable. The resource name of the campaign draft. - // Campaign draft resource names have the form: - // - // `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; - - // Output only. The ID of the draft. - // - // This field is read-only. - google.protobuf.Int64Value draft_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The base campaign to which the draft belongs. - google.protobuf.StringValue base_campaign = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The name of the campaign draft. - // - // This field is required and should not be empty when creating new - // campaign drafts. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - google.protobuf.StringValue name = 4; - - // Output only. Resource name of the Campaign that results from overlaying the draft - // changes onto the base campaign. - // - // This field is read-only. - google.protobuf.StringValue draft_campaign = 5 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The status of the campaign draft. This field is read-only. - // - // When a new campaign draft is added, the status defaults to PROPOSED. - google.ads.googleads.v4.enums.CampaignDraftStatusEnum.CampaignDraftStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether there is an experiment based on this draft currently serving. - google.protobuf.BoolValue has_experiment_running = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the long-running operation that can be used to poll - // for completion of draft promotion. This is only set if the draft promotion - // is in progress or finished. - google.protobuf.StringValue long_running_operation = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/campaign_experiment.proto b/google/ads/googleads/v4/resources/campaign_experiment.proto deleted file mode 100644 index a18c61e92..000000000 --- a/google/ads/googleads/v4/resources/campaign_experiment.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/campaign_experiment_status.proto"; -import "google/ads/googleads/v4/enums/campaign_experiment_traffic_split_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Campaign Experiment resource. - -// An A/B experiment that compares the performance of the base campaign -// (the control) and a variation of that campaign (the experiment). -message CampaignExperiment { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignExperiment" - pattern: "customers/{customer}/campaignExperiments/{campaign_experiment}" - }; - - // Immutable. The resource name of the campaign experiment. - // Campaign experiment resource names have the form: - // - // `customers/{customer_id}/campaignExperiments/{campaign_experiment_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExperiment" - } - ]; - - // Output only. The ID of the campaign experiment. - // - // This field is read-only. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The campaign draft with staged changes to the base campaign. - google.protobuf.StringValue campaign_draft = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; - - // The name of the campaign experiment. - // - // This field is required when creating new campaign experiments - // and must not conflict with the name of another non-removed - // campaign experiment or campaign. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - google.protobuf.StringValue name = 4; - - // The description of the experiment. - google.protobuf.StringValue description = 5; - - // Immutable. Share of traffic directed to experiment as a percent (must be between 1 and - // 99 inclusive. Base campaign receives the remainder of the traffic - // (100 - traffic_split_percent). Required for create. - google.protobuf.Int64Value traffic_split_percent = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Determines the behavior of the traffic split. - google.ads.googleads.v4.enums.CampaignExperimentTrafficSplitTypeEnum.CampaignExperimentTrafficSplitType traffic_split_type = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The experiment campaign, as opposed to the base campaign. - google.protobuf.StringValue experiment_campaign = 8 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The status of the campaign experiment. This field is read-only. - google.ads.googleads.v4.enums.CampaignExperimentStatusEnum.CampaignExperimentStatus status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the long-running operation that can be used to poll - // for completion of experiment create or promote. The most recent long - // running operation is returned. - google.protobuf.StringValue long_running_operation = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Date when the campaign experiment starts. By default, the experiment starts - // now or on the campaign's start date, whichever is later. If this field is - // set, then the experiment starts at the beginning of the specified date in - // the customer's time zone. Cannot be changed once the experiment starts. - // - // Format: YYYY-MM-DD - // Example: 2019-03-14 - google.protobuf.StringValue start_date = 11; - - // Date when the campaign experiment ends. By default, the experiment ends on - // the campaign's end date. If this field is set, then the experiment ends at - // the end of the specified date in the customer's time zone. - // - // Format: YYYY-MM-DD - // Example: 2019-04-18 - google.protobuf.StringValue end_date = 12; -} diff --git a/google/ads/googleads/v4/resources/campaign_extension_setting.proto b/google/ads/googleads/v4/resources/campaign_extension_setting.proto deleted file mode 100644 index fdfffd017..000000000 --- a/google/ads/googleads/v4/resources/campaign_extension_setting.proto +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/extension_setting_device.proto"; -import "google/ads/googleads/v4/enums/extension_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExtensionSettingProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the CampaignExtensionSetting resource. - -// A campaign extension setting. -message CampaignExtensionSetting { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignExtensionSetting" - pattern: "customers/{customer}/campaignExtensionSettings/{campaign_extension_setting}" - }; - - // Immutable. The resource name of the campaign extension setting. - // CampaignExtensionSetting resource names have the form: - // - // `customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExtensionSetting" - } - ]; - - // Immutable. The extension type of the customer extension setting. - google.ads.googleads.v4.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The resource name of the campaign. The linked extension feed items will - // serve under this campaign. - // Campaign resource names have the form: - // - // `customers/{customer_id}/campaigns/{campaign_id}` - google.protobuf.StringValue campaign = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The resource names of the extension feed items to serve under the campaign. - // ExtensionFeedItem resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - repeated google.protobuf.StringValue extension_feed_items = 4 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - }]; - - // The device for which the extensions will serve. Optional. - google.ads.googleads.v4.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; -} diff --git a/google/ads/googleads/v4/resources/campaign_feed.proto b/google/ads/googleads/v4/resources/campaign_feed.proto deleted file mode 100644 index 63431546c..000000000 --- a/google/ads/googleads/v4/resources/campaign_feed.proto +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/matching_function.proto"; -import "google/ads/googleads/v4/enums/feed_link_status.proto"; -import "google/ads/googleads/v4/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignFeedProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the CampaignFeed resource. - -// A campaign feed. -message CampaignFeed { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignFeed" - pattern: "customers/{customer}/campaignFeeds/{campaign_feed}" - }; - - // Immutable. The resource name of the campaign feed. - // Campaign feed resource names have the form: - // - // `customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id} - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignFeed" - } - ]; - - // Immutable. The feed to which the CampaignFeed belongs. - google.protobuf.StringValue feed = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Immutable. The campaign to which the CampaignFeed belongs. - google.protobuf.StringValue campaign = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Indicates which placeholder types the feed may populate under the connected - // campaign. Required. - repeated google.ads.googleads.v4.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; - - // Matching function associated with the CampaignFeed. - // The matching function is used to filter the set of feed items selected. - // Required. - google.ads.googleads.v4.common.MatchingFunction matching_function = 5; - - // Output only. Status of the campaign feed. - // This field is read-only. - google.ads.googleads.v4.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/campaign_label.proto b/google/ads/googleads/v4/resources/campaign_label.proto deleted file mode 100644 index 8cfa1ad38..000000000 --- a/google/ads/googleads/v4/resources/campaign_label.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignLabelProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the campaign label resource. - -// Represents a relationship between a campaign and a label. -message CampaignLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignLabel" - pattern: "customers/{customer}/campaignLabels/{campaign_label}" - }; - - // Immutable. Name of the resource. - // Campaign label resource names have the form: - // `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignLabel" - } - ]; - - // Immutable. The campaign to which the label is attached. - google.protobuf.StringValue campaign = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Immutable. The label assigned to the campaign. - google.protobuf.StringValue label = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/campaign_shared_set.proto b/google/ads/googleads/v4/resources/campaign_shared_set.proto deleted file mode 100644 index 5731a22fa..000000000 --- a/google/ads/googleads/v4/resources/campaign_shared_set.proto +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/campaign_shared_set_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the CampaignSharedSet resource. - -// CampaignSharedSets are used for managing the shared sets associated with a -// campaign. -message CampaignSharedSet { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignSharedSet" - pattern: "customers/{customer}/campaignSharedSets/{campaign_shared_set}" - }; - - // Immutable. The resource name of the campaign shared set. - // Campaign shared set resource names have the form: - // - // `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignSharedSet" - } - ]; - - // Immutable. The campaign to which the campaign shared set belongs. - google.protobuf.StringValue campaign = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Immutable. The shared set associated with the campaign. This may be a negative keyword - // shared set of another customer. This customer should be a manager of the - // other customer, otherwise the campaign shared set will exist but have no - // serving effect. Only negative keyword shared sets can be associated with - // Shopping campaigns. Only negative placement shared sets can be associated - // with Display mobile app campaigns. - google.protobuf.StringValue shared_set = 4 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; - - // Output only. The status of this campaign shared set. Read only. - google.ads.googleads.v4.enums.CampaignSharedSetStatusEnum.CampaignSharedSetStatus status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/carrier_constant.proto b/google/ads/googleads/v4/resources/carrier_constant.proto deleted file mode 100644 index 621cb63c2..000000000 --- a/google/ads/googleads/v4/resources/carrier_constant.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CarrierConstantProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Carrier constant resource. - -// A carrier criterion that can be used in campaign targeting. -message CarrierConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/CarrierConstant" - pattern: "carrierConstants/{carrier_constant}" - }; - - // Output only. The resource name of the carrier criterion. - // Carrier criterion resource names have the form: - // - // `carrierConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CarrierConstant" - } - ]; - - // Output only. The ID of the carrier criterion. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The full name of the carrier in English. - google.protobuf.StringValue name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The country code of the country where the carrier is located, e.g., "AR", - // "FR", etc. - google.protobuf.StringValue country_code = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/change_status.proto b/google/ads/googleads/v4/resources/change_status.proto deleted file mode 100644 index c7a1eab24..000000000 --- a/google/ads/googleads/v4/resources/change_status.proto +++ /dev/null @@ -1,146 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/change_status_operation.proto"; -import "google/ads/googleads/v4/enums/change_status_resource_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Change Status resource. - -// Describes the status of returned resource. ChangeStatus could have up to 3 -// minutes delay to reflect a new change. -message ChangeStatus { - option (google.api.resource) = { - type: "googleads.googleapis.com/ChangeStatus" - pattern: "customers/{customer}/changeStatus/{change_status}" - }; - - // Output only. The resource name of the change status. - // Change status resource names have the form: - // - // `customers/{customer_id}/changeStatus/{change_status_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ChangeStatus" - } - ]; - - // Output only. Time at which the most recent change has occurred on this resource. - google.protobuf.StringValue last_change_date_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Represents the type of the changed resource. This dictates what fields - // will be set. For example, for AD_GROUP, campaign and ad_group fields will - // be set. - google.ads.googleads.v4.enums.ChangeStatusResourceTypeEnum.ChangeStatusResourceType resource_type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Campaign affected by this change. - google.protobuf.StringValue campaign = 5 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The AdGroup affected by this change. - google.protobuf.StringValue ad_group = 6 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Represents the status of the changed resource. - google.ads.googleads.v4.enums.ChangeStatusOperationEnum.ChangeStatusOperation resource_status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The AdGroupAd affected by this change. - google.protobuf.StringValue ad_group_ad = 9 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // Output only. The AdGroupCriterion affected by this change. - google.protobuf.StringValue ad_group_criterion = 10 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Output only. The CampaignCriterion affected by this change. - google.protobuf.StringValue campaign_criterion = 11 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterion" - } - ]; - - // Output only. The Feed affected by this change. - google.protobuf.StringValue feed = 12 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Output only. The FeedItem affected by this change. - google.protobuf.StringValue feed_item = 13 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; - - // Output only. The AdGroupFeed affected by this change. - google.protobuf.StringValue ad_group_feed = 14 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupFeed" - } - ]; - - // Output only. The CampaignFeed affected by this change. - google.protobuf.StringValue campaign_feed = 15 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignFeed" - } - ]; - - // Output only. The AdGroupBidModifier affected by this change. - google.protobuf.StringValue ad_group_bid_modifier = 16 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/click_view.proto b/google/ads/googleads/v4/resources/click_view.proto deleted file mode 100644 index 652374d80..000000000 --- a/google/ads/googleads/v4/resources/click_view.proto +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/click_location.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ClickViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ClickView resource. - -// A click view with metrics aggregated at each click level, including both -// valid and invalid clicks. For non-Search campaigns, metrics.clicks -// represents the number of valid and invalid interactions. -// Queries including ClickView must have a filter limiting the results to one -// day and can be requested for dates back to 90 days before the time of the -// request. -message ClickView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ClickView" - pattern: "customers/{customer}/clickViews/{click_view}" - }; - - // Output only. The resource name of the click view. - // Click view resource names have the form: - // - // `customers/{customer_id}/clickViews/{date (yyyy-MM-dd)}~{gclid}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ClickView" - } - ]; - - // Output only. The Google Click ID. - google.protobuf.StringValue gclid = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The location criteria matching the area of interest associated with the - // impression. - google.ads.googleads.v4.common.ClickLocation area_of_interest = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The location criteria matching the location of presence associated with the - // impression. - google.ads.googleads.v4.common.ClickLocation location_of_presence = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Page number in search results where the ad was shown. - google.protobuf.Int64Value page_number = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The associated ad. - google.protobuf.StringValue ad_group_ad = 7 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/conversion_action.proto b/google/ads/googleads/v4/resources/conversion_action.proto deleted file mode 100644 index 6e07c22ef..000000000 --- a/google/ads/googleads/v4/resources/conversion_action.proto +++ /dev/null @@ -1,174 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/tag_snippet.proto"; -import "google/ads/googleads/v4/enums/attribution_model.proto"; -import "google/ads/googleads/v4/enums/conversion_action_category.proto"; -import "google/ads/googleads/v4/enums/conversion_action_counting_type.proto"; -import "google/ads/googleads/v4/enums/conversion_action_status.proto"; -import "google/ads/googleads/v4/enums/conversion_action_type.proto"; -import "google/ads/googleads/v4/enums/data_driven_model_status.proto"; -import "google/ads/googleads/v4/enums/mobile_app_vendor.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Conversion Action resource. - -// A conversion action. -message ConversionAction { - option (google.api.resource) = { - type: "googleads.googleapis.com/ConversionAction" - pattern: "customers/{customer}/conversionActions/{conversion_action}" - }; - - // Settings related to this conversion action's attribution model. - message AttributionModelSettings { - // The attribution model type of this conversion action. - google.ads.googleads.v4.enums.AttributionModelEnum.AttributionModel attribution_model = 1; - - // Output only. The status of the data-driven attribution model for the conversion - // action. - google.ads.googleads.v4.enums.DataDrivenModelStatusEnum.DataDrivenModelStatus data_driven_model_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Settings related to the value for conversion events associated with this - // conversion action. - message ValueSettings { - // The value to use when conversion events for this conversion action are - // sent with an invalid, disallowed or missing value, or when - // this conversion action is configured to always use the default value. - google.protobuf.DoubleValue default_value = 1; - - // The currency code to use when conversion events for this conversion - // action are sent with an invalid or missing currency code, or when this - // conversion action is configured to always use the default value. - google.protobuf.StringValue default_currency_code = 2; - - // Controls whether the default value and default currency code are used in - // place of the value and currency code specified in conversion events for - // this conversion action. - google.protobuf.BoolValue always_use_default_value = 3; - } - - // Settings related to a third party app analytics conversion action. - message ThirdPartyAppAnalyticsSettings { - // Output only. The event name of a third-party app analytics conversion. - google.protobuf.StringValue event_name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Settings related to a Firebase conversion action. - message FirebaseSettings { - // Output only. The event name of a Firebase conversion. - google.protobuf.StringValue event_name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Firebase project ID of the conversion. - google.protobuf.StringValue project_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the conversion action. - // Conversion action resource names have the form: - // - // `customers/{customer_id}/conversionActions/{conversion_action_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - } - ]; - - // Output only. The ID of the conversion action. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the conversion action. - // - // This field is required and should not be empty when creating new - // conversion actions. - google.protobuf.StringValue name = 3; - - // The status of this conversion action for conversion event accrual. - google.ads.googleads.v4.enums.ConversionActionStatusEnum.ConversionActionStatus status = 4; - - // Immutable. The type of this conversion action. - google.ads.googleads.v4.enums.ConversionActionTypeEnum.ConversionActionType type = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // The category of conversions reported for this conversion action. - google.ads.googleads.v4.enums.ConversionActionCategoryEnum.ConversionActionCategory category = 6; - - // Output only. The resource name of the conversion action owner customer, or null if this - // is a system-defined conversion action. - google.protobuf.StringValue owner_customer = 7 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Whether this conversion action should be included in the "conversions" - // metric. - google.protobuf.BoolValue include_in_conversions_metric = 8; - - // The maximum number of days that may elapse between an interaction - // (e.g., a click) and a conversion event. - google.protobuf.Int64Value click_through_lookback_window_days = 9; - - // The maximum number of days which may elapse between an impression and a - // conversion without an interaction. - google.protobuf.Int64Value view_through_lookback_window_days = 10; - - // Settings related to the value for conversion events associated with this - // conversion action. - ValueSettings value_settings = 11; - - // How to count conversion events for the conversion action. - google.ads.googleads.v4.enums.ConversionActionCountingTypeEnum.ConversionActionCountingType counting_type = 12; - - // Settings related to this conversion action's attribution model. - AttributionModelSettings attribution_model_settings = 13; - - // Output only. The snippets used for tracking conversions. - repeated google.ads.googleads.v4.common.TagSnippet tag_snippets = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The phone call duration in seconds after which a conversion should be - // reported for this conversion action. - // - // The value must be between 0 and 10000, inclusive. - google.protobuf.Int64Value phone_call_duration_seconds = 15; - - // App ID for an app conversion action. - google.protobuf.StringValue app_id = 16; - - // Output only. Mobile app vendor for an app conversion action. - google.ads.googleads.v4.enums.MobileAppVendorEnum.MobileAppVendor mobile_app_vendor = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Firebase settings for Firebase conversion types. - FirebaseSettings firebase_settings = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Third Party App Analytics settings for third party conversion types. - ThirdPartyAppAnalyticsSettings third_party_app_analytics_settings = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/currency_constant.proto b/google/ads/googleads/v4/resources/currency_constant.proto deleted file mode 100644 index 594bbbc80..000000000 --- a/google/ads/googleads/v4/resources/currency_constant.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CurrencyConstantProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Currency Constant resource. - -// A currency constant. -message CurrencyConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/CurrencyConstant" - pattern: "currencyConstants/{currency_constant}" - }; - - // Output only. The resource name of the currency constant. - // Currency constant resource names have the form: - // - // `currencyConstants/{code}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CurrencyConstant" - } - ]; - - // Output only. ISO 4217 three-letter currency code, e.g. "USD" - google.protobuf.StringValue code = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Full English name of the currency. - google.protobuf.StringValue name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Standard symbol for describing this currency, e.g. '$' for US Dollars. - google.protobuf.StringValue symbol = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The billable unit for this currency. Billed amounts should be multiples of - // this value. - google.protobuf.Int64Value billable_unit_micros = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/custom_interest.proto b/google/ads/googleads/v4/resources/custom_interest.proto deleted file mode 100644 index 6eff8fae4..000000000 --- a/google/ads/googleads/v4/resources/custom_interest.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/custom_interest_member_type.proto"; -import "google/ads/googleads/v4/enums/custom_interest_status.proto"; -import "google/ads/googleads/v4/enums/custom_interest_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Custom Interest resource. - -// A custom interest. This is a list of users by interest. -message CustomInterest { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomInterest" - pattern: "customers/{customer}/customInterests/{custom_interest}" - }; - - // Immutable. The resource name of the custom interest. - // Custom interest resource names have the form: - // - // `customers/{customer_id}/customInterests/{custom_interest_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomInterest" - } - ]; - - // Output only. Id of the custom interest. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Status of this custom interest. Indicates whether the custom interest is - // enabled or removed. - google.ads.googleads.v4.enums.CustomInterestStatusEnum.CustomInterestStatus status = 3; - - // Name of the custom interest. It should be unique across the same custom - // affinity audience. - // This field is required for create operations. - google.protobuf.StringValue name = 4; - - // Type of the custom interest, CUSTOM_AFFINITY or CUSTOM_INTENT. - // By default the type is set to CUSTOM_AFFINITY. - google.ads.googleads.v4.enums.CustomInterestTypeEnum.CustomInterestType type = 5; - - // Description of this custom interest audience. - google.protobuf.StringValue description = 6; - - // List of custom interest members that this custom interest is composed of. - // Members can be added during CustomInterest creation. If members are - // presented in UPDATE operation, existing members will be overridden. - repeated CustomInterestMember members = 7; -} - -// A member of custom interest audience. A member can be a keyword or url. -// It is immutable, that is, it can only be created or removed but not changed. -message CustomInterestMember { - // The type of custom interest member, KEYWORD or URL. - google.ads.googleads.v4.enums.CustomInterestMemberTypeEnum.CustomInterestMemberType member_type = 1; - - // Keyword text when member_type is KEYWORD or URL string when - // member_type is URL. - google.protobuf.StringValue parameter = 2; -} diff --git a/google/ads/googleads/v4/resources/customer.proto b/google/ads/googleads/v4/resources/customer.proto deleted file mode 100644 index f1700f0da..000000000 --- a/google/ads/googleads/v4/resources/customer.proto +++ /dev/null @@ -1,150 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/customer_pay_per_conversion_eligibility_failure_reason.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Customer resource. - -// A customer. -message Customer { - option (google.api.resource) = { - type: "googleads.googleapis.com/Customer" - pattern: "customers/{customer}" - }; - - // Immutable. The resource name of the customer. - // Customer resource names have the form: - // - // `customers/{customer_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. The ID of the customer. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional, non-unique descriptive name of the customer. - google.protobuf.StringValue descriptive_name = 4; - - // Immutable. The currency in which the account operates. - // A subset of the currency codes from the ISO 4217 standard is - // supported. - google.protobuf.StringValue currency_code = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The local timezone ID of the customer. - google.protobuf.StringValue time_zone = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // The URL template for constructing a tracking URL out of parameters. - google.protobuf.StringValue tracking_url_template = 7; - - // The URL template for appending params to the final URL - google.protobuf.StringValue final_url_suffix = 11; - - // Whether auto-tagging is enabled for the customer. - google.protobuf.BoolValue auto_tagging_enabled = 8; - - // Output only. Whether the Customer has a Partners program badge. If the Customer is not - // associated with the Partners program, this will be false. For more - // information, see https://support.google.com/partners/answer/3125774. - google.protobuf.BoolValue has_partners_badge = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the customer is a manager. - google.protobuf.BoolValue manager = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the customer is a test account. - google.protobuf.BoolValue test_account = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Call reporting setting for a customer. - CallReportingSetting call_reporting_setting = 10; - - // Output only. Conversion tracking setting for a customer. - ConversionTrackingSetting conversion_tracking_setting = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Remarketing setting for a customer. - RemarketingSetting remarketing_setting = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Reasons why the customer is not eligible to use PaymentMode.CONVERSIONS. If - // the list is empty, the customer is eligible. This field is read-only. - repeated google.ads.googleads.v4.enums.CustomerPayPerConversionEligibilityFailureReasonEnum.CustomerPayPerConversionEligibilityFailureReason pay_per_conversion_eligibility_failure_reasons = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Optimization score of the customer. - // - // Optimization score is an estimate of how well a customer's campaigns are - // set to perform. It ranges from 0% (0.0) to 100% (1.0). This field is null - // for all manager customers, and for unscored non-manager customers. - // - // See "About optimization score" at - // https://support.google.com/google-ads/answer/9061546. - // - // This field is read-only. - google.protobuf.DoubleValue optimization_score = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Call reporting setting for a customer. -message CallReportingSetting { - // Enable reporting of phone call events by redirecting them via Google - // System. - google.protobuf.BoolValue call_reporting_enabled = 1; - - // Whether to enable call conversion reporting. - google.protobuf.BoolValue call_conversion_reporting_enabled = 2; - - // Customer-level call conversion action to attribute a call conversion to. - // If not set a default conversion action is used. Only in effect when - // call_conversion_reporting_enabled is set to true. - google.protobuf.StringValue call_conversion_action = 9 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - }]; -} - -// A collection of customer-wide settings related to Google Ads Conversion -// Tracking. -message ConversionTrackingSetting { - // Output only. The conversion tracking id used for this account. This id is automatically - // assigned after any conversion tracking feature is used. If the customer - // doesn't use conversion tracking, this is 0. This field is read-only. - google.protobuf.Int64Value conversion_tracking_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The conversion tracking id of the customer's manager. This is set when the - // customer is opted into cross account conversion tracking, and it overrides - // conversion_tracking_id. This field can only be managed through the Google - // Ads UI. This field is read-only. - google.protobuf.Int64Value cross_account_conversion_tracking_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Remarketing setting for a customer. -message RemarketingSetting { - // Output only. The Google global site tag. - google.protobuf.StringValue google_global_site_tag = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/customer_client.proto b/google/ads/googleads/v4/resources/customer_client.proto deleted file mode 100644 index 58c7dc985..000000000 --- a/google/ads/googleads/v4/resources/customer_client.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the CustomerClient resource. - -// A link between the given customer and a client customer. CustomerClients only -// exist for manager customers. All direct and indirect client customers are -// included, as well as the manager itself. -message CustomerClient { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerClient" - pattern: "customers/{customer}/customerClients/{customer_client}" - }; - - // Output only. The resource name of the customer client. - // CustomerClient resource names have the form: - // `customers/{customer_id}/customerClients/{client_customer_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClient" - } - ]; - - // Output only. The resource name of the client-customer which is linked to - // the given customer. Read only. - google.protobuf.StringValue client_customer = 3 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. Specifies whether this is a - // [hidden account](https://support.google.com/google-ads/answer/7519830). - // Read only. - google.protobuf.BoolValue hidden = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Distance between given customer and client. For self link, the level value - // will be 0. Read only. - google.protobuf.Int64Value level = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Common Locale Data Repository (CLDR) string representation of the - // time zone of the client, e.g. America/Los_Angeles. Read only. - google.protobuf.StringValue time_zone = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Identifies if the client is a test account. Read only. - google.protobuf.BoolValue test_account = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Identifies if the client is a manager. Read only. - google.protobuf.BoolValue manager = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Descriptive name for the client. Read only. - google.protobuf.StringValue descriptive_name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Currency code (e.g. 'USD', 'EUR') for the client. Read only. - google.protobuf.StringValue currency_code = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ID of the client customer. Read only. - google.protobuf.Int64Value id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/customer_client_link.proto b/google/ads/googleads/v4/resources/customer_client_link.proto deleted file mode 100644 index 156dd43a7..000000000 --- a/google/ads/googleads/v4/resources/customer_client_link.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/manager_link_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientLinkProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the CustomerClientLink resource. - -// Represents customer client link relationship. -message CustomerClientLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerClientLink" - pattern: "customers/{customer}/customerClientLinks/{customer_client_link}" - }; - - // Immutable. Name of the resource. - // CustomerClientLink resource names have the form: - // `customers/{customer_id}/customerClientLinks/{client_customer_id}~{manager_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClientLink" - } - ]; - - // Immutable. The client customer linked to this customer. - google.protobuf.StringValue client_customer = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. This is uniquely identifies a customer client link. Read only. - google.protobuf.Int64Value manager_link_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // This is the status of the link between client and manager. - google.ads.googleads.v4.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; - - // The visibility of the link. Users can choose whether or not to see hidden - // links in the Google Ads UI. - // Default value is false - google.protobuf.BoolValue hidden = 6; -} diff --git a/google/ads/googleads/v4/resources/customer_extension_setting.proto b/google/ads/googleads/v4/resources/customer_extension_setting.proto deleted file mode 100644 index 2cc88f921..000000000 --- a/google/ads/googleads/v4/resources/customer_extension_setting.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/extension_setting_device.proto"; -import "google/ads/googleads/v4/enums/extension_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerExtensionSettingProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the CustomerExtensionSetting resource. - -// A customer extension setting. -message CustomerExtensionSetting { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerExtensionSetting" - pattern: "customers/{customer}/customerExtensionSettings/{customer_extension_setting}" - }; - - // Immutable. The resource name of the customer extension setting. - // CustomerExtensionSetting resource names have the form: - // - // `customers/{customer_id}/customerExtensionSettings/{extension_type}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerExtensionSetting" - } - ]; - - // Immutable. The extension type of the customer extension setting. - google.ads.googleads.v4.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // The resource names of the extension feed items to serve under the customer. - // ExtensionFeedItem resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - repeated google.protobuf.StringValue extension_feed_items = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - }]; - - // The device for which the extensions will serve. Optional. - google.ads.googleads.v4.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 4; -} diff --git a/google/ads/googleads/v4/resources/customer_feed.proto b/google/ads/googleads/v4/resources/customer_feed.proto deleted file mode 100644 index b06d8055c..000000000 --- a/google/ads/googleads/v4/resources/customer_feed.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/matching_function.proto"; -import "google/ads/googleads/v4/enums/feed_link_status.proto"; -import "google/ads/googleads/v4/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerFeedProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the CustomerFeed resource. - -// A customer feed. -message CustomerFeed { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerFeed" - pattern: "customers/{customer}/customerFeeds/{customer_feed}" - }; - - // Immutable. The resource name of the customer feed. - // Customer feed resource names have the form: - // - // `customers/{customer_id}/customerFeeds/{feed_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerFeed" - } - ]; - - // Immutable. The feed being linked to the customer. - google.protobuf.StringValue feed = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Indicates which placeholder types the feed may populate under the connected - // customer. Required. - repeated google.ads.googleads.v4.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 3; - - // Matching function associated with the CustomerFeed. - // The matching function is used to filter the set of feed items selected. - // Required. - google.ads.googleads.v4.common.MatchingFunction matching_function = 4; - - // Output only. Status of the customer feed. - // This field is read-only. - google.ads.googleads.v4.enums.FeedLinkStatusEnum.FeedLinkStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/customer_label.proto b/google/ads/googleads/v4/resources/customer_label.proto deleted file mode 100644 index 0254d29b2..000000000 --- a/google/ads/googleads/v4/resources/customer_label.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerLabelProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the customer label resource. - -// Represents a relationship between a customer and a label. This customer may -// not have access to all the labels attached to it. Additional CustomerLabels -// may be returned by increasing permissions with login-customer-id. -message CustomerLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerLabel" - pattern: "customers/{customer}/customerLabels/{customer_label}" - }; - - // Immutable. Name of the resource. - // Customer label resource names have the form: - // `customers/{customer_id}/customerLabels/{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerLabel" - } - ]; - - // Output only. The resource name of the customer to which the label is attached. - // Read only. - google.protobuf.StringValue customer = 2 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. The resource name of the label assigned to the customer. - // - // Note: the Customer ID portion of the label resource name is not - // validated when creating a new CustomerLabel. - google.protobuf.StringValue label = 3 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/customer_manager_link.proto b/google/ads/googleads/v4/resources/customer_manager_link.proto deleted file mode 100644 index a29e09df5..000000000 --- a/google/ads/googleads/v4/resources/customer_manager_link.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/manager_link_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerManagerLinkProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the CustomerManagerLink resource. - -// Represents customer-manager link relationship. -message CustomerManagerLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerManagerLink" - pattern: "customers/{customer}/customerManagerLinks/{customer_manager_link}" - }; - - // Immutable. Name of the resource. - // CustomerManagerLink resource names have the form: - // `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerManagerLink" - } - ]; - - // Output only. The manager customer linked to the customer. - google.protobuf.StringValue manager_customer = 3 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. ID of the customer-manager link. This field is read only. - google.protobuf.Int64Value manager_link_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Status of the link between the customer and the manager. - google.ads.googleads.v4.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; -} diff --git a/google/ads/googleads/v4/resources/customer_negative_criterion.proto b/google/ads/googleads/v4/resources/customer_negative_criterion.proto deleted file mode 100644 index 9c2b42a8d..000000000 --- a/google/ads/googleads/v4/resources/customer_negative_criterion.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/criteria.proto"; -import "google/ads/googleads/v4/enums/criterion_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerNegativeCriterionProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Customer Negative Criterion resource. - -// A negative criterion for exclusions at the customer level. -message CustomerNegativeCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerNegativeCriterion" - pattern: "customers/{customer}/customerNegativeCriteria/{customer_negative_criterion}" - }; - - // Immutable. The resource name of the customer negative criterion. - // Customer negative criterion resource names have the form: - // - // `customers/{customer_id}/customerNegativeCriteria/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerNegativeCriterion" - } - ]; - - // Output only. The ID of the criterion. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of the criterion. - google.ads.googleads.v4.enums.CriterionTypeEnum.CriterionType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The customer negative criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. ContentLabel. - google.ads.googleads.v4.common.ContentLabelInfo content_label = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. MobileApplication. - google.ads.googleads.v4.common.MobileApplicationInfo mobile_application = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. MobileAppCategory. - google.ads.googleads.v4.common.MobileAppCategoryInfo mobile_app_category = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v4.common.PlacementInfo placement = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v4.common.YouTubeVideoInfo youtube_video = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v4.common.YouTubeChannelInfo youtube_channel = 9 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v4/resources/detail_placement_view.proto b/google/ads/googleads/v4/resources/detail_placement_view.proto deleted file mode 100644 index 4e467a158..000000000 --- a/google/ads/googleads/v4/resources/detail_placement_view.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/placement_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DetailPlacementViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the detail placement view resource. - -// A view with metrics aggregated by ad group and URL or YouTube video. -message DetailPlacementView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DetailPlacementView" - pattern: "customers/{customer}/detailPlacementViews/{detail_placement_view}" - }; - - // Output only. The resource name of the detail placement view. - // Detail placement view resource names have the form: - // - // `customers/{customer_id}/detailPlacementViews/{ad_group_id}~{base64_placement}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DetailPlacementView" - } - ]; - - // Output only. The automatic placement string at detail level, e. g. website URL, mobile - // application ID, or a YouTube video ID. - google.protobuf.StringValue placement = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The display name is URL name for websites, YouTube video name for YouTube - // videos, and translated mobile app name for mobile apps. - google.protobuf.StringValue display_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. URL of the group placement, e.g. domain, link to the mobile application in - // app store, or a YouTube channel URL. - google.protobuf.StringValue group_placement_target_url = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. URL of the placement, e.g. website, link to the mobile application in app - // store, or a YouTube video URL. - google.protobuf.StringValue target_url = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Type of the placement, e.g. Website, YouTube Video, and Mobile Application. - google.ads.googleads.v4.enums.PlacementTypeEnum.PlacementType placement_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/display_keyword_view.proto b/google/ads/googleads/v4/resources/display_keyword_view.proto deleted file mode 100644 index b546d3d52..000000000 --- a/google/ads/googleads/v4/resources/display_keyword_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DisplayKeywordViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the display keyword view resource. - -// A display keyword view. -message DisplayKeywordView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DisplayKeywordView" - pattern: "customers/{customer}/displayKeywordViews/{display_keyword_view}" - }; - - // Output only. The resource name of the display keyword view. - // Display Keyword view resource names have the form: - // - // `customers/{customer_id}/displayKeywordViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DisplayKeywordView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/distance_view.proto b/google/ads/googleads/v4/resources/distance_view.proto deleted file mode 100644 index a925bf616..000000000 --- a/google/ads/googleads/v4/resources/distance_view.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/distance_bucket.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DistanceViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the DistanceView resource. - -// A distance view with metrics aggregated by the user's distance from an -// advertiser's location extensions. Each DistanceBucket includes all -// impressions that fall within its distance and a single impression will -// contribute to the metrics for all DistanceBuckets that include the user's -// distance. -message DistanceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DistanceView" - pattern: "customers/{customer}/distanceViews/{distance_view}" - }; - - // Output only. The resource name of the distance view. - // Distance view resource names have the form: - // - // `customers/{customer_id}/distanceViews/1~{distance_bucket}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DistanceView" - } - ]; - - // Output only. Grouping of user distance from location extensions. - google.ads.googleads.v4.enums.DistanceBucketEnum.DistanceBucket distance_bucket = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if the DistanceBucket is using the metric system, false otherwise. - google.protobuf.BoolValue metric_system = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/domain_category.proto b/google/ads/googleads/v4/resources/domain_category.proto deleted file mode 100644 index 78d7e73f5..000000000 --- a/google/ads/googleads/v4/resources/domain_category.proto +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DomainCategoryProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Domain Category resource. - -// A category generated automatically by crawling a domain. If a campaign uses -// the DynamicSearchAdsSetting, then domain categories will be generated for -// the domain. The categories can be targeted using WebpageConditionInfo. -// See: https://support.google.com/google-ads/answer/2471185 -message DomainCategory { - option (google.api.resource) = { - type: "googleads.googleapis.com/DomainCategory" - pattern: "customers/{customer}/domainCategories/{domain_category}" - }; - - // Output only. The resource name of the domain category. - // Domain category resource names have the form: - // - // `customers/{customer_id}/domainCategories/{campaign_id}~{category_base64}~{language_code}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DomainCategory" - } - ]; - - // Output only. The campaign this category is recommended for. - google.protobuf.StringValue campaign = 2 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. Recommended category for the website domain. e.g. if you have a website - // about electronics, the categories could be "cameras", "televisions", etc. - google.protobuf.StringValue category = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The language code specifying the language of the website. e.g. "en" for - // English. The language can be specified in the DynamicSearchAdsSetting - // required for dynamic search ads. This is the language of the pages from - // your website that you want Google Ads to find, create ads for, - // and match searches with. - google.protobuf.StringValue language_code = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The domain for the website. The domain can be specified in the - // DynamicSearchAdsSetting required for dynamic search ads. - google.protobuf.StringValue domain = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Fraction of pages on your site that this category matches. - google.protobuf.DoubleValue coverage_fraction = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The position of this category in the set of categories. Lower numbers - // indicate a better match for the domain. null indicates not recommended. - google.protobuf.Int64Value category_rank = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates whether this category has sub-categories. - google.protobuf.BoolValue has_children = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended cost per click for the category. - google.protobuf.Int64Value recommended_cpc_bid_micros = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/dynamic_search_ads_search_term_view.proto b/google/ads/googleads/v4/resources/dynamic_search_ads_search_term_view.proto deleted file mode 100644 index 965cc3edf..000000000 --- a/google/ads/googleads/v4/resources/dynamic_search_ads_search_term_view.proto +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DynamicSearchAdsSearchTermViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Dynamic Search Ads Search Term View resource. - -// A dynamic search ads search term view. -message DynamicSearchAdsSearchTermView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" - pattern: "customers/{customer}/dynamicSearchAdsSearchTermViews/{dynamic_search_ads_search_term_view}" - }; - - // Output only. The resource name of the dynamic search ads search term view. - // Dynamic search ads search term view resource names have the form: - // - // `customers/{customer_id}/dynamicSearchAdsSearchTermViews/{ad_group_id}~{search_term_fingerprint}~{headline_fingerprint}~{landing_page_fingerprint}~{page_url_fingerprint}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" - } - ]; - - // Output only. Search term - // - // This field is read-only. - google.protobuf.StringValue search_term = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The dynamically generated headline of the Dynamic Search Ad. - // - // This field is read-only. - google.protobuf.StringValue headline = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The dynamically selected landing page URL of the impression. - // - // This field is read-only. - google.protobuf.StringValue landing_page = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The URL of page feed item served for the impression. - // - // This field is read-only. - google.protobuf.StringValue page_url = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if query matches a negative keyword. - // - // This field is read-only. - google.protobuf.BoolValue has_negative_keyword = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if query is added to targeted keywords. - // - // This field is read-only. - google.protobuf.BoolValue has_matching_keyword = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if query matches a negative url. - // - // This field is read-only. - google.protobuf.BoolValue has_negative_url = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/expanded_landing_page_view.proto b/google/ads/googleads/v4/resources/expanded_landing_page_view.proto deleted file mode 100644 index b7f1c20f4..000000000 --- a/google/ads/googleads/v4/resources/expanded_landing_page_view.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ExpandedLandingPageViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the expanded landing page view resource. - -// A landing page view with metrics aggregated at the expanded final URL -// level. -message ExpandedLandingPageView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ExpandedLandingPageView" - pattern: "customers/{customer}/expandedLandingPageViews/{expanded_landing_page_view}" - }; - - // Output only. The resource name of the expanded landing page view. - // Expanded landing page view resource names have the form: - // - // `customers/{customer_id}/expandedLandingPageViews/{expanded_final_url_fingerprint}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExpandedLandingPageView" - } - ]; - - // Output only. The final URL that clicks are directed to. - google.protobuf.StringValue expanded_final_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/extension_feed_item.proto b/google/ads/googleads/v4/resources/extension_feed_item.proto deleted file mode 100644 index 9ca98c00c..000000000 --- a/google/ads/googleads/v4/resources/extension_feed_item.proto +++ /dev/null @@ -1,149 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/criteria.proto"; -import "google/ads/googleads/v4/common/extensions.proto"; -import "google/ads/googleads/v4/enums/extension_type.proto"; -import "google/ads/googleads/v4/enums/feed_item_status.proto"; -import "google/ads/googleads/v4/enums/feed_item_target_device.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionFeedItemProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ExtensionFeedItem resource. - -// An extension feed item. -message ExtensionFeedItem { - option (google.api.resource) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - pattern: "customers/{customer}/extensionFeedItems/{extension_feed_item}" - }; - - // Immutable. The resource name of the extension feed item. - // Extension feed item resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - } - ]; - - // Output only. The ID of this feed item. Read-only. - google.protobuf.Int64Value id = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The extension type of the extension feed item. - // This field is read-only. - google.ads.googleads.v4.enums.ExtensionTypeEnum.ExtensionType extension_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Start time in which this feed item is effective and can begin serving. The - // time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue start_date_time = 5; - - // End time in which this feed item is no longer effective and will stop - // serving. The time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue end_date_time = 6; - - // List of non-overlapping schedules specifying all time intervals - // for which the feed item may serve. There can be a maximum of 6 schedules - // per day. - repeated google.ads.googleads.v4.common.AdScheduleInfo ad_schedules = 16; - - // The targeted device. - google.ads.googleads.v4.enums.FeedItemTargetDeviceEnum.FeedItemTargetDevice device = 17; - - // The targeted geo target constant. - google.protobuf.StringValue targeted_geo_target_constant = 20 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - }]; - - // The targeted keyword. - google.ads.googleads.v4.common.KeywordInfo targeted_keyword = 22; - - // Output only. Status of the feed item. - // This field is read-only. - google.ads.googleads.v4.enums.FeedItemStatusEnum.FeedItemStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Extension type. - oneof extension { - // Sitelink extension. - google.ads.googleads.v4.common.SitelinkFeedItem sitelink_feed_item = 2; - - // Structured snippet extension. - google.ads.googleads.v4.common.StructuredSnippetFeedItem structured_snippet_feed_item = 3; - - // App extension. - google.ads.googleads.v4.common.AppFeedItem app_feed_item = 7; - - // Call extension. - google.ads.googleads.v4.common.CallFeedItem call_feed_item = 8; - - // Callout extension. - google.ads.googleads.v4.common.CalloutFeedItem callout_feed_item = 9; - - // Text message extension. - google.ads.googleads.v4.common.TextMessageFeedItem text_message_feed_item = 10; - - // Price extension. - google.ads.googleads.v4.common.PriceFeedItem price_feed_item = 11; - - // Promotion extension. - google.ads.googleads.v4.common.PromotionFeedItem promotion_feed_item = 12; - - // Output only. Location extension. Locations are synced from a GMB account into a feed. - // This field is read-only. - google.ads.googleads.v4.common.LocationFeedItem location_feed_item = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Affiliate location extension. Feed locations are populated by Google Ads - // based on a chain ID. - // This field is read-only. - google.ads.googleads.v4.common.AffiliateLocationFeedItem affiliate_location_feed_item = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Hotel Callout extension. - google.ads.googleads.v4.common.HotelCalloutFeedItem hotel_callout_feed_item = 23; - } - - // Targeting at either the campaign or ad group level. Feed items that target - // a campaign or ad group will only serve with that resource. - oneof serving_resource_targeting { - // The targeted campaign. - google.protobuf.StringValue targeted_campaign = 18 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - }]; - - // The targeted ad group. - google.protobuf.StringValue targeted_ad_group = 19 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - }]; - } -} diff --git a/google/ads/googleads/v4/resources/feed.proto b/google/ads/googleads/v4/resources/feed.proto deleted file mode 100644 index 1158b5eec..000000000 --- a/google/ads/googleads/v4/resources/feed.proto +++ /dev/null @@ -1,193 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/affiliate_location_feed_relationship_type.proto"; -import "google/ads/googleads/v4/enums/feed_attribute_type.proto"; -import "google/ads/googleads/v4/enums/feed_origin.proto"; -import "google/ads/googleads/v4/enums/feed_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Feed resource. - -// A feed. -message Feed { - option (google.api.resource) = { - type: "googleads.googleapis.com/Feed" - pattern: "customers/{customer}/feeds/{feed}" - }; - - // Data used to configure a location feed populated from Google My Business - // Locations. - message PlacesLocationFeedData { - // Data used for authorization using OAuth. - message OAuthInfo { - // The HTTP method used to obtain authorization. - google.protobuf.StringValue http_method = 1; - - // The HTTP request URL used to obtain authorization. - google.protobuf.StringValue http_request_url = 2; - - // The HTTP authorization header used to obtain authorization. - google.protobuf.StringValue http_authorization_header = 3; - } - - // Immutable. Required authentication token (from OAuth API) for the email. - // This field can only be specified in a create request. All its subfields - // are not selectable. - OAuthInfo oauth_info = 1 [(google.api.field_behavior) = IMMUTABLE]; - - // Email address of a Google My Business account or email address of a - // manager of the Google My Business account. Required. - google.protobuf.StringValue email_address = 2; - - // Plus page ID of the managed business whose locations should be used. If - // this field is not set, then all businesses accessible by the user - // (specified by email_address) are used. - // This field is mutate-only and is not selectable. - google.protobuf.StringValue business_account_id = 10; - - // Used to filter Google My Business listings by business name. If - // business_name_filter is set, only listings with a matching business name - // are candidates to be sync'd into FeedItems. - google.protobuf.StringValue business_name_filter = 4; - - // Used to filter Google My Business listings by categories. If entries - // exist in category_filters, only listings that belong to any of the - // categories are candidates to be sync'd into FeedItems. If no entries - // exist in category_filters, then all listings are candidates for syncing. - repeated google.protobuf.StringValue category_filters = 5; - - // Used to filter Google My Business listings by labels. If entries exist in - // label_filters, only listings that has any of the labels set are - // candidates to be synchronized into FeedItems. If no entries exist in - // label_filters, then all listings are candidates for syncing. - repeated google.protobuf.StringValue label_filters = 6; - } - - // Data used to configure an affiliate location feed populated with the - // specified chains. - message AffiliateLocationFeedData { - // The list of chains that the affiliate location feed will sync the - // locations from. - repeated google.protobuf.Int64Value chain_ids = 1; - - // The relationship the chains have with the advertiser. - google.ads.googleads.v4.enums.AffiliateLocationFeedRelationshipTypeEnum.AffiliateLocationFeedRelationshipType relationship_type = 2; - } - - // Immutable. The resource name of the feed. - // Feed resource names have the form: - // - // `customers/{customer_id}/feeds/{feed_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Output only. The ID of the feed. - // This field is read-only. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Name of the feed. Required. - google.protobuf.StringValue name = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // The Feed's attributes. Required on CREATE, unless - // system_feed_generation_data is provided, in which case Google Ads will - // update the feed with the correct attributes. - // Disallowed on UPDATE. Use attribute_operations to add new attributes. - repeated FeedAttribute attributes = 4; - - // The list of operations changing the feed attributes. Attributes can only - // be added, not removed. - repeated FeedAttributeOperation attribute_operations = 9; - - // Immutable. Specifies who manages the FeedAttributes for the Feed. - google.ads.googleads.v4.enums.FeedOriginEnum.FeedOrigin origin = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Status of the feed. - // This field is read-only. - google.ads.googleads.v4.enums.FeedStatusEnum.FeedStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The system data for the Feed. This data specifies information for - // generating the feed items of the system generated feed. - oneof system_feed_generation_data { - // Data used to configure a location feed populated from Google My Business - // Locations. - PlacesLocationFeedData places_location_feed_data = 6; - - // Data used to configure an affiliate location feed populated with - // the specified chains. - AffiliateLocationFeedData affiliate_location_feed_data = 7; - } -} - -// FeedAttributes define the types of data expected to be present in a Feed. A -// single FeedAttribute specifies the expected type of the FeedItemAttributes -// with the same FeedAttributeId. Optionally, a FeedAttribute can be marked as -// being part of a FeedItem's unique key. -message FeedAttribute { - // ID of the attribute. - google.protobuf.Int64Value id = 1; - - // The name of the attribute. Required. - google.protobuf.StringValue name = 2; - - // Data type for feed attribute. Required. - google.ads.googleads.v4.enums.FeedAttributeTypeEnum.FeedAttributeType type = 3; - - // Indicates that data corresponding to this attribute is part of a - // FeedItem's unique key. It defaults to false if it is unspecified. Note - // that a unique key is not required in a Feed's schema, in which case the - // FeedItems must be referenced by their feed_item_id. - google.protobuf.BoolValue is_part_of_key = 4; -} - -// Operation to be performed on a feed attribute list in a mutate. -message FeedAttributeOperation { - // The operator. - enum Operator { - // Unspecified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Add the attribute to the existing attributes. - ADD = 2; - } - - // Output only. Type of list operation to perform. - Operator operator = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The feed attribute being added to the list. - FeedAttribute value = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/feed_item.proto b/google/ads/googleads/v4/resources/feed_item.proto deleted file mode 100644 index 105837d6e..000000000 --- a/google/ads/googleads/v4/resources/feed_item.proto +++ /dev/null @@ -1,215 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/custom_parameter.proto"; -import "google/ads/googleads/v4/common/feed_common.proto"; -import "google/ads/googleads/v4/common/policy.proto"; -import "google/ads/googleads/v4/enums/feed_item_quality_approval_status.proto"; -import "google/ads/googleads/v4/enums/feed_item_quality_disapproval_reason.proto"; -import "google/ads/googleads/v4/enums/feed_item_status.proto"; -import "google/ads/googleads/v4/enums/feed_item_validation_status.proto"; -import "google/ads/googleads/v4/enums/geo_targeting_restriction.proto"; -import "google/ads/googleads/v4/enums/placeholder_type.proto"; -import "google/ads/googleads/v4/enums/policy_approval_status.proto"; -import "google/ads/googleads/v4/enums/policy_review_status.proto"; -import "google/ads/googleads/v4/errors/feed_item_validation_error.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the FeedItem resource. - -// A feed item. -message FeedItem { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedItem" - pattern: "customers/{customer}/feedItems/{feed_item}" - }; - - // Immutable. The resource name of the feed item. - // Feed item resource names have the form: - // - // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; - - // Immutable. The feed to which this feed item belongs. - google.protobuf.StringValue feed = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Output only. The ID of this feed item. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Start time in which this feed item is effective and can begin serving. The - // time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue start_date_time = 4; - - // End time in which this feed item is no longer effective and will stop - // serving. The time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue end_date_time = 5; - - // The feed item's attribute values. - repeated FeedItemAttributeValue attribute_values = 6; - - // Geo targeting restriction specifies the type of location that can be used - // for targeting. - google.ads.googleads.v4.enums.GeoTargetingRestrictionEnum.GeoTargetingRestriction geo_targeting_restriction = 7; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v4.common.CustomParameter url_custom_parameters = 8; - - // Output only. Status of the feed item. - // This field is read-only. - google.ads.googleads.v4.enums.FeedItemStatusEnum.FeedItemStatus status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of info about a feed item's validation and approval state for active - // feed mappings. There will be an entry in the list for each type of feed - // mapping associated with the feed, e.g. a feed with a sitelink and a call - // feed mapping would cause every feed item associated with that feed to have - // an entry in this list for both sitelink and call. - // This field is read-only. - repeated FeedItemPlaceholderPolicyInfo policy_infos = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// A feed item attribute value. -message FeedItemAttributeValue { - // Id of the feed attribute for which the value is associated with. - google.protobuf.Int64Value feed_attribute_id = 1; - - // Int64 value. Should be set if feed_attribute_id refers to a feed attribute - // of type INT64. - google.protobuf.Int64Value integer_value = 2; - - // Bool value. Should be set if feed_attribute_id refers to a feed attribute - // of type BOOLEAN. - google.protobuf.BoolValue boolean_value = 3; - - // String value. Should be set if feed_attribute_id refers to a feed attribute - // of type STRING, URL or DATE_TIME. - // For STRING the maximum length is 1500 characters. For URL the maximum - // length is 2076 characters. For DATE_TIME the string must be in the format - // "YYYYMMDD HHMMSS". - google.protobuf.StringValue string_value = 4; - - // Double value. Should be set if feed_attribute_id refers to a feed attribute - // of type DOUBLE. - google.protobuf.DoubleValue double_value = 5; - - // Price value. Should be set if feed_attribute_id refers to a feed attribute - // of type PRICE. - google.ads.googleads.v4.common.Money price_value = 6; - - // Repeated int64 value. Should be set if feed_attribute_id refers to a feed - // attribute of type INT64_LIST. - repeated google.protobuf.Int64Value integer_values = 7; - - // Repeated bool value. Should be set if feed_attribute_id refers to a feed - // attribute of type BOOLEAN_LIST. - repeated google.protobuf.BoolValue boolean_values = 8; - - // Repeated string value. Should be set if feed_attribute_id refers to a feed - // attribute of type STRING_LIST, URL_LIST or DATE_TIME_LIST. - // For STRING_LIST and URL_LIST the total size of the list in bytes may not - // exceed 3000. For DATE_TIME_LIST the number of elements may not exceed 200. - // - // For STRING_LIST the maximum length of each string element is 1500 - // characters. For URL_LIST the maximum length is 2076 characters. For - // DATE_TIME the format of the string must be the same as start and end time - // for the feed item. - repeated google.protobuf.StringValue string_values = 9; - - // Repeated double value. Should be set if feed_attribute_id refers to a feed - // attribute of type DOUBLE_LIST. - repeated google.protobuf.DoubleValue double_values = 10; -} - -// Policy, validation, and quality approval info for a feed item for the -// specified placeholder type. -message FeedItemPlaceholderPolicyInfo { - // Output only. The placeholder type. - google.ads.googleads.v4.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type_enum = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The FeedMapping that contains the placeholder type. - google.protobuf.StringValue feed_mapping_resource_name = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Where the placeholder type is in the review process. - google.ads.googleads.v4.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The overall approval status of the placeholder type, calculated based on - // the status of its individual policy topic entries. - google.ads.googleads.v4.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The list of policy findings for the placeholder type. - repeated google.ads.googleads.v4.common.PolicyTopicEntry policy_topic_entries = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The validation status of the palceholder type. - google.ads.googleads.v4.enums.FeedItemValidationStatusEnum.FeedItemValidationStatus validation_status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of placeholder type validation errors. - repeated FeedItemValidationError validation_errors = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Placeholder type quality evaluation approval status. - google.ads.googleads.v4.enums.FeedItemQualityApprovalStatusEnum.FeedItemQualityApprovalStatus quality_approval_status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of placeholder type quality evaluation disapproval reasons. - repeated google.ads.googleads.v4.enums.FeedItemQualityDisapprovalReasonEnum.FeedItemQualityDisapprovalReason quality_disapproval_reasons = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Stores a validation error and the set of offending feed attributes which -// together are responsible for causing a feed item validation error. -message FeedItemValidationError { - // Output only. Error code indicating what validation error was triggered. The description - // of the error can be found in the 'description' field. - google.ads.googleads.v4.errors.FeedItemValidationErrorEnum.FeedItemValidationError validation_error = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The description of the validation error. - google.protobuf.StringValue description = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set of feed attributes in the feed item flagged during validation. If - // empty, no specific feed attributes can be associated with the error - // (e.g. error across the entire feed item). - repeated google.protobuf.Int64Value feed_attribute_ids = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Any extra information related to this error which is not captured by - // validation_error and feed_attribute_id (e.g. placeholder field IDs when - // feed_attribute_id is not mapped). Note that extra_info is not localized. - google.protobuf.StringValue extra_info = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/feed_item_target.proto b/google/ads/googleads/v4/resources/feed_item_target.proto deleted file mode 100644 index 4f2a9ee8c..000000000 --- a/google/ads/googleads/v4/resources/feed_item_target.proto +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/criteria.proto"; -import "google/ads/googleads/v4/enums/feed_item_target_device.proto"; -import "google/ads/googleads/v4/enums/feed_item_target_status.proto"; -import "google/ads/googleads/v4/enums/feed_item_target_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the FeedItemTarget resource. - -// A feed item target. -message FeedItemTarget { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedItemTarget" - pattern: "customers/{customer}/feedItemTargets/{feed_item_target}" - }; - - // Immutable. The resource name of the feed item target. - // Feed item target resource names have the form: - // `customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItemTarget" - } - ]; - - // Immutable. The feed item to which this feed item target belongs. - google.protobuf.StringValue feed_item = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; - - // Output only. The target type of this feed item target. This field is read-only. - google.ads.googleads.v4.enums.FeedItemTargetTypeEnum.FeedItemTargetType feed_item_target_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ID of the targeted resource. This field is read-only. - google.protobuf.Int64Value feed_item_target_id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Status of the feed item target. - // This field is read-only. - google.ads.googleads.v4.enums.FeedItemTargetStatusEnum.FeedItemTargetStatus status = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The targeted resource. - oneof target { - // Immutable. The targeted campaign. - google.protobuf.StringValue campaign = 4 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Immutable. The targeted ad group. - google.protobuf.StringValue ad_group = 5 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Immutable. The targeted keyword. - google.ads.googleads.v4.common.KeywordInfo keyword = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The targeted geo target constant resource name. - google.protobuf.StringValue geo_target_constant = 8 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; - - // Immutable. The targeted device. - google.ads.googleads.v4.enums.FeedItemTargetDeviceEnum.FeedItemTargetDevice device = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The targeted schedule. - google.ads.googleads.v4.common.AdScheduleInfo ad_schedule = 10 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v4/resources/feed_mapping.proto b/google/ads/googleads/v4/resources/feed_mapping.proto deleted file mode 100644 index a420c3f6e..000000000 --- a/google/ads/googleads/v4/resources/feed_mapping.proto +++ /dev/null @@ -1,186 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/ad_customizer_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/affiliate_location_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/app_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/call_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/callout_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/custom_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/dsa_page_feed_criterion_field.proto"; -import "google/ads/googleads/v4/enums/education_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/feed_mapping_criterion_type.proto"; -import "google/ads/googleads/v4/enums/feed_mapping_status.proto"; -import "google/ads/googleads/v4/enums/flight_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/hotel_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/job_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/local_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/location_extension_targeting_criterion_field.proto"; -import "google/ads/googleads/v4/enums/location_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/message_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/placeholder_type.proto"; -import "google/ads/googleads/v4/enums/price_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/promotion_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/real_estate_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/sitelink_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/structured_snippet_placeholder_field.proto"; -import "google/ads/googleads/v4/enums/travel_placeholder_field.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the FeedMapping resource. - -// A feed mapping. -message FeedMapping { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedMapping" - pattern: "customers/{customer}/feedMappings/{feed_mapping}" - }; - - // Immutable. The resource name of the feed mapping. - // Feed mapping resource names have the form: - // - // `customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedMapping" - } - ]; - - // Immutable. The feed of this feed mapping. - google.protobuf.StringValue feed = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Immutable. Feed attributes to field mappings. These mappings are a one-to-many - // relationship meaning that 1 feed attribute can be used to populate - // multiple placeholder fields, but 1 placeholder field can only draw - // data from 1 feed attribute. Ad Customizer is an exception, 1 placeholder - // field can be mapped to multiple feed attributes. Required. - repeated AttributeFieldMapping attribute_field_mappings = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Status of the feed mapping. - // This field is read-only. - google.ads.googleads.v4.enums.FeedMappingStatusEnum.FeedMappingStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Feed mapping target. Can be either a placeholder or a criterion. For a - // given feed, the active FeedMappings must have unique targets. Required. - oneof target { - // Immutable. The placeholder type of this mapping (i.e., if the mapping maps feed - // attributes to placeholder fields). - google.ads.googleads.v4.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The criterion type of this mapping (i.e., if the mapping maps feed - // attributes to criterion fields). - google.ads.googleads.v4.enums.FeedMappingCriterionTypeEnum.FeedMappingCriterionType criterion_type = 4 [(google.api.field_behavior) = IMMUTABLE]; - } -} - -// Maps from feed attribute id to a placeholder or criterion field id. -message AttributeFieldMapping { - // Immutable. Feed attribute from which to map. - google.protobuf.Int64Value feed_attribute_id = 1 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The placeholder field ID. If a placeholder field enum is not published in - // the current API version, then this field will be populated and the field - // oneof will be empty. - // This field is read-only. - google.protobuf.Int64Value field_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Placeholder or criterion field to be populated using data from - // the above feed attribute. Required. - oneof field { - // Immutable. Sitelink Placeholder Fields. - google.ads.googleads.v4.enums.SitelinkPlaceholderFieldEnum.SitelinkPlaceholderField sitelink_field = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Call Placeholder Fields. - google.ads.googleads.v4.enums.CallPlaceholderFieldEnum.CallPlaceholderField call_field = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. App Placeholder Fields. - google.ads.googleads.v4.enums.AppPlaceholderFieldEnum.AppPlaceholderField app_field = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Location Placeholder Fields. This field is read-only. - google.ads.googleads.v4.enums.LocationPlaceholderFieldEnum.LocationPlaceholderField location_field = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Affiliate Location Placeholder Fields. This field is read-only. - google.ads.googleads.v4.enums.AffiliateLocationPlaceholderFieldEnum.AffiliateLocationPlaceholderField affiliate_location_field = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Callout Placeholder Fields. - google.ads.googleads.v4.enums.CalloutPlaceholderFieldEnum.CalloutPlaceholderField callout_field = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Structured Snippet Placeholder Fields. - google.ads.googleads.v4.enums.StructuredSnippetPlaceholderFieldEnum.StructuredSnippetPlaceholderField structured_snippet_field = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Message Placeholder Fields. - google.ads.googleads.v4.enums.MessagePlaceholderFieldEnum.MessagePlaceholderField message_field = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Price Placeholder Fields. - google.ads.googleads.v4.enums.PricePlaceholderFieldEnum.PricePlaceholderField price_field = 11 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Promotion Placeholder Fields. - google.ads.googleads.v4.enums.PromotionPlaceholderFieldEnum.PromotionPlaceholderField promotion_field = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Ad Customizer Placeholder Fields - google.ads.googleads.v4.enums.AdCustomizerPlaceholderFieldEnum.AdCustomizerPlaceholderField ad_customizer_field = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Dynamic Search Ad Page Feed Fields. - google.ads.googleads.v4.enums.DsaPageFeedCriterionFieldEnum.DsaPageFeedCriterionField dsa_page_feed_field = 14 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Location Target Fields. - google.ads.googleads.v4.enums.LocationExtensionTargetingCriterionFieldEnum.LocationExtensionTargetingCriterionField location_extension_targeting_field = 15 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Education Placeholder Fields - google.ads.googleads.v4.enums.EducationPlaceholderFieldEnum.EducationPlaceholderField education_field = 16 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Flight Placeholder Fields - google.ads.googleads.v4.enums.FlightPlaceholderFieldEnum.FlightPlaceholderField flight_field = 17 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Placeholder Fields - google.ads.googleads.v4.enums.CustomPlaceholderFieldEnum.CustomPlaceholderField custom_field = 18 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Hotel Placeholder Fields - google.ads.googleads.v4.enums.HotelPlaceholderFieldEnum.HotelPlaceholderField hotel_field = 19 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Real Estate Placeholder Fields - google.ads.googleads.v4.enums.RealEstatePlaceholderFieldEnum.RealEstatePlaceholderField real_estate_field = 20 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Travel Placeholder Fields - google.ads.googleads.v4.enums.TravelPlaceholderFieldEnum.TravelPlaceholderField travel_field = 21 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Local Placeholder Fields - google.ads.googleads.v4.enums.LocalPlaceholderFieldEnum.LocalPlaceholderField local_field = 22 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Job Placeholder Fields - google.ads.googleads.v4.enums.JobPlaceholderFieldEnum.JobPlaceholderField job_field = 23 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v4/resources/feed_placeholder_view.proto b/google/ads/googleads/v4/resources/feed_placeholder_view.proto deleted file mode 100644 index fa7f0a13a..000000000 --- a/google/ads/googleads/v4/resources/feed_placeholder_view.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedPlaceholderViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the FeedPlaceholderView resource. - -// A feed placeholder view. -message FeedPlaceholderView { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedPlaceholderView" - pattern: "customers/{customer}/feedPlaceholderViews/{feed_placeholder_view}" - }; - - // Output only. The resource name of the feed placeholder view. - // Feed placeholder view resource names have the form: - // - // `customers/{customer_id}/feedPlaceholderViews/{placeholder_type}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedPlaceholderView" - } - ]; - - // Output only. The placeholder type of the feed placeholder view. - google.ads.googleads.v4.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/gender_view.proto b/google/ads/googleads/v4/resources/gender_view.proto deleted file mode 100644 index 0057a0154..000000000 --- a/google/ads/googleads/v4/resources/gender_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GenderViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the gender view resource. - -// A gender view. -message GenderView { - option (google.api.resource) = { - type: "googleads.googleapis.com/GenderView" - pattern: "customers/{customer}/genderViews/{gender_view}" - }; - - // Output only. The resource name of the gender view. - // Gender view resource names have the form: - // - // `customers/{customer_id}/genderViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GenderView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/geo_target_constant.proto b/google/ads/googleads/v4/resources/geo_target_constant.proto deleted file mode 100644 index 84c40f8d2..000000000 --- a/google/ads/googleads/v4/resources/geo_target_constant.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/geo_target_constant_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the geo target constant resource. - -// A geo target constant. -message GeoTargetConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/GeoTargetConstant" - pattern: "geoTargetConstants/{geo_target_constant}" - }; - - // Output only. The resource name of the geo target constant. - // Geo target constant resource names have the form: - // - // `geoTargetConstants/{geo_target_constant_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; - - // Output only. The ID of the geo target constant. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Geo target constant English name. - google.protobuf.StringValue name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ISO-3166-1 alpha-2 country code that is associated with the target. - google.protobuf.StringValue country_code = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Geo target constant target type. - google.protobuf.StringValue target_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Geo target constant status. - google.ads.googleads.v4.enums.GeoTargetConstantStatusEnum.GeoTargetConstantStatus status = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The fully qualified English name, consisting of the target's name and that - // of its parent and country. - google.protobuf.StringValue canonical_name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/geographic_view.proto b/google/ads/googleads/v4/resources/geographic_view.proto deleted file mode 100644 index 2e6efdf8f..000000000 --- a/google/ads/googleads/v4/resources/geographic_view.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/geo_targeting_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GeographicViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the geographic view resource. - -// A geographic view. -// -// Geographic View includes all metrics aggregated at the country level, -// one row per country. It reports metrics at either actual physical location of -// the user or an area of interest. If other segment fields are used, you may -// get more than one row per country. -message GeographicView { - option (google.api.resource) = { - type: "googleads.googleapis.com/GeographicView" - pattern: "customers/{customer}/geographicViews/{geographic_view}" - }; - - // Output only. The resource name of the geographic view. - // Geographic view resource names have the form: - // - // `customers/{customer_id}/geographicViews/{country_criterion_id}~{location_type}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeographicView" - } - ]; - - // Output only. Type of the geo targeting of the campaign. - google.ads.googleads.v4.enums.GeoTargetingTypeEnum.GeoTargetingType location_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Criterion Id for the country. - google.protobuf.Int64Value country_criterion_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/google_ads_field.proto b/google/ads/googleads/v4/resources/google_ads_field.proto deleted file mode 100644 index 84dd085c0..000000000 --- a/google/ads/googleads/v4/resources/google_ads_field.proto +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/google_ads_field_category.proto"; -import "google/ads/googleads/v4/enums/google_ads_field_data_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Google Ads Field resource. - -// A field or resource (artifact) used by GoogleAdsService. -message GoogleAdsField { - option (google.api.resource) = { - type: "googleads.googleapis.com/GoogleAdsField" - pattern: "googleAdsFields/{google_ads_field}" - }; - - // Output only. The resource name of the artifact. - // Artifact resource names have the form: - // - // `googleAdsFields/{name}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GoogleAdsField" - } - ]; - - // Output only. The name of the artifact. - google.protobuf.StringValue name = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The category of the artifact. - google.ads.googleads.v4.enums.GoogleAdsFieldCategoryEnum.GoogleAdsFieldCategory category = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the artifact can be used in a SELECT clause in search - // queries. - google.protobuf.BoolValue selectable = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the artifact can be used in a WHERE clause in search - // queries. - google.protobuf.BoolValue filterable = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the artifact can be used in a ORDER BY clause in search - // queries. - google.protobuf.BoolValue sortable = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The names of all resources, segments, and metrics that are selectable with - // the described artifact. - repeated google.protobuf.StringValue selectable_with = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The names of all resources that are selectable with the described - // artifact. Fields from these resources do not segment metrics when included - // in search queries. - // - // This field is only set for artifacts whose category is RESOURCE. - repeated google.protobuf.StringValue attribute_resources = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. At and beyond version V1 this field lists the names of all metrics that are - // selectable with the described artifact when it is used in the FROM clause. - // It is only set for artifacts whose category is RESOURCE. - // - // Before version V1 this field lists the names of all metrics that are - // selectable with the described artifact. It is only set for artifacts whose - // category is either RESOURCE or SEGMENT - repeated google.protobuf.StringValue metrics = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. At and beyond version V1 this field lists the names of all artifacts, - // whether a segment or another resource, that segment metrics when included - // in search queries and when the described artifact is used in the FROM - // clause. It is only set for artifacts whose category is RESOURCE. - // - // Before version V1 this field lists the names of all artifacts, whether a - // segment or another resource, that segment metrics when included in search - // queries. It is only set for artifacts of category RESOURCE, SEGMENT or - // METRIC. - repeated google.protobuf.StringValue segments = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Values the artifact can assume if it is a field of type ENUM. - // - // This field is only set for artifacts of category SEGMENT or ATTRIBUTE. - repeated google.protobuf.StringValue enum_values = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. This field determines the operators that can be used with the artifact - // in WHERE clauses. - google.ads.googleads.v4.enums.GoogleAdsFieldDataTypeEnum.GoogleAdsFieldDataType data_type = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The URL of proto describing the artifact's data type. - google.protobuf.StringValue type_url = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the field artifact is repeated. - google.protobuf.BoolValue is_repeated = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/group_placement_view.proto b/google/ads/googleads/v4/resources/group_placement_view.proto deleted file mode 100644 index 3eeb4e886..000000000 --- a/google/ads/googleads/v4/resources/group_placement_view.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/placement_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GroupPlacementViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the group placement view resource. - -// A group placement view. -message GroupPlacementView { - option (google.api.resource) = { - type: "googleads.googleapis.com/GroupPlacementView" - pattern: "customers/{customer}/groupPlacementViews/{group_placement_view}" - }; - - // Output only. The resource name of the group placement view. - // Group placement view resource names have the form: - // - // `customers/{customer_id}/groupPlacementViews/{ad_group_id}~{base64_placement}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GroupPlacementView" - } - ]; - - // Output only. The automatic placement string at group level, e. g. web domain, mobile - // app ID, or a YouTube channel ID. - google.protobuf.StringValue placement = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Domain name for websites and YouTube channel name for YouTube channels. - google.protobuf.StringValue display_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. URL of the group placement, e.g. domain, link to the mobile application in - // app store, or a YouTube channel URL. - google.protobuf.StringValue target_url = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Type of the placement, e.g. Website, YouTube Channel, Mobile Application. - google.ads.googleads.v4.enums.PlacementTypeEnum.PlacementType placement_type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/hotel_group_view.proto b/google/ads/googleads/v4/resources/hotel_group_view.proto deleted file mode 100644 index b2d7ba22c..000000000 --- a/google/ads/googleads/v4/resources/hotel_group_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "HotelGroupViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the hotel group view resource. - -// A hotel group view. -message HotelGroupView { - option (google.api.resource) = { - type: "googleads.googleapis.com/HotelGroupView" - pattern: "customers/{customer}/hotelGroupViews/{hotel_group_view}" - }; - - // Output only. The resource name of the hotel group view. - // Hotel Group view resource names have the form: - // - // `customers/{customer_id}/hotelGroupViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelGroupView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/hotel_performance_view.proto b/google/ads/googleads/v4/resources/hotel_performance_view.proto deleted file mode 100644 index 47175b33e..000000000 --- a/google/ads/googleads/v4/resources/hotel_performance_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "HotelPerformanceViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the hotel performance view resource. - -// A hotel performance view. -message HotelPerformanceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/HotelPerformanceView" - pattern: "customers/{customer}/hotelPerformanceView" - }; - - // Output only. The resource name of the hotel performance view. - // Hotel performance view resource names have the form: - // - // `customers/{customer_id}/hotelPerformanceView` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/income_range_view.proto b/google/ads/googleads/v4/resources/income_range_view.proto deleted file mode 100644 index 58869176f..000000000 --- a/google/ads/googleads/v4/resources/income_range_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "IncomeRangeViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the income range view resource. - -// An income range view. -message IncomeRangeView { - option (google.api.resource) = { - type: "googleads.googleapis.com/IncomeRangeView" - pattern: "customers/{customer}/incomeRangeViews/{income_range_view}" - }; - - // Output only. The resource name of the income range view. - // Income range view resource names have the form: - // - // `customers/{customer_id}/incomeRangeViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/IncomeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/invoice.proto b/google/ads/googleads/v4/resources/invoice.proto deleted file mode 100644 index ddd4b7cb1..000000000 --- a/google/ads/googleads/v4/resources/invoice.proto +++ /dev/null @@ -1,190 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/dates.proto"; -import "google/ads/googleads/v4/enums/invoice_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Invoice resource. - -// An invoice. All invoice information is snapshotted to match the PDF invoice. -// For invoices older than the launch of InvoiceService, the snapshotted -// information may not match the PDF invoice. -message Invoice { - option (google.api.resource) = { - type: "googleads.googleapis.com/Invoice" - pattern: "customers/{customer}/invoices/{invoice}" - }; - - // Represents a summarized account budget billable cost. - message AccountBudgetSummary { - // Output only. The resource name of the customer associated with this account budget. - // This contains the customer ID, which appears on the invoice PDF as - // "Account ID". - // Customer resource names have the form: - // - // `customers/{customer_id}` - google.protobuf.StringValue customer = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The descriptive name of the account budget’s customer. It appears on the - // invoice PDF as "Account". - google.protobuf.StringValue customer_descriptive_name = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the account budget associated with this summarized - // billable cost. - // AccountBudget resource names have the form: - // - // `customers/{customer_id}/accountBudgets/{account_budget_id}` - google.protobuf.StringValue account_budget = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the account budget. It appears on the invoice PDF as "Account - // budget". - google.protobuf.StringValue account_budget_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The purchase order number of the account budget. It appears on the - // invoice PDF as "Purchase order". - google.protobuf.StringValue purchase_order_number = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The pretax subtotal amount attributable to this budget during the service - // period, in micros. - google.protobuf.Int64Value subtotal_amount_micros = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The tax amount attributable to this budget during the service period, in - // micros. - google.protobuf.Int64Value tax_amount_micros = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total amount attributable to this budget during the service period, - // in micros. This equals the sum of the account budget subtotal amount and - // the account budget tax amount. - google.protobuf.Int64Value total_amount_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The billable activity date range of the account budget, within the - // service date range of this invoice. The end date is inclusive. This can - // be different from the account budget's start and end time. - google.ads.googleads.v4.common.DateRange billable_activity_date_range = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Output only. The resource name of the invoice. Multiple customers can share a given - // invoice, so multiple resource names may point to the same invoice. - // Invoice resource names have the form: - // - // `customers/{customer_id}/invoices/{invoice_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Invoice" - } - ]; - - // Output only. The ID of the invoice. It appears on the invoice PDF as "Invoice number". - google.protobuf.StringValue id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of invoice. - google.ads.googleads.v4.enums.InvoiceTypeEnum.InvoiceType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of this invoice’s billing setup. - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - google.protobuf.StringValue billing_setup = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A 16 digit ID used to identify the payments account associated with the - // billing setup, e.g. "1234-5678-9012-3456". It appears on the invoice PDF as - // "Billing Account Number". - google.protobuf.StringValue payments_account_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A 12 digit ID used to identify the payments profile associated with the - // billing setup, e.g. "1234-5678-9012". It appears on the invoice PDF as - // "Billing ID". - google.protobuf.StringValue payments_profile_id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The issue date in yyyy-mm-dd format. It appears on the invoice PDF as - // either "Issue date" or "Invoice date". - google.protobuf.StringValue issue_date = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The due date in yyyy-mm-dd format. - google.protobuf.StringValue due_date = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The service period date range of this invoice. The end date is inclusive. - google.ads.googleads.v4.common.DateRange service_date_range = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The currency code. All costs are returned in this currency. A subset of the - // currency codes derived from the ISO 4217 standard is supported. - google.protobuf.StringValue currency_code = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total amount of invoice level adjustments. These adjustments are made - // on the invoice, not on a specific account budget. - google.protobuf.Int64Value invoice_level_adjustments_micros = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The pretax subtotal amount, in micros. This equals the - // sum of the AccountBudgetSummary subtotal amounts, - // Invoice.adjustments_subtotal_amount_micros, and - // Invoice.regulatory_costs_subtotal_amount_micros. - // Starting with v6, the Invoice.regulatory_costs_subtotal_amount_micros is no - // longer included. - google.protobuf.Int64Value subtotal_amount_micros = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The sum of all taxes on the invoice, in micros. This equals the sum of the - // AccountBudgetSummary tax amounts, plus taxes not associated with a specific - // account budget. - google.protobuf.Int64Value tax_amount_micros = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total amount, in micros. This equals the sum of - // Invoice.subtotal_amount_micros and Invoice.tax_amount_micros. - // Starting with v6, Invoice.regulatory_costs_subtotal_amount_micros is - // also added as it is no longer already included in - // Invoice.tax_amount_micros. - google.protobuf.Int64Value total_amount_micros = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the original invoice corrected, wrote off, or canceled - // by this invoice, if applicable. If `corrected_invoice` is set, - // `replaced_invoices` will not be set. - // Invoice resource names have the form: - // - // `customers/{customer_id}/invoices/{invoice_id}` - google.protobuf.StringValue corrected_invoice = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the original invoice(s) being rebilled or replaced by - // this invoice, if applicable. There might be multiple replaced invoices due - // to invoice consolidation. The replaced invoices may not belong to the same - // payments account. If `replaced_invoices` is set, `corrected_invoice` will - // not be set. - // Invoice resource names have the form: - // - // `customers/{customer_id}/invoices/{invoice_id}` - repeated google.protobuf.StringValue replaced_invoices = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The URL to a PDF copy of the invoice. Users need to pass in their OAuth - // token to request the PDF with this URL. - google.protobuf.StringValue pdf_url = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The list of summarized account budget information associated with this - // invoice. - repeated AccountBudgetSummary account_budget_summaries = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/keyword_plan.proto b/google/ads/googleads/v4/resources/keyword_plan.proto deleted file mode 100644 index a633a4ef6..000000000 --- a/google/ads/googleads/v4/resources/keyword_plan.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/dates.proto"; -import "google/ads/googleads/v4/enums/keyword_plan_forecast_interval.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the keyword plan resource. - -// A Keyword Planner plan. -// Max number of saved keyword plans: 10000. -// It's possible to remove plans if limit is reached. -message KeywordPlan { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlan" - pattern: "customers/{customer}/keywordPlans/{keyword_plan}" - }; - - // Immutable. The resource name of the Keyword Planner plan. - // KeywordPlan resource names have the form: - // - // `customers/{customer_id}/keywordPlans/{kp_plan_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; - - // Output only. The ID of the keyword plan. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the keyword plan. - // - // This field is required and should not be empty when creating new keyword - // plans. - google.protobuf.StringValue name = 3; - - // The date period used for forecasting the plan. - KeywordPlanForecastPeriod forecast_period = 4; -} - -// The forecasting period associated with the keyword plan. -message KeywordPlanForecastPeriod { - // Required. The date used for forecasting the Plan. - oneof interval { - // A future date range relative to the current date used for forecasting. - google.ads.googleads.v4.enums.KeywordPlanForecastIntervalEnum.KeywordPlanForecastInterval date_interval = 1; - - // The custom date range used for forecasting. - // The start and end dates must be in the future. Otherwise, an error will - // be returned when the forecasting action is performed. - // The start and end dates are inclusive. - google.ads.googleads.v4.common.DateRange date_range = 2; - } -} diff --git a/google/ads/googleads/v4/resources/keyword_plan_ad_group.proto b/google/ads/googleads/v4/resources/keyword_plan_ad_group.proto deleted file mode 100644 index d64aa43c5..000000000 --- a/google/ads/googleads/v4/resources/keyword_plan_ad_group.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the keyword plan ad group resource. - -// A Keyword Planner ad group. -// Max number of keyword plan ad groups per plan: 200. -message KeywordPlanAdGroup { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - pattern: "customers/{customer}/keywordPlanAdGroups/{keyword_plan_ad_group}" - }; - - // Immutable. The resource name of the Keyword Planner ad group. - // KeywordPlanAdGroup resource names have the form: - // - // `customers/{customer_id}/keywordPlanAdGroups/{kp_ad_group_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - } - ]; - - // The keyword plan campaign to which this ad group belongs. - google.protobuf.StringValue keyword_plan_campaign = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - }]; - - // Output only. The ID of the keyword plan ad group. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the keyword plan ad group. - // - // This field is required and should not be empty when creating keyword plan - // ad group. - google.protobuf.StringValue name = 4; - - // A default ad group max cpc bid in micros in account currency for all - // biddable keywords under the keyword plan ad group. - // If not set, will inherit from parent campaign. - google.protobuf.Int64Value cpc_bid_micros = 5; -} diff --git a/google/ads/googleads/v4/resources/keyword_plan_ad_group_keyword.proto b/google/ads/googleads/v4/resources/keyword_plan_ad_group_keyword.proto deleted file mode 100644 index f2dbfce15..000000000 --- a/google/ads/googleads/v4/resources/keyword_plan_ad_group_keyword.proto +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/keyword_match_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupKeywordProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the keyword plan ad group keyword resource. - -// A Keyword Plan ad group keyword. -// Max number of keyword plan keywords per plan: 10000. -message KeywordPlanAdGroupKeyword { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - pattern: "customers/{customer}/keywordPlanAdGroupKeywords/{keyword_plan_ad_group_keyword}" - }; - - // Immutable. The resource name of the Keyword Plan ad group keyword. - // KeywordPlanAdGroupKeyword resource names have the form: - // - // `customers/{customer_id}/keywordPlanAdGroupKeywords/{kp_ad_group_keyword_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - } - ]; - - // The Keyword Plan ad group to which this keyword belongs. - google.protobuf.StringValue keyword_plan_ad_group = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - }]; - - // Output only. The ID of the Keyword Plan keyword. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The keyword text. - google.protobuf.StringValue text = 4; - - // The keyword match type. - google.ads.googleads.v4.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; - - // A keyword level max cpc bid in micros (e.g. $1 = 1mm). The currency is the - // same as the account currency code. This will override any CPC bid set at - // the keyword plan ad group level. - // Not applicable for negative keywords. (negative = true) - // This field is Optional. - google.protobuf.Int64Value cpc_bid_micros = 6; - - // Immutable. If true, the keyword is negative. - google.protobuf.BoolValue negative = 7 [(google.api.field_behavior) = IMMUTABLE]; -} diff --git a/google/ads/googleads/v4/resources/keyword_plan_campaign.proto b/google/ads/googleads/v4/resources/keyword_plan_campaign.proto deleted file mode 100644 index 62a124caa..000000000 --- a/google/ads/googleads/v4/resources/keyword_plan_campaign.proto +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/keyword_plan_network.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the keyword plan campaign resource. - -// A Keyword Plan campaign. -// Max number of keyword plan campaigns per plan allowed: 1. -message KeywordPlanCampaign { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - pattern: "customers/{customer}/keywordPlanCampaigns/{keyword_plan_campaign}" - }; - - // Immutable. The resource name of the Keyword Plan campaign. - // KeywordPlanCampaign resource names have the form: - // - // `customers/{customer_id}/keywordPlanCampaigns/{kp_campaign_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - } - ]; - - // The keyword plan this campaign belongs to. - google.protobuf.StringValue keyword_plan = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - }]; - - // Output only. The ID of the Keyword Plan campaign. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the Keyword Plan campaign. - // - // This field is required and should not be empty when creating Keyword Plan - // campaigns. - google.protobuf.StringValue name = 4; - - // The languages targeted for the Keyword Plan campaign. - // Max allowed: 1. - repeated google.protobuf.StringValue language_constants = 5 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/LanguageConstant" - }]; - - // Targeting network. - // - // This field is required and should not be empty when creating Keyword Plan - // campaigns. - google.ads.googleads.v4.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork keyword_plan_network = 6; - - // A default max cpc bid in micros, and in the account currency, for all ad - // groups under the campaign. - // - // This field is required and should not be empty when creating Keyword Plan - // campaigns. - google.protobuf.Int64Value cpc_bid_micros = 7; - - // The geo targets. - // Max number allowed: 20. - repeated KeywordPlanGeoTarget geo_targets = 8; -} - -// A geo target. -message KeywordPlanGeoTarget { - // Required. The resource name of the geo target. - google.protobuf.StringValue geo_target_constant = 1 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - }]; -} diff --git a/google/ads/googleads/v4/resources/keyword_plan_campaign_keyword.proto b/google/ads/googleads/v4/resources/keyword_plan_campaign_keyword.proto deleted file mode 100644 index a95e21cc7..000000000 --- a/google/ads/googleads/v4/resources/keyword_plan_campaign_keyword.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/keyword_match_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignKeywordProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the keyword plan negative keyword resource. - -// A Keyword Plan Campaign keyword. -// Only negative keywords are supported for Campaign Keyword. -message KeywordPlanCampaignKeyword { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - pattern: "customers/{customer}/keywordPlanCampaignKeywords/{keyword_plan_campaign_keyword}" - }; - - // Immutable. The resource name of the Keyword Plan Campaign keyword. - // KeywordPlanCampaignKeyword resource names have the form: - // - // `customers/{customer_id}/keywordPlanCampaignKeywords/{kp_campaign_keyword_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - } - ]; - - // The Keyword Plan campaign to which this negative keyword belongs. - google.protobuf.StringValue keyword_plan_campaign = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - }]; - - // Output only. The ID of the Keyword Plan negative keyword. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The keyword text. - google.protobuf.StringValue text = 4; - - // The keyword match type. - google.ads.googleads.v4.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; - - // Immutable. If true, the keyword is negative. - // Must be set to true. Only negative campaign keywords are supported. - google.protobuf.BoolValue negative = 7 [(google.api.field_behavior) = IMMUTABLE]; -} diff --git a/google/ads/googleads/v4/resources/keyword_view.proto b/google/ads/googleads/v4/resources/keyword_view.proto deleted file mode 100644 index 4c9a7e118..000000000 --- a/google/ads/googleads/v4/resources/keyword_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the keyword view resource. - -// A keyword view. -message KeywordView { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordView" - pattern: "customers/{customer}/keywordViews/{keyword_view}" - }; - - // Output only. The resource name of the keyword view. - // Keyword view resource names have the form: - // - // `customers/{customer_id}/keywordViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/label.proto b/google/ads/googleads/v4/resources/label.proto deleted file mode 100644 index 38bf5ddc3..000000000 --- a/google/ads/googleads/v4/resources/label.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/text_label.proto"; -import "google/ads/googleads/v4/enums/label_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LabelProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// A label. -message Label { - option (google.api.resource) = { - type: "googleads.googleapis.com/Label" - pattern: "customers/{customer}/labels/{label}" - }; - - // Immutable. Name of the resource. - // Label resource names have the form: - // `customers/{customer_id}/labels/{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; - - // Output only. Id of the label. Read only. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the label. - // - // This field is required and should not be empty when creating a new label. - // - // The length of this string should be between 1 and 80, inclusive. - google.protobuf.StringValue name = 3; - - // Output only. Status of the label. Read only. - google.ads.googleads.v4.enums.LabelStatusEnum.LabelStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // A type of label displaying text on a colored background. - google.ads.googleads.v4.common.TextLabel text_label = 5; -} diff --git a/google/ads/googleads/v4/resources/landing_page_view.proto b/google/ads/googleads/v4/resources/landing_page_view.proto deleted file mode 100644 index 72463cd11..000000000 --- a/google/ads/googleads/v4/resources/landing_page_view.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LandingPageViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the landing page view resource. - -// A landing page view with metrics aggregated at the unexpanded final URL -// level. -message LandingPageView { - option (google.api.resource) = { - type: "googleads.googleapis.com/LandingPageView" - pattern: "customers/{customer}/landingPageViews/{landing_page_view}" - }; - - // Output only. The resource name of the landing page view. - // Landing page view resource names have the form: - // - // `customers/{customer_id}/landingPageViews/{unexpanded_final_url_fingerprint}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LandingPageView" - } - ]; - - // Output only. The advertiser-specified final URL. - google.protobuf.StringValue unexpanded_final_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/language_constant.proto b/google/ads/googleads/v4/resources/language_constant.proto deleted file mode 100644 index 7f1fc797f..000000000 --- a/google/ads/googleads/v4/resources/language_constant.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LanguageConstantProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the language constant resource. - -// A language. -message LanguageConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/LanguageConstant" - pattern: "languageConstants/{language_constant}" - }; - - // Output only. The resource name of the language constant. - // Language constant resource names have the form: - // - // `languageConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LanguageConstant" - } - ]; - - // Output only. The ID of the language constant. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The language code, e.g. "en_US", "en_AU", "es", "fr", etc. - google.protobuf.StringValue code = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The full name of the language in English, e.g., "English (US)", "Spanish", - // etc. - google.protobuf.StringValue name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the language is targetable. - google.protobuf.BoolValue targetable = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/location_view.proto b/google/ads/googleads/v4/resources/location_view.proto deleted file mode 100644 index c851ca22d..000000000 --- a/google/ads/googleads/v4/resources/location_view.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LocationViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the location view resource. - -// A location view summarizes the performance of campaigns by -// Location criteria. -message LocationView { - option (google.api.resource) = { - type: "googleads.googleapis.com/LocationView" - pattern: "customers/{customer}/locationViews/{location_view}" - }; - - // Output only. The resource name of the location view. - // Location view resource names have the form: - // - // `customers/{customer_id}/locationViews/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LocationView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/managed_placement_view.proto b/google/ads/googleads/v4/resources/managed_placement_view.proto deleted file mode 100644 index bf9adaab0..000000000 --- a/google/ads/googleads/v4/resources/managed_placement_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ManagedPlacementViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Managed Placement view resource. - -// A managed placement view. -message ManagedPlacementView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ManagedPlacementView" - pattern: "customers/{customer}/managedPlacementViews/{managed_placement_view}" - }; - - // Output only. The resource name of the Managed Placement view. - // Managed placement view resource names have the form: - // - // `customers/{customer_id}/managedPlacementViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ManagedPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/media_file.proto b/google/ads/googleads/v4/resources/media_file.proto deleted file mode 100644 index c27f9bfae..000000000 --- a/google/ads/googleads/v4/resources/media_file.proto +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/media_type.proto"; -import "google/ads/googleads/v4/enums/mime_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MediaFileProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the media file resource. - -// A media file. -message MediaFile { - option (google.api.resource) = { - type: "googleads.googleapis.com/MediaFile" - pattern: "customers/{customer}/mediaFiles/{media_file}" - }; - - // Immutable. The resource name of the media file. - // Media file resource names have the form: - // - // `customers/{customer_id}/mediaFiles/{media_file_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MediaFile" - } - ]; - - // Output only. The ID of the media file. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Type of the media file. - google.ads.googleads.v4.enums.MediaTypeEnum.MediaType type = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The mime type of the media file. - google.ads.googleads.v4.enums.MimeTypeEnum.MimeType mime_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The URL of where the original media file was downloaded from (or a file - // name). Only used for media of type AUDIO and IMAGE. - google.protobuf.StringValue source_url = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The name of the media file. The name can be used by clients to help - // identify previously uploaded media. - google.protobuf.StringValue name = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The size of the media file in bytes. - google.protobuf.Int64Value file_size = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The specific type of the media file. - oneof mediatype { - // Immutable. Encapsulates an Image. - MediaImage image = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A ZIP archive media the content of which contains HTML5 assets. - MediaBundle media_bundle = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Encapsulates an Audio. - MediaAudio audio = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Encapsulates a Video. - MediaVideo video = 11 [(google.api.field_behavior) = IMMUTABLE]; - } -} - -// Encapsulates an Image. -message MediaImage { - // Immutable. Raw image data. - google.protobuf.BytesValue data = 1 [(google.api.field_behavior) = IMMUTABLE]; -} - -// Represents a ZIP archive media the content of which contains HTML5 assets. -message MediaBundle { - // Immutable. Raw zipped data. - google.protobuf.BytesValue data = 1 [(google.api.field_behavior) = IMMUTABLE]; -} - -// Encapsulates an Audio. -message MediaAudio { - // Output only. The duration of the Audio in milliseconds. - google.protobuf.Int64Value ad_duration_millis = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Encapsulates a Video. -message MediaVideo { - // Output only. The duration of the Video in milliseconds. - google.protobuf.Int64Value ad_duration_millis = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The YouTube video ID (as seen in YouTube URLs). - google.protobuf.StringValue youtube_video_id = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The Advertising Digital Identification code for this video, as defined by - // the American Association of Advertising Agencies, used mainly for - // television commercials. - google.protobuf.StringValue advertising_id_code = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Industry Standard Commercial Identifier code for this video, used - // mainly for television commercials. - google.protobuf.StringValue isci_code = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/merchant_center_link.proto b/google/ads/googleads/v4/resources/merchant_center_link.proto deleted file mode 100644 index 4f581ac93..000000000 --- a/google/ads/googleads/v4/resources/merchant_center_link.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/merchant_center_link_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MerchantCenterLinkProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Merchant Center link resource. - -// A data sharing connection, proposed or in use, -// between a Google Ads Customer and a Merchant Center account. -message MerchantCenterLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/MerchantCenterLink" - pattern: "customers/{customer}/merchantCenterLinks/{merchant_center_link}" - }; - - // Immutable. The resource name of the merchant center link. - // Merchant center link resource names have the form: - // - // `customers/{customer_id}/merchantCenterLinks/{merchant_center_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MerchantCenterLink" - } - ]; - - // Output only. The ID of the Merchant Center account. - // This field is readonly. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the Merchant Center account. - // This field is readonly. - google.protobuf.StringValue merchant_center_account_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the link. - google.ads.googleads.v4.enums.MerchantCenterLinkStatusEnum.MerchantCenterLinkStatus status = 5; -} diff --git a/google/ads/googleads/v4/resources/mobile_app_category_constant.proto b/google/ads/googleads/v4/resources/mobile_app_category_constant.proto deleted file mode 100644 index c7e9afbb4..000000000 --- a/google/ads/googleads/v4/resources/mobile_app_category_constant.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MobileAppCategoryConstantProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Mobile App Category Constant resource. - -// A mobile application category constant. -message MobileAppCategoryConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/MobileAppCategoryConstant" - pattern: "mobileAppCategoryConstants/{mobile_app_category_constant}" - }; - - // Output only. The resource name of the mobile app category constant. - // Mobile app category constant resource names have the form: - // - // `mobileAppCategoryConstants/{mobile_app_category_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileAppCategoryConstant" - } - ]; - - // Output only. The ID of the mobile app category constant. - google.protobuf.Int32Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Mobile app category name. - google.protobuf.StringValue name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/mobile_device_constant.proto b/google/ads/googleads/v4/resources/mobile_device_constant.proto deleted file mode 100644 index d5b1e7b4f..000000000 --- a/google/ads/googleads/v4/resources/mobile_device_constant.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/mobile_device_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MobileDeviceConstantProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the mobile device constant resource. - -// A mobile device constant. -message MobileDeviceConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/MobileDeviceConstant" - pattern: "mobileDeviceConstants/{mobile_device_constant}" - }; - - // Output only. The resource name of the mobile device constant. - // Mobile device constant resource names have the form: - // - // `mobileDeviceConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileDeviceConstant" - } - ]; - - // Output only. The ID of the mobile device constant. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the mobile device. - google.protobuf.StringValue name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The manufacturer of the mobile device. - google.protobuf.StringValue manufacturer_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The operating system of the mobile device. - google.protobuf.StringValue operating_system_name = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of mobile device. - google.ads.googleads.v4.enums.MobileDeviceTypeEnum.MobileDeviceType type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/offline_user_data_job.proto b/google/ads/googleads/v4/resources/offline_user_data_job.proto deleted file mode 100644 index 500ba2fb7..000000000 --- a/google/ads/googleads/v4/resources/offline_user_data_job.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/offline_user_data.proto"; -import "google/ads/googleads/v4/enums/offline_user_data_job_failure_reason.proto"; -import "google/ads/googleads/v4/enums/offline_user_data_job_status.proto"; -import "google/ads/googleads/v4/enums/offline_user_data_job_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the offline user data job resource. - -// A job containing offline user data of store visitors, or user list members -// that will be processed asynchronously. The uploaded data isn't readable and -// the processing results of the job can only be read using -// OfflineUserDataJobService.GetOfflineUserDataJob. -message OfflineUserDataJob { - option (google.api.resource) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - pattern: "customers/{customer}/offlineUserDataJobs/{offline_user_data_job}" - }; - - // Immutable. The resource name of the offline user data job. - // Offline user data job resource names have the form: - // - // `customers/{customer_id}/offlineUserDataJobs/{offline_user_data_job_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; - - // Output only. ID of this offline user data job. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. User specified job ID. - google.protobuf.Int64Value external_id = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Type of the job. - google.ads.googleads.v4.enums.OfflineUserDataJobTypeEnum.OfflineUserDataJobType type = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Status of the job. - google.ads.googleads.v4.enums.OfflineUserDataJobStatusEnum.OfflineUserDataJobStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Reason for the processing failure, if status is FAILED. - google.ads.googleads.v4.enums.OfflineUserDataJobFailureReasonEnum.OfflineUserDataJobFailureReason failure_reason = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Metadata of the job. - oneof metadata { - // Immutable. Metadata for data updates to a CRM-based user list. - google.ads.googleads.v4.common.CustomerMatchUserListMetadata customer_match_user_list_metadata = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Metadata for store sales data update. - google.ads.googleads.v4.common.StoreSalesMetadata store_sales_metadata = 8 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v4/resources/operating_system_version_constant.proto b/google/ads/googleads/v4/resources/operating_system_version_constant.proto deleted file mode 100644 index 6c0546d22..000000000 --- a/google/ads/googleads/v4/resources/operating_system_version_constant.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/operating_system_version_operator_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "OperatingSystemVersionConstantProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the operating system version constant resource. - -// A mobile operating system version or a range of versions, depending on -// `operator_type`. List of available mobile platforms at -// https://developers.google.com/adwords/api/docs/appendix/codes-formats#mobile-platforms -message OperatingSystemVersionConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/OperatingSystemVersionConstant" - pattern: "operatingSystemVersionConstants/{operating_system_version_constant}" - }; - - // Output only. The resource name of the operating system version constant. - // Operating system version constant resource names have the form: - // - // `operatingSystemVersionConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OperatingSystemVersionConstant" - } - ]; - - // Output only. The ID of the operating system version. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Name of the operating system. - google.protobuf.StringValue name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The OS Major Version number. - google.protobuf.Int32Value os_major_version = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The OS Minor Version number. - google.protobuf.Int32Value os_minor_version = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Determines whether this constant represents a single version or a range of - // versions. - google.ads.googleads.v4.enums.OperatingSystemVersionOperatorTypeEnum.OperatingSystemVersionOperatorType operator_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/paid_organic_search_term_view.proto b/google/ads/googleads/v4/resources/paid_organic_search_term_view.proto deleted file mode 100644 index 44d847af9..000000000 --- a/google/ads/googleads/v4/resources/paid_organic_search_term_view.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "PaidOrganicSearchTermViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the PaidOrganicSearchTermView resource. - -// A paid organic search term view providing a view of search stats across -// ads and organic listings aggregated by search term at the ad group level. -message PaidOrganicSearchTermView { - option (google.api.resource) = { - type: "googleads.googleapis.com/PaidOrganicSearchTermView" - pattern: "customers/{customer}/paidOrganicSearchTermViews/{paid_organic_search_term_view}" - }; - - // Output only. The resource name of the search term view. - // Search term view resource names have the form: - // - // `customers/{customer_id}/paidOrganicSearchTermViews/{campaign_id}~ - // {ad_group_id}~{URL-base64 search term}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaidOrganicSearchTermView" - } - ]; - - // Output only. The search term. - google.protobuf.StringValue search_term = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/parental_status_view.proto b/google/ads/googleads/v4/resources/parental_status_view.proto deleted file mode 100644 index a7b60dc87..000000000 --- a/google/ads/googleads/v4/resources/parental_status_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ParentalStatusViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the parental status view resource. - -// A parental status view. -message ParentalStatusView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ParentalStatusView" - pattern: "customers/{customer}/parentalStatusViews/{parental_status_view}" - }; - - // Output only. The resource name of the parental status view. - // Parental Status view resource names have the form: - // - // `customers/{customer_id}/parentalStatusViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ParentalStatusView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/payments_account.proto b/google/ads/googleads/v4/resources/payments_account.proto deleted file mode 100644 index a86f07051..000000000 --- a/google/ads/googleads/v4/resources/payments_account.proto +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "PaymentsAccountProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the PaymentsAccount resource. - -// A payments account, which can be used to set up billing for an Ads customer. -message PaymentsAccount { - option (google.api.resource) = { - type: "googleads.googleapis.com/PaymentsAccount" - pattern: "customers/{customer}/paymentsAccounts/{payments_account}" - }; - - // Output only. The resource name of the payments account. - // PaymentsAccount resource names have the form: - // - // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaymentsAccount" - } - ]; - - // Output only. A 16 digit ID used to identify a payments account. - google.protobuf.StringValue payments_account_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the payments account. - google.protobuf.StringValue name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The currency code of the payments account. - // A subset of the currency codes derived from the ISO 4217 standard is - // supported. - google.protobuf.StringValue currency_code = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A 12 digit ID used to identify the payments profile associated with the - // payments account. - google.protobuf.StringValue payments_profile_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A secondary payments profile ID present in uncommon situations, e.g. - // when a sequential liability agreement has been arranged. - google.protobuf.StringValue secondary_payments_profile_id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Paying manager of this payment account. - google.protobuf.StringValue paying_manager_customer = 7 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/product_bidding_category_constant.proto b/google/ads/googleads/v4/resources/product_bidding_category_constant.proto deleted file mode 100644 index 57ec833fb..000000000 --- a/google/ads/googleads/v4/resources/product_bidding_category_constant.proto +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/product_bidding_category_level.proto"; -import "google/ads/googleads/v4/enums/product_bidding_category_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryConstantProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ProductBiddingCategoryConstant resource. - -// A Product Bidding Category. -message ProductBiddingCategoryConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - pattern: "productBiddingCategoryConstants/{product_bidding_category_constant}" - }; - - // Output only. The resource name of the product bidding category. - // Product bidding category resource names have the form: - // - // `productBiddingCategoryConstants/{country_code}~{level}~{id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - } - ]; - - // Output only. ID of the product bidding category. - // - // This ID is equivalent to the google_product_category ID as described in - // this article: https://support.google.com/merchants/answer/6324436. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Two-letter upper-case country code of the product bidding category. - google.protobuf.StringValue country_code = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Resource name of the parent product bidding category. - google.protobuf.StringValue product_bidding_category_constant_parent = 4 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - } - ]; - - // Output only. Level of the product bidding category. - google.ads.googleads.v4.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Status of the product bidding category. - google.ads.googleads.v4.enums.ProductBiddingCategoryStatusEnum.ProductBiddingCategoryStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Language code of the product bidding category. - google.protobuf.StringValue language_code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Display value of the product bidding category localized according to - // language_code. - google.protobuf.StringValue localized_name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/product_group_view.proto b/google/ads/googleads/v4/resources/product_group_view.proto deleted file mode 100644 index aae433309..000000000 --- a/google/ads/googleads/v4/resources/product_group_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ProductGroupViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ProductGroup View resource. - -// A product group view. -message ProductGroupView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ProductGroupView" - pattern: "customers/{customer}/productGroupViews/{product_group_view}" - }; - - // Output only. The resource name of the product group view. - // Product group view resource names have the form: - // - // `customers/{customer_id}/productGroupViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductGroupView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/recommendation.proto b/google/ads/googleads/v4/resources/recommendation.proto deleted file mode 100644 index 92277b9a8..000000000 --- a/google/ads/googleads/v4/resources/recommendation.proto +++ /dev/null @@ -1,319 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/criteria.proto"; -import "google/ads/googleads/v4/common/extensions.proto"; -import "google/ads/googleads/v4/enums/keyword_match_type.proto"; -import "google/ads/googleads/v4/enums/recommendation_type.proto"; -import "google/ads/googleads/v4/enums/target_cpa_opt_in_recommendation_goal.proto"; -import "google/ads/googleads/v4/resources/ad.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Recommendation resource. - -// A recommendation. -message Recommendation { - option (google.api.resource) = { - type: "googleads.googleapis.com/Recommendation" - pattern: "customers/{customer}/recommendations/{recommendation}" - }; - - // The impact of making the change as described in the recommendation. - // Some types of recommendations may not have impact information. - message RecommendationImpact { - // Output only. Base metrics at the time the recommendation was generated. - RecommendationMetrics base_metrics = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimated metrics if the recommendation is applied. - RecommendationMetrics potential_metrics = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Weekly account performance metrics. For some recommendation types, these - // are averaged over the past 90-day period and hence can be fractional. - message RecommendationMetrics { - // Output only. Number of ad impressions. - google.protobuf.DoubleValue impressions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Number of ad clicks. - google.protobuf.DoubleValue clicks = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Cost (in micros) for advertising, in the local currency for the account. - google.protobuf.Int64Value cost_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Number of conversions. - google.protobuf.DoubleValue conversions = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Number of video views for a video ad campaign. - google.protobuf.DoubleValue video_views = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The budget recommendation for budget constrained campaigns. - message CampaignBudgetRecommendation { - // The impact estimates for a given budget amount. - message CampaignBudgetRecommendationOption { - // Output only. The budget amount for this option. - google.protobuf.Int64Value budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The impact estimate if budget is changed to amount specified in this - // option. - RecommendationImpact impact = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Output only. The current budget amount in micros. - google.protobuf.Int64Value current_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended budget amount in micros. - google.protobuf.Int64Value recommended_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The budget amounts and associated impact estimates for some values of - // possible budget amounts. - repeated CampaignBudgetRecommendationOption budget_options = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The keyword recommendation. - message KeywordRecommendation { - // Output only. The recommended keyword. - google.ads.googleads.v4.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended CPC (cost-per-click) bid. - google.protobuf.Int64Value recommended_cpc_bid_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The keyword match type recommendation. - message KeywordMatchTypeRecommendation { - // Output only. The existing keyword where the match type should be more broad. - google.ads.googleads.v4.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended new match type. - google.ads.googleads.v4.enums.KeywordMatchTypeEnum.KeywordMatchType recommended_match_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The text ad recommendation. - message TextAdRecommendation { - // Output only. Recommended ad. - Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Creation date of the recommended ad. - // YYYY-MM-DD format, e.g., 2018-04-17. - google.protobuf.StringValue creation_date = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Date, if present, is the earliest when the recommendation will be auto - // applied. - // YYYY-MM-DD format, e.g., 2018-04-17. - google.protobuf.StringValue auto_apply_date = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Maximize Conversions Opt-In recommendation. - message MaximizeConversionsOptInRecommendation { - // Output only. The recommended new budget amount. - google.protobuf.Int64Value recommended_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Maximize Clicks opt-in recommendation. - message MaximizeClicksOptInRecommendation { - // Output only. The recommended new budget amount. - // Only set if the current budget is too high. - google.protobuf.Int64Value recommended_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Callout extension recommendation. - message CalloutExtensionRecommendation { - // Output only. Callout extensions recommended to be added. - repeated google.ads.googleads.v4.common.CalloutFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Target CPA opt-in recommendation. - message TargetCpaOptInRecommendation { - // The Target CPA opt-in option with impact estimate. - message TargetCpaOptInRecommendationOption { - // Output only. The goal achieved by this option. - google.ads.googleads.v4.enums.TargetCpaOptInRecommendationGoalEnum.TargetCpaOptInRecommendationGoal goal = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Average CPA target. - google.protobuf.Int64Value target_cpa_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The minimum campaign budget, in local currency for the account, - // required to achieve the target CPA. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - google.protobuf.Int64Value required_campaign_budget_amount_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The impact estimate if this option is selected. - RecommendationImpact impact = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Output only. The available goals and corresponding options for Target CPA strategy. - repeated TargetCpaOptInRecommendationOption options = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended average CPA target. See required budget amount and impact - // of using this recommendation in options list. - google.protobuf.Int64Value recommended_target_cpa_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Enhanced Cost-Per-Click Opt-In recommendation. - message EnhancedCpcOptInRecommendation { - - } - - // The Search Partners Opt-In recommendation. - message SearchPartnersOptInRecommendation { - - } - - // The Sitelink extension recommendation. - message SitelinkExtensionRecommendation { - // Output only. Sitelink extensions recommended to be added. - repeated google.ads.googleads.v4.common.SitelinkFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Optimize Ad Rotation recommendation. - message OptimizeAdRotationRecommendation { - - } - - // The Call extension recommendation. - message CallExtensionRecommendation { - // Output only. Call extensions recommended to be added. - repeated google.ads.googleads.v4.common.CallFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The move unused budget recommendation. - message MoveUnusedBudgetRecommendation { - // Output only. The excess budget's resource_name. - google.protobuf.StringValue excess_campaign_budget = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommendation for the constrained budget to increase. - CampaignBudgetRecommendation budget_recommendation = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the recommendation. - // - // `customers/{customer_id}/recommendations/{recommendation_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Recommendation" - } - ]; - - // Output only. The type of recommendation. - google.ads.googleads.v4.enums.RecommendationTypeEnum.RecommendationType type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The impact on account performance as a result of applying the - // recommendation. - RecommendationImpact impact = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The budget targeted by this recommendation. This will be set only when - // the recommendation affects a single campaign budget. - // - // This field will be set for the following recommendation types: - // CAMPAIGN_BUDGET, FORECASTING_CAMPAIGN_BUDGET, MOVE_UNUSED_BUDGET - google.protobuf.StringValue campaign_budget = 5 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - } - ]; - - // Output only. The campaign targeted by this recommendation. This will be set only when - // the recommendation affects a single campaign. - // - // This field will be set for the following recommendation types: - // CALL_EXTENSION, CALLOUT_EXTENSION, ENHANCED_CPC_OPT_IN, KEYWORD, - // KEYWORD_MATCH_TYPE, MAXIMIZE_CLICKS_OPT_IN, MAXIMIZE_CONVERSIONS_OPT_IN, - // OPTIMIZE_AD_ROTATION, SEARCH_PARTNERS_OPT_IN, SITELINK_EXTENSION, - // TARGET_CPA_OPT_IN, TARGET_ROAS_OPT_IN, TEXT_AD - google.protobuf.StringValue campaign = 6 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ad group targeted by this recommendation. This will be set only when - // the recommendation affects a single ad group. - // - // This field will be set for the following recommendation types: - // KEYWORD, OPTIMIZE_AD_ROTATION, TEXT_AD - google.protobuf.StringValue ad_group = 7 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Whether the recommendation is dismissed or not. - google.protobuf.BoolValue dismissed = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The details of recommendation. - oneof recommendation { - // Output only. The campaign budget recommendation. - CampaignBudgetRecommendation campaign_budget_recommendation = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The keyword recommendation. - KeywordRecommendation keyword_recommendation = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Add expanded text ad recommendation. - TextAdRecommendation text_ad_recommendation = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The TargetCPA opt-in recommendation. - TargetCpaOptInRecommendation target_cpa_opt_in_recommendation = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The MaximizeConversions Opt-In recommendation. - MaximizeConversionsOptInRecommendation maximize_conversions_opt_in_recommendation = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Enhanced Cost-Per-Click Opt-In recommendation. - EnhancedCpcOptInRecommendation enhanced_cpc_opt_in_recommendation = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Search Partners Opt-In recommendation. - SearchPartnersOptInRecommendation search_partners_opt_in_recommendation = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The MaximizeClicks Opt-In recommendation. - MaximizeClicksOptInRecommendation maximize_clicks_opt_in_recommendation = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Optimize Ad Rotation recommendation. - OptimizeAdRotationRecommendation optimize_ad_rotation_recommendation = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Callout extension recommendation. - CalloutExtensionRecommendation callout_extension_recommendation = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Sitelink extension recommendation. - SitelinkExtensionRecommendation sitelink_extension_recommendation = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Call extension recommendation. - CallExtensionRecommendation call_extension_recommendation = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The keyword match type recommendation. - KeywordMatchTypeRecommendation keyword_match_type_recommendation = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The move unused budget recommendation. - MoveUnusedBudgetRecommendation move_unused_budget_recommendation = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v4/resources/remarketing_action.proto b/google/ads/googleads/v4/resources/remarketing_action.proto deleted file mode 100644 index aebe1b230..000000000 --- a/google/ads/googleads/v4/resources/remarketing_action.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/tag_snippet.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "RemarketingActionProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Remarketing Action resource. - -// A remarketing action. A snippet of JavaScript code that will collect the -// product id and the type of page people visited (product page, shopping cart -// page, purchase page, general site visit) on an advertiser's website. -message RemarketingAction { - option (google.api.resource) = { - type: "googleads.googleapis.com/RemarketingAction" - pattern: "customers/{customer}/remarketingActions/{remarketing_action}" - }; - - // Immutable. The resource name of the remarketing action. - // Remarketing action resource names have the form: - // - // `customers/{customer_id}/remarketingActions/{remarketing_action_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/RemarketingAction" - } - ]; - - // Output only. Id of the remarketing action. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the remarketing action. - // - // This field is required and should not be empty when creating new - // remarketing actions. - google.protobuf.StringValue name = 3; - - // Output only. The snippets used for tracking remarketing actions. - repeated google.ads.googleads.v4.common.TagSnippet tag_snippets = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/search_term_view.proto b/google/ads/googleads/v4/resources/search_term_view.proto deleted file mode 100644 index feeffbfbc..000000000 --- a/google/ads/googleads/v4/resources/search_term_view.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/search_term_targeting_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the SearchTermView resource. - -// A search term view with metrics aggregated by search term at the ad group -// level. -message SearchTermView { - option (google.api.resource) = { - type: "googleads.googleapis.com/SearchTermView" - pattern: "customers/{customer}/searchTermViews/{search_term_view}" - }; - - // Output only. The resource name of the search term view. - // Search term view resource names have the form: - // - // `customers/{customer_id}/searchTermViews/{campaign_id}~{ad_group_id}~{URL-base64_search_term}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SearchTermView" - } - ]; - - // Output only. The search term. - google.protobuf.StringValue search_term = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ad group the search term served in. - google.protobuf.StringValue ad_group = 3 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Indicates whether the search term is currently one of your - // targeted or excluded keywords. - google.ads.googleads.v4.enums.SearchTermTargetingStatusEnum.SearchTermTargetingStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/shared_criterion.proto b/google/ads/googleads/v4/resources/shared_criterion.proto deleted file mode 100644 index f4172640b..000000000 --- a/google/ads/googleads/v4/resources/shared_criterion.proto +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/criteria.proto"; -import "google/ads/googleads/v4/enums/criterion_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "SharedCriterionProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the SharedCriterion resource. - -// A criterion belonging to a shared set. -message SharedCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/SharedCriterion" - pattern: "customers/{customer}/sharedCriteria/{shared_criterion}" - }; - - // Immutable. The resource name of the shared criterion. - // Shared set resource names have the form: - // - // `customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedCriterion" - } - ]; - - // Immutable. The shared set to which the shared criterion belongs. - google.protobuf.StringValue shared_set = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; - - // Output only. The ID of the criterion. - // - // This field is ignored for mutates. - google.protobuf.Int64Value criterion_id = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of the criterion. - google.ads.googleads.v4.enums.CriterionTypeEnum.CriterionType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. Keyword. - google.ads.googleads.v4.common.KeywordInfo keyword = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v4.common.YouTubeVideoInfo youtube_video = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v4.common.YouTubeChannelInfo youtube_channel = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v4.common.PlacementInfo placement = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile App Category. - google.ads.googleads.v4.common.MobileAppCategoryInfo mobile_app_category = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile application. - google.ads.googleads.v4.common.MobileApplicationInfo mobile_application = 9 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v4/resources/shared_set.proto b/google/ads/googleads/v4/resources/shared_set.proto deleted file mode 100644 index bb43c5b0d..000000000 --- a/google/ads/googleads/v4/resources/shared_set.proto +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/enums/shared_set_status.proto"; -import "google/ads/googleads/v4/enums/shared_set_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the SharedSet resource. - -// SharedSets are used for sharing criterion exclusions across multiple -// campaigns. -message SharedSet { - option (google.api.resource) = { - type: "googleads.googleapis.com/SharedSet" - pattern: "customers/{customer}/sharedSets/{shared_set}" - }; - - // Immutable. The resource name of the shared set. - // Shared set resource names have the form: - // - // `customers/{customer_id}/sharedSets/{shared_set_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; - - // Output only. The ID of this shared set. Read only. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The type of this shared set: each shared set holds only a single kind - // of resource. Required. Immutable. - google.ads.googleads.v4.enums.SharedSetTypeEnum.SharedSetType type = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // The name of this shared set. Required. - // Shared Sets must have names that are unique among active shared sets of - // the same type. - // The length of this string should be between 1 and 255 UTF-8 bytes, - // inclusive. - google.protobuf.StringValue name = 4; - - // Output only. The status of this shared set. Read only. - google.ads.googleads.v4.enums.SharedSetStatusEnum.SharedSetStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of shared criteria within this shared set. Read only. - google.protobuf.Int64Value member_count = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of campaigns associated with this shared set. Read only. - google.protobuf.Int64Value reference_count = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/shopping_performance_view.proto b/google/ads/googleads/v4/resources/shopping_performance_view.proto deleted file mode 100644 index 4dd3c9393..000000000 --- a/google/ads/googleads/v4/resources/shopping_performance_view.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ShoppingPerformanceViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the ShoppingPerformanceView resource. - -// Shopping performance view. -// Provides Shopping campaign statistics aggregated at several product dimension -// levels. Product dimension values from Merchant Center such as brand, -// category, custom attributes, product condition and product type will reflect -// the state of each dimension as of the date and time when the corresponding -// event was recorded. -message ShoppingPerformanceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ShoppingPerformanceView" - pattern: "customers/{customer}/shoppingPerformanceView" - }; - - // Output only. The resource name of the Shopping performance view. - // Shopping performance view resource names have the form: - // `customers/{customer_id}/shoppingPerformanceView` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ShoppingPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/third_party_app_analytics_link.proto b/google/ads/googleads/v4/resources/third_party_app_analytics_link.proto deleted file mode 100644 index a903e7629..000000000 --- a/google/ads/googleads/v4/resources/third_party_app_analytics_link.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ThirdPartyAppAnalyticsLinkProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// A data sharing connection, allowing the import of third party app analytics -// into a Google Ads Customer. -message ThirdPartyAppAnalyticsLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" - pattern: "customers/{customer}/thirdPartyAppAnalyticsLinks/{third_party_app_analytics_link}" - }; - - // Immutable. The resource name of the third party app analytics link. - // Third party app analytics link resource names have the form: - // - // `customers/{customer_id}/thirdPartyAppAnalyticsLinks/{account_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" - } - ]; - - // Output only. The shareable link ID that should be provided to the third party when - // setting up app analytics. This is able to be regenerated using regenerate - // method in the ThirdPartyAppAnalyticsLinkService. - google.protobuf.StringValue shareable_link_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/topic_constant.proto b/google/ads/googleads/v4/resources/topic_constant.proto deleted file mode 100644 index 53d9fe411..000000000 --- a/google/ads/googleads/v4/resources/topic_constant.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "TopicConstantProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the Topic Constant resource. - -// Use topics to target or exclude placements in the Google Display Network -// based on the category into which the placement falls (for example, -// "Pets & Animals/Pets/Dogs"). -message TopicConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/TopicConstant" - pattern: "topicConstants/{topic_constant}" - }; - - // Output only. The resource name of the topic constant. - // topic constant resource names have the form: - // - // `topicConstants/{topic_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicConstant" - } - ]; - - // Output only. The ID of the topic. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Resource name of parent of the topic constant. - google.protobuf.StringValue topic_constant_parent = 3 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicConstant" - } - ]; - - // Output only. The category to target or exclude. Each subsequent element in the array - // describes a more specific sub-category. For example, - // {"Pets & Animals", "Pets", "Dogs"} represents the - // "Pets & Animals/Pets/Dogs" category. List of available topic categories at - // https://developers.google.com/adwords/api/docs/appendix/verticals - repeated google.protobuf.StringValue path = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/topic_view.proto b/google/ads/googleads/v4/resources/topic_view.proto deleted file mode 100644 index d17fa34c7..000000000 --- a/google/ads/googleads/v4/resources/topic_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "TopicViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the topic view resource. - -// A topic view. -message TopicView { - option (google.api.resource) = { - type: "googleads.googleapis.com/TopicView" - pattern: "customers/{customer}/topicViews/{topic_view}" - }; - - // Output only. The resource name of the topic view. - // Topic view resource names have the form: - // - // `customers/{customer_id}/topicViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicView" - } - ]; -} diff --git a/google/ads/googleads/v4/resources/user_interest.proto b/google/ads/googleads/v4/resources/user_interest.proto deleted file mode 100644 index 2a336fb9a..000000000 --- a/google/ads/googleads/v4/resources/user_interest.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/criterion_category_availability.proto"; -import "google/ads/googleads/v4/enums/user_interest_taxonomy_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "UserInterestProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the User Interest resource. - -// A user interest: a particular interest-based vertical to be targeted. -message UserInterest { - option (google.api.resource) = { - type: "googleads.googleapis.com/UserInterest" - pattern: "customers/{customer}/userInterests/{user_interest}" - }; - - // Output only. The resource name of the user interest. - // User interest resource names have the form: - // - // `customers/{customer_id}/userInterests/{user_interest_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserInterest" - } - ]; - - // Output only. Taxonomy type of the user interest. - google.ads.googleads.v4.enums.UserInterestTaxonomyTypeEnum.UserInterestTaxonomyType taxonomy_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ID of the user interest. - google.protobuf.Int64Value user_interest_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the user interest. - google.protobuf.StringValue name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The parent of the user interest. - google.protobuf.StringValue user_interest_parent = 5 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserInterest" - } - ]; - - // Output only. True if the user interest is launched to all channels and locales. - google.protobuf.BoolValue launched_to_all = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Availability information of the user interest. - repeated google.ads.googleads.v4.common.CriterionCategoryAvailability availabilities = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/user_list.proto b/google/ads/googleads/v4/resources/user_list.proto deleted file mode 100644 index 1f2d1007e..000000000 --- a/google/ads/googleads/v4/resources/user_list.proto +++ /dev/null @@ -1,168 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/ads/googleads/v4/common/user_lists.proto"; -import "google/ads/googleads/v4/enums/access_reason.proto"; -import "google/ads/googleads/v4/enums/user_list_access_status.proto"; -import "google/ads/googleads/v4/enums/user_list_closing_reason.proto"; -import "google/ads/googleads/v4/enums/user_list_membership_status.proto"; -import "google/ads/googleads/v4/enums/user_list_size_range.proto"; -import "google/ads/googleads/v4/enums/user_list_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "UserListProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the User List resource. - -// A user list. This is a list of users a customer may target. -message UserList { - option (google.api.resource) = { - type: "googleads.googleapis.com/UserList" - pattern: "customers/{customer}/userLists/{user_list}" - }; - - // Immutable. The resource name of the user list. - // User list resource names have the form: - // - // `customers/{customer_id}/userLists/{user_list_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserList" - } - ]; - - // Output only. Id of the user list. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A flag that indicates if a user may edit a list. Depends on the list - // ownership and list type. For example, external remarketing user lists are - // not editable. - // - // This field is read-only. - google.protobuf.BoolValue read_only = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Name of this user list. Depending on its access_reason, the user list name - // may not be unique (e.g. if access_reason=SHARED) - google.protobuf.StringValue name = 4; - - // Description of this user list. - google.protobuf.StringValue description = 5; - - // Membership status of this user list. Indicates whether a user list is open - // or active. Only open user lists can accumulate more users and can be - // targeted to. - google.ads.googleads.v4.enums.UserListMembershipStatusEnum.UserListMembershipStatus membership_status = 6; - - // An ID from external system. It is used by user list sellers to correlate - // IDs on their systems. - google.protobuf.StringValue integration_code = 7; - - // Number of days a user's cookie stays on your list since its most recent - // addition to the list. This field must be between 0 and 540 inclusive. - // However, for CRM based userlists, this field can be set to 10000 which - // means no expiration. - // - // It'll be ignored for logical_user_list. - google.protobuf.Int64Value membership_life_span = 8; - - // Output only. Estimated number of users in this user list, on the Google Display Network. - // This value is null if the number of users has not yet been determined. - // - // This field is read-only. - google.protobuf.Int64Value size_for_display = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Size range in terms of number of users of the UserList, on the Google - // Display Network. - // - // This field is read-only. - google.ads.googleads.v4.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_display = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimated number of users in this user list in the google.com domain. - // These are the users available for targeting in Search campaigns. - // This value is null if the number of users has not yet been determined. - // - // This field is read-only. - google.protobuf.Int64Value size_for_search = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Size range in terms of number of users of the UserList, for Search ads. - // - // This field is read-only. - google.ads.googleads.v4.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_search = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Type of this list. - // - // This field is read-only. - google.ads.googleads.v4.enums.UserListTypeEnum.UserListType type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Indicating the reason why this user list membership status is closed. It is - // only populated on lists that were automatically closed due to inactivity, - // and will be cleared once the list membership status becomes open. - google.ads.googleads.v4.enums.UserListClosingReasonEnum.UserListClosingReason closing_reason = 14; - - // Output only. Indicates the reason this account has been granted access to the list. - // The reason can be SHARED, OWNED, LICENSED or SUBSCRIBED. - // - // This field is read-only. - google.ads.googleads.v4.enums.AccessReasonEnum.AccessReason access_reason = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Indicates if this share is still enabled. When a UserList is shared with - // the user this field is set to ENABLED. Later the userList owner can decide - // to revoke the share and make it DISABLED. - // The default value of this field is set to ENABLED. - google.ads.googleads.v4.enums.UserListAccessStatusEnum.UserListAccessStatus account_user_list_status = 16; - - // Indicates if this user list is eligible for Google Search Network. - google.protobuf.BoolValue eligible_for_search = 17; - - // Output only. Indicates this user list is eligible for Google Display Network. - // - // This field is read-only. - google.protobuf.BoolValue eligible_for_display = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The user list. - // - // Exactly one must be set. - oneof user_list { - // User list of CRM users provided by the advertiser. - google.ads.googleads.v4.common.CrmBasedUserListInfo crm_based_user_list = 19; - - // Output only. User list which are similar to users from another UserList. - // These lists are readonly and automatically created by google. - google.ads.googleads.v4.common.SimilarUserListInfo similar_user_list = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // User list generated by a rule. - google.ads.googleads.v4.common.RuleBasedUserListInfo rule_based_user_list = 21; - - // User list that is a custom combination of user lists and user interests. - google.ads.googleads.v4.common.LogicalUserListInfo logical_user_list = 22; - - // User list targeting as a collection of conversion or remarketing actions. - google.ads.googleads.v4.common.BasicUserListInfo basic_user_list = 23; - } -} diff --git a/google/ads/googleads/v4/resources/user_location_view.proto b/google/ads/googleads/v4/resources/user_location_view.proto deleted file mode 100644 index c82bc5a98..000000000 --- a/google/ads/googleads/v4/resources/user_location_view.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "UserLocationViewProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the user location view resource. - -// A user location view. -// -// User Location View includes all metrics aggregated at the country level, -// one row per country. It reports metrics at the actual physical location of -// the user by targeted or not targeted location. If other segment fields are -// used, you may get more than one row per country. -message UserLocationView { - option (google.api.resource) = { - type: "googleads.googleapis.com/UserLocationView" - pattern: "customers/{customer}/userLocationViews/{user_location_view}" - }; - - // Output only. The resource name of the user location view. - // UserLocation view resource names have the form: - // - // `customers/{customer_id}/userLocationViews/{country_criterion_id}~{targeting_location}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserLocationView" - } - ]; - - // Output only. Criterion Id for the country. - google.protobuf.Int64Value country_criterion_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates whether location was targeted or not. - google.protobuf.BoolValue targeting_location = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/resources/video.proto b/google/ads/googleads/v4/resources/video.proto deleted file mode 100644 index 266d8efda..000000000 --- a/google/ads/googleads/v4/resources/video.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "VideoProto"; -option java_package = "com.google.ads.googleads.v4.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V4::Resources"; - -// Proto file describing the video resource. - -// A video. -message Video { - option (google.api.resource) = { - type: "googleads.googleapis.com/Video" - pattern: "customers/{customer}/videos/{video}" - }; - - // Output only. The resource name of the video. - // Video resource names have the form: - // - // `customers/{customer_id}/videos/{video_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Video" - } - ]; - - // Output only. The ID of the video. - google.protobuf.StringValue id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The owner channel id of the video. - google.protobuf.StringValue channel_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The duration of the video in milliseconds. - google.protobuf.Int64Value duration_millis = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The title of the video. - google.protobuf.StringValue title = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v4/services/BUILD.bazel b/google/ads/googleads/v4/services/BUILD.bazel deleted file mode 100644 index 3a7c22caf..000000000 --- a/google/ads/googleads/v4/services/BUILD.bazel +++ /dev/null @@ -1,138 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") -load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "services_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v4/common:common_proto", - "//google/ads/googleads/v4/enums:enums_proto", - "//google/ads/googleads/v4/errors:errors_proto", - "//google/ads/googleads/v4/resources:resources_proto", - "//google/api:annotations_proto", - "//google/api:client_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - "//google/longrunning:operations_proto", - "//google/rpc:status_proto", - "@com_google_protobuf//:empty_proto", - "@com_google_protobuf//:field_mask_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -proto_library_with_info( - name = "services_proto_with_info", - deps = [ - ":services_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_grpc_library", - "java_proto_library", -) - -java_proto_library( - name = "services_java_proto", - deps = [":services_proto"], -) - -java_grpc_library( - name = "services_java_grpc", - srcs = [":services_proto"], - deps = [":services_java_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_grpc_library", - "csharp_proto_library", -) - -csharp_proto_library( - name = "services_csharp_proto", - deps = [":services_proto"], -) - -csharp_grpc_library( - name = "services_csharp_grpc", - srcs = [":services_proto"], - deps = [":services_csharp_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_grpc_library", - "ruby_proto_library", -) - -ruby_proto_library( - name = "services_ruby_proto", - deps = [":services_proto"], -) - -ruby_grpc_library( - name = "services_ruby_grpc", - srcs = [":services_proto"], - deps = [":services_ruby_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_grpc_library", - "py_proto_library", -) - -py_proto_library( - name = "services_py_proto", - deps = [":services_proto"], -) - -py_grpc_library( - name = "services_py_grpc", - srcs = [":services_proto"], - deps = [":services_py_proto"], -) diff --git a/google/ads/googleads/v4/services/account_budget_proposal_service.proto b/google/ads/googleads/v4/services/account_budget_proposal_service.proto deleted file mode 100644 index bf4d330ce..000000000 --- a/google/ads/googleads/v4/services/account_budget_proposal_service.proto +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/account_budget_proposal.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the AccountBudgetProposal service. - -// A service for managing account-level budgets via proposals. -// -// A proposal is a request to create a new budget or make changes to an -// existing one. -// -// Reads for account-level budgets managed by these proposals will be -// supported in a future version. Until then, please use the -// BudgetOrderService from the AdWords API. Learn more at -// https://developers.google.com/adwords/api/docs/guides/budget-order -// -// Mutates: -// The CREATE operation creates a new proposal. -// UPDATE operations aren't supported. -// The REMOVE operation cancels a pending proposal. -service AccountBudgetProposalService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns an account-level budget proposal in full detail. - rpc GetAccountBudgetProposal(GetAccountBudgetProposalRequest) returns (google.ads.googleads.v4.resources.AccountBudgetProposal) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/accountBudgetProposals/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes account budget proposals. Operation statuses - // are returned. - rpc MutateAccountBudgetProposal(MutateAccountBudgetProposalRequest) returns (MutateAccountBudgetProposalResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/accountBudgetProposals:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for -// [AccountBudgetProposalService.GetAccountBudgetProposal][google.ads.googleads.v4.services.AccountBudgetProposalService.GetAccountBudgetProposal]. -message GetAccountBudgetProposalRequest { - // Required. The resource name of the account-level budget proposal to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - } - ]; -} - -// Request message for -// [AccountBudgetProposalService.MutateAccountBudgetProposal][google.ads.googleads.v4.services.AccountBudgetProposalService.MutateAccountBudgetProposal]. -message MutateAccountBudgetProposalRequest { - // Required. The ID of the customer. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on an individual account-level budget proposal. - AccountBudgetProposalOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 3; -} - -// A single operation to propose the creation of a new account-level budget or -// edit/end/remove an existing one. -message AccountBudgetProposalOperation { - // FieldMask that determines which budget fields are modified. While budgets - // may be modified, proposals that propose such modifications are final. - // Therefore, update operations are not supported for proposals. - // - // Proposals that modify budgets have the 'update' proposal type. Specifying - // a mask for any other proposal type is considered an error. - google.protobuf.FieldMask update_mask = 3; - - // The mutate operation. - oneof operation { - // Create operation: A new proposal to create a new budget, edit an - // existing budget, end an actively running budget, or remove an approved - // budget scheduled to start in the future. - // No resource name is expected for the new proposal. - google.ads.googleads.v4.resources.AccountBudgetProposal create = 2; - - // Remove operation: A resource name for the removed proposal is expected, - // in this format: - // - // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` - // A request may be cancelled iff it is pending. - string remove = 1; - } -} - -// Response message for account-level budget mutate operations. -message MutateAccountBudgetProposalResponse { - // The result of the mutate. - MutateAccountBudgetProposalResult result = 2; -} - -// The result for the account budget proposal mutate. -message MutateAccountBudgetProposalResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/account_budget_service.proto b/google/ads/googleads/v4/services/account_budget_service.proto deleted file mode 100644 index 0659f6bb8..000000000 --- a/google/ads/googleads/v4/services/account_budget_service.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/account_budget.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the AccountBudget service. - -// A service for fetching an account-level budget. -// -// Account-level budgets are mutated by creating proposal resources. -service AccountBudgetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns an account-level budget in full detail. - rpc GetAccountBudget(GetAccountBudgetRequest) returns (google.ads.googleads.v4.resources.AccountBudget) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/accountBudgets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [AccountBudgetService.GetAccountBudget][google.ads.googleads.v4.services.AccountBudgetService.GetAccountBudget]. -message GetAccountBudgetRequest { - // Required. The resource name of the account-level budget to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudget" - } - ]; -} diff --git a/google/ads/googleads/v4/services/account_link_service.proto b/google/ads/googleads/v4/services/account_link_service.proto deleted file mode 100644 index 207e3c8cc..000000000 --- a/google/ads/googleads/v4/services/account_link_service.proto +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/account_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// This service allows management of links between Google Ads accounts and other -// accounts. -service AccountLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the account link in full detail. - rpc GetAccountLink(GetAccountLinkRequest) returns (google.ads.googleads.v4.resources.AccountLink) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/accountLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes an account link. - // From V5, create is not supported through - // AccountLinkService.MutateAccountLink. Please use - // AccountLinkService.CreateAccountLink instead. - rpc MutateAccountLink(MutateAccountLinkRequest) returns (MutateAccountLinkResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/accountLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for [AccountLinkService.GetAccountLink][google.ads.googleads.v4.services.AccountLinkService.GetAccountLink]. -message GetAccountLinkRequest { - // Required. Resource name of the account link. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountLink" - } - ]; -} - -// Request message for [AccountLinkService.MutateAccountLink][google.ads.googleads.v4.services.AccountLinkService.MutateAccountLink]. -message MutateAccountLinkRequest { - // Required. The ID of the customer being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the link. - AccountLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single update on an account link. -message AccountLinkOperation { - // The operation to perform. - oneof operation { - // Create operation: No resource name is expected for the new account link. - google.ads.googleads.v4.resources.AccountLink create = 1; - - // Remove operation: A resource name for the account link to remove is - // expected, in this format: - // - // `customers/{customer_id}/accountLinks/{account_link_id}` - string remove = 3; - } -} - -// Response message for account link mutate. -message MutateAccountLinkResponse { - // Result for the mutate. - MutateAccountLinkResult result = 1; -} - -// The result for the account link mutate. -message MutateAccountLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/ad_group_ad_asset_view_service.proto b/google/ads/googleads/v4/services/ad_group_ad_asset_view_service.proto deleted file mode 100644 index 2c23bf920..000000000 --- a/google/ads/googleads/v4/services/ad_group_ad_asset_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_group_ad_asset_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdAssetViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the ad group ad asset view service. - -// Service to fetch ad group ad asset views. -service AdGroupAdAssetViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group ad asset view in full detail. - rpc GetAdGroupAdAssetView(GetAdGroupAdAssetViewRequest) returns (google.ads.googleads.v4.resources.AdGroupAdAssetView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupAdAssetViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdGroupAdAssetViewService.GetAdGroupAdAssetView][google.ads.googleads.v4.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView]. -message GetAdGroupAdAssetViewRequest { - // Required. The resource name of the ad group ad asset view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdAssetView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/ad_group_ad_label_service.proto b/google/ads/googleads/v4/services/ad_group_ad_label_service.proto deleted file mode 100644 index 8b436584e..000000000 --- a/google/ads/googleads/v4/services/ad_group_ad_label_service.proto +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_group_ad_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdLabelServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Ad Group Ad Label service. - -// Service to manage labels on ad group ads. -service AdGroupAdLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group ad label in full detail. - rpc GetAdGroupAdLabel(GetAdGroupAdLabelRequest) returns (google.ads.googleads.v4.resources.AdGroupAdLabel) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupAdLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes ad group ad labels. - // Operation statuses are returned. - rpc MutateAdGroupAdLabels(MutateAdGroupAdLabelsRequest) returns (MutateAdGroupAdLabelsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/adGroupAdLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupAdLabelService.GetAdGroupAdLabel][google.ads.googleads.v4.services.AdGroupAdLabelService.GetAdGroupAdLabel]. -message GetAdGroupAdLabelRequest { - // Required. The resource name of the ad group ad label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdLabel" - } - ]; -} - -// Request message for [AdGroupAdLabelService.MutateAdGroupAdLabels][google.ads.googleads.v4.services.AdGroupAdLabelService.MutateAdGroupAdLabels]. -message MutateAdGroupAdLabelsRequest { - // Required. ID of the customer whose ad group ad labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on ad group ad labels. - repeated AdGroupAdLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an ad group ad label. -message AdGroupAdLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group ad - // label. - google.ads.googleads.v4.resources.AdGroupAdLabel create = 1; - - // Remove operation: A resource name for the ad group ad label - // being removed, in this format: - // - // `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id} - // _{label_id}` - string remove = 2; - } -} - -// Response message for an ad group ad labels mutate. -message MutateAdGroupAdLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupAdLabelResult results = 2; -} - -// The result for an ad group ad label mutate. -message MutateAdGroupAdLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/ad_group_ad_service.proto b/google/ads/googleads/v4/services/ad_group_ad_service.proto deleted file mode 100644 index 81dc8625e..000000000 --- a/google/ads/googleads/v4/services/ad_group_ad_service.proto +++ /dev/null @@ -1,132 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/common/policy.proto"; -import "google/ads/googleads/v4/resources/ad_group_ad.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Ad Group Ad service. - -// Service to manage ads in an ad group. -service AdGroupAdService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad in full detail. - rpc GetAdGroupAd(GetAdGroupAdRequest) returns (google.ads.googleads.v4.resources.AdGroupAd) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupAds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ads. Operation statuses are returned. - rpc MutateAdGroupAds(MutateAdGroupAdsRequest) returns (MutateAdGroupAdsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/adGroupAds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupAdService.GetAdGroupAd][google.ads.googleads.v4.services.AdGroupAdService.GetAdGroupAd]. -message GetAdGroupAdRequest { - // Required. The resource name of the ad to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; -} - -// Request message for [AdGroupAdService.MutateAdGroupAds][google.ads.googleads.v4.services.AdGroupAdService.MutateAdGroupAds]. -message MutateAdGroupAdsRequest { - // Required. The ID of the customer whose ads are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ads. - repeated AdGroupAdOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on an ad group ad. -message AdGroupAdOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // Configuration for how policies are validated. - google.ads.googleads.v4.common.PolicyValidationParameter policy_validation_parameter = 5; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad. - google.ads.googleads.v4.resources.AdGroupAd create = 1; - - // Update operation: The ad is expected to have a valid resource name. - google.ads.googleads.v4.resources.AdGroupAd update = 2; - - // Remove operation: A resource name for the removed ad is expected, - // in this format: - // - // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` - string remove = 3; - } -} - -// Response message for an ad group ad mutate. -message MutateAdGroupAdsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupAdResult results = 2; -} - -// The result for the ad mutate. -message MutateAdGroupAdResult { - // The resource name returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/ad_group_audience_view_service.proto b/google/ads/googleads/v4/services/ad_group_audience_view_service.proto deleted file mode 100644 index 86cf1879e..000000000 --- a/google/ads/googleads/v4/services/ad_group_audience_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_group_audience_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAudienceViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the AdGroup Audience View service. - -// Service to manage ad group audience views. -service AdGroupAudienceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group audience view in full detail. - rpc GetAdGroupAudienceView(GetAdGroupAudienceViewRequest) returns (google.ads.googleads.v4.resources.AdGroupAudienceView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupAudienceViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdGroupAudienceViewService.GetAdGroupAudienceView][google.ads.googleads.v4.services.AdGroupAudienceViewService.GetAdGroupAudienceView]. -message GetAdGroupAudienceViewRequest { - // Required. The resource name of the ad group audience view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/ad_group_bid_modifier_service.proto b/google/ads/googleads/v4/services/ad_group_bid_modifier_service.proto deleted file mode 100644 index f7ff32696..000000000 --- a/google/ads/googleads/v4/services/ad_group_bid_modifier_service.proto +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_group_bid_modifier.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupBidModifierServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Ad Group Bid Modifier service. - -// Service to manage ad group bid modifiers. -service AdGroupBidModifierService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group bid modifier in full detail. - rpc GetAdGroupBidModifier(GetAdGroupBidModifierRequest) returns (google.ads.googleads.v4.resources.AdGroupBidModifier) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupBidModifiers/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad group bid modifiers. - // Operation statuses are returned. - rpc MutateAdGroupBidModifiers(MutateAdGroupBidModifiersRequest) returns (MutateAdGroupBidModifiersResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/adGroupBidModifiers:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupBidModifierService.GetAdGroupBidModifier][google.ads.googleads.v4.services.AdGroupBidModifierService.GetAdGroupBidModifier]. -message GetAdGroupBidModifierRequest { - // Required. The resource name of the ad group bid modifier to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - } - ]; -} - -// Request message for [AdGroupBidModifierService.MutateAdGroupBidModifiers][google.ads.googleads.v4.services.AdGroupBidModifierService.MutateAdGroupBidModifiers]. -message MutateAdGroupBidModifiersRequest { - // Required. ID of the customer whose ad group bid modifiers are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad group bid modifiers. - repeated AdGroupBidModifierOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove, update) on an ad group bid modifier. -message AdGroupBidModifierOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group bid - // modifier. - google.ads.googleads.v4.resources.AdGroupBidModifier create = 1; - - // Update operation: The ad group bid modifier is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.AdGroupBidModifier update = 2; - - // Remove operation: A resource name for the removed ad group bid modifier - // is expected, in this format: - // - // `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for ad group bid modifiers mutate. -message MutateAdGroupBidModifiersResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupBidModifierResult results = 2; -} - -// The result for the criterion mutate. -message MutateAdGroupBidModifierResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/ad_group_criterion_label_service.proto b/google/ads/googleads/v4/services/ad_group_criterion_label_service.proto deleted file mode 100644 index 8e33da123..000000000 --- a/google/ads/googleads/v4/services/ad_group_criterion_label_service.proto +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_group_criterion_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionLabelServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Ad Group Criterion Label service. - -// Service to manage labels on ad group criteria. -service AdGroupCriterionLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group criterion label in full detail. - rpc GetAdGroupCriterionLabel(GetAdGroupCriterionLabelRequest) returns (google.ads.googleads.v4.resources.AdGroupCriterionLabel) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupCriterionLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes ad group criterion labels. - // Operation statuses are returned. - rpc MutateAdGroupCriterionLabels(MutateAdGroupCriterionLabelsRequest) returns (MutateAdGroupCriterionLabelsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/adGroupCriterionLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [AdGroupCriterionLabelService.GetAdGroupCriterionLabel][google.ads.googleads.v4.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel]. -message GetAdGroupCriterionLabelRequest { - // Required. The resource name of the ad group criterion label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionLabel" - } - ]; -} - -// Request message for -// [AdGroupCriterionLabelService.MutateAdGroupCriterionLabels][google.ads.googleads.v4.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels]. -message MutateAdGroupCriterionLabelsRequest { - // Required. ID of the customer whose ad group criterion labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on ad group criterion labels. - repeated AdGroupCriterionLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an ad group criterion label. -message AdGroupCriterionLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group - // label. - google.ads.googleads.v4.resources.AdGroupCriterionLabel create = 1; - - // Remove operation: A resource name for the ad group criterion label - // being removed, in this format: - // - // `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}` - string remove = 2; - } -} - -// Response message for an ad group criterion labels mutate. -message MutateAdGroupCriterionLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupCriterionLabelResult results = 2; -} - -// The result for an ad group criterion label mutate. -message MutateAdGroupCriterionLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/ad_group_criterion_service.proto b/google/ads/googleads/v4/services/ad_group_criterion_service.proto deleted file mode 100644 index 4c15598c9..000000000 --- a/google/ads/googleads/v4/services/ad_group_criterion_service.proto +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/common/policy.proto"; -import "google/ads/googleads/v4/resources/ad_group_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Ad Group Criterion service. - -// Service to manage ad group criteria. -service AdGroupCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested criterion in full detail. - rpc GetAdGroupCriterion(GetAdGroupCriterionRequest) returns (google.ads.googleads.v4.resources.AdGroupCriterion) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes criteria. Operation statuses are returned. - rpc MutateAdGroupCriteria(MutateAdGroupCriteriaRequest) returns (MutateAdGroupCriteriaResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/adGroupCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupCriterionService.GetAdGroupCriterion][google.ads.googleads.v4.services.AdGroupCriterionService.GetAdGroupCriterion]. -message GetAdGroupCriterionRequest { - // Required. The resource name of the criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; -} - -// Request message for [AdGroupCriterionService.MutateAdGroupCriteria][google.ads.googleads.v4.services.AdGroupCriterionService.MutateAdGroupCriteria]. -message MutateAdGroupCriteriaRequest { - // Required. ID of the customer whose criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual criteria. - repeated AdGroupCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove, update) on an ad group criterion. -message AdGroupCriterionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The list of policy violation keys that should not cause a - // PolicyViolationError to be reported. Not all policy violations are - // exemptable, please refer to the is_exemptible field in the returned - // PolicyViolationError. - // - // Resources violating these polices will be saved, but will not be eligible - // to serve. They may begin serving at a later time due to a change in - // policies, re-review of the resource, or a change in advertiser - // certificates. - repeated google.ads.googleads.v4.common.PolicyViolationKey exempt_policy_violation_keys = 5; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new criterion. - google.ads.googleads.v4.resources.AdGroupCriterion create = 1; - - // Update operation: The criterion is expected to have a valid resource - // name. - google.ads.googleads.v4.resources.AdGroupCriterion update = 2; - - // Remove operation: A resource name for the removed criterion is expected, - // in this format: - // - // `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for an ad group criterion mutate. -message MutateAdGroupCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupCriterionResult results = 2; -} - -// The result for the criterion mutate. -message MutateAdGroupCriterionResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/ad_group_criterion_simulation_service.proto b/google/ads/googleads/v4/services/ad_group_criterion_simulation_service.proto deleted file mode 100644 index d27bd022f..000000000 --- a/google/ads/googleads/v4/services/ad_group_criterion_simulation_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_group_criterion_simulation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionSimulationServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the AdGroupCriterionSimulation service. - -// Service to fetch ad group criterion simulations. -service AdGroupCriterionSimulationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group criterion simulation in full detail. - rpc GetAdGroupCriterionSimulation(GetAdGroupCriterionSimulationRequest) returns (google.ads.googleads.v4.resources.AdGroupCriterionSimulation) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupCriterionSimulations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation][google.ads.googleads.v4.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation]. -message GetAdGroupCriterionSimulationRequest { - // Required. The resource name of the ad group criterion simulation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionSimulation" - } - ]; -} diff --git a/google/ads/googleads/v4/services/ad_group_extension_setting_service.proto b/google/ads/googleads/v4/services/ad_group_extension_setting_service.proto deleted file mode 100644 index 8acb24de8..000000000 --- a/google/ads/googleads/v4/services/ad_group_extension_setting_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_group_extension_setting.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupExtensionSettingServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the AdGroupExtensionSetting service. - -// Service to manage ad group extension settings. -service AdGroupExtensionSettingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group extension setting in full detail. - rpc GetAdGroupExtensionSetting(GetAdGroupExtensionSettingRequest) returns (google.ads.googleads.v4.resources.AdGroupExtensionSetting) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupExtensionSettings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad group extension settings. Operation - // statuses are returned. - rpc MutateAdGroupExtensionSettings(MutateAdGroupExtensionSettingsRequest) returns (MutateAdGroupExtensionSettingsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/adGroupExtensionSettings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [AdGroupExtensionSettingService.GetAdGroupExtensionSetting][google.ads.googleads.v4.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting]. -message GetAdGroupExtensionSettingRequest { - // Required. The resource name of the ad group extension setting to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupExtensionSetting" - } - ]; -} - -// Request message for -// [AdGroupExtensionSettingService.MutateAdGroupExtensionSettings][google.ads.googleads.v4.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings]. -message MutateAdGroupExtensionSettingsRequest { - // Required. The ID of the customer whose ad group extension settings are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad group extension - // settings. - repeated AdGroupExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on an ad group extension setting. -message AdGroupExtensionSettingOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group - // extension setting. - google.ads.googleads.v4.resources.AdGroupExtensionSetting create = 1; - - // Update operation: The ad group extension setting is expected to have a - // valid resource name. - google.ads.googleads.v4.resources.AdGroupExtensionSetting update = 2; - - // Remove operation: A resource name for the removed ad group extension - // setting is expected, in this format: - // - // `customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}` - string remove = 3; - } -} - -// Response message for an ad group extension setting mutate. -message MutateAdGroupExtensionSettingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupExtensionSettingResult results = 2; -} - -// The result for the ad group extension setting mutate. -message MutateAdGroupExtensionSettingResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/ad_group_feed_service.proto b/google/ads/googleads/v4/services/ad_group_feed_service.proto deleted file mode 100644 index 9b5e9e2c3..000000000 --- a/google/ads/googleads/v4/services/ad_group_feed_service.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_group_feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupFeedServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the AdGroupFeed service. - -// Service to manage ad group feeds. -service AdGroupFeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group feed in full detail. - rpc GetAdGroupFeed(GetAdGroupFeedRequest) returns (google.ads.googleads.v4.resources.AdGroupFeed) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupFeeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad group feeds. Operation statuses are - // returned. - rpc MutateAdGroupFeeds(MutateAdGroupFeedsRequest) returns (MutateAdGroupFeedsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/adGroupFeeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupFeedService.GetAdGroupFeed][google.ads.googleads.v4.services.AdGroupFeedService.GetAdGroupFeed]. -message GetAdGroupFeedRequest { - // Required. The resource name of the ad group feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupFeed" - } - ]; -} - -// Request message for [AdGroupFeedService.MutateAdGroupFeeds][google.ads.googleads.v4.services.AdGroupFeedService.MutateAdGroupFeeds]. -message MutateAdGroupFeedsRequest { - // Required. The ID of the customer whose ad group feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad group feeds. - repeated AdGroupFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on an ad group feed. -message AdGroupFeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group feed. - google.ads.googleads.v4.resources.AdGroupFeed create = 1; - - // Update operation: The ad group feed is expected to have a valid resource - // name. - google.ads.googleads.v4.resources.AdGroupFeed update = 2; - - // Remove operation: A resource name for the removed ad group feed is - // expected, in this format: - // - // `customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id}` - string remove = 3; - } -} - -// Response message for an ad group feed mutate. -message MutateAdGroupFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupFeedResult results = 2; -} - -// The result for the ad group feed mutate. -message MutateAdGroupFeedResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/ad_group_label_service.proto b/google/ads/googleads/v4/services/ad_group_label_service.proto deleted file mode 100644 index e24614e22..000000000 --- a/google/ads/googleads/v4/services/ad_group_label_service.proto +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_group_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupLabelServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Ad Group Label service. - -// Service to manage labels on ad groups. -service AdGroupLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group label in full detail. - rpc GetAdGroupLabel(GetAdGroupLabelRequest) returns (google.ads.googleads.v4.resources.AdGroupLabel) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes ad group labels. - // Operation statuses are returned. - rpc MutateAdGroupLabels(MutateAdGroupLabelsRequest) returns (MutateAdGroupLabelsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/adGroupLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupLabelService.GetAdGroupLabel][google.ads.googleads.v4.services.AdGroupLabelService.GetAdGroupLabel]. -message GetAdGroupLabelRequest { - // Required. The resource name of the ad group label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupLabel" - } - ]; -} - -// Request message for [AdGroupLabelService.MutateAdGroupLabels][google.ads.googleads.v4.services.AdGroupLabelService.MutateAdGroupLabels]. -message MutateAdGroupLabelsRequest { - // Required. ID of the customer whose ad group labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on ad group labels. - repeated AdGroupLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an ad group label. -message AdGroupLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group - // label. - google.ads.googleads.v4.resources.AdGroupLabel create = 1; - - // Remove operation: A resource name for the ad group label - // being removed, in this format: - // - // `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}` - string remove = 2; - } -} - -// Response message for an ad group labels mutate. -message MutateAdGroupLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupLabelResult results = 2; -} - -// The result for an ad group label mutate. -message MutateAdGroupLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/ad_group_service.proto b/google/ads/googleads/v4/services/ad_group_service.proto deleted file mode 100644 index ada2d12dc..000000000 --- a/google/ads/googleads/v4/services/ad_group_service.proto +++ /dev/null @@ -1,128 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_group.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Ad Group service. - -// Service to manage ad groups. -service AdGroupService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group in full detail. - rpc GetAdGroup(GetAdGroupRequest) returns (google.ads.googleads.v4.resources.AdGroup) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroups/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad groups. Operation statuses are returned. - rpc MutateAdGroups(MutateAdGroupsRequest) returns (MutateAdGroupsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/adGroups:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupService.GetAdGroup][google.ads.googleads.v4.services.AdGroupService.GetAdGroup]. -message GetAdGroupRequest { - // Required. The resource name of the ad group to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; -} - -// Request message for [AdGroupService.MutateAdGroups][google.ads.googleads.v4.services.AdGroupService.MutateAdGroups]. -message MutateAdGroupsRequest { - // Required. The ID of the customer whose ad groups are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad groups. - repeated AdGroupOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on an ad group. -message AdGroupOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group. - google.ads.googleads.v4.resources.AdGroup create = 1; - - // Update operation: The ad group is expected to have a valid resource name. - google.ads.googleads.v4.resources.AdGroup update = 2; - - // Remove operation: A resource name for the removed ad group is expected, - // in this format: - // - // `customers/{customer_id}/adGroups/{ad_group_id}` - string remove = 3; - } -} - -// Response message for an ad group mutate. -message MutateAdGroupsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupResult results = 2; -} - -// The result for the ad group mutate. -message MutateAdGroupResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/ad_group_simulation_service.proto b/google/ads/googleads/v4/services/ad_group_simulation_service.proto deleted file mode 100644 index 528289909..000000000 --- a/google/ads/googleads/v4/services/ad_group_simulation_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_group_simulation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupSimulationServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the AdGroupSimulation service. - -// Service to fetch ad group simulations. -service AdGroupSimulationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group simulation in full detail. - rpc GetAdGroupSimulation(GetAdGroupSimulationRequest) returns (google.ads.googleads.v4.resources.AdGroupSimulation) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adGroupSimulations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdGroupSimulationService.GetAdGroupSimulation][google.ads.googleads.v4.services.AdGroupSimulationService.GetAdGroupSimulation]. -message GetAdGroupSimulationRequest { - // Required. The resource name of the ad group simulation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupSimulation" - } - ]; -} diff --git a/google/ads/googleads/v4/services/ad_parameter_service.proto b/google/ads/googleads/v4/services/ad_parameter_service.proto deleted file mode 100644 index 1703d8c0a..000000000 --- a/google/ads/googleads/v4/services/ad_parameter_service.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_parameter.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdParameterServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Ad Parameter service. - -// Service to manage ad parameters. -service AdParameterService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad parameter in full detail. - rpc GetAdParameter(GetAdParameterRequest) returns (google.ads.googleads.v4.resources.AdParameter) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adParameters/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad parameters. Operation statuses are - // returned. - rpc MutateAdParameters(MutateAdParametersRequest) returns (MutateAdParametersResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/adParameters:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdParameterService.GetAdParameter][google.ads.googleads.v4.services.AdParameterService.GetAdParameter] -message GetAdParameterRequest { - // Required. The resource name of the ad parameter to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdParameter" - } - ]; -} - -// Request message for [AdParameterService.MutateAdParameters][google.ads.googleads.v4.services.AdParameterService.MutateAdParameters] -message MutateAdParametersRequest { - // Required. The ID of the customer whose ad parameters are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad parameters. - repeated AdParameterOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on ad parameter. -message AdParameterOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad parameter. - google.ads.googleads.v4.resources.AdParameter create = 1; - - // Update operation: The ad parameter is expected to have a valid resource - // name. - google.ads.googleads.v4.resources.AdParameter update = 2; - - // Remove operation: A resource name for the ad parameter to remove is - // expected in this format: - // - // `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}` - string remove = 3; - } -} - -// Response message for an ad parameter mutate. -message MutateAdParametersResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdParameterResult results = 2; -} - -// The result for the ad parameter mutate. -message MutateAdParameterResult { - // The resource name returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/ad_schedule_view_service.proto b/google/ads/googleads/v4/services/ad_schedule_view_service.proto deleted file mode 100644 index 4df40c3de..000000000 --- a/google/ads/googleads/v4/services/ad_schedule_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad_schedule_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdScheduleViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the AdSchedule View service. - -// Service to fetch ad schedule views. -service AdScheduleViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad schedule view in full detail. - rpc GetAdScheduleView(GetAdScheduleViewRequest) returns (google.ads.googleads.v4.resources.AdScheduleView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/adScheduleViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdScheduleViewService.GetAdScheduleView][google.ads.googleads.v4.services.AdScheduleViewService.GetAdScheduleView]. -message GetAdScheduleViewRequest { - // Required. The resource name of the ad schedule view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdScheduleView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/ad_service.proto b/google/ads/googleads/v4/services/ad_service.proto deleted file mode 100644 index 74de3d6d7..000000000 --- a/google/ads/googleads/v4/services/ad_service.proto +++ /dev/null @@ -1,106 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/ad.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Ad service. - -// Service to manage ads. -service AdService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad in full detail. - rpc GetAd(GetAdRequest) returns (google.ads.googleads.v4.resources.Ad) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/ads/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Updates ads. Operation statuses are returned. Updating ads is not supported - // for TextAd, ExpandedDynamicSearchAd, GmailAd and ImageAd. - rpc MutateAds(MutateAdsRequest) returns (MutateAdsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/ads:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdService.GetAd][google.ads.googleads.v4.services.AdService.GetAd]. -message GetAdRequest { - // Required. The resource name of the ad to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Ad" - } - ]; -} - -// Request message for [AdService.MutateAds][google.ads.googleads.v4.services.AdService.MutateAds]. -message MutateAdsRequest { - // Required. The ID of the customer whose ads are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ads. - repeated AdOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single update operation on an ad. -message AdOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 2; - - // The mutate operation. - oneof operation { - // Update operation: The ad is expected to have a valid resource name - // in this format: - // - // `customers/{customer_id}/ads/{ad_id}` - google.ads.googleads.v4.resources.Ad update = 1; - } -} - -// Response message for an ad mutate. -message MutateAdsResponse { - // All results for the mutate. - repeated MutateAdResult results = 2; -} - -// The result for the ad mutate. -message MutateAdResult { - // The resource name returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/age_range_view_service.proto b/google/ads/googleads/v4/services/age_range_view_service.proto deleted file mode 100644 index 59e0899dc..000000000 --- a/google/ads/googleads/v4/services/age_range_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/age_range_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AgeRangeViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Age Range View service. - -// Service to manage age range views. -service AgeRangeViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested age range view in full detail. - rpc GetAgeRangeView(GetAgeRangeViewRequest) returns (google.ads.googleads.v4.resources.AgeRangeView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/ageRangeViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AgeRangeViewService.GetAgeRangeView][google.ads.googleads.v4.services.AgeRangeViewService.GetAgeRangeView]. -message GetAgeRangeViewRequest { - // Required. The resource name of the age range view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AgeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/asset_service.proto b/google/ads/googleads/v4/services/asset_service.proto deleted file mode 100644 index 96de20e57..000000000 --- a/google/ads/googleads/v4/services/asset_service.proto +++ /dev/null @@ -1,102 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/asset.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AssetServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Asset service. - -// Service to manage assets. Asset types can be created with AssetService are -// YoutubeVideoAsset, MediaBundleAsset and ImageAsset. TextAsset should be -// created with Ad inline. -service AssetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested asset in full detail. - rpc GetAsset(GetAssetRequest) returns (google.ads.googleads.v4.resources.Asset) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/assets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates assets. Operation statuses are returned. - rpc MutateAssets(MutateAssetsRequest) returns (MutateAssetsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/assets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AssetService.GetAsset][google.ads.googleads.v4.services.AssetService.GetAsset] -message GetAssetRequest { - // Required. The resource name of the asset to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; -} - -// Request message for [AssetService.MutateAssets][google.ads.googleads.v4.services.AssetService.MutateAssets] -message MutateAssetsRequest { - // Required. The ID of the customer whose assets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual assets. - repeated AssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation to create an asset. Supported asset types are -// YoutubeVideoAsset, MediaBundleAsset, ImageAsset, and LeadFormAsset. TextAsset -// should be created with Ad inline. -message AssetOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new asset. - google.ads.googleads.v4.resources.Asset create = 1; - } -} - -// Response message for an asset mutate. -message MutateAssetsResponse { - // All results for the mutate. - repeated MutateAssetResult results = 2; -} - -// The result for the asset mutate. -message MutateAssetResult { - // The resource name returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/batch_job_service.proto b/google/ads/googleads/v4/services/batch_job_service.proto deleted file mode 100644 index ad4ee04ed..000000000 --- a/google/ads/googleads/v4/services/batch_job_service.proto +++ /dev/null @@ -1,242 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/batch_job.proto"; -import "google/ads/googleads/v4/services/google_ads_service.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the BatchJobService. - -// Service to manage batch jobs. -service BatchJobService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Mutates a batch job. - rpc MutateBatchJob(MutateBatchJobRequest) returns (MutateBatchJobResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/batchJobs:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } - - // Returns the batch job. - rpc GetBatchJob(GetBatchJobRequest) returns (google.ads.googleads.v4.resources.BatchJob) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/batchJobs/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Returns the results of the batch job. The job must be done. - // Supports standard list paging. - rpc ListBatchJobResults(ListBatchJobResultsRequest) returns (ListBatchJobResultsResponse) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/batchJobs/*}:listResults" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Runs the batch job. - // - // The Operation.metadata field type is BatchJobMetadata. When finished, the - // long running operation will not contain errors or a response. Instead, use - // ListBatchJobResults to get the results of the job. - rpc RunBatchJob(RunBatchJobRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v4/{resource_name=customers/*/batchJobs/*}:run" - body: "*" - }; - option (google.api.method_signature) = "resource_name"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.ads.googleads.v4.resources.BatchJob.BatchJobMetadata" - }; - } - - // Add operations to the batch job. - rpc AddBatchJobOperations(AddBatchJobOperationsRequest) returns (AddBatchJobOperationsResponse) { - option (google.api.http) = { - post: "/v4/{resource_name=customers/*/batchJobs/*}:addOperations" - body: "*" - }; - option (google.api.method_signature) = "resource_name,sequence_token,mutate_operations"; - option (google.api.method_signature) = "resource_name,mutate_operations"; - } -} - -// Request message for [BatchJobService.MutateBatchJob][google.ads.googleads.v4.services.BatchJobService.MutateBatchJob]. -message MutateBatchJobRequest { - // Required. The ID of the customer for which to create a batch job. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on an individual batch job. - BatchJobOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation on a batch job. -message BatchJobOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new batch job. - google.ads.googleads.v4.resources.BatchJob create = 1; - - // Remove operation: The batch job must not have been run. A resource name - // for the removed batch job is expected, in this format: - // - // `customers/{customer_id}/batchJobs/{batch_job_id}` - string remove = 3; - } -} - -// Response message for [BatchJobService.MutateBatchJob][google.ads.googleads.v4.services.BatchJobService.MutateBatchJob]. -message MutateBatchJobResponse { - // The result for the mutate. - MutateBatchJobResult result = 1; -} - -// The result for the batch job mutate. -message MutateBatchJobResult { - // The resource name of the batch job. - string resource_name = 1; -} - -// Request message for [BatchJobService.GetBatchJob][google.ads.googleads.v4.services.BatchJobService.GetBatchJob]. -message GetBatchJobRequest { - // Required. The resource name of the batch job to get. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; -} - -// Request message for [BatchJobService.RunBatchJob][google.ads.googleads.v4.services.BatchJobService.RunBatchJob]. -message RunBatchJobRequest { - // Required. The resource name of the BatchJob to run. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; -} - -// Request message for [BatchJobService.AddBatchJobOperations][google.ads.googleads.v4.services.BatchJobService.AddBatchJobOperations]. -message AddBatchJobOperationsRequest { - // Required. The resource name of the batch job. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; - - // A token used to enforce sequencing. - // - // The first AddBatchJobOperations request for a batch job should not set - // sequence_token. Subsequent requests must set sequence_token to the value of - // next_sequence_token received in the previous AddBatchJobOperations - // response. - string sequence_token = 2; - - // Required. The list of mutates being added. - // - // Operations can use negative integers as temp ids to signify dependencies - // between entities created in this batch job. For example, a customer with - // id = 1234 can create a campaign and an ad group in that same campaign by - // creating a campaign in the first operation with the resource name - // explicitly set to "customers/1234/campaigns/-1", and creating an ad group - // in the second operation with the campaign field also set to - // "customers/1234/campaigns/-1". - repeated MutateOperation mutate_operations = 3 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [BatchJobService.AddBatchJobOperations][google.ads.googleads.v4.services.BatchJobService.AddBatchJobOperations]. -message AddBatchJobOperationsResponse { - // The total number of operations added so far for this batch job. - int64 total_operations = 1; - - // The sequence token to be used when calling AddBatchJobOperations again if - // more operations need to be added. The next AddBatchJobOperations request - // must set the sequence_token field to the value of this field. - string next_sequence_token = 2; -} - -// Request message for [BatchJobService.ListBatchJobResults][google.ads.googleads.v4.services.BatchJobService.ListBatchJobResults]. -message ListBatchJobResultsRequest { - // Required. The resource name of the batch job whose results are being listed. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When a page request is too large, the server may decide to - // further limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for [BatchJobService.ListBatchJobResults][google.ads.googleads.v4.services.BatchJobService.ListBatchJobResults]. -message ListBatchJobResultsResponse { - // The list of rows that matched the query. - repeated BatchJobResult results = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; -} - -// An individual batch job result. -message BatchJobResult { - // Index of the mutate operation. - int64 operation_index = 1; - - // Response for the mutate. - // May be empty if errors occurred. - MutateOperationResponse mutate_operation_response = 2; - - // Details of the errors when processing the operation. - google.rpc.Status status = 3; -} diff --git a/google/ads/googleads/v4/services/bidding_strategy_service.proto b/google/ads/googleads/v4/services/bidding_strategy_service.proto deleted file mode 100644 index 3854cd10e..000000000 --- a/google/ads/googleads/v4/services/bidding_strategy_service.proto +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/bidding_strategy.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Bidding Strategy service. - -// Service to manage bidding strategies. -service BiddingStrategyService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested bidding strategy in full detail. - rpc GetBiddingStrategy(GetBiddingStrategyRequest) returns (google.ads.googleads.v4.resources.BiddingStrategy) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/biddingStrategies/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes bidding strategies. Operation statuses are - // returned. - rpc MutateBiddingStrategies(MutateBiddingStrategiesRequest) returns (MutateBiddingStrategiesResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/biddingStrategies:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [BiddingStrategyService.GetBiddingStrategy][google.ads.googleads.v4.services.BiddingStrategyService.GetBiddingStrategy]. -message GetBiddingStrategyRequest { - // Required. The resource name of the bidding strategy to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BiddingStrategy" - } - ]; -} - -// Request message for [BiddingStrategyService.MutateBiddingStrategies][google.ads.googleads.v4.services.BiddingStrategyService.MutateBiddingStrategies]. -message MutateBiddingStrategiesRequest { - // Required. The ID of the customer whose bidding strategies are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual bidding strategies. - repeated BiddingStrategyOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a bidding strategy. -message BiddingStrategyOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new bidding - // strategy. - google.ads.googleads.v4.resources.BiddingStrategy create = 1; - - // Update operation: The bidding strategy is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.BiddingStrategy update = 2; - - // Remove operation: A resource name for the removed bidding strategy is - // expected, in this format: - // - // `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}` - string remove = 3; - } -} - -// Response message for bidding strategy mutate. -message MutateBiddingStrategiesResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateBiddingStrategyResult results = 2; -} - -// The result for the bidding strategy mutate. -message MutateBiddingStrategyResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/billing_setup_service.proto b/google/ads/googleads/v4/services/billing_setup_service.proto deleted file mode 100644 index 57d8f9943..000000000 --- a/google/ads/googleads/v4/services/billing_setup_service.proto +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/billing_setup.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the BillingSetup service. - -// A service for designating the business entity responsible for accrued costs. -// -// A billing setup is associated with a payments account. Billing-related -// activity for all billing setups associated with a particular payments account -// will appear on a single invoice generated monthly. -// -// Mutates: -// The REMOVE operation cancels a pending billing setup. -// The CREATE operation creates a new billing setup. -service BillingSetupService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns a billing setup. - rpc GetBillingSetup(GetBillingSetupRequest) returns (google.ads.googleads.v4.resources.BillingSetup) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/billingSetups/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates a billing setup, or cancels an existing billing setup. - rpc MutateBillingSetup(MutateBillingSetupRequest) returns (MutateBillingSetupResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/billingSetups:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for -// [BillingSetupService.GetBillingSetup][google.ads.googleads.v4.services.BillingSetupService.GetBillingSetup]. -message GetBillingSetupRequest { - // Required. The resource name of the billing setup to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; -} - -// Request message for billing setup mutate operations. -message MutateBillingSetupRequest { - // Required. Id of the customer to apply the billing setup mutate operation to. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform. - BillingSetupOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation on a billing setup, which describes the cancellation of an -// existing billing setup. -message BillingSetupOperation { - // Only one of these operations can be set. "Update" operations are not - // supported. - oneof operation { - // Creates a billing setup. No resource name is expected for the new billing - // setup. - google.ads.googleads.v4.resources.BillingSetup create = 2; - - // Resource name of the billing setup to remove. A setup cannot be - // removed unless it is in a pending state or its scheduled start time is in - // the future. The resource name looks like - // `customers/{customer_id}/billingSetups/{billing_id}`. - string remove = 1; - } -} - -// Response message for a billing setup operation. -message MutateBillingSetupResponse { - // A result that identifies the resource affected by the mutate request. - MutateBillingSetupResult result = 1; -} - -// Result for a single billing setup mutate. -message MutateBillingSetupResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/campaign_audience_view_service.proto b/google/ads/googleads/v4/services/campaign_audience_view_service.proto deleted file mode 100644 index 72c528b42..000000000 --- a/google/ads/googleads/v4/services/campaign_audience_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign_audience_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignAudienceViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Campaign Audience View service. - -// Service to manage campaign audience views. -service CampaignAudienceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign audience view in full detail. - rpc GetCampaignAudienceView(GetCampaignAudienceViewRequest) returns (google.ads.googleads.v4.resources.CampaignAudienceView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignAudienceViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CampaignAudienceViewService.GetCampaignAudienceView][google.ads.googleads.v4.services.CampaignAudienceViewService.GetCampaignAudienceView]. -message GetCampaignAudienceViewRequest { - // Required. The resource name of the campaign audience view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/campaign_bid_modifier_service.proto b/google/ads/googleads/v4/services/campaign_bid_modifier_service.proto deleted file mode 100644 index d7f3ac041..000000000 --- a/google/ads/googleads/v4/services/campaign_bid_modifier_service.proto +++ /dev/null @@ -1,132 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign_bid_modifier.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBidModifierServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Campaign Bid Modifier service. - -// Service to manage campaign bid modifiers. -service CampaignBidModifierService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign bid modifier in full detail. - rpc GetCampaignBidModifier(GetCampaignBidModifierRequest) returns (google.ads.googleads.v4.resources.CampaignBidModifier) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignBidModifiers/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign bid modifiers. - // Operation statuses are returned. - rpc MutateCampaignBidModifiers(MutateCampaignBidModifiersRequest) returns (MutateCampaignBidModifiersResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/campaignBidModifiers:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignBidModifierService.GetCampaignBidModifier][google.ads.googleads.v4.services.CampaignBidModifierService.GetCampaignBidModifier]. -message GetCampaignBidModifierRequest { - // Required. The resource name of the campaign bid modifier to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBidModifier" - } - ]; -} - -// Request message for -// [CampaignBidModifierService.MutateCampaignBidModifiers][google.ads.googleads.v4.services.CampaignBidModifierService.MutateCampaignBidModifiers]. -message MutateCampaignBidModifiersRequest { - // Required. ID of the customer whose campaign bid modifiers are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign bid modifiers. - repeated CampaignBidModifierOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove, update) on a campaign bid modifier. -message CampaignBidModifierOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign bid - // modifier. - google.ads.googleads.v4.resources.CampaignBidModifier create = 1; - - // Update operation: The campaign bid modifier is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.CampaignBidModifier update = 2; - - // Remove operation: A resource name for the removed campaign bid modifier - // is expected, in this format: - // - // `customers/{customer_id}/CampaignBidModifiers/{campaign_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for campaign bid modifiers mutate. -message MutateCampaignBidModifiersResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignBidModifierResult results = 2; -} - -// The result for the criterion mutate. -message MutateCampaignBidModifierResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/campaign_budget_service.proto b/google/ads/googleads/v4/services/campaign_budget_service.proto deleted file mode 100644 index 826dd2b62..000000000 --- a/google/ads/googleads/v4/services/campaign_budget_service.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign_budget.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBudgetServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Campaign Budget service. - -// Service to manage campaign budgets. -service CampaignBudgetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Campaign Budget in full detail. - rpc GetCampaignBudget(GetCampaignBudgetRequest) returns (google.ads.googleads.v4.resources.CampaignBudget) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignBudgets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign budgets. Operation statuses are - // returned. - rpc MutateCampaignBudgets(MutateCampaignBudgetsRequest) returns (MutateCampaignBudgetsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/campaignBudgets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignBudgetService.GetCampaignBudget][google.ads.googleads.v4.services.CampaignBudgetService.GetCampaignBudget]. -message GetCampaignBudgetRequest { - // Required. The resource name of the campaign budget to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - } - ]; -} - -// Request message for [CampaignBudgetService.MutateCampaignBudgets][google.ads.googleads.v4.services.CampaignBudgetService.MutateCampaignBudgets]. -message MutateCampaignBudgetsRequest { - // Required. The ID of the customer whose campaign budgets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign budgets. - repeated CampaignBudgetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a campaign budget. -message CampaignBudgetOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new budget. - google.ads.googleads.v4.resources.CampaignBudget create = 1; - - // Update operation: The campaign budget is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.CampaignBudget update = 2; - - // Remove operation: A resource name for the removed budget is expected, in - // this format: - // - // `customers/{customer_id}/campaignBudgets/{budget_id}` - string remove = 3; - } -} - -// Response message for campaign budget mutate. -message MutateCampaignBudgetsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignBudgetResult results = 2; -} - -// The result for the campaign budget mutate. -message MutateCampaignBudgetResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/campaign_criterion_service.proto b/google/ads/googleads/v4/services/campaign_criterion_service.proto deleted file mode 100644 index f2b13492e..000000000 --- a/google/ads/googleads/v4/services/campaign_criterion_service.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Campaign Criterion service. - -// Service to manage campaign criteria. -service CampaignCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested criterion in full detail. - rpc GetCampaignCriterion(GetCampaignCriterionRequest) returns (google.ads.googleads.v4.resources.CampaignCriterion) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes criteria. Operation statuses are returned. - rpc MutateCampaignCriteria(MutateCampaignCriteriaRequest) returns (MutateCampaignCriteriaResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/campaignCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignCriterionService.GetCampaignCriterion][google.ads.googleads.v4.services.CampaignCriterionService.GetCampaignCriterion]. -message GetCampaignCriterionRequest { - // Required. The resource name of the criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterion" - } - ]; -} - -// Request message for [CampaignCriterionService.MutateCampaignCriteria][google.ads.googleads.v4.services.CampaignCriterionService.MutateCampaignCriteria]. -message MutateCampaignCriteriaRequest { - // Required. The ID of the customer whose criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual criteria. - repeated CampaignCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a campaign criterion. -message CampaignCriterionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new criterion. - google.ads.googleads.v4.resources.CampaignCriterion create = 1; - - // Update operation: The criterion is expected to have a valid resource - // name. - google.ads.googleads.v4.resources.CampaignCriterion update = 2; - - // Remove operation: A resource name for the removed criterion is expected, - // in this format: - // - // `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for campaign criterion mutate. -message MutateCampaignCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignCriterionResult results = 2; -} - -// The result for the criterion mutate. -message MutateCampaignCriterionResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/campaign_criterion_simulation_service.proto b/google/ads/googleads/v4/services/campaign_criterion_simulation_service.proto deleted file mode 100644 index 6c88f2bfc..000000000 --- a/google/ads/googleads/v4/services/campaign_criterion_simulation_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign_criterion_simulation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionSimulationServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the CampaignCriterionSimulation service. - -// Service to fetch campaign criterion simulations. -service CampaignCriterionSimulationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign criterion simulation in full detail. - rpc GetCampaignCriterionSimulation(GetCampaignCriterionSimulationRequest) returns (google.ads.googleads.v4.resources.CampaignCriterionSimulation) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignCriterionSimulations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [CampaignCriterionSimulationService.GetCampaignCriterionSimulation][google.ads.googleads.v4.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation]. -message GetCampaignCriterionSimulationRequest { - // Required. The resource name of the campaign criterion simulation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterionSimulation" - } - ]; -} diff --git a/google/ads/googleads/v4/services/campaign_draft_service.proto b/google/ads/googleads/v4/services/campaign_draft_service.proto deleted file mode 100644 index a0bc813a3..000000000 --- a/google/ads/googleads/v4/services/campaign_draft_service.proto +++ /dev/null @@ -1,203 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign_draft.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Campaign Draft service. - -// Service to manage campaign drafts. -service CampaignDraftService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign draft in full detail. - rpc GetCampaignDraft(GetCampaignDraftRequest) returns (google.ads.googleads.v4.resources.CampaignDraft) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignDrafts/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign drafts. Operation statuses are - // returned. - rpc MutateCampaignDrafts(MutateCampaignDraftsRequest) returns (MutateCampaignDraftsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/campaignDrafts:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Promotes the changes in a draft back to the base campaign. - // - // This method returns a Long Running Operation (LRO) indicating if the - // Promote is done. Use [Operations.GetOperation] to poll the LRO until it - // is done. Only a done status is returned in the response. See the status - // in the Campaign Draft resource to determine if the promotion was - // successful. If the LRO failed, use - // [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v4.services.CampaignDraftService.ListCampaignDraftAsyncErrors] to view the list of - // error reasons. - rpc PromoteCampaignDraft(PromoteCampaignDraftRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v4/{campaign_draft=customers/*/campaignDrafts/*}:promote" - body: "*" - }; - option (google.api.method_signature) = "campaign_draft"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.protobuf.Empty" - }; - } - - // Returns all errors that occurred during CampaignDraft promote. Throws an - // error if called before campaign draft is promoted. - // Supports standard list paging. - rpc ListCampaignDraftAsyncErrors(ListCampaignDraftAsyncErrorsRequest) returns (ListCampaignDraftAsyncErrorsResponse) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CampaignDraftService.GetCampaignDraft][google.ads.googleads.v4.services.CampaignDraftService.GetCampaignDraft]. -message GetCampaignDraftRequest { - // Required. The resource name of the campaign draft to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; -} - -// Request message for [CampaignDraftService.MutateCampaignDrafts][google.ads.googleads.v4.services.CampaignDraftService.MutateCampaignDrafts]. -message MutateCampaignDraftsRequest { - // Required. The ID of the customer whose campaign drafts are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign drafts. - repeated CampaignDraftOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// Request message for [CampaignDraftService.PromoteCampaignDraft][google.ads.googleads.v4.services.CampaignDraftService.PromoteCampaignDraft]. -message PromoteCampaignDraftRequest { - // Required. The resource name of the campaign draft to promote. - string campaign_draft = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation (create, update, remove) on a campaign draft. -message CampaignDraftOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign - // draft. - google.ads.googleads.v4.resources.CampaignDraft create = 1; - - // Update operation: The campaign draft is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.CampaignDraft update = 2; - - // Remove operation: The campaign draft is expected to have a valid - // resource name, in this format: - // - // `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}` - string remove = 3; - } -} - -// Response message for campaign draft mutate. -message MutateCampaignDraftsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignDraftResult results = 2; -} - -// The result for the campaign draft mutate. -message MutateCampaignDraftResult { - // Returned for successful operations. - string resource_name = 1; -} - -// Request message for [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v4.services.CampaignDraftService.ListCampaignDraftAsyncErrors]. -message ListCampaignDraftAsyncErrorsRequest { - // Required. The name of the campaign draft from which to retrieve the async errors. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When a page request is too large, the server may decide to - // further limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v4.services.CampaignDraftService.ListCampaignDraftAsyncErrors]. -message ListCampaignDraftAsyncErrorsResponse { - // Details of the errors when performing the asynchronous operation. - repeated google.rpc.Status errors = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; -} diff --git a/google/ads/googleads/v4/services/campaign_experiment_service.proto b/google/ads/googleads/v4/services/campaign_experiment_service.proto deleted file mode 100644 index c732903c0..000000000 --- a/google/ads/googleads/v4/services/campaign_experiment_service.proto +++ /dev/null @@ -1,294 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign_experiment.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/protobuf/empty.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Campaign Experiment service. - -// CampaignExperimentService manages the life cycle of campaign experiments. -// It is used to create new experiments from drafts, modify experiment -// properties, promote changes in an experiment back to its base campaign, -// graduate experiments into new stand-alone campaigns, and to remove an -// experiment. -// -// An experiment consists of two variants or arms - the base campaign and the -// experiment campaign, directing a fixed share of traffic to each arm. -// A campaign experiment is created from a draft of changes to the base campaign -// and will be a snapshot of changes in the draft at the time of creation. -service CampaignExperimentService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign experiment in full detail. - rpc GetCampaignExperiment(GetCampaignExperimentRequest) returns (google.ads.googleads.v4.resources.CampaignExperiment) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignExperiments/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates a campaign experiment based on a campaign draft. The draft campaign - // will be forked into a real campaign (called the experiment campaign) that - // will begin serving ads if successfully created. - // - // The campaign experiment is created immediately with status INITIALIZING. - // This method return a long running operation that tracks the forking of the - // draft campaign. If the forking fails, a list of errors can be retrieved - // using the ListCampaignExperimentAsyncErrors method. The operation's - // metadata will be a StringValue containing the resource name of the created - // campaign experiment. - rpc CreateCampaignExperiment(CreateCampaignExperimentRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/campaignExperiments:create" - body: "*" - }; - option (google.api.method_signature) = "customer_id,campaign_experiment"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.ads.googleads.v4.services.CreateCampaignExperimentMetadata" - }; - } - - // Updates campaign experiments. Operation statuses are returned. - rpc MutateCampaignExperiments(MutateCampaignExperimentsRequest) returns (MutateCampaignExperimentsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/campaignExperiments:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Graduates a campaign experiment to a full campaign. The base and experiment - // campaigns will start running independently with their own budgets. - rpc GraduateCampaignExperiment(GraduateCampaignExperimentRequest) returns (GraduateCampaignExperimentResponse) { - option (google.api.http) = { - post: "/v4/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" - body: "*" - }; - option (google.api.method_signature) = "campaign_experiment,campaign_budget"; - } - - // Promotes the changes in a experiment campaign back to the base campaign. - // - // The campaign experiment is updated immediately with status PROMOTING. - // This method return a long running operation that tracks the promoting of - // the experiment campaign. If the promoting fails, a list of errors can be - // retrieved using the ListCampaignExperimentAsyncErrors method. - rpc PromoteCampaignExperiment(PromoteCampaignExperimentRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v4/{campaign_experiment=customers/*/campaignExperiments/*}:promote" - body: "*" - }; - option (google.api.method_signature) = "campaign_experiment"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.protobuf.Empty" - }; - } - - // Immediately ends a campaign experiment, changing the experiment's scheduled - // end date and without waiting for end of day. End date is updated to be the - // time of the request. - rpc EndCampaignExperiment(EndCampaignExperimentRequest) returns (google.protobuf.Empty) { - option (google.api.http) = { - post: "/v4/{campaign_experiment=customers/*/campaignExperiments/*}:end" - body: "*" - }; - option (google.api.method_signature) = "campaign_experiment"; - } - - // Returns all errors that occurred during CampaignExperiment create or - // promote (whichever occurred last). - // Supports standard list paging. - rpc ListCampaignExperimentAsyncErrors(ListCampaignExperimentAsyncErrorsRequest) returns (ListCampaignExperimentAsyncErrorsResponse) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CampaignExperimentService.GetCampaignExperiment][google.ads.googleads.v4.services.CampaignExperimentService.GetCampaignExperiment]. -message GetCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExperiment" - } - ]; -} - -// Request message for [CampaignExperimentService.MutateCampaignExperiments][google.ads.googleads.v4.services.CampaignExperimentService.MutateCampaignExperiments]. -message MutateCampaignExperimentsRequest { - // Required. The ID of the customer whose campaign experiments are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign experiments. - repeated CampaignExperimentOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single update operation on a campaign experiment. -message CampaignExperimentOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 3; - - // The mutate operation. - oneof operation { - // Update operation: The campaign experiment is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.CampaignExperiment update = 1; - - // Remove operation: The campaign experiment is expected to have a valid - // resource name, in this format: - // - // `customers/{customer_id}/campaignExperiments/{campaign_experiment_id}` - string remove = 2; - } -} - -// Response message for campaign experiment mutate. -message MutateCampaignExperimentsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignExperimentResult results = 2; -} - -// The result for the campaign experiment mutate. -message MutateCampaignExperimentResult { - // Returned for successful operations. - string resource_name = 1; -} - -// Request message for [CampaignExperimentService.CreateCampaignExperiment][google.ads.googleads.v4.services.CampaignExperimentService.CreateCampaignExperiment]. -message CreateCampaignExperimentRequest { - // Required. The ID of the customer whose campaign experiment is being created. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The campaign experiment to be created. - google.ads.googleads.v4.resources.CampaignExperiment campaign_experiment = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 3; -} - -// Message used as metadata returned in Long Running Operations for -// CreateCampaignExperimentRequest -message CreateCampaignExperimentMetadata { - // Resource name of campaign experiment created. - string campaign_experiment = 1; -} - -// Request message for [CampaignExperimentService.GraduateCampaignExperiment][google.ads.googleads.v4.services.CampaignExperimentService.GraduateCampaignExperiment]. -message GraduateCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to graduate. - string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. Resource name of the budget to attach to the campaign graduated from the - // experiment. - string campaign_budget = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for campaign experiment graduate. -message GraduateCampaignExperimentResponse { - // The resource name of the campaign from the graduated experiment. - // This campaign is the same one as CampaignExperiment.experiment_campaign. - string graduated_campaign = 1; -} - -// Request message for [CampaignExperimentService.PromoteCampaignExperiment][google.ads.googleads.v4.services.CampaignExperimentService.PromoteCampaignExperiment]. -message PromoteCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to promote. - string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Request message for [CampaignExperimentService.EndCampaignExperiment][google.ads.googleads.v4.services.CampaignExperimentService.EndCampaignExperiment]. -message EndCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to end. - string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Request message for -// [CampaignExperimentService.ListCampaignExperimentAsyncErrors][google.ads.googleads.v4.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors]. -message ListCampaignExperimentAsyncErrorsRequest { - // Required. The name of the campaign experiment from which to retrieve the async - // errors. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExperiment" - } - ]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When a page request is too large, the server may decide to - // further limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for -// [CampaignExperimentService.ListCampaignExperimentAsyncErrors][google.ads.googleads.v4.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors]. -message ListCampaignExperimentAsyncErrorsResponse { - // Details of the errors when performing the asynchronous operation. - repeated google.rpc.Status errors = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; -} diff --git a/google/ads/googleads/v4/services/campaign_extension_setting_service.proto b/google/ads/googleads/v4/services/campaign_extension_setting_service.proto deleted file mode 100644 index 0100bbcaa..000000000 --- a/google/ads/googleads/v4/services/campaign_extension_setting_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign_extension_setting.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExtensionSettingServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the CampaignExtensionSetting service. - -// Service to manage campaign extension settings. -service CampaignExtensionSettingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign extension setting in full detail. - rpc GetCampaignExtensionSetting(GetCampaignExtensionSettingRequest) returns (google.ads.googleads.v4.resources.CampaignExtensionSetting) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignExtensionSettings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign extension settings. Operation - // statuses are returned. - rpc MutateCampaignExtensionSettings(MutateCampaignExtensionSettingsRequest) returns (MutateCampaignExtensionSettingsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/campaignExtensionSettings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [CampaignExtensionSettingService.GetCampaignExtensionSetting][google.ads.googleads.v4.services.CampaignExtensionSettingService.GetCampaignExtensionSetting]. -message GetCampaignExtensionSettingRequest { - // Required. The resource name of the campaign extension setting to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExtensionSetting" - } - ]; -} - -// Request message for -// [CampaignExtensionSettingService.MutateCampaignExtensionSettings][google.ads.googleads.v4.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings]. -message MutateCampaignExtensionSettingsRequest { - // Required. The ID of the customer whose campaign extension settings are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign extension - // settings. - repeated CampaignExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a campaign extension setting. -message CampaignExtensionSettingOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign - // extension setting. - google.ads.googleads.v4.resources.CampaignExtensionSetting create = 1; - - // Update operation: The campaign extension setting is expected to have a - // valid resource name. - google.ads.googleads.v4.resources.CampaignExtensionSetting update = 2; - - // Remove operation: A resource name for the removed campaign extension - // setting is expected, in this format: - // - // `customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}` - string remove = 3; - } -} - -// Response message for a campaign extension setting mutate. -message MutateCampaignExtensionSettingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignExtensionSettingResult results = 2; -} - -// The result for the campaign extension setting mutate. -message MutateCampaignExtensionSettingResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/campaign_feed_service.proto b/google/ads/googleads/v4/services/campaign_feed_service.proto deleted file mode 100644 index 9a5fd8cdb..000000000 --- a/google/ads/googleads/v4/services/campaign_feed_service.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign_feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignFeedServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the CampaignFeed service. - -// Service to manage campaign feeds. -service CampaignFeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign feed in full detail. - rpc GetCampaignFeed(GetCampaignFeedRequest) returns (google.ads.googleads.v4.resources.CampaignFeed) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignFeeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign feeds. Operation statuses are - // returned. - rpc MutateCampaignFeeds(MutateCampaignFeedsRequest) returns (MutateCampaignFeedsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/campaignFeeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignFeedService.GetCampaignFeed][google.ads.googleads.v4.services.CampaignFeedService.GetCampaignFeed]. -message GetCampaignFeedRequest { - // Required. The resource name of the campaign feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignFeed" - } - ]; -} - -// Request message for [CampaignFeedService.MutateCampaignFeeds][google.ads.googleads.v4.services.CampaignFeedService.MutateCampaignFeeds]. -message MutateCampaignFeedsRequest { - // Required. The ID of the customer whose campaign feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign feeds. - repeated CampaignFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a campaign feed. -message CampaignFeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign feed. - google.ads.googleads.v4.resources.CampaignFeed create = 1; - - // Update operation: The campaign feed is expected to have a valid resource - // name. - google.ads.googleads.v4.resources.CampaignFeed update = 2; - - // Remove operation: A resource name for the removed campaign feed is - // expected, in this format: - // - // `customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id}` - string remove = 3; - } -} - -// Response message for a campaign feed mutate. -message MutateCampaignFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignFeedResult results = 2; -} - -// The result for the campaign feed mutate. -message MutateCampaignFeedResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/campaign_label_service.proto b/google/ads/googleads/v4/services/campaign_label_service.proto deleted file mode 100644 index e83f16e5a..000000000 --- a/google/ads/googleads/v4/services/campaign_label_service.proto +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignLabelServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Campaign Label service. - -// Service to manage labels on campaigns. -service CampaignLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign-label relationship in full detail. - rpc GetCampaignLabel(GetCampaignLabelRequest) returns (google.ads.googleads.v4.resources.CampaignLabel) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes campaign-label relationships. - // Operation statuses are returned. - rpc MutateCampaignLabels(MutateCampaignLabelsRequest) returns (MutateCampaignLabelsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/campaignLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignLabelService.GetCampaignLabel][google.ads.googleads.v4.services.CampaignLabelService.GetCampaignLabel]. -message GetCampaignLabelRequest { - // Required. The resource name of the campaign-label relationship to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignLabel" - } - ]; -} - -// Request message for [CampaignLabelService.MutateCampaignLabels][google.ads.googleads.v4.services.CampaignLabelService.MutateCampaignLabels]. -message MutateCampaignLabelsRequest { - // Required. ID of the customer whose campaign-label relationships are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on campaign-label relationships. - repeated CampaignLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on a campaign-label relationship. -message CampaignLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign-label - // relationship. - google.ads.googleads.v4.resources.CampaignLabel create = 1; - - // Remove operation: A resource name for the campaign-label relationship - // being removed, in this format: - // - // `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}` - string remove = 2; - } -} - -// Response message for a campaign labels mutate. -message MutateCampaignLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignLabelResult results = 2; -} - -// The result for a campaign label mutate. -message MutateCampaignLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/campaign_service.proto b/google/ads/googleads/v4/services/campaign_service.proto deleted file mode 100644 index 2b0c87d35..000000000 --- a/google/ads/googleads/v4/services/campaign_service.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Campaign service. - -// Service to manage campaigns. -service CampaignService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign in full detail. - rpc GetCampaign(GetCampaignRequest) returns (google.ads.googleads.v4.resources.Campaign) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaigns/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaigns. Operation statuses are returned. - rpc MutateCampaigns(MutateCampaignsRequest) returns (MutateCampaignsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/campaigns:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignService.GetCampaign][google.ads.googleads.v4.services.CampaignService.GetCampaign]. -message GetCampaignRequest { - // Required. The resource name of the campaign to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; -} - -// Request message for [CampaignService.MutateCampaigns][google.ads.googleads.v4.services.CampaignService.MutateCampaigns]. -message MutateCampaignsRequest { - // Required. The ID of the customer whose campaigns are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaigns. - repeated CampaignOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a campaign. -message CampaignOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign. - google.ads.googleads.v4.resources.Campaign create = 1; - - // Update operation: The campaign is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.Campaign update = 2; - - // Remove operation: A resource name for the removed campaign is - // expected, in this format: - // - // `customers/{customer_id}/campaigns/{campaign_id}` - string remove = 3; - } -} - -// Response message for campaign mutate. -message MutateCampaignsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignResult results = 2; -} - -// The result for the campaign mutate. -message MutateCampaignResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/campaign_shared_set_service.proto b/google/ads/googleads/v4/services/campaign_shared_set_service.proto deleted file mode 100644 index 2c96856b7..000000000 --- a/google/ads/googleads/v4/services/campaign_shared_set_service.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/campaign_shared_set.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Campaign Shared Set service. - -// Service to manage campaign shared sets. -service CampaignSharedSetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign shared set in full detail. - rpc GetCampaignSharedSet(GetCampaignSharedSetRequest) returns (google.ads.googleads.v4.resources.CampaignSharedSet) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/campaignSharedSets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes campaign shared sets. Operation statuses are returned. - rpc MutateCampaignSharedSets(MutateCampaignSharedSetsRequest) returns (MutateCampaignSharedSetsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/campaignSharedSets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignSharedSetService.GetCampaignSharedSet][google.ads.googleads.v4.services.CampaignSharedSetService.GetCampaignSharedSet]. -message GetCampaignSharedSetRequest { - // Required. The resource name of the campaign shared set to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignSharedSet" - } - ]; -} - -// Request message for [CampaignSharedSetService.MutateCampaignSharedSets][google.ads.googleads.v4.services.CampaignSharedSetService.MutateCampaignSharedSets]. -message MutateCampaignSharedSetsRequest { - // Required. The ID of the customer whose campaign shared sets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign shared sets. - repeated CampaignSharedSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an campaign shared set. -message CampaignSharedSetOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign - // shared set. - google.ads.googleads.v4.resources.CampaignSharedSet create = 1; - - // Remove operation: A resource name for the removed campaign shared set is - // expected, in this format: - // - // `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}` - string remove = 3; - } -} - -// Response message for a campaign shared set mutate. -message MutateCampaignSharedSetsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignSharedSetResult results = 2; -} - -// The result for the campaign shared set mutate. -message MutateCampaignSharedSetResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/carrier_constant_service.proto b/google/ads/googleads/v4/services/carrier_constant_service.proto deleted file mode 100644 index c5892e5a7..000000000 --- a/google/ads/googleads/v4/services/carrier_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/carrier_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CarrierConstantServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the carrier constant service. - -// Service to fetch carrier constants. -service CarrierConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested carrier constant in full detail. - rpc GetCarrierConstant(GetCarrierConstantRequest) returns (google.ads.googleads.v4.resources.CarrierConstant) { - option (google.api.http) = { - get: "/v4/{resource_name=carrierConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CarrierConstantService.GetCarrierConstant][google.ads.googleads.v4.services.CarrierConstantService.GetCarrierConstant]. -message GetCarrierConstantRequest { - // Required. Resource name of the carrier constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CarrierConstant" - } - ]; -} diff --git a/google/ads/googleads/v4/services/change_status_service.proto b/google/ads/googleads/v4/services/change_status_service.proto deleted file mode 100644 index 7cbbff17b..000000000 --- a/google/ads/googleads/v4/services/change_status_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/change_status.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Change Status service. - -// Service to fetch change statuses. -service ChangeStatusService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested change status in full detail. - rpc GetChangeStatus(GetChangeStatusRequest) returns (google.ads.googleads.v4.resources.ChangeStatus) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/changeStatus/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for '[ChangeStatusService.GetChangeStatus][google.ads.googleads.v4.services.ChangeStatusService.GetChangeStatus]'. -message GetChangeStatusRequest { - // Required. The resource name of the change status to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ChangeStatus" - } - ]; -} diff --git a/google/ads/googleads/v4/services/click_view_service.proto b/google/ads/googleads/v4/services/click_view_service.proto deleted file mode 100644 index fcd6bf516..000000000 --- a/google/ads/googleads/v4/services/click_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/click_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ClickViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the ClickView service. - -// Service to fetch click views. -service ClickViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested click view in full detail. - rpc GetClickView(GetClickViewRequest) returns (google.ads.googleads.v4.resources.ClickView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/clickViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ClickViewService.GetClickView][google.ads.googleads.v4.services.ClickViewService.GetClickView]. -message GetClickViewRequest { - // Required. The resource name of the click view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ClickView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/conversion_action_service.proto b/google/ads/googleads/v4/services/conversion_action_service.proto deleted file mode 100644 index b2246e574..000000000 --- a/google/ads/googleads/v4/services/conversion_action_service.proto +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/conversion_action.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Conversion Action service. - -// Service to manage conversion actions. -service ConversionActionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested conversion action. - rpc GetConversionAction(GetConversionActionRequest) returns (google.ads.googleads.v4.resources.ConversionAction) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/conversionActions/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates or removes conversion actions. Operation statuses are - // returned. - rpc MutateConversionActions(MutateConversionActionsRequest) returns (MutateConversionActionsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/conversionActions:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [ConversionActionService.GetConversionAction][google.ads.googleads.v4.services.ConversionActionService.GetConversionAction]. -message GetConversionActionRequest { - // Required. The resource name of the conversion action to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - } - ]; -} - -// Request message for [ConversionActionService.MutateConversionActions][google.ads.googleads.v4.services.ConversionActionService.MutateConversionActions]. -message MutateConversionActionsRequest { - // Required. The ID of the customer whose conversion actions are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual conversion actions. - repeated ConversionActionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a conversion action. -message ConversionActionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new conversion - // action. - google.ads.googleads.v4.resources.ConversionAction create = 1; - - // Update operation: The conversion action is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.ConversionAction update = 2; - - // Remove operation: A resource name for the removed conversion action is - // expected, in this format: - // - // `customers/{customer_id}/conversionActions/{conversion_action_id}` - string remove = 3; - } -} - -// Response message for [ConversionActionService.MutateConversionActions][google.ads.googleads.v4.services.ConversionActionService.MutateConversionActions]. -message MutateConversionActionsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateConversionActionResult results = 2; -} - -// The result for the conversion action mutate. -message MutateConversionActionResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/conversion_adjustment_upload_service.proto b/google/ads/googleads/v4/services/conversion_adjustment_upload_service.proto deleted file mode 100644 index 807b6ebd1..000000000 --- a/google/ads/googleads/v4/services/conversion_adjustment_upload_service.proto +++ /dev/null @@ -1,182 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/enums/conversion_adjustment_type.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/protobuf/wrappers.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAdjustmentUploadServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Service to upload conversion adjustments. -service ConversionAdjustmentUploadService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Processes the given conversion adjustments. - rpc UploadConversionAdjustments(UploadConversionAdjustmentsRequest) returns (UploadConversionAdjustmentsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}:uploadConversionAdjustments" - body: "*" - }; - option (google.api.method_signature) = "customer_id,conversion_adjustments,partial_failure"; - } -} - -// Request message for -// [ConversionAdjustmentUploadService.UploadConversionAdjustments][google.ads.googleads.v4.services.ConversionAdjustmentUploadService.UploadConversionAdjustments]. -message UploadConversionAdjustmentsRequest { - // Required. The ID of the customer performing the upload. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The conversion adjustments that are being uploaded. - repeated ConversionAdjustment conversion_adjustments = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried out - // in one transaction if and only if they are all valid. This should always be - // set to true. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// Response message for -// [ConversionAdjustmentUploadService.UploadConversionAdjustments][google.ads.googleads.v4.services.ConversionAdjustmentUploadService.UploadConversionAdjustments]. -message UploadConversionAdjustmentsResponse { - // Errors that pertain to conversion adjustment failures in the partial - // failure mode. Returned when all errors occur inside the adjustments. If any - // errors occur outside the adjustments (e.g. auth errors), we return an RPC - // level error. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - google.rpc.Status partial_failure_error = 1; - - // Returned for successfully processed conversion adjustments. Proto will be - // empty for rows that received an error. Results are not returned when - // validate_only is true. - repeated ConversionAdjustmentResult results = 2; -} - -// A conversion adjustment. -message ConversionAdjustment { - // Resource name of the conversion action associated with this conversion - // adjustment. Note: Although this resource name consists of a customer id and - // a conversion action id, validation will ignore the customer id and use the - // conversion action id as the sole identifier of the conversion action. - google.protobuf.StringValue conversion_action = 3; - - // The date time at which the adjustment occurred. Must be after the - // conversion_date_time. The timezone must be specified. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - google.protobuf.StringValue adjustment_date_time = 4; - - // The adjustment type. - google.ads.googleads.v4.enums.ConversionAdjustmentTypeEnum.ConversionAdjustmentType adjustment_type = 5; - - // Information needed to restate the conversion's value. - // Required for restatements. Should not be supplied for retractions. An error - // will be returned if provided for a retraction. - // NOTE: If you want to upload a second restatement with a different adjusted - // value, it must have a new, more recent, adjustment occurrence time. - // Otherwise, it will be treated as a duplicate of the previous restatement - // and ignored. - RestatementValue restatement_value = 6; - - // Identifies the conversion to be adjusted. - oneof conversion_identifier { - // Uniquely identifies a conversion that was reported without an order ID - // specified. - GclidDateTimePair gclid_date_time_pair = 1; - - // The order ID of the conversion to be adjusted. If the conversion was - // reported with an order ID specified, that order ID must be used as the - // identifier here. - google.protobuf.StringValue order_id = 2; - } -} - -// Contains information needed to restate a conversion's value. -message RestatementValue { - // The restated conversion value. This is the value of the conversion after - // restatement. For example, to change the value of a conversion from 100 to - // 70, an adjusted value of 70 should be reported. - // NOTE: If you want to upload a second restatement with a different adjusted - // value, it must have a new, more recent, adjustment occurrence time. - // Otherwise, it will be treated as a duplicate of the previous restatement - // and ignored. - google.protobuf.DoubleValue adjusted_value = 1; - - // The currency of the restated value. If not provided, then the default - // currency from the conversion action is used, and if that is not set then - // the account currency is used. This is the ISO 4217 3-character currency - // code e.g. USD or EUR. - google.protobuf.StringValue currency_code = 2; -} - -// Uniquely identifies a conversion that was reported without an order ID -// specified. -message GclidDateTimePair { - // Google click ID (gclid) associated with the original conversion for this - // adjustment. - google.protobuf.StringValue gclid = 1; - - // The date time at which the original conversion for this adjustment - // occurred. The timezone must be specified. The format is "yyyy-mm-dd - // hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - google.protobuf.StringValue conversion_date_time = 2; -} - -// Information identifying a successfully processed ConversionAdjustment. -message ConversionAdjustmentResult { - // Resource name of the conversion action associated with this conversion - // adjustment. - google.protobuf.StringValue conversion_action = 3; - - // The date time at which the adjustment occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - google.protobuf.StringValue adjustment_date_time = 4; - - // The adjustment type. - google.ads.googleads.v4.enums.ConversionAdjustmentTypeEnum.ConversionAdjustmentType adjustment_type = 5; - - // Identifies the conversion that was adjusted. - oneof conversion_identifier { - // Uniquely identifies a conversion that was reported without an order ID - // specified. - GclidDateTimePair gclid_date_time_pair = 1; - - // The order ID of the conversion that was adjusted. - google.protobuf.StringValue order_id = 2; - } -} diff --git a/google/ads/googleads/v4/services/conversion_upload_service.proto b/google/ads/googleads/v4/services/conversion_upload_service.proto deleted file mode 100644 index bcb415ab4..000000000 --- a/google/ads/googleads/v4/services/conversion_upload_service.proto +++ /dev/null @@ -1,236 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/protobuf/wrappers.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ConversionUploadServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Service to upload conversions. -service ConversionUploadService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Processes the given click conversions. - rpc UploadClickConversions(UploadClickConversionsRequest) returns (UploadClickConversionsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}:uploadClickConversions" - body: "*" - }; - option (google.api.method_signature) = "customer_id,conversions,partial_failure"; - } - - // Processes the given call conversions. - rpc UploadCallConversions(UploadCallConversionsRequest) returns (UploadCallConversionsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}:uploadCallConversions" - body: "*" - }; - option (google.api.method_signature) = "customer_id,conversions,partial_failure"; - } -} - -// Request message for [ConversionUploadService.UploadClickConversions][google.ads.googleads.v4.services.ConversionUploadService.UploadClickConversions]. -message UploadClickConversionsRequest { - // Required. The ID of the customer performing the upload. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The conversions that are being uploaded. - repeated ClickConversion conversions = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // This should always be set to true. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// Response message for [ConversionUploadService.UploadClickConversions][google.ads.googleads.v4.services.ConversionUploadService.UploadClickConversions]. -message UploadClickConversionsResponse { - // Errors that pertain to conversion failures in the partial failure mode. - // Returned when all errors occur inside the conversions. If any errors occur - // outside the conversions (e.g. auth errors), we return an RPC level error. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - google.rpc.Status partial_failure_error = 1; - - // Returned for successfully processed conversions. Proto will be empty for - // rows that received an error. Results are not returned when validate_only is - // true. - repeated ClickConversionResult results = 2; -} - -// Request message for [ConversionUploadService.UploadCallConversions][google.ads.googleads.v4.services.ConversionUploadService.UploadCallConversions]. -message UploadCallConversionsRequest { - // Required. The ID of the customer performing the upload. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The conversions that are being uploaded. - repeated CallConversion conversions = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // This should always be set to true. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// Response message for [ConversionUploadService.UploadCallConversions][google.ads.googleads.v4.services.ConversionUploadService.UploadCallConversions]. -message UploadCallConversionsResponse { - // Errors that pertain to conversion failures in the partial failure mode. - // Returned when all errors occur inside the conversions. If any errors occur - // outside the conversions (e.g. auth errors), we return an RPC level error. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - google.rpc.Status partial_failure_error = 1; - - // Returned for successfully processed conversions. Proto will be empty for - // rows that received an error. Results are not returned when validate_only is - // true. - repeated CallConversionResult results = 2; -} - -// A click conversion. -message ClickConversion { - // The Google click ID (gclid) associated with this conversion. - google.protobuf.StringValue gclid = 1; - - // Resource name of the conversion action associated with this conversion. - // Note: Although this resource name consists of a customer id and a - // conversion action id, validation will ignore the customer id and use the - // conversion action id as the sole identifier of the conversion action. - google.protobuf.StringValue conversion_action = 2; - - // The date time at which the conversion occurred. Must be after - // the click time. The timezone must be specified. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. “2019-01-01 12:32:45-08:00”. - google.protobuf.StringValue conversion_date_time = 3; - - // The value of the conversion for the advertiser. - google.protobuf.DoubleValue conversion_value = 4; - - // Currency associated with the conversion value. This is the ISO 4217 - // 3-character currency code. For example: USD, EUR. - google.protobuf.StringValue currency_code = 5; - - // The order ID associated with the conversion. An order id can only be used - // for one conversion per conversion action. - google.protobuf.StringValue order_id = 6; - - // Additional data about externally attributed conversions. This field - // is required for conversions with an externally attributed conversion - // action, but should not be set otherwise. - ExternalAttributionData external_attribution_data = 7; -} - -// A call conversion. -message CallConversion { - // The caller id from which this call was placed. Caller id is expected to be - // in E.164 format with preceding '+' sign. e.g. "+16502531234". - google.protobuf.StringValue caller_id = 1; - - // The date time at which the call occurred. The timezone must be specified. - // The format is "yyyy-mm-dd hh:mm:ss+|-hh:mm", - // e.g. "2019-01-01 12:32:45-08:00". - google.protobuf.StringValue call_start_date_time = 2; - - // Resource name of the conversion action associated with this conversion. - // Note: Although this resource name consists of a customer id and a - // conversion action id, validation will ignore the customer id and use the - // conversion action id as the sole identifier of the conversion action. - google.protobuf.StringValue conversion_action = 3; - - // The date time at which the conversion occurred. Must be after the call - // time. The timezone must be specified. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - google.protobuf.StringValue conversion_date_time = 4; - - // The value of the conversion for the advertiser. - google.protobuf.DoubleValue conversion_value = 5; - - // Currency associated with the conversion value. This is the ISO 4217 - // 3-character currency code. For example: USD, EUR. - google.protobuf.StringValue currency_code = 6; -} - -// Contains additional information about externally attributed conversions. -message ExternalAttributionData { - // Represents the fraction of the conversion that is attributed to the - // Google Ads click. - google.protobuf.DoubleValue external_attribution_credit = 1; - - // Specifies the attribution model name. - google.protobuf.StringValue external_attribution_model = 2; -} - -// Identifying information for a successfully processed ClickConversion. -message ClickConversionResult { - // The Google Click ID (gclid) associated with this conversion. - google.protobuf.StringValue gclid = 1; - - // Resource name of the conversion action associated with this conversion. - google.protobuf.StringValue conversion_action = 2; - - // The date time at which the conversion occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. “2019-01-01 12:32:45-08:00”. - google.protobuf.StringValue conversion_date_time = 3; -} - -// Identifying information for a successfully processed CallConversionUpload. -message CallConversionResult { - // The caller id from which this call was placed. Caller id is expected to be - // in E.164 format with preceding '+' sign. - google.protobuf.StringValue caller_id = 1; - - // The date time at which the call occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - google.protobuf.StringValue call_start_date_time = 2; - - // Resource name of the conversion action associated with this conversion. - google.protobuf.StringValue conversion_action = 3; - - // The date time at which the conversion occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - google.protobuf.StringValue conversion_date_time = 4; -} diff --git a/google/ads/googleads/v4/services/currency_constant_service.proto b/google/ads/googleads/v4/services/currency_constant_service.proto deleted file mode 100644 index de518301e..000000000 --- a/google/ads/googleads/v4/services/currency_constant_service.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/currency_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CurrencyConstantServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Service to fetch currency constants. -service CurrencyConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested currency constant. - rpc GetCurrencyConstant(GetCurrencyConstantRequest) returns (google.ads.googleads.v4.resources.CurrencyConstant) { - option (google.api.http) = { - get: "/v4/{resource_name=currencyConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CurrencyConstantService.GetCurrencyConstant][google.ads.googleads.v4.services.CurrencyConstantService.GetCurrencyConstant]. -message GetCurrencyConstantRequest { - // Required. Resource name of the currency constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CurrencyConstant" - } - ]; -} diff --git a/google/ads/googleads/v4/services/custom_interest_service.proto b/google/ads/googleads/v4/services/custom_interest_service.proto deleted file mode 100644 index 7e10e0b60..000000000 --- a/google/ads/googleads/v4/services/custom_interest_service.proto +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/custom_interest.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Custom Interest service. - -// Service to manage custom interests. -service CustomInterestService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested custom interest in full detail. - rpc GetCustomInterest(GetCustomInterestRequest) returns (google.ads.googleads.v4.resources.CustomInterest) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/customInterests/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates custom interests. Operation statuses are returned. - rpc MutateCustomInterests(MutateCustomInterestsRequest) returns (MutateCustomInterestsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/customInterests:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CustomInterestService.GetCustomInterest][google.ads.googleads.v4.services.CustomInterestService.GetCustomInterest]. -message GetCustomInterestRequest { - // Required. The resource name of the custom interest to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomInterest" - } - ]; -} - -// Request message for [CustomInterestService.MutateCustomInterests][google.ads.googleads.v4.services.CustomInterestService.MutateCustomInterests]. -message MutateCustomInterestsRequest { - // Required. The ID of the customer whose custom interests are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual custom interests. - repeated CustomInterestOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update) on a custom interest. -message CustomInterestOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new custom - // interest. - google.ads.googleads.v4.resources.CustomInterest create = 1; - - // Update operation: The custom interest is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.CustomInterest update = 2; - } -} - -// Response message for custom interest mutate. -message MutateCustomInterestsResponse { - // All results for the mutate. - repeated MutateCustomInterestResult results = 2; -} - -// The result for the custom interest mutate. -message MutateCustomInterestResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/customer_client_link_service.proto b/google/ads/googleads/v4/services/customer_client_link_service.proto deleted file mode 100644 index f21c7d9bb..000000000 --- a/google/ads/googleads/v4/services/customer_client_link_service.proto +++ /dev/null @@ -1,103 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/customer_client_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientLinkServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Service to manage customer client links. -service CustomerClientLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested CustomerClientLink in full detail. - rpc GetCustomerClientLink(GetCustomerClientLinkRequest) returns (google.ads.googleads.v4.resources.CustomerClientLink) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/customerClientLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates a customer client link. Operation statuses are returned. - rpc MutateCustomerClientLink(MutateCustomerClientLinkRequest) returns (MutateCustomerClientLinkResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/customerClientLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for [CustomerClientLinkService.GetCustomerClientLink][google.ads.googleads.v4.services.CustomerClientLinkService.GetCustomerClientLink]. -message GetCustomerClientLinkRequest { - // Required. The resource name of the customer client link to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClientLink" - } - ]; -} - -// Request message for [CustomerClientLinkService.MutateCustomerClientLink][google.ads.googleads.v4.services.CustomerClientLinkService.MutateCustomerClientLink]. -message MutateCustomerClientLinkRequest { - // Required. The ID of the customer whose customer link are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the individual CustomerClientLink. - CustomerClientLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation (create, update) on a CustomerClientLink. -message CustomerClientLinkOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new link. - google.ads.googleads.v4.resources.CustomerClientLink create = 1; - - // Update operation: The link is expected to have a valid resource name. - google.ads.googleads.v4.resources.CustomerClientLink update = 2; - } -} - -// Response message for a CustomerClientLink mutate. -message MutateCustomerClientLinkResponse { - // A result that identifies the resource affected by the mutate request. - MutateCustomerClientLinkResult result = 1; -} - -// The result for a single customer client link mutate. -message MutateCustomerClientLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/customer_client_service.proto b/google/ads/googleads/v4/services/customer_client_service.proto deleted file mode 100644 index eb1fd26f7..000000000 --- a/google/ads/googleads/v4/services/customer_client_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/customer_client.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Customer Client service. - -// Service to get clients in a customer's hierarchy. -service CustomerClientService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested client in full detail. - rpc GetCustomerClient(GetCustomerClientRequest) returns (google.ads.googleads.v4.resources.CustomerClient) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/customerClients/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CustomerClientService.GetCustomerClient][google.ads.googleads.v4.services.CustomerClientService.GetCustomerClient]. -message GetCustomerClientRequest { - // Required. The resource name of the client to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClient" - } - ]; -} diff --git a/google/ads/googleads/v4/services/customer_extension_setting_service.proto b/google/ads/googleads/v4/services/customer_extension_setting_service.proto deleted file mode 100644 index 0b7f9e2f0..000000000 --- a/google/ads/googleads/v4/services/customer_extension_setting_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/customer_extension_setting.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerExtensionSettingServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the CustomerExtensionSetting service. - -// Service to manage customer extension settings. -service CustomerExtensionSettingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer extension setting in full detail. - rpc GetCustomerExtensionSetting(GetCustomerExtensionSettingRequest) returns (google.ads.googleads.v4.resources.CustomerExtensionSetting) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/customerExtensionSettings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes customer extension settings. Operation - // statuses are returned. - rpc MutateCustomerExtensionSettings(MutateCustomerExtensionSettingsRequest) returns (MutateCustomerExtensionSettingsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/customerExtensionSettings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [CustomerExtensionSettingService.GetCustomerExtensionSetting][google.ads.googleads.v4.services.CustomerExtensionSettingService.GetCustomerExtensionSetting]. -message GetCustomerExtensionSettingRequest { - // Required. The resource name of the customer extension setting to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerExtensionSetting" - } - ]; -} - -// Request message for -// [CustomerExtensionSettingService.MutateCustomerExtensionSettings][google.ads.googleads.v4.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings]. -message MutateCustomerExtensionSettingsRequest { - // Required. The ID of the customer whose customer extension settings are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual customer extension - // settings. - repeated CustomerExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a customer extension setting. -message CustomerExtensionSettingOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new customer - // extension setting. - google.ads.googleads.v4.resources.CustomerExtensionSetting create = 1; - - // Update operation: The customer extension setting is expected to have a - // valid resource name. - google.ads.googleads.v4.resources.CustomerExtensionSetting update = 2; - - // Remove operation: A resource name for the removed customer extension - // setting is expected, in this format: - // - // `customers/{customer_id}/customerExtensionSettings/{extension_type}` - string remove = 3; - } -} - -// Response message for a customer extension setting mutate. -message MutateCustomerExtensionSettingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerExtensionSettingResult results = 2; -} - -// The result for the customer extension setting mutate. -message MutateCustomerExtensionSettingResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/customer_feed_service.proto b/google/ads/googleads/v4/services/customer_feed_service.proto deleted file mode 100644 index 9fb1b0d04..000000000 --- a/google/ads/googleads/v4/services/customer_feed_service.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/customer_feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerFeedServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the CustomerFeed service. - -// Service to manage customer feeds. -service CustomerFeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer feed in full detail. - rpc GetCustomerFeed(GetCustomerFeedRequest) returns (google.ads.googleads.v4.resources.CustomerFeed) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/customerFeeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes customer feeds. Operation statuses are - // returned. - rpc MutateCustomerFeeds(MutateCustomerFeedsRequest) returns (MutateCustomerFeedsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/customerFeeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CustomerFeedService.GetCustomerFeed][google.ads.googleads.v4.services.CustomerFeedService.GetCustomerFeed]. -message GetCustomerFeedRequest { - // Required. The resource name of the customer feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerFeed" - } - ]; -} - -// Request message for [CustomerFeedService.MutateCustomerFeeds][google.ads.googleads.v4.services.CustomerFeedService.MutateCustomerFeeds]. -message MutateCustomerFeedsRequest { - // Required. The ID of the customer whose customer feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual customer feeds. - repeated CustomerFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a customer feed. -message CustomerFeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new customer feed. - google.ads.googleads.v4.resources.CustomerFeed create = 1; - - // Update operation: The customer feed is expected to have a valid resource - // name. - google.ads.googleads.v4.resources.CustomerFeed update = 2; - - // Remove operation: A resource name for the removed customer feed is - // expected, in this format: - // - // `customers/{customer_id}/customerFeeds/{feed_id}` - string remove = 3; - } -} - -// Response message for a customer feed mutate. -message MutateCustomerFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerFeedResult results = 2; -} - -// The result for the customer feed mutate. -message MutateCustomerFeedResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/customer_label_service.proto b/google/ads/googleads/v4/services/customer_label_service.proto deleted file mode 100644 index cbe8e87d1..000000000 --- a/google/ads/googleads/v4/services/customer_label_service.proto +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/customer_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerLabelServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Customer Label service. - -// Service to manage labels on customers. -service CustomerLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer-label relationship in full detail. - rpc GetCustomerLabel(GetCustomerLabelRequest) returns (google.ads.googleads.v4.resources.CustomerLabel) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/customerLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes customer-label relationships. - // Operation statuses are returned. - rpc MutateCustomerLabels(MutateCustomerLabelsRequest) returns (MutateCustomerLabelsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/customerLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CustomerLabelService.GetCustomerLabel][google.ads.googleads.v4.services.CustomerLabelService.GetCustomerLabel]. -message GetCustomerLabelRequest { - // Required. The resource name of the customer-label relationship to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerLabel" - } - ]; -} - -// Request message for [CustomerLabelService.MutateCustomerLabels][google.ads.googleads.v4.services.CustomerLabelService.MutateCustomerLabels]. -message MutateCustomerLabelsRequest { - // Required. ID of the customer whose customer-label relationships are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on customer-label relationships. - repeated CustomerLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on a customer-label relationship. -message CustomerLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new customer-label - // relationship. - google.ads.googleads.v4.resources.CustomerLabel create = 1; - - // Remove operation: A resource name for the customer-label relationship - // being removed, in this format: - // - // `customers/{customer_id}/customerLabels/{label_id}` - string remove = 2; - } -} - -// Response message for a customer labels mutate. -message MutateCustomerLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerLabelResult results = 2; -} - -// The result for a customer label mutate. -message MutateCustomerLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/customer_manager_link_service.proto b/google/ads/googleads/v4/services/customer_manager_link_service.proto deleted file mode 100644 index 091dfd839..000000000 --- a/google/ads/googleads/v4/services/customer_manager_link_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/customer_manager_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerManagerLinkServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Service to manage customer-manager links. -service CustomerManagerLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested CustomerManagerLink in full detail. - rpc GetCustomerManagerLink(GetCustomerManagerLinkRequest) returns (google.ads.googleads.v4.resources.CustomerManagerLink) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/customerManagerLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates customer manager links. Operation statuses are returned. - rpc MutateCustomerManagerLink(MutateCustomerManagerLinkRequest) returns (MutateCustomerManagerLinkResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/customerManagerLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Moves a client customer to a new manager customer. - // This simplifies the complex request that requires two operations to move - // a client customer to a new manager. i.e: - // 1. Update operation with Status INACTIVE (previous manager) and, - // 2. Update operation with Status ACTIVE (new manager). - rpc MoveManagerLink(MoveManagerLinkRequest) returns (MoveManagerLinkResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" - body: "*" - }; - option (google.api.method_signature) = "customer_id,previous_customer_manager_link,new_manager"; - } -} - -// Request message for [CustomerManagerLinkService.GetCustomerManagerLink][google.ads.googleads.v4.services.CustomerManagerLinkService.GetCustomerManagerLink]. -message GetCustomerManagerLinkRequest { - // Required. The resource name of the CustomerManagerLink to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerManagerLink" - } - ]; -} - -// Request message for [CustomerManagerLinkService.MutateCustomerManagerLink][google.ads.googleads.v4.services.CustomerManagerLinkService.MutateCustomerManagerLink]. -message MutateCustomerManagerLinkRequest { - // Required. The ID of the customer whose customer manager links are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual customer manager links. - repeated CustomerManagerLinkOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Request message for [CustomerManagerLinkService.MoveManagerLink][google.ads.googleads.v4.services.CustomerManagerLinkService.MoveManagerLink]. -message MoveManagerLinkRequest { - // Required. The ID of the client customer that is being moved. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The resource name of the previous CustomerManagerLink. - // The resource name has the form: - // `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}` - string previous_customer_manager_link = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. The resource name of the new manager customer that the client wants to move - // to. Customer resource names have the format: "customers/{customer_id}" - string new_manager = 3 [(google.api.field_behavior) = REQUIRED]; -} - -// Updates the status of a CustomerManagerLink. -// The following actions are possible: -// 1. Update operation with status ACTIVE accepts a pending invitation. -// 2. Update operation with status REFUSED declines a pending invitation. -// 3. Update operation with status INACTIVE terminates link to manager. -message CustomerManagerLinkOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Update operation: The link is expected to have a valid resource name. - google.ads.googleads.v4.resources.CustomerManagerLink update = 2; - } -} - -// Response message for a CustomerManagerLink mutate. -message MutateCustomerManagerLinkResponse { - // A result that identifies the resource affected by the mutate request. - repeated MutateCustomerManagerLinkResult results = 1; -} - -// Response message for a CustomerManagerLink moveManagerLink. -message MoveManagerLinkResponse { - // Returned for successful operations. Represents a CustomerManagerLink - // resource of the newly created link between client customer and new manager - // customer. - string resource_name = 1; -} - -// The result for the customer manager link mutate. -message MutateCustomerManagerLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/customer_negative_criterion_service.proto b/google/ads/googleads/v4/services/customer_negative_criterion_service.proto deleted file mode 100644 index b6f526530..000000000 --- a/google/ads/googleads/v4/services/customer_negative_criterion_service.proto +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/customer_negative_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerNegativeCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Customer Negative Criterion service. - -// Service to manage customer negative criteria. -service CustomerNegativeCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested criterion in full detail. - rpc GetCustomerNegativeCriterion(GetCustomerNegativeCriterionRequest) returns (google.ads.googleads.v4.resources.CustomerNegativeCriterion) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/customerNegativeCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes criteria. Operation statuses are returned. - rpc MutateCustomerNegativeCriteria(MutateCustomerNegativeCriteriaRequest) returns (MutateCustomerNegativeCriteriaResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/customerNegativeCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [CustomerNegativeCriterionService.GetCustomerNegativeCriterion][google.ads.googleads.v4.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion]. -message GetCustomerNegativeCriterionRequest { - // Required. The resource name of the criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerNegativeCriterion" - } - ]; -} - -// Request message for -// [CustomerNegativeCriterionService.MutateCustomerNegativeCriteria][google.ads.googleads.v4.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria]. -message MutateCustomerNegativeCriteriaRequest { - // Required. The ID of the customer whose criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual criteria. - repeated CustomerNegativeCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create or remove) on a customer level negative criterion. -message CustomerNegativeCriterionOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new criterion. - google.ads.googleads.v4.resources.CustomerNegativeCriterion create = 1; - - // Remove operation: A resource name for the removed criterion is expected, - // in this format: - // - // `customers/{customer_id}/customerNegativeCriteria/{criterion_id}` - string remove = 2; - } -} - -// Response message for customer negative criterion mutate. -message MutateCustomerNegativeCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerNegativeCriteriaResult results = 2; -} - -// The result for the criterion mutate. -message MutateCustomerNegativeCriteriaResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/customer_service.proto b/google/ads/googleads/v4/services/customer_service.proto deleted file mode 100644 index 7393e410e..000000000 --- a/google/ads/googleads/v4/services/customer_service.proto +++ /dev/null @@ -1,162 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/enums/access_role.proto"; -import "google/ads/googleads/v4/resources/customer.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/protobuf/wrappers.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Customer service. - -// Service to manage customers. -service CustomerService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer in full detail. - rpc GetCustomer(GetCustomerRequest) returns (google.ads.googleads.v4.resources.Customer) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Updates a customer. Operation statuses are returned. - rpc MutateCustomer(MutateCustomerRequest) returns (MutateCustomerResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } - - // Returns resource names of customers directly accessible by the - // user authenticating the call. - rpc ListAccessibleCustomers(ListAccessibleCustomersRequest) returns (ListAccessibleCustomersResponse) { - option (google.api.http) = { - get: "/v4/customers:listAccessibleCustomers" - }; - } - - // Creates a new client under manager. The new client customer is returned. - rpc CreateCustomerClient(CreateCustomerClientRequest) returns (CreateCustomerClientResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}:createCustomerClient" - body: "*" - }; - option (google.api.method_signature) = "customer_id,customer_client"; - } -} - -// Request message for [CustomerService.GetCustomer][google.ads.googleads.v4.services.CustomerService.GetCustomer]. -message GetCustomerRequest { - // Required. The resource name of the customer to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; -} - -// Request message for [CustomerService.MutateCustomer][google.ads.googleads.v4.services.CustomerService.MutateCustomer]. -message MutateCustomerRequest { - // Required. The ID of the customer being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the customer - CustomerOperation operation = 4 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 5; -} - -// Request message for [CustomerService.CreateCustomerClient][google.ads.googleads.v4.services.CustomerService.CreateCustomerClient]. -message CreateCustomerClientRequest { - // Required. The ID of the Manager under whom client customer is being created. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The new client customer to create. The resource name on this customer - // will be ignored. - google.ads.googleads.v4.resources.Customer customer_client = 2 [(google.api.field_behavior) = REQUIRED]; - - // Email address of the user who should be invited on the created client - // customer. Accessible only to customers on the allow-list. - google.protobuf.StringValue email_address = 3; - - // The proposed role of user on the created client customer. - // Accessible only to customers on the allow-list. - google.ads.googleads.v4.enums.AccessRoleEnum.AccessRole access_role = 4; -} - -// A single update on a customer. -message CustomerOperation { - // Mutate operation. Only updates are supported for customer. - google.ads.googleads.v4.resources.Customer update = 1; - - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 2; -} - -// Response message for CreateCustomerClient mutate. -message CreateCustomerClientResponse { - // The resource name of the newly created customer client. - string resource_name = 2; - - // Link for inviting user to access the created customer. Accessible to - // allowlisted customers only. - string invitation_link = 3; -} - -// Response message for customer mutate. -message MutateCustomerResponse { - // Result for the mutate. - MutateCustomerResult result = 2; -} - -// The result for the customer mutate. -message MutateCustomerResult { - // Returned for successful operations. - string resource_name = 1; -} - -// Request message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v4.services.CustomerService.ListAccessibleCustomers]. -message ListAccessibleCustomersRequest { - -} - -// Response message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v4.services.CustomerService.ListAccessibleCustomers]. -message ListAccessibleCustomersResponse { - // Resource name of customers directly accessible by the - // user authenticating the call. - repeated string resource_names = 1; -} diff --git a/google/ads/googleads/v4/services/detail_placement_view_service.proto b/google/ads/googleads/v4/services/detail_placement_view_service.proto deleted file mode 100644 index 9041fee91..000000000 --- a/google/ads/googleads/v4/services/detail_placement_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/detail_placement_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DetailPlacementViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Detail Placement View service. - -// Service to fetch Detail Placement views. -service DetailPlacementViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Detail Placement view in full detail. - rpc GetDetailPlacementView(GetDetailPlacementViewRequest) returns (google.ads.googleads.v4.resources.DetailPlacementView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/detailPlacementViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [DetailPlacementViewService.GetDetailPlacementView][google.ads.googleads.v4.services.DetailPlacementViewService.GetDetailPlacementView]. -message GetDetailPlacementViewRequest { - // Required. The resource name of the Detail Placement view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DetailPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/display_keyword_view_service.proto b/google/ads/googleads/v4/services/display_keyword_view_service.proto deleted file mode 100644 index 43b22a76c..000000000 --- a/google/ads/googleads/v4/services/display_keyword_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/display_keyword_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DisplayKeywordViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Display Keyword View service. - -// Service to manage display keyword views. -service DisplayKeywordViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested display keyword view in full detail. - rpc GetDisplayKeywordView(GetDisplayKeywordViewRequest) returns (google.ads.googleads.v4.resources.DisplayKeywordView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/displayKeywordViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [DisplayKeywordViewService.GetDisplayKeywordView][google.ads.googleads.v4.services.DisplayKeywordViewService.GetDisplayKeywordView]. -message GetDisplayKeywordViewRequest { - // Required. The resource name of the display keyword view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DisplayKeywordView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/distance_view_service.proto b/google/ads/googleads/v4/services/distance_view_service.proto deleted file mode 100644 index 75a770afb..000000000 --- a/google/ads/googleads/v4/services/distance_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/distance_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DistanceViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Distance View service. - -// Service to fetch distance views. -service DistanceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the attributes of the requested distance view. - rpc GetDistanceView(GetDistanceViewRequest) returns (google.ads.googleads.v4.resources.DistanceView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/distanceViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [DistanceViewService.GetDistanceView][google.ads.googleads.v4.services.DistanceViewService.GetDistanceView]. -message GetDistanceViewRequest { - // Required. The resource name of the distance view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DistanceView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/domain_category_service.proto b/google/ads/googleads/v4/services/domain_category_service.proto deleted file mode 100644 index d93f2910c..000000000 --- a/google/ads/googleads/v4/services/domain_category_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/domain_category.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DomainCategoryServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the DomainCategory Service. - -// Service to fetch domain categories. -service DomainCategoryService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested domain category. - rpc GetDomainCategory(GetDomainCategoryRequest) returns (google.ads.googleads.v4.resources.DomainCategory) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/domainCategories/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [DomainCategoryService.GetDomainCategory][google.ads.googleads.v4.services.DomainCategoryService.GetDomainCategory]. -message GetDomainCategoryRequest { - // Required. Resource name of the domain category to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DomainCategory" - } - ]; -} diff --git a/google/ads/googleads/v4/services/dynamic_search_ads_search_term_view_service.proto b/google/ads/googleads/v4/services/dynamic_search_ads_search_term_view_service.proto deleted file mode 100644 index 437378112..000000000 --- a/google/ads/googleads/v4/services/dynamic_search_ads_search_term_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/dynamic_search_ads_search_term_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DynamicSearchAdsSearchTermViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Dynamic Search Ads Search Term View service. - -// Service to fetch dynamic search ads views. -service DynamicSearchAdsSearchTermViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested dynamic search ads search term view in full detail. - rpc GetDynamicSearchAdsSearchTermView(GetDynamicSearchAdsSearchTermViewRequest) returns (google.ads.googleads.v4.resources.DynamicSearchAdsSearchTermView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView][google.ads.googleads.v4.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView]. -message GetDynamicSearchAdsSearchTermViewRequest { - // Required. The resource name of the dynamic search ads search term view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/expanded_landing_page_view_service.proto b/google/ads/googleads/v4/services/expanded_landing_page_view_service.proto deleted file mode 100644 index 6570a07d9..000000000 --- a/google/ads/googleads/v4/services/expanded_landing_page_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/expanded_landing_page_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ExpandedLandingPageViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the expanded landing page view service. - -// Service to fetch expanded landing page views. -service ExpandedLandingPageViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested expanded landing page view in full detail. - rpc GetExpandedLandingPageView(GetExpandedLandingPageViewRequest) returns (google.ads.googleads.v4.resources.ExpandedLandingPageView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/expandedLandingPageViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [ExpandedLandingPageViewService.GetExpandedLandingPageView][google.ads.googleads.v4.services.ExpandedLandingPageViewService.GetExpandedLandingPageView]. -message GetExpandedLandingPageViewRequest { - // Required. The resource name of the expanded landing page view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExpandedLandingPageView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/extension_feed_item_service.proto b/google/ads/googleads/v4/services/extension_feed_item_service.proto deleted file mode 100644 index afe3002be..000000000 --- a/google/ads/googleads/v4/services/extension_feed_item_service.proto +++ /dev/null @@ -1,132 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/extension_feed_item.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionFeedItemServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the ExtensionFeedItem service. - -// Service to manage extension feed items. -service ExtensionFeedItemService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested extension feed item in full detail. - rpc GetExtensionFeedItem(GetExtensionFeedItemRequest) returns (google.ads.googleads.v4.resources.ExtensionFeedItem) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/extensionFeedItems/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes extension feed items. Operation - // statuses are returned. - rpc MutateExtensionFeedItems(MutateExtensionFeedItemsRequest) returns (MutateExtensionFeedItemsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/extensionFeedItems:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [ExtensionFeedItemService.GetExtensionFeedItem][google.ads.googleads.v4.services.ExtensionFeedItemService.GetExtensionFeedItem]. -message GetExtensionFeedItemRequest { - // Required. The resource name of the extension feed item to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - } - ]; -} - -// Request message for [ExtensionFeedItemService.MutateExtensionFeedItems][google.ads.googleads.v4.services.ExtensionFeedItemService.MutateExtensionFeedItems]. -message MutateExtensionFeedItemsRequest { - // Required. The ID of the customer whose extension feed items are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual extension feed items. - repeated ExtensionFeedItemOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on an extension feed item. -message ExtensionFeedItemOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new extension - // feed item. - google.ads.googleads.v4.resources.ExtensionFeedItem create = 1; - - // Update operation: The extension feed item is expected to have a - // valid resource name. - google.ads.googleads.v4.resources.ExtensionFeedItem update = 2; - - // Remove operation: A resource name for the removed extension feed item - // is expected, in this format: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - string remove = 3; - } -} - -// Response message for an extension feed item mutate. -message MutateExtensionFeedItemsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateExtensionFeedItemResult results = 2; -} - -// The result for the extension feed item mutate. -message MutateExtensionFeedItemResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/feed_item_service.proto b/google/ads/googleads/v4/services/feed_item_service.proto deleted file mode 100644 index e9d95cd5b..000000000 --- a/google/ads/googleads/v4/services/feed_item_service.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/feed_item.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the FeedItem service. - -// Service to manage feed items. -service FeedItemService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed item in full detail. - rpc GetFeedItem(GetFeedItemRequest) returns (google.ads.googleads.v4.resources.FeedItem) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/feedItems/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes feed items. Operation statuses are - // returned. - rpc MutateFeedItems(MutateFeedItemsRequest) returns (MutateFeedItemsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/feedItems:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedItemService.GetFeedItem][google.ads.googleads.v4.services.FeedItemService.GetFeedItem]. -message GetFeedItemRequest { - // Required. The resource name of the feed item to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; -} - -// Request message for [FeedItemService.MutateFeedItems][google.ads.googleads.v4.services.FeedItemService.MutateFeedItems]. -message MutateFeedItemsRequest { - // Required. The ID of the customer whose feed items are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feed items. - repeated FeedItemOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on an feed item. -message FeedItemOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed item. - google.ads.googleads.v4.resources.FeedItem create = 1; - - // Update operation: The feed item is expected to have a valid resource - // name. - google.ads.googleads.v4.resources.FeedItem update = 2; - - // Remove operation: A resource name for the removed feed item is - // expected, in this format: - // - // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}` - string remove = 3; - } -} - -// Response message for an feed item mutate. -message MutateFeedItemsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateFeedItemResult results = 2; -} - -// The result for the feed item mutate. -message MutateFeedItemResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/feed_item_target_service.proto b/google/ads/googleads/v4/services/feed_item_target_service.proto deleted file mode 100644 index feb6e20bf..000000000 --- a/google/ads/googleads/v4/services/feed_item_target_service.proto +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/feed_item_target.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the FeedItemTarget service. - -// Service to manage feed item targets. -service FeedItemTargetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed item targets in full detail. - rpc GetFeedItemTarget(GetFeedItemTargetRequest) returns (google.ads.googleads.v4.resources.FeedItemTarget) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/feedItemTargets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes feed item targets. Operation statuses are returned. - rpc MutateFeedItemTargets(MutateFeedItemTargetsRequest) returns (MutateFeedItemTargetsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/feedItemTargets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedItemTargetService.GetFeedItemTarget][google.ads.googleads.v4.services.FeedItemTargetService.GetFeedItemTarget]. -message GetFeedItemTargetRequest { - // Required. The resource name of the feed item targets to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItemTarget" - } - ]; -} - -// Request message for [FeedItemTargetService.MutateFeedItemTargets][google.ads.googleads.v4.services.FeedItemTargetService.MutateFeedItemTargets]. -message MutateFeedItemTargetsRequest { - // Required. The ID of the customer whose feed item targets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feed item targets. - repeated FeedItemTargetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation (create, remove) on an feed item target. -message FeedItemTargetOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed item - // target. - google.ads.googleads.v4.resources.FeedItemTarget create = 1; - - // Remove operation: A resource name for the removed feed item target is - // expected, in this format: - // - // `customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}` - string remove = 2; - } -} - -// Response message for an feed item target mutate. -message MutateFeedItemTargetsResponse { - // All results for the mutate. - repeated MutateFeedItemTargetResult results = 2; -} - -// The result for the feed item target mutate. -message MutateFeedItemTargetResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/feed_mapping_service.proto b/google/ads/googleads/v4/services/feed_mapping_service.proto deleted file mode 100644 index 405b1c543..000000000 --- a/google/ads/googleads/v4/services/feed_mapping_service.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/feed_mapping.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the FeedMapping service. - -// Service to manage feed mappings. -service FeedMappingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed mapping in full detail. - rpc GetFeedMapping(GetFeedMappingRequest) returns (google.ads.googleads.v4.resources.FeedMapping) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/feedMappings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes feed mappings. Operation statuses are - // returned. - rpc MutateFeedMappings(MutateFeedMappingsRequest) returns (MutateFeedMappingsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/feedMappings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedMappingService.GetFeedMapping][google.ads.googleads.v4.services.FeedMappingService.GetFeedMapping]. -message GetFeedMappingRequest { - // Required. The resource name of the feed mapping to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedMapping" - } - ]; -} - -// Request message for [FeedMappingService.MutateFeedMappings][google.ads.googleads.v4.services.FeedMappingService.MutateFeedMappings]. -message MutateFeedMappingsRequest { - // Required. The ID of the customer whose feed mappings are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feed mappings. - repeated FeedMappingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on a feed mapping. -message FeedMappingOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed mapping. - google.ads.googleads.v4.resources.FeedMapping create = 1; - - // Remove operation: A resource name for the removed feed mapping is - // expected, in this format: - // - // `customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}` - string remove = 3; - } -} - -// Response message for a feed mapping mutate. -message MutateFeedMappingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateFeedMappingResult results = 2; -} - -// The result for the feed mapping mutate. -message MutateFeedMappingResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/feed_placeholder_view_service.proto b/google/ads/googleads/v4/services/feed_placeholder_view_service.proto deleted file mode 100644 index 3f0ef73e2..000000000 --- a/google/ads/googleads/v4/services/feed_placeholder_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/feed_placeholder_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedPlaceholderViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the FeedPlaceholderView service. - -// Service to fetch feed placeholder views. -service FeedPlaceholderViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed placeholder view in full detail. - rpc GetFeedPlaceholderView(GetFeedPlaceholderViewRequest) returns (google.ads.googleads.v4.resources.FeedPlaceholderView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/feedPlaceholderViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [FeedPlaceholderViewService.GetFeedPlaceholderView][google.ads.googleads.v4.services.FeedPlaceholderViewService.GetFeedPlaceholderView]. -message GetFeedPlaceholderViewRequest { - // Required. The resource name of the feed placeholder view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedPlaceholderView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/feed_service.proto b/google/ads/googleads/v4/services/feed_service.proto deleted file mode 100644 index 49898c977..000000000 --- a/google/ads/googleads/v4/services/feed_service.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Feed service. - -// Service to manage feeds. -service FeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed in full detail. - rpc GetFeed(GetFeedRequest) returns (google.ads.googleads.v4.resources.Feed) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/feeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes feeds. Operation statuses are - // returned. - rpc MutateFeeds(MutateFeedsRequest) returns (MutateFeedsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/feeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedService.GetFeed][google.ads.googleads.v4.services.FeedService.GetFeed]. -message GetFeedRequest { - // Required. The resource name of the feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; -} - -// Request message for [FeedService.MutateFeeds][google.ads.googleads.v4.services.FeedService.MutateFeeds]. -message MutateFeedsRequest { - // Required. The ID of the customer whose feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feeds. - repeated FeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on an feed. -message FeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed. - google.ads.googleads.v4.resources.Feed create = 1; - - // Update operation: The feed is expected to have a valid resource - // name. - google.ads.googleads.v4.resources.Feed update = 2; - - // Remove operation: A resource name for the removed feed is - // expected, in this format: - // - // `customers/{customer_id}/feeds/{feed_id}` - string remove = 3; - } -} - -// Response message for an feed mutate. -message MutateFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateFeedResult results = 2; -} - -// The result for the feed mutate. -message MutateFeedResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/gender_view_service.proto b/google/ads/googleads/v4/services/gender_view_service.proto deleted file mode 100644 index a0ca9575c..000000000 --- a/google/ads/googleads/v4/services/gender_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/gender_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GenderViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Gender View service. - -// Service to manage gender views. -service GenderViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested gender view in full detail. - rpc GetGenderView(GetGenderViewRequest) returns (google.ads.googleads.v4.resources.GenderView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/genderViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [GenderViewService.GetGenderView][google.ads.googleads.v4.services.GenderViewService.GetGenderView]. -message GetGenderViewRequest { - // Required. The resource name of the gender view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GenderView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/geo_target_constant_service.proto b/google/ads/googleads/v4/services/geo_target_constant_service.proto deleted file mode 100644 index 81032848b..000000000 --- a/google/ads/googleads/v4/services/geo_target_constant_service.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/geo_target_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Geo target constant service. - -// Service to fetch geo target constants. -service GeoTargetConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested geo target constant in full detail. - rpc GetGeoTargetConstant(GetGeoTargetConstantRequest) returns (google.ads.googleads.v4.resources.GeoTargetConstant) { - option (google.api.http) = { - get: "/v4/{resource_name=geoTargetConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Returns GeoTargetConstant suggestions by location name or by resource name. - rpc SuggestGeoTargetConstants(SuggestGeoTargetConstantsRequest) returns (SuggestGeoTargetConstantsResponse) { - option (google.api.http) = { - post: "/v4/geoTargetConstants:suggest" - body: "*" - }; - } -} - -// Request message for [GeoTargetConstantService.GetGeoTargetConstant][google.ads.googleads.v4.services.GeoTargetConstantService.GetGeoTargetConstant]. -message GetGeoTargetConstantRequest { - // Required. The resource name of the geo target constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; -} - -// Request message for -// [GeoTargetConstantService.SuggestGeoTargetConstants][google.ads.googleads.v4.services.GeoTargetConstantService.SuggestGeoTargetConstants]. -message SuggestGeoTargetConstantsRequest { - // A list of location names. - message LocationNames { - // A list of location names. - repeated google.protobuf.StringValue names = 1; - } - - // A list of geo target constant resource names. - message GeoTargets { - // A list of geo target constant resource names. - repeated google.protobuf.StringValue geo_target_constants = 1; - } - - // If possible, returned geo targets are translated using this locale. If not, - // en is used by default. This is also used as a hint for returned geo - // targets. - google.protobuf.StringValue locale = 3; - - // Returned geo targets are restricted to this country code. - google.protobuf.StringValue country_code = 5; - - // Required. A selector of geo target constants. - oneof query { - // The location names to search by. At most 25 names can be set. - LocationNames location_names = 1; - - // The geo target constant resource names to filter by. - GeoTargets geo_targets = 2; - } -} - -// Response message for [GeoTargetConstantService.SuggestGeoTargetConstants][google.ads.googleads.v4.services.GeoTargetConstantService.SuggestGeoTargetConstants]. -message SuggestGeoTargetConstantsResponse { - // Geo target constant suggestions. - repeated GeoTargetConstantSuggestion geo_target_constant_suggestions = 1; -} - -// A geo target constant suggestion. -message GeoTargetConstantSuggestion { - // The language this GeoTargetConstantSuggestion is currently translated to. - // It affects the name of geo target fields. For example, if locale=en, then - // name=Spain. If locale=es, then name=España. The default locale will be - // returned if no translation exists for the locale in the request. - google.protobuf.StringValue locale = 1; - - // Approximate user population that will be targeted, rounded to the - // nearest 100. - google.protobuf.Int64Value reach = 2; - - // If the request searched by location name, this is the location name that - // matched the geo target. - google.protobuf.StringValue search_term = 3; - - // The GeoTargetConstant result. - google.ads.googleads.v4.resources.GeoTargetConstant geo_target_constant = 4; - - // The list of parents of the geo target constant. - repeated google.ads.googleads.v4.resources.GeoTargetConstant geo_target_constant_parents = 5; -} diff --git a/google/ads/googleads/v4/services/geographic_view_service.proto b/google/ads/googleads/v4/services/geographic_view_service.proto deleted file mode 100644 index 474cb5e91..000000000 --- a/google/ads/googleads/v4/services/geographic_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/geographic_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GeographicViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the GeographicViewService. - -// Service to manage geographic views. -service GeographicViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested geographic view in full detail. - rpc GetGeographicView(GetGeographicViewRequest) returns (google.ads.googleads.v4.resources.GeographicView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/geographicViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [GeographicViewService.GetGeographicView][google.ads.googleads.v4.services.GeographicViewService.GetGeographicView]. -message GetGeographicViewRequest { - // Required. The resource name of the geographic view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeographicView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/google_ads_field_service.proto b/google/ads/googleads/v4/services/google_ads_field_service.proto deleted file mode 100644 index 27f22e41c..000000000 --- a/google/ads/googleads/v4/services/google_ads_field_service.proto +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/google_ads_field.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the GoogleAdsFieldService - -// Service to fetch Google Ads API fields. -service GoogleAdsFieldService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns just the requested field. - rpc GetGoogleAdsField(GetGoogleAdsFieldRequest) returns (google.ads.googleads.v4.resources.GoogleAdsField) { - option (google.api.http) = { - get: "/v4/{resource_name=googleAdsFields/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Returns all fields that match the search query. - rpc SearchGoogleAdsFields(SearchGoogleAdsFieldsRequest) returns (SearchGoogleAdsFieldsResponse) { - option (google.api.http) = { - post: "/v4/googleAdsFields:search" - body: "*" - }; - option (google.api.method_signature) = "query"; - } -} - -// Request message for [GoogleAdsFieldService.GetGoogleAdsField][google.ads.googleads.v4.services.GoogleAdsFieldService.GetGoogleAdsField]. -message GetGoogleAdsFieldRequest { - // Required. The resource name of the field to get. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GoogleAdsField" - } - ]; -} - -// Request message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v4.services.GoogleAdsFieldService.SearchGoogleAdsFields]. -message SearchGoogleAdsFieldsRequest { - // Required. The query string. - string query = 1 [(google.api.field_behavior) = REQUIRED]; - - // Token of the page to retrieve. If not specified, the first page of - // results will be returned. Use the value obtained from `next_page_token` - // in the previous response in order to request the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When too large a page is requested, the server may decide to further - // limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v4.services.GoogleAdsFieldService.SearchGoogleAdsFields]. -message SearchGoogleAdsFieldsResponse { - // The list of fields that matched the query. - repeated google.ads.googleads.v4.resources.GoogleAdsField results = 1; - - // Pagination token used to retrieve the next page of results. Pass the - // content of this string as the `page_token` attribute of the next request. - // `next_page_token` is not returned for the last page. - string next_page_token = 2; - - // Total number of results that match the query ignoring the LIMIT clause. - int64 total_results_count = 3; -} diff --git a/google/ads/googleads/v4/services/google_ads_service.proto b/google/ads/googleads/v4/services/google_ads_service.proto deleted file mode 100644 index e6174261d..000000000 --- a/google/ads/googleads/v4/services/google_ads_service.proto +++ /dev/null @@ -1,976 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/common/metrics.proto"; -import "google/ads/googleads/v4/common/segments.proto"; -import "google/ads/googleads/v4/enums/summary_row_setting.proto"; -import "google/ads/googleads/v4/resources/account_budget.proto"; -import "google/ads/googleads/v4/resources/account_budget_proposal.proto"; -import "google/ads/googleads/v4/resources/account_link.proto"; -import "google/ads/googleads/v4/resources/ad_group.proto"; -import "google/ads/googleads/v4/resources/ad_group_ad.proto"; -import "google/ads/googleads/v4/resources/ad_group_ad_asset_view.proto"; -import "google/ads/googleads/v4/resources/ad_group_ad_label.proto"; -import "google/ads/googleads/v4/resources/ad_group_audience_view.proto"; -import "google/ads/googleads/v4/resources/ad_group_bid_modifier.proto"; -import "google/ads/googleads/v4/resources/ad_group_criterion.proto"; -import "google/ads/googleads/v4/resources/ad_group_criterion_label.proto"; -import "google/ads/googleads/v4/resources/ad_group_criterion_simulation.proto"; -import "google/ads/googleads/v4/resources/ad_group_extension_setting.proto"; -import "google/ads/googleads/v4/resources/ad_group_feed.proto"; -import "google/ads/googleads/v4/resources/ad_group_label.proto"; -import "google/ads/googleads/v4/resources/ad_group_simulation.proto"; -import "google/ads/googleads/v4/resources/ad_parameter.proto"; -import "google/ads/googleads/v4/resources/ad_schedule_view.proto"; -import "google/ads/googleads/v4/resources/age_range_view.proto"; -import "google/ads/googleads/v4/resources/asset.proto"; -import "google/ads/googleads/v4/resources/batch_job.proto"; -import "google/ads/googleads/v4/resources/bidding_strategy.proto"; -import "google/ads/googleads/v4/resources/billing_setup.proto"; -import "google/ads/googleads/v4/resources/campaign.proto"; -import "google/ads/googleads/v4/resources/campaign_audience_view.proto"; -import "google/ads/googleads/v4/resources/campaign_bid_modifier.proto"; -import "google/ads/googleads/v4/resources/campaign_budget.proto"; -import "google/ads/googleads/v4/resources/campaign_criterion.proto"; -import "google/ads/googleads/v4/resources/campaign_criterion_simulation.proto"; -import "google/ads/googleads/v4/resources/campaign_draft.proto"; -import "google/ads/googleads/v4/resources/campaign_experiment.proto"; -import "google/ads/googleads/v4/resources/campaign_extension_setting.proto"; -import "google/ads/googleads/v4/resources/campaign_feed.proto"; -import "google/ads/googleads/v4/resources/campaign_label.proto"; -import "google/ads/googleads/v4/resources/campaign_shared_set.proto"; -import "google/ads/googleads/v4/resources/carrier_constant.proto"; -import "google/ads/googleads/v4/resources/change_status.proto"; -import "google/ads/googleads/v4/resources/click_view.proto"; -import "google/ads/googleads/v4/resources/conversion_action.proto"; -import "google/ads/googleads/v4/resources/currency_constant.proto"; -import "google/ads/googleads/v4/resources/custom_interest.proto"; -import "google/ads/googleads/v4/resources/customer.proto"; -import "google/ads/googleads/v4/resources/customer_client.proto"; -import "google/ads/googleads/v4/resources/customer_client_link.proto"; -import "google/ads/googleads/v4/resources/customer_extension_setting.proto"; -import "google/ads/googleads/v4/resources/customer_feed.proto"; -import "google/ads/googleads/v4/resources/customer_label.proto"; -import "google/ads/googleads/v4/resources/customer_manager_link.proto"; -import "google/ads/googleads/v4/resources/customer_negative_criterion.proto"; -import "google/ads/googleads/v4/resources/detail_placement_view.proto"; -import "google/ads/googleads/v4/resources/display_keyword_view.proto"; -import "google/ads/googleads/v4/resources/distance_view.proto"; -import "google/ads/googleads/v4/resources/domain_category.proto"; -import "google/ads/googleads/v4/resources/dynamic_search_ads_search_term_view.proto"; -import "google/ads/googleads/v4/resources/expanded_landing_page_view.proto"; -import "google/ads/googleads/v4/resources/extension_feed_item.proto"; -import "google/ads/googleads/v4/resources/feed.proto"; -import "google/ads/googleads/v4/resources/feed_item.proto"; -import "google/ads/googleads/v4/resources/feed_item_target.proto"; -import "google/ads/googleads/v4/resources/feed_mapping.proto"; -import "google/ads/googleads/v4/resources/feed_placeholder_view.proto"; -import "google/ads/googleads/v4/resources/gender_view.proto"; -import "google/ads/googleads/v4/resources/geo_target_constant.proto"; -import "google/ads/googleads/v4/resources/geographic_view.proto"; -import "google/ads/googleads/v4/resources/group_placement_view.proto"; -import "google/ads/googleads/v4/resources/hotel_group_view.proto"; -import "google/ads/googleads/v4/resources/hotel_performance_view.proto"; -import "google/ads/googleads/v4/resources/income_range_view.proto"; -import "google/ads/googleads/v4/resources/keyword_plan.proto"; -import "google/ads/googleads/v4/resources/keyword_plan_ad_group.proto"; -import "google/ads/googleads/v4/resources/keyword_plan_ad_group_keyword.proto"; -import "google/ads/googleads/v4/resources/keyword_plan_campaign.proto"; -import "google/ads/googleads/v4/resources/keyword_plan_campaign_keyword.proto"; -import "google/ads/googleads/v4/resources/keyword_view.proto"; -import "google/ads/googleads/v4/resources/label.proto"; -import "google/ads/googleads/v4/resources/landing_page_view.proto"; -import "google/ads/googleads/v4/resources/language_constant.proto"; -import "google/ads/googleads/v4/resources/location_view.proto"; -import "google/ads/googleads/v4/resources/managed_placement_view.proto"; -import "google/ads/googleads/v4/resources/media_file.proto"; -import "google/ads/googleads/v4/resources/mobile_app_category_constant.proto"; -import "google/ads/googleads/v4/resources/mobile_device_constant.proto"; -import "google/ads/googleads/v4/resources/offline_user_data_job.proto"; -import "google/ads/googleads/v4/resources/operating_system_version_constant.proto"; -import "google/ads/googleads/v4/resources/paid_organic_search_term_view.proto"; -import "google/ads/googleads/v4/resources/parental_status_view.proto"; -import "google/ads/googleads/v4/resources/product_bidding_category_constant.proto"; -import "google/ads/googleads/v4/resources/product_group_view.proto"; -import "google/ads/googleads/v4/resources/recommendation.proto"; -import "google/ads/googleads/v4/resources/remarketing_action.proto"; -import "google/ads/googleads/v4/resources/search_term_view.proto"; -import "google/ads/googleads/v4/resources/shared_criterion.proto"; -import "google/ads/googleads/v4/resources/shared_set.proto"; -import "google/ads/googleads/v4/resources/shopping_performance_view.proto"; -import "google/ads/googleads/v4/resources/third_party_app_analytics_link.proto"; -import "google/ads/googleads/v4/resources/topic_constant.proto"; -import "google/ads/googleads/v4/resources/topic_view.proto"; -import "google/ads/googleads/v4/resources/user_interest.proto"; -import "google/ads/googleads/v4/resources/user_list.proto"; -import "google/ads/googleads/v4/resources/user_location_view.proto"; -import "google/ads/googleads/v4/resources/video.proto"; -import "google/ads/googleads/v4/services/ad_group_ad_label_service.proto"; -import "google/ads/googleads/v4/services/ad_group_ad_service.proto"; -import "google/ads/googleads/v4/services/ad_group_bid_modifier_service.proto"; -import "google/ads/googleads/v4/services/ad_group_criterion_label_service.proto"; -import "google/ads/googleads/v4/services/ad_group_criterion_service.proto"; -import "google/ads/googleads/v4/services/ad_group_extension_setting_service.proto"; -import "google/ads/googleads/v4/services/ad_group_feed_service.proto"; -import "google/ads/googleads/v4/services/ad_group_label_service.proto"; -import "google/ads/googleads/v4/services/ad_group_service.proto"; -import "google/ads/googleads/v4/services/ad_parameter_service.proto"; -import "google/ads/googleads/v4/services/ad_service.proto"; -import "google/ads/googleads/v4/services/asset_service.proto"; -import "google/ads/googleads/v4/services/bidding_strategy_service.proto"; -import "google/ads/googleads/v4/services/campaign_bid_modifier_service.proto"; -import "google/ads/googleads/v4/services/campaign_budget_service.proto"; -import "google/ads/googleads/v4/services/campaign_criterion_service.proto"; -import "google/ads/googleads/v4/services/campaign_draft_service.proto"; -import "google/ads/googleads/v4/services/campaign_experiment_service.proto"; -import "google/ads/googleads/v4/services/campaign_extension_setting_service.proto"; -import "google/ads/googleads/v4/services/campaign_feed_service.proto"; -import "google/ads/googleads/v4/services/campaign_label_service.proto"; -import "google/ads/googleads/v4/services/campaign_service.proto"; -import "google/ads/googleads/v4/services/campaign_shared_set_service.proto"; -import "google/ads/googleads/v4/services/conversion_action_service.proto"; -import "google/ads/googleads/v4/services/customer_extension_setting_service.proto"; -import "google/ads/googleads/v4/services/customer_feed_service.proto"; -import "google/ads/googleads/v4/services/customer_label_service.proto"; -import "google/ads/googleads/v4/services/customer_negative_criterion_service.proto"; -import "google/ads/googleads/v4/services/customer_service.proto"; -import "google/ads/googleads/v4/services/extension_feed_item_service.proto"; -import "google/ads/googleads/v4/services/feed_item_service.proto"; -import "google/ads/googleads/v4/services/feed_item_target_service.proto"; -import "google/ads/googleads/v4/services/feed_mapping_service.proto"; -import "google/ads/googleads/v4/services/feed_service.proto"; -import "google/ads/googleads/v4/services/keyword_plan_ad_group_keyword_service.proto"; -import "google/ads/googleads/v4/services/keyword_plan_ad_group_service.proto"; -import "google/ads/googleads/v4/services/keyword_plan_campaign_keyword_service.proto"; -import "google/ads/googleads/v4/services/keyword_plan_campaign_service.proto"; -import "google/ads/googleads/v4/services/keyword_plan_service.proto"; -import "google/ads/googleads/v4/services/label_service.proto"; -import "google/ads/googleads/v4/services/media_file_service.proto"; -import "google/ads/googleads/v4/services/remarketing_action_service.proto"; -import "google/ads/googleads/v4/services/shared_criterion_service.proto"; -import "google/ads/googleads/v4/services/shared_set_service.proto"; -import "google/ads/googleads/v4/services/user_list_service.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the GoogleAdsService. - -// Service to fetch data and metrics across resources. -service GoogleAdsService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns all rows that match the search query. - rpc Search(SearchGoogleAdsRequest) returns (SearchGoogleAdsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/googleAds:search" - body: "*" - }; - option (google.api.method_signature) = "customer_id,query"; - } - - // Returns all rows that match the search stream query. - rpc SearchStream(SearchGoogleAdsStreamRequest) returns (stream SearchGoogleAdsStreamResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/googleAds:searchStream" - body: "*" - }; - option (google.api.method_signature) = "customer_id,query"; - } - - // Creates, updates, or removes resources. This method supports atomic - // transactions with multiple types of resources. For example, you can - // atomically create a campaign and a campaign budget, or perform up to - // thousands of mutates atomically. - // - // This method is essentially a wrapper around a series of mutate methods. The - // only features it offers over calling those methods directly are: - // - // - Atomic transactions - // - Temp resource names (described below) - // - Somewhat reduced latency over making a series of mutate calls - // - // Note: Only resources that support atomic transactions are included, so this - // method can't replace all calls to individual services. - // - // ## Atomic Transaction Benefits - // - // Atomicity makes error handling much easier. If you're making a series of - // changes and one fails, it can leave your account in an inconsistent state. - // With atomicity, you either reach the desired state directly, or the request - // fails and you can retry. - // - // ## Temp Resource Names - // - // Temp resource names are a special type of resource name used to create a - // resource and reference that resource in the same request. For example, if a - // campaign budget is created with `resource_name` equal to - // `customers/123/campaignBudgets/-1`, that resource name can be reused in - // the `Campaign.budget` field in the same request. That way, the two - // resources are created and linked atomically. - // - // To create a temp resource name, put a negative number in the part of the - // name that the server would normally allocate. - // - // Note: - // - // - Resources must be created with a temp name before the name can be reused. - // For example, the previous CampaignBudget+Campaign example would fail if - // the mutate order was reversed. - // - Temp names are not remembered across requests. - // - There's no limit to the number of temp names in a request. - // - Each temp name must use a unique negative number, even if the resource - // types differ. - // - // ## Latency - // - // It's important to group mutates by resource type or the request may time - // out and fail. Latency is roughly equal to a series of calls to individual - // mutate methods, where each change in resource type is a new call. For - // example, mutating 10 campaigns then 10 ad groups is like 2 calls, while - // mutating 1 campaign, 1 ad group, 1 campaign, 1 ad group is like 4 calls. - rpc Mutate(MutateGoogleAdsRequest) returns (MutateGoogleAdsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/googleAds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,mutate_operations"; - } -} - -// Request message for [GoogleAdsService.Search][google.ads.googleads.v4.services.GoogleAdsService.Search]. -message SearchGoogleAdsRequest { - // Required. The ID of the customer being queried. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The query string. - string query = 2 [(google.api.field_behavior) = REQUIRED]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 3; - - // Number of elements to retrieve in a single page. - // When too large a page is requested, the server may decide to - // further limit the number of returned resources. - int32 page_size = 4; - - // If true, the request is validated but not executed. - bool validate_only = 5; - - // If true, the total number of results that match the query ignoring the - // LIMIT clause will be included in the response. - // Default is false. - bool return_total_results_count = 7; - - // Determines whether a summary row will be returned. By default, summary row - // is not returned. If requested, the summary row will be sent in a response - // by itself after all other query results are returned. - google.ads.googleads.v4.enums.SummaryRowSettingEnum.SummaryRowSetting summary_row_setting = 8; -} - -// Response message for [GoogleAdsService.Search][google.ads.googleads.v4.services.GoogleAdsService.Search]. -message SearchGoogleAdsResponse { - // The list of rows that matched the query. - repeated GoogleAdsRow results = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; - - // Total number of results that match the query ignoring the LIMIT - // clause. - int64 total_results_count = 3; - - // FieldMask that represents what fields were requested by the user. - google.protobuf.FieldMask field_mask = 5; - - // Summary row that contains summary of metrics in results. - // Summary of metrics means aggregation of metrics across all results, - // here aggregation could be sum, average, rate, etc. - GoogleAdsRow summary_row = 6; -} - -// Request message for [GoogleAdsService.SearchStream][google.ads.googleads.v4.services.GoogleAdsService.SearchStream]. -message SearchGoogleAdsStreamRequest { - // Required. The ID of the customer being queried. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The query string. - string query = 2 [(google.api.field_behavior) = REQUIRED]; - - // Determines whether a summary row will be returned. By default, summary row - // is not returned. If requested, the summary row will be sent in a response - // by itself after all other query results are returned. - google.ads.googleads.v4.enums.SummaryRowSettingEnum.SummaryRowSetting summary_row_setting = 3; -} - -// Response message for [GoogleAdsService.SearchStream][google.ads.googleads.v4.services.GoogleAdsService.SearchStream]. -message SearchGoogleAdsStreamResponse { - // The list of rows that matched the query. - repeated GoogleAdsRow results = 1; - - // FieldMask that represents what fields were requested by the user. - google.protobuf.FieldMask field_mask = 2; - - // Summary row that contains summary of metrics in results. - // Summary of metrics means aggregation of metrics across all results, - // here aggregation could be sum, average, rate, etc. - GoogleAdsRow summary_row = 3; -} - -// A returned row from the query. -message GoogleAdsRow { - // The account budget in the query. - google.ads.googleads.v4.resources.AccountBudget account_budget = 42; - - // The account budget proposal referenced in the query. - google.ads.googleads.v4.resources.AccountBudgetProposal account_budget_proposal = 43; - - // The AccountLink referenced in the query. - google.ads.googleads.v4.resources.AccountLink account_link = 143; - - // The ad group referenced in the query. - google.ads.googleads.v4.resources.AdGroup ad_group = 3; - - // The ad referenced in the query. - google.ads.googleads.v4.resources.AdGroupAd ad_group_ad = 16; - - // The ad group ad asset view in the query. - google.ads.googleads.v4.resources.AdGroupAdAssetView ad_group_ad_asset_view = 131; - - // The ad group ad label referenced in the query. - google.ads.googleads.v4.resources.AdGroupAdLabel ad_group_ad_label = 120; - - // The ad group audience view referenced in the query. - google.ads.googleads.v4.resources.AdGroupAudienceView ad_group_audience_view = 57; - - // The bid modifier referenced in the query. - google.ads.googleads.v4.resources.AdGroupBidModifier ad_group_bid_modifier = 24; - - // The criterion referenced in the query. - google.ads.googleads.v4.resources.AdGroupCriterion ad_group_criterion = 17; - - // The ad group criterion label referenced in the query. - google.ads.googleads.v4.resources.AdGroupCriterionLabel ad_group_criterion_label = 121; - - // The ad group criterion simulation referenced in the query. - google.ads.googleads.v4.resources.AdGroupCriterionSimulation ad_group_criterion_simulation = 110; - - // The ad group extension setting referenced in the query. - google.ads.googleads.v4.resources.AdGroupExtensionSetting ad_group_extension_setting = 112; - - // The ad group feed referenced in the query. - google.ads.googleads.v4.resources.AdGroupFeed ad_group_feed = 67; - - // The ad group label referenced in the query. - google.ads.googleads.v4.resources.AdGroupLabel ad_group_label = 115; - - // The ad group simulation referenced in the query. - google.ads.googleads.v4.resources.AdGroupSimulation ad_group_simulation = 107; - - // The ad parameter referenced in the query. - google.ads.googleads.v4.resources.AdParameter ad_parameter = 130; - - // The age range view referenced in the query. - google.ads.googleads.v4.resources.AgeRangeView age_range_view = 48; - - // The ad schedule view referenced in the query. - google.ads.googleads.v4.resources.AdScheduleView ad_schedule_view = 89; - - // The domain category referenced in the query. - google.ads.googleads.v4.resources.DomainCategory domain_category = 91; - - // The asset referenced in the query. - google.ads.googleads.v4.resources.Asset asset = 105; - - // The batch job referenced in the query. - google.ads.googleads.v4.resources.BatchJob batch_job = 139; - - // The bidding strategy referenced in the query. - google.ads.googleads.v4.resources.BiddingStrategy bidding_strategy = 18; - - // The billing setup referenced in the query. - google.ads.googleads.v4.resources.BillingSetup billing_setup = 41; - - // The campaign budget referenced in the query. - google.ads.googleads.v4.resources.CampaignBudget campaign_budget = 19; - - // The campaign referenced in the query. - google.ads.googleads.v4.resources.Campaign campaign = 2; - - // The campaign audience view referenced in the query. - google.ads.googleads.v4.resources.CampaignAudienceView campaign_audience_view = 69; - - // The campaign bid modifier referenced in the query. - google.ads.googleads.v4.resources.CampaignBidModifier campaign_bid_modifier = 26; - - // The campaign criterion referenced in the query. - google.ads.googleads.v4.resources.CampaignCriterion campaign_criterion = 20; - - // The campaign criterion simulation referenced in the query. - google.ads.googleads.v4.resources.CampaignCriterionSimulation campaign_criterion_simulation = 111; - - // The campaign draft referenced in the query. - google.ads.googleads.v4.resources.CampaignDraft campaign_draft = 49; - - // The campaign experiment referenced in the query. - google.ads.googleads.v4.resources.CampaignExperiment campaign_experiment = 84; - - // The campaign extension setting referenced in the query. - google.ads.googleads.v4.resources.CampaignExtensionSetting campaign_extension_setting = 113; - - // The campaign feed referenced in the query. - google.ads.googleads.v4.resources.CampaignFeed campaign_feed = 63; - - // The campaign label referenced in the query. - google.ads.googleads.v4.resources.CampaignLabel campaign_label = 108; - - // Campaign Shared Set referenced in AWQL query. - google.ads.googleads.v4.resources.CampaignSharedSet campaign_shared_set = 30; - - // The carrier constant referenced in the query. - google.ads.googleads.v4.resources.CarrierConstant carrier_constant = 66; - - // The ChangeStatus referenced in the query. - google.ads.googleads.v4.resources.ChangeStatus change_status = 37; - - // The conversion action referenced in the query. - google.ads.googleads.v4.resources.ConversionAction conversion_action = 103; - - // The ClickView referenced in the query. - google.ads.googleads.v4.resources.ClickView click_view = 122; - - // The currency constant referenced in the query. - google.ads.googleads.v4.resources.CurrencyConstant currency_constant = 134; - - // The CustomInterest referenced in the query. - google.ads.googleads.v4.resources.CustomInterest custom_interest = 104; - - // The customer referenced in the query. - google.ads.googleads.v4.resources.Customer customer = 1; - - // The CustomerManagerLink referenced in the query. - google.ads.googleads.v4.resources.CustomerManagerLink customer_manager_link = 61; - - // The CustomerClientLink referenced in the query. - google.ads.googleads.v4.resources.CustomerClientLink customer_client_link = 62; - - // The CustomerClient referenced in the query. - google.ads.googleads.v4.resources.CustomerClient customer_client = 70; - - // The customer extension setting referenced in the query. - google.ads.googleads.v4.resources.CustomerExtensionSetting customer_extension_setting = 114; - - // The customer feed referenced in the query. - google.ads.googleads.v4.resources.CustomerFeed customer_feed = 64; - - // The customer label referenced in the query. - google.ads.googleads.v4.resources.CustomerLabel customer_label = 124; - - // The customer negative criterion referenced in the query. - google.ads.googleads.v4.resources.CustomerNegativeCriterion customer_negative_criterion = 88; - - // The detail placement view referenced in the query. - google.ads.googleads.v4.resources.DetailPlacementView detail_placement_view = 118; - - // The display keyword view referenced in the query. - google.ads.googleads.v4.resources.DisplayKeywordView display_keyword_view = 47; - - // The distance view referenced in the query. - google.ads.googleads.v4.resources.DistanceView distance_view = 132; - - // The dynamic search ads search term view referenced in the query. - google.ads.googleads.v4.resources.DynamicSearchAdsSearchTermView dynamic_search_ads_search_term_view = 106; - - // The expanded landing page view referenced in the query. - google.ads.googleads.v4.resources.ExpandedLandingPageView expanded_landing_page_view = 128; - - // The extension feed item referenced in the query. - google.ads.googleads.v4.resources.ExtensionFeedItem extension_feed_item = 85; - - // The feed referenced in the query. - google.ads.googleads.v4.resources.Feed feed = 46; - - // The feed item referenced in the query. - google.ads.googleads.v4.resources.FeedItem feed_item = 50; - - // The feed item target referenced in the query. - google.ads.googleads.v4.resources.FeedItemTarget feed_item_target = 116; - - // The feed mapping referenced in the query. - google.ads.googleads.v4.resources.FeedMapping feed_mapping = 58; - - // The feed placeholder view referenced in the query. - google.ads.googleads.v4.resources.FeedPlaceholderView feed_placeholder_view = 97; - - // The gender view referenced in the query. - google.ads.googleads.v4.resources.GenderView gender_view = 40; - - // The geo target constant referenced in the query. - google.ads.googleads.v4.resources.GeoTargetConstant geo_target_constant = 23; - - // The geographic view referenced in the query. - google.ads.googleads.v4.resources.GeographicView geographic_view = 125; - - // The group placement view referenced in the query. - google.ads.googleads.v4.resources.GroupPlacementView group_placement_view = 119; - - // The hotel group view referenced in the query. - google.ads.googleads.v4.resources.HotelGroupView hotel_group_view = 51; - - // The hotel performance view referenced in the query. - google.ads.googleads.v4.resources.HotelPerformanceView hotel_performance_view = 71; - - // The income range view referenced in the query. - google.ads.googleads.v4.resources.IncomeRangeView income_range_view = 138; - - // The keyword view referenced in the query. - google.ads.googleads.v4.resources.KeywordView keyword_view = 21; - - // The keyword plan referenced in the query. - google.ads.googleads.v4.resources.KeywordPlan keyword_plan = 32; - - // The keyword plan campaign referenced in the query. - google.ads.googleads.v4.resources.KeywordPlanCampaign keyword_plan_campaign = 33; - - // The keyword plan campaign keyword referenced in the query. - google.ads.googleads.v4.resources.KeywordPlanCampaignKeyword keyword_plan_campaign_keyword = 140; - - // The keyword plan ad group referenced in the query. - google.ads.googleads.v4.resources.KeywordPlanAdGroup keyword_plan_ad_group = 35; - - // The keyword plan ad group referenced in the query. - google.ads.googleads.v4.resources.KeywordPlanAdGroupKeyword keyword_plan_ad_group_keyword = 141; - - // The label referenced in the query. - google.ads.googleads.v4.resources.Label label = 52; - - // The landing page view referenced in the query. - google.ads.googleads.v4.resources.LandingPageView landing_page_view = 126; - - // The language constant referenced in the query. - google.ads.googleads.v4.resources.LanguageConstant language_constant = 55; - - // The location view referenced in the query. - google.ads.googleads.v4.resources.LocationView location_view = 123; - - // The managed placement view referenced in the query. - google.ads.googleads.v4.resources.ManagedPlacementView managed_placement_view = 53; - - // The media file referenced in the query. - google.ads.googleads.v4.resources.MediaFile media_file = 90; - - // The mobile app category constant referenced in the query. - google.ads.googleads.v4.resources.MobileAppCategoryConstant mobile_app_category_constant = 87; - - // The mobile device constant referenced in the query. - google.ads.googleads.v4.resources.MobileDeviceConstant mobile_device_constant = 98; - - // The offline user data job referenced in the query. - google.ads.googleads.v4.resources.OfflineUserDataJob offline_user_data_job = 137; - - // The operating system version constant referenced in the query. - google.ads.googleads.v4.resources.OperatingSystemVersionConstant operating_system_version_constant = 86; - - // The paid organic search term view referenced in the query. - google.ads.googleads.v4.resources.PaidOrganicSearchTermView paid_organic_search_term_view = 129; - - // The parental status view referenced in the query. - google.ads.googleads.v4.resources.ParentalStatusView parental_status_view = 45; - - // The Product Bidding Category referenced in the query. - google.ads.googleads.v4.resources.ProductBiddingCategoryConstant product_bidding_category_constant = 109; - - // The product group view referenced in the query. - google.ads.googleads.v4.resources.ProductGroupView product_group_view = 54; - - // The recommendation referenced in the query. - google.ads.googleads.v4.resources.Recommendation recommendation = 22; - - // The search term view referenced in the query. - google.ads.googleads.v4.resources.SearchTermView search_term_view = 68; - - // The shared set referenced in the query. - google.ads.googleads.v4.resources.SharedCriterion shared_criterion = 29; - - // The shared set referenced in the query. - google.ads.googleads.v4.resources.SharedSet shared_set = 27; - - // The shopping performance view referenced in the query. - google.ads.googleads.v4.resources.ShoppingPerformanceView shopping_performance_view = 117; - - // The AccountLink referenced in the query. - google.ads.googleads.v4.resources.ThirdPartyAppAnalyticsLink third_party_app_analytics_link = 144; - - // The topic view referenced in the query. - google.ads.googleads.v4.resources.TopicView topic_view = 44; - - // The user interest referenced in the query. - google.ads.googleads.v4.resources.UserInterest user_interest = 59; - - // The user list referenced in the query. - google.ads.googleads.v4.resources.UserList user_list = 38; - - // The user location view referenced in the query. - google.ads.googleads.v4.resources.UserLocationView user_location_view = 135; - - // The remarketing action referenced in the query. - google.ads.googleads.v4.resources.RemarketingAction remarketing_action = 60; - - // The topic constant referenced in the query. - google.ads.googleads.v4.resources.TopicConstant topic_constant = 31; - - // The video referenced in the query. - google.ads.googleads.v4.resources.Video video = 39; - - // The metrics. - google.ads.googleads.v4.common.Metrics metrics = 4; - - // The segments. - google.ads.googleads.v4.common.Segments segments = 102; -} - -// Request message for [GoogleAdsService.Mutate][google.ads.googleads.v4.services.GoogleAdsService.Mutate]. -message MutateGoogleAdsRequest { - // Required. The ID of the customer whose resources are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual resources. - repeated MutateOperation mutate_operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// Response message for [GoogleAdsService.Mutate][google.ads.googleads.v4.services.GoogleAdsService.Mutate]. -message MutateGoogleAdsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g., auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All responses for the mutate. - repeated MutateOperationResponse mutate_operation_responses = 1; -} - -// A single operation (create, update, remove) on a resource. -message MutateOperation { - // The mutate operation. - oneof operation { - // An ad group ad label mutate operation. - AdGroupAdLabelOperation ad_group_ad_label_operation = 17; - - // An ad group ad mutate operation. - AdGroupAdOperation ad_group_ad_operation = 1; - - // An ad group bid modifier mutate operation. - AdGroupBidModifierOperation ad_group_bid_modifier_operation = 2; - - // An ad group criterion label mutate operation. - AdGroupCriterionLabelOperation ad_group_criterion_label_operation = 18; - - // An ad group criterion mutate operation. - AdGroupCriterionOperation ad_group_criterion_operation = 3; - - // An ad group extension setting mutate operation. - AdGroupExtensionSettingOperation ad_group_extension_setting_operation = 19; - - // An ad group feed mutate operation. - AdGroupFeedOperation ad_group_feed_operation = 20; - - // An ad group label mutate operation. - AdGroupLabelOperation ad_group_label_operation = 21; - - // An ad group mutate operation. - AdGroupOperation ad_group_operation = 5; - - // An ad mutate operation. - AdOperation ad_operation = 49; - - // An ad parameter mutate operation. - AdParameterOperation ad_parameter_operation = 22; - - // An asset mutate operation. - AssetOperation asset_operation = 23; - - // A bidding strategy mutate operation. - BiddingStrategyOperation bidding_strategy_operation = 6; - - // A campaign bid modifier mutate operation. - CampaignBidModifierOperation campaign_bid_modifier_operation = 7; - - // A campaign budget mutate operation. - CampaignBudgetOperation campaign_budget_operation = 8; - - // A campaign criterion mutate operation. - CampaignCriterionOperation campaign_criterion_operation = 13; - - // A campaign draft mutate operation. - CampaignDraftOperation campaign_draft_operation = 24; - - // A campaign experiment mutate operation. - CampaignExperimentOperation campaign_experiment_operation = 25; - - // A campaign extension setting mutate operation. - CampaignExtensionSettingOperation campaign_extension_setting_operation = 26; - - // A campaign feed mutate operation. - CampaignFeedOperation campaign_feed_operation = 27; - - // A campaign label mutate operation. - CampaignLabelOperation campaign_label_operation = 28; - - // A campaign mutate operation. - CampaignOperation campaign_operation = 10; - - // A campaign shared set mutate operation. - CampaignSharedSetOperation campaign_shared_set_operation = 11; - - // A conversion action mutate operation. - ConversionActionOperation conversion_action_operation = 12; - - // A customer extension setting mutate operation. - CustomerExtensionSettingOperation customer_extension_setting_operation = 30; - - // A customer feed mutate operation. - CustomerFeedOperation customer_feed_operation = 31; - - // A customer label mutate operation. - CustomerLabelOperation customer_label_operation = 32; - - // A customer negative criterion mutate operation. - CustomerNegativeCriterionOperation customer_negative_criterion_operation = 34; - - // A customer mutate operation. - CustomerOperation customer_operation = 35; - - // An extension feed item mutate operation. - ExtensionFeedItemOperation extension_feed_item_operation = 36; - - // A feed item mutate operation. - FeedItemOperation feed_item_operation = 37; - - // A feed item target mutate operation. - FeedItemTargetOperation feed_item_target_operation = 38; - - // A feed mapping mutate operation. - FeedMappingOperation feed_mapping_operation = 39; - - // A feed mutate operation. - FeedOperation feed_operation = 40; - - // A keyword plan ad group operation. - KeywordPlanAdGroupOperation keyword_plan_ad_group_operation = 44; - - // A keyword plan ad group keyword operation. - KeywordPlanAdGroupKeywordOperation keyword_plan_ad_group_keyword_operation = 50; - - // A keyword plan campaign keyword operation. - KeywordPlanCampaignKeywordOperation keyword_plan_campaign_keyword_operation = 51; - - // A keyword plan campaign operation. - KeywordPlanCampaignOperation keyword_plan_campaign_operation = 45; - - // A keyword plan operation. - KeywordPlanOperation keyword_plan_operation = 48; - - // A label mutate operation. - LabelOperation label_operation = 41; - - // A media file mutate operation. - MediaFileOperation media_file_operation = 42; - - // A remarketing action mutate operation. - RemarketingActionOperation remarketing_action_operation = 43; - - // A shared criterion mutate operation. - SharedCriterionOperation shared_criterion_operation = 14; - - // A shared set mutate operation. - SharedSetOperation shared_set_operation = 15; - - // A user list mutate operation. - UserListOperation user_list_operation = 16; - } -} - -// Response message for the resource mutate. -message MutateOperationResponse { - // The mutate response. - oneof response { - // The result for the ad group ad label mutate. - MutateAdGroupAdLabelResult ad_group_ad_label_result = 17; - - // The result for the ad group ad mutate. - MutateAdGroupAdResult ad_group_ad_result = 1; - - // The result for the ad group bid modifier mutate. - MutateAdGroupBidModifierResult ad_group_bid_modifier_result = 2; - - // The result for the ad group criterion label mutate. - MutateAdGroupCriterionLabelResult ad_group_criterion_label_result = 18; - - // The result for the ad group criterion mutate. - MutateAdGroupCriterionResult ad_group_criterion_result = 3; - - // The result for the ad group extension setting mutate. - MutateAdGroupExtensionSettingResult ad_group_extension_setting_result = 19; - - // The result for the ad group feed mutate. - MutateAdGroupFeedResult ad_group_feed_result = 20; - - // The result for the ad group label mutate. - MutateAdGroupLabelResult ad_group_label_result = 21; - - // The result for the ad group mutate. - MutateAdGroupResult ad_group_result = 5; - - // The result for the ad parameter mutate. - MutateAdParameterResult ad_parameter_result = 22; - - // The result for the ad mutate. - MutateAdResult ad_result = 49; - - // The result for the asset mutate. - MutateAssetResult asset_result = 23; - - // The result for the bidding strategy mutate. - MutateBiddingStrategyResult bidding_strategy_result = 6; - - // The result for the campaign bid modifier mutate. - MutateCampaignBidModifierResult campaign_bid_modifier_result = 7; - - // The result for the campaign budget mutate. - MutateCampaignBudgetResult campaign_budget_result = 8; - - // The result for the campaign criterion mutate. - MutateCampaignCriterionResult campaign_criterion_result = 13; - - // The result for the campaign draft mutate. - MutateCampaignDraftResult campaign_draft_result = 24; - - // The result for the campaign experiment mutate. - MutateCampaignExperimentResult campaign_experiment_result = 25; - - // The result for the campaign extension setting mutate. - MutateCampaignExtensionSettingResult campaign_extension_setting_result = 26; - - // The result for the campaign feed mutate. - MutateCampaignFeedResult campaign_feed_result = 27; - - // The result for the campaign label mutate. - MutateCampaignLabelResult campaign_label_result = 28; - - // The result for the campaign mutate. - MutateCampaignResult campaign_result = 10; - - // The result for the campaign shared set mutate. - MutateCampaignSharedSetResult campaign_shared_set_result = 11; - - // The result for the conversion action mutate. - MutateConversionActionResult conversion_action_result = 12; - - // The result for the customer extension setting mutate. - MutateCustomerExtensionSettingResult customer_extension_setting_result = 30; - - // The result for the customer feed mutate. - MutateCustomerFeedResult customer_feed_result = 31; - - // The result for the customer label mutate. - MutateCustomerLabelResult customer_label_result = 32; - - // The result for the customer negative criterion mutate. - MutateCustomerNegativeCriteriaResult customer_negative_criterion_result = 34; - - // The result for the customer mutate. - MutateCustomerResult customer_result = 35; - - // The result for the extension feed item mutate. - MutateExtensionFeedItemResult extension_feed_item_result = 36; - - // The result for the feed item mutate. - MutateFeedItemResult feed_item_result = 37; - - // The result for the feed item target mutate. - MutateFeedItemTargetResult feed_item_target_result = 38; - - // The result for the feed mapping mutate. - MutateFeedMappingResult feed_mapping_result = 39; - - // The result for the feed mutate. - MutateFeedResult feed_result = 40; - - // The result for the keyword plan ad group mutate. - MutateKeywordPlanAdGroupResult keyword_plan_ad_group_result = 44; - - // The result for the keyword plan campaign mutate. - MutateKeywordPlanCampaignResult keyword_plan_campaign_result = 45; - - // The result for the keyword plan ad group keyword mutate. - MutateKeywordPlanAdGroupKeywordResult keyword_plan_ad_group_keyword_result = 50; - - // The result for the keyword plan campaign keyword mutate. - MutateKeywordPlanCampaignKeywordResult keyword_plan_campaign_keyword_result = 51; - - // The result for the keyword plan mutate. - MutateKeywordPlansResult keyword_plan_result = 48; - - // The result for the label mutate. - MutateLabelResult label_result = 41; - - // The result for the media file mutate. - MutateMediaFileResult media_file_result = 42; - - // The result for the remarketing action mutate. - MutateRemarketingActionResult remarketing_action_result = 43; - - // The result for the shared criterion mutate. - MutateSharedCriterionResult shared_criterion_result = 14; - - // The result for the shared set mutate. - MutateSharedSetResult shared_set_result = 15; - - // The result for the user list mutate. - MutateUserListResult user_list_result = 16; - } -} diff --git a/google/ads/googleads/v4/services/group_placement_view_service.proto b/google/ads/googleads/v4/services/group_placement_view_service.proto deleted file mode 100644 index b233d4f97..000000000 --- a/google/ads/googleads/v4/services/group_placement_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/group_placement_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GroupPlacementViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Group Placement View service. - -// Service to fetch Group Placement views. -service GroupPlacementViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Group Placement view in full detail. - rpc GetGroupPlacementView(GetGroupPlacementViewRequest) returns (google.ads.googleads.v4.resources.GroupPlacementView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/groupPlacementViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [GroupPlacementViewService.GetGroupPlacementView][google.ads.googleads.v4.services.GroupPlacementViewService.GetGroupPlacementView]. -message GetGroupPlacementViewRequest { - // Required. The resource name of the Group Placement view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GroupPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/hotel_group_view_service.proto b/google/ads/googleads/v4/services/hotel_group_view_service.proto deleted file mode 100644 index 7da1d93ad..000000000 --- a/google/ads/googleads/v4/services/hotel_group_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/hotel_group_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "HotelGroupViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Hotel Group View Service. - -// Service to manage Hotel Group Views. -service HotelGroupViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Hotel Group View in full detail. - rpc GetHotelGroupView(GetHotelGroupViewRequest) returns (google.ads.googleads.v4.resources.HotelGroupView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/hotelGroupViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [HotelGroupViewService.GetHotelGroupView][google.ads.googleads.v4.services.HotelGroupViewService.GetHotelGroupView]. -message GetHotelGroupViewRequest { - // Required. Resource name of the Hotel Group View to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelGroupView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/hotel_performance_view_service.proto b/google/ads/googleads/v4/services/hotel_performance_view_service.proto deleted file mode 100644 index ec1eb354f..000000000 --- a/google/ads/googleads/v4/services/hotel_performance_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/hotel_performance_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "HotelPerformanceViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Hotel Performance View Service. - -// Service to manage Hotel Performance Views. -service HotelPerformanceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Hotel Performance View in full detail. - rpc GetHotelPerformanceView(GetHotelPerformanceViewRequest) returns (google.ads.googleads.v4.resources.HotelPerformanceView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/hotelPerformanceView}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [HotelPerformanceViewService.GetHotelPerformanceView][google.ads.googleads.v4.services.HotelPerformanceViewService.GetHotelPerformanceView]. -message GetHotelPerformanceViewRequest { - // Required. Resource name of the Hotel Performance View to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/income_range_view_service.proto b/google/ads/googleads/v4/services/income_range_view_service.proto deleted file mode 100644 index c1dd077fc..000000000 --- a/google/ads/googleads/v4/services/income_range_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/income_range_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "IncomeRangeViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Income Range View service. - -// Service to manage income range views. -service IncomeRangeViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested income range view in full detail. - rpc GetIncomeRangeView(GetIncomeRangeViewRequest) returns (google.ads.googleads.v4.resources.IncomeRangeView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/incomeRangeViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [IncomeRangeViewService.GetIncomeRangeView][google.ads.googleads.v4.services.IncomeRangeViewService.GetIncomeRangeView]. -message GetIncomeRangeViewRequest { - // Required. The resource name of the income range view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/IncomeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/invoice_service.proto b/google/ads/googleads/v4/services/invoice_service.proto deleted file mode 100644 index 5b436a613..000000000 --- a/google/ads/googleads/v4/services/invoice_service.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/enums/month_of_year.proto"; -import "google/ads/googleads/v4/resources/invoice.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Invoice service. - -// A service to fetch invoices issued for a billing setup during a given month. -service InvoiceService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns all invoices associated with a billing setup, for a given month. - rpc ListInvoices(ListInvoicesRequest) returns (ListInvoicesResponse) { - option (google.api.http) = { - get: "/v4/customers/{customer_id=*}/invoices" - }; - option (google.api.method_signature) = "customer_id,billing_setup,issue_year,issue_month"; - } -} - -// Request message for fetching the invoices of a given billing setup that were -// issued during a given month. -message ListInvoicesRequest { - // Required. The ID of the customer to fetch invoices for. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The billing setup resource name of the requested invoices. - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - string billing_setup = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. The issue year to retrieve invoices, in yyyy format. Only - // invoices issued in 2019 or later can be retrieved. - string issue_year = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The issue month to retrieve invoices. - google.ads.googleads.v4.enums.MonthOfYearEnum.MonthOfYear issue_month = 4 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [InvoiceService.ListInvoices][google.ads.googleads.v4.services.InvoiceService.ListInvoices]. -message ListInvoicesResponse { - // The list of invoices that match the billing setup and time period. - repeated google.ads.googleads.v4.resources.Invoice invoices = 1; -} diff --git a/google/ads/googleads/v4/services/keyword_plan_ad_group_keyword_service.proto b/google/ads/googleads/v4/services/keyword_plan_ad_group_keyword_service.proto deleted file mode 100644 index db4f2900b..000000000 --- a/google/ads/googleads/v4/services/keyword_plan_ad_group_keyword_service.proto +++ /dev/null @@ -1,143 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/keyword_plan_ad_group_keyword.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupKeywordServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the keyword plan ad group keyword service. - -// Service to manage Keyword Plan ad group keywords. KeywordPlanAdGroup is -// required to add ad group keywords. Positive and negative keywords are -// supported. A maximum of 10,000 positive keywords are allowed per keyword -// plan. A maximum of 1,000 negative keywords are allower per keyword plan. This -// includes campaign negative keywords and ad group negative keywords. -service KeywordPlanAdGroupKeywordService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Keyword Plan ad group keyword in full detail. - rpc GetKeywordPlanAdGroupKeyword(GetKeywordPlanAdGroupKeywordRequest) returns (google.ads.googleads.v4.resources.KeywordPlanAdGroupKeyword) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan ad group keywords. Operation - // statuses are returned. - rpc MutateKeywordPlanAdGroupKeywords(MutateKeywordPlanAdGroupKeywordsRequest) returns (MutateKeywordPlanAdGroupKeywordsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword][google.ads.googleads.v4.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword]. -message GetKeywordPlanAdGroupKeywordRequest { - // Required. The resource name of the ad group keyword to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - } - ]; -} - -// Request message for -// [KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords][google.ads.googleads.v4.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords]. -message MutateKeywordPlanAdGroupKeywordsRequest { - // Required. The ID of the customer whose Keyword Plan ad group keywords are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan ad group - // keywords. - repeated KeywordPlanAdGroupKeywordOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan ad group -// keyword. -message KeywordPlanAdGroupKeywordOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // ad group keyword. - google.ads.googleads.v4.resources.KeywordPlanAdGroupKeyword create = 1; - - // Update operation: The Keyword Plan ad group keyword is expected to have a - // valid resource name. - google.ads.googleads.v4.resources.KeywordPlanAdGroupKeyword update = 2; - - // Remove operation: A resource name for the removed Keyword Plan ad group - // keyword is expected, in this format: - // - // `customers/{customer_id}/keywordPlanAdGroupKeywords/{kp_ad_group_keyword_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - }]; - } -} - -// Response message for a Keyword Plan ad group keyword mutate. -message MutateKeywordPlanAdGroupKeywordsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlanAdGroupKeywordResult results = 2; -} - -// The result for the Keyword Plan ad group keyword mutate. -message MutateKeywordPlanAdGroupKeywordResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/keyword_plan_ad_group_service.proto b/google/ads/googleads/v4/services/keyword_plan_ad_group_service.proto deleted file mode 100644 index e7bcd70c1..000000000 --- a/google/ads/googleads/v4/services/keyword_plan_ad_group_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/keyword_plan_ad_group.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the keyword plan ad group service. - -// Service to manage Keyword Plan ad groups. -service KeywordPlanAdGroupService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Keyword Plan ad group in full detail. - rpc GetKeywordPlanAdGroup(GetKeywordPlanAdGroupRequest) returns (google.ads.googleads.v4.resources.KeywordPlanAdGroup) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/keywordPlanAdGroups/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan ad groups. Operation statuses are - // returned. - rpc MutateKeywordPlanAdGroups(MutateKeywordPlanAdGroupsRequest) returns (MutateKeywordPlanAdGroupsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/keywordPlanAdGroups:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [KeywordPlanAdGroupService.GetKeywordPlanAdGroup][google.ads.googleads.v4.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup]. -message GetKeywordPlanAdGroupRequest { - // Required. The resource name of the Keyword Plan ad group to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - } - ]; -} - -// Request message for [KeywordPlanAdGroupService.MutateKeywordPlanAdGroups][google.ads.googleads.v4.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups]. -message MutateKeywordPlanAdGroupsRequest { - // Required. The ID of the customer whose Keyword Plan ad groups are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan ad groups. - repeated KeywordPlanAdGroupOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan ad group. -message KeywordPlanAdGroupOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // ad group. - google.ads.googleads.v4.resources.KeywordPlanAdGroup create = 1; - - // Update operation: The Keyword Plan ad group is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.KeywordPlanAdGroup update = 2; - - // Remove operation: A resource name for the removed Keyword Plan ad group - // is expected, in this format: - // - // `customers/{customer_id}/keywordPlanAdGroups/{kp_ad_group_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - }]; - } -} - -// Response message for a Keyword Plan ad group mutate. -message MutateKeywordPlanAdGroupsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. The order of the results is determined by the - // order of the keywords in the original request. - repeated MutateKeywordPlanAdGroupResult results = 2; -} - -// The result for the Keyword Plan ad group mutate. -message MutateKeywordPlanAdGroupResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/keyword_plan_campaign_keyword_service.proto b/google/ads/googleads/v4/services/keyword_plan_campaign_keyword_service.proto deleted file mode 100644 index 05fd84327..000000000 --- a/google/ads/googleads/v4/services/keyword_plan_campaign_keyword_service.proto +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/keyword_plan_campaign_keyword.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignKeywordServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the keyword plan campaign keyword service. - -// Service to manage Keyword Plan campaign keywords. KeywordPlanCampaign is -// required to add the campaign keywords. Only negative keywords are supported. -// A maximum of 1000 negative keywords are allowed per plan. This includes both -// campaign negative keywords and ad group negative keywords. -service KeywordPlanCampaignKeywordService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested plan in full detail. - rpc GetKeywordPlanCampaignKeyword(GetKeywordPlanCampaignKeywordRequest) returns (google.ads.googleads.v4.resources.KeywordPlanCampaignKeyword) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan campaign keywords. Operation - // statuses are returned. - rpc MutateKeywordPlanCampaignKeywords(MutateKeywordPlanCampaignKeywordsRequest) returns (MutateKeywordPlanCampaignKeywordsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword][google.ads.googleads.v4.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword]. -message GetKeywordPlanCampaignKeywordRequest { - // Required. The resource name of the plan to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - } - ]; -} - -// Request message for -// [KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords][google.ads.googleads.v4.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords]. -message MutateKeywordPlanCampaignKeywordsRequest { - // Required. The ID of the customer whose campaign keywords are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan campaign - // keywords. - repeated KeywordPlanCampaignKeywordOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan campaign -// keyword. -message KeywordPlanCampaignKeywordOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // campaign keyword. - google.ads.googleads.v4.resources.KeywordPlanCampaignKeyword create = 1; - - // Update operation: The Keyword Plan campaign keyword expected to have a - // valid resource name. - google.ads.googleads.v4.resources.KeywordPlanCampaignKeyword update = 2; - - // Remove operation: A resource name for the removed Keyword Plan campaign - // keywords expected in this format: - // - // `customers/{customer_id}/keywordPlanCampaignKeywords/{kp_campaign_keyword_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - }]; - } -} - -// Response message for a Keyword Plan campaign keyword mutate. -message MutateKeywordPlanCampaignKeywordsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlanCampaignKeywordResult results = 2; -} - -// The result for the Keyword Plan campaign keyword mutate. -message MutateKeywordPlanCampaignKeywordResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/keyword_plan_campaign_service.proto b/google/ads/googleads/v4/services/keyword_plan_campaign_service.proto deleted file mode 100644 index 2d987f274..000000000 --- a/google/ads/googleads/v4/services/keyword_plan_campaign_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/keyword_plan_campaign.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the keyword plan campaign service. - -// Service to manage Keyword Plan campaigns. -service KeywordPlanCampaignService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Keyword Plan campaign in full detail. - rpc GetKeywordPlanCampaign(GetKeywordPlanCampaignRequest) returns (google.ads.googleads.v4.resources.KeywordPlanCampaign) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/keywordPlanCampaigns/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan campaigns. Operation statuses are - // returned. - rpc MutateKeywordPlanCampaigns(MutateKeywordPlanCampaignsRequest) returns (MutateKeywordPlanCampaignsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/keywordPlanCampaigns:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [KeywordPlanCampaignService.GetKeywordPlanCampaign][google.ads.googleads.v4.services.KeywordPlanCampaignService.GetKeywordPlanCampaign]. -message GetKeywordPlanCampaignRequest { - // Required. The resource name of the Keyword Plan campaign to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - } - ]; -} - -// Request message for -// [KeywordPlanCampaignService.MutateKeywordPlanCampaigns][google.ads.googleads.v4.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns]. -message MutateKeywordPlanCampaignsRequest { - // Required. The ID of the customer whose Keyword Plan campaigns are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan campaigns. - repeated KeywordPlanCampaignOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan campaign. -message KeywordPlanCampaignOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // campaign. - google.ads.googleads.v4.resources.KeywordPlanCampaign create = 1; - - // Update operation: The Keyword Plan campaign is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.KeywordPlanCampaign update = 2; - - // Remove operation: A resource name for the removed Keyword Plan campaign - // is expected, in this format: - // - // `customers/{customer_id}/keywordPlanCampaigns/{keywordPlan_campaign_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - }]; - } -} - -// Response message for a Keyword Plan campaign mutate. -message MutateKeywordPlanCampaignsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlanCampaignResult results = 2; -} - -// The result for the Keyword Plan campaign mutate. -message MutateKeywordPlanCampaignResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/keyword_plan_idea_service.proto b/google/ads/googleads/v4/services/keyword_plan_idea_service.proto deleted file mode 100644 index e3ad15eed..000000000 --- a/google/ads/googleads/v4/services/keyword_plan_idea_service.proto +++ /dev/null @@ -1,156 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/common/keyword_plan_common.proto"; -import "google/ads/googleads/v4/enums/keyword_plan_network.proto"; -import "google/api/annotations.proto"; -import "google/api/field_behavior.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/client.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanIdeaServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the keyword plan idea service. - -// Service to generate keyword ideas. -service KeywordPlanIdeaService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns a list of keyword ideas. - rpc GenerateKeywordIdeas(GenerateKeywordIdeasRequest) returns (GenerateKeywordIdeaResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}:generateKeywordIdeas" - body: "*" - }; - } -} - -// Request message for [KeywordPlanIdeaService.GenerateKeywordIdeas][google.ads.googleads.v4.services.KeywordPlanIdeaService.GenerateKeywordIdeas]. -message GenerateKeywordIdeasRequest { - // The ID of the customer with the recommendation. - string customer_id = 1; - - // Required. The resource name of the language to target. - // Required - google.protobuf.StringValue language = 7 [(google.api.field_behavior) = REQUIRED]; - - // The resource names of the location to target. - // Max 10 - repeated google.protobuf.StringValue geo_target_constants = 8; - - // If true, adult keywords will be included in response. - // The default value is false. - bool include_adult_keywords = 10; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. To request next page of results use the - // value obtained from `next_page_token` in the previous response. - // The request fields must match across pages. - string page_token = 12; - - // Number of results to retrieve in a single page. - // A maximum of 10,000 results may be returned, if the page_size - // exceeds this, it is ignored. - // If unspecified, at most 10,000 results will be returned. - // The server may decide to further limit the number of returned resources. - // If the response contains fewer than 10,000 results it may not be assumed - // as last page of results. - int32 page_size = 13; - - // Targeting network. - google.ads.googleads.v4.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork keyword_plan_network = 9; - - // The type of seed to generate keyword ideas. - oneof seed { - // A Keyword and a specific Url to generate ideas from - // e.g. cars, www.example.com/cars. - KeywordAndUrlSeed keyword_and_url_seed = 2; - - // A Keyword or phrase to generate ideas from, e.g. cars. - KeywordSeed keyword_seed = 3; - - // A specific url to generate ideas from, e.g. www.example.com/cars. - UrlSeed url_seed = 5; - - // The site to generate ideas from, e.g. www.example.com. - SiteSeed site_seed = 11; - } -} - -// Keyword And Url Seed -message KeywordAndUrlSeed { - // The URL to crawl in order to generate keyword ideas. - google.protobuf.StringValue url = 1; - - // Requires at least one keyword. - repeated google.protobuf.StringValue keywords = 2; -} - -// Keyword Seed -message KeywordSeed { - // Requires at least one keyword. - repeated google.protobuf.StringValue keywords = 1; -} - -// Site Seed -message SiteSeed { - // The domain name of the site. If the customer requesting the ideas doesn't - // own the site provided only public information is returned. - google.protobuf.StringValue site = 1; -} - -// Url Seed -message UrlSeed { - // The URL to crawl in order to generate keyword ideas. - google.protobuf.StringValue url = 1; -} - -// Response message for [KeywordPlanIdeaService.GenerateKeywordIdeas][google.ads.googleads.v4.services.KeywordPlanIdeaService.GenerateKeywordIdeas]. -message GenerateKeywordIdeaResponse { - // Results of generating keyword ideas. - repeated GenerateKeywordIdeaResult results = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. - // `next_page_token` is not returned for the last page. - string next_page_token = 2; - - // Total number of results available. - int64 total_size = 3; -} - -// The result of generating keyword ideas. -message GenerateKeywordIdeaResult { - // Text of the keyword idea. - // As in Keyword Plan historical metrics, this text may not be an actual - // keyword, but the canonical form of multiple keywords. - // See KeywordPlanKeywordHistoricalMetrics message in KeywordPlanService. - google.protobuf.StringValue text = 2; - - // The historical metrics for the keyword - google.ads.googleads.v4.common.KeywordPlanHistoricalMetrics keyword_idea_metrics = 3; -} diff --git a/google/ads/googleads/v4/services/keyword_plan_service.proto b/google/ads/googleads/v4/services/keyword_plan_service.proto deleted file mode 100644 index daee3d97c..000000000 --- a/google/ads/googleads/v4/services/keyword_plan_service.proto +++ /dev/null @@ -1,322 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/common/keyword_plan_common.proto"; -import "google/ads/googleads/v4/resources/keyword_plan.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/protobuf/wrappers.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the keyword plan service. - -// Service to manage keyword plans. -service KeywordPlanService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested plan in full detail. - rpc GetKeywordPlan(GetKeywordPlanRequest) returns (google.ads.googleads.v4.resources.KeywordPlan) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/keywordPlans/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes keyword plans. Operation statuses are - // returned. - rpc MutateKeywordPlans(MutateKeywordPlansRequest) returns (MutateKeywordPlansResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/keywordPlans:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Returns the requested Keyword Plan forecast curve. - // Only the bidding strategy is considered for generating forecast curve. - // The bidding strategy value specified in the plan is ignored. - // - // To generate a forecast at a value specified in the plan, use - // KeywordPlanService.GenerateForecastMetrics. - rpc GenerateForecastCurve(GenerateForecastCurveRequest) returns (GenerateForecastCurveResponse) { - option (google.api.http) = { - post: "/v4/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" - body: "*" - }; - option (google.api.method_signature) = "keyword_plan"; - } - - // Returns the requested Keyword Plan forecasts. - rpc GenerateForecastMetrics(GenerateForecastMetricsRequest) returns (GenerateForecastMetricsResponse) { - option (google.api.http) = { - post: "/v4/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" - body: "*" - }; - option (google.api.method_signature) = "keyword_plan"; - } - - // Returns the requested Keyword Plan historical metrics. - rpc GenerateHistoricalMetrics(GenerateHistoricalMetricsRequest) returns (GenerateHistoricalMetricsResponse) { - option (google.api.http) = { - post: "/v4/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" - body: "*" - }; - option (google.api.method_signature) = "keyword_plan"; - } -} - -// Request message for [KeywordPlanService.GetKeywordPlan][google.ads.googleads.v4.services.KeywordPlanService.GetKeywordPlan]. -message GetKeywordPlanRequest { - // Required. The resource name of the plan to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Request message for [KeywordPlanService.MutateKeywordPlans][google.ads.googleads.v4.services.KeywordPlanService.MutateKeywordPlans]. -message MutateKeywordPlansRequest { - // Required. The ID of the customer whose keyword plans are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual keyword plans. - repeated KeywordPlanOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a keyword plan. -message KeywordPlanOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new keyword plan. - google.ads.googleads.v4.resources.KeywordPlan create = 1; - - // Update operation: The keyword plan is expected to have a valid resource - // name. - google.ads.googleads.v4.resources.KeywordPlan update = 2; - - // Remove operation: A resource name for the removed keyword plan is - // expected in this format: - // - // `customers/{customer_id}/keywordPlans/{keyword_plan_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - }]; - } -} - -// Response message for a keyword plan mutate. -message MutateKeywordPlansResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlansResult results = 2; -} - -// The result for the keyword plan mutate. -message MutateKeywordPlansResult { - // Returned for successful operations. - string resource_name = 1; -} - -// Request message for [KeywordPlanService.GenerateForecastCurve][google.ads.googleads.v4.services.KeywordPlanService.GenerateForecastCurve]. -message GenerateForecastCurveRequest { - // Required. The resource name of the keyword plan to be forecasted. - string keyword_plan = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Response message for [KeywordPlanService.GenerateForecastCurve][google.ads.googleads.v4.services.KeywordPlanService.GenerateForecastCurve]. -message GenerateForecastCurveResponse { - // List of forecast curves for the keyword plan campaign. - // One maximum. - repeated KeywordPlanCampaignForecastCurve campaign_forecast_curves = 1; -} - -// Request message for [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v4.services.KeywordPlanService.GenerateForecastMetrics]. -message GenerateForecastMetricsRequest { - // Required. The resource name of the keyword plan to be forecasted. - string keyword_plan = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Response message for [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v4.services.KeywordPlanService.GenerateForecastMetrics]. -message GenerateForecastMetricsResponse { - // List of campaign forecasts. - // One maximum. - repeated KeywordPlanCampaignForecast campaign_forecasts = 1; - - // List of ad group forecasts. - repeated KeywordPlanAdGroupForecast ad_group_forecasts = 2; - - // List of keyword forecasts. - repeated KeywordPlanKeywordForecast keyword_forecasts = 3; -} - -// A campaign forecast. -message KeywordPlanCampaignForecast { - // The resource name of the Keyword Plan campaign related to the forecast. - // - // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` - google.protobuf.StringValue keyword_plan_campaign = 1; - - // The forecast for the Keyword Plan campaign. - ForecastMetrics campaign_forecast = 2; -} - -// An ad group forecast. -message KeywordPlanAdGroupForecast { - // The resource name of the Keyword Plan ad group related to the forecast. - // - // `customers/{customer_id}/keywordPlanAdGroups/{keyword_plan_ad_group_id}` - google.protobuf.StringValue keyword_plan_ad_group = 1; - - // The forecast for the Keyword Plan ad group. - ForecastMetrics ad_group_forecast = 2; -} - -// A keyword forecast. -message KeywordPlanKeywordForecast { - // The resource name of the Keyword Plan keyword related to the forecast. - // - // `customers/{customer_id}/keywordPlanAdGroupKeywords/{keyword_plan_ad_group_keyword_id}` - google.protobuf.StringValue keyword_plan_ad_group_keyword = 1; - - // The forecast for the Keyword Plan keyword. - ForecastMetrics keyword_forecast = 2; -} - -// The forecast curve for the campaign. -message KeywordPlanCampaignForecastCurve { - // The resource name of the Keyword Plan campaign related to the forecast. - // - // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` - google.protobuf.StringValue keyword_plan_campaign = 1; - - // The max cpc bid forecast curve for the campaign. - KeywordPlanMaxCpcBidForecastCurve max_cpc_bid_forecast_curve = 2; -} - -// The max cpc bid forecast curve. -message KeywordPlanMaxCpcBidForecastCurve { - // The forecasts for the Keyword Plan campaign at different max CPC bids. - repeated KeywordPlanMaxCpcBidForecast max_cpc_bid_forecasts = 1; -} - -// The forecast of the campaign at a specific bid. -message KeywordPlanMaxCpcBidForecast { - // The max cpc bid in micros. - google.protobuf.Int64Value max_cpc_bid_micros = 1; - - // The forecast for the Keyword Plan campaign at the specific bid. - ForecastMetrics max_cpc_bid_forecast = 2; -} - -// Forecast metrics. -message ForecastMetrics { - // Impressions - google.protobuf.DoubleValue impressions = 1; - - // Ctr - google.protobuf.DoubleValue ctr = 2; - - // AVG cpc - google.protobuf.Int64Value average_cpc = 3; - - // Clicks - google.protobuf.DoubleValue clicks = 5; - - // Cost - google.protobuf.Int64Value cost_micros = 6; -} - -// Request message for [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v4.services.KeywordPlanService.GenerateHistoricalMetrics]. -message GenerateHistoricalMetricsRequest { - // Required. The resource name of the keyword plan of which historical metrics are - // requested. - string keyword_plan = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Response message for [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v4.services.KeywordPlanService.GenerateHistoricalMetrics]. -message GenerateHistoricalMetricsResponse { - // List of keyword historical metrics. - repeated KeywordPlanKeywordHistoricalMetrics metrics = 1; -} - -// A keyword historical metrics. -message KeywordPlanKeywordHistoricalMetrics { - // The text of the query associated with one or more ad_group_keywords in the - // plan. - // - // Note that we de-dupe your keywords list, eliminating close variants before - // returning the plan's keywords as text. For example, if your plan originally - // contained the keywords 'car' and 'cars', the returned search query will - // only contain 'cars'. - // Starting V5, the list of de-duped queries will be included in - // close_variants field. - google.protobuf.StringValue search_query = 1; - - // The historical metrics for the query associated with one or more - // ad_group_keywords in the plan. - google.ads.googleads.v4.common.KeywordPlanHistoricalMetrics keyword_metrics = 2; -} diff --git a/google/ads/googleads/v4/services/keyword_view_service.proto b/google/ads/googleads/v4/services/keyword_view_service.proto deleted file mode 100644 index dc6cdb9c2..000000000 --- a/google/ads/googleads/v4/services/keyword_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/keyword_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Keyword View service. - -// Service to manage keyword views. -service KeywordViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested keyword view in full detail. - rpc GetKeywordView(GetKeywordViewRequest) returns (google.ads.googleads.v4.resources.KeywordView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/keywordViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [KeywordViewService.GetKeywordView][google.ads.googleads.v4.services.KeywordViewService.GetKeywordView]. -message GetKeywordViewRequest { - // Required. The resource name of the keyword view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/label_service.proto b/google/ads/googleads/v4/services/label_service.proto deleted file mode 100644 index 510477158..000000000 --- a/google/ads/googleads/v4/services/label_service.proto +++ /dev/null @@ -1,126 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LabelServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Service to manage labels. -service LabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested label in full detail. - rpc GetLabel(GetLabelRequest) returns (google.ads.googleads.v4.resources.Label) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/labels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes labels. Operation statuses are returned. - rpc MutateLabels(MutateLabelsRequest) returns (MutateLabelsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/labels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [LabelService.GetLabel][google.ads.googleads.v4.services.LabelService.GetLabel]. -message GetLabelRequest { - // Required. The resource name of the label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} - -// Request message for [LabelService.MutateLabels][google.ads.googleads.v4.services.LabelService.MutateLabels]. -message MutateLabelsRequest { - // Required. ID of the customer whose labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on labels. - repeated LabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove, update) on a label. -message LabelOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new label. - google.ads.googleads.v4.resources.Label create = 1; - - // Update operation: The label is expected to have a valid resource name. - google.ads.googleads.v4.resources.Label update = 2; - - // Remove operation: A resource name for the label being removed, in - // this format: - // - // `customers/{customer_id}/labels/{label_id}` - string remove = 3; - } -} - -// Response message for a labels mutate. -message MutateLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateLabelResult results = 2; -} - -// The result for a label mutate. -message MutateLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/landing_page_view_service.proto b/google/ads/googleads/v4/services/landing_page_view_service.proto deleted file mode 100644 index d386d4869..000000000 --- a/google/ads/googleads/v4/services/landing_page_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/landing_page_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LandingPageViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the landing page view service. - -// Service to fetch landing page views. -service LandingPageViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested landing page view in full detail. - rpc GetLandingPageView(GetLandingPageViewRequest) returns (google.ads.googleads.v4.resources.LandingPageView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/landingPageViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [LandingPageViewService.GetLandingPageView][google.ads.googleads.v4.services.LandingPageViewService.GetLandingPageView]. -message GetLandingPageViewRequest { - // Required. The resource name of the landing page view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LandingPageView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/language_constant_service.proto b/google/ads/googleads/v4/services/language_constant_service.proto deleted file mode 100644 index 1b3eb9f19..000000000 --- a/google/ads/googleads/v4/services/language_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/language_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LanguageConstantServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the language constant service. - -// Service to fetch language constants. -service LanguageConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested language constant. - rpc GetLanguageConstant(GetLanguageConstantRequest) returns (google.ads.googleads.v4.resources.LanguageConstant) { - option (google.api.http) = { - get: "/v4/{resource_name=languageConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [LanguageConstantService.GetLanguageConstant][google.ads.googleads.v4.services.LanguageConstantService.GetLanguageConstant]. -message GetLanguageConstantRequest { - // Required. Resource name of the language constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LanguageConstant" - } - ]; -} diff --git a/google/ads/googleads/v4/services/location_view_service.proto b/google/ads/googleads/v4/services/location_view_service.proto deleted file mode 100644 index 8610665b0..000000000 --- a/google/ads/googleads/v4/services/location_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/location_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LocationViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Location View service. - -// Service to fetch location views. -service LocationViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested location view in full detail. - rpc GetLocationView(GetLocationViewRequest) returns (google.ads.googleads.v4.resources.LocationView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/locationViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [LocationViewService.GetLocationView][google.ads.googleads.v4.services.LocationViewService.GetLocationView]. -message GetLocationViewRequest { - // Required. The resource name of the location view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LocationView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/managed_placement_view_service.proto b/google/ads/googleads/v4/services/managed_placement_view_service.proto deleted file mode 100644 index 0bb86ba59..000000000 --- a/google/ads/googleads/v4/services/managed_placement_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/managed_placement_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ManagedPlacementViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Managed Placement View service. - -// Service to manage Managed Placement views. -service ManagedPlacementViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Managed Placement view in full detail. - rpc GetManagedPlacementView(GetManagedPlacementViewRequest) returns (google.ads.googleads.v4.resources.ManagedPlacementView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/managedPlacementViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ManagedPlacementViewService.GetManagedPlacementView][google.ads.googleads.v4.services.ManagedPlacementViewService.GetManagedPlacementView]. -message GetManagedPlacementViewRequest { - // Required. The resource name of the Managed Placement View to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ManagedPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/media_file_service.proto b/google/ads/googleads/v4/services/media_file_service.proto deleted file mode 100644 index 8fbeee3a8..000000000 --- a/google/ads/googleads/v4/services/media_file_service.proto +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/media_file.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MediaFileServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Media File service. - -// Service to manage media files. -service MediaFileService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested media file in full detail. - rpc GetMediaFile(GetMediaFileRequest) returns (google.ads.googleads.v4.resources.MediaFile) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/mediaFiles/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates media files. Operation statuses are returned. - rpc MutateMediaFiles(MutateMediaFilesRequest) returns (MutateMediaFilesResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/mediaFiles:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [MediaFileService.GetMediaFile][google.ads.googleads.v4.services.MediaFileService.GetMediaFile] -message GetMediaFileRequest { - // Required. The resource name of the media file to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MediaFile" - } - ]; -} - -// Request message for [MediaFileService.MutateMediaFiles][google.ads.googleads.v4.services.MediaFileService.MutateMediaFiles] -message MutateMediaFilesRequest { - // Required. The ID of the customer whose media files are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual media file. - repeated MediaFileOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation to create media file. -message MediaFileOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new media file. - google.ads.googleads.v4.resources.MediaFile create = 1; - } -} - -// Response message for a media file mutate. -message MutateMediaFilesResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateMediaFileResult results = 2; -} - -// The result for the media file mutate. -message MutateMediaFileResult { - // The resource name returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/merchant_center_link_service.proto b/google/ads/googleads/v4/services/merchant_center_link_service.proto deleted file mode 100644 index ba3b73d1c..000000000 --- a/google/ads/googleads/v4/services/merchant_center_link_service.proto +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/merchant_center_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MerchantCenterLinkServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the MerchantCenterLink service. - -// This service allows management of links between Google Ads and Google -// Merchant Center. -service MerchantCenterLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns Merchant Center links available for this customer. - rpc ListMerchantCenterLinks(ListMerchantCenterLinksRequest) returns (ListMerchantCenterLinksResponse) { - option (google.api.http) = { - get: "/v4/customers/{customer_id=*}/merchantCenterLinks" - }; - option (google.api.method_signature) = "customer_id"; - } - - // Returns the Merchant Center link in full detail. - rpc GetMerchantCenterLink(GetMerchantCenterLinkRequest) returns (google.ads.googleads.v4.resources.MerchantCenterLink) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/merchantCenterLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Updates status or removes a Merchant Center link. - rpc MutateMerchantCenterLink(MutateMerchantCenterLinkRequest) returns (MutateMerchantCenterLinkResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/merchantCenterLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for [MerchantCenterLinkService.ListMerchantCenterLinks][google.ads.googleads.v4.services.MerchantCenterLinkService.ListMerchantCenterLinks]. -message ListMerchantCenterLinksRequest { - // Required. The ID of the customer onto which to apply the Merchant Center link list - // operation. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [MerchantCenterLinkService.ListMerchantCenterLinks][google.ads.googleads.v4.services.MerchantCenterLinkService.ListMerchantCenterLinks]. -message ListMerchantCenterLinksResponse { - // Merchant Center links available for the requested customer - repeated google.ads.googleads.v4.resources.MerchantCenterLink merchant_center_links = 1; -} - -// Request message for [MerchantCenterLinkService.GetMerchantCenterLink][google.ads.googleads.v4.services.MerchantCenterLinkService.GetMerchantCenterLink]. -message GetMerchantCenterLinkRequest { - // Required. Resource name of the Merchant Center link. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MerchantCenterLink" - } - ]; -} - -// Request message for [MerchantCenterLinkService.MutateMerchantCenterLink][google.ads.googleads.v4.services.MerchantCenterLinkService.MutateMerchantCenterLink]. -message MutateMerchantCenterLinkRequest { - // Required. The ID of the customer being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the link - MerchantCenterLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single update on a Merchant Center link. -message MerchantCenterLinkOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 3; - - // The operation to perform - oneof operation { - // Update operation: The merchant center link is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.MerchantCenterLink update = 1; - - // Remove operation: A resource name for the removed merchant center link is - // expected, in this format: - // - // `customers/{customer_id}/merchantCenterLinks/{merchant_center_id}` - string remove = 2; - } -} - -// Response message for Merchant Center link mutate. -message MutateMerchantCenterLinkResponse { - // Result for the mutate. - MutateMerchantCenterLinkResult result = 2; -} - -// The result for the Merchant Center link mutate. -message MutateMerchantCenterLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/mobile_app_category_constant_service.proto b/google/ads/googleads/v4/services/mobile_app_category_constant_service.proto deleted file mode 100644 index e6a5af22a..000000000 --- a/google/ads/googleads/v4/services/mobile_app_category_constant_service.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/mobile_app_category_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MobileAppCategoryConstantServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Service to fetch mobile app category constants. -service MobileAppCategoryConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested mobile app category constant. - rpc GetMobileAppCategoryConstant(GetMobileAppCategoryConstantRequest) returns (google.ads.googleads.v4.resources.MobileAppCategoryConstant) { - option (google.api.http) = { - get: "/v4/{resource_name=mobileAppCategoryConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [MobileAppCategoryConstantService.GetMobileAppCategoryConstant][google.ads.googleads.v4.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant]. -message GetMobileAppCategoryConstantRequest { - // Required. Resource name of the mobile app category constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileAppCategoryConstant" - } - ]; -} diff --git a/google/ads/googleads/v4/services/mobile_device_constant_service.proto b/google/ads/googleads/v4/services/mobile_device_constant_service.proto deleted file mode 100644 index 9f0b8ce4c..000000000 --- a/google/ads/googleads/v4/services/mobile_device_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/mobile_device_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MobileDeviceConstantServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the mobile device constant service. - -// Service to fetch mobile device constants. -service MobileDeviceConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested mobile device constant in full detail. - rpc GetMobileDeviceConstant(GetMobileDeviceConstantRequest) returns (google.ads.googleads.v4.resources.MobileDeviceConstant) { - option (google.api.http) = { - get: "/v4/{resource_name=mobileDeviceConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [MobileDeviceConstantService.GetMobileDeviceConstant][google.ads.googleads.v4.services.MobileDeviceConstantService.GetMobileDeviceConstant]. -message GetMobileDeviceConstantRequest { - // Required. Resource name of the mobile device to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileDeviceConstant" - } - ]; -} diff --git a/google/ads/googleads/v4/services/offline_user_data_job_service.proto b/google/ads/googleads/v4/services/offline_user_data_job_service.proto deleted file mode 100644 index c56345914..000000000 --- a/google/ads/googleads/v4/services/offline_user_data_job_service.proto +++ /dev/null @@ -1,171 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/common/offline_user_data.proto"; -import "google/ads/googleads/v4/resources/offline_user_data_job.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/protobuf/wrappers.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the OfflineUserDataJobService. - -// Service to manage offline user data jobs. -service OfflineUserDataJobService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Creates an offline user data job. - rpc CreateOfflineUserDataJob(CreateOfflineUserDataJobRequest) returns (CreateOfflineUserDataJobResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/offlineUserDataJobs:create" - body: "*" - }; - option (google.api.method_signature) = "customer_id,job"; - } - - // Returns the offline user data job. - rpc GetOfflineUserDataJob(GetOfflineUserDataJobRequest) returns (google.ads.googleads.v4.resources.OfflineUserDataJob) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/offlineUserDataJobs/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Adds operations to the offline user data job. - rpc AddOfflineUserDataJobOperations(AddOfflineUserDataJobOperationsRequest) returns (AddOfflineUserDataJobOperationsResponse) { - option (google.api.http) = { - post: "/v4/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" - body: "*" - }; - option (google.api.method_signature) = "resource_name,operations"; - } - - // Runs the offline user data job. - // - // When finished, the long running operation will contain the processing - // result or failure information, if any. - rpc RunOfflineUserDataJob(RunOfflineUserDataJobRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v4/{resource_name=customers/*/offlineUserDataJobs/*}:run" - body: "*" - }; - option (google.api.method_signature) = "resource_name"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.protobuf.Empty" - }; - } -} - -// Request message for -// [OfflineUserDataJobService.CreateOfflineUserDataJob][google.ads.googleads.v4.services.OfflineUserDataJobService.CreateOfflineUserDataJob]. -message CreateOfflineUserDataJobRequest { - // Required. The ID of the customer for which to create an offline user data job. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The offline user data job to be created. - google.ads.googleads.v4.resources.OfflineUserDataJob job = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for -// [OfflineUserDataJobService.CreateOfflineUserDataJob][google.ads.googleads.v4.services.OfflineUserDataJobService.CreateOfflineUserDataJob]. -message CreateOfflineUserDataJobResponse { - // The resource name of the OfflineUserDataJob. - string resource_name = 1; -} - -// Request message for [OfflineUserDataJobService.GetOfflineUserDataJob][google.ads.googleads.v4.services.OfflineUserDataJobService.GetOfflineUserDataJob]. -message GetOfflineUserDataJobRequest { - // Required. The resource name of the OfflineUserDataJob to get. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; -} - -// Request message for [OfflineUserDataJobService.RunOfflineUserDataJob][google.ads.googleads.v4.services.OfflineUserDataJobService.RunOfflineUserDataJob]. -message RunOfflineUserDataJobRequest { - // Required. The resource name of the OfflineUserDataJob to run. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; -} - -// Request message for -// [OfflineUserDataJobService.AddOfflineUserDataJobOperations][google.ads.googleads.v4.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations]. -message AddOfflineUserDataJobOperationsRequest { - // Required. The resource name of the OfflineUserDataJob. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; - - // True to enable partial failure for the offline user data job. - google.protobuf.BoolValue enable_partial_failure = 2; - - // Required. The list of operations to be done. - repeated OfflineUserDataJobOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; -} - -// Operation to be made for the AddOfflineUserDataJobOperationsRequest. -message OfflineUserDataJobOperation { - // Operation to be made for the AddOfflineUserDataJobOperationsRequest. - oneof operation { - // Add the provided data to the transaction. Data cannot be retrieved after - // being uploaded. - google.ads.googleads.v4.common.UserData create = 1; - - // Remove the provided data from the transaction. Data cannot be retrieved - // after being uploaded. - google.ads.googleads.v4.common.UserData remove = 2; - - // Remove all previously provided data. This is only supported for Customer - // Match. - bool remove_all = 3; - } -} - -// Response message for -// [OfflineUserDataJobService.AddOfflineUserDataJobOperations][google.ads.googleads.v4.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations]. -message AddOfflineUserDataJobOperationsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 1; -} diff --git a/google/ads/googleads/v4/services/operating_system_version_constant_service.proto b/google/ads/googleads/v4/services/operating_system_version_constant_service.proto deleted file mode 100644 index 605ddb036..000000000 --- a/google/ads/googleads/v4/services/operating_system_version_constant_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/operating_system_version_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "OperatingSystemVersionConstantServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the OS version constant service - -// Service to fetch Operating System Version constants. -service OperatingSystemVersionConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested OS version constant in full detail. - rpc GetOperatingSystemVersionConstant(GetOperatingSystemVersionConstantRequest) returns (google.ads.googleads.v4.resources.OperatingSystemVersionConstant) { - option (google.api.http) = { - get: "/v4/{resource_name=operatingSystemVersionConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant][google.ads.googleads.v4.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant]. -message GetOperatingSystemVersionConstantRequest { - // Required. Resource name of the OS version to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OperatingSystemVersionConstant" - } - ]; -} diff --git a/google/ads/googleads/v4/services/paid_organic_search_term_view_service.proto b/google/ads/googleads/v4/services/paid_organic_search_term_view_service.proto deleted file mode 100644 index 8fa088ccd..000000000 --- a/google/ads/googleads/v4/services/paid_organic_search_term_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/paid_organic_search_term_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "PaidOrganicSearchTermViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Paid Organic Search Term View service. - -// Service to fetch paid organic search term views. -service PaidOrganicSearchTermViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested paid organic search term view in full detail. - rpc GetPaidOrganicSearchTermView(GetPaidOrganicSearchTermViewRequest) returns (google.ads.googleads.v4.resources.PaidOrganicSearchTermView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/paidOrganicSearchTermViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView][google.ads.googleads.v4.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView]. -message GetPaidOrganicSearchTermViewRequest { - // Required. The resource name of the paid organic search term view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaidOrganicSearchTermView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/parental_status_view_service.proto b/google/ads/googleads/v4/services/parental_status_view_service.proto deleted file mode 100644 index 68c1a79be..000000000 --- a/google/ads/googleads/v4/services/parental_status_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/parental_status_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ParentalStatusViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Parental Status View service. - -// Service to manage parental status views. -service ParentalStatusViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested parental status view in full detail. - rpc GetParentalStatusView(GetParentalStatusViewRequest) returns (google.ads.googleads.v4.resources.ParentalStatusView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/parentalStatusViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ParentalStatusViewService.GetParentalStatusView][google.ads.googleads.v4.services.ParentalStatusViewService.GetParentalStatusView]. -message GetParentalStatusViewRequest { - // Required. The resource name of the parental status view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ParentalStatusView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/payments_account_service.proto b/google/ads/googleads/v4/services/payments_account_service.proto deleted file mode 100644 index 1de74bd44..000000000 --- a/google/ads/googleads/v4/services/payments_account_service.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/payments_account.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "PaymentsAccountServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the payments account service. - -// Service to provide payments accounts that can be used to set up consolidated -// billing. -service PaymentsAccountService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns all payments accounts associated with all managers - // between the login customer ID and specified serving customer in the - // hierarchy, inclusive. - rpc ListPaymentsAccounts(ListPaymentsAccountsRequest) returns (ListPaymentsAccountsResponse) { - option (google.api.http) = { - get: "/v4/customers/{customer_id=*}/paymentsAccounts" - }; - option (google.api.method_signature) = "customer_id"; - } -} - -// Request message for fetching all accessible payments accounts. -message ListPaymentsAccountsRequest { - // Required. The ID of the customer to apply the PaymentsAccount list operation to. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [PaymentsAccountService.ListPaymentsAccounts][google.ads.googleads.v4.services.PaymentsAccountService.ListPaymentsAccounts]. -message ListPaymentsAccountsResponse { - // The list of accessible payments accounts. - repeated google.ads.googleads.v4.resources.PaymentsAccount payments_accounts = 1; -} diff --git a/google/ads/googleads/v4/services/product_bidding_category_constant_service.proto b/google/ads/googleads/v4/services/product_bidding_category_constant_service.proto deleted file mode 100644 index 3066da1b1..000000000 --- a/google/ads/googleads/v4/services/product_bidding_category_constant_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/product_bidding_category_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryConstantServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Product Bidding Category constant service - -// Service to fetch Product Bidding Categories. -service ProductBiddingCategoryConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Product Bidding Category in full detail. - rpc GetProductBiddingCategoryConstant(GetProductBiddingCategoryConstantRequest) returns (google.ads.googleads.v4.resources.ProductBiddingCategoryConstant) { - option (google.api.http) = { - get: "/v4/{resource_name=productBiddingCategoryConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant][google.ads.googleads.v4.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant]. -message GetProductBiddingCategoryConstantRequest { - // Required. Resource name of the Product Bidding Category to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - } - ]; -} diff --git a/google/ads/googleads/v4/services/product_group_view_service.proto b/google/ads/googleads/v4/services/product_group_view_service.proto deleted file mode 100644 index bc990257e..000000000 --- a/google/ads/googleads/v4/services/product_group_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/product_group_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ProductGroupViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the ProductGroup View service. - -// Service to manage product group views. -service ProductGroupViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested product group view in full detail. - rpc GetProductGroupView(GetProductGroupViewRequest) returns (google.ads.googleads.v4.resources.ProductGroupView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/productGroupViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ProductGroupViewService.GetProductGroupView][google.ads.googleads.v4.services.ProductGroupViewService.GetProductGroupView]. -message GetProductGroupViewRequest { - // Required. The resource name of the product group view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductGroupView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/reach_plan_service.proto b/google/ads/googleads/v4/services/reach_plan_service.proto deleted file mode 100644 index ea02421d2..000000000 --- a/google/ads/googleads/v4/services/reach_plan_service.proto +++ /dev/null @@ -1,392 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/common/criteria.proto"; -import "google/ads/googleads/v4/enums/frequency_cap_time_unit.proto"; -import "google/ads/googleads/v4/enums/reach_plan_ad_length.proto"; -import "google/ads/googleads/v4/enums/reach_plan_age_range.proto"; -import "google/ads/googleads/v4/enums/reach_plan_network.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/protobuf/wrappers.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the reach plan service. - -// Reach Plan Service gives users information about audience size that can -// be reached through advertisement on YouTube. In particular, -// GenerateReachForecast provides estimated number of people of specified -// demographics that can be reached by an ad in a given market by a campaign of -// certain duration with a defined budget. -service ReachPlanService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the list of plannable locations (for example, countries & DMAs). - rpc ListPlannableLocations(ListPlannableLocationsRequest) returns (ListPlannableLocationsResponse) { - option (google.api.http) = { - post: "/v4:listPlannableLocations" - body: "*" - }; - } - - // Returns the list of per-location plannable YouTube ad formats with allowed - // targeting. - rpc ListPlannableProducts(ListPlannableProductsRequest) returns (ListPlannableProductsResponse) { - option (google.api.http) = { - post: "/v4:listPlannableProducts" - body: "*" - }; - option (google.api.method_signature) = "plannable_location_id"; - } - - // Generates a product mix ideas given a set of preferences. This method - // helps the advertiser to obtain a good mix of ad formats and budget - // allocations based on its preferences. - rpc GenerateProductMixIdeas(GenerateProductMixIdeasRequest) returns (GenerateProductMixIdeasResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}:generateProductMixIdeas" - body: "*" - }; - option (google.api.method_signature) = "customer_id,plannable_location_id,currency_code,budget_micros"; - } - - // Generates a reach forecast for a given targeting / product mix. - rpc GenerateReachForecast(GenerateReachForecastRequest) returns (GenerateReachForecastResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}:generateReachForecast" - body: "*" - }; - option (google.api.method_signature) = "customer_id,campaign_duration,planned_products"; - } -} - -// Request message for [ReachPlanService.ListPlannableLocations][google.ads.googleads.v4.services.ReachPlanService.ListPlannableLocations]. -message ListPlannableLocationsRequest { - -} - -// The list of plannable locations. -message ListPlannableLocationsResponse { - // The list of locations available for planning (Countries, DMAs, - // sub-countries). - // For locations like Countries, DMAs see - // https://developers.google.com/adwords/api/docs/appendix/geotargeting for - // more information. - repeated PlannableLocation plannable_locations = 1; -} - -// A plannable location: a country, a DMA, a metro region, a tv region, -// a province. -message PlannableLocation { - // The location identifier. - google.protobuf.StringValue id = 1; - - // The unique location name in english. - google.protobuf.StringValue name = 2; - - // The parent country code, not present if location is a country. - // If present will always be a criterion id: additional information, such as - // country name are returned both via ListPlannableLocations or directly by - // accessing GeoTargetConstantService with the criterion id. - google.protobuf.Int64Value parent_country_id = 3; -} - -// Request to list available products in a given location. -message ListPlannableProductsRequest { - // Required. The ID of the selected location for planning. To list the available - // plannable location ids use ListPlannableLocations. - google.protobuf.StringValue plannable_location_id = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// A response with all available products. -message ListPlannableProductsResponse { - // The list of products available for planning and related targeting metadata. - repeated ProductMetadata product_metadata = 1; -} - -// The metadata associated with an available plannable product. -message ProductMetadata { - // The code associated with the ad product. E.g. BUMPER, TRUEVIEW_IN_STREAM - // To list the available plannable product codes use ListPlannableProducts. - google.protobuf.StringValue plannable_product_code = 1; - - // The allowed plannable targeting for this product. - PlannableTargeting plannable_targeting = 2; -} - -// The targeting for which traffic metrics will be reported. -message PlannableTargeting { - // Allowed plannable age ranges for the product for which metrics will be - // reported. Actual targeting is computed by mapping this age range onto - // standard Google common.AgeRangeInfo values. - repeated google.ads.googleads.v4.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_ranges = 1; - - // Targetable genders for the ad product. - repeated google.ads.googleads.v4.common.GenderInfo genders = 2; - - // Targetable devices for the ad product. - repeated google.ads.googleads.v4.common.DeviceInfo devices = 3; - - // Targetable networks for the ad product. - repeated google.ads.googleads.v4.enums.ReachPlanNetworkEnum.ReachPlanNetwork networks = 4; -} - -// Request message for [ReachPlanService.GenerateProductMixIdeas][google.ads.googleads.v4.services.ReachPlanService.GenerateProductMixIdeas]. -message GenerateProductMixIdeasRequest { - // Required. The ID of the customer. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The ID of the location, this is one of the ids returned by - // ListPlannableLocations. - google.protobuf.StringValue plannable_location_id = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. Currency code. - // Three-character ISO 4217 currency code. - google.protobuf.StringValue currency_code = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. Total budget. - // Amount in micros. One million is equivalent to one unit. - google.protobuf.Int64Value budget_micros = 4 [(google.api.field_behavior) = REQUIRED]; - - // The preferences of the suggested product mix. - // An unset preference is interpreted as all possible values are allowed, - // unless explicitly specified. - Preferences preferences = 5; -} - -// Set of preferences about the planned mix. -message Preferences { - // True if ad skippable. - // If not set, default is any value. - google.protobuf.BoolValue is_skippable = 1; - - // True if ad start with sound. - // If not set, default is any value. - google.protobuf.BoolValue starts_with_sound = 2; - - // The length of the ad. - // If not set, default is any value. - google.ads.googleads.v4.enums.ReachPlanAdLengthEnum.ReachPlanAdLength ad_length = 3; - - // True if ad will only show on the top content. - // If not set, default is false. - google.protobuf.BoolValue top_content_only = 4; - - // True if the price guaranteed. The cost of serving the ad is agreed upfront - // and not subject to an auction. - // If not set, default is any value. - google.protobuf.BoolValue has_guaranteed_price = 5; -} - -// The suggested product mix. -message GenerateProductMixIdeasResponse { - // A list of products (ad formats) and the associated budget allocation idea. - repeated ProductAllocation product_allocation = 1; -} - -// An allocation of a part of the budget on a given product. -message ProductAllocation { - // Selected product for planning. The product codes returned are within the - // set of the ones returned by ListPlannableProducts when using the same - // location id. - google.protobuf.StringValue plannable_product_code = 1; - - // The value to be allocated for the suggested product in requested currency. - // Amount in micros. One million is equivalent to one unit. - google.protobuf.Int64Value budget_micros = 2; -} - -// Request message for [ReachPlanService.GenerateReachForecast][google.ads.googleads.v4.services.ReachPlanService.GenerateReachForecast]. -message GenerateReachForecastRequest { - // Required. The ID of the customer. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // The currency code. - // Three-character ISO 4217 currency code. - google.protobuf.StringValue currency_code = 2; - - // Required. Campaign duration. - CampaignDuration campaign_duration = 3 [(google.api.field_behavior) = REQUIRED]; - - // Desired cookie frequency cap that will be applied to each planned product. - // This is equivalent to the frequency cap exposed in Google Ads when creating - // a campaign, it represents the maximum number of times an ad can be shown to - // the same user. - // If not specified no cap is applied. - // - // This field is deprecated in v4 and will eventually be removed. - // Please use cookie_frequency_cap_setting instead. - google.protobuf.Int32Value cookie_frequency_cap = 4; - - // Desired cookie frequency cap that will be applied to each planned product. - // This is equivalent to the frequency cap exposed in Google Ads when creating - // a campaign, it represents the maximum number of times an ad can be shown to - // the same user during a specified time interval. - // If not specified, no cap is applied. - // - // This field replaces the deprecated cookie_frequency_cap field. - FrequencyCap cookie_frequency_cap_setting = 8; - - // Desired minimum effective frequency (the number of times a person was - // exposed to the ad) for the reported reach metrics [1-10]. - // This won't affect the targeting, but just the reporting. - // If not specified, a default of 1 is applied. - google.protobuf.Int32Value min_effective_frequency = 5; - - // The targeting to be applied to all products selected in the product mix. - // - // This is planned targeting: execution details might vary based on the - // advertising product, please consult an implementation specialist. - // - // See specific metrics for details on how targeting affects them. - // - // In some cases, targeting may be overridden using the - // PlannedProduct.advanced_product_targeting field. - Targeting targeting = 6; - - // Required. The products to be forecast. - // The max number of allowed planned products is 15. - repeated PlannedProduct planned_products = 7 [(google.api.field_behavior) = REQUIRED]; -} - -// A rule specifying the maximum number of times an ad can be shown to a user -// over a particular time period. -message FrequencyCap { - // Required. The number of impressions, inclusive. - google.protobuf.Int32Value impressions = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The type of time unit. - google.ads.googleads.v4.enums.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit time_unit = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// The targeting for which traffic metrics will be reported. -message Targeting { - // Required. The ID of the selected location. - // Plannable locations ID can be obtained from ListPlannableLocations. - google.protobuf.StringValue plannable_location_id = 1; - - // Targeted age range. - // If not specified, targets all age ranges. - google.ads.googleads.v4.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_range = 2; - - // Targeted genders. - // If not specified, targets all genders. - repeated google.ads.googleads.v4.common.GenderInfo genders = 3; - - // Targeted devices. - // If not specified, targets all applicable devices. Applicable devices vary - // by product and region and can be obtained from ListPlannableProducts. - repeated google.ads.googleads.v4.common.DeviceInfo devices = 4; - - // Targetable network for the ad product. - // If not specified, targets all applicable networks. Applicable networks vary - // by product and region and can be obtained from ListPlannableProducts. - google.ads.googleads.v4.enums.ReachPlanNetworkEnum.ReachPlanNetwork network = 5; -} - -// The duration of a planned campaign. -message CampaignDuration { - // The duration value in days. - google.protobuf.Int32Value duration_in_days = 1; -} - -// A product being planned for reach. -message PlannedProduct { - // Required. Selected product for planning. - // The code associated with the ad product. E.g. Trueview, Bumper - // To list the available plannable product codes use ListPlannableProducts. - google.protobuf.StringValue plannable_product_code = 1; - - // Required. Maximum budget allocation in micros for the selected product. - // The value is specified in the selected planning currency_code. - // E.g. 1 000 000$ = 1 000 000 000 000 micros. - google.protobuf.Int64Value budget_micros = 2; -} - -// Response message containing the generated reach curve. -message GenerateReachForecastResponse { - // Reference on target audiences for this curve. - OnTargetAudienceMetrics on_target_audience_metrics = 1; - - // The generated reach curve for the planned product mix. - ReachCurve reach_curve = 2; -} - -// The reach curve for the planned products. -message ReachCurve { - // All points on the reach curve. - repeated ReachForecast reach_forecasts = 1; -} - -// A point on reach curve. -message ReachForecast { - // The cost in micros. - google.protobuf.Int64Value cost_micros = 1; - - // Forecasted traffic metrics for this point. - Forecast forecast = 2; - - // The forecasted allocation. This differs from the input allocation if one - // or more product cannot fulfill the budget because of limited inventory. - repeated ProductAllocation forecasted_product_allocations = 3; -} - -// Forecasted traffic metrics for the planned products and targeting. -message Forecast { - // Number of unique people reached at least - // GenerateReachForecastRequest.min_effective_frequency times that exactly - // matches the Targeting. - google.protobuf.Int64Value on_target_reach = 1; - - // Total number of unique people reached at least - // GenerateReachForecastRequest.min_effective_frequency times. This includes - // people that may fall outside the specified Targeting. - google.protobuf.Int64Value total_reach = 2; - - // Number of ad impressions that exactly matches the Targeting. - google.protobuf.Int64Value on_target_impressions = 3; - - // Total number of ad impressions. This includes impressions that may fall - // outside the specified Targeting, due to insufficient information on - // signed-in users. - google.protobuf.Int64Value total_impressions = 4; -} - -// Audience metrics for the planned products. -// These metrics consider the following targeting dimensions: -// -// - Location -// - PlannableAgeRange -// - Gender -message OnTargetAudienceMetrics { - // Reference audience size matching the considered targeting for YouTube. - google.protobuf.Int64Value youtube_audience_size = 1; - - // Reference audience size matching the considered targeting for Census. - google.protobuf.Int64Value census_audience_size = 2; -} diff --git a/google/ads/googleads/v4/services/recommendation_service.proto b/google/ads/googleads/v4/services/recommendation_service.proto deleted file mode 100644 index 4d18b49e2..000000000 --- a/google/ads/googleads/v4/services/recommendation_service.proto +++ /dev/null @@ -1,256 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/common/extensions.proto"; -import "google/ads/googleads/v4/enums/keyword_match_type.proto"; -import "google/ads/googleads/v4/resources/ad.proto"; -import "google/ads/googleads/v4/resources/recommendation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Recommendation service. - -// Service to manage recommendations. -service RecommendationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested recommendation in full detail. - rpc GetRecommendation(GetRecommendationRequest) returns (google.ads.googleads.v4.resources.Recommendation) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/recommendations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Applies given recommendations with corresponding apply parameters. - rpc ApplyRecommendation(ApplyRecommendationRequest) returns (ApplyRecommendationResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/recommendations:apply" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Dismisses given recommendations. - rpc DismissRecommendation(DismissRecommendationRequest) returns (DismissRecommendationResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/recommendations:dismiss" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [RecommendationService.GetRecommendation][google.ads.googleads.v4.services.RecommendationService.GetRecommendation]. -message GetRecommendationRequest { - // Required. The resource name of the recommendation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Recommendation" - } - ]; -} - -// Request message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v4.services.RecommendationService.ApplyRecommendation]. -message ApplyRecommendationRequest { - // Required. The ID of the customer with the recommendation. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to apply recommendations. - // If partial_failure=false all recommendations should be of the same type - // There is a limit of 100 operations per request. - repeated ApplyRecommendationOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, operations will be carried - // out as a transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; -} - -// Information about the operation to apply a recommendation and any parameters -// to customize it. -message ApplyRecommendationOperation { - // Parameters to use when applying a campaign budget recommendation. - message CampaignBudgetParameters { - // New budget amount to set for target budget resource. This is a required - // field. - google.protobuf.Int64Value new_budget_amount_micros = 1; - } - - // Parameters to use when applying a text ad recommendation. - message TextAdParameters { - // New ad to add to recommended ad group. All necessary fields need to be - // set in this message. This is a required field. - google.ads.googleads.v4.resources.Ad ad = 1; - } - - // Parameters to use when applying keyword recommendation. - message KeywordParameters { - // The ad group resource to add keyword to. This is a required field. - google.protobuf.StringValue ad_group = 1; - - // The match type of the keyword. This is a required field. - google.ads.googleads.v4.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 2; - - // Optional, CPC bid to set for the keyword. If not set, keyword will use - // bid based on bidding strategy used by target ad group. - google.protobuf.Int64Value cpc_bid_micros = 3; - } - - // Parameters to use when applying Target CPA recommendation. - message TargetCpaOptInParameters { - // Average CPA to use for Target CPA bidding strategy. This is a required - // field. - google.protobuf.Int64Value target_cpa_micros = 1; - - // Optional, budget amount to set for the campaign. - google.protobuf.Int64Value new_campaign_budget_amount_micros = 2; - } - - // Parameters to use when applying callout extension recommendation. - message CalloutExtensionParameters { - // Callout extensions to be added. This is a required field. - repeated google.ads.googleads.v4.common.CalloutFeedItem callout_extensions = 1; - } - - // Parameters to use when applying call extension recommendation. - message CallExtensionParameters { - // Call extensions to be added. This is a required field. - repeated google.ads.googleads.v4.common.CallFeedItem call_extensions = 1; - } - - // Parameters to use when applying sitelink extension recommendation. - message SitelinkExtensionParameters { - // Sitelink extensions to be added. This is a required field. - repeated google.ads.googleads.v4.common.SitelinkFeedItem sitelink_extensions = 1; - } - - // Parameters to use when applying move unused budget recommendation. - message MoveUnusedBudgetParameters { - // Budget amount to move from excess budget to constrained budget. This is - // a required field. - google.protobuf.Int64Value budget_micros_to_move = 1; - } - - // The resource name of the recommendation to apply. - string resource_name = 1; - - // Parameters to use when applying the recommendation. - oneof apply_parameters { - // Optional parameters to use when applying a campaign budget - // recommendation. - CampaignBudgetParameters campaign_budget = 2; - - // Optional parameters to use when applying a text ad recommendation. - TextAdParameters text_ad = 3; - - // Optional parameters to use when applying keyword recommendation. - KeywordParameters keyword = 4; - - // Optional parameters to use when applying target CPA opt-in - // recommendation. - TargetCpaOptInParameters target_cpa_opt_in = 5; - - // Parameters to use when applying callout extension recommendation. - CalloutExtensionParameters callout_extension = 6; - - // Parameters to use when applying call extension recommendation. - CallExtensionParameters call_extension = 7; - - // Parameters to use when applying sitelink extension recommendation. - SitelinkExtensionParameters sitelink_extension = 8; - - // Parameters to use when applying move unused budget recommendation. - MoveUnusedBudgetParameters move_unused_budget = 9; - } -} - -// Response message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v4.services.RecommendationService.ApplyRecommendation]. -message ApplyRecommendationResponse { - // Results of operations to apply recommendations. - repeated ApplyRecommendationResult results = 1; - - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors) - // we return the RPC level error. - google.rpc.Status partial_failure_error = 2; -} - -// The result of applying a recommendation. -message ApplyRecommendationResult { - // Returned for successful applies. - string resource_name = 1; -} - -// Request message for [RecommendationService.DismissRecommendation][google.ads.googleads.v4.services.RecommendationService.DismissRecommendation]. -message DismissRecommendationRequest { - // Operation to dismiss a single recommendation identified by resource_name. - message DismissRecommendationOperation { - // The resource name of the recommendation to dismiss. - string resource_name = 1; - } - - // Required. The ID of the customer with the recommendation. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to dismiss recommendations. - // If partial_failure=false all recommendations should be of the same type - // There is a limit of 100 operations per request. - repeated DismissRecommendationOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, operations will be carried in a - // single transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 2; -} - -// Response message for [RecommendationService.DismissRecommendation][google.ads.googleads.v4.services.RecommendationService.DismissRecommendation]. -message DismissRecommendationResponse { - // The result of dismissing a recommendation. - message DismissRecommendationResult { - // Returned for successful dismissals. - string resource_name = 1; - } - - // Results of operations to dismiss recommendations. - repeated DismissRecommendationResult results = 1; - - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors) - // we return the RPC level error. - google.rpc.Status partial_failure_error = 2; -} diff --git a/google/ads/googleads/v4/services/remarketing_action_service.proto b/google/ads/googleads/v4/services/remarketing_action_service.proto deleted file mode 100644 index 7115e2820..000000000 --- a/google/ads/googleads/v4/services/remarketing_action_service.proto +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/remarketing_action.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "RemarketingActionServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Remarketing Action service. - -// Service to manage remarketing actions. -service RemarketingActionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested remarketing action in full detail. - rpc GetRemarketingAction(GetRemarketingActionRequest) returns (google.ads.googleads.v4.resources.RemarketingAction) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/remarketingActions/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates remarketing actions. Operation statuses are returned. - rpc MutateRemarketingActions(MutateRemarketingActionsRequest) returns (MutateRemarketingActionsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/remarketingActions:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [RemarketingActionService.GetRemarketingAction][google.ads.googleads.v4.services.RemarketingActionService.GetRemarketingAction]. -message GetRemarketingActionRequest { - // Required. The resource name of the remarketing action to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/RemarketingAction" - } - ]; -} - -// Request message for [RemarketingActionService.MutateRemarketingActions][google.ads.googleads.v4.services.RemarketingActionService.MutateRemarketingActions]. -message MutateRemarketingActionsRequest { - // Required. The ID of the customer whose remarketing actions are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual remarketing actions. - repeated RemarketingActionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update) on a remarketing action. -message RemarketingActionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new remarketing - // action. - google.ads.googleads.v4.resources.RemarketingAction create = 1; - - // Update operation: The remarketing action is expected to have a valid - // resource name. - google.ads.googleads.v4.resources.RemarketingAction update = 2; - } -} - -// Response message for remarketing action mutate. -message MutateRemarketingActionsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateRemarketingActionResult results = 2; -} - -// The result for the remarketing action mutate. -message MutateRemarketingActionResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/search_term_view_service.proto b/google/ads/googleads/v4/services/search_term_view_service.proto deleted file mode 100644 index c1e331e9b..000000000 --- a/google/ads/googleads/v4/services/search_term_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/search_term_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Search Term View service. - -// Service to manage search term views. -service SearchTermViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the attributes of the requested search term view. - rpc GetSearchTermView(GetSearchTermViewRequest) returns (google.ads.googleads.v4.resources.SearchTermView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/searchTermViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [SearchTermViewService.GetSearchTermView][google.ads.googleads.v4.services.SearchTermViewService.GetSearchTermView]. -message GetSearchTermViewRequest { - // Required. The resource name of the search term view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SearchTermView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/shared_criterion_service.proto b/google/ads/googleads/v4/services/shared_criterion_service.proto deleted file mode 100644 index a1a7b241c..000000000 --- a/google/ads/googleads/v4/services/shared_criterion_service.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/shared_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "SharedCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Shared Criterion service. - -// Service to manage shared criteria. -service SharedCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested shared criterion in full detail. - rpc GetSharedCriterion(GetSharedCriterionRequest) returns (google.ads.googleads.v4.resources.SharedCriterion) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/sharedCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes shared criteria. Operation statuses are returned. - rpc MutateSharedCriteria(MutateSharedCriteriaRequest) returns (MutateSharedCriteriaResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/sharedCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [SharedCriterionService.GetSharedCriterion][google.ads.googleads.v4.services.SharedCriterionService.GetSharedCriterion]. -message GetSharedCriterionRequest { - // Required. The resource name of the shared criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedCriterion" - } - ]; -} - -// Request message for [SharedCriterionService.MutateSharedCriteria][google.ads.googleads.v4.services.SharedCriterionService.MutateSharedCriteria]. -message MutateSharedCriteriaRequest { - // Required. The ID of the customer whose shared criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual shared criteria. - repeated SharedCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an shared criterion. -message SharedCriterionOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new shared - // criterion. - google.ads.googleads.v4.resources.SharedCriterion create = 1; - - // Remove operation: A resource name for the removed shared criterion is - // expected, in this format: - // - // `customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for a shared criterion mutate. -message MutateSharedCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateSharedCriterionResult results = 2; -} - -// The result for the shared criterion mutate. -message MutateSharedCriterionResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/shared_set_service.proto b/google/ads/googleads/v4/services/shared_set_service.proto deleted file mode 100644 index b05e55593..000000000 --- a/google/ads/googleads/v4/services/shared_set_service.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/shared_set.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Shared Set service. - -// Service to manage shared sets. -service SharedSetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested shared set in full detail. - rpc GetSharedSet(GetSharedSetRequest) returns (google.ads.googleads.v4.resources.SharedSet) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/sharedSets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes shared sets. Operation statuses are returned. - rpc MutateSharedSets(MutateSharedSetsRequest) returns (MutateSharedSetsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/sharedSets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [SharedSetService.GetSharedSet][google.ads.googleads.v4.services.SharedSetService.GetSharedSet]. -message GetSharedSetRequest { - // Required. The resource name of the shared set to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; -} - -// Request message for [SharedSetService.MutateSharedSets][google.ads.googleads.v4.services.SharedSetService.MutateSharedSets]. -message MutateSharedSetsRequest { - // Required. The ID of the customer whose shared sets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual shared sets. - repeated SharedSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on an shared set. -message SharedSetOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new shared set. - google.ads.googleads.v4.resources.SharedSet create = 1; - - // Update operation: The shared set is expected to have a valid resource - // name. - google.ads.googleads.v4.resources.SharedSet update = 2; - - // Remove operation: A resource name for the removed shared set is expected, - // in this format: - // - // `customers/{customer_id}/sharedSets/{shared_set_id}` - string remove = 3; - } -} - -// Response message for a shared set mutate. -message MutateSharedSetsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateSharedSetResult results = 2; -} - -// The result for the shared set mutate. -message MutateSharedSetResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/shopping_performance_view_service.proto b/google/ads/googleads/v4/services/shopping_performance_view_service.proto deleted file mode 100644 index 1d59e312e..000000000 --- a/google/ads/googleads/v4/services/shopping_performance_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/shopping_performance_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ShoppingPerformanceViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the ShoppingPerformanceView service. - -// Service to fetch Shopping performance views. -service ShoppingPerformanceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Shopping performance view in full detail. - rpc GetShoppingPerformanceView(GetShoppingPerformanceViewRequest) returns (google.ads.googleads.v4.resources.ShoppingPerformanceView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/shoppingPerformanceView}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [ShoppingPerformanceViewService.GetShoppingPerformanceView][google.ads.googleads.v4.services.ShoppingPerformanceViewService.GetShoppingPerformanceView]. -message GetShoppingPerformanceViewRequest { - // Required. The resource name of the Shopping performance view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ShoppingPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/third_party_app_analytics_link_service.proto b/google/ads/googleads/v4/services/third_party_app_analytics_link_service.proto deleted file mode 100644 index 62e315d1e..000000000 --- a/google/ads/googleads/v4/services/third_party_app_analytics_link_service.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/third_party_app_analytics_link.proto"; -import "google/api/annotations.proto"; -import "google/api/resource.proto"; -import "google/api/client.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ThirdPartyAppAnalyticsLinkServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// This service allows management of links between Google Ads and third party -// app analytics. -service ThirdPartyAppAnalyticsLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the third party app analytics link in full detail. - rpc GetThirdPartyAppAnalyticsLink(GetThirdPartyAppAnalyticsLinkRequest) returns (google.ads.googleads.v4.resources.ThirdPartyAppAnalyticsLink) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" - }; - } -} - -// Request message for -// [ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink][google.ads.googleads.v4.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink]. -message GetThirdPartyAppAnalyticsLinkRequest { - // Resource name of the third party app analytics link. - string resource_name = 1 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" - }]; -} diff --git a/google/ads/googleads/v4/services/topic_constant_service.proto b/google/ads/googleads/v4/services/topic_constant_service.proto deleted file mode 100644 index 2211359b9..000000000 --- a/google/ads/googleads/v4/services/topic_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/topic_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "TopicConstantServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Topic constant service - -// Service to fetch topic constants. -service TopicConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested topic constant in full detail. - rpc GetTopicConstant(GetTopicConstantRequest) returns (google.ads.googleads.v4.resources.TopicConstant) { - option (google.api.http) = { - get: "/v4/{resource_name=topicConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [TopicConstantService.GetTopicConstant][google.ads.googleads.v4.services.TopicConstantService.GetTopicConstant]. -message GetTopicConstantRequest { - // Required. Resource name of the Topic to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicConstant" - } - ]; -} diff --git a/google/ads/googleads/v4/services/topic_view_service.proto b/google/ads/googleads/v4/services/topic_view_service.proto deleted file mode 100644 index c3d3bbe71..000000000 --- a/google/ads/googleads/v4/services/topic_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/topic_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "TopicViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Topic View service. - -// Service to manage topic views. -service TopicViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested topic view in full detail. - rpc GetTopicView(GetTopicViewRequest) returns (google.ads.googleads.v4.resources.TopicView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/topicViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [TopicViewService.GetTopicView][google.ads.googleads.v4.services.TopicViewService.GetTopicView]. -message GetTopicViewRequest { - // Required. The resource name of the topic view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/user_data_service.proto b/google/ads/googleads/v4/services/user_data_service.proto deleted file mode 100644 index 1127bb53d..000000000 --- a/google/ads/googleads/v4/services/user_data_service.proto +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/common/offline_user_data.proto"; -import "google/api/annotations.proto"; -import "google/api/field_behavior.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/client.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserDataServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the UserDataService. - -// Service to manage user data uploads. -// Accessible only to customers on the allow-list. -service UserDataService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Uploads the given user data. - rpc UploadUserData(UploadUserDataRequest) returns (UploadUserDataResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}:uploadUserData" - body: "*" - }; - } -} - -// Request message for [UserDataService.UploadUserData][google.ads.googleads.v4.services.UserDataService.UploadUserData] -message UploadUserDataRequest { - // Required. The ID of the customer for which to update the user data. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to be done. - repeated UserDataOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; - - // Metadata of the request. - oneof metadata { - // Metadata for data updates to a Customer Match user list. - google.ads.googleads.v4.common.CustomerMatchUserListMetadata customer_match_user_list_metadata = 2; - } -} - -// Operation to be made for the UploadUserDataRequest. -message UserDataOperation { - // Operation to be made for the UploadUserDataRequest. - oneof operation { - // The list of user data to be appended to the user list. - google.ads.googleads.v4.common.UserData create = 1; - - // The list of user data to be removed from the user list. - google.ads.googleads.v4.common.UserData remove = 2; - } -} - -// Response message for [UserDataService.UploadUserData][google.ads.googleads.v4.services.UserDataService.UploadUserData] -message UploadUserDataResponse { - // The date time at which the request was received by API, formatted as - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - google.protobuf.StringValue upload_date_time = 1; - - // Number of upload data operations received by API. - google.protobuf.Int32Value received_operations_count = 2; -} diff --git a/google/ads/googleads/v4/services/user_interest_service.proto b/google/ads/googleads/v4/services/user_interest_service.proto deleted file mode 100644 index f07b0f69b..000000000 --- a/google/ads/googleads/v4/services/user_interest_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/user_interest.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserInterestServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the user interest service - -// Service to fetch Google Ads User Interest. -service UserInterestService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested user interest in full detail - rpc GetUserInterest(GetUserInterestRequest) returns (google.ads.googleads.v4.resources.UserInterest) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/userInterests/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [UserInterestService.GetUserInterest][google.ads.googleads.v4.services.UserInterestService.GetUserInterest]. -message GetUserInterestRequest { - // Required. Resource name of the UserInterest to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserInterest" - } - ]; -} diff --git a/google/ads/googleads/v4/services/user_list_service.proto b/google/ads/googleads/v4/services/user_list_service.proto deleted file mode 100644 index 841e91b42..000000000 --- a/google/ads/googleads/v4/services/user_list_service.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/user_list.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserListServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the User List service. - -// Service to manage user lists. -service UserListService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested user list. - rpc GetUserList(GetUserListRequest) returns (google.ads.googleads.v4.resources.UserList) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/userLists/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates user lists. Operation statuses are returned. - rpc MutateUserLists(MutateUserListsRequest) returns (MutateUserListsResponse) { - option (google.api.http) = { - post: "/v4/customers/{customer_id=*}/userLists:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [UserListService.GetUserList][google.ads.googleads.v4.services.UserListService.GetUserList]. -message GetUserListRequest { - // Required. The resource name of the user list to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserList" - } - ]; -} - -// Request message for [UserListService.MutateUserLists][google.ads.googleads.v4.services.UserListService.MutateUserLists]. -message MutateUserListsRequest { - // Required. The ID of the customer whose user lists are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual user lists. - repeated UserListOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update) on a user list. -message UserListOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new user list. - google.ads.googleads.v4.resources.UserList create = 1; - - // Update operation: The user list is expected to have a valid resource - // name. - google.ads.googleads.v4.resources.UserList update = 2; - - // Remove operation: A resource name for the removed user list is expected, - // in this format: - // - // `customers/{customer_id}/userLists/{user_list_id}` - string remove = 3; - } -} - -// Response message for user list mutate. -message MutateUserListsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateUserListResult results = 2; -} - -// The result for the user list mutate. -message MutateUserListResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v4/services/user_location_view_service.proto b/google/ads/googleads/v4/services/user_location_view_service.proto deleted file mode 100644 index 9803ecc62..000000000 --- a/google/ads/googleads/v4/services/user_location_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/user_location_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserLocationViewServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the UserLocationView service. - -// Service to manage user location views. -service UserLocationViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested user location view in full detail. - rpc GetUserLocationView(GetUserLocationViewRequest) returns (google.ads.googleads.v4.resources.UserLocationView) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/userLocationViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [UserLocationViewService.GetUserLocationView][google.ads.googleads.v4.services.UserLocationViewService.GetUserLocationView]. -message GetUserLocationViewRequest { - // Required. The resource name of the user location view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserLocationView" - } - ]; -} diff --git a/google/ads/googleads/v4/services/video_service.proto b/google/ads/googleads/v4/services/video_service.proto deleted file mode 100644 index f2759128b..000000000 --- a/google/ads/googleads/v4/services/video_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v4.services; - -import "google/ads/googleads/v4/resources/video.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V4.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v4/services;services"; -option java_multiple_files = true; -option java_outer_classname = "VideoServiceProto"; -option java_package = "com.google.ads.googleads.v4.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V4\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V4::Services"; - -// Proto file describing the Video service. - -// Service to manage videos. -service VideoService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested video in full detail. - rpc GetVideo(GetVideoRequest) returns (google.ads.googleads.v4.resources.Video) { - option (google.api.http) = { - get: "/v4/{resource_name=customers/*/videos/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [VideoService.GetVideo][google.ads.googleads.v4.services.VideoService.GetVideo]. -message GetVideoRequest { - // Required. The resource name of the video to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Video" - } - ]; -} diff --git a/google/ads/googleads/v5/BUILD.bazel b/google/ads/googleads/v5/BUILD.bazel deleted file mode 100644 index 527583933..000000000 --- a/google/ads/googleads/v5/BUILD.bazel +++ /dev/null @@ -1,262 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -exports_files(["googleads_grpc_service_config.json"] + ["*.yaml"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") -load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") - -proto_library( - name = "googleads_proto", - srcs = [], - deps = [ - "//google/ads/googleads/v5/common:common_proto", - "//google/ads/googleads/v5/enums:enums_proto", - "//google/ads/googleads/v5/errors:errors_proto", - "//google/ads/googleads/v5/resources:resources_proto", - "//google/ads/googleads/v5/services:services_proto", - ], -) - -proto_library_with_info( - name = "googleads_proto_with_info", - deps = [ - ":googleads_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_gapic_assembly_gradle_pkg", - "java_gapic_library", - "java_gapic_test", -) - -java_gapic_library( - name = "googleads_java_gapic", - srcs = [ - ":googleads_proto_with_info", - ], - gapic_yaml = "googleads_gapic.yaml", - grpc_service_config = ":googleads_grpc_service_config.json", - deps = [ - "//google/ads/googleads/v5/common:common_java_proto", - "//google/ads/googleads/v5/enums:enums_java_proto", - "//google/ads/googleads/v5/resources:resources_java_proto", - "//google/ads/googleads/v5/services:services_java_grpc", - "//google/ads/googleads/v5/services:services_java_proto", - ], -) - -# TODO(ohren): Add more test classes when java_gapic_test is able to run more -# than a single test. Having at least one verifies proper compilation at least. -java_gapic_test( - name = "googleads_java_gapic_suite", - test_classes = [ - "com.google.ads.googleads.v5.services.CampaignServiceClientTest", - ], - runtime_deps = [":googleads_java_gapic_test"], -) - -java_gapic_assembly_gradle_pkg( - name = "googleads-java", - deps = [ - ":googleads_java_gapic", - "//google/ads/googleads/v5:googleads_proto", - "//google/ads/googleads/v5/common:common_java_proto", - "//google/ads/googleads/v5/enums:enums_java_proto", - "//google/ads/googleads/v5/errors:errors_java_proto", - "//google/ads/googleads/v5/resources:resources_java_proto", - "//google/ads/googleads/v5/services:services_java_grpc", - "//google/ads/googleads/v5/services:services_java_proto", - ], -) - -############################################################################## -# PHP -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "php_gapic_assembly_pkg2", - "php_gapic_library2", - "php_grpc_library2", - "php_proto_library2", -) - -php_proto_library2( - name = "googleads_php_proto", - plugin_args = ["aggregate_metadata=google.ads.googleads"], - deps = [":googleads_proto"], -) - -php_grpc_library2( - name = "googleads_php_grpc", - srcs = [":googleads_proto"], - deps = [":googleads_php_proto"], -) - -php_gapic_library2( - name = "googleads_php_gapic", - srcs = [":googleads_proto"], - gapic_yaml = "googleads_gapic.yaml", - grpc_service_config = "googleads_grpc_service_config.json", - service_yaml = "googleads_v5.yaml", - deps = [ - ":googleads_php_grpc", - ":googleads_php_proto", - ], -) - -php_gapic_assembly_pkg2( - name = "googleads-php", - deps = [ - ":googleads_php_gapic", - ":googleads_php_grpc", - ":googleads_php_proto", - ], -) - -############################################################################## -# C# -############################################################################## -load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", "csharp_gapic_library") -load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic_pkg.bzl", "csharp_gapic_assembly_pkg") - -csharp_gapic_library( - name = "googleads_csharp_gapic", - srcs = [ - ":googleads_proto_with_info", - ], - grpc_service_config = "googleads_grpc_service_config.json", - deps = [ - "//google/ads/googleads/v5/services:services_csharp_grpc", - ], -) - -csharp_gapic_assembly_pkg( - name = "googleads-csharp", - deps = [ - ":googleads_csharp_gapic", - "//google/ads/googleads/v5/common:common_csharp_proto", - "//google/ads/googleads/v5/enums:enums_csharp_proto", - "//google/ads/googleads/v5/errors:errors_csharp_proto", - "//google/ads/googleads/v5/resources:resources_csharp_proto", - "//google/ads/googleads/v5/services:services_csharp_grpc", - "//google/ads/googleads/v5/services:services_csharp_proto", - ], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "ruby_ads_gapic_library", - "ruby_gapic_assembly_pkg", -) - -ruby_ads_gapic_library( - name = "googleads_ruby_gapic", - srcs = ["googleads_proto_with_info"], - extra_protoc_parameters = [ - ":gem.:name=google-ads-googleads", - ":defaults.:service.:default_host=googleads.googleapis.com", - ":overrides.:namespace.Googleads=GoogleAds", - ], - grpc_service_config = "googleads_grpc_service_config.json", -) - -ruby_gapic_assembly_pkg( - name = "googleads-ruby", - deps = [ - ":googleads_ruby_gapic", - "//google/ads/googleads/v5/common:common_ruby_proto", - "//google/ads/googleads/v5/enums:enums_ruby_proto", - "//google/ads/googleads/v5/errors:errors_ruby_proto", - "//google/ads/googleads/v5/resources:resources_ruby_proto", - "//google/ads/googleads/v5/services:services_ruby_grpc", - "//google/ads/googleads/v5/services:services_ruby_proto", - ], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_gapic_assembly_pkg", - "py_gapic_library", -) - -py_gapic_library( - name = "googleads_py_gapic", - srcs = [":googleads_proto_with_info"], - grpc_service_config = "googleads_grpc_service_config.json", - opt_args = [ - "old-naming", - "lazy-import", - "python-gapic-name=googleads", - "python-gapic-templates=ads-templates", - ], -) - -py_gapic_assembly_pkg( - name = "googleads-py", - deps = [ - ":googleads_py_gapic", - "//google/ads/googleads/v5/common:common_py_proto", - "//google/ads/googleads/v5/enums:enums_py_proto", - "//google/ads/googleads/v5/errors:errors_py_proto", - "//google/ads/googleads/v5/resources:resources_py_proto", - "//google/ads/googleads/v5/services:services_py_grpc", - "//google/ads/googleads/v5/services:services_py_proto", - ], -) - -############################################################################## -# Node.js -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "nodejs_gapic_assembly_pkg", - "nodejs_gapic_library", -) - -nodejs_gapic_library( - name = "googleads_nodejs_gapic", - package_name = "google-ads", - src = ":googleads_proto_with_info", - extra_protoc_parameters = ["metadata"], - grpc_service_config = "googleads_grpc_service_config.json", - main_service = "GoogleAdsService", - package = "google.ads.googleads.v5", - service_yaml = "googleads_v5.yaml", - deps = [], -) - -nodejs_gapic_assembly_pkg( - name = "googleads-nodejs", - deps = [ - ":googleads_nodejs_gapic", - ":googleads_proto", - ], -) diff --git a/google/ads/googleads/v5/common/BUILD.bazel b/google/ads/googleads/v5/common/BUILD.bazel deleted file mode 100644 index ba7f9a1e8..000000000 --- a/google/ads/googleads/v5/common/BUILD.bazel +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "common_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v5/enums:enums_proto", - "//google/api:annotations_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_proto_library", -) - -java_proto_library( - name = "common_java_proto", - deps = [":common_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_proto_library", -) - -csharp_proto_library( - name = "common_csharp_proto", - deps = [":common_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_proto_library", -) - -ruby_proto_library( - name = "common_ruby_proto", - deps = [":common_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_proto_library", -) - -py_proto_library( - name = "common_py_proto", - deps = [":common_proto"], -) diff --git a/google/ads/googleads/v5/common/ad_asset.proto b/google/ads/googleads/v5/common/ad_asset.proto deleted file mode 100644 index e8e3ce947..000000000 --- a/google/ads/googleads/v5/common/ad_asset.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/served_asset_field_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "AdAssetProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing assets used inside an ad. - -// A text asset used inside an ad. -message AdTextAsset { - // Asset text. - optional string text = 4; - - // The pinned field of the asset. This restricts the asset to only serve - // within this field. Multiple assets can be pinned to the same field. An - // asset that is unpinned or pinned to a different field will not serve in a - // field where some other asset has been pinned. - google.ads.googleads.v5.enums.ServedAssetFieldTypeEnum.ServedAssetFieldType pinned_field = 2; -} - -// An image asset used inside an ad. -message AdImageAsset { - // The Asset resource name of this image. - optional string asset = 2; -} - -// A video asset used inside an ad. -message AdVideoAsset { - // The Asset resource name of this video. - optional string asset = 2; -} - -// A media bundle asset used inside an ad. -message AdMediaBundleAsset { - // The Asset resource name of this media bundle. - optional string asset = 2; -} diff --git a/google/ads/googleads/v5/common/ad_type_infos.proto b/google/ads/googleads/v5/common/ad_type_infos.proto deleted file mode 100644 index f247b32f2..000000000 --- a/google/ads/googleads/v5/common/ad_type_infos.proto +++ /dev/null @@ -1,662 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/common/ad_asset.proto"; -import "google/ads/googleads/v5/enums/call_conversion_reporting_state.proto"; -import "google/ads/googleads/v5/enums/display_ad_format_setting.proto"; -import "google/ads/googleads/v5/enums/display_upload_product_type.proto"; -import "google/ads/googleads/v5/enums/legacy_app_install_ad_app_store.proto"; -import "google/ads/googleads/v5/enums/mime_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "AdTypeInfosProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file containing info messages for specific ad types. - -// A text ad. -message TextAdInfo { - // The headline of the ad. - optional string headline = 4; - - // The first line of the ad's description. - optional string description1 = 5; - - // The second line of the ad's description. - optional string description2 = 6; -} - -// An expanded text ad. -message ExpandedTextAdInfo { - // The first part of the ad's headline. - optional string headline_part1 = 8; - - // The second part of the ad's headline. - optional string headline_part2 = 9; - - // The third part of the ad's headline. - optional string headline_part3 = 10; - - // The description of the ad. - optional string description = 11; - - // The second description of the ad. - optional string description2 = 12; - - // The text that can appear alongside the ad's displayed URL. - optional string path1 = 13; - - // Additional text that can appear alongside the ad's displayed URL. - optional string path2 = 14; -} - -// A call-only ad. -message CallOnlyAdInfo { - // The country code in the ad. - optional string country_code = 13; - - // The phone number in the ad. - optional string phone_number = 14; - - // The business name in the ad. - optional string business_name = 15; - - // First headline in the ad. - optional string headline1 = 16; - - // Second headline in the ad. - optional string headline2 = 17; - - // The first line of the ad's description. - optional string description1 = 18; - - // The second line of the ad's description. - optional string description2 = 19; - - // Whether to enable call tracking for the creative. Enabling call - // tracking also enables call conversions. - optional bool call_tracked = 20; - - // Whether to disable call conversion for the creative. - // If set to `true`, disables call conversions even when `call_tracked` is - // `true`. - // If `call_tracked` is `false`, this field is ignored. - optional bool disable_call_conversion = 21; - - // The URL to be used for phone number verification. - optional string phone_number_verification_url = 22; - - // The conversion action to attribute a call conversion to. If not set a - // default conversion action is used. This field only has effect if - // call_tracked is set to true. Otherwise this field is ignored. - optional string conversion_action = 23; - - // The call conversion behavior of this call only ad. It can use its own call - // conversion setting, inherit the account level setting, or be disabled. - google.ads.googleads.v5.enums.CallConversionReportingStateEnum.CallConversionReportingState conversion_reporting_state = 10; -} - -// An expanded dynamic search ad. -message ExpandedDynamicSearchAdInfo { - // The description of the ad. - optional string description = 3; - - // The second description of the ad. - optional string description2 = 4; -} - -// A hotel ad. -message HotelAdInfo { - -} - -// A Smart Shopping ad. -message ShoppingSmartAdInfo { - -} - -// A standard Shopping ad. -message ShoppingProductAdInfo { - -} - -// A Shopping Comparison Listing ad. -message ShoppingComparisonListingAdInfo { - // Headline of the ad. This field is required. Allowed length is between 25 - // and 45 characters. - optional string headline = 2; -} - -// A Gmail ad. -message GmailAdInfo { - // The Gmail teaser. - GmailTeaser teaser = 1; - - // The MediaFile resource name of the header image. Valid image types are GIF, - // JPEG and PNG. The minimum size is 300x100 pixels and the aspect ratio must - // be between 3:1 and 5:1 (+-1%). - optional string header_image = 10; - - // The MediaFile resource name of the marketing image. Valid image types are - // GIF, JPEG and PNG. The image must either be landscape with a minimum size - // of 600x314 pixels and aspect ratio of 600:314 (+-1%) or square with a - // minimum size of 300x300 pixels and aspect ratio of 1:1 (+-1%) - optional string marketing_image = 11; - - // Headline of the marketing image. - optional string marketing_image_headline = 12; - - // Description of the marketing image. - optional string marketing_image_description = 13; - - // Display-call-to-action of the marketing image. - DisplayCallToAction marketing_image_display_call_to_action = 6; - - // Product images. Up to 15 images are supported. - repeated ProductImage product_images = 7; - - // Product videos. Up to 7 videos are supported. At least one product video - // or a marketing image must be specified. - repeated ProductVideo product_videos = 8; -} - -// Gmail teaser data. The teaser is a small header that acts as an invitation -// to view the rest of the ad (the body). -message GmailTeaser { - // Headline of the teaser. - optional string headline = 5; - - // Description of the teaser. - optional string description = 6; - - // Business name of the advertiser. - optional string business_name = 7; - - // The MediaFile resource name of the logo image. Valid image types are GIF, - // JPEG and PNG. The minimum size is 144x144 pixels and the aspect ratio must - // be 1:1 (+-1%). - optional string logo_image = 8; -} - -// Data for display call to action. The call to action is a piece of the ad -// that prompts the user to do something. Like clicking a link or making a phone -// call. -message DisplayCallToAction { - // Text for the display-call-to-action. - optional string text = 5; - - // Text color for the display-call-to-action in hexadecimal, e.g. #ffffff for - // white. - optional string text_color = 6; - - // Identifies the url collection in the ad.url_collections field. If not set - // the url defaults to final_url. - optional string url_collection_id = 7; -} - -// Product image specific data. -message ProductImage { - // The MediaFile resource name of the product image. Valid image types are - // GIF, JPEG and PNG. The minimum size is 300x300 pixels and the aspect ratio - // must be 1:1 (+-1%). - optional string product_image = 4; - - // Description of the product. - optional string description = 5; - - // Display-call-to-action of the product image. - DisplayCallToAction display_call_to_action = 3; -} - -// Product video specific data. -message ProductVideo { - // The MediaFile resource name of a video which must be hosted on YouTube. - optional string product_video = 2; -} - -// An image ad. -message ImageAdInfo { - // Width in pixels of the full size image. - optional int64 pixel_width = 15; - - // Height in pixels of the full size image. - optional int64 pixel_height = 16; - - // URL of the full size image. - optional string image_url = 17; - - // Width in pixels of the preview size image. - optional int64 preview_pixel_width = 18; - - // Height in pixels of the preview size image. - optional int64 preview_pixel_height = 19; - - // URL of the preview size image. - optional string preview_image_url = 20; - - // The mime type of the image. - google.ads.googleads.v5.enums.MimeTypeEnum.MimeType mime_type = 10; - - // The name of the image. If the image was created from a MediaFile, this is - // the MediaFile's name. If the image was created from bytes, this is empty. - optional string name = 21; - - // The image to create the ImageAd from. This can be specified in one of - // two ways. - // 1. An existing MediaFile resource. - // 2. The raw image data as bytes. - oneof image { - // The MediaFile resource to use for the image. - string media_file = 12; - - // Raw image data as bytes. - bytes data = 13; - - // An ad ID to copy the image from. - int64 ad_id_to_copy_image_from = 14; - } -} - -// Representation of video bumper in-stream ad format (very short in-stream -// non-skippable video ad). -message VideoBumperInStreamAdInfo { - // The MediaFile resource name of the companion banner used with the ad. - optional string companion_banner = 2; -} - -// Representation of video non-skippable in-stream ad format (15 second -// in-stream non-skippable video ad). -message VideoNonSkippableInStreamAdInfo { - // The MediaFile resource name of the companion banner used with the ad. - optional string companion_banner = 2; -} - -// Representation of video TrueView in-stream ad format (ad shown during video -// playback, often at beginning, which displays a skip button a few seconds into -// the video). -message VideoTrueViewInStreamAdInfo { - // Label on the CTA (call-to-action) button taking the user to the video ad's - // final URL. - // Required for TrueView for action campaigns, optional otherwise. - optional string action_button_label = 4; - - // Additional text displayed with the CTA (call-to-action) button to give - // context and encourage clicking on the button. - optional string action_headline = 5; - - // The MediaFile resource name of the companion banner used with the ad. - optional string companion_banner = 6; -} - -// Representation of video out-stream ad format (ad shown alongside a feed -// with automatic playback, without sound). -message VideoOutstreamAdInfo { - // The headline of the ad. - optional string headline = 3; - - // The description line. - optional string description = 4; -} - -// Representation of video TrueView discovery ad format. -message VideoTrueViewDiscoveryAdInfo { - // The headline of the ad. - optional string headline = 4; - - // First text line for a TrueView video discovery ad. - optional string description1 = 5; - - // Second text line for a TrueView video discovery ad. - optional string description2 = 6; -} - -// A video ad. -message VideoAdInfo { - // The MediaFile resource to use for the video. - optional string media_file = 7; - - // Format-specific schema for the different video formats. - oneof format { - // Video TrueView in-stream ad format. - VideoTrueViewInStreamAdInfo in_stream = 2; - - // Video bumper in-stream ad format. - VideoBumperInStreamAdInfo bumper = 3; - - // Video out-stream ad format. - VideoOutstreamAdInfo out_stream = 4; - - // Video non-skippable in-stream ad format. - VideoNonSkippableInStreamAdInfo non_skippable = 5; - - // Video TrueView discovery ad format. - VideoTrueViewDiscoveryAdInfo discovery = 6; - } -} - -// A video responsive ad. -message VideoResponsiveAdInfo { - // List of text assets used for the short headline, e.g. the "Call To Action" - // banner. Currently, only a single value for the short headline is supported. - repeated AdTextAsset headlines = 1; - - // List of text assets used for the long headline. - // Currently, only a single value for the long headline is supported. - repeated AdTextAsset long_headlines = 2; - - // List of text assets used for the description. - // Currently, only a single value for the description is supported. - repeated AdTextAsset descriptions = 3; - - // List of text assets used for the button, e.g. the "Call To Action" button. - // Currently, only a single value for the button is supported. - repeated AdTextAsset call_to_actions = 4; - - // List of YouTube video assets used for the ad. - // Currently, only a single value for the YouTube video asset is supported. - repeated AdVideoAsset videos = 5; - - // List of image assets used for the companion banner. - // Currently, only a single value for the companion banner asset is supported. - repeated AdImageAsset companion_banners = 6; -} - -// A responsive search ad. -// -// Responsive search ads let you create an ad that adapts to show more text, and -// more relevant messages, to your customers. Enter multiple headlines and -// descriptions when creating a responsive search ad, and over time, Google Ads -// will automatically test different combinations and learn which combinations -// perform best. By adapting your ad's content to more closely match potential -// customers' search terms, responsive search ads may improve your campaign's -// performance. -// -// More information at https://support.google.com/google-ads/answer/7684791 -message ResponsiveSearchAdInfo { - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. - repeated AdTextAsset headlines = 1; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. - repeated AdTextAsset descriptions = 2; - - // First part of text that may appear appended to the url displayed in the ad. - optional string path1 = 5; - - // Second part of text that may appear appended to the url displayed in the - // ad. This field can only be set when path1 is also set. - optional string path2 = 6; -} - -// A legacy responsive display ad. Ads of this type are labeled 'Responsive ads' -// in the Google Ads UI. -message LegacyResponsiveDisplayAdInfo { - // The short version of the ad's headline. - optional string short_headline = 16; - - // The long version of the ad's headline. - optional string long_headline = 17; - - // The description of the ad. - optional string description = 18; - - // The business name in the ad. - optional string business_name = 19; - - // Advertiser's consent to allow flexible color. When true, the ad may be - // served with different color if necessary. When false, the ad will be served - // with the specified colors or a neutral color. - // The default value is true. - // Must be true if main_color and accent_color are not set. - optional bool allow_flexible_color = 20; - - // The accent color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - optional string accent_color = 21; - - // The main color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - optional string main_color = 22; - - // The call-to-action text for the ad. - optional string call_to_action_text = 23; - - // The MediaFile resource name of the logo image used in the ad. - optional string logo_image = 24; - - // The MediaFile resource name of the square logo image used in the ad. - optional string square_logo_image = 25; - - // The MediaFile resource name of the marketing image used in the ad. - optional string marketing_image = 26; - - // The MediaFile resource name of the square marketing image used in the ad. - optional string square_marketing_image = 27; - - // Specifies which format the ad will be served in. Default is ALL_FORMATS. - google.ads.googleads.v5.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting format_setting = 13; - - // Prefix before price. E.g. 'as low as'. - optional string price_prefix = 28; - - // Promotion text used for dyanmic formats of responsive ads. For example - // 'Free two-day shipping'. - optional string promo_text = 29; -} - -// An app ad. -message AppAdInfo { - // Mandatory ad text. - AdTextAsset mandatory_ad_text = 1; - - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. - repeated AdTextAsset headlines = 2; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. - repeated AdTextAsset descriptions = 3; - - // List of image assets that may be displayed with the ad. - repeated AdImageAsset images = 4; - - // List of YouTube video assets that may be displayed with the ad. - repeated AdVideoAsset youtube_videos = 5; - - // List of media bundle assets that may be used with the ad. - repeated AdMediaBundleAsset html5_media_bundles = 6; -} - -// App engagement ads allow you to write text encouraging a specific action in -// the app, like checking in, making a purchase, or booking a flight. -// They allow you to send users to a specific part of your app where they can -// find what they're looking for easier and faster. -message AppEngagementAdInfo { - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. - repeated AdTextAsset headlines = 1; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. - repeated AdTextAsset descriptions = 2; - - // List of image assets that may be displayed with the ad. - repeated AdImageAsset images = 3; - - // List of video assets that may be displayed with the ad. - repeated AdVideoAsset videos = 4; -} - -// A legacy app install ad that only can be used by a few select customers. -message LegacyAppInstallAdInfo { - // The id of the mobile app. - optional string app_id = 6; - - // The app store the mobile app is available in. - google.ads.googleads.v5.enums.LegacyAppInstallAdAppStoreEnum.LegacyAppInstallAdAppStore app_store = 2; - - // The headline of the ad. - optional string headline = 7; - - // The first description line of the ad. - optional string description1 = 8; - - // The second description line of the ad. - optional string description2 = 9; -} - -// A responsive display ad. -message ResponsiveDisplayAdInfo { - // Marketing images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must - // be 1.91:1 (+-1%). At least one marketing_image is required. Combined with - // square_marketing_images the maximum is 15. - repeated AdImageAsset marketing_images = 1; - - // Square marketing images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must - // be 1:1 (+-1%). At least one square marketing_image is required. Combined - // with marketing_images the maximum is 15. - repeated AdImageAsset square_marketing_images = 2; - - // Logo images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 512x128 and the aspect ratio must - // be 4:1 (+-1%). Combined with square_logo_images the maximum is 5. - repeated AdImageAsset logo_images = 3; - - // Square logo images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must - // be 1:1 (+-1%). Combined with square_logo_images the maximum is 5. - repeated AdImageAsset square_logo_images = 4; - - // Short format headlines for the ad. The maximum length is 30 characters. - // At least 1 and max 5 headlines can be specified. - repeated AdTextAsset headlines = 5; - - // A required long format headline. The maximum length is 90 characters. - AdTextAsset long_headline = 6; - - // Descriptive texts for the ad. The maximum length is 90 characters. At - // least 1 and max 5 headlines can be specified. - repeated AdTextAsset descriptions = 7; - - // Optional YouTube videos for the ad. A maximum of 5 videos can be specified. - repeated AdVideoAsset youtube_videos = 8; - - // The advertiser/brand name. Maximum display width is 25. - optional string business_name = 17; - - // The main color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - optional string main_color = 18; - - // The accent color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - optional string accent_color = 19; - - // Advertiser's consent to allow flexible color. When true, the ad may be - // served with different color if necessary. When false, the ad will be served - // with the specified colors or a neutral color. - // The default value is true. - // Must be true if main_color and accent_color are not set. - optional bool allow_flexible_color = 20; - - // The call-to-action text for the ad. Maximum display width is 30. - optional string call_to_action_text = 21; - - // Prefix before price. E.g. 'as low as'. - optional string price_prefix = 22; - - // Promotion text used for dyanmic formats of responsive ads. For example - // 'Free two-day shipping'. - optional string promo_text = 23; - - // Specifies which format the ad will be served in. Default is ALL_FORMATS. - google.ads.googleads.v5.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting format_setting = 16; -} - -// A local ad. -message LocalAdInfo { - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. At least 1 and at most 5 headlines must be - // specified. - repeated AdTextAsset headlines = 1; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. At least 1 and at most 5 descriptions must - // be specified. - repeated AdTextAsset descriptions = 2; - - // List of text assets for call-to-actions. When the ad serves the - // call-to-actions will be selected from this list. Call-to-actions are - // optional and at most 5 can be specified. - repeated AdTextAsset call_to_actions = 3; - - // List of marketing image assets that may be displayed with the ad. The - // images must be 314x600 pixels or 320x320 pixels. At least 1 and at most - // 20 image assets must be specified. - repeated AdImageAsset marketing_images = 4; - - // List of logo image assets that may be displayed with the ad. The images - // must be 128x128 pixels and not larger than 120KB. At least 1 and at most 5 - // image assets must be specified. - repeated AdImageAsset logo_images = 5; - - // List of YouTube video assets that may be displayed with the ad. Videos - // are optional and at most 20 can be specified. - repeated AdVideoAsset videos = 6; - - // First part of optional text that may appear appended to the url displayed - // in the ad. - optional string path1 = 9; - - // Second part of optional text that may appear appended to the url displayed - // in the ad. This field can only be set when path1 is also set. - optional string path2 = 10; -} - -// A generic type of display ad. The exact ad format is controlled by the -// display_upload_product_type field, which determines what kinds of data -// need to be included with the ad. -message DisplayUploadAdInfo { - // The product type of this ad. See comments on the enum for details. - google.ads.googleads.v5.enums.DisplayUploadProductTypeEnum.DisplayUploadProductType display_upload_product_type = 1; - - // The asset data that makes up the ad. - oneof media_asset { - // A media bundle asset to be used in the ad. For information about the - // media bundle for HTML5_UPLOAD_AD see - // https://support.google.com/google-ads/answer/1722096 - // Media bundles that are part of dynamic product types use a special format - // that needs to be created through the Google Web Designer. See - // https://support.google.com/webdesigner/answer/7543898 for more - // information. - AdMediaBundleAsset media_bundle = 2; - } -} diff --git a/google/ads/googleads/v5/common/asset_types.proto b/google/ads/googleads/v5/common/asset_types.proto deleted file mode 100644 index 7018e79ac..000000000 --- a/google/ads/googleads/v5/common/asset_types.proto +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/mime_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "AssetTypesProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file containing info messages for specific asset types. - -// A YouTube asset. -message YoutubeVideoAsset { - // YouTube video id. This is the 11 character string value used in the - // YouTube video URL. - optional string youtube_video_id = 2; -} - -// A MediaBundle asset. -message MediaBundleAsset { - // Media bundle (ZIP file) asset data. The format of the uploaded ZIP file - // depends on the ad field where it will be used. For more information on the - // format, see the documentation of the ad field where you plan on using the - // MediaBundleAsset. This field is mutate only. - optional bytes data = 2; -} - -// An Image asset. -message ImageAsset { - // The raw bytes data of an image. This field is mutate only. - optional bytes data = 5; - - // File size of the image asset in bytes. - optional int64 file_size = 6; - - // MIME type of the image asset. - google.ads.googleads.v5.enums.MimeTypeEnum.MimeType mime_type = 3; - - // Metadata for this image at its original size. - ImageDimension full_size = 4; -} - -// Metadata for an image at a certain size, either original or resized. -message ImageDimension { - // Height of the image. - optional int64 height_pixels = 4; - - // Width of the image. - optional int64 width_pixels = 5; - - // A URL that returns the image with this height and width. - optional string url = 6; -} - -// A Text asset. -message TextAsset { - // Text content of the text asset. - optional string text = 2; -} - -// A Book on Google asset. Used to redirect user to book through Google. -// Book on Google will change the redirect url to book directly through -// Google. -message BookOnGoogleAsset { - -} diff --git a/google/ads/googleads/v5/common/bidding.proto b/google/ads/googleads/v5/common/bidding.proto deleted file mode 100644 index a1f964605..000000000 --- a/google/ads/googleads/v5/common/bidding.proto +++ /dev/null @@ -1,170 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/target_impression_share_location.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "BiddingProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing bidding schemes. - -// Commission is an automatic bidding strategy in which the advertiser pays a -// certain portion of the conversion value. -message Commission { - // Commission rate defines the portion of the conversion value that the - // advertiser will be billed. A commission rate of x should be passed into - // this field as (x * 1,000,000). For example, 106,000 represents a commission - // rate of 0.106 (10.6%). - optional int64 commission_rate_micros = 2; -} - -// An automated bidding strategy that raises bids for clicks -// that seem more likely to lead to a conversion and lowers -// them for clicks where they seem less likely. -message EnhancedCpc { - -} - -// Manual click-based bidding where user pays per click. -message ManualCpc { - // Whether bids are to be enhanced based on conversion optimizer data. - optional bool enhanced_cpc_enabled = 2; -} - -// Manual impression-based bidding where user pays per thousand impressions. -message ManualCpm { - -} - -// View based bidding where user pays per video view. -message ManualCpv { - -} - -// An automated bidding strategy to help get the most conversions for your -// campaigns while spending your budget. -message MaximizeConversions { - -} - -// An automated bidding strategy to help get the most conversion value for your -// campaigns while spending your budget. -message MaximizeConversionValue { - // The target return on ad spend (ROAS) option. If set, the bid strategy will - // maximize revenue while averaging the target return on ad spend. If the - // target ROAS is high, the bid strategy may not be able to spend the full - // budget. If the target ROAS is not set, the bid strategy will aim to - // achieve the highest possible ROAS for the budget. - optional double target_roas = 2; -} - -// An automated bid strategy that sets bids to help get as many conversions as -// possible at the target cost-per-acquisition (CPA) you set. -message TargetCpa { - // Average CPA target. - // This target should be greater than or equal to minimum billable unit based - // on the currency for the account. - optional int64 target_cpa_micros = 4; - - // Maximum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - optional int64 cpc_bid_ceiling_micros = 5; - - // Minimum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - optional int64 cpc_bid_floor_micros = 6; -} - -// Target CPM (cost per thousand impressions) is an automated bidding strategy -// that sets bids to optimize performance given the target CPM you set. -message TargetCpm { - -} - -// An automated bidding strategy that sets bids so that a certain percentage of -// search ads are shown at the top of the first page (or other targeted -// location). -message TargetImpressionShare { - // The targeted location on the search results page. - google.ads.googleads.v5.enums.TargetImpressionShareLocationEnum.TargetImpressionShareLocation location = 1; - - // The desired fraction of ads to be shown in the targeted location in micros. - // E.g. 1% equals 10,000. - optional int64 location_fraction_micros = 4; - - // The highest CPC bid the automated bidding system is permitted to specify. - // This is a required field entered by the advertiser that sets the ceiling - // and specified in local micros. - optional int64 cpc_bid_ceiling_micros = 5; -} - -// An automated bidding strategy that helps you maximize revenue while -// averaging a specific target return on ad spend (ROAS). -message TargetRoas { - // Required. The desired revenue (based on conversion data) per unit of spend. - // Value must be between 0.01 and 1000.0, inclusive. - optional double target_roas = 4; - - // Maximum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - optional int64 cpc_bid_ceiling_micros = 5; - - // Minimum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - optional int64 cpc_bid_floor_micros = 6; -} - -// An automated bid strategy that sets your bids to help get as many clicks -// as possible within your budget. -message TargetSpend { - // The spend target under which to maximize clicks. - // A TargetSpend bidder will attempt to spend the smaller of this value - // or the natural throttling spend amount. - // If not specified, the budget is used as the spend target. - // This field is deprecated and should no longer be used. See - // https://ads-developers.googleblog.com/2020/05/reminder-about-sunset-creation-of.html - // for details. - optional int64 target_spend_micros = 3 [deprecated = true]; - - // Maximum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - optional int64 cpc_bid_ceiling_micros = 4; -} - -// A bidding strategy where bids are a fraction of the advertised price for -// some good or service. -message PercentCpc { - // Maximum bid limit that can be set by the bid strategy. This is - // an optional field entered by the advertiser and specified in local micros. - // Note: A zero value is interpreted in the same way as having bid_ceiling - // undefined. - optional int64 cpc_bid_ceiling_micros = 3; - - // Adjusts the bid for each auction upward or downward, depending on the - // likelihood of a conversion. Individual bids may exceed - // cpc_bid_ceiling_micros, but the average bid amount for a campaign should - // not. - optional bool enhanced_cpc_enabled = 4; -} diff --git a/google/ads/googleads/v5/common/click_location.proto b/google/ads/googleads/v5/common/click_location.proto deleted file mode 100644 index a76677bab..000000000 --- a/google/ads/googleads/v5/common/click_location.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ClickLocationProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing a ClickLocation. - -// Location criteria associated with a click. -message ClickLocation { - // The city location criterion associated with the impression. - optional string city = 6; - - // The country location criterion associated with the impression. - optional string country = 7; - - // The metro location criterion associated with the impression. - optional string metro = 8; - - // The most specific location criterion associated with the impression. - optional string most_specific = 9; - - // The region location criterion associated with the impression. - optional string region = 10; -} diff --git a/google/ads/googleads/v5/common/criteria.proto b/google/ads/googleads/v5/common/criteria.proto deleted file mode 100644 index 145566d25..000000000 --- a/google/ads/googleads/v5/common/criteria.proto +++ /dev/null @@ -1,593 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/age_range_type.proto"; -import "google/ads/googleads/v5/enums/app_payment_model_type.proto"; -import "google/ads/googleads/v5/enums/content_label_type.proto"; -import "google/ads/googleads/v5/enums/day_of_week.proto"; -import "google/ads/googleads/v5/enums/device.proto"; -import "google/ads/googleads/v5/enums/gender_type.proto"; -import "google/ads/googleads/v5/enums/hotel_date_selection_type.proto"; -import "google/ads/googleads/v5/enums/income_range_type.proto"; -import "google/ads/googleads/v5/enums/interaction_type.proto"; -import "google/ads/googleads/v5/enums/keyword_match_type.proto"; -import "google/ads/googleads/v5/enums/listing_group_type.proto"; -import "google/ads/googleads/v5/enums/location_group_radius_units.proto"; -import "google/ads/googleads/v5/enums/minute_of_hour.proto"; -import "google/ads/googleads/v5/enums/parental_status_type.proto"; -import "google/ads/googleads/v5/enums/preferred_content_type.proto"; -import "google/ads/googleads/v5/enums/product_bidding_category_level.proto"; -import "google/ads/googleads/v5/enums/product_channel.proto"; -import "google/ads/googleads/v5/enums/product_channel_exclusivity.proto"; -import "google/ads/googleads/v5/enums/product_condition.proto"; -import "google/ads/googleads/v5/enums/product_custom_attribute_index.proto"; -import "google/ads/googleads/v5/enums/product_type_level.proto"; -import "google/ads/googleads/v5/enums/proximity_radius_units.proto"; -import "google/ads/googleads/v5/enums/webpage_condition_operand.proto"; -import "google/ads/googleads/v5/enums/webpage_condition_operator.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "CriteriaProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing criteria types. - -// A keyword criterion. -message KeywordInfo { - // The text of the keyword (at most 80 characters and 10 words). - optional string text = 3; - - // The match type of the keyword. - google.ads.googleads.v5.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 2; -} - -// A placement criterion. This can be used to modify bids for sites when -// targeting the content network. -message PlacementInfo { - // URL of the placement. - // - // For example, "http://www.domain.com". - optional string url = 2; -} - -// A mobile app category criterion. -message MobileAppCategoryInfo { - // The mobile app category constant resource name. - optional string mobile_app_category_constant = 2; -} - -// A mobile application criterion. -message MobileApplicationInfo { - // A string that uniquely identifies a mobile application to Google Ads API. - // The format of this string is "{platform}-{platform_native_id}", where - // platform is "1" for iOS apps and "2" for Android apps, and where - // platform_native_id is the mobile application identifier native to the - // corresponding platform. - // For iOS, this native identifier is the 9 digit string that appears at the - // end of an App Store URL (e.g., "476943146" for "Flood-It! 2" whose App - // Store link is "http://itunes.apple.com/us/app/flood-it!-2/id476943146"). - // For Android, this native identifier is the application's package name - // (e.g., "com.labpixies.colordrips" for "Color Drips" given Google Play link - // "https://play.google.com/store/apps/details?id=com.labpixies.colordrips"). - // A well formed app id for Google Ads API would thus be "1-476943146" for iOS - // and "2-com.labpixies.colordrips" for Android. - // This field is required and must be set in CREATE operations. - optional string app_id = 4; - - // Name of this mobile application. - optional string name = 5; -} - -// A location criterion. -message LocationInfo { - // The geo target constant resource name. - optional string geo_target_constant = 2; -} - -// A device criterion. -message DeviceInfo { - // Type of the device. - google.ads.googleads.v5.enums.DeviceEnum.Device type = 1; -} - -// A preferred content criterion. -message PreferredContentInfo { - // Type of the preferred content. - google.ads.googleads.v5.enums.PreferredContentTypeEnum.PreferredContentType type = 2; -} - -// A listing group criterion. -message ListingGroupInfo { - // Type of the listing group. - google.ads.googleads.v5.enums.ListingGroupTypeEnum.ListingGroupType type = 1; - - // Dimension value with which this listing group is refining its parent. - // Undefined for the root group. - ListingDimensionInfo case_value = 2; - - // Resource name of ad group criterion which is the parent listing group - // subdivision. Null for the root group. - optional string parent_ad_group_criterion = 4; -} - -// A listing scope criterion. -message ListingScopeInfo { - // Scope of the campaign criterion. - repeated ListingDimensionInfo dimensions = 2; -} - -// Listing dimensions for listing group criterion. -message ListingDimensionInfo { - // Dimension of one of the types below is always present. - oneof dimension { - // Advertiser-specific hotel ID. - HotelIdInfo hotel_id = 2; - - // Class of the hotel as a number of stars 1 to 5. - HotelClassInfo hotel_class = 3; - - // Country or Region the hotel is located in. - HotelCountryRegionInfo hotel_country_region = 4; - - // State the hotel is located in. - HotelStateInfo hotel_state = 5; - - // City the hotel is located in. - HotelCityInfo hotel_city = 6; - - // Bidding category of a product offer. - ProductBiddingCategoryInfo product_bidding_category = 13; - - // Brand of a product offer. - ProductBrandInfo product_brand = 15; - - // Locality of a product offer. - ProductChannelInfo product_channel = 8; - - // Availability of a product offer. - ProductChannelExclusivityInfo product_channel_exclusivity = 9; - - // Condition of a product offer. - ProductConditionInfo product_condition = 10; - - // Custom attribute of a product offer. - ProductCustomAttributeInfo product_custom_attribute = 16; - - // Item id of a product offer. - ProductItemIdInfo product_item_id = 11; - - // Type of a product offer. - ProductTypeInfo product_type = 12; - - // Unknown dimension. Set when no other listing dimension is set. - UnknownListingDimensionInfo unknown_listing_dimension = 14; - } -} - -// Advertiser-specific hotel ID. -message HotelIdInfo { - // String value of the hotel ID. - optional string value = 2; -} - -// Class of the hotel as a number of stars 1 to 5. -message HotelClassInfo { - // Long value of the hotel class. - optional int64 value = 2; -} - -// Country or Region the hotel is located in. -message HotelCountryRegionInfo { - // The Geo Target Constant resource name. - optional string country_region_criterion = 2; -} - -// State the hotel is located in. -message HotelStateInfo { - // The Geo Target Constant resource name. - optional string state_criterion = 2; -} - -// City the hotel is located in. -message HotelCityInfo { - // The Geo Target Constant resource name. - optional string city_criterion = 2; -} - -// Bidding category of a product offer. -message ProductBiddingCategoryInfo { - // ID of the product bidding category. - // - // This ID is equivalent to the google_product_category ID as described in - // this article: https://support.google.com/merchants/answer/6324436 - optional int64 id = 4; - - // Two-letter upper-case country code of the product bidding category. It must - // match the campaign.shopping_setting.sales_country field. - optional string country_code = 5; - - // Level of the product bidding category. - google.ads.googleads.v5.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 3; -} - -// Brand of the product. -message ProductBrandInfo { - // String value of the product brand. - optional string value = 2; -} - -// Locality of a product offer. -message ProductChannelInfo { - // Value of the locality. - google.ads.googleads.v5.enums.ProductChannelEnum.ProductChannel channel = 1; -} - -// Availability of a product offer. -message ProductChannelExclusivityInfo { - // Value of the availability. - google.ads.googleads.v5.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity channel_exclusivity = 1; -} - -// Condition of a product offer. -message ProductConditionInfo { - // Value of the condition. - google.ads.googleads.v5.enums.ProductConditionEnum.ProductCondition condition = 1; -} - -// Custom attribute of a product offer. -message ProductCustomAttributeInfo { - // String value of the product custom attribute. - optional string value = 3; - - // Indicates the index of the custom attribute. - google.ads.googleads.v5.enums.ProductCustomAttributeIndexEnum.ProductCustomAttributeIndex index = 2; -} - -// Item id of a product offer. -message ProductItemIdInfo { - // Value of the id. - optional string value = 2; -} - -// Type of a product offer. -message ProductTypeInfo { - // Value of the type. - optional string value = 3; - - // Level of the type. - google.ads.googleads.v5.enums.ProductTypeLevelEnum.ProductTypeLevel level = 2; -} - -// Unknown listing dimension. -message UnknownListingDimensionInfo { - -} - -// Criterion for hotel date selection (default dates vs. user selected). -message HotelDateSelectionTypeInfo { - // Type of the hotel date selection - google.ads.googleads.v5.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType type = 1; -} - -// Criterion for number of days prior to the stay the booking is being made. -message HotelAdvanceBookingWindowInfo { - // Low end of the number of days prior to the stay. - optional int64 min_days = 3; - - // High end of the number of days prior to the stay. - optional int64 max_days = 4; -} - -// Criterion for length of hotel stay in nights. -message HotelLengthOfStayInfo { - // Low end of the number of nights in the stay. - optional int64 min_nights = 3; - - // High end of the number of nights in the stay. - optional int64 max_nights = 4; -} - -// Criterion for day of the week the booking is for. -message HotelCheckInDayInfo { - // The day of the week. - google.ads.googleads.v5.enums.DayOfWeekEnum.DayOfWeek day_of_week = 1; -} - -// Criterion for Interaction Type. -message InteractionTypeInfo { - // The interaction type. - google.ads.googleads.v5.enums.InteractionTypeEnum.InteractionType type = 1; -} - -// Represents an AdSchedule criterion. -// -// AdSchedule is specified as the day of the week and a time interval -// within which ads will be shown. -// -// No more than six AdSchedules can be added for the same day. -message AdScheduleInfo { - // Minutes after the start hour at which this schedule starts. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.ads.googleads.v5.enums.MinuteOfHourEnum.MinuteOfHour start_minute = 1; - - // Minutes after the end hour at which this schedule ends. The schedule is - // exclusive of the end minute. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.ads.googleads.v5.enums.MinuteOfHourEnum.MinuteOfHour end_minute = 2; - - // Starting hour in 24 hour time. - // This field must be between 0 and 23, inclusive. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - optional int32 start_hour = 6; - - // Ending hour in 24 hour time; 24 signifies end of the day. - // This field must be between 0 and 24, inclusive. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - optional int32 end_hour = 7; - - // Day of the week the schedule applies to. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.ads.googleads.v5.enums.DayOfWeekEnum.DayOfWeek day_of_week = 5; -} - -// An age range criterion. -message AgeRangeInfo { - // Type of the age range. - google.ads.googleads.v5.enums.AgeRangeTypeEnum.AgeRangeType type = 1; -} - -// A gender criterion. -message GenderInfo { - // Type of the gender. - google.ads.googleads.v5.enums.GenderTypeEnum.GenderType type = 1; -} - -// An income range criterion. -message IncomeRangeInfo { - // Type of the income range. - google.ads.googleads.v5.enums.IncomeRangeTypeEnum.IncomeRangeType type = 1; -} - -// A parental status criterion. -message ParentalStatusInfo { - // Type of the parental status. - google.ads.googleads.v5.enums.ParentalStatusTypeEnum.ParentalStatusType type = 1; -} - -// A YouTube Video criterion. -message YouTubeVideoInfo { - // YouTube video id as it appears on the YouTube watch page. - optional string video_id = 2; -} - -// A YouTube Channel criterion. -message YouTubeChannelInfo { - // The YouTube uploader channel id or the channel code of a YouTube channel. - optional string channel_id = 2; -} - -// A User List criterion. Represents a user list that is defined by the -// advertiser to be targeted. -message UserListInfo { - // The User List resource name. - optional string user_list = 2; -} - -// A Proximity criterion. The geo point and radius determine what geographical -// area is included. The address is a description of the geo point that does -// not affect ad serving. -// -// There are two ways to create a proximity. First, by setting an address -// and radius. The geo point will be automatically computed. Second, by -// setting a geo point and radius. The address is an optional label that won't -// be validated. -message ProximityInfo { - // Latitude and longitude. - GeoPointInfo geo_point = 1; - - // The radius of the proximity. - optional double radius = 5; - - // The unit of measurement of the radius. Default is KILOMETERS. - google.ads.googleads.v5.enums.ProximityRadiusUnitsEnum.ProximityRadiusUnits radius_units = 3; - - // Full address. - AddressInfo address = 4; -} - -// Geo point for proximity criterion. -message GeoPointInfo { - // Micro degrees for the longitude. - optional int32 longitude_in_micro_degrees = 3; - - // Micro degrees for the latitude. - optional int32 latitude_in_micro_degrees = 4; -} - -// Address for proximity criterion. -message AddressInfo { - // Postal code. - optional string postal_code = 8; - - // Province or state code. - optional string province_code = 9; - - // Country code. - optional string country_code = 10; - - // Province or state name. - optional string province_name = 11; - - // Street address line 1. - optional string street_address = 12; - - // Street address line 2. This field is write-only. It is only used for - // calculating the longitude and latitude of an address when geo_point is - // empty. - optional string street_address2 = 13; - - // Name of the city. - optional string city_name = 14; -} - -// A topic criterion. Use topics to target or exclude placements in the -// Google Display Network based on the category into which the placement falls -// (for example, "Pets & Animals/Pets/Dogs"). -message TopicInfo { - // The Topic Constant resource name. - optional string topic_constant = 3; - - // The category to target or exclude. Each subsequent element in the array - // describes a more specific sub-category. For example, - // "Pets & Animals", "Pets", "Dogs" represents the "Pets & Animals/Pets/Dogs" - // category. - repeated string path = 4; -} - -// A language criterion. -message LanguageInfo { - // The language constant resource name. - optional string language_constant = 2; -} - -// An IpBlock criterion used for IP exclusions. We allow: -// - IPv4 and IPv6 addresses -// - individual addresses (192.168.0.1) -// - masks for individual addresses (192.168.0.1/32) -// - masks for Class C networks (192.168.0.1/24) -message IpBlockInfo { - // The IP address of this IP block. - optional string ip_address = 2; -} - -// Content Label for category exclusion. -message ContentLabelInfo { - // Content label type, required for CREATE operations. - google.ads.googleads.v5.enums.ContentLabelTypeEnum.ContentLabelType type = 1; -} - -// Represents a Carrier Criterion. -message CarrierInfo { - // The Carrier constant resource name. - optional string carrier_constant = 2; -} - -// Represents a particular interest-based topic to be targeted. -message UserInterestInfo { - // The UserInterest resource name. - optional string user_interest_category = 2; -} - -// Represents a criterion for targeting webpages of an advertiser's website. -message WebpageInfo { - // The name of the criterion that is defined by this parameter. The name value - // will be used for identifying, sorting and filtering criteria with this type - // of parameters. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - optional string criterion_name = 3; - - // Conditions, or logical expressions, for webpage targeting. The list of - // webpage targeting conditions are and-ed together when evaluated - // for targeting. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - repeated WebpageConditionInfo conditions = 2; -} - -// Logical expression for targeting webpages of an advertiser's website. -message WebpageConditionInfo { - // Operand of webpage targeting condition. - google.ads.googleads.v5.enums.WebpageConditionOperandEnum.WebpageConditionOperand operand = 1; - - // Operator of webpage targeting condition. - google.ads.googleads.v5.enums.WebpageConditionOperatorEnum.WebpageConditionOperator operator = 2; - - // Argument of webpage targeting condition. - optional string argument = 4; -} - -// Represents an operating system version to be targeted. -message OperatingSystemVersionInfo { - // The operating system version constant resource name. - optional string operating_system_version_constant = 2; -} - -// An app payment model criterion. -message AppPaymentModelInfo { - // Type of the app payment model. - google.ads.googleads.v5.enums.AppPaymentModelTypeEnum.AppPaymentModelType type = 1; -} - -// A mobile device criterion. -message MobileDeviceInfo { - // The mobile device constant resource name. - optional string mobile_device_constant = 2; -} - -// A custom affinity criterion. -// A criterion of this type is only targetable. -message CustomAffinityInfo { - // The CustomInterest resource name. - optional string custom_affinity = 2; -} - -// A custom intent criterion. -// A criterion of this type is only targetable. -message CustomIntentInfo { - // The CustomInterest resource name. - optional string custom_intent = 2; -} - -// A radius around a list of locations specified via a feed. -message LocationGroupInfo { - // Feed specifying locations for targeting. - // This is required and must be set in CREATE operations. - optional string feed = 5; - - // Geo target constant(s) restricting the scope of the geographic area within - // the feed. Currently only one geo target constant is allowed. - repeated string geo_target_constants = 6; - - // Distance in units specifying the radius around targeted locations. - // This is required and must be set in CREATE operations. - optional int64 radius = 7; - - // Unit of the radius. Miles and meters are supported for geo target - // constants. Milli miles and meters are supported for feed item sets. - // This is required and must be set in CREATE operations. - google.ads.googleads.v5.enums.LocationGroupRadiusUnitsEnum.LocationGroupRadiusUnits radius_units = 4; -} diff --git a/google/ads/googleads/v5/common/criterion_category_availability.proto b/google/ads/googleads/v5/common/criterion_category_availability.proto deleted file mode 100644 index ec7d7f76e..000000000 --- a/google/ads/googleads/v5/common/criterion_category_availability.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/advertising_channel_sub_type.proto"; -import "google/ads/googleads/v5/enums/advertising_channel_type.proto"; -import "google/ads/googleads/v5/enums/criterion_category_channel_availability_mode.proto"; -import "google/ads/googleads/v5/enums/criterion_category_locale_availability_mode.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "CriterionCategoryAvailabilityProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing criterion category availability information. - -// Information of category availability, per advertising channel. -message CriterionCategoryAvailability { - // Channel types and subtypes that are available to the category. - CriterionCategoryChannelAvailability channel = 1; - - // Locales that are available to the category for the channel. - repeated CriterionCategoryLocaleAvailability locale = 2; -} - -// Information of advertising channel type and subtypes a category is available -// in. -message CriterionCategoryChannelAvailability { - // Format of the channel availability. Can be ALL_CHANNELS (the rest of the - // fields will not be set), CHANNEL_TYPE (only advertising_channel_type type - // will be set, the category is available to all sub types under it) or - // CHANNEL_TYPE_AND_SUBTYPES (advertising_channel_type, - // advertising_channel_sub_type, and include_default_channel_sub_type will all - // be set). - google.ads.googleads.v5.enums.CriterionCategoryChannelAvailabilityModeEnum.CriterionCategoryChannelAvailabilityMode availability_mode = 1; - - // Channel type the category is available to. - google.ads.googleads.v5.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_type = 2; - - // Channel subtypes under the channel type the category is available to. - repeated google.ads.googleads.v5.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType advertising_channel_sub_type = 3; - - // Whether default channel sub type is included. For example, - // advertising_channel_type being DISPLAY and include_default_channel_sub_type - // being false means that the default display campaign where channel sub type - // is not set is not included in this availability configuration. - google.protobuf.BoolValue include_default_channel_sub_type = 4; -} - -// Information about which locales a category is available in. -message CriterionCategoryLocaleAvailability { - // Format of the locale availability. Can be LAUNCHED_TO_ALL (both country and - // language will be empty), COUNTRY (only country will be set), LANGUAGE (only - // language wil be set), COUNTRY_AND_LANGUAGE (both country and language will - // be set). - google.ads.googleads.v5.enums.CriterionCategoryLocaleAvailabilityModeEnum.CriterionCategoryLocaleAvailabilityMode availability_mode = 1; - - // Code of the country. - google.protobuf.StringValue country_code = 2; - - // Code of the language. - google.protobuf.StringValue language_code = 3; -} diff --git a/google/ads/googleads/v5/common/custom_parameter.proto b/google/ads/googleads/v5/common/custom_parameter.proto deleted file mode 100644 index 5a9cdf90b..000000000 --- a/google/ads/googleads/v5/common/custom_parameter.proto +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "CustomParameterProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing CustomParameter and operation - -// A mapping that can be used by custom parameter tags in a -// `tracking_url_template`, `final_urls`, or `mobile_final_urls`. -message CustomParameter { - // The key matching the parameter tag name. - optional string key = 3; - - // The value to be substituted. - optional string value = 4; -} diff --git a/google/ads/googleads/v5/common/dates.proto b/google/ads/googleads/v5/common/dates.proto deleted file mode 100644 index 8789c55e3..000000000 --- a/google/ads/googleads/v5/common/dates.proto +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "DatesProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing date range message. - -// A date range. -message DateRange { - // The start date, in yyyy-mm-dd format. This date is inclusive. - google.protobuf.StringValue start_date = 1; - - // The end date, in yyyy-mm-dd format. This date is inclusive. - google.protobuf.StringValue end_date = 2; -} diff --git a/google/ads/googleads/v5/common/explorer_auto_optimizer_setting.proto b/google/ads/googleads/v5/common/explorer_auto_optimizer_setting.proto deleted file mode 100644 index 9bdfd8721..000000000 --- a/google/ads/googleads/v5/common/explorer_auto_optimizer_setting.proto +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ExplorerAutoOptimizerSettingProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing ExplorerAutoOptimizerSetting - -// Settings for the Display Campaign Optimizer, initially named "Explorer". -// Learn more about -// [automatic targeting](https://support.google.com/google-ads/answer/190596). -message ExplorerAutoOptimizerSetting { - // Indicates whether the optimizer is turned on. - optional bool opt_in = 2; -} diff --git a/google/ads/googleads/v5/common/extensions.proto b/google/ads/googleads/v5/common/extensions.proto deleted file mode 100644 index 6b2b701b8..000000000 --- a/google/ads/googleads/v5/common/extensions.proto +++ /dev/null @@ -1,357 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/common/custom_parameter.proto"; -import "google/ads/googleads/v5/common/feed_common.proto"; -import "google/ads/googleads/v5/enums/app_store.proto"; -import "google/ads/googleads/v5/enums/call_conversion_reporting_state.proto"; -import "google/ads/googleads/v5/enums/price_extension_price_qualifier.proto"; -import "google/ads/googleads/v5/enums/price_extension_price_unit.proto"; -import "google/ads/googleads/v5/enums/price_extension_type.proto"; -import "google/ads/googleads/v5/enums/promotion_extension_discount_modifier.proto"; -import "google/ads/googleads/v5/enums/promotion_extension_occasion.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionsProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing extension types. - -// Represents an App extension. -message AppFeedItem { - // The visible text displayed when the link is rendered in an ad. - // This string must not be empty, and the length of this string should - // be between 1 and 25, inclusive. - google.protobuf.StringValue link_text = 1; - - // The store-specific ID for the target application. - // This string must not be empty. - google.protobuf.StringValue app_id = 2; - - // The application store that the target application belongs to. - // This field is required. - google.ads.googleads.v5.enums.AppStoreEnum.AppStore app_store = 3; - - // A list of possible final URLs after all cross domain redirects. - // This list must not be empty. - repeated google.protobuf.StringValue final_urls = 4; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_mobile_urls = 5; - - // URL template for constructing a tracking URL. Default value is "{lpurl}". - google.protobuf.StringValue tracking_url_template = 6; - - // A list of mappings to be used for substituting URL custom parameter tags in - // the tracking_url_template, final_urls, and/or final_mobile_urls. - repeated CustomParameter url_custom_parameters = 7; - - // URL template for appending params to landing page URLs served with parallel - // tracking. - google.protobuf.StringValue final_url_suffix = 8; -} - -// Represents a Call extension. -message CallFeedItem { - // The advertiser's phone number to append to the ad. - // This string must not be empty. - google.protobuf.StringValue phone_number = 1; - - // Uppercase two-letter country code of the advertiser's phone number. - // This string must not be empty. - google.protobuf.StringValue country_code = 2; - - // Indicates whether call tracking is enabled. By default, call tracking is - // not enabled. - google.protobuf.BoolValue call_tracking_enabled = 3; - - // The conversion action to attribute a call conversion to. If not set a - // default conversion action is used. This field only has effect if - // call_tracking_enabled is set to true. Otherwise this field is ignored. - google.protobuf.StringValue call_conversion_action = 4; - - // If true, disable call conversion tracking. call_conversion_action should - // not be set if this is true. Optional. - google.protobuf.BoolValue call_conversion_tracking_disabled = 5; - - // Enum value that indicates whether this call extension uses its own call - // conversion setting (or just have call conversion disabled), or following - // the account level setting. - google.ads.googleads.v5.enums.CallConversionReportingStateEnum.CallConversionReportingState call_conversion_reporting_state = 6; -} - -// Represents a callout extension. -message CalloutFeedItem { - // The callout text. - // The length of this string should be between 1 and 25, inclusive. - google.protobuf.StringValue callout_text = 1; -} - -// Represents a location extension. -message LocationFeedItem { - // The name of the business. - google.protobuf.StringValue business_name = 1; - - // Line 1 of the business address. - google.protobuf.StringValue address_line_1 = 2; - - // Line 2 of the business address. - google.protobuf.StringValue address_line_2 = 3; - - // City of the business address. - google.protobuf.StringValue city = 4; - - // Province of the business address. - google.protobuf.StringValue province = 5; - - // Postal code of the business address. - google.protobuf.StringValue postal_code = 6; - - // Country code of the business address. - google.protobuf.StringValue country_code = 7; - - // Phone number of the business. - google.protobuf.StringValue phone_number = 8; -} - -// Represents an affiliate location extension. -message AffiliateLocationFeedItem { - // The name of the business. - google.protobuf.StringValue business_name = 1; - - // Line 1 of the business address. - google.protobuf.StringValue address_line_1 = 2; - - // Line 2 of the business address. - google.protobuf.StringValue address_line_2 = 3; - - // City of the business address. - google.protobuf.StringValue city = 4; - - // Province of the business address. - google.protobuf.StringValue province = 5; - - // Postal code of the business address. - google.protobuf.StringValue postal_code = 6; - - // Country code of the business address. - google.protobuf.StringValue country_code = 7; - - // Phone number of the business. - google.protobuf.StringValue phone_number = 8; - - // Id of the retail chain that is advertised as a seller of your product. - google.protobuf.Int64Value chain_id = 9; - - // Name of chain. - google.protobuf.StringValue chain_name = 10; -} - -// An extension that users can click on to send a text message to the -// advertiser. -message TextMessageFeedItem { - // The business name to prepend to the message text. - // This field is required. - google.protobuf.StringValue business_name = 1; - - // Uppercase two-letter country code of the advertiser's phone number. - // This field is required. - google.protobuf.StringValue country_code = 2; - - // The advertiser's phone number the message will be sent to. Required. - google.protobuf.StringValue phone_number = 3; - - // The text to show in the ad. - // This field is required. - google.protobuf.StringValue text = 4; - - // The message text populated in the messaging app. - google.protobuf.StringValue extension_text = 5; -} - -// Represents a Price extension. -message PriceFeedItem { - // Price extension type of this extension. - google.ads.googleads.v5.enums.PriceExtensionTypeEnum.PriceExtensionType type = 1; - - // Price qualifier for all offers of this price extension. - google.ads.googleads.v5.enums.PriceExtensionPriceQualifierEnum.PriceExtensionPriceQualifier price_qualifier = 2; - - // Tracking URL template for all offers of this price extension. - google.protobuf.StringValue tracking_url_template = 3; - - // The code of the language used for this price extension. - google.protobuf.StringValue language_code = 4; - - // The price offerings in this price extension. - repeated PriceOffer price_offerings = 5; - - // URL template for appending params to landing page URLs served with parallel - // tracking. - google.protobuf.StringValue final_url_suffix = 6; -} - -// Represents one price offer in a price extension. -message PriceOffer { - // Header text of this offer. - google.protobuf.StringValue header = 1; - - // Description text of this offer. - google.protobuf.StringValue description = 2; - - // Price value of this offer. - Money price = 3; - - // Price unit for this offer. - google.ads.googleads.v5.enums.PriceExtensionPriceUnitEnum.PriceExtensionPriceUnit unit = 4; - - // A list of possible final URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_urls = 5; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_mobile_urls = 6; -} - -// Represents a Promotion extension. -message PromotionFeedItem { - // A freeform description of what the promotion is targeting. - // This field is required. - google.protobuf.StringValue promotion_target = 1; - - // Enum that modifies the qualification of the discount. - google.ads.googleads.v5.enums.PromotionExtensionDiscountModifierEnum.PromotionExtensionDiscountModifier discount_modifier = 2; - - // Start date of when the promotion is eligible to be redeemed. - google.protobuf.StringValue promotion_start_date = 7; - - // End date of when the promotion is eligible to be redeemed. - google.protobuf.StringValue promotion_end_date = 8; - - // The occasion the promotion was intended for. - // If an occasion is set, the redemption window will need to fall within - // the date range associated with the occasion. - google.ads.googleads.v5.enums.PromotionExtensionOccasionEnum.PromotionExtensionOccasion occasion = 9; - - // A list of possible final URLs after all cross domain redirects. - // This field is required. - repeated google.protobuf.StringValue final_urls = 10; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_mobile_urls = 11; - - // URL template for constructing a tracking URL. - google.protobuf.StringValue tracking_url_template = 12; - - // A list of mappings to be used for substituting URL custom parameter tags in - // the tracking_url_template, final_urls, and/or final_mobile_urls. - repeated CustomParameter url_custom_parameters = 13; - - // URL template for appending params to landing page URLs served with parallel - // tracking. - google.protobuf.StringValue final_url_suffix = 14; - - // The language of the promotion. - // Represented as BCP 47 language tag. - google.protobuf.StringValue language_code = 15; - - // Discount type, can be percentage off or amount off. - oneof discount_type { - // Percentage off discount in the promotion in micros. - // One million is equivalent to one percent. - // Either this or money_off_amount is required. - google.protobuf.Int64Value percent_off = 3; - - // Money amount off for discount in the promotion. - // Either this or percent_off is required. - Money money_amount_off = 4; - } - - // Promotion trigger. Can be by promotion code or promo by eligible order - // amount. - oneof promotion_trigger { - // A code the user should use in order to be eligible for the promotion. - google.protobuf.StringValue promotion_code = 5; - - // The amount the total order needs to be for the user to be eligible for - // the promotion. - Money orders_over_amount = 6; - } -} - -// Represents a structured snippet extension. -message StructuredSnippetFeedItem { - // The header of the snippet. - // This string must not be empty. - google.protobuf.StringValue header = 1; - - // The values in the snippet. - // The maximum size of this collection is 10. - repeated google.protobuf.StringValue values = 2; -} - -// Represents a sitelink extension. -message SitelinkFeedItem { - // URL display text for the sitelink. - // The length of this string should be between 1 and 25, inclusive. - google.protobuf.StringValue link_text = 1; - - // First line of the description for the sitelink. - // If this value is set, line2 must also be set. - // The length of this string should be between 0 and 35, inclusive. - google.protobuf.StringValue line1 = 2; - - // Second line of the description for the sitelink. - // If this value is set, line1 must also be set. - // The length of this string should be between 0 and 35, inclusive. - google.protobuf.StringValue line2 = 3; - - // A list of possible final URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_urls = 4; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated google.protobuf.StringValue final_mobile_urls = 5; - - // URL template for constructing a tracking URL. - google.protobuf.StringValue tracking_url_template = 6; - - // A list of mappings to be used for substituting URL custom parameter tags in - // the tracking_url_template, final_urls, and/or final_mobile_urls. - repeated CustomParameter url_custom_parameters = 7; - - // Final URL suffix to be appended to landing page URLs served with - // parallel tracking. - google.protobuf.StringValue final_url_suffix = 8; -} - -// Represents a hotel callout extension. -message HotelCalloutFeedItem { - // The callout text. - // The length of this string should be between 1 and 25, inclusive. - google.protobuf.StringValue text = 1; - - // The language of the hotel callout text. - // IETF BCP 47 compliant language code. - google.protobuf.StringValue language_code = 2; -} diff --git a/google/ads/googleads/v5/common/feed_common.proto b/google/ads/googleads/v5/common/feed_common.proto deleted file mode 100644 index f0e6e8663..000000000 --- a/google/ads/googleads/v5/common/feed_common.proto +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "FeedCommonProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing common feed proto messages. - -// Represents a price in a particular currency. -message Money { - // Three-character ISO 4217 currency code. - google.protobuf.StringValue currency_code = 1; - - // Amount in micros. One million is equivalent to one unit. - google.protobuf.Int64Value amount_micros = 2; -} diff --git a/google/ads/googleads/v5/common/final_app_url.proto b/google/ads/googleads/v5/common/final_app_url.proto deleted file mode 100644 index 2ffb24787..000000000 --- a/google/ads/googleads/v5/common/final_app_url.proto +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/app_url_operating_system_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "FinalAppUrlProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file FinalAppUrl type. - -// A URL for deep linking into an app for the given operating system. -message FinalAppUrl { - // The operating system targeted by this URL. Required. - google.ads.googleads.v5.enums.AppUrlOperatingSystemTypeEnum.AppUrlOperatingSystemType os_type = 1; - - // The app deep link URL. Deep links specify a location in an app that - // corresponds to the content you'd like to show, and should be of the form - // {scheme}://{host_path} - // The scheme identifies which app to open. For your app, you can use a custom - // scheme that starts with the app's name. The host and path specify the - // unique location in the app where your content exists. - // Example: "exampleapp://productid_1234". Required. - optional string url = 3; -} diff --git a/google/ads/googleads/v5/common/frequency_cap.proto b/google/ads/googleads/v5/common/frequency_cap.proto deleted file mode 100644 index 2c7fae14e..000000000 --- a/google/ads/googleads/v5/common/frequency_cap.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/frequency_cap_event_type.proto"; -import "google/ads/googleads/v5/enums/frequency_cap_level.proto"; -import "google/ads/googleads/v5/enums/frequency_cap_time_unit.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing frequency caps. - -// A rule specifying the maximum number of times an ad (or some set of ads) can -// be shown to a user over a particular time period. -message FrequencyCapEntry { - // The key of a particular frequency cap. There can be no more - // than one frequency cap with the same key. - FrequencyCapKey key = 1; - - // Maximum number of events allowed during the time range by this cap. - optional int32 cap = 3; -} - -// A group of fields used as keys for a frequency cap. -// There can be no more than one frequency cap with the same key. -message FrequencyCapKey { - // The level on which the cap is to be applied (e.g. ad group ad, ad group). - // The cap is applied to all the entities of this level. - google.ads.googleads.v5.enums.FrequencyCapLevelEnum.FrequencyCapLevel level = 1; - - // The type of event that the cap applies to (e.g. impression). - google.ads.googleads.v5.enums.FrequencyCapEventTypeEnum.FrequencyCapEventType event_type = 3; - - // Unit of time the cap is defined at (e.g. day, week). - google.ads.googleads.v5.enums.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit time_unit = 2; - - // Number of time units the cap lasts. - optional int32 time_length = 5; -} diff --git a/google/ads/googleads/v5/common/keyword_plan_common.proto b/google/ads/googleads/v5/common/keyword_plan_common.proto deleted file mode 100644 index 7e821eb44..000000000 --- a/google/ads/googleads/v5/common/keyword_plan_common.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/keyword_plan_competition_level.proto"; -import "google/ads/googleads/v5/enums/month_of_year.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCommonProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing Keyword Planner messages. - -// Historical metrics specific to the targeting options selected. -// Targeting options include geographies, network, etc. -// Refer to https://support.google.com/google-ads/answer/3022575 for more -// details. -message KeywordPlanHistoricalMetrics { - // Approximate number of monthly searches on this query averaged - // for the past 12 months. - google.protobuf.Int64Value avg_monthly_searches = 1; - - // Approximate number of searches on this query for the past twelve months. - repeated MonthlySearchVolume monthly_search_volumes = 6; - - // The competition level for the query. - google.ads.googleads.v5.enums.KeywordPlanCompetitionLevelEnum.KeywordPlanCompetitionLevel competition = 2; - - // The competition index for the query in the range [0, 100]. - // Shows how competitive ad placement is for a keyword. - // The level of competition from 0-100 is determined by the number of ad slots - // filled divided by the total number of ad slots available. If not enough - // data is available, null is returned. - google.protobuf.Int64Value competition_index = 3; - - // Top of page bid low range (20th percentile) in micros for the keyword. - google.protobuf.Int64Value low_top_of_page_bid_micros = 4; - - // Top of page bid high range (80th percentile) in micros for the keyword. - google.protobuf.Int64Value high_top_of_page_bid_micros = 5; -} - -// Monthly search volume. -message MonthlySearchVolume { - // The year of the search volume (e.g. 2020). - google.protobuf.Int64Value year = 1; - - // The month of the search volume. - google.ads.googleads.v5.enums.MonthOfYearEnum.MonthOfYear month = 2; - - // Approximate number of searches for the month. - // A null value indicates the search volume is unavailable for - // that month. - google.protobuf.Int64Value monthly_searches = 3; -} diff --git a/google/ads/googleads/v5/common/matching_function.proto b/google/ads/googleads/v5/common/matching_function.proto deleted file mode 100644 index 18c443f6e..000000000 --- a/google/ads/googleads/v5/common/matching_function.proto +++ /dev/null @@ -1,127 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/matching_function_context_type.proto"; -import "google/ads/googleads/v5/enums/matching_function_operator.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "MatchingFunctionProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing a matching function. - -// Matching function associated with a -// CustomerFeed, CampaignFeed, or AdGroupFeed. The matching function is used -// to filter the set of feed items selected. -message MatchingFunction { - // String representation of the Function. - // - // Examples: - // - // 1. IDENTITY(true) or IDENTITY(false). All or no feed items served. - // 2. EQUALS(CONTEXT.DEVICE,"Mobile") - // 3. IN(FEED_ITEM_ID,{1000001,1000002,1000003}) - // 4. CONTAINS_ANY(FeedAttribute[12345678,0],{"Mars cruise","Venus cruise"}) - // 5. AND(IN(FEED_ITEM_ID,{10001,10002}),EQUALS(CONTEXT.DEVICE,"Mobile")) - // - // For more details, visit - // https://developers.google.com/adwords/api/docs/guides/feed-matching-functions - // - // Note that because multiple strings may represent the same underlying - // function (whitespace and single versus double quotation marks, for - // example), the value returned may not be identical to the string sent in a - // mutate request. - google.protobuf.StringValue function_string = 1; - - // Operator for a function. - google.ads.googleads.v5.enums.MatchingFunctionOperatorEnum.MatchingFunctionOperator operator = 4; - - // The operands on the left hand side of the equation. This is also the - // operand to be used for single operand expressions such as NOT. - repeated Operand left_operands = 2; - - // The operands on the right hand side of the equation. - repeated Operand right_operands = 3; -} - -// An operand in a matching function. -message Operand { - // A constant operand in a matching function. - message ConstantOperand { - // Constant operand values. Required. - oneof constant_operand_value { - // String value of the operand if it is a string type. - google.protobuf.StringValue string_value = 1; - - // Int64 value of the operand if it is a int64 type. - google.protobuf.Int64Value long_value = 2; - - // Boolean value of the operand if it is a boolean type. - google.protobuf.BoolValue boolean_value = 3; - - // Double value of the operand if it is a double type. - google.protobuf.DoubleValue double_value = 4; - } - } - - // A feed attribute operand in a matching function. - // Used to represent a feed attribute in feed. - message FeedAttributeOperand { - // The associated feed. Required. - google.protobuf.Int64Value feed_id = 1; - - // Id of the referenced feed attribute. Required. - google.protobuf.Int64Value feed_attribute_id = 2; - } - - // A function operand in a matching function. - // Used to represent nested functions. - message FunctionOperand { - // The matching function held in this operand. - MatchingFunction matching_function = 1; - } - - // An operand in a function referring to a value in the request context. - message RequestContextOperand { - // Type of value to be referred in the request context. - google.ads.googleads.v5.enums.MatchingFunctionContextTypeEnum.MatchingFunctionContextType context_type = 1; - } - - // Different operands that can be used in a matching function. Required. - oneof function_argument_operand { - // A constant operand in a matching function. - ConstantOperand constant_operand = 1; - - // This operand specifies a feed attribute in feed. - FeedAttributeOperand feed_attribute_operand = 2; - - // A function operand in a matching function. - // Used to represent nested functions. - FunctionOperand function_operand = 3; - - // An operand in a function referring to a value in the request context. - RequestContextOperand request_context_operand = 4; - } -} diff --git a/google/ads/googleads/v5/common/metrics.proto b/google/ads/googleads/v5/common/metrics.proto deleted file mode 100644 index 4b8a00f67..000000000 --- a/google/ads/googleads/v5/common/metrics.proto +++ /dev/null @@ -1,559 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/interaction_event_type.proto"; -import "google/ads/googleads/v5/enums/quality_score_bucket.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "MetricsProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing metrics. - -// Metrics data. -message Metrics { - // The percent of your ad impressions that are shown as the very first ad - // above the organic search results. - optional double absolute_top_impression_percentage = 183; - - // Average cost of viewable impressions (`active_view_impressions`). - optional double active_view_cpm = 184; - - // Active view measurable clicks divided by active view viewable impressions. - // This metric is reported only for display network. - optional double active_view_ctr = 185; - - // A measurement of how often your ad has become viewable on a Display - // Network site. - optional int64 active_view_impressions = 186; - - // The ratio of impressions that could be measured by Active View over the - // number of served impressions. - optional double active_view_measurability = 187; - - // The cost of the impressions you received that were measurable by Active - // View. - optional int64 active_view_measurable_cost_micros = 188; - - // The number of times your ads are appearing on placements in positions - // where they can be seen. - optional int64 active_view_measurable_impressions = 189; - - // The percentage of time when your ad appeared on an Active View enabled site - // (measurable impressions) and was viewable (viewable impressions). - optional double active_view_viewability = 190; - - // All conversions from interactions (as oppose to view through conversions) - // divided by the number of ad interactions. - optional double all_conversions_from_interactions_rate = 191; - - // The value of all conversions. - optional double all_conversions_value = 192; - - // The total number of conversions. This includes all conversions regardless - // of the value of include_in_conversions_metric. - optional double all_conversions = 193; - - // The value of all conversions divided by the total cost of ad interactions - // (such as clicks for text ads or views for video ads). - optional double all_conversions_value_per_cost = 194; - - // The number of times people clicked the "Call" button to call a store during - // or after clicking an ad. This number doesn't include whether or not calls - // were connected, or the duration of any calls. - // This metric applies to feed items only. - optional double all_conversions_from_click_to_call = 195; - - // The number of times people clicked a "Get directions" button to navigate to - // a store after clicking an ad. - // This metric applies to feed items only. - optional double all_conversions_from_directions = 196; - - // The value of all conversions from interactions divided by the total number - // of interactions. - optional double all_conversions_from_interactions_value_per_interaction = 197; - - // The number of times people clicked a link to view a store's menu after - // clicking an ad. - // This metric applies to feed items only. - optional double all_conversions_from_menu = 198; - - // The number of times people placed an order at a store after clicking an ad. - // This metric applies to feed items only. - optional double all_conversions_from_order = 199; - - // The number of other conversions (for example, posting a review or saving a - // location for a store) that occurred after people clicked an ad. - // This metric applies to feed items only. - optional double all_conversions_from_other_engagement = 200; - - // Estimated number of times people visited a store after clicking an ad. - // This metric applies to feed items only. - optional double all_conversions_from_store_visit = 201; - - // The number of times that people were taken to a store's URL after clicking - // an ad. - // This metric applies to feed items only. - optional double all_conversions_from_store_website = 202; - - // The average amount you pay per interaction. This amount is the total cost - // of your ads divided by the total number of interactions. - optional double average_cost = 203; - - // The total cost of all clicks divided by the total number of clicks - // received. - optional double average_cpc = 204; - - // The average amount that you've been charged for an ad engagement. This - // amount is the total cost of all ad engagements divided by the total number - // of ad engagements. - optional double average_cpe = 205; - - // Average cost-per-thousand impressions (CPM). - optional double average_cpm = 206; - - // The average amount you pay each time someone views your ad. - // The average CPV is defined by the total cost of all ad views divided by - // the number of views. - optional double average_cpv = 207; - - // Average number of pages viewed per session. - optional double average_page_views = 208; - - // Total duration of all sessions (in seconds) / number of sessions. Imported - // from Google Analytics. - optional double average_time_on_site = 209; - - // An indication of how other advertisers are bidding on similar products. - optional double benchmark_average_max_cpc = 210; - - // An indication on how other advertisers' Shopping ads for similar products - // are performing based on how often people who see their ad click on it. - optional double benchmark_ctr = 211; - - // Percentage of clicks where the user only visited a single page on your - // site. Imported from Google Analytics. - optional double bounce_rate = 212; - - // The number of clicks. - optional int64 clicks = 131; - - // The number of times your ad or your site's listing in the unpaid - // results was clicked. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - optional int64 combined_clicks = 156; - - // The number of times your ad or your site's listing in the unpaid - // results was clicked (combined_clicks) divided by combined_queries. See the - // help page at https://support.google.com/google-ads/answer/3097241 for - // details. - optional double combined_clicks_per_query = 157; - - // The number of searches that returned pages from your site in the unpaid - // results or showed one of your text ads. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - optional int64 combined_queries = 158; - - // The estimated percent of times that your ad was eligible to show - // on the Display Network but didn't because your budget was too low. - // Note: Content budget lost impression share is reported in the range of 0 - // to 0.9. Any value above 0.9 is reported as 0.9001. - optional double content_budget_lost_impression_share = 159; - - // The impressions you've received on the Display Network divided - // by the estimated number of impressions you were eligible to receive. - // Note: Content impression share is reported in the range of 0.1 to 1. Any - // value below 0.1 is reported as 0.0999. - optional double content_impression_share = 160; - - // The last date/time a conversion tag for this conversion action successfully - // fired and was seen by Google Ads. This firing event may not have been the - // result of an attributable conversion (e.g. because the tag was fired from a - // browser that did not previously click an ad from an appropriate - // advertiser). The date/time is in the customer's time zone. - optional string conversion_last_received_request_date_time = 161; - - // The date of the most recent conversion for this conversion action. The date - // is in the customer's time zone. - optional string conversion_last_conversion_date = 162; - - // The estimated percentage of impressions on the Display Network - // that your ads didn't receive due to poor Ad Rank. - // Note: Content rank lost impression share is reported in the range of 0 - // to 0.9. Any value above 0.9 is reported as 0.9001. - optional double content_rank_lost_impression_share = 163; - - // Conversions from interactions divided by the number of ad interactions - // (such as clicks for text ads or views for video ads). This only includes - // conversion actions which include_in_conversions_metric attribute is set to - // true. If you use conversion-based bidding, your bid strategies will - // optimize for these conversions. - optional double conversions_from_interactions_rate = 164; - - // The value of conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double conversions_value = 165; - - // The value of conversions divided by the cost of ad interactions. This only - // includes conversion actions which include_in_conversions_metric attribute - // is set to true. If you use conversion-based bidding, your bid strategies - // will optimize for these conversions. - optional double conversions_value_per_cost = 166; - - // The value of conversions from interactions divided by the number of ad - // interactions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double conversions_from_interactions_value_per_interaction = 167; - - // The number of conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double conversions = 168; - - // The sum of your cost-per-click (CPC) and cost-per-thousand impressions - // (CPM) costs during this period. - optional int64 cost_micros = 169; - - // The cost of ad interactions divided by all conversions. - optional double cost_per_all_conversions = 170; - - // The cost of ad interactions divided by conversions. This only includes - // conversion actions which include_in_conversions_metric attribute is set to - // true. If you use conversion-based bidding, your bid strategies will - // optimize for these conversions. - optional double cost_per_conversion = 171; - - // The cost of ad interactions divided by current model attributed - // conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double cost_per_current_model_attributed_conversion = 172; - - // Conversions from when a customer clicks on a Google Ads ad on one device, - // then converts on a different device or browser. - // Cross-device conversions are already included in all_conversions. - optional double cross_device_conversions = 173; - - // The number of clicks your ad receives (Clicks) divided by the number - // of times your ad is shown (Impressions). - optional double ctr = 174; - - // Shows how your historic conversions data would look under the attribution - // model you've currently selected. This only includes conversion actions - // which include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double current_model_attributed_conversions = 175; - - // Current model attributed conversions from interactions divided by the - // number of ad interactions (such as clicks for text ads or views for video - // ads). This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double current_model_attributed_conversions_from_interactions_rate = 176; - - // The value of current model attributed conversions from interactions divided - // by the number of ad interactions. This only includes conversion actions - // which include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double current_model_attributed_conversions_from_interactions_value_per_interaction = 177; - - // The value of current model attributed conversions. This only includes - // conversion actions which include_in_conversions_metric attribute is set to - // true. If you use conversion-based bidding, your bid strategies will - // optimize for these conversions. - optional double current_model_attributed_conversions_value = 178; - - // The value of current model attributed conversions divided by the cost of ad - // interactions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double current_model_attributed_conversions_value_per_cost = 179; - - // How often people engage with your ad after it's shown to them. This is the - // number of ad expansions divided by the number of times your ad is shown. - optional double engagement_rate = 180; - - // The number of engagements. - // An engagement occurs when a viewer expands your Lightbox ad. Also, in the - // future, other ad types may support engagement metrics. - optional int64 engagements = 181; - - // Average lead value based on clicks. - optional double hotel_average_lead_value_micros = 213; - - // The average price difference between the price offered by reporting hotel - // advertiser and the cheapest price offered by the competing advertiser. - optional double hotel_price_difference_percentage = 214; - - // The number of impressions that hotel partners could have had given their - // feed performance. - optional int64 hotel_eligible_impressions = 215; - - // The creative historical quality score. - google.ads.googleads.v5.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80; - - // The quality of historical landing page experience. - google.ads.googleads.v5.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81; - - // The historical quality score. - optional int64 historical_quality_score = 216; - - // The historical search predicted click through rate (CTR). - google.ads.googleads.v5.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83; - - // The number of times the ad was forwarded to someone else as a message. - optional int64 gmail_forwards = 217; - - // The number of times someone has saved your Gmail ad to their inbox as a - // message. - optional int64 gmail_saves = 218; - - // The number of clicks to the landing page on the expanded state of Gmail - // ads. - optional int64 gmail_secondary_clicks = 219; - - // The number of times a store's location-based ad was shown. - // This metric applies to feed items only. - optional int64 impressions_from_store_reach = 220; - - // Count of how often your ad has appeared on a search results page or - // website on the Google Network. - optional int64 impressions = 221; - - // How often people interact with your ad after it is shown to them. - // This is the number of interactions divided by the number of times your ad - // is shown. - optional double interaction_rate = 222; - - // The number of interactions. - // An interaction is the main user action associated with an ad format-clicks - // for text and shopping ads, views for video ads, and so on. - optional int64 interactions = 223; - - // The types of payable and free interactions. - repeated google.ads.googleads.v5.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100; - - // The percentage of clicks filtered out of your total number of clicks - // (filtered + non-filtered clicks) during the reporting period. - optional double invalid_click_rate = 224; - - // Number of clicks Google considers illegitimate and doesn't charge you for. - optional int64 invalid_clicks = 225; - - // Number of message chats initiated for Click To Message impressions that - // were message tracking eligible. - optional int64 message_chats = 226; - - // Number of Click To Message impressions that were message tracking eligible. - optional int64 message_impressions = 227; - - // Number of message chats initiated (message_chats) divided by the number - // of message impressions (message_impressions). - // Rate at which a user initiates a message chat from an ad impression with - // a messaging option and message tracking enabled. - // Note that this rate can be more than 1.0 for a given message impression. - optional double message_chat_rate = 228; - - // The percentage of mobile clicks that go to a mobile-friendly page. - optional double mobile_friendly_clicks_percentage = 229; - - // The number of times someone clicked your site's listing in the unpaid - // results for a particular query. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - optional int64 organic_clicks = 230; - - // The number of times someone clicked your site's listing in the unpaid - // results (organic_clicks) divided by the total number of searches that - // returned pages from your site (organic_queries). See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - optional double organic_clicks_per_query = 231; - - // The number of listings for your site in the unpaid search results. See the - // help page at https://support.google.com/google-ads/answer/3097241 for - // details. - optional int64 organic_impressions = 232; - - // The number of times a page from your site was listed in the unpaid search - // results (organic_impressions) divided by the number of searches returning - // your site's listing in the unpaid results (organic_queries). See the help - // page at https://support.google.com/google-ads/answer/3097241 for details. - optional double organic_impressions_per_query = 233; - - // The total number of searches that returned your site's listing in the - // unpaid results. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - optional int64 organic_queries = 234; - - // Percentage of first-time sessions (from people who had never visited your - // site before). Imported from Google Analytics. - optional double percent_new_visitors = 235; - - // Number of offline phone calls. - optional int64 phone_calls = 236; - - // Number of offline phone impressions. - optional int64 phone_impressions = 237; - - // Number of phone calls received (phone_calls) divided by the number of - // times your phone number is shown (phone_impressions). - optional double phone_through_rate = 238; - - // Your clickthrough rate (Ctr) divided by the average clickthrough rate of - // all advertisers on the websites that show your ads. Measures how your ads - // perform on Display Network sites compared to other ads on the same sites. - optional double relative_ctr = 239; - - // The percentage of the customer's Shopping or Search ad impressions that are - // shown in the most prominent Shopping position. See - // https://support.google.com/google-ads/answer/7501826 - // for details. Any value below 0.1 is reported as 0.0999. - optional double search_absolute_top_impression_share = 136; - - // The number estimating how often your ad wasn't the very first ad above the - // organic search results due to a low budget. Note: Search - // budget lost absolute top impression share is reported in the range of 0 to - // 0.9. Any value above 0.9 is reported as 0.9001. - optional double search_budget_lost_absolute_top_impression_share = 137; - - // The estimated percent of times that your ad was eligible to show on the - // Search Network but didn't because your budget was too low. Note: Search - // budget lost impression share is reported in the range of 0 to 0.9. Any - // value above 0.9 is reported as 0.9001. - optional double search_budget_lost_impression_share = 138; - - // The number estimating how often your ad didn't show anywhere above the - // organic search results due to a low budget. Note: Search - // budget lost top impression share is reported in the range of 0 to 0.9. Any - // value above 0.9 is reported as 0.9001. - optional double search_budget_lost_top_impression_share = 139; - - // The number of clicks you've received on the Search Network - // divided by the estimated number of clicks you were eligible to receive. - // Note: Search click share is reported in the range of 0.1 to 1. Any value - // below 0.1 is reported as 0.0999. - optional double search_click_share = 140; - - // The impressions you've received divided by the estimated number of - // impressions you were eligible to receive on the Search Network for search - // terms that matched your keywords exactly (or were close variants of your - // keyword), regardless of your keyword match types. Note: Search exact match - // impression share is reported in the range of 0.1 to 1. Any value below 0.1 - // is reported as 0.0999. - optional double search_exact_match_impression_share = 141; - - // The impressions you've received on the Search Network divided - // by the estimated number of impressions you were eligible to receive. - // Note: Search impression share is reported in the range of 0.1 to 1. Any - // value below 0.1 is reported as 0.0999. - optional double search_impression_share = 142; - - // The number estimating how often your ad wasn't the very first ad above the - // organic search results due to poor Ad Rank. - // Note: Search rank lost absolute top impression share is reported in the - // range of 0 to 0.9. Any value above 0.9 is reported as 0.9001. - optional double search_rank_lost_absolute_top_impression_share = 143; - - // The estimated percentage of impressions on the Search Network - // that your ads didn't receive due to poor Ad Rank. - // Note: Search rank lost impression share is reported in the range of 0 to - // 0.9. Any value above 0.9 is reported as 0.9001. - optional double search_rank_lost_impression_share = 144; - - // The number estimating how often your ad didn't show anywhere above the - // organic search results due to poor Ad Rank. - // Note: Search rank lost top impression share is reported in the range of 0 - // to 0.9. Any value above 0.9 is reported as 0.9001. - optional double search_rank_lost_top_impression_share = 145; - - // The impressions you've received in the top location (anywhere above the - // organic search results) compared to the estimated number of impressions you - // were eligible to receive in the top location. - // Note: Search top impression share is reported in the range of 0.1 to 1. Any - // value below 0.1 is reported as 0.0999. - optional double search_top_impression_share = 146; - - // A measure of how quickly your page loads after clicks on your mobile ads. - // The score is a range from 1 to 10, 10 being the fastest. - optional int64 speed_score = 147; - - // The percent of your ad impressions that are shown anywhere above the - // organic search results. - optional double top_impression_percentage = 148; - - // The percentage of ad clicks to Accelerated Mobile Pages (AMP) landing pages - // that reach a valid AMP page. - optional double valid_accelerated_mobile_pages_clicks_percentage = 149; - - // The value of all conversions divided by the number of all conversions. - optional double value_per_all_conversions = 150; - - // The value of conversions divided by the number of conversions. This only - // includes conversion actions which include_in_conversions_metric attribute - // is set to true. If you use conversion-based bidding, your bid strategies - // will optimize for these conversions. - optional double value_per_conversion = 151; - - // The value of current model attributed conversions divided by the number of - // the conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double value_per_current_model_attributed_conversion = 152; - - // Percentage of impressions where the viewer watched all of your video. - optional double video_quartile_p100_rate = 132; - - // Percentage of impressions where the viewer watched 25% of your video. - optional double video_quartile_p25_rate = 133; - - // Percentage of impressions where the viewer watched 50% of your video. - optional double video_quartile_p50_rate = 134; - - // Percentage of impressions where the viewer watched 75% of your video. - optional double video_quartile_p75_rate = 135; - - // The number of views your TrueView video ad receives divided by its number - // of impressions, including thumbnail impressions for TrueView in-display - // ads. - optional double video_view_rate = 153; - - // The number of times your video ads were viewed. - optional int64 video_views = 154; - - // The total number of view-through conversions. - // These happen when a customer sees an image or rich media ad, then later - // completes a conversion on your site without interacting with (e.g., - // clicking on) another ad. - optional int64 view_through_conversions = 155; -} diff --git a/google/ads/googleads/v5/common/offline_user_data.proto b/google/ads/googleads/v5/common/offline_user_data.proto deleted file mode 100644 index 927bbdc7c..000000000 --- a/google/ads/googleads/v5/common/offline_user_data.proto +++ /dev/null @@ -1,192 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing offline user data. - -// Address identifier of offline data. -message OfflineUserAddressInfo { - // First name of the user, which is hashed as SHA-256 after normalized - // (Lowercase all characters; Remove any extra spaces before, after, and in - // between). - google.protobuf.StringValue hashed_first_name = 1; - - // Last name of the user, which is hashed as SHA-256 after normalized (lower - // case only and no punctuation). - google.protobuf.StringValue hashed_last_name = 2; - - // City of the address. Only accepted for Store Sales Direct data. - google.protobuf.StringValue city = 3; - - // State code of the address. Only accepted for Store Sales Direct data. - google.protobuf.StringValue state = 4; - - // 2-letter country code in ISO-3166-1 alpha-2 of the user's address. - google.protobuf.StringValue country_code = 5; - - // Postal code of the user's address. - google.protobuf.StringValue postal_code = 6; -} - -// Hashed user identifying information. -message UserIdentifier { - // Exactly one must be specified. - oneof identifier { - // Hashed email address using SHA-256 hash function after normalization. - google.protobuf.StringValue hashed_email = 1; - - // Hashed phone number using SHA-256 hash function after normalization - // (E164 standard). - google.protobuf.StringValue hashed_phone_number = 2; - - // Mobile device ID (advertising ID/IDFA). - google.protobuf.StringValue mobile_id = 3; - - // Advertiser-assigned user ID for Customer Match upload, or - // third-party-assigned user ID for SSD. - google.protobuf.StringValue third_party_user_id = 4; - - // Address information. - OfflineUserAddressInfo address_info = 5; - } -} - -// Attribute of the store sales transaction. -message TransactionAttribute { - // Timestamp when transaction occurred. Required. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue transaction_date_time = 1; - - // Transaction amount in micros. Required. - google.protobuf.DoubleValue transaction_amount_micros = 2; - - // Transaction currency code. ISO 4217 three-letter code is used. Required. - google.protobuf.StringValue currency_code = 3; - - // The resource name of conversion action to report conversions to. - // Required. - google.protobuf.StringValue conversion_action = 4; - - // Transaction order id. - // Accessible only to customers on the allow-list. - google.protobuf.StringValue order_id = 5; - - // Store attributes of the transaction. - // Accessible only to customers on the allow-list. - StoreAttribute store_attribute = 6; - - // Value of the custom variable for each transaction. - // Accessible only to customers on the allow-list. - google.protobuf.StringValue custom_value = 7; -} - -// Store attributes of the transaction. -message StoreAttribute { - // Store code from - // https://support.google.com/business/answer/3370250#storecode - google.protobuf.StringValue store_code = 1; -} - -// User data holding user identifiers and attributes. -message UserData { - // User identification info. Required. - repeated UserIdentifier user_identifiers = 1; - - // Additional transactions/attributes associated with the user. - // Required when updating store sales data. - TransactionAttribute transaction_attribute = 2; -} - -// Metadata for customer match user list. -message CustomerMatchUserListMetadata { - // The resource name of remarketing list to update data. - // Required for job of CUSTOMER_MATCH_USER_LIST type. - google.protobuf.StringValue user_list = 1; -} - -// Metadata for Store Sales Direct. -message StoreSalesMetadata { - // This is the fraction of all transactions that are identifiable (i.e., - // associated with any form of customer information). - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - google.protobuf.DoubleValue loyalty_fraction = 1; - - // This is the ratio of sales being uploaded compared to the overall sales - // that can be associated with a customer. Required. - // The fraction needs to be between 0 and 1 (excluding 0). For example, if you - // upload half the sales that you are able to associate with a customer, this - // would be 0.5. - google.protobuf.DoubleValue transaction_upload_fraction = 2; - - // Name of the store sales custom variable key. A predefined key that - // can be applied to the transaction and then later used for custom - // segmentation in reporting. - // Accessible only to customers on the allow-list. - google.protobuf.StringValue custom_key = 4; - - // Metadata for a third party Store Sales upload. - StoreSalesThirdPartyMetadata third_party_metadata = 3; -} - -// Metadata for a third party Store Sales. -// This product is only for customers on the allow-list. Please contact your -// Google business development representative for details on the upload -// configuration. -message StoreSalesThirdPartyMetadata { - // Time the advertiser uploaded the data to the partner. Required. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue advertiser_upload_date_time = 1; - - // The fraction of transactions that are valid. Invalid transactions may - // include invalid formats or values. - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - google.protobuf.DoubleValue valid_transaction_fraction = 2; - - // The fraction of valid transactions that are matched to a third party - // assigned user ID on the partner side. - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - google.protobuf.DoubleValue partner_match_fraction = 3; - - // The fraction of valid transactions that are uploaded by the partner to - // Google. - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - google.protobuf.DoubleValue partner_upload_fraction = 4; - - // Version of partner IDs to be used for uploads. Required. - google.protobuf.StringValue bridge_map_version_id = 5; - - // ID of the third party partner updating the transaction feed. - google.protobuf.Int64Value partner_id = 6; -} diff --git a/google/ads/googleads/v5/common/policy.proto b/google/ads/googleads/v5/common/policy.proto deleted file mode 100644 index faaa6ac63..000000000 --- a/google/ads/googleads/v5/common/policy.proto +++ /dev/null @@ -1,222 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/policy_topic_entry_type.proto"; -import "google/ads/googleads/v5/enums/policy_topic_evidence_destination_mismatch_url_type.proto"; -import "google/ads/googleads/v5/enums/policy_topic_evidence_destination_not_working_device.proto"; -import "google/ads/googleads/v5/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "PolicyProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing policy information. - -// Key of the violation. The key is used for referring to a violation -// when filing an exemption request. -message PolicyViolationKey { - // Unique ID of the violated policy. - optional string policy_name = 3; - - // The text that violates the policy if specified. - // Otherwise, refers to the policy in general - // (e.g., when requesting to be exempt from the whole policy). - // If not specified for criterion exemptions, the whole policy is implied. - // Must be specified for ad exemptions. - optional string violating_text = 4; -} - -// Parameter for controlling how policy exemption is done. Ignorable policy -// topics are only usable with expanded text ads and responsive search ads. All -// other ad types must use policy violation keys. -message PolicyValidationParameter { - // The list of policy topics that should not cause a PolicyFindingError to - // be reported. This field is currently only compatible with Enhanced Text Ad. - // It corresponds to the PolicyTopicEntry.topic field. - // - // Resources violating these policies will be saved, but will not be eligible - // to serve. They may begin serving at a later time due to a change in - // policies, re-review of the resource, or a change in advertiser - // certificates. - repeated string ignorable_policy_topics = 3; - - // The list of policy violation keys that should not cause a - // PolicyViolationError to be reported. Not all policy violations are - // exemptable, please refer to the is_exemptible field in the returned - // PolicyViolationError. - // - // Resources violating these polices will be saved, but will not be eligible - // to serve. They may begin serving at a later time due to a change in - // policies, re-review of the resource, or a change in advertiser - // certificates. - repeated PolicyViolationKey exempt_policy_violation_keys = 2; -} - -// Policy finding attached to a resource (e.g. alcohol policy associated with -// a site that sells alcohol). -// -// Each PolicyTopicEntry has a topic that indicates the specific ads policy -// the entry is about and a type to indicate the effect that the entry will have -// on serving. It may optionally have one or more evidences that indicate the -// reason for the finding. It may also optionally have one or more constraints -// that provide details about how serving may be restricted. -message PolicyTopicEntry { - // Policy topic this finding refers to. For example, "ALCOHOL", - // "TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible - // policy topics is not fixed for a particular API version and may change - // at any time. - optional string topic = 5; - - // Describes the negative or positive effect this policy will have on serving. - google.ads.googleads.v5.enums.PolicyTopicEntryTypeEnum.PolicyTopicEntryType type = 2; - - // Additional information that explains policy finding - // (e.g. the brand name for a trademark finding). - repeated PolicyTopicEvidence evidences = 3; - - // Indicates how serving of this resource may be affected (e.g. not serving - // in a country). - repeated PolicyTopicConstraint constraints = 4; -} - -// Additional information that explains a policy finding. -message PolicyTopicEvidence { - // A list of fragments of text that violated a policy. - message TextList { - // The fragments of text from the resource that caused the policy finding. - repeated string texts = 2; - } - - // A list of websites that caused a policy finding. Used for - // ONE_WEBSITE_PER_AD_GROUP policy topic, for example. In case there are more - // than five websites, only the top five (those that appear in resources the - // most) will be listed here. - message WebsiteList { - // Websites that caused the policy finding. - repeated string websites = 2; - } - - // A list of strings found in a destination page that caused a policy - // finding. - message DestinationTextList { - // List of text found in the resource's destination page. - repeated string destination_texts = 2; - } - - // Evidence of mismatches between the URLs of a resource. - message DestinationMismatch { - // The set of URLs that did not match each other. - repeated google.ads.googleads.v5.enums.PolicyTopicEvidenceDestinationMismatchUrlTypeEnum.PolicyTopicEvidenceDestinationMismatchUrlType url_types = 1; - } - - // Evidence details when the destination is returning an HTTP error - // code or isn't functional in all locations for commonly used devices. - message DestinationNotWorking { - // The full URL that didn't work. - optional string expanded_url = 7; - - // The type of device that failed to load the URL. - google.ads.googleads.v5.enums.PolicyTopicEvidenceDestinationNotWorkingDeviceEnum.PolicyTopicEvidenceDestinationNotWorkingDevice device = 4; - - // The time the URL was last checked. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - optional string last_checked_date_time = 8; - - // Indicates the reason of the DESTINATION_NOT_WORKING policy finding. - oneof reason { - // The type of DNS error. - google.ads.googleads.v5.enums.PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum.PolicyTopicEvidenceDestinationNotWorkingDnsErrorType dns_error_type = 1; - - // The HTTP error code. - int64 http_error_code = 6; - } - } - - // Specific evidence information depending on the evidence type. - oneof value { - // List of websites linked with this resource. - WebsiteList website_list = 3; - - // List of evidence found in the text of a resource. - TextList text_list = 4; - - // The language the resource was detected to be written in. - // This is an IETF language tag such as "en-US". - string language_code = 9; - - // The text in the destination of the resource that is causing a policy - // finding. - DestinationTextList destination_text_list = 6; - - // Mismatch between the destinations of a resource's URLs. - DestinationMismatch destination_mismatch = 7; - - // Details when the destination is returning an HTTP error code or isn't - // functional in all locations for commonly used devices. - DestinationNotWorking destination_not_working = 8; - } -} - -// Describes the effect on serving that a policy topic entry will have. -message PolicyTopicConstraint { - // A list of countries where a resource's serving is constrained. - message CountryConstraintList { - // Total number of countries targeted by the resource. - optional int32 total_targeted_countries = 3; - - // Countries in which serving is restricted. - repeated CountryConstraint countries = 2; - } - - // Indicates that a policy topic was constrained due to disapproval of the - // website for reseller purposes. - message ResellerConstraint { - - } - - // Indicates that a resource's ability to serve in a particular country is - // constrained. - message CountryConstraint { - // Geo target constant resource name of the country in which serving is - // constrained. - optional string country_criterion = 2; - } - - // Specific information about the constraint. - oneof value { - // Countries where the resource cannot serve. - CountryConstraintList country_constraint_list = 1; - - // Reseller constraint. - ResellerConstraint reseller_constraint = 2; - - // Countries where a certificate is required for serving. - CountryConstraintList certificate_missing_in_country_list = 3; - - // Countries where the resource's domain is not covered by the - // certificates associated with it. - CountryConstraintList certificate_domain_mismatch_in_country_list = 4; - } -} diff --git a/google/ads/googleads/v5/common/real_time_bidding_setting.proto b/google/ads/googleads/v5/common/real_time_bidding_setting.proto deleted file mode 100644 index e6d009d4d..000000000 --- a/google/ads/googleads/v5/common/real_time_bidding_setting.proto +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "RealTimeBiddingSettingProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing RealTimeBiddingSetting - -// Settings for Real-Time Bidding, a feature only available for campaigns -// targeting the Ad Exchange network. -message RealTimeBiddingSetting { - // Whether the campaign is opted in to real-time bidding. - optional bool opt_in = 2; -} diff --git a/google/ads/googleads/v5/common/segments.proto b/google/ads/googleads/v5/common/segments.proto deleted file mode 100644 index 5d38170cf..000000000 --- a/google/ads/googleads/v5/common/segments.proto +++ /dev/null @@ -1,325 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/common/criteria.proto"; -import "google/ads/googleads/v5/enums/ad_network_type.proto"; -import "google/ads/googleads/v5/enums/budget_campaign_association_status.proto"; -import "google/ads/googleads/v5/enums/click_type.proto"; -import "google/ads/googleads/v5/enums/conversion_action_category.proto"; -import "google/ads/googleads/v5/enums/conversion_attribution_event_type.proto"; -import "google/ads/googleads/v5/enums/conversion_lag_bucket.proto"; -import "google/ads/googleads/v5/enums/conversion_or_adjustment_lag_bucket.proto"; -import "google/ads/googleads/v5/enums/day_of_week.proto"; -import "google/ads/googleads/v5/enums/device.proto"; -import "google/ads/googleads/v5/enums/external_conversion_source.proto"; -import "google/ads/googleads/v5/enums/hotel_date_selection_type.proto"; -import "google/ads/googleads/v5/enums/hotel_price_bucket.proto"; -import "google/ads/googleads/v5/enums/hotel_rate_type.proto"; -import "google/ads/googleads/v5/enums/month_of_year.proto"; -import "google/ads/googleads/v5/enums/placeholder_type.proto"; -import "google/ads/googleads/v5/enums/product_channel.proto"; -import "google/ads/googleads/v5/enums/product_channel_exclusivity.proto"; -import "google/ads/googleads/v5/enums/product_condition.proto"; -import "google/ads/googleads/v5/enums/search_engine_results_page_type.proto"; -import "google/ads/googleads/v5/enums/search_term_match_type.proto"; -import "google/ads/googleads/v5/enums/slot.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "SegmentsProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing segment only fields. - -// Segment only fields. -message Segments { - // Ad network type. - google.ads.googleads.v5.enums.AdNetworkTypeEnum.AdNetworkType ad_network_type = 3; - - // Budget campaign association status. - BudgetCampaignAssociationStatus budget_campaign_association_status = 134; - - // Click type. - google.ads.googleads.v5.enums.ClickTypeEnum.ClickType click_type = 26; - - // Resource name of the conversion action. - optional string conversion_action = 113; - - // Conversion action category. - google.ads.googleads.v5.enums.ConversionActionCategoryEnum.ConversionActionCategory conversion_action_category = 53; - - // Conversion action name. - optional string conversion_action_name = 114; - - // This segments your conversion columns by the original conversion and - // conversion value vs. the delta if conversions were adjusted. False row has - // the data as originally stated; While true row has the delta between data - // now and the data as originally stated. Summing the two together results - // post-adjustment data. - optional bool conversion_adjustment = 115; - - // Conversion attribution event type. - google.ads.googleads.v5.enums.ConversionAttributionEventTypeEnum.ConversionAttributionEventType conversion_attribution_event_type = 2; - - // An enum value representing the number of days between the impression and - // the conversion. - google.ads.googleads.v5.enums.ConversionLagBucketEnum.ConversionLagBucket conversion_lag_bucket = 50; - - // An enum value representing the number of days between the impression and - // the conversion or between the impression and adjustments to the conversion. - google.ads.googleads.v5.enums.ConversionOrAdjustmentLagBucketEnum.ConversionOrAdjustmentLagBucket conversion_or_adjustment_lag_bucket = 51; - - // Date to which metrics apply. - // yyyy-MM-dd format, e.g., 2018-04-17. - optional string date = 79; - - // Day of the week, e.g., MONDAY. - google.ads.googleads.v5.enums.DayOfWeekEnum.DayOfWeek day_of_week = 5; - - // Device to which metrics apply. - google.ads.googleads.v5.enums.DeviceEnum.Device device = 1; - - // External conversion source. - google.ads.googleads.v5.enums.ExternalConversionSourceEnum.ExternalConversionSource external_conversion_source = 55; - - // Resource name of the geo target constant that represents an airport. - optional string geo_target_airport = 116; - - // Resource name of the geo target constant that represents a canton. - optional string geo_target_canton = 117; - - // Resource name of the geo target constant that represents a city. - optional string geo_target_city = 118; - - // Resource name of the geo target constant that represents a country. - optional string geo_target_country = 119; - - // Resource name of the geo target constant that represents a county. - optional string geo_target_county = 120; - - // Resource name of the geo target constant that represents a district. - optional string geo_target_district = 121; - - // Resource name of the geo target constant that represents a metro. - optional string geo_target_metro = 122; - - // Resource name of the geo target constant that represents the most - // specific location. - optional string geo_target_most_specific_location = 123; - - // Resource name of the geo target constant that represents a postal code. - optional string geo_target_postal_code = 124; - - // Resource name of the geo target constant that represents a province. - optional string geo_target_province = 125; - - // Resource name of the geo target constant that represents a region. - optional string geo_target_region = 126; - - // Resource name of the geo target constant that represents a state. - optional string geo_target_state = 127; - - // Hotel booking window in days. - optional int64 hotel_booking_window_days = 135; - - // Hotel center ID. - optional int64 hotel_center_id = 80; - - // Hotel check-in date. Formatted as yyyy-MM-dd. - optional string hotel_check_in_date = 81; - - // Hotel check-in day of week. - google.ads.googleads.v5.enums.DayOfWeekEnum.DayOfWeek hotel_check_in_day_of_week = 9; - - // Hotel city. - optional string hotel_city = 82; - - // Hotel class. - optional int32 hotel_class = 83; - - // Hotel country. - optional string hotel_country = 84; - - // Hotel date selection type. - google.ads.googleads.v5.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType hotel_date_selection_type = 13; - - // Hotel length of stay. - optional int32 hotel_length_of_stay = 85; - - // Hotel rate rule ID. - optional string hotel_rate_rule_id = 86; - - // Hotel rate type. - google.ads.googleads.v5.enums.HotelRateTypeEnum.HotelRateType hotel_rate_type = 74; - - // Hotel price bucket. - google.ads.googleads.v5.enums.HotelPriceBucketEnum.HotelPriceBucket hotel_price_bucket = 78; - - // Hotel state. - optional string hotel_state = 87; - - // Hour of day as a number between 0 and 23, inclusive. - optional int32 hour = 88; - - // Only used with feed item metrics. - // Indicates whether the interaction metrics occurred on the feed item itself - // or a different extension or ad unit. - optional bool interaction_on_this_extension = 89; - - // Keyword criterion. - Keyword keyword = 61; - - // Month as represented by the date of the first day of a month. Formatted as - // yyyy-MM-dd. - optional string month = 90; - - // Month of the year, e.g., January. - google.ads.googleads.v5.enums.MonthOfYearEnum.MonthOfYear month_of_year = 18; - - // Partner hotel ID. - optional string partner_hotel_id = 91; - - // Placeholder type. This is only used with feed item metrics. - google.ads.googleads.v5.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 20; - - // Aggregator ID of the product. - optional int64 product_aggregator_id = 132; - - // Bidding category (level 1) of the product. - optional string product_bidding_category_level1 = 92; - - // Bidding category (level 2) of the product. - optional string product_bidding_category_level2 = 93; - - // Bidding category (level 3) of the product. - optional string product_bidding_category_level3 = 94; - - // Bidding category (level 4) of the product. - optional string product_bidding_category_level4 = 95; - - // Bidding category (level 5) of the product. - optional string product_bidding_category_level5 = 96; - - // Brand of the product. - optional string product_brand = 97; - - // Channel of the product. - google.ads.googleads.v5.enums.ProductChannelEnum.ProductChannel product_channel = 30; - - // Channel exclusivity of the product. - google.ads.googleads.v5.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity product_channel_exclusivity = 31; - - // Condition of the product. - google.ads.googleads.v5.enums.ProductConditionEnum.ProductCondition product_condition = 32; - - // Resource name of the geo target constant for the country of sale of the - // product. - optional string product_country = 98; - - // Custom attribute 0 of the product. - optional string product_custom_attribute0 = 99; - - // Custom attribute 1 of the product. - optional string product_custom_attribute1 = 100; - - // Custom attribute 2 of the product. - optional string product_custom_attribute2 = 101; - - // Custom attribute 3 of the product. - optional string product_custom_attribute3 = 102; - - // Custom attribute 4 of the product. - optional string product_custom_attribute4 = 103; - - // Item ID of the product. - optional string product_item_id = 104; - - // Resource name of the language constant for the language of the product. - optional string product_language = 105; - - // Merchant ID of the product. - optional int64 product_merchant_id = 133; - - // Store ID of the product. - optional string product_store_id = 106; - - // Title of the product. - optional string product_title = 107; - - // Type (level 1) of the product. - optional string product_type_l1 = 108; - - // Type (level 2) of the product. - optional string product_type_l2 = 109; - - // Type (level 3) of the product. - optional string product_type_l3 = 110; - - // Type (level 4) of the product. - optional string product_type_l4 = 111; - - // Type (level 5) of the product. - optional string product_type_l5 = 112; - - // Quarter as represented by the date of the first day of a quarter. - // Uses the calendar year for quarters, e.g., the second quarter of 2018 - // starts on 2018-04-01. Formatted as yyyy-MM-dd. - optional string quarter = 128; - - // Type of the search engine results page. - google.ads.googleads.v5.enums.SearchEngineResultsPageTypeEnum.SearchEngineResultsPageType search_engine_results_page_type = 70; - - // Match type of the keyword that triggered the ad, including variants. - google.ads.googleads.v5.enums.SearchTermMatchTypeEnum.SearchTermMatchType search_term_match_type = 22; - - // Position of the ad. - google.ads.googleads.v5.enums.SlotEnum.Slot slot = 23; - - // Resource name of the ad group criterion that represents webpage criterion. - optional string webpage = 129; - - // Week as defined as Monday through Sunday, and represented by the date of - // Monday. Formatted as yyyy-MM-dd. - optional string week = 130; - - // Year, formatted as yyyy. - optional int32 year = 131; -} - -// A Keyword criterion segment. -message Keyword { - // The AdGroupCriterion resource name. - optional string ad_group_criterion = 3; - - // Keyword info. - KeywordInfo info = 2; -} - -// A BudgetCampaignAssociationStatus segment. -message BudgetCampaignAssociationStatus { - // The campaign resource name. - optional string campaign = 1; - - // Budget campaign association status. - google.ads.googleads.v5.enums.BudgetCampaignAssociationStatusEnum.BudgetCampaignAssociationStatus status = 2; -} diff --git a/google/ads/googleads/v5/common/simulation.proto b/google/ads/googleads/v5/common/simulation.proto deleted file mode 100644 index 3a45d11e3..000000000 --- a/google/ads/googleads/v5/common/simulation.proto +++ /dev/null @@ -1,235 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "SimulationProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing simulation points. - -// A container for simulation points for simulations of type BID_MODIFIER. -message BidModifierSimulationPointList { - // Projected metrics for a series of bid modifier amounts. - repeated BidModifierSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type CPC_BID. -message CpcBidSimulationPointList { - // Projected metrics for a series of CPC bid amounts. - repeated CpcBidSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type CPV_BID. -message CpvBidSimulationPointList { - // Projected metrics for a series of CPV bid amounts. - repeated CpvBidSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type TARGET_CPA. -message TargetCpaSimulationPointList { - // Projected metrics for a series of target CPA amounts. - repeated TargetCpaSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type TARGET_ROAS. -message TargetRoasSimulationPointList { - // Projected metrics for a series of target ROAS amounts. - repeated TargetRoasSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type PERCENT_CPC_BID. -message PercentCpcBidSimulationPointList { - // Projected metrics for a series of percent CPC bid amounts. - repeated PercentCpcBidSimulationPoint points = 1; -} - -// Projected metrics for a specific bid modifier amount. -message BidModifierSimulationPoint { - // The simulated bid modifier upon which projected metrics are based. - optional double bid_modifier = 15; - - // Projected number of biddable conversions. - // Only search advertising channel type supports this field. - optional double biddable_conversions = 16; - - // Projected total value of biddable conversions. - // Only search advertising channel type supports this field. - optional double biddable_conversions_value = 17; - - // Projected number of clicks. - optional int64 clicks = 18; - - // Projected cost in micros. - optional int64 cost_micros = 19; - - // Projected number of impressions. - optional int64 impressions = 20; - - // Projected number of top slot impressions. - // Only search advertising channel type supports this field. - optional int64 top_slot_impressions = 21; - - // Projected number of biddable conversions for the parent resource. - // Only search advertising channel type supports this field. - optional double parent_biddable_conversions = 22; - - // Projected total value of biddable conversions for the parent resource. - // Only search advertising channel type supports this field. - optional double parent_biddable_conversions_value = 23; - - // Projected number of clicks for the parent resource. - optional int64 parent_clicks = 24; - - // Projected cost in micros for the parent resource. - optional int64 parent_cost_micros = 25; - - // Projected number of impressions for the parent resource. - optional int64 parent_impressions = 26; - - // Projected number of top slot impressions for the parent resource. - // Only search advertising channel type supports this field. - optional int64 parent_top_slot_impressions = 27; - - // Projected minimum daily budget that must be available to the parent - // resource to realize this simulation. - optional int64 parent_required_budget_micros = 28; -} - -// Projected metrics for a specific CPC bid amount. -message CpcBidSimulationPoint { - // The simulated CPC bid upon which projected metrics are based. - optional int64 cpc_bid_micros = 8; - - // Projected number of biddable conversions. - optional double biddable_conversions = 9; - - // Projected total value of biddable conversions. - optional double biddable_conversions_value = 10; - - // Projected number of clicks. - optional int64 clicks = 11; - - // Projected cost in micros. - optional int64 cost_micros = 12; - - // Projected number of impressions. - optional int64 impressions = 13; - - // Projected number of top slot impressions. - // Only search advertising channel type supports this field. - optional int64 top_slot_impressions = 14; -} - -// Projected metrics for a specific CPV bid amount. -message CpvBidSimulationPoint { - // The simulated CPV bid upon which projected metrics are based. - optional int64 cpv_bid_micros = 5; - - // Projected cost in micros. - optional int64 cost_micros = 6; - - // Projected number of impressions. - optional int64 impressions = 7; - - // Projected number of views. - optional int64 views = 8; -} - -// Projected metrics for a specific target CPA amount. -message TargetCpaSimulationPoint { - // The simulated target CPA upon which projected metrics are based. - optional int64 target_cpa_micros = 8; - - // Projected number of biddable conversions. - optional double biddable_conversions = 9; - - // Projected total value of biddable conversions. - optional double biddable_conversions_value = 10; - - // Projected number of clicks. - optional int64 clicks = 11; - - // Projected cost in micros. - optional int64 cost_micros = 12; - - // Projected number of impressions. - optional int64 impressions = 13; - - // Projected number of top slot impressions. - // Only search advertising channel type supports this field. - optional int64 top_slot_impressions = 14; -} - -// Projected metrics for a specific target ROAS amount. -message TargetRoasSimulationPoint { - // The simulated target ROAS upon which projected metrics are based. - optional double target_roas = 8; - - // Projected number of biddable conversions. - optional double biddable_conversions = 9; - - // Projected total value of biddable conversions. - optional double biddable_conversions_value = 10; - - // Projected number of clicks. - optional int64 clicks = 11; - - // Projected cost in micros. - optional int64 cost_micros = 12; - - // Projected number of impressions. - optional int64 impressions = 13; - - // Projected number of top slot impressions. - // Only Search advertising channel type supports this field. - optional int64 top_slot_impressions = 14; -} - -// Projected metrics for a specific percent CPC amount. Only Hotel advertising -// channel type supports this field. -message PercentCpcBidSimulationPoint { - // The simulated percent CPC upon which projected metrics are based. Percent - // CPC expressed as fraction of the advertised price for some good or service. - // The value stored here is 1,000,000 * [fraction]. - optional int64 percent_cpc_bid_micros = 1; - - // Projected number of biddable conversions. - optional double biddable_conversions = 2; - - // Projected total value of biddable conversions in local currency. - optional double biddable_conversions_value = 3; - - // Projected number of clicks. - optional int64 clicks = 4; - - // Projected cost in micros. - optional int64 cost_micros = 5; - - // Projected number of impressions. - optional int64 impressions = 6; - - // Projected number of top slot impressions. - optional int64 top_slot_impressions = 7; -} diff --git a/google/ads/googleads/v5/common/tag_snippet.proto b/google/ads/googleads/v5/common/tag_snippet.proto deleted file mode 100644 index e333a75bc..000000000 --- a/google/ads/googleads/v5/common/tag_snippet.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/tracking_code_page_format.proto"; -import "google/ads/googleads/v5/enums/tracking_code_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "TagSnippetProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing TagSnippet - -// The site tag and event snippet pair for a TrackingCodeType. -message TagSnippet { - // The type of the generated tag snippets for tracking conversions. - google.ads.googleads.v5.enums.TrackingCodeTypeEnum.TrackingCodeType type = 1; - - // The format of the web page where the tracking tag and snippet will be - // installed, e.g. HTML. - google.ads.googleads.v5.enums.TrackingCodePageFormatEnum.TrackingCodePageFormat page_format = 2; - - // The site tag that adds visitors to your basic remarketing lists and sets - // new cookies on your domain. - optional string global_site_tag = 5; - - // The event snippet that works with the site tag to track actions that - // should be counted as conversions. - optional string event_snippet = 6; -} diff --git a/google/ads/googleads/v5/common/targeting_setting.proto b/google/ads/googleads/v5/common/targeting_setting.proto deleted file mode 100644 index b107d14e9..000000000 --- a/google/ads/googleads/v5/common/targeting_setting.proto +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/targeting_dimension.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "TargetingSettingProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing TargetingSetting - -// Settings for the targeting-related features, at the campaign and ad group -// levels. For more details about the targeting setting, visit -// https://support.google.com/google-ads/answer/7365594 -message TargetingSetting { - // The per-targeting-dimension setting to restrict the reach of your campaign - // or ad group. - repeated TargetRestriction target_restrictions = 1; - - // The list of operations changing the target restrictions. - // - // Adding a target restriction with a targeting dimension that already exists - // causes the existing target restriction to be replaced with the new value. - repeated TargetRestrictionOperation target_restriction_operations = 2; -} - -// The list of per-targeting-dimension targeting settings. -message TargetRestriction { - // The targeting dimension that these settings apply to. - google.ads.googleads.v5.enums.TargetingDimensionEnum.TargetingDimension targeting_dimension = 1; - - // Indicates whether to restrict your ads to show only for the criteria you - // have selected for this targeting_dimension, or to target all values for - // this targeting_dimension and show ads based on your targeting in other - // TargetingDimensions. A value of `true` means that these criteria will only - // apply bid modifiers, and not affect targeting. A value of `false` means - // that these criteria will restrict targeting as well as applying bid - // modifiers. - optional bool bid_only = 3; -} - -// Operation to be performed on a target restriction list in a mutate. -message TargetRestrictionOperation { - // The operator. - enum Operator { - // Unspecified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Add the restriction to the existing restrictions. - ADD = 2; - - // Remove the restriction from the existing restrictions. - REMOVE = 3; - } - - // Type of list operation to perform. - Operator operator = 1; - - // The target restriction being added to or removed from the list. - TargetRestriction value = 2; -} diff --git a/google/ads/googleads/v5/common/text_label.proto b/google/ads/googleads/v5/common/text_label.proto deleted file mode 100644 index d12b3e6b8..000000000 --- a/google/ads/googleads/v5/common/text_label.proto +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "TextLabelProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// A type of label displaying text on a colored background. -message TextLabel { - // Background color of the label in RGB format. This string must match the - // regular expression '^\#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$'. - // Note: The background color may not be visible for manager accounts. - google.protobuf.StringValue background_color = 1; - - // A short description of the label. The length must be no more than 200 - // characters. - google.protobuf.StringValue description = 2; -} diff --git a/google/ads/googleads/v5/common/url_collection.proto b/google/ads/googleads/v5/common/url_collection.proto deleted file mode 100644 index 1989322e1..000000000 --- a/google/ads/googleads/v5/common/url_collection.proto +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "UrlCollectionProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file UrlCollection type. - -// Collection of urls that is tagged with a unique identifier. -message UrlCollection { - // Unique identifier for this UrlCollection instance. - optional string url_collection_id = 5; - - // A list of possible final URLs. - repeated string final_urls = 6; - - // A list of possible final mobile URLs. - repeated string final_mobile_urls = 7; - - // URL template for constructing a tracking URL. - optional string tracking_url_template = 8; -} diff --git a/google/ads/googleads/v5/common/user_lists.proto b/google/ads/googleads/v5/common/user_lists.proto deleted file mode 100644 index 27c39fdfc..000000000 --- a/google/ads/googleads/v5/common/user_lists.proto +++ /dev/null @@ -1,292 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/ads/googleads/v5/enums/customer_match_upload_key_type.proto"; -import "google/ads/googleads/v5/enums/user_list_combined_rule_operator.proto"; -import "google/ads/googleads/v5/enums/user_list_crm_data_source_type.proto"; -import "google/ads/googleads/v5/enums/user_list_date_rule_item_operator.proto"; -import "google/ads/googleads/v5/enums/user_list_logical_rule_operator.proto"; -import "google/ads/googleads/v5/enums/user_list_number_rule_item_operator.proto"; -import "google/ads/googleads/v5/enums/user_list_prepopulation_status.proto"; -import "google/ads/googleads/v5/enums/user_list_rule_type.proto"; -import "google/ads/googleads/v5/enums/user_list_string_rule_item_operator.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "UserListsProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing user list types. - -// SimilarUserList is a list of users which are similar to users from another -// UserList. These lists are read-only and automatically created by Google. -message SimilarUserListInfo { - // Seed UserList from which this list is derived. - google.protobuf.StringValue seed_user_list = 1; -} - -// UserList of CRM users provided by the advertiser. -message CrmBasedUserListInfo { - // A string that uniquely identifies a mobile application from which the data - // was collected to the Google Ads API. - // For iOS, the ID string is the 9 digit string that appears at the end of an - // App Store URL (e.g., "476943146" for "Flood-It! 2" whose App Store link is - // http://itunes.apple.com/us/app/flood-it!-2/id476943146). - // For Android, the ID string is the application's package name - // (e.g., "com.labpixies.colordrips" for "Color Drips" given Google Play link - // https://play.google.com/store/apps/details?id=com.labpixies.colordrips). - // Required when creating CrmBasedUserList for uploading mobile advertising - // IDs. - google.protobuf.StringValue app_id = 1; - - // Matching key type of the list. - // Mixed data types are not allowed on the same list. - // This field is required for an ADD operation. - google.ads.googleads.v5.enums.CustomerMatchUploadKeyTypeEnum.CustomerMatchUploadKeyType upload_key_type = 2; - - // Data source of the list. Default value is FIRST_PARTY. - // Only customers on the allow-list can create third-party sourced CRM lists. - google.ads.googleads.v5.enums.UserListCrmDataSourceTypeEnum.UserListCrmDataSourceType data_source_type = 3; -} - -// A client defined rule based on custom parameters sent by web sites or -// uploaded by the advertiser. -message UserListRuleInfo { - // Rule type is used to determine how to group rule items. - // - // The default is OR of ANDs (disjunctive normal form). - // That is, rule items will be ANDed together within rule item groups and the - // groups themselves will be ORed together. - // - // Currently AND of ORs (conjunctive normal form) is only supported for - // ExpressionRuleUserList. - google.ads.googleads.v5.enums.UserListRuleTypeEnum.UserListRuleType rule_type = 1; - - // List of rule item groups that defines this rule. - // Rule item groups are grouped together based on rule_type. - repeated UserListRuleItemGroupInfo rule_item_groups = 2; -} - -// A group of rule items. -message UserListRuleItemGroupInfo { - // Rule items that will be grouped together based on rule_type. - repeated UserListRuleItemInfo rule_items = 1; -} - -// An atomic rule item. -message UserListRuleItemInfo { - // Rule variable name. It should match the corresponding key name fired - // by the pixel. - // A name must begin with US-ascii letters or underscore or UTF8 code that is - // greater than 127 and consist of US-ascii letters or digits or underscore or - // UTF8 code that is greater than 127. - // For websites, there are two built-in variable URL (name = 'url__') and - // referrer URL (name = 'ref_url__'). - // This field must be populated when creating a new rule item. - google.protobuf.StringValue name = 1; - - // An atomic rule item. - oneof rule_item { - // An atomic rule item composed of a number operation. - UserListNumberRuleItemInfo number_rule_item = 2; - - // An atomic rule item composed of a string operation. - UserListStringRuleItemInfo string_rule_item = 3; - - // An atomic rule item composed of a date operation. - UserListDateRuleItemInfo date_rule_item = 4; - } -} - -// A rule item composed of a date operation. -message UserListDateRuleItemInfo { - // Date comparison operator. - // This field is required and must be populated when creating new date - // rule item. - google.ads.googleads.v5.enums.UserListDateRuleItemOperatorEnum.UserListDateRuleItemOperator operator = 1; - - // String representing date value to be compared with the rule variable. - // Supported date format is YYYY-MM-DD. - // Times are reported in the customer's time zone. - google.protobuf.StringValue value = 2; - - // The relative date value of the right hand side denoted by number of days - // offset from now. The value field will override this field when both are - // present. - google.protobuf.Int64Value offset_in_days = 3; -} - -// A rule item composed of a number operation. -message UserListNumberRuleItemInfo { - // Number comparison operator. - // This field is required and must be populated when creating a new number - // rule item. - google.ads.googleads.v5.enums.UserListNumberRuleItemOperatorEnum.UserListNumberRuleItemOperator operator = 1; - - // Number value to be compared with the variable. - // This field is required and must be populated when creating a new number - // rule item. - google.protobuf.DoubleValue value = 2; -} - -// A rule item composed of a string operation. -message UserListStringRuleItemInfo { - // String comparison operator. - // This field is required and must be populated when creating a new string - // rule item. - google.ads.googleads.v5.enums.UserListStringRuleItemOperatorEnum.UserListStringRuleItemOperator operator = 1; - - // The right hand side of the string rule item. For URLs or referrer URLs, - // the value can not contain illegal URL chars such as newlines, quotes, - // tabs, or parentheses. This field is required and must be populated when - // creating a new string rule item. - google.protobuf.StringValue value = 2; -} - -// User lists defined by combining two rules, left operand and right operand. -// There are two operators: AND where left operand and right operand have to be -// true; AND_NOT where left operand is true but right operand is false. -message CombinedRuleUserListInfo { - // Left operand of the combined rule. - // This field is required and must be populated when creating new combined - // rule based user list. - UserListRuleInfo left_operand = 1; - - // Right operand of the combined rule. - // This field is required and must be populated when creating new combined - // rule based user list. - UserListRuleInfo right_operand = 2; - - // Operator to connect the two operands. - // - // Required for creating a combined rule user list. - google.ads.googleads.v5.enums.UserListCombinedRuleOperatorEnum.UserListCombinedRuleOperator rule_operator = 3; -} - -// Visitors of a page during specific dates. -message DateSpecificRuleUserListInfo { - // Boolean rule that defines visitor of a page. - // - // Required for creating a date specific rule user list. - UserListRuleInfo rule = 1; - - // Start date of users visit. If set to 2000-01-01, then the list includes all - // users before end_date. The date's format should be YYYY-MM-DD. - // - // Required for creating a data specific rule user list. - google.protobuf.StringValue start_date = 2; - - // End date of users visit. If set to 2037-12-30, then the list includes all - // users after start_date. The date's format should be YYYY-MM-DD. - // - // Required for creating a data specific rule user list. - google.protobuf.StringValue end_date = 3; -} - -// Visitors of a page. The page visit is defined by one boolean rule expression. -message ExpressionRuleUserListInfo { - // Boolean rule that defines this user list. The rule consists of a list of - // rule item groups and each rule item group consists of a list of rule items. - // All the rule item groups are ORed or ANDed together for evaluation based on - // rule.rule_type. - // - // Required for creating an expression rule user list. - UserListRuleInfo rule = 1; -} - -// Representation of a userlist that is generated by a rule. -message RuleBasedUserListInfo { - // The status of pre-population. The field is default to NONE if not set which - // means the previous users will not be considered. If set to REQUESTED, past - // site visitors or app users who match the list definition will be included - // in the list (works on the Display Network only). This will only - // add past users from within the last 30 days, depending on the - // list's membership duration and the date when the remarketing tag is added. - // The status will be updated to FINISHED once request is processed, or FAILED - // if the request fails. - google.ads.googleads.v5.enums.UserListPrepopulationStatusEnum.UserListPrepopulationStatus prepopulation_status = 1; - - // Subtypes of rule based user lists. - oneof rule_based_user_list { - // User lists defined by combining two rules. - // There are two operators: AND, where the left and right operands have to - // be true; AND_NOT where left operand is true but right operand is false. - CombinedRuleUserListInfo combined_rule_user_list = 2; - - // Visitors of a page during specific dates. The visiting periods are - // defined as follows: - // Between start_date (inclusive) and end_date (inclusive); - // Before end_date (exclusive) with start_date = 2000-01-01; - // After start_date (exclusive) with end_date = 2037-12-30. - DateSpecificRuleUserListInfo date_specific_rule_user_list = 3; - - // Visitors of a page. The page visit is defined by one boolean rule - // expression. - ExpressionRuleUserListInfo expression_rule_user_list = 4; - } -} - -// Represents a user list that is a custom combination of user lists. -message LogicalUserListInfo { - // Logical list rules that define this user list. The rules are defined as a - // logical operator (ALL/ANY/NONE) and a list of user lists. All the rules are - // ANDed when they are evaluated. - // - // Required for creating a logical user list. - repeated UserListLogicalRuleInfo rules = 1; -} - -// A user list logical rule. A rule has a logical operator (and/or/not) and a -// list of user lists as operands. -message UserListLogicalRuleInfo { - // The logical operator of the rule. - google.ads.googleads.v5.enums.UserListLogicalRuleOperatorEnum.UserListLogicalRuleOperator operator = 1; - - // The list of operands of the rule. - repeated LogicalUserListOperandInfo rule_operands = 2; -} - -// Operand of logical user list that consists of a user list. -message LogicalUserListOperandInfo { - // Resource name of a user list as an operand. - google.protobuf.StringValue user_list = 1; -} - -// User list targeting as a collection of conversions or remarketing actions. -message BasicUserListInfo { - // Actions associated with this user list. - repeated UserListActionInfo actions = 1; -} - -// Represents an action type used for building remarketing user lists. -message UserListActionInfo { - // Subtypes of user list action. - oneof user_list_action { - // A conversion action that's not generated from remarketing. - google.protobuf.StringValue conversion_action = 1; - - // A remarketing action. - google.protobuf.StringValue remarketing_action = 2; - } -} diff --git a/google/ads/googleads/v5/common/value.proto b/google/ads/googleads/v5/common/value.proto deleted file mode 100644 index 532f97779..000000000 --- a/google/ads/googleads/v5/common/value.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ValueProto"; -option java_package = "com.google.ads.googleads.v5.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V5::Common"; - -// Proto file describing value types - -// A generic data container. -message Value { - // A value. - oneof value { - // A boolean. - bool boolean_value = 1; - - // An int64. - int64 int64_value = 2; - - // A float. - float float_value = 3; - - // A double. - double double_value = 4; - - // A string. - string string_value = 5; - } -} diff --git a/google/ads/googleads/v5/enums/access_reason.proto b/google/ads/googleads/v5/enums/access_reason.proto deleted file mode 100644 index 955649d2c..000000000 --- a/google/ads/googleads/v5/enums/access_reason.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccessReasonProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Indicates the way the resource such as user list is related to a user. -message AccessReasonEnum { - // Enum describing possible access reasons. - enum AccessReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The resource is owned by the user. - OWNED = 2; - - // The resource is shared to the user. - SHARED = 3; - - // The resource is licensed to the user. - LICENSED = 4; - - // The user subscribed to the resource. - SUBSCRIBED = 5; - - // The resource is accessible to the user. - AFFILIATED = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/access_role.proto b/google/ads/googleads/v5/enums/access_role.proto deleted file mode 100644 index e65abaa9f..000000000 --- a/google/ads/googleads/v5/enums/access_role.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccessRoleProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum describing possible access role for user. -message AccessRoleEnum { - // Possible access role of a user. - enum AccessRole { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Owns its account and can control the addition of other users. - ADMIN = 2; - - // Can modify campaigns, but can't affect other users. - STANDARD = 3; - - // Can view campaigns and account changes, but cannot make edits. - READ_ONLY = 4; - - // Role for \"email only\" access. Represents an email recipient rather than - // a true User entity. - EMAIL_ONLY = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/account_budget_proposal_status.proto b/google/ads/googleads/v5/enums/account_budget_proposal_status.proto deleted file mode 100644 index 3c94f2ee2..000000000 --- a/google/ads/googleads/v5/enums/account_budget_proposal_status.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing AccountBudgetProposal statuses. - -// Message describing AccountBudgetProposal statuses. -message AccountBudgetProposalStatusEnum { - // The possible statuses of an AccountBudgetProposal. - enum AccountBudgetProposalStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The proposal is pending approval. - PENDING = 2; - - // The proposal has been approved but the corresponding billing setup - // has not. This can occur for proposals that set up the first budget - // when signing up for billing or when performing a change of bill-to - // operation. - APPROVED_HELD = 3; - - // The proposal has been approved. - APPROVED = 4; - - // The proposal has been cancelled by the user. - CANCELLED = 5; - - // The proposal has been rejected by the user, e.g. by rejecting an - // acceptance email. - REJECTED = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/account_budget_proposal_type.proto b/google/ads/googleads/v5/enums/account_budget_proposal_type.proto deleted file mode 100644 index 3d7cd1c56..000000000 --- a/google/ads/googleads/v5/enums/account_budget_proposal_type.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing AccountBudgetProposal types. - -// Message describing AccountBudgetProposal types. -message AccountBudgetProposalTypeEnum { - // The possible types of an AccountBudgetProposal. - enum AccountBudgetProposalType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Identifies a request to create a new budget. - CREATE = 2; - - // Identifies a request to edit an existing budget. - UPDATE = 3; - - // Identifies a request to end a budget that has already started. - END = 4; - - // Identifies a request to remove a budget that hasn't started yet. - REMOVE = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/account_budget_status.proto b/google/ads/googleads/v5/enums/account_budget_status.proto deleted file mode 100644 index e4c84793a..000000000 --- a/google/ads/googleads/v5/enums/account_budget_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing AccountBudget statuses. - -// Message describing AccountBudget statuses. -message AccountBudgetStatusEnum { - // The possible statuses of an AccountBudget. - enum AccountBudgetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The account budget is pending approval. - PENDING = 2; - - // The account budget has been approved. - APPROVED = 3; - - // The account budget has been cancelled by the user. - CANCELLED = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/account_link_status.proto b/google/ads/googleads/v5/enums/account_link_status.proto deleted file mode 100644 index 2d509bf7c..000000000 --- a/google/ads/googleads/v5/enums/account_link_status.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum describing possible statuses of an account link. -message AccountLinkStatusEnum { - // Describes the possible statuses for a link between a Google Ads customer - // and another account. - enum AccountLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The link is enabled. - ENABLED = 2; - - // The link is removed/disabled. - REMOVED = 3; - - // The link to the other account has been requested. A user on the other - // account may now approve the link by setting the status to ENABLED. - REQUESTED = 4; - - // This link has been requested by a user on the other account. It may be - // approved by a user on this account by setting the status to ENABLED. - PENDING_APPROVAL = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/ad_customizer_placeholder_field.proto b/google/ads/googleads/v5/enums/ad_customizer_placeholder_field.proto deleted file mode 100644 index e8855000d..000000000 --- a/google/ads/googleads/v5/enums/ad_customizer_placeholder_field.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdCustomizerPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Ad Customizer placeholder fields. - -// Values for Ad Customizer placeholder fields. -message AdCustomizerPlaceholderFieldEnum { - // Possible values for Ad Customizers placeholder fields. - enum AdCustomizerPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: INT64. Integer value to be inserted. - INTEGER = 2; - - // Data Type: STRING. Price value to be inserted. - PRICE = 3; - - // Data Type: DATE_TIME. Date value to be inserted. - DATE = 4; - - // Data Type: STRING. String value to be inserted. - STRING = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/ad_group_ad_rotation_mode.proto b/google/ads/googleads/v5/enums/ad_group_ad_rotation_mode.proto deleted file mode 100644 index b25dd913f..000000000 --- a/google/ads/googleads/v5/enums/ad_group_ad_rotation_mode.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdRotationModeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing ad group ad rotation mode. - -// Container for enum describing possible ad rotation modes of ads within an -// ad group. -message AdGroupAdRotationModeEnum { - // The possible ad rotation modes of an ad group. - enum AdGroupAdRotationMode { - // The ad rotation mode has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Optimize ad group ads based on clicks or conversions. - OPTIMIZE = 2; - - // Rotate evenly forever. - ROTATE_FOREVER = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/ad_group_ad_status.proto b/google/ads/googleads/v5/enums/ad_group_ad_status.proto deleted file mode 100644 index b1f62ae04..000000000 --- a/google/ads/googleads/v5/enums/ad_group_ad_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing ad group status. - -// Container for enum describing possible statuses of an AdGroupAd. -message AdGroupAdStatusEnum { - // The possible statuses of an AdGroupAd. - enum AdGroupAdStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad group ad is enabled. - ENABLED = 2; - - // The ad group ad is paused. - PAUSED = 3; - - // The ad group ad is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/ad_group_criterion_approval_status.proto b/google/ads/googleads/v5/enums/ad_group_criterion_approval_status.proto deleted file mode 100644 index dbfef87f4..000000000 --- a/google/ads/googleads/v5/enums/ad_group_criterion_approval_status.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionApprovalStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing approval status for the criterion. - -// Container for enum describing possible AdGroupCriterion approval statuses. -message AdGroupCriterionApprovalStatusEnum { - // Enumerates AdGroupCriterion approval statuses. - enum AdGroupCriterionApprovalStatus { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Approved. - APPROVED = 2; - - // Disapproved. - DISAPPROVED = 3; - - // Pending Review. - PENDING_REVIEW = 4; - - // Under review. - UNDER_REVIEW = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/ad_group_criterion_status.proto b/google/ads/googleads/v5/enums/ad_group_criterion_status.proto deleted file mode 100644 index 81d3f735e..000000000 --- a/google/ads/googleads/v5/enums/ad_group_criterion_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing AdGroupCriterion statuses. - -// Message describing AdGroupCriterion statuses. -message AdGroupCriterionStatusEnum { - // The possible statuses of an AdGroupCriterion. - enum AdGroupCriterionStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad group criterion is enabled. - ENABLED = 2; - - // The ad group criterion is paused. - PAUSED = 3; - - // The ad group criterion is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/ad_group_status.proto b/google/ads/googleads/v5/enums/ad_group_status.proto deleted file mode 100644 index b6e541aa9..000000000 --- a/google/ads/googleads/v5/enums/ad_group_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing ad group status. - -// Container for enum describing possible statuses of an ad group. -message AdGroupStatusEnum { - // The possible statuses of an ad group. - enum AdGroupStatus { - // The status has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad group is enabled. - ENABLED = 2; - - // The ad group is paused. - PAUSED = 3; - - // The ad group is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/ad_group_type.proto b/google/ads/googleads/v5/enums/ad_group_type.proto deleted file mode 100644 index 502e6584d..000000000 --- a/google/ads/googleads/v5/enums/ad_group_type.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing ad group types. - -// Defines types of an ad group, specific to a particular campaign channel -// type. This type drives validations that restrict which entities can be -// added to the ad group. -message AdGroupTypeEnum { - // Enum listing the possible types of an ad group. - enum AdGroupType { - // The type has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The default ad group type for Search campaigns. - SEARCH_STANDARD = 2; - - // The default ad group type for Display campaigns. - DISPLAY_STANDARD = 3; - - // The ad group type for Shopping campaigns serving standard product ads. - SHOPPING_PRODUCT_ADS = 4; - - // The default ad group type for Hotel campaigns. - HOTEL_ADS = 6; - - // The type for ad groups in Smart Shopping campaigns. - SHOPPING_SMART_ADS = 7; - - // Short unskippable in-stream video ads. - VIDEO_BUMPER = 8; - - // TrueView (skippable) in-stream video ads. - VIDEO_TRUE_VIEW_IN_STREAM = 9; - - // TrueView in-display video ads. - VIDEO_TRUE_VIEW_IN_DISPLAY = 10; - - // Unskippable in-stream video ads. - VIDEO_NON_SKIPPABLE_IN_STREAM = 11; - - // Outstream video ads. - VIDEO_OUTSTREAM = 12; - - // Ad group type for Dynamic Search Ads ad groups. - SEARCH_DYNAMIC_ADS = 13; - - // The type for ad groups in Shopping Comparison Listing campaigns. - SHOPPING_COMPARISON_LISTING_ADS = 14; - - // The ad group type for Promoted Hotel ad groups. - PROMOTED_HOTEL_ADS = 15; - - // Video responsive ad groups. - VIDEO_RESPONSIVE = 16; - } - - -} diff --git a/google/ads/googleads/v5/enums/ad_network_type.proto b/google/ads/googleads/v5/enums/ad_network_type.proto deleted file mode 100644 index c51af270a..000000000 --- a/google/ads/googleads/v5/enums/ad_network_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdNetworkTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing ad network types. - -// Container for enumeration of Google Ads network types. -message AdNetworkTypeEnum { - // Enumerates Google Ads network types. - enum AdNetworkType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Google search. - SEARCH = 2; - - // Search partners. - SEARCH_PARTNERS = 3; - - // Display Network. - CONTENT = 4; - - // YouTube Search. - YOUTUBE_SEARCH = 5; - - // YouTube Videos - YOUTUBE_WATCH = 6; - - // Cross-network. - MIXED = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/ad_serving_optimization_status.proto b/google/ads/googleads/v5/enums/ad_serving_optimization_status.proto deleted file mode 100644 index 3e411cc92..000000000 --- a/google/ads/googleads/v5/enums/ad_serving_optimization_status.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdServingOptimizationStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing ad serving statuses. - -// Possible ad serving statuses of a campaign. -message AdServingOptimizationStatusEnum { - // Enum describing possible serving statuses. - enum AdServingOptimizationStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Ad serving is optimized based on CTR for the campaign. - OPTIMIZE = 2; - - // Ad serving is optimized based on CTR * Conversion for the campaign. If - // the campaign is not in the conversion optimizer bidding strategy, it will - // default to OPTIMIZED. - CONVERSION_OPTIMIZE = 3; - - // Ads are rotated evenly for 90 days, then optimized for clicks. - ROTATE = 4; - - // Show lower performing ads more evenly with higher performing ads, and do - // not optimize. - ROTATE_INDEFINITELY = 5; - - // Ad serving optimization status is not available. - UNAVAILABLE = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/ad_strength.proto b/google/ads/googleads/v5/enums/ad_strength.proto deleted file mode 100644 index f867005b0..000000000 --- a/google/ads/googleads/v5/enums/ad_strength.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdStrengthProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing ad strengths. - -// Container for enum describing possible ad strengths. -message AdStrengthEnum { - // Enum listing the possible ad strengths. - enum AdStrength { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The ad strength is currently pending. - PENDING = 2; - - // No ads could be generated. - NO_ADS = 3; - - // Poor strength. - POOR = 4; - - // Average strength. - AVERAGE = 5; - - // Good strength. - GOOD = 6; - - // Excellent strength. - EXCELLENT = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/ad_type.proto b/google/ads/googleads/v5/enums/ad_type.proto deleted file mode 100644 index 44e5498db..000000000 --- a/google/ads/googleads/v5/enums/ad_type.proto +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing the ad type. - -// Container for enum describing possible types of an ad. -message AdTypeEnum { - // The possible types of an ad. - enum AdType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad is a text ad. - TEXT_AD = 2; - - // The ad is an expanded text ad. - EXPANDED_TEXT_AD = 3; - - // The ad is a call only ad. - CALL_ONLY_AD = 6; - - // The ad is an expanded dynamic search ad. - EXPANDED_DYNAMIC_SEARCH_AD = 7; - - // The ad is a hotel ad. - HOTEL_AD = 8; - - // The ad is a Smart Shopping ad. - SHOPPING_SMART_AD = 9; - - // The ad is a standard Shopping ad. - SHOPPING_PRODUCT_AD = 10; - - // The ad is a video ad. - VIDEO_AD = 12; - - // This ad is a Gmail ad. - GMAIL_AD = 13; - - // This ad is an Image ad. - IMAGE_AD = 14; - - // The ad is a responsive search ad. - RESPONSIVE_SEARCH_AD = 15; - - // The ad is a legacy responsive display ad. - LEGACY_RESPONSIVE_DISPLAY_AD = 16; - - // The ad is an app ad. - APP_AD = 17; - - // The ad is a legacy app install ad. - LEGACY_APP_INSTALL_AD = 18; - - // The ad is a responsive display ad. - RESPONSIVE_DISPLAY_AD = 19; - - // The ad is a local ad. - LOCAL_AD = 20; - - // The ad is a display upload ad with the HTML5_UPLOAD_AD product type. - HTML5_UPLOAD_AD = 21; - - // The ad is a display upload ad with one of the DYNAMIC_HTML5_* product - // types. - DYNAMIC_HTML5_AD = 22; - - // The ad is an app engagement ad. - APP_ENGAGEMENT_AD = 23; - - // The ad is a Shopping Comparison Listing ad. - SHOPPING_COMPARISON_LISTING_AD = 24; - - // Video bumper ad. - VIDEO_BUMPER_AD = 25; - - // Video non-skippable in-stream ad. - VIDEO_NON_SKIPPABLE_IN_STREAM_AD = 26; - - // Video outstream ad. - VIDEO_OUTSTREAM_AD = 27; - - // Video TrueView in-display ad. - VIDEO_TRUEVIEW_DISCOVERY_AD = 28; - - // Video TrueView in-stream ad. - VIDEO_TRUEVIEW_IN_STREAM_AD = 29; - - // Video responsive ad. - VIDEO_RESPONSIVE_AD = 30; - } - - -} diff --git a/google/ads/googleads/v5/enums/advertising_channel_sub_type.proto b/google/ads/googleads/v5/enums/advertising_channel_sub_type.proto deleted file mode 100644 index cd8e4aa47..000000000 --- a/google/ads/googleads/v5/enums/advertising_channel_sub_type.proto +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdvertisingChannelSubTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing advertising channel subtypes. - -// An immutable specialization of an Advertising Channel. -message AdvertisingChannelSubTypeEnum { - // Enum describing the different channel subtypes. - enum AdvertisingChannelSubType { - // Not specified. - UNSPECIFIED = 0; - - // Used as a return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile app campaigns for Search. - SEARCH_MOBILE_APP = 2; - - // Mobile app campaigns for Display. - DISPLAY_MOBILE_APP = 3; - - // AdWords express campaigns for search. - SEARCH_EXPRESS = 4; - - // AdWords Express campaigns for display. - DISPLAY_EXPRESS = 5; - - // Smart Shopping campaigns. - SHOPPING_SMART_ADS = 6; - - // Gmail Ad campaigns. - DISPLAY_GMAIL_AD = 7; - - // Smart display campaigns. - DISPLAY_SMART_CAMPAIGN = 8; - - // Video Outstream campaigns. - VIDEO_OUTSTREAM = 9; - - // Video TrueView for Action campaigns. - VIDEO_ACTION = 10; - - // Video campaigns with non-skippable video ads. - VIDEO_NON_SKIPPABLE = 11; - - // App Campaign that allows you to easily promote your Android or iOS app - // across Google's top properties including Search, Play, YouTube, and the - // Google Display Network. - APP_CAMPAIGN = 12; - - // App Campaign for engagement, focused on driving re-engagement with the - // app across several of Google’s top properties including Search, YouTube, - // and the Google Display Network. - APP_CAMPAIGN_FOR_ENGAGEMENT = 13; - - // Campaigns specialized for local advertising. - LOCAL_CAMPAIGN = 14; - - // Shopping Comparison Listing campaigns. - SHOPPING_COMPARISON_LISTING_ADS = 15; - - // Standard Smart campaigns. - SMART_CAMPAIGN = 16; - - // Video campaigns with sequence video ads. - VIDEO_SEQUENCE = 17; - } - - -} diff --git a/google/ads/googleads/v5/enums/advertising_channel_type.proto b/google/ads/googleads/v5/enums/advertising_channel_type.proto deleted file mode 100644 index 89c70edb0..000000000 --- a/google/ads/googleads/v5/enums/advertising_channel_type.proto +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdvertisingChannelTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing advertising channel types - -// The channel type a campaign may target to serve on. -message AdvertisingChannelTypeEnum { - // Enum describing the various advertising channel types. - enum AdvertisingChannelType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Search Network. Includes display bundled, and Search+ campaigns. - SEARCH = 2; - - // Google Display Network only. - DISPLAY = 3; - - // Shopping campaigns serve on the shopping property - // and on google.com search results. - SHOPPING = 4; - - // Hotel Ads campaigns. - HOTEL = 5; - - // Video campaigns. - VIDEO = 6; - - // App Campaigns, and App Campaigns for Engagement, that run - // across multiple channels. - MULTI_CHANNEL = 7; - - // Local ads campaigns. - LOCAL = 8; - - // Smart campaigns. - SMART = 9; - } - - -} diff --git a/google/ads/googleads/v5/enums/affiliate_location_feed_relationship_type.proto b/google/ads/googleads/v5/enums/affiliate_location_feed_relationship_type.proto deleted file mode 100644 index 2cc9445ce..000000000 --- a/google/ads/googleads/v5/enums/affiliate_location_feed_relationship_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AffiliateLocationFeedRelationshipTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing relation type for affiliate location feeds. - -// Container for enum describing possible values for a relationship type for -// an affiliate location feed. -message AffiliateLocationFeedRelationshipTypeEnum { - // Possible values for a relationship type for an affiliate location feed. - enum AffiliateLocationFeedRelationshipType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // General retailer relationship. - GENERAL_RETAILER = 2; - } - - -} diff --git a/google/ads/googleads/v5/enums/affiliate_location_placeholder_field.proto b/google/ads/googleads/v5/enums/affiliate_location_placeholder_field.proto deleted file mode 100644 index b8e6ac227..000000000 --- a/google/ads/googleads/v5/enums/affiliate_location_placeholder_field.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AffiliateLocationPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Affiliate Location placeholder fields. - -// Values for Affiliate Location placeholder fields. -message AffiliateLocationPlaceholderFieldEnum { - // Possible values for Affiliate Location placeholder fields. - enum AffiliateLocationPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The name of the business. - BUSINESS_NAME = 2; - - // Data Type: STRING. Line 1 of the business address. - ADDRESS_LINE_1 = 3; - - // Data Type: STRING. Line 2 of the business address. - ADDRESS_LINE_2 = 4; - - // Data Type: STRING. City of the business address. - CITY = 5; - - // Data Type: STRING. Province of the business address. - PROVINCE = 6; - - // Data Type: STRING. Postal code of the business address. - POSTAL_CODE = 7; - - // Data Type: STRING. Country code of the business address. - COUNTRY_CODE = 8; - - // Data Type: STRING. Phone number of the business. - PHONE_NUMBER = 9; - - // Data Type: STRING. Language code of the business. - LANGUAGE_CODE = 10; - - // Data Type: INT64. ID of the chain. - CHAIN_ID = 11; - - // Data Type: STRING. Name of the chain. - CHAIN_NAME = 12; - } - - -} diff --git a/google/ads/googleads/v5/enums/age_range_type.proto b/google/ads/googleads/v5/enums/age_range_type.proto deleted file mode 100644 index 9172833a1..000000000 --- a/google/ads/googleads/v5/enums/age_range_type.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AgeRangeTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing age range types. - -// Container for enum describing the type of demographic age ranges. -message AgeRangeTypeEnum { - // The type of demographic age ranges (e.g. between 18 and 24 years old). - enum AgeRangeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Between 18 and 24 years old. - AGE_RANGE_18_24 = 503001; - - // Between 25 and 34 years old. - AGE_RANGE_25_34 = 503002; - - // Between 35 and 44 years old. - AGE_RANGE_35_44 = 503003; - - // Between 45 and 54 years old. - AGE_RANGE_45_54 = 503004; - - // Between 55 and 64 years old. - AGE_RANGE_55_64 = 503005; - - // 65 years old and beyond. - AGE_RANGE_65_UP = 503006; - - // Undetermined age range. - AGE_RANGE_UNDETERMINED = 503999; - } - - -} diff --git a/google/ads/googleads/v5/enums/app_campaign_app_store.proto b/google/ads/googleads/v5/enums/app_campaign_app_store.proto deleted file mode 100644 index 1c274d8c3..000000000 --- a/google/ads/googleads/v5/enums/app_campaign_app_store.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppCampaignAppStoreProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing App Campaign app store. - -// The application store that distributes mobile applications. -message AppCampaignAppStoreEnum { - // Enum describing app campaign app store. - enum AppCampaignAppStore { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Apple app store. - APPLE_APP_STORE = 2; - - // Google play. - GOOGLE_APP_STORE = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/app_campaign_bidding_strategy_goal_type.proto b/google/ads/googleads/v5/enums/app_campaign_bidding_strategy_goal_type.proto deleted file mode 100644 index 303d0c84c..000000000 --- a/google/ads/googleads/v5/enums/app_campaign_bidding_strategy_goal_type.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppCampaignBiddingStrategyGoalTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing App Campaign bidding strategy goal types. - -// Container for enum describing goal towards which the bidding strategy of an -// app campaign should optimize for. -message AppCampaignBiddingStrategyGoalTypeEnum { - // Goal type of App campaign BiddingStrategy. - enum AppCampaignBiddingStrategyGoalType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Aim to maximize the number of app installs. The cpa bid is the - // target cost per install. - OPTIMIZE_INSTALLS_TARGET_INSTALL_COST = 2; - - // Aim to maximize the long term number of selected in-app conversions from - // app installs. The cpa bid is the target cost per install. - OPTIMIZE_IN_APP_CONVERSIONS_TARGET_INSTALL_COST = 3; - - // Aim to maximize the long term number of selected in-app conversions from - // app installs. The cpa bid is the target cost per in-app conversion. Note - // that the actual cpa may seem higher than the target cpa at first, since - // the long term conversions haven’t happened yet. - OPTIMIZE_IN_APP_CONVERSIONS_TARGET_CONVERSION_COST = 4; - - // Aim to maximize all conversions' value, i.e. install + selected in-app - // conversions while achieving or exceeding target return on advertising - // spend. - OPTIMIZE_RETURN_ON_ADVERTISING_SPEND = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/app_payment_model_type.proto b/google/ads/googleads/v5/enums/app_payment_model_type.proto deleted file mode 100644 index cb08cf244..000000000 --- a/google/ads/googleads/v5/enums/app_payment_model_type.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppPaymentModelTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing criteria types. - -// Represents a criterion for targeting paid apps. -message AppPaymentModelTypeEnum { - // Enum describing possible app payment models. - enum AppPaymentModelType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Represents paid-for apps. - PAID = 30; - } - - -} diff --git a/google/ads/googleads/v5/enums/app_placeholder_field.proto b/google/ads/googleads/v5/enums/app_placeholder_field.proto deleted file mode 100644 index b27a963a7..000000000 --- a/google/ads/googleads/v5/enums/app_placeholder_field.proto +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing App placeholder fields. - -// Values for App placeholder fields. -message AppPlaceholderFieldEnum { - // Possible values for App placeholder fields. - enum AppPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: INT64. The application store that the target application - // belongs to. Valid values are: 1 = Apple iTunes Store; 2 = Google Play - // Store. - STORE = 2; - - // Data Type: STRING. The store-specific ID for the target application. - ID = 3; - - // Data Type: STRING. The visible text displayed when the link is rendered - // in an ad. - LINK_TEXT = 4; - - // Data Type: STRING. The destination URL of the in-app link. - URL = 5; - - // Data Type: URL_LIST. Final URLs for the in-app link when using Upgraded - // URLs. - FINAL_URLS = 6; - - // Data Type: URL_LIST. Final Mobile URLs for the in-app link when using - // Upgraded URLs. - FINAL_MOBILE_URLS = 7; - - // Data Type: URL. Tracking template for the in-app link when using Upgraded - // URLs. - TRACKING_URL = 8; - - // Data Type: STRING. Final URL suffix for the in-app link when using - // parallel tracking. - FINAL_URL_SUFFIX = 9; - } - - -} diff --git a/google/ads/googleads/v5/enums/app_store.proto b/google/ads/googleads/v5/enums/app_store.proto deleted file mode 100644 index 180ac74fb..000000000 --- a/google/ads/googleads/v5/enums/app_store.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppStoreProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing app store types for an app extension. - -// Container for enum describing app store type in an app extension. -message AppStoreEnum { - // App store type in an app extension. - enum AppStore { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Apple iTunes. - APPLE_ITUNES = 2; - - // Google Play. - GOOGLE_PLAY = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/app_url_operating_system_type.proto b/google/ads/googleads/v5/enums/app_url_operating_system_type.proto deleted file mode 100644 index adc284182..000000000 --- a/google/ads/googleads/v5/enums/app_url_operating_system_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppUrlOperatingSystemTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing operating system for a deeplink app URL. - -// The possible OS types for a deeplink AppUrl. -message AppUrlOperatingSystemTypeEnum { - // Operating System - enum AppUrlOperatingSystemType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The Apple IOS operating system. - IOS = 2; - - // The Android operating system. - ANDROID = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/asset_field_type.proto b/google/ads/googleads/v5/enums/asset_field_type.proto deleted file mode 100644 index 2ba299b8a..000000000 --- a/google/ads/googleads/v5/enums/asset_field_type.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AssetFieldTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing asset type. - -// Container for enum describing the possible placements of an asset. -message AssetFieldTypeEnum { - // Enum describing the possible placements of an asset. - enum AssetFieldType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The asset is linked for use as a headline. - HEADLINE = 2; - - // The asset is linked for use as a description. - DESCRIPTION = 3; - - // The asset is linked for use as mandatory ad text. - MANDATORY_AD_TEXT = 4; - - // The asset is linked for use as a marketing image. - MARKETING_IMAGE = 5; - - // The asset is linked for use as a media bundle. - MEDIA_BUNDLE = 6; - - // The asset is linked for use as a YouTube video. - YOUTUBE_VIDEO = 7; - - // The asset is linked to indicate that a hotels campaign is "Book on - // Google" enabled. - BOOK_ON_GOOGLE = 8; - } - - -} diff --git a/google/ads/googleads/v5/enums/asset_link_status.proto b/google/ads/googleads/v5/enums/asset_link_status.proto deleted file mode 100644 index 943a84fdf..000000000 --- a/google/ads/googleads/v5/enums/asset_link_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AssetLinkStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing status of an asset link. - -// Container for enum describing possible statuses of an asset link. -message AssetLinkStatusEnum { - // Enum describing statuses of an asset link. - enum AssetLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Asset link is enabled. - ENABLED = 2; - - // Asset link has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/asset_performance_label.proto b/google/ads/googleads/v5/enums/asset_performance_label.proto deleted file mode 100644 index f2fa1757a..000000000 --- a/google/ads/googleads/v5/enums/asset_performance_label.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AssetPerformanceLabelProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing the performance label of an asset. - -// Container for enum describing the performance label of an asset. -message AssetPerformanceLabelEnum { - // Enum describing the possible performance labels of an asset, usually - // computed in the context of a linkage. - enum AssetPerformanceLabel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // This asset does not yet have any performance informantion. This may be - // because it is still under review. - PENDING = 2; - - // The asset has started getting impressions but the stats are not - // statistically significant enough to get an asset performance label. - LEARNING = 3; - - // Worst performing assets. - LOW = 4; - - // Good performing assets. - GOOD = 5; - - // Best performing assets. - BEST = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/asset_type.proto b/google/ads/googleads/v5/enums/asset_type.proto deleted file mode 100644 index 545132350..000000000 --- a/google/ads/googleads/v5/enums/asset_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AssetTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing asset type. - -// Container for enum describing the types of asset. -message AssetTypeEnum { - // Enum describing possible types of asset. - enum AssetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // YouTube video asset. - YOUTUBE_VIDEO = 2; - - // Media bundle asset. - MEDIA_BUNDLE = 3; - - // Image asset. - IMAGE = 4; - - // Text asset. - TEXT = 5; - - // Book on Google asset. - BOOK_ON_GOOGLE = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/attribution_model.proto b/google/ads/googleads/v5/enums/attribution_model.proto deleted file mode 100644 index 9dffdc94d..000000000 --- a/google/ads/googleads/v5/enums/attribution_model.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AttributionModelProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum representing the attribution model that describes how to -// distribute credit for a particular conversion across potentially many prior -// interactions. -message AttributionModelEnum { - // The attribution model that describes how to distribute credit for a - // particular conversion across potentially many prior interactions. - enum AttributionModel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Uses external attribution. - EXTERNAL = 100; - - // Attributes all credit for a conversion to its last click. - GOOGLE_ADS_LAST_CLICK = 101; - - // Attributes all credit for a conversion to its first click using Google - // Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_FIRST_CLICK = 102; - - // Attributes credit for a conversion equally across all of its clicks using - // Google Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_LINEAR = 103; - - // Attributes exponentially more credit for a conversion to its more recent - // clicks using Google Search attribution (half-life is 1 week). - GOOGLE_SEARCH_ATTRIBUTION_TIME_DECAY = 104; - - // Attributes 40% of the credit for a conversion to its first and last - // clicks. Remaining 20% is evenly distributed across all other clicks. This - // uses Google Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_POSITION_BASED = 105; - - // Flexible model that uses machine learning to determine the appropriate - // distribution of credit among clicks using Google Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN = 106; - } - - -} diff --git a/google/ads/googleads/v5/enums/batch_job_status.proto b/google/ads/googleads/v5/enums/batch_job_status.proto deleted file mode 100644 index 8e79b2cb3..000000000 --- a/google/ads/googleads/v5/enums/batch_job_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing batch job statuses. - -// Container for enum describing possible batch job statuses. -message BatchJobStatusEnum { - // The batch job statuses. - enum BatchJobStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The job is not currently running. - PENDING = 2; - - // The job is running. - RUNNING = 3; - - // The job is done. - DONE = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/bid_modifier_source.proto b/google/ads/googleads/v5/enums/bid_modifier_source.proto deleted file mode 100644 index 3358ab2b7..000000000 --- a/google/ads/googleads/v5/enums/bid_modifier_source.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BidModifierSourceProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing bid modifier source. - -// Container for enum describing possible bid modifier sources. -message BidModifierSourceEnum { - // Enum describing possible bid modifier sources. - enum BidModifierSource { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The bid modifier is specified at the campaign level, on the campaign - // level criterion. - CAMPAIGN = 2; - - // The bid modifier is specified (overridden) at the ad group level. - AD_GROUP = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/bidding_source.proto b/google/ads/googleads/v5/enums/bidding_source.proto deleted file mode 100644 index d7049164c..000000000 --- a/google/ads/googleads/v5/enums/bidding_source.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BiddingSourceProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing bidding sources. - -// Container for enum describing possible bidding sources. -message BiddingSourceEnum { - // Indicates where a bid or target is defined. For example, an ad group - // criterion may define a cpc bid directly, or it can inherit its cpc bid from - // the ad group. - enum BiddingSource { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Effective bid or target is inherited from campaign bidding strategy. - CAMPAIGN_BIDDING_STRATEGY = 5; - - // The bid or target is defined on the ad group. - AD_GROUP = 6; - - // The bid or target is defined on the ad group criterion. - AD_GROUP_CRITERION = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/bidding_strategy_status.proto b/google/ads/googleads/v5/enums/bidding_strategy_status.proto deleted file mode 100644 index 66d50283f..000000000 --- a/google/ads/googleads/v5/enums/bidding_strategy_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing BiddingStrategy statuses. - -// Message describing BiddingStrategy statuses. -message BiddingStrategyStatusEnum { - // The possible statuses of a BiddingStrategy. - enum BiddingStrategyStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The bidding strategy is enabled. - ENABLED = 2; - - // The bidding strategy is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/bidding_strategy_type.proto b/google/ads/googleads/v5/enums/bidding_strategy_type.proto deleted file mode 100644 index a55ff4496..000000000 --- a/google/ads/googleads/v5/enums/bidding_strategy_type.proto +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing bidding schemes. - -// Container for enum describing possible bidding strategy types. -message BiddingStrategyTypeEnum { - // Enum describing possible bidding strategy types. - enum BiddingStrategyType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Commission is an automatic bidding strategy in which the advertiser pays - // a certain portion of the conversion value. - COMMISSION = 16; - - // Enhanced CPC is a bidding strategy that raises bids for clicks - // that seem more likely to lead to a conversion and lowers - // them for clicks where they seem less likely. - ENHANCED_CPC = 2; - - // Manual click based bidding where user pays per click. - MANUAL_CPC = 3; - - // Manual impression based bidding - // where user pays per thousand impressions. - MANUAL_CPM = 4; - - // A bidding strategy that pays a configurable amount per video view. - MANUAL_CPV = 13; - - // A bidding strategy that automatically maximizes number of conversions - // given a daily budget. - MAXIMIZE_CONVERSIONS = 10; - - // An automated bidding strategy that automatically sets bids to maximize - // revenue while spending your budget. - MAXIMIZE_CONVERSION_VALUE = 11; - - // Page-One Promoted bidding scheme, which sets max cpc bids to - // target impressions on page one or page one promoted slots on google.com. - // This enum value is deprecated. - PAGE_ONE_PROMOTED = 5; - - // Percent Cpc is bidding strategy where bids are a fraction of the - // advertised price for some good or service. - PERCENT_CPC = 12; - - // Target CPA is an automated bid strategy that sets bids - // to help get as many conversions as possible - // at the target cost-per-acquisition (CPA) you set. - TARGET_CPA = 6; - - // Target CPM is an automated bid strategy that sets bids to help get - // as many impressions as possible at the target cost per one thousand - // impressions (CPM) you set. - TARGET_CPM = 14; - - // An automated bidding strategy that sets bids so that a certain percentage - // of search ads are shown at the top of the first page (or other targeted - // location). - TARGET_IMPRESSION_SHARE = 15; - - // Target Outrank Share is an automated bidding strategy that sets bids - // based on the target fraction of auctions where the advertiser - // should outrank a specific competitor. - // This enum value is deprecated. - TARGET_OUTRANK_SHARE = 7; - - // Target ROAS is an automated bidding strategy - // that helps you maximize revenue while averaging - // a specific target Return On Average Spend (ROAS). - TARGET_ROAS = 8; - - // Target Spend is an automated bid strategy that sets your bids - // to help get as many clicks as possible within your budget. - TARGET_SPEND = 9; - } - - -} diff --git a/google/ads/googleads/v5/enums/billing_setup_status.proto b/google/ads/googleads/v5/enums/billing_setup_status.proto deleted file mode 100644 index e6d8b5f3f..000000000 --- a/google/ads/googleads/v5/enums/billing_setup_status.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing BillingSetup statuses. - -// Message describing BillingSetup statuses. -message BillingSetupStatusEnum { - // The possible statuses of a BillingSetup. - enum BillingSetupStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The billing setup is pending approval. - PENDING = 2; - - // The billing setup has been approved but the corresponding first budget - // has not. This can only occur for billing setups configured for monthly - // invoicing. - APPROVED_HELD = 3; - - // The billing setup has been approved. - APPROVED = 4; - - // The billing setup was cancelled by the user prior to approval. - CANCELLED = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/brand_safety_suitability.proto b/google/ads/googleads/v5/enums/brand_safety_suitability.proto deleted file mode 100644 index 12ecdcf2f..000000000 --- a/google/ads/googleads/v5/enums/brand_safety_suitability.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BrandSafetySuitabilityProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing brand safety suitability settings. - -// Container for enum with 3-Tier brand safety suitability control. -message BrandSafetySuitabilityEnum { - // 3-Tier brand safety suitability control. - enum BrandSafetySuitability { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // This option lets you show ads across all inventory on YouTube and video - // partners that meet our standards for monetization. This option may be an - // appropriate choice for brands that want maximum access to the full - // breadth of videos eligible for ads, including, for example, videos that - // have strong profanity in the context of comedy or a documentary, or - // excessive violence as featured in video games. - EXPANDED_INVENTORY = 2; - - // This option lets you show ads across a wide range of content that's - // appropriate for most brands, such as popular music videos, documentaries, - // and movie trailers. The content you can show ads on is based on YouTube's - // advertiser-friendly content guidelines that take into account, for - // example, the strength or frequency of profanity, or the appropriateness - // of subject matter like sensitive events. Ads won't show, for example, on - // content with repeated strong profanity, strong sexual content, or graphic - // violence. - STANDARD_INVENTORY = 3; - - // This option lets you show ads on a reduced range of content that's - // appropriate for brands with particularly strict guidelines around - // inappropriate language and sexual suggestiveness; above and beyond what - // YouTube's advertiser-friendly content guidelines address. The videos - // accessible in this sensitive category meet heightened requirements, - // especially for inappropriate language and sexual suggestiveness. For - // example, your ads will be excluded from showing on some of YouTube's most - // popular music videos and other pop culture content across YouTube and - // Google video partners. - LIMITED_INVENTORY = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/budget_campaign_association_status.proto b/google/ads/googleads/v5/enums/budget_campaign_association_status.proto deleted file mode 100644 index ea4f16896..000000000 --- a/google/ads/googleads/v5/enums/budget_campaign_association_status.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetCampaignAssociationStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Budget and Campaign association status. - -// Message describing the status of the association between the Budget and the -// Campaign. -message BudgetCampaignAssociationStatusEnum { - // Possible statuses of the association between the Budget and the Campaign. - enum BudgetCampaignAssociationStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The campaign is currently using the budget. - ENABLED = 2; - - // The campaign is no longer using the budget. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/budget_delivery_method.proto b/google/ads/googleads/v5/enums/budget_delivery_method.proto deleted file mode 100644 index 478eba2e8..000000000 --- a/google/ads/googleads/v5/enums/budget_delivery_method.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetDeliveryMethodProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Budget delivery methods. - -// Message describing Budget delivery methods. A delivery method determines the -// rate at which the Budget is spent. -message BudgetDeliveryMethodEnum { - // Possible delivery methods of a Budget. - enum BudgetDeliveryMethod { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The budget server will throttle serving evenly across - // the entire time period. - STANDARD = 2; - - // The budget server will not throttle serving, - // and ads will serve as fast as possible. - ACCELERATED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/budget_period.proto b/google/ads/googleads/v5/enums/budget_period.proto deleted file mode 100644 index 65e64b44b..000000000 --- a/google/ads/googleads/v5/enums/budget_period.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetPeriodProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Budget delivery methods. - -// Message describing Budget period. -message BudgetPeriodEnum { - // Possible period of a Budget. - enum BudgetPeriod { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Daily budget. - DAILY = 2; - - // Custom budget, added back in V5. - // Custom bugdet can be used with total_amount to specify lifetime budget - // limit. See: https://support.google.com/google-ads/answer/6385083 for more - // info. - CUSTOM_PERIOD = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/budget_status.proto b/google/ads/googleads/v5/enums/budget_status.proto deleted file mode 100644 index 6bf749d55..000000000 --- a/google/ads/googleads/v5/enums/budget_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Budget statuses - -// Message describing a Budget status -message BudgetStatusEnum { - // Possible statuses of a Budget. - enum BudgetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Budget is enabled. - ENABLED = 2; - - // Budget is removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/budget_type.proto b/google/ads/googleads/v5/enums/budget_type.proto deleted file mode 100644 index fd82a0347..000000000 --- a/google/ads/googleads/v5/enums/budget_type.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Budget types. - -// Describes Budget types. -message BudgetTypeEnum { - // Possible Budget types. - enum BudgetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Budget type for standard Google Ads usage. - // Caps daily spend at two times the specified budget amount. - // Full details: https://support.google.com/google-ads/answer/6385083 - STANDARD = 2; - - // Budget type for Hotels Ads commission program. - // Full details: https://support.google.com/google-ads/answer/9243945 - // - // This type is only supported by campaigns with - // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION and - // PaymentMode.CONVERSION_VALUE. - HOTEL_ADS_COMMISSION = 3; - - // Budget type with a fixed cost-per-acquisition (conversion). - // Full details: https://support.google.com/google-ads/answer/7528254 - // - // This type is only supported by campaigns with - // AdvertisingChannelType.DISPLAY (excluding - // AdvertisingChannelSubType.DISPLAY_GMAIL), - // BiddingStrategyType.TARGET_CPA and PaymentMode.CONVERSIONS. - FIXED_CPA = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/call_conversion_reporting_state.proto b/google/ads/googleads/v5/enums/call_conversion_reporting_state.proto deleted file mode 100644 index b7c154c79..000000000 --- a/google/ads/googleads/v5/enums/call_conversion_reporting_state.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CallConversionReportingStateProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing call conversion reporting state. - -// Container for enum describing possible data types for call conversion -// reporting state. -message CallConversionReportingStateEnum { - // Possible data types for a call conversion action state. - enum CallConversionReportingState { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Call conversion action is disabled. - DISABLED = 2; - - // Call conversion action will use call conversion type set at the - // account level. - USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION = 3; - - // Call conversion action will use call conversion type set at the resource - // (call only ads/call extensions) level. - USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/call_placeholder_field.proto b/google/ads/googleads/v5/enums/call_placeholder_field.proto deleted file mode 100644 index 480d8456b..000000000 --- a/google/ads/googleads/v5/enums/call_placeholder_field.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CallPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Call placeholder fields. - -// Values for Call placeholder fields. -message CallPlaceholderFieldEnum { - // Possible values for Call placeholder fields. - enum CallPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The advertiser's phone number to append to the ad. - PHONE_NUMBER = 2; - - // Data Type: STRING. Uppercase two-letter country code of the advertiser's - // phone number. - COUNTRY_CODE = 3; - - // Data Type: BOOLEAN. Indicates whether call tracking is enabled. Default: - // true. - TRACKED = 4; - - // Data Type: INT64. The ID of an AdCallMetricsConversion object. This - // object contains the phoneCallDurationfield which is the minimum duration - // (in seconds) of a call to be considered a conversion. - CONVERSION_TYPE_ID = 5; - - // Data Type: STRING. Indicates whether this call extension uses its own - // call conversion setting or follows the account level setting. - // Valid values are: USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION and - // USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION. - CONVERSION_REPORTING_STATE = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/callout_placeholder_field.proto b/google/ads/googleads/v5/enums/callout_placeholder_field.proto deleted file mode 100644 index 59258da22..000000000 --- a/google/ads/googleads/v5/enums/callout_placeholder_field.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CalloutPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Callout placeholder fields. - -// Values for Callout placeholder fields. -message CalloutPlaceholderFieldEnum { - // Possible values for Callout placeholder fields. - enum CalloutPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Callout text. - CALLOUT_TEXT = 2; - } - - -} diff --git a/google/ads/googleads/v5/enums/campaign_criterion_status.proto b/google/ads/googleads/v5/enums/campaign_criterion_status.proto deleted file mode 100644 index 1dd09087b..000000000 --- a/google/ads/googleads/v5/enums/campaign_criterion_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing CampaignCriterion statuses. - -// Message describing CampaignCriterion statuses. -message CampaignCriterionStatusEnum { - // The possible statuses of a CampaignCriterion. - enum CampaignCriterionStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The campaign criterion is enabled. - ENABLED = 2; - - // The campaign criterion is paused. - PAUSED = 3; - - // The campaign criterion is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/campaign_draft_status.proto b/google/ads/googleads/v5/enums/campaign_draft_status.proto deleted file mode 100644 index 2db4d83af..000000000 --- a/google/ads/googleads/v5/enums/campaign_draft_status.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing campaign draft status. - -// Container for enum describing possible statuses of a campaign draft. -message CampaignDraftStatusEnum { - // Possible statuses of a campaign draft. - enum CampaignDraftStatus { - // The status has not been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Initial state of the draft, the advertiser can start adding changes with - // no effect on serving. - PROPOSED = 2; - - // The campaign draft is removed. - REMOVED = 3; - - // Advertiser requested to promote draft's changes back into the original - // campaign. Advertiser can poll the long running operation returned by - // the promote action to see the status of the promotion. - PROMOTING = 5; - - // The process to merge changes in the draft back to the original campaign - // has completed successfully. - PROMOTED = 4; - - // The promotion failed after it was partially applied. Promote cannot be - // attempted again safely, so the issue must be corrected in the original - // campaign. - PROMOTE_FAILED = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/campaign_experiment_status.proto b/google/ads/googleads/v5/enums/campaign_experiment_status.proto deleted file mode 100644 index 4e4f19258..000000000 --- a/google/ads/googleads/v5/enums/campaign_experiment_status.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing campaign experiment status. - -// Container for enum describing possible statuses of a campaign experiment. -message CampaignExperimentStatusEnum { - // Possible statuses of a campaign experiment. - enum CampaignExperimentStatus { - // The status has not been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The experiment campaign is being initialized. - INITIALIZING = 2; - - // Initialization of the experiment campaign failed. - INITIALIZATION_FAILED = 8; - - // The experiment campaign is fully initialized. The experiment is currently - // running, scheduled to run in the future or has ended based on its - // end date. An experiment with the status INITIALIZING will be updated to - // ENABLED when it is fully created. - ENABLED = 3; - - // The experiment campaign was graduated to a stand-alone - // campaign, existing independently of the experiment. - GRADUATED = 4; - - // The experiment is removed. - REMOVED = 5; - - // The experiment's changes are being applied to the original campaign. - // The long running operation returned by the promote method can be polled - // to see the status of the promotion. - PROMOTING = 6; - - // Promote of the experiment campaign failed. - PROMOTION_FAILED = 9; - - // The changes of the experiment are promoted to their original campaign. - PROMOTED = 7; - - // The experiment was ended manually. It did not end based on its end date. - ENDED_MANUALLY = 10; - } - - -} diff --git a/google/ads/googleads/v5/enums/campaign_experiment_traffic_split_type.proto b/google/ads/googleads/v5/enums/campaign_experiment_traffic_split_type.proto deleted file mode 100644 index 8bfedc523..000000000 --- a/google/ads/googleads/v5/enums/campaign_experiment_traffic_split_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentTrafficSplitTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing campaign experiment traffic split type. - -// Container for enum describing campaign experiment traffic split type. -message CampaignExperimentTrafficSplitTypeEnum { - // Enum of strategies for splitting traffic between base and experiment - // campaigns in campaign experiment. - enum CampaignExperimentTrafficSplitType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Traffic is randomly assigned to the base or experiment arm for each - // query, independent of previous assignments for the same user. - RANDOM_QUERY = 2; - - // Traffic is split using cookies to keep users in the same arm (base or - // experiment) of the experiment. - COOKIE = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/campaign_experiment_type.proto b/google/ads/googleads/v5/enums/campaign_experiment_type.proto deleted file mode 100644 index a6dcf1580..000000000 --- a/google/ads/googleads/v5/enums/campaign_experiment_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing campaign experiment type. - -// Container for enum describing campaign experiment type. -message CampaignExperimentTypeEnum { - // Indicates if this campaign is a normal campaign, - // a draft campaign, or an experiment campaign. - enum CampaignExperimentType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // This is a regular campaign. - BASE = 2; - - // This is a draft version of a campaign. - // It has some modifications from a base campaign, - // but it does not serve or accrue metrics. - DRAFT = 3; - - // This is an experiment version of a campaign. - // It has some modifications from a base campaign, - // and a percentage of traffic is being diverted - // from the BASE campaign to this experiment campaign. - EXPERIMENT = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/campaign_serving_status.proto b/google/ads/googleads/v5/enums/campaign_serving_status.proto deleted file mode 100644 index 83c5a35fc..000000000 --- a/google/ads/googleads/v5/enums/campaign_serving_status.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignServingStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Campaign serving statuses. - -// Message describing Campaign serving statuses. -message CampaignServingStatusEnum { - // Possible serving statuses of a campaign. - enum CampaignServingStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Serving. - SERVING = 2; - - // None. - NONE = 3; - - // Ended. - ENDED = 4; - - // Pending. - PENDING = 5; - - // Suspended. - SUSPENDED = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/campaign_shared_set_status.proto b/google/ads/googleads/v5/enums/campaign_shared_set_status.proto deleted file mode 100644 index f362341a6..000000000 --- a/google/ads/googleads/v5/enums/campaign_shared_set_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing campaign shared set statuses. - -// Container for enum describing types of campaign shared set statuses. -message CampaignSharedSetStatusEnum { - // Enum listing the possible campaign shared set statuses. - enum CampaignSharedSetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The campaign shared set is enabled. - ENABLED = 2; - - // The campaign shared set is removed and can no longer be used. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/campaign_status.proto b/google/ads/googleads/v5/enums/campaign_status.proto deleted file mode 100644 index 043cf2508..000000000 --- a/google/ads/googleads/v5/enums/campaign_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing campaign status. - -// Container for enum describing possible statuses of a campaign. -message CampaignStatusEnum { - // Possible statuses of a campaign. - enum CampaignStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Campaign is currently serving ads depending on budget information. - ENABLED = 2; - - // Campaign has been paused by the user. - PAUSED = 3; - - // Campaign has been removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/change_status_operation.proto b/google/ads/googleads/v5/enums/change_status_operation.proto deleted file mode 100644 index 73a95df4d..000000000 --- a/google/ads/googleads/v5/enums/change_status_operation.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusOperationProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing the change status operations. - -// Container for enum describing operations for the ChangeStatus resource. -message ChangeStatusOperationEnum { - // Status of the changed resource - enum ChangeStatusOperation { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents an unclassified resource unknown - // in this version. - UNKNOWN = 1; - - // The resource was created. - ADDED = 2; - - // The resource was modified. - CHANGED = 3; - - // The resource was removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/change_status_resource_type.proto b/google/ads/googleads/v5/enums/change_status_resource_type.proto deleted file mode 100644 index b616aeb93..000000000 --- a/google/ads/googleads/v5/enums/change_status_resource_type.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusResourceTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing the resource types the ChangeStatus resource supports. - -// Container for enum describing supported resource types for the ChangeStatus -// resource. -message ChangeStatusResourceTypeEnum { - // Enum listing the resource types support by the ChangeStatus resource. - enum ChangeStatusResourceType { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents an unclassified resource unknown - // in this version. - UNKNOWN = 1; - - // An AdGroup resource change. - AD_GROUP = 3; - - // An AdGroupAd resource change. - AD_GROUP_AD = 4; - - // An AdGroupCriterion resource change. - AD_GROUP_CRITERION = 5; - - // A Campaign resource change. - CAMPAIGN = 6; - - // A CampaignCriterion resource change. - CAMPAIGN_CRITERION = 7; - - // A Feed resource change. - FEED = 9; - - // A FeedItem resource change. - FEED_ITEM = 10; - - // An AdGroupFeed resource change. - AD_GROUP_FEED = 11; - - // A CampaignFeed resource change. - CAMPAIGN_FEED = 12; - - // An AdGroupBidModifier resource change. - AD_GROUP_BID_MODIFIER = 13; - } - - -} diff --git a/google/ads/googleads/v5/enums/click_type.proto b/google/ads/googleads/v5/enums/click_type.proto deleted file mode 100644 index b7a5fc3e4..000000000 --- a/google/ads/googleads/v5/enums/click_type.proto +++ /dev/null @@ -1,203 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ClickTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing click types. - -// Container for enumeration of Google Ads click types. -message ClickTypeEnum { - // Enumerates Google Ads click types. - enum ClickType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // App engagement ad deep link. - APP_DEEPLINK = 2; - - // Breadcrumbs. - BREADCRUMBS = 3; - - // Broadband Plan. - BROADBAND_PLAN = 4; - - // Manually dialed phone calls. - CALL_TRACKING = 5; - - // Phone calls. - CALLS = 6; - - // Click on engagement ad. - CLICK_ON_ENGAGEMENT_AD = 7; - - // Driving direction. - GET_DIRECTIONS = 8; - - // Get location details. - LOCATION_EXPANSION = 9; - - // Call. - LOCATION_FORMAT_CALL = 10; - - // Directions. - LOCATION_FORMAT_DIRECTIONS = 11; - - // Image(s). - LOCATION_FORMAT_IMAGE = 12; - - // Go to landing page. - LOCATION_FORMAT_LANDING_PAGE = 13; - - // Map. - LOCATION_FORMAT_MAP = 14; - - // Go to store info. - LOCATION_FORMAT_STORE_INFO = 15; - - // Text. - LOCATION_FORMAT_TEXT = 16; - - // Mobile phone calls. - MOBILE_CALL_TRACKING = 17; - - // Print offer. - OFFER_PRINTS = 18; - - // Other. - OTHER = 19; - - // Product plusbox offer. - PRODUCT_EXTENSION_CLICKS = 20; - - // Shopping - Product - Online. - PRODUCT_LISTING_AD_CLICKS = 21; - - // Sitelink. - SITELINKS = 22; - - // Show nearby locations. - STORE_LOCATOR = 23; - - // Headline. - URL_CLICKS = 25; - - // App store. - VIDEO_APP_STORE_CLICKS = 26; - - // Call-to-Action overlay. - VIDEO_CALL_TO_ACTION_CLICKS = 27; - - // Cards. - VIDEO_CARD_ACTION_HEADLINE_CLICKS = 28; - - // End cap. - VIDEO_END_CAP_CLICKS = 29; - - // Website. - VIDEO_WEBSITE_CLICKS = 30; - - // Visual Sitelinks. - VISUAL_SITELINKS = 31; - - // Wireless Plan. - WIRELESS_PLAN = 32; - - // Shopping - Product - Local. - PRODUCT_LISTING_AD_LOCAL = 33; - - // Shopping - Product - MultiChannel Local. - PRODUCT_LISTING_AD_MULTICHANNEL_LOCAL = 34; - - // Shopping - Product - MultiChannel Online. - PRODUCT_LISTING_AD_MULTICHANNEL_ONLINE = 35; - - // Shopping - Product - Coupon. - PRODUCT_LISTING_ADS_COUPON = 36; - - // Shopping - Product - Sell on Google. - PRODUCT_LISTING_AD_TRANSACTABLE = 37; - - // Shopping - Product - App engagement ad deep link. - PRODUCT_AD_APP_DEEPLINK = 38; - - // Shopping - Showcase - Category. - SHOWCASE_AD_CATEGORY_LINK = 39; - - // Shopping - Showcase - Local storefront. - SHOWCASE_AD_LOCAL_STOREFRONT_LINK = 40; - - // Shopping - Showcase - Online product. - SHOWCASE_AD_ONLINE_PRODUCT_LINK = 42; - - // Shopping - Showcase - Local product. - SHOWCASE_AD_LOCAL_PRODUCT_LINK = 43; - - // Promotion Extension. - PROMOTION_EXTENSION = 44; - - // Ad Headline. - SWIPEABLE_GALLERY_AD_HEADLINE = 45; - - // Swipes. - SWIPEABLE_GALLERY_AD_SWIPES = 46; - - // See More. - SWIPEABLE_GALLERY_AD_SEE_MORE = 47; - - // Sitelink 1. - SWIPEABLE_GALLERY_AD_SITELINK_ONE = 48; - - // Sitelink 2. - SWIPEABLE_GALLERY_AD_SITELINK_TWO = 49; - - // Sitelink 3. - SWIPEABLE_GALLERY_AD_SITELINK_THREE = 50; - - // Sitelink 4. - SWIPEABLE_GALLERY_AD_SITELINK_FOUR = 51; - - // Sitelink 5. - SWIPEABLE_GALLERY_AD_SITELINK_FIVE = 52; - - // Hotel price. - HOTEL_PRICE = 53; - - // Price Extension. - PRICE_EXTENSION = 54; - - // Book on Google hotel room selection. - HOTEL_BOOK_ON_GOOGLE_ROOM_SELECTION = 55; - - // Shopping - Comparison Listing. - SHOPPING_COMPARISON_LISTING = 56; - } - - -} diff --git a/google/ads/googleads/v5/enums/content_label_type.proto b/google/ads/googleads/v5/enums/content_label_type.proto deleted file mode 100644 index d54e80e8e..000000000 --- a/google/ads/googleads/v5/enums/content_label_type.proto +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ContentLabelTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing content label types. - -// Container for enum describing content label types in ContentLabel. -message ContentLabelTypeEnum { - // Enum listing the content label types supported by ContentLabel criterion. - enum ContentLabelType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Sexually suggestive content. - SEXUALLY_SUGGESTIVE = 2; - - // Below the fold placement. - BELOW_THE_FOLD = 3; - - // Parked domain. - PARKED_DOMAIN = 4; - - // Juvenile, gross & bizarre content. - JUVENILE = 6; - - // Profanity & rough language. - PROFANITY = 7; - - // Death & tragedy. - TRAGEDY = 8; - - // Video. - VIDEO = 9; - - // Content rating: G. - VIDEO_RATING_DV_G = 10; - - // Content rating: PG. - VIDEO_RATING_DV_PG = 11; - - // Content rating: T. - VIDEO_RATING_DV_T = 12; - - // Content rating: MA. - VIDEO_RATING_DV_MA = 13; - - // Content rating: not yet rated. - VIDEO_NOT_YET_RATED = 14; - - // Embedded video. - EMBEDDED_VIDEO = 15; - - // Live streaming video. - LIVE_STREAMING_VIDEO = 16; - - // Sensitive social issues. - SOCIAL_ISSUES = 17; - } - - -} diff --git a/google/ads/googleads/v5/enums/conversion_action_category.proto b/google/ads/googleads/v5/enums/conversion_action_category.proto deleted file mode 100644 index 46024328e..000000000 --- a/google/ads/googleads/v5/enums/conversion_action_category.proto +++ /dev/null @@ -1,106 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionCategoryProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum describing the category of conversions that are associated -// with a ConversionAction. -message ConversionActionCategoryEnum { - // The category of conversions that are associated with a ConversionAction. - enum ConversionActionCategory { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Default category. - DEFAULT = 2; - - // User visiting a page. - PAGE_VIEW = 3; - - // Purchase, sales, or "order placed" event. - PURCHASE = 4; - - // Signup user action. - SIGNUP = 5; - - // Lead-generating action. - LEAD = 6; - - // Software download action (as for an app). - DOWNLOAD = 7; - - // The addition of items to a shopping cart or bag on an advertiser site. - ADD_TO_CART = 8; - - // When someone enters the checkout flow on an advertiser site. - BEGIN_CHECKOUT = 9; - - // The start of a paid subscription for a product or service. - SUBSCRIBE_PAID = 10; - - // A call to indicate interest in an advertiser's offering. - PHONE_CALL_LEAD = 11; - - // A lead conversion imported from an external source into Google Ads. - IMPORTED_LEAD = 12; - - // A submission of a form on an advertiser site indicating business - // interest. - SUBMIT_LEAD_FORM = 13; - - // A booking of an appointment with an advertiser's business. - BOOK_APPOINTMENT = 14; - - // A quote or price estimate request. - REQUEST_QUOTE = 15; - - // A search for an advertiser's business location with intention to visit. - GET_DIRECTIONS = 16; - - // A click to an advertiser's partner's site. - OUTBOUND_CLICK = 17; - - // A call, SMS, email, chat or other type of contact to an advertiser. - CONTACT = 18; - - // A website engagement event such as long site time or a Google Analytics - // (GA) Smart Goal. Intended to be used for GA, Firebase, GA Gold goal - // imports. - ENGAGEMENT = 19; - - // A visit to a physical store location. - STORE_VISIT = 20; - - // A sale occurring in a physical store. - STORE_SALE = 21; - } - - -} diff --git a/google/ads/googleads/v5/enums/conversion_action_counting_type.proto b/google/ads/googleads/v5/enums/conversion_action_counting_type.proto deleted file mode 100644 index f08aa19f1..000000000 --- a/google/ads/googleads/v5/enums/conversion_action_counting_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionCountingTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing conversion action counting type. - -// Container for enum describing the conversion deduplication mode for -// conversion optimizer. -message ConversionActionCountingTypeEnum { - // Indicates how conversions for this action will be counted. For more - // information, see https://support.google.com/google-ads/answer/3438531. - enum ConversionActionCountingType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Count only one conversion per click. - ONE_PER_CLICK = 2; - - // Count all conversions per click. - MANY_PER_CLICK = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/conversion_action_status.proto b/google/ads/googleads/v5/enums/conversion_action_status.proto deleted file mode 100644 index 2636777f3..000000000 --- a/google/ads/googleads/v5/enums/conversion_action_status.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing conversion action status. - -// Container for enum describing possible statuses of a conversion action. -message ConversionActionStatusEnum { - // Possible statuses of a conversion action. - enum ConversionActionStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversions will be recorded. - ENABLED = 2; - - // Conversions will not be recorded. - REMOVED = 3; - - // Conversions will not be recorded and the conversion action will not - // appear in the UI. - HIDDEN = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/conversion_action_type.proto b/google/ads/googleads/v5/enums/conversion_action_type.proto deleted file mode 100644 index e1f6228b8..000000000 --- a/google/ads/googleads/v5/enums/conversion_action_type.proto +++ /dev/null @@ -1,173 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing conversion action type. - -// Container for enum describing possible types of a conversion action. -message ConversionActionTypeEnum { - // Possible types of a conversion action. - enum ConversionActionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversions that occur when a user clicks on an ad's call extension. - AD_CALL = 2; - - // Conversions that occur when a user on a mobile device clicks a phone - // number. - CLICK_TO_CALL = 3; - - // Conversions that occur when a user downloads a mobile app from the Google - // Play Store. - GOOGLE_PLAY_DOWNLOAD = 4; - - // Conversions that occur when a user makes a purchase in an app through - // Android billing. - GOOGLE_PLAY_IN_APP_PURCHASE = 5; - - // Call conversions that are tracked by the advertiser and uploaded. - UPLOAD_CALLS = 6; - - // Conversions that are tracked by the advertiser and uploaded with - // attributed clicks. - UPLOAD_CLICKS = 7; - - // Conversions that occur on a webpage. - WEBPAGE = 8; - - // Conversions that occur when a user calls a dynamically-generated phone - // number from an advertiser's website. - WEBSITE_CALL = 9; - - // Store Sales conversion based on first-party or third-party merchant - // data uploads. - // Only customers on the allowlist can use store sales direct upload types. - STORE_SALES_DIRECT_UPLOAD = 10; - - // Store Sales conversion based on first-party or third-party merchant - // data uploads and/or from in-store purchases using cards from payment - // networks. - // Only customers on the allowlist can use store sales types. - STORE_SALES = 11; - - // Android app first open conversions tracked via Firebase. - FIREBASE_ANDROID_FIRST_OPEN = 12; - - // Android app in app purchase conversions tracked via Firebase. - FIREBASE_ANDROID_IN_APP_PURCHASE = 13; - - // Android app custom conversions tracked via Firebase. - FIREBASE_ANDROID_CUSTOM = 14; - - // iOS app first open conversions tracked via Firebase. - FIREBASE_IOS_FIRST_OPEN = 15; - - // iOS app in app purchase conversions tracked via Firebase. - FIREBASE_IOS_IN_APP_PURCHASE = 16; - - // iOS app custom conversions tracked via Firebase. - FIREBASE_IOS_CUSTOM = 17; - - // Android app first open conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_ANDROID_FIRST_OPEN = 18; - - // Android app in app purchase conversions tracked via Third Party App - // Analytics. - THIRD_PARTY_APP_ANALYTICS_ANDROID_IN_APP_PURCHASE = 19; - - // Android app custom conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_ANDROID_CUSTOM = 20; - - // iOS app first open conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_IOS_FIRST_OPEN = 21; - - // iOS app in app purchase conversions tracked via Third Party App - // Analytics. - THIRD_PARTY_APP_ANALYTICS_IOS_IN_APP_PURCHASE = 22; - - // iOS app custom conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_IOS_CUSTOM = 23; - - // Conversions that occur when a user pre-registers a mobile app from the - // Google Play Store. Read only. - ANDROID_APP_PRE_REGISTRATION = 24; - - // Conversions that track all Google Play downloads which aren't tracked - // by an app-specific type. Read only. - ANDROID_INSTALLS_ALL_OTHER_APPS = 25; - - // Floodlight activity that counts the number of times that users have - // visited a particular webpage after seeing or clicking on one of - // an advertiser's ads. Read only. - FLOODLIGHT_ACTION = 26; - - // Floodlight activity that tracks the number of sales made or the number - // of items purchased. Can also capture the total value of each sale. - // Read only. - FLOODLIGHT_TRANSACTION = 27; - - // Conversions that track local actions from Google's products and - // services after interacting with an ad. Read only. - GOOGLE_HOSTED = 28; - - // Conversions reported when a user submits a lead form. Read only. - LEAD_FORM_SUBMIT = 29; - - // Conversions that come from Salesforce. Read only. - SALESFORCE = 30; - - // Conversions imported from Search Ads 360 Floodlight data. Read only. - SEARCH_ADS_360 = 31; - - // Call conversions that occur on Smart campaign Ads without call tracking - // setup, using Smart campaign custom criteria. Read only. - SMART_CAMPAIGN_AD_CLICKS_TO_CALL = 32; - - // The user clicks on a call element within Google Maps. Smart campaign - // only. Read only. - SMART_CAMPAIGN_MAP_CLICKS_TO_CALL = 33; - - // The user requests directions to a business location within Google Maps. - // Smart campaign only. Read only. - SMART_CAMPAIGN_MAP_DIRECTIONS = 34; - - // Call conversions that occur on Smart campaign Ads with call tracking - // setup, using Smart campaign custom criteria. Read only. - SMART_CAMPAIGN_TRACKED_CALLS = 35; - - // Conversions that occur when a user visits an advertiser's retail store. - // Read only. - STORE_VISITS = 36; - } - - -} diff --git a/google/ads/googleads/v5/enums/conversion_adjustment_type.proto b/google/ads/googleads/v5/enums/conversion_adjustment_type.proto deleted file mode 100644 index 41ea1c28e..000000000 --- a/google/ads/googleads/v5/enums/conversion_adjustment_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAdjustmentTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing conversion adjustment type. - -// Container for enum describing conversion adjustment types. -message ConversionAdjustmentTypeEnum { - // The different actions advertisers can take to adjust the conversions that - // they already reported. Retractions negate a conversion. Restatements change - // the value of a conversion. - enum ConversionAdjustmentType { - // Not specified. - UNSPECIFIED = 0; - - // Represents value unknown in this version. - UNKNOWN = 1; - - // Negates a conversion so that its total value and count are both zero. - RETRACTION = 2; - - // Changes the value of a conversion. - RESTATEMENT = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/conversion_attribution_event_type.proto b/google/ads/googleads/v5/enums/conversion_attribution_event_type.proto deleted file mode 100644 index a1ca00746..000000000 --- a/google/ads/googleads/v5/enums/conversion_attribution_event_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAttributionEventTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum indicating the event type the conversion is attributed to. -message ConversionAttributionEventTypeEnum { - // The event type of conversions that are attributed to. - enum ConversionAttributionEventType { - // Not specified. - UNSPECIFIED = 0; - - // Represents value unknown in this version. - UNKNOWN = 1; - - // The conversion is attributed to an impression. - IMPRESSION = 2; - - // The conversion is attributed to an interaction. - INTERACTION = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/conversion_lag_bucket.proto b/google/ads/googleads/v5/enums/conversion_lag_bucket.proto deleted file mode 100644 index 1ef991d43..000000000 --- a/google/ads/googleads/v5/enums/conversion_lag_bucket.proto +++ /dev/null @@ -1,117 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionLagBucketProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum representing the number of days between impression and -// conversion. -message ConversionLagBucketEnum { - // Enum representing the number of days between impression and conversion. - enum ConversionLagBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversion lag bucket from 0 to 1 day. 0 day is included, 1 day is not. - LESS_THAN_ONE_DAY = 2; - - // Conversion lag bucket from 1 to 2 days. 1 day is included, 2 days is not. - ONE_TO_TWO_DAYS = 3; - - // Conversion lag bucket from 2 to 3 days. 2 days is included, - // 3 days is not. - TWO_TO_THREE_DAYS = 4; - - // Conversion lag bucket from 3 to 4 days. 3 days is included, - // 4 days is not. - THREE_TO_FOUR_DAYS = 5; - - // Conversion lag bucket from 4 to 5 days. 4 days is included, - // 5 days is not. - FOUR_TO_FIVE_DAYS = 6; - - // Conversion lag bucket from 5 to 6 days. 5 days is included, - // 6 days is not. - FIVE_TO_SIX_DAYS = 7; - - // Conversion lag bucket from 6 to 7 days. 6 days is included, - // 7 days is not. - SIX_TO_SEVEN_DAYS = 8; - - // Conversion lag bucket from 7 to 8 days. 7 days is included, - // 8 days is not. - SEVEN_TO_EIGHT_DAYS = 9; - - // Conversion lag bucket from 8 to 9 days. 8 days is included, - // 9 days is not. - EIGHT_TO_NINE_DAYS = 10; - - // Conversion lag bucket from 9 to 10 days. 9 days is included, - // 10 days is not. - NINE_TO_TEN_DAYS = 11; - - // Conversion lag bucket from 10 to 11 days. 10 days is included, - // 11 days is not. - TEN_TO_ELEVEN_DAYS = 12; - - // Conversion lag bucket from 11 to 12 days. 11 days is included, - // 12 days is not. - ELEVEN_TO_TWELVE_DAYS = 13; - - // Conversion lag bucket from 12 to 13 days. 12 days is included, - // 13 days is not. - TWELVE_TO_THIRTEEN_DAYS = 14; - - // Conversion lag bucket from 13 to 14 days. 13 days is included, - // 14 days is not. - THIRTEEN_TO_FOURTEEN_DAYS = 15; - - // Conversion lag bucket from 14 to 21 days. 14 days is included, - // 21 days is not. - FOURTEEN_TO_TWENTY_ONE_DAYS = 16; - - // Conversion lag bucket from 21 to 30 days. 21 days is included, - // 30 days is not. - TWENTY_ONE_TO_THIRTY_DAYS = 17; - - // Conversion lag bucket from 30 to 45 days. 30 days is included, - // 45 days is not. - THIRTY_TO_FORTY_FIVE_DAYS = 18; - - // Conversion lag bucket from 45 to 60 days. 45 days is included, - // 60 days is not. - FORTY_FIVE_TO_SIXTY_DAYS = 19; - - // Conversion lag bucket from 60 to 90 days. 60 days is included, - // 90 days is not. - SIXTY_TO_NINETY_DAYS = 20; - } - - -} diff --git a/google/ads/googleads/v5/enums/conversion_or_adjustment_lag_bucket.proto b/google/ads/googleads/v5/enums/conversion_or_adjustment_lag_bucket.proto deleted file mode 100644 index f115ee74b..000000000 --- a/google/ads/googleads/v5/enums/conversion_or_adjustment_lag_bucket.proto +++ /dev/null @@ -1,206 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionOrAdjustmentLagBucketProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum representing the number of days between the impression and -// the conversion or between the impression and adjustments to the conversion. -message ConversionOrAdjustmentLagBucketEnum { - // Enum representing the number of days between the impression and the - // conversion or between the impression and adjustments to the conversion. - enum ConversionOrAdjustmentLagBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversion lag bucket from 0 to 1 day. 0 day is included, 1 day is not. - CONVERSION_LESS_THAN_ONE_DAY = 2; - - // Conversion lag bucket from 1 to 2 days. 1 day is included, 2 days is not. - CONVERSION_ONE_TO_TWO_DAYS = 3; - - // Conversion lag bucket from 2 to 3 days. 2 days is included, - // 3 days is not. - CONVERSION_TWO_TO_THREE_DAYS = 4; - - // Conversion lag bucket from 3 to 4 days. 3 days is included, - // 4 days is not. - CONVERSION_THREE_TO_FOUR_DAYS = 5; - - // Conversion lag bucket from 4 to 5 days. 4 days is included, - // 5 days is not. - CONVERSION_FOUR_TO_FIVE_DAYS = 6; - - // Conversion lag bucket from 5 to 6 days. 5 days is included, - // 6 days is not. - CONVERSION_FIVE_TO_SIX_DAYS = 7; - - // Conversion lag bucket from 6 to 7 days. 6 days is included, - // 7 days is not. - CONVERSION_SIX_TO_SEVEN_DAYS = 8; - - // Conversion lag bucket from 7 to 8 days. 7 days is included, - // 8 days is not. - CONVERSION_SEVEN_TO_EIGHT_DAYS = 9; - - // Conversion lag bucket from 8 to 9 days. 8 days is included, - // 9 days is not. - CONVERSION_EIGHT_TO_NINE_DAYS = 10; - - // Conversion lag bucket from 9 to 10 days. 9 days is included, - // 10 days is not. - CONVERSION_NINE_TO_TEN_DAYS = 11; - - // Conversion lag bucket from 10 to 11 days. 10 days is included, - // 11 days is not. - CONVERSION_TEN_TO_ELEVEN_DAYS = 12; - - // Conversion lag bucket from 11 to 12 days. 11 days is included, - // 12 days is not. - CONVERSION_ELEVEN_TO_TWELVE_DAYS = 13; - - // Conversion lag bucket from 12 to 13 days. 12 days is included, - // 13 days is not. - CONVERSION_TWELVE_TO_THIRTEEN_DAYS = 14; - - // Conversion lag bucket from 13 to 14 days. 13 days is included, - // 14 days is not. - CONVERSION_THIRTEEN_TO_FOURTEEN_DAYS = 15; - - // Conversion lag bucket from 14 to 21 days. 14 days is included, - // 21 days is not. - CONVERSION_FOURTEEN_TO_TWENTY_ONE_DAYS = 16; - - // Conversion lag bucket from 21 to 30 days. 21 days is included, - // 30 days is not. - CONVERSION_TWENTY_ONE_TO_THIRTY_DAYS = 17; - - // Conversion lag bucket from 30 to 45 days. 30 days is included, - // 45 days is not. - CONVERSION_THIRTY_TO_FORTY_FIVE_DAYS = 18; - - // Conversion lag bucket from 45 to 60 days. 45 days is included, - // 60 days is not. - CONVERSION_FORTY_FIVE_TO_SIXTY_DAYS = 19; - - // Conversion lag bucket from 60 to 90 days. 60 days is included, - // 90 days is not. - CONVERSION_SIXTY_TO_NINETY_DAYS = 20; - - // Conversion adjustment lag bucket from 0 to 1 day. 0 day is included, - // 1 day is not. - ADJUSTMENT_LESS_THAN_ONE_DAY = 21; - - // Conversion adjustment lag bucket from 1 to 2 days. 1 day is included, - // 2 days is not. - ADJUSTMENT_ONE_TO_TWO_DAYS = 22; - - // Conversion adjustment lag bucket from 2 to 3 days. 2 days is included, - // 3 days is not. - ADJUSTMENT_TWO_TO_THREE_DAYS = 23; - - // Conversion adjustment lag bucket from 3 to 4 days. 3 days is included, - // 4 days is not. - ADJUSTMENT_THREE_TO_FOUR_DAYS = 24; - - // Conversion adjustment lag bucket from 4 to 5 days. 4 days is included, - // 5 days is not. - ADJUSTMENT_FOUR_TO_FIVE_DAYS = 25; - - // Conversion adjustment lag bucket from 5 to 6 days. 5 days is included, - // 6 days is not. - ADJUSTMENT_FIVE_TO_SIX_DAYS = 26; - - // Conversion adjustment lag bucket from 6 to 7 days. 6 days is included, - // 7 days is not. - ADJUSTMENT_SIX_TO_SEVEN_DAYS = 27; - - // Conversion adjustment lag bucket from 7 to 8 days. 7 days is included, - // 8 days is not. - ADJUSTMENT_SEVEN_TO_EIGHT_DAYS = 28; - - // Conversion adjustment lag bucket from 8 to 9 days. 8 days is included, - // 9 days is not. - ADJUSTMENT_EIGHT_TO_NINE_DAYS = 29; - - // Conversion adjustment lag bucket from 9 to 10 days. 9 days is included, - // 10 days is not. - ADJUSTMENT_NINE_TO_TEN_DAYS = 30; - - // Conversion adjustment lag bucket from 10 to 11 days. 10 days is included, - // 11 days is not. - ADJUSTMENT_TEN_TO_ELEVEN_DAYS = 31; - - // Conversion adjustment lag bucket from 11 to 12 days. 11 days is included, - // 12 days is not. - ADJUSTMENT_ELEVEN_TO_TWELVE_DAYS = 32; - - // Conversion adjustment lag bucket from 12 to 13 days. 12 days is included, - // 13 days is not. - ADJUSTMENT_TWELVE_TO_THIRTEEN_DAYS = 33; - - // Conversion adjustment lag bucket from 13 to 14 days. 13 days is included, - // 14 days is not. - ADJUSTMENT_THIRTEEN_TO_FOURTEEN_DAYS = 34; - - // Conversion adjustment lag bucket from 14 to 21 days. 14 days is included, - // 21 days is not. - ADJUSTMENT_FOURTEEN_TO_TWENTY_ONE_DAYS = 35; - - // Conversion adjustment lag bucket from 21 to 30 days. 21 days is included, - // 30 days is not. - ADJUSTMENT_TWENTY_ONE_TO_THIRTY_DAYS = 36; - - // Conversion adjustment lag bucket from 30 to 45 days. 30 days is included, - // 45 days is not. - ADJUSTMENT_THIRTY_TO_FORTY_FIVE_DAYS = 37; - - // Conversion adjustment lag bucket from 45 to 60 days. 45 days is included, - // 60 days is not. - ADJUSTMENT_FORTY_FIVE_TO_SIXTY_DAYS = 38; - - // Conversion adjustment lag bucket from 60 to 90 days. 60 days is included, - // 90 days is not. - ADJUSTMENT_SIXTY_TO_NINETY_DAYS = 39; - - // Conversion adjustment lag bucket from 90 to 145 days. 90 days is - // included, 145 days is not. - ADJUSTMENT_NINETY_TO_ONE_HUNDRED_AND_FORTY_FIVE_DAYS = 40; - - // Conversion lag bucket UNKNOWN. This is for dates before conversion lag - // bucket was available in Google Ads. - CONVERSION_UNKNOWN = 41; - - // Conversion adjustment lag bucket UNKNOWN. This is for dates before - // conversion adjustment lag bucket was available in Google Ads. - ADJUSTMENT_UNKNOWN = 42; - } - - -} diff --git a/google/ads/googleads/v5/enums/criterion_category_channel_availability_mode.proto b/google/ads/googleads/v5/enums/criterion_category_channel_availability_mode.proto deleted file mode 100644 index ff748a2a7..000000000 --- a/google/ads/googleads/v5/enums/criterion_category_channel_availability_mode.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionCategoryChannelAvailabilityModeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing the criterion category channel availability mode. - -// Describes channel availability mode for a criterion availability - whether -// the availability is meant to include all advertising channels, or a -// particular channel with all its channel subtypes, or a channel with a certain -// subset of channel subtypes. -message CriterionCategoryChannelAvailabilityModeEnum { - // Enum containing the possible CriterionCategoryChannelAvailabilityMode. - enum CriterionCategoryChannelAvailabilityMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The category is available to campaigns of all channel types and subtypes. - ALL_CHANNELS = 2; - - // The category is available to campaigns of a specific channel type, - // including all subtypes under it. - CHANNEL_TYPE_AND_ALL_SUBTYPES = 3; - - // The category is available to campaigns of a specific channel type and - // subtype(s). - CHANNEL_TYPE_AND_SUBSET_SUBTYPES = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/criterion_category_locale_availability_mode.proto b/google/ads/googleads/v5/enums/criterion_category_locale_availability_mode.proto deleted file mode 100644 index a274dbb03..000000000 --- a/google/ads/googleads/v5/enums/criterion_category_locale_availability_mode.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionCategoryLocaleAvailabilityModeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing the criterion category locale availability mode. - -// Describes locale availability mode for a criterion availability - whether -// it's available globally, or a particular country with all languages, or a -// particular language with all countries, or a country-language pair. -message CriterionCategoryLocaleAvailabilityModeEnum { - // Enum containing the possible CriterionCategoryLocaleAvailabilityMode. - enum CriterionCategoryLocaleAvailabilityMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The category is available to campaigns of all locales. - ALL_LOCALES = 2; - - // The category is available to campaigns within a list of countries, - // regardless of language. - COUNTRY_AND_ALL_LANGUAGES = 3; - - // The category is available to campaigns within a list of languages, - // regardless of country. - LANGUAGE_AND_ALL_COUNTRIES = 4; - - // The category is available to campaigns within a list of country, language - // pairs. - COUNTRY_AND_LANGUAGE = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/criterion_system_serving_status.proto b/google/ads/googleads/v5/enums/criterion_system_serving_status.proto deleted file mode 100644 index 3ac21e3d6..000000000 --- a/google/ads/googleads/v5/enums/criterion_system_serving_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionSystemServingStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing approval status for the criterion. - -// Container for enum describing possible criterion system serving statuses. -message CriterionSystemServingStatusEnum { - // Enumerates criterion system serving statuses. - enum CriterionSystemServingStatus { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Eligible. - ELIGIBLE = 2; - - // Low search volume. - RARELY_SERVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/criterion_type.proto b/google/ads/googleads/v5/enums/criterion_type.proto deleted file mode 100644 index 4296169e7..000000000 --- a/google/ads/googleads/v5/enums/criterion_type.proto +++ /dev/null @@ -1,134 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing criteria types. - -// The possible types of a criterion. -message CriterionTypeEnum { - // Enum describing possible criterion types. - enum CriterionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Keyword. e.g. 'mars cruise'. - KEYWORD = 2; - - // Placement, aka Website. e.g. 'www.flowers4sale.com' - PLACEMENT = 3; - - // Mobile application categories to target. - MOBILE_APP_CATEGORY = 4; - - // Mobile applications to target. - MOBILE_APPLICATION = 5; - - // Devices to target. - DEVICE = 6; - - // Locations to target. - LOCATION = 7; - - // Listing groups to target. - LISTING_GROUP = 8; - - // Ad Schedule. - AD_SCHEDULE = 9; - - // Age range. - AGE_RANGE = 10; - - // Gender. - GENDER = 11; - - // Income Range. - INCOME_RANGE = 12; - - // Parental status. - PARENTAL_STATUS = 13; - - // YouTube Video. - YOUTUBE_VIDEO = 14; - - // YouTube Channel. - YOUTUBE_CHANNEL = 15; - - // User list. - USER_LIST = 16; - - // Proximity. - PROXIMITY = 17; - - // A topic target on the display network (e.g. "Pets & Animals"). - TOPIC = 18; - - // Listing scope to target. - LISTING_SCOPE = 19; - - // Language. - LANGUAGE = 20; - - // IpBlock. - IP_BLOCK = 21; - - // Content Label for category exclusion. - CONTENT_LABEL = 22; - - // Carrier. - CARRIER = 23; - - // A category the user is interested in. - USER_INTEREST = 24; - - // Webpage criterion for dynamic search ads. - WEBPAGE = 25; - - // Operating system version. - OPERATING_SYSTEM_VERSION = 26; - - // App payment model. - APP_PAYMENT_MODEL = 27; - - // Mobile device. - MOBILE_DEVICE = 28; - - // Custom affinity. - CUSTOM_AFFINITY = 29; - - // Custom intent. - CUSTOM_INTENT = 30; - - // Location group. - LOCATION_GROUP = 31; - } - - -} diff --git a/google/ads/googleads/v5/enums/custom_interest_member_type.proto b/google/ads/googleads/v5/enums/custom_interest_member_type.proto deleted file mode 100644 index bfcb8d9c4..000000000 --- a/google/ads/googleads/v5/enums/custom_interest_member_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestMemberTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing custom interest member type. - -// The types of custom interest member, either KEYWORD or URL. -message CustomInterestMemberTypeEnum { - // Enum containing possible custom interest member types. - enum CustomInterestMemberType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Custom interest member type KEYWORD. - KEYWORD = 2; - - // Custom interest member type URL. - URL = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/custom_interest_status.proto b/google/ads/googleads/v5/enums/custom_interest_status.proto deleted file mode 100644 index b1f481440..000000000 --- a/google/ads/googleads/v5/enums/custom_interest_status.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing custom interest status. - -// The status of custom interest. -message CustomInterestStatusEnum { - // Enum containing possible custom interest types. - enum CustomInterestStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Enabled status - custom interest is enabled and can be targeted to. - ENABLED = 2; - - // Removed status - custom interest is removed and cannot be used for - // targeting. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/custom_interest_type.proto b/google/ads/googleads/v5/enums/custom_interest_type.proto deleted file mode 100644 index 505232ba0..000000000 --- a/google/ads/googleads/v5/enums/custom_interest_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing custom interest type. - -// The types of custom interest. -message CustomInterestTypeEnum { - // Enum containing possible custom interest types. - enum CustomInterestType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Allows brand advertisers to define custom affinity audience lists. - CUSTOM_AFFINITY = 2; - - // Allows advertisers to define custom intent audience lists. - CUSTOM_INTENT = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/custom_placeholder_field.proto b/google/ads/googleads/v5/enums/custom_placeholder_field.proto deleted file mode 100644 index 4c3622760..000000000 --- a/google/ads/googleads/v5/enums/custom_placeholder_field.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Custom placeholder fields. - -// Values for Custom placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message CustomPlaceholderFieldEnum { - // Possible values for Custom placeholder fields. - enum CustomPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Combination ID and ID2 must be unique per - // offer. - ID = 2; - - // Data Type: STRING. Combination ID and ID2 must be unique per offer. - ID2 = 3; - - // Data Type: STRING. Required. Main headline with product name to be shown - // in dynamic ad. - ITEM_TITLE = 4; - - // Data Type: STRING. Optional text to be shown in the image ad. - ITEM_SUBTITLE = 5; - - // Data Type: STRING. Optional description of the product to be shown in the - // ad. - ITEM_DESCRIPTION = 6; - - // Data Type: STRING. Full address of your offer or service, including - // postal code. This will be used to identify the closest product to the - // user when there are multiple offers in the feed that are relevant to the - // user. - ITEM_ADDRESS = 7; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - PRICE = 8; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 9; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 10; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 11; - - // Data Type: URL. Image to be displayed in the ad. Highly recommended for - // image ads. - IMAGE_URL = 12; - - // Data Type: STRING. Used as a recommendation engine signal to serve items - // in the same category. - ITEM_CATEGORY = 13; - - // Data Type: URL_LIST. Final URLs for the ad when using Upgraded - // URLs. User will be redirected to these URLs when they click on an ad, or - // when they click on a specific product for ads that have multiple - // products. - FINAL_URLS = 14; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 15; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 16; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 17; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 18; - - // Data Type: STRING_LIST. List of recommended IDs to show together with - // this item. - SIMILAR_IDS = 19; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 20; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 21; - } - - -} diff --git a/google/ads/googleads/v5/enums/customer_match_upload_key_type.proto b/google/ads/googleads/v5/enums/customer_match_upload_key_type.proto deleted file mode 100644 index ac594f902..000000000 --- a/google/ads/googleads/v5/enums/customer_match_upload_key_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomerMatchUploadKeyTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Indicates what type of data are the user list's members matched from. -message CustomerMatchUploadKeyTypeEnum { - // Enum describing possible customer match upload key types. - enum CustomerMatchUploadKeyType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Members are matched from customer info such as email address, phone - // number or physical address. - CONTACT_INFO = 2; - - // Members are matched from a user id generated and assigned by the - // advertiser. - CRM_ID = 3; - - // Members are matched from mobile advertising ids. - MOBILE_ADVERTISING_ID = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/customer_pay_per_conversion_eligibility_failure_reason.proto b/google/ads/googleads/v5/enums/customer_pay_per_conversion_eligibility_failure_reason.proto deleted file mode 100644 index a7dd29382..000000000 --- a/google/ads/googleads/v5/enums/customer_pay_per_conversion_eligibility_failure_reason.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomerPayPerConversionEligibilityFailureReasonProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing pay per conversion eligibility failure reasons. - -// Container for enum describing reasons why a customer is not eligible to use -// PaymentMode.CONVERSIONS. -message CustomerPayPerConversionEligibilityFailureReasonEnum { - // Enum describing possible reasons a customer is not eligible to use - // PaymentMode.CONVERSIONS. - enum CustomerPayPerConversionEligibilityFailureReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Customer does not have enough conversions. - NOT_ENOUGH_CONVERSIONS = 2; - - // Customer's conversion lag is too high. - CONVERSION_LAG_TOO_HIGH = 3; - - // Customer uses shared budgets. - HAS_CAMPAIGN_WITH_SHARED_BUDGET = 4; - - // Customer has conversions with ConversionActionType.UPLOAD_CLICKS. - HAS_UPLOAD_CLICKS_CONVERSION = 5; - - // Customer's average daily spend is too high. - AVERAGE_DAILY_SPEND_TOO_HIGH = 6; - - // Customer's eligibility has not yet been calculated by the Google Ads - // backend. Check back soon. - ANALYSIS_NOT_COMPLETE = 7; - - // Customer is not eligible due to other reasons. - OTHER = 8; - } - - -} diff --git a/google/ads/googleads/v5/enums/data_driven_model_status.proto b/google/ads/googleads/v5/enums/data_driven_model_status.proto deleted file mode 100644 index 3fe12312d..000000000 --- a/google/ads/googleads/v5/enums/data_driven_model_status.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DataDrivenModelStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing data-driven model status. - -// Container for enum indicating data driven model status. -message DataDrivenModelStatusEnum { - // Enumerates data driven model statuses. - enum DataDrivenModelStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The data driven model is available. - AVAILABLE = 2; - - // The data driven model is stale. It hasn't been updated for at least 7 - // days. It is still being used, but will become expired if it does not get - // updated for 30 days. - STALE = 3; - - // The data driven model expired. It hasn't been updated for at least 30 - // days and cannot be used. Most commonly this is because there hasn't been - // the required number of events in a recent 30-day period. - EXPIRED = 4; - - // The data driven model has never been generated. Most commonly this is - // because there has never been the required number of events in any 30-day - // period. - NEVER_GENERATED = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/day_of_week.proto b/google/ads/googleads/v5/enums/day_of_week.proto deleted file mode 100644 index 410b6ada2..000000000 --- a/google/ads/googleads/v5/enums/day_of_week.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DayOfWeekProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing days of week. - -// Container for enumeration of days of the week, e.g., "Monday". -message DayOfWeekEnum { - // Enumerates days of the week, e.g., "Monday". - enum DayOfWeek { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Monday. - MONDAY = 2; - - // Tuesday. - TUESDAY = 3; - - // Wednesday. - WEDNESDAY = 4; - - // Thursday. - THURSDAY = 5; - - // Friday. - FRIDAY = 6; - - // Saturday. - SATURDAY = 7; - - // Sunday. - SUNDAY = 8; - } - - -} diff --git a/google/ads/googleads/v5/enums/device.proto b/google/ads/googleads/v5/enums/device.proto deleted file mode 100644 index d7d0a9280..000000000 --- a/google/ads/googleads/v5/enums/device.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DeviceProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing devices. - -// Container for enumeration of Google Ads devices available for targeting. -message DeviceEnum { - // Enumerates Google Ads devices available for targeting. - enum Device { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Mobile devices with full browsers. - MOBILE = 2; - - // Tablets with full browsers. - TABLET = 3; - - // Computers. - DESKTOP = 4; - - // Smart TVs and game consoles. - CONNECTED_TV = 6; - - // Other device types. - OTHER = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/display_ad_format_setting.proto b/google/ads/googleads/v5/enums/display_ad_format_setting.proto deleted file mode 100644 index a623c0f8d..000000000 --- a/google/ads/googleads/v5/enums/display_ad_format_setting.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DisplayAdFormatSettingProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing display ad format settings. - -// Container for display ad format settings. -message DisplayAdFormatSettingEnum { - // Enumerates display ad format settings. - enum DisplayAdFormatSetting { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Text, image and native formats. - ALL_FORMATS = 2; - - // Text and image formats. - NON_NATIVE = 3; - - // Native format, i.e. the format rendering is controlled by the publisher - // and not by Google. - NATIVE = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/display_upload_product_type.proto b/google/ads/googleads/v5/enums/display_upload_product_type.proto deleted file mode 100644 index 9a5a967e9..000000000 --- a/google/ads/googleads/v5/enums/display_upload_product_type.proto +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DisplayUploadProductTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing display upload product types. - -// Container for display upload product types. Product types that have the word -// "DYNAMIC" in them must be associated with a campaign that has a dynamic -// remarketing feed. See https://support.google.com/google-ads/answer/6053288 -// for more info about dynamic remarketing. Other product types are regarded -// as "static" and do not have this requirement. -message DisplayUploadProductTypeEnum { - // Enumerates display upload product types. - enum DisplayUploadProductType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // HTML5 upload ad. This product type requires the upload_media_bundle - // field in DisplayUploadAdInfo to be set. - HTML5_UPLOAD_AD = 2; - - // Dynamic HTML5 education ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in an education campaign. - DYNAMIC_HTML5_EDUCATION_AD = 3; - - // Dynamic HTML5 flight ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a flight campaign. - DYNAMIC_HTML5_FLIGHT_AD = 4; - - // Dynamic HTML5 hotel and rental ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a hotel campaign. - DYNAMIC_HTML5_HOTEL_RENTAL_AD = 5; - - // Dynamic HTML5 job ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a job campaign. - DYNAMIC_HTML5_JOB_AD = 6; - - // Dynamic HTML5 local ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a local campaign. - DYNAMIC_HTML5_LOCAL_AD = 7; - - // Dynamic HTML5 real estate ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a real estate campaign. - DYNAMIC_HTML5_REAL_ESTATE_AD = 8; - - // Dynamic HTML5 custom ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a custom campaign. - DYNAMIC_HTML5_CUSTOM_AD = 9; - - // Dynamic HTML5 travel ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a travel campaign. - DYNAMIC_HTML5_TRAVEL_AD = 10; - - // Dynamic HTML5 hotel ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a hotel campaign. - DYNAMIC_HTML5_HOTEL_AD = 11; - } - - -} diff --git a/google/ads/googleads/v5/enums/distance_bucket.proto b/google/ads/googleads/v5/enums/distance_bucket.proto deleted file mode 100644 index 00b319289..000000000 --- a/google/ads/googleads/v5/enums/distance_bucket.proto +++ /dev/null @@ -1,127 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DistanceBucketProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing distance buckets. - -// Container for distance buckets of a user’s distance from an advertiser’s -// location extension. -message DistanceBucketEnum { - // The distance bucket for a user’s distance from an advertiser’s location - // extension. - enum DistanceBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // User was within 700m of the location. - WITHIN_700M = 2; - - // User was within 1KM of the location. - WITHIN_1KM = 3; - - // User was within 5KM of the location. - WITHIN_5KM = 4; - - // User was within 10KM of the location. - WITHIN_10KM = 5; - - // User was within 15KM of the location. - WITHIN_15KM = 6; - - // User was within 20KM of the location. - WITHIN_20KM = 7; - - // User was within 25KM of the location. - WITHIN_25KM = 8; - - // User was within 30KM of the location. - WITHIN_30KM = 9; - - // User was within 35KM of the location. - WITHIN_35KM = 10; - - // User was within 40KM of the location. - WITHIN_40KM = 11; - - // User was within 45KM of the location. - WITHIN_45KM = 12; - - // User was within 50KM of the location. - WITHIN_50KM = 13; - - // User was within 55KM of the location. - WITHIN_55KM = 14; - - // User was within 60KM of the location. - WITHIN_60KM = 15; - - // User was within 65KM of the location. - WITHIN_65KM = 16; - - // User was beyond 65KM of the location. - BEYOND_65KM = 17; - - // User was within 0.7 miles of the location. - WITHIN_0_7MILES = 18; - - // User was within 1 mile of the location. - WITHIN_1MILE = 19; - - // User was within 5 miles of the location. - WITHIN_5MILES = 20; - - // User was within 10 miles of the location. - WITHIN_10MILES = 21; - - // User was within 15 miles of the location. - WITHIN_15MILES = 22; - - // User was within 20 miles of the location. - WITHIN_20MILES = 23; - - // User was within 25 miles of the location. - WITHIN_25MILES = 24; - - // User was within 30 miles of the location. - WITHIN_30MILES = 25; - - // User was within 35 miles of the location. - WITHIN_35MILES = 26; - - // User was within 40 miles of the location. - WITHIN_40MILES = 27; - - // User was beyond 40 miles of the location. - BEYOND_40MILES = 28; - } - - -} diff --git a/google/ads/googleads/v5/enums/dsa_page_feed_criterion_field.proto b/google/ads/googleads/v5/enums/dsa_page_feed_criterion_field.proto deleted file mode 100644 index a90350837..000000000 --- a/google/ads/googleads/v5/enums/dsa_page_feed_criterion_field.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DsaPageFeedCriterionFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Dynamic Search Ad Page Feed criterion fields. - -// Values for Dynamic Search Ad Page Feed criterion fields. -message DsaPageFeedCriterionFieldEnum { - // Possible values for Dynamic Search Ad Page Feed criterion fields. - enum DsaPageFeedCriterionField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: URL or URL_LIST. URL of the web page you want to target. - PAGE_URL = 2; - - // Data Type: STRING_LIST. The labels that will help you target ads within - // your page feed. - LABEL = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/education_placeholder_field.proto b/google/ads/googleads/v5/enums/education_placeholder_field.proto deleted file mode 100644 index 990fe6e76..000000000 --- a/google/ads/googleads/v5/enums/education_placeholder_field.proto +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "EducationPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Education placeholder fields. - -// Values for Education placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message EducationPlaceholderFieldEnum { - // Possible values for Education placeholder fields. - enum EducationPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Combination of PROGRAM ID and LOCATION ID - // must be unique per offer. - PROGRAM_ID = 2; - - // Data Type: STRING. Combination of PROGRAM ID and LOCATION ID must be - // unique per offer. - LOCATION_ID = 3; - - // Data Type: STRING. Required. Main headline with program name to be shown - // in dynamic ad. - PROGRAM_NAME = 4; - - // Data Type: STRING. Area of study that can be shown in dynamic ad. - AREA_OF_STUDY = 5; - - // Data Type: STRING. Description of program that can be shown in dynamic - // ad. - PROGRAM_DESCRIPTION = 6; - - // Data Type: STRING. Name of school that can be shown in dynamic ad. - SCHOOL_NAME = 7; - - // Data Type: STRING. Complete school address, including postal code. - ADDRESS = 8; - - // Data Type: URL. Image to be displayed in ads. - THUMBNAIL_IMAGE_URL = 9; - - // Data Type: URL. Alternative hosted file of image to be used in the ad. - ALTERNATIVE_THUMBNAIL_IMAGE_URL = 10; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific program and its location). - FINAL_URLS = 11; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 12; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 13; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 14; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 15; - - // Data Type: STRING_LIST. List of recommended program IDs to show together - // with this item. - SIMILAR_PROGRAM_IDS = 16; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 17; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 18; - } - - -} diff --git a/google/ads/googleads/v5/enums/extension_setting_device.proto b/google/ads/googleads/v5/enums/extension_setting_device.proto deleted file mode 100644 index 66650b570..000000000 --- a/google/ads/googleads/v5/enums/extension_setting_device.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionSettingDeviceProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing extension setting device type. - -// Container for enum describing extension setting device types. -message ExtensionSettingDeviceEnum { - // Possible device types for an extension setting. - enum ExtensionSettingDevice { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Mobile. The extensions in the extension setting will only serve on - // mobile devices. - MOBILE = 2; - - // Desktop. The extensions in the extension setting will only serve on - // desktop devices. - DESKTOP = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/extension_type.proto b/google/ads/googleads/v5/enums/extension_type.proto deleted file mode 100644 index 54ccaaa8a..000000000 --- a/google/ads/googleads/v5/enums/extension_type.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing extension type. - -// Container for enum describing possible data types for an extension in an -// extension setting. -message ExtensionTypeEnum { - // Possible data types for an extension in an extension setting. - enum ExtensionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // None. - NONE = 2; - - // App. - APP = 3; - - // Call. - CALL = 4; - - // Callout. - CALLOUT = 5; - - // Message. - MESSAGE = 6; - - // Price. - PRICE = 7; - - // Promotion. - PROMOTION = 8; - - // Sitelink. - SITELINK = 10; - - // Structured snippet. - STRUCTURED_SNIPPET = 11; - - // Location. - LOCATION = 12; - - // Affiliate location. - AFFILIATE_LOCATION = 13; - - // Hotel callout - HOTEL_CALLOUT = 15; - } - - -} diff --git a/google/ads/googleads/v5/enums/external_conversion_source.proto b/google/ads/googleads/v5/enums/external_conversion_source.proto deleted file mode 100644 index 2bfa2ee51..000000000 --- a/google/ads/googleads/v5/enums/external_conversion_source.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ExternalConversionSourceProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum describing the external conversion source that is -// associated with a ConversionAction. -message ExternalConversionSourceEnum { - // The external conversion source that is associated with a ConversionAction. - enum ExternalConversionSource { - // Not specified. - UNSPECIFIED = 0; - - // Represents value unknown in this version. - UNKNOWN = 1; - - // Conversion that occurs when a user navigates to a particular webpage - // after viewing an ad; Displayed in Google Ads UI as 'Website'. - WEBPAGE = 2; - - // Conversion that comes from linked Google Analytics goal or transaction; - // Displayed in Google Ads UI as 'Analytics'. - ANALYTICS = 3; - - // Website conversion that is uploaded through ConversionUploadService; - // Displayed in Google Ads UI as 'Import from clicks'. - UPLOAD = 4; - - // Conversion that occurs when a user clicks on a call extension directly on - // an ad; Displayed in Google Ads UI as 'Calls from ads'. - AD_CALL_METRICS = 5; - - // Conversion that occurs when a user calls a dynamically-generated phone - // number (by installed javascript) from an advertiser's website after - // clicking on an ad; Displayed in Google Ads UI as 'Calls from website'. - WEBSITE_CALL_METRICS = 6; - - // Conversion that occurs when a user visits an advertiser's retail store - // after clicking on a Google ad; - // Displayed in Google Ads UI as 'Store visits'. - STORE_VISITS = 7; - - // Conversion that occurs when a user takes an in-app action such as a - // purchase in an Android app; - // Displayed in Google Ads UI as 'Android in-app action'. - ANDROID_IN_APP = 8; - - // Conversion that occurs when a user takes an in-app action such as a - // purchase in an iOS app; - // Displayed in Google Ads UI as 'iOS in-app action'. - IOS_IN_APP = 9; - - // Conversion that occurs when a user opens an iOS app for the first time; - // Displayed in Google Ads UI as 'iOS app install (first open)'. - IOS_FIRST_OPEN = 10; - - // Legacy app conversions that do not have an AppPlatform provided; - // Displayed in Google Ads UI as 'Mobile app'. - APP_UNSPECIFIED = 11; - - // Conversion that occurs when a user opens an Android app for the first - // time; Displayed in Google Ads UI as 'Android app install (first open)'. - ANDROID_FIRST_OPEN = 12; - - // Call conversion that is uploaded through ConversionUploadService; - // Displayed in Google Ads UI as 'Import from calls'. - UPLOAD_CALLS = 13; - - // Conversion that comes from a linked Firebase event; - // Displayed in Google Ads UI as 'Firebase'. - FIREBASE = 14; - - // Conversion that occurs when a user clicks on a mobile phone number; - // Displayed in Google Ads UI as 'Phone number clicks'. - CLICK_TO_CALL = 15; - - // Conversion that comes from Salesforce; - // Displayed in Google Ads UI as 'Salesforce.com'. - SALESFORCE = 16; - - // Conversion that comes from in-store purchases recorded by CRM; - // Displayed in Google Ads UI as 'Store sales (data partner)'. - STORE_SALES_CRM = 17; - - // Conversion that comes from in-store purchases from payment network; - // Displayed in Google Ads UI as 'Store sales (payment network)'. - STORE_SALES_PAYMENT_NETWORK = 18; - - // Codeless Google Play conversion; - // Displayed in Google Ads UI as 'Google Play'. - GOOGLE_PLAY = 19; - - // Conversion that comes from a linked third-party app analytics event; - // Displayed in Google Ads UI as 'Third-party app analytics'. - THIRD_PARTY_APP_ANALYTICS = 20; - - // Conversion that is controlled by Google Attribution. - GOOGLE_ATTRIBUTION = 21; - - // Store Sales conversion based on first-party or third-party merchant data - // uploads. Displayed in Google Ads UI as 'Store sales (direct upload)'. - STORE_SALES_DIRECT_UPLOAD = 23; - - // Store Sales conversion based on first-party or third-party merchant - // data uploads and/or from in-store purchases using cards from payment - // networks. Displayed in Google Ads UI as 'Store sales'. - STORE_SALES = 24; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_attribute_type.proto b/google/ads/googleads/v5/enums/feed_attribute_type.proto deleted file mode 100644 index a159cf982..000000000 --- a/google/ads/googleads/v5/enums/feed_attribute_type.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedAttributeTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed attribute type. - -// Container for enum describing possible data types for a feed attribute. -message FeedAttributeTypeEnum { - // Possible data types for a feed attribute. - enum FeedAttributeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Int64. - INT64 = 2; - - // Double. - DOUBLE = 3; - - // String. - STRING = 4; - - // Boolean. - BOOLEAN = 5; - - // Url. - URL = 6; - - // Datetime. - DATE_TIME = 7; - - // Int64 list. - INT64_LIST = 8; - - // Double (8 bytes) list. - DOUBLE_LIST = 9; - - // String list. - STRING_LIST = 10; - - // Boolean list. - BOOLEAN_LIST = 11; - - // Url list. - URL_LIST = 12; - - // Datetime list. - DATE_TIME_LIST = 13; - - // Price. - PRICE = 14; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_item_quality_approval_status.proto b/google/ads/googleads/v5/enums/feed_item_quality_approval_status.proto deleted file mode 100644 index a2bf290b6..000000000 --- a/google/ads/googleads/v5/enums/feed_item_quality_approval_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemQualityApprovalStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed item quality evaluation approval statuses. - -// Container for enum describing possible quality evaluation approval statuses -// of a feed item. -message FeedItemQualityApprovalStatusEnum { - // The possible quality evaluation approval statuses of a feed item. - enum FeedItemQualityApprovalStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Meets all quality expectations. - APPROVED = 2; - - // Does not meet some quality expectations. The specific reason is found in - // the quality_disapproval_reasons field. - DISAPPROVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_item_quality_disapproval_reason.proto b/google/ads/googleads/v5/enums/feed_item_quality_disapproval_reason.proto deleted file mode 100644 index 7b6bd5cb0..000000000 --- a/google/ads/googleads/v5/enums/feed_item_quality_disapproval_reason.proto +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemQualityDisapprovalReasonProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed item quality disapproval reasons. - -// Container for enum describing possible quality evaluation disapproval reasons -// of a feed item. -message FeedItemQualityDisapprovalReasonEnum { - // The possible quality evaluation disapproval reasons of a feed item. - enum FeedItemQualityDisapprovalReason { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Price contains repetitive headers. - PRICE_TABLE_REPETITIVE_HEADERS = 2; - - // Price contains repetitive description. - PRICE_TABLE_REPETITIVE_DESCRIPTION = 3; - - // Price contains inconsistent items. - PRICE_TABLE_INCONSISTENT_ROWS = 4; - - // Price contains qualifiers in description. - PRICE_DESCRIPTION_HAS_PRICE_QUALIFIERS = 5; - - // Price contains an unsupported language. - PRICE_UNSUPPORTED_LANGUAGE = 6; - - // Price item header is not relevant to the price type. - PRICE_TABLE_ROW_HEADER_TABLE_TYPE_MISMATCH = 7; - - // Price item header has promotional text. - PRICE_TABLE_ROW_HEADER_HAS_PROMOTIONAL_TEXT = 8; - - // Price item description is not relevant to the item header. - PRICE_TABLE_ROW_DESCRIPTION_NOT_RELEVANT = 9; - - // Price item description contains promotional text. - PRICE_TABLE_ROW_DESCRIPTION_HAS_PROMOTIONAL_TEXT = 10; - - // Price item header and description are repetitive. - PRICE_TABLE_ROW_HEADER_DESCRIPTION_REPETITIVE = 11; - - // Price item is in a foreign language, nonsense, or can't be rated. - PRICE_TABLE_ROW_UNRATEABLE = 12; - - // Price item price is invalid or inaccurate. - PRICE_TABLE_ROW_PRICE_INVALID = 13; - - // Price item URL is invalid or irrelevant. - PRICE_TABLE_ROW_URL_INVALID = 14; - - // Price item header or description has price. - PRICE_HEADER_OR_DESCRIPTION_HAS_PRICE = 15; - - // Structured snippet values do not match the header. - STRUCTURED_SNIPPETS_HEADER_POLICY_VIOLATED = 16; - - // Structured snippet values are repeated. - STRUCTURED_SNIPPETS_REPEATED_VALUES = 17; - - // Structured snippet values violate editorial guidelines like punctuation. - STRUCTURED_SNIPPETS_EDITORIAL_GUIDELINES = 18; - - // Structured snippet contain promotional text. - STRUCTURED_SNIPPETS_HAS_PROMOTIONAL_TEXT = 19; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_item_status.proto b/google/ads/googleads/v5/enums/feed_item_status.proto deleted file mode 100644 index 6759958c2..000000000 --- a/google/ads/googleads/v5/enums/feed_item_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed item status. - -// Container for enum describing possible statuses of a feed item. -message FeedItemStatusEnum { - // Possible statuses of a feed item. - enum FeedItemStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item is enabled. - ENABLED = 2; - - // Feed item has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_item_target_device.proto b/google/ads/googleads/v5/enums/feed_item_target_device.proto deleted file mode 100644 index 732e78265..000000000 --- a/google/ads/googleads/v5/enums/feed_item_target_device.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetDeviceProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed item target device type. - -// Container for enum describing possible data types for a feed item target -// device. -message FeedItemTargetDeviceEnum { - // Possible data types for a feed item target device. - enum FeedItemTargetDevice { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile. - MOBILE = 2; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_item_target_status.proto b/google/ads/googleads/v5/enums/feed_item_target_status.proto deleted file mode 100644 index 719fa8484..000000000 --- a/google/ads/googleads/v5/enums/feed_item_target_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed item target status. - -// Container for enum describing possible statuses of a feed item target. -message FeedItemTargetStatusEnum { - // Possible statuses of a feed item target. - enum FeedItemTargetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item target is enabled. - ENABLED = 2; - - // Feed item target has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_item_target_type.proto b/google/ads/googleads/v5/enums/feed_item_target_type.proto deleted file mode 100644 index 8f260ccb3..000000000 --- a/google/ads/googleads/v5/enums/feed_item_target_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed item target type status. - -// Container for enum describing possible types of a feed item target. -message FeedItemTargetTypeEnum { - // Possible type of a feed item target. - enum FeedItemTargetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item targets a campaign. - CAMPAIGN = 2; - - // Feed item targets an ad group. - AD_GROUP = 3; - - // Feed item targets a criterion. - CRITERION = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_item_validation_status.proto b/google/ads/googleads/v5/enums/feed_item_validation_status.proto deleted file mode 100644 index 5102a1cf8..000000000 --- a/google/ads/googleads/v5/enums/feed_item_validation_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemValidationStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed item validation statuses. - -// Container for enum describing possible validation statuses of a feed item. -message FeedItemValidationStatusEnum { - // The possible validation statuses of a feed item. - enum FeedItemValidationStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Validation pending. - PENDING = 2; - - // An error was found. - INVALID = 3; - - // Feed item is semantically well-formed. - VALID = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_link_status.proto b/google/ads/googleads/v5/enums/feed_link_status.proto deleted file mode 100644 index 5bc3b89c4..000000000 --- a/google/ads/googleads/v5/enums/feed_link_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedLinkStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing status of a feed link. - -// Container for an enum describing possible statuses of a feed link. -message FeedLinkStatusEnum { - // Possible statuses of a feed link. - enum FeedLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed link is enabled. - ENABLED = 2; - - // Feed link has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_mapping_criterion_type.proto b/google/ads/googleads/v5/enums/feed_mapping_criterion_type.proto deleted file mode 100644 index 7c238be47..000000000 --- a/google/ads/googleads/v5/enums/feed_mapping_criterion_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingCriterionTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing criterion types for feed mappings. - -// Container for enum describing possible criterion types for a feed mapping. -message FeedMappingCriterionTypeEnum { - // Possible placeholder types for a feed mapping. - enum FeedMappingCriterionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Allows campaign targeting at locations within a location feed. - LOCATION_EXTENSION_TARGETING = 4; - - // Allows url targeting for your dynamic search ads within a page feed. - DSA_PAGE_FEED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_mapping_status.proto b/google/ads/googleads/v5/enums/feed_mapping_status.proto deleted file mode 100644 index d084ca03b..000000000 --- a/google/ads/googleads/v5/enums/feed_mapping_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed mapping status. - -// Container for enum describing possible statuses of a feed mapping. -message FeedMappingStatusEnum { - // Possible statuses of a feed mapping. - enum FeedMappingStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed mapping is enabled. - ENABLED = 2; - - // Feed mapping has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_origin.proto b/google/ads/googleads/v5/enums/feed_origin.proto deleted file mode 100644 index 8e30b4e00..000000000 --- a/google/ads/googleads/v5/enums/feed_origin.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedOriginProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed origin. - -// Container for enum describing possible values for a feed origin. -message FeedOriginEnum { - // Possible values for a feed origin. - enum FeedOrigin { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The FeedAttributes for this Feed are managed by the - // user. Users can add FeedAttributes to this Feed. - USER = 2; - - // The FeedAttributes for an GOOGLE Feed are created by Google. A feed of - // this type is maintained by Google and will have the correct attributes - // for the placeholder type of the feed. - GOOGLE = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/feed_status.proto b/google/ads/googleads/v5/enums/feed_status.proto deleted file mode 100644 index 819ae64ba..000000000 --- a/google/ads/googleads/v5/enums/feed_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed status. - -// Container for enum describing possible statuses of a feed. -message FeedStatusEnum { - // Possible statuses of a feed. - enum FeedStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed is enabled. - ENABLED = 2; - - // Feed has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/flight_placeholder_field.proto b/google/ads/googleads/v5/enums/flight_placeholder_field.proto deleted file mode 100644 index bd328d8e9..000000000 --- a/google/ads/googleads/v5/enums/flight_placeholder_field.proto +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FlightsPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Flight placeholder fields. - -// Values for Flight placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message FlightPlaceholderFieldEnum { - // Possible values for Flight placeholder fields. - enum FlightPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Destination id. Example: PAR, LON. - // For feed items that only have destination id, destination id must be a - // unique key. For feed items that have both destination id and origin id, - // then the combination must be a unique key. - DESTINATION_ID = 2; - - // Data Type: STRING. Origin id. Example: PAR, LON. - // Optional. Combination of destination id and origin id must be unique per - // offer. - ORIGIN_ID = 3; - - // Data Type: STRING. Required. Main headline with product name to be shown - // in dynamic ad. - FLIGHT_DESCRIPTION = 4; - - // Data Type: STRING. Shorter names are recommended. - ORIGIN_NAME = 5; - - // Data Type: STRING. Shorter names are recommended. - DESTINATION_NAME = 6; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - FLIGHT_PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - FLIGHT_SALE_PRICE = 9; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 10; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 11; - - // Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded - // URLs. User will be redirected to these URLs when they click on an ad, or - // when they click on a specific flight for ads that show multiple - // flights. - FINAL_URLS = 12; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 13; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 14; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 15; - - // Data Type: STRING_LIST. List of recommended destination IDs to show - // together with this item. - SIMILAR_DESTINATION_IDS = 16; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 17; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 18; - } - - -} diff --git a/google/ads/googleads/v5/enums/frequency_cap_event_type.proto b/google/ads/googleads/v5/enums/frequency_cap_event_type.proto deleted file mode 100644 index 989e6c541..000000000 --- a/google/ads/googleads/v5/enums/frequency_cap_event_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapEventTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing frequency caps. - -// Container for enum describing the type of event that the cap applies to. -message FrequencyCapEventTypeEnum { - // The type of event that the cap applies to (e.g. impression). - enum FrequencyCapEventType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The cap applies on ad impressions. - IMPRESSION = 2; - - // The cap applies on video ad views. - VIDEO_VIEW = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/frequency_cap_level.proto b/google/ads/googleads/v5/enums/frequency_cap_level.proto deleted file mode 100644 index bcd68fc41..000000000 --- a/google/ads/googleads/v5/enums/frequency_cap_level.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapLevelProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing frequency caps. - -// Container for enum describing the level on which the cap is to be applied. -message FrequencyCapLevelEnum { - // The level on which the cap is to be applied (e.g ad group ad, ad group). - // Cap is applied to all the resources of this level. - enum FrequencyCapLevel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The cap is applied at the ad group ad level. - AD_GROUP_AD = 2; - - // The cap is applied at the ad group level. - AD_GROUP = 3; - - // The cap is applied at the campaign level. - CAMPAIGN = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/frequency_cap_time_unit.proto b/google/ads/googleads/v5/enums/frequency_cap_time_unit.proto deleted file mode 100644 index dd50faa3f..000000000 --- a/google/ads/googleads/v5/enums/frequency_cap_time_unit.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapTimeUnitProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing frequency caps. - -// Container for enum describing the unit of time the cap is defined at. -message FrequencyCapTimeUnitEnum { - // Unit of time the cap is defined at (e.g. day, week). - enum FrequencyCapTimeUnit { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The cap would define limit per one day. - DAY = 2; - - // The cap would define limit per one week. - WEEK = 3; - - // The cap would define limit per one month. - MONTH = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/gender_type.proto b/google/ads/googleads/v5/enums/gender_type.proto deleted file mode 100644 index 01402b4da..000000000 --- a/google/ads/googleads/v5/enums/gender_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GenderTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing gender types. - -// Container for enum describing the type of demographic genders. -message GenderTypeEnum { - // The type of demographic genders (e.g. female). - enum GenderType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Male. - MALE = 10; - - // Female. - FEMALE = 11; - - // Undetermined gender. - UNDETERMINED = 20; - } - - -} diff --git a/google/ads/googleads/v5/enums/geo_target_constant_status.proto b/google/ads/googleads/v5/enums/geo_target_constant_status.proto deleted file mode 100644 index ce5095118..000000000 --- a/google/ads/googleads/v5/enums/geo_target_constant_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing geo target constant statuses. - -// Container for describing the status of a geo target constant. -message GeoTargetConstantStatusEnum { - // The possible statuses of a geo target constant. - enum GeoTargetConstantStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The geo target constant is valid. - ENABLED = 2; - - // The geo target constant is obsolete and will be removed. - REMOVAL_PLANNED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/geo_targeting_restriction.proto b/google/ads/googleads/v5/enums/geo_targeting_restriction.proto deleted file mode 100644 index f9492c312..000000000 --- a/google/ads/googleads/v5/enums/geo_targeting_restriction.proto +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetingRestrictionProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing GeoTargetingRestriction. - -// Message describing feed item geo targeting restriction. -message GeoTargetingRestrictionEnum { - // A restriction used to determine if the request context's - // geo should be matched. - enum GeoTargetingRestriction { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Indicates that request context should match the physical location of - // the user. - LOCATION_OF_PRESENCE = 2; - } - - -} diff --git a/google/ads/googleads/v5/enums/geo_targeting_type.proto b/google/ads/googleads/v5/enums/geo_targeting_type.proto deleted file mode 100644 index 7953373e7..000000000 --- a/google/ads/googleads/v5/enums/geo_targeting_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetingTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing geo targeting types. - -// Container for enum describing possible geo targeting types. -message GeoTargetingTypeEnum { - // The possible geo targeting types. - enum GeoTargetingType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Location the user is interested in while making the query. - AREA_OF_INTEREST = 2; - - // Location of the user issuing the query. - LOCATION_OF_PRESENCE = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/google_ads_field_category.proto b/google/ads/googleads/v5/enums/google_ads_field_category.proto deleted file mode 100644 index adea4a30c..000000000 --- a/google/ads/googleads/v5/enums/google_ads_field_category.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldCategoryProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing GoogleAdsField categories - -// Container for enum that determines if the described artifact is a resource -// or a field, and if it is a field, when it segments search queries. -message GoogleAdsFieldCategoryEnum { - // The category of the artifact. - enum GoogleAdsFieldCategory { - // Unspecified - UNSPECIFIED = 0; - - // Unknown - UNKNOWN = 1; - - // The described artifact is a resource. - RESOURCE = 2; - - // The described artifact is a field and is an attribute of a resource. - // Including a resource attribute field in a query may segment the query if - // the resource to which it is attributed segments the resource found in - // the FROM clause. - ATTRIBUTE = 3; - - // The described artifact is a field and always segments search queries. - SEGMENT = 5; - - // The described artifact is a field and is a metric. It never segments - // search queries. - METRIC = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/google_ads_field_data_type.proto b/google/ads/googleads/v5/enums/google_ads_field_data_type.proto deleted file mode 100644 index fc176df82..000000000 --- a/google/ads/googleads/v5/enums/google_ads_field_data_type.proto +++ /dev/null @@ -1,102 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldDataTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing GoogleAdsField data types - -// Container holding the various data types. -message GoogleAdsFieldDataTypeEnum { - // These are the various types a GoogleAdsService artifact may take on. - enum GoogleAdsFieldDataType { - // Unspecified - UNSPECIFIED = 0; - - // Unknown - UNKNOWN = 1; - - // Maps to google.protobuf.BoolValue - // - // Applicable operators: =, != - BOOLEAN = 2; - - // Maps to google.protobuf.StringValue. It can be compared using the set of - // operators specific to dates however. - // - // Applicable operators: =, <, >, <=, >=, BETWEEN, DURING, and IN - DATE = 3; - - // Maps to google.protobuf.DoubleValue - // - // Applicable operators: =, !=, <, >, IN, NOT IN - DOUBLE = 4; - - // Maps to an enum. It's specific definition can be found at type_url. - // - // Applicable operators: =, !=, IN, NOT IN - ENUM = 5; - - // Maps to google.protobuf.FloatValue - // - // Applicable operators: =, !=, <, >, IN, NOT IN - FLOAT = 6; - - // Maps to google.protobuf.Int32Value - // - // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN - INT32 = 7; - - // Maps to google.protobuf.Int64Value - // - // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN - INT64 = 8; - - // Maps to a protocol buffer message type. The data type's details can be - // found in type_url. - // - // No operators work with MESSAGE fields. - MESSAGE = 9; - - // Maps to google.protobuf.StringValue. Represents the resource name - // (unique id) of a resource or one of its foreign keys. - // - // No operators work with RESOURCE_NAME fields. - RESOURCE_NAME = 10; - - // Maps to google.protobuf.StringValue. - // - // Applicable operators: =, !=, LIKE, NOT LIKE, IN, NOT IN - STRING = 11; - - // Maps to google.protobuf.UInt64Value - // - // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN - UINT64 = 12; - } - - -} diff --git a/google/ads/googleads/v5/enums/hotel_date_selection_type.proto b/google/ads/googleads/v5/enums/hotel_date_selection_type.proto deleted file mode 100644 index 20fa0dbb7..000000000 --- a/google/ads/googleads/v5/enums/hotel_date_selection_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelDateSelectionTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing hotel date selection types. - -// Container for enum describing possible hotel date selection types -message HotelDateSelectionTypeEnum { - // Enum describing possible hotel date selection types. - enum HotelDateSelectionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Dates selected by default. - DEFAULT_SELECTION = 50; - - // Dates selected by the user. - USER_SELECTED = 51; - } - - -} diff --git a/google/ads/googleads/v5/enums/hotel_placeholder_field.proto b/google/ads/googleads/v5/enums/hotel_placeholder_field.proto deleted file mode 100644 index 2c805da0f..000000000 --- a/google/ads/googleads/v5/enums/hotel_placeholder_field.proto +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelsPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Hotel placeholder fields. - -// Values for Hotel placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message HotelPlaceholderFieldEnum { - // Possible values for Hotel placeholder fields. - enum HotelPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Unique ID. - PROPERTY_ID = 2; - - // Data Type: STRING. Required. Main headline with property name to be shown - // in dynamic ad. - PROPERTY_NAME = 3; - - // Data Type: STRING. Name of destination to be shown in dynamic ad. - DESTINATION_NAME = 4; - - // Data Type: STRING. Description of destination to be shown in dynamic ad. - DESCRIPTION = 5; - - // Data Type: STRING. Complete property address, including postal code. - ADDRESS = 6; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 9; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 10; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 11; - - // Data Type: STRING. Category of property used to group like items together - // for recommendation engine. - CATEGORY = 12; - - // Data Type: INT64. Star rating (1 to 5) used to group like items - // together for recommendation engine. - STAR_RATING = 13; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 14; - - // Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded - // URLs. User will be redirected to these URLs when they click on an ad, or - // when they click on a specific flight for ads that show multiple - // flights. - FINAL_URLS = 15; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 16; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 17; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 18; - - // Data Type: STRING_LIST. List of recommended property IDs to show together - // with this item. - SIMILAR_PROPERTY_IDS = 19; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 20; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 21; - } - - -} diff --git a/google/ads/googleads/v5/enums/hotel_price_bucket.proto b/google/ads/googleads/v5/enums/hotel_price_bucket.proto deleted file mode 100644 index 4d1e3a4d5..000000000 --- a/google/ads/googleads/v5/enums/hotel_price_bucket.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelPriceBucketProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing hotel price buckets. - -// Container for enum describing hotel price bucket for a hotel itinerary. -message HotelPriceBucketEnum { - // Enum describing possible hotel price buckets. - enum HotelPriceBucket { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Tied for lowest price. Partner is within a small variance of the lowest - // price. - LOWEST_TIED = 3; - - // Not lowest price. Partner is not within a small variance of the lowest - // price. - NOT_LOWEST = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/hotel_rate_type.proto b/google/ads/googleads/v5/enums/hotel_rate_type.proto deleted file mode 100644 index cc5b4f9b7..000000000 --- a/google/ads/googleads/v5/enums/hotel_rate_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelRateTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing hotel rate types. - -// Container for enum describing possible hotel rate types. -message HotelRateTypeEnum { - // Enum describing possible hotel rate types. - enum HotelRateType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Rate type information is unavailable. - UNAVAILABLE = 2; - - // Rates available to everyone. - PUBLIC_RATE = 3; - - // A membership program rate is available and satisfies basic requirements - // like having a public rate available. UI treatment will strikethrough the - // public rate and indicate that a discount is available to the user. For - // more on Qualified Rates, visit - // https://developers.google.com/hotels/hotel-ads/dev-guide/qualified-rates - QUALIFIED_RATE = 4; - - // Rates available to users that satisfy some eligibility criteria. e.g. - // all signed-in users, 20% of mobile users, all mobile users in Canada, - // etc. - PRIVATE_RATE = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/income_range_type.proto b/google/ads/googleads/v5/enums/income_range_type.proto deleted file mode 100644 index b2d81fb19..000000000 --- a/google/ads/googleads/v5/enums/income_range_type.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "IncomeRangeTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing income range types. - -// Container for enum describing the type of demographic income ranges. -message IncomeRangeTypeEnum { - // The type of demographic income ranges (e.g. between 0% to 50%). - enum IncomeRangeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // 0%-50%. - INCOME_RANGE_0_50 = 510001; - - // 50% to 60%. - INCOME_RANGE_50_60 = 510002; - - // 60% to 70%. - INCOME_RANGE_60_70 = 510003; - - // 70% to 80%. - INCOME_RANGE_70_80 = 510004; - - // 80% to 90%. - INCOME_RANGE_80_90 = 510005; - - // Greater than 90%. - INCOME_RANGE_90_UP = 510006; - - // Undetermined income range. - INCOME_RANGE_UNDETERMINED = 510000; - } - - -} diff --git a/google/ads/googleads/v5/enums/interaction_event_type.proto b/google/ads/googleads/v5/enums/interaction_event_type.proto deleted file mode 100644 index ef24d8f53..000000000 --- a/google/ads/googleads/v5/enums/interaction_event_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "InteractionEventTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing types of payable and free interactions. - -// Container for enum describing types of payable and free interactions. -message InteractionEventTypeEnum { - // Enum describing possible types of payable and free interactions. - enum InteractionEventType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Click to site. In most cases, this interaction navigates to an external - // location, usually the advertiser's landing page. This is also the default - // InteractionEventType for click events. - CLICK = 2; - - // The user's expressed intent to engage with the ad in-place. - ENGAGEMENT = 3; - - // User viewed a video ad. - VIDEO_VIEW = 4; - - // The default InteractionEventType for ad conversion events. - // This is used when an ad conversion row does NOT indicate - // that the free interactions (i.e., the ad conversions) - // should be 'promoted' and reported as part of the core metrics. - // These are simply other (ad) conversions. - NONE = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/interaction_type.proto b/google/ads/googleads/v5/enums/interaction_type.proto deleted file mode 100644 index 58dab2023..000000000 --- a/google/ads/googleads/v5/enums/interaction_type.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "InteractionTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing interaction types. - -// Container for enum describing possible interaction types. -message InteractionTypeEnum { - // Enum describing possible interaction types. - enum InteractionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Calls. - CALLS = 8000; - } - - -} diff --git a/google/ads/googleads/v5/enums/invoice_type.proto b/google/ads/googleads/v5/enums/invoice_type.proto deleted file mode 100644 index ead1b391e..000000000 --- a/google/ads/googleads/v5/enums/invoice_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing invoice types. - -// Container for enum describing the type of invoices. -message InvoiceTypeEnum { - // The possible type of invoices. - enum InvoiceType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // An invoice with a negative amount. The account receives a credit. - CREDIT_MEMO = 2; - - // An invoice with a positive amount. The account owes a balance. - INVOICE = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/job_placeholder_field.proto b/google/ads/googleads/v5/enums/job_placeholder_field.proto deleted file mode 100644 index fdc6b3e02..000000000 --- a/google/ads/googleads/v5/enums/job_placeholder_field.proto +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "JobsPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Job placeholder fields. - -// Values for Job placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message JobPlaceholderFieldEnum { - // Possible values for Job placeholder fields. - enum JobPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. If only JOB_ID is specified, then it must be - // unique. If both JOB_ID and LOCATION_ID are specified, then the - // pair must be unique. - // ID) pair must be unique. - JOB_ID = 2; - - // Data Type: STRING. Combination of JOB_ID and LOCATION_ID must be unique - // per offer. - LOCATION_ID = 3; - - // Data Type: STRING. Required. Main headline with job title to be shown in - // dynamic ad. - TITLE = 4; - - // Data Type: STRING. Job subtitle to be shown in dynamic ad. - SUBTITLE = 5; - - // Data Type: STRING. Description of job to be shown in dynamic ad. - DESCRIPTION = 6; - - // Data Type: URL. Image to be displayed in the ad. Highly recommended for - // image ads. - IMAGE_URL = 7; - - // Data Type: STRING. Category of property used to group like items together - // for recommendation engine. - CATEGORY = 8; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 9; - - // Data Type: STRING. Complete property address, including postal code. - ADDRESS = 10; - - // Data Type: STRING. Salary or salary range of job to be shown in dynamic - // ad. - SALARY = 11; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific job and its location). - FINAL_URLS = 12; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 14; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 15; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 16; - - // Data Type: STRING_LIST. List of recommended job IDs to show together with - // this item. - SIMILAR_JOB_IDS = 17; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 18; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 19; - } - - -} diff --git a/google/ads/googleads/v5/enums/keyword_match_type.proto b/google/ads/googleads/v5/enums/keyword_match_type.proto deleted file mode 100644 index ef7168773..000000000 --- a/google/ads/googleads/v5/enums/keyword_match_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordMatchTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Keyword match types. - -// Message describing Keyword match types. -message KeywordMatchTypeEnum { - // Possible Keyword match types. - enum KeywordMatchType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Exact match. - EXACT = 2; - - // Phrase match. - PHRASE = 3; - - // Broad match. - BROAD = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/keyword_plan_competition_level.proto b/google/ads/googleads/v5/enums/keyword_plan_competition_level.proto deleted file mode 100644 index 1f7bc8c72..000000000 --- a/google/ads/googleads/v5/enums/keyword_plan_competition_level.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCompetitionLevelProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Keyword Planner competition levels. - -// Container for enumeration of keyword competition levels. The competition -// level indicates how competitive ad placement is for a keyword and -// is determined by the number of advertisers bidding on that keyword relative -// to all keywords across Google. The competition level can depend on the -// location and Search Network targeting options you've selected. -message KeywordPlanCompetitionLevelEnum { - // Competition level of a keyword. - enum KeywordPlanCompetitionLevel { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Low competition. The Competition Index range for this is [0, 33]. - LOW = 2; - - // Medium competition. The Competition Index range for this is [34, 66]. - MEDIUM = 3; - - // High competition. The Competition Index range for this is [67, 100]. - HIGH = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/keyword_plan_forecast_interval.proto b/google/ads/googleads/v5/enums/keyword_plan_forecast_interval.proto deleted file mode 100644 index fb8753886..000000000 --- a/google/ads/googleads/v5/enums/keyword_plan_forecast_interval.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanForecastIntervalProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing keyword plan forecast intervals. - -// Container for enumeration of forecast intervals. -message KeywordPlanForecastIntervalEnum { - // Forecast intervals. - enum KeywordPlanForecastInterval { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // The next week date range for keyword plan. The next week is based - // on the default locale of the user's account and is mostly SUN-SAT or - // MON-SUN. - // This can be different from next-7 days. - NEXT_WEEK = 3; - - // The next month date range for keyword plan. - NEXT_MONTH = 4; - - // The next quarter date range for keyword plan. - NEXT_QUARTER = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/keyword_plan_network.proto b/google/ads/googleads/v5/enums/keyword_plan_network.proto deleted file mode 100644 index 7f7bcf0e6..000000000 --- a/google/ads/googleads/v5/enums/keyword_plan_network.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanNetworkProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Keyword Planner forecastable network types. - -// Container for enumeration of keyword plan forecastable network types. -message KeywordPlanNetworkEnum { - // Enumerates keyword plan forecastable network types. - enum KeywordPlanNetwork { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Google Search. - GOOGLE_SEARCH = 2; - - // Google Search + Search partners. - GOOGLE_SEARCH_AND_PARTNERS = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/label_status.proto b/google/ads/googleads/v5/enums/label_status.proto deleted file mode 100644 index 66f64fa7e..000000000 --- a/google/ads/googleads/v5/enums/label_status.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LabelStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum describing possible status of a label. -message LabelStatusEnum { - // Possible statuses of a label. - enum LabelStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Label is enabled. - ENABLED = 2; - - // Label is removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/legacy_app_install_ad_app_store.proto b/google/ads/googleads/v5/enums/legacy_app_install_ad_app_store.proto deleted file mode 100644 index ba419fdb0..000000000 --- a/google/ads/googleads/v5/enums/legacy_app_install_ad_app_store.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LegacyAppInstallAdAppStoreProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing app store types for a legacy app install ad. - -// Container for enum describing app store type in a legacy app install ad. -message LegacyAppInstallAdAppStoreEnum { - // App store type in a legacy app install ad. - enum LegacyAppInstallAdAppStore { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Apple iTunes. - APPLE_APP_STORE = 2; - - // Google Play. - GOOGLE_PLAY = 3; - - // Windows Store. - WINDOWS_STORE = 4; - - // Windows Phone Store. - WINDOWS_PHONE_STORE = 5; - - // The app is hosted in a Chinese app store. - CN_APP_STORE = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/linked_account_type.proto b/google/ads/googleads/v5/enums/linked_account_type.proto deleted file mode 100644 index d494c8899..000000000 --- a/google/ads/googleads/v5/enums/linked_account_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LinkedAccountTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum describing different types of Linked accounts. -message LinkedAccountTypeEnum { - // Describes the possible link types between a Google Ads customer - // and another account. - enum LinkedAccountType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // A link to provide third party app analytics data. - THIRD_PARTY_APP_ANALYTICS = 2; - - // A link to Data partner. - DATA_PARTNER = 3; - - // A link to Google Ads. - GOOGLE_ADS = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/listing_group_type.proto b/google/ads/googleads/v5/enums/listing_group_type.proto deleted file mode 100644 index 98250c555..000000000 --- a/google/ads/googleads/v5/enums/listing_group_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ListingGroupTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing listing groups. - -// Container for enum describing the type of the listing group. -message ListingGroupTypeEnum { - // The type of the listing group. - enum ListingGroupType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Subdivision of products along some listing dimension. These nodes - // are not used by serving to target listing entries, but is purely - // to define the structure of the tree. - SUBDIVISION = 2; - - // Listing group unit that defines a bid. - UNIT = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/local_placeholder_field.proto b/google/ads/googleads/v5/enums/local_placeholder_field.proto deleted file mode 100644 index 08d3dd420..000000000 --- a/google/ads/googleads/v5/enums/local_placeholder_field.proto +++ /dev/null @@ -1,119 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocalPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Local placeholder fields. - -// Values for Local placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message LocalPlaceholderFieldEnum { - // Possible values for Local placeholder fields. - enum LocalPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Unique ID. - DEAL_ID = 2; - - // Data Type: STRING. Required. Main headline with local deal title to be - // shown in dynamic ad. - DEAL_NAME = 3; - - // Data Type: STRING. Local deal subtitle to be shown in dynamic ad. - SUBTITLE = 4; - - // Data Type: STRING. Description of local deal to be shown in dynamic ad. - DESCRIPTION = 5; - - // Data Type: STRING. Price to be shown in the ad. Highly recommended for - // dynamic ads. Example: "100.00 USD" - PRICE = 6; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 7; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 8; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 9; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 10; - - // Data Type: STRING. Complete property address, including postal code. - ADDRESS = 11; - - // Data Type: STRING. Category of local deal used to group like items - // together for recommendation engine. - CATEGORY = 12; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 13; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific local deal and its location). - FINAL_URLS = 14; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 15; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 16; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 17; - - // Data Type: STRING_LIST. List of recommended local deal IDs to show - // together with this item. - SIMILAR_DEAL_IDS = 18; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 19; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 20; - } - - -} diff --git a/google/ads/googleads/v5/enums/location_extension_targeting_criterion_field.proto b/google/ads/googleads/v5/enums/location_extension_targeting_criterion_field.proto deleted file mode 100644 index 76c7e6abd..000000000 --- a/google/ads/googleads/v5/enums/location_extension_targeting_criterion_field.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationExtensionTargetingCriterionFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Location Extension Targeting criterion fields. - -// Values for Location Extension Targeting criterion fields. -message LocationExtensionTargetingCriterionFieldEnum { - // Possible values for Location Extension Targeting criterion fields. - enum LocationExtensionTargetingCriterionField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Line 1 of the business address. - ADDRESS_LINE_1 = 2; - - // Data Type: STRING. Line 2 of the business address. - ADDRESS_LINE_2 = 3; - - // Data Type: STRING. City of the business address. - CITY = 4; - - // Data Type: STRING. Province of the business address. - PROVINCE = 5; - - // Data Type: STRING. Postal code of the business address. - POSTAL_CODE = 6; - - // Data Type: STRING. Country code of the business address. - COUNTRY_CODE = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/location_group_radius_units.proto b/google/ads/googleads/v5/enums/location_group_radius_units.proto deleted file mode 100644 index b36342efa..000000000 --- a/google/ads/googleads/v5/enums/location_group_radius_units.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationGroupRadiusUnitsProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing location group radius units. - -// Container for enum describing unit of radius in location group. -message LocationGroupRadiusUnitsEnum { - // The unit of radius distance in location group (e.g. MILES) - enum LocationGroupRadiusUnits { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Meters - METERS = 2; - - // Miles - MILES = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/location_placeholder_field.proto b/google/ads/googleads/v5/enums/location_placeholder_field.proto deleted file mode 100644 index 0d145f040..000000000 --- a/google/ads/googleads/v5/enums/location_placeholder_field.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Location placeholder fields. - -// Values for Location placeholder fields. -message LocationPlaceholderFieldEnum { - // Possible values for Location placeholder fields. - enum LocationPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The name of the business. - BUSINESS_NAME = 2; - - // Data Type: STRING. Line 1 of the business address. - ADDRESS_LINE_1 = 3; - - // Data Type: STRING. Line 2 of the business address. - ADDRESS_LINE_2 = 4; - - // Data Type: STRING. City of the business address. - CITY = 5; - - // Data Type: STRING. Province of the business address. - PROVINCE = 6; - - // Data Type: STRING. Postal code of the business address. - POSTAL_CODE = 7; - - // Data Type: STRING. Country code of the business address. - COUNTRY_CODE = 8; - - // Data Type: STRING. Phone number of the business. - PHONE_NUMBER = 9; - } - - -} diff --git a/google/ads/googleads/v5/enums/location_source_type.proto b/google/ads/googleads/v5/enums/location_source_type.proto deleted file mode 100644 index 77ec91d55..000000000 --- a/google/ads/googleads/v5/enums/location_source_type.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationSourceTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing location source types. - -// Used to distinguish the location source type. -message LocationSourceTypeEnum { - // The possible types of a location source. - enum LocationSourceType { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Locations associated with the customer's linked Google My Business - // account. - GOOGLE_MY_BUSINESS = 2; - - // Affiliate (chain) store locations. For example, Best Buy store locations. - AFFILIATE = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/manager_link_status.proto b/google/ads/googleads/v5/enums/manager_link_status.proto deleted file mode 100644 index d3eda7035..000000000 --- a/google/ads/googleads/v5/enums/manager_link_status.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ManagerLinkStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum describing possible status of a manager and client link. -message ManagerLinkStatusEnum { - // Possible statuses of a link. - enum ManagerLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Indicates current in-effect relationship - ACTIVE = 2; - - // Indicates terminated relationship - INACTIVE = 3; - - // Indicates relationship has been requested by manager, but the client - // hasn't accepted yet. - PENDING = 4; - - // Relationship was requested by the manager, but the client has refused. - REFUSED = 5; - - // Indicates relationship has been requested by manager, but manager - // canceled it. - CANCELED = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/matching_function_context_type.proto b/google/ads/googleads/v5/enums/matching_function_context_type.proto deleted file mode 100644 index 2eb18164d..000000000 --- a/google/ads/googleads/v5/enums/matching_function_context_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MatchingFunctionContextTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing matching function context types. - -// Container for context types for an operand in a matching function. -message MatchingFunctionContextTypeEnum { - // Possible context types for an operand in a matching function. - enum MatchingFunctionContextType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item id in the request context. - FEED_ITEM_ID = 2; - - // The device being used (possible values are 'Desktop' or 'Mobile'). - DEVICE_NAME = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/matching_function_operator.proto b/google/ads/googleads/v5/enums/matching_function_operator.proto deleted file mode 100644 index f3b9497e5..000000000 --- a/google/ads/googleads/v5/enums/matching_function_operator.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MatchingFunctionOperatorProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing matching function operators. - -// Container for enum describing matching function operator. -message MatchingFunctionOperatorEnum { - // Possible operators in a matching function. - enum MatchingFunctionOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The IN operator. - IN = 2; - - // The IDENTITY operator. - IDENTITY = 3; - - // The EQUALS operator - EQUALS = 4; - - // Operator that takes two or more operands that are of type - // FunctionOperand and checks that all the operands evaluate to true. - // For functions related to ad formats, all the operands must be in - // left_operands. - AND = 5; - - // Operator that returns true if the elements in left_operands contain any - // of the elements in right_operands. Otherwise, return false. The - // right_operands must contain at least 1 and no more than 3 - // ConstantOperands. - CONTAINS_ANY = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/media_type.proto b/google/ads/googleads/v5/enums/media_type.proto deleted file mode 100644 index a6687c6e5..000000000 --- a/google/ads/googleads/v5/enums/media_type.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MediaTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing media types. - -// Container for enum describing the types of media. -message MediaTypeEnum { - // The type of media. - enum MediaType { - // The media type has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Static image, used for image ad. - IMAGE = 2; - - // Small image, used for map ad. - ICON = 3; - - // ZIP file, used in fields of template ads. - MEDIA_BUNDLE = 4; - - // Audio file. - AUDIO = 5; - - // Video file. - VIDEO = 6; - - // Animated image, such as animated GIF. - DYNAMIC_IMAGE = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/merchant_center_link_status.proto b/google/ads/googleads/v5/enums/merchant_center_link_status.proto deleted file mode 100644 index 8243a4bdf..000000000 --- a/google/ads/googleads/v5/enums/merchant_center_link_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MerchantCenterLinkStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Merchant Center link statuses. - -// Container for enum describing possible statuses of a Google Merchant Center -// link. -message MerchantCenterLinkStatusEnum { - // Describes the possible statuses for a link between a Google Ads customer - // and a Google Merchant Center account. - enum MerchantCenterLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The link is enabled. - ENABLED = 2; - - // The link has no effect. It was proposed by the Merchant Center Account - // owner and hasn't been confirmed by the customer. - PENDING = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/message_placeholder_field.proto b/google/ads/googleads/v5/enums/message_placeholder_field.proto deleted file mode 100644 index b0ec67dd9..000000000 --- a/google/ads/googleads/v5/enums/message_placeholder_field.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MessagePlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Message placeholder fields. - -// Values for Message placeholder fields. -message MessagePlaceholderFieldEnum { - // Possible values for Message placeholder fields. - enum MessagePlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The name of your business. - BUSINESS_NAME = 2; - - // Data Type: STRING. Country code of phone number. - COUNTRY_CODE = 3; - - // Data Type: STRING. A phone number that's capable of sending and receiving - // text messages. - PHONE_NUMBER = 4; - - // Data Type: STRING. The text that will go in your click-to-message ad. - MESSAGE_EXTENSION_TEXT = 5; - - // Data Type: STRING. The message text automatically shows in people's - // messaging apps when they tap to send you a message. - MESSAGE_TEXT = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/mime_type.proto b/google/ads/googleads/v5/enums/mime_type.proto deleted file mode 100644 index c7eff56f8..000000000 --- a/google/ads/googleads/v5/enums/mime_type.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MimeTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing mime types. - -// Container for enum describing the mime types. -message MimeTypeEnum { - // The mime type - enum MimeType { - // The mime type has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // MIME type of image/jpeg. - IMAGE_JPEG = 2; - - // MIME type of image/gif. - IMAGE_GIF = 3; - - // MIME type of image/png. - IMAGE_PNG = 4; - - // MIME type of application/x-shockwave-flash. - FLASH = 5; - - // MIME type of text/html. - TEXT_HTML = 6; - - // MIME type of application/pdf. - PDF = 7; - - // MIME type of application/msword. - MSWORD = 8; - - // MIME type of application/vnd.ms-excel. - MSEXCEL = 9; - - // MIME type of application/rtf. - RTF = 10; - - // MIME type of audio/wav. - AUDIO_WAV = 11; - - // MIME type of audio/mp3. - AUDIO_MP3 = 12; - - // MIME type of application/x-html5-ad-zip. - HTML5_AD_ZIP = 13; - } - - -} diff --git a/google/ads/googleads/v5/enums/minute_of_hour.proto b/google/ads/googleads/v5/enums/minute_of_hour.proto deleted file mode 100644 index 4f09d3488..000000000 --- a/google/ads/googleads/v5/enums/minute_of_hour.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MinuteOfHourProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing days of week. - -// Container for enumeration of quarter-hours. -message MinuteOfHourEnum { - // Enumerates of quarter-hours. E.g. "FIFTEEN" - enum MinuteOfHour { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Zero minutes past the hour. - ZERO = 2; - - // Fifteen minutes past the hour. - FIFTEEN = 3; - - // Thirty minutes past the hour. - THIRTY = 4; - - // Forty-five minutes past the hour. - FORTY_FIVE = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/mobile_app_vendor.proto b/google/ads/googleads/v5/enums/mobile_app_vendor.proto deleted file mode 100644 index 58bc8d5ce..000000000 --- a/google/ads/googleads/v5/enums/mobile_app_vendor.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MobileAppVendorProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum describing different types of mobile app vendors. -message MobileAppVendorEnum { - // The type of mobile app vendor - enum MobileAppVendor { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile app vendor for Apple app store. - APPLE_APP_STORE = 2; - - // Mobile app vendor for Google app store. - GOOGLE_APP_STORE = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/mobile_device_type.proto b/google/ads/googleads/v5/enums/mobile_device_type.proto deleted file mode 100644 index 3759a8e4a..000000000 --- a/google/ads/googleads/v5/enums/mobile_device_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MobileDeviceTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing mobile device types. - -// Container for enum describing the types of mobile device. -message MobileDeviceTypeEnum { - // The type of mobile device. - enum MobileDeviceType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile phones. - MOBILE = 2; - - // Tablets. - TABLET = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/month_of_year.proto b/google/ads/googleads/v5/enums/month_of_year.proto deleted file mode 100644 index 53da42f92..000000000 --- a/google/ads/googleads/v5/enums/month_of_year.proto +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MonthOfYearProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing days of week. - -// Container for enumeration of months of the year, e.g., "January". -message MonthOfYearEnum { - // Enumerates months of the year, e.g., "January". - enum MonthOfYear { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // January. - JANUARY = 2; - - // February. - FEBRUARY = 3; - - // March. - MARCH = 4; - - // April. - APRIL = 5; - - // May. - MAY = 6; - - // June. - JUNE = 7; - - // July. - JULY = 8; - - // August. - AUGUST = 9; - - // September. - SEPTEMBER = 10; - - // October. - OCTOBER = 11; - - // November. - NOVEMBER = 12; - - // December. - DECEMBER = 13; - } - - -} diff --git a/google/ads/googleads/v5/enums/negative_geo_target_type.proto b/google/ads/googleads/v5/enums/negative_geo_target_type.proto deleted file mode 100644 index 5c9768528..000000000 --- a/google/ads/googleads/v5/enums/negative_geo_target_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "NegativeGeoTargetTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing negative geo target types. - -// Container for enum describing possible negative geo target types. -message NegativeGeoTargetTypeEnum { - // The possible negative geo target types. - enum NegativeGeoTargetType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Specifies that a user is excluded from seeing the ad if they - // are in, or show interest in, advertiser's excluded locations. - PRESENCE_OR_INTEREST = 4; - - // Specifies that a user is excluded from seeing the ad if they - // are in advertiser's excluded locations. - PRESENCE = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/offline_user_data_job_failure_reason.proto b/google/ads/googleads/v5/enums/offline_user_data_job_failure_reason.proto deleted file mode 100644 index 0d21faa7c..000000000 --- a/google/ads/googleads/v5/enums/offline_user_data_job_failure_reason.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobFailureReasonProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing offline user data job failure reasons. - -// Container for enum describing reasons why an offline user data job -// failed to be processed. -message OfflineUserDataJobFailureReasonEnum { - // The failure reason of an offline user data job. - enum OfflineUserDataJobFailureReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The matched transactions are insufficient. - INSUFFICIENT_MATCHED_TRANSACTIONS = 2; - - // The uploaded transactions are insufficient. - INSUFFICIENT_TRANSACTIONS = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/offline_user_data_job_status.proto b/google/ads/googleads/v5/enums/offline_user_data_job_status.proto deleted file mode 100644 index 5c1560565..000000000 --- a/google/ads/googleads/v5/enums/offline_user_data_job_status.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing offline user data job status. - -// Container for enum describing status of an offline user data job. -message OfflineUserDataJobStatusEnum { - // The status of an offline user data job. - enum OfflineUserDataJobStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The job has been successfully created and pending for uploading. - PENDING = 2; - - // Upload(s) have been accepted and data is being processed. - RUNNING = 3; - - // Uploaded data has been successfully processed. - SUCCESS = 4; - - // Uploaded data has failed to be processed. - FAILED = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/offline_user_data_job_type.proto b/google/ads/googleads/v5/enums/offline_user_data_job_type.proto deleted file mode 100644 index 3a2b224ce..000000000 --- a/google/ads/googleads/v5/enums/offline_user_data_job_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing offline user data job types. - -// Container for enum describing types of an offline user data job. -message OfflineUserDataJobTypeEnum { - // The type of an offline user data job. - enum OfflineUserDataJobType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Store Sales Direct data for self service. - STORE_SALES_UPLOAD_FIRST_PARTY = 2; - - // Store Sales Direct data for third party. - STORE_SALES_UPLOAD_THIRD_PARTY = 3; - - // Customer Match user list data. - CUSTOMER_MATCH_USER_LIST = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/operating_system_version_operator_type.proto b/google/ads/googleads/v5/enums/operating_system_version_operator_type.proto deleted file mode 100644 index 498aebd95..000000000 --- a/google/ads/googleads/v5/enums/operating_system_version_operator_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OperatingSystemVersionOperatorTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing operating system version operator types. - -// Container for enum describing the type of OS operators. -message OperatingSystemVersionOperatorTypeEnum { - // The type of operating system version. - enum OperatingSystemVersionOperatorType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Equals to the specified version. - EQUALS_TO = 2; - - // Greater than or equals to the specified version. - GREATER_THAN_EQUALS_TO = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/optimization_goal_type.proto b/google/ads/googleads/v5/enums/optimization_goal_type.proto deleted file mode 100644 index 268c60f43..000000000 --- a/google/ads/googleads/v5/enums/optimization_goal_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OptimizationGoalTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing optimization goal type. - -// Container for enum describing the type of optimization goal. -message OptimizationGoalTypeEnum { - // The type of optimization goal - enum OptimizationGoalType { - // Not specified. - UNSPECIFIED = 0; - - // Used as a return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Optimize for call clicks. Call click conversions are times people - // selected 'Call' to contact a store after viewing an ad. - CALL_CLICKS = 2; - - // Optimize for driving directions. Driving directions conversions are - // times people selected 'Get directions' to navigate to a store after - // viewing an ad. - DRIVING_DIRECTIONS = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/page_one_promoted_strategy_goal.proto b/google/ads/googleads/v5/enums/page_one_promoted_strategy_goal.proto deleted file mode 100644 index d77a629d8..000000000 --- a/google/ads/googleads/v5/enums/page_one_promoted_strategy_goal.proto +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PageOnePromotedStrategyGoalProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing bidding schemes. diff --git a/google/ads/googleads/v5/enums/parental_status_type.proto b/google/ads/googleads/v5/enums/parental_status_type.proto deleted file mode 100644 index 96e222d66..000000000 --- a/google/ads/googleads/v5/enums/parental_status_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ParentalStatusTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing parenal status types. - -// Container for enum describing the type of demographic parental statuses. -message ParentalStatusTypeEnum { - // The type of parental statuses (e.g. not a parent). - enum ParentalStatusType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Parent. - PARENT = 300; - - // Not a parent. - NOT_A_PARENT = 301; - - // Undetermined parental status. - UNDETERMINED = 302; - } - - -} diff --git a/google/ads/googleads/v5/enums/payment_mode.proto b/google/ads/googleads/v5/enums/payment_mode.proto deleted file mode 100644 index fdd29d8e8..000000000 --- a/google/ads/googleads/v5/enums/payment_mode.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PaymentModeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing payment modes. - -// Container for enum describing possible payment modes. -message PaymentModeEnum { - // Enum describing possible payment modes. - enum PaymentMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Pay per click. - CLICKS = 4; - - // Pay per conversion value. This mode is only supported by campaigns with - // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION, and - // BudgetType.HOTEL_ADS_COMMISSION. - CONVERSION_VALUE = 5; - - // Pay per conversion. This mode is only supported by campaigns with - // AdvertisingChannelType.DISPLAY (excluding - // AdvertisingChannelSubType.DISPLAY_GMAIL), BiddingStrategyType.TARGET_CPA, - // and BudgetType.FIXED_CPA. The customer must also be eligible for this - // mode. See Customer.eligibility_failure_reasons for details. - CONVERSIONS = 6; - - // Pay per guest stay value. This mode is only supported by campaigns with - // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION, and - // BudgetType.STANDARD. - GUEST_STAY = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/placeholder_type.proto b/google/ads/googleads/v5/enums/placeholder_type.proto deleted file mode 100644 index 0cc38f73d..000000000 --- a/google/ads/googleads/v5/enums/placeholder_type.proto +++ /dev/null @@ -1,121 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PlaceholderTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing feed placeholder types. - -// Container for enum describing possible placeholder types for a feed mapping. -message PlaceholderTypeEnum { - // Possible placeholder types for a feed mapping. - enum PlaceholderType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Lets you show links in your ad to pages from your website, including the - // main landing page. - SITELINK = 2; - - // Lets you attach a phone number to an ad, allowing customers to call - // directly from the ad. - CALL = 3; - - // Lets you provide users with a link that points to a mobile app in - // addition to a website. - APP = 4; - - // Lets you show locations of businesses from your Google My Business - // account in your ad. This helps people find your locations by showing your - // ads with your address, a map to your location, or the distance to your - // business. This extension type is useful to draw customers to your - // brick-and-mortar location. - LOCATION = 5; - - // If you sell your product through retail chains, affiliate location - // extensions let you show nearby stores that carry your products. - AFFILIATE_LOCATION = 6; - - // Lets you include additional text with your search ads that provide - // detailed information about your business, including products and services - // you offer. Callouts appear in ads at the top and bottom of Google search - // results. - CALLOUT = 7; - - // Lets you add more info to your ad, specific to some predefined categories - // such as types, brands, styles, etc. A minimum of 3 text (SNIPPETS) values - // are required. - STRUCTURED_SNIPPET = 8; - - // Allows users to see your ad, click an icon, and contact you directly by - // text message. With one tap on your ad, people can contact you to book an - // appointment, get a quote, ask for information, or request a service. - MESSAGE = 9; - - // Lets you display prices for a list of items along with your ads. A price - // feed is composed of three to eight price table rows. - PRICE = 10; - - // Allows you to highlight sales and other promotions that let users see how - // they can save by buying now. - PROMOTION = 11; - - // Lets you dynamically inject custom data into the title and description - // of your ads. - AD_CUSTOMIZER = 12; - - // Indicates that this feed is for education dynamic remarketing. - DYNAMIC_EDUCATION = 13; - - // Indicates that this feed is for flight dynamic remarketing. - DYNAMIC_FLIGHT = 14; - - // Indicates that this feed is for a custom dynamic remarketing type. Use - // this only if the other business types don't apply to your products or - // services. - DYNAMIC_CUSTOM = 15; - - // Indicates that this feed is for hotels and rentals dynamic remarketing. - DYNAMIC_HOTEL = 16; - - // Indicates that this feed is for real estate dynamic remarketing. - DYNAMIC_REAL_ESTATE = 17; - - // Indicates that this feed is for travel dynamic remarketing. - DYNAMIC_TRAVEL = 18; - - // Indicates that this feed is for local deals dynamic remarketing. - DYNAMIC_LOCAL = 19; - - // Indicates that this feed is for job dynamic remarketing. - DYNAMIC_JOB = 20; - } - - -} diff --git a/google/ads/googleads/v5/enums/placement_type.proto b/google/ads/googleads/v5/enums/placement_type.proto deleted file mode 100644 index 5e4933bd8..000000000 --- a/google/ads/googleads/v5/enums/placement_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PlacementTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing placement types. - -// Container for enum describing possible placement types. -message PlacementTypeEnum { - // Possible placement types for a feed mapping. - enum PlacementType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Websites(e.g. 'www.flowers4sale.com'). - WEBSITE = 2; - - // Mobile application categories(e.g. 'Games'). - MOBILE_APP_CATEGORY = 3; - - // mobile applications(e.g. 'mobileapp::2-com.whatsthewordanswers'). - MOBILE_APPLICATION = 4; - - // YouTube videos(e.g. 'youtube.com/video/wtLJPvx7-ys'). - YOUTUBE_VIDEO = 5; - - // YouTube channels(e.g. 'youtube.com::L8ZULXASCc1I_oaOT0NaOQ'). - YOUTUBE_CHANNEL = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/policy_approval_status.proto b/google/ads/googleads/v5/enums/policy_approval_status.proto deleted file mode 100644 index 69d94ec9a..000000000 --- a/google/ads/googleads/v5/enums/policy_approval_status.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyApprovalStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing policy approval statuses. - -// Container for enum describing possible policy approval statuses. -message PolicyApprovalStatusEnum { - // The possible policy approval statuses. When there are several approval - // statuses available the most severe one will be used. The order of severity - // is DISAPPROVED, AREA_OF_INTEREST_ONLY, APPROVED_LIMITED and APPROVED. - enum PolicyApprovalStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Will not serve. - DISAPPROVED = 2; - - // Serves with restrictions. - APPROVED_LIMITED = 3; - - // Serves without restrictions. - APPROVED = 4; - - // Will not serve in targeted countries, but may serve for users who are - // searching for information about the targeted countries. - AREA_OF_INTEREST_ONLY = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/policy_review_status.proto b/google/ads/googleads/v5/enums/policy_review_status.proto deleted file mode 100644 index 46a95eb9c..000000000 --- a/google/ads/googleads/v5/enums/policy_review_status.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyReviewStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing policy review statuses. - -// Container for enum describing possible policy review statuses. -message PolicyReviewStatusEnum { - // The possible policy review statuses. - enum PolicyReviewStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Currently under review. - REVIEW_IN_PROGRESS = 2; - - // Primary review complete. Other reviews may be continuing. - REVIEWED = 3; - - // The resource has been resubmitted for approval or its policy decision has - // been appealed. - UNDER_APPEAL = 4; - - // The resource is eligible and may be serving but could still undergo - // further review. - ELIGIBLE_MAY_SERVE = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/policy_topic_entry_type.proto b/google/ads/googleads/v5/enums/policy_topic_entry_type.proto deleted file mode 100644 index b41775b20..000000000 --- a/google/ads/googleads/v5/enums/policy_topic_entry_type.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEntryTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing policy topic entry types. - -// Container for enum describing possible policy topic entry types. -message PolicyTopicEntryTypeEnum { - // The possible policy topic entry types. - enum PolicyTopicEntryType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The resource will not be served. - PROHIBITED = 2; - - // The resource will not be served under some circumstances. - LIMITED = 4; - - // The resource cannot serve at all because of the current targeting - // criteria. - FULLY_LIMITED = 8; - - // May be of interest, but does not limit how the resource is served. - DESCRIPTIVE = 5; - - // Could increase coverage beyond normal. - BROADENING = 6; - - // Constrained for all targeted countries, but may serve in other countries - // through area of interest. - AREA_OF_INTEREST_ONLY = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/policy_topic_evidence_destination_mismatch_url_type.proto b/google/ads/googleads/v5/enums/policy_topic_evidence_destination_mismatch_url_type.proto deleted file mode 100644 index 05e27aa77..000000000 --- a/google/ads/googleads/v5/enums/policy_topic_evidence_destination_mismatch_url_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEvidenceDestinationMismatchUrlTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing policy topic evidence destination mismatch url types. - -// Container for enum describing possible policy topic evidence destination -// mismatch url types. -message PolicyTopicEvidenceDestinationMismatchUrlTypeEnum { - // The possible policy topic evidence destination mismatch url types. - enum PolicyTopicEvidenceDestinationMismatchUrlType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The display url. - DISPLAY_URL = 2; - - // The final url. - FINAL_URL = 3; - - // The final mobile url. - FINAL_MOBILE_URL = 4; - - // The tracking url template, with substituted desktop url. - TRACKING_URL = 5; - - // The tracking url template, with substituted mobile url. - MOBILE_TRACKING_URL = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/policy_topic_evidence_destination_not_working_device.proto b/google/ads/googleads/v5/enums/policy_topic_evidence_destination_not_working_device.proto deleted file mode 100644 index 25dbba8e2..000000000 --- a/google/ads/googleads/v5/enums/policy_topic_evidence_destination_not_working_device.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEvidenceDestinationNotWorkingDeviceProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing device of destination not working policy topic -// evidence. - -// Container for enum describing possible policy topic evidence destination not -// working devices. -message PolicyTopicEvidenceDestinationNotWorkingDeviceEnum { - // The possible policy topic evidence destination not working devices. - enum PolicyTopicEvidenceDestinationNotWorkingDevice { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Landing page doesn't work on desktop device. - DESKTOP = 2; - - // Landing page doesn't work on Android device. - ANDROID = 3; - - // Landing page doesn't work on iOS device. - IOS = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto b/google/ads/googleads/v5/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto deleted file mode 100644 index 648b42892..000000000 --- a/google/ads/googleads/v5/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing DNS error types of destination not working policy topic -// evidence. - -// Container for enum describing possible policy topic evidence destination not -// working DNS error types. -message PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum { - // The possible policy topic evidence destination not working DNS error types. - enum PolicyTopicEvidenceDestinationNotWorkingDnsErrorType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Host name not found in DNS when fetching landing page. - HOSTNAME_NOT_FOUND = 2; - - // Google internal crawler issue when communicating with DNS. This error - // doesn't mean the landing page doesn't work. Google will recrawl the - // landing page. - GOOGLE_CRAWLER_DNS_ISSUE = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/positive_geo_target_type.proto b/google/ads/googleads/v5/enums/positive_geo_target_type.proto deleted file mode 100644 index e8da1b144..000000000 --- a/google/ads/googleads/v5/enums/positive_geo_target_type.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PositiveGeoTargetTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing positive geo target types. - -// Container for enum describing possible positive geo target types. -message PositiveGeoTargetTypeEnum { - // The possible positive geo target types. - enum PositiveGeoTargetType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Specifies that an ad is triggered if the user is in, - // or shows interest in, advertiser's targeted locations. - PRESENCE_OR_INTEREST = 5; - - // Specifies that an ad is triggered if the user - // searches for advertiser's targeted locations. - // This can only be used with Search and standard - // Shopping campaigns. - SEARCH_INTEREST = 6; - - // Specifies that an ad is triggered if the user is in - // or regularly in advertiser's targeted locations. - PRESENCE = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/preferred_content_type.proto b/google/ads/googleads/v5/enums/preferred_content_type.proto deleted file mode 100644 index 17e81f64b..000000000 --- a/google/ads/googleads/v5/enums/preferred_content_type.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PreferredContentTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing preferred content criterion type. - -// Container for enumeration of preferred content criterion type. -message PreferredContentTypeEnum { - // Enumerates preferred content criterion type. - enum PreferredContentType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Represents top content on YouTube. - YOUTUBE_TOP_CONTENT = 400; - } - - -} diff --git a/google/ads/googleads/v5/enums/price_extension_price_qualifier.proto b/google/ads/googleads/v5/enums/price_extension_price_qualifier.proto deleted file mode 100644 index 13ea0ea22..000000000 --- a/google/ads/googleads/v5/enums/price_extension_price_qualifier.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PriceExtensionPriceQualifierProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing price extension price qualifier type. - -// Container for enum describing a price extension price qualifier. -message PriceExtensionPriceQualifierEnum { - // Enums of price extension price qualifier. - enum PriceExtensionPriceQualifier { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // 'From' qualifier for the price. - FROM = 2; - - // 'Up to' qualifier for the price. - UP_TO = 3; - - // 'Average' qualifier for the price. - AVERAGE = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/price_extension_price_unit.proto b/google/ads/googleads/v5/enums/price_extension_price_unit.proto deleted file mode 100644 index dba463ba0..000000000 --- a/google/ads/googleads/v5/enums/price_extension_price_unit.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PriceExtensionPriceUnitProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing price extension price unit. - -// Container for enum describing price extension price unit. -message PriceExtensionPriceUnitEnum { - // Price extension price unit. - enum PriceExtensionPriceUnit { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Per hour. - PER_HOUR = 2; - - // Per day. - PER_DAY = 3; - - // Per week. - PER_WEEK = 4; - - // Per month. - PER_MONTH = 5; - - // Per year. - PER_YEAR = 6; - - // Per night. - PER_NIGHT = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/price_extension_type.proto b/google/ads/googleads/v5/enums/price_extension_type.proto deleted file mode 100644 index cdff3f90e..000000000 --- a/google/ads/googleads/v5/enums/price_extension_type.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PriceExtensionTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing price extension type. - -// Container for enum describing types for a price extension. -message PriceExtensionTypeEnum { - // Price extension type. - enum PriceExtensionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The type for showing a list of brands. - BRANDS = 2; - - // The type for showing a list of events. - EVENTS = 3; - - // The type for showing locations relevant to your business. - LOCATIONS = 4; - - // The type for showing sub-regions or districts within a city or region. - NEIGHBORHOODS = 5; - - // The type for showing a collection of product categories. - PRODUCT_CATEGORIES = 6; - - // The type for showing a collection of related product tiers. - PRODUCT_TIERS = 7; - - // The type for showing a collection of services offered by your business. - SERVICES = 8; - - // The type for showing a collection of service categories. - SERVICE_CATEGORIES = 9; - - // The type for showing a collection of related service tiers. - SERVICE_TIERS = 10; - } - - -} diff --git a/google/ads/googleads/v5/enums/price_placeholder_field.proto b/google/ads/googleads/v5/enums/price_placeholder_field.proto deleted file mode 100644 index 775855316..000000000 --- a/google/ads/googleads/v5/enums/price_placeholder_field.proto +++ /dev/null @@ -1,240 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PricePlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Price placeholder fields. - -// Values for Price placeholder fields. -message PricePlaceholderFieldEnum { - // Possible values for Price placeholder fields. - enum PricePlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The type of your price feed. Must match one of the - // predefined price feed type exactly. - TYPE = 2; - - // Data Type: STRING. The qualifier of each price. Must match one of the - // predefined price qualifiers exactly. - PRICE_QUALIFIER = 3; - - // Data Type: URL. Tracking template for the price feed when using Upgraded - // URLs. - TRACKING_TEMPLATE = 4; - - // Data Type: STRING. Language of the price feed. Must match one of the - // available available locale codes exactly. - LANGUAGE = 5; - - // Data Type: STRING. Final URL suffix for the price feed when using - // parallel tracking. - FINAL_URL_SUFFIX = 6; - - // Data Type: STRING. The header of item 1 of the table. - ITEM_1_HEADER = 100; - - // Data Type: STRING. The description of item 1 of the table. - ITEM_1_DESCRIPTION = 101; - - // Data Type: MONEY. The price (money with currency) of item 1 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_1_PRICE = 102; - - // Data Type: STRING. The price unit of item 1 of the table. Must match one - // of the predefined price units. - ITEM_1_UNIT = 103; - - // Data Type: URL_LIST. The final URLs of item 1 of the table when using - // Upgraded URLs. - ITEM_1_FINAL_URLS = 104; - - // Data Type: URL_LIST. The final mobile URLs of item 1 of the table when - // using Upgraded URLs. - ITEM_1_FINAL_MOBILE_URLS = 105; - - // Data Type: STRING. The header of item 2 of the table. - ITEM_2_HEADER = 200; - - // Data Type: STRING. The description of item 2 of the table. - ITEM_2_DESCRIPTION = 201; - - // Data Type: MONEY. The price (money with currency) of item 2 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_2_PRICE = 202; - - // Data Type: STRING. The price unit of item 2 of the table. Must match one - // of the predefined price units. - ITEM_2_UNIT = 203; - - // Data Type: URL_LIST. The final URLs of item 2 of the table when using - // Upgraded URLs. - ITEM_2_FINAL_URLS = 204; - - // Data Type: URL_LIST. The final mobile URLs of item 2 of the table when - // using Upgraded URLs. - ITEM_2_FINAL_MOBILE_URLS = 205; - - // Data Type: STRING. The header of item 3 of the table. - ITEM_3_HEADER = 300; - - // Data Type: STRING. The description of item 3 of the table. - ITEM_3_DESCRIPTION = 301; - - // Data Type: MONEY. The price (money with currency) of item 3 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_3_PRICE = 302; - - // Data Type: STRING. The price unit of item 3 of the table. Must match one - // of the predefined price units. - ITEM_3_UNIT = 303; - - // Data Type: URL_LIST. The final URLs of item 3 of the table when using - // Upgraded URLs. - ITEM_3_FINAL_URLS = 304; - - // Data Type: URL_LIST. The final mobile URLs of item 3 of the table when - // using Upgraded URLs. - ITEM_3_FINAL_MOBILE_URLS = 305; - - // Data Type: STRING. The header of item 4 of the table. - ITEM_4_HEADER = 400; - - // Data Type: STRING. The description of item 4 of the table. - ITEM_4_DESCRIPTION = 401; - - // Data Type: MONEY. The price (money with currency) of item 4 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_4_PRICE = 402; - - // Data Type: STRING. The price unit of item 4 of the table. Must match one - // of the predefined price units. - ITEM_4_UNIT = 403; - - // Data Type: URL_LIST. The final URLs of item 4 of the table when using - // Upgraded URLs. - ITEM_4_FINAL_URLS = 404; - - // Data Type: URL_LIST. The final mobile URLs of item 4 of the table when - // using Upgraded URLs. - ITEM_4_FINAL_MOBILE_URLS = 405; - - // Data Type: STRING. The header of item 5 of the table. - ITEM_5_HEADER = 500; - - // Data Type: STRING. The description of item 5 of the table. - ITEM_5_DESCRIPTION = 501; - - // Data Type: MONEY. The price (money with currency) of item 5 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_5_PRICE = 502; - - // Data Type: STRING. The price unit of item 5 of the table. Must match one - // of the predefined price units. - ITEM_5_UNIT = 503; - - // Data Type: URL_LIST. The final URLs of item 5 of the table when using - // Upgraded URLs. - ITEM_5_FINAL_URLS = 504; - - // Data Type: URL_LIST. The final mobile URLs of item 5 of the table when - // using Upgraded URLs. - ITEM_5_FINAL_MOBILE_URLS = 505; - - // Data Type: STRING. The header of item 6 of the table. - ITEM_6_HEADER = 600; - - // Data Type: STRING. The description of item 6 of the table. - ITEM_6_DESCRIPTION = 601; - - // Data Type: MONEY. The price (money with currency) of item 6 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_6_PRICE = 602; - - // Data Type: STRING. The price unit of item 6 of the table. Must match one - // of the predefined price units. - ITEM_6_UNIT = 603; - - // Data Type: URL_LIST. The final URLs of item 6 of the table when using - // Upgraded URLs. - ITEM_6_FINAL_URLS = 604; - - // Data Type: URL_LIST. The final mobile URLs of item 6 of the table when - // using Upgraded URLs. - ITEM_6_FINAL_MOBILE_URLS = 605; - - // Data Type: STRING. The header of item 7 of the table. - ITEM_7_HEADER = 700; - - // Data Type: STRING. The description of item 7 of the table. - ITEM_7_DESCRIPTION = 701; - - // Data Type: MONEY. The price (money with currency) of item 7 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_7_PRICE = 702; - - // Data Type: STRING. The price unit of item 7 of the table. Must match one - // of the predefined price units. - ITEM_7_UNIT = 703; - - // Data Type: URL_LIST. The final URLs of item 7 of the table when using - // Upgraded URLs. - ITEM_7_FINAL_URLS = 704; - - // Data Type: URL_LIST. The final mobile URLs of item 7 of the table when - // using Upgraded URLs. - ITEM_7_FINAL_MOBILE_URLS = 705; - - // Data Type: STRING. The header of item 8 of the table. - ITEM_8_HEADER = 800; - - // Data Type: STRING. The description of item 8 of the table. - ITEM_8_DESCRIPTION = 801; - - // Data Type: MONEY. The price (money with currency) of item 8 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_8_PRICE = 802; - - // Data Type: STRING. The price unit of item 8 of the table. Must match one - // of the predefined price units. - ITEM_8_UNIT = 803; - - // Data Type: URL_LIST. The final URLs of item 8 of the table when using - // Upgraded URLs. - ITEM_8_FINAL_URLS = 804; - - // Data Type: URL_LIST. The final mobile URLs of item 8 of the table when - // using Upgraded URLs. - ITEM_8_FINAL_MOBILE_URLS = 805; - } - - -} diff --git a/google/ads/googleads/v5/enums/product_bidding_category_level.proto b/google/ads/googleads/v5/enums/product_bidding_category_level.proto deleted file mode 100644 index 6322af74a..000000000 --- a/google/ads/googleads/v5/enums/product_bidding_category_level.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryLevelProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Level of a product bidding category. -message ProductBiddingCategoryLevelEnum { - // Enum describing the level of the product bidding category. - enum ProductBiddingCategoryLevel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Level 1. - LEVEL1 = 2; - - // Level 2. - LEVEL2 = 3; - - // Level 3. - LEVEL3 = 4; - - // Level 4. - LEVEL4 = 5; - - // Level 5. - LEVEL5 = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/product_bidding_category_status.proto b/google/ads/googleads/v5/enums/product_bidding_category_status.proto deleted file mode 100644 index 7ab033d41..000000000 --- a/google/ads/googleads/v5/enums/product_bidding_category_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing bidding schemes. - -// Status of the product bidding category. -message ProductBiddingCategoryStatusEnum { - // Enum describing the status of the product bidding category. - enum ProductBiddingCategoryStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The category is active and can be used for bidding. - ACTIVE = 2; - - // The category is obsolete. Used only for reporting purposes. - OBSOLETE = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/product_channel.proto b/google/ads/googleads/v5/enums/product_channel.proto deleted file mode 100644 index fc12be979..000000000 --- a/google/ads/googleads/v5/enums/product_channel.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductChannelProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing bidding schemes. - -// Locality of a product offer. -message ProductChannelEnum { - // Enum describing the locality of a product offer. - enum ProductChannel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The item is sold online. - ONLINE = 2; - - // The item is sold in local stores. - LOCAL = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/product_channel_exclusivity.proto b/google/ads/googleads/v5/enums/product_channel_exclusivity.proto deleted file mode 100644 index 731f98b81..000000000 --- a/google/ads/googleads/v5/enums/product_channel_exclusivity.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductChannelExclusivityProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing bidding schemes. - -// Availability of a product offer. -message ProductChannelExclusivityEnum { - // Enum describing the availability of a product offer. - enum ProductChannelExclusivity { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The item is sold through one channel only, either local stores or online - // as indicated by its ProductChannel. - SINGLE_CHANNEL = 2; - - // The item is matched to its online or local stores counterpart, indicating - // it is available for purchase in both ShoppingProductChannels. - MULTI_CHANNEL = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/product_condition.proto b/google/ads/googleads/v5/enums/product_condition.proto deleted file mode 100644 index 6e90b5dd2..000000000 --- a/google/ads/googleads/v5/enums/product_condition.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductConditionProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing bidding schemes. - -// Condition of a product offer. -message ProductConditionEnum { - // Enum describing the condition of a product offer. - enum ProductCondition { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The product condition is new. - NEW = 3; - - // The product condition is refurbished. - REFURBISHED = 4; - - // The product condition is used. - USED = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/product_custom_attribute_index.proto b/google/ads/googleads/v5/enums/product_custom_attribute_index.proto deleted file mode 100644 index e76f0fef8..000000000 --- a/google/ads/googleads/v5/enums/product_custom_attribute_index.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductCustomAttributeIndexProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing product custom attributes. - -// Container for enum describing the index of the product custom attribute. -message ProductCustomAttributeIndexEnum { - // The index of the product custom attribute. - enum ProductCustomAttributeIndex { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // First product custom attribute. - INDEX0 = 7; - - // Second product custom attribute. - INDEX1 = 8; - - // Third product custom attribute. - INDEX2 = 9; - - // Fourth product custom attribute. - INDEX3 = 10; - - // Fifth product custom attribute. - INDEX4 = 11; - } - - -} diff --git a/google/ads/googleads/v5/enums/product_type_level.proto b/google/ads/googleads/v5/enums/product_type_level.proto deleted file mode 100644 index 07ba7390f..000000000 --- a/google/ads/googleads/v5/enums/product_type_level.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductTypeLevelProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing bidding schemes. - -// Level of the type of a product offer. -message ProductTypeLevelEnum { - // Enum describing the level of the type of a product offer. - enum ProductTypeLevel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Level 1. - LEVEL1 = 7; - - // Level 2. - LEVEL2 = 8; - - // Level 3. - LEVEL3 = 9; - - // Level 4. - LEVEL4 = 10; - - // Level 5. - LEVEL5 = 11; - } - - -} diff --git a/google/ads/googleads/v5/enums/promotion_extension_discount_modifier.proto b/google/ads/googleads/v5/enums/promotion_extension_discount_modifier.proto deleted file mode 100644 index c746fd425..000000000 --- a/google/ads/googleads/v5/enums/promotion_extension_discount_modifier.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PromotionExtensionDiscountModifierProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing promotion extension discount modifier. - -// Container for enum describing possible a promotion extension -// discount modifier. -message PromotionExtensionDiscountModifierEnum { - // A promotion extension discount modifier. - enum PromotionExtensionDiscountModifier { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // 'Up to'. - UP_TO = 2; - } - - -} diff --git a/google/ads/googleads/v5/enums/promotion_extension_occasion.proto b/google/ads/googleads/v5/enums/promotion_extension_occasion.proto deleted file mode 100644 index 75485c248..000000000 --- a/google/ads/googleads/v5/enums/promotion_extension_occasion.proto +++ /dev/null @@ -1,157 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PromotionExtensionOccasionProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing promotion extension occasion. - -// Container for enum describing a promotion extension occasion. -// For more information about the occasions please check: -// https://support.google.com/google-ads/answer/7367521 -message PromotionExtensionOccasionEnum { - // A promotion extension occasion. - enum PromotionExtensionOccasion { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // New Year's. - NEW_YEARS = 2; - - // Chinese New Year. - CHINESE_NEW_YEAR = 3; - - // Valentine's Day. - VALENTINES_DAY = 4; - - // Easter. - EASTER = 5; - - // Mother's Day. - MOTHERS_DAY = 6; - - // Father's Day. - FATHERS_DAY = 7; - - // Labor Day. - LABOR_DAY = 8; - - // Back To School. - BACK_TO_SCHOOL = 9; - - // Halloween. - HALLOWEEN = 10; - - // Black Friday. - BLACK_FRIDAY = 11; - - // Cyber Monday. - CYBER_MONDAY = 12; - - // Christmas. - CHRISTMAS = 13; - - // Boxing Day. - BOXING_DAY = 14; - - // Independence Day in any country. - INDEPENDENCE_DAY = 15; - - // National Day in any country. - NATIONAL_DAY = 16; - - // End of any season. - END_OF_SEASON = 17; - - // Winter Sale. - WINTER_SALE = 18; - - // Summer sale. - SUMMER_SALE = 19; - - // Fall Sale. - FALL_SALE = 20; - - // Spring Sale. - SPRING_SALE = 21; - - // Ramadan. - RAMADAN = 22; - - // Eid al-Fitr. - EID_AL_FITR = 23; - - // Eid al-Adha. - EID_AL_ADHA = 24; - - // Singles Day. - SINGLES_DAY = 25; - - // Women's Day. - WOMENS_DAY = 26; - - // Holi. - HOLI = 27; - - // Parent's Day. - PARENTS_DAY = 28; - - // St. Nicholas Day. - ST_NICHOLAS_DAY = 29; - - // Carnival. - CARNIVAL = 30; - - // Epiphany, also known as Three Kings' Day. - EPIPHANY = 31; - - // Rosh Hashanah. - ROSH_HASHANAH = 32; - - // Passover. - PASSOVER = 33; - - // Hanukkah. - HANUKKAH = 34; - - // Diwali. - DIWALI = 35; - - // Navratri. - NAVRATRI = 36; - - // Available in Thai: Songkran. - SONGKRAN = 37; - - // Available in Japanese: Year-end Gift. - YEAR_END_GIFT = 38; - } - - -} diff --git a/google/ads/googleads/v5/enums/promotion_placeholder_field.proto b/google/ads/googleads/v5/enums/promotion_placeholder_field.proto deleted file mode 100644 index 57479683b..000000000 --- a/google/ads/googleads/v5/enums/promotion_placeholder_field.proto +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PromotionPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Promotion placeholder fields. - -// Values for Promotion placeholder fields. -message PromotionPlaceholderFieldEnum { - // Possible values for Promotion placeholder fields. - enum PromotionPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The text that appears on the ad when the extension is - // shown. - PROMOTION_TARGET = 2; - - // Data Type: STRING. Allows you to add "up to" phrase to the promotion, - // in case you have variable promotion rates. - DISCOUNT_MODIFIER = 3; - - // Data Type: INT64. Takes a value in micros, where 1 million micros - // represents 1%, and is shown as a percentage when rendered. - PERCENT_OFF = 4; - - // Data Type: MONEY. Requires a currency and an amount of money. - MONEY_AMOUNT_OFF = 5; - - // Data Type: STRING. A string that the user enters to get the discount. - PROMOTION_CODE = 6; - - // Data Type: MONEY. A minimum spend before the user qualifies for the - // promotion. - ORDERS_OVER_AMOUNT = 7; - - // Data Type: DATE. The start date of the promotion. - PROMOTION_START = 8; - - // Data Type: DATE. The end date of the promotion. - PROMOTION_END = 9; - - // Data Type: STRING. Describes the associated event for the promotion using - // one of the PromotionExtensionOccasion enum values, for example NEW_YEARS. - OCCASION = 10; - - // Data Type: URL_LIST. Final URLs to be used in the ad when using Upgraded - // URLs. - FINAL_URLS = 11; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 12; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 13; - - // Data Type: STRING. A string represented by a language code for the - // promotion. - LANGUAGE = 14; - - // Data Type: STRING. Final URL suffix for the ad when using parallel - // tracking. - FINAL_URL_SUFFIX = 15; - } - - -} diff --git a/google/ads/googleads/v5/enums/proximity_radius_units.proto b/google/ads/googleads/v5/enums/proximity_radius_units.proto deleted file mode 100644 index 158ae455a..000000000 --- a/google/ads/googleads/v5/enums/proximity_radius_units.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProximityRadiusUnitsProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing proximity radius units. - -// Container for enum describing unit of radius in proximity. -message ProximityRadiusUnitsEnum { - // The unit of radius distance in proximity (e.g. MILES) - enum ProximityRadiusUnits { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Miles - MILES = 2; - - // Kilometers - KILOMETERS = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/quality_score_bucket.proto b/google/ads/googleads/v5/enums/quality_score_bucket.proto deleted file mode 100644 index 03f4978c6..000000000 --- a/google/ads/googleads/v5/enums/quality_score_bucket.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "QualityScoreBucketProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing quality score buckets. - -// The relative performance compared to other advertisers. -message QualityScoreBucketEnum { - // Enum listing the possible quality score buckets. - enum QualityScoreBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Quality of the creative is below average. - BELOW_AVERAGE = 2; - - // Quality of the creative is average. - AVERAGE = 3; - - // Quality of the creative is above average. - ABOVE_AVERAGE = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/reach_plan_ad_length.proto b/google/ads/googleads/v5/enums/reach_plan_ad_length.proto deleted file mode 100644 index 3c2e443f7..000000000 --- a/google/ads/googleads/v5/enums/reach_plan_ad_length.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanAdLengthProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing ad lengths of a plannable video ad. - -// Message describing length of a plannable video ad. -message ReachPlanAdLengthEnum { - // Possible ad length values. - enum ReachPlanAdLength { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // 6 seconds long ad. - SIX_SECONDS = 2; - - // 15 or 20 seconds long ad. - FIFTEEN_OR_TWENTY_SECONDS = 3; - - // More than 20 seconds long ad. - TWENTY_SECONDS_OR_MORE = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/reach_plan_age_range.proto b/google/ads/googleads/v5/enums/reach_plan_age_range.proto deleted file mode 100644 index 871c2f080..000000000 --- a/google/ads/googleads/v5/enums/reach_plan_age_range.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanAgeRangeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing a plannable age range. - -// Message describing plannable age ranges. -message ReachPlanAgeRangeEnum { - // Possible plannable age range values. - enum ReachPlanAgeRange { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Between 18 and 24 years old. - AGE_RANGE_18_24 = 503001; - - // Between 18 and 34 years old. - AGE_RANGE_18_34 = 2; - - // Between 18 and 44 years old. - AGE_RANGE_18_44 = 3; - - // Between 18 and 49 years old. - AGE_RANGE_18_49 = 4; - - // Between 18 and 54 years old. - AGE_RANGE_18_54 = 5; - - // Between 18 and 64 years old. - AGE_RANGE_18_64 = 6; - - // Between 18 and 65+ years old. - AGE_RANGE_18_65_UP = 7; - - // Between 21 and 34 years old. - AGE_RANGE_21_34 = 8; - - // Between 25 and 34 years old. - AGE_RANGE_25_34 = 503002; - - // Between 25 and 44 years old. - AGE_RANGE_25_44 = 9; - - // Between 25 and 49 years old. - AGE_RANGE_25_49 = 10; - - // Between 25 and 54 years old. - AGE_RANGE_25_54 = 11; - - // Between 25 and 64 years old. - AGE_RANGE_25_64 = 12; - - // Between 25 and 65+ years old. - AGE_RANGE_25_65_UP = 13; - - // Between 35 and 44 years old. - AGE_RANGE_35_44 = 503003; - - // Between 35 and 49 years old. - AGE_RANGE_35_49 = 14; - - // Between 35 and 54 years old. - AGE_RANGE_35_54 = 15; - - // Between 35 and 64 years old. - AGE_RANGE_35_64 = 16; - - // Between 35 and 65+ years old. - AGE_RANGE_35_65_UP = 17; - - // Between 45 and 54 years old. - AGE_RANGE_45_54 = 503004; - - // Between 45 and 64 years old. - AGE_RANGE_45_64 = 18; - - // Between 45 and 65+ years old. - AGE_RANGE_45_65_UP = 19; - - // Between 50 and 65+ years old. - AGE_RANGE_50_65_UP = 20; - - // Between 55 and 64 years old. - AGE_RANGE_55_64 = 503005; - - // Between 55 and 65+ years old. - AGE_RANGE_55_65_UP = 21; - - // 65 years old and beyond. - AGE_RANGE_65_UP = 503006; - } - - -} diff --git a/google/ads/googleads/v5/enums/reach_plan_network.proto b/google/ads/googleads/v5/enums/reach_plan_network.proto deleted file mode 100644 index 37144e439..000000000 --- a/google/ads/googleads/v5/enums/reach_plan_network.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanNetworkProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing a plannable network. - -// Container for enum describing plannable networks. -message ReachPlanNetworkEnum { - // Possible plannable network values. - enum ReachPlanNetwork { - // Not specified. - UNSPECIFIED = 0; - - // Used as a return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // YouTube network. - YOUTUBE = 2; - - // Google Video Partners (GVP) network. - GOOGLE_VIDEO_PARTNERS = 3; - - // A combination of the YouTube network and the Google Video Partners - // network. - YOUTUBE_AND_GOOGLE_VIDEO_PARTNERS = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/real_estate_placeholder_field.proto b/google/ads/googleads/v5/enums/real_estate_placeholder_field.proto deleted file mode 100644 index 4d6ecd0c7..000000000 --- a/google/ads/googleads/v5/enums/real_estate_placeholder_field.proto +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "RealEstatePlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Real Estate placeholder fields. - -// Values for Real Estate placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message RealEstatePlaceholderFieldEnum { - // Possible values for Real Estate placeholder fields. - enum RealEstatePlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Unique ID. - LISTING_ID = 2; - - // Data Type: STRING. Main headline with listing name to be shown in dynamic - // ad. - LISTING_NAME = 3; - - // Data Type: STRING. City name to be shown in dynamic ad. - CITY_NAME = 4; - - // Data Type: STRING. Description of listing to be shown in dynamic ad. - DESCRIPTION = 5; - - // Data Type: STRING. Complete listing address, including postal code. - ADDRESS = 6; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 9; - - // Data Type: STRING. Type of property (house, condo, apartment, etc.) used - // to group like items together for recommendation engine. - PROPERTY_TYPE = 10; - - // Data Type: STRING. Type of listing (resale, rental, foreclosure, etc.) - // used to group like items together for recommendation engine. - LISTING_TYPE = 11; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 12; - - // Data Type: URL_LIST. Final URLs to be used in ad when using Upgraded - // URLs; the more specific the better (e.g. the individual URL of a specific - // listing and its location). - FINAL_URLS = 13; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 14; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 15; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 16; - - // Data Type: STRING_LIST. List of recommended listing IDs to show together - // with this item. - SIMILAR_LISTING_IDS = 17; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 18; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 19; - } - - -} diff --git a/google/ads/googleads/v5/enums/recommendation_type.proto b/google/ads/googleads/v5/enums/recommendation_type.proto deleted file mode 100644 index 88098b802..000000000 --- a/google/ads/googleads/v5/enums/recommendation_type.proto +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Recommendation types. - -// Container for enum describing types of recommendations. -message RecommendationTypeEnum { - // Types of recommendations. - enum RecommendationType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Budget recommendation for campaigns that are currently budget-constrained - // (as opposed to the FORECASTING_CAMPAIGN_BUDGET recommendation, which - // applies to campaigns that are expected to become budget-constrained in - // the future). - CAMPAIGN_BUDGET = 2; - - // Keyword recommendation. - KEYWORD = 3; - - // Recommendation to add a new text ad. - TEXT_AD = 4; - - // Recommendation to update a campaign to use a Target CPA bidding strategy. - TARGET_CPA_OPT_IN = 5; - - // Recommendation to update a campaign to use the Maximize Conversions - // bidding strategy. - MAXIMIZE_CONVERSIONS_OPT_IN = 6; - - // Recommendation to enable Enhanced Cost Per Click for a campaign. - ENHANCED_CPC_OPT_IN = 7; - - // Recommendation to start showing your campaign's ads on Google Search - // Partners Websites. - SEARCH_PARTNERS_OPT_IN = 8; - - // Recommendation to update a campaign to use a Maximize Clicks bidding - // strategy. - MAXIMIZE_CLICKS_OPT_IN = 9; - - // Recommendation to start using the "Optimize" ad rotation setting for the - // given ad group. - OPTIMIZE_AD_ROTATION = 10; - - // Recommendation to add callout extensions to a campaign. - CALLOUT_EXTENSION = 11; - - // Recommendation to add sitelink extensions to a campaign. - SITELINK_EXTENSION = 12; - - // Recommendation to add call extensions to a campaign. - CALL_EXTENSION = 13; - - // Recommendation to change an existing keyword from one match type to a - // broader match type. - KEYWORD_MATCH_TYPE = 14; - - // Recommendation to move unused budget from one budget to a constrained - // budget. - MOVE_UNUSED_BUDGET = 15; - - // Recommendation to update a campaign to use a Target ROAS bidding - // strategy. - TARGET_ROAS_OPT_IN = 17; - } - - -} diff --git a/google/ads/googleads/v5/enums/response_content_type.proto b/google/ads/googleads/v5/enums/response_content_type.proto deleted file mode 100644 index 058da8c13..000000000 --- a/google/ads/googleads/v5/enums/response_content_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ResponseContentTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing the response content types used in mutate operations. - -// Container for possible response content types. -message ResponseContentTypeEnum { - // Possible response content types. - enum ResponseContentType { - // Not specified. Will return the resource name only in the response. - UNSPECIFIED = 0; - - // The mutate response will be the resource name. - RESOURCE_NAME_ONLY = 1; - - // The mutate response will be the resource name and the resource with - // all mutable fields. - MUTABLE_RESOURCE = 2; - } - - -} diff --git a/google/ads/googleads/v5/enums/search_engine_results_page_type.proto b/google/ads/googleads/v5/enums/search_engine_results_page_type.proto deleted file mode 100644 index 204c89ac2..000000000 --- a/google/ads/googleads/v5/enums/search_engine_results_page_type.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SearchEngineResultsPageTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing search engine results page types. - -// The type of the search engine results page. -message SearchEngineResultsPageTypeEnum { - // The type of the search engine results page. - enum SearchEngineResultsPageType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Only ads were contained in the search engine results page. - ADS_ONLY = 2; - - // Only organic results were contained in the search engine results page. - ORGANIC_ONLY = 3; - - // Both ads and organic results were contained in the search engine results - // page. - ADS_AND_ORGANIC = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/search_term_match_type.proto b/google/ads/googleads/v5/enums/search_term_match_type.proto deleted file mode 100644 index 9dc6df807..000000000 --- a/google/ads/googleads/v5/enums/search_term_match_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermMatchTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing search term match types. - -// Container for enum describing match types for a keyword triggering an ad. -message SearchTermMatchTypeEnum { - // Possible match types for a keyword triggering an ad, including variants. - enum SearchTermMatchType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Broad match. - BROAD = 2; - - // Exact match. - EXACT = 3; - - // Phrase match. - PHRASE = 4; - - // Exact match (close variant). - NEAR_EXACT = 5; - - // Phrase match (close variant). - NEAR_PHRASE = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/search_term_targeting_status.proto b/google/ads/googleads/v5/enums/search_term_targeting_status.proto deleted file mode 100644 index 53414d498..000000000 --- a/google/ads/googleads/v5/enums/search_term_targeting_status.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermTargetingStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing search term targeting statuses. - -// Container for enum indicating whether a search term is one of your targeted -// or excluded keywords. -message SearchTermTargetingStatusEnum { - // Indicates whether the search term is one of your targeted or excluded - // keywords. - enum SearchTermTargetingStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Search term is added to targeted keywords. - ADDED = 2; - - // Search term matches a negative keyword. - EXCLUDED = 3; - - // Search term has been both added and excluded. - ADDED_EXCLUDED = 4; - - // Search term is neither targeted nor excluded. - NONE = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/served_asset_field_type.proto b/google/ads/googleads/v5/enums/served_asset_field_type.proto deleted file mode 100644 index f46ab4b39..000000000 --- a/google/ads/googleads/v5/enums/served_asset_field_type.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ServedAssetFieldTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing policy review statuses. - -// Container for enum describing possible asset field types. -message ServedAssetFieldTypeEnum { - // The possible asset field types. - enum ServedAssetFieldType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The asset is used in headline 1. - HEADLINE_1 = 2; - - // The asset is used in headline 2. - HEADLINE_2 = 3; - - // The asset is used in headline 3. - HEADLINE_3 = 4; - - // The asset is used in description 1. - DESCRIPTION_1 = 5; - - // The asset is used in description 2. - DESCRIPTION_2 = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/shared_set_status.proto b/google/ads/googleads/v5/enums/shared_set_status.proto deleted file mode 100644 index 059946b89..000000000 --- a/google/ads/googleads/v5/enums/shared_set_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing shared set statuses. - -// Container for enum describing types of shared set statuses. -message SharedSetStatusEnum { - // Enum listing the possible shared set statuses. - enum SharedSetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The shared set is enabled. - ENABLED = 2; - - // The shared set is removed and can no longer be used. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/shared_set_type.proto b/google/ads/googleads/v5/enums/shared_set_type.proto deleted file mode 100644 index 99d9da119..000000000 --- a/google/ads/googleads/v5/enums/shared_set_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing shared set types. - -// Container for enum describing types of shared sets. -message SharedSetTypeEnum { - // Enum listing the possible shared set types. - enum SharedSetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // A set of keywords that can be excluded from targeting. - NEGATIVE_KEYWORDS = 2; - - // A set of placements that can be excluded from targeting. - NEGATIVE_PLACEMENTS = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/simulation_modification_method.proto b/google/ads/googleads/v5/enums/simulation_modification_method.proto deleted file mode 100644 index f5570c0e3..000000000 --- a/google/ads/googleads/v5/enums/simulation_modification_method.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SimulationModificationMethodProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing simulation modification methods. - -// Container for enum describing the method by which a simulation modifies -// a field. -message SimulationModificationMethodEnum { - // Enum describing the method by which a simulation modifies a field. - enum SimulationModificationMethod { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The values in a simulation were applied to all children of a given - // resource uniformly. Overrides on child resources were not respected. - UNIFORM = 2; - - // The values in a simulation were applied to the given resource. - // Overrides on child resources were respected, and traffic estimates - // do not include these resources. - DEFAULT = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/simulation_type.proto b/google/ads/googleads/v5/enums/simulation_type.proto deleted file mode 100644 index ab5bc7664..000000000 --- a/google/ads/googleads/v5/enums/simulation_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SimulationTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing simulation types. - -// Container for enum describing the field a simulation modifies. -message SimulationTypeEnum { - // Enum describing the field a simulation modifies. - enum SimulationType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The simulation is for a CPC bid. - CPC_BID = 2; - - // The simulation is for a CPV bid. - CPV_BID = 3; - - // The simulation is for a CPA target. - TARGET_CPA = 4; - - // The simulation is for a bid modifier. - BID_MODIFIER = 5; - - // The simulation is for a ROAS target. - TARGET_ROAS = 6; - - // The simulation is for a percent CPC bid. - PERCENT_CPC_BID = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/sitelink_placeholder_field.proto b/google/ads/googleads/v5/enums/sitelink_placeholder_field.proto deleted file mode 100644 index f098536f0..000000000 --- a/google/ads/googleads/v5/enums/sitelink_placeholder_field.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SitelinkPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Sitelink placeholder fields. - -// Values for Sitelink placeholder fields. -message SitelinkPlaceholderFieldEnum { - // Possible values for Sitelink placeholder fields. - enum SitelinkPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The link text for your sitelink. - TEXT = 2; - - // Data Type: STRING. First line of the sitelink description. - LINE_1 = 3; - - // Data Type: STRING. Second line of the sitelink description. - LINE_2 = 4; - - // Data Type: URL_LIST. Final URLs for the sitelink when using Upgraded - // URLs. - FINAL_URLS = 5; - - // Data Type: URL_LIST. Final Mobile URLs for the sitelink when using - // Upgraded URLs. - FINAL_MOBILE_URLS = 6; - - // Data Type: URL. Tracking template for the sitelink when using Upgraded - // URLs. - TRACKING_URL = 7; - - // Data Type: STRING. Final URL suffix for sitelink when using parallel - // tracking. - FINAL_URL_SUFFIX = 8; - } - - -} diff --git a/google/ads/googleads/v5/enums/slot.proto b/google/ads/googleads/v5/enums/slot.proto deleted file mode 100644 index 31263c91a..000000000 --- a/google/ads/googleads/v5/enums/slot.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SlotProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing slots. - -// Container for enumeration of possible positions of the Ad. -message SlotEnum { - // Enumerates possible positions of the Ad. - enum Slot { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Google search: Side. - SEARCH_SIDE = 2; - - // Google search: Top. - SEARCH_TOP = 3; - - // Google search: Other. - SEARCH_OTHER = 4; - - // Google Display Network. - CONTENT = 5; - - // Search partners: Top. - SEARCH_PARTNER_TOP = 6; - - // Search partners: Other. - SEARCH_PARTNER_OTHER = 7; - - // Cross-network. - MIXED = 8; - } - - -} diff --git a/google/ads/googleads/v5/enums/spending_limit_type.proto b/google/ads/googleads/v5/enums/spending_limit_type.proto deleted file mode 100644 index 9094bc122..000000000 --- a/google/ads/googleads/v5/enums/spending_limit_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SpendingLimitTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing SpendingLimit types. - -// Message describing spending limit types. -message SpendingLimitTypeEnum { - // The possible spending limit types used by certain resources as an - // alternative to absolute money values in micros. - enum SpendingLimitType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Infinite, indicates unlimited spending power. - INFINITE = 2; - } - - -} diff --git a/google/ads/googleads/v5/enums/structured_snippet_placeholder_field.proto b/google/ads/googleads/v5/enums/structured_snippet_placeholder_field.proto deleted file mode 100644 index 50056060e..000000000 --- a/google/ads/googleads/v5/enums/structured_snippet_placeholder_field.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "StructuredSnippetPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Structured Snippet placeholder fields. - -// Values for Structured Snippet placeholder fields. -message StructuredSnippetPlaceholderFieldEnum { - // Possible values for Structured Snippet placeholder fields. - enum StructuredSnippetPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The category of snippet of your products/services. - // Must match exactly one of the predefined structured snippets headers. - // For a list, visit - // https://developers.google.com/adwords/api/docs/appendix/structured-snippet-headers - HEADER = 2; - - // Data Type: STRING_LIST. Text values that describe your products/services. - // All text must be family safe. Special or non-ASCII characters are not - // permitted. A snippet can be at most 25 characters. - SNIPPETS = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/summary_row_setting.proto b/google/ads/googleads/v5/enums/summary_row_setting.proto deleted file mode 100644 index 724b0af59..000000000 --- a/google/ads/googleads/v5/enums/summary_row_setting.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SummaryRowSettingProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing summary row setting. - -// Indicates summary row setting in request parameter. -message SummaryRowSettingEnum { - // Enum describing return summary row settings. - enum SummaryRowSetting { - // Not specified. - UNSPECIFIED = 0; - - // Represent unknown values of return summary row. - UNKNOWN = 1; - - // Do not return summary row. - NO_SUMMARY_ROW = 2; - - // Return summary row along with results. The summary row will be returned - // in the last batch alone (last batch will contain no results). - SUMMARY_ROW_WITH_RESULTS = 3; - - // Return summary row only and return no results. - SUMMARY_ROW_ONLY = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/system_managed_entity_source.proto b/google/ads/googleads/v5/enums/system_managed_entity_source.proto deleted file mode 100644 index 2fbea072a..000000000 --- a/google/ads/googleads/v5/enums/system_managed_entity_source.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SystemManagedEntitySourceProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing system managed entity sources. - -// Container for enum describing possible system managed entity sources. -message SystemManagedResourceSourceEnum { - // Enum listing the possible system managed entity sources. - enum SystemManagedResourceSource { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Generated ad variations experiment ad. - AD_VARIATIONS = 2; - } - - -} diff --git a/google/ads/googleads/v5/enums/target_cpa_opt_in_recommendation_goal.proto b/google/ads/googleads/v5/enums/target_cpa_opt_in_recommendation_goal.proto deleted file mode 100644 index c0599df36..000000000 --- a/google/ads/googleads/v5/enums/target_cpa_opt_in_recommendation_goal.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TargetCpaOptInRecommendationGoalProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing TargetCpaOptIn recommendation goals. - -// Container for enum describing goals for TargetCpaOptIn recommendation. -message TargetCpaOptInRecommendationGoalEnum { - // Goal of TargetCpaOptIn recommendation. - enum TargetCpaOptInRecommendationGoal { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Recommendation to set Target CPA to maintain the same cost. - SAME_COST = 2; - - // Recommendation to set Target CPA to maintain the same conversions. - SAME_CONVERSIONS = 3; - - // Recommendation to set Target CPA to maintain the same CPA. - SAME_CPA = 4; - - // Recommendation to set Target CPA to a value that is as close as possible - // to, yet lower than, the actual CPA (computed for past 28 days). - CLOSEST_CPA = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/target_impression_share_location.proto b/google/ads/googleads/v5/enums/target_impression_share_location.proto deleted file mode 100644 index 15527b166..000000000 --- a/google/ads/googleads/v5/enums/target_impression_share_location.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TargetImpressionShareLocationProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing target impression share goal. - -// Container for enum describing where on the first search results page the -// automated bidding system should target impressions for the -// TargetImpressionShare bidding strategy. -message TargetImpressionShareLocationEnum { - // Enum describing possible goals. - enum TargetImpressionShareLocation { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Any location on the web page. - ANYWHERE_ON_PAGE = 2; - - // Top box of ads. - TOP_OF_PAGE = 3; - - // Top slot in the top box of ads. - ABSOLUTE_TOP_OF_PAGE = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/targeting_dimension.proto b/google/ads/googleads/v5/enums/targeting_dimension.proto deleted file mode 100644 index 299c0a73c..000000000 --- a/google/ads/googleads/v5/enums/targeting_dimension.proto +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TargetingDimensionProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing criteria types. - -// The dimensions that can be targeted. -message TargetingDimensionEnum { - // Enum describing possible targeting dimensions. - enum TargetingDimension { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Keyword criteria, e.g. 'mars cruise'. KEYWORD may be used as a custom bid - // dimension. Keywords are always a targeting dimension, so may not be set - // as a target "ALL" dimension with TargetRestriction. - KEYWORD = 2; - - // Audience criteria, which include user list, user interest, custom - // affinity, and custom in market. - AUDIENCE = 3; - - // Topic criteria for targeting categories of content, e.g. - // 'category::Animals>Pets' Used for Display and Video targeting. - TOPIC = 4; - - // Criteria for targeting gender. - GENDER = 5; - - // Criteria for targeting age ranges. - AGE_RANGE = 6; - - // Placement criteria, which include websites like 'www.flowers4sale.com', - // as well as mobile applications, mobile app categories, YouTube videos, - // and YouTube channels. - PLACEMENT = 7; - - // Criteria for parental status targeting. - PARENTAL_STATUS = 8; - - // Criteria for income range targeting. - INCOME_RANGE = 9; - } - - -} diff --git a/google/ads/googleads/v5/enums/time_type.proto b/google/ads/googleads/v5/enums/time_type.proto deleted file mode 100644 index 3c7921199..000000000 --- a/google/ads/googleads/v5/enums/time_type.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TimeTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing TimeType types. - -// Message describing time types. -message TimeTypeEnum { - // The possible time types used by certain resources as an alternative to - // absolute timestamps. - enum TimeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // As soon as possible. - NOW = 2; - - // An infinite point in the future. - FOREVER = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/tracking_code_page_format.proto b/google/ads/googleads/v5/enums/tracking_code_page_format.proto deleted file mode 100644 index a05e7002f..000000000 --- a/google/ads/googleads/v5/enums/tracking_code_page_format.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TrackingCodePageFormatProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum describing the format of the web page where the tracking -// tag and snippet will be installed. -message TrackingCodePageFormatEnum { - // The format of the web page where the tracking tag and snippet will be - // installed. - enum TrackingCodePageFormat { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Standard HTML page format. - HTML = 2; - - // Google AMP page format. - AMP = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/tracking_code_type.proto b/google/ads/googleads/v5/enums/tracking_code_type.proto deleted file mode 100644 index dcb1cfed0..000000000 --- a/google/ads/googleads/v5/enums/tracking_code_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TrackingCodeTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Container for enum describing the type of the generated tag snippets for -// tracking conversions. -message TrackingCodeTypeEnum { - // The type of the generated tag snippets for tracking conversions. - enum TrackingCodeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The snippet that is fired as a result of a website page loading. - WEBPAGE = 2; - - // The snippet contains a JavaScript function which fires the tag. This - // function is typically called from an onClick handler added to a link or - // button element on the page. - WEBPAGE_ONCLICK = 3; - - // For embedding on a mobile webpage. The snippet contains a JavaScript - // function which fires the tag. - CLICK_TO_CALL = 4; - - // The snippet that is used to replace the phone number on your website with - // a Google forwarding number for call tracking purposes. - WEBSITE_CALL = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/travel_placeholder_field.proto b/google/ads/googleads/v5/enums/travel_placeholder_field.proto deleted file mode 100644 index cb71900bb..000000000 --- a/google/ads/googleads/v5/enums/travel_placeholder_field.proto +++ /dev/null @@ -1,128 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TravelPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing Travel placeholder fields. - -// Values for Travel placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message TravelPlaceholderFieldEnum { - // Possible values for Travel placeholder fields. - enum TravelPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Destination id. Example: PAR, LON. - // For feed items that only have destination id, destination id must be a - // unique key. For feed items that have both destination id and origin id, - // then the combination must be a unique key. - DESTINATION_ID = 2; - - // Data Type: STRING. Origin id. Example: PAR, LON. - // Combination of DESTINATION_ID and ORIGIN_ID must be - // unique per offer. - ORIGIN_ID = 3; - - // Data Type: STRING. Required. Main headline with name to be shown in - // dynamic ad. - TITLE = 4; - - // Data Type: STRING. The destination name. Shorter names are recommended. - DESTINATION_NAME = 5; - - // Data Type: STRING. Origin name. Shorter names are recommended. - ORIGIN_NAME = 6; - - // Data Type: STRING. Price to be shown in the ad. Highly recommended for - // dynamic ads. - // Example: "100.00 USD" - PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 9; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 10; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 11; - - // Data Type: STRING. Category of travel offer used to group like items - // together for recommendation engine. - CATEGORY = 12; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 13; - - // Data Type: STRING. Address of travel offer, including postal code. - DESTINATION_ADDRESS = 14; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad, when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific travel offer and its location). - FINAL_URL = 15; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 16; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 17; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 18; - - // Data Type: STRING_LIST. List of recommended destination IDs to show - // together with this item. - SIMILAR_DESTINATION_IDS = 19; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 20; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 21; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_interest_taxonomy_type.proto b/google/ads/googleads/v5/enums/user_interest_taxonomy_type.proto deleted file mode 100644 index 4af67a904..000000000 --- a/google/ads/googleads/v5/enums/user_interest_taxonomy_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserInterestTaxonomyTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing the UserInterest taxonomy type - -// Message describing a UserInterestTaxonomyType. -message UserInterestTaxonomyTypeEnum { - // Enum containing the possible UserInterestTaxonomyTypes. - enum UserInterestTaxonomyType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The affinity for this user interest. - AFFINITY = 2; - - // The market for this user interest. - IN_MARKET = 3; - - // Users known to have installed applications in the specified categories. - MOBILE_APP_INSTALL_USER = 4; - - // The geographical location of the interest-based vertical. - VERTICAL_GEO = 5; - - // User interest criteria for new smart phone users. - NEW_SMART_PHONE_USER = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_access_status.proto b/google/ads/googleads/v5/enums/user_list_access_status.proto deleted file mode 100644 index de97b0d86..000000000 --- a/google/ads/googleads/v5/enums/user_list_access_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListAccessStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing user list access status. - -// Indicates if this client still has access to the list. -message UserListAccessStatusEnum { - // Enum containing possible user list access statuses. - enum UserListAccessStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The access is enabled. - ENABLED = 2; - - // The access is disabled. - DISABLED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_closing_reason.proto b/google/ads/googleads/v5/enums/user_list_closing_reason.proto deleted file mode 100644 index fb94998f6..000000000 --- a/google/ads/googleads/v5/enums/user_list_closing_reason.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListClosingReasonProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing user list closing reason. - -// Indicates the reason why the userlist was closed. -// This enum is only used when a list is auto-closed by the system. -message UserListClosingReasonEnum { - // Enum describing possible user list closing reasons. - enum UserListClosingReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The userlist was closed because of not being used for over one year. - UNUSED = 2; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_combined_rule_operator.proto b/google/ads/googleads/v5/enums/user_list_combined_rule_operator.proto deleted file mode 100644 index 0d6fbdbe2..000000000 --- a/google/ads/googleads/v5/enums/user_list_combined_rule_operator.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListCombinedRuleOperatorProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Logical operator connecting two rules. -message UserListCombinedRuleOperatorEnum { - // Enum describing possible user list combined rule operators. - enum UserListCombinedRuleOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // A AND B. - AND = 2; - - // A AND NOT B. - AND_NOT = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_crm_data_source_type.proto b/google/ads/googleads/v5/enums/user_list_crm_data_source_type.proto deleted file mode 100644 index 45c33b542..000000000 --- a/google/ads/googleads/v5/enums/user_list_crm_data_source_type.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListCrmDataSourceTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Indicates source of Crm upload data. -message UserListCrmDataSourceTypeEnum { - // Enum describing possible user list crm data source type. - enum UserListCrmDataSourceType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The uploaded data is first-party data. - FIRST_PARTY = 2; - - // The uploaded data is from a third-party credit bureau. - THIRD_PARTY_CREDIT_BUREAU = 3; - - // The uploaded data is from a third-party voter file. - THIRD_PARTY_VOTER_FILE = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_date_rule_item_operator.proto b/google/ads/googleads/v5/enums/user_list_date_rule_item_operator.proto deleted file mode 100644 index 27266ec20..000000000 --- a/google/ads/googleads/v5/enums/user_list_date_rule_item_operator.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListDateRuleItemOperatorProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Supported rule operator for date type. -message UserListDateRuleItemOperatorEnum { - // Enum describing possible user list date rule item operators. - enum UserListDateRuleItemOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Equals. - EQUALS = 2; - - // Not Equals. - NOT_EQUALS = 3; - - // Before. - BEFORE = 4; - - // After. - AFTER = 5; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_logical_rule_operator.proto b/google/ads/googleads/v5/enums/user_list_logical_rule_operator.proto deleted file mode 100644 index 1375a9776..000000000 --- a/google/ads/googleads/v5/enums/user_list_logical_rule_operator.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListLogicalRuleOperatorProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// The logical operator of the rule. -message UserListLogicalRuleOperatorEnum { - // Enum describing possible user list logical rule operators. - enum UserListLogicalRuleOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // And - all of the operands. - ALL = 2; - - // Or - at least one of the operands. - ANY = 3; - - // Not - none of the operands. - NONE = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_membership_status.proto b/google/ads/googleads/v5/enums/user_list_membership_status.proto deleted file mode 100644 index bcd3084ec..000000000 --- a/google/ads/googleads/v5/enums/user_list_membership_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListMembershipStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing user list membership status. - -// Membership status of this user list. Indicates whether a user list is open -// or active. Only open user lists can accumulate more users and can be used for -// targeting. -message UserListMembershipStatusEnum { - // Enum containing possible user list membership statuses. - enum UserListMembershipStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Open status - List is accruing members and can be targeted to. - OPEN = 2; - - // Closed status - No new members being added. Cannot be used for targeting. - CLOSED = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_number_rule_item_operator.proto b/google/ads/googleads/v5/enums/user_list_number_rule_item_operator.proto deleted file mode 100644 index cb0b23b7a..000000000 --- a/google/ads/googleads/v5/enums/user_list_number_rule_item_operator.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListNumberRuleItemOperatorProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Supported rule operator for number type. -message UserListNumberRuleItemOperatorEnum { - // Enum describing possible user list number rule item operators. - enum UserListNumberRuleItemOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Greater than. - GREATER_THAN = 2; - - // Greater than or equal. - GREATER_THAN_OR_EQUAL = 3; - - // Equals. - EQUALS = 4; - - // Not equals. - NOT_EQUALS = 5; - - // Less than. - LESS_THAN = 6; - - // Less than or equal. - LESS_THAN_OR_EQUAL = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_prepopulation_status.proto b/google/ads/googleads/v5/enums/user_list_prepopulation_status.proto deleted file mode 100644 index 6cababc5b..000000000 --- a/google/ads/googleads/v5/enums/user_list_prepopulation_status.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListPrepopulationStatusProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Indicates status of prepopulation based on the rule. -message UserListPrepopulationStatusEnum { - // Enum describing possible user list prepopulation status. - enum UserListPrepopulationStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Prepopoulation is being requested. - REQUESTED = 2; - - // Prepopulation is finished. - FINISHED = 3; - - // Prepopulation failed. - FAILED = 4; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_rule_type.proto b/google/ads/googleads/v5/enums/user_list_rule_type.proto deleted file mode 100644 index b344dcd2c..000000000 --- a/google/ads/googleads/v5/enums/user_list_rule_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListRuleTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Rule based user list rule type. -message UserListRuleTypeEnum { - // Enum describing possible user list rule types. - enum UserListRuleType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conjunctive normal form. - AND_OF_ORS = 2; - - // Disjunctive normal form. - OR_OF_ANDS = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_size_range.proto b/google/ads/googleads/v5/enums/user_list_size_range.proto deleted file mode 100644 index 2c3644067..000000000 --- a/google/ads/googleads/v5/enums/user_list_size_range.proto +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListSizeRangeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing user list size range. - -// Size range in terms of number of users of a UserList. -message UserListSizeRangeEnum { - // Enum containing possible user list size ranges. - enum UserListSizeRange { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // User list has less than 500 users. - LESS_THAN_FIVE_HUNDRED = 2; - - // User list has number of users in range of 500 to 1000. - LESS_THAN_ONE_THOUSAND = 3; - - // User list has number of users in range of 1000 to 10000. - ONE_THOUSAND_TO_TEN_THOUSAND = 4; - - // User list has number of users in range of 10000 to 50000. - TEN_THOUSAND_TO_FIFTY_THOUSAND = 5; - - // User list has number of users in range of 50000 to 100000. - FIFTY_THOUSAND_TO_ONE_HUNDRED_THOUSAND = 6; - - // User list has number of users in range of 100000 to 300000. - ONE_HUNDRED_THOUSAND_TO_THREE_HUNDRED_THOUSAND = 7; - - // User list has number of users in range of 300000 to 500000. - THREE_HUNDRED_THOUSAND_TO_FIVE_HUNDRED_THOUSAND = 8; - - // User list has number of users in range of 500000 to 1 million. - FIVE_HUNDRED_THOUSAND_TO_ONE_MILLION = 9; - - // User list has number of users in range of 1 to 2 millions. - ONE_MILLION_TO_TWO_MILLION = 10; - - // User list has number of users in range of 2 to 3 millions. - TWO_MILLION_TO_THREE_MILLION = 11; - - // User list has number of users in range of 3 to 5 millions. - THREE_MILLION_TO_FIVE_MILLION = 12; - - // User list has number of users in range of 5 to 10 millions. - FIVE_MILLION_TO_TEN_MILLION = 13; - - // User list has number of users in range of 10 to 20 millions. - TEN_MILLION_TO_TWENTY_MILLION = 14; - - // User list has number of users in range of 20 to 30 millions. - TWENTY_MILLION_TO_THIRTY_MILLION = 15; - - // User list has number of users in range of 30 to 50 millions. - THIRTY_MILLION_TO_FIFTY_MILLION = 16; - - // User list has over 50 million users. - OVER_FIFTY_MILLION = 17; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_string_rule_item_operator.proto b/google/ads/googleads/v5/enums/user_list_string_rule_item_operator.proto deleted file mode 100644 index 530eafacd..000000000 --- a/google/ads/googleads/v5/enums/user_list_string_rule_item_operator.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListStringRuleItemOperatorProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Supported rule operator for string type. -message UserListStringRuleItemOperatorEnum { - // Enum describing possible user list string rule item operators. - enum UserListStringRuleItemOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Contains. - CONTAINS = 2; - - // Equals. - EQUALS = 3; - - // Starts with. - STARTS_WITH = 4; - - // Ends with. - ENDS_WITH = 5; - - // Not equals. - NOT_EQUALS = 6; - - // Not contains. - NOT_CONTAINS = 7; - - // Not starts with. - NOT_STARTS_WITH = 8; - - // Not ends with. - NOT_ENDS_WITH = 9; - } - - -} diff --git a/google/ads/googleads/v5/enums/user_list_type.proto b/google/ads/googleads/v5/enums/user_list_type.proto deleted file mode 100644 index 3bf4e1668..000000000 --- a/google/ads/googleads/v5/enums/user_list_type.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListTypeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing user list type. - -// The user list types. -message UserListTypeEnum { - // Enum containing possible user list types. - enum UserListType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // UserList represented as a collection of conversion types. - REMARKETING = 2; - - // UserList represented as a combination of other user lists/interests. - LOGICAL = 3; - - // UserList created in the Google Ad Manager platform. - EXTERNAL_REMARKETING = 4; - - // UserList associated with a rule. - RULE_BASED = 5; - - // UserList with users similar to users of another UserList. - SIMILAR = 6; - - // UserList of first-party CRM data provided by advertiser in the form of - // emails or other formats. - CRM_BASED = 7; - } - - -} diff --git a/google/ads/googleads/v5/enums/vanity_pharma_display_url_mode.proto b/google/ads/googleads/v5/enums/vanity_pharma_display_url_mode.proto deleted file mode 100644 index 82150cf71..000000000 --- a/google/ads/googleads/v5/enums/vanity_pharma_display_url_mode.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "VanityPharmaDisplayUrlModeProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing vanity pharma display url modes. - -// The display mode for vanity pharma URLs. -message VanityPharmaDisplayUrlModeEnum { - // Enum describing possible display modes for vanity pharma URLs. - enum VanityPharmaDisplayUrlMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Replace vanity pharma URL with manufacturer website url. - MANUFACTURER_WEBSITE_URL = 2; - - // Replace vanity pharma URL with description of the website. - WEBSITE_DESCRIPTION = 3; - } - - -} diff --git a/google/ads/googleads/v5/enums/vanity_pharma_text.proto b/google/ads/googleads/v5/enums/vanity_pharma_text.proto deleted file mode 100644 index 138bc468d..000000000 --- a/google/ads/googleads/v5/enums/vanity_pharma_text.proto +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "VanityPharmaTextProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing vanity pharma texts. - -// The text that will be displayed in display URL of the text ad when website -// description is the selected display mode for vanity pharma URLs. -message VanityPharmaTextEnum { - // Enum describing possible text. - enum VanityPharmaText { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Prescription treatment website with website content in English. - PRESCRIPTION_TREATMENT_WEBSITE_EN = 2; - - // Prescription treatment website with website content in Spanish - // (Sitio de tratamientos con receta). - PRESCRIPTION_TREATMENT_WEBSITE_ES = 3; - - // Prescription device website with website content in English. - PRESCRIPTION_DEVICE_WEBSITE_EN = 4; - - // Prescription device website with website content in Spanish (Sitio de - // dispositivos con receta). - PRESCRIPTION_DEVICE_WEBSITE_ES = 5; - - // Medical device website with website content in English. - MEDICAL_DEVICE_WEBSITE_EN = 6; - - // Medical device website with website content in Spanish (Sitio de - // dispositivos médicos). - MEDICAL_DEVICE_WEBSITE_ES = 7; - - // Preventative treatment website with website content in English. - PREVENTATIVE_TREATMENT_WEBSITE_EN = 8; - - // Preventative treatment website with website content in Spanish (Sitio de - // tratamientos preventivos). - PREVENTATIVE_TREATMENT_WEBSITE_ES = 9; - - // Prescription contraception website with website content in English. - PRESCRIPTION_CONTRACEPTION_WEBSITE_EN = 10; - - // Prescription contraception website with website content in Spanish (Sitio - // de anticonceptivos con receta). - PRESCRIPTION_CONTRACEPTION_WEBSITE_ES = 11; - - // Prescription vaccine website with website content in English. - PRESCRIPTION_VACCINE_WEBSITE_EN = 12; - - // Prescription vaccine website with website content in Spanish (Sitio de - // vacunas con receta). - PRESCRIPTION_VACCINE_WEBSITE_ES = 13; - } - - -} diff --git a/google/ads/googleads/v5/enums/webpage_condition_operand.proto b/google/ads/googleads/v5/enums/webpage_condition_operand.proto deleted file mode 100644 index 5a7cfa9f4..000000000 --- a/google/ads/googleads/v5/enums/webpage_condition_operand.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "WebpageConditionOperandProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing webpage condition operand. - -// Container for enum describing webpage condition operand in webpage criterion. -message WebpageConditionOperandEnum { - // The webpage condition operand in webpage criterion. - enum WebpageConditionOperand { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Operand denoting a webpage URL targeting condition. - URL = 2; - - // Operand denoting a webpage category targeting condition. - CATEGORY = 3; - - // Operand denoting a webpage title targeting condition. - PAGE_TITLE = 4; - - // Operand denoting a webpage content targeting condition. - PAGE_CONTENT = 5; - - // Operand denoting a webpage custom label targeting condition. - CUSTOM_LABEL = 6; - } - - -} diff --git a/google/ads/googleads/v5/enums/webpage_condition_operator.proto b/google/ads/googleads/v5/enums/webpage_condition_operator.proto deleted file mode 100644 index 1dc53fcc2..000000000 --- a/google/ads/googleads/v5/enums/webpage_condition_operator.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "WebpageConditionOperatorProto"; -option java_package = "com.google.ads.googleads.v5.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V5::Enums"; - -// Proto file describing webpage condition operator. - -// Container for enum describing webpage condition operator in webpage -// criterion. -message WebpageConditionOperatorEnum { - // The webpage condition operator in webpage criterion. - enum WebpageConditionOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The argument web condition is equal to the compared web condition. - EQUALS = 2; - - // The argument web condition is part of the compared web condition. - CONTAINS = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/BUILD.bazel b/google/ads/googleads/v5/errors/BUILD.bazel deleted file mode 100644 index 6e99d5ad3..000000000 --- a/google/ads/googleads/v5/errors/BUILD.bazel +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "errors_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v5/common:common_proto", - "//google/ads/googleads/v5/enums:enums_proto", - "//google/api:annotations_proto", - "@com_google_protobuf//:duration_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_proto_library", -) - -java_proto_library( - name = "errors_java_proto", - deps = [":errors_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_proto_library", -) - -csharp_proto_library( - name = "errors_csharp_proto", - deps = [":errors_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_proto_library", -) - -ruby_proto_library( - name = "errors_ruby_proto", - deps = [":errors_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_proto_library", -) - -py_proto_library( - name = "errors_py_proto", - deps = [":errors_proto"], -) diff --git a/google/ads/googleads/v5/errors/access_invitation_error.proto b/google/ads/googleads/v5/errors/access_invitation_error.proto deleted file mode 100644 index a76101311..000000000 --- a/google/ads/googleads/v5/errors/access_invitation_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AccessInvitationErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing AccessInvitation errors. - -// Container for enum describing possible AccessInvitation errors. -message AccessInvitationErrorEnum { - // Enum describing possible AccessInvitation errors. - enum AccessInvitationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The email address is invalid for sending an invitation. - INVALID_EMAIL_ADDRESS = 2; - - // Email address already has access to this customer. - EMAIL_ADDRESS_ALREADY_HAS_ACCESS = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/account_budget_proposal_error.proto b/google/ads/googleads/v5/errors/account_budget_proposal_error.proto deleted file mode 100644 index e42924ef1..000000000 --- a/google/ads/googleads/v5/errors/account_budget_proposal_error.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing account budget proposal errors. - -// Container for enum describing possible account budget proposal errors. -message AccountBudgetProposalErrorEnum { - // Enum describing possible account budget proposal errors. - enum AccountBudgetProposalError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The field mask must be empty for create/end/remove proposals. - FIELD_MASK_NOT_ALLOWED = 2; - - // The field cannot be set because of the proposal type. - IMMUTABLE_FIELD = 3; - - // The field is required because of the proposal type. - REQUIRED_FIELD_MISSING = 4; - - // Proposals that have been approved cannot be cancelled. - CANNOT_CANCEL_APPROVED_PROPOSAL = 5; - - // Budgets that haven't been approved cannot be removed. - CANNOT_REMOVE_UNAPPROVED_BUDGET = 6; - - // Budgets that are currently running cannot be removed. - CANNOT_REMOVE_RUNNING_BUDGET = 7; - - // Budgets that haven't been approved cannot be truncated. - CANNOT_END_UNAPPROVED_BUDGET = 8; - - // Only budgets that are currently running can be truncated. - CANNOT_END_INACTIVE_BUDGET = 9; - - // All budgets must have names. - BUDGET_NAME_REQUIRED = 10; - - // Expired budgets cannot be edited after a sufficient amount of time has - // passed. - CANNOT_UPDATE_OLD_BUDGET = 11; - - // It is not permissible a propose a new budget that ends in the past. - CANNOT_END_IN_PAST = 12; - - // An expired budget cannot be extended to overlap with the running budget. - CANNOT_EXTEND_END_TIME = 13; - - // A purchase order number is required. - PURCHASE_ORDER_NUMBER_REQUIRED = 14; - - // Budgets that have a pending update cannot be updated. - PENDING_UPDATE_PROPOSAL_EXISTS = 15; - - // Cannot propose more than one budget when the corresponding billing setup - // hasn't been approved. - MULTIPLE_BUDGETS_NOT_ALLOWED_FOR_UNAPPROVED_BILLING_SETUP = 16; - - // Cannot update the start time of a budget that has already started. - CANNOT_UPDATE_START_TIME_FOR_STARTED_BUDGET = 17; - - // Cannot update the spending limit of a budget with an amount lower than - // what has already been spent. - SPENDING_LIMIT_LOWER_THAN_ACCRUED_COST_NOT_ALLOWED = 18; - - // Cannot propose a budget update without actually changing any fields. - UPDATE_IS_NO_OP = 19; - - // The end time must come after the start time. - END_TIME_MUST_FOLLOW_START_TIME = 20; - - // The budget's date range must fall within the date range of its billing - // setup. - BUDGET_DATE_RANGE_INCOMPATIBLE_WITH_BILLING_SETUP = 21; - - // The user is not authorized to mutate budgets for the given billing setup. - NOT_AUTHORIZED = 22; - - // Mutates are not allowed for the given billing setup. - INVALID_BILLING_SETUP = 23; - - // Budget creation failed as it overlaps with an pending budget proposal - // or an approved budget. - OVERLAPS_EXISTING_BUDGET = 24; - - // The control setting in user's payments profile doesn't allow budget - // creation through API. Log in to Google Ads to create budget. - CANNOT_CREATE_BUDGET_THROUGH_API = 25; - } - - -} diff --git a/google/ads/googleads/v5/errors/account_link_error.proto b/google/ads/googleads/v5/errors/account_link_error.proto deleted file mode 100644 index fb11dab01..000000000 --- a/google/ads/googleads/v5/errors/account_link_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing AccountLink errors. - -// Container for enum describing possible account link errors. -message AccountLinkErrorEnum { - // Enum describing possible account link errors. - enum AccountLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The new link status is invalid. - INVALID_STATUS = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/ad_customizer_error.proto b/google/ads/googleads/v5/errors/ad_customizer_error.proto deleted file mode 100644 index 7ec281b66..000000000 --- a/google/ads/googleads/v5/errors/ad_customizer_error.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdCustomizerErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing ad customizer errors. - -// Container for enum describing possible ad customizer errors. -message AdCustomizerErrorEnum { - // Enum describing possible ad customizer errors. - enum AdCustomizerError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Invalid date argument in countdown function. - COUNTDOWN_INVALID_DATE_FORMAT = 2; - - // Countdown end date is in the past. - COUNTDOWN_DATE_IN_PAST = 3; - - // Invalid locale string in countdown function. - COUNTDOWN_INVALID_LOCALE = 4; - - // Days-before argument to countdown function is not positive. - COUNTDOWN_INVALID_START_DAYS_BEFORE = 5; - - // A user list referenced in an IF function does not exist. - UNKNOWN_USER_LIST = 6; - } - - -} diff --git a/google/ads/googleads/v5/errors/ad_error.proto b/google/ads/googleads/v5/errors/ad_error.proto deleted file mode 100644 index 361b2913c..000000000 --- a/google/ads/googleads/v5/errors/ad_error.proto +++ /dev/null @@ -1,505 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing ad errors. - -// Container for enum describing possible ad errors. -message AdErrorEnum { - // Enum describing possible ad errors. - enum AdError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Ad customizers are not supported for ad type. - AD_CUSTOMIZERS_NOT_SUPPORTED_FOR_AD_TYPE = 2; - - // Estimating character sizes the string is too long. - APPROXIMATELY_TOO_LONG = 3; - - // Estimating character sizes the string is too short. - APPROXIMATELY_TOO_SHORT = 4; - - // There is a problem with the snippet. - BAD_SNIPPET = 5; - - // Cannot modify an ad. - CANNOT_MODIFY_AD = 6; - - // business name and url cannot be set at the same time - CANNOT_SET_BUSINESS_NAME_IF_URL_SET = 7; - - // The specified field is incompatible with this ad's type or settings. - CANNOT_SET_FIELD = 8; - - // Cannot set field when originAdId is set. - CANNOT_SET_FIELD_WITH_ORIGIN_AD_ID_SET = 9; - - // Cannot set field when an existing ad id is set for sharing. - CANNOT_SET_FIELD_WITH_AD_ID_SET_FOR_SHARING = 10; - - // Cannot set allowFlexibleColor false if no color is provided by user. - CANNOT_SET_ALLOW_FLEXIBLE_COLOR_FALSE = 11; - - // When user select native, no color control is allowed because we will - // always respect publisher color for native format serving. - CANNOT_SET_COLOR_CONTROL_WHEN_NATIVE_FORMAT_SETTING = 12; - - // Cannot specify a url for the ad type - CANNOT_SET_URL = 13; - - // Cannot specify a tracking or mobile url without also setting final urls - CANNOT_SET_WITHOUT_FINAL_URLS = 14; - - // Cannot specify a legacy url and a final url simultaneously - CANNOT_SET_WITH_FINAL_URLS = 15; - - // Cannot specify a urls in UrlData and in template fields simultaneously. - CANNOT_SET_WITH_URL_DATA = 17; - - // This operator cannot be used with a subclass of Ad. - CANNOT_USE_AD_SUBCLASS_FOR_OPERATOR = 18; - - // Customer is not approved for mobile ads. - CUSTOMER_NOT_APPROVED_MOBILEADS = 19; - - // Customer is not approved for 3PAS richmedia ads. - CUSTOMER_NOT_APPROVED_THIRDPARTY_ADS = 20; - - // Customer is not approved for 3PAS redirect richmedia (Ad Exchange) ads. - CUSTOMER_NOT_APPROVED_THIRDPARTY_REDIRECT_ADS = 21; - - // Not an eligible customer - CUSTOMER_NOT_ELIGIBLE = 22; - - // Customer is not eligible for updating beacon url - CUSTOMER_NOT_ELIGIBLE_FOR_UPDATING_BEACON_URL = 23; - - // There already exists an ad with the same dimensions in the union. - DIMENSION_ALREADY_IN_UNION = 24; - - // Ad's dimension must be set before setting union dimension. - DIMENSION_MUST_BE_SET = 25; - - // Ad's dimension must be included in the union dimensions. - DIMENSION_NOT_IN_UNION = 26; - - // Display Url cannot be specified (applies to Ad Exchange Ads) - DISPLAY_URL_CANNOT_BE_SPECIFIED = 27; - - // Telephone number contains invalid characters or invalid format. Please - // re-enter your number using digits (0-9), dashes (-), and parentheses - // only. - DOMESTIC_PHONE_NUMBER_FORMAT = 28; - - // Emergency telephone numbers are not allowed. Please enter a valid - // domestic phone number to connect customers to your business. - EMERGENCY_PHONE_NUMBER = 29; - - // A required field was not specified or is an empty string. - EMPTY_FIELD = 30; - - // A feed attribute referenced in an ad customizer tag is not in the ad - // customizer mapping for the feed. - FEED_ATTRIBUTE_MUST_HAVE_MAPPING_FOR_TYPE_ID = 31; - - // The ad customizer field mapping for the feed attribute does not match the - // expected field type. - FEED_ATTRIBUTE_MAPPING_TYPE_MISMATCH = 32; - - // The use of ad customizer tags in the ad text is disallowed. Details in - // trigger. - ILLEGAL_AD_CUSTOMIZER_TAG_USE = 33; - - // Tags of the form {PH_x}, where x is a number, are disallowed in ad text. - ILLEGAL_TAG_USE = 34; - - // The dimensions of the ad are specified or derived in multiple ways and - // are not consistent. - INCONSISTENT_DIMENSIONS = 35; - - // The status cannot differ among template ads of the same union. - INCONSISTENT_STATUS_IN_TEMPLATE_UNION = 36; - - // The length of the string is not valid. - INCORRECT_LENGTH = 37; - - // The ad is ineligible for upgrade. - INELIGIBLE_FOR_UPGRADE = 38; - - // User cannot create mobile ad for countries targeted in specified - // campaign. - INVALID_AD_ADDRESS_CAMPAIGN_TARGET = 39; - - // Invalid Ad type. A specific type of Ad is required. - INVALID_AD_TYPE = 40; - - // Headline, description or phone cannot be present when creating mobile - // image ad. - INVALID_ATTRIBUTES_FOR_MOBILE_IMAGE = 41; - - // Image cannot be present when creating mobile text ad. - INVALID_ATTRIBUTES_FOR_MOBILE_TEXT = 42; - - // Invalid call to action text. - INVALID_CALL_TO_ACTION_TEXT = 43; - - // Invalid character in URL. - INVALID_CHARACTER_FOR_URL = 44; - - // Creative's country code is not valid. - INVALID_COUNTRY_CODE = 45; - - // Invalid use of Expanded Dynamic Search Ads tags ({lpurl} etc.) - INVALID_EXPANDED_DYNAMIC_SEARCH_AD_TAG = 47; - - // An input error whose real reason was not properly mapped (should not - // happen). - INVALID_INPUT = 48; - - // An invalid markup language was entered. - INVALID_MARKUP_LANGUAGE = 49; - - // An invalid mobile carrier was entered. - INVALID_MOBILE_CARRIER = 50; - - // Specified mobile carriers target a country not targeted by the campaign. - INVALID_MOBILE_CARRIER_TARGET = 51; - - // Wrong number of elements for given element type - INVALID_NUMBER_OF_ELEMENTS = 52; - - // The format of the telephone number is incorrect. Please re-enter the - // number using the correct format. - INVALID_PHONE_NUMBER_FORMAT = 53; - - // The certified vendor format id is incorrect. - INVALID_RICH_MEDIA_CERTIFIED_VENDOR_FORMAT_ID = 54; - - // The template ad data contains validation errors. - INVALID_TEMPLATE_DATA = 55; - - // The template field doesn't have have the correct type. - INVALID_TEMPLATE_ELEMENT_FIELD_TYPE = 56; - - // Invalid template id. - INVALID_TEMPLATE_ID = 57; - - // After substituting replacement strings, the line is too wide. - LINE_TOO_WIDE = 58; - - // The feed referenced must have ad customizer mapping to be used in a - // customizer tag. - MISSING_AD_CUSTOMIZER_MAPPING = 59; - - // Missing address component in template element address field. - MISSING_ADDRESS_COMPONENT = 60; - - // An ad name must be entered. - MISSING_ADVERTISEMENT_NAME = 61; - - // Business name must be entered. - MISSING_BUSINESS_NAME = 62; - - // Description (line 2) must be entered. - MISSING_DESCRIPTION1 = 63; - - // Description (line 3) must be entered. - MISSING_DESCRIPTION2 = 64; - - // The destination url must contain at least one tag (e.g. {lpurl}) - MISSING_DESTINATION_URL_TAG = 65; - - // The tracking url template of ExpandedDynamicSearchAd must contain at - // least one tag. (e.g. {lpurl}) - MISSING_LANDING_PAGE_URL_TAG = 66; - - // A valid dimension must be specified for this ad. - MISSING_DIMENSION = 67; - - // A display URL must be entered. - MISSING_DISPLAY_URL = 68; - - // Headline must be entered. - MISSING_HEADLINE = 69; - - // A height must be entered. - MISSING_HEIGHT = 70; - - // An image must be entered. - MISSING_IMAGE = 71; - - // Marketing image or product videos are required. - MISSING_MARKETING_IMAGE_OR_PRODUCT_VIDEOS = 72; - - // The markup language in which your site is written must be entered. - MISSING_MARKUP_LANGUAGES = 73; - - // A mobile carrier must be entered. - MISSING_MOBILE_CARRIER = 74; - - // Phone number must be entered. - MISSING_PHONE = 75; - - // Missing required template fields - MISSING_REQUIRED_TEMPLATE_FIELDS = 76; - - // Missing a required field value - MISSING_TEMPLATE_FIELD_VALUE = 77; - - // The ad must have text. - MISSING_TEXT = 78; - - // A visible URL must be entered. - MISSING_VISIBLE_URL = 79; - - // A width must be entered. - MISSING_WIDTH = 80; - - // Only 1 feed can be used as the source of ad customizer substitutions in a - // single ad. - MULTIPLE_DISTINCT_FEEDS_UNSUPPORTED = 81; - - // TempAdUnionId must be use when adding template ads. - MUST_USE_TEMP_AD_UNION_ID_ON_ADD = 82; - - // The string has too many characters. - TOO_LONG = 83; - - // The string has too few characters. - TOO_SHORT = 84; - - // Ad union dimensions cannot change for saved ads. - UNION_DIMENSIONS_CANNOT_CHANGE = 85; - - // Address component is not {country, lat, lng}. - UNKNOWN_ADDRESS_COMPONENT = 86; - - // Unknown unique field name - UNKNOWN_FIELD_NAME = 87; - - // Unknown unique name (template element type specifier) - UNKNOWN_UNIQUE_NAME = 88; - - // Unsupported ad dimension - UNSUPPORTED_DIMENSIONS = 89; - - // URL starts with an invalid scheme. - URL_INVALID_SCHEME = 90; - - // URL ends with an invalid top-level domain name. - URL_INVALID_TOP_LEVEL_DOMAIN = 91; - - // URL contains illegal characters. - URL_MALFORMED = 92; - - // URL must contain a host name. - URL_NO_HOST = 93; - - // URL not equivalent during upgrade. - URL_NOT_EQUIVALENT = 94; - - // URL host name too long to be stored as visible URL (applies to Ad - // Exchange ads) - URL_HOST_NAME_TOO_LONG = 95; - - // URL must start with a scheme. - URL_NO_SCHEME = 96; - - // URL should end in a valid domain extension, such as .com or .net. - URL_NO_TOP_LEVEL_DOMAIN = 97; - - // URL must not end with a path. - URL_PATH_NOT_ALLOWED = 98; - - // URL must not specify a port. - URL_PORT_NOT_ALLOWED = 99; - - // URL must not contain a query. - URL_QUERY_NOT_ALLOWED = 100; - - // A url scheme is not allowed in front of tag in tracking url template - // (e.g. http://{lpurl}) - URL_SCHEME_BEFORE_EXPANDED_DYNAMIC_SEARCH_AD_TAG = 102; - - // The user does not have permissions to create a template ad for the given - // template. - USER_DOES_NOT_HAVE_ACCESS_TO_TEMPLATE = 103; - - // Expandable setting is inconsistent/wrong. For example, an AdX ad is - // invalid if it has a expandable vendor format but no expanding directions - // specified, or expanding directions is specified, but the vendor format is - // not expandable. - INCONSISTENT_EXPANDABLE_SETTINGS = 104; - - // Format is invalid - INVALID_FORMAT = 105; - - // The text of this field did not match a pattern of allowed values. - INVALID_FIELD_TEXT = 106; - - // Template element is mising - ELEMENT_NOT_PRESENT = 107; - - // Error occurred during image processing - IMAGE_ERROR = 108; - - // The value is not within the valid range - VALUE_NOT_IN_RANGE = 109; - - // Template element field is not present - FIELD_NOT_PRESENT = 110; - - // Address is incomplete - ADDRESS_NOT_COMPLETE = 111; - - // Invalid address - ADDRESS_INVALID = 112; - - // Error retrieving specified video - VIDEO_RETRIEVAL_ERROR = 113; - - // Error processing audio - AUDIO_ERROR = 114; - - // Display URL is incorrect for YouTube PYV ads - INVALID_YOUTUBE_DISPLAY_URL = 115; - - // Too many product Images in GmailAd - TOO_MANY_PRODUCT_IMAGES = 116; - - // Too many product Videos in GmailAd - TOO_MANY_PRODUCT_VIDEOS = 117; - - // The device preference is not compatible with the ad type - INCOMPATIBLE_AD_TYPE_AND_DEVICE_PREFERENCE = 118; - - // Call tracking is not supported for specified country. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 119; - - // Carrier specific short number is not allowed. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 120; - - // Specified phone number type is disallowed. - DISALLOWED_NUMBER_TYPE = 121; - - // Phone number not supported for country. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 122; - - // Phone number not supported with call tracking enabled for country. - PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 123; - - // Premium rate phone number is not allowed. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 124; - - // Vanity phone number is not allowed. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 125; - - // Invalid call conversion type id. - INVALID_CALL_CONVERSION_TYPE_ID = 126; - - // Cannot disable call conversion and set conversion type id. - CANNOT_DISABLE_CALL_CONVERSION_AND_SET_CONVERSION_TYPE_ID = 127; - - // Cannot set path2 without path1. - CANNOT_SET_PATH2_WITHOUT_PATH1 = 128; - - // Missing domain name in campaign setting when adding expanded dynamic - // search ad. - MISSING_DYNAMIC_SEARCH_ADS_SETTING_DOMAIN_NAME = 129; - - // The associated ad is not compatible with restriction type. - INCOMPATIBLE_WITH_RESTRICTION_TYPE = 130; - - // Consent for call recording is required for creating/updating call only - // ads. Please see https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 131; - - // Either an image or a media bundle is required in a display upload ad. - MISSING_IMAGE_OR_MEDIA_BUNDLE = 132; - - // The display upload product type is not supported in this campaign. - PRODUCT_TYPE_NOT_SUPPORTED_IN_THIS_CAMPAIGN = 133; - - // The default value of an ad placeholder can not be the empty string. - PLACEHOLDER_CANNOT_HAVE_EMPTY_DEFAULT_VALUE = 134; - - // Ad placeholders with countdown functions must not have a default value. - PLACEHOLDER_COUNTDOWN_FUNCTION_CANNOT_HAVE_DEFAULT_VALUE = 135; - - // A previous ad placeholder that had a default value was found which means - // that all (non-countdown) placeholders must have a default value. This - // ad placeholder does not have a default value. - PLACEHOLDER_DEFAULT_VALUE_MISSING = 136; - - // A previous ad placeholder that did not have a default value was found - // which means that no placeholders may have a default value. This - // ad placeholder does have a default value. - UNEXPECTED_PLACEHOLDER_DEFAULT_VALUE = 137; - - // Two ad customizers may not be directly adjacent in an ad text. They must - // be separated by at least one character. - AD_CUSTOMIZERS_MAY_NOT_BE_ADJACENT = 138; - - // The ad is not associated with any enabled AdGroupAd, and cannot be - // updated. - UPDATING_AD_WITH_NO_ENABLED_ASSOCIATION = 139; - - // Too many ad customizers in one asset. - TOO_MANY_AD_CUSTOMIZERS = 141; - - // The ad customizer tag is recognized, but the format is invalid. - INVALID_AD_CUSTOMIZER_FORMAT = 142; - - // Customizer tags cannot be nested. - NESTED_AD_CUSTOMIZER_SYNTAX = 143; - - // The ad customizer syntax used in the ad is not supported. - UNSUPPORTED_AD_CUSTOMIZER_SYNTAX = 144; - - // There exists unpaired brace in the ad customizer tag. - UNPAIRED_BRACE_IN_AD_CUSTOMIZER_TAG = 145; - - // More than one type of countdown tag exists among all text lines. - MORE_THAN_ONE_COUNTDOWN_TAG_TYPE_EXISTS = 146; - - // Date time in the countdown tag is invalid. - DATE_TIME_IN_COUNTDOWN_TAG_IS_INVALID = 147; - - // Date time in the countdown tag is in the past. - DATE_TIME_IN_COUNTDOWN_TAG_IS_PAST = 148; - - // Cannot recognize the ad customizer tag. - UNRECOGNIZED_AD_CUSTOMIZER_TAG_FOUND = 149; - } - - -} diff --git a/google/ads/googleads/v5/errors/ad_group_ad_error.proto b/google/ads/googleads/v5/errors/ad_group_ad_error.proto deleted file mode 100644 index b9bb0ab12..000000000 --- a/google/ads/googleads/v5/errors/ad_group_ad_error.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing ad group ad errors. - -// Container for enum describing possible ad group ad errors. -message AdGroupAdErrorEnum { - // Enum describing possible ad group ad errors. - enum AdGroupAdError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // No link found between the adgroup ad and the label. - AD_GROUP_AD_LABEL_DOES_NOT_EXIST = 2; - - // The label has already been attached to the adgroup ad. - AD_GROUP_AD_LABEL_ALREADY_EXISTS = 3; - - // The specified ad was not found in the adgroup - AD_NOT_UNDER_ADGROUP = 4; - - // Removed ads may not be modified - CANNOT_OPERATE_ON_REMOVED_ADGROUPAD = 5; - - // An ad of this type is deprecated and cannot be created. Only deletions - // are permitted. - CANNOT_CREATE_DEPRECATED_ADS = 6; - - // Text ads are deprecated and cannot be created. Use expanded text ads - // instead. - CANNOT_CREATE_TEXT_ADS = 7; - - // A required field was not specified or is an empty string. - EMPTY_FIELD = 8; - - // An ad may only be modified once per call - RESOURCE_REFERENCED_IN_MULTIPLE_OPS = 9; - - // AdGroupAds with the given ad type cannot be paused. - AD_TYPE_CANNOT_BE_PAUSED = 10; - - // AdGroupAds with the given ad type cannot be removed. - AD_TYPE_CANNOT_BE_REMOVED = 11; - } - - -} diff --git a/google/ads/googleads/v5/errors/ad_group_bid_modifier_error.proto b/google/ads/googleads/v5/errors/ad_group_bid_modifier_error.proto deleted file mode 100644 index 0699214c4..000000000 --- a/google/ads/googleads/v5/errors/ad_group_bid_modifier_error.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupBidModifierErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing ad group bid modifier errors. - -// Container for enum describing possible ad group bid modifier errors. -message AdGroupBidModifierErrorEnum { - // Enum describing possible ad group bid modifier errors. - enum AdGroupBidModifierError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The criterion ID does not support bid modification. - CRITERION_ID_NOT_SUPPORTED = 2; - - // Cannot override the bid modifier for the given criterion ID if the parent - // campaign is opted out of the same criterion. - CANNOT_OVERRIDE_OPTED_OUT_CAMPAIGN_CRITERION_BID_MODIFIER = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/ad_group_criterion_error.proto b/google/ads/googleads/v5/errors/ad_group_criterion_error.proto deleted file mode 100644 index b9176b341..000000000 --- a/google/ads/googleads/v5/errors/ad_group_criterion_error.proto +++ /dev/null @@ -1,137 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing ad group criterion errors. - -// Container for enum describing possible ad group criterion errors. -message AdGroupCriterionErrorEnum { - // Enum describing possible ad group criterion errors. - enum AdGroupCriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // No link found between the AdGroupCriterion and the label. - AD_GROUP_CRITERION_LABEL_DOES_NOT_EXIST = 2; - - // The label has already been attached to the AdGroupCriterion. - AD_GROUP_CRITERION_LABEL_ALREADY_EXISTS = 3; - - // Negative AdGroupCriterion cannot have labels. - CANNOT_ADD_LABEL_TO_NEGATIVE_CRITERION = 4; - - // Too many operations for a single call. - TOO_MANY_OPERATIONS = 5; - - // Negative ad group criteria are not updateable. - CANT_UPDATE_NEGATIVE = 6; - - // Concrete type of criterion (keyword v.s. placement) is required for ADD - // and SET operations. - CONCRETE_TYPE_REQUIRED = 7; - - // Bid is incompatible with ad group's bidding settings. - BID_INCOMPATIBLE_WITH_ADGROUP = 8; - - // Cannot target and exclude the same criterion at once. - CANNOT_TARGET_AND_EXCLUDE = 9; - - // The URL of a placement is invalid. - ILLEGAL_URL = 10; - - // Keyword text was invalid. - INVALID_KEYWORD_TEXT = 11; - - // Destination URL was invalid. - INVALID_DESTINATION_URL = 12; - - // The destination url must contain at least one tag (e.g. {lpurl}) - MISSING_DESTINATION_URL_TAG = 13; - - // Keyword-level cpm bid is not supported - KEYWORD_LEVEL_BID_NOT_SUPPORTED_FOR_MANUALCPM = 14; - - // For example, cannot add a biddable ad group criterion that had been - // removed. - INVALID_USER_STATUS = 15; - - // Criteria type cannot be targeted for the ad group. Either the account is - // restricted to keywords only, the criteria type is incompatible with the - // campaign's bidding strategy, or the criteria type can only be applied to - // campaigns. - CANNOT_ADD_CRITERIA_TYPE = 16; - - // Criteria type cannot be excluded for the ad group. Refer to the - // documentation for a specific criterion to check if it is excludable. - CANNOT_EXCLUDE_CRITERIA_TYPE = 17; - - // Partial failure is not supported for shopping campaign mutate operations. - CAMPAIGN_TYPE_NOT_COMPATIBLE_WITH_PARTIAL_FAILURE = 27; - - // Operations in the mutate request changes too many shopping ad groups. - // Please split requests for multiple shopping ad groups across multiple - // requests. - OPERATIONS_FOR_TOO_MANY_SHOPPING_ADGROUPS = 28; - - // Not allowed to modify url fields of an ad group criterion if there are - // duplicate elements for that ad group criterion in the request. - CANNOT_MODIFY_URL_FIELDS_WITH_DUPLICATE_ELEMENTS = 29; - - // Cannot set url fields without also setting final urls. - CANNOT_SET_WITHOUT_FINAL_URLS = 30; - - // Cannot clear final urls if final mobile urls exist. - CANNOT_CLEAR_FINAL_URLS_IF_FINAL_MOBILE_URLS_EXIST = 31; - - // Cannot clear final urls if final app urls exist. - CANNOT_CLEAR_FINAL_URLS_IF_FINAL_APP_URLS_EXIST = 32; - - // Cannot clear final urls if tracking url template exists. - CANNOT_CLEAR_FINAL_URLS_IF_TRACKING_URL_TEMPLATE_EXISTS = 33; - - // Cannot clear final urls if url custom parameters exist. - CANNOT_CLEAR_FINAL_URLS_IF_URL_CUSTOM_PARAMETERS_EXIST = 34; - - // Cannot set both destination url and final urls. - CANNOT_SET_BOTH_DESTINATION_URL_AND_FINAL_URLS = 35; - - // Cannot set both destination url and tracking url template. - CANNOT_SET_BOTH_DESTINATION_URL_AND_TRACKING_URL_TEMPLATE = 36; - - // Final urls are not supported for this criterion type. - FINAL_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE = 37; - - // Final mobile urls are not supported for this criterion type. - FINAL_MOBILE_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE = 38; - } - - -} diff --git a/google/ads/googleads/v5/errors/ad_group_error.proto b/google/ads/googleads/v5/errors/ad_group_error.proto deleted file mode 100644 index afab15b06..000000000 --- a/google/ads/googleads/v5/errors/ad_group_error.proto +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing ad group errors. - -// Container for enum describing possible ad group errors. -message AdGroupErrorEnum { - // Enum describing possible ad group errors. - enum AdGroupError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // AdGroup with the same name already exists for the campaign. - DUPLICATE_ADGROUP_NAME = 2; - - // AdGroup name is not valid. - INVALID_ADGROUP_NAME = 3; - - // Advertiser is not allowed to target sites or set site bids that are not - // on the Google Search Network. - ADVERTISER_NOT_ON_CONTENT_NETWORK = 5; - - // Bid amount is too big. - BID_TOO_BIG = 6; - - // AdGroup bid does not match the campaign's bidding strategy. - BID_TYPE_AND_BIDDING_STRATEGY_MISMATCH = 7; - - // AdGroup name is required for Add. - MISSING_ADGROUP_NAME = 8; - - // No link found between the ad group and the label. - ADGROUP_LABEL_DOES_NOT_EXIST = 9; - - // The label has already been attached to the ad group. - ADGROUP_LABEL_ALREADY_EXISTS = 10; - - // The CriterionTypeGroup is not supported for the content bid dimension. - INVALID_CONTENT_BID_CRITERION_TYPE_GROUP = 11; - - // The ad group type is not compatible with the campaign channel type. - AD_GROUP_TYPE_NOT_VALID_FOR_ADVERTISING_CHANNEL_TYPE = 12; - - // The ad group type is not supported in the country of sale of the - // campaign. - ADGROUP_TYPE_NOT_SUPPORTED_FOR_CAMPAIGN_SALES_COUNTRY = 13; - - // Ad groups of AdGroupType.SEARCH_DYNAMIC_ADS can only be added to - // campaigns that have DynamicSearchAdsSetting attached. - CANNOT_ADD_ADGROUP_OF_TYPE_DSA_TO_CAMPAIGN_WITHOUT_DSA_SETTING = 14; - - // Promoted hotels ad groups are only available to customers on the - // allow-list. - PROMOTED_HOTEL_AD_GROUPS_NOT_AVAILABLE_FOR_CUSTOMER = 15; - } - - -} diff --git a/google/ads/googleads/v5/errors/ad_group_feed_error.proto b/google/ads/googleads/v5/errors/ad_group_feed_error.proto deleted file mode 100644 index 68d8a5895..000000000 --- a/google/ads/googleads/v5/errors/ad_group_feed_error.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupFeedErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing ad group feed errors. - -// Container for enum describing possible ad group feed errors. -message AdGroupFeedErrorEnum { - // Enum describing possible ad group feed errors. - enum AdGroupFeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active feed already exists for this ad group and place holder type. - FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; - - // The specified feed is removed. - CANNOT_CREATE_FOR_REMOVED_FEED = 3; - - // The AdGroupFeed already exists. UPDATE operation should be used to modify - // the existing AdGroupFeed. - ADGROUP_FEED_ALREADY_EXISTS = 4; - - // Cannot operate on removed AdGroupFeed. - CANNOT_OPERATE_ON_REMOVED_ADGROUP_FEED = 5; - - // Invalid placeholder type. - INVALID_PLACEHOLDER_TYPE = 6; - - // Feed mapping for this placeholder type does not exist. - MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7; - - // Location AdGroupFeeds cannot be created unless there is a location - // CustomerFeed for the specified feed. - NO_EXISTING_LOCATION_CUSTOMER_FEED = 8; - } - - -} diff --git a/google/ads/googleads/v5/errors/ad_parameter_error.proto b/google/ads/googleads/v5/errors/ad_parameter_error.proto deleted file mode 100644 index 1e45b64e4..000000000 --- a/google/ads/googleads/v5/errors/ad_parameter_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdParameterErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing ad parameter errors. - -// Container for enum describing possible ad parameter errors. -message AdParameterErrorEnum { - // Enum describing possible ad parameter errors. - enum AdParameterError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The ad group criterion must be a keyword criterion. - AD_GROUP_CRITERION_MUST_BE_KEYWORD = 2; - - // The insertion text is invalid. - INVALID_INSERTION_TEXT_FORMAT = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/ad_sharing_error.proto b/google/ads/googleads/v5/errors/ad_sharing_error.proto deleted file mode 100644 index fa8faa99c..000000000 --- a/google/ads/googleads/v5/errors/ad_sharing_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdSharingErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing ad sharing errors. - -// Container for enum describing possible ad sharing errors. -message AdSharingErrorEnum { - // Enum describing possible ad sharing errors. - enum AdSharingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Error resulting in attempting to add an Ad to an AdGroup that already - // contains the Ad. - AD_GROUP_ALREADY_CONTAINS_AD = 2; - - // Ad is not compatible with the AdGroup it is being shared with. - INCOMPATIBLE_AD_UNDER_AD_GROUP = 3; - - // Cannot add AdGroupAd on inactive Ad. - CANNOT_SHARE_INACTIVE_AD = 4; - } - - -} diff --git a/google/ads/googleads/v5/errors/adx_error.proto b/google/ads/googleads/v5/errors/adx_error.proto deleted file mode 100644 index 3d0b641a5..000000000 --- a/google/ads/googleads/v5/errors/adx_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdxErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing adx errors. - -// Container for enum describing possible adx errors. -message AdxErrorEnum { - // Enum describing possible adx errors. - enum AdxError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Attempt to use non-AdX feature by AdX customer. - UNSUPPORTED_FEATURE = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/asset_error.proto b/google/ads/googleads/v5/errors/asset_error.proto deleted file mode 100644 index a280e8a9e..000000000 --- a/google/ads/googleads/v5/errors/asset_error.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AssetErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing asset errors. - -// Container for enum describing possible asset errors. -message AssetErrorEnum { - // Enum describing possible asset errors. - enum AssetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The customer is not is not on the allow-list for this asset type. - CUSTOMER_NOT_ON_ALLOWLIST_FOR_ASSET_TYPE = 13; - - // Assets are duplicated across operations. - DUPLICATE_ASSET = 3; - - // The asset name is duplicated, either across operations or with an - // existing asset. - DUPLICATE_ASSET_NAME = 4; - - // The Asset.asset_data oneof is empty. - ASSET_DATA_IS_MISSING = 5; - - // The asset has a name which is different from an existing duplicate that - // represents the same content. - CANNOT_MODIFY_ASSET_NAME = 6; - } - - -} diff --git a/google/ads/googleads/v5/errors/asset_link_error.proto b/google/ads/googleads/v5/errors/asset_link_error.proto deleted file mode 100644 index 1281923d1..000000000 --- a/google/ads/googleads/v5/errors/asset_link_error.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AssetLinkErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing asset link errors. - -// Container for enum describing possible asset link errors. -message AssetLinkErrorEnum { - // Enum describing possible asset link errors. - enum AssetLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Pinning is not supported for the given asset link field. - PINNING_UNSUPPORTED = 2; - - // The given field type is not supported to be added directly via asset - // links. - UNSUPPORTED_FIELD_TYPE = 3; - - // The given asset's type and the specified field type are incompatible. - FIELD_TYPE_INCOMPATIBLE_WITH_ASSET_TYPE = 4; - - // The specified field type is incompatible with the given campaign type. - FIELD_TYPE_INCOMPATIBLE_WITH_CAMPAIGN_TYPE = 5; - } - - -} diff --git a/google/ads/googleads/v5/errors/authentication_error.proto b/google/ads/googleads/v5/errors/authentication_error.proto deleted file mode 100644 index 402c1ed70..000000000 --- a/google/ads/googleads/v5/errors/authentication_error.proto +++ /dev/null @@ -1,103 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AuthenticationErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing authentication errors. - -// Container for enum describing possible authentication errors. -message AuthenticationErrorEnum { - // Enum describing possible authentication errors. - enum AuthenticationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Authentication of the request failed. - AUTHENTICATION_ERROR = 2; - - // Client Customer Id is not a number. - CLIENT_CUSTOMER_ID_INVALID = 5; - - // No customer found for the provided customer id. - CUSTOMER_NOT_FOUND = 8; - - // Client's Google Account is deleted. - GOOGLE_ACCOUNT_DELETED = 9; - - // Google account login token in the cookie is invalid. - GOOGLE_ACCOUNT_COOKIE_INVALID = 10; - - // A problem occurred during Google account authentication. - GOOGLE_ACCOUNT_AUTHENTICATION_FAILED = 25; - - // The user in the google account login token does not match the UserId in - // the cookie. - GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH = 12; - - // Login cookie is required for authentication. - LOGIN_COOKIE_REQUIRED = 13; - - // User in the cookie is not a valid Ads user. - NOT_ADS_USER = 14; - - // Oauth token in the header is not valid. - OAUTH_TOKEN_INVALID = 15; - - // Oauth token in the header has expired. - OAUTH_TOKEN_EXPIRED = 16; - - // Oauth token in the header has been disabled. - OAUTH_TOKEN_DISABLED = 17; - - // Oauth token in the header has been revoked. - OAUTH_TOKEN_REVOKED = 18; - - // Oauth token HTTP header is malformed. - OAUTH_TOKEN_HEADER_INVALID = 19; - - // Login cookie is not valid. - LOGIN_COOKIE_INVALID = 20; - - // User Id in the header is not a valid id. - USER_ID_INVALID = 22; - - // An account administrator changed this account's authentication settings. - // To access this Google Ads account, enable 2-Step Verification in your - // Google account at https://www.google.com/landing/2step. - TWO_STEP_VERIFICATION_NOT_ENROLLED = 23; - - // An account administrator changed this account's authentication settings. - // To access this Google Ads account, enable Advanced Protection in your - // Google account at https://landing.google.com/advancedprotection. - ADVANCED_PROTECTION_NOT_ENROLLED = 24; - } - - -} diff --git a/google/ads/googleads/v5/errors/authorization_error.proto b/google/ads/googleads/v5/errors/authorization_error.proto deleted file mode 100644 index 112cb04cc..000000000 --- a/google/ads/googleads/v5/errors/authorization_error.proto +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AuthorizationErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing authorization errors. - -// Container for enum describing possible authorization errors. -message AuthorizationErrorEnum { - // Enum describing possible authorization errors. - enum AuthorizationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // User doesn't have permission to access customer. Note: If you're - // accessing a client customer, the manager's customer ID must be set in the - // `login-customer-id` header. Learn more at - // https://developers.google.com/google-ads/api/docs/concepts/call-structure#cid - USER_PERMISSION_DENIED = 2; - - // The developer token is not on the allow-list. - DEVELOPER_TOKEN_NOT_ON_ALLOWLIST = 13; - - // The developer token is not allowed with the project sent in the request. - DEVELOPER_TOKEN_PROHIBITED = 4; - - // The Google Cloud project sent in the request does not have permission to - // access the api. - PROJECT_DISABLED = 5; - - // Authorization of the client failed. - AUTHORIZATION_ERROR = 6; - - // The user does not have permission to perform this action - // (e.g., ADD, UPDATE, REMOVE) on the resource or call a method. - ACTION_NOT_PERMITTED = 7; - - // Signup not complete. - INCOMPLETE_SIGNUP = 8; - - // The customer can't be used because it isn't enabled. - CUSTOMER_NOT_ENABLED = 24; - - // The developer must sign the terms of service. They can be found here: - // ads.google.com/aw/apicenter - MISSING_TOS = 9; - - // The developer token is not approved. Non-approved developer tokens can - // only be used with test accounts. - DEVELOPER_TOKEN_NOT_APPROVED = 10; - - // The login customer specified does not have access to the account - // specified, so the request is invalid. - INVALID_LOGIN_CUSTOMER_ID_SERVING_CUSTOMER_ID_COMBINATION = 11; - - // The developer specified does not have access to the service. - SERVICE_ACCESS_DENIED = 12; - } - - -} diff --git a/google/ads/googleads/v5/errors/batch_job_error.proto b/google/ads/googleads/v5/errors/batch_job_error.proto deleted file mode 100644 index d6c4d6abe..000000000 --- a/google/ads/googleads/v5/errors/batch_job_error.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing batch job errors. - -// Container for enum describing possible batch job errors. -message BatchJobErrorEnum { - // Enum describing possible request errors. - enum BatchJobError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The batch job cannot add more operations or run after it has started - // running. - CANNOT_MODIFY_JOB_AFTER_JOB_STARTS_RUNNING = 2; - - // The operations for an AddBatchJobOperations request were empty. - EMPTY_OPERATIONS = 3; - - // The sequence token for an AddBatchJobOperations request was invalid. - INVALID_SEQUENCE_TOKEN = 4; - - // Batch job results can only be retrieved once the job is finished. - RESULTS_NOT_READY = 5; - - // The page size for ListBatchJobResults was invalid. - INVALID_PAGE_SIZE = 6; - - // The batch job cannot be removed because it has started running. - CAN_ONLY_REMOVE_PENDING_JOB = 7; - } - - -} diff --git a/google/ads/googleads/v5/errors/bidding_error.proto b/google/ads/googleads/v5/errors/bidding_error.proto deleted file mode 100644 index 07884d9e7..000000000 --- a/google/ads/googleads/v5/errors/bidding_error.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BiddingErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing bidding errors. - -// Container for enum describing possible bidding errors. -message BiddingErrorEnum { - // Enum describing possible bidding errors. - enum BiddingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot transition to new bidding strategy. - BIDDING_STRATEGY_TRANSITION_NOT_ALLOWED = 2; - - // Cannot attach bidding strategy to campaign. - CANNOT_ATTACH_BIDDING_STRATEGY_TO_CAMPAIGN = 7; - - // Bidding strategy is not supported or cannot be used as anonymous. - INVALID_ANONYMOUS_BIDDING_STRATEGY_TYPE = 10; - - // The type does not match the named strategy's type. - INVALID_BIDDING_STRATEGY_TYPE = 14; - - // The bid is invalid. - INVALID_BID = 17; - - // Bidding strategy is not available for the account type. - BIDDING_STRATEGY_NOT_AVAILABLE_FOR_ACCOUNT_TYPE = 18; - - // Conversion tracking is not enabled in the campaign that has value-based - // bidding transitions. - CONVERSION_TRACKING_NOT_ENABLED = 19; - - // Not enough conversions tracked for value-based bidding transitions. - NOT_ENOUGH_CONVERSIONS = 20; - - // Campaign can not be created with given bidding strategy. It can be - // transitioned to the strategy, once eligible. - CANNOT_CREATE_CAMPAIGN_WITH_BIDDING_STRATEGY = 21; - - // Cannot target content network only as campaign uses Page One Promoted - // bidding strategy. - CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CAMPAIGN_LEVEL_POP_BIDDING_STRATEGY = 23; - - // Budget Optimizer and Target Spend bidding strategies are not supported - // for campaigns with AdSchedule targeting. - BIDDING_STRATEGY_NOT_SUPPORTED_WITH_AD_SCHEDULE = 24; - - // Pay per conversion is not available to all the customer, only few - // customers on the allow-list can use this. - PAY_PER_CONVERSION_NOT_AVAILABLE_FOR_CUSTOMER = 25; - - // Pay per conversion is not allowed with Target CPA. - PAY_PER_CONVERSION_NOT_ALLOWED_WITH_TARGET_CPA = 26; - - // Cannot set bidding strategy to Manual CPM for search network only - // campaigns. - BIDDING_STRATEGY_NOT_ALLOWED_FOR_SEARCH_ONLY_CAMPAIGNS = 27; - - // The bidding strategy is not supported for use in drafts or experiments. - BIDDING_STRATEGY_NOT_SUPPORTED_IN_DRAFTS_OR_EXPERIMENTS = 28; - - // Bidding strategy type does not support product type ad group criterion. - BIDDING_STRATEGY_TYPE_DOES_NOT_SUPPORT_PRODUCT_TYPE_ADGROUP_CRITERION = 29; - - // Bid amount is too small. - BID_TOO_SMALL = 30; - - // Bid amount is too big. - BID_TOO_BIG = 31; - - // Bid has too many fractional digit precision. - BID_TOO_MANY_FRACTIONAL_DIGITS = 32; - - // Invalid domain name specified. - INVALID_DOMAIN_NAME = 33; - - // The field is not compatible with the payment mode. - NOT_COMPATIBLE_WITH_PAYMENT_MODE = 34; - - // The field is not compatible with the budget type. - NOT_COMPATIBLE_WITH_BUDGET_TYPE = 35; - - // The field is not compatible with the bidding strategy type. - NOT_COMPATIBLE_WITH_BIDDING_STRATEGY_TYPE = 36; - - // Bidding strategy type is incompatible with shared budget. - BIDDING_STRATEGY_TYPE_INCOMPATIBLE_WITH_SHARED_BUDGET = 37; - } - - -} diff --git a/google/ads/googleads/v5/errors/bidding_strategy_error.proto b/google/ads/googleads/v5/errors/bidding_strategy_error.proto deleted file mode 100644 index 4c3f223d8..000000000 --- a/google/ads/googleads/v5/errors/bidding_strategy_error.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing bidding strategy errors. - -// Container for enum describing possible bidding strategy errors. -message BiddingStrategyErrorEnum { - // Enum describing possible bidding strategy errors. - enum BiddingStrategyError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Each bidding strategy must have a unique name. - DUPLICATE_NAME = 2; - - // Bidding strategy type is immutable. - CANNOT_CHANGE_BIDDING_STRATEGY_TYPE = 3; - - // Only bidding strategies not linked to campaigns, adgroups or adgroup - // criteria can be removed. - CANNOT_REMOVE_ASSOCIATED_STRATEGY = 4; - - // The specified bidding strategy is not supported. - BIDDING_STRATEGY_NOT_SUPPORTED = 5; - - // The bidding strategy is incompatible with the campaign's bidding - // strategy goal type. - INCOMPATIBLE_BIDDING_STRATEGY_AND_BIDDING_STRATEGY_GOAL_TYPE = 6; - } - - -} diff --git a/google/ads/googleads/v5/errors/billing_setup_error.proto b/google/ads/googleads/v5/errors/billing_setup_error.proto deleted file mode 100644 index 129f23660..000000000 --- a/google/ads/googleads/v5/errors/billing_setup_error.proto +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing billing setup errors. - -// Container for enum describing possible billing setup errors. -message BillingSetupErrorEnum { - // Enum describing possible billing setup errors. - enum BillingSetupError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot specify both an existing payments account and a new payments - // account when setting up billing. - CANNOT_USE_EXISTING_AND_NEW_ACCOUNT = 2; - - // Cannot cancel an approved billing setup whose start time has passed. - CANNOT_REMOVE_STARTED_BILLING_SETUP = 3; - - // Cannot perform a Change of Bill-To (CBT) to the same payments account. - CANNOT_CHANGE_BILLING_TO_SAME_PAYMENTS_ACCOUNT = 4; - - // Billing setups can only be used by customers with ENABLED or DRAFT - // status. - BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_STATUS = 5; - - // Billing setups must either include a correctly formatted existing - // payments account id, or a non-empty new payments account name. - INVALID_PAYMENTS_ACCOUNT = 6; - - // Only billable and third-party customers can create billing setups. - BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_CATEGORY = 7; - - // Billing setup creations can only use NOW for start time type. - INVALID_START_TIME_TYPE = 8; - - // Billing setups can only be created for a third-party customer if they do - // not already have a setup. - THIRD_PARTY_ALREADY_HAS_BILLING = 9; - - // Billing setups cannot be created if there is already a pending billing in - // progress. - BILLING_SETUP_IN_PROGRESS = 10; - - // Billing setups can only be created by customers who have permission to - // setup billings. Users can contact a representative for help setting up - // permissions. - NO_SIGNUP_PERMISSION = 11; - - // Billing setups cannot be created if there is already a future-approved - // billing. - CHANGE_OF_BILL_TO_IN_PROGRESS = 12; - - // Requested payments profile not found. - PAYMENTS_PROFILE_NOT_FOUND = 13; - - // Requested payments account not found. - PAYMENTS_ACCOUNT_NOT_FOUND = 14; - - // Billing setup creation failed because the payments profile is ineligible. - PAYMENTS_PROFILE_INELIGIBLE = 15; - - // Billing setup creation failed because the payments account is ineligible. - PAYMENTS_ACCOUNT_INELIGIBLE = 16; - - // Billing setup creation failed because the payments profile needs internal - // approval. - CUSTOMER_NEEDS_INTERNAL_APPROVAL = 17; - - // Payments account has different currency code than the current customer - // and hence cannot be used to setup billing. - PAYMENTS_ACCOUNT_INELIGIBLE_CURRENCY_CODE_MISMATCH = 19; - } - - -} diff --git a/google/ads/googleads/v5/errors/campaign_budget_error.proto b/google/ads/googleads/v5/errors/campaign_budget_error.proto deleted file mode 100644 index c21804858..000000000 --- a/google/ads/googleads/v5/errors/campaign_budget_error.proto +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBudgetErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing campaign budget errors. - -// Container for enum describing possible campaign budget errors. -message CampaignBudgetErrorEnum { - // Enum describing possible campaign budget errors. - enum CampaignBudgetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The campaign budget cannot be shared. - CAMPAIGN_BUDGET_CANNOT_BE_SHARED = 17; - - // The requested campaign budget no longer exists. - CAMPAIGN_BUDGET_REMOVED = 2; - - // The campaign budget is associated with at least one campaign, and so the - // campaign budget cannot be removed. - CAMPAIGN_BUDGET_IN_USE = 3; - - // Customer is not on the allow-list for this campaign budget period. - CAMPAIGN_BUDGET_PERIOD_NOT_AVAILABLE = 4; - - // This field is not mutable on implicitly shared campaign budgets - CANNOT_MODIFY_FIELD_OF_IMPLICITLY_SHARED_CAMPAIGN_BUDGET = 6; - - // Cannot change explicitly shared campaign budgets back to implicitly - // shared ones. - CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_IMPLICITLY_SHARED = 7; - - // An implicit campaign budget without a name cannot be changed to - // explicitly shared campaign budget. - CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED_WITHOUT_NAME = 8; - - // Cannot change an implicitly shared campaign budget to an explicitly - // shared one. - CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED = 9; - - // Only explicitly shared campaign budgets can be used with multiple - // campaigns. - CANNOT_USE_IMPLICITLY_SHARED_CAMPAIGN_BUDGET_WITH_MULTIPLE_CAMPAIGNS = 10; - - // A campaign budget with this name already exists. - DUPLICATE_NAME = 11; - - // A money amount was not in the expected currency. - MONEY_AMOUNT_IN_WRONG_CURRENCY = 12; - - // A money amount was less than the minimum CPC for currency. - MONEY_AMOUNT_LESS_THAN_CURRENCY_MINIMUM_CPC = 13; - - // A money amount was greater than the maximum allowed. - MONEY_AMOUNT_TOO_LARGE = 14; - - // A money amount was negative. - NEGATIVE_MONEY_AMOUNT = 15; - - // A money amount was not a multiple of a minimum unit. - NON_MULTIPLE_OF_MINIMUM_CURRENCY_UNIT = 16; - - // Total budget amount must be unset when BudgetPeriod is DAILY. - TOTAL_BUDGET_AMOUNT_MUST_BE_UNSET_FOR_BUDGET_PERIOD_DAILY = 18; - } - - -} diff --git a/google/ads/googleads/v5/errors/campaign_criterion_error.proto b/google/ads/googleads/v5/errors/campaign_criterion_error.proto deleted file mode 100644 index f925af74b..000000000 --- a/google/ads/googleads/v5/errors/campaign_criterion_error.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing campaign criterion errors. - -// Container for enum describing possible campaign criterion errors. -message CampaignCriterionErrorEnum { - // Enum describing possible campaign criterion errors. - enum CampaignCriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Concrete type of criterion (keyword v.s. placement) is required for - // CREATE and UPDATE operations. - CONCRETE_TYPE_REQUIRED = 2; - - // Invalid placement URL. - INVALID_PLACEMENT_URL = 3; - - // Criteria type can not be excluded for the campaign by the customer. like - // AOL account type cannot target site type criteria - CANNOT_EXCLUDE_CRITERIA_TYPE = 4; - - // Cannot set the campaign criterion status for this criteria type. - CANNOT_SET_STATUS_FOR_CRITERIA_TYPE = 5; - - // Cannot set the campaign criterion status for an excluded criteria. - CANNOT_SET_STATUS_FOR_EXCLUDED_CRITERIA = 6; - - // Cannot target and exclude the same criterion. - CANNOT_TARGET_AND_EXCLUDE = 7; - - // The mutate contained too many operations. - TOO_MANY_OPERATIONS = 8; - - // This operator cannot be applied to a criterion of this type. - OPERATOR_NOT_SUPPORTED_FOR_CRITERION_TYPE = 9; - - // The Shopping campaign sales country is not supported for - // ProductSalesChannel targeting. - SHOPPING_CAMPAIGN_SALES_COUNTRY_NOT_SUPPORTED_FOR_SALES_CHANNEL = 10; - - // The existing field can't be updated with CREATE operation. It can be - // updated with UPDATE operation only. - CANNOT_ADD_EXISTING_FIELD = 11; - - // Negative criteria are immutable, so updates are not allowed. - CANNOT_UPDATE_NEGATIVE_CRITERION = 12; - } - - -} diff --git a/google/ads/googleads/v5/errors/campaign_draft_error.proto b/google/ads/googleads/v5/errors/campaign_draft_error.proto deleted file mode 100644 index d6fae18c5..000000000 --- a/google/ads/googleads/v5/errors/campaign_draft_error.proto +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing campaign draft errors. - -// Container for enum describing possible campaign draft errors. -message CampaignDraftErrorEnum { - // Enum describing possible campaign draft errors. - enum CampaignDraftError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A draft with this name already exists for this campaign. - DUPLICATE_DRAFT_NAME = 2; - - // The draft is removed and cannot be transitioned to another status. - INVALID_STATUS_TRANSITION_FROM_REMOVED = 3; - - // The draft has been promoted and cannot be transitioned to the specified - // status. - INVALID_STATUS_TRANSITION_FROM_PROMOTED = 4; - - // The draft has failed to be promoted and cannot be transitioned to the - // specified status. - INVALID_STATUS_TRANSITION_FROM_PROMOTE_FAILED = 5; - - // This customer is not allowed to create drafts. - CUSTOMER_CANNOT_CREATE_DRAFT = 6; - - // This campaign is not allowed to create drafts. - CAMPAIGN_CANNOT_CREATE_DRAFT = 7; - - // This modification cannot be made on a draft. - INVALID_DRAFT_CHANGE = 8; - - // The draft cannot be transitioned to the specified status from its - // current status. - INVALID_STATUS_TRANSITION = 9; - - // The campaign has reached the maximum number of drafts that can be created - // for a campaign throughout its lifetime. No additional drafts can be - // created for this campaign. Removed drafts also count towards this limit. - MAX_NUMBER_OF_DRAFTS_PER_CAMPAIGN_REACHED = 10; - - // ListAsyncErrors was called without first promoting the draft. - LIST_ERRORS_FOR_PROMOTED_DRAFT_ONLY = 11; - } - - -} diff --git a/google/ads/googleads/v5/errors/campaign_error.proto b/google/ads/googleads/v5/errors/campaign_error.proto deleted file mode 100644 index 3d597e14c..000000000 --- a/google/ads/googleads/v5/errors/campaign_error.proto +++ /dev/null @@ -1,179 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing campaign errors. - -// Container for enum describing possible campaign errors. -message CampaignErrorEnum { - // Enum describing possible campaign errors. - enum CampaignError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot target content network. - CANNOT_TARGET_CONTENT_NETWORK = 3; - - // Cannot target search network. - CANNOT_TARGET_SEARCH_NETWORK = 4; - - // Cannot cover search network without google search network. - CANNOT_TARGET_SEARCH_NETWORK_WITHOUT_GOOGLE_SEARCH = 5; - - // Cannot target Google Search network for a CPM campaign. - CANNOT_TARGET_GOOGLE_SEARCH_FOR_CPM_CAMPAIGN = 6; - - // Must target at least one network. - CAMPAIGN_MUST_TARGET_AT_LEAST_ONE_NETWORK = 7; - - // Only some Google partners are allowed to target partner search network. - CANNOT_TARGET_PARTNER_SEARCH_NETWORK = 8; - - // Cannot target content network only as campaign has criteria-level bidding - // strategy. - CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CRITERIA_LEVEL_BIDDING_STRATEGY = 9; - - // Cannot modify the start or end date such that the campaign duration would - // not contain the durations of all runnable trials. - CAMPAIGN_DURATION_MUST_CONTAIN_ALL_RUNNABLE_TRIALS = 10; - - // Cannot modify dates, budget or campaign name of a trial campaign. - CANNOT_MODIFY_FOR_TRIAL_CAMPAIGN = 11; - - // Trying to modify the name of an active or paused campaign, where the name - // is already assigned to another active or paused campaign. - DUPLICATE_CAMPAIGN_NAME = 12; - - // Two fields are in conflicting modes. - INCOMPATIBLE_CAMPAIGN_FIELD = 13; - - // Campaign name cannot be used. - INVALID_CAMPAIGN_NAME = 14; - - // Given status is invalid. - INVALID_AD_SERVING_OPTIMIZATION_STATUS = 15; - - // Error in the campaign level tracking URL. - INVALID_TRACKING_URL = 16; - - // Cannot set both tracking URL template and tracking setting. A user has - // to clear legacy tracking setting in order to add tracking URL template. - CANNOT_SET_BOTH_TRACKING_URL_TEMPLATE_AND_TRACKING_SETTING = 17; - - // The maximum number of impressions for Frequency Cap should be an integer - // greater than 0. - MAX_IMPRESSIONS_NOT_IN_RANGE = 18; - - // Only the Day, Week and Month time units are supported. - TIME_UNIT_NOT_SUPPORTED = 19; - - // Operation not allowed on a campaign whose serving status has ended - INVALID_OPERATION_IF_SERVING_STATUS_HAS_ENDED = 20; - - // This budget is exclusively linked to a Campaign that is using experiments - // so it cannot be shared. - BUDGET_CANNOT_BE_SHARED = 21; - - // Campaigns using experiments cannot use a shared budget. - CAMPAIGN_CANNOT_USE_SHARED_BUDGET = 22; - - // A different budget cannot be assigned to a campaign when there are - // running or scheduled trials. - CANNOT_CHANGE_BUDGET_ON_CAMPAIGN_WITH_TRIALS = 23; - - // No link found between the campaign and the label. - CAMPAIGN_LABEL_DOES_NOT_EXIST = 24; - - // The label has already been attached to the campaign. - CAMPAIGN_LABEL_ALREADY_EXISTS = 25; - - // A ShoppingSetting was not found when creating a shopping campaign. - MISSING_SHOPPING_SETTING = 26; - - // The country in shopping setting is not an allowed country. - INVALID_SHOPPING_SALES_COUNTRY = 27; - - // The requested channel type is not available according to the customer's - // account setting. - ADVERTISING_CHANNEL_TYPE_NOT_AVAILABLE_FOR_ACCOUNT_TYPE = 31; - - // The AdvertisingChannelSubType is not a valid subtype of the primary - // channel type. - INVALID_ADVERTISING_CHANNEL_SUB_TYPE = 32; - - // At least one conversion must be selected. - AT_LEAST_ONE_CONVERSION_MUST_BE_SELECTED = 33; - - // Setting ad rotation mode for a campaign is not allowed. Ad rotation mode - // at campaign is deprecated. - CANNOT_SET_AD_ROTATION_MODE = 34; - - // Trying to change start date on a campaign that has started. - CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED = 35; - - // Trying to modify a date into the past. - CANNOT_SET_DATE_TO_PAST = 36; - - // Hotel center id in the hotel setting does not match any customer links. - MISSING_HOTEL_CUSTOMER_LINK = 37; - - // Hotel center id in the hotel setting must match an active customer link. - INVALID_HOTEL_CUSTOMER_LINK = 38; - - // Hotel setting was not found when creating a hotel ads campaign. - MISSING_HOTEL_SETTING = 39; - - // A Campaign cannot use shared campaign budgets and be part of a campaign - // group. - CANNOT_USE_SHARED_CAMPAIGN_BUDGET_WHILE_PART_OF_CAMPAIGN_GROUP = 40; - - // The app ID was not found. - APP_NOT_FOUND = 41; - - // Campaign.shopping_setting.enable_local is not supported for the specified - // campaign type. - SHOPPING_ENABLE_LOCAL_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE = 42; - - // The merchant does not support the creation of campaigns for Shopping - // Comparison Listing Ads. - MERCHANT_NOT_ALLOWED_FOR_COMPARISON_LISTING_ADS = 43; - - // The App campaign for engagement cannot be created because there aren't - // enough installs. - INSUFFICIENT_APP_INSTALLS_COUNT = 44; - - // The App campaign for engagement cannot be created because the app is - // sensitive. - SENSITIVE_CATEGORY_APP = 45; - } - - -} diff --git a/google/ads/googleads/v5/errors/campaign_experiment_error.proto b/google/ads/googleads/v5/errors/campaign_experiment_error.proto deleted file mode 100644 index 5a4fd3c1f..000000000 --- a/google/ads/googleads/v5/errors/campaign_experiment_error.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing campaign experiment errors. - -// Container for enum describing possible campaign experiment errors. -message CampaignExperimentErrorEnum { - // Enum describing possible campaign experiment errors. - enum CampaignExperimentError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active campaign or experiment with this name already exists. - DUPLICATE_NAME = 2; - - // Experiment cannot be updated from the current state to the - // requested target state. For example, an experiment can only graduate - // if its status is ENABLED. - INVALID_TRANSITION = 3; - - // Cannot create an experiment from a campaign using an explicitly shared - // budget. - CANNOT_CREATE_EXPERIMENT_WITH_SHARED_BUDGET = 4; - - // Cannot create an experiment for a removed base campaign. - CANNOT_CREATE_EXPERIMENT_FOR_REMOVED_BASE_CAMPAIGN = 5; - - // Cannot create an experiment from a draft, which has a status other than - // proposed. - CANNOT_CREATE_EXPERIMENT_FOR_NON_PROPOSED_DRAFT = 6; - - // This customer is not allowed to create an experiment. - CUSTOMER_CANNOT_CREATE_EXPERIMENT = 7; - - // This campaign is not allowed to create an experiment. - CAMPAIGN_CANNOT_CREATE_EXPERIMENT = 8; - - // Trying to set an experiment duration which overlaps with another - // experiment. - EXPERIMENT_DURATIONS_MUST_NOT_OVERLAP = 9; - - // All non-removed experiments must start and end within their campaign's - // duration. - EXPERIMENT_DURATION_MUST_BE_WITHIN_CAMPAIGN_DURATION = 10; - - // The experiment cannot be modified because its status is in a terminal - // state, such as REMOVED. - CANNOT_MUTATE_EXPERIMENT_DUE_TO_STATUS = 11; - } - - -} diff --git a/google/ads/googleads/v5/errors/campaign_feed_error.proto b/google/ads/googleads/v5/errors/campaign_feed_error.proto deleted file mode 100644 index 52a3f0a8e..000000000 --- a/google/ads/googleads/v5/errors/campaign_feed_error.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignFeedErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing campaign feed errors. - -// Container for enum describing possible campaign feed errors. -message CampaignFeedErrorEnum { - // Enum describing possible campaign feed errors. - enum CampaignFeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active feed already exists for this campaign and placeholder type. - FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; - - // The specified feed is removed. - CANNOT_CREATE_FOR_REMOVED_FEED = 4; - - // The CampaignFeed already exists. UPDATE should be used to modify the - // existing CampaignFeed. - CANNOT_CREATE_ALREADY_EXISTING_CAMPAIGN_FEED = 5; - - // Cannot update removed campaign feed. - CANNOT_MODIFY_REMOVED_CAMPAIGN_FEED = 6; - - // Invalid placeholder type. - INVALID_PLACEHOLDER_TYPE = 7; - - // Feed mapping for this placeholder type does not exist. - MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 8; - - // Location CampaignFeeds cannot be created unless there is a location - // CustomerFeed for the specified feed. - NO_EXISTING_LOCATION_CUSTOMER_FEED = 9; - } - - -} diff --git a/google/ads/googleads/v5/errors/campaign_shared_set_error.proto b/google/ads/googleads/v5/errors/campaign_shared_set_error.proto deleted file mode 100644 index e4c88529b..000000000 --- a/google/ads/googleads/v5/errors/campaign_shared_set_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing campaign shared set errors. - -// Container for enum describing possible campaign shared set errors. -message CampaignSharedSetErrorEnum { - // Enum describing possible campaign shared set errors. - enum CampaignSharedSetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The shared set belongs to another customer and permission isn't granted. - SHARED_SET_ACCESS_DENIED = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/change_status_error.proto b/google/ads/googleads/v5/errors/change_status_error.proto deleted file mode 100644 index d580c3091..000000000 --- a/google/ads/googleads/v5/errors/change_status_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing change status errors. - -// Container for enum describing possible change status errors. -message ChangeStatusErrorEnum { - // Enum describing possible change status errors. - enum ChangeStatusError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The requested start date is too old. - START_DATE_TOO_OLD = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/collection_size_error.proto b/google/ads/googleads/v5/errors/collection_size_error.proto deleted file mode 100644 index 3fe093f65..000000000 --- a/google/ads/googleads/v5/errors/collection_size_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CollectionSizeErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing collection size errors. - -// Container for enum describing possible collection size errors. -message CollectionSizeErrorEnum { - // Enum describing possible collection size errors. - enum CollectionSizeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Too few. - TOO_FEW = 2; - - // Too many. - TOO_MANY = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/context_error.proto b/google/ads/googleads/v5/errors/context_error.proto deleted file mode 100644 index fb6e8b196..000000000 --- a/google/ads/googleads/v5/errors/context_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ContextErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing context errors. - -// Container for enum describing possible context errors. -message ContextErrorEnum { - // Enum describing possible context errors. - enum ContextError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The operation is not allowed for the given context. - OPERATION_NOT_PERMITTED_FOR_CONTEXT = 2; - - // The operation is not allowed for removed resources. - OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/conversion_action_error.proto b/google/ads/googleads/v5/errors/conversion_action_error.proto deleted file mode 100644 index 94bfedc5b..000000000 --- a/google/ads/googleads/v5/errors/conversion_action_error.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing conversion action errors. - -// Container for enum describing possible conversion action errors. -message ConversionActionErrorEnum { - // Enum describing possible conversion action errors. - enum ConversionActionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified conversion action name already exists. - DUPLICATE_NAME = 2; - - // Another conversion action with the specified app id already exists. - DUPLICATE_APP_ID = 3; - - // Android first open action conflicts with Google play codeless download - // action tracking the same app. - TWO_CONVERSION_ACTIONS_BIDDING_ON_SAME_APP_DOWNLOAD = 4; - - // Android first open action conflicts with Google play codeless download - // action tracking the same app. - BIDDING_ON_SAME_APP_DOWNLOAD_AS_GLOBAL_ACTION = 5; - - // The attribution model cannot be set to DATA_DRIVEN because a data-driven - // model has never been generated. - DATA_DRIVEN_MODEL_WAS_NEVER_GENERATED = 6; - - // The attribution model cannot be set to DATA_DRIVEN because the - // data-driven model is expired. - DATA_DRIVEN_MODEL_EXPIRED = 7; - - // The attribution model cannot be set to DATA_DRIVEN because the - // data-driven model is stale. - DATA_DRIVEN_MODEL_STALE = 8; - - // The attribution model cannot be set to DATA_DRIVEN because the - // data-driven model is unavailable or the conversion action was newly - // added. - DATA_DRIVEN_MODEL_UNKNOWN = 9; - - // Creation of this conversion action type isn't supported by Google - // Ads API. - CREATION_NOT_SUPPORTED = 10; - - // Update of this conversion action isn't supported by Google Ads API. - UPDATE_NOT_SUPPORTED = 11; - } - - -} diff --git a/google/ads/googleads/v5/errors/conversion_adjustment_upload_error.proto b/google/ads/googleads/v5/errors/conversion_adjustment_upload_error.proto deleted file mode 100644 index 9e0bd7a80..000000000 --- a/google/ads/googleads/v5/errors/conversion_adjustment_upload_error.proto +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAdjustmentUploadErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing conversion adjustment upload errors. - -// Container for enum describing possible conversion adjustment upload errors. -message ConversionAdjustmentUploadErrorEnum { - // Enum describing possible conversion adjustment upload errors. - enum ConversionAdjustmentUploadError { - // Not specified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified conversion action was created too recently. - // Please try the upload again after 4-6 hours have passed since the - // conversion action was created. - TOO_RECENT_CONVERSION_ACTION = 2; - - // No conversion action of a supported ConversionActionType that matches the - // provided information can be found for the customer. - INVALID_CONVERSION_ACTION = 3; - - // A retraction was already reported for this conversion. - CONVERSION_ALREADY_RETRACTED = 4; - - // A conversion for the supplied combination of conversion - // action and conversion identifier could not be found. - CONVERSION_NOT_FOUND = 5; - - // The specified conversion has already expired. Conversions expire after 55 - // days, after which adjustments cannot be reported against them. - CONVERSION_EXPIRED = 6; - - // The supplied adjustment date time precedes that of the original - // conversion. - ADJUSTMENT_PRECEDES_CONVERSION = 7; - - // A restatement with a more recent adjustment date time was already - // reported for this conversion. - MORE_RECENT_RESTATEMENT_FOUND = 8; - - // The conversion was created too recently. - TOO_RECENT_CONVERSION = 9; - - // Restatements cannot be reported for a conversion action that always uses - // the default value. - CANNOT_RESTATE_CONVERSION_ACTION_THAT_ALWAYS_USES_DEFAULT_CONVERSION_VALUE = 10; - - // The request contained more than 2000 adjustments. - TOO_MANY_ADJUSTMENTS_IN_REQUEST = 11; - - // The conversion has been adjusted too many times. - TOO_MANY_ADJUSTMENTS = 12; - } - - -} diff --git a/google/ads/googleads/v5/errors/conversion_upload_error.proto b/google/ads/googleads/v5/errors/conversion_upload_error.proto deleted file mode 100644 index ee2f81dbb..000000000 --- a/google/ads/googleads/v5/errors/conversion_upload_error.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ConversionUploadErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing conversion upload errors. - -// Container for enum describing possible conversion upload errors. -message ConversionUploadErrorEnum { - // Enum describing possible conversion upload errors. - enum ConversionUploadError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The request contained more than 2000 conversions. - TOO_MANY_CONVERSIONS_IN_REQUEST = 2; - - // The specified gclid could not be decoded. - UNPARSEABLE_GCLID = 3; - - // The specified conversion_date_time is before the event time - // associated with the given gclid. - CONVERSION_PRECEDES_GCLID = 4; - - // The click associated with the given gclid is either too old to be - // imported or occurred outside of the click through lookback window for the - // specified conversion action. - EXPIRED_GCLID = 5; - - // The click associated with the given gclid occurred too recently. Please - // try uploading again after 6 hours have passed since the click occurred. - TOO_RECENT_GCLID = 6; - - // The click associated with the given gclid could not be found in the - // system. This can happen if Google Click IDs are collected for non Google - // Ads clicks. - GCLID_NOT_FOUND = 7; - - // The click associated with the given gclid is owned by a customer - // account that the uploading customer does not manage. - UNAUTHORIZED_CUSTOMER = 8; - - // No upload eligible conversion action that matches the provided - // information can be found for the customer. - INVALID_CONVERSION_ACTION = 9; - - // The specified conversion action was created too recently. - // Please try the upload again after 4-6 hours have passed since the - // conversion action was created. - TOO_RECENT_CONVERSION_ACTION = 10; - - // The click associated with the given gclid does not contain conversion - // tracking information. - CONVERSION_TRACKING_NOT_ENABLED_AT_IMPRESSION_TIME = 11; - - // The specified conversion action does not use an external attribution - // model, but external_attribution_data was set. - EXTERNAL_ATTRIBUTION_DATA_SET_FOR_NON_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 12; - - // The specified conversion action uses an external attribution model, but - // external_attribution_data or one of its contained fields was not set. - // Both external_attribution_credit and external_attribution_model must be - // set for externally attributed conversion actions. - EXTERNAL_ATTRIBUTION_DATA_NOT_SET_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 13; - - // Order IDs are not supported for conversion actions which use an external - // attribution model. - ORDER_ID_NOT_PERMITTED_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 14; - - // A conversion with the same order id and conversion action combination - // already exists in our system. - ORDER_ID_ALREADY_IN_USE = 15; - - // The request contained two or more conversions with the same order id and - // conversion action combination. - DUPLICATE_ORDER_ID = 16; - - // The call occurred too recently. Please try uploading again after 12 hours - // have passed since the call occurred. - TOO_RECENT_CALL = 17; - - // The click that initiated the call is too old for this conversion to be - // imported. - EXPIRED_CALL = 18; - - // The call or the click leading to the call was not found. - CALL_NOT_FOUND = 19; - - // The specified conversion_date_time is before the call_start_date_time. - CONVERSION_PRECEDES_CALL = 20; - - // The click associated with the call does not contain conversion tracking - // information. - CONVERSION_TRACKING_NOT_ENABLED_AT_CALL_TIME = 21; - - // The caller’s phone number cannot be parsed. It should be formatted either - // as E.164 "+16502531234", International "+64 3-331 6005" or US national - // number "6502531234". - UNPARSEABLE_CALLERS_PHONE_NUMBER = 22; - } - - -} diff --git a/google/ads/googleads/v5/errors/country_code_error.proto b/google/ads/googleads/v5/errors/country_code_error.proto deleted file mode 100644 index d8c605a73..000000000 --- a/google/ads/googleads/v5/errors/country_code_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CountryCodeErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing country code errors. - -// Container for enum describing country code errors. -message CountryCodeErrorEnum { - // Enum describing country code errors. - enum CountryCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The country code is invalid. - INVALID_COUNTRY_CODE = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/criterion_error.proto b/google/ads/googleads/v5/errors/criterion_error.proto deleted file mode 100644 index 6c3285a5c..000000000 --- a/google/ads/googleads/v5/errors/criterion_error.proto +++ /dev/null @@ -1,409 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CriterionErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing criterion errors. - -// Container for enum describing possible criterion errors. -message CriterionErrorEnum { - // Enum describing possible criterion errors. - enum CriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Concrete type of criterion is required for CREATE and UPDATE operations. - CONCRETE_TYPE_REQUIRED = 2; - - // The category requested for exclusion is invalid. - INVALID_EXCLUDED_CATEGORY = 3; - - // Invalid keyword criteria text. - INVALID_KEYWORD_TEXT = 4; - - // Keyword text should be less than 80 chars. - KEYWORD_TEXT_TOO_LONG = 5; - - // Keyword text has too many words. - KEYWORD_HAS_TOO_MANY_WORDS = 6; - - // Keyword text has invalid characters or symbols. - KEYWORD_HAS_INVALID_CHARS = 7; - - // Invalid placement URL. - INVALID_PLACEMENT_URL = 8; - - // Invalid user list criterion. - INVALID_USER_LIST = 9; - - // Invalid user interest criterion. - INVALID_USER_INTEREST = 10; - - // Placement URL has wrong format. - INVALID_FORMAT_FOR_PLACEMENT_URL = 11; - - // Placement URL is too long. - PLACEMENT_URL_IS_TOO_LONG = 12; - - // Indicates the URL contains an illegal character. - PLACEMENT_URL_HAS_ILLEGAL_CHAR = 13; - - // Indicates the URL contains multiple comma separated URLs. - PLACEMENT_URL_HAS_MULTIPLE_SITES_IN_LINE = 14; - - // Indicates the domain is blocked. - PLACEMENT_IS_NOT_AVAILABLE_FOR_TARGETING_OR_EXCLUSION = 15; - - // Invalid topic path. - INVALID_TOPIC_PATH = 16; - - // The YouTube Channel Id is invalid. - INVALID_YOUTUBE_CHANNEL_ID = 17; - - // The YouTube Video Id is invalid. - INVALID_YOUTUBE_VIDEO_ID = 18; - - // Indicates the placement is a YouTube vertical channel, which is no longer - // supported. - YOUTUBE_VERTICAL_CHANNEL_DEPRECATED = 19; - - // Indicates the placement is a YouTube demographic channel, which is no - // longer supported. - YOUTUBE_DEMOGRAPHIC_CHANNEL_DEPRECATED = 20; - - // YouTube urls are not supported in Placement criterion. Use YouTubeChannel - // and YouTubeVideo criterion instead. - YOUTUBE_URL_UNSUPPORTED = 21; - - // Criteria type can not be excluded by the customer, like AOL account type - // cannot target site type criteria. - CANNOT_EXCLUDE_CRITERIA_TYPE = 22; - - // Criteria type can not be targeted. - CANNOT_ADD_CRITERIA_TYPE = 23; - - // Not allowed to exclude similar user list. - CANNOT_EXCLUDE_SIMILAR_USER_LIST = 26; - - // Not allowed to target a closed user list. - CANNOT_ADD_CLOSED_USER_LIST = 27; - - // Not allowed to add display only UserLists to search only campaigns. - CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_ONLY_CAMPAIGNS = 28; - - // Not allowed to add display only UserLists to search plus campaigns. - CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_CAMPAIGNS = 29; - - // Not allowed to add display only UserLists to shopping campaigns. - CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SHOPPING_CAMPAIGNS = 30; - - // Not allowed to add User interests to search only campaigns. - CANNOT_ADD_USER_INTERESTS_TO_SEARCH_CAMPAIGNS = 31; - - // Not allowed to set bids for this criterion type in search campaigns - CANNOT_SET_BIDS_ON_CRITERION_TYPE_IN_SEARCH_CAMPAIGNS = 32; - - // Final URLs, URL Templates and CustomParameters cannot be set for the - // criterion types of Gender, AgeRange, UserList, Placement, MobileApp, and - // MobileAppCategory in search campaigns and shopping campaigns. - CANNOT_ADD_URLS_TO_CRITERION_TYPE_FOR_CAMPAIGN_TYPE = 33; - - // Invalid custom affinity criterion. - INVALID_CUSTOM_AFFINITY = 96; - - // Invalid custom intent criterion. - INVALID_CUSTOM_INTENT = 97; - - // IP address is not valid. - INVALID_IP_ADDRESS = 34; - - // IP format is not valid. - INVALID_IP_FORMAT = 35; - - // Mobile application is not valid. - INVALID_MOBILE_APP = 36; - - // Mobile application category is not valid. - INVALID_MOBILE_APP_CATEGORY = 37; - - // The CriterionId does not exist or is of the incorrect type. - INVALID_CRITERION_ID = 38; - - // The Criterion is not allowed to be targeted. - CANNOT_TARGET_CRITERION = 39; - - // The criterion is not allowed to be targeted as it is deprecated. - CANNOT_TARGET_OBSOLETE_CRITERION = 40; - - // The CriterionId is not valid for the type. - CRITERION_ID_AND_TYPE_MISMATCH = 41; - - // Distance for the radius for the proximity criterion is invalid. - INVALID_PROXIMITY_RADIUS = 42; - - // Units for the distance for the radius for the proximity criterion is - // invalid. - INVALID_PROXIMITY_RADIUS_UNITS = 43; - - // Street address in the address is not valid. - INVALID_STREETADDRESS_LENGTH = 44; - - // City name in the address is not valid. - INVALID_CITYNAME_LENGTH = 45; - - // Region code in the address is not valid. - INVALID_REGIONCODE_LENGTH = 46; - - // Region name in the address is not valid. - INVALID_REGIONNAME_LENGTH = 47; - - // Postal code in the address is not valid. - INVALID_POSTALCODE_LENGTH = 48; - - // Country code in the address is not valid. - INVALID_COUNTRY_CODE = 49; - - // Latitude for the GeoPoint is not valid. - INVALID_LATITUDE = 50; - - // Longitude for the GeoPoint is not valid. - INVALID_LONGITUDE = 51; - - // The Proximity input is not valid. Both address and geoPoint cannot be - // null. - PROXIMITY_GEOPOINT_AND_ADDRESS_BOTH_CANNOT_BE_NULL = 52; - - // The Proximity address cannot be geocoded to a valid lat/long. - INVALID_PROXIMITY_ADDRESS = 53; - - // User domain name is not valid. - INVALID_USER_DOMAIN_NAME = 54; - - // Length of serialized criterion parameter exceeded size limit. - CRITERION_PARAMETER_TOO_LONG = 55; - - // Time interval in the AdSchedule overlaps with another AdSchedule. - AD_SCHEDULE_TIME_INTERVALS_OVERLAP = 56; - - // AdSchedule time interval cannot span multiple days. - AD_SCHEDULE_INTERVAL_CANNOT_SPAN_MULTIPLE_DAYS = 57; - - // AdSchedule time interval specified is invalid, endTime cannot be earlier - // than startTime. - AD_SCHEDULE_INVALID_TIME_INTERVAL = 58; - - // The number of AdSchedule entries in a day exceeds the limit. - AD_SCHEDULE_EXCEEDED_INTERVALS_PER_DAY_LIMIT = 59; - - // CriteriaId does not match the interval of the AdSchedule specified. - AD_SCHEDULE_CRITERION_ID_MISMATCHING_FIELDS = 60; - - // Cannot set bid modifier for this criterion type. - CANNOT_BID_MODIFY_CRITERION_TYPE = 61; - - // Cannot bid modify criterion, since it is opted out of the campaign. - CANNOT_BID_MODIFY_CRITERION_CAMPAIGN_OPTED_OUT = 62; - - // Cannot set bid modifier for a negative criterion. - CANNOT_BID_MODIFY_NEGATIVE_CRITERION = 63; - - // Bid Modifier already exists. Use SET operation to update. - BID_MODIFIER_ALREADY_EXISTS = 64; - - // Feed Id is not allowed in these Location Groups. - FEED_ID_NOT_ALLOWED = 65; - - // The account may not use the requested criteria type. For example, some - // accounts are restricted to keywords only. - ACCOUNT_INELIGIBLE_FOR_CRITERIA_TYPE = 66; - - // The requested criteria type cannot be used with campaign or ad group - // bidding strategy. - CRITERIA_TYPE_INVALID_FOR_BIDDING_STRATEGY = 67; - - // The Criterion is not allowed to be excluded. - CANNOT_EXCLUDE_CRITERION = 68; - - // The criterion is not allowed to be removed. For example, we cannot remove - // any of the device criterion. - CANNOT_REMOVE_CRITERION = 69; - - // Bidding categories do not form a valid path in the Shopping bidding - // category taxonomy. - INVALID_PRODUCT_BIDDING_CATEGORY = 76; - - // ShoppingSetting must be added to the campaign before ProductScope - // criteria can be added. - MISSING_SHOPPING_SETTING = 77; - - // Matching function is invalid. - INVALID_MATCHING_FUNCTION = 78; - - // Filter parameters not allowed for location groups targeting. - LOCATION_FILTER_NOT_ALLOWED = 79; - - // Feed not found, or the feed is not an enabled location feed. - INVALID_FEED_FOR_LOCATION_FILTER = 98; - - // Given location filter parameter is invalid for location groups targeting. - LOCATION_FILTER_INVALID = 80; - - // Criteria type cannot be associated with a campaign and its ad group(s) - // simultaneously. - CANNOT_ATTACH_CRITERIA_AT_CAMPAIGN_AND_ADGROUP = 81; - - // Range represented by hotel length of stay's min nights and max nights - // overlaps with an existing criterion. - HOTEL_LENGTH_OF_STAY_OVERLAPS_WITH_EXISTING_CRITERION = 82; - - // Range represented by hotel advance booking window's min days and max days - // overlaps with an existing criterion. - HOTEL_ADVANCE_BOOKING_WINDOW_OVERLAPS_WITH_EXISTING_CRITERION = 83; - - // The field is not allowed to be set when the negative field is set to - // true, e.g. we don't allow bids in negative ad group or campaign criteria. - FIELD_INCOMPATIBLE_WITH_NEGATIVE_TARGETING = 84; - - // The combination of operand and operator in webpage condition is invalid. - INVALID_WEBPAGE_CONDITION = 85; - - // The URL of webpage condition is invalid. - INVALID_WEBPAGE_CONDITION_URL = 86; - - // The URL of webpage condition cannot be empty or contain white space. - WEBPAGE_CONDITION_URL_CANNOT_BE_EMPTY = 87; - - // The URL of webpage condition contains an unsupported protocol. - WEBPAGE_CONDITION_URL_UNSUPPORTED_PROTOCOL = 88; - - // The URL of webpage condition cannot be an IP address. - WEBPAGE_CONDITION_URL_CANNOT_BE_IP_ADDRESS = 89; - - // The domain of the URL is not consistent with the domain in campaign - // setting. - WEBPAGE_CONDITION_URL_DOMAIN_NOT_CONSISTENT_WITH_CAMPAIGN_SETTING = 90; - - // The URL of webpage condition cannot be a public suffix itself. - WEBPAGE_CONDITION_URL_CANNOT_BE_PUBLIC_SUFFIX = 91; - - // The URL of webpage condition has an invalid public suffix. - WEBPAGE_CONDITION_URL_INVALID_PUBLIC_SUFFIX = 92; - - // Value track parameter is not supported in webpage condition URL. - WEBPAGE_CONDITION_URL_VALUE_TRACK_VALUE_NOT_SUPPORTED = 93; - - // Only one URL-EQUALS webpage condition is allowed in a webpage - // criterion and it cannot be combined with other conditions. - WEBPAGE_CRITERION_URL_EQUALS_CAN_HAVE_ONLY_ONE_CONDITION = 94; - - // A webpage criterion cannot be added to a non-DSA ad group. - WEBPAGE_CRITERION_NOT_SUPPORTED_ON_NON_DSA_AD_GROUP = 95; - - // Cannot add positive user list criteria in Smart Display campaigns. - CANNOT_TARGET_USER_LIST_FOR_SMART_DISPLAY_CAMPAIGNS = 99; - - // Listing scope contains too many dimension types. - LISTING_SCOPE_TOO_MANY_DIMENSION_TYPES = 100; - - // Listing scope has too many IN operators. - LISTING_SCOPE_TOO_MANY_IN_OPERATORS = 101; - - // Listing scope contains IN operator on an unsupported dimension type. - LISTING_SCOPE_IN_OPERATOR_NOT_SUPPORTED = 102; - - // There are dimensions with duplicate dimension type. - DUPLICATE_LISTING_DIMENSION_TYPE = 103; - - // There are dimensions with duplicate dimension value. - DUPLICATE_LISTING_DIMENSION_VALUE = 104; - - // Listing group SUBDIVISION nodes cannot have bids. - CANNOT_SET_BIDS_ON_LISTING_GROUP_SUBDIVISION = 105; - - // Ad group is invalid due to the listing groups it contains. - INVALID_LISTING_GROUP_HIERARCHY = 106; - - // Listing group unit cannot have children. - LISTING_GROUP_UNIT_CANNOT_HAVE_CHILDREN = 107; - - // Subdivided listing groups must have an "others" case. - LISTING_GROUP_SUBDIVISION_REQUIRES_OTHERS_CASE = 108; - - // Dimension type of listing group must be the same as that of its siblings. - LISTING_GROUP_REQUIRES_SAME_DIMENSION_TYPE_AS_SIBLINGS = 109; - - // Listing group cannot be added to the ad group because it already exists. - LISTING_GROUP_ALREADY_EXISTS = 110; - - // Listing group referenced in the operation was not found in the ad group. - LISTING_GROUP_DOES_NOT_EXIST = 111; - - // Recursive removal failed because listing group subdivision is being - // created or modified in this request. - LISTING_GROUP_CANNOT_BE_REMOVED = 112; - - // Listing group type is not allowed for specified ad group criterion type. - INVALID_LISTING_GROUP_TYPE = 113; - - // Listing group in an ADD operation specifies a non temporary criterion id. - LISTING_GROUP_ADD_MAY_ONLY_USE_TEMP_ID = 114; - - // The combined length of dimension values of the Listing scope criterion - // is too long. - LISTING_SCOPE_TOO_LONG = 115; - - // Listing scope contains too many dimensions. - LISTING_SCOPE_TOO_MANY_DIMENSIONS = 116; - - // The combined length of dimension values of the Listing group criterion is - // too long. - LISTING_GROUP_TOO_LONG = 117; - - // Listing group tree is too deep. - LISTING_GROUP_TREE_TOO_DEEP = 118; - - // Listing dimension is invalid (e.g. dimension contains illegal value, - // dimension type is represented with wrong class, etc). Listing dimension - // value can not contain "==" or "&+". - INVALID_LISTING_DIMENSION = 119; - - // Listing dimension type is either invalid for campaigns of this type or - // cannot be used in the current context. BIDDING_CATEGORY_Lx and - // PRODUCT_TYPE_Lx dimensions must be used in ascending order of their - // levels: L1, L2, L3, L4, L5... The levels must be specified sequentially - // and start from L1. Furthermore, an "others" Listing group cannot be - // subdivided with a dimension of the same type but of a higher level - // ("others" BIDDING_CATEGORY_L3 can be subdivided with BRAND but not with - // BIDDING_CATEGORY_L4). - INVALID_LISTING_DIMENSION_TYPE = 120; - } - - -} diff --git a/google/ads/googleads/v5/errors/currency_code_error.proto b/google/ads/googleads/v5/errors/currency_code_error.proto deleted file mode 100644 index c7c925cae..000000000 --- a/google/ads/googleads/v5/errors/currency_code_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CurrencyCodeErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing currency code errors. - -// Container for enum describing possible currency code errors. -message CurrencyCodeErrorEnum { - // Enum describing possible currency code errors. - enum CurrencyCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The currency code is not supported. - UNSUPPORTED = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/custom_interest_error.proto b/google/ads/googleads/v5/errors/custom_interest_error.proto deleted file mode 100644 index 362f35d2d..000000000 --- a/google/ads/googleads/v5/errors/custom_interest_error.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing custom interest errors. - -// Container for enum describing possible custom interest errors. -message CustomInterestErrorEnum { - // Enum describing possible custom interest errors. - enum CustomInterestError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Duplicate custom interest name ignoring case. - NAME_ALREADY_USED = 2; - - // In the remove custom interest member operation, both member ID and - // pair [type, parameter] are not present. - CUSTOM_INTEREST_MEMBER_ID_AND_TYPE_PARAMETER_NOT_PRESENT_IN_REMOVE = 3; - - // The pair of [type, parameter] does not exist. - TYPE_AND_PARAMETER_NOT_FOUND = 4; - - // The pair of [type, parameter] already exists. - TYPE_AND_PARAMETER_ALREADY_EXISTED = 5; - - // Unsupported custom interest member type. - INVALID_CUSTOM_INTEREST_MEMBER_TYPE = 6; - - // Cannot remove a custom interest while it's still being targeted. - CANNOT_REMOVE_WHILE_IN_USE = 7; - - // Cannot mutate custom interest type. - CANNOT_CHANGE_TYPE = 8; - } - - -} diff --git a/google/ads/googleads/v5/errors/customer_client_link_error.proto b/google/ads/googleads/v5/errors/customer_client_link_error.proto deleted file mode 100644 index d80f44da1..000000000 --- a/google/ads/googleads/v5/errors/customer_client_link_error.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientLinkErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing CustomerClientLink errors. - -// Container for enum describing possible CustomeClientLink errors. -message CustomerClientLinkErrorEnum { - // Enum describing possible CustomerClientLink errors. - enum CustomerClientLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Trying to manage a client that already in being managed by customer. - CLIENT_ALREADY_INVITED_BY_THIS_MANAGER = 2; - - // Already managed by some other manager in the hierarchy. - CLIENT_ALREADY_MANAGED_IN_HIERARCHY = 3; - - // Attempt to create a cycle in the hierarchy. - CYCLIC_LINK_NOT_ALLOWED = 4; - - // Managed accounts has the maximum number of linked accounts. - CUSTOMER_HAS_TOO_MANY_ACCOUNTS = 5; - - // Invitor has the maximum pending invitations. - CLIENT_HAS_TOO_MANY_INVITATIONS = 6; - - // Attempt to change hidden status of a link that is not active. - CANNOT_HIDE_OR_UNHIDE_MANAGER_ACCOUNTS = 7; - - // Parent manager account has the maximum number of linked accounts. - CUSTOMER_HAS_TOO_MANY_ACCOUNTS_AT_MANAGER = 8; - - // Client has too many managers. - CLIENT_HAS_TOO_MANY_MANAGERS = 9; - } - - -} diff --git a/google/ads/googleads/v5/errors/customer_error.proto b/google/ads/googleads/v5/errors/customer_error.proto deleted file mode 100644 index 92c5b7ffb..000000000 --- a/google/ads/googleads/v5/errors/customer_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Container for enum describing possible customer errors. -message CustomerErrorEnum { - // Set of errors that are related to requests dealing with Customer. - enum CustomerError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Customer status is not allowed to be changed from DRAFT and CLOSED. - // Currency code and at least one of country code and time zone needs to be - // set when status is changed to ENABLED. - STATUS_CHANGE_DISALLOWED = 2; - - // CustomerService cannot get a customer that has not been fully set up. - ACCOUNT_NOT_SET_UP = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/customer_feed_error.proto b/google/ads/googleads/v5/errors/customer_feed_error.proto deleted file mode 100644 index 09d90c876..000000000 --- a/google/ads/googleads/v5/errors/customer_feed_error.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerFeedErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing customer feed errors. - -// Container for enum describing possible customer feed errors. -message CustomerFeedErrorEnum { - // Enum describing possible customer feed errors. - enum CustomerFeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active feed already exists for this customer and place holder type. - FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; - - // The specified feed is removed. - CANNOT_CREATE_FOR_REMOVED_FEED = 3; - - // The CustomerFeed already exists. Update should be used to modify the - // existing CustomerFeed. - CANNOT_CREATE_ALREADY_EXISTING_CUSTOMER_FEED = 4; - - // Cannot update removed customer feed. - CANNOT_MODIFY_REMOVED_CUSTOMER_FEED = 5; - - // Invalid placeholder type. - INVALID_PLACEHOLDER_TYPE = 6; - - // Feed mapping for this placeholder type does not exist. - MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7; - - // Placeholder not allowed at the account level. - PLACEHOLDER_TYPE_NOT_ALLOWED_ON_CUSTOMER_FEED = 8; - } - - -} diff --git a/google/ads/googleads/v5/errors/customer_manager_link_error.proto b/google/ads/googleads/v5/errors/customer_manager_link_error.proto deleted file mode 100644 index c379b3f45..000000000 --- a/google/ads/googleads/v5/errors/customer_manager_link_error.proto +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerManagerLinkErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing CustomerManagerLink errors. - -// Container for enum describing possible CustomerManagerLink errors. -message CustomerManagerLinkErrorEnum { - // Enum describing possible CustomerManagerLink errors. - enum CustomerManagerLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // No pending invitation. - NO_PENDING_INVITE = 2; - - // Attempt to operate on the same client more than once in the same call. - SAME_CLIENT_MORE_THAN_ONCE_PER_CALL = 3; - - // Manager account has the maximum number of linked accounts. - MANAGER_HAS_MAX_NUMBER_OF_LINKED_ACCOUNTS = 4; - - // If no active user on account it cannot be unlinked from its manager. - CANNOT_UNLINK_ACCOUNT_WITHOUT_ACTIVE_USER = 5; - - // Account should have at least one active owner on it before being - // unlinked. - CANNOT_REMOVE_LAST_CLIENT_ACCOUNT_OWNER = 6; - - // Only account owners may change their permission role. - CANNOT_CHANGE_ROLE_BY_NON_ACCOUNT_OWNER = 7; - - // When a client's link to its manager is not active, the link role cannot - // be changed. - CANNOT_CHANGE_ROLE_FOR_NON_ACTIVE_LINK_ACCOUNT = 8; - - // Attempt to link a child to a parent that contains or will contain - // duplicate children. - DUPLICATE_CHILD_FOUND = 9; - - // The authorized customer is a test account. It can add no more than the - // allowed number of accounts - TEST_ACCOUNT_LINKS_TOO_MANY_CHILD_ACCOUNTS = 10; - } - - -} diff --git a/google/ads/googleads/v5/errors/database_error.proto b/google/ads/googleads/v5/errors/database_error.proto deleted file mode 100644 index e5f4509bf..000000000 --- a/google/ads/googleads/v5/errors/database_error.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DatabaseErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing database errors. - -// Container for enum describing possible database errors. -message DatabaseErrorEnum { - // Enum describing possible database errors. - enum DatabaseError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Multiple requests were attempting to modify the same resource at once. - // Please retry the request. - CONCURRENT_MODIFICATION = 2; - - // The request conflicted with existing data. This error will usually be - // replaced with a more specific error if the request is retried. - DATA_CONSTRAINT_VIOLATION = 3; - - // The data written is too large. Please split the request into smaller - // requests. - REQUEST_TOO_LARGE = 4; - } - - -} diff --git a/google/ads/googleads/v5/errors/date_error.proto b/google/ads/googleads/v5/errors/date_error.proto deleted file mode 100644 index f86866a8a..000000000 --- a/google/ads/googleads/v5/errors/date_error.proto +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DateErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing date errors. - -// Container for enum describing possible date errors. -message DateErrorEnum { - // Enum describing possible date errors. - enum DateError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Given field values do not correspond to a valid date. - INVALID_FIELD_VALUES_IN_DATE = 2; - - // Given field values do not correspond to a valid date time. - INVALID_FIELD_VALUES_IN_DATE_TIME = 3; - - // The string date's format should be yyyy-mm-dd. - INVALID_STRING_DATE = 4; - - // The string date time's format should be yyyy-mm-dd hh:mm:ss.ssssss. - INVALID_STRING_DATE_TIME_MICROS = 6; - - // The string date time's format should be yyyy-mm-dd hh:mm:ss. - INVALID_STRING_DATE_TIME_SECONDS = 11; - - // The string date time's format should be yyyy-mm-dd hh:mm:ss+|-hh:mm. - INVALID_STRING_DATE_TIME_SECONDS_WITH_OFFSET = 12; - - // Date is before allowed minimum. - EARLIER_THAN_MINIMUM_DATE = 7; - - // Date is after allowed maximum. - LATER_THAN_MAXIMUM_DATE = 8; - - // Date range bounds are not in order. - DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE = 9; - - // Both dates in range are null. - DATE_RANGE_MINIMUM_AND_MAXIMUM_DATES_BOTH_NULL = 10; - } - - -} diff --git a/google/ads/googleads/v5/errors/date_range_error.proto b/google/ads/googleads/v5/errors/date_range_error.proto deleted file mode 100644 index e188dae21..000000000 --- a/google/ads/googleads/v5/errors/date_range_error.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DateRangeErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing date range errors. - -// Container for enum describing possible date range errors. -message DateRangeErrorEnum { - // Enum describing possible date range errors. - enum DateRangeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Invalid date. - INVALID_DATE = 2; - - // The start date was after the end date. - START_DATE_AFTER_END_DATE = 3; - - // Cannot set date to past time - CANNOT_SET_DATE_TO_PAST = 4; - - // A date was used that is past the system "last" date. - AFTER_MAXIMUM_ALLOWABLE_DATE = 5; - - // Trying to change start date on a resource that has started. - CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED = 6; - } - - -} diff --git a/google/ads/googleads/v5/errors/distinct_error.proto b/google/ads/googleads/v5/errors/distinct_error.proto deleted file mode 100644 index fc7d0fafc..000000000 --- a/google/ads/googleads/v5/errors/distinct_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DistinctErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing distinct errors. - -// Container for enum describing possible distinct errors. -message DistinctErrorEnum { - // Enum describing possible distinct errors. - enum DistinctError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Duplicate element. - DUPLICATE_ELEMENT = 2; - - // Duplicate type. - DUPLICATE_TYPE = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/enum_error.proto b/google/ads/googleads/v5/errors/enum_error.proto deleted file mode 100644 index b210f275a..000000000 --- a/google/ads/googleads/v5/errors/enum_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "EnumErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing enum errors. - -// Container for enum describing possible enum errors. -message EnumErrorEnum { - // Enum describing possible enum errors. - enum EnumError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The enum value is not permitted. - ENUM_VALUE_NOT_PERMITTED = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/errors.proto b/google/ads/googleads/v5/errors/errors.proto deleted file mode 100644 index 8353c6612..000000000 --- a/google/ads/googleads/v5/errors/errors.proto +++ /dev/null @@ -1,606 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/ads/googleads/v5/common/policy.proto"; -import "google/ads/googleads/v5/common/value.proto"; -import "google/ads/googleads/v5/errors/access_invitation_error.proto"; -import "google/ads/googleads/v5/errors/account_budget_proposal_error.proto"; -import "google/ads/googleads/v5/errors/account_link_error.proto"; -import "google/ads/googleads/v5/errors/ad_customizer_error.proto"; -import "google/ads/googleads/v5/errors/ad_error.proto"; -import "google/ads/googleads/v5/errors/ad_group_ad_error.proto"; -import "google/ads/googleads/v5/errors/ad_group_bid_modifier_error.proto"; -import "google/ads/googleads/v5/errors/ad_group_criterion_error.proto"; -import "google/ads/googleads/v5/errors/ad_group_error.proto"; -import "google/ads/googleads/v5/errors/ad_group_feed_error.proto"; -import "google/ads/googleads/v5/errors/ad_parameter_error.proto"; -import "google/ads/googleads/v5/errors/ad_sharing_error.proto"; -import "google/ads/googleads/v5/errors/adx_error.proto"; -import "google/ads/googleads/v5/errors/asset_error.proto"; -import "google/ads/googleads/v5/errors/asset_link_error.proto"; -import "google/ads/googleads/v5/errors/authentication_error.proto"; -import "google/ads/googleads/v5/errors/authorization_error.proto"; -import "google/ads/googleads/v5/errors/batch_job_error.proto"; -import "google/ads/googleads/v5/errors/bidding_error.proto"; -import "google/ads/googleads/v5/errors/bidding_strategy_error.proto"; -import "google/ads/googleads/v5/errors/billing_setup_error.proto"; -import "google/ads/googleads/v5/errors/campaign_budget_error.proto"; -import "google/ads/googleads/v5/errors/campaign_criterion_error.proto"; -import "google/ads/googleads/v5/errors/campaign_draft_error.proto"; -import "google/ads/googleads/v5/errors/campaign_error.proto"; -import "google/ads/googleads/v5/errors/campaign_experiment_error.proto"; -import "google/ads/googleads/v5/errors/campaign_feed_error.proto"; -import "google/ads/googleads/v5/errors/campaign_shared_set_error.proto"; -import "google/ads/googleads/v5/errors/change_status_error.proto"; -import "google/ads/googleads/v5/errors/collection_size_error.proto"; -import "google/ads/googleads/v5/errors/context_error.proto"; -import "google/ads/googleads/v5/errors/conversion_action_error.proto"; -import "google/ads/googleads/v5/errors/conversion_adjustment_upload_error.proto"; -import "google/ads/googleads/v5/errors/conversion_upload_error.proto"; -import "google/ads/googleads/v5/errors/country_code_error.proto"; -import "google/ads/googleads/v5/errors/criterion_error.proto"; -import "google/ads/googleads/v5/errors/currency_code_error.proto"; -import "google/ads/googleads/v5/errors/custom_interest_error.proto"; -import "google/ads/googleads/v5/errors/customer_client_link_error.proto"; -import "google/ads/googleads/v5/errors/customer_error.proto"; -import "google/ads/googleads/v5/errors/customer_feed_error.proto"; -import "google/ads/googleads/v5/errors/customer_manager_link_error.proto"; -import "google/ads/googleads/v5/errors/database_error.proto"; -import "google/ads/googleads/v5/errors/date_error.proto"; -import "google/ads/googleads/v5/errors/date_range_error.proto"; -import "google/ads/googleads/v5/errors/distinct_error.proto"; -import "google/ads/googleads/v5/errors/enum_error.proto"; -import "google/ads/googleads/v5/errors/extension_feed_item_error.proto"; -import "google/ads/googleads/v5/errors/extension_setting_error.proto"; -import "google/ads/googleads/v5/errors/feed_attribute_reference_error.proto"; -import "google/ads/googleads/v5/errors/feed_error.proto"; -import "google/ads/googleads/v5/errors/feed_item_error.proto"; -import "google/ads/googleads/v5/errors/feed_item_target_error.proto"; -import "google/ads/googleads/v5/errors/feed_item_validation_error.proto"; -import "google/ads/googleads/v5/errors/feed_mapping_error.proto"; -import "google/ads/googleads/v5/errors/field_error.proto"; -import "google/ads/googleads/v5/errors/field_mask_error.proto"; -import "google/ads/googleads/v5/errors/function_error.proto"; -import "google/ads/googleads/v5/errors/function_parsing_error.proto"; -import "google/ads/googleads/v5/errors/geo_target_constant_suggestion_error.proto"; -import "google/ads/googleads/v5/errors/header_error.proto"; -import "google/ads/googleads/v5/errors/id_error.proto"; -import "google/ads/googleads/v5/errors/image_error.proto"; -import "google/ads/googleads/v5/errors/internal_error.proto"; -import "google/ads/googleads/v5/errors/invoice_error.proto"; -import "google/ads/googleads/v5/errors/keyword_plan_ad_group_error.proto"; -import "google/ads/googleads/v5/errors/keyword_plan_ad_group_keyword_error.proto"; -import "google/ads/googleads/v5/errors/keyword_plan_campaign_error.proto"; -import "google/ads/googleads/v5/errors/keyword_plan_campaign_keyword_error.proto"; -import "google/ads/googleads/v5/errors/keyword_plan_error.proto"; -import "google/ads/googleads/v5/errors/keyword_plan_idea_error.proto"; -import "google/ads/googleads/v5/errors/label_error.proto"; -import "google/ads/googleads/v5/errors/language_code_error.proto"; -import "google/ads/googleads/v5/errors/list_operation_error.proto"; -import "google/ads/googleads/v5/errors/manager_link_error.proto"; -import "google/ads/googleads/v5/errors/media_bundle_error.proto"; -import "google/ads/googleads/v5/errors/media_file_error.proto"; -import "google/ads/googleads/v5/errors/media_upload_error.proto"; -import "google/ads/googleads/v5/errors/multiplier_error.proto"; -import "google/ads/googleads/v5/errors/mutate_error.proto"; -import "google/ads/googleads/v5/errors/new_resource_creation_error.proto"; -import "google/ads/googleads/v5/errors/not_allowlisted_error.proto"; -import "google/ads/googleads/v5/errors/not_empty_error.proto"; -import "google/ads/googleads/v5/errors/null_error.proto"; -import "google/ads/googleads/v5/errors/offline_user_data_job_error.proto"; -import "google/ads/googleads/v5/errors/operation_access_denied_error.proto"; -import "google/ads/googleads/v5/errors/operator_error.proto"; -import "google/ads/googleads/v5/errors/partial_failure_error.proto"; -import "google/ads/googleads/v5/errors/payments_account_error.proto"; -import "google/ads/googleads/v5/errors/policy_finding_error.proto"; -import "google/ads/googleads/v5/errors/policy_validation_parameter_error.proto"; -import "google/ads/googleads/v5/errors/policy_violation_error.proto"; -import "google/ads/googleads/v5/errors/query_error.proto"; -import "google/ads/googleads/v5/errors/quota_error.proto"; -import "google/ads/googleads/v5/errors/range_error.proto"; -import "google/ads/googleads/v5/errors/reach_plan_error.proto"; -import "google/ads/googleads/v5/errors/recommendation_error.proto"; -import "google/ads/googleads/v5/errors/region_code_error.proto"; -import "google/ads/googleads/v5/errors/request_error.proto"; -import "google/ads/googleads/v5/errors/resource_access_denied_error.proto"; -import "google/ads/googleads/v5/errors/resource_count_limit_exceeded_error.proto"; -import "google/ads/googleads/v5/errors/setting_error.proto"; -import "google/ads/googleads/v5/errors/shared_criterion_error.proto"; -import "google/ads/googleads/v5/errors/shared_set_error.proto"; -import "google/ads/googleads/v5/errors/size_limit_error.proto"; -import "google/ads/googleads/v5/errors/string_format_error.proto"; -import "google/ads/googleads/v5/errors/string_length_error.proto"; -import "google/ads/googleads/v5/errors/third_party_app_analytics_link_error.proto"; -import "google/ads/googleads/v5/errors/time_zone_error.proto"; -import "google/ads/googleads/v5/errors/url_field_error.proto"; -import "google/ads/googleads/v5/errors/user_data_error.proto"; -import "google/ads/googleads/v5/errors/user_list_error.proto"; -import "google/ads/googleads/v5/errors/youtube_video_registration_error.proto"; -import "google/protobuf/duration.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ErrorsProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing the common error protos - -// Describes how a GoogleAds API call failed. It's returned inside -// google.rpc.Status.details when a call fails. -message GoogleAdsFailure { - // The list of errors that occurred. - repeated GoogleAdsError errors = 1; -} - -// GoogleAds-specific error. -message GoogleAdsError { - // An enum value that indicates which error occurred. - ErrorCode error_code = 1; - - // A human-readable description of the error. - string message = 2; - - // The value that triggered the error. - google.ads.googleads.v5.common.Value trigger = 3; - - // Describes the part of the request proto that caused the error. - ErrorLocation location = 4; - - // Additional error details, which are returned by certain error codes. Most - // error codes do not include details. - ErrorDetails details = 5; -} - -// The error reason represented by type and enum. -message ErrorCode { - // The list of error enums - oneof error_code { - // An error caused by the request - RequestErrorEnum.RequestError request_error = 1; - - // An error with a Bidding Strategy mutate. - BiddingStrategyErrorEnum.BiddingStrategyError bidding_strategy_error = 2; - - // An error with a URL field mutate. - UrlFieldErrorEnum.UrlFieldError url_field_error = 3; - - // An error with a list operation. - ListOperationErrorEnum.ListOperationError list_operation_error = 4; - - // An error with an AWQL query - QueryErrorEnum.QueryError query_error = 5; - - // An error with a mutate - MutateErrorEnum.MutateError mutate_error = 7; - - // An error with a field mask - FieldMaskErrorEnum.FieldMaskError field_mask_error = 8; - - // An error encountered when trying to authorize a user. - AuthorizationErrorEnum.AuthorizationError authorization_error = 9; - - // An unexpected server-side error. - InternalErrorEnum.InternalError internal_error = 10; - - // An error with the amonut of quota remaining. - QuotaErrorEnum.QuotaError quota_error = 11; - - // An error with an Ad Group Ad mutate. - AdErrorEnum.AdError ad_error = 12; - - // An error with an Ad Group mutate. - AdGroupErrorEnum.AdGroupError ad_group_error = 13; - - // An error with a Campaign Budget mutate. - CampaignBudgetErrorEnum.CampaignBudgetError campaign_budget_error = 14; - - // An error with a Campaign mutate. - CampaignErrorEnum.CampaignError campaign_error = 15; - - // Indicates failure to properly authenticate user. - AuthenticationErrorEnum.AuthenticationError authentication_error = 17; - - // Indicates failure to properly authenticate user. - AdGroupCriterionErrorEnum.AdGroupCriterionError ad_group_criterion_error = 18; - - // The reasons for the ad customizer error - AdCustomizerErrorEnum.AdCustomizerError ad_customizer_error = 19; - - // The reasons for the ad group ad error - AdGroupAdErrorEnum.AdGroupAdError ad_group_ad_error = 21; - - // The reasons for the ad sharing error - AdSharingErrorEnum.AdSharingError ad_sharing_error = 24; - - // The reasons for the adx error - AdxErrorEnum.AdxError adx_error = 25; - - // The reasons for the asset error - AssetErrorEnum.AssetError asset_error = 107; - - // The reasons for the bidding errors - BiddingErrorEnum.BiddingError bidding_error = 26; - - // The reasons for the campaign criterion error - CampaignCriterionErrorEnum.CampaignCriterionError campaign_criterion_error = 29; - - // The reasons for the collection size error - CollectionSizeErrorEnum.CollectionSizeError collection_size_error = 31; - - // The reasons for the country code error - CountryCodeErrorEnum.CountryCodeError country_code_error = 109; - - // The reasons for the criterion error - CriterionErrorEnum.CriterionError criterion_error = 32; - - // The reasons for the customer error - CustomerErrorEnum.CustomerError customer_error = 90; - - // The reasons for the date error - DateErrorEnum.DateError date_error = 33; - - // The reasons for the date range error - DateRangeErrorEnum.DateRangeError date_range_error = 34; - - // The reasons for the distinct error - DistinctErrorEnum.DistinctError distinct_error = 35; - - // The reasons for the feed attribute reference error - FeedAttributeReferenceErrorEnum.FeedAttributeReferenceError feed_attribute_reference_error = 36; - - // The reasons for the function error - FunctionErrorEnum.FunctionError function_error = 37; - - // The reasons for the function parsing error - FunctionParsingErrorEnum.FunctionParsingError function_parsing_error = 38; - - // The reasons for the id error - IdErrorEnum.IdError id_error = 39; - - // The reasons for the image error - ImageErrorEnum.ImageError image_error = 40; - - // The reasons for the language code error - LanguageCodeErrorEnum.LanguageCodeError language_code_error = 110; - - // The reasons for the media bundle error - MediaBundleErrorEnum.MediaBundleError media_bundle_error = 42; - - // The reasons for media uploading errors. - MediaUploadErrorEnum.MediaUploadError media_upload_error = 116; - - // The reasons for the media file error - MediaFileErrorEnum.MediaFileError media_file_error = 86; - - // The reasons for the multiplier error - MultiplierErrorEnum.MultiplierError multiplier_error = 44; - - // The reasons for the new resource creation error - NewResourceCreationErrorEnum.NewResourceCreationError new_resource_creation_error = 45; - - // The reasons for the not empty error - NotEmptyErrorEnum.NotEmptyError not_empty_error = 46; - - // The reasons for the null error - NullErrorEnum.NullError null_error = 47; - - // The reasons for the operator error - OperatorErrorEnum.OperatorError operator_error = 48; - - // The reasons for the range error - RangeErrorEnum.RangeError range_error = 49; - - // The reasons for error in applying a recommendation - RecommendationErrorEnum.RecommendationError recommendation_error = 58; - - // The reasons for the region code error - RegionCodeErrorEnum.RegionCodeError region_code_error = 51; - - // The reasons for the setting error - SettingErrorEnum.SettingError setting_error = 52; - - // The reasons for the string format error - StringFormatErrorEnum.StringFormatError string_format_error = 53; - - // The reasons for the string length error - StringLengthErrorEnum.StringLengthError string_length_error = 54; - - // The reasons for the operation access denied error - OperationAccessDeniedErrorEnum.OperationAccessDeniedError operation_access_denied_error = 55; - - // The reasons for the resource access denied error - ResourceAccessDeniedErrorEnum.ResourceAccessDeniedError resource_access_denied_error = 56; - - // The reasons for the resource count limit exceeded error - ResourceCountLimitExceededErrorEnum.ResourceCountLimitExceededError resource_count_limit_exceeded_error = 57; - - // The reasons for YouTube video registration errors. - YoutubeVideoRegistrationErrorEnum.YoutubeVideoRegistrationError youtube_video_registration_error = 117; - - // The reasons for the ad group bid modifier error - AdGroupBidModifierErrorEnum.AdGroupBidModifierError ad_group_bid_modifier_error = 59; - - // The reasons for the context error - ContextErrorEnum.ContextError context_error = 60; - - // The reasons for the field error - FieldErrorEnum.FieldError field_error = 61; - - // The reasons for the shared set error - SharedSetErrorEnum.SharedSetError shared_set_error = 62; - - // The reasons for the shared criterion error - SharedCriterionErrorEnum.SharedCriterionError shared_criterion_error = 63; - - // The reasons for the campaign shared set error - CampaignSharedSetErrorEnum.CampaignSharedSetError campaign_shared_set_error = 64; - - // The reasons for the conversion action error - ConversionActionErrorEnum.ConversionActionError conversion_action_error = 65; - - // The reasons for the conversion adjustment upload error - ConversionAdjustmentUploadErrorEnum.ConversionAdjustmentUploadError conversion_adjustment_upload_error = 115; - - // The reasons for the conversion upload error - ConversionUploadErrorEnum.ConversionUploadError conversion_upload_error = 111; - - // The reasons for the header error. - HeaderErrorEnum.HeaderError header_error = 66; - - // The reasons for the database error. - DatabaseErrorEnum.DatabaseError database_error = 67; - - // The reasons for the policy finding error. - PolicyFindingErrorEnum.PolicyFindingError policy_finding_error = 68; - - // The reason for enum error. - EnumErrorEnum.EnumError enum_error = 70; - - // The reason for keyword plan error. - KeywordPlanErrorEnum.KeywordPlanError keyword_plan_error = 71; - - // The reason for keyword plan campaign error. - KeywordPlanCampaignErrorEnum.KeywordPlanCampaignError keyword_plan_campaign_error = 72; - - // The reason for keyword plan campaign keyword error. - KeywordPlanCampaignKeywordErrorEnum.KeywordPlanCampaignKeywordError keyword_plan_campaign_keyword_error = 132; - - // The reason for keyword plan ad group error. - KeywordPlanAdGroupErrorEnum.KeywordPlanAdGroupError keyword_plan_ad_group_error = 74; - - // The reason for keyword plan ad group keyword error. - KeywordPlanAdGroupKeywordErrorEnum.KeywordPlanAdGroupKeywordError keyword_plan_ad_group_keyword_error = 133; - - // The reason for keyword idea error. - KeywordPlanIdeaErrorEnum.KeywordPlanIdeaError keyword_plan_idea_error = 76; - - // The reasons for account budget proposal errors. - AccountBudgetProposalErrorEnum.AccountBudgetProposalError account_budget_proposal_error = 77; - - // The reasons for the user list error - UserListErrorEnum.UserListError user_list_error = 78; - - // The reasons for the change status error - ChangeStatusErrorEnum.ChangeStatusError change_status_error = 79; - - // The reasons for the feed error - FeedErrorEnum.FeedError feed_error = 80; - - // The reasons for the geo target constant suggestion error. - GeoTargetConstantSuggestionErrorEnum.GeoTargetConstantSuggestionError geo_target_constant_suggestion_error = 81; - - // The reasons for the campaign draft error - CampaignDraftErrorEnum.CampaignDraftError campaign_draft_error = 82; - - // The reasons for the feed item error - FeedItemErrorEnum.FeedItemError feed_item_error = 83; - - // The reason for the label error. - LabelErrorEnum.LabelError label_error = 84; - - // The reasons for the billing setup error - BillingSetupErrorEnum.BillingSetupError billing_setup_error = 87; - - // The reasons for the customer client link error - CustomerClientLinkErrorEnum.CustomerClientLinkError customer_client_link_error = 88; - - // The reasons for the customer manager link error - CustomerManagerLinkErrorEnum.CustomerManagerLinkError customer_manager_link_error = 91; - - // The reasons for the feed mapping error - FeedMappingErrorEnum.FeedMappingError feed_mapping_error = 92; - - // The reasons for the customer feed error - CustomerFeedErrorEnum.CustomerFeedError customer_feed_error = 93; - - // The reasons for the ad group feed error - AdGroupFeedErrorEnum.AdGroupFeedError ad_group_feed_error = 94; - - // The reasons for the campaign feed error - CampaignFeedErrorEnum.CampaignFeedError campaign_feed_error = 96; - - // The reasons for the custom interest error - CustomInterestErrorEnum.CustomInterestError custom_interest_error = 97; - - // The reasons for the campaign experiment error - CampaignExperimentErrorEnum.CampaignExperimentError campaign_experiment_error = 98; - - // The reasons for the extension feed item error - ExtensionFeedItemErrorEnum.ExtensionFeedItemError extension_feed_item_error = 100; - - // The reasons for the ad parameter error - AdParameterErrorEnum.AdParameterError ad_parameter_error = 101; - - // The reasons for the feed item validation error - FeedItemValidationErrorEnum.FeedItemValidationError feed_item_validation_error = 102; - - // The reasons for the extension setting error - ExtensionSettingErrorEnum.ExtensionSettingError extension_setting_error = 103; - - // The reasons for the feed item target error - FeedItemTargetErrorEnum.FeedItemTargetError feed_item_target_error = 104; - - // The reasons for the policy violation error - PolicyViolationErrorEnum.PolicyViolationError policy_violation_error = 105; - - // The reasons for the mutate job error - PartialFailureErrorEnum.PartialFailureError partial_failure_error = 112; - - // The reasons for the policy validation parameter error - PolicyValidationParameterErrorEnum.PolicyValidationParameterError policy_validation_parameter_error = 114; - - // The reasons for the size limit error - SizeLimitErrorEnum.SizeLimitError size_limit_error = 118; - - // The reasons for the offline user data job error. - OfflineUserDataJobErrorEnum.OfflineUserDataJobError offline_user_data_job_error = 119; - - // The reasons for the not allowlisted error - NotAllowlistedErrorEnum.NotAllowlistedError not_allowlisted_error = 137; - - // The reasons for the manager link error - ManagerLinkErrorEnum.ManagerLinkError manager_link_error = 121; - - // The reasons for the currency code error - CurrencyCodeErrorEnum.CurrencyCodeError currency_code_error = 122; - - // The reasons for the access invitation error - AccessInvitationErrorEnum.AccessInvitationError access_invitation_error = 124; - - // The reasons for the reach plan error - ReachPlanErrorEnum.ReachPlanError reach_plan_error = 125; - - // The reasons for the invoice error - InvoiceErrorEnum.InvoiceError invoice_error = 126; - - // The reasons for errors in payments accounts service - PaymentsAccountErrorEnum.PaymentsAccountError payments_account_error = 127; - - // The reasons for the time zone error - TimeZoneErrorEnum.TimeZoneError time_zone_error = 128; - - // The reasons for the asset link error - AssetLinkErrorEnum.AssetLinkError asset_link_error = 129; - - // The reasons for the user data error. - UserDataErrorEnum.UserDataError user_data_error = 130; - - // The reasons for the batch job error - BatchJobErrorEnum.BatchJobError batch_job_error = 131; - - // The reasons for the account link status change error - AccountLinkErrorEnum.AccountLinkError account_link_error = 134; - - // The reasons for the third party app analytics link mutate error - ThirdPartyAppAnalyticsLinkErrorEnum.ThirdPartyAppAnalyticsLinkError third_party_app_analytics_link_error = 135; - } -} - -// Describes the part of the request proto that caused the error. -message ErrorLocation { - // A part of a field path. - message FieldPathElement { - // The name of a field or a oneof - string field_name = 1; - - // If field_name is a repeated field, this is the element that failed - google.protobuf.Int64Value index = 2; - } - - // A field path that indicates which field was invalid in the request. - repeated FieldPathElement field_path_elements = 2; -} - -// Additional error details. -message ErrorDetails { - // The error code that should have been returned, but wasn't. This is used - // when the error code is not published in the client specified version. - string unpublished_error_code = 1; - - // Describes an ad policy violation. - PolicyViolationDetails policy_violation_details = 2; - - // Describes policy violation findings. - PolicyFindingDetails policy_finding_details = 3; - - // Details on the quota error, including the scope (account or developer), the - // rate bucket name and the retry delay. - QuotaErrorDetails quota_error_details = 4; -} - -// Error returned as part of a mutate response. -// This error indicates single policy violation by some text -// in one of the fields. -message PolicyViolationDetails { - // Human readable description of policy violation. - string external_policy_description = 2; - - // Unique identifier for this violation. - // If policy is exemptible, this key may be used to request exemption. - google.ads.googleads.v5.common.PolicyViolationKey key = 4; - - // Human readable name of the policy. - string external_policy_name = 5; - - // Whether user can file an exemption request for this violation. - bool is_exemptible = 6; -} - -// Error returned as part of a mutate response. -// This error indicates one or more policy findings in the fields of a -// resource. -message PolicyFindingDetails { - // The list of policy topics for the resource. Contains the PROHIBITED or - // FULLY_LIMITED policy topic entries that prevented the resource from being - // saved (among any other entries the resource may also have). - repeated google.ads.googleads.v5.common.PolicyTopicEntry policy_topic_entries = 1; -} - -// Additional quota error details when there is QuotaError. -message QuotaErrorDetails { - // Enum of possible scopes that quota buckets belong to. - enum QuotaRateScope { - // Unspecified enum - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Per customer account quota - ACCOUNT = 2; - - // Per project or DevToken quota - DEVELOPER = 3; - } - - // The rate scope of the quota limit. - QuotaRateScope rate_scope = 1; - - // The high level description of the quota bucket. - // Examples are "Get requests for standard access" or "Requests per account". - string rate_name = 2; - - // Backoff period that customers should wait before sending next request. - google.protobuf.Duration retry_delay = 3; -} diff --git a/google/ads/googleads/v5/errors/extension_feed_item_error.proto b/google/ads/googleads/v5/errors/extension_feed_item_error.proto deleted file mode 100644 index 990128284..000000000 --- a/google/ads/googleads/v5/errors/extension_feed_item_error.proto +++ /dev/null @@ -1,195 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionFeedItemErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing extension feed item errors. - -// Container for enum describing possible extension feed item error. -message ExtensionFeedItemErrorEnum { - // Enum describing possible extension feed item errors. - enum ExtensionFeedItemError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Value is not within the accepted range. - VALUE_OUT_OF_RANGE = 2; - - // Url list is too long. - URL_LIST_TOO_LONG = 3; - - // Cannot have a geo targeting restriction without having geo targeting. - CANNOT_HAVE_RESTRICTION_ON_EMPTY_GEO_TARGETING = 4; - - // Cannot simultaneously set sitelink field with final urls. - CANNOT_SET_WITH_FINAL_URLS = 5; - - // Must set field with final urls. - CANNOT_SET_WITHOUT_FINAL_URLS = 6; - - // Phone number for a call extension is invalid. - INVALID_PHONE_NUMBER = 7; - - // Phone number for a call extension is not supported for the given country - // code. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 8; - - // A carrier specific number in short format is not allowed for call - // extensions. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 9; - - // Premium rate numbers are not allowed for call extensions. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 10; - - // Phone number type for a call extension is not allowed. - // For example, personal number is not allowed for a call extension in - // most regions. - DISALLOWED_NUMBER_TYPE = 11; - - // Phone number for a call extension does not meet domestic format - // requirements. - INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 12; - - // Vanity phone numbers (i.e. those including letters) are not allowed for - // call extensions. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 13; - - // Call conversion action provided for a call extension is invalid. - INVALID_CALL_CONVERSION_ACTION = 14; - - // For a call extension, the customer is not on the allow-list for call - // tracking. - CUSTOMER_NOT_ON_ALLOWLIST_FOR_CALLTRACKING = 47; - - // Call tracking is not supported for the given country for a call - // extension. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 16; - - // Customer hasn't consented for call recording, which is required for - // creating/updating call feed items. Please see - // https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 17; - - // App id provided for an app extension is invalid. - INVALID_APP_ID = 18; - - // Quotation marks present in the review text for a review extension. - QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 19; - - // Hyphen character present in the review text for a review extension. - HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 20; - - // A denylisted review source name or url was provided for a review - // extension. - REVIEW_EXTENSION_SOURCE_INELIGIBLE = 21; - - // Review source name should not be found in the review text. - SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 22; - - // Inconsistent currency codes. - INCONSISTENT_CURRENCY_CODES = 23; - - // Price extension cannot have duplicated headers. - PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 24; - - // Price item cannot have duplicated header and description. - PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 25; - - // Price extension has too few items. - PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 26; - - // Price extension has too many items. - PRICE_EXTENSION_HAS_TOO_MANY_ITEMS = 27; - - // The input value is not currently supported. - UNSUPPORTED_VALUE = 28; - - // The input value is not currently supported in the selected language of an - // extension. - UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE = 29; - - // Unknown or unsupported device preference. - INVALID_DEVICE_PREFERENCE = 30; - - // Invalid feed item schedule end time (i.e., endHour = 24 and endMinute != - // 0). - INVALID_SCHEDULE_END = 31; - - // Date time zone does not match the account's time zone. - DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 32; - - // Invalid structured snippet header. - INVALID_SNIPPETS_HEADER = 33; - - // Cannot operate on removed feed item. - CANNOT_OPERATE_ON_REMOVED_FEED_ITEM = 34; - - // Phone number not supported when call tracking enabled for country. - PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 35; - - // Cannot set call_conversion_action while call_conversion_tracking_enabled - // is set to true. - CONFLICTING_CALL_CONVERSION_SETTINGS = 36; - - // The type of the input extension feed item doesn't match the existing - // extension feed item. - EXTENSION_TYPE_MISMATCH = 37; - - // The oneof field extension i.e. subtype of extension feed item is - // required. - EXTENSION_SUBTYPE_REQUIRED = 38; - - // The referenced feed item is not mapped to a supported extension type. - EXTENSION_TYPE_UNSUPPORTED = 39; - - // Cannot operate on a Feed with more than one active FeedMapping. - CANNOT_OPERATE_ON_FEED_WITH_MULTIPLE_MAPPINGS = 40; - - // Cannot operate on a Feed that has key attributes. - CANNOT_OPERATE_ON_FEED_WITH_KEY_ATTRIBUTES = 41; - - // Input price is not in a valid format. - INVALID_PRICE_FORMAT = 42; - - // The promotion time is invalid. - PROMOTION_INVALID_TIME = 43; - - // This field has too many decimal places specified. - TOO_MANY_DECIMAL_PLACES_SPECIFIED = 44; - - // Concrete sub type of ExtensionFeedItem is required for this operation. - CONCRETE_EXTENSION_TYPE_REQUIRED = 45; - - // Feed item schedule end time must be after start time. - SCHEDULE_END_NOT_AFTER_START = 46; - } - - -} diff --git a/google/ads/googleads/v5/errors/extension_setting_error.proto b/google/ads/googleads/v5/errors/extension_setting_error.proto deleted file mode 100644 index 721f66df0..000000000 --- a/google/ads/googleads/v5/errors/extension_setting_error.proto +++ /dev/null @@ -1,261 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionSettingErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing extension setting validation errors. - -// Container for enum describing validation errors of extension settings. -message ExtensionSettingErrorEnum { - // Enum describing possible extension setting errors. - enum ExtensionSettingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A platform restriction was provided without input extensions or existing - // extensions. - EXTENSIONS_REQUIRED = 2; - - // The provided feed type does not correspond to the provided extensions. - FEED_TYPE_EXTENSION_TYPE_MISMATCH = 3; - - // The provided feed type cannot be used. - INVALID_FEED_TYPE = 4; - - // The provided feed type cannot be used at the customer level. - INVALID_FEED_TYPE_FOR_CUSTOMER_EXTENSION_SETTING = 5; - - // Cannot change a feed item field on a CREATE operation. - CANNOT_CHANGE_FEED_ITEM_ON_CREATE = 6; - - // Cannot update an extension that is not already in this setting. - CANNOT_UPDATE_NEWLY_CREATED_EXTENSION = 7; - - // There is no existing AdGroupExtensionSetting for this type. - NO_EXISTING_AD_GROUP_EXTENSION_SETTING_FOR_TYPE = 8; - - // There is no existing CampaignExtensionSetting for this type. - NO_EXISTING_CAMPAIGN_EXTENSION_SETTING_FOR_TYPE = 9; - - // There is no existing CustomerExtensionSetting for this type. - NO_EXISTING_CUSTOMER_EXTENSION_SETTING_FOR_TYPE = 10; - - // The AdGroupExtensionSetting already exists. UPDATE should be used to - // modify the existing AdGroupExtensionSetting. - AD_GROUP_EXTENSION_SETTING_ALREADY_EXISTS = 11; - - // The CampaignExtensionSetting already exists. UPDATE should be used to - // modify the existing CampaignExtensionSetting. - CAMPAIGN_EXTENSION_SETTING_ALREADY_EXISTS = 12; - - // The CustomerExtensionSetting already exists. UPDATE should be used to - // modify the existing CustomerExtensionSetting. - CUSTOMER_EXTENSION_SETTING_ALREADY_EXISTS = 13; - - // An active ad group feed already exists for this place holder type. - AD_GROUP_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 14; - - // An active campaign feed already exists for this place holder type. - CAMPAIGN_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 15; - - // An active customer feed already exists for this place holder type. - CUSTOMER_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 16; - - // Value is not within the accepted range. - VALUE_OUT_OF_RANGE = 17; - - // Cannot simultaneously set specified field with final urls. - CANNOT_SET_FIELD_WITH_FINAL_URLS = 18; - - // Must set field with final urls. - FINAL_URLS_NOT_SET = 19; - - // Phone number for a call extension is invalid. - INVALID_PHONE_NUMBER = 20; - - // Phone number for a call extension is not supported for the given country - // code. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 21; - - // A carrier specific number in short format is not allowed for call - // extensions. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 22; - - // Premium rate numbers are not allowed for call extensions. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 23; - - // Phone number type for a call extension is not allowed. - DISALLOWED_NUMBER_TYPE = 24; - - // Phone number for a call extension does not meet domestic format - // requirements. - INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 25; - - // Vanity phone numbers (i.e. those including letters) are not allowed for - // call extensions. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 26; - - // Country code provided for a call extension is invalid. - INVALID_COUNTRY_CODE = 27; - - // Call conversion type id provided for a call extension is invalid. - INVALID_CALL_CONVERSION_TYPE_ID = 28; - - // For a call extension, the customer is not on the allow-list for call - // tracking. - CUSTOMER_NOT_IN_ALLOWLIST_FOR_CALLTRACKING = 69; - - // Call tracking is not supported for the given country for a call - // extension. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 30; - - // App id provided for an app extension is invalid. - INVALID_APP_ID = 31; - - // Quotation marks present in the review text for a review extension. - QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 32; - - // Hyphen character present in the review text for a review extension. - HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 33; - - // A blocked review source name or url was provided for a review - // extension. - REVIEW_EXTENSION_SOURCE_NOT_ELIGIBLE = 34; - - // Review source name should not be found in the review text. - SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 35; - - // Field must be set. - MISSING_FIELD = 36; - - // Inconsistent currency codes. - INCONSISTENT_CURRENCY_CODES = 37; - - // Price extension cannot have duplicated headers. - PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 38; - - // Price item cannot have duplicated header and description. - PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 39; - - // Price extension has too few items - PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 40; - - // Price extension has too many items - PRICE_EXTENSION_HAS_TOO_MANY_ITEMS = 41; - - // The input value is not currently supported. - UNSUPPORTED_VALUE = 42; - - // Unknown or unsupported device preference. - INVALID_DEVICE_PREFERENCE = 43; - - // Invalid feed item schedule end time (i.e., endHour = 24 and - // endMinute != 0). - INVALID_SCHEDULE_END = 45; - - // Date time zone does not match the account's time zone. - DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 47; - - // Overlapping feed item schedule times (e.g., 7-10AM and 8-11AM) are not - // allowed. - OVERLAPPING_SCHEDULES_NOT_ALLOWED = 48; - - // Feed item schedule end time must be after start time. - SCHEDULE_END_NOT_AFTER_START = 49; - - // There are too many feed item schedules per day. - TOO_MANY_SCHEDULES_PER_DAY = 50; - - // Cannot edit the same extension feed item more than once in the same - // request. - DUPLICATE_EXTENSION_FEED_ITEM_EDIT = 51; - - // Invalid structured snippet header. - INVALID_SNIPPETS_HEADER = 52; - - // Phone number with call tracking enabled is not supported for the - // specified country. - PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 53; - - // The targeted adgroup must belong to the targeted campaign. - CAMPAIGN_TARGETING_MISMATCH = 54; - - // The feed used by the ExtensionSetting is removed and cannot be operated - // on. Remove the ExtensionSetting to allow a new one to be created using - // an active feed. - CANNOT_OPERATE_ON_REMOVED_FEED = 55; - - // The ExtensionFeedItem type is required for this operation. - EXTENSION_TYPE_REQUIRED = 56; - - // The matching function that links the extension feed to the customer, - // campaign, or ad group is not compatible with the ExtensionSetting - // services. - INCOMPATIBLE_UNDERLYING_MATCHING_FUNCTION = 57; - - // Start date must be before end date. - START_DATE_AFTER_END_DATE = 58; - - // Input price is not in a valid format. - INVALID_PRICE_FORMAT = 59; - - // The promotion time is invalid. - PROMOTION_INVALID_TIME = 60; - - // Cannot set both percent discount and money discount fields. - PROMOTION_CANNOT_SET_PERCENT_DISCOUNT_AND_MONEY_DISCOUNT = 61; - - // Cannot set both promotion code and orders over amount fields. - PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 62; - - // This field has too many decimal places specified. - TOO_MANY_DECIMAL_PLACES_SPECIFIED = 63; - - // The language code is not valid. - INVALID_LANGUAGE_CODE = 64; - - // The language is not supported. - UNSUPPORTED_LANGUAGE = 65; - - // Customer hasn't consented for call recording, which is required for - // adding/updating call extensions. Please see - // https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 66; - - // The UPDATE operation does not specify any fields other than the resource - // name in the update mask. - EXTENSION_SETTING_UPDATE_IS_A_NOOP = 67; - - // The extension contains text which has been prohibited on policy grounds. - DISALLOWED_TEXT = 68; - } - - -} diff --git a/google/ads/googleads/v5/errors/feed_attribute_reference_error.proto b/google/ads/googleads/v5/errors/feed_attribute_reference_error.proto deleted file mode 100644 index 6ba1398c9..000000000 --- a/google/ads/googleads/v5/errors/feed_attribute_reference_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedAttributeReferenceErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing feed attribute reference errors. - -// Container for enum describing possible feed attribute reference errors. -message FeedAttributeReferenceErrorEnum { - // Enum describing possible feed attribute reference errors. - enum FeedAttributeReferenceError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A feed referenced by ID has been removed. - CANNOT_REFERENCE_REMOVED_FEED = 2; - - // There is no enabled feed with the given name. - INVALID_FEED_NAME = 3; - - // There is no feed attribute in an enabled feed with the given name. - INVALID_FEED_ATTRIBUTE_NAME = 4; - } - - -} diff --git a/google/ads/googleads/v5/errors/feed_error.proto b/google/ads/googleads/v5/errors/feed_error.proto deleted file mode 100644 index 0ee975c9b..000000000 --- a/google/ads/googleads/v5/errors/feed_error.proto +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing feed errors. - -// Container for enum describing possible feed errors. -message FeedErrorEnum { - // Enum describing possible feed errors. - enum FeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The names of the FeedAttributes must be unique. - ATTRIBUTE_NAMES_NOT_UNIQUE = 2; - - // The attribute list must be an exact copy of the existing list if the - // attribute ID's are present. - ATTRIBUTES_DO_NOT_MATCH_EXISTING_ATTRIBUTES = 3; - - // Cannot specify USER origin for a system generated feed. - CANNOT_SPECIFY_USER_ORIGIN_FOR_SYSTEM_FEED = 4; - - // Cannot specify GOOGLE origin for a non-system generated feed. - CANNOT_SPECIFY_GOOGLE_ORIGIN_FOR_NON_SYSTEM_FEED = 5; - - // Cannot specify feed attributes for system feed. - CANNOT_SPECIFY_FEED_ATTRIBUTES_FOR_SYSTEM_FEED = 6; - - // Cannot update FeedAttributes on feed with origin GOOGLE. - CANNOT_UPDATE_FEED_ATTRIBUTES_WITH_ORIGIN_GOOGLE = 7; - - // The given ID refers to a removed Feed. Removed Feeds are immutable. - FEED_REMOVED = 8; - - // The origin of the feed is not valid for the client. - INVALID_ORIGIN_VALUE = 9; - - // A user can only create and modify feeds with USER origin. - FEED_ORIGIN_IS_NOT_USER = 10; - - // Invalid auth token for the given email. - INVALID_AUTH_TOKEN_FOR_EMAIL = 11; - - // Invalid email specified. - INVALID_EMAIL = 12; - - // Feed name matches that of another active Feed. - DUPLICATE_FEED_NAME = 13; - - // Name of feed is not allowed. - INVALID_FEED_NAME = 14; - - // Missing OAuthInfo. - MISSING_OAUTH_INFO = 15; - - // New FeedAttributes must not affect the unique key. - NEW_ATTRIBUTE_CANNOT_BE_PART_OF_UNIQUE_KEY = 16; - - // Too many FeedAttributes for a Feed. - TOO_MANY_ATTRIBUTES = 17; - - // The business account is not valid. - INVALID_BUSINESS_ACCOUNT = 18; - - // Business account cannot access Google My Business account. - BUSINESS_ACCOUNT_CANNOT_ACCESS_LOCATION_ACCOUNT = 19; - - // Invalid chain ID provided for affiliate location feed. - INVALID_AFFILIATE_CHAIN_ID = 20; - - // There is already a feed with the given system feed generation data. - DUPLICATE_SYSTEM_FEED = 21; - - // An error occurred accessing GMB account. - GMB_ACCESS_ERROR = 22; - - // A customer cannot have both LOCATION and AFFILIATE_LOCATION feeds. - CANNOT_HAVE_LOCATION_AND_AFFILIATE_LOCATION_FEEDS = 23; - } - - -} diff --git a/google/ads/googleads/v5/errors/feed_item_error.proto b/google/ads/googleads/v5/errors/feed_item_error.proto deleted file mode 100644 index 4352b41d6..000000000 --- a/google/ads/googleads/v5/errors/feed_item_error.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing feed item errors. - -// Container for enum describing possible feed item errors. -message FeedItemErrorEnum { - // Enum describing possible feed item errors. - enum FeedItemError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot convert the feed attribute value from string to its real type. - CANNOT_CONVERT_ATTRIBUTE_VALUE_FROM_STRING = 2; - - // Cannot operate on removed feed item. - CANNOT_OPERATE_ON_REMOVED_FEED_ITEM = 3; - - // Date time zone does not match the account's time zone. - DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 4; - - // Feed item with the key attributes could not be found. - KEY_ATTRIBUTES_NOT_FOUND = 5; - - // Url feed attribute value is not valid. - INVALID_URL = 6; - - // Some key attributes are missing. - MISSING_KEY_ATTRIBUTES = 7; - - // Feed item has same key attributes as another feed item. - KEY_ATTRIBUTES_NOT_UNIQUE = 8; - - // Cannot modify key attributes on an existing feed item. - CANNOT_MODIFY_KEY_ATTRIBUTE_VALUE = 9; - - // The feed attribute value is too large. - SIZE_TOO_LARGE_FOR_MULTI_VALUE_ATTRIBUTE = 10; - } - - -} diff --git a/google/ads/googleads/v5/errors/feed_item_target_error.proto b/google/ads/googleads/v5/errors/feed_item_target_error.proto deleted file mode 100644 index d40b14c77..000000000 --- a/google/ads/googleads/v5/errors/feed_item_target_error.proto +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing feed item target errors. - -// Container for enum describing possible feed item target errors. -message FeedItemTargetErrorEnum { - // Enum describing possible feed item target errors. - enum FeedItemTargetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // On CREATE, the FeedItemTarget must have a populated field in the oneof - // target. - MUST_SET_TARGET_ONEOF_ON_CREATE = 2; - - // The specified feed item target already exists, so it cannot be added. - FEED_ITEM_TARGET_ALREADY_EXISTS = 3; - - // The schedules for a given feed item cannot overlap. - FEED_ITEM_SCHEDULES_CANNOT_OVERLAP = 4; - - // Too many targets of a given type were added for a single feed item. - TARGET_LIMIT_EXCEEDED_FOR_GIVEN_TYPE = 5; - - // Too many AdSchedules are enabled for the feed item for the given day. - TOO_MANY_SCHEDULES_PER_DAY = 6; - - // A feed item may either have an enabled campaign target or an enabled ad - // group target. - CANNOT_HAVE_ENABLED_CAMPAIGN_AND_ENABLED_AD_GROUP_TARGETS = 7; - - // Duplicate ad schedules aren't allowed. - DUPLICATE_AD_SCHEDULE = 8; - - // Duplicate keywords aren't allowed. - DUPLICATE_KEYWORD = 9; - } - - -} diff --git a/google/ads/googleads/v5/errors/feed_item_validation_error.proto b/google/ads/googleads/v5/errors/feed_item_validation_error.proto deleted file mode 100644 index 633b9c870..000000000 --- a/google/ads/googleads/v5/errors/feed_item_validation_error.proto +++ /dev/null @@ -1,353 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemValidationErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing feed item validation errors. - -// Container for enum describing possible validation errors of a feed item. -message FeedItemValidationErrorEnum { - // The possible validation errors of a feed item. - enum FeedItemValidationError { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // String is too short. - STRING_TOO_SHORT = 2; - - // String is too long. - STRING_TOO_LONG = 3; - - // Value is not provided. - VALUE_NOT_SPECIFIED = 4; - - // Phone number format is invalid for region. - INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 5; - - // String does not represent a phone number. - INVALID_PHONE_NUMBER = 6; - - // Phone number format is not compatible with country code. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 7; - - // Premium rate number is not allowed. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 8; - - // Phone number type is not allowed. - DISALLOWED_NUMBER_TYPE = 9; - - // Specified value is outside of the valid range. - VALUE_OUT_OF_RANGE = 10; - - // Call tracking is not supported in the selected country. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 11; - - // Customer is not on the allow-list for call tracking. - CUSTOMER_NOT_IN_ALLOWLIST_FOR_CALLTRACKING = 99; - - // Country code is invalid. - INVALID_COUNTRY_CODE = 13; - - // The specified mobile app id is invalid. - INVALID_APP_ID = 14; - - // Some required field attributes are missing. - MISSING_ATTRIBUTES_FOR_FIELDS = 15; - - // Invalid email button type for email extension. - INVALID_TYPE_ID = 16; - - // Email address is invalid. - INVALID_EMAIL_ADDRESS = 17; - - // The HTTPS URL in email extension is invalid. - INVALID_HTTPS_URL = 18; - - // Delivery address is missing from email extension. - MISSING_DELIVERY_ADDRESS = 19; - - // FeedItem scheduling start date comes after end date. - START_DATE_AFTER_END_DATE = 20; - - // FeedItem scheduling start time is missing. - MISSING_FEED_ITEM_START_TIME = 21; - - // FeedItem scheduling end time is missing. - MISSING_FEED_ITEM_END_TIME = 22; - - // Cannot compute system attributes on a FeedItem that has no FeedItemId. - MISSING_FEED_ITEM_ID = 23; - - // Call extension vanity phone numbers are not supported. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 24; - - // Invalid review text. - INVALID_REVIEW_EXTENSION_SNIPPET = 25; - - // Invalid format for numeric value in ad parameter. - INVALID_NUMBER_FORMAT = 26; - - // Invalid format for date value in ad parameter. - INVALID_DATE_FORMAT = 27; - - // Invalid format for price value in ad parameter. - INVALID_PRICE_FORMAT = 28; - - // Unrecognized type given for value in ad parameter. - UNKNOWN_PLACEHOLDER_FIELD = 29; - - // Enhanced sitelinks must have both description lines specified. - MISSING_ENHANCED_SITELINK_DESCRIPTION_LINE = 30; - - // Review source is ineligible. - REVIEW_EXTENSION_SOURCE_INELIGIBLE = 31; - - // Review text cannot contain hyphens or dashes. - HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 32; - - // Review text cannot contain double quote characters. - DOUBLE_QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 33; - - // Review text cannot contain quote characters. - QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 34; - - // Parameters are encoded in the wrong format. - INVALID_FORM_ENCODED_PARAMS = 35; - - // URL parameter name must contain only letters, numbers, underscores, and - // dashes. - INVALID_URL_PARAMETER_NAME = 36; - - // Cannot find address location. - NO_GEOCODING_RESULT = 37; - - // Review extension text has source name. - SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 38; - - // Some phone numbers can be shorter than usual. Some of these short numbers - // are carrier-specific, and we disallow those in ad extensions because they - // will not be available to all users. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 39; - - // Triggered when a request references a placeholder field id that does not - // exist. - INVALID_PLACEHOLDER_FIELD_ID = 40; - - // URL contains invalid ValueTrack tags or format. - INVALID_URL_TAG = 41; - - // Provided list exceeds acceptable size. - LIST_TOO_LONG = 42; - - // Certain combinations of attributes aren't allowed to be specified in the - // same feed item. - INVALID_ATTRIBUTES_COMBINATION = 43; - - // An attribute has the same value repeatedly. - DUPLICATE_VALUES = 44; - - // Advertisers can link a conversion action with a phone number to indicate - // that sufficiently long calls forwarded to that phone number should be - // counted as conversions of the specified type. This is an error message - // indicating that the conversion action specified is invalid (e.g., the - // conversion action does not exist within the appropriate Google Ads - // account, or it is a type of conversion not appropriate to phone call - // conversions). - INVALID_CALL_CONVERSION_ACTION_ID = 45; - - // Tracking template requires final url to be set. - CANNOT_SET_WITHOUT_FINAL_URLS = 46; - - // An app id was provided that doesn't exist in the given app store. - APP_ID_DOESNT_EXIST_IN_APP_STORE = 47; - - // Invalid U2 final url. - INVALID_FINAL_URL = 48; - - // Invalid U2 tracking url. - INVALID_TRACKING_URL = 49; - - // Final URL should start from App download URL. - INVALID_FINAL_URL_FOR_APP_DOWNLOAD_URL = 50; - - // List provided is too short. - LIST_TOO_SHORT = 51; - - // User Action field has invalid value. - INVALID_USER_ACTION = 52; - - // Type field has invalid value. - INVALID_TYPE_NAME = 53; - - // Change status for event is invalid. - INVALID_EVENT_CHANGE_STATUS = 54; - - // The header of a structured snippets extension is not one of the valid - // headers. - INVALID_SNIPPETS_HEADER = 55; - - // Android app link is not formatted correctly - INVALID_ANDROID_APP_LINK = 56; - - // Phone number incompatible with call tracking for country. - NUMBER_TYPE_WITH_CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 57; - - // The input is identical to a reserved keyword - RESERVED_KEYWORD_OTHER = 58; - - // Each option label in the message extension must be unique. - DUPLICATE_OPTION_LABELS = 59; - - // Each option prefill in the message extension must be unique. - DUPLICATE_OPTION_PREFILLS = 60; - - // In message extensions, the number of optional labels and optional - // prefills must be the same. - UNEQUAL_LIST_LENGTHS = 61; - - // All currency codes in an ad extension must be the same. - INCONSISTENT_CURRENCY_CODES = 62; - - // Headers in price extension are not unique. - PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 63; - - // Header and description in an item are the same. - ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 64; - - // Price extension has too few items. - PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 65; - - // The given value is not supported. - UNSUPPORTED_VALUE = 66; - - // Invalid final mobile url. - INVALID_FINAL_MOBILE_URL = 67; - - // The given string value of Label contains invalid characters - INVALID_KEYWORDLESS_AD_RULE_LABEL = 68; - - // The given URL contains value track parameters. - VALUE_TRACK_PARAMETER_NOT_SUPPORTED = 69; - - // The given value is not supported in the selected language of an - // extension. - UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE = 70; - - // The iOS app link is not formatted correctly. - INVALID_IOS_APP_LINK = 71; - - // iOS app link or iOS app store id is missing. - MISSING_IOS_APP_LINK_OR_IOS_APP_STORE_ID = 72; - - // Promotion time is invalid. - PROMOTION_INVALID_TIME = 73; - - // Both the percent off and money amount off fields are set. - PROMOTION_CANNOT_SET_PERCENT_OFF_AND_MONEY_AMOUNT_OFF = 74; - - // Both the promotion code and orders over amount fields are set. - PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 75; - - // Too many decimal places are specified. - TOO_MANY_DECIMAL_PLACES_SPECIFIED = 76; - - // Ad Customizers are present and not allowed. - AD_CUSTOMIZERS_NOT_ALLOWED = 77; - - // Language code is not valid. - INVALID_LANGUAGE_CODE = 78; - - // Language is not supported. - UNSUPPORTED_LANGUAGE = 79; - - // IF Function is present and not allowed. - IF_FUNCTION_NOT_ALLOWED = 80; - - // Final url suffix is not valid. - INVALID_FINAL_URL_SUFFIX = 81; - - // Final url suffix contains an invalid tag. - INVALID_TAG_IN_FINAL_URL_SUFFIX = 82; - - // Final url suffix is formatted incorrectly. - INVALID_FINAL_URL_SUFFIX_FORMAT = 83; - - // Consent for call recording, which is required for the use of call - // extensions, was not provided by the advertiser. Please see - // https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 84; - - // Multiple message delivery options are set. - ONLY_ONE_DELIVERY_OPTION_IS_ALLOWED = 85; - - // No message delivery option is set. - NO_DELIVERY_OPTION_IS_SET = 86; - - // String value of conversion reporting state field is not valid. - INVALID_CONVERSION_REPORTING_STATE = 87; - - // Image size is not right. - IMAGE_SIZE_WRONG = 88; - - // Email delivery is not supported in the country specified in the country - // code field. - EMAIL_DELIVERY_NOT_AVAILABLE_IN_COUNTRY = 89; - - // Auto reply is not supported in the country specified in the country code - // field. - AUTO_REPLY_NOT_AVAILABLE_IN_COUNTRY = 90; - - // Invalid value specified for latitude. - INVALID_LATITUDE_VALUE = 91; - - // Invalid value specified for longitude. - INVALID_LONGITUDE_VALUE = 92; - - // Too many label fields provided. - TOO_MANY_LABELS = 93; - - // Invalid image url. - INVALID_IMAGE_URL = 94; - - // Latitude value is missing. - MISSING_LATITUDE_VALUE = 95; - - // Longitude value is missing. - MISSING_LONGITUDE_VALUE = 96; - - // Unable to find address. - ADDRESS_NOT_FOUND = 97; - - // Cannot target provided address. - ADDRESS_NOT_TARGETABLE = 98; - } - - -} diff --git a/google/ads/googleads/v5/errors/feed_mapping_error.proto b/google/ads/googleads/v5/errors/feed_mapping_error.proto deleted file mode 100644 index e1f5944b8..000000000 --- a/google/ads/googleads/v5/errors/feed_mapping_error.proto +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing feed item errors. - -// Container for enum describing possible feed item errors. -message FeedMappingErrorEnum { - // Enum describing possible feed item errors. - enum FeedMappingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The given placeholder field does not exist. - INVALID_PLACEHOLDER_FIELD = 2; - - // The given criterion field does not exist. - INVALID_CRITERION_FIELD = 3; - - // The given placeholder type does not exist. - INVALID_PLACEHOLDER_TYPE = 4; - - // The given criterion type does not exist. - INVALID_CRITERION_TYPE = 5; - - // A feed mapping must contain at least one attribute field mapping. - NO_ATTRIBUTE_FIELD_MAPPINGS = 7; - - // The type of the feed attribute referenced in the attribute field mapping - // must match the type of the placeholder field. - FEED_ATTRIBUTE_TYPE_MISMATCH = 8; - - // A feed mapping for a system generated feed cannot be operated on. - CANNOT_OPERATE_ON_MAPPINGS_FOR_SYSTEM_GENERATED_FEED = 9; - - // Only one feed mapping for a placeholder type is allowed per feed or - // customer (depending on the placeholder type). - MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_TYPE = 10; - - // Only one feed mapping for a criterion type is allowed per customer. - MULTIPLE_MAPPINGS_FOR_CRITERION_TYPE = 11; - - // Only one feed attribute mapping for a placeholder field is allowed - // (depending on the placeholder type). - MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_FIELD = 12; - - // Only one feed attribute mapping for a criterion field is allowed - // (depending on the criterion type). - MULTIPLE_MAPPINGS_FOR_CRITERION_FIELD = 13; - - // This feed mapping may not contain any explicit attribute field mappings. - UNEXPECTED_ATTRIBUTE_FIELD_MAPPINGS = 14; - - // Location placeholder feed mappings can only be created for Places feeds. - LOCATION_PLACEHOLDER_ONLY_FOR_PLACES_FEEDS = 15; - - // Mappings for typed feeds cannot be modified. - CANNOT_MODIFY_MAPPINGS_FOR_TYPED_FEED = 16; - - // The given placeholder type can only be mapped to system generated feeds. - INVALID_PLACEHOLDER_TYPE_FOR_NON_SYSTEM_GENERATED_FEED = 17; - - // The given placeholder type cannot be mapped to a system generated feed - // with the given type. - INVALID_PLACEHOLDER_TYPE_FOR_SYSTEM_GENERATED_FEED_TYPE = 18; - - // The "field" oneof was not set in an AttributeFieldMapping. - ATTRIBUTE_FIELD_MAPPING_MISSING_FIELD = 19; - } - - -} diff --git a/google/ads/googleads/v5/errors/field_error.proto b/google/ads/googleads/v5/errors/field_error.proto deleted file mode 100644 index c80d57a49..000000000 --- a/google/ads/googleads/v5/errors/field_error.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FieldErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing field errors. - -// Container for enum describing possible field errors. -message FieldErrorEnum { - // Enum describing possible field errors. - enum FieldError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The required field was not present. - REQUIRED = 2; - - // The field attempted to be mutated is immutable. - IMMUTABLE_FIELD = 3; - - // The field's value is invalid. - INVALID_VALUE = 4; - - // The field cannot be set. - VALUE_MUST_BE_UNSET = 5; - - // The required repeated field was empty. - REQUIRED_NONEMPTY_LIST = 6; - - // The field cannot be cleared. - FIELD_CANNOT_BE_CLEARED = 7; - - // The field's value is on a deny-list for this field. - BLOCKED_VALUE = 9; - } - - -} diff --git a/google/ads/googleads/v5/errors/field_mask_error.proto b/google/ads/googleads/v5/errors/field_mask_error.proto deleted file mode 100644 index 6375067f4..000000000 --- a/google/ads/googleads/v5/errors/field_mask_error.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FieldMaskErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing field mask errors. - -// Container for enum describing possible field mask errors. -message FieldMaskErrorEnum { - // Enum describing possible field mask errors. - enum FieldMaskError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The field mask must be provided for update operations. - FIELD_MASK_MISSING = 5; - - // The field mask must be empty for create and remove operations. - FIELD_MASK_NOT_ALLOWED = 4; - - // The field mask contained an invalid field. - FIELD_NOT_FOUND = 2; - - // The field mask updated a field with subfields. Fields with subfields may - // be cleared, but not updated. To fix this, the field mask should select - // all the subfields of the invalid field. - FIELD_HAS_SUBFIELDS = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/function_error.proto b/google/ads/googleads/v5/errors/function_error.proto deleted file mode 100644 index 0ad8fcf55..000000000 --- a/google/ads/googleads/v5/errors/function_error.proto +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FunctionErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing function errors. - -// Container for enum describing possible function errors. -message FunctionErrorEnum { - // Enum describing possible function errors. - enum FunctionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The format of the function is not recognized as a supported function - // format. - INVALID_FUNCTION_FORMAT = 2; - - // Operand data types do not match. - DATA_TYPE_MISMATCH = 3; - - // The operands cannot be used together in a conjunction. - INVALID_CONJUNCTION_OPERANDS = 4; - - // Invalid numer of Operands. - INVALID_NUMBER_OF_OPERANDS = 5; - - // Operand Type not supported. - INVALID_OPERAND_TYPE = 6; - - // Operator not supported. - INVALID_OPERATOR = 7; - - // Request context type not supported. - INVALID_REQUEST_CONTEXT_TYPE = 8; - - // The matching function is not allowed for call placeholders - INVALID_FUNCTION_FOR_CALL_PLACEHOLDER = 9; - - // The matching function is not allowed for the specified placeholder - INVALID_FUNCTION_FOR_PLACEHOLDER = 10; - - // Invalid operand. - INVALID_OPERAND = 11; - - // Missing value for the constant operand. - MISSING_CONSTANT_OPERAND_VALUE = 12; - - // The value of the constant operand is invalid. - INVALID_CONSTANT_OPERAND_VALUE = 13; - - // Invalid function nesting. - INVALID_NESTING = 14; - - // The Feed ID was different from another Feed ID in the same function. - MULTIPLE_FEED_IDS_NOT_SUPPORTED = 15; - - // The matching function is invalid for use with a feed with a fixed schema. - INVALID_FUNCTION_FOR_FEED_WITH_FIXED_SCHEMA = 16; - - // Invalid attribute name. - INVALID_ATTRIBUTE_NAME = 17; - } - - -} diff --git a/google/ads/googleads/v5/errors/function_parsing_error.proto b/google/ads/googleads/v5/errors/function_parsing_error.proto deleted file mode 100644 index 3009cb827..000000000 --- a/google/ads/googleads/v5/errors/function_parsing_error.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FunctionParsingErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing function parsing errors. - -// Container for enum describing possible function parsing errors. -message FunctionParsingErrorEnum { - // Enum describing possible function parsing errors. - enum FunctionParsingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Unexpected end of function string. - NO_MORE_INPUT = 2; - - // Could not find an expected character. - EXPECTED_CHARACTER = 3; - - // Unexpected separator character. - UNEXPECTED_SEPARATOR = 4; - - // Unmatched left bracket or parenthesis. - UNMATCHED_LEFT_BRACKET = 5; - - // Unmatched right bracket or parenthesis. - UNMATCHED_RIGHT_BRACKET = 6; - - // Functions are nested too deeply. - TOO_MANY_NESTED_FUNCTIONS = 7; - - // Missing right-hand-side operand. - MISSING_RIGHT_HAND_OPERAND = 8; - - // Invalid operator/function name. - INVALID_OPERATOR_NAME = 9; - - // Feed attribute operand's argument is not an integer. - FEED_ATTRIBUTE_OPERAND_ARGUMENT_NOT_INTEGER = 10; - - // Missing function operands. - NO_OPERANDS = 11; - - // Function had too many operands. - TOO_MANY_OPERANDS = 12; - } - - -} diff --git a/google/ads/googleads/v5/errors/geo_target_constant_suggestion_error.proto b/google/ads/googleads/v5/errors/geo_target_constant_suggestion_error.proto deleted file mode 100644 index f54aa8e5c..000000000 --- a/google/ads/googleads/v5/errors/geo_target_constant_suggestion_error.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantSuggestionErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Container for enum describing possible geo target constant suggestion errors. -message GeoTargetConstantSuggestionErrorEnum { - // Enum describing possible geo target constant suggestion errors. - enum GeoTargetConstantSuggestionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A location name cannot be greater than 300 characters. - LOCATION_NAME_SIZE_LIMIT = 2; - - // At most 25 location names can be specified in a SuggestGeoTargetConstants - // method. - LOCATION_NAME_LIMIT = 3; - - // The country code is invalid. - INVALID_COUNTRY_CODE = 4; - - // Geo target constant resource names or location names must be provided in - // the request. - REQUEST_PARAMETERS_UNSET = 5; - } - - -} diff --git a/google/ads/googleads/v5/errors/header_error.proto b/google/ads/googleads/v5/errors/header_error.proto deleted file mode 100644 index 5dce5472d..000000000 --- a/google/ads/googleads/v5/errors/header_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "HeaderErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing header errors. - -// Container for enum describing possible header errors. -message HeaderErrorEnum { - // Enum describing possible header errors. - enum HeaderError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The login customer id could not be validated. - INVALID_LOGIN_CUSTOMER_ID = 3; - - // The linked customer id could not be validated. - INVALID_LINKED_CUSTOMER_ID = 7; - } - - -} diff --git a/google/ads/googleads/v5/errors/id_error.proto b/google/ads/googleads/v5/errors/id_error.proto deleted file mode 100644 index 78a75b502..000000000 --- a/google/ads/googleads/v5/errors/id_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "IdErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing id errors. - -// Container for enum describing possible id errors. -message IdErrorEnum { - // Enum describing possible id errors. - enum IdError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Id not found - NOT_FOUND = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/image_error.proto b/google/ads/googleads/v5/errors/image_error.proto deleted file mode 100644 index f0cdfcf97..000000000 --- a/google/ads/googleads/v5/errors/image_error.proto +++ /dev/null @@ -1,161 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ImageErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing image errors. - -// Container for enum describing possible image errors. -message ImageErrorEnum { - // Enum describing possible image errors. - enum ImageError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The image is not valid. - INVALID_IMAGE = 2; - - // The image could not be stored. - STORAGE_ERROR = 3; - - // There was a problem with the request. - BAD_REQUEST = 4; - - // The image is not of legal dimensions. - UNEXPECTED_SIZE = 5; - - // Animated image are not permitted. - ANIMATED_NOT_ALLOWED = 6; - - // Animation is too long. - ANIMATION_TOO_LONG = 7; - - // There was an error on the server. - SERVER_ERROR = 8; - - // Image cannot be in CMYK color format. - CMYK_JPEG_NOT_ALLOWED = 9; - - // Flash images are not permitted. - FLASH_NOT_ALLOWED = 10; - - // Flash images must support clickTag. - FLASH_WITHOUT_CLICKTAG = 11; - - // A flash error has occurred after fixing the click tag. - FLASH_ERROR_AFTER_FIXING_CLICK_TAG = 12; - - // Unacceptable visual effects. - ANIMATED_VISUAL_EFFECT = 13; - - // There was a problem with the flash image. - FLASH_ERROR = 14; - - // Incorrect image layout. - LAYOUT_PROBLEM = 15; - - // There was a problem reading the image file. - PROBLEM_READING_IMAGE_FILE = 16; - - // There was an error storing the image. - ERROR_STORING_IMAGE = 17; - - // The aspect ratio of the image is not allowed. - ASPECT_RATIO_NOT_ALLOWED = 18; - - // Flash cannot have network objects. - FLASH_HAS_NETWORK_OBJECTS = 19; - - // Flash cannot have network methods. - FLASH_HAS_NETWORK_METHODS = 20; - - // Flash cannot have a Url. - FLASH_HAS_URL = 21; - - // Flash cannot use mouse tracking. - FLASH_HAS_MOUSE_TRACKING = 22; - - // Flash cannot have a random number. - FLASH_HAS_RANDOM_NUM = 23; - - // Ad click target cannot be '_self'. - FLASH_SELF_TARGETS = 24; - - // GetUrl method should only use '_blank'. - FLASH_BAD_GETURL_TARGET = 25; - - // Flash version is not supported. - FLASH_VERSION_NOT_SUPPORTED = 26; - - // Flash movies need to have hard coded click URL or clickTAG - FLASH_WITHOUT_HARD_CODED_CLICK_URL = 27; - - // Uploaded flash file is corrupted. - INVALID_FLASH_FILE = 28; - - // Uploaded flash file can be parsed, but the click tag can not be fixed - // properly. - FAILED_TO_FIX_CLICK_TAG_IN_FLASH = 29; - - // Flash movie accesses network resources - FLASH_ACCESSES_NETWORK_RESOURCES = 30; - - // Flash movie attempts to call external javascript code - FLASH_EXTERNAL_JS_CALL = 31; - - // Flash movie attempts to call flash system commands - FLASH_EXTERNAL_FS_CALL = 32; - - // Image file is too large. - FILE_TOO_LARGE = 33; - - // Image data is too large. - IMAGE_DATA_TOO_LARGE = 34; - - // Error while processing the image. - IMAGE_PROCESSING_ERROR = 35; - - // Image is too small. - IMAGE_TOO_SMALL = 36; - - // Input was invalid. - INVALID_INPUT = 37; - - // There was a problem reading the image file. - PROBLEM_READING_FILE = 38; - - // Image constraints are violated, but details like ASPECT_RATIO_NOT_ALLOWED - // can't be provided. This happens when asset spec contains more than one - // constraint and different criteria of different constraints are violated. - IMAGE_CONSTRAINTS_VIOLATED = 39; - } - - -} diff --git a/google/ads/googleads/v5/errors/internal_error.proto b/google/ads/googleads/v5/errors/internal_error.proto deleted file mode 100644 index 4f9cb5d65..000000000 --- a/google/ads/googleads/v5/errors/internal_error.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "InternalErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing internal errors. - -// Container for enum describing possible internal errors. -message InternalErrorEnum { - // Enum describing possible internal errors. - enum InternalError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Google Ads API encountered unexpected internal error. - INTERNAL_ERROR = 2; - - // The intended error code doesn't exist in specified API version. It will - // be released in a future API version. - ERROR_CODE_NOT_PUBLISHED = 3; - - // Google Ads API encountered an unexpected transient error. The user - // should retry their request in these cases. - TRANSIENT_ERROR = 4; - - // The request took longer than a deadline. - DEADLINE_EXCEEDED = 5; - } - - -} diff --git a/google/ads/googleads/v5/errors/invoice_error.proto b/google/ads/googleads/v5/errors/invoice_error.proto deleted file mode 100644 index 7202997c3..000000000 --- a/google/ads/googleads/v5/errors/invoice_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing invoice errors. - -// Container for enum describing possible invoice errors. -message InvoiceErrorEnum { - // Enum describing possible invoice errors. - enum InvoiceError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot request invoices issued before 2019-01-01. - YEAR_MONTH_TOO_OLD = 2; - - // Cannot request invoices for customer who doesn't receive invoices. - NOT_INVOICED_CUSTOMER = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/keyword_plan_ad_group_error.proto b/google/ads/googleads/v5/errors/keyword_plan_ad_group_error.proto deleted file mode 100644 index ca7d1d7d6..000000000 --- a/google/ads/googleads/v5/errors/keyword_plan_ad_group_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing errors from applying a keyword plan ad group. - -// Container for enum describing possible errors from applying a keyword plan -// ad group. -message KeywordPlanAdGroupErrorEnum { - // Enum describing possible errors from applying a keyword plan ad group. - enum KeywordPlanAdGroupError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The keyword plan ad group name is missing, empty, longer than allowed - // limit or contains invalid chars. - INVALID_NAME = 2; - - // The keyword plan ad group name is duplicate to an existing keyword plan - // AdGroup name or other keyword plan AdGroup name in the request. - DUPLICATE_NAME = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/keyword_plan_ad_group_keyword_error.proto b/google/ads/googleads/v5/errors/keyword_plan_ad_group_keyword_error.proto deleted file mode 100644 index a5083917c..000000000 --- a/google/ads/googleads/v5/errors/keyword_plan_ad_group_keyword_error.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupKeywordErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing errors from applying a keyword plan ad group keyword or -// keyword plan campaign keyword. - -// Container for enum describing possible errors from applying an ad group -// keyword or a campaign keyword from a keyword plan. -message KeywordPlanAdGroupKeywordErrorEnum { - // Enum describing possible errors from applying a keyword plan ad group - // keyword or keyword plan campaign keyword. - enum KeywordPlanAdGroupKeywordError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A keyword or negative keyword has invalid match type. - INVALID_KEYWORD_MATCH_TYPE = 2; - - // A keyword or negative keyword with same text and match type already - // exists. - DUPLICATE_KEYWORD = 3; - - // Keyword or negative keyword text exceeds the allowed limit. - KEYWORD_TEXT_TOO_LONG = 4; - - // Keyword or negative keyword text has invalid characters or symbols. - KEYWORD_HAS_INVALID_CHARS = 5; - - // Keyword or negative keyword text has too many words. - KEYWORD_HAS_TOO_MANY_WORDS = 6; - - // Keyword or negative keyword has invalid text. - INVALID_KEYWORD_TEXT = 7; - - // Cpc Bid set for negative keyword. - NEGATIVE_KEYWORD_HAS_CPC_BID = 8; - } - - -} diff --git a/google/ads/googleads/v5/errors/keyword_plan_campaign_error.proto b/google/ads/googleads/v5/errors/keyword_plan_campaign_error.proto deleted file mode 100644 index 7333aa263..000000000 --- a/google/ads/googleads/v5/errors/keyword_plan_campaign_error.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing errors from applying a keyword plan campaign. - -// Container for enum describing possible errors from applying a keyword plan -// campaign. -message KeywordPlanCampaignErrorEnum { - // Enum describing possible errors from applying a keyword plan campaign. - enum KeywordPlanCampaignError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A keyword plan campaign name is missing, empty, longer than allowed limit - // or contains invalid chars. - INVALID_NAME = 2; - - // A keyword plan campaign contains one or more untargetable languages. - INVALID_LANGUAGES = 3; - - // A keyword plan campaign contains one or more invalid geo targets. - INVALID_GEOS = 4; - - // The keyword plan campaign name is duplicate to an existing keyword plan - // campaign name or other keyword plan campaign name in the request. - DUPLICATE_NAME = 5; - - // The number of geo targets in the keyword plan campaign exceeds limits. - MAX_GEOS_EXCEEDED = 6; - - // The number of languages in the keyword plan campaign exceeds limits. - MAX_LANGUAGES_EXCEEDED = 7; - } - - -} diff --git a/google/ads/googleads/v5/errors/keyword_plan_campaign_keyword_error.proto b/google/ads/googleads/v5/errors/keyword_plan_campaign_keyword_error.proto deleted file mode 100644 index 8f1ebc0d1..000000000 --- a/google/ads/googleads/v5/errors/keyword_plan_campaign_keyword_error.proto +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignKeywordErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing errors from applying a keyword plan campaign keyword. - -// Container for enum describing possible errors from applying a keyword plan -// campaign keyword. -message KeywordPlanCampaignKeywordErrorEnum { - // Enum describing possible errors from applying a keyword plan campaign - // keyword. - enum KeywordPlanCampaignKeywordError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Keyword plan campaign keyword is positive. - CAMPAIGN_KEYWORD_IS_POSITIVE = 8; - } - - -} diff --git a/google/ads/googleads/v5/errors/keyword_plan_error.proto b/google/ads/googleads/v5/errors/keyword_plan_error.proto deleted file mode 100644 index 94aa411e7..000000000 --- a/google/ads/googleads/v5/errors/keyword_plan_error.proto +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing errors from applying keyword plan resources (keyword -// plan, keyword plan campaign, keyword plan ad group or keyword plan keyword) -// or KeywordPlanService RPC. - -// Container for enum describing possible errors from applying a keyword plan -// resource (keyword plan, keyword plan campaign, keyword plan ad group or -// keyword plan keyword) or KeywordPlanService RPC. -message KeywordPlanErrorEnum { - // Enum describing possible errors from applying a keyword plan. - enum KeywordPlanError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The plan's bid multiplier value is outside the valid range. - BID_MULTIPLIER_OUT_OF_RANGE = 2; - - // The plan's bid value is too high. - BID_TOO_HIGH = 3; - - // The plan's bid value is too low. - BID_TOO_LOW = 4; - - // The plan's cpc bid is not a multiple of the minimum billable unit. - BID_TOO_MANY_FRACTIONAL_DIGITS = 5; - - // The plan's daily budget value is too low. - DAILY_BUDGET_TOO_LOW = 6; - - // The plan's daily budget is not a multiple of the minimum billable unit. - DAILY_BUDGET_TOO_MANY_FRACTIONAL_DIGITS = 7; - - // The input has an invalid value. - INVALID_VALUE = 8; - - // The plan has no keyword. - KEYWORD_PLAN_HAS_NO_KEYWORDS = 9; - - // The plan is not enabled and API cannot provide mutation, forecast or - // stats. - KEYWORD_PLAN_NOT_ENABLED = 10; - - // The requested plan cannot be found for providing forecast or stats. - KEYWORD_PLAN_NOT_FOUND = 11; - - // The plan is missing a cpc bid. - MISSING_BID = 13; - - // The plan is missing required forecast_period field. - MISSING_FORECAST_PERIOD = 14; - - // The plan's forecast_period has invalid forecast date range. - INVALID_FORECAST_DATE_RANGE = 15; - - // The plan's name is invalid. - INVALID_NAME = 16; - } - - -} diff --git a/google/ads/googleads/v5/errors/keyword_plan_idea_error.proto b/google/ads/googleads/v5/errors/keyword_plan_idea_error.proto deleted file mode 100644 index 5943e8cdd..000000000 --- a/google/ads/googleads/v5/errors/keyword_plan_idea_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanIdeaErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing errors from KeywordPlanIdeaService. - -// Container for enum describing possible errors from KeywordPlanIdeaService. -message KeywordPlanIdeaErrorEnum { - // Enum describing possible errors from KeywordPlanIdeaService. - enum KeywordPlanIdeaError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Error when crawling the input URL. - URL_CRAWL_ERROR = 2; - - // The input has an invalid value. - INVALID_VALUE = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/label_error.proto b/google/ads/googleads/v5/errors/label_error.proto deleted file mode 100644 index 5479762a4..000000000 --- a/google/ads/googleads/v5/errors/label_error.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "LabelErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing label errors. - -// Container for enum describing possible label errors. -message LabelErrorEnum { - // Enum describing possible label errors. - enum LabelError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An inactive label cannot be applied. - CANNOT_APPLY_INACTIVE_LABEL = 2; - - // A label cannot be applied to a disabled ad group criterion. - CANNOT_APPLY_LABEL_TO_DISABLED_AD_GROUP_CRITERION = 3; - - // A label cannot be applied to a negative ad group criterion. - CANNOT_APPLY_LABEL_TO_NEGATIVE_AD_GROUP_CRITERION = 4; - - // Cannot apply more than 50 labels per resource. - EXCEEDED_LABEL_LIMIT_PER_TYPE = 5; - - // Labels from a manager account cannot be applied to campaign, ad group, - // ad group ad, or ad group criterion resources. - INVALID_RESOURCE_FOR_MANAGER_LABEL = 6; - - // Label names must be unique. - DUPLICATE_NAME = 7; - - // Label names cannot be empty. - INVALID_LABEL_NAME = 8; - - // Labels cannot be applied to a draft. - CANNOT_ATTACH_LABEL_TO_DRAFT = 9; - - // Labels not from a manager account cannot be applied to the customer - // resource. - CANNOT_ATTACH_NON_MANAGER_LABEL_TO_CUSTOMER = 10; - } - - -} diff --git a/google/ads/googleads/v5/errors/language_code_error.proto b/google/ads/googleads/v5/errors/language_code_error.proto deleted file mode 100644 index 7ddbaad8f..000000000 --- a/google/ads/googleads/v5/errors/language_code_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "LanguageCodeErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing language code errors. - -// Container for enum describing language code errors. -message LanguageCodeErrorEnum { - // Enum describing language code errors. - enum LanguageCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The input language code is not recognized. - LANGUAGE_CODE_NOT_FOUND = 2; - - // The language is not allowed to use. - INVALID_LANGUAGE_CODE = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/list_operation_error.proto b/google/ads/googleads/v5/errors/list_operation_error.proto deleted file mode 100644 index a5f958cf2..000000000 --- a/google/ads/googleads/v5/errors/list_operation_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ListOperationErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing list operation errors. - -// Container for enum describing possible list operation errors. -message ListOperationErrorEnum { - // Enum describing possible list operation errors. - enum ListOperationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Field required in value is missing. - REQUIRED_FIELD_MISSING = 7; - - // Duplicate or identical value is sent in multiple list operations. - DUPLICATE_VALUES = 8; - } - - -} diff --git a/google/ads/googleads/v5/errors/manager_link_error.proto b/google/ads/googleads/v5/errors/manager_link_error.proto deleted file mode 100644 index e657af890..000000000 --- a/google/ads/googleads/v5/errors/manager_link_error.proto +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ManagerLinkErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing ManagerLink errors. - -// Container for enum describing possible ManagerLink errors. -message ManagerLinkErrorEnum { - // Enum describing possible ManagerLink errors. - enum ManagerLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The manager and client have incompatible account types. - ACCOUNTS_NOT_COMPATIBLE_FOR_LINKING = 2; - - // Client is already linked to too many managers. - TOO_MANY_MANAGERS = 3; - - // Manager has too many pending invitations. - TOO_MANY_INVITES = 4; - - // Client is already invited by this manager. - ALREADY_INVITED_BY_THIS_MANAGER = 5; - - // The client is already managed by this manager. - ALREADY_MANAGED_BY_THIS_MANAGER = 6; - - // Client is already managed in hierarchy. - ALREADY_MANAGED_IN_HIERARCHY = 7; - - // Manger and sub-manager to be linked have duplicate client. - DUPLICATE_CHILD_FOUND = 8; - - // Client has no active user that can access the client account. - CLIENT_HAS_NO_ADMIN_USER = 9; - - // Adding this link would exceed the maximum hierarchy depth. - MAX_DEPTH_EXCEEDED = 10; - - // Adding this link will create a cycle. - CYCLE_NOT_ALLOWED = 11; - - // Manager account has the maximum number of linked clients. - TOO_MANY_ACCOUNTS = 12; - - // Parent manager account has the maximum number of linked clients. - TOO_MANY_ACCOUNTS_AT_MANAGER = 13; - - // The account is not authorized owner. - NON_OWNER_USER_CANNOT_MODIFY_LINK = 14; - - // Your manager account is suspended, and you are no longer allowed to link - // to clients. - SUSPENDED_ACCOUNT_CANNOT_ADD_CLIENTS = 15; - - // You are not allowed to move a client to a manager that is not under your - // current hierarchy. - CLIENT_OUTSIDE_TREE = 16; - - // The changed status for mutate link is invalid. - INVALID_STATUS_CHANGE = 17; - - // The change for mutate link is invalid. - INVALID_CHANGE = 18; - } - - -} diff --git a/google/ads/googleads/v5/errors/media_bundle_error.proto b/google/ads/googleads/v5/errors/media_bundle_error.proto deleted file mode 100644 index 2e99af6d7..000000000 --- a/google/ads/googleads/v5/errors/media_bundle_error.proto +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MediaBundleErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing media bundle errors. - -// Container for enum describing possible media bundle errors. -message MediaBundleErrorEnum { - // Enum describing possible media bundle errors. - enum MediaBundleError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // There was a problem with the request. - BAD_REQUEST = 3; - - // HTML5 ads using DoubleClick Studio created ZIP files are not supported. - DOUBLECLICK_BUNDLE_NOT_ALLOWED = 4; - - // Cannot reference URL external to the media bundle. - EXTERNAL_URL_NOT_ALLOWED = 5; - - // Media bundle file is too large. - FILE_TOO_LARGE = 6; - - // ZIP file from Google Web Designer is not published. - GOOGLE_WEB_DESIGNER_ZIP_FILE_NOT_PUBLISHED = 7; - - // Input was invalid. - INVALID_INPUT = 8; - - // There was a problem with the media bundle. - INVALID_MEDIA_BUNDLE = 9; - - // There was a problem with one or more of the media bundle entries. - INVALID_MEDIA_BUNDLE_ENTRY = 10; - - // The media bundle contains a file with an unknown mime type - INVALID_MIME_TYPE = 11; - - // The media bundle contain an invalid asset path. - INVALID_PATH = 12; - - // HTML5 ad is trying to reference an asset not in .ZIP file - INVALID_URL_REFERENCE = 13; - - // Media data is too large. - MEDIA_DATA_TOO_LARGE = 14; - - // The media bundle contains no primary entry. - MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY = 15; - - // There was an error on the server. - SERVER_ERROR = 16; - - // The image could not be stored. - STORAGE_ERROR = 17; - - // Media bundle created with the Swiffy tool is not allowed. - SWIFFY_BUNDLE_NOT_ALLOWED = 18; - - // The media bundle contains too many files. - TOO_MANY_FILES = 19; - - // The media bundle is not of legal dimensions. - UNEXPECTED_SIZE = 20; - - // Google Web Designer not created for "Google Ads" environment. - UNSUPPORTED_GOOGLE_WEB_DESIGNER_ENVIRONMENT = 21; - - // Unsupported HTML5 feature in HTML5 asset. - UNSUPPORTED_HTML5_FEATURE = 22; - - // URL in HTML5 entry is not ssl compliant. - URL_IN_MEDIA_BUNDLE_NOT_SSL_COMPLIANT = 23; - - // Custom exits not allowed in HTML5 entry. - CUSTOM_EXIT_NOT_ALLOWED = 24; - } - - -} diff --git a/google/ads/googleads/v5/errors/media_file_error.proto b/google/ads/googleads/v5/errors/media_file_error.proto deleted file mode 100644 index 05b2a3c3c..000000000 --- a/google/ads/googleads/v5/errors/media_file_error.proto +++ /dev/null @@ -1,113 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MediaFileErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing media file errors. - -// Container for enum describing possible media file errors. -message MediaFileErrorEnum { - // Enum describing possible media file errors. - enum MediaFileError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot create a standard icon type. - CANNOT_CREATE_STANDARD_ICON = 2; - - // May only select Standard Icons alone. - CANNOT_SELECT_STANDARD_ICON_WITH_OTHER_TYPES = 3; - - // Image contains both a media file ID and data. - CANNOT_SPECIFY_MEDIA_FILE_ID_AND_DATA = 4; - - // A media file with given type and reference ID already exists. - DUPLICATE_MEDIA = 5; - - // A required field was not specified or is an empty string. - EMPTY_FIELD = 6; - - // A media file may only be modified once per call. - RESOURCE_REFERENCED_IN_MULTIPLE_OPS = 7; - - // Field is not supported for the media sub type. - FIELD_NOT_SUPPORTED_FOR_MEDIA_SUB_TYPE = 8; - - // The media file ID is invalid. - INVALID_MEDIA_FILE_ID = 9; - - // The media subtype is invalid. - INVALID_MEDIA_SUB_TYPE = 10; - - // The media file type is invalid. - INVALID_MEDIA_FILE_TYPE = 11; - - // The mimetype is invalid. - INVALID_MIME_TYPE = 12; - - // The media reference ID is invalid. - INVALID_REFERENCE_ID = 13; - - // The YouTube video ID is invalid. - INVALID_YOU_TUBE_ID = 14; - - // Media file has failed transcoding - MEDIA_FILE_FAILED_TRANSCODING = 15; - - // Media file has not been transcoded. - MEDIA_NOT_TRANSCODED = 16; - - // The media type does not match the actual media file's type. - MEDIA_TYPE_DOES_NOT_MATCH_MEDIA_FILE_TYPE = 17; - - // None of the fields have been specified. - NO_FIELDS_SPECIFIED = 18; - - // One of reference ID or media file ID must be specified. - NULL_REFERENCE_ID_AND_MEDIA_ID = 19; - - // The string has too many characters. - TOO_LONG = 20; - - // The specified type is not supported. - UNSUPPORTED_TYPE = 21; - - // YouTube is unavailable for requesting video data. - YOU_TUBE_SERVICE_UNAVAILABLE = 22; - - // The YouTube video has a non positive duration. - YOU_TUBE_VIDEO_HAS_NON_POSITIVE_DURATION = 23; - - // The YouTube video ID is syntactically valid but the video was not found. - YOU_TUBE_VIDEO_NOT_FOUND = 24; - } - - -} diff --git a/google/ads/googleads/v5/errors/media_upload_error.proto b/google/ads/googleads/v5/errors/media_upload_error.proto deleted file mode 100644 index 86aa1e68e..000000000 --- a/google/ads/googleads/v5/errors/media_upload_error.proto +++ /dev/null @@ -1,146 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MediaUploadErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing media uploading errors. - -// Container for enum describing possible media uploading errors. -message MediaUploadErrorEnum { - // Enum describing possible media uploading errors. - enum MediaUploadError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The uploaded file is too big. - FILE_TOO_BIG = 2; - - // Image data is unparseable. - UNPARSEABLE_IMAGE = 3; - - // Animated images are not allowed. - ANIMATED_IMAGE_NOT_ALLOWED = 4; - - // The image or media bundle format is not allowed. - FORMAT_NOT_ALLOWED = 5; - - // Cannot reference URL external to the media bundle. - EXTERNAL_URL_NOT_ALLOWED = 6; - - // HTML5 ad is trying to reference an asset not in .ZIP file. - INVALID_URL_REFERENCE = 7; - - // The media bundle contains no primary entry. - MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY = 8; - - // Animation has disallowed visual effects. - ANIMATED_VISUAL_EFFECT = 9; - - // Animation longer than the allowed 30 second limit. - ANIMATION_TOO_LONG = 10; - - // The aspect ratio of the image does not match the expected aspect ratios - // provided in the asset spec. - ASPECT_RATIO_NOT_ALLOWED = 11; - - // Audio files are not allowed in bundle. - AUDIO_NOT_ALLOWED_IN_MEDIA_BUNDLE = 12; - - // CMYK jpegs are not supported. - CMYK_JPEG_NOT_ALLOWED = 13; - - // Flash movies are not allowed. - FLASH_NOT_ALLOWED = 14; - - // The frame rate of the video is higher than the allowed 5fps. - FRAME_RATE_TOO_HIGH = 15; - - // ZIP file from Google Web Designer is not published. - GOOGLE_WEB_DESIGNER_ZIP_FILE_NOT_PUBLISHED = 16; - - // Image constraints are violated, but more details (like - // DIMENSIONS_NOT_ALLOWED or ASPECT_RATIO_NOT_ALLOWED) can not be provided. - // This happens when asset spec contains more than one constraint and - // criteria of different constraints are violated. - IMAGE_CONSTRAINTS_VIOLATED = 17; - - // Media bundle data is unrecognizable. - INVALID_MEDIA_BUNDLE = 18; - - // There was a problem with one or more of the media bundle entries. - INVALID_MEDIA_BUNDLE_ENTRY = 19; - - // The asset has an invalid mime type. - INVALID_MIME_TYPE = 20; - - // The media bundle contains an invalid asset path. - INVALID_PATH = 21; - - // Image has layout problem. - LAYOUT_PROBLEM = 22; - - // An asset had a URL reference that is malformed per RFC 1738 convention. - MALFORMED_URL = 23; - - // The uploaded media bundle format is not allowed. - MEDIA_BUNDLE_NOT_ALLOWED = 24; - - // The media bundle is not compatible with the asset spec product type. - // (E.g. Gmail, dynamic remarketing, etc.) - MEDIA_BUNDLE_NOT_COMPATIBLE_TO_PRODUCT_TYPE = 25; - - // A bundle being uploaded that is incompatible with multiple assets for - // different reasons. - MEDIA_BUNDLE_REJECTED_BY_MULTIPLE_ASSET_SPECS = 26; - - // The media bundle contains too many files. - TOO_MANY_FILES_IN_MEDIA_BUNDLE = 27; - - // Google Web Designer not created for "Google Ads" environment. - UNSUPPORTED_GOOGLE_WEB_DESIGNER_ENVIRONMENT = 28; - - // Unsupported HTML5 feature in HTML5 asset. - UNSUPPORTED_HTML5_FEATURE = 29; - - // URL in HTML5 entry is not SSL compliant. - URL_IN_MEDIA_BUNDLE_NOT_SSL_COMPLIANT = 30; - - // Video file name is longer than the 50 allowed characters. - VIDEO_FILE_NAME_TOO_LONG = 31; - - // Multiple videos with same name in a bundle. - VIDEO_MULTIPLE_FILES_WITH_SAME_NAME = 32; - - // Videos are not allowed in media bundle. - VIDEO_NOT_ALLOWED_IN_MEDIA_BUNDLE = 33; - } - - -} diff --git a/google/ads/googleads/v5/errors/multiplier_error.proto b/google/ads/googleads/v5/errors/multiplier_error.proto deleted file mode 100644 index 0f43b2576..000000000 --- a/google/ads/googleads/v5/errors/multiplier_error.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MultiplierErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing multiplier errors. - -// Container for enum describing possible multiplier errors. -message MultiplierErrorEnum { - // Enum describing possible multiplier errors. - enum MultiplierError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Multiplier value is too high - MULTIPLIER_TOO_HIGH = 2; - - // Multiplier value is too low - MULTIPLIER_TOO_LOW = 3; - - // Too many fractional digits - TOO_MANY_FRACTIONAL_DIGITS = 4; - - // A multiplier cannot be set for this bidding strategy - MULTIPLIER_NOT_ALLOWED_FOR_BIDDING_STRATEGY = 5; - - // A multiplier cannot be set when there is no base bid (e.g., content max - // cpc) - MULTIPLIER_NOT_ALLOWED_WHEN_BASE_BID_IS_MISSING = 6; - - // A bid multiplier must be specified - NO_MULTIPLIER_SPECIFIED = 7; - - // Multiplier causes bid to exceed daily budget - MULTIPLIER_CAUSES_BID_TO_EXCEED_DAILY_BUDGET = 8; - - // Multiplier causes bid to exceed monthly budget - MULTIPLIER_CAUSES_BID_TO_EXCEED_MONTHLY_BUDGET = 9; - - // Multiplier causes bid to exceed custom budget - MULTIPLIER_CAUSES_BID_TO_EXCEED_CUSTOM_BUDGET = 10; - - // Multiplier causes bid to exceed maximum allowed bid - MULTIPLIER_CAUSES_BID_TO_EXCEED_MAX_ALLOWED_BID = 11; - - // Multiplier causes bid to become less than the minimum bid allowed - BID_LESS_THAN_MIN_ALLOWED_BID_WITH_MULTIPLIER = 12; - - // Multiplier type (cpc vs. cpm) needs to match campaign's bidding strategy - MULTIPLIER_AND_BIDDING_STRATEGY_TYPE_MISMATCH = 13; - } - - -} diff --git a/google/ads/googleads/v5/errors/mutate_error.proto b/google/ads/googleads/v5/errors/mutate_error.proto deleted file mode 100644 index 35e4739c4..000000000 --- a/google/ads/googleads/v5/errors/mutate_error.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MutateErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing mutate errors. - -// Container for enum describing possible mutate errors. -message MutateErrorEnum { - // Enum describing possible mutate errors. - enum MutateError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Requested resource was not found. - RESOURCE_NOT_FOUND = 3; - - // Cannot mutate the same resource twice in one request. - ID_EXISTS_IN_MULTIPLE_MUTATES = 7; - - // The field's contents don't match another field that represents the same - // data. - INCONSISTENT_FIELD_VALUES = 8; - - // Mutates are not allowed for the requested resource. - MUTATE_NOT_ALLOWED = 9; - - // The resource isn't in Google Ads. It belongs to another ads system. - RESOURCE_NOT_IN_GOOGLE_ADS = 10; - - // The resource being created already exists. - RESOURCE_ALREADY_EXISTS = 11; - - // This resource cannot be used with "validate_only". - RESOURCE_DOES_NOT_SUPPORT_VALIDATE_ONLY = 12; - - // Attempt to write to read-only fields. - RESOURCE_READ_ONLY = 13; - } - - -} diff --git a/google/ads/googleads/v5/errors/new_resource_creation_error.proto b/google/ads/googleads/v5/errors/new_resource_creation_error.proto deleted file mode 100644 index d20e57fb8..000000000 --- a/google/ads/googleads/v5/errors/new_resource_creation_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NewResourceCreationErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing new resource creation errors. - -// Container for enum describing possible new resource creation errors. -message NewResourceCreationErrorEnum { - // Enum describing possible new resource creation errors. - enum NewResourceCreationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Do not set the id field while creating new resources. - CANNOT_SET_ID_FOR_CREATE = 2; - - // Creating more than one resource with the same temp ID is not allowed. - DUPLICATE_TEMP_IDS = 3; - - // Parent resource with specified temp ID failed validation, so no - // validation will be done for this child resource. - TEMP_ID_RESOURCE_HAD_ERRORS = 4; - } - - -} diff --git a/google/ads/googleads/v5/errors/not_allowlisted_error.proto b/google/ads/googleads/v5/errors/not_allowlisted_error.proto deleted file mode 100644 index 1c51ce54a..000000000 --- a/google/ads/googleads/v5/errors/not_allowlisted_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NotAllowlistedErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing not allowlisted errors. - -// Container for enum describing possible not allowlisted errors. -message NotAllowlistedErrorEnum { - // Enum describing possible not allowlisted errors. - enum NotAllowlistedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Customer is not allowlisted for accessing this feature. - CUSTOMER_NOT_ALLOWLISTED_FOR_THIS_FEATURE = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/not_empty_error.proto b/google/ads/googleads/v5/errors/not_empty_error.proto deleted file mode 100644 index 5a77748de..000000000 --- a/google/ads/googleads/v5/errors/not_empty_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NotEmptyErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing not empty errors. - -// Container for enum describing possible not empty errors. -message NotEmptyErrorEnum { - // Enum describing possible not empty errors. - enum NotEmptyError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Empty list. - EMPTY_LIST = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/null_error.proto b/google/ads/googleads/v5/errors/null_error.proto deleted file mode 100644 index e26a5ac0e..000000000 --- a/google/ads/googleads/v5/errors/null_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NullErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing null errors. - -// Container for enum describing possible null errors. -message NullErrorEnum { - // Enum describing possible null errors. - enum NullError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Specified list/container must not contain any null elements - NULL_CONTENT = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/offline_user_data_job_error.proto b/google/ads/googleads/v5/errors/offline_user_data_job_error.proto deleted file mode 100644 index 71691976b..000000000 --- a/google/ads/googleads/v5/errors/offline_user_data_job_error.proto +++ /dev/null @@ -1,134 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing offline user data job errors. - -// Container for enum describing possible offline user data job errors. -message OfflineUserDataJobErrorEnum { - // Enum describing possible request errors. - enum OfflineUserDataJobError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The user list ID provided for the job is invalid. - INVALID_USER_LIST_ID = 3; - - // Type of the user list is not applicable for the job. - INVALID_USER_LIST_TYPE = 4; - - // Customer is not allowisted for using user ID in upload data. - NOT_ON_ALLOWLIST_FOR_USER_ID = 33; - - // Upload data is not compatible with the upload key type of the associated - // user list. - INCOMPATIBLE_UPLOAD_KEY_TYPE = 6; - - // The user identifier is missing valid data. - MISSING_USER_IDENTIFIER = 7; - - // The mobile ID is malformed. - INVALID_MOBILE_ID_FORMAT = 8; - - // Maximum number of user identifiers allowed per request is 100,000. - TOO_MANY_USER_IDENTIFIERS = 9; - - // Customer is not on the allow-list for store sales direct data. - NOT_ON_ALLOWLIST_FOR_STORE_SALES_DIRECT = 31; - - // Customer is not on the allow-list for unified store sales data. - NOT_ON_ALLOWLIST_FOR_UNIFIED_STORE_SALES = 32; - - // The partner ID in store sales direct metadata is invalid. - INVALID_PARTNER_ID = 11; - - // The data in user identifier should not be encoded. - INVALID_ENCODING = 12; - - // The country code is invalid. - INVALID_COUNTRY_CODE = 13; - - // Incompatible user identifier when using third_party_user_id for store - // sales direct first party data or not using third_party_user_id for store - // sales third party data. - INCOMPATIBLE_USER_IDENTIFIER = 14; - - // A transaction time in the future is not allowed. - FUTURE_TRANSACTION_TIME = 15; - - // The conversion_action specified in transaction_attributes is used to - // report conversions to a conversion action configured in Google Ads. This - // error indicates there is no such conversion action in the account. - INVALID_CONVERSION_ACTION = 16; - - // Mobile ID is not supported for store sales direct data. - MOBILE_ID_NOT_SUPPORTED = 17; - - // When a remove-all operation is provided, it has to be the first operation - // of the operation list. - INVALID_OPERATION_ORDER = 18; - - // Mixing creation and removal of offline data in the same job is not - // allowed. - CONFLICTING_OPERATION = 19; - - // The external update ID already exists. - EXTERNAL_UPDATE_ID_ALREADY_EXISTS = 21; - - // Once the upload job is started, new operations cannot be added. - JOB_ALREADY_STARTED = 22; - - // Remove operation is not allowed for store sales direct updates. - REMOVE_NOT_SUPPORTED = 23; - - // Remove-all is not supported for certain offline user data job types. - REMOVE_ALL_NOT_SUPPORTED = 24; - - // The SHA256 encoded value is malformed. - INVALID_SHA256_FORMAT = 25; - - // The custom key specified is not enabled for the unified store sales - // upload. - CUSTOM_KEY_DISABLED = 26; - - // The custom key specified is not predefined through the Google Ads UI. - CUSTOM_KEY_NOT_PREDEFINED = 27; - - // The custom key specified is not set in the upload. - CUSTOM_KEY_NOT_SET = 29; - - // The customer has not accepted the customer data terms in the conversion - // settings page. - CUSTOMER_NOT_ACCEPTED_CUSTOMER_DATA_TERMS = 30; - } - - -} diff --git a/google/ads/googleads/v5/errors/operation_access_denied_error.proto b/google/ads/googleads/v5/errors/operation_access_denied_error.proto deleted file mode 100644 index d5a8421fd..000000000 --- a/google/ads/googleads/v5/errors/operation_access_denied_error.proto +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "OperationAccessDeniedErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing operation access denied errors. - -// Container for enum describing possible operation access denied errors. -message OperationAccessDeniedErrorEnum { - // Enum describing possible operation access denied errors. - enum OperationAccessDeniedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Unauthorized invocation of a service's method (get, mutate, etc.) - ACTION_NOT_PERMITTED = 2; - - // Unauthorized CREATE operation in invoking a service's mutate method. - CREATE_OPERATION_NOT_PERMITTED = 3; - - // Unauthorized REMOVE operation in invoking a service's mutate method. - REMOVE_OPERATION_NOT_PERMITTED = 4; - - // Unauthorized UPDATE operation in invoking a service's mutate method. - UPDATE_OPERATION_NOT_PERMITTED = 5; - - // A mutate action is not allowed on this campaign, from this client. - MUTATE_ACTION_NOT_PERMITTED_FOR_CLIENT = 6; - - // This operation is not permitted on this campaign type - OPERATION_NOT_PERMITTED_FOR_CAMPAIGN_TYPE = 7; - - // A CREATE operation may not set status to REMOVED. - CREATE_AS_REMOVED_NOT_PERMITTED = 8; - - // This operation is not allowed because the campaign or adgroup is removed. - OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 9; - - // This operation is not permitted on this ad group type. - OPERATION_NOT_PERMITTED_FOR_AD_GROUP_TYPE = 10; - - // The mutate is not allowed for this customer. - MUTATE_NOT_PERMITTED_FOR_CUSTOMER = 11; - } - - -} diff --git a/google/ads/googleads/v5/errors/operator_error.proto b/google/ads/googleads/v5/errors/operator_error.proto deleted file mode 100644 index b3fe82f36..000000000 --- a/google/ads/googleads/v5/errors/operator_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "OperatorErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing operator errors. - -// Container for enum describing possible operator errors. -message OperatorErrorEnum { - // Enum describing possible operator errors. - enum OperatorError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Operator not supported. - OPERATOR_NOT_SUPPORTED = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/partial_failure_error.proto b/google/ads/googleads/v5/errors/partial_failure_error.proto deleted file mode 100644 index 48bc3530a..000000000 --- a/google/ads/googleads/v5/errors/partial_failure_error.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PartialFailureErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing partial failure errors. - -// Container for enum describing possible partial failure errors. -message PartialFailureErrorEnum { - // Enum describing possible partial failure errors. - enum PartialFailureError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The partial failure field was false in the request. - // This method requires this field be set to true. - PARTIAL_FAILURE_MODE_REQUIRED = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/payments_account_error.proto b/google/ads/googleads/v5/errors/payments_account_error.proto deleted file mode 100644 index bfbaf20d2..000000000 --- a/google/ads/googleads/v5/errors/payments_account_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PaymentsAccountErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing payments account service errors. - -// Container for enum describing possible errors in payments account service. -message PaymentsAccountErrorEnum { - // Enum describing possible errors in payments account service. - enum PaymentsAccountError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Manager customers are not supported for payments account service. - NOT_SUPPORTED_FOR_MANAGER_CUSTOMER = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/policy_finding_error.proto b/google/ads/googleads/v5/errors/policy_finding_error.proto deleted file mode 100644 index 17e14df1e..000000000 --- a/google/ads/googleads/v5/errors/policy_finding_error.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PolicyFindingErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing policy finding errors. - -// Container for enum describing possible policy finding errors. -message PolicyFindingErrorEnum { - // Enum describing possible policy finding errors. - enum PolicyFindingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The resource has been disapproved since the policy summary includes - // policy topics of type PROHIBITED. - POLICY_FINDING = 2; - - // The given policy topic does not exist. - POLICY_TOPIC_NOT_FOUND = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/policy_validation_parameter_error.proto b/google/ads/googleads/v5/errors/policy_validation_parameter_error.proto deleted file mode 100644 index c70d07b1c..000000000 --- a/google/ads/googleads/v5/errors/policy_validation_parameter_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PolicyValidationParameterErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing policy validation parameter errors. - -// Container for enum describing possible policy validation parameter errors. -message PolicyValidationParameterErrorEnum { - // Enum describing possible policy validation parameter errors. - enum PolicyValidationParameterError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Ignorable policy topics are not supported for the ad type. - UNSUPPORTED_AD_TYPE_FOR_IGNORABLE_POLICY_TOPICS = 2; - - // Exempt policy violation keys are not supported for the ad type. - UNSUPPORTED_AD_TYPE_FOR_EXEMPT_POLICY_VIOLATION_KEYS = 3; - - // Cannot set ignorable policy topics and exempt policy violation keys in - // the same policy violation parameter. - CANNOT_SET_BOTH_IGNORABLE_POLICY_TOPICS_AND_EXEMPT_POLICY_VIOLATION_KEYS = 4; - } - - -} diff --git a/google/ads/googleads/v5/errors/policy_violation_error.proto b/google/ads/googleads/v5/errors/policy_violation_error.proto deleted file mode 100644 index aaddc3d2f..000000000 --- a/google/ads/googleads/v5/errors/policy_violation_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PolicyViolationErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing policy violation errors. - -// Container for enum describing possible policy violation errors. -message PolicyViolationErrorEnum { - // Enum describing possible policy violation errors. - enum PolicyViolationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A policy was violated. See PolicyViolationDetails for more detail. - POLICY_ERROR = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/query_error.proto b/google/ads/googleads/v5/errors/query_error.proto deleted file mode 100644 index 7cc846fea..000000000 --- a/google/ads/googleads/v5/errors/query_error.proto +++ /dev/null @@ -1,218 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "QueryErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing query errors. - -// Container for enum describing possible query errors. -message QueryErrorEnum { - // Enum describing possible query errors. - enum QueryError { - // Name unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Returned if all other query error reasons are not applicable. - QUERY_ERROR = 50; - - // A condition used in the query references an invalid enum constant. - BAD_ENUM_CONSTANT = 18; - - // Query contains an invalid escape sequence. - BAD_ESCAPE_SEQUENCE = 7; - - // Field name is invalid. - BAD_FIELD_NAME = 12; - - // Limit value is invalid (i.e. not a number) - BAD_LIMIT_VALUE = 15; - - // Encountered number can not be parsed. - BAD_NUMBER = 5; - - // Invalid operator encountered. - BAD_OPERATOR = 3; - - // Parameter unknown or not supported. - BAD_PARAMETER_NAME = 61; - - // Parameter have invalid value. - BAD_PARAMETER_VALUE = 62; - - // Invalid resource type was specified in the FROM clause. - BAD_RESOURCE_TYPE_IN_FROM_CLAUSE = 45; - - // Non-ASCII symbol encountered outside of strings. - BAD_SYMBOL = 2; - - // Value is invalid. - BAD_VALUE = 4; - - // Date filters fail to restrict date to a range smaller than 31 days. - // Applicable if the query is segmented by date. - DATE_RANGE_TOO_WIDE = 36; - - // Filters on date/week/month/quarter have a start date after - // end date. - DATE_RANGE_TOO_NARROW = 60; - - // Expected AND between values with BETWEEN operator. - EXPECTED_AND = 30; - - // Expecting ORDER BY to have BY. - EXPECTED_BY = 14; - - // There was no dimension field selected. - EXPECTED_DIMENSION_FIELD_IN_SELECT_CLAUSE = 37; - - // Missing filters on date related fields. - EXPECTED_FILTERS_ON_DATE_RANGE = 55; - - // Missing FROM clause. - EXPECTED_FROM = 44; - - // The operator used in the conditions requires the value to be a list. - EXPECTED_LIST = 41; - - // Fields used in WHERE or ORDER BY clauses are missing from the SELECT - // clause. - EXPECTED_REFERENCED_FIELD_IN_SELECT_CLAUSE = 16; - - // SELECT is missing at the beginning of query. - EXPECTED_SELECT = 13; - - // A list was passed as a value to a condition whose operator expects a - // single value. - EXPECTED_SINGLE_VALUE = 42; - - // Missing one or both values with BETWEEN operator. - EXPECTED_VALUE_WITH_BETWEEN_OPERATOR = 29; - - // Invalid date format. Expected 'YYYY-MM-DD'. - INVALID_DATE_FORMAT = 38; - - // Value passed was not a string when it should have been. I.e., it was a - // number or unquoted literal. - INVALID_STRING_VALUE = 57; - - // A String value passed to the BETWEEN operator does not parse as a date. - INVALID_VALUE_WITH_BETWEEN_OPERATOR = 26; - - // The value passed to the DURING operator is not a Date range literal - INVALID_VALUE_WITH_DURING_OPERATOR = 22; - - // A non-string value was passed to the LIKE operator. - INVALID_VALUE_WITH_LIKE_OPERATOR = 56; - - // An operator was provided that is inapplicable to the field being - // filtered. - OPERATOR_FIELD_MISMATCH = 35; - - // A Condition was found with an empty list. - PROHIBITED_EMPTY_LIST_IN_CONDITION = 28; - - // A condition used in the query references an unsupported enum constant. - PROHIBITED_ENUM_CONSTANT = 54; - - // Fields that are not allowed to be selected together were included in - // the SELECT clause. - PROHIBITED_FIELD_COMBINATION_IN_SELECT_CLAUSE = 31; - - // A field that is not orderable was included in the ORDER BY clause. - PROHIBITED_FIELD_IN_ORDER_BY_CLAUSE = 40; - - // A field that is not selectable was included in the SELECT clause. - PROHIBITED_FIELD_IN_SELECT_CLAUSE = 23; - - // A field that is not filterable was included in the WHERE clause. - PROHIBITED_FIELD_IN_WHERE_CLAUSE = 24; - - // Resource type specified in the FROM clause is not supported by this - // service. - PROHIBITED_RESOURCE_TYPE_IN_FROM_CLAUSE = 43; - - // A field that comes from an incompatible resource was included in the - // SELECT clause. - PROHIBITED_RESOURCE_TYPE_IN_SELECT_CLAUSE = 48; - - // A field that comes from an incompatible resource was included in the - // WHERE clause. - PROHIBITED_RESOURCE_TYPE_IN_WHERE_CLAUSE = 58; - - // A metric incompatible with the main resource or other selected - // segmenting resources was included in the SELECT or WHERE clause. - PROHIBITED_METRIC_IN_SELECT_OR_WHERE_CLAUSE = 49; - - // A segment incompatible with the main resource or other selected - // segmenting resources was included in the SELECT or WHERE clause. - PROHIBITED_SEGMENT_IN_SELECT_OR_WHERE_CLAUSE = 51; - - // A segment in the SELECT clause is incompatible with a metric in the - // SELECT or WHERE clause. - PROHIBITED_SEGMENT_WITH_METRIC_IN_SELECT_OR_WHERE_CLAUSE = 53; - - // The value passed to the limit clause is too low. - LIMIT_VALUE_TOO_LOW = 25; - - // Query has a string containing a newline character. - PROHIBITED_NEWLINE_IN_STRING = 8; - - // List contains values of different types. - PROHIBITED_VALUE_COMBINATION_IN_LIST = 10; - - // The values passed to the BETWEEN operator are not of the same type. - PROHIBITED_VALUE_COMBINATION_WITH_BETWEEN_OPERATOR = 21; - - // Query contains unterminated string. - STRING_NOT_TERMINATED = 6; - - // Too many segments are specified in SELECT clause. - TOO_MANY_SEGMENTS = 34; - - // Query is incomplete and cannot be parsed. - UNEXPECTED_END_OF_QUERY = 9; - - // FROM clause cannot be specified in this query. - UNEXPECTED_FROM_CLAUSE = 47; - - // Query contains one or more unrecognized fields. - UNRECOGNIZED_FIELD = 32; - - // Query has an unexpected extra part. - UNEXPECTED_INPUT = 11; - - // Metrics cannot be requested for a manager account. To retrieve metrics, - // issue separate requests against each client account under the manager - // account. - REQUESTED_METRICS_FOR_MANAGER = 59; - } - - -} diff --git a/google/ads/googleads/v5/errors/quota_error.proto b/google/ads/googleads/v5/errors/quota_error.proto deleted file mode 100644 index de43a487d..000000000 --- a/google/ads/googleads/v5/errors/quota_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "QuotaErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing quota errors. - -// Container for enum describing possible quota errors. -message QuotaErrorEnum { - // Enum describing possible quota errors. - enum QuotaError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Too many requests. - RESOURCE_EXHAUSTED = 2; - - // Access is prohibited. - ACCESS_PROHIBITED = 3; - - // Too many requests in a short amount of time. - RESOURCE_TEMPORARILY_EXHAUSTED = 4; - } - - -} diff --git a/google/ads/googleads/v5/errors/range_error.proto b/google/ads/googleads/v5/errors/range_error.proto deleted file mode 100644 index bd68f0086..000000000 --- a/google/ads/googleads/v5/errors/range_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RangeErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing range errors. - -// Container for enum describing possible range errors. -message RangeErrorEnum { - // Enum describing possible range errors. - enum RangeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Too low. - TOO_LOW = 2; - - // Too high. - TOO_HIGH = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/reach_plan_error.proto b/google/ads/googleads/v5/errors/reach_plan_error.proto deleted file mode 100644 index b4e69077a..000000000 --- a/google/ads/googleads/v5/errors/reach_plan_error.proto +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing errors generated from ReachPlanService. - -// Container for enum describing possible errors returned from -// the ReachPlanService. -message ReachPlanErrorEnum { - // Enum describing possible errors from ReachPlanService. - enum ReachPlanError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - } - - -} diff --git a/google/ads/googleads/v5/errors/recommendation_error.proto b/google/ads/googleads/v5/errors/recommendation_error.proto deleted file mode 100644 index fce3adc3c..000000000 --- a/google/ads/googleads/v5/errors/recommendation_error.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing errors from applying a recommendation. - -// Container for enum describing possible errors from applying a recommendation. -message RecommendationErrorEnum { - // Enum describing possible errors from applying a recommendation. - enum RecommendationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified budget amount is too low e.g. lower than minimum currency - // unit or lower than ad group minimum cost-per-click. - BUDGET_AMOUNT_TOO_SMALL = 2; - - // The specified budget amount is too large. - BUDGET_AMOUNT_TOO_LARGE = 3; - - // The specified budget amount is not a valid amount. e.g. not a multiple - // of minimum currency unit. - INVALID_BUDGET_AMOUNT = 4; - - // The specified keyword or ad violates ad policy. - POLICY_ERROR = 5; - - // The specified bid amount is not valid. e.g. too many fractional digits, - // or negative amount. - INVALID_BID_AMOUNT = 6; - - // The number of keywords in ad group have reached the maximum allowed. - ADGROUP_KEYWORD_LIMIT = 7; - - // The recommendation requested to apply has already been applied. - RECOMMENDATION_ALREADY_APPLIED = 8; - - // The recommendation requested to apply has been invalidated. - RECOMMENDATION_INVALIDATED = 9; - - // The number of operations in a single request exceeds the maximum allowed. - TOO_MANY_OPERATIONS = 10; - - // There are no operations in the request. - NO_OPERATIONS = 11; - - // Operations with multiple recommendation types are not supported when - // partial failure mode is not enabled. - DIFFERENT_TYPES_NOT_SUPPORTED = 12; - - // Request contains multiple operations with the same resource_name. - DUPLICATE_RESOURCE_NAME = 13; - - // The recommendation requested to dismiss has already been dismissed. - RECOMMENDATION_ALREADY_DISMISSED = 14; - - // The recommendation apply request was malformed and invalid. - INVALID_APPLY_REQUEST = 15; - } - - -} diff --git a/google/ads/googleads/v5/errors/region_code_error.proto b/google/ads/googleads/v5/errors/region_code_error.proto deleted file mode 100644 index 1bb3e5c20..000000000 --- a/google/ads/googleads/v5/errors/region_code_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RegionCodeErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing region code errors. - -// Container for enum describing possible region code errors. -message RegionCodeErrorEnum { - // Enum describing possible region code errors. - enum RegionCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Invalid region code. - INVALID_REGION_CODE = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/request_error.proto b/google/ads/googleads/v5/errors/request_error.proto deleted file mode 100644 index b6249e2c4..000000000 --- a/google/ads/googleads/v5/errors/request_error.proto +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RequestErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing request errors. - -// Container for enum describing possible request errors. -message RequestErrorEnum { - // Enum describing possible request errors. - enum RequestError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Resource name is required for this request. - RESOURCE_NAME_MISSING = 3; - - // Resource name provided is malformed. - RESOURCE_NAME_MALFORMED = 4; - - // Resource name provided is malformed. - BAD_RESOURCE_ID = 17; - - // Customer ID is invalid. - INVALID_CUSTOMER_ID = 16; - - // Mutate operation should have either create, update, or remove specified. - OPERATION_REQUIRED = 5; - - // Requested resource not found. - RESOURCE_NOT_FOUND = 6; - - // Next page token specified in user request is invalid. - INVALID_PAGE_TOKEN = 7; - - // Next page token specified in user request has expired. - EXPIRED_PAGE_TOKEN = 8; - - // Page size specified in user request is invalid. - INVALID_PAGE_SIZE = 22; - - // Required field is missing. - REQUIRED_FIELD_MISSING = 9; - - // The field cannot be modified because it's immutable. It's also possible - // that the field can be modified using 'create' operation but not 'update'. - IMMUTABLE_FIELD = 11; - - // Received too many entries in request. - TOO_MANY_MUTATE_OPERATIONS = 13; - - // Request cannot be executed by a manager account. - CANNOT_BE_EXECUTED_BY_MANAGER_ACCOUNT = 14; - - // Mutate request was attempting to modify a readonly field. - // For instance, Budget fields can be requested for Ad Group, - // but are read-only for adGroups:mutate. - CANNOT_MODIFY_FOREIGN_FIELD = 15; - - // Enum value is not permitted. - INVALID_ENUM_VALUE = 18; - - // The developer-token parameter is required for all requests. - DEVELOPER_TOKEN_PARAMETER_MISSING = 19; - - // The login-customer-id parameter is required for this request. - LOGIN_CUSTOMER_ID_PARAMETER_MISSING = 20; - - // page_token is set in the validate only request - VALIDATE_ONLY_REQUEST_HAS_PAGE_TOKEN = 21; - - // return_summary_row cannot be enabled if request did not select any - // metrics field. - CANNOT_RETURN_SUMMARY_ROW_FOR_REQUEST_WITHOUT_METRICS = 29; - - // return_summary_row should not be enabled for validate only requests. - CANNOT_RETURN_SUMMARY_ROW_FOR_VALIDATE_ONLY_REQUESTS = 30; - - // return_summary_row parameter value should be the same between requests - // with page_token field set and their original request. - INCONSISTENT_RETURN_SUMMARY_ROW_VALUE = 31; - - // The total results count cannot be returned if it was not requested in the - // original request. - TOTAL_RESULTS_COUNT_NOT_ORIGINALLY_REQUESTED = 32; - } - - -} diff --git a/google/ads/googleads/v5/errors/resource_access_denied_error.proto b/google/ads/googleads/v5/errors/resource_access_denied_error.proto deleted file mode 100644 index 7c59803c1..000000000 --- a/google/ads/googleads/v5/errors/resource_access_denied_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ResourceAccessDeniedErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing resource access denied errors. - -// Container for enum describing possible resource access denied errors. -message ResourceAccessDeniedErrorEnum { - // Enum describing possible resource access denied errors. - enum ResourceAccessDeniedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // User did not have write access. - WRITE_ACCESS_DENIED = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/resource_count_limit_exceeded_error.proto b/google/ads/googleads/v5/errors/resource_count_limit_exceeded_error.proto deleted file mode 100644 index e4395e93d..000000000 --- a/google/ads/googleads/v5/errors/resource_count_limit_exceeded_error.proto +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ResourceCountLimitExceededErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing resource count limit exceeded errors. - -// Container for enum describing possible resource count limit exceeded errors. -message ResourceCountLimitExceededErrorEnum { - // Enum describing possible resource count limit exceeded errors. - enum ResourceCountLimitExceededError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Indicates that this request would exceed the number of allowed resources - // for the Google Ads account. The exact resource type and limit being - // checked can be inferred from accountLimitType. - ACCOUNT_LIMIT = 2; - - // Indicates that this request would exceed the number of allowed resources - // in a Campaign. The exact resource type and limit being checked can be - // inferred from accountLimitType, and the numeric id of the - // Campaign involved is given by enclosingId. - CAMPAIGN_LIMIT = 3; - - // Indicates that this request would exceed the number of allowed resources - // in an ad group. The exact resource type and limit being checked can be - // inferred from accountLimitType, and the numeric id of the - // ad group involved is given by enclosingId. - ADGROUP_LIMIT = 4; - - // Indicates that this request would exceed the number of allowed resources - // in an ad group ad. The exact resource type and limit being checked can - // be inferred from accountLimitType, and the enclosingId - // contains the ad group id followed by the ad id, separated by a single - // comma (,). - AD_GROUP_AD_LIMIT = 5; - - // Indicates that this request would exceed the number of allowed resources - // in an ad group criterion. The exact resource type and limit being checked - // can be inferred from accountLimitType, and the - // enclosingId contains the ad group id followed by the - // criterion id, separated by a single comma (,). - AD_GROUP_CRITERION_LIMIT = 6; - - // Indicates that this request would exceed the number of allowed resources - // in this shared set. The exact resource type and limit being checked can - // be inferred from accountLimitType, and the numeric id of the - // shared set involved is given by enclosingId. - SHARED_SET_LIMIT = 7; - - // Exceeds a limit related to a matching function. - MATCHING_FUNCTION_LIMIT = 8; - - // The response for this request would exceed the maximum number of rows - // that can be returned. - RESPONSE_ROW_LIMIT_EXCEEDED = 9; - - // This request would exceed a limit on the number of allowed resources. - // The details of which type of limit was exceeded will eventually be - // returned in ErrorDetails. - RESOURCE_LIMIT = 10; - } - - -} diff --git a/google/ads/googleads/v5/errors/setting_error.proto b/google/ads/googleads/v5/errors/setting_error.proto deleted file mode 100644 index f81000fdf..000000000 --- a/google/ads/googleads/v5/errors/setting_error.proto +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SettingErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing setting errors. - -// Container for enum describing possible setting errors. -message SettingErrorEnum { - // Enum describing possible setting errors. - enum SettingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The campaign setting is not available for this Google Ads account. - SETTING_TYPE_IS_NOT_AVAILABLE = 3; - - // The setting is not compatible with the campaign. - SETTING_TYPE_IS_NOT_COMPATIBLE_WITH_CAMPAIGN = 4; - - // The supplied TargetingSetting contains an invalid CriterionTypeGroup. See - // CriterionTypeGroup documentation for CriterionTypeGroups allowed - // in Campaign or AdGroup TargetingSettings. - TARGETING_SETTING_CONTAINS_INVALID_CRITERION_TYPE_GROUP = 5; - - // TargetingSetting must not explicitly - // set any of the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, - // PARENT, INCOME_RANGE) to false (it's okay to not set them at all, in - // which case the system will set them to true automatically). - TARGETING_SETTING_DEMOGRAPHIC_CRITERION_TYPE_GROUPS_MUST_BE_SET_TO_TARGET_ALL = 6; - - // TargetingSetting cannot change any of - // the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, PARENT, - // INCOME_RANGE) from true to false. - TARGETING_SETTING_CANNOT_CHANGE_TARGET_ALL_TO_FALSE_FOR_DEMOGRAPHIC_CRITERION_TYPE_GROUP = 7; - - // At least one feed id should be present. - DYNAMIC_SEARCH_ADS_SETTING_AT_LEAST_ONE_FEED_ID_MUST_BE_PRESENT = 8; - - // The supplied DynamicSearchAdsSetting contains an invalid domain name. - DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_DOMAIN_NAME = 9; - - // The supplied DynamicSearchAdsSetting contains a subdomain name. - DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_SUBDOMAIN_NAME = 10; - - // The supplied DynamicSearchAdsSetting contains an invalid language code. - DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_LANGUAGE_CODE = 11; - - // TargetingSettings in search campaigns should not have - // CriterionTypeGroup.PLACEMENT set to targetAll. - TARGET_ALL_IS_NOT_ALLOWED_FOR_PLACEMENT_IN_SEARCH_CAMPAIGN = 12; - - // The setting value is not compatible with the campaign type. - SETTING_VALUE_NOT_COMPATIBLE_WITH_CAMPAIGN = 20; - } - - -} diff --git a/google/ads/googleads/v5/errors/shared_criterion_error.proto b/google/ads/googleads/v5/errors/shared_criterion_error.proto deleted file mode 100644 index 42bdd9781..000000000 --- a/google/ads/googleads/v5/errors/shared_criterion_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SharedCriterionErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing shared criterion errors. - -// Container for enum describing possible shared criterion errors. -message SharedCriterionErrorEnum { - // Enum describing possible shared criterion errors. - enum SharedCriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The criterion is not appropriate for the shared set type. - CRITERION_TYPE_NOT_ALLOWED_FOR_SHARED_SET_TYPE = 2; - } - - -} diff --git a/google/ads/googleads/v5/errors/shared_set_error.proto b/google/ads/googleads/v5/errors/shared_set_error.proto deleted file mode 100644 index cb5760a72..000000000 --- a/google/ads/googleads/v5/errors/shared_set_error.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing shared set errors. - -// Container for enum describing possible shared set errors. -message SharedSetErrorEnum { - // Enum describing possible shared set errors. - enum SharedSetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The customer cannot create this type of shared set. - CUSTOMER_CANNOT_CREATE_SHARED_SET_OF_THIS_TYPE = 2; - - // A shared set with this name already exists. - DUPLICATE_NAME = 3; - - // Removed shared sets cannot be mutated. - SHARED_SET_REMOVED = 4; - - // The shared set cannot be removed because it is in use. - SHARED_SET_IN_USE = 5; - } - - -} diff --git a/google/ads/googleads/v5/errors/size_limit_error.proto b/google/ads/googleads/v5/errors/size_limit_error.proto deleted file mode 100644 index 0f6d10286..000000000 --- a/google/ads/googleads/v5/errors/size_limit_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SizeLimitErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing size limit errors. - -// Container for enum describing possible size limit errors. -message SizeLimitErrorEnum { - // Enum describing possible size limit errors. - enum SizeLimitError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The number of entries in the request exceeds the system limit. - REQUEST_SIZE_LIMIT_EXCEEDED = 2; - - // The number of entries in the response exceeds the system limit. - RESPONSE_SIZE_LIMIT_EXCEEDED = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/string_format_error.proto b/google/ads/googleads/v5/errors/string_format_error.proto deleted file mode 100644 index 466f6442a..000000000 --- a/google/ads/googleads/v5/errors/string_format_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "StringFormatErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing string format errors. - -// Container for enum describing possible string format errors. -message StringFormatErrorEnum { - // Enum describing possible string format errors. - enum StringFormatError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The input string value contains disallowed characters. - ILLEGAL_CHARS = 2; - - // The input string value is invalid for the associated field. - INVALID_FORMAT = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/string_length_error.proto b/google/ads/googleads/v5/errors/string_length_error.proto deleted file mode 100644 index ba4c2452e..000000000 --- a/google/ads/googleads/v5/errors/string_length_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "StringLengthErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing string length errors. - -// Container for enum describing possible string length errors. -message StringLengthErrorEnum { - // Enum describing possible string length errors. - enum StringLengthError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified field should have a least one non-whitespace character in - // it. - EMPTY = 4; - - // Too short. - TOO_SHORT = 2; - - // Too long. - TOO_LONG = 3; - } - - -} diff --git a/google/ads/googleads/v5/errors/third_party_app_analytics_link_error.proto b/google/ads/googleads/v5/errors/third_party_app_analytics_link_error.proto deleted file mode 100644 index cbff09796..000000000 --- a/google/ads/googleads/v5/errors/third_party_app_analytics_link_error.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ThirdPartyAppAnalyticsLinkErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing ThirdPartyAppAnalyticsLink errors. - -// Container for enum describing possible third party app analytics link errors. -message ThirdPartyAppAnalyticsLinkErrorEnum { - // Enum describing possible third party app analytics link errors. - enum ThirdPartyAppAnalyticsLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The provided analytics provider ID is invalid. - INVALID_ANALYTICS_PROVIDER_ID = 2; - - // The provided mobile app ID is invalid. - INVALID_MOBILE_APP_ID = 3; - - // The mobile app corresponding to the provided app ID is not - // active/enabled. - MOBILE_APP_IS_NOT_ENABLED = 4; - - // Regenerating shareable link ID is only allowed on active links - CANNOT_REGENERATE_SHAREABLE_LINK_ID_FOR_REMOVED_LINK = 5; - } - - -} diff --git a/google/ads/googleads/v5/errors/time_zone_error.proto b/google/ads/googleads/v5/errors/time_zone_error.proto deleted file mode 100644 index d9d565129..000000000 --- a/google/ads/googleads/v5/errors/time_zone_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "TimeZoneErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing time zone errors. - -// Container for enum describing possible time zone errors. -message TimeZoneErrorEnum { - // Enum describing possible currency code errors. - enum TimeZoneError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Time zone is not valid. - INVALID_TIME_ZONE = 5; - } - - -} diff --git a/google/ads/googleads/v5/errors/url_field_error.proto b/google/ads/googleads/v5/errors/url_field_error.proto deleted file mode 100644 index e89118e81..000000000 --- a/google/ads/googleads/v5/errors/url_field_error.proto +++ /dev/null @@ -1,215 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "UrlFieldErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing url field errors. - -// Container for enum describing possible url field errors. -message UrlFieldErrorEnum { - // Enum describing possible url field errors. - enum UrlFieldError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The tracking url template is invalid. - INVALID_TRACKING_URL_TEMPLATE = 2; - - // The tracking url template contains invalid tag. - INVALID_TAG_IN_TRACKING_URL_TEMPLATE = 3; - - // The tracking url template must contain at least one tag (e.g. {lpurl}), - // This applies only to tracking url template associated with website ads or - // product ads. - MISSING_TRACKING_URL_TEMPLATE_TAG = 4; - - // The tracking url template must start with a valid protocol (or lpurl - // tag). - MISSING_PROTOCOL_IN_TRACKING_URL_TEMPLATE = 5; - - // The tracking url template starts with an invalid protocol. - INVALID_PROTOCOL_IN_TRACKING_URL_TEMPLATE = 6; - - // The tracking url template contains illegal characters. - MALFORMED_TRACKING_URL_TEMPLATE = 7; - - // The tracking url template must contain a host name (or lpurl tag). - MISSING_HOST_IN_TRACKING_URL_TEMPLATE = 8; - - // The tracking url template has an invalid or missing top level domain - // extension. - INVALID_TLD_IN_TRACKING_URL_TEMPLATE = 9; - - // The tracking url template contains nested occurrences of the same - // conditional tag (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_TRACKING_URL_TEMPLATE_TAG = 10; - - // The final url is invalid. - INVALID_FINAL_URL = 11; - - // The final url contains invalid tag. - INVALID_TAG_IN_FINAL_URL = 12; - - // The final url contains nested occurrences of the same conditional tag - // (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_FINAL_URL_TAG = 13; - - // The final url must start with a valid protocol. - MISSING_PROTOCOL_IN_FINAL_URL = 14; - - // The final url starts with an invalid protocol. - INVALID_PROTOCOL_IN_FINAL_URL = 15; - - // The final url contains illegal characters. - MALFORMED_FINAL_URL = 16; - - // The final url must contain a host name. - MISSING_HOST_IN_FINAL_URL = 17; - - // The tracking url template has an invalid or missing top level domain - // extension. - INVALID_TLD_IN_FINAL_URL = 18; - - // The final mobile url is invalid. - INVALID_FINAL_MOBILE_URL = 19; - - // The final mobile url contains invalid tag. - INVALID_TAG_IN_FINAL_MOBILE_URL = 20; - - // The final mobile url contains nested occurrences of the same conditional - // tag (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_FINAL_MOBILE_URL_TAG = 21; - - // The final mobile url must start with a valid protocol. - MISSING_PROTOCOL_IN_FINAL_MOBILE_URL = 22; - - // The final mobile url starts with an invalid protocol. - INVALID_PROTOCOL_IN_FINAL_MOBILE_URL = 23; - - // The final mobile url contains illegal characters. - MALFORMED_FINAL_MOBILE_URL = 24; - - // The final mobile url must contain a host name. - MISSING_HOST_IN_FINAL_MOBILE_URL = 25; - - // The tracking url template has an invalid or missing top level domain - // extension. - INVALID_TLD_IN_FINAL_MOBILE_URL = 26; - - // The final app url is invalid. - INVALID_FINAL_APP_URL = 27; - - // The final app url contains invalid tag. - INVALID_TAG_IN_FINAL_APP_URL = 28; - - // The final app url contains nested occurrences of the same conditional tag - // (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_FINAL_APP_URL_TAG = 29; - - // More than one app url found for the same OS type. - MULTIPLE_APP_URLS_FOR_OSTYPE = 30; - - // The OS type given for an app url is not valid. - INVALID_OSTYPE = 31; - - // The protocol given for an app url is not valid. (E.g. "android-app://") - INVALID_PROTOCOL_FOR_APP_URL = 32; - - // The package id (app id) given for an app url is not valid. - INVALID_PACKAGE_ID_FOR_APP_URL = 33; - - // The number of url custom parameters for an resource exceeds the maximum - // limit allowed. - URL_CUSTOM_PARAMETERS_COUNT_EXCEEDS_LIMIT = 34; - - // An invalid character appears in the parameter key. - INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_KEY = 39; - - // An invalid character appears in the parameter value. - INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_VALUE = 40; - - // The url custom parameter value fails url tag validation. - INVALID_TAG_IN_URL_CUSTOM_PARAMETER_VALUE = 41; - - // The custom parameter contains nested occurrences of the same conditional - // tag (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_URL_CUSTOM_PARAMETER_TAG = 42; - - // The protocol (http:// or https://) is missing. - MISSING_PROTOCOL = 43; - - // Unsupported protocol in URL. Only http and https are supported. - INVALID_PROTOCOL = 52; - - // The url is invalid. - INVALID_URL = 44; - - // Destination Url is deprecated. - DESTINATION_URL_DEPRECATED = 45; - - // The url contains invalid tag. - INVALID_TAG_IN_URL = 46; - - // The url must contain at least one tag (e.g. {lpurl}), This applies only - // to urls associated with website ads or product ads. - MISSING_URL_TAG = 47; - - // Duplicate url id. - DUPLICATE_URL_ID = 48; - - // Invalid url id. - INVALID_URL_ID = 49; - - // The final url suffix cannot begin with '?' or '&' characters and must be - // a valid query string. - FINAL_URL_SUFFIX_MALFORMED = 50; - - // The final url suffix cannot contain {lpurl} related or {ignore} tags. - INVALID_TAG_IN_FINAL_URL_SUFFIX = 51; - - // The top level domain is invalid, e.g, not a public top level domain - // listed in publicsuffix.org. - INVALID_TOP_LEVEL_DOMAIN = 53; - - // Malformed top level domain in URL. - MALFORMED_TOP_LEVEL_DOMAIN = 54; - - // Malformed URL. - MALFORMED_URL = 55; - - // No host found in URL. - MISSING_HOST = 56; - - // Custom parameter value cannot be null. - NULL_CUSTOM_PARAMETER_VALUE = 57; - } - - -} diff --git a/google/ads/googleads/v5/errors/user_data_error.proto b/google/ads/googleads/v5/errors/user_data_error.proto deleted file mode 100644 index 42745cd13..000000000 --- a/google/ads/googleads/v5/errors/user_data_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "UserDataErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing user data errors. - -// Container for enum describing possible user data errors. -message UserDataErrorEnum { - // Enum describing possible request errors. - enum UserDataError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Customer is not allowed to perform operations related to Customer Match. - OPERATIONS_FOR_CUSTOMER_MATCH_NOT_ALLOWED = 2; - - // Maximum number of user identifiers allowed for each mutate is 100. - TOO_MANY_USER_IDENTIFIERS = 3; - - // Current user list is not applicable for the given customer. - USER_LIST_NOT_APPLICABLE = 4; - } - - -} diff --git a/google/ads/googleads/v5/errors/user_list_error.proto b/google/ads/googleads/v5/errors/user_list_error.proto deleted file mode 100644 index 8d9d9cb65..000000000 --- a/google/ads/googleads/v5/errors/user_list_error.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "UserListErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing user list errors. - -// Container for enum describing possible user list errors. -message UserListErrorEnum { - // Enum describing possible user list errors. - enum UserListError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Creating and updating external remarketing user lists is not supported. - EXTERNAL_REMARKETING_USER_LIST_MUTATE_NOT_SUPPORTED = 2; - - // Concrete type of user list is required. - CONCRETE_TYPE_REQUIRED = 3; - - // Creating/updating user list conversion types requires specifying the - // conversion type Id. - CONVERSION_TYPE_ID_REQUIRED = 4; - - // Remarketing user list cannot have duplicate conversion types. - DUPLICATE_CONVERSION_TYPES = 5; - - // Conversion type is invalid/unknown. - INVALID_CONVERSION_TYPE = 6; - - // User list description is empty or invalid. - INVALID_DESCRIPTION = 7; - - // User list name is empty or invalid. - INVALID_NAME = 8; - - // Type of the UserList does not match. - INVALID_TYPE = 9; - - // Embedded logical user lists are not allowed. - CAN_NOT_ADD_LOGICAL_LIST_AS_LOGICAL_LIST_OPERAND = 10; - - // User list rule operand is invalid. - INVALID_USER_LIST_LOGICAL_RULE_OPERAND = 11; - - // Name is already being used for another user list for the account. - NAME_ALREADY_USED = 12; - - // Name is required when creating a new conversion type. - NEW_CONVERSION_TYPE_NAME_REQUIRED = 13; - - // The given conversion type name has been used. - CONVERSION_TYPE_NAME_ALREADY_USED = 14; - - // Only an owner account may edit a user list. - OWNERSHIP_REQUIRED_FOR_SET = 15; - - // Creating user list without setting type in oneof user_list field, or - // creating/updating read-only user list types is not allowed. - USER_LIST_MUTATE_NOT_SUPPORTED = 16; - - // Rule is invalid. - INVALID_RULE = 17; - - // The specified date range is empty. - INVALID_DATE_RANGE = 27; - - // A UserList which is privacy sensitive or legal rejected cannot be mutated - // by external users. - CAN_NOT_MUTATE_SENSITIVE_USERLIST = 28; - - // Maximum number of rulebased user lists a customer can have. - MAX_NUM_RULEBASED_USERLISTS = 29; - - // BasicUserList's billable record field cannot be modified once it is set. - CANNOT_MODIFY_BILLABLE_RECORD_COUNT = 30; - - // crm_based_user_list.app_id field must be set when upload_key_type is - // MOBILE_ADVERTISING_ID. - APP_ID_NOT_SET = 31; - - // Name of the user list is reserved for system generated lists and cannot - // be used. - USERLIST_NAME_IS_RESERVED_FOR_SYSTEM_LIST = 32; - - // Advertiser needs to be on the allow-list to use remarketing lists created - // from advertiser uploaded data (e.g., Customer Match lists). - ADVERTISER_NOT_ON_ALLOWLIST_FOR_USING_UPLOADED_DATA = 37; - - // The provided rule_type is not supported for the user list. - RULE_TYPE_IS_NOT_SUPPORTED = 34; - - // Similar user list cannot be used as a logical user list operand. - CAN_NOT_ADD_A_SIMILAR_USERLIST_AS_LOGICAL_LIST_OPERAND = 35; - - // Logical user list should not have a mix of CRM based user list and other - // types of lists in its rules. - CAN_NOT_MIX_CRM_BASED_IN_LOGICAL_LIST_WITH_OTHER_LISTS = 36; - } - - -} diff --git a/google/ads/googleads/v5/errors/youtube_video_registration_error.proto b/google/ads/googleads/v5/errors/youtube_video_registration_error.proto deleted file mode 100644 index 0d2d70781..000000000 --- a/google/ads/googleads/v5/errors/youtube_video_registration_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "YoutubeVideoRegistrationErrorProto"; -option java_package = "com.google.ads.googleads.v5.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V5::Errors"; - -// Proto file describing YouTube video registration errors. - -// Container for enum describing YouTube video registration errors. -message YoutubeVideoRegistrationErrorEnum { - // Enum describing YouTube video registration errors. - enum YoutubeVideoRegistrationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Video to be registered wasn't found. - VIDEO_NOT_FOUND = 2; - - // Video to be registered is not accessible (e.g. private). - VIDEO_NOT_ACCESSIBLE = 3; - - // Video to be registered is not eligible (e.g. mature content). - VIDEO_NOT_ELIGIBLE = 4; - } - - -} diff --git a/google/ads/googleads/v5/googleads_gapic.yaml b/google/ads/googleads/v5/googleads_gapic.yaml deleted file mode 100644 index 99b6e7d4d..000000000 --- a/google/ads/googleads/v5/googleads_gapic.yaml +++ /dev/null @@ -1,26 +0,0 @@ -type: com.google.api.codegen.ConfigProto -config_schema_version: 2.0.0 -language_settings: - csharp: - package_name: Google.Ads.GoogleAds.V5.Services - go: - package_name: google.golang.org/google/ads/googleads/v5/services - java: - package_name: com.google.ads.googleads.v5.services - nodejs: - package_name: v5.services - php: - package_name: Google\Ads\GoogleAds\V5\Services - python: - package_name: google.ads.googleads_v5.gapic.services - ruby: - package_name: Google::Ads::Googleads::V5::Services -interfaces: -- name: google.ads.googleads.v5.services.OfflineUserDataJobService - methods: - - name: RunOfflineUserDataJob - long_running: - initial_poll_delay_millis: 300000 - max_poll_delay_millis: 3600000 - poll_delay_multiplier: 1.25 - total_poll_timeout_millis: 43200000 diff --git a/google/ads/googleads/v5/googleads_grpc_service_config.json b/google/ads/googleads/v5/googleads_grpc_service_config.json deleted file mode 100644 index 973586616..000000000 --- a/google/ads/googleads/v5/googleads_grpc_service_config.json +++ /dev/null @@ -1,357 +0,0 @@ -{ - "methodConfig": [ - { - "name": [ - { - "service": "google.ads.googleads.v5.services.AccountBudgetProposalService" - }, - { - "service": "google.ads.googleads.v5.services.AccountBudgetService" - }, - { - "service": "google.ads.googleads.v5.services.AccountLinkService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupAdAssetViewService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupAdLabelService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupAdService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupAudienceViewService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupBidModifierService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupCriterionLabelService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupCriterionService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupCriterionSimulationService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupExtensionSettingService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupFeedService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupLabelService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupService" - }, - { - "service": "google.ads.googleads.v5.services.AdGroupSimulationService" - }, - { - "service": "google.ads.googleads.v5.services.AdParameterService" - }, - { - "service": "google.ads.googleads.v5.services.AdScheduleViewService" - }, - { - "service": "google.ads.googleads.v5.services.AdService" - }, - { - "service": "google.ads.googleads.v5.services.AgeRangeViewService" - }, - { - "service": "google.ads.googleads.v5.services.AssetService" - }, - { - "service": "google.ads.googleads.v5.services.BatchJobService" - }, - { - "service": "google.ads.googleads.v5.services.BiddingStrategyService" - }, - { - "service": "google.ads.googleads.v5.services.BillingSetupService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignAssetService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignAudienceViewService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignBidModifierService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignBudgetService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignCriterionService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignCriterionSimulationService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignDraftService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignExperimentService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignExtensionSettingService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignFeedService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignLabelService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignService" - }, - { - "service": "google.ads.googleads.v5.services.CampaignSharedSetService" - }, - { - "service": "google.ads.googleads.v5.services.CarrierConstantService" - }, - { - "service": "google.ads.googleads.v5.services.ChangeStatusService" - }, - { - "service": "google.ads.googleads.v5.services.ClickViewService" - }, - { - "service": "google.ads.googleads.v5.services.ConversionActionService" - }, - { - "service": "google.ads.googleads.v5.services.ConversionAdjustmentUploadService" - }, - { - "service": "google.ads.googleads.v5.services.ConversionUploadService" - }, - { - "service": "google.ads.googleads.v5.services.CurrencyConstantService" - }, - { - "service": "google.ads.googleads.v5.services.CustomInterestService" - }, - { - "service": "google.ads.googleads.v5.services.CustomerClientLinkService" - }, - { - "service": "google.ads.googleads.v5.services.CustomerClientService" - }, - { - "service": "google.ads.googleads.v5.services.CustomerExtensionSettingService" - }, - { - "service": "google.ads.googleads.v5.services.CustomerFeedService" - }, - { - "service": "google.ads.googleads.v5.services.CustomerLabelService" - }, - { - "service": "google.ads.googleads.v5.services.CustomerManagerLinkService" - }, - { - "service": "google.ads.googleads.v5.services.CustomerNegativeCriterionService" - }, - { - "service": "google.ads.googleads.v5.services.CustomerService" - }, - { - "service": "google.ads.googleads.v5.services.DetailPlacementViewService" - }, - { - "service": "google.ads.googleads.v5.services.DisplayKeywordViewService" - }, - { - "service": "google.ads.googleads.v5.services.DistanceViewService" - }, - { - "service": "google.ads.googleads.v5.services.DomainCategoryService" - }, - { - "service": "google.ads.googleads.v5.services.DynamicSearchAdsSearchTermViewService" - }, - { - "service": "google.ads.googleads.v5.services.ExpandedLandingPageViewService" - }, - { - "service": "google.ads.googleads.v5.services.ExtensionFeedItemService" - }, - { - "service": "google.ads.googleads.v5.services.FeedItemService" - }, - { - "service": "google.ads.googleads.v5.services.FeedItemTargetService" - }, - { - "service": "google.ads.googleads.v5.services.FeedMappingService" - }, - { - "service": "google.ads.googleads.v5.services.FeedPlaceholderViewService" - }, - { - "service": "google.ads.googleads.v5.services.FeedService" - }, - { - "service": "google.ads.googleads.v5.services.GenderViewService" - }, - { - "service": "google.ads.googleads.v5.services.GeoTargetConstantService" - }, - { - "service": "google.ads.googleads.v5.services.GeographicViewService" - }, - { - "service": "google.ads.googleads.v5.services.GoogleAdsFieldService" - }, - { - "service": "google.ads.googleads.v5.services.GoogleAdsService" - }, - { - "service": "google.ads.googleads.v5.services.GroupPlacementViewService" - }, - { - "service": "google.ads.googleads.v5.services.HotelGroupViewService" - }, - { - "service": "google.ads.googleads.v5.services.HotelPerformanceViewService" - }, - { - "service": "google.ads.googleads.v5.services.IncomeRangeViewService" - }, - { - "service": "google.ads.googleads.v5.services.InvoiceService" - }, - { - "service": "google.ads.googleads.v5.services.KeywordPlanAdGroupKeywordService" - }, - { - "service": "google.ads.googleads.v5.services.KeywordPlanAdGroupService" - }, - { - "service": "google.ads.googleads.v5.services.KeywordPlanCampaignKeywordService" - }, - { - "service": "google.ads.googleads.v5.services.KeywordPlanCampaignService" - }, - { - "service": "google.ads.googleads.v5.services.KeywordPlanIdeaService" - }, - { - "service": "google.ads.googleads.v5.services.KeywordPlanService" - }, - { - "service": "google.ads.googleads.v5.services.KeywordViewService" - }, - { - "service": "google.ads.googleads.v5.services.LabelService" - }, - { - "service": "google.ads.googleads.v5.services.LandingPageViewService" - }, - { - "service": "google.ads.googleads.v5.services.LanguageConstantService" - }, - { - "service": "google.ads.googleads.v5.services.LocationViewService" - }, - { - "service": "google.ads.googleads.v5.services.ManagedPlacementViewService" - }, - { - "service": "google.ads.googleads.v5.services.MediaFileService" - }, - { - "service": "google.ads.googleads.v5.services.MerchantCenterLinkService" - }, - { - "service": "google.ads.googleads.v5.services.MobileAppCategoryConstantService" - }, - { - "service": "google.ads.googleads.v5.services.MobileDeviceConstantService" - }, - { - "service": "google.ads.googleads.v5.services.OfflineUserDataJobService" - }, - { - "service": "google.ads.googleads.v5.services.OperatingSystemVersionConstantService" - }, - { - "service": "google.ads.googleads.v5.services.PaidOrganicSearchTermViewService" - }, - { - "service": "google.ads.googleads.v5.services.ParentalStatusViewService" - }, - { - "service": "google.ads.googleads.v5.services.PaymentsAccountService" - }, - { - "service": "google.ads.googleads.v5.services.ProductBiddingCategoryConstantService" - }, - { - "service": "google.ads.googleads.v5.services.ProductGroupViewService" - }, - { - "service": "google.ads.googleads.v5.services.ReachPlanService" - }, - { - "service": "google.ads.googleads.v5.services.RecommendationService" - }, - { - "service": "google.ads.googleads.v5.services.RemarketingActionService" - }, - { - "service": "google.ads.googleads.v5.services.SearchTermViewService" - }, - { - "service": "google.ads.googleads.v5.services.SharedCriterionService" - }, - { - "service": "google.ads.googleads.v5.services.SharedSetService" - }, - { - "service": "google.ads.googleads.v5.services.ShoppingPerformanceViewService" - }, - { - "service": "google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService" - }, - { - "service": "google.ads.googleads.v5.services.TopicConstantService" - }, - { - "service": "google.ads.googleads.v5.services.TopicViewService" - }, - { - "service": "google.ads.googleads.v5.services.UserDataService" - }, - { - "service": "google.ads.googleads.v5.services.UserInterestService" - }, - { - "service": "google.ads.googleads.v5.services.UserListService" - }, - { - "service": "google.ads.googleads.v5.services.UserLocationViewService" - }, - { - "service": "google.ads.googleads.v5.services.VideoService" - } - ], - "timeout": "3600s", - "retryPolicy": { - "initialBackoff": "5s", - "maxBackoff": "60s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": [ - "UNAVAILABLE", - "DEADLINE_EXCEEDED" - ] - } - } - ] -} diff --git a/google/ads/googleads/v5/googleads_v5.yaml b/google/ads/googleads/v5/googleads_v5.yaml deleted file mode 100644 index ec000d9ca..000000000 --- a/google/ads/googleads/v5/googleads_v5.yaml +++ /dev/null @@ -1,1145 +0,0 @@ -type: google.api.Service -config_version: 3 -name: googleads.googleapis.com -title: Google Ads API - -apis: -- name: google.ads.googleads.v5.services.AccountBudgetProposalService -- name: google.ads.googleads.v5.services.AccountBudgetService -- name: google.ads.googleads.v5.services.AccountLinkService -- name: google.ads.googleads.v5.services.AdGroupAdAssetViewService -- name: google.ads.googleads.v5.services.AdGroupAdLabelService -- name: google.ads.googleads.v5.services.AdGroupAdService -- name: google.ads.googleads.v5.services.AdGroupAudienceViewService -- name: google.ads.googleads.v5.services.AdGroupBidModifierService -- name: google.ads.googleads.v5.services.AdGroupCriterionLabelService -- name: google.ads.googleads.v5.services.AdGroupCriterionService -- name: google.ads.googleads.v5.services.AdGroupCriterionSimulationService -- name: google.ads.googleads.v5.services.AdGroupExtensionSettingService -- name: google.ads.googleads.v5.services.AdGroupFeedService -- name: google.ads.googleads.v5.services.AdGroupLabelService -- name: google.ads.googleads.v5.services.AdGroupService -- name: google.ads.googleads.v5.services.AdGroupSimulationService -- name: google.ads.googleads.v5.services.AdParameterService -- name: google.ads.googleads.v5.services.AdScheduleViewService -- name: google.ads.googleads.v5.services.AdService -- name: google.ads.googleads.v5.services.AgeRangeViewService -- name: google.ads.googleads.v5.services.AssetService -- name: google.ads.googleads.v5.services.BatchJobService -- name: google.ads.googleads.v5.services.BiddingStrategyService -- name: google.ads.googleads.v5.services.BillingSetupService -- name: google.ads.googleads.v5.services.CampaignAssetService -- name: google.ads.googleads.v5.services.CampaignAudienceViewService -- name: google.ads.googleads.v5.services.CampaignBidModifierService -- name: google.ads.googleads.v5.services.CampaignBudgetService -- name: google.ads.googleads.v5.services.CampaignCriterionService -- name: google.ads.googleads.v5.services.CampaignCriterionSimulationService -- name: google.ads.googleads.v5.services.CampaignDraftService -- name: google.ads.googleads.v5.services.CampaignExperimentService -- name: google.ads.googleads.v5.services.CampaignExtensionSettingService -- name: google.ads.googleads.v5.services.CampaignFeedService -- name: google.ads.googleads.v5.services.CampaignLabelService -- name: google.ads.googleads.v5.services.CampaignService -- name: google.ads.googleads.v5.services.CampaignSharedSetService -- name: google.ads.googleads.v5.services.CarrierConstantService -- name: google.ads.googleads.v5.services.ChangeStatusService -- name: google.ads.googleads.v5.services.ClickViewService -- name: google.ads.googleads.v5.services.ConversionActionService -- name: google.ads.googleads.v5.services.ConversionAdjustmentUploadService -- name: google.ads.googleads.v5.services.ConversionUploadService -- name: google.ads.googleads.v5.services.CurrencyConstantService -- name: google.ads.googleads.v5.services.CustomInterestService -- name: google.ads.googleads.v5.services.CustomerClientLinkService -- name: google.ads.googleads.v5.services.CustomerClientService -- name: google.ads.googleads.v5.services.CustomerExtensionSettingService -- name: google.ads.googleads.v5.services.CustomerFeedService -- name: google.ads.googleads.v5.services.CustomerLabelService -- name: google.ads.googleads.v5.services.CustomerManagerLinkService -- name: google.ads.googleads.v5.services.CustomerNegativeCriterionService -- name: google.ads.googleads.v5.services.CustomerService -- name: google.ads.googleads.v5.services.DetailPlacementViewService -- name: google.ads.googleads.v5.services.DisplayKeywordViewService -- name: google.ads.googleads.v5.services.DistanceViewService -- name: google.ads.googleads.v5.services.DomainCategoryService -- name: google.ads.googleads.v5.services.DynamicSearchAdsSearchTermViewService -- name: google.ads.googleads.v5.services.ExpandedLandingPageViewService -- name: google.ads.googleads.v5.services.ExtensionFeedItemService -- name: google.ads.googleads.v5.services.FeedItemService -- name: google.ads.googleads.v5.services.FeedItemTargetService -- name: google.ads.googleads.v5.services.FeedMappingService -- name: google.ads.googleads.v5.services.FeedPlaceholderViewService -- name: google.ads.googleads.v5.services.FeedService -- name: google.ads.googleads.v5.services.GenderViewService -- name: google.ads.googleads.v5.services.GeoTargetConstantService -- name: google.ads.googleads.v5.services.GeographicViewService -- name: google.ads.googleads.v5.services.GoogleAdsFieldService -- name: google.ads.googleads.v5.services.GoogleAdsService -- name: google.ads.googleads.v5.services.GroupPlacementViewService -- name: google.ads.googleads.v5.services.HotelGroupViewService -- name: google.ads.googleads.v5.services.HotelPerformanceViewService -- name: google.ads.googleads.v5.services.IncomeRangeViewService -- name: google.ads.googleads.v5.services.InvoiceService -- name: google.ads.googleads.v5.services.KeywordPlanAdGroupKeywordService -- name: google.ads.googleads.v5.services.KeywordPlanAdGroupService -- name: google.ads.googleads.v5.services.KeywordPlanCampaignKeywordService -- name: google.ads.googleads.v5.services.KeywordPlanCampaignService -- name: google.ads.googleads.v5.services.KeywordPlanIdeaService -- name: google.ads.googleads.v5.services.KeywordPlanService -- name: google.ads.googleads.v5.services.KeywordViewService -- name: google.ads.googleads.v5.services.LabelService -- name: google.ads.googleads.v5.services.LandingPageViewService -- name: google.ads.googleads.v5.services.LanguageConstantService -- name: google.ads.googleads.v5.services.LocationViewService -- name: google.ads.googleads.v5.services.ManagedPlacementViewService -- name: google.ads.googleads.v5.services.MediaFileService -- name: google.ads.googleads.v5.services.MerchantCenterLinkService -- name: google.ads.googleads.v5.services.MobileAppCategoryConstantService -- name: google.ads.googleads.v5.services.MobileDeviceConstantService -- name: google.ads.googleads.v5.services.OfflineUserDataJobService -- name: google.ads.googleads.v5.services.OperatingSystemVersionConstantService -- name: google.ads.googleads.v5.services.PaidOrganicSearchTermViewService -- name: google.ads.googleads.v5.services.ParentalStatusViewService -- name: google.ads.googleads.v5.services.PaymentsAccountService -- name: google.ads.googleads.v5.services.ProductBiddingCategoryConstantService -- name: google.ads.googleads.v5.services.ProductGroupViewService -- name: google.ads.googleads.v5.services.ReachPlanService -- name: google.ads.googleads.v5.services.RecommendationService -- name: google.ads.googleads.v5.services.RemarketingActionService -- name: google.ads.googleads.v5.services.SearchTermViewService -- name: google.ads.googleads.v5.services.SharedCriterionService -- name: google.ads.googleads.v5.services.SharedSetService -- name: google.ads.googleads.v5.services.ShoppingPerformanceViewService -- name: google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService -- name: google.ads.googleads.v5.services.TopicConstantService -- name: google.ads.googleads.v5.services.TopicViewService -- name: google.ads.googleads.v5.services.UserDataService -- name: google.ads.googleads.v5.services.UserInterestService -- name: google.ads.googleads.v5.services.UserListService -- name: google.ads.googleads.v5.services.UserLocationViewService -- name: google.ads.googleads.v5.services.VideoService - -types: -- name: google.ads.googleads.v5.errors.GoogleAdsFailure -- name: google.ads.googleads.v5.resources.BatchJob.BatchJobMetadata -- name: google.ads.googleads.v5.services.CreateCampaignExperimentMetadata - -documentation: - summary: 'Manage your Google Ads accounts, campaigns, and reports with this API.' - overview: |- - The Google Ads API enables an app to integrate with the Google Ads - platform. You can efficiently retrieve and change your Google Ads data - using the API, making it ideal for managing large or complex accounts and - campaigns. - -backend: - rules: - - selector: google.ads.googleads.v5.services.AccountBudgetProposalService.GetAccountBudgetProposal - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AccountBudgetProposalService.MutateAccountBudgetProposal - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AccountBudgetService.GetAccountBudget - deadline: 60.0 - - selector: 'google.ads.googleads.v5.services.AccountLinkService.*' - deadline: 600.0 - - selector: google.ads.googleads.v5.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupAdLabelService.GetAdGroupAdLabel - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupAdLabelService.MutateAdGroupAdLabels - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupAdService.GetAdGroupAd - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupAdService.MutateAdGroupAds - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupAudienceViewService.GetAdGroupAudienceView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupBidModifierService.GetAdGroupBidModifier - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupBidModifierService.MutateAdGroupBidModifiers - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupCriterionService.GetAdGroupCriterion - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupCriterionService.MutateAdGroupCriteria - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupFeedService.GetAdGroupFeed - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupFeedService.MutateAdGroupFeeds - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupLabelService.GetAdGroupLabel - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupLabelService.MutateAdGroupLabels - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupService.GetAdGroup - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupService.MutateAdGroups - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdGroupSimulationService.GetAdGroupSimulation - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdParameterService.GetAdParameter - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdParameterService.MutateAdParameters - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdScheduleViewService.GetAdScheduleView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdService.GetAd - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AdService.MutateAds - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AgeRangeViewService.GetAgeRangeView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AssetService.GetAsset - deadline: 60.0 - - selector: google.ads.googleads.v5.services.AssetService.MutateAssets - deadline: 60.0 - - selector: 'google.ads.googleads.v5.services.BatchJobService.*' - deadline: 60.0 - - selector: google.ads.googleads.v5.services.BiddingStrategyService.GetBiddingStrategy - deadline: 60.0 - - selector: google.ads.googleads.v5.services.BiddingStrategyService.MutateBiddingStrategies - deadline: 60.0 - - selector: google.ads.googleads.v5.services.BillingSetupService.GetBillingSetup - deadline: 60.0 - - selector: google.ads.googleads.v5.services.BillingSetupService.MutateBillingSetup - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignAssetService.GetCampaignAsset - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignAssetService.MutateCampaignAssets - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignAudienceViewService.GetCampaignAudienceView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignBidModifierService.GetCampaignBidModifier - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignBidModifierService.MutateCampaignBidModifiers - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignBudgetService.GetCampaignBudget - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignBudgetService.MutateCampaignBudgets - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignCriterionService.GetCampaignCriterion - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignCriterionService.MutateCampaignCriteria - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation - deadline: 60.0 - - selector: 'google.ads.googleads.v5.services.CampaignDraftService.*' - deadline: 60.0 - - selector: 'google.ads.googleads.v5.services.CampaignExperimentService.*' - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignExtensionSettingService.GetCampaignExtensionSetting - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignFeedService.GetCampaignFeed - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignFeedService.MutateCampaignFeeds - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignLabelService.GetCampaignLabel - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignLabelService.MutateCampaignLabels - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignService.GetCampaign - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignService.MutateCampaigns - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignSharedSetService.GetCampaignSharedSet - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CampaignSharedSetService.MutateCampaignSharedSets - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CarrierConstantService.GetCarrierConstant - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ChangeStatusService.GetChangeStatus - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ClickViewService.GetClickView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ConversionActionService.GetConversionAction - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ConversionActionService.MutateConversionActions - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ConversionAdjustmentUploadService.UploadConversionAdjustments - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ConversionUploadService.UploadCallConversions - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ConversionUploadService.UploadClickConversions - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CurrencyConstantService.GetCurrencyConstant - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomInterestService.GetCustomInterest - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomInterestService.MutateCustomInterests - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomerClientLinkService.GetCustomerClientLink - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomerClientLinkService.MutateCustomerClientLink - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomerClientService.GetCustomerClient - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomerExtensionSettingService.GetCustomerExtensionSetting - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomerFeedService.GetCustomerFeed - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomerFeedService.MutateCustomerFeeds - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomerLabelService.GetCustomerLabel - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomerLabelService.MutateCustomerLabels - deadline: 60.0 - - selector: 'google.ads.googleads.v5.services.CustomerManagerLinkService.*' - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion - deadline: 60.0 - - selector: google.ads.googleads.v5.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria - deadline: 60.0 - - selector: 'google.ads.googleads.v5.services.CustomerService.*' - deadline: 60.0 - - selector: google.ads.googleads.v5.services.DetailPlacementViewService.GetDetailPlacementView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.DisplayKeywordViewService.GetDisplayKeywordView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.DistanceViewService.GetDistanceView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.DomainCategoryService.GetDomainCategory - deadline: 60.0 - - selector: google.ads.googleads.v5.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ExpandedLandingPageViewService.GetExpandedLandingPageView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ExtensionFeedItemService.GetExtensionFeedItem - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ExtensionFeedItemService.MutateExtensionFeedItems - deadline: 60.0 - - selector: google.ads.googleads.v5.services.FeedItemService.GetFeedItem - deadline: 60.0 - - selector: google.ads.googleads.v5.services.FeedItemService.MutateFeedItems - deadline: 60.0 - - selector: google.ads.googleads.v5.services.FeedItemTargetService.GetFeedItemTarget - deadline: 60.0 - - selector: google.ads.googleads.v5.services.FeedItemTargetService.MutateFeedItemTargets - deadline: 60.0 - - selector: google.ads.googleads.v5.services.FeedMappingService.GetFeedMapping - deadline: 60.0 - - selector: google.ads.googleads.v5.services.FeedMappingService.MutateFeedMappings - deadline: 60.0 - - selector: google.ads.googleads.v5.services.FeedPlaceholderViewService.GetFeedPlaceholderView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.FeedService.GetFeed - deadline: 60.0 - - selector: google.ads.googleads.v5.services.FeedService.MutateFeeds - deadline: 60.0 - - selector: google.ads.googleads.v5.services.GenderViewService.GetGenderView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.GeoTargetConstantService.GetGeoTargetConstant - deadline: 60.0 - - selector: google.ads.googleads.v5.services.GeoTargetConstantService.SuggestGeoTargetConstants - deadline: 60.0 - - selector: google.ads.googleads.v5.services.GeographicViewService.GetGeographicView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.GoogleAdsFieldService.GetGoogleAdsField - deadline: 600.0 - - selector: google.ads.googleads.v5.services.GoogleAdsFieldService.SearchGoogleAdsFields - deadline: 600.0 - - selector: google.ads.googleads.v5.services.GoogleAdsService.Mutate - deadline: 600.0 - - selector: google.ads.googleads.v5.services.GoogleAdsService.Search - deadline: 3600.0 - - selector: google.ads.googleads.v5.services.GoogleAdsService.SearchStream - deadline: 3600.0 - - selector: google.ads.googleads.v5.services.GroupPlacementViewService.GetGroupPlacementView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.HotelGroupViewService.GetHotelGroupView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.HotelPerformanceViewService.GetHotelPerformanceView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.IncomeRangeViewService.GetIncomeRangeView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.InvoiceService.ListInvoices - deadline: 60.0 - - selector: google.ads.googleads.v5.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword - deadline: 60.0 - - selector: google.ads.googleads.v5.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords - deadline: 60.0 - - selector: google.ads.googleads.v5.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup - deadline: 60.0 - - selector: google.ads.googleads.v5.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups - deadline: 60.0 - - selector: google.ads.googleads.v5.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword - deadline: 60.0 - - selector: google.ads.googleads.v5.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords - deadline: 60.0 - - selector: google.ads.googleads.v5.services.KeywordPlanCampaignService.GetKeywordPlanCampaign - deadline: 60.0 - - selector: google.ads.googleads.v5.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns - deadline: 60.0 - - selector: google.ads.googleads.v5.services.KeywordPlanIdeaService.GenerateKeywordIdeas - deadline: 600.0 - - selector: 'google.ads.googleads.v5.services.KeywordPlanService.*' - deadline: 600.0 - - selector: google.ads.googleads.v5.services.KeywordPlanService.GetKeywordPlan - deadline: 60.0 - - selector: google.ads.googleads.v5.services.KeywordPlanService.MutateKeywordPlans - deadline: 60.0 - - selector: google.ads.googleads.v5.services.KeywordViewService.GetKeywordView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.LabelService.GetLabel - deadline: 60.0 - - selector: google.ads.googleads.v5.services.LabelService.MutateLabels - deadline: 60.0 - - selector: google.ads.googleads.v5.services.LandingPageViewService.GetLandingPageView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.LanguageConstantService.GetLanguageConstant - deadline: 60.0 - - selector: google.ads.googleads.v5.services.LocationViewService.GetLocationView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ManagedPlacementViewService.GetManagedPlacementView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.MediaFileService.GetMediaFile - deadline: 60.0 - - selector: google.ads.googleads.v5.services.MediaFileService.MutateMediaFiles - deadline: 60.0 - - selector: 'google.ads.googleads.v5.services.MerchantCenterLinkService.*' - deadline: 60.0 - - selector: google.ads.googleads.v5.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant - deadline: 60.0 - - selector: google.ads.googleads.v5.services.MobileDeviceConstantService.GetMobileDeviceConstant - deadline: 60.0 - - selector: 'google.ads.googleads.v5.services.OfflineUserDataJobService.*' - deadline: 600.0 - - selector: google.ads.googleads.v5.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant - deadline: 60.0 - - selector: google.ads.googleads.v5.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ParentalStatusViewService.GetParentalStatusView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.PaymentsAccountService.ListPaymentsAccounts - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ProductGroupViewService.GetProductGroupView - deadline: 60.0 - - selector: 'google.ads.googleads.v5.services.ReachPlanService.*' - deadline: 600.0 - - selector: 'google.ads.googleads.v5.services.RecommendationService.*' - deadline: 600.0 - - selector: google.ads.googleads.v5.services.RemarketingActionService.GetRemarketingAction - deadline: 60.0 - - selector: google.ads.googleads.v5.services.RemarketingActionService.MutateRemarketingActions - deadline: 60.0 - - selector: google.ads.googleads.v5.services.SearchTermViewService.GetSearchTermView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.SharedCriterionService.GetSharedCriterion - deadline: 60.0 - - selector: google.ads.googleads.v5.services.SharedCriterionService.MutateSharedCriteria - deadline: 60.0 - - selector: google.ads.googleads.v5.services.SharedSetService.GetSharedSet - deadline: 60.0 - - selector: google.ads.googleads.v5.services.SharedSetService.MutateSharedSets - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ShoppingPerformanceViewService.GetShoppingPerformanceView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink - deadline: 600.0 - - selector: google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId - deadline: 600.0 - - selector: google.ads.googleads.v5.services.TopicConstantService.GetTopicConstant - deadline: 60.0 - - selector: google.ads.googleads.v5.services.TopicViewService.GetTopicView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.UserDataService.UploadUserData - deadline: 600.0 - - selector: google.ads.googleads.v5.services.UserInterestService.GetUserInterest - deadline: 60.0 - - selector: google.ads.googleads.v5.services.UserListService.GetUserList - deadline: 60.0 - - selector: google.ads.googleads.v5.services.UserListService.MutateUserLists - deadline: 60.0 - - selector: google.ads.googleads.v5.services.UserLocationViewService.GetUserLocationView - deadline: 60.0 - - selector: google.ads.googleads.v5.services.VideoService.GetVideo - deadline: 60.0 - - selector: 'google.longrunning.Operations.*' - deadline: 60.0 - -http: - rules: - - selector: google.longrunning.Operations.CancelOperation - post: '/v5/{name=customers/*/operations/*}:cancel' - body: '*' - - selector: google.longrunning.Operations.DeleteOperation - delete: '/v5/{name=customers/*/operations/*}' - - selector: google.longrunning.Operations.GetOperation - get: '/v5/{name=customers/*/operations/*}' - - selector: google.longrunning.Operations.ListOperations - get: '/v5/{name=customers/*/operations}' - - selector: google.longrunning.Operations.WaitOperation - post: '/v5/{name=customers/*/operations/*}:wait' - body: '*' - -authentication: - rules: - - selector: google.ads.googleads.v5.services.AccountBudgetProposalService.GetAccountBudgetProposal - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AccountBudgetProposalService.MutateAccountBudgetProposal - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AccountBudgetService.GetAccountBudget - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.AccountLinkService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupAdLabelService.GetAdGroupAdLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupAdLabelService.MutateAdGroupAdLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupAdService.GetAdGroupAd - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupAdService.MutateAdGroupAds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupAudienceViewService.GetAdGroupAudienceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupBidModifierService.GetAdGroupBidModifier - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupBidModifierService.MutateAdGroupBidModifiers - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupCriterionService.GetAdGroupCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupCriterionService.MutateAdGroupCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupFeedService.GetAdGroupFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupFeedService.MutateAdGroupFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupLabelService.GetAdGroupLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupLabelService.MutateAdGroupLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupService.GetAdGroup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupService.MutateAdGroups - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdGroupSimulationService.GetAdGroupSimulation - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdParameterService.GetAdParameter - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdParameterService.MutateAdParameters - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdScheduleViewService.GetAdScheduleView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdService.GetAd - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AdService.MutateAds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AgeRangeViewService.GetAgeRangeView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AssetService.GetAsset - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.AssetService.MutateAssets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.BatchJobService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.BiddingStrategyService.GetBiddingStrategy - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.BiddingStrategyService.MutateBiddingStrategies - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.BillingSetupService.GetBillingSetup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.BillingSetupService.MutateBillingSetup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignAssetService.GetCampaignAsset - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignAssetService.MutateCampaignAssets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignAudienceViewService.GetCampaignAudienceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignBidModifierService.GetCampaignBidModifier - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignBidModifierService.MutateCampaignBidModifiers - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignBudgetService.GetCampaignBudget - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignBudgetService.MutateCampaignBudgets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignCriterionService.GetCampaignCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignCriterionService.MutateCampaignCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.CampaignDraftService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.CampaignExperimentService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignExtensionSettingService.GetCampaignExtensionSetting - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignFeedService.GetCampaignFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignFeedService.MutateCampaignFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignLabelService.GetCampaignLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignLabelService.MutateCampaignLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignService.GetCampaign - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignService.MutateCampaigns - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignSharedSetService.GetCampaignSharedSet - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CampaignSharedSetService.MutateCampaignSharedSets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CarrierConstantService.GetCarrierConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ChangeStatusService.GetChangeStatus - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ClickViewService.GetClickView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ConversionActionService.GetConversionAction - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ConversionActionService.MutateConversionActions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ConversionAdjustmentUploadService.UploadConversionAdjustments - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ConversionUploadService.UploadCallConversions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ConversionUploadService.UploadClickConversions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CurrencyConstantService.GetCurrencyConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomInterestService.GetCustomInterest - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomInterestService.MutateCustomInterests - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomerClientLinkService.GetCustomerClientLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomerClientLinkService.MutateCustomerClientLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomerClientService.GetCustomerClient - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomerExtensionSettingService.GetCustomerExtensionSetting - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomerFeedService.GetCustomerFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomerFeedService.MutateCustomerFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomerLabelService.GetCustomerLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomerLabelService.MutateCustomerLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.CustomerManagerLinkService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.CustomerService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.DetailPlacementViewService.GetDetailPlacementView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.DisplayKeywordViewService.GetDisplayKeywordView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.DistanceViewService.GetDistanceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.DomainCategoryService.GetDomainCategory - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ExpandedLandingPageViewService.GetExpandedLandingPageView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ExtensionFeedItemService.GetExtensionFeedItem - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ExtensionFeedItemService.MutateExtensionFeedItems - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.FeedItemService.GetFeedItem - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.FeedItemService.MutateFeedItems - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.FeedItemTargetService.GetFeedItemTarget - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.FeedItemTargetService.MutateFeedItemTargets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.FeedMappingService.GetFeedMapping - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.FeedMappingService.MutateFeedMappings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.FeedPlaceholderViewService.GetFeedPlaceholderView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.FeedService.GetFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.FeedService.MutateFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.GenderViewService.GetGenderView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.GeoTargetConstantService.GetGeoTargetConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.GeoTargetConstantService.SuggestGeoTargetConstants - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.GeographicViewService.GetGeographicView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.GoogleAdsFieldService.GetGoogleAdsField - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.GoogleAdsFieldService.SearchGoogleAdsFields - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.GoogleAdsService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.GroupPlacementViewService.GetGroupPlacementView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.HotelGroupViewService.GetHotelGroupView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.HotelPerformanceViewService.GetHotelPerformanceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.IncomeRangeViewService.GetIncomeRangeView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.InvoiceService.ListInvoices - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.KeywordPlanCampaignService.GetKeywordPlanCampaign - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.KeywordPlanIdeaService.GenerateKeywordIdeas - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.KeywordPlanService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.KeywordViewService.GetKeywordView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.LabelService.GetLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.LabelService.MutateLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.LandingPageViewService.GetLandingPageView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.LanguageConstantService.GetLanguageConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.LocationViewService.GetLocationView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ManagedPlacementViewService.GetManagedPlacementView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.MediaFileService.GetMediaFile - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.MediaFileService.MutateMediaFiles - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.MerchantCenterLinkService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.MobileDeviceConstantService.GetMobileDeviceConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.OfflineUserDataJobService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ParentalStatusViewService.GetParentalStatusView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.PaymentsAccountService.ListPaymentsAccounts - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ProductGroupViewService.GetProductGroupView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.ReachPlanService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v5.services.RecommendationService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.RemarketingActionService.GetRemarketingAction - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.RemarketingActionService.MutateRemarketingActions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.SearchTermViewService.GetSearchTermView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.SharedCriterionService.GetSharedCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.SharedCriterionService.MutateSharedCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.SharedSetService.GetSharedSet - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.SharedSetService.MutateSharedSets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ShoppingPerformanceViewService.GetShoppingPerformanceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.TopicConstantService.GetTopicConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.TopicViewService.GetTopicView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.UserDataService.UploadUserData - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.UserInterestService.GetUserInterest - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.UserListService.GetUserList - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.UserListService.MutateUserLists - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.UserLocationViewService.GetUserLocationView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v5.services.VideoService.GetVideo - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.longrunning.Operations.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords diff --git a/google/ads/googleads/v5/resources/BUILD.bazel b/google/ads/googleads/v5/resources/BUILD.bazel deleted file mode 100644 index 4894d7940..000000000 --- a/google/ads/googleads/v5/resources/BUILD.bazel +++ /dev/null @@ -1,97 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "resources_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v5/common:common_proto", - "//google/ads/googleads/v5/enums:enums_proto", - "//google/ads/googleads/v5/errors:errors_proto", - "//google/api:annotations_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - "@com_google_protobuf//:field_mask_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_proto_library", -) - -java_proto_library( - name = "resources_java_proto", - deps = [":resources_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_proto_library", -) - -csharp_proto_library( - name = "resources_csharp_proto", - deps = [":resources_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_proto_library", -) - -ruby_proto_library( - name = "resources_ruby_proto", - deps = [":resources_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_proto_library", -) - -py_proto_library( - name = "resources_py_proto", - deps = [":resources_proto"], -) diff --git a/google/ads/googleads/v5/resources/account_budget.proto b/google/ads/googleads/v5/resources/account_budget.proto deleted file mode 100644 index 41e91ff50..000000000 --- a/google/ads/googleads/v5/resources/account_budget.proto +++ /dev/null @@ -1,252 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/account_budget_proposal_type.proto"; -import "google/ads/googleads/v5/enums/account_budget_status.proto"; -import "google/ads/googleads/v5/enums/spending_limit_type.proto"; -import "google/ads/googleads/v5/enums/time_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the AccountBudget resource. - -// An account-level budget. It contains information about the budget itself, -// as well as the most recently approved changes to the budget and proposed -// changes that are pending approval. The proposed changes that are pending -// approval, if any, are found in 'pending_proposal'. Effective details about -// the budget are found in fields prefixed 'approved_', 'adjusted_' and those -// without a prefix. Since some effective details may differ from what the user -// had originally requested (e.g. spending limit), these differences are -// juxtaposed via 'proposed_', 'approved_', and possibly 'adjusted_' fields. -// -// This resource is mutated using AccountBudgetProposal and cannot be mutated -// directly. A budget may have at most one pending proposal at any given time. -// It is read through pending_proposal. -// -// Once approved, a budget may be subject to adjustments, such as credit -// adjustments. Adjustments create differences between the 'approved' and -// 'adjusted' fields, which would otherwise be identical. -message AccountBudget { - option (google.api.resource) = { - type: "googleads.googleapis.com/AccountBudget" - pattern: "customers/{customer}/accountBudgets/{account_budget}" - }; - - // A pending proposal associated with the enclosing account-level budget, - // if applicable. - message PendingAccountBudgetProposal { - // Output only. The resource name of the proposal. - // AccountBudgetProposal resource names have the form: - // - // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` - optional string account_budget_proposal = 12 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - } - ]; - - // Output only. The type of this proposal, e.g. END to end the budget associated - // with this proposal. - google.ads.googleads.v5.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name to assign to the account-level budget. - optional string name = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The start time in yyyy-MM-dd HH:mm:ss format. - optional string start_date_time = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A purchase order number is a value that helps users reference this budget - // in their monthly invoices. - optional string purchase_order_number = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Notes associated with this budget. - optional string notes = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The time when this account-level budget proposal was created. - // Formatted as yyyy-MM-dd HH:mm:ss. - optional string creation_date_time = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The end time of the account-level budget. - oneof end_time { - // Output only. The end time in yyyy-MM-dd HH:mm:ss format. - string end_date_time = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The end time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v5.enums.TimeTypeEnum.TimeType end_time_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The spending limit. - oneof spending_limit { - // Output only. The spending limit in micros. One million is equivalent to - // one unit. - int64 spending_limit_micros = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v5.enums.SpendingLimitTypeEnum.SpendingLimitType spending_limit_type = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - } - - // Output only. The resource name of the account-level budget. - // AccountBudget resource names have the form: - // - // `customers/{customer_id}/accountBudgets/{account_budget_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudget" - } - ]; - - // Output only. The ID of the account-level budget. - optional int64 id = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the billing setup associated with this account-level - // budget. BillingSetup resource names have the form: - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - optional string billing_setup = 24 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; - - // Output only. The status of this account-level budget. - google.ads.googleads.v5.enums.AccountBudgetStatusEnum.AccountBudgetStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the account-level budget. - optional string name = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The proposed start time of the account-level budget in - // yyyy-MM-dd HH:mm:ss format. If a start time type of NOW was proposed, - // this is the time of request. - optional string proposed_start_date_time = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved start time of the account-level budget in yyyy-MM-dd HH:mm:ss - // format. - // - // For example, if a new budget is approved after the proposed start time, - // the approved start time is the time of approval. - optional string approved_start_date_time = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total adjustments amount. - // - // An example of an adjustment is courtesy credits. - int64 total_adjustments_micros = 33 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The value of Ads that have been served, in micros. - // - // This includes overdelivery costs, in which case a credit might be - // automatically applied to the budget (see total_adjustments_micros). - int64 amount_served_micros = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A purchase order number is a value that helps users reference this budget - // in their monthly invoices. - optional string purchase_order_number = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Notes associated with the budget. - optional string notes = 36 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The pending proposal to modify this budget, if applicable. - PendingAccountBudgetProposal pending_proposal = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The proposed end time of the account-level budget. - oneof proposed_end_time { - // Output only. The proposed end time in yyyy-MM-dd HH:mm:ss format. - string proposed_end_date_time = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The proposed end time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v5.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The approved end time of the account-level budget. - // - // For example, if a budget's end time is updated and the proposal is approved - // after the proposed end time, the approved end time is the time of approval. - oneof approved_end_time { - // Output only. The approved end time in yyyy-MM-dd HH:mm:ss format. - string approved_end_date_time = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved end time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v5.enums.TimeTypeEnum.TimeType approved_end_time_type = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The proposed spending limit. - oneof proposed_spending_limit { - // Output only. The proposed spending limit in micros. One million is equivalent to - // one unit. - int64 proposed_spending_limit_micros = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The proposed spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v5.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The approved spending limit. - // - // For example, if the amount already spent by the account exceeds the - // proposed spending limit at the time the proposal is approved, the approved - // spending limit is set to the amount already spent. - oneof approved_spending_limit { - // Output only. The approved spending limit in micros. One million is equivalent to - // one unit. This will only be populated if the proposed spending limit - // is finite, and will always be greater than or equal to the - // proposed spending limit. - int64 approved_spending_limit_micros = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved spending limit as a well-defined type, e.g. INFINITE. This - // will only be populated if the approved spending limit is INFINITE. - google.ads.googleads.v5.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The spending limit after adjustments have been applied. Adjustments are - // stored in total_adjustments_micros. - // - // This value has the final say on how much the account is allowed to spend. - oneof adjusted_spending_limit { - // Output only. The adjusted spending limit in micros. One million is equivalent to - // one unit. - // - // If the approved spending limit is finite, the adjusted - // spending limit may vary depending on the types of adjustments applied - // to this budget, if applicable. - // - // The different kinds of adjustments are described here: - // https://support.google.com/google-ads/answer/1704323 - // - // For example, a debit adjustment reduces how much the account is - // allowed to spend. - int64 adjusted_spending_limit_micros = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The adjusted spending limit as a well-defined type, e.g. INFINITE. - // This will only be populated if the adjusted spending limit is INFINITE, - // which is guaranteed to be true if the approved spending limit is - // INFINITE. - google.ads.googleads.v5.enums.SpendingLimitTypeEnum.SpendingLimitType adjusted_spending_limit_type = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v5/resources/account_budget_proposal.proto b/google/ads/googleads/v5/resources/account_budget_proposal.proto deleted file mode 100644 index 72d1dcfea..000000000 --- a/google/ads/googleads/v5/resources/account_budget_proposal.proto +++ /dev/null @@ -1,161 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/account_budget_proposal_status.proto"; -import "google/ads/googleads/v5/enums/account_budget_proposal_type.proto"; -import "google/ads/googleads/v5/enums/spending_limit_type.proto"; -import "google/ads/googleads/v5/enums/time_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the AccountBudgetProposal resource. - -// An account-level budget proposal. -// -// All fields prefixed with 'proposed' may not necessarily be applied directly. -// For example, proposed spending limits may be adjusted before their -// application. This is true if the 'proposed' field has an 'approved' -// counterpart, e.g. spending limits. -// -// Please note that the proposal type (proposal_type) changes which fields are -// required and which must remain empty. -message AccountBudgetProposal { - option (google.api.resource) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - pattern: "customers/{customer}/accountBudgetProposals/{account_budget_proposal}" - }; - - // Immutable. The resource name of the proposal. - // AccountBudgetProposal resource names have the form: - // - // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - } - ]; - - // Output only. The ID of the proposal. - google.protobuf.Int64Value id = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The resource name of the billing setup associated with this proposal. - google.protobuf.StringValue billing_setup = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; - - // Immutable. The resource name of the account-level budget associated with this - // proposal. - google.protobuf.StringValue account_budget = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudget" - } - ]; - - // Immutable. The type of this proposal, e.g. END to end the budget associated with this - // proposal. - google.ads.googleads.v5.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The status of this proposal. - // When a new proposal is created, the status defaults to PENDING. - google.ads.googleads.v5.enums.AccountBudgetProposalStatusEnum.AccountBudgetProposalStatus status = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The name to assign to the account-level budget. - google.protobuf.StringValue proposed_name = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The approved start date time in yyyy-mm-dd hh:mm:ss format. - google.protobuf.StringValue approved_start_date_time = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. A purchase order number is a value that enables the user to help them - // reference this budget in their monthly invoices. - google.protobuf.StringValue proposed_purchase_order_number = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Notes associated with this budget. - google.protobuf.StringValue proposed_notes = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The date time when this account-level budget proposal was created, which is - // not the same as its approval date time, if applicable. - google.protobuf.StringValue creation_date_time = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The date time when this account-level budget was approved, if applicable. - google.protobuf.StringValue approval_date_time = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The proposed start date time of the account-level budget, which cannot be - // in the past. - oneof proposed_start_time { - // Immutable. The proposed start date time in yyyy-mm-dd hh:mm:ss format. - google.protobuf.StringValue proposed_start_date_time = 18 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The proposed start date time as a well-defined type, e.g. NOW. - google.ads.googleads.v5.enums.TimeTypeEnum.TimeType proposed_start_time_type = 7 [(google.api.field_behavior) = IMMUTABLE]; - } - - // The proposed end date time of the account-level budget, which cannot be in - // the past. - oneof proposed_end_time { - // Immutable. The proposed end date time in yyyy-mm-dd hh:mm:ss format. - google.protobuf.StringValue proposed_end_date_time = 19 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The proposed end date time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v5.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9 [(google.api.field_behavior) = IMMUTABLE]; - } - - // The approved end date time of the account-level budget. - oneof approved_end_time { - // Output only. The approved end date time in yyyy-mm-dd hh:mm:ss format. - google.protobuf.StringValue approved_end_date_time = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved end date time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v5.enums.TimeTypeEnum.TimeType approved_end_time_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The proposed spending limit. - oneof proposed_spending_limit { - // Immutable. The proposed spending limit in micros. One million is equivalent to - // one unit. - google.protobuf.Int64Value proposed_spending_limit_micros = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The proposed spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v5.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 11 [(google.api.field_behavior) = IMMUTABLE]; - } - - // The approved spending limit. - oneof approved_spending_limit { - // Output only. The approved spending limit in micros. One million is equivalent to - // one unit. - google.protobuf.Int64Value approved_spending_limit_micros = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v5.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v5/resources/account_link.proto b/google/ads/googleads/v5/resources/account_link.proto deleted file mode 100644 index 5b8ee6663..000000000 --- a/google/ads/googleads/v5/resources/account_link.proto +++ /dev/null @@ -1,126 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/account_link_status.proto"; -import "google/ads/googleads/v5/enums/linked_account_type.proto"; -import "google/ads/googleads/v5/enums/mobile_app_vendor.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Represents the data sharing connection between a Google Ads account and -// another account -message AccountLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/AccountLink" - pattern: "customers/{customer}/accountLinks/{account_link}" - }; - - // Immutable. Resource name of the account link. - // AccountLink resource names have the form: - // `customers/{customer_id}/accountLinks/{account_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountLink" - } - ]; - - // Output only. The ID of the link. - // This field is read only. - google.protobuf.Int64Value account_link_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the link. - google.ads.googleads.v5.enums.AccountLinkStatusEnum.AccountLinkStatus status = 3; - - // Output only. The type of the linked account. - google.ads.googleads.v5.enums.LinkedAccountTypeEnum.LinkedAccountType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // An account linked to this Google Ads account. - oneof linked_account { - // Immutable. A third party app analytics link. - ThirdPartyAppAnalyticsLinkIdentifier third_party_app_analytics = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Data partner link. - DataPartnerLinkIdentifier data_partner = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Google Ads link. - GoogleAdsLinkIdentifier google_ads = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} - -// The identifiers of a Third Party App Analytics Link. -message ThirdPartyAppAnalyticsLinkIdentifier { - // Immutable. The ID of the app analytics provider. - // This field should not be empty when creating a new third - // party app analytics link. It is unable to be modified after the creation of - // the link. - google.protobuf.Int64Value app_analytics_provider_id = 1 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A string that uniquely identifies a mobile application from which the data - // was collected to the Google Ads API. For iOS, the ID string is the 9 digit - // string that appears at the end of an App Store URL (e.g., "422689480" for - // "Gmail" whose App Store link is - // https://apps.apple.com/us/app/gmail-email-by-google/id422689480). For - // Android, the ID string is the application's package name (e.g., - // "com.google.android.gm" for "Gmail" given Google Play link - // https://play.google.com/store/apps/details?id=com.google.android.gm) - // This field should not be empty when creating a new third - // party app analytics link. It is unable to be modified after the creation of - // the link. - google.protobuf.StringValue app_id = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The vendor of the app. - // This field should not be empty when creating a new third - // party app analytics link. It is unable to be modified after the creation of - // the link. - google.ads.googleads.v5.enums.MobileAppVendorEnum.MobileAppVendor app_vendor = 3 [(google.api.field_behavior) = IMMUTABLE]; -} - -// The identifier for Data Partner account. -message DataPartnerLinkIdentifier { - // Immutable. The customer ID of the Data partner account. - // This field is required and should not be empty when creating a new - // data partner link. It is unable to be modified after the creation of - // the link. - optional int64 data_partner_id = 1 [(google.api.field_behavior) = IMMUTABLE]; -} - -// The identifier for Google Ads account. -message GoogleAdsLinkIdentifier { - // Immutable. The resource name of the Google Ads account. - // This field is required and should not be empty when creating a new - // Google Ads link. It is unable to be modified after the creation of - // the link. - optional string customer = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/ad.proto b/google/ads/googleads/v5/resources/ad.proto deleted file mode 100644 index a2ea92300..000000000 --- a/google/ads/googleads/v5/resources/ad.proto +++ /dev/null @@ -1,185 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/ad_type_infos.proto"; -import "google/ads/googleads/v5/common/custom_parameter.proto"; -import "google/ads/googleads/v5/common/final_app_url.proto"; -import "google/ads/googleads/v5/common/url_collection.proto"; -import "google/ads/googleads/v5/enums/ad_type.proto"; -import "google/ads/googleads/v5/enums/device.proto"; -import "google/ads/googleads/v5/enums/system_managed_entity_source.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad type. - -// An ad. -message Ad { - option (google.api.resource) = { - type: "googleads.googleapis.com/Ad" - pattern: "customers/{customer}/ads/{ad}" - }; - - // Immutable. The resource name of the ad. - // Ad resource names have the form: - // - // `customers/{customer_id}/ads/{ad_id}` - string resource_name = 37 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Ad" - } - ]; - - // Output only. The ID of the ad. - optional int64 id = 40 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The list of possible final URLs after all cross-domain redirects for the - // ad. - repeated string final_urls = 41; - - // A list of final app URLs that will be used on mobile if the user has the - // specific app installed. - repeated google.ads.googleads.v5.common.FinalAppUrl final_app_urls = 35; - - // The list of possible final mobile URLs after all cross-domain redirects - // for the ad. - repeated string final_mobile_urls = 42; - - // The URL template for constructing a tracking URL. - optional string tracking_url_template = 43; - - // The suffix to use when constructing a final URL. - optional string final_url_suffix = 44; - - // The list of mappings that can be used to substitute custom parameter tags - // in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - // For mutates, please use url custom parameter operations. - repeated google.ads.googleads.v5.common.CustomParameter url_custom_parameters = 10; - - // The URL that appears in the ad description for some ad formats. - optional string display_url = 45; - - // Output only. The type of ad. - google.ads.googleads.v5.enums.AdTypeEnum.AdType type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates if this ad was automatically added by Google Ads and not by a - // user. For example, this could happen when ads are automatically created as - // suggestions for new ads based on knowledge of how existing ads are - // performing. - optional bool added_by_google_ads = 46 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The device preference for the ad. You can only specify a preference for - // mobile devices. When this preference is set the ad will be preferred over - // other ads when being displayed on a mobile device. The ad can still be - // displayed on other device types, e.g. if no other ads are available. - // If unspecified (no device preference), all devices are targeted. - // This is only supported by some ad types. - google.ads.googleads.v5.enums.DeviceEnum.Device device_preference = 20; - - // Additional URLs for the ad that are tagged with a unique identifier that - // can be referenced from other fields in the ad. - repeated google.ads.googleads.v5.common.UrlCollection url_collections = 26; - - // Immutable. The name of the ad. This is only used to be able to identify the ad. It - // does not need to be unique and does not affect the served ad. The name - // field is currently only supported for DisplayUploadAd, ImageAd, - // ShoppingComparisonListingAd and VideoAd. - optional string name = 47 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. If this ad is system managed, then this field will indicate the source. - // This field is read-only. - google.ads.googleads.v5.enums.SystemManagedResourceSourceEnum.SystemManagedResourceSource system_managed_resource_source = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Details pertinent to the ad type. Exactly one value must be set. - oneof ad_data { - // Immutable. Details pertaining to a text ad. - google.ads.googleads.v5.common.TextAdInfo text_ad = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to an expanded text ad. - google.ads.googleads.v5.common.ExpandedTextAdInfo expanded_text_ad = 7; - - // Details pertaining to a call-only ad. - google.ads.googleads.v5.common.CallOnlyAdInfo call_only_ad = 13; - - // Immutable. Details pertaining to an Expanded Dynamic Search Ad. - // This type of ad has its headline, final URLs, and display URL - // auto-generated at serving time according to domain name specific - // information provided by `dynamic_search_ads_setting` linked at the - // campaign level. - google.ads.googleads.v5.common.ExpandedDynamicSearchAdInfo expanded_dynamic_search_ad = 14 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to a hotel ad. - google.ads.googleads.v5.common.HotelAdInfo hotel_ad = 15; - - // Details pertaining to a Smart Shopping ad. - google.ads.googleads.v5.common.ShoppingSmartAdInfo shopping_smart_ad = 17; - - // Details pertaining to a Shopping product ad. - google.ads.googleads.v5.common.ShoppingProductAdInfo shopping_product_ad = 18; - - // Immutable. Details pertaining to a Gmail ad. - google.ads.googleads.v5.common.GmailAdInfo gmail_ad = 21 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Details pertaining to an Image ad. - google.ads.googleads.v5.common.ImageAdInfo image_ad = 22 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to a Video ad. - google.ads.googleads.v5.common.VideoAdInfo video_ad = 24; - - // Details pertaining to a Video responsive ad. - google.ads.googleads.v5.common.VideoResponsiveAdInfo video_responsive_ad = 39; - - // Details pertaining to a responsive search ad. - google.ads.googleads.v5.common.ResponsiveSearchAdInfo responsive_search_ad = 25; - - // Details pertaining to a legacy responsive display ad. - google.ads.googleads.v5.common.LegacyResponsiveDisplayAdInfo legacy_responsive_display_ad = 28; - - // Details pertaining to an app ad. - google.ads.googleads.v5.common.AppAdInfo app_ad = 29; - - // Immutable. Details pertaining to a legacy app install ad. - google.ads.googleads.v5.common.LegacyAppInstallAdInfo legacy_app_install_ad = 30 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to a responsive display ad. - google.ads.googleads.v5.common.ResponsiveDisplayAdInfo responsive_display_ad = 31; - - // Details pertaining to a local ad. - google.ads.googleads.v5.common.LocalAdInfo local_ad = 32; - - // Details pertaining to a display upload ad. - google.ads.googleads.v5.common.DisplayUploadAdInfo display_upload_ad = 33; - - // Details pertaining to an app engagement ad. - google.ads.googleads.v5.common.AppEngagementAdInfo app_engagement_ad = 34; - - // Details pertaining to a Shopping Comparison Listing ad. - google.ads.googleads.v5.common.ShoppingComparisonListingAdInfo shopping_comparison_listing_ad = 36; - } -} diff --git a/google/ads/googleads/v5/resources/ad_group.proto b/google/ads/googleads/v5/resources/ad_group.proto deleted file mode 100644 index b61e3e01c..000000000 --- a/google/ads/googleads/v5/resources/ad_group.proto +++ /dev/null @@ -1,176 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/custom_parameter.proto"; -import "google/ads/googleads/v5/common/explorer_auto_optimizer_setting.proto"; -import "google/ads/googleads/v5/common/targeting_setting.proto"; -import "google/ads/googleads/v5/enums/ad_group_ad_rotation_mode.proto"; -import "google/ads/googleads/v5/enums/ad_group_status.proto"; -import "google/ads/googleads/v5/enums/ad_group_type.proto"; -import "google/ads/googleads/v5/enums/bidding_source.proto"; -import "google/ads/googleads/v5/enums/targeting_dimension.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad group resource. - -// An ad group. -message AdGroup { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroup" - pattern: "customers/{customer}/adGroups/{ad_group}" - }; - - // Immutable. The resource name of the ad group. - // Ad group resource names have the form: - // - // `customers/{customer_id}/adGroups/{ad_group_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. The ID of the ad group. - optional int64 id = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the ad group. - // - // This field is required and should not be empty when creating new ad - // groups. - // - // It must contain fewer than 255 UTF-8 full-width characters. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - optional string name = 35; - - // The status of the ad group. - google.ads.googleads.v5.enums.AdGroupStatusEnum.AdGroupStatus status = 5; - - // Immutable. The type of the ad group. - google.ads.googleads.v5.enums.AdGroupTypeEnum.AdGroupType type = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // The ad rotation mode of the ad group. - google.ads.googleads.v5.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; - - // Output only. For draft or experiment ad groups, this field is the resource name of the - // base ad group from which this ad group was created. If a draft or - // experiment ad group does not have a base ad group, then this field is null. - // - // For base ad groups, this field equals the ad group resource name. - // - // This field is read-only. - optional string base_ad_group = 36 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // The URL template for constructing a tracking URL. - optional string tracking_url_template = 37; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v5.common.CustomParameter url_custom_parameters = 6; - - // Immutable. The campaign to which the ad group belongs. - optional string campaign = 38 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The maximum CPC (cost-per-click) bid. - optional int64 cpc_bid_micros = 39; - - // The maximum CPM (cost-per-thousand viewable impressions) bid. - optional int64 cpm_bid_micros = 40; - - // The target CPA (cost-per-acquisition). - optional int64 target_cpa_micros = 41; - - // Output only. The CPV (cost-per-view) bid. - optional int64 cpv_bid_micros = 42 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Average amount in micros that the advertiser is willing to pay for every - // thousand times the ad is shown. - optional int64 target_cpm_micros = 43; - - // The target ROAS (return-on-ad-spend) override. If the ad group's campaign - // bidding strategy is a standard Target ROAS strategy, then this field - // overrides the target ROAS specified in the campaign's bidding strategy. - // Otherwise, this value is ignored. - optional double target_roas = 44; - - // The percent cpc bid amount, expressed as a fraction of the advertised price - // for some good or service. The valid range for the fraction is [0,1) and the - // value stored here is 1,000,000 * [fraction]. - optional int64 percent_cpc_bid_micros = 45; - - // Settings for the Display Campaign Optimizer, initially termed "Explorer". - google.ads.googleads.v5.common.ExplorerAutoOptimizerSetting explorer_auto_optimizer_setting = 21; - - // Allows advertisers to specify a targeting dimension on which to place - // absolute bids. This is only applicable for campaigns that target only the - // display network and not search. - google.ads.googleads.v5.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; - - // URL template for appending params to Final URL. - optional string final_url_suffix = 46; - - // Setting for targeting related features. - google.ads.googleads.v5.common.TargetingSetting targeting_setting = 25; - - // Output only. The effective target CPA (cost-per-acquisition). - // This field is read-only. - optional int64 effective_target_cpa_micros = 47 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective target CPA. - // This field is read-only. - google.ads.googleads.v5.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective target ROAS (return-on-ad-spend). - // This field is read-only. - optional double effective_target_roas = 48 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective target ROAS. - // This field is read-only. - google.ads.googleads.v5.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource names of labels attached to this ad group. - repeated string labels = 49 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupLabel" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/ad_group_ad.proto b/google/ads/googleads/v5/resources/ad_group_ad.proto deleted file mode 100644 index 929e705dc..000000000 --- a/google/ads/googleads/v5/resources/ad_group_ad.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/policy.proto"; -import "google/ads/googleads/v5/enums/ad_group_ad_status.proto"; -import "google/ads/googleads/v5/enums/ad_strength.proto"; -import "google/ads/googleads/v5/enums/policy_approval_status.proto"; -import "google/ads/googleads/v5/enums/policy_review_status.proto"; -import "google/ads/googleads/v5/resources/ad.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad group ad resource. - -// An ad group ad. -message AdGroupAd { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAd" - pattern: "customers/{customer}/adGroupAds/{ad_group_ad}" - }; - - // Immutable. The resource name of the ad. - // Ad group ad resource names have the form: - // - // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // The status of the ad. - google.ads.googleads.v5.enums.AdGroupAdStatusEnum.AdGroupAdStatus status = 3; - - // Immutable. The ad group to which the ad belongs. - optional string ad_group = 9 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Immutable. The ad. - Ad ad = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Policy information for the ad. - AdGroupAdPolicySummary policy_summary = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Overall ad strength for this ad group ad. - google.ads.googleads.v5.enums.AdStrengthEnum.AdStrength ad_strength = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Contains policy information for an ad. -message AdGroupAdPolicySummary { - // Output only. The list of policy findings for this ad. - repeated google.ads.googleads.v5.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Where in the review process this ad is. - google.ads.googleads.v5.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The overall approval status of this ad, calculated based on the status of - // its individual policy topic entries. - google.ads.googleads.v5.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/ad_group_ad_asset_view.proto b/google/ads/googleads/v5/resources/ad_group_ad_asset_view.proto deleted file mode 100644 index 5e6df2142..000000000 --- a/google/ads/googleads/v5/resources/ad_group_ad_asset_view.proto +++ /dev/null @@ -1,106 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/policy.proto"; -import "google/ads/googleads/v5/enums/asset_field_type.proto"; -import "google/ads/googleads/v5/enums/asset_performance_label.proto"; -import "google/ads/googleads/v5/enums/policy_approval_status.proto"; -import "google/ads/googleads/v5/enums/policy_review_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdAssetViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad group ad asset view resource. - -// A link between an AdGroupAd and an Asset. -// Currently we only support AdGroupAdAssetView for AppAds. -message AdGroupAdAssetView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAdAssetView" - pattern: "customers/{customer}/adGroupAdAssetViews/{ad_group_ad_asset_view}" - }; - - // Output only. The resource name of the ad group ad asset view. - // Ad group ad asset view resource names have the form (Before V4): - // - // `customers/{customer_id}/adGroupAdAssets/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}` - // - // Ad group ad asset view resource names have the form (Beginning from V4): - // - // `customers/{customer_id}/adGroupAdAssetViews/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdAssetView" - } - ]; - - // Output only. The ad group ad to which the asset is linked. - google.protobuf.StringValue ad_group_ad = 5 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // Output only. The asset which is linked to the ad group ad. - google.protobuf.StringValue asset = 6 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; - - // Output only. Role that the asset takes in the ad. - google.ads.googleads.v5.enums.AssetFieldTypeEnum.AssetFieldType field_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The status between the asset and the latest version of the ad. If true, the - // asset is linked to the latest version of the ad. If false, it means the - // link once existed but has been removed and is no longer present in the - // latest version of the ad. - optional bool enabled = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Policy information for the ad group ad asset. - AdGroupAdAssetPolicySummary policy_summary = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Performance of an asset linkage. - google.ads.googleads.v5.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel performance_label = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Contains policy information for an ad group ad asset. -message AdGroupAdAssetPolicySummary { - // Output only. The list of policy findings for the ad group ad asset. - repeated google.ads.googleads.v5.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Where in the review process this ad group ad asset is. - google.ads.googleads.v5.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The overall approval status of this ad group ad asset, calculated based on - // the status of its individual policy topic entries. - google.ads.googleads.v5.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/ad_group_ad_label.proto b/google/ads/googleads/v5/resources/ad_group_ad_label.proto deleted file mode 100644 index 8099a669e..000000000 --- a/google/ads/googleads/v5/resources/ad_group_ad_label.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdLabelProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad group ad label resource. - -// A relationship between an ad group ad and a label. -message AdGroupAdLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAdLabel" - pattern: "customers/{customer}/adGroupAdLabels/{ad_group_ad_label}" - }; - - // Immutable. The resource name of the ad group ad label. - // Ad group ad label resource names have the form: - // `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdLabel" - } - ]; - - // Immutable. The ad group ad to which the label is attached. - google.protobuf.StringValue ad_group_ad = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // Immutable. The label assigned to the ad group ad. - google.protobuf.StringValue label = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/ad_group_audience_view.proto b/google/ads/googleads/v5/resources/ad_group_audience_view.proto deleted file mode 100644 index d434df464..000000000 --- a/google/ads/googleads/v5/resources/ad_group_audience_view.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAudienceViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad group audience view resource. - -// An ad group audience view. -// Includes performance data from interests and remarketing lists for Display -// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), -// aggregated at the audience level. -message AdGroupAudienceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAudienceView" - pattern: "customers/{customer}/adGroupAudienceViews/{ad_group_audience_view}" - }; - - // Output only. The resource name of the ad group audience view. - // Ad group audience view resource names have the form: - // - // `customers/{customer_id}/adGroupAudienceViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/ad_group_bid_modifier.proto b/google/ads/googleads/v5/resources/ad_group_bid_modifier.proto deleted file mode 100644 index e48fce29d..000000000 --- a/google/ads/googleads/v5/resources/ad_group_bid_modifier.proto +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/criteria.proto"; -import "google/ads/googleads/v5/enums/bid_modifier_source.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupBidModifierProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad group bid modifier resource. - -// Represents an ad group bid modifier. -message AdGroupBidModifier { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - pattern: "customers/{customer}/adGroupBidModifiers/{ad_group_bid_modifier}" - }; - - // Immutable. The resource name of the ad group bid modifier. - // Ad group bid modifier resource names have the form: - // - // `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - } - ]; - - // Immutable. The ad group to which this criterion belongs. - optional string ad_group = 13 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. The ID of the criterion to bid modify. - // - // This field is ignored for mutates. - optional int64 criterion_id = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bid when the criterion matches. The modifier must be - // in the range: 0.1 - 10.0. The range is 1.0 - 6.0 for PreferredContent. - // Use 0 to opt out of a Device type. - optional double bid_modifier = 15; - - // Output only. The base ad group from which this draft/trial adgroup bid modifier was - // created. If ad_group is a base ad group then this field will be equal to - // ad_group. If the ad group was created in the draft or trial and has no - // corresponding base ad group, then this field will be null. - // This field is readonly. - optional string base_ad_group = 16 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Bid modifier source. - google.ads.googleads.v5.enums.BidModifierSourceEnum.BidModifierSource bid_modifier_source = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The criterion of this ad group bid modifier. - // - // Required in create operations starting in V5. - oneof criterion { - // Immutable. Criterion for hotel date selection (default dates vs. user selected). - google.ads.googleads.v5.common.HotelDateSelectionTypeInfo hotel_date_selection_type = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Criterion for number of days prior to the stay the booking is being made. - google.ads.googleads.v5.common.HotelAdvanceBookingWindowInfo hotel_advance_booking_window = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Criterion for length of hotel stay in nights. - google.ads.googleads.v5.common.HotelLengthOfStayInfo hotel_length_of_stay = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Criterion for day of the week the booking is for. - google.ads.googleads.v5.common.HotelCheckInDayInfo hotel_check_in_day = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A device criterion. - google.ads.googleads.v5.common.DeviceInfo device = 11 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A preferred content criterion. - google.ads.googleads.v5.common.PreferredContentInfo preferred_content = 12 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v5/resources/ad_group_criterion.proto b/google/ads/googleads/v5/resources/ad_group_criterion.proto deleted file mode 100644 index f372d67bf..000000000 --- a/google/ads/googleads/v5/resources/ad_group_criterion.proto +++ /dev/null @@ -1,272 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/criteria.proto"; -import "google/ads/googleads/v5/common/custom_parameter.proto"; -import "google/ads/googleads/v5/enums/ad_group_criterion_approval_status.proto"; -import "google/ads/googleads/v5/enums/ad_group_criterion_status.proto"; -import "google/ads/googleads/v5/enums/bidding_source.proto"; -import "google/ads/googleads/v5/enums/criterion_system_serving_status.proto"; -import "google/ads/googleads/v5/enums/criterion_type.proto"; -import "google/ads/googleads/v5/enums/quality_score_bucket.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad group criterion resource. - -// An ad group criterion. -message AdGroupCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupCriterion" - pattern: "customers/{customer}/adGroupCriteria/{ad_group_criterion}" - }; - - // A container for ad group criterion quality information. - message QualityInfo { - // Output only. The quality score. - // - // This field may not be populated if Google does not have enough - // information to determine a value. - optional int32 quality_score = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The performance of the ad compared to other advertisers. - google.ads.googleads.v5.enums.QualityScoreBucketEnum.QualityScoreBucket creative_quality_score = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The quality score of the landing page. - google.ads.googleads.v5.enums.QualityScoreBucketEnum.QualityScoreBucket post_click_quality_score = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The click-through rate compared to that of other advertisers. - google.ads.googleads.v5.enums.QualityScoreBucketEnum.QualityScoreBucket search_predicted_ctr = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Estimates for criterion bids at various positions. - message PositionEstimates { - // Output only. The estimate of the CPC bid required for ad to be shown on first - // page of search results. - optional int64 first_page_cpc_micros = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimate of the CPC bid required for ad to be displayed in first - // position, at the top of the first page of search results. - optional int64 first_position_cpc_micros = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimate of the CPC bid required for ad to be displayed at the top - // of the first page of search results. - optional int64 top_of_page_cpc_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimate of how many clicks per week you might get by changing your - // keyword bid to the value in first_position_cpc_micros. - optional int64 estimated_add_clicks_at_first_position_cpc = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimate of how your cost per week might change when changing your - // keyword bid to the value in first_position_cpc_micros. - optional int64 estimated_add_cost_at_first_position_cpc = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the ad group criterion. - // Ad group criterion resource names have the form: - // - // `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Output only. The ID of the criterion. - // - // This field is ignored for mutates. - optional int64 criterion_id = 56 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the criterion. - // - // This is the status of the ad group criterion entity, set by the client. - // Note: UI reports may incorporate additional information that affects - // whether a criterion is eligible to run. In some cases a criterion that's - // REMOVED in the API can still show as enabled in the UI. - // For example, campaigns by default show to users of all age ranges unless - // excluded. The UI will show each age range as "enabled", since they're - // eligible to see the ads; but AdGroupCriterion.status will show "removed", - // since no positive criterion was added. - google.ads.googleads.v5.enums.AdGroupCriterionStatusEnum.AdGroupCriterionStatus status = 3; - - // Output only. Information regarding the quality of the criterion. - QualityInfo quality_info = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The ad group to which the criterion belongs. - optional string ad_group = 57 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. The type of the criterion. - google.ads.googleads.v5.enums.CriterionTypeEnum.CriterionType type = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Whether to target (`false`) or exclude (`true`) the criterion. - // - // This field is immutable. To switch a criterion from positive to negative, - // remove then re-add it. - optional bool negative = 58 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Serving status of the criterion. - google.ads.googleads.v5.enums.CriterionSystemServingStatusEnum.CriterionSystemServingStatus system_serving_status = 52 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Approval status of the criterion. - google.ads.googleads.v5.enums.AdGroupCriterionApprovalStatusEnum.AdGroupCriterionApprovalStatus approval_status = 53 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of disapproval reasons of the criterion. - // - // The different reasons for disapproving a criterion can be found here: - // https://support.google.com/adspolicy/answer/6008942 - // - // This field is read-only. - repeated string disapproval_reasons = 59 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bid when the criterion matches. The modifier must be - // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. - optional double bid_modifier = 61; - - // The CPC (cost-per-click) bid. - optional int64 cpc_bid_micros = 62; - - // The CPM (cost-per-thousand viewable impressions) bid. - optional int64 cpm_bid_micros = 63; - - // The CPV (cost-per-view) bid. - optional int64 cpv_bid_micros = 64; - - // The CPC bid amount, expressed as a fraction of the advertised price - // for some good or service. The valid range for the fraction is [0,1) and the - // value stored here is 1,000,000 * [fraction]. - optional int64 percent_cpc_bid_micros = 65; - - // Output only. The effective CPC (cost-per-click) bid. - optional int64 effective_cpc_bid_micros = 66 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective CPM (cost-per-thousand viewable impressions) bid. - optional int64 effective_cpm_bid_micros = 67 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective CPV (cost-per-view) bid. - optional int64 effective_cpv_bid_micros = 68 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective Percent CPC bid amount. - optional int64 effective_percent_cpc_bid_micros = 69 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective CPC bid. - google.ads.googleads.v5.enums.BiddingSourceEnum.BiddingSource effective_cpc_bid_source = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective CPM bid. - google.ads.googleads.v5.enums.BiddingSourceEnum.BiddingSource effective_cpm_bid_source = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective CPV bid. - google.ads.googleads.v5.enums.BiddingSourceEnum.BiddingSource effective_cpv_bid_source = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective Percent CPC bid. - google.ads.googleads.v5.enums.BiddingSourceEnum.BiddingSource effective_percent_cpc_bid_source = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimates for criterion bids at various positions. - PositionEstimates position_estimates = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The list of possible final URLs after all cross-domain redirects for the - // ad. - repeated string final_urls = 70; - - // The list of possible final mobile URLs after all cross-domain redirects. - repeated string final_mobile_urls = 71; - - // URL template for appending params to final URL. - optional string final_url_suffix = 72; - - // The URL template for constructing a tracking URL. - optional string tracking_url_template = 73; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v5.common.CustomParameter url_custom_parameters = 14; - - // The ad group criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. Keyword. - google.ads.googleads.v5.common.KeywordInfo keyword = 27 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v5.common.PlacementInfo placement = 28 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile app category. - google.ads.googleads.v5.common.MobileAppCategoryInfo mobile_app_category = 29 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile application. - google.ads.googleads.v5.common.MobileApplicationInfo mobile_application = 30 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Listing group. - google.ads.googleads.v5.common.ListingGroupInfo listing_group = 32 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Age range. - google.ads.googleads.v5.common.AgeRangeInfo age_range = 36 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Gender. - google.ads.googleads.v5.common.GenderInfo gender = 37 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Income range. - google.ads.googleads.v5.common.IncomeRangeInfo income_range = 38 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Parental status. - google.ads.googleads.v5.common.ParentalStatusInfo parental_status = 39 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User List. - google.ads.googleads.v5.common.UserListInfo user_list = 42 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v5.common.YouTubeVideoInfo youtube_video = 40 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v5.common.YouTubeChannelInfo youtube_channel = 41 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Topic. - google.ads.googleads.v5.common.TopicInfo topic = 43 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User Interest. - google.ads.googleads.v5.common.UserInterestInfo user_interest = 45 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Webpage - google.ads.googleads.v5.common.WebpageInfo webpage = 46 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. App Payment Model. - google.ads.googleads.v5.common.AppPaymentModelInfo app_payment_model = 47 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Affinity. - google.ads.googleads.v5.common.CustomAffinityInfo custom_affinity = 48 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Intent. - google.ads.googleads.v5.common.CustomIntentInfo custom_intent = 49 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v5/resources/ad_group_criterion_label.proto b/google/ads/googleads/v5/resources/ad_group_criterion_label.proto deleted file mode 100644 index 730509fcf..000000000 --- a/google/ads/googleads/v5/resources/ad_group_criterion_label.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionLabelProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad group criterion label resource. - -// A relationship between an ad group criterion and a label. -message AdGroupCriterionLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupCriterionLabel" - pattern: "customers/{customer}/adGroupCriterionLabels/{ad_group_criterion_label}" - }; - - // Immutable. The resource name of the ad group criterion label. - // Ad group criterion label resource names have the form: - // `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionLabel" - } - ]; - - // Immutable. The ad group criterion to which the label is attached. - google.protobuf.StringValue ad_group_criterion = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Immutable. The label assigned to the ad group criterion. - google.protobuf.StringValue label = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/ad_group_criterion_simulation.proto b/google/ads/googleads/v5/resources/ad_group_criterion_simulation.proto deleted file mode 100644 index 5c369e041..000000000 --- a/google/ads/googleads/v5/resources/ad_group_criterion_simulation.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/simulation.proto"; -import "google/ads/googleads/v5/enums/simulation_modification_method.proto"; -import "google/ads/googleads/v5/enums/simulation_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionSimulationProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad group criterion simulation resource. - -// An ad group criterion simulation. Supported combinations of advertising -// channel type, criterion type, simulation type, and simulation modification -// method are detailed below respectively. Hotel AdGroupCriterion simulation -// operations starting in V5. -// -// 1. DISPLAY - KEYWORD - CPC_BID - UNIFORM -// 2. SEARCH - KEYWORD - CPC_BID - UNIFORM -// 3. SHOPPING - LISTING_GROUP - CPC_BID - UNIFORM -// 4. HOTEL - LISTING_GROUP - CPC_BID - UNIFORM -// 5. HOTEL - LISTING_GROUP - PERCENT_CPC_BID - UNIFORM -message AdGroupCriterionSimulation { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupCriterionSimulation" - pattern: "customers/{customer}/adGroupCriterionSimulations/{ad_group_criterion_simulation}" - }; - - // Output only. The resource name of the ad group criterion simulation. - // Ad group criterion simulation resource names have the form: - // - // `customers/{customer_id}/adGroupCriterionSimulations/{ad_group_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionSimulation" - } - ]; - - // Output only. AdGroup ID of the simulation. - optional int64 ad_group_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Criterion ID of the simulation. - optional int64 criterion_id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The field that the simulation modifies. - google.ads.googleads.v5.enums.SimulationTypeEnum.SimulationType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. How the simulation modifies the field. - google.ads.googleads.v5.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. First day on which the simulation is based, in YYYY-MM-DD format. - optional string start_date = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Last day on which the simulation is based, in YYYY-MM-DD format. - optional string end_date = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // List of simulation points. - oneof point_list { - // Output only. Simulation points if the simulation type is CPC_BID. - google.ads.googleads.v5.common.CpcBidSimulationPointList cpc_bid_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Simulation points if the simulation type is PERCENT_CPC_BID. - google.ads.googleads.v5.common.PercentCpcBidSimulationPointList percent_cpc_bid_point_list = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v5/resources/ad_group_extension_setting.proto b/google/ads/googleads/v5/resources/ad_group_extension_setting.proto deleted file mode 100644 index 8c406e005..000000000 --- a/google/ads/googleads/v5/resources/ad_group_extension_setting.proto +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/extension_setting_device.proto"; -import "google/ads/googleads/v5/enums/extension_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupExtensionSettingProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the AdGroupExtensionSetting resource. - -// An ad group extension setting. -message AdGroupExtensionSetting { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupExtensionSetting" - pattern: "customers/{customer}/adGroupExtensionSettings/{ad_group_extension_setting}" - }; - - // Immutable. The resource name of the ad group extension setting. - // AdGroupExtensionSetting resource names have the form: - // - // `customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupExtensionSetting" - } - ]; - - // Immutable. The extension type of the ad group extension setting. - google.ads.googleads.v5.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The resource name of the ad group. The linked extension feed items will - // serve under this ad group. - // AdGroup resource names have the form: - // - // `customers/{customer_id}/adGroups/{ad_group_id}` - google.protobuf.StringValue ad_group = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // The resource names of the extension feed items to serve under the ad group. - // ExtensionFeedItem resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - repeated google.protobuf.StringValue extension_feed_items = 4 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - }]; - - // The device for which the extensions will serve. Optional. - google.ads.googleads.v5.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; -} diff --git a/google/ads/googleads/v5/resources/ad_group_feed.proto b/google/ads/googleads/v5/resources/ad_group_feed.proto deleted file mode 100644 index af2b8491c..000000000 --- a/google/ads/googleads/v5/resources/ad_group_feed.proto +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/matching_function.proto"; -import "google/ads/googleads/v5/enums/feed_link_status.proto"; -import "google/ads/googleads/v5/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupFeedProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the AdGroupFeed resource. - -// An ad group feed. -message AdGroupFeed { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupFeed" - pattern: "customers/{customer}/adGroupFeeds/{ad_group_feed}" - }; - - // Immutable. The resource name of the ad group feed. - // Ad group feed resource names have the form: - // - // `customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id} - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupFeed" - } - ]; - - // Immutable. The feed being linked to the ad group. - google.protobuf.StringValue feed = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Immutable. The ad group being linked to the feed. - google.protobuf.StringValue ad_group = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Indicates which placeholder types the feed may populate under the connected - // ad group. Required. - repeated google.ads.googleads.v5.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; - - // Matching function associated with the AdGroupFeed. - // The matching function is used to filter the set of feed items selected. - // Required. - google.ads.googleads.v5.common.MatchingFunction matching_function = 5; - - // Output only. Status of the ad group feed. - // This field is read-only. - google.ads.googleads.v5.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/ad_group_label.proto b/google/ads/googleads/v5/resources/ad_group_label.proto deleted file mode 100644 index 19166e075..000000000 --- a/google/ads/googleads/v5/resources/ad_group_label.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupLabelProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad group label resource. - -// A relationship between an ad group and a label. -message AdGroupLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupLabel" - pattern: "customers/{customer}/adGroupLabels/{ad_group_label}" - }; - - // Immutable. The resource name of the ad group label. - // Ad group label resource names have the form: - // `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupLabel" - } - ]; - - // Immutable. The ad group to which the label is attached. - google.protobuf.StringValue ad_group = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Immutable. The label assigned to the ad group. - google.protobuf.StringValue label = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/ad_group_simulation.proto b/google/ads/googleads/v5/resources/ad_group_simulation.proto deleted file mode 100644 index bdf9efcbb..000000000 --- a/google/ads/googleads/v5/resources/ad_group_simulation.proto +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/simulation.proto"; -import "google/ads/googleads/v5/enums/simulation_modification_method.proto"; -import "google/ads/googleads/v5/enums/simulation_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupSimulationProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad group simulation resource. - -// An ad group simulation. Supported combinations of advertising -// channel type, simulation type and simulation modification method is -// detailed below respectively. -// -// 1. SEARCH - CPC_BID - DEFAULT -// 2. SEARCH - CPC_BID - UNIFORM -// 3. SEARCH - TARGET_CPA - UNIFORM -// 4. SEARCH - TARGET_ROAS - UNIFORM -// 5. DISPLAY - CPC_BID - DEFAULT -// 6. DISPLAY - CPC_BID - UNIFORM -// 7. DISPLAY - TARGET_CPA - UNIFORM -// 8. VIDEO - CPV_BID - DEFAULT -// 9. VIDEO - CPV_BID - UNIFORM -message AdGroupSimulation { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupSimulation" - pattern: "customers/{customer}/adGroupSimulations/{ad_group_simulation}" - }; - - // Output only. The resource name of the ad group simulation. - // Ad group simulation resource names have the form: - // - // `customers/{customer_id}/adGroupSimulations/{ad_group_id}~{type}~{modification_method}~{start_date}~{end_date}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupSimulation" - } - ]; - - // Output only. Ad group id of the simulation. - optional int64 ad_group_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The field that the simulation modifies. - google.ads.googleads.v5.enums.SimulationTypeEnum.SimulationType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. How the simulation modifies the field. - google.ads.googleads.v5.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. First day on which the simulation is based, in YYYY-MM-DD format. - optional string start_date = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Last day on which the simulation is based, in YYYY-MM-DD format - optional string end_date = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // List of simulation points. - oneof point_list { - // Output only. Simulation points if the simulation type is CPC_BID. - google.ads.googleads.v5.common.CpcBidSimulationPointList cpc_bid_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Simulation points if the simulation type is CPV_BID. - google.ads.googleads.v5.common.CpvBidSimulationPointList cpv_bid_point_list = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Simulation points if the simulation type is TARGET_CPA. - google.ads.googleads.v5.common.TargetCpaSimulationPointList target_cpa_point_list = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Simulation points if the simulation type is TARGET_ROAS. - google.ads.googleads.v5.common.TargetRoasSimulationPointList target_roas_point_list = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v5/resources/ad_parameter.proto b/google/ads/googleads/v5/resources/ad_parameter.proto deleted file mode 100644 index 4f21c50ff..000000000 --- a/google/ads/googleads/v5/resources/ad_parameter.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdParameterProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad parameter resource. - -// An ad parameter that is used to update numeric values (such as prices or -// inventory levels) in any text line of an ad (including URLs). There can -// be a maximum of two AdParameters per ad group criterion. (One with -// parameter_index = 1 and one with parameter_index = 2.) -// In the ad the parameters are referenced by a placeholder of the form -// "{param#:value}". E.g. "{param1:$17}" -message AdParameter { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdParameter" - pattern: "customers/{customer}/adParameters/{ad_parameter}" - }; - - // Immutable. The resource name of the ad parameter. - // Ad parameter resource names have the form: - // - // `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdParameter" - } - ]; - - // Immutable. The ad group criterion that this ad parameter belongs to. - optional string ad_group_criterion = 5 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Immutable. The unique index of this ad parameter. Must be either 1 or 2. - optional int64 parameter_index = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Numeric value to insert into the ad text. The following restrictions - // apply: - // - Can use comma or period as a separator, with an optional period or - // comma (respectively) for fractional values. For example, 1,000,000.00 - // and 2.000.000,10 are valid. - // - Can be prepended or appended with a currency symbol. For example, - // $99.99 is valid. - // - Can be prepended or appended with a currency code. For example, 99.99USD - // and EUR200 are valid. - // - Can use '%'. For example, 1.0% and 1,0% are valid. - // - Can use plus or minus. For example, -10.99 and 25+ are valid. - // - Can use '/' between two numbers. For example 4/1 and 0.95/0.45 are - // valid. - optional string insertion_text = 7; -} diff --git a/google/ads/googleads/v5/resources/ad_schedule_view.proto b/google/ads/googleads/v5/resources/ad_schedule_view.proto deleted file mode 100644 index 56052e1f9..000000000 --- a/google/ads/googleads/v5/resources/ad_schedule_view.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdScheduleViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ad schedule view resource. - -// An ad schedule view summarizes the performance of campaigns by -// AdSchedule criteria. -message AdScheduleView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdScheduleView" - pattern: "customers/{customer}/adScheduleViews/{ad_schedule_view}" - }; - - // Output only. The resource name of the ad schedule view. - // AdSchedule view resource names have the form: - // - // `customers/{customer_id}/adScheduleViews/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdScheduleView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/age_range_view.proto b/google/ads/googleads/v5/resources/age_range_view.proto deleted file mode 100644 index 5035ae72e..000000000 --- a/google/ads/googleads/v5/resources/age_range_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AgeRangeViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the age range view resource. - -// An age range view. -message AgeRangeView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AgeRangeView" - pattern: "customers/{customer}/ageRangeViews/{age_range_view}" - }; - - // Output only. The resource name of the age range view. - // Age range view resource names have the form: - // - // `customers/{customer_id}/ageRangeViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AgeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/asset.proto b/google/ads/googleads/v5/resources/asset.proto deleted file mode 100644 index fae2e776f..000000000 --- a/google/ads/googleads/v5/resources/asset.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/asset_types.proto"; -import "google/ads/googleads/v5/enums/asset_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AssetProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the asset resource. - -// Asset is a part of an ad which can be shared across multiple ads. -// It can be an image (ImageAsset), a video (YoutubeVideoAsset), etc. -message Asset { - option (google.api.resource) = { - type: "googleads.googleapis.com/Asset" - pattern: "customers/{customer}/assets/{asset}" - }; - - // Immutable. The resource name of the asset. - // Asset resource names have the form: - // - // `customers/{customer_id}/assets/{asset_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; - - // Output only. The ID of the asset. - optional int64 id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional name of the asset. - optional string name = 12; - - // Output only. Type of the asset. - google.ads.googleads.v5.enums.AssetTypeEnum.AssetType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The specific type of the asset. - oneof asset_data { - // Immutable. A YouTube video asset. - google.ads.googleads.v5.common.YoutubeVideoAsset youtube_video_asset = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A media bundle asset. - google.ads.googleads.v5.common.MediaBundleAsset media_bundle_asset = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. An image asset. - google.ads.googleads.v5.common.ImageAsset image_asset = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A text asset. - google.ads.googleads.v5.common.TextAsset text_asset = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // A book on google asset. - google.ads.googleads.v5.common.BookOnGoogleAsset book_on_google_asset = 10; - } -} diff --git a/google/ads/googleads/v5/resources/batch_job.proto b/google/ads/googleads/v5/resources/batch_job.proto deleted file mode 100644 index a9522df9a..000000000 --- a/google/ads/googleads/v5/resources/batch_job.proto +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/batch_job_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the batch job resource. - -// A list of mutates being processed asynchronously. The mutates are uploaded -// by the user. The mutates themselves aren't readable and the results of the -// job can only be read using BatchJobService.ListBatchJobResults. -message BatchJob { - option (google.api.resource) = { - type: "googleads.googleapis.com/BatchJob" - pattern: "customers/{customer}/batchJobs/{batch_job}" - }; - - // Additional information about the batch job. This message is also used as - // metadata returned in batch job Long Running Operations. - message BatchJobMetadata { - // Output only. The time when this batch job was created. - // Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:00" - google.protobuf.StringValue creation_date_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The time when this batch job started running. - // Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:30" - optional string start_date_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The time when this batch job was completed. - // Formatted as yyyy-MM-dd HH:mm:ss. Example: "2018-03-05 09:16:00" - google.protobuf.StringValue completion_date_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The fraction (between 0.0 and 1.0) of mutates that have been processed. - // This is empty if the job hasn't started running yet. - google.protobuf.DoubleValue estimated_completion_ratio = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of mutate operations in the batch job. - google.protobuf.Int64Value operation_count = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of mutate operations executed by the batch job. - // Present only if the job has started running. - google.protobuf.Int64Value executed_operation_count = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the batch job. - // Batch job resource names have the form: - // - // `customers/{customer_id}/batchJobs/{batch_job_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; - - // Output only. ID of this batch job. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The next sequence token to use when adding operations. Only set when the - // batch job status is PENDING. - google.protobuf.StringValue next_add_sequence_token = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Contains additional information about this batch job. - BatchJobMetadata metadata = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Status of this batch job. - google.ads.googleads.v5.enums.BatchJobStatusEnum.BatchJobStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the long-running operation that can be used to poll - // for completion. Only set when the batch job status is RUNNING or DONE. - google.protobuf.StringValue long_running_operation = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/bidding_strategy.proto b/google/ads/googleads/v5/resources/bidding_strategy.proto deleted file mode 100644 index e3cbdc783..000000000 --- a/google/ads/googleads/v5/resources/bidding_strategy.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/bidding.proto"; -import "google/ads/googleads/v5/enums/bidding_strategy_status.proto"; -import "google/ads/googleads/v5/enums/bidding_strategy_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the BiddingStrategy resource - -// A bidding strategy. -message BiddingStrategy { - option (google.api.resource) = { - type: "googleads.googleapis.com/BiddingStrategy" - pattern: "customers/{customer}/biddingStrategies/{bidding_strategy}" - }; - - // Immutable. The resource name of the bidding strategy. - // Bidding strategy resource names have the form: - // - // `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BiddingStrategy" - } - ]; - - // Output only. The ID of the bidding strategy. - optional int64 id = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the bidding strategy. - // All bidding strategies within an account must be named distinctly. - // - // The length of this string should be between 1 and 255, inclusive, - // in UTF-8 bytes, (trimmed). - optional string name = 17; - - // Output only. The status of the bidding strategy. - // - // This field is read-only. - google.ads.googleads.v5.enums.BiddingStrategyStatusEnum.BiddingStrategyStatus status = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of the bidding strategy. - // Create a bidding strategy by setting the bidding scheme. - // - // This field is read-only. - google.ads.googleads.v5.enums.BiddingStrategyTypeEnum.BiddingStrategyType type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The currency used by the bidding strategy (ISO 4217 three-letter code). - // - // For bidding strategies in manager customers, this is the currency set by - // the advertiser when creating the strategy. For serving customers, this is - // the customer's currency_code. - // - // Bidding strategy metrics are reported in this currency. - // - // This field is read-only. - optional string effective_currency_code = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of campaigns attached to this bidding strategy. - // - // This field is read-only. - optional int64 campaign_count = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of non-removed campaigns attached to this bidding strategy. - // - // This field is read-only. - optional int64 non_removed_campaign_count = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The bidding scheme. - // - // Only one can be set. - oneof scheme { - // A bidding strategy that raises bids for clicks that seem more likely to - // lead to a conversion and lowers them for clicks where they seem less - // likely. - google.ads.googleads.v5.common.EnhancedCpc enhanced_cpc = 7; - - // A bidding strategy that sets bids to help get as many conversions as - // possible at the target cost-per-acquisition (CPA) you set. - google.ads.googleads.v5.common.TargetCpa target_cpa = 9; - - // A bidding strategy that automatically optimizes towards a desired - // percentage of impressions. - google.ads.googleads.v5.common.TargetImpressionShare target_impression_share = 48; - - // A bidding strategy that helps you maximize revenue while averaging a - // specific target Return On Ad Spend (ROAS). - google.ads.googleads.v5.common.TargetRoas target_roas = 11; - - // A bid strategy that sets your bids to help get as many clicks as - // possible within your budget. - google.ads.googleads.v5.common.TargetSpend target_spend = 12; - } -} diff --git a/google/ads/googleads/v5/resources/billing_setup.proto b/google/ads/googleads/v5/resources/billing_setup.proto deleted file mode 100644 index 9773d1df9..000000000 --- a/google/ads/googleads/v5/resources/billing_setup.proto +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/billing_setup_status.proto"; -import "google/ads/googleads/v5/enums/time_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the BillingSetup resource. - -// A billing setup, which associates a payments account and an advertiser. A -// billing setup is specific to one advertiser. -message BillingSetup { - option (google.api.resource) = { - type: "googleads.googleapis.com/BillingSetup" - pattern: "customers/{customer}/billingSetups/{billing_setup}" - }; - - // Container of payments account information for this billing. - message PaymentsAccountInfo { - // Output only. A 16 digit id used to identify the payments account associated with the - // billing setup. - // - // This must be passed as a string with dashes, e.g. "1234-5678-9012-3456". - google.protobuf.StringValue payments_account_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The name of the payments account associated with the billing setup. - // - // This enables the user to specify a meaningful name for a payments account - // to aid in reconciling monthly invoices. - // - // This name will be printed in the monthly invoices. - google.protobuf.StringValue payments_account_name = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A 12 digit id used to identify the payments profile associated with the - // billing setup. - // - // This must be passed in as a string with dashes, e.g. "1234-5678-9012". - google.protobuf.StringValue payments_profile_id = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The name of the payments profile associated with the billing setup. - google.protobuf.StringValue payments_profile_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A secondary payments profile id present in uncommon situations, e.g. - // when a sequential liability agreement has been arranged. - google.protobuf.StringValue secondary_payments_profile_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the billing setup. - // BillingSetup resource names have the form: - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; - - // Output only. The ID of the billing setup. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The status of the billing setup. - google.ads.googleads.v5.enums.BillingSetupStatusEnum.BillingSetupStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The resource name of the payments account associated with this billing - // setup. Payments resource names have the form: - // - // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` - // When setting up billing, this is used to signup with an existing payments - // account (and then payments_account_info should not be set). - // When getting a billing setup, this and payments_account_info will be - // populated. - google.protobuf.StringValue payments_account = 11 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaymentsAccount" - } - ]; - - // Immutable. The payments account information associated with this billing setup. - // When setting up billing, this is used to signup with a new payments account - // (and then payments_account should not be set). - // When getting a billing setup, this and payments_account will be - // populated. - PaymentsAccountInfo payments_account_info = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // When creating a new billing setup, this is when the setup should take - // effect. NOW is the only acceptable start time if the customer doesn't have - // any approved setups. - // - // When fetching an existing billing setup, this is the requested start time. - // However, if the setup was approved (see status) after the requested start - // time, then this is the approval time. - oneof start_time { - // Immutable. The start date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. Only a - // future time is allowed. - google.protobuf.StringValue start_date_time = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The start time as a type. Only NOW is allowed. - google.ads.googleads.v5.enums.TimeTypeEnum.TimeType start_time_type = 10 [(google.api.field_behavior) = IMMUTABLE]; - } - - // When the billing setup ends / ended. This is either FOREVER or the start - // time of the next scheduled billing setup. - oneof end_time { - // Output only. The end date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. - google.protobuf.StringValue end_date_time = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The end time as a type. The only possible value is FOREVER. - google.ads.googleads.v5.enums.TimeTypeEnum.TimeType end_time_type = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v5/resources/campaign.proto b/google/ads/googleads/v5/resources/campaign.proto deleted file mode 100644 index 24658336f..000000000 --- a/google/ads/googleads/v5/resources/campaign.proto +++ /dev/null @@ -1,419 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/bidding.proto"; -import "google/ads/googleads/v5/common/custom_parameter.proto"; -import "google/ads/googleads/v5/common/frequency_cap.proto"; -import "google/ads/googleads/v5/common/real_time_bidding_setting.proto"; -import "google/ads/googleads/v5/common/targeting_setting.proto"; -import "google/ads/googleads/v5/enums/ad_serving_optimization_status.proto"; -import "google/ads/googleads/v5/enums/advertising_channel_sub_type.proto"; -import "google/ads/googleads/v5/enums/advertising_channel_type.proto"; -import "google/ads/googleads/v5/enums/app_campaign_app_store.proto"; -import "google/ads/googleads/v5/enums/app_campaign_bidding_strategy_goal_type.proto"; -import "google/ads/googleads/v5/enums/bidding_strategy_type.proto"; -import "google/ads/googleads/v5/enums/brand_safety_suitability.proto"; -import "google/ads/googleads/v5/enums/campaign_experiment_type.proto"; -import "google/ads/googleads/v5/enums/campaign_serving_status.proto"; -import "google/ads/googleads/v5/enums/campaign_status.proto"; -import "google/ads/googleads/v5/enums/location_source_type.proto"; -import "google/ads/googleads/v5/enums/negative_geo_target_type.proto"; -import "google/ads/googleads/v5/enums/optimization_goal_type.proto"; -import "google/ads/googleads/v5/enums/payment_mode.proto"; -import "google/ads/googleads/v5/enums/positive_geo_target_type.proto"; -import "google/ads/googleads/v5/enums/vanity_pharma_display_url_mode.proto"; -import "google/ads/googleads/v5/enums/vanity_pharma_text.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Campaign resource. - -// A campaign. -message Campaign { - option (google.api.resource) = { - type: "googleads.googleapis.com/Campaign" - pattern: "customers/{customer}/campaigns/{campaign}" - }; - - // The network settings for the campaign. - message NetworkSettings { - // Whether ads will be served with google.com search results. - optional bool target_google_search = 5; - - // Whether ads will be served on partner sites in the Google Search Network - // (requires `target_google_search` to also be `true`). - optional bool target_search_network = 6; - - // Whether ads will be served on specified placements in the Google Display - // Network. Placements are specified using the Placement criterion. - optional bool target_content_network = 7; - - // Whether ads will be served on the Google Partner Network. - // This is available only to some select Google partner accounts. - optional bool target_partner_search_network = 8; - } - - // Campaign-level settings for hotel ads. - message HotelSettingInfo { - // Immutable. The linked Hotel Center account. - optional int64 hotel_center_id = 2 [(google.api.field_behavior) = IMMUTABLE]; - } - - // Selective optimization setting for this campaign, which includes a set of - // conversion actions to optimize this campaign towards. - message SelectiveOptimization { - // The selected set of conversion actions for optimizing this campaign. - repeated string conversion_actions = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - }]; - } - - // The setting for controlling Dynamic Search Ads (DSA). - message DynamicSearchAdsSetting { - // Required. The Internet domain name that this setting represents, e.g., "google.com" - // or "www.google.com". - string domain_name = 6 [(google.api.field_behavior) = REQUIRED]; - - // Required. The language code specifying the language of the domain, e.g., "en". - string language_code = 7 [(google.api.field_behavior) = REQUIRED]; - - // Whether the campaign uses advertiser supplied URLs exclusively. - optional bool use_supplied_urls_only = 8; - - // The list of page feeds associated with the campaign. - repeated string feeds = 9 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - }]; - } - - // The setting for Shopping campaigns. Defines the universe of products that - // can be advertised by the campaign, and how this campaign interacts with - // other Shopping campaigns. - message ShoppingSetting { - // Immutable. ID of the Merchant Center account. - // This field is required for create operations. This field is immutable for - // Shopping campaigns. - optional int64 merchant_id = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Sales country of products to include in the campaign. - // This field is required for Shopping campaigns. This field is immutable. - // This field is optional for non-Shopping campaigns, but it must be equal - // to 'ZZ' if set. - optional string sales_country = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Priority of the campaign. Campaigns with numerically higher priorities - // take precedence over those with lower priorities. - // This field is required for Shopping campaigns, with values between 0 and - // 2, inclusive. - // This field is optional for Smart Shopping campaigns, but must be equal to - // 3 if set. - optional int32 campaign_priority = 7; - - // Whether to include local products. - optional bool enable_local = 8; - } - - // Campaign-level settings for tracking information. - message TrackingSetting { - // Output only. The url used for dynamic tracking. - optional string tracking_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Campaign setting for local campaigns. - message LocalCampaignSetting { - // The location source type for this local campaign. - google.ads.googleads.v5.enums.LocationSourceTypeEnum.LocationSourceType location_source_type = 1; - } - - // Represents a collection of settings related to ads geotargeting. - message GeoTargetTypeSetting { - // The setting used for positive geotargeting in this particular campaign. - google.ads.googleads.v5.enums.PositiveGeoTargetTypeEnum.PositiveGeoTargetType positive_geo_target_type = 1; - - // The setting used for negative geotargeting in this particular campaign. - google.ads.googleads.v5.enums.NegativeGeoTargetTypeEnum.NegativeGeoTargetType negative_geo_target_type = 2; - } - - // Optimization goal setting for this campaign, which includes a set of - // optimization goal types. - message OptimizationGoalSetting { - // The list of optimization goal types. - repeated google.ads.googleads.v5.enums.OptimizationGoalTypeEnum.OptimizationGoalType optimization_goal_types = 1; - } - - // Campaign-level settings for App Campaigns. - message AppCampaignSetting { - // Represents the goal which the bidding strategy of this app campaign - // should optimize towards. - google.ads.googleads.v5.enums.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType bidding_strategy_goal_type = 1; - - // Immutable. A string that uniquely identifies a mobile application. - optional string app_id = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The application store that distributes this specific app. - google.ads.googleads.v5.enums.AppCampaignAppStoreEnum.AppCampaignAppStore app_store = 3 [(google.api.field_behavior) = IMMUTABLE]; - } - - // Describes how unbranded pharma ads will be displayed. - message VanityPharma { - // The display mode for vanity pharma URLs. - google.ads.googleads.v5.enums.VanityPharmaDisplayUrlModeEnum.VanityPharmaDisplayUrlMode vanity_pharma_display_url_mode = 1; - - // The text that will be displayed in display URL of the text ad when - // website description is the selected display mode for vanity pharma URLs. - google.ads.googleads.v5.enums.VanityPharmaTextEnum.VanityPharmaText vanity_pharma_text = 2; - } - - // Immutable. The resource name of the campaign. - // Campaign resource names have the form: - // - // `customers/{customer_id}/campaigns/{campaign_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ID of the campaign. - optional int64 id = 59 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the campaign. - // - // This field is required and should not be empty when creating new - // campaigns. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - optional string name = 58; - - // The status of the campaign. - // - // When a new campaign is added, the status defaults to ENABLED. - google.ads.googleads.v5.enums.CampaignStatusEnum.CampaignStatus status = 5; - - // Output only. The ad serving status of the campaign. - google.ads.googleads.v5.enums.CampaignServingStatusEnum.CampaignServingStatus serving_status = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The ad serving optimization status of the campaign. - google.ads.googleads.v5.enums.AdServingOptimizationStatusEnum.AdServingOptimizationStatus ad_serving_optimization_status = 8; - - // Immutable. The primary serving target for ads within the campaign. - // The targeting options can be refined in `network_settings`. - // - // This field is required and should not be empty when creating new - // campaigns. - // - // Can be set only when creating campaigns. - // After the campaign is created, the field can not be changed. - google.ads.googleads.v5.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_type = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Optional refinement to `advertising_channel_type`. - // Must be a valid sub-type of the parent channel type. - // - // Can be set only when creating campaigns. - // After campaign is created, the field can not be changed. - google.ads.googleads.v5.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType advertising_channel_sub_type = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // The URL template for constructing a tracking URL. - optional string tracking_url_template = 60; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v5.common.CustomParameter url_custom_parameters = 12; - - // Settings for Real-Time Bidding, a feature only available for campaigns - // targeting the Ad Exchange network. - google.ads.googleads.v5.common.RealTimeBiddingSetting real_time_bidding_setting = 39; - - // The network settings for the campaign. - NetworkSettings network_settings = 14; - - // Immutable. The hotel setting for the campaign. - HotelSettingInfo hotel_setting = 32 [(google.api.field_behavior) = IMMUTABLE]; - - // The setting for controlling Dynamic Search Ads (DSA). - DynamicSearchAdsSetting dynamic_search_ads_setting = 33; - - // The setting for controlling Shopping campaigns. - ShoppingSetting shopping_setting = 36; - - // Setting for targeting related features. - google.ads.googleads.v5.common.TargetingSetting targeting_setting = 43; - - // The setting for ads geotargeting. - GeoTargetTypeSetting geo_target_type_setting = 47; - - // The setting for local campaign. - LocalCampaignSetting local_campaign_setting = 50; - - // The setting related to App Campaign. - AppCampaignSetting app_campaign_setting = 51; - - // Output only. The resource names of labels attached to this campaign. - repeated string labels = 61 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignLabel" - } - ]; - - // Output only. The type of campaign: normal, draft, or experiment. - google.ads.googleads.v5.enums.CampaignExperimentTypeEnum.CampaignExperimentType experiment_type = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the base campaign of a draft or experiment campaign. - // For base campaigns, this is equal to `resource_name`. - // - // This field is read-only. - optional string base_campaign = 56 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The budget of the campaign. - optional string campaign_budget = 62 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - }]; - - // Output only. The type of bidding strategy. - // - // A bidding strategy can be created by setting either the bidding scheme to - // create a standard bidding strategy or the `bidding_strategy` field to - // create a portfolio bidding strategy. - // - // This field is read-only. - google.ads.googleads.v5.enums.BiddingStrategyTypeEnum.BiddingStrategyType bidding_strategy_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The date when campaign started. - optional string start_date = 63; - - // The last day of the campaign. - optional string end_date = 64; - - // Suffix used to append query parameters to landing pages that are served - // with parallel tracking. - optional string final_url_suffix = 65; - - // A list that limits how often each user will see this campaign's ads. - repeated google.ads.googleads.v5.common.FrequencyCapEntry frequency_caps = 40; - - // Output only. 3-Tier Brand Safety setting for the campaign. - google.ads.googleads.v5.enums.BrandSafetySuitabilityEnum.BrandSafetySuitability video_brand_safety_suitability = 42 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Describes how unbranded pharma ads will be displayed. - VanityPharma vanity_pharma = 44; - - // Selective optimization setting for this campaign, which includes a set of - // conversion actions to optimize this campaign towards. - SelectiveOptimization selective_optimization = 45; - - // Optimization goal setting for this campaign, which includes a set of - // optimization goal types. - OptimizationGoalSetting optimization_goal_setting = 54; - - // Output only. Campaign-level settings for tracking information. - TrackingSetting tracking_setting = 46 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Payment mode for the campaign. - google.ads.googleads.v5.enums.PaymentModeEnum.PaymentMode payment_mode = 52; - - // Output only. Optimization score of the campaign. - // - // Optimization score is an estimate of how well a campaign is set to perform. - // It ranges from 0% (0.0) to 100% (1.0), with 100% indicating that the - // campaign is performing at full potential. This field is null for unscored - // campaigns. - // - // See "About optimization score" at - // https://support.google.com/google-ads/answer/9061546. - // - // This field is read-only. - optional double optimization_score = 66 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The bidding strategy for the campaign. - // - // Must be either portfolio (created via BiddingStrategy service) or - // standard, that is embedded into the campaign. - oneof campaign_bidding_strategy { - // Portfolio bidding strategy used by campaign. - string bidding_strategy = 67 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/BiddingStrategy" - }]; - - // Commission is an automatic bidding strategy in which the advertiser pays - // a certain portion of the conversion value. - google.ads.googleads.v5.common.Commission commission = 49; - - // Standard Manual CPC bidding strategy. - // Manual click-based bidding where user pays per click. - google.ads.googleads.v5.common.ManualCpc manual_cpc = 24; - - // Standard Manual CPM bidding strategy. - // Manual impression-based bidding where user pays per thousand - // impressions. - google.ads.googleads.v5.common.ManualCpm manual_cpm = 25; - - // Output only. A bidding strategy that pays a configurable amount per video view. - google.ads.googleads.v5.common.ManualCpv manual_cpv = 37 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Standard Maximize Conversions bidding strategy that automatically - // maximizes number of conversions while spending your budget. - google.ads.googleads.v5.common.MaximizeConversions maximize_conversions = 30; - - // Standard Maximize Conversion Value bidding strategy that automatically - // sets bids to maximize revenue while spending your budget. - google.ads.googleads.v5.common.MaximizeConversionValue maximize_conversion_value = 31; - - // Standard Target CPA bidding strategy that automatically sets bids to - // help get as many conversions as possible at the target - // cost-per-acquisition (CPA) you set. - google.ads.googleads.v5.common.TargetCpa target_cpa = 26; - - // Target Impression Share bidding strategy. An automated bidding strategy - // that sets bids to achieve a desired percentage of impressions. - google.ads.googleads.v5.common.TargetImpressionShare target_impression_share = 48; - - // Standard Target ROAS bidding strategy that automatically maximizes - // revenue while averaging a specific target return on ad spend (ROAS). - google.ads.googleads.v5.common.TargetRoas target_roas = 29; - - // Standard Target Spend bidding strategy that automatically sets your bids - // to help get as many clicks as possible within your budget. - google.ads.googleads.v5.common.TargetSpend target_spend = 27; - - // Standard Percent Cpc bidding strategy where bids are a fraction of the - // advertised price for some good or service. - google.ads.googleads.v5.common.PercentCpc percent_cpc = 34; - - // A bidding strategy that automatically optimizes cost per thousand - // impressions. - google.ads.googleads.v5.common.TargetCpm target_cpm = 41; - } -} diff --git a/google/ads/googleads/v5/resources/campaign_asset.proto b/google/ads/googleads/v5/resources/campaign_asset.proto deleted file mode 100644 index 61edb7c73..000000000 --- a/google/ads/googleads/v5/resources/campaign_asset.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/asset_field_type.proto"; -import "google/ads/googleads/v5/enums/asset_link_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignAssetProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the CampaignAsset resource. - -// A link between a Campaign and an Asset. -message CampaignAsset { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignAsset" - pattern: "customers/{customer}/campaignAssets/{campaign_asset}" - }; - - // Immutable. The resource name of the campaign asset. - // CampaignAsset resource names have the form: - // - // `customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignAsset" - } - ]; - - // Immutable. The campaign to which the asset is linked. - optional string campaign = 6 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Immutable. The asset which is linked to the campaign. - optional string asset = 7 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; - - // Immutable. Role that the asset takes under the linked campaign. - // Required. - google.ads.googleads.v5.enums.AssetFieldTypeEnum.AssetFieldType field_type = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Status of the campaign asset. - // This field is read-only. - google.ads.googleads.v5.enums.AssetLinkStatusEnum.AssetLinkStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/campaign_audience_view.proto b/google/ads/googleads/v5/resources/campaign_audience_view.proto deleted file mode 100644 index 74e0d39b8..000000000 --- a/google/ads/googleads/v5/resources/campaign_audience_view.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignAudienceViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the campaign audience view resource. - -// A campaign audience view. -// Includes performance data from interests and remarketing lists for Display -// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), -// aggregated by campaign and audience criterion. This view only includes -// audiences attached at the campaign level. -message CampaignAudienceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignAudienceView" - pattern: "customers/{customer}/campaignAudienceViews/{campaign_audience_view}" - }; - - // Output only. The resource name of the campaign audience view. - // Campaign audience view resource names have the form: - // - // `customers/{customer_id}/campaignAudienceViews/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/campaign_bid_modifier.proto b/google/ads/googleads/v5/resources/campaign_bid_modifier.proto deleted file mode 100644 index 144ca6762..000000000 --- a/google/ads/googleads/v5/resources/campaign_bid_modifier.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/criteria.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBidModifierProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Campaign Bid Modifier resource. - -// Represents a bid-modifiable only criterion at the campaign level. -message CampaignBidModifier { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignBidModifier" - pattern: "customers/{customer}/campaignBidModifiers/{campaign_bid_modifier}" - }; - - // Immutable. The resource name of the campaign bid modifier. - // Campaign bid modifier resource names have the form: - // - // `customers/{customer_id}/campaignBidModifiers/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBidModifier" - } - ]; - - // Output only. The campaign to which this criterion belongs. - optional string campaign = 6 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ID of the criterion to bid modify. - // - // This field is ignored for mutates. - optional int64 criterion_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bid when the criterion matches. - optional double bid_modifier = 8; - - // The criterion of this campaign bid modifier. - // - // Required in create operations starting in V5. - oneof criterion { - // Immutable. Criterion for interaction type. Only supported for search campaigns. - google.ads.googleads.v5.common.InteractionTypeInfo interaction_type = 5 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v5/resources/campaign_budget.proto b/google/ads/googleads/v5/resources/campaign_budget.proto deleted file mode 100644 index 0b7b80e83..000000000 --- a/google/ads/googleads/v5/resources/campaign_budget.proto +++ /dev/null @@ -1,156 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/budget_delivery_method.proto"; -import "google/ads/googleads/v5/enums/budget_period.proto"; -import "google/ads/googleads/v5/enums/budget_status.proto"; -import "google/ads/googleads/v5/enums/budget_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBudgetProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Budget resource. - -// A campaign budget. -message CampaignBudget { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignBudget" - pattern: "customers/{customer}/campaignBudgets/{campaign_budget}" - }; - - // Immutable. The resource name of the campaign budget. - // Campaign budget resource names have the form: - // - // `customers/{customer_id}/campaignBudgets/{campaign_budget_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - } - ]; - - // Output only. The ID of the campaign budget. - // - // A campaign budget is created using the CampaignBudgetService create - // operation and is assigned a budget ID. A budget ID can be shared across - // different campaigns; the system will then allocate the campaign budget - // among different campaigns to get optimum results. - optional int64 id = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the campaign budget. - // - // When creating a campaign budget through CampaignBudgetService, every - // explicitly shared campaign budget must have a non-null, non-empty name. - // Campaign budgets that are not explicitly shared derive their name from the - // attached campaign's name. - // - // The length of this string must be between 1 and 255, inclusive, - // in UTF-8 bytes, (trimmed). - optional string name = 20; - - // The amount of the budget, in the local currency for the account. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. Monthly spend is capped at 30.4 times this amount. - optional int64 amount_micros = 21; - - // The lifetime amount of the budget, in the local currency for the account. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - optional int64 total_amount_micros = 22; - - // Output only. The status of this campaign budget. This field is read-only. - google.ads.googleads.v5.enums.BudgetStatusEnum.BudgetStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The delivery method that determines the rate at which the campaign budget - // is spent. - // - // Defaults to STANDARD if unspecified in a create operation. - google.ads.googleads.v5.enums.BudgetDeliveryMethodEnum.BudgetDeliveryMethod delivery_method = 7; - - // Specifies whether the budget is explicitly shared. Defaults to true if - // unspecified in a create operation. - // - // If true, the budget was created with the purpose of sharing - // across one or more campaigns. - // - // If false, the budget was created with the intention of only being used - // with a single campaign. The budget's name and status will stay in sync - // with the campaign's name and status. Attempting to share the budget with a - // second campaign will result in an error. - // - // A non-shared budget can become an explicitly shared. The same operation - // must also assign the budget a name. - // - // A shared campaign budget can never become non-shared. - optional bool explicitly_shared = 23; - - // Output only. The number of campaigns actively using the budget. - // - // This field is read-only. - optional int64 reference_count = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates whether there is a recommended budget for this campaign budget. - // - // This field is read-only. - optional bool has_recommended_budget = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended budget amount. If no recommendation is available, this will - // be set to the budget amount. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - // - // This field is read-only. - optional int64 recommended_budget_amount_micros = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Period over which to spend the budget. Defaults to DAILY if not specified. - google.ads.googleads.v5.enums.BudgetPeriodEnum.BudgetPeriod period = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The estimated change in weekly clicks if the recommended budget is applied. - // - // This field is read-only. - optional int64 recommended_budget_estimated_change_weekly_clicks = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimated change in weekly cost in micros if the recommended budget is - // applied. One million is equivalent to one currency unit. - // - // This field is read-only. - optional int64 recommended_budget_estimated_change_weekly_cost_micros = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimated change in weekly interactions if the recommended budget is - // applied. - // - // This field is read-only. - optional int64 recommended_budget_estimated_change_weekly_interactions = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimated change in weekly views if the recommended budget is applied. - // - // This field is read-only. - optional int64 recommended_budget_estimated_change_weekly_views = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The type of the campaign budget. - google.ads.googleads.v5.enums.BudgetTypeEnum.BudgetType type = 18 [(google.api.field_behavior) = IMMUTABLE]; -} diff --git a/google/ads/googleads/v5/resources/campaign_criterion.proto b/google/ads/googleads/v5/resources/campaign_criterion.proto deleted file mode 100644 index b5daa6ea4..000000000 --- a/google/ads/googleads/v5/resources/campaign_criterion.proto +++ /dev/null @@ -1,167 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/criteria.proto"; -import "google/ads/googleads/v5/enums/campaign_criterion_status.proto"; -import "google/ads/googleads/v5/enums/criterion_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Campaign Criterion resource. - -// A campaign criterion. -message CampaignCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignCriterion" - pattern: "customers/{customer}/campaignCriteria/{campaign_criterion}" - }; - - // Immutable. The resource name of the campaign criterion. - // Campaign criterion resource names have the form: - // - // `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterion" - } - ]; - - // Immutable. The campaign to which the criterion belongs. - optional string campaign = 37 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ID of the criterion. - // - // This field is ignored during mutate. - optional int64 criterion_id = 38 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bids when the criterion matches. The modifier must be - // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. - // Use 0 to opt out of a Device type. - optional float bid_modifier = 39; - - // Immutable. Whether to target (`false`) or exclude (`true`) the criterion. - optional bool negative = 40 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The type of the criterion. - google.ads.googleads.v5.enums.CriterionTypeEnum.CriterionType type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the criterion. - google.ads.googleads.v5.enums.CampaignCriterionStatusEnum.CampaignCriterionStatus status = 35; - - // The campaign criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. Keyword. - google.ads.googleads.v5.common.KeywordInfo keyword = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v5.common.PlacementInfo placement = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile app category. - google.ads.googleads.v5.common.MobileAppCategoryInfo mobile_app_category = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile application. - google.ads.googleads.v5.common.MobileApplicationInfo mobile_application = 11 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Location. - google.ads.googleads.v5.common.LocationInfo location = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Device. - google.ads.googleads.v5.common.DeviceInfo device = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Ad Schedule. - google.ads.googleads.v5.common.AdScheduleInfo ad_schedule = 15 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Age range. - google.ads.googleads.v5.common.AgeRangeInfo age_range = 16 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Gender. - google.ads.googleads.v5.common.GenderInfo gender = 17 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Income range. - google.ads.googleads.v5.common.IncomeRangeInfo income_range = 18 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Parental status. - google.ads.googleads.v5.common.ParentalStatusInfo parental_status = 19 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User List. - google.ads.googleads.v5.common.UserListInfo user_list = 22 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v5.common.YouTubeVideoInfo youtube_video = 20 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v5.common.YouTubeChannelInfo youtube_channel = 21 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Proximity. - google.ads.googleads.v5.common.ProximityInfo proximity = 23 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Topic. - google.ads.googleads.v5.common.TopicInfo topic = 24 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Listing scope. - google.ads.googleads.v5.common.ListingScopeInfo listing_scope = 25 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Language. - google.ads.googleads.v5.common.LanguageInfo language = 26 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. IpBlock. - google.ads.googleads.v5.common.IpBlockInfo ip_block = 27 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. ContentLabel. - google.ads.googleads.v5.common.ContentLabelInfo content_label = 28 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Carrier. - google.ads.googleads.v5.common.CarrierInfo carrier = 29 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User Interest. - google.ads.googleads.v5.common.UserInterestInfo user_interest = 30 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Webpage. - google.ads.googleads.v5.common.WebpageInfo webpage = 31 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Operating system version. - google.ads.googleads.v5.common.OperatingSystemVersionInfo operating_system_version = 32 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile Device. - google.ads.googleads.v5.common.MobileDeviceInfo mobile_device = 33 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Location Group - google.ads.googleads.v5.common.LocationGroupInfo location_group = 34 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Affinity. - google.ads.googleads.v5.common.CustomAffinityInfo custom_affinity = 36 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v5/resources/campaign_criterion_simulation.proto b/google/ads/googleads/v5/resources/campaign_criterion_simulation.proto deleted file mode 100644 index caec4dde7..000000000 --- a/google/ads/googleads/v5/resources/campaign_criterion_simulation.proto +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/simulation.proto"; -import "google/ads/googleads/v5/enums/simulation_modification_method.proto"; -import "google/ads/googleads/v5/enums/simulation_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionSimulationProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the campaign criterion simulation resource. - -// A campaign criterion simulation. Supported combinations of advertising -// channel type, criterion ids, simulation type and simulation modification -// method is detailed below respectively. -// -// 1. SEARCH - 30000,30001,30002 - BID_MODIFIER - UNIFORM -// 2. SHOPPING - 30000,30001,30002 - BID_MODIFIER - UNIFORM -// 3. DISPLAY - 30001 - BID_MODIFIER - UNIFORM -message CampaignCriterionSimulation { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignCriterionSimulation" - pattern: "customers/{customer}/campaignCriterionSimulations/{campaign_criterion_simulation}" - }; - - // Output only. The resource name of the campaign criterion simulation. - // Campaign criterion simulation resource names have the form: - // - // `customers/{customer_id}/campaignCriterionSimulations/{campaign_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterionSimulation" - } - ]; - - // Output only. Campaign ID of the simulation. - optional int64 campaign_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Criterion ID of the simulation. - optional int64 criterion_id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The field that the simulation modifies. - google.ads.googleads.v5.enums.SimulationTypeEnum.SimulationType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. How the simulation modifies the field. - google.ads.googleads.v5.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. First day on which the simulation is based, in YYYY-MM-DD format. - optional string start_date = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Last day on which the simulation is based, in YYYY-MM-DD format. - optional string end_date = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // List of simulation points. - oneof point_list { - // Output only. Simulation points if the simulation type is BID_MODIFIER. - google.ads.googleads.v5.common.BidModifierSimulationPointList bid_modifier_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v5/resources/campaign_draft.proto b/google/ads/googleads/v5/resources/campaign_draft.proto deleted file mode 100644 index 1152da745..000000000 --- a/google/ads/googleads/v5/resources/campaign_draft.proto +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/campaign_draft_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Campaign Draft resource. - -// A campaign draft. -message CampaignDraft { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignDraft" - pattern: "customers/{customer}/campaignDrafts/{campaign_draft}" - }; - - // Immutable. The resource name of the campaign draft. - // Campaign draft resource names have the form: - // - // `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; - - // Output only. The ID of the draft. - // - // This field is read-only. - google.protobuf.Int64Value draft_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The base campaign to which the draft belongs. - google.protobuf.StringValue base_campaign = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The name of the campaign draft. - // - // This field is required and should not be empty when creating new - // campaign drafts. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - google.protobuf.StringValue name = 4; - - // Output only. Resource name of the Campaign that results from overlaying the draft - // changes onto the base campaign. - // - // This field is read-only. - google.protobuf.StringValue draft_campaign = 5 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The status of the campaign draft. This field is read-only. - // - // When a new campaign draft is added, the status defaults to PROPOSED. - google.ads.googleads.v5.enums.CampaignDraftStatusEnum.CampaignDraftStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether there is an experiment based on this draft currently serving. - google.protobuf.BoolValue has_experiment_running = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the long-running operation that can be used to poll - // for completion of draft promotion. This is only set if the draft promotion - // is in progress or finished. - google.protobuf.StringValue long_running_operation = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/campaign_experiment.proto b/google/ads/googleads/v5/resources/campaign_experiment.proto deleted file mode 100644 index 6a31f8898..000000000 --- a/google/ads/googleads/v5/resources/campaign_experiment.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/campaign_experiment_status.proto"; -import "google/ads/googleads/v5/enums/campaign_experiment_traffic_split_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Campaign Experiment resource. - -// An A/B experiment that compares the performance of the base campaign -// (the control) and a variation of that campaign (the experiment). -message CampaignExperiment { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignExperiment" - pattern: "customers/{customer}/campaignExperiments/{campaign_experiment}" - }; - - // Immutable. The resource name of the campaign experiment. - // Campaign experiment resource names have the form: - // - // `customers/{customer_id}/campaignExperiments/{campaign_experiment_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExperiment" - } - ]; - - // Output only. The ID of the campaign experiment. - // - // This field is read-only. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The campaign draft with staged changes to the base campaign. - google.protobuf.StringValue campaign_draft = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; - - // The name of the campaign experiment. - // - // This field is required when creating new campaign experiments - // and must not conflict with the name of another non-removed - // campaign experiment or campaign. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - google.protobuf.StringValue name = 4; - - // The description of the experiment. - google.protobuf.StringValue description = 5; - - // Immutable. Share of traffic directed to experiment as a percent (must be between 1 and - // 99 inclusive. Base campaign receives the remainder of the traffic - // (100 - traffic_split_percent). Required for create. - google.protobuf.Int64Value traffic_split_percent = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Determines the behavior of the traffic split. - google.ads.googleads.v5.enums.CampaignExperimentTrafficSplitTypeEnum.CampaignExperimentTrafficSplitType traffic_split_type = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The experiment campaign, as opposed to the base campaign. - google.protobuf.StringValue experiment_campaign = 8 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The status of the campaign experiment. This field is read-only. - google.ads.googleads.v5.enums.CampaignExperimentStatusEnum.CampaignExperimentStatus status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the long-running operation that can be used to poll - // for completion of experiment create or promote. The most recent long - // running operation is returned. - google.protobuf.StringValue long_running_operation = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Date when the campaign experiment starts. By default, the experiment starts - // now or on the campaign's start date, whichever is later. If this field is - // set, then the experiment starts at the beginning of the specified date in - // the customer's time zone. Cannot be changed once the experiment starts. - // - // Format: YYYY-MM-DD - // Example: 2019-03-14 - google.protobuf.StringValue start_date = 11; - - // Date when the campaign experiment ends. By default, the experiment ends on - // the campaign's end date. If this field is set, then the experiment ends at - // the end of the specified date in the customer's time zone. - // - // Format: YYYY-MM-DD - // Example: 2019-04-18 - google.protobuf.StringValue end_date = 12; -} diff --git a/google/ads/googleads/v5/resources/campaign_extension_setting.proto b/google/ads/googleads/v5/resources/campaign_extension_setting.proto deleted file mode 100644 index 73ce67494..000000000 --- a/google/ads/googleads/v5/resources/campaign_extension_setting.proto +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/extension_setting_device.proto"; -import "google/ads/googleads/v5/enums/extension_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExtensionSettingProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the CampaignExtensionSetting resource. - -// A campaign extension setting. -message CampaignExtensionSetting { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignExtensionSetting" - pattern: "customers/{customer}/campaignExtensionSettings/{campaign_extension_setting}" - }; - - // Immutable. The resource name of the campaign extension setting. - // CampaignExtensionSetting resource names have the form: - // - // `customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExtensionSetting" - } - ]; - - // Immutable. The extension type of the customer extension setting. - google.ads.googleads.v5.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The resource name of the campaign. The linked extension feed items will - // serve under this campaign. - // Campaign resource names have the form: - // - // `customers/{customer_id}/campaigns/{campaign_id}` - google.protobuf.StringValue campaign = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The resource names of the extension feed items to serve under the campaign. - // ExtensionFeedItem resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - repeated google.protobuf.StringValue extension_feed_items = 4 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - }]; - - // The device for which the extensions will serve. Optional. - google.ads.googleads.v5.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; -} diff --git a/google/ads/googleads/v5/resources/campaign_feed.proto b/google/ads/googleads/v5/resources/campaign_feed.proto deleted file mode 100644 index 1ef090cd4..000000000 --- a/google/ads/googleads/v5/resources/campaign_feed.proto +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/matching_function.proto"; -import "google/ads/googleads/v5/enums/feed_link_status.proto"; -import "google/ads/googleads/v5/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignFeedProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the CampaignFeed resource. - -// A campaign feed. -message CampaignFeed { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignFeed" - pattern: "customers/{customer}/campaignFeeds/{campaign_feed}" - }; - - // Immutable. The resource name of the campaign feed. - // Campaign feed resource names have the form: - // - // `customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id} - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignFeed" - } - ]; - - // Immutable. The feed to which the CampaignFeed belongs. - google.protobuf.StringValue feed = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Immutable. The campaign to which the CampaignFeed belongs. - google.protobuf.StringValue campaign = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Indicates which placeholder types the feed may populate under the connected - // campaign. Required. - repeated google.ads.googleads.v5.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; - - // Matching function associated with the CampaignFeed. - // The matching function is used to filter the set of feed items selected. - // Required. - google.ads.googleads.v5.common.MatchingFunction matching_function = 5; - - // Output only. Status of the campaign feed. - // This field is read-only. - google.ads.googleads.v5.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/campaign_label.proto b/google/ads/googleads/v5/resources/campaign_label.proto deleted file mode 100644 index 1ad9ffe29..000000000 --- a/google/ads/googleads/v5/resources/campaign_label.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignLabelProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the campaign label resource. - -// Represents a relationship between a campaign and a label. -message CampaignLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignLabel" - pattern: "customers/{customer}/campaignLabels/{campaign_label}" - }; - - // Immutable. Name of the resource. - // Campaign label resource names have the form: - // `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignLabel" - } - ]; - - // Immutable. The campaign to which the label is attached. - google.protobuf.StringValue campaign = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Immutable. The label assigned to the campaign. - google.protobuf.StringValue label = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/campaign_shared_set.proto b/google/ads/googleads/v5/resources/campaign_shared_set.proto deleted file mode 100644 index 3495f2980..000000000 --- a/google/ads/googleads/v5/resources/campaign_shared_set.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/campaign_shared_set_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the CampaignSharedSet resource. - -// CampaignSharedSets are used for managing the shared sets associated with a -// campaign. -message CampaignSharedSet { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignSharedSet" - pattern: "customers/{customer}/campaignSharedSets/{campaign_shared_set}" - }; - - // Immutable. The resource name of the campaign shared set. - // Campaign shared set resource names have the form: - // - // `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignSharedSet" - } - ]; - - // Immutable. The campaign to which the campaign shared set belongs. - optional string campaign = 5 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Immutable. The shared set associated with the campaign. This may be a negative keyword - // shared set of another customer. This customer should be a manager of the - // other customer, otherwise the campaign shared set will exist but have no - // serving effect. Only negative keyword shared sets can be associated with - // Shopping campaigns. Only negative placement shared sets can be associated - // with Display mobile app campaigns. - optional string shared_set = 6 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; - - // Output only. The status of this campaign shared set. Read only. - google.ads.googleads.v5.enums.CampaignSharedSetStatusEnum.CampaignSharedSetStatus status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/carrier_constant.proto b/google/ads/googleads/v5/resources/carrier_constant.proto deleted file mode 100644 index 4a1150909..000000000 --- a/google/ads/googleads/v5/resources/carrier_constant.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CarrierConstantProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Carrier constant resource. - -// A carrier criterion that can be used in campaign targeting. -message CarrierConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/CarrierConstant" - pattern: "carrierConstants/{carrier_constant}" - }; - - // Output only. The resource name of the carrier criterion. - // Carrier criterion resource names have the form: - // - // `carrierConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CarrierConstant" - } - ]; - - // Output only. The ID of the carrier criterion. - optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The full name of the carrier in English. - optional string name = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The country code of the country where the carrier is located, e.g., "AR", - // "FR", etc. - optional string country_code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/change_status.proto b/google/ads/googleads/v5/resources/change_status.proto deleted file mode 100644 index aa6dd03b1..000000000 --- a/google/ads/googleads/v5/resources/change_status.proto +++ /dev/null @@ -1,151 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/ad_type.proto"; -import "google/ads/googleads/v5/enums/advertising_channel_sub_type.proto"; -import "google/ads/googleads/v5/enums/advertising_channel_type.proto"; -import "google/ads/googleads/v5/enums/change_status_operation.proto"; -import "google/ads/googleads/v5/enums/change_status_resource_type.proto"; -import "google/ads/googleads/v5/enums/criterion_type.proto"; -import "google/ads/googleads/v5/enums/feed_origin.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Change Status resource. - -// Describes the status of returned resource. ChangeStatus could have up to 3 -// minutes delay to reflect a new change. -message ChangeStatus { - option (google.api.resource) = { - type: "googleads.googleapis.com/ChangeStatus" - pattern: "customers/{customer}/changeStatus/{change_status}" - }; - - // Output only. The resource name of the change status. - // Change status resource names have the form: - // - // `customers/{customer_id}/changeStatus/{change_status_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ChangeStatus" - } - ]; - - // Output only. Time at which the most recent change has occurred on this resource. - google.protobuf.StringValue last_change_date_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Represents the type of the changed resource. This dictates what fields - // will be set. For example, for AD_GROUP, campaign and ad_group fields will - // be set. - google.ads.googleads.v5.enums.ChangeStatusResourceTypeEnum.ChangeStatusResourceType resource_type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Campaign affected by this change. - optional string campaign = 17 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The AdGroup affected by this change. - optional string ad_group = 18 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Represents the status of the changed resource. - google.ads.googleads.v5.enums.ChangeStatusOperationEnum.ChangeStatusOperation resource_status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The AdGroupAd affected by this change. - google.protobuf.StringValue ad_group_ad = 9 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // Output only. The AdGroupCriterion affected by this change. - google.protobuf.StringValue ad_group_criterion = 10 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Output only. The CampaignCriterion affected by this change. - google.protobuf.StringValue campaign_criterion = 11 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterion" - } - ]; - - // Output only. The Feed affected by this change. - google.protobuf.StringValue feed = 12 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Output only. The FeedItem affected by this change. - google.protobuf.StringValue feed_item = 13 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; - - // Output only. The AdGroupFeed affected by this change. - google.protobuf.StringValue ad_group_feed = 14 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupFeed" - } - ]; - - // Output only. The CampaignFeed affected by this change. - google.protobuf.StringValue campaign_feed = 15 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignFeed" - } - ]; - - // Output only. The AdGroupBidModifier affected by this change. - google.protobuf.StringValue ad_group_bid_modifier = 16 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/click_view.proto b/google/ads/googleads/v5/resources/click_view.proto deleted file mode 100644 index b0192eef2..000000000 --- a/google/ads/googleads/v5/resources/click_view.proto +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/click_location.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ClickViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ClickView resource. - -// A click view with metrics aggregated at each click level, including both -// valid and invalid clicks. For non-Search campaigns, metrics.clicks -// represents the number of valid and invalid interactions. -// Queries including ClickView must have a filter limiting the results to one -// day and can be requested for dates back to 90 days before the time of the -// request. -message ClickView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ClickView" - pattern: "customers/{customer}/clickViews/{click_view}" - }; - - // Output only. The resource name of the click view. - // Click view resource names have the form: - // - // `customers/{customer_id}/clickViews/{date (yyyy-MM-dd)}~{gclid}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ClickView" - } - ]; - - // Output only. The Google Click ID. - optional string gclid = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The location criteria matching the area of interest associated with the - // impression. - google.ads.googleads.v5.common.ClickLocation area_of_interest = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The location criteria matching the location of presence associated with the - // impression. - google.ads.googleads.v5.common.ClickLocation location_of_presence = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Page number in search results where the ad was shown. - optional int64 page_number = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The associated ad. - optional string ad_group_ad = 10 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // Output only. The associated campaign location target, if one exists. - optional string campaign_location_target = 11 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; - - // Output only. The associated user list, if one exists. - optional string user_list = 12 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserList" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/conversion_action.proto b/google/ads/googleads/v5/resources/conversion_action.proto deleted file mode 100644 index 56ef0c80d..000000000 --- a/google/ads/googleads/v5/resources/conversion_action.proto +++ /dev/null @@ -1,173 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/tag_snippet.proto"; -import "google/ads/googleads/v5/enums/attribution_model.proto"; -import "google/ads/googleads/v5/enums/conversion_action_category.proto"; -import "google/ads/googleads/v5/enums/conversion_action_counting_type.proto"; -import "google/ads/googleads/v5/enums/conversion_action_status.proto"; -import "google/ads/googleads/v5/enums/conversion_action_type.proto"; -import "google/ads/googleads/v5/enums/data_driven_model_status.proto"; -import "google/ads/googleads/v5/enums/mobile_app_vendor.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Conversion Action resource. - -// A conversion action. -message ConversionAction { - option (google.api.resource) = { - type: "googleads.googleapis.com/ConversionAction" - pattern: "customers/{customer}/conversionActions/{conversion_action}" - }; - - // Settings related to this conversion action's attribution model. - message AttributionModelSettings { - // The attribution model type of this conversion action. - google.ads.googleads.v5.enums.AttributionModelEnum.AttributionModel attribution_model = 1; - - // Output only. The status of the data-driven attribution model for the conversion - // action. - google.ads.googleads.v5.enums.DataDrivenModelStatusEnum.DataDrivenModelStatus data_driven_model_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Settings related to the value for conversion events associated with this - // conversion action. - message ValueSettings { - // The value to use when conversion events for this conversion action are - // sent with an invalid, disallowed or missing value, or when - // this conversion action is configured to always use the default value. - optional double default_value = 4; - - // The currency code to use when conversion events for this conversion - // action are sent with an invalid or missing currency code, or when this - // conversion action is configured to always use the default value. - optional string default_currency_code = 5; - - // Controls whether the default value and default currency code are used in - // place of the value and currency code specified in conversion events for - // this conversion action. - optional bool always_use_default_value = 6; - } - - // Settings related to a third party app analytics conversion action. - message ThirdPartyAppAnalyticsSettings { - // Output only. The event name of a third-party app analytics conversion. - optional string event_name = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Settings related to a Firebase conversion action. - message FirebaseSettings { - // Output only. The event name of a Firebase conversion. - optional string event_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Firebase project ID of the conversion. - optional string project_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the conversion action. - // Conversion action resource names have the form: - // - // `customers/{customer_id}/conversionActions/{conversion_action_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - } - ]; - - // Output only. The ID of the conversion action. - optional int64 id = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the conversion action. - // - // This field is required and should not be empty when creating new - // conversion actions. - optional string name = 22; - - // The status of this conversion action for conversion event accrual. - google.ads.googleads.v5.enums.ConversionActionStatusEnum.ConversionActionStatus status = 4; - - // Immutable. The type of this conversion action. - google.ads.googleads.v5.enums.ConversionActionTypeEnum.ConversionActionType type = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // The category of conversions reported for this conversion action. - google.ads.googleads.v5.enums.ConversionActionCategoryEnum.ConversionActionCategory category = 6; - - // Output only. The resource name of the conversion action owner customer, or null if this - // is a system-defined conversion action. - optional string owner_customer = 23 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Whether this conversion action should be included in the "conversions" - // metric. - optional bool include_in_conversions_metric = 24; - - // The maximum number of days that may elapse between an interaction - // (e.g., a click) and a conversion event. - optional int64 click_through_lookback_window_days = 25; - - // The maximum number of days which may elapse between an impression and a - // conversion without an interaction. - optional int64 view_through_lookback_window_days = 26; - - // Settings related to the value for conversion events associated with this - // conversion action. - ValueSettings value_settings = 11; - - // How to count conversion events for the conversion action. - google.ads.googleads.v5.enums.ConversionActionCountingTypeEnum.ConversionActionCountingType counting_type = 12; - - // Settings related to this conversion action's attribution model. - AttributionModelSettings attribution_model_settings = 13; - - // Output only. The snippets used for tracking conversions. - repeated google.ads.googleads.v5.common.TagSnippet tag_snippets = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The phone call duration in seconds after which a conversion should be - // reported for this conversion action. - // - // The value must be between 0 and 10000, inclusive. - optional int64 phone_call_duration_seconds = 27; - - // App ID for an app conversion action. - optional string app_id = 28; - - // Output only. Mobile app vendor for an app conversion action. - google.ads.googleads.v5.enums.MobileAppVendorEnum.MobileAppVendor mobile_app_vendor = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Firebase settings for Firebase conversion types. - FirebaseSettings firebase_settings = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Third Party App Analytics settings for third party conversion types. - ThirdPartyAppAnalyticsSettings third_party_app_analytics_settings = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/currency_constant.proto b/google/ads/googleads/v5/resources/currency_constant.proto deleted file mode 100644 index 9ed347d48..000000000 --- a/google/ads/googleads/v5/resources/currency_constant.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CurrencyConstantProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Currency Constant resource. - -// A currency constant. -message CurrencyConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/CurrencyConstant" - pattern: "currencyConstants/{currency_constant}" - }; - - // Output only. The resource name of the currency constant. - // Currency constant resource names have the form: - // - // `currencyConstants/{code}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CurrencyConstant" - } - ]; - - // Output only. ISO 4217 three-letter currency code, e.g. "USD" - optional string code = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Full English name of the currency. - optional string name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Standard symbol for describing this currency, e.g. '$' for US Dollars. - optional string symbol = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The billable unit for this currency. Billed amounts should be multiples of - // this value. - optional int64 billable_unit_micros = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/custom_interest.proto b/google/ads/googleads/v5/resources/custom_interest.proto deleted file mode 100644 index 21e474e6f..000000000 --- a/google/ads/googleads/v5/resources/custom_interest.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/custom_interest_member_type.proto"; -import "google/ads/googleads/v5/enums/custom_interest_status.proto"; -import "google/ads/googleads/v5/enums/custom_interest_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Custom Interest resource. - -// A custom interest. This is a list of users by interest. -message CustomInterest { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomInterest" - pattern: "customers/{customer}/customInterests/{custom_interest}" - }; - - // Immutable. The resource name of the custom interest. - // Custom interest resource names have the form: - // - // `customers/{customer_id}/customInterests/{custom_interest_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomInterest" - } - ]; - - // Output only. Id of the custom interest. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Status of this custom interest. Indicates whether the custom interest is - // enabled or removed. - google.ads.googleads.v5.enums.CustomInterestStatusEnum.CustomInterestStatus status = 3; - - // Name of the custom interest. It should be unique across the same custom - // affinity audience. - // This field is required for create operations. - google.protobuf.StringValue name = 4; - - // Type of the custom interest, CUSTOM_AFFINITY or CUSTOM_INTENT. - // By default the type is set to CUSTOM_AFFINITY. - google.ads.googleads.v5.enums.CustomInterestTypeEnum.CustomInterestType type = 5; - - // Description of this custom interest audience. - google.protobuf.StringValue description = 6; - - // List of custom interest members that this custom interest is composed of. - // Members can be added during CustomInterest creation. If members are - // presented in UPDATE operation, existing members will be overridden. - repeated CustomInterestMember members = 7; -} - -// A member of custom interest audience. A member can be a keyword or url. -// It is immutable, that is, it can only be created or removed but not changed. -message CustomInterestMember { - // The type of custom interest member, KEYWORD or URL. - google.ads.googleads.v5.enums.CustomInterestMemberTypeEnum.CustomInterestMemberType member_type = 1; - - // Keyword text when member_type is KEYWORD or URL string when - // member_type is URL. - google.protobuf.StringValue parameter = 2; -} diff --git a/google/ads/googleads/v5/resources/customer.proto b/google/ads/googleads/v5/resources/customer.proto deleted file mode 100644 index a5b0124f5..000000000 --- a/google/ads/googleads/v5/resources/customer.proto +++ /dev/null @@ -1,149 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/customer_pay_per_conversion_eligibility_failure_reason.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Customer resource. - -// A customer. -message Customer { - option (google.api.resource) = { - type: "googleads.googleapis.com/Customer" - pattern: "customers/{customer}" - }; - - // Immutable. The resource name of the customer. - // Customer resource names have the form: - // - // `customers/{customer_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. The ID of the customer. - optional int64 id = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional, non-unique descriptive name of the customer. - optional string descriptive_name = 20; - - // Immutable. The currency in which the account operates. - // A subset of the currency codes from the ISO 4217 standard is - // supported. - optional string currency_code = 21 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The local timezone ID of the customer. - optional string time_zone = 22 [(google.api.field_behavior) = IMMUTABLE]; - - // The URL template for constructing a tracking URL out of parameters. - optional string tracking_url_template = 23; - - // The URL template for appending params to the final URL - optional string final_url_suffix = 24; - - // Whether auto-tagging is enabled for the customer. - optional bool auto_tagging_enabled = 25; - - // Output only. Whether the Customer has a Partners program badge. If the Customer is not - // associated with the Partners program, this will be false. For more - // information, see https://support.google.com/partners/answer/3125774. - optional bool has_partners_badge = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the customer is a manager. - optional bool manager = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the customer is a test account. - optional bool test_account = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Call reporting setting for a customer. - CallReportingSetting call_reporting_setting = 10; - - // Output only. Conversion tracking setting for a customer. - ConversionTrackingSetting conversion_tracking_setting = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Remarketing setting for a customer. - RemarketingSetting remarketing_setting = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Reasons why the customer is not eligible to use PaymentMode.CONVERSIONS. If - // the list is empty, the customer is eligible. This field is read-only. - repeated google.ads.googleads.v5.enums.CustomerPayPerConversionEligibilityFailureReasonEnum.CustomerPayPerConversionEligibilityFailureReason pay_per_conversion_eligibility_failure_reasons = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Optimization score of the customer. - // - // Optimization score is an estimate of how well a customer's campaigns are - // set to perform. It ranges from 0% (0.0) to 100% (1.0). This field is null - // for all manager customers, and for unscored non-manager customers. - // - // See "About optimization score" at - // https://support.google.com/google-ads/answer/9061546. - // - // This field is read-only. - optional double optimization_score = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Call reporting setting for a customer. -message CallReportingSetting { - // Enable reporting of phone call events by redirecting them via Google - // System. - optional bool call_reporting_enabled = 10; - - // Whether to enable call conversion reporting. - optional bool call_conversion_reporting_enabled = 11; - - // Customer-level call conversion action to attribute a call conversion to. - // If not set a default conversion action is used. Only in effect when - // call_conversion_reporting_enabled is set to true. - optional string call_conversion_action = 12 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - }]; -} - -// A collection of customer-wide settings related to Google Ads Conversion -// Tracking. -message ConversionTrackingSetting { - // Output only. The conversion tracking id used for this account. This id is automatically - // assigned after any conversion tracking feature is used. If the customer - // doesn't use conversion tracking, this is 0. This field is read-only. - optional int64 conversion_tracking_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The conversion tracking id of the customer's manager. This is set when the - // customer is opted into cross account conversion tracking, and it overrides - // conversion_tracking_id. This field can only be managed through the Google - // Ads UI. This field is read-only. - optional int64 cross_account_conversion_tracking_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Remarketing setting for a customer. -message RemarketingSetting { - // Output only. The Google global site tag. - optional string google_global_site_tag = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/customer_client.proto b/google/ads/googleads/v5/resources/customer_client.proto deleted file mode 100644 index 625d82e1d..000000000 --- a/google/ads/googleads/v5/resources/customer_client.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the CustomerClient resource. - -// A link between the given customer and a client customer. CustomerClients only -// exist for manager customers. All direct and indirect client customers are -// included, as well as the manager itself. -message CustomerClient { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerClient" - pattern: "customers/{customer}/customerClients/{customer_client}" - }; - - // Output only. The resource name of the customer client. - // CustomerClient resource names have the form: - // `customers/{customer_id}/customerClients/{client_customer_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClient" - } - ]; - - // Output only. The resource name of the client-customer which is linked to - // the given customer. Read only. - google.protobuf.StringValue client_customer = 3 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. Specifies whether this is a - // [hidden account](https://support.google.com/google-ads/answer/7519830). - // Read only. - google.protobuf.BoolValue hidden = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Distance between given customer and client. For self link, the level value - // will be 0. Read only. - google.protobuf.Int64Value level = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Common Locale Data Repository (CLDR) string representation of the - // time zone of the client, e.g. America/Los_Angeles. Read only. - google.protobuf.StringValue time_zone = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Identifies if the client is a test account. Read only. - google.protobuf.BoolValue test_account = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Identifies if the client is a manager. Read only. - google.protobuf.BoolValue manager = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Descriptive name for the client. Read only. - google.protobuf.StringValue descriptive_name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Currency code (e.g. 'USD', 'EUR') for the client. Read only. - google.protobuf.StringValue currency_code = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ID of the client customer. Read only. - google.protobuf.Int64Value id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/customer_client_link.proto b/google/ads/googleads/v5/resources/customer_client_link.proto deleted file mode 100644 index a719555e8..000000000 --- a/google/ads/googleads/v5/resources/customer_client_link.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/manager_link_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientLinkProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the CustomerClientLink resource. - -// Represents customer client link relationship. -message CustomerClientLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerClientLink" - pattern: "customers/{customer}/customerClientLinks/{customer_client_link}" - }; - - // Immutable. Name of the resource. - // CustomerClientLink resource names have the form: - // `customers/{customer_id}/customerClientLinks/{client_customer_id}~{manager_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClientLink" - } - ]; - - // Immutable. The client customer linked to this customer. - google.protobuf.StringValue client_customer = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. This is uniquely identifies a customer client link. Read only. - google.protobuf.Int64Value manager_link_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // This is the status of the link between client and manager. - google.ads.googleads.v5.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; - - // The visibility of the link. Users can choose whether or not to see hidden - // links in the Google Ads UI. - // Default value is false - google.protobuf.BoolValue hidden = 6; -} diff --git a/google/ads/googleads/v5/resources/customer_extension_setting.proto b/google/ads/googleads/v5/resources/customer_extension_setting.proto deleted file mode 100644 index 4cf0eed4a..000000000 --- a/google/ads/googleads/v5/resources/customer_extension_setting.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/extension_setting_device.proto"; -import "google/ads/googleads/v5/enums/extension_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerExtensionSettingProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the CustomerExtensionSetting resource. - -// A customer extension setting. -message CustomerExtensionSetting { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerExtensionSetting" - pattern: "customers/{customer}/customerExtensionSettings/{customer_extension_setting}" - }; - - // Immutable. The resource name of the customer extension setting. - // CustomerExtensionSetting resource names have the form: - // - // `customers/{customer_id}/customerExtensionSettings/{extension_type}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerExtensionSetting" - } - ]; - - // Immutable. The extension type of the customer extension setting. - google.ads.googleads.v5.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // The resource names of the extension feed items to serve under the customer. - // ExtensionFeedItem resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - repeated google.protobuf.StringValue extension_feed_items = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - }]; - - // The device for which the extensions will serve. Optional. - google.ads.googleads.v5.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 4; -} diff --git a/google/ads/googleads/v5/resources/customer_feed.proto b/google/ads/googleads/v5/resources/customer_feed.proto deleted file mode 100644 index 71f4fda0c..000000000 --- a/google/ads/googleads/v5/resources/customer_feed.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/matching_function.proto"; -import "google/ads/googleads/v5/enums/feed_link_status.proto"; -import "google/ads/googleads/v5/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerFeedProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the CustomerFeed resource. - -// A customer feed. -message CustomerFeed { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerFeed" - pattern: "customers/{customer}/customerFeeds/{customer_feed}" - }; - - // Immutable. The resource name of the customer feed. - // Customer feed resource names have the form: - // - // `customers/{customer_id}/customerFeeds/{feed_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerFeed" - } - ]; - - // Immutable. The feed being linked to the customer. - google.protobuf.StringValue feed = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Indicates which placeholder types the feed may populate under the connected - // customer. Required. - repeated google.ads.googleads.v5.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 3; - - // Matching function associated with the CustomerFeed. - // The matching function is used to filter the set of feed items selected. - // Required. - google.ads.googleads.v5.common.MatchingFunction matching_function = 4; - - // Output only. Status of the customer feed. - // This field is read-only. - google.ads.googleads.v5.enums.FeedLinkStatusEnum.FeedLinkStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/customer_label.proto b/google/ads/googleads/v5/resources/customer_label.proto deleted file mode 100644 index 0eb84de3b..000000000 --- a/google/ads/googleads/v5/resources/customer_label.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerLabelProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the customer label resource. - -// Represents a relationship between a customer and a label. This customer may -// not have access to all the labels attached to it. Additional CustomerLabels -// may be returned by increasing permissions with login-customer-id. -message CustomerLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerLabel" - pattern: "customers/{customer}/customerLabels/{customer_label}" - }; - - // Immutable. Name of the resource. - // Customer label resource names have the form: - // `customers/{customer_id}/customerLabels/{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerLabel" - } - ]; - - // Output only. The resource name of the customer to which the label is attached. - // Read only. - google.protobuf.StringValue customer = 2 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. The resource name of the label assigned to the customer. - // - // Note: the Customer ID portion of the label resource name is not - // validated when creating a new CustomerLabel. - google.protobuf.StringValue label = 3 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/customer_manager_link.proto b/google/ads/googleads/v5/resources/customer_manager_link.proto deleted file mode 100644 index 5aa58fd38..000000000 --- a/google/ads/googleads/v5/resources/customer_manager_link.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/manager_link_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerManagerLinkProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the CustomerManagerLink resource. - -// Represents customer-manager link relationship. -message CustomerManagerLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerManagerLink" - pattern: "customers/{customer}/customerManagerLinks/{customer_manager_link}" - }; - - // Immutable. Name of the resource. - // CustomerManagerLink resource names have the form: - // `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerManagerLink" - } - ]; - - // Output only. The manager customer linked to the customer. - google.protobuf.StringValue manager_customer = 3 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. ID of the customer-manager link. This field is read only. - google.protobuf.Int64Value manager_link_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Status of the link between the customer and the manager. - google.ads.googleads.v5.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; -} diff --git a/google/ads/googleads/v5/resources/customer_negative_criterion.proto b/google/ads/googleads/v5/resources/customer_negative_criterion.proto deleted file mode 100644 index c9de79276..000000000 --- a/google/ads/googleads/v5/resources/customer_negative_criterion.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/criteria.proto"; -import "google/ads/googleads/v5/enums/criterion_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerNegativeCriterionProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Customer Negative Criterion resource. - -// A negative criterion for exclusions at the customer level. -message CustomerNegativeCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerNegativeCriterion" - pattern: "customers/{customer}/customerNegativeCriteria/{customer_negative_criterion}" - }; - - // Immutable. The resource name of the customer negative criterion. - // Customer negative criterion resource names have the form: - // - // `customers/{customer_id}/customerNegativeCriteria/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerNegativeCriterion" - } - ]; - - // Output only. The ID of the criterion. - optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of the criterion. - google.ads.googleads.v5.enums.CriterionTypeEnum.CriterionType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The customer negative criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. ContentLabel. - google.ads.googleads.v5.common.ContentLabelInfo content_label = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. MobileApplication. - google.ads.googleads.v5.common.MobileApplicationInfo mobile_application = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. MobileAppCategory. - google.ads.googleads.v5.common.MobileAppCategoryInfo mobile_app_category = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v5.common.PlacementInfo placement = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v5.common.YouTubeVideoInfo youtube_video = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v5.common.YouTubeChannelInfo youtube_channel = 9 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v5/resources/detail_placement_view.proto b/google/ads/googleads/v5/resources/detail_placement_view.proto deleted file mode 100644 index 3950d8fca..000000000 --- a/google/ads/googleads/v5/resources/detail_placement_view.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/placement_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DetailPlacementViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the detail placement view resource. - -// A view with metrics aggregated by ad group and URL or YouTube video. -message DetailPlacementView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DetailPlacementView" - pattern: "customers/{customer}/detailPlacementViews/{detail_placement_view}" - }; - - // Output only. The resource name of the detail placement view. - // Detail placement view resource names have the form: - // - // `customers/{customer_id}/detailPlacementViews/{ad_group_id}~{base64_placement}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DetailPlacementView" - } - ]; - - // Output only. The automatic placement string at detail level, e. g. website URL, mobile - // application ID, or a YouTube video ID. - google.protobuf.StringValue placement = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The display name is URL name for websites, YouTube video name for YouTube - // videos, and translated mobile app name for mobile apps. - google.protobuf.StringValue display_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. URL of the group placement, e.g. domain, link to the mobile application in - // app store, or a YouTube channel URL. - google.protobuf.StringValue group_placement_target_url = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. URL of the placement, e.g. website, link to the mobile application in app - // store, or a YouTube video URL. - google.protobuf.StringValue target_url = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Type of the placement, e.g. Website, YouTube Video, and Mobile Application. - google.ads.googleads.v5.enums.PlacementTypeEnum.PlacementType placement_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/display_keyword_view.proto b/google/ads/googleads/v5/resources/display_keyword_view.proto deleted file mode 100644 index 864774000..000000000 --- a/google/ads/googleads/v5/resources/display_keyword_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DisplayKeywordViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the display keyword view resource. - -// A display keyword view. -message DisplayKeywordView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DisplayKeywordView" - pattern: "customers/{customer}/displayKeywordViews/{display_keyword_view}" - }; - - // Output only. The resource name of the display keyword view. - // Display Keyword view resource names have the form: - // - // `customers/{customer_id}/displayKeywordViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DisplayKeywordView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/distance_view.proto b/google/ads/googleads/v5/resources/distance_view.proto deleted file mode 100644 index b54a8cdf0..000000000 --- a/google/ads/googleads/v5/resources/distance_view.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/distance_bucket.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DistanceViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the DistanceView resource. - -// A distance view with metrics aggregated by the user's distance from an -// advertiser's location extensions. Each DistanceBucket includes all -// impressions that fall within its distance and a single impression will -// contribute to the metrics for all DistanceBuckets that include the user's -// distance. -message DistanceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DistanceView" - pattern: "customers/{customer}/distanceViews/{distance_view}" - }; - - // Output only. The resource name of the distance view. - // Distance view resource names have the form: - // - // `customers/{customer_id}/distanceViews/1~{distance_bucket}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DistanceView" - } - ]; - - // Output only. Grouping of user distance from location extensions. - google.ads.googleads.v5.enums.DistanceBucketEnum.DistanceBucket distance_bucket = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if the DistanceBucket is using the metric system, false otherwise. - optional bool metric_system = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/domain_category.proto b/google/ads/googleads/v5/resources/domain_category.proto deleted file mode 100644 index e29ad31f0..000000000 --- a/google/ads/googleads/v5/resources/domain_category.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DomainCategoryProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Domain Category resource. - -// A category generated automatically by crawling a domain. If a campaign uses -// the DynamicSearchAdsSetting, then domain categories will be generated for -// the domain. The categories can be targeted using WebpageConditionInfo. -// See: https://support.google.com/google-ads/answer/2471185 -message DomainCategory { - option (google.api.resource) = { - type: "googleads.googleapis.com/DomainCategory" - pattern: "customers/{customer}/domainCategories/{domain_category}" - }; - - // Output only. The resource name of the domain category. - // Domain category resource names have the form: - // - // `customers/{customer_id}/domainCategories/{campaign_id}~{category_base64}~{language_code}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DomainCategory" - } - ]; - - // Output only. The campaign this category is recommended for. - optional string campaign = 10 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. Recommended category for the website domain. e.g. if you have a website - // about electronics, the categories could be "cameras", "televisions", etc. - optional string category = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The language code specifying the language of the website. e.g. "en" for - // English. The language can be specified in the DynamicSearchAdsSetting - // required for dynamic search ads. This is the language of the pages from - // your website that you want Google Ads to find, create ads for, - // and match searches with. - optional string language_code = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The domain for the website. The domain can be specified in the - // DynamicSearchAdsSetting required for dynamic search ads. - optional string domain = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Fraction of pages on your site that this category matches. - optional double coverage_fraction = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The position of this category in the set of categories. Lower numbers - // indicate a better match for the domain. null indicates not recommended. - optional int64 category_rank = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates whether this category has sub-categories. - optional bool has_children = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended cost per click for the category. - optional int64 recommended_cpc_bid_micros = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/dynamic_search_ads_search_term_view.proto b/google/ads/googleads/v5/resources/dynamic_search_ads_search_term_view.proto deleted file mode 100644 index 2ee550422..000000000 --- a/google/ads/googleads/v5/resources/dynamic_search_ads_search_term_view.proto +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DynamicSearchAdsSearchTermViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Dynamic Search Ads Search Term View resource. - -// A dynamic search ads search term view. -message DynamicSearchAdsSearchTermView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" - pattern: "customers/{customer}/dynamicSearchAdsSearchTermViews/{dynamic_search_ads_search_term_view}" - }; - - // Output only. The resource name of the dynamic search ads search term view. - // Dynamic search ads search term view resource names have the form: - // - // `customers/{customer_id}/dynamicSearchAdsSearchTermViews/{ad_group_id}~{search_term_fingerprint}~{headline_fingerprint}~{landing_page_fingerprint}~{page_url_fingerprint}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" - } - ]; - - // Output only. Search term - // - // This field is read-only. - optional string search_term = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The dynamically generated headline of the Dynamic Search Ad. - // - // This field is read-only. - optional string headline = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The dynamically selected landing page URL of the impression. - // - // This field is read-only. - optional string landing_page = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The URL of page feed item served for the impression. - // - // This field is read-only. - optional string page_url = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if query matches a negative keyword. - // - // This field is read-only. - optional bool has_negative_keyword = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if query is added to targeted keywords. - // - // This field is read-only. - optional bool has_matching_keyword = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if query matches a negative url. - // - // This field is read-only. - optional bool has_negative_url = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/expanded_landing_page_view.proto b/google/ads/googleads/v5/resources/expanded_landing_page_view.proto deleted file mode 100644 index 8712ed05f..000000000 --- a/google/ads/googleads/v5/resources/expanded_landing_page_view.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ExpandedLandingPageViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the expanded landing page view resource. - -// A landing page view with metrics aggregated at the expanded final URL -// level. -message ExpandedLandingPageView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ExpandedLandingPageView" - pattern: "customers/{customer}/expandedLandingPageViews/{expanded_landing_page_view}" - }; - - // Output only. The resource name of the expanded landing page view. - // Expanded landing page view resource names have the form: - // - // `customers/{customer_id}/expandedLandingPageViews/{expanded_final_url_fingerprint}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExpandedLandingPageView" - } - ]; - - // Output only. The final URL that clicks are directed to. - google.protobuf.StringValue expanded_final_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/extension_feed_item.proto b/google/ads/googleads/v5/resources/extension_feed_item.proto deleted file mode 100644 index 3b02ff4a7..000000000 --- a/google/ads/googleads/v5/resources/extension_feed_item.proto +++ /dev/null @@ -1,149 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/criteria.proto"; -import "google/ads/googleads/v5/common/extensions.proto"; -import "google/ads/googleads/v5/enums/extension_type.proto"; -import "google/ads/googleads/v5/enums/feed_item_status.proto"; -import "google/ads/googleads/v5/enums/feed_item_target_device.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionFeedItemProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ExtensionFeedItem resource. - -// An extension feed item. -message ExtensionFeedItem { - option (google.api.resource) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - pattern: "customers/{customer}/extensionFeedItems/{extension_feed_item}" - }; - - // Immutable. The resource name of the extension feed item. - // Extension feed item resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - } - ]; - - // Output only. The ID of this feed item. Read-only. - google.protobuf.Int64Value id = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The extension type of the extension feed item. - // This field is read-only. - google.ads.googleads.v5.enums.ExtensionTypeEnum.ExtensionType extension_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Start time in which this feed item is effective and can begin serving. The - // time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue start_date_time = 5; - - // End time in which this feed item is no longer effective and will stop - // serving. The time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue end_date_time = 6; - - // List of non-overlapping schedules specifying all time intervals - // for which the feed item may serve. There can be a maximum of 6 schedules - // per day. - repeated google.ads.googleads.v5.common.AdScheduleInfo ad_schedules = 16; - - // The targeted device. - google.ads.googleads.v5.enums.FeedItemTargetDeviceEnum.FeedItemTargetDevice device = 17; - - // The targeted geo target constant. - google.protobuf.StringValue targeted_geo_target_constant = 20 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - }]; - - // The targeted keyword. - google.ads.googleads.v5.common.KeywordInfo targeted_keyword = 22; - - // Output only. Status of the feed item. - // This field is read-only. - google.ads.googleads.v5.enums.FeedItemStatusEnum.FeedItemStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Extension type. - oneof extension { - // Sitelink extension. - google.ads.googleads.v5.common.SitelinkFeedItem sitelink_feed_item = 2; - - // Structured snippet extension. - google.ads.googleads.v5.common.StructuredSnippetFeedItem structured_snippet_feed_item = 3; - - // App extension. - google.ads.googleads.v5.common.AppFeedItem app_feed_item = 7; - - // Call extension. - google.ads.googleads.v5.common.CallFeedItem call_feed_item = 8; - - // Callout extension. - google.ads.googleads.v5.common.CalloutFeedItem callout_feed_item = 9; - - // Text message extension. - google.ads.googleads.v5.common.TextMessageFeedItem text_message_feed_item = 10; - - // Price extension. - google.ads.googleads.v5.common.PriceFeedItem price_feed_item = 11; - - // Promotion extension. - google.ads.googleads.v5.common.PromotionFeedItem promotion_feed_item = 12; - - // Output only. Location extension. Locations are synced from a GMB account into a feed. - // This field is read-only. - google.ads.googleads.v5.common.LocationFeedItem location_feed_item = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Affiliate location extension. Feed locations are populated by Google Ads - // based on a chain ID. - // This field is read-only. - google.ads.googleads.v5.common.AffiliateLocationFeedItem affiliate_location_feed_item = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Hotel Callout extension. - google.ads.googleads.v5.common.HotelCalloutFeedItem hotel_callout_feed_item = 23; - } - - // Targeting at either the campaign or ad group level. Feed items that target - // a campaign or ad group will only serve with that resource. - oneof serving_resource_targeting { - // The targeted campaign. - google.protobuf.StringValue targeted_campaign = 18 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - }]; - - // The targeted ad group. - google.protobuf.StringValue targeted_ad_group = 19 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - }]; - } -} diff --git a/google/ads/googleads/v5/resources/feed.proto b/google/ads/googleads/v5/resources/feed.proto deleted file mode 100644 index 05802302e..000000000 --- a/google/ads/googleads/v5/resources/feed.proto +++ /dev/null @@ -1,193 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/affiliate_location_feed_relationship_type.proto"; -import "google/ads/googleads/v5/enums/feed_attribute_type.proto"; -import "google/ads/googleads/v5/enums/feed_origin.proto"; -import "google/ads/googleads/v5/enums/feed_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Feed resource. - -// A feed. -message Feed { - option (google.api.resource) = { - type: "googleads.googleapis.com/Feed" - pattern: "customers/{customer}/feeds/{feed}" - }; - - // Data used to configure a location feed populated from Google My Business - // Locations. - message PlacesLocationFeedData { - // Data used for authorization using OAuth. - message OAuthInfo { - // The HTTP method used to obtain authorization. - google.protobuf.StringValue http_method = 1; - - // The HTTP request URL used to obtain authorization. - google.protobuf.StringValue http_request_url = 2; - - // The HTTP authorization header used to obtain authorization. - google.protobuf.StringValue http_authorization_header = 3; - } - - // Immutable. Required authentication token (from OAuth API) for the email. - // This field can only be specified in a create request. All its subfields - // are not selectable. - OAuthInfo oauth_info = 1 [(google.api.field_behavior) = IMMUTABLE]; - - // Email address of a Google My Business account or email address of a - // manager of the Google My Business account. Required. - google.protobuf.StringValue email_address = 2; - - // Plus page ID of the managed business whose locations should be used. If - // this field is not set, then all businesses accessible by the user - // (specified by email_address) are used. - // This field is mutate-only and is not selectable. - google.protobuf.StringValue business_account_id = 10; - - // Used to filter Google My Business listings by business name. If - // business_name_filter is set, only listings with a matching business name - // are candidates to be sync'd into FeedItems. - google.protobuf.StringValue business_name_filter = 4; - - // Used to filter Google My Business listings by categories. If entries - // exist in category_filters, only listings that belong to any of the - // categories are candidates to be sync'd into FeedItems. If no entries - // exist in category_filters, then all listings are candidates for syncing. - repeated google.protobuf.StringValue category_filters = 5; - - // Used to filter Google My Business listings by labels. If entries exist in - // label_filters, only listings that has any of the labels set are - // candidates to be synchronized into FeedItems. If no entries exist in - // label_filters, then all listings are candidates for syncing. - repeated google.protobuf.StringValue label_filters = 6; - } - - // Data used to configure an affiliate location feed populated with the - // specified chains. - message AffiliateLocationFeedData { - // The list of chains that the affiliate location feed will sync the - // locations from. - repeated google.protobuf.Int64Value chain_ids = 1; - - // The relationship the chains have with the advertiser. - google.ads.googleads.v5.enums.AffiliateLocationFeedRelationshipTypeEnum.AffiliateLocationFeedRelationshipType relationship_type = 2; - } - - // Immutable. The resource name of the feed. - // Feed resource names have the form: - // - // `customers/{customer_id}/feeds/{feed_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Output only. The ID of the feed. - // This field is read-only. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Name of the feed. Required. - google.protobuf.StringValue name = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // The Feed's attributes. Required on CREATE, unless - // system_feed_generation_data is provided, in which case Google Ads will - // update the feed with the correct attributes. - // Disallowed on UPDATE. Use attribute_operations to add new attributes. - repeated FeedAttribute attributes = 4; - - // The list of operations changing the feed attributes. Attributes can only - // be added, not removed. - repeated FeedAttributeOperation attribute_operations = 9; - - // Immutable. Specifies who manages the FeedAttributes for the Feed. - google.ads.googleads.v5.enums.FeedOriginEnum.FeedOrigin origin = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Status of the feed. - // This field is read-only. - google.ads.googleads.v5.enums.FeedStatusEnum.FeedStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The system data for the Feed. This data specifies information for - // generating the feed items of the system generated feed. - oneof system_feed_generation_data { - // Data used to configure a location feed populated from Google My Business - // Locations. - PlacesLocationFeedData places_location_feed_data = 6; - - // Data used to configure an affiliate location feed populated with - // the specified chains. - AffiliateLocationFeedData affiliate_location_feed_data = 7; - } -} - -// FeedAttributes define the types of data expected to be present in a Feed. A -// single FeedAttribute specifies the expected type of the FeedItemAttributes -// with the same FeedAttributeId. Optionally, a FeedAttribute can be marked as -// being part of a FeedItem's unique key. -message FeedAttribute { - // ID of the attribute. - google.protobuf.Int64Value id = 1; - - // The name of the attribute. Required. - google.protobuf.StringValue name = 2; - - // Data type for feed attribute. Required. - google.ads.googleads.v5.enums.FeedAttributeTypeEnum.FeedAttributeType type = 3; - - // Indicates that data corresponding to this attribute is part of a - // FeedItem's unique key. It defaults to false if it is unspecified. Note - // that a unique key is not required in a Feed's schema, in which case the - // FeedItems must be referenced by their feed_item_id. - google.protobuf.BoolValue is_part_of_key = 4; -} - -// Operation to be performed on a feed attribute list in a mutate. -message FeedAttributeOperation { - // The operator. - enum Operator { - // Unspecified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Add the attribute to the existing attributes. - ADD = 2; - } - - // Output only. Type of list operation to perform. - Operator operator = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The feed attribute being added to the list. - FeedAttribute value = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/feed_item.proto b/google/ads/googleads/v5/resources/feed_item.proto deleted file mode 100644 index 5e0b735b9..000000000 --- a/google/ads/googleads/v5/resources/feed_item.proto +++ /dev/null @@ -1,215 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/custom_parameter.proto"; -import "google/ads/googleads/v5/common/feed_common.proto"; -import "google/ads/googleads/v5/common/policy.proto"; -import "google/ads/googleads/v5/enums/feed_item_quality_approval_status.proto"; -import "google/ads/googleads/v5/enums/feed_item_quality_disapproval_reason.proto"; -import "google/ads/googleads/v5/enums/feed_item_status.proto"; -import "google/ads/googleads/v5/enums/feed_item_validation_status.proto"; -import "google/ads/googleads/v5/enums/geo_targeting_restriction.proto"; -import "google/ads/googleads/v5/enums/placeholder_type.proto"; -import "google/ads/googleads/v5/enums/policy_approval_status.proto"; -import "google/ads/googleads/v5/enums/policy_review_status.proto"; -import "google/ads/googleads/v5/errors/feed_item_validation_error.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the FeedItem resource. - -// A feed item. -message FeedItem { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedItem" - pattern: "customers/{customer}/feedItems/{feed_item}" - }; - - // Immutable. The resource name of the feed item. - // Feed item resource names have the form: - // - // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; - - // Immutable. The feed to which this feed item belongs. - google.protobuf.StringValue feed = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Output only. The ID of this feed item. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Start time in which this feed item is effective and can begin serving. The - // time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue start_date_time = 4; - - // End time in which this feed item is no longer effective and will stop - // serving. The time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - google.protobuf.StringValue end_date_time = 5; - - // The feed item's attribute values. - repeated FeedItemAttributeValue attribute_values = 6; - - // Geo targeting restriction specifies the type of location that can be used - // for targeting. - google.ads.googleads.v5.enums.GeoTargetingRestrictionEnum.GeoTargetingRestriction geo_targeting_restriction = 7; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v5.common.CustomParameter url_custom_parameters = 8; - - // Output only. Status of the feed item. - // This field is read-only. - google.ads.googleads.v5.enums.FeedItemStatusEnum.FeedItemStatus status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of info about a feed item's validation and approval state for active - // feed mappings. There will be an entry in the list for each type of feed - // mapping associated with the feed, e.g. a feed with a sitelink and a call - // feed mapping would cause every feed item associated with that feed to have - // an entry in this list for both sitelink and call. - // This field is read-only. - repeated FeedItemPlaceholderPolicyInfo policy_infos = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// A feed item attribute value. -message FeedItemAttributeValue { - // Id of the feed attribute for which the value is associated with. - google.protobuf.Int64Value feed_attribute_id = 1; - - // Int64 value. Should be set if feed_attribute_id refers to a feed attribute - // of type INT64. - google.protobuf.Int64Value integer_value = 2; - - // Bool value. Should be set if feed_attribute_id refers to a feed attribute - // of type BOOLEAN. - google.protobuf.BoolValue boolean_value = 3; - - // String value. Should be set if feed_attribute_id refers to a feed attribute - // of type STRING, URL or DATE_TIME. - // For STRING the maximum length is 1500 characters. For URL the maximum - // length is 2076 characters. For DATE_TIME the string must be in the format - // "YYYYMMDD HHMMSS". - google.protobuf.StringValue string_value = 4; - - // Double value. Should be set if feed_attribute_id refers to a feed attribute - // of type DOUBLE. - google.protobuf.DoubleValue double_value = 5; - - // Price value. Should be set if feed_attribute_id refers to a feed attribute - // of type PRICE. - google.ads.googleads.v5.common.Money price_value = 6; - - // Repeated int64 value. Should be set if feed_attribute_id refers to a feed - // attribute of type INT64_LIST. - repeated google.protobuf.Int64Value integer_values = 7; - - // Repeated bool value. Should be set if feed_attribute_id refers to a feed - // attribute of type BOOLEAN_LIST. - repeated google.protobuf.BoolValue boolean_values = 8; - - // Repeated string value. Should be set if feed_attribute_id refers to a feed - // attribute of type STRING_LIST, URL_LIST or DATE_TIME_LIST. - // For STRING_LIST and URL_LIST the total size of the list in bytes may not - // exceed 3000. For DATE_TIME_LIST the number of elements may not exceed 200. - // - // For STRING_LIST the maximum length of each string element is 1500 - // characters. For URL_LIST the maximum length is 2076 characters. For - // DATE_TIME the format of the string must be the same as start and end time - // for the feed item. - repeated google.protobuf.StringValue string_values = 9; - - // Repeated double value. Should be set if feed_attribute_id refers to a feed - // attribute of type DOUBLE_LIST. - repeated google.protobuf.DoubleValue double_values = 10; -} - -// Policy, validation, and quality approval info for a feed item for the -// specified placeholder type. -message FeedItemPlaceholderPolicyInfo { - // Output only. The placeholder type. - google.ads.googleads.v5.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type_enum = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The FeedMapping that contains the placeholder type. - google.protobuf.StringValue feed_mapping_resource_name = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Where the placeholder type is in the review process. - google.ads.googleads.v5.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The overall approval status of the placeholder type, calculated based on - // the status of its individual policy topic entries. - google.ads.googleads.v5.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The list of policy findings for the placeholder type. - repeated google.ads.googleads.v5.common.PolicyTopicEntry policy_topic_entries = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The validation status of the palceholder type. - google.ads.googleads.v5.enums.FeedItemValidationStatusEnum.FeedItemValidationStatus validation_status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of placeholder type validation errors. - repeated FeedItemValidationError validation_errors = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Placeholder type quality evaluation approval status. - google.ads.googleads.v5.enums.FeedItemQualityApprovalStatusEnum.FeedItemQualityApprovalStatus quality_approval_status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of placeholder type quality evaluation disapproval reasons. - repeated google.ads.googleads.v5.enums.FeedItemQualityDisapprovalReasonEnum.FeedItemQualityDisapprovalReason quality_disapproval_reasons = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Stores a validation error and the set of offending feed attributes which -// together are responsible for causing a feed item validation error. -message FeedItemValidationError { - // Output only. Error code indicating what validation error was triggered. The description - // of the error can be found in the 'description' field. - google.ads.googleads.v5.errors.FeedItemValidationErrorEnum.FeedItemValidationError validation_error = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The description of the validation error. - google.protobuf.StringValue description = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set of feed attributes in the feed item flagged during validation. If - // empty, no specific feed attributes can be associated with the error - // (e.g. error across the entire feed item). - repeated google.protobuf.Int64Value feed_attribute_ids = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Any extra information related to this error which is not captured by - // validation_error and feed_attribute_id (e.g. placeholder field IDs when - // feed_attribute_id is not mapped). Note that extra_info is not localized. - google.protobuf.StringValue extra_info = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/feed_item_target.proto b/google/ads/googleads/v5/resources/feed_item_target.proto deleted file mode 100644 index 02d3eabc0..000000000 --- a/google/ads/googleads/v5/resources/feed_item_target.proto +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/criteria.proto"; -import "google/ads/googleads/v5/enums/feed_item_target_device.proto"; -import "google/ads/googleads/v5/enums/feed_item_target_status.proto"; -import "google/ads/googleads/v5/enums/feed_item_target_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the FeedItemTarget resource. - -// A feed item target. -message FeedItemTarget { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedItemTarget" - pattern: "customers/{customer}/feedItemTargets/{feed_item_target}" - }; - - // Immutable. The resource name of the feed item target. - // Feed item target resource names have the form: - // `customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItemTarget" - } - ]; - - // Immutable. The feed item to which this feed item target belongs. - google.protobuf.StringValue feed_item = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; - - // Output only. The target type of this feed item target. This field is read-only. - google.ads.googleads.v5.enums.FeedItemTargetTypeEnum.FeedItemTargetType feed_item_target_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ID of the targeted resource. This field is read-only. - google.protobuf.Int64Value feed_item_target_id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Status of the feed item target. - // This field is read-only. - google.ads.googleads.v5.enums.FeedItemTargetStatusEnum.FeedItemTargetStatus status = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The targeted resource. - oneof target { - // Immutable. The targeted campaign. - google.protobuf.StringValue campaign = 4 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Immutable. The targeted ad group. - google.protobuf.StringValue ad_group = 5 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Immutable. The targeted keyword. - google.ads.googleads.v5.common.KeywordInfo keyword = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The targeted geo target constant resource name. - google.protobuf.StringValue geo_target_constant = 8 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; - - // Immutable. The targeted device. - google.ads.googleads.v5.enums.FeedItemTargetDeviceEnum.FeedItemTargetDevice device = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The targeted schedule. - google.ads.googleads.v5.common.AdScheduleInfo ad_schedule = 10 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v5/resources/feed_mapping.proto b/google/ads/googleads/v5/resources/feed_mapping.proto deleted file mode 100644 index 5b6c8cd03..000000000 --- a/google/ads/googleads/v5/resources/feed_mapping.proto +++ /dev/null @@ -1,186 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/ad_customizer_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/affiliate_location_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/app_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/call_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/callout_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/custom_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/dsa_page_feed_criterion_field.proto"; -import "google/ads/googleads/v5/enums/education_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/feed_mapping_criterion_type.proto"; -import "google/ads/googleads/v5/enums/feed_mapping_status.proto"; -import "google/ads/googleads/v5/enums/flight_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/hotel_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/job_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/local_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/location_extension_targeting_criterion_field.proto"; -import "google/ads/googleads/v5/enums/location_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/message_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/placeholder_type.proto"; -import "google/ads/googleads/v5/enums/price_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/promotion_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/real_estate_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/sitelink_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/structured_snippet_placeholder_field.proto"; -import "google/ads/googleads/v5/enums/travel_placeholder_field.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the FeedMapping resource. - -// A feed mapping. -message FeedMapping { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedMapping" - pattern: "customers/{customer}/feedMappings/{feed_mapping}" - }; - - // Immutable. The resource name of the feed mapping. - // Feed mapping resource names have the form: - // - // `customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedMapping" - } - ]; - - // Immutable. The feed of this feed mapping. - google.protobuf.StringValue feed = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Immutable. Feed attributes to field mappings. These mappings are a one-to-many - // relationship meaning that 1 feed attribute can be used to populate - // multiple placeholder fields, but 1 placeholder field can only draw - // data from 1 feed attribute. Ad Customizer is an exception, 1 placeholder - // field can be mapped to multiple feed attributes. Required. - repeated AttributeFieldMapping attribute_field_mappings = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Status of the feed mapping. - // This field is read-only. - google.ads.googleads.v5.enums.FeedMappingStatusEnum.FeedMappingStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Feed mapping target. Can be either a placeholder or a criterion. For a - // given feed, the active FeedMappings must have unique targets. Required. - oneof target { - // Immutable. The placeholder type of this mapping (i.e., if the mapping maps feed - // attributes to placeholder fields). - google.ads.googleads.v5.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The criterion type of this mapping (i.e., if the mapping maps feed - // attributes to criterion fields). - google.ads.googleads.v5.enums.FeedMappingCriterionTypeEnum.FeedMappingCriterionType criterion_type = 4 [(google.api.field_behavior) = IMMUTABLE]; - } -} - -// Maps from feed attribute id to a placeholder or criterion field id. -message AttributeFieldMapping { - // Immutable. Feed attribute from which to map. - google.protobuf.Int64Value feed_attribute_id = 1 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The placeholder field ID. If a placeholder field enum is not published in - // the current API version, then this field will be populated and the field - // oneof will be empty. - // This field is read-only. - google.protobuf.Int64Value field_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Placeholder or criterion field to be populated using data from - // the above feed attribute. Required. - oneof field { - // Immutable. Sitelink Placeholder Fields. - google.ads.googleads.v5.enums.SitelinkPlaceholderFieldEnum.SitelinkPlaceholderField sitelink_field = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Call Placeholder Fields. - google.ads.googleads.v5.enums.CallPlaceholderFieldEnum.CallPlaceholderField call_field = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. App Placeholder Fields. - google.ads.googleads.v5.enums.AppPlaceholderFieldEnum.AppPlaceholderField app_field = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Location Placeholder Fields. This field is read-only. - google.ads.googleads.v5.enums.LocationPlaceholderFieldEnum.LocationPlaceholderField location_field = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Affiliate Location Placeholder Fields. This field is read-only. - google.ads.googleads.v5.enums.AffiliateLocationPlaceholderFieldEnum.AffiliateLocationPlaceholderField affiliate_location_field = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Callout Placeholder Fields. - google.ads.googleads.v5.enums.CalloutPlaceholderFieldEnum.CalloutPlaceholderField callout_field = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Structured Snippet Placeholder Fields. - google.ads.googleads.v5.enums.StructuredSnippetPlaceholderFieldEnum.StructuredSnippetPlaceholderField structured_snippet_field = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Message Placeholder Fields. - google.ads.googleads.v5.enums.MessagePlaceholderFieldEnum.MessagePlaceholderField message_field = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Price Placeholder Fields. - google.ads.googleads.v5.enums.PricePlaceholderFieldEnum.PricePlaceholderField price_field = 11 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Promotion Placeholder Fields. - google.ads.googleads.v5.enums.PromotionPlaceholderFieldEnum.PromotionPlaceholderField promotion_field = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Ad Customizer Placeholder Fields - google.ads.googleads.v5.enums.AdCustomizerPlaceholderFieldEnum.AdCustomizerPlaceholderField ad_customizer_field = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Dynamic Search Ad Page Feed Fields. - google.ads.googleads.v5.enums.DsaPageFeedCriterionFieldEnum.DsaPageFeedCriterionField dsa_page_feed_field = 14 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Location Target Fields. - google.ads.googleads.v5.enums.LocationExtensionTargetingCriterionFieldEnum.LocationExtensionTargetingCriterionField location_extension_targeting_field = 15 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Education Placeholder Fields - google.ads.googleads.v5.enums.EducationPlaceholderFieldEnum.EducationPlaceholderField education_field = 16 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Flight Placeholder Fields - google.ads.googleads.v5.enums.FlightPlaceholderFieldEnum.FlightPlaceholderField flight_field = 17 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Placeholder Fields - google.ads.googleads.v5.enums.CustomPlaceholderFieldEnum.CustomPlaceholderField custom_field = 18 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Hotel Placeholder Fields - google.ads.googleads.v5.enums.HotelPlaceholderFieldEnum.HotelPlaceholderField hotel_field = 19 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Real Estate Placeholder Fields - google.ads.googleads.v5.enums.RealEstatePlaceholderFieldEnum.RealEstatePlaceholderField real_estate_field = 20 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Travel Placeholder Fields - google.ads.googleads.v5.enums.TravelPlaceholderFieldEnum.TravelPlaceholderField travel_field = 21 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Local Placeholder Fields - google.ads.googleads.v5.enums.LocalPlaceholderFieldEnum.LocalPlaceholderField local_field = 22 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Job Placeholder Fields - google.ads.googleads.v5.enums.JobPlaceholderFieldEnum.JobPlaceholderField job_field = 23 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v5/resources/feed_placeholder_view.proto b/google/ads/googleads/v5/resources/feed_placeholder_view.proto deleted file mode 100644 index 77ae3f527..000000000 --- a/google/ads/googleads/v5/resources/feed_placeholder_view.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedPlaceholderViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the FeedPlaceholderView resource. - -// A feed placeholder view. -message FeedPlaceholderView { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedPlaceholderView" - pattern: "customers/{customer}/feedPlaceholderViews/{feed_placeholder_view}" - }; - - // Output only. The resource name of the feed placeholder view. - // Feed placeholder view resource names have the form: - // - // `customers/{customer_id}/feedPlaceholderViews/{placeholder_type}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedPlaceholderView" - } - ]; - - // Output only. The placeholder type of the feed placeholder view. - google.ads.googleads.v5.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/gender_view.proto b/google/ads/googleads/v5/resources/gender_view.proto deleted file mode 100644 index 4c9545afa..000000000 --- a/google/ads/googleads/v5/resources/gender_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GenderViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the gender view resource. - -// A gender view. -message GenderView { - option (google.api.resource) = { - type: "googleads.googleapis.com/GenderView" - pattern: "customers/{customer}/genderViews/{gender_view}" - }; - - // Output only. The resource name of the gender view. - // Gender view resource names have the form: - // - // `customers/{customer_id}/genderViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GenderView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/geo_target_constant.proto b/google/ads/googleads/v5/resources/geo_target_constant.proto deleted file mode 100644 index 06b9becae..000000000 --- a/google/ads/googleads/v5/resources/geo_target_constant.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/geo_target_constant_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the geo target constant resource. - -// A geo target constant. -message GeoTargetConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/GeoTargetConstant" - pattern: "geoTargetConstants/{geo_target_constant}" - }; - - // Output only. The resource name of the geo target constant. - // Geo target constant resource names have the form: - // - // `geoTargetConstants/{geo_target_constant_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; - - // Output only. The ID of the geo target constant. - optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Geo target constant English name. - optional string name = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ISO-3166-1 alpha-2 country code that is associated with the target. - optional string country_code = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Geo target constant target type. - optional string target_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Geo target constant status. - google.ads.googleads.v5.enums.GeoTargetConstantStatusEnum.GeoTargetConstantStatus status = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The fully qualified English name, consisting of the target's name and that - // of its parent and country. - optional string canonical_name = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the parent geo target constant. - // Geo target constant resource names have the form: - // - // `geoTargetConstants/{parent_geo_target_constant_id}` - optional string parent_geo_target = 9 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/geographic_view.proto b/google/ads/googleads/v5/resources/geographic_view.proto deleted file mode 100644 index b2873d3b0..000000000 --- a/google/ads/googleads/v5/resources/geographic_view.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/geo_targeting_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GeographicViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the geographic view resource. - -// A geographic view. -// -// Geographic View includes all metrics aggregated at the country level, -// one row per country. It reports metrics at either actual physical location of -// the user or an area of interest. If other segment fields are used, you may -// get more than one row per country. -message GeographicView { - option (google.api.resource) = { - type: "googleads.googleapis.com/GeographicView" - pattern: "customers/{customer}/geographicViews/{geographic_view}" - }; - - // Output only. The resource name of the geographic view. - // Geographic view resource names have the form: - // - // `customers/{customer_id}/geographicViews/{country_criterion_id}~{location_type}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeographicView" - } - ]; - - // Output only. Type of the geo targeting of the campaign. - google.ads.googleads.v5.enums.GeoTargetingTypeEnum.GeoTargetingType location_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Criterion Id for the country. - optional int64 country_criterion_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/google_ads_field.proto b/google/ads/googleads/v5/resources/google_ads_field.proto deleted file mode 100644 index 14581a4cd..000000000 --- a/google/ads/googleads/v5/resources/google_ads_field.proto +++ /dev/null @@ -1,117 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/google_ads_field_category.proto"; -import "google/ads/googleads/v5/enums/google_ads_field_data_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Google Ads Field resource. - -// A field or resource (artifact) used by GoogleAdsService. -message GoogleAdsField { - option (google.api.resource) = { - type: "googleads.googleapis.com/GoogleAdsField" - pattern: "googleAdsFields/{google_ads_field}" - }; - - // Output only. The resource name of the artifact. - // Artifact resource names have the form: - // - // `googleAdsFields/{name}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GoogleAdsField" - } - ]; - - // Output only. The name of the artifact. - optional string name = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The category of the artifact. - google.ads.googleads.v5.enums.GoogleAdsFieldCategoryEnum.GoogleAdsFieldCategory category = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the artifact can be used in a SELECT clause in search - // queries. - optional bool selectable = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the artifact can be used in a WHERE clause in search - // queries. - optional bool filterable = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the artifact can be used in a ORDER BY clause in search - // queries. - optional bool sortable = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The names of all resources, segments, and metrics that are selectable with - // the described artifact. - repeated string selectable_with = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The names of all resources that are selectable with the described - // artifact. Fields from these resources do not segment metrics when included - // in search queries. - // - // This field is only set for artifacts whose category is RESOURCE. - repeated string attribute_resources = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. At and beyond version V1 this field lists the names of all metrics that are - // selectable with the described artifact when it is used in the FROM clause. - // It is only set for artifacts whose category is RESOURCE. - // - // Before version V1 this field lists the names of all metrics that are - // selectable with the described artifact. It is only set for artifacts whose - // category is either RESOURCE or SEGMENT - repeated string metrics = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. At and beyond version V1 this field lists the names of all artifacts, - // whether a segment or another resource, that segment metrics when included - // in search queries and when the described artifact is used in the FROM - // clause. It is only set for artifacts whose category is RESOURCE. - // - // Before version V1 this field lists the names of all artifacts, whether a - // segment or another resource, that segment metrics when included in search - // queries. It is only set for artifacts of category RESOURCE, SEGMENT or - // METRIC. - repeated string segments = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Values the artifact can assume if it is a field of type ENUM. - // - // This field is only set for artifacts of category SEGMENT or ATTRIBUTE. - repeated string enum_values = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. This field determines the operators that can be used with the artifact - // in WHERE clauses. - google.ads.googleads.v5.enums.GoogleAdsFieldDataTypeEnum.GoogleAdsFieldDataType data_type = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The URL of proto describing the artifact's data type. - optional string type_url = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the field artifact is repeated. - optional bool is_repeated = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/group_placement_view.proto b/google/ads/googleads/v5/resources/group_placement_view.proto deleted file mode 100644 index 2c59c2143..000000000 --- a/google/ads/googleads/v5/resources/group_placement_view.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/placement_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GroupPlacementViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the group placement view resource. - -// A group placement view. -message GroupPlacementView { - option (google.api.resource) = { - type: "googleads.googleapis.com/GroupPlacementView" - pattern: "customers/{customer}/groupPlacementViews/{group_placement_view}" - }; - - // Output only. The resource name of the group placement view. - // Group placement view resource names have the form: - // - // `customers/{customer_id}/groupPlacementViews/{ad_group_id}~{base64_placement}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GroupPlacementView" - } - ]; - - // Output only. The automatic placement string at group level, e. g. web domain, mobile - // app ID, or a YouTube channel ID. - google.protobuf.StringValue placement = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Domain name for websites and YouTube channel name for YouTube channels. - google.protobuf.StringValue display_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. URL of the group placement, e.g. domain, link to the mobile application in - // app store, or a YouTube channel URL. - google.protobuf.StringValue target_url = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Type of the placement, e.g. Website, YouTube Channel, Mobile Application. - google.ads.googleads.v5.enums.PlacementTypeEnum.PlacementType placement_type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/hotel_group_view.proto b/google/ads/googleads/v5/resources/hotel_group_view.proto deleted file mode 100644 index 9b1733406..000000000 --- a/google/ads/googleads/v5/resources/hotel_group_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "HotelGroupViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the hotel group view resource. - -// A hotel group view. -message HotelGroupView { - option (google.api.resource) = { - type: "googleads.googleapis.com/HotelGroupView" - pattern: "customers/{customer}/hotelGroupViews/{hotel_group_view}" - }; - - // Output only. The resource name of the hotel group view. - // Hotel Group view resource names have the form: - // - // `customers/{customer_id}/hotelGroupViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelGroupView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/hotel_performance_view.proto b/google/ads/googleads/v5/resources/hotel_performance_view.proto deleted file mode 100644 index aff3be45c..000000000 --- a/google/ads/googleads/v5/resources/hotel_performance_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "HotelPerformanceViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the hotel performance view resource. - -// A hotel performance view. -message HotelPerformanceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/HotelPerformanceView" - pattern: "customers/{customer}/hotelPerformanceView" - }; - - // Output only. The resource name of the hotel performance view. - // Hotel performance view resource names have the form: - // - // `customers/{customer_id}/hotelPerformanceView` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/income_range_view.proto b/google/ads/googleads/v5/resources/income_range_view.proto deleted file mode 100644 index 4c3325d1d..000000000 --- a/google/ads/googleads/v5/resources/income_range_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "IncomeRangeViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the income range view resource. - -// An income range view. -message IncomeRangeView { - option (google.api.resource) = { - type: "googleads.googleapis.com/IncomeRangeView" - pattern: "customers/{customer}/incomeRangeViews/{income_range_view}" - }; - - // Output only. The resource name of the income range view. - // Income range view resource names have the form: - // - // `customers/{customer_id}/incomeRangeViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/IncomeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/invoice.proto b/google/ads/googleads/v5/resources/invoice.proto deleted file mode 100644 index aecf06d18..000000000 --- a/google/ads/googleads/v5/resources/invoice.proto +++ /dev/null @@ -1,190 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/dates.proto"; -import "google/ads/googleads/v5/enums/invoice_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Invoice resource. - -// An invoice. All invoice information is snapshotted to match the PDF invoice. -// For invoices older than the launch of InvoiceService, the snapshotted -// information may not match the PDF invoice. -message Invoice { - option (google.api.resource) = { - type: "googleads.googleapis.com/Invoice" - pattern: "customers/{customer}/invoices/{invoice}" - }; - - // Represents a summarized account budget billable cost. - message AccountBudgetSummary { - // Output only. The resource name of the customer associated with this account budget. - // This contains the customer ID, which appears on the invoice PDF as - // "Account ID". - // Customer resource names have the form: - // - // `customers/{customer_id}` - google.protobuf.StringValue customer = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The descriptive name of the account budget’s customer. It appears on the - // invoice PDF as "Account". - google.protobuf.StringValue customer_descriptive_name = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the account budget associated with this summarized - // billable cost. - // AccountBudget resource names have the form: - // - // `customers/{customer_id}/accountBudgets/{account_budget_id}` - google.protobuf.StringValue account_budget = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the account budget. It appears on the invoice PDF as "Account - // budget". - google.protobuf.StringValue account_budget_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The purchase order number of the account budget. It appears on the - // invoice PDF as "Purchase order". - google.protobuf.StringValue purchase_order_number = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The pretax subtotal amount attributable to this budget during the service - // period, in micros. - google.protobuf.Int64Value subtotal_amount_micros = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The tax amount attributable to this budget during the service period, in - // micros. - google.protobuf.Int64Value tax_amount_micros = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total amount attributable to this budget during the service period, - // in micros. This equals the sum of the account budget subtotal amount and - // the account budget tax amount. - google.protobuf.Int64Value total_amount_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The billable activity date range of the account budget, within the - // service date range of this invoice. The end date is inclusive. This can - // be different from the account budget's start and end time. - google.ads.googleads.v5.common.DateRange billable_activity_date_range = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Output only. The resource name of the invoice. Multiple customers can share a given - // invoice, so multiple resource names may point to the same invoice. - // Invoice resource names have the form: - // - // `customers/{customer_id}/invoices/{invoice_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Invoice" - } - ]; - - // Output only. The ID of the invoice. It appears on the invoice PDF as "Invoice number". - google.protobuf.StringValue id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of invoice. - google.ads.googleads.v5.enums.InvoiceTypeEnum.InvoiceType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of this invoice’s billing setup. - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - google.protobuf.StringValue billing_setup = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A 16 digit ID used to identify the payments account associated with the - // billing setup, e.g. "1234-5678-9012-3456". It appears on the invoice PDF as - // "Billing Account Number". - google.protobuf.StringValue payments_account_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A 12 digit ID used to identify the payments profile associated with the - // billing setup, e.g. "1234-5678-9012". It appears on the invoice PDF as - // "Billing ID". - google.protobuf.StringValue payments_profile_id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The issue date in yyyy-mm-dd format. It appears on the invoice PDF as - // either "Issue date" or "Invoice date". - google.protobuf.StringValue issue_date = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The due date in yyyy-mm-dd format. - google.protobuf.StringValue due_date = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The service period date range of this invoice. The end date is inclusive. - google.ads.googleads.v5.common.DateRange service_date_range = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The currency code. All costs are returned in this currency. A subset of the - // currency codes derived from the ISO 4217 standard is supported. - google.protobuf.StringValue currency_code = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total amount of invoice level adjustments. These adjustments are made - // on the invoice, not on a specific account budget. - google.protobuf.Int64Value invoice_level_adjustments_micros = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The pretax subtotal amount, in micros. This equals the - // sum of the AccountBudgetSummary subtotal amounts, - // Invoice.adjustments_subtotal_amount_micros, and - // Invoice.regulatory_costs_subtotal_amount_micros. - // Starting with v6, the Invoice.regulatory_costs_subtotal_amount_micros is no - // longer included. - google.protobuf.Int64Value subtotal_amount_micros = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The sum of all taxes on the invoice, in micros. This equals the sum of the - // AccountBudgetSummary tax amounts, plus taxes not associated with a specific - // account budget. - google.protobuf.Int64Value tax_amount_micros = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total amount, in micros. This equals the sum of - // Invoice.subtotal_amount_micros and Invoice.tax_amount_micros. - // Starting with v6, Invoice.regulatory_costs_subtotal_amount_micros is - // also added as it is no longer already included in - // Invoice.tax_amount_micros. - google.protobuf.Int64Value total_amount_micros = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the original invoice corrected, wrote off, or canceled - // by this invoice, if applicable. If `corrected_invoice` is set, - // `replaced_invoices` will not be set. - // Invoice resource names have the form: - // - // `customers/{customer_id}/invoices/{invoice_id}` - google.protobuf.StringValue corrected_invoice = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the original invoice(s) being rebilled or replaced by - // this invoice, if applicable. There might be multiple replaced invoices due - // to invoice consolidation. The replaced invoices may not belong to the same - // payments account. If `replaced_invoices` is set, `corrected_invoice` will - // not be set. - // Invoice resource names have the form: - // - // `customers/{customer_id}/invoices/{invoice_id}` - repeated google.protobuf.StringValue replaced_invoices = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The URL to a PDF copy of the invoice. Users need to pass in their OAuth - // token to request the PDF with this URL. - google.protobuf.StringValue pdf_url = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The list of summarized account budget information associated with this - // invoice. - repeated AccountBudgetSummary account_budget_summaries = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/keyword_plan.proto b/google/ads/googleads/v5/resources/keyword_plan.proto deleted file mode 100644 index 122868d3b..000000000 --- a/google/ads/googleads/v5/resources/keyword_plan.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/dates.proto"; -import "google/ads/googleads/v5/enums/keyword_plan_forecast_interval.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the keyword plan resource. - -// A Keyword Planner plan. -// Max number of saved keyword plans: 10000. -// It's possible to remove plans if limit is reached. -message KeywordPlan { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlan" - pattern: "customers/{customer}/keywordPlans/{keyword_plan}" - }; - - // Immutable. The resource name of the Keyword Planner plan. - // KeywordPlan resource names have the form: - // - // `customers/{customer_id}/keywordPlans/{kp_plan_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; - - // Output only. The ID of the keyword plan. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the keyword plan. - // - // This field is required and should not be empty when creating new keyword - // plans. - google.protobuf.StringValue name = 3; - - // The date period used for forecasting the plan. - KeywordPlanForecastPeriod forecast_period = 4; -} - -// The forecasting period associated with the keyword plan. -message KeywordPlanForecastPeriod { - // Required. The date used for forecasting the Plan. - oneof interval { - // A future date range relative to the current date used for forecasting. - google.ads.googleads.v5.enums.KeywordPlanForecastIntervalEnum.KeywordPlanForecastInterval date_interval = 1; - - // The custom date range used for forecasting. - // The start and end dates must be in the future. Otherwise, an error will - // be returned when the forecasting action is performed. - // The start and end dates are inclusive. - google.ads.googleads.v5.common.DateRange date_range = 2; - } -} diff --git a/google/ads/googleads/v5/resources/keyword_plan_ad_group.proto b/google/ads/googleads/v5/resources/keyword_plan_ad_group.proto deleted file mode 100644 index 6ad075714..000000000 --- a/google/ads/googleads/v5/resources/keyword_plan_ad_group.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the keyword plan ad group resource. - -// A Keyword Planner ad group. -// Max number of keyword plan ad groups per plan: 200. -message KeywordPlanAdGroup { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - pattern: "customers/{customer}/keywordPlanAdGroups/{keyword_plan_ad_group}" - }; - - // Immutable. The resource name of the Keyword Planner ad group. - // KeywordPlanAdGroup resource names have the form: - // - // `customers/{customer_id}/keywordPlanAdGroups/{kp_ad_group_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - } - ]; - - // The keyword plan campaign to which this ad group belongs. - google.protobuf.StringValue keyword_plan_campaign = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - }]; - - // Output only. The ID of the keyword plan ad group. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the keyword plan ad group. - // - // This field is required and should not be empty when creating keyword plan - // ad group. - google.protobuf.StringValue name = 4; - - // A default ad group max cpc bid in micros in account currency for all - // biddable keywords under the keyword plan ad group. - // If not set, will inherit from parent campaign. - google.protobuf.Int64Value cpc_bid_micros = 5; -} diff --git a/google/ads/googleads/v5/resources/keyword_plan_ad_group_keyword.proto b/google/ads/googleads/v5/resources/keyword_plan_ad_group_keyword.proto deleted file mode 100644 index 4a619c5b8..000000000 --- a/google/ads/googleads/v5/resources/keyword_plan_ad_group_keyword.proto +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/keyword_match_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupKeywordProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the keyword plan ad group keyword resource. - -// A Keyword Plan ad group keyword. -// Max number of keyword plan keywords per plan: 10000. -message KeywordPlanAdGroupKeyword { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - pattern: "customers/{customer}/keywordPlanAdGroupKeywords/{keyword_plan_ad_group_keyword}" - }; - - // Immutable. The resource name of the Keyword Plan ad group keyword. - // KeywordPlanAdGroupKeyword resource names have the form: - // - // `customers/{customer_id}/keywordPlanAdGroupKeywords/{kp_ad_group_keyword_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - } - ]; - - // The Keyword Plan ad group to which this keyword belongs. - google.protobuf.StringValue keyword_plan_ad_group = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - }]; - - // Output only. The ID of the Keyword Plan keyword. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The keyword text. - google.protobuf.StringValue text = 4; - - // The keyword match type. - google.ads.googleads.v5.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; - - // A keyword level max cpc bid in micros (e.g. $1 = 1mm). The currency is the - // same as the account currency code. This will override any CPC bid set at - // the keyword plan ad group level. - // Not applicable for negative keywords. (negative = true) - // This field is Optional. - google.protobuf.Int64Value cpc_bid_micros = 6; - - // Immutable. If true, the keyword is negative. - google.protobuf.BoolValue negative = 7 [(google.api.field_behavior) = IMMUTABLE]; -} diff --git a/google/ads/googleads/v5/resources/keyword_plan_campaign.proto b/google/ads/googleads/v5/resources/keyword_plan_campaign.proto deleted file mode 100644 index c1f3d900d..000000000 --- a/google/ads/googleads/v5/resources/keyword_plan_campaign.proto +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/keyword_plan_network.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the keyword plan campaign resource. - -// A Keyword Plan campaign. -// Max number of keyword plan campaigns per plan allowed: 1. -message KeywordPlanCampaign { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - pattern: "customers/{customer}/keywordPlanCampaigns/{keyword_plan_campaign}" - }; - - // Immutable. The resource name of the Keyword Plan campaign. - // KeywordPlanCampaign resource names have the form: - // - // `customers/{customer_id}/keywordPlanCampaigns/{kp_campaign_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - } - ]; - - // The keyword plan this campaign belongs to. - google.protobuf.StringValue keyword_plan = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - }]; - - // Output only. The ID of the Keyword Plan campaign. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the Keyword Plan campaign. - // - // This field is required and should not be empty when creating Keyword Plan - // campaigns. - google.protobuf.StringValue name = 4; - - // The languages targeted for the Keyword Plan campaign. - // Max allowed: 1. - repeated google.protobuf.StringValue language_constants = 5 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/LanguageConstant" - }]; - - // Targeting network. - // - // This field is required and should not be empty when creating Keyword Plan - // campaigns. - google.ads.googleads.v5.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork keyword_plan_network = 6; - - // A default max cpc bid in micros, and in the account currency, for all ad - // groups under the campaign. - // - // This field is required and should not be empty when creating Keyword Plan - // campaigns. - google.protobuf.Int64Value cpc_bid_micros = 7; - - // The geo targets. - // Max number allowed: 20. - repeated KeywordPlanGeoTarget geo_targets = 8; -} - -// A geo target. -message KeywordPlanGeoTarget { - // Required. The resource name of the geo target. - google.protobuf.StringValue geo_target_constant = 1 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - }]; -} diff --git a/google/ads/googleads/v5/resources/keyword_plan_campaign_keyword.proto b/google/ads/googleads/v5/resources/keyword_plan_campaign_keyword.proto deleted file mode 100644 index 95921d2fe..000000000 --- a/google/ads/googleads/v5/resources/keyword_plan_campaign_keyword.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/keyword_match_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignKeywordProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the keyword plan negative keyword resource. - -// A Keyword Plan Campaign keyword. -// Only negative keywords are supported for Campaign Keyword. -message KeywordPlanCampaignKeyword { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - pattern: "customers/{customer}/keywordPlanCampaignKeywords/{keyword_plan_campaign_keyword}" - }; - - // Immutable. The resource name of the Keyword Plan Campaign keyword. - // KeywordPlanCampaignKeyword resource names have the form: - // - // `customers/{customer_id}/keywordPlanCampaignKeywords/{kp_campaign_keyword_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - } - ]; - - // The Keyword Plan campaign to which this negative keyword belongs. - google.protobuf.StringValue keyword_plan_campaign = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - }]; - - // Output only. The ID of the Keyword Plan negative keyword. - google.protobuf.Int64Value id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The keyword text. - google.protobuf.StringValue text = 4; - - // The keyword match type. - google.ads.googleads.v5.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; - - // Immutable. If true, the keyword is negative. - // Must be set to true. Only negative campaign keywords are supported. - google.protobuf.BoolValue negative = 7 [(google.api.field_behavior) = IMMUTABLE]; -} diff --git a/google/ads/googleads/v5/resources/keyword_view.proto b/google/ads/googleads/v5/resources/keyword_view.proto deleted file mode 100644 index b66441aab..000000000 --- a/google/ads/googleads/v5/resources/keyword_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the keyword view resource. - -// A keyword view. -message KeywordView { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordView" - pattern: "customers/{customer}/keywordViews/{keyword_view}" - }; - - // Output only. The resource name of the keyword view. - // Keyword view resource names have the form: - // - // `customers/{customer_id}/keywordViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/label.proto b/google/ads/googleads/v5/resources/label.proto deleted file mode 100644 index ea4193b94..000000000 --- a/google/ads/googleads/v5/resources/label.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/text_label.proto"; -import "google/ads/googleads/v5/enums/label_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LabelProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// A label. -message Label { - option (google.api.resource) = { - type: "googleads.googleapis.com/Label" - pattern: "customers/{customer}/labels/{label}" - }; - - // Immutable. Name of the resource. - // Label resource names have the form: - // `customers/{customer_id}/labels/{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; - - // Output only. Id of the label. Read only. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the label. - // - // This field is required and should not be empty when creating a new label. - // - // The length of this string should be between 1 and 80, inclusive. - google.protobuf.StringValue name = 3; - - // Output only. Status of the label. Read only. - google.ads.googleads.v5.enums.LabelStatusEnum.LabelStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // A type of label displaying text on a colored background. - google.ads.googleads.v5.common.TextLabel text_label = 5; -} diff --git a/google/ads/googleads/v5/resources/landing_page_view.proto b/google/ads/googleads/v5/resources/landing_page_view.proto deleted file mode 100644 index 73f14123e..000000000 --- a/google/ads/googleads/v5/resources/landing_page_view.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LandingPageViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the landing page view resource. - -// A landing page view with metrics aggregated at the unexpanded final URL -// level. -message LandingPageView { - option (google.api.resource) = { - type: "googleads.googleapis.com/LandingPageView" - pattern: "customers/{customer}/landingPageViews/{landing_page_view}" - }; - - // Output only. The resource name of the landing page view. - // Landing page view resource names have the form: - // - // `customers/{customer_id}/landingPageViews/{unexpanded_final_url_fingerprint}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LandingPageView" - } - ]; - - // Output only. The advertiser-specified final URL. - google.protobuf.StringValue unexpanded_final_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/language_constant.proto b/google/ads/googleads/v5/resources/language_constant.proto deleted file mode 100644 index a61289864..000000000 --- a/google/ads/googleads/v5/resources/language_constant.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LanguageConstantProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the language constant resource. - -// A language. -message LanguageConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/LanguageConstant" - pattern: "languageConstants/{language_constant}" - }; - - // Output only. The resource name of the language constant. - // Language constant resource names have the form: - // - // `languageConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LanguageConstant" - } - ]; - - // Output only. The ID of the language constant. - optional int64 id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The language code, e.g. "en_US", "en_AU", "es", "fr", etc. - optional string code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The full name of the language in English, e.g., "English (US)", "Spanish", - // etc. - optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the language is targetable. - optional bool targetable = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/location_view.proto b/google/ads/googleads/v5/resources/location_view.proto deleted file mode 100644 index 1778574ca..000000000 --- a/google/ads/googleads/v5/resources/location_view.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LocationViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the location view resource. - -// A location view summarizes the performance of campaigns by -// Location criteria. -message LocationView { - option (google.api.resource) = { - type: "googleads.googleapis.com/LocationView" - pattern: "customers/{customer}/locationViews/{location_view}" - }; - - // Output only. The resource name of the location view. - // Location view resource names have the form: - // - // `customers/{customer_id}/locationViews/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LocationView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/managed_placement_view.proto b/google/ads/googleads/v5/resources/managed_placement_view.proto deleted file mode 100644 index 73e5a3abe..000000000 --- a/google/ads/googleads/v5/resources/managed_placement_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ManagedPlacementViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Managed Placement view resource. - -// A managed placement view. -message ManagedPlacementView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ManagedPlacementView" - pattern: "customers/{customer}/managedPlacementViews/{managed_placement_view}" - }; - - // Output only. The resource name of the Managed Placement view. - // Managed placement view resource names have the form: - // - // `customers/{customer_id}/managedPlacementViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ManagedPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/media_file.proto b/google/ads/googleads/v5/resources/media_file.proto deleted file mode 100644 index debc14a93..000000000 --- a/google/ads/googleads/v5/resources/media_file.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/media_type.proto"; -import "google/ads/googleads/v5/enums/mime_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MediaFileProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the media file resource. - -// A media file. -message MediaFile { - option (google.api.resource) = { - type: "googleads.googleapis.com/MediaFile" - pattern: "customers/{customer}/mediaFiles/{media_file}" - }; - - // Immutable. The resource name of the media file. - // Media file resource names have the form: - // - // `customers/{customer_id}/mediaFiles/{media_file_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MediaFile" - } - ]; - - // Output only. The ID of the media file. - optional int64 id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Type of the media file. - google.ads.googleads.v5.enums.MediaTypeEnum.MediaType type = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The mime type of the media file. - google.ads.googleads.v5.enums.MimeTypeEnum.MimeType mime_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The URL of where the original media file was downloaded from (or a file - // name). Only used for media of type AUDIO and IMAGE. - optional string source_url = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The name of the media file. The name can be used by clients to help - // identify previously uploaded media. - optional string name = 14 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The size of the media file in bytes. - optional int64 file_size = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The specific type of the media file. - oneof mediatype { - // Immutable. Encapsulates an Image. - MediaImage image = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A ZIP archive media the content of which contains HTML5 assets. - MediaBundle media_bundle = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Encapsulates an Audio. - MediaAudio audio = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Encapsulates a Video. - MediaVideo video = 11 [(google.api.field_behavior) = IMMUTABLE]; - } -} - -// Encapsulates an Image. -message MediaImage { - // Immutable. Raw image data. - optional bytes data = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The url to the full size version of the image. - optional string full_size_image_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The url to the preview size version of the image. - optional string preview_size_image_url = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Represents a ZIP archive media the content of which contains HTML5 assets. -message MediaBundle { - // Immutable. Raw zipped data. - optional bytes data = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The url to access the uploaded zipped data. - // E.g. https://tpc.googlesyndication.com/simgad/123 - // This field is read-only. - optional string url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Encapsulates an Audio. -message MediaAudio { - // Output only. The duration of the Audio in milliseconds. - optional int64 ad_duration_millis = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Encapsulates a Video. -message MediaVideo { - // Output only. The duration of the Video in milliseconds. - optional int64 ad_duration_millis = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The YouTube video ID (as seen in YouTube URLs). - optional string youtube_video_id = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The Advertising Digital Identification code for this video, as defined by - // the American Association of Advertising Agencies, used mainly for - // television commercials. - optional string advertising_id_code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Industry Standard Commercial Identifier code for this video, used - // mainly for television commercials. - optional string isci_code = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/merchant_center_link.proto b/google/ads/googleads/v5/resources/merchant_center_link.proto deleted file mode 100644 index 14c8ea68a..000000000 --- a/google/ads/googleads/v5/resources/merchant_center_link.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/merchant_center_link_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MerchantCenterLinkProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Merchant Center link resource. - -// A data sharing connection, proposed or in use, -// between a Google Ads Customer and a Merchant Center account. -message MerchantCenterLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/MerchantCenterLink" - pattern: "customers/{customer}/merchantCenterLinks/{merchant_center_link}" - }; - - // Immutable. The resource name of the merchant center link. - // Merchant center link resource names have the form: - // - // `customers/{customer_id}/merchantCenterLinks/{merchant_center_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MerchantCenterLink" - } - ]; - - // Output only. The ID of the Merchant Center account. - // This field is readonly. - optional int64 id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the Merchant Center account. - // This field is readonly. - optional string merchant_center_account_name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the link. - google.ads.googleads.v5.enums.MerchantCenterLinkStatusEnum.MerchantCenterLinkStatus status = 5; -} diff --git a/google/ads/googleads/v5/resources/mobile_app_category_constant.proto b/google/ads/googleads/v5/resources/mobile_app_category_constant.proto deleted file mode 100644 index 712751aef..000000000 --- a/google/ads/googleads/v5/resources/mobile_app_category_constant.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MobileAppCategoryConstantProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Mobile App Category Constant resource. - -// A mobile application category constant. -message MobileAppCategoryConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/MobileAppCategoryConstant" - pattern: "mobileAppCategoryConstants/{mobile_app_category_constant}" - }; - - // Output only. The resource name of the mobile app category constant. - // Mobile app category constant resource names have the form: - // - // `mobileAppCategoryConstants/{mobile_app_category_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileAppCategoryConstant" - } - ]; - - // Output only. The ID of the mobile app category constant. - optional int32 id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Mobile app category name. - optional string name = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/mobile_device_constant.proto b/google/ads/googleads/v5/resources/mobile_device_constant.proto deleted file mode 100644 index eeff1018c..000000000 --- a/google/ads/googleads/v5/resources/mobile_device_constant.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/mobile_device_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MobileDeviceConstantProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the mobile device constant resource. - -// A mobile device constant. -message MobileDeviceConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/MobileDeviceConstant" - pattern: "mobileDeviceConstants/{mobile_device_constant}" - }; - - // Output only. The resource name of the mobile device constant. - // Mobile device constant resource names have the form: - // - // `mobileDeviceConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileDeviceConstant" - } - ]; - - // Output only. The ID of the mobile device constant. - optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the mobile device. - optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The manufacturer of the mobile device. - optional string manufacturer_name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The operating system of the mobile device. - optional string operating_system_name = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of mobile device. - google.ads.googleads.v5.enums.MobileDeviceTypeEnum.MobileDeviceType type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/offline_user_data_job.proto b/google/ads/googleads/v5/resources/offline_user_data_job.proto deleted file mode 100644 index 9e8325504..000000000 --- a/google/ads/googleads/v5/resources/offline_user_data_job.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/offline_user_data.proto"; -import "google/ads/googleads/v5/enums/offline_user_data_job_failure_reason.proto"; -import "google/ads/googleads/v5/enums/offline_user_data_job_status.proto"; -import "google/ads/googleads/v5/enums/offline_user_data_job_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the offline user data job resource. - -// A job containing offline user data of store visitors, or user list members -// that will be processed asynchronously. The uploaded data isn't readable and -// the processing results of the job can only be read using -// OfflineUserDataJobService.GetOfflineUserDataJob. -message OfflineUserDataJob { - option (google.api.resource) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - pattern: "customers/{customer}/offlineUserDataJobs/{offline_user_data_job}" - }; - - // Immutable. The resource name of the offline user data job. - // Offline user data job resource names have the form: - // - // `customers/{customer_id}/offlineUserDataJobs/{offline_user_data_job_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; - - // Output only. ID of this offline user data job. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. User specified job ID. - google.protobuf.Int64Value external_id = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Type of the job. - google.ads.googleads.v5.enums.OfflineUserDataJobTypeEnum.OfflineUserDataJobType type = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Status of the job. - google.ads.googleads.v5.enums.OfflineUserDataJobStatusEnum.OfflineUserDataJobStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Reason for the processing failure, if status is FAILED. - google.ads.googleads.v5.enums.OfflineUserDataJobFailureReasonEnum.OfflineUserDataJobFailureReason failure_reason = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Metadata of the job. - oneof metadata { - // Immutable. Metadata for data updates to a CRM-based user list. - google.ads.googleads.v5.common.CustomerMatchUserListMetadata customer_match_user_list_metadata = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Metadata for store sales data update. - google.ads.googleads.v5.common.StoreSalesMetadata store_sales_metadata = 8 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v5/resources/operating_system_version_constant.proto b/google/ads/googleads/v5/resources/operating_system_version_constant.proto deleted file mode 100644 index 9f905a02a..000000000 --- a/google/ads/googleads/v5/resources/operating_system_version_constant.proto +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/operating_system_version_operator_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "OperatingSystemVersionConstantProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the operating system version constant resource. - -// A mobile operating system version or a range of versions, depending on -// `operator_type`. List of available mobile platforms at -// https://developers.google.com/adwords/api/docs/appendix/codes-formats#mobile-platforms -message OperatingSystemVersionConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/OperatingSystemVersionConstant" - pattern: "operatingSystemVersionConstants/{operating_system_version_constant}" - }; - - // Output only. The resource name of the operating system version constant. - // Operating system version constant resource names have the form: - // - // `operatingSystemVersionConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OperatingSystemVersionConstant" - } - ]; - - // Output only. The ID of the operating system version. - optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Name of the operating system. - optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The OS Major Version number. - optional int32 os_major_version = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The OS Minor Version number. - optional int32 os_minor_version = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Determines whether this constant represents a single version or a range of - // versions. - google.ads.googleads.v5.enums.OperatingSystemVersionOperatorTypeEnum.OperatingSystemVersionOperatorType operator_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/paid_organic_search_term_view.proto b/google/ads/googleads/v5/resources/paid_organic_search_term_view.proto deleted file mode 100644 index 30238dc56..000000000 --- a/google/ads/googleads/v5/resources/paid_organic_search_term_view.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "PaidOrganicSearchTermViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the PaidOrganicSearchTermView resource. - -// A paid organic search term view providing a view of search stats across -// ads and organic listings aggregated by search term at the ad group level. -message PaidOrganicSearchTermView { - option (google.api.resource) = { - type: "googleads.googleapis.com/PaidOrganicSearchTermView" - pattern: "customers/{customer}/paidOrganicSearchTermViews/{paid_organic_search_term_view}" - }; - - // Output only. The resource name of the search term view. - // Search term view resource names have the form: - // - // `customers/{customer_id}/paidOrganicSearchTermViews/{campaign_id}~ - // {ad_group_id}~{URL-base64 search term}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaidOrganicSearchTermView" - } - ]; - - // Output only. The search term. - google.protobuf.StringValue search_term = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/parental_status_view.proto b/google/ads/googleads/v5/resources/parental_status_view.proto deleted file mode 100644 index 596a89549..000000000 --- a/google/ads/googleads/v5/resources/parental_status_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ParentalStatusViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the parental status view resource. - -// A parental status view. -message ParentalStatusView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ParentalStatusView" - pattern: "customers/{customer}/parentalStatusViews/{parental_status_view}" - }; - - // Output only. The resource name of the parental status view. - // Parental Status view resource names have the form: - // - // `customers/{customer_id}/parentalStatusViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ParentalStatusView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/payments_account.proto b/google/ads/googleads/v5/resources/payments_account.proto deleted file mode 100644 index 579a27520..000000000 --- a/google/ads/googleads/v5/resources/payments_account.proto +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "PaymentsAccountProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the PaymentsAccount resource. - -// A payments account, which can be used to set up billing for an Ads customer. -message PaymentsAccount { - option (google.api.resource) = { - type: "googleads.googleapis.com/PaymentsAccount" - pattern: "customers/{customer}/paymentsAccounts/{payments_account}" - }; - - // Output only. The resource name of the payments account. - // PaymentsAccount resource names have the form: - // - // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaymentsAccount" - } - ]; - - // Output only. A 16 digit ID used to identify a payments account. - google.protobuf.StringValue payments_account_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the payments account. - google.protobuf.StringValue name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The currency code of the payments account. - // A subset of the currency codes derived from the ISO 4217 standard is - // supported. - google.protobuf.StringValue currency_code = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A 12 digit ID used to identify the payments profile associated with the - // payments account. - google.protobuf.StringValue payments_profile_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A secondary payments profile ID present in uncommon situations, e.g. - // when a sequential liability agreement has been arranged. - google.protobuf.StringValue secondary_payments_profile_id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Paying manager of this payment account. - google.protobuf.StringValue paying_manager_customer = 7 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/product_bidding_category_constant.proto b/google/ads/googleads/v5/resources/product_bidding_category_constant.proto deleted file mode 100644 index 22b4c3ee0..000000000 --- a/google/ads/googleads/v5/resources/product_bidding_category_constant.proto +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/product_bidding_category_level.proto"; -import "google/ads/googleads/v5/enums/product_bidding_category_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryConstantProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ProductBiddingCategoryConstant resource. - -// A Product Bidding Category. -message ProductBiddingCategoryConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - pattern: "productBiddingCategoryConstants/{product_bidding_category_constant}" - }; - - // Output only. The resource name of the product bidding category. - // Product bidding category resource names have the form: - // - // `productBiddingCategoryConstants/{country_code}~{level}~{id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - } - ]; - - // Output only. ID of the product bidding category. - // - // This ID is equivalent to the google_product_category ID as described in - // this article: https://support.google.com/merchants/answer/6324436. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Two-letter upper-case country code of the product bidding category. - google.protobuf.StringValue country_code = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Resource name of the parent product bidding category. - google.protobuf.StringValue product_bidding_category_constant_parent = 4 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - } - ]; - - // Output only. Level of the product bidding category. - google.ads.googleads.v5.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Status of the product bidding category. - google.ads.googleads.v5.enums.ProductBiddingCategoryStatusEnum.ProductBiddingCategoryStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Language code of the product bidding category. - google.protobuf.StringValue language_code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Display value of the product bidding category localized according to - // language_code. - google.protobuf.StringValue localized_name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/product_group_view.proto b/google/ads/googleads/v5/resources/product_group_view.proto deleted file mode 100644 index 490e47601..000000000 --- a/google/ads/googleads/v5/resources/product_group_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ProductGroupViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ProductGroup View resource. - -// A product group view. -message ProductGroupView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ProductGroupView" - pattern: "customers/{customer}/productGroupViews/{product_group_view}" - }; - - // Output only. The resource name of the product group view. - // Product group view resource names have the form: - // - // `customers/{customer_id}/productGroupViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductGroupView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/recommendation.proto b/google/ads/googleads/v5/resources/recommendation.proto deleted file mode 100644 index dbc911a68..000000000 --- a/google/ads/googleads/v5/resources/recommendation.proto +++ /dev/null @@ -1,335 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/criteria.proto"; -import "google/ads/googleads/v5/common/extensions.proto"; -import "google/ads/googleads/v5/enums/keyword_match_type.proto"; -import "google/ads/googleads/v5/enums/recommendation_type.proto"; -import "google/ads/googleads/v5/enums/target_cpa_opt_in_recommendation_goal.proto"; -import "google/ads/googleads/v5/resources/ad.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Recommendation resource. - -// A recommendation. -message Recommendation { - option (google.api.resource) = { - type: "googleads.googleapis.com/Recommendation" - pattern: "customers/{customer}/recommendations/{recommendation}" - }; - - // The impact of making the change as described in the recommendation. - // Some types of recommendations may not have impact information. - message RecommendationImpact { - // Output only. Base metrics at the time the recommendation was generated. - RecommendationMetrics base_metrics = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimated metrics if the recommendation is applied. - RecommendationMetrics potential_metrics = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Weekly account performance metrics. For some recommendation types, these - // are averaged over the past 90-day period and hence can be fractional. - message RecommendationMetrics { - // Output only. Number of ad impressions. - google.protobuf.DoubleValue impressions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Number of ad clicks. - google.protobuf.DoubleValue clicks = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Cost (in micros) for advertising, in the local currency for the account. - google.protobuf.Int64Value cost_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Number of conversions. - google.protobuf.DoubleValue conversions = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Number of video views for a video ad campaign. - google.protobuf.DoubleValue video_views = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The budget recommendation for budget constrained campaigns. - message CampaignBudgetRecommendation { - // The impact estimates for a given budget amount. - message CampaignBudgetRecommendationOption { - // Output only. The budget amount for this option. - google.protobuf.Int64Value budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The impact estimate if budget is changed to amount specified in this - // option. - RecommendationImpact impact = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Output only. The current budget amount in micros. - google.protobuf.Int64Value current_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended budget amount in micros. - google.protobuf.Int64Value recommended_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The budget amounts and associated impact estimates for some values of - // possible budget amounts. - repeated CampaignBudgetRecommendationOption budget_options = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The keyword recommendation. - message KeywordRecommendation { - // Output only. The recommended keyword. - google.ads.googleads.v5.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended CPC (cost-per-click) bid. - google.protobuf.Int64Value recommended_cpc_bid_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Optimize Ad Rotation recommendation. - message OptimizeAdRotationRecommendation { - - } - - // The text ad recommendation. - message TextAdRecommendation { - // Output only. Recommended ad. - Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Creation date of the recommended ad. - // YYYY-MM-DD format, e.g., 2018-04-17. - google.protobuf.StringValue creation_date = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Date, if present, is the earliest when the recommendation will be auto - // applied. - // YYYY-MM-DD format, e.g., 2018-04-17. - google.protobuf.StringValue auto_apply_date = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Target CPA opt-in recommendation. - message TargetCpaOptInRecommendation { - // The Target CPA opt-in option with impact estimate. - message TargetCpaOptInRecommendationOption { - // Output only. The goal achieved by this option. - google.ads.googleads.v5.enums.TargetCpaOptInRecommendationGoalEnum.TargetCpaOptInRecommendationGoal goal = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Average CPA target. - google.protobuf.Int64Value target_cpa_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The minimum campaign budget, in local currency for the account, - // required to achieve the target CPA. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - google.protobuf.Int64Value required_campaign_budget_amount_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The impact estimate if this option is selected. - RecommendationImpact impact = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Output only. The available goals and corresponding options for Target CPA strategy. - repeated TargetCpaOptInRecommendationOption options = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended average CPA target. See required budget amount and impact - // of using this recommendation in options list. - google.protobuf.Int64Value recommended_target_cpa_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Call extension recommendation. - message CallExtensionRecommendation { - // Output only. Call extensions recommended to be added. - repeated google.ads.googleads.v5.common.CallFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Enhanced Cost-Per-Click Opt-In recommendation. - message EnhancedCpcOptInRecommendation { - - } - - // The Maximize Conversions Opt-In recommendation. - message MaximizeConversionsOptInRecommendation { - // Output only. The recommended new budget amount. - google.protobuf.Int64Value recommended_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Search Partners Opt-In recommendation. - message SearchPartnersOptInRecommendation { - - } - - // The Callout extension recommendation. - message CalloutExtensionRecommendation { - // Output only. Callout extensions recommended to be added. - repeated google.ads.googleads.v5.common.CalloutFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Maximize Clicks opt-in recommendation. - message MaximizeClicksOptInRecommendation { - // Output only. The recommended new budget amount. - // Only set if the current budget is too high. - google.protobuf.Int64Value recommended_budget_amount_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The keyword match type recommendation. - message KeywordMatchTypeRecommendation { - // Output only. The existing keyword where the match type should be more broad. - google.ads.googleads.v5.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended new match type. - google.ads.googleads.v5.enums.KeywordMatchTypeEnum.KeywordMatchType recommended_match_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Sitelink extension recommendation. - message SitelinkExtensionRecommendation { - // Output only. Sitelink extensions recommended to be added. - repeated google.ads.googleads.v5.common.SitelinkFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The move unused budget recommendation. - message MoveUnusedBudgetRecommendation { - // Output only. The excess budget's resource_name. - google.protobuf.StringValue excess_campaign_budget = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommendation for the constrained budget to increase. - CampaignBudgetRecommendation budget_recommendation = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Target ROAS opt-in recommendation. - message TargetRoasOptInRecommendation { - // Output only. The recommended target ROAS (revenue per unit of spend). - // The value is between 0.01 and 1000.0, inclusive. - optional double recommended_target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The minimum campaign budget, in local currency for the account, - // required to achieve the target ROAS. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - optional int64 required_campaign_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the recommendation. - // - // `customers/{customer_id}/recommendations/{recommendation_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Recommendation" - } - ]; - - // Output only. The type of recommendation. - google.ads.googleads.v5.enums.RecommendationTypeEnum.RecommendationType type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The impact on account performance as a result of applying the - // recommendation. - RecommendationImpact impact = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The budget targeted by this recommendation. This will be set only when - // the recommendation affects a single campaign budget. - // - // This field will be set for the following recommendation types: - // CAMPAIGN_BUDGET, FORECASTING_CAMPAIGN_BUDGET, MOVE_UNUSED_BUDGET - google.protobuf.StringValue campaign_budget = 5 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - } - ]; - - // Output only. The campaign targeted by this recommendation. This will be set only when - // the recommendation affects a single campaign. - // - // This field will be set for the following recommendation types: - // CALL_EXTENSION, CALLOUT_EXTENSION, ENHANCED_CPC_OPT_IN, KEYWORD, - // KEYWORD_MATCH_TYPE, MAXIMIZE_CLICKS_OPT_IN, MAXIMIZE_CONVERSIONS_OPT_IN, - // OPTIMIZE_AD_ROTATION, SEARCH_PARTNERS_OPT_IN, SITELINK_EXTENSION, - // TARGET_CPA_OPT_IN, TARGET_ROAS_OPT_IN, TEXT_AD - google.protobuf.StringValue campaign = 6 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ad group targeted by this recommendation. This will be set only when - // the recommendation affects a single ad group. - // - // This field will be set for the following recommendation types: - // KEYWORD, OPTIMIZE_AD_ROTATION, TEXT_AD - google.protobuf.StringValue ad_group = 7 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Whether the recommendation is dismissed or not. - google.protobuf.BoolValue dismissed = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The details of recommendation. - oneof recommendation { - // Output only. The campaign budget recommendation. - CampaignBudgetRecommendation campaign_budget_recommendation = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The keyword recommendation. - KeywordRecommendation keyword_recommendation = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Add expanded text ad recommendation. - TextAdRecommendation text_ad_recommendation = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The TargetCPA opt-in recommendation. - TargetCpaOptInRecommendation target_cpa_opt_in_recommendation = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The MaximizeConversions Opt-In recommendation. - MaximizeConversionsOptInRecommendation maximize_conversions_opt_in_recommendation = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Enhanced Cost-Per-Click Opt-In recommendation. - EnhancedCpcOptInRecommendation enhanced_cpc_opt_in_recommendation = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Search Partners Opt-In recommendation. - SearchPartnersOptInRecommendation search_partners_opt_in_recommendation = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The MaximizeClicks Opt-In recommendation. - MaximizeClicksOptInRecommendation maximize_clicks_opt_in_recommendation = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Optimize Ad Rotation recommendation. - OptimizeAdRotationRecommendation optimize_ad_rotation_recommendation = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Callout extension recommendation. - CalloutExtensionRecommendation callout_extension_recommendation = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Sitelink extension recommendation. - SitelinkExtensionRecommendation sitelink_extension_recommendation = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Call extension recommendation. - CallExtensionRecommendation call_extension_recommendation = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The keyword match type recommendation. - KeywordMatchTypeRecommendation keyword_match_type_recommendation = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The move unused budget recommendation. - MoveUnusedBudgetRecommendation move_unused_budget_recommendation = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Target ROAS opt-in recommendation. - TargetRoasOptInRecommendation target_roas_opt_in_recommendation = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v5/resources/remarketing_action.proto b/google/ads/googleads/v5/resources/remarketing_action.proto deleted file mode 100644 index 1ba395495..000000000 --- a/google/ads/googleads/v5/resources/remarketing_action.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/tag_snippet.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "RemarketingActionProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Remarketing Action resource. - -// A remarketing action. A snippet of JavaScript code that will collect the -// product id and the type of page people visited (product page, shopping cart -// page, purchase page, general site visit) on an advertiser's website. -message RemarketingAction { - option (google.api.resource) = { - type: "googleads.googleapis.com/RemarketingAction" - pattern: "customers/{customer}/remarketingActions/{remarketing_action}" - }; - - // Immutable. The resource name of the remarketing action. - // Remarketing action resource names have the form: - // - // `customers/{customer_id}/remarketingActions/{remarketing_action_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/RemarketingAction" - } - ]; - - // Output only. Id of the remarketing action. - optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the remarketing action. - // - // This field is required and should not be empty when creating new - // remarketing actions. - optional string name = 6; - - // Output only. The snippets used for tracking remarketing actions. - repeated google.ads.googleads.v5.common.TagSnippet tag_snippets = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/search_term_view.proto b/google/ads/googleads/v5/resources/search_term_view.proto deleted file mode 100644 index 2ceaa2d93..000000000 --- a/google/ads/googleads/v5/resources/search_term_view.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/search_term_targeting_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the SearchTermView resource. - -// A search term view with metrics aggregated by search term at the ad group -// level. -message SearchTermView { - option (google.api.resource) = { - type: "googleads.googleapis.com/SearchTermView" - pattern: "customers/{customer}/searchTermViews/{search_term_view}" - }; - - // Output only. The resource name of the search term view. - // Search term view resource names have the form: - // - // `customers/{customer_id}/searchTermViews/{campaign_id}~{ad_group_id}~{URL-base64_search_term}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SearchTermView" - } - ]; - - // Output only. The search term. - google.protobuf.StringValue search_term = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ad group the search term served in. - google.protobuf.StringValue ad_group = 3 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Indicates whether the search term is currently one of your - // targeted or excluded keywords. - google.ads.googleads.v5.enums.SearchTermTargetingStatusEnum.SearchTermTargetingStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/shared_criterion.proto b/google/ads/googleads/v5/resources/shared_criterion.proto deleted file mode 100644 index eec74d0fe..000000000 --- a/google/ads/googleads/v5/resources/shared_criterion.proto +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/criteria.proto"; -import "google/ads/googleads/v5/enums/criterion_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "SharedCriterionProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the SharedCriterion resource. - -// A criterion belonging to a shared set. -message SharedCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/SharedCriterion" - pattern: "customers/{customer}/sharedCriteria/{shared_criterion}" - }; - - // Immutable. The resource name of the shared criterion. - // Shared set resource names have the form: - // - // `customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedCriterion" - } - ]; - - // Immutable. The shared set to which the shared criterion belongs. - optional string shared_set = 10 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; - - // Output only. The ID of the criterion. - // - // This field is ignored for mutates. - optional int64 criterion_id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of the criterion. - google.ads.googleads.v5.enums.CriterionTypeEnum.CriterionType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. Keyword. - google.ads.googleads.v5.common.KeywordInfo keyword = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v5.common.YouTubeVideoInfo youtube_video = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v5.common.YouTubeChannelInfo youtube_channel = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v5.common.PlacementInfo placement = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile App Category. - google.ads.googleads.v5.common.MobileAppCategoryInfo mobile_app_category = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile application. - google.ads.googleads.v5.common.MobileApplicationInfo mobile_application = 9 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v5/resources/shared_set.proto b/google/ads/googleads/v5/resources/shared_set.proto deleted file mode 100644 index de2a5a080..000000000 --- a/google/ads/googleads/v5/resources/shared_set.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/enums/shared_set_status.proto"; -import "google/ads/googleads/v5/enums/shared_set_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the SharedSet resource. - -// SharedSets are used for sharing criterion exclusions across multiple -// campaigns. -message SharedSet { - option (google.api.resource) = { - type: "googleads.googleapis.com/SharedSet" - pattern: "customers/{customer}/sharedSets/{shared_set}" - }; - - // Immutable. The resource name of the shared set. - // Shared set resource names have the form: - // - // `customers/{customer_id}/sharedSets/{shared_set_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; - - // Output only. The ID of this shared set. Read only. - optional int64 id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The type of this shared set: each shared set holds only a single kind - // of resource. Required. Immutable. - google.ads.googleads.v5.enums.SharedSetTypeEnum.SharedSetType type = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // The name of this shared set. Required. - // Shared Sets must have names that are unique among active shared sets of - // the same type. - // The length of this string should be between 1 and 255 UTF-8 bytes, - // inclusive. - optional string name = 9; - - // Output only. The status of this shared set. Read only. - google.ads.googleads.v5.enums.SharedSetStatusEnum.SharedSetStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of shared criteria within this shared set. Read only. - optional int64 member_count = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of campaigns associated with this shared set. Read only. - optional int64 reference_count = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/shopping_performance_view.proto b/google/ads/googleads/v5/resources/shopping_performance_view.proto deleted file mode 100644 index 2acb3390f..000000000 --- a/google/ads/googleads/v5/resources/shopping_performance_view.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ShoppingPerformanceViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the ShoppingPerformanceView resource. - -// Shopping performance view. -// Provides Shopping campaign statistics aggregated at several product dimension -// levels. Product dimension values from Merchant Center such as brand, -// category, custom attributes, product condition and product type will reflect -// the state of each dimension as of the date and time when the corresponding -// event was recorded. -message ShoppingPerformanceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ShoppingPerformanceView" - pattern: "customers/{customer}/shoppingPerformanceView" - }; - - // Output only. The resource name of the Shopping performance view. - // Shopping performance view resource names have the form: - // `customers/{customer_id}/shoppingPerformanceView` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ShoppingPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/third_party_app_analytics_link.proto b/google/ads/googleads/v5/resources/third_party_app_analytics_link.proto deleted file mode 100644 index 7f8f3912b..000000000 --- a/google/ads/googleads/v5/resources/third_party_app_analytics_link.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ThirdPartyAppAnalyticsLinkProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// A data sharing connection, allowing the import of third party app analytics -// into a Google Ads Customer. -message ThirdPartyAppAnalyticsLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" - pattern: "customers/{customer}/thirdPartyAppAnalyticsLinks/{third_party_app_analytics_link}" - }; - - // Immutable. The resource name of the third party app analytics link. - // Third party app analytics link resource names have the form: - // - // `customers/{customer_id}/thirdPartyAppAnalyticsLinks/{account_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" - } - ]; - - // Output only. The shareable link ID that should be provided to the third party when - // setting up app analytics. This is able to be regenerated using regenerate - // method in the ThirdPartyAppAnalyticsLinkService. - google.protobuf.StringValue shareable_link_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/topic_constant.proto b/google/ads/googleads/v5/resources/topic_constant.proto deleted file mode 100644 index 9ae510d62..000000000 --- a/google/ads/googleads/v5/resources/topic_constant.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "TopicConstantProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the Topic Constant resource. - -// Use topics to target or exclude placements in the Google Display Network -// based on the category into which the placement falls (for example, -// "Pets & Animals/Pets/Dogs"). -message TopicConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/TopicConstant" - pattern: "topicConstants/{topic_constant}" - }; - - // Output only. The resource name of the topic constant. - // topic constant resource names have the form: - // - // `topicConstants/{topic_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicConstant" - } - ]; - - // Output only. The ID of the topic. - optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Resource name of parent of the topic constant. - optional string topic_constant_parent = 6 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicConstant" - } - ]; - - // Output only. The category to target or exclude. Each subsequent element in the array - // describes a more specific sub-category. For example, - // {"Pets & Animals", "Pets", "Dogs"} represents the - // "Pets & Animals/Pets/Dogs" category. List of available topic categories at - // https://developers.google.com/adwords/api/docs/appendix/verticals - repeated string path = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/topic_view.proto b/google/ads/googleads/v5/resources/topic_view.proto deleted file mode 100644 index 2659a85f5..000000000 --- a/google/ads/googleads/v5/resources/topic_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "TopicViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the topic view resource. - -// A topic view. -message TopicView { - option (google.api.resource) = { - type: "googleads.googleapis.com/TopicView" - pattern: "customers/{customer}/topicViews/{topic_view}" - }; - - // Output only. The resource name of the topic view. - // Topic view resource names have the form: - // - // `customers/{customer_id}/topicViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicView" - } - ]; -} diff --git a/google/ads/googleads/v5/resources/user_interest.proto b/google/ads/googleads/v5/resources/user_interest.proto deleted file mode 100644 index b53acdf41..000000000 --- a/google/ads/googleads/v5/resources/user_interest.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/criterion_category_availability.proto"; -import "google/ads/googleads/v5/enums/user_interest_taxonomy_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "UserInterestProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the User Interest resource. - -// A user interest: a particular interest-based vertical to be targeted. -message UserInterest { - option (google.api.resource) = { - type: "googleads.googleapis.com/UserInterest" - pattern: "customers/{customer}/userInterests/{user_interest}" - }; - - // Output only. The resource name of the user interest. - // User interest resource names have the form: - // - // `customers/{customer_id}/userInterests/{user_interest_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserInterest" - } - ]; - - // Output only. Taxonomy type of the user interest. - google.ads.googleads.v5.enums.UserInterestTaxonomyTypeEnum.UserInterestTaxonomyType taxonomy_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ID of the user interest. - google.protobuf.Int64Value user_interest_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the user interest. - google.protobuf.StringValue name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The parent of the user interest. - google.protobuf.StringValue user_interest_parent = 5 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserInterest" - } - ]; - - // Output only. True if the user interest is launched to all channels and locales. - google.protobuf.BoolValue launched_to_all = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Availability information of the user interest. - repeated google.ads.googleads.v5.common.CriterionCategoryAvailability availabilities = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/user_list.proto b/google/ads/googleads/v5/resources/user_list.proto deleted file mode 100644 index c32537790..000000000 --- a/google/ads/googleads/v5/resources/user_list.proto +++ /dev/null @@ -1,168 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/ads/googleads/v5/common/user_lists.proto"; -import "google/ads/googleads/v5/enums/access_reason.proto"; -import "google/ads/googleads/v5/enums/user_list_access_status.proto"; -import "google/ads/googleads/v5/enums/user_list_closing_reason.proto"; -import "google/ads/googleads/v5/enums/user_list_membership_status.proto"; -import "google/ads/googleads/v5/enums/user_list_size_range.proto"; -import "google/ads/googleads/v5/enums/user_list_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "UserListProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the User List resource. - -// A user list. This is a list of users a customer may target. -message UserList { - option (google.api.resource) = { - type: "googleads.googleapis.com/UserList" - pattern: "customers/{customer}/userLists/{user_list}" - }; - - // Immutable. The resource name of the user list. - // User list resource names have the form: - // - // `customers/{customer_id}/userLists/{user_list_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserList" - } - ]; - - // Output only. Id of the user list. - google.protobuf.Int64Value id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A flag that indicates if a user may edit a list. Depends on the list - // ownership and list type. For example, external remarketing user lists are - // not editable. - // - // This field is read-only. - google.protobuf.BoolValue read_only = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Name of this user list. Depending on its access_reason, the user list name - // may not be unique (e.g. if access_reason=SHARED) - google.protobuf.StringValue name = 4; - - // Description of this user list. - google.protobuf.StringValue description = 5; - - // Membership status of this user list. Indicates whether a user list is open - // or active. Only open user lists can accumulate more users and can be - // targeted to. - google.ads.googleads.v5.enums.UserListMembershipStatusEnum.UserListMembershipStatus membership_status = 6; - - // An ID from external system. It is used by user list sellers to correlate - // IDs on their systems. - google.protobuf.StringValue integration_code = 7; - - // Number of days a user's cookie stays on your list since its most recent - // addition to the list. This field must be between 0 and 540 inclusive. - // However, for CRM based userlists, this field can be set to 10000 which - // means no expiration. - // - // It'll be ignored for logical_user_list. - google.protobuf.Int64Value membership_life_span = 8; - - // Output only. Estimated number of users in this user list, on the Google Display Network. - // This value is null if the number of users has not yet been determined. - // - // This field is read-only. - google.protobuf.Int64Value size_for_display = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Size range in terms of number of users of the UserList, on the Google - // Display Network. - // - // This field is read-only. - google.ads.googleads.v5.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_display = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimated number of users in this user list in the google.com domain. - // These are the users available for targeting in Search campaigns. - // This value is null if the number of users has not yet been determined. - // - // This field is read-only. - google.protobuf.Int64Value size_for_search = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Size range in terms of number of users of the UserList, for Search ads. - // - // This field is read-only. - google.ads.googleads.v5.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_search = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Type of this list. - // - // This field is read-only. - google.ads.googleads.v5.enums.UserListTypeEnum.UserListType type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Indicating the reason why this user list membership status is closed. It is - // only populated on lists that were automatically closed due to inactivity, - // and will be cleared once the list membership status becomes open. - google.ads.googleads.v5.enums.UserListClosingReasonEnum.UserListClosingReason closing_reason = 14; - - // Output only. Indicates the reason this account has been granted access to the list. - // The reason can be SHARED, OWNED, LICENSED or SUBSCRIBED. - // - // This field is read-only. - google.ads.googleads.v5.enums.AccessReasonEnum.AccessReason access_reason = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Indicates if this share is still enabled. When a UserList is shared with - // the user this field is set to ENABLED. Later the userList owner can decide - // to revoke the share and make it DISABLED. - // The default value of this field is set to ENABLED. - google.ads.googleads.v5.enums.UserListAccessStatusEnum.UserListAccessStatus account_user_list_status = 16; - - // Indicates if this user list is eligible for Google Search Network. - google.protobuf.BoolValue eligible_for_search = 17; - - // Output only. Indicates this user list is eligible for Google Display Network. - // - // This field is read-only. - google.protobuf.BoolValue eligible_for_display = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The user list. - // - // Exactly one must be set. - oneof user_list { - // User list of CRM users provided by the advertiser. - google.ads.googleads.v5.common.CrmBasedUserListInfo crm_based_user_list = 19; - - // Output only. User list which are similar to users from another UserList. - // These lists are readonly and automatically created by google. - google.ads.googleads.v5.common.SimilarUserListInfo similar_user_list = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // User list generated by a rule. - google.ads.googleads.v5.common.RuleBasedUserListInfo rule_based_user_list = 21; - - // User list that is a custom combination of user lists and user interests. - google.ads.googleads.v5.common.LogicalUserListInfo logical_user_list = 22; - - // User list targeting as a collection of conversion or remarketing actions. - google.ads.googleads.v5.common.BasicUserListInfo basic_user_list = 23; - } -} diff --git a/google/ads/googleads/v5/resources/user_location_view.proto b/google/ads/googleads/v5/resources/user_location_view.proto deleted file mode 100644 index 6a828ba3d..000000000 --- a/google/ads/googleads/v5/resources/user_location_view.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "UserLocationViewProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the user location view resource. - -// A user location view. -// -// User Location View includes all metrics aggregated at the country level, -// one row per country. It reports metrics at the actual physical location of -// the user by targeted or not targeted location. If other segment fields are -// used, you may get more than one row per country. -message UserLocationView { - option (google.api.resource) = { - type: "googleads.googleapis.com/UserLocationView" - pattern: "customers/{customer}/userLocationViews/{user_location_view}" - }; - - // Output only. The resource name of the user location view. - // UserLocation view resource names have the form: - // - // `customers/{customer_id}/userLocationViews/{country_criterion_id}~{targeting_location}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserLocationView" - } - ]; - - // Output only. Criterion Id for the country. - google.protobuf.Int64Value country_criterion_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates whether location was targeted or not. - google.protobuf.BoolValue targeting_location = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/resources/video.proto b/google/ads/googleads/v5/resources/video.proto deleted file mode 100644 index 7f4684ba7..000000000 --- a/google/ads/googleads/v5/resources/video.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "VideoProto"; -option java_package = "com.google.ads.googleads.v5.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V5::Resources"; - -// Proto file describing the video resource. - -// A video. -message Video { - option (google.api.resource) = { - type: "googleads.googleapis.com/Video" - pattern: "customers/{customer}/videos/{video}" - }; - - // Output only. The resource name of the video. - // Video resource names have the form: - // - // `customers/{customer_id}/videos/{video_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Video" - } - ]; - - // Output only. The ID of the video. - google.protobuf.StringValue id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The owner channel id of the video. - google.protobuf.StringValue channel_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The duration of the video in milliseconds. - google.protobuf.Int64Value duration_millis = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The title of the video. - google.protobuf.StringValue title = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v5/services/BUILD.bazel b/google/ads/googleads/v5/services/BUILD.bazel deleted file mode 100644 index 5247aa4cf..000000000 --- a/google/ads/googleads/v5/services/BUILD.bazel +++ /dev/null @@ -1,138 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") -load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "services_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v5/common:common_proto", - "//google/ads/googleads/v5/enums:enums_proto", - "//google/ads/googleads/v5/errors:errors_proto", - "//google/ads/googleads/v5/resources:resources_proto", - "//google/api:annotations_proto", - "//google/api:client_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - "//google/longrunning:operations_proto", - "//google/rpc:status_proto", - "@com_google_protobuf//:empty_proto", - "@com_google_protobuf//:field_mask_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -proto_library_with_info( - name = "services_proto_with_info", - deps = [ - ":services_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_grpc_library", - "java_proto_library", -) - -java_proto_library( - name = "services_java_proto", - deps = [":services_proto"], -) - -java_grpc_library( - name = "services_java_grpc", - srcs = [":services_proto"], - deps = [":services_java_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_grpc_library", - "csharp_proto_library", -) - -csharp_proto_library( - name = "services_csharp_proto", - deps = [":services_proto"], -) - -csharp_grpc_library( - name = "services_csharp_grpc", - srcs = [":services_proto"], - deps = [":services_csharp_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_grpc_library", - "ruby_proto_library", -) - -ruby_proto_library( - name = "services_ruby_proto", - deps = [":services_proto"], -) - -ruby_grpc_library( - name = "services_ruby_grpc", - srcs = [":services_proto"], - deps = [":services_ruby_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_grpc_library", - "py_proto_library", -) - -py_proto_library( - name = "services_py_proto", - deps = [":services_proto"], -) - -py_grpc_library( - name = "services_py_grpc", - srcs = [":services_proto"], - deps = [":services_py_proto"], -) diff --git a/google/ads/googleads/v5/services/account_budget_proposal_service.proto b/google/ads/googleads/v5/services/account_budget_proposal_service.proto deleted file mode 100644 index 32816eaa3..000000000 --- a/google/ads/googleads/v5/services/account_budget_proposal_service.proto +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/account_budget_proposal.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the AccountBudgetProposal service. - -// A service for managing account-level budgets via proposals. -// -// A proposal is a request to create a new budget or make changes to an -// existing one. -// -// Reads for account-level budgets managed by these proposals will be -// supported in a future version. Until then, please use the -// BudgetOrderService from the AdWords API. Learn more at -// https://developers.google.com/adwords/api/docs/guides/budget-order -// -// Mutates: -// The CREATE operation creates a new proposal. -// UPDATE operations aren't supported. -// The REMOVE operation cancels a pending proposal. -service AccountBudgetProposalService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns an account-level budget proposal in full detail. - rpc GetAccountBudgetProposal(GetAccountBudgetProposalRequest) returns (google.ads.googleads.v5.resources.AccountBudgetProposal) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/accountBudgetProposals/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes account budget proposals. Operation statuses - // are returned. - rpc MutateAccountBudgetProposal(MutateAccountBudgetProposalRequest) returns (MutateAccountBudgetProposalResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/accountBudgetProposals:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for -// [AccountBudgetProposalService.GetAccountBudgetProposal][google.ads.googleads.v5.services.AccountBudgetProposalService.GetAccountBudgetProposal]. -message GetAccountBudgetProposalRequest { - // Required. The resource name of the account-level budget proposal to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - } - ]; -} - -// Request message for -// [AccountBudgetProposalService.MutateAccountBudgetProposal][google.ads.googleads.v5.services.AccountBudgetProposalService.MutateAccountBudgetProposal]. -message MutateAccountBudgetProposalRequest { - // Required. The ID of the customer. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on an individual account-level budget proposal. - AccountBudgetProposalOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 3; -} - -// A single operation to propose the creation of a new account-level budget or -// edit/end/remove an existing one. -message AccountBudgetProposalOperation { - // FieldMask that determines which budget fields are modified. While budgets - // may be modified, proposals that propose such modifications are final. - // Therefore, update operations are not supported for proposals. - // - // Proposals that modify budgets have the 'update' proposal type. Specifying - // a mask for any other proposal type is considered an error. - google.protobuf.FieldMask update_mask = 3; - - // The mutate operation. - oneof operation { - // Create operation: A new proposal to create a new budget, edit an - // existing budget, end an actively running budget, or remove an approved - // budget scheduled to start in the future. - // No resource name is expected for the new proposal. - google.ads.googleads.v5.resources.AccountBudgetProposal create = 2; - - // Remove operation: A resource name for the removed proposal is expected, - // in this format: - // - // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` - // A request may be cancelled iff it is pending. - string remove = 1; - } -} - -// Response message for account-level budget mutate operations. -message MutateAccountBudgetProposalResponse { - // The result of the mutate. - MutateAccountBudgetProposalResult result = 2; -} - -// The result for the account budget proposal mutate. -message MutateAccountBudgetProposalResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/account_budget_service.proto b/google/ads/googleads/v5/services/account_budget_service.proto deleted file mode 100644 index d4964fc86..000000000 --- a/google/ads/googleads/v5/services/account_budget_service.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/account_budget.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the AccountBudget service. - -// A service for fetching an account-level budget. -// -// Account-level budgets are mutated by creating proposal resources. -service AccountBudgetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns an account-level budget in full detail. - rpc GetAccountBudget(GetAccountBudgetRequest) returns (google.ads.googleads.v5.resources.AccountBudget) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/accountBudgets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [AccountBudgetService.GetAccountBudget][google.ads.googleads.v5.services.AccountBudgetService.GetAccountBudget]. -message GetAccountBudgetRequest { - // Required. The resource name of the account-level budget to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudget" - } - ]; -} diff --git a/google/ads/googleads/v5/services/account_link_service.proto b/google/ads/googleads/v5/services/account_link_service.proto deleted file mode 100644 index b716c3f1f..000000000 --- a/google/ads/googleads/v5/services/account_link_service.proto +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/account_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// This service allows management of links between Google Ads accounts and other -// accounts. -service AccountLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the account link in full detail. - rpc GetAccountLink(GetAccountLinkRequest) returns (google.ads.googleads.v5.resources.AccountLink) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/accountLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates an account link. - rpc CreateAccountLink(CreateAccountLinkRequest) returns (CreateAccountLinkResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/accountLinks:create" - body: "*" - }; - option (google.api.method_signature) = "customer_id,account_link"; - } - - // Creates or removes an account link. - // From V5, create is not supported through - // AccountLinkService.MutateAccountLink. Please use - // AccountLinkService.CreateAccountLink instead. - rpc MutateAccountLink(MutateAccountLinkRequest) returns (MutateAccountLinkResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/accountLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for [AccountLinkService.GetAccountLink][google.ads.googleads.v5.services.AccountLinkService.GetAccountLink]. -message GetAccountLinkRequest { - // Required. Resource name of the account link. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountLink" - } - ]; -} - -// Request message for -// [AccountLinkService.CreateAccountLink][google.ads.googleads.v5.services.AccountLinkService.CreateAccountLink]. -message CreateAccountLinkRequest { - // Required. The ID of the customer for which the account link is created. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The account link to be created. - google.ads.googleads.v5.resources.AccountLink account_link = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for -// [AccountLinkService.CreateAccountLink][google.ads.googleads.v5.services.AccountLinkService.CreateAccountLink]. -message CreateAccountLinkResponse { - // Returned for successful operations. Resource name of the account link. - string resource_name = 1; -} - -// Request message for [AccountLinkService.MutateAccountLink][google.ads.googleads.v5.services.AccountLinkService.MutateAccountLink]. -message MutateAccountLinkRequest { - // Required. The ID of the customer being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the link. - AccountLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single update on an account link. -message AccountLinkOperation { - // The operation to perform. - oneof operation { - // Remove operation: A resource name for the account link to remove is - // expected, in this format: - // - // `customers/{customer_id}/accountLinks/{account_link_id}` - string remove = 3; - } -} - -// Response message for account link mutate. -message MutateAccountLinkResponse { - // Result for the mutate. - MutateAccountLinkResult result = 1; -} - -// The result for the account link mutate. -message MutateAccountLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/ad_group_ad_asset_view_service.proto b/google/ads/googleads/v5/services/ad_group_ad_asset_view_service.proto deleted file mode 100644 index 4bf046f7a..000000000 --- a/google/ads/googleads/v5/services/ad_group_ad_asset_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/ad_group_ad_asset_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdAssetViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the ad group ad asset view service. - -// Service to fetch ad group ad asset views. -service AdGroupAdAssetViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group ad asset view in full detail. - rpc GetAdGroupAdAssetView(GetAdGroupAdAssetViewRequest) returns (google.ads.googleads.v5.resources.AdGroupAdAssetView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupAdAssetViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdGroupAdAssetViewService.GetAdGroupAdAssetView][google.ads.googleads.v5.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView]. -message GetAdGroupAdAssetViewRequest { - // Required. The resource name of the ad group ad asset view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdAssetView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/ad_group_ad_label_service.proto b/google/ads/googleads/v5/services/ad_group_ad_label_service.proto deleted file mode 100644 index 1203eaa95..000000000 --- a/google/ads/googleads/v5/services/ad_group_ad_label_service.proto +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/ad_group_ad_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdLabelServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Ad Group Ad Label service. - -// Service to manage labels on ad group ads. -service AdGroupAdLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group ad label in full detail. - rpc GetAdGroupAdLabel(GetAdGroupAdLabelRequest) returns (google.ads.googleads.v5.resources.AdGroupAdLabel) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupAdLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes ad group ad labels. - // Operation statuses are returned. - rpc MutateAdGroupAdLabels(MutateAdGroupAdLabelsRequest) returns (MutateAdGroupAdLabelsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/adGroupAdLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupAdLabelService.GetAdGroupAdLabel][google.ads.googleads.v5.services.AdGroupAdLabelService.GetAdGroupAdLabel]. -message GetAdGroupAdLabelRequest { - // Required. The resource name of the ad group ad label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdLabel" - } - ]; -} - -// Request message for [AdGroupAdLabelService.MutateAdGroupAdLabels][google.ads.googleads.v5.services.AdGroupAdLabelService.MutateAdGroupAdLabels]. -message MutateAdGroupAdLabelsRequest { - // Required. ID of the customer whose ad group ad labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on ad group ad labels. - repeated AdGroupAdLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an ad group ad label. -message AdGroupAdLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group ad - // label. - google.ads.googleads.v5.resources.AdGroupAdLabel create = 1; - - // Remove operation: A resource name for the ad group ad label - // being removed, in this format: - // - // `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id} - // _{label_id}` - string remove = 2; - } -} - -// Response message for an ad group ad labels mutate. -message MutateAdGroupAdLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupAdLabelResult results = 2; -} - -// The result for an ad group ad label mutate. -message MutateAdGroupAdLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/ad_group_ad_service.proto b/google/ads/googleads/v5/services/ad_group_ad_service.proto deleted file mode 100644 index 2266fd7b6..000000000 --- a/google/ads/googleads/v5/services/ad_group_ad_service.proto +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/common/policy.proto"; -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/ad_group_ad.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Ad Group Ad service. - -// Service to manage ads in an ad group. -service AdGroupAdService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad in full detail. - rpc GetAdGroupAd(GetAdGroupAdRequest) returns (google.ads.googleads.v5.resources.AdGroupAd) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupAds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ads. Operation statuses are returned. - rpc MutateAdGroupAds(MutateAdGroupAdsRequest) returns (MutateAdGroupAdsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/adGroupAds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupAdService.GetAdGroupAd][google.ads.googleads.v5.services.AdGroupAdService.GetAdGroupAd]. -message GetAdGroupAdRequest { - // Required. The resource name of the ad to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; -} - -// Request message for [AdGroupAdService.MutateAdGroupAds][google.ads.googleads.v5.services.AdGroupAdService.MutateAdGroupAds]. -message MutateAdGroupAdsRequest { - // Required. The ID of the customer whose ads are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ads. - repeated AdGroupAdOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an ad group ad. -message AdGroupAdOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // Configuration for how policies are validated. - google.ads.googleads.v5.common.PolicyValidationParameter policy_validation_parameter = 5; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad. - google.ads.googleads.v5.resources.AdGroupAd create = 1; - - // Update operation: The ad is expected to have a valid resource name. - google.ads.googleads.v5.resources.AdGroupAd update = 2; - - // Remove operation: A resource name for the removed ad is expected, - // in this format: - // - // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` - string remove = 3; - } -} - -// Response message for an ad group ad mutate. -message MutateAdGroupAdsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupAdResult results = 2; -} - -// The result for the ad mutate. -message MutateAdGroupAdResult { - // The resource name returned for successful operations. - string resource_name = 1; - - // The mutated ad group ad with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.AdGroupAd ad_group_ad = 2; -} diff --git a/google/ads/googleads/v5/services/ad_group_audience_view_service.proto b/google/ads/googleads/v5/services/ad_group_audience_view_service.proto deleted file mode 100644 index be67fec05..000000000 --- a/google/ads/googleads/v5/services/ad_group_audience_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/ad_group_audience_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAudienceViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the AdGroup Audience View service. - -// Service to manage ad group audience views. -service AdGroupAudienceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group audience view in full detail. - rpc GetAdGroupAudienceView(GetAdGroupAudienceViewRequest) returns (google.ads.googleads.v5.resources.AdGroupAudienceView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupAudienceViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdGroupAudienceViewService.GetAdGroupAudienceView][google.ads.googleads.v5.services.AdGroupAudienceViewService.GetAdGroupAudienceView]. -message GetAdGroupAudienceViewRequest { - // Required. The resource name of the ad group audience view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/ad_group_bid_modifier_service.proto b/google/ads/googleads/v5/services/ad_group_bid_modifier_service.proto deleted file mode 100644 index 15a49cb42..000000000 --- a/google/ads/googleads/v5/services/ad_group_bid_modifier_service.proto +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/ad_group_bid_modifier.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupBidModifierServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Ad Group Bid Modifier service. - -// Service to manage ad group bid modifiers. -service AdGroupBidModifierService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group bid modifier in full detail. - rpc GetAdGroupBidModifier(GetAdGroupBidModifierRequest) returns (google.ads.googleads.v5.resources.AdGroupBidModifier) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupBidModifiers/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad group bid modifiers. - // Operation statuses are returned. - rpc MutateAdGroupBidModifiers(MutateAdGroupBidModifiersRequest) returns (MutateAdGroupBidModifiersResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/adGroupBidModifiers:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupBidModifierService.GetAdGroupBidModifier][google.ads.googleads.v5.services.AdGroupBidModifierService.GetAdGroupBidModifier]. -message GetAdGroupBidModifierRequest { - // Required. The resource name of the ad group bid modifier to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - } - ]; -} - -// Request message for [AdGroupBidModifierService.MutateAdGroupBidModifiers][google.ads.googleads.v5.services.AdGroupBidModifierService.MutateAdGroupBidModifiers]. -message MutateAdGroupBidModifiersRequest { - // Required. ID of the customer whose ad group bid modifiers are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad group bid modifiers. - repeated AdGroupBidModifierOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, remove, update) on an ad group bid modifier. -message AdGroupBidModifierOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group bid - // modifier. - google.ads.googleads.v5.resources.AdGroupBidModifier create = 1; - - // Update operation: The ad group bid modifier is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.AdGroupBidModifier update = 2; - - // Remove operation: A resource name for the removed ad group bid modifier - // is expected, in this format: - // - // `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for ad group bid modifiers mutate. -message MutateAdGroupBidModifiersResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupBidModifierResult results = 2; -} - -// The result for the criterion mutate. -message MutateAdGroupBidModifierResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated ad group bid modifier with only mutable fields after mutate. - // The field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.AdGroupBidModifier ad_group_bid_modifier = 2; -} diff --git a/google/ads/googleads/v5/services/ad_group_criterion_label_service.proto b/google/ads/googleads/v5/services/ad_group_criterion_label_service.proto deleted file mode 100644 index 7509febb7..000000000 --- a/google/ads/googleads/v5/services/ad_group_criterion_label_service.proto +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/ad_group_criterion_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionLabelServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Ad Group Criterion Label service. - -// Service to manage labels on ad group criteria. -service AdGroupCriterionLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group criterion label in full detail. - rpc GetAdGroupCriterionLabel(GetAdGroupCriterionLabelRequest) returns (google.ads.googleads.v5.resources.AdGroupCriterionLabel) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupCriterionLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes ad group criterion labels. - // Operation statuses are returned. - rpc MutateAdGroupCriterionLabels(MutateAdGroupCriterionLabelsRequest) returns (MutateAdGroupCriterionLabelsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/adGroupCriterionLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [AdGroupCriterionLabelService.GetAdGroupCriterionLabel][google.ads.googleads.v5.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel]. -message GetAdGroupCriterionLabelRequest { - // Required. The resource name of the ad group criterion label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionLabel" - } - ]; -} - -// Request message for -// [AdGroupCriterionLabelService.MutateAdGroupCriterionLabels][google.ads.googleads.v5.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels]. -message MutateAdGroupCriterionLabelsRequest { - // Required. ID of the customer whose ad group criterion labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on ad group criterion labels. - repeated AdGroupCriterionLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an ad group criterion label. -message AdGroupCriterionLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group - // label. - google.ads.googleads.v5.resources.AdGroupCriterionLabel create = 1; - - // Remove operation: A resource name for the ad group criterion label - // being removed, in this format: - // - // `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}` - string remove = 2; - } -} - -// Response message for an ad group criterion labels mutate. -message MutateAdGroupCriterionLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupCriterionLabelResult results = 2; -} - -// The result for an ad group criterion label mutate. -message MutateAdGroupCriterionLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/ad_group_criterion_service.proto b/google/ads/googleads/v5/services/ad_group_criterion_service.proto deleted file mode 100644 index c56f0b9a6..000000000 --- a/google/ads/googleads/v5/services/ad_group_criterion_service.proto +++ /dev/null @@ -1,151 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/common/policy.proto"; -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/ad_group_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Ad Group Criterion service. - -// Service to manage ad group criteria. -service AdGroupCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested criterion in full detail. - rpc GetAdGroupCriterion(GetAdGroupCriterionRequest) returns (google.ads.googleads.v5.resources.AdGroupCriterion) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes criteria. Operation statuses are returned. - rpc MutateAdGroupCriteria(MutateAdGroupCriteriaRequest) returns (MutateAdGroupCriteriaResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/adGroupCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupCriterionService.GetAdGroupCriterion][google.ads.googleads.v5.services.AdGroupCriterionService.GetAdGroupCriterion]. -message GetAdGroupCriterionRequest { - // Required. The resource name of the criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; -} - -// Request message for [AdGroupCriterionService.MutateAdGroupCriteria][google.ads.googleads.v5.services.AdGroupCriterionService.MutateAdGroupCriteria]. -message MutateAdGroupCriteriaRequest { - // Required. ID of the customer whose criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual criteria. - repeated AdGroupCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, remove, update) on an ad group criterion. -message AdGroupCriterionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The list of policy violation keys that should not cause a - // PolicyViolationError to be reported. Not all policy violations are - // exemptable, please refer to the is_exemptible field in the returned - // PolicyViolationError. - // - // Resources violating these polices will be saved, but will not be eligible - // to serve. They may begin serving at a later time due to a change in - // policies, re-review of the resource, or a change in advertiser - // certificates. - repeated google.ads.googleads.v5.common.PolicyViolationKey exempt_policy_violation_keys = 5; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new criterion. - google.ads.googleads.v5.resources.AdGroupCriterion create = 1; - - // Update operation: The criterion is expected to have a valid resource - // name. - google.ads.googleads.v5.resources.AdGroupCriterion update = 2; - - // Remove operation: A resource name for the removed criterion is expected, - // in this format: - // - // `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for an ad group criterion mutate. -message MutateAdGroupCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupCriterionResult results = 2; -} - -// The result for the criterion mutate. -message MutateAdGroupCriterionResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated ad group criterion with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.AdGroupCriterion ad_group_criterion = 2; -} diff --git a/google/ads/googleads/v5/services/ad_group_criterion_simulation_service.proto b/google/ads/googleads/v5/services/ad_group_criterion_simulation_service.proto deleted file mode 100644 index a84123aed..000000000 --- a/google/ads/googleads/v5/services/ad_group_criterion_simulation_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/ad_group_criterion_simulation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionSimulationServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the AdGroupCriterionSimulation service. - -// Service to fetch ad group criterion simulations. -service AdGroupCriterionSimulationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group criterion simulation in full detail. - rpc GetAdGroupCriterionSimulation(GetAdGroupCriterionSimulationRequest) returns (google.ads.googleads.v5.resources.AdGroupCriterionSimulation) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupCriterionSimulations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation][google.ads.googleads.v5.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation]. -message GetAdGroupCriterionSimulationRequest { - // Required. The resource name of the ad group criterion simulation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionSimulation" - } - ]; -} diff --git a/google/ads/googleads/v5/services/ad_group_extension_setting_service.proto b/google/ads/googleads/v5/services/ad_group_extension_setting_service.proto deleted file mode 100644 index e00c089c4..000000000 --- a/google/ads/googleads/v5/services/ad_group_extension_setting_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/ad_group_extension_setting.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupExtensionSettingServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the AdGroupExtensionSetting service. - -// Service to manage ad group extension settings. -service AdGroupExtensionSettingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group extension setting in full detail. - rpc GetAdGroupExtensionSetting(GetAdGroupExtensionSettingRequest) returns (google.ads.googleads.v5.resources.AdGroupExtensionSetting) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupExtensionSettings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad group extension settings. Operation - // statuses are returned. - rpc MutateAdGroupExtensionSettings(MutateAdGroupExtensionSettingsRequest) returns (MutateAdGroupExtensionSettingsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/adGroupExtensionSettings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [AdGroupExtensionSettingService.GetAdGroupExtensionSetting][google.ads.googleads.v5.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting]. -message GetAdGroupExtensionSettingRequest { - // Required. The resource name of the ad group extension setting to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupExtensionSetting" - } - ]; -} - -// Request message for -// [AdGroupExtensionSettingService.MutateAdGroupExtensionSettings][google.ads.googleads.v5.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings]. -message MutateAdGroupExtensionSettingsRequest { - // Required. The ID of the customer whose ad group extension settings are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad group extension - // settings. - repeated AdGroupExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on an ad group extension setting. -message AdGroupExtensionSettingOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group - // extension setting. - google.ads.googleads.v5.resources.AdGroupExtensionSetting create = 1; - - // Update operation: The ad group extension setting is expected to have a - // valid resource name. - google.ads.googleads.v5.resources.AdGroupExtensionSetting update = 2; - - // Remove operation: A resource name for the removed ad group extension - // setting is expected, in this format: - // - // `customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}` - string remove = 3; - } -} - -// Response message for an ad group extension setting mutate. -message MutateAdGroupExtensionSettingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupExtensionSettingResult results = 2; -} - -// The result for the ad group extension setting mutate. -message MutateAdGroupExtensionSettingResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/ad_group_feed_service.proto b/google/ads/googleads/v5/services/ad_group_feed_service.proto deleted file mode 100644 index 62baae99f..000000000 --- a/google/ads/googleads/v5/services/ad_group_feed_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/ad_group_feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupFeedServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the AdGroupFeed service. - -// Service to manage ad group feeds. -service AdGroupFeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group feed in full detail. - rpc GetAdGroupFeed(GetAdGroupFeedRequest) returns (google.ads.googleads.v5.resources.AdGroupFeed) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupFeeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad group feeds. Operation statuses are - // returned. - rpc MutateAdGroupFeeds(MutateAdGroupFeedsRequest) returns (MutateAdGroupFeedsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/adGroupFeeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupFeedService.GetAdGroupFeed][google.ads.googleads.v5.services.AdGroupFeedService.GetAdGroupFeed]. -message GetAdGroupFeedRequest { - // Required. The resource name of the ad group feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupFeed" - } - ]; -} - -// Request message for [AdGroupFeedService.MutateAdGroupFeeds][google.ads.googleads.v5.services.AdGroupFeedService.MutateAdGroupFeeds]. -message MutateAdGroupFeedsRequest { - // Required. The ID of the customer whose ad group feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad group feeds. - repeated AdGroupFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an ad group feed. -message AdGroupFeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group feed. - google.ads.googleads.v5.resources.AdGroupFeed create = 1; - - // Update operation: The ad group feed is expected to have a valid resource - // name. - google.ads.googleads.v5.resources.AdGroupFeed update = 2; - - // Remove operation: A resource name for the removed ad group feed is - // expected, in this format: - // - // `customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id}` - string remove = 3; - } -} - -// Response message for an ad group feed mutate. -message MutateAdGroupFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupFeedResult results = 2; -} - -// The result for the ad group feed mutate. -message MutateAdGroupFeedResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated ad group feed with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.AdGroupFeed ad_group_feed = 2; -} diff --git a/google/ads/googleads/v5/services/ad_group_label_service.proto b/google/ads/googleads/v5/services/ad_group_label_service.proto deleted file mode 100644 index bf5df6548..000000000 --- a/google/ads/googleads/v5/services/ad_group_label_service.proto +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/ad_group_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupLabelServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Ad Group Label service. - -// Service to manage labels on ad groups. -service AdGroupLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group label in full detail. - rpc GetAdGroupLabel(GetAdGroupLabelRequest) returns (google.ads.googleads.v5.resources.AdGroupLabel) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes ad group labels. - // Operation statuses are returned. - rpc MutateAdGroupLabels(MutateAdGroupLabelsRequest) returns (MutateAdGroupLabelsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/adGroupLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupLabelService.GetAdGroupLabel][google.ads.googleads.v5.services.AdGroupLabelService.GetAdGroupLabel]. -message GetAdGroupLabelRequest { - // Required. The resource name of the ad group label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupLabel" - } - ]; -} - -// Request message for [AdGroupLabelService.MutateAdGroupLabels][google.ads.googleads.v5.services.AdGroupLabelService.MutateAdGroupLabels]. -message MutateAdGroupLabelsRequest { - // Required. ID of the customer whose ad group labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on ad group labels. - repeated AdGroupLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an ad group label. -message AdGroupLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group - // label. - google.ads.googleads.v5.resources.AdGroupLabel create = 1; - - // Remove operation: A resource name for the ad group label - // being removed, in this format: - // - // `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}` - string remove = 2; - } -} - -// Response message for an ad group labels mutate. -message MutateAdGroupLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupLabelResult results = 2; -} - -// The result for an ad group label mutate. -message MutateAdGroupLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/ad_group_service.proto b/google/ads/googleads/v5/services/ad_group_service.proto deleted file mode 100644 index 3edc87d62..000000000 --- a/google/ads/googleads/v5/services/ad_group_service.proto +++ /dev/null @@ -1,137 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/ad_group.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Ad Group service. - -// Service to manage ad groups. -service AdGroupService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group in full detail. - rpc GetAdGroup(GetAdGroupRequest) returns (google.ads.googleads.v5.resources.AdGroup) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroups/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad groups. Operation statuses are returned. - rpc MutateAdGroups(MutateAdGroupsRequest) returns (MutateAdGroupsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/adGroups:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupService.GetAdGroup][google.ads.googleads.v5.services.AdGroupService.GetAdGroup]. -message GetAdGroupRequest { - // Required. The resource name of the ad group to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; -} - -// Request message for [AdGroupService.MutateAdGroups][google.ads.googleads.v5.services.AdGroupService.MutateAdGroups]. -message MutateAdGroupsRequest { - // Required. The ID of the customer whose ad groups are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad groups. - repeated AdGroupOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an ad group. -message AdGroupOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group. - google.ads.googleads.v5.resources.AdGroup create = 1; - - // Update operation: The ad group is expected to have a valid resource name. - google.ads.googleads.v5.resources.AdGroup update = 2; - - // Remove operation: A resource name for the removed ad group is expected, - // in this format: - // - // `customers/{customer_id}/adGroups/{ad_group_id}` - string remove = 3; - } -} - -// Response message for an ad group mutate. -message MutateAdGroupsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupResult results = 2; -} - -// The result for the ad group mutate. -message MutateAdGroupResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated ad group with only mutable fields after mutate. The field will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.AdGroup ad_group = 2; -} diff --git a/google/ads/googleads/v5/services/ad_group_simulation_service.proto b/google/ads/googleads/v5/services/ad_group_simulation_service.proto deleted file mode 100644 index fe20d55f7..000000000 --- a/google/ads/googleads/v5/services/ad_group_simulation_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/ad_group_simulation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupSimulationServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the AdGroupSimulation service. - -// Service to fetch ad group simulations. -service AdGroupSimulationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group simulation in full detail. - rpc GetAdGroupSimulation(GetAdGroupSimulationRequest) returns (google.ads.googleads.v5.resources.AdGroupSimulation) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adGroupSimulations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdGroupSimulationService.GetAdGroupSimulation][google.ads.googleads.v5.services.AdGroupSimulationService.GetAdGroupSimulation]. -message GetAdGroupSimulationRequest { - // Required. The resource name of the ad group simulation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupSimulation" - } - ]; -} diff --git a/google/ads/googleads/v5/services/ad_parameter_service.proto b/google/ads/googleads/v5/services/ad_parameter_service.proto deleted file mode 100644 index a42a088c8..000000000 --- a/google/ads/googleads/v5/services/ad_parameter_service.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/ad_parameter.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdParameterServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Ad Parameter service. - -// Service to manage ad parameters. -service AdParameterService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad parameter in full detail. - rpc GetAdParameter(GetAdParameterRequest) returns (google.ads.googleads.v5.resources.AdParameter) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adParameters/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad parameters. Operation statuses are - // returned. - rpc MutateAdParameters(MutateAdParametersRequest) returns (MutateAdParametersResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/adParameters:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdParameterService.GetAdParameter][google.ads.googleads.v5.services.AdParameterService.GetAdParameter] -message GetAdParameterRequest { - // Required. The resource name of the ad parameter to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdParameter" - } - ]; -} - -// Request message for [AdParameterService.MutateAdParameters][google.ads.googleads.v5.services.AdParameterService.MutateAdParameters] -message MutateAdParametersRequest { - // Required. The ID of the customer whose ad parameters are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad parameters. - repeated AdParameterOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on ad parameter. -message AdParameterOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad parameter. - google.ads.googleads.v5.resources.AdParameter create = 1; - - // Update operation: The ad parameter is expected to have a valid resource - // name. - google.ads.googleads.v5.resources.AdParameter update = 2; - - // Remove operation: A resource name for the ad parameter to remove is - // expected in this format: - // - // `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}` - string remove = 3; - } -} - -// Response message for an ad parameter mutate. -message MutateAdParametersResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdParameterResult results = 2; -} - -// The result for the ad parameter mutate. -message MutateAdParameterResult { - // The resource name returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/ad_schedule_view_service.proto b/google/ads/googleads/v5/services/ad_schedule_view_service.proto deleted file mode 100644 index 70cfa47eb..000000000 --- a/google/ads/googleads/v5/services/ad_schedule_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/ad_schedule_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdScheduleViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the AdSchedule View service. - -// Service to fetch ad schedule views. -service AdScheduleViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad schedule view in full detail. - rpc GetAdScheduleView(GetAdScheduleViewRequest) returns (google.ads.googleads.v5.resources.AdScheduleView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/adScheduleViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdScheduleViewService.GetAdScheduleView][google.ads.googleads.v5.services.AdScheduleViewService.GetAdScheduleView]. -message GetAdScheduleViewRequest { - // Required. The resource name of the ad schedule view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdScheduleView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/ad_service.proto b/google/ads/googleads/v5/services/ad_service.proto deleted file mode 100644 index e12295e96..000000000 --- a/google/ads/googleads/v5/services/ad_service.proto +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/ad.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Ad service. - -// Service to manage ads. -service AdService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad in full detail. - rpc GetAd(GetAdRequest) returns (google.ads.googleads.v5.resources.Ad) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/ads/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Updates ads. Operation statuses are returned. Updating ads is not supported - // for TextAd, ExpandedDynamicSearchAd, GmailAd and ImageAd. - rpc MutateAds(MutateAdsRequest) returns (MutateAdsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/ads:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdService.GetAd][google.ads.googleads.v5.services.AdService.GetAd]. -message GetAdRequest { - // Required. The resource name of the ad to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Ad" - } - ]; -} - -// Request message for [AdService.MutateAds][google.ads.googleads.v5.services.AdService.MutateAds]. -message MutateAdsRequest { - // Required. The ID of the customer whose ads are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ads. - repeated AdOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single update operation on an ad. -message AdOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 2; - - // The mutate operation. - oneof operation { - // Update operation: The ad is expected to have a valid resource name - // in this format: - // - // `customers/{customer_id}/ads/{ad_id}` - google.ads.googleads.v5.resources.Ad update = 1; - } -} - -// Response message for an ad mutate. -message MutateAdsResponse { - // All results for the mutate. - repeated MutateAdResult results = 2; -} - -// The result for the ad mutate. -message MutateAdResult { - // The resource name returned for successful operations. - string resource_name = 1; - - // The mutated ad with only mutable fields after mutate. The field will only - // be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.Ad ad = 2; -} diff --git a/google/ads/googleads/v5/services/age_range_view_service.proto b/google/ads/googleads/v5/services/age_range_view_service.proto deleted file mode 100644 index 7a30ef35d..000000000 --- a/google/ads/googleads/v5/services/age_range_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/age_range_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AgeRangeViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Age Range View service. - -// Service to manage age range views. -service AgeRangeViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested age range view in full detail. - rpc GetAgeRangeView(GetAgeRangeViewRequest) returns (google.ads.googleads.v5.resources.AgeRangeView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/ageRangeViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AgeRangeViewService.GetAgeRangeView][google.ads.googleads.v5.services.AgeRangeViewService.GetAgeRangeView]. -message GetAgeRangeViewRequest { - // Required. The resource name of the age range view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AgeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/asset_service.proto b/google/ads/googleads/v5/services/asset_service.proto deleted file mode 100644 index fc2742b6e..000000000 --- a/google/ads/googleads/v5/services/asset_service.proto +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/asset.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AssetServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Asset service. - -// Service to manage assets. Asset types can be created with AssetService are -// YoutubeVideoAsset, MediaBundleAsset and ImageAsset. TextAsset should be -// created with Ad inline. -service AssetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested asset in full detail. - rpc GetAsset(GetAssetRequest) returns (google.ads.googleads.v5.resources.Asset) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/assets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates assets. Operation statuses are returned. - rpc MutateAssets(MutateAssetsRequest) returns (MutateAssetsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/assets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AssetService.GetAsset][google.ads.googleads.v5.services.AssetService.GetAsset] -message GetAssetRequest { - // Required. The resource name of the asset to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; -} - -// Request message for [AssetService.MutateAssets][google.ads.googleads.v5.services.AssetService.MutateAssets] -message MutateAssetsRequest { - // Required. The ID of the customer whose assets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual assets. - repeated AssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 3; -} - -// A single operation to create an asset. Supported asset types are -// YoutubeVideoAsset, MediaBundleAsset, ImageAsset, and LeadFormAsset. TextAsset -// should be created with Ad inline. -message AssetOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new asset. - google.ads.googleads.v5.resources.Asset create = 1; - } -} - -// Response message for an asset mutate. -message MutateAssetsResponse { - // All results for the mutate. - repeated MutateAssetResult results = 2; -} - -// The result for the asset mutate. -message MutateAssetResult { - // The resource name returned for successful operations. - string resource_name = 1; - - // The mutated asset with only mutable fields after mutate. The field will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.Asset asset = 2; -} diff --git a/google/ads/googleads/v5/services/batch_job_service.proto b/google/ads/googleads/v5/services/batch_job_service.proto deleted file mode 100644 index 0ce9fb01a..000000000 --- a/google/ads/googleads/v5/services/batch_job_service.proto +++ /dev/null @@ -1,236 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/batch_job.proto"; -import "google/ads/googleads/v5/services/google_ads_service.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the BatchJobService. - -// Service to manage batch jobs. -service BatchJobService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Mutates a batch job. - rpc MutateBatchJob(MutateBatchJobRequest) returns (MutateBatchJobResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/batchJobs:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } - - // Returns the batch job. - rpc GetBatchJob(GetBatchJobRequest) returns (google.ads.googleads.v5.resources.BatchJob) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/batchJobs/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Returns the results of the batch job. The job must be done. - // Supports standard list paging. - rpc ListBatchJobResults(ListBatchJobResultsRequest) returns (ListBatchJobResultsResponse) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/batchJobs/*}:listResults" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Runs the batch job. - // - // The Operation.metadata field type is BatchJobMetadata. When finished, the - // long running operation will not contain errors or a response. Instead, use - // ListBatchJobResults to get the results of the job. - rpc RunBatchJob(RunBatchJobRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v5/{resource_name=customers/*/batchJobs/*}:run" - body: "*" - }; - option (google.api.method_signature) = "resource_name"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.ads.googleads.v5.resources.BatchJob.BatchJobMetadata" - }; - } - - // Add operations to the batch job. - rpc AddBatchJobOperations(AddBatchJobOperationsRequest) returns (AddBatchJobOperationsResponse) { - option (google.api.http) = { - post: "/v5/{resource_name=customers/*/batchJobs/*}:addOperations" - body: "*" - }; - option (google.api.method_signature) = "resource_name,sequence_token,mutate_operations"; - option (google.api.method_signature) = "resource_name,mutate_operations"; - } -} - -// Request message for [BatchJobService.MutateBatchJob][google.ads.googleads.v5.services.BatchJobService.MutateBatchJob]. -message MutateBatchJobRequest { - // Required. The ID of the customer for which to create a batch job. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on an individual batch job. - BatchJobOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation on a batch job. -message BatchJobOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new batch job. - google.ads.googleads.v5.resources.BatchJob create = 1; - } -} - -// Response message for [BatchJobService.MutateBatchJob][google.ads.googleads.v5.services.BatchJobService.MutateBatchJob]. -message MutateBatchJobResponse { - // The result for the mutate. - MutateBatchJobResult result = 1; -} - -// The result for the batch job mutate. -message MutateBatchJobResult { - // The resource name of the batch job. - string resource_name = 1; -} - -// Request message for [BatchJobService.GetBatchJob][google.ads.googleads.v5.services.BatchJobService.GetBatchJob]. -message GetBatchJobRequest { - // Required. The resource name of the batch job to get. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; -} - -// Request message for [BatchJobService.RunBatchJob][google.ads.googleads.v5.services.BatchJobService.RunBatchJob]. -message RunBatchJobRequest { - // Required. The resource name of the BatchJob to run. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; -} - -// Request message for [BatchJobService.AddBatchJobOperations][google.ads.googleads.v5.services.BatchJobService.AddBatchJobOperations]. -message AddBatchJobOperationsRequest { - // Required. The resource name of the batch job. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; - - // A token used to enforce sequencing. - // - // The first AddBatchJobOperations request for a batch job should not set - // sequence_token. Subsequent requests must set sequence_token to the value of - // next_sequence_token received in the previous AddBatchJobOperations - // response. - string sequence_token = 2; - - // Required. The list of mutates being added. - // - // Operations can use negative integers as temp ids to signify dependencies - // between entities created in this batch job. For example, a customer with - // id = 1234 can create a campaign and an ad group in that same campaign by - // creating a campaign in the first operation with the resource name - // explicitly set to "customers/1234/campaigns/-1", and creating an ad group - // in the second operation with the campaign field also set to - // "customers/1234/campaigns/-1". - repeated MutateOperation mutate_operations = 3 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [BatchJobService.AddBatchJobOperations][google.ads.googleads.v5.services.BatchJobService.AddBatchJobOperations]. -message AddBatchJobOperationsResponse { - // The total number of operations added so far for this batch job. - int64 total_operations = 1; - - // The sequence token to be used when calling AddBatchJobOperations again if - // more operations need to be added. The next AddBatchJobOperations request - // must set the sequence_token field to the value of this field. - string next_sequence_token = 2; -} - -// Request message for [BatchJobService.ListBatchJobResults][google.ads.googleads.v5.services.BatchJobService.ListBatchJobResults]. -message ListBatchJobResultsRequest { - // Required. The resource name of the batch job whose results are being listed. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When a page request is too large, the server may decide to - // further limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for [BatchJobService.ListBatchJobResults][google.ads.googleads.v5.services.BatchJobService.ListBatchJobResults]. -message ListBatchJobResultsResponse { - // The list of rows that matched the query. - repeated BatchJobResult results = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; -} - -// An individual batch job result. -message BatchJobResult { - // Index of the mutate operation. - int64 operation_index = 1; - - // Response for the mutate. - // May be empty if errors occurred. - MutateOperationResponse mutate_operation_response = 2; - - // Details of the errors when processing the operation. - google.rpc.Status status = 3; -} diff --git a/google/ads/googleads/v5/services/bidding_strategy_service.proto b/google/ads/googleads/v5/services/bidding_strategy_service.proto deleted file mode 100644 index 189ec294b..000000000 --- a/google/ads/googleads/v5/services/bidding_strategy_service.proto +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/bidding_strategy.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Bidding Strategy service. - -// Service to manage bidding strategies. -service BiddingStrategyService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested bidding strategy in full detail. - rpc GetBiddingStrategy(GetBiddingStrategyRequest) returns (google.ads.googleads.v5.resources.BiddingStrategy) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/biddingStrategies/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes bidding strategies. Operation statuses are - // returned. - rpc MutateBiddingStrategies(MutateBiddingStrategiesRequest) returns (MutateBiddingStrategiesResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/biddingStrategies:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [BiddingStrategyService.GetBiddingStrategy][google.ads.googleads.v5.services.BiddingStrategyService.GetBiddingStrategy]. -message GetBiddingStrategyRequest { - // Required. The resource name of the bidding strategy to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BiddingStrategy" - } - ]; -} - -// Request message for [BiddingStrategyService.MutateBiddingStrategies][google.ads.googleads.v5.services.BiddingStrategyService.MutateBiddingStrategies]. -message MutateBiddingStrategiesRequest { - // Required. The ID of the customer whose bidding strategies are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual bidding strategies. - repeated BiddingStrategyOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a bidding strategy. -message BiddingStrategyOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new bidding - // strategy. - google.ads.googleads.v5.resources.BiddingStrategy create = 1; - - // Update operation: The bidding strategy is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.BiddingStrategy update = 2; - - // Remove operation: A resource name for the removed bidding strategy is - // expected, in this format: - // - // `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}` - string remove = 3; - } -} - -// Response message for bidding strategy mutate. -message MutateBiddingStrategiesResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateBiddingStrategyResult results = 2; -} - -// The result for the bidding strategy mutate. -message MutateBiddingStrategyResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/billing_setup_service.proto b/google/ads/googleads/v5/services/billing_setup_service.proto deleted file mode 100644 index 3ec7f9180..000000000 --- a/google/ads/googleads/v5/services/billing_setup_service.proto +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/billing_setup.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the BillingSetup service. - -// A service for designating the business entity responsible for accrued costs. -// -// A billing setup is associated with a payments account. Billing-related -// activity for all billing setups associated with a particular payments account -// will appear on a single invoice generated monthly. -// -// Mutates: -// The REMOVE operation cancels a pending billing setup. -// The CREATE operation creates a new billing setup. -service BillingSetupService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns a billing setup. - rpc GetBillingSetup(GetBillingSetupRequest) returns (google.ads.googleads.v5.resources.BillingSetup) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/billingSetups/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates a billing setup, or cancels an existing billing setup. - rpc MutateBillingSetup(MutateBillingSetupRequest) returns (MutateBillingSetupResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/billingSetups:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for -// [BillingSetupService.GetBillingSetup][google.ads.googleads.v5.services.BillingSetupService.GetBillingSetup]. -message GetBillingSetupRequest { - // Required. The resource name of the billing setup to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; -} - -// Request message for billing setup mutate operations. -message MutateBillingSetupRequest { - // Required. Id of the customer to apply the billing setup mutate operation to. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform. - BillingSetupOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation on a billing setup, which describes the cancellation of an -// existing billing setup. -message BillingSetupOperation { - // Only one of these operations can be set. "Update" operations are not - // supported. - oneof operation { - // Creates a billing setup. No resource name is expected for the new billing - // setup. - google.ads.googleads.v5.resources.BillingSetup create = 2; - - // Resource name of the billing setup to remove. A setup cannot be - // removed unless it is in a pending state or its scheduled start time is in - // the future. The resource name looks like - // `customers/{customer_id}/billingSetups/{billing_id}`. - string remove = 1; - } -} - -// Response message for a billing setup operation. -message MutateBillingSetupResponse { - // A result that identifies the resource affected by the mutate request. - MutateBillingSetupResult result = 1; -} - -// Result for a single billing setup mutate. -message MutateBillingSetupResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/campaign_asset_service.proto b/google/ads/googleads/v5/services/campaign_asset_service.proto deleted file mode 100644 index ebfa7e62c..000000000 --- a/google/ads/googleads/v5/services/campaign_asset_service.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/campaign_asset.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignAssetServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the CampaignAsset service. - -// Service to manage campaign assets. -service CampaignAssetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign asset in full detail. - rpc GetCampaignAsset(GetCampaignAssetRequest) returns (google.ads.googleads.v5.resources.CampaignAsset) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignAssets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes campaign assets. Operation statuses are returned. - rpc MutateCampaignAssets(MutateCampaignAssetsRequest) returns (MutateCampaignAssetsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaignAssets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignAssetService.GetCampaignAsset][google.ads.googleads.v5.services.CampaignAssetService.GetCampaignAsset]. -message GetCampaignAssetRequest { - // Required. The resource name of the campaign asset to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignAsset" - } - ]; -} - -// Request message for [CampaignAssetService.MutateCampaignAssets][google.ads.googleads.v5.services.CampaignAssetService.MutateCampaignAssets]. -message MutateCampaignAssetsRequest { - // Required. The ID of the customer whose campaign assets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign assets. - repeated CampaignAssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on a campaign asset. -message CampaignAssetOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign - // asset. - google.ads.googleads.v5.resources.CampaignAsset create = 1; - - // Remove operation: A resource name for the removed campaign asset is - // expected, in this format: - // - // `customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}` - string remove = 2; - } -} - -// Response message for a campaign asset mutate. -message MutateCampaignAssetsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 1; - - // All results for the mutate. - repeated MutateCampaignAssetResult results = 2; -} - -// The result for the campaign asset mutate. -message MutateCampaignAssetResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/campaign_audience_view_service.proto b/google/ads/googleads/v5/services/campaign_audience_view_service.proto deleted file mode 100644 index 8be085cd6..000000000 --- a/google/ads/googleads/v5/services/campaign_audience_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/campaign_audience_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignAudienceViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Campaign Audience View service. - -// Service to manage campaign audience views. -service CampaignAudienceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign audience view in full detail. - rpc GetCampaignAudienceView(GetCampaignAudienceViewRequest) returns (google.ads.googleads.v5.resources.CampaignAudienceView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignAudienceViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CampaignAudienceViewService.GetCampaignAudienceView][google.ads.googleads.v5.services.CampaignAudienceViewService.GetCampaignAudienceView]. -message GetCampaignAudienceViewRequest { - // Required. The resource name of the campaign audience view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/campaign_bid_modifier_service.proto b/google/ads/googleads/v5/services/campaign_bid_modifier_service.proto deleted file mode 100644 index f564935d3..000000000 --- a/google/ads/googleads/v5/services/campaign_bid_modifier_service.proto +++ /dev/null @@ -1,132 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/campaign_bid_modifier.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBidModifierServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Campaign Bid Modifier service. - -// Service to manage campaign bid modifiers. -service CampaignBidModifierService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign bid modifier in full detail. - rpc GetCampaignBidModifier(GetCampaignBidModifierRequest) returns (google.ads.googleads.v5.resources.CampaignBidModifier) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignBidModifiers/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign bid modifiers. - // Operation statuses are returned. - rpc MutateCampaignBidModifiers(MutateCampaignBidModifiersRequest) returns (MutateCampaignBidModifiersResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaignBidModifiers:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignBidModifierService.GetCampaignBidModifier][google.ads.googleads.v5.services.CampaignBidModifierService.GetCampaignBidModifier]. -message GetCampaignBidModifierRequest { - // Required. The resource name of the campaign bid modifier to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBidModifier" - } - ]; -} - -// Request message for -// [CampaignBidModifierService.MutateCampaignBidModifiers][google.ads.googleads.v5.services.CampaignBidModifierService.MutateCampaignBidModifiers]. -message MutateCampaignBidModifiersRequest { - // Required. ID of the customer whose campaign bid modifiers are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign bid modifiers. - repeated CampaignBidModifierOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove, update) on a campaign bid modifier. -message CampaignBidModifierOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign bid - // modifier. - google.ads.googleads.v5.resources.CampaignBidModifier create = 1; - - // Update operation: The campaign bid modifier is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.CampaignBidModifier update = 2; - - // Remove operation: A resource name for the removed campaign bid modifier - // is expected, in this format: - // - // `customers/{customer_id}/CampaignBidModifiers/{campaign_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for campaign bid modifiers mutate. -message MutateCampaignBidModifiersResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignBidModifierResult results = 2; -} - -// The result for the criterion mutate. -message MutateCampaignBidModifierResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/campaign_budget_service.proto b/google/ads/googleads/v5/services/campaign_budget_service.proto deleted file mode 100644 index d013384a6..000000000 --- a/google/ads/googleads/v5/services/campaign_budget_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/campaign_budget.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBudgetServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Campaign Budget service. - -// Service to manage campaign budgets. -service CampaignBudgetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Campaign Budget in full detail. - rpc GetCampaignBudget(GetCampaignBudgetRequest) returns (google.ads.googleads.v5.resources.CampaignBudget) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignBudgets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign budgets. Operation statuses are - // returned. - rpc MutateCampaignBudgets(MutateCampaignBudgetsRequest) returns (MutateCampaignBudgetsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaignBudgets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignBudgetService.GetCampaignBudget][google.ads.googleads.v5.services.CampaignBudgetService.GetCampaignBudget]. -message GetCampaignBudgetRequest { - // Required. The resource name of the campaign budget to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - } - ]; -} - -// Request message for [CampaignBudgetService.MutateCampaignBudgets][google.ads.googleads.v5.services.CampaignBudgetService.MutateCampaignBudgets]. -message MutateCampaignBudgetsRequest { - // Required. The ID of the customer whose campaign budgets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign budgets. - repeated CampaignBudgetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on a campaign budget. -message CampaignBudgetOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new budget. - google.ads.googleads.v5.resources.CampaignBudget create = 1; - - // Update operation: The campaign budget is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.CampaignBudget update = 2; - - // Remove operation: A resource name for the removed budget is expected, in - // this format: - // - // `customers/{customer_id}/campaignBudgets/{budget_id}` - string remove = 3; - } -} - -// Response message for campaign budget mutate. -message MutateCampaignBudgetsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignBudgetResult results = 2; -} - -// The result for the campaign budget mutate. -message MutateCampaignBudgetResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign budget with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.CampaignBudget campaign_budget = 2; -} diff --git a/google/ads/googleads/v5/services/campaign_criterion_service.proto b/google/ads/googleads/v5/services/campaign_criterion_service.proto deleted file mode 100644 index 7f8e1567c..000000000 --- a/google/ads/googleads/v5/services/campaign_criterion_service.proto +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/campaign_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Campaign Criterion service. - -// Service to manage campaign criteria. -service CampaignCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested criterion in full detail. - rpc GetCampaignCriterion(GetCampaignCriterionRequest) returns (google.ads.googleads.v5.resources.CampaignCriterion) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes criteria. Operation statuses are returned. - rpc MutateCampaignCriteria(MutateCampaignCriteriaRequest) returns (MutateCampaignCriteriaResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaignCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignCriterionService.GetCampaignCriterion][google.ads.googleads.v5.services.CampaignCriterionService.GetCampaignCriterion]. -message GetCampaignCriterionRequest { - // Required. The resource name of the criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterion" - } - ]; -} - -// Request message for [CampaignCriterionService.MutateCampaignCriteria][google.ads.googleads.v5.services.CampaignCriterionService.MutateCampaignCriteria]. -message MutateCampaignCriteriaRequest { - // Required. The ID of the customer whose criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual criteria. - repeated CampaignCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on a campaign criterion. -message CampaignCriterionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new criterion. - google.ads.googleads.v5.resources.CampaignCriterion create = 1; - - // Update operation: The criterion is expected to have a valid resource - // name. - google.ads.googleads.v5.resources.CampaignCriterion update = 2; - - // Remove operation: A resource name for the removed criterion is expected, - // in this format: - // - // `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for campaign criterion mutate. -message MutateCampaignCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignCriterionResult results = 2; -} - -// The result for the criterion mutate. -message MutateCampaignCriterionResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign criterion with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.CampaignCriterion campaign_criterion = 2; -} diff --git a/google/ads/googleads/v5/services/campaign_criterion_simulation_service.proto b/google/ads/googleads/v5/services/campaign_criterion_simulation_service.proto deleted file mode 100644 index 6a6ef9271..000000000 --- a/google/ads/googleads/v5/services/campaign_criterion_simulation_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/campaign_criterion_simulation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionSimulationServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the CampaignCriterionSimulation service. - -// Service to fetch campaign criterion simulations. -service CampaignCriterionSimulationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign criterion simulation in full detail. - rpc GetCampaignCriterionSimulation(GetCampaignCriterionSimulationRequest) returns (google.ads.googleads.v5.resources.CampaignCriterionSimulation) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignCriterionSimulations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [CampaignCriterionSimulationService.GetCampaignCriterionSimulation][google.ads.googleads.v5.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation]. -message GetCampaignCriterionSimulationRequest { - // Required. The resource name of the campaign criterion simulation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterionSimulation" - } - ]; -} diff --git a/google/ads/googleads/v5/services/campaign_draft_service.proto b/google/ads/googleads/v5/services/campaign_draft_service.proto deleted file mode 100644 index c90374025..000000000 --- a/google/ads/googleads/v5/services/campaign_draft_service.proto +++ /dev/null @@ -1,213 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/campaign_draft.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Campaign Draft service. - -// Service to manage campaign drafts. -service CampaignDraftService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign draft in full detail. - rpc GetCampaignDraft(GetCampaignDraftRequest) returns (google.ads.googleads.v5.resources.CampaignDraft) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignDrafts/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign drafts. Operation statuses are - // returned. - rpc MutateCampaignDrafts(MutateCampaignDraftsRequest) returns (MutateCampaignDraftsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaignDrafts:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Promotes the changes in a draft back to the base campaign. - // - // This method returns a Long Running Operation (LRO) indicating if the - // Promote is done. Use [Operations.GetOperation] to poll the LRO until it - // is done. Only a done status is returned in the response. See the status - // in the Campaign Draft resource to determine if the promotion was - // successful. If the LRO failed, use - // [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v5.services.CampaignDraftService.ListCampaignDraftAsyncErrors] to view the list of - // error reasons. - rpc PromoteCampaignDraft(PromoteCampaignDraftRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v5/{campaign_draft=customers/*/campaignDrafts/*}:promote" - body: "*" - }; - option (google.api.method_signature) = "campaign_draft"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.protobuf.Empty" - }; - } - - // Returns all errors that occurred during CampaignDraft promote. Throws an - // error if called before campaign draft is promoted. - // Supports standard list paging. - rpc ListCampaignDraftAsyncErrors(ListCampaignDraftAsyncErrorsRequest) returns (ListCampaignDraftAsyncErrorsResponse) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CampaignDraftService.GetCampaignDraft][google.ads.googleads.v5.services.CampaignDraftService.GetCampaignDraft]. -message GetCampaignDraftRequest { - // Required. The resource name of the campaign draft to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; -} - -// Request message for [CampaignDraftService.MutateCampaignDrafts][google.ads.googleads.v5.services.CampaignDraftService.MutateCampaignDrafts]. -message MutateCampaignDraftsRequest { - // Required. The ID of the customer whose campaign drafts are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign drafts. - repeated CampaignDraftOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// Request message for [CampaignDraftService.PromoteCampaignDraft][google.ads.googleads.v5.services.CampaignDraftService.PromoteCampaignDraft]. -message PromoteCampaignDraftRequest { - // Required. The resource name of the campaign draft to promote. - string campaign_draft = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation (create, update, remove) on a campaign draft. -message CampaignDraftOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign - // draft. - google.ads.googleads.v5.resources.CampaignDraft create = 1; - - // Update operation: The campaign draft is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.CampaignDraft update = 2; - - // Remove operation: The campaign draft is expected to have a valid - // resource name, in this format: - // - // `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}` - string remove = 3; - } -} - -// Response message for campaign draft mutate. -message MutateCampaignDraftsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignDraftResult results = 2; -} - -// The result for the campaign draft mutate. -message MutateCampaignDraftResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign draft with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.CampaignDraft campaign_draft = 2; -} - -// Request message for [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v5.services.CampaignDraftService.ListCampaignDraftAsyncErrors]. -message ListCampaignDraftAsyncErrorsRequest { - // Required. The name of the campaign draft from which to retrieve the async errors. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When a page request is too large, the server may decide to - // further limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v5.services.CampaignDraftService.ListCampaignDraftAsyncErrors]. -message ListCampaignDraftAsyncErrorsResponse { - // Details of the errors when performing the asynchronous operation. - repeated google.rpc.Status errors = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; -} diff --git a/google/ads/googleads/v5/services/campaign_experiment_service.proto b/google/ads/googleads/v5/services/campaign_experiment_service.proto deleted file mode 100644 index 6f8b6617f..000000000 --- a/google/ads/googleads/v5/services/campaign_experiment_service.proto +++ /dev/null @@ -1,304 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/campaign_experiment.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/protobuf/empty.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Campaign Experiment service. - -// CampaignExperimentService manages the life cycle of campaign experiments. -// It is used to create new experiments from drafts, modify experiment -// properties, promote changes in an experiment back to its base campaign, -// graduate experiments into new stand-alone campaigns, and to remove an -// experiment. -// -// An experiment consists of two variants or arms - the base campaign and the -// experiment campaign, directing a fixed share of traffic to each arm. -// A campaign experiment is created from a draft of changes to the base campaign -// and will be a snapshot of changes in the draft at the time of creation. -service CampaignExperimentService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign experiment in full detail. - rpc GetCampaignExperiment(GetCampaignExperimentRequest) returns (google.ads.googleads.v5.resources.CampaignExperiment) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignExperiments/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates a campaign experiment based on a campaign draft. The draft campaign - // will be forked into a real campaign (called the experiment campaign) that - // will begin serving ads if successfully created. - // - // The campaign experiment is created immediately with status INITIALIZING. - // This method return a long running operation that tracks the forking of the - // draft campaign. If the forking fails, a list of errors can be retrieved - // using the ListCampaignExperimentAsyncErrors method. The operation's - // metadata will be a StringValue containing the resource name of the created - // campaign experiment. - rpc CreateCampaignExperiment(CreateCampaignExperimentRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaignExperiments:create" - body: "*" - }; - option (google.api.method_signature) = "customer_id,campaign_experiment"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.ads.googleads.v5.services.CreateCampaignExperimentMetadata" - }; - } - - // Updates campaign experiments. Operation statuses are returned. - rpc MutateCampaignExperiments(MutateCampaignExperimentsRequest) returns (MutateCampaignExperimentsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaignExperiments:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Graduates a campaign experiment to a full campaign. The base and experiment - // campaigns will start running independently with their own budgets. - rpc GraduateCampaignExperiment(GraduateCampaignExperimentRequest) returns (GraduateCampaignExperimentResponse) { - option (google.api.http) = { - post: "/v5/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" - body: "*" - }; - option (google.api.method_signature) = "campaign_experiment,campaign_budget"; - } - - // Promotes the changes in a experiment campaign back to the base campaign. - // - // The campaign experiment is updated immediately with status PROMOTING. - // This method return a long running operation that tracks the promoting of - // the experiment campaign. If the promoting fails, a list of errors can be - // retrieved using the ListCampaignExperimentAsyncErrors method. - rpc PromoteCampaignExperiment(PromoteCampaignExperimentRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v5/{campaign_experiment=customers/*/campaignExperiments/*}:promote" - body: "*" - }; - option (google.api.method_signature) = "campaign_experiment"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.protobuf.Empty" - }; - } - - // Immediately ends a campaign experiment, changing the experiment's scheduled - // end date and without waiting for end of day. End date is updated to be the - // time of the request. - rpc EndCampaignExperiment(EndCampaignExperimentRequest) returns (google.protobuf.Empty) { - option (google.api.http) = { - post: "/v5/{campaign_experiment=customers/*/campaignExperiments/*}:end" - body: "*" - }; - option (google.api.method_signature) = "campaign_experiment"; - } - - // Returns all errors that occurred during CampaignExperiment create or - // promote (whichever occurred last). - // Supports standard list paging. - rpc ListCampaignExperimentAsyncErrors(ListCampaignExperimentAsyncErrorsRequest) returns (ListCampaignExperimentAsyncErrorsResponse) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CampaignExperimentService.GetCampaignExperiment][google.ads.googleads.v5.services.CampaignExperimentService.GetCampaignExperiment]. -message GetCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExperiment" - } - ]; -} - -// Request message for [CampaignExperimentService.MutateCampaignExperiments][google.ads.googleads.v5.services.CampaignExperimentService.MutateCampaignExperiments]. -message MutateCampaignExperimentsRequest { - // Required. The ID of the customer whose campaign experiments are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign experiments. - repeated CampaignExperimentOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single update operation on a campaign experiment. -message CampaignExperimentOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 3; - - // The mutate operation. - oneof operation { - // Update operation: The campaign experiment is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.CampaignExperiment update = 1; - - // Remove operation: The campaign experiment is expected to have a valid - // resource name, in this format: - // - // `customers/{customer_id}/campaignExperiments/{campaign_experiment_id}` - string remove = 2; - } -} - -// Response message for campaign experiment mutate. -message MutateCampaignExperimentsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignExperimentResult results = 2; -} - -// The result for the campaign experiment mutate. -message MutateCampaignExperimentResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign experiment with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.CampaignExperiment campaign_experiment = 2; -} - -// Request message for [CampaignExperimentService.CreateCampaignExperiment][google.ads.googleads.v5.services.CampaignExperimentService.CreateCampaignExperiment]. -message CreateCampaignExperimentRequest { - // Required. The ID of the customer whose campaign experiment is being created. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The campaign experiment to be created. - google.ads.googleads.v5.resources.CampaignExperiment campaign_experiment = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 3; -} - -// Message used as metadata returned in Long Running Operations for -// CreateCampaignExperimentRequest -message CreateCampaignExperimentMetadata { - // Resource name of campaign experiment created. - string campaign_experiment = 1; -} - -// Request message for [CampaignExperimentService.GraduateCampaignExperiment][google.ads.googleads.v5.services.CampaignExperimentService.GraduateCampaignExperiment]. -message GraduateCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to graduate. - string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. Resource name of the budget to attach to the campaign graduated from the - // experiment. - string campaign_budget = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for campaign experiment graduate. -message GraduateCampaignExperimentResponse { - // The resource name of the campaign from the graduated experiment. - // This campaign is the same one as CampaignExperiment.experiment_campaign. - string graduated_campaign = 1; -} - -// Request message for [CampaignExperimentService.PromoteCampaignExperiment][google.ads.googleads.v5.services.CampaignExperimentService.PromoteCampaignExperiment]. -message PromoteCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to promote. - string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Request message for [CampaignExperimentService.EndCampaignExperiment][google.ads.googleads.v5.services.CampaignExperimentService.EndCampaignExperiment]. -message EndCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to end. - string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Request message for -// [CampaignExperimentService.ListCampaignExperimentAsyncErrors][google.ads.googleads.v5.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors]. -message ListCampaignExperimentAsyncErrorsRequest { - // Required. The name of the campaign experiment from which to retrieve the async - // errors. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExperiment" - } - ]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When a page request is too large, the server may decide to - // further limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for -// [CampaignExperimentService.ListCampaignExperimentAsyncErrors][google.ads.googleads.v5.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors]. -message ListCampaignExperimentAsyncErrorsResponse { - // Details of the errors when performing the asynchronous operation. - repeated google.rpc.Status errors = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; -} diff --git a/google/ads/googleads/v5/services/campaign_extension_setting_service.proto b/google/ads/googleads/v5/services/campaign_extension_setting_service.proto deleted file mode 100644 index ce8d96103..000000000 --- a/google/ads/googleads/v5/services/campaign_extension_setting_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/campaign_extension_setting.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExtensionSettingServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the CampaignExtensionSetting service. - -// Service to manage campaign extension settings. -service CampaignExtensionSettingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign extension setting in full detail. - rpc GetCampaignExtensionSetting(GetCampaignExtensionSettingRequest) returns (google.ads.googleads.v5.resources.CampaignExtensionSetting) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignExtensionSettings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign extension settings. Operation - // statuses are returned. - rpc MutateCampaignExtensionSettings(MutateCampaignExtensionSettingsRequest) returns (MutateCampaignExtensionSettingsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaignExtensionSettings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [CampaignExtensionSettingService.GetCampaignExtensionSetting][google.ads.googleads.v5.services.CampaignExtensionSettingService.GetCampaignExtensionSetting]. -message GetCampaignExtensionSettingRequest { - // Required. The resource name of the campaign extension setting to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExtensionSetting" - } - ]; -} - -// Request message for -// [CampaignExtensionSettingService.MutateCampaignExtensionSettings][google.ads.googleads.v5.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings]. -message MutateCampaignExtensionSettingsRequest { - // Required. The ID of the customer whose campaign extension settings are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign extension - // settings. - repeated CampaignExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a campaign extension setting. -message CampaignExtensionSettingOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign - // extension setting. - google.ads.googleads.v5.resources.CampaignExtensionSetting create = 1; - - // Update operation: The campaign extension setting is expected to have a - // valid resource name. - google.ads.googleads.v5.resources.CampaignExtensionSetting update = 2; - - // Remove operation: A resource name for the removed campaign extension - // setting is expected, in this format: - // - // `customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}` - string remove = 3; - } -} - -// Response message for a campaign extension setting mutate. -message MutateCampaignExtensionSettingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignExtensionSettingResult results = 2; -} - -// The result for the campaign extension setting mutate. -message MutateCampaignExtensionSettingResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/campaign_feed_service.proto b/google/ads/googleads/v5/services/campaign_feed_service.proto deleted file mode 100644 index e3ec52b7b..000000000 --- a/google/ads/googleads/v5/services/campaign_feed_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/campaign_feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignFeedServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the CampaignFeed service. - -// Service to manage campaign feeds. -service CampaignFeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign feed in full detail. - rpc GetCampaignFeed(GetCampaignFeedRequest) returns (google.ads.googleads.v5.resources.CampaignFeed) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignFeeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign feeds. Operation statuses are - // returned. - rpc MutateCampaignFeeds(MutateCampaignFeedsRequest) returns (MutateCampaignFeedsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaignFeeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignFeedService.GetCampaignFeed][google.ads.googleads.v5.services.CampaignFeedService.GetCampaignFeed]. -message GetCampaignFeedRequest { - // Required. The resource name of the campaign feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignFeed" - } - ]; -} - -// Request message for [CampaignFeedService.MutateCampaignFeeds][google.ads.googleads.v5.services.CampaignFeedService.MutateCampaignFeeds]. -message MutateCampaignFeedsRequest { - // Required. The ID of the customer whose campaign feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign feeds. - repeated CampaignFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on a campaign feed. -message CampaignFeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign feed. - google.ads.googleads.v5.resources.CampaignFeed create = 1; - - // Update operation: The campaign feed is expected to have a valid resource - // name. - google.ads.googleads.v5.resources.CampaignFeed update = 2; - - // Remove operation: A resource name for the removed campaign feed is - // expected, in this format: - // - // `customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id}` - string remove = 3; - } -} - -// Response message for a campaign feed mutate. -message MutateCampaignFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignFeedResult results = 2; -} - -// The result for the campaign feed mutate. -message MutateCampaignFeedResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign feed with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.CampaignFeed campaign_feed = 2; -} diff --git a/google/ads/googleads/v5/services/campaign_label_service.proto b/google/ads/googleads/v5/services/campaign_label_service.proto deleted file mode 100644 index 3d4ace646..000000000 --- a/google/ads/googleads/v5/services/campaign_label_service.proto +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/campaign_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignLabelServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Campaign Label service. - -// Service to manage labels on campaigns. -service CampaignLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign-label relationship in full detail. - rpc GetCampaignLabel(GetCampaignLabelRequest) returns (google.ads.googleads.v5.resources.CampaignLabel) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes campaign-label relationships. - // Operation statuses are returned. - rpc MutateCampaignLabels(MutateCampaignLabelsRequest) returns (MutateCampaignLabelsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaignLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignLabelService.GetCampaignLabel][google.ads.googleads.v5.services.CampaignLabelService.GetCampaignLabel]. -message GetCampaignLabelRequest { - // Required. The resource name of the campaign-label relationship to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignLabel" - } - ]; -} - -// Request message for [CampaignLabelService.MutateCampaignLabels][google.ads.googleads.v5.services.CampaignLabelService.MutateCampaignLabels]. -message MutateCampaignLabelsRequest { - // Required. ID of the customer whose campaign-label relationships are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on campaign-label relationships. - repeated CampaignLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on a campaign-label relationship. -message CampaignLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign-label - // relationship. - google.ads.googleads.v5.resources.CampaignLabel create = 1; - - // Remove operation: A resource name for the campaign-label relationship - // being removed, in this format: - // - // `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}` - string remove = 2; - } -} - -// Response message for a campaign labels mutate. -message MutateCampaignLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignLabelResult results = 2; -} - -// The result for a campaign label mutate. -message MutateCampaignLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/campaign_service.proto b/google/ads/googleads/v5/services/campaign_service.proto deleted file mode 100644 index 2afc51b28..000000000 --- a/google/ads/googleads/v5/services/campaign_service.proto +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/campaign.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Campaign service. - -// Service to manage campaigns. -service CampaignService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign in full detail. - rpc GetCampaign(GetCampaignRequest) returns (google.ads.googleads.v5.resources.Campaign) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaigns/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaigns. Operation statuses are returned. - rpc MutateCampaigns(MutateCampaignsRequest) returns (MutateCampaignsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaigns:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignService.GetCampaign][google.ads.googleads.v5.services.CampaignService.GetCampaign]. -message GetCampaignRequest { - // Required. The resource name of the campaign to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; -} - -// Request message for [CampaignService.MutateCampaigns][google.ads.googleads.v5.services.CampaignService.MutateCampaigns]. -message MutateCampaignsRequest { - // Required. The ID of the customer whose campaigns are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaigns. - repeated CampaignOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on a campaign. -message CampaignOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign. - google.ads.googleads.v5.resources.Campaign create = 1; - - // Update operation: The campaign is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.Campaign update = 2; - - // Remove operation: A resource name for the removed campaign is - // expected, in this format: - // - // `customers/{customer_id}/campaigns/{campaign_id}` - string remove = 3; - } -} - -// Response message for campaign mutate. -message MutateCampaignsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignResult results = 2; -} - -// The result for the campaign mutate. -message MutateCampaignResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign with only mutable fields after mutate. The field will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.Campaign campaign = 2; -} diff --git a/google/ads/googleads/v5/services/campaign_shared_set_service.proto b/google/ads/googleads/v5/services/campaign_shared_set_service.proto deleted file mode 100644 index 9ed34a0a4..000000000 --- a/google/ads/googleads/v5/services/campaign_shared_set_service.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/campaign_shared_set.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Campaign Shared Set service. - -// Service to manage campaign shared sets. -service CampaignSharedSetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign shared set in full detail. - rpc GetCampaignSharedSet(GetCampaignSharedSetRequest) returns (google.ads.googleads.v5.resources.CampaignSharedSet) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/campaignSharedSets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes campaign shared sets. Operation statuses are returned. - rpc MutateCampaignSharedSets(MutateCampaignSharedSetsRequest) returns (MutateCampaignSharedSetsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/campaignSharedSets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignSharedSetService.GetCampaignSharedSet][google.ads.googleads.v5.services.CampaignSharedSetService.GetCampaignSharedSet]. -message GetCampaignSharedSetRequest { - // Required. The resource name of the campaign shared set to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignSharedSet" - } - ]; -} - -// Request message for [CampaignSharedSetService.MutateCampaignSharedSets][google.ads.googleads.v5.services.CampaignSharedSetService.MutateCampaignSharedSets]. -message MutateCampaignSharedSetsRequest { - // Required. The ID of the customer whose campaign shared sets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign shared sets. - repeated CampaignSharedSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an campaign shared set. -message CampaignSharedSetOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign - // shared set. - google.ads.googleads.v5.resources.CampaignSharedSet create = 1; - - // Remove operation: A resource name for the removed campaign shared set is - // expected, in this format: - // - // `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}` - string remove = 3; - } -} - -// Response message for a campaign shared set mutate. -message MutateCampaignSharedSetsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignSharedSetResult results = 2; -} - -// The result for the campaign shared set mutate. -message MutateCampaignSharedSetResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/carrier_constant_service.proto b/google/ads/googleads/v5/services/carrier_constant_service.proto deleted file mode 100644 index 7314a80d2..000000000 --- a/google/ads/googleads/v5/services/carrier_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/carrier_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CarrierConstantServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the carrier constant service. - -// Service to fetch carrier constants. -service CarrierConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested carrier constant in full detail. - rpc GetCarrierConstant(GetCarrierConstantRequest) returns (google.ads.googleads.v5.resources.CarrierConstant) { - option (google.api.http) = { - get: "/v5/{resource_name=carrierConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CarrierConstantService.GetCarrierConstant][google.ads.googleads.v5.services.CarrierConstantService.GetCarrierConstant]. -message GetCarrierConstantRequest { - // Required. Resource name of the carrier constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CarrierConstant" - } - ]; -} diff --git a/google/ads/googleads/v5/services/change_status_service.proto b/google/ads/googleads/v5/services/change_status_service.proto deleted file mode 100644 index 516b42486..000000000 --- a/google/ads/googleads/v5/services/change_status_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/change_status.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Change Status service. - -// Service to fetch change statuses. -service ChangeStatusService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested change status in full detail. - rpc GetChangeStatus(GetChangeStatusRequest) returns (google.ads.googleads.v5.resources.ChangeStatus) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/changeStatus/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for '[ChangeStatusService.GetChangeStatus][google.ads.googleads.v5.services.ChangeStatusService.GetChangeStatus]'. -message GetChangeStatusRequest { - // Required. The resource name of the change status to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ChangeStatus" - } - ]; -} diff --git a/google/ads/googleads/v5/services/click_view_service.proto b/google/ads/googleads/v5/services/click_view_service.proto deleted file mode 100644 index b96030ba0..000000000 --- a/google/ads/googleads/v5/services/click_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/click_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ClickViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the ClickView service. - -// Service to fetch click views. -service ClickViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested click view in full detail. - rpc GetClickView(GetClickViewRequest) returns (google.ads.googleads.v5.resources.ClickView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/clickViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ClickViewService.GetClickView][google.ads.googleads.v5.services.ClickViewService.GetClickView]. -message GetClickViewRequest { - // Required. The resource name of the click view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ClickView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/conversion_action_service.proto b/google/ads/googleads/v5/services/conversion_action_service.proto deleted file mode 100644 index 791c2aea0..000000000 --- a/google/ads/googleads/v5/services/conversion_action_service.proto +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/conversion_action.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Conversion Action service. - -// Service to manage conversion actions. -service ConversionActionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested conversion action. - rpc GetConversionAction(GetConversionActionRequest) returns (google.ads.googleads.v5.resources.ConversionAction) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/conversionActions/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates or removes conversion actions. Operation statuses are - // returned. - rpc MutateConversionActions(MutateConversionActionsRequest) returns (MutateConversionActionsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/conversionActions:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [ConversionActionService.GetConversionAction][google.ads.googleads.v5.services.ConversionActionService.GetConversionAction]. -message GetConversionActionRequest { - // Required. The resource name of the conversion action to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - } - ]; -} - -// Request message for [ConversionActionService.MutateConversionActions][google.ads.googleads.v5.services.ConversionActionService.MutateConversionActions]. -message MutateConversionActionsRequest { - // Required. The ID of the customer whose conversion actions are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual conversion actions. - repeated ConversionActionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a conversion action. -message ConversionActionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new conversion - // action. - google.ads.googleads.v5.resources.ConversionAction create = 1; - - // Update operation: The conversion action is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.ConversionAction update = 2; - - // Remove operation: A resource name for the removed conversion action is - // expected, in this format: - // - // `customers/{customer_id}/conversionActions/{conversion_action_id}` - string remove = 3; - } -} - -// Response message for [ConversionActionService.MutateConversionActions][google.ads.googleads.v5.services.ConversionActionService.MutateConversionActions]. -message MutateConversionActionsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateConversionActionResult results = 2; -} - -// The result for the conversion action mutate. -message MutateConversionActionResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/conversion_adjustment_upload_service.proto b/google/ads/googleads/v5/services/conversion_adjustment_upload_service.proto deleted file mode 100644 index 75e8e4248..000000000 --- a/google/ads/googleads/v5/services/conversion_adjustment_upload_service.proto +++ /dev/null @@ -1,181 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/conversion_adjustment_type.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAdjustmentUploadServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Service to upload conversion adjustments. -service ConversionAdjustmentUploadService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Processes the given conversion adjustments. - rpc UploadConversionAdjustments(UploadConversionAdjustmentsRequest) returns (UploadConversionAdjustmentsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}:uploadConversionAdjustments" - body: "*" - }; - option (google.api.method_signature) = "customer_id,conversion_adjustments,partial_failure"; - } -} - -// Request message for -// [ConversionAdjustmentUploadService.UploadConversionAdjustments][google.ads.googleads.v5.services.ConversionAdjustmentUploadService.UploadConversionAdjustments]. -message UploadConversionAdjustmentsRequest { - // Required. The ID of the customer performing the upload. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The conversion adjustments that are being uploaded. - repeated ConversionAdjustment conversion_adjustments = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried out - // in one transaction if and only if they are all valid. This should always be - // set to true. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// Response message for -// [ConversionAdjustmentUploadService.UploadConversionAdjustments][google.ads.googleads.v5.services.ConversionAdjustmentUploadService.UploadConversionAdjustments]. -message UploadConversionAdjustmentsResponse { - // Errors that pertain to conversion adjustment failures in the partial - // failure mode. Returned when all errors occur inside the adjustments. If any - // errors occur outside the adjustments (e.g. auth errors), we return an RPC - // level error. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - google.rpc.Status partial_failure_error = 1; - - // Returned for successfully processed conversion adjustments. Proto will be - // empty for rows that received an error. Results are not returned when - // validate_only is true. - repeated ConversionAdjustmentResult results = 2; -} - -// A conversion adjustment. -message ConversionAdjustment { - // Resource name of the conversion action associated with this conversion - // adjustment. Note: Although this resource name consists of a customer id and - // a conversion action id, validation will ignore the customer id and use the - // conversion action id as the sole identifier of the conversion action. - optional string conversion_action = 8; - - // The date time at which the adjustment occurred. Must be after the - // conversion_date_time. The timezone must be specified. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string adjustment_date_time = 9; - - // The adjustment type. - google.ads.googleads.v5.enums.ConversionAdjustmentTypeEnum.ConversionAdjustmentType adjustment_type = 5; - - // Information needed to restate the conversion's value. - // Required for restatements. Should not be supplied for retractions. An error - // will be returned if provided for a retraction. - // NOTE: If you want to upload a second restatement with a different adjusted - // value, it must have a new, more recent, adjustment occurrence time. - // Otherwise, it will be treated as a duplicate of the previous restatement - // and ignored. - RestatementValue restatement_value = 6; - - // Identifies the conversion to be adjusted. - oneof conversion_identifier { - // Uniquely identifies a conversion that was reported without an order ID - // specified. - GclidDateTimePair gclid_date_time_pair = 1; - - // The order ID of the conversion to be adjusted. If the conversion was - // reported with an order ID specified, that order ID must be used as the - // identifier here. - string order_id = 7; - } -} - -// Contains information needed to restate a conversion's value. -message RestatementValue { - // The restated conversion value. This is the value of the conversion after - // restatement. For example, to change the value of a conversion from 100 to - // 70, an adjusted value of 70 should be reported. - // NOTE: If you want to upload a second restatement with a different adjusted - // value, it must have a new, more recent, adjustment occurrence time. - // Otherwise, it will be treated as a duplicate of the previous restatement - // and ignored. - optional double adjusted_value = 3; - - // The currency of the restated value. If not provided, then the default - // currency from the conversion action is used, and if that is not set then - // the account currency is used. This is the ISO 4217 3-character currency - // code e.g. USD or EUR. - optional string currency_code = 4; -} - -// Uniquely identifies a conversion that was reported without an order ID -// specified. -message GclidDateTimePair { - // Google click ID (gclid) associated with the original conversion for this - // adjustment. - optional string gclid = 3; - - // The date time at which the original conversion for this adjustment - // occurred. The timezone must be specified. The format is "yyyy-mm-dd - // hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string conversion_date_time = 4; -} - -// Information identifying a successfully processed ConversionAdjustment. -message ConversionAdjustmentResult { - // Resource name of the conversion action associated with this conversion - // adjustment. - optional string conversion_action = 7; - - // The date time at which the adjustment occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string adjustment_date_time = 8; - - // The adjustment type. - google.ads.googleads.v5.enums.ConversionAdjustmentTypeEnum.ConversionAdjustmentType adjustment_type = 5; - - // Identifies the conversion that was adjusted. - oneof conversion_identifier { - // Uniquely identifies a conversion that was reported without an order ID - // specified. - GclidDateTimePair gclid_date_time_pair = 1; - - // The order ID of the conversion that was adjusted. - string order_id = 6; - } -} diff --git a/google/ads/googleads/v5/services/conversion_upload_service.proto b/google/ads/googleads/v5/services/conversion_upload_service.proto deleted file mode 100644 index 1eb6483dd..000000000 --- a/google/ads/googleads/v5/services/conversion_upload_service.proto +++ /dev/null @@ -1,235 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ConversionUploadServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Service to upload conversions. -service ConversionUploadService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Processes the given click conversions. - rpc UploadClickConversions(UploadClickConversionsRequest) returns (UploadClickConversionsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}:uploadClickConversions" - body: "*" - }; - option (google.api.method_signature) = "customer_id,conversions,partial_failure"; - } - - // Processes the given call conversions. - rpc UploadCallConversions(UploadCallConversionsRequest) returns (UploadCallConversionsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}:uploadCallConversions" - body: "*" - }; - option (google.api.method_signature) = "customer_id,conversions,partial_failure"; - } -} - -// Request message for [ConversionUploadService.UploadClickConversions][google.ads.googleads.v5.services.ConversionUploadService.UploadClickConversions]. -message UploadClickConversionsRequest { - // Required. The ID of the customer performing the upload. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The conversions that are being uploaded. - repeated ClickConversion conversions = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // This should always be set to true. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// Response message for [ConversionUploadService.UploadClickConversions][google.ads.googleads.v5.services.ConversionUploadService.UploadClickConversions]. -message UploadClickConversionsResponse { - // Errors that pertain to conversion failures in the partial failure mode. - // Returned when all errors occur inside the conversions. If any errors occur - // outside the conversions (e.g. auth errors), we return an RPC level error. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - google.rpc.Status partial_failure_error = 1; - - // Returned for successfully processed conversions. Proto will be empty for - // rows that received an error. Results are not returned when validate_only is - // true. - repeated ClickConversionResult results = 2; -} - -// Request message for [ConversionUploadService.UploadCallConversions][google.ads.googleads.v5.services.ConversionUploadService.UploadCallConversions]. -message UploadCallConversionsRequest { - // Required. The ID of the customer performing the upload. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The conversions that are being uploaded. - repeated CallConversion conversions = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // This should always be set to true. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// Response message for [ConversionUploadService.UploadCallConversions][google.ads.googleads.v5.services.ConversionUploadService.UploadCallConversions]. -message UploadCallConversionsResponse { - // Errors that pertain to conversion failures in the partial failure mode. - // Returned when all errors occur inside the conversions. If any errors occur - // outside the conversions (e.g. auth errors), we return an RPC level error. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - google.rpc.Status partial_failure_error = 1; - - // Returned for successfully processed conversions. Proto will be empty for - // rows that received an error. Results are not returned when validate_only is - // true. - repeated CallConversionResult results = 2; -} - -// A click conversion. -message ClickConversion { - // The Google click ID (gclid) associated with this conversion. - optional string gclid = 9; - - // Resource name of the conversion action associated with this conversion. - // Note: Although this resource name consists of a customer id and a - // conversion action id, validation will ignore the customer id and use the - // conversion action id as the sole identifier of the conversion action. - optional string conversion_action = 10; - - // The date time at which the conversion occurred. Must be after - // the click time. The timezone must be specified. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. “2019-01-01 12:32:45-08:00”. - optional string conversion_date_time = 11; - - // The value of the conversion for the advertiser. - optional double conversion_value = 12; - - // Currency associated with the conversion value. This is the ISO 4217 - // 3-character currency code. For example: USD, EUR. - optional string currency_code = 13; - - // The order ID associated with the conversion. An order id can only be used - // for one conversion per conversion action. - optional string order_id = 14; - - // Additional data about externally attributed conversions. This field - // is required for conversions with an externally attributed conversion - // action, but should not be set otherwise. - ExternalAttributionData external_attribution_data = 7; -} - -// A call conversion. -message CallConversion { - // The caller id from which this call was placed. Caller id is expected to be - // in E.164 format with preceding '+' sign. e.g. "+16502531234". - optional string caller_id = 7; - - // The date time at which the call occurred. The timezone must be specified. - // The format is "yyyy-mm-dd hh:mm:ss+|-hh:mm", - // e.g. "2019-01-01 12:32:45-08:00". - optional string call_start_date_time = 8; - - // Resource name of the conversion action associated with this conversion. - // Note: Although this resource name consists of a customer id and a - // conversion action id, validation will ignore the customer id and use the - // conversion action id as the sole identifier of the conversion action. - optional string conversion_action = 9; - - // The date time at which the conversion occurred. Must be after the call - // time. The timezone must be specified. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string conversion_date_time = 10; - - // The value of the conversion for the advertiser. - optional double conversion_value = 11; - - // Currency associated with the conversion value. This is the ISO 4217 - // 3-character currency code. For example: USD, EUR. - optional string currency_code = 12; -} - -// Contains additional information about externally attributed conversions. -message ExternalAttributionData { - // Represents the fraction of the conversion that is attributed to the - // Google Ads click. - optional double external_attribution_credit = 3; - - // Specifies the attribution model name. - optional string external_attribution_model = 4; -} - -// Identifying information for a successfully processed ClickConversion. -message ClickConversionResult { - // The Google Click ID (gclid) associated with this conversion. - optional string gclid = 4; - - // Resource name of the conversion action associated with this conversion. - optional string conversion_action = 5; - - // The date time at which the conversion occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. “2019-01-01 12:32:45-08:00”. - optional string conversion_date_time = 6; -} - -// Identifying information for a successfully processed CallConversionUpload. -message CallConversionResult { - // The caller id from which this call was placed. Caller id is expected to be - // in E.164 format with preceding '+' sign. - optional string caller_id = 5; - - // The date time at which the call occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string call_start_date_time = 6; - - // Resource name of the conversion action associated with this conversion. - optional string conversion_action = 7; - - // The date time at which the conversion occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string conversion_date_time = 8; -} diff --git a/google/ads/googleads/v5/services/currency_constant_service.proto b/google/ads/googleads/v5/services/currency_constant_service.proto deleted file mode 100644 index ec87161ad..000000000 --- a/google/ads/googleads/v5/services/currency_constant_service.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/currency_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CurrencyConstantServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Service to fetch currency constants. -service CurrencyConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested currency constant. - rpc GetCurrencyConstant(GetCurrencyConstantRequest) returns (google.ads.googleads.v5.resources.CurrencyConstant) { - option (google.api.http) = { - get: "/v5/{resource_name=currencyConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CurrencyConstantService.GetCurrencyConstant][google.ads.googleads.v5.services.CurrencyConstantService.GetCurrencyConstant]. -message GetCurrencyConstantRequest { - // Required. Resource name of the currency constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CurrencyConstant" - } - ]; -} diff --git a/google/ads/googleads/v5/services/custom_interest_service.proto b/google/ads/googleads/v5/services/custom_interest_service.proto deleted file mode 100644 index aa8fc5f3a..000000000 --- a/google/ads/googleads/v5/services/custom_interest_service.proto +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/custom_interest.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Custom Interest service. - -// Service to manage custom interests. -service CustomInterestService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested custom interest in full detail. - rpc GetCustomInterest(GetCustomInterestRequest) returns (google.ads.googleads.v5.resources.CustomInterest) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/customInterests/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates custom interests. Operation statuses are returned. - rpc MutateCustomInterests(MutateCustomInterestsRequest) returns (MutateCustomInterestsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/customInterests:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CustomInterestService.GetCustomInterest][google.ads.googleads.v5.services.CustomInterestService.GetCustomInterest]. -message GetCustomInterestRequest { - // Required. The resource name of the custom interest to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomInterest" - } - ]; -} - -// Request message for [CustomInterestService.MutateCustomInterests][google.ads.googleads.v5.services.CustomInterestService.MutateCustomInterests]. -message MutateCustomInterestsRequest { - // Required. The ID of the customer whose custom interests are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual custom interests. - repeated CustomInterestOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update) on a custom interest. -message CustomInterestOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new custom - // interest. - google.ads.googleads.v5.resources.CustomInterest create = 1; - - // Update operation: The custom interest is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.CustomInterest update = 2; - } -} - -// Response message for custom interest mutate. -message MutateCustomInterestsResponse { - // All results for the mutate. - repeated MutateCustomInterestResult results = 2; -} - -// The result for the custom interest mutate. -message MutateCustomInterestResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/customer_client_link_service.proto b/google/ads/googleads/v5/services/customer_client_link_service.proto deleted file mode 100644 index e444fe5d7..000000000 --- a/google/ads/googleads/v5/services/customer_client_link_service.proto +++ /dev/null @@ -1,103 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/customer_client_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientLinkServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Service to manage customer client links. -service CustomerClientLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested CustomerClientLink in full detail. - rpc GetCustomerClientLink(GetCustomerClientLinkRequest) returns (google.ads.googleads.v5.resources.CustomerClientLink) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/customerClientLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates a customer client link. Operation statuses are returned. - rpc MutateCustomerClientLink(MutateCustomerClientLinkRequest) returns (MutateCustomerClientLinkResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/customerClientLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for [CustomerClientLinkService.GetCustomerClientLink][google.ads.googleads.v5.services.CustomerClientLinkService.GetCustomerClientLink]. -message GetCustomerClientLinkRequest { - // Required. The resource name of the customer client link to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClientLink" - } - ]; -} - -// Request message for [CustomerClientLinkService.MutateCustomerClientLink][google.ads.googleads.v5.services.CustomerClientLinkService.MutateCustomerClientLink]. -message MutateCustomerClientLinkRequest { - // Required. The ID of the customer whose customer link are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the individual CustomerClientLink. - CustomerClientLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation (create, update) on a CustomerClientLink. -message CustomerClientLinkOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new link. - google.ads.googleads.v5.resources.CustomerClientLink create = 1; - - // Update operation: The link is expected to have a valid resource name. - google.ads.googleads.v5.resources.CustomerClientLink update = 2; - } -} - -// Response message for a CustomerClientLink mutate. -message MutateCustomerClientLinkResponse { - // A result that identifies the resource affected by the mutate request. - MutateCustomerClientLinkResult result = 1; -} - -// The result for a single customer client link mutate. -message MutateCustomerClientLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/customer_client_service.proto b/google/ads/googleads/v5/services/customer_client_service.proto deleted file mode 100644 index e8c5cd823..000000000 --- a/google/ads/googleads/v5/services/customer_client_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/customer_client.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Customer Client service. - -// Service to get clients in a customer's hierarchy. -service CustomerClientService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested client in full detail. - rpc GetCustomerClient(GetCustomerClientRequest) returns (google.ads.googleads.v5.resources.CustomerClient) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/customerClients/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CustomerClientService.GetCustomerClient][google.ads.googleads.v5.services.CustomerClientService.GetCustomerClient]. -message GetCustomerClientRequest { - // Required. The resource name of the client to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClient" - } - ]; -} diff --git a/google/ads/googleads/v5/services/customer_extension_setting_service.proto b/google/ads/googleads/v5/services/customer_extension_setting_service.proto deleted file mode 100644 index 3860d80f7..000000000 --- a/google/ads/googleads/v5/services/customer_extension_setting_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/customer_extension_setting.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerExtensionSettingServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the CustomerExtensionSetting service. - -// Service to manage customer extension settings. -service CustomerExtensionSettingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer extension setting in full detail. - rpc GetCustomerExtensionSetting(GetCustomerExtensionSettingRequest) returns (google.ads.googleads.v5.resources.CustomerExtensionSetting) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/customerExtensionSettings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes customer extension settings. Operation - // statuses are returned. - rpc MutateCustomerExtensionSettings(MutateCustomerExtensionSettingsRequest) returns (MutateCustomerExtensionSettingsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/customerExtensionSettings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [CustomerExtensionSettingService.GetCustomerExtensionSetting][google.ads.googleads.v5.services.CustomerExtensionSettingService.GetCustomerExtensionSetting]. -message GetCustomerExtensionSettingRequest { - // Required. The resource name of the customer extension setting to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerExtensionSetting" - } - ]; -} - -// Request message for -// [CustomerExtensionSettingService.MutateCustomerExtensionSettings][google.ads.googleads.v5.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings]. -message MutateCustomerExtensionSettingsRequest { - // Required. The ID of the customer whose customer extension settings are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual customer extension - // settings. - repeated CustomerExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a customer extension setting. -message CustomerExtensionSettingOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new customer - // extension setting. - google.ads.googleads.v5.resources.CustomerExtensionSetting create = 1; - - // Update operation: The customer extension setting is expected to have a - // valid resource name. - google.ads.googleads.v5.resources.CustomerExtensionSetting update = 2; - - // Remove operation: A resource name for the removed customer extension - // setting is expected, in this format: - // - // `customers/{customer_id}/customerExtensionSettings/{extension_type}` - string remove = 3; - } -} - -// Response message for a customer extension setting mutate. -message MutateCustomerExtensionSettingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerExtensionSettingResult results = 2; -} - -// The result for the customer extension setting mutate. -message MutateCustomerExtensionSettingResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/customer_feed_service.proto b/google/ads/googleads/v5/services/customer_feed_service.proto deleted file mode 100644 index c06f4c97c..000000000 --- a/google/ads/googleads/v5/services/customer_feed_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/customer_feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerFeedServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the CustomerFeed service. - -// Service to manage customer feeds. -service CustomerFeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer feed in full detail. - rpc GetCustomerFeed(GetCustomerFeedRequest) returns (google.ads.googleads.v5.resources.CustomerFeed) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/customerFeeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes customer feeds. Operation statuses are - // returned. - rpc MutateCustomerFeeds(MutateCustomerFeedsRequest) returns (MutateCustomerFeedsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/customerFeeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CustomerFeedService.GetCustomerFeed][google.ads.googleads.v5.services.CustomerFeedService.GetCustomerFeed]. -message GetCustomerFeedRequest { - // Required. The resource name of the customer feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerFeed" - } - ]; -} - -// Request message for [CustomerFeedService.MutateCustomerFeeds][google.ads.googleads.v5.services.CustomerFeedService.MutateCustomerFeeds]. -message MutateCustomerFeedsRequest { - // Required. The ID of the customer whose customer feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual customer feeds. - repeated CustomerFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on a customer feed. -message CustomerFeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new customer feed. - google.ads.googleads.v5.resources.CustomerFeed create = 1; - - // Update operation: The customer feed is expected to have a valid resource - // name. - google.ads.googleads.v5.resources.CustomerFeed update = 2; - - // Remove operation: A resource name for the removed customer feed is - // expected, in this format: - // - // `customers/{customer_id}/customerFeeds/{feed_id}` - string remove = 3; - } -} - -// Response message for a customer feed mutate. -message MutateCustomerFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerFeedResult results = 2; -} - -// The result for the customer feed mutate. -message MutateCustomerFeedResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated customer feed with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.CustomerFeed customer_feed = 2; -} diff --git a/google/ads/googleads/v5/services/customer_label_service.proto b/google/ads/googleads/v5/services/customer_label_service.proto deleted file mode 100644 index d09d0ec98..000000000 --- a/google/ads/googleads/v5/services/customer_label_service.proto +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/customer_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerLabelServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Customer Label service. - -// Service to manage labels on customers. -service CustomerLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer-label relationship in full detail. - rpc GetCustomerLabel(GetCustomerLabelRequest) returns (google.ads.googleads.v5.resources.CustomerLabel) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/customerLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes customer-label relationships. - // Operation statuses are returned. - rpc MutateCustomerLabels(MutateCustomerLabelsRequest) returns (MutateCustomerLabelsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/customerLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CustomerLabelService.GetCustomerLabel][google.ads.googleads.v5.services.CustomerLabelService.GetCustomerLabel]. -message GetCustomerLabelRequest { - // Required. The resource name of the customer-label relationship to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerLabel" - } - ]; -} - -// Request message for [CustomerLabelService.MutateCustomerLabels][google.ads.googleads.v5.services.CustomerLabelService.MutateCustomerLabels]. -message MutateCustomerLabelsRequest { - // Required. ID of the customer whose customer-label relationships are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on customer-label relationships. - repeated CustomerLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on a customer-label relationship. -message CustomerLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new customer-label - // relationship. - google.ads.googleads.v5.resources.CustomerLabel create = 1; - - // Remove operation: A resource name for the customer-label relationship - // being removed, in this format: - // - // `customers/{customer_id}/customerLabels/{label_id}` - string remove = 2; - } -} - -// Response message for a customer labels mutate. -message MutateCustomerLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerLabelResult results = 2; -} - -// The result for a customer label mutate. -message MutateCustomerLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/customer_manager_link_service.proto b/google/ads/googleads/v5/services/customer_manager_link_service.proto deleted file mode 100644 index 9ae77bb20..000000000 --- a/google/ads/googleads/v5/services/customer_manager_link_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/customer_manager_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerManagerLinkServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Service to manage customer-manager links. -service CustomerManagerLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested CustomerManagerLink in full detail. - rpc GetCustomerManagerLink(GetCustomerManagerLinkRequest) returns (google.ads.googleads.v5.resources.CustomerManagerLink) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/customerManagerLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates customer manager links. Operation statuses are returned. - rpc MutateCustomerManagerLink(MutateCustomerManagerLinkRequest) returns (MutateCustomerManagerLinkResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/customerManagerLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Moves a client customer to a new manager customer. - // This simplifies the complex request that requires two operations to move - // a client customer to a new manager. i.e: - // 1. Update operation with Status INACTIVE (previous manager) and, - // 2. Update operation with Status ACTIVE (new manager). - rpc MoveManagerLink(MoveManagerLinkRequest) returns (MoveManagerLinkResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" - body: "*" - }; - option (google.api.method_signature) = "customer_id,previous_customer_manager_link,new_manager"; - } -} - -// Request message for [CustomerManagerLinkService.GetCustomerManagerLink][google.ads.googleads.v5.services.CustomerManagerLinkService.GetCustomerManagerLink]. -message GetCustomerManagerLinkRequest { - // Required. The resource name of the CustomerManagerLink to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerManagerLink" - } - ]; -} - -// Request message for [CustomerManagerLinkService.MutateCustomerManagerLink][google.ads.googleads.v5.services.CustomerManagerLinkService.MutateCustomerManagerLink]. -message MutateCustomerManagerLinkRequest { - // Required. The ID of the customer whose customer manager links are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual customer manager links. - repeated CustomerManagerLinkOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Request message for [CustomerManagerLinkService.MoveManagerLink][google.ads.googleads.v5.services.CustomerManagerLinkService.MoveManagerLink]. -message MoveManagerLinkRequest { - // Required. The ID of the client customer that is being moved. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The resource name of the previous CustomerManagerLink. - // The resource name has the form: - // `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}` - string previous_customer_manager_link = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. The resource name of the new manager customer that the client wants to move - // to. Customer resource names have the format: "customers/{customer_id}" - string new_manager = 3 [(google.api.field_behavior) = REQUIRED]; -} - -// Updates the status of a CustomerManagerLink. -// The following actions are possible: -// 1. Update operation with status ACTIVE accepts a pending invitation. -// 2. Update operation with status REFUSED declines a pending invitation. -// 3. Update operation with status INACTIVE terminates link to manager. -message CustomerManagerLinkOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Update operation: The link is expected to have a valid resource name. - google.ads.googleads.v5.resources.CustomerManagerLink update = 2; - } -} - -// Response message for a CustomerManagerLink mutate. -message MutateCustomerManagerLinkResponse { - // A result that identifies the resource affected by the mutate request. - repeated MutateCustomerManagerLinkResult results = 1; -} - -// Response message for a CustomerManagerLink moveManagerLink. -message MoveManagerLinkResponse { - // Returned for successful operations. Represents a CustomerManagerLink - // resource of the newly created link between client customer and new manager - // customer. - string resource_name = 1; -} - -// The result for the customer manager link mutate. -message MutateCustomerManagerLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/customer_negative_criterion_service.proto b/google/ads/googleads/v5/services/customer_negative_criterion_service.proto deleted file mode 100644 index 7027237fd..000000000 --- a/google/ads/googleads/v5/services/customer_negative_criterion_service.proto +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/customer_negative_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerNegativeCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Customer Negative Criterion service. - -// Service to manage customer negative criteria. -service CustomerNegativeCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested criterion in full detail. - rpc GetCustomerNegativeCriterion(GetCustomerNegativeCriterionRequest) returns (google.ads.googleads.v5.resources.CustomerNegativeCriterion) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/customerNegativeCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes criteria. Operation statuses are returned. - rpc MutateCustomerNegativeCriteria(MutateCustomerNegativeCriteriaRequest) returns (MutateCustomerNegativeCriteriaResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/customerNegativeCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [CustomerNegativeCriterionService.GetCustomerNegativeCriterion][google.ads.googleads.v5.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion]. -message GetCustomerNegativeCriterionRequest { - // Required. The resource name of the criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerNegativeCriterion" - } - ]; -} - -// Request message for -// [CustomerNegativeCriterionService.MutateCustomerNegativeCriteria][google.ads.googleads.v5.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria]. -message MutateCustomerNegativeCriteriaRequest { - // Required. The ID of the customer whose criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual criteria. - repeated CustomerNegativeCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create or remove) on a customer level negative criterion. -message CustomerNegativeCriterionOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new criterion. - google.ads.googleads.v5.resources.CustomerNegativeCriterion create = 1; - - // Remove operation: A resource name for the removed criterion is expected, - // in this format: - // - // `customers/{customer_id}/customerNegativeCriteria/{criterion_id}` - string remove = 2; - } -} - -// Response message for customer negative criterion mutate. -message MutateCustomerNegativeCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerNegativeCriteriaResult results = 2; -} - -// The result for the criterion mutate. -message MutateCustomerNegativeCriteriaResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/customer_service.proto b/google/ads/googleads/v5/services/customer_service.proto deleted file mode 100644 index 3849626ef..000000000 --- a/google/ads/googleads/v5/services/customer_service.proto +++ /dev/null @@ -1,170 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/access_role.proto"; -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/customer.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Customer service. - -// Service to manage customers. -service CustomerService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer in full detail. - rpc GetCustomer(GetCustomerRequest) returns (google.ads.googleads.v5.resources.Customer) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Updates a customer. Operation statuses are returned. - rpc MutateCustomer(MutateCustomerRequest) returns (MutateCustomerResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } - - // Returns resource names of customers directly accessible by the - // user authenticating the call. - rpc ListAccessibleCustomers(ListAccessibleCustomersRequest) returns (ListAccessibleCustomersResponse) { - option (google.api.http) = { - get: "/v5/customers:listAccessibleCustomers" - }; - } - - // Creates a new client under manager. The new client customer is returned. - rpc CreateCustomerClient(CreateCustomerClientRequest) returns (CreateCustomerClientResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}:createCustomerClient" - body: "*" - }; - option (google.api.method_signature) = "customer_id,customer_client"; - } -} - -// Request message for [CustomerService.GetCustomer][google.ads.googleads.v5.services.CustomerService.GetCustomer]. -message GetCustomerRequest { - // Required. The resource name of the customer to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; -} - -// Request message for [CustomerService.MutateCustomer][google.ads.googleads.v5.services.CustomerService.MutateCustomer]. -message MutateCustomerRequest { - // Required. The ID of the customer being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the customer - CustomerOperation operation = 4 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 5; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 6; -} - -// Request message for [CustomerService.CreateCustomerClient][google.ads.googleads.v5.services.CustomerService.CreateCustomerClient]. -message CreateCustomerClientRequest { - // Required. The ID of the Manager under whom client customer is being created. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The new client customer to create. The resource name on this customer - // will be ignored. - google.ads.googleads.v5.resources.Customer customer_client = 2 [(google.api.field_behavior) = REQUIRED]; - - // Email address of the user who should be invited on the created client - // customer. Accessible only to customers on the allow-list. - optional string email_address = 5; - - // The proposed role of user on the created client customer. - // Accessible only to customers on the allow-list. - google.ads.googleads.v5.enums.AccessRoleEnum.AccessRole access_role = 4; -} - -// A single update on a customer. -message CustomerOperation { - // Mutate operation. Only updates are supported for customer. - google.ads.googleads.v5.resources.Customer update = 1; - - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 2; -} - -// Response message for CreateCustomerClient mutate. -message CreateCustomerClientResponse { - // The resource name of the newly created customer client. - string resource_name = 2; - - // Link for inviting user to access the created customer. Accessible to - // allowlisted customers only. - string invitation_link = 3; -} - -// Response message for customer mutate. -message MutateCustomerResponse { - // Result for the mutate. - MutateCustomerResult result = 2; -} - -// The result for the customer mutate. -message MutateCustomerResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated customer with only mutable fields after mutate. The fields will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.Customer customer = 2; -} - -// Request message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v5.services.CustomerService.ListAccessibleCustomers]. -message ListAccessibleCustomersRequest { - -} - -// Response message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v5.services.CustomerService.ListAccessibleCustomers]. -message ListAccessibleCustomersResponse { - // Resource name of customers directly accessible by the - // user authenticating the call. - repeated string resource_names = 1; -} diff --git a/google/ads/googleads/v5/services/detail_placement_view_service.proto b/google/ads/googleads/v5/services/detail_placement_view_service.proto deleted file mode 100644 index 6767bdb17..000000000 --- a/google/ads/googleads/v5/services/detail_placement_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/detail_placement_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DetailPlacementViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Detail Placement View service. - -// Service to fetch Detail Placement views. -service DetailPlacementViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Detail Placement view in full detail. - rpc GetDetailPlacementView(GetDetailPlacementViewRequest) returns (google.ads.googleads.v5.resources.DetailPlacementView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/detailPlacementViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [DetailPlacementViewService.GetDetailPlacementView][google.ads.googleads.v5.services.DetailPlacementViewService.GetDetailPlacementView]. -message GetDetailPlacementViewRequest { - // Required. The resource name of the Detail Placement view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DetailPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/display_keyword_view_service.proto b/google/ads/googleads/v5/services/display_keyword_view_service.proto deleted file mode 100644 index f31db810b..000000000 --- a/google/ads/googleads/v5/services/display_keyword_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/display_keyword_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DisplayKeywordViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Display Keyword View service. - -// Service to manage display keyword views. -service DisplayKeywordViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested display keyword view in full detail. - rpc GetDisplayKeywordView(GetDisplayKeywordViewRequest) returns (google.ads.googleads.v5.resources.DisplayKeywordView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/displayKeywordViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [DisplayKeywordViewService.GetDisplayKeywordView][google.ads.googleads.v5.services.DisplayKeywordViewService.GetDisplayKeywordView]. -message GetDisplayKeywordViewRequest { - // Required. The resource name of the display keyword view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DisplayKeywordView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/distance_view_service.proto b/google/ads/googleads/v5/services/distance_view_service.proto deleted file mode 100644 index e669d919b..000000000 --- a/google/ads/googleads/v5/services/distance_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/distance_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DistanceViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Distance View service. - -// Service to fetch distance views. -service DistanceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the attributes of the requested distance view. - rpc GetDistanceView(GetDistanceViewRequest) returns (google.ads.googleads.v5.resources.DistanceView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/distanceViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [DistanceViewService.GetDistanceView][google.ads.googleads.v5.services.DistanceViewService.GetDistanceView]. -message GetDistanceViewRequest { - // Required. The resource name of the distance view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DistanceView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/domain_category_service.proto b/google/ads/googleads/v5/services/domain_category_service.proto deleted file mode 100644 index 985b84881..000000000 --- a/google/ads/googleads/v5/services/domain_category_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/domain_category.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DomainCategoryServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the DomainCategory Service. - -// Service to fetch domain categories. -service DomainCategoryService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested domain category. - rpc GetDomainCategory(GetDomainCategoryRequest) returns (google.ads.googleads.v5.resources.DomainCategory) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/domainCategories/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [DomainCategoryService.GetDomainCategory][google.ads.googleads.v5.services.DomainCategoryService.GetDomainCategory]. -message GetDomainCategoryRequest { - // Required. Resource name of the domain category to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DomainCategory" - } - ]; -} diff --git a/google/ads/googleads/v5/services/dynamic_search_ads_search_term_view_service.proto b/google/ads/googleads/v5/services/dynamic_search_ads_search_term_view_service.proto deleted file mode 100644 index ad0a23411..000000000 --- a/google/ads/googleads/v5/services/dynamic_search_ads_search_term_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/dynamic_search_ads_search_term_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DynamicSearchAdsSearchTermViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Dynamic Search Ads Search Term View service. - -// Service to fetch dynamic search ads views. -service DynamicSearchAdsSearchTermViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested dynamic search ads search term view in full detail. - rpc GetDynamicSearchAdsSearchTermView(GetDynamicSearchAdsSearchTermViewRequest) returns (google.ads.googleads.v5.resources.DynamicSearchAdsSearchTermView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView][google.ads.googleads.v5.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView]. -message GetDynamicSearchAdsSearchTermViewRequest { - // Required. The resource name of the dynamic search ads search term view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/expanded_landing_page_view_service.proto b/google/ads/googleads/v5/services/expanded_landing_page_view_service.proto deleted file mode 100644 index 0c4ed123f..000000000 --- a/google/ads/googleads/v5/services/expanded_landing_page_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/expanded_landing_page_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ExpandedLandingPageViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the expanded landing page view service. - -// Service to fetch expanded landing page views. -service ExpandedLandingPageViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested expanded landing page view in full detail. - rpc GetExpandedLandingPageView(GetExpandedLandingPageViewRequest) returns (google.ads.googleads.v5.resources.ExpandedLandingPageView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/expandedLandingPageViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [ExpandedLandingPageViewService.GetExpandedLandingPageView][google.ads.googleads.v5.services.ExpandedLandingPageViewService.GetExpandedLandingPageView]. -message GetExpandedLandingPageViewRequest { - // Required. The resource name of the expanded landing page view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExpandedLandingPageView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/extension_feed_item_service.proto b/google/ads/googleads/v5/services/extension_feed_item_service.proto deleted file mode 100644 index 0e111bbc4..000000000 --- a/google/ads/googleads/v5/services/extension_feed_item_service.proto +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/extension_feed_item.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionFeedItemServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the ExtensionFeedItem service. - -// Service to manage extension feed items. -service ExtensionFeedItemService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested extension feed item in full detail. - rpc GetExtensionFeedItem(GetExtensionFeedItemRequest) returns (google.ads.googleads.v5.resources.ExtensionFeedItem) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/extensionFeedItems/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes extension feed items. Operation - // statuses are returned. - rpc MutateExtensionFeedItems(MutateExtensionFeedItemsRequest) returns (MutateExtensionFeedItemsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/extensionFeedItems:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [ExtensionFeedItemService.GetExtensionFeedItem][google.ads.googleads.v5.services.ExtensionFeedItemService.GetExtensionFeedItem]. -message GetExtensionFeedItemRequest { - // Required. The resource name of the extension feed item to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - } - ]; -} - -// Request message for [ExtensionFeedItemService.MutateExtensionFeedItems][google.ads.googleads.v5.services.ExtensionFeedItemService.MutateExtensionFeedItems]. -message MutateExtensionFeedItemsRequest { - // Required. The ID of the customer whose extension feed items are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual extension feed items. - repeated ExtensionFeedItemOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an extension feed item. -message ExtensionFeedItemOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new extension - // feed item. - google.ads.googleads.v5.resources.ExtensionFeedItem create = 1; - - // Update operation: The extension feed item is expected to have a - // valid resource name. - google.ads.googleads.v5.resources.ExtensionFeedItem update = 2; - - // Remove operation: A resource name for the removed extension feed item - // is expected, in this format: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - string remove = 3; - } -} - -// Response message for an extension feed item mutate. -message MutateExtensionFeedItemsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateExtensionFeedItemResult results = 2; -} - -// The result for the extension feed item mutate. -message MutateExtensionFeedItemResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated extension feed item with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.ExtensionFeedItem extension_feed_item = 2; -} diff --git a/google/ads/googleads/v5/services/feed_item_service.proto b/google/ads/googleads/v5/services/feed_item_service.proto deleted file mode 100644 index d5d97aa12..000000000 --- a/google/ads/googleads/v5/services/feed_item_service.proto +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/feed_item.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the FeedItem service. - -// Service to manage feed items. -service FeedItemService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed item in full detail. - rpc GetFeedItem(GetFeedItemRequest) returns (google.ads.googleads.v5.resources.FeedItem) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/feedItems/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes feed items. Operation statuses are - // returned. - rpc MutateFeedItems(MutateFeedItemsRequest) returns (MutateFeedItemsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/feedItems:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedItemService.GetFeedItem][google.ads.googleads.v5.services.FeedItemService.GetFeedItem]. -message GetFeedItemRequest { - // Required. The resource name of the feed item to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; -} - -// Request message for [FeedItemService.MutateFeedItems][google.ads.googleads.v5.services.FeedItemService.MutateFeedItems]. -message MutateFeedItemsRequest { - // Required. The ID of the customer whose feed items are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feed items. - repeated FeedItemOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an feed item. -message FeedItemOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed item. - google.ads.googleads.v5.resources.FeedItem create = 1; - - // Update operation: The feed item is expected to have a valid resource - // name. - google.ads.googleads.v5.resources.FeedItem update = 2; - - // Remove operation: A resource name for the removed feed item is - // expected, in this format: - // - // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}` - string remove = 3; - } -} - -// Response message for an feed item mutate. -message MutateFeedItemsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateFeedItemResult results = 2; -} - -// The result for the feed item mutate. -message MutateFeedItemResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated feed item with only mutable fields after mutate. The field will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.FeedItem feed_item = 2; -} diff --git a/google/ads/googleads/v5/services/feed_item_target_service.proto b/google/ads/googleads/v5/services/feed_item_target_service.proto deleted file mode 100644 index 44cf05f7f..000000000 --- a/google/ads/googleads/v5/services/feed_item_target_service.proto +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/feed_item_target.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the FeedItemTarget service. - -// Service to manage feed item targets. -service FeedItemTargetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed item targets in full detail. - rpc GetFeedItemTarget(GetFeedItemTargetRequest) returns (google.ads.googleads.v5.resources.FeedItemTarget) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/feedItemTargets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes feed item targets. Operation statuses are returned. - rpc MutateFeedItemTargets(MutateFeedItemTargetsRequest) returns (MutateFeedItemTargetsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/feedItemTargets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedItemTargetService.GetFeedItemTarget][google.ads.googleads.v5.services.FeedItemTargetService.GetFeedItemTarget]. -message GetFeedItemTargetRequest { - // Required. The resource name of the feed item targets to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItemTarget" - } - ]; -} - -// Request message for [FeedItemTargetService.MutateFeedItemTargets][google.ads.googleads.v5.services.FeedItemTargetService.MutateFeedItemTargets]. -message MutateFeedItemTargetsRequest { - // Required. The ID of the customer whose feed item targets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feed item targets. - repeated FeedItemTargetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation (create, remove) on an feed item target. -message FeedItemTargetOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed item - // target. - google.ads.googleads.v5.resources.FeedItemTarget create = 1; - - // Remove operation: A resource name for the removed feed item target is - // expected, in this format: - // - // `customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}` - string remove = 2; - } -} - -// Response message for an feed item target mutate. -message MutateFeedItemTargetsResponse { - // All results for the mutate. - repeated MutateFeedItemTargetResult results = 2; -} - -// The result for the feed item target mutate. -message MutateFeedItemTargetResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/feed_mapping_service.proto b/google/ads/googleads/v5/services/feed_mapping_service.proto deleted file mode 100644 index 38088cf93..000000000 --- a/google/ads/googleads/v5/services/feed_mapping_service.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/feed_mapping.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the FeedMapping service. - -// Service to manage feed mappings. -service FeedMappingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed mapping in full detail. - rpc GetFeedMapping(GetFeedMappingRequest) returns (google.ads.googleads.v5.resources.FeedMapping) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/feedMappings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes feed mappings. Operation statuses are - // returned. - rpc MutateFeedMappings(MutateFeedMappingsRequest) returns (MutateFeedMappingsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/feedMappings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedMappingService.GetFeedMapping][google.ads.googleads.v5.services.FeedMappingService.GetFeedMapping]. -message GetFeedMappingRequest { - // Required. The resource name of the feed mapping to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedMapping" - } - ]; -} - -// Request message for [FeedMappingService.MutateFeedMappings][google.ads.googleads.v5.services.FeedMappingService.MutateFeedMappings]. -message MutateFeedMappingsRequest { - // Required. The ID of the customer whose feed mappings are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feed mappings. - repeated FeedMappingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on a feed mapping. -message FeedMappingOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed mapping. - google.ads.googleads.v5.resources.FeedMapping create = 1; - - // Remove operation: A resource name for the removed feed mapping is - // expected, in this format: - // - // `customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}` - string remove = 3; - } -} - -// Response message for a feed mapping mutate. -message MutateFeedMappingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateFeedMappingResult results = 2; -} - -// The result for the feed mapping mutate. -message MutateFeedMappingResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/feed_placeholder_view_service.proto b/google/ads/googleads/v5/services/feed_placeholder_view_service.proto deleted file mode 100644 index d62a31f50..000000000 --- a/google/ads/googleads/v5/services/feed_placeholder_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/feed_placeholder_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedPlaceholderViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the FeedPlaceholderView service. - -// Service to fetch feed placeholder views. -service FeedPlaceholderViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed placeholder view in full detail. - rpc GetFeedPlaceholderView(GetFeedPlaceholderViewRequest) returns (google.ads.googleads.v5.resources.FeedPlaceholderView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/feedPlaceholderViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [FeedPlaceholderViewService.GetFeedPlaceholderView][google.ads.googleads.v5.services.FeedPlaceholderViewService.GetFeedPlaceholderView]. -message GetFeedPlaceholderViewRequest { - // Required. The resource name of the feed placeholder view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedPlaceholderView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/feed_service.proto b/google/ads/googleads/v5/services/feed_service.proto deleted file mode 100644 index ea1e4697c..000000000 --- a/google/ads/googleads/v5/services/feed_service.proto +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Feed service. - -// Service to manage feeds. -service FeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed in full detail. - rpc GetFeed(GetFeedRequest) returns (google.ads.googleads.v5.resources.Feed) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/feeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes feeds. Operation statuses are - // returned. - rpc MutateFeeds(MutateFeedsRequest) returns (MutateFeedsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/feeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedService.GetFeed][google.ads.googleads.v5.services.FeedService.GetFeed]. -message GetFeedRequest { - // Required. The resource name of the feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; -} - -// Request message for [FeedService.MutateFeeds][google.ads.googleads.v5.services.FeedService.MutateFeeds]. -message MutateFeedsRequest { - // Required. The ID of the customer whose feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feeds. - repeated FeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an feed. -message FeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed. - google.ads.googleads.v5.resources.Feed create = 1; - - // Update operation: The feed is expected to have a valid resource - // name. - google.ads.googleads.v5.resources.Feed update = 2; - - // Remove operation: A resource name for the removed feed is - // expected, in this format: - // - // `customers/{customer_id}/feeds/{feed_id}` - string remove = 3; - } -} - -// Response message for an feed mutate. -message MutateFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateFeedResult results = 2; -} - -// The result for the feed mutate. -message MutateFeedResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated feed with only mutable fields after mutate. The field will only - // be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.Feed feed = 2; -} diff --git a/google/ads/googleads/v5/services/gender_view_service.proto b/google/ads/googleads/v5/services/gender_view_service.proto deleted file mode 100644 index 376dc61e7..000000000 --- a/google/ads/googleads/v5/services/gender_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/gender_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GenderViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Gender View service. - -// Service to manage gender views. -service GenderViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested gender view in full detail. - rpc GetGenderView(GetGenderViewRequest) returns (google.ads.googleads.v5.resources.GenderView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/genderViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [GenderViewService.GetGenderView][google.ads.googleads.v5.services.GenderViewService.GetGenderView]. -message GetGenderViewRequest { - // Required. The resource name of the gender view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GenderView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/geo_target_constant_service.proto b/google/ads/googleads/v5/services/geo_target_constant_service.proto deleted file mode 100644 index 806942ce6..000000000 --- a/google/ads/googleads/v5/services/geo_target_constant_service.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/geo_target_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Geo target constant service. - -// Service to fetch geo target constants. -service GeoTargetConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested geo target constant in full detail. - rpc GetGeoTargetConstant(GetGeoTargetConstantRequest) returns (google.ads.googleads.v5.resources.GeoTargetConstant) { - option (google.api.http) = { - get: "/v5/{resource_name=geoTargetConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Returns GeoTargetConstant suggestions by location name or by resource name. - rpc SuggestGeoTargetConstants(SuggestGeoTargetConstantsRequest) returns (SuggestGeoTargetConstantsResponse) { - option (google.api.http) = { - post: "/v5/geoTargetConstants:suggest" - body: "*" - }; - } -} - -// Request message for [GeoTargetConstantService.GetGeoTargetConstant][google.ads.googleads.v5.services.GeoTargetConstantService.GetGeoTargetConstant]. -message GetGeoTargetConstantRequest { - // Required. The resource name of the geo target constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; -} - -// Request message for -// [GeoTargetConstantService.SuggestGeoTargetConstants][google.ads.googleads.v5.services.GeoTargetConstantService.SuggestGeoTargetConstants]. -message SuggestGeoTargetConstantsRequest { - // A list of location names. - message LocationNames { - // A list of location names. - repeated string names = 2; - } - - // A list of geo target constant resource names. - message GeoTargets { - // A list of geo target constant resource names. - repeated string geo_target_constants = 2; - } - - // If possible, returned geo targets are translated using this locale. If not, - // en is used by default. This is also used as a hint for returned geo - // targets. - optional string locale = 6; - - // Returned geo targets are restricted to this country code. - optional string country_code = 7; - - // Required. A selector of geo target constants. - oneof query { - // The location names to search by. At most 25 names can be set. - LocationNames location_names = 1; - - // The geo target constant resource names to filter by. - GeoTargets geo_targets = 2; - } -} - -// Response message for [GeoTargetConstantService.SuggestGeoTargetConstants][google.ads.googleads.v5.services.GeoTargetConstantService.SuggestGeoTargetConstants]. -message SuggestGeoTargetConstantsResponse { - // Geo target constant suggestions. - repeated GeoTargetConstantSuggestion geo_target_constant_suggestions = 1; -} - -// A geo target constant suggestion. -message GeoTargetConstantSuggestion { - // The language this GeoTargetConstantSuggestion is currently translated to. - // It affects the name of geo target fields. For example, if locale=en, then - // name=Spain. If locale=es, then name=España. The default locale will be - // returned if no translation exists for the locale in the request. - optional string locale = 6; - - // Approximate user population that will be targeted, rounded to the - // nearest 100. - optional int64 reach = 7; - - // If the request searched by location name, this is the location name that - // matched the geo target. - optional string search_term = 8; - - // The GeoTargetConstant result. - google.ads.googleads.v5.resources.GeoTargetConstant geo_target_constant = 4; - - // The list of parents of the geo target constant. - repeated google.ads.googleads.v5.resources.GeoTargetConstant geo_target_constant_parents = 5; -} diff --git a/google/ads/googleads/v5/services/geographic_view_service.proto b/google/ads/googleads/v5/services/geographic_view_service.proto deleted file mode 100644 index 354d41d0a..000000000 --- a/google/ads/googleads/v5/services/geographic_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/geographic_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GeographicViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the GeographicViewService. - -// Service to manage geographic views. -service GeographicViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested geographic view in full detail. - rpc GetGeographicView(GetGeographicViewRequest) returns (google.ads.googleads.v5.resources.GeographicView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/geographicViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [GeographicViewService.GetGeographicView][google.ads.googleads.v5.services.GeographicViewService.GetGeographicView]. -message GetGeographicViewRequest { - // Required. The resource name of the geographic view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeographicView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/google_ads_field_service.proto b/google/ads/googleads/v5/services/google_ads_field_service.proto deleted file mode 100644 index c9ee7ef26..000000000 --- a/google/ads/googleads/v5/services/google_ads_field_service.proto +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/google_ads_field.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the GoogleAdsFieldService - -// Service to fetch Google Ads API fields. -service GoogleAdsFieldService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns just the requested field. - rpc GetGoogleAdsField(GetGoogleAdsFieldRequest) returns (google.ads.googleads.v5.resources.GoogleAdsField) { - option (google.api.http) = { - get: "/v5/{resource_name=googleAdsFields/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Returns all fields that match the search query. - rpc SearchGoogleAdsFields(SearchGoogleAdsFieldsRequest) returns (SearchGoogleAdsFieldsResponse) { - option (google.api.http) = { - post: "/v5/googleAdsFields:search" - body: "*" - }; - option (google.api.method_signature) = "query"; - } -} - -// Request message for [GoogleAdsFieldService.GetGoogleAdsField][google.ads.googleads.v5.services.GoogleAdsFieldService.GetGoogleAdsField]. -message GetGoogleAdsFieldRequest { - // Required. The resource name of the field to get. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GoogleAdsField" - } - ]; -} - -// Request message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v5.services.GoogleAdsFieldService.SearchGoogleAdsFields]. -message SearchGoogleAdsFieldsRequest { - // Required. The query string. - string query = 1 [(google.api.field_behavior) = REQUIRED]; - - // Token of the page to retrieve. If not specified, the first page of - // results will be returned. Use the value obtained from `next_page_token` - // in the previous response in order to request the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When too large a page is requested, the server may decide to further - // limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v5.services.GoogleAdsFieldService.SearchGoogleAdsFields]. -message SearchGoogleAdsFieldsResponse { - // The list of fields that matched the query. - repeated google.ads.googleads.v5.resources.GoogleAdsField results = 1; - - // Pagination token used to retrieve the next page of results. Pass the - // content of this string as the `page_token` attribute of the next request. - // `next_page_token` is not returned for the last page. - string next_page_token = 2; - - // Total number of results that match the query ignoring the LIMIT clause. - int64 total_results_count = 3; -} diff --git a/google/ads/googleads/v5/services/google_ads_service.proto b/google/ads/googleads/v5/services/google_ads_service.proto deleted file mode 100644 index 31faccb09..000000000 --- a/google/ads/googleads/v5/services/google_ads_service.proto +++ /dev/null @@ -1,994 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/common/metrics.proto"; -import "google/ads/googleads/v5/common/segments.proto"; -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/enums/summary_row_setting.proto"; -import "google/ads/googleads/v5/resources/account_budget.proto"; -import "google/ads/googleads/v5/resources/account_budget_proposal.proto"; -import "google/ads/googleads/v5/resources/account_link.proto"; -import "google/ads/googleads/v5/resources/ad_group.proto"; -import "google/ads/googleads/v5/resources/ad_group_ad.proto"; -import "google/ads/googleads/v5/resources/ad_group_ad_asset_view.proto"; -import "google/ads/googleads/v5/resources/ad_group_ad_label.proto"; -import "google/ads/googleads/v5/resources/ad_group_audience_view.proto"; -import "google/ads/googleads/v5/resources/ad_group_bid_modifier.proto"; -import "google/ads/googleads/v5/resources/ad_group_criterion.proto"; -import "google/ads/googleads/v5/resources/ad_group_criterion_label.proto"; -import "google/ads/googleads/v5/resources/ad_group_criterion_simulation.proto"; -import "google/ads/googleads/v5/resources/ad_group_extension_setting.proto"; -import "google/ads/googleads/v5/resources/ad_group_feed.proto"; -import "google/ads/googleads/v5/resources/ad_group_label.proto"; -import "google/ads/googleads/v5/resources/ad_group_simulation.proto"; -import "google/ads/googleads/v5/resources/ad_parameter.proto"; -import "google/ads/googleads/v5/resources/ad_schedule_view.proto"; -import "google/ads/googleads/v5/resources/age_range_view.proto"; -import "google/ads/googleads/v5/resources/asset.proto"; -import "google/ads/googleads/v5/resources/batch_job.proto"; -import "google/ads/googleads/v5/resources/bidding_strategy.proto"; -import "google/ads/googleads/v5/resources/billing_setup.proto"; -import "google/ads/googleads/v5/resources/campaign.proto"; -import "google/ads/googleads/v5/resources/campaign_asset.proto"; -import "google/ads/googleads/v5/resources/campaign_audience_view.proto"; -import "google/ads/googleads/v5/resources/campaign_bid_modifier.proto"; -import "google/ads/googleads/v5/resources/campaign_budget.proto"; -import "google/ads/googleads/v5/resources/campaign_criterion.proto"; -import "google/ads/googleads/v5/resources/campaign_criterion_simulation.proto"; -import "google/ads/googleads/v5/resources/campaign_draft.proto"; -import "google/ads/googleads/v5/resources/campaign_experiment.proto"; -import "google/ads/googleads/v5/resources/campaign_extension_setting.proto"; -import "google/ads/googleads/v5/resources/campaign_feed.proto"; -import "google/ads/googleads/v5/resources/campaign_label.proto"; -import "google/ads/googleads/v5/resources/campaign_shared_set.proto"; -import "google/ads/googleads/v5/resources/carrier_constant.proto"; -import "google/ads/googleads/v5/resources/change_status.proto"; -import "google/ads/googleads/v5/resources/click_view.proto"; -import "google/ads/googleads/v5/resources/conversion_action.proto"; -import "google/ads/googleads/v5/resources/currency_constant.proto"; -import "google/ads/googleads/v5/resources/custom_interest.proto"; -import "google/ads/googleads/v5/resources/customer.proto"; -import "google/ads/googleads/v5/resources/customer_client.proto"; -import "google/ads/googleads/v5/resources/customer_client_link.proto"; -import "google/ads/googleads/v5/resources/customer_extension_setting.proto"; -import "google/ads/googleads/v5/resources/customer_feed.proto"; -import "google/ads/googleads/v5/resources/customer_label.proto"; -import "google/ads/googleads/v5/resources/customer_manager_link.proto"; -import "google/ads/googleads/v5/resources/customer_negative_criterion.proto"; -import "google/ads/googleads/v5/resources/detail_placement_view.proto"; -import "google/ads/googleads/v5/resources/display_keyword_view.proto"; -import "google/ads/googleads/v5/resources/distance_view.proto"; -import "google/ads/googleads/v5/resources/domain_category.proto"; -import "google/ads/googleads/v5/resources/dynamic_search_ads_search_term_view.proto"; -import "google/ads/googleads/v5/resources/expanded_landing_page_view.proto"; -import "google/ads/googleads/v5/resources/extension_feed_item.proto"; -import "google/ads/googleads/v5/resources/feed.proto"; -import "google/ads/googleads/v5/resources/feed_item.proto"; -import "google/ads/googleads/v5/resources/feed_item_target.proto"; -import "google/ads/googleads/v5/resources/feed_mapping.proto"; -import "google/ads/googleads/v5/resources/feed_placeholder_view.proto"; -import "google/ads/googleads/v5/resources/gender_view.proto"; -import "google/ads/googleads/v5/resources/geo_target_constant.proto"; -import "google/ads/googleads/v5/resources/geographic_view.proto"; -import "google/ads/googleads/v5/resources/group_placement_view.proto"; -import "google/ads/googleads/v5/resources/hotel_group_view.proto"; -import "google/ads/googleads/v5/resources/hotel_performance_view.proto"; -import "google/ads/googleads/v5/resources/income_range_view.proto"; -import "google/ads/googleads/v5/resources/keyword_plan.proto"; -import "google/ads/googleads/v5/resources/keyword_plan_ad_group.proto"; -import "google/ads/googleads/v5/resources/keyword_plan_ad_group_keyword.proto"; -import "google/ads/googleads/v5/resources/keyword_plan_campaign.proto"; -import "google/ads/googleads/v5/resources/keyword_plan_campaign_keyword.proto"; -import "google/ads/googleads/v5/resources/keyword_view.proto"; -import "google/ads/googleads/v5/resources/label.proto"; -import "google/ads/googleads/v5/resources/landing_page_view.proto"; -import "google/ads/googleads/v5/resources/language_constant.proto"; -import "google/ads/googleads/v5/resources/location_view.proto"; -import "google/ads/googleads/v5/resources/managed_placement_view.proto"; -import "google/ads/googleads/v5/resources/media_file.proto"; -import "google/ads/googleads/v5/resources/mobile_app_category_constant.proto"; -import "google/ads/googleads/v5/resources/mobile_device_constant.proto"; -import "google/ads/googleads/v5/resources/offline_user_data_job.proto"; -import "google/ads/googleads/v5/resources/operating_system_version_constant.proto"; -import "google/ads/googleads/v5/resources/paid_organic_search_term_view.proto"; -import "google/ads/googleads/v5/resources/parental_status_view.proto"; -import "google/ads/googleads/v5/resources/product_bidding_category_constant.proto"; -import "google/ads/googleads/v5/resources/product_group_view.proto"; -import "google/ads/googleads/v5/resources/recommendation.proto"; -import "google/ads/googleads/v5/resources/remarketing_action.proto"; -import "google/ads/googleads/v5/resources/search_term_view.proto"; -import "google/ads/googleads/v5/resources/shared_criterion.proto"; -import "google/ads/googleads/v5/resources/shared_set.proto"; -import "google/ads/googleads/v5/resources/shopping_performance_view.proto"; -import "google/ads/googleads/v5/resources/third_party_app_analytics_link.proto"; -import "google/ads/googleads/v5/resources/topic_constant.proto"; -import "google/ads/googleads/v5/resources/topic_view.proto"; -import "google/ads/googleads/v5/resources/user_interest.proto"; -import "google/ads/googleads/v5/resources/user_list.proto"; -import "google/ads/googleads/v5/resources/user_location_view.proto"; -import "google/ads/googleads/v5/resources/video.proto"; -import "google/ads/googleads/v5/services/ad_group_ad_label_service.proto"; -import "google/ads/googleads/v5/services/ad_group_ad_service.proto"; -import "google/ads/googleads/v5/services/ad_group_bid_modifier_service.proto"; -import "google/ads/googleads/v5/services/ad_group_criterion_label_service.proto"; -import "google/ads/googleads/v5/services/ad_group_criterion_service.proto"; -import "google/ads/googleads/v5/services/ad_group_extension_setting_service.proto"; -import "google/ads/googleads/v5/services/ad_group_feed_service.proto"; -import "google/ads/googleads/v5/services/ad_group_label_service.proto"; -import "google/ads/googleads/v5/services/ad_group_service.proto"; -import "google/ads/googleads/v5/services/ad_parameter_service.proto"; -import "google/ads/googleads/v5/services/ad_service.proto"; -import "google/ads/googleads/v5/services/asset_service.proto"; -import "google/ads/googleads/v5/services/bidding_strategy_service.proto"; -import "google/ads/googleads/v5/services/campaign_asset_service.proto"; -import "google/ads/googleads/v5/services/campaign_bid_modifier_service.proto"; -import "google/ads/googleads/v5/services/campaign_budget_service.proto"; -import "google/ads/googleads/v5/services/campaign_criterion_service.proto"; -import "google/ads/googleads/v5/services/campaign_draft_service.proto"; -import "google/ads/googleads/v5/services/campaign_experiment_service.proto"; -import "google/ads/googleads/v5/services/campaign_extension_setting_service.proto"; -import "google/ads/googleads/v5/services/campaign_feed_service.proto"; -import "google/ads/googleads/v5/services/campaign_label_service.proto"; -import "google/ads/googleads/v5/services/campaign_service.proto"; -import "google/ads/googleads/v5/services/campaign_shared_set_service.proto"; -import "google/ads/googleads/v5/services/conversion_action_service.proto"; -import "google/ads/googleads/v5/services/customer_extension_setting_service.proto"; -import "google/ads/googleads/v5/services/customer_feed_service.proto"; -import "google/ads/googleads/v5/services/customer_label_service.proto"; -import "google/ads/googleads/v5/services/customer_negative_criterion_service.proto"; -import "google/ads/googleads/v5/services/customer_service.proto"; -import "google/ads/googleads/v5/services/extension_feed_item_service.proto"; -import "google/ads/googleads/v5/services/feed_item_service.proto"; -import "google/ads/googleads/v5/services/feed_item_target_service.proto"; -import "google/ads/googleads/v5/services/feed_mapping_service.proto"; -import "google/ads/googleads/v5/services/feed_service.proto"; -import "google/ads/googleads/v5/services/keyword_plan_ad_group_keyword_service.proto"; -import "google/ads/googleads/v5/services/keyword_plan_ad_group_service.proto"; -import "google/ads/googleads/v5/services/keyword_plan_campaign_keyword_service.proto"; -import "google/ads/googleads/v5/services/keyword_plan_campaign_service.proto"; -import "google/ads/googleads/v5/services/keyword_plan_service.proto"; -import "google/ads/googleads/v5/services/label_service.proto"; -import "google/ads/googleads/v5/services/media_file_service.proto"; -import "google/ads/googleads/v5/services/remarketing_action_service.proto"; -import "google/ads/googleads/v5/services/shared_criterion_service.proto"; -import "google/ads/googleads/v5/services/shared_set_service.proto"; -import "google/ads/googleads/v5/services/user_list_service.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the GoogleAdsService. - -// Service to fetch data and metrics across resources. -service GoogleAdsService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns all rows that match the search query. - rpc Search(SearchGoogleAdsRequest) returns (SearchGoogleAdsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/googleAds:search" - body: "*" - }; - option (google.api.method_signature) = "customer_id,query"; - } - - // Returns all rows that match the search stream query. - rpc SearchStream(SearchGoogleAdsStreamRequest) returns (stream SearchGoogleAdsStreamResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/googleAds:searchStream" - body: "*" - }; - option (google.api.method_signature) = "customer_id,query"; - } - - // Creates, updates, or removes resources. This method supports atomic - // transactions with multiple types of resources. For example, you can - // atomically create a campaign and a campaign budget, or perform up to - // thousands of mutates atomically. - // - // This method is essentially a wrapper around a series of mutate methods. The - // only features it offers over calling those methods directly are: - // - // - Atomic transactions - // - Temp resource names (described below) - // - Somewhat reduced latency over making a series of mutate calls - // - // Note: Only resources that support atomic transactions are included, so this - // method can't replace all calls to individual services. - // - // ## Atomic Transaction Benefits - // - // Atomicity makes error handling much easier. If you're making a series of - // changes and one fails, it can leave your account in an inconsistent state. - // With atomicity, you either reach the desired state directly, or the request - // fails and you can retry. - // - // ## Temp Resource Names - // - // Temp resource names are a special type of resource name used to create a - // resource and reference that resource in the same request. For example, if a - // campaign budget is created with `resource_name` equal to - // `customers/123/campaignBudgets/-1`, that resource name can be reused in - // the `Campaign.budget` field in the same request. That way, the two - // resources are created and linked atomically. - // - // To create a temp resource name, put a negative number in the part of the - // name that the server would normally allocate. - // - // Note: - // - // - Resources must be created with a temp name before the name can be reused. - // For example, the previous CampaignBudget+Campaign example would fail if - // the mutate order was reversed. - // - Temp names are not remembered across requests. - // - There's no limit to the number of temp names in a request. - // - Each temp name must use a unique negative number, even if the resource - // types differ. - // - // ## Latency - // - // It's important to group mutates by resource type or the request may time - // out and fail. Latency is roughly equal to a series of calls to individual - // mutate methods, where each change in resource type is a new call. For - // example, mutating 10 campaigns then 10 ad groups is like 2 calls, while - // mutating 1 campaign, 1 ad group, 1 campaign, 1 ad group is like 4 calls. - rpc Mutate(MutateGoogleAdsRequest) returns (MutateGoogleAdsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/googleAds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,mutate_operations"; - } -} - -// Request message for [GoogleAdsService.Search][google.ads.googleads.v5.services.GoogleAdsService.Search]. -message SearchGoogleAdsRequest { - // Required. The ID of the customer being queried. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The query string. - string query = 2 [(google.api.field_behavior) = REQUIRED]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 3; - - // Number of elements to retrieve in a single page. - // When too large a page is requested, the server may decide to - // further limit the number of returned resources. - int32 page_size = 4; - - // If true, the request is validated but not executed. - bool validate_only = 5; - - // If true, the total number of results that match the query ignoring the - // LIMIT clause will be included in the response. - // Default is false. - bool return_total_results_count = 7; - - // Determines whether a summary row will be returned. By default, summary row - // is not returned. If requested, the summary row will be sent in a response - // by itself after all other query results are returned. - google.ads.googleads.v5.enums.SummaryRowSettingEnum.SummaryRowSetting summary_row_setting = 8; -} - -// Response message for [GoogleAdsService.Search][google.ads.googleads.v5.services.GoogleAdsService.Search]. -message SearchGoogleAdsResponse { - // The list of rows that matched the query. - repeated GoogleAdsRow results = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; - - // Total number of results that match the query ignoring the LIMIT - // clause. - int64 total_results_count = 3; - - // FieldMask that represents what fields were requested by the user. - google.protobuf.FieldMask field_mask = 5; - - // Summary row that contains summary of metrics in results. - // Summary of metrics means aggregation of metrics across all results, - // here aggregation could be sum, average, rate, etc. - GoogleAdsRow summary_row = 6; -} - -// Request message for [GoogleAdsService.SearchStream][google.ads.googleads.v5.services.GoogleAdsService.SearchStream]. -message SearchGoogleAdsStreamRequest { - // Required. The ID of the customer being queried. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The query string. - string query = 2 [(google.api.field_behavior) = REQUIRED]; - - // Determines whether a summary row will be returned. By default, summary row - // is not returned. If requested, the summary row will be sent in a response - // by itself after all other query results are returned. - google.ads.googleads.v5.enums.SummaryRowSettingEnum.SummaryRowSetting summary_row_setting = 3; -} - -// Response message for [GoogleAdsService.SearchStream][google.ads.googleads.v5.services.GoogleAdsService.SearchStream]. -message SearchGoogleAdsStreamResponse { - // The list of rows that matched the query. - repeated GoogleAdsRow results = 1; - - // FieldMask that represents what fields were requested by the user. - google.protobuf.FieldMask field_mask = 2; - - // Summary row that contains summary of metrics in results. - // Summary of metrics means aggregation of metrics across all results, - // here aggregation could be sum, average, rate, etc. - GoogleAdsRow summary_row = 3; -} - -// A returned row from the query. -message GoogleAdsRow { - // The account budget in the query. - google.ads.googleads.v5.resources.AccountBudget account_budget = 42; - - // The account budget proposal referenced in the query. - google.ads.googleads.v5.resources.AccountBudgetProposal account_budget_proposal = 43; - - // The AccountLink referenced in the query. - google.ads.googleads.v5.resources.AccountLink account_link = 143; - - // The ad group referenced in the query. - google.ads.googleads.v5.resources.AdGroup ad_group = 3; - - // The ad referenced in the query. - google.ads.googleads.v5.resources.AdGroupAd ad_group_ad = 16; - - // The ad group ad asset view in the query. - google.ads.googleads.v5.resources.AdGroupAdAssetView ad_group_ad_asset_view = 131; - - // The ad group ad label referenced in the query. - google.ads.googleads.v5.resources.AdGroupAdLabel ad_group_ad_label = 120; - - // The ad group audience view referenced in the query. - google.ads.googleads.v5.resources.AdGroupAudienceView ad_group_audience_view = 57; - - // The bid modifier referenced in the query. - google.ads.googleads.v5.resources.AdGroupBidModifier ad_group_bid_modifier = 24; - - // The criterion referenced in the query. - google.ads.googleads.v5.resources.AdGroupCriterion ad_group_criterion = 17; - - // The ad group criterion label referenced in the query. - google.ads.googleads.v5.resources.AdGroupCriterionLabel ad_group_criterion_label = 121; - - // The ad group criterion simulation referenced in the query. - google.ads.googleads.v5.resources.AdGroupCriterionSimulation ad_group_criterion_simulation = 110; - - // The ad group extension setting referenced in the query. - google.ads.googleads.v5.resources.AdGroupExtensionSetting ad_group_extension_setting = 112; - - // The ad group feed referenced in the query. - google.ads.googleads.v5.resources.AdGroupFeed ad_group_feed = 67; - - // The ad group label referenced in the query. - google.ads.googleads.v5.resources.AdGroupLabel ad_group_label = 115; - - // The ad group simulation referenced in the query. - google.ads.googleads.v5.resources.AdGroupSimulation ad_group_simulation = 107; - - // The ad parameter referenced in the query. - google.ads.googleads.v5.resources.AdParameter ad_parameter = 130; - - // The age range view referenced in the query. - google.ads.googleads.v5.resources.AgeRangeView age_range_view = 48; - - // The ad schedule view referenced in the query. - google.ads.googleads.v5.resources.AdScheduleView ad_schedule_view = 89; - - // The domain category referenced in the query. - google.ads.googleads.v5.resources.DomainCategory domain_category = 91; - - // The asset referenced in the query. - google.ads.googleads.v5.resources.Asset asset = 105; - - // The batch job referenced in the query. - google.ads.googleads.v5.resources.BatchJob batch_job = 139; - - // The bidding strategy referenced in the query. - google.ads.googleads.v5.resources.BiddingStrategy bidding_strategy = 18; - - // The billing setup referenced in the query. - google.ads.googleads.v5.resources.BillingSetup billing_setup = 41; - - // The campaign budget referenced in the query. - google.ads.googleads.v5.resources.CampaignBudget campaign_budget = 19; - - // The campaign referenced in the query. - google.ads.googleads.v5.resources.Campaign campaign = 2; - - // The campaign asset referenced in the query. - google.ads.googleads.v5.resources.CampaignAsset campaign_asset = 142; - - // The campaign audience view referenced in the query. - google.ads.googleads.v5.resources.CampaignAudienceView campaign_audience_view = 69; - - // The campaign bid modifier referenced in the query. - google.ads.googleads.v5.resources.CampaignBidModifier campaign_bid_modifier = 26; - - // The campaign criterion referenced in the query. - google.ads.googleads.v5.resources.CampaignCriterion campaign_criterion = 20; - - // The campaign criterion simulation referenced in the query. - google.ads.googleads.v5.resources.CampaignCriterionSimulation campaign_criterion_simulation = 111; - - // The campaign draft referenced in the query. - google.ads.googleads.v5.resources.CampaignDraft campaign_draft = 49; - - // The campaign experiment referenced in the query. - google.ads.googleads.v5.resources.CampaignExperiment campaign_experiment = 84; - - // The campaign extension setting referenced in the query. - google.ads.googleads.v5.resources.CampaignExtensionSetting campaign_extension_setting = 113; - - // The campaign feed referenced in the query. - google.ads.googleads.v5.resources.CampaignFeed campaign_feed = 63; - - // The campaign label referenced in the query. - google.ads.googleads.v5.resources.CampaignLabel campaign_label = 108; - - // Campaign Shared Set referenced in AWQL query. - google.ads.googleads.v5.resources.CampaignSharedSet campaign_shared_set = 30; - - // The carrier constant referenced in the query. - google.ads.googleads.v5.resources.CarrierConstant carrier_constant = 66; - - // The ChangeStatus referenced in the query. - google.ads.googleads.v5.resources.ChangeStatus change_status = 37; - - // The conversion action referenced in the query. - google.ads.googleads.v5.resources.ConversionAction conversion_action = 103; - - // The ClickView referenced in the query. - google.ads.googleads.v5.resources.ClickView click_view = 122; - - // The currency constant referenced in the query. - google.ads.googleads.v5.resources.CurrencyConstant currency_constant = 134; - - // The CustomInterest referenced in the query. - google.ads.googleads.v5.resources.CustomInterest custom_interest = 104; - - // The customer referenced in the query. - google.ads.googleads.v5.resources.Customer customer = 1; - - // The CustomerManagerLink referenced in the query. - google.ads.googleads.v5.resources.CustomerManagerLink customer_manager_link = 61; - - // The CustomerClientLink referenced in the query. - google.ads.googleads.v5.resources.CustomerClientLink customer_client_link = 62; - - // The CustomerClient referenced in the query. - google.ads.googleads.v5.resources.CustomerClient customer_client = 70; - - // The customer extension setting referenced in the query. - google.ads.googleads.v5.resources.CustomerExtensionSetting customer_extension_setting = 114; - - // The customer feed referenced in the query. - google.ads.googleads.v5.resources.CustomerFeed customer_feed = 64; - - // The customer label referenced in the query. - google.ads.googleads.v5.resources.CustomerLabel customer_label = 124; - - // The customer negative criterion referenced in the query. - google.ads.googleads.v5.resources.CustomerNegativeCriterion customer_negative_criterion = 88; - - // The detail placement view referenced in the query. - google.ads.googleads.v5.resources.DetailPlacementView detail_placement_view = 118; - - // The display keyword view referenced in the query. - google.ads.googleads.v5.resources.DisplayKeywordView display_keyword_view = 47; - - // The distance view referenced in the query. - google.ads.googleads.v5.resources.DistanceView distance_view = 132; - - // The dynamic search ads search term view referenced in the query. - google.ads.googleads.v5.resources.DynamicSearchAdsSearchTermView dynamic_search_ads_search_term_view = 106; - - // The expanded landing page view referenced in the query. - google.ads.googleads.v5.resources.ExpandedLandingPageView expanded_landing_page_view = 128; - - // The extension feed item referenced in the query. - google.ads.googleads.v5.resources.ExtensionFeedItem extension_feed_item = 85; - - // The feed referenced in the query. - google.ads.googleads.v5.resources.Feed feed = 46; - - // The feed item referenced in the query. - google.ads.googleads.v5.resources.FeedItem feed_item = 50; - - // The feed item target referenced in the query. - google.ads.googleads.v5.resources.FeedItemTarget feed_item_target = 116; - - // The feed mapping referenced in the query. - google.ads.googleads.v5.resources.FeedMapping feed_mapping = 58; - - // The feed placeholder view referenced in the query. - google.ads.googleads.v5.resources.FeedPlaceholderView feed_placeholder_view = 97; - - // The gender view referenced in the query. - google.ads.googleads.v5.resources.GenderView gender_view = 40; - - // The geo target constant referenced in the query. - google.ads.googleads.v5.resources.GeoTargetConstant geo_target_constant = 23; - - // The geographic view referenced in the query. - google.ads.googleads.v5.resources.GeographicView geographic_view = 125; - - // The group placement view referenced in the query. - google.ads.googleads.v5.resources.GroupPlacementView group_placement_view = 119; - - // The hotel group view referenced in the query. - google.ads.googleads.v5.resources.HotelGroupView hotel_group_view = 51; - - // The hotel performance view referenced in the query. - google.ads.googleads.v5.resources.HotelPerformanceView hotel_performance_view = 71; - - // The income range view referenced in the query. - google.ads.googleads.v5.resources.IncomeRangeView income_range_view = 138; - - // The keyword view referenced in the query. - google.ads.googleads.v5.resources.KeywordView keyword_view = 21; - - // The keyword plan referenced in the query. - google.ads.googleads.v5.resources.KeywordPlan keyword_plan = 32; - - // The keyword plan campaign referenced in the query. - google.ads.googleads.v5.resources.KeywordPlanCampaign keyword_plan_campaign = 33; - - // The keyword plan campaign keyword referenced in the query. - google.ads.googleads.v5.resources.KeywordPlanCampaignKeyword keyword_plan_campaign_keyword = 140; - - // The keyword plan ad group referenced in the query. - google.ads.googleads.v5.resources.KeywordPlanAdGroup keyword_plan_ad_group = 35; - - // The keyword plan ad group referenced in the query. - google.ads.googleads.v5.resources.KeywordPlanAdGroupKeyword keyword_plan_ad_group_keyword = 141; - - // The label referenced in the query. - google.ads.googleads.v5.resources.Label label = 52; - - // The landing page view referenced in the query. - google.ads.googleads.v5.resources.LandingPageView landing_page_view = 126; - - // The language constant referenced in the query. - google.ads.googleads.v5.resources.LanguageConstant language_constant = 55; - - // The location view referenced in the query. - google.ads.googleads.v5.resources.LocationView location_view = 123; - - // The managed placement view referenced in the query. - google.ads.googleads.v5.resources.ManagedPlacementView managed_placement_view = 53; - - // The media file referenced in the query. - google.ads.googleads.v5.resources.MediaFile media_file = 90; - - // The mobile app category constant referenced in the query. - google.ads.googleads.v5.resources.MobileAppCategoryConstant mobile_app_category_constant = 87; - - // The mobile device constant referenced in the query. - google.ads.googleads.v5.resources.MobileDeviceConstant mobile_device_constant = 98; - - // The offline user data job referenced in the query. - google.ads.googleads.v5.resources.OfflineUserDataJob offline_user_data_job = 137; - - // The operating system version constant referenced in the query. - google.ads.googleads.v5.resources.OperatingSystemVersionConstant operating_system_version_constant = 86; - - // The paid organic search term view referenced in the query. - google.ads.googleads.v5.resources.PaidOrganicSearchTermView paid_organic_search_term_view = 129; - - // The parental status view referenced in the query. - google.ads.googleads.v5.resources.ParentalStatusView parental_status_view = 45; - - // The Product Bidding Category referenced in the query. - google.ads.googleads.v5.resources.ProductBiddingCategoryConstant product_bidding_category_constant = 109; - - // The product group view referenced in the query. - google.ads.googleads.v5.resources.ProductGroupView product_group_view = 54; - - // The recommendation referenced in the query. - google.ads.googleads.v5.resources.Recommendation recommendation = 22; - - // The search term view referenced in the query. - google.ads.googleads.v5.resources.SearchTermView search_term_view = 68; - - // The shared set referenced in the query. - google.ads.googleads.v5.resources.SharedCriterion shared_criterion = 29; - - // The shared set referenced in the query. - google.ads.googleads.v5.resources.SharedSet shared_set = 27; - - // The shopping performance view referenced in the query. - google.ads.googleads.v5.resources.ShoppingPerformanceView shopping_performance_view = 117; - - // The AccountLink referenced in the query. - google.ads.googleads.v5.resources.ThirdPartyAppAnalyticsLink third_party_app_analytics_link = 144; - - // The topic view referenced in the query. - google.ads.googleads.v5.resources.TopicView topic_view = 44; - - // The user interest referenced in the query. - google.ads.googleads.v5.resources.UserInterest user_interest = 59; - - // The user list referenced in the query. - google.ads.googleads.v5.resources.UserList user_list = 38; - - // The user location view referenced in the query. - google.ads.googleads.v5.resources.UserLocationView user_location_view = 135; - - // The remarketing action referenced in the query. - google.ads.googleads.v5.resources.RemarketingAction remarketing_action = 60; - - // The topic constant referenced in the query. - google.ads.googleads.v5.resources.TopicConstant topic_constant = 31; - - // The video referenced in the query. - google.ads.googleads.v5.resources.Video video = 39; - - // The metrics. - google.ads.googleads.v5.common.Metrics metrics = 4; - - // The segments. - google.ads.googleads.v5.common.Segments segments = 102; -} - -// Request message for [GoogleAdsService.Mutate][google.ads.googleads.v5.services.GoogleAdsService.Mutate]. -message MutateGoogleAdsRequest { - // Required. The ID of the customer whose resources are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual resources. - repeated MutateOperation mutate_operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. The mutable - // resource will only be returned if the resource has the appropriate response - // field. E.g. MutateCampaignResult.campaign. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// Response message for [GoogleAdsService.Mutate][google.ads.googleads.v5.services.GoogleAdsService.Mutate]. -message MutateGoogleAdsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g., auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All responses for the mutate. - repeated MutateOperationResponse mutate_operation_responses = 1; -} - -// A single operation (create, update, remove) on a resource. -message MutateOperation { - // The mutate operation. - oneof operation { - // An ad group ad label mutate operation. - AdGroupAdLabelOperation ad_group_ad_label_operation = 17; - - // An ad group ad mutate operation. - AdGroupAdOperation ad_group_ad_operation = 1; - - // An ad group bid modifier mutate operation. - AdGroupBidModifierOperation ad_group_bid_modifier_operation = 2; - - // An ad group criterion label mutate operation. - AdGroupCriterionLabelOperation ad_group_criterion_label_operation = 18; - - // An ad group criterion mutate operation. - AdGroupCriterionOperation ad_group_criterion_operation = 3; - - // An ad group extension setting mutate operation. - AdGroupExtensionSettingOperation ad_group_extension_setting_operation = 19; - - // An ad group feed mutate operation. - AdGroupFeedOperation ad_group_feed_operation = 20; - - // An ad group label mutate operation. - AdGroupLabelOperation ad_group_label_operation = 21; - - // An ad group mutate operation. - AdGroupOperation ad_group_operation = 5; - - // An ad mutate operation. - AdOperation ad_operation = 49; - - // An ad parameter mutate operation. - AdParameterOperation ad_parameter_operation = 22; - - // An asset mutate operation. - AssetOperation asset_operation = 23; - - // A bidding strategy mutate operation. - BiddingStrategyOperation bidding_strategy_operation = 6; - - // A campaign asset mutate operation. - CampaignAssetOperation campaign_asset_operation = 52; - - // A campaign bid modifier mutate operation. - CampaignBidModifierOperation campaign_bid_modifier_operation = 7; - - // A campaign budget mutate operation. - CampaignBudgetOperation campaign_budget_operation = 8; - - // A campaign criterion mutate operation. - CampaignCriterionOperation campaign_criterion_operation = 13; - - // A campaign draft mutate operation. - CampaignDraftOperation campaign_draft_operation = 24; - - // A campaign experiment mutate operation. - CampaignExperimentOperation campaign_experiment_operation = 25; - - // A campaign extension setting mutate operation. - CampaignExtensionSettingOperation campaign_extension_setting_operation = 26; - - // A campaign feed mutate operation. - CampaignFeedOperation campaign_feed_operation = 27; - - // A campaign label mutate operation. - CampaignLabelOperation campaign_label_operation = 28; - - // A campaign mutate operation. - CampaignOperation campaign_operation = 10; - - // A campaign shared set mutate operation. - CampaignSharedSetOperation campaign_shared_set_operation = 11; - - // A conversion action mutate operation. - ConversionActionOperation conversion_action_operation = 12; - - // A customer extension setting mutate operation. - CustomerExtensionSettingOperation customer_extension_setting_operation = 30; - - // A customer feed mutate operation. - CustomerFeedOperation customer_feed_operation = 31; - - // A customer label mutate operation. - CustomerLabelOperation customer_label_operation = 32; - - // A customer negative criterion mutate operation. - CustomerNegativeCriterionOperation customer_negative_criterion_operation = 34; - - // A customer mutate operation. - CustomerOperation customer_operation = 35; - - // An extension feed item mutate operation. - ExtensionFeedItemOperation extension_feed_item_operation = 36; - - // A feed item mutate operation. - FeedItemOperation feed_item_operation = 37; - - // A feed item target mutate operation. - FeedItemTargetOperation feed_item_target_operation = 38; - - // A feed mapping mutate operation. - FeedMappingOperation feed_mapping_operation = 39; - - // A feed mutate operation. - FeedOperation feed_operation = 40; - - // A keyword plan ad group operation. - KeywordPlanAdGroupOperation keyword_plan_ad_group_operation = 44; - - // A keyword plan ad group keyword operation. - KeywordPlanAdGroupKeywordOperation keyword_plan_ad_group_keyword_operation = 50; - - // A keyword plan campaign keyword operation. - KeywordPlanCampaignKeywordOperation keyword_plan_campaign_keyword_operation = 51; - - // A keyword plan campaign operation. - KeywordPlanCampaignOperation keyword_plan_campaign_operation = 45; - - // A keyword plan operation. - KeywordPlanOperation keyword_plan_operation = 48; - - // A label mutate operation. - LabelOperation label_operation = 41; - - // A media file mutate operation. - MediaFileOperation media_file_operation = 42; - - // A remarketing action mutate operation. - RemarketingActionOperation remarketing_action_operation = 43; - - // A shared criterion mutate operation. - SharedCriterionOperation shared_criterion_operation = 14; - - // A shared set mutate operation. - SharedSetOperation shared_set_operation = 15; - - // A user list mutate operation. - UserListOperation user_list_operation = 16; - } -} - -// Response message for the resource mutate. -message MutateOperationResponse { - // The mutate response. - oneof response { - // The result for the ad group ad label mutate. - MutateAdGroupAdLabelResult ad_group_ad_label_result = 17; - - // The result for the ad group ad mutate. - MutateAdGroupAdResult ad_group_ad_result = 1; - - // The result for the ad group bid modifier mutate. - MutateAdGroupBidModifierResult ad_group_bid_modifier_result = 2; - - // The result for the ad group criterion label mutate. - MutateAdGroupCriterionLabelResult ad_group_criterion_label_result = 18; - - // The result for the ad group criterion mutate. - MutateAdGroupCriterionResult ad_group_criterion_result = 3; - - // The result for the ad group extension setting mutate. - MutateAdGroupExtensionSettingResult ad_group_extension_setting_result = 19; - - // The result for the ad group feed mutate. - MutateAdGroupFeedResult ad_group_feed_result = 20; - - // The result for the ad group label mutate. - MutateAdGroupLabelResult ad_group_label_result = 21; - - // The result for the ad group mutate. - MutateAdGroupResult ad_group_result = 5; - - // The result for the ad parameter mutate. - MutateAdParameterResult ad_parameter_result = 22; - - // The result for the ad mutate. - MutateAdResult ad_result = 49; - - // The result for the asset mutate. - MutateAssetResult asset_result = 23; - - // The result for the bidding strategy mutate. - MutateBiddingStrategyResult bidding_strategy_result = 6; - - // The result for the campaign asset mutate. - MutateCampaignAssetResult campaign_asset_result = 52; - - // The result for the campaign bid modifier mutate. - MutateCampaignBidModifierResult campaign_bid_modifier_result = 7; - - // The result for the campaign budget mutate. - MutateCampaignBudgetResult campaign_budget_result = 8; - - // The result for the campaign criterion mutate. - MutateCampaignCriterionResult campaign_criterion_result = 13; - - // The result for the campaign draft mutate. - MutateCampaignDraftResult campaign_draft_result = 24; - - // The result for the campaign experiment mutate. - MutateCampaignExperimentResult campaign_experiment_result = 25; - - // The result for the campaign extension setting mutate. - MutateCampaignExtensionSettingResult campaign_extension_setting_result = 26; - - // The result for the campaign feed mutate. - MutateCampaignFeedResult campaign_feed_result = 27; - - // The result for the campaign label mutate. - MutateCampaignLabelResult campaign_label_result = 28; - - // The result for the campaign mutate. - MutateCampaignResult campaign_result = 10; - - // The result for the campaign shared set mutate. - MutateCampaignSharedSetResult campaign_shared_set_result = 11; - - // The result for the conversion action mutate. - MutateConversionActionResult conversion_action_result = 12; - - // The result for the customer extension setting mutate. - MutateCustomerExtensionSettingResult customer_extension_setting_result = 30; - - // The result for the customer feed mutate. - MutateCustomerFeedResult customer_feed_result = 31; - - // The result for the customer label mutate. - MutateCustomerLabelResult customer_label_result = 32; - - // The result for the customer negative criterion mutate. - MutateCustomerNegativeCriteriaResult customer_negative_criterion_result = 34; - - // The result for the customer mutate. - MutateCustomerResult customer_result = 35; - - // The result for the extension feed item mutate. - MutateExtensionFeedItemResult extension_feed_item_result = 36; - - // The result for the feed item mutate. - MutateFeedItemResult feed_item_result = 37; - - // The result for the feed item target mutate. - MutateFeedItemTargetResult feed_item_target_result = 38; - - // The result for the feed mapping mutate. - MutateFeedMappingResult feed_mapping_result = 39; - - // The result for the feed mutate. - MutateFeedResult feed_result = 40; - - // The result for the keyword plan ad group mutate. - MutateKeywordPlanAdGroupResult keyword_plan_ad_group_result = 44; - - // The result for the keyword plan campaign mutate. - MutateKeywordPlanCampaignResult keyword_plan_campaign_result = 45; - - // The result for the keyword plan ad group keyword mutate. - MutateKeywordPlanAdGroupKeywordResult keyword_plan_ad_group_keyword_result = 50; - - // The result for the keyword plan campaign keyword mutate. - MutateKeywordPlanCampaignKeywordResult keyword_plan_campaign_keyword_result = 51; - - // The result for the keyword plan mutate. - MutateKeywordPlansResult keyword_plan_result = 48; - - // The result for the label mutate. - MutateLabelResult label_result = 41; - - // The result for the media file mutate. - MutateMediaFileResult media_file_result = 42; - - // The result for the remarketing action mutate. - MutateRemarketingActionResult remarketing_action_result = 43; - - // The result for the shared criterion mutate. - MutateSharedCriterionResult shared_criterion_result = 14; - - // The result for the shared set mutate. - MutateSharedSetResult shared_set_result = 15; - - // The result for the user list mutate. - MutateUserListResult user_list_result = 16; - } -} diff --git a/google/ads/googleads/v5/services/group_placement_view_service.proto b/google/ads/googleads/v5/services/group_placement_view_service.proto deleted file mode 100644 index 300653944..000000000 --- a/google/ads/googleads/v5/services/group_placement_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/group_placement_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GroupPlacementViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Group Placement View service. - -// Service to fetch Group Placement views. -service GroupPlacementViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Group Placement view in full detail. - rpc GetGroupPlacementView(GetGroupPlacementViewRequest) returns (google.ads.googleads.v5.resources.GroupPlacementView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/groupPlacementViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [GroupPlacementViewService.GetGroupPlacementView][google.ads.googleads.v5.services.GroupPlacementViewService.GetGroupPlacementView]. -message GetGroupPlacementViewRequest { - // Required. The resource name of the Group Placement view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GroupPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/hotel_group_view_service.proto b/google/ads/googleads/v5/services/hotel_group_view_service.proto deleted file mode 100644 index 9246b1f95..000000000 --- a/google/ads/googleads/v5/services/hotel_group_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/hotel_group_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "HotelGroupViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Hotel Group View Service. - -// Service to manage Hotel Group Views. -service HotelGroupViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Hotel Group View in full detail. - rpc GetHotelGroupView(GetHotelGroupViewRequest) returns (google.ads.googleads.v5.resources.HotelGroupView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/hotelGroupViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [HotelGroupViewService.GetHotelGroupView][google.ads.googleads.v5.services.HotelGroupViewService.GetHotelGroupView]. -message GetHotelGroupViewRequest { - // Required. Resource name of the Hotel Group View to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelGroupView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/hotel_performance_view_service.proto b/google/ads/googleads/v5/services/hotel_performance_view_service.proto deleted file mode 100644 index 3a20d60d0..000000000 --- a/google/ads/googleads/v5/services/hotel_performance_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/hotel_performance_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "HotelPerformanceViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Hotel Performance View Service. - -// Service to manage Hotel Performance Views. -service HotelPerformanceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Hotel Performance View in full detail. - rpc GetHotelPerformanceView(GetHotelPerformanceViewRequest) returns (google.ads.googleads.v5.resources.HotelPerformanceView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/hotelPerformanceView}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [HotelPerformanceViewService.GetHotelPerformanceView][google.ads.googleads.v5.services.HotelPerformanceViewService.GetHotelPerformanceView]. -message GetHotelPerformanceViewRequest { - // Required. Resource name of the Hotel Performance View to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/income_range_view_service.proto b/google/ads/googleads/v5/services/income_range_view_service.proto deleted file mode 100644 index 4a4a8acba..000000000 --- a/google/ads/googleads/v5/services/income_range_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/income_range_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "IncomeRangeViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Income Range View service. - -// Service to manage income range views. -service IncomeRangeViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested income range view in full detail. - rpc GetIncomeRangeView(GetIncomeRangeViewRequest) returns (google.ads.googleads.v5.resources.IncomeRangeView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/incomeRangeViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [IncomeRangeViewService.GetIncomeRangeView][google.ads.googleads.v5.services.IncomeRangeViewService.GetIncomeRangeView]. -message GetIncomeRangeViewRequest { - // Required. The resource name of the income range view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/IncomeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/invoice_service.proto b/google/ads/googleads/v5/services/invoice_service.proto deleted file mode 100644 index ebb12f15d..000000000 --- a/google/ads/googleads/v5/services/invoice_service.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/month_of_year.proto"; -import "google/ads/googleads/v5/resources/invoice.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Invoice service. - -// A service to fetch invoices issued for a billing setup during a given month. -service InvoiceService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns all invoices associated with a billing setup, for a given month. - rpc ListInvoices(ListInvoicesRequest) returns (ListInvoicesResponse) { - option (google.api.http) = { - get: "/v5/customers/{customer_id=*}/invoices" - }; - option (google.api.method_signature) = "customer_id,billing_setup,issue_year,issue_month"; - } -} - -// Request message for fetching the invoices of a given billing setup that were -// issued during a given month. -message ListInvoicesRequest { - // Required. The ID of the customer to fetch invoices for. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The billing setup resource name of the requested invoices. - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - string billing_setup = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. The issue year to retrieve invoices, in yyyy format. Only - // invoices issued in 2019 or later can be retrieved. - string issue_year = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The issue month to retrieve invoices. - google.ads.googleads.v5.enums.MonthOfYearEnum.MonthOfYear issue_month = 4 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [InvoiceService.ListInvoices][google.ads.googleads.v5.services.InvoiceService.ListInvoices]. -message ListInvoicesResponse { - // The list of invoices that match the billing setup and time period. - repeated google.ads.googleads.v5.resources.Invoice invoices = 1; -} diff --git a/google/ads/googleads/v5/services/keyword_plan_ad_group_keyword_service.proto b/google/ads/googleads/v5/services/keyword_plan_ad_group_keyword_service.proto deleted file mode 100644 index 9837be206..000000000 --- a/google/ads/googleads/v5/services/keyword_plan_ad_group_keyword_service.proto +++ /dev/null @@ -1,143 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/keyword_plan_ad_group_keyword.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupKeywordServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the keyword plan ad group keyword service. - -// Service to manage Keyword Plan ad group keywords. KeywordPlanAdGroup is -// required to add ad group keywords. Positive and negative keywords are -// supported. A maximum of 10,000 positive keywords are allowed per keyword -// plan. A maximum of 1,000 negative keywords are allower per keyword plan. This -// includes campaign negative keywords and ad group negative keywords. -service KeywordPlanAdGroupKeywordService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Keyword Plan ad group keyword in full detail. - rpc GetKeywordPlanAdGroupKeyword(GetKeywordPlanAdGroupKeywordRequest) returns (google.ads.googleads.v5.resources.KeywordPlanAdGroupKeyword) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan ad group keywords. Operation - // statuses are returned. - rpc MutateKeywordPlanAdGroupKeywords(MutateKeywordPlanAdGroupKeywordsRequest) returns (MutateKeywordPlanAdGroupKeywordsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword][google.ads.googleads.v5.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword]. -message GetKeywordPlanAdGroupKeywordRequest { - // Required. The resource name of the ad group keyword to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - } - ]; -} - -// Request message for -// [KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords][google.ads.googleads.v5.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords]. -message MutateKeywordPlanAdGroupKeywordsRequest { - // Required. The ID of the customer whose Keyword Plan ad group keywords are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan ad group - // keywords. - repeated KeywordPlanAdGroupKeywordOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan ad group -// keyword. -message KeywordPlanAdGroupKeywordOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // ad group keyword. - google.ads.googleads.v5.resources.KeywordPlanAdGroupKeyword create = 1; - - // Update operation: The Keyword Plan ad group keyword is expected to have a - // valid resource name. - google.ads.googleads.v5.resources.KeywordPlanAdGroupKeyword update = 2; - - // Remove operation: A resource name for the removed Keyword Plan ad group - // keyword is expected, in this format: - // - // `customers/{customer_id}/keywordPlanAdGroupKeywords/{kp_ad_group_keyword_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - }]; - } -} - -// Response message for a Keyword Plan ad group keyword mutate. -message MutateKeywordPlanAdGroupKeywordsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlanAdGroupKeywordResult results = 2; -} - -// The result for the Keyword Plan ad group keyword mutate. -message MutateKeywordPlanAdGroupKeywordResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/keyword_plan_ad_group_service.proto b/google/ads/googleads/v5/services/keyword_plan_ad_group_service.proto deleted file mode 100644 index f8ad4a2e5..000000000 --- a/google/ads/googleads/v5/services/keyword_plan_ad_group_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/keyword_plan_ad_group.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the keyword plan ad group service. - -// Service to manage Keyword Plan ad groups. -service KeywordPlanAdGroupService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Keyword Plan ad group in full detail. - rpc GetKeywordPlanAdGroup(GetKeywordPlanAdGroupRequest) returns (google.ads.googleads.v5.resources.KeywordPlanAdGroup) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/keywordPlanAdGroups/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan ad groups. Operation statuses are - // returned. - rpc MutateKeywordPlanAdGroups(MutateKeywordPlanAdGroupsRequest) returns (MutateKeywordPlanAdGroupsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/keywordPlanAdGroups:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [KeywordPlanAdGroupService.GetKeywordPlanAdGroup][google.ads.googleads.v5.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup]. -message GetKeywordPlanAdGroupRequest { - // Required. The resource name of the Keyword Plan ad group to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - } - ]; -} - -// Request message for [KeywordPlanAdGroupService.MutateKeywordPlanAdGroups][google.ads.googleads.v5.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups]. -message MutateKeywordPlanAdGroupsRequest { - // Required. The ID of the customer whose Keyword Plan ad groups are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan ad groups. - repeated KeywordPlanAdGroupOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan ad group. -message KeywordPlanAdGroupOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // ad group. - google.ads.googleads.v5.resources.KeywordPlanAdGroup create = 1; - - // Update operation: The Keyword Plan ad group is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.KeywordPlanAdGroup update = 2; - - // Remove operation: A resource name for the removed Keyword Plan ad group - // is expected, in this format: - // - // `customers/{customer_id}/keywordPlanAdGroups/{kp_ad_group_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - }]; - } -} - -// Response message for a Keyword Plan ad group mutate. -message MutateKeywordPlanAdGroupsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. The order of the results is determined by the - // order of the keywords in the original request. - repeated MutateKeywordPlanAdGroupResult results = 2; -} - -// The result for the Keyword Plan ad group mutate. -message MutateKeywordPlanAdGroupResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/keyword_plan_campaign_keyword_service.proto b/google/ads/googleads/v5/services/keyword_plan_campaign_keyword_service.proto deleted file mode 100644 index d33a9caaf..000000000 --- a/google/ads/googleads/v5/services/keyword_plan_campaign_keyword_service.proto +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/keyword_plan_campaign_keyword.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignKeywordServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the keyword plan campaign keyword service. - -// Service to manage Keyword Plan campaign keywords. KeywordPlanCampaign is -// required to add the campaign keywords. Only negative keywords are supported. -// A maximum of 1000 negative keywords are allowed per plan. This includes both -// campaign negative keywords and ad group negative keywords. -service KeywordPlanCampaignKeywordService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested plan in full detail. - rpc GetKeywordPlanCampaignKeyword(GetKeywordPlanCampaignKeywordRequest) returns (google.ads.googleads.v5.resources.KeywordPlanCampaignKeyword) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan campaign keywords. Operation - // statuses are returned. - rpc MutateKeywordPlanCampaignKeywords(MutateKeywordPlanCampaignKeywordsRequest) returns (MutateKeywordPlanCampaignKeywordsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword][google.ads.googleads.v5.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword]. -message GetKeywordPlanCampaignKeywordRequest { - // Required. The resource name of the plan to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - } - ]; -} - -// Request message for -// [KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords][google.ads.googleads.v5.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords]. -message MutateKeywordPlanCampaignKeywordsRequest { - // Required. The ID of the customer whose campaign keywords are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan campaign - // keywords. - repeated KeywordPlanCampaignKeywordOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan campaign -// keyword. -message KeywordPlanCampaignKeywordOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // campaign keyword. - google.ads.googleads.v5.resources.KeywordPlanCampaignKeyword create = 1; - - // Update operation: The Keyword Plan campaign keyword expected to have a - // valid resource name. - google.ads.googleads.v5.resources.KeywordPlanCampaignKeyword update = 2; - - // Remove operation: A resource name for the removed Keyword Plan campaign - // keywords expected in this format: - // - // `customers/{customer_id}/keywordPlanCampaignKeywords/{kp_campaign_keyword_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - }]; - } -} - -// Response message for a Keyword Plan campaign keyword mutate. -message MutateKeywordPlanCampaignKeywordsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlanCampaignKeywordResult results = 2; -} - -// The result for the Keyword Plan campaign keyword mutate. -message MutateKeywordPlanCampaignKeywordResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/keyword_plan_campaign_service.proto b/google/ads/googleads/v5/services/keyword_plan_campaign_service.proto deleted file mode 100644 index f3664f633..000000000 --- a/google/ads/googleads/v5/services/keyword_plan_campaign_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/keyword_plan_campaign.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the keyword plan campaign service. - -// Service to manage Keyword Plan campaigns. -service KeywordPlanCampaignService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Keyword Plan campaign in full detail. - rpc GetKeywordPlanCampaign(GetKeywordPlanCampaignRequest) returns (google.ads.googleads.v5.resources.KeywordPlanCampaign) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/keywordPlanCampaigns/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan campaigns. Operation statuses are - // returned. - rpc MutateKeywordPlanCampaigns(MutateKeywordPlanCampaignsRequest) returns (MutateKeywordPlanCampaignsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/keywordPlanCampaigns:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [KeywordPlanCampaignService.GetKeywordPlanCampaign][google.ads.googleads.v5.services.KeywordPlanCampaignService.GetKeywordPlanCampaign]. -message GetKeywordPlanCampaignRequest { - // Required. The resource name of the Keyword Plan campaign to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - } - ]; -} - -// Request message for -// [KeywordPlanCampaignService.MutateKeywordPlanCampaigns][google.ads.googleads.v5.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns]. -message MutateKeywordPlanCampaignsRequest { - // Required. The ID of the customer whose Keyword Plan campaigns are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan campaigns. - repeated KeywordPlanCampaignOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan campaign. -message KeywordPlanCampaignOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // campaign. - google.ads.googleads.v5.resources.KeywordPlanCampaign create = 1; - - // Update operation: The Keyword Plan campaign is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.KeywordPlanCampaign update = 2; - - // Remove operation: A resource name for the removed Keyword Plan campaign - // is expected, in this format: - // - // `customers/{customer_id}/keywordPlanCampaigns/{keywordPlan_campaign_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - }]; - } -} - -// Response message for a Keyword Plan campaign mutate. -message MutateKeywordPlanCampaignsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlanCampaignResult results = 2; -} - -// The result for the Keyword Plan campaign mutate. -message MutateKeywordPlanCampaignResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/keyword_plan_idea_service.proto b/google/ads/googleads/v5/services/keyword_plan_idea_service.proto deleted file mode 100644 index a36203905..000000000 --- a/google/ads/googleads/v5/services/keyword_plan_idea_service.proto +++ /dev/null @@ -1,156 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/common/keyword_plan_common.proto"; -import "google/ads/googleads/v5/enums/keyword_plan_network.proto"; -import "google/api/annotations.proto"; -import "google/api/field_behavior.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/client.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanIdeaServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the keyword plan idea service. - -// Service to generate keyword ideas. -service KeywordPlanIdeaService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns a list of keyword ideas. - rpc GenerateKeywordIdeas(GenerateKeywordIdeasRequest) returns (GenerateKeywordIdeaResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}:generateKeywordIdeas" - body: "*" - }; - } -} - -// Request message for [KeywordPlanIdeaService.GenerateKeywordIdeas][google.ads.googleads.v5.services.KeywordPlanIdeaService.GenerateKeywordIdeas]. -message GenerateKeywordIdeasRequest { - // The ID of the customer with the recommendation. - string customer_id = 1; - - // Required. The resource name of the language to target. - // Required - google.protobuf.StringValue language = 7 [(google.api.field_behavior) = REQUIRED]; - - // The resource names of the location to target. - // Max 10 - repeated google.protobuf.StringValue geo_target_constants = 8; - - // If true, adult keywords will be included in response. - // The default value is false. - bool include_adult_keywords = 10; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. To request next page of results use the - // value obtained from `next_page_token` in the previous response. - // The request fields must match across pages. - string page_token = 12; - - // Number of results to retrieve in a single page. - // A maximum of 10,000 results may be returned, if the page_size - // exceeds this, it is ignored. - // If unspecified, at most 10,000 results will be returned. - // The server may decide to further limit the number of returned resources. - // If the response contains fewer than 10,000 results it may not be assumed - // as last page of results. - int32 page_size = 13; - - // Targeting network. - google.ads.googleads.v5.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork keyword_plan_network = 9; - - // The type of seed to generate keyword ideas. - oneof seed { - // A Keyword and a specific Url to generate ideas from - // e.g. cars, www.example.com/cars. - KeywordAndUrlSeed keyword_and_url_seed = 2; - - // A Keyword or phrase to generate ideas from, e.g. cars. - KeywordSeed keyword_seed = 3; - - // A specific url to generate ideas from, e.g. www.example.com/cars. - UrlSeed url_seed = 5; - - // The site to generate ideas from, e.g. www.example.com. - SiteSeed site_seed = 11; - } -} - -// Keyword And Url Seed -message KeywordAndUrlSeed { - // The URL to crawl in order to generate keyword ideas. - google.protobuf.StringValue url = 1; - - // Requires at least one keyword. - repeated google.protobuf.StringValue keywords = 2; -} - -// Keyword Seed -message KeywordSeed { - // Requires at least one keyword. - repeated google.protobuf.StringValue keywords = 1; -} - -// Site Seed -message SiteSeed { - // The domain name of the site. If the customer requesting the ideas doesn't - // own the site provided only public information is returned. - google.protobuf.StringValue site = 1; -} - -// Url Seed -message UrlSeed { - // The URL to crawl in order to generate keyword ideas. - google.protobuf.StringValue url = 1; -} - -// Response message for [KeywordPlanIdeaService.GenerateKeywordIdeas][google.ads.googleads.v5.services.KeywordPlanIdeaService.GenerateKeywordIdeas]. -message GenerateKeywordIdeaResponse { - // Results of generating keyword ideas. - repeated GenerateKeywordIdeaResult results = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. - // `next_page_token` is not returned for the last page. - string next_page_token = 2; - - // Total number of results available. - int64 total_size = 3; -} - -// The result of generating keyword ideas. -message GenerateKeywordIdeaResult { - // Text of the keyword idea. - // As in Keyword Plan historical metrics, this text may not be an actual - // keyword, but the canonical form of multiple keywords. - // See KeywordPlanKeywordHistoricalMetrics message in KeywordPlanService. - google.protobuf.StringValue text = 2; - - // The historical metrics for the keyword - google.ads.googleads.v5.common.KeywordPlanHistoricalMetrics keyword_idea_metrics = 3; -} diff --git a/google/ads/googleads/v5/services/keyword_plan_service.proto b/google/ads/googleads/v5/services/keyword_plan_service.proto deleted file mode 100644 index 6b97aac2e..000000000 --- a/google/ads/googleads/v5/services/keyword_plan_service.proto +++ /dev/null @@ -1,379 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/common/keyword_plan_common.proto"; -import "google/ads/googleads/v5/resources/keyword_plan.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/protobuf/wrappers.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the keyword plan service. - -// Service to manage keyword plans. -service KeywordPlanService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested plan in full detail. - rpc GetKeywordPlan(GetKeywordPlanRequest) returns (google.ads.googleads.v5.resources.KeywordPlan) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/keywordPlans/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes keyword plans. Operation statuses are - // returned. - rpc MutateKeywordPlans(MutateKeywordPlansRequest) returns (MutateKeywordPlansResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/keywordPlans:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Returns the requested Keyword Plan forecast curve. - // Only the bidding strategy is considered for generating forecast curve. - // The bidding strategy value specified in the plan is ignored. - // - // To generate a forecast at a value specified in the plan, use - // KeywordPlanService.GenerateForecastMetrics. - rpc GenerateForecastCurve(GenerateForecastCurveRequest) returns (GenerateForecastCurveResponse) { - option (google.api.http) = { - post: "/v5/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" - body: "*" - }; - option (google.api.method_signature) = "keyword_plan"; - } - - // Returns a forecast in the form of a time series for the Keyword Plan over - // the next 52 weeks. - // (1) Forecasts closer to the current date are generally more accurate than - // further out. - // - // (2) The forecast reflects seasonal trends using current and - // prior traffic patterns. The forecast period of the plan is ignored. - rpc GenerateForecastTimeSeries(GenerateForecastTimeSeriesRequest) returns (GenerateForecastTimeSeriesResponse) { - option (google.api.http) = { - post: "/v5/{keyword_plan=customers/*/keywordPlans/*}:generateForecastTimeSeries" - body: "*" - }; - option (google.api.method_signature) = "keyword_plan"; - } - - // Returns the requested Keyword Plan forecasts. - rpc GenerateForecastMetrics(GenerateForecastMetricsRequest) returns (GenerateForecastMetricsResponse) { - option (google.api.http) = { - post: "/v5/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" - body: "*" - }; - option (google.api.method_signature) = "keyword_plan"; - } - - // Returns the requested Keyword Plan historical metrics. - rpc GenerateHistoricalMetrics(GenerateHistoricalMetricsRequest) returns (GenerateHistoricalMetricsResponse) { - option (google.api.http) = { - post: "/v5/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" - body: "*" - }; - option (google.api.method_signature) = "keyword_plan"; - } -} - -// Request message for [KeywordPlanService.GetKeywordPlan][google.ads.googleads.v5.services.KeywordPlanService.GetKeywordPlan]. -message GetKeywordPlanRequest { - // Required. The resource name of the plan to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Request message for [KeywordPlanService.MutateKeywordPlans][google.ads.googleads.v5.services.KeywordPlanService.MutateKeywordPlans]. -message MutateKeywordPlansRequest { - // Required. The ID of the customer whose keyword plans are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual keyword plans. - repeated KeywordPlanOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a keyword plan. -message KeywordPlanOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new keyword plan. - google.ads.googleads.v5.resources.KeywordPlan create = 1; - - // Update operation: The keyword plan is expected to have a valid resource - // name. - google.ads.googleads.v5.resources.KeywordPlan update = 2; - - // Remove operation: A resource name for the removed keyword plan is - // expected in this format: - // - // `customers/{customer_id}/keywordPlans/{keyword_plan_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - }]; - } -} - -// Response message for a keyword plan mutate. -message MutateKeywordPlansResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlansResult results = 2; -} - -// The result for the keyword plan mutate. -message MutateKeywordPlansResult { - // Returned for successful operations. - string resource_name = 1; -} - -// Request message for [KeywordPlanService.GenerateForecastCurve][google.ads.googleads.v5.services.KeywordPlanService.GenerateForecastCurve]. -message GenerateForecastCurveRequest { - // Required. The resource name of the keyword plan to be forecasted. - string keyword_plan = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Response message for [KeywordPlanService.GenerateForecastCurve][google.ads.googleads.v5.services.KeywordPlanService.GenerateForecastCurve]. -message GenerateForecastCurveResponse { - // List of forecast curves for the keyword plan campaign. - // One maximum. - repeated KeywordPlanCampaignForecastCurve campaign_forecast_curves = 1; -} - -// Request message for [KeywordPlanService.GenerateForecastTimeSeries][google.ads.googleads.v5.services.KeywordPlanService.GenerateForecastTimeSeries]. -message GenerateForecastTimeSeriesRequest { - // Required. The resource name of the keyword plan to be forecasted. - string keyword_plan = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Response message for [KeywordPlanService.GenerateForecastTimeSeries][google.ads.googleads.v5.services.KeywordPlanService.GenerateForecastTimeSeries]. -message GenerateForecastTimeSeriesResponse { - // List of weekly time series forecasts for the keyword plan campaign. - // One maximum. - repeated KeywordPlanWeeklyTimeSeriesForecast weekly_time_series_forecasts = 1; -} - -// Request message for [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v5.services.KeywordPlanService.GenerateForecastMetrics]. -message GenerateForecastMetricsRequest { - // Required. The resource name of the keyword plan to be forecasted. - string keyword_plan = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Response message for [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v5.services.KeywordPlanService.GenerateForecastMetrics]. -message GenerateForecastMetricsResponse { - // List of campaign forecasts. - // One maximum. - repeated KeywordPlanCampaignForecast campaign_forecasts = 1; - - // List of ad group forecasts. - repeated KeywordPlanAdGroupForecast ad_group_forecasts = 2; - - // List of keyword forecasts. - repeated KeywordPlanKeywordForecast keyword_forecasts = 3; -} - -// A campaign forecast. -message KeywordPlanCampaignForecast { - // The resource name of the Keyword Plan campaign related to the forecast. - // - // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` - google.protobuf.StringValue keyword_plan_campaign = 1; - - // The forecast for the Keyword Plan campaign. - ForecastMetrics campaign_forecast = 2; -} - -// An ad group forecast. -message KeywordPlanAdGroupForecast { - // The resource name of the Keyword Plan ad group related to the forecast. - // - // `customers/{customer_id}/keywordPlanAdGroups/{keyword_plan_ad_group_id}` - google.protobuf.StringValue keyword_plan_ad_group = 1; - - // The forecast for the Keyword Plan ad group. - ForecastMetrics ad_group_forecast = 2; -} - -// A keyword forecast. -message KeywordPlanKeywordForecast { - // The resource name of the Keyword Plan keyword related to the forecast. - // - // `customers/{customer_id}/keywordPlanAdGroupKeywords/{keyword_plan_ad_group_keyword_id}` - google.protobuf.StringValue keyword_plan_ad_group_keyword = 1; - - // The forecast for the Keyword Plan keyword. - ForecastMetrics keyword_forecast = 2; -} - -// The forecast curve for the campaign. -message KeywordPlanCampaignForecastCurve { - // The resource name of the Keyword Plan campaign related to the forecast. - // - // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` - google.protobuf.StringValue keyword_plan_campaign = 1; - - // The max cpc bid forecast curve for the campaign. - KeywordPlanMaxCpcBidForecastCurve max_cpc_bid_forecast_curve = 2; -} - -// The max cpc bid forecast curve. -message KeywordPlanMaxCpcBidForecastCurve { - // The forecasts for the Keyword Plan campaign at different max CPC bids. - repeated KeywordPlanMaxCpcBidForecast max_cpc_bid_forecasts = 1; -} - -// The forecast of the campaign at a specific bid. -message KeywordPlanMaxCpcBidForecast { - // The max cpc bid in micros. - google.protobuf.Int64Value max_cpc_bid_micros = 1; - - // The forecast for the Keyword Plan campaign at the specific bid. - ForecastMetrics max_cpc_bid_forecast = 2; -} - -// The weekly time series forecast for the keyword plan campaign. -message KeywordPlanWeeklyTimeSeriesForecast { - // The resource name of the Keyword Plan campaign related to the forecast. - // - // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` - optional string keyword_plan_campaign = 1; - - // The forecasts for the Keyword Plan campaign at different max CPC bids. - repeated KeywordPlanWeeklyForecast weekly_forecasts = 2; -} - -// The forecast of the campaign for the week starting start_date. -message KeywordPlanWeeklyForecast { - // The start date, in yyyy-mm-dd format. This date is inclusive. - optional string start_date = 1; - - // The forecast for the Keyword Plan campaign for the week. - ForecastMetrics forecast = 2; -} - -// Forecast metrics. -message ForecastMetrics { - // Impressions - google.protobuf.DoubleValue impressions = 1; - - // Ctr - google.protobuf.DoubleValue ctr = 2; - - // AVG cpc - google.protobuf.Int64Value average_cpc = 3; - - // Clicks - google.protobuf.DoubleValue clicks = 5; - - // Cost - google.protobuf.Int64Value cost_micros = 6; -} - -// Request message for [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v5.services.KeywordPlanService.GenerateHistoricalMetrics]. -message GenerateHistoricalMetricsRequest { - // Required. The resource name of the keyword plan of which historical metrics are - // requested. - string keyword_plan = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Response message for [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v5.services.KeywordPlanService.GenerateHistoricalMetrics]. -message GenerateHistoricalMetricsResponse { - // List of keyword historical metrics. - repeated KeywordPlanKeywordHistoricalMetrics metrics = 1; -} - -// A keyword historical metrics. -message KeywordPlanKeywordHistoricalMetrics { - // The text of the query associated with one or more ad_group_keywords in the - // plan. - // - // Note that we de-dupe your keywords list, eliminating close variants before - // returning the plan's keywords as text. For example, if your plan originally - // contained the keywords 'car' and 'cars', the returned search query will - // only contain 'cars'. - // Starting V5, the list of de-duped queries will be included in - // close_variants field. - google.protobuf.StringValue search_query = 1; - - // The list of close variant queries for search_query whose search results - // are combined into the search_query. - repeated string close_variants = 3; - - // The historical metrics for the query associated with one or more - // ad_group_keywords in the plan. - google.ads.googleads.v5.common.KeywordPlanHistoricalMetrics keyword_metrics = 2; -} diff --git a/google/ads/googleads/v5/services/keyword_view_service.proto b/google/ads/googleads/v5/services/keyword_view_service.proto deleted file mode 100644 index 6357a5155..000000000 --- a/google/ads/googleads/v5/services/keyword_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/keyword_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Keyword View service. - -// Service to manage keyword views. -service KeywordViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested keyword view in full detail. - rpc GetKeywordView(GetKeywordViewRequest) returns (google.ads.googleads.v5.resources.KeywordView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/keywordViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [KeywordViewService.GetKeywordView][google.ads.googleads.v5.services.KeywordViewService.GetKeywordView]. -message GetKeywordViewRequest { - // Required. The resource name of the keyword view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/label_service.proto b/google/ads/googleads/v5/services/label_service.proto deleted file mode 100644 index 9b39f33d5..000000000 --- a/google/ads/googleads/v5/services/label_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LabelServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Service to manage labels. -service LabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested label in full detail. - rpc GetLabel(GetLabelRequest) returns (google.ads.googleads.v5.resources.Label) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/labels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes labels. Operation statuses are returned. - rpc MutateLabels(MutateLabelsRequest) returns (MutateLabelsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/labels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [LabelService.GetLabel][google.ads.googleads.v5.services.LabelService.GetLabel]. -message GetLabelRequest { - // Required. The resource name of the label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} - -// Request message for [LabelService.MutateLabels][google.ads.googleads.v5.services.LabelService.MutateLabels]. -message MutateLabelsRequest { - // Required. ID of the customer whose labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on labels. - repeated LabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, remove, update) on a label. -message LabelOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new label. - google.ads.googleads.v5.resources.Label create = 1; - - // Update operation: The label is expected to have a valid resource name. - google.ads.googleads.v5.resources.Label update = 2; - - // Remove operation: A resource name for the label being removed, in - // this format: - // - // `customers/{customer_id}/labels/{label_id}` - string remove = 3; - } -} - -// Response message for a labels mutate. -message MutateLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateLabelResult results = 2; -} - -// The result for a label mutate. -message MutateLabelResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated label with only mutable fields after mutate. The field will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.Label label = 2; -} diff --git a/google/ads/googleads/v5/services/landing_page_view_service.proto b/google/ads/googleads/v5/services/landing_page_view_service.proto deleted file mode 100644 index 5296b90cc..000000000 --- a/google/ads/googleads/v5/services/landing_page_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/landing_page_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LandingPageViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the landing page view service. - -// Service to fetch landing page views. -service LandingPageViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested landing page view in full detail. - rpc GetLandingPageView(GetLandingPageViewRequest) returns (google.ads.googleads.v5.resources.LandingPageView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/landingPageViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [LandingPageViewService.GetLandingPageView][google.ads.googleads.v5.services.LandingPageViewService.GetLandingPageView]. -message GetLandingPageViewRequest { - // Required. The resource name of the landing page view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LandingPageView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/language_constant_service.proto b/google/ads/googleads/v5/services/language_constant_service.proto deleted file mode 100644 index 5761e2cbf..000000000 --- a/google/ads/googleads/v5/services/language_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/language_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LanguageConstantServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the language constant service. - -// Service to fetch language constants. -service LanguageConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested language constant. - rpc GetLanguageConstant(GetLanguageConstantRequest) returns (google.ads.googleads.v5.resources.LanguageConstant) { - option (google.api.http) = { - get: "/v5/{resource_name=languageConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [LanguageConstantService.GetLanguageConstant][google.ads.googleads.v5.services.LanguageConstantService.GetLanguageConstant]. -message GetLanguageConstantRequest { - // Required. Resource name of the language constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LanguageConstant" - } - ]; -} diff --git a/google/ads/googleads/v5/services/location_view_service.proto b/google/ads/googleads/v5/services/location_view_service.proto deleted file mode 100644 index 2fdd58228..000000000 --- a/google/ads/googleads/v5/services/location_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/location_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LocationViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Location View service. - -// Service to fetch location views. -service LocationViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested location view in full detail. - rpc GetLocationView(GetLocationViewRequest) returns (google.ads.googleads.v5.resources.LocationView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/locationViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [LocationViewService.GetLocationView][google.ads.googleads.v5.services.LocationViewService.GetLocationView]. -message GetLocationViewRequest { - // Required. The resource name of the location view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LocationView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/managed_placement_view_service.proto b/google/ads/googleads/v5/services/managed_placement_view_service.proto deleted file mode 100644 index 7627c1a3e..000000000 --- a/google/ads/googleads/v5/services/managed_placement_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/managed_placement_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ManagedPlacementViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Managed Placement View service. - -// Service to manage Managed Placement views. -service ManagedPlacementViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Managed Placement view in full detail. - rpc GetManagedPlacementView(GetManagedPlacementViewRequest) returns (google.ads.googleads.v5.resources.ManagedPlacementView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/managedPlacementViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ManagedPlacementViewService.GetManagedPlacementView][google.ads.googleads.v5.services.ManagedPlacementViewService.GetManagedPlacementView]. -message GetManagedPlacementViewRequest { - // Required. The resource name of the Managed Placement View to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ManagedPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/media_file_service.proto b/google/ads/googleads/v5/services/media_file_service.proto deleted file mode 100644 index a2ddea79b..000000000 --- a/google/ads/googleads/v5/services/media_file_service.proto +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/media_file.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MediaFileServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Media File service. - -// Service to manage media files. -service MediaFileService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested media file in full detail. - rpc GetMediaFile(GetMediaFileRequest) returns (google.ads.googleads.v5.resources.MediaFile) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/mediaFiles/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates media files. Operation statuses are returned. - rpc MutateMediaFiles(MutateMediaFilesRequest) returns (MutateMediaFilesResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/mediaFiles:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [MediaFileService.GetMediaFile][google.ads.googleads.v5.services.MediaFileService.GetMediaFile] -message GetMediaFileRequest { - // Required. The resource name of the media file to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MediaFile" - } - ]; -} - -// Request message for [MediaFileService.MutateMediaFiles][google.ads.googleads.v5.services.MediaFileService.MutateMediaFiles] -message MutateMediaFilesRequest { - // Required. The ID of the customer whose media files are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual media file. - repeated MediaFileOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation to create media file. -message MediaFileOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new media file. - google.ads.googleads.v5.resources.MediaFile create = 1; - } -} - -// Response message for a media file mutate. -message MutateMediaFilesResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateMediaFileResult results = 2; -} - -// The result for the media file mutate. -message MutateMediaFileResult { - // The resource name returned for successful operations. - string resource_name = 1; - - // The mutated media file with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.MediaFile media_file = 2; -} diff --git a/google/ads/googleads/v5/services/merchant_center_link_service.proto b/google/ads/googleads/v5/services/merchant_center_link_service.proto deleted file mode 100644 index 742a1681f..000000000 --- a/google/ads/googleads/v5/services/merchant_center_link_service.proto +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/merchant_center_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MerchantCenterLinkServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the MerchantCenterLink service. - -// This service allows management of links between Google Ads and Google -// Merchant Center. -service MerchantCenterLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns Merchant Center links available for this customer. - rpc ListMerchantCenterLinks(ListMerchantCenterLinksRequest) returns (ListMerchantCenterLinksResponse) { - option (google.api.http) = { - get: "/v5/customers/{customer_id=*}/merchantCenterLinks" - }; - option (google.api.method_signature) = "customer_id"; - } - - // Returns the Merchant Center link in full detail. - rpc GetMerchantCenterLink(GetMerchantCenterLinkRequest) returns (google.ads.googleads.v5.resources.MerchantCenterLink) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/merchantCenterLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Updates status or removes a Merchant Center link. - rpc MutateMerchantCenterLink(MutateMerchantCenterLinkRequest) returns (MutateMerchantCenterLinkResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/merchantCenterLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for [MerchantCenterLinkService.ListMerchantCenterLinks][google.ads.googleads.v5.services.MerchantCenterLinkService.ListMerchantCenterLinks]. -message ListMerchantCenterLinksRequest { - // Required. The ID of the customer onto which to apply the Merchant Center link list - // operation. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [MerchantCenterLinkService.ListMerchantCenterLinks][google.ads.googleads.v5.services.MerchantCenterLinkService.ListMerchantCenterLinks]. -message ListMerchantCenterLinksResponse { - // Merchant Center links available for the requested customer - repeated google.ads.googleads.v5.resources.MerchantCenterLink merchant_center_links = 1; -} - -// Request message for [MerchantCenterLinkService.GetMerchantCenterLink][google.ads.googleads.v5.services.MerchantCenterLinkService.GetMerchantCenterLink]. -message GetMerchantCenterLinkRequest { - // Required. Resource name of the Merchant Center link. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MerchantCenterLink" - } - ]; -} - -// Request message for [MerchantCenterLinkService.MutateMerchantCenterLink][google.ads.googleads.v5.services.MerchantCenterLinkService.MutateMerchantCenterLink]. -message MutateMerchantCenterLinkRequest { - // Required. The ID of the customer being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the link - MerchantCenterLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single update on a Merchant Center link. -message MerchantCenterLinkOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 3; - - // The operation to perform - oneof operation { - // Update operation: The merchant center link is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.MerchantCenterLink update = 1; - - // Remove operation: A resource name for the removed merchant center link is - // expected, in this format: - // - // `customers/{customer_id}/merchantCenterLinks/{merchant_center_id}` - string remove = 2; - } -} - -// Response message for Merchant Center link mutate. -message MutateMerchantCenterLinkResponse { - // Result for the mutate. - MutateMerchantCenterLinkResult result = 2; -} - -// The result for the Merchant Center link mutate. -message MutateMerchantCenterLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/mobile_app_category_constant_service.proto b/google/ads/googleads/v5/services/mobile_app_category_constant_service.proto deleted file mode 100644 index a0880bf08..000000000 --- a/google/ads/googleads/v5/services/mobile_app_category_constant_service.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/mobile_app_category_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MobileAppCategoryConstantServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Service to fetch mobile app category constants. -service MobileAppCategoryConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested mobile app category constant. - rpc GetMobileAppCategoryConstant(GetMobileAppCategoryConstantRequest) returns (google.ads.googleads.v5.resources.MobileAppCategoryConstant) { - option (google.api.http) = { - get: "/v5/{resource_name=mobileAppCategoryConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [MobileAppCategoryConstantService.GetMobileAppCategoryConstant][google.ads.googleads.v5.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant]. -message GetMobileAppCategoryConstantRequest { - // Required. Resource name of the mobile app category constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileAppCategoryConstant" - } - ]; -} diff --git a/google/ads/googleads/v5/services/mobile_device_constant_service.proto b/google/ads/googleads/v5/services/mobile_device_constant_service.proto deleted file mode 100644 index 74dcb6560..000000000 --- a/google/ads/googleads/v5/services/mobile_device_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/mobile_device_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MobileDeviceConstantServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the mobile device constant service. - -// Service to fetch mobile device constants. -service MobileDeviceConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested mobile device constant in full detail. - rpc GetMobileDeviceConstant(GetMobileDeviceConstantRequest) returns (google.ads.googleads.v5.resources.MobileDeviceConstant) { - option (google.api.http) = { - get: "/v5/{resource_name=mobileDeviceConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [MobileDeviceConstantService.GetMobileDeviceConstant][google.ads.googleads.v5.services.MobileDeviceConstantService.GetMobileDeviceConstant]. -message GetMobileDeviceConstantRequest { - // Required. Resource name of the mobile device to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileDeviceConstant" - } - ]; -} diff --git a/google/ads/googleads/v5/services/offline_user_data_job_service.proto b/google/ads/googleads/v5/services/offline_user_data_job_service.proto deleted file mode 100644 index 9b3efa574..000000000 --- a/google/ads/googleads/v5/services/offline_user_data_job_service.proto +++ /dev/null @@ -1,171 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/common/offline_user_data.proto"; -import "google/ads/googleads/v5/resources/offline_user_data_job.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/protobuf/wrappers.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the OfflineUserDataJobService. - -// Service to manage offline user data jobs. -service OfflineUserDataJobService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Creates an offline user data job. - rpc CreateOfflineUserDataJob(CreateOfflineUserDataJobRequest) returns (CreateOfflineUserDataJobResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/offlineUserDataJobs:create" - body: "*" - }; - option (google.api.method_signature) = "customer_id,job"; - } - - // Returns the offline user data job. - rpc GetOfflineUserDataJob(GetOfflineUserDataJobRequest) returns (google.ads.googleads.v5.resources.OfflineUserDataJob) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/offlineUserDataJobs/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Adds operations to the offline user data job. - rpc AddOfflineUserDataJobOperations(AddOfflineUserDataJobOperationsRequest) returns (AddOfflineUserDataJobOperationsResponse) { - option (google.api.http) = { - post: "/v5/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" - body: "*" - }; - option (google.api.method_signature) = "resource_name,operations"; - } - - // Runs the offline user data job. - // - // When finished, the long running operation will contain the processing - // result or failure information, if any. - rpc RunOfflineUserDataJob(RunOfflineUserDataJobRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v5/{resource_name=customers/*/offlineUserDataJobs/*}:run" - body: "*" - }; - option (google.api.method_signature) = "resource_name"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.protobuf.Empty" - }; - } -} - -// Request message for -// [OfflineUserDataJobService.CreateOfflineUserDataJob][google.ads.googleads.v5.services.OfflineUserDataJobService.CreateOfflineUserDataJob]. -message CreateOfflineUserDataJobRequest { - // Required. The ID of the customer for which to create an offline user data job. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The offline user data job to be created. - google.ads.googleads.v5.resources.OfflineUserDataJob job = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for -// [OfflineUserDataJobService.CreateOfflineUserDataJob][google.ads.googleads.v5.services.OfflineUserDataJobService.CreateOfflineUserDataJob]. -message CreateOfflineUserDataJobResponse { - // The resource name of the OfflineUserDataJob. - string resource_name = 1; -} - -// Request message for [OfflineUserDataJobService.GetOfflineUserDataJob][google.ads.googleads.v5.services.OfflineUserDataJobService.GetOfflineUserDataJob]. -message GetOfflineUserDataJobRequest { - // Required. The resource name of the OfflineUserDataJob to get. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; -} - -// Request message for [OfflineUserDataJobService.RunOfflineUserDataJob][google.ads.googleads.v5.services.OfflineUserDataJobService.RunOfflineUserDataJob]. -message RunOfflineUserDataJobRequest { - // Required. The resource name of the OfflineUserDataJob to run. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; -} - -// Request message for -// [OfflineUserDataJobService.AddOfflineUserDataJobOperations][google.ads.googleads.v5.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations]. -message AddOfflineUserDataJobOperationsRequest { - // Required. The resource name of the OfflineUserDataJob. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; - - // True to enable partial failure for the offline user data job. - google.protobuf.BoolValue enable_partial_failure = 2; - - // Required. The list of operations to be done. - repeated OfflineUserDataJobOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; -} - -// Operation to be made for the AddOfflineUserDataJobOperationsRequest. -message OfflineUserDataJobOperation { - // Operation to be made for the AddOfflineUserDataJobOperationsRequest. - oneof operation { - // Add the provided data to the transaction. Data cannot be retrieved after - // being uploaded. - google.ads.googleads.v5.common.UserData create = 1; - - // Remove the provided data from the transaction. Data cannot be retrieved - // after being uploaded. - google.ads.googleads.v5.common.UserData remove = 2; - - // Remove all previously provided data. This is only supported for Customer - // Match. - bool remove_all = 3; - } -} - -// Response message for -// [OfflineUserDataJobService.AddOfflineUserDataJobOperations][google.ads.googleads.v5.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations]. -message AddOfflineUserDataJobOperationsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 1; -} diff --git a/google/ads/googleads/v5/services/operating_system_version_constant_service.proto b/google/ads/googleads/v5/services/operating_system_version_constant_service.proto deleted file mode 100644 index f32b9d431..000000000 --- a/google/ads/googleads/v5/services/operating_system_version_constant_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/operating_system_version_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "OperatingSystemVersionConstantServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the OS version constant service - -// Service to fetch Operating System Version constants. -service OperatingSystemVersionConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested OS version constant in full detail. - rpc GetOperatingSystemVersionConstant(GetOperatingSystemVersionConstantRequest) returns (google.ads.googleads.v5.resources.OperatingSystemVersionConstant) { - option (google.api.http) = { - get: "/v5/{resource_name=operatingSystemVersionConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant][google.ads.googleads.v5.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant]. -message GetOperatingSystemVersionConstantRequest { - // Required. Resource name of the OS version to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OperatingSystemVersionConstant" - } - ]; -} diff --git a/google/ads/googleads/v5/services/paid_organic_search_term_view_service.proto b/google/ads/googleads/v5/services/paid_organic_search_term_view_service.proto deleted file mode 100644 index 27b28022d..000000000 --- a/google/ads/googleads/v5/services/paid_organic_search_term_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/paid_organic_search_term_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "PaidOrganicSearchTermViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Paid Organic Search Term View service. - -// Service to fetch paid organic search term views. -service PaidOrganicSearchTermViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested paid organic search term view in full detail. - rpc GetPaidOrganicSearchTermView(GetPaidOrganicSearchTermViewRequest) returns (google.ads.googleads.v5.resources.PaidOrganicSearchTermView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/paidOrganicSearchTermViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView][google.ads.googleads.v5.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView]. -message GetPaidOrganicSearchTermViewRequest { - // Required. The resource name of the paid organic search term view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaidOrganicSearchTermView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/parental_status_view_service.proto b/google/ads/googleads/v5/services/parental_status_view_service.proto deleted file mode 100644 index 6a498e768..000000000 --- a/google/ads/googleads/v5/services/parental_status_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/parental_status_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ParentalStatusViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Parental Status View service. - -// Service to manage parental status views. -service ParentalStatusViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested parental status view in full detail. - rpc GetParentalStatusView(GetParentalStatusViewRequest) returns (google.ads.googleads.v5.resources.ParentalStatusView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/parentalStatusViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ParentalStatusViewService.GetParentalStatusView][google.ads.googleads.v5.services.ParentalStatusViewService.GetParentalStatusView]. -message GetParentalStatusViewRequest { - // Required. The resource name of the parental status view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ParentalStatusView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/payments_account_service.proto b/google/ads/googleads/v5/services/payments_account_service.proto deleted file mode 100644 index d8ea60529..000000000 --- a/google/ads/googleads/v5/services/payments_account_service.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/payments_account.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "PaymentsAccountServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the payments account service. - -// Service to provide payments accounts that can be used to set up consolidated -// billing. -service PaymentsAccountService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns all payments accounts associated with all managers - // between the login customer ID and specified serving customer in the - // hierarchy, inclusive. - rpc ListPaymentsAccounts(ListPaymentsAccountsRequest) returns (ListPaymentsAccountsResponse) { - option (google.api.http) = { - get: "/v5/customers/{customer_id=*}/paymentsAccounts" - }; - option (google.api.method_signature) = "customer_id"; - } -} - -// Request message for fetching all accessible payments accounts. -message ListPaymentsAccountsRequest { - // Required. The ID of the customer to apply the PaymentsAccount list operation to. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [PaymentsAccountService.ListPaymentsAccounts][google.ads.googleads.v5.services.PaymentsAccountService.ListPaymentsAccounts]. -message ListPaymentsAccountsResponse { - // The list of accessible payments accounts. - repeated google.ads.googleads.v5.resources.PaymentsAccount payments_accounts = 1; -} diff --git a/google/ads/googleads/v5/services/product_bidding_category_constant_service.proto b/google/ads/googleads/v5/services/product_bidding_category_constant_service.proto deleted file mode 100644 index 18ba697f5..000000000 --- a/google/ads/googleads/v5/services/product_bidding_category_constant_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/product_bidding_category_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryConstantServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Product Bidding Category constant service - -// Service to fetch Product Bidding Categories. -service ProductBiddingCategoryConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Product Bidding Category in full detail. - rpc GetProductBiddingCategoryConstant(GetProductBiddingCategoryConstantRequest) returns (google.ads.googleads.v5.resources.ProductBiddingCategoryConstant) { - option (google.api.http) = { - get: "/v5/{resource_name=productBiddingCategoryConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant][google.ads.googleads.v5.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant]. -message GetProductBiddingCategoryConstantRequest { - // Required. Resource name of the Product Bidding Category to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - } - ]; -} diff --git a/google/ads/googleads/v5/services/product_group_view_service.proto b/google/ads/googleads/v5/services/product_group_view_service.proto deleted file mode 100644 index 0e60d4505..000000000 --- a/google/ads/googleads/v5/services/product_group_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/product_group_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ProductGroupViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the ProductGroup View service. - -// Service to manage product group views. -service ProductGroupViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested product group view in full detail. - rpc GetProductGroupView(GetProductGroupViewRequest) returns (google.ads.googleads.v5.resources.ProductGroupView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/productGroupViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ProductGroupViewService.GetProductGroupView][google.ads.googleads.v5.services.ProductGroupViewService.GetProductGroupView]. -message GetProductGroupViewRequest { - // Required. The resource name of the product group view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductGroupView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/reach_plan_service.proto b/google/ads/googleads/v5/services/reach_plan_service.proto deleted file mode 100644 index ffd4d131c..000000000 --- a/google/ads/googleads/v5/services/reach_plan_service.proto +++ /dev/null @@ -1,392 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/common/criteria.proto"; -import "google/ads/googleads/v5/enums/frequency_cap_time_unit.proto"; -import "google/ads/googleads/v5/enums/reach_plan_ad_length.proto"; -import "google/ads/googleads/v5/enums/reach_plan_age_range.proto"; -import "google/ads/googleads/v5/enums/reach_plan_network.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/protobuf/wrappers.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the reach plan service. - -// Reach Plan Service gives users information about audience size that can -// be reached through advertisement on YouTube. In particular, -// GenerateReachForecast provides estimated number of people of specified -// demographics that can be reached by an ad in a given market by a campaign of -// certain duration with a defined budget. -service ReachPlanService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the list of plannable locations (for example, countries & DMAs). - rpc ListPlannableLocations(ListPlannableLocationsRequest) returns (ListPlannableLocationsResponse) { - option (google.api.http) = { - post: "/v5:listPlannableLocations" - body: "*" - }; - } - - // Returns the list of per-location plannable YouTube ad formats with allowed - // targeting. - rpc ListPlannableProducts(ListPlannableProductsRequest) returns (ListPlannableProductsResponse) { - option (google.api.http) = { - post: "/v5:listPlannableProducts" - body: "*" - }; - option (google.api.method_signature) = "plannable_location_id"; - } - - // Generates a product mix ideas given a set of preferences. This method - // helps the advertiser to obtain a good mix of ad formats and budget - // allocations based on its preferences. - rpc GenerateProductMixIdeas(GenerateProductMixIdeasRequest) returns (GenerateProductMixIdeasResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}:generateProductMixIdeas" - body: "*" - }; - option (google.api.method_signature) = "customer_id,plannable_location_id,currency_code,budget_micros"; - } - - // Generates a reach forecast for a given targeting / product mix. - rpc GenerateReachForecast(GenerateReachForecastRequest) returns (GenerateReachForecastResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}:generateReachForecast" - body: "*" - }; - option (google.api.method_signature) = "customer_id,campaign_duration,planned_products"; - } -} - -// Request message for [ReachPlanService.ListPlannableLocations][google.ads.googleads.v5.services.ReachPlanService.ListPlannableLocations]. -message ListPlannableLocationsRequest { - -} - -// The list of plannable locations. -message ListPlannableLocationsResponse { - // The list of locations available for planning (Countries, DMAs, - // sub-countries). - // For locations like Countries, DMAs see - // https://developers.google.com/adwords/api/docs/appendix/geotargeting for - // more information. - repeated PlannableLocation plannable_locations = 1; -} - -// A plannable location: a country, a DMA, a metro region, a tv region, -// a province. -message PlannableLocation { - // The location identifier. - google.protobuf.StringValue id = 1; - - // The unique location name in english. - google.protobuf.StringValue name = 2; - - // The parent country code, not present if location is a country. - // If present will always be a criterion id: additional information, such as - // country name are returned both via ListPlannableLocations or directly by - // accessing GeoTargetConstantService with the criterion id. - google.protobuf.Int64Value parent_country_id = 3; -} - -// Request to list available products in a given location. -message ListPlannableProductsRequest { - // Required. The ID of the selected location for planning. To list the available - // plannable location ids use ListPlannableLocations. - google.protobuf.StringValue plannable_location_id = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// A response with all available products. -message ListPlannableProductsResponse { - // The list of products available for planning and related targeting metadata. - repeated ProductMetadata product_metadata = 1; -} - -// The metadata associated with an available plannable product. -message ProductMetadata { - // The code associated with the ad product. E.g. BUMPER, TRUEVIEW_IN_STREAM - // To list the available plannable product codes use ListPlannableProducts. - google.protobuf.StringValue plannable_product_code = 1; - - // The allowed plannable targeting for this product. - PlannableTargeting plannable_targeting = 2; -} - -// The targeting for which traffic metrics will be reported. -message PlannableTargeting { - // Allowed plannable age ranges for the product for which metrics will be - // reported. Actual targeting is computed by mapping this age range onto - // standard Google common.AgeRangeInfo values. - repeated google.ads.googleads.v5.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_ranges = 1; - - // Targetable genders for the ad product. - repeated google.ads.googleads.v5.common.GenderInfo genders = 2; - - // Targetable devices for the ad product. - repeated google.ads.googleads.v5.common.DeviceInfo devices = 3; - - // Targetable networks for the ad product. - repeated google.ads.googleads.v5.enums.ReachPlanNetworkEnum.ReachPlanNetwork networks = 4; -} - -// Request message for [ReachPlanService.GenerateProductMixIdeas][google.ads.googleads.v5.services.ReachPlanService.GenerateProductMixIdeas]. -message GenerateProductMixIdeasRequest { - // Required. The ID of the customer. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The ID of the location, this is one of the ids returned by - // ListPlannableLocations. - google.protobuf.StringValue plannable_location_id = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. Currency code. - // Three-character ISO 4217 currency code. - google.protobuf.StringValue currency_code = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. Total budget. - // Amount in micros. One million is equivalent to one unit. - google.protobuf.Int64Value budget_micros = 4 [(google.api.field_behavior) = REQUIRED]; - - // The preferences of the suggested product mix. - // An unset preference is interpreted as all possible values are allowed, - // unless explicitly specified. - Preferences preferences = 5; -} - -// Set of preferences about the planned mix. -message Preferences { - // True if ad skippable. - // If not set, default is any value. - google.protobuf.BoolValue is_skippable = 1; - - // True if ad start with sound. - // If not set, default is any value. - google.protobuf.BoolValue starts_with_sound = 2; - - // The length of the ad. - // If not set, default is any value. - google.ads.googleads.v5.enums.ReachPlanAdLengthEnum.ReachPlanAdLength ad_length = 3; - - // True if ad will only show on the top content. - // If not set, default is false. - google.protobuf.BoolValue top_content_only = 4; - - // True if the price guaranteed. The cost of serving the ad is agreed upfront - // and not subject to an auction. - // If not set, default is any value. - google.protobuf.BoolValue has_guaranteed_price = 5; -} - -// The suggested product mix. -message GenerateProductMixIdeasResponse { - // A list of products (ad formats) and the associated budget allocation idea. - repeated ProductAllocation product_allocation = 1; -} - -// An allocation of a part of the budget on a given product. -message ProductAllocation { - // Selected product for planning. The product codes returned are within the - // set of the ones returned by ListPlannableProducts when using the same - // location id. - google.protobuf.StringValue plannable_product_code = 1; - - // The value to be allocated for the suggested product in requested currency. - // Amount in micros. One million is equivalent to one unit. - google.protobuf.Int64Value budget_micros = 2; -} - -// Request message for [ReachPlanService.GenerateReachForecast][google.ads.googleads.v5.services.ReachPlanService.GenerateReachForecast]. -message GenerateReachForecastRequest { - // Required. The ID of the customer. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // The currency code. - // Three-character ISO 4217 currency code. - google.protobuf.StringValue currency_code = 2; - - // Required. Campaign duration. - CampaignDuration campaign_duration = 3 [(google.api.field_behavior) = REQUIRED]; - - // Desired cookie frequency cap that will be applied to each planned product. - // This is equivalent to the frequency cap exposed in Google Ads when creating - // a campaign, it represents the maximum number of times an ad can be shown to - // the same user. - // If not specified no cap is applied. - // - // This field is deprecated in v4 and will eventually be removed. - // Please use cookie_frequency_cap_setting instead. - google.protobuf.Int32Value cookie_frequency_cap = 4; - - // Desired cookie frequency cap that will be applied to each planned product. - // This is equivalent to the frequency cap exposed in Google Ads when creating - // a campaign, it represents the maximum number of times an ad can be shown to - // the same user during a specified time interval. - // If not specified, no cap is applied. - // - // This field replaces the deprecated cookie_frequency_cap field. - FrequencyCap cookie_frequency_cap_setting = 8; - - // Desired minimum effective frequency (the number of times a person was - // exposed to the ad) for the reported reach metrics [1-10]. - // This won't affect the targeting, but just the reporting. - // If not specified, a default of 1 is applied. - google.protobuf.Int32Value min_effective_frequency = 5; - - // The targeting to be applied to all products selected in the product mix. - // - // This is planned targeting: execution details might vary based on the - // advertising product, please consult an implementation specialist. - // - // See specific metrics for details on how targeting affects them. - // - // In some cases, targeting may be overridden using the - // PlannedProduct.advanced_product_targeting field. - Targeting targeting = 6; - - // Required. The products to be forecast. - // The max number of allowed planned products is 15. - repeated PlannedProduct planned_products = 7 [(google.api.field_behavior) = REQUIRED]; -} - -// A rule specifying the maximum number of times an ad can be shown to a user -// over a particular time period. -message FrequencyCap { - // Required. The number of impressions, inclusive. - google.protobuf.Int32Value impressions = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The type of time unit. - google.ads.googleads.v5.enums.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit time_unit = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// The targeting for which traffic metrics will be reported. -message Targeting { - // Required. The ID of the selected location. - // Plannable locations ID can be obtained from ListPlannableLocations. - google.protobuf.StringValue plannable_location_id = 1; - - // Targeted age range. - // If not specified, targets all age ranges. - google.ads.googleads.v5.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_range = 2; - - // Targeted genders. - // If not specified, targets all genders. - repeated google.ads.googleads.v5.common.GenderInfo genders = 3; - - // Targeted devices. - // If not specified, targets all applicable devices. Applicable devices vary - // by product and region and can be obtained from ListPlannableProducts. - repeated google.ads.googleads.v5.common.DeviceInfo devices = 4; - - // Targetable network for the ad product. - // If not specified, targets all applicable networks. Applicable networks vary - // by product and region and can be obtained from ListPlannableProducts. - google.ads.googleads.v5.enums.ReachPlanNetworkEnum.ReachPlanNetwork network = 5; -} - -// The duration of a planned campaign. -message CampaignDuration { - // The duration value in days. - google.protobuf.Int32Value duration_in_days = 1; -} - -// A product being planned for reach. -message PlannedProduct { - // Required. Selected product for planning. - // The code associated with the ad product. E.g. Trueview, Bumper - // To list the available plannable product codes use ListPlannableProducts. - google.protobuf.StringValue plannable_product_code = 1; - - // Required. Maximum budget allocation in micros for the selected product. - // The value is specified in the selected planning currency_code. - // E.g. 1 000 000$ = 1 000 000 000 000 micros. - google.protobuf.Int64Value budget_micros = 2; -} - -// Response message containing the generated reach curve. -message GenerateReachForecastResponse { - // Reference on target audiences for this curve. - OnTargetAudienceMetrics on_target_audience_metrics = 1; - - // The generated reach curve for the planned product mix. - ReachCurve reach_curve = 2; -} - -// The reach curve for the planned products. -message ReachCurve { - // All points on the reach curve. - repeated ReachForecast reach_forecasts = 1; -} - -// A point on reach curve. -message ReachForecast { - // The cost in micros. - google.protobuf.Int64Value cost_micros = 1; - - // Forecasted traffic metrics for this point. - Forecast forecast = 2; - - // The forecasted allocation. This differs from the input allocation if one - // or more product cannot fulfill the budget because of limited inventory. - repeated ProductAllocation forecasted_product_allocations = 3; -} - -// Forecasted traffic metrics for the planned products and targeting. -message Forecast { - // Number of unique people reached at least - // GenerateReachForecastRequest.min_effective_frequency times that exactly - // matches the Targeting. - google.protobuf.Int64Value on_target_reach = 1; - - // Total number of unique people reached at least - // GenerateReachForecastRequest.min_effective_frequency times. This includes - // people that may fall outside the specified Targeting. - google.protobuf.Int64Value total_reach = 2; - - // Number of ad impressions that exactly matches the Targeting. - google.protobuf.Int64Value on_target_impressions = 3; - - // Total number of ad impressions. This includes impressions that may fall - // outside the specified Targeting, due to insufficient information on - // signed-in users. - google.protobuf.Int64Value total_impressions = 4; -} - -// Audience metrics for the planned products. -// These metrics consider the following targeting dimensions: -// -// - Location -// - PlannableAgeRange -// - Gender -message OnTargetAudienceMetrics { - // Reference audience size matching the considered targeting for YouTube. - google.protobuf.Int64Value youtube_audience_size = 1; - - // Reference audience size matching the considered targeting for Census. - google.protobuf.Int64Value census_audience_size = 2; -} diff --git a/google/ads/googleads/v5/services/recommendation_service.proto b/google/ads/googleads/v5/services/recommendation_service.proto deleted file mode 100644 index 97a3a584b..000000000 --- a/google/ads/googleads/v5/services/recommendation_service.proto +++ /dev/null @@ -1,271 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/common/extensions.proto"; -import "google/ads/googleads/v5/enums/keyword_match_type.proto"; -import "google/ads/googleads/v5/resources/ad.proto"; -import "google/ads/googleads/v5/resources/recommendation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/wrappers.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Recommendation service. - -// Service to manage recommendations. -service RecommendationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested recommendation in full detail. - rpc GetRecommendation(GetRecommendationRequest) returns (google.ads.googleads.v5.resources.Recommendation) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/recommendations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Applies given recommendations with corresponding apply parameters. - rpc ApplyRecommendation(ApplyRecommendationRequest) returns (ApplyRecommendationResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/recommendations:apply" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Dismisses given recommendations. - rpc DismissRecommendation(DismissRecommendationRequest) returns (DismissRecommendationResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/recommendations:dismiss" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [RecommendationService.GetRecommendation][google.ads.googleads.v5.services.RecommendationService.GetRecommendation]. -message GetRecommendationRequest { - // Required. The resource name of the recommendation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Recommendation" - } - ]; -} - -// Request message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v5.services.RecommendationService.ApplyRecommendation]. -message ApplyRecommendationRequest { - // Required. The ID of the customer with the recommendation. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to apply recommendations. - // If partial_failure=false all recommendations should be of the same type - // There is a limit of 100 operations per request. - repeated ApplyRecommendationOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, operations will be carried - // out as a transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; -} - -// Information about the operation to apply a recommendation and any parameters -// to customize it. -message ApplyRecommendationOperation { - // Parameters to use when applying a campaign budget recommendation. - message CampaignBudgetParameters { - // New budget amount to set for target budget resource. This is a required - // field. - google.protobuf.Int64Value new_budget_amount_micros = 1; - } - - // Parameters to use when applying a text ad recommendation. - message TextAdParameters { - // New ad to add to recommended ad group. All necessary fields need to be - // set in this message. This is a required field. - google.ads.googleads.v5.resources.Ad ad = 1; - } - - // Parameters to use when applying keyword recommendation. - message KeywordParameters { - // The ad group resource to add keyword to. This is a required field. - google.protobuf.StringValue ad_group = 1; - - // The match type of the keyword. This is a required field. - google.ads.googleads.v5.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 2; - - // Optional, CPC bid to set for the keyword. If not set, keyword will use - // bid based on bidding strategy used by target ad group. - google.protobuf.Int64Value cpc_bid_micros = 3; - } - - // Parameters to use when applying Target CPA recommendation. - message TargetCpaOptInParameters { - // Average CPA to use for Target CPA bidding strategy. This is a required - // field. - google.protobuf.Int64Value target_cpa_micros = 1; - - // Optional, budget amount to set for the campaign. - google.protobuf.Int64Value new_campaign_budget_amount_micros = 2; - } - - // Parameters to use when applying a Target ROAS opt-in recommendation. - message TargetRoasOptInParameters { - // Average ROAS (revenue per unit of spend) to use for Target ROAS bidding - // strategy. The value is between 0.01 and 1000.0, inclusive. This is a - // required field. - optional double target_roas = 1; - - // Optional, budget amount to set for the campaign. - optional int64 new_campaign_budget_amount_micros = 2; - } - - // Parameters to use when applying callout extension recommendation. - message CalloutExtensionParameters { - // Callout extensions to be added. This is a required field. - repeated google.ads.googleads.v5.common.CalloutFeedItem callout_extensions = 1; - } - - // Parameters to use when applying call extension recommendation. - message CallExtensionParameters { - // Call extensions to be added. This is a required field. - repeated google.ads.googleads.v5.common.CallFeedItem call_extensions = 1; - } - - // Parameters to use when applying sitelink extension recommendation. - message SitelinkExtensionParameters { - // Sitelink extensions to be added. This is a required field. - repeated google.ads.googleads.v5.common.SitelinkFeedItem sitelink_extensions = 1; - } - - // Parameters to use when applying move unused budget recommendation. - message MoveUnusedBudgetParameters { - // Budget amount to move from excess budget to constrained budget. This is - // a required field. - google.protobuf.Int64Value budget_micros_to_move = 1; - } - - // The resource name of the recommendation to apply. - string resource_name = 1; - - // Parameters to use when applying the recommendation. - oneof apply_parameters { - // Optional parameters to use when applying a campaign budget - // recommendation. - CampaignBudgetParameters campaign_budget = 2; - - // Optional parameters to use when applying a text ad recommendation. - TextAdParameters text_ad = 3; - - // Optional parameters to use when applying keyword recommendation. - KeywordParameters keyword = 4; - - // Optional parameters to use when applying target CPA opt-in - // recommendation. - TargetCpaOptInParameters target_cpa_opt_in = 5; - - // Optional parameters to use when applying target ROAS opt-in - // recommendation. - TargetRoasOptInParameters target_roas_opt_in = 10; - - // Parameters to use when applying callout extension recommendation. - CalloutExtensionParameters callout_extension = 6; - - // Parameters to use when applying call extension recommendation. - CallExtensionParameters call_extension = 7; - - // Parameters to use when applying sitelink extension recommendation. - SitelinkExtensionParameters sitelink_extension = 8; - - // Parameters to use when applying move unused budget recommendation. - MoveUnusedBudgetParameters move_unused_budget = 9; - } -} - -// Response message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v5.services.RecommendationService.ApplyRecommendation]. -message ApplyRecommendationResponse { - // Results of operations to apply recommendations. - repeated ApplyRecommendationResult results = 1; - - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors) - // we return the RPC level error. - google.rpc.Status partial_failure_error = 2; -} - -// The result of applying a recommendation. -message ApplyRecommendationResult { - // Returned for successful applies. - string resource_name = 1; -} - -// Request message for [RecommendationService.DismissRecommendation][google.ads.googleads.v5.services.RecommendationService.DismissRecommendation]. -message DismissRecommendationRequest { - // Operation to dismiss a single recommendation identified by resource_name. - message DismissRecommendationOperation { - // The resource name of the recommendation to dismiss. - string resource_name = 1; - } - - // Required. The ID of the customer with the recommendation. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to dismiss recommendations. - // If partial_failure=false all recommendations should be of the same type - // There is a limit of 100 operations per request. - repeated DismissRecommendationOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, operations will be carried in a - // single transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 2; -} - -// Response message for [RecommendationService.DismissRecommendation][google.ads.googleads.v5.services.RecommendationService.DismissRecommendation]. -message DismissRecommendationResponse { - // The result of dismissing a recommendation. - message DismissRecommendationResult { - // Returned for successful dismissals. - string resource_name = 1; - } - - // Results of operations to dismiss recommendations. - repeated DismissRecommendationResult results = 1; - - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors) - // we return the RPC level error. - google.rpc.Status partial_failure_error = 2; -} diff --git a/google/ads/googleads/v5/services/remarketing_action_service.proto b/google/ads/googleads/v5/services/remarketing_action_service.proto deleted file mode 100644 index dfb101e04..000000000 --- a/google/ads/googleads/v5/services/remarketing_action_service.proto +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/remarketing_action.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "RemarketingActionServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Remarketing Action service. - -// Service to manage remarketing actions. -service RemarketingActionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested remarketing action in full detail. - rpc GetRemarketingAction(GetRemarketingActionRequest) returns (google.ads.googleads.v5.resources.RemarketingAction) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/remarketingActions/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates remarketing actions. Operation statuses are returned. - rpc MutateRemarketingActions(MutateRemarketingActionsRequest) returns (MutateRemarketingActionsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/remarketingActions:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [RemarketingActionService.GetRemarketingAction][google.ads.googleads.v5.services.RemarketingActionService.GetRemarketingAction]. -message GetRemarketingActionRequest { - // Required. The resource name of the remarketing action to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/RemarketingAction" - } - ]; -} - -// Request message for [RemarketingActionService.MutateRemarketingActions][google.ads.googleads.v5.services.RemarketingActionService.MutateRemarketingActions]. -message MutateRemarketingActionsRequest { - // Required. The ID of the customer whose remarketing actions are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual remarketing actions. - repeated RemarketingActionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update) on a remarketing action. -message RemarketingActionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new remarketing - // action. - google.ads.googleads.v5.resources.RemarketingAction create = 1; - - // Update operation: The remarketing action is expected to have a valid - // resource name. - google.ads.googleads.v5.resources.RemarketingAction update = 2; - } -} - -// Response message for remarketing action mutate. -message MutateRemarketingActionsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateRemarketingActionResult results = 2; -} - -// The result for the remarketing action mutate. -message MutateRemarketingActionResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/search_term_view_service.proto b/google/ads/googleads/v5/services/search_term_view_service.proto deleted file mode 100644 index 8e0025282..000000000 --- a/google/ads/googleads/v5/services/search_term_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/search_term_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Search Term View service. - -// Service to manage search term views. -service SearchTermViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the attributes of the requested search term view. - rpc GetSearchTermView(GetSearchTermViewRequest) returns (google.ads.googleads.v5.resources.SearchTermView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/searchTermViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [SearchTermViewService.GetSearchTermView][google.ads.googleads.v5.services.SearchTermViewService.GetSearchTermView]. -message GetSearchTermViewRequest { - // Required. The resource name of the search term view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SearchTermView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/shared_criterion_service.proto b/google/ads/googleads/v5/services/shared_criterion_service.proto deleted file mode 100644 index 545f864d9..000000000 --- a/google/ads/googleads/v5/services/shared_criterion_service.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/shared_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "SharedCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Shared Criterion service. - -// Service to manage shared criteria. -service SharedCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested shared criterion in full detail. - rpc GetSharedCriterion(GetSharedCriterionRequest) returns (google.ads.googleads.v5.resources.SharedCriterion) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/sharedCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes shared criteria. Operation statuses are returned. - rpc MutateSharedCriteria(MutateSharedCriteriaRequest) returns (MutateSharedCriteriaResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/sharedCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [SharedCriterionService.GetSharedCriterion][google.ads.googleads.v5.services.SharedCriterionService.GetSharedCriterion]. -message GetSharedCriterionRequest { - // Required. The resource name of the shared criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedCriterion" - } - ]; -} - -// Request message for [SharedCriterionService.MutateSharedCriteria][google.ads.googleads.v5.services.SharedCriterionService.MutateSharedCriteria]. -message MutateSharedCriteriaRequest { - // Required. The ID of the customer whose shared criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual shared criteria. - repeated SharedCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an shared criterion. -message SharedCriterionOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new shared - // criterion. - google.ads.googleads.v5.resources.SharedCriterion create = 1; - - // Remove operation: A resource name for the removed shared criterion is - // expected, in this format: - // - // `customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for a shared criterion mutate. -message MutateSharedCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateSharedCriterionResult results = 2; -} - -// The result for the shared criterion mutate. -message MutateSharedCriterionResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/shared_set_service.proto b/google/ads/googleads/v5/services/shared_set_service.proto deleted file mode 100644 index 0ecfdb5ad..000000000 --- a/google/ads/googleads/v5/services/shared_set_service.proto +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/enums/response_content_type.proto"; -import "google/ads/googleads/v5/resources/shared_set.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Shared Set service. - -// Service to manage shared sets. -service SharedSetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested shared set in full detail. - rpc GetSharedSet(GetSharedSetRequest) returns (google.ads.googleads.v5.resources.SharedSet) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/sharedSets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes shared sets. Operation statuses are returned. - rpc MutateSharedSets(MutateSharedSetsRequest) returns (MutateSharedSetsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/sharedSets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [SharedSetService.GetSharedSet][google.ads.googleads.v5.services.SharedSetService.GetSharedSet]. -message GetSharedSetRequest { - // Required. The resource name of the shared set to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; -} - -// Request message for [SharedSetService.MutateSharedSets][google.ads.googleads.v5.services.SharedSetService.MutateSharedSets]. -message MutateSharedSetsRequest { - // Required. The ID of the customer whose shared sets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual shared sets. - repeated SharedSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v5.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an shared set. -message SharedSetOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new shared set. - google.ads.googleads.v5.resources.SharedSet create = 1; - - // Update operation: The shared set is expected to have a valid resource - // name. - google.ads.googleads.v5.resources.SharedSet update = 2; - - // Remove operation: A resource name for the removed shared set is expected, - // in this format: - // - // `customers/{customer_id}/sharedSets/{shared_set_id}` - string remove = 3; - } -} - -// Response message for a shared set mutate. -message MutateSharedSetsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateSharedSetResult results = 2; -} - -// The result for the shared set mutate. -message MutateSharedSetResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated shared set with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v5.resources.SharedSet shared_set = 2; -} diff --git a/google/ads/googleads/v5/services/shopping_performance_view_service.proto b/google/ads/googleads/v5/services/shopping_performance_view_service.proto deleted file mode 100644 index 891f10abc..000000000 --- a/google/ads/googleads/v5/services/shopping_performance_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/shopping_performance_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ShoppingPerformanceViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the ShoppingPerformanceView service. - -// Service to fetch Shopping performance views. -service ShoppingPerformanceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Shopping performance view in full detail. - rpc GetShoppingPerformanceView(GetShoppingPerformanceViewRequest) returns (google.ads.googleads.v5.resources.ShoppingPerformanceView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/shoppingPerformanceView}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [ShoppingPerformanceViewService.GetShoppingPerformanceView][google.ads.googleads.v5.services.ShoppingPerformanceViewService.GetShoppingPerformanceView]. -message GetShoppingPerformanceViewRequest { - // Required. The resource name of the Shopping performance view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ShoppingPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/third_party_app_analytics_link_service.proto b/google/ads/googleads/v5/services/third_party_app_analytics_link_service.proto deleted file mode 100644 index 9b0270785..000000000 --- a/google/ads/googleads/v5/services/third_party_app_analytics_link_service.proto +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/third_party_app_analytics_link.proto"; -import "google/api/annotations.proto"; -import "google/api/resource.proto"; -import "google/api/client.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ThirdPartyAppAnalyticsLinkServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// This service allows management of links between Google Ads and third party -// app analytics. -service ThirdPartyAppAnalyticsLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the third party app analytics link in full detail. - rpc GetThirdPartyAppAnalyticsLink(GetThirdPartyAppAnalyticsLinkRequest) returns (google.ads.googleads.v5.resources.ThirdPartyAppAnalyticsLink) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" - }; - } - - // Regenerate ThirdPartyAppAnalyticsLink.shareable_link_id that should be - // provided to the third party when setting up app analytics. - rpc RegenerateShareableLinkId(RegenerateShareableLinkIdRequest) returns (RegenerateShareableLinkIdResponse) { - option (google.api.http) = { - post: "/v5/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}:regenerateShareableLinkId" - body: "*" - }; - } -} - -// Request message for -// [ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink][google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink]. -message GetThirdPartyAppAnalyticsLinkRequest { - // Resource name of the third party app analytics link. - string resource_name = 1 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" - }]; -} - -// Request message for -// [ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId][google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId]. -message RegenerateShareableLinkIdRequest { - // Resource name of the third party app analytics link. - string resource_name = 1 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" - }]; -} - -// Response message for -// [ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId][google.ads.googleads.v5.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId]. -message RegenerateShareableLinkIdResponse { - -} diff --git a/google/ads/googleads/v5/services/topic_constant_service.proto b/google/ads/googleads/v5/services/topic_constant_service.proto deleted file mode 100644 index 479edcd70..000000000 --- a/google/ads/googleads/v5/services/topic_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/topic_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "TopicConstantServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Topic constant service - -// Service to fetch topic constants. -service TopicConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested topic constant in full detail. - rpc GetTopicConstant(GetTopicConstantRequest) returns (google.ads.googleads.v5.resources.TopicConstant) { - option (google.api.http) = { - get: "/v5/{resource_name=topicConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [TopicConstantService.GetTopicConstant][google.ads.googleads.v5.services.TopicConstantService.GetTopicConstant]. -message GetTopicConstantRequest { - // Required. Resource name of the Topic to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicConstant" - } - ]; -} diff --git a/google/ads/googleads/v5/services/topic_view_service.proto b/google/ads/googleads/v5/services/topic_view_service.proto deleted file mode 100644 index 2ed088e52..000000000 --- a/google/ads/googleads/v5/services/topic_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/topic_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "TopicViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Topic View service. - -// Service to manage topic views. -service TopicViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested topic view in full detail. - rpc GetTopicView(GetTopicViewRequest) returns (google.ads.googleads.v5.resources.TopicView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/topicViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [TopicViewService.GetTopicView][google.ads.googleads.v5.services.TopicViewService.GetTopicView]. -message GetTopicViewRequest { - // Required. The resource name of the topic view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/user_data_service.proto b/google/ads/googleads/v5/services/user_data_service.proto deleted file mode 100644 index 995dc16a5..000000000 --- a/google/ads/googleads/v5/services/user_data_service.proto +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/common/offline_user_data.proto"; -import "google/api/annotations.proto"; -import "google/api/field_behavior.proto"; -import "google/protobuf/wrappers.proto"; -import "google/api/client.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserDataServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the UserDataService. - -// Service to manage user data uploads. -// Accessible only to customers on the allow-list. -service UserDataService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Uploads the given user data. - rpc UploadUserData(UploadUserDataRequest) returns (UploadUserDataResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}:uploadUserData" - body: "*" - }; - } -} - -// Request message for [UserDataService.UploadUserData][google.ads.googleads.v5.services.UserDataService.UploadUserData] -message UploadUserDataRequest { - // Required. The ID of the customer for which to update the user data. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to be done. - repeated UserDataOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; - - // Metadata of the request. - oneof metadata { - // Metadata for data updates to a Customer Match user list. - google.ads.googleads.v5.common.CustomerMatchUserListMetadata customer_match_user_list_metadata = 2; - } -} - -// Operation to be made for the UploadUserDataRequest. -message UserDataOperation { - // Operation to be made for the UploadUserDataRequest. - oneof operation { - // The list of user data to be appended to the user list. - google.ads.googleads.v5.common.UserData create = 1; - - // The list of user data to be removed from the user list. - google.ads.googleads.v5.common.UserData remove = 2; - } -} - -// Response message for [UserDataService.UploadUserData][google.ads.googleads.v5.services.UserDataService.UploadUserData] -message UploadUserDataResponse { - // The date time at which the request was received by API, formatted as - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - google.protobuf.StringValue upload_date_time = 1; - - // Number of upload data operations received by API. - google.protobuf.Int32Value received_operations_count = 2; -} diff --git a/google/ads/googleads/v5/services/user_interest_service.proto b/google/ads/googleads/v5/services/user_interest_service.proto deleted file mode 100644 index 429d8a5b6..000000000 --- a/google/ads/googleads/v5/services/user_interest_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/user_interest.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserInterestServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the user interest service - -// Service to fetch Google Ads User Interest. -service UserInterestService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested user interest in full detail - rpc GetUserInterest(GetUserInterestRequest) returns (google.ads.googleads.v5.resources.UserInterest) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/userInterests/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [UserInterestService.GetUserInterest][google.ads.googleads.v5.services.UserInterestService.GetUserInterest]. -message GetUserInterestRequest { - // Required. Resource name of the UserInterest to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserInterest" - } - ]; -} diff --git a/google/ads/googleads/v5/services/user_list_service.proto b/google/ads/googleads/v5/services/user_list_service.proto deleted file mode 100644 index a3ec10777..000000000 --- a/google/ads/googleads/v5/services/user_list_service.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/user_list.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserListServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the User List service. - -// Service to manage user lists. -service UserListService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested user list. - rpc GetUserList(GetUserListRequest) returns (google.ads.googleads.v5.resources.UserList) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/userLists/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates user lists. Operation statuses are returned. - rpc MutateUserLists(MutateUserListsRequest) returns (MutateUserListsResponse) { - option (google.api.http) = { - post: "/v5/customers/{customer_id=*}/userLists:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [UserListService.GetUserList][google.ads.googleads.v5.services.UserListService.GetUserList]. -message GetUserListRequest { - // Required. The resource name of the user list to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserList" - } - ]; -} - -// Request message for [UserListService.MutateUserLists][google.ads.googleads.v5.services.UserListService.MutateUserLists]. -message MutateUserListsRequest { - // Required. The ID of the customer whose user lists are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual user lists. - repeated UserListOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update) on a user list. -message UserListOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new user list. - google.ads.googleads.v5.resources.UserList create = 1; - - // Update operation: The user list is expected to have a valid resource - // name. - google.ads.googleads.v5.resources.UserList update = 2; - - // Remove operation: A resource name for the removed user list is expected, - // in this format: - // - // `customers/{customer_id}/userLists/{user_list_id}` - string remove = 3; - } -} - -// Response message for user list mutate. -message MutateUserListsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateUserListResult results = 2; -} - -// The result for the user list mutate. -message MutateUserListResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v5/services/user_location_view_service.proto b/google/ads/googleads/v5/services/user_location_view_service.proto deleted file mode 100644 index 49b900296..000000000 --- a/google/ads/googleads/v5/services/user_location_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/user_location_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserLocationViewServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the UserLocationView service. - -// Service to manage user location views. -service UserLocationViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested user location view in full detail. - rpc GetUserLocationView(GetUserLocationViewRequest) returns (google.ads.googleads.v5.resources.UserLocationView) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/userLocationViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [UserLocationViewService.GetUserLocationView][google.ads.googleads.v5.services.UserLocationViewService.GetUserLocationView]. -message GetUserLocationViewRequest { - // Required. The resource name of the user location view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserLocationView" - } - ]; -} diff --git a/google/ads/googleads/v5/services/video_service.proto b/google/ads/googleads/v5/services/video_service.proto deleted file mode 100644 index 19a2ed5ed..000000000 --- a/google/ads/googleads/v5/services/video_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v5.services; - -import "google/ads/googleads/v5/resources/video.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V5.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v5/services;services"; -option java_multiple_files = true; -option java_outer_classname = "VideoServiceProto"; -option java_package = "com.google.ads.googleads.v5.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V5\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V5::Services"; - -// Proto file describing the Video service. - -// Service to manage videos. -service VideoService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested video in full detail. - rpc GetVideo(GetVideoRequest) returns (google.ads.googleads.v5.resources.Video) { - option (google.api.http) = { - get: "/v5/{resource_name=customers/*/videos/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [VideoService.GetVideo][google.ads.googleads.v5.services.VideoService.GetVideo]. -message GetVideoRequest { - // Required. The resource name of the video to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Video" - } - ]; -} diff --git a/google/ads/googleads/v6/BUILD.bazel b/google/ads/googleads/v6/BUILD.bazel deleted file mode 100644 index d46709f16..000000000 --- a/google/ads/googleads/v6/BUILD.bazel +++ /dev/null @@ -1,262 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -exports_files(["googleads_grpc_service_config.json"] + ["*.yaml"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") -load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") - -proto_library( - name = "googleads_proto", - srcs = [], - deps = [ - "//google/ads/googleads/v6/common:common_proto", - "//google/ads/googleads/v6/enums:enums_proto", - "//google/ads/googleads/v6/errors:errors_proto", - "//google/ads/googleads/v6/resources:resources_proto", - "//google/ads/googleads/v6/services:services_proto", - ], -) - -proto_library_with_info( - name = "googleads_proto_with_info", - deps = [ - ":googleads_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_gapic_assembly_gradle_pkg", - "java_gapic_library", - "java_gapic_test", -) - -java_gapic_library( - name = "googleads_java_gapic", - srcs = [ - ":googleads_proto_with_info", - ], - gapic_yaml = "googleads_gapic.yaml", - grpc_service_config = ":googleads_grpc_service_config.json", - deps = [ - "//google/ads/googleads/v6/common:common_java_proto", - "//google/ads/googleads/v6/enums:enums_java_proto", - "//google/ads/googleads/v6/resources:resources_java_proto", - "//google/ads/googleads/v6/services:services_java_grpc", - "//google/ads/googleads/v6/services:services_java_proto", - ], -) - -# TODO(ohren): Add more test classes when java_gapic_test is able to run more -# than a single test. Having at least one verifies proper compilation at least. -java_gapic_test( - name = "googleads_java_gapic_suite", - test_classes = [ - "com.google.ads.googleads.v6.services.CampaignServiceClientTest", - ], - runtime_deps = [":googleads_java_gapic_test"], -) - -java_gapic_assembly_gradle_pkg( - name = "googleads-java", - deps = [ - ":googleads_java_gapic", - "//google/ads/googleads/v6:googleads_proto", - "//google/ads/googleads/v6/common:common_java_proto", - "//google/ads/googleads/v6/enums:enums_java_proto", - "//google/ads/googleads/v6/errors:errors_java_proto", - "//google/ads/googleads/v6/resources:resources_java_proto", - "//google/ads/googleads/v6/services:services_java_grpc", - "//google/ads/googleads/v6/services:services_java_proto", - ], -) - -############################################################################## -# PHP -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "php_gapic_assembly_pkg2", - "php_gapic_library2", - "php_grpc_library2", - "php_proto_library2", -) - -php_proto_library2( - name = "googleads_php_proto", - plugin_args = ["aggregate_metadata=google.ads.googleads"], - deps = [":googleads_proto"], -) - -php_grpc_library2( - name = "googleads_php_grpc", - srcs = [":googleads_proto"], - deps = [":googleads_php_proto"], -) - -php_gapic_library2( - name = "googleads_php_gapic", - srcs = [":googleads_proto"], - gapic_yaml = "googleads_gapic.yaml", - grpc_service_config = "googleads_grpc_service_config.json", - service_yaml = "googleads_v6.yaml", - deps = [ - ":googleads_php_grpc", - ":googleads_php_proto", - ], -) - -php_gapic_assembly_pkg2( - name = "googleads-php", - deps = [ - ":googleads_php_gapic", - ":googleads_php_grpc", - ":googleads_php_proto", - ], -) - -############################################################################## -# C# -############################################################################## -load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", "csharp_gapic_library") -load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic_pkg.bzl", "csharp_gapic_assembly_pkg") - -csharp_gapic_library( - name = "googleads_csharp_gapic", - srcs = [ - ":googleads_proto_with_info", - ], - grpc_service_config = "googleads_grpc_service_config.json", - deps = [ - "//google/ads/googleads/v6/services:services_csharp_grpc", - ], -) - -csharp_gapic_assembly_pkg( - name = "googleads-csharp", - deps = [ - ":googleads_csharp_gapic", - "//google/ads/googleads/v6/common:common_csharp_proto", - "//google/ads/googleads/v6/enums:enums_csharp_proto", - "//google/ads/googleads/v6/errors:errors_csharp_proto", - "//google/ads/googleads/v6/resources:resources_csharp_proto", - "//google/ads/googleads/v6/services:services_csharp_grpc", - "//google/ads/googleads/v6/services:services_csharp_proto", - ], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "ruby_ads_gapic_library", - "ruby_gapic_assembly_pkg", -) - -ruby_ads_gapic_library( - name = "googleads_ruby_gapic", - srcs = ["googleads_proto_with_info"], - extra_protoc_parameters = [ - ":gem.:name=google-ads-googleads", - ":defaults.:service.:default_host=googleads.googleapis.com", - ":overrides.:namespace.Googleads=GoogleAds", - ], - grpc_service_config = "googleads_grpc_service_config.json", -) - -ruby_gapic_assembly_pkg( - name = "googleads-ruby", - deps = [ - ":googleads_ruby_gapic", - "//google/ads/googleads/v6/common:common_ruby_proto", - "//google/ads/googleads/v6/enums:enums_ruby_proto", - "//google/ads/googleads/v6/errors:errors_ruby_proto", - "//google/ads/googleads/v6/resources:resources_ruby_proto", - "//google/ads/googleads/v6/services:services_ruby_grpc", - "//google/ads/googleads/v6/services:services_ruby_proto", - ], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_gapic_assembly_pkg", - "py_gapic_library", -) - -py_gapic_library( - name = "googleads_py_gapic", - srcs = [":googleads_proto_with_info"], - grpc_service_config = "googleads_grpc_service_config.json", - opt_args = [ - "old-naming", - "lazy-import", - "python-gapic-name=googleads", - "python-gapic-templates=ads-templates", - ], -) - -py_gapic_assembly_pkg( - name = "googleads-py", - deps = [ - ":googleads_py_gapic", - "//google/ads/googleads/v6/common:common_py_proto", - "//google/ads/googleads/v6/enums:enums_py_proto", - "//google/ads/googleads/v6/errors:errors_py_proto", - "//google/ads/googleads/v6/resources:resources_py_proto", - "//google/ads/googleads/v6/services:services_py_grpc", - "//google/ads/googleads/v6/services:services_py_proto", - ], -) - -############################################################################## -# Node.js -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "nodejs_gapic_assembly_pkg", - "nodejs_gapic_library", -) - -nodejs_gapic_library( - name = "googleads_nodejs_gapic", - package_name = "google-ads", - src = ":googleads_proto_with_info", - extra_protoc_parameters = ["metadata"], - grpc_service_config = "googleads_grpc_service_config.json", - main_service = "GoogleAdsService", - package = "google.ads.googleads.v6", - service_yaml = "googleads_v6.yaml", - deps = [], -) - -nodejs_gapic_assembly_pkg( - name = "googleads-nodejs", - deps = [ - ":googleads_nodejs_gapic", - ":googleads_proto", - ], -) diff --git a/google/ads/googleads/v6/common/BUILD.bazel b/google/ads/googleads/v6/common/BUILD.bazel deleted file mode 100644 index d0468d951..000000000 --- a/google/ads/googleads/v6/common/BUILD.bazel +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "common_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v6/enums:enums_proto", - "//google/api:annotations_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_proto_library", -) - -java_proto_library( - name = "common_java_proto", - deps = [":common_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_proto_library", -) - -csharp_proto_library( - name = "common_csharp_proto", - deps = [":common_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_proto_library", -) - -ruby_proto_library( - name = "common_ruby_proto", - deps = [":common_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_proto_library", -) - -py_proto_library( - name = "common_py_proto", - deps = [":common_proto"], -) diff --git a/google/ads/googleads/v6/common/ad_asset.proto b/google/ads/googleads/v6/common/ad_asset.proto deleted file mode 100644 index a1618cbaf..000000000 --- a/google/ads/googleads/v6/common/ad_asset.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/common/asset_policy.proto"; -import "google/ads/googleads/v6/enums/asset_performance_label.proto"; -import "google/ads/googleads/v6/enums/served_asset_field_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "AdAssetProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing assets used inside an ad. - -// A text asset used inside an ad. -message AdTextAsset { - // Asset text. - optional string text = 4; - - // The pinned field of the asset. This restricts the asset to only serve - // within this field. Multiple assets can be pinned to the same field. An - // asset that is unpinned or pinned to a different field will not serve in a - // field where some other asset has been pinned. - google.ads.googleads.v6.enums.ServedAssetFieldTypeEnum.ServedAssetFieldType pinned_field = 2; - - // The performance label of this text asset. - google.ads.googleads.v6.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel asset_performance_label = 5; - - // The policy summary of this text asset. - AdAssetPolicySummary policy_summary_info = 6; -} - -// An image asset used inside an ad. -message AdImageAsset { - // The Asset resource name of this image. - optional string asset = 2; -} - -// A video asset used inside an ad. -message AdVideoAsset { - // The Asset resource name of this video. - optional string asset = 2; -} - -// A media bundle asset used inside an ad. -message AdMediaBundleAsset { - // The Asset resource name of this media bundle. - optional string asset = 2; -} diff --git a/google/ads/googleads/v6/common/ad_type_infos.proto b/google/ads/googleads/v6/common/ad_type_infos.proto deleted file mode 100644 index 01852265f..000000000 --- a/google/ads/googleads/v6/common/ad_type_infos.proto +++ /dev/null @@ -1,674 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/common/ad_asset.proto"; -import "google/ads/googleads/v6/enums/call_conversion_reporting_state.proto"; -import "google/ads/googleads/v6/enums/display_ad_format_setting.proto"; -import "google/ads/googleads/v6/enums/display_upload_product_type.proto"; -import "google/ads/googleads/v6/enums/legacy_app_install_ad_app_store.proto"; -import "google/ads/googleads/v6/enums/mime_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "AdTypeInfosProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file containing info messages for specific ad types. - -// A text ad. -message TextAdInfo { - // The headline of the ad. - optional string headline = 4; - - // The first line of the ad's description. - optional string description1 = 5; - - // The second line of the ad's description. - optional string description2 = 6; -} - -// An expanded text ad. -message ExpandedTextAdInfo { - // The first part of the ad's headline. - optional string headline_part1 = 8; - - // The second part of the ad's headline. - optional string headline_part2 = 9; - - // The third part of the ad's headline. - optional string headline_part3 = 10; - - // The description of the ad. - optional string description = 11; - - // The second description of the ad. - optional string description2 = 12; - - // The text that can appear alongside the ad's displayed URL. - optional string path1 = 13; - - // Additional text that can appear alongside the ad's displayed URL. - optional string path2 = 14; -} - -// A call-only ad. -message CallOnlyAdInfo { - // The country code in the ad. - optional string country_code = 13; - - // The phone number in the ad. - optional string phone_number = 14; - - // The business name in the ad. - optional string business_name = 15; - - // First headline in the ad. - optional string headline1 = 16; - - // Second headline in the ad. - optional string headline2 = 17; - - // The first line of the ad's description. - optional string description1 = 18; - - // The second line of the ad's description. - optional string description2 = 19; - - // Whether to enable call tracking for the creative. Enabling call - // tracking also enables call conversions. - optional bool call_tracked = 20; - - // Whether to disable call conversion for the creative. - // If set to `true`, disables call conversions even when `call_tracked` is - // `true`. - // If `call_tracked` is `false`, this field is ignored. - optional bool disable_call_conversion = 21; - - // The URL to be used for phone number verification. - optional string phone_number_verification_url = 22; - - // The conversion action to attribute a call conversion to. If not set a - // default conversion action is used. This field only has effect if - // call_tracked is set to true. Otherwise this field is ignored. - optional string conversion_action = 23; - - // The call conversion behavior of this call only ad. It can use its own call - // conversion setting, inherit the account level setting, or be disabled. - google.ads.googleads.v6.enums.CallConversionReportingStateEnum.CallConversionReportingState conversion_reporting_state = 10; -} - -// An expanded dynamic search ad. -message ExpandedDynamicSearchAdInfo { - // The description of the ad. - optional string description = 3; - - // The second description of the ad. - optional string description2 = 4; -} - -// A hotel ad. -message HotelAdInfo { - -} - -// A Smart Shopping ad. -message ShoppingSmartAdInfo { - -} - -// A standard Shopping ad. -message ShoppingProductAdInfo { - -} - -// A Shopping Comparison Listing ad. -message ShoppingComparisonListingAdInfo { - // Headline of the ad. This field is required. Allowed length is between 25 - // and 45 characters. - optional string headline = 2; -} - -// A Gmail ad. -message GmailAdInfo { - // The Gmail teaser. - GmailTeaser teaser = 1; - - // The MediaFile resource name of the header image. Valid image types are GIF, - // JPEG and PNG. The minimum size is 300x100 pixels and the aspect ratio must - // be between 3:1 and 5:1 (+-1%). - optional string header_image = 10; - - // The MediaFile resource name of the marketing image. Valid image types are - // GIF, JPEG and PNG. The image must either be landscape with a minimum size - // of 600x314 pixels and aspect ratio of 600:314 (+-1%) or square with a - // minimum size of 300x300 pixels and aspect ratio of 1:1 (+-1%) - optional string marketing_image = 11; - - // Headline of the marketing image. - optional string marketing_image_headline = 12; - - // Description of the marketing image. - optional string marketing_image_description = 13; - - // Display-call-to-action of the marketing image. - DisplayCallToAction marketing_image_display_call_to_action = 6; - - // Product images. Up to 15 images are supported. - repeated ProductImage product_images = 7; - - // Product videos. Up to 7 videos are supported. At least one product video - // or a marketing image must be specified. - repeated ProductVideo product_videos = 8; -} - -// Gmail teaser data. The teaser is a small header that acts as an invitation -// to view the rest of the ad (the body). -message GmailTeaser { - // Headline of the teaser. - optional string headline = 5; - - // Description of the teaser. - optional string description = 6; - - // Business name of the advertiser. - optional string business_name = 7; - - // The MediaFile resource name of the logo image. Valid image types are GIF, - // JPEG and PNG. The minimum size is 144x144 pixels and the aspect ratio must - // be 1:1 (+-1%). - optional string logo_image = 8; -} - -// Data for display call to action. The call to action is a piece of the ad -// that prompts the user to do something. Like clicking a link or making a phone -// call. -message DisplayCallToAction { - // Text for the display-call-to-action. - optional string text = 5; - - // Text color for the display-call-to-action in hexadecimal, e.g. #ffffff for - // white. - optional string text_color = 6; - - // Identifies the url collection in the ad.url_collections field. If not set - // the url defaults to final_url. - optional string url_collection_id = 7; -} - -// Product image specific data. -message ProductImage { - // The MediaFile resource name of the product image. Valid image types are - // GIF, JPEG and PNG. The minimum size is 300x300 pixels and the aspect ratio - // must be 1:1 (+-1%). - optional string product_image = 4; - - // Description of the product. - optional string description = 5; - - // Display-call-to-action of the product image. - DisplayCallToAction display_call_to_action = 3; -} - -// Product video specific data. -message ProductVideo { - // The MediaFile resource name of a video which must be hosted on YouTube. - optional string product_video = 2; -} - -// An image ad. -message ImageAdInfo { - // Width in pixels of the full size image. - optional int64 pixel_width = 15; - - // Height in pixels of the full size image. - optional int64 pixel_height = 16; - - // URL of the full size image. - optional string image_url = 17; - - // Width in pixels of the preview size image. - optional int64 preview_pixel_width = 18; - - // Height in pixels of the preview size image. - optional int64 preview_pixel_height = 19; - - // URL of the preview size image. - optional string preview_image_url = 20; - - // The mime type of the image. - google.ads.googleads.v6.enums.MimeTypeEnum.MimeType mime_type = 10; - - // The name of the image. If the image was created from a MediaFile, this is - // the MediaFile's name. If the image was created from bytes, this is empty. - optional string name = 21; - - // The image to create the ImageAd from. This can be specified in one of - // two ways. - // 1. An existing MediaFile resource. - // 2. The raw image data as bytes. - oneof image { - // The MediaFile resource to use for the image. - string media_file = 12; - - // Raw image data as bytes. - bytes data = 13; - - // An ad ID to copy the image from. - int64 ad_id_to_copy_image_from = 14; - } -} - -// Representation of video bumper in-stream ad format (very short in-stream -// non-skippable video ad). -message VideoBumperInStreamAdInfo { - // The MediaFile resource name of the companion banner used with the ad. - optional string companion_banner = 2; -} - -// Representation of video non-skippable in-stream ad format (15 second -// in-stream non-skippable video ad). -message VideoNonSkippableInStreamAdInfo { - // The MediaFile resource name of the companion banner used with the ad. - optional string companion_banner = 2; -} - -// Representation of video TrueView in-stream ad format (ad shown during video -// playback, often at beginning, which displays a skip button a few seconds into -// the video). -message VideoTrueViewInStreamAdInfo { - // Label on the CTA (call-to-action) button taking the user to the video ad's - // final URL. - // Required for TrueView for action campaigns, optional otherwise. - optional string action_button_label = 4; - - // Additional text displayed with the CTA (call-to-action) button to give - // context and encourage clicking on the button. - optional string action_headline = 5; - - // The MediaFile resource name of the companion banner used with the ad. - optional string companion_banner = 6; -} - -// Representation of video out-stream ad format (ad shown alongside a feed -// with automatic playback, without sound). -message VideoOutstreamAdInfo { - // The headline of the ad. - optional string headline = 3; - - // The description line. - optional string description = 4; -} - -// Representation of video TrueView discovery ad format. -message VideoTrueViewDiscoveryAdInfo { - // The headline of the ad. - optional string headline = 4; - - // First text line for a TrueView video discovery ad. - optional string description1 = 5; - - // Second text line for a TrueView video discovery ad. - optional string description2 = 6; -} - -// A video ad. -message VideoAdInfo { - // The MediaFile resource to use for the video. - optional string media_file = 7; - - // Format-specific schema for the different video formats. - oneof format { - // Video TrueView in-stream ad format. - VideoTrueViewInStreamAdInfo in_stream = 2; - - // Video bumper in-stream ad format. - VideoBumperInStreamAdInfo bumper = 3; - - // Video out-stream ad format. - VideoOutstreamAdInfo out_stream = 4; - - // Video non-skippable in-stream ad format. - VideoNonSkippableInStreamAdInfo non_skippable = 5; - - // Video TrueView discovery ad format. - VideoTrueViewDiscoveryAdInfo discovery = 6; - } -} - -// A video responsive ad. -message VideoResponsiveAdInfo { - // List of text assets used for the short headline, e.g. the "Call To Action" - // banner. Currently, only a single value for the short headline is supported. - repeated AdTextAsset headlines = 1; - - // List of text assets used for the long headline. - // Currently, only a single value for the long headline is supported. - repeated AdTextAsset long_headlines = 2; - - // List of text assets used for the description. - // Currently, only a single value for the description is supported. - repeated AdTextAsset descriptions = 3; - - // List of text assets used for the button, e.g. the "Call To Action" button. - // Currently, only a single value for the button is supported. - repeated AdTextAsset call_to_actions = 4; - - // List of YouTube video assets used for the ad. - // Currently, only a single value for the YouTube video asset is supported. - repeated AdVideoAsset videos = 5; - - // List of image assets used for the companion banner. - // Currently, only a single value for the companion banner asset is supported. - repeated AdImageAsset companion_banners = 6; -} - -// A responsive search ad. -// -// Responsive search ads let you create an ad that adapts to show more text, and -// more relevant messages, to your customers. Enter multiple headlines and -// descriptions when creating a responsive search ad, and over time, Google Ads -// will automatically test different combinations and learn which combinations -// perform best. By adapting your ad's content to more closely match potential -// customers' search terms, responsive search ads may improve your campaign's -// performance. -// -// More information at https://support.google.com/google-ads/answer/7684791 -message ResponsiveSearchAdInfo { - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. - repeated AdTextAsset headlines = 1; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. - repeated AdTextAsset descriptions = 2; - - // First part of text that may appear appended to the url displayed in the ad. - optional string path1 = 5; - - // Second part of text that may appear appended to the url displayed in the - // ad. This field can only be set when path1 is also set. - optional string path2 = 6; -} - -// A legacy responsive display ad. Ads of this type are labeled 'Responsive ads' -// in the Google Ads UI. -message LegacyResponsiveDisplayAdInfo { - // The short version of the ad's headline. - optional string short_headline = 16; - - // The long version of the ad's headline. - optional string long_headline = 17; - - // The description of the ad. - optional string description = 18; - - // The business name in the ad. - optional string business_name = 19; - - // Advertiser's consent to allow flexible color. When true, the ad may be - // served with different color if necessary. When false, the ad will be served - // with the specified colors or a neutral color. - // The default value is true. - // Must be true if main_color and accent_color are not set. - optional bool allow_flexible_color = 20; - - // The accent color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - optional string accent_color = 21; - - // The main color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - optional string main_color = 22; - - // The call-to-action text for the ad. - optional string call_to_action_text = 23; - - // The MediaFile resource name of the logo image used in the ad. - optional string logo_image = 24; - - // The MediaFile resource name of the square logo image used in the ad. - optional string square_logo_image = 25; - - // The MediaFile resource name of the marketing image used in the ad. - optional string marketing_image = 26; - - // The MediaFile resource name of the square marketing image used in the ad. - optional string square_marketing_image = 27; - - // Specifies which format the ad will be served in. Default is ALL_FORMATS. - google.ads.googleads.v6.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting format_setting = 13; - - // Prefix before price. E.g. 'as low as'. - optional string price_prefix = 28; - - // Promotion text used for dyanmic formats of responsive ads. For example - // 'Free two-day shipping'. - optional string promo_text = 29; -} - -// An app ad. -message AppAdInfo { - // Mandatory ad text. - AdTextAsset mandatory_ad_text = 1; - - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. - repeated AdTextAsset headlines = 2; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. - repeated AdTextAsset descriptions = 3; - - // List of image assets that may be displayed with the ad. - repeated AdImageAsset images = 4; - - // List of YouTube video assets that may be displayed with the ad. - repeated AdVideoAsset youtube_videos = 5; - - // List of media bundle assets that may be used with the ad. - repeated AdMediaBundleAsset html5_media_bundles = 6; -} - -// App engagement ads allow you to write text encouraging a specific action in -// the app, like checking in, making a purchase, or booking a flight. -// They allow you to send users to a specific part of your app where they can -// find what they're looking for easier and faster. -message AppEngagementAdInfo { - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. - repeated AdTextAsset headlines = 1; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. - repeated AdTextAsset descriptions = 2; - - // List of image assets that may be displayed with the ad. - repeated AdImageAsset images = 3; - - // List of video assets that may be displayed with the ad. - repeated AdVideoAsset videos = 4; -} - -// A legacy app install ad that only can be used by a few select customers. -message LegacyAppInstallAdInfo { - // The id of the mobile app. - optional string app_id = 6; - - // The app store the mobile app is available in. - google.ads.googleads.v6.enums.LegacyAppInstallAdAppStoreEnum.LegacyAppInstallAdAppStore app_store = 2; - - // The headline of the ad. - optional string headline = 7; - - // The first description line of the ad. - optional string description1 = 8; - - // The second description line of the ad. - optional string description2 = 9; -} - -// A responsive display ad. -message ResponsiveDisplayAdInfo { - // Marketing images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must - // be 1.91:1 (+-1%). At least one marketing_image is required. Combined with - // square_marketing_images the maximum is 15. - repeated AdImageAsset marketing_images = 1; - - // Square marketing images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must - // be 1:1 (+-1%). At least one square marketing_image is required. Combined - // with marketing_images the maximum is 15. - repeated AdImageAsset square_marketing_images = 2; - - // Logo images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 512x128 and the aspect ratio must - // be 4:1 (+-1%). Combined with square_logo_images the maximum is 5. - repeated AdImageAsset logo_images = 3; - - // Square logo images to be used in the ad. Valid image types are GIF, - // JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must - // be 1:1 (+-1%). Combined with square_logo_images the maximum is 5. - repeated AdImageAsset square_logo_images = 4; - - // Short format headlines for the ad. The maximum length is 30 characters. - // At least 1 and max 5 headlines can be specified. - repeated AdTextAsset headlines = 5; - - // A required long format headline. The maximum length is 90 characters. - AdTextAsset long_headline = 6; - - // Descriptive texts for the ad. The maximum length is 90 characters. At - // least 1 and max 5 headlines can be specified. - repeated AdTextAsset descriptions = 7; - - // Optional YouTube videos for the ad. A maximum of 5 videos can be specified. - repeated AdVideoAsset youtube_videos = 8; - - // The advertiser/brand name. Maximum display width is 25. - optional string business_name = 17; - - // The main color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - optional string main_color = 18; - - // The accent color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as - // well. - optional string accent_color = 19; - - // Advertiser's consent to allow flexible color. When true, the ad may be - // served with different color if necessary. When false, the ad will be served - // with the specified colors or a neutral color. - // The default value is true. - // Must be true if main_color and accent_color are not set. - optional bool allow_flexible_color = 20; - - // The call-to-action text for the ad. Maximum display width is 30. - optional string call_to_action_text = 21; - - // Prefix before price. E.g. 'as low as'. - optional string price_prefix = 22; - - // Promotion text used for dyanmic formats of responsive ads. For example - // 'Free two-day shipping'. - optional string promo_text = 23; - - // Specifies which format the ad will be served in. Default is ALL_FORMATS. - google.ads.googleads.v6.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting format_setting = 16; - - // Specification for various creative controls. - ResponsiveDisplayAdControlSpec control_spec = 24; -} - -// A local ad. -message LocalAdInfo { - // List of text assets for headlines. When the ad serves the headlines will - // be selected from this list. At least 1 and at most 5 headlines must be - // specified. - repeated AdTextAsset headlines = 1; - - // List of text assets for descriptions. When the ad serves the descriptions - // will be selected from this list. At least 1 and at most 5 descriptions must - // be specified. - repeated AdTextAsset descriptions = 2; - - // List of text assets for call-to-actions. When the ad serves the - // call-to-actions will be selected from this list. Call-to-actions are - // optional and at most 5 can be specified. - repeated AdTextAsset call_to_actions = 3; - - // List of marketing image assets that may be displayed with the ad. The - // images must be 314x600 pixels or 320x320 pixels. At least 1 and at most - // 20 image assets must be specified. - repeated AdImageAsset marketing_images = 4; - - // List of logo image assets that may be displayed with the ad. The images - // must be 128x128 pixels and not larger than 120KB. At least 1 and at most 5 - // image assets must be specified. - repeated AdImageAsset logo_images = 5; - - // List of YouTube video assets that may be displayed with the ad. Videos - // are optional and at most 20 can be specified. - repeated AdVideoAsset videos = 6; - - // First part of optional text that may appear appended to the url displayed - // in the ad. - optional string path1 = 9; - - // Second part of optional text that may appear appended to the url displayed - // in the ad. This field can only be set when path1 is also set. - optional string path2 = 10; -} - -// A generic type of display ad. The exact ad format is controlled by the -// display_upload_product_type field, which determines what kinds of data -// need to be included with the ad. -message DisplayUploadAdInfo { - // The product type of this ad. See comments on the enum for details. - google.ads.googleads.v6.enums.DisplayUploadProductTypeEnum.DisplayUploadProductType display_upload_product_type = 1; - - // The asset data that makes up the ad. - oneof media_asset { - // A media bundle asset to be used in the ad. For information about the - // media bundle for HTML5_UPLOAD_AD see - // https://support.google.com/google-ads/answer/1722096 - // Media bundles that are part of dynamic product types use a special format - // that needs to be created through the Google Web Designer. See - // https://support.google.com/webdesigner/answer/7543898 for more - // information. - AdMediaBundleAsset media_bundle = 2; - } -} - -// Specification for various creative controls for a responsive display ad. -message ResponsiveDisplayAdControlSpec { - // Whether the advertiser has opted into the asset enhancements feature. - bool enable_asset_enhancements = 1; - - // Whether the advertiser has opted into auto-gen video feature. - bool enable_autogen_video = 2; -} diff --git a/google/ads/googleads/v6/common/asset_policy.proto b/google/ads/googleads/v6/common/asset_policy.proto deleted file mode 100644 index 9c835e060..000000000 --- a/google/ads/googleads/v6/common/asset_policy.proto +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/common/policy.proto"; -import "google/ads/googleads/v6/enums/policy_approval_status.proto"; -import "google/ads/googleads/v6/enums/policy_review_status.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "AssetPolicyProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing asset policies. - -// Contains policy information for an asset inside an ad. -message AdAssetPolicySummary { - // The list of policy findings for this asset. - repeated PolicyTopicEntry policy_topic_entries = 1; - - // Where in the review process this asset. - google.ads.googleads.v6.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2; - - // The overall approval status of this asset, which is calculated based on - // the status of its individual policy topic entries. - google.ads.googleads.v6.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3; -} diff --git a/google/ads/googleads/v6/common/asset_types.proto b/google/ads/googleads/v6/common/asset_types.proto deleted file mode 100644 index 985a3ea63..000000000 --- a/google/ads/googleads/v6/common/asset_types.proto +++ /dev/null @@ -1,196 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/lead_form_call_to_action_type.proto"; -import "google/ads/googleads/v6/enums/lead_form_desired_intent.proto"; -import "google/ads/googleads/v6/enums/lead_form_field_user_input_type.proto"; -import "google/ads/googleads/v6/enums/lead_form_post_submit_call_to_action_type.proto"; -import "google/ads/googleads/v6/enums/mime_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "AssetTypesProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file containing info messages for specific asset types. - -// A YouTube asset. -message YoutubeVideoAsset { - // YouTube video id. This is the 11 character string value used in the - // YouTube video URL. - optional string youtube_video_id = 2; - - // YouTube video title. - string youtube_video_title = 3; -} - -// A MediaBundle asset. -message MediaBundleAsset { - // Media bundle (ZIP file) asset data. The format of the uploaded ZIP file - // depends on the ad field where it will be used. For more information on the - // format, see the documentation of the ad field where you plan on using the - // MediaBundleAsset. This field is mutate only. - optional bytes data = 2; -} - -// An Image asset. -message ImageAsset { - // The raw bytes data of an image. This field is mutate only. - optional bytes data = 5; - - // File size of the image asset in bytes. - optional int64 file_size = 6; - - // MIME type of the image asset. - google.ads.googleads.v6.enums.MimeTypeEnum.MimeType mime_type = 3; - - // Metadata for this image at its original size. - ImageDimension full_size = 4; -} - -// Metadata for an image at a certain size, either original or resized. -message ImageDimension { - // Height of the image. - optional int64 height_pixels = 4; - - // Width of the image. - optional int64 width_pixels = 5; - - // A URL that returns the image with this height and width. - optional string url = 6; -} - -// A Text asset. -message TextAsset { - // Text content of the text asset. - optional string text = 2; -} - -// A Lead Form asset. -message LeadFormAsset { - // Required. The name of the business being advertised. - string business_name = 10 [(google.api.field_behavior) = REQUIRED]; - - // Required. Pre-defined display text that encourages user to expand the form. - google.ads.googleads.v6.enums.LeadFormCallToActionTypeEnum.LeadFormCallToActionType call_to_action_type = 17 [(google.api.field_behavior) = REQUIRED]; - - // Required. Text giving a clear value proposition of what users expect once they expand - // the form. - string call_to_action_description = 18 [(google.api.field_behavior) = REQUIRED]; - - // Required. Headline of the expanded form to describe what the form is asking for or - // facilitating. - string headline = 12 [(google.api.field_behavior) = REQUIRED]; - - // Required. Detailed description of the expanded form to describe what the form is - // asking for or facilitating. - string description = 13 [(google.api.field_behavior) = REQUIRED]; - - // Required. Link to a page describing the policy on how the collected data is handled - // by the advertiser/business. - string privacy_policy_url = 14 [(google.api.field_behavior) = REQUIRED]; - - // Headline of text shown after form submission that describes how the - // advertiser will follow up with the user. - optional string post_submit_headline = 15; - - // Detailed description shown after form submission that describes how the - // advertiser will follow up with the user. - optional string post_submit_description = 16; - - // Ordered list of input fields. - repeated LeadFormField fields = 8; - - // Configured methods for collected lead data to be delivered to advertiser. - repeated LeadFormDeliveryMethod delivery_methods = 9; - - // Pre-defined display text that encourages user action after the form is - // submitted. - google.ads.googleads.v6.enums.LeadFormPostSubmitCallToActionTypeEnum.LeadFormPostSubmitCallToActionType post_submit_call_to_action_type = 19; - - // Asset resource name of the background image. The minimum size is 600x314 - // and the aspect ratio must be 1.91:1 (+-1%). - optional string background_image_asset = 20; - - // Desired intent for the lead form, e.g. more volume or higher intent. - google.ads.googleads.v6.enums.LeadFormDesiredIntentEnum.LeadFormDesiredIntent desired_intent = 21; - - // Custom disclosure shown along with Google disclaimer on the lead form. - // Accessible to allowed customers only. - optional string custom_disclosure = 22; -} - -// One input field instance within a form. -message LeadFormField { - // Describes the input type, which may be a predefined type such as - // "full name" or a pre-vetted question like "Do you own a car?". - google.ads.googleads.v6.enums.LeadFormFieldUserInputTypeEnum.LeadFormFieldUserInputType input_type = 1; - - // Defines answer configuration that this form field accepts. If oneof is not - // set, this is a free-text answer. - oneof answers { - // Answer configuration for a single choice question. Can be set only for - // pre-vetted question fields. Minimum of 2 answers required and maximum of - // 12 allowed. - LeadFormSingleChoiceAnswers single_choice_answers = 2; - } -} - -// Defines possible answers for a single choice question, usually presented as -// a single-choice drop-down list. -message LeadFormSingleChoiceAnswers { - // List of choices for a single question field. The order of entries defines - // UI order. Minimum of 2 answers required and maximum of 12 allowed. - repeated string answers = 1; -} - -// A configuration of how leads are delivered to the advertiser. -message LeadFormDeliveryMethod { - // Various subtypes of delivery. - oneof delivery_details { - // Webhook method of delivery. - WebhookDelivery webhook = 1; - } -} - -// Google notifies the advertiser of leads by making HTTP calls to an -// endpoint they specify. The requests contain JSON matching a schema that -// Google publishes as part of form ads documentation. -message WebhookDelivery { - // Webhook url specified by advertiser to send the lead. - optional string advertiser_webhook_url = 4; - - // Anti-spoofing secret set by the advertiser as part of the webhook payload. - optional string google_secret = 5; - - // The schema version that this delivery instance will use. - optional int64 payload_schema_version = 6; -} - -// A Book on Google asset. Used to redirect user to book through Google. -// Book on Google will change the redirect url to book directly through -// Google. -message BookOnGoogleAsset { - -} diff --git a/google/ads/googleads/v6/common/bidding.proto b/google/ads/googleads/v6/common/bidding.proto deleted file mode 100644 index 412c85f6d..000000000 --- a/google/ads/googleads/v6/common/bidding.proto +++ /dev/null @@ -1,174 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/target_impression_share_location.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "BiddingProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing bidding schemes. - -// Commission is an automatic bidding strategy in which the advertiser pays a -// certain portion of the conversion value. -message Commission { - // Commission rate defines the portion of the conversion value that the - // advertiser will be billed. A commission rate of x should be passed into - // this field as (x * 1,000,000). For example, 106,000 represents a commission - // rate of 0.106 (10.6%). - optional int64 commission_rate_micros = 2; -} - -// An automated bidding strategy that raises bids for clicks -// that seem more likely to lead to a conversion and lowers -// them for clicks where they seem less likely. -message EnhancedCpc { - -} - -// Manual click-based bidding where user pays per click. -message ManualCpc { - // Whether bids are to be enhanced based on conversion optimizer data. - optional bool enhanced_cpc_enabled = 2; -} - -// Manual impression-based bidding where user pays per thousand impressions. -message ManualCpm { - -} - -// View based bidding where user pays per video view. -message ManualCpv { - -} - -// An automated bidding strategy to help get the most conversions for your -// campaigns while spending your budget. -message MaximizeConversions { - // The target cost per acquisition (CPA) option. This is the average amount - // that you would like to spend per acquisition. - // - // This field is read-only. - int64 target_cpa = 1; -} - -// An automated bidding strategy to help get the most conversion value for your -// campaigns while spending your budget. -message MaximizeConversionValue { - // The target return on ad spend (ROAS) option. If set, the bid strategy will - // maximize revenue while averaging the target return on ad spend. If the - // target ROAS is high, the bid strategy may not be able to spend the full - // budget. If the target ROAS is not set, the bid strategy will aim to - // achieve the highest possible ROAS for the budget. - optional double target_roas = 2; -} - -// An automated bid strategy that sets bids to help get as many conversions as -// possible at the target cost-per-acquisition (CPA) you set. -message TargetCpa { - // Average CPA target. - // This target should be greater than or equal to minimum billable unit based - // on the currency for the account. - optional int64 target_cpa_micros = 4; - - // Maximum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - optional int64 cpc_bid_ceiling_micros = 5; - - // Minimum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - optional int64 cpc_bid_floor_micros = 6; -} - -// Target CPM (cost per thousand impressions) is an automated bidding strategy -// that sets bids to optimize performance given the target CPM you set. -message TargetCpm { - -} - -// An automated bidding strategy that sets bids so that a certain percentage of -// search ads are shown at the top of the first page (or other targeted -// location). -message TargetImpressionShare { - // The targeted location on the search results page. - google.ads.googleads.v6.enums.TargetImpressionShareLocationEnum.TargetImpressionShareLocation location = 1; - - // The desired fraction of ads to be shown in the targeted location in micros. - // E.g. 1% equals 10,000. - optional int64 location_fraction_micros = 4; - - // The highest CPC bid the automated bidding system is permitted to specify. - // This is a required field entered by the advertiser that sets the ceiling - // and specified in local micros. - optional int64 cpc_bid_ceiling_micros = 5; -} - -// An automated bidding strategy that helps you maximize revenue while -// averaging a specific target return on ad spend (ROAS). -message TargetRoas { - // Required. The desired revenue (based on conversion data) per unit of spend. - // Value must be between 0.01 and 1000.0, inclusive. - optional double target_roas = 4; - - // Maximum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - optional int64 cpc_bid_ceiling_micros = 5; - - // Minimum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - optional int64 cpc_bid_floor_micros = 6; -} - -// An automated bid strategy that sets your bids to help get as many clicks -// as possible within your budget. -message TargetSpend { - // The spend target under which to maximize clicks. - // A TargetSpend bidder will attempt to spend the smaller of this value - // or the natural throttling spend amount. - // If not specified, the budget is used as the spend target. - // This field is deprecated and should no longer be used. See - // https://ads-developers.googleblog.com/2020/05/reminder-about-sunset-creation-of.html - // for details. - optional int64 target_spend_micros = 3 [deprecated = true]; - - // Maximum bid limit that can be set by the bid strategy. - // The limit applies to all keywords managed by the strategy. - optional int64 cpc_bid_ceiling_micros = 4; -} - -// A bidding strategy where bids are a fraction of the advertised price for -// some good or service. -message PercentCpc { - // Maximum bid limit that can be set by the bid strategy. This is - // an optional field entered by the advertiser and specified in local micros. - // Note: A zero value is interpreted in the same way as having bid_ceiling - // undefined. - optional int64 cpc_bid_ceiling_micros = 3; - - // Adjusts the bid for each auction upward or downward, depending on the - // likelihood of a conversion. Individual bids may exceed - // cpc_bid_ceiling_micros, but the average bid amount for a campaign should - // not. - optional bool enhanced_cpc_enabled = 4; -} diff --git a/google/ads/googleads/v6/common/click_location.proto b/google/ads/googleads/v6/common/click_location.proto deleted file mode 100644 index 8ebeb0945..000000000 --- a/google/ads/googleads/v6/common/click_location.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ClickLocationProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing a ClickLocation. - -// Location criteria associated with a click. -message ClickLocation { - // The city location criterion associated with the impression. - optional string city = 6; - - // The country location criterion associated with the impression. - optional string country = 7; - - // The metro location criterion associated with the impression. - optional string metro = 8; - - // The most specific location criterion associated with the impression. - optional string most_specific = 9; - - // The region location criterion associated with the impression. - optional string region = 10; -} diff --git a/google/ads/googleads/v6/common/criteria.proto b/google/ads/googleads/v6/common/criteria.proto deleted file mode 100644 index 16aa73675..000000000 --- a/google/ads/googleads/v6/common/criteria.proto +++ /dev/null @@ -1,611 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/age_range_type.proto"; -import "google/ads/googleads/v6/enums/app_payment_model_type.proto"; -import "google/ads/googleads/v6/enums/content_label_type.proto"; -import "google/ads/googleads/v6/enums/day_of_week.proto"; -import "google/ads/googleads/v6/enums/device.proto"; -import "google/ads/googleads/v6/enums/gender_type.proto"; -import "google/ads/googleads/v6/enums/hotel_date_selection_type.proto"; -import "google/ads/googleads/v6/enums/income_range_type.proto"; -import "google/ads/googleads/v6/enums/interaction_type.proto"; -import "google/ads/googleads/v6/enums/keyword_match_type.proto"; -import "google/ads/googleads/v6/enums/listing_group_type.proto"; -import "google/ads/googleads/v6/enums/location_group_radius_units.proto"; -import "google/ads/googleads/v6/enums/minute_of_hour.proto"; -import "google/ads/googleads/v6/enums/parental_status_type.proto"; -import "google/ads/googleads/v6/enums/preferred_content_type.proto"; -import "google/ads/googleads/v6/enums/product_bidding_category_level.proto"; -import "google/ads/googleads/v6/enums/product_channel.proto"; -import "google/ads/googleads/v6/enums/product_channel_exclusivity.proto"; -import "google/ads/googleads/v6/enums/product_condition.proto"; -import "google/ads/googleads/v6/enums/product_custom_attribute_index.proto"; -import "google/ads/googleads/v6/enums/product_type_level.proto"; -import "google/ads/googleads/v6/enums/proximity_radius_units.proto"; -import "google/ads/googleads/v6/enums/webpage_condition_operand.proto"; -import "google/ads/googleads/v6/enums/webpage_condition_operator.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "CriteriaProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing criteria types. - -// A keyword criterion. -message KeywordInfo { - // The text of the keyword (at most 80 characters and 10 words). - optional string text = 3; - - // The match type of the keyword. - google.ads.googleads.v6.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 2; -} - -// A placement criterion. This can be used to modify bids for sites when -// targeting the content network. -message PlacementInfo { - // URL of the placement. - // - // For example, "http://www.domain.com". - optional string url = 2; -} - -// A mobile app category criterion. -message MobileAppCategoryInfo { - // The mobile app category constant resource name. - optional string mobile_app_category_constant = 2; -} - -// A mobile application criterion. -message MobileApplicationInfo { - // A string that uniquely identifies a mobile application to Google Ads API. - // The format of this string is "{platform}-{platform_native_id}", where - // platform is "1" for iOS apps and "2" for Android apps, and where - // platform_native_id is the mobile application identifier native to the - // corresponding platform. - // For iOS, this native identifier is the 9 digit string that appears at the - // end of an App Store URL (e.g., "476943146" for "Flood-It! 2" whose App - // Store link is "http://itunes.apple.com/us/app/flood-it!-2/id476943146"). - // For Android, this native identifier is the application's package name - // (e.g., "com.labpixies.colordrips" for "Color Drips" given Google Play link - // "https://play.google.com/store/apps/details?id=com.labpixies.colordrips"). - // A well formed app id for Google Ads API would thus be "1-476943146" for iOS - // and "2-com.labpixies.colordrips" for Android. - // This field is required and must be set in CREATE operations. - optional string app_id = 4; - - // Name of this mobile application. - optional string name = 5; -} - -// A location criterion. -message LocationInfo { - // The geo target constant resource name. - optional string geo_target_constant = 2; -} - -// A device criterion. -message DeviceInfo { - // Type of the device. - google.ads.googleads.v6.enums.DeviceEnum.Device type = 1; -} - -// A preferred content criterion. -message PreferredContentInfo { - // Type of the preferred content. - google.ads.googleads.v6.enums.PreferredContentTypeEnum.PreferredContentType type = 2; -} - -// A listing group criterion. -message ListingGroupInfo { - // Type of the listing group. - google.ads.googleads.v6.enums.ListingGroupTypeEnum.ListingGroupType type = 1; - - // Dimension value with which this listing group is refining its parent. - // Undefined for the root group. - ListingDimensionInfo case_value = 2; - - // Resource name of ad group criterion which is the parent listing group - // subdivision. Null for the root group. - optional string parent_ad_group_criterion = 4; -} - -// A listing scope criterion. -message ListingScopeInfo { - // Scope of the campaign criterion. - repeated ListingDimensionInfo dimensions = 2; -} - -// Listing dimensions for listing group criterion. -message ListingDimensionInfo { - // Dimension of one of the types below is always present. - oneof dimension { - // Advertiser-specific hotel ID. - HotelIdInfo hotel_id = 2; - - // Class of the hotel as a number of stars 1 to 5. - HotelClassInfo hotel_class = 3; - - // Country or Region the hotel is located in. - HotelCountryRegionInfo hotel_country_region = 4; - - // State the hotel is located in. - HotelStateInfo hotel_state = 5; - - // City the hotel is located in. - HotelCityInfo hotel_city = 6; - - // Bidding category of a product offer. - ProductBiddingCategoryInfo product_bidding_category = 13; - - // Brand of a product offer. - ProductBrandInfo product_brand = 15; - - // Locality of a product offer. - ProductChannelInfo product_channel = 8; - - // Availability of a product offer. - ProductChannelExclusivityInfo product_channel_exclusivity = 9; - - // Condition of a product offer. - ProductConditionInfo product_condition = 10; - - // Custom attribute of a product offer. - ProductCustomAttributeInfo product_custom_attribute = 16; - - // Item id of a product offer. - ProductItemIdInfo product_item_id = 11; - - // Type of a product offer. - ProductTypeInfo product_type = 12; - - // Unknown dimension. Set when no other listing dimension is set. - UnknownListingDimensionInfo unknown_listing_dimension = 14; - } -} - -// Advertiser-specific hotel ID. -message HotelIdInfo { - // String value of the hotel ID. - optional string value = 2; -} - -// Class of the hotel as a number of stars 1 to 5. -message HotelClassInfo { - // Long value of the hotel class. - optional int64 value = 2; -} - -// Country or Region the hotel is located in. -message HotelCountryRegionInfo { - // The Geo Target Constant resource name. - optional string country_region_criterion = 2; -} - -// State the hotel is located in. -message HotelStateInfo { - // The Geo Target Constant resource name. - optional string state_criterion = 2; -} - -// City the hotel is located in. -message HotelCityInfo { - // The Geo Target Constant resource name. - optional string city_criterion = 2; -} - -// Bidding category of a product offer. -message ProductBiddingCategoryInfo { - // ID of the product bidding category. - // - // This ID is equivalent to the google_product_category ID as described in - // this article: https://support.google.com/merchants/answer/6324436 - optional int64 id = 4; - - // Two-letter upper-case country code of the product bidding category. It must - // match the campaign.shopping_setting.sales_country field. - optional string country_code = 5; - - // Level of the product bidding category. - google.ads.googleads.v6.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 3; -} - -// Brand of the product. -message ProductBrandInfo { - // String value of the product brand. - optional string value = 2; -} - -// Locality of a product offer. -message ProductChannelInfo { - // Value of the locality. - google.ads.googleads.v6.enums.ProductChannelEnum.ProductChannel channel = 1; -} - -// Availability of a product offer. -message ProductChannelExclusivityInfo { - // Value of the availability. - google.ads.googleads.v6.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity channel_exclusivity = 1; -} - -// Condition of a product offer. -message ProductConditionInfo { - // Value of the condition. - google.ads.googleads.v6.enums.ProductConditionEnum.ProductCondition condition = 1; -} - -// Custom attribute of a product offer. -message ProductCustomAttributeInfo { - // String value of the product custom attribute. - optional string value = 3; - - // Indicates the index of the custom attribute. - google.ads.googleads.v6.enums.ProductCustomAttributeIndexEnum.ProductCustomAttributeIndex index = 2; -} - -// Item id of a product offer. -message ProductItemIdInfo { - // Value of the id. - optional string value = 2; -} - -// Type of a product offer. -message ProductTypeInfo { - // Value of the type. - optional string value = 3; - - // Level of the type. - google.ads.googleads.v6.enums.ProductTypeLevelEnum.ProductTypeLevel level = 2; -} - -// Unknown listing dimension. -message UnknownListingDimensionInfo { - -} - -// Criterion for hotel date selection (default dates vs. user selected). -message HotelDateSelectionTypeInfo { - // Type of the hotel date selection - google.ads.googleads.v6.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType type = 1; -} - -// Criterion for number of days prior to the stay the booking is being made. -message HotelAdvanceBookingWindowInfo { - // Low end of the number of days prior to the stay. - optional int64 min_days = 3; - - // High end of the number of days prior to the stay. - optional int64 max_days = 4; -} - -// Criterion for length of hotel stay in nights. -message HotelLengthOfStayInfo { - // Low end of the number of nights in the stay. - optional int64 min_nights = 3; - - // High end of the number of nights in the stay. - optional int64 max_nights = 4; -} - -// Criterion for day of the week the booking is for. -message HotelCheckInDayInfo { - // The day of the week. - google.ads.googleads.v6.enums.DayOfWeekEnum.DayOfWeek day_of_week = 1; -} - -// Criterion for Interaction Type. -message InteractionTypeInfo { - // The interaction type. - google.ads.googleads.v6.enums.InteractionTypeEnum.InteractionType type = 1; -} - -// Represents an AdSchedule criterion. -// -// AdSchedule is specified as the day of the week and a time interval -// within which ads will be shown. -// -// No more than six AdSchedules can be added for the same day. -message AdScheduleInfo { - // Minutes after the start hour at which this schedule starts. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.ads.googleads.v6.enums.MinuteOfHourEnum.MinuteOfHour start_minute = 1; - - // Minutes after the end hour at which this schedule ends. The schedule is - // exclusive of the end minute. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.ads.googleads.v6.enums.MinuteOfHourEnum.MinuteOfHour end_minute = 2; - - // Starting hour in 24 hour time. - // This field must be between 0 and 23, inclusive. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - optional int32 start_hour = 6; - - // Ending hour in 24 hour time; 24 signifies end of the day. - // This field must be between 0 and 24, inclusive. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - optional int32 end_hour = 7; - - // Day of the week the schedule applies to. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - google.ads.googleads.v6.enums.DayOfWeekEnum.DayOfWeek day_of_week = 5; -} - -// An age range criterion. -message AgeRangeInfo { - // Type of the age range. - google.ads.googleads.v6.enums.AgeRangeTypeEnum.AgeRangeType type = 1; -} - -// A gender criterion. -message GenderInfo { - // Type of the gender. - google.ads.googleads.v6.enums.GenderTypeEnum.GenderType type = 1; -} - -// An income range criterion. -message IncomeRangeInfo { - // Type of the income range. - google.ads.googleads.v6.enums.IncomeRangeTypeEnum.IncomeRangeType type = 1; -} - -// A parental status criterion. -message ParentalStatusInfo { - // Type of the parental status. - google.ads.googleads.v6.enums.ParentalStatusTypeEnum.ParentalStatusType type = 1; -} - -// A YouTube Video criterion. -message YouTubeVideoInfo { - // YouTube video id as it appears on the YouTube watch page. - optional string video_id = 2; -} - -// A YouTube Channel criterion. -message YouTubeChannelInfo { - // The YouTube uploader channel id or the channel code of a YouTube channel. - optional string channel_id = 2; -} - -// A User List criterion. Represents a user list that is defined by the -// advertiser to be targeted. -message UserListInfo { - // The User List resource name. - optional string user_list = 2; -} - -// A Proximity criterion. The geo point and radius determine what geographical -// area is included. The address is a description of the geo point that does -// not affect ad serving. -// -// There are two ways to create a proximity. First, by setting an address -// and radius. The geo point will be automatically computed. Second, by -// setting a geo point and radius. The address is an optional label that won't -// be validated. -message ProximityInfo { - // Latitude and longitude. - GeoPointInfo geo_point = 1; - - // The radius of the proximity. - optional double radius = 5; - - // The unit of measurement of the radius. Default is KILOMETERS. - google.ads.googleads.v6.enums.ProximityRadiusUnitsEnum.ProximityRadiusUnits radius_units = 3; - - // Full address. - AddressInfo address = 4; -} - -// Geo point for proximity criterion. -message GeoPointInfo { - // Micro degrees for the longitude. - optional int32 longitude_in_micro_degrees = 3; - - // Micro degrees for the latitude. - optional int32 latitude_in_micro_degrees = 4; -} - -// Address for proximity criterion. -message AddressInfo { - // Postal code. - optional string postal_code = 8; - - // Province or state code. - optional string province_code = 9; - - // Country code. - optional string country_code = 10; - - // Province or state name. - optional string province_name = 11; - - // Street address line 1. - optional string street_address = 12; - - // Street address line 2. This field is write-only. It is only used for - // calculating the longitude and latitude of an address when geo_point is - // empty. - optional string street_address2 = 13; - - // Name of the city. - optional string city_name = 14; -} - -// A topic criterion. Use topics to target or exclude placements in the -// Google Display Network based on the category into which the placement falls -// (for example, "Pets & Animals/Pets/Dogs"). -message TopicInfo { - // The Topic Constant resource name. - optional string topic_constant = 3; - - // The category to target or exclude. Each subsequent element in the array - // describes a more specific sub-category. For example, - // "Pets & Animals", "Pets", "Dogs" represents the "Pets & Animals/Pets/Dogs" - // category. - repeated string path = 4; -} - -// A language criterion. -message LanguageInfo { - // The language constant resource name. - optional string language_constant = 2; -} - -// An IpBlock criterion used for IP exclusions. We allow: -// - IPv4 and IPv6 addresses -// - individual addresses (192.168.0.1) -// - masks for individual addresses (192.168.0.1/32) -// - masks for Class C networks (192.168.0.1/24) -message IpBlockInfo { - // The IP address of this IP block. - optional string ip_address = 2; -} - -// Content Label for category exclusion. -message ContentLabelInfo { - // Content label type, required for CREATE operations. - google.ads.googleads.v6.enums.ContentLabelTypeEnum.ContentLabelType type = 1; -} - -// Represents a Carrier Criterion. -message CarrierInfo { - // The Carrier constant resource name. - optional string carrier_constant = 2; -} - -// Represents a particular interest-based topic to be targeted. -message UserInterestInfo { - // The UserInterest resource name. - optional string user_interest_category = 2; -} - -// Represents a criterion for targeting webpages of an advertiser's website. -message WebpageInfo { - // The name of the criterion that is defined by this parameter. The name value - // will be used for identifying, sorting and filtering criteria with this type - // of parameters. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - optional string criterion_name = 3; - - // Conditions, or logical expressions, for webpage targeting. The list of - // webpage targeting conditions are and-ed together when evaluated - // for targeting. - // - // This field is required for CREATE operations and is prohibited on UPDATE - // operations. - repeated WebpageConditionInfo conditions = 2; -} - -// Logical expression for targeting webpages of an advertiser's website. -message WebpageConditionInfo { - // Operand of webpage targeting condition. - google.ads.googleads.v6.enums.WebpageConditionOperandEnum.WebpageConditionOperand operand = 1; - - // Operator of webpage targeting condition. - google.ads.googleads.v6.enums.WebpageConditionOperatorEnum.WebpageConditionOperator operator = 2; - - // Argument of webpage targeting condition. - optional string argument = 4; -} - -// Represents an operating system version to be targeted. -message OperatingSystemVersionInfo { - // The operating system version constant resource name. - optional string operating_system_version_constant = 2; -} - -// An app payment model criterion. -message AppPaymentModelInfo { - // Type of the app payment model. - google.ads.googleads.v6.enums.AppPaymentModelTypeEnum.AppPaymentModelType type = 1; -} - -// A mobile device criterion. -message MobileDeviceInfo { - // The mobile device constant resource name. - optional string mobile_device_constant = 2; -} - -// A custom affinity criterion. -// A criterion of this type is only targetable. -message CustomAffinityInfo { - // The CustomInterest resource name. - optional string custom_affinity = 2; -} - -// A custom intent criterion. -// A criterion of this type is only targetable. -message CustomIntentInfo { - // The CustomInterest resource name. - optional string custom_intent = 2; -} - -// A radius around a list of locations specified via a feed. -message LocationGroupInfo { - // Feed specifying locations for targeting. - // This is required and must be set in CREATE operations. - optional string feed = 5; - - // Geo target constant(s) restricting the scope of the geographic area within - // the feed. Currently only one geo target constant is allowed. - repeated string geo_target_constants = 6; - - // Distance in units specifying the radius around targeted locations. - // This is required and must be set in CREATE operations. - optional int64 radius = 7; - - // Unit of the radius. Miles and meters are supported for geo target - // constants. Milli miles and meters are supported for feed item sets. - // This is required and must be set in CREATE operations. - google.ads.googleads.v6.enums.LocationGroupRadiusUnitsEnum.LocationGroupRadiusUnits radius_units = 4; - - // FeedItemSets whose FeedItems are targeted. If multiple IDs are specified, - // then all items that appear in at least one set are targeted. This field - // cannot be used with geo_target_constants. This is optional and can only be - // set in CREATE operations. - repeated string feed_item_sets = 8; -} - -// A custom audience criterion. -message CustomAudienceInfo { - // The CustomAudience resource name. - string custom_audience = 1; -} - -// A combined audience criterion. -message CombinedAudienceInfo { - // The CombinedAudience resource name. - string combined_audience = 1; -} diff --git a/google/ads/googleads/v6/common/criterion_category_availability.proto b/google/ads/googleads/v6/common/criterion_category_availability.proto deleted file mode 100644 index d65046ce7..000000000 --- a/google/ads/googleads/v6/common/criterion_category_availability.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/advertising_channel_sub_type.proto"; -import "google/ads/googleads/v6/enums/advertising_channel_type.proto"; -import "google/ads/googleads/v6/enums/criterion_category_channel_availability_mode.proto"; -import "google/ads/googleads/v6/enums/criterion_category_locale_availability_mode.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "CriterionCategoryAvailabilityProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing criterion category availability information. - -// Information of category availability, per advertising channel. -message CriterionCategoryAvailability { - // Channel types and subtypes that are available to the category. - CriterionCategoryChannelAvailability channel = 1; - - // Locales that are available to the category for the channel. - repeated CriterionCategoryLocaleAvailability locale = 2; -} - -// Information of advertising channel type and subtypes a category is available -// in. -message CriterionCategoryChannelAvailability { - // Format of the channel availability. Can be ALL_CHANNELS (the rest of the - // fields will not be set), CHANNEL_TYPE (only advertising_channel_type type - // will be set, the category is available to all sub types under it) or - // CHANNEL_TYPE_AND_SUBTYPES (advertising_channel_type, - // advertising_channel_sub_type, and include_default_channel_sub_type will all - // be set). - google.ads.googleads.v6.enums.CriterionCategoryChannelAvailabilityModeEnum.CriterionCategoryChannelAvailabilityMode availability_mode = 1; - - // Channel type the category is available to. - google.ads.googleads.v6.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_type = 2; - - // Channel subtypes under the channel type the category is available to. - repeated google.ads.googleads.v6.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType advertising_channel_sub_type = 3; - - // Whether default channel sub type is included. For example, - // advertising_channel_type being DISPLAY and include_default_channel_sub_type - // being false means that the default display campaign where channel sub type - // is not set is not included in this availability configuration. - optional bool include_default_channel_sub_type = 5; -} - -// Information about which locales a category is available in. -message CriterionCategoryLocaleAvailability { - // Format of the locale availability. Can be LAUNCHED_TO_ALL (both country and - // language will be empty), COUNTRY (only country will be set), LANGUAGE (only - // language wil be set), COUNTRY_AND_LANGUAGE (both country and language will - // be set). - google.ads.googleads.v6.enums.CriterionCategoryLocaleAvailabilityModeEnum.CriterionCategoryLocaleAvailabilityMode availability_mode = 1; - - // Code of the country. - optional string country_code = 4; - - // Code of the language. - optional string language_code = 5; -} diff --git a/google/ads/googleads/v6/common/custom_parameter.proto b/google/ads/googleads/v6/common/custom_parameter.proto deleted file mode 100644 index d98834252..000000000 --- a/google/ads/googleads/v6/common/custom_parameter.proto +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "CustomParameterProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing CustomParameter and operation - -// A mapping that can be used by custom parameter tags in a -// `tracking_url_template`, `final_urls`, or `mobile_final_urls`. -message CustomParameter { - // The key matching the parameter tag name. - optional string key = 3; - - // The value to be substituted. - optional string value = 4; -} diff --git a/google/ads/googleads/v6/common/dates.proto b/google/ads/googleads/v6/common/dates.proto deleted file mode 100644 index d83b2e5cb..000000000 --- a/google/ads/googleads/v6/common/dates.proto +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "DatesProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing date range message. - -// A date range. -message DateRange { - // The start date, in yyyy-mm-dd format. This date is inclusive. - optional string start_date = 3; - - // The end date, in yyyy-mm-dd format. This date is inclusive. - optional string end_date = 4; -} diff --git a/google/ads/googleads/v6/common/explorer_auto_optimizer_setting.proto b/google/ads/googleads/v6/common/explorer_auto_optimizer_setting.proto deleted file mode 100644 index 8810b8413..000000000 --- a/google/ads/googleads/v6/common/explorer_auto_optimizer_setting.proto +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ExplorerAutoOptimizerSettingProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing ExplorerAutoOptimizerSetting - -// Settings for the Display Campaign Optimizer, initially named "Explorer". -// Learn more about -// [automatic targeting](https://support.google.com/google-ads/answer/190596). -message ExplorerAutoOptimizerSetting { - // Indicates whether the optimizer is turned on. - optional bool opt_in = 2; -} diff --git a/google/ads/googleads/v6/common/extensions.proto b/google/ads/googleads/v6/common/extensions.proto deleted file mode 100644 index f0374d9db..000000000 --- a/google/ads/googleads/v6/common/extensions.proto +++ /dev/null @@ -1,368 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/common/custom_parameter.proto"; -import "google/ads/googleads/v6/common/feed_common.proto"; -import "google/ads/googleads/v6/enums/app_store.proto"; -import "google/ads/googleads/v6/enums/call_conversion_reporting_state.proto"; -import "google/ads/googleads/v6/enums/price_extension_price_qualifier.proto"; -import "google/ads/googleads/v6/enums/price_extension_price_unit.proto"; -import "google/ads/googleads/v6/enums/price_extension_type.proto"; -import "google/ads/googleads/v6/enums/promotion_extension_discount_modifier.proto"; -import "google/ads/googleads/v6/enums/promotion_extension_occasion.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionsProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing extension types. - -// Represents an App extension. -message AppFeedItem { - // The visible text displayed when the link is rendered in an ad. - // This string must not be empty, and the length of this string should - // be between 1 and 25, inclusive. - optional string link_text = 9; - - // The store-specific ID for the target application. - // This string must not be empty. - optional string app_id = 10; - - // The application store that the target application belongs to. - // This field is required. - google.ads.googleads.v6.enums.AppStoreEnum.AppStore app_store = 3; - - // A list of possible final URLs after all cross domain redirects. - // This list must not be empty. - repeated string final_urls = 11; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated string final_mobile_urls = 12; - - // URL template for constructing a tracking URL. Default value is "{lpurl}". - optional string tracking_url_template = 13; - - // A list of mappings to be used for substituting URL custom parameter tags in - // the tracking_url_template, final_urls, and/or final_mobile_urls. - repeated CustomParameter url_custom_parameters = 7; - - // URL template for appending params to landing page URLs served with parallel - // tracking. - optional string final_url_suffix = 14; -} - -// Represents a Call extension. -message CallFeedItem { - // The advertiser's phone number to append to the ad. - // This string must not be empty. - optional string phone_number = 7; - - // Uppercase two-letter country code of the advertiser's phone number. - // This string must not be empty. - optional string country_code = 8; - - // Indicates whether call tracking is enabled. By default, call tracking is - // not enabled. - optional bool call_tracking_enabled = 9; - - // The conversion action to attribute a call conversion to. If not set a - // default conversion action is used. This field only has effect if - // call_tracking_enabled is set to true. Otherwise this field is ignored. - optional string call_conversion_action = 10; - - // If true, disable call conversion tracking. call_conversion_action should - // not be set if this is true. Optional. - optional bool call_conversion_tracking_disabled = 11; - - // Enum value that indicates whether this call extension uses its own call - // conversion setting (or just have call conversion disabled), or following - // the account level setting. - google.ads.googleads.v6.enums.CallConversionReportingStateEnum.CallConversionReportingState call_conversion_reporting_state = 6; -} - -// Represents a callout extension. -message CalloutFeedItem { - // The callout text. - // The length of this string should be between 1 and 25, inclusive. - optional string callout_text = 2; -} - -// Represents a location extension. -message LocationFeedItem { - // The name of the business. - optional string business_name = 9; - - // Line 1 of the business address. - optional string address_line_1 = 10; - - // Line 2 of the business address. - optional string address_line_2 = 11; - - // City of the business address. - optional string city = 12; - - // Province of the business address. - optional string province = 13; - - // Postal code of the business address. - optional string postal_code = 14; - - // Country code of the business address. - optional string country_code = 15; - - // Phone number of the business. - optional string phone_number = 16; -} - -// Represents an affiliate location extension. -message AffiliateLocationFeedItem { - // The name of the business. - optional string business_name = 11; - - // Line 1 of the business address. - optional string address_line_1 = 12; - - // Line 2 of the business address. - optional string address_line_2 = 13; - - // City of the business address. - optional string city = 14; - - // Province of the business address. - optional string province = 15; - - // Postal code of the business address. - optional string postal_code = 16; - - // Country code of the business address. - optional string country_code = 17; - - // Phone number of the business. - optional string phone_number = 18; - - // Id of the retail chain that is advertised as a seller of your product. - optional int64 chain_id = 19; - - // Name of chain. - optional string chain_name = 20; -} - -// An extension that users can click on to send a text message to the -// advertiser. -message TextMessageFeedItem { - // The business name to prepend to the message text. - // This field is required. - optional string business_name = 6; - - // Uppercase two-letter country code of the advertiser's phone number. - // This field is required. - optional string country_code = 7; - - // The advertiser's phone number the message will be sent to. Required. - optional string phone_number = 8; - - // The text to show in the ad. - // This field is required. - optional string text = 9; - - // The message extension_text populated in the messaging app. - optional string extension_text = 10; -} - -// Represents a Price extension. -message PriceFeedItem { - // Price extension type of this extension. - google.ads.googleads.v6.enums.PriceExtensionTypeEnum.PriceExtensionType type = 1; - - // Price qualifier for all offers of this price extension. - google.ads.googleads.v6.enums.PriceExtensionPriceQualifierEnum.PriceExtensionPriceQualifier price_qualifier = 2; - - // Tracking URL template for all offers of this price extension. - optional string tracking_url_template = 7; - - // The code of the language used for this price extension. - optional string language_code = 8; - - // The price offerings in this price extension. - repeated PriceOffer price_offerings = 5; - - // Tracking URL template for all offers of this price extension. - optional string final_url_suffix = 9; -} - -// Represents one price offer in a price extension. -message PriceOffer { - // Header text of this offer. - optional string header = 7; - - // Description text of this offer. - optional string description = 8; - - // Price value of this offer. - Money price = 3; - - // Price unit for this offer. - google.ads.googleads.v6.enums.PriceExtensionPriceUnitEnum.PriceExtensionPriceUnit unit = 4; - - // A list of possible final URLs after all cross domain redirects. - repeated string final_urls = 9; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated string final_mobile_urls = 10; -} - -// Represents a Promotion extension. -message PromotionFeedItem { - // A freeform description of what the promotion is targeting. - // This field is required. - optional string promotion_target = 16; - - // Enum that modifies the qualification of the discount. - google.ads.googleads.v6.enums.PromotionExtensionDiscountModifierEnum.PromotionExtensionDiscountModifier discount_modifier = 2; - - // Start date of when the promotion is eligible to be redeemed. - optional string promotion_start_date = 19; - - // Last date when the promotion is eligible to be redeemed. - optional string promotion_end_date = 20; - - // The occasion the promotion was intended for. - // If an occasion is set, the redemption window will need to fall within - // the date range associated with the occasion. - google.ads.googleads.v6.enums.PromotionExtensionOccasionEnum.PromotionExtensionOccasion occasion = 9; - - // A list of possible final URLs after all cross domain redirects. - // This field is required. - repeated string final_urls = 21; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated string final_mobile_urls = 22; - - // URL template for constructing a tracking URL. - optional string tracking_url_template = 23; - - // A list of mappings to be used for substituting URL custom parameter tags in - // the tracking_url_template, final_urls, and/or final_mobile_urls. - repeated CustomParameter url_custom_parameters = 13; - - // URL template for appending params to landing page URLs served with parallel - // tracking. - optional string final_url_suffix = 24; - - // The language of the promotion. - // Represented as BCP 47 language tag. - optional string language_code = 25; - - // Discount type, can be percentage off or amount off. - oneof discount_type { - // Percentage off discount in the promotion in micros. - // One million is equivalent to one percent. - // Either this or money_off_amount is required. - int64 percent_off = 17; - - // Money amount off for discount in the promotion. - // Either this or percent_off is required. - Money money_amount_off = 4; - } - - // Promotion trigger. Can be by promotion code or promo by eligible order - // amount. - oneof promotion_trigger { - // A code the user should use in order to be eligible for the promotion. - string promotion_code = 18; - - // The amount the total order needs to be for the user to be eligible for - // the promotion. - Money orders_over_amount = 6; - } -} - -// Represents a structured snippet extension. -message StructuredSnippetFeedItem { - // The header of the snippet. - // This string must not be empty. - optional string header = 3; - - // The values in the snippet. - // The maximum size of this collection is 10. - repeated string values = 4; -} - -// Represents a sitelink extension. -message SitelinkFeedItem { - // URL display text for the sitelink. - // The length of this string should be between 1 and 25, inclusive. - optional string link_text = 9; - - // First line of the description for the sitelink. - // If this value is set, line2 must also be set. - // The length of this string should be between 0 and 35, inclusive. - optional string line1 = 10; - - // Second line of the description for the sitelink. - // If this value is set, line1 must also be set. - // The length of this string should be between 0 and 35, inclusive. - optional string line2 = 11; - - // A list of possible final URLs after all cross domain redirects. - repeated string final_urls = 12; - - // A list of possible final mobile URLs after all cross domain redirects. - repeated string final_mobile_urls = 13; - - // URL template for constructing a tracking URL. - optional string tracking_url_template = 14; - - // A list of mappings to be used for substituting URL custom parameter tags in - // the tracking_url_template, final_urls, and/or final_mobile_urls. - repeated CustomParameter url_custom_parameters = 7; - - // Final URL suffix to be appended to landing page URLs served with - // parallel tracking. - optional string final_url_suffix = 15; -} - -// Represents a hotel callout extension. -message HotelCalloutFeedItem { - // The callout text. - // The length of this string should be between 1 and 25, inclusive. - optional string text = 3; - - // The language of the hotel callout text. - // IETF BCP 47 compliant language code. - optional string language_code = 4; -} - -// Represents an advertiser provided image extension. -message ImageFeedItem { - // Required. Resource name of the image asset. - string image_asset = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; -} diff --git a/google/ads/googleads/v6/common/feed_common.proto b/google/ads/googleads/v6/common/feed_common.proto deleted file mode 100644 index 7bba6e249..000000000 --- a/google/ads/googleads/v6/common/feed_common.proto +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "FeedCommonProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing common feed proto messages. - -// Represents a price in a particular currency. -message Money { - // Three-character ISO 4217 currency code. - optional string currency_code = 3; - - // Amount in micros. One million is equivalent to one unit. - optional int64 amount_micros = 4; -} diff --git a/google/ads/googleads/v6/common/feed_item_set_filter_type_infos.proto b/google/ads/googleads/v6/common/feed_item_set_filter_type_infos.proto deleted file mode 100644 index a0e5f246e..000000000 --- a/google/ads/googleads/v6/common/feed_item_set_filter_type_infos.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/feed_item_set_string_filter_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemSetFilterTypeInfosProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Represents a filter on locations in a feed item set. -// Only applicable if the parent Feed of the FeedItemSet is a LOCATION feed. -message DynamicLocationSetFilter { - // If multiple labels are set, then only feeditems marked with all the labels - // will be added to the FeedItemSet. - repeated string labels = 1; - - // Business name filter. - BusinessNameFilter business_name_filter = 2; -} - -// Represents a business name filter on locations in a FeedItemSet. -message BusinessNameFilter { - // Business name string to use for filtering. - string business_name = 1; - - // The type of string matching to use when filtering with business_name. - google.ads.googleads.v6.enums.FeedItemSetStringFilterTypeEnum.FeedItemSetStringFilterType filter_type = 2; -} - -// Represents a filter on affiliate locations in a FeedItemSet. -// Only applicable if the parent Feed of the FeedItemSet is an -// AFFILIATE_LOCATION feed. -message DynamicAffiliateLocationSetFilter { - // Used to filter affiliate locations by chain ids. Only affiliate locations - // that belong to the specified chain(s) will be added to the FeedItemSet. - repeated int64 chain_ids = 1; -} diff --git a/google/ads/googleads/v6/common/final_app_url.proto b/google/ads/googleads/v6/common/final_app_url.proto deleted file mode 100644 index 9b3846939..000000000 --- a/google/ads/googleads/v6/common/final_app_url.proto +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/app_url_operating_system_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "FinalAppUrlProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file FinalAppUrl type. - -// A URL for deep linking into an app for the given operating system. -message FinalAppUrl { - // The operating system targeted by this URL. Required. - google.ads.googleads.v6.enums.AppUrlOperatingSystemTypeEnum.AppUrlOperatingSystemType os_type = 1; - - // The app deep link URL. Deep links specify a location in an app that - // corresponds to the content you'd like to show, and should be of the form - // {scheme}://{host_path} - // The scheme identifies which app to open. For your app, you can use a custom - // scheme that starts with the app's name. The host and path specify the - // unique location in the app where your content exists. - // Example: "exampleapp://productid_1234". Required. - optional string url = 3; -} diff --git a/google/ads/googleads/v6/common/frequency_cap.proto b/google/ads/googleads/v6/common/frequency_cap.proto deleted file mode 100644 index d60fbf7f0..000000000 --- a/google/ads/googleads/v6/common/frequency_cap.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/frequency_cap_event_type.proto"; -import "google/ads/googleads/v6/enums/frequency_cap_level.proto"; -import "google/ads/googleads/v6/enums/frequency_cap_time_unit.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing frequency caps. - -// A rule specifying the maximum number of times an ad (or some set of ads) can -// be shown to a user over a particular time period. -message FrequencyCapEntry { - // The key of a particular frequency cap. There can be no more - // than one frequency cap with the same key. - FrequencyCapKey key = 1; - - // Maximum number of events allowed during the time range by this cap. - optional int32 cap = 3; -} - -// A group of fields used as keys for a frequency cap. -// There can be no more than one frequency cap with the same key. -message FrequencyCapKey { - // The level on which the cap is to be applied (e.g. ad group ad, ad group). - // The cap is applied to all the entities of this level. - google.ads.googleads.v6.enums.FrequencyCapLevelEnum.FrequencyCapLevel level = 1; - - // The type of event that the cap applies to (e.g. impression). - google.ads.googleads.v6.enums.FrequencyCapEventTypeEnum.FrequencyCapEventType event_type = 3; - - // Unit of time the cap is defined at (e.g. day, week). - google.ads.googleads.v6.enums.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit time_unit = 2; - - // Number of time units the cap lasts. - optional int32 time_length = 5; -} diff --git a/google/ads/googleads/v6/common/keyword_plan_common.proto b/google/ads/googleads/v6/common/keyword_plan_common.proto deleted file mode 100644 index cc89d0283..000000000 --- a/google/ads/googleads/v6/common/keyword_plan_common.proto +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/keyword_plan_competition_level.proto"; -import "google/ads/googleads/v6/enums/month_of_year.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCommonProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing Keyword Planner messages. - -// Historical metrics specific to the targeting options selected. -// Targeting options include geographies, network, etc. -// Refer to https://support.google.com/google-ads/answer/3022575 for more -// details. -message KeywordPlanHistoricalMetrics { - // Approximate number of monthly searches on this query averaged - // for the past 12 months. - optional int64 avg_monthly_searches = 7; - - // Approximate number of searches on this query for the past twelve months. - repeated MonthlySearchVolume monthly_search_volumes = 6; - - // The competition level for the query. - google.ads.googleads.v6.enums.KeywordPlanCompetitionLevelEnum.KeywordPlanCompetitionLevel competition = 2; - - // The competition index for the query in the range [0, 100]. - // Shows how competitive ad placement is for a keyword. - // The level of competition from 0-100 is determined by the number of ad slots - // filled divided by the total number of ad slots available. If not enough - // data is available, null is returned. - optional int64 competition_index = 8; - - // Top of page bid low range (20th percentile) in micros for the keyword. - optional int64 low_top_of_page_bid_micros = 9; - - // Top of page bid high range (80th percentile) in micros for the keyword. - optional int64 high_top_of_page_bid_micros = 10; -} - -// Monthly search volume. -message MonthlySearchVolume { - // The year of the search volume (e.g. 2020). - optional int64 year = 4; - - // The month of the search volume. - google.ads.googleads.v6.enums.MonthOfYearEnum.MonthOfYear month = 2; - - // Approximate number of searches for the month. - // A null value indicates the search volume is unavailable for - // that month. - optional int64 monthly_searches = 5; -} diff --git a/google/ads/googleads/v6/common/matching_function.proto b/google/ads/googleads/v6/common/matching_function.proto deleted file mode 100644 index 765cd0def..000000000 --- a/google/ads/googleads/v6/common/matching_function.proto +++ /dev/null @@ -1,126 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/matching_function_context_type.proto"; -import "google/ads/googleads/v6/enums/matching_function_operator.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "MatchingFunctionProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing a matching function. - -// Matching function associated with a -// CustomerFeed, CampaignFeed, or AdGroupFeed. The matching function is used -// to filter the set of feed items selected. -message MatchingFunction { - // String representation of the Function. - // - // Examples: - // - // 1. IDENTITY(true) or IDENTITY(false). All or no feed items served. - // 2. EQUALS(CONTEXT.DEVICE,"Mobile") - // 3. IN(FEED_ITEM_ID,{1000001,1000002,1000003}) - // 4. CONTAINS_ANY(FeedAttribute[12345678,0],{"Mars cruise","Venus cruise"}) - // 5. AND(IN(FEED_ITEM_ID,{10001,10002}),EQUALS(CONTEXT.DEVICE,"Mobile")) - // - // For more details, visit - // https://developers.google.com/adwords/api/docs/guides/feed-matching-functions - // - // Note that because multiple strings may represent the same underlying - // function (whitespace and single versus double quotation marks, for - // example), the value returned may not be identical to the string sent in a - // mutate request. - optional string function_string = 5; - - // Operator for a function. - google.ads.googleads.v6.enums.MatchingFunctionOperatorEnum.MatchingFunctionOperator operator = 4; - - // The operands on the left hand side of the equation. This is also the - // operand to be used for single operand expressions such as NOT. - repeated Operand left_operands = 2; - - // The operands on the right hand side of the equation. - repeated Operand right_operands = 3; -} - -// An operand in a matching function. -message Operand { - // A constant operand in a matching function. - message ConstantOperand { - // Constant operand values. Required. - oneof constant_operand_value { - // String value of the operand if it is a string type. - string string_value = 5; - - // Int64 value of the operand if it is a int64 type. - int64 long_value = 6; - - // Boolean value of the operand if it is a boolean type. - bool boolean_value = 7; - - // Double value of the operand if it is a double type. - double double_value = 8; - } - } - - // A feed attribute operand in a matching function. - // Used to represent a feed attribute in feed. - message FeedAttributeOperand { - // The associated feed. Required. - optional int64 feed_id = 3; - - // Id of the referenced feed attribute. Required. - optional int64 feed_attribute_id = 4; - } - - // A function operand in a matching function. - // Used to represent nested functions. - message FunctionOperand { - // The matching function held in this operand. - MatchingFunction matching_function = 1; - } - - // An operand in a function referring to a value in the request context. - message RequestContextOperand { - // Type of value to be referred in the request context. - google.ads.googleads.v6.enums.MatchingFunctionContextTypeEnum.MatchingFunctionContextType context_type = 1; - } - - // Different operands that can be used in a matching function. Required. - oneof function_argument_operand { - // A constant operand in a matching function. - ConstantOperand constant_operand = 1; - - // This operand specifies a feed attribute in feed. - FeedAttributeOperand feed_attribute_operand = 2; - - // A function operand in a matching function. - // Used to represent nested functions. - FunctionOperand function_operand = 3; - - // An operand in a function referring to a value in the request context. - RequestContextOperand request_context_operand = 4; - } -} diff --git a/google/ads/googleads/v6/common/metrics.proto b/google/ads/googleads/v6/common/metrics.proto deleted file mode 100644 index 8bc0f4ae7..000000000 --- a/google/ads/googleads/v6/common/metrics.proto +++ /dev/null @@ -1,605 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/interaction_event_type.proto"; -import "google/ads/googleads/v6/enums/quality_score_bucket.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "MetricsProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing metrics. - -// Metrics data. -message Metrics { - // The percent of your ad impressions that are shown as the very first ad - // above the organic search results. - optional double absolute_top_impression_percentage = 183; - - // Average cost of viewable impressions (`active_view_impressions`). - optional double active_view_cpm = 184; - - // Active view measurable clicks divided by active view viewable impressions. - // This metric is reported only for display network. - optional double active_view_ctr = 185; - - // A measurement of how often your ad has become viewable on a Display - // Network site. - optional int64 active_view_impressions = 186; - - // The ratio of impressions that could be measured by Active View over the - // number of served impressions. - optional double active_view_measurability = 187; - - // The cost of the impressions you received that were measurable by Active - // View. - optional int64 active_view_measurable_cost_micros = 188; - - // The number of times your ads are appearing on placements in positions - // where they can be seen. - optional int64 active_view_measurable_impressions = 189; - - // The percentage of time when your ad appeared on an Active View enabled site - // (measurable impressions) and was viewable (viewable impressions). - optional double active_view_viewability = 190; - - // All conversions from interactions (as oppose to view through conversions) - // divided by the number of ad interactions. - optional double all_conversions_from_interactions_rate = 191; - - // The value of all conversions. - optional double all_conversions_value = 192; - - // The value of all conversions. When this column is selected with date, the - // values in date column means the conversion date. Details for the - // by_conversion_date columns are available at - // https://support.google.com/google-ads/answer/9549009. - double all_conversions_value_by_conversion_date = 240; - - // The total number of conversions. This includes all conversions regardless - // of the value of include_in_conversions_metric. - optional double all_conversions = 193; - - // The total number of conversions. This includes all conversions regardless - // of the value of include_in_conversions_metric. When this column is selected - // with date, the values in date column means the conversion date. Details for - // the by_conversion_date columns are available at - // https://support.google.com/google-ads/answer/9549009. - double all_conversions_by_conversion_date = 241; - - // The value of all conversions divided by the total cost of ad interactions - // (such as clicks for text ads or views for video ads). - optional double all_conversions_value_per_cost = 194; - - // The number of times people clicked the "Call" button to call a store during - // or after clicking an ad. This number doesn't include whether or not calls - // were connected, or the duration of any calls. - // This metric applies to feed items only. - optional double all_conversions_from_click_to_call = 195; - - // The number of times people clicked a "Get directions" button to navigate to - // a store after clicking an ad. - // This metric applies to feed items only. - optional double all_conversions_from_directions = 196; - - // The value of all conversions from interactions divided by the total number - // of interactions. - optional double all_conversions_from_interactions_value_per_interaction = 197; - - // The number of times people clicked a link to view a store's menu after - // clicking an ad. - // This metric applies to feed items only. - optional double all_conversions_from_menu = 198; - - // The number of times people placed an order at a store after clicking an ad. - // This metric applies to feed items only. - optional double all_conversions_from_order = 199; - - // The number of other conversions (for example, posting a review or saving a - // location for a store) that occurred after people clicked an ad. - // This metric applies to feed items only. - optional double all_conversions_from_other_engagement = 200; - - // Estimated number of times people visited a store after clicking an ad. - // This metric applies to feed items only. - optional double all_conversions_from_store_visit = 201; - - // The number of times that people were taken to a store's URL after clicking - // an ad. - // This metric applies to feed items only. - optional double all_conversions_from_store_website = 202; - - // The average amount you pay per interaction. This amount is the total cost - // of your ads divided by the total number of interactions. - optional double average_cost = 203; - - // The total cost of all clicks divided by the total number of clicks - // received. - optional double average_cpc = 204; - - // The average amount that you've been charged for an ad engagement. This - // amount is the total cost of all ad engagements divided by the total number - // of ad engagements. - optional double average_cpe = 205; - - // Average cost-per-thousand impressions (CPM). - optional double average_cpm = 206; - - // The average amount you pay each time someone views your ad. - // The average CPV is defined by the total cost of all ad views divided by - // the number of views. - optional double average_cpv = 207; - - // Average number of pages viewed per session. - optional double average_page_views = 208; - - // Total duration of all sessions (in seconds) / number of sessions. Imported - // from Google Analytics. - optional double average_time_on_site = 209; - - // An indication of how other advertisers are bidding on similar products. - optional double benchmark_average_max_cpc = 210; - - // An indication on how other advertisers' Shopping ads for similar products - // are performing based on how often people who see their ad click on it. - optional double benchmark_ctr = 211; - - // Percentage of clicks where the user only visited a single page on your - // site. Imported from Google Analytics. - optional double bounce_rate = 212; - - // The number of clicks. - optional int64 clicks = 131; - - // The number of times your ad or your site's listing in the unpaid - // results was clicked. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - optional int64 combined_clicks = 156; - - // The number of times your ad or your site's listing in the unpaid - // results was clicked (combined_clicks) divided by combined_queries. See the - // help page at https://support.google.com/google-ads/answer/3097241 for - // details. - optional double combined_clicks_per_query = 157; - - // The number of searches that returned pages from your site in the unpaid - // results or showed one of your text ads. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - optional int64 combined_queries = 158; - - // The estimated percent of times that your ad was eligible to show - // on the Display Network but didn't because your budget was too low. - // Note: Content budget lost impression share is reported in the range of 0 - // to 0.9. Any value above 0.9 is reported as 0.9001. - optional double content_budget_lost_impression_share = 159; - - // The impressions you've received on the Display Network divided - // by the estimated number of impressions you were eligible to receive. - // Note: Content impression share is reported in the range of 0.1 to 1. Any - // value below 0.1 is reported as 0.0999. - optional double content_impression_share = 160; - - // The last date/time a conversion tag for this conversion action successfully - // fired and was seen by Google Ads. This firing event may not have been the - // result of an attributable conversion (e.g. because the tag was fired from a - // browser that did not previously click an ad from an appropriate - // advertiser). The date/time is in the customer's time zone. - optional string conversion_last_received_request_date_time = 161; - - // The date of the most recent conversion for this conversion action. The date - // is in the customer's time zone. - optional string conversion_last_conversion_date = 162; - - // The estimated percentage of impressions on the Display Network - // that your ads didn't receive due to poor Ad Rank. - // Note: Content rank lost impression share is reported in the range of 0 - // to 0.9. Any value above 0.9 is reported as 0.9001. - optional double content_rank_lost_impression_share = 163; - - // Conversions from interactions divided by the number of ad interactions - // (such as clicks for text ads or views for video ads). This only includes - // conversion actions which include_in_conversions_metric attribute is set to - // true. If you use conversion-based bidding, your bid strategies will - // optimize for these conversions. - optional double conversions_from_interactions_rate = 164; - - // The value of conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double conversions_value = 165; - - // The value of conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. When this column is selected with date, the values in date - // column means the conversion date. Details for the by_conversion_date - // columns are available at - // https://support.google.com/google-ads/answer/9549009. - double conversions_value_by_conversion_date = 242; - - // The value of conversions divided by the cost of ad interactions. This only - // includes conversion actions which include_in_conversions_metric attribute - // is set to true. If you use conversion-based bidding, your bid strategies - // will optimize for these conversions. - optional double conversions_value_per_cost = 166; - - // The value of conversions from interactions divided by the number of ad - // interactions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double conversions_from_interactions_value_per_interaction = 167; - - // The number of conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double conversions = 168; - - // The number of conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. When this column is selected with date, the values in date - // column means the conversion date. Details for the by_conversion_date - // columns are available at - // https://support.google.com/google-ads/answer/9549009. - double conversions_by_conversion_date = 243; - - // The sum of your cost-per-click (CPC) and cost-per-thousand impressions - // (CPM) costs during this period. - optional int64 cost_micros = 169; - - // The cost of ad interactions divided by all conversions. - optional double cost_per_all_conversions = 170; - - // The cost of ad interactions divided by conversions. This only includes - // conversion actions which include_in_conversions_metric attribute is set to - // true. If you use conversion-based bidding, your bid strategies will - // optimize for these conversions. - optional double cost_per_conversion = 171; - - // The cost of ad interactions divided by current model attributed - // conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double cost_per_current_model_attributed_conversion = 172; - - // Conversions from when a customer clicks on a Google Ads ad on one device, - // then converts on a different device or browser. - // Cross-device conversions are already included in all_conversions. - optional double cross_device_conversions = 173; - - // The number of clicks your ad receives (Clicks) divided by the number - // of times your ad is shown (Impressions). - optional double ctr = 174; - - // Shows how your historic conversions data would look under the attribution - // model you've currently selected. This only includes conversion actions - // which include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double current_model_attributed_conversions = 175; - - // Current model attributed conversions from interactions divided by the - // number of ad interactions (such as clicks for text ads or views for video - // ads). This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double current_model_attributed_conversions_from_interactions_rate = 176; - - // The value of current model attributed conversions from interactions divided - // by the number of ad interactions. This only includes conversion actions - // which include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double current_model_attributed_conversions_from_interactions_value_per_interaction = 177; - - // The value of current model attributed conversions. This only includes - // conversion actions which include_in_conversions_metric attribute is set to - // true. If you use conversion-based bidding, your bid strategies will - // optimize for these conversions. - optional double current_model_attributed_conversions_value = 178; - - // The value of current model attributed conversions divided by the cost of ad - // interactions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double current_model_attributed_conversions_value_per_cost = 179; - - // How often people engage with your ad after it's shown to them. This is the - // number of ad expansions divided by the number of times your ad is shown. - optional double engagement_rate = 180; - - // The number of engagements. - // An engagement occurs when a viewer expands your Lightbox ad. Also, in the - // future, other ad types may support engagement metrics. - optional int64 engagements = 181; - - // Average lead value based on clicks. - optional double hotel_average_lead_value_micros = 213; - - // The average price difference between the price offered by reporting hotel - // advertiser and the cheapest price offered by the competing advertiser. - optional double hotel_price_difference_percentage = 214; - - // The number of impressions that hotel partners could have had given their - // feed performance. - optional int64 hotel_eligible_impressions = 215; - - // The creative historical quality score. - google.ads.googleads.v6.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80; - - // The quality of historical landing page experience. - google.ads.googleads.v6.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81; - - // The historical quality score. - optional int64 historical_quality_score = 216; - - // The historical search predicted click through rate (CTR). - google.ads.googleads.v6.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83; - - // The number of times the ad was forwarded to someone else as a message. - optional int64 gmail_forwards = 217; - - // The number of times someone has saved your Gmail ad to their inbox as a - // message. - optional int64 gmail_saves = 218; - - // The number of clicks to the landing page on the expanded state of Gmail - // ads. - optional int64 gmail_secondary_clicks = 219; - - // The number of times a store's location-based ad was shown. - // This metric applies to feed items only. - optional int64 impressions_from_store_reach = 220; - - // Count of how often your ad has appeared on a search results page or - // website on the Google Network. - optional int64 impressions = 221; - - // How often people interact with your ad after it is shown to them. - // This is the number of interactions divided by the number of times your ad - // is shown. - optional double interaction_rate = 222; - - // The number of interactions. - // An interaction is the main user action associated with an ad format-clicks - // for text and shopping ads, views for video ads, and so on. - optional int64 interactions = 223; - - // The types of payable and free interactions. - repeated google.ads.googleads.v6.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100; - - // The percentage of clicks filtered out of your total number of clicks - // (filtered + non-filtered clicks) during the reporting period. - optional double invalid_click_rate = 224; - - // Number of clicks Google considers illegitimate and doesn't charge you for. - optional int64 invalid_clicks = 225; - - // Number of message chats initiated for Click To Message impressions that - // were message tracking eligible. - optional int64 message_chats = 226; - - // Number of Click To Message impressions that were message tracking eligible. - optional int64 message_impressions = 227; - - // Number of message chats initiated (message_chats) divided by the number - // of message impressions (message_impressions). - // Rate at which a user initiates a message chat from an ad impression with - // a messaging option and message tracking enabled. - // Note that this rate can be more than 1.0 for a given message impression. - optional double message_chat_rate = 228; - - // The percentage of mobile clicks that go to a mobile-friendly page. - optional double mobile_friendly_clicks_percentage = 229; - - // The number of times someone clicked your site's listing in the unpaid - // results for a particular query. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - optional int64 organic_clicks = 230; - - // The number of times someone clicked your site's listing in the unpaid - // results (organic_clicks) divided by the total number of searches that - // returned pages from your site (organic_queries). See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - optional double organic_clicks_per_query = 231; - - // The number of listings for your site in the unpaid search results. See the - // help page at https://support.google.com/google-ads/answer/3097241 for - // details. - optional int64 organic_impressions = 232; - - // The number of times a page from your site was listed in the unpaid search - // results (organic_impressions) divided by the number of searches returning - // your site's listing in the unpaid results (organic_queries). See the help - // page at https://support.google.com/google-ads/answer/3097241 for details. - optional double organic_impressions_per_query = 233; - - // The total number of searches that returned your site's listing in the - // unpaid results. See the help page at - // https://support.google.com/google-ads/answer/3097241 for details. - optional int64 organic_queries = 234; - - // Percentage of first-time sessions (from people who had never visited your - // site before). Imported from Google Analytics. - optional double percent_new_visitors = 235; - - // Number of offline phone calls. - optional int64 phone_calls = 236; - - // Number of offline phone impressions. - optional int64 phone_impressions = 237; - - // Number of phone calls received (phone_calls) divided by the number of - // times your phone number is shown (phone_impressions). - optional double phone_through_rate = 238; - - // Your clickthrough rate (Ctr) divided by the average clickthrough rate of - // all advertisers on the websites that show your ads. Measures how your ads - // perform on Display Network sites compared to other ads on the same sites. - optional double relative_ctr = 239; - - // The percentage of the customer's Shopping or Search ad impressions that are - // shown in the most prominent Shopping position. See - // https://support.google.com/google-ads/answer/7501826 - // for details. Any value below 0.1 is reported as 0.0999. - optional double search_absolute_top_impression_share = 136; - - // The number estimating how often your ad wasn't the very first ad above the - // organic search results due to a low budget. Note: Search - // budget lost absolute top impression share is reported in the range of 0 to - // 0.9. Any value above 0.9 is reported as 0.9001. - optional double search_budget_lost_absolute_top_impression_share = 137; - - // The estimated percent of times that your ad was eligible to show on the - // Search Network but didn't because your budget was too low. Note: Search - // budget lost impression share is reported in the range of 0 to 0.9. Any - // value above 0.9 is reported as 0.9001. - optional double search_budget_lost_impression_share = 138; - - // The number estimating how often your ad didn't show anywhere above the - // organic search results due to a low budget. Note: Search - // budget lost top impression share is reported in the range of 0 to 0.9. Any - // value above 0.9 is reported as 0.9001. - optional double search_budget_lost_top_impression_share = 139; - - // The number of clicks you've received on the Search Network - // divided by the estimated number of clicks you were eligible to receive. - // Note: Search click share is reported in the range of 0.1 to 1. Any value - // below 0.1 is reported as 0.0999. - optional double search_click_share = 140; - - // The impressions you've received divided by the estimated number of - // impressions you were eligible to receive on the Search Network for search - // terms that matched your keywords exactly (or were close variants of your - // keyword), regardless of your keyword match types. Note: Search exact match - // impression share is reported in the range of 0.1 to 1. Any value below 0.1 - // is reported as 0.0999. - optional double search_exact_match_impression_share = 141; - - // The impressions you've received on the Search Network divided - // by the estimated number of impressions you were eligible to receive. - // Note: Search impression share is reported in the range of 0.1 to 1. Any - // value below 0.1 is reported as 0.0999. - optional double search_impression_share = 142; - - // The number estimating how often your ad wasn't the very first ad above the - // organic search results due to poor Ad Rank. - // Note: Search rank lost absolute top impression share is reported in the - // range of 0 to 0.9. Any value above 0.9 is reported as 0.9001. - optional double search_rank_lost_absolute_top_impression_share = 143; - - // The estimated percentage of impressions on the Search Network - // that your ads didn't receive due to poor Ad Rank. - // Note: Search rank lost impression share is reported in the range of 0 to - // 0.9. Any value above 0.9 is reported as 0.9001. - optional double search_rank_lost_impression_share = 144; - - // The number estimating how often your ad didn't show anywhere above the - // organic search results due to poor Ad Rank. - // Note: Search rank lost top impression share is reported in the range of 0 - // to 0.9. Any value above 0.9 is reported as 0.9001. - optional double search_rank_lost_top_impression_share = 145; - - // The impressions you've received in the top location (anywhere above the - // organic search results) compared to the estimated number of impressions you - // were eligible to receive in the top location. - // Note: Search top impression share is reported in the range of 0.1 to 1. Any - // value below 0.1 is reported as 0.0999. - optional double search_top_impression_share = 146; - - // A measure of how quickly your page loads after clicks on your mobile ads. - // The score is a range from 1 to 10, 10 being the fastest. - optional int64 speed_score = 147; - - // The percent of your ad impressions that are shown anywhere above the - // organic search results. - optional double top_impression_percentage = 148; - - // The percentage of ad clicks to Accelerated Mobile Pages (AMP) landing pages - // that reach a valid AMP page. - optional double valid_accelerated_mobile_pages_clicks_percentage = 149; - - // The value of all conversions divided by the number of all conversions. - optional double value_per_all_conversions = 150; - - // The value of all conversions divided by the number of all conversions. When - // this column is selected with date, the values in date column means the - // conversion date. Details for the by_conversion_date columns are available - // at https://support.google.com/google-ads/answer/9549009. - optional double value_per_all_conversions_by_conversion_date = 244; - - // The value of conversions divided by the number of conversions. This only - // includes conversion actions which include_in_conversions_metric attribute - // is set to true. If you use conversion-based bidding, your bid strategies - // will optimize for these conversions. - optional double value_per_conversion = 151; - - // The value of conversions divided by the number of conversions. This only - // includes conversion actions which include_in_conversions_metric attribute - // is set to true. If you use conversion-based bidding, your bid strategies - // will optimize for these conversions. When this column is selected with - // date, the values in date column means the conversion date. Details for the - // by_conversion_date columns are available at - // https://support.google.com/google-ads/answer/9549009. - optional double value_per_conversions_by_conversion_date = 245; - - // The value of current model attributed conversions divided by the number of - // the conversions. This only includes conversion actions which - // include_in_conversions_metric attribute is set to true. If you use - // conversion-based bidding, your bid strategies will optimize for these - // conversions. - optional double value_per_current_model_attributed_conversion = 152; - - // Percentage of impressions where the viewer watched all of your video. - optional double video_quartile_p100_rate = 132; - - // Percentage of impressions where the viewer watched 25% of your video. - optional double video_quartile_p25_rate = 133; - - // Percentage of impressions where the viewer watched 50% of your video. - optional double video_quartile_p50_rate = 134; - - // Percentage of impressions where the viewer watched 75% of your video. - optional double video_quartile_p75_rate = 135; - - // The number of views your TrueView video ad receives divided by its number - // of impressions, including thumbnail impressions for TrueView in-display - // ads. - optional double video_view_rate = 153; - - // The number of times your video ads were viewed. - optional int64 video_views = 154; - - // The total number of view-through conversions. - // These happen when a customer sees an image or rich media ad, then later - // completes a conversion on your site without interacting with (e.g., - // clicking on) another ad. - optional int64 view_through_conversions = 155; -} diff --git a/google/ads/googleads/v6/common/offline_user_data.proto b/google/ads/googleads/v6/common/offline_user_data.proto deleted file mode 100644 index 115b05479..000000000 --- a/google/ads/googleads/v6/common/offline_user_data.proto +++ /dev/null @@ -1,214 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/user_identifier_source.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing offline user data. - -// Address identifier of offline data. -message OfflineUserAddressInfo { - // First name of the user, which is hashed as SHA-256 after normalized - // (Lowercase all characters; Remove any extra spaces before, after, and in - // between). - optional string hashed_first_name = 7; - - // Last name of the user, which is hashed as SHA-256 after normalized (lower - // case only and no punctuation). - optional string hashed_last_name = 8; - - // City of the address. Only accepted for Store Sales Direct data. - optional string city = 9; - - // State code of the address. Only accepted for Store Sales Direct data. - optional string state = 10; - - // 2-letter country code in ISO-3166-1 alpha-2 of the user's address. - optional string country_code = 11; - - // Postal code of the user's address. - optional string postal_code = 12; -} - -// Hashed user identifying information. -message UserIdentifier { - // Source of the user identifier when the upload is from Store Sales third - // party partners. - google.ads.googleads.v6.enums.UserIdentifierSourceEnum.UserIdentifierSource user_identifier_source = 6; - - // Exactly one must be specified. - oneof identifier { - // Hashed email address using SHA-256 hash function after normalization. - string hashed_email = 7; - - // Hashed phone number using SHA-256 hash function after normalization - // (E164 standard). - string hashed_phone_number = 8; - - // Mobile device ID (advertising ID/IDFA). - string mobile_id = 9; - - // Advertiser-assigned user ID for Customer Match upload, or - // third-party-assigned user ID for SSD. - string third_party_user_id = 10; - - // Address information. - OfflineUserAddressInfo address_info = 5; - } -} - -// Attribute of the store sales transaction. -message TransactionAttribute { - // Timestamp when transaction occurred. Required. - // The format is "YYYY-MM-DD HH:MM:SS[+/-HH:MM]", where [+/-HH:MM] is an - // optional timezone offset from UTC. If the offset is absent, the API will - // use the account's timezone as default. - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30+03:00" - optional string transaction_date_time = 8; - - // Transaction amount in micros. Required. - optional double transaction_amount_micros = 9; - - // Transaction currency code. ISO 4217 three-letter code is used. Required. - optional string currency_code = 10; - - // The resource name of conversion action to report conversions to. - // Required. - optional string conversion_action = 11; - - // Transaction order id. - // Accessible only to customers on the allow-list. - optional string order_id = 12; - - // Store attributes of the transaction. - // Accessible only to customers on the allow-list. - StoreAttribute store_attribute = 6; - - // Value of the custom variable for each transaction. - // Accessible only to customers on the allow-list. - optional string custom_value = 13; -} - -// Store attributes of the transaction. -message StoreAttribute { - // Store code from - // https://support.google.com/business/answer/3370250#storecode - optional string store_code = 2; -} - -// User data holding user identifiers and attributes. -message UserData { - // User identification info. Required. - repeated UserIdentifier user_identifiers = 1; - - // Additional transactions/attributes associated with the user. - // Required when updating store sales data. - TransactionAttribute transaction_attribute = 2; - - // Additional attributes associated with the user. Required when updating - // customer match attributes. These have an expiration of 540 days. - UserAttribute user_attribute = 3; -} - -// User attribute, can only be used with CUSTOMER_MATCH_WITH_ATTRIBUTES job -// type. -message UserAttribute { - // Advertiser defined lifetime value for the user. - optional int64 lifetime_value_micros = 1; - - // Advertiser defined lifetime value bucket for the user. The valid range for - // a lifetime value bucket is from 1 (low) to 10 (high), except for remove - // operation where 0 will also be accepted. - optional int32 lifetime_value_bucket = 2; -} - -// Metadata for customer match user list. -message CustomerMatchUserListMetadata { - // The resource name of remarketing list to update data. - // Required for job of CUSTOMER_MATCH_USER_LIST type. - optional string user_list = 2; -} - -// Metadata for Store Sales Direct. -message StoreSalesMetadata { - // This is the fraction of all transactions that are identifiable (i.e., - // associated with any form of customer information). - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - optional double loyalty_fraction = 5; - - // This is the ratio of sales being uploaded compared to the overall sales - // that can be associated with a customer. Required. - // The fraction needs to be between 0 and 1 (excluding 0). For example, if you - // upload half the sales that you are able to associate with a customer, this - // would be 0.5. - optional double transaction_upload_fraction = 6; - - // Name of the store sales custom variable key. A predefined key that - // can be applied to the transaction and then later used for custom - // segmentation in reporting. - // Accessible only to customers on the allow-list. - optional string custom_key = 7; - - // Metadata for a third party Store Sales upload. - StoreSalesThirdPartyMetadata third_party_metadata = 3; -} - -// Metadata for a third party Store Sales. -// This product is only for customers on the allow-list. Please contact your -// Google business development representative for details on the upload -// configuration. -message StoreSalesThirdPartyMetadata { - // Time the advertiser uploaded the data to the partner. Required. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - optional string advertiser_upload_date_time = 7; - - // The fraction of transactions that are valid. Invalid transactions may - // include invalid formats or values. - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - optional double valid_transaction_fraction = 8; - - // The fraction of valid transactions that are matched to a third party - // assigned user ID on the partner side. - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - optional double partner_match_fraction = 9; - - // The fraction of valid transactions that are uploaded by the partner to - // Google. - // Required. - // The fraction needs to be between 0 and 1 (excluding 0). - optional double partner_upload_fraction = 10; - - // Version of partner IDs to be used for uploads. Required. - optional string bridge_map_version_id = 11; - - // ID of the third party partner updating the transaction feed. - optional int64 partner_id = 12; -} diff --git a/google/ads/googleads/v6/common/policy.proto b/google/ads/googleads/v6/common/policy.proto deleted file mode 100644 index 3a5719e1d..000000000 --- a/google/ads/googleads/v6/common/policy.proto +++ /dev/null @@ -1,222 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/policy_topic_entry_type.proto"; -import "google/ads/googleads/v6/enums/policy_topic_evidence_destination_mismatch_url_type.proto"; -import "google/ads/googleads/v6/enums/policy_topic_evidence_destination_not_working_device.proto"; -import "google/ads/googleads/v6/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "PolicyProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing policy information. - -// Key of the violation. The key is used for referring to a violation -// when filing an exemption request. -message PolicyViolationKey { - // Unique ID of the violated policy. - optional string policy_name = 3; - - // The text that violates the policy if specified. - // Otherwise, refers to the policy in general - // (e.g., when requesting to be exempt from the whole policy). - // If not specified for criterion exemptions, the whole policy is implied. - // Must be specified for ad exemptions. - optional string violating_text = 4; -} - -// Parameter for controlling how policy exemption is done. Ignorable policy -// topics are only usable with expanded text ads and responsive search ads. All -// other ad types must use policy violation keys. -message PolicyValidationParameter { - // The list of policy topics that should not cause a PolicyFindingError to - // be reported. This field is currently only compatible with Enhanced Text Ad. - // It corresponds to the PolicyTopicEntry.topic field. - // - // Resources violating these policies will be saved, but will not be eligible - // to serve. They may begin serving at a later time due to a change in - // policies, re-review of the resource, or a change in advertiser - // certificates. - repeated string ignorable_policy_topics = 3; - - // The list of policy violation keys that should not cause a - // PolicyViolationError to be reported. Not all policy violations are - // exemptable, please refer to the is_exemptible field in the returned - // PolicyViolationError. - // - // Resources violating these polices will be saved, but will not be eligible - // to serve. They may begin serving at a later time due to a change in - // policies, re-review of the resource, or a change in advertiser - // certificates. - repeated PolicyViolationKey exempt_policy_violation_keys = 2; -} - -// Policy finding attached to a resource (e.g. alcohol policy associated with -// a site that sells alcohol). -// -// Each PolicyTopicEntry has a topic that indicates the specific ads policy -// the entry is about and a type to indicate the effect that the entry will have -// on serving. It may optionally have one or more evidences that indicate the -// reason for the finding. It may also optionally have one or more constraints -// that provide details about how serving may be restricted. -message PolicyTopicEntry { - // Policy topic this finding refers to. For example, "ALCOHOL", - // "TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible - // policy topics is not fixed for a particular API version and may change - // at any time. - optional string topic = 5; - - // Describes the negative or positive effect this policy will have on serving. - google.ads.googleads.v6.enums.PolicyTopicEntryTypeEnum.PolicyTopicEntryType type = 2; - - // Additional information that explains policy finding - // (e.g. the brand name for a trademark finding). - repeated PolicyTopicEvidence evidences = 3; - - // Indicates how serving of this resource may be affected (e.g. not serving - // in a country). - repeated PolicyTopicConstraint constraints = 4; -} - -// Additional information that explains a policy finding. -message PolicyTopicEvidence { - // A list of fragments of text that violated a policy. - message TextList { - // The fragments of text from the resource that caused the policy finding. - repeated string texts = 2; - } - - // A list of websites that caused a policy finding. Used for - // ONE_WEBSITE_PER_AD_GROUP policy topic, for example. In case there are more - // than five websites, only the top five (those that appear in resources the - // most) will be listed here. - message WebsiteList { - // Websites that caused the policy finding. - repeated string websites = 2; - } - - // A list of strings found in a destination page that caused a policy - // finding. - message DestinationTextList { - // List of text found in the resource's destination page. - repeated string destination_texts = 2; - } - - // Evidence of mismatches between the URLs of a resource. - message DestinationMismatch { - // The set of URLs that did not match each other. - repeated google.ads.googleads.v6.enums.PolicyTopicEvidenceDestinationMismatchUrlTypeEnum.PolicyTopicEvidenceDestinationMismatchUrlType url_types = 1; - } - - // Evidence details when the destination is returning an HTTP error - // code or isn't functional in all locations for commonly used devices. - message DestinationNotWorking { - // The full URL that didn't work. - optional string expanded_url = 7; - - // The type of device that failed to load the URL. - google.ads.googleads.v6.enums.PolicyTopicEvidenceDestinationNotWorkingDeviceEnum.PolicyTopicEvidenceDestinationNotWorkingDevice device = 4; - - // The time the URL was last checked. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - optional string last_checked_date_time = 8; - - // Indicates the reason of the DESTINATION_NOT_WORKING policy finding. - oneof reason { - // The type of DNS error. - google.ads.googleads.v6.enums.PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum.PolicyTopicEvidenceDestinationNotWorkingDnsErrorType dns_error_type = 1; - - // The HTTP error code. - int64 http_error_code = 6; - } - } - - // Specific evidence information depending on the evidence type. - oneof value { - // List of websites linked with this resource. - WebsiteList website_list = 3; - - // List of evidence found in the text of a resource. - TextList text_list = 4; - - // The language the resource was detected to be written in. - // This is an IETF language tag such as "en-US". - string language_code = 9; - - // The text in the destination of the resource that is causing a policy - // finding. - DestinationTextList destination_text_list = 6; - - // Mismatch between the destinations of a resource's URLs. - DestinationMismatch destination_mismatch = 7; - - // Details when the destination is returning an HTTP error code or isn't - // functional in all locations for commonly used devices. - DestinationNotWorking destination_not_working = 8; - } -} - -// Describes the effect on serving that a policy topic entry will have. -message PolicyTopicConstraint { - // A list of countries where a resource's serving is constrained. - message CountryConstraintList { - // Total number of countries targeted by the resource. - optional int32 total_targeted_countries = 3; - - // Countries in which serving is restricted. - repeated CountryConstraint countries = 2; - } - - // Indicates that a policy topic was constrained due to disapproval of the - // website for reseller purposes. - message ResellerConstraint { - - } - - // Indicates that a resource's ability to serve in a particular country is - // constrained. - message CountryConstraint { - // Geo target constant resource name of the country in which serving is - // constrained. - optional string country_criterion = 2; - } - - // Specific information about the constraint. - oneof value { - // Countries where the resource cannot serve. - CountryConstraintList country_constraint_list = 1; - - // Reseller constraint. - ResellerConstraint reseller_constraint = 2; - - // Countries where a certificate is required for serving. - CountryConstraintList certificate_missing_in_country_list = 3; - - // Countries where the resource's domain is not covered by the - // certificates associated with it. - CountryConstraintList certificate_domain_mismatch_in_country_list = 4; - } -} diff --git a/google/ads/googleads/v6/common/real_time_bidding_setting.proto b/google/ads/googleads/v6/common/real_time_bidding_setting.proto deleted file mode 100644 index 72aade423..000000000 --- a/google/ads/googleads/v6/common/real_time_bidding_setting.proto +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "RealTimeBiddingSettingProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing RealTimeBiddingSetting - -// Settings for Real-Time Bidding, a feature only available for campaigns -// targeting the Ad Exchange network. -message RealTimeBiddingSetting { - // Whether the campaign is opted in to real-time bidding. - optional bool opt_in = 2; -} diff --git a/google/ads/googleads/v6/common/segments.proto b/google/ads/googleads/v6/common/segments.proto deleted file mode 100644 index 3111b77bb..000000000 --- a/google/ads/googleads/v6/common/segments.proto +++ /dev/null @@ -1,329 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/common/criteria.proto"; -import "google/ads/googleads/v6/enums/ad_destination_type.proto"; -import "google/ads/googleads/v6/enums/ad_network_type.proto"; -import "google/ads/googleads/v6/enums/budget_campaign_association_status.proto"; -import "google/ads/googleads/v6/enums/click_type.proto"; -import "google/ads/googleads/v6/enums/conversion_action_category.proto"; -import "google/ads/googleads/v6/enums/conversion_attribution_event_type.proto"; -import "google/ads/googleads/v6/enums/conversion_lag_bucket.proto"; -import "google/ads/googleads/v6/enums/conversion_or_adjustment_lag_bucket.proto"; -import "google/ads/googleads/v6/enums/day_of_week.proto"; -import "google/ads/googleads/v6/enums/device.proto"; -import "google/ads/googleads/v6/enums/external_conversion_source.proto"; -import "google/ads/googleads/v6/enums/hotel_date_selection_type.proto"; -import "google/ads/googleads/v6/enums/hotel_price_bucket.proto"; -import "google/ads/googleads/v6/enums/hotel_rate_type.proto"; -import "google/ads/googleads/v6/enums/month_of_year.proto"; -import "google/ads/googleads/v6/enums/placeholder_type.proto"; -import "google/ads/googleads/v6/enums/product_channel.proto"; -import "google/ads/googleads/v6/enums/product_channel_exclusivity.proto"; -import "google/ads/googleads/v6/enums/product_condition.proto"; -import "google/ads/googleads/v6/enums/search_engine_results_page_type.proto"; -import "google/ads/googleads/v6/enums/search_term_match_type.proto"; -import "google/ads/googleads/v6/enums/slot.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "SegmentsProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing segment only fields. - -// Segment only fields. -message Segments { - // Ad Destination type. - google.ads.googleads.v6.enums.AdDestinationTypeEnum.AdDestinationType ad_destination_type = 136; - - // Ad network type. - google.ads.googleads.v6.enums.AdNetworkTypeEnum.AdNetworkType ad_network_type = 3; - - // Budget campaign association status. - BudgetCampaignAssociationStatus budget_campaign_association_status = 134; - - // Click type. - google.ads.googleads.v6.enums.ClickTypeEnum.ClickType click_type = 26; - - // Resource name of the conversion action. - optional string conversion_action = 113; - - // Conversion action category. - google.ads.googleads.v6.enums.ConversionActionCategoryEnum.ConversionActionCategory conversion_action_category = 53; - - // Conversion action name. - optional string conversion_action_name = 114; - - // This segments your conversion columns by the original conversion and - // conversion value vs. the delta if conversions were adjusted. False row has - // the data as originally stated; While true row has the delta between data - // now and the data as originally stated. Summing the two together results - // post-adjustment data. - optional bool conversion_adjustment = 115; - - // Conversion attribution event type. - google.ads.googleads.v6.enums.ConversionAttributionEventTypeEnum.ConversionAttributionEventType conversion_attribution_event_type = 2; - - // An enum value representing the number of days between the impression and - // the conversion. - google.ads.googleads.v6.enums.ConversionLagBucketEnum.ConversionLagBucket conversion_lag_bucket = 50; - - // An enum value representing the number of days between the impression and - // the conversion or between the impression and adjustments to the conversion. - google.ads.googleads.v6.enums.ConversionOrAdjustmentLagBucketEnum.ConversionOrAdjustmentLagBucket conversion_or_adjustment_lag_bucket = 51; - - // Date to which metrics apply. - // yyyy-MM-dd format, e.g., 2018-04-17. - optional string date = 79; - - // Day of the week, e.g., MONDAY. - google.ads.googleads.v6.enums.DayOfWeekEnum.DayOfWeek day_of_week = 5; - - // Device to which metrics apply. - google.ads.googleads.v6.enums.DeviceEnum.Device device = 1; - - // External conversion source. - google.ads.googleads.v6.enums.ExternalConversionSourceEnum.ExternalConversionSource external_conversion_source = 55; - - // Resource name of the geo target constant that represents an airport. - optional string geo_target_airport = 116; - - // Resource name of the geo target constant that represents a canton. - optional string geo_target_canton = 117; - - // Resource name of the geo target constant that represents a city. - optional string geo_target_city = 118; - - // Resource name of the geo target constant that represents a country. - optional string geo_target_country = 119; - - // Resource name of the geo target constant that represents a county. - optional string geo_target_county = 120; - - // Resource name of the geo target constant that represents a district. - optional string geo_target_district = 121; - - // Resource name of the geo target constant that represents a metro. - optional string geo_target_metro = 122; - - // Resource name of the geo target constant that represents the most - // specific location. - optional string geo_target_most_specific_location = 123; - - // Resource name of the geo target constant that represents a postal code. - optional string geo_target_postal_code = 124; - - // Resource name of the geo target constant that represents a province. - optional string geo_target_province = 125; - - // Resource name of the geo target constant that represents a region. - optional string geo_target_region = 126; - - // Resource name of the geo target constant that represents a state. - optional string geo_target_state = 127; - - // Hotel booking window in days. - optional int64 hotel_booking_window_days = 135; - - // Hotel center ID. - optional int64 hotel_center_id = 80; - - // Hotel check-in date. Formatted as yyyy-MM-dd. - optional string hotel_check_in_date = 81; - - // Hotel check-in day of week. - google.ads.googleads.v6.enums.DayOfWeekEnum.DayOfWeek hotel_check_in_day_of_week = 9; - - // Hotel city. - optional string hotel_city = 82; - - // Hotel class. - optional int32 hotel_class = 83; - - // Hotel country. - optional string hotel_country = 84; - - // Hotel date selection type. - google.ads.googleads.v6.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType hotel_date_selection_type = 13; - - // Hotel length of stay. - optional int32 hotel_length_of_stay = 85; - - // Hotel rate rule ID. - optional string hotel_rate_rule_id = 86; - - // Hotel rate type. - google.ads.googleads.v6.enums.HotelRateTypeEnum.HotelRateType hotel_rate_type = 74; - - // Hotel price bucket. - google.ads.googleads.v6.enums.HotelPriceBucketEnum.HotelPriceBucket hotel_price_bucket = 78; - - // Hotel state. - optional string hotel_state = 87; - - // Hour of day as a number between 0 and 23, inclusive. - optional int32 hour = 88; - - // Only used with feed item metrics. - // Indicates whether the interaction metrics occurred on the feed item itself - // or a different extension or ad unit. - optional bool interaction_on_this_extension = 89; - - // Keyword criterion. - Keyword keyword = 61; - - // Month as represented by the date of the first day of a month. Formatted as - // yyyy-MM-dd. - optional string month = 90; - - // Month of the year, e.g., January. - google.ads.googleads.v6.enums.MonthOfYearEnum.MonthOfYear month_of_year = 18; - - // Partner hotel ID. - optional string partner_hotel_id = 91; - - // Placeholder type. This is only used with feed item metrics. - google.ads.googleads.v6.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 20; - - // Aggregator ID of the product. - optional int64 product_aggregator_id = 132; - - // Bidding category (level 1) of the product. - optional string product_bidding_category_level1 = 92; - - // Bidding category (level 2) of the product. - optional string product_bidding_category_level2 = 93; - - // Bidding category (level 3) of the product. - optional string product_bidding_category_level3 = 94; - - // Bidding category (level 4) of the product. - optional string product_bidding_category_level4 = 95; - - // Bidding category (level 5) of the product. - optional string product_bidding_category_level5 = 96; - - // Brand of the product. - optional string product_brand = 97; - - // Channel of the product. - google.ads.googleads.v6.enums.ProductChannelEnum.ProductChannel product_channel = 30; - - // Channel exclusivity of the product. - google.ads.googleads.v6.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity product_channel_exclusivity = 31; - - // Condition of the product. - google.ads.googleads.v6.enums.ProductConditionEnum.ProductCondition product_condition = 32; - - // Resource name of the geo target constant for the country of sale of the - // product. - optional string product_country = 98; - - // Custom attribute 0 of the product. - optional string product_custom_attribute0 = 99; - - // Custom attribute 1 of the product. - optional string product_custom_attribute1 = 100; - - // Custom attribute 2 of the product. - optional string product_custom_attribute2 = 101; - - // Custom attribute 3 of the product. - optional string product_custom_attribute3 = 102; - - // Custom attribute 4 of the product. - optional string product_custom_attribute4 = 103; - - // Item ID of the product. - optional string product_item_id = 104; - - // Resource name of the language constant for the language of the product. - optional string product_language = 105; - - // Merchant ID of the product. - optional int64 product_merchant_id = 133; - - // Store ID of the product. - optional string product_store_id = 106; - - // Title of the product. - optional string product_title = 107; - - // Type (level 1) of the product. - optional string product_type_l1 = 108; - - // Type (level 2) of the product. - optional string product_type_l2 = 109; - - // Type (level 3) of the product. - optional string product_type_l3 = 110; - - // Type (level 4) of the product. - optional string product_type_l4 = 111; - - // Type (level 5) of the product. - optional string product_type_l5 = 112; - - // Quarter as represented by the date of the first day of a quarter. - // Uses the calendar year for quarters, e.g., the second quarter of 2018 - // starts on 2018-04-01. Formatted as yyyy-MM-dd. - optional string quarter = 128; - - // Type of the search engine results page. - google.ads.googleads.v6.enums.SearchEngineResultsPageTypeEnum.SearchEngineResultsPageType search_engine_results_page_type = 70; - - // Match type of the keyword that triggered the ad, including variants. - google.ads.googleads.v6.enums.SearchTermMatchTypeEnum.SearchTermMatchType search_term_match_type = 22; - - // Position of the ad. - google.ads.googleads.v6.enums.SlotEnum.Slot slot = 23; - - // Resource name of the ad group criterion that represents webpage criterion. - optional string webpage = 129; - - // Week as defined as Monday through Sunday, and represented by the date of - // Monday. Formatted as yyyy-MM-dd. - optional string week = 130; - - // Year, formatted as yyyy. - optional int32 year = 131; -} - -// A Keyword criterion segment. -message Keyword { - // The AdGroupCriterion resource name. - optional string ad_group_criterion = 3; - - // Keyword info. - KeywordInfo info = 2; -} - -// A BudgetCampaignAssociationStatus segment. -message BudgetCampaignAssociationStatus { - // The campaign resource name. - optional string campaign = 1; - - // Budget campaign association status. - google.ads.googleads.v6.enums.BudgetCampaignAssociationStatusEnum.BudgetCampaignAssociationStatus status = 2; -} diff --git a/google/ads/googleads/v6/common/simulation.proto b/google/ads/googleads/v6/common/simulation.proto deleted file mode 100644 index e6cb22076..000000000 --- a/google/ads/googleads/v6/common/simulation.proto +++ /dev/null @@ -1,235 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "SimulationProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing simulation points. - -// A container for simulation points for simulations of type BID_MODIFIER. -message BidModifierSimulationPointList { - // Projected metrics for a series of bid modifier amounts. - repeated BidModifierSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type CPC_BID. -message CpcBidSimulationPointList { - // Projected metrics for a series of CPC bid amounts. - repeated CpcBidSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type CPV_BID. -message CpvBidSimulationPointList { - // Projected metrics for a series of CPV bid amounts. - repeated CpvBidSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type TARGET_CPA. -message TargetCpaSimulationPointList { - // Projected metrics for a series of target CPA amounts. - repeated TargetCpaSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type TARGET_ROAS. -message TargetRoasSimulationPointList { - // Projected metrics for a series of target ROAS amounts. - repeated TargetRoasSimulationPoint points = 1; -} - -// A container for simulation points for simulations of type PERCENT_CPC_BID. -message PercentCpcBidSimulationPointList { - // Projected metrics for a series of percent CPC bid amounts. - repeated PercentCpcBidSimulationPoint points = 1; -} - -// Projected metrics for a specific bid modifier amount. -message BidModifierSimulationPoint { - // The simulated bid modifier upon which projected metrics are based. - optional double bid_modifier = 15; - - // Projected number of biddable conversions. - // Only search advertising channel type supports this field. - optional double biddable_conversions = 16; - - // Projected total value of biddable conversions. - // Only search advertising channel type supports this field. - optional double biddable_conversions_value = 17; - - // Projected number of clicks. - optional int64 clicks = 18; - - // Projected cost in micros. - optional int64 cost_micros = 19; - - // Projected number of impressions. - optional int64 impressions = 20; - - // Projected number of top slot impressions. - // Only search advertising channel type supports this field. - optional int64 top_slot_impressions = 21; - - // Projected number of biddable conversions for the parent resource. - // Only search advertising channel type supports this field. - optional double parent_biddable_conversions = 22; - - // Projected total value of biddable conversions for the parent resource. - // Only search advertising channel type supports this field. - optional double parent_biddable_conversions_value = 23; - - // Projected number of clicks for the parent resource. - optional int64 parent_clicks = 24; - - // Projected cost in micros for the parent resource. - optional int64 parent_cost_micros = 25; - - // Projected number of impressions for the parent resource. - optional int64 parent_impressions = 26; - - // Projected number of top slot impressions for the parent resource. - // Only search advertising channel type supports this field. - optional int64 parent_top_slot_impressions = 27; - - // Projected minimum daily budget that must be available to the parent - // resource to realize this simulation. - optional int64 parent_required_budget_micros = 28; -} - -// Projected metrics for a specific CPC bid amount. -message CpcBidSimulationPoint { - // The simulated CPC bid upon which projected metrics are based. - optional int64 cpc_bid_micros = 8; - - // Projected number of biddable conversions. - optional double biddable_conversions = 9; - - // Projected total value of biddable conversions. - optional double biddable_conversions_value = 10; - - // Projected number of clicks. - optional int64 clicks = 11; - - // Projected cost in micros. - optional int64 cost_micros = 12; - - // Projected number of impressions. - optional int64 impressions = 13; - - // Projected number of top slot impressions. - // Only search advertising channel type supports this field. - optional int64 top_slot_impressions = 14; -} - -// Projected metrics for a specific CPV bid amount. -message CpvBidSimulationPoint { - // The simulated CPV bid upon which projected metrics are based. - optional int64 cpv_bid_micros = 5; - - // Projected cost in micros. - optional int64 cost_micros = 6; - - // Projected number of impressions. - optional int64 impressions = 7; - - // Projected number of views. - optional int64 views = 8; -} - -// Projected metrics for a specific target CPA amount. -message TargetCpaSimulationPoint { - // The simulated target CPA upon which projected metrics are based. - optional int64 target_cpa_micros = 8; - - // Projected number of biddable conversions. - optional double biddable_conversions = 9; - - // Projected total value of biddable conversions. - optional double biddable_conversions_value = 10; - - // Projected number of clicks. - optional int64 clicks = 11; - - // Projected cost in micros. - optional int64 cost_micros = 12; - - // Projected number of impressions. - optional int64 impressions = 13; - - // Projected number of top slot impressions. - // Only search advertising channel type supports this field. - optional int64 top_slot_impressions = 14; -} - -// Projected metrics for a specific target ROAS amount. -message TargetRoasSimulationPoint { - // The simulated target ROAS upon which projected metrics are based. - optional double target_roas = 8; - - // Projected number of biddable conversions. - optional double biddable_conversions = 9; - - // Projected total value of biddable conversions. - optional double biddable_conversions_value = 10; - - // Projected number of clicks. - optional int64 clicks = 11; - - // Projected cost in micros. - optional int64 cost_micros = 12; - - // Projected number of impressions. - optional int64 impressions = 13; - - // Projected number of top slot impressions. - // Only Search advertising channel type supports this field. - optional int64 top_slot_impressions = 14; -} - -// Projected metrics for a specific percent CPC amount. Only Hotel advertising -// channel type supports this field. -message PercentCpcBidSimulationPoint { - // The simulated percent CPC upon which projected metrics are based. Percent - // CPC expressed as fraction of the advertised price for some good or service. - // The value stored here is 1,000,000 * [fraction]. - optional int64 percent_cpc_bid_micros = 1; - - // Projected number of biddable conversions. - optional double biddable_conversions = 2; - - // Projected total value of biddable conversions in local currency. - optional double biddable_conversions_value = 3; - - // Projected number of clicks. - optional int64 clicks = 4; - - // Projected cost in micros. - optional int64 cost_micros = 5; - - // Projected number of impressions. - optional int64 impressions = 6; - - // Projected number of top slot impressions. - optional int64 top_slot_impressions = 7; -} diff --git a/google/ads/googleads/v6/common/tag_snippet.proto b/google/ads/googleads/v6/common/tag_snippet.proto deleted file mode 100644 index 2050d8bee..000000000 --- a/google/ads/googleads/v6/common/tag_snippet.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/tracking_code_page_format.proto"; -import "google/ads/googleads/v6/enums/tracking_code_type.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "TagSnippetProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing TagSnippet - -// The site tag and event snippet pair for a TrackingCodeType. -message TagSnippet { - // The type of the generated tag snippets for tracking conversions. - google.ads.googleads.v6.enums.TrackingCodeTypeEnum.TrackingCodeType type = 1; - - // The format of the web page where the tracking tag and snippet will be - // installed, e.g. HTML. - google.ads.googleads.v6.enums.TrackingCodePageFormatEnum.TrackingCodePageFormat page_format = 2; - - // The site tag that adds visitors to your basic remarketing lists and sets - // new cookies on your domain. - optional string global_site_tag = 5; - - // The event snippet that works with the site tag to track actions that - // should be counted as conversions. - optional string event_snippet = 6; -} diff --git a/google/ads/googleads/v6/common/targeting_setting.proto b/google/ads/googleads/v6/common/targeting_setting.proto deleted file mode 100644 index f3bf96cf9..000000000 --- a/google/ads/googleads/v6/common/targeting_setting.proto +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/targeting_dimension.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "TargetingSettingProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing TargetingSetting - -// Settings for the targeting-related features, at the campaign and ad group -// levels. For more details about the targeting setting, visit -// https://support.google.com/google-ads/answer/7365594 -message TargetingSetting { - // The per-targeting-dimension setting to restrict the reach of your campaign - // or ad group. - repeated TargetRestriction target_restrictions = 1; - - // The list of operations changing the target restrictions. - // - // Adding a target restriction with a targeting dimension that already exists - // causes the existing target restriction to be replaced with the new value. - repeated TargetRestrictionOperation target_restriction_operations = 2; -} - -// The list of per-targeting-dimension targeting settings. -message TargetRestriction { - // The targeting dimension that these settings apply to. - google.ads.googleads.v6.enums.TargetingDimensionEnum.TargetingDimension targeting_dimension = 1; - - // Indicates whether to restrict your ads to show only for the criteria you - // have selected for this targeting_dimension, or to target all values for - // this targeting_dimension and show ads based on your targeting in other - // TargetingDimensions. A value of `true` means that these criteria will only - // apply bid modifiers, and not affect targeting. A value of `false` means - // that these criteria will restrict targeting as well as applying bid - // modifiers. - optional bool bid_only = 3; -} - -// Operation to be performed on a target restriction list in a mutate. -message TargetRestrictionOperation { - // The operator. - enum Operator { - // Unspecified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Add the restriction to the existing restrictions. - ADD = 2; - - // Remove the restriction from the existing restrictions. - REMOVE = 3; - } - - // Type of list operation to perform. - Operator operator = 1; - - // The target restriction being added to or removed from the list. - TargetRestriction value = 2; -} diff --git a/google/ads/googleads/v6/common/text_label.proto b/google/ads/googleads/v6/common/text_label.proto deleted file mode 100644 index 91f52abed..000000000 --- a/google/ads/googleads/v6/common/text_label.proto +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "TextLabelProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// A type of label displaying text on a colored background. -message TextLabel { - // Background color of the label in RGB format. This string must match the - // regular expression '^\#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$'. - // Note: The background color may not be visible for manager accounts. - optional string background_color = 3; - - // A short description of the label. The length must be no more than 200 - // characters. - optional string description = 4; -} diff --git a/google/ads/googleads/v6/common/url_collection.proto b/google/ads/googleads/v6/common/url_collection.proto deleted file mode 100644 index 71ec74e0c..000000000 --- a/google/ads/googleads/v6/common/url_collection.proto +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "UrlCollectionProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file UrlCollection type. - -// Collection of urls that is tagged with a unique identifier. -message UrlCollection { - // Unique identifier for this UrlCollection instance. - optional string url_collection_id = 5; - - // A list of possible final URLs. - repeated string final_urls = 6; - - // A list of possible final mobile URLs. - repeated string final_mobile_urls = 7; - - // URL template for constructing a tracking URL. - optional string tracking_url_template = 8; -} diff --git a/google/ads/googleads/v6/common/user_lists.proto b/google/ads/googleads/v6/common/user_lists.proto deleted file mode 100644 index 82fcfffc2..000000000 --- a/google/ads/googleads/v6/common/user_lists.proto +++ /dev/null @@ -1,291 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/ads/googleads/v6/enums/customer_match_upload_key_type.proto"; -import "google/ads/googleads/v6/enums/user_list_combined_rule_operator.proto"; -import "google/ads/googleads/v6/enums/user_list_crm_data_source_type.proto"; -import "google/ads/googleads/v6/enums/user_list_date_rule_item_operator.proto"; -import "google/ads/googleads/v6/enums/user_list_logical_rule_operator.proto"; -import "google/ads/googleads/v6/enums/user_list_number_rule_item_operator.proto"; -import "google/ads/googleads/v6/enums/user_list_prepopulation_status.proto"; -import "google/ads/googleads/v6/enums/user_list_rule_type.proto"; -import "google/ads/googleads/v6/enums/user_list_string_rule_item_operator.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "UserListsProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing user list types. - -// SimilarUserList is a list of users which are similar to users from another -// UserList. These lists are read-only and automatically created by Google. -message SimilarUserListInfo { - // Seed UserList from which this list is derived. - optional string seed_user_list = 2; -} - -// UserList of CRM users provided by the advertiser. -message CrmBasedUserListInfo { - // A string that uniquely identifies a mobile application from which the data - // was collected to the Google Ads API. - // For iOS, the ID string is the 9 digit string that appears at the end of an - // App Store URL (e.g., "476943146" for "Flood-It! 2" whose App Store link is - // http://itunes.apple.com/us/app/flood-it!-2/id476943146). - // For Android, the ID string is the application's package name - // (e.g., "com.labpixies.colordrips" for "Color Drips" given Google Play link - // https://play.google.com/store/apps/details?id=com.labpixies.colordrips). - // Required when creating CrmBasedUserList for uploading mobile advertising - // IDs. - optional string app_id = 4; - - // Matching key type of the list. - // Mixed data types are not allowed on the same list. - // This field is required for an ADD operation. - google.ads.googleads.v6.enums.CustomerMatchUploadKeyTypeEnum.CustomerMatchUploadKeyType upload_key_type = 2; - - // Data source of the list. Default value is FIRST_PARTY. - // Only customers on the allow-list can create third-party sourced CRM lists. - google.ads.googleads.v6.enums.UserListCrmDataSourceTypeEnum.UserListCrmDataSourceType data_source_type = 3; -} - -// A client defined rule based on custom parameters sent by web sites or -// uploaded by the advertiser. -message UserListRuleInfo { - // Rule type is used to determine how to group rule items. - // - // The default is OR of ANDs (disjunctive normal form). - // That is, rule items will be ANDed together within rule item groups and the - // groups themselves will be ORed together. - // - // Currently AND of ORs (conjunctive normal form) is only supported for - // ExpressionRuleUserList. - google.ads.googleads.v6.enums.UserListRuleTypeEnum.UserListRuleType rule_type = 1; - - // List of rule item groups that defines this rule. - // Rule item groups are grouped together based on rule_type. - repeated UserListRuleItemGroupInfo rule_item_groups = 2; -} - -// A group of rule items. -message UserListRuleItemGroupInfo { - // Rule items that will be grouped together based on rule_type. - repeated UserListRuleItemInfo rule_items = 1; -} - -// An atomic rule item. -message UserListRuleItemInfo { - // Rule variable name. It should match the corresponding key name fired - // by the pixel. - // A name must begin with US-ascii letters or underscore or UTF8 code that is - // greater than 127 and consist of US-ascii letters or digits or underscore or - // UTF8 code that is greater than 127. - // For websites, there are two built-in variable URL (name = 'url__') and - // referrer URL (name = 'ref_url__'). - // This field must be populated when creating a new rule item. - optional string name = 5; - - // An atomic rule item. - oneof rule_item { - // An atomic rule item composed of a number operation. - UserListNumberRuleItemInfo number_rule_item = 2; - - // An atomic rule item composed of a string operation. - UserListStringRuleItemInfo string_rule_item = 3; - - // An atomic rule item composed of a date operation. - UserListDateRuleItemInfo date_rule_item = 4; - } -} - -// A rule item composed of a date operation. -message UserListDateRuleItemInfo { - // Date comparison operator. - // This field is required and must be populated when creating new date - // rule item. - google.ads.googleads.v6.enums.UserListDateRuleItemOperatorEnum.UserListDateRuleItemOperator operator = 1; - - // String representing date value to be compared with the rule variable. - // Supported date format is YYYY-MM-DD. - // Times are reported in the customer's time zone. - optional string value = 4; - - // The relative date value of the right hand side denoted by number of days - // offset from now. The value field will override this field when both are - // present. - optional int64 offset_in_days = 5; -} - -// A rule item composed of a number operation. -message UserListNumberRuleItemInfo { - // Number comparison operator. - // This field is required and must be populated when creating a new number - // rule item. - google.ads.googleads.v6.enums.UserListNumberRuleItemOperatorEnum.UserListNumberRuleItemOperator operator = 1; - - // Number value to be compared with the variable. - // This field is required and must be populated when creating a new number - // rule item. - optional double value = 3; -} - -// A rule item composed of a string operation. -message UserListStringRuleItemInfo { - // String comparison operator. - // This field is required and must be populated when creating a new string - // rule item. - google.ads.googleads.v6.enums.UserListStringRuleItemOperatorEnum.UserListStringRuleItemOperator operator = 1; - - // The right hand side of the string rule item. For URLs or referrer URLs, - // the value can not contain illegal URL chars such as newlines, quotes, - // tabs, or parentheses. This field is required and must be populated when - // creating a new string rule item. - optional string value = 3; -} - -// User lists defined by combining two rules, left operand and right operand. -// There are two operators: AND where left operand and right operand have to be -// true; AND_NOT where left operand is true but right operand is false. -message CombinedRuleUserListInfo { - // Left operand of the combined rule. - // This field is required and must be populated when creating new combined - // rule based user list. - UserListRuleInfo left_operand = 1; - - // Right operand of the combined rule. - // This field is required and must be populated when creating new combined - // rule based user list. - UserListRuleInfo right_operand = 2; - - // Operator to connect the two operands. - // - // Required for creating a combined rule user list. - google.ads.googleads.v6.enums.UserListCombinedRuleOperatorEnum.UserListCombinedRuleOperator rule_operator = 3; -} - -// Visitors of a page during specific dates. -message DateSpecificRuleUserListInfo { - // Boolean rule that defines visitor of a page. - // - // Required for creating a date specific rule user list. - UserListRuleInfo rule = 1; - - // Start date of users visit. If set to 2000-01-01, then the list includes all - // users before end_date. The date's format should be YYYY-MM-DD. - // - // Required for creating a data specific rule user list. - optional string start_date = 4; - - // Last date of users visit. If set to 2037-12-30, then the list includes all - // users after start_date. The date's format should be YYYY-MM-DD. - // - // Required for creating a data specific rule user list. - optional string end_date = 5; -} - -// Visitors of a page. The page visit is defined by one boolean rule expression. -message ExpressionRuleUserListInfo { - // Boolean rule that defines this user list. The rule consists of a list of - // rule item groups and each rule item group consists of a list of rule items. - // All the rule item groups are ORed or ANDed together for evaluation based on - // rule.rule_type. - // - // Required for creating an expression rule user list. - UserListRuleInfo rule = 1; -} - -// Representation of a userlist that is generated by a rule. -message RuleBasedUserListInfo { - // The status of pre-population. The field is default to NONE if not set which - // means the previous users will not be considered. If set to REQUESTED, past - // site visitors or app users who match the list definition will be included - // in the list (works on the Display Network only). This will only - // add past users from within the last 30 days, depending on the - // list's membership duration and the date when the remarketing tag is added. - // The status will be updated to FINISHED once request is processed, or FAILED - // if the request fails. - google.ads.googleads.v6.enums.UserListPrepopulationStatusEnum.UserListPrepopulationStatus prepopulation_status = 1; - - // Subtypes of rule based user lists. - oneof rule_based_user_list { - // User lists defined by combining two rules. - // There are two operators: AND, where the left and right operands have to - // be true; AND_NOT where left operand is true but right operand is false. - CombinedRuleUserListInfo combined_rule_user_list = 2; - - // Visitors of a page during specific dates. The visiting periods are - // defined as follows: - // Between start_date (inclusive) and end_date (inclusive); - // Before end_date (exclusive) with start_date = 2000-01-01; - // After start_date (exclusive) with end_date = 2037-12-30. - DateSpecificRuleUserListInfo date_specific_rule_user_list = 3; - - // Visitors of a page. The page visit is defined by one boolean rule - // expression. - ExpressionRuleUserListInfo expression_rule_user_list = 4; - } -} - -// Represents a user list that is a custom combination of user lists. -message LogicalUserListInfo { - // Logical list rules that define this user list. The rules are defined as a - // logical operator (ALL/ANY/NONE) and a list of user lists. All the rules are - // ANDed when they are evaluated. - // - // Required for creating a logical user list. - repeated UserListLogicalRuleInfo rules = 1; -} - -// A user list logical rule. A rule has a logical operator (and/or/not) and a -// list of user lists as operands. -message UserListLogicalRuleInfo { - // The logical operator of the rule. - google.ads.googleads.v6.enums.UserListLogicalRuleOperatorEnum.UserListLogicalRuleOperator operator = 1; - - // The list of operands of the rule. - repeated LogicalUserListOperandInfo rule_operands = 2; -} - -// Operand of logical user list that consists of a user list. -message LogicalUserListOperandInfo { - // Resource name of a user list as an operand. - optional string user_list = 2; -} - -// User list targeting as a collection of conversions or remarketing actions. -message BasicUserListInfo { - // Actions associated with this user list. - repeated UserListActionInfo actions = 1; -} - -// Represents an action type used for building remarketing user lists. -message UserListActionInfo { - // Subtypes of user list action. - oneof user_list_action { - // A conversion action that's not generated from remarketing. - string conversion_action = 3; - - // A remarketing action. - string remarketing_action = 4; - } -} diff --git a/google/ads/googleads/v6/common/value.proto b/google/ads/googleads/v6/common/value.proto deleted file mode 100644 index b6bb0f46f..000000000 --- a/google/ads/googleads/v6/common/value.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.common; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Common"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/common;common"; -option java_multiple_files = true; -option java_outer_classname = "ValueProto"; -option java_package = "com.google.ads.googleads.v6.common"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Common"; -option ruby_package = "Google::Ads::GoogleAds::V6::Common"; - -// Proto file describing value types - -// A generic data container. -message Value { - // A value. - oneof value { - // A boolean. - bool boolean_value = 1; - - // An int64. - int64 int64_value = 2; - - // A float. - float float_value = 3; - - // A double. - double double_value = 4; - - // A string. - string string_value = 5; - } -} diff --git a/google/ads/googleads/v6/enums/BUILD.bazel b/google/ads/googleads/v6/enums/BUILD.bazel deleted file mode 100644 index 422fc227c..000000000 --- a/google/ads/googleads/v6/enums/BUILD.bazel +++ /dev/null @@ -1,89 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports subpackages. -proto_library( - name = "enums_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/api:annotations_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_proto_library", -) - -java_proto_library( - name = "enums_java_proto", - deps = [":enums_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_proto_library", -) - -csharp_proto_library( - name = "enums_csharp_proto", - deps = [":enums_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_proto_library", -) - -ruby_proto_library( - name = "enums_ruby_proto", - deps = [":enums_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_proto_library", -) - -py_proto_library( - name = "enums_py_proto", - deps = [":enums_proto"], -) diff --git a/google/ads/googleads/v6/enums/access_invitation_status.proto b/google/ads/googleads/v6/enums/access_invitation_status.proto deleted file mode 100644 index c0e471014..000000000 --- a/google/ads/googleads/v6/enums/access_invitation_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccessInvitationStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing AccessInvitationStatus enum. - -// Container for enum for identifying the status of access invitation -message AccessInvitationStatusEnum { - // Possible access invitation status of a user - enum AccessInvitationStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The initial state of an invitation, before being acted upon by anyone. - PENDING = 2; - - // Invitation process was terminated by the email recipient. No new user was - // created. - DECLINED = 3; - - // Invitation URLs expired without being acted upon. No new user can be - // created. Invitations expire 20 days after creation. - EXPIRED = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/access_reason.proto b/google/ads/googleads/v6/enums/access_reason.proto deleted file mode 100644 index 56b71e892..000000000 --- a/google/ads/googleads/v6/enums/access_reason.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccessReasonProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Indicates the way the resource such as user list is related to a user. -message AccessReasonEnum { - // Enum describing possible access reasons. - enum AccessReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The resource is owned by the user. - OWNED = 2; - - // The resource is shared to the user. - SHARED = 3; - - // The resource is licensed to the user. - LICENSED = 4; - - // The user subscribed to the resource. - SUBSCRIBED = 5; - - // The resource is accessible to the user. - AFFILIATED = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/access_role.proto b/google/ads/googleads/v6/enums/access_role.proto deleted file mode 100644 index f89734f68..000000000 --- a/google/ads/googleads/v6/enums/access_role.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccessRoleProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum describing possible access role for user. -message AccessRoleEnum { - // Possible access role of a user. - enum AccessRole { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Owns its account and can control the addition of other users. - ADMIN = 2; - - // Can modify campaigns, but can't affect other users. - STANDARD = 3; - - // Can view campaigns and account changes, but cannot make edits. - READ_ONLY = 4; - - // Role for \"email only\" access. Represents an email recipient rather than - // a true User entity. - EMAIL_ONLY = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/account_budget_proposal_status.proto b/google/ads/googleads/v6/enums/account_budget_proposal_status.proto deleted file mode 100644 index 6d5f82360..000000000 --- a/google/ads/googleads/v6/enums/account_budget_proposal_status.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing AccountBudgetProposal statuses. - -// Message describing AccountBudgetProposal statuses. -message AccountBudgetProposalStatusEnum { - // The possible statuses of an AccountBudgetProposal. - enum AccountBudgetProposalStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The proposal is pending approval. - PENDING = 2; - - // The proposal has been approved but the corresponding billing setup - // has not. This can occur for proposals that set up the first budget - // when signing up for billing or when performing a change of bill-to - // operation. - APPROVED_HELD = 3; - - // The proposal has been approved. - APPROVED = 4; - - // The proposal has been cancelled by the user. - CANCELLED = 5; - - // The proposal has been rejected by the user, e.g. by rejecting an - // acceptance email. - REJECTED = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/account_budget_proposal_type.proto b/google/ads/googleads/v6/enums/account_budget_proposal_type.proto deleted file mode 100644 index 99d2b1908..000000000 --- a/google/ads/googleads/v6/enums/account_budget_proposal_type.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing AccountBudgetProposal types. - -// Message describing AccountBudgetProposal types. -message AccountBudgetProposalTypeEnum { - // The possible types of an AccountBudgetProposal. - enum AccountBudgetProposalType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Identifies a request to create a new budget. - CREATE = 2; - - // Identifies a request to edit an existing budget. - UPDATE = 3; - - // Identifies a request to end a budget that has already started. - END = 4; - - // Identifies a request to remove a budget that hasn't started yet. - REMOVE = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/account_budget_status.proto b/google/ads/googleads/v6/enums/account_budget_status.proto deleted file mode 100644 index 53c1a34cf..000000000 --- a/google/ads/googleads/v6/enums/account_budget_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing AccountBudget statuses. - -// Message describing AccountBudget statuses. -message AccountBudgetStatusEnum { - // The possible statuses of an AccountBudget. - enum AccountBudgetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The account budget is pending approval. - PENDING = 2; - - // The account budget has been approved. - APPROVED = 3; - - // The account budget has been cancelled by the user. - CANCELLED = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/account_link_status.proto b/google/ads/googleads/v6/enums/account_link_status.proto deleted file mode 100644 index 39a307ced..000000000 --- a/google/ads/googleads/v6/enums/account_link_status.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum describing possible statuses of an account link. -message AccountLinkStatusEnum { - // Describes the possible statuses for a link between a Google Ads customer - // and another account. - enum AccountLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The link is enabled. - ENABLED = 2; - - // The link is removed/disabled. - REMOVED = 3; - - // The link to the other account has been requested. A user on the other - // account may now approve the link by setting the status to ENABLED. - REQUESTED = 4; - - // This link has been requested by a user on the other account. It may be - // approved by a user on this account by setting the status to ENABLED. - PENDING_APPROVAL = 5; - - // The link is rejected by the approver. - REJECTED = 6; - - // The link is revoked by the user who requested the link. - REVOKED = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_customizer_placeholder_field.proto b/google/ads/googleads/v6/enums/ad_customizer_placeholder_field.proto deleted file mode 100644 index 285f9ce8b..000000000 --- a/google/ads/googleads/v6/enums/ad_customizer_placeholder_field.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdCustomizerPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Ad Customizer placeholder fields. - -// Values for Ad Customizer placeholder fields. -message AdCustomizerPlaceholderFieldEnum { - // Possible values for Ad Customizers placeholder fields. - enum AdCustomizerPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: INT64. Integer value to be inserted. - INTEGER = 2; - - // Data Type: STRING. Price value to be inserted. - PRICE = 3; - - // Data Type: DATE_TIME. Date value to be inserted. - DATE = 4; - - // Data Type: STRING. String value to be inserted. - STRING = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_destination_type.proto b/google/ads/googleads/v6/enums/ad_destination_type.proto deleted file mode 100644 index 8d66d12b5..000000000 --- a/google/ads/googleads/v6/enums/ad_destination_type.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdDestinationTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing ad destination types. - -// Container for enumeration of Google Ads destination types. -message AdDestinationTypeEnum { - // Enumerates Google Ads destination types - enum AdDestinationType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Ads that don't intend to drive users off from ads to other destinations - NOT_APPLICABLE = 2; - - // Website - WEBSITE = 3; - - // App Deep Link - APP_DEEP_LINK = 4; - - // iOS App Store or Play Store - APP_STORE = 5; - - // Call Dialer - PHONE_CALL = 6; - - // Map App - MAP_DIRECTIONS = 7; - - // Location Dedicated Page - LOCATION_LISTING = 8; - - // Text Message - MESSAGE = 9; - - // Lead Generation Form - LEAD_FORM = 10; - - // YouTube - YOUTUBE = 11; - - // Ad Destination for Conversions with keys unknown - UNMODELED_FOR_CONVERSIONS = 12; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_group_ad_rotation_mode.proto b/google/ads/googleads/v6/enums/ad_group_ad_rotation_mode.proto deleted file mode 100644 index e0f223c54..000000000 --- a/google/ads/googleads/v6/enums/ad_group_ad_rotation_mode.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdRotationModeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing ad group ad rotation mode. - -// Container for enum describing possible ad rotation modes of ads within an -// ad group. -message AdGroupAdRotationModeEnum { - // The possible ad rotation modes of an ad group. - enum AdGroupAdRotationMode { - // The ad rotation mode has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Optimize ad group ads based on clicks or conversions. - OPTIMIZE = 2; - - // Rotate evenly forever. - ROTATE_FOREVER = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_group_ad_status.proto b/google/ads/googleads/v6/enums/ad_group_ad_status.proto deleted file mode 100644 index e646002fb..000000000 --- a/google/ads/googleads/v6/enums/ad_group_ad_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing ad group status. - -// Container for enum describing possible statuses of an AdGroupAd. -message AdGroupAdStatusEnum { - // The possible statuses of an AdGroupAd. - enum AdGroupAdStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad group ad is enabled. - ENABLED = 2; - - // The ad group ad is paused. - PAUSED = 3; - - // The ad group ad is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_group_criterion_approval_status.proto b/google/ads/googleads/v6/enums/ad_group_criterion_approval_status.proto deleted file mode 100644 index ca9dc1fa3..000000000 --- a/google/ads/googleads/v6/enums/ad_group_criterion_approval_status.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionApprovalStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing approval status for the criterion. - -// Container for enum describing possible AdGroupCriterion approval statuses. -message AdGroupCriterionApprovalStatusEnum { - // Enumerates AdGroupCriterion approval statuses. - enum AdGroupCriterionApprovalStatus { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Approved. - APPROVED = 2; - - // Disapproved. - DISAPPROVED = 3; - - // Pending Review. - PENDING_REVIEW = 4; - - // Under review. - UNDER_REVIEW = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_group_criterion_status.proto b/google/ads/googleads/v6/enums/ad_group_criterion_status.proto deleted file mode 100644 index 9808d1f6a..000000000 --- a/google/ads/googleads/v6/enums/ad_group_criterion_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing AdGroupCriterion statuses. - -// Message describing AdGroupCriterion statuses. -message AdGroupCriterionStatusEnum { - // The possible statuses of an AdGroupCriterion. - enum AdGroupCriterionStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad group criterion is enabled. - ENABLED = 2; - - // The ad group criterion is paused. - PAUSED = 3; - - // The ad group criterion is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_group_status.proto b/google/ads/googleads/v6/enums/ad_group_status.proto deleted file mode 100644 index 109ce5aaa..000000000 --- a/google/ads/googleads/v6/enums/ad_group_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing ad group status. - -// Container for enum describing possible statuses of an ad group. -message AdGroupStatusEnum { - // The possible statuses of an ad group. - enum AdGroupStatus { - // The status has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad group is enabled. - ENABLED = 2; - - // The ad group is paused. - PAUSED = 3; - - // The ad group is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_group_type.proto b/google/ads/googleads/v6/enums/ad_group_type.proto deleted file mode 100644 index aed3b1269..000000000 --- a/google/ads/googleads/v6/enums/ad_group_type.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing ad group types. - -// Defines types of an ad group, specific to a particular campaign channel -// type. This type drives validations that restrict which entities can be -// added to the ad group. -message AdGroupTypeEnum { - // Enum listing the possible types of an ad group. - enum AdGroupType { - // The type has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The default ad group type for Search campaigns. - SEARCH_STANDARD = 2; - - // The default ad group type for Display campaigns. - DISPLAY_STANDARD = 3; - - // The ad group type for Shopping campaigns serving standard product ads. - SHOPPING_PRODUCT_ADS = 4; - - // The default ad group type for Hotel campaigns. - HOTEL_ADS = 6; - - // The type for ad groups in Smart Shopping campaigns. - SHOPPING_SMART_ADS = 7; - - // Short unskippable in-stream video ads. - VIDEO_BUMPER = 8; - - // TrueView (skippable) in-stream video ads. - VIDEO_TRUE_VIEW_IN_STREAM = 9; - - // TrueView in-display video ads. - VIDEO_TRUE_VIEW_IN_DISPLAY = 10; - - // Unskippable in-stream video ads. - VIDEO_NON_SKIPPABLE_IN_STREAM = 11; - - // Outstream video ads. - VIDEO_OUTSTREAM = 12; - - // Ad group type for Dynamic Search Ads ad groups. - SEARCH_DYNAMIC_ADS = 13; - - // The type for ad groups in Shopping Comparison Listing campaigns. - SHOPPING_COMPARISON_LISTING_ADS = 14; - - // The ad group type for Promoted Hotel ad groups. - PROMOTED_HOTEL_ADS = 15; - - // Video responsive ad groups. - VIDEO_RESPONSIVE = 16; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_network_type.proto b/google/ads/googleads/v6/enums/ad_network_type.proto deleted file mode 100644 index 0a6a7b84f..000000000 --- a/google/ads/googleads/v6/enums/ad_network_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdNetworkTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing ad network types. - -// Container for enumeration of Google Ads network types. -message AdNetworkTypeEnum { - // Enumerates Google Ads network types. - enum AdNetworkType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Google search. - SEARCH = 2; - - // Search partners. - SEARCH_PARTNERS = 3; - - // Display Network. - CONTENT = 4; - - // YouTube Search. - YOUTUBE_SEARCH = 5; - - // YouTube Videos - YOUTUBE_WATCH = 6; - - // Cross-network. - MIXED = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_serving_optimization_status.proto b/google/ads/googleads/v6/enums/ad_serving_optimization_status.proto deleted file mode 100644 index 1566dc018..000000000 --- a/google/ads/googleads/v6/enums/ad_serving_optimization_status.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdServingOptimizationStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing ad serving statuses. - -// Possible ad serving statuses of a campaign. -message AdServingOptimizationStatusEnum { - // Enum describing possible serving statuses. - enum AdServingOptimizationStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Ad serving is optimized based on CTR for the campaign. - OPTIMIZE = 2; - - // Ad serving is optimized based on CTR * Conversion for the campaign. If - // the campaign is not in the conversion optimizer bidding strategy, it will - // default to OPTIMIZED. - CONVERSION_OPTIMIZE = 3; - - // Ads are rotated evenly for 90 days, then optimized for clicks. - ROTATE = 4; - - // Show lower performing ads more evenly with higher performing ads, and do - // not optimize. - ROTATE_INDEFINITELY = 5; - - // Ad serving optimization status is not available. - UNAVAILABLE = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_strength.proto b/google/ads/googleads/v6/enums/ad_strength.proto deleted file mode 100644 index 9774856a6..000000000 --- a/google/ads/googleads/v6/enums/ad_strength.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdStrengthProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing ad strengths. - -// Container for enum describing possible ad strengths. -message AdStrengthEnum { - // Enum listing the possible ad strengths. - enum AdStrength { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The ad strength is currently pending. - PENDING = 2; - - // No ads could be generated. - NO_ADS = 3; - - // Poor strength. - POOR = 4; - - // Average strength. - AVERAGE = 5; - - // Good strength. - GOOD = 6; - - // Excellent strength. - EXCELLENT = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/ad_type.proto b/google/ads/googleads/v6/enums/ad_type.proto deleted file mode 100644 index 84b845575..000000000 --- a/google/ads/googleads/v6/enums/ad_type.proto +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing the ad type. - -// Container for enum describing possible types of an ad. -message AdTypeEnum { - // The possible types of an ad. - enum AdType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The ad is a text ad. - TEXT_AD = 2; - - // The ad is an expanded text ad. - EXPANDED_TEXT_AD = 3; - - // The ad is a call only ad. - CALL_ONLY_AD = 6; - - // The ad is an expanded dynamic search ad. - EXPANDED_DYNAMIC_SEARCH_AD = 7; - - // The ad is a hotel ad. - HOTEL_AD = 8; - - // The ad is a Smart Shopping ad. - SHOPPING_SMART_AD = 9; - - // The ad is a standard Shopping ad. - SHOPPING_PRODUCT_AD = 10; - - // The ad is a video ad. - VIDEO_AD = 12; - - // This ad is a Gmail ad. - GMAIL_AD = 13; - - // This ad is an Image ad. - IMAGE_AD = 14; - - // The ad is a responsive search ad. - RESPONSIVE_SEARCH_AD = 15; - - // The ad is a legacy responsive display ad. - LEGACY_RESPONSIVE_DISPLAY_AD = 16; - - // The ad is an app ad. - APP_AD = 17; - - // The ad is a legacy app install ad. - LEGACY_APP_INSTALL_AD = 18; - - // The ad is a responsive display ad. - RESPONSIVE_DISPLAY_AD = 19; - - // The ad is a local ad. - LOCAL_AD = 20; - - // The ad is a display upload ad with the HTML5_UPLOAD_AD product type. - HTML5_UPLOAD_AD = 21; - - // The ad is a display upload ad with one of the DYNAMIC_HTML5_* product - // types. - DYNAMIC_HTML5_AD = 22; - - // The ad is an app engagement ad. - APP_ENGAGEMENT_AD = 23; - - // The ad is a Shopping Comparison Listing ad. - SHOPPING_COMPARISON_LISTING_AD = 24; - - // Video bumper ad. - VIDEO_BUMPER_AD = 25; - - // Video non-skippable in-stream ad. - VIDEO_NON_SKIPPABLE_IN_STREAM_AD = 26; - - // Video outstream ad. - VIDEO_OUTSTREAM_AD = 27; - - // Video TrueView in-display ad. - VIDEO_TRUEVIEW_DISCOVERY_AD = 28; - - // Video TrueView in-stream ad. - VIDEO_TRUEVIEW_IN_STREAM_AD = 29; - - // Video responsive ad. - VIDEO_RESPONSIVE_AD = 30; - } - - -} diff --git a/google/ads/googleads/v6/enums/advertising_channel_sub_type.proto b/google/ads/googleads/v6/enums/advertising_channel_sub_type.proto deleted file mode 100644 index c4579f78f..000000000 --- a/google/ads/googleads/v6/enums/advertising_channel_sub_type.proto +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdvertisingChannelSubTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing advertising channel subtypes. - -// An immutable specialization of an Advertising Channel. -message AdvertisingChannelSubTypeEnum { - // Enum describing the different channel subtypes. - enum AdvertisingChannelSubType { - // Not specified. - UNSPECIFIED = 0; - - // Used as a return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile app campaigns for Search. - SEARCH_MOBILE_APP = 2; - - // Mobile app campaigns for Display. - DISPLAY_MOBILE_APP = 3; - - // AdWords express campaigns for search. - SEARCH_EXPRESS = 4; - - // AdWords Express campaigns for display. - DISPLAY_EXPRESS = 5; - - // Smart Shopping campaigns. - SHOPPING_SMART_ADS = 6; - - // Gmail Ad campaigns. - DISPLAY_GMAIL_AD = 7; - - // Smart display campaigns. - DISPLAY_SMART_CAMPAIGN = 8; - - // Video Outstream campaigns. - VIDEO_OUTSTREAM = 9; - - // Video TrueView for Action campaigns. - VIDEO_ACTION = 10; - - // Video campaigns with non-skippable video ads. - VIDEO_NON_SKIPPABLE = 11; - - // App Campaign that allows you to easily promote your Android or iOS app - // across Google's top properties including Search, Play, YouTube, and the - // Google Display Network. - APP_CAMPAIGN = 12; - - // App Campaign for engagement, focused on driving re-engagement with the - // app across several of Google’s top properties including Search, YouTube, - // and the Google Display Network. - APP_CAMPAIGN_FOR_ENGAGEMENT = 13; - - // Campaigns specialized for local advertising. - LOCAL_CAMPAIGN = 14; - - // Shopping Comparison Listing campaigns. - SHOPPING_COMPARISON_LISTING_ADS = 15; - - // Standard Smart campaigns. - SMART_CAMPAIGN = 16; - - // Video campaigns with sequence video ads. - VIDEO_SEQUENCE = 17; - } - - -} diff --git a/google/ads/googleads/v6/enums/advertising_channel_type.proto b/google/ads/googleads/v6/enums/advertising_channel_type.proto deleted file mode 100644 index 7491d0030..000000000 --- a/google/ads/googleads/v6/enums/advertising_channel_type.proto +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AdvertisingChannelTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing advertising channel types - -// The channel type a campaign may target to serve on. -message AdvertisingChannelTypeEnum { - // Enum describing the various advertising channel types. - enum AdvertisingChannelType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Search Network. Includes display bundled, and Search+ campaigns. - SEARCH = 2; - - // Google Display Network only. - DISPLAY = 3; - - // Shopping campaigns serve on the shopping property - // and on google.com search results. - SHOPPING = 4; - - // Hotel Ads campaigns. - HOTEL = 5; - - // Video campaigns. - VIDEO = 6; - - // App Campaigns, and App Campaigns for Engagement, that run - // across multiple channels. - MULTI_CHANNEL = 7; - - // Local ads campaigns. - LOCAL = 8; - - // Smart campaigns. - SMART = 9; - } - - -} diff --git a/google/ads/googleads/v6/enums/affiliate_location_feed_relationship_type.proto b/google/ads/googleads/v6/enums/affiliate_location_feed_relationship_type.proto deleted file mode 100644 index ce14e79ca..000000000 --- a/google/ads/googleads/v6/enums/affiliate_location_feed_relationship_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AffiliateLocationFeedRelationshipTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing relation type for affiliate location feeds. - -// Container for enum describing possible values for a relationship type for -// an affiliate location feed. -message AffiliateLocationFeedRelationshipTypeEnum { - // Possible values for a relationship type for an affiliate location feed. - enum AffiliateLocationFeedRelationshipType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // General retailer relationship. - GENERAL_RETAILER = 2; - } - - -} diff --git a/google/ads/googleads/v6/enums/affiliate_location_placeholder_field.proto b/google/ads/googleads/v6/enums/affiliate_location_placeholder_field.proto deleted file mode 100644 index b8737d89b..000000000 --- a/google/ads/googleads/v6/enums/affiliate_location_placeholder_field.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AffiliateLocationPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Affiliate Location placeholder fields. - -// Values for Affiliate Location placeholder fields. -message AffiliateLocationPlaceholderFieldEnum { - // Possible values for Affiliate Location placeholder fields. - enum AffiliateLocationPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The name of the business. - BUSINESS_NAME = 2; - - // Data Type: STRING. Line 1 of the business address. - ADDRESS_LINE_1 = 3; - - // Data Type: STRING. Line 2 of the business address. - ADDRESS_LINE_2 = 4; - - // Data Type: STRING. City of the business address. - CITY = 5; - - // Data Type: STRING. Province of the business address. - PROVINCE = 6; - - // Data Type: STRING. Postal code of the business address. - POSTAL_CODE = 7; - - // Data Type: STRING. Country code of the business address. - COUNTRY_CODE = 8; - - // Data Type: STRING. Phone number of the business. - PHONE_NUMBER = 9; - - // Data Type: STRING. Language code of the business. - LANGUAGE_CODE = 10; - - // Data Type: INT64. ID of the chain. - CHAIN_ID = 11; - - // Data Type: STRING. Name of the chain. - CHAIN_NAME = 12; - } - - -} diff --git a/google/ads/googleads/v6/enums/age_range_type.proto b/google/ads/googleads/v6/enums/age_range_type.proto deleted file mode 100644 index 19e373762..000000000 --- a/google/ads/googleads/v6/enums/age_range_type.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AgeRangeTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing age range types. - -// Container for enum describing the type of demographic age ranges. -message AgeRangeTypeEnum { - // The type of demographic age ranges (e.g. between 18 and 24 years old). - enum AgeRangeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Between 18 and 24 years old. - AGE_RANGE_18_24 = 503001; - - // Between 25 and 34 years old. - AGE_RANGE_25_34 = 503002; - - // Between 35 and 44 years old. - AGE_RANGE_35_44 = 503003; - - // Between 45 and 54 years old. - AGE_RANGE_45_54 = 503004; - - // Between 55 and 64 years old. - AGE_RANGE_55_64 = 503005; - - // 65 years old and beyond. - AGE_RANGE_65_UP = 503006; - - // Undetermined age range. - AGE_RANGE_UNDETERMINED = 503999; - } - - -} diff --git a/google/ads/googleads/v6/enums/app_campaign_app_store.proto b/google/ads/googleads/v6/enums/app_campaign_app_store.proto deleted file mode 100644 index 3b471b0e8..000000000 --- a/google/ads/googleads/v6/enums/app_campaign_app_store.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppCampaignAppStoreProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing App Campaign app store. - -// The application store that distributes mobile applications. -message AppCampaignAppStoreEnum { - // Enum describing app campaign app store. - enum AppCampaignAppStore { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Apple app store. - APPLE_APP_STORE = 2; - - // Google play. - GOOGLE_APP_STORE = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/app_campaign_bidding_strategy_goal_type.proto b/google/ads/googleads/v6/enums/app_campaign_bidding_strategy_goal_type.proto deleted file mode 100644 index 3e2d76898..000000000 --- a/google/ads/googleads/v6/enums/app_campaign_bidding_strategy_goal_type.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppCampaignBiddingStrategyGoalTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing App Campaign bidding strategy goal types. - -// Container for enum describing goal towards which the bidding strategy of an -// app campaign should optimize for. -message AppCampaignBiddingStrategyGoalTypeEnum { - // Goal type of App campaign BiddingStrategy. - enum AppCampaignBiddingStrategyGoalType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Aim to maximize the number of app installs. The cpa bid is the - // target cost per install. - OPTIMIZE_INSTALLS_TARGET_INSTALL_COST = 2; - - // Aim to maximize the long term number of selected in-app conversions from - // app installs. The cpa bid is the target cost per install. - OPTIMIZE_IN_APP_CONVERSIONS_TARGET_INSTALL_COST = 3; - - // Aim to maximize the long term number of selected in-app conversions from - // app installs. The cpa bid is the target cost per in-app conversion. Note - // that the actual cpa may seem higher than the target cpa at first, since - // the long term conversions haven’t happened yet. - OPTIMIZE_IN_APP_CONVERSIONS_TARGET_CONVERSION_COST = 4; - - // Aim to maximize all conversions' value, i.e. install + selected in-app - // conversions while achieving or exceeding target return on advertising - // spend. - OPTIMIZE_RETURN_ON_ADVERTISING_SPEND = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/app_payment_model_type.proto b/google/ads/googleads/v6/enums/app_payment_model_type.proto deleted file mode 100644 index afcb2bc69..000000000 --- a/google/ads/googleads/v6/enums/app_payment_model_type.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppPaymentModelTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing criteria types. - -// Represents a criterion for targeting paid apps. -message AppPaymentModelTypeEnum { - // Enum describing possible app payment models. - enum AppPaymentModelType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Represents paid-for apps. - PAID = 30; - } - - -} diff --git a/google/ads/googleads/v6/enums/app_placeholder_field.proto b/google/ads/googleads/v6/enums/app_placeholder_field.proto deleted file mode 100644 index 239af41ba..000000000 --- a/google/ads/googleads/v6/enums/app_placeholder_field.proto +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing App placeholder fields. - -// Values for App placeholder fields. -message AppPlaceholderFieldEnum { - // Possible values for App placeholder fields. - enum AppPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: INT64. The application store that the target application - // belongs to. Valid values are: 1 = Apple iTunes Store; 2 = Google Play - // Store. - STORE = 2; - - // Data Type: STRING. The store-specific ID for the target application. - ID = 3; - - // Data Type: STRING. The visible text displayed when the link is rendered - // in an ad. - LINK_TEXT = 4; - - // Data Type: STRING. The destination URL of the in-app link. - URL = 5; - - // Data Type: URL_LIST. Final URLs for the in-app link when using Upgraded - // URLs. - FINAL_URLS = 6; - - // Data Type: URL_LIST. Final Mobile URLs for the in-app link when using - // Upgraded URLs. - FINAL_MOBILE_URLS = 7; - - // Data Type: URL. Tracking template for the in-app link when using Upgraded - // URLs. - TRACKING_URL = 8; - - // Data Type: STRING. Final URL suffix for the in-app link when using - // parallel tracking. - FINAL_URL_SUFFIX = 9; - } - - -} diff --git a/google/ads/googleads/v6/enums/app_store.proto b/google/ads/googleads/v6/enums/app_store.proto deleted file mode 100644 index 2d171c061..000000000 --- a/google/ads/googleads/v6/enums/app_store.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppStoreProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing app store types for an app extension. - -// Container for enum describing app store type in an app extension. -message AppStoreEnum { - // App store type in an app extension. - enum AppStore { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Apple iTunes. - APPLE_ITUNES = 2; - - // Google Play. - GOOGLE_PLAY = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/app_url_operating_system_type.proto b/google/ads/googleads/v6/enums/app_url_operating_system_type.proto deleted file mode 100644 index de5a55939..000000000 --- a/google/ads/googleads/v6/enums/app_url_operating_system_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AppUrlOperatingSystemTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing operating system for a deeplink app URL. - -// The possible OS types for a deeplink AppUrl. -message AppUrlOperatingSystemTypeEnum { - // Operating System - enum AppUrlOperatingSystemType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The Apple IOS operating system. - IOS = 2; - - // The Android operating system. - ANDROID = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/asset_field_type.proto b/google/ads/googleads/v6/enums/asset_field_type.proto deleted file mode 100644 index 72c92f19b..000000000 --- a/google/ads/googleads/v6/enums/asset_field_type.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AssetFieldTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing asset type. - -// Container for enum describing the possible placements of an asset. -message AssetFieldTypeEnum { - // Enum describing the possible placements of an asset. - enum AssetFieldType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The asset is linked for use as a headline. - HEADLINE = 2; - - // The asset is linked for use as a description. - DESCRIPTION = 3; - - // The asset is linked for use as mandatory ad text. - MANDATORY_AD_TEXT = 4; - - // The asset is linked for use as a marketing image. - MARKETING_IMAGE = 5; - - // The asset is linked for use as a media bundle. - MEDIA_BUNDLE = 6; - - // The asset is linked for use as a YouTube video. - YOUTUBE_VIDEO = 7; - - // The asset is linked to indicate that a hotels campaign is "Book on - // Google" enabled. - BOOK_ON_GOOGLE = 8; - - // The asset is linked for use as a Lead Form extension. - LEAD_FORM = 9; - } - - -} diff --git a/google/ads/googleads/v6/enums/asset_link_status.proto b/google/ads/googleads/v6/enums/asset_link_status.proto deleted file mode 100644 index 3e44b41a2..000000000 --- a/google/ads/googleads/v6/enums/asset_link_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AssetLinkStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing status of an asset link. - -// Container for enum describing possible statuses of an asset link. -message AssetLinkStatusEnum { - // Enum describing statuses of an asset link. - enum AssetLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Asset link is enabled. - ENABLED = 2; - - // Asset link has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/asset_performance_label.proto b/google/ads/googleads/v6/enums/asset_performance_label.proto deleted file mode 100644 index 166dc0530..000000000 --- a/google/ads/googleads/v6/enums/asset_performance_label.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AssetPerformanceLabelProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing the performance label of an asset. - -// Container for enum describing the performance label of an asset. -message AssetPerformanceLabelEnum { - // Enum describing the possible performance labels of an asset, usually - // computed in the context of a linkage. - enum AssetPerformanceLabel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // This asset does not yet have any performance informantion. This may be - // because it is still under review. - PENDING = 2; - - // The asset has started getting impressions but the stats are not - // statistically significant enough to get an asset performance label. - LEARNING = 3; - - // Worst performing assets. - LOW = 4; - - // Good performing assets. - GOOD = 5; - - // Best performing assets. - BEST = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/asset_type.proto b/google/ads/googleads/v6/enums/asset_type.proto deleted file mode 100644 index 70e9aacbc..000000000 --- a/google/ads/googleads/v6/enums/asset_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AssetTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing asset type. - -// Container for enum describing the types of asset. -message AssetTypeEnum { - // Enum describing possible types of asset. - enum AssetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // YouTube video asset. - YOUTUBE_VIDEO = 2; - - // Media bundle asset. - MEDIA_BUNDLE = 3; - - // Image asset. - IMAGE = 4; - - // Text asset. - TEXT = 5; - - // Lead form asset. - LEAD_FORM = 6; - - // Book on Google asset. - BOOK_ON_GOOGLE = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/attribution_model.proto b/google/ads/googleads/v6/enums/attribution_model.proto deleted file mode 100644 index eeb9e793d..000000000 --- a/google/ads/googleads/v6/enums/attribution_model.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "AttributionModelProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum representing the attribution model that describes how to -// distribute credit for a particular conversion across potentially many prior -// interactions. -message AttributionModelEnum { - // The attribution model that describes how to distribute credit for a - // particular conversion across potentially many prior interactions. - enum AttributionModel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Uses external attribution. - EXTERNAL = 100; - - // Attributes all credit for a conversion to its last click. - GOOGLE_ADS_LAST_CLICK = 101; - - // Attributes all credit for a conversion to its first click using Google - // Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_FIRST_CLICK = 102; - - // Attributes credit for a conversion equally across all of its clicks using - // Google Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_LINEAR = 103; - - // Attributes exponentially more credit for a conversion to its more recent - // clicks using Google Search attribution (half-life is 1 week). - GOOGLE_SEARCH_ATTRIBUTION_TIME_DECAY = 104; - - // Attributes 40% of the credit for a conversion to its first and last - // clicks. Remaining 20% is evenly distributed across all other clicks. This - // uses Google Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_POSITION_BASED = 105; - - // Flexible model that uses machine learning to determine the appropriate - // distribution of credit among clicks using Google Search attribution. - GOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN = 106; - } - - -} diff --git a/google/ads/googleads/v6/enums/batch_job_status.proto b/google/ads/googleads/v6/enums/batch_job_status.proto deleted file mode 100644 index a104b0f50..000000000 --- a/google/ads/googleads/v6/enums/batch_job_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing batch job statuses. - -// Container for enum describing possible batch job statuses. -message BatchJobStatusEnum { - // The batch job statuses. - enum BatchJobStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The job is not currently running. - PENDING = 2; - - // The job is running. - RUNNING = 3; - - // The job is done. - DONE = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/bid_modifier_source.proto b/google/ads/googleads/v6/enums/bid_modifier_source.proto deleted file mode 100644 index 494422bac..000000000 --- a/google/ads/googleads/v6/enums/bid_modifier_source.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BidModifierSourceProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing bid modifier source. - -// Container for enum describing possible bid modifier sources. -message BidModifierSourceEnum { - // Enum describing possible bid modifier sources. - enum BidModifierSource { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The bid modifier is specified at the campaign level, on the campaign - // level criterion. - CAMPAIGN = 2; - - // The bid modifier is specified (overridden) at the ad group level. - AD_GROUP = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/bidding_source.proto b/google/ads/googleads/v6/enums/bidding_source.proto deleted file mode 100644 index bc9c3833c..000000000 --- a/google/ads/googleads/v6/enums/bidding_source.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BiddingSourceProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing bidding sources. - -// Container for enum describing possible bidding sources. -message BiddingSourceEnum { - // Indicates where a bid or target is defined. For example, an ad group - // criterion may define a cpc bid directly, or it can inherit its cpc bid from - // the ad group. - enum BiddingSource { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Effective bid or target is inherited from campaign bidding strategy. - CAMPAIGN_BIDDING_STRATEGY = 5; - - // The bid or target is defined on the ad group. - AD_GROUP = 6; - - // The bid or target is defined on the ad group criterion. - AD_GROUP_CRITERION = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/bidding_strategy_status.proto b/google/ads/googleads/v6/enums/bidding_strategy_status.proto deleted file mode 100644 index 3d2ea021c..000000000 --- a/google/ads/googleads/v6/enums/bidding_strategy_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing BiddingStrategy statuses. - -// Message describing BiddingStrategy statuses. -message BiddingStrategyStatusEnum { - // The possible statuses of a BiddingStrategy. - enum BiddingStrategyStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The bidding strategy is enabled. - ENABLED = 2; - - // The bidding strategy is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/bidding_strategy_type.proto b/google/ads/googleads/v6/enums/bidding_strategy_type.proto deleted file mode 100644 index e458a30ab..000000000 --- a/google/ads/googleads/v6/enums/bidding_strategy_type.proto +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing bidding schemes. - -// Container for enum describing possible bidding strategy types. -message BiddingStrategyTypeEnum { - // Enum describing possible bidding strategy types. - enum BiddingStrategyType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Commission is an automatic bidding strategy in which the advertiser pays - // a certain portion of the conversion value. - COMMISSION = 16; - - // Enhanced CPC is a bidding strategy that raises bids for clicks - // that seem more likely to lead to a conversion and lowers - // them for clicks where they seem less likely. - ENHANCED_CPC = 2; - - // Manual click based bidding where user pays per click. - MANUAL_CPC = 3; - - // Manual impression based bidding - // where user pays per thousand impressions. - MANUAL_CPM = 4; - - // A bidding strategy that pays a configurable amount per video view. - MANUAL_CPV = 13; - - // A bidding strategy that automatically maximizes number of conversions - // given a daily budget. - MAXIMIZE_CONVERSIONS = 10; - - // An automated bidding strategy that automatically sets bids to maximize - // revenue while spending your budget. - MAXIMIZE_CONVERSION_VALUE = 11; - - // Page-One Promoted bidding scheme, which sets max cpc bids to - // target impressions on page one or page one promoted slots on google.com. - // This enum value is deprecated. - PAGE_ONE_PROMOTED = 5; - - // Percent Cpc is bidding strategy where bids are a fraction of the - // advertised price for some good or service. - PERCENT_CPC = 12; - - // Target CPA is an automated bid strategy that sets bids - // to help get as many conversions as possible - // at the target cost-per-acquisition (CPA) you set. - TARGET_CPA = 6; - - // Target CPM is an automated bid strategy that sets bids to help get - // as many impressions as possible at the target cost per one thousand - // impressions (CPM) you set. - TARGET_CPM = 14; - - // An automated bidding strategy that sets bids so that a certain percentage - // of search ads are shown at the top of the first page (or other targeted - // location). - TARGET_IMPRESSION_SHARE = 15; - - // Target Outrank Share is an automated bidding strategy that sets bids - // based on the target fraction of auctions where the advertiser - // should outrank a specific competitor. - // This enum value is deprecated. - TARGET_OUTRANK_SHARE = 7; - - // Target ROAS is an automated bidding strategy - // that helps you maximize revenue while averaging - // a specific target Return On Average Spend (ROAS). - TARGET_ROAS = 8; - - // Target Spend is an automated bid strategy that sets your bids - // to help get as many clicks as possible within your budget. - TARGET_SPEND = 9; - } - - -} diff --git a/google/ads/googleads/v6/enums/billing_setup_status.proto b/google/ads/googleads/v6/enums/billing_setup_status.proto deleted file mode 100644 index 9dc972f1d..000000000 --- a/google/ads/googleads/v6/enums/billing_setup_status.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing BillingSetup statuses. - -// Message describing BillingSetup statuses. -message BillingSetupStatusEnum { - // The possible statuses of a BillingSetup. - enum BillingSetupStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The billing setup is pending approval. - PENDING = 2; - - // The billing setup has been approved but the corresponding first budget - // has not. This can only occur for billing setups configured for monthly - // invoicing. - APPROVED_HELD = 3; - - // The billing setup has been approved. - APPROVED = 4; - - // The billing setup was cancelled by the user prior to approval. - CANCELLED = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/brand_safety_suitability.proto b/google/ads/googleads/v6/enums/brand_safety_suitability.proto deleted file mode 100644 index e916bf90b..000000000 --- a/google/ads/googleads/v6/enums/brand_safety_suitability.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BrandSafetySuitabilityProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing brand safety suitability settings. - -// Container for enum with 3-Tier brand safety suitability control. -message BrandSafetySuitabilityEnum { - // 3-Tier brand safety suitability control. - enum BrandSafetySuitability { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // This option lets you show ads across all inventory on YouTube and video - // partners that meet our standards for monetization. This option may be an - // appropriate choice for brands that want maximum access to the full - // breadth of videos eligible for ads, including, for example, videos that - // have strong profanity in the context of comedy or a documentary, or - // excessive violence as featured in video games. - EXPANDED_INVENTORY = 2; - - // This option lets you show ads across a wide range of content that's - // appropriate for most brands, such as popular music videos, documentaries, - // and movie trailers. The content you can show ads on is based on YouTube's - // advertiser-friendly content guidelines that take into account, for - // example, the strength or frequency of profanity, or the appropriateness - // of subject matter like sensitive events. Ads won't show, for example, on - // content with repeated strong profanity, strong sexual content, or graphic - // violence. - STANDARD_INVENTORY = 3; - - // This option lets you show ads on a reduced range of content that's - // appropriate for brands with particularly strict guidelines around - // inappropriate language and sexual suggestiveness; above and beyond what - // YouTube's advertiser-friendly content guidelines address. The videos - // accessible in this sensitive category meet heightened requirements, - // especially for inappropriate language and sexual suggestiveness. For - // example, your ads will be excluded from showing on some of YouTube's most - // popular music videos and other pop culture content across YouTube and - // Google video partners. - LIMITED_INVENTORY = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/budget_campaign_association_status.proto b/google/ads/googleads/v6/enums/budget_campaign_association_status.proto deleted file mode 100644 index 93d9f3f9f..000000000 --- a/google/ads/googleads/v6/enums/budget_campaign_association_status.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetCampaignAssociationStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Budget and Campaign association status. - -// Message describing the status of the association between the Budget and the -// Campaign. -message BudgetCampaignAssociationStatusEnum { - // Possible statuses of the association between the Budget and the Campaign. - enum BudgetCampaignAssociationStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The campaign is currently using the budget. - ENABLED = 2; - - // The campaign is no longer using the budget. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/budget_delivery_method.proto b/google/ads/googleads/v6/enums/budget_delivery_method.proto deleted file mode 100644 index 75c12d4f0..000000000 --- a/google/ads/googleads/v6/enums/budget_delivery_method.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetDeliveryMethodProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Budget delivery methods. - -// Message describing Budget delivery methods. A delivery method determines the -// rate at which the Budget is spent. -message BudgetDeliveryMethodEnum { - // Possible delivery methods of a Budget. - enum BudgetDeliveryMethod { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The budget server will throttle serving evenly across - // the entire time period. - STANDARD = 2; - - // The budget server will not throttle serving, - // and ads will serve as fast as possible. - ACCELERATED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/budget_period.proto b/google/ads/googleads/v6/enums/budget_period.proto deleted file mode 100644 index 6b4f68662..000000000 --- a/google/ads/googleads/v6/enums/budget_period.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetPeriodProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Budget delivery methods. - -// Message describing Budget period. -message BudgetPeriodEnum { - // Possible period of a Budget. - enum BudgetPeriod { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Daily budget. - DAILY = 2; - - // Custom budget, added back in V5. - // Custom bugdet can be used with total_amount to specify lifetime budget - // limit. See: https://support.google.com/google-ads/answer/6385083 for more - // info. - CUSTOM_PERIOD = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/budget_status.proto b/google/ads/googleads/v6/enums/budget_status.proto deleted file mode 100644 index cf50a77ec..000000000 --- a/google/ads/googleads/v6/enums/budget_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Budget statuses - -// Message describing a Budget status -message BudgetStatusEnum { - // Possible statuses of a Budget. - enum BudgetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Budget is enabled. - ENABLED = 2; - - // Budget is removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/budget_type.proto b/google/ads/googleads/v6/enums/budget_type.proto deleted file mode 100644 index b86d67acf..000000000 --- a/google/ads/googleads/v6/enums/budget_type.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "BudgetTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Budget types. - -// Describes Budget types. -message BudgetTypeEnum { - // Possible Budget types. - enum BudgetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Budget type for standard Google Ads usage. - // Caps daily spend at two times the specified budget amount. - // Full details: https://support.google.com/google-ads/answer/6385083 - STANDARD = 2; - - // Budget type for Hotels Ads commission program. - // Full details: https://support.google.com/google-ads/answer/9243945 - // - // This type is only supported by campaigns with - // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION and - // PaymentMode.CONVERSION_VALUE. - HOTEL_ADS_COMMISSION = 3; - - // Budget type with a fixed cost-per-acquisition (conversion). - // Full details: https://support.google.com/google-ads/answer/7528254 - // - // This type is only supported by campaigns with - // AdvertisingChannelType.DISPLAY (excluding - // AdvertisingChannelSubType.DISPLAY_GMAIL), - // BiddingStrategyType.TARGET_CPA and PaymentMode.CONVERSIONS. - FIXED_CPA = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/call_conversion_reporting_state.proto b/google/ads/googleads/v6/enums/call_conversion_reporting_state.proto deleted file mode 100644 index 8c68360e4..000000000 --- a/google/ads/googleads/v6/enums/call_conversion_reporting_state.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CallConversionReportingStateProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing call conversion reporting state. - -// Container for enum describing possible data types for call conversion -// reporting state. -message CallConversionReportingStateEnum { - // Possible data types for a call conversion action state. - enum CallConversionReportingState { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Call conversion action is disabled. - DISABLED = 2; - - // Call conversion action will use call conversion type set at the - // account level. - USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION = 3; - - // Call conversion action will use call conversion type set at the resource - // (call only ads/call extensions) level. - USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/call_placeholder_field.proto b/google/ads/googleads/v6/enums/call_placeholder_field.proto deleted file mode 100644 index bdd762cb0..000000000 --- a/google/ads/googleads/v6/enums/call_placeholder_field.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CallPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Call placeholder fields. - -// Values for Call placeholder fields. -message CallPlaceholderFieldEnum { - // Possible values for Call placeholder fields. - enum CallPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The advertiser's phone number to append to the ad. - PHONE_NUMBER = 2; - - // Data Type: STRING. Uppercase two-letter country code of the advertiser's - // phone number. - COUNTRY_CODE = 3; - - // Data Type: BOOLEAN. Indicates whether call tracking is enabled. Default: - // true. - TRACKED = 4; - - // Data Type: INT64. The ID of an AdCallMetricsConversion object. This - // object contains the phoneCallDurationfield which is the minimum duration - // (in seconds) of a call to be considered a conversion. - CONVERSION_TYPE_ID = 5; - - // Data Type: STRING. Indicates whether this call extension uses its own - // call conversion setting or follows the account level setting. - // Valid values are: USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION and - // USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION. - CONVERSION_REPORTING_STATE = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/call_tracking_display_location.proto b/google/ads/googleads/v6/enums/call_tracking_display_location.proto deleted file mode 100644 index e566330d0..000000000 --- a/google/ads/googleads/v6/enums/call_tracking_display_location.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CallTrackingDisplayLocationProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing call tracking display location. - -// Container for enum describing possible call tracking display locations. -message CallTrackingDisplayLocationEnum { - // Possible call tracking display locations. - enum CallTrackingDisplayLocation { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The phone call placed from the ad. - AD = 2; - - // The phone call placed from the landing page ad points to. - LANDING_PAGE = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/call_type.proto b/google/ads/googleads/v6/enums/call_type.proto deleted file mode 100644 index de736c0ba..000000000 --- a/google/ads/googleads/v6/enums/call_type.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CallTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing call types. - -// Container for enum describing possible types of property from where the call -// was made. -message CallTypeEnum { - // Possible types of property from where the call was made. - enum CallType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The phone call was manually dialed. - MANUALLY_DIALED = 2; - - // The phone call was a mobile click-to-call. - HIGH_END_MOBILE_SEARCH = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/callout_placeholder_field.proto b/google/ads/googleads/v6/enums/callout_placeholder_field.proto deleted file mode 100644 index 573f069f4..000000000 --- a/google/ads/googleads/v6/enums/callout_placeholder_field.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CalloutPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Callout placeholder fields. - -// Values for Callout placeholder fields. -message CalloutPlaceholderFieldEnum { - // Possible values for Callout placeholder fields. - enum CalloutPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Callout text. - CALLOUT_TEXT = 2; - } - - -} diff --git a/google/ads/googleads/v6/enums/campaign_criterion_status.proto b/google/ads/googleads/v6/enums/campaign_criterion_status.proto deleted file mode 100644 index 7ba9dbb9d..000000000 --- a/google/ads/googleads/v6/enums/campaign_criterion_status.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing CampaignCriterion statuses. - -// Message describing CampaignCriterion statuses. -message CampaignCriterionStatusEnum { - // The possible statuses of a CampaignCriterion. - enum CampaignCriterionStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The campaign criterion is enabled. - ENABLED = 2; - - // The campaign criterion is paused. - PAUSED = 3; - - // The campaign criterion is removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/campaign_draft_status.proto b/google/ads/googleads/v6/enums/campaign_draft_status.proto deleted file mode 100644 index 8cd2db911..000000000 --- a/google/ads/googleads/v6/enums/campaign_draft_status.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing campaign draft status. - -// Container for enum describing possible statuses of a campaign draft. -message CampaignDraftStatusEnum { - // Possible statuses of a campaign draft. - enum CampaignDraftStatus { - // The status has not been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Initial state of the draft, the advertiser can start adding changes with - // no effect on serving. - PROPOSED = 2; - - // The campaign draft is removed. - REMOVED = 3; - - // Advertiser requested to promote draft's changes back into the original - // campaign. Advertiser can poll the long running operation returned by - // the promote action to see the status of the promotion. - PROMOTING = 5; - - // The process to merge changes in the draft back to the original campaign - // has completed successfully. - PROMOTED = 4; - - // The promotion failed after it was partially applied. Promote cannot be - // attempted again safely, so the issue must be corrected in the original - // campaign. - PROMOTE_FAILED = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/campaign_experiment_status.proto b/google/ads/googleads/v6/enums/campaign_experiment_status.proto deleted file mode 100644 index c7075333a..000000000 --- a/google/ads/googleads/v6/enums/campaign_experiment_status.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing campaign experiment status. - -// Container for enum describing possible statuses of a campaign experiment. -message CampaignExperimentStatusEnum { - // Possible statuses of a campaign experiment. - enum CampaignExperimentStatus { - // The status has not been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The experiment campaign is being initialized. - INITIALIZING = 2; - - // Initialization of the experiment campaign failed. - INITIALIZATION_FAILED = 8; - - // The experiment campaign is fully initialized. The experiment is currently - // running, scheduled to run in the future or has ended based on its - // end date. An experiment with the status INITIALIZING will be updated to - // ENABLED when it is fully created. - ENABLED = 3; - - // The experiment campaign was graduated to a stand-alone - // campaign, existing independently of the experiment. - GRADUATED = 4; - - // The experiment is removed. - REMOVED = 5; - - // The experiment's changes are being applied to the original campaign. - // The long running operation returned by the promote method can be polled - // to see the status of the promotion. - PROMOTING = 6; - - // Promote of the experiment campaign failed. - PROMOTION_FAILED = 9; - - // The changes of the experiment are promoted to their original campaign. - PROMOTED = 7; - - // The experiment was ended manually. It did not end based on its end date. - ENDED_MANUALLY = 10; - } - - -} diff --git a/google/ads/googleads/v6/enums/campaign_experiment_traffic_split_type.proto b/google/ads/googleads/v6/enums/campaign_experiment_traffic_split_type.proto deleted file mode 100644 index 01ca3ef42..000000000 --- a/google/ads/googleads/v6/enums/campaign_experiment_traffic_split_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentTrafficSplitTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing campaign experiment traffic split type. - -// Container for enum describing campaign experiment traffic split type. -message CampaignExperimentTrafficSplitTypeEnum { - // Enum of strategies for splitting traffic between base and experiment - // campaigns in campaign experiment. - enum CampaignExperimentTrafficSplitType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Traffic is randomly assigned to the base or experiment arm for each - // query, independent of previous assignments for the same user. - RANDOM_QUERY = 2; - - // Traffic is split using cookies to keep users in the same arm (base or - // experiment) of the experiment. - COOKIE = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/campaign_experiment_type.proto b/google/ads/googleads/v6/enums/campaign_experiment_type.proto deleted file mode 100644 index 1ea8f2d2e..000000000 --- a/google/ads/googleads/v6/enums/campaign_experiment_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing campaign experiment type. - -// Container for enum describing campaign experiment type. -message CampaignExperimentTypeEnum { - // Indicates if this campaign is a normal campaign, - // a draft campaign, or an experiment campaign. - enum CampaignExperimentType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // This is a regular campaign. - BASE = 2; - - // This is a draft version of a campaign. - // It has some modifications from a base campaign, - // but it does not serve or accrue metrics. - DRAFT = 3; - - // This is an experiment version of a campaign. - // It has some modifications from a base campaign, - // and a percentage of traffic is being diverted - // from the BASE campaign to this experiment campaign. - EXPERIMENT = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/campaign_serving_status.proto b/google/ads/googleads/v6/enums/campaign_serving_status.proto deleted file mode 100644 index 12e206a2d..000000000 --- a/google/ads/googleads/v6/enums/campaign_serving_status.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignServingStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Campaign serving statuses. - -// Message describing Campaign serving statuses. -message CampaignServingStatusEnum { - // Possible serving statuses of a campaign. - enum CampaignServingStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Serving. - SERVING = 2; - - // None. - NONE = 3; - - // Ended. - ENDED = 4; - - // Pending. - PENDING = 5; - - // Suspended. - SUSPENDED = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/campaign_shared_set_status.proto b/google/ads/googleads/v6/enums/campaign_shared_set_status.proto deleted file mode 100644 index 8f7de3dc4..000000000 --- a/google/ads/googleads/v6/enums/campaign_shared_set_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing campaign shared set statuses. - -// Container for enum describing types of campaign shared set statuses. -message CampaignSharedSetStatusEnum { - // Enum listing the possible campaign shared set statuses. - enum CampaignSharedSetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The campaign shared set is enabled. - ENABLED = 2; - - // The campaign shared set is removed and can no longer be used. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/campaign_status.proto b/google/ads/googleads/v6/enums/campaign_status.proto deleted file mode 100644 index 85a527ecd..000000000 --- a/google/ads/googleads/v6/enums/campaign_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CampaignStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing campaign status. - -// Container for enum describing possible statuses of a campaign. -message CampaignStatusEnum { - // Possible statuses of a campaign. - enum CampaignStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Campaign is currently serving ads depending on budget information. - ENABLED = 2; - - // Campaign has been paused by the user. - PAUSED = 3; - - // Campaign has been removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/change_client_type.proto b/google/ads/googleads/v6/enums/change_client_type.proto deleted file mode 100644 index 40b9a94a3..000000000 --- a/google/ads/googleads/v6/enums/change_client_type.proto +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ChangeClientTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing the sources that the change event resource was -// made through. - -// Container for enum describing the sources that the change event resource -// was made through. -message ChangeClientTypeEnum { - // The source that the change_event resource was made through. - enum ChangeClientType { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents an unclassified client type - // unknown in this version. - UNKNOWN = 1; - - // Changes made through the "ads.google.com". - // For example, changes made through campaign management. - GOOGLE_ADS_WEB_CLIENT = 2; - - // Changes made through Google Ads automated rules. - GOOGLE_ADS_AUTOMATED_RULE = 3; - - // Changes made through Google Ads scripts. - GOOGLE_ADS_SCRIPTS = 4; - - // Changes made by Google Ads bulk upload. - GOOGLE_ADS_BULK_UPLOAD = 5; - - // Changes made by Google Ads API. - GOOGLE_ADS_API = 6; - - // Changes made by Google Ads Editor. - GOOGLE_ADS_EDITOR = 7; - - // Changes made by Google Ads mobile app. - GOOGLE_ADS_MOBILE_APP = 8; - - // Changes made through Google Ads recommendations. - GOOGLE_ADS_RECOMMENDATIONS = 9; - - // Changes made through Search Ads 360 Sync. - SEARCH_ADS_360_SYNC = 10; - - // Changes made through Search Ads 360 Post. - SEARCH_ADS_360_POST = 11; - - // Changes made through internal tools. - // For example, when a user sets a URL template on an entity like a - // Campaign, it's automatically wrapped with the SA360 Clickserver URL. - INTERNAL_TOOL = 12; - - // Types of changes that are not categorized, for example, - // changes made by coupon redemption through Google Ads. - OTHER = 13; - } - - -} diff --git a/google/ads/googleads/v6/enums/change_event_resource_type.proto b/google/ads/googleads/v6/enums/change_event_resource_type.proto deleted file mode 100644 index 8547fa3ee..000000000 --- a/google/ads/googleads/v6/enums/change_event_resource_type.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ChangeEventResourceTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing the resource types the ChangeEvent resource supports. - -// Container for enum describing supported resource types for the ChangeEvent -// resource. -message ChangeEventResourceTypeEnum { - // Enum listing the resource types support by the ChangeEvent resource. - enum ChangeEventResourceType { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents an unclassified resource unknown - // in this version. - UNKNOWN = 1; - - // An Ad resource change. - AD = 2; - - // An AdGroup resource change. - AD_GROUP = 3; - - // An AdGroupCriterion resource change. - AD_GROUP_CRITERION = 4; - - // A Campaign resource change. - CAMPAIGN = 5; - - // A CampaignBudget resource change. - CAMPAIGN_BUDGET = 6; - - // An AdGroupBidModifier resource change. - AD_GROUP_BID_MODIFIER = 7; - - // A CampaignCriterion resource change. - CAMPAIGN_CRITERION = 8; - - // A Feed resource change. - FEED = 9; - - // A FeedItem resource change. - FEED_ITEM = 10; - - // A CampaignFeed resource change. - CAMPAIGN_FEED = 11; - - // An AdGroupFeed resource change. - AD_GROUP_FEED = 12; - - // An AdGroupAd resource change. - AD_GROUP_AD = 13; - } - - -} diff --git a/google/ads/googleads/v6/enums/change_status_operation.proto b/google/ads/googleads/v6/enums/change_status_operation.proto deleted file mode 100644 index 1c669499d..000000000 --- a/google/ads/googleads/v6/enums/change_status_operation.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusOperationProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing the change status operations. - -// Container for enum describing operations for the ChangeStatus resource. -message ChangeStatusOperationEnum { - // Status of the changed resource - enum ChangeStatusOperation { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents an unclassified resource unknown - // in this version. - UNKNOWN = 1; - - // The resource was created. - ADDED = 2; - - // The resource was modified. - CHANGED = 3; - - // The resource was removed. - REMOVED = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/change_status_resource_type.proto b/google/ads/googleads/v6/enums/change_status_resource_type.proto deleted file mode 100644 index 03251e029..000000000 --- a/google/ads/googleads/v6/enums/change_status_resource_type.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusResourceTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing the resource types the ChangeStatus resource supports. - -// Container for enum describing supported resource types for the ChangeStatus -// resource. -message ChangeStatusResourceTypeEnum { - // Enum listing the resource types support by the ChangeStatus resource. - enum ChangeStatusResourceType { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents an unclassified resource unknown - // in this version. - UNKNOWN = 1; - - // An AdGroup resource change. - AD_GROUP = 3; - - // An AdGroupAd resource change. - AD_GROUP_AD = 4; - - // An AdGroupCriterion resource change. - AD_GROUP_CRITERION = 5; - - // A Campaign resource change. - CAMPAIGN = 6; - - // A CampaignCriterion resource change. - CAMPAIGN_CRITERION = 7; - - // A Feed resource change. - FEED = 9; - - // A FeedItem resource change. - FEED_ITEM = 10; - - // An AdGroupFeed resource change. - AD_GROUP_FEED = 11; - - // A CampaignFeed resource change. - CAMPAIGN_FEED = 12; - - // An AdGroupBidModifier resource change. - AD_GROUP_BID_MODIFIER = 13; - } - - -} diff --git a/google/ads/googleads/v6/enums/click_type.proto b/google/ads/googleads/v6/enums/click_type.proto deleted file mode 100644 index e942ad264..000000000 --- a/google/ads/googleads/v6/enums/click_type.proto +++ /dev/null @@ -1,203 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ClickTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing click types. - -// Container for enumeration of Google Ads click types. -message ClickTypeEnum { - // Enumerates Google Ads click types. - enum ClickType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // App engagement ad deep link. - APP_DEEPLINK = 2; - - // Breadcrumbs. - BREADCRUMBS = 3; - - // Broadband Plan. - BROADBAND_PLAN = 4; - - // Manually dialed phone calls. - CALL_TRACKING = 5; - - // Phone calls. - CALLS = 6; - - // Click on engagement ad. - CLICK_ON_ENGAGEMENT_AD = 7; - - // Driving direction. - GET_DIRECTIONS = 8; - - // Get location details. - LOCATION_EXPANSION = 9; - - // Call. - LOCATION_FORMAT_CALL = 10; - - // Directions. - LOCATION_FORMAT_DIRECTIONS = 11; - - // Image(s). - LOCATION_FORMAT_IMAGE = 12; - - // Go to landing page. - LOCATION_FORMAT_LANDING_PAGE = 13; - - // Map. - LOCATION_FORMAT_MAP = 14; - - // Go to store info. - LOCATION_FORMAT_STORE_INFO = 15; - - // Text. - LOCATION_FORMAT_TEXT = 16; - - // Mobile phone calls. - MOBILE_CALL_TRACKING = 17; - - // Print offer. - OFFER_PRINTS = 18; - - // Other. - OTHER = 19; - - // Product plusbox offer. - PRODUCT_EXTENSION_CLICKS = 20; - - // Shopping - Product - Online. - PRODUCT_LISTING_AD_CLICKS = 21; - - // Sitelink. - SITELINKS = 22; - - // Show nearby locations. - STORE_LOCATOR = 23; - - // Headline. - URL_CLICKS = 25; - - // App store. - VIDEO_APP_STORE_CLICKS = 26; - - // Call-to-Action overlay. - VIDEO_CALL_TO_ACTION_CLICKS = 27; - - // Cards. - VIDEO_CARD_ACTION_HEADLINE_CLICKS = 28; - - // End cap. - VIDEO_END_CAP_CLICKS = 29; - - // Website. - VIDEO_WEBSITE_CLICKS = 30; - - // Visual Sitelinks. - VISUAL_SITELINKS = 31; - - // Wireless Plan. - WIRELESS_PLAN = 32; - - // Shopping - Product - Local. - PRODUCT_LISTING_AD_LOCAL = 33; - - // Shopping - Product - MultiChannel Local. - PRODUCT_LISTING_AD_MULTICHANNEL_LOCAL = 34; - - // Shopping - Product - MultiChannel Online. - PRODUCT_LISTING_AD_MULTICHANNEL_ONLINE = 35; - - // Shopping - Product - Coupon. - PRODUCT_LISTING_ADS_COUPON = 36; - - // Shopping - Product - Sell on Google. - PRODUCT_LISTING_AD_TRANSACTABLE = 37; - - // Shopping - Product - App engagement ad deep link. - PRODUCT_AD_APP_DEEPLINK = 38; - - // Shopping - Showcase - Category. - SHOWCASE_AD_CATEGORY_LINK = 39; - - // Shopping - Showcase - Local storefront. - SHOWCASE_AD_LOCAL_STOREFRONT_LINK = 40; - - // Shopping - Showcase - Online product. - SHOWCASE_AD_ONLINE_PRODUCT_LINK = 42; - - // Shopping - Showcase - Local product. - SHOWCASE_AD_LOCAL_PRODUCT_LINK = 43; - - // Promotion Extension. - PROMOTION_EXTENSION = 44; - - // Ad Headline. - SWIPEABLE_GALLERY_AD_HEADLINE = 45; - - // Swipes. - SWIPEABLE_GALLERY_AD_SWIPES = 46; - - // See More. - SWIPEABLE_GALLERY_AD_SEE_MORE = 47; - - // Sitelink 1. - SWIPEABLE_GALLERY_AD_SITELINK_ONE = 48; - - // Sitelink 2. - SWIPEABLE_GALLERY_AD_SITELINK_TWO = 49; - - // Sitelink 3. - SWIPEABLE_GALLERY_AD_SITELINK_THREE = 50; - - // Sitelink 4. - SWIPEABLE_GALLERY_AD_SITELINK_FOUR = 51; - - // Sitelink 5. - SWIPEABLE_GALLERY_AD_SITELINK_FIVE = 52; - - // Hotel price. - HOTEL_PRICE = 53; - - // Price Extension. - PRICE_EXTENSION = 54; - - // Book on Google hotel room selection. - HOTEL_BOOK_ON_GOOGLE_ROOM_SELECTION = 55; - - // Shopping - Comparison Listing. - SHOPPING_COMPARISON_LISTING = 56; - } - - -} diff --git a/google/ads/googleads/v6/enums/combined_audience_status.proto b/google/ads/googleads/v6/enums/combined_audience_status.proto deleted file mode 100644 index 093e85aad..000000000 --- a/google/ads/googleads/v6/enums/combined_audience_status.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CombinedAudienceStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing combined audience status. - -// The status of combined audience. -message CombinedAudienceStatusEnum { - // Enum containing possible combined audience status types. - enum CombinedAudienceStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Enabled status - combined audience is enabled and can be targeted. - ENABLED = 2; - - // Removed status - combined audience is removed and cannot be used for - // targeting. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/content_label_type.proto b/google/ads/googleads/v6/enums/content_label_type.proto deleted file mode 100644 index e53b359eb..000000000 --- a/google/ads/googleads/v6/enums/content_label_type.proto +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ContentLabelTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing content label types. - -// Container for enum describing content label types in ContentLabel. -message ContentLabelTypeEnum { - // Enum listing the content label types supported by ContentLabel criterion. - enum ContentLabelType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Sexually suggestive content. - SEXUALLY_SUGGESTIVE = 2; - - // Below the fold placement. - BELOW_THE_FOLD = 3; - - // Parked domain. - PARKED_DOMAIN = 4; - - // Juvenile, gross & bizarre content. - JUVENILE = 6; - - // Profanity & rough language. - PROFANITY = 7; - - // Death & tragedy. - TRAGEDY = 8; - - // Video. - VIDEO = 9; - - // Content rating: G. - VIDEO_RATING_DV_G = 10; - - // Content rating: PG. - VIDEO_RATING_DV_PG = 11; - - // Content rating: T. - VIDEO_RATING_DV_T = 12; - - // Content rating: MA. - VIDEO_RATING_DV_MA = 13; - - // Content rating: not yet rated. - VIDEO_NOT_YET_RATED = 14; - - // Embedded video. - EMBEDDED_VIDEO = 15; - - // Live streaming video. - LIVE_STREAMING_VIDEO = 16; - - // Sensitive social issues. - SOCIAL_ISSUES = 17; - } - - -} diff --git a/google/ads/googleads/v6/enums/conversion_action_category.proto b/google/ads/googleads/v6/enums/conversion_action_category.proto deleted file mode 100644 index 03958a39c..000000000 --- a/google/ads/googleads/v6/enums/conversion_action_category.proto +++ /dev/null @@ -1,106 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionCategoryProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum describing the category of conversions that are associated -// with a ConversionAction. -message ConversionActionCategoryEnum { - // The category of conversions that are associated with a ConversionAction. - enum ConversionActionCategory { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Default category. - DEFAULT = 2; - - // User visiting a page. - PAGE_VIEW = 3; - - // Purchase, sales, or "order placed" event. - PURCHASE = 4; - - // Signup user action. - SIGNUP = 5; - - // Lead-generating action. - LEAD = 6; - - // Software download action (as for an app). - DOWNLOAD = 7; - - // The addition of items to a shopping cart or bag on an advertiser site. - ADD_TO_CART = 8; - - // When someone enters the checkout flow on an advertiser site. - BEGIN_CHECKOUT = 9; - - // The start of a paid subscription for a product or service. - SUBSCRIBE_PAID = 10; - - // A call to indicate interest in an advertiser's offering. - PHONE_CALL_LEAD = 11; - - // A lead conversion imported from an external source into Google Ads. - IMPORTED_LEAD = 12; - - // A submission of a form on an advertiser site indicating business - // interest. - SUBMIT_LEAD_FORM = 13; - - // A booking of an appointment with an advertiser's business. - BOOK_APPOINTMENT = 14; - - // A quote or price estimate request. - REQUEST_QUOTE = 15; - - // A search for an advertiser's business location with intention to visit. - GET_DIRECTIONS = 16; - - // A click to an advertiser's partner's site. - OUTBOUND_CLICK = 17; - - // A call, SMS, email, chat or other type of contact to an advertiser. - CONTACT = 18; - - // A website engagement event such as long site time or a Google Analytics - // (GA) Smart Goal. Intended to be used for GA, Firebase, GA Gold goal - // imports. - ENGAGEMENT = 19; - - // A visit to a physical store location. - STORE_VISIT = 20; - - // A sale occurring in a physical store. - STORE_SALE = 21; - } - - -} diff --git a/google/ads/googleads/v6/enums/conversion_action_counting_type.proto b/google/ads/googleads/v6/enums/conversion_action_counting_type.proto deleted file mode 100644 index 0ada17e9f..000000000 --- a/google/ads/googleads/v6/enums/conversion_action_counting_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionCountingTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing conversion action counting type. - -// Container for enum describing the conversion deduplication mode for -// conversion optimizer. -message ConversionActionCountingTypeEnum { - // Indicates how conversions for this action will be counted. For more - // information, see https://support.google.com/google-ads/answer/3438531. - enum ConversionActionCountingType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Count only one conversion per click. - ONE_PER_CLICK = 2; - - // Count all conversions per click. - MANY_PER_CLICK = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/conversion_action_status.proto b/google/ads/googleads/v6/enums/conversion_action_status.proto deleted file mode 100644 index 7ec83c9a5..000000000 --- a/google/ads/googleads/v6/enums/conversion_action_status.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing conversion action status. - -// Container for enum describing possible statuses of a conversion action. -message ConversionActionStatusEnum { - // Possible statuses of a conversion action. - enum ConversionActionStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversions will be recorded. - ENABLED = 2; - - // Conversions will not be recorded. - REMOVED = 3; - - // Conversions will not be recorded and the conversion action will not - // appear in the UI. - HIDDEN = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/conversion_action_type.proto b/google/ads/googleads/v6/enums/conversion_action_type.proto deleted file mode 100644 index ac731f93c..000000000 --- a/google/ads/googleads/v6/enums/conversion_action_type.proto +++ /dev/null @@ -1,173 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing conversion action type. - -// Container for enum describing possible types of a conversion action. -message ConversionActionTypeEnum { - // Possible types of a conversion action. - enum ConversionActionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversions that occur when a user clicks on an ad's call extension. - AD_CALL = 2; - - // Conversions that occur when a user on a mobile device clicks a phone - // number. - CLICK_TO_CALL = 3; - - // Conversions that occur when a user downloads a mobile app from the Google - // Play Store. - GOOGLE_PLAY_DOWNLOAD = 4; - - // Conversions that occur when a user makes a purchase in an app through - // Android billing. - GOOGLE_PLAY_IN_APP_PURCHASE = 5; - - // Call conversions that are tracked by the advertiser and uploaded. - UPLOAD_CALLS = 6; - - // Conversions that are tracked by the advertiser and uploaded with - // attributed clicks. - UPLOAD_CLICKS = 7; - - // Conversions that occur on a webpage. - WEBPAGE = 8; - - // Conversions that occur when a user calls a dynamically-generated phone - // number from an advertiser's website. - WEBSITE_CALL = 9; - - // Store Sales conversion based on first-party or third-party merchant - // data uploads. - // Only customers on the allowlist can use store sales direct upload types. - STORE_SALES_DIRECT_UPLOAD = 10; - - // Store Sales conversion based on first-party or third-party merchant - // data uploads and/or from in-store purchases using cards from payment - // networks. - // Only customers on the allowlist can use store sales types. - STORE_SALES = 11; - - // Android app first open conversions tracked via Firebase. - FIREBASE_ANDROID_FIRST_OPEN = 12; - - // Android app in app purchase conversions tracked via Firebase. - FIREBASE_ANDROID_IN_APP_PURCHASE = 13; - - // Android app custom conversions tracked via Firebase. - FIREBASE_ANDROID_CUSTOM = 14; - - // iOS app first open conversions tracked via Firebase. - FIREBASE_IOS_FIRST_OPEN = 15; - - // iOS app in app purchase conversions tracked via Firebase. - FIREBASE_IOS_IN_APP_PURCHASE = 16; - - // iOS app custom conversions tracked via Firebase. - FIREBASE_IOS_CUSTOM = 17; - - // Android app first open conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_ANDROID_FIRST_OPEN = 18; - - // Android app in app purchase conversions tracked via Third Party App - // Analytics. - THIRD_PARTY_APP_ANALYTICS_ANDROID_IN_APP_PURCHASE = 19; - - // Android app custom conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_ANDROID_CUSTOM = 20; - - // iOS app first open conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_IOS_FIRST_OPEN = 21; - - // iOS app in app purchase conversions tracked via Third Party App - // Analytics. - THIRD_PARTY_APP_ANALYTICS_IOS_IN_APP_PURCHASE = 22; - - // iOS app custom conversions tracked via Third Party App Analytics. - THIRD_PARTY_APP_ANALYTICS_IOS_CUSTOM = 23; - - // Conversions that occur when a user pre-registers a mobile app from the - // Google Play Store. Read only. - ANDROID_APP_PRE_REGISTRATION = 24; - - // Conversions that track all Google Play downloads which aren't tracked - // by an app-specific type. Read only. - ANDROID_INSTALLS_ALL_OTHER_APPS = 25; - - // Floodlight activity that counts the number of times that users have - // visited a particular webpage after seeing or clicking on one of - // an advertiser's ads. Read only. - FLOODLIGHT_ACTION = 26; - - // Floodlight activity that tracks the number of sales made or the number - // of items purchased. Can also capture the total value of each sale. - // Read only. - FLOODLIGHT_TRANSACTION = 27; - - // Conversions that track local actions from Google's products and - // services after interacting with an ad. Read only. - GOOGLE_HOSTED = 28; - - // Conversions reported when a user submits a lead form. Read only. - LEAD_FORM_SUBMIT = 29; - - // Conversions that come from Salesforce. Read only. - SALESFORCE = 30; - - // Conversions imported from Search Ads 360 Floodlight data. Read only. - SEARCH_ADS_360 = 31; - - // Call conversions that occur on Smart campaign Ads without call tracking - // setup, using Smart campaign custom criteria. Read only. - SMART_CAMPAIGN_AD_CLICKS_TO_CALL = 32; - - // The user clicks on a call element within Google Maps. Smart campaign - // only. Read only. - SMART_CAMPAIGN_MAP_CLICKS_TO_CALL = 33; - - // The user requests directions to a business location within Google Maps. - // Smart campaign only. Read only. - SMART_CAMPAIGN_MAP_DIRECTIONS = 34; - - // Call conversions that occur on Smart campaign Ads with call tracking - // setup, using Smart campaign custom criteria. Read only. - SMART_CAMPAIGN_TRACKED_CALLS = 35; - - // Conversions that occur when a user visits an advertiser's retail store. - // Read only. - STORE_VISITS = 36; - } - - -} diff --git a/google/ads/googleads/v6/enums/conversion_adjustment_type.proto b/google/ads/googleads/v6/enums/conversion_adjustment_type.proto deleted file mode 100644 index 0db126915..000000000 --- a/google/ads/googleads/v6/enums/conversion_adjustment_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAdjustmentTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing conversion adjustment type. - -// Container for enum describing conversion adjustment types. -message ConversionAdjustmentTypeEnum { - // The different actions advertisers can take to adjust the conversions that - // they already reported. Retractions negate a conversion. Restatements change - // the value of a conversion. - enum ConversionAdjustmentType { - // Not specified. - UNSPECIFIED = 0; - - // Represents value unknown in this version. - UNKNOWN = 1; - - // Negates a conversion so that its total value and count are both zero. - RETRACTION = 2; - - // Changes the value of a conversion. - RESTATEMENT = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/conversion_attribution_event_type.proto b/google/ads/googleads/v6/enums/conversion_attribution_event_type.proto deleted file mode 100644 index 25654c903..000000000 --- a/google/ads/googleads/v6/enums/conversion_attribution_event_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAttributionEventTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum indicating the event type the conversion is attributed to. -message ConversionAttributionEventTypeEnum { - // The event type of conversions that are attributed to. - enum ConversionAttributionEventType { - // Not specified. - UNSPECIFIED = 0; - - // Represents value unknown in this version. - UNKNOWN = 1; - - // The conversion is attributed to an impression. - IMPRESSION = 2; - - // The conversion is attributed to an interaction. - INTERACTION = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/conversion_lag_bucket.proto b/google/ads/googleads/v6/enums/conversion_lag_bucket.proto deleted file mode 100644 index 90a5c4f2c..000000000 --- a/google/ads/googleads/v6/enums/conversion_lag_bucket.proto +++ /dev/null @@ -1,117 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionLagBucketProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum representing the number of days between impression and -// conversion. -message ConversionLagBucketEnum { - // Enum representing the number of days between impression and conversion. - enum ConversionLagBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversion lag bucket from 0 to 1 day. 0 day is included, 1 day is not. - LESS_THAN_ONE_DAY = 2; - - // Conversion lag bucket from 1 to 2 days. 1 day is included, 2 days is not. - ONE_TO_TWO_DAYS = 3; - - // Conversion lag bucket from 2 to 3 days. 2 days is included, - // 3 days is not. - TWO_TO_THREE_DAYS = 4; - - // Conversion lag bucket from 3 to 4 days. 3 days is included, - // 4 days is not. - THREE_TO_FOUR_DAYS = 5; - - // Conversion lag bucket from 4 to 5 days. 4 days is included, - // 5 days is not. - FOUR_TO_FIVE_DAYS = 6; - - // Conversion lag bucket from 5 to 6 days. 5 days is included, - // 6 days is not. - FIVE_TO_SIX_DAYS = 7; - - // Conversion lag bucket from 6 to 7 days. 6 days is included, - // 7 days is not. - SIX_TO_SEVEN_DAYS = 8; - - // Conversion lag bucket from 7 to 8 days. 7 days is included, - // 8 days is not. - SEVEN_TO_EIGHT_DAYS = 9; - - // Conversion lag bucket from 8 to 9 days. 8 days is included, - // 9 days is not. - EIGHT_TO_NINE_DAYS = 10; - - // Conversion lag bucket from 9 to 10 days. 9 days is included, - // 10 days is not. - NINE_TO_TEN_DAYS = 11; - - // Conversion lag bucket from 10 to 11 days. 10 days is included, - // 11 days is not. - TEN_TO_ELEVEN_DAYS = 12; - - // Conversion lag bucket from 11 to 12 days. 11 days is included, - // 12 days is not. - ELEVEN_TO_TWELVE_DAYS = 13; - - // Conversion lag bucket from 12 to 13 days. 12 days is included, - // 13 days is not. - TWELVE_TO_THIRTEEN_DAYS = 14; - - // Conversion lag bucket from 13 to 14 days. 13 days is included, - // 14 days is not. - THIRTEEN_TO_FOURTEEN_DAYS = 15; - - // Conversion lag bucket from 14 to 21 days. 14 days is included, - // 21 days is not. - FOURTEEN_TO_TWENTY_ONE_DAYS = 16; - - // Conversion lag bucket from 21 to 30 days. 21 days is included, - // 30 days is not. - TWENTY_ONE_TO_THIRTY_DAYS = 17; - - // Conversion lag bucket from 30 to 45 days. 30 days is included, - // 45 days is not. - THIRTY_TO_FORTY_FIVE_DAYS = 18; - - // Conversion lag bucket from 45 to 60 days. 45 days is included, - // 60 days is not. - FORTY_FIVE_TO_SIXTY_DAYS = 19; - - // Conversion lag bucket from 60 to 90 days. 60 days is included, - // 90 days is not. - SIXTY_TO_NINETY_DAYS = 20; - } - - -} diff --git a/google/ads/googleads/v6/enums/conversion_or_adjustment_lag_bucket.proto b/google/ads/googleads/v6/enums/conversion_or_adjustment_lag_bucket.proto deleted file mode 100644 index 254552784..000000000 --- a/google/ads/googleads/v6/enums/conversion_or_adjustment_lag_bucket.proto +++ /dev/null @@ -1,206 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ConversionOrAdjustmentLagBucketProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum representing the number of days between the impression and -// the conversion or between the impression and adjustments to the conversion. -message ConversionOrAdjustmentLagBucketEnum { - // Enum representing the number of days between the impression and the - // conversion or between the impression and adjustments to the conversion. - enum ConversionOrAdjustmentLagBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conversion lag bucket from 0 to 1 day. 0 day is included, 1 day is not. - CONVERSION_LESS_THAN_ONE_DAY = 2; - - // Conversion lag bucket from 1 to 2 days. 1 day is included, 2 days is not. - CONVERSION_ONE_TO_TWO_DAYS = 3; - - // Conversion lag bucket from 2 to 3 days. 2 days is included, - // 3 days is not. - CONVERSION_TWO_TO_THREE_DAYS = 4; - - // Conversion lag bucket from 3 to 4 days. 3 days is included, - // 4 days is not. - CONVERSION_THREE_TO_FOUR_DAYS = 5; - - // Conversion lag bucket from 4 to 5 days. 4 days is included, - // 5 days is not. - CONVERSION_FOUR_TO_FIVE_DAYS = 6; - - // Conversion lag bucket from 5 to 6 days. 5 days is included, - // 6 days is not. - CONVERSION_FIVE_TO_SIX_DAYS = 7; - - // Conversion lag bucket from 6 to 7 days. 6 days is included, - // 7 days is not. - CONVERSION_SIX_TO_SEVEN_DAYS = 8; - - // Conversion lag bucket from 7 to 8 days. 7 days is included, - // 8 days is not. - CONVERSION_SEVEN_TO_EIGHT_DAYS = 9; - - // Conversion lag bucket from 8 to 9 days. 8 days is included, - // 9 days is not. - CONVERSION_EIGHT_TO_NINE_DAYS = 10; - - // Conversion lag bucket from 9 to 10 days. 9 days is included, - // 10 days is not. - CONVERSION_NINE_TO_TEN_DAYS = 11; - - // Conversion lag bucket from 10 to 11 days. 10 days is included, - // 11 days is not. - CONVERSION_TEN_TO_ELEVEN_DAYS = 12; - - // Conversion lag bucket from 11 to 12 days. 11 days is included, - // 12 days is not. - CONVERSION_ELEVEN_TO_TWELVE_DAYS = 13; - - // Conversion lag bucket from 12 to 13 days. 12 days is included, - // 13 days is not. - CONVERSION_TWELVE_TO_THIRTEEN_DAYS = 14; - - // Conversion lag bucket from 13 to 14 days. 13 days is included, - // 14 days is not. - CONVERSION_THIRTEEN_TO_FOURTEEN_DAYS = 15; - - // Conversion lag bucket from 14 to 21 days. 14 days is included, - // 21 days is not. - CONVERSION_FOURTEEN_TO_TWENTY_ONE_DAYS = 16; - - // Conversion lag bucket from 21 to 30 days. 21 days is included, - // 30 days is not. - CONVERSION_TWENTY_ONE_TO_THIRTY_DAYS = 17; - - // Conversion lag bucket from 30 to 45 days. 30 days is included, - // 45 days is not. - CONVERSION_THIRTY_TO_FORTY_FIVE_DAYS = 18; - - // Conversion lag bucket from 45 to 60 days. 45 days is included, - // 60 days is not. - CONVERSION_FORTY_FIVE_TO_SIXTY_DAYS = 19; - - // Conversion lag bucket from 60 to 90 days. 60 days is included, - // 90 days is not. - CONVERSION_SIXTY_TO_NINETY_DAYS = 20; - - // Conversion adjustment lag bucket from 0 to 1 day. 0 day is included, - // 1 day is not. - ADJUSTMENT_LESS_THAN_ONE_DAY = 21; - - // Conversion adjustment lag bucket from 1 to 2 days. 1 day is included, - // 2 days is not. - ADJUSTMENT_ONE_TO_TWO_DAYS = 22; - - // Conversion adjustment lag bucket from 2 to 3 days. 2 days is included, - // 3 days is not. - ADJUSTMENT_TWO_TO_THREE_DAYS = 23; - - // Conversion adjustment lag bucket from 3 to 4 days. 3 days is included, - // 4 days is not. - ADJUSTMENT_THREE_TO_FOUR_DAYS = 24; - - // Conversion adjustment lag bucket from 4 to 5 days. 4 days is included, - // 5 days is not. - ADJUSTMENT_FOUR_TO_FIVE_DAYS = 25; - - // Conversion adjustment lag bucket from 5 to 6 days. 5 days is included, - // 6 days is not. - ADJUSTMENT_FIVE_TO_SIX_DAYS = 26; - - // Conversion adjustment lag bucket from 6 to 7 days. 6 days is included, - // 7 days is not. - ADJUSTMENT_SIX_TO_SEVEN_DAYS = 27; - - // Conversion adjustment lag bucket from 7 to 8 days. 7 days is included, - // 8 days is not. - ADJUSTMENT_SEVEN_TO_EIGHT_DAYS = 28; - - // Conversion adjustment lag bucket from 8 to 9 days. 8 days is included, - // 9 days is not. - ADJUSTMENT_EIGHT_TO_NINE_DAYS = 29; - - // Conversion adjustment lag bucket from 9 to 10 days. 9 days is included, - // 10 days is not. - ADJUSTMENT_NINE_TO_TEN_DAYS = 30; - - // Conversion adjustment lag bucket from 10 to 11 days. 10 days is included, - // 11 days is not. - ADJUSTMENT_TEN_TO_ELEVEN_DAYS = 31; - - // Conversion adjustment lag bucket from 11 to 12 days. 11 days is included, - // 12 days is not. - ADJUSTMENT_ELEVEN_TO_TWELVE_DAYS = 32; - - // Conversion adjustment lag bucket from 12 to 13 days. 12 days is included, - // 13 days is not. - ADJUSTMENT_TWELVE_TO_THIRTEEN_DAYS = 33; - - // Conversion adjustment lag bucket from 13 to 14 days. 13 days is included, - // 14 days is not. - ADJUSTMENT_THIRTEEN_TO_FOURTEEN_DAYS = 34; - - // Conversion adjustment lag bucket from 14 to 21 days. 14 days is included, - // 21 days is not. - ADJUSTMENT_FOURTEEN_TO_TWENTY_ONE_DAYS = 35; - - // Conversion adjustment lag bucket from 21 to 30 days. 21 days is included, - // 30 days is not. - ADJUSTMENT_TWENTY_ONE_TO_THIRTY_DAYS = 36; - - // Conversion adjustment lag bucket from 30 to 45 days. 30 days is included, - // 45 days is not. - ADJUSTMENT_THIRTY_TO_FORTY_FIVE_DAYS = 37; - - // Conversion adjustment lag bucket from 45 to 60 days. 45 days is included, - // 60 days is not. - ADJUSTMENT_FORTY_FIVE_TO_SIXTY_DAYS = 38; - - // Conversion adjustment lag bucket from 60 to 90 days. 60 days is included, - // 90 days is not. - ADJUSTMENT_SIXTY_TO_NINETY_DAYS = 39; - - // Conversion adjustment lag bucket from 90 to 145 days. 90 days is - // included, 145 days is not. - ADJUSTMENT_NINETY_TO_ONE_HUNDRED_AND_FORTY_FIVE_DAYS = 40; - - // Conversion lag bucket UNKNOWN. This is for dates before conversion lag - // bucket was available in Google Ads. - CONVERSION_UNKNOWN = 41; - - // Conversion adjustment lag bucket UNKNOWN. This is for dates before - // conversion adjustment lag bucket was available in Google Ads. - ADJUSTMENT_UNKNOWN = 42; - } - - -} diff --git a/google/ads/googleads/v6/enums/criterion_category_channel_availability_mode.proto b/google/ads/googleads/v6/enums/criterion_category_channel_availability_mode.proto deleted file mode 100644 index 15d71417c..000000000 --- a/google/ads/googleads/v6/enums/criterion_category_channel_availability_mode.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionCategoryChannelAvailabilityModeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing the criterion category channel availability mode. - -// Describes channel availability mode for a criterion availability - whether -// the availability is meant to include all advertising channels, or a -// particular channel with all its channel subtypes, or a channel with a certain -// subset of channel subtypes. -message CriterionCategoryChannelAvailabilityModeEnum { - // Enum containing the possible CriterionCategoryChannelAvailabilityMode. - enum CriterionCategoryChannelAvailabilityMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The category is available to campaigns of all channel types and subtypes. - ALL_CHANNELS = 2; - - // The category is available to campaigns of a specific channel type, - // including all subtypes under it. - CHANNEL_TYPE_AND_ALL_SUBTYPES = 3; - - // The category is available to campaigns of a specific channel type and - // subtype(s). - CHANNEL_TYPE_AND_SUBSET_SUBTYPES = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/criterion_category_locale_availability_mode.proto b/google/ads/googleads/v6/enums/criterion_category_locale_availability_mode.proto deleted file mode 100644 index 3e50af621..000000000 --- a/google/ads/googleads/v6/enums/criterion_category_locale_availability_mode.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionCategoryLocaleAvailabilityModeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing the criterion category locale availability mode. - -// Describes locale availability mode for a criterion availability - whether -// it's available globally, or a particular country with all languages, or a -// particular language with all countries, or a country-language pair. -message CriterionCategoryLocaleAvailabilityModeEnum { - // Enum containing the possible CriterionCategoryLocaleAvailabilityMode. - enum CriterionCategoryLocaleAvailabilityMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The category is available to campaigns of all locales. - ALL_LOCALES = 2; - - // The category is available to campaigns within a list of countries, - // regardless of language. - COUNTRY_AND_ALL_LANGUAGES = 3; - - // The category is available to campaigns within a list of languages, - // regardless of country. - LANGUAGE_AND_ALL_COUNTRIES = 4; - - // The category is available to campaigns within a list of country, language - // pairs. - COUNTRY_AND_LANGUAGE = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/criterion_system_serving_status.proto b/google/ads/googleads/v6/enums/criterion_system_serving_status.proto deleted file mode 100644 index 4133b6350..000000000 --- a/google/ads/googleads/v6/enums/criterion_system_serving_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionSystemServingStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing approval status for the criterion. - -// Container for enum describing possible criterion system serving statuses. -message CriterionSystemServingStatusEnum { - // Enumerates criterion system serving statuses. - enum CriterionSystemServingStatus { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Eligible. - ELIGIBLE = 2; - - // Low search volume. - RARELY_SERVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/criterion_type.proto b/google/ads/googleads/v6/enums/criterion_type.proto deleted file mode 100644 index e426d2b54..000000000 --- a/google/ads/googleads/v6/enums/criterion_type.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CriterionTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing criteria types. - -// The possible types of a criterion. -message CriterionTypeEnum { - // Enum describing possible criterion types. - enum CriterionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Keyword. e.g. 'mars cruise'. - KEYWORD = 2; - - // Placement, aka Website. e.g. 'www.flowers4sale.com' - PLACEMENT = 3; - - // Mobile application categories to target. - MOBILE_APP_CATEGORY = 4; - - // Mobile applications to target. - MOBILE_APPLICATION = 5; - - // Devices to target. - DEVICE = 6; - - // Locations to target. - LOCATION = 7; - - // Listing groups to target. - LISTING_GROUP = 8; - - // Ad Schedule. - AD_SCHEDULE = 9; - - // Age range. - AGE_RANGE = 10; - - // Gender. - GENDER = 11; - - // Income Range. - INCOME_RANGE = 12; - - // Parental status. - PARENTAL_STATUS = 13; - - // YouTube Video. - YOUTUBE_VIDEO = 14; - - // YouTube Channel. - YOUTUBE_CHANNEL = 15; - - // User list. - USER_LIST = 16; - - // Proximity. - PROXIMITY = 17; - - // A topic target on the display network (e.g. "Pets & Animals"). - TOPIC = 18; - - // Listing scope to target. - LISTING_SCOPE = 19; - - // Language. - LANGUAGE = 20; - - // IpBlock. - IP_BLOCK = 21; - - // Content Label for category exclusion. - CONTENT_LABEL = 22; - - // Carrier. - CARRIER = 23; - - // A category the user is interested in. - USER_INTEREST = 24; - - // Webpage criterion for dynamic search ads. - WEBPAGE = 25; - - // Operating system version. - OPERATING_SYSTEM_VERSION = 26; - - // App payment model. - APP_PAYMENT_MODEL = 27; - - // Mobile device. - MOBILE_DEVICE = 28; - - // Custom affinity. - CUSTOM_AFFINITY = 29; - - // Custom intent. - CUSTOM_INTENT = 30; - - // Location group. - LOCATION_GROUP = 31; - - // Custom audience - CUSTOM_AUDIENCE = 32; - - // Combined audience - COMBINED_AUDIENCE = 33; - } - - -} diff --git a/google/ads/googleads/v6/enums/custom_audience_member_type.proto b/google/ads/googleads/v6/enums/custom_audience_member_type.proto deleted file mode 100644 index 9caa4da5c..000000000 --- a/google/ads/googleads/v6/enums/custom_audience_member_type.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomAudienceMemberTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing custom audience member type. - -// The type of custom audience member. -message CustomAudienceMemberTypeEnum { - // Enum containing possible custom audience member types. - enum CustomAudienceMemberType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Users whose interests or actions are described by a keyword. - KEYWORD = 2; - - // Users who have interests related to the website's content. - URL = 3; - - // Users who visit place types described by a place category. - PLACE_CATEGORY = 4; - - // Users who have installed a mobile app. - APP = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/custom_audience_status.proto b/google/ads/googleads/v6/enums/custom_audience_status.proto deleted file mode 100644 index 059bf3021..000000000 --- a/google/ads/googleads/v6/enums/custom_audience_status.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomAudienceStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing custom audience status. - -// The status of custom audience. -message CustomAudienceStatusEnum { - // Enum containing possible custom audience statuses. - enum CustomAudienceStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Enabled status - custom audience is enabled and can be targeted. - ENABLED = 2; - - // Removed status - custom audience is removed and cannot be used for - // targeting. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/custom_audience_type.proto b/google/ads/googleads/v6/enums/custom_audience_type.proto deleted file mode 100644 index 444ee3943..000000000 --- a/google/ads/googleads/v6/enums/custom_audience_type.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomAudienceTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing custom audience type. - -// The types of custom audience. -message CustomAudienceTypeEnum { - // Enum containing possible custom audience types. - enum CustomAudienceType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Google Ads will auto-select the best interpretation at serving - // time. - AUTO = 2; - - // Matches users by their interests. - INTEREST = 3; - - // Matches users by topics they are researching or products they are - // considering for purchase. - PURCHASE_INTENT = 4; - - // Matches users by what they searched on Google Search. - SEARCH = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/custom_interest_member_type.proto b/google/ads/googleads/v6/enums/custom_interest_member_type.proto deleted file mode 100644 index 7eb15cb8c..000000000 --- a/google/ads/googleads/v6/enums/custom_interest_member_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestMemberTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing custom interest member type. - -// The types of custom interest member, either KEYWORD or URL. -message CustomInterestMemberTypeEnum { - // Enum containing possible custom interest member types. - enum CustomInterestMemberType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Custom interest member type KEYWORD. - KEYWORD = 2; - - // Custom interest member type URL. - URL = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/custom_interest_status.proto b/google/ads/googleads/v6/enums/custom_interest_status.proto deleted file mode 100644 index a8dddcbc9..000000000 --- a/google/ads/googleads/v6/enums/custom_interest_status.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing custom interest status. - -// The status of custom interest. -message CustomInterestStatusEnum { - // Enum containing possible custom interest types. - enum CustomInterestStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Enabled status - custom interest is enabled and can be targeted to. - ENABLED = 2; - - // Removed status - custom interest is removed and cannot be used for - // targeting. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/custom_interest_type.proto b/google/ads/googleads/v6/enums/custom_interest_type.proto deleted file mode 100644 index 2ee3e0dcd..000000000 --- a/google/ads/googleads/v6/enums/custom_interest_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing custom interest type. - -// The types of custom interest. -message CustomInterestTypeEnum { - // Enum containing possible custom interest types. - enum CustomInterestType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Allows brand advertisers to define custom affinity audience lists. - CUSTOM_AFFINITY = 2; - - // Allows advertisers to define custom intent audience lists. - CUSTOM_INTENT = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/custom_placeholder_field.proto b/google/ads/googleads/v6/enums/custom_placeholder_field.proto deleted file mode 100644 index 7455128e3..000000000 --- a/google/ads/googleads/v6/enums/custom_placeholder_field.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Custom placeholder fields. - -// Values for Custom placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message CustomPlaceholderFieldEnum { - // Possible values for Custom placeholder fields. - enum CustomPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Combination ID and ID2 must be unique per - // offer. - ID = 2; - - // Data Type: STRING. Combination ID and ID2 must be unique per offer. - ID2 = 3; - - // Data Type: STRING. Required. Main headline with product name to be shown - // in dynamic ad. - ITEM_TITLE = 4; - - // Data Type: STRING. Optional text to be shown in the image ad. - ITEM_SUBTITLE = 5; - - // Data Type: STRING. Optional description of the product to be shown in the - // ad. - ITEM_DESCRIPTION = 6; - - // Data Type: STRING. Full address of your offer or service, including - // postal code. This will be used to identify the closest product to the - // user when there are multiple offers in the feed that are relevant to the - // user. - ITEM_ADDRESS = 7; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - PRICE = 8; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 9; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 10; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 11; - - // Data Type: URL. Image to be displayed in the ad. Highly recommended for - // image ads. - IMAGE_URL = 12; - - // Data Type: STRING. Used as a recommendation engine signal to serve items - // in the same category. - ITEM_CATEGORY = 13; - - // Data Type: URL_LIST. Final URLs for the ad when using Upgraded - // URLs. User will be redirected to these URLs when they click on an ad, or - // when they click on a specific product for ads that have multiple - // products. - FINAL_URLS = 14; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 15; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 16; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 17; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 18; - - // Data Type: STRING_LIST. List of recommended IDs to show together with - // this item. - SIMILAR_IDS = 19; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 20; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 21; - } - - -} diff --git a/google/ads/googleads/v6/enums/customer_match_upload_key_type.proto b/google/ads/googleads/v6/enums/customer_match_upload_key_type.proto deleted file mode 100644 index ee31a84a7..000000000 --- a/google/ads/googleads/v6/enums/customer_match_upload_key_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomerMatchUploadKeyTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Indicates what type of data are the user list's members matched from. -message CustomerMatchUploadKeyTypeEnum { - // Enum describing possible customer match upload key types. - enum CustomerMatchUploadKeyType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Members are matched from customer info such as email address, phone - // number or physical address. - CONTACT_INFO = 2; - - // Members are matched from a user id generated and assigned by the - // advertiser. - CRM_ID = 3; - - // Members are matched from mobile advertising ids. - MOBILE_ADVERTISING_ID = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/customer_pay_per_conversion_eligibility_failure_reason.proto b/google/ads/googleads/v6/enums/customer_pay_per_conversion_eligibility_failure_reason.proto deleted file mode 100644 index 32f3d5f0e..000000000 --- a/google/ads/googleads/v6/enums/customer_pay_per_conversion_eligibility_failure_reason.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "CustomerPayPerConversionEligibilityFailureReasonProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing pay per conversion eligibility failure reasons. - -// Container for enum describing reasons why a customer is not eligible to use -// PaymentMode.CONVERSIONS. -message CustomerPayPerConversionEligibilityFailureReasonEnum { - // Enum describing possible reasons a customer is not eligible to use - // PaymentMode.CONVERSIONS. - enum CustomerPayPerConversionEligibilityFailureReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Customer does not have enough conversions. - NOT_ENOUGH_CONVERSIONS = 2; - - // Customer's conversion lag is too high. - CONVERSION_LAG_TOO_HIGH = 3; - - // Customer uses shared budgets. - HAS_CAMPAIGN_WITH_SHARED_BUDGET = 4; - - // Customer has conversions with ConversionActionType.UPLOAD_CLICKS. - HAS_UPLOAD_CLICKS_CONVERSION = 5; - - // Customer's average daily spend is too high. - AVERAGE_DAILY_SPEND_TOO_HIGH = 6; - - // Customer's eligibility has not yet been calculated by the Google Ads - // backend. Check back soon. - ANALYSIS_NOT_COMPLETE = 7; - - // Customer is not eligible due to other reasons. - OTHER = 8; - } - - -} diff --git a/google/ads/googleads/v6/enums/data_driven_model_status.proto b/google/ads/googleads/v6/enums/data_driven_model_status.proto deleted file mode 100644 index 63cd23762..000000000 --- a/google/ads/googleads/v6/enums/data_driven_model_status.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DataDrivenModelStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing data-driven model status. - -// Container for enum indicating data driven model status. -message DataDrivenModelStatusEnum { - // Enumerates data driven model statuses. - enum DataDrivenModelStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The data driven model is available. - AVAILABLE = 2; - - // The data driven model is stale. It hasn't been updated for at least 7 - // days. It is still being used, but will become expired if it does not get - // updated for 30 days. - STALE = 3; - - // The data driven model expired. It hasn't been updated for at least 30 - // days and cannot be used. Most commonly this is because there hasn't been - // the required number of events in a recent 30-day period. - EXPIRED = 4; - - // The data driven model has never been generated. Most commonly this is - // because there has never been the required number of events in any 30-day - // period. - NEVER_GENERATED = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/day_of_week.proto b/google/ads/googleads/v6/enums/day_of_week.proto deleted file mode 100644 index 64486c603..000000000 --- a/google/ads/googleads/v6/enums/day_of_week.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DayOfWeekProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing days of week. - -// Container for enumeration of days of the week, e.g., "Monday". -message DayOfWeekEnum { - // Enumerates days of the week, e.g., "Monday". - enum DayOfWeek { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Monday. - MONDAY = 2; - - // Tuesday. - TUESDAY = 3; - - // Wednesday. - WEDNESDAY = 4; - - // Thursday. - THURSDAY = 5; - - // Friday. - FRIDAY = 6; - - // Saturday. - SATURDAY = 7; - - // Sunday. - SUNDAY = 8; - } - - -} diff --git a/google/ads/googleads/v6/enums/device.proto b/google/ads/googleads/v6/enums/device.proto deleted file mode 100644 index 19e1a51c9..000000000 --- a/google/ads/googleads/v6/enums/device.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DeviceProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing devices. - -// Container for enumeration of Google Ads devices available for targeting. -message DeviceEnum { - // Enumerates Google Ads devices available for targeting. - enum Device { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Mobile devices with full browsers. - MOBILE = 2; - - // Tablets with full browsers. - TABLET = 3; - - // Computers. - DESKTOP = 4; - - // Smart TVs and game consoles. - CONNECTED_TV = 6; - - // Other device types. - OTHER = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/display_ad_format_setting.proto b/google/ads/googleads/v6/enums/display_ad_format_setting.proto deleted file mode 100644 index 8d1958d57..000000000 --- a/google/ads/googleads/v6/enums/display_ad_format_setting.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DisplayAdFormatSettingProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing display ad format settings. - -// Container for display ad format settings. -message DisplayAdFormatSettingEnum { - // Enumerates display ad format settings. - enum DisplayAdFormatSetting { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Text, image and native formats. - ALL_FORMATS = 2; - - // Text and image formats. - NON_NATIVE = 3; - - // Native format, i.e. the format rendering is controlled by the publisher - // and not by Google. - NATIVE = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/display_upload_product_type.proto b/google/ads/googleads/v6/enums/display_upload_product_type.proto deleted file mode 100644 index f6024f88b..000000000 --- a/google/ads/googleads/v6/enums/display_upload_product_type.proto +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DisplayUploadProductTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing display upload product types. - -// Container for display upload product types. Product types that have the word -// "DYNAMIC" in them must be associated with a campaign that has a dynamic -// remarketing feed. See https://support.google.com/google-ads/answer/6053288 -// for more info about dynamic remarketing. Other product types are regarded -// as "static" and do not have this requirement. -message DisplayUploadProductTypeEnum { - // Enumerates display upload product types. - enum DisplayUploadProductType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // HTML5 upload ad. This product type requires the upload_media_bundle - // field in DisplayUploadAdInfo to be set. - HTML5_UPLOAD_AD = 2; - - // Dynamic HTML5 education ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in an education campaign. - DYNAMIC_HTML5_EDUCATION_AD = 3; - - // Dynamic HTML5 flight ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a flight campaign. - DYNAMIC_HTML5_FLIGHT_AD = 4; - - // Dynamic HTML5 hotel and rental ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a hotel campaign. - DYNAMIC_HTML5_HOTEL_RENTAL_AD = 5; - - // Dynamic HTML5 job ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a job campaign. - DYNAMIC_HTML5_JOB_AD = 6; - - // Dynamic HTML5 local ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a local campaign. - DYNAMIC_HTML5_LOCAL_AD = 7; - - // Dynamic HTML5 real estate ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a real estate campaign. - DYNAMIC_HTML5_REAL_ESTATE_AD = 8; - - // Dynamic HTML5 custom ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a custom campaign. - DYNAMIC_HTML5_CUSTOM_AD = 9; - - // Dynamic HTML5 travel ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a travel campaign. - DYNAMIC_HTML5_TRAVEL_AD = 10; - - // Dynamic HTML5 hotel ad. This product type requires the - // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be - // used in a hotel campaign. - DYNAMIC_HTML5_HOTEL_AD = 11; - } - - -} diff --git a/google/ads/googleads/v6/enums/distance_bucket.proto b/google/ads/googleads/v6/enums/distance_bucket.proto deleted file mode 100644 index 277d02d55..000000000 --- a/google/ads/googleads/v6/enums/distance_bucket.proto +++ /dev/null @@ -1,127 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DistanceBucketProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing distance buckets. - -// Container for distance buckets of a user’s distance from an advertiser’s -// location extension. -message DistanceBucketEnum { - // The distance bucket for a user’s distance from an advertiser’s location - // extension. - enum DistanceBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // User was within 700m of the location. - WITHIN_700M = 2; - - // User was within 1KM of the location. - WITHIN_1KM = 3; - - // User was within 5KM of the location. - WITHIN_5KM = 4; - - // User was within 10KM of the location. - WITHIN_10KM = 5; - - // User was within 15KM of the location. - WITHIN_15KM = 6; - - // User was within 20KM of the location. - WITHIN_20KM = 7; - - // User was within 25KM of the location. - WITHIN_25KM = 8; - - // User was within 30KM of the location. - WITHIN_30KM = 9; - - // User was within 35KM of the location. - WITHIN_35KM = 10; - - // User was within 40KM of the location. - WITHIN_40KM = 11; - - // User was within 45KM of the location. - WITHIN_45KM = 12; - - // User was within 50KM of the location. - WITHIN_50KM = 13; - - // User was within 55KM of the location. - WITHIN_55KM = 14; - - // User was within 60KM of the location. - WITHIN_60KM = 15; - - // User was within 65KM of the location. - WITHIN_65KM = 16; - - // User was beyond 65KM of the location. - BEYOND_65KM = 17; - - // User was within 0.7 miles of the location. - WITHIN_0_7MILES = 18; - - // User was within 1 mile of the location. - WITHIN_1MILE = 19; - - // User was within 5 miles of the location. - WITHIN_5MILES = 20; - - // User was within 10 miles of the location. - WITHIN_10MILES = 21; - - // User was within 15 miles of the location. - WITHIN_15MILES = 22; - - // User was within 20 miles of the location. - WITHIN_20MILES = 23; - - // User was within 25 miles of the location. - WITHIN_25MILES = 24; - - // User was within 30 miles of the location. - WITHIN_30MILES = 25; - - // User was within 35 miles of the location. - WITHIN_35MILES = 26; - - // User was within 40 miles of the location. - WITHIN_40MILES = 27; - - // User was beyond 40 miles of the location. - BEYOND_40MILES = 28; - } - - -} diff --git a/google/ads/googleads/v6/enums/dsa_page_feed_criterion_field.proto b/google/ads/googleads/v6/enums/dsa_page_feed_criterion_field.proto deleted file mode 100644 index 601a150c0..000000000 --- a/google/ads/googleads/v6/enums/dsa_page_feed_criterion_field.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "DsaPageFeedCriterionFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Dynamic Search Ad Page Feed criterion fields. - -// Values for Dynamic Search Ad Page Feed criterion fields. -message DsaPageFeedCriterionFieldEnum { - // Possible values for Dynamic Search Ad Page Feed criterion fields. - enum DsaPageFeedCriterionField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: URL or URL_LIST. URL of the web page you want to target. - PAGE_URL = 2; - - // Data Type: STRING_LIST. The labels that will help you target ads within - // your page feed. - LABEL = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/education_placeholder_field.proto b/google/ads/googleads/v6/enums/education_placeholder_field.proto deleted file mode 100644 index 13d9cf8cc..000000000 --- a/google/ads/googleads/v6/enums/education_placeholder_field.proto +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "EducationPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Education placeholder fields. - -// Values for Education placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message EducationPlaceholderFieldEnum { - // Possible values for Education placeholder fields. - enum EducationPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Combination of PROGRAM ID and LOCATION ID - // must be unique per offer. - PROGRAM_ID = 2; - - // Data Type: STRING. Combination of PROGRAM ID and LOCATION ID must be - // unique per offer. - LOCATION_ID = 3; - - // Data Type: STRING. Required. Main headline with program name to be shown - // in dynamic ad. - PROGRAM_NAME = 4; - - // Data Type: STRING. Area of study that can be shown in dynamic ad. - AREA_OF_STUDY = 5; - - // Data Type: STRING. Description of program that can be shown in dynamic - // ad. - PROGRAM_DESCRIPTION = 6; - - // Data Type: STRING. Name of school that can be shown in dynamic ad. - SCHOOL_NAME = 7; - - // Data Type: STRING. Complete school address, including postal code. - ADDRESS = 8; - - // Data Type: URL. Image to be displayed in ads. - THUMBNAIL_IMAGE_URL = 9; - - // Data Type: URL. Alternative hosted file of image to be used in the ad. - ALTERNATIVE_THUMBNAIL_IMAGE_URL = 10; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific program and its location). - FINAL_URLS = 11; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 12; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 13; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 14; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 15; - - // Data Type: STRING_LIST. List of recommended program IDs to show together - // with this item. - SIMILAR_PROGRAM_IDS = 16; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 17; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 18; - } - - -} diff --git a/google/ads/googleads/v6/enums/extension_setting_device.proto b/google/ads/googleads/v6/enums/extension_setting_device.proto deleted file mode 100644 index d33de73e6..000000000 --- a/google/ads/googleads/v6/enums/extension_setting_device.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionSettingDeviceProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing extension setting device type. - -// Container for enum describing extension setting device types. -message ExtensionSettingDeviceEnum { - // Possible device types for an extension setting. - enum ExtensionSettingDevice { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Mobile. The extensions in the extension setting will only serve on - // mobile devices. - MOBILE = 2; - - // Desktop. The extensions in the extension setting will only serve on - // desktop devices. - DESKTOP = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/extension_type.proto b/google/ads/googleads/v6/enums/extension_type.proto deleted file mode 100644 index 6c1f8dcf7..000000000 --- a/google/ads/googleads/v6/enums/extension_type.proto +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing extension type. - -// Container for enum describing possible data types for an extension in an -// extension setting. -message ExtensionTypeEnum { - // Possible data types for an extension in an extension setting. - enum ExtensionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // None. - NONE = 2; - - // App. - APP = 3; - - // Call. - CALL = 4; - - // Callout. - CALLOUT = 5; - - // Message. - MESSAGE = 6; - - // Price. - PRICE = 7; - - // Promotion. - PROMOTION = 8; - - // Sitelink. - SITELINK = 10; - - // Structured snippet. - STRUCTURED_SNIPPET = 11; - - // Location. - LOCATION = 12; - - // Affiliate location. - AFFILIATE_LOCATION = 13; - - // Hotel callout - HOTEL_CALLOUT = 15; - - // Image. - IMAGE = 16; - } - - -} diff --git a/google/ads/googleads/v6/enums/external_conversion_source.proto b/google/ads/googleads/v6/enums/external_conversion_source.proto deleted file mode 100644 index 76bbfa622..000000000 --- a/google/ads/googleads/v6/enums/external_conversion_source.proto +++ /dev/null @@ -1,149 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ExternalConversionSourceProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum describing the external conversion source that is -// associated with a ConversionAction. -message ExternalConversionSourceEnum { - // The external conversion source that is associated with a ConversionAction. - enum ExternalConversionSource { - // Not specified. - UNSPECIFIED = 0; - - // Represents value unknown in this version. - UNKNOWN = 1; - - // Conversion that occurs when a user navigates to a particular webpage - // after viewing an ad; Displayed in Google Ads UI as 'Website'. - WEBPAGE = 2; - - // Conversion that comes from linked Google Analytics goal or transaction; - // Displayed in Google Ads UI as 'Analytics'. - ANALYTICS = 3; - - // Website conversion that is uploaded through ConversionUploadService; - // Displayed in Google Ads UI as 'Import from clicks'. - UPLOAD = 4; - - // Conversion that occurs when a user clicks on a call extension directly on - // an ad; Displayed in Google Ads UI as 'Calls from ads'. - AD_CALL_METRICS = 5; - - // Conversion that occurs when a user calls a dynamically-generated phone - // number (by installed javascript) from an advertiser's website after - // clicking on an ad; Displayed in Google Ads UI as 'Calls from website'. - WEBSITE_CALL_METRICS = 6; - - // Conversion that occurs when a user visits an advertiser's retail store - // after clicking on a Google ad; - // Displayed in Google Ads UI as 'Store visits'. - STORE_VISITS = 7; - - // Conversion that occurs when a user takes an in-app action such as a - // purchase in an Android app; - // Displayed in Google Ads UI as 'Android in-app action'. - ANDROID_IN_APP = 8; - - // Conversion that occurs when a user takes an in-app action such as a - // purchase in an iOS app; - // Displayed in Google Ads UI as 'iOS in-app action'. - IOS_IN_APP = 9; - - // Conversion that occurs when a user opens an iOS app for the first time; - // Displayed in Google Ads UI as 'iOS app install (first open)'. - IOS_FIRST_OPEN = 10; - - // Legacy app conversions that do not have an AppPlatform provided; - // Displayed in Google Ads UI as 'Mobile app'. - APP_UNSPECIFIED = 11; - - // Conversion that occurs when a user opens an Android app for the first - // time; Displayed in Google Ads UI as 'Android app install (first open)'. - ANDROID_FIRST_OPEN = 12; - - // Call conversion that is uploaded through ConversionUploadService; - // Displayed in Google Ads UI as 'Import from calls'. - UPLOAD_CALLS = 13; - - // Conversion that comes from a linked Firebase event; - // Displayed in Google Ads UI as 'Firebase'. - FIREBASE = 14; - - // Conversion that occurs when a user clicks on a mobile phone number; - // Displayed in Google Ads UI as 'Phone number clicks'. - CLICK_TO_CALL = 15; - - // Conversion that comes from Salesforce; - // Displayed in Google Ads UI as 'Salesforce.com'. - SALESFORCE = 16; - - // Conversion that comes from in-store purchases recorded by CRM; - // Displayed in Google Ads UI as 'Store sales (data partner)'. - STORE_SALES_CRM = 17; - - // Conversion that comes from in-store purchases from payment network; - // Displayed in Google Ads UI as 'Store sales (payment network)'. - STORE_SALES_PAYMENT_NETWORK = 18; - - // Codeless Google Play conversion; - // Displayed in Google Ads UI as 'Google Play'. - GOOGLE_PLAY = 19; - - // Conversion that comes from a linked third-party app analytics event; - // Displayed in Google Ads UI as 'Third-party app analytics'. - THIRD_PARTY_APP_ANALYTICS = 20; - - // Conversion that is controlled by Google Attribution. - GOOGLE_ATTRIBUTION = 21; - - // Store Sales conversion based on first-party or third-party merchant data - // uploads. Displayed in Google Ads UI as 'Store sales (direct upload)'. - STORE_SALES_DIRECT_UPLOAD = 23; - - // Store Sales conversion based on first-party or third-party merchant - // data uploads and/or from in-store purchases using cards from payment - // networks. Displayed in Google Ads UI as 'Store sales'. - STORE_SALES = 24; - - // Conversions imported from Search Ads 360 Floodlight data. - SEARCH_ADS_360 = 25; - - // Conversions that track local actions from Google's products and services - // after interacting with an ad. - GOOGLE_HOSTED = 27; - - // Conversions reported by Floodlight tags. - FLOODLIGHT = 29; - - // Conversions that come from Google Analytics specifically for Search Ads - // 360. Displayed in Google Ads UI as Analytics (SA360). - ANALYTICS_SEARCH_ADS_360 = 31; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_attribute_type.proto b/google/ads/googleads/v6/enums/feed_attribute_type.proto deleted file mode 100644 index 6caa11a84..000000000 --- a/google/ads/googleads/v6/enums/feed_attribute_type.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedAttributeTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed attribute type. - -// Container for enum describing possible data types for a feed attribute. -message FeedAttributeTypeEnum { - // Possible data types for a feed attribute. - enum FeedAttributeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Int64. - INT64 = 2; - - // Double. - DOUBLE = 3; - - // String. - STRING = 4; - - // Boolean. - BOOLEAN = 5; - - // Url. - URL = 6; - - // Datetime. - DATE_TIME = 7; - - // Int64 list. - INT64_LIST = 8; - - // Double (8 bytes) list. - DOUBLE_LIST = 9; - - // String list. - STRING_LIST = 10; - - // Boolean list. - BOOLEAN_LIST = 11; - - // Url list. - URL_LIST = 12; - - // Datetime list. - DATE_TIME_LIST = 13; - - // Price. - PRICE = 14; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_item_quality_approval_status.proto b/google/ads/googleads/v6/enums/feed_item_quality_approval_status.proto deleted file mode 100644 index 71b767860..000000000 --- a/google/ads/googleads/v6/enums/feed_item_quality_approval_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemQualityApprovalStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed item quality evaluation approval statuses. - -// Container for enum describing possible quality evaluation approval statuses -// of a feed item. -message FeedItemQualityApprovalStatusEnum { - // The possible quality evaluation approval statuses of a feed item. - enum FeedItemQualityApprovalStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Meets all quality expectations. - APPROVED = 2; - - // Does not meet some quality expectations. The specific reason is found in - // the quality_disapproval_reasons field. - DISAPPROVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_item_quality_disapproval_reason.proto b/google/ads/googleads/v6/enums/feed_item_quality_disapproval_reason.proto deleted file mode 100644 index b4a34cba1..000000000 --- a/google/ads/googleads/v6/enums/feed_item_quality_disapproval_reason.proto +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemQualityDisapprovalReasonProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed item quality disapproval reasons. - -// Container for enum describing possible quality evaluation disapproval reasons -// of a feed item. -message FeedItemQualityDisapprovalReasonEnum { - // The possible quality evaluation disapproval reasons of a feed item. - enum FeedItemQualityDisapprovalReason { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Price contains repetitive headers. - PRICE_TABLE_REPETITIVE_HEADERS = 2; - - // Price contains repetitive description. - PRICE_TABLE_REPETITIVE_DESCRIPTION = 3; - - // Price contains inconsistent items. - PRICE_TABLE_INCONSISTENT_ROWS = 4; - - // Price contains qualifiers in description. - PRICE_DESCRIPTION_HAS_PRICE_QUALIFIERS = 5; - - // Price contains an unsupported language. - PRICE_UNSUPPORTED_LANGUAGE = 6; - - // Price item header is not relevant to the price type. - PRICE_TABLE_ROW_HEADER_TABLE_TYPE_MISMATCH = 7; - - // Price item header has promotional text. - PRICE_TABLE_ROW_HEADER_HAS_PROMOTIONAL_TEXT = 8; - - // Price item description is not relevant to the item header. - PRICE_TABLE_ROW_DESCRIPTION_NOT_RELEVANT = 9; - - // Price item description contains promotional text. - PRICE_TABLE_ROW_DESCRIPTION_HAS_PROMOTIONAL_TEXT = 10; - - // Price item header and description are repetitive. - PRICE_TABLE_ROW_HEADER_DESCRIPTION_REPETITIVE = 11; - - // Price item is in a foreign language, nonsense, or can't be rated. - PRICE_TABLE_ROW_UNRATEABLE = 12; - - // Price item price is invalid or inaccurate. - PRICE_TABLE_ROW_PRICE_INVALID = 13; - - // Price item URL is invalid or irrelevant. - PRICE_TABLE_ROW_URL_INVALID = 14; - - // Price item header or description has price. - PRICE_HEADER_OR_DESCRIPTION_HAS_PRICE = 15; - - // Structured snippet values do not match the header. - STRUCTURED_SNIPPETS_HEADER_POLICY_VIOLATED = 16; - - // Structured snippet values are repeated. - STRUCTURED_SNIPPETS_REPEATED_VALUES = 17; - - // Structured snippet values violate editorial guidelines like punctuation. - STRUCTURED_SNIPPETS_EDITORIAL_GUIDELINES = 18; - - // Structured snippet contain promotional text. - STRUCTURED_SNIPPETS_HAS_PROMOTIONAL_TEXT = 19; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_item_set_status.proto b/google/ads/googleads/v6/enums/feed_item_set_status.proto deleted file mode 100644 index 7209b4ec8..000000000 --- a/google/ads/googleads/v6/enums/feed_item_set_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemSetStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed item set status. - -// Container for enum describing possible statuses of a feed item set. -message FeedItemSetStatusEnum { - // Possible statuses of a feed item set. - enum FeedItemSetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item set is enabled. - ENABLED = 2; - - // Feed item set has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_item_set_string_filter_type.proto b/google/ads/googleads/v6/enums/feed_item_set_string_filter_type.proto deleted file mode 100644 index 98c1986f0..000000000 --- a/google/ads/googleads/v6/enums/feed_item_set_string_filter_type.proto +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemSetStringFilterTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// The type of string matching to be used for a dynamic FeedItemSet filter. -message FeedItemSetStringFilterTypeEnum { - // describe the possible types for a FeedItemSetStringFilter. - enum FeedItemSetStringFilterType { - // Not specified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The dynamic set filter will use exact string matching. - EXACT = 2; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_item_status.proto b/google/ads/googleads/v6/enums/feed_item_status.proto deleted file mode 100644 index 1c9b5ef80..000000000 --- a/google/ads/googleads/v6/enums/feed_item_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed item status. - -// Container for enum describing possible statuses of a feed item. -message FeedItemStatusEnum { - // Possible statuses of a feed item. - enum FeedItemStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item is enabled. - ENABLED = 2; - - // Feed item has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_item_target_device.proto b/google/ads/googleads/v6/enums/feed_item_target_device.proto deleted file mode 100644 index 43500b566..000000000 --- a/google/ads/googleads/v6/enums/feed_item_target_device.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetDeviceProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed item target device type. - -// Container for enum describing possible data types for a feed item target -// device. -message FeedItemTargetDeviceEnum { - // Possible data types for a feed item target device. - enum FeedItemTargetDevice { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile. - MOBILE = 2; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_item_target_status.proto b/google/ads/googleads/v6/enums/feed_item_target_status.proto deleted file mode 100644 index 25ed69de2..000000000 --- a/google/ads/googleads/v6/enums/feed_item_target_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed item target status. - -// Container for enum describing possible statuses of a feed item target. -message FeedItemTargetStatusEnum { - // Possible statuses of a feed item target. - enum FeedItemTargetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item target is enabled. - ENABLED = 2; - - // Feed item target has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_item_target_type.proto b/google/ads/googleads/v6/enums/feed_item_target_type.proto deleted file mode 100644 index 4e6184364..000000000 --- a/google/ads/googleads/v6/enums/feed_item_target_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed item target type status. - -// Container for enum describing possible types of a feed item target. -message FeedItemTargetTypeEnum { - // Possible type of a feed item target. - enum FeedItemTargetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item targets a campaign. - CAMPAIGN = 2; - - // Feed item targets an ad group. - AD_GROUP = 3; - - // Feed item targets a criterion. - CRITERION = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_item_validation_status.proto b/google/ads/googleads/v6/enums/feed_item_validation_status.proto deleted file mode 100644 index fb3782d8b..000000000 --- a/google/ads/googleads/v6/enums/feed_item_validation_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemValidationStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed item validation statuses. - -// Container for enum describing possible validation statuses of a feed item. -message FeedItemValidationStatusEnum { - // The possible validation statuses of a feed item. - enum FeedItemValidationStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Validation pending. - PENDING = 2; - - // An error was found. - INVALID = 3; - - // Feed item is semantically well-formed. - VALID = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_link_status.proto b/google/ads/googleads/v6/enums/feed_link_status.proto deleted file mode 100644 index 90dee420c..000000000 --- a/google/ads/googleads/v6/enums/feed_link_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedLinkStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing status of a feed link. - -// Container for an enum describing possible statuses of a feed link. -message FeedLinkStatusEnum { - // Possible statuses of a feed link. - enum FeedLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed link is enabled. - ENABLED = 2; - - // Feed link has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_mapping_criterion_type.proto b/google/ads/googleads/v6/enums/feed_mapping_criterion_type.proto deleted file mode 100644 index 34874ac4a..000000000 --- a/google/ads/googleads/v6/enums/feed_mapping_criterion_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingCriterionTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing criterion types for feed mappings. - -// Container for enum describing possible criterion types for a feed mapping. -message FeedMappingCriterionTypeEnum { - // Possible placeholder types for a feed mapping. - enum FeedMappingCriterionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Allows campaign targeting at locations within a location feed. - LOCATION_EXTENSION_TARGETING = 4; - - // Allows url targeting for your dynamic search ads within a page feed. - DSA_PAGE_FEED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_mapping_status.proto b/google/ads/googleads/v6/enums/feed_mapping_status.proto deleted file mode 100644 index 8126d2f99..000000000 --- a/google/ads/googleads/v6/enums/feed_mapping_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed mapping status. - -// Container for enum describing possible statuses of a feed mapping. -message FeedMappingStatusEnum { - // Possible statuses of a feed mapping. - enum FeedMappingStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed mapping is enabled. - ENABLED = 2; - - // Feed mapping has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_origin.proto b/google/ads/googleads/v6/enums/feed_origin.proto deleted file mode 100644 index 0606bf8d9..000000000 --- a/google/ads/googleads/v6/enums/feed_origin.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedOriginProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed origin. - -// Container for enum describing possible values for a feed origin. -message FeedOriginEnum { - // Possible values for a feed origin. - enum FeedOrigin { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The FeedAttributes for this Feed are managed by the - // user. Users can add FeedAttributes to this Feed. - USER = 2; - - // The FeedAttributes for an GOOGLE Feed are created by Google. A feed of - // this type is maintained by Google and will have the correct attributes - // for the placeholder type of the feed. - GOOGLE = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/feed_status.proto b/google/ads/googleads/v6/enums/feed_status.proto deleted file mode 100644 index 19c56b3a8..000000000 --- a/google/ads/googleads/v6/enums/feed_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FeedStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed status. - -// Container for enum describing possible statuses of a feed. -message FeedStatusEnum { - // Possible statuses of a feed. - enum FeedStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed is enabled. - ENABLED = 2; - - // Feed has been removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/flight_placeholder_field.proto b/google/ads/googleads/v6/enums/flight_placeholder_field.proto deleted file mode 100644 index 1316280ca..000000000 --- a/google/ads/googleads/v6/enums/flight_placeholder_field.proto +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FlightsPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Flight placeholder fields. - -// Values for Flight placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message FlightPlaceholderFieldEnum { - // Possible values for Flight placeholder fields. - enum FlightPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Destination id. Example: PAR, LON. - // For feed items that only have destination id, destination id must be a - // unique key. For feed items that have both destination id and origin id, - // then the combination must be a unique key. - DESTINATION_ID = 2; - - // Data Type: STRING. Origin id. Example: PAR, LON. - // Optional. Combination of destination id and origin id must be unique per - // offer. - ORIGIN_ID = 3; - - // Data Type: STRING. Required. Main headline with product name to be shown - // in dynamic ad. - FLIGHT_DESCRIPTION = 4; - - // Data Type: STRING. Shorter names are recommended. - ORIGIN_NAME = 5; - - // Data Type: STRING. Shorter names are recommended. - DESTINATION_NAME = 6; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - FLIGHT_PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - FLIGHT_SALE_PRICE = 9; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 10; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 11; - - // Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded - // URLs. User will be redirected to these URLs when they click on an ad, or - // when they click on a specific flight for ads that show multiple - // flights. - FINAL_URLS = 12; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 13; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 14; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 15; - - // Data Type: STRING_LIST. List of recommended destination IDs to show - // together with this item. - SIMILAR_DESTINATION_IDS = 16; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 17; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 18; - } - - -} diff --git a/google/ads/googleads/v6/enums/frequency_cap_event_type.proto b/google/ads/googleads/v6/enums/frequency_cap_event_type.proto deleted file mode 100644 index a74538b46..000000000 --- a/google/ads/googleads/v6/enums/frequency_cap_event_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapEventTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing frequency caps. - -// Container for enum describing the type of event that the cap applies to. -message FrequencyCapEventTypeEnum { - // The type of event that the cap applies to (e.g. impression). - enum FrequencyCapEventType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The cap applies on ad impressions. - IMPRESSION = 2; - - // The cap applies on video ad views. - VIDEO_VIEW = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/frequency_cap_level.proto b/google/ads/googleads/v6/enums/frequency_cap_level.proto deleted file mode 100644 index 1926d0f99..000000000 --- a/google/ads/googleads/v6/enums/frequency_cap_level.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapLevelProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing frequency caps. - -// Container for enum describing the level on which the cap is to be applied. -message FrequencyCapLevelEnum { - // The level on which the cap is to be applied (e.g ad group ad, ad group). - // Cap is applied to all the resources of this level. - enum FrequencyCapLevel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The cap is applied at the ad group ad level. - AD_GROUP_AD = 2; - - // The cap is applied at the ad group level. - AD_GROUP = 3; - - // The cap is applied at the campaign level. - CAMPAIGN = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/frequency_cap_time_unit.proto b/google/ads/googleads/v6/enums/frequency_cap_time_unit.proto deleted file mode 100644 index 61a66fa8d..000000000 --- a/google/ads/googleads/v6/enums/frequency_cap_time_unit.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "FrequencyCapTimeUnitProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing frequency caps. - -// Container for enum describing the unit of time the cap is defined at. -message FrequencyCapTimeUnitEnum { - // Unit of time the cap is defined at (e.g. day, week). - enum FrequencyCapTimeUnit { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The cap would define limit per one day. - DAY = 2; - - // The cap would define limit per one week. - WEEK = 3; - - // The cap would define limit per one month. - MONTH = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/gender_type.proto b/google/ads/googleads/v6/enums/gender_type.proto deleted file mode 100644 index 0750992d7..000000000 --- a/google/ads/googleads/v6/enums/gender_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GenderTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing gender types. - -// Container for enum describing the type of demographic genders. -message GenderTypeEnum { - // The type of demographic genders (e.g. female). - enum GenderType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Male. - MALE = 10; - - // Female. - FEMALE = 11; - - // Undetermined gender. - UNDETERMINED = 20; - } - - -} diff --git a/google/ads/googleads/v6/enums/geo_target_constant_status.proto b/google/ads/googleads/v6/enums/geo_target_constant_status.proto deleted file mode 100644 index 60f928661..000000000 --- a/google/ads/googleads/v6/enums/geo_target_constant_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing geo target constant statuses. - -// Container for describing the status of a geo target constant. -message GeoTargetConstantStatusEnum { - // The possible statuses of a geo target constant. - enum GeoTargetConstantStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The geo target constant is valid. - ENABLED = 2; - - // The geo target constant is obsolete and will be removed. - REMOVAL_PLANNED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/geo_targeting_restriction.proto b/google/ads/googleads/v6/enums/geo_targeting_restriction.proto deleted file mode 100644 index 4a6ac69f0..000000000 --- a/google/ads/googleads/v6/enums/geo_targeting_restriction.proto +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetingRestrictionProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing GeoTargetingRestriction. - -// Message describing feed item geo targeting restriction. -message GeoTargetingRestrictionEnum { - // A restriction used to determine if the request context's - // geo should be matched. - enum GeoTargetingRestriction { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Indicates that request context should match the physical location of - // the user. - LOCATION_OF_PRESENCE = 2; - } - - -} diff --git a/google/ads/googleads/v6/enums/geo_targeting_type.proto b/google/ads/googleads/v6/enums/geo_targeting_type.proto deleted file mode 100644 index 9c20aeed8..000000000 --- a/google/ads/googleads/v6/enums/geo_targeting_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetingTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing geo targeting types. - -// Container for enum describing possible geo targeting types. -message GeoTargetingTypeEnum { - // The possible geo targeting types. - enum GeoTargetingType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Location the user is interested in while making the query. - AREA_OF_INTEREST = 2; - - // Location of the user issuing the query. - LOCATION_OF_PRESENCE = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/google_ads_field_category.proto b/google/ads/googleads/v6/enums/google_ads_field_category.proto deleted file mode 100644 index 5affb8db9..000000000 --- a/google/ads/googleads/v6/enums/google_ads_field_category.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldCategoryProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing GoogleAdsField categories - -// Container for enum that determines if the described artifact is a resource -// or a field, and if it is a field, when it segments search queries. -message GoogleAdsFieldCategoryEnum { - // The category of the artifact. - enum GoogleAdsFieldCategory { - // Unspecified - UNSPECIFIED = 0; - - // Unknown - UNKNOWN = 1; - - // The described artifact is a resource. - RESOURCE = 2; - - // The described artifact is a field and is an attribute of a resource. - // Including a resource attribute field in a query may segment the query if - // the resource to which it is attributed segments the resource found in - // the FROM clause. - ATTRIBUTE = 3; - - // The described artifact is a field and always segments search queries. - SEGMENT = 5; - - // The described artifact is a field and is a metric. It never segments - // search queries. - METRIC = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/google_ads_field_data_type.proto b/google/ads/googleads/v6/enums/google_ads_field_data_type.proto deleted file mode 100644 index f59c6ca60..000000000 --- a/google/ads/googleads/v6/enums/google_ads_field_data_type.proto +++ /dev/null @@ -1,102 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldDataTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing GoogleAdsField data types - -// Container holding the various data types. -message GoogleAdsFieldDataTypeEnum { - // These are the various types a GoogleAdsService artifact may take on. - enum GoogleAdsFieldDataType { - // Unspecified - UNSPECIFIED = 0; - - // Unknown - UNKNOWN = 1; - - // Maps to google.protobuf.BoolValue - // - // Applicable operators: =, != - BOOLEAN = 2; - - // Maps to google.protobuf.StringValue. It can be compared using the set of - // operators specific to dates however. - // - // Applicable operators: =, <, >, <=, >=, BETWEEN, DURING, and IN - DATE = 3; - - // Maps to google.protobuf.DoubleValue - // - // Applicable operators: =, !=, <, >, IN, NOT IN - DOUBLE = 4; - - // Maps to an enum. It's specific definition can be found at type_url. - // - // Applicable operators: =, !=, IN, NOT IN - ENUM = 5; - - // Maps to google.protobuf.FloatValue - // - // Applicable operators: =, !=, <, >, IN, NOT IN - FLOAT = 6; - - // Maps to google.protobuf.Int32Value - // - // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN - INT32 = 7; - - // Maps to google.protobuf.Int64Value - // - // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN - INT64 = 8; - - // Maps to a protocol buffer message type. The data type's details can be - // found in type_url. - // - // No operators work with MESSAGE fields. - MESSAGE = 9; - - // Maps to google.protobuf.StringValue. Represents the resource name - // (unique id) of a resource or one of its foreign keys. - // - // No operators work with RESOURCE_NAME fields. - RESOURCE_NAME = 10; - - // Maps to google.protobuf.StringValue. - // - // Applicable operators: =, !=, LIKE, NOT LIKE, IN, NOT IN - STRING = 11; - - // Maps to google.protobuf.UInt64Value - // - // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN - UINT64 = 12; - } - - -} diff --git a/google/ads/googleads/v6/enums/google_voice_call_status.proto b/google/ads/googleads/v6/enums/google_voice_call_status.proto deleted file mode 100644 index c686add15..000000000 --- a/google/ads/googleads/v6/enums/google_voice_call_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "GoogleVoiceCallStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing google voice call status. - -// Container for enum describing possible statuses of a google voice call. -message GoogleVoiceCallStatusEnum { - // Possible statuses of a google voice call. - enum GoogleVoiceCallStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The call was missed. - MISSED = 2; - - // The call was received. - RECEIVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/hotel_date_selection_type.proto b/google/ads/googleads/v6/enums/hotel_date_selection_type.proto deleted file mode 100644 index 7f54c9544..000000000 --- a/google/ads/googleads/v6/enums/hotel_date_selection_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelDateSelectionTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing hotel date selection types. - -// Container for enum describing possible hotel date selection types -message HotelDateSelectionTypeEnum { - // Enum describing possible hotel date selection types. - enum HotelDateSelectionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Dates selected by default. - DEFAULT_SELECTION = 50; - - // Dates selected by the user. - USER_SELECTED = 51; - } - - -} diff --git a/google/ads/googleads/v6/enums/hotel_placeholder_field.proto b/google/ads/googleads/v6/enums/hotel_placeholder_field.proto deleted file mode 100644 index f3f99ea57..000000000 --- a/google/ads/googleads/v6/enums/hotel_placeholder_field.proto +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelsPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Hotel placeholder fields. - -// Values for Hotel placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message HotelPlaceholderFieldEnum { - // Possible values for Hotel placeholder fields. - enum HotelPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Unique ID. - PROPERTY_ID = 2; - - // Data Type: STRING. Required. Main headline with property name to be shown - // in dynamic ad. - PROPERTY_NAME = 3; - - // Data Type: STRING. Name of destination to be shown in dynamic ad. - DESTINATION_NAME = 4; - - // Data Type: STRING. Description of destination to be shown in dynamic ad. - DESCRIPTION = 5; - - // Data Type: STRING. Complete property address, including postal code. - ADDRESS = 6; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 9; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 10; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 11; - - // Data Type: STRING. Category of property used to group like items together - // for recommendation engine. - CATEGORY = 12; - - // Data Type: INT64. Star rating (1 to 5) used to group like items - // together for recommendation engine. - STAR_RATING = 13; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 14; - - // Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded - // URLs. User will be redirected to these URLs when they click on an ad, or - // when they click on a specific flight for ads that show multiple - // flights. - FINAL_URLS = 15; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 16; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 17; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 18; - - // Data Type: STRING_LIST. List of recommended property IDs to show together - // with this item. - SIMILAR_PROPERTY_IDS = 19; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 20; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 21; - } - - -} diff --git a/google/ads/googleads/v6/enums/hotel_price_bucket.proto b/google/ads/googleads/v6/enums/hotel_price_bucket.proto deleted file mode 100644 index 085d29d0a..000000000 --- a/google/ads/googleads/v6/enums/hotel_price_bucket.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelPriceBucketProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing hotel price buckets. - -// Container for enum describing hotel price bucket for a hotel itinerary. -message HotelPriceBucketEnum { - // Enum describing possible hotel price buckets. - enum HotelPriceBucket { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Uniquely lowest price. Partner has the lowest price, and no other - // partners are within a small variance of that price. - LOWEST_UNIQUE = 2; - - // Tied for lowest price. Partner is within a small variance of the lowest - // price. - LOWEST_TIED = 3; - - // Not lowest price. Partner is not within a small variance of the lowest - // price. - NOT_LOWEST = 4; - - // Partner was the only one shown. - ONLY_PARTNER_SHOWN = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/hotel_rate_type.proto b/google/ads/googleads/v6/enums/hotel_rate_type.proto deleted file mode 100644 index d9ca241a4..000000000 --- a/google/ads/googleads/v6/enums/hotel_rate_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "HotelRateTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing hotel rate types. - -// Container for enum describing possible hotel rate types. -message HotelRateTypeEnum { - // Enum describing possible hotel rate types. - enum HotelRateType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Rate type information is unavailable. - UNAVAILABLE = 2; - - // Rates available to everyone. - PUBLIC_RATE = 3; - - // A membership program rate is available and satisfies basic requirements - // like having a public rate available. UI treatment will strikethrough the - // public rate and indicate that a discount is available to the user. For - // more on Qualified Rates, visit - // https://developers.google.com/hotels/hotel-ads/dev-guide/qualified-rates - QUALIFIED_RATE = 4; - - // Rates available to users that satisfy some eligibility criteria. e.g. - // all signed-in users, 20% of mobile users, all mobile users in Canada, - // etc. - PRIVATE_RATE = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/image_placeholder_field.proto b/google/ads/googleads/v6/enums/image_placeholder_field.proto deleted file mode 100644 index 7a6d4c76a..000000000 --- a/google/ads/googleads/v6/enums/image_placeholder_field.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ImagePlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Advertiser Provided Image placeholder fields. - -// Values for Advertiser Provided Image placeholder fields. -message ImagePlaceholderFieldEnum { - // Possible values for Advertiser Provided Image placeholder fields. - enum ImagePlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: INT64. The asset ID of the image. - ASSET_ID = 2; - } - - -} diff --git a/google/ads/googleads/v6/enums/income_range_type.proto b/google/ads/googleads/v6/enums/income_range_type.proto deleted file mode 100644 index 0ee86724d..000000000 --- a/google/ads/googleads/v6/enums/income_range_type.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "IncomeRangeTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing income range types. - -// Container for enum describing the type of demographic income ranges. -message IncomeRangeTypeEnum { - // The type of demographic income ranges (e.g. between 0% to 50%). - enum IncomeRangeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // 0%-50%. - INCOME_RANGE_0_50 = 510001; - - // 50% to 60%. - INCOME_RANGE_50_60 = 510002; - - // 60% to 70%. - INCOME_RANGE_60_70 = 510003; - - // 70% to 80%. - INCOME_RANGE_70_80 = 510004; - - // 80% to 90%. - INCOME_RANGE_80_90 = 510005; - - // Greater than 90%. - INCOME_RANGE_90_UP = 510006; - - // Undetermined income range. - INCOME_RANGE_UNDETERMINED = 510000; - } - - -} diff --git a/google/ads/googleads/v6/enums/interaction_event_type.proto b/google/ads/googleads/v6/enums/interaction_event_type.proto deleted file mode 100644 index fc5cd5b8c..000000000 --- a/google/ads/googleads/v6/enums/interaction_event_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "InteractionEventTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing types of payable and free interactions. - -// Container for enum describing types of payable and free interactions. -message InteractionEventTypeEnum { - // Enum describing possible types of payable and free interactions. - enum InteractionEventType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Click to site. In most cases, this interaction navigates to an external - // location, usually the advertiser's landing page. This is also the default - // InteractionEventType for click events. - CLICK = 2; - - // The user's expressed intent to engage with the ad in-place. - ENGAGEMENT = 3; - - // User viewed a video ad. - VIDEO_VIEW = 4; - - // The default InteractionEventType for ad conversion events. - // This is used when an ad conversion row does NOT indicate - // that the free interactions (i.e., the ad conversions) - // should be 'promoted' and reported as part of the core metrics. - // These are simply other (ad) conversions. - NONE = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/interaction_type.proto b/google/ads/googleads/v6/enums/interaction_type.proto deleted file mode 100644 index 30eb3640b..000000000 --- a/google/ads/googleads/v6/enums/interaction_type.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "InteractionTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing interaction types. - -// Container for enum describing possible interaction types. -message InteractionTypeEnum { - // Enum describing possible interaction types. - enum InteractionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Calls. - CALLS = 8000; - } - - -} diff --git a/google/ads/googleads/v6/enums/invoice_type.proto b/google/ads/googleads/v6/enums/invoice_type.proto deleted file mode 100644 index 66d8df996..000000000 --- a/google/ads/googleads/v6/enums/invoice_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing invoice types. - -// Container for enum describing the type of invoices. -message InvoiceTypeEnum { - // The possible type of invoices. - enum InvoiceType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // An invoice with a negative amount. The account receives a credit. - CREDIT_MEMO = 2; - - // An invoice with a positive amount. The account owes a balance. - INVOICE = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/job_placeholder_field.proto b/google/ads/googleads/v6/enums/job_placeholder_field.proto deleted file mode 100644 index a64a491fa..000000000 --- a/google/ads/googleads/v6/enums/job_placeholder_field.proto +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "JobsPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Job placeholder fields. - -// Values for Job placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message JobPlaceholderFieldEnum { - // Possible values for Job placeholder fields. - enum JobPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. If only JOB_ID is specified, then it must be - // unique. If both JOB_ID and LOCATION_ID are specified, then the - // pair must be unique. - // ID) pair must be unique. - JOB_ID = 2; - - // Data Type: STRING. Combination of JOB_ID and LOCATION_ID must be unique - // per offer. - LOCATION_ID = 3; - - // Data Type: STRING. Required. Main headline with job title to be shown in - // dynamic ad. - TITLE = 4; - - // Data Type: STRING. Job subtitle to be shown in dynamic ad. - SUBTITLE = 5; - - // Data Type: STRING. Description of job to be shown in dynamic ad. - DESCRIPTION = 6; - - // Data Type: URL. Image to be displayed in the ad. Highly recommended for - // image ads. - IMAGE_URL = 7; - - // Data Type: STRING. Category of property used to group like items together - // for recommendation engine. - CATEGORY = 8; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 9; - - // Data Type: STRING. Complete property address, including postal code. - ADDRESS = 10; - - // Data Type: STRING. Salary or salary range of job to be shown in dynamic - // ad. - SALARY = 11; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific job and its location). - FINAL_URLS = 12; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 14; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 15; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 16; - - // Data Type: STRING_LIST. List of recommended job IDs to show together with - // this item. - SIMILAR_JOB_IDS = 17; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 18; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 19; - } - - -} diff --git a/google/ads/googleads/v6/enums/keyword_match_type.proto b/google/ads/googleads/v6/enums/keyword_match_type.proto deleted file mode 100644 index 28926a512..000000000 --- a/google/ads/googleads/v6/enums/keyword_match_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordMatchTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Keyword match types. - -// Message describing Keyword match types. -message KeywordMatchTypeEnum { - // Possible Keyword match types. - enum KeywordMatchType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Exact match. - EXACT = 2; - - // Phrase match. - PHRASE = 3; - - // Broad match. - BROAD = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/keyword_plan_competition_level.proto b/google/ads/googleads/v6/enums/keyword_plan_competition_level.proto deleted file mode 100644 index 57a324b74..000000000 --- a/google/ads/googleads/v6/enums/keyword_plan_competition_level.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCompetitionLevelProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Keyword Planner competition levels. - -// Container for enumeration of keyword competition levels. The competition -// level indicates how competitive ad placement is for a keyword and -// is determined by the number of advertisers bidding on that keyword relative -// to all keywords across Google. The competition level can depend on the -// location and Search Network targeting options you've selected. -message KeywordPlanCompetitionLevelEnum { - // Competition level of a keyword. - enum KeywordPlanCompetitionLevel { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Low competition. The Competition Index range for this is [0, 33]. - LOW = 2; - - // Medium competition. The Competition Index range for this is [34, 66]. - MEDIUM = 3; - - // High competition. The Competition Index range for this is [67, 100]. - HIGH = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/keyword_plan_forecast_interval.proto b/google/ads/googleads/v6/enums/keyword_plan_forecast_interval.proto deleted file mode 100644 index d76744d0b..000000000 --- a/google/ads/googleads/v6/enums/keyword_plan_forecast_interval.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanForecastIntervalProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing keyword plan forecast intervals. - -// Container for enumeration of forecast intervals. -message KeywordPlanForecastIntervalEnum { - // Forecast intervals. - enum KeywordPlanForecastInterval { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // The next week date range for keyword plan. The next week is based - // on the default locale of the user's account and is mostly SUN-SAT or - // MON-SUN. - // This can be different from next-7 days. - NEXT_WEEK = 3; - - // The next month date range for keyword plan. - NEXT_MONTH = 4; - - // The next quarter date range for keyword plan. - NEXT_QUARTER = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/keyword_plan_network.proto b/google/ads/googleads/v6/enums/keyword_plan_network.proto deleted file mode 100644 index d4c61a2bf..000000000 --- a/google/ads/googleads/v6/enums/keyword_plan_network.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanNetworkProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Keyword Planner forecastable network types. - -// Container for enumeration of keyword plan forecastable network types. -message KeywordPlanNetworkEnum { - // Enumerates keyword plan forecastable network types. - enum KeywordPlanNetwork { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Google Search. - GOOGLE_SEARCH = 2; - - // Google Search + Search partners. - GOOGLE_SEARCH_AND_PARTNERS = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/label_status.proto b/google/ads/googleads/v6/enums/label_status.proto deleted file mode 100644 index 840877ba0..000000000 --- a/google/ads/googleads/v6/enums/label_status.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LabelStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum describing possible status of a label. -message LabelStatusEnum { - // Possible statuses of a label. - enum LabelStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Label is enabled. - ENABLED = 2; - - // Label is removed. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/lead_form_call_to_action_type.proto b/google/ads/googleads/v6/enums/lead_form_call_to_action_type.proto deleted file mode 100644 index 1454d266a..000000000 --- a/google/ads/googleads/v6/enums/lead_form_call_to_action_type.proto +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LeadFormCallToActionTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Describes the type of call-to-action phrases in a lead form. -message LeadFormCallToActionTypeEnum { - // Enum describing the type of call-to-action phrases in a lead form. - enum LeadFormCallToActionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Learn more. - LEARN_MORE = 2; - - // Get quote. - GET_QUOTE = 3; - - // Apply now. - APPLY_NOW = 4; - - // Sign Up. - SIGN_UP = 5; - - // Contact us. - CONTACT_US = 6; - - // Subscribe. - SUBSCRIBE = 7; - - // Download. - DOWNLOAD = 8; - - // Book now. - BOOK_NOW = 9; - - // Get offer. - GET_OFFER = 10; - - // Register. - REGISTER = 11; - - // Get info. - GET_INFO = 12; - - // Request a demo. - REQUEST_DEMO = 13; - - // Join now. - JOIN_NOW = 14; - - // Get started. - GET_STARTED = 15; - } - - -} diff --git a/google/ads/googleads/v6/enums/lead_form_desired_intent.proto b/google/ads/googleads/v6/enums/lead_form_desired_intent.proto deleted file mode 100644 index 42347dfe1..000000000 --- a/google/ads/googleads/v6/enums/lead_form_desired_intent.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LeadFormDesiredIntentProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Describes the desired level of intent of generated leads. -message LeadFormDesiredIntentEnum { - // Enum describing the desired level of intent of generated leads. - enum LeadFormDesiredIntent { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Deliver more leads at a potentially lower quality. - LOW_INTENT = 2; - - // Only leads with a high level of intent are desired. - HIGH_INTENT = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/lead_form_field_user_input_type.proto b/google/ads/googleads/v6/enums/lead_form_field_user_input_type.proto deleted file mode 100644 index 4db28b5be..000000000 --- a/google/ads/googleads/v6/enums/lead_form_field_user_input_type.proto +++ /dev/null @@ -1,273 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LeadFormFieldUserInputTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Describes the input type of a lead form field. -message LeadFormFieldUserInputTypeEnum { - // Enum describing the input type of a lead form field. - enum LeadFormFieldUserInputType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The user will be asked to fill in their given and family name. This field - // cannot be set at the same time as GIVEN_NAME or FAMILY_NAME. - FULL_NAME = 2; - - // The user will be asked to fill in their given name (first name). This - // field can not be set at the same time as FULL_NAME. - GIVEN_NAME = 6; - - // The user will be asked to fill in their family name (last name). This - // field can not be set at the same time as FULL_NAME. - FAMILY_NAME = 7; - - // The user will be asked to fill in their email address. - EMAIL = 3; - - // The user will be asked to fill in their phone number. - PHONE_NUMBER = 4; - - // The user will be asked to fill in their zip code. - POSTAL_CODE = 5; - - // The user will be asked to fill in their city. - CITY = 9; - - // The user will be asked to fill in their region part of the address (e.g. - // state for US, province for Canada). - REGION = 10; - - // The user will be asked to fill in their country. - COUNTRY = 11; - - // The user will be asked to fill in their work email address. - WORK_EMAIL = 12; - - // The user will be asked to fill in their company name. - COMPANY_NAME = 13; - - // The user will be asked to fill in their work phone. - WORK_PHONE = 14; - - // The user will be asked to fill in their job title. - JOB_TITLE = 15; - - // Question: "Which model are you interested in?" - // Category: "Auto" - VEHICLE_MODEL = 1001; - - // Question: "Which type of vehicle are you interested in?" - // Category: "Auto" - VEHICLE_TYPE = 1002; - - // Question: "What is your preferred dealership?" - // Category: "Auto" - PREFERRED_DEALERSHIP = 1003; - - // Question: "When do you plan on purchasing a vehicle?" - // Category: "Auto" - VEHICLE_PURCHASE_TIMELINE = 1004; - - // Question: "Do you own a vehicle?" - // Category: "Auto" - VEHICLE_OWNERSHIP = 1005; - - // Question: "What vehicle ownership option are you interested in?" - // Category: "Auto" - VEHICLE_PAYMENT_TYPE = 1009; - - // Question: "What type of vehicle condition are you interested in?" - // Category: "Auto" - VEHICLE_CONDITION = 1010; - - // Question: "What size is your company?" - // Category: "Business" - COMPANY_SIZE = 1006; - - // Question: "What is your annual sales volume?" - // Category: "Business" - ANNUAL_SALES = 1007; - - // Question: "How many years have you been in business?" - // Category: "Business" - YEARS_IN_BUSINESS = 1008; - - // Question: "What is your job department?" - // Category: "Business" - JOB_DEPARTMENT = 1011; - - // Question: "What is your job role?" - // Category: "Business" - JOB_ROLE = 1012; - - // Question: "Which program are you interested in?" - // Category: "Education" - EDUCATION_PROGRAM = 1013; - - // Question: "Which course are you interested in?" - // Category: "Education" - EDUCATION_COURSE = 1014; - - // Question: "Which product are you interested in?" - // Category: "General" - PRODUCT = 1016; - - // Question: "Which service are you interested in?" - // Category: "General" - SERVICE = 1017; - - // Question: "Which offer are you interested in?" - // Category: "General" - OFFER = 1018; - - // Question: "Which category are you interested in?" - // Category: "General" - CATEGORY = 1019; - - // Question: "What is your preferred method of contact?" - // Category: "General" - PREFERRED_CONTACT_METHOD = 1020; - - // Question: "What is your preferred location?" - // Category: "General" - PREFERRED_LOCATION = 1021; - - // Question: "What is the best time to contact you?" - // Category: "General" - PREFERRED_CONTACT_TIME = 1022; - - // Question: "When are you looking to make a purchase?" - // Category: "General" - PURCHASE_TIMELINE = 1023; - - // Question: "How many years of work experience do you have?" - // Category: "Jobs" - YEARS_OF_EXPERIENCE = 1048; - - // Question: "What industry do you work in?" - // Category: "Jobs" - JOB_INDUSTRY = 1049; - - // Question: "What is your highest level of education?" - // Category: "Jobs" - LEVEL_OF_EDUCATION = 1050; - - // Question: "What type of property are you looking for?" - // Category: "Real Estate" - PROPERTY_TYPE = 1024; - - // Question: "What do you need a realtor's help with?" - // Category: "Real Estate" - REALTOR_HELP_GOAL = 1025; - - // Question: "What neighborhood are you interested in?" - // Category: "Real Estate" - PROPERTY_COMMUNITY = 1026; - - // Question: "What price range are you looking for?" - // Category: "Real Estate" - PRICE_RANGE = 1027; - - // Question: "How many bedrooms are you looking for?" - // Category: "Real Estate" - NUMBER_OF_BEDROOMS = 1028; - - // Question: "Are you looking for a fully furnished property?" - // Category: "Real Estate" - FURNISHED_PROPERTY = 1029; - - // Question: "Are you looking for properties that allow pets?" - // Category: "Real Estate" - PETS_ALLOWED_PROPERTY = 1030; - - // Question: "What is the next product you plan to purchase?" - // Category: "Retail" - NEXT_PLANNED_PURCHASE = 1031; - - // Question: "Would you like to sign up for an event?" - // Category: "Retail" - EVENT_SIGNUP_INTEREST = 1033; - - // Question: "Where are you interested in shopping?" - // Category: "Retail" - PREFERRED_SHOPPING_PLACES = 1034; - - // Question: "What is your favorite brand?" - // Category: "Retail" - FAVORITE_BRAND = 1035; - - // Question: "Which type of valid commercial license do you have?" - // Category: "Transportation" - TRANSPORTATION_COMMERCIAL_LICENSE_TYPE = 1036; - - // Question: "Interested in booking an event?" - // Category: "Travel" - EVENT_BOOKING_INTEREST = 1038; - - // Question: "What is your destination country?" - // Category: "Travel" - DESTINATION_COUNTRY = 1039; - - // Question: "What is your destination city?" - // Category: "Travel" - DESTINATION_CITY = 1040; - - // Question: "What is your departure country?" - // Category: "Travel" - DEPARTURE_COUNTRY = 1041; - - // Question: "What is your departure city?" - // Category: "Travel" - DEPARTURE_CITY = 1042; - - // Question: "What is your departure date?" - // Category: "Travel" - DEPARTURE_DATE = 1043; - - // Question: "What is your return date?" - // Category: "Travel" - RETURN_DATE = 1044; - - // Question: "How many people are you traveling with?" - // Category: "Travel" - NUMBER_OF_TRAVELERS = 1045; - - // Question: "What is your travel budget?" - // Category: "Travel" - TRAVEL_BUDGET = 1046; - - // Question: "Where do you want to stay during your travel?" - // Category: "Travel" - TRAVEL_ACCOMMODATION = 1047; - } - - -} diff --git a/google/ads/googleads/v6/enums/lead_form_post_submit_call_to_action_type.proto b/google/ads/googleads/v6/enums/lead_form_post_submit_call_to_action_type.proto deleted file mode 100644 index 57696df42..000000000 --- a/google/ads/googleads/v6/enums/lead_form_post_submit_call_to_action_type.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LeadFormPostSubmitCallToActionTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Describes the type of post-submit call-to-action phrases for a lead form. -message LeadFormPostSubmitCallToActionTypeEnum { - // Enum describing the type of post-submit call-to-action phrases for a lead - // form. - enum LeadFormPostSubmitCallToActionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Visit site. - VISIT_SITE = 2; - - // Download. - DOWNLOAD = 3; - - // Learn more. - LEARN_MORE = 4; - - // Shop now. - SHOP_NOW = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/legacy_app_install_ad_app_store.proto b/google/ads/googleads/v6/enums/legacy_app_install_ad_app_store.proto deleted file mode 100644 index f1d043074..000000000 --- a/google/ads/googleads/v6/enums/legacy_app_install_ad_app_store.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LegacyAppInstallAdAppStoreProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing app store types for a legacy app install ad. - -// Container for enum describing app store type in a legacy app install ad. -message LegacyAppInstallAdAppStoreEnum { - // App store type in a legacy app install ad. - enum LegacyAppInstallAdAppStore { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Apple iTunes. - APPLE_APP_STORE = 2; - - // Google Play. - GOOGLE_PLAY = 3; - - // Windows Store. - WINDOWS_STORE = 4; - - // Windows Phone Store. - WINDOWS_PHONE_STORE = 5; - - // The app is hosted in a Chinese app store. - CN_APP_STORE = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/linked_account_type.proto b/google/ads/googleads/v6/enums/linked_account_type.proto deleted file mode 100644 index cdcf3ee91..000000000 --- a/google/ads/googleads/v6/enums/linked_account_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LinkedAccountTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum describing different types of Linked accounts. -message LinkedAccountTypeEnum { - // Describes the possible link types between a Google Ads customer - // and another account. - enum LinkedAccountType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // A link to provide third party app analytics data. - THIRD_PARTY_APP_ANALYTICS = 2; - - // A link to Data partner. - DATA_PARTNER = 3; - - // A link to Google Ads. - GOOGLE_ADS = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/listing_group_type.proto b/google/ads/googleads/v6/enums/listing_group_type.proto deleted file mode 100644 index ff2bf0c49..000000000 --- a/google/ads/googleads/v6/enums/listing_group_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ListingGroupTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing listing groups. - -// Container for enum describing the type of the listing group. -message ListingGroupTypeEnum { - // The type of the listing group. - enum ListingGroupType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Subdivision of products along some listing dimension. These nodes - // are not used by serving to target listing entries, but is purely - // to define the structure of the tree. - SUBDIVISION = 2; - - // Listing group unit that defines a bid. - UNIT = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/local_placeholder_field.proto b/google/ads/googleads/v6/enums/local_placeholder_field.proto deleted file mode 100644 index c0e7f0f45..000000000 --- a/google/ads/googleads/v6/enums/local_placeholder_field.proto +++ /dev/null @@ -1,119 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocalPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Local placeholder fields. - -// Values for Local placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message LocalPlaceholderFieldEnum { - // Possible values for Local placeholder fields. - enum LocalPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Unique ID. - DEAL_ID = 2; - - // Data Type: STRING. Required. Main headline with local deal title to be - // shown in dynamic ad. - DEAL_NAME = 3; - - // Data Type: STRING. Local deal subtitle to be shown in dynamic ad. - SUBTITLE = 4; - - // Data Type: STRING. Description of local deal to be shown in dynamic ad. - DESCRIPTION = 5; - - // Data Type: STRING. Price to be shown in the ad. Highly recommended for - // dynamic ads. Example: "100.00 USD" - PRICE = 6; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 7; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 8; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 9; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 10; - - // Data Type: STRING. Complete property address, including postal code. - ADDRESS = 11; - - // Data Type: STRING. Category of local deal used to group like items - // together for recommendation engine. - CATEGORY = 12; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 13; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific local deal and its location). - FINAL_URLS = 14; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 15; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 16; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 17; - - // Data Type: STRING_LIST. List of recommended local deal IDs to show - // together with this item. - SIMILAR_DEAL_IDS = 18; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 19; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 20; - } - - -} diff --git a/google/ads/googleads/v6/enums/location_extension_targeting_criterion_field.proto b/google/ads/googleads/v6/enums/location_extension_targeting_criterion_field.proto deleted file mode 100644 index 4a252b144..000000000 --- a/google/ads/googleads/v6/enums/location_extension_targeting_criterion_field.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationExtensionTargetingCriterionFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Location Extension Targeting criterion fields. - -// Values for Location Extension Targeting criterion fields. -message LocationExtensionTargetingCriterionFieldEnum { - // Possible values for Location Extension Targeting criterion fields. - enum LocationExtensionTargetingCriterionField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Line 1 of the business address. - ADDRESS_LINE_1 = 2; - - // Data Type: STRING. Line 2 of the business address. - ADDRESS_LINE_2 = 3; - - // Data Type: STRING. City of the business address. - CITY = 4; - - // Data Type: STRING. Province of the business address. - PROVINCE = 5; - - // Data Type: STRING. Postal code of the business address. - POSTAL_CODE = 6; - - // Data Type: STRING. Country code of the business address. - COUNTRY_CODE = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/location_group_radius_units.proto b/google/ads/googleads/v6/enums/location_group_radius_units.proto deleted file mode 100644 index 0feb60843..000000000 --- a/google/ads/googleads/v6/enums/location_group_radius_units.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationGroupRadiusUnitsProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing location group radius units. - -// Container for enum describing unit of radius in location group. -message LocationGroupRadiusUnitsEnum { - // The unit of radius distance in location group (e.g. MILES) - enum LocationGroupRadiusUnits { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Meters - METERS = 2; - - // Miles - MILES = 3; - - // Milli Miles - MILLI_MILES = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/location_placeholder_field.proto b/google/ads/googleads/v6/enums/location_placeholder_field.proto deleted file mode 100644 index a997205e9..000000000 --- a/google/ads/googleads/v6/enums/location_placeholder_field.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Location placeholder fields. - -// Values for Location placeholder fields. -message LocationPlaceholderFieldEnum { - // Possible values for Location placeholder fields. - enum LocationPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The name of the business. - BUSINESS_NAME = 2; - - // Data Type: STRING. Line 1 of the business address. - ADDRESS_LINE_1 = 3; - - // Data Type: STRING. Line 2 of the business address. - ADDRESS_LINE_2 = 4; - - // Data Type: STRING. City of the business address. - CITY = 5; - - // Data Type: STRING. Province of the business address. - PROVINCE = 6; - - // Data Type: STRING. Postal code of the business address. - POSTAL_CODE = 7; - - // Data Type: STRING. Country code of the business address. - COUNTRY_CODE = 8; - - // Data Type: STRING. Phone number of the business. - PHONE_NUMBER = 9; - } - - -} diff --git a/google/ads/googleads/v6/enums/location_source_type.proto b/google/ads/googleads/v6/enums/location_source_type.proto deleted file mode 100644 index 44c64280c..000000000 --- a/google/ads/googleads/v6/enums/location_source_type.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "LocationSourceTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing location source types. - -// Used to distinguish the location source type. -message LocationSourceTypeEnum { - // The possible types of a location source. - enum LocationSourceType { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Locations associated with the customer's linked Google My Business - // account. - GOOGLE_MY_BUSINESS = 2; - - // Affiliate (chain) store locations. For example, Best Buy store locations. - AFFILIATE = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/manager_link_status.proto b/google/ads/googleads/v6/enums/manager_link_status.proto deleted file mode 100644 index fe2565e0d..000000000 --- a/google/ads/googleads/v6/enums/manager_link_status.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ManagerLinkStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum describing possible status of a manager and client link. -message ManagerLinkStatusEnum { - // Possible statuses of a link. - enum ManagerLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Indicates current in-effect relationship - ACTIVE = 2; - - // Indicates terminated relationship - INACTIVE = 3; - - // Indicates relationship has been requested by manager, but the client - // hasn't accepted yet. - PENDING = 4; - - // Relationship was requested by the manager, but the client has refused. - REFUSED = 5; - - // Indicates relationship has been requested by manager, but manager - // canceled it. - CANCELED = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/matching_function_context_type.proto b/google/ads/googleads/v6/enums/matching_function_context_type.proto deleted file mode 100644 index 7e104ecec..000000000 --- a/google/ads/googleads/v6/enums/matching_function_context_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MatchingFunctionContextTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing matching function context types. - -// Container for context types for an operand in a matching function. -message MatchingFunctionContextTypeEnum { - // Possible context types for an operand in a matching function. - enum MatchingFunctionContextType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Feed item id in the request context. - FEED_ITEM_ID = 2; - - // The device being used (possible values are 'Desktop' or 'Mobile'). - DEVICE_NAME = 3; - - // Feed item set id in the request context. - FEED_ITEM_SET_ID = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/matching_function_operator.proto b/google/ads/googleads/v6/enums/matching_function_operator.proto deleted file mode 100644 index ef207bf8c..000000000 --- a/google/ads/googleads/v6/enums/matching_function_operator.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MatchingFunctionOperatorProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing matching function operators. - -// Container for enum describing matching function operator. -message MatchingFunctionOperatorEnum { - // Possible operators in a matching function. - enum MatchingFunctionOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The IN operator. - IN = 2; - - // The IDENTITY operator. - IDENTITY = 3; - - // The EQUALS operator - EQUALS = 4; - - // Operator that takes two or more operands that are of type - // FunctionOperand and checks that all the operands evaluate to true. - // For functions related to ad formats, all the operands must be in - // left_operands. - AND = 5; - - // Operator that returns true if the elements in left_operands contain any - // of the elements in right_operands. Otherwise, return false. The - // right_operands must contain at least 1 and no more than 3 - // ConstantOperands. - CONTAINS_ANY = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/media_type.proto b/google/ads/googleads/v6/enums/media_type.proto deleted file mode 100644 index 243570221..000000000 --- a/google/ads/googleads/v6/enums/media_type.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MediaTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing media types. - -// Container for enum describing the types of media. -message MediaTypeEnum { - // The type of media. - enum MediaType { - // The media type has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Static image, used for image ad. - IMAGE = 2; - - // Small image, used for map ad. - ICON = 3; - - // ZIP file, used in fields of template ads. - MEDIA_BUNDLE = 4; - - // Audio file. - AUDIO = 5; - - // Video file. - VIDEO = 6; - - // Animated image, such as animated GIF. - DYNAMIC_IMAGE = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/merchant_center_link_status.proto b/google/ads/googleads/v6/enums/merchant_center_link_status.proto deleted file mode 100644 index f33c2422c..000000000 --- a/google/ads/googleads/v6/enums/merchant_center_link_status.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MerchantCenterLinkStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Merchant Center link statuses. - -// Container for enum describing possible statuses of a Google Merchant Center -// link. -message MerchantCenterLinkStatusEnum { - // Describes the possible statuses for a link between a Google Ads customer - // and a Google Merchant Center account. - enum MerchantCenterLinkStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The link is enabled. - ENABLED = 2; - - // The link has no effect. It was proposed by the Merchant Center Account - // owner and hasn't been confirmed by the customer. - PENDING = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/message_placeholder_field.proto b/google/ads/googleads/v6/enums/message_placeholder_field.proto deleted file mode 100644 index 8a2faa489..000000000 --- a/google/ads/googleads/v6/enums/message_placeholder_field.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MessagePlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Message placeholder fields. - -// Values for Message placeholder fields. -message MessagePlaceholderFieldEnum { - // Possible values for Message placeholder fields. - enum MessagePlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The name of your business. - BUSINESS_NAME = 2; - - // Data Type: STRING. Country code of phone number. - COUNTRY_CODE = 3; - - // Data Type: STRING. A phone number that's capable of sending and receiving - // text messages. - PHONE_NUMBER = 4; - - // Data Type: STRING. The text that will go in your click-to-message ad. - MESSAGE_EXTENSION_TEXT = 5; - - // Data Type: STRING. The message text automatically shows in people's - // messaging apps when they tap to send you a message. - MESSAGE_TEXT = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/mime_type.proto b/google/ads/googleads/v6/enums/mime_type.proto deleted file mode 100644 index 1f31f8559..000000000 --- a/google/ads/googleads/v6/enums/mime_type.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MimeTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing mime types. - -// Container for enum describing the mime types. -message MimeTypeEnum { - // The mime type - enum MimeType { - // The mime type has not been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // MIME type of image/jpeg. - IMAGE_JPEG = 2; - - // MIME type of image/gif. - IMAGE_GIF = 3; - - // MIME type of image/png. - IMAGE_PNG = 4; - - // MIME type of application/x-shockwave-flash. - FLASH = 5; - - // MIME type of text/html. - TEXT_HTML = 6; - - // MIME type of application/pdf. - PDF = 7; - - // MIME type of application/msword. - MSWORD = 8; - - // MIME type of application/vnd.ms-excel. - MSEXCEL = 9; - - // MIME type of application/rtf. - RTF = 10; - - // MIME type of audio/wav. - AUDIO_WAV = 11; - - // MIME type of audio/mp3. - AUDIO_MP3 = 12; - - // MIME type of application/x-html5-ad-zip. - HTML5_AD_ZIP = 13; - } - - -} diff --git a/google/ads/googleads/v6/enums/minute_of_hour.proto b/google/ads/googleads/v6/enums/minute_of_hour.proto deleted file mode 100644 index 98a6dd10e..000000000 --- a/google/ads/googleads/v6/enums/minute_of_hour.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MinuteOfHourProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing days of week. - -// Container for enumeration of quarter-hours. -message MinuteOfHourEnum { - // Enumerates of quarter-hours. E.g. "FIFTEEN" - enum MinuteOfHour { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Zero minutes past the hour. - ZERO = 2; - - // Fifteen minutes past the hour. - FIFTEEN = 3; - - // Thirty minutes past the hour. - THIRTY = 4; - - // Forty-five minutes past the hour. - FORTY_FIVE = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/mobile_app_vendor.proto b/google/ads/googleads/v6/enums/mobile_app_vendor.proto deleted file mode 100644 index bf3b1f95a..000000000 --- a/google/ads/googleads/v6/enums/mobile_app_vendor.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MobileAppVendorProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum describing different types of mobile app vendors. -message MobileAppVendorEnum { - // The type of mobile app vendor - enum MobileAppVendor { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile app vendor for Apple app store. - APPLE_APP_STORE = 2; - - // Mobile app vendor for Google app store. - GOOGLE_APP_STORE = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/mobile_device_type.proto b/google/ads/googleads/v6/enums/mobile_device_type.proto deleted file mode 100644 index 7da848a46..000000000 --- a/google/ads/googleads/v6/enums/mobile_device_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MobileDeviceTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing mobile device types. - -// Container for enum describing the types of mobile device. -message MobileDeviceTypeEnum { - // The type of mobile device. - enum MobileDeviceType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Mobile phones. - MOBILE = 2; - - // Tablets. - TABLET = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/month_of_year.proto b/google/ads/googleads/v6/enums/month_of_year.proto deleted file mode 100644 index 5783e6b35..000000000 --- a/google/ads/googleads/v6/enums/month_of_year.proto +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "MonthOfYearProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing days of week. - -// Container for enumeration of months of the year, e.g., "January". -message MonthOfYearEnum { - // Enumerates months of the year, e.g., "January". - enum MonthOfYear { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // January. - JANUARY = 2; - - // February. - FEBRUARY = 3; - - // March. - MARCH = 4; - - // April. - APRIL = 5; - - // May. - MAY = 6; - - // June. - JUNE = 7; - - // July. - JULY = 8; - - // August. - AUGUST = 9; - - // September. - SEPTEMBER = 10; - - // October. - OCTOBER = 11; - - // November. - NOVEMBER = 12; - - // December. - DECEMBER = 13; - } - - -} diff --git a/google/ads/googleads/v6/enums/negative_geo_target_type.proto b/google/ads/googleads/v6/enums/negative_geo_target_type.proto deleted file mode 100644 index 8893d4dfe..000000000 --- a/google/ads/googleads/v6/enums/negative_geo_target_type.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "NegativeGeoTargetTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing negative geo target types. - -// Container for enum describing possible negative geo target types. -message NegativeGeoTargetTypeEnum { - // The possible negative geo target types. - enum NegativeGeoTargetType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Specifies that a user is excluded from seeing the ad if they - // are in, or show interest in, advertiser's excluded locations. - PRESENCE_OR_INTEREST = 4; - - // Specifies that a user is excluded from seeing the ad if they - // are in advertiser's excluded locations. - PRESENCE = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/offline_user_data_job_failure_reason.proto b/google/ads/googleads/v6/enums/offline_user_data_job_failure_reason.proto deleted file mode 100644 index d765489d1..000000000 --- a/google/ads/googleads/v6/enums/offline_user_data_job_failure_reason.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobFailureReasonProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing offline user data job failure reasons. - -// Container for enum describing reasons why an offline user data job -// failed to be processed. -message OfflineUserDataJobFailureReasonEnum { - // The failure reason of an offline user data job. - enum OfflineUserDataJobFailureReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The matched transactions are insufficient. - INSUFFICIENT_MATCHED_TRANSACTIONS = 2; - - // The uploaded transactions are insufficient. - INSUFFICIENT_TRANSACTIONS = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/offline_user_data_job_status.proto b/google/ads/googleads/v6/enums/offline_user_data_job_status.proto deleted file mode 100644 index 0465354d7..000000000 --- a/google/ads/googleads/v6/enums/offline_user_data_job_status.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing offline user data job status. - -// Container for enum describing status of an offline user data job. -message OfflineUserDataJobStatusEnum { - // The status of an offline user data job. - enum OfflineUserDataJobStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The job has been successfully created and pending for uploading. - PENDING = 2; - - // Upload(s) have been accepted and data is being processed. - RUNNING = 3; - - // Uploaded data has been successfully processed. - SUCCESS = 4; - - // Uploaded data has failed to be processed. - FAILED = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/offline_user_data_job_type.proto b/google/ads/googleads/v6/enums/offline_user_data_job_type.proto deleted file mode 100644 index 144ae47bb..000000000 --- a/google/ads/googleads/v6/enums/offline_user_data_job_type.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing offline user data job types. - -// Container for enum describing types of an offline user data job. -message OfflineUserDataJobTypeEnum { - // The type of an offline user data job. - enum OfflineUserDataJobType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Store Sales Direct data for self service. - STORE_SALES_UPLOAD_FIRST_PARTY = 2; - - // Store Sales Direct data for third party. - STORE_SALES_UPLOAD_THIRD_PARTY = 3; - - // Customer Match user list data. - CUSTOMER_MATCH_USER_LIST = 4; - - // Customer Match with attribute data. - CUSTOMER_MATCH_WITH_ATTRIBUTES = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/operating_system_version_operator_type.proto b/google/ads/googleads/v6/enums/operating_system_version_operator_type.proto deleted file mode 100644 index 3328c1174..000000000 --- a/google/ads/googleads/v6/enums/operating_system_version_operator_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OperatingSystemVersionOperatorTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing operating system version operator types. - -// Container for enum describing the type of OS operators. -message OperatingSystemVersionOperatorTypeEnum { - // The type of operating system version. - enum OperatingSystemVersionOperatorType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Equals to the specified version. - EQUALS_TO = 2; - - // Greater than or equals to the specified version. - GREATER_THAN_EQUALS_TO = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/optimization_goal_type.proto b/google/ads/googleads/v6/enums/optimization_goal_type.proto deleted file mode 100644 index 078e1157d..000000000 --- a/google/ads/googleads/v6/enums/optimization_goal_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "OptimizationGoalTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing optimization goal type. - -// Container for enum describing the type of optimization goal. -message OptimizationGoalTypeEnum { - // The type of optimization goal - enum OptimizationGoalType { - // Not specified. - UNSPECIFIED = 0; - - // Used as a return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Optimize for call clicks. Call click conversions are times people - // selected 'Call' to contact a store after viewing an ad. - CALL_CLICKS = 2; - - // Optimize for driving directions. Driving directions conversions are - // times people selected 'Get directions' to navigate to a store after - // viewing an ad. - DRIVING_DIRECTIONS = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/page_one_promoted_strategy_goal.proto b/google/ads/googleads/v6/enums/page_one_promoted_strategy_goal.proto deleted file mode 100644 index 09efcc652..000000000 --- a/google/ads/googleads/v6/enums/page_one_promoted_strategy_goal.proto +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PageOnePromotedStrategyGoalProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing bidding schemes. diff --git a/google/ads/googleads/v6/enums/parental_status_type.proto b/google/ads/googleads/v6/enums/parental_status_type.proto deleted file mode 100644 index 43eae35bd..000000000 --- a/google/ads/googleads/v6/enums/parental_status_type.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ParentalStatusTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing parenal status types. - -// Container for enum describing the type of demographic parental statuses. -message ParentalStatusTypeEnum { - // The type of parental statuses (e.g. not a parent). - enum ParentalStatusType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Parent. - PARENT = 300; - - // Not a parent. - NOT_A_PARENT = 301; - - // Undetermined parental status. - UNDETERMINED = 302; - } - - -} diff --git a/google/ads/googleads/v6/enums/payment_mode.proto b/google/ads/googleads/v6/enums/payment_mode.proto deleted file mode 100644 index b145a3b44..000000000 --- a/google/ads/googleads/v6/enums/payment_mode.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PaymentModeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing payment modes. - -// Container for enum describing possible payment modes. -message PaymentModeEnum { - // Enum describing possible payment modes. - enum PaymentMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Pay per click. - CLICKS = 4; - - // Pay per conversion value. This mode is only supported by campaigns with - // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION, and - // BudgetType.HOTEL_ADS_COMMISSION. - CONVERSION_VALUE = 5; - - // Pay per conversion. This mode is only supported by campaigns with - // AdvertisingChannelType.DISPLAY (excluding - // AdvertisingChannelSubType.DISPLAY_GMAIL), BiddingStrategyType.TARGET_CPA, - // and BudgetType.FIXED_CPA. The customer must also be eligible for this - // mode. See Customer.eligibility_failure_reasons for details. - CONVERSIONS = 6; - - // Pay per guest stay value. This mode is only supported by campaigns with - // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION, and - // BudgetType.STANDARD. - GUEST_STAY = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/placeholder_type.proto b/google/ads/googleads/v6/enums/placeholder_type.proto deleted file mode 100644 index acfaed272..000000000 --- a/google/ads/googleads/v6/enums/placeholder_type.proto +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PlaceholderTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing feed placeholder types. - -// Container for enum describing possible placeholder types for a feed mapping. -message PlaceholderTypeEnum { - // Possible placeholder types for a feed mapping. - enum PlaceholderType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Lets you show links in your ad to pages from your website, including the - // main landing page. - SITELINK = 2; - - // Lets you attach a phone number to an ad, allowing customers to call - // directly from the ad. - CALL = 3; - - // Lets you provide users with a link that points to a mobile app in - // addition to a website. - APP = 4; - - // Lets you show locations of businesses from your Google My Business - // account in your ad. This helps people find your locations by showing your - // ads with your address, a map to your location, or the distance to your - // business. This extension type is useful to draw customers to your - // brick-and-mortar location. - LOCATION = 5; - - // If you sell your product through retail chains, affiliate location - // extensions let you show nearby stores that carry your products. - AFFILIATE_LOCATION = 6; - - // Lets you include additional text with your search ads that provide - // detailed information about your business, including products and services - // you offer. Callouts appear in ads at the top and bottom of Google search - // results. - CALLOUT = 7; - - // Lets you add more info to your ad, specific to some predefined categories - // such as types, brands, styles, etc. A minimum of 3 text (SNIPPETS) values - // are required. - STRUCTURED_SNIPPET = 8; - - // Allows users to see your ad, click an icon, and contact you directly by - // text message. With one tap on your ad, people can contact you to book an - // appointment, get a quote, ask for information, or request a service. - MESSAGE = 9; - - // Lets you display prices for a list of items along with your ads. A price - // feed is composed of three to eight price table rows. - PRICE = 10; - - // Allows you to highlight sales and other promotions that let users see how - // they can save by buying now. - PROMOTION = 11; - - // Lets you dynamically inject custom data into the title and description - // of your ads. - AD_CUSTOMIZER = 12; - - // Indicates that this feed is for education dynamic remarketing. - DYNAMIC_EDUCATION = 13; - - // Indicates that this feed is for flight dynamic remarketing. - DYNAMIC_FLIGHT = 14; - - // Indicates that this feed is for a custom dynamic remarketing type. Use - // this only if the other business types don't apply to your products or - // services. - DYNAMIC_CUSTOM = 15; - - // Indicates that this feed is for hotels and rentals dynamic remarketing. - DYNAMIC_HOTEL = 16; - - // Indicates that this feed is for real estate dynamic remarketing. - DYNAMIC_REAL_ESTATE = 17; - - // Indicates that this feed is for travel dynamic remarketing. - DYNAMIC_TRAVEL = 18; - - // Indicates that this feed is for local deals dynamic remarketing. - DYNAMIC_LOCAL = 19; - - // Indicates that this feed is for job dynamic remarketing. - DYNAMIC_JOB = 20; - - // Lets you attach an image to an ad. - IMAGE = 21; - } - - -} diff --git a/google/ads/googleads/v6/enums/placement_type.proto b/google/ads/googleads/v6/enums/placement_type.proto deleted file mode 100644 index 62b33009c..000000000 --- a/google/ads/googleads/v6/enums/placement_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PlacementTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing placement types. - -// Container for enum describing possible placement types. -message PlacementTypeEnum { - // Possible placement types for a feed mapping. - enum PlacementType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Websites(e.g. 'www.flowers4sale.com'). - WEBSITE = 2; - - // Mobile application categories(e.g. 'Games'). - MOBILE_APP_CATEGORY = 3; - - // mobile applications(e.g. 'mobileapp::2-com.whatsthewordanswers'). - MOBILE_APPLICATION = 4; - - // YouTube videos(e.g. 'youtube.com/video/wtLJPvx7-ys'). - YOUTUBE_VIDEO = 5; - - // YouTube channels(e.g. 'youtube.com::L8ZULXASCc1I_oaOT0NaOQ'). - YOUTUBE_CHANNEL = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/policy_approval_status.proto b/google/ads/googleads/v6/enums/policy_approval_status.proto deleted file mode 100644 index b1fa4863e..000000000 --- a/google/ads/googleads/v6/enums/policy_approval_status.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyApprovalStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing policy approval statuses. - -// Container for enum describing possible policy approval statuses. -message PolicyApprovalStatusEnum { - // The possible policy approval statuses. When there are several approval - // statuses available the most severe one will be used. The order of severity - // is DISAPPROVED, AREA_OF_INTEREST_ONLY, APPROVED_LIMITED and APPROVED. - enum PolicyApprovalStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Will not serve. - DISAPPROVED = 2; - - // Serves with restrictions. - APPROVED_LIMITED = 3; - - // Serves without restrictions. - APPROVED = 4; - - // Will not serve in targeted countries, but may serve for users who are - // searching for information about the targeted countries. - AREA_OF_INTEREST_ONLY = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/policy_review_status.proto b/google/ads/googleads/v6/enums/policy_review_status.proto deleted file mode 100644 index 8b4cd0f61..000000000 --- a/google/ads/googleads/v6/enums/policy_review_status.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyReviewStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing policy review statuses. - -// Container for enum describing possible policy review statuses. -message PolicyReviewStatusEnum { - // The possible policy review statuses. - enum PolicyReviewStatus { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Currently under review. - REVIEW_IN_PROGRESS = 2; - - // Primary review complete. Other reviews may be continuing. - REVIEWED = 3; - - // The resource has been resubmitted for approval or its policy decision has - // been appealed. - UNDER_APPEAL = 4; - - // The resource is eligible and may be serving but could still undergo - // further review. - ELIGIBLE_MAY_SERVE = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/policy_topic_entry_type.proto b/google/ads/googleads/v6/enums/policy_topic_entry_type.proto deleted file mode 100644 index a056f814d..000000000 --- a/google/ads/googleads/v6/enums/policy_topic_entry_type.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEntryTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing policy topic entry types. - -// Container for enum describing possible policy topic entry types. -message PolicyTopicEntryTypeEnum { - // The possible policy topic entry types. - enum PolicyTopicEntryType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The resource will not be served. - PROHIBITED = 2; - - // The resource will not be served under some circumstances. - LIMITED = 4; - - // The resource cannot serve at all because of the current targeting - // criteria. - FULLY_LIMITED = 8; - - // May be of interest, but does not limit how the resource is served. - DESCRIPTIVE = 5; - - // Could increase coverage beyond normal. - BROADENING = 6; - - // Constrained for all targeted countries, but may serve in other countries - // through area of interest. - AREA_OF_INTEREST_ONLY = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/policy_topic_evidence_destination_mismatch_url_type.proto b/google/ads/googleads/v6/enums/policy_topic_evidence_destination_mismatch_url_type.proto deleted file mode 100644 index cf22141c2..000000000 --- a/google/ads/googleads/v6/enums/policy_topic_evidence_destination_mismatch_url_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEvidenceDestinationMismatchUrlTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing policy topic evidence destination mismatch url types. - -// Container for enum describing possible policy topic evidence destination -// mismatch url types. -message PolicyTopicEvidenceDestinationMismatchUrlTypeEnum { - // The possible policy topic evidence destination mismatch url types. - enum PolicyTopicEvidenceDestinationMismatchUrlType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The display url. - DISPLAY_URL = 2; - - // The final url. - FINAL_URL = 3; - - // The final mobile url. - FINAL_MOBILE_URL = 4; - - // The tracking url template, with substituted desktop url. - TRACKING_URL = 5; - - // The tracking url template, with substituted mobile url. - MOBILE_TRACKING_URL = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/policy_topic_evidence_destination_not_working_device.proto b/google/ads/googleads/v6/enums/policy_topic_evidence_destination_not_working_device.proto deleted file mode 100644 index c0cda9080..000000000 --- a/google/ads/googleads/v6/enums/policy_topic_evidence_destination_not_working_device.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEvidenceDestinationNotWorkingDeviceProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing device of destination not working policy topic -// evidence. - -// Container for enum describing possible policy topic evidence destination not -// working devices. -message PolicyTopicEvidenceDestinationNotWorkingDeviceEnum { - // The possible policy topic evidence destination not working devices. - enum PolicyTopicEvidenceDestinationNotWorkingDevice { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Landing page doesn't work on desktop device. - DESKTOP = 2; - - // Landing page doesn't work on Android device. - ANDROID = 3; - - // Landing page doesn't work on iOS device. - IOS = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto b/google/ads/googleads/v6/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto deleted file mode 100644 index e3c5ac414..000000000 --- a/google/ads/googleads/v6/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing DNS error types of destination not working policy topic -// evidence. - -// Container for enum describing possible policy topic evidence destination not -// working DNS error types. -message PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum { - // The possible policy topic evidence destination not working DNS error types. - enum PolicyTopicEvidenceDestinationNotWorkingDnsErrorType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // Host name not found in DNS when fetching landing page. - HOSTNAME_NOT_FOUND = 2; - - // Google internal crawler issue when communicating with DNS. This error - // doesn't mean the landing page doesn't work. Google will recrawl the - // landing page. - GOOGLE_CRAWLER_DNS_ISSUE = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/positive_geo_target_type.proto b/google/ads/googleads/v6/enums/positive_geo_target_type.proto deleted file mode 100644 index 6caa7b54a..000000000 --- a/google/ads/googleads/v6/enums/positive_geo_target_type.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PositiveGeoTargetTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing positive geo target types. - -// Container for enum describing possible positive geo target types. -message PositiveGeoTargetTypeEnum { - // The possible positive geo target types. - enum PositiveGeoTargetType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Specifies that an ad is triggered if the user is in, - // or shows interest in, advertiser's targeted locations. - PRESENCE_OR_INTEREST = 5; - - // Specifies that an ad is triggered if the user - // searches for advertiser's targeted locations. - // This can only be used with Search and standard - // Shopping campaigns. - SEARCH_INTEREST = 6; - - // Specifies that an ad is triggered if the user is in - // or regularly in advertiser's targeted locations. - PRESENCE = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/preferred_content_type.proto b/google/ads/googleads/v6/enums/preferred_content_type.proto deleted file mode 100644 index 945fb15a1..000000000 --- a/google/ads/googleads/v6/enums/preferred_content_type.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PreferredContentTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing preferred content criterion type. - -// Container for enumeration of preferred content criterion type. -message PreferredContentTypeEnum { - // Enumerates preferred content criterion type. - enum PreferredContentType { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Represents top content on YouTube. - YOUTUBE_TOP_CONTENT = 400; - } - - -} diff --git a/google/ads/googleads/v6/enums/price_extension_price_qualifier.proto b/google/ads/googleads/v6/enums/price_extension_price_qualifier.proto deleted file mode 100644 index 21a25a6ad..000000000 --- a/google/ads/googleads/v6/enums/price_extension_price_qualifier.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PriceExtensionPriceQualifierProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing price extension price qualifier type. - -// Container for enum describing a price extension price qualifier. -message PriceExtensionPriceQualifierEnum { - // Enums of price extension price qualifier. - enum PriceExtensionPriceQualifier { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // 'From' qualifier for the price. - FROM = 2; - - // 'Up to' qualifier for the price. - UP_TO = 3; - - // 'Average' qualifier for the price. - AVERAGE = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/price_extension_price_unit.proto b/google/ads/googleads/v6/enums/price_extension_price_unit.proto deleted file mode 100644 index 8c8caa2cb..000000000 --- a/google/ads/googleads/v6/enums/price_extension_price_unit.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PriceExtensionPriceUnitProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing price extension price unit. - -// Container for enum describing price extension price unit. -message PriceExtensionPriceUnitEnum { - // Price extension price unit. - enum PriceExtensionPriceUnit { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Per hour. - PER_HOUR = 2; - - // Per day. - PER_DAY = 3; - - // Per week. - PER_WEEK = 4; - - // Per month. - PER_MONTH = 5; - - // Per year. - PER_YEAR = 6; - - // Per night. - PER_NIGHT = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/price_extension_type.proto b/google/ads/googleads/v6/enums/price_extension_type.proto deleted file mode 100644 index 5b2978695..000000000 --- a/google/ads/googleads/v6/enums/price_extension_type.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PriceExtensionTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing price extension type. - -// Container for enum describing types for a price extension. -message PriceExtensionTypeEnum { - // Price extension type. - enum PriceExtensionType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The type for showing a list of brands. - BRANDS = 2; - - // The type for showing a list of events. - EVENTS = 3; - - // The type for showing locations relevant to your business. - LOCATIONS = 4; - - // The type for showing sub-regions or districts within a city or region. - NEIGHBORHOODS = 5; - - // The type for showing a collection of product categories. - PRODUCT_CATEGORIES = 6; - - // The type for showing a collection of related product tiers. - PRODUCT_TIERS = 7; - - // The type for showing a collection of services offered by your business. - SERVICES = 8; - - // The type for showing a collection of service categories. - SERVICE_CATEGORIES = 9; - - // The type for showing a collection of related service tiers. - SERVICE_TIERS = 10; - } - - -} diff --git a/google/ads/googleads/v6/enums/price_placeholder_field.proto b/google/ads/googleads/v6/enums/price_placeholder_field.proto deleted file mode 100644 index 44396ae55..000000000 --- a/google/ads/googleads/v6/enums/price_placeholder_field.proto +++ /dev/null @@ -1,240 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PricePlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Price placeholder fields. - -// Values for Price placeholder fields. -message PricePlaceholderFieldEnum { - // Possible values for Price placeholder fields. - enum PricePlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The type of your price feed. Must match one of the - // predefined price feed type exactly. - TYPE = 2; - - // Data Type: STRING. The qualifier of each price. Must match one of the - // predefined price qualifiers exactly. - PRICE_QUALIFIER = 3; - - // Data Type: URL. Tracking template for the price feed when using Upgraded - // URLs. - TRACKING_TEMPLATE = 4; - - // Data Type: STRING. Language of the price feed. Must match one of the - // available available locale codes exactly. - LANGUAGE = 5; - - // Data Type: STRING. Final URL suffix for the price feed when using - // parallel tracking. - FINAL_URL_SUFFIX = 6; - - // Data Type: STRING. The header of item 1 of the table. - ITEM_1_HEADER = 100; - - // Data Type: STRING. The description of item 1 of the table. - ITEM_1_DESCRIPTION = 101; - - // Data Type: MONEY. The price (money with currency) of item 1 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_1_PRICE = 102; - - // Data Type: STRING. The price unit of item 1 of the table. Must match one - // of the predefined price units. - ITEM_1_UNIT = 103; - - // Data Type: URL_LIST. The final URLs of item 1 of the table when using - // Upgraded URLs. - ITEM_1_FINAL_URLS = 104; - - // Data Type: URL_LIST. The final mobile URLs of item 1 of the table when - // using Upgraded URLs. - ITEM_1_FINAL_MOBILE_URLS = 105; - - // Data Type: STRING. The header of item 2 of the table. - ITEM_2_HEADER = 200; - - // Data Type: STRING. The description of item 2 of the table. - ITEM_2_DESCRIPTION = 201; - - // Data Type: MONEY. The price (money with currency) of item 2 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_2_PRICE = 202; - - // Data Type: STRING. The price unit of item 2 of the table. Must match one - // of the predefined price units. - ITEM_2_UNIT = 203; - - // Data Type: URL_LIST. The final URLs of item 2 of the table when using - // Upgraded URLs. - ITEM_2_FINAL_URLS = 204; - - // Data Type: URL_LIST. The final mobile URLs of item 2 of the table when - // using Upgraded URLs. - ITEM_2_FINAL_MOBILE_URLS = 205; - - // Data Type: STRING. The header of item 3 of the table. - ITEM_3_HEADER = 300; - - // Data Type: STRING. The description of item 3 of the table. - ITEM_3_DESCRIPTION = 301; - - // Data Type: MONEY. The price (money with currency) of item 3 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_3_PRICE = 302; - - // Data Type: STRING. The price unit of item 3 of the table. Must match one - // of the predefined price units. - ITEM_3_UNIT = 303; - - // Data Type: URL_LIST. The final URLs of item 3 of the table when using - // Upgraded URLs. - ITEM_3_FINAL_URLS = 304; - - // Data Type: URL_LIST. The final mobile URLs of item 3 of the table when - // using Upgraded URLs. - ITEM_3_FINAL_MOBILE_URLS = 305; - - // Data Type: STRING. The header of item 4 of the table. - ITEM_4_HEADER = 400; - - // Data Type: STRING. The description of item 4 of the table. - ITEM_4_DESCRIPTION = 401; - - // Data Type: MONEY. The price (money with currency) of item 4 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_4_PRICE = 402; - - // Data Type: STRING. The price unit of item 4 of the table. Must match one - // of the predefined price units. - ITEM_4_UNIT = 403; - - // Data Type: URL_LIST. The final URLs of item 4 of the table when using - // Upgraded URLs. - ITEM_4_FINAL_URLS = 404; - - // Data Type: URL_LIST. The final mobile URLs of item 4 of the table when - // using Upgraded URLs. - ITEM_4_FINAL_MOBILE_URLS = 405; - - // Data Type: STRING. The header of item 5 of the table. - ITEM_5_HEADER = 500; - - // Data Type: STRING. The description of item 5 of the table. - ITEM_5_DESCRIPTION = 501; - - // Data Type: MONEY. The price (money with currency) of item 5 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_5_PRICE = 502; - - // Data Type: STRING. The price unit of item 5 of the table. Must match one - // of the predefined price units. - ITEM_5_UNIT = 503; - - // Data Type: URL_LIST. The final URLs of item 5 of the table when using - // Upgraded URLs. - ITEM_5_FINAL_URLS = 504; - - // Data Type: URL_LIST. The final mobile URLs of item 5 of the table when - // using Upgraded URLs. - ITEM_5_FINAL_MOBILE_URLS = 505; - - // Data Type: STRING. The header of item 6 of the table. - ITEM_6_HEADER = 600; - - // Data Type: STRING. The description of item 6 of the table. - ITEM_6_DESCRIPTION = 601; - - // Data Type: MONEY. The price (money with currency) of item 6 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_6_PRICE = 602; - - // Data Type: STRING. The price unit of item 6 of the table. Must match one - // of the predefined price units. - ITEM_6_UNIT = 603; - - // Data Type: URL_LIST. The final URLs of item 6 of the table when using - // Upgraded URLs. - ITEM_6_FINAL_URLS = 604; - - // Data Type: URL_LIST. The final mobile URLs of item 6 of the table when - // using Upgraded URLs. - ITEM_6_FINAL_MOBILE_URLS = 605; - - // Data Type: STRING. The header of item 7 of the table. - ITEM_7_HEADER = 700; - - // Data Type: STRING. The description of item 7 of the table. - ITEM_7_DESCRIPTION = 701; - - // Data Type: MONEY. The price (money with currency) of item 7 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_7_PRICE = 702; - - // Data Type: STRING. The price unit of item 7 of the table. Must match one - // of the predefined price units. - ITEM_7_UNIT = 703; - - // Data Type: URL_LIST. The final URLs of item 7 of the table when using - // Upgraded URLs. - ITEM_7_FINAL_URLS = 704; - - // Data Type: URL_LIST. The final mobile URLs of item 7 of the table when - // using Upgraded URLs. - ITEM_7_FINAL_MOBILE_URLS = 705; - - // Data Type: STRING. The header of item 8 of the table. - ITEM_8_HEADER = 800; - - // Data Type: STRING. The description of item 8 of the table. - ITEM_8_DESCRIPTION = 801; - - // Data Type: MONEY. The price (money with currency) of item 8 of the table, - // e.g., 30 USD. The currency must match one of the available currencies. - ITEM_8_PRICE = 802; - - // Data Type: STRING. The price unit of item 8 of the table. Must match one - // of the predefined price units. - ITEM_8_UNIT = 803; - - // Data Type: URL_LIST. The final URLs of item 8 of the table when using - // Upgraded URLs. - ITEM_8_FINAL_URLS = 804; - - // Data Type: URL_LIST. The final mobile URLs of item 8 of the table when - // using Upgraded URLs. - ITEM_8_FINAL_MOBILE_URLS = 805; - } - - -} diff --git a/google/ads/googleads/v6/enums/product_bidding_category_level.proto b/google/ads/googleads/v6/enums/product_bidding_category_level.proto deleted file mode 100644 index a008456fe..000000000 --- a/google/ads/googleads/v6/enums/product_bidding_category_level.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryLevelProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Level of a product bidding category. -message ProductBiddingCategoryLevelEnum { - // Enum describing the level of the product bidding category. - enum ProductBiddingCategoryLevel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Level 1. - LEVEL1 = 2; - - // Level 2. - LEVEL2 = 3; - - // Level 3. - LEVEL3 = 4; - - // Level 4. - LEVEL4 = 5; - - // Level 5. - LEVEL5 = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/product_bidding_category_status.proto b/google/ads/googleads/v6/enums/product_bidding_category_status.proto deleted file mode 100644 index c1c662f31..000000000 --- a/google/ads/googleads/v6/enums/product_bidding_category_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing bidding schemes. - -// Status of the product bidding category. -message ProductBiddingCategoryStatusEnum { - // Enum describing the status of the product bidding category. - enum ProductBiddingCategoryStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The category is active and can be used for bidding. - ACTIVE = 2; - - // The category is obsolete. Used only for reporting purposes. - OBSOLETE = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/product_channel.proto b/google/ads/googleads/v6/enums/product_channel.proto deleted file mode 100644 index 8e1cabcec..000000000 --- a/google/ads/googleads/v6/enums/product_channel.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductChannelProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing bidding schemes. - -// Locality of a product offer. -message ProductChannelEnum { - // Enum describing the locality of a product offer. - enum ProductChannel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The item is sold online. - ONLINE = 2; - - // The item is sold in local stores. - LOCAL = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/product_channel_exclusivity.proto b/google/ads/googleads/v6/enums/product_channel_exclusivity.proto deleted file mode 100644 index 22398ae91..000000000 --- a/google/ads/googleads/v6/enums/product_channel_exclusivity.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductChannelExclusivityProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing bidding schemes. - -// Availability of a product offer. -message ProductChannelExclusivityEnum { - // Enum describing the availability of a product offer. - enum ProductChannelExclusivity { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The item is sold through one channel only, either local stores or online - // as indicated by its ProductChannel. - SINGLE_CHANNEL = 2; - - // The item is matched to its online or local stores counterpart, indicating - // it is available for purchase in both ShoppingProductChannels. - MULTI_CHANNEL = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/product_condition.proto b/google/ads/googleads/v6/enums/product_condition.proto deleted file mode 100644 index eefa0e829..000000000 --- a/google/ads/googleads/v6/enums/product_condition.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductConditionProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing bidding schemes. - -// Condition of a product offer. -message ProductConditionEnum { - // Enum describing the condition of a product offer. - enum ProductCondition { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The product condition is new. - NEW = 3; - - // The product condition is refurbished. - REFURBISHED = 4; - - // The product condition is used. - USED = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/product_custom_attribute_index.proto b/google/ads/googleads/v6/enums/product_custom_attribute_index.proto deleted file mode 100644 index cbcc4b128..000000000 --- a/google/ads/googleads/v6/enums/product_custom_attribute_index.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductCustomAttributeIndexProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing product custom attributes. - -// Container for enum describing the index of the product custom attribute. -message ProductCustomAttributeIndexEnum { - // The index of the product custom attribute. - enum ProductCustomAttributeIndex { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // First product custom attribute. - INDEX0 = 7; - - // Second product custom attribute. - INDEX1 = 8; - - // Third product custom attribute. - INDEX2 = 9; - - // Fourth product custom attribute. - INDEX3 = 10; - - // Fifth product custom attribute. - INDEX4 = 11; - } - - -} diff --git a/google/ads/googleads/v6/enums/product_type_level.proto b/google/ads/googleads/v6/enums/product_type_level.proto deleted file mode 100644 index 668eeba82..000000000 --- a/google/ads/googleads/v6/enums/product_type_level.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProductTypeLevelProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing bidding schemes. - -// Level of the type of a product offer. -message ProductTypeLevelEnum { - // Enum describing the level of the type of a product offer. - enum ProductTypeLevel { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Level 1. - LEVEL1 = 7; - - // Level 2. - LEVEL2 = 8; - - // Level 3. - LEVEL3 = 9; - - // Level 4. - LEVEL4 = 10; - - // Level 5. - LEVEL5 = 11; - } - - -} diff --git a/google/ads/googleads/v6/enums/promotion_extension_discount_modifier.proto b/google/ads/googleads/v6/enums/promotion_extension_discount_modifier.proto deleted file mode 100644 index e178d25c0..000000000 --- a/google/ads/googleads/v6/enums/promotion_extension_discount_modifier.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PromotionExtensionDiscountModifierProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing promotion extension discount modifier. - -// Container for enum describing possible a promotion extension -// discount modifier. -message PromotionExtensionDiscountModifierEnum { - // A promotion extension discount modifier. - enum PromotionExtensionDiscountModifier { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // 'Up to'. - UP_TO = 2; - } - - -} diff --git a/google/ads/googleads/v6/enums/promotion_extension_occasion.proto b/google/ads/googleads/v6/enums/promotion_extension_occasion.proto deleted file mode 100644 index 407ac534d..000000000 --- a/google/ads/googleads/v6/enums/promotion_extension_occasion.proto +++ /dev/null @@ -1,157 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PromotionExtensionOccasionProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing promotion extension occasion. - -// Container for enum describing a promotion extension occasion. -// For more information about the occasions please check: -// https://support.google.com/google-ads/answer/7367521 -message PromotionExtensionOccasionEnum { - // A promotion extension occasion. - enum PromotionExtensionOccasion { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // New Year's. - NEW_YEARS = 2; - - // Chinese New Year. - CHINESE_NEW_YEAR = 3; - - // Valentine's Day. - VALENTINES_DAY = 4; - - // Easter. - EASTER = 5; - - // Mother's Day. - MOTHERS_DAY = 6; - - // Father's Day. - FATHERS_DAY = 7; - - // Labor Day. - LABOR_DAY = 8; - - // Back To School. - BACK_TO_SCHOOL = 9; - - // Halloween. - HALLOWEEN = 10; - - // Black Friday. - BLACK_FRIDAY = 11; - - // Cyber Monday. - CYBER_MONDAY = 12; - - // Christmas. - CHRISTMAS = 13; - - // Boxing Day. - BOXING_DAY = 14; - - // Independence Day in any country. - INDEPENDENCE_DAY = 15; - - // National Day in any country. - NATIONAL_DAY = 16; - - // End of any season. - END_OF_SEASON = 17; - - // Winter Sale. - WINTER_SALE = 18; - - // Summer sale. - SUMMER_SALE = 19; - - // Fall Sale. - FALL_SALE = 20; - - // Spring Sale. - SPRING_SALE = 21; - - // Ramadan. - RAMADAN = 22; - - // Eid al-Fitr. - EID_AL_FITR = 23; - - // Eid al-Adha. - EID_AL_ADHA = 24; - - // Singles Day. - SINGLES_DAY = 25; - - // Women's Day. - WOMENS_DAY = 26; - - // Holi. - HOLI = 27; - - // Parent's Day. - PARENTS_DAY = 28; - - // St. Nicholas Day. - ST_NICHOLAS_DAY = 29; - - // Carnival. - CARNIVAL = 30; - - // Epiphany, also known as Three Kings' Day. - EPIPHANY = 31; - - // Rosh Hashanah. - ROSH_HASHANAH = 32; - - // Passover. - PASSOVER = 33; - - // Hanukkah. - HANUKKAH = 34; - - // Diwali. - DIWALI = 35; - - // Navratri. - NAVRATRI = 36; - - // Available in Thai: Songkran. - SONGKRAN = 37; - - // Available in Japanese: Year-end Gift. - YEAR_END_GIFT = 38; - } - - -} diff --git a/google/ads/googleads/v6/enums/promotion_placeholder_field.proto b/google/ads/googleads/v6/enums/promotion_placeholder_field.proto deleted file mode 100644 index 49b3deb8e..000000000 --- a/google/ads/googleads/v6/enums/promotion_placeholder_field.proto +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "PromotionPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Promotion placeholder fields. - -// Values for Promotion placeholder fields. -message PromotionPlaceholderFieldEnum { - // Possible values for Promotion placeholder fields. - enum PromotionPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The text that appears on the ad when the extension is - // shown. - PROMOTION_TARGET = 2; - - // Data Type: STRING. Allows you to add "up to" phrase to the promotion, - // in case you have variable promotion rates. - DISCOUNT_MODIFIER = 3; - - // Data Type: INT64. Takes a value in micros, where 1 million micros - // represents 1%, and is shown as a percentage when rendered. - PERCENT_OFF = 4; - - // Data Type: MONEY. Requires a currency and an amount of money. - MONEY_AMOUNT_OFF = 5; - - // Data Type: STRING. A string that the user enters to get the discount. - PROMOTION_CODE = 6; - - // Data Type: MONEY. A minimum spend before the user qualifies for the - // promotion. - ORDERS_OVER_AMOUNT = 7; - - // Data Type: DATE. The start date of the promotion. - PROMOTION_START = 8; - - // Data Type: DATE. The end date of the promotion. - PROMOTION_END = 9; - - // Data Type: STRING. Describes the associated event for the promotion using - // one of the PromotionExtensionOccasion enum values, for example NEW_YEARS. - OCCASION = 10; - - // Data Type: URL_LIST. Final URLs to be used in the ad when using Upgraded - // URLs. - FINAL_URLS = 11; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 12; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 13; - - // Data Type: STRING. A string represented by a language code for the - // promotion. - LANGUAGE = 14; - - // Data Type: STRING. Final URL suffix for the ad when using parallel - // tracking. - FINAL_URL_SUFFIX = 15; - } - - -} diff --git a/google/ads/googleads/v6/enums/proximity_radius_units.proto b/google/ads/googleads/v6/enums/proximity_radius_units.proto deleted file mode 100644 index acee64dff..000000000 --- a/google/ads/googleads/v6/enums/proximity_radius_units.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ProximityRadiusUnitsProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing proximity radius units. - -// Container for enum describing unit of radius in proximity. -message ProximityRadiusUnitsEnum { - // The unit of radius distance in proximity (e.g. MILES) - enum ProximityRadiusUnits { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Miles - MILES = 2; - - // Kilometers - KILOMETERS = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/quality_score_bucket.proto b/google/ads/googleads/v6/enums/quality_score_bucket.proto deleted file mode 100644 index 6ffcec2d9..000000000 --- a/google/ads/googleads/v6/enums/quality_score_bucket.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "QualityScoreBucketProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing quality score buckets. - -// The relative performance compared to other advertisers. -message QualityScoreBucketEnum { - // Enum listing the possible quality score buckets. - enum QualityScoreBucket { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Quality of the creative is below average. - BELOW_AVERAGE = 2; - - // Quality of the creative is average. - AVERAGE = 3; - - // Quality of the creative is above average. - ABOVE_AVERAGE = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/reach_plan_ad_length.proto b/google/ads/googleads/v6/enums/reach_plan_ad_length.proto deleted file mode 100644 index c4303214e..000000000 --- a/google/ads/googleads/v6/enums/reach_plan_ad_length.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanAdLengthProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing ad lengths of a plannable video ad. - -// Message describing length of a plannable video ad. -message ReachPlanAdLengthEnum { - // Possible ad length values. - enum ReachPlanAdLength { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // 6 seconds long ad. - SIX_SECONDS = 2; - - // 15 or 20 seconds long ad. - FIFTEEN_OR_TWENTY_SECONDS = 3; - - // More than 20 seconds long ad. - TWENTY_SECONDS_OR_MORE = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/reach_plan_age_range.proto b/google/ads/googleads/v6/enums/reach_plan_age_range.proto deleted file mode 100644 index b4322ab8c..000000000 --- a/google/ads/googleads/v6/enums/reach_plan_age_range.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanAgeRangeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing a plannable age range. - -// Message describing plannable age ranges. -message ReachPlanAgeRangeEnum { - // Possible plannable age range values. - enum ReachPlanAgeRange { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Between 18 and 24 years old. - AGE_RANGE_18_24 = 503001; - - // Between 18 and 34 years old. - AGE_RANGE_18_34 = 2; - - // Between 18 and 44 years old. - AGE_RANGE_18_44 = 3; - - // Between 18 and 49 years old. - AGE_RANGE_18_49 = 4; - - // Between 18 and 54 years old. - AGE_RANGE_18_54 = 5; - - // Between 18 and 64 years old. - AGE_RANGE_18_64 = 6; - - // Between 18 and 65+ years old. - AGE_RANGE_18_65_UP = 7; - - // Between 21 and 34 years old. - AGE_RANGE_21_34 = 8; - - // Between 25 and 34 years old. - AGE_RANGE_25_34 = 503002; - - // Between 25 and 44 years old. - AGE_RANGE_25_44 = 9; - - // Between 25 and 49 years old. - AGE_RANGE_25_49 = 10; - - // Between 25 and 54 years old. - AGE_RANGE_25_54 = 11; - - // Between 25 and 64 years old. - AGE_RANGE_25_64 = 12; - - // Between 25 and 65+ years old. - AGE_RANGE_25_65_UP = 13; - - // Between 35 and 44 years old. - AGE_RANGE_35_44 = 503003; - - // Between 35 and 49 years old. - AGE_RANGE_35_49 = 14; - - // Between 35 and 54 years old. - AGE_RANGE_35_54 = 15; - - // Between 35 and 64 years old. - AGE_RANGE_35_64 = 16; - - // Between 35 and 65+ years old. - AGE_RANGE_35_65_UP = 17; - - // Between 45 and 54 years old. - AGE_RANGE_45_54 = 503004; - - // Between 45 and 64 years old. - AGE_RANGE_45_64 = 18; - - // Between 45 and 65+ years old. - AGE_RANGE_45_65_UP = 19; - - // Between 50 and 65+ years old. - AGE_RANGE_50_65_UP = 20; - - // Between 55 and 64 years old. - AGE_RANGE_55_64 = 503005; - - // Between 55 and 65+ years old. - AGE_RANGE_55_65_UP = 21; - - // 65 years old and beyond. - AGE_RANGE_65_UP = 503006; - } - - -} diff --git a/google/ads/googleads/v6/enums/reach_plan_network.proto b/google/ads/googleads/v6/enums/reach_plan_network.proto deleted file mode 100644 index 096e96a4b..000000000 --- a/google/ads/googleads/v6/enums/reach_plan_network.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanNetworkProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing a plannable network. - -// Container for enum describing plannable networks. -message ReachPlanNetworkEnum { - // Possible plannable network values. - enum ReachPlanNetwork { - // Not specified. - UNSPECIFIED = 0; - - // Used as a return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // YouTube network. - YOUTUBE = 2; - - // Google Video Partners (GVP) network. - GOOGLE_VIDEO_PARTNERS = 3; - - // A combination of the YouTube network and the Google Video Partners - // network. - YOUTUBE_AND_GOOGLE_VIDEO_PARTNERS = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/real_estate_placeholder_field.proto b/google/ads/googleads/v6/enums/real_estate_placeholder_field.proto deleted file mode 100644 index 81d37b91c..000000000 --- a/google/ads/googleads/v6/enums/real_estate_placeholder_field.proto +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "RealEstatePlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Real Estate placeholder fields. - -// Values for Real Estate placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message RealEstatePlaceholderFieldEnum { - // Possible values for Real Estate placeholder fields. - enum RealEstatePlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Unique ID. - LISTING_ID = 2; - - // Data Type: STRING. Main headline with listing name to be shown in dynamic - // ad. - LISTING_NAME = 3; - - // Data Type: STRING. City name to be shown in dynamic ad. - CITY_NAME = 4; - - // Data Type: STRING. Description of listing to be shown in dynamic ad. - DESCRIPTION = 5; - - // Data Type: STRING. Complete listing address, including postal code. - ADDRESS = 6; - - // Data Type: STRING. Price to be shown in the ad. - // Example: "100.00 USD" - PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 9; - - // Data Type: STRING. Type of property (house, condo, apartment, etc.) used - // to group like items together for recommendation engine. - PROPERTY_TYPE = 10; - - // Data Type: STRING. Type of listing (resale, rental, foreclosure, etc.) - // used to group like items together for recommendation engine. - LISTING_TYPE = 11; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 12; - - // Data Type: URL_LIST. Final URLs to be used in ad when using Upgraded - // URLs; the more specific the better (e.g. the individual URL of a specific - // listing and its location). - FINAL_URLS = 13; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 14; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 15; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 16; - - // Data Type: STRING_LIST. List of recommended listing IDs to show together - // with this item. - SIMILAR_LISTING_IDS = 17; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 18; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 19; - } - - -} diff --git a/google/ads/googleads/v6/enums/recommendation_type.proto b/google/ads/googleads/v6/enums/recommendation_type.proto deleted file mode 100644 index 9dda05bce..000000000 --- a/google/ads/googleads/v6/enums/recommendation_type.proto +++ /dev/null @@ -1,108 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Recommendation types. - -// Container for enum describing types of recommendations. -message RecommendationTypeEnum { - // Types of recommendations. - enum RecommendationType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Budget recommendation for campaigns that are currently budget-constrained - // (as opposed to the FORECASTING_CAMPAIGN_BUDGET recommendation, which - // applies to campaigns that are expected to become budget-constrained in - // the future). - CAMPAIGN_BUDGET = 2; - - // Keyword recommendation. - KEYWORD = 3; - - // Recommendation to add a new text ad. - TEXT_AD = 4; - - // Recommendation to update a campaign to use a Target CPA bidding strategy. - TARGET_CPA_OPT_IN = 5; - - // Recommendation to update a campaign to use the Maximize Conversions - // bidding strategy. - MAXIMIZE_CONVERSIONS_OPT_IN = 6; - - // Recommendation to enable Enhanced Cost Per Click for a campaign. - ENHANCED_CPC_OPT_IN = 7; - - // Recommendation to start showing your campaign's ads on Google Search - // Partners Websites. - SEARCH_PARTNERS_OPT_IN = 8; - - // Recommendation to update a campaign to use a Maximize Clicks bidding - // strategy. - MAXIMIZE_CLICKS_OPT_IN = 9; - - // Recommendation to start using the "Optimize" ad rotation setting for the - // given ad group. - OPTIMIZE_AD_ROTATION = 10; - - // Recommendation to add callout extensions to a campaign. - CALLOUT_EXTENSION = 11; - - // Recommendation to add sitelink extensions to a campaign. - SITELINK_EXTENSION = 12; - - // Recommendation to add call extensions to a campaign. - CALL_EXTENSION = 13; - - // Recommendation to change an existing keyword from one match type to a - // broader match type. - KEYWORD_MATCH_TYPE = 14; - - // Recommendation to move unused budget from one budget to a constrained - // budget. - MOVE_UNUSED_BUDGET = 15; - - // Budget recommendation for campaigns that are expected to become - // budget-constrained in the future (as opposed to the CAMPAIGN_BUDGET - // recommendation, which applies to campaigns that are currently - // budget-constrained). - FORECASTING_CAMPAIGN_BUDGET = 16; - - // Recommendation to update a campaign to use a Target ROAS bidding - // strategy. - TARGET_ROAS_OPT_IN = 17; - - // Recommendation to add a new responsive search ad. - RESPONSIVE_SEARCH_AD = 18; - } - - -} diff --git a/google/ads/googleads/v6/enums/resource_change_operation.proto b/google/ads/googleads/v6/enums/resource_change_operation.proto deleted file mode 100644 index 5d4dc799d..000000000 --- a/google/ads/googleads/v6/enums/resource_change_operation.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ResourceChangeOperationProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing the resource change operations in change event. - -// Container for enum describing resource change operations -// in the ChangeEvent resource. -message ResourceChangeOperationEnum { - // The operation on the changed resource in change_event resource. - enum ResourceChangeOperation { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents an unclassified operation unknown - // in this version. - UNKNOWN = 1; - - // The resource was created. - CREATE = 2; - - // The resource was modified. - UPDATE = 3; - - // The resource was removed. - REMOVE = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/response_content_type.proto b/google/ads/googleads/v6/enums/response_content_type.proto deleted file mode 100644 index a37829035..000000000 --- a/google/ads/googleads/v6/enums/response_content_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ResponseContentTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing the response content types used in mutate operations. - -// Container for possible response content types. -message ResponseContentTypeEnum { - // Possible response content types. - enum ResponseContentType { - // Not specified. Will return the resource name only in the response. - UNSPECIFIED = 0; - - // The mutate response will be the resource name. - RESOURCE_NAME_ONLY = 1; - - // The mutate response will be the resource name and the resource with - // all mutable fields. - MUTABLE_RESOURCE = 2; - } - - -} diff --git a/google/ads/googleads/v6/enums/search_engine_results_page_type.proto b/google/ads/googleads/v6/enums/search_engine_results_page_type.proto deleted file mode 100644 index a4a6c9c1e..000000000 --- a/google/ads/googleads/v6/enums/search_engine_results_page_type.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SearchEngineResultsPageTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing search engine results page types. - -// The type of the search engine results page. -message SearchEngineResultsPageTypeEnum { - // The type of the search engine results page. - enum SearchEngineResultsPageType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Only ads were contained in the search engine results page. - ADS_ONLY = 2; - - // Only organic results were contained in the search engine results page. - ORGANIC_ONLY = 3; - - // Both ads and organic results were contained in the search engine results - // page. - ADS_AND_ORGANIC = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/search_term_match_type.proto b/google/ads/googleads/v6/enums/search_term_match_type.proto deleted file mode 100644 index e370f2be8..000000000 --- a/google/ads/googleads/v6/enums/search_term_match_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermMatchTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing search term match types. - -// Container for enum describing match types for a keyword triggering an ad. -message SearchTermMatchTypeEnum { - // Possible match types for a keyword triggering an ad, including variants. - enum SearchTermMatchType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Broad match. - BROAD = 2; - - // Exact match. - EXACT = 3; - - // Phrase match. - PHRASE = 4; - - // Exact match (close variant). - NEAR_EXACT = 5; - - // Phrase match (close variant). - NEAR_PHRASE = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/search_term_targeting_status.proto b/google/ads/googleads/v6/enums/search_term_targeting_status.proto deleted file mode 100644 index f20d1bcdb..000000000 --- a/google/ads/googleads/v6/enums/search_term_targeting_status.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermTargetingStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing search term targeting statuses. - -// Container for enum indicating whether a search term is one of your targeted -// or excluded keywords. -message SearchTermTargetingStatusEnum { - // Indicates whether the search term is one of your targeted or excluded - // keywords. - enum SearchTermTargetingStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Search term is added to targeted keywords. - ADDED = 2; - - // Search term matches a negative keyword. - EXCLUDED = 3; - - // Search term has been both added and excluded. - ADDED_EXCLUDED = 4; - - // Search term is neither targeted nor excluded. - NONE = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/served_asset_field_type.proto b/google/ads/googleads/v6/enums/served_asset_field_type.proto deleted file mode 100644 index 9d9970cea..000000000 --- a/google/ads/googleads/v6/enums/served_asset_field_type.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "ServedAssetFieldTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing policy review statuses. - -// Container for enum describing possible asset field types. -message ServedAssetFieldTypeEnum { - // The possible asset field types. - enum ServedAssetFieldType { - // No value has been specified. - UNSPECIFIED = 0; - - // The received value is not known in this version. - // - // This is a response-only value. - UNKNOWN = 1; - - // The asset is used in headline 1. - HEADLINE_1 = 2; - - // The asset is used in headline 2. - HEADLINE_2 = 3; - - // The asset is used in headline 3. - HEADLINE_3 = 4; - - // The asset is used in description 1. - DESCRIPTION_1 = 5; - - // The asset is used in description 2. - DESCRIPTION_2 = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/shared_set_status.proto b/google/ads/googleads/v6/enums/shared_set_status.proto deleted file mode 100644 index d8297ddc8..000000000 --- a/google/ads/googleads/v6/enums/shared_set_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing shared set statuses. - -// Container for enum describing types of shared set statuses. -message SharedSetStatusEnum { - // Enum listing the possible shared set statuses. - enum SharedSetStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The shared set is enabled. - ENABLED = 2; - - // The shared set is removed and can no longer be used. - REMOVED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/shared_set_type.proto b/google/ads/googleads/v6/enums/shared_set_type.proto deleted file mode 100644 index 1bfcd81fb..000000000 --- a/google/ads/googleads/v6/enums/shared_set_type.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing shared set types. - -// Container for enum describing types of shared sets. -message SharedSetTypeEnum { - // Enum listing the possible shared set types. - enum SharedSetType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // A set of keywords that can be excluded from targeting. - NEGATIVE_KEYWORDS = 2; - - // A set of placements that can be excluded from targeting. - NEGATIVE_PLACEMENTS = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/simulation_modification_method.proto b/google/ads/googleads/v6/enums/simulation_modification_method.proto deleted file mode 100644 index 9952a5062..000000000 --- a/google/ads/googleads/v6/enums/simulation_modification_method.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SimulationModificationMethodProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing simulation modification methods. - -// Container for enum describing the method by which a simulation modifies -// a field. -message SimulationModificationMethodEnum { - // Enum describing the method by which a simulation modifies a field. - enum SimulationModificationMethod { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The values in a simulation were applied to all children of a given - // resource uniformly. Overrides on child resources were not respected. - UNIFORM = 2; - - // The values in a simulation were applied to the given resource. - // Overrides on child resources were respected, and traffic estimates - // do not include these resources. - DEFAULT = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/simulation_type.proto b/google/ads/googleads/v6/enums/simulation_type.proto deleted file mode 100644 index cdfee0b49..000000000 --- a/google/ads/googleads/v6/enums/simulation_type.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SimulationTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing simulation types. - -// Container for enum describing the field a simulation modifies. -message SimulationTypeEnum { - // Enum describing the field a simulation modifies. - enum SimulationType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The simulation is for a CPC bid. - CPC_BID = 2; - - // The simulation is for a CPV bid. - CPV_BID = 3; - - // The simulation is for a CPA target. - TARGET_CPA = 4; - - // The simulation is for a bid modifier. - BID_MODIFIER = 5; - - // The simulation is for a ROAS target. - TARGET_ROAS = 6; - - // The simulation is for a percent CPC bid. - PERCENT_CPC_BID = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/sitelink_placeholder_field.proto b/google/ads/googleads/v6/enums/sitelink_placeholder_field.proto deleted file mode 100644 index 541d1b70e..000000000 --- a/google/ads/googleads/v6/enums/sitelink_placeholder_field.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SitelinkPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Sitelink placeholder fields. - -// Values for Sitelink placeholder fields. -message SitelinkPlaceholderFieldEnum { - // Possible values for Sitelink placeholder fields. - enum SitelinkPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The link text for your sitelink. - TEXT = 2; - - // Data Type: STRING. First line of the sitelink description. - LINE_1 = 3; - - // Data Type: STRING. Second line of the sitelink description. - LINE_2 = 4; - - // Data Type: URL_LIST. Final URLs for the sitelink when using Upgraded - // URLs. - FINAL_URLS = 5; - - // Data Type: URL_LIST. Final Mobile URLs for the sitelink when using - // Upgraded URLs. - FINAL_MOBILE_URLS = 6; - - // Data Type: URL. Tracking template for the sitelink when using Upgraded - // URLs. - TRACKING_URL = 7; - - // Data Type: STRING. Final URL suffix for sitelink when using parallel - // tracking. - FINAL_URL_SUFFIX = 8; - } - - -} diff --git a/google/ads/googleads/v6/enums/slot.proto b/google/ads/googleads/v6/enums/slot.proto deleted file mode 100644 index 34eb8474d..000000000 --- a/google/ads/googleads/v6/enums/slot.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SlotProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing slots. - -// Container for enumeration of possible positions of the Ad. -message SlotEnum { - // Enumerates possible positions of the Ad. - enum Slot { - // Not specified. - UNSPECIFIED = 0; - - // The value is unknown in this version. - UNKNOWN = 1; - - // Google search: Side. - SEARCH_SIDE = 2; - - // Google search: Top. - SEARCH_TOP = 3; - - // Google search: Other. - SEARCH_OTHER = 4; - - // Google Display Network. - CONTENT = 5; - - // Search partners: Top. - SEARCH_PARTNER_TOP = 6; - - // Search partners: Other. - SEARCH_PARTNER_OTHER = 7; - - // Cross-network. - MIXED = 8; - } - - -} diff --git a/google/ads/googleads/v6/enums/spending_limit_type.proto b/google/ads/googleads/v6/enums/spending_limit_type.proto deleted file mode 100644 index 501c17dc3..000000000 --- a/google/ads/googleads/v6/enums/spending_limit_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SpendingLimitTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing SpendingLimit types. - -// Message describing spending limit types. -message SpendingLimitTypeEnum { - // The possible spending limit types used by certain resources as an - // alternative to absolute money values in micros. - enum SpendingLimitType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Infinite, indicates unlimited spending power. - INFINITE = 2; - } - - -} diff --git a/google/ads/googleads/v6/enums/structured_snippet_placeholder_field.proto b/google/ads/googleads/v6/enums/structured_snippet_placeholder_field.proto deleted file mode 100644 index 9b4a9b528..000000000 --- a/google/ads/googleads/v6/enums/structured_snippet_placeholder_field.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "StructuredSnippetPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Structured Snippet placeholder fields. - -// Values for Structured Snippet placeholder fields. -message StructuredSnippetPlaceholderFieldEnum { - // Possible values for Structured Snippet placeholder fields. - enum StructuredSnippetPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. The category of snippet of your products/services. - // Must match exactly one of the predefined structured snippets headers. - // For a list, visit - // https://developers.google.com/adwords/api/docs/appendix/structured-snippet-headers - HEADER = 2; - - // Data Type: STRING_LIST. Text values that describe your products/services. - // All text must be family safe. Special or non-ASCII characters are not - // permitted. A snippet can be at most 25 characters. - SNIPPETS = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/summary_row_setting.proto b/google/ads/googleads/v6/enums/summary_row_setting.proto deleted file mode 100644 index 25d18c36a..000000000 --- a/google/ads/googleads/v6/enums/summary_row_setting.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SummaryRowSettingProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing summary row setting. - -// Indicates summary row setting in request parameter. -message SummaryRowSettingEnum { - // Enum describing return summary row settings. - enum SummaryRowSetting { - // Not specified. - UNSPECIFIED = 0; - - // Represent unknown values of return summary row. - UNKNOWN = 1; - - // Do not return summary row. - NO_SUMMARY_ROW = 2; - - // Return summary row along with results. The summary row will be returned - // in the last batch alone (last batch will contain no results). - SUMMARY_ROW_WITH_RESULTS = 3; - - // Return summary row only and return no results. - SUMMARY_ROW_ONLY = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/system_managed_entity_source.proto b/google/ads/googleads/v6/enums/system_managed_entity_source.proto deleted file mode 100644 index 607d91cf0..000000000 --- a/google/ads/googleads/v6/enums/system_managed_entity_source.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "SystemManagedEntitySourceProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing system managed entity sources. - -// Container for enum describing possible system managed entity sources. -message SystemManagedResourceSourceEnum { - // Enum listing the possible system managed entity sources. - enum SystemManagedResourceSource { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Generated ad variations experiment ad. - AD_VARIATIONS = 2; - } - - -} diff --git a/google/ads/googleads/v6/enums/target_cpa_opt_in_recommendation_goal.proto b/google/ads/googleads/v6/enums/target_cpa_opt_in_recommendation_goal.proto deleted file mode 100644 index 9fb880db2..000000000 --- a/google/ads/googleads/v6/enums/target_cpa_opt_in_recommendation_goal.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TargetCpaOptInRecommendationGoalProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing TargetCpaOptIn recommendation goals. - -// Container for enum describing goals for TargetCpaOptIn recommendation. -message TargetCpaOptInRecommendationGoalEnum { - // Goal of TargetCpaOptIn recommendation. - enum TargetCpaOptInRecommendationGoal { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Recommendation to set Target CPA to maintain the same cost. - SAME_COST = 2; - - // Recommendation to set Target CPA to maintain the same conversions. - SAME_CONVERSIONS = 3; - - // Recommendation to set Target CPA to maintain the same CPA. - SAME_CPA = 4; - - // Recommendation to set Target CPA to a value that is as close as possible - // to, yet lower than, the actual CPA (computed for past 28 days). - CLOSEST_CPA = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/target_impression_share_location.proto b/google/ads/googleads/v6/enums/target_impression_share_location.proto deleted file mode 100644 index 73fa2251a..000000000 --- a/google/ads/googleads/v6/enums/target_impression_share_location.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TargetImpressionShareLocationProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing target impression share goal. - -// Container for enum describing where on the first search results page the -// automated bidding system should target impressions for the -// TargetImpressionShare bidding strategy. -message TargetImpressionShareLocationEnum { - // Enum describing possible goals. - enum TargetImpressionShareLocation { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Any location on the web page. - ANYWHERE_ON_PAGE = 2; - - // Top box of ads. - TOP_OF_PAGE = 3; - - // Top slot in the top box of ads. - ABSOLUTE_TOP_OF_PAGE = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/targeting_dimension.proto b/google/ads/googleads/v6/enums/targeting_dimension.proto deleted file mode 100644 index 8834f50b3..000000000 --- a/google/ads/googleads/v6/enums/targeting_dimension.proto +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TargetingDimensionProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing criteria types. - -// The dimensions that can be targeted. -message TargetingDimensionEnum { - // Enum describing possible targeting dimensions. - enum TargetingDimension { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Keyword criteria, e.g. 'mars cruise'. KEYWORD may be used as a custom bid - // dimension. Keywords are always a targeting dimension, so may not be set - // as a target "ALL" dimension with TargetRestriction. - KEYWORD = 2; - - // Audience criteria, which include user list, user interest, custom - // affinity, and custom in market. - AUDIENCE = 3; - - // Topic criteria for targeting categories of content, e.g. - // 'category::Animals>Pets' Used for Display and Video targeting. - TOPIC = 4; - - // Criteria for targeting gender. - GENDER = 5; - - // Criteria for targeting age ranges. - AGE_RANGE = 6; - - // Placement criteria, which include websites like 'www.flowers4sale.com', - // as well as mobile applications, mobile app categories, YouTube videos, - // and YouTube channels. - PLACEMENT = 7; - - // Criteria for parental status targeting. - PARENTAL_STATUS = 8; - - // Criteria for income range targeting. - INCOME_RANGE = 9; - } - - -} diff --git a/google/ads/googleads/v6/enums/time_type.proto b/google/ads/googleads/v6/enums/time_type.proto deleted file mode 100644 index 0bc249f3e..000000000 --- a/google/ads/googleads/v6/enums/time_type.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TimeTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing TimeType types. - -// Message describing time types. -message TimeTypeEnum { - // The possible time types used by certain resources as an alternative to - // absolute timestamps. - enum TimeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // As soon as possible. - NOW = 2; - - // An infinite point in the future. - FOREVER = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/tracking_code_page_format.proto b/google/ads/googleads/v6/enums/tracking_code_page_format.proto deleted file mode 100644 index 5d7694719..000000000 --- a/google/ads/googleads/v6/enums/tracking_code_page_format.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TrackingCodePageFormatProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum describing the format of the web page where the tracking -// tag and snippet will be installed. -message TrackingCodePageFormatEnum { - // The format of the web page where the tracking tag and snippet will be - // installed. - enum TrackingCodePageFormat { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Standard HTML page format. - HTML = 2; - - // Google AMP page format. - AMP = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/tracking_code_type.proto b/google/ads/googleads/v6/enums/tracking_code_type.proto deleted file mode 100644 index a4276ca8d..000000000 --- a/google/ads/googleads/v6/enums/tracking_code_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TrackingCodeTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Container for enum describing the type of the generated tag snippets for -// tracking conversions. -message TrackingCodeTypeEnum { - // The type of the generated tag snippets for tracking conversions. - enum TrackingCodeType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The snippet that is fired as a result of a website page loading. - WEBPAGE = 2; - - // The snippet contains a JavaScript function which fires the tag. This - // function is typically called from an onClick handler added to a link or - // button element on the page. - WEBPAGE_ONCLICK = 3; - - // For embedding on a mobile webpage. The snippet contains a JavaScript - // function which fires the tag. - CLICK_TO_CALL = 4; - - // The snippet that is used to replace the phone number on your website with - // a Google forwarding number for call tracking purposes. - WEBSITE_CALL = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/travel_placeholder_field.proto b/google/ads/googleads/v6/enums/travel_placeholder_field.proto deleted file mode 100644 index f585f6882..000000000 --- a/google/ads/googleads/v6/enums/travel_placeholder_field.proto +++ /dev/null @@ -1,128 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "TravelPlaceholderFieldProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing Travel placeholder fields. - -// Values for Travel placeholder fields. -// For more information about dynamic remarketing feeds, see -// https://support.google.com/google-ads/answer/6053288. -message TravelPlaceholderFieldEnum { - // Possible values for Travel placeholder fields. - enum TravelPlaceholderField { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Data Type: STRING. Required. Destination id. Example: PAR, LON. - // For feed items that only have destination id, destination id must be a - // unique key. For feed items that have both destination id and origin id, - // then the combination must be a unique key. - DESTINATION_ID = 2; - - // Data Type: STRING. Origin id. Example: PAR, LON. - // Combination of DESTINATION_ID and ORIGIN_ID must be - // unique per offer. - ORIGIN_ID = 3; - - // Data Type: STRING. Required. Main headline with name to be shown in - // dynamic ad. - TITLE = 4; - - // Data Type: STRING. The destination name. Shorter names are recommended. - DESTINATION_NAME = 5; - - // Data Type: STRING. Origin name. Shorter names are recommended. - ORIGIN_NAME = 6; - - // Data Type: STRING. Price to be shown in the ad. Highly recommended for - // dynamic ads. - // Example: "100.00 USD" - PRICE = 7; - - // Data Type: STRING. Formatted price to be shown in the ad. - // Example: "Starting at $100.00 USD", "$80 - $100" - FORMATTED_PRICE = 8; - - // Data Type: STRING. Sale price to be shown in the ad. - // Example: "80.00 USD" - SALE_PRICE = 9; - - // Data Type: STRING. Formatted sale price to be shown in the ad. - // Example: "On sale for $80.00", "$60 - $80" - FORMATTED_SALE_PRICE = 10; - - // Data Type: URL. Image to be displayed in the ad. - IMAGE_URL = 11; - - // Data Type: STRING. Category of travel offer used to group like items - // together for recommendation engine. - CATEGORY = 12; - - // Data Type: STRING_LIST. Keywords used for product retrieval. - CONTEXTUAL_KEYWORDS = 13; - - // Data Type: STRING. Address of travel offer, including postal code. - DESTINATION_ADDRESS = 14; - - // Data Type: URL_LIST. Required. Final URLs to be used in ad, when using - // Upgraded URLs; the more specific the better (e.g. the individual URL of a - // specific travel offer and its location). - FINAL_URL = 15; - - // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded - // URLs. - FINAL_MOBILE_URLS = 16; - - // Data Type: URL. Tracking template for the ad when using Upgraded URLs. - TRACKING_URL = 17; - - // Data Type: STRING. Android app link. Must be formatted as: - // android-app://{package_id}/{scheme}/{host_path}. - // The components are defined as follows: - // package_id: app ID as specified in Google Play. - // scheme: the scheme to pass to the application. Can be HTTP, or a custom - // scheme. - // host_path: identifies the specific content within your application. - ANDROID_APP_LINK = 18; - - // Data Type: STRING_LIST. List of recommended destination IDs to show - // together with this item. - SIMILAR_DESTINATION_IDS = 19; - - // Data Type: STRING. iOS app link. - IOS_APP_LINK = 20; - - // Data Type: INT64. iOS app store ID. - IOS_APP_STORE_ID = 21; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_identifier_source.proto b/google/ads/googleads/v6/enums/user_identifier_source.proto deleted file mode 100644 index 950b0c942..000000000 --- a/google/ads/googleads/v6/enums/user_identifier_source.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserIdentifierSourceProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing user identifier source - -// Container for enum describing the source of the user identifier for offline -// Store Sales third party uploads. -message UserIdentifierSourceEnum { - // The type of user identifier source for offline Store Sales third party - // uploads. - enum UserIdentifierSource { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version - UNKNOWN = 1; - - // Indicates that the user identifier was provided by the first party - // (advertiser). - FIRST_PARTY = 2; - - // Indicates that the user identifier was provided by the third party - // (partner). - THIRD_PARTY = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_interest_taxonomy_type.proto b/google/ads/googleads/v6/enums/user_interest_taxonomy_type.proto deleted file mode 100644 index f2cadb6a2..000000000 --- a/google/ads/googleads/v6/enums/user_interest_taxonomy_type.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserInterestTaxonomyTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing the UserInterest taxonomy type - -// Message describing a UserInterestTaxonomyType. -message UserInterestTaxonomyTypeEnum { - // Enum containing the possible UserInterestTaxonomyTypes. - enum UserInterestTaxonomyType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The affinity for this user interest. - AFFINITY = 2; - - // The market for this user interest. - IN_MARKET = 3; - - // Users known to have installed applications in the specified categories. - MOBILE_APP_INSTALL_USER = 4; - - // The geographical location of the interest-based vertical. - VERTICAL_GEO = 5; - - // User interest criteria for new smart phone users. - NEW_SMART_PHONE_USER = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_access_status.proto b/google/ads/googleads/v6/enums/user_list_access_status.proto deleted file mode 100644 index 9860644e9..000000000 --- a/google/ads/googleads/v6/enums/user_list_access_status.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListAccessStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing user list access status. - -// Indicates if this client still has access to the list. -message UserListAccessStatusEnum { - // Enum containing possible user list access statuses. - enum UserListAccessStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The access is enabled. - ENABLED = 2; - - // The access is disabled. - DISABLED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_closing_reason.proto b/google/ads/googleads/v6/enums/user_list_closing_reason.proto deleted file mode 100644 index 60a636691..000000000 --- a/google/ads/googleads/v6/enums/user_list_closing_reason.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListClosingReasonProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing user list closing reason. - -// Indicates the reason why the userlist was closed. -// This enum is only used when a list is auto-closed by the system. -message UserListClosingReasonEnum { - // Enum describing possible user list closing reasons. - enum UserListClosingReason { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The userlist was closed because of not being used for over one year. - UNUSED = 2; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_combined_rule_operator.proto b/google/ads/googleads/v6/enums/user_list_combined_rule_operator.proto deleted file mode 100644 index ef76ce080..000000000 --- a/google/ads/googleads/v6/enums/user_list_combined_rule_operator.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListCombinedRuleOperatorProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Logical operator connecting two rules. -message UserListCombinedRuleOperatorEnum { - // Enum describing possible user list combined rule operators. - enum UserListCombinedRuleOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // A AND B. - AND = 2; - - // A AND NOT B. - AND_NOT = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_crm_data_source_type.proto b/google/ads/googleads/v6/enums/user_list_crm_data_source_type.proto deleted file mode 100644 index fbb957ec2..000000000 --- a/google/ads/googleads/v6/enums/user_list_crm_data_source_type.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListCrmDataSourceTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Indicates source of Crm upload data. -message UserListCrmDataSourceTypeEnum { - // Enum describing possible user list crm data source type. - enum UserListCrmDataSourceType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The uploaded data is first-party data. - FIRST_PARTY = 2; - - // The uploaded data is from a third-party credit bureau. - THIRD_PARTY_CREDIT_BUREAU = 3; - - // The uploaded data is from a third-party voter file. - THIRD_PARTY_VOTER_FILE = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_date_rule_item_operator.proto b/google/ads/googleads/v6/enums/user_list_date_rule_item_operator.proto deleted file mode 100644 index 89bde9516..000000000 --- a/google/ads/googleads/v6/enums/user_list_date_rule_item_operator.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListDateRuleItemOperatorProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Supported rule operator for date type. -message UserListDateRuleItemOperatorEnum { - // Enum describing possible user list date rule item operators. - enum UserListDateRuleItemOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Equals. - EQUALS = 2; - - // Not Equals. - NOT_EQUALS = 3; - - // Before. - BEFORE = 4; - - // After. - AFTER = 5; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_logical_rule_operator.proto b/google/ads/googleads/v6/enums/user_list_logical_rule_operator.proto deleted file mode 100644 index 67e5f32fe..000000000 --- a/google/ads/googleads/v6/enums/user_list_logical_rule_operator.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListLogicalRuleOperatorProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// The logical operator of the rule. -message UserListLogicalRuleOperatorEnum { - // Enum describing possible user list logical rule operators. - enum UserListLogicalRuleOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // And - all of the operands. - ALL = 2; - - // Or - at least one of the operands. - ANY = 3; - - // Not - none of the operands. - NONE = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_membership_status.proto b/google/ads/googleads/v6/enums/user_list_membership_status.proto deleted file mode 100644 index a642b95b8..000000000 --- a/google/ads/googleads/v6/enums/user_list_membership_status.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListMembershipStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing user list membership status. - -// Membership status of this user list. Indicates whether a user list is open -// or active. Only open user lists can accumulate more users and can be used for -// targeting. -message UserListMembershipStatusEnum { - // Enum containing possible user list membership statuses. - enum UserListMembershipStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Open status - List is accruing members and can be targeted to. - OPEN = 2; - - // Closed status - No new members being added. Cannot be used for targeting. - CLOSED = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_number_rule_item_operator.proto b/google/ads/googleads/v6/enums/user_list_number_rule_item_operator.proto deleted file mode 100644 index 4ff880c79..000000000 --- a/google/ads/googleads/v6/enums/user_list_number_rule_item_operator.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListNumberRuleItemOperatorProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Supported rule operator for number type. -message UserListNumberRuleItemOperatorEnum { - // Enum describing possible user list number rule item operators. - enum UserListNumberRuleItemOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Greater than. - GREATER_THAN = 2; - - // Greater than or equal. - GREATER_THAN_OR_EQUAL = 3; - - // Equals. - EQUALS = 4; - - // Not equals. - NOT_EQUALS = 5; - - // Less than. - LESS_THAN = 6; - - // Less than or equal. - LESS_THAN_OR_EQUAL = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_prepopulation_status.proto b/google/ads/googleads/v6/enums/user_list_prepopulation_status.proto deleted file mode 100644 index 00e88a1e7..000000000 --- a/google/ads/googleads/v6/enums/user_list_prepopulation_status.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListPrepopulationStatusProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Indicates status of prepopulation based on the rule. -message UserListPrepopulationStatusEnum { - // Enum describing possible user list prepopulation status. - enum UserListPrepopulationStatus { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Prepopoulation is being requested. - REQUESTED = 2; - - // Prepopulation is finished. - FINISHED = 3; - - // Prepopulation failed. - FAILED = 4; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_rule_type.proto b/google/ads/googleads/v6/enums/user_list_rule_type.proto deleted file mode 100644 index 1a94cea7a..000000000 --- a/google/ads/googleads/v6/enums/user_list_rule_type.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListRuleTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Rule based user list rule type. -message UserListRuleTypeEnum { - // Enum describing possible user list rule types. - enum UserListRuleType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Conjunctive normal form. - AND_OF_ORS = 2; - - // Disjunctive normal form. - OR_OF_ANDS = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_size_range.proto b/google/ads/googleads/v6/enums/user_list_size_range.proto deleted file mode 100644 index 6db1e52e6..000000000 --- a/google/ads/googleads/v6/enums/user_list_size_range.proto +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListSizeRangeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing user list size range. - -// Size range in terms of number of users of a UserList. -message UserListSizeRangeEnum { - // Enum containing possible user list size ranges. - enum UserListSizeRange { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // User list has less than 500 users. - LESS_THAN_FIVE_HUNDRED = 2; - - // User list has number of users in range of 500 to 1000. - LESS_THAN_ONE_THOUSAND = 3; - - // User list has number of users in range of 1000 to 10000. - ONE_THOUSAND_TO_TEN_THOUSAND = 4; - - // User list has number of users in range of 10000 to 50000. - TEN_THOUSAND_TO_FIFTY_THOUSAND = 5; - - // User list has number of users in range of 50000 to 100000. - FIFTY_THOUSAND_TO_ONE_HUNDRED_THOUSAND = 6; - - // User list has number of users in range of 100000 to 300000. - ONE_HUNDRED_THOUSAND_TO_THREE_HUNDRED_THOUSAND = 7; - - // User list has number of users in range of 300000 to 500000. - THREE_HUNDRED_THOUSAND_TO_FIVE_HUNDRED_THOUSAND = 8; - - // User list has number of users in range of 500000 to 1 million. - FIVE_HUNDRED_THOUSAND_TO_ONE_MILLION = 9; - - // User list has number of users in range of 1 to 2 millions. - ONE_MILLION_TO_TWO_MILLION = 10; - - // User list has number of users in range of 2 to 3 millions. - TWO_MILLION_TO_THREE_MILLION = 11; - - // User list has number of users in range of 3 to 5 millions. - THREE_MILLION_TO_FIVE_MILLION = 12; - - // User list has number of users in range of 5 to 10 millions. - FIVE_MILLION_TO_TEN_MILLION = 13; - - // User list has number of users in range of 10 to 20 millions. - TEN_MILLION_TO_TWENTY_MILLION = 14; - - // User list has number of users in range of 20 to 30 millions. - TWENTY_MILLION_TO_THIRTY_MILLION = 15; - - // User list has number of users in range of 30 to 50 millions. - THIRTY_MILLION_TO_FIFTY_MILLION = 16; - - // User list has over 50 million users. - OVER_FIFTY_MILLION = 17; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_string_rule_item_operator.proto b/google/ads/googleads/v6/enums/user_list_string_rule_item_operator.proto deleted file mode 100644 index 75373b202..000000000 --- a/google/ads/googleads/v6/enums/user_list_string_rule_item_operator.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListStringRuleItemOperatorProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Supported rule operator for string type. -message UserListStringRuleItemOperatorEnum { - // Enum describing possible user list string rule item operators. - enum UserListStringRuleItemOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Contains. - CONTAINS = 2; - - // Equals. - EQUALS = 3; - - // Starts with. - STARTS_WITH = 4; - - // Ends with. - ENDS_WITH = 5; - - // Not equals. - NOT_EQUALS = 6; - - // Not contains. - NOT_CONTAINS = 7; - - // Not starts with. - NOT_STARTS_WITH = 8; - - // Not ends with. - NOT_ENDS_WITH = 9; - } - - -} diff --git a/google/ads/googleads/v6/enums/user_list_type.proto b/google/ads/googleads/v6/enums/user_list_type.proto deleted file mode 100644 index d2b2e3a03..000000000 --- a/google/ads/googleads/v6/enums/user_list_type.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "UserListTypeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing user list type. - -// The user list types. -message UserListTypeEnum { - // Enum containing possible user list types. - enum UserListType { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // UserList represented as a collection of conversion types. - REMARKETING = 2; - - // UserList represented as a combination of other user lists/interests. - LOGICAL = 3; - - // UserList created in the Google Ad Manager platform. - EXTERNAL_REMARKETING = 4; - - // UserList associated with a rule. - RULE_BASED = 5; - - // UserList with users similar to users of another UserList. - SIMILAR = 6; - - // UserList of first-party CRM data provided by advertiser in the form of - // emails or other formats. - CRM_BASED = 7; - } - - -} diff --git a/google/ads/googleads/v6/enums/vanity_pharma_display_url_mode.proto b/google/ads/googleads/v6/enums/vanity_pharma_display_url_mode.proto deleted file mode 100644 index 4d6aef3af..000000000 --- a/google/ads/googleads/v6/enums/vanity_pharma_display_url_mode.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "VanityPharmaDisplayUrlModeProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing vanity pharma display url modes. - -// The display mode for vanity pharma URLs. -message VanityPharmaDisplayUrlModeEnum { - // Enum describing possible display modes for vanity pharma URLs. - enum VanityPharmaDisplayUrlMode { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Replace vanity pharma URL with manufacturer website url. - MANUFACTURER_WEBSITE_URL = 2; - - // Replace vanity pharma URL with description of the website. - WEBSITE_DESCRIPTION = 3; - } - - -} diff --git a/google/ads/googleads/v6/enums/vanity_pharma_text.proto b/google/ads/googleads/v6/enums/vanity_pharma_text.proto deleted file mode 100644 index 3b58d82aa..000000000 --- a/google/ads/googleads/v6/enums/vanity_pharma_text.proto +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "VanityPharmaTextProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing vanity pharma texts. - -// The text that will be displayed in display URL of the text ad when website -// description is the selected display mode for vanity pharma URLs. -message VanityPharmaTextEnum { - // Enum describing possible text. - enum VanityPharmaText { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Prescription treatment website with website content in English. - PRESCRIPTION_TREATMENT_WEBSITE_EN = 2; - - // Prescription treatment website with website content in Spanish - // (Sitio de tratamientos con receta). - PRESCRIPTION_TREATMENT_WEBSITE_ES = 3; - - // Prescription device website with website content in English. - PRESCRIPTION_DEVICE_WEBSITE_EN = 4; - - // Prescription device website with website content in Spanish (Sitio de - // dispositivos con receta). - PRESCRIPTION_DEVICE_WEBSITE_ES = 5; - - // Medical device website with website content in English. - MEDICAL_DEVICE_WEBSITE_EN = 6; - - // Medical device website with website content in Spanish (Sitio de - // dispositivos médicos). - MEDICAL_DEVICE_WEBSITE_ES = 7; - - // Preventative treatment website with website content in English. - PREVENTATIVE_TREATMENT_WEBSITE_EN = 8; - - // Preventative treatment website with website content in Spanish (Sitio de - // tratamientos preventivos). - PREVENTATIVE_TREATMENT_WEBSITE_ES = 9; - - // Prescription contraception website with website content in English. - PRESCRIPTION_CONTRACEPTION_WEBSITE_EN = 10; - - // Prescription contraception website with website content in Spanish (Sitio - // de anticonceptivos con receta). - PRESCRIPTION_CONTRACEPTION_WEBSITE_ES = 11; - - // Prescription vaccine website with website content in English. - PRESCRIPTION_VACCINE_WEBSITE_EN = 12; - - // Prescription vaccine website with website content in Spanish (Sitio de - // vacunas con receta). - PRESCRIPTION_VACCINE_WEBSITE_ES = 13; - } - - -} diff --git a/google/ads/googleads/v6/enums/webpage_condition_operand.proto b/google/ads/googleads/v6/enums/webpage_condition_operand.proto deleted file mode 100644 index ee3bcbd8b..000000000 --- a/google/ads/googleads/v6/enums/webpage_condition_operand.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "WebpageConditionOperandProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing webpage condition operand. - -// Container for enum describing webpage condition operand in webpage criterion. -message WebpageConditionOperandEnum { - // The webpage condition operand in webpage criterion. - enum WebpageConditionOperand { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Operand denoting a webpage URL targeting condition. - URL = 2; - - // Operand denoting a webpage category targeting condition. - CATEGORY = 3; - - // Operand denoting a webpage title targeting condition. - PAGE_TITLE = 4; - - // Operand denoting a webpage content targeting condition. - PAGE_CONTENT = 5; - - // Operand denoting a webpage custom label targeting condition. - CUSTOM_LABEL = 6; - } - - -} diff --git a/google/ads/googleads/v6/enums/webpage_condition_operator.proto b/google/ads/googleads/v6/enums/webpage_condition_operator.proto deleted file mode 100644 index cee2f5c15..000000000 --- a/google/ads/googleads/v6/enums/webpage_condition_operator.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.enums; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Enums"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/enums;enums"; -option java_multiple_files = true; -option java_outer_classname = "WebpageConditionOperatorProto"; -option java_package = "com.google.ads.googleads.v6.enums"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Enums"; -option ruby_package = "Google::Ads::GoogleAds::V6::Enums"; - -// Proto file describing webpage condition operator. - -// Container for enum describing webpage condition operator in webpage -// criterion. -message WebpageConditionOperatorEnum { - // The webpage condition operator in webpage criterion. - enum WebpageConditionOperator { - // Not specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // The argument web condition is equal to the compared web condition. - EQUALS = 2; - - // The argument web condition is part of the compared web condition. - CONTAINS = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/BUILD.bazel b/google/ads/googleads/v6/errors/BUILD.bazel deleted file mode 100644 index 9485ae565..000000000 --- a/google/ads/googleads/v6/errors/BUILD.bazel +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "errors_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v6/common:common_proto", - "//google/ads/googleads/v6/enums:enums_proto", - "//google/api:annotations_proto", - "@com_google_protobuf//:duration_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_proto_library", -) - -java_proto_library( - name = "errors_java_proto", - deps = [":errors_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_proto_library", -) - -csharp_proto_library( - name = "errors_csharp_proto", - deps = [":errors_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_proto_library", -) - -ruby_proto_library( - name = "errors_ruby_proto", - deps = [":errors_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_proto_library", -) - -py_proto_library( - name = "errors_py_proto", - deps = [":errors_proto"], -) diff --git a/google/ads/googleads/v6/errors/access_invitation_error.proto b/google/ads/googleads/v6/errors/access_invitation_error.proto deleted file mode 100644 index 788bd0063..000000000 --- a/google/ads/googleads/v6/errors/access_invitation_error.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AccessInvitationErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing AccessInvitation errors. - -// Container for enum describing possible AccessInvitation errors. -message AccessInvitationErrorEnum { - // Enum describing possible AccessInvitation errors. - enum AccessInvitationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The email address is invalid for sending an invitation. - INVALID_EMAIL_ADDRESS = 2; - - // Email address already has access to this customer. - EMAIL_ADDRESS_ALREADY_HAS_ACCESS = 3; - - // Invalid invitation status for the operation. - INVALID_INVITATION_STATUS = 4; - - // Email address cannot be like abc+foo@google.com. - GOOGLE_CONSUMER_ACCOUNT_NOT_ALLOWED = 5; - - // Invalid invitation id. - INVALID_INVITATION_ID = 6; - - // Email address already has a pending invitation. - EMAIL_ADDRESS_ALREADY_HAS_PENDING_INVITATION = 7; - - // Pending invitation limit exceeded for the customer. - PENDING_INVITATIONS_LIMIT_EXCEEDED = 8; - } - - -} diff --git a/google/ads/googleads/v6/errors/account_budget_proposal_error.proto b/google/ads/googleads/v6/errors/account_budget_proposal_error.proto deleted file mode 100644 index 436f8839b..000000000 --- a/google/ads/googleads/v6/errors/account_budget_proposal_error.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing account budget proposal errors. - -// Container for enum describing possible account budget proposal errors. -message AccountBudgetProposalErrorEnum { - // Enum describing possible account budget proposal errors. - enum AccountBudgetProposalError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The field mask must be empty for create/end/remove proposals. - FIELD_MASK_NOT_ALLOWED = 2; - - // The field cannot be set because of the proposal type. - IMMUTABLE_FIELD = 3; - - // The field is required because of the proposal type. - REQUIRED_FIELD_MISSING = 4; - - // Proposals that have been approved cannot be cancelled. - CANNOT_CANCEL_APPROVED_PROPOSAL = 5; - - // Budgets that haven't been approved cannot be removed. - CANNOT_REMOVE_UNAPPROVED_BUDGET = 6; - - // Budgets that are currently running cannot be removed. - CANNOT_REMOVE_RUNNING_BUDGET = 7; - - // Budgets that haven't been approved cannot be truncated. - CANNOT_END_UNAPPROVED_BUDGET = 8; - - // Only budgets that are currently running can be truncated. - CANNOT_END_INACTIVE_BUDGET = 9; - - // All budgets must have names. - BUDGET_NAME_REQUIRED = 10; - - // Expired budgets cannot be edited after a sufficient amount of time has - // passed. - CANNOT_UPDATE_OLD_BUDGET = 11; - - // It is not permissible a propose a new budget that ends in the past. - CANNOT_END_IN_PAST = 12; - - // An expired budget cannot be extended to overlap with the running budget. - CANNOT_EXTEND_END_TIME = 13; - - // A purchase order number is required. - PURCHASE_ORDER_NUMBER_REQUIRED = 14; - - // Budgets that have a pending update cannot be updated. - PENDING_UPDATE_PROPOSAL_EXISTS = 15; - - // Cannot propose more than one budget when the corresponding billing setup - // hasn't been approved. - MULTIPLE_BUDGETS_NOT_ALLOWED_FOR_UNAPPROVED_BILLING_SETUP = 16; - - // Cannot update the start time of a budget that has already started. - CANNOT_UPDATE_START_TIME_FOR_STARTED_BUDGET = 17; - - // Cannot update the spending limit of a budget with an amount lower than - // what has already been spent. - SPENDING_LIMIT_LOWER_THAN_ACCRUED_COST_NOT_ALLOWED = 18; - - // Cannot propose a budget update without actually changing any fields. - UPDATE_IS_NO_OP = 19; - - // The end time must come after the start time. - END_TIME_MUST_FOLLOW_START_TIME = 20; - - // The budget's date range must fall within the date range of its billing - // setup. - BUDGET_DATE_RANGE_INCOMPATIBLE_WITH_BILLING_SETUP = 21; - - // The user is not authorized to mutate budgets for the given billing setup. - NOT_AUTHORIZED = 22; - - // Mutates are not allowed for the given billing setup. - INVALID_BILLING_SETUP = 23; - - // Budget creation failed as it overlaps with an pending budget proposal - // or an approved budget. - OVERLAPS_EXISTING_BUDGET = 24; - - // The control setting in user's payments profile doesn't allow budget - // creation through API. Log in to Google Ads to create budget. - CANNOT_CREATE_BUDGET_THROUGH_API = 25; - } - - -} diff --git a/google/ads/googleads/v6/errors/account_link_error.proto b/google/ads/googleads/v6/errors/account_link_error.proto deleted file mode 100644 index 8f0d5bdcf..000000000 --- a/google/ads/googleads/v6/errors/account_link_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing AccountLink errors. - -// Container for enum describing possible account link errors. -message AccountLinkErrorEnum { - // Enum describing possible account link errors. - enum AccountLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The new link status is invalid. - INVALID_STATUS = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/ad_customizer_error.proto b/google/ads/googleads/v6/errors/ad_customizer_error.proto deleted file mode 100644 index 8c05dd650..000000000 --- a/google/ads/googleads/v6/errors/ad_customizer_error.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdCustomizerErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing ad customizer errors. - -// Container for enum describing possible ad customizer errors. -message AdCustomizerErrorEnum { - // Enum describing possible ad customizer errors. - enum AdCustomizerError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Invalid date argument in countdown function. - COUNTDOWN_INVALID_DATE_FORMAT = 2; - - // Countdown end date is in the past. - COUNTDOWN_DATE_IN_PAST = 3; - - // Invalid locale string in countdown function. - COUNTDOWN_INVALID_LOCALE = 4; - - // Days-before argument to countdown function is not positive. - COUNTDOWN_INVALID_START_DAYS_BEFORE = 5; - - // A user list referenced in an IF function does not exist. - UNKNOWN_USER_LIST = 6; - } - - -} diff --git a/google/ads/googleads/v6/errors/ad_error.proto b/google/ads/googleads/v6/errors/ad_error.proto deleted file mode 100644 index edef59838..000000000 --- a/google/ads/googleads/v6/errors/ad_error.proto +++ /dev/null @@ -1,505 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing ad errors. - -// Container for enum describing possible ad errors. -message AdErrorEnum { - // Enum describing possible ad errors. - enum AdError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Ad customizers are not supported for ad type. - AD_CUSTOMIZERS_NOT_SUPPORTED_FOR_AD_TYPE = 2; - - // Estimating character sizes the string is too long. - APPROXIMATELY_TOO_LONG = 3; - - // Estimating character sizes the string is too short. - APPROXIMATELY_TOO_SHORT = 4; - - // There is a problem with the snippet. - BAD_SNIPPET = 5; - - // Cannot modify an ad. - CANNOT_MODIFY_AD = 6; - - // business name and url cannot be set at the same time - CANNOT_SET_BUSINESS_NAME_IF_URL_SET = 7; - - // The specified field is incompatible with this ad's type or settings. - CANNOT_SET_FIELD = 8; - - // Cannot set field when originAdId is set. - CANNOT_SET_FIELD_WITH_ORIGIN_AD_ID_SET = 9; - - // Cannot set field when an existing ad id is set for sharing. - CANNOT_SET_FIELD_WITH_AD_ID_SET_FOR_SHARING = 10; - - // Cannot set allowFlexibleColor false if no color is provided by user. - CANNOT_SET_ALLOW_FLEXIBLE_COLOR_FALSE = 11; - - // When user select native, no color control is allowed because we will - // always respect publisher color for native format serving. - CANNOT_SET_COLOR_CONTROL_WHEN_NATIVE_FORMAT_SETTING = 12; - - // Cannot specify a url for the ad type - CANNOT_SET_URL = 13; - - // Cannot specify a tracking or mobile url without also setting final urls - CANNOT_SET_WITHOUT_FINAL_URLS = 14; - - // Cannot specify a legacy url and a final url simultaneously - CANNOT_SET_WITH_FINAL_URLS = 15; - - // Cannot specify a urls in UrlData and in template fields simultaneously. - CANNOT_SET_WITH_URL_DATA = 17; - - // This operator cannot be used with a subclass of Ad. - CANNOT_USE_AD_SUBCLASS_FOR_OPERATOR = 18; - - // Customer is not approved for mobile ads. - CUSTOMER_NOT_APPROVED_MOBILEADS = 19; - - // Customer is not approved for 3PAS richmedia ads. - CUSTOMER_NOT_APPROVED_THIRDPARTY_ADS = 20; - - // Customer is not approved for 3PAS redirect richmedia (Ad Exchange) ads. - CUSTOMER_NOT_APPROVED_THIRDPARTY_REDIRECT_ADS = 21; - - // Not an eligible customer - CUSTOMER_NOT_ELIGIBLE = 22; - - // Customer is not eligible for updating beacon url - CUSTOMER_NOT_ELIGIBLE_FOR_UPDATING_BEACON_URL = 23; - - // There already exists an ad with the same dimensions in the union. - DIMENSION_ALREADY_IN_UNION = 24; - - // Ad's dimension must be set before setting union dimension. - DIMENSION_MUST_BE_SET = 25; - - // Ad's dimension must be included in the union dimensions. - DIMENSION_NOT_IN_UNION = 26; - - // Display Url cannot be specified (applies to Ad Exchange Ads) - DISPLAY_URL_CANNOT_BE_SPECIFIED = 27; - - // Telephone number contains invalid characters or invalid format. Please - // re-enter your number using digits (0-9), dashes (-), and parentheses - // only. - DOMESTIC_PHONE_NUMBER_FORMAT = 28; - - // Emergency telephone numbers are not allowed. Please enter a valid - // domestic phone number to connect customers to your business. - EMERGENCY_PHONE_NUMBER = 29; - - // A required field was not specified or is an empty string. - EMPTY_FIELD = 30; - - // A feed attribute referenced in an ad customizer tag is not in the ad - // customizer mapping for the feed. - FEED_ATTRIBUTE_MUST_HAVE_MAPPING_FOR_TYPE_ID = 31; - - // The ad customizer field mapping for the feed attribute does not match the - // expected field type. - FEED_ATTRIBUTE_MAPPING_TYPE_MISMATCH = 32; - - // The use of ad customizer tags in the ad text is disallowed. Details in - // trigger. - ILLEGAL_AD_CUSTOMIZER_TAG_USE = 33; - - // Tags of the form {PH_x}, where x is a number, are disallowed in ad text. - ILLEGAL_TAG_USE = 34; - - // The dimensions of the ad are specified or derived in multiple ways and - // are not consistent. - INCONSISTENT_DIMENSIONS = 35; - - // The status cannot differ among template ads of the same union. - INCONSISTENT_STATUS_IN_TEMPLATE_UNION = 36; - - // The length of the string is not valid. - INCORRECT_LENGTH = 37; - - // The ad is ineligible for upgrade. - INELIGIBLE_FOR_UPGRADE = 38; - - // User cannot create mobile ad for countries targeted in specified - // campaign. - INVALID_AD_ADDRESS_CAMPAIGN_TARGET = 39; - - // Invalid Ad type. A specific type of Ad is required. - INVALID_AD_TYPE = 40; - - // Headline, description or phone cannot be present when creating mobile - // image ad. - INVALID_ATTRIBUTES_FOR_MOBILE_IMAGE = 41; - - // Image cannot be present when creating mobile text ad. - INVALID_ATTRIBUTES_FOR_MOBILE_TEXT = 42; - - // Invalid call to action text. - INVALID_CALL_TO_ACTION_TEXT = 43; - - // Invalid character in URL. - INVALID_CHARACTER_FOR_URL = 44; - - // Creative's country code is not valid. - INVALID_COUNTRY_CODE = 45; - - // Invalid use of Expanded Dynamic Search Ads tags ({lpurl} etc.) - INVALID_EXPANDED_DYNAMIC_SEARCH_AD_TAG = 47; - - // An input error whose real reason was not properly mapped (should not - // happen). - INVALID_INPUT = 48; - - // An invalid markup language was entered. - INVALID_MARKUP_LANGUAGE = 49; - - // An invalid mobile carrier was entered. - INVALID_MOBILE_CARRIER = 50; - - // Specified mobile carriers target a country not targeted by the campaign. - INVALID_MOBILE_CARRIER_TARGET = 51; - - // Wrong number of elements for given element type - INVALID_NUMBER_OF_ELEMENTS = 52; - - // The format of the telephone number is incorrect. Please re-enter the - // number using the correct format. - INVALID_PHONE_NUMBER_FORMAT = 53; - - // The certified vendor format id is incorrect. - INVALID_RICH_MEDIA_CERTIFIED_VENDOR_FORMAT_ID = 54; - - // The template ad data contains validation errors. - INVALID_TEMPLATE_DATA = 55; - - // The template field doesn't have have the correct type. - INVALID_TEMPLATE_ELEMENT_FIELD_TYPE = 56; - - // Invalid template id. - INVALID_TEMPLATE_ID = 57; - - // After substituting replacement strings, the line is too wide. - LINE_TOO_WIDE = 58; - - // The feed referenced must have ad customizer mapping to be used in a - // customizer tag. - MISSING_AD_CUSTOMIZER_MAPPING = 59; - - // Missing address component in template element address field. - MISSING_ADDRESS_COMPONENT = 60; - - // An ad name must be entered. - MISSING_ADVERTISEMENT_NAME = 61; - - // Business name must be entered. - MISSING_BUSINESS_NAME = 62; - - // Description (line 2) must be entered. - MISSING_DESCRIPTION1 = 63; - - // Description (line 3) must be entered. - MISSING_DESCRIPTION2 = 64; - - // The destination url must contain at least one tag (e.g. {lpurl}) - MISSING_DESTINATION_URL_TAG = 65; - - // The tracking url template of ExpandedDynamicSearchAd must contain at - // least one tag. (e.g. {lpurl}) - MISSING_LANDING_PAGE_URL_TAG = 66; - - // A valid dimension must be specified for this ad. - MISSING_DIMENSION = 67; - - // A display URL must be entered. - MISSING_DISPLAY_URL = 68; - - // Headline must be entered. - MISSING_HEADLINE = 69; - - // A height must be entered. - MISSING_HEIGHT = 70; - - // An image must be entered. - MISSING_IMAGE = 71; - - // Marketing image or product videos are required. - MISSING_MARKETING_IMAGE_OR_PRODUCT_VIDEOS = 72; - - // The markup language in which your site is written must be entered. - MISSING_MARKUP_LANGUAGES = 73; - - // A mobile carrier must be entered. - MISSING_MOBILE_CARRIER = 74; - - // Phone number must be entered. - MISSING_PHONE = 75; - - // Missing required template fields - MISSING_REQUIRED_TEMPLATE_FIELDS = 76; - - // Missing a required field value - MISSING_TEMPLATE_FIELD_VALUE = 77; - - // The ad must have text. - MISSING_TEXT = 78; - - // A visible URL must be entered. - MISSING_VISIBLE_URL = 79; - - // A width must be entered. - MISSING_WIDTH = 80; - - // Only 1 feed can be used as the source of ad customizer substitutions in a - // single ad. - MULTIPLE_DISTINCT_FEEDS_UNSUPPORTED = 81; - - // TempAdUnionId must be use when adding template ads. - MUST_USE_TEMP_AD_UNION_ID_ON_ADD = 82; - - // The string has too many characters. - TOO_LONG = 83; - - // The string has too few characters. - TOO_SHORT = 84; - - // Ad union dimensions cannot change for saved ads. - UNION_DIMENSIONS_CANNOT_CHANGE = 85; - - // Address component is not {country, lat, lng}. - UNKNOWN_ADDRESS_COMPONENT = 86; - - // Unknown unique field name - UNKNOWN_FIELD_NAME = 87; - - // Unknown unique name (template element type specifier) - UNKNOWN_UNIQUE_NAME = 88; - - // Unsupported ad dimension - UNSUPPORTED_DIMENSIONS = 89; - - // URL starts with an invalid scheme. - URL_INVALID_SCHEME = 90; - - // URL ends with an invalid top-level domain name. - URL_INVALID_TOP_LEVEL_DOMAIN = 91; - - // URL contains illegal characters. - URL_MALFORMED = 92; - - // URL must contain a host name. - URL_NO_HOST = 93; - - // URL not equivalent during upgrade. - URL_NOT_EQUIVALENT = 94; - - // URL host name too long to be stored as visible URL (applies to Ad - // Exchange ads) - URL_HOST_NAME_TOO_LONG = 95; - - // URL must start with a scheme. - URL_NO_SCHEME = 96; - - // URL should end in a valid domain extension, such as .com or .net. - URL_NO_TOP_LEVEL_DOMAIN = 97; - - // URL must not end with a path. - URL_PATH_NOT_ALLOWED = 98; - - // URL must not specify a port. - URL_PORT_NOT_ALLOWED = 99; - - // URL must not contain a query. - URL_QUERY_NOT_ALLOWED = 100; - - // A url scheme is not allowed in front of tag in tracking url template - // (e.g. http://{lpurl}) - URL_SCHEME_BEFORE_EXPANDED_DYNAMIC_SEARCH_AD_TAG = 102; - - // The user does not have permissions to create a template ad for the given - // template. - USER_DOES_NOT_HAVE_ACCESS_TO_TEMPLATE = 103; - - // Expandable setting is inconsistent/wrong. For example, an AdX ad is - // invalid if it has a expandable vendor format but no expanding directions - // specified, or expanding directions is specified, but the vendor format is - // not expandable. - INCONSISTENT_EXPANDABLE_SETTINGS = 104; - - // Format is invalid - INVALID_FORMAT = 105; - - // The text of this field did not match a pattern of allowed values. - INVALID_FIELD_TEXT = 106; - - // Template element is mising - ELEMENT_NOT_PRESENT = 107; - - // Error occurred during image processing - IMAGE_ERROR = 108; - - // The value is not within the valid range - VALUE_NOT_IN_RANGE = 109; - - // Template element field is not present - FIELD_NOT_PRESENT = 110; - - // Address is incomplete - ADDRESS_NOT_COMPLETE = 111; - - // Invalid address - ADDRESS_INVALID = 112; - - // Error retrieving specified video - VIDEO_RETRIEVAL_ERROR = 113; - - // Error processing audio - AUDIO_ERROR = 114; - - // Display URL is incorrect for YouTube PYV ads - INVALID_YOUTUBE_DISPLAY_URL = 115; - - // Too many product Images in GmailAd - TOO_MANY_PRODUCT_IMAGES = 116; - - // Too many product Videos in GmailAd - TOO_MANY_PRODUCT_VIDEOS = 117; - - // The device preference is not compatible with the ad type - INCOMPATIBLE_AD_TYPE_AND_DEVICE_PREFERENCE = 118; - - // Call tracking is not supported for specified country. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 119; - - // Carrier specific short number is not allowed. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 120; - - // Specified phone number type is disallowed. - DISALLOWED_NUMBER_TYPE = 121; - - // Phone number not supported for country. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 122; - - // Phone number not supported with call tracking enabled for country. - PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 123; - - // Premium rate phone number is not allowed. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 124; - - // Vanity phone number is not allowed. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 125; - - // Invalid call conversion type id. - INVALID_CALL_CONVERSION_TYPE_ID = 126; - - // Cannot disable call conversion and set conversion type id. - CANNOT_DISABLE_CALL_CONVERSION_AND_SET_CONVERSION_TYPE_ID = 127; - - // Cannot set path2 without path1. - CANNOT_SET_PATH2_WITHOUT_PATH1 = 128; - - // Missing domain name in campaign setting when adding expanded dynamic - // search ad. - MISSING_DYNAMIC_SEARCH_ADS_SETTING_DOMAIN_NAME = 129; - - // The associated ad is not compatible with restriction type. - INCOMPATIBLE_WITH_RESTRICTION_TYPE = 130; - - // Consent for call recording is required for creating/updating call only - // ads. Please see https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 131; - - // Either an image or a media bundle is required in a display upload ad. - MISSING_IMAGE_OR_MEDIA_BUNDLE = 132; - - // The display upload product type is not supported in this campaign. - PRODUCT_TYPE_NOT_SUPPORTED_IN_THIS_CAMPAIGN = 133; - - // The default value of an ad placeholder can not be the empty string. - PLACEHOLDER_CANNOT_HAVE_EMPTY_DEFAULT_VALUE = 134; - - // Ad placeholders with countdown functions must not have a default value. - PLACEHOLDER_COUNTDOWN_FUNCTION_CANNOT_HAVE_DEFAULT_VALUE = 135; - - // A previous ad placeholder that had a default value was found which means - // that all (non-countdown) placeholders must have a default value. This - // ad placeholder does not have a default value. - PLACEHOLDER_DEFAULT_VALUE_MISSING = 136; - - // A previous ad placeholder that did not have a default value was found - // which means that no placeholders may have a default value. This - // ad placeholder does have a default value. - UNEXPECTED_PLACEHOLDER_DEFAULT_VALUE = 137; - - // Two ad customizers may not be directly adjacent in an ad text. They must - // be separated by at least one character. - AD_CUSTOMIZERS_MAY_NOT_BE_ADJACENT = 138; - - // The ad is not associated with any enabled AdGroupAd, and cannot be - // updated. - UPDATING_AD_WITH_NO_ENABLED_ASSOCIATION = 139; - - // Too many ad customizers in one asset. - TOO_MANY_AD_CUSTOMIZERS = 141; - - // The ad customizer tag is recognized, but the format is invalid. - INVALID_AD_CUSTOMIZER_FORMAT = 142; - - // Customizer tags cannot be nested. - NESTED_AD_CUSTOMIZER_SYNTAX = 143; - - // The ad customizer syntax used in the ad is not supported. - UNSUPPORTED_AD_CUSTOMIZER_SYNTAX = 144; - - // There exists unpaired brace in the ad customizer tag. - UNPAIRED_BRACE_IN_AD_CUSTOMIZER_TAG = 145; - - // More than one type of countdown tag exists among all text lines. - MORE_THAN_ONE_COUNTDOWN_TAG_TYPE_EXISTS = 146; - - // Date time in the countdown tag is invalid. - DATE_TIME_IN_COUNTDOWN_TAG_IS_INVALID = 147; - - // Date time in the countdown tag is in the past. - DATE_TIME_IN_COUNTDOWN_TAG_IS_PAST = 148; - - // Cannot recognize the ad customizer tag. - UNRECOGNIZED_AD_CUSTOMIZER_TAG_FOUND = 149; - } - - -} diff --git a/google/ads/googleads/v6/errors/ad_group_ad_error.proto b/google/ads/googleads/v6/errors/ad_group_ad_error.proto deleted file mode 100644 index 2e4ea8000..000000000 --- a/google/ads/googleads/v6/errors/ad_group_ad_error.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing ad group ad errors. - -// Container for enum describing possible ad group ad errors. -message AdGroupAdErrorEnum { - // Enum describing possible ad group ad errors. - enum AdGroupAdError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // No link found between the adgroup ad and the label. - AD_GROUP_AD_LABEL_DOES_NOT_EXIST = 2; - - // The label has already been attached to the adgroup ad. - AD_GROUP_AD_LABEL_ALREADY_EXISTS = 3; - - // The specified ad was not found in the adgroup - AD_NOT_UNDER_ADGROUP = 4; - - // Removed ads may not be modified - CANNOT_OPERATE_ON_REMOVED_ADGROUPAD = 5; - - // An ad of this type is deprecated and cannot be created. Only deletions - // are permitted. - CANNOT_CREATE_DEPRECATED_ADS = 6; - - // Text ads are deprecated and cannot be created. Use expanded text ads - // instead. - CANNOT_CREATE_TEXT_ADS = 7; - - // A required field was not specified or is an empty string. - EMPTY_FIELD = 8; - - // An ad may only be modified once per call - RESOURCE_REFERENCED_IN_MULTIPLE_OPS = 9; - - // AdGroupAds with the given ad type cannot be paused. - AD_TYPE_CANNOT_BE_PAUSED = 10; - - // AdGroupAds with the given ad type cannot be removed. - AD_TYPE_CANNOT_BE_REMOVED = 11; - } - - -} diff --git a/google/ads/googleads/v6/errors/ad_group_bid_modifier_error.proto b/google/ads/googleads/v6/errors/ad_group_bid_modifier_error.proto deleted file mode 100644 index dd23ab9d6..000000000 --- a/google/ads/googleads/v6/errors/ad_group_bid_modifier_error.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupBidModifierErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing ad group bid modifier errors. - -// Container for enum describing possible ad group bid modifier errors. -message AdGroupBidModifierErrorEnum { - // Enum describing possible ad group bid modifier errors. - enum AdGroupBidModifierError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The criterion ID does not support bid modification. - CRITERION_ID_NOT_SUPPORTED = 2; - - // Cannot override the bid modifier for the given criterion ID if the parent - // campaign is opted out of the same criterion. - CANNOT_OVERRIDE_OPTED_OUT_CAMPAIGN_CRITERION_BID_MODIFIER = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/ad_group_criterion_error.proto b/google/ads/googleads/v6/errors/ad_group_criterion_error.proto deleted file mode 100644 index b29dd497e..000000000 --- a/google/ads/googleads/v6/errors/ad_group_criterion_error.proto +++ /dev/null @@ -1,137 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing ad group criterion errors. - -// Container for enum describing possible ad group criterion errors. -message AdGroupCriterionErrorEnum { - // Enum describing possible ad group criterion errors. - enum AdGroupCriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // No link found between the AdGroupCriterion and the label. - AD_GROUP_CRITERION_LABEL_DOES_NOT_EXIST = 2; - - // The label has already been attached to the AdGroupCriterion. - AD_GROUP_CRITERION_LABEL_ALREADY_EXISTS = 3; - - // Negative AdGroupCriterion cannot have labels. - CANNOT_ADD_LABEL_TO_NEGATIVE_CRITERION = 4; - - // Too many operations for a single call. - TOO_MANY_OPERATIONS = 5; - - // Negative ad group criteria are not updateable. - CANT_UPDATE_NEGATIVE = 6; - - // Concrete type of criterion (keyword v.s. placement) is required for ADD - // and SET operations. - CONCRETE_TYPE_REQUIRED = 7; - - // Bid is incompatible with ad group's bidding settings. - BID_INCOMPATIBLE_WITH_ADGROUP = 8; - - // Cannot target and exclude the same criterion at once. - CANNOT_TARGET_AND_EXCLUDE = 9; - - // The URL of a placement is invalid. - ILLEGAL_URL = 10; - - // Keyword text was invalid. - INVALID_KEYWORD_TEXT = 11; - - // Destination URL was invalid. - INVALID_DESTINATION_URL = 12; - - // The destination url must contain at least one tag (e.g. {lpurl}) - MISSING_DESTINATION_URL_TAG = 13; - - // Keyword-level cpm bid is not supported - KEYWORD_LEVEL_BID_NOT_SUPPORTED_FOR_MANUALCPM = 14; - - // For example, cannot add a biddable ad group criterion that had been - // removed. - INVALID_USER_STATUS = 15; - - // Criteria type cannot be targeted for the ad group. Either the account is - // restricted to keywords only, the criteria type is incompatible with the - // campaign's bidding strategy, or the criteria type can only be applied to - // campaigns. - CANNOT_ADD_CRITERIA_TYPE = 16; - - // Criteria type cannot be excluded for the ad group. Refer to the - // documentation for a specific criterion to check if it is excludable. - CANNOT_EXCLUDE_CRITERIA_TYPE = 17; - - // Partial failure is not supported for shopping campaign mutate operations. - CAMPAIGN_TYPE_NOT_COMPATIBLE_WITH_PARTIAL_FAILURE = 27; - - // Operations in the mutate request changes too many shopping ad groups. - // Please split requests for multiple shopping ad groups across multiple - // requests. - OPERATIONS_FOR_TOO_MANY_SHOPPING_ADGROUPS = 28; - - // Not allowed to modify url fields of an ad group criterion if there are - // duplicate elements for that ad group criterion in the request. - CANNOT_MODIFY_URL_FIELDS_WITH_DUPLICATE_ELEMENTS = 29; - - // Cannot set url fields without also setting final urls. - CANNOT_SET_WITHOUT_FINAL_URLS = 30; - - // Cannot clear final urls if final mobile urls exist. - CANNOT_CLEAR_FINAL_URLS_IF_FINAL_MOBILE_URLS_EXIST = 31; - - // Cannot clear final urls if final app urls exist. - CANNOT_CLEAR_FINAL_URLS_IF_FINAL_APP_URLS_EXIST = 32; - - // Cannot clear final urls if tracking url template exists. - CANNOT_CLEAR_FINAL_URLS_IF_TRACKING_URL_TEMPLATE_EXISTS = 33; - - // Cannot clear final urls if url custom parameters exist. - CANNOT_CLEAR_FINAL_URLS_IF_URL_CUSTOM_PARAMETERS_EXIST = 34; - - // Cannot set both destination url and final urls. - CANNOT_SET_BOTH_DESTINATION_URL_AND_FINAL_URLS = 35; - - // Cannot set both destination url and tracking url template. - CANNOT_SET_BOTH_DESTINATION_URL_AND_TRACKING_URL_TEMPLATE = 36; - - // Final urls are not supported for this criterion type. - FINAL_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE = 37; - - // Final mobile urls are not supported for this criterion type. - FINAL_MOBILE_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE = 38; - } - - -} diff --git a/google/ads/googleads/v6/errors/ad_group_error.proto b/google/ads/googleads/v6/errors/ad_group_error.proto deleted file mode 100644 index f53c42710..000000000 --- a/google/ads/googleads/v6/errors/ad_group_error.proto +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing ad group errors. - -// Container for enum describing possible ad group errors. -message AdGroupErrorEnum { - // Enum describing possible ad group errors. - enum AdGroupError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // AdGroup with the same name already exists for the campaign. - DUPLICATE_ADGROUP_NAME = 2; - - // AdGroup name is not valid. - INVALID_ADGROUP_NAME = 3; - - // Advertiser is not allowed to target sites or set site bids that are not - // on the Google Search Network. - ADVERTISER_NOT_ON_CONTENT_NETWORK = 5; - - // Bid amount is too big. - BID_TOO_BIG = 6; - - // AdGroup bid does not match the campaign's bidding strategy. - BID_TYPE_AND_BIDDING_STRATEGY_MISMATCH = 7; - - // AdGroup name is required for Add. - MISSING_ADGROUP_NAME = 8; - - // No link found between the ad group and the label. - ADGROUP_LABEL_DOES_NOT_EXIST = 9; - - // The label has already been attached to the ad group. - ADGROUP_LABEL_ALREADY_EXISTS = 10; - - // The CriterionTypeGroup is not supported for the content bid dimension. - INVALID_CONTENT_BID_CRITERION_TYPE_GROUP = 11; - - // The ad group type is not compatible with the campaign channel type. - AD_GROUP_TYPE_NOT_VALID_FOR_ADVERTISING_CHANNEL_TYPE = 12; - - // The ad group type is not supported in the country of sale of the - // campaign. - ADGROUP_TYPE_NOT_SUPPORTED_FOR_CAMPAIGN_SALES_COUNTRY = 13; - - // Ad groups of AdGroupType.SEARCH_DYNAMIC_ADS can only be added to - // campaigns that have DynamicSearchAdsSetting attached. - CANNOT_ADD_ADGROUP_OF_TYPE_DSA_TO_CAMPAIGN_WITHOUT_DSA_SETTING = 14; - - // Promoted hotels ad groups are only available to customers on the - // allow-list. - PROMOTED_HOTEL_AD_GROUPS_NOT_AVAILABLE_FOR_CUSTOMER = 15; - } - - -} diff --git a/google/ads/googleads/v6/errors/ad_group_feed_error.proto b/google/ads/googleads/v6/errors/ad_group_feed_error.proto deleted file mode 100644 index 85132a720..000000000 --- a/google/ads/googleads/v6/errors/ad_group_feed_error.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupFeedErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing ad group feed errors. - -// Container for enum describing possible ad group feed errors. -message AdGroupFeedErrorEnum { - // Enum describing possible ad group feed errors. - enum AdGroupFeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active feed already exists for this ad group and place holder type. - FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; - - // The specified feed is removed. - CANNOT_CREATE_FOR_REMOVED_FEED = 3; - - // The AdGroupFeed already exists. UPDATE operation should be used to modify - // the existing AdGroupFeed. - ADGROUP_FEED_ALREADY_EXISTS = 4; - - // Cannot operate on removed AdGroupFeed. - CANNOT_OPERATE_ON_REMOVED_ADGROUP_FEED = 5; - - // Invalid placeholder type. - INVALID_PLACEHOLDER_TYPE = 6; - - // Feed mapping for this placeholder type does not exist. - MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7; - - // Location AdGroupFeeds cannot be created unless there is a location - // CustomerFeed for the specified feed. - NO_EXISTING_LOCATION_CUSTOMER_FEED = 8; - } - - -} diff --git a/google/ads/googleads/v6/errors/ad_parameter_error.proto b/google/ads/googleads/v6/errors/ad_parameter_error.proto deleted file mode 100644 index 810aa8bdc..000000000 --- a/google/ads/googleads/v6/errors/ad_parameter_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdParameterErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing ad parameter errors. - -// Container for enum describing possible ad parameter errors. -message AdParameterErrorEnum { - // Enum describing possible ad parameter errors. - enum AdParameterError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The ad group criterion must be a keyword criterion. - AD_GROUP_CRITERION_MUST_BE_KEYWORD = 2; - - // The insertion text is invalid. - INVALID_INSERTION_TEXT_FORMAT = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/ad_sharing_error.proto b/google/ads/googleads/v6/errors/ad_sharing_error.proto deleted file mode 100644 index a1308f559..000000000 --- a/google/ads/googleads/v6/errors/ad_sharing_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdSharingErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing ad sharing errors. - -// Container for enum describing possible ad sharing errors. -message AdSharingErrorEnum { - // Enum describing possible ad sharing errors. - enum AdSharingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Error resulting in attempting to add an Ad to an AdGroup that already - // contains the Ad. - AD_GROUP_ALREADY_CONTAINS_AD = 2; - - // Ad is not compatible with the AdGroup it is being shared with. - INCOMPATIBLE_AD_UNDER_AD_GROUP = 3; - - // Cannot add AdGroupAd on inactive Ad. - CANNOT_SHARE_INACTIVE_AD = 4; - } - - -} diff --git a/google/ads/googleads/v6/errors/adx_error.proto b/google/ads/googleads/v6/errors/adx_error.proto deleted file mode 100644 index 7f3db6220..000000000 --- a/google/ads/googleads/v6/errors/adx_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AdxErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing adx errors. - -// Container for enum describing possible adx errors. -message AdxErrorEnum { - // Enum describing possible adx errors. - enum AdxError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Attempt to use non-AdX feature by AdX customer. - UNSUPPORTED_FEATURE = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/asset_error.proto b/google/ads/googleads/v6/errors/asset_error.proto deleted file mode 100644 index a45da9b95..000000000 --- a/google/ads/googleads/v6/errors/asset_error.proto +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AssetErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing asset errors. - -// Container for enum describing possible asset errors. -message AssetErrorEnum { - // Enum describing possible asset errors. - enum AssetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The customer is not is not on the allow-list for this asset type. - CUSTOMER_NOT_ON_ALLOWLIST_FOR_ASSET_TYPE = 13; - - // Assets are duplicated across operations. - DUPLICATE_ASSET = 3; - - // The asset name is duplicated, either across operations or with an - // existing asset. - DUPLICATE_ASSET_NAME = 4; - - // The Asset.asset_data oneof is empty. - ASSET_DATA_IS_MISSING = 5; - - // The asset has a name which is different from an existing duplicate that - // represents the same content. - CANNOT_MODIFY_ASSET_NAME = 6; - - // The field cannot be set for this asset type. - FIELD_INCOMPATIBLE_WITH_ASSET_TYPE = 7; - - // Call to action must come from the list of supported values. - INVALID_CALL_TO_ACTION_TEXT = 8; - - // A lead form asset is created with an invalid combination of input fields. - LEAD_FORM_INVALID_FIELDS_COMBINATION = 9; - - // Lead forms require that the Terms of Service have been agreed to before - // mutates can be executed. - LEAD_FORM_MISSING_AGREEMENT = 10; - - // Asset status is invalid in this operation. - INVALID_ASSET_STATUS = 11; - - // The field cannot be modified by this asset type. - FIELD_CANNOT_BE_MODIFIED_FOR_ASSET_TYPE = 12; - } - - -} diff --git a/google/ads/googleads/v6/errors/asset_link_error.proto b/google/ads/googleads/v6/errors/asset_link_error.proto deleted file mode 100644 index 361e60041..000000000 --- a/google/ads/googleads/v6/errors/asset_link_error.proto +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AssetLinkErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing asset link errors. - -// Container for enum describing possible asset link errors. -message AssetLinkErrorEnum { - // Enum describing possible asset link errors. - enum AssetLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Pinning is not supported for the given asset link field. - PINNING_UNSUPPORTED = 2; - - // The given field type is not supported to be added directly via asset - // links. - UNSUPPORTED_FIELD_TYPE = 3; - - // The given asset's type and the specified field type are incompatible. - FIELD_TYPE_INCOMPATIBLE_WITH_ASSET_TYPE = 4; - - // The specified field type is incompatible with the given campaign type. - FIELD_TYPE_INCOMPATIBLE_WITH_CAMPAIGN_TYPE = 5; - - // The campaign advertising channel type cannot be associated with the given - // asset due to channel-based restrictions on the asset's fields. - INCOMPATIBLE_ADVERTISING_CHANNEL_TYPE = 6; - - // The image asset provided is not within the dimension constraints - // specified for the submitted asset field. - IMAGE_NOT_WITHIN_SPECIFIED_DIMENSION_RANGE = 7; - - // The pinned field is not valid for the submitted asset field. - INVALID_PINNED_FIELD = 8; - - // The media bundle asset provided is too large for the submitted asset - // field. - MEDIA_BUNDLE_ASSET_FILE_SIZE_TOO_LARGE = 9; - - // Not enough assets are available for use with other fields since other - // assets are pinned to specific fields. - NOT_ENOUGH_AVAILABLE_ASSET_LINKS_FOR_VALID_COMBINATION = 10; - - // Not enough assets with fallback are available. When validating the - // minimum number of assets, assets without fallback (e.g. assets that - // contain location tag without default value "{LOCATION(City)}") will not - // be counted. - NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK = 11; - - // This is a combination of the - // NOT_ENOUGH_AVAILABLE_ASSET_LINKS_FOR_VALID_COMBINATION and - // NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK errors. Not enough assets - // with fallback are available since some assets are pinned. - NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK_FOR_VALID_COMBINATION = 12; - - // The YouTube video referenced in the provided asset has been removed. - YOUTUBE_VIDEO_REMOVED = 13; - - // The YouTube video referenced in the provided asset is too long for the - // field submitted. - YOUTUBE_VIDEO_TOO_LONG = 14; - - // The YouTube video referenced in the provided asset is too short for the - // field submitted. - YOUTUBE_VIDEO_TOO_SHORT = 15; - } - - -} diff --git a/google/ads/googleads/v6/errors/authentication_error.proto b/google/ads/googleads/v6/errors/authentication_error.proto deleted file mode 100644 index 828cd193e..000000000 --- a/google/ads/googleads/v6/errors/authentication_error.proto +++ /dev/null @@ -1,103 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AuthenticationErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing authentication errors. - -// Container for enum describing possible authentication errors. -message AuthenticationErrorEnum { - // Enum describing possible authentication errors. - enum AuthenticationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Authentication of the request failed. - AUTHENTICATION_ERROR = 2; - - // Client Customer Id is not a number. - CLIENT_CUSTOMER_ID_INVALID = 5; - - // No customer found for the provided customer id. - CUSTOMER_NOT_FOUND = 8; - - // Client's Google Account is deleted. - GOOGLE_ACCOUNT_DELETED = 9; - - // Google account login token in the cookie is invalid. - GOOGLE_ACCOUNT_COOKIE_INVALID = 10; - - // A problem occurred during Google account authentication. - GOOGLE_ACCOUNT_AUTHENTICATION_FAILED = 25; - - // The user in the google account login token does not match the UserId in - // the cookie. - GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH = 12; - - // Login cookie is required for authentication. - LOGIN_COOKIE_REQUIRED = 13; - - // User in the cookie is not a valid Ads user. - NOT_ADS_USER = 14; - - // Oauth token in the header is not valid. - OAUTH_TOKEN_INVALID = 15; - - // Oauth token in the header has expired. - OAUTH_TOKEN_EXPIRED = 16; - - // Oauth token in the header has been disabled. - OAUTH_TOKEN_DISABLED = 17; - - // Oauth token in the header has been revoked. - OAUTH_TOKEN_REVOKED = 18; - - // Oauth token HTTP header is malformed. - OAUTH_TOKEN_HEADER_INVALID = 19; - - // Login cookie is not valid. - LOGIN_COOKIE_INVALID = 20; - - // User Id in the header is not a valid id. - USER_ID_INVALID = 22; - - // An account administrator changed this account's authentication settings. - // To access this Google Ads account, enable 2-Step Verification in your - // Google account at https://www.google.com/landing/2step. - TWO_STEP_VERIFICATION_NOT_ENROLLED = 23; - - // An account administrator changed this account's authentication settings. - // To access this Google Ads account, enable Advanced Protection in your - // Google account at https://landing.google.com/advancedprotection. - ADVANCED_PROTECTION_NOT_ENROLLED = 24; - } - - -} diff --git a/google/ads/googleads/v6/errors/authorization_error.proto b/google/ads/googleads/v6/errors/authorization_error.proto deleted file mode 100644 index 300babeaf..000000000 --- a/google/ads/googleads/v6/errors/authorization_error.proto +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "AuthorizationErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing authorization errors. - -// Container for enum describing possible authorization errors. -message AuthorizationErrorEnum { - // Enum describing possible authorization errors. - enum AuthorizationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // User doesn't have permission to access customer. Note: If you're - // accessing a client customer, the manager's customer ID must be set in the - // `login-customer-id` header. Learn more at - // https://developers.google.com/google-ads/api/docs/concepts/call-structure#cid - USER_PERMISSION_DENIED = 2; - - // The developer token is not on the allow-list. - DEVELOPER_TOKEN_NOT_ON_ALLOWLIST = 13; - - // The developer token is not allowed with the project sent in the request. - DEVELOPER_TOKEN_PROHIBITED = 4; - - // The Google Cloud project sent in the request does not have permission to - // access the api. - PROJECT_DISABLED = 5; - - // Authorization of the client failed. - AUTHORIZATION_ERROR = 6; - - // The user does not have permission to perform this action - // (e.g., ADD, UPDATE, REMOVE) on the resource or call a method. - ACTION_NOT_PERMITTED = 7; - - // Signup not complete. - INCOMPLETE_SIGNUP = 8; - - // The customer can't be used because it isn't enabled. - CUSTOMER_NOT_ENABLED = 24; - - // The developer must sign the terms of service. They can be found here: - // ads.google.com/aw/apicenter - MISSING_TOS = 9; - - // The developer token is not approved. Non-approved developer tokens can - // only be used with test accounts. - DEVELOPER_TOKEN_NOT_APPROVED = 10; - - // The login customer specified does not have access to the account - // specified, so the request is invalid. - INVALID_LOGIN_CUSTOMER_ID_SERVING_CUSTOMER_ID_COMBINATION = 11; - - // The developer specified does not have access to the service. - SERVICE_ACCESS_DENIED = 12; - - // The customer (or login customer) isn't in Google Ads. It belongs to - // another ads system. - ACCESS_DENIED_FOR_ACCOUNT_TYPE = 25; - } - - -} diff --git a/google/ads/googleads/v6/errors/batch_job_error.proto b/google/ads/googleads/v6/errors/batch_job_error.proto deleted file mode 100644 index 617bc5b26..000000000 --- a/google/ads/googleads/v6/errors/batch_job_error.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing batch job errors. - -// Container for enum describing possible batch job errors. -message BatchJobErrorEnum { - // Enum describing possible request errors. - enum BatchJobError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The batch job cannot add more operations or run after it has started - // running. - CANNOT_MODIFY_JOB_AFTER_JOB_STARTS_RUNNING = 2; - - // The operations for an AddBatchJobOperations request were empty. - EMPTY_OPERATIONS = 3; - - // The sequence token for an AddBatchJobOperations request was invalid. - INVALID_SEQUENCE_TOKEN = 4; - - // Batch job results can only be retrieved once the job is finished. - RESULTS_NOT_READY = 5; - - // The page size for ListBatchJobResults was invalid. - INVALID_PAGE_SIZE = 6; - - // The batch job cannot be removed because it has started running. - CAN_ONLY_REMOVE_PENDING_JOB = 7; - } - - -} diff --git a/google/ads/googleads/v6/errors/bidding_error.proto b/google/ads/googleads/v6/errors/bidding_error.proto deleted file mode 100644 index 8f732d367..000000000 --- a/google/ads/googleads/v6/errors/bidding_error.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BiddingErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing bidding errors. - -// Container for enum describing possible bidding errors. -message BiddingErrorEnum { - // Enum describing possible bidding errors. - enum BiddingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot transition to new bidding strategy. - BIDDING_STRATEGY_TRANSITION_NOT_ALLOWED = 2; - - // Cannot attach bidding strategy to campaign. - CANNOT_ATTACH_BIDDING_STRATEGY_TO_CAMPAIGN = 7; - - // Bidding strategy is not supported or cannot be used as anonymous. - INVALID_ANONYMOUS_BIDDING_STRATEGY_TYPE = 10; - - // The type does not match the named strategy's type. - INVALID_BIDDING_STRATEGY_TYPE = 14; - - // The bid is invalid. - INVALID_BID = 17; - - // Bidding strategy is not available for the account type. - BIDDING_STRATEGY_NOT_AVAILABLE_FOR_ACCOUNT_TYPE = 18; - - // Conversion tracking is not enabled in the campaign that has value-based - // bidding transitions. - CONVERSION_TRACKING_NOT_ENABLED = 19; - - // Not enough conversions tracked for value-based bidding transitions. - NOT_ENOUGH_CONVERSIONS = 20; - - // Campaign can not be created with given bidding strategy. It can be - // transitioned to the strategy, once eligible. - CANNOT_CREATE_CAMPAIGN_WITH_BIDDING_STRATEGY = 21; - - // Cannot target content network only as campaign uses Page One Promoted - // bidding strategy. - CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CAMPAIGN_LEVEL_POP_BIDDING_STRATEGY = 23; - - // Budget Optimizer and Target Spend bidding strategies are not supported - // for campaigns with AdSchedule targeting. - BIDDING_STRATEGY_NOT_SUPPORTED_WITH_AD_SCHEDULE = 24; - - // Pay per conversion is not available to all the customer, only few - // customers on the allow-list can use this. - PAY_PER_CONVERSION_NOT_AVAILABLE_FOR_CUSTOMER = 25; - - // Pay per conversion is not allowed with Target CPA. - PAY_PER_CONVERSION_NOT_ALLOWED_WITH_TARGET_CPA = 26; - - // Cannot set bidding strategy to Manual CPM for search network only - // campaigns. - BIDDING_STRATEGY_NOT_ALLOWED_FOR_SEARCH_ONLY_CAMPAIGNS = 27; - - // The bidding strategy is not supported for use in drafts or experiments. - BIDDING_STRATEGY_NOT_SUPPORTED_IN_DRAFTS_OR_EXPERIMENTS = 28; - - // Bidding strategy type does not support product type ad group criterion. - BIDDING_STRATEGY_TYPE_DOES_NOT_SUPPORT_PRODUCT_TYPE_ADGROUP_CRITERION = 29; - - // Bid amount is too small. - BID_TOO_SMALL = 30; - - // Bid amount is too big. - BID_TOO_BIG = 31; - - // Bid has too many fractional digit precision. - BID_TOO_MANY_FRACTIONAL_DIGITS = 32; - - // Invalid domain name specified. - INVALID_DOMAIN_NAME = 33; - - // The field is not compatible with the payment mode. - NOT_COMPATIBLE_WITH_PAYMENT_MODE = 34; - - // The field is not compatible with the budget type. - NOT_COMPATIBLE_WITH_BUDGET_TYPE = 35; - - // The field is not compatible with the bidding strategy type. - NOT_COMPATIBLE_WITH_BIDDING_STRATEGY_TYPE = 36; - - // Bidding strategy type is incompatible with shared budget. - BIDDING_STRATEGY_TYPE_INCOMPATIBLE_WITH_SHARED_BUDGET = 37; - } - - -} diff --git a/google/ads/googleads/v6/errors/bidding_strategy_error.proto b/google/ads/googleads/v6/errors/bidding_strategy_error.proto deleted file mode 100644 index 77a1fee02..000000000 --- a/google/ads/googleads/v6/errors/bidding_strategy_error.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing bidding strategy errors. - -// Container for enum describing possible bidding strategy errors. -message BiddingStrategyErrorEnum { - // Enum describing possible bidding strategy errors. - enum BiddingStrategyError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Each bidding strategy must have a unique name. - DUPLICATE_NAME = 2; - - // Bidding strategy type is immutable. - CANNOT_CHANGE_BIDDING_STRATEGY_TYPE = 3; - - // Only bidding strategies not linked to campaigns, adgroups or adgroup - // criteria can be removed. - CANNOT_REMOVE_ASSOCIATED_STRATEGY = 4; - - // The specified bidding strategy is not supported. - BIDDING_STRATEGY_NOT_SUPPORTED = 5; - - // The bidding strategy is incompatible with the campaign's bidding - // strategy goal type. - INCOMPATIBLE_BIDDING_STRATEGY_AND_BIDDING_STRATEGY_GOAL_TYPE = 6; - } - - -} diff --git a/google/ads/googleads/v6/errors/billing_setup_error.proto b/google/ads/googleads/v6/errors/billing_setup_error.proto deleted file mode 100644 index 33f0b8f47..000000000 --- a/google/ads/googleads/v6/errors/billing_setup_error.proto +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing billing setup errors. - -// Container for enum describing possible billing setup errors. -message BillingSetupErrorEnum { - // Enum describing possible billing setup errors. - enum BillingSetupError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot specify both an existing payments account and a new payments - // account when setting up billing. - CANNOT_USE_EXISTING_AND_NEW_ACCOUNT = 2; - - // Cannot cancel an approved billing setup whose start time has passed. - CANNOT_REMOVE_STARTED_BILLING_SETUP = 3; - - // Cannot perform a Change of Bill-To (CBT) to the same payments account. - CANNOT_CHANGE_BILLING_TO_SAME_PAYMENTS_ACCOUNT = 4; - - // Billing setups can only be used by customers with ENABLED or DRAFT - // status. - BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_STATUS = 5; - - // Billing setups must either include a correctly formatted existing - // payments account id, or a non-empty new payments account name. - INVALID_PAYMENTS_ACCOUNT = 6; - - // Only billable and third-party customers can create billing setups. - BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_CATEGORY = 7; - - // Billing setup creations can only use NOW for start time type. - INVALID_START_TIME_TYPE = 8; - - // Billing setups can only be created for a third-party customer if they do - // not already have a setup. - THIRD_PARTY_ALREADY_HAS_BILLING = 9; - - // Billing setups cannot be created if there is already a pending billing in - // progress. - BILLING_SETUP_IN_PROGRESS = 10; - - // Billing setups can only be created by customers who have permission to - // setup billings. Users can contact a representative for help setting up - // permissions. - NO_SIGNUP_PERMISSION = 11; - - // Billing setups cannot be created if there is already a future-approved - // billing. - CHANGE_OF_BILL_TO_IN_PROGRESS = 12; - - // Requested payments profile not found. - PAYMENTS_PROFILE_NOT_FOUND = 13; - - // Requested payments account not found. - PAYMENTS_ACCOUNT_NOT_FOUND = 14; - - // Billing setup creation failed because the payments profile is ineligible. - PAYMENTS_PROFILE_INELIGIBLE = 15; - - // Billing setup creation failed because the payments account is ineligible. - PAYMENTS_ACCOUNT_INELIGIBLE = 16; - - // Billing setup creation failed because the payments profile needs internal - // approval. - CUSTOMER_NEEDS_INTERNAL_APPROVAL = 17; - - // Payments account has different currency code than the current customer - // and hence cannot be used to setup billing. - PAYMENTS_ACCOUNT_INELIGIBLE_CURRENCY_CODE_MISMATCH = 19; - } - - -} diff --git a/google/ads/googleads/v6/errors/campaign_budget_error.proto b/google/ads/googleads/v6/errors/campaign_budget_error.proto deleted file mode 100644 index 5cd2265db..000000000 --- a/google/ads/googleads/v6/errors/campaign_budget_error.proto +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBudgetErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing campaign budget errors. - -// Container for enum describing possible campaign budget errors. -message CampaignBudgetErrorEnum { - // Enum describing possible campaign budget errors. - enum CampaignBudgetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The campaign budget cannot be shared. - CAMPAIGN_BUDGET_CANNOT_BE_SHARED = 17; - - // The requested campaign budget no longer exists. - CAMPAIGN_BUDGET_REMOVED = 2; - - // The campaign budget is associated with at least one campaign, and so the - // campaign budget cannot be removed. - CAMPAIGN_BUDGET_IN_USE = 3; - - // Customer is not on the allow-list for this campaign budget period. - CAMPAIGN_BUDGET_PERIOD_NOT_AVAILABLE = 4; - - // This field is not mutable on implicitly shared campaign budgets - CANNOT_MODIFY_FIELD_OF_IMPLICITLY_SHARED_CAMPAIGN_BUDGET = 6; - - // Cannot change explicitly shared campaign budgets back to implicitly - // shared ones. - CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_IMPLICITLY_SHARED = 7; - - // An implicit campaign budget without a name cannot be changed to - // explicitly shared campaign budget. - CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED_WITHOUT_NAME = 8; - - // Cannot change an implicitly shared campaign budget to an explicitly - // shared one. - CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED = 9; - - // Only explicitly shared campaign budgets can be used with multiple - // campaigns. - CANNOT_USE_IMPLICITLY_SHARED_CAMPAIGN_BUDGET_WITH_MULTIPLE_CAMPAIGNS = 10; - - // A campaign budget with this name already exists. - DUPLICATE_NAME = 11; - - // A money amount was not in the expected currency. - MONEY_AMOUNT_IN_WRONG_CURRENCY = 12; - - // A money amount was less than the minimum CPC for currency. - MONEY_AMOUNT_LESS_THAN_CURRENCY_MINIMUM_CPC = 13; - - // A money amount was greater than the maximum allowed. - MONEY_AMOUNT_TOO_LARGE = 14; - - // A money amount was negative. - NEGATIVE_MONEY_AMOUNT = 15; - - // A money amount was not a multiple of a minimum unit. - NON_MULTIPLE_OF_MINIMUM_CURRENCY_UNIT = 16; - - // Total budget amount must be unset when BudgetPeriod is DAILY. - TOTAL_BUDGET_AMOUNT_MUST_BE_UNSET_FOR_BUDGET_PERIOD_DAILY = 18; - } - - -} diff --git a/google/ads/googleads/v6/errors/campaign_criterion_error.proto b/google/ads/googleads/v6/errors/campaign_criterion_error.proto deleted file mode 100644 index a14ffa71c..000000000 --- a/google/ads/googleads/v6/errors/campaign_criterion_error.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing campaign criterion errors. - -// Container for enum describing possible campaign criterion errors. -message CampaignCriterionErrorEnum { - // Enum describing possible campaign criterion errors. - enum CampaignCriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Concrete type of criterion (keyword v.s. placement) is required for - // CREATE and UPDATE operations. - CONCRETE_TYPE_REQUIRED = 2; - - // Invalid placement URL. - INVALID_PLACEMENT_URL = 3; - - // Criteria type can not be excluded for the campaign by the customer. like - // AOL account type cannot target site type criteria - CANNOT_EXCLUDE_CRITERIA_TYPE = 4; - - // Cannot set the campaign criterion status for this criteria type. - CANNOT_SET_STATUS_FOR_CRITERIA_TYPE = 5; - - // Cannot set the campaign criterion status for an excluded criteria. - CANNOT_SET_STATUS_FOR_EXCLUDED_CRITERIA = 6; - - // Cannot target and exclude the same criterion. - CANNOT_TARGET_AND_EXCLUDE = 7; - - // The mutate contained too many operations. - TOO_MANY_OPERATIONS = 8; - - // This operator cannot be applied to a criterion of this type. - OPERATOR_NOT_SUPPORTED_FOR_CRITERION_TYPE = 9; - - // The Shopping campaign sales country is not supported for - // ProductSalesChannel targeting. - SHOPPING_CAMPAIGN_SALES_COUNTRY_NOT_SUPPORTED_FOR_SALES_CHANNEL = 10; - - // The existing field can't be updated with CREATE operation. It can be - // updated with UPDATE operation only. - CANNOT_ADD_EXISTING_FIELD = 11; - - // Negative criteria are immutable, so updates are not allowed. - CANNOT_UPDATE_NEGATIVE_CRITERION = 12; - } - - -} diff --git a/google/ads/googleads/v6/errors/campaign_draft_error.proto b/google/ads/googleads/v6/errors/campaign_draft_error.proto deleted file mode 100644 index 7bcbf5bf7..000000000 --- a/google/ads/googleads/v6/errors/campaign_draft_error.proto +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing campaign draft errors. - -// Container for enum describing possible campaign draft errors. -message CampaignDraftErrorEnum { - // Enum describing possible campaign draft errors. - enum CampaignDraftError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A draft with this name already exists for this campaign. - DUPLICATE_DRAFT_NAME = 2; - - // The draft is removed and cannot be transitioned to another status. - INVALID_STATUS_TRANSITION_FROM_REMOVED = 3; - - // The draft has been promoted and cannot be transitioned to the specified - // status. - INVALID_STATUS_TRANSITION_FROM_PROMOTED = 4; - - // The draft has failed to be promoted and cannot be transitioned to the - // specified status. - INVALID_STATUS_TRANSITION_FROM_PROMOTE_FAILED = 5; - - // This customer is not allowed to create drafts. - CUSTOMER_CANNOT_CREATE_DRAFT = 6; - - // This campaign is not allowed to create drafts. - CAMPAIGN_CANNOT_CREATE_DRAFT = 7; - - // This modification cannot be made on a draft. - INVALID_DRAFT_CHANGE = 8; - - // The draft cannot be transitioned to the specified status from its - // current status. - INVALID_STATUS_TRANSITION = 9; - - // The campaign has reached the maximum number of drafts that can be created - // for a campaign throughout its lifetime. No additional drafts can be - // created for this campaign. Removed drafts also count towards this limit. - MAX_NUMBER_OF_DRAFTS_PER_CAMPAIGN_REACHED = 10; - - // ListAsyncErrors was called without first promoting the draft. - LIST_ERRORS_FOR_PROMOTED_DRAFT_ONLY = 11; - } - - -} diff --git a/google/ads/googleads/v6/errors/campaign_error.proto b/google/ads/googleads/v6/errors/campaign_error.proto deleted file mode 100644 index d746b18b7..000000000 --- a/google/ads/googleads/v6/errors/campaign_error.proto +++ /dev/null @@ -1,183 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing campaign errors. - -// Container for enum describing possible campaign errors. -message CampaignErrorEnum { - // Enum describing possible campaign errors. - enum CampaignError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot target content network. - CANNOT_TARGET_CONTENT_NETWORK = 3; - - // Cannot target search network. - CANNOT_TARGET_SEARCH_NETWORK = 4; - - // Cannot cover search network without google search network. - CANNOT_TARGET_SEARCH_NETWORK_WITHOUT_GOOGLE_SEARCH = 5; - - // Cannot target Google Search network for a CPM campaign. - CANNOT_TARGET_GOOGLE_SEARCH_FOR_CPM_CAMPAIGN = 6; - - // Must target at least one network. - CAMPAIGN_MUST_TARGET_AT_LEAST_ONE_NETWORK = 7; - - // Only some Google partners are allowed to target partner search network. - CANNOT_TARGET_PARTNER_SEARCH_NETWORK = 8; - - // Cannot target content network only as campaign has criteria-level bidding - // strategy. - CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CRITERIA_LEVEL_BIDDING_STRATEGY = 9; - - // Cannot modify the start or end date such that the campaign duration would - // not contain the durations of all runnable trials. - CAMPAIGN_DURATION_MUST_CONTAIN_ALL_RUNNABLE_TRIALS = 10; - - // Cannot modify dates, budget or campaign name of a trial campaign. - CANNOT_MODIFY_FOR_TRIAL_CAMPAIGN = 11; - - // Trying to modify the name of an active or paused campaign, where the name - // is already assigned to another active or paused campaign. - DUPLICATE_CAMPAIGN_NAME = 12; - - // Two fields are in conflicting modes. - INCOMPATIBLE_CAMPAIGN_FIELD = 13; - - // Campaign name cannot be used. - INVALID_CAMPAIGN_NAME = 14; - - // Given status is invalid. - INVALID_AD_SERVING_OPTIMIZATION_STATUS = 15; - - // Error in the campaign level tracking URL. - INVALID_TRACKING_URL = 16; - - // Cannot set both tracking URL template and tracking setting. A user has - // to clear legacy tracking setting in order to add tracking URL template. - CANNOT_SET_BOTH_TRACKING_URL_TEMPLATE_AND_TRACKING_SETTING = 17; - - // The maximum number of impressions for Frequency Cap should be an integer - // greater than 0. - MAX_IMPRESSIONS_NOT_IN_RANGE = 18; - - // Only the Day, Week and Month time units are supported. - TIME_UNIT_NOT_SUPPORTED = 19; - - // Operation not allowed on a campaign whose serving status has ended - INVALID_OPERATION_IF_SERVING_STATUS_HAS_ENDED = 20; - - // This budget is exclusively linked to a Campaign that is using experiments - // so it cannot be shared. - BUDGET_CANNOT_BE_SHARED = 21; - - // Campaigns using experiments cannot use a shared budget. - CAMPAIGN_CANNOT_USE_SHARED_BUDGET = 22; - - // A different budget cannot be assigned to a campaign when there are - // running or scheduled trials. - CANNOT_CHANGE_BUDGET_ON_CAMPAIGN_WITH_TRIALS = 23; - - // No link found between the campaign and the label. - CAMPAIGN_LABEL_DOES_NOT_EXIST = 24; - - // The label has already been attached to the campaign. - CAMPAIGN_LABEL_ALREADY_EXISTS = 25; - - // A ShoppingSetting was not found when creating a shopping campaign. - MISSING_SHOPPING_SETTING = 26; - - // The country in shopping setting is not an allowed country. - INVALID_SHOPPING_SALES_COUNTRY = 27; - - // The requested channel type is not available according to the customer's - // account setting. - ADVERTISING_CHANNEL_TYPE_NOT_AVAILABLE_FOR_ACCOUNT_TYPE = 31; - - // The AdvertisingChannelSubType is not a valid subtype of the primary - // channel type. - INVALID_ADVERTISING_CHANNEL_SUB_TYPE = 32; - - // At least one conversion must be selected. - AT_LEAST_ONE_CONVERSION_MUST_BE_SELECTED = 33; - - // Setting ad rotation mode for a campaign is not allowed. Ad rotation mode - // at campaign is deprecated. - CANNOT_SET_AD_ROTATION_MODE = 34; - - // Trying to change start date on a campaign that has started. - CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED = 35; - - // Trying to modify a date into the past. - CANNOT_SET_DATE_TO_PAST = 36; - - // Hotel center id in the hotel setting does not match any customer links. - MISSING_HOTEL_CUSTOMER_LINK = 37; - - // Hotel center id in the hotel setting must match an active customer link. - INVALID_HOTEL_CUSTOMER_LINK = 38; - - // Hotel setting was not found when creating a hotel ads campaign. - MISSING_HOTEL_SETTING = 39; - - // A Campaign cannot use shared campaign budgets and be part of a campaign - // group. - CANNOT_USE_SHARED_CAMPAIGN_BUDGET_WHILE_PART_OF_CAMPAIGN_GROUP = 40; - - // The app ID was not found. - APP_NOT_FOUND = 41; - - // Campaign.shopping_setting.enable_local is not supported for the specified - // campaign type. - SHOPPING_ENABLE_LOCAL_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE = 42; - - // The merchant does not support the creation of campaigns for Shopping - // Comparison Listing Ads. - MERCHANT_NOT_ALLOWED_FOR_COMPARISON_LISTING_ADS = 43; - - // The App campaign for engagement cannot be created because there aren't - // enough installs. - INSUFFICIENT_APP_INSTALLS_COUNT = 44; - - // The App campaign for engagement cannot be created because the app is - // sensitive. - SENSITIVE_CATEGORY_APP = 45; - - // Customers with Housing, Employment, or Credit ads must accept updated - // personalized ads policy to continue creating campaigns. - HEC_AGREEMENT_REQUIRED = 46; - } - - -} diff --git a/google/ads/googleads/v6/errors/campaign_experiment_error.proto b/google/ads/googleads/v6/errors/campaign_experiment_error.proto deleted file mode 100644 index af75c23e3..000000000 --- a/google/ads/googleads/v6/errors/campaign_experiment_error.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing campaign experiment errors. - -// Container for enum describing possible campaign experiment errors. -message CampaignExperimentErrorEnum { - // Enum describing possible campaign experiment errors. - enum CampaignExperimentError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active campaign or experiment with this name already exists. - DUPLICATE_NAME = 2; - - // Experiment cannot be updated from the current state to the - // requested target state. For example, an experiment can only graduate - // if its status is ENABLED. - INVALID_TRANSITION = 3; - - // Cannot create an experiment from a campaign using an explicitly shared - // budget. - CANNOT_CREATE_EXPERIMENT_WITH_SHARED_BUDGET = 4; - - // Cannot create an experiment for a removed base campaign. - CANNOT_CREATE_EXPERIMENT_FOR_REMOVED_BASE_CAMPAIGN = 5; - - // Cannot create an experiment from a draft, which has a status other than - // proposed. - CANNOT_CREATE_EXPERIMENT_FOR_NON_PROPOSED_DRAFT = 6; - - // This customer is not allowed to create an experiment. - CUSTOMER_CANNOT_CREATE_EXPERIMENT = 7; - - // This campaign is not allowed to create an experiment. - CAMPAIGN_CANNOT_CREATE_EXPERIMENT = 8; - - // Trying to set an experiment duration which overlaps with another - // experiment. - EXPERIMENT_DURATIONS_MUST_NOT_OVERLAP = 9; - - // All non-removed experiments must start and end within their campaign's - // duration. - EXPERIMENT_DURATION_MUST_BE_WITHIN_CAMPAIGN_DURATION = 10; - - // The experiment cannot be modified because its status is in a terminal - // state, such as REMOVED. - CANNOT_MUTATE_EXPERIMENT_DUE_TO_STATUS = 11; - } - - -} diff --git a/google/ads/googleads/v6/errors/campaign_feed_error.proto b/google/ads/googleads/v6/errors/campaign_feed_error.proto deleted file mode 100644 index 9d92b1835..000000000 --- a/google/ads/googleads/v6/errors/campaign_feed_error.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignFeedErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing campaign feed errors. - -// Container for enum describing possible campaign feed errors. -message CampaignFeedErrorEnum { - // Enum describing possible campaign feed errors. - enum CampaignFeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active feed already exists for this campaign and placeholder type. - FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; - - // The specified feed is removed. - CANNOT_CREATE_FOR_REMOVED_FEED = 4; - - // The CampaignFeed already exists. UPDATE should be used to modify the - // existing CampaignFeed. - CANNOT_CREATE_ALREADY_EXISTING_CAMPAIGN_FEED = 5; - - // Cannot update removed campaign feed. - CANNOT_MODIFY_REMOVED_CAMPAIGN_FEED = 6; - - // Invalid placeholder type. - INVALID_PLACEHOLDER_TYPE = 7; - - // Feed mapping for this placeholder type does not exist. - MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 8; - - // Location CampaignFeeds cannot be created unless there is a location - // CustomerFeed for the specified feed. - NO_EXISTING_LOCATION_CUSTOMER_FEED = 9; - } - - -} diff --git a/google/ads/googleads/v6/errors/campaign_shared_set_error.proto b/google/ads/googleads/v6/errors/campaign_shared_set_error.proto deleted file mode 100644 index 5eca938c9..000000000 --- a/google/ads/googleads/v6/errors/campaign_shared_set_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing campaign shared set errors. - -// Container for enum describing possible campaign shared set errors. -message CampaignSharedSetErrorEnum { - // Enum describing possible campaign shared set errors. - enum CampaignSharedSetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The shared set belongs to another customer and permission isn't granted. - SHARED_SET_ACCESS_DENIED = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/change_event_error.proto b/google/ads/googleads/v6/errors/change_event_error.proto deleted file mode 100644 index cbfd195f1..000000000 --- a/google/ads/googleads/v6/errors/change_event_error.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ChangeEventErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing change event errors. - -// Container for enum describing possible change event errors. -message ChangeEventErrorEnum { - // Enum describing possible change event errors. - enum ChangeEventError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The requested start date is too old. It cannot be older than 30 days. - START_DATE_TOO_OLD = 2; - - // The change_event search request must specify a finite range filter - // on change_date_time. - CHANGE_DATE_RANGE_INFINITE = 3; - - // The change event search request has specified invalid date time filters - // that can never logically produce any valid results (for example, start - // time after end time). - CHANGE_DATE_RANGE_NEGATIVE = 4; - - // The change_event search request must specify a LIMIT. - LIMIT_NOT_SPECIFIED = 5; - - // The LIMIT specified by change_event request should be less than or equal - // to 10K. - INVALID_LIMIT_CLAUSE = 6; - } - - -} diff --git a/google/ads/googleads/v6/errors/change_status_error.proto b/google/ads/googleads/v6/errors/change_status_error.proto deleted file mode 100644 index d10470974..000000000 --- a/google/ads/googleads/v6/errors/change_status_error.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing change status errors. - -// Container for enum describing possible change status errors. -message ChangeStatusErrorEnum { - // Enum describing possible change status errors. - enum ChangeStatusError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The requested start date is too old. - START_DATE_TOO_OLD = 3; - - // The change_status search request must specify a finite range filter - // on last_change_date_time. - CHANGE_DATE_RANGE_INFINITE = 4; - - // The change status search request has specified invalid date time filters - // that can never logically produce any valid results (for example, start - // time after end time). - CHANGE_DATE_RANGE_NEGATIVE = 5; - - // The change_status search request must specify a LIMIT. - LIMIT_NOT_SPECIFIED = 6; - - // The LIMIT specified by change_status request should be less than or equal - // to 10K. - INVALID_LIMIT_CLAUSE = 7; - } - - -} diff --git a/google/ads/googleads/v6/errors/collection_size_error.proto b/google/ads/googleads/v6/errors/collection_size_error.proto deleted file mode 100644 index 1776157f7..000000000 --- a/google/ads/googleads/v6/errors/collection_size_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CollectionSizeErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing collection size errors. - -// Container for enum describing possible collection size errors. -message CollectionSizeErrorEnum { - // Enum describing possible collection size errors. - enum CollectionSizeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Too few. - TOO_FEW = 2; - - // Too many. - TOO_MANY = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/context_error.proto b/google/ads/googleads/v6/errors/context_error.proto deleted file mode 100644 index be2970736..000000000 --- a/google/ads/googleads/v6/errors/context_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ContextErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing context errors. - -// Container for enum describing possible context errors. -message ContextErrorEnum { - // Enum describing possible context errors. - enum ContextError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The operation is not allowed for the given context. - OPERATION_NOT_PERMITTED_FOR_CONTEXT = 2; - - // The operation is not allowed for removed resources. - OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/conversion_action_error.proto b/google/ads/googleads/v6/errors/conversion_action_error.proto deleted file mode 100644 index 7deee7095..000000000 --- a/google/ads/googleads/v6/errors/conversion_action_error.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing conversion action errors. - -// Container for enum describing possible conversion action errors. -message ConversionActionErrorEnum { - // Enum describing possible conversion action errors. - enum ConversionActionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified conversion action name already exists. - DUPLICATE_NAME = 2; - - // Another conversion action with the specified app id already exists. - DUPLICATE_APP_ID = 3; - - // Android first open action conflicts with Google play codeless download - // action tracking the same app. - TWO_CONVERSION_ACTIONS_BIDDING_ON_SAME_APP_DOWNLOAD = 4; - - // Android first open action conflicts with Google play codeless download - // action tracking the same app. - BIDDING_ON_SAME_APP_DOWNLOAD_AS_GLOBAL_ACTION = 5; - - // The attribution model cannot be set to DATA_DRIVEN because a data-driven - // model has never been generated. - DATA_DRIVEN_MODEL_WAS_NEVER_GENERATED = 6; - - // The attribution model cannot be set to DATA_DRIVEN because the - // data-driven model is expired. - DATA_DRIVEN_MODEL_EXPIRED = 7; - - // The attribution model cannot be set to DATA_DRIVEN because the - // data-driven model is stale. - DATA_DRIVEN_MODEL_STALE = 8; - - // The attribution model cannot be set to DATA_DRIVEN because the - // data-driven model is unavailable or the conversion action was newly - // added. - DATA_DRIVEN_MODEL_UNKNOWN = 9; - - // Creation of this conversion action type isn't supported by Google - // Ads API. - CREATION_NOT_SUPPORTED = 10; - - // Update of this conversion action isn't supported by Google Ads API. - UPDATE_NOT_SUPPORTED = 11; - } - - -} diff --git a/google/ads/googleads/v6/errors/conversion_adjustment_upload_error.proto b/google/ads/googleads/v6/errors/conversion_adjustment_upload_error.proto deleted file mode 100644 index 7a00dabfc..000000000 --- a/google/ads/googleads/v6/errors/conversion_adjustment_upload_error.proto +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAdjustmentUploadErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing conversion adjustment upload errors. - -// Container for enum describing possible conversion adjustment upload errors. -message ConversionAdjustmentUploadErrorEnum { - // Enum describing possible conversion adjustment upload errors. - enum ConversionAdjustmentUploadError { - // Not specified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified conversion action was created too recently. - // Please try the upload again after 4-6 hours have passed since the - // conversion action was created. - TOO_RECENT_CONVERSION_ACTION = 2; - - // No conversion action of a supported ConversionActionType that matches the - // provided information can be found for the customer. - INVALID_CONVERSION_ACTION = 3; - - // A retraction was already reported for this conversion. - CONVERSION_ALREADY_RETRACTED = 4; - - // A conversion for the supplied combination of conversion - // action and conversion identifier could not be found. - CONVERSION_NOT_FOUND = 5; - - // The specified conversion has already expired. Conversions expire after 55 - // days, after which adjustments cannot be reported against them. - CONVERSION_EXPIRED = 6; - - // The supplied adjustment date time precedes that of the original - // conversion. - ADJUSTMENT_PRECEDES_CONVERSION = 7; - - // A restatement with a more recent adjustment date time was already - // reported for this conversion. - MORE_RECENT_RESTATEMENT_FOUND = 8; - - // The conversion was created too recently. - TOO_RECENT_CONVERSION = 9; - - // Restatements cannot be reported for a conversion action that always uses - // the default value. - CANNOT_RESTATE_CONVERSION_ACTION_THAT_ALWAYS_USES_DEFAULT_CONVERSION_VALUE = 10; - - // The request contained more than 2000 adjustments. - TOO_MANY_ADJUSTMENTS_IN_REQUEST = 11; - - // The conversion has been adjusted too many times. - TOO_MANY_ADJUSTMENTS = 12; - } - - -} diff --git a/google/ads/googleads/v6/errors/conversion_upload_error.proto b/google/ads/googleads/v6/errors/conversion_upload_error.proto deleted file mode 100644 index 0395de843..000000000 --- a/google/ads/googleads/v6/errors/conversion_upload_error.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ConversionUploadErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing conversion upload errors. - -// Container for enum describing possible conversion upload errors. -message ConversionUploadErrorEnum { - // Enum describing possible conversion upload errors. - enum ConversionUploadError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The request contained more than 2000 conversions. - TOO_MANY_CONVERSIONS_IN_REQUEST = 2; - - // The specified gclid could not be decoded. - UNPARSEABLE_GCLID = 3; - - // The specified conversion_date_time is before the event time - // associated with the given gclid. - CONVERSION_PRECEDES_GCLID = 4; - - // The click associated with the given gclid is either too old to be - // imported or occurred outside of the click through lookback window for the - // specified conversion action. - EXPIRED_GCLID = 5; - - // The click associated with the given gclid occurred too recently. Please - // try uploading again after 6 hours have passed since the click occurred. - TOO_RECENT_GCLID = 6; - - // The click associated with the given gclid could not be found in the - // system. This can happen if Google Click IDs are collected for non Google - // Ads clicks. - GCLID_NOT_FOUND = 7; - - // The click associated with the given gclid is owned by a customer - // account that the uploading customer does not manage. - UNAUTHORIZED_CUSTOMER = 8; - - // No upload eligible conversion action that matches the provided - // information can be found for the customer. - INVALID_CONVERSION_ACTION = 9; - - // The specified conversion action was created too recently. - // Please try the upload again after 4-6 hours have passed since the - // conversion action was created. - TOO_RECENT_CONVERSION_ACTION = 10; - - // The click associated with the given gclid does not contain conversion - // tracking information. - CONVERSION_TRACKING_NOT_ENABLED_AT_IMPRESSION_TIME = 11; - - // The specified conversion action does not use an external attribution - // model, but external_attribution_data was set. - EXTERNAL_ATTRIBUTION_DATA_SET_FOR_NON_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 12; - - // The specified conversion action uses an external attribution model, but - // external_attribution_data or one of its contained fields was not set. - // Both external_attribution_credit and external_attribution_model must be - // set for externally attributed conversion actions. - EXTERNAL_ATTRIBUTION_DATA_NOT_SET_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 13; - - // Order IDs are not supported for conversion actions which use an external - // attribution model. - ORDER_ID_NOT_PERMITTED_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 14; - - // A conversion with the same order id and conversion action combination - // already exists in our system. - ORDER_ID_ALREADY_IN_USE = 15; - - // The request contained two or more conversions with the same order id and - // conversion action combination. - DUPLICATE_ORDER_ID = 16; - - // The call occurred too recently. Please try uploading again after 12 hours - // have passed since the call occurred. - TOO_RECENT_CALL = 17; - - // The click that initiated the call is too old for this conversion to be - // imported. - EXPIRED_CALL = 18; - - // The call or the click leading to the call was not found. - CALL_NOT_FOUND = 19; - - // The specified conversion_date_time is before the call_start_date_time. - CONVERSION_PRECEDES_CALL = 20; - - // The click associated with the call does not contain conversion tracking - // information. - CONVERSION_TRACKING_NOT_ENABLED_AT_CALL_TIME = 21; - - // The caller’s phone number cannot be parsed. It should be formatted either - // as E.164 "+16502531234", International "+64 3-331 6005" or US national - // number "6502531234". - UNPARSEABLE_CALLERS_PHONE_NUMBER = 22; - } - - -} diff --git a/google/ads/googleads/v6/errors/country_code_error.proto b/google/ads/googleads/v6/errors/country_code_error.proto deleted file mode 100644 index 243f1d9ab..000000000 --- a/google/ads/googleads/v6/errors/country_code_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CountryCodeErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing country code errors. - -// Container for enum describing country code errors. -message CountryCodeErrorEnum { - // Enum describing country code errors. - enum CountryCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The country code is invalid. - INVALID_COUNTRY_CODE = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/criterion_error.proto b/google/ads/googleads/v6/errors/criterion_error.proto deleted file mode 100644 index b118aedc5..000000000 --- a/google/ads/googleads/v6/errors/criterion_error.proto +++ /dev/null @@ -1,439 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CriterionErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing criterion errors. - -// Container for enum describing possible criterion errors. -message CriterionErrorEnum { - // Enum describing possible criterion errors. - enum CriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Concrete type of criterion is required for CREATE and UPDATE operations. - CONCRETE_TYPE_REQUIRED = 2; - - // The category requested for exclusion is invalid. - INVALID_EXCLUDED_CATEGORY = 3; - - // Invalid keyword criteria text. - INVALID_KEYWORD_TEXT = 4; - - // Keyword text should be less than 80 chars. - KEYWORD_TEXT_TOO_LONG = 5; - - // Keyword text has too many words. - KEYWORD_HAS_TOO_MANY_WORDS = 6; - - // Keyword text has invalid characters or symbols. - KEYWORD_HAS_INVALID_CHARS = 7; - - // Invalid placement URL. - INVALID_PLACEMENT_URL = 8; - - // Invalid user list criterion. - INVALID_USER_LIST = 9; - - // Invalid user interest criterion. - INVALID_USER_INTEREST = 10; - - // Placement URL has wrong format. - INVALID_FORMAT_FOR_PLACEMENT_URL = 11; - - // Placement URL is too long. - PLACEMENT_URL_IS_TOO_LONG = 12; - - // Indicates the URL contains an illegal character. - PLACEMENT_URL_HAS_ILLEGAL_CHAR = 13; - - // Indicates the URL contains multiple comma separated URLs. - PLACEMENT_URL_HAS_MULTIPLE_SITES_IN_LINE = 14; - - // Indicates the domain is blocked. - PLACEMENT_IS_NOT_AVAILABLE_FOR_TARGETING_OR_EXCLUSION = 15; - - // Invalid topic path. - INVALID_TOPIC_PATH = 16; - - // The YouTube Channel Id is invalid. - INVALID_YOUTUBE_CHANNEL_ID = 17; - - // The YouTube Video Id is invalid. - INVALID_YOUTUBE_VIDEO_ID = 18; - - // Indicates the placement is a YouTube vertical channel, which is no longer - // supported. - YOUTUBE_VERTICAL_CHANNEL_DEPRECATED = 19; - - // Indicates the placement is a YouTube demographic channel, which is no - // longer supported. - YOUTUBE_DEMOGRAPHIC_CHANNEL_DEPRECATED = 20; - - // YouTube urls are not supported in Placement criterion. Use YouTubeChannel - // and YouTubeVideo criterion instead. - YOUTUBE_URL_UNSUPPORTED = 21; - - // Criteria type can not be excluded by the customer, like AOL account type - // cannot target site type criteria. - CANNOT_EXCLUDE_CRITERIA_TYPE = 22; - - // Criteria type can not be targeted. - CANNOT_ADD_CRITERIA_TYPE = 23; - - // Not allowed to exclude similar user list. - CANNOT_EXCLUDE_SIMILAR_USER_LIST = 26; - - // Not allowed to target a closed user list. - CANNOT_ADD_CLOSED_USER_LIST = 27; - - // Not allowed to add display only UserLists to search only campaigns. - CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_ONLY_CAMPAIGNS = 28; - - // Not allowed to add display only UserLists to search plus campaigns. - CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_CAMPAIGNS = 29; - - // Not allowed to add display only UserLists to shopping campaigns. - CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SHOPPING_CAMPAIGNS = 30; - - // Not allowed to add User interests to search only campaigns. - CANNOT_ADD_USER_INTERESTS_TO_SEARCH_CAMPAIGNS = 31; - - // Not allowed to set bids for this criterion type in search campaigns - CANNOT_SET_BIDS_ON_CRITERION_TYPE_IN_SEARCH_CAMPAIGNS = 32; - - // Final URLs, URL Templates and CustomParameters cannot be set for the - // criterion types of Gender, AgeRange, UserList, Placement, MobileApp, and - // MobileAppCategory in search campaigns and shopping campaigns. - CANNOT_ADD_URLS_TO_CRITERION_TYPE_FOR_CAMPAIGN_TYPE = 33; - - // Invalid combined audience criterion. - INVALID_COMBINED_AUDIENCE = 122; - - // Invalid custom affinity criterion. - INVALID_CUSTOM_AFFINITY = 96; - - // Invalid custom intent criterion. - INVALID_CUSTOM_INTENT = 97; - - // Invalid custom audience criterion. - INVALID_CUSTOM_AUDIENCE = 121; - - // IP address is not valid. - INVALID_IP_ADDRESS = 34; - - // IP format is not valid. - INVALID_IP_FORMAT = 35; - - // Mobile application is not valid. - INVALID_MOBILE_APP = 36; - - // Mobile application category is not valid. - INVALID_MOBILE_APP_CATEGORY = 37; - - // The CriterionId does not exist or is of the incorrect type. - INVALID_CRITERION_ID = 38; - - // The Criterion is not allowed to be targeted. - CANNOT_TARGET_CRITERION = 39; - - // The criterion is not allowed to be targeted as it is deprecated. - CANNOT_TARGET_OBSOLETE_CRITERION = 40; - - // The CriterionId is not valid for the type. - CRITERION_ID_AND_TYPE_MISMATCH = 41; - - // Distance for the radius for the proximity criterion is invalid. - INVALID_PROXIMITY_RADIUS = 42; - - // Units for the distance for the radius for the proximity criterion is - // invalid. - INVALID_PROXIMITY_RADIUS_UNITS = 43; - - // Street address in the address is not valid. - INVALID_STREETADDRESS_LENGTH = 44; - - // City name in the address is not valid. - INVALID_CITYNAME_LENGTH = 45; - - // Region code in the address is not valid. - INVALID_REGIONCODE_LENGTH = 46; - - // Region name in the address is not valid. - INVALID_REGIONNAME_LENGTH = 47; - - // Postal code in the address is not valid. - INVALID_POSTALCODE_LENGTH = 48; - - // Country code in the address is not valid. - INVALID_COUNTRY_CODE = 49; - - // Latitude for the GeoPoint is not valid. - INVALID_LATITUDE = 50; - - // Longitude for the GeoPoint is not valid. - INVALID_LONGITUDE = 51; - - // The Proximity input is not valid. Both address and geoPoint cannot be - // null. - PROXIMITY_GEOPOINT_AND_ADDRESS_BOTH_CANNOT_BE_NULL = 52; - - // The Proximity address cannot be geocoded to a valid lat/long. - INVALID_PROXIMITY_ADDRESS = 53; - - // User domain name is not valid. - INVALID_USER_DOMAIN_NAME = 54; - - // Length of serialized criterion parameter exceeded size limit. - CRITERION_PARAMETER_TOO_LONG = 55; - - // Time interval in the AdSchedule overlaps with another AdSchedule. - AD_SCHEDULE_TIME_INTERVALS_OVERLAP = 56; - - // AdSchedule time interval cannot span multiple days. - AD_SCHEDULE_INTERVAL_CANNOT_SPAN_MULTIPLE_DAYS = 57; - - // AdSchedule time interval specified is invalid, endTime cannot be earlier - // than startTime. - AD_SCHEDULE_INVALID_TIME_INTERVAL = 58; - - // The number of AdSchedule entries in a day exceeds the limit. - AD_SCHEDULE_EXCEEDED_INTERVALS_PER_DAY_LIMIT = 59; - - // CriteriaId does not match the interval of the AdSchedule specified. - AD_SCHEDULE_CRITERION_ID_MISMATCHING_FIELDS = 60; - - // Cannot set bid modifier for this criterion type. - CANNOT_BID_MODIFY_CRITERION_TYPE = 61; - - // Cannot bid modify criterion, since it is opted out of the campaign. - CANNOT_BID_MODIFY_CRITERION_CAMPAIGN_OPTED_OUT = 62; - - // Cannot set bid modifier for a negative criterion. - CANNOT_BID_MODIFY_NEGATIVE_CRITERION = 63; - - // Bid Modifier already exists. Use SET operation to update. - BID_MODIFIER_ALREADY_EXISTS = 64; - - // Feed Id is not allowed in these Location Groups. - FEED_ID_NOT_ALLOWED = 65; - - // The account may not use the requested criteria type. For example, some - // accounts are restricted to keywords only. - ACCOUNT_INELIGIBLE_FOR_CRITERIA_TYPE = 66; - - // The requested criteria type cannot be used with campaign or ad group - // bidding strategy. - CRITERIA_TYPE_INVALID_FOR_BIDDING_STRATEGY = 67; - - // The Criterion is not allowed to be excluded. - CANNOT_EXCLUDE_CRITERION = 68; - - // The criterion is not allowed to be removed. For example, we cannot remove - // any of the device criterion. - CANNOT_REMOVE_CRITERION = 69; - - // Bidding categories do not form a valid path in the Shopping bidding - // category taxonomy. - INVALID_PRODUCT_BIDDING_CATEGORY = 76; - - // ShoppingSetting must be added to the campaign before ProductScope - // criteria can be added. - MISSING_SHOPPING_SETTING = 77; - - // Matching function is invalid. - INVALID_MATCHING_FUNCTION = 78; - - // Filter parameters not allowed for location groups targeting. - LOCATION_FILTER_NOT_ALLOWED = 79; - - // Feed not found, or the feed is not an enabled location feed. - INVALID_FEED_FOR_LOCATION_FILTER = 98; - - // Given location filter parameter is invalid for location groups targeting. - LOCATION_FILTER_INVALID = 80; - - // Cannot set geo target constants and feed item sets at the same time. - CANNOT_SET_GEO_TARGET_CONSTANTS_WITH_FEED_ITEM_SETS = 123; - - // The location group radius is in the range but not at the valid increment. - INVALID_LOCATION_GROUP_RADIUS = 124; - - // The location group radius unit is invalid. - INVALID_LOCATION_GROUP_RADIUS_UNIT = 125; - - // Criteria type cannot be associated with a campaign and its ad group(s) - // simultaneously. - CANNOT_ATTACH_CRITERIA_AT_CAMPAIGN_AND_ADGROUP = 81; - - // Range represented by hotel length of stay's min nights and max nights - // overlaps with an existing criterion. - HOTEL_LENGTH_OF_STAY_OVERLAPS_WITH_EXISTING_CRITERION = 82; - - // Range represented by hotel advance booking window's min days and max days - // overlaps with an existing criterion. - HOTEL_ADVANCE_BOOKING_WINDOW_OVERLAPS_WITH_EXISTING_CRITERION = 83; - - // The field is not allowed to be set when the negative field is set to - // true, e.g. we don't allow bids in negative ad group or campaign criteria. - FIELD_INCOMPATIBLE_WITH_NEGATIVE_TARGETING = 84; - - // The combination of operand and operator in webpage condition is invalid. - INVALID_WEBPAGE_CONDITION = 85; - - // The URL of webpage condition is invalid. - INVALID_WEBPAGE_CONDITION_URL = 86; - - // The URL of webpage condition cannot be empty or contain white space. - WEBPAGE_CONDITION_URL_CANNOT_BE_EMPTY = 87; - - // The URL of webpage condition contains an unsupported protocol. - WEBPAGE_CONDITION_URL_UNSUPPORTED_PROTOCOL = 88; - - // The URL of webpage condition cannot be an IP address. - WEBPAGE_CONDITION_URL_CANNOT_BE_IP_ADDRESS = 89; - - // The domain of the URL is not consistent with the domain in campaign - // setting. - WEBPAGE_CONDITION_URL_DOMAIN_NOT_CONSISTENT_WITH_CAMPAIGN_SETTING = 90; - - // The URL of webpage condition cannot be a public suffix itself. - WEBPAGE_CONDITION_URL_CANNOT_BE_PUBLIC_SUFFIX = 91; - - // The URL of webpage condition has an invalid public suffix. - WEBPAGE_CONDITION_URL_INVALID_PUBLIC_SUFFIX = 92; - - // Value track parameter is not supported in webpage condition URL. - WEBPAGE_CONDITION_URL_VALUE_TRACK_VALUE_NOT_SUPPORTED = 93; - - // Only one URL-EQUALS webpage condition is allowed in a webpage - // criterion and it cannot be combined with other conditions. - WEBPAGE_CRITERION_URL_EQUALS_CAN_HAVE_ONLY_ONE_CONDITION = 94; - - // A webpage criterion cannot be added to a non-DSA ad group. - WEBPAGE_CRITERION_NOT_SUPPORTED_ON_NON_DSA_AD_GROUP = 95; - - // Cannot add positive user list criteria in Smart Display campaigns. - CANNOT_TARGET_USER_LIST_FOR_SMART_DISPLAY_CAMPAIGNS = 99; - - // Cannot add positive placement criterion types in search campaigns. - CANNOT_TARGET_PLACEMENTS_FOR_SEARCH_CAMPAIGNS = 126; - - // Listing scope contains too many dimension types. - LISTING_SCOPE_TOO_MANY_DIMENSION_TYPES = 100; - - // Listing scope has too many IN operators. - LISTING_SCOPE_TOO_MANY_IN_OPERATORS = 101; - - // Listing scope contains IN operator on an unsupported dimension type. - LISTING_SCOPE_IN_OPERATOR_NOT_SUPPORTED = 102; - - // There are dimensions with duplicate dimension type. - DUPLICATE_LISTING_DIMENSION_TYPE = 103; - - // There are dimensions with duplicate dimension value. - DUPLICATE_LISTING_DIMENSION_VALUE = 104; - - // Listing group SUBDIVISION nodes cannot have bids. - CANNOT_SET_BIDS_ON_LISTING_GROUP_SUBDIVISION = 105; - - // Ad group is invalid due to the listing groups it contains. - INVALID_LISTING_GROUP_HIERARCHY = 106; - - // Listing group unit cannot have children. - LISTING_GROUP_UNIT_CANNOT_HAVE_CHILDREN = 107; - - // Subdivided listing groups must have an "others" case. - LISTING_GROUP_SUBDIVISION_REQUIRES_OTHERS_CASE = 108; - - // Dimension type of listing group must be the same as that of its siblings. - LISTING_GROUP_REQUIRES_SAME_DIMENSION_TYPE_AS_SIBLINGS = 109; - - // Listing group cannot be added to the ad group because it already exists. - LISTING_GROUP_ALREADY_EXISTS = 110; - - // Listing group referenced in the operation was not found in the ad group. - LISTING_GROUP_DOES_NOT_EXIST = 111; - - // Recursive removal failed because listing group subdivision is being - // created or modified in this request. - LISTING_GROUP_CANNOT_BE_REMOVED = 112; - - // Listing group type is not allowed for specified ad group criterion type. - INVALID_LISTING_GROUP_TYPE = 113; - - // Listing group in an ADD operation specifies a non temporary criterion id. - LISTING_GROUP_ADD_MAY_ONLY_USE_TEMP_ID = 114; - - // The combined length of dimension values of the Listing scope criterion - // is too long. - LISTING_SCOPE_TOO_LONG = 115; - - // Listing scope contains too many dimensions. - LISTING_SCOPE_TOO_MANY_DIMENSIONS = 116; - - // The combined length of dimension values of the Listing group criterion is - // too long. - LISTING_GROUP_TOO_LONG = 117; - - // Listing group tree is too deep. - LISTING_GROUP_TREE_TOO_DEEP = 118; - - // Listing dimension is invalid (e.g. dimension contains illegal value, - // dimension type is represented with wrong class, etc). Listing dimension - // value can not contain "==" or "&+". - INVALID_LISTING_DIMENSION = 119; - - // Listing dimension type is either invalid for campaigns of this type or - // cannot be used in the current context. BIDDING_CATEGORY_Lx and - // PRODUCT_TYPE_Lx dimensions must be used in ascending order of their - // levels: L1, L2, L3, L4, L5... The levels must be specified sequentially - // and start from L1. Furthermore, an "others" Listing group cannot be - // subdivided with a dimension of the same type but of a higher level - // ("others" BIDDING_CATEGORY_L3 can be subdivided with BRAND but not with - // BIDDING_CATEGORY_L4). - INVALID_LISTING_DIMENSION_TYPE = 120; - - // Customer is not on allowlist for composite audience in display campaigns. - ADVERTISER_NOT_ON_ALLOWLIST_FOR_COMBINED_AUDIENCE_ON_DISPLAY = 127; - - // Cannot target on a removed combined audience. - CANNOT_TARGET_REMOVED_COMBINED_AUDIENCE = 128; - - // Combined audience ID is invalid. - INVALID_COMBINED_AUDIENCE_ID = 129; - - // Can not target removed combined audience. - CANNOT_TARGET_REMOVED_CUSTOM_AUDIENCE = 130; - } - - -} diff --git a/google/ads/googleads/v6/errors/currency_code_error.proto b/google/ads/googleads/v6/errors/currency_code_error.proto deleted file mode 100644 index 8acdd12ca..000000000 --- a/google/ads/googleads/v6/errors/currency_code_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CurrencyCodeErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing currency code errors. - -// Container for enum describing possible currency code errors. -message CurrencyCodeErrorEnum { - // Enum describing possible currency code errors. - enum CurrencyCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The currency code is not supported. - UNSUPPORTED = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/custom_audience_error.proto b/google/ads/googleads/v6/errors/custom_audience_error.proto deleted file mode 100644 index 4155d693e..000000000 --- a/google/ads/googleads/v6/errors/custom_audience_error.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomAudienceErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing custom audience errors. - -// Container for enum describing possible custom audience errors. -message CustomAudienceErrorEnum { - // Enum describing possible custom audience errors. - enum CustomAudienceError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // New name in the custom audience is duplicated ignoring cases. - NAME_ALREADY_USED = 2; - - // Cannot remove a custom audience while it's still being used as targeting. - CANNOT_REMOVE_WHILE_IN_USE = 3; - - // Cannot update or remove a custom audience that is already removed. - RESOURCE_ALREADY_REMOVED = 4; - - // The pair of [type, value] already exists in members. - MEMBER_TYPE_AND_PARAMETER_ALREADY_EXISTED = 5; - - // Member type is invalid. - INVALID_MEMBER_TYPE = 6; - - // Member type does not have associated value. - MEMBER_TYPE_AND_VALUE_DOES_NOT_MATCH = 7; - - // Custom audience contains a member that violates policy. - POLICY_VIOLATION = 8; - - // Change in custom audience type is not allowed. - INVALID_TYPE_CHANGE = 9; - } - - -} diff --git a/google/ads/googleads/v6/errors/custom_interest_error.proto b/google/ads/googleads/v6/errors/custom_interest_error.proto deleted file mode 100644 index ce6038b5a..000000000 --- a/google/ads/googleads/v6/errors/custom_interest_error.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing custom interest errors. - -// Container for enum describing possible custom interest errors. -message CustomInterestErrorEnum { - // Enum describing possible custom interest errors. - enum CustomInterestError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Duplicate custom interest name ignoring case. - NAME_ALREADY_USED = 2; - - // In the remove custom interest member operation, both member ID and - // pair [type, parameter] are not present. - CUSTOM_INTEREST_MEMBER_ID_AND_TYPE_PARAMETER_NOT_PRESENT_IN_REMOVE = 3; - - // The pair of [type, parameter] does not exist. - TYPE_AND_PARAMETER_NOT_FOUND = 4; - - // The pair of [type, parameter] already exists. - TYPE_AND_PARAMETER_ALREADY_EXISTED = 5; - - // Unsupported custom interest member type. - INVALID_CUSTOM_INTEREST_MEMBER_TYPE = 6; - - // Cannot remove a custom interest while it's still being targeted. - CANNOT_REMOVE_WHILE_IN_USE = 7; - - // Cannot mutate custom interest type. - CANNOT_CHANGE_TYPE = 8; - } - - -} diff --git a/google/ads/googleads/v6/errors/customer_client_link_error.proto b/google/ads/googleads/v6/errors/customer_client_link_error.proto deleted file mode 100644 index 0cbf504a6..000000000 --- a/google/ads/googleads/v6/errors/customer_client_link_error.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientLinkErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing CustomerClientLink errors. - -// Container for enum describing possible CustomeClientLink errors. -message CustomerClientLinkErrorEnum { - // Enum describing possible CustomerClientLink errors. - enum CustomerClientLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Trying to manage a client that already in being managed by customer. - CLIENT_ALREADY_INVITED_BY_THIS_MANAGER = 2; - - // Already managed by some other manager in the hierarchy. - CLIENT_ALREADY_MANAGED_IN_HIERARCHY = 3; - - // Attempt to create a cycle in the hierarchy. - CYCLIC_LINK_NOT_ALLOWED = 4; - - // Managed accounts has the maximum number of linked accounts. - CUSTOMER_HAS_TOO_MANY_ACCOUNTS = 5; - - // Invitor has the maximum pending invitations. - CLIENT_HAS_TOO_MANY_INVITATIONS = 6; - - // Attempt to change hidden status of a link that is not active. - CANNOT_HIDE_OR_UNHIDE_MANAGER_ACCOUNTS = 7; - - // Parent manager account has the maximum number of linked accounts. - CUSTOMER_HAS_TOO_MANY_ACCOUNTS_AT_MANAGER = 8; - - // Client has too many managers. - CLIENT_HAS_TOO_MANY_MANAGERS = 9; - } - - -} diff --git a/google/ads/googleads/v6/errors/customer_error.proto b/google/ads/googleads/v6/errors/customer_error.proto deleted file mode 100644 index b738d1d4f..000000000 --- a/google/ads/googleads/v6/errors/customer_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Container for enum describing possible customer errors. -message CustomerErrorEnum { - // Set of errors that are related to requests dealing with Customer. - enum CustomerError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Customer status is not allowed to be changed from DRAFT and CLOSED. - // Currency code and at least one of country code and time zone needs to be - // set when status is changed to ENABLED. - STATUS_CHANGE_DISALLOWED = 2; - - // CustomerService cannot get a customer that has not been fully set up. - ACCOUNT_NOT_SET_UP = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/customer_feed_error.proto b/google/ads/googleads/v6/errors/customer_feed_error.proto deleted file mode 100644 index 280a9b8b4..000000000 --- a/google/ads/googleads/v6/errors/customer_feed_error.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerFeedErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing customer feed errors. - -// Container for enum describing possible customer feed errors. -message CustomerFeedErrorEnum { - // Enum describing possible customer feed errors. - enum CustomerFeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An active feed already exists for this customer and place holder type. - FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; - - // The specified feed is removed. - CANNOT_CREATE_FOR_REMOVED_FEED = 3; - - // The CustomerFeed already exists. Update should be used to modify the - // existing CustomerFeed. - CANNOT_CREATE_ALREADY_EXISTING_CUSTOMER_FEED = 4; - - // Cannot update removed customer feed. - CANNOT_MODIFY_REMOVED_CUSTOMER_FEED = 5; - - // Invalid placeholder type. - INVALID_PLACEHOLDER_TYPE = 6; - - // Feed mapping for this placeholder type does not exist. - MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7; - - // Placeholder not allowed at the account level. - PLACEHOLDER_TYPE_NOT_ALLOWED_ON_CUSTOMER_FEED = 8; - } - - -} diff --git a/google/ads/googleads/v6/errors/customer_manager_link_error.proto b/google/ads/googleads/v6/errors/customer_manager_link_error.proto deleted file mode 100644 index cfa3c85d3..000000000 --- a/google/ads/googleads/v6/errors/customer_manager_link_error.proto +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerManagerLinkErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing CustomerManagerLink errors. - -// Container for enum describing possible CustomerManagerLink errors. -message CustomerManagerLinkErrorEnum { - // Enum describing possible CustomerManagerLink errors. - enum CustomerManagerLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // No pending invitation. - NO_PENDING_INVITE = 2; - - // Attempt to operate on the same client more than once in the same call. - SAME_CLIENT_MORE_THAN_ONCE_PER_CALL = 3; - - // Manager account has the maximum number of linked accounts. - MANAGER_HAS_MAX_NUMBER_OF_LINKED_ACCOUNTS = 4; - - // If no active user on account it cannot be unlinked from its manager. - CANNOT_UNLINK_ACCOUNT_WITHOUT_ACTIVE_USER = 5; - - // Account should have at least one active owner on it before being - // unlinked. - CANNOT_REMOVE_LAST_CLIENT_ACCOUNT_OWNER = 6; - - // Only account owners may change their permission role. - CANNOT_CHANGE_ROLE_BY_NON_ACCOUNT_OWNER = 7; - - // When a client's link to its manager is not active, the link role cannot - // be changed. - CANNOT_CHANGE_ROLE_FOR_NON_ACTIVE_LINK_ACCOUNT = 8; - - // Attempt to link a child to a parent that contains or will contain - // duplicate children. - DUPLICATE_CHILD_FOUND = 9; - - // The authorized customer is a test account. It can add no more than the - // allowed number of accounts - TEST_ACCOUNT_LINKS_TOO_MANY_CHILD_ACCOUNTS = 10; - } - - -} diff --git a/google/ads/googleads/v6/errors/customer_user_access_error.proto b/google/ads/googleads/v6/errors/customer_user_access_error.proto deleted file mode 100644 index a62486b6e..000000000 --- a/google/ads/googleads/v6/errors/customer_user_access_error.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "CustomerUserAccessErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing CustomerUserAccess errors. - -// Container for enum describing possible CustomerUserAccess errors. -message CustomerUserAccessErrorEnum { - // Enum describing possible customer user access errors. - enum CustomerUserAccessError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // There is no user associated with the user id specified. - INVALID_USER_ID = 2; - - // Unable to remove the access between the user and customer. - REMOVAL_DISALLOWED = 3; - - // Unable to add or update the access role as specified. - DISALLOWED_ACCESS_ROLE = 4; - - // The user can't remove itself from an active serving customer if it's the - // last admin user and the customer doesn't have any owner manager - LAST_ADMIN_USER_OF_SERVING_CUSTOMER = 5; - - // Last admin user cannot be removed from a manager. - LAST_ADMIN_USER_OF_MANAGER = 6; - } - - -} diff --git a/google/ads/googleads/v6/errors/database_error.proto b/google/ads/googleads/v6/errors/database_error.proto deleted file mode 100644 index 9f0f59d33..000000000 --- a/google/ads/googleads/v6/errors/database_error.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DatabaseErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing database errors. - -// Container for enum describing possible database errors. -message DatabaseErrorEnum { - // Enum describing possible database errors. - enum DatabaseError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Multiple requests were attempting to modify the same resource at once. - // Please retry the request. - CONCURRENT_MODIFICATION = 2; - - // The request conflicted with existing data. This error will usually be - // replaced with a more specific error if the request is retried. - DATA_CONSTRAINT_VIOLATION = 3; - - // The data written is too large. Please split the request into smaller - // requests. - REQUEST_TOO_LARGE = 4; - } - - -} diff --git a/google/ads/googleads/v6/errors/date_error.proto b/google/ads/googleads/v6/errors/date_error.proto deleted file mode 100644 index 6e8b9c78d..000000000 --- a/google/ads/googleads/v6/errors/date_error.proto +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DateErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing date errors. - -// Container for enum describing possible date errors. -message DateErrorEnum { - // Enum describing possible date errors. - enum DateError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Given field values do not correspond to a valid date. - INVALID_FIELD_VALUES_IN_DATE = 2; - - // Given field values do not correspond to a valid date time. - INVALID_FIELD_VALUES_IN_DATE_TIME = 3; - - // The string date's format should be yyyy-mm-dd. - INVALID_STRING_DATE = 4; - - // The string date time's format should be yyyy-mm-dd hh:mm:ss.ssssss. - INVALID_STRING_DATE_TIME_MICROS = 6; - - // The string date time's format should be yyyy-mm-dd hh:mm:ss. - INVALID_STRING_DATE_TIME_SECONDS = 11; - - // The string date time's format should be yyyy-mm-dd hh:mm:ss+|-hh:mm. - INVALID_STRING_DATE_TIME_SECONDS_WITH_OFFSET = 12; - - // Date is before allowed minimum. - EARLIER_THAN_MINIMUM_DATE = 7; - - // Date is after allowed maximum. - LATER_THAN_MAXIMUM_DATE = 8; - - // Date range bounds are not in order. - DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE = 9; - - // Both dates in range are null. - DATE_RANGE_MINIMUM_AND_MAXIMUM_DATES_BOTH_NULL = 10; - } - - -} diff --git a/google/ads/googleads/v6/errors/date_range_error.proto b/google/ads/googleads/v6/errors/date_range_error.proto deleted file mode 100644 index 935956225..000000000 --- a/google/ads/googleads/v6/errors/date_range_error.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DateRangeErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing date range errors. - -// Container for enum describing possible date range errors. -message DateRangeErrorEnum { - // Enum describing possible date range errors. - enum DateRangeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Invalid date. - INVALID_DATE = 2; - - // The start date was after the end date. - START_DATE_AFTER_END_DATE = 3; - - // Cannot set date to past time - CANNOT_SET_DATE_TO_PAST = 4; - - // A date was used that is past the system "last" date. - AFTER_MAXIMUM_ALLOWABLE_DATE = 5; - - // Trying to change start date on a resource that has started. - CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED = 6; - } - - -} diff --git a/google/ads/googleads/v6/errors/distinct_error.proto b/google/ads/googleads/v6/errors/distinct_error.proto deleted file mode 100644 index 89f0f0719..000000000 --- a/google/ads/googleads/v6/errors/distinct_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "DistinctErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing distinct errors. - -// Container for enum describing possible distinct errors. -message DistinctErrorEnum { - // Enum describing possible distinct errors. - enum DistinctError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Duplicate element. - DUPLICATE_ELEMENT = 2; - - // Duplicate type. - DUPLICATE_TYPE = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/enum_error.proto b/google/ads/googleads/v6/errors/enum_error.proto deleted file mode 100644 index 02edcaa9b..000000000 --- a/google/ads/googleads/v6/errors/enum_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "EnumErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing enum errors. - -// Container for enum describing possible enum errors. -message EnumErrorEnum { - // Enum describing possible enum errors. - enum EnumError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The enum value is not permitted. - ENUM_VALUE_NOT_PERMITTED = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/errors.proto b/google/ads/googleads/v6/errors/errors.proto deleted file mode 100644 index 5021b34f4..000000000 --- a/google/ads/googleads/v6/errors/errors.proto +++ /dev/null @@ -1,625 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/ads/googleads/v6/common/policy.proto"; -import "google/ads/googleads/v6/common/value.proto"; -import "google/ads/googleads/v6/errors/access_invitation_error.proto"; -import "google/ads/googleads/v6/errors/account_budget_proposal_error.proto"; -import "google/ads/googleads/v6/errors/account_link_error.proto"; -import "google/ads/googleads/v6/errors/ad_customizer_error.proto"; -import "google/ads/googleads/v6/errors/ad_error.proto"; -import "google/ads/googleads/v6/errors/ad_group_ad_error.proto"; -import "google/ads/googleads/v6/errors/ad_group_bid_modifier_error.proto"; -import "google/ads/googleads/v6/errors/ad_group_criterion_error.proto"; -import "google/ads/googleads/v6/errors/ad_group_error.proto"; -import "google/ads/googleads/v6/errors/ad_group_feed_error.proto"; -import "google/ads/googleads/v6/errors/ad_parameter_error.proto"; -import "google/ads/googleads/v6/errors/ad_sharing_error.proto"; -import "google/ads/googleads/v6/errors/adx_error.proto"; -import "google/ads/googleads/v6/errors/asset_error.proto"; -import "google/ads/googleads/v6/errors/asset_link_error.proto"; -import "google/ads/googleads/v6/errors/authentication_error.proto"; -import "google/ads/googleads/v6/errors/authorization_error.proto"; -import "google/ads/googleads/v6/errors/batch_job_error.proto"; -import "google/ads/googleads/v6/errors/bidding_error.proto"; -import "google/ads/googleads/v6/errors/bidding_strategy_error.proto"; -import "google/ads/googleads/v6/errors/billing_setup_error.proto"; -import "google/ads/googleads/v6/errors/campaign_budget_error.proto"; -import "google/ads/googleads/v6/errors/campaign_criterion_error.proto"; -import "google/ads/googleads/v6/errors/campaign_draft_error.proto"; -import "google/ads/googleads/v6/errors/campaign_error.proto"; -import "google/ads/googleads/v6/errors/campaign_experiment_error.proto"; -import "google/ads/googleads/v6/errors/campaign_feed_error.proto"; -import "google/ads/googleads/v6/errors/campaign_shared_set_error.proto"; -import "google/ads/googleads/v6/errors/change_event_error.proto"; -import "google/ads/googleads/v6/errors/change_status_error.proto"; -import "google/ads/googleads/v6/errors/collection_size_error.proto"; -import "google/ads/googleads/v6/errors/context_error.proto"; -import "google/ads/googleads/v6/errors/conversion_action_error.proto"; -import "google/ads/googleads/v6/errors/conversion_adjustment_upload_error.proto"; -import "google/ads/googleads/v6/errors/conversion_upload_error.proto"; -import "google/ads/googleads/v6/errors/country_code_error.proto"; -import "google/ads/googleads/v6/errors/criterion_error.proto"; -import "google/ads/googleads/v6/errors/currency_code_error.proto"; -import "google/ads/googleads/v6/errors/custom_audience_error.proto"; -import "google/ads/googleads/v6/errors/custom_interest_error.proto"; -import "google/ads/googleads/v6/errors/customer_client_link_error.proto"; -import "google/ads/googleads/v6/errors/customer_error.proto"; -import "google/ads/googleads/v6/errors/customer_feed_error.proto"; -import "google/ads/googleads/v6/errors/customer_manager_link_error.proto"; -import "google/ads/googleads/v6/errors/customer_user_access_error.proto"; -import "google/ads/googleads/v6/errors/database_error.proto"; -import "google/ads/googleads/v6/errors/date_error.proto"; -import "google/ads/googleads/v6/errors/date_range_error.proto"; -import "google/ads/googleads/v6/errors/distinct_error.proto"; -import "google/ads/googleads/v6/errors/enum_error.proto"; -import "google/ads/googleads/v6/errors/extension_feed_item_error.proto"; -import "google/ads/googleads/v6/errors/extension_setting_error.proto"; -import "google/ads/googleads/v6/errors/feed_attribute_reference_error.proto"; -import "google/ads/googleads/v6/errors/feed_error.proto"; -import "google/ads/googleads/v6/errors/feed_item_error.proto"; -import "google/ads/googleads/v6/errors/feed_item_set_error.proto"; -import "google/ads/googleads/v6/errors/feed_item_set_link_error.proto"; -import "google/ads/googleads/v6/errors/feed_item_target_error.proto"; -import "google/ads/googleads/v6/errors/feed_item_validation_error.proto"; -import "google/ads/googleads/v6/errors/feed_mapping_error.proto"; -import "google/ads/googleads/v6/errors/field_error.proto"; -import "google/ads/googleads/v6/errors/field_mask_error.proto"; -import "google/ads/googleads/v6/errors/function_error.proto"; -import "google/ads/googleads/v6/errors/function_parsing_error.proto"; -import "google/ads/googleads/v6/errors/geo_target_constant_suggestion_error.proto"; -import "google/ads/googleads/v6/errors/header_error.proto"; -import "google/ads/googleads/v6/errors/id_error.proto"; -import "google/ads/googleads/v6/errors/image_error.proto"; -import "google/ads/googleads/v6/errors/internal_error.proto"; -import "google/ads/googleads/v6/errors/invoice_error.proto"; -import "google/ads/googleads/v6/errors/keyword_plan_ad_group_error.proto"; -import "google/ads/googleads/v6/errors/keyword_plan_ad_group_keyword_error.proto"; -import "google/ads/googleads/v6/errors/keyword_plan_campaign_error.proto"; -import "google/ads/googleads/v6/errors/keyword_plan_campaign_keyword_error.proto"; -import "google/ads/googleads/v6/errors/keyword_plan_error.proto"; -import "google/ads/googleads/v6/errors/keyword_plan_idea_error.proto"; -import "google/ads/googleads/v6/errors/label_error.proto"; -import "google/ads/googleads/v6/errors/language_code_error.proto"; -import "google/ads/googleads/v6/errors/list_operation_error.proto"; -import "google/ads/googleads/v6/errors/manager_link_error.proto"; -import "google/ads/googleads/v6/errors/media_bundle_error.proto"; -import "google/ads/googleads/v6/errors/media_file_error.proto"; -import "google/ads/googleads/v6/errors/media_upload_error.proto"; -import "google/ads/googleads/v6/errors/multiplier_error.proto"; -import "google/ads/googleads/v6/errors/mutate_error.proto"; -import "google/ads/googleads/v6/errors/new_resource_creation_error.proto"; -import "google/ads/googleads/v6/errors/not_allowlisted_error.proto"; -import "google/ads/googleads/v6/errors/not_empty_error.proto"; -import "google/ads/googleads/v6/errors/null_error.proto"; -import "google/ads/googleads/v6/errors/offline_user_data_job_error.proto"; -import "google/ads/googleads/v6/errors/operation_access_denied_error.proto"; -import "google/ads/googleads/v6/errors/operator_error.proto"; -import "google/ads/googleads/v6/errors/partial_failure_error.proto"; -import "google/ads/googleads/v6/errors/payments_account_error.proto"; -import "google/ads/googleads/v6/errors/policy_finding_error.proto"; -import "google/ads/googleads/v6/errors/policy_validation_parameter_error.proto"; -import "google/ads/googleads/v6/errors/policy_violation_error.proto"; -import "google/ads/googleads/v6/errors/query_error.proto"; -import "google/ads/googleads/v6/errors/quota_error.proto"; -import "google/ads/googleads/v6/errors/range_error.proto"; -import "google/ads/googleads/v6/errors/reach_plan_error.proto"; -import "google/ads/googleads/v6/errors/recommendation_error.proto"; -import "google/ads/googleads/v6/errors/region_code_error.proto"; -import "google/ads/googleads/v6/errors/request_error.proto"; -import "google/ads/googleads/v6/errors/resource_access_denied_error.proto"; -import "google/ads/googleads/v6/errors/resource_count_limit_exceeded_error.proto"; -import "google/ads/googleads/v6/errors/setting_error.proto"; -import "google/ads/googleads/v6/errors/shared_criterion_error.proto"; -import "google/ads/googleads/v6/errors/shared_set_error.proto"; -import "google/ads/googleads/v6/errors/size_limit_error.proto"; -import "google/ads/googleads/v6/errors/string_format_error.proto"; -import "google/ads/googleads/v6/errors/string_length_error.proto"; -import "google/ads/googleads/v6/errors/third_party_app_analytics_link_error.proto"; -import "google/ads/googleads/v6/errors/time_zone_error.proto"; -import "google/ads/googleads/v6/errors/url_field_error.proto"; -import "google/ads/googleads/v6/errors/user_data_error.proto"; -import "google/ads/googleads/v6/errors/user_list_error.proto"; -import "google/ads/googleads/v6/errors/youtube_video_registration_error.proto"; -import "google/protobuf/duration.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ErrorsProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing the common error protos - -// Describes how a GoogleAds API call failed. It's returned inside -// google.rpc.Status.details when a call fails. -message GoogleAdsFailure { - // The list of errors that occurred. - repeated GoogleAdsError errors = 1; -} - -// GoogleAds-specific error. -message GoogleAdsError { - // An enum value that indicates which error occurred. - ErrorCode error_code = 1; - - // A human-readable description of the error. - string message = 2; - - // The value that triggered the error. - google.ads.googleads.v6.common.Value trigger = 3; - - // Describes the part of the request proto that caused the error. - ErrorLocation location = 4; - - // Additional error details, which are returned by certain error codes. Most - // error codes do not include details. - ErrorDetails details = 5; -} - -// The error reason represented by type and enum. -message ErrorCode { - // The list of error enums - oneof error_code { - // An error caused by the request - RequestErrorEnum.RequestError request_error = 1; - - // An error with a Bidding Strategy mutate. - BiddingStrategyErrorEnum.BiddingStrategyError bidding_strategy_error = 2; - - // An error with a URL field mutate. - UrlFieldErrorEnum.UrlFieldError url_field_error = 3; - - // An error with a list operation. - ListOperationErrorEnum.ListOperationError list_operation_error = 4; - - // An error with an AWQL query - QueryErrorEnum.QueryError query_error = 5; - - // An error with a mutate - MutateErrorEnum.MutateError mutate_error = 7; - - // An error with a field mask - FieldMaskErrorEnum.FieldMaskError field_mask_error = 8; - - // An error encountered when trying to authorize a user. - AuthorizationErrorEnum.AuthorizationError authorization_error = 9; - - // An unexpected server-side error. - InternalErrorEnum.InternalError internal_error = 10; - - // An error with the amonut of quota remaining. - QuotaErrorEnum.QuotaError quota_error = 11; - - // An error with an Ad Group Ad mutate. - AdErrorEnum.AdError ad_error = 12; - - // An error with an Ad Group mutate. - AdGroupErrorEnum.AdGroupError ad_group_error = 13; - - // An error with a Campaign Budget mutate. - CampaignBudgetErrorEnum.CampaignBudgetError campaign_budget_error = 14; - - // An error with a Campaign mutate. - CampaignErrorEnum.CampaignError campaign_error = 15; - - // Indicates failure to properly authenticate user. - AuthenticationErrorEnum.AuthenticationError authentication_error = 17; - - // Indicates failure to properly authenticate user. - AdGroupCriterionErrorEnum.AdGroupCriterionError ad_group_criterion_error = 18; - - // The reasons for the ad customizer error - AdCustomizerErrorEnum.AdCustomizerError ad_customizer_error = 19; - - // The reasons for the ad group ad error - AdGroupAdErrorEnum.AdGroupAdError ad_group_ad_error = 21; - - // The reasons for the ad sharing error - AdSharingErrorEnum.AdSharingError ad_sharing_error = 24; - - // The reasons for the adx error - AdxErrorEnum.AdxError adx_error = 25; - - // The reasons for the asset error - AssetErrorEnum.AssetError asset_error = 107; - - // The reasons for the bidding errors - BiddingErrorEnum.BiddingError bidding_error = 26; - - // The reasons for the campaign criterion error - CampaignCriterionErrorEnum.CampaignCriterionError campaign_criterion_error = 29; - - // The reasons for the collection size error - CollectionSizeErrorEnum.CollectionSizeError collection_size_error = 31; - - // The reasons for the country code error - CountryCodeErrorEnum.CountryCodeError country_code_error = 109; - - // The reasons for the criterion error - CriterionErrorEnum.CriterionError criterion_error = 32; - - // The reasons for the customer error - CustomerErrorEnum.CustomerError customer_error = 90; - - // The reasons for the date error - DateErrorEnum.DateError date_error = 33; - - // The reasons for the date range error - DateRangeErrorEnum.DateRangeError date_range_error = 34; - - // The reasons for the distinct error - DistinctErrorEnum.DistinctError distinct_error = 35; - - // The reasons for the feed attribute reference error - FeedAttributeReferenceErrorEnum.FeedAttributeReferenceError feed_attribute_reference_error = 36; - - // The reasons for the function error - FunctionErrorEnum.FunctionError function_error = 37; - - // The reasons for the function parsing error - FunctionParsingErrorEnum.FunctionParsingError function_parsing_error = 38; - - // The reasons for the id error - IdErrorEnum.IdError id_error = 39; - - // The reasons for the image error - ImageErrorEnum.ImageError image_error = 40; - - // The reasons for the language code error - LanguageCodeErrorEnum.LanguageCodeError language_code_error = 110; - - // The reasons for the media bundle error - MediaBundleErrorEnum.MediaBundleError media_bundle_error = 42; - - // The reasons for media uploading errors. - MediaUploadErrorEnum.MediaUploadError media_upload_error = 116; - - // The reasons for the media file error - MediaFileErrorEnum.MediaFileError media_file_error = 86; - - // The reasons for the multiplier error - MultiplierErrorEnum.MultiplierError multiplier_error = 44; - - // The reasons for the new resource creation error - NewResourceCreationErrorEnum.NewResourceCreationError new_resource_creation_error = 45; - - // The reasons for the not empty error - NotEmptyErrorEnum.NotEmptyError not_empty_error = 46; - - // The reasons for the null error - NullErrorEnum.NullError null_error = 47; - - // The reasons for the operator error - OperatorErrorEnum.OperatorError operator_error = 48; - - // The reasons for the range error - RangeErrorEnum.RangeError range_error = 49; - - // The reasons for error in applying a recommendation - RecommendationErrorEnum.RecommendationError recommendation_error = 58; - - // The reasons for the region code error - RegionCodeErrorEnum.RegionCodeError region_code_error = 51; - - // The reasons for the setting error - SettingErrorEnum.SettingError setting_error = 52; - - // The reasons for the string format error - StringFormatErrorEnum.StringFormatError string_format_error = 53; - - // The reasons for the string length error - StringLengthErrorEnum.StringLengthError string_length_error = 54; - - // The reasons for the operation access denied error - OperationAccessDeniedErrorEnum.OperationAccessDeniedError operation_access_denied_error = 55; - - // The reasons for the resource access denied error - ResourceAccessDeniedErrorEnum.ResourceAccessDeniedError resource_access_denied_error = 56; - - // The reasons for the resource count limit exceeded error - ResourceCountLimitExceededErrorEnum.ResourceCountLimitExceededError resource_count_limit_exceeded_error = 57; - - // The reasons for YouTube video registration errors. - YoutubeVideoRegistrationErrorEnum.YoutubeVideoRegistrationError youtube_video_registration_error = 117; - - // The reasons for the ad group bid modifier error - AdGroupBidModifierErrorEnum.AdGroupBidModifierError ad_group_bid_modifier_error = 59; - - // The reasons for the context error - ContextErrorEnum.ContextError context_error = 60; - - // The reasons for the field error - FieldErrorEnum.FieldError field_error = 61; - - // The reasons for the shared set error - SharedSetErrorEnum.SharedSetError shared_set_error = 62; - - // The reasons for the shared criterion error - SharedCriterionErrorEnum.SharedCriterionError shared_criterion_error = 63; - - // The reasons for the campaign shared set error - CampaignSharedSetErrorEnum.CampaignSharedSetError campaign_shared_set_error = 64; - - // The reasons for the conversion action error - ConversionActionErrorEnum.ConversionActionError conversion_action_error = 65; - - // The reasons for the conversion adjustment upload error - ConversionAdjustmentUploadErrorEnum.ConversionAdjustmentUploadError conversion_adjustment_upload_error = 115; - - // The reasons for the conversion upload error - ConversionUploadErrorEnum.ConversionUploadError conversion_upload_error = 111; - - // The reasons for the header error. - HeaderErrorEnum.HeaderError header_error = 66; - - // The reasons for the database error. - DatabaseErrorEnum.DatabaseError database_error = 67; - - // The reasons for the policy finding error. - PolicyFindingErrorEnum.PolicyFindingError policy_finding_error = 68; - - // The reason for enum error. - EnumErrorEnum.EnumError enum_error = 70; - - // The reason for keyword plan error. - KeywordPlanErrorEnum.KeywordPlanError keyword_plan_error = 71; - - // The reason for keyword plan campaign error. - KeywordPlanCampaignErrorEnum.KeywordPlanCampaignError keyword_plan_campaign_error = 72; - - // The reason for keyword plan campaign keyword error. - KeywordPlanCampaignKeywordErrorEnum.KeywordPlanCampaignKeywordError keyword_plan_campaign_keyword_error = 132; - - // The reason for keyword plan ad group error. - KeywordPlanAdGroupErrorEnum.KeywordPlanAdGroupError keyword_plan_ad_group_error = 74; - - // The reason for keyword plan ad group keyword error. - KeywordPlanAdGroupKeywordErrorEnum.KeywordPlanAdGroupKeywordError keyword_plan_ad_group_keyword_error = 133; - - // The reason for keyword idea error. - KeywordPlanIdeaErrorEnum.KeywordPlanIdeaError keyword_plan_idea_error = 76; - - // The reasons for account budget proposal errors. - AccountBudgetProposalErrorEnum.AccountBudgetProposalError account_budget_proposal_error = 77; - - // The reasons for the user list error - UserListErrorEnum.UserListError user_list_error = 78; - - // The reasons for the change event error - ChangeEventErrorEnum.ChangeEventError change_event_error = 136; - - // The reasons for the change status error - ChangeStatusErrorEnum.ChangeStatusError change_status_error = 79; - - // The reasons for the feed error - FeedErrorEnum.FeedError feed_error = 80; - - // The reasons for the geo target constant suggestion error. - GeoTargetConstantSuggestionErrorEnum.GeoTargetConstantSuggestionError geo_target_constant_suggestion_error = 81; - - // The reasons for the campaign draft error - CampaignDraftErrorEnum.CampaignDraftError campaign_draft_error = 82; - - // The reasons for the feed item error - FeedItemErrorEnum.FeedItemError feed_item_error = 83; - - // The reason for the label error. - LabelErrorEnum.LabelError label_error = 84; - - // The reasons for the billing setup error - BillingSetupErrorEnum.BillingSetupError billing_setup_error = 87; - - // The reasons for the customer client link error - CustomerClientLinkErrorEnum.CustomerClientLinkError customer_client_link_error = 88; - - // The reasons for the customer manager link error - CustomerManagerLinkErrorEnum.CustomerManagerLinkError customer_manager_link_error = 91; - - // The reasons for the feed mapping error - FeedMappingErrorEnum.FeedMappingError feed_mapping_error = 92; - - // The reasons for the customer feed error - CustomerFeedErrorEnum.CustomerFeedError customer_feed_error = 93; - - // The reasons for the ad group feed error - AdGroupFeedErrorEnum.AdGroupFeedError ad_group_feed_error = 94; - - // The reasons for the campaign feed error - CampaignFeedErrorEnum.CampaignFeedError campaign_feed_error = 96; - - // The reasons for the custom interest error - CustomInterestErrorEnum.CustomInterestError custom_interest_error = 97; - - // The reasons for the campaign experiment error - CampaignExperimentErrorEnum.CampaignExperimentError campaign_experiment_error = 98; - - // The reasons for the extension feed item error - ExtensionFeedItemErrorEnum.ExtensionFeedItemError extension_feed_item_error = 100; - - // The reasons for the ad parameter error - AdParameterErrorEnum.AdParameterError ad_parameter_error = 101; - - // The reasons for the feed item validation error - FeedItemValidationErrorEnum.FeedItemValidationError feed_item_validation_error = 102; - - // The reasons for the extension setting error - ExtensionSettingErrorEnum.ExtensionSettingError extension_setting_error = 103; - - // The reasons for the feed item set error - FeedItemSetErrorEnum.FeedItemSetError feed_item_set_error = 140; - - // The reasons for the feed item set link error - FeedItemSetLinkErrorEnum.FeedItemSetLinkError feed_item_set_link_error = 141; - - // The reasons for the feed item target error - FeedItemTargetErrorEnum.FeedItemTargetError feed_item_target_error = 104; - - // The reasons for the policy violation error - PolicyViolationErrorEnum.PolicyViolationError policy_violation_error = 105; - - // The reasons for the mutate job error - PartialFailureErrorEnum.PartialFailureError partial_failure_error = 112; - - // The reasons for the policy validation parameter error - PolicyValidationParameterErrorEnum.PolicyValidationParameterError policy_validation_parameter_error = 114; - - // The reasons for the size limit error - SizeLimitErrorEnum.SizeLimitError size_limit_error = 118; - - // The reasons for the offline user data job error. - OfflineUserDataJobErrorEnum.OfflineUserDataJobError offline_user_data_job_error = 119; - - // The reasons for the not allowlisted error - NotAllowlistedErrorEnum.NotAllowlistedError not_allowlisted_error = 137; - - // The reasons for the manager link error - ManagerLinkErrorEnum.ManagerLinkError manager_link_error = 121; - - // The reasons for the currency code error - CurrencyCodeErrorEnum.CurrencyCodeError currency_code_error = 122; - - // The reasons for the access invitation error - AccessInvitationErrorEnum.AccessInvitationError access_invitation_error = 124; - - // The reasons for the reach plan error - ReachPlanErrorEnum.ReachPlanError reach_plan_error = 125; - - // The reasons for the invoice error - InvoiceErrorEnum.InvoiceError invoice_error = 126; - - // The reasons for errors in payments accounts service - PaymentsAccountErrorEnum.PaymentsAccountError payments_account_error = 127; - - // The reasons for the time zone error - TimeZoneErrorEnum.TimeZoneError time_zone_error = 128; - - // The reasons for the asset link error - AssetLinkErrorEnum.AssetLinkError asset_link_error = 129; - - // The reasons for the user data error. - UserDataErrorEnum.UserDataError user_data_error = 130; - - // The reasons for the batch job error - BatchJobErrorEnum.BatchJobError batch_job_error = 131; - - // The reasons for the account link status change error - AccountLinkErrorEnum.AccountLinkError account_link_error = 134; - - // The reasons for the third party app analytics link mutate error - ThirdPartyAppAnalyticsLinkErrorEnum.ThirdPartyAppAnalyticsLinkError third_party_app_analytics_link_error = 135; - - // The reasons for the customer user access mutate error - CustomerUserAccessErrorEnum.CustomerUserAccessError customer_user_access_error = 138; - - // The reasons for the custom audience error - CustomAudienceErrorEnum.CustomAudienceError custom_audience_error = 139; - } -} - -// Describes the part of the request proto that caused the error. -message ErrorLocation { - // A part of a field path. - message FieldPathElement { - // The name of a field or a oneof - string field_name = 1; - - // If field_name is a repeated field, this is the element that failed - optional int32 index = 3; - } - - // A field path that indicates which field was invalid in the request. - repeated FieldPathElement field_path_elements = 2; -} - -// Additional error details. -message ErrorDetails { - // The error code that should have been returned, but wasn't. This is used - // when the error code is not published in the client specified version. - string unpublished_error_code = 1; - - // Describes an ad policy violation. - PolicyViolationDetails policy_violation_details = 2; - - // Describes policy violation findings. - PolicyFindingDetails policy_finding_details = 3; - - // Details on the quota error, including the scope (account or developer), the - // rate bucket name and the retry delay. - QuotaErrorDetails quota_error_details = 4; -} - -// Error returned as part of a mutate response. -// This error indicates single policy violation by some text -// in one of the fields. -message PolicyViolationDetails { - // Human readable description of policy violation. - string external_policy_description = 2; - - // Unique identifier for this violation. - // If policy is exemptible, this key may be used to request exemption. - google.ads.googleads.v6.common.PolicyViolationKey key = 4; - - // Human readable name of the policy. - string external_policy_name = 5; - - // Whether user can file an exemption request for this violation. - bool is_exemptible = 6; -} - -// Error returned as part of a mutate response. -// This error indicates one or more policy findings in the fields of a -// resource. -message PolicyFindingDetails { - // The list of policy topics for the resource. Contains the PROHIBITED or - // FULLY_LIMITED policy topic entries that prevented the resource from being - // saved (among any other entries the resource may also have). - repeated google.ads.googleads.v6.common.PolicyTopicEntry policy_topic_entries = 1; -} - -// Additional quota error details when there is QuotaError. -message QuotaErrorDetails { - // Enum of possible scopes that quota buckets belong to. - enum QuotaRateScope { - // Unspecified enum - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Per customer account quota - ACCOUNT = 2; - - // Per project or DevToken quota - DEVELOPER = 3; - } - - // The rate scope of the quota limit. - QuotaRateScope rate_scope = 1; - - // The high level description of the quota bucket. - // Examples are "Get requests for standard access" or "Requests per account". - string rate_name = 2; - - // Backoff period that customers should wait before sending next request. - google.protobuf.Duration retry_delay = 3; -} diff --git a/google/ads/googleads/v6/errors/extension_feed_item_error.proto b/google/ads/googleads/v6/errors/extension_feed_item_error.proto deleted file mode 100644 index d7733c09b..000000000 --- a/google/ads/googleads/v6/errors/extension_feed_item_error.proto +++ /dev/null @@ -1,195 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionFeedItemErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing extension feed item errors. - -// Container for enum describing possible extension feed item error. -message ExtensionFeedItemErrorEnum { - // Enum describing possible extension feed item errors. - enum ExtensionFeedItemError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Value is not within the accepted range. - VALUE_OUT_OF_RANGE = 2; - - // Url list is too long. - URL_LIST_TOO_LONG = 3; - - // Cannot have a geo targeting restriction without having geo targeting. - CANNOT_HAVE_RESTRICTION_ON_EMPTY_GEO_TARGETING = 4; - - // Cannot simultaneously set sitelink field with final urls. - CANNOT_SET_WITH_FINAL_URLS = 5; - - // Must set field with final urls. - CANNOT_SET_WITHOUT_FINAL_URLS = 6; - - // Phone number for a call extension is invalid. - INVALID_PHONE_NUMBER = 7; - - // Phone number for a call extension is not supported for the given country - // code. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 8; - - // A carrier specific number in short format is not allowed for call - // extensions. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 9; - - // Premium rate numbers are not allowed for call extensions. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 10; - - // Phone number type for a call extension is not allowed. - // For example, personal number is not allowed for a call extension in - // most regions. - DISALLOWED_NUMBER_TYPE = 11; - - // Phone number for a call extension does not meet domestic format - // requirements. - INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 12; - - // Vanity phone numbers (i.e. those including letters) are not allowed for - // call extensions. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 13; - - // Call conversion action provided for a call extension is invalid. - INVALID_CALL_CONVERSION_ACTION = 14; - - // For a call extension, the customer is not on the allow-list for call - // tracking. - CUSTOMER_NOT_ON_ALLOWLIST_FOR_CALLTRACKING = 47; - - // Call tracking is not supported for the given country for a call - // extension. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 16; - - // Customer hasn't consented for call recording, which is required for - // creating/updating call feed items. Please see - // https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 17; - - // App id provided for an app extension is invalid. - INVALID_APP_ID = 18; - - // Quotation marks present in the review text for a review extension. - QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 19; - - // Hyphen character present in the review text for a review extension. - HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 20; - - // A denylisted review source name or url was provided for a review - // extension. - REVIEW_EXTENSION_SOURCE_INELIGIBLE = 21; - - // Review source name should not be found in the review text. - SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 22; - - // Inconsistent currency codes. - INCONSISTENT_CURRENCY_CODES = 23; - - // Price extension cannot have duplicated headers. - PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 24; - - // Price item cannot have duplicated header and description. - PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 25; - - // Price extension has too few items. - PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 26; - - // Price extension has too many items. - PRICE_EXTENSION_HAS_TOO_MANY_ITEMS = 27; - - // The input value is not currently supported. - UNSUPPORTED_VALUE = 28; - - // The input value is not currently supported in the selected language of an - // extension. - UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE = 29; - - // Unknown or unsupported device preference. - INVALID_DEVICE_PREFERENCE = 30; - - // Invalid feed item schedule end time (i.e., endHour = 24 and endMinute != - // 0). - INVALID_SCHEDULE_END = 31; - - // Date time zone does not match the account's time zone. - DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 32; - - // Invalid structured snippet header. - INVALID_SNIPPETS_HEADER = 33; - - // Cannot operate on removed feed item. - CANNOT_OPERATE_ON_REMOVED_FEED_ITEM = 34; - - // Phone number not supported when call tracking enabled for country. - PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 35; - - // Cannot set call_conversion_action while call_conversion_tracking_enabled - // is set to true. - CONFLICTING_CALL_CONVERSION_SETTINGS = 36; - - // The type of the input extension feed item doesn't match the existing - // extension feed item. - EXTENSION_TYPE_MISMATCH = 37; - - // The oneof field extension i.e. subtype of extension feed item is - // required. - EXTENSION_SUBTYPE_REQUIRED = 38; - - // The referenced feed item is not mapped to a supported extension type. - EXTENSION_TYPE_UNSUPPORTED = 39; - - // Cannot operate on a Feed with more than one active FeedMapping. - CANNOT_OPERATE_ON_FEED_WITH_MULTIPLE_MAPPINGS = 40; - - // Cannot operate on a Feed that has key attributes. - CANNOT_OPERATE_ON_FEED_WITH_KEY_ATTRIBUTES = 41; - - // Input price is not in a valid format. - INVALID_PRICE_FORMAT = 42; - - // The promotion time is invalid. - PROMOTION_INVALID_TIME = 43; - - // This field has too many decimal places specified. - TOO_MANY_DECIMAL_PLACES_SPECIFIED = 44; - - // Concrete sub type of ExtensionFeedItem is required for this operation. - CONCRETE_EXTENSION_TYPE_REQUIRED = 45; - - // Feed item schedule end time must be after start time. - SCHEDULE_END_NOT_AFTER_START = 46; - } - - -} diff --git a/google/ads/googleads/v6/errors/extension_setting_error.proto b/google/ads/googleads/v6/errors/extension_setting_error.proto deleted file mode 100644 index 84981abc8..000000000 --- a/google/ads/googleads/v6/errors/extension_setting_error.proto +++ /dev/null @@ -1,261 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionSettingErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing extension setting validation errors. - -// Container for enum describing validation errors of extension settings. -message ExtensionSettingErrorEnum { - // Enum describing possible extension setting errors. - enum ExtensionSettingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A platform restriction was provided without input extensions or existing - // extensions. - EXTENSIONS_REQUIRED = 2; - - // The provided feed type does not correspond to the provided extensions. - FEED_TYPE_EXTENSION_TYPE_MISMATCH = 3; - - // The provided feed type cannot be used. - INVALID_FEED_TYPE = 4; - - // The provided feed type cannot be used at the customer level. - INVALID_FEED_TYPE_FOR_CUSTOMER_EXTENSION_SETTING = 5; - - // Cannot change a feed item field on a CREATE operation. - CANNOT_CHANGE_FEED_ITEM_ON_CREATE = 6; - - // Cannot update an extension that is not already in this setting. - CANNOT_UPDATE_NEWLY_CREATED_EXTENSION = 7; - - // There is no existing AdGroupExtensionSetting for this type. - NO_EXISTING_AD_GROUP_EXTENSION_SETTING_FOR_TYPE = 8; - - // There is no existing CampaignExtensionSetting for this type. - NO_EXISTING_CAMPAIGN_EXTENSION_SETTING_FOR_TYPE = 9; - - // There is no existing CustomerExtensionSetting for this type. - NO_EXISTING_CUSTOMER_EXTENSION_SETTING_FOR_TYPE = 10; - - // The AdGroupExtensionSetting already exists. UPDATE should be used to - // modify the existing AdGroupExtensionSetting. - AD_GROUP_EXTENSION_SETTING_ALREADY_EXISTS = 11; - - // The CampaignExtensionSetting already exists. UPDATE should be used to - // modify the existing CampaignExtensionSetting. - CAMPAIGN_EXTENSION_SETTING_ALREADY_EXISTS = 12; - - // The CustomerExtensionSetting already exists. UPDATE should be used to - // modify the existing CustomerExtensionSetting. - CUSTOMER_EXTENSION_SETTING_ALREADY_EXISTS = 13; - - // An active ad group feed already exists for this place holder type. - AD_GROUP_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 14; - - // An active campaign feed already exists for this place holder type. - CAMPAIGN_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 15; - - // An active customer feed already exists for this place holder type. - CUSTOMER_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 16; - - // Value is not within the accepted range. - VALUE_OUT_OF_RANGE = 17; - - // Cannot simultaneously set specified field with final urls. - CANNOT_SET_FIELD_WITH_FINAL_URLS = 18; - - // Must set field with final urls. - FINAL_URLS_NOT_SET = 19; - - // Phone number for a call extension is invalid. - INVALID_PHONE_NUMBER = 20; - - // Phone number for a call extension is not supported for the given country - // code. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 21; - - // A carrier specific number in short format is not allowed for call - // extensions. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 22; - - // Premium rate numbers are not allowed for call extensions. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 23; - - // Phone number type for a call extension is not allowed. - DISALLOWED_NUMBER_TYPE = 24; - - // Phone number for a call extension does not meet domestic format - // requirements. - INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 25; - - // Vanity phone numbers (i.e. those including letters) are not allowed for - // call extensions. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 26; - - // Country code provided for a call extension is invalid. - INVALID_COUNTRY_CODE = 27; - - // Call conversion type id provided for a call extension is invalid. - INVALID_CALL_CONVERSION_TYPE_ID = 28; - - // For a call extension, the customer is not on the allow-list for call - // tracking. - CUSTOMER_NOT_IN_ALLOWLIST_FOR_CALLTRACKING = 69; - - // Call tracking is not supported for the given country for a call - // extension. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 30; - - // App id provided for an app extension is invalid. - INVALID_APP_ID = 31; - - // Quotation marks present in the review text for a review extension. - QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 32; - - // Hyphen character present in the review text for a review extension. - HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 33; - - // A blocked review source name or url was provided for a review - // extension. - REVIEW_EXTENSION_SOURCE_NOT_ELIGIBLE = 34; - - // Review source name should not be found in the review text. - SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 35; - - // Field must be set. - MISSING_FIELD = 36; - - // Inconsistent currency codes. - INCONSISTENT_CURRENCY_CODES = 37; - - // Price extension cannot have duplicated headers. - PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 38; - - // Price item cannot have duplicated header and description. - PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 39; - - // Price extension has too few items - PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 40; - - // Price extension has too many items - PRICE_EXTENSION_HAS_TOO_MANY_ITEMS = 41; - - // The input value is not currently supported. - UNSUPPORTED_VALUE = 42; - - // Unknown or unsupported device preference. - INVALID_DEVICE_PREFERENCE = 43; - - // Invalid feed item schedule end time (i.e., endHour = 24 and - // endMinute != 0). - INVALID_SCHEDULE_END = 45; - - // Date time zone does not match the account's time zone. - DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 47; - - // Overlapping feed item schedule times (e.g., 7-10AM and 8-11AM) are not - // allowed. - OVERLAPPING_SCHEDULES_NOT_ALLOWED = 48; - - // Feed item schedule end time must be after start time. - SCHEDULE_END_NOT_AFTER_START = 49; - - // There are too many feed item schedules per day. - TOO_MANY_SCHEDULES_PER_DAY = 50; - - // Cannot edit the same extension feed item more than once in the same - // request. - DUPLICATE_EXTENSION_FEED_ITEM_EDIT = 51; - - // Invalid structured snippet header. - INVALID_SNIPPETS_HEADER = 52; - - // Phone number with call tracking enabled is not supported for the - // specified country. - PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 53; - - // The targeted adgroup must belong to the targeted campaign. - CAMPAIGN_TARGETING_MISMATCH = 54; - - // The feed used by the ExtensionSetting is removed and cannot be operated - // on. Remove the ExtensionSetting to allow a new one to be created using - // an active feed. - CANNOT_OPERATE_ON_REMOVED_FEED = 55; - - // The ExtensionFeedItem type is required for this operation. - EXTENSION_TYPE_REQUIRED = 56; - - // The matching function that links the extension feed to the customer, - // campaign, or ad group is not compatible with the ExtensionSetting - // services. - INCOMPATIBLE_UNDERLYING_MATCHING_FUNCTION = 57; - - // Start date must be before end date. - START_DATE_AFTER_END_DATE = 58; - - // Input price is not in a valid format. - INVALID_PRICE_FORMAT = 59; - - // The promotion time is invalid. - PROMOTION_INVALID_TIME = 60; - - // Cannot set both percent discount and money discount fields. - PROMOTION_CANNOT_SET_PERCENT_DISCOUNT_AND_MONEY_DISCOUNT = 61; - - // Cannot set both promotion code and orders over amount fields. - PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 62; - - // This field has too many decimal places specified. - TOO_MANY_DECIMAL_PLACES_SPECIFIED = 63; - - // The language code is not valid. - INVALID_LANGUAGE_CODE = 64; - - // The language is not supported. - UNSUPPORTED_LANGUAGE = 65; - - // Customer hasn't consented for call recording, which is required for - // adding/updating call extensions. Please see - // https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 66; - - // The UPDATE operation does not specify any fields other than the resource - // name in the update mask. - EXTENSION_SETTING_UPDATE_IS_A_NOOP = 67; - - // The extension contains text which has been prohibited on policy grounds. - DISALLOWED_TEXT = 68; - } - - -} diff --git a/google/ads/googleads/v6/errors/feed_attribute_reference_error.proto b/google/ads/googleads/v6/errors/feed_attribute_reference_error.proto deleted file mode 100644 index e19aa8982..000000000 --- a/google/ads/googleads/v6/errors/feed_attribute_reference_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedAttributeReferenceErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing feed attribute reference errors. - -// Container for enum describing possible feed attribute reference errors. -message FeedAttributeReferenceErrorEnum { - // Enum describing possible feed attribute reference errors. - enum FeedAttributeReferenceError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A feed referenced by ID has been removed. - CANNOT_REFERENCE_REMOVED_FEED = 2; - - // There is no enabled feed with the given name. - INVALID_FEED_NAME = 3; - - // There is no feed attribute in an enabled feed with the given name. - INVALID_FEED_ATTRIBUTE_NAME = 4; - } - - -} diff --git a/google/ads/googleads/v6/errors/feed_error.proto b/google/ads/googleads/v6/errors/feed_error.proto deleted file mode 100644 index b0b8041ef..000000000 --- a/google/ads/googleads/v6/errors/feed_error.proto +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing feed errors. - -// Container for enum describing possible feed errors. -message FeedErrorEnum { - // Enum describing possible feed errors. - enum FeedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The names of the FeedAttributes must be unique. - ATTRIBUTE_NAMES_NOT_UNIQUE = 2; - - // The attribute list must be an exact copy of the existing list if the - // attribute ID's are present. - ATTRIBUTES_DO_NOT_MATCH_EXISTING_ATTRIBUTES = 3; - - // Cannot specify USER origin for a system generated feed. - CANNOT_SPECIFY_USER_ORIGIN_FOR_SYSTEM_FEED = 4; - - // Cannot specify GOOGLE origin for a non-system generated feed. - CANNOT_SPECIFY_GOOGLE_ORIGIN_FOR_NON_SYSTEM_FEED = 5; - - // Cannot specify feed attributes for system feed. - CANNOT_SPECIFY_FEED_ATTRIBUTES_FOR_SYSTEM_FEED = 6; - - // Cannot update FeedAttributes on feed with origin GOOGLE. - CANNOT_UPDATE_FEED_ATTRIBUTES_WITH_ORIGIN_GOOGLE = 7; - - // The given ID refers to a removed Feed. Removed Feeds are immutable. - FEED_REMOVED = 8; - - // The origin of the feed is not valid for the client. - INVALID_ORIGIN_VALUE = 9; - - // A user can only create and modify feeds with USER origin. - FEED_ORIGIN_IS_NOT_USER = 10; - - // Invalid auth token for the given email. - INVALID_AUTH_TOKEN_FOR_EMAIL = 11; - - // Invalid email specified. - INVALID_EMAIL = 12; - - // Feed name matches that of another active Feed. - DUPLICATE_FEED_NAME = 13; - - // Name of feed is not allowed. - INVALID_FEED_NAME = 14; - - // Missing OAuthInfo. - MISSING_OAUTH_INFO = 15; - - // New FeedAttributes must not affect the unique key. - NEW_ATTRIBUTE_CANNOT_BE_PART_OF_UNIQUE_KEY = 16; - - // Too many FeedAttributes for a Feed. - TOO_MANY_ATTRIBUTES = 17; - - // The business account is not valid. - INVALID_BUSINESS_ACCOUNT = 18; - - // Business account cannot access Google My Business account. - BUSINESS_ACCOUNT_CANNOT_ACCESS_LOCATION_ACCOUNT = 19; - - // Invalid chain ID provided for affiliate location feed. - INVALID_AFFILIATE_CHAIN_ID = 20; - - // There is already a feed with the given system feed generation data. - DUPLICATE_SYSTEM_FEED = 21; - - // An error occurred accessing GMB account. - GMB_ACCESS_ERROR = 22; - - // A customer cannot have both LOCATION and AFFILIATE_LOCATION feeds. - CANNOT_HAVE_LOCATION_AND_AFFILIATE_LOCATION_FEEDS = 23; - } - - -} diff --git a/google/ads/googleads/v6/errors/feed_item_error.proto b/google/ads/googleads/v6/errors/feed_item_error.proto deleted file mode 100644 index f5cfdb992..000000000 --- a/google/ads/googleads/v6/errors/feed_item_error.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing feed item errors. - -// Container for enum describing possible feed item errors. -message FeedItemErrorEnum { - // Enum describing possible feed item errors. - enum FeedItemError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot convert the feed attribute value from string to its real type. - CANNOT_CONVERT_ATTRIBUTE_VALUE_FROM_STRING = 2; - - // Cannot operate on removed feed item. - CANNOT_OPERATE_ON_REMOVED_FEED_ITEM = 3; - - // Date time zone does not match the account's time zone. - DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 4; - - // Feed item with the key attributes could not be found. - KEY_ATTRIBUTES_NOT_FOUND = 5; - - // Url feed attribute value is not valid. - INVALID_URL = 6; - - // Some key attributes are missing. - MISSING_KEY_ATTRIBUTES = 7; - - // Feed item has same key attributes as another feed item. - KEY_ATTRIBUTES_NOT_UNIQUE = 8; - - // Cannot modify key attributes on an existing feed item. - CANNOT_MODIFY_KEY_ATTRIBUTE_VALUE = 9; - - // The feed attribute value is too large. - SIZE_TOO_LARGE_FOR_MULTI_VALUE_ATTRIBUTE = 10; - } - - -} diff --git a/google/ads/googleads/v6/errors/feed_item_set_error.proto b/google/ads/googleads/v6/errors/feed_item_set_error.proto deleted file mode 100644 index 238f69c55..000000000 --- a/google/ads/googleads/v6/errors/feed_item_set_error.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemSetErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing feed item set errors. - -// Container for enum describing possible feed item set errors. -message FeedItemSetErrorEnum { - // Enum describing possible feed item set errors. - enum FeedItemSetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The given ID refers to a removed FeedItemSet. - FEED_ITEM_SET_REMOVED = 2; - - // The dynamic filter of a feed item set cannot be cleared on UPDATE if it - // exists. A set is either static or dynamic once added, and that cannot - // change. - CANNOT_CLEAR_DYNAMIC_FILTER = 3; - - // The dynamic filter of a feed item set cannot be created on UPDATE if it - // does not exist. A set is either static or dynamic once added, and that - // cannot change. - CANNOT_CREATE_DYNAMIC_FILTER = 4; - - // FeedItemSets can only be made for location or affiliate location feeds. - INVALID_FEED_TYPE = 5; - - // FeedItemSets duplicate name. Name should be unique within an account. - DUPLICATE_NAME = 6; - - // The feed type of the parent Feed is not compatible with the type of - // dynamic filter being set. For example, you can only set - // dynamic_location_set_filter for LOCATION feed item sets. - WRONG_DYNAMIC_FILTER_FOR_FEED_TYPE = 7; - } - - -} diff --git a/google/ads/googleads/v6/errors/feed_item_set_link_error.proto b/google/ads/googleads/v6/errors/feed_item_set_link_error.proto deleted file mode 100644 index 0b835f14b..000000000 --- a/google/ads/googleads/v6/errors/feed_item_set_link_error.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemSetLinkErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing feed item set link errors. - -// Container for enum describing possible feed item set link errors. -message FeedItemSetLinkErrorEnum { - // Enum describing possible feed item set link errors. - enum FeedItemSetLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The feed IDs of the FeedItemSet and FeedItem do not match. Only FeedItems - // in a given Feed can be linked to a FeedItemSet in that Feed. - FEED_ID_MISMATCH = 2; - - // Cannot add or remove links to a dynamic set. - NO_MUTATE_ALLOWED_FOR_DYNAMIC_SET = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/feed_item_target_error.proto b/google/ads/googleads/v6/errors/feed_item_target_error.proto deleted file mode 100644 index 16f37d8b7..000000000 --- a/google/ads/googleads/v6/errors/feed_item_target_error.proto +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing feed item target errors. - -// Container for enum describing possible feed item target errors. -message FeedItemTargetErrorEnum { - // Enum describing possible feed item target errors. - enum FeedItemTargetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // On CREATE, the FeedItemTarget must have a populated field in the oneof - // target. - MUST_SET_TARGET_ONEOF_ON_CREATE = 2; - - // The specified feed item target already exists, so it cannot be added. - FEED_ITEM_TARGET_ALREADY_EXISTS = 3; - - // The schedules for a given feed item cannot overlap. - FEED_ITEM_SCHEDULES_CANNOT_OVERLAP = 4; - - // Too many targets of a given type were added for a single feed item. - TARGET_LIMIT_EXCEEDED_FOR_GIVEN_TYPE = 5; - - // Too many AdSchedules are enabled for the feed item for the given day. - TOO_MANY_SCHEDULES_PER_DAY = 6; - - // A feed item may either have an enabled campaign target or an enabled ad - // group target. - CANNOT_HAVE_ENABLED_CAMPAIGN_AND_ENABLED_AD_GROUP_TARGETS = 7; - - // Duplicate ad schedules aren't allowed. - DUPLICATE_AD_SCHEDULE = 8; - - // Duplicate keywords aren't allowed. - DUPLICATE_KEYWORD = 9; - } - - -} diff --git a/google/ads/googleads/v6/errors/feed_item_validation_error.proto b/google/ads/googleads/v6/errors/feed_item_validation_error.proto deleted file mode 100644 index 75751caee..000000000 --- a/google/ads/googleads/v6/errors/feed_item_validation_error.proto +++ /dev/null @@ -1,377 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemValidationErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing feed item validation errors. - -// Container for enum describing possible validation errors of a feed item. -message FeedItemValidationErrorEnum { - // The possible validation errors of a feed item. - enum FeedItemValidationError { - // No value has been specified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // String is too short. - STRING_TOO_SHORT = 2; - - // String is too long. - STRING_TOO_LONG = 3; - - // Value is not provided. - VALUE_NOT_SPECIFIED = 4; - - // Phone number format is invalid for region. - INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 5; - - // String does not represent a phone number. - INVALID_PHONE_NUMBER = 6; - - // Phone number format is not compatible with country code. - PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 7; - - // Premium rate number is not allowed. - PREMIUM_RATE_NUMBER_NOT_ALLOWED = 8; - - // Phone number type is not allowed. - DISALLOWED_NUMBER_TYPE = 9; - - // Specified value is outside of the valid range. - VALUE_OUT_OF_RANGE = 10; - - // Call tracking is not supported in the selected country. - CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 11; - - // Customer is not on the allow-list for call tracking. - CUSTOMER_NOT_IN_ALLOWLIST_FOR_CALLTRACKING = 99; - - // Country code is invalid. - INVALID_COUNTRY_CODE = 13; - - // The specified mobile app id is invalid. - INVALID_APP_ID = 14; - - // Some required field attributes are missing. - MISSING_ATTRIBUTES_FOR_FIELDS = 15; - - // Invalid email button type for email extension. - INVALID_TYPE_ID = 16; - - // Email address is invalid. - INVALID_EMAIL_ADDRESS = 17; - - // The HTTPS URL in email extension is invalid. - INVALID_HTTPS_URL = 18; - - // Delivery address is missing from email extension. - MISSING_DELIVERY_ADDRESS = 19; - - // FeedItem scheduling start date comes after end date. - START_DATE_AFTER_END_DATE = 20; - - // FeedItem scheduling start time is missing. - MISSING_FEED_ITEM_START_TIME = 21; - - // FeedItem scheduling end time is missing. - MISSING_FEED_ITEM_END_TIME = 22; - - // Cannot compute system attributes on a FeedItem that has no FeedItemId. - MISSING_FEED_ITEM_ID = 23; - - // Call extension vanity phone numbers are not supported. - VANITY_PHONE_NUMBER_NOT_ALLOWED = 24; - - // Invalid review text. - INVALID_REVIEW_EXTENSION_SNIPPET = 25; - - // Invalid format for numeric value in ad parameter. - INVALID_NUMBER_FORMAT = 26; - - // Invalid format for date value in ad parameter. - INVALID_DATE_FORMAT = 27; - - // Invalid format for price value in ad parameter. - INVALID_PRICE_FORMAT = 28; - - // Unrecognized type given for value in ad parameter. - UNKNOWN_PLACEHOLDER_FIELD = 29; - - // Enhanced sitelinks must have both description lines specified. - MISSING_ENHANCED_SITELINK_DESCRIPTION_LINE = 30; - - // Review source is ineligible. - REVIEW_EXTENSION_SOURCE_INELIGIBLE = 31; - - // Review text cannot contain hyphens or dashes. - HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 32; - - // Review text cannot contain double quote characters. - DOUBLE_QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 33; - - // Review text cannot contain quote characters. - QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 34; - - // Parameters are encoded in the wrong format. - INVALID_FORM_ENCODED_PARAMS = 35; - - // URL parameter name must contain only letters, numbers, underscores, and - // dashes. - INVALID_URL_PARAMETER_NAME = 36; - - // Cannot find address location. - NO_GEOCODING_RESULT = 37; - - // Review extension text has source name. - SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 38; - - // Some phone numbers can be shorter than usual. Some of these short numbers - // are carrier-specific, and we disallow those in ad extensions because they - // will not be available to all users. - CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 39; - - // Triggered when a request references a placeholder field id that does not - // exist. - INVALID_PLACEHOLDER_FIELD_ID = 40; - - // URL contains invalid ValueTrack tags or format. - INVALID_URL_TAG = 41; - - // Provided list exceeds acceptable size. - LIST_TOO_LONG = 42; - - // Certain combinations of attributes aren't allowed to be specified in the - // same feed item. - INVALID_ATTRIBUTES_COMBINATION = 43; - - // An attribute has the same value repeatedly. - DUPLICATE_VALUES = 44; - - // Advertisers can link a conversion action with a phone number to indicate - // that sufficiently long calls forwarded to that phone number should be - // counted as conversions of the specified type. This is an error message - // indicating that the conversion action specified is invalid (e.g., the - // conversion action does not exist within the appropriate Google Ads - // account, or it is a type of conversion not appropriate to phone call - // conversions). - INVALID_CALL_CONVERSION_ACTION_ID = 45; - - // Tracking template requires final url to be set. - CANNOT_SET_WITHOUT_FINAL_URLS = 46; - - // An app id was provided that doesn't exist in the given app store. - APP_ID_DOESNT_EXIST_IN_APP_STORE = 47; - - // Invalid U2 final url. - INVALID_FINAL_URL = 48; - - // Invalid U2 tracking url. - INVALID_TRACKING_URL = 49; - - // Final URL should start from App download URL. - INVALID_FINAL_URL_FOR_APP_DOWNLOAD_URL = 50; - - // List provided is too short. - LIST_TOO_SHORT = 51; - - // User Action field has invalid value. - INVALID_USER_ACTION = 52; - - // Type field has invalid value. - INVALID_TYPE_NAME = 53; - - // Change status for event is invalid. - INVALID_EVENT_CHANGE_STATUS = 54; - - // The header of a structured snippets extension is not one of the valid - // headers. - INVALID_SNIPPETS_HEADER = 55; - - // Android app link is not formatted correctly - INVALID_ANDROID_APP_LINK = 56; - - // Phone number incompatible with call tracking for country. - NUMBER_TYPE_WITH_CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 57; - - // The input is identical to a reserved keyword - RESERVED_KEYWORD_OTHER = 58; - - // Each option label in the message extension must be unique. - DUPLICATE_OPTION_LABELS = 59; - - // Each option prefill in the message extension must be unique. - DUPLICATE_OPTION_PREFILLS = 60; - - // In message extensions, the number of optional labels and optional - // prefills must be the same. - UNEQUAL_LIST_LENGTHS = 61; - - // All currency codes in an ad extension must be the same. - INCONSISTENT_CURRENCY_CODES = 62; - - // Headers in price extension are not unique. - PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 63; - - // Header and description in an item are the same. - ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 64; - - // Price extension has too few items. - PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 65; - - // The given value is not supported. - UNSUPPORTED_VALUE = 66; - - // Invalid final mobile url. - INVALID_FINAL_MOBILE_URL = 67; - - // The given string value of Label contains invalid characters - INVALID_KEYWORDLESS_AD_RULE_LABEL = 68; - - // The given URL contains value track parameters. - VALUE_TRACK_PARAMETER_NOT_SUPPORTED = 69; - - // The given value is not supported in the selected language of an - // extension. - UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE = 70; - - // The iOS app link is not formatted correctly. - INVALID_IOS_APP_LINK = 71; - - // iOS app link or iOS app store id is missing. - MISSING_IOS_APP_LINK_OR_IOS_APP_STORE_ID = 72; - - // Promotion time is invalid. - PROMOTION_INVALID_TIME = 73; - - // Both the percent off and money amount off fields are set. - PROMOTION_CANNOT_SET_PERCENT_OFF_AND_MONEY_AMOUNT_OFF = 74; - - // Both the promotion code and orders over amount fields are set. - PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 75; - - // Too many decimal places are specified. - TOO_MANY_DECIMAL_PLACES_SPECIFIED = 76; - - // Ad Customizers are present and not allowed. - AD_CUSTOMIZERS_NOT_ALLOWED = 77; - - // Language code is not valid. - INVALID_LANGUAGE_CODE = 78; - - // Language is not supported. - UNSUPPORTED_LANGUAGE = 79; - - // IF Function is present and not allowed. - IF_FUNCTION_NOT_ALLOWED = 80; - - // Final url suffix is not valid. - INVALID_FINAL_URL_SUFFIX = 81; - - // Final url suffix contains an invalid tag. - INVALID_TAG_IN_FINAL_URL_SUFFIX = 82; - - // Final url suffix is formatted incorrectly. - INVALID_FINAL_URL_SUFFIX_FORMAT = 83; - - // Consent for call recording, which is required for the use of call - // extensions, was not provided by the advertiser. Please see - // https://support.google.com/google-ads/answer/7412639. - CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 84; - - // Multiple message delivery options are set. - ONLY_ONE_DELIVERY_OPTION_IS_ALLOWED = 85; - - // No message delivery option is set. - NO_DELIVERY_OPTION_IS_SET = 86; - - // String value of conversion reporting state field is not valid. - INVALID_CONVERSION_REPORTING_STATE = 87; - - // Image size is not right. - IMAGE_SIZE_WRONG = 88; - - // Email delivery is not supported in the country specified in the country - // code field. - EMAIL_DELIVERY_NOT_AVAILABLE_IN_COUNTRY = 89; - - // Auto reply is not supported in the country specified in the country code - // field. - AUTO_REPLY_NOT_AVAILABLE_IN_COUNTRY = 90; - - // Invalid value specified for latitude. - INVALID_LATITUDE_VALUE = 91; - - // Invalid value specified for longitude. - INVALID_LONGITUDE_VALUE = 92; - - // Too many label fields provided. - TOO_MANY_LABELS = 93; - - // Invalid image url. - INVALID_IMAGE_URL = 94; - - // Latitude value is missing. - MISSING_LATITUDE_VALUE = 95; - - // Longitude value is missing. - MISSING_LONGITUDE_VALUE = 96; - - // Unable to find address. - ADDRESS_NOT_FOUND = 97; - - // Cannot target provided address. - ADDRESS_NOT_TARGETABLE = 98; - - // The specified asset ID does not exist. - INVALID_ASSET_ID = 100; - - // The asset type cannot be set for the field. - INCOMPATIBLE_ASSET_TYPE = 101; - - // The image has unexpected size. - IMAGE_ERROR_UNEXPECTED_SIZE = 102; - - // The image aspect ratio is not allowed. - IMAGE_ERROR_ASPECT_RATIO_NOT_ALLOWED = 103; - - // The image file is too large. - IMAGE_ERROR_FILE_TOO_LARGE = 104; - - // The image format is unsupported. - IMAGE_ERROR_FORMAT_NOT_ALLOWED = 105; - - // Image violates constraints without more details. - IMAGE_ERROR_CONSTRAINTS_VIOLATED = 106; - - // An error occurred when validating image. - IMAGE_ERROR_SERVER_ERROR = 107; - } - - -} diff --git a/google/ads/googleads/v6/errors/feed_mapping_error.proto b/google/ads/googleads/v6/errors/feed_mapping_error.proto deleted file mode 100644 index b4b353bac..000000000 --- a/google/ads/googleads/v6/errors/feed_mapping_error.proto +++ /dev/null @@ -1,100 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing feed item errors. - -// Container for enum describing possible feed item errors. -message FeedMappingErrorEnum { - // Enum describing possible feed item errors. - enum FeedMappingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The given placeholder field does not exist. - INVALID_PLACEHOLDER_FIELD = 2; - - // The given criterion field does not exist. - INVALID_CRITERION_FIELD = 3; - - // The given placeholder type does not exist. - INVALID_PLACEHOLDER_TYPE = 4; - - // The given criterion type does not exist. - INVALID_CRITERION_TYPE = 5; - - // A feed mapping must contain at least one attribute field mapping. - NO_ATTRIBUTE_FIELD_MAPPINGS = 7; - - // The type of the feed attribute referenced in the attribute field mapping - // must match the type of the placeholder field. - FEED_ATTRIBUTE_TYPE_MISMATCH = 8; - - // A feed mapping for a system generated feed cannot be operated on. - CANNOT_OPERATE_ON_MAPPINGS_FOR_SYSTEM_GENERATED_FEED = 9; - - // Only one feed mapping for a placeholder type is allowed per feed or - // customer (depending on the placeholder type). - MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_TYPE = 10; - - // Only one feed mapping for a criterion type is allowed per customer. - MULTIPLE_MAPPINGS_FOR_CRITERION_TYPE = 11; - - // Only one feed attribute mapping for a placeholder field is allowed - // (depending on the placeholder type). - MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_FIELD = 12; - - // Only one feed attribute mapping for a criterion field is allowed - // (depending on the criterion type). - MULTIPLE_MAPPINGS_FOR_CRITERION_FIELD = 13; - - // This feed mapping may not contain any explicit attribute field mappings. - UNEXPECTED_ATTRIBUTE_FIELD_MAPPINGS = 14; - - // Location placeholder feed mappings can only be created for Places feeds. - LOCATION_PLACEHOLDER_ONLY_FOR_PLACES_FEEDS = 15; - - // Mappings for typed feeds cannot be modified. - CANNOT_MODIFY_MAPPINGS_FOR_TYPED_FEED = 16; - - // The given placeholder type can only be mapped to system generated feeds. - INVALID_PLACEHOLDER_TYPE_FOR_NON_SYSTEM_GENERATED_FEED = 17; - - // The given placeholder type cannot be mapped to a system generated feed - // with the given type. - INVALID_PLACEHOLDER_TYPE_FOR_SYSTEM_GENERATED_FEED_TYPE = 18; - - // The "field" oneof was not set in an AttributeFieldMapping. - ATTRIBUTE_FIELD_MAPPING_MISSING_FIELD = 19; - } - - -} diff --git a/google/ads/googleads/v6/errors/field_error.proto b/google/ads/googleads/v6/errors/field_error.proto deleted file mode 100644 index b554571d2..000000000 --- a/google/ads/googleads/v6/errors/field_error.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FieldErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing field errors. - -// Container for enum describing possible field errors. -message FieldErrorEnum { - // Enum describing possible field errors. - enum FieldError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The required field was not present. - REQUIRED = 2; - - // The field attempted to be mutated is immutable. - IMMUTABLE_FIELD = 3; - - // The field's value is invalid. - INVALID_VALUE = 4; - - // The field cannot be set. - VALUE_MUST_BE_UNSET = 5; - - // The required repeated field was empty. - REQUIRED_NONEMPTY_LIST = 6; - - // The field cannot be cleared. - FIELD_CANNOT_BE_CLEARED = 7; - - // The field's value is on a deny-list for this field. - BLOCKED_VALUE = 9; - } - - -} diff --git a/google/ads/googleads/v6/errors/field_mask_error.proto b/google/ads/googleads/v6/errors/field_mask_error.proto deleted file mode 100644 index de3adf66c..000000000 --- a/google/ads/googleads/v6/errors/field_mask_error.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FieldMaskErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing field mask errors. - -// Container for enum describing possible field mask errors. -message FieldMaskErrorEnum { - // Enum describing possible field mask errors. - enum FieldMaskError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The field mask must be provided for update operations. - FIELD_MASK_MISSING = 5; - - // The field mask must be empty for create and remove operations. - FIELD_MASK_NOT_ALLOWED = 4; - - // The field mask contained an invalid field. - FIELD_NOT_FOUND = 2; - - // The field mask updated a field with subfields. Fields with subfields may - // be cleared, but not updated. To fix this, the field mask should select - // all the subfields of the invalid field. - FIELD_HAS_SUBFIELDS = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/function_error.proto b/google/ads/googleads/v6/errors/function_error.proto deleted file mode 100644 index 9af76ae7b..000000000 --- a/google/ads/googleads/v6/errors/function_error.proto +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FunctionErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing function errors. - -// Container for enum describing possible function errors. -message FunctionErrorEnum { - // Enum describing possible function errors. - enum FunctionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The format of the function is not recognized as a supported function - // format. - INVALID_FUNCTION_FORMAT = 2; - - // Operand data types do not match. - DATA_TYPE_MISMATCH = 3; - - // The operands cannot be used together in a conjunction. - INVALID_CONJUNCTION_OPERANDS = 4; - - // Invalid numer of Operands. - INVALID_NUMBER_OF_OPERANDS = 5; - - // Operand Type not supported. - INVALID_OPERAND_TYPE = 6; - - // Operator not supported. - INVALID_OPERATOR = 7; - - // Request context type not supported. - INVALID_REQUEST_CONTEXT_TYPE = 8; - - // The matching function is not allowed for call placeholders - INVALID_FUNCTION_FOR_CALL_PLACEHOLDER = 9; - - // The matching function is not allowed for the specified placeholder - INVALID_FUNCTION_FOR_PLACEHOLDER = 10; - - // Invalid operand. - INVALID_OPERAND = 11; - - // Missing value for the constant operand. - MISSING_CONSTANT_OPERAND_VALUE = 12; - - // The value of the constant operand is invalid. - INVALID_CONSTANT_OPERAND_VALUE = 13; - - // Invalid function nesting. - INVALID_NESTING = 14; - - // The Feed ID was different from another Feed ID in the same function. - MULTIPLE_FEED_IDS_NOT_SUPPORTED = 15; - - // The matching function is invalid for use with a feed with a fixed schema. - INVALID_FUNCTION_FOR_FEED_WITH_FIXED_SCHEMA = 16; - - // Invalid attribute name. - INVALID_ATTRIBUTE_NAME = 17; - } - - -} diff --git a/google/ads/googleads/v6/errors/function_parsing_error.proto b/google/ads/googleads/v6/errors/function_parsing_error.proto deleted file mode 100644 index 3269d1cbe..000000000 --- a/google/ads/googleads/v6/errors/function_parsing_error.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "FunctionParsingErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing function parsing errors. - -// Container for enum describing possible function parsing errors. -message FunctionParsingErrorEnum { - // Enum describing possible function parsing errors. - enum FunctionParsingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Unexpected end of function string. - NO_MORE_INPUT = 2; - - // Could not find an expected character. - EXPECTED_CHARACTER = 3; - - // Unexpected separator character. - UNEXPECTED_SEPARATOR = 4; - - // Unmatched left bracket or parenthesis. - UNMATCHED_LEFT_BRACKET = 5; - - // Unmatched right bracket or parenthesis. - UNMATCHED_RIGHT_BRACKET = 6; - - // Functions are nested too deeply. - TOO_MANY_NESTED_FUNCTIONS = 7; - - // Missing right-hand-side operand. - MISSING_RIGHT_HAND_OPERAND = 8; - - // Invalid operator/function name. - INVALID_OPERATOR_NAME = 9; - - // Feed attribute operand's argument is not an integer. - FEED_ATTRIBUTE_OPERAND_ARGUMENT_NOT_INTEGER = 10; - - // Missing function operands. - NO_OPERANDS = 11; - - // Function had too many operands. - TOO_MANY_OPERANDS = 12; - } - - -} diff --git a/google/ads/googleads/v6/errors/geo_target_constant_suggestion_error.proto b/google/ads/googleads/v6/errors/geo_target_constant_suggestion_error.proto deleted file mode 100644 index d336856bb..000000000 --- a/google/ads/googleads/v6/errors/geo_target_constant_suggestion_error.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantSuggestionErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Container for enum describing possible geo target constant suggestion errors. -message GeoTargetConstantSuggestionErrorEnum { - // Enum describing possible geo target constant suggestion errors. - enum GeoTargetConstantSuggestionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A location name cannot be greater than 300 characters. - LOCATION_NAME_SIZE_LIMIT = 2; - - // At most 25 location names can be specified in a SuggestGeoTargetConstants - // method. - LOCATION_NAME_LIMIT = 3; - - // The country code is invalid. - INVALID_COUNTRY_CODE = 4; - - // Geo target constant resource names or location names must be provided in - // the request. - REQUEST_PARAMETERS_UNSET = 5; - } - - -} diff --git a/google/ads/googleads/v6/errors/header_error.proto b/google/ads/googleads/v6/errors/header_error.proto deleted file mode 100644 index b70e7511c..000000000 --- a/google/ads/googleads/v6/errors/header_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "HeaderErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing header errors. - -// Container for enum describing possible header errors. -message HeaderErrorEnum { - // Enum describing possible header errors. - enum HeaderError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The login customer id could not be validated. - INVALID_LOGIN_CUSTOMER_ID = 3; - - // The linked customer id could not be validated. - INVALID_LINKED_CUSTOMER_ID = 7; - } - - -} diff --git a/google/ads/googleads/v6/errors/id_error.proto b/google/ads/googleads/v6/errors/id_error.proto deleted file mode 100644 index 002c137c7..000000000 --- a/google/ads/googleads/v6/errors/id_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "IdErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing id errors. - -// Container for enum describing possible id errors. -message IdErrorEnum { - // Enum describing possible id errors. - enum IdError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Id not found - NOT_FOUND = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/image_error.proto b/google/ads/googleads/v6/errors/image_error.proto deleted file mode 100644 index 8ce7f361e..000000000 --- a/google/ads/googleads/v6/errors/image_error.proto +++ /dev/null @@ -1,164 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ImageErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing image errors. - -// Container for enum describing possible image errors. -message ImageErrorEnum { - // Enum describing possible image errors. - enum ImageError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The image is not valid. - INVALID_IMAGE = 2; - - // The image could not be stored. - STORAGE_ERROR = 3; - - // There was a problem with the request. - BAD_REQUEST = 4; - - // The image is not of legal dimensions. - UNEXPECTED_SIZE = 5; - - // Animated image are not permitted. - ANIMATED_NOT_ALLOWED = 6; - - // Animation is too long. - ANIMATION_TOO_LONG = 7; - - // There was an error on the server. - SERVER_ERROR = 8; - - // Image cannot be in CMYK color format. - CMYK_JPEG_NOT_ALLOWED = 9; - - // Flash images are not permitted. - FLASH_NOT_ALLOWED = 10; - - // Flash images must support clickTag. - FLASH_WITHOUT_CLICKTAG = 11; - - // A flash error has occurred after fixing the click tag. - FLASH_ERROR_AFTER_FIXING_CLICK_TAG = 12; - - // Unacceptable visual effects. - ANIMATED_VISUAL_EFFECT = 13; - - // There was a problem with the flash image. - FLASH_ERROR = 14; - - // Incorrect image layout. - LAYOUT_PROBLEM = 15; - - // There was a problem reading the image file. - PROBLEM_READING_IMAGE_FILE = 16; - - // There was an error storing the image. - ERROR_STORING_IMAGE = 17; - - // The aspect ratio of the image is not allowed. - ASPECT_RATIO_NOT_ALLOWED = 18; - - // Flash cannot have network objects. - FLASH_HAS_NETWORK_OBJECTS = 19; - - // Flash cannot have network methods. - FLASH_HAS_NETWORK_METHODS = 20; - - // Flash cannot have a Url. - FLASH_HAS_URL = 21; - - // Flash cannot use mouse tracking. - FLASH_HAS_MOUSE_TRACKING = 22; - - // Flash cannot have a random number. - FLASH_HAS_RANDOM_NUM = 23; - - // Ad click target cannot be '_self'. - FLASH_SELF_TARGETS = 24; - - // GetUrl method should only use '_blank'. - FLASH_BAD_GETURL_TARGET = 25; - - // Flash version is not supported. - FLASH_VERSION_NOT_SUPPORTED = 26; - - // Flash movies need to have hard coded click URL or clickTAG - FLASH_WITHOUT_HARD_CODED_CLICK_URL = 27; - - // Uploaded flash file is corrupted. - INVALID_FLASH_FILE = 28; - - // Uploaded flash file can be parsed, but the click tag can not be fixed - // properly. - FAILED_TO_FIX_CLICK_TAG_IN_FLASH = 29; - - // Flash movie accesses network resources - FLASH_ACCESSES_NETWORK_RESOURCES = 30; - - // Flash movie attempts to call external javascript code - FLASH_EXTERNAL_JS_CALL = 31; - - // Flash movie attempts to call flash system commands - FLASH_EXTERNAL_FS_CALL = 32; - - // Image file is too large. - FILE_TOO_LARGE = 33; - - // Image data is too large. - IMAGE_DATA_TOO_LARGE = 34; - - // Error while processing the image. - IMAGE_PROCESSING_ERROR = 35; - - // Image is too small. - IMAGE_TOO_SMALL = 36; - - // Input was invalid. - INVALID_INPUT = 37; - - // There was a problem reading the image file. - PROBLEM_READING_FILE = 38; - - // Image constraints are violated, but details like ASPECT_RATIO_NOT_ALLOWED - // can't be provided. This happens when asset spec contains more than one - // constraint and different criteria of different constraints are violated. - IMAGE_CONSTRAINTS_VIOLATED = 39; - - // Image format is not allowed. - FORMAT_NOT_ALLOWED = 40; - } - - -} diff --git a/google/ads/googleads/v6/errors/internal_error.proto b/google/ads/googleads/v6/errors/internal_error.proto deleted file mode 100644 index e1608ea04..000000000 --- a/google/ads/googleads/v6/errors/internal_error.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "InternalErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing internal errors. - -// Container for enum describing possible internal errors. -message InternalErrorEnum { - // Enum describing possible internal errors. - enum InternalError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Google Ads API encountered unexpected internal error. - INTERNAL_ERROR = 2; - - // The intended error code doesn't exist in specified API version. It will - // be released in a future API version. - ERROR_CODE_NOT_PUBLISHED = 3; - - // Google Ads API encountered an unexpected transient error. The user - // should retry their request in these cases. - TRANSIENT_ERROR = 4; - - // The request took longer than a deadline. - DEADLINE_EXCEEDED = 5; - } - - -} diff --git a/google/ads/googleads/v6/errors/invoice_error.proto b/google/ads/googleads/v6/errors/invoice_error.proto deleted file mode 100644 index ada7b141a..000000000 --- a/google/ads/googleads/v6/errors/invoice_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing invoice errors. - -// Container for enum describing possible invoice errors. -message InvoiceErrorEnum { - // Enum describing possible invoice errors. - enum InvoiceError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot request invoices issued before 2019-01-01. - YEAR_MONTH_TOO_OLD = 2; - - // Cannot request invoices for customer who doesn't receive invoices. - NOT_INVOICED_CUSTOMER = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/keyword_plan_ad_group_error.proto b/google/ads/googleads/v6/errors/keyword_plan_ad_group_error.proto deleted file mode 100644 index e7fe99ac0..000000000 --- a/google/ads/googleads/v6/errors/keyword_plan_ad_group_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing errors from applying a keyword plan ad group. - -// Container for enum describing possible errors from applying a keyword plan -// ad group. -message KeywordPlanAdGroupErrorEnum { - // Enum describing possible errors from applying a keyword plan ad group. - enum KeywordPlanAdGroupError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The keyword plan ad group name is missing, empty, longer than allowed - // limit or contains invalid chars. - INVALID_NAME = 2; - - // The keyword plan ad group name is duplicate to an existing keyword plan - // AdGroup name or other keyword plan AdGroup name in the request. - DUPLICATE_NAME = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/keyword_plan_ad_group_keyword_error.proto b/google/ads/googleads/v6/errors/keyword_plan_ad_group_keyword_error.proto deleted file mode 100644 index 76b2acb1b..000000000 --- a/google/ads/googleads/v6/errors/keyword_plan_ad_group_keyword_error.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupKeywordErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing errors from applying a keyword plan ad group keyword or -// keyword plan campaign keyword. - -// Container for enum describing possible errors from applying an ad group -// keyword or a campaign keyword from a keyword plan. -message KeywordPlanAdGroupKeywordErrorEnum { - // Enum describing possible errors from applying a keyword plan ad group - // keyword or keyword plan campaign keyword. - enum KeywordPlanAdGroupKeywordError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A keyword or negative keyword has invalid match type. - INVALID_KEYWORD_MATCH_TYPE = 2; - - // A keyword or negative keyword with same text and match type already - // exists. - DUPLICATE_KEYWORD = 3; - - // Keyword or negative keyword text exceeds the allowed limit. - KEYWORD_TEXT_TOO_LONG = 4; - - // Keyword or negative keyword text has invalid characters or symbols. - KEYWORD_HAS_INVALID_CHARS = 5; - - // Keyword or negative keyword text has too many words. - KEYWORD_HAS_TOO_MANY_WORDS = 6; - - // Keyword or negative keyword has invalid text. - INVALID_KEYWORD_TEXT = 7; - - // Cpc Bid set for negative keyword. - NEGATIVE_KEYWORD_HAS_CPC_BID = 8; - } - - -} diff --git a/google/ads/googleads/v6/errors/keyword_plan_campaign_error.proto b/google/ads/googleads/v6/errors/keyword_plan_campaign_error.proto deleted file mode 100644 index 5c0601440..000000000 --- a/google/ads/googleads/v6/errors/keyword_plan_campaign_error.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing errors from applying a keyword plan campaign. - -// Container for enum describing possible errors from applying a keyword plan -// campaign. -message KeywordPlanCampaignErrorEnum { - // Enum describing possible errors from applying a keyword plan campaign. - enum KeywordPlanCampaignError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A keyword plan campaign name is missing, empty, longer than allowed limit - // or contains invalid chars. - INVALID_NAME = 2; - - // A keyword plan campaign contains one or more untargetable languages. - INVALID_LANGUAGES = 3; - - // A keyword plan campaign contains one or more invalid geo targets. - INVALID_GEOS = 4; - - // The keyword plan campaign name is duplicate to an existing keyword plan - // campaign name or other keyword plan campaign name in the request. - DUPLICATE_NAME = 5; - - // The number of geo targets in the keyword plan campaign exceeds limits. - MAX_GEOS_EXCEEDED = 6; - - // The number of languages in the keyword plan campaign exceeds limits. - MAX_LANGUAGES_EXCEEDED = 7; - } - - -} diff --git a/google/ads/googleads/v6/errors/keyword_plan_campaign_keyword_error.proto b/google/ads/googleads/v6/errors/keyword_plan_campaign_keyword_error.proto deleted file mode 100644 index 19932da09..000000000 --- a/google/ads/googleads/v6/errors/keyword_plan_campaign_keyword_error.proto +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignKeywordErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing errors from applying a keyword plan campaign keyword. - -// Container for enum describing possible errors from applying a keyword plan -// campaign keyword. -message KeywordPlanCampaignKeywordErrorEnum { - // Enum describing possible errors from applying a keyword plan campaign - // keyword. - enum KeywordPlanCampaignKeywordError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Keyword plan campaign keyword is positive. - CAMPAIGN_KEYWORD_IS_POSITIVE = 8; - } - - -} diff --git a/google/ads/googleads/v6/errors/keyword_plan_error.proto b/google/ads/googleads/v6/errors/keyword_plan_error.proto deleted file mode 100644 index 5cf9507c7..000000000 --- a/google/ads/googleads/v6/errors/keyword_plan_error.proto +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing errors from applying keyword plan resources (keyword -// plan, keyword plan campaign, keyword plan ad group or keyword plan keyword) -// or KeywordPlanService RPC. - -// Container for enum describing possible errors from applying a keyword plan -// resource (keyword plan, keyword plan campaign, keyword plan ad group or -// keyword plan keyword) or KeywordPlanService RPC. -message KeywordPlanErrorEnum { - // Enum describing possible errors from applying a keyword plan. - enum KeywordPlanError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The plan's bid multiplier value is outside the valid range. - BID_MULTIPLIER_OUT_OF_RANGE = 2; - - // The plan's bid value is too high. - BID_TOO_HIGH = 3; - - // The plan's bid value is too low. - BID_TOO_LOW = 4; - - // The plan's cpc bid is not a multiple of the minimum billable unit. - BID_TOO_MANY_FRACTIONAL_DIGITS = 5; - - // The plan's daily budget value is too low. - DAILY_BUDGET_TOO_LOW = 6; - - // The plan's daily budget is not a multiple of the minimum billable unit. - DAILY_BUDGET_TOO_MANY_FRACTIONAL_DIGITS = 7; - - // The input has an invalid value. - INVALID_VALUE = 8; - - // The plan has no keyword. - KEYWORD_PLAN_HAS_NO_KEYWORDS = 9; - - // The plan is not enabled and API cannot provide mutation, forecast or - // stats. - KEYWORD_PLAN_NOT_ENABLED = 10; - - // The requested plan cannot be found for providing forecast or stats. - KEYWORD_PLAN_NOT_FOUND = 11; - - // The plan is missing a cpc bid. - MISSING_BID = 13; - - // The plan is missing required forecast_period field. - MISSING_FORECAST_PERIOD = 14; - - // The plan's forecast_period has invalid forecast date range. - INVALID_FORECAST_DATE_RANGE = 15; - - // The plan's name is invalid. - INVALID_NAME = 16; - } - - -} diff --git a/google/ads/googleads/v6/errors/keyword_plan_idea_error.proto b/google/ads/googleads/v6/errors/keyword_plan_idea_error.proto deleted file mode 100644 index f2eb87790..000000000 --- a/google/ads/googleads/v6/errors/keyword_plan_idea_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanIdeaErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing errors from KeywordPlanIdeaService. - -// Container for enum describing possible errors from KeywordPlanIdeaService. -message KeywordPlanIdeaErrorEnum { - // Enum describing possible errors from KeywordPlanIdeaService. - enum KeywordPlanIdeaError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Error when crawling the input URL. - URL_CRAWL_ERROR = 2; - - // The input has an invalid value. - INVALID_VALUE = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/label_error.proto b/google/ads/googleads/v6/errors/label_error.proto deleted file mode 100644 index c43dbfbc2..000000000 --- a/google/ads/googleads/v6/errors/label_error.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "LabelErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing label errors. - -// Container for enum describing possible label errors. -message LabelErrorEnum { - // Enum describing possible label errors. - enum LabelError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // An inactive label cannot be applied. - CANNOT_APPLY_INACTIVE_LABEL = 2; - - // A label cannot be applied to a disabled ad group criterion. - CANNOT_APPLY_LABEL_TO_DISABLED_AD_GROUP_CRITERION = 3; - - // A label cannot be applied to a negative ad group criterion. - CANNOT_APPLY_LABEL_TO_NEGATIVE_AD_GROUP_CRITERION = 4; - - // Cannot apply more than 50 labels per resource. - EXCEEDED_LABEL_LIMIT_PER_TYPE = 5; - - // Labels from a manager account cannot be applied to campaign, ad group, - // ad group ad, or ad group criterion resources. - INVALID_RESOURCE_FOR_MANAGER_LABEL = 6; - - // Label names must be unique. - DUPLICATE_NAME = 7; - - // Label names cannot be empty. - INVALID_LABEL_NAME = 8; - - // Labels cannot be applied to a draft. - CANNOT_ATTACH_LABEL_TO_DRAFT = 9; - - // Labels not from a manager account cannot be applied to the customer - // resource. - CANNOT_ATTACH_NON_MANAGER_LABEL_TO_CUSTOMER = 10; - } - - -} diff --git a/google/ads/googleads/v6/errors/language_code_error.proto b/google/ads/googleads/v6/errors/language_code_error.proto deleted file mode 100644 index 943b6887b..000000000 --- a/google/ads/googleads/v6/errors/language_code_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "LanguageCodeErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing language code errors. - -// Container for enum describing language code errors. -message LanguageCodeErrorEnum { - // Enum describing language code errors. - enum LanguageCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The input language code is not recognized. - LANGUAGE_CODE_NOT_FOUND = 2; - - // The language is not allowed to use. - INVALID_LANGUAGE_CODE = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/list_operation_error.proto b/google/ads/googleads/v6/errors/list_operation_error.proto deleted file mode 100644 index 2e7b21c00..000000000 --- a/google/ads/googleads/v6/errors/list_operation_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ListOperationErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing list operation errors. - -// Container for enum describing possible list operation errors. -message ListOperationErrorEnum { - // Enum describing possible list operation errors. - enum ListOperationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Field required in value is missing. - REQUIRED_FIELD_MISSING = 7; - - // Duplicate or identical value is sent in multiple list operations. - DUPLICATE_VALUES = 8; - } - - -} diff --git a/google/ads/googleads/v6/errors/manager_link_error.proto b/google/ads/googleads/v6/errors/manager_link_error.proto deleted file mode 100644 index 52ac50812..000000000 --- a/google/ads/googleads/v6/errors/manager_link_error.proto +++ /dev/null @@ -1,97 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ManagerLinkErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing ManagerLink errors. - -// Container for enum describing possible ManagerLink errors. -message ManagerLinkErrorEnum { - // Enum describing possible ManagerLink errors. - enum ManagerLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The manager and client have incompatible account types. - ACCOUNTS_NOT_COMPATIBLE_FOR_LINKING = 2; - - // Client is already linked to too many managers. - TOO_MANY_MANAGERS = 3; - - // Manager has too many pending invitations. - TOO_MANY_INVITES = 4; - - // Client is already invited by this manager. - ALREADY_INVITED_BY_THIS_MANAGER = 5; - - // The client is already managed by this manager. - ALREADY_MANAGED_BY_THIS_MANAGER = 6; - - // Client is already managed in hierarchy. - ALREADY_MANAGED_IN_HIERARCHY = 7; - - // Manger and sub-manager to be linked have duplicate client. - DUPLICATE_CHILD_FOUND = 8; - - // Client has no active user that can access the client account. - CLIENT_HAS_NO_ADMIN_USER = 9; - - // Adding this link would exceed the maximum hierarchy depth. - MAX_DEPTH_EXCEEDED = 10; - - // Adding this link will create a cycle. - CYCLE_NOT_ALLOWED = 11; - - // Manager account has the maximum number of linked clients. - TOO_MANY_ACCOUNTS = 12; - - // Parent manager account has the maximum number of linked clients. - TOO_MANY_ACCOUNTS_AT_MANAGER = 13; - - // The account is not authorized owner. - NON_OWNER_USER_CANNOT_MODIFY_LINK = 14; - - // Your manager account is suspended, and you are no longer allowed to link - // to clients. - SUSPENDED_ACCOUNT_CANNOT_ADD_CLIENTS = 15; - - // You are not allowed to move a client to a manager that is not under your - // current hierarchy. - CLIENT_OUTSIDE_TREE = 16; - - // The changed status for mutate link is invalid. - INVALID_STATUS_CHANGE = 17; - - // The change for mutate link is invalid. - INVALID_CHANGE = 18; - } - - -} diff --git a/google/ads/googleads/v6/errors/media_bundle_error.proto b/google/ads/googleads/v6/errors/media_bundle_error.proto deleted file mode 100644 index 5e075b5b3..000000000 --- a/google/ads/googleads/v6/errors/media_bundle_error.proto +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MediaBundleErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing media bundle errors. - -// Container for enum describing possible media bundle errors. -message MediaBundleErrorEnum { - // Enum describing possible media bundle errors. - enum MediaBundleError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // There was a problem with the request. - BAD_REQUEST = 3; - - // HTML5 ads using DoubleClick Studio created ZIP files are not supported. - DOUBLECLICK_BUNDLE_NOT_ALLOWED = 4; - - // Cannot reference URL external to the media bundle. - EXTERNAL_URL_NOT_ALLOWED = 5; - - // Media bundle file is too large. - FILE_TOO_LARGE = 6; - - // ZIP file from Google Web Designer is not published. - GOOGLE_WEB_DESIGNER_ZIP_FILE_NOT_PUBLISHED = 7; - - // Input was invalid. - INVALID_INPUT = 8; - - // There was a problem with the media bundle. - INVALID_MEDIA_BUNDLE = 9; - - // There was a problem with one or more of the media bundle entries. - INVALID_MEDIA_BUNDLE_ENTRY = 10; - - // The media bundle contains a file with an unknown mime type - INVALID_MIME_TYPE = 11; - - // The media bundle contain an invalid asset path. - INVALID_PATH = 12; - - // HTML5 ad is trying to reference an asset not in .ZIP file - INVALID_URL_REFERENCE = 13; - - // Media data is too large. - MEDIA_DATA_TOO_LARGE = 14; - - // The media bundle contains no primary entry. - MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY = 15; - - // There was an error on the server. - SERVER_ERROR = 16; - - // The image could not be stored. - STORAGE_ERROR = 17; - - // Media bundle created with the Swiffy tool is not allowed. - SWIFFY_BUNDLE_NOT_ALLOWED = 18; - - // The media bundle contains too many files. - TOO_MANY_FILES = 19; - - // The media bundle is not of legal dimensions. - UNEXPECTED_SIZE = 20; - - // Google Web Designer not created for "Google Ads" environment. - UNSUPPORTED_GOOGLE_WEB_DESIGNER_ENVIRONMENT = 21; - - // Unsupported HTML5 feature in HTML5 asset. - UNSUPPORTED_HTML5_FEATURE = 22; - - // URL in HTML5 entry is not ssl compliant. - URL_IN_MEDIA_BUNDLE_NOT_SSL_COMPLIANT = 23; - - // Custom exits not allowed in HTML5 entry. - CUSTOM_EXIT_NOT_ALLOWED = 24; - } - - -} diff --git a/google/ads/googleads/v6/errors/media_file_error.proto b/google/ads/googleads/v6/errors/media_file_error.proto deleted file mode 100644 index da2952701..000000000 --- a/google/ads/googleads/v6/errors/media_file_error.proto +++ /dev/null @@ -1,113 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MediaFileErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing media file errors. - -// Container for enum describing possible media file errors. -message MediaFileErrorEnum { - // Enum describing possible media file errors. - enum MediaFileError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Cannot create a standard icon type. - CANNOT_CREATE_STANDARD_ICON = 2; - - // May only select Standard Icons alone. - CANNOT_SELECT_STANDARD_ICON_WITH_OTHER_TYPES = 3; - - // Image contains both a media file ID and data. - CANNOT_SPECIFY_MEDIA_FILE_ID_AND_DATA = 4; - - // A media file with given type and reference ID already exists. - DUPLICATE_MEDIA = 5; - - // A required field was not specified or is an empty string. - EMPTY_FIELD = 6; - - // A media file may only be modified once per call. - RESOURCE_REFERENCED_IN_MULTIPLE_OPS = 7; - - // Field is not supported for the media sub type. - FIELD_NOT_SUPPORTED_FOR_MEDIA_SUB_TYPE = 8; - - // The media file ID is invalid. - INVALID_MEDIA_FILE_ID = 9; - - // The media subtype is invalid. - INVALID_MEDIA_SUB_TYPE = 10; - - // The media file type is invalid. - INVALID_MEDIA_FILE_TYPE = 11; - - // The mimetype is invalid. - INVALID_MIME_TYPE = 12; - - // The media reference ID is invalid. - INVALID_REFERENCE_ID = 13; - - // The YouTube video ID is invalid. - INVALID_YOU_TUBE_ID = 14; - - // Media file has failed transcoding - MEDIA_FILE_FAILED_TRANSCODING = 15; - - // Media file has not been transcoded. - MEDIA_NOT_TRANSCODED = 16; - - // The media type does not match the actual media file's type. - MEDIA_TYPE_DOES_NOT_MATCH_MEDIA_FILE_TYPE = 17; - - // None of the fields have been specified. - NO_FIELDS_SPECIFIED = 18; - - // One of reference ID or media file ID must be specified. - NULL_REFERENCE_ID_AND_MEDIA_ID = 19; - - // The string has too many characters. - TOO_LONG = 20; - - // The specified type is not supported. - UNSUPPORTED_TYPE = 21; - - // YouTube is unavailable for requesting video data. - YOU_TUBE_SERVICE_UNAVAILABLE = 22; - - // The YouTube video has a non positive duration. - YOU_TUBE_VIDEO_HAS_NON_POSITIVE_DURATION = 23; - - // The YouTube video ID is syntactically valid but the video was not found. - YOU_TUBE_VIDEO_NOT_FOUND = 24; - } - - -} diff --git a/google/ads/googleads/v6/errors/media_upload_error.proto b/google/ads/googleads/v6/errors/media_upload_error.proto deleted file mode 100644 index 0c7ecec78..000000000 --- a/google/ads/googleads/v6/errors/media_upload_error.proto +++ /dev/null @@ -1,149 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MediaUploadErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing media uploading errors. - -// Container for enum describing possible media uploading errors. -message MediaUploadErrorEnum { - // Enum describing possible media uploading errors. - enum MediaUploadError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The uploaded file is too big. - FILE_TOO_BIG = 2; - - // Image data is unparseable. - UNPARSEABLE_IMAGE = 3; - - // Animated images are not allowed. - ANIMATED_IMAGE_NOT_ALLOWED = 4; - - // The image or media bundle format is not allowed. - FORMAT_NOT_ALLOWED = 5; - - // Cannot reference URL external to the media bundle. - EXTERNAL_URL_NOT_ALLOWED = 6; - - // HTML5 ad is trying to reference an asset not in .ZIP file. - INVALID_URL_REFERENCE = 7; - - // The media bundle contains no primary entry. - MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY = 8; - - // Animation has disallowed visual effects. - ANIMATED_VISUAL_EFFECT = 9; - - // Animation longer than the allowed 30 second limit. - ANIMATION_TOO_LONG = 10; - - // The aspect ratio of the image does not match the expected aspect ratios - // provided in the asset spec. - ASPECT_RATIO_NOT_ALLOWED = 11; - - // Audio files are not allowed in bundle. - AUDIO_NOT_ALLOWED_IN_MEDIA_BUNDLE = 12; - - // CMYK jpegs are not supported. - CMYK_JPEG_NOT_ALLOWED = 13; - - // Flash movies are not allowed. - FLASH_NOT_ALLOWED = 14; - - // The frame rate of the video is higher than the allowed 5fps. - FRAME_RATE_TOO_HIGH = 15; - - // ZIP file from Google Web Designer is not published. - GOOGLE_WEB_DESIGNER_ZIP_FILE_NOT_PUBLISHED = 16; - - // Image constraints are violated, but more details (like - // DIMENSIONS_NOT_ALLOWED or ASPECT_RATIO_NOT_ALLOWED) can not be provided. - // This happens when asset spec contains more than one constraint and - // criteria of different constraints are violated. - IMAGE_CONSTRAINTS_VIOLATED = 17; - - // Media bundle data is unrecognizable. - INVALID_MEDIA_BUNDLE = 18; - - // There was a problem with one or more of the media bundle entries. - INVALID_MEDIA_BUNDLE_ENTRY = 19; - - // The asset has an invalid mime type. - INVALID_MIME_TYPE = 20; - - // The media bundle contains an invalid asset path. - INVALID_PATH = 21; - - // Image has layout problem. - LAYOUT_PROBLEM = 22; - - // An asset had a URL reference that is malformed per RFC 1738 convention. - MALFORMED_URL = 23; - - // The uploaded media bundle format is not allowed. - MEDIA_BUNDLE_NOT_ALLOWED = 24; - - // The media bundle is not compatible with the asset spec product type. - // (E.g. Gmail, dynamic remarketing, etc.) - MEDIA_BUNDLE_NOT_COMPATIBLE_TO_PRODUCT_TYPE = 25; - - // A bundle being uploaded that is incompatible with multiple assets for - // different reasons. - MEDIA_BUNDLE_REJECTED_BY_MULTIPLE_ASSET_SPECS = 26; - - // The media bundle contains too many files. - TOO_MANY_FILES_IN_MEDIA_BUNDLE = 27; - - // Google Web Designer not created for "Google Ads" environment. - UNSUPPORTED_GOOGLE_WEB_DESIGNER_ENVIRONMENT = 28; - - // Unsupported HTML5 feature in HTML5 asset. - UNSUPPORTED_HTML5_FEATURE = 29; - - // URL in HTML5 entry is not SSL compliant. - URL_IN_MEDIA_BUNDLE_NOT_SSL_COMPLIANT = 30; - - // Video file name is longer than the 50 allowed characters. - VIDEO_FILE_NAME_TOO_LONG = 31; - - // Multiple videos with same name in a bundle. - VIDEO_MULTIPLE_FILES_WITH_SAME_NAME = 32; - - // Videos are not allowed in media bundle. - VIDEO_NOT_ALLOWED_IN_MEDIA_BUNDLE = 33; - - // This type of media cannot be uploaded through the Google Ads API. - CANNOT_UPLOAD_MEDIA_TYPE_THROUGH_API = 34; - } - - -} diff --git a/google/ads/googleads/v6/errors/multiplier_error.proto b/google/ads/googleads/v6/errors/multiplier_error.proto deleted file mode 100644 index 57cff6e9c..000000000 --- a/google/ads/googleads/v6/errors/multiplier_error.proto +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MultiplierErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing multiplier errors. - -// Container for enum describing possible multiplier errors. -message MultiplierErrorEnum { - // Enum describing possible multiplier errors. - enum MultiplierError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Multiplier value is too high - MULTIPLIER_TOO_HIGH = 2; - - // Multiplier value is too low - MULTIPLIER_TOO_LOW = 3; - - // Too many fractional digits - TOO_MANY_FRACTIONAL_DIGITS = 4; - - // A multiplier cannot be set for this bidding strategy - MULTIPLIER_NOT_ALLOWED_FOR_BIDDING_STRATEGY = 5; - - // A multiplier cannot be set when there is no base bid (e.g., content max - // cpc) - MULTIPLIER_NOT_ALLOWED_WHEN_BASE_BID_IS_MISSING = 6; - - // A bid multiplier must be specified - NO_MULTIPLIER_SPECIFIED = 7; - - // Multiplier causes bid to exceed daily budget - MULTIPLIER_CAUSES_BID_TO_EXCEED_DAILY_BUDGET = 8; - - // Multiplier causes bid to exceed monthly budget - MULTIPLIER_CAUSES_BID_TO_EXCEED_MONTHLY_BUDGET = 9; - - // Multiplier causes bid to exceed custom budget - MULTIPLIER_CAUSES_BID_TO_EXCEED_CUSTOM_BUDGET = 10; - - // Multiplier causes bid to exceed maximum allowed bid - MULTIPLIER_CAUSES_BID_TO_EXCEED_MAX_ALLOWED_BID = 11; - - // Multiplier causes bid to become less than the minimum bid allowed - BID_LESS_THAN_MIN_ALLOWED_BID_WITH_MULTIPLIER = 12; - - // Multiplier type (cpc vs. cpm) needs to match campaign's bidding strategy - MULTIPLIER_AND_BIDDING_STRATEGY_TYPE_MISMATCH = 13; - } - - -} diff --git a/google/ads/googleads/v6/errors/mutate_error.proto b/google/ads/googleads/v6/errors/mutate_error.proto deleted file mode 100644 index 710fb5a4e..000000000 --- a/google/ads/googleads/v6/errors/mutate_error.proto +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "MutateErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing mutate errors. - -// Container for enum describing possible mutate errors. -message MutateErrorEnum { - // Enum describing possible mutate errors. - enum MutateError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Requested resource was not found. - RESOURCE_NOT_FOUND = 3; - - // Cannot mutate the same resource twice in one request. - ID_EXISTS_IN_MULTIPLE_MUTATES = 7; - - // The field's contents don't match another field that represents the same - // data. - INCONSISTENT_FIELD_VALUES = 8; - - // Mutates are not allowed for the requested resource. - MUTATE_NOT_ALLOWED = 9; - - // The resource isn't in Google Ads. It belongs to another ads system. - RESOURCE_NOT_IN_GOOGLE_ADS = 10; - - // The resource being created already exists. - RESOURCE_ALREADY_EXISTS = 11; - - // This resource cannot be used with "validate_only". - RESOURCE_DOES_NOT_SUPPORT_VALIDATE_ONLY = 12; - - // Attempt to write to read-only fields. - RESOURCE_READ_ONLY = 13; - } - - -} diff --git a/google/ads/googleads/v6/errors/new_resource_creation_error.proto b/google/ads/googleads/v6/errors/new_resource_creation_error.proto deleted file mode 100644 index ae8b2dbe3..000000000 --- a/google/ads/googleads/v6/errors/new_resource_creation_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NewResourceCreationErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing new resource creation errors. - -// Container for enum describing possible new resource creation errors. -message NewResourceCreationErrorEnum { - // Enum describing possible new resource creation errors. - enum NewResourceCreationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Do not set the id field while creating new resources. - CANNOT_SET_ID_FOR_CREATE = 2; - - // Creating more than one resource with the same temp ID is not allowed. - DUPLICATE_TEMP_IDS = 3; - - // Parent resource with specified temp ID failed validation, so no - // validation will be done for this child resource. - TEMP_ID_RESOURCE_HAD_ERRORS = 4; - } - - -} diff --git a/google/ads/googleads/v6/errors/not_allowlisted_error.proto b/google/ads/googleads/v6/errors/not_allowlisted_error.proto deleted file mode 100644 index 21b85e482..000000000 --- a/google/ads/googleads/v6/errors/not_allowlisted_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NotAllowlistedErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing not allowlisted errors. - -// Container for enum describing possible not allowlisted errors. -message NotAllowlistedErrorEnum { - // Enum describing possible not allowlisted errors. - enum NotAllowlistedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Customer is not allowlisted for accessing this feature. - CUSTOMER_NOT_ALLOWLISTED_FOR_THIS_FEATURE = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/not_empty_error.proto b/google/ads/googleads/v6/errors/not_empty_error.proto deleted file mode 100644 index db8fb58ff..000000000 --- a/google/ads/googleads/v6/errors/not_empty_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NotEmptyErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing not empty errors. - -// Container for enum describing possible not empty errors. -message NotEmptyErrorEnum { - // Enum describing possible not empty errors. - enum NotEmptyError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Empty list. - EMPTY_LIST = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/null_error.proto b/google/ads/googleads/v6/errors/null_error.proto deleted file mode 100644 index 38fac307e..000000000 --- a/google/ads/googleads/v6/errors/null_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "NullErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing null errors. - -// Container for enum describing possible null errors. -message NullErrorEnum { - // Enum describing possible null errors. - enum NullError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Specified list/container must not contain any null elements - NULL_CONTENT = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/offline_user_data_job_error.proto b/google/ads/googleads/v6/errors/offline_user_data_job_error.proto deleted file mode 100644 index 60fe56be9..000000000 --- a/google/ads/googleads/v6/errors/offline_user_data_job_error.proto +++ /dev/null @@ -1,146 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing offline user data job errors. - -// Container for enum describing possible offline user data job errors. -message OfflineUserDataJobErrorEnum { - // Enum describing possible request errors. - enum OfflineUserDataJobError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The user list ID provided for the job is invalid. - INVALID_USER_LIST_ID = 3; - - // Type of the user list is not applicable for the job. - INVALID_USER_LIST_TYPE = 4; - - // Customer is not allowisted for using user ID in upload data. - NOT_ON_ALLOWLIST_FOR_USER_ID = 33; - - // Upload data is not compatible with the upload key type of the associated - // user list. - INCOMPATIBLE_UPLOAD_KEY_TYPE = 6; - - // The user identifier is missing valid data. - MISSING_USER_IDENTIFIER = 7; - - // The mobile ID is malformed. - INVALID_MOBILE_ID_FORMAT = 8; - - // Maximum number of user identifiers allowed per request is 100,000. - TOO_MANY_USER_IDENTIFIERS = 9; - - // Customer is not on the allow-list for store sales direct data. - NOT_ON_ALLOWLIST_FOR_STORE_SALES_DIRECT = 31; - - // Customer is not on the allow-list for unified store sales data. - NOT_ON_ALLOWLIST_FOR_UNIFIED_STORE_SALES = 32; - - // The partner ID in store sales direct metadata is invalid. - INVALID_PARTNER_ID = 11; - - // The data in user identifier should not be encoded. - INVALID_ENCODING = 12; - - // The country code is invalid. - INVALID_COUNTRY_CODE = 13; - - // Incompatible user identifier when using third_party_user_id for store - // sales direct first party data or not using third_party_user_id for store - // sales third party data. - INCOMPATIBLE_USER_IDENTIFIER = 14; - - // A transaction time in the future is not allowed. - FUTURE_TRANSACTION_TIME = 15; - - // The conversion_action specified in transaction_attributes is used to - // report conversions to a conversion action configured in Google Ads. This - // error indicates there is no such conversion action in the account. - INVALID_CONVERSION_ACTION = 16; - - // Mobile ID is not supported for store sales direct data. - MOBILE_ID_NOT_SUPPORTED = 17; - - // When a remove-all operation is provided, it has to be the first operation - // of the operation list. - INVALID_OPERATION_ORDER = 18; - - // Mixing creation and removal of offline data in the same job is not - // allowed. - CONFLICTING_OPERATION = 19; - - // The external update ID already exists. - EXTERNAL_UPDATE_ID_ALREADY_EXISTS = 21; - - // Once the upload job is started, new operations cannot be added. - JOB_ALREADY_STARTED = 22; - - // Remove operation is not allowed for store sales direct updates. - REMOVE_NOT_SUPPORTED = 23; - - // Remove-all is not supported for certain offline user data job types. - REMOVE_ALL_NOT_SUPPORTED = 24; - - // The SHA256 encoded value is malformed. - INVALID_SHA256_FORMAT = 25; - - // The custom key specified is not enabled for the unified store sales - // upload. - CUSTOM_KEY_DISABLED = 26; - - // The custom key specified is not predefined through the Google Ads UI. - CUSTOM_KEY_NOT_PREDEFINED = 27; - - // The custom key specified is not set in the upload. - CUSTOM_KEY_NOT_SET = 29; - - // The customer has not accepted the customer data terms in the conversion - // settings page. - CUSTOMER_NOT_ACCEPTED_CUSTOMER_DATA_TERMS = 30; - - // User attributes cannot be uploaded into a user list. - ATTRIBUTES_NOT_APPLICABLE_FOR_CUSTOMER_MATCH_USER_LIST = 34; - - // Lifetime value bucket must be a number from 1-10, except for remove - // operation where 0 will be accepted. - LIFETIME_VALUE_BUCKET_NOT_IN_RANGE = 35; - - // Identifiers not supported for Customer Match attributes. User attributes - // can only be provided with contact info (email, phone, address) user - // identifiers. - INCOMPATIBLE_USER_IDENTIFIER_FOR_ATTRIBUTES = 36; - } - - -} diff --git a/google/ads/googleads/v6/errors/operation_access_denied_error.proto b/google/ads/googleads/v6/errors/operation_access_denied_error.proto deleted file mode 100644 index 0d1169569..000000000 --- a/google/ads/googleads/v6/errors/operation_access_denied_error.proto +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "OperationAccessDeniedErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing operation access denied errors. - -// Container for enum describing possible operation access denied errors. -message OperationAccessDeniedErrorEnum { - // Enum describing possible operation access denied errors. - enum OperationAccessDeniedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Unauthorized invocation of a service's method (get, mutate, etc.) - ACTION_NOT_PERMITTED = 2; - - // Unauthorized CREATE operation in invoking a service's mutate method. - CREATE_OPERATION_NOT_PERMITTED = 3; - - // Unauthorized REMOVE operation in invoking a service's mutate method. - REMOVE_OPERATION_NOT_PERMITTED = 4; - - // Unauthorized UPDATE operation in invoking a service's mutate method. - UPDATE_OPERATION_NOT_PERMITTED = 5; - - // A mutate action is not allowed on this campaign, from this client. - MUTATE_ACTION_NOT_PERMITTED_FOR_CLIENT = 6; - - // This operation is not permitted on this campaign type - OPERATION_NOT_PERMITTED_FOR_CAMPAIGN_TYPE = 7; - - // A CREATE operation may not set status to REMOVED. - CREATE_AS_REMOVED_NOT_PERMITTED = 8; - - // This operation is not allowed because the campaign or adgroup is removed. - OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 9; - - // This operation is not permitted on this ad group type. - OPERATION_NOT_PERMITTED_FOR_AD_GROUP_TYPE = 10; - - // The mutate is not allowed for this customer. - MUTATE_NOT_PERMITTED_FOR_CUSTOMER = 11; - } - - -} diff --git a/google/ads/googleads/v6/errors/operator_error.proto b/google/ads/googleads/v6/errors/operator_error.proto deleted file mode 100644 index 6e05ffeaf..000000000 --- a/google/ads/googleads/v6/errors/operator_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "OperatorErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing operator errors. - -// Container for enum describing possible operator errors. -message OperatorErrorEnum { - // Enum describing possible operator errors. - enum OperatorError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Operator not supported. - OPERATOR_NOT_SUPPORTED = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/partial_failure_error.proto b/google/ads/googleads/v6/errors/partial_failure_error.proto deleted file mode 100644 index 7d19c63bf..000000000 --- a/google/ads/googleads/v6/errors/partial_failure_error.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PartialFailureErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing partial failure errors. - -// Container for enum describing possible partial failure errors. -message PartialFailureErrorEnum { - // Enum describing possible partial failure errors. - enum PartialFailureError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The partial failure field was false in the request. - // This method requires this field be set to true. - PARTIAL_FAILURE_MODE_REQUIRED = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/payments_account_error.proto b/google/ads/googleads/v6/errors/payments_account_error.proto deleted file mode 100644 index 29edec8b9..000000000 --- a/google/ads/googleads/v6/errors/payments_account_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PaymentsAccountErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing payments account service errors. - -// Container for enum describing possible errors in payments account service. -message PaymentsAccountErrorEnum { - // Enum describing possible errors in payments account service. - enum PaymentsAccountError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Manager customers are not supported for payments account service. - NOT_SUPPORTED_FOR_MANAGER_CUSTOMER = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/policy_finding_error.proto b/google/ads/googleads/v6/errors/policy_finding_error.proto deleted file mode 100644 index 4b679d58b..000000000 --- a/google/ads/googleads/v6/errors/policy_finding_error.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PolicyFindingErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing policy finding errors. - -// Container for enum describing possible policy finding errors. -message PolicyFindingErrorEnum { - // Enum describing possible policy finding errors. - enum PolicyFindingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The resource has been disapproved since the policy summary includes - // policy topics of type PROHIBITED. - POLICY_FINDING = 2; - - // The given policy topic does not exist. - POLICY_TOPIC_NOT_FOUND = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/policy_validation_parameter_error.proto b/google/ads/googleads/v6/errors/policy_validation_parameter_error.proto deleted file mode 100644 index 6d0a28ae7..000000000 --- a/google/ads/googleads/v6/errors/policy_validation_parameter_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PolicyValidationParameterErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing policy validation parameter errors. - -// Container for enum describing possible policy validation parameter errors. -message PolicyValidationParameterErrorEnum { - // Enum describing possible policy validation parameter errors. - enum PolicyValidationParameterError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Ignorable policy topics are not supported for the ad type. - UNSUPPORTED_AD_TYPE_FOR_IGNORABLE_POLICY_TOPICS = 2; - - // Exempt policy violation keys are not supported for the ad type. - UNSUPPORTED_AD_TYPE_FOR_EXEMPT_POLICY_VIOLATION_KEYS = 3; - - // Cannot set ignorable policy topics and exempt policy violation keys in - // the same policy violation parameter. - CANNOT_SET_BOTH_IGNORABLE_POLICY_TOPICS_AND_EXEMPT_POLICY_VIOLATION_KEYS = 4; - } - - -} diff --git a/google/ads/googleads/v6/errors/policy_violation_error.proto b/google/ads/googleads/v6/errors/policy_violation_error.proto deleted file mode 100644 index 372ce7b01..000000000 --- a/google/ads/googleads/v6/errors/policy_violation_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "PolicyViolationErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing policy violation errors. - -// Container for enum describing possible policy violation errors. -message PolicyViolationErrorEnum { - // Enum describing possible policy violation errors. - enum PolicyViolationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // A policy was violated. See PolicyViolationDetails for more detail. - POLICY_ERROR = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/query_error.proto b/google/ads/googleads/v6/errors/query_error.proto deleted file mode 100644 index 6618c1ee8..000000000 --- a/google/ads/googleads/v6/errors/query_error.proto +++ /dev/null @@ -1,222 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "QueryErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing query errors. - -// Container for enum describing possible query errors. -message QueryErrorEnum { - // Enum describing possible query errors. - enum QueryError { - // Name unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Returned if all other query error reasons are not applicable. - QUERY_ERROR = 50; - - // A condition used in the query references an invalid enum constant. - BAD_ENUM_CONSTANT = 18; - - // Query contains an invalid escape sequence. - BAD_ESCAPE_SEQUENCE = 7; - - // Field name is invalid. - BAD_FIELD_NAME = 12; - - // Limit value is invalid (i.e. not a number) - BAD_LIMIT_VALUE = 15; - - // Encountered number can not be parsed. - BAD_NUMBER = 5; - - // Invalid operator encountered. - BAD_OPERATOR = 3; - - // Parameter unknown or not supported. - BAD_PARAMETER_NAME = 61; - - // Parameter have invalid value. - BAD_PARAMETER_VALUE = 62; - - // Invalid resource type was specified in the FROM clause. - BAD_RESOURCE_TYPE_IN_FROM_CLAUSE = 45; - - // Non-ASCII symbol encountered outside of strings. - BAD_SYMBOL = 2; - - // Value is invalid. - BAD_VALUE = 4; - - // Date filters fail to restrict date to a range smaller than 31 days. - // Applicable if the query is segmented by date. - DATE_RANGE_TOO_WIDE = 36; - - // Filters on date/week/month/quarter have a start date after - // end date. - DATE_RANGE_TOO_NARROW = 60; - - // Expected AND between values with BETWEEN operator. - EXPECTED_AND = 30; - - // Expecting ORDER BY to have BY. - EXPECTED_BY = 14; - - // There was no dimension field selected. - EXPECTED_DIMENSION_FIELD_IN_SELECT_CLAUSE = 37; - - // Missing filters on date related fields. - EXPECTED_FILTERS_ON_DATE_RANGE = 55; - - // Missing FROM clause. - EXPECTED_FROM = 44; - - // The operator used in the conditions requires the value to be a list. - EXPECTED_LIST = 41; - - // Fields used in WHERE or ORDER BY clauses are missing from the SELECT - // clause. - EXPECTED_REFERENCED_FIELD_IN_SELECT_CLAUSE = 16; - - // SELECT is missing at the beginning of query. - EXPECTED_SELECT = 13; - - // A list was passed as a value to a condition whose operator expects a - // single value. - EXPECTED_SINGLE_VALUE = 42; - - // Missing one or both values with BETWEEN operator. - EXPECTED_VALUE_WITH_BETWEEN_OPERATOR = 29; - - // Invalid date format. Expected 'YYYY-MM-DD'. - INVALID_DATE_FORMAT = 38; - - // Value passed was not a string when it should have been. I.e., it was a - // number or unquoted literal. - INVALID_STRING_VALUE = 57; - - // A String value passed to the BETWEEN operator does not parse as a date. - INVALID_VALUE_WITH_BETWEEN_OPERATOR = 26; - - // The value passed to the DURING operator is not a Date range literal - INVALID_VALUE_WITH_DURING_OPERATOR = 22; - - // A non-string value was passed to the LIKE operator. - INVALID_VALUE_WITH_LIKE_OPERATOR = 56; - - // An operator was provided that is inapplicable to the field being - // filtered. - OPERATOR_FIELD_MISMATCH = 35; - - // A Condition was found with an empty list. - PROHIBITED_EMPTY_LIST_IN_CONDITION = 28; - - // A condition used in the query references an unsupported enum constant. - PROHIBITED_ENUM_CONSTANT = 54; - - // Fields that are not allowed to be selected together were included in - // the SELECT clause. - PROHIBITED_FIELD_COMBINATION_IN_SELECT_CLAUSE = 31; - - // A field that is not orderable was included in the ORDER BY clause. - PROHIBITED_FIELD_IN_ORDER_BY_CLAUSE = 40; - - // A field that is not selectable was included in the SELECT clause. - PROHIBITED_FIELD_IN_SELECT_CLAUSE = 23; - - // A field that is not filterable was included in the WHERE clause. - PROHIBITED_FIELD_IN_WHERE_CLAUSE = 24; - - // Resource type specified in the FROM clause is not supported by this - // service. - PROHIBITED_RESOURCE_TYPE_IN_FROM_CLAUSE = 43; - - // A field that comes from an incompatible resource was included in the - // SELECT clause. - PROHIBITED_RESOURCE_TYPE_IN_SELECT_CLAUSE = 48; - - // A field that comes from an incompatible resource was included in the - // WHERE clause. - PROHIBITED_RESOURCE_TYPE_IN_WHERE_CLAUSE = 58; - - // A metric incompatible with the main resource or other selected - // segmenting resources was included in the SELECT or WHERE clause. - PROHIBITED_METRIC_IN_SELECT_OR_WHERE_CLAUSE = 49; - - // A segment incompatible with the main resource or other selected - // segmenting resources was included in the SELECT or WHERE clause. - PROHIBITED_SEGMENT_IN_SELECT_OR_WHERE_CLAUSE = 51; - - // A segment in the SELECT clause is incompatible with a metric in the - // SELECT or WHERE clause. - PROHIBITED_SEGMENT_WITH_METRIC_IN_SELECT_OR_WHERE_CLAUSE = 53; - - // The value passed to the limit clause is too low. - LIMIT_VALUE_TOO_LOW = 25; - - // Query has a string containing a newline character. - PROHIBITED_NEWLINE_IN_STRING = 8; - - // List contains values of different types. - PROHIBITED_VALUE_COMBINATION_IN_LIST = 10; - - // The values passed to the BETWEEN operator are not of the same type. - PROHIBITED_VALUE_COMBINATION_WITH_BETWEEN_OPERATOR = 21; - - // Query contains unterminated string. - STRING_NOT_TERMINATED = 6; - - // Too many segments are specified in SELECT clause. - TOO_MANY_SEGMENTS = 34; - - // Query is incomplete and cannot be parsed. - UNEXPECTED_END_OF_QUERY = 9; - - // FROM clause cannot be specified in this query. - UNEXPECTED_FROM_CLAUSE = 47; - - // Query contains one or more unrecognized fields. - UNRECOGNIZED_FIELD = 32; - - // Query has an unexpected extra part. - UNEXPECTED_INPUT = 11; - - // Metrics cannot be requested for a manager account. To retrieve metrics, - // issue separate requests against each client account under the manager - // account. - REQUESTED_METRICS_FOR_MANAGER = 59; - - // The number of values (right-hand-side operands) in a filter exceeds the - // limit. - FILTER_HAS_TOO_MANY_VALUES = 63; - } - - -} diff --git a/google/ads/googleads/v6/errors/quota_error.proto b/google/ads/googleads/v6/errors/quota_error.proto deleted file mode 100644 index baeb486df..000000000 --- a/google/ads/googleads/v6/errors/quota_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "QuotaErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing quota errors. - -// Container for enum describing possible quota errors. -message QuotaErrorEnum { - // Enum describing possible quota errors. - enum QuotaError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Too many requests. - RESOURCE_EXHAUSTED = 2; - - // Access is prohibited. - ACCESS_PROHIBITED = 3; - - // Too many requests in a short amount of time. - RESOURCE_TEMPORARILY_EXHAUSTED = 4; - } - - -} diff --git a/google/ads/googleads/v6/errors/range_error.proto b/google/ads/googleads/v6/errors/range_error.proto deleted file mode 100644 index 7df5ddd03..000000000 --- a/google/ads/googleads/v6/errors/range_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RangeErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing range errors. - -// Container for enum describing possible range errors. -message RangeErrorEnum { - // Enum describing possible range errors. - enum RangeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Too low. - TOO_LOW = 2; - - // Too high. - TOO_HIGH = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/reach_plan_error.proto b/google/ads/googleads/v6/errors/reach_plan_error.proto deleted file mode 100644 index 28827d83c..000000000 --- a/google/ads/googleads/v6/errors/reach_plan_error.proto +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing errors generated from ReachPlanService. - -// Container for enum describing possible errors returned from -// the ReachPlanService. -message ReachPlanErrorEnum { - // Enum describing possible errors from ReachPlanService. - enum ReachPlanError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Not forecastable due to missing rate card data. - NOT_FORECASTABLE_MISSING_RATE = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/recommendation_error.proto b/google/ads/googleads/v6/errors/recommendation_error.proto deleted file mode 100644 index 928a3e711..000000000 --- a/google/ads/googleads/v6/errors/recommendation_error.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing errors from applying a recommendation. - -// Container for enum describing possible errors from applying a recommendation. -message RecommendationErrorEnum { - // Enum describing possible errors from applying a recommendation. - enum RecommendationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified budget amount is too low e.g. lower than minimum currency - // unit or lower than ad group minimum cost-per-click. - BUDGET_AMOUNT_TOO_SMALL = 2; - - // The specified budget amount is too large. - BUDGET_AMOUNT_TOO_LARGE = 3; - - // The specified budget amount is not a valid amount. e.g. not a multiple - // of minimum currency unit. - INVALID_BUDGET_AMOUNT = 4; - - // The specified keyword or ad violates ad policy. - POLICY_ERROR = 5; - - // The specified bid amount is not valid. e.g. too many fractional digits, - // or negative amount. - INVALID_BID_AMOUNT = 6; - - // The number of keywords in ad group have reached the maximum allowed. - ADGROUP_KEYWORD_LIMIT = 7; - - // The recommendation requested to apply has already been applied. - RECOMMENDATION_ALREADY_APPLIED = 8; - - // The recommendation requested to apply has been invalidated. - RECOMMENDATION_INVALIDATED = 9; - - // The number of operations in a single request exceeds the maximum allowed. - TOO_MANY_OPERATIONS = 10; - - // There are no operations in the request. - NO_OPERATIONS = 11; - - // Operations with multiple recommendation types are not supported when - // partial failure mode is not enabled. - DIFFERENT_TYPES_NOT_SUPPORTED = 12; - - // Request contains multiple operations with the same resource_name. - DUPLICATE_RESOURCE_NAME = 13; - - // The recommendation requested to dismiss has already been dismissed. - RECOMMENDATION_ALREADY_DISMISSED = 14; - - // The recommendation apply request was malformed and invalid. - INVALID_APPLY_REQUEST = 15; - } - - -} diff --git a/google/ads/googleads/v6/errors/region_code_error.proto b/google/ads/googleads/v6/errors/region_code_error.proto deleted file mode 100644 index e441e9411..000000000 --- a/google/ads/googleads/v6/errors/region_code_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RegionCodeErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing region code errors. - -// Container for enum describing possible region code errors. -message RegionCodeErrorEnum { - // Enum describing possible region code errors. - enum RegionCodeError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Invalid region code. - INVALID_REGION_CODE = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/request_error.proto b/google/ads/googleads/v6/errors/request_error.proto deleted file mode 100644 index af0ca6666..000000000 --- a/google/ads/googleads/v6/errors/request_error.proto +++ /dev/null @@ -1,119 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "RequestErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing request errors. - -// Container for enum describing possible request errors. -message RequestErrorEnum { - // Enum describing possible request errors. - enum RequestError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Resource name is required for this request. - RESOURCE_NAME_MISSING = 3; - - // Resource name provided is malformed. - RESOURCE_NAME_MALFORMED = 4; - - // Resource name provided is malformed. - BAD_RESOURCE_ID = 17; - - // Customer ID is invalid. - INVALID_CUSTOMER_ID = 16; - - // Mutate operation should have either create, update, or remove specified. - OPERATION_REQUIRED = 5; - - // Requested resource not found. - RESOURCE_NOT_FOUND = 6; - - // Next page token specified in user request is invalid. - INVALID_PAGE_TOKEN = 7; - - // Next page token specified in user request has expired. - EXPIRED_PAGE_TOKEN = 8; - - // Page size specified in user request is invalid. - INVALID_PAGE_SIZE = 22; - - // Required field is missing. - REQUIRED_FIELD_MISSING = 9; - - // The field cannot be modified because it's immutable. It's also possible - // that the field can be modified using 'create' operation but not 'update'. - IMMUTABLE_FIELD = 11; - - // Received too many entries in request. - TOO_MANY_MUTATE_OPERATIONS = 13; - - // Request cannot be executed by a manager account. - CANNOT_BE_EXECUTED_BY_MANAGER_ACCOUNT = 14; - - // Mutate request was attempting to modify a readonly field. - // For instance, Budget fields can be requested for Ad Group, - // but are read-only for adGroups:mutate. - CANNOT_MODIFY_FOREIGN_FIELD = 15; - - // Enum value is not permitted. - INVALID_ENUM_VALUE = 18; - - // The developer-token parameter is required for all requests. - DEVELOPER_TOKEN_PARAMETER_MISSING = 19; - - // The login-customer-id parameter is required for this request. - LOGIN_CUSTOMER_ID_PARAMETER_MISSING = 20; - - // page_token is set in the validate only request - VALIDATE_ONLY_REQUEST_HAS_PAGE_TOKEN = 21; - - // return_summary_row cannot be enabled if request did not select any - // metrics field. - CANNOT_RETURN_SUMMARY_ROW_FOR_REQUEST_WITHOUT_METRICS = 29; - - // return_summary_row should not be enabled for validate only requests. - CANNOT_RETURN_SUMMARY_ROW_FOR_VALIDATE_ONLY_REQUESTS = 30; - - // return_summary_row parameter value should be the same between requests - // with page_token field set and their original request. - INCONSISTENT_RETURN_SUMMARY_ROW_VALUE = 31; - - // The total results count cannot be returned if it was not requested in the - // original request. - TOTAL_RESULTS_COUNT_NOT_ORIGINALLY_REQUESTED = 32; - - // Deadline specified by the client was too short. - RPC_DEADLINE_TOO_SHORT = 33; - } - - -} diff --git a/google/ads/googleads/v6/errors/resource_access_denied_error.proto b/google/ads/googleads/v6/errors/resource_access_denied_error.proto deleted file mode 100644 index edf0ce748..000000000 --- a/google/ads/googleads/v6/errors/resource_access_denied_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ResourceAccessDeniedErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing resource access denied errors. - -// Container for enum describing possible resource access denied errors. -message ResourceAccessDeniedErrorEnum { - // Enum describing possible resource access denied errors. - enum ResourceAccessDeniedError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // User did not have write access. - WRITE_ACCESS_DENIED = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/resource_count_limit_exceeded_error.proto b/google/ads/googleads/v6/errors/resource_count_limit_exceeded_error.proto deleted file mode 100644 index f8e61dfe8..000000000 --- a/google/ads/googleads/v6/errors/resource_count_limit_exceeded_error.proto +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ResourceCountLimitExceededErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing resource count limit exceeded errors. - -// Container for enum describing possible resource count limit exceeded errors. -message ResourceCountLimitExceededErrorEnum { - // Enum describing possible resource count limit exceeded errors. - enum ResourceCountLimitExceededError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Indicates that this request would exceed the number of allowed resources - // for the Google Ads account. The exact resource type and limit being - // checked can be inferred from accountLimitType. - ACCOUNT_LIMIT = 2; - - // Indicates that this request would exceed the number of allowed resources - // in a Campaign. The exact resource type and limit being checked can be - // inferred from accountLimitType, and the numeric id of the - // Campaign involved is given by enclosingId. - CAMPAIGN_LIMIT = 3; - - // Indicates that this request would exceed the number of allowed resources - // in an ad group. The exact resource type and limit being checked can be - // inferred from accountLimitType, and the numeric id of the - // ad group involved is given by enclosingId. - ADGROUP_LIMIT = 4; - - // Indicates that this request would exceed the number of allowed resources - // in an ad group ad. The exact resource type and limit being checked can - // be inferred from accountLimitType, and the enclosingId - // contains the ad group id followed by the ad id, separated by a single - // comma (,). - AD_GROUP_AD_LIMIT = 5; - - // Indicates that this request would exceed the number of allowed resources - // in an ad group criterion. The exact resource type and limit being checked - // can be inferred from accountLimitType, and the - // enclosingId contains the ad group id followed by the - // criterion id, separated by a single comma (,). - AD_GROUP_CRITERION_LIMIT = 6; - - // Indicates that this request would exceed the number of allowed resources - // in this shared set. The exact resource type and limit being checked can - // be inferred from accountLimitType, and the numeric id of the - // shared set involved is given by enclosingId. - SHARED_SET_LIMIT = 7; - - // Exceeds a limit related to a matching function. - MATCHING_FUNCTION_LIMIT = 8; - - // The response for this request would exceed the maximum number of rows - // that can be returned. - RESPONSE_ROW_LIMIT_EXCEEDED = 9; - - // This request would exceed a limit on the number of allowed resources. - // The details of which type of limit was exceeded will eventually be - // returned in ErrorDetails. - RESOURCE_LIMIT = 10; - } - - -} diff --git a/google/ads/googleads/v6/errors/setting_error.proto b/google/ads/googleads/v6/errors/setting_error.proto deleted file mode 100644 index 47105d741..000000000 --- a/google/ads/googleads/v6/errors/setting_error.proto +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SettingErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing setting errors. - -// Container for enum describing possible setting errors. -message SettingErrorEnum { - // Enum describing possible setting errors. - enum SettingError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The campaign setting is not available for this Google Ads account. - SETTING_TYPE_IS_NOT_AVAILABLE = 3; - - // The setting is not compatible with the campaign. - SETTING_TYPE_IS_NOT_COMPATIBLE_WITH_CAMPAIGN = 4; - - // The supplied TargetingSetting contains an invalid CriterionTypeGroup. See - // CriterionTypeGroup documentation for CriterionTypeGroups allowed - // in Campaign or AdGroup TargetingSettings. - TARGETING_SETTING_CONTAINS_INVALID_CRITERION_TYPE_GROUP = 5; - - // TargetingSetting must not explicitly - // set any of the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, - // PARENT, INCOME_RANGE) to false (it's okay to not set them at all, in - // which case the system will set them to true automatically). - TARGETING_SETTING_DEMOGRAPHIC_CRITERION_TYPE_GROUPS_MUST_BE_SET_TO_TARGET_ALL = 6; - - // TargetingSetting cannot change any of - // the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, PARENT, - // INCOME_RANGE) from true to false. - TARGETING_SETTING_CANNOT_CHANGE_TARGET_ALL_TO_FALSE_FOR_DEMOGRAPHIC_CRITERION_TYPE_GROUP = 7; - - // At least one feed id should be present. - DYNAMIC_SEARCH_ADS_SETTING_AT_LEAST_ONE_FEED_ID_MUST_BE_PRESENT = 8; - - // The supplied DynamicSearchAdsSetting contains an invalid domain name. - DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_DOMAIN_NAME = 9; - - // The supplied DynamicSearchAdsSetting contains a subdomain name. - DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_SUBDOMAIN_NAME = 10; - - // The supplied DynamicSearchAdsSetting contains an invalid language code. - DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_LANGUAGE_CODE = 11; - - // TargetingSettings in search campaigns should not have - // CriterionTypeGroup.PLACEMENT set to targetAll. - TARGET_ALL_IS_NOT_ALLOWED_FOR_PLACEMENT_IN_SEARCH_CAMPAIGN = 12; - - // The setting value is not compatible with the campaign type. - SETTING_VALUE_NOT_COMPATIBLE_WITH_CAMPAIGN = 20; - } - - -} diff --git a/google/ads/googleads/v6/errors/shared_criterion_error.proto b/google/ads/googleads/v6/errors/shared_criterion_error.proto deleted file mode 100644 index 29cca9a55..000000000 --- a/google/ads/googleads/v6/errors/shared_criterion_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SharedCriterionErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing shared criterion errors. - -// Container for enum describing possible shared criterion errors. -message SharedCriterionErrorEnum { - // Enum describing possible shared criterion errors. - enum SharedCriterionError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The criterion is not appropriate for the shared set type. - CRITERION_TYPE_NOT_ALLOWED_FOR_SHARED_SET_TYPE = 2; - } - - -} diff --git a/google/ads/googleads/v6/errors/shared_set_error.proto b/google/ads/googleads/v6/errors/shared_set_error.proto deleted file mode 100644 index 5a2f42d8a..000000000 --- a/google/ads/googleads/v6/errors/shared_set_error.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing shared set errors. - -// Container for enum describing possible shared set errors. -message SharedSetErrorEnum { - // Enum describing possible shared set errors. - enum SharedSetError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The customer cannot create this type of shared set. - CUSTOMER_CANNOT_CREATE_SHARED_SET_OF_THIS_TYPE = 2; - - // A shared set with this name already exists. - DUPLICATE_NAME = 3; - - // Removed shared sets cannot be mutated. - SHARED_SET_REMOVED = 4; - - // The shared set cannot be removed because it is in use. - SHARED_SET_IN_USE = 5; - } - - -} diff --git a/google/ads/googleads/v6/errors/size_limit_error.proto b/google/ads/googleads/v6/errors/size_limit_error.proto deleted file mode 100644 index c4a9de093..000000000 --- a/google/ads/googleads/v6/errors/size_limit_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "SizeLimitErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing size limit errors. - -// Container for enum describing possible size limit errors. -message SizeLimitErrorEnum { - // Enum describing possible size limit errors. - enum SizeLimitError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The number of entries in the request exceeds the system limit. - REQUEST_SIZE_LIMIT_EXCEEDED = 2; - - // The number of entries in the response exceeds the system limit. - RESPONSE_SIZE_LIMIT_EXCEEDED = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/string_format_error.proto b/google/ads/googleads/v6/errors/string_format_error.proto deleted file mode 100644 index 554750082..000000000 --- a/google/ads/googleads/v6/errors/string_format_error.proto +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "StringFormatErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing string format errors. - -// Container for enum describing possible string format errors. -message StringFormatErrorEnum { - // Enum describing possible string format errors. - enum StringFormatError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The input string value contains disallowed characters. - ILLEGAL_CHARS = 2; - - // The input string value is invalid for the associated field. - INVALID_FORMAT = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/string_length_error.proto b/google/ads/googleads/v6/errors/string_length_error.proto deleted file mode 100644 index 20b4aa764..000000000 --- a/google/ads/googleads/v6/errors/string_length_error.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "StringLengthErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing string length errors. - -// Container for enum describing possible string length errors. -message StringLengthErrorEnum { - // Enum describing possible string length errors. - enum StringLengthError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The specified field should have a least one non-whitespace character in - // it. - EMPTY = 4; - - // Too short. - TOO_SHORT = 2; - - // Too long. - TOO_LONG = 3; - } - - -} diff --git a/google/ads/googleads/v6/errors/third_party_app_analytics_link_error.proto b/google/ads/googleads/v6/errors/third_party_app_analytics_link_error.proto deleted file mode 100644 index e7e302687..000000000 --- a/google/ads/googleads/v6/errors/third_party_app_analytics_link_error.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "ThirdPartyAppAnalyticsLinkErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing ThirdPartyAppAnalyticsLink errors. - -// Container for enum describing possible third party app analytics link errors. -message ThirdPartyAppAnalyticsLinkErrorEnum { - // Enum describing possible third party app analytics link errors. - enum ThirdPartyAppAnalyticsLinkError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The provided analytics provider ID is invalid. - INVALID_ANALYTICS_PROVIDER_ID = 2; - - // The provided mobile app ID is invalid. - INVALID_MOBILE_APP_ID = 3; - - // The mobile app corresponding to the provided app ID is not - // active/enabled. - MOBILE_APP_IS_NOT_ENABLED = 4; - - // Regenerating shareable link ID is only allowed on active links - CANNOT_REGENERATE_SHAREABLE_LINK_ID_FOR_REMOVED_LINK = 5; - } - - -} diff --git a/google/ads/googleads/v6/errors/time_zone_error.proto b/google/ads/googleads/v6/errors/time_zone_error.proto deleted file mode 100644 index 3ded1767f..000000000 --- a/google/ads/googleads/v6/errors/time_zone_error.proto +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "TimeZoneErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing time zone errors. - -// Container for enum describing possible time zone errors. -message TimeZoneErrorEnum { - // Enum describing possible currency code errors. - enum TimeZoneError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Time zone is not valid. - INVALID_TIME_ZONE = 5; - } - - -} diff --git a/google/ads/googleads/v6/errors/url_field_error.proto b/google/ads/googleads/v6/errors/url_field_error.proto deleted file mode 100644 index 940db82b0..000000000 --- a/google/ads/googleads/v6/errors/url_field_error.proto +++ /dev/null @@ -1,215 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "UrlFieldErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing url field errors. - -// Container for enum describing possible url field errors. -message UrlFieldErrorEnum { - // Enum describing possible url field errors. - enum UrlFieldError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // The tracking url template is invalid. - INVALID_TRACKING_URL_TEMPLATE = 2; - - // The tracking url template contains invalid tag. - INVALID_TAG_IN_TRACKING_URL_TEMPLATE = 3; - - // The tracking url template must contain at least one tag (e.g. {lpurl}), - // This applies only to tracking url template associated with website ads or - // product ads. - MISSING_TRACKING_URL_TEMPLATE_TAG = 4; - - // The tracking url template must start with a valid protocol (or lpurl - // tag). - MISSING_PROTOCOL_IN_TRACKING_URL_TEMPLATE = 5; - - // The tracking url template starts with an invalid protocol. - INVALID_PROTOCOL_IN_TRACKING_URL_TEMPLATE = 6; - - // The tracking url template contains illegal characters. - MALFORMED_TRACKING_URL_TEMPLATE = 7; - - // The tracking url template must contain a host name (or lpurl tag). - MISSING_HOST_IN_TRACKING_URL_TEMPLATE = 8; - - // The tracking url template has an invalid or missing top level domain - // extension. - INVALID_TLD_IN_TRACKING_URL_TEMPLATE = 9; - - // The tracking url template contains nested occurrences of the same - // conditional tag (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_TRACKING_URL_TEMPLATE_TAG = 10; - - // The final url is invalid. - INVALID_FINAL_URL = 11; - - // The final url contains invalid tag. - INVALID_TAG_IN_FINAL_URL = 12; - - // The final url contains nested occurrences of the same conditional tag - // (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_FINAL_URL_TAG = 13; - - // The final url must start with a valid protocol. - MISSING_PROTOCOL_IN_FINAL_URL = 14; - - // The final url starts with an invalid protocol. - INVALID_PROTOCOL_IN_FINAL_URL = 15; - - // The final url contains illegal characters. - MALFORMED_FINAL_URL = 16; - - // The final url must contain a host name. - MISSING_HOST_IN_FINAL_URL = 17; - - // The tracking url template has an invalid or missing top level domain - // extension. - INVALID_TLD_IN_FINAL_URL = 18; - - // The final mobile url is invalid. - INVALID_FINAL_MOBILE_URL = 19; - - // The final mobile url contains invalid tag. - INVALID_TAG_IN_FINAL_MOBILE_URL = 20; - - // The final mobile url contains nested occurrences of the same conditional - // tag (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_FINAL_MOBILE_URL_TAG = 21; - - // The final mobile url must start with a valid protocol. - MISSING_PROTOCOL_IN_FINAL_MOBILE_URL = 22; - - // The final mobile url starts with an invalid protocol. - INVALID_PROTOCOL_IN_FINAL_MOBILE_URL = 23; - - // The final mobile url contains illegal characters. - MALFORMED_FINAL_MOBILE_URL = 24; - - // The final mobile url must contain a host name. - MISSING_HOST_IN_FINAL_MOBILE_URL = 25; - - // The tracking url template has an invalid or missing top level domain - // extension. - INVALID_TLD_IN_FINAL_MOBILE_URL = 26; - - // The final app url is invalid. - INVALID_FINAL_APP_URL = 27; - - // The final app url contains invalid tag. - INVALID_TAG_IN_FINAL_APP_URL = 28; - - // The final app url contains nested occurrences of the same conditional tag - // (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_FINAL_APP_URL_TAG = 29; - - // More than one app url found for the same OS type. - MULTIPLE_APP_URLS_FOR_OSTYPE = 30; - - // The OS type given for an app url is not valid. - INVALID_OSTYPE = 31; - - // The protocol given for an app url is not valid. (E.g. "android-app://") - INVALID_PROTOCOL_FOR_APP_URL = 32; - - // The package id (app id) given for an app url is not valid. - INVALID_PACKAGE_ID_FOR_APP_URL = 33; - - // The number of url custom parameters for an resource exceeds the maximum - // limit allowed. - URL_CUSTOM_PARAMETERS_COUNT_EXCEEDS_LIMIT = 34; - - // An invalid character appears in the parameter key. - INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_KEY = 39; - - // An invalid character appears in the parameter value. - INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_VALUE = 40; - - // The url custom parameter value fails url tag validation. - INVALID_TAG_IN_URL_CUSTOM_PARAMETER_VALUE = 41; - - // The custom parameter contains nested occurrences of the same conditional - // tag (i.e. {ifmobile:{ifmobile:x}}). - REDUNDANT_NESTED_URL_CUSTOM_PARAMETER_TAG = 42; - - // The protocol (http:// or https://) is missing. - MISSING_PROTOCOL = 43; - - // Unsupported protocol in URL. Only http and https are supported. - INVALID_PROTOCOL = 52; - - // The url is invalid. - INVALID_URL = 44; - - // Destination Url is deprecated. - DESTINATION_URL_DEPRECATED = 45; - - // The url contains invalid tag. - INVALID_TAG_IN_URL = 46; - - // The url must contain at least one tag (e.g. {lpurl}), This applies only - // to urls associated with website ads or product ads. - MISSING_URL_TAG = 47; - - // Duplicate url id. - DUPLICATE_URL_ID = 48; - - // Invalid url id. - INVALID_URL_ID = 49; - - // The final url suffix cannot begin with '?' or '&' characters and must be - // a valid query string. - FINAL_URL_SUFFIX_MALFORMED = 50; - - // The final url suffix cannot contain {lpurl} related or {ignore} tags. - INVALID_TAG_IN_FINAL_URL_SUFFIX = 51; - - // The top level domain is invalid, e.g, not a public top level domain - // listed in publicsuffix.org. - INVALID_TOP_LEVEL_DOMAIN = 53; - - // Malformed top level domain in URL. - MALFORMED_TOP_LEVEL_DOMAIN = 54; - - // Malformed URL. - MALFORMED_URL = 55; - - // No host found in URL. - MISSING_HOST = 56; - - // Custom parameter value cannot be null. - NULL_CUSTOM_PARAMETER_VALUE = 57; - } - - -} diff --git a/google/ads/googleads/v6/errors/user_data_error.proto b/google/ads/googleads/v6/errors/user_data_error.proto deleted file mode 100644 index c88a93451..000000000 --- a/google/ads/googleads/v6/errors/user_data_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "UserDataErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing user data errors. - -// Container for enum describing possible user data errors. -message UserDataErrorEnum { - // Enum describing possible request errors. - enum UserDataError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Customer is not allowed to perform operations related to Customer Match. - OPERATIONS_FOR_CUSTOMER_MATCH_NOT_ALLOWED = 2; - - // Maximum number of user identifiers allowed for each mutate is 100. - TOO_MANY_USER_IDENTIFIERS = 3; - - // Current user list is not applicable for the given customer. - USER_LIST_NOT_APPLICABLE = 4; - } - - -} diff --git a/google/ads/googleads/v6/errors/user_list_error.proto b/google/ads/googleads/v6/errors/user_list_error.proto deleted file mode 100644 index 3d3399b8b..000000000 --- a/google/ads/googleads/v6/errors/user_list_error.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "UserListErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing user list errors. - -// Container for enum describing possible user list errors. -message UserListErrorEnum { - // Enum describing possible user list errors. - enum UserListError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Creating and updating external remarketing user lists is not supported. - EXTERNAL_REMARKETING_USER_LIST_MUTATE_NOT_SUPPORTED = 2; - - // Concrete type of user list is required. - CONCRETE_TYPE_REQUIRED = 3; - - // Creating/updating user list conversion types requires specifying the - // conversion type Id. - CONVERSION_TYPE_ID_REQUIRED = 4; - - // Remarketing user list cannot have duplicate conversion types. - DUPLICATE_CONVERSION_TYPES = 5; - - // Conversion type is invalid/unknown. - INVALID_CONVERSION_TYPE = 6; - - // User list description is empty or invalid. - INVALID_DESCRIPTION = 7; - - // User list name is empty or invalid. - INVALID_NAME = 8; - - // Type of the UserList does not match. - INVALID_TYPE = 9; - - // Embedded logical user lists are not allowed. - CAN_NOT_ADD_LOGICAL_LIST_AS_LOGICAL_LIST_OPERAND = 10; - - // User list rule operand is invalid. - INVALID_USER_LIST_LOGICAL_RULE_OPERAND = 11; - - // Name is already being used for another user list for the account. - NAME_ALREADY_USED = 12; - - // Name is required when creating a new conversion type. - NEW_CONVERSION_TYPE_NAME_REQUIRED = 13; - - // The given conversion type name has been used. - CONVERSION_TYPE_NAME_ALREADY_USED = 14; - - // Only an owner account may edit a user list. - OWNERSHIP_REQUIRED_FOR_SET = 15; - - // Creating user list without setting type in oneof user_list field, or - // creating/updating read-only user list types is not allowed. - USER_LIST_MUTATE_NOT_SUPPORTED = 16; - - // Rule is invalid. - INVALID_RULE = 17; - - // The specified date range is empty. - INVALID_DATE_RANGE = 27; - - // A UserList which is privacy sensitive or legal rejected cannot be mutated - // by external users. - CAN_NOT_MUTATE_SENSITIVE_USERLIST = 28; - - // Maximum number of rulebased user lists a customer can have. - MAX_NUM_RULEBASED_USERLISTS = 29; - - // BasicUserList's billable record field cannot be modified once it is set. - CANNOT_MODIFY_BILLABLE_RECORD_COUNT = 30; - - // crm_based_user_list.app_id field must be set when upload_key_type is - // MOBILE_ADVERTISING_ID. - APP_ID_NOT_SET = 31; - - // Name of the user list is reserved for system generated lists and cannot - // be used. - USERLIST_NAME_IS_RESERVED_FOR_SYSTEM_LIST = 32; - - // Advertiser needs to be on the allow-list to use remarketing lists created - // from advertiser uploaded data (e.g., Customer Match lists). - ADVERTISER_NOT_ON_ALLOWLIST_FOR_USING_UPLOADED_DATA = 37; - - // The provided rule_type is not supported for the user list. - RULE_TYPE_IS_NOT_SUPPORTED = 34; - - // Similar user list cannot be used as a logical user list operand. - CAN_NOT_ADD_A_SIMILAR_USERLIST_AS_LOGICAL_LIST_OPERAND = 35; - - // Logical user list should not have a mix of CRM based user list and other - // types of lists in its rules. - CAN_NOT_MIX_CRM_BASED_IN_LOGICAL_LIST_WITH_OTHER_LISTS = 36; - } - - -} diff --git a/google/ads/googleads/v6/errors/youtube_video_registration_error.proto b/google/ads/googleads/v6/errors/youtube_video_registration_error.proto deleted file mode 100644 index 0177538f4..000000000 --- a/google/ads/googleads/v6/errors/youtube_video_registration_error.proto +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.errors; - -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Errors"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/errors;errors"; -option java_multiple_files = true; -option java_outer_classname = "YoutubeVideoRegistrationErrorProto"; -option java_package = "com.google.ads.googleads.v6.errors"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Errors"; -option ruby_package = "Google::Ads::GoogleAds::V6::Errors"; - -// Proto file describing YouTube video registration errors. - -// Container for enum describing YouTube video registration errors. -message YoutubeVideoRegistrationErrorEnum { - // Enum describing YouTube video registration errors. - enum YoutubeVideoRegistrationError { - // Enum unspecified. - UNSPECIFIED = 0; - - // The received error code is not known in this version. - UNKNOWN = 1; - - // Video to be registered wasn't found. - VIDEO_NOT_FOUND = 2; - - // Video to be registered is not accessible (e.g. private). - VIDEO_NOT_ACCESSIBLE = 3; - - // Video to be registered is not eligible (e.g. mature content). - VIDEO_NOT_ELIGIBLE = 4; - } - - -} diff --git a/google/ads/googleads/v6/googleads_gapic.yaml b/google/ads/googleads/v6/googleads_gapic.yaml deleted file mode 100644 index 1b86d5ad3..000000000 --- a/google/ads/googleads/v6/googleads_gapic.yaml +++ /dev/null @@ -1,26 +0,0 @@ -type: com.google.api.codegen.ConfigProto -config_schema_version: 2.0.0 -language_settings: - csharp: - package_name: Google.Ads.GoogleAds.V6.Services - go: - package_name: google.golang.org/google/ads/googleads/v6/services - java: - package_name: com.google.ads.googleads.v6.services - nodejs: - package_name: v6.services - php: - package_name: Google\Ads\GoogleAds\V6\Services - python: - package_name: google.ads.googleads_v6.gapic.services - ruby: - package_name: Google::Ads::Googleads::V6::Services -interfaces: -- name: google.ads.googleads.v6.services.OfflineUserDataJobService - methods: - - name: RunOfflineUserDataJob - long_running: - initial_poll_delay_millis: 300000 - max_poll_delay_millis: 3600000 - poll_delay_multiplier: 1.25 - total_poll_timeout_millis: 43200000 diff --git a/google/ads/googleads/v6/googleads_grpc_service_config.json b/google/ads/googleads/v6/googleads_grpc_service_config.json deleted file mode 100644 index 9d950585c..000000000 --- a/google/ads/googleads/v6/googleads_grpc_service_config.json +++ /dev/null @@ -1,375 +0,0 @@ -{ - "methodConfig": [ - { - "name": [ - { - "service": "google.ads.googleads.v6.services.AccountBudgetProposalService" - }, - { - "service": "google.ads.googleads.v6.services.AccountBudgetService" - }, - { - "service": "google.ads.googleads.v6.services.AccountLinkService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupAdAssetViewService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupAdLabelService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupAdService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupAudienceViewService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupBidModifierService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupCriterionLabelService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupCriterionService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupCriterionSimulationService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupExtensionSettingService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupFeedService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupLabelService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupService" - }, - { - "service": "google.ads.googleads.v6.services.AdGroupSimulationService" - }, - { - "service": "google.ads.googleads.v6.services.AdParameterService" - }, - { - "service": "google.ads.googleads.v6.services.AdScheduleViewService" - }, - { - "service": "google.ads.googleads.v6.services.AdService" - }, - { - "service": "google.ads.googleads.v6.services.AgeRangeViewService" - }, - { - "service": "google.ads.googleads.v6.services.AssetService" - }, - { - "service": "google.ads.googleads.v6.services.BatchJobService" - }, - { - "service": "google.ads.googleads.v6.services.BiddingStrategyService" - }, - { - "service": "google.ads.googleads.v6.services.BillingSetupService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignAssetService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignAudienceViewService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignBidModifierService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignBudgetService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignCriterionService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignCriterionSimulationService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignDraftService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignExperimentService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignExtensionSettingService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignFeedService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignLabelService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignService" - }, - { - "service": "google.ads.googleads.v6.services.CampaignSharedSetService" - }, - { - "service": "google.ads.googleads.v6.services.CarrierConstantService" - }, - { - "service": "google.ads.googleads.v6.services.ChangeStatusService" - }, - { - "service": "google.ads.googleads.v6.services.ClickViewService" - }, - { - "service": "google.ads.googleads.v6.services.CombinedAudienceService" - }, - { - "service": "google.ads.googleads.v6.services.ConversionActionService" - }, - { - "service": "google.ads.googleads.v6.services.ConversionAdjustmentUploadService" - }, - { - "service": "google.ads.googleads.v6.services.ConversionUploadService" - }, - { - "service": "google.ads.googleads.v6.services.CurrencyConstantService" - }, - { - "service": "google.ads.googleads.v6.services.CustomAudienceService" - }, - { - "service": "google.ads.googleads.v6.services.CustomInterestService" - }, - { - "service": "google.ads.googleads.v6.services.CustomerClientLinkService" - }, - { - "service": "google.ads.googleads.v6.services.CustomerClientService" - }, - { - "service": "google.ads.googleads.v6.services.CustomerExtensionSettingService" - }, - { - "service": "google.ads.googleads.v6.services.CustomerFeedService" - }, - { - "service": "google.ads.googleads.v6.services.CustomerLabelService" - }, - { - "service": "google.ads.googleads.v6.services.CustomerManagerLinkService" - }, - { - "service": "google.ads.googleads.v6.services.CustomerNegativeCriterionService" - }, - { - "service": "google.ads.googleads.v6.services.CustomerService" - }, - { - "service": "google.ads.googleads.v6.services.CustomerUserAccessInvitationService" - }, - { - "service": "google.ads.googleads.v6.services.CustomerUserAccessService" - }, - { - "service": "google.ads.googleads.v6.services.DetailPlacementViewService" - }, - { - "service": "google.ads.googleads.v6.services.DisplayKeywordViewService" - }, - { - "service": "google.ads.googleads.v6.services.DistanceViewService" - }, - { - "service": "google.ads.googleads.v6.services.DomainCategoryService" - }, - { - "service": "google.ads.googleads.v6.services.DynamicSearchAdsSearchTermViewService" - }, - { - "service": "google.ads.googleads.v6.services.ExpandedLandingPageViewService" - }, - { - "service": "google.ads.googleads.v6.services.ExtensionFeedItemService" - }, - { - "service": "google.ads.googleads.v6.services.FeedItemService" - }, - { - "service": "google.ads.googleads.v6.services.FeedItemSetLinkService" - }, - { - "service": "google.ads.googleads.v6.services.FeedItemSetService" - }, - { - "service": "google.ads.googleads.v6.services.FeedItemTargetService" - }, - { - "service": "google.ads.googleads.v6.services.FeedMappingService" - }, - { - "service": "google.ads.googleads.v6.services.FeedPlaceholderViewService" - }, - { - "service": "google.ads.googleads.v6.services.FeedService" - }, - { - "service": "google.ads.googleads.v6.services.GenderViewService" - }, - { - "service": "google.ads.googleads.v6.services.GeoTargetConstantService" - }, - { - "service": "google.ads.googleads.v6.services.GeographicViewService" - }, - { - "service": "google.ads.googleads.v6.services.GoogleAdsFieldService" - }, - { - "service": "google.ads.googleads.v6.services.GoogleAdsService" - }, - { - "service": "google.ads.googleads.v6.services.GroupPlacementViewService" - }, - { - "service": "google.ads.googleads.v6.services.HotelGroupViewService" - }, - { - "service": "google.ads.googleads.v6.services.HotelPerformanceViewService" - }, - { - "service": "google.ads.googleads.v6.services.IncomeRangeViewService" - }, - { - "service": "google.ads.googleads.v6.services.InvoiceService" - }, - { - "service": "google.ads.googleads.v6.services.KeywordPlanAdGroupKeywordService" - }, - { - "service": "google.ads.googleads.v6.services.KeywordPlanAdGroupService" - }, - { - "service": "google.ads.googleads.v6.services.KeywordPlanCampaignKeywordService" - }, - { - "service": "google.ads.googleads.v6.services.KeywordPlanCampaignService" - }, - { - "service": "google.ads.googleads.v6.services.KeywordPlanIdeaService" - }, - { - "service": "google.ads.googleads.v6.services.KeywordPlanService" - }, - { - "service": "google.ads.googleads.v6.services.KeywordViewService" - }, - { - "service": "google.ads.googleads.v6.services.LabelService" - }, - { - "service": "google.ads.googleads.v6.services.LandingPageViewService" - }, - { - "service": "google.ads.googleads.v6.services.LanguageConstantService" - }, - { - "service": "google.ads.googleads.v6.services.LocationViewService" - }, - { - "service": "google.ads.googleads.v6.services.ManagedPlacementViewService" - }, - { - "service": "google.ads.googleads.v6.services.MediaFileService" - }, - { - "service": "google.ads.googleads.v6.services.MerchantCenterLinkService" - }, - { - "service": "google.ads.googleads.v6.services.MobileAppCategoryConstantService" - }, - { - "service": "google.ads.googleads.v6.services.MobileDeviceConstantService" - }, - { - "service": "google.ads.googleads.v6.services.OfflineUserDataJobService" - }, - { - "service": "google.ads.googleads.v6.services.OperatingSystemVersionConstantService" - }, - { - "service": "google.ads.googleads.v6.services.PaidOrganicSearchTermViewService" - }, - { - "service": "google.ads.googleads.v6.services.ParentalStatusViewService" - }, - { - "service": "google.ads.googleads.v6.services.PaymentsAccountService" - }, - { - "service": "google.ads.googleads.v6.services.ProductBiddingCategoryConstantService" - }, - { - "service": "google.ads.googleads.v6.services.ProductGroupViewService" - }, - { - "service": "google.ads.googleads.v6.services.ReachPlanService" - }, - { - "service": "google.ads.googleads.v6.services.RecommendationService" - }, - { - "service": "google.ads.googleads.v6.services.RemarketingActionService" - }, - { - "service": "google.ads.googleads.v6.services.SearchTermViewService" - }, - { - "service": "google.ads.googleads.v6.services.SharedCriterionService" - }, - { - "service": "google.ads.googleads.v6.services.SharedSetService" - }, - { - "service": "google.ads.googleads.v6.services.ShoppingPerformanceViewService" - }, - { - "service": "google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService" - }, - { - "service": "google.ads.googleads.v6.services.TopicConstantService" - }, - { - "service": "google.ads.googleads.v6.services.TopicViewService" - }, - { - "service": "google.ads.googleads.v6.services.UserDataService" - }, - { - "service": "google.ads.googleads.v6.services.UserInterestService" - }, - { - "service": "google.ads.googleads.v6.services.UserListService" - }, - { - "service": "google.ads.googleads.v6.services.UserLocationViewService" - }, - { - "service": "google.ads.googleads.v6.services.VideoService" - } - ], - "timeout": "3600s", - "retryPolicy": { - "initialBackoff": "5s", - "maxBackoff": "60s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": [ - "UNAVAILABLE", - "DEADLINE_EXCEEDED" - ] - } - } - ] -} diff --git a/google/ads/googleads/v6/googleads_v6.yaml b/google/ads/googleads/v6/googleads_v6.yaml deleted file mode 100644 index 0ee75c06a..000000000 --- a/google/ads/googleads/v6/googleads_v6.yaml +++ /dev/null @@ -1,1217 +0,0 @@ -type: google.api.Service -config_version: 3 -name: googleads.googleapis.com -title: Google Ads API - -apis: -- name: google.ads.googleads.v6.services.AccountBudgetProposalService -- name: google.ads.googleads.v6.services.AccountBudgetService -- name: google.ads.googleads.v6.services.AccountLinkService -- name: google.ads.googleads.v6.services.AdGroupAdAssetViewService -- name: google.ads.googleads.v6.services.AdGroupAdLabelService -- name: google.ads.googleads.v6.services.AdGroupAdService -- name: google.ads.googleads.v6.services.AdGroupAudienceViewService -- name: google.ads.googleads.v6.services.AdGroupBidModifierService -- name: google.ads.googleads.v6.services.AdGroupCriterionLabelService -- name: google.ads.googleads.v6.services.AdGroupCriterionService -- name: google.ads.googleads.v6.services.AdGroupCriterionSimulationService -- name: google.ads.googleads.v6.services.AdGroupExtensionSettingService -- name: google.ads.googleads.v6.services.AdGroupFeedService -- name: google.ads.googleads.v6.services.AdGroupLabelService -- name: google.ads.googleads.v6.services.AdGroupService -- name: google.ads.googleads.v6.services.AdGroupSimulationService -- name: google.ads.googleads.v6.services.AdParameterService -- name: google.ads.googleads.v6.services.AdScheduleViewService -- name: google.ads.googleads.v6.services.AdService -- name: google.ads.googleads.v6.services.AgeRangeViewService -- name: google.ads.googleads.v6.services.AssetService -- name: google.ads.googleads.v6.services.BatchJobService -- name: google.ads.googleads.v6.services.BiddingStrategyService -- name: google.ads.googleads.v6.services.BillingSetupService -- name: google.ads.googleads.v6.services.CampaignAssetService -- name: google.ads.googleads.v6.services.CampaignAudienceViewService -- name: google.ads.googleads.v6.services.CampaignBidModifierService -- name: google.ads.googleads.v6.services.CampaignBudgetService -- name: google.ads.googleads.v6.services.CampaignCriterionService -- name: google.ads.googleads.v6.services.CampaignCriterionSimulationService -- name: google.ads.googleads.v6.services.CampaignDraftService -- name: google.ads.googleads.v6.services.CampaignExperimentService -- name: google.ads.googleads.v6.services.CampaignExtensionSettingService -- name: google.ads.googleads.v6.services.CampaignFeedService -- name: google.ads.googleads.v6.services.CampaignLabelService -- name: google.ads.googleads.v6.services.CampaignService -- name: google.ads.googleads.v6.services.CampaignSharedSetService -- name: google.ads.googleads.v6.services.CarrierConstantService -- name: google.ads.googleads.v6.services.ChangeStatusService -- name: google.ads.googleads.v6.services.ClickViewService -- name: google.ads.googleads.v6.services.CombinedAudienceService -- name: google.ads.googleads.v6.services.ConversionActionService -- name: google.ads.googleads.v6.services.ConversionAdjustmentUploadService -- name: google.ads.googleads.v6.services.ConversionUploadService -- name: google.ads.googleads.v6.services.CurrencyConstantService -- name: google.ads.googleads.v6.services.CustomAudienceService -- name: google.ads.googleads.v6.services.CustomInterestService -- name: google.ads.googleads.v6.services.CustomerClientLinkService -- name: google.ads.googleads.v6.services.CustomerClientService -- name: google.ads.googleads.v6.services.CustomerExtensionSettingService -- name: google.ads.googleads.v6.services.CustomerFeedService -- name: google.ads.googleads.v6.services.CustomerLabelService -- name: google.ads.googleads.v6.services.CustomerManagerLinkService -- name: google.ads.googleads.v6.services.CustomerNegativeCriterionService -- name: google.ads.googleads.v6.services.CustomerService -- name: google.ads.googleads.v6.services.CustomerUserAccessInvitationService -- name: google.ads.googleads.v6.services.CustomerUserAccessService -- name: google.ads.googleads.v6.services.DetailPlacementViewService -- name: google.ads.googleads.v6.services.DisplayKeywordViewService -- name: google.ads.googleads.v6.services.DistanceViewService -- name: google.ads.googleads.v6.services.DomainCategoryService -- name: google.ads.googleads.v6.services.DynamicSearchAdsSearchTermViewService -- name: google.ads.googleads.v6.services.ExpandedLandingPageViewService -- name: google.ads.googleads.v6.services.ExtensionFeedItemService -- name: google.ads.googleads.v6.services.FeedItemService -- name: google.ads.googleads.v6.services.FeedItemSetLinkService -- name: google.ads.googleads.v6.services.FeedItemSetService -- name: google.ads.googleads.v6.services.FeedItemTargetService -- name: google.ads.googleads.v6.services.FeedMappingService -- name: google.ads.googleads.v6.services.FeedPlaceholderViewService -- name: google.ads.googleads.v6.services.FeedService -- name: google.ads.googleads.v6.services.GenderViewService -- name: google.ads.googleads.v6.services.GeoTargetConstantService -- name: google.ads.googleads.v6.services.GeographicViewService -- name: google.ads.googleads.v6.services.GoogleAdsFieldService -- name: google.ads.googleads.v6.services.GoogleAdsService -- name: google.ads.googleads.v6.services.GroupPlacementViewService -- name: google.ads.googleads.v6.services.HotelGroupViewService -- name: google.ads.googleads.v6.services.HotelPerformanceViewService -- name: google.ads.googleads.v6.services.IncomeRangeViewService -- name: google.ads.googleads.v6.services.InvoiceService -- name: google.ads.googleads.v6.services.KeywordPlanAdGroupKeywordService -- name: google.ads.googleads.v6.services.KeywordPlanAdGroupService -- name: google.ads.googleads.v6.services.KeywordPlanCampaignKeywordService -- name: google.ads.googleads.v6.services.KeywordPlanCampaignService -- name: google.ads.googleads.v6.services.KeywordPlanIdeaService -- name: google.ads.googleads.v6.services.KeywordPlanService -- name: google.ads.googleads.v6.services.KeywordViewService -- name: google.ads.googleads.v6.services.LabelService -- name: google.ads.googleads.v6.services.LandingPageViewService -- name: google.ads.googleads.v6.services.LanguageConstantService -- name: google.ads.googleads.v6.services.LocationViewService -- name: google.ads.googleads.v6.services.ManagedPlacementViewService -- name: google.ads.googleads.v6.services.MediaFileService -- name: google.ads.googleads.v6.services.MerchantCenterLinkService -- name: google.ads.googleads.v6.services.MobileAppCategoryConstantService -- name: google.ads.googleads.v6.services.MobileDeviceConstantService -- name: google.ads.googleads.v6.services.OfflineUserDataJobService -- name: google.ads.googleads.v6.services.OperatingSystemVersionConstantService -- name: google.ads.googleads.v6.services.PaidOrganicSearchTermViewService -- name: google.ads.googleads.v6.services.ParentalStatusViewService -- name: google.ads.googleads.v6.services.PaymentsAccountService -- name: google.ads.googleads.v6.services.ProductBiddingCategoryConstantService -- name: google.ads.googleads.v6.services.ProductGroupViewService -- name: google.ads.googleads.v6.services.ReachPlanService -- name: google.ads.googleads.v6.services.RecommendationService -- name: google.ads.googleads.v6.services.RemarketingActionService -- name: google.ads.googleads.v6.services.SearchTermViewService -- name: google.ads.googleads.v6.services.SharedCriterionService -- name: google.ads.googleads.v6.services.SharedSetService -- name: google.ads.googleads.v6.services.ShoppingPerformanceViewService -- name: google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService -- name: google.ads.googleads.v6.services.TopicConstantService -- name: google.ads.googleads.v6.services.TopicViewService -- name: google.ads.googleads.v6.services.UserDataService -- name: google.ads.googleads.v6.services.UserInterestService -- name: google.ads.googleads.v6.services.UserListService -- name: google.ads.googleads.v6.services.UserLocationViewService -- name: google.ads.googleads.v6.services.VideoService - -types: -- name: google.ads.googleads.v6.errors.GoogleAdsFailure -- name: google.ads.googleads.v6.resources.BatchJob.BatchJobMetadata -- name: google.ads.googleads.v6.services.CreateCampaignExperimentMetadata - -documentation: - summary: 'Manage your Google Ads accounts, campaigns, and reports with this API.' - overview: |- - The Google Ads API enables an app to integrate with the Google Ads - platform. You can efficiently retrieve and change your Google Ads data - using the API, making it ideal for managing large or complex accounts and - campaigns. - -backend: - rules: - - selector: google.ads.googleads.v6.services.AccountBudgetProposalService.GetAccountBudgetProposal - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AccountBudgetProposalService.MutateAccountBudgetProposal - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AccountBudgetService.GetAccountBudget - deadline: 60.0 - - selector: 'google.ads.googleads.v6.services.AccountLinkService.*' - deadline: 600.0 - - selector: google.ads.googleads.v6.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupAdLabelService.GetAdGroupAdLabel - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupAdLabelService.MutateAdGroupAdLabels - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupAdService.GetAdGroupAd - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupAdService.MutateAdGroupAds - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupAudienceViewService.GetAdGroupAudienceView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupBidModifierService.GetAdGroupBidModifier - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupBidModifierService.MutateAdGroupBidModifiers - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupCriterionService.GetAdGroupCriterion - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupCriterionService.MutateAdGroupCriteria - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupFeedService.GetAdGroupFeed - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupFeedService.MutateAdGroupFeeds - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupLabelService.GetAdGroupLabel - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupLabelService.MutateAdGroupLabels - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupService.GetAdGroup - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupService.MutateAdGroups - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdGroupSimulationService.GetAdGroupSimulation - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdParameterService.GetAdParameter - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdParameterService.MutateAdParameters - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdScheduleViewService.GetAdScheduleView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdService.GetAd - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AdService.MutateAds - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AgeRangeViewService.GetAgeRangeView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AssetService.GetAsset - deadline: 60.0 - - selector: google.ads.googleads.v6.services.AssetService.MutateAssets - deadline: 60.0 - - selector: 'google.ads.googleads.v6.services.BatchJobService.*' - deadline: 60.0 - - selector: google.ads.googleads.v6.services.BiddingStrategyService.GetBiddingStrategy - deadline: 60.0 - - selector: google.ads.googleads.v6.services.BiddingStrategyService.MutateBiddingStrategies - deadline: 60.0 - - selector: google.ads.googleads.v6.services.BillingSetupService.GetBillingSetup - deadline: 60.0 - - selector: google.ads.googleads.v6.services.BillingSetupService.MutateBillingSetup - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignAssetService.GetCampaignAsset - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignAssetService.MutateCampaignAssets - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignAudienceViewService.GetCampaignAudienceView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignBidModifierService.GetCampaignBidModifier - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignBidModifierService.MutateCampaignBidModifiers - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignBudgetService.GetCampaignBudget - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignBudgetService.MutateCampaignBudgets - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignCriterionService.GetCampaignCriterion - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignCriterionService.MutateCampaignCriteria - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation - deadline: 60.0 - - selector: 'google.ads.googleads.v6.services.CampaignDraftService.*' - deadline: 60.0 - - selector: 'google.ads.googleads.v6.services.CampaignExperimentService.*' - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignExtensionSettingService.GetCampaignExtensionSetting - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignFeedService.GetCampaignFeed - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignFeedService.MutateCampaignFeeds - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignLabelService.GetCampaignLabel - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignLabelService.MutateCampaignLabels - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignService.GetCampaign - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignService.MutateCampaigns - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignSharedSetService.GetCampaignSharedSet - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CampaignSharedSetService.MutateCampaignSharedSets - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CarrierConstantService.GetCarrierConstant - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ChangeStatusService.GetChangeStatus - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ClickViewService.GetClickView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CombinedAudienceService.GetCombinedAudience - deadline: 600.0 - - selector: google.ads.googleads.v6.services.ConversionActionService.GetConversionAction - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ConversionActionService.MutateConversionActions - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ConversionAdjustmentUploadService.UploadConversionAdjustments - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ConversionUploadService.UploadCallConversions - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ConversionUploadService.UploadClickConversions - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CurrencyConstantService.GetCurrencyConstant - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomAudienceService.GetCustomAudience - deadline: 600.0 - - selector: google.ads.googleads.v6.services.CustomAudienceService.MutateCustomAudiences - deadline: 600.0 - - selector: google.ads.googleads.v6.services.CustomInterestService.GetCustomInterest - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomInterestService.MutateCustomInterests - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerClientLinkService.GetCustomerClientLink - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerClientLinkService.MutateCustomerClientLink - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerClientService.GetCustomerClient - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerExtensionSettingService.GetCustomerExtensionSetting - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerFeedService.GetCustomerFeed - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerFeedService.MutateCustomerFeeds - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerLabelService.GetCustomerLabel - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerLabelService.MutateCustomerLabels - deadline: 60.0 - - selector: 'google.ads.googleads.v6.services.CustomerManagerLinkService.*' - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria - deadline: 60.0 - - selector: 'google.ads.googleads.v6.services.CustomerService.*' - deadline: 60.0 - - selector: google.ads.googleads.v6.services.CustomerUserAccessInvitationService.GetCustomerUserAccessInvitation - deadline: 600.0 - - selector: google.ads.googleads.v6.services.CustomerUserAccessInvitationService.MutateCustomerUserAccessInvitation - deadline: 600.0 - - selector: google.ads.googleads.v6.services.CustomerUserAccessService.GetCustomerUserAccess - deadline: 600.0 - - selector: google.ads.googleads.v6.services.CustomerUserAccessService.MutateCustomerUserAccess - deadline: 600.0 - - selector: google.ads.googleads.v6.services.DetailPlacementViewService.GetDetailPlacementView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.DisplayKeywordViewService.GetDisplayKeywordView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.DistanceViewService.GetDistanceView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.DomainCategoryService.GetDomainCategory - deadline: 60.0 - - selector: google.ads.googleads.v6.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ExpandedLandingPageViewService.GetExpandedLandingPageView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ExtensionFeedItemService.GetExtensionFeedItem - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ExtensionFeedItemService.MutateExtensionFeedItems - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedItemService.GetFeedItem - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedItemService.MutateFeedItems - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedItemSetLinkService.GetFeedItemSetLink - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedItemSetLinkService.MutateFeedItemSetLinks - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedItemSetService.GetFeedItemSet - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedItemSetService.MutateFeedItemSets - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedItemTargetService.GetFeedItemTarget - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedItemTargetService.MutateFeedItemTargets - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedMappingService.GetFeedMapping - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedMappingService.MutateFeedMappings - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedPlaceholderViewService.GetFeedPlaceholderView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedService.GetFeed - deadline: 60.0 - - selector: google.ads.googleads.v6.services.FeedService.MutateFeeds - deadline: 60.0 - - selector: google.ads.googleads.v6.services.GenderViewService.GetGenderView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.GeoTargetConstantService.GetGeoTargetConstant - deadline: 60.0 - - selector: google.ads.googleads.v6.services.GeoTargetConstantService.SuggestGeoTargetConstants - deadline: 60.0 - - selector: google.ads.googleads.v6.services.GeographicViewService.GetGeographicView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.GoogleAdsFieldService.GetGoogleAdsField - deadline: 600.0 - - selector: google.ads.googleads.v6.services.GoogleAdsFieldService.SearchGoogleAdsFields - deadline: 600.0 - - selector: google.ads.googleads.v6.services.GoogleAdsService.Mutate - deadline: 600.0 - - selector: google.ads.googleads.v6.services.GoogleAdsService.Search - deadline: 3600.0 - - selector: google.ads.googleads.v6.services.GoogleAdsService.SearchStream - deadline: 3600.0 - - selector: google.ads.googleads.v6.services.GroupPlacementViewService.GetGroupPlacementView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.HotelGroupViewService.GetHotelGroupView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.HotelPerformanceViewService.GetHotelPerformanceView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.IncomeRangeViewService.GetIncomeRangeView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.InvoiceService.ListInvoices - deadline: 60.0 - - selector: google.ads.googleads.v6.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword - deadline: 60.0 - - selector: google.ads.googleads.v6.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords - deadline: 60.0 - - selector: google.ads.googleads.v6.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup - deadline: 60.0 - - selector: google.ads.googleads.v6.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups - deadline: 60.0 - - selector: google.ads.googleads.v6.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword - deadline: 60.0 - - selector: google.ads.googleads.v6.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords - deadline: 60.0 - - selector: google.ads.googleads.v6.services.KeywordPlanCampaignService.GetKeywordPlanCampaign - deadline: 60.0 - - selector: google.ads.googleads.v6.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns - deadline: 60.0 - - selector: google.ads.googleads.v6.services.KeywordPlanIdeaService.GenerateKeywordIdeas - deadline: 600.0 - - selector: 'google.ads.googleads.v6.services.KeywordPlanService.*' - deadline: 600.0 - - selector: google.ads.googleads.v6.services.KeywordPlanService.GetKeywordPlan - deadline: 60.0 - - selector: google.ads.googleads.v6.services.KeywordPlanService.MutateKeywordPlans - deadline: 60.0 - - selector: google.ads.googleads.v6.services.KeywordViewService.GetKeywordView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.LabelService.GetLabel - deadline: 60.0 - - selector: google.ads.googleads.v6.services.LabelService.MutateLabels - deadline: 60.0 - - selector: google.ads.googleads.v6.services.LandingPageViewService.GetLandingPageView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.LanguageConstantService.GetLanguageConstant - deadline: 60.0 - - selector: google.ads.googleads.v6.services.LocationViewService.GetLocationView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ManagedPlacementViewService.GetManagedPlacementView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.MediaFileService.GetMediaFile - deadline: 60.0 - - selector: google.ads.googleads.v6.services.MediaFileService.MutateMediaFiles - deadline: 60.0 - - selector: 'google.ads.googleads.v6.services.MerchantCenterLinkService.*' - deadline: 60.0 - - selector: google.ads.googleads.v6.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant - deadline: 60.0 - - selector: google.ads.googleads.v6.services.MobileDeviceConstantService.GetMobileDeviceConstant - deadline: 60.0 - - selector: 'google.ads.googleads.v6.services.OfflineUserDataJobService.*' - deadline: 600.0 - - selector: google.ads.googleads.v6.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant - deadline: 60.0 - - selector: google.ads.googleads.v6.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ParentalStatusViewService.GetParentalStatusView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.PaymentsAccountService.ListPaymentsAccounts - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ProductGroupViewService.GetProductGroupView - deadline: 60.0 - - selector: 'google.ads.googleads.v6.services.ReachPlanService.*' - deadline: 600.0 - - selector: 'google.ads.googleads.v6.services.RecommendationService.*' - deadline: 600.0 - - selector: google.ads.googleads.v6.services.RemarketingActionService.GetRemarketingAction - deadline: 60.0 - - selector: google.ads.googleads.v6.services.RemarketingActionService.MutateRemarketingActions - deadline: 60.0 - - selector: google.ads.googleads.v6.services.SearchTermViewService.GetSearchTermView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.SharedCriterionService.GetSharedCriterion - deadline: 60.0 - - selector: google.ads.googleads.v6.services.SharedCriterionService.MutateSharedCriteria - deadline: 60.0 - - selector: google.ads.googleads.v6.services.SharedSetService.GetSharedSet - deadline: 60.0 - - selector: google.ads.googleads.v6.services.SharedSetService.MutateSharedSets - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ShoppingPerformanceViewService.GetShoppingPerformanceView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink - deadline: 600.0 - - selector: google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId - deadline: 600.0 - - selector: google.ads.googleads.v6.services.TopicConstantService.GetTopicConstant - deadline: 60.0 - - selector: google.ads.googleads.v6.services.TopicViewService.GetTopicView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.UserDataService.UploadUserData - deadline: 600.0 - - selector: google.ads.googleads.v6.services.UserInterestService.GetUserInterest - deadline: 60.0 - - selector: google.ads.googleads.v6.services.UserListService.GetUserList - deadline: 60.0 - - selector: google.ads.googleads.v6.services.UserListService.MutateUserLists - deadline: 60.0 - - selector: google.ads.googleads.v6.services.UserLocationViewService.GetUserLocationView - deadline: 60.0 - - selector: google.ads.googleads.v6.services.VideoService.GetVideo - deadline: 60.0 - - selector: 'google.longrunning.Operations.*' - deadline: 60.0 - -http: - rules: - - selector: google.longrunning.Operations.CancelOperation - post: '/v6/{name=customers/*/operations/*}:cancel' - body: '*' - - selector: google.longrunning.Operations.DeleteOperation - delete: '/v6/{name=customers/*/operations/*}' - - selector: google.longrunning.Operations.GetOperation - get: '/v6/{name=customers/*/operations/*}' - - selector: google.longrunning.Operations.ListOperations - get: '/v6/{name=customers/*/operations}' - - selector: google.longrunning.Operations.WaitOperation - post: '/v6/{name=customers/*/operations/*}:wait' - body: '*' - -authentication: - rules: - - selector: google.ads.googleads.v6.services.AccountBudgetProposalService.GetAccountBudgetProposal - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AccountBudgetProposalService.MutateAccountBudgetProposal - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AccountBudgetService.GetAccountBudget - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.AccountLinkService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupAdLabelService.GetAdGroupAdLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupAdLabelService.MutateAdGroupAdLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupAdService.GetAdGroupAd - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupAdService.MutateAdGroupAds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupAudienceViewService.GetAdGroupAudienceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupBidModifierService.GetAdGroupBidModifier - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupBidModifierService.MutateAdGroupBidModifiers - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupCriterionService.GetAdGroupCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupCriterionService.MutateAdGroupCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupFeedService.GetAdGroupFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupFeedService.MutateAdGroupFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupLabelService.GetAdGroupLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupLabelService.MutateAdGroupLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupService.GetAdGroup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupService.MutateAdGroups - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdGroupSimulationService.GetAdGroupSimulation - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdParameterService.GetAdParameter - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdParameterService.MutateAdParameters - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdScheduleViewService.GetAdScheduleView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdService.GetAd - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AdService.MutateAds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AgeRangeViewService.GetAgeRangeView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AssetService.GetAsset - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.AssetService.MutateAssets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.BatchJobService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.BiddingStrategyService.GetBiddingStrategy - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.BiddingStrategyService.MutateBiddingStrategies - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.BillingSetupService.GetBillingSetup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.BillingSetupService.MutateBillingSetup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignAssetService.GetCampaignAsset - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignAssetService.MutateCampaignAssets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignAudienceViewService.GetCampaignAudienceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignBidModifierService.GetCampaignBidModifier - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignBidModifierService.MutateCampaignBidModifiers - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignBudgetService.GetCampaignBudget - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignBudgetService.MutateCampaignBudgets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignCriterionService.GetCampaignCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignCriterionService.MutateCampaignCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.CampaignDraftService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.CampaignExperimentService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignExtensionSettingService.GetCampaignExtensionSetting - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignFeedService.GetCampaignFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignFeedService.MutateCampaignFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignLabelService.GetCampaignLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignLabelService.MutateCampaignLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignService.GetCampaign - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignService.MutateCampaigns - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignSharedSetService.GetCampaignSharedSet - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CampaignSharedSetService.MutateCampaignSharedSets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CarrierConstantService.GetCarrierConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ChangeStatusService.GetChangeStatus - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ClickViewService.GetClickView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CombinedAudienceService.GetCombinedAudience - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ConversionActionService.GetConversionAction - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ConversionActionService.MutateConversionActions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ConversionAdjustmentUploadService.UploadConversionAdjustments - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ConversionUploadService.UploadCallConversions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ConversionUploadService.UploadClickConversions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CurrencyConstantService.GetCurrencyConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomAudienceService.GetCustomAudience - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomAudienceService.MutateCustomAudiences - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomInterestService.GetCustomInterest - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomInterestService.MutateCustomInterests - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerClientLinkService.GetCustomerClientLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerClientLinkService.MutateCustomerClientLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerClientService.GetCustomerClient - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerExtensionSettingService.GetCustomerExtensionSetting - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerFeedService.GetCustomerFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerFeedService.MutateCustomerFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerLabelService.GetCustomerLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerLabelService.MutateCustomerLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.CustomerManagerLinkService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.CustomerService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerUserAccessInvitationService.GetCustomerUserAccessInvitation - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerUserAccessInvitationService.MutateCustomerUserAccessInvitation - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerUserAccessService.GetCustomerUserAccess - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.CustomerUserAccessService.MutateCustomerUserAccess - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.DetailPlacementViewService.GetDetailPlacementView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.DisplayKeywordViewService.GetDisplayKeywordView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.DistanceViewService.GetDistanceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.DomainCategoryService.GetDomainCategory - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ExpandedLandingPageViewService.GetExpandedLandingPageView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ExtensionFeedItemService.GetExtensionFeedItem - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ExtensionFeedItemService.MutateExtensionFeedItems - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedItemService.GetFeedItem - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedItemService.MutateFeedItems - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedItemSetLinkService.GetFeedItemSetLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedItemSetLinkService.MutateFeedItemSetLinks - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedItemSetService.GetFeedItemSet - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedItemSetService.MutateFeedItemSets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedItemTargetService.GetFeedItemTarget - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedItemTargetService.MutateFeedItemTargets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedMappingService.GetFeedMapping - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedMappingService.MutateFeedMappings - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedPlaceholderViewService.GetFeedPlaceholderView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedService.GetFeed - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.FeedService.MutateFeeds - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.GenderViewService.GetGenderView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.GeoTargetConstantService.GetGeoTargetConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.GeoTargetConstantService.SuggestGeoTargetConstants - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.GeographicViewService.GetGeographicView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.GoogleAdsFieldService.GetGoogleAdsField - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.GoogleAdsFieldService.SearchGoogleAdsFields - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.GoogleAdsService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.GroupPlacementViewService.GetGroupPlacementView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.HotelGroupViewService.GetHotelGroupView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.HotelPerformanceViewService.GetHotelPerformanceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.IncomeRangeViewService.GetIncomeRangeView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.InvoiceService.ListInvoices - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.KeywordPlanCampaignService.GetKeywordPlanCampaign - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.KeywordPlanIdeaService.GenerateKeywordIdeas - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.KeywordPlanService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.KeywordViewService.GetKeywordView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.LabelService.GetLabel - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.LabelService.MutateLabels - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.LandingPageViewService.GetLandingPageView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.LanguageConstantService.GetLanguageConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.LocationViewService.GetLocationView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ManagedPlacementViewService.GetManagedPlacementView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.MediaFileService.GetMediaFile - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.MediaFileService.MutateMediaFiles - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.MerchantCenterLinkService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.MobileDeviceConstantService.GetMobileDeviceConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.OfflineUserDataJobService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ParentalStatusViewService.GetParentalStatusView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.PaymentsAccountService.ListPaymentsAccounts - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ProductGroupViewService.GetProductGroupView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.ReachPlanService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.ads.googleads.v6.services.RecommendationService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.RemarketingActionService.GetRemarketingAction - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.RemarketingActionService.MutateRemarketingActions - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.SearchTermViewService.GetSearchTermView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.SharedCriterionService.GetSharedCriterion - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.SharedCriterionService.MutateSharedCriteria - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.SharedSetService.GetSharedSet - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.SharedSetService.MutateSharedSets - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ShoppingPerformanceViewService.GetShoppingPerformanceView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.TopicConstantService.GetTopicConstant - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.TopicViewService.GetTopicView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.UserDataService.UploadUserData - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.UserInterestService.GetUserInterest - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.UserListService.GetUserList - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.UserListService.MutateUserLists - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.UserLocationViewService.GetUserLocationView - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: google.ads.googleads.v6.services.VideoService.GetVideo - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords - - selector: 'google.longrunning.Operations.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/adwords diff --git a/google/ads/googleads/v6/resources/BUILD.bazel b/google/ads/googleads/v6/resources/BUILD.bazel deleted file mode 100644 index d79eef3ca..000000000 --- a/google/ads/googleads/v6/resources/BUILD.bazel +++ /dev/null @@ -1,97 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "resources_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v6/common:common_proto", - "//google/ads/googleads/v6/enums:enums_proto", - "//google/ads/googleads/v6/errors:errors_proto", - "//google/api:annotations_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - "@com_google_protobuf//:field_mask_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_proto_library", -) - -java_proto_library( - name = "resources_java_proto", - deps = [":resources_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_proto_library", -) - -csharp_proto_library( - name = "resources_csharp_proto", - deps = [":resources_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_proto_library", -) - -ruby_proto_library( - name = "resources_ruby_proto", - deps = [":resources_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_proto_library", -) - -py_proto_library( - name = "resources_py_proto", - deps = [":resources_proto"], -) diff --git a/google/ads/googleads/v6/resources/account_budget.proto b/google/ads/googleads/v6/resources/account_budget.proto deleted file mode 100644 index 0cd6c671b..000000000 --- a/google/ads/googleads/v6/resources/account_budget.proto +++ /dev/null @@ -1,252 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/account_budget_proposal_type.proto"; -import "google/ads/googleads/v6/enums/account_budget_status.proto"; -import "google/ads/googleads/v6/enums/spending_limit_type.proto"; -import "google/ads/googleads/v6/enums/time_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the AccountBudget resource. - -// An account-level budget. It contains information about the budget itself, -// as well as the most recently approved changes to the budget and proposed -// changes that are pending approval. The proposed changes that are pending -// approval, if any, are found in 'pending_proposal'. Effective details about -// the budget are found in fields prefixed 'approved_', 'adjusted_' and those -// without a prefix. Since some effective details may differ from what the user -// had originally requested (e.g. spending limit), these differences are -// juxtaposed via 'proposed_', 'approved_', and possibly 'adjusted_' fields. -// -// This resource is mutated using AccountBudgetProposal and cannot be mutated -// directly. A budget may have at most one pending proposal at any given time. -// It is read through pending_proposal. -// -// Once approved, a budget may be subject to adjustments, such as credit -// adjustments. Adjustments create differences between the 'approved' and -// 'adjusted' fields, which would otherwise be identical. -message AccountBudget { - option (google.api.resource) = { - type: "googleads.googleapis.com/AccountBudget" - pattern: "customers/{customer_id}/accountBudgets/{account_budget_id}" - }; - - // A pending proposal associated with the enclosing account-level budget, - // if applicable. - message PendingAccountBudgetProposal { - // Output only. The resource name of the proposal. - // AccountBudgetProposal resource names have the form: - // - // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` - optional string account_budget_proposal = 12 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - } - ]; - - // Output only. The type of this proposal, e.g. END to end the budget associated - // with this proposal. - google.ads.googleads.v6.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name to assign to the account-level budget. - optional string name = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The start time in yyyy-MM-dd HH:mm:ss format. - optional string start_date_time = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A purchase order number is a value that helps users reference this budget - // in their monthly invoices. - optional string purchase_order_number = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Notes associated with this budget. - optional string notes = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The time when this account-level budget proposal was created. - // Formatted as yyyy-MM-dd HH:mm:ss. - optional string creation_date_time = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The end time of the account-level budget. - oneof end_time { - // Output only. The end time in yyyy-MM-dd HH:mm:ss format. - string end_date_time = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The end time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v6.enums.TimeTypeEnum.TimeType end_time_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The spending limit. - oneof spending_limit { - // Output only. The spending limit in micros. One million is equivalent to - // one unit. - int64 spending_limit_micros = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v6.enums.SpendingLimitTypeEnum.SpendingLimitType spending_limit_type = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - } - - // Output only. The resource name of the account-level budget. - // AccountBudget resource names have the form: - // - // `customers/{customer_id}/accountBudgets/{account_budget_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudget" - } - ]; - - // Output only. The ID of the account-level budget. - optional int64 id = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the billing setup associated with this account-level - // budget. BillingSetup resource names have the form: - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - optional string billing_setup = 24 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; - - // Output only. The status of this account-level budget. - google.ads.googleads.v6.enums.AccountBudgetStatusEnum.AccountBudgetStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the account-level budget. - optional string name = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The proposed start time of the account-level budget in - // yyyy-MM-dd HH:mm:ss format. If a start time type of NOW was proposed, - // this is the time of request. - optional string proposed_start_date_time = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved start time of the account-level budget in yyyy-MM-dd HH:mm:ss - // format. - // - // For example, if a new budget is approved after the proposed start time, - // the approved start time is the time of approval. - optional string approved_start_date_time = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total adjustments amount. - // - // An example of an adjustment is courtesy credits. - int64 total_adjustments_micros = 33 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The value of Ads that have been served, in micros. - // - // This includes overdelivery costs, in which case a credit might be - // automatically applied to the budget (see total_adjustments_micros). - int64 amount_served_micros = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A purchase order number is a value that helps users reference this budget - // in their monthly invoices. - optional string purchase_order_number = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Notes associated with the budget. - optional string notes = 36 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The pending proposal to modify this budget, if applicable. - PendingAccountBudgetProposal pending_proposal = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The proposed end time of the account-level budget. - oneof proposed_end_time { - // Output only. The proposed end time in yyyy-MM-dd HH:mm:ss format. - string proposed_end_date_time = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The proposed end time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v6.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The approved end time of the account-level budget. - // - // For example, if a budget's end time is updated and the proposal is approved - // after the proposed end time, the approved end time is the time of approval. - oneof approved_end_time { - // Output only. The approved end time in yyyy-MM-dd HH:mm:ss format. - string approved_end_date_time = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved end time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v6.enums.TimeTypeEnum.TimeType approved_end_time_type = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The proposed spending limit. - oneof proposed_spending_limit { - // Output only. The proposed spending limit in micros. One million is equivalent to - // one unit. - int64 proposed_spending_limit_micros = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The proposed spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v6.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The approved spending limit. - // - // For example, if the amount already spent by the account exceeds the - // proposed spending limit at the time the proposal is approved, the approved - // spending limit is set to the amount already spent. - oneof approved_spending_limit { - // Output only. The approved spending limit in micros. One million is equivalent to - // one unit. This will only be populated if the proposed spending limit - // is finite, and will always be greater than or equal to the - // proposed spending limit. - int64 approved_spending_limit_micros = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved spending limit as a well-defined type, e.g. INFINITE. This - // will only be populated if the approved spending limit is INFINITE. - google.ads.googleads.v6.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The spending limit after adjustments have been applied. Adjustments are - // stored in total_adjustments_micros. - // - // This value has the final say on how much the account is allowed to spend. - oneof adjusted_spending_limit { - // Output only. The adjusted spending limit in micros. One million is equivalent to - // one unit. - // - // If the approved spending limit is finite, the adjusted - // spending limit may vary depending on the types of adjustments applied - // to this budget, if applicable. - // - // The different kinds of adjustments are described here: - // https://support.google.com/google-ads/answer/1704323 - // - // For example, a debit adjustment reduces how much the account is - // allowed to spend. - int64 adjusted_spending_limit_micros = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The adjusted spending limit as a well-defined type, e.g. INFINITE. - // This will only be populated if the adjusted spending limit is INFINITE, - // which is guaranteed to be true if the approved spending limit is - // INFINITE. - google.ads.googleads.v6.enums.SpendingLimitTypeEnum.SpendingLimitType adjusted_spending_limit_type = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v6/resources/account_budget_proposal.proto b/google/ads/googleads/v6/resources/account_budget_proposal.proto deleted file mode 100644 index 540dc56cf..000000000 --- a/google/ads/googleads/v6/resources/account_budget_proposal.proto +++ /dev/null @@ -1,160 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/account_budget_proposal_status.proto"; -import "google/ads/googleads/v6/enums/account_budget_proposal_type.proto"; -import "google/ads/googleads/v6/enums/spending_limit_type.proto"; -import "google/ads/googleads/v6/enums/time_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the AccountBudgetProposal resource. - -// An account-level budget proposal. -// -// All fields prefixed with 'proposed' may not necessarily be applied directly. -// For example, proposed spending limits may be adjusted before their -// application. This is true if the 'proposed' field has an 'approved' -// counterpart, e.g. spending limits. -// -// Please note that the proposal type (proposal_type) changes which fields are -// required and which must remain empty. -message AccountBudgetProposal { - option (google.api.resource) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - pattern: "customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}" - }; - - // Immutable. The resource name of the proposal. - // AccountBudgetProposal resource names have the form: - // - // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - } - ]; - - // Output only. The ID of the proposal. - optional int64 id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The resource name of the billing setup associated with this proposal. - optional string billing_setup = 26 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; - - // Immutable. The resource name of the account-level budget associated with this - // proposal. - optional string account_budget = 27 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudget" - } - ]; - - // Immutable. The type of this proposal, e.g. END to end the budget associated with this - // proposal. - google.ads.googleads.v6.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The status of this proposal. - // When a new proposal is created, the status defaults to PENDING. - google.ads.googleads.v6.enums.AccountBudgetProposalStatusEnum.AccountBudgetProposalStatus status = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The name to assign to the account-level budget. - optional string proposed_name = 28 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The approved start date time in yyyy-mm-dd hh:mm:ss format. - optional string approved_start_date_time = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. A purchase order number is a value that enables the user to help them - // reference this budget in their monthly invoices. - optional string proposed_purchase_order_number = 35 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Notes associated with this budget. - optional string proposed_notes = 36 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The date time when this account-level budget proposal was created, which is - // not the same as its approval date time, if applicable. - optional string creation_date_time = 37 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The date time when this account-level budget was approved, if applicable. - optional string approval_date_time = 38 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The proposed start date time of the account-level budget, which cannot be - // in the past. - oneof proposed_start_time { - // Immutable. The proposed start date time in yyyy-mm-dd hh:mm:ss format. - string proposed_start_date_time = 29 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The proposed start date time as a well-defined type, e.g. NOW. - google.ads.googleads.v6.enums.TimeTypeEnum.TimeType proposed_start_time_type = 7 [(google.api.field_behavior) = IMMUTABLE]; - } - - // The proposed end date time of the account-level budget, which cannot be in - // the past. - oneof proposed_end_time { - // Immutable. The proposed end date time in yyyy-mm-dd hh:mm:ss format. - string proposed_end_date_time = 31 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The proposed end date time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v6.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9 [(google.api.field_behavior) = IMMUTABLE]; - } - - // The approved end date time of the account-level budget. - oneof approved_end_time { - // Output only. The approved end date time in yyyy-mm-dd hh:mm:ss format. - string approved_end_date_time = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved end date time as a well-defined type, e.g. FOREVER. - google.ads.googleads.v6.enums.TimeTypeEnum.TimeType approved_end_time_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The proposed spending limit. - oneof proposed_spending_limit { - // Immutable. The proposed spending limit in micros. One million is equivalent to - // one unit. - int64 proposed_spending_limit_micros = 33 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The proposed spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v6.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 11 [(google.api.field_behavior) = IMMUTABLE]; - } - - // The approved spending limit. - oneof approved_spending_limit { - // Output only. The approved spending limit in micros. One million is equivalent to - // one unit. - int64 approved_spending_limit_micros = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The approved spending limit as a well-defined type, e.g. INFINITE. - google.ads.googleads.v6.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v6/resources/account_link.proto b/google/ads/googleads/v6/resources/account_link.proto deleted file mode 100644 index 535dbb7a3..000000000 --- a/google/ads/googleads/v6/resources/account_link.proto +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/account_link_status.proto"; -import "google/ads/googleads/v6/enums/linked_account_type.proto"; -import "google/ads/googleads/v6/enums/mobile_app_vendor.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Represents the data sharing connection between a Google Ads account and -// another account -message AccountLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/AccountLink" - pattern: "customers/{customer_id}/accountLinks/{account_link_id}" - }; - - // Immutable. Resource name of the account link. - // AccountLink resource names have the form: - // `customers/{customer_id}/accountLinks/{account_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountLink" - } - ]; - - // Output only. The ID of the link. - // This field is read only. - optional int64 account_link_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the link. - google.ads.googleads.v6.enums.AccountLinkStatusEnum.AccountLinkStatus status = 3; - - // Output only. The type of the linked account. - google.ads.googleads.v6.enums.LinkedAccountTypeEnum.LinkedAccountType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // An account linked to this Google Ads account. - oneof linked_account { - // Immutable. A third party app analytics link. - ThirdPartyAppAnalyticsLinkIdentifier third_party_app_analytics = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Data partner link. - DataPartnerLinkIdentifier data_partner = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Google Ads link. - GoogleAdsLinkIdentifier google_ads = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} - -// The identifiers of a Third Party App Analytics Link. -message ThirdPartyAppAnalyticsLinkIdentifier { - // Immutable. The ID of the app analytics provider. - // This field should not be empty when creating a new third - // party app analytics link. It is unable to be modified after the creation of - // the link. - optional int64 app_analytics_provider_id = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A string that uniquely identifies a mobile application from which the data - // was collected to the Google Ads API. For iOS, the ID string is the 9 digit - // string that appears at the end of an App Store URL (e.g., "422689480" for - // "Gmail" whose App Store link is - // https://apps.apple.com/us/app/gmail-email-by-google/id422689480). For - // Android, the ID string is the application's package name (e.g., - // "com.google.android.gm" for "Gmail" given Google Play link - // https://play.google.com/store/apps/details?id=com.google.android.gm) - // This field should not be empty when creating a new third - // party app analytics link. It is unable to be modified after the creation of - // the link. - optional string app_id = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The vendor of the app. - // This field should not be empty when creating a new third - // party app analytics link. It is unable to be modified after the creation of - // the link. - google.ads.googleads.v6.enums.MobileAppVendorEnum.MobileAppVendor app_vendor = 3 [(google.api.field_behavior) = IMMUTABLE]; -} - -// The identifier for Data Partner account. -message DataPartnerLinkIdentifier { - // Immutable. The customer ID of the Data partner account. - // This field is required and should not be empty when creating a new - // data partner link. It is unable to be modified after the creation of - // the link. - optional int64 data_partner_id = 1 [(google.api.field_behavior) = IMMUTABLE]; -} - -// The identifier for Google Ads account. -message GoogleAdsLinkIdentifier { - // Immutable. The resource name of the Google Ads account. - // This field is required and should not be empty when creating a new - // Google Ads link. It is unable to be modified after the creation of - // the link. - optional string customer = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/ad.proto b/google/ads/googleads/v6/resources/ad.proto deleted file mode 100644 index b61310fc3..000000000 --- a/google/ads/googleads/v6/resources/ad.proto +++ /dev/null @@ -1,185 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/ad_type_infos.proto"; -import "google/ads/googleads/v6/common/custom_parameter.proto"; -import "google/ads/googleads/v6/common/final_app_url.proto"; -import "google/ads/googleads/v6/common/url_collection.proto"; -import "google/ads/googleads/v6/enums/ad_type.proto"; -import "google/ads/googleads/v6/enums/device.proto"; -import "google/ads/googleads/v6/enums/system_managed_entity_source.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad type. - -// An ad. -message Ad { - option (google.api.resource) = { - type: "googleads.googleapis.com/Ad" - pattern: "customers/{customer_id}/ads/{ad_id}" - }; - - // Immutable. The resource name of the ad. - // Ad resource names have the form: - // - // `customers/{customer_id}/ads/{ad_id}` - string resource_name = 37 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Ad" - } - ]; - - // Output only. The ID of the ad. - optional int64 id = 40 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The list of possible final URLs after all cross-domain redirects for the - // ad. - repeated string final_urls = 41; - - // A list of final app URLs that will be used on mobile if the user has the - // specific app installed. - repeated google.ads.googleads.v6.common.FinalAppUrl final_app_urls = 35; - - // The list of possible final mobile URLs after all cross-domain redirects - // for the ad. - repeated string final_mobile_urls = 42; - - // The URL template for constructing a tracking URL. - optional string tracking_url_template = 43; - - // The suffix to use when constructing a final URL. - optional string final_url_suffix = 44; - - // The list of mappings that can be used to substitute custom parameter tags - // in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - // For mutates, please use url custom parameter operations. - repeated google.ads.googleads.v6.common.CustomParameter url_custom_parameters = 10; - - // The URL that appears in the ad description for some ad formats. - optional string display_url = 45; - - // Output only. The type of ad. - google.ads.googleads.v6.enums.AdTypeEnum.AdType type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates if this ad was automatically added by Google Ads and not by a - // user. For example, this could happen when ads are automatically created as - // suggestions for new ads based on knowledge of how existing ads are - // performing. - optional bool added_by_google_ads = 46 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The device preference for the ad. You can only specify a preference for - // mobile devices. When this preference is set the ad will be preferred over - // other ads when being displayed on a mobile device. The ad can still be - // displayed on other device types, e.g. if no other ads are available. - // If unspecified (no device preference), all devices are targeted. - // This is only supported by some ad types. - google.ads.googleads.v6.enums.DeviceEnum.Device device_preference = 20; - - // Additional URLs for the ad that are tagged with a unique identifier that - // can be referenced from other fields in the ad. - repeated google.ads.googleads.v6.common.UrlCollection url_collections = 26; - - // Immutable. The name of the ad. This is only used to be able to identify the ad. It - // does not need to be unique and does not affect the served ad. The name - // field is currently only supported for DisplayUploadAd, ImageAd, - // ShoppingComparisonListingAd and VideoAd. - optional string name = 47 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. If this ad is system managed, then this field will indicate the source. - // This field is read-only. - google.ads.googleads.v6.enums.SystemManagedResourceSourceEnum.SystemManagedResourceSource system_managed_resource_source = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Details pertinent to the ad type. Exactly one value must be set. - oneof ad_data { - // Immutable. Details pertaining to a text ad. - google.ads.googleads.v6.common.TextAdInfo text_ad = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to an expanded text ad. - google.ads.googleads.v6.common.ExpandedTextAdInfo expanded_text_ad = 7; - - // Details pertaining to a call-only ad. - google.ads.googleads.v6.common.CallOnlyAdInfo call_only_ad = 13; - - // Immutable. Details pertaining to an Expanded Dynamic Search Ad. - // This type of ad has its headline, final URLs, and display URL - // auto-generated at serving time according to domain name specific - // information provided by `dynamic_search_ads_setting` linked at the - // campaign level. - google.ads.googleads.v6.common.ExpandedDynamicSearchAdInfo expanded_dynamic_search_ad = 14 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to a hotel ad. - google.ads.googleads.v6.common.HotelAdInfo hotel_ad = 15; - - // Details pertaining to a Smart Shopping ad. - google.ads.googleads.v6.common.ShoppingSmartAdInfo shopping_smart_ad = 17; - - // Details pertaining to a Shopping product ad. - google.ads.googleads.v6.common.ShoppingProductAdInfo shopping_product_ad = 18; - - // Immutable. Details pertaining to a Gmail ad. - google.ads.googleads.v6.common.GmailAdInfo gmail_ad = 21 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Details pertaining to an Image ad. - google.ads.googleads.v6.common.ImageAdInfo image_ad = 22 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to a Video ad. - google.ads.googleads.v6.common.VideoAdInfo video_ad = 24; - - // Details pertaining to a Video responsive ad. - google.ads.googleads.v6.common.VideoResponsiveAdInfo video_responsive_ad = 39; - - // Details pertaining to a responsive search ad. - google.ads.googleads.v6.common.ResponsiveSearchAdInfo responsive_search_ad = 25; - - // Details pertaining to a legacy responsive display ad. - google.ads.googleads.v6.common.LegacyResponsiveDisplayAdInfo legacy_responsive_display_ad = 28; - - // Details pertaining to an app ad. - google.ads.googleads.v6.common.AppAdInfo app_ad = 29; - - // Immutable. Details pertaining to a legacy app install ad. - google.ads.googleads.v6.common.LegacyAppInstallAdInfo legacy_app_install_ad = 30 [(google.api.field_behavior) = IMMUTABLE]; - - // Details pertaining to a responsive display ad. - google.ads.googleads.v6.common.ResponsiveDisplayAdInfo responsive_display_ad = 31; - - // Details pertaining to a local ad. - google.ads.googleads.v6.common.LocalAdInfo local_ad = 32; - - // Details pertaining to a display upload ad. - google.ads.googleads.v6.common.DisplayUploadAdInfo display_upload_ad = 33; - - // Details pertaining to an app engagement ad. - google.ads.googleads.v6.common.AppEngagementAdInfo app_engagement_ad = 34; - - // Details pertaining to a Shopping Comparison Listing ad. - google.ads.googleads.v6.common.ShoppingComparisonListingAdInfo shopping_comparison_listing_ad = 36; - } -} diff --git a/google/ads/googleads/v6/resources/ad_group.proto b/google/ads/googleads/v6/resources/ad_group.proto deleted file mode 100644 index cad917d50..000000000 --- a/google/ads/googleads/v6/resources/ad_group.proto +++ /dev/null @@ -1,176 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/custom_parameter.proto"; -import "google/ads/googleads/v6/common/explorer_auto_optimizer_setting.proto"; -import "google/ads/googleads/v6/common/targeting_setting.proto"; -import "google/ads/googleads/v6/enums/ad_group_ad_rotation_mode.proto"; -import "google/ads/googleads/v6/enums/ad_group_status.proto"; -import "google/ads/googleads/v6/enums/ad_group_type.proto"; -import "google/ads/googleads/v6/enums/bidding_source.proto"; -import "google/ads/googleads/v6/enums/targeting_dimension.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad group resource. - -// An ad group. -message AdGroup { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroup" - pattern: "customers/{customer_id}/adGroups/{ad_group_id}" - }; - - // Immutable. The resource name of the ad group. - // Ad group resource names have the form: - // - // `customers/{customer_id}/adGroups/{ad_group_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. The ID of the ad group. - optional int64 id = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the ad group. - // - // This field is required and should not be empty when creating new ad - // groups. - // - // It must contain fewer than 255 UTF-8 full-width characters. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - optional string name = 35; - - // The status of the ad group. - google.ads.googleads.v6.enums.AdGroupStatusEnum.AdGroupStatus status = 5; - - // Immutable. The type of the ad group. - google.ads.googleads.v6.enums.AdGroupTypeEnum.AdGroupType type = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // The ad rotation mode of the ad group. - google.ads.googleads.v6.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; - - // Output only. For draft or experiment ad groups, this field is the resource name of the - // base ad group from which this ad group was created. If a draft or - // experiment ad group does not have a base ad group, then this field is null. - // - // For base ad groups, this field equals the ad group resource name. - // - // This field is read-only. - optional string base_ad_group = 36 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // The URL template for constructing a tracking URL. - optional string tracking_url_template = 37; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v6.common.CustomParameter url_custom_parameters = 6; - - // Immutable. The campaign to which the ad group belongs. - optional string campaign = 38 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The maximum CPC (cost-per-click) bid. - optional int64 cpc_bid_micros = 39; - - // The maximum CPM (cost-per-thousand viewable impressions) bid. - optional int64 cpm_bid_micros = 40; - - // The target CPA (cost-per-acquisition). - optional int64 target_cpa_micros = 41; - - // Output only. The CPV (cost-per-view) bid. - optional int64 cpv_bid_micros = 42 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Average amount in micros that the advertiser is willing to pay for every - // thousand times the ad is shown. - optional int64 target_cpm_micros = 43; - - // The target ROAS (return-on-ad-spend) override. If the ad group's campaign - // bidding strategy is a standard Target ROAS strategy, then this field - // overrides the target ROAS specified in the campaign's bidding strategy. - // Otherwise, this value is ignored. - optional double target_roas = 44; - - // The percent cpc bid amount, expressed as a fraction of the advertised price - // for some good or service. The valid range for the fraction is [0,1) and the - // value stored here is 1,000,000 * [fraction]. - optional int64 percent_cpc_bid_micros = 45; - - // Settings for the Display Campaign Optimizer, initially termed "Explorer". - google.ads.googleads.v6.common.ExplorerAutoOptimizerSetting explorer_auto_optimizer_setting = 21; - - // Allows advertisers to specify a targeting dimension on which to place - // absolute bids. This is only applicable for campaigns that target only the - // display network and not search. - google.ads.googleads.v6.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; - - // URL template for appending params to Final URL. - optional string final_url_suffix = 46; - - // Setting for targeting related features. - google.ads.googleads.v6.common.TargetingSetting targeting_setting = 25; - - // Output only. The effective target CPA (cost-per-acquisition). - // This field is read-only. - optional int64 effective_target_cpa_micros = 47 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective target CPA. - // This field is read-only. - google.ads.googleads.v6.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective target ROAS (return-on-ad-spend). - // This field is read-only. - optional double effective_target_roas = 48 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective target ROAS. - // This field is read-only. - google.ads.googleads.v6.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource names of labels attached to this ad group. - repeated string labels = 49 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupLabel" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/ad_group_ad.proto b/google/ads/googleads/v6/resources/ad_group_ad.proto deleted file mode 100644 index 25da78904..000000000 --- a/google/ads/googleads/v6/resources/ad_group_ad.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/policy.proto"; -import "google/ads/googleads/v6/enums/ad_group_ad_status.proto"; -import "google/ads/googleads/v6/enums/ad_strength.proto"; -import "google/ads/googleads/v6/enums/policy_approval_status.proto"; -import "google/ads/googleads/v6/enums/policy_review_status.proto"; -import "google/ads/googleads/v6/resources/ad.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad group ad resource. - -// An ad group ad. -message AdGroupAd { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAd" - pattern: "customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}" - }; - - // Immutable. The resource name of the ad. - // Ad group ad resource names have the form: - // - // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // The status of the ad. - google.ads.googleads.v6.enums.AdGroupAdStatusEnum.AdGroupAdStatus status = 3; - - // Immutable. The ad group to which the ad belongs. - optional string ad_group = 9 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Immutable. The ad. - Ad ad = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Policy information for the ad. - AdGroupAdPolicySummary policy_summary = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Overall ad strength for this ad group ad. - google.ads.googleads.v6.enums.AdStrengthEnum.AdStrength ad_strength = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Contains policy information for an ad. -message AdGroupAdPolicySummary { - // Output only. The list of policy findings for this ad. - repeated google.ads.googleads.v6.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Where in the review process this ad is. - google.ads.googleads.v6.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The overall approval status of this ad, calculated based on the status of - // its individual policy topic entries. - google.ads.googleads.v6.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/ad_group_ad_asset_view.proto b/google/ads/googleads/v6/resources/ad_group_ad_asset_view.proto deleted file mode 100644 index 88cfbf658..000000000 --- a/google/ads/googleads/v6/resources/ad_group_ad_asset_view.proto +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/policy.proto"; -import "google/ads/googleads/v6/enums/asset_field_type.proto"; -import "google/ads/googleads/v6/enums/asset_performance_label.proto"; -import "google/ads/googleads/v6/enums/policy_approval_status.proto"; -import "google/ads/googleads/v6/enums/policy_review_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdAssetViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad group ad asset view resource. - -// A link between an AdGroupAd and an Asset. -// Currently we only support AdGroupAdAssetView for AppAds. -message AdGroupAdAssetView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAdAssetView" - pattern: "customers/{customer_id}/adGroupAdAssetViews/{ad_group_id}~{ad_id}~{asset_id}~{field_type}" - }; - - // Output only. The resource name of the ad group ad asset view. - // Ad group ad asset view resource names have the form (Before V4): - // - // `customers/{customer_id}/adGroupAdAssets/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}` - // - // Ad group ad asset view resource names have the form (Beginning from V4): - // - // `customers/{customer_id}/adGroupAdAssetViews/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdAssetView" - } - ]; - - // Output only. The ad group ad to which the asset is linked. - optional string ad_group_ad = 9 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // Output only. The asset which is linked to the ad group ad. - optional string asset = 10 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; - - // Output only. Role that the asset takes in the ad. - google.ads.googleads.v6.enums.AssetFieldTypeEnum.AssetFieldType field_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The status between the asset and the latest version of the ad. If true, the - // asset is linked to the latest version of the ad. If false, it means the - // link once existed but has been removed and is no longer present in the - // latest version of the ad. - optional bool enabled = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Policy information for the ad group ad asset. - AdGroupAdAssetPolicySummary policy_summary = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Performance of an asset linkage. - google.ads.googleads.v6.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel performance_label = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Contains policy information for an ad group ad asset. -message AdGroupAdAssetPolicySummary { - // Output only. The list of policy findings for the ad group ad asset. - repeated google.ads.googleads.v6.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Where in the review process this ad group ad asset is. - google.ads.googleads.v6.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The overall approval status of this ad group ad asset, calculated based on - // the status of its individual policy topic entries. - google.ads.googleads.v6.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/ad_group_ad_label.proto b/google/ads/googleads/v6/resources/ad_group_ad_label.proto deleted file mode 100644 index e90a5e979..000000000 --- a/google/ads/googleads/v6/resources/ad_group_ad_label.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdLabelProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad group ad label resource. - -// A relationship between an ad group ad and a label. -message AdGroupAdLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAdLabel" - pattern: "customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}" - }; - - // Immutable. The resource name of the ad group ad label. - // Ad group ad label resource names have the form: - // `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdLabel" - } - ]; - - // Immutable. The ad group ad to which the label is attached. - optional string ad_group_ad = 4 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // Immutable. The label assigned to the ad group ad. - optional string label = 5 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/ad_group_audience_view.proto b/google/ads/googleads/v6/resources/ad_group_audience_view.proto deleted file mode 100644 index 20456f0cb..000000000 --- a/google/ads/googleads/v6/resources/ad_group_audience_view.proto +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAudienceViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad group audience view resource. - -// An ad group audience view. -// Includes performance data from interests and remarketing lists for Display -// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), -// aggregated at the audience level. -message AdGroupAudienceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupAudienceView" - pattern: "customers/{customer_id}/adGroupAudienceViews/{ad_group_id}~{criterion_id}" - }; - - // Output only. The resource name of the ad group audience view. - // Ad group audience view resource names have the form: - // - // `customers/{customer_id}/adGroupAudienceViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/ad_group_bid_modifier.proto b/google/ads/googleads/v6/resources/ad_group_bid_modifier.proto deleted file mode 100644 index 071ec56cb..000000000 --- a/google/ads/googleads/v6/resources/ad_group_bid_modifier.proto +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/criteria.proto"; -import "google/ads/googleads/v6/enums/bid_modifier_source.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupBidModifierProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad group bid modifier resource. - -// Represents an ad group bid modifier. -message AdGroupBidModifier { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - pattern: "customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}" - }; - - // Immutable. The resource name of the ad group bid modifier. - // Ad group bid modifier resource names have the form: - // - // `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - } - ]; - - // Immutable. The ad group to which this criterion belongs. - optional string ad_group = 13 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. The ID of the criterion to bid modify. - // - // This field is ignored for mutates. - optional int64 criterion_id = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bid when the criterion matches. The modifier must be - // in the range: 0.1 - 10.0. The range is 1.0 - 6.0 for PreferredContent. - // Use 0 to opt out of a Device type. - optional double bid_modifier = 15; - - // Output only. The base ad group from which this draft/trial adgroup bid modifier was - // created. If ad_group is a base ad group then this field will be equal to - // ad_group. If the ad group was created in the draft or trial and has no - // corresponding base ad group, then this field will be null. - // This field is readonly. - optional string base_ad_group = 16 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Bid modifier source. - google.ads.googleads.v6.enums.BidModifierSourceEnum.BidModifierSource bid_modifier_source = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The criterion of this ad group bid modifier. - // - // Required in create operations starting in V5. - oneof criterion { - // Immutable. Criterion for hotel date selection (default dates vs. user selected). - google.ads.googleads.v6.common.HotelDateSelectionTypeInfo hotel_date_selection_type = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Criterion for number of days prior to the stay the booking is being made. - google.ads.googleads.v6.common.HotelAdvanceBookingWindowInfo hotel_advance_booking_window = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Criterion for length of hotel stay in nights. - google.ads.googleads.v6.common.HotelLengthOfStayInfo hotel_length_of_stay = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Criterion for day of the week the booking is for. - google.ads.googleads.v6.common.HotelCheckInDayInfo hotel_check_in_day = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A device criterion. - google.ads.googleads.v6.common.DeviceInfo device = 11 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A preferred content criterion. - google.ads.googleads.v6.common.PreferredContentInfo preferred_content = 12 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v6/resources/ad_group_criterion.proto b/google/ads/googleads/v6/resources/ad_group_criterion.proto deleted file mode 100644 index 1c947806f..000000000 --- a/google/ads/googleads/v6/resources/ad_group_criterion.proto +++ /dev/null @@ -1,278 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/criteria.proto"; -import "google/ads/googleads/v6/common/custom_parameter.proto"; -import "google/ads/googleads/v6/enums/ad_group_criterion_approval_status.proto"; -import "google/ads/googleads/v6/enums/ad_group_criterion_status.proto"; -import "google/ads/googleads/v6/enums/bidding_source.proto"; -import "google/ads/googleads/v6/enums/criterion_system_serving_status.proto"; -import "google/ads/googleads/v6/enums/criterion_type.proto"; -import "google/ads/googleads/v6/enums/quality_score_bucket.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad group criterion resource. - -// An ad group criterion. -message AdGroupCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupCriterion" - pattern: "customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}" - }; - - // A container for ad group criterion quality information. - message QualityInfo { - // Output only. The quality score. - // - // This field may not be populated if Google does not have enough - // information to determine a value. - optional int32 quality_score = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The performance of the ad compared to other advertisers. - google.ads.googleads.v6.enums.QualityScoreBucketEnum.QualityScoreBucket creative_quality_score = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The quality score of the landing page. - google.ads.googleads.v6.enums.QualityScoreBucketEnum.QualityScoreBucket post_click_quality_score = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The click-through rate compared to that of other advertisers. - google.ads.googleads.v6.enums.QualityScoreBucketEnum.QualityScoreBucket search_predicted_ctr = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Estimates for criterion bids at various positions. - message PositionEstimates { - // Output only. The estimate of the CPC bid required for ad to be shown on first - // page of search results. - optional int64 first_page_cpc_micros = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimate of the CPC bid required for ad to be displayed in first - // position, at the top of the first page of search results. - optional int64 first_position_cpc_micros = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimate of the CPC bid required for ad to be displayed at the top - // of the first page of search results. - optional int64 top_of_page_cpc_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimate of how many clicks per week you might get by changing your - // keyword bid to the value in first_position_cpc_micros. - optional int64 estimated_add_clicks_at_first_position_cpc = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimate of how your cost per week might change when changing your - // keyword bid to the value in first_position_cpc_micros. - optional int64 estimated_add_cost_at_first_position_cpc = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the ad group criterion. - // Ad group criterion resource names have the form: - // - // `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Output only. The ID of the criterion. - // - // This field is ignored for mutates. - optional int64 criterion_id = 56 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the criterion. - // - // This is the status of the ad group criterion entity, set by the client. - // Note: UI reports may incorporate additional information that affects - // whether a criterion is eligible to run. In some cases a criterion that's - // REMOVED in the API can still show as enabled in the UI. - // For example, campaigns by default show to users of all age ranges unless - // excluded. The UI will show each age range as "enabled", since they're - // eligible to see the ads; but AdGroupCriterion.status will show "removed", - // since no positive criterion was added. - google.ads.googleads.v6.enums.AdGroupCriterionStatusEnum.AdGroupCriterionStatus status = 3; - - // Output only. Information regarding the quality of the criterion. - QualityInfo quality_info = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The ad group to which the criterion belongs. - optional string ad_group = 57 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. The type of the criterion. - google.ads.googleads.v6.enums.CriterionTypeEnum.CriterionType type = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Whether to target (`false`) or exclude (`true`) the criterion. - // - // This field is immutable. To switch a criterion from positive to negative, - // remove then re-add it. - optional bool negative = 58 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Serving status of the criterion. - google.ads.googleads.v6.enums.CriterionSystemServingStatusEnum.CriterionSystemServingStatus system_serving_status = 52 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Approval status of the criterion. - google.ads.googleads.v6.enums.AdGroupCriterionApprovalStatusEnum.AdGroupCriterionApprovalStatus approval_status = 53 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of disapproval reasons of the criterion. - // - // The different reasons for disapproving a criterion can be found here: - // https://support.google.com/adspolicy/answer/6008942 - // - // This field is read-only. - repeated string disapproval_reasons = 59 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bid when the criterion matches. The modifier must be - // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. - optional double bid_modifier = 61; - - // The CPC (cost-per-click) bid. - optional int64 cpc_bid_micros = 62; - - // The CPM (cost-per-thousand viewable impressions) bid. - optional int64 cpm_bid_micros = 63; - - // The CPV (cost-per-view) bid. - optional int64 cpv_bid_micros = 64; - - // The CPC bid amount, expressed as a fraction of the advertised price - // for some good or service. The valid range for the fraction is [0,1) and the - // value stored here is 1,000,000 * [fraction]. - optional int64 percent_cpc_bid_micros = 65; - - // Output only. The effective CPC (cost-per-click) bid. - optional int64 effective_cpc_bid_micros = 66 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective CPM (cost-per-thousand viewable impressions) bid. - optional int64 effective_cpm_bid_micros = 67 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective CPV (cost-per-view) bid. - optional int64 effective_cpv_bid_micros = 68 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The effective Percent CPC bid amount. - optional int64 effective_percent_cpc_bid_micros = 69 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective CPC bid. - google.ads.googleads.v6.enums.BiddingSourceEnum.BiddingSource effective_cpc_bid_source = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective CPM bid. - google.ads.googleads.v6.enums.BiddingSourceEnum.BiddingSource effective_cpm_bid_source = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective CPV bid. - google.ads.googleads.v6.enums.BiddingSourceEnum.BiddingSource effective_cpv_bid_source = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Source of the effective Percent CPC bid. - google.ads.googleads.v6.enums.BiddingSourceEnum.BiddingSource effective_percent_cpc_bid_source = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimates for criterion bids at various positions. - PositionEstimates position_estimates = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The list of possible final URLs after all cross-domain redirects for the - // ad. - repeated string final_urls = 70; - - // The list of possible final mobile URLs after all cross-domain redirects. - repeated string final_mobile_urls = 71; - - // URL template for appending params to final URL. - optional string final_url_suffix = 72; - - // The URL template for constructing a tracking URL. - optional string tracking_url_template = 73; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v6.common.CustomParameter url_custom_parameters = 14; - - // The ad group criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. Keyword. - google.ads.googleads.v6.common.KeywordInfo keyword = 27 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v6.common.PlacementInfo placement = 28 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile app category. - google.ads.googleads.v6.common.MobileAppCategoryInfo mobile_app_category = 29 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile application. - google.ads.googleads.v6.common.MobileApplicationInfo mobile_application = 30 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Listing group. - google.ads.googleads.v6.common.ListingGroupInfo listing_group = 32 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Age range. - google.ads.googleads.v6.common.AgeRangeInfo age_range = 36 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Gender. - google.ads.googleads.v6.common.GenderInfo gender = 37 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Income range. - google.ads.googleads.v6.common.IncomeRangeInfo income_range = 38 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Parental status. - google.ads.googleads.v6.common.ParentalStatusInfo parental_status = 39 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User List. - google.ads.googleads.v6.common.UserListInfo user_list = 42 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v6.common.YouTubeVideoInfo youtube_video = 40 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v6.common.YouTubeChannelInfo youtube_channel = 41 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Topic. - google.ads.googleads.v6.common.TopicInfo topic = 43 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User Interest. - google.ads.googleads.v6.common.UserInterestInfo user_interest = 45 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Webpage - google.ads.googleads.v6.common.WebpageInfo webpage = 46 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. App Payment Model. - google.ads.googleads.v6.common.AppPaymentModelInfo app_payment_model = 47 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Affinity. - google.ads.googleads.v6.common.CustomAffinityInfo custom_affinity = 48 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Intent. - google.ads.googleads.v6.common.CustomIntentInfo custom_intent = 49 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Audience. - google.ads.googleads.v6.common.CustomAudienceInfo custom_audience = 74 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Combined Audience. - google.ads.googleads.v6.common.CombinedAudienceInfo combined_audience = 75 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v6/resources/ad_group_criterion_label.proto b/google/ads/googleads/v6/resources/ad_group_criterion_label.proto deleted file mode 100644 index 92c1d3a17..000000000 --- a/google/ads/googleads/v6/resources/ad_group_criterion_label.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionLabelProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad group criterion label resource. - -// A relationship between an ad group criterion and a label. -message AdGroupCriterionLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupCriterionLabel" - pattern: "customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}" - }; - - // Immutable. The resource name of the ad group criterion label. - // Ad group criterion label resource names have the form: - // `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionLabel" - } - ]; - - // Immutable. The ad group criterion to which the label is attached. - optional string ad_group_criterion = 4 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Immutable. The label assigned to the ad group criterion. - optional string label = 5 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/ad_group_criterion_simulation.proto b/google/ads/googleads/v6/resources/ad_group_criterion_simulation.proto deleted file mode 100644 index 2bea3b5b9..000000000 --- a/google/ads/googleads/v6/resources/ad_group_criterion_simulation.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/simulation.proto"; -import "google/ads/googleads/v6/enums/simulation_modification_method.proto"; -import "google/ads/googleads/v6/enums/simulation_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionSimulationProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad group criterion simulation resource. - -// An ad group criterion simulation. Supported combinations of advertising -// channel type, criterion type, simulation type, and simulation modification -// method are detailed below respectively. Hotel AdGroupCriterion simulation -// operations starting in V5. -// -// 1. DISPLAY - KEYWORD - CPC_BID - UNIFORM -// 2. SEARCH - KEYWORD - CPC_BID - UNIFORM -// 3. SHOPPING - LISTING_GROUP - CPC_BID - UNIFORM -// 4. HOTEL - LISTING_GROUP - CPC_BID - UNIFORM -// 5. HOTEL - LISTING_GROUP - PERCENT_CPC_BID - UNIFORM -message AdGroupCriterionSimulation { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupCriterionSimulation" - pattern: "customers/{customer_id}/adGroupCriterionSimulations/{ad_group_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}" - }; - - // Output only. The resource name of the ad group criterion simulation. - // Ad group criterion simulation resource names have the form: - // - // `customers/{customer_id}/adGroupCriterionSimulations/{ad_group_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionSimulation" - } - ]; - - // Output only. AdGroup ID of the simulation. - optional int64 ad_group_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Criterion ID of the simulation. - optional int64 criterion_id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The field that the simulation modifies. - google.ads.googleads.v6.enums.SimulationTypeEnum.SimulationType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. How the simulation modifies the field. - google.ads.googleads.v6.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. First day on which the simulation is based, in YYYY-MM-DD format. - optional string start_date = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Last day on which the simulation is based, in YYYY-MM-DD format. - optional string end_date = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // List of simulation points. - oneof point_list { - // Output only. Simulation points if the simulation type is CPC_BID. - google.ads.googleads.v6.common.CpcBidSimulationPointList cpc_bid_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Simulation points if the simulation type is PERCENT_CPC_BID. - google.ads.googleads.v6.common.PercentCpcBidSimulationPointList percent_cpc_bid_point_list = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v6/resources/ad_group_extension_setting.proto b/google/ads/googleads/v6/resources/ad_group_extension_setting.proto deleted file mode 100644 index 3771e3b81..000000000 --- a/google/ads/googleads/v6/resources/ad_group_extension_setting.proto +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/extension_setting_device.proto"; -import "google/ads/googleads/v6/enums/extension_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupExtensionSettingProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the AdGroupExtensionSetting resource. - -// An ad group extension setting. -message AdGroupExtensionSetting { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupExtensionSetting" - pattern: "customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}" - }; - - // Immutable. The resource name of the ad group extension setting. - // AdGroupExtensionSetting resource names have the form: - // - // `customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupExtensionSetting" - } - ]; - - // Immutable. The extension type of the ad group extension setting. - google.ads.googleads.v6.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The resource name of the ad group. The linked extension feed items will - // serve under this ad group. - // AdGroup resource names have the form: - // - // `customers/{customer_id}/adGroups/{ad_group_id}` - optional string ad_group = 6 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // The resource names of the extension feed items to serve under the ad group. - // ExtensionFeedItem resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - repeated string extension_feed_items = 7 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - }]; - - // The device for which the extensions will serve. Optional. - google.ads.googleads.v6.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; -} diff --git a/google/ads/googleads/v6/resources/ad_group_feed.proto b/google/ads/googleads/v6/resources/ad_group_feed.proto deleted file mode 100644 index fdfd88d66..000000000 --- a/google/ads/googleads/v6/resources/ad_group_feed.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/matching_function.proto"; -import "google/ads/googleads/v6/enums/feed_link_status.proto"; -import "google/ads/googleads/v6/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupFeedProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the AdGroupFeed resource. - -// An ad group feed. -message AdGroupFeed { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupFeed" - pattern: "customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id}" - }; - - // Immutable. The resource name of the ad group feed. - // Ad group feed resource names have the form: - // - // `customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id} - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupFeed" - } - ]; - - // Immutable. The feed being linked to the ad group. - optional string feed = 7 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Immutable. The ad group being linked to the feed. - optional string ad_group = 8 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Indicates which placeholder types the feed may populate under the connected - // ad group. Required. - repeated google.ads.googleads.v6.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; - - // Matching function associated with the AdGroupFeed. - // The matching function is used to filter the set of feed items selected. - // Required. - google.ads.googleads.v6.common.MatchingFunction matching_function = 5; - - // Output only. Status of the ad group feed. - // This field is read-only. - google.ads.googleads.v6.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/ad_group_label.proto b/google/ads/googleads/v6/resources/ad_group_label.proto deleted file mode 100644 index a601d877f..000000000 --- a/google/ads/googleads/v6/resources/ad_group_label.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupLabelProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad group label resource. - -// A relationship between an ad group and a label. -message AdGroupLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupLabel" - pattern: "customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}" - }; - - // Immutable. The resource name of the ad group label. - // Ad group label resource names have the form: - // `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupLabel" - } - ]; - - // Immutable. The ad group to which the label is attached. - optional string ad_group = 4 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Immutable. The label assigned to the ad group. - optional string label = 5 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/ad_group_simulation.proto b/google/ads/googleads/v6/resources/ad_group_simulation.proto deleted file mode 100644 index b151fad0c..000000000 --- a/google/ads/googleads/v6/resources/ad_group_simulation.proto +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/simulation.proto"; -import "google/ads/googleads/v6/enums/simulation_modification_method.proto"; -import "google/ads/googleads/v6/enums/simulation_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupSimulationProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad group simulation resource. - -// An ad group simulation. Supported combinations of advertising -// channel type, simulation type and simulation modification method is -// detailed below respectively. -// -// 1. SEARCH - CPC_BID - DEFAULT -// 2. SEARCH - CPC_BID - UNIFORM -// 3. SEARCH - TARGET_CPA - UNIFORM -// 4. SEARCH - TARGET_ROAS - UNIFORM -// 5. DISPLAY - CPC_BID - DEFAULT -// 6. DISPLAY - CPC_BID - UNIFORM -// 7. DISPLAY - TARGET_CPA - UNIFORM -// 8. VIDEO - CPV_BID - DEFAULT -// 9. VIDEO - CPV_BID - UNIFORM -message AdGroupSimulation { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdGroupSimulation" - pattern: "customers/{customer_id}/adGroupSimulations/{ad_group_id}~{type}~{modification_method}~{start_date}~{end_date}" - }; - - // Output only. The resource name of the ad group simulation. - // Ad group simulation resource names have the form: - // - // `customers/{customer_id}/adGroupSimulations/{ad_group_id}~{type}~{modification_method}~{start_date}~{end_date}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupSimulation" - } - ]; - - // Output only. Ad group id of the simulation. - optional int64 ad_group_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The field that the simulation modifies. - google.ads.googleads.v6.enums.SimulationTypeEnum.SimulationType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. How the simulation modifies the field. - google.ads.googleads.v6.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. First day on which the simulation is based, in YYYY-MM-DD format. - optional string start_date = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Last day on which the simulation is based, in YYYY-MM-DD format - optional string end_date = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // List of simulation points. - oneof point_list { - // Output only. Simulation points if the simulation type is CPC_BID. - google.ads.googleads.v6.common.CpcBidSimulationPointList cpc_bid_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Simulation points if the simulation type is CPV_BID. - google.ads.googleads.v6.common.CpvBidSimulationPointList cpv_bid_point_list = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Simulation points if the simulation type is TARGET_CPA. - google.ads.googleads.v6.common.TargetCpaSimulationPointList target_cpa_point_list = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Simulation points if the simulation type is TARGET_ROAS. - google.ads.googleads.v6.common.TargetRoasSimulationPointList target_roas_point_list = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v6/resources/ad_parameter.proto b/google/ads/googleads/v6/resources/ad_parameter.proto deleted file mode 100644 index 24b710f5e..000000000 --- a/google/ads/googleads/v6/resources/ad_parameter.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdParameterProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad parameter resource. - -// An ad parameter that is used to update numeric values (such as prices or -// inventory levels) in any text line of an ad (including URLs). There can -// be a maximum of two AdParameters per ad group criterion. (One with -// parameter_index = 1 and one with parameter_index = 2.) -// In the ad the parameters are referenced by a placeholder of the form -// "{param#:value}". E.g. "{param1:$17}" -message AdParameter { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdParameter" - pattern: "customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}" - }; - - // Immutable. The resource name of the ad parameter. - // Ad parameter resource names have the form: - // - // `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdParameter" - } - ]; - - // Immutable. The ad group criterion that this ad parameter belongs to. - optional string ad_group_criterion = 5 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Immutable. The unique index of this ad parameter. Must be either 1 or 2. - optional int64 parameter_index = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Numeric value to insert into the ad text. The following restrictions - // apply: - // - Can use comma or period as a separator, with an optional period or - // comma (respectively) for fractional values. For example, 1,000,000.00 - // and 2.000.000,10 are valid. - // - Can be prepended or appended with a currency symbol. For example, - // $99.99 is valid. - // - Can be prepended or appended with a currency code. For example, 99.99USD - // and EUR200 are valid. - // - Can use '%'. For example, 1.0% and 1,0% are valid. - // - Can use plus or minus. For example, -10.99 and 25+ are valid. - // - Can use '/' between two numbers. For example 4/1 and 0.95/0.45 are - // valid. - optional string insertion_text = 7; -} diff --git a/google/ads/googleads/v6/resources/ad_schedule_view.proto b/google/ads/googleads/v6/resources/ad_schedule_view.proto deleted file mode 100644 index 586c23eee..000000000 --- a/google/ads/googleads/v6/resources/ad_schedule_view.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AdScheduleViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ad schedule view resource. - -// An ad schedule view summarizes the performance of campaigns by -// AdSchedule criteria. -message AdScheduleView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AdScheduleView" - pattern: "customers/{customer_id}/adScheduleViews/{campaign_id}~{criterion_id}" - }; - - // Output only. The resource name of the ad schedule view. - // AdSchedule view resource names have the form: - // - // `customers/{customer_id}/adScheduleViews/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdScheduleView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/age_range_view.proto b/google/ads/googleads/v6/resources/age_range_view.proto deleted file mode 100644 index 5a16a488b..000000000 --- a/google/ads/googleads/v6/resources/age_range_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AgeRangeViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the age range view resource. - -// An age range view. -message AgeRangeView { - option (google.api.resource) = { - type: "googleads.googleapis.com/AgeRangeView" - pattern: "customers/{customer_id}/ageRangeViews/{ad_group_id}~{criterion_id}" - }; - - // Output only. The resource name of the age range view. - // Age range view resource names have the form: - // - // `customers/{customer_id}/ageRangeViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AgeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/asset.proto b/google/ads/googleads/v6/resources/asset.proto deleted file mode 100644 index fca54daee..000000000 --- a/google/ads/googleads/v6/resources/asset.proto +++ /dev/null @@ -1,106 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/asset_types.proto"; -import "google/ads/googleads/v6/common/policy.proto"; -import "google/ads/googleads/v6/enums/asset_type.proto"; -import "google/ads/googleads/v6/enums/policy_approval_status.proto"; -import "google/ads/googleads/v6/enums/policy_review_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "AssetProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the asset resource. - -// Asset is a part of an ad which can be shared across multiple ads. -// It can be an image (ImageAsset), a video (YoutubeVideoAsset), etc. -message Asset { - option (google.api.resource) = { - type: "googleads.googleapis.com/Asset" - pattern: "customers/{customer_id}/assets/{asset_id}" - }; - - // Immutable. The resource name of the asset. - // Asset resource names have the form: - // - // `customers/{customer_id}/assets/{asset_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; - - // Output only. The ID of the asset. - optional int64 id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional name of the asset. - optional string name = 12; - - // Output only. Type of the asset. - google.ads.googleads.v6.enums.AssetTypeEnum.AssetType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // A list of possible final URLs after all cross domain redirects. - repeated string final_urls = 14; - - // Output only. Policy information for the asset. - AssetPolicySummary policy_summary = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The specific type of the asset. - oneof asset_data { - // Immutable. A YouTube video asset. - google.ads.googleads.v6.common.YoutubeVideoAsset youtube_video_asset = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A media bundle asset. - google.ads.googleads.v6.common.MediaBundleAsset media_bundle_asset = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. An image asset. - google.ads.googleads.v6.common.ImageAsset image_asset = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A text asset. - google.ads.googleads.v6.common.TextAsset text_asset = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // A lead form asset. - google.ads.googleads.v6.common.LeadFormAsset lead_form_asset = 9; - - // A book on google asset. - google.ads.googleads.v6.common.BookOnGoogleAsset book_on_google_asset = 10; - } -} - -// Contains policy information for an asset. -message AssetPolicySummary { - // Output only. The list of policy findings for this asset. - repeated google.ads.googleads.v6.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Where in the review process this asset is. - google.ads.googleads.v6.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The overall approval status of this asset, calculated based on the status - // of its individual policy topic entries. - google.ads.googleads.v6.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/batch_job.proto b/google/ads/googleads/v6/resources/batch_job.proto deleted file mode 100644 index 26d0b53ca..000000000 --- a/google/ads/googleads/v6/resources/batch_job.proto +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/batch_job_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the batch job resource. - -// A list of mutates being processed asynchronously. The mutates are uploaded -// by the user. The mutates themselves aren't readable and the results of the -// job can only be read using BatchJobService.ListBatchJobResults. -message BatchJob { - option (google.api.resource) = { - type: "googleads.googleapis.com/BatchJob" - pattern: "customers/{customer_id}/batchJobs/{batch_job_id}" - }; - - // Additional information about the batch job. This message is also used as - // metadata returned in batch job Long Running Operations. - message BatchJobMetadata { - // Output only. The time when this batch job was created. - // Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:00" - optional string creation_date_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The time when this batch job started running. - // Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:30" - optional string start_date_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The time when this batch job was completed. - // Formatted as yyyy-MM-dd HH:mm:ss. Example: "2018-03-05 09:16:00" - optional string completion_date_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The fraction (between 0.0 and 1.0) of mutates that have been processed. - // This is empty if the job hasn't started running yet. - optional double estimated_completion_ratio = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of mutate operations in the batch job. - optional int64 operation_count = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of mutate operations executed by the batch job. - // Present only if the job has started running. - optional int64 executed_operation_count = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the batch job. - // Batch job resource names have the form: - // - // `customers/{customer_id}/batchJobs/{batch_job_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; - - // Output only. ID of this batch job. - optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The next sequence token to use when adding operations. Only set when the - // batch job status is PENDING. - optional string next_add_sequence_token = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Contains additional information about this batch job. - BatchJobMetadata metadata = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Status of this batch job. - google.ads.googleads.v6.enums.BatchJobStatusEnum.BatchJobStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the long-running operation that can be used to poll - // for completion. Only set when the batch job status is RUNNING or DONE. - optional string long_running_operation = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/bidding_strategy.proto b/google/ads/googleads/v6/resources/bidding_strategy.proto deleted file mode 100644 index bb78f3fde..000000000 --- a/google/ads/googleads/v6/resources/bidding_strategy.proto +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/bidding.proto"; -import "google/ads/googleads/v6/enums/bidding_strategy_status.proto"; -import "google/ads/googleads/v6/enums/bidding_strategy_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the BiddingStrategy resource - -// A bidding strategy. -message BiddingStrategy { - option (google.api.resource) = { - type: "googleads.googleapis.com/BiddingStrategy" - pattern: "customers/{customer_id}/biddingStrategies/{bidding_strategy_id}" - }; - - // Immutable. The resource name of the bidding strategy. - // Bidding strategy resource names have the form: - // - // `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BiddingStrategy" - } - ]; - - // Output only. The ID of the bidding strategy. - optional int64 id = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the bidding strategy. - // All bidding strategies within an account must be named distinctly. - // - // The length of this string should be between 1 and 255, inclusive, - // in UTF-8 bytes, (trimmed). - optional string name = 17; - - // Output only. The status of the bidding strategy. - // - // This field is read-only. - google.ads.googleads.v6.enums.BiddingStrategyStatusEnum.BiddingStrategyStatus status = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of the bidding strategy. - // Create a bidding strategy by setting the bidding scheme. - // - // This field is read-only. - google.ads.googleads.v6.enums.BiddingStrategyTypeEnum.BiddingStrategyType type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The currency used by the bidding strategy (ISO 4217 three-letter code). - // - // For bidding strategies in manager customers, this is the currency set by - // the advertiser when creating the strategy. For serving customers, this is - // the customer's currency_code. - // - // Bidding strategy metrics are reported in this currency. - // - // This field is read-only. - optional string effective_currency_code = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of campaigns attached to this bidding strategy. - // - // This field is read-only. - optional int64 campaign_count = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of non-removed campaigns attached to this bidding strategy. - // - // This field is read-only. - optional int64 non_removed_campaign_count = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The bidding scheme. - // - // Only one can be set. - oneof scheme { - // A bidding strategy that raises bids for clicks that seem more likely to - // lead to a conversion and lowers them for clicks where they seem less - // likely. - google.ads.googleads.v6.common.EnhancedCpc enhanced_cpc = 7; - - // An automated bidding strategy to help get the most conversion value for - // your campaigns while spending your budget. - google.ads.googleads.v6.common.MaximizeConversionValue maximize_conversion_value = 21; - - // An automated bidding strategy to help get the most conversions for your - // campaigns while spending your budget. - google.ads.googleads.v6.common.MaximizeConversions maximize_conversions = 22; - - // A bidding strategy that sets bids to help get as many conversions as - // possible at the target cost-per-acquisition (CPA) you set. - google.ads.googleads.v6.common.TargetCpa target_cpa = 9; - - // A bidding strategy that automatically optimizes towards a desired - // percentage of impressions. - google.ads.googleads.v6.common.TargetImpressionShare target_impression_share = 48; - - // A bidding strategy that helps you maximize revenue while averaging a - // specific target Return On Ad Spend (ROAS). - google.ads.googleads.v6.common.TargetRoas target_roas = 11; - - // A bid strategy that sets your bids to help get as many clicks as - // possible within your budget. - google.ads.googleads.v6.common.TargetSpend target_spend = 12; - } -} diff --git a/google/ads/googleads/v6/resources/billing_setup.proto b/google/ads/googleads/v6/resources/billing_setup.proto deleted file mode 100644 index 53c5a3946..000000000 --- a/google/ads/googleads/v6/resources/billing_setup.proto +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/billing_setup_status.proto"; -import "google/ads/googleads/v6/enums/time_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the BillingSetup resource. - -// A billing setup, which associates a payments account and an advertiser. A -// billing setup is specific to one advertiser. -message BillingSetup { - option (google.api.resource) = { - type: "googleads.googleapis.com/BillingSetup" - pattern: "customers/{customer_id}/billingSetups/{billing_setup_id}" - }; - - // Container of payments account information for this billing. - message PaymentsAccountInfo { - // Output only. A 16 digit id used to identify the payments account associated with the - // billing setup. - // - // This must be passed as a string with dashes, e.g. "1234-5678-9012-3456". - optional string payments_account_id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The name of the payments account associated with the billing setup. - // - // This enables the user to specify a meaningful name for a payments account - // to aid in reconciling monthly invoices. - // - // This name will be printed in the monthly invoices. - optional string payments_account_name = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A 12 digit id used to identify the payments profile associated with the - // billing setup. - // - // This must be passed in as a string with dashes, e.g. "1234-5678-9012". - optional string payments_profile_id = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The name of the payments profile associated with the billing setup. - optional string payments_profile_name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A secondary payments profile id present in uncommon situations, e.g. - // when a sequential liability agreement has been arranged. - optional string secondary_payments_profile_id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the billing setup. - // BillingSetup resource names have the form: - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; - - // Output only. The ID of the billing setup. - optional int64 id = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The status of the billing setup. - google.ads.googleads.v6.enums.BillingSetupStatusEnum.BillingSetupStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The resource name of the payments account associated with this billing - // setup. Payments resource names have the form: - // - // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` - // When setting up billing, this is used to signup with an existing payments - // account (and then payments_account_info should not be set). - // When getting a billing setup, this and payments_account_info will be - // populated. - optional string payments_account = 18 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaymentsAccount" - } - ]; - - // Immutable. The payments account information associated with this billing setup. - // When setting up billing, this is used to signup with a new payments account - // (and then payments_account should not be set). - // When getting a billing setup, this and payments_account will be - // populated. - PaymentsAccountInfo payments_account_info = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // When creating a new billing setup, this is when the setup should take - // effect. NOW is the only acceptable start time if the customer doesn't have - // any approved setups. - // - // When fetching an existing billing setup, this is the requested start time. - // However, if the setup was approved (see status) after the requested start - // time, then this is the approval time. - oneof start_time { - // Immutable. The start date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. Only a - // future time is allowed. - string start_date_time = 16 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The start time as a type. Only NOW is allowed. - google.ads.googleads.v6.enums.TimeTypeEnum.TimeType start_time_type = 10 [(google.api.field_behavior) = IMMUTABLE]; - } - - // When the billing setup ends / ended. This is either FOREVER or the start - // time of the next scheduled billing setup. - oneof end_time { - // Output only. The end date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. - string end_date_time = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The end time as a type. The only possible value is FOREVER. - google.ads.googleads.v6.enums.TimeTypeEnum.TimeType end_time_type = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v6/resources/call_view.proto b/google/ads/googleads/v6/resources/call_view.proto deleted file mode 100644 index 840f08c8f..000000000 --- a/google/ads/googleads/v6/resources/call_view.proto +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/call_tracking_display_location.proto"; -import "google/ads/googleads/v6/enums/call_type.proto"; -import "google/ads/googleads/v6/enums/google_voice_call_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CallViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the call view resource. - -// A call view that includes data for call tracking of call-only ads or call -// extensions. -message CallView { - option (google.api.resource) = { - type: "googleads.googleapis.com/CallView" - pattern: "customers/{customer_id}/callViews/{call_detail_id}" - }; - - // Output only. The resource name of the call view. - // Call view resource names have the form: - // - // `customers/{customer_id}/callViews/{call_detail_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CallView" - } - ]; - - // Output only. Region code of the caller. - string caller_region_code = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Area code of the caller. Null if the call duration is shorter than 15 - // seconds. - string caller_area_code = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The advertiser-provided call duration in seconds. - int64 call_duration_seconds = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The advertiser-provided call start date time. - string start_call_date_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The advertiser-provided call end date time. - string end_call_date_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The call tracking display location. - google.ads.googleads.v6.enums.CallTrackingDisplayLocationEnum.CallTrackingDisplayLocation call_tracking_display_location = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of the call. - google.ads.googleads.v6.enums.CallTypeEnum.CallType type = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The status of the call. - google.ads.googleads.v6.enums.GoogleVoiceCallStatusEnum.GoogleVoiceCallStatus call_status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/campaign.proto b/google/ads/googleads/v6/resources/campaign.proto deleted file mode 100644 index f56ac1ef3..000000000 --- a/google/ads/googleads/v6/resources/campaign.proto +++ /dev/null @@ -1,419 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/bidding.proto"; -import "google/ads/googleads/v6/common/custom_parameter.proto"; -import "google/ads/googleads/v6/common/frequency_cap.proto"; -import "google/ads/googleads/v6/common/real_time_bidding_setting.proto"; -import "google/ads/googleads/v6/common/targeting_setting.proto"; -import "google/ads/googleads/v6/enums/ad_serving_optimization_status.proto"; -import "google/ads/googleads/v6/enums/advertising_channel_sub_type.proto"; -import "google/ads/googleads/v6/enums/advertising_channel_type.proto"; -import "google/ads/googleads/v6/enums/app_campaign_app_store.proto"; -import "google/ads/googleads/v6/enums/app_campaign_bidding_strategy_goal_type.proto"; -import "google/ads/googleads/v6/enums/bidding_strategy_type.proto"; -import "google/ads/googleads/v6/enums/brand_safety_suitability.proto"; -import "google/ads/googleads/v6/enums/campaign_experiment_type.proto"; -import "google/ads/googleads/v6/enums/campaign_serving_status.proto"; -import "google/ads/googleads/v6/enums/campaign_status.proto"; -import "google/ads/googleads/v6/enums/location_source_type.proto"; -import "google/ads/googleads/v6/enums/negative_geo_target_type.proto"; -import "google/ads/googleads/v6/enums/optimization_goal_type.proto"; -import "google/ads/googleads/v6/enums/payment_mode.proto"; -import "google/ads/googleads/v6/enums/positive_geo_target_type.proto"; -import "google/ads/googleads/v6/enums/vanity_pharma_display_url_mode.proto"; -import "google/ads/googleads/v6/enums/vanity_pharma_text.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Campaign resource. - -// A campaign. -message Campaign { - option (google.api.resource) = { - type: "googleads.googleapis.com/Campaign" - pattern: "customers/{customer_id}/campaigns/{campaign_id}" - }; - - // The network settings for the campaign. - message NetworkSettings { - // Whether ads will be served with google.com search results. - optional bool target_google_search = 5; - - // Whether ads will be served on partner sites in the Google Search Network - // (requires `target_google_search` to also be `true`). - optional bool target_search_network = 6; - - // Whether ads will be served on specified placements in the Google Display - // Network. Placements are specified using the Placement criterion. - optional bool target_content_network = 7; - - // Whether ads will be served on the Google Partner Network. - // This is available only to some select Google partner accounts. - optional bool target_partner_search_network = 8; - } - - // Campaign-level settings for hotel ads. - message HotelSettingInfo { - // Immutable. The linked Hotel Center account. - optional int64 hotel_center_id = 2 [(google.api.field_behavior) = IMMUTABLE]; - } - - // The setting for controlling Dynamic Search Ads (DSA). - message DynamicSearchAdsSetting { - // Required. The Internet domain name that this setting represents, e.g., "google.com" - // or "www.google.com". - string domain_name = 6 [(google.api.field_behavior) = REQUIRED]; - - // Required. The language code specifying the language of the domain, e.g., "en". - string language_code = 7 [(google.api.field_behavior) = REQUIRED]; - - // Whether the campaign uses advertiser supplied URLs exclusively. - optional bool use_supplied_urls_only = 8; - - // The list of page feeds associated with the campaign. - repeated string feeds = 9 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - }]; - } - - // Campaign setting for local campaigns. - message LocalCampaignSetting { - // The location source type for this local campaign. - google.ads.googleads.v6.enums.LocationSourceTypeEnum.LocationSourceType location_source_type = 1; - } - - // Selective optimization setting for this campaign, which includes a set of - // conversion actions to optimize this campaign towards. - message SelectiveOptimization { - // The selected set of conversion actions for optimizing this campaign. - repeated string conversion_actions = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - }]; - } - - // The setting for Shopping campaigns. Defines the universe of products that - // can be advertised by the campaign, and how this campaign interacts with - // other Shopping campaigns. - message ShoppingSetting { - // Immutable. ID of the Merchant Center account. - // This field is required for create operations. This field is immutable for - // Shopping campaigns. - optional int64 merchant_id = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Sales country of products to include in the campaign. - // This field is required for Shopping campaigns. This field is immutable. - // This field is optional for non-Shopping campaigns, but it must be equal - // to 'ZZ' if set. - optional string sales_country = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Priority of the campaign. Campaigns with numerically higher priorities - // take precedence over those with lower priorities. - // This field is required for Shopping campaigns, with values between 0 and - // 2, inclusive. - // This field is optional for Smart Shopping campaigns, but must be equal to - // 3 if set. - optional int32 campaign_priority = 7; - - // Whether to include local products. - optional bool enable_local = 8; - } - - // Campaign-level settings for App Campaigns. - message AppCampaignSetting { - // Represents the goal which the bidding strategy of this app campaign - // should optimize towards. - google.ads.googleads.v6.enums.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType bidding_strategy_goal_type = 1; - - // Immutable. A string that uniquely identifies a mobile application. - optional string app_id = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The application store that distributes this specific app. - google.ads.googleads.v6.enums.AppCampaignAppStoreEnum.AppCampaignAppStore app_store = 3 [(google.api.field_behavior) = IMMUTABLE]; - } - - // Campaign-level settings for tracking information. - message TrackingSetting { - // Output only. The url used for dynamic tracking. - optional string tracking_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Optimization goal setting for this campaign, which includes a set of - // optimization goal types. - message OptimizationGoalSetting { - // The list of optimization goal types. - repeated google.ads.googleads.v6.enums.OptimizationGoalTypeEnum.OptimizationGoalType optimization_goal_types = 1; - } - - // Represents a collection of settings related to ads geotargeting. - message GeoTargetTypeSetting { - // The setting used for positive geotargeting in this particular campaign. - google.ads.googleads.v6.enums.PositiveGeoTargetTypeEnum.PositiveGeoTargetType positive_geo_target_type = 1; - - // The setting used for negative geotargeting in this particular campaign. - google.ads.googleads.v6.enums.NegativeGeoTargetTypeEnum.NegativeGeoTargetType negative_geo_target_type = 2; - } - - // Describes how unbranded pharma ads will be displayed. - message VanityPharma { - // The display mode for vanity pharma URLs. - google.ads.googleads.v6.enums.VanityPharmaDisplayUrlModeEnum.VanityPharmaDisplayUrlMode vanity_pharma_display_url_mode = 1; - - // The text that will be displayed in display URL of the text ad when - // website description is the selected display mode for vanity pharma URLs. - google.ads.googleads.v6.enums.VanityPharmaTextEnum.VanityPharmaText vanity_pharma_text = 2; - } - - // Immutable. The resource name of the campaign. - // Campaign resource names have the form: - // - // `customers/{customer_id}/campaigns/{campaign_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ID of the campaign. - optional int64 id = 59 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the campaign. - // - // This field is required and should not be empty when creating new - // campaigns. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - optional string name = 58; - - // The status of the campaign. - // - // When a new campaign is added, the status defaults to ENABLED. - google.ads.googleads.v6.enums.CampaignStatusEnum.CampaignStatus status = 5; - - // Output only. The ad serving status of the campaign. - google.ads.googleads.v6.enums.CampaignServingStatusEnum.CampaignServingStatus serving_status = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The ad serving optimization status of the campaign. - google.ads.googleads.v6.enums.AdServingOptimizationStatusEnum.AdServingOptimizationStatus ad_serving_optimization_status = 8; - - // Immutable. The primary serving target for ads within the campaign. - // The targeting options can be refined in `network_settings`. - // - // This field is required and should not be empty when creating new - // campaigns. - // - // Can be set only when creating campaigns. - // After the campaign is created, the field can not be changed. - google.ads.googleads.v6.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_type = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Optional refinement to `advertising_channel_type`. - // Must be a valid sub-type of the parent channel type. - // - // Can be set only when creating campaigns. - // After campaign is created, the field can not be changed. - google.ads.googleads.v6.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType advertising_channel_sub_type = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // The URL template for constructing a tracking URL. - optional string tracking_url_template = 60; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v6.common.CustomParameter url_custom_parameters = 12; - - // Settings for Real-Time Bidding, a feature only available for campaigns - // targeting the Ad Exchange network. - google.ads.googleads.v6.common.RealTimeBiddingSetting real_time_bidding_setting = 39; - - // The network settings for the campaign. - NetworkSettings network_settings = 14; - - // Immutable. The hotel setting for the campaign. - HotelSettingInfo hotel_setting = 32 [(google.api.field_behavior) = IMMUTABLE]; - - // The setting for controlling Dynamic Search Ads (DSA). - DynamicSearchAdsSetting dynamic_search_ads_setting = 33; - - // The setting for controlling Shopping campaigns. - ShoppingSetting shopping_setting = 36; - - // Setting for targeting related features. - google.ads.googleads.v6.common.TargetingSetting targeting_setting = 43; - - // The setting for ads geotargeting. - GeoTargetTypeSetting geo_target_type_setting = 47; - - // The setting for local campaign. - LocalCampaignSetting local_campaign_setting = 50; - - // The setting related to App Campaign. - AppCampaignSetting app_campaign_setting = 51; - - // Output only. The resource names of labels attached to this campaign. - repeated string labels = 61 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignLabel" - } - ]; - - // Output only. The type of campaign: normal, draft, or experiment. - google.ads.googleads.v6.enums.CampaignExperimentTypeEnum.CampaignExperimentType experiment_type = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the base campaign of a draft or experiment campaign. - // For base campaigns, this is equal to `resource_name`. - // - // This field is read-only. - optional string base_campaign = 56 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The budget of the campaign. - optional string campaign_budget = 62 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - }]; - - // Output only. The type of bidding strategy. - // - // A bidding strategy can be created by setting either the bidding scheme to - // create a standard bidding strategy or the `bidding_strategy` field to - // create a portfolio bidding strategy. - // - // This field is read-only. - google.ads.googleads.v6.enums.BiddingStrategyTypeEnum.BiddingStrategyType bidding_strategy_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The date when campaign started. - optional string start_date = 63; - - // The last day of the campaign. - optional string end_date = 64; - - // Suffix used to append query parameters to landing pages that are served - // with parallel tracking. - optional string final_url_suffix = 65; - - // A list that limits how often each user will see this campaign's ads. - repeated google.ads.googleads.v6.common.FrequencyCapEntry frequency_caps = 40; - - // Output only. 3-Tier Brand Safety setting for the campaign. - google.ads.googleads.v6.enums.BrandSafetySuitabilityEnum.BrandSafetySuitability video_brand_safety_suitability = 42 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Describes how unbranded pharma ads will be displayed. - VanityPharma vanity_pharma = 44; - - // Selective optimization setting for this campaign, which includes a set of - // conversion actions to optimize this campaign towards. - SelectiveOptimization selective_optimization = 45; - - // Optimization goal setting for this campaign, which includes a set of - // optimization goal types. - OptimizationGoalSetting optimization_goal_setting = 54; - - // Output only. Campaign-level settings for tracking information. - TrackingSetting tracking_setting = 46 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Payment mode for the campaign. - google.ads.googleads.v6.enums.PaymentModeEnum.PaymentMode payment_mode = 52; - - // Output only. Optimization score of the campaign. - // - // Optimization score is an estimate of how well a campaign is set to perform. - // It ranges from 0% (0.0) to 100% (1.0), with 100% indicating that the - // campaign is performing at full potential. This field is null for unscored - // campaigns. - // - // See "About optimization score" at - // https://support.google.com/google-ads/answer/9061546. - // - // This field is read-only. - optional double optimization_score = 66 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The bidding strategy for the campaign. - // - // Must be either portfolio (created via BiddingStrategy service) or - // standard, that is embedded into the campaign. - oneof campaign_bidding_strategy { - // Portfolio bidding strategy used by campaign. - string bidding_strategy = 67 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/BiddingStrategy" - }]; - - // Commission is an automatic bidding strategy in which the advertiser pays - // a certain portion of the conversion value. - google.ads.googleads.v6.common.Commission commission = 49; - - // Standard Manual CPC bidding strategy. - // Manual click-based bidding where user pays per click. - google.ads.googleads.v6.common.ManualCpc manual_cpc = 24; - - // Standard Manual CPM bidding strategy. - // Manual impression-based bidding where user pays per thousand - // impressions. - google.ads.googleads.v6.common.ManualCpm manual_cpm = 25; - - // Output only. A bidding strategy that pays a configurable amount per video view. - google.ads.googleads.v6.common.ManualCpv manual_cpv = 37 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Standard Maximize Conversions bidding strategy that automatically - // maximizes number of conversions while spending your budget. - google.ads.googleads.v6.common.MaximizeConversions maximize_conversions = 30; - - // Standard Maximize Conversion Value bidding strategy that automatically - // sets bids to maximize revenue while spending your budget. - google.ads.googleads.v6.common.MaximizeConversionValue maximize_conversion_value = 31; - - // Standard Target CPA bidding strategy that automatically sets bids to - // help get as many conversions as possible at the target - // cost-per-acquisition (CPA) you set. - google.ads.googleads.v6.common.TargetCpa target_cpa = 26; - - // Target Impression Share bidding strategy. An automated bidding strategy - // that sets bids to achieve a desired percentage of impressions. - google.ads.googleads.v6.common.TargetImpressionShare target_impression_share = 48; - - // Standard Target ROAS bidding strategy that automatically maximizes - // revenue while averaging a specific target return on ad spend (ROAS). - google.ads.googleads.v6.common.TargetRoas target_roas = 29; - - // Standard Target Spend bidding strategy that automatically sets your bids - // to help get as many clicks as possible within your budget. - google.ads.googleads.v6.common.TargetSpend target_spend = 27; - - // Standard Percent Cpc bidding strategy where bids are a fraction of the - // advertised price for some good or service. - google.ads.googleads.v6.common.PercentCpc percent_cpc = 34; - - // A bidding strategy that automatically optimizes cost per thousand - // impressions. - google.ads.googleads.v6.common.TargetCpm target_cpm = 41; - } -} diff --git a/google/ads/googleads/v6/resources/campaign_asset.proto b/google/ads/googleads/v6/resources/campaign_asset.proto deleted file mode 100644 index 5e6f777bb..000000000 --- a/google/ads/googleads/v6/resources/campaign_asset.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/asset_field_type.proto"; -import "google/ads/googleads/v6/enums/asset_link_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignAssetProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the CampaignAsset resource. - -// A link between a Campaign and an Asset. -message CampaignAsset { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignAsset" - pattern: "customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}" - }; - - // Immutable. The resource name of the campaign asset. - // CampaignAsset resource names have the form: - // - // `customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignAsset" - } - ]; - - // Immutable. The campaign to which the asset is linked. - optional string campaign = 6 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Immutable. The asset which is linked to the campaign. - optional string asset = 7 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; - - // Immutable. Role that the asset takes under the linked campaign. - // Required. - google.ads.googleads.v6.enums.AssetFieldTypeEnum.AssetFieldType field_type = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Status of the campaign asset. - // This field is read-only. - google.ads.googleads.v6.enums.AssetLinkStatusEnum.AssetLinkStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/campaign_audience_view.proto b/google/ads/googleads/v6/resources/campaign_audience_view.proto deleted file mode 100644 index f4d99e692..000000000 --- a/google/ads/googleads/v6/resources/campaign_audience_view.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignAudienceViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the campaign audience view resource. - -// A campaign audience view. -// Includes performance data from interests and remarketing lists for Display -// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), -// aggregated by campaign and audience criterion. This view only includes -// audiences attached at the campaign level. -message CampaignAudienceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignAudienceView" - pattern: "customers/{customer_id}/campaignAudienceViews/{campaign_id}~{criterion_id}" - }; - - // Output only. The resource name of the campaign audience view. - // Campaign audience view resource names have the form: - // - // `customers/{customer_id}/campaignAudienceViews/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/campaign_bid_modifier.proto b/google/ads/googleads/v6/resources/campaign_bid_modifier.proto deleted file mode 100644 index b6e6d824d..000000000 --- a/google/ads/googleads/v6/resources/campaign_bid_modifier.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/criteria.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBidModifierProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Campaign Bid Modifier resource. - -// Represents a bid-modifiable only criterion at the campaign level. -message CampaignBidModifier { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignBidModifier" - pattern: "customers/{customer_id}/campaignBidModifiers/{campaign_id}~{criterion_id}" - }; - - // Immutable. The resource name of the campaign bid modifier. - // Campaign bid modifier resource names have the form: - // - // `customers/{customer_id}/campaignBidModifiers/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBidModifier" - } - ]; - - // Output only. The campaign to which this criterion belongs. - optional string campaign = 6 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ID of the criterion to bid modify. - // - // This field is ignored for mutates. - optional int64 criterion_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bid when the criterion matches. - optional double bid_modifier = 8; - - // The criterion of this campaign bid modifier. - // - // Required in create operations starting in V5. - oneof criterion { - // Immutable. Criterion for interaction type. Only supported for search campaigns. - google.ads.googleads.v6.common.InteractionTypeInfo interaction_type = 5 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v6/resources/campaign_budget.proto b/google/ads/googleads/v6/resources/campaign_budget.proto deleted file mode 100644 index 260611862..000000000 --- a/google/ads/googleads/v6/resources/campaign_budget.proto +++ /dev/null @@ -1,156 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/budget_delivery_method.proto"; -import "google/ads/googleads/v6/enums/budget_period.proto"; -import "google/ads/googleads/v6/enums/budget_status.proto"; -import "google/ads/googleads/v6/enums/budget_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBudgetProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Budget resource. - -// A campaign budget. -message CampaignBudget { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignBudget" - pattern: "customers/{customer_id}/campaignBudgets/{campaign_budget_id}" - }; - - // Immutable. The resource name of the campaign budget. - // Campaign budget resource names have the form: - // - // `customers/{customer_id}/campaignBudgets/{campaign_budget_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - } - ]; - - // Output only. The ID of the campaign budget. - // - // A campaign budget is created using the CampaignBudgetService create - // operation and is assigned a budget ID. A budget ID can be shared across - // different campaigns; the system will then allocate the campaign budget - // among different campaigns to get optimum results. - optional int64 id = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the campaign budget. - // - // When creating a campaign budget through CampaignBudgetService, every - // explicitly shared campaign budget must have a non-null, non-empty name. - // Campaign budgets that are not explicitly shared derive their name from the - // attached campaign's name. - // - // The length of this string must be between 1 and 255, inclusive, - // in UTF-8 bytes, (trimmed). - optional string name = 20; - - // The amount of the budget, in the local currency for the account. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. Monthly spend is capped at 30.4 times this amount. - optional int64 amount_micros = 21; - - // The lifetime amount of the budget, in the local currency for the account. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - optional int64 total_amount_micros = 22; - - // Output only. The status of this campaign budget. This field is read-only. - google.ads.googleads.v6.enums.BudgetStatusEnum.BudgetStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The delivery method that determines the rate at which the campaign budget - // is spent. - // - // Defaults to STANDARD if unspecified in a create operation. - google.ads.googleads.v6.enums.BudgetDeliveryMethodEnum.BudgetDeliveryMethod delivery_method = 7; - - // Specifies whether the budget is explicitly shared. Defaults to true if - // unspecified in a create operation. - // - // If true, the budget was created with the purpose of sharing - // across one or more campaigns. - // - // If false, the budget was created with the intention of only being used - // with a single campaign. The budget's name and status will stay in sync - // with the campaign's name and status. Attempting to share the budget with a - // second campaign will result in an error. - // - // A non-shared budget can become an explicitly shared. The same operation - // must also assign the budget a name. - // - // A shared campaign budget can never become non-shared. - optional bool explicitly_shared = 23; - - // Output only. The number of campaigns actively using the budget. - // - // This field is read-only. - optional int64 reference_count = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates whether there is a recommended budget for this campaign budget. - // - // This field is read-only. - optional bool has_recommended_budget = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended budget amount. If no recommendation is available, this will - // be set to the budget amount. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - // - // This field is read-only. - optional int64 recommended_budget_amount_micros = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Period over which to spend the budget. Defaults to DAILY if not specified. - google.ads.googleads.v6.enums.BudgetPeriodEnum.BudgetPeriod period = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The estimated change in weekly clicks if the recommended budget is applied. - // - // This field is read-only. - optional int64 recommended_budget_estimated_change_weekly_clicks = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimated change in weekly cost in micros if the recommended budget is - // applied. One million is equivalent to one currency unit. - // - // This field is read-only. - optional int64 recommended_budget_estimated_change_weekly_cost_micros = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimated change in weekly interactions if the recommended budget is - // applied. - // - // This field is read-only. - optional int64 recommended_budget_estimated_change_weekly_interactions = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The estimated change in weekly views if the recommended budget is applied. - // - // This field is read-only. - optional int64 recommended_budget_estimated_change_weekly_views = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The type of the campaign budget. - google.ads.googleads.v6.enums.BudgetTypeEnum.BudgetType type = 18 [(google.api.field_behavior) = IMMUTABLE]; -} diff --git a/google/ads/googleads/v6/resources/campaign_criterion.proto b/google/ads/googleads/v6/resources/campaign_criterion.proto deleted file mode 100644 index e2ad422dd..000000000 --- a/google/ads/googleads/v6/resources/campaign_criterion.proto +++ /dev/null @@ -1,173 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/criteria.proto"; -import "google/ads/googleads/v6/enums/campaign_criterion_status.proto"; -import "google/ads/googleads/v6/enums/criterion_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Campaign Criterion resource. - -// A campaign criterion. -message CampaignCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignCriterion" - pattern: "customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}" - }; - - // Immutable. The resource name of the campaign criterion. - // Campaign criterion resource names have the form: - // - // `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterion" - } - ]; - - // Immutable. The campaign to which the criterion belongs. - optional string campaign = 37 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ID of the criterion. - // - // This field is ignored during mutate. - optional int64 criterion_id = 38 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The modifier for the bids when the criterion matches. The modifier must be - // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. - // Use 0 to opt out of a Device type. - optional float bid_modifier = 39; - - // Immutable. Whether to target (`false`) or exclude (`true`) the criterion. - optional bool negative = 40 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The type of the criterion. - google.ads.googleads.v6.enums.CriterionTypeEnum.CriterionType type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the criterion. - google.ads.googleads.v6.enums.CampaignCriterionStatusEnum.CampaignCriterionStatus status = 35; - - // The campaign criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. Keyword. - google.ads.googleads.v6.common.KeywordInfo keyword = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v6.common.PlacementInfo placement = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile app category. - google.ads.googleads.v6.common.MobileAppCategoryInfo mobile_app_category = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile application. - google.ads.googleads.v6.common.MobileApplicationInfo mobile_application = 11 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Location. - google.ads.googleads.v6.common.LocationInfo location = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Device. - google.ads.googleads.v6.common.DeviceInfo device = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Ad Schedule. - google.ads.googleads.v6.common.AdScheduleInfo ad_schedule = 15 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Age range. - google.ads.googleads.v6.common.AgeRangeInfo age_range = 16 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Gender. - google.ads.googleads.v6.common.GenderInfo gender = 17 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Income range. - google.ads.googleads.v6.common.IncomeRangeInfo income_range = 18 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Parental status. - google.ads.googleads.v6.common.ParentalStatusInfo parental_status = 19 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User List. - google.ads.googleads.v6.common.UserListInfo user_list = 22 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v6.common.YouTubeVideoInfo youtube_video = 20 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v6.common.YouTubeChannelInfo youtube_channel = 21 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Proximity. - google.ads.googleads.v6.common.ProximityInfo proximity = 23 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Topic. - google.ads.googleads.v6.common.TopicInfo topic = 24 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Listing scope. - google.ads.googleads.v6.common.ListingScopeInfo listing_scope = 25 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Language. - google.ads.googleads.v6.common.LanguageInfo language = 26 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. IpBlock. - google.ads.googleads.v6.common.IpBlockInfo ip_block = 27 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. ContentLabel. - google.ads.googleads.v6.common.ContentLabelInfo content_label = 28 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Carrier. - google.ads.googleads.v6.common.CarrierInfo carrier = 29 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. User Interest. - google.ads.googleads.v6.common.UserInterestInfo user_interest = 30 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Webpage. - google.ads.googleads.v6.common.WebpageInfo webpage = 31 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Operating system version. - google.ads.googleads.v6.common.OperatingSystemVersionInfo operating_system_version = 32 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile Device. - google.ads.googleads.v6.common.MobileDeviceInfo mobile_device = 33 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Location Group - google.ads.googleads.v6.common.LocationGroupInfo location_group = 34 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Affinity. - google.ads.googleads.v6.common.CustomAffinityInfo custom_affinity = 36 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Audience - google.ads.googleads.v6.common.CustomAudienceInfo custom_audience = 41 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Combined Audience. - google.ads.googleads.v6.common.CombinedAudienceInfo combined_audience = 42 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v6/resources/campaign_criterion_simulation.proto b/google/ads/googleads/v6/resources/campaign_criterion_simulation.proto deleted file mode 100644 index 5677f57db..000000000 --- a/google/ads/googleads/v6/resources/campaign_criterion_simulation.proto +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/simulation.proto"; -import "google/ads/googleads/v6/enums/simulation_modification_method.proto"; -import "google/ads/googleads/v6/enums/simulation_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionSimulationProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the campaign criterion simulation resource. - -// A campaign criterion simulation. Supported combinations of advertising -// channel type, criterion ids, simulation type and simulation modification -// method is detailed below respectively. -// -// 1. SEARCH - 30000,30001,30002 - BID_MODIFIER - UNIFORM -// 2. SHOPPING - 30000,30001,30002 - BID_MODIFIER - UNIFORM -// 3. DISPLAY - 30001 - BID_MODIFIER - UNIFORM -message CampaignCriterionSimulation { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignCriterionSimulation" - pattern: "customers/{customer_id}/campaignCriterionSimulations/{campaign_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}" - }; - - // Output only. The resource name of the campaign criterion simulation. - // Campaign criterion simulation resource names have the form: - // - // `customers/{customer_id}/campaignCriterionSimulations/{campaign_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterionSimulation" - } - ]; - - // Output only. Campaign ID of the simulation. - optional int64 campaign_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Criterion ID of the simulation. - optional int64 criterion_id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The field that the simulation modifies. - google.ads.googleads.v6.enums.SimulationTypeEnum.SimulationType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. How the simulation modifies the field. - google.ads.googleads.v6.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. First day on which the simulation is based, in YYYY-MM-DD format. - optional string start_date = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Last day on which the simulation is based, in YYYY-MM-DD format. - optional string end_date = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // List of simulation points. - oneof point_list { - // Output only. Simulation points if the simulation type is BID_MODIFIER. - google.ads.googleads.v6.common.BidModifierSimulationPointList bid_modifier_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v6/resources/campaign_draft.proto b/google/ads/googleads/v6/resources/campaign_draft.proto deleted file mode 100644 index 39e424f71..000000000 --- a/google/ads/googleads/v6/resources/campaign_draft.proto +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/campaign_draft_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Campaign Draft resource. - -// A campaign draft. -message CampaignDraft { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignDraft" - pattern: "customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}" - }; - - // Immutable. The resource name of the campaign draft. - // Campaign draft resource names have the form: - // - // `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; - - // Output only. The ID of the draft. - // - // This field is read-only. - optional int64 draft_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The base campaign to which the draft belongs. - optional string base_campaign = 10 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The name of the campaign draft. - // - // This field is required and should not be empty when creating new - // campaign drafts. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - optional string name = 11; - - // Output only. Resource name of the Campaign that results from overlaying the draft - // changes onto the base campaign. - // - // This field is read-only. - optional string draft_campaign = 12 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The status of the campaign draft. This field is read-only. - // - // When a new campaign draft is added, the status defaults to PROPOSED. - google.ads.googleads.v6.enums.CampaignDraftStatusEnum.CampaignDraftStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether there is an experiment based on this draft currently serving. - optional bool has_experiment_running = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the long-running operation that can be used to poll - // for completion of draft promotion. This is only set if the draft promotion - // is in progress or finished. - optional string long_running_operation = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/campaign_experiment.proto b/google/ads/googleads/v6/resources/campaign_experiment.proto deleted file mode 100644 index b85adfdae..000000000 --- a/google/ads/googleads/v6/resources/campaign_experiment.proto +++ /dev/null @@ -1,121 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/campaign_experiment_status.proto"; -import "google/ads/googleads/v6/enums/campaign_experiment_traffic_split_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Campaign Experiment resource. - -// An A/B experiment that compares the performance of the base campaign -// (the control) and a variation of that campaign (the experiment). -message CampaignExperiment { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignExperiment" - pattern: "customers/{customer_id}/campaignExperiments/{campaign_experiment_id}" - }; - - // Immutable. The resource name of the campaign experiment. - // Campaign experiment resource names have the form: - // - // `customers/{customer_id}/campaignExperiments/{campaign_experiment_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExperiment" - } - ]; - - // Output only. The ID of the campaign experiment. - // - // This field is read-only. - optional int64 id = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The campaign draft with staged changes to the base campaign. - optional string campaign_draft = 14 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; - - // The name of the campaign experiment. - // - // This field is required when creating new campaign experiments - // and must not conflict with the name of another non-removed - // campaign experiment or campaign. - // - // It must not contain any null (code point 0x0), NL line feed - // (code point 0xA) or carriage return (code point 0xD) characters. - optional string name = 15; - - // The description of the experiment. - optional string description = 16; - - // Immutable. Share of traffic directed to experiment as a percent (must be between 1 and - // 99 inclusive. Base campaign receives the remainder of the traffic - // (100 - traffic_split_percent). Required for create. - optional int64 traffic_split_percent = 17 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Determines the behavior of the traffic split. - google.ads.googleads.v6.enums.CampaignExperimentTrafficSplitTypeEnum.CampaignExperimentTrafficSplitType traffic_split_type = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The experiment campaign, as opposed to the base campaign. - optional string experiment_campaign = 18 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The status of the campaign experiment. This field is read-only. - google.ads.googleads.v6.enums.CampaignExperimentStatusEnum.CampaignExperimentStatus status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the long-running operation that can be used to poll - // for completion of experiment create or promote. The most recent long - // running operation is returned. - optional string long_running_operation = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Date when the campaign experiment starts. By default, the experiment starts - // now or on the campaign's start date, whichever is later. If this field is - // set, then the experiment starts at the beginning of the specified date in - // the customer's time zone. Cannot be changed once the experiment starts. - // - // Format: YYYY-MM-DD - // Example: 2019-03-14 - optional string start_date = 20; - - // The last day of the campaign experiment. By default, the experiment ends on - // the campaign's end date. If this field is set, then the experiment ends at - // the end of the specified date in the customer's time zone. - // - // Format: YYYY-MM-DD - // Example: 2019-04-18 - optional string end_date = 21; -} diff --git a/google/ads/googleads/v6/resources/campaign_extension_setting.proto b/google/ads/googleads/v6/resources/campaign_extension_setting.proto deleted file mode 100644 index 19a676d4c..000000000 --- a/google/ads/googleads/v6/resources/campaign_extension_setting.proto +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/extension_setting_device.proto"; -import "google/ads/googleads/v6/enums/extension_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExtensionSettingProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the CampaignExtensionSetting resource. - -// A campaign extension setting. -message CampaignExtensionSetting { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignExtensionSetting" - pattern: "customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}" - }; - - // Immutable. The resource name of the campaign extension setting. - // CampaignExtensionSetting resource names have the form: - // - // `customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExtensionSetting" - } - ]; - - // Immutable. The extension type of the customer extension setting. - google.ads.googleads.v6.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The resource name of the campaign. The linked extension feed items will - // serve under this campaign. - // Campaign resource names have the form: - // - // `customers/{customer_id}/campaigns/{campaign_id}` - optional string campaign = 6 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // The resource names of the extension feed items to serve under the campaign. - // ExtensionFeedItem resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - repeated string extension_feed_items = 7 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - }]; - - // The device for which the extensions will serve. Optional. - google.ads.googleads.v6.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; -} diff --git a/google/ads/googleads/v6/resources/campaign_feed.proto b/google/ads/googleads/v6/resources/campaign_feed.proto deleted file mode 100644 index 8ed8ac360..000000000 --- a/google/ads/googleads/v6/resources/campaign_feed.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/matching_function.proto"; -import "google/ads/googleads/v6/enums/feed_link_status.proto"; -import "google/ads/googleads/v6/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignFeedProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the CampaignFeed resource. - -// A campaign feed. -message CampaignFeed { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignFeed" - pattern: "customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id}" - }; - - // Immutable. The resource name of the campaign feed. - // Campaign feed resource names have the form: - // - // `customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id} - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignFeed" - } - ]; - - // Immutable. The feed to which the CampaignFeed belongs. - optional string feed = 7 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Immutable. The campaign to which the CampaignFeed belongs. - optional string campaign = 8 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Indicates which placeholder types the feed may populate under the connected - // campaign. Required. - repeated google.ads.googleads.v6.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; - - // Matching function associated with the CampaignFeed. - // The matching function is used to filter the set of feed items selected. - // Required. - google.ads.googleads.v6.common.MatchingFunction matching_function = 5; - - // Output only. Status of the campaign feed. - // This field is read-only. - google.ads.googleads.v6.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/campaign_label.proto b/google/ads/googleads/v6/resources/campaign_label.proto deleted file mode 100644 index 4bfc4e194..000000000 --- a/google/ads/googleads/v6/resources/campaign_label.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignLabelProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the campaign label resource. - -// Represents a relationship between a campaign and a label. -message CampaignLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignLabel" - pattern: "customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}" - }; - - // Immutable. Name of the resource. - // Campaign label resource names have the form: - // `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignLabel" - } - ]; - - // Immutable. The campaign to which the label is attached. - optional string campaign = 4 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Immutable. The label assigned to the campaign. - optional string label = 5 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/campaign_shared_set.proto b/google/ads/googleads/v6/resources/campaign_shared_set.proto deleted file mode 100644 index 650c9ab50..000000000 --- a/google/ads/googleads/v6/resources/campaign_shared_set.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/campaign_shared_set_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the CampaignSharedSet resource. - -// CampaignSharedSets are used for managing the shared sets associated with a -// campaign. -message CampaignSharedSet { - option (google.api.resource) = { - type: "googleads.googleapis.com/CampaignSharedSet" - pattern: "customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}" - }; - - // Immutable. The resource name of the campaign shared set. - // Campaign shared set resource names have the form: - // - // `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignSharedSet" - } - ]; - - // Immutable. The campaign to which the campaign shared set belongs. - optional string campaign = 5 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Immutable. The shared set associated with the campaign. This may be a negative keyword - // shared set of another customer. This customer should be a manager of the - // other customer, otherwise the campaign shared set will exist but have no - // serving effect. Only negative keyword shared sets can be associated with - // Shopping campaigns. Only negative placement shared sets can be associated - // with Display mobile app campaigns. - optional string shared_set = 6 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; - - // Output only. The status of this campaign shared set. Read only. - google.ads.googleads.v6.enums.CampaignSharedSetStatusEnum.CampaignSharedSetStatus status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/carrier_constant.proto b/google/ads/googleads/v6/resources/carrier_constant.proto deleted file mode 100644 index aad54ef3c..000000000 --- a/google/ads/googleads/v6/resources/carrier_constant.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CarrierConstantProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Carrier constant resource. - -// A carrier criterion that can be used in campaign targeting. -message CarrierConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/CarrierConstant" - pattern: "carrierConstants/{criterion_id}" - }; - - // Output only. The resource name of the carrier criterion. - // Carrier criterion resource names have the form: - // - // `carrierConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CarrierConstant" - } - ]; - - // Output only. The ID of the carrier criterion. - optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The full name of the carrier in English. - optional string name = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The country code of the country where the carrier is located, e.g., "AR", - // "FR", etc. - optional string country_code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/change_event.proto b/google/ads/googleads/v6/resources/change_event.proto deleted file mode 100644 index 771e9fd7d..000000000 --- a/google/ads/googleads/v6/resources/change_event.proto +++ /dev/null @@ -1,178 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/ad_type.proto"; -import "google/ads/googleads/v6/enums/advertising_channel_sub_type.proto"; -import "google/ads/googleads/v6/enums/advertising_channel_type.proto"; -import "google/ads/googleads/v6/enums/change_client_type.proto"; -import "google/ads/googleads/v6/enums/change_event_resource_type.proto"; -import "google/ads/googleads/v6/enums/criterion_type.proto"; -import "google/ads/googleads/v6/enums/feed_origin.proto"; -import "google/ads/googleads/v6/enums/resource_change_operation.proto"; -import "google/ads/googleads/v6/resources/ad.proto"; -import "google/ads/googleads/v6/resources/ad_group.proto"; -import "google/ads/googleads/v6/resources/ad_group_ad.proto"; -import "google/ads/googleads/v6/resources/ad_group_bid_modifier.proto"; -import "google/ads/googleads/v6/resources/ad_group_criterion.proto"; -import "google/ads/googleads/v6/resources/ad_group_feed.proto"; -import "google/ads/googleads/v6/resources/campaign.proto"; -import "google/ads/googleads/v6/resources/campaign_budget.proto"; -import "google/ads/googleads/v6/resources/campaign_criterion.proto"; -import "google/ads/googleads/v6/resources/campaign_feed.proto"; -import "google/ads/googleads/v6/resources/feed.proto"; -import "google/ads/googleads/v6/resources/feed_item.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ChangeEventProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Change Event resource. - -// Describes the granular change of returned resource of certain resource types. -// Changes made through UI, API and new versions of Editor -// by external users (including external users, and internal users that can be -// shown externally) in the past 30 days will be shown. The change shows the old -// values of the changed fields before the change and the new values right after -// the change. ChangeEvent could have up to 3 minutes delay to reflect a new -// change. -message ChangeEvent { - option (google.api.resource) = { - type: "googleads.googleapis.com/ChangeEvent" - pattern: "customers/{customer_id}/changeEvents/{timestamp_micros}~{command_index}~{mutate_index}" - }; - - // A wrapper proto presenting all supported resources. - // Only the resource of the change_resource_type will be set. - message ChangedResource { - // Output only. Set if change_resource_type == AD. - Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set if change_resource_type == AD_GROUP. - AdGroup ad_group = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set if change_resource_type == AD_GROUP_CRITERION. - AdGroupCriterion ad_group_criterion = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set if change_resource_type == CAMPAIGN. - Campaign campaign = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set if change_resource_type == CAMPAIGN_BUDGET. - CampaignBudget campaign_budget = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set if change_resource_type == AD_GROUP_BID_MODIFIER. - AdGroupBidModifier ad_group_bid_modifier = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set if change_resource_type == CAMPAIGN_CRITERION. - CampaignCriterion campaign_criterion = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set if change_resource_type == FEED. - Feed feed = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set if change_resource_type == FEED_ITEM. - FeedItem feed_item = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set if change_resource_type == CAMPAIGN_FEED. - CampaignFeed campaign_feed = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set if change_resource_type == AD_GROUP_FEED. - AdGroupFeed ad_group_feed = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set if change_resource_type == AD_GROUP_AD. - AdGroupAd ad_group_ad = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Output only. The resource name of the change event. - // Change event resource names have the form: - // - // `customers/{customer_id}/changeEvent/{timestamp_micros}~{command_index}~{mutate_index}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ChangeEvent" - } - ]; - - // Output only. Time at which the change was committed on this resource. - string change_date_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of the changed resource. This dictates what resource - // will be set in old_resource and new_resource. - google.ads.googleads.v6.enums.ChangeEventResourceTypeEnum.ChangeEventResourceType change_resource_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Simply resource this change occurred on. - string change_resource_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Where the change was made through. - google.ads.googleads.v6.enums.ChangeClientTypeEnum.ChangeClientType client_type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The email of the user who made this change. - string user_email = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The old resource before the change. Only changed fields will be populated. - ChangedResource old_resource = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The new resource after the change. Only changed fields will be populated. - ChangedResource new_resource = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The operation on the changed resource. - google.ads.googleads.v6.enums.ResourceChangeOperationEnum.ResourceChangeOperation resource_change_operation = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A list of fields that are changed in the returned resource. - google.protobuf.FieldMask changed_fields = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Campaign affected by this change. - string campaign = 11 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The AdGroup affected by this change. - string ad_group = 12 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. The Feed affected by this change. - string feed = 13 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Output only. The FeedItem affected by this change. - string feed_item = 14 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/change_status.proto b/google/ads/googleads/v6/resources/change_status.proto deleted file mode 100644 index 1287f44d9..000000000 --- a/google/ads/googleads/v6/resources/change_status.proto +++ /dev/null @@ -1,150 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/ad_type.proto"; -import "google/ads/googleads/v6/enums/advertising_channel_sub_type.proto"; -import "google/ads/googleads/v6/enums/advertising_channel_type.proto"; -import "google/ads/googleads/v6/enums/change_status_operation.proto"; -import "google/ads/googleads/v6/enums/change_status_resource_type.proto"; -import "google/ads/googleads/v6/enums/criterion_type.proto"; -import "google/ads/googleads/v6/enums/feed_origin.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Change Status resource. - -// Describes the status of returned resource. ChangeStatus could have up to 3 -// minutes delay to reflect a new change. -message ChangeStatus { - option (google.api.resource) = { - type: "googleads.googleapis.com/ChangeStatus" - pattern: "customers/{customer_id}/changeStatus/{change_status_id}" - }; - - // Output only. The resource name of the change status. - // Change status resource names have the form: - // - // `customers/{customer_id}/changeStatus/{change_status_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ChangeStatus" - } - ]; - - // Output only. Time at which the most recent change has occurred on this resource. - optional string last_change_date_time = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Represents the type of the changed resource. This dictates what fields - // will be set. For example, for AD_GROUP, campaign and ad_group fields will - // be set. - google.ads.googleads.v6.enums.ChangeStatusResourceTypeEnum.ChangeStatusResourceType resource_type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Campaign affected by this change. - optional string campaign = 17 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The AdGroup affected by this change. - optional string ad_group = 18 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Represents the status of the changed resource. - google.ads.googleads.v6.enums.ChangeStatusOperationEnum.ChangeStatusOperation resource_status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The AdGroupAd affected by this change. - optional string ad_group_ad = 25 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // Output only. The AdGroupCriterion affected by this change. - optional string ad_group_criterion = 26 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; - - // Output only. The CampaignCriterion affected by this change. - optional string campaign_criterion = 27 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterion" - } - ]; - - // Output only. The Feed affected by this change. - optional string feed = 28 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Output only. The FeedItem affected by this change. - optional string feed_item = 29 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; - - // Output only. The AdGroupFeed affected by this change. - optional string ad_group_feed = 30 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupFeed" - } - ]; - - // Output only. The CampaignFeed affected by this change. - optional string campaign_feed = 31 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignFeed" - } - ]; - - // Output only. The AdGroupBidModifier affected by this change. - optional string ad_group_bid_modifier = 32 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/click_view.proto b/google/ads/googleads/v6/resources/click_view.proto deleted file mode 100644 index d49c12f75..000000000 --- a/google/ads/googleads/v6/resources/click_view.proto +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/click_location.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ClickViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ClickView resource. - -// A click view with metrics aggregated at each click level, including both -// valid and invalid clicks. For non-Search campaigns, metrics.clicks -// represents the number of valid and invalid interactions. -// Queries including ClickView must have a filter limiting the results to one -// day and can be requested for dates back to 90 days before the time of the -// request. -message ClickView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ClickView" - pattern: "customers/{customer_id}/clickViews/{date}~{gclid}" - }; - - // Output only. The resource name of the click view. - // Click view resource names have the form: - // - // `customers/{customer_id}/clickViews/{date (yyyy-MM-dd)}~{gclid}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ClickView" - } - ]; - - // Output only. The Google Click ID. - optional string gclid = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The location criteria matching the area of interest associated with the - // impression. - google.ads.googleads.v6.common.ClickLocation area_of_interest = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The location criteria matching the location of presence associated with the - // impression. - google.ads.googleads.v6.common.ClickLocation location_of_presence = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Page number in search results where the ad was shown. - optional int64 page_number = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The associated ad. - optional string ad_group_ad = 10 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; - - // Output only. The associated campaign location target, if one exists. - optional string campaign_location_target = 11 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; - - // Output only. The associated user list, if one exists. - optional string user_list = 12 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserList" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/combined_audience.proto b/google/ads/googleads/v6/resources/combined_audience.proto deleted file mode 100644 index e1c26ae5a..000000000 --- a/google/ads/googleads/v6/resources/combined_audience.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/combined_audience_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CombinedAudienceProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Combined Audience resource. - -// Describe a resource for combined audiences which includes different -// audiences. -message CombinedAudience { - option (google.api.resource) = { - type: "googleads.googleapis.com/CombinedAudience" - pattern: "customers/{customer_id}/combinedAudiences/{combined_audience_id}" - }; - - // Immutable. The resource name of the combined audience. - // Combined audience names have the form: - // - // `customers/{customer_id}/combinedAudience/{combined_audience_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CombinedAudience" - } - ]; - - // Output only. ID of the combined audience. - int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Status of this combined audience. Indicates whether the combined audience - // is enabled or removed. - google.ads.googleads.v6.enums.CombinedAudienceStatusEnum.CombinedAudienceStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Name of the combined audience. It should be unique across all combined - // audiences. - string name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Description of this combined audience. - string description = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/conversion_action.proto b/google/ads/googleads/v6/resources/conversion_action.proto deleted file mode 100644 index bcc65adab..000000000 --- a/google/ads/googleads/v6/resources/conversion_action.proto +++ /dev/null @@ -1,176 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/tag_snippet.proto"; -import "google/ads/googleads/v6/enums/attribution_model.proto"; -import "google/ads/googleads/v6/enums/conversion_action_category.proto"; -import "google/ads/googleads/v6/enums/conversion_action_counting_type.proto"; -import "google/ads/googleads/v6/enums/conversion_action_status.proto"; -import "google/ads/googleads/v6/enums/conversion_action_type.proto"; -import "google/ads/googleads/v6/enums/data_driven_model_status.proto"; -import "google/ads/googleads/v6/enums/mobile_app_vendor.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Conversion Action resource. - -// A conversion action. -message ConversionAction { - option (google.api.resource) = { - type: "googleads.googleapis.com/ConversionAction" - pattern: "customers/{customer_id}/conversionActions/{conversion_action_id}" - }; - - // Settings related to this conversion action's attribution model. - message AttributionModelSettings { - // The attribution model type of this conversion action. - google.ads.googleads.v6.enums.AttributionModelEnum.AttributionModel attribution_model = 1; - - // Output only. The status of the data-driven attribution model for the conversion - // action. - google.ads.googleads.v6.enums.DataDrivenModelStatusEnum.DataDrivenModelStatus data_driven_model_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Settings related to the value for conversion events associated with this - // conversion action. - message ValueSettings { - // The value to use when conversion events for this conversion action are - // sent with an invalid, disallowed or missing value, or when - // this conversion action is configured to always use the default value. - optional double default_value = 4; - - // The currency code to use when conversion events for this conversion - // action are sent with an invalid or missing currency code, or when this - // conversion action is configured to always use the default value. - optional string default_currency_code = 5; - - // Controls whether the default value and default currency code are used in - // place of the value and currency code specified in conversion events for - // this conversion action. - optional bool always_use_default_value = 6; - } - - // Settings related to a third party app analytics conversion action. - message ThirdPartyAppAnalyticsSettings { - // Output only. The event name of a third-party app analytics conversion. - optional string event_name = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Name of the third-party app analytics provider. - string provider_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Settings related to a Firebase conversion action. - message FirebaseSettings { - // Output only. The event name of a Firebase conversion. - optional string event_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Firebase project ID of the conversion. - optional string project_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the conversion action. - // Conversion action resource names have the form: - // - // `customers/{customer_id}/conversionActions/{conversion_action_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - } - ]; - - // Output only. The ID of the conversion action. - optional int64 id = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the conversion action. - // - // This field is required and should not be empty when creating new - // conversion actions. - optional string name = 22; - - // The status of this conversion action for conversion event accrual. - google.ads.googleads.v6.enums.ConversionActionStatusEnum.ConversionActionStatus status = 4; - - // Immutable. The type of this conversion action. - google.ads.googleads.v6.enums.ConversionActionTypeEnum.ConversionActionType type = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // The category of conversions reported for this conversion action. - google.ads.googleads.v6.enums.ConversionActionCategoryEnum.ConversionActionCategory category = 6; - - // Output only. The resource name of the conversion action owner customer, or null if this - // is a system-defined conversion action. - optional string owner_customer = 23 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Whether this conversion action should be included in the "conversions" - // metric. - optional bool include_in_conversions_metric = 24; - - // The maximum number of days that may elapse between an interaction - // (e.g., a click) and a conversion event. - optional int64 click_through_lookback_window_days = 25; - - // The maximum number of days which may elapse between an impression and a - // conversion without an interaction. - optional int64 view_through_lookback_window_days = 26; - - // Settings related to the value for conversion events associated with this - // conversion action. - ValueSettings value_settings = 11; - - // How to count conversion events for the conversion action. - google.ads.googleads.v6.enums.ConversionActionCountingTypeEnum.ConversionActionCountingType counting_type = 12; - - // Settings related to this conversion action's attribution model. - AttributionModelSettings attribution_model_settings = 13; - - // Output only. The snippets used for tracking conversions. - repeated google.ads.googleads.v6.common.TagSnippet tag_snippets = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The phone call duration in seconds after which a conversion should be - // reported for this conversion action. - // - // The value must be between 0 and 10000, inclusive. - optional int64 phone_call_duration_seconds = 27; - - // App ID for an app conversion action. - optional string app_id = 28; - - // Output only. Mobile app vendor for an app conversion action. - google.ads.googleads.v6.enums.MobileAppVendorEnum.MobileAppVendor mobile_app_vendor = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Firebase settings for Firebase conversion types. - FirebaseSettings firebase_settings = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Third Party App Analytics settings for third party conversion types. - ThirdPartyAppAnalyticsSettings third_party_app_analytics_settings = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/currency_constant.proto b/google/ads/googleads/v6/resources/currency_constant.proto deleted file mode 100644 index 6958bd22e..000000000 --- a/google/ads/googleads/v6/resources/currency_constant.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CurrencyConstantProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Currency Constant resource. - -// A currency constant. -message CurrencyConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/CurrencyConstant" - pattern: "currencyConstants/{code}" - }; - - // Output only. The resource name of the currency constant. - // Currency constant resource names have the form: - // - // `currencyConstants/{code}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CurrencyConstant" - } - ]; - - // Output only. ISO 4217 three-letter currency code, e.g. "USD" - optional string code = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Full English name of the currency. - optional string name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Standard symbol for describing this currency, e.g. '$' for US Dollars. - optional string symbol = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The billable unit for this currency. Billed amounts should be multiples of - // this value. - optional int64 billable_unit_micros = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/custom_audience.proto b/google/ads/googleads/v6/resources/custom_audience.proto deleted file mode 100644 index 3b661b419..000000000 --- a/google/ads/googleads/v6/resources/custom_audience.proto +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/custom_audience_member_type.proto"; -import "google/ads/googleads/v6/enums/custom_audience_status.proto"; -import "google/ads/googleads/v6/enums/custom_audience_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomAudienceProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Custom Audience resource. - -// A custom audience. This is a list of users by interest. -message CustomAudience { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomAudience" - pattern: "customers/{customer_id}/customAudiences/{custom_audience_id}" - }; - - // Immutable. The resource name of the custom audience. - // Custom audience resource names have the form: - // - // `customers/{customer_id}/customAudiences/{custom_audience_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomAudience" - } - ]; - - // Output only. ID of the custom audience. - int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Status of this custom audience. Indicates whether the custom audience is - // enabled or removed. - google.ads.googleads.v6.enums.CustomAudienceStatusEnum.CustomAudienceStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Name of the custom audience. It should be unique for all custom audiences - // created by a customer. - // This field is required for creating operations. - string name = 4; - - // Type of the custom audience. - // ("INTEREST" OR "PURCHASE_INTENT" is not allowed for newly created custom - // audience but kept for existing audiences) - google.ads.googleads.v6.enums.CustomAudienceTypeEnum.CustomAudienceType type = 5; - - // Description of this custom audience. - string description = 6; - - // List of custom audience members that this custom audience is composed of. - // Members can be added during CustomAudience creation. If members are - // presented in UPDATE operation, existing members will be overridden. - repeated CustomAudienceMember members = 7; -} - -// A member of custom audience. A member can be a KEYWORD, URL, -// PLACE_CATEGORY or APP. It can only be created or removed but not changed. -message CustomAudienceMember { - // The type of custom audience member, KEYWORD, URL, PLACE_CATEGORY or APP. - google.ads.googleads.v6.enums.CustomAudienceMemberTypeEnum.CustomAudienceMemberType member_type = 1; - - // The CustomAudienceMember value. One field is populated depending on the - // member type. - oneof value { - // A keyword or keyword phrase — at most 10 words and 80 characters. - // Languages with double-width characters such as Chinese, Japanese, - // or Korean, are allowed 40 characters, which describes the user's - // interests or actions. - string keyword = 2; - - // An HTTP URL, protocol-included — at most 2048 characters, which includes - // contents users have interests in. - string url = 3; - - // A place type described by a place category users visit. - int64 place_category = 4; - - // A package name of Android apps which users installed such as - // com.google.example. - string app = 5; - } -} diff --git a/google/ads/googleads/v6/resources/custom_interest.proto b/google/ads/googleads/v6/resources/custom_interest.proto deleted file mode 100644 index 25c7499e2..000000000 --- a/google/ads/googleads/v6/resources/custom_interest.proto +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/custom_interest_member_type.proto"; -import "google/ads/googleads/v6/enums/custom_interest_status.proto"; -import "google/ads/googleads/v6/enums/custom_interest_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Custom Interest resource. - -// A custom interest. This is a list of users by interest. -message CustomInterest { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomInterest" - pattern: "customers/{customer_id}/customInterests/{custom_interest_id}" - }; - - // Immutable. The resource name of the custom interest. - // Custom interest resource names have the form: - // - // `customers/{customer_id}/customInterests/{custom_interest_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomInterest" - } - ]; - - // Output only. Id of the custom interest. - optional int64 id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Status of this custom interest. Indicates whether the custom interest is - // enabled or removed. - google.ads.googleads.v6.enums.CustomInterestStatusEnum.CustomInterestStatus status = 3; - - // Name of the custom interest. It should be unique across the same custom - // affinity audience. - // This field is required for create operations. - optional string name = 9; - - // Type of the custom interest, CUSTOM_AFFINITY or CUSTOM_INTENT. - // By default the type is set to CUSTOM_AFFINITY. - google.ads.googleads.v6.enums.CustomInterestTypeEnum.CustomInterestType type = 5; - - // Description of this custom interest audience. - optional string description = 10; - - // List of custom interest members that this custom interest is composed of. - // Members can be added during CustomInterest creation. If members are - // presented in UPDATE operation, existing members will be overridden. - repeated CustomInterestMember members = 7; -} - -// A member of custom interest audience. A member can be a keyword or url. -// It is immutable, that is, it can only be created or removed but not changed. -message CustomInterestMember { - // The type of custom interest member, KEYWORD or URL. - google.ads.googleads.v6.enums.CustomInterestMemberTypeEnum.CustomInterestMemberType member_type = 1; - - // Keyword text when member_type is KEYWORD or URL string when - // member_type is URL. - optional string parameter = 3; -} diff --git a/google/ads/googleads/v6/resources/customer.proto b/google/ads/googleads/v6/resources/customer.proto deleted file mode 100644 index 167eafcbc..000000000 --- a/google/ads/googleads/v6/resources/customer.proto +++ /dev/null @@ -1,161 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/customer_pay_per_conversion_eligibility_failure_reason.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Customer resource. - -// A customer. -message Customer { - option (google.api.resource) = { - type: "googleads.googleapis.com/Customer" - pattern: "customers/{customer_id}" - }; - - // Immutable. The resource name of the customer. - // Customer resource names have the form: - // - // `customers/{customer_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. The ID of the customer. - optional int64 id = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional, non-unique descriptive name of the customer. - optional string descriptive_name = 20; - - // Immutable. The currency in which the account operates. - // A subset of the currency codes from the ISO 4217 standard is - // supported. - optional string currency_code = 21 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The local timezone ID of the customer. - optional string time_zone = 22 [(google.api.field_behavior) = IMMUTABLE]; - - // The URL template for constructing a tracking URL out of parameters. - optional string tracking_url_template = 23; - - // The URL template for appending params to the final URL - optional string final_url_suffix = 24; - - // Whether auto-tagging is enabled for the customer. - optional bool auto_tagging_enabled = 25; - - // Output only. Whether the Customer has a Partners program badge. If the Customer is not - // associated with the Partners program, this will be false. For more - // information, see https://support.google.com/partners/answer/3125774. - optional bool has_partners_badge = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the customer is a manager. - optional bool manager = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the customer is a test account. - optional bool test_account = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Call reporting setting for a customer. - CallReportingSetting call_reporting_setting = 10; - - // Output only. Conversion tracking setting for a customer. - ConversionTrackingSetting conversion_tracking_setting = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Remarketing setting for a customer. - RemarketingSetting remarketing_setting = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Reasons why the customer is not eligible to use PaymentMode.CONVERSIONS. If - // the list is empty, the customer is eligible. This field is read-only. - repeated google.ads.googleads.v6.enums.CustomerPayPerConversionEligibilityFailureReasonEnum.CustomerPayPerConversionEligibilityFailureReason pay_per_conversion_eligibility_failure_reasons = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Optimization score of the customer. - // - // Optimization score is an estimate of how well a customer's campaigns are - // set to perform. It ranges from 0% (0.0) to 100% (1.0). This field is null - // for all manager customers, and for unscored non-manager customers. - // - // See "About optimization score" at - // https://support.google.com/google-ads/answer/9061546. - // - // This field is read-only. - optional double optimization_score = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Optimization score weight of the customer. - // - // Optimization score weight can be used to compare/aggregate optimization - // scores across multiple non-manager customers. The aggregate optimization - // score of a manager is computed as the sum over all of their customers of - // `Customer.optimization_score * Customer.optimization_score_weight`. This - // field is 0 for all manager customers, and for unscored non-manager - // customers. - // - // This field is read-only. - double optimization_score_weight = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Call reporting setting for a customer. -message CallReportingSetting { - // Enable reporting of phone call events by redirecting them via Google - // System. - optional bool call_reporting_enabled = 10; - - // Whether to enable call conversion reporting. - optional bool call_conversion_reporting_enabled = 11; - - // Customer-level call conversion action to attribute a call conversion to. - // If not set a default conversion action is used. Only in effect when - // call_conversion_reporting_enabled is set to true. - optional string call_conversion_action = 12 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - }]; -} - -// A collection of customer-wide settings related to Google Ads Conversion -// Tracking. -message ConversionTrackingSetting { - // Output only. The conversion tracking id used for this account. This id is automatically - // assigned after any conversion tracking feature is used. If the customer - // doesn't use conversion tracking, this is 0. This field is read-only. - optional int64 conversion_tracking_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The conversion tracking id of the customer's manager. This is set when the - // customer is opted into cross account conversion tracking, and it overrides - // conversion_tracking_id. This field can only be managed through the Google - // Ads UI. This field is read-only. - optional int64 cross_account_conversion_tracking_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Remarketing setting for a customer. -message RemarketingSetting { - // Output only. The Google global site tag. - optional string google_global_site_tag = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/customer_client.proto b/google/ads/googleads/v6/resources/customer_client.proto deleted file mode 100644 index b0cdc8def..000000000 --- a/google/ads/googleads/v6/resources/customer_client.proto +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the CustomerClient resource. - -// A link between the given customer and a client customer. CustomerClients only -// exist for manager customers. All direct and indirect client customers are -// included, as well as the manager itself. -message CustomerClient { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerClient" - pattern: "customers/{customer_id}/customerClients/{client_customer_id}" - }; - - // Output only. The resource name of the customer client. - // CustomerClient resource names have the form: - // `customers/{customer_id}/customerClients/{client_customer_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClient" - } - ]; - - // Output only. The resource name of the client-customer which is linked to - // the given customer. Read only. - optional string client_customer = 12 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. Specifies whether this is a - // [hidden account](https://support.google.com/google-ads/answer/7519830). - // Read only. - optional bool hidden = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Distance between given customer and client. For self link, the level value - // will be 0. Read only. - optional int64 level = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Common Locale Data Repository (CLDR) string representation of the - // time zone of the client, e.g. America/Los_Angeles. Read only. - optional string time_zone = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Identifies if the client is a test account. Read only. - optional bool test_account = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Identifies if the client is a manager. Read only. - optional bool manager = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Descriptive name for the client. Read only. - optional string descriptive_name = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Currency code (e.g. 'USD', 'EUR') for the client. Read only. - optional string currency_code = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ID of the client customer. Read only. - optional int64 id = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/customer_client_link.proto b/google/ads/googleads/v6/resources/customer_client_link.proto deleted file mode 100644 index 8fe9af285..000000000 --- a/google/ads/googleads/v6/resources/customer_client_link.proto +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/manager_link_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientLinkProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the CustomerClientLink resource. - -// Represents customer client link relationship. -message CustomerClientLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerClientLink" - pattern: "customers/{customer_id}/customerClientLinks/{client_customer_id}~{manager_link_id}" - }; - - // Immutable. Name of the resource. - // CustomerClientLink resource names have the form: - // `customers/{customer_id}/customerClientLinks/{client_customer_id}~{manager_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClientLink" - } - ]; - - // Immutable. The client customer linked to this customer. - optional string client_customer = 7 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. This is uniquely identifies a customer client link. Read only. - optional int64 manager_link_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // This is the status of the link between client and manager. - google.ads.googleads.v6.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; - - // The visibility of the link. Users can choose whether or not to see hidden - // links in the Google Ads UI. - // Default value is false - optional bool hidden = 9; -} diff --git a/google/ads/googleads/v6/resources/customer_extension_setting.proto b/google/ads/googleads/v6/resources/customer_extension_setting.proto deleted file mode 100644 index fcd96e19a..000000000 --- a/google/ads/googleads/v6/resources/customer_extension_setting.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/extension_setting_device.proto"; -import "google/ads/googleads/v6/enums/extension_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerExtensionSettingProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the CustomerExtensionSetting resource. - -// A customer extension setting. -message CustomerExtensionSetting { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerExtensionSetting" - pattern: "customers/{customer_id}/customerExtensionSettings/{extension_type}" - }; - - // Immutable. The resource name of the customer extension setting. - // CustomerExtensionSetting resource names have the form: - // - // `customers/{customer_id}/customerExtensionSettings/{extension_type}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerExtensionSetting" - } - ]; - - // Immutable. The extension type of the customer extension setting. - google.ads.googleads.v6.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; - - // The resource names of the extension feed items to serve under the customer. - // ExtensionFeedItem resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - repeated string extension_feed_items = 5 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - }]; - - // The device for which the extensions will serve. Optional. - google.ads.googleads.v6.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 4; -} diff --git a/google/ads/googleads/v6/resources/customer_feed.proto b/google/ads/googleads/v6/resources/customer_feed.proto deleted file mode 100644 index 4d051c246..000000000 --- a/google/ads/googleads/v6/resources/customer_feed.proto +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/matching_function.proto"; -import "google/ads/googleads/v6/enums/feed_link_status.proto"; -import "google/ads/googleads/v6/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerFeedProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the CustomerFeed resource. - -// A customer feed. -message CustomerFeed { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerFeed" - pattern: "customers/{customer_id}/customerFeeds/{feed_id}" - }; - - // Immutable. The resource name of the customer feed. - // Customer feed resource names have the form: - // - // `customers/{customer_id}/customerFeeds/{feed_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerFeed" - } - ]; - - // Immutable. The feed being linked to the customer. - optional string feed = 6 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Indicates which placeholder types the feed may populate under the connected - // customer. Required. - repeated google.ads.googleads.v6.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 3; - - // Matching function associated with the CustomerFeed. - // The matching function is used to filter the set of feed items selected. - // Required. - google.ads.googleads.v6.common.MatchingFunction matching_function = 4; - - // Output only. Status of the customer feed. - // This field is read-only. - google.ads.googleads.v6.enums.FeedLinkStatusEnum.FeedLinkStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/customer_label.proto b/google/ads/googleads/v6/resources/customer_label.proto deleted file mode 100644 index 2fad652d2..000000000 --- a/google/ads/googleads/v6/resources/customer_label.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerLabelProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the customer label resource. - -// Represents a relationship between a customer and a label. This customer may -// not have access to all the labels attached to it. Additional CustomerLabels -// may be returned by increasing permissions with login-customer-id. -message CustomerLabel { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerLabel" - pattern: "customers/{customer_id}/customerLabels/{label_id}" - }; - - // Immutable. Name of the resource. - // Customer label resource names have the form: - // `customers/{customer_id}/customerLabels/{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerLabel" - } - ]; - - // Output only. The resource name of the customer to which the label is attached. - // Read only. - optional string customer = 4 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. The resource name of the label assigned to the customer. - // - // Note: the Customer ID portion of the label resource name is not - // validated when creating a new CustomerLabel. - optional string label = 5 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/customer_manager_link.proto b/google/ads/googleads/v6/resources/customer_manager_link.proto deleted file mode 100644 index 0c60e13ab..000000000 --- a/google/ads/googleads/v6/resources/customer_manager_link.proto +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/manager_link_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerManagerLinkProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the CustomerManagerLink resource. - -// Represents customer-manager link relationship. -message CustomerManagerLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerManagerLink" - pattern: "customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}" - }; - - // Immutable. Name of the resource. - // CustomerManagerLink resource names have the form: - // `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerManagerLink" - } - ]; - - // Output only. The manager customer linked to the customer. - optional string manager_customer = 6 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; - - // Output only. ID of the customer-manager link. This field is read only. - optional int64 manager_link_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Status of the link between the customer and the manager. - google.ads.googleads.v6.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; -} diff --git a/google/ads/googleads/v6/resources/customer_negative_criterion.proto b/google/ads/googleads/v6/resources/customer_negative_criterion.proto deleted file mode 100644 index 22d185bec..000000000 --- a/google/ads/googleads/v6/resources/customer_negative_criterion.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/criteria.proto"; -import "google/ads/googleads/v6/enums/criterion_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerNegativeCriterionProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Customer Negative Criterion resource. - -// A negative criterion for exclusions at the customer level. -message CustomerNegativeCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerNegativeCriterion" - pattern: "customers/{customer_id}/customerNegativeCriteria/{criterion_id}" - }; - - // Immutable. The resource name of the customer negative criterion. - // Customer negative criterion resource names have the form: - // - // `customers/{customer_id}/customerNegativeCriteria/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerNegativeCriterion" - } - ]; - - // Output only. The ID of the criterion. - optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of the criterion. - google.ads.googleads.v6.enums.CriterionTypeEnum.CriterionType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The customer negative criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. ContentLabel. - google.ads.googleads.v6.common.ContentLabelInfo content_label = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. MobileApplication. - google.ads.googleads.v6.common.MobileApplicationInfo mobile_application = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. MobileAppCategory. - google.ads.googleads.v6.common.MobileAppCategoryInfo mobile_app_category = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v6.common.PlacementInfo placement = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v6.common.YouTubeVideoInfo youtube_video = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v6.common.YouTubeChannelInfo youtube_channel = 9 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v6/resources/customer_user_access.proto b/google/ads/googleads/v6/resources/customer_user_access.proto deleted file mode 100644 index 3d05f0440..000000000 --- a/google/ads/googleads/v6/resources/customer_user_access.proto +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/access_role.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerUserAccessProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the CustomerUserAccess resource. - -// Represents the permission of a single user onto a single customer. -message CustomerUserAccess { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerUserAccess" - pattern: "customers/{customer_id}/customerUserAccesses/{user_id}" - }; - - // Immutable. Name of the resource. - // Resource names have the form: - // `customers/{customer_id}/customerUserAccesses/{user_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerUserAccess" - } - ]; - - // Output only. User id of the user with the customer access. - // Read only field - int64 user_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Email address of the user. - // Read only field - optional string email_address = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Access role of the user. - google.ads.googleads.v6.enums.AccessRoleEnum.AccessRole access_role = 4; - - // Output only. The customer user access creation time. - // Read only field - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - optional string access_creation_date_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The email address of the inviter user. - // Read only field - optional string inviter_user_email_address = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/customer_user_access_invitation.proto b/google/ads/googleads/v6/resources/customer_user_access_invitation.proto deleted file mode 100644 index 8ad405a1b..000000000 --- a/google/ads/googleads/v6/resources/customer_user_access_invitation.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/access_invitation_status.proto"; -import "google/ads/googleads/v6/enums/access_role.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "CustomerUserAccessInvitationProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the CustomerUserAccessInvitation resource. - -// Represent an invitation to a new user on this customer account. -message CustomerUserAccessInvitation { - option (google.api.resource) = { - type: "googleads.googleapis.com/CustomerUserAccessInvitation" - pattern: "customers/{customer_id}/customerUserAccessInvitations/{invitation_id}" - }; - - // Immutable. Name of the resource. - // Resource names have the form: - // `customers/{customer_id}/customerUserAccessInvitations/{invitation_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerUserAccessInvitation" - } - ]; - - // Output only. The ID of the invitation. - // This field is read-only. - int64 invitation_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Access role of the user. - google.ads.googleads.v6.enums.AccessRoleEnum.AccessRole access_role = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Email address the invitation was sent to. - // This can differ from the email address of the account - // that accepts the invite. - string email_address = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Time invitation was created. - // This field is read-only. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - string creation_date_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Invitation status of the user. - google.ads.googleads.v6.enums.AccessInvitationStatusEnum.AccessInvitationStatus invitation_status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/detail_placement_view.proto b/google/ads/googleads/v6/resources/detail_placement_view.proto deleted file mode 100644 index 2afe842fb..000000000 --- a/google/ads/googleads/v6/resources/detail_placement_view.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/placement_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DetailPlacementViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the detail placement view resource. - -// A view with metrics aggregated by ad group and URL or YouTube video. -message DetailPlacementView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DetailPlacementView" - pattern: "customers/{customer_id}/detailPlacementViews/{ad_group_id}~{base64_placement}" - }; - - // Output only. The resource name of the detail placement view. - // Detail placement view resource names have the form: - // - // `customers/{customer_id}/detailPlacementViews/{ad_group_id}~{base64_placement}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DetailPlacementView" - } - ]; - - // Output only. The automatic placement string at detail level, e. g. website URL, mobile - // application ID, or a YouTube video ID. - optional string placement = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The display name is URL name for websites, YouTube video name for YouTube - // videos, and translated mobile app name for mobile apps. - optional string display_name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. URL of the group placement, e.g. domain, link to the mobile application in - // app store, or a YouTube channel URL. - optional string group_placement_target_url = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. URL of the placement, e.g. website, link to the mobile application in app - // store, or a YouTube video URL. - optional string target_url = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Type of the placement, e.g. Website, YouTube Video, and Mobile Application. - google.ads.googleads.v6.enums.PlacementTypeEnum.PlacementType placement_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/display_keyword_view.proto b/google/ads/googleads/v6/resources/display_keyword_view.proto deleted file mode 100644 index e5aa221bc..000000000 --- a/google/ads/googleads/v6/resources/display_keyword_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DisplayKeywordViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the display keyword view resource. - -// A display keyword view. -message DisplayKeywordView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DisplayKeywordView" - pattern: "customers/{customer_id}/displayKeywordViews/{ad_group_id}~{criterion_id}" - }; - - // Output only. The resource name of the display keyword view. - // Display Keyword view resource names have the form: - // - // `customers/{customer_id}/displayKeywordViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DisplayKeywordView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/distance_view.proto b/google/ads/googleads/v6/resources/distance_view.proto deleted file mode 100644 index 480ac4a14..000000000 --- a/google/ads/googleads/v6/resources/distance_view.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/distance_bucket.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DistanceViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the DistanceView resource. - -// A distance view with metrics aggregated by the user's distance from an -// advertiser's location extensions. Each DistanceBucket includes all -// impressions that fall within its distance and a single impression will -// contribute to the metrics for all DistanceBuckets that include the user's -// distance. -message DistanceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DistanceView" - pattern: "customers/{customer_id}/distanceViews/{placeholder_chain_id}~{distance_bucket}" - }; - - // Output only. The resource name of the distance view. - // Distance view resource names have the form: - // - // `customers/{customer_id}/distanceViews/1~{distance_bucket}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DistanceView" - } - ]; - - // Output only. Grouping of user distance from location extensions. - google.ads.googleads.v6.enums.DistanceBucketEnum.DistanceBucket distance_bucket = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if the DistanceBucket is using the metric system, false otherwise. - optional bool metric_system = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/domain_category.proto b/google/ads/googleads/v6/resources/domain_category.proto deleted file mode 100644 index 389a4973f..000000000 --- a/google/ads/googleads/v6/resources/domain_category.proto +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DomainCategoryProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Domain Category resource. - -// A category generated automatically by crawling a domain. If a campaign uses -// the DynamicSearchAdsSetting, then domain categories will be generated for -// the domain. The categories can be targeted using WebpageConditionInfo. -// See: https://support.google.com/google-ads/answer/2471185 -message DomainCategory { - option (google.api.resource) = { - type: "googleads.googleapis.com/DomainCategory" - pattern: "customers/{customer_id}/domainCategories/{campaign_id}~{base64_category}~{language_code}" - }; - - // Output only. The resource name of the domain category. - // Domain category resource names have the form: - // - // `customers/{customer_id}/domainCategories/{campaign_id}~{category_base64}~{language_code}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DomainCategory" - } - ]; - - // Output only. The campaign this category is recommended for. - optional string campaign = 10 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. Recommended category for the website domain. e.g. if you have a website - // about electronics, the categories could be "cameras", "televisions", etc. - optional string category = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The language code specifying the language of the website. e.g. "en" for - // English. The language can be specified in the DynamicSearchAdsSetting - // required for dynamic search ads. This is the language of the pages from - // your website that you want Google Ads to find, create ads for, - // and match searches with. - optional string language_code = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The domain for the website. The domain can be specified in the - // DynamicSearchAdsSetting required for dynamic search ads. - optional string domain = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Fraction of pages on your site that this category matches. - optional double coverage_fraction = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The position of this category in the set of categories. Lower numbers - // indicate a better match for the domain. null indicates not recommended. - optional int64 category_rank = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates whether this category has sub-categories. - optional bool has_children = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended cost per click for the category. - optional int64 recommended_cpc_bid_micros = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/dynamic_search_ads_search_term_view.proto b/google/ads/googleads/v6/resources/dynamic_search_ads_search_term_view.proto deleted file mode 100644 index 531679ff5..000000000 --- a/google/ads/googleads/v6/resources/dynamic_search_ads_search_term_view.proto +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "DynamicSearchAdsSearchTermViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Dynamic Search Ads Search Term View resource. - -// A dynamic search ads search term view. -message DynamicSearchAdsSearchTermView { - option (google.api.resource) = { - type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" - pattern: "customers/{customer_id}/dynamicSearchAdsSearchTermViews/{ad_group_id}~{search_term_fingerprint}~{headline_fingerprint}~{landing_page_fingerprint}~{page_url_fingerprint}" - }; - - // Output only. The resource name of the dynamic search ads search term view. - // Dynamic search ads search term view resource names have the form: - // - // `customers/{customer_id}/dynamicSearchAdsSearchTermViews/{ad_group_id}~{search_term_fingerprint}~{headline_fingerprint}~{landing_page_fingerprint}~{page_url_fingerprint}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" - } - ]; - - // Output only. Search term - // - // This field is read-only. - optional string search_term = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The dynamically generated headline of the Dynamic Search Ad. - // - // This field is read-only. - optional string headline = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The dynamically selected landing page URL of the impression. - // - // This field is read-only. - optional string landing_page = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The URL of page feed item served for the impression. - // - // This field is read-only. - optional string page_url = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if query matches a negative keyword. - // - // This field is read-only. - optional bool has_negative_keyword = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if query is added to targeted keywords. - // - // This field is read-only. - optional bool has_matching_keyword = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. True if query matches a negative url. - // - // This field is read-only. - optional bool has_negative_url = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/expanded_landing_page_view.proto b/google/ads/googleads/v6/resources/expanded_landing_page_view.proto deleted file mode 100644 index f0dd19c3a..000000000 --- a/google/ads/googleads/v6/resources/expanded_landing_page_view.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ExpandedLandingPageViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the expanded landing page view resource. - -// A landing page view with metrics aggregated at the expanded final URL -// level. -message ExpandedLandingPageView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ExpandedLandingPageView" - pattern: "customers/{customer_id}/expandedLandingPageViews/{expanded_final_url_fingerprint}" - }; - - // Output only. The resource name of the expanded landing page view. - // Expanded landing page view resource names have the form: - // - // `customers/{customer_id}/expandedLandingPageViews/{expanded_final_url_fingerprint}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExpandedLandingPageView" - } - ]; - - // Output only. The final URL that clicks are directed to. - optional string expanded_final_url = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/extension_feed_item.proto b/google/ads/googleads/v6/resources/extension_feed_item.proto deleted file mode 100644 index d7af72a03..000000000 --- a/google/ads/googleads/v6/resources/extension_feed_item.proto +++ /dev/null @@ -1,151 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/criteria.proto"; -import "google/ads/googleads/v6/common/extensions.proto"; -import "google/ads/googleads/v6/enums/extension_type.proto"; -import "google/ads/googleads/v6/enums/feed_item_status.proto"; -import "google/ads/googleads/v6/enums/feed_item_target_device.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionFeedItemProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ExtensionFeedItem resource. - -// An extension feed item. -message ExtensionFeedItem { - option (google.api.resource) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - pattern: "customers/{customer_id}/extensionFeedItems/{feed_item_id}" - }; - - // Immutable. The resource name of the extension feed item. - // Extension feed item resource names have the form: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - } - ]; - - // Output only. The ID of this feed item. Read-only. - optional int64 id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The extension type of the extension feed item. - // This field is read-only. - google.ads.googleads.v6.enums.ExtensionTypeEnum.ExtensionType extension_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Start time in which this feed item is effective and can begin serving. The - // time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - optional string start_date_time = 26; - - // End time in which this feed item is no longer effective and will stop - // serving. The time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - optional string end_date_time = 27; - - // List of non-overlapping schedules specifying all time intervals - // for which the feed item may serve. There can be a maximum of 6 schedules - // per day. - repeated google.ads.googleads.v6.common.AdScheduleInfo ad_schedules = 16; - - // The targeted device. - google.ads.googleads.v6.enums.FeedItemTargetDeviceEnum.FeedItemTargetDevice device = 17; - - // The targeted geo target constant. - optional string targeted_geo_target_constant = 30 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - }]; - - // The targeted keyword. - google.ads.googleads.v6.common.KeywordInfo targeted_keyword = 22; - - // Output only. Status of the feed item. - // This field is read-only. - google.ads.googleads.v6.enums.FeedItemStatusEnum.FeedItemStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Extension type. - oneof extension { - // Sitelink extension. - google.ads.googleads.v6.common.SitelinkFeedItem sitelink_feed_item = 2; - - // Structured snippet extension. - google.ads.googleads.v6.common.StructuredSnippetFeedItem structured_snippet_feed_item = 3; - - // App extension. - google.ads.googleads.v6.common.AppFeedItem app_feed_item = 7; - - // Call extension. - google.ads.googleads.v6.common.CallFeedItem call_feed_item = 8; - - // Callout extension. - google.ads.googleads.v6.common.CalloutFeedItem callout_feed_item = 9; - - // Text message extension. - google.ads.googleads.v6.common.TextMessageFeedItem text_message_feed_item = 10; - - // Price extension. - google.ads.googleads.v6.common.PriceFeedItem price_feed_item = 11; - - // Promotion extension. - google.ads.googleads.v6.common.PromotionFeedItem promotion_feed_item = 12; - - // Output only. Location extension. Locations are synced from a GMB account into a feed. - // This field is read-only. - google.ads.googleads.v6.common.LocationFeedItem location_feed_item = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Affiliate location extension. Feed locations are populated by Google Ads - // based on a chain ID. - // This field is read-only. - google.ads.googleads.v6.common.AffiliateLocationFeedItem affiliate_location_feed_item = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Hotel Callout extension. - google.ads.googleads.v6.common.HotelCalloutFeedItem hotel_callout_feed_item = 23; - - // Immutable. Advertiser provided image extension. - google.ads.googleads.v6.common.ImageFeedItem image_feed_item = 31 [(google.api.field_behavior) = IMMUTABLE]; - } - - // Targeting at either the campaign or ad group level. Feed items that target - // a campaign or ad group will only serve with that resource. - oneof serving_resource_targeting { - // The targeted campaign. - string targeted_campaign = 28 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - }]; - - // The targeted ad group. - string targeted_ad_group = 29 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - }]; - } -} diff --git a/google/ads/googleads/v6/resources/feed.proto b/google/ads/googleads/v6/resources/feed.proto deleted file mode 100644 index a0e09a586..000000000 --- a/google/ads/googleads/v6/resources/feed.proto +++ /dev/null @@ -1,192 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/affiliate_location_feed_relationship_type.proto"; -import "google/ads/googleads/v6/enums/feed_attribute_type.proto"; -import "google/ads/googleads/v6/enums/feed_origin.proto"; -import "google/ads/googleads/v6/enums/feed_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Feed resource. - -// A feed. -message Feed { - option (google.api.resource) = { - type: "googleads.googleapis.com/Feed" - pattern: "customers/{customer_id}/feeds/{feed_id}" - }; - - // Data used to configure a location feed populated from Google My Business - // Locations. - message PlacesLocationFeedData { - // Data used for authorization using OAuth. - message OAuthInfo { - // The HTTP method used to obtain authorization. - optional string http_method = 4; - - // The HTTP request URL used to obtain authorization. - optional string http_request_url = 5; - - // The HTTP authorization header used to obtain authorization. - optional string http_authorization_header = 6; - } - - // Immutable. Required authentication token (from OAuth API) for the email. - // This field can only be specified in a create request. All its subfields - // are not selectable. - OAuthInfo oauth_info = 1 [(google.api.field_behavior) = IMMUTABLE]; - - // Email address of a Google My Business account or email address of a - // manager of the Google My Business account. Required. - optional string email_address = 7; - - // Plus page ID of the managed business whose locations should be used. If - // this field is not set, then all businesses accessible by the user - // (specified by email_address) are used. - // This field is mutate-only and is not selectable. - string business_account_id = 8; - - // Used to filter Google My Business listings by business name. If - // business_name_filter is set, only listings with a matching business name - // are candidates to be sync'd into FeedItems. - optional string business_name_filter = 9; - - // Used to filter Google My Business listings by categories. If entries - // exist in category_filters, only listings that belong to any of the - // categories are candidates to be sync'd into FeedItems. If no entries - // exist in category_filters, then all listings are candidates for syncing. - repeated string category_filters = 11; - - // Used to filter Google My Business listings by labels. If entries exist in - // label_filters, only listings that has any of the labels set are - // candidates to be synchronized into FeedItems. If no entries exist in - // label_filters, then all listings are candidates for syncing. - repeated string label_filters = 12; - } - - // Data used to configure an affiliate location feed populated with the - // specified chains. - message AffiliateLocationFeedData { - // The list of chains that the affiliate location feed will sync the - // locations from. - repeated int64 chain_ids = 3; - - // The relationship the chains have with the advertiser. - google.ads.googleads.v6.enums.AffiliateLocationFeedRelationshipTypeEnum.AffiliateLocationFeedRelationshipType relationship_type = 2; - } - - // Immutable. The resource name of the feed. - // Feed resource names have the form: - // - // `customers/{customer_id}/feeds/{feed_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Output only. The ID of the feed. - // This field is read-only. - optional int64 id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Name of the feed. Required. - optional string name = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // The Feed's attributes. Required on CREATE, unless - // system_feed_generation_data is provided, in which case Google Ads will - // update the feed with the correct attributes. - // Disallowed on UPDATE. Use attribute_operations to add new attributes. - repeated FeedAttribute attributes = 4; - - // The list of operations changing the feed attributes. Attributes can only - // be added, not removed. - repeated FeedAttributeOperation attribute_operations = 9; - - // Immutable. Specifies who manages the FeedAttributes for the Feed. - google.ads.googleads.v6.enums.FeedOriginEnum.FeedOrigin origin = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Status of the feed. - // This field is read-only. - google.ads.googleads.v6.enums.FeedStatusEnum.FeedStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The system data for the Feed. This data specifies information for - // generating the feed items of the system generated feed. - oneof system_feed_generation_data { - // Data used to configure a location feed populated from Google My Business - // Locations. - PlacesLocationFeedData places_location_feed_data = 6; - - // Data used to configure an affiliate location feed populated with - // the specified chains. - AffiliateLocationFeedData affiliate_location_feed_data = 7; - } -} - -// FeedAttributes define the types of data expected to be present in a Feed. A -// single FeedAttribute specifies the expected type of the FeedItemAttributes -// with the same FeedAttributeId. Optionally, a FeedAttribute can be marked as -// being part of a FeedItem's unique key. -message FeedAttribute { - // ID of the attribute. - optional int64 id = 5; - - // The name of the attribute. Required. - optional string name = 6; - - // Data type for feed attribute. Required. - google.ads.googleads.v6.enums.FeedAttributeTypeEnum.FeedAttributeType type = 3; - - // Indicates that data corresponding to this attribute is part of a - // FeedItem's unique key. It defaults to false if it is unspecified. Note - // that a unique key is not required in a Feed's schema, in which case the - // FeedItems must be referenced by their feed_item_id. - optional bool is_part_of_key = 7; -} - -// Operation to be performed on a feed attribute list in a mutate. -message FeedAttributeOperation { - // The operator. - enum Operator { - // Unspecified. - UNSPECIFIED = 0; - - // Used for return value only. Represents value unknown in this version. - UNKNOWN = 1; - - // Add the attribute to the existing attributes. - ADD = 2; - } - - // Output only. Type of list operation to perform. - Operator operator = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The feed attribute being added to the list. - FeedAttribute value = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/feed_item.proto b/google/ads/googleads/v6/resources/feed_item.proto deleted file mode 100644 index 42a41a107..000000000 --- a/google/ads/googleads/v6/resources/feed_item.proto +++ /dev/null @@ -1,214 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/custom_parameter.proto"; -import "google/ads/googleads/v6/common/feed_common.proto"; -import "google/ads/googleads/v6/common/policy.proto"; -import "google/ads/googleads/v6/enums/feed_item_quality_approval_status.proto"; -import "google/ads/googleads/v6/enums/feed_item_quality_disapproval_reason.proto"; -import "google/ads/googleads/v6/enums/feed_item_status.proto"; -import "google/ads/googleads/v6/enums/feed_item_validation_status.proto"; -import "google/ads/googleads/v6/enums/geo_targeting_restriction.proto"; -import "google/ads/googleads/v6/enums/placeholder_type.proto"; -import "google/ads/googleads/v6/enums/policy_approval_status.proto"; -import "google/ads/googleads/v6/enums/policy_review_status.proto"; -import "google/ads/googleads/v6/errors/feed_item_validation_error.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the FeedItem resource. - -// A feed item. -message FeedItem { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedItem" - pattern: "customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}" - }; - - // Immutable. The resource name of the feed item. - // Feed item resource names have the form: - // - // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; - - // Immutable. The feed to which this feed item belongs. - optional string feed = 11 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Output only. The ID of this feed item. - optional int64 id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Start time in which this feed item is effective and can begin serving. The - // time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - optional string start_date_time = 13; - - // End time in which this feed item is no longer effective and will stop - // serving. The time is in the customer's time zone. - // The format is "YYYY-MM-DD HH:MM:SS". - // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" - optional string end_date_time = 14; - - // The feed item's attribute values. - repeated FeedItemAttributeValue attribute_values = 6; - - // Geo targeting restriction specifies the type of location that can be used - // for targeting. - google.ads.googleads.v6.enums.GeoTargetingRestrictionEnum.GeoTargetingRestriction geo_targeting_restriction = 7; - - // The list of mappings used to substitute custom parameter tags in a - // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. - repeated google.ads.googleads.v6.common.CustomParameter url_custom_parameters = 8; - - // Output only. Status of the feed item. - // This field is read-only. - google.ads.googleads.v6.enums.FeedItemStatusEnum.FeedItemStatus status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of info about a feed item's validation and approval state for active - // feed mappings. There will be an entry in the list for each type of feed - // mapping associated with the feed, e.g. a feed with a sitelink and a call - // feed mapping would cause every feed item associated with that feed to have - // an entry in this list for both sitelink and call. - // This field is read-only. - repeated FeedItemPlaceholderPolicyInfo policy_infos = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// A feed item attribute value. -message FeedItemAttributeValue { - // Id of the feed attribute for which the value is associated with. - optional int64 feed_attribute_id = 11; - - // Int64 value. Should be set if feed_attribute_id refers to a feed attribute - // of type INT64. - optional int64 integer_value = 12; - - // Bool value. Should be set if feed_attribute_id refers to a feed attribute - // of type BOOLEAN. - optional bool boolean_value = 13; - - // String value. Should be set if feed_attribute_id refers to a feed attribute - // of type STRING, URL or DATE_TIME. - // For STRING the maximum length is 1500 characters. For URL the maximum - // length is 2076 characters. For DATE_TIME the string must be in the format - // "YYYYMMDD HHMMSS". - optional string string_value = 14; - - // Double value. Should be set if feed_attribute_id refers to a feed attribute - // of type DOUBLE. - optional double double_value = 15; - - // Price value. Should be set if feed_attribute_id refers to a feed attribute - // of type PRICE. - google.ads.googleads.v6.common.Money price_value = 6; - - // Repeated int64 value. Should be set if feed_attribute_id refers to a feed - // attribute of type INT64_LIST. - repeated int64 integer_values = 16; - - // Repeated bool value. Should be set if feed_attribute_id refers to a feed - // attribute of type BOOLEAN_LIST. - repeated bool boolean_values = 17; - - // Repeated string value. Should be set if feed_attribute_id refers to a feed - // attribute of type STRING_LIST, URL_LIST or DATE_TIME_LIST. - // For STRING_LIST and URL_LIST the total size of the list in bytes may not - // exceed 3000. For DATE_TIME_LIST the number of elements may not exceed 200. - // - // For STRING_LIST the maximum length of each string element is 1500 - // characters. For URL_LIST the maximum length is 2076 characters. For - // DATE_TIME the format of the string must be the same as start and end time - // for the feed item. - repeated string string_values = 18; - - // Repeated double value. Should be set if feed_attribute_id refers to a feed - // attribute of type DOUBLE_LIST. - repeated double double_values = 19; -} - -// Policy, validation, and quality approval info for a feed item for the -// specified placeholder type. -message FeedItemPlaceholderPolicyInfo { - // Output only. The placeholder type. - google.ads.googleads.v6.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type_enum = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The FeedMapping that contains the placeholder type. - optional string feed_mapping_resource_name = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Where the placeholder type is in the review process. - google.ads.googleads.v6.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The overall approval status of the placeholder type, calculated based on - // the status of its individual policy topic entries. - google.ads.googleads.v6.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The list of policy findings for the placeholder type. - repeated google.ads.googleads.v6.common.PolicyTopicEntry policy_topic_entries = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The validation status of the palceholder type. - google.ads.googleads.v6.enums.FeedItemValidationStatusEnum.FeedItemValidationStatus validation_status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of placeholder type validation errors. - repeated FeedItemValidationError validation_errors = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Placeholder type quality evaluation approval status. - google.ads.googleads.v6.enums.FeedItemQualityApprovalStatusEnum.FeedItemQualityApprovalStatus quality_approval_status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. List of placeholder type quality evaluation disapproval reasons. - repeated google.ads.googleads.v6.enums.FeedItemQualityDisapprovalReasonEnum.FeedItemQualityDisapprovalReason quality_disapproval_reasons = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Stores a validation error and the set of offending feed attributes which -// together are responsible for causing a feed item validation error. -message FeedItemValidationError { - // Output only. Error code indicating what validation error was triggered. The description - // of the error can be found in the 'description' field. - google.ads.googleads.v6.errors.FeedItemValidationErrorEnum.FeedItemValidationError validation_error = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The description of the validation error. - optional string description = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Set of feed attributes in the feed item flagged during validation. If - // empty, no specific feed attributes can be associated with the error - // (e.g. error across the entire feed item). - repeated int64 feed_attribute_ids = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Any extra information related to this error which is not captured by - // validation_error and feed_attribute_id (e.g. placeholder field IDs when - // feed_attribute_id is not mapped). Note that extra_info is not localized. - optional string extra_info = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/feed_item_set.proto b/google/ads/googleads/v6/resources/feed_item_set.proto deleted file mode 100644 index 33232cce2..000000000 --- a/google/ads/googleads/v6/resources/feed_item_set.proto +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/feed_item_set_filter_type_infos.proto"; -import "google/ads/googleads/v6/enums/feed_item_set_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemSetProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Represents a set of feed items. The set can be used and shared among certain -// feed item features. For instance, the set can be referenced within the -// matching functions of CustomerFeed, CampaignFeed, and AdGroupFeed. -message FeedItemSet { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedItemSet" - pattern: "customers/{customer_id}/feedItemSets/{feed_id}~{feed_item_set_id}" - }; - - // Immutable. The resource name of the feed item set. - // Feed item set resource names have the form: - // `customers/{customer_id}/feedItemSets/{feed_id}~{feed_item_set_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItemSet" - } - ]; - - // Immutable. The resource name of the feed containing the feed items in the set. - // Immutable. Required. - string feed = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Output only. ID of the set. - int64 feed_item_set_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Name of the set. Must be unique within the account. - string display_name = 4; - - // Output only. Status of the feed item set. - // This field is read-only. - google.ads.googleads.v6.enums.FeedItemSetStatusEnum.FeedItemSetStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Represents a filter on locations in a feed item set. - // Only applicable if the parent Feed of the FeedItemSet is a LOCATION feed. - oneof dynamic_set_filter { - // Filter for dynamic location set. - // It is only used for sets of locations. - google.ads.googleads.v6.common.DynamicLocationSetFilter dynamic_location_set_filter = 5; - - // Filter for dynamic affiliate location set. - // This field doesn't apply generally to feed item sets. It is only used for - // sets of affiliate locations. - google.ads.googleads.v6.common.DynamicAffiliateLocationSetFilter dynamic_affiliate_location_set_filter = 6; - } -} diff --git a/google/ads/googleads/v6/resources/feed_item_set_link.proto b/google/ads/googleads/v6/resources/feed_item_set_link.proto deleted file mode 100644 index c6009f974..000000000 --- a/google/ads/googleads/v6/resources/feed_item_set_link.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemSetLinkProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the FeedItemSetLink resource. - -// Represents a link between a FeedItem and a FeedItemSet. -message FeedItemSetLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedItemSetLink" - pattern: "customers/{customer_id}/feedItemSetLinks/{feed_id}~{feed_item_set_id}~{feed_item_id}" - }; - - // Immutable. The resource name of the feed item set link. - // Feed item set link resource names have the form: - // `customers/{customer_id}/feedItemSetLinks/{feed_id}~{feed_item_set_id}~{feed_item_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItemSetLink" - } - ]; - - // Immutable. The linked FeedItem. - string feed_item = 2 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; - - // Immutable. The linked FeedItemSet. - string feed_item_set = 3 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItemSet" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/feed_item_target.proto b/google/ads/googleads/v6/resources/feed_item_target.proto deleted file mode 100644 index 5c4704502..000000000 --- a/google/ads/googleads/v6/resources/feed_item_target.proto +++ /dev/null @@ -1,108 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/criteria.proto"; -import "google/ads/googleads/v6/enums/feed_item_target_device.proto"; -import "google/ads/googleads/v6/enums/feed_item_target_status.proto"; -import "google/ads/googleads/v6/enums/feed_item_target_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the FeedItemTarget resource. - -// A feed item target. -message FeedItemTarget { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedItemTarget" - pattern: "customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}" - }; - - // Immutable. The resource name of the feed item target. - // Feed item target resource names have the form: - // `customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItemTarget" - } - ]; - - // Immutable. The feed item to which this feed item target belongs. - optional string feed_item = 12 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; - - // Output only. The target type of this feed item target. This field is read-only. - google.ads.googleads.v6.enums.FeedItemTargetTypeEnum.FeedItemTargetType feed_item_target_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ID of the targeted resource. This field is read-only. - optional int64 feed_item_target_id = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Status of the feed item target. - // This field is read-only. - google.ads.googleads.v6.enums.FeedItemTargetStatusEnum.FeedItemTargetStatus status = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The targeted resource. - oneof target { - // Immutable. The targeted campaign. - string campaign = 14 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Immutable. The targeted ad group. - string ad_group = 15 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Immutable. The targeted keyword. - google.ads.googleads.v6.common.KeywordInfo keyword = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The targeted geo target constant resource name. - string geo_target_constant = 16 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; - - // Immutable. The targeted device. - google.ads.googleads.v6.enums.FeedItemTargetDeviceEnum.FeedItemTargetDevice device = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The targeted schedule. - google.ads.googleads.v6.common.AdScheduleInfo ad_schedule = 10 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v6/resources/feed_mapping.proto b/google/ads/googleads/v6/resources/feed_mapping.proto deleted file mode 100644 index bc72fcdb3..000000000 --- a/google/ads/googleads/v6/resources/feed_mapping.proto +++ /dev/null @@ -1,189 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/ad_customizer_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/affiliate_location_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/app_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/call_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/callout_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/custom_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/dsa_page_feed_criterion_field.proto"; -import "google/ads/googleads/v6/enums/education_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/feed_mapping_criterion_type.proto"; -import "google/ads/googleads/v6/enums/feed_mapping_status.proto"; -import "google/ads/googleads/v6/enums/flight_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/hotel_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/image_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/job_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/local_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/location_extension_targeting_criterion_field.proto"; -import "google/ads/googleads/v6/enums/location_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/message_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/placeholder_type.proto"; -import "google/ads/googleads/v6/enums/price_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/promotion_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/real_estate_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/sitelink_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/structured_snippet_placeholder_field.proto"; -import "google/ads/googleads/v6/enums/travel_placeholder_field.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the FeedMapping resource. - -// A feed mapping. -message FeedMapping { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedMapping" - pattern: "customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}" - }; - - // Immutable. The resource name of the feed mapping. - // Feed mapping resource names have the form: - // - // `customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedMapping" - } - ]; - - // Immutable. The feed of this feed mapping. - optional string feed = 7 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; - - // Immutable. Feed attributes to field mappings. These mappings are a one-to-many - // relationship meaning that 1 feed attribute can be used to populate - // multiple placeholder fields, but 1 placeholder field can only draw - // data from 1 feed attribute. Ad Customizer is an exception, 1 placeholder - // field can be mapped to multiple feed attributes. Required. - repeated AttributeFieldMapping attribute_field_mappings = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Status of the feed mapping. - // This field is read-only. - google.ads.googleads.v6.enums.FeedMappingStatusEnum.FeedMappingStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Feed mapping target. Can be either a placeholder or a criterion. For a - // given feed, the active FeedMappings must have unique targets. Required. - oneof target { - // Immutable. The placeholder type of this mapping (i.e., if the mapping maps feed - // attributes to placeholder fields). - google.ads.googleads.v6.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The criterion type of this mapping (i.e., if the mapping maps feed - // attributes to criterion fields). - google.ads.googleads.v6.enums.FeedMappingCriterionTypeEnum.FeedMappingCriterionType criterion_type = 4 [(google.api.field_behavior) = IMMUTABLE]; - } -} - -// Maps from feed attribute id to a placeholder or criterion field id. -message AttributeFieldMapping { - // Immutable. Feed attribute from which to map. - optional int64 feed_attribute_id = 24 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The placeholder field ID. If a placeholder field enum is not published in - // the current API version, then this field will be populated and the field - // oneof will be empty. - // This field is read-only. - optional int64 field_id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Placeholder or criterion field to be populated using data from - // the above feed attribute. Required. - oneof field { - // Immutable. Sitelink Placeholder Fields. - google.ads.googleads.v6.enums.SitelinkPlaceholderFieldEnum.SitelinkPlaceholderField sitelink_field = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Call Placeholder Fields. - google.ads.googleads.v6.enums.CallPlaceholderFieldEnum.CallPlaceholderField call_field = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. App Placeholder Fields. - google.ads.googleads.v6.enums.AppPlaceholderFieldEnum.AppPlaceholderField app_field = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Location Placeholder Fields. This field is read-only. - google.ads.googleads.v6.enums.LocationPlaceholderFieldEnum.LocationPlaceholderField location_field = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Affiliate Location Placeholder Fields. This field is read-only. - google.ads.googleads.v6.enums.AffiliateLocationPlaceholderFieldEnum.AffiliateLocationPlaceholderField affiliate_location_field = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Callout Placeholder Fields. - google.ads.googleads.v6.enums.CalloutPlaceholderFieldEnum.CalloutPlaceholderField callout_field = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Structured Snippet Placeholder Fields. - google.ads.googleads.v6.enums.StructuredSnippetPlaceholderFieldEnum.StructuredSnippetPlaceholderField structured_snippet_field = 9 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Message Placeholder Fields. - google.ads.googleads.v6.enums.MessagePlaceholderFieldEnum.MessagePlaceholderField message_field = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Price Placeholder Fields. - google.ads.googleads.v6.enums.PricePlaceholderFieldEnum.PricePlaceholderField price_field = 11 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Promotion Placeholder Fields. - google.ads.googleads.v6.enums.PromotionPlaceholderFieldEnum.PromotionPlaceholderField promotion_field = 12 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Ad Customizer Placeholder Fields - google.ads.googleads.v6.enums.AdCustomizerPlaceholderFieldEnum.AdCustomizerPlaceholderField ad_customizer_field = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Dynamic Search Ad Page Feed Fields. - google.ads.googleads.v6.enums.DsaPageFeedCriterionFieldEnum.DsaPageFeedCriterionField dsa_page_feed_field = 14 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Location Target Fields. - google.ads.googleads.v6.enums.LocationExtensionTargetingCriterionFieldEnum.LocationExtensionTargetingCriterionField location_extension_targeting_field = 15 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Education Placeholder Fields - google.ads.googleads.v6.enums.EducationPlaceholderFieldEnum.EducationPlaceholderField education_field = 16 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Flight Placeholder Fields - google.ads.googleads.v6.enums.FlightPlaceholderFieldEnum.FlightPlaceholderField flight_field = 17 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Custom Placeholder Fields - google.ads.googleads.v6.enums.CustomPlaceholderFieldEnum.CustomPlaceholderField custom_field = 18 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Hotel Placeholder Fields - google.ads.googleads.v6.enums.HotelPlaceholderFieldEnum.HotelPlaceholderField hotel_field = 19 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Real Estate Placeholder Fields - google.ads.googleads.v6.enums.RealEstatePlaceholderFieldEnum.RealEstatePlaceholderField real_estate_field = 20 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Travel Placeholder Fields - google.ads.googleads.v6.enums.TravelPlaceholderFieldEnum.TravelPlaceholderField travel_field = 21 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Local Placeholder Fields - google.ads.googleads.v6.enums.LocalPlaceholderFieldEnum.LocalPlaceholderField local_field = 22 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Job Placeholder Fields - google.ads.googleads.v6.enums.JobPlaceholderFieldEnum.JobPlaceholderField job_field = 23 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Image Placeholder Fields - google.ads.googleads.v6.enums.ImagePlaceholderFieldEnum.ImagePlaceholderField image_field = 26 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v6/resources/feed_placeholder_view.proto b/google/ads/googleads/v6/resources/feed_placeholder_view.proto deleted file mode 100644 index 71e6b5337..000000000 --- a/google/ads/googleads/v6/resources/feed_placeholder_view.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/placeholder_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "FeedPlaceholderViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the FeedPlaceholderView resource. - -// A feed placeholder view. -message FeedPlaceholderView { - option (google.api.resource) = { - type: "googleads.googleapis.com/FeedPlaceholderView" - pattern: "customers/{customer_id}/feedPlaceholderViews/{placeholder_type}" - }; - - // Output only. The resource name of the feed placeholder view. - // Feed placeholder view resource names have the form: - // - // `customers/{customer_id}/feedPlaceholderViews/{placeholder_type}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedPlaceholderView" - } - ]; - - // Output only. The placeholder type of the feed placeholder view. - google.ads.googleads.v6.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/gender_view.proto b/google/ads/googleads/v6/resources/gender_view.proto deleted file mode 100644 index e018658b5..000000000 --- a/google/ads/googleads/v6/resources/gender_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GenderViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the gender view resource. - -// A gender view. -message GenderView { - option (google.api.resource) = { - type: "googleads.googleapis.com/GenderView" - pattern: "customers/{customer_id}/genderViews/{ad_group_id}~{criterion_id}" - }; - - // Output only. The resource name of the gender view. - // Gender view resource names have the form: - // - // `customers/{customer_id}/genderViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GenderView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/geo_target_constant.proto b/google/ads/googleads/v6/resources/geo_target_constant.proto deleted file mode 100644 index 4ab0a602e..000000000 --- a/google/ads/googleads/v6/resources/geo_target_constant.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/geo_target_constant_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the geo target constant resource. - -// A geo target constant. -message GeoTargetConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/GeoTargetConstant" - pattern: "geoTargetConstants/{criterion_id}" - }; - - // Output only. The resource name of the geo target constant. - // Geo target constant resource names have the form: - // - // `geoTargetConstants/{geo_target_constant_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; - - // Output only. The ID of the geo target constant. - optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Geo target constant English name. - optional string name = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ISO-3166-1 alpha-2 country code that is associated with the target. - optional string country_code = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Geo target constant target type. - optional string target_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Geo target constant status. - google.ads.googleads.v6.enums.GeoTargetConstantStatusEnum.GeoTargetConstantStatus status = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The fully qualified English name, consisting of the target's name and that - // of its parent and country. - optional string canonical_name = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the parent geo target constant. - // Geo target constant resource names have the form: - // - // `geoTargetConstants/{parent_geo_target_constant_id}` - optional string parent_geo_target = 9 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/geographic_view.proto b/google/ads/googleads/v6/resources/geographic_view.proto deleted file mode 100644 index 602990d1d..000000000 --- a/google/ads/googleads/v6/resources/geographic_view.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/geo_targeting_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GeographicViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the geographic view resource. - -// A geographic view. -// -// Geographic View includes all metrics aggregated at the country level, -// one row per country. It reports metrics at either actual physical location of -// the user or an area of interest. If other segment fields are used, you may -// get more than one row per country. -message GeographicView { - option (google.api.resource) = { - type: "googleads.googleapis.com/GeographicView" - pattern: "customers/{customer_id}/geographicViews/{country_criterion_id}~{location_type}" - }; - - // Output only. The resource name of the geographic view. - // Geographic view resource names have the form: - // - // `customers/{customer_id}/geographicViews/{country_criterion_id}~{location_type}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeographicView" - } - ]; - - // Output only. Type of the geo targeting of the campaign. - google.ads.googleads.v6.enums.GeoTargetingTypeEnum.GeoTargetingType location_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Criterion Id for the country. - optional int64 country_criterion_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/google_ads_field.proto b/google/ads/googleads/v6/resources/google_ads_field.proto deleted file mode 100644 index 6cb8f7fb0..000000000 --- a/google/ads/googleads/v6/resources/google_ads_field.proto +++ /dev/null @@ -1,117 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/google_ads_field_category.proto"; -import "google/ads/googleads/v6/enums/google_ads_field_data_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Google Ads Field resource. - -// A field or resource (artifact) used by GoogleAdsService. -message GoogleAdsField { - option (google.api.resource) = { - type: "googleads.googleapis.com/GoogleAdsField" - pattern: "googleAdsFields/{google_ads_field}" - }; - - // Output only. The resource name of the artifact. - // Artifact resource names have the form: - // - // `googleAdsFields/{name}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GoogleAdsField" - } - ]; - - // Output only. The name of the artifact. - optional string name = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The category of the artifact. - google.ads.googleads.v6.enums.GoogleAdsFieldCategoryEnum.GoogleAdsFieldCategory category = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the artifact can be used in a SELECT clause in search - // queries. - optional bool selectable = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the artifact can be used in a WHERE clause in search - // queries. - optional bool filterable = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the artifact can be used in a ORDER BY clause in search - // queries. - optional bool sortable = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The names of all resources, segments, and metrics that are selectable with - // the described artifact. - repeated string selectable_with = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The names of all resources that are selectable with the described - // artifact. Fields from these resources do not segment metrics when included - // in search queries. - // - // This field is only set for artifacts whose category is RESOURCE. - repeated string attribute_resources = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. At and beyond version V1 this field lists the names of all metrics that are - // selectable with the described artifact when it is used in the FROM clause. - // It is only set for artifacts whose category is RESOURCE. - // - // Before version V1 this field lists the names of all metrics that are - // selectable with the described artifact. It is only set for artifacts whose - // category is either RESOURCE or SEGMENT - repeated string metrics = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. At and beyond version V1 this field lists the names of all artifacts, - // whether a segment or another resource, that segment metrics when included - // in search queries and when the described artifact is used in the FROM - // clause. It is only set for artifacts whose category is RESOURCE. - // - // Before version V1 this field lists the names of all artifacts, whether a - // segment or another resource, that segment metrics when included in search - // queries. It is only set for artifacts of category RESOURCE, SEGMENT or - // METRIC. - repeated string segments = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Values the artifact can assume if it is a field of type ENUM. - // - // This field is only set for artifacts of category SEGMENT or ATTRIBUTE. - repeated string enum_values = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. This field determines the operators that can be used with the artifact - // in WHERE clauses. - google.ads.googleads.v6.enums.GoogleAdsFieldDataTypeEnum.GoogleAdsFieldDataType data_type = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The URL of proto describing the artifact's data type. - optional string type_url = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the field artifact is repeated. - optional bool is_repeated = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/group_placement_view.proto b/google/ads/googleads/v6/resources/group_placement_view.proto deleted file mode 100644 index 2a90b1af0..000000000 --- a/google/ads/googleads/v6/resources/group_placement_view.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/placement_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "GroupPlacementViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the group placement view resource. - -// A group placement view. -message GroupPlacementView { - option (google.api.resource) = { - type: "googleads.googleapis.com/GroupPlacementView" - pattern: "customers/{customer_id}/groupPlacementViews/{ad_group_id}~{base64_placement}" - }; - - // Output only. The resource name of the group placement view. - // Group placement view resource names have the form: - // - // `customers/{customer_id}/groupPlacementViews/{ad_group_id}~{base64_placement}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GroupPlacementView" - } - ]; - - // Output only. The automatic placement string at group level, e. g. web domain, mobile - // app ID, or a YouTube channel ID. - optional string placement = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Domain name for websites and YouTube channel name for YouTube channels. - optional string display_name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. URL of the group placement, e.g. domain, link to the mobile application in - // app store, or a YouTube channel URL. - optional string target_url = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Type of the placement, e.g. Website, YouTube Channel, Mobile Application. - google.ads.googleads.v6.enums.PlacementTypeEnum.PlacementType placement_type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/hotel_group_view.proto b/google/ads/googleads/v6/resources/hotel_group_view.proto deleted file mode 100644 index 3950ee408..000000000 --- a/google/ads/googleads/v6/resources/hotel_group_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "HotelGroupViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the hotel group view resource. - -// A hotel group view. -message HotelGroupView { - option (google.api.resource) = { - type: "googleads.googleapis.com/HotelGroupView" - pattern: "customers/{customer_id}/hotelGroupViews/{ad_group_id}~{criterion_id}" - }; - - // Output only. The resource name of the hotel group view. - // Hotel Group view resource names have the form: - // - // `customers/{customer_id}/hotelGroupViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelGroupView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/hotel_performance_view.proto b/google/ads/googleads/v6/resources/hotel_performance_view.proto deleted file mode 100644 index 3f29fc75b..000000000 --- a/google/ads/googleads/v6/resources/hotel_performance_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "HotelPerformanceViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the hotel performance view resource. - -// A hotel performance view. -message HotelPerformanceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/HotelPerformanceView" - pattern: "customers/{customer_id}/hotelPerformanceView" - }; - - // Output only. The resource name of the hotel performance view. - // Hotel performance view resource names have the form: - // - // `customers/{customer_id}/hotelPerformanceView` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/income_range_view.proto b/google/ads/googleads/v6/resources/income_range_view.proto deleted file mode 100644 index 0b000fc6b..000000000 --- a/google/ads/googleads/v6/resources/income_range_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "IncomeRangeViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the income range view resource. - -// An income range view. -message IncomeRangeView { - option (google.api.resource) = { - type: "googleads.googleapis.com/IncomeRangeView" - pattern: "customers/{customer_id}/incomeRangeViews/{ad_group_id}~{criterion_id}" - }; - - // Output only. The resource name of the income range view. - // Income range view resource names have the form: - // - // `customers/{customer_id}/incomeRangeViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/IncomeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/invoice.proto b/google/ads/googleads/v6/resources/invoice.proto deleted file mode 100644 index 5dd36dc33..000000000 --- a/google/ads/googleads/v6/resources/invoice.proto +++ /dev/null @@ -1,203 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/dates.proto"; -import "google/ads/googleads/v6/enums/invoice_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Invoice resource. - -// An invoice. All invoice information is snapshotted to match the PDF invoice. -// For invoices older than the launch of InvoiceService, the snapshotted -// information may not match the PDF invoice. -message Invoice { - option (google.api.resource) = { - type: "googleads.googleapis.com/Invoice" - pattern: "customers/{customer_id}/invoices/{invoice_id}" - }; - - // Represents a summarized account budget billable cost. - message AccountBudgetSummary { - // Output only. The resource name of the customer associated with this account budget. - // This contains the customer ID, which appears on the invoice PDF as - // "Account ID". - // Customer resource names have the form: - // - // `customers/{customer_id}` - optional string customer = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The descriptive name of the account budget’s customer. It appears on the - // invoice PDF as "Account". - optional string customer_descriptive_name = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the account budget associated with this summarized - // billable cost. - // AccountBudget resource names have the form: - // - // `customers/{customer_id}/accountBudgets/{account_budget_id}` - optional string account_budget = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the account budget. It appears on the invoice PDF as "Account - // budget". - optional string account_budget_name = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The purchase order number of the account budget. It appears on the - // invoice PDF as "Purchase order". - optional string purchase_order_number = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The pretax subtotal amount attributable to this budget during the service - // period, in micros. - optional int64 subtotal_amount_micros = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The tax amount attributable to this budget during the service period, in - // micros. - optional int64 tax_amount_micros = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total amount attributable to this budget during the service period, - // in micros. This equals the sum of the account budget subtotal amount and - // the account budget tax amount. - optional int64 total_amount_micros = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The billable activity date range of the account budget, within the - // service date range of this invoice. The end date is inclusive. This can - // be different from the account budget's start and end time. - google.ads.googleads.v6.common.DateRange billable_activity_date_range = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Output only. The resource name of the invoice. Multiple customers can share a given - // invoice, so multiple resource names may point to the same invoice. - // Invoice resource names have the form: - // - // `customers/{customer_id}/invoices/{invoice_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Invoice" - } - ]; - - // Output only. The ID of the invoice. It appears on the invoice PDF as "Invoice number". - optional string id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of invoice. - google.ads.googleads.v6.enums.InvoiceTypeEnum.InvoiceType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of this invoice’s billing setup. - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - optional string billing_setup = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A 16 digit ID used to identify the payments account associated with the - // billing setup, e.g. "1234-5678-9012-3456". It appears on the invoice PDF as - // "Billing Account Number". - optional string payments_account_id = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A 12 digit ID used to identify the payments profile associated with the - // billing setup, e.g. "1234-5678-9012". It appears on the invoice PDF as - // "Billing ID". - optional string payments_profile_id = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The issue date in yyyy-mm-dd format. It appears on the invoice PDF as - // either "Issue date" or "Invoice date". - optional string issue_date = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The due date in yyyy-mm-dd format. - optional string due_date = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The service period date range of this invoice. The end date is inclusive. - google.ads.googleads.v6.common.DateRange service_date_range = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The currency code. All costs are returned in this currency. A subset of the - // currency codes derived from the ISO 4217 standard is supported. - optional string currency_code = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The pretax subtotal amount of invoice level adjustments, in micros. - int64 adjustments_subtotal_amount_micros = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The sum of taxes on the invoice level adjustments, in micros. - int64 adjustments_tax_amount_micros = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total amount of invoice level adjustments, in micros. - int64 adjustments_total_amount_micros = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The pretax subtotal amount of invoice level regulatory costs, in micros. - int64 regulatory_costs_subtotal_amount_micros = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The sum of taxes on the invoice level regulatory costs, in micros. - int64 regulatory_costs_tax_amount_micros = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total amount of invoice level regulatory costs, in micros. - int64 regulatory_costs_total_amount_micros = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The pretax subtotal amount, in micros. This equals the - // sum of the AccountBudgetSummary subtotal amounts, - // Invoice.adjustments_subtotal_amount_micros, and - // Invoice.regulatory_costs_subtotal_amount_micros. - // Starting with v6, the Invoice.regulatory_costs_subtotal_amount_micros is no - // longer included. - optional int64 subtotal_amount_micros = 33 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The sum of all taxes on the invoice, in micros. This equals the sum of the - // AccountBudgetSummary tax amounts, plus taxes not associated with a specific - // account budget. - optional int64 tax_amount_micros = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The total amount, in micros. This equals the sum of - // Invoice.subtotal_amount_micros and Invoice.tax_amount_micros. - // Starting with v6, Invoice.regulatory_costs_subtotal_amount_micros is - // also added as it is no longer already included in - // Invoice.tax_amount_micros. - optional int64 total_amount_micros = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the original invoice corrected, wrote off, or canceled - // by this invoice, if applicable. If `corrected_invoice` is set, - // `replaced_invoices` will not be set. - // Invoice resource names have the form: - // - // `customers/{customer_id}/invoices/{invoice_id}` - optional string corrected_invoice = 36 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The resource name of the original invoice(s) being rebilled or replaced by - // this invoice, if applicable. There might be multiple replaced invoices due - // to invoice consolidation. The replaced invoices may not belong to the same - // payments account. If `replaced_invoices` is set, `corrected_invoice` will - // not be set. - // Invoice resource names have the form: - // - // `customers/{customer_id}/invoices/{invoice_id}` - repeated string replaced_invoices = 37 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The URL to a PDF copy of the invoice. Users need to pass in their OAuth - // token to request the PDF with this URL. - optional string pdf_url = 38 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The list of summarized account budget information associated with this - // invoice. - repeated AccountBudgetSummary account_budget_summaries = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/keyword_plan.proto b/google/ads/googleads/v6/resources/keyword_plan.proto deleted file mode 100644 index 02631f606..000000000 --- a/google/ads/googleads/v6/resources/keyword_plan.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/dates.proto"; -import "google/ads/googleads/v6/enums/keyword_plan_forecast_interval.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the keyword plan resource. - -// A Keyword Planner plan. -// Max number of saved keyword plans: 10000. -// It's possible to remove plans if limit is reached. -message KeywordPlan { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlan" - pattern: "customers/{customer_id}/keywordPlans/{keyword_plan_id}" - }; - - // Immutable. The resource name of the Keyword Planner plan. - // KeywordPlan resource names have the form: - // - // `customers/{customer_id}/keywordPlans/{kp_plan_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; - - // Output only. The ID of the keyword plan. - optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the keyword plan. - // - // This field is required and should not be empty when creating new keyword - // plans. - optional string name = 6; - - // The date period used for forecasting the plan. - KeywordPlanForecastPeriod forecast_period = 4; -} - -// The forecasting period associated with the keyword plan. -message KeywordPlanForecastPeriod { - // Required. The date used for forecasting the Plan. - oneof interval { - // A future date range relative to the current date used for forecasting. - google.ads.googleads.v6.enums.KeywordPlanForecastIntervalEnum.KeywordPlanForecastInterval date_interval = 1; - - // The custom date range used for forecasting. - // The start and end dates must be in the future. Otherwise, an error will - // be returned when the forecasting action is performed. - // The start and end dates are inclusive. - google.ads.googleads.v6.common.DateRange date_range = 2; - } -} diff --git a/google/ads/googleads/v6/resources/keyword_plan_ad_group.proto b/google/ads/googleads/v6/resources/keyword_plan_ad_group.proto deleted file mode 100644 index 5326dd23e..000000000 --- a/google/ads/googleads/v6/resources/keyword_plan_ad_group.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the keyword plan ad group resource. - -// A Keyword Planner ad group. -// Max number of keyword plan ad groups per plan: 200. -message KeywordPlanAdGroup { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - pattern: "customers/{customer_id}/keywordPlanAdGroups/{keyword_plan_ad_group_id}" - }; - - // Immutable. The resource name of the Keyword Planner ad group. - // KeywordPlanAdGroup resource names have the form: - // - // `customers/{customer_id}/keywordPlanAdGroups/{kp_ad_group_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - } - ]; - - // The keyword plan campaign to which this ad group belongs. - optional string keyword_plan_campaign = 6 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - }]; - - // Output only. The ID of the keyword plan ad group. - optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the keyword plan ad group. - // - // This field is required and should not be empty when creating keyword plan - // ad group. - optional string name = 8; - - // A default ad group max cpc bid in micros in account currency for all - // biddable keywords under the keyword plan ad group. - // If not set, will inherit from parent campaign. - optional int64 cpc_bid_micros = 9; -} diff --git a/google/ads/googleads/v6/resources/keyword_plan_ad_group_keyword.proto b/google/ads/googleads/v6/resources/keyword_plan_ad_group_keyword.proto deleted file mode 100644 index ee6be1190..000000000 --- a/google/ads/googleads/v6/resources/keyword_plan_ad_group_keyword.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/keyword_match_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupKeywordProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the keyword plan ad group keyword resource. - -// A Keyword Plan ad group keyword. -// Max number of keyword plan keywords per plan: 10000. -message KeywordPlanAdGroupKeyword { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - pattern: "customers/{customer_id}/keywordPlanAdGroupKeywords/{keyword_plan_ad_group_keyword_id}" - }; - - // Immutable. The resource name of the Keyword Plan ad group keyword. - // KeywordPlanAdGroupKeyword resource names have the form: - // - // `customers/{customer_id}/keywordPlanAdGroupKeywords/{kp_ad_group_keyword_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - } - ]; - - // The Keyword Plan ad group to which this keyword belongs. - optional string keyword_plan_ad_group = 8 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - }]; - - // Output only. The ID of the Keyword Plan keyword. - optional int64 id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The keyword text. - optional string text = 10; - - // The keyword match type. - google.ads.googleads.v6.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; - - // A keyword level max cpc bid in micros (e.g. $1 = 1mm). The currency is the - // same as the account currency code. This will override any CPC bid set at - // the keyword plan ad group level. - // Not applicable for negative keywords. (negative = true) - // This field is Optional. - optional int64 cpc_bid_micros = 11; - - // Immutable. If true, the keyword is negative. - optional bool negative = 12 [(google.api.field_behavior) = IMMUTABLE]; -} diff --git a/google/ads/googleads/v6/resources/keyword_plan_campaign.proto b/google/ads/googleads/v6/resources/keyword_plan_campaign.proto deleted file mode 100644 index c2df86b5b..000000000 --- a/google/ads/googleads/v6/resources/keyword_plan_campaign.proto +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/keyword_plan_network.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the keyword plan campaign resource. - -// A Keyword Plan campaign. -// Max number of keyword plan campaigns per plan allowed: 1. -message KeywordPlanCampaign { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - pattern: "customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}" - }; - - // Immutable. The resource name of the Keyword Plan campaign. - // KeywordPlanCampaign resource names have the form: - // - // `customers/{customer_id}/keywordPlanCampaigns/{kp_campaign_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - } - ]; - - // The keyword plan this campaign belongs to. - optional string keyword_plan = 9 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - }]; - - // Output only. The ID of the Keyword Plan campaign. - optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the Keyword Plan campaign. - // - // This field is required and should not be empty when creating Keyword Plan - // campaigns. - optional string name = 11; - - // The languages targeted for the Keyword Plan campaign. - // Max allowed: 1. - repeated string language_constants = 12 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/LanguageConstant" - }]; - - // Targeting network. - // - // This field is required and should not be empty when creating Keyword Plan - // campaigns. - google.ads.googleads.v6.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork keyword_plan_network = 6; - - // A default max cpc bid in micros, and in the account currency, for all ad - // groups under the campaign. - // - // This field is required and should not be empty when creating Keyword Plan - // campaigns. - optional int64 cpc_bid_micros = 13; - - // The geo targets. - // Max number allowed: 20. - repeated KeywordPlanGeoTarget geo_targets = 8; -} - -// A geo target. -message KeywordPlanGeoTarget { - // Required. The resource name of the geo target. - optional string geo_target_constant = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - }]; -} diff --git a/google/ads/googleads/v6/resources/keyword_plan_campaign_keyword.proto b/google/ads/googleads/v6/resources/keyword_plan_campaign_keyword.proto deleted file mode 100644 index b3178fd4c..000000000 --- a/google/ads/googleads/v6/resources/keyword_plan_campaign_keyword.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/keyword_match_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignKeywordProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the keyword plan negative keyword resource. - -// A Keyword Plan Campaign keyword. -// Only negative keywords are supported for Campaign Keyword. -message KeywordPlanCampaignKeyword { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - pattern: "customers/{customer_id}/keywordPlanCampaignKeywords/{keyword_plan_campaign_keyword_id}" - }; - - // Immutable. The resource name of the Keyword Plan Campaign keyword. - // KeywordPlanCampaignKeyword resource names have the form: - // - // `customers/{customer_id}/keywordPlanCampaignKeywords/{kp_campaign_keyword_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - } - ]; - - // The Keyword Plan campaign to which this negative keyword belongs. - optional string keyword_plan_campaign = 8 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - }]; - - // Output only. The ID of the Keyword Plan negative keyword. - optional int64 id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The keyword text. - optional string text = 10; - - // The keyword match type. - google.ads.googleads.v6.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; - - // Immutable. If true, the keyword is negative. - // Must be set to true. Only negative campaign keywords are supported. - optional bool negative = 11 [(google.api.field_behavior) = IMMUTABLE]; -} diff --git a/google/ads/googleads/v6/resources/keyword_view.proto b/google/ads/googleads/v6/resources/keyword_view.proto deleted file mode 100644 index 64918c2ba..000000000 --- a/google/ads/googleads/v6/resources/keyword_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "KeywordViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the keyword view resource. - -// A keyword view. -message KeywordView { - option (google.api.resource) = { - type: "googleads.googleapis.com/KeywordView" - pattern: "customers/{customer_id}/keywordViews/{ad_group_id}~{criterion_id}" - }; - - // Output only. The resource name of the keyword view. - // Keyword view resource names have the form: - // - // `customers/{customer_id}/keywordViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/label.proto b/google/ads/googleads/v6/resources/label.proto deleted file mode 100644 index ff161643c..000000000 --- a/google/ads/googleads/v6/resources/label.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/text_label.proto"; -import "google/ads/googleads/v6/enums/label_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LabelProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// A label. -message Label { - option (google.api.resource) = { - type: "googleads.googleapis.com/Label" - pattern: "customers/{customer_id}/labels/{label_id}" - }; - - // Immutable. Name of the resource. - // Label resource names have the form: - // `customers/{customer_id}/labels/{label_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; - - // Output only. Id of the label. Read only. - optional int64 id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the label. - // - // This field is required and should not be empty when creating a new label. - // - // The length of this string should be between 1 and 80, inclusive. - optional string name = 7; - - // Output only. Status of the label. Read only. - google.ads.googleads.v6.enums.LabelStatusEnum.LabelStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // A type of label displaying text on a colored background. - google.ads.googleads.v6.common.TextLabel text_label = 5; -} diff --git a/google/ads/googleads/v6/resources/landing_page_view.proto b/google/ads/googleads/v6/resources/landing_page_view.proto deleted file mode 100644 index 1295821d1..000000000 --- a/google/ads/googleads/v6/resources/landing_page_view.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LandingPageViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the landing page view resource. - -// A landing page view with metrics aggregated at the unexpanded final URL -// level. -message LandingPageView { - option (google.api.resource) = { - type: "googleads.googleapis.com/LandingPageView" - pattern: "customers/{customer_id}/landingPageViews/{unexpanded_final_url_fingerprint}" - }; - - // Output only. The resource name of the landing page view. - // Landing page view resource names have the form: - // - // `customers/{customer_id}/landingPageViews/{unexpanded_final_url_fingerprint}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LandingPageView" - } - ]; - - // Output only. The advertiser-specified final URL. - optional string unexpanded_final_url = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/language_constant.proto b/google/ads/googleads/v6/resources/language_constant.proto deleted file mode 100644 index cb5a0e5f6..000000000 --- a/google/ads/googleads/v6/resources/language_constant.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LanguageConstantProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the language constant resource. - -// A language. -message LanguageConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/LanguageConstant" - pattern: "languageConstants/{criterion_id}" - }; - - // Output only. The resource name of the language constant. - // Language constant resource names have the form: - // - // `languageConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LanguageConstant" - } - ]; - - // Output only. The ID of the language constant. - optional int64 id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The language code, e.g. "en_US", "en_AU", "es", "fr", etc. - optional string code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The full name of the language in English, e.g., "English (US)", "Spanish", - // etc. - optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Whether the language is targetable. - optional bool targetable = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/location_view.proto b/google/ads/googleads/v6/resources/location_view.proto deleted file mode 100644 index 1cc5694cd..000000000 --- a/google/ads/googleads/v6/resources/location_view.proto +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "LocationViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the location view resource. - -// A location view summarizes the performance of campaigns by -// Location criteria. -message LocationView { - option (google.api.resource) = { - type: "googleads.googleapis.com/LocationView" - pattern: "customers/{customer_id}/locationViews/{campaign_id}~{criterion_id}" - }; - - // Output only. The resource name of the location view. - // Location view resource names have the form: - // - // `customers/{customer_id}/locationViews/{campaign_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LocationView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/managed_placement_view.proto b/google/ads/googleads/v6/resources/managed_placement_view.proto deleted file mode 100644 index 72154f2a4..000000000 --- a/google/ads/googleads/v6/resources/managed_placement_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ManagedPlacementViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Managed Placement view resource. - -// A managed placement view. -message ManagedPlacementView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ManagedPlacementView" - pattern: "customers/{customer_id}/managedPlacementViews/{ad_group_id}~{criterion_id}" - }; - - // Output only. The resource name of the Managed Placement view. - // Managed placement view resource names have the form: - // - // `customers/{customer_id}/managedPlacementViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ManagedPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/media_file.proto b/google/ads/googleads/v6/resources/media_file.proto deleted file mode 100644 index c36f28cdf..000000000 --- a/google/ads/googleads/v6/resources/media_file.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/media_type.proto"; -import "google/ads/googleads/v6/enums/mime_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MediaFileProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the media file resource. - -// A media file. -message MediaFile { - option (google.api.resource) = { - type: "googleads.googleapis.com/MediaFile" - pattern: "customers/{customer_id}/mediaFiles/{media_file_id}" - }; - - // Immutable. The resource name of the media file. - // Media file resource names have the form: - // - // `customers/{customer_id}/mediaFiles/{media_file_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MediaFile" - } - ]; - - // Output only. The ID of the media file. - optional int64 id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Type of the media file. - google.ads.googleads.v6.enums.MediaTypeEnum.MediaType type = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The mime type of the media file. - google.ads.googleads.v6.enums.MimeTypeEnum.MimeType mime_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The URL of where the original media file was downloaded from (or a file - // name). Only used for media of type AUDIO and IMAGE. - optional string source_url = 13 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The name of the media file. The name can be used by clients to help - // identify previously uploaded media. - optional string name = 14 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The size of the media file in bytes. - optional int64 file_size = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The specific type of the media file. - oneof mediatype { - // Immutable. Encapsulates an Image. - MediaImage image = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. A ZIP archive media the content of which contains HTML5 assets. - MediaBundle media_bundle = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Encapsulates an Audio. - MediaAudio audio = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. Encapsulates a Video. - MediaVideo video = 11 [(google.api.field_behavior) = IMMUTABLE]; - } -} - -// Encapsulates an Image. -message MediaImage { - // Immutable. Raw image data. - optional bytes data = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The url to the full size version of the image. - optional string full_size_image_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The url to the preview size version of the image. - optional string preview_size_image_url = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Represents a ZIP archive media the content of which contains HTML5 assets. -message MediaBundle { - // Immutable. Raw zipped data. - optional bytes data = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The url to access the uploaded zipped data. - // E.g. https://tpc.googlesyndication.com/simgad/123 - // This field is read-only. - optional string url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Encapsulates an Audio. -message MediaAudio { - // Output only. The duration of the Audio in milliseconds. - optional int64 ad_duration_millis = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Encapsulates a Video. -message MediaVideo { - // Output only. The duration of the Video in milliseconds. - optional int64 ad_duration_millis = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The YouTube video ID (as seen in YouTube URLs). - optional string youtube_video_id = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. The Advertising Digital Identification code for this video, as defined by - // the American Association of Advertising Agencies, used mainly for - // television commercials. - optional string advertising_id_code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Industry Standard Commercial Identifier code for this video, used - // mainly for television commercials. - optional string isci_code = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/merchant_center_link.proto b/google/ads/googleads/v6/resources/merchant_center_link.proto deleted file mode 100644 index b0bef76b6..000000000 --- a/google/ads/googleads/v6/resources/merchant_center_link.proto +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/merchant_center_link_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MerchantCenterLinkProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Merchant Center link resource. - -// A data sharing connection, proposed or in use, -// between a Google Ads Customer and a Merchant Center account. -message MerchantCenterLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/MerchantCenterLink" - pattern: "customers/{customer_id}/merchantCenterLinks/{merchant_center_id}" - }; - - // Immutable. The resource name of the merchant center link. - // Merchant center link resource names have the form: - // - // `customers/{customer_id}/merchantCenterLinks/{merchant_center_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MerchantCenterLink" - } - ]; - - // Output only. The ID of the Merchant Center account. - // This field is readonly. - optional int64 id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the Merchant Center account. - // This field is readonly. - optional string merchant_center_account_name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The status of the link. - google.ads.googleads.v6.enums.MerchantCenterLinkStatusEnum.MerchantCenterLinkStatus status = 5; -} diff --git a/google/ads/googleads/v6/resources/mobile_app_category_constant.proto b/google/ads/googleads/v6/resources/mobile_app_category_constant.proto deleted file mode 100644 index e5a9dbf41..000000000 --- a/google/ads/googleads/v6/resources/mobile_app_category_constant.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MobileAppCategoryConstantProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Mobile App Category Constant resource. - -// A mobile application category constant. -message MobileAppCategoryConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/MobileAppCategoryConstant" - pattern: "mobileAppCategoryConstants/{mobile_app_category_id}" - }; - - // Output only. The resource name of the mobile app category constant. - // Mobile app category constant resource names have the form: - // - // `mobileAppCategoryConstants/{mobile_app_category_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileAppCategoryConstant" - } - ]; - - // Output only. The ID of the mobile app category constant. - optional int32 id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Mobile app category name. - optional string name = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/mobile_device_constant.proto b/google/ads/googleads/v6/resources/mobile_device_constant.proto deleted file mode 100644 index 0b3329eee..000000000 --- a/google/ads/googleads/v6/resources/mobile_device_constant.proto +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/mobile_device_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "MobileDeviceConstantProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the mobile device constant resource. - -// A mobile device constant. -message MobileDeviceConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/MobileDeviceConstant" - pattern: "mobileDeviceConstants/{criterion_id}" - }; - - // Output only. The resource name of the mobile device constant. - // Mobile device constant resource names have the form: - // - // `mobileDeviceConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileDeviceConstant" - } - ]; - - // Output only. The ID of the mobile device constant. - optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the mobile device. - optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The manufacturer of the mobile device. - optional string manufacturer_name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The operating system of the mobile device. - optional string operating_system_name = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of mobile device. - google.ads.googleads.v6.enums.MobileDeviceTypeEnum.MobileDeviceType type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/offline_user_data_job.proto b/google/ads/googleads/v6/resources/offline_user_data_job.proto deleted file mode 100644 index f000000c9..000000000 --- a/google/ads/googleads/v6/resources/offline_user_data_job.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/offline_user_data.proto"; -import "google/ads/googleads/v6/enums/offline_user_data_job_failure_reason.proto"; -import "google/ads/googleads/v6/enums/offline_user_data_job_status.proto"; -import "google/ads/googleads/v6/enums/offline_user_data_job_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the offline user data job resource. - -// A job containing offline user data of store visitors, or user list members -// that will be processed asynchronously. The uploaded data isn't readable and -// the processing results of the job can only be read using -// OfflineUserDataJobService.GetOfflineUserDataJob. -message OfflineUserDataJob { - option (google.api.resource) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - pattern: "customers/{customer_id}/offlineUserDataJobs/{offline_user_data_update_id}" - }; - - // Immutable. The resource name of the offline user data job. - // Offline user data job resource names have the form: - // - // `customers/{customer_id}/offlineUserDataJobs/{offline_user_data_job_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; - - // Output only. ID of this offline user data job. - optional int64 id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. User specified job ID. - optional int64 external_id = 10 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Type of the job. - google.ads.googleads.v6.enums.OfflineUserDataJobTypeEnum.OfflineUserDataJobType type = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Output only. Status of the job. - google.ads.googleads.v6.enums.OfflineUserDataJobStatusEnum.OfflineUserDataJobStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Reason for the processing failure, if status is FAILED. - google.ads.googleads.v6.enums.OfflineUserDataJobFailureReasonEnum.OfflineUserDataJobFailureReason failure_reason = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Metadata of the job. - oneof metadata { - // Immutable. Metadata for data updates to a CRM-based user list. - google.ads.googleads.v6.common.CustomerMatchUserListMetadata customer_match_user_list_metadata = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Metadata for store sales data update. - google.ads.googleads.v6.common.StoreSalesMetadata store_sales_metadata = 8 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v6/resources/operating_system_version_constant.proto b/google/ads/googleads/v6/resources/operating_system_version_constant.proto deleted file mode 100644 index 7c7e6822e..000000000 --- a/google/ads/googleads/v6/resources/operating_system_version_constant.proto +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/operating_system_version_operator_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "OperatingSystemVersionConstantProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the operating system version constant resource. - -// A mobile operating system version or a range of versions, depending on -// `operator_type`. List of available mobile platforms at -// https://developers.google.com/adwords/api/docs/appendix/codes-formats#mobile-platforms -message OperatingSystemVersionConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/OperatingSystemVersionConstant" - pattern: "operatingSystemVersionConstants/{criterion_id}" - }; - - // Output only. The resource name of the operating system version constant. - // Operating system version constant resource names have the form: - // - // `operatingSystemVersionConstants/{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OperatingSystemVersionConstant" - } - ]; - - // Output only. The ID of the operating system version. - optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Name of the operating system. - optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The OS Major Version number. - optional int32 os_major_version = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The OS Minor Version number. - optional int32 os_minor_version = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Determines whether this constant represents a single version or a range of - // versions. - google.ads.googleads.v6.enums.OperatingSystemVersionOperatorTypeEnum.OperatingSystemVersionOperatorType operator_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/paid_organic_search_term_view.proto b/google/ads/googleads/v6/resources/paid_organic_search_term_view.proto deleted file mode 100644 index 5f6f188e9..000000000 --- a/google/ads/googleads/v6/resources/paid_organic_search_term_view.proto +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "PaidOrganicSearchTermViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the PaidOrganicSearchTermView resource. - -// A paid organic search term view providing a view of search stats across -// ads and organic listings aggregated by search term at the ad group level. -message PaidOrganicSearchTermView { - option (google.api.resource) = { - type: "googleads.googleapis.com/PaidOrganicSearchTermView" - pattern: "customers/{customer_id}/paidOrganicSearchTermViews/{campaign_id}~{ad_group_id}~{base64_search_term}" - }; - - // Output only. The resource name of the search term view. - // Search term view resource names have the form: - // - // `customers/{customer_id}/paidOrganicSearchTermViews/{campaign_id}~ - // {ad_group_id}~{URL-base64 search term}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaidOrganicSearchTermView" - } - ]; - - // Output only. The search term. - optional string search_term = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/parental_status_view.proto b/google/ads/googleads/v6/resources/parental_status_view.proto deleted file mode 100644 index 6c9d93500..000000000 --- a/google/ads/googleads/v6/resources/parental_status_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ParentalStatusViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the parental status view resource. - -// A parental status view. -message ParentalStatusView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ParentalStatusView" - pattern: "customers/{customer_id}/parentalStatusViews/{ad_group_id}~{criterion_id}" - }; - - // Output only. The resource name of the parental status view. - // Parental Status view resource names have the form: - // - // `customers/{customer_id}/parentalStatusViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ParentalStatusView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/payments_account.proto b/google/ads/googleads/v6/resources/payments_account.proto deleted file mode 100644 index 4cbdefbd3..000000000 --- a/google/ads/googleads/v6/resources/payments_account.proto +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "PaymentsAccountProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the PaymentsAccount resource. - -// A payments account, which can be used to set up billing for an Ads customer. -message PaymentsAccount { - option (google.api.resource) = { - type: "googleads.googleapis.com/PaymentsAccount" - pattern: "customers/{customer_id}/paymentsAccounts/{payments_account_id}" - }; - - // Output only. The resource name of the payments account. - // PaymentsAccount resource names have the form: - // - // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaymentsAccount" - } - ]; - - // Output only. A 16 digit ID used to identify a payments account. - optional string payments_account_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the payments account. - optional string name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The currency code of the payments account. - // A subset of the currency codes derived from the ISO 4217 standard is - // supported. - optional string currency_code = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A 12 digit ID used to identify the payments profile associated with the - // payments account. - optional string payments_profile_id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A secondary payments profile ID present in uncommon situations, e.g. - // when a sequential liability agreement has been arranged. - optional string secondary_payments_profile_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Paying manager of this payment account. - optional string paying_manager_customer = 13 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/product_bidding_category_constant.proto b/google/ads/googleads/v6/resources/product_bidding_category_constant.proto deleted file mode 100644 index 758cee28b..000000000 --- a/google/ads/googleads/v6/resources/product_bidding_category_constant.proto +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/product_bidding_category_level.proto"; -import "google/ads/googleads/v6/enums/product_bidding_category_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryConstantProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ProductBiddingCategoryConstant resource. - -// A Product Bidding Category. -message ProductBiddingCategoryConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - pattern: "productBiddingCategoryConstants/{country_code}~{level}~{id}" - }; - - // Output only. The resource name of the product bidding category. - // Product bidding category resource names have the form: - // - // `productBiddingCategoryConstants/{country_code}~{level}~{id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - } - ]; - - // Output only. ID of the product bidding category. - // - // This ID is equivalent to the google_product_category ID as described in - // this article: https://support.google.com/merchants/answer/6324436. - optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Two-letter upper-case country code of the product bidding category. - optional string country_code = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Resource name of the parent product bidding category. - optional string product_bidding_category_constant_parent = 12 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - } - ]; - - // Output only. Level of the product bidding category. - google.ads.googleads.v6.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Status of the product bidding category. - google.ads.googleads.v6.enums.ProductBiddingCategoryStatusEnum.ProductBiddingCategoryStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Language code of the product bidding category. - optional string language_code = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Display value of the product bidding category localized according to - // language_code. - optional string localized_name = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/product_group_view.proto b/google/ads/googleads/v6/resources/product_group_view.proto deleted file mode 100644 index a43f5c857..000000000 --- a/google/ads/googleads/v6/resources/product_group_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ProductGroupViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ProductGroup View resource. - -// A product group view. -message ProductGroupView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ProductGroupView" - pattern: "customers/{customer_id}/productGroupViews/{adgroup_id}~{criterion_id}" - }; - - // Output only. The resource name of the product group view. - // Product group view resource names have the form: - // - // `customers/{customer_id}/productGroupViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductGroupView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/recommendation.proto b/google/ads/googleads/v6/resources/recommendation.proto deleted file mode 100644 index a4d2be0fd..000000000 --- a/google/ads/googleads/v6/resources/recommendation.proto +++ /dev/null @@ -1,346 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/criteria.proto"; -import "google/ads/googleads/v6/common/extensions.proto"; -import "google/ads/googleads/v6/enums/keyword_match_type.proto"; -import "google/ads/googleads/v6/enums/recommendation_type.proto"; -import "google/ads/googleads/v6/enums/target_cpa_opt_in_recommendation_goal.proto"; -import "google/ads/googleads/v6/resources/ad.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Recommendation resource. - -// A recommendation. -message Recommendation { - option (google.api.resource) = { - type: "googleads.googleapis.com/Recommendation" - pattern: "customers/{customer_id}/recommendations/{recommendation_id}" - }; - - // The impact of making the change as described in the recommendation. - // Some types of recommendations may not have impact information. - message RecommendationImpact { - // Output only. Base metrics at the time the recommendation was generated. - RecommendationMetrics base_metrics = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimated metrics if the recommendation is applied. - RecommendationMetrics potential_metrics = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Weekly account performance metrics. For some recommendation types, these - // are averaged over the past 90-day period and hence can be fractional. - message RecommendationMetrics { - // Output only. Number of ad impressions. - optional double impressions = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Number of ad clicks. - optional double clicks = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Cost (in micros) for advertising, in the local currency for the account. - optional int64 cost_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Number of conversions. - optional double conversions = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Number of video views for a video ad campaign. - optional double video_views = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The budget recommendation for budget constrained campaigns. - message CampaignBudgetRecommendation { - // The impact estimates for a given budget amount. - message CampaignBudgetRecommendationOption { - // Output only. The budget amount for this option. - optional int64 budget_amount_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The impact estimate if budget is changed to amount specified in this - // option. - RecommendationImpact impact = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Output only. The current budget amount in micros. - optional int64 current_budget_amount_micros = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended budget amount in micros. - optional int64 recommended_budget_amount_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The budget amounts and associated impact estimates for some values of - // possible budget amounts. - repeated CampaignBudgetRecommendationOption budget_options = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The keyword recommendation. - message KeywordRecommendation { - // Output only. The recommended keyword. - google.ads.googleads.v6.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended CPC (cost-per-click) bid. - optional int64 recommended_cpc_bid_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The text ad recommendation. - message TextAdRecommendation { - // Output only. Recommended ad. - Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Creation date of the recommended ad. - // YYYY-MM-DD format, e.g., 2018-04-17. - optional string creation_date = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Date, if present, is the earliest when the recommendation will be auto - // applied. - // YYYY-MM-DD format, e.g., 2018-04-17. - optional string auto_apply_date = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The add responsive search ad recommendation. - message ResponsiveSearchAdRecommendation { - // Output only. Recommended ad. - Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Target CPA opt-in recommendation. - message TargetCpaOptInRecommendation { - // The Target CPA opt-in option with impact estimate. - message TargetCpaOptInRecommendationOption { - // Output only. The goal achieved by this option. - google.ads.googleads.v6.enums.TargetCpaOptInRecommendationGoalEnum.TargetCpaOptInRecommendationGoal goal = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Average CPA target. - optional int64 target_cpa_micros = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The minimum campaign budget, in local currency for the account, - // required to achieve the target CPA. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - optional int64 required_campaign_budget_amount_micros = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The impact estimate if this option is selected. - RecommendationImpact impact = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Output only. The available goals and corresponding options for Target CPA strategy. - repeated TargetCpaOptInRecommendationOption options = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended average CPA target. See required budget amount and impact - // of using this recommendation in options list. - optional int64 recommended_target_cpa_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Maximize Conversions Opt-In recommendation. - message MaximizeConversionsOptInRecommendation { - // Output only. The recommended new budget amount. - optional int64 recommended_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Callout extension recommendation. - message CalloutExtensionRecommendation { - // Output only. Callout extensions recommended to be added. - repeated google.ads.googleads.v6.common.CalloutFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Enhanced Cost-Per-Click Opt-In recommendation. - message EnhancedCpcOptInRecommendation { - - } - - // The Search Partners Opt-In recommendation. - message SearchPartnersOptInRecommendation { - - } - - // The Maximize Clicks opt-in recommendation. - message MaximizeClicksOptInRecommendation { - // Output only. The recommended new budget amount. - // Only set if the current budget is too high. - optional int64 recommended_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The move unused budget recommendation. - message MoveUnusedBudgetRecommendation { - // Output only. The excess budget's resource_name. - optional string excess_campaign_budget = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommendation for the constrained budget to increase. - CampaignBudgetRecommendation budget_recommendation = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Optimize Ad Rotation recommendation. - message OptimizeAdRotationRecommendation { - - } - - // The Sitelink extension recommendation. - message SitelinkExtensionRecommendation { - // Output only. Sitelink extensions recommended to be added. - repeated google.ads.googleads.v6.common.SitelinkFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The keyword match type recommendation. - message KeywordMatchTypeRecommendation { - // Output only. The existing keyword where the match type should be more broad. - google.ads.googleads.v6.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommended new match type. - google.ads.googleads.v6.enums.KeywordMatchTypeEnum.KeywordMatchType recommended_match_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Call extension recommendation. - message CallExtensionRecommendation { - // Output only. Call extensions recommended to be added. - repeated google.ads.googleads.v6.common.CallFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Target ROAS opt-in recommendation. - message TargetRoasOptInRecommendation { - // Output only. The recommended target ROAS (revenue per unit of spend). - // The value is between 0.01 and 1000.0, inclusive. - optional double recommended_target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The minimum campaign budget, in local currency for the account, - // required to achieve the target ROAS. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - optional int64 required_campaign_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // Immutable. The resource name of the recommendation. - // - // `customers/{customer_id}/recommendations/{recommendation_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Recommendation" - } - ]; - - // Output only. The type of recommendation. - google.ads.googleads.v6.enums.RecommendationTypeEnum.RecommendationType type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The impact on account performance as a result of applying the - // recommendation. - RecommendationImpact impact = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The budget targeted by this recommendation. This will be set only when - // the recommendation affects a single campaign budget. - // - // This field will be set for the following recommendation types: - // CAMPAIGN_BUDGET, FORECASTING_CAMPAIGN_BUDGET, MOVE_UNUSED_BUDGET - optional string campaign_budget = 24 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - } - ]; - - // Output only. The campaign targeted by this recommendation. This will be set only when - // the recommendation affects a single campaign. - // - // This field will be set for the following recommendation types: - // CALL_EXTENSION, CALLOUT_EXTENSION, ENHANCED_CPC_OPT_IN, KEYWORD, - // KEYWORD_MATCH_TYPE, MAXIMIZE_CLICKS_OPT_IN, MAXIMIZE_CONVERSIONS_OPT_IN, - // OPTIMIZE_AD_ROTATION, RESPONSIVE_SEARCH_AD, SEARCH_PARTNERS_OPT_IN, - // SITELINK_EXTENSION, TARGET_CPA_OPT_IN, TARGET_ROAS_OPT_IN, TEXT_AD - optional string campaign = 25 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; - - // Output only. The ad group targeted by this recommendation. This will be set only when - // the recommendation affects a single ad group. - // - // This field will be set for the following recommendation types: - // KEYWORD, OPTIMIZE_AD_ROTATION, RESPONSIVE_SEARCH_AD, TEXT_AD - optional string ad_group = 26 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Whether the recommendation is dismissed or not. - optional bool dismissed = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The details of recommendation. - oneof recommendation { - // Output only. The campaign budget recommendation. - CampaignBudgetRecommendation campaign_budget_recommendation = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The forecasting campaign budget recommendation. - CampaignBudgetRecommendation forecasting_campaign_budget_recommendation = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The keyword recommendation. - KeywordRecommendation keyword_recommendation = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Add expanded text ad recommendation. - TextAdRecommendation text_ad_recommendation = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The TargetCPA opt-in recommendation. - TargetCpaOptInRecommendation target_cpa_opt_in_recommendation = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The MaximizeConversions Opt-In recommendation. - MaximizeConversionsOptInRecommendation maximize_conversions_opt_in_recommendation = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Enhanced Cost-Per-Click Opt-In recommendation. - EnhancedCpcOptInRecommendation enhanced_cpc_opt_in_recommendation = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Search Partners Opt-In recommendation. - SearchPartnersOptInRecommendation search_partners_opt_in_recommendation = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The MaximizeClicks Opt-In recommendation. - MaximizeClicksOptInRecommendation maximize_clicks_opt_in_recommendation = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Optimize Ad Rotation recommendation. - OptimizeAdRotationRecommendation optimize_ad_rotation_recommendation = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Callout extension recommendation. - CalloutExtensionRecommendation callout_extension_recommendation = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Sitelink extension recommendation. - SitelinkExtensionRecommendation sitelink_extension_recommendation = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Call extension recommendation. - CallExtensionRecommendation call_extension_recommendation = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The keyword match type recommendation. - KeywordMatchTypeRecommendation keyword_match_type_recommendation = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The move unused budget recommendation. - MoveUnusedBudgetRecommendation move_unused_budget_recommendation = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The Target ROAS opt-in recommendation. - TargetRoasOptInRecommendation target_roas_opt_in_recommendation = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The add responsive search ad recommendation. - ResponsiveSearchAdRecommendation responsive_search_ad_recommendation = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; - } -} diff --git a/google/ads/googleads/v6/resources/remarketing_action.proto b/google/ads/googleads/v6/resources/remarketing_action.proto deleted file mode 100644 index 37ea52927..000000000 --- a/google/ads/googleads/v6/resources/remarketing_action.proto +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/tag_snippet.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "RemarketingActionProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Remarketing Action resource. - -// A remarketing action. A snippet of JavaScript code that will collect the -// product id and the type of page people visited (product page, shopping cart -// page, purchase page, general site visit) on an advertiser's website. -message RemarketingAction { - option (google.api.resource) = { - type: "googleads.googleapis.com/RemarketingAction" - pattern: "customers/{customer_id}/remarketingActions/{remarketing_action_id}" - }; - - // Immutable. The resource name of the remarketing action. - // Remarketing action resource names have the form: - // - // `customers/{customer_id}/remarketingActions/{remarketing_action_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/RemarketingAction" - } - ]; - - // Output only. Id of the remarketing action. - optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The name of the remarketing action. - // - // This field is required and should not be empty when creating new - // remarketing actions. - optional string name = 6; - - // Output only. The snippets used for tracking remarketing actions. - repeated google.ads.googleads.v6.common.TagSnippet tag_snippets = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/search_term_view.proto b/google/ads/googleads/v6/resources/search_term_view.proto deleted file mode 100644 index 023e89dfc..000000000 --- a/google/ads/googleads/v6/resources/search_term_view.proto +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/search_term_targeting_status.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the SearchTermView resource. - -// A search term view with metrics aggregated by search term at the ad group -// level. -message SearchTermView { - option (google.api.resource) = { - type: "googleads.googleapis.com/SearchTermView" - pattern: "customers/{customer_id}/searchTermViews/{campaign_id}~{ad_group_id}~{query}" - }; - - // Output only. The resource name of the search term view. - // Search term view resource names have the form: - // - // `customers/{customer_id}/searchTermViews/{campaign_id}~{ad_group_id}~{URL-base64_search_term}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SearchTermView" - } - ]; - - // Output only. The search term. - optional string search_term = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ad group the search term served in. - optional string ad_group = 6 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; - - // Output only. Indicates whether the search term is currently one of your - // targeted or excluded keywords. - google.ads.googleads.v6.enums.SearchTermTargetingStatusEnum.SearchTermTargetingStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/shared_criterion.proto b/google/ads/googleads/v6/resources/shared_criterion.proto deleted file mode 100644 index 1139c1153..000000000 --- a/google/ads/googleads/v6/resources/shared_criterion.proto +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/criteria.proto"; -import "google/ads/googleads/v6/enums/criterion_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "SharedCriterionProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the SharedCriterion resource. - -// A criterion belonging to a shared set. -message SharedCriterion { - option (google.api.resource) = { - type: "googleads.googleapis.com/SharedCriterion" - pattern: "customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}" - }; - - // Immutable. The resource name of the shared criterion. - // Shared set resource names have the form: - // - // `customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedCriterion" - } - ]; - - // Immutable. The shared set to which the shared criterion belongs. - optional string shared_set = 10 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; - - // Output only. The ID of the criterion. - // - // This field is ignored for mutates. - optional int64 criterion_id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The type of the criterion. - google.ads.googleads.v6.enums.CriterionTypeEnum.CriterionType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The criterion. - // - // Exactly one must be set. - oneof criterion { - // Immutable. Keyword. - google.ads.googleads.v6.common.KeywordInfo keyword = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Video. - google.ads.googleads.v6.common.YouTubeVideoInfo youtube_video = 5 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. YouTube Channel. - google.ads.googleads.v6.common.YouTubeChannelInfo youtube_channel = 6 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Placement. - google.ads.googleads.v6.common.PlacementInfo placement = 7 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile App Category. - google.ads.googleads.v6.common.MobileAppCategoryInfo mobile_app_category = 8 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. Mobile application. - google.ads.googleads.v6.common.MobileApplicationInfo mobile_application = 9 [(google.api.field_behavior) = IMMUTABLE]; - } -} diff --git a/google/ads/googleads/v6/resources/shared_set.proto b/google/ads/googleads/v6/resources/shared_set.proto deleted file mode 100644 index 42846f461..000000000 --- a/google/ads/googleads/v6/resources/shared_set.proto +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/enums/shared_set_status.proto"; -import "google/ads/googleads/v6/enums/shared_set_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the SharedSet resource. - -// SharedSets are used for sharing criterion exclusions across multiple -// campaigns. -message SharedSet { - option (google.api.resource) = { - type: "googleads.googleapis.com/SharedSet" - pattern: "customers/{customer_id}/sharedSets/{shared_set_id}" - }; - - // Immutable. The resource name of the shared set. - // Shared set resource names have the form: - // - // `customers/{customer_id}/sharedSets/{shared_set_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; - - // Output only. The ID of this shared set. Read only. - optional int64 id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Immutable. The type of this shared set: each shared set holds only a single kind - // of resource. Required. Immutable. - google.ads.googleads.v6.enums.SharedSetTypeEnum.SharedSetType type = 3 [(google.api.field_behavior) = IMMUTABLE]; - - // The name of this shared set. Required. - // Shared Sets must have names that are unique among active shared sets of - // the same type. - // The length of this string should be between 1 and 255 UTF-8 bytes, - // inclusive. - optional string name = 9; - - // Output only. The status of this shared set. Read only. - google.ads.googleads.v6.enums.SharedSetStatusEnum.SharedSetStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of shared criteria within this shared set. Read only. - optional int64 member_count = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The number of campaigns associated with this shared set. Read only. - optional int64 reference_count = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/shopping_performance_view.proto b/google/ads/googleads/v6/resources/shopping_performance_view.proto deleted file mode 100644 index 695e2c67a..000000000 --- a/google/ads/googleads/v6/resources/shopping_performance_view.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ShoppingPerformanceViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the ShoppingPerformanceView resource. - -// Shopping performance view. -// Provides Shopping campaign statistics aggregated at several product dimension -// levels. Product dimension values from Merchant Center such as brand, -// category, custom attributes, product condition and product type will reflect -// the state of each dimension as of the date and time when the corresponding -// event was recorded. -message ShoppingPerformanceView { - option (google.api.resource) = { - type: "googleads.googleapis.com/ShoppingPerformanceView" - pattern: "customers/{customer_id}/shoppingPerformanceView" - }; - - // Output only. The resource name of the Shopping performance view. - // Shopping performance view resource names have the form: - // `customers/{customer_id}/shoppingPerformanceView` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ShoppingPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/third_party_app_analytics_link.proto b/google/ads/googleads/v6/resources/third_party_app_analytics_link.proto deleted file mode 100644 index b3d0dbfd9..000000000 --- a/google/ads/googleads/v6/resources/third_party_app_analytics_link.proto +++ /dev/null @@ -1,55 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "ThirdPartyAppAnalyticsLinkProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// A data sharing connection, allowing the import of third party app analytics -// into a Google Ads Customer. -message ThirdPartyAppAnalyticsLink { - option (google.api.resource) = { - type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" - pattern: "customers/{customer_id}/thirdPartyAppAnalyticsLinks/{customer_link_id}" - }; - - // Immutable. The resource name of the third party app analytics link. - // Third party app analytics link resource names have the form: - // - // `customers/{customer_id}/thirdPartyAppAnalyticsLinks/{account_link_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" - } - ]; - - // Output only. The shareable link ID that should be provided to the third party when - // setting up app analytics. This is able to be regenerated using regenerate - // method in the ThirdPartyAppAnalyticsLinkService. - optional string shareable_link_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/topic_constant.proto b/google/ads/googleads/v6/resources/topic_constant.proto deleted file mode 100644 index ace7dbceb..000000000 --- a/google/ads/googleads/v6/resources/topic_constant.proto +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "TopicConstantProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the Topic Constant resource. - -// Use topics to target or exclude placements in the Google Display Network -// based on the category into which the placement falls (for example, -// "Pets & Animals/Pets/Dogs"). -message TopicConstant { - option (google.api.resource) = { - type: "googleads.googleapis.com/TopicConstant" - pattern: "topicConstants/{topic_id}" - }; - - // Output only. The resource name of the topic constant. - // topic constant resource names have the form: - // - // `topicConstants/{topic_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicConstant" - } - ]; - - // Output only. The ID of the topic. - optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Resource name of parent of the topic constant. - optional string topic_constant_parent = 6 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicConstant" - } - ]; - - // Output only. The category to target or exclude. Each subsequent element in the array - // describes a more specific sub-category. For example, - // {"Pets & Animals", "Pets", "Dogs"} represents the - // "Pets & Animals/Pets/Dogs" category. List of available topic categories at - // https://developers.google.com/adwords/api/docs/appendix/verticals - repeated string path = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/topic_view.proto b/google/ads/googleads/v6/resources/topic_view.proto deleted file mode 100644 index 470757bdd..000000000 --- a/google/ads/googleads/v6/resources/topic_view.proto +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "TopicViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the topic view resource. - -// A topic view. -message TopicView { - option (google.api.resource) = { - type: "googleads.googleapis.com/TopicView" - pattern: "customers/{customer_id}/topicViews/{ad_group_id}~{criterion_id}" - }; - - // Output only. The resource name of the topic view. - // Topic view resource names have the form: - // - // `customers/{customer_id}/topicViews/{ad_group_id}~{criterion_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicView" - } - ]; -} diff --git a/google/ads/googleads/v6/resources/user_interest.proto b/google/ads/googleads/v6/resources/user_interest.proto deleted file mode 100644 index c980111cf..000000000 --- a/google/ads/googleads/v6/resources/user_interest.proto +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/criterion_category_availability.proto"; -import "google/ads/googleads/v6/enums/user_interest_taxonomy_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "UserInterestProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the User Interest resource. - -// A user interest: a particular interest-based vertical to be targeted. -message UserInterest { - option (google.api.resource) = { - type: "googleads.googleapis.com/UserInterest" - pattern: "customers/{customer_id}/userInterests/{user_interest_id}" - }; - - // Output only. The resource name of the user interest. - // User interest resource names have the form: - // - // `customers/{customer_id}/userInterests/{user_interest_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserInterest" - } - ]; - - // Output only. Taxonomy type of the user interest. - google.ads.googleads.v6.enums.UserInterestTaxonomyTypeEnum.UserInterestTaxonomyType taxonomy_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The ID of the user interest. - optional int64 user_interest_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the user interest. - optional string name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The parent of the user interest. - optional string user_interest_parent = 10 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserInterest" - } - ]; - - // Output only. True if the user interest is launched to all channels and locales. - optional bool launched_to_all = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Availability information of the user interest. - repeated google.ads.googleads.v6.common.CriterionCategoryAvailability availabilities = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/user_list.proto b/google/ads/googleads/v6/resources/user_list.proto deleted file mode 100644 index 305619295..000000000 --- a/google/ads/googleads/v6/resources/user_list.proto +++ /dev/null @@ -1,174 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/ads/googleads/v6/common/user_lists.proto"; -import "google/ads/googleads/v6/enums/access_reason.proto"; -import "google/ads/googleads/v6/enums/user_list_access_status.proto"; -import "google/ads/googleads/v6/enums/user_list_closing_reason.proto"; -import "google/ads/googleads/v6/enums/user_list_membership_status.proto"; -import "google/ads/googleads/v6/enums/user_list_size_range.proto"; -import "google/ads/googleads/v6/enums/user_list_type.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "UserListProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the User List resource. - -// A user list. This is a list of users a customer may target. -message UserList { - option (google.api.resource) = { - type: "googleads.googleapis.com/UserList" - pattern: "customers/{customer_id}/userLists/{user_list_id}" - }; - - // Immutable. The resource name of the user list. - // User list resource names have the form: - // - // `customers/{customer_id}/userLists/{user_list_id}` - string resource_name = 1 [ - (google.api.field_behavior) = IMMUTABLE, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserList" - } - ]; - - // Output only. Id of the user list. - optional int64 id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A flag that indicates if a user may edit a list. Depends on the list - // ownership and list type. For example, external remarketing user lists are - // not editable. - // - // This field is read-only. - optional bool read_only = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Name of this user list. Depending on its access_reason, the user list name - // may not be unique (e.g. if access_reason=SHARED) - optional string name = 27; - - // Description of this user list. - optional string description = 28; - - // Membership status of this user list. Indicates whether a user list is open - // or active. Only open user lists can accumulate more users and can be - // targeted to. - google.ads.googleads.v6.enums.UserListMembershipStatusEnum.UserListMembershipStatus membership_status = 6; - - // An ID from external system. It is used by user list sellers to correlate - // IDs on their systems. - optional string integration_code = 29; - - // Number of days a user's cookie stays on your list since its most recent - // addition to the list. This field must be between 0 and 540 inclusive. - // However, for CRM based userlists, this field can be set to 10000 which - // means no expiration. - // - // It'll be ignored for logical_user_list. - optional int64 membership_life_span = 30; - - // Output only. Estimated number of users in this user list, on the Google Display Network. - // This value is null if the number of users has not yet been determined. - // - // This field is read-only. - optional int64 size_for_display = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Size range in terms of number of users of the UserList, on the Google - // Display Network. - // - // This field is read-only. - google.ads.googleads.v6.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_display = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Estimated number of users in this user list in the google.com domain. - // These are the users available for targeting in Search campaigns. - // This value is null if the number of users has not yet been determined. - // - // This field is read-only. - optional int64 size_for_search = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Size range in terms of number of users of the UserList, for Search ads. - // - // This field is read-only. - google.ads.googleads.v6.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_search = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Type of this list. - // - // This field is read-only. - google.ads.googleads.v6.enums.UserListTypeEnum.UserListType type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Indicating the reason why this user list membership status is closed. It is - // only populated on lists that were automatically closed due to inactivity, - // and will be cleared once the list membership status becomes open. - google.ads.googleads.v6.enums.UserListClosingReasonEnum.UserListClosingReason closing_reason = 14; - - // Output only. Indicates the reason this account has been granted access to the list. - // The reason can be SHARED, OWNED, LICENSED or SUBSCRIBED. - // - // This field is read-only. - google.ads.googleads.v6.enums.AccessReasonEnum.AccessReason access_reason = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Indicates if this share is still enabled. When a UserList is shared with - // the user this field is set to ENABLED. Later the userList owner can decide - // to revoke the share and make it DISABLED. - // The default value of this field is set to ENABLED. - google.ads.googleads.v6.enums.UserListAccessStatusEnum.UserListAccessStatus account_user_list_status = 16; - - // Indicates if this user list is eligible for Google Search Network. - optional bool eligible_for_search = 33; - - // Output only. Indicates this user list is eligible for Google Display Network. - // - // This field is read-only. - optional bool eligible_for_display = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates match rate for Customer Match lists. The range of this field is - // [0-100]. This will be null for other list types or when it's not possible - // to calculate the match rate. - // - // This field is read-only. - optional int32 match_rate_percentage = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // The user list. - // - // Exactly one must be set. - oneof user_list { - // User list of CRM users provided by the advertiser. - google.ads.googleads.v6.common.CrmBasedUserListInfo crm_based_user_list = 19; - - // Output only. User list which are similar to users from another UserList. - // These lists are readonly and automatically created by google. - google.ads.googleads.v6.common.SimilarUserListInfo similar_user_list = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // User list generated by a rule. - google.ads.googleads.v6.common.RuleBasedUserListInfo rule_based_user_list = 21; - - // User list that is a custom combination of user lists and user interests. - google.ads.googleads.v6.common.LogicalUserListInfo logical_user_list = 22; - - // User list targeting as a collection of conversion or remarketing actions. - google.ads.googleads.v6.common.BasicUserListInfo basic_user_list = 23; - } -} diff --git a/google/ads/googleads/v6/resources/user_location_view.proto b/google/ads/googleads/v6/resources/user_location_view.proto deleted file mode 100644 index f5546a09e..000000000 --- a/google/ads/googleads/v6/resources/user_location_view.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "UserLocationViewProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the user location view resource. - -// A user location view. -// -// User Location View includes all metrics aggregated at the country level, -// one row per country. It reports metrics at the actual physical location of -// the user by targeted or not targeted location. If other segment fields are -// used, you may get more than one row per country. -message UserLocationView { - option (google.api.resource) = { - type: "googleads.googleapis.com/UserLocationView" - pattern: "customers/{customer_id}/userLocationViews/{country_criterion_id}~{is_targeting_location}" - }; - - // Output only. The resource name of the user location view. - // UserLocation view resource names have the form: - // - // `customers/{customer_id}/userLocationViews/{country_criterion_id}~{targeting_location}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserLocationView" - } - ]; - - // Output only. Criterion Id for the country. - optional int64 country_criterion_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates whether location was targeted or not. - optional bool targeting_location = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/resources/video.proto b/google/ads/googleads/v6/resources/video.proto deleted file mode 100644 index 252e9faaf..000000000 --- a/google/ads/googleads/v6/resources/video.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.resources; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/api/annotations.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Resources"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/resources;resources"; -option java_multiple_files = true; -option java_outer_classname = "VideoProto"; -option java_package = "com.google.ads.googleads.v6.resources"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Resources"; -option ruby_package = "Google::Ads::GoogleAds::V6::Resources"; - -// Proto file describing the video resource. - -// A video. -message Video { - option (google.api.resource) = { - type: "googleads.googleapis.com/Video" - pattern: "customers/{customer_id}/videos/{video_id}" - }; - - // Output only. The resource name of the video. - // Video resource names have the form: - // - // `customers/{customer_id}/videos/{video_id}` - string resource_name = 1 [ - (google.api.field_behavior) = OUTPUT_ONLY, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Video" - } - ]; - - // Output only. The ID of the video. - optional string id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The owner channel id of the video. - optional string channel_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The duration of the video in milliseconds. - optional int64 duration_millis = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The title of the video. - optional string title = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/ads/googleads/v6/services/BUILD.bazel b/google/ads/googleads/v6/services/BUILD.bazel deleted file mode 100644 index 88cc5c966..000000000 --- a/google/ads/googleads/v6/services/BUILD.bazel +++ /dev/null @@ -1,138 +0,0 @@ -# Copyright 2020 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") -load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") - -# TODO(ohren): Change srcs to use an enumeration of each individual proto -# instead of *.proto globbing once the build file generator supports -# subpackages. -proto_library( - name = "services_proto", - srcs = glob(["*.proto"]), - deps = [ - "//google/ads/googleads/v6/common:common_proto", - "//google/ads/googleads/v6/enums:enums_proto", - "//google/ads/googleads/v6/errors:errors_proto", - "//google/ads/googleads/v6/resources:resources_proto", - "//google/api:annotations_proto", - "//google/api:client_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - "//google/longrunning:operations_proto", - "//google/rpc:status_proto", - "@com_google_protobuf//:empty_proto", - "@com_google_protobuf//:field_mask_proto", - "@com_google_protobuf//:wrappers_proto", - ], -) - -proto_library_with_info( - name = "services_proto_with_info", - deps = [ - ":services_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_grpc_library", - "java_proto_library", -) - -java_proto_library( - name = "services_java_proto", - deps = [":services_proto"], -) - -java_grpc_library( - name = "services_java_grpc", - srcs = [":services_proto"], - deps = [":services_java_proto"], -) - -############################################################################## -# PHP -############################################################################## - -# PHP targets are in the parent directory's BUILD.bazel file to facilitate -# aggregating metadata using a single underlying call to protoc. - -############################################################################## -# C# -############################################################################## -load( - "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", - "csharp_grpc_library", - "csharp_proto_library", -) - -csharp_proto_library( - name = "services_csharp_proto", - deps = [":services_proto"], -) - -csharp_grpc_library( - name = "services_csharp_grpc", - srcs = [":services_proto"], - deps = [":services_csharp_proto"], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", - "ruby_grpc_library", - "ruby_proto_library", -) - -ruby_proto_library( - name = "services_ruby_proto", - deps = [":services_proto"], -) - -ruby_grpc_library( - name = "services_ruby_grpc", - srcs = [":services_proto"], - deps = [":services_ruby_proto"], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_grpc_library", - "py_proto_library", -) - -py_proto_library( - name = "services_py_proto", - deps = [":services_proto"], -) - -py_grpc_library( - name = "services_py_grpc", - srcs = [":services_proto"], - deps = [":services_py_proto"], -) diff --git a/google/ads/googleads/v6/services/account_budget_proposal_service.proto b/google/ads/googleads/v6/services/account_budget_proposal_service.proto deleted file mode 100644 index ec59753e7..000000000 --- a/google/ads/googleads/v6/services/account_budget_proposal_service.proto +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/account_budget_proposal.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetProposalServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the AccountBudgetProposal service. - -// A service for managing account-level budgets via proposals. -// -// A proposal is a request to create a new budget or make changes to an -// existing one. -// -// Reads for account-level budgets managed by these proposals will be -// supported in a future version. Until then, please use the -// BudgetOrderService from the AdWords API. Learn more at -// https://developers.google.com/adwords/api/docs/guides/budget-order -// -// Mutates: -// The CREATE operation creates a new proposal. -// UPDATE operations aren't supported. -// The REMOVE operation cancels a pending proposal. -service AccountBudgetProposalService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns an account-level budget proposal in full detail. - rpc GetAccountBudgetProposal(GetAccountBudgetProposalRequest) returns (google.ads.googleads.v6.resources.AccountBudgetProposal) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/accountBudgetProposals/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes account budget proposals. Operation statuses - // are returned. - rpc MutateAccountBudgetProposal(MutateAccountBudgetProposalRequest) returns (MutateAccountBudgetProposalResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/accountBudgetProposals:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for -// [AccountBudgetProposalService.GetAccountBudgetProposal][google.ads.googleads.v6.services.AccountBudgetProposalService.GetAccountBudgetProposal]. -message GetAccountBudgetProposalRequest { - // Required. The resource name of the account-level budget proposal to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudgetProposal" - } - ]; -} - -// Request message for -// [AccountBudgetProposalService.MutateAccountBudgetProposal][google.ads.googleads.v6.services.AccountBudgetProposalService.MutateAccountBudgetProposal]. -message MutateAccountBudgetProposalRequest { - // Required. The ID of the customer. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on an individual account-level budget proposal. - AccountBudgetProposalOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 3; -} - -// A single operation to propose the creation of a new account-level budget or -// edit/end/remove an existing one. -message AccountBudgetProposalOperation { - // FieldMask that determines which budget fields are modified. While budgets - // may be modified, proposals that propose such modifications are final. - // Therefore, update operations are not supported for proposals. - // - // Proposals that modify budgets have the 'update' proposal type. Specifying - // a mask for any other proposal type is considered an error. - google.protobuf.FieldMask update_mask = 3; - - // The mutate operation. - oneof operation { - // Create operation: A new proposal to create a new budget, edit an - // existing budget, end an actively running budget, or remove an approved - // budget scheduled to start in the future. - // No resource name is expected for the new proposal. - google.ads.googleads.v6.resources.AccountBudgetProposal create = 2; - - // Remove operation: A resource name for the removed proposal is expected, - // in this format: - // - // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` - // A request may be cancelled iff it is pending. - string remove = 1; - } -} - -// Response message for account-level budget mutate operations. -message MutateAccountBudgetProposalResponse { - // The result of the mutate. - MutateAccountBudgetProposalResult result = 2; -} - -// The result for the account budget proposal mutate. -message MutateAccountBudgetProposalResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/account_budget_service.proto b/google/ads/googleads/v6/services/account_budget_service.proto deleted file mode 100644 index e4138c469..000000000 --- a/google/ads/googleads/v6/services/account_budget_service.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/account_budget.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AccountBudgetServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the AccountBudget service. - -// A service for fetching an account-level budget. -// -// Account-level budgets are mutated by creating proposal resources. -service AccountBudgetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns an account-level budget in full detail. - rpc GetAccountBudget(GetAccountBudgetRequest) returns (google.ads.googleads.v6.resources.AccountBudget) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/accountBudgets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [AccountBudgetService.GetAccountBudget][google.ads.googleads.v6.services.AccountBudgetService.GetAccountBudget]. -message GetAccountBudgetRequest { - // Required. The resource name of the account-level budget to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountBudget" - } - ]; -} diff --git a/google/ads/googleads/v6/services/account_link_service.proto b/google/ads/googleads/v6/services/account_link_service.proto deleted file mode 100644 index 2b9d8fe87..000000000 --- a/google/ads/googleads/v6/services/account_link_service.proto +++ /dev/null @@ -1,147 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/account_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AccountLinkServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// This service allows management of links between Google Ads accounts and other -// accounts. -service AccountLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the account link in full detail. - rpc GetAccountLink(GetAccountLinkRequest) returns (google.ads.googleads.v6.resources.AccountLink) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/accountLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates an account link. - rpc CreateAccountLink(CreateAccountLinkRequest) returns (CreateAccountLinkResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/accountLinks:create" - body: "*" - }; - option (google.api.method_signature) = "customer_id,account_link"; - } - - // Creates or removes an account link. - // From V5, create is not supported through - // AccountLinkService.MutateAccountLink. Please use - // AccountLinkService.CreateAccountLink instead. - rpc MutateAccountLink(MutateAccountLinkRequest) returns (MutateAccountLinkResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/accountLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for [AccountLinkService.GetAccountLink][google.ads.googleads.v6.services.AccountLinkService.GetAccountLink]. -message GetAccountLinkRequest { - // Required. Resource name of the account link. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AccountLink" - } - ]; -} - -// Request message for -// [AccountLinkService.CreateAccountLink][google.ads.googleads.v6.services.AccountLinkService.CreateAccountLink]. -message CreateAccountLinkRequest { - // Required. The ID of the customer for which the account link is created. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The account link to be created. - google.ads.googleads.v6.resources.AccountLink account_link = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for -// [AccountLinkService.CreateAccountLink][google.ads.googleads.v6.services.AccountLinkService.CreateAccountLink]. -message CreateAccountLinkResponse { - // Returned for successful operations. Resource name of the account link. - string resource_name = 1; -} - -// Request message for [AccountLinkService.MutateAccountLink][google.ads.googleads.v6.services.AccountLinkService.MutateAccountLink]. -message MutateAccountLinkRequest { - // Required. The ID of the customer being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the link. - AccountLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single update on an account link. -message AccountLinkOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The operation to perform. - oneof operation { - // Update operation: The account link is expected to have - // a valid resource name. - google.ads.googleads.v6.resources.AccountLink update = 2; - - // Remove operation: A resource name for the account link to remove is - // expected, in this format: - // - // `customers/{customer_id}/accountLinks/{account_link_id}` - string remove = 3; - } -} - -// Response message for account link mutate. -message MutateAccountLinkResponse { - // Result for the mutate. - MutateAccountLinkResult result = 1; -} - -// The result for the account link mutate. -message MutateAccountLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/ad_group_ad_asset_view_service.proto b/google/ads/googleads/v6/services/ad_group_ad_asset_view_service.proto deleted file mode 100644 index 49102541c..000000000 --- a/google/ads/googleads/v6/services/ad_group_ad_asset_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/ad_group_ad_asset_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdAssetViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the ad group ad asset view service. - -// Service to fetch ad group ad asset views. -service AdGroupAdAssetViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group ad asset view in full detail. - rpc GetAdGroupAdAssetView(GetAdGroupAdAssetViewRequest) returns (google.ads.googleads.v6.resources.AdGroupAdAssetView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupAdAssetViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdGroupAdAssetViewService.GetAdGroupAdAssetView][google.ads.googleads.v6.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView]. -message GetAdGroupAdAssetViewRequest { - // Required. The resource name of the ad group ad asset view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdAssetView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/ad_group_ad_label_service.proto b/google/ads/googleads/v6/services/ad_group_ad_label_service.proto deleted file mode 100644 index 6931a94ce..000000000 --- a/google/ads/googleads/v6/services/ad_group_ad_label_service.proto +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/ad_group_ad_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdLabelServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Ad Group Ad Label service. - -// Service to manage labels on ad group ads. -service AdGroupAdLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group ad label in full detail. - rpc GetAdGroupAdLabel(GetAdGroupAdLabelRequest) returns (google.ads.googleads.v6.resources.AdGroupAdLabel) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupAdLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes ad group ad labels. - // Operation statuses are returned. - rpc MutateAdGroupAdLabels(MutateAdGroupAdLabelsRequest) returns (MutateAdGroupAdLabelsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/adGroupAdLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupAdLabelService.GetAdGroupAdLabel][google.ads.googleads.v6.services.AdGroupAdLabelService.GetAdGroupAdLabel]. -message GetAdGroupAdLabelRequest { - // Required. The resource name of the ad group ad label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAdLabel" - } - ]; -} - -// Request message for [AdGroupAdLabelService.MutateAdGroupAdLabels][google.ads.googleads.v6.services.AdGroupAdLabelService.MutateAdGroupAdLabels]. -message MutateAdGroupAdLabelsRequest { - // Required. ID of the customer whose ad group ad labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on ad group ad labels. - repeated AdGroupAdLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an ad group ad label. -message AdGroupAdLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group ad - // label. - google.ads.googleads.v6.resources.AdGroupAdLabel create = 1; - - // Remove operation: A resource name for the ad group ad label - // being removed, in this format: - // - // `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id} - // _{label_id}` - string remove = 2; - } -} - -// Response message for an ad group ad labels mutate. -message MutateAdGroupAdLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupAdLabelResult results = 2; -} - -// The result for an ad group ad label mutate. -message MutateAdGroupAdLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/ad_group_ad_service.proto b/google/ads/googleads/v6/services/ad_group_ad_service.proto deleted file mode 100644 index 7e137c3fe..000000000 --- a/google/ads/googleads/v6/services/ad_group_ad_service.proto +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/common/policy.proto"; -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/ad_group_ad.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAdServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Ad Group Ad service. - -// Service to manage ads in an ad group. -service AdGroupAdService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad in full detail. - rpc GetAdGroupAd(GetAdGroupAdRequest) returns (google.ads.googleads.v6.resources.AdGroupAd) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupAds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ads. Operation statuses are returned. - rpc MutateAdGroupAds(MutateAdGroupAdsRequest) returns (MutateAdGroupAdsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/adGroupAds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupAdService.GetAdGroupAd][google.ads.googleads.v6.services.AdGroupAdService.GetAdGroupAd]. -message GetAdGroupAdRequest { - // Required. The resource name of the ad to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAd" - } - ]; -} - -// Request message for [AdGroupAdService.MutateAdGroupAds][google.ads.googleads.v6.services.AdGroupAdService.MutateAdGroupAds]. -message MutateAdGroupAdsRequest { - // Required. The ID of the customer whose ads are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ads. - repeated AdGroupAdOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an ad group ad. -message AdGroupAdOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // Configuration for how policies are validated. - google.ads.googleads.v6.common.PolicyValidationParameter policy_validation_parameter = 5; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad. - google.ads.googleads.v6.resources.AdGroupAd create = 1; - - // Update operation: The ad is expected to have a valid resource name. - google.ads.googleads.v6.resources.AdGroupAd update = 2; - - // Remove operation: A resource name for the removed ad is expected, - // in this format: - // - // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` - string remove = 3; - } -} - -// Response message for an ad group ad mutate. -message MutateAdGroupAdsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupAdResult results = 2; -} - -// The result for the ad mutate. -message MutateAdGroupAdResult { - // The resource name returned for successful operations. - string resource_name = 1; - - // The mutated ad group ad with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.AdGroupAd ad_group_ad = 2; -} diff --git a/google/ads/googleads/v6/services/ad_group_audience_view_service.proto b/google/ads/googleads/v6/services/ad_group_audience_view_service.proto deleted file mode 100644 index 59961b8ae..000000000 --- a/google/ads/googleads/v6/services/ad_group_audience_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/ad_group_audience_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupAudienceViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the AdGroup Audience View service. - -// Service to manage ad group audience views. -service AdGroupAudienceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group audience view in full detail. - rpc GetAdGroupAudienceView(GetAdGroupAudienceViewRequest) returns (google.ads.googleads.v6.resources.AdGroupAudienceView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupAudienceViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdGroupAudienceViewService.GetAdGroupAudienceView][google.ads.googleads.v6.services.AdGroupAudienceViewService.GetAdGroupAudienceView]. -message GetAdGroupAudienceViewRequest { - // Required. The resource name of the ad group audience view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/ad_group_bid_modifier_service.proto b/google/ads/googleads/v6/services/ad_group_bid_modifier_service.proto deleted file mode 100644 index 9d2439ff9..000000000 --- a/google/ads/googleads/v6/services/ad_group_bid_modifier_service.proto +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/ad_group_bid_modifier.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupBidModifierServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Ad Group Bid Modifier service. - -// Service to manage ad group bid modifiers. -service AdGroupBidModifierService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group bid modifier in full detail. - rpc GetAdGroupBidModifier(GetAdGroupBidModifierRequest) returns (google.ads.googleads.v6.resources.AdGroupBidModifier) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupBidModifiers/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad group bid modifiers. - // Operation statuses are returned. - rpc MutateAdGroupBidModifiers(MutateAdGroupBidModifiersRequest) returns (MutateAdGroupBidModifiersResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/adGroupBidModifiers:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupBidModifierService.GetAdGroupBidModifier][google.ads.googleads.v6.services.AdGroupBidModifierService.GetAdGroupBidModifier]. -message GetAdGroupBidModifierRequest { - // Required. The resource name of the ad group bid modifier to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupBidModifier" - } - ]; -} - -// Request message for [AdGroupBidModifierService.MutateAdGroupBidModifiers][google.ads.googleads.v6.services.AdGroupBidModifierService.MutateAdGroupBidModifiers]. -message MutateAdGroupBidModifiersRequest { - // Required. ID of the customer whose ad group bid modifiers are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad group bid modifiers. - repeated AdGroupBidModifierOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, remove, update) on an ad group bid modifier. -message AdGroupBidModifierOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group bid - // modifier. - google.ads.googleads.v6.resources.AdGroupBidModifier create = 1; - - // Update operation: The ad group bid modifier is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.AdGroupBidModifier update = 2; - - // Remove operation: A resource name for the removed ad group bid modifier - // is expected, in this format: - // - // `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for ad group bid modifiers mutate. -message MutateAdGroupBidModifiersResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupBidModifierResult results = 2; -} - -// The result for the criterion mutate. -message MutateAdGroupBidModifierResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated ad group bid modifier with only mutable fields after mutate. - // The field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.AdGroupBidModifier ad_group_bid_modifier = 2; -} diff --git a/google/ads/googleads/v6/services/ad_group_criterion_label_service.proto b/google/ads/googleads/v6/services/ad_group_criterion_label_service.proto deleted file mode 100644 index c9faa4543..000000000 --- a/google/ads/googleads/v6/services/ad_group_criterion_label_service.proto +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/ad_group_criterion_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionLabelServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Ad Group Criterion Label service. - -// Service to manage labels on ad group criteria. -service AdGroupCriterionLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group criterion label in full detail. - rpc GetAdGroupCriterionLabel(GetAdGroupCriterionLabelRequest) returns (google.ads.googleads.v6.resources.AdGroupCriterionLabel) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupCriterionLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes ad group criterion labels. - // Operation statuses are returned. - rpc MutateAdGroupCriterionLabels(MutateAdGroupCriterionLabelsRequest) returns (MutateAdGroupCriterionLabelsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/adGroupCriterionLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [AdGroupCriterionLabelService.GetAdGroupCriterionLabel][google.ads.googleads.v6.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel]. -message GetAdGroupCriterionLabelRequest { - // Required. The resource name of the ad group criterion label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionLabel" - } - ]; -} - -// Request message for -// [AdGroupCriterionLabelService.MutateAdGroupCriterionLabels][google.ads.googleads.v6.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels]. -message MutateAdGroupCriterionLabelsRequest { - // Required. ID of the customer whose ad group criterion labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on ad group criterion labels. - repeated AdGroupCriterionLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an ad group criterion label. -message AdGroupCriterionLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group - // label. - google.ads.googleads.v6.resources.AdGroupCriterionLabel create = 1; - - // Remove operation: A resource name for the ad group criterion label - // being removed, in this format: - // - // `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}` - string remove = 2; - } -} - -// Response message for an ad group criterion labels mutate. -message MutateAdGroupCriterionLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupCriterionLabelResult results = 2; -} - -// The result for an ad group criterion label mutate. -message MutateAdGroupCriterionLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/ad_group_criterion_service.proto b/google/ads/googleads/v6/services/ad_group_criterion_service.proto deleted file mode 100644 index ad990adef..000000000 --- a/google/ads/googleads/v6/services/ad_group_criterion_service.proto +++ /dev/null @@ -1,151 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/common/policy.proto"; -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/ad_group_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Ad Group Criterion service. - -// Service to manage ad group criteria. -service AdGroupCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested criterion in full detail. - rpc GetAdGroupCriterion(GetAdGroupCriterionRequest) returns (google.ads.googleads.v6.resources.AdGroupCriterion) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes criteria. Operation statuses are returned. - rpc MutateAdGroupCriteria(MutateAdGroupCriteriaRequest) returns (MutateAdGroupCriteriaResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/adGroupCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupCriterionService.GetAdGroupCriterion][google.ads.googleads.v6.services.AdGroupCriterionService.GetAdGroupCriterion]. -message GetAdGroupCriterionRequest { - // Required. The resource name of the criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterion" - } - ]; -} - -// Request message for [AdGroupCriterionService.MutateAdGroupCriteria][google.ads.googleads.v6.services.AdGroupCriterionService.MutateAdGroupCriteria]. -message MutateAdGroupCriteriaRequest { - // Required. ID of the customer whose criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual criteria. - repeated AdGroupCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, remove, update) on an ad group criterion. -message AdGroupCriterionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The list of policy violation keys that should not cause a - // PolicyViolationError to be reported. Not all policy violations are - // exemptable, please refer to the is_exemptible field in the returned - // PolicyViolationError. - // - // Resources violating these polices will be saved, but will not be eligible - // to serve. They may begin serving at a later time due to a change in - // policies, re-review of the resource, or a change in advertiser - // certificates. - repeated google.ads.googleads.v6.common.PolicyViolationKey exempt_policy_violation_keys = 5; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new criterion. - google.ads.googleads.v6.resources.AdGroupCriterion create = 1; - - // Update operation: The criterion is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.AdGroupCriterion update = 2; - - // Remove operation: A resource name for the removed criterion is expected, - // in this format: - // - // `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for an ad group criterion mutate. -message MutateAdGroupCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupCriterionResult results = 2; -} - -// The result for the criterion mutate. -message MutateAdGroupCriterionResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated ad group criterion with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.AdGroupCriterion ad_group_criterion = 2; -} diff --git a/google/ads/googleads/v6/services/ad_group_criterion_simulation_service.proto b/google/ads/googleads/v6/services/ad_group_criterion_simulation_service.proto deleted file mode 100644 index c107f1ec0..000000000 --- a/google/ads/googleads/v6/services/ad_group_criterion_simulation_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/ad_group_criterion_simulation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupCriterionSimulationServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the AdGroupCriterionSimulation service. - -// Service to fetch ad group criterion simulations. -service AdGroupCriterionSimulationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group criterion simulation in full detail. - rpc GetAdGroupCriterionSimulation(GetAdGroupCriterionSimulationRequest) returns (google.ads.googleads.v6.resources.AdGroupCriterionSimulation) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupCriterionSimulations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation][google.ads.googleads.v6.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation]. -message GetAdGroupCriterionSimulationRequest { - // Required. The resource name of the ad group criterion simulation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupCriterionSimulation" - } - ]; -} diff --git a/google/ads/googleads/v6/services/ad_group_extension_setting_service.proto b/google/ads/googleads/v6/services/ad_group_extension_setting_service.proto deleted file mode 100644 index 9296a792b..000000000 --- a/google/ads/googleads/v6/services/ad_group_extension_setting_service.proto +++ /dev/null @@ -1,145 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/ad_group_extension_setting.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupExtensionSettingServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the AdGroupExtensionSetting service. - -// Service to manage ad group extension settings. -service AdGroupExtensionSettingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group extension setting in full detail. - rpc GetAdGroupExtensionSetting(GetAdGroupExtensionSettingRequest) returns (google.ads.googleads.v6.resources.AdGroupExtensionSetting) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupExtensionSettings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad group extension settings. Operation - // statuses are returned. - rpc MutateAdGroupExtensionSettings(MutateAdGroupExtensionSettingsRequest) returns (MutateAdGroupExtensionSettingsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/adGroupExtensionSettings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [AdGroupExtensionSettingService.GetAdGroupExtensionSetting][google.ads.googleads.v6.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting]. -message GetAdGroupExtensionSettingRequest { - // Required. The resource name of the ad group extension setting to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupExtensionSetting" - } - ]; -} - -// Request message for -// [AdGroupExtensionSettingService.MutateAdGroupExtensionSettings][google.ads.googleads.v6.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings]. -message MutateAdGroupExtensionSettingsRequest { - // Required. The ID of the customer whose ad group extension settings are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad group extension - // settings. - repeated AdGroupExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on an ad group extension setting. -message AdGroupExtensionSettingOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group - // extension setting. - google.ads.googleads.v6.resources.AdGroupExtensionSetting create = 1; - - // Update operation: The ad group extension setting is expected to have a - // valid resource name. - google.ads.googleads.v6.resources.AdGroupExtensionSetting update = 2; - - // Remove operation: A resource name for the removed ad group extension - // setting is expected, in this format: - // - // `customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}` - string remove = 3; - } -} - -// Response message for an ad group extension setting mutate. -message MutateAdGroupExtensionSettingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupExtensionSettingResult results = 2; -} - -// The result for the ad group extension setting mutate. -message MutateAdGroupExtensionSettingResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated AdGroupExtensionSetting with only mutable fields after mutate. - // The field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.AdGroupExtensionSetting ad_group_extension_setting = 2; -} diff --git a/google/ads/googleads/v6/services/ad_group_feed_service.proto b/google/ads/googleads/v6/services/ad_group_feed_service.proto deleted file mode 100644 index e4f22317c..000000000 --- a/google/ads/googleads/v6/services/ad_group_feed_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/ad_group_feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupFeedServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the AdGroupFeed service. - -// Service to manage ad group feeds. -service AdGroupFeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group feed in full detail. - rpc GetAdGroupFeed(GetAdGroupFeedRequest) returns (google.ads.googleads.v6.resources.AdGroupFeed) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupFeeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad group feeds. Operation statuses are - // returned. - rpc MutateAdGroupFeeds(MutateAdGroupFeedsRequest) returns (MutateAdGroupFeedsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/adGroupFeeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupFeedService.GetAdGroupFeed][google.ads.googleads.v6.services.AdGroupFeedService.GetAdGroupFeed]. -message GetAdGroupFeedRequest { - // Required. The resource name of the ad group feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupFeed" - } - ]; -} - -// Request message for [AdGroupFeedService.MutateAdGroupFeeds][google.ads.googleads.v6.services.AdGroupFeedService.MutateAdGroupFeeds]. -message MutateAdGroupFeedsRequest { - // Required. The ID of the customer whose ad group feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad group feeds. - repeated AdGroupFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an ad group feed. -message AdGroupFeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group feed. - google.ads.googleads.v6.resources.AdGroupFeed create = 1; - - // Update operation: The ad group feed is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.AdGroupFeed update = 2; - - // Remove operation: A resource name for the removed ad group feed is - // expected, in this format: - // - // `customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id}` - string remove = 3; - } -} - -// Response message for an ad group feed mutate. -message MutateAdGroupFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupFeedResult results = 2; -} - -// The result for the ad group feed mutate. -message MutateAdGroupFeedResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated ad group feed with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.AdGroupFeed ad_group_feed = 2; -} diff --git a/google/ads/googleads/v6/services/ad_group_label_service.proto b/google/ads/googleads/v6/services/ad_group_label_service.proto deleted file mode 100644 index f18ba8c81..000000000 --- a/google/ads/googleads/v6/services/ad_group_label_service.proto +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/ad_group_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupLabelServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Ad Group Label service. - -// Service to manage labels on ad groups. -service AdGroupLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group label in full detail. - rpc GetAdGroupLabel(GetAdGroupLabelRequest) returns (google.ads.googleads.v6.resources.AdGroupLabel) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes ad group labels. - // Operation statuses are returned. - rpc MutateAdGroupLabels(MutateAdGroupLabelsRequest) returns (MutateAdGroupLabelsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/adGroupLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupLabelService.GetAdGroupLabel][google.ads.googleads.v6.services.AdGroupLabelService.GetAdGroupLabel]. -message GetAdGroupLabelRequest { - // Required. The resource name of the ad group label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupLabel" - } - ]; -} - -// Request message for [AdGroupLabelService.MutateAdGroupLabels][google.ads.googleads.v6.services.AdGroupLabelService.MutateAdGroupLabels]. -message MutateAdGroupLabelsRequest { - // Required. ID of the customer whose ad group labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on ad group labels. - repeated AdGroupLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an ad group label. -message AdGroupLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group - // label. - google.ads.googleads.v6.resources.AdGroupLabel create = 1; - - // Remove operation: A resource name for the ad group label - // being removed, in this format: - // - // `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}` - string remove = 2; - } -} - -// Response message for an ad group labels mutate. -message MutateAdGroupLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupLabelResult results = 2; -} - -// The result for an ad group label mutate. -message MutateAdGroupLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/ad_group_service.proto b/google/ads/googleads/v6/services/ad_group_service.proto deleted file mode 100644 index 5dabb90ac..000000000 --- a/google/ads/googleads/v6/services/ad_group_service.proto +++ /dev/null @@ -1,137 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/ad_group.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Ad Group service. - -// Service to manage ad groups. -service AdGroupService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group in full detail. - rpc GetAdGroup(GetAdGroupRequest) returns (google.ads.googleads.v6.resources.AdGroup) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroups/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad groups. Operation statuses are returned. - rpc MutateAdGroups(MutateAdGroupsRequest) returns (MutateAdGroupsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/adGroups:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdGroupService.GetAdGroup][google.ads.googleads.v6.services.AdGroupService.GetAdGroup]. -message GetAdGroupRequest { - // Required. The resource name of the ad group to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroup" - } - ]; -} - -// Request message for [AdGroupService.MutateAdGroups][google.ads.googleads.v6.services.AdGroupService.MutateAdGroups]. -message MutateAdGroupsRequest { - // Required. The ID of the customer whose ad groups are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad groups. - repeated AdGroupOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an ad group. -message AdGroupOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad group. - google.ads.googleads.v6.resources.AdGroup create = 1; - - // Update operation: The ad group is expected to have a valid resource name. - google.ads.googleads.v6.resources.AdGroup update = 2; - - // Remove operation: A resource name for the removed ad group is expected, - // in this format: - // - // `customers/{customer_id}/adGroups/{ad_group_id}` - string remove = 3; - } -} - -// Response message for an ad group mutate. -message MutateAdGroupsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdGroupResult results = 2; -} - -// The result for the ad group mutate. -message MutateAdGroupResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated ad group with only mutable fields after mutate. The field will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.AdGroup ad_group = 2; -} diff --git a/google/ads/googleads/v6/services/ad_group_simulation_service.proto b/google/ads/googleads/v6/services/ad_group_simulation_service.proto deleted file mode 100644 index 80dbeb171..000000000 --- a/google/ads/googleads/v6/services/ad_group_simulation_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/ad_group_simulation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdGroupSimulationServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the AdGroupSimulation service. - -// Service to fetch ad group simulations. -service AdGroupSimulationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad group simulation in full detail. - rpc GetAdGroupSimulation(GetAdGroupSimulationRequest) returns (google.ads.googleads.v6.resources.AdGroupSimulation) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adGroupSimulations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdGroupSimulationService.GetAdGroupSimulation][google.ads.googleads.v6.services.AdGroupSimulationService.GetAdGroupSimulation]. -message GetAdGroupSimulationRequest { - // Required. The resource name of the ad group simulation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdGroupSimulation" - } - ]; -} diff --git a/google/ads/googleads/v6/services/ad_parameter_service.proto b/google/ads/googleads/v6/services/ad_parameter_service.proto deleted file mode 100644 index 37b0fb211..000000000 --- a/google/ads/googleads/v6/services/ad_parameter_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/ad_parameter.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdParameterServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Ad Parameter service. - -// Service to manage ad parameters. -service AdParameterService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad parameter in full detail. - rpc GetAdParameter(GetAdParameterRequest) returns (google.ads.googleads.v6.resources.AdParameter) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adParameters/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes ad parameters. Operation statuses are - // returned. - rpc MutateAdParameters(MutateAdParametersRequest) returns (MutateAdParametersResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/adParameters:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdParameterService.GetAdParameter][google.ads.googleads.v6.services.AdParameterService.GetAdParameter] -message GetAdParameterRequest { - // Required. The resource name of the ad parameter to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdParameter" - } - ]; -} - -// Request message for [AdParameterService.MutateAdParameters][google.ads.googleads.v6.services.AdParameterService.MutateAdParameters] -message MutateAdParametersRequest { - // Required. The ID of the customer whose ad parameters are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ad parameters. - repeated AdParameterOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on ad parameter. -message AdParameterOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new ad parameter. - google.ads.googleads.v6.resources.AdParameter create = 1; - - // Update operation: The ad parameter is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.AdParameter update = 2; - - // Remove operation: A resource name for the ad parameter to remove is - // expected in this format: - // - // `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}` - string remove = 3; - } -} - -// Response message for an ad parameter mutate. -message MutateAdParametersResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateAdParameterResult results = 2; -} - -// The result for the ad parameter mutate. -message MutateAdParameterResult { - // The resource name returned for successful operations. - string resource_name = 1; - - // The mutated AdParameter with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.AdParameter ad_parameter = 2; -} diff --git a/google/ads/googleads/v6/services/ad_schedule_view_service.proto b/google/ads/googleads/v6/services/ad_schedule_view_service.proto deleted file mode 100644 index f35de254b..000000000 --- a/google/ads/googleads/v6/services/ad_schedule_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/ad_schedule_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdScheduleViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the AdSchedule View service. - -// Service to fetch ad schedule views. -service AdScheduleViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad schedule view in full detail. - rpc GetAdScheduleView(GetAdScheduleViewRequest) returns (google.ads.googleads.v6.resources.AdScheduleView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/adScheduleViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AdScheduleViewService.GetAdScheduleView][google.ads.googleads.v6.services.AdScheduleViewService.GetAdScheduleView]. -message GetAdScheduleViewRequest { - // Required. The resource name of the ad schedule view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AdScheduleView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/ad_service.proto b/google/ads/googleads/v6/services/ad_service.proto deleted file mode 100644 index 3212cb5aa..000000000 --- a/google/ads/googleads/v6/services/ad_service.proto +++ /dev/null @@ -1,119 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/common/policy.proto"; -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/ad.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AdServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Ad service. - -// Service to manage ads. -service AdService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested ad in full detail. - rpc GetAd(GetAdRequest) returns (google.ads.googleads.v6.resources.Ad) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/ads/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Updates ads. Operation statuses are returned. Updating ads is not supported - // for TextAd, ExpandedDynamicSearchAd, GmailAd and ImageAd. - rpc MutateAds(MutateAdsRequest) returns (MutateAdsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/ads:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AdService.GetAd][google.ads.googleads.v6.services.AdService.GetAd]. -message GetAdRequest { - // Required. The resource name of the ad to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Ad" - } - ]; -} - -// Request message for [AdService.MutateAds][google.ads.googleads.v6.services.AdService.MutateAds]. -message MutateAdsRequest { - // Required. The ID of the customer whose ads are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual ads. - repeated AdOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single update operation on an ad. -message AdOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 2; - - // Configuration for how policies are validated. - google.ads.googleads.v6.common.PolicyValidationParameter policy_validation_parameter = 3; - - // The mutate operation. - oneof operation { - // Update operation: The ad is expected to have a valid resource name - // in this format: - // - // `customers/{customer_id}/ads/{ad_id}` - google.ads.googleads.v6.resources.Ad update = 1; - } -} - -// Response message for an ad mutate. -message MutateAdsResponse { - // All results for the mutate. - repeated MutateAdResult results = 2; -} - -// The result for the ad mutate. -message MutateAdResult { - // The resource name returned for successful operations. - string resource_name = 1; - - // The mutated ad with only mutable fields after mutate. The field will only - // be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.Ad ad = 2; -} diff --git a/google/ads/googleads/v6/services/age_range_view_service.proto b/google/ads/googleads/v6/services/age_range_view_service.proto deleted file mode 100644 index 3fbe7a46a..000000000 --- a/google/ads/googleads/v6/services/age_range_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/age_range_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AgeRangeViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Age Range View service. - -// Service to manage age range views. -service AgeRangeViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested age range view in full detail. - rpc GetAgeRangeView(GetAgeRangeViewRequest) returns (google.ads.googleads.v6.resources.AgeRangeView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/ageRangeViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [AgeRangeViewService.GetAgeRangeView][google.ads.googleads.v6.services.AgeRangeViewService.GetAgeRangeView]. -message GetAgeRangeViewRequest { - // Required. The resource name of the age range view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/AgeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/asset_service.proto b/google/ads/googleads/v6/services/asset_service.proto deleted file mode 100644 index 51538e729..000000000 --- a/google/ads/googleads/v6/services/asset_service.proto +++ /dev/null @@ -1,121 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/asset.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "AssetServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Asset service. - -// Service to manage assets. Asset types can be created with AssetService are -// YoutubeVideoAsset, MediaBundleAsset and ImageAsset. TextAsset should be -// created with Ad inline. -service AssetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested asset in full detail. - rpc GetAsset(GetAssetRequest) returns (google.ads.googleads.v6.resources.Asset) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/assets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates assets. Operation statuses are returned. - rpc MutateAssets(MutateAssetsRequest) returns (MutateAssetsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/assets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [AssetService.GetAsset][google.ads.googleads.v6.services.AssetService.GetAsset] -message GetAssetRequest { - // Required. The resource name of the asset to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Asset" - } - ]; -} - -// Request message for [AssetService.MutateAssets][google.ads.googleads.v6.services.AssetService.MutateAssets] -message MutateAssetsRequest { - // Required. The ID of the customer whose assets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual assets. - repeated AssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 3; -} - -// A single operation to create an asset. Supported asset types are -// YoutubeVideoAsset, MediaBundleAsset, ImageAsset, and LeadFormAsset. TextAsset -// should be created with Ad inline. -message AssetOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 3; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new asset. - google.ads.googleads.v6.resources.Asset create = 1; - - // Update operation: The asset is expected to have a valid resource name in - // this format: - // - // `customers/{customer_id}/assets/{asset_id}` - google.ads.googleads.v6.resources.Asset update = 2; - } -} - -// Response message for an asset mutate. -message MutateAssetsResponse { - // All results for the mutate. - repeated MutateAssetResult results = 2; -} - -// The result for the asset mutate. -message MutateAssetResult { - // The resource name returned for successful operations. - string resource_name = 1; - - // The mutated asset with only mutable fields after mutate. The field will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.Asset asset = 2; -} diff --git a/google/ads/googleads/v6/services/batch_job_service.proto b/google/ads/googleads/v6/services/batch_job_service.proto deleted file mode 100644 index 1182b5893..000000000 --- a/google/ads/googleads/v6/services/batch_job_service.proto +++ /dev/null @@ -1,236 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/batch_job.proto"; -import "google/ads/googleads/v6/services/google_ads_service.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "BatchJobServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the BatchJobService. - -// Service to manage batch jobs. -service BatchJobService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Mutates a batch job. - rpc MutateBatchJob(MutateBatchJobRequest) returns (MutateBatchJobResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/batchJobs:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } - - // Returns the batch job. - rpc GetBatchJob(GetBatchJobRequest) returns (google.ads.googleads.v6.resources.BatchJob) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/batchJobs/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Returns the results of the batch job. The job must be done. - // Supports standard list paging. - rpc ListBatchJobResults(ListBatchJobResultsRequest) returns (ListBatchJobResultsResponse) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/batchJobs/*}:listResults" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Runs the batch job. - // - // The Operation.metadata field type is BatchJobMetadata. When finished, the - // long running operation will not contain errors or a response. Instead, use - // ListBatchJobResults to get the results of the job. - rpc RunBatchJob(RunBatchJobRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v6/{resource_name=customers/*/batchJobs/*}:run" - body: "*" - }; - option (google.api.method_signature) = "resource_name"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.ads.googleads.v6.resources.BatchJob.BatchJobMetadata" - }; - } - - // Add operations to the batch job. - rpc AddBatchJobOperations(AddBatchJobOperationsRequest) returns (AddBatchJobOperationsResponse) { - option (google.api.http) = { - post: "/v6/{resource_name=customers/*/batchJobs/*}:addOperations" - body: "*" - }; - option (google.api.method_signature) = "resource_name,sequence_token,mutate_operations"; - option (google.api.method_signature) = "resource_name,mutate_operations"; - } -} - -// Request message for [BatchJobService.MutateBatchJob][google.ads.googleads.v6.services.BatchJobService.MutateBatchJob]. -message MutateBatchJobRequest { - // Required. The ID of the customer for which to create a batch job. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on an individual batch job. - BatchJobOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation on a batch job. -message BatchJobOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new batch job. - google.ads.googleads.v6.resources.BatchJob create = 1; - } -} - -// Response message for [BatchJobService.MutateBatchJob][google.ads.googleads.v6.services.BatchJobService.MutateBatchJob]. -message MutateBatchJobResponse { - // The result for the mutate. - MutateBatchJobResult result = 1; -} - -// The result for the batch job mutate. -message MutateBatchJobResult { - // The resource name of the batch job. - string resource_name = 1; -} - -// Request message for [BatchJobService.GetBatchJob][google.ads.googleads.v6.services.BatchJobService.GetBatchJob]. -message GetBatchJobRequest { - // Required. The resource name of the batch job to get. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; -} - -// Request message for [BatchJobService.RunBatchJob][google.ads.googleads.v6.services.BatchJobService.RunBatchJob]. -message RunBatchJobRequest { - // Required. The resource name of the BatchJob to run. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; -} - -// Request message for [BatchJobService.AddBatchJobOperations][google.ads.googleads.v6.services.BatchJobService.AddBatchJobOperations]. -message AddBatchJobOperationsRequest { - // Required. The resource name of the batch job. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; - - // A token used to enforce sequencing. - // - // The first AddBatchJobOperations request for a batch job should not set - // sequence_token. Subsequent requests must set sequence_token to the value of - // next_sequence_token received in the previous AddBatchJobOperations - // response. - string sequence_token = 2; - - // Required. The list of mutates being added. - // - // Operations can use negative integers as temp ids to signify dependencies - // between entities created in this batch job. For example, a customer with - // id = 1234 can create a campaign and an ad group in that same campaign by - // creating a campaign in the first operation with the resource name - // explicitly set to "customers/1234/campaigns/-1", and creating an ad group - // in the second operation with the campaign field also set to - // "customers/1234/campaigns/-1". - repeated MutateOperation mutate_operations = 3 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [BatchJobService.AddBatchJobOperations][google.ads.googleads.v6.services.BatchJobService.AddBatchJobOperations]. -message AddBatchJobOperationsResponse { - // The total number of operations added so far for this batch job. - int64 total_operations = 1; - - // The sequence token to be used when calling AddBatchJobOperations again if - // more operations need to be added. The next AddBatchJobOperations request - // must set the sequence_token field to the value of this field. - string next_sequence_token = 2; -} - -// Request message for [BatchJobService.ListBatchJobResults][google.ads.googleads.v6.services.BatchJobService.ListBatchJobResults]. -message ListBatchJobResultsRequest { - // Required. The resource name of the batch job whose results are being listed. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BatchJob" - } - ]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When a page request is too large, the server may decide to - // further limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for [BatchJobService.ListBatchJobResults][google.ads.googleads.v6.services.BatchJobService.ListBatchJobResults]. -message ListBatchJobResultsResponse { - // The list of rows that matched the query. - repeated BatchJobResult results = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; -} - -// An individual batch job result. -message BatchJobResult { - // Index of the mutate operation. - int64 operation_index = 1; - - // Response for the mutate. - // May be empty if errors occurred. - MutateOperationResponse mutate_operation_response = 2; - - // Details of the errors when processing the operation. - google.rpc.Status status = 3; -} diff --git a/google/ads/googleads/v6/services/bidding_strategy_service.proto b/google/ads/googleads/v6/services/bidding_strategy_service.proto deleted file mode 100644 index 841b9c794..000000000 --- a/google/ads/googleads/v6/services/bidding_strategy_service.proto +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/bidding_strategy.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "BiddingStrategyServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Bidding Strategy service. - -// Service to manage bidding strategies. -service BiddingStrategyService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested bidding strategy in full detail. - rpc GetBiddingStrategy(GetBiddingStrategyRequest) returns (google.ads.googleads.v6.resources.BiddingStrategy) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/biddingStrategies/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes bidding strategies. Operation statuses are - // returned. - rpc MutateBiddingStrategies(MutateBiddingStrategiesRequest) returns (MutateBiddingStrategiesResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/biddingStrategies:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [BiddingStrategyService.GetBiddingStrategy][google.ads.googleads.v6.services.BiddingStrategyService.GetBiddingStrategy]. -message GetBiddingStrategyRequest { - // Required. The resource name of the bidding strategy to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BiddingStrategy" - } - ]; -} - -// Request message for [BiddingStrategyService.MutateBiddingStrategies][google.ads.googleads.v6.services.BiddingStrategyService.MutateBiddingStrategies]. -message MutateBiddingStrategiesRequest { - // Required. The ID of the customer whose bidding strategies are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual bidding strategies. - repeated BiddingStrategyOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a bidding strategy. -message BiddingStrategyOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new bidding - // strategy. - google.ads.googleads.v6.resources.BiddingStrategy create = 1; - - // Update operation: The bidding strategy is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.BiddingStrategy update = 2; - - // Remove operation: A resource name for the removed bidding strategy is - // expected, in this format: - // - // `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}` - string remove = 3; - } -} - -// Response message for bidding strategy mutate. -message MutateBiddingStrategiesResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateBiddingStrategyResult results = 2; -} - -// The result for the bidding strategy mutate. -message MutateBiddingStrategyResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/billing_setup_service.proto b/google/ads/googleads/v6/services/billing_setup_service.proto deleted file mode 100644 index 452b2a607..000000000 --- a/google/ads/googleads/v6/services/billing_setup_service.proto +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/billing_setup.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "BillingSetupServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the BillingSetup service. - -// A service for designating the business entity responsible for accrued costs. -// -// A billing setup is associated with a payments account. Billing-related -// activity for all billing setups associated with a particular payments account -// will appear on a single invoice generated monthly. -// -// Mutates: -// The REMOVE operation cancels a pending billing setup. -// The CREATE operation creates a new billing setup. -service BillingSetupService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns a billing setup. - rpc GetBillingSetup(GetBillingSetupRequest) returns (google.ads.googleads.v6.resources.BillingSetup) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/billingSetups/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates a billing setup, or cancels an existing billing setup. - rpc MutateBillingSetup(MutateBillingSetupRequest) returns (MutateBillingSetupResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/billingSetups:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for -// [BillingSetupService.GetBillingSetup][google.ads.googleads.v6.services.BillingSetupService.GetBillingSetup]. -message GetBillingSetupRequest { - // Required. The resource name of the billing setup to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/BillingSetup" - } - ]; -} - -// Request message for billing setup mutate operations. -message MutateBillingSetupRequest { - // Required. Id of the customer to apply the billing setup mutate operation to. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform. - BillingSetupOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation on a billing setup, which describes the cancellation of an -// existing billing setup. -message BillingSetupOperation { - // Only one of these operations can be set. "Update" operations are not - // supported. - oneof operation { - // Creates a billing setup. No resource name is expected for the new billing - // setup. - google.ads.googleads.v6.resources.BillingSetup create = 2; - - // Resource name of the billing setup to remove. A setup cannot be - // removed unless it is in a pending state or its scheduled start time is in - // the future. The resource name looks like - // `customers/{customer_id}/billingSetups/{billing_id}`. - string remove = 1; - } -} - -// Response message for a billing setup operation. -message MutateBillingSetupResponse { - // A result that identifies the resource affected by the mutate request. - MutateBillingSetupResult result = 1; -} - -// Result for a single billing setup mutate. -message MutateBillingSetupResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/campaign_asset_service.proto b/google/ads/googleads/v6/services/campaign_asset_service.proto deleted file mode 100644 index d68133937..000000000 --- a/google/ads/googleads/v6/services/campaign_asset_service.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/campaign_asset.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignAssetServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the CampaignAsset service. - -// Service to manage campaign assets. -service CampaignAssetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign asset in full detail. - rpc GetCampaignAsset(GetCampaignAssetRequest) returns (google.ads.googleads.v6.resources.CampaignAsset) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignAssets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes campaign assets. Operation statuses are returned. - rpc MutateCampaignAssets(MutateCampaignAssetsRequest) returns (MutateCampaignAssetsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaignAssets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignAssetService.GetCampaignAsset][google.ads.googleads.v6.services.CampaignAssetService.GetCampaignAsset]. -message GetCampaignAssetRequest { - // Required. The resource name of the campaign asset to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignAsset" - } - ]; -} - -// Request message for [CampaignAssetService.MutateCampaignAssets][google.ads.googleads.v6.services.CampaignAssetService.MutateCampaignAssets]. -message MutateCampaignAssetsRequest { - // Required. The ID of the customer whose campaign assets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign assets. - repeated CampaignAssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on a campaign asset. -message CampaignAssetOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign - // asset. - google.ads.googleads.v6.resources.CampaignAsset create = 1; - - // Remove operation: A resource name for the removed campaign asset is - // expected, in this format: - // - // `customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}` - string remove = 2; - } -} - -// Response message for a campaign asset mutate. -message MutateCampaignAssetsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 1; - - // All results for the mutate. - repeated MutateCampaignAssetResult results = 2; -} - -// The result for the campaign asset mutate. -message MutateCampaignAssetResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/campaign_audience_view_service.proto b/google/ads/googleads/v6/services/campaign_audience_view_service.proto deleted file mode 100644 index 332bf89f6..000000000 --- a/google/ads/googleads/v6/services/campaign_audience_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/campaign_audience_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignAudienceViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Campaign Audience View service. - -// Service to manage campaign audience views. -service CampaignAudienceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign audience view in full detail. - rpc GetCampaignAudienceView(GetCampaignAudienceViewRequest) returns (google.ads.googleads.v6.resources.CampaignAudienceView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignAudienceViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CampaignAudienceViewService.GetCampaignAudienceView][google.ads.googleads.v6.services.CampaignAudienceViewService.GetCampaignAudienceView]. -message GetCampaignAudienceViewRequest { - // Required. The resource name of the campaign audience view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignAudienceView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/campaign_bid_modifier_service.proto b/google/ads/googleads/v6/services/campaign_bid_modifier_service.proto deleted file mode 100644 index 71061f6d0..000000000 --- a/google/ads/googleads/v6/services/campaign_bid_modifier_service.proto +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/campaign_bid_modifier.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBidModifierServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Campaign Bid Modifier service. - -// Service to manage campaign bid modifiers. -service CampaignBidModifierService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign bid modifier in full detail. - rpc GetCampaignBidModifier(GetCampaignBidModifierRequest) returns (google.ads.googleads.v6.resources.CampaignBidModifier) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignBidModifiers/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign bid modifiers. - // Operation statuses are returned. - rpc MutateCampaignBidModifiers(MutateCampaignBidModifiersRequest) returns (MutateCampaignBidModifiersResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaignBidModifiers:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignBidModifierService.GetCampaignBidModifier][google.ads.googleads.v6.services.CampaignBidModifierService.GetCampaignBidModifier]. -message GetCampaignBidModifierRequest { - // Required. The resource name of the campaign bid modifier to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBidModifier" - } - ]; -} - -// Request message for -// [CampaignBidModifierService.MutateCampaignBidModifiers][google.ads.googleads.v6.services.CampaignBidModifierService.MutateCampaignBidModifiers]. -message MutateCampaignBidModifiersRequest { - // Required. ID of the customer whose campaign bid modifiers are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign bid modifiers. - repeated CampaignBidModifierOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, remove, update) on a campaign bid modifier. -message CampaignBidModifierOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign bid - // modifier. - google.ads.googleads.v6.resources.CampaignBidModifier create = 1; - - // Update operation: The campaign bid modifier is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.CampaignBidModifier update = 2; - - // Remove operation: A resource name for the removed campaign bid modifier - // is expected, in this format: - // - // `customers/{customer_id}/CampaignBidModifiers/{campaign_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for campaign bid modifiers mutate. -message MutateCampaignBidModifiersResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignBidModifierResult results = 2; -} - -// The result for the criterion mutate. -message MutateCampaignBidModifierResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign bid modifier with only mutable fields after mutate. - // The field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.CampaignBidModifier campaign_bid_modifier = 2; -} diff --git a/google/ads/googleads/v6/services/campaign_budget_service.proto b/google/ads/googleads/v6/services/campaign_budget_service.proto deleted file mode 100644 index ebaca41d4..000000000 --- a/google/ads/googleads/v6/services/campaign_budget_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/campaign_budget.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignBudgetServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Campaign Budget service. - -// Service to manage campaign budgets. -service CampaignBudgetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Campaign Budget in full detail. - rpc GetCampaignBudget(GetCampaignBudgetRequest) returns (google.ads.googleads.v6.resources.CampaignBudget) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignBudgets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign budgets. Operation statuses are - // returned. - rpc MutateCampaignBudgets(MutateCampaignBudgetsRequest) returns (MutateCampaignBudgetsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaignBudgets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignBudgetService.GetCampaignBudget][google.ads.googleads.v6.services.CampaignBudgetService.GetCampaignBudget]. -message GetCampaignBudgetRequest { - // Required. The resource name of the campaign budget to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignBudget" - } - ]; -} - -// Request message for [CampaignBudgetService.MutateCampaignBudgets][google.ads.googleads.v6.services.CampaignBudgetService.MutateCampaignBudgets]. -message MutateCampaignBudgetsRequest { - // Required. The ID of the customer whose campaign budgets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign budgets. - repeated CampaignBudgetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on a campaign budget. -message CampaignBudgetOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new budget. - google.ads.googleads.v6.resources.CampaignBudget create = 1; - - // Update operation: The campaign budget is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.CampaignBudget update = 2; - - // Remove operation: A resource name for the removed budget is expected, in - // this format: - // - // `customers/{customer_id}/campaignBudgets/{budget_id}` - string remove = 3; - } -} - -// Response message for campaign budget mutate. -message MutateCampaignBudgetsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignBudgetResult results = 2; -} - -// The result for the campaign budget mutate. -message MutateCampaignBudgetResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign budget with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.CampaignBudget campaign_budget = 2; -} diff --git a/google/ads/googleads/v6/services/campaign_criterion_service.proto b/google/ads/googleads/v6/services/campaign_criterion_service.proto deleted file mode 100644 index 91a2257f7..000000000 --- a/google/ads/googleads/v6/services/campaign_criterion_service.proto +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/campaign_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Campaign Criterion service. - -// Service to manage campaign criteria. -service CampaignCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested criterion in full detail. - rpc GetCampaignCriterion(GetCampaignCriterionRequest) returns (google.ads.googleads.v6.resources.CampaignCriterion) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes criteria. Operation statuses are returned. - rpc MutateCampaignCriteria(MutateCampaignCriteriaRequest) returns (MutateCampaignCriteriaResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaignCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignCriterionService.GetCampaignCriterion][google.ads.googleads.v6.services.CampaignCriterionService.GetCampaignCriterion]. -message GetCampaignCriterionRequest { - // Required. The resource name of the criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterion" - } - ]; -} - -// Request message for [CampaignCriterionService.MutateCampaignCriteria][google.ads.googleads.v6.services.CampaignCriterionService.MutateCampaignCriteria]. -message MutateCampaignCriteriaRequest { - // Required. The ID of the customer whose criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual criteria. - repeated CampaignCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on a campaign criterion. -message CampaignCriterionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new criterion. - google.ads.googleads.v6.resources.CampaignCriterion create = 1; - - // Update operation: The criterion is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.CampaignCriterion update = 2; - - // Remove operation: A resource name for the removed criterion is expected, - // in this format: - // - // `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for campaign criterion mutate. -message MutateCampaignCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignCriterionResult results = 2; -} - -// The result for the criterion mutate. -message MutateCampaignCriterionResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign criterion with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.CampaignCriterion campaign_criterion = 2; -} diff --git a/google/ads/googleads/v6/services/campaign_criterion_simulation_service.proto b/google/ads/googleads/v6/services/campaign_criterion_simulation_service.proto deleted file mode 100644 index da6d21c4e..000000000 --- a/google/ads/googleads/v6/services/campaign_criterion_simulation_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/campaign_criterion_simulation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignCriterionSimulationServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the CampaignCriterionSimulation service. - -// Service to fetch campaign criterion simulations. -service CampaignCriterionSimulationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign criterion simulation in full detail. - rpc GetCampaignCriterionSimulation(GetCampaignCriterionSimulationRequest) returns (google.ads.googleads.v6.resources.CampaignCriterionSimulation) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignCriterionSimulations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [CampaignCriterionSimulationService.GetCampaignCriterionSimulation][google.ads.googleads.v6.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation]. -message GetCampaignCriterionSimulationRequest { - // Required. The resource name of the campaign criterion simulation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignCriterionSimulation" - } - ]; -} diff --git a/google/ads/googleads/v6/services/campaign_draft_service.proto b/google/ads/googleads/v6/services/campaign_draft_service.proto deleted file mode 100644 index 8fc33e43e..000000000 --- a/google/ads/googleads/v6/services/campaign_draft_service.proto +++ /dev/null @@ -1,213 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/campaign_draft.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignDraftServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Campaign Draft service. - -// Service to manage campaign drafts. -service CampaignDraftService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign draft in full detail. - rpc GetCampaignDraft(GetCampaignDraftRequest) returns (google.ads.googleads.v6.resources.CampaignDraft) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignDrafts/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign drafts. Operation statuses are - // returned. - rpc MutateCampaignDrafts(MutateCampaignDraftsRequest) returns (MutateCampaignDraftsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaignDrafts:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Promotes the changes in a draft back to the base campaign. - // - // This method returns a Long Running Operation (LRO) indicating if the - // Promote is done. Use [Operations.GetOperation] to poll the LRO until it - // is done. Only a done status is returned in the response. See the status - // in the Campaign Draft resource to determine if the promotion was - // successful. If the LRO failed, use - // [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v6.services.CampaignDraftService.ListCampaignDraftAsyncErrors] to view the list of - // error reasons. - rpc PromoteCampaignDraft(PromoteCampaignDraftRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v6/{campaign_draft=customers/*/campaignDrafts/*}:promote" - body: "*" - }; - option (google.api.method_signature) = "campaign_draft"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.protobuf.Empty" - }; - } - - // Returns all errors that occurred during CampaignDraft promote. Throws an - // error if called before campaign draft is promoted. - // Supports standard list paging. - rpc ListCampaignDraftAsyncErrors(ListCampaignDraftAsyncErrorsRequest) returns (ListCampaignDraftAsyncErrorsResponse) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CampaignDraftService.GetCampaignDraft][google.ads.googleads.v6.services.CampaignDraftService.GetCampaignDraft]. -message GetCampaignDraftRequest { - // Required. The resource name of the campaign draft to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; -} - -// Request message for [CampaignDraftService.MutateCampaignDrafts][google.ads.googleads.v6.services.CampaignDraftService.MutateCampaignDrafts]. -message MutateCampaignDraftsRequest { - // Required. The ID of the customer whose campaign drafts are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign drafts. - repeated CampaignDraftOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// Request message for [CampaignDraftService.PromoteCampaignDraft][google.ads.googleads.v6.services.CampaignDraftService.PromoteCampaignDraft]. -message PromoteCampaignDraftRequest { - // Required. The resource name of the campaign draft to promote. - string campaign_draft = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation (create, update, remove) on a campaign draft. -message CampaignDraftOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign - // draft. - google.ads.googleads.v6.resources.CampaignDraft create = 1; - - // Update operation: The campaign draft is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.CampaignDraft update = 2; - - // Remove operation: The campaign draft is expected to have a valid - // resource name, in this format: - // - // `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}` - string remove = 3; - } -} - -// Response message for campaign draft mutate. -message MutateCampaignDraftsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignDraftResult results = 2; -} - -// The result for the campaign draft mutate. -message MutateCampaignDraftResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign draft with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.CampaignDraft campaign_draft = 2; -} - -// Request message for [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v6.services.CampaignDraftService.ListCampaignDraftAsyncErrors]. -message ListCampaignDraftAsyncErrorsRequest { - // Required. The name of the campaign draft from which to retrieve the async errors. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignDraft" - } - ]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When a page request is too large, the server may decide to - // further limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v6.services.CampaignDraftService.ListCampaignDraftAsyncErrors]. -message ListCampaignDraftAsyncErrorsResponse { - // Details of the errors when performing the asynchronous operation. - repeated google.rpc.Status errors = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; -} diff --git a/google/ads/googleads/v6/services/campaign_experiment_service.proto b/google/ads/googleads/v6/services/campaign_experiment_service.proto deleted file mode 100644 index 23a6a86de..000000000 --- a/google/ads/googleads/v6/services/campaign_experiment_service.proto +++ /dev/null @@ -1,304 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/campaign_experiment.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/protobuf/empty.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExperimentServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Campaign Experiment service. - -// CampaignExperimentService manages the life cycle of campaign experiments. -// It is used to create new experiments from drafts, modify experiment -// properties, promote changes in an experiment back to its base campaign, -// graduate experiments into new stand-alone campaigns, and to remove an -// experiment. -// -// An experiment consists of two variants or arms - the base campaign and the -// experiment campaign, directing a fixed share of traffic to each arm. -// A campaign experiment is created from a draft of changes to the base campaign -// and will be a snapshot of changes in the draft at the time of creation. -service CampaignExperimentService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign experiment in full detail. - rpc GetCampaignExperiment(GetCampaignExperimentRequest) returns (google.ads.googleads.v6.resources.CampaignExperiment) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignExperiments/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates a campaign experiment based on a campaign draft. The draft campaign - // will be forked into a real campaign (called the experiment campaign) that - // will begin serving ads if successfully created. - // - // The campaign experiment is created immediately with status INITIALIZING. - // This method return a long running operation that tracks the forking of the - // draft campaign. If the forking fails, a list of errors can be retrieved - // using the ListCampaignExperimentAsyncErrors method. The operation's - // metadata will be a StringValue containing the resource name of the created - // campaign experiment. - rpc CreateCampaignExperiment(CreateCampaignExperimentRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaignExperiments:create" - body: "*" - }; - option (google.api.method_signature) = "customer_id,campaign_experiment"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.ads.googleads.v6.services.CreateCampaignExperimentMetadata" - }; - } - - // Updates campaign experiments. Operation statuses are returned. - rpc MutateCampaignExperiments(MutateCampaignExperimentsRequest) returns (MutateCampaignExperimentsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaignExperiments:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Graduates a campaign experiment to a full campaign. The base and experiment - // campaigns will start running independently with their own budgets. - rpc GraduateCampaignExperiment(GraduateCampaignExperimentRequest) returns (GraduateCampaignExperimentResponse) { - option (google.api.http) = { - post: "/v6/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" - body: "*" - }; - option (google.api.method_signature) = "campaign_experiment,campaign_budget"; - } - - // Promotes the changes in a experiment campaign back to the base campaign. - // - // The campaign experiment is updated immediately with status PROMOTING. - // This method return a long running operation that tracks the promoting of - // the experiment campaign. If the promoting fails, a list of errors can be - // retrieved using the ListCampaignExperimentAsyncErrors method. - rpc PromoteCampaignExperiment(PromoteCampaignExperimentRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v6/{campaign_experiment=customers/*/campaignExperiments/*}:promote" - body: "*" - }; - option (google.api.method_signature) = "campaign_experiment"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.protobuf.Empty" - }; - } - - // Immediately ends a campaign experiment, changing the experiment's scheduled - // end date and without waiting for end of day. End date is updated to be the - // time of the request. - rpc EndCampaignExperiment(EndCampaignExperimentRequest) returns (google.protobuf.Empty) { - option (google.api.http) = { - post: "/v6/{campaign_experiment=customers/*/campaignExperiments/*}:end" - body: "*" - }; - option (google.api.method_signature) = "campaign_experiment"; - } - - // Returns all errors that occurred during CampaignExperiment create or - // promote (whichever occurred last). - // Supports standard list paging. - rpc ListCampaignExperimentAsyncErrors(ListCampaignExperimentAsyncErrorsRequest) returns (ListCampaignExperimentAsyncErrorsResponse) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CampaignExperimentService.GetCampaignExperiment][google.ads.googleads.v6.services.CampaignExperimentService.GetCampaignExperiment]. -message GetCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExperiment" - } - ]; -} - -// Request message for [CampaignExperimentService.MutateCampaignExperiments][google.ads.googleads.v6.services.CampaignExperimentService.MutateCampaignExperiments]. -message MutateCampaignExperimentsRequest { - // Required. The ID of the customer whose campaign experiments are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign experiments. - repeated CampaignExperimentOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single update operation on a campaign experiment. -message CampaignExperimentOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 3; - - // The mutate operation. - oneof operation { - // Update operation: The campaign experiment is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.CampaignExperiment update = 1; - - // Remove operation: The campaign experiment is expected to have a valid - // resource name, in this format: - // - // `customers/{customer_id}/campaignExperiments/{campaign_experiment_id}` - string remove = 2; - } -} - -// Response message for campaign experiment mutate. -message MutateCampaignExperimentsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignExperimentResult results = 2; -} - -// The result for the campaign experiment mutate. -message MutateCampaignExperimentResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign experiment with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.CampaignExperiment campaign_experiment = 2; -} - -// Request message for [CampaignExperimentService.CreateCampaignExperiment][google.ads.googleads.v6.services.CampaignExperimentService.CreateCampaignExperiment]. -message CreateCampaignExperimentRequest { - // Required. The ID of the customer whose campaign experiment is being created. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The campaign experiment to be created. - google.ads.googleads.v6.resources.CampaignExperiment campaign_experiment = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 3; -} - -// Message used as metadata returned in Long Running Operations for -// CreateCampaignExperimentRequest -message CreateCampaignExperimentMetadata { - // Resource name of campaign experiment created. - string campaign_experiment = 1; -} - -// Request message for [CampaignExperimentService.GraduateCampaignExperiment][google.ads.googleads.v6.services.CampaignExperimentService.GraduateCampaignExperiment]. -message GraduateCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to graduate. - string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. Resource name of the budget to attach to the campaign graduated from the - // experiment. - string campaign_budget = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for campaign experiment graduate. -message GraduateCampaignExperimentResponse { - // The resource name of the campaign from the graduated experiment. - // This campaign is the same one as CampaignExperiment.experiment_campaign. - string graduated_campaign = 1; -} - -// Request message for [CampaignExperimentService.PromoteCampaignExperiment][google.ads.googleads.v6.services.CampaignExperimentService.PromoteCampaignExperiment]. -message PromoteCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to promote. - string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Request message for [CampaignExperimentService.EndCampaignExperiment][google.ads.googleads.v6.services.CampaignExperimentService.EndCampaignExperiment]. -message EndCampaignExperimentRequest { - // Required. The resource name of the campaign experiment to end. - string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Request message for -// [CampaignExperimentService.ListCampaignExperimentAsyncErrors][google.ads.googleads.v6.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors]. -message ListCampaignExperimentAsyncErrorsRequest { - // Required. The name of the campaign experiment from which to retrieve the async - // errors. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExperiment" - } - ]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When a page request is too large, the server may decide to - // further limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for -// [CampaignExperimentService.ListCampaignExperimentAsyncErrors][google.ads.googleads.v6.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors]. -message ListCampaignExperimentAsyncErrorsResponse { - // Details of the errors when performing the asynchronous operation. - repeated google.rpc.Status errors = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; -} diff --git a/google/ads/googleads/v6/services/campaign_extension_setting_service.proto b/google/ads/googleads/v6/services/campaign_extension_setting_service.proto deleted file mode 100644 index 18ea8d727..000000000 --- a/google/ads/googleads/v6/services/campaign_extension_setting_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/campaign_extension_setting.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignExtensionSettingServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the CampaignExtensionSetting service. - -// Service to manage campaign extension settings. -service CampaignExtensionSettingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign extension setting in full detail. - rpc GetCampaignExtensionSetting(GetCampaignExtensionSettingRequest) returns (google.ads.googleads.v6.resources.CampaignExtensionSetting) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignExtensionSettings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign extension settings. Operation - // statuses are returned. - rpc MutateCampaignExtensionSettings(MutateCampaignExtensionSettingsRequest) returns (MutateCampaignExtensionSettingsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaignExtensionSettings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [CampaignExtensionSettingService.GetCampaignExtensionSetting][google.ads.googleads.v6.services.CampaignExtensionSettingService.GetCampaignExtensionSetting]. -message GetCampaignExtensionSettingRequest { - // Required. The resource name of the campaign extension setting to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignExtensionSetting" - } - ]; -} - -// Request message for -// [CampaignExtensionSettingService.MutateCampaignExtensionSettings][google.ads.googleads.v6.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings]. -message MutateCampaignExtensionSettingsRequest { - // Required. The ID of the customer whose campaign extension settings are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign extension - // settings. - repeated CampaignExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a campaign extension setting. -message CampaignExtensionSettingOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign - // extension setting. - google.ads.googleads.v6.resources.CampaignExtensionSetting create = 1; - - // Update operation: The campaign extension setting is expected to have a - // valid resource name. - google.ads.googleads.v6.resources.CampaignExtensionSetting update = 2; - - // Remove operation: A resource name for the removed campaign extension - // setting is expected, in this format: - // - // `customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}` - string remove = 3; - } -} - -// Response message for a campaign extension setting mutate. -message MutateCampaignExtensionSettingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignExtensionSettingResult results = 2; -} - -// The result for the campaign extension setting mutate. -message MutateCampaignExtensionSettingResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/campaign_feed_service.proto b/google/ads/googleads/v6/services/campaign_feed_service.proto deleted file mode 100644 index f4d2721e6..000000000 --- a/google/ads/googleads/v6/services/campaign_feed_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/campaign_feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignFeedServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the CampaignFeed service. - -// Service to manage campaign feeds. -service CampaignFeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign feed in full detail. - rpc GetCampaignFeed(GetCampaignFeedRequest) returns (google.ads.googleads.v6.resources.CampaignFeed) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignFeeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaign feeds. Operation statuses are - // returned. - rpc MutateCampaignFeeds(MutateCampaignFeedsRequest) returns (MutateCampaignFeedsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaignFeeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignFeedService.GetCampaignFeed][google.ads.googleads.v6.services.CampaignFeedService.GetCampaignFeed]. -message GetCampaignFeedRequest { - // Required. The resource name of the campaign feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignFeed" - } - ]; -} - -// Request message for [CampaignFeedService.MutateCampaignFeeds][google.ads.googleads.v6.services.CampaignFeedService.MutateCampaignFeeds]. -message MutateCampaignFeedsRequest { - // Required. The ID of the customer whose campaign feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign feeds. - repeated CampaignFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on a campaign feed. -message CampaignFeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign feed. - google.ads.googleads.v6.resources.CampaignFeed create = 1; - - // Update operation: The campaign feed is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.CampaignFeed update = 2; - - // Remove operation: A resource name for the removed campaign feed is - // expected, in this format: - // - // `customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id}` - string remove = 3; - } -} - -// Response message for a campaign feed mutate. -message MutateCampaignFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignFeedResult results = 2; -} - -// The result for the campaign feed mutate. -message MutateCampaignFeedResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign feed with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.CampaignFeed campaign_feed = 2; -} diff --git a/google/ads/googleads/v6/services/campaign_label_service.proto b/google/ads/googleads/v6/services/campaign_label_service.proto deleted file mode 100644 index 5b37fd392..000000000 --- a/google/ads/googleads/v6/services/campaign_label_service.proto +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/campaign_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignLabelServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Campaign Label service. - -// Service to manage labels on campaigns. -service CampaignLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign-label relationship in full detail. - rpc GetCampaignLabel(GetCampaignLabelRequest) returns (google.ads.googleads.v6.resources.CampaignLabel) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes campaign-label relationships. - // Operation statuses are returned. - rpc MutateCampaignLabels(MutateCampaignLabelsRequest) returns (MutateCampaignLabelsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaignLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignLabelService.GetCampaignLabel][google.ads.googleads.v6.services.CampaignLabelService.GetCampaignLabel]. -message GetCampaignLabelRequest { - // Required. The resource name of the campaign-label relationship to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignLabel" - } - ]; -} - -// Request message for [CampaignLabelService.MutateCampaignLabels][google.ads.googleads.v6.services.CampaignLabelService.MutateCampaignLabels]. -message MutateCampaignLabelsRequest { - // Required. ID of the customer whose campaign-label relationships are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on campaign-label relationships. - repeated CampaignLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on a campaign-label relationship. -message CampaignLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign-label - // relationship. - google.ads.googleads.v6.resources.CampaignLabel create = 1; - - // Remove operation: A resource name for the campaign-label relationship - // being removed, in this format: - // - // `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}` - string remove = 2; - } -} - -// Response message for a campaign labels mutate. -message MutateCampaignLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignLabelResult results = 2; -} - -// The result for a campaign label mutate. -message MutateCampaignLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/campaign_service.proto b/google/ads/googleads/v6/services/campaign_service.proto deleted file mode 100644 index 55de593bc..000000000 --- a/google/ads/googleads/v6/services/campaign_service.proto +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/campaign.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Campaign service. - -// Service to manage campaigns. -service CampaignService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign in full detail. - rpc GetCampaign(GetCampaignRequest) returns (google.ads.googleads.v6.resources.Campaign) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaigns/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes campaigns. Operation statuses are returned. - rpc MutateCampaigns(MutateCampaignsRequest) returns (MutateCampaignsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaigns:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignService.GetCampaign][google.ads.googleads.v6.services.CampaignService.GetCampaign]. -message GetCampaignRequest { - // Required. The resource name of the campaign to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Campaign" - } - ]; -} - -// Request message for [CampaignService.MutateCampaigns][google.ads.googleads.v6.services.CampaignService.MutateCampaigns]. -message MutateCampaignsRequest { - // Required. The ID of the customer whose campaigns are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaigns. - repeated CampaignOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on a campaign. -message CampaignOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign. - google.ads.googleads.v6.resources.Campaign create = 1; - - // Update operation: The campaign is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.Campaign update = 2; - - // Remove operation: A resource name for the removed campaign is - // expected, in this format: - // - // `customers/{customer_id}/campaigns/{campaign_id}` - string remove = 3; - } -} - -// Response message for campaign mutate. -message MutateCampaignsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignResult results = 2; -} - -// The result for the campaign mutate. -message MutateCampaignResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign with only mutable fields after mutate. The field will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.Campaign campaign = 2; -} diff --git a/google/ads/googleads/v6/services/campaign_shared_set_service.proto b/google/ads/googleads/v6/services/campaign_shared_set_service.proto deleted file mode 100644 index 852775eda..000000000 --- a/google/ads/googleads/v6/services/campaign_shared_set_service.proto +++ /dev/null @@ -1,132 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/campaign_shared_set.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CampaignSharedSetServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Campaign Shared Set service. - -// Service to manage campaign shared sets. -service CampaignSharedSetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested campaign shared set in full detail. - rpc GetCampaignSharedSet(GetCampaignSharedSetRequest) returns (google.ads.googleads.v6.resources.CampaignSharedSet) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/campaignSharedSets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes campaign shared sets. Operation statuses are returned. - rpc MutateCampaignSharedSets(MutateCampaignSharedSetsRequest) returns (MutateCampaignSharedSetsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/campaignSharedSets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CampaignSharedSetService.GetCampaignSharedSet][google.ads.googleads.v6.services.CampaignSharedSetService.GetCampaignSharedSet]. -message GetCampaignSharedSetRequest { - // Required. The resource name of the campaign shared set to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CampaignSharedSet" - } - ]; -} - -// Request message for [CampaignSharedSetService.MutateCampaignSharedSets][google.ads.googleads.v6.services.CampaignSharedSetService.MutateCampaignSharedSets]. -message MutateCampaignSharedSetsRequest { - // Required. The ID of the customer whose campaign shared sets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual campaign shared sets. - repeated CampaignSharedSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, remove) on an campaign shared set. -message CampaignSharedSetOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new campaign - // shared set. - google.ads.googleads.v6.resources.CampaignSharedSet create = 1; - - // Remove operation: A resource name for the removed campaign shared set is - // expected, in this format: - // - // `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}` - string remove = 3; - } -} - -// Response message for a campaign shared set mutate. -message MutateCampaignSharedSetsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCampaignSharedSetResult results = 2; -} - -// The result for the campaign shared set mutate. -message MutateCampaignSharedSetResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated campaign shared set with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.CampaignSharedSet campaign_shared_set = 2; -} diff --git a/google/ads/googleads/v6/services/carrier_constant_service.proto b/google/ads/googleads/v6/services/carrier_constant_service.proto deleted file mode 100644 index 1eb327ff9..000000000 --- a/google/ads/googleads/v6/services/carrier_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/carrier_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CarrierConstantServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the carrier constant service. - -// Service to fetch carrier constants. -service CarrierConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested carrier constant in full detail. - rpc GetCarrierConstant(GetCarrierConstantRequest) returns (google.ads.googleads.v6.resources.CarrierConstant) { - option (google.api.http) = { - get: "/v6/{resource_name=carrierConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CarrierConstantService.GetCarrierConstant][google.ads.googleads.v6.services.CarrierConstantService.GetCarrierConstant]. -message GetCarrierConstantRequest { - // Required. Resource name of the carrier constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CarrierConstant" - } - ]; -} diff --git a/google/ads/googleads/v6/services/change_status_service.proto b/google/ads/googleads/v6/services/change_status_service.proto deleted file mode 100644 index c822a43c5..000000000 --- a/google/ads/googleads/v6/services/change_status_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/change_status.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ChangeStatusServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Change Status service. - -// Service to fetch change statuses. -service ChangeStatusService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested change status in full detail. - rpc GetChangeStatus(GetChangeStatusRequest) returns (google.ads.googleads.v6.resources.ChangeStatus) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/changeStatus/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for '[ChangeStatusService.GetChangeStatus][google.ads.googleads.v6.services.ChangeStatusService.GetChangeStatus]'. -message GetChangeStatusRequest { - // Required. The resource name of the change status to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ChangeStatus" - } - ]; -} diff --git a/google/ads/googleads/v6/services/click_view_service.proto b/google/ads/googleads/v6/services/click_view_service.proto deleted file mode 100644 index 89ec0e5c7..000000000 --- a/google/ads/googleads/v6/services/click_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/click_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ClickViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the ClickView service. - -// Service to fetch click views. -service ClickViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested click view in full detail. - rpc GetClickView(GetClickViewRequest) returns (google.ads.googleads.v6.resources.ClickView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/clickViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ClickViewService.GetClickView][google.ads.googleads.v6.services.ClickViewService.GetClickView]. -message GetClickViewRequest { - // Required. The resource name of the click view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ClickView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/combined_audience_service.proto b/google/ads/googleads/v6/services/combined_audience_service.proto deleted file mode 100644 index 79a2287db..000000000 --- a/google/ads/googleads/v6/services/combined_audience_service.proto +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/combined_audience.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CombinedAudienceServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Combined Audience service. - -// Service to manage combined audiences. This service can be used to list all -// your combined audiences with metadata, but won't show the structure and -// components of the combined audience. -service CombinedAudienceService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested combined audience in full detail. - rpc GetCombinedAudience(GetCombinedAudienceRequest) returns (google.ads.googleads.v6.resources.CombinedAudience) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/combinedAudiences/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CombinedAudienceService.GetCombinedAudience][google.ads.googleads.v6.services.CombinedAudienceService.GetCombinedAudience]. -message GetCombinedAudienceRequest { - // Required. The resource name of the combined audience to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CombinedAudience" - } - ]; -} diff --git a/google/ads/googleads/v6/services/conversion_action_service.proto b/google/ads/googleads/v6/services/conversion_action_service.proto deleted file mode 100644 index 341e6ab2b..000000000 --- a/google/ads/googleads/v6/services/conversion_action_service.proto +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/conversion_action.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ConversionActionServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Conversion Action service. - -// Service to manage conversion actions. -service ConversionActionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested conversion action. - rpc GetConversionAction(GetConversionActionRequest) returns (google.ads.googleads.v6.resources.ConversionAction) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/conversionActions/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates or removes conversion actions. Operation statuses are - // returned. - rpc MutateConversionActions(MutateConversionActionsRequest) returns (MutateConversionActionsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/conversionActions:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [ConversionActionService.GetConversionAction][google.ads.googleads.v6.services.ConversionActionService.GetConversionAction]. -message GetConversionActionRequest { - // Required. The resource name of the conversion action to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - } - ]; -} - -// Request message for [ConversionActionService.MutateConversionActions][google.ads.googleads.v6.services.ConversionActionService.MutateConversionActions]. -message MutateConversionActionsRequest { - // Required. The ID of the customer whose conversion actions are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual conversion actions. - repeated ConversionActionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a conversion action. -message ConversionActionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new conversion - // action. - google.ads.googleads.v6.resources.ConversionAction create = 1; - - // Update operation: The conversion action is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.ConversionAction update = 2; - - // Remove operation: A resource name for the removed conversion action is - // expected, in this format: - // - // `customers/{customer_id}/conversionActions/{conversion_action_id}` - string remove = 3; - } -} - -// Response message for [ConversionActionService.MutateConversionActions][google.ads.googleads.v6.services.ConversionActionService.MutateConversionActions]. -message MutateConversionActionsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateConversionActionResult results = 2; -} - -// The result for the conversion action mutate. -message MutateConversionActionResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/conversion_adjustment_upload_service.proto b/google/ads/googleads/v6/services/conversion_adjustment_upload_service.proto deleted file mode 100644 index f33cfdb9d..000000000 --- a/google/ads/googleads/v6/services/conversion_adjustment_upload_service.proto +++ /dev/null @@ -1,181 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/conversion_adjustment_type.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ConversionAdjustmentUploadServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Service to upload conversion adjustments. -service ConversionAdjustmentUploadService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Processes the given conversion adjustments. - rpc UploadConversionAdjustments(UploadConversionAdjustmentsRequest) returns (UploadConversionAdjustmentsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}:uploadConversionAdjustments" - body: "*" - }; - option (google.api.method_signature) = "customer_id,conversion_adjustments,partial_failure"; - } -} - -// Request message for -// [ConversionAdjustmentUploadService.UploadConversionAdjustments][google.ads.googleads.v6.services.ConversionAdjustmentUploadService.UploadConversionAdjustments]. -message UploadConversionAdjustmentsRequest { - // Required. The ID of the customer performing the upload. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The conversion adjustments that are being uploaded. - repeated ConversionAdjustment conversion_adjustments = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried out - // in one transaction if and only if they are all valid. This should always be - // set to true. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// Response message for -// [ConversionAdjustmentUploadService.UploadConversionAdjustments][google.ads.googleads.v6.services.ConversionAdjustmentUploadService.UploadConversionAdjustments]. -message UploadConversionAdjustmentsResponse { - // Errors that pertain to conversion adjustment failures in the partial - // failure mode. Returned when all errors occur inside the adjustments. If any - // errors occur outside the adjustments (e.g. auth errors), we return an RPC - // level error. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - google.rpc.Status partial_failure_error = 1; - - // Returned for successfully processed conversion adjustments. Proto will be - // empty for rows that received an error. Results are not returned when - // validate_only is true. - repeated ConversionAdjustmentResult results = 2; -} - -// A conversion adjustment. -message ConversionAdjustment { - // Resource name of the conversion action associated with this conversion - // adjustment. Note: Although this resource name consists of a customer id and - // a conversion action id, validation will ignore the customer id and use the - // conversion action id as the sole identifier of the conversion action. - optional string conversion_action = 8; - - // The date time at which the adjustment occurred. Must be after the - // conversion_date_time. The timezone must be specified. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string adjustment_date_time = 9; - - // The adjustment type. - google.ads.googleads.v6.enums.ConversionAdjustmentTypeEnum.ConversionAdjustmentType adjustment_type = 5; - - // Information needed to restate the conversion's value. - // Required for restatements. Should not be supplied for retractions. An error - // will be returned if provided for a retraction. - // NOTE: If you want to upload a second restatement with a different adjusted - // value, it must have a new, more recent, adjustment occurrence time. - // Otherwise, it will be treated as a duplicate of the previous restatement - // and ignored. - RestatementValue restatement_value = 6; - - // Identifies the conversion to be adjusted. - oneof conversion_identifier { - // Uniquely identifies a conversion that was reported without an order ID - // specified. - GclidDateTimePair gclid_date_time_pair = 1; - - // The order ID of the conversion to be adjusted. If the conversion was - // reported with an order ID specified, that order ID must be used as the - // identifier here. - string order_id = 7; - } -} - -// Contains information needed to restate a conversion's value. -message RestatementValue { - // The restated conversion value. This is the value of the conversion after - // restatement. For example, to change the value of a conversion from 100 to - // 70, an adjusted value of 70 should be reported. - // NOTE: If you want to upload a second restatement with a different adjusted - // value, it must have a new, more recent, adjustment occurrence time. - // Otherwise, it will be treated as a duplicate of the previous restatement - // and ignored. - optional double adjusted_value = 3; - - // The currency of the restated value. If not provided, then the default - // currency from the conversion action is used, and if that is not set then - // the account currency is used. This is the ISO 4217 3-character currency - // code e.g. USD or EUR. - optional string currency_code = 4; -} - -// Uniquely identifies a conversion that was reported without an order ID -// specified. -message GclidDateTimePair { - // Google click ID (gclid) associated with the original conversion for this - // adjustment. - optional string gclid = 3; - - // The date time at which the original conversion for this adjustment - // occurred. The timezone must be specified. The format is "yyyy-mm-dd - // hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string conversion_date_time = 4; -} - -// Information identifying a successfully processed ConversionAdjustment. -message ConversionAdjustmentResult { - // Resource name of the conversion action associated with this conversion - // adjustment. - optional string conversion_action = 7; - - // The date time at which the adjustment occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string adjustment_date_time = 8; - - // The adjustment type. - google.ads.googleads.v6.enums.ConversionAdjustmentTypeEnum.ConversionAdjustmentType adjustment_type = 5; - - // Identifies the conversion that was adjusted. - oneof conversion_identifier { - // Uniquely identifies a conversion that was reported without an order ID - // specified. - GclidDateTimePair gclid_date_time_pair = 1; - - // The order ID of the conversion that was adjusted. - string order_id = 6; - } -} diff --git a/google/ads/googleads/v6/services/conversion_upload_service.proto b/google/ads/googleads/v6/services/conversion_upload_service.proto deleted file mode 100644 index 801365109..000000000 --- a/google/ads/googleads/v6/services/conversion_upload_service.proto +++ /dev/null @@ -1,235 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ConversionUploadServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Service to upload conversions. -service ConversionUploadService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Processes the given click conversions. - rpc UploadClickConversions(UploadClickConversionsRequest) returns (UploadClickConversionsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}:uploadClickConversions" - body: "*" - }; - option (google.api.method_signature) = "customer_id,conversions,partial_failure"; - } - - // Processes the given call conversions. - rpc UploadCallConversions(UploadCallConversionsRequest) returns (UploadCallConversionsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}:uploadCallConversions" - body: "*" - }; - option (google.api.method_signature) = "customer_id,conversions,partial_failure"; - } -} - -// Request message for [ConversionUploadService.UploadClickConversions][google.ads.googleads.v6.services.ConversionUploadService.UploadClickConversions]. -message UploadClickConversionsRequest { - // Required. The ID of the customer performing the upload. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The conversions that are being uploaded. - repeated ClickConversion conversions = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // This should always be set to true. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// Response message for [ConversionUploadService.UploadClickConversions][google.ads.googleads.v6.services.ConversionUploadService.UploadClickConversions]. -message UploadClickConversionsResponse { - // Errors that pertain to conversion failures in the partial failure mode. - // Returned when all errors occur inside the conversions. If any errors occur - // outside the conversions (e.g. auth errors), we return an RPC level error. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - google.rpc.Status partial_failure_error = 1; - - // Returned for successfully processed conversions. Proto will be empty for - // rows that received an error. Results are not returned when validate_only is - // true. - repeated ClickConversionResult results = 2; -} - -// Request message for [ConversionUploadService.UploadCallConversions][google.ads.googleads.v6.services.ConversionUploadService.UploadCallConversions]. -message UploadCallConversionsRequest { - // Required. The ID of the customer performing the upload. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The conversions that are being uploaded. - repeated CallConversion conversions = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // This should always be set to true. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// Response message for [ConversionUploadService.UploadCallConversions][google.ads.googleads.v6.services.ConversionUploadService.UploadCallConversions]. -message UploadCallConversionsResponse { - // Errors that pertain to conversion failures in the partial failure mode. - // Returned when all errors occur inside the conversions. If any errors occur - // outside the conversions (e.g. auth errors), we return an RPC level error. - // See - // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures - // for more information about partial failure. - google.rpc.Status partial_failure_error = 1; - - // Returned for successfully processed conversions. Proto will be empty for - // rows that received an error. Results are not returned when validate_only is - // true. - repeated CallConversionResult results = 2; -} - -// A click conversion. -message ClickConversion { - // The Google click ID (gclid) associated with this conversion. - optional string gclid = 9; - - // Resource name of the conversion action associated with this conversion. - // Note: Although this resource name consists of a customer id and a - // conversion action id, validation will ignore the customer id and use the - // conversion action id as the sole identifier of the conversion action. - optional string conversion_action = 10; - - // The date time at which the conversion occurred. Must be after - // the click time. The timezone must be specified. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. “2019-01-01 12:32:45-08:00”. - optional string conversion_date_time = 11; - - // The value of the conversion for the advertiser. - optional double conversion_value = 12; - - // Currency associated with the conversion value. This is the ISO 4217 - // 3-character currency code. For example: USD, EUR. - optional string currency_code = 13; - - // The order ID associated with the conversion. An order id can only be used - // for one conversion per conversion action. - optional string order_id = 14; - - // Additional data about externally attributed conversions. This field - // is required for conversions with an externally attributed conversion - // action, but should not be set otherwise. - ExternalAttributionData external_attribution_data = 7; -} - -// A call conversion. -message CallConversion { - // The caller id from which this call was placed. Caller id is expected to be - // in E.164 format with preceding '+' sign. e.g. "+16502531234". - optional string caller_id = 7; - - // The date time at which the call occurred. The timezone must be specified. - // The format is "yyyy-mm-dd hh:mm:ss+|-hh:mm", - // e.g. "2019-01-01 12:32:45-08:00". - optional string call_start_date_time = 8; - - // Resource name of the conversion action associated with this conversion. - // Note: Although this resource name consists of a customer id and a - // conversion action id, validation will ignore the customer id and use the - // conversion action id as the sole identifier of the conversion action. - optional string conversion_action = 9; - - // The date time at which the conversion occurred. Must be after the call - // time. The timezone must be specified. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string conversion_date_time = 10; - - // The value of the conversion for the advertiser. - optional double conversion_value = 11; - - // Currency associated with the conversion value. This is the ISO 4217 - // 3-character currency code. For example: USD, EUR. - optional string currency_code = 12; -} - -// Contains additional information about externally attributed conversions. -message ExternalAttributionData { - // Represents the fraction of the conversion that is attributed to the - // Google Ads click. - optional double external_attribution_credit = 3; - - // Specifies the attribution model name. - optional string external_attribution_model = 4; -} - -// Identifying information for a successfully processed ClickConversion. -message ClickConversionResult { - // The Google Click ID (gclid) associated with this conversion. - optional string gclid = 4; - - // Resource name of the conversion action associated with this conversion. - optional string conversion_action = 5; - - // The date time at which the conversion occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. “2019-01-01 12:32:45-08:00”. - optional string conversion_date_time = 6; -} - -// Identifying information for a successfully processed CallConversionUpload. -message CallConversionResult { - // The caller id from which this call was placed. Caller id is expected to be - // in E.164 format with preceding '+' sign. - optional string caller_id = 5; - - // The date time at which the call occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string call_start_date_time = 6; - - // Resource name of the conversion action associated with this conversion. - optional string conversion_action = 7; - - // The date time at which the conversion occurred. The format is - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string conversion_date_time = 8; -} diff --git a/google/ads/googleads/v6/services/currency_constant_service.proto b/google/ads/googleads/v6/services/currency_constant_service.proto deleted file mode 100644 index 731658d69..000000000 --- a/google/ads/googleads/v6/services/currency_constant_service.proto +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/currency_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CurrencyConstantServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Service to fetch currency constants. -service CurrencyConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested currency constant. - rpc GetCurrencyConstant(GetCurrencyConstantRequest) returns (google.ads.googleads.v6.resources.CurrencyConstant) { - option (google.api.http) = { - get: "/v6/{resource_name=currencyConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CurrencyConstantService.GetCurrencyConstant][google.ads.googleads.v6.services.CurrencyConstantService.GetCurrencyConstant]. -message GetCurrencyConstantRequest { - // Required. Resource name of the currency constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CurrencyConstant" - } - ]; -} diff --git a/google/ads/googleads/v6/services/custom_audience_service.proto b/google/ads/googleads/v6/services/custom_audience_service.proto deleted file mode 100644 index 84cef88ce..000000000 --- a/google/ads/googleads/v6/services/custom_audience_service.proto +++ /dev/null @@ -1,117 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/custom_audience.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomAudienceServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Custom Audience service. - -// Service to manage custom audiences. -service CustomAudienceService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested custom audience in full detail. - rpc GetCustomAudience(GetCustomAudienceRequest) returns (google.ads.googleads.v6.resources.CustomAudience) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/customAudiences/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates custom audiences. Operation statuses are returned. - rpc MutateCustomAudiences(MutateCustomAudiencesRequest) returns (MutateCustomAudiencesResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/customAudiences:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CustomAudienceService.GetCustomAudience][google.ads.googleads.v6.services.CustomAudienceService.GetCustomAudience]. -message GetCustomAudienceRequest { - // Required. The resource name of the custom audience to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomAudience" - } - ]; -} - -// Request message for [CustomAudienceService.MutateCustomAudiences][google.ads.googleads.v6.services.CustomAudienceService.MutateCustomAudiences]. -message MutateCustomAudiencesRequest { - // Required. The ID of the customer whose custom audiences are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual custom audiences. - repeated CustomAudienceOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 3; -} - -// A single operation (create, update) on a custom audience. -message CustomAudienceOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new custom - // audience. - google.ads.googleads.v6.resources.CustomAudience create = 1; - - // Update operation: The custom audience is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.CustomAudience update = 2; - - // Remove operation: A resource name for the removed custom audience is - // expected, in this format: - // - // `customers/{customer_id}/customAudiences/{custom_audience_id}` - string remove = 3; - } -} - -// Response message for custom audience mutate. -message MutateCustomAudiencesResponse { - // All results for the mutate. - repeated MutateCustomAudienceResult results = 1; -} - -// The result for the custom audience mutate. -message MutateCustomAudienceResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/custom_interest_service.proto b/google/ads/googleads/v6/services/custom_interest_service.proto deleted file mode 100644 index bc152d0c0..000000000 --- a/google/ads/googleads/v6/services/custom_interest_service.proto +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/custom_interest.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomInterestServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Custom Interest service. - -// Service to manage custom interests. -service CustomInterestService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested custom interest in full detail. - rpc GetCustomInterest(GetCustomInterestRequest) returns (google.ads.googleads.v6.resources.CustomInterest) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/customInterests/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates custom interests. Operation statuses are returned. - rpc MutateCustomInterests(MutateCustomInterestsRequest) returns (MutateCustomInterestsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/customInterests:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CustomInterestService.GetCustomInterest][google.ads.googleads.v6.services.CustomInterestService.GetCustomInterest]. -message GetCustomInterestRequest { - // Required. The resource name of the custom interest to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomInterest" - } - ]; -} - -// Request message for [CustomInterestService.MutateCustomInterests][google.ads.googleads.v6.services.CustomInterestService.MutateCustomInterests]. -message MutateCustomInterestsRequest { - // Required. The ID of the customer whose custom interests are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual custom interests. - repeated CustomInterestOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update) on a custom interest. -message CustomInterestOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new custom - // interest. - google.ads.googleads.v6.resources.CustomInterest create = 1; - - // Update operation: The custom interest is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.CustomInterest update = 2; - } -} - -// Response message for custom interest mutate. -message MutateCustomInterestsResponse { - // All results for the mutate. - repeated MutateCustomInterestResult results = 2; -} - -// The result for the custom interest mutate. -message MutateCustomInterestResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/customer_client_link_service.proto b/google/ads/googleads/v6/services/customer_client_link_service.proto deleted file mode 100644 index 700eaa268..000000000 --- a/google/ads/googleads/v6/services/customer_client_link_service.proto +++ /dev/null @@ -1,103 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/customer_client_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientLinkServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Service to manage customer client links. -service CustomerClientLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested CustomerClientLink in full detail. - rpc GetCustomerClientLink(GetCustomerClientLinkRequest) returns (google.ads.googleads.v6.resources.CustomerClientLink) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/customerClientLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates a customer client link. Operation statuses are returned. - rpc MutateCustomerClientLink(MutateCustomerClientLinkRequest) returns (MutateCustomerClientLinkResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/customerClientLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for [CustomerClientLinkService.GetCustomerClientLink][google.ads.googleads.v6.services.CustomerClientLinkService.GetCustomerClientLink]. -message GetCustomerClientLinkRequest { - // Required. The resource name of the customer client link to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClientLink" - } - ]; -} - -// Request message for [CustomerClientLinkService.MutateCustomerClientLink][google.ads.googleads.v6.services.CustomerClientLinkService.MutateCustomerClientLink]. -message MutateCustomerClientLinkRequest { - // Required. The ID of the customer whose customer link are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the individual CustomerClientLink. - CustomerClientLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation (create, update) on a CustomerClientLink. -message CustomerClientLinkOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new link. - google.ads.googleads.v6.resources.CustomerClientLink create = 1; - - // Update operation: The link is expected to have a valid resource name. - google.ads.googleads.v6.resources.CustomerClientLink update = 2; - } -} - -// Response message for a CustomerClientLink mutate. -message MutateCustomerClientLinkResponse { - // A result that identifies the resource affected by the mutate request. - MutateCustomerClientLinkResult result = 1; -} - -// The result for a single customer client link mutate. -message MutateCustomerClientLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/customer_client_service.proto b/google/ads/googleads/v6/services/customer_client_service.proto deleted file mode 100644 index 017c8a900..000000000 --- a/google/ads/googleads/v6/services/customer_client_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/customer_client.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerClientServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Customer Client service. - -// Service to get clients in a customer's hierarchy. -service CustomerClientService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested client in full detail. - rpc GetCustomerClient(GetCustomerClientRequest) returns (google.ads.googleads.v6.resources.CustomerClient) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/customerClients/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [CustomerClientService.GetCustomerClient][google.ads.googleads.v6.services.CustomerClientService.GetCustomerClient]. -message GetCustomerClientRequest { - // Required. The resource name of the client to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerClient" - } - ]; -} diff --git a/google/ads/googleads/v6/services/customer_extension_setting_service.proto b/google/ads/googleads/v6/services/customer_extension_setting_service.proto deleted file mode 100644 index 12d24dc71..000000000 --- a/google/ads/googleads/v6/services/customer_extension_setting_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/customer_extension_setting.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerExtensionSettingServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the CustomerExtensionSetting service. - -// Service to manage customer extension settings. -service CustomerExtensionSettingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer extension setting in full detail. - rpc GetCustomerExtensionSetting(GetCustomerExtensionSettingRequest) returns (google.ads.googleads.v6.resources.CustomerExtensionSetting) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/customerExtensionSettings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes customer extension settings. Operation - // statuses are returned. - rpc MutateCustomerExtensionSettings(MutateCustomerExtensionSettingsRequest) returns (MutateCustomerExtensionSettingsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/customerExtensionSettings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [CustomerExtensionSettingService.GetCustomerExtensionSetting][google.ads.googleads.v6.services.CustomerExtensionSettingService.GetCustomerExtensionSetting]. -message GetCustomerExtensionSettingRequest { - // Required. The resource name of the customer extension setting to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerExtensionSetting" - } - ]; -} - -// Request message for -// [CustomerExtensionSettingService.MutateCustomerExtensionSettings][google.ads.googleads.v6.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings]. -message MutateCustomerExtensionSettingsRequest { - // Required. The ID of the customer whose customer extension settings are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual customer extension - // settings. - repeated CustomerExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a customer extension setting. -message CustomerExtensionSettingOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new customer - // extension setting. - google.ads.googleads.v6.resources.CustomerExtensionSetting create = 1; - - // Update operation: The customer extension setting is expected to have a - // valid resource name. - google.ads.googleads.v6.resources.CustomerExtensionSetting update = 2; - - // Remove operation: A resource name for the removed customer extension - // setting is expected, in this format: - // - // `customers/{customer_id}/customerExtensionSettings/{extension_type}` - string remove = 3; - } -} - -// Response message for a customer extension setting mutate. -message MutateCustomerExtensionSettingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerExtensionSettingResult results = 2; -} - -// The result for the customer extension setting mutate. -message MutateCustomerExtensionSettingResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/customer_feed_service.proto b/google/ads/googleads/v6/services/customer_feed_service.proto deleted file mode 100644 index 66c2002db..000000000 --- a/google/ads/googleads/v6/services/customer_feed_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/customer_feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerFeedServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the CustomerFeed service. - -// Service to manage customer feeds. -service CustomerFeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer feed in full detail. - rpc GetCustomerFeed(GetCustomerFeedRequest) returns (google.ads.googleads.v6.resources.CustomerFeed) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/customerFeeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes customer feeds. Operation statuses are - // returned. - rpc MutateCustomerFeeds(MutateCustomerFeedsRequest) returns (MutateCustomerFeedsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/customerFeeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CustomerFeedService.GetCustomerFeed][google.ads.googleads.v6.services.CustomerFeedService.GetCustomerFeed]. -message GetCustomerFeedRequest { - // Required. The resource name of the customer feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerFeed" - } - ]; -} - -// Request message for [CustomerFeedService.MutateCustomerFeeds][google.ads.googleads.v6.services.CustomerFeedService.MutateCustomerFeeds]. -message MutateCustomerFeedsRequest { - // Required. The ID of the customer whose customer feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual customer feeds. - repeated CustomerFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on a customer feed. -message CustomerFeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new customer feed. - google.ads.googleads.v6.resources.CustomerFeed create = 1; - - // Update operation: The customer feed is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.CustomerFeed update = 2; - - // Remove operation: A resource name for the removed customer feed is - // expected, in this format: - // - // `customers/{customer_id}/customerFeeds/{feed_id}` - string remove = 3; - } -} - -// Response message for a customer feed mutate. -message MutateCustomerFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerFeedResult results = 2; -} - -// The result for the customer feed mutate. -message MutateCustomerFeedResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated customer feed with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.CustomerFeed customer_feed = 2; -} diff --git a/google/ads/googleads/v6/services/customer_label_service.proto b/google/ads/googleads/v6/services/customer_label_service.proto deleted file mode 100644 index 4b0b354d0..000000000 --- a/google/ads/googleads/v6/services/customer_label_service.proto +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/customer_label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerLabelServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Customer Label service. - -// Service to manage labels on customers. -service CustomerLabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer-label relationship in full detail. - rpc GetCustomerLabel(GetCustomerLabelRequest) returns (google.ads.googleads.v6.resources.CustomerLabel) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/customerLabels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates and removes customer-label relationships. - // Operation statuses are returned. - rpc MutateCustomerLabels(MutateCustomerLabelsRequest) returns (MutateCustomerLabelsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/customerLabels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [CustomerLabelService.GetCustomerLabel][google.ads.googleads.v6.services.CustomerLabelService.GetCustomerLabel]. -message GetCustomerLabelRequest { - // Required. The resource name of the customer-label relationship to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerLabel" - } - ]; -} - -// Request message for [CustomerLabelService.MutateCustomerLabels][google.ads.googleads.v6.services.CustomerLabelService.MutateCustomerLabels]. -message MutateCustomerLabelsRequest { - // Required. ID of the customer whose customer-label relationships are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on customer-label relationships. - repeated CustomerLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on a customer-label relationship. -message CustomerLabelOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new customer-label - // relationship. - google.ads.googleads.v6.resources.CustomerLabel create = 1; - - // Remove operation: A resource name for the customer-label relationship - // being removed, in this format: - // - // `customers/{customer_id}/customerLabels/{label_id}` - string remove = 2; - } -} - -// Response message for a customer labels mutate. -message MutateCustomerLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerLabelResult results = 2; -} - -// The result for a customer label mutate. -message MutateCustomerLabelResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/customer_manager_link_service.proto b/google/ads/googleads/v6/services/customer_manager_link_service.proto deleted file mode 100644 index 44e38945c..000000000 --- a/google/ads/googleads/v6/services/customer_manager_link_service.proto +++ /dev/null @@ -1,140 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/customer_manager_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerManagerLinkServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Service to manage customer-manager links. -service CustomerManagerLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested CustomerManagerLink in full detail. - rpc GetCustomerManagerLink(GetCustomerManagerLinkRequest) returns (google.ads.googleads.v6.resources.CustomerManagerLink) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/customerManagerLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates customer manager links. Operation statuses are returned. - rpc MutateCustomerManagerLink(MutateCustomerManagerLinkRequest) returns (MutateCustomerManagerLinkResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/customerManagerLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Moves a client customer to a new manager customer. - // This simplifies the complex request that requires two operations to move - // a client customer to a new manager. i.e: - // 1. Update operation with Status INACTIVE (previous manager) and, - // 2. Update operation with Status ACTIVE (new manager). - rpc MoveManagerLink(MoveManagerLinkRequest) returns (MoveManagerLinkResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" - body: "*" - }; - option (google.api.method_signature) = "customer_id,previous_customer_manager_link,new_manager"; - } -} - -// Request message for [CustomerManagerLinkService.GetCustomerManagerLink][google.ads.googleads.v6.services.CustomerManagerLinkService.GetCustomerManagerLink]. -message GetCustomerManagerLinkRequest { - // Required. The resource name of the CustomerManagerLink to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerManagerLink" - } - ]; -} - -// Request message for [CustomerManagerLinkService.MutateCustomerManagerLink][google.ads.googleads.v6.services.CustomerManagerLinkService.MutateCustomerManagerLink]. -message MutateCustomerManagerLinkRequest { - // Required. The ID of the customer whose customer manager links are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual customer manager links. - repeated CustomerManagerLinkOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Request message for [CustomerManagerLinkService.MoveManagerLink][google.ads.googleads.v6.services.CustomerManagerLinkService.MoveManagerLink]. -message MoveManagerLinkRequest { - // Required. The ID of the client customer that is being moved. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The resource name of the previous CustomerManagerLink. - // The resource name has the form: - // `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}` - string previous_customer_manager_link = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. The resource name of the new manager customer that the client wants to move - // to. Customer resource names have the format: "customers/{customer_id}" - string new_manager = 3 [(google.api.field_behavior) = REQUIRED]; -} - -// Updates the status of a CustomerManagerLink. -// The following actions are possible: -// 1. Update operation with status ACTIVE accepts a pending invitation. -// 2. Update operation with status REFUSED declines a pending invitation. -// 3. Update operation with status INACTIVE terminates link to manager. -message CustomerManagerLinkOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Update operation: The link is expected to have a valid resource name. - google.ads.googleads.v6.resources.CustomerManagerLink update = 2; - } -} - -// Response message for a CustomerManagerLink mutate. -message MutateCustomerManagerLinkResponse { - // A result that identifies the resource affected by the mutate request. - repeated MutateCustomerManagerLinkResult results = 1; -} - -// Response message for a CustomerManagerLink moveManagerLink. -message MoveManagerLinkResponse { - // Returned for successful operations. Represents a CustomerManagerLink - // resource of the newly created link between client customer and new manager - // customer. - string resource_name = 1; -} - -// The result for the customer manager link mutate. -message MutateCustomerManagerLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/customer_negative_criterion_service.proto b/google/ads/googleads/v6/services/customer_negative_criterion_service.proto deleted file mode 100644 index d912074ce..000000000 --- a/google/ads/googleads/v6/services/customer_negative_criterion_service.proto +++ /dev/null @@ -1,132 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/customer_negative_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerNegativeCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Customer Negative Criterion service. - -// Service to manage customer negative criteria. -service CustomerNegativeCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested criterion in full detail. - rpc GetCustomerNegativeCriterion(GetCustomerNegativeCriterionRequest) returns (google.ads.googleads.v6.resources.CustomerNegativeCriterion) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/customerNegativeCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes criteria. Operation statuses are returned. - rpc MutateCustomerNegativeCriteria(MutateCustomerNegativeCriteriaRequest) returns (MutateCustomerNegativeCriteriaResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/customerNegativeCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [CustomerNegativeCriterionService.GetCustomerNegativeCriterion][google.ads.googleads.v6.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion]. -message GetCustomerNegativeCriterionRequest { - // Required. The resource name of the criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerNegativeCriterion" - } - ]; -} - -// Request message for -// [CustomerNegativeCriterionService.MutateCustomerNegativeCriteria][google.ads.googleads.v6.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria]. -message MutateCustomerNegativeCriteriaRequest { - // Required. The ID of the customer whose criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual criteria. - repeated CustomerNegativeCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create or remove) on a customer level negative criterion. -message CustomerNegativeCriterionOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new criterion. - google.ads.googleads.v6.resources.CustomerNegativeCriterion create = 1; - - // Remove operation: A resource name for the removed criterion is expected, - // in this format: - // - // `customers/{customer_id}/customerNegativeCriteria/{criterion_id}` - string remove = 2; - } -} - -// Response message for customer negative criterion mutate. -message MutateCustomerNegativeCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateCustomerNegativeCriteriaResult results = 2; -} - -// The result for the criterion mutate. -message MutateCustomerNegativeCriteriaResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated criterion with only mutable fields after mutate. The field will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.CustomerNegativeCriterion customer_negative_criterion = 2; -} diff --git a/google/ads/googleads/v6/services/customer_service.proto b/google/ads/googleads/v6/services/customer_service.proto deleted file mode 100644 index 056e4c4bb..000000000 --- a/google/ads/googleads/v6/services/customer_service.proto +++ /dev/null @@ -1,170 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/access_role.proto"; -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/customer.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Customer service. - -// Service to manage customers. -service CustomerService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested customer in full detail. - rpc GetCustomer(GetCustomerRequest) returns (google.ads.googleads.v6.resources.Customer) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Updates a customer. Operation statuses are returned. - rpc MutateCustomer(MutateCustomerRequest) returns (MutateCustomerResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } - - // Returns resource names of customers directly accessible by the - // user authenticating the call. - rpc ListAccessibleCustomers(ListAccessibleCustomersRequest) returns (ListAccessibleCustomersResponse) { - option (google.api.http) = { - get: "/v6/customers:listAccessibleCustomers" - }; - } - - // Creates a new client under manager. The new client customer is returned. - rpc CreateCustomerClient(CreateCustomerClientRequest) returns (CreateCustomerClientResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}:createCustomerClient" - body: "*" - }; - option (google.api.method_signature) = "customer_id,customer_client"; - } -} - -// Request message for [CustomerService.GetCustomer][google.ads.googleads.v6.services.CustomerService.GetCustomer]. -message GetCustomerRequest { - // Required. The resource name of the customer to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Customer" - } - ]; -} - -// Request message for [CustomerService.MutateCustomer][google.ads.googleads.v6.services.CustomerService.MutateCustomer]. -message MutateCustomerRequest { - // Required. The ID of the customer being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the customer - CustomerOperation operation = 4 [(google.api.field_behavior) = REQUIRED]; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 5; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 6; -} - -// Request message for [CustomerService.CreateCustomerClient][google.ads.googleads.v6.services.CustomerService.CreateCustomerClient]. -message CreateCustomerClientRequest { - // Required. The ID of the Manager under whom client customer is being created. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The new client customer to create. The resource name on this customer - // will be ignored. - google.ads.googleads.v6.resources.Customer customer_client = 2 [(google.api.field_behavior) = REQUIRED]; - - // Email address of the user who should be invited on the created client - // customer. Accessible only to customers on the allow-list. - optional string email_address = 5; - - // The proposed role of user on the created client customer. - // Accessible only to customers on the allow-list. - google.ads.googleads.v6.enums.AccessRoleEnum.AccessRole access_role = 4; -} - -// A single update on a customer. -message CustomerOperation { - // Mutate operation. Only updates are supported for customer. - google.ads.googleads.v6.resources.Customer update = 1; - - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 2; -} - -// Response message for CreateCustomerClient mutate. -message CreateCustomerClientResponse { - // The resource name of the newly created customer client. - string resource_name = 2; - - // Link for inviting user to access the created customer. Accessible to - // allowlisted customers only. - string invitation_link = 3; -} - -// Response message for customer mutate. -message MutateCustomerResponse { - // Result for the mutate. - MutateCustomerResult result = 2; -} - -// The result for the customer mutate. -message MutateCustomerResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated customer with only mutable fields after mutate. The fields will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.Customer customer = 2; -} - -// Request message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v6.services.CustomerService.ListAccessibleCustomers]. -message ListAccessibleCustomersRequest { - -} - -// Response message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v6.services.CustomerService.ListAccessibleCustomers]. -message ListAccessibleCustomersResponse { - // Resource name of customers directly accessible by the - // user authenticating the call. - repeated string resource_names = 1; -} diff --git a/google/ads/googleads/v6/services/customer_user_access_invitation_service.proto b/google/ads/googleads/v6/services/customer_user_access_invitation_service.proto deleted file mode 100644 index a454ca7d7..000000000 --- a/google/ads/googleads/v6/services/customer_user_access_invitation_service.proto +++ /dev/null @@ -1,108 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/customer_user_access_invitation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerUserAccessInvitationServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the CustomerUserAccessInvitation service. - -// This service manages the access invitation extended to users for a given -// customer. -service CustomerUserAccessInvitationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested access invitation in full detail. - rpc GetCustomerUserAccessInvitation(GetCustomerUserAccessInvitationRequest) returns (google.ads.googleads.v6.resources.CustomerUserAccessInvitation) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/customerUserAccessInvitations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes an access invitation. - rpc MutateCustomerUserAccessInvitation(MutateCustomerUserAccessInvitationRequest) returns (MutateCustomerUserAccessInvitationResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/customerUserAccessInvitations:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for -// [CustomerUserAccessInvitation.GetCustomerUserAccessInvitation][] -message GetCustomerUserAccessInvitationRequest { - // Required. Resource name of the access invitation. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerUserAccessInvitation" - } - ]; -} - -// Request message for -// [CustomerUserAccessInvitation.MutateCustomerUserAccessInvitation][] -message MutateCustomerUserAccessInvitationRequest { - // Required. The ID of the customer whose access invitation is being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the access invitation - CustomerUserAccessInvitationOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation (create or remove) on customer user access invitation. -message CustomerUserAccessInvitationOperation { - // The mutate operation - oneof operation { - // Create operation: No resource name is expected for the new access - // invitation. - google.ads.googleads.v6.resources.CustomerUserAccessInvitation create = 1; - - // Remove operation: A resource name for the revoke invitation is - // expected, in this format: - // - // `customers/{customer_id}/customerUserAccessInvitations/{invitation_id}` - string remove = 2; - } -} - -// Response message for access invitation mutate. -message MutateCustomerUserAccessInvitationResponse { - // Result for the mutate. - MutateCustomerUserAccessInvitationResult result = 1; -} - -// The result for the access invitation mutate. -message MutateCustomerUserAccessInvitationResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/customer_user_access_service.proto b/google/ads/googleads/v6/services/customer_user_access_service.proto deleted file mode 100644 index 17f2c7494..000000000 --- a/google/ads/googleads/v6/services/customer_user_access_service.proto +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/customer_user_access.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "CustomerUserAccessServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// This service manages the permissions of a user on a given customer. -service CustomerUserAccessService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the CustomerUserAccess in full detail. - rpc GetCustomerUserAccess(GetCustomerUserAccessRequest) returns (google.ads.googleads.v6.resources.CustomerUserAccess) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/customerUserAccesses/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Updates, removes permission of a user on a given customer. Operation - // statuses are returned. - rpc MutateCustomerUserAccess(MutateCustomerUserAccessRequest) returns (MutateCustomerUserAccessResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/customerUserAccesses:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for -// [CustomerUserAccessService.GetCustomerUserAccess][google.ads.googleads.v6.services.CustomerUserAccessService.GetCustomerUserAccess]. -message GetCustomerUserAccessRequest { - // Required. Resource name of the customer user access. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/CustomerUserAccess" - } - ]; -} - -// Mutate Request for -// [CustomerUserAccessService.MutateCustomerUserAccess][google.ads.googleads.v6.services.CustomerUserAccessService.MutateCustomerUserAccess]. -message MutateCustomerUserAccessRequest { - // Required. The ID of the customer being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the customer - CustomerUserAccessOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single operation (update, remove) on customer user access. -message CustomerUserAccessOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 3; - - // The mutate operation. - oneof operation { - // Update operation: The customer user access is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.CustomerUserAccess update = 1; - - // Remove operation: A resource name for the removed access is - // expected, in this format: - // - // `customers/{customer_id}/customerUserAccesses/{CustomerUserAccess.user_id}` - string remove = 2; - } -} - -// Response message for customer user access mutate. -message MutateCustomerUserAccessResponse { - // Result for the mutate. - MutateCustomerUserAccessResult result = 1; -} - -// The result for the customer user access mutate. -message MutateCustomerUserAccessResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/detail_placement_view_service.proto b/google/ads/googleads/v6/services/detail_placement_view_service.proto deleted file mode 100644 index f5e50c3e0..000000000 --- a/google/ads/googleads/v6/services/detail_placement_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/detail_placement_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DetailPlacementViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Detail Placement View service. - -// Service to fetch Detail Placement views. -service DetailPlacementViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Detail Placement view in full detail. - rpc GetDetailPlacementView(GetDetailPlacementViewRequest) returns (google.ads.googleads.v6.resources.DetailPlacementView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/detailPlacementViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [DetailPlacementViewService.GetDetailPlacementView][google.ads.googleads.v6.services.DetailPlacementViewService.GetDetailPlacementView]. -message GetDetailPlacementViewRequest { - // Required. The resource name of the Detail Placement view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DetailPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/display_keyword_view_service.proto b/google/ads/googleads/v6/services/display_keyword_view_service.proto deleted file mode 100644 index b6d197a62..000000000 --- a/google/ads/googleads/v6/services/display_keyword_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/display_keyword_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DisplayKeywordViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Display Keyword View service. - -// Service to manage display keyword views. -service DisplayKeywordViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested display keyword view in full detail. - rpc GetDisplayKeywordView(GetDisplayKeywordViewRequest) returns (google.ads.googleads.v6.resources.DisplayKeywordView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/displayKeywordViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [DisplayKeywordViewService.GetDisplayKeywordView][google.ads.googleads.v6.services.DisplayKeywordViewService.GetDisplayKeywordView]. -message GetDisplayKeywordViewRequest { - // Required. The resource name of the display keyword view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DisplayKeywordView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/distance_view_service.proto b/google/ads/googleads/v6/services/distance_view_service.proto deleted file mode 100644 index b511874a9..000000000 --- a/google/ads/googleads/v6/services/distance_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/distance_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DistanceViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Distance View service. - -// Service to fetch distance views. -service DistanceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the attributes of the requested distance view. - rpc GetDistanceView(GetDistanceViewRequest) returns (google.ads.googleads.v6.resources.DistanceView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/distanceViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [DistanceViewService.GetDistanceView][google.ads.googleads.v6.services.DistanceViewService.GetDistanceView]. -message GetDistanceViewRequest { - // Required. The resource name of the distance view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DistanceView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/domain_category_service.proto b/google/ads/googleads/v6/services/domain_category_service.proto deleted file mode 100644 index eda3075bd..000000000 --- a/google/ads/googleads/v6/services/domain_category_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/domain_category.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DomainCategoryServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the DomainCategory Service. - -// Service to fetch domain categories. -service DomainCategoryService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested domain category. - rpc GetDomainCategory(GetDomainCategoryRequest) returns (google.ads.googleads.v6.resources.DomainCategory) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/domainCategories/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [DomainCategoryService.GetDomainCategory][google.ads.googleads.v6.services.DomainCategoryService.GetDomainCategory]. -message GetDomainCategoryRequest { - // Required. Resource name of the domain category to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DomainCategory" - } - ]; -} diff --git a/google/ads/googleads/v6/services/dynamic_search_ads_search_term_view_service.proto b/google/ads/googleads/v6/services/dynamic_search_ads_search_term_view_service.proto deleted file mode 100644 index 9de256e0f..000000000 --- a/google/ads/googleads/v6/services/dynamic_search_ads_search_term_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/dynamic_search_ads_search_term_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "DynamicSearchAdsSearchTermViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Dynamic Search Ads Search Term View service. - -// Service to fetch dynamic search ads views. -service DynamicSearchAdsSearchTermViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested dynamic search ads search term view in full detail. - rpc GetDynamicSearchAdsSearchTermView(GetDynamicSearchAdsSearchTermViewRequest) returns (google.ads.googleads.v6.resources.DynamicSearchAdsSearchTermView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView][google.ads.googleads.v6.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView]. -message GetDynamicSearchAdsSearchTermViewRequest { - // Required. The resource name of the dynamic search ads search term view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/expanded_landing_page_view_service.proto b/google/ads/googleads/v6/services/expanded_landing_page_view_service.proto deleted file mode 100644 index c45a7cb70..000000000 --- a/google/ads/googleads/v6/services/expanded_landing_page_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/expanded_landing_page_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ExpandedLandingPageViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the expanded landing page view service. - -// Service to fetch expanded landing page views. -service ExpandedLandingPageViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested expanded landing page view in full detail. - rpc GetExpandedLandingPageView(GetExpandedLandingPageViewRequest) returns (google.ads.googleads.v6.resources.ExpandedLandingPageView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/expandedLandingPageViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [ExpandedLandingPageViewService.GetExpandedLandingPageView][google.ads.googleads.v6.services.ExpandedLandingPageViewService.GetExpandedLandingPageView]. -message GetExpandedLandingPageViewRequest { - // Required. The resource name of the expanded landing page view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExpandedLandingPageView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/extension_feed_item_service.proto b/google/ads/googleads/v6/services/extension_feed_item_service.proto deleted file mode 100644 index 9147708d1..000000000 --- a/google/ads/googleads/v6/services/extension_feed_item_service.proto +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/extension_feed_item.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ExtensionFeedItemServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the ExtensionFeedItem service. - -// Service to manage extension feed items. -service ExtensionFeedItemService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested extension feed item in full detail. - rpc GetExtensionFeedItem(GetExtensionFeedItemRequest) returns (google.ads.googleads.v6.resources.ExtensionFeedItem) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/extensionFeedItems/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes extension feed items. Operation - // statuses are returned. - rpc MutateExtensionFeedItems(MutateExtensionFeedItemsRequest) returns (MutateExtensionFeedItemsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/extensionFeedItems:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [ExtensionFeedItemService.GetExtensionFeedItem][google.ads.googleads.v6.services.ExtensionFeedItemService.GetExtensionFeedItem]. -message GetExtensionFeedItemRequest { - // Required. The resource name of the extension feed item to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ExtensionFeedItem" - } - ]; -} - -// Request message for [ExtensionFeedItemService.MutateExtensionFeedItems][google.ads.googleads.v6.services.ExtensionFeedItemService.MutateExtensionFeedItems]. -message MutateExtensionFeedItemsRequest { - // Required. The ID of the customer whose extension feed items are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual extension feed items. - repeated ExtensionFeedItemOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an extension feed item. -message ExtensionFeedItemOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new extension - // feed item. - google.ads.googleads.v6.resources.ExtensionFeedItem create = 1; - - // Update operation: The extension feed item is expected to have a - // valid resource name. - google.ads.googleads.v6.resources.ExtensionFeedItem update = 2; - - // Remove operation: A resource name for the removed extension feed item - // is expected, in this format: - // - // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` - string remove = 3; - } -} - -// Response message for an extension feed item mutate. -message MutateExtensionFeedItemsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateExtensionFeedItemResult results = 2; -} - -// The result for the extension feed item mutate. -message MutateExtensionFeedItemResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated extension feed item with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.ExtensionFeedItem extension_feed_item = 2; -} diff --git a/google/ads/googleads/v6/services/feed_item_service.proto b/google/ads/googleads/v6/services/feed_item_service.proto deleted file mode 100644 index 1054fdb6f..000000000 --- a/google/ads/googleads/v6/services/feed_item_service.proto +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/feed_item.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the FeedItem service. - -// Service to manage feed items. -service FeedItemService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed item in full detail. - rpc GetFeedItem(GetFeedItemRequest) returns (google.ads.googleads.v6.resources.FeedItem) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/feedItems/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes feed items. Operation statuses are - // returned. - rpc MutateFeedItems(MutateFeedItemsRequest) returns (MutateFeedItemsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/feedItems:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedItemService.GetFeedItem][google.ads.googleads.v6.services.FeedItemService.GetFeedItem]. -message GetFeedItemRequest { - // Required. The resource name of the feed item to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItem" - } - ]; -} - -// Request message for [FeedItemService.MutateFeedItems][google.ads.googleads.v6.services.FeedItemService.MutateFeedItems]. -message MutateFeedItemsRequest { - // Required. The ID of the customer whose feed items are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feed items. - repeated FeedItemOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an feed item. -message FeedItemOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed item. - google.ads.googleads.v6.resources.FeedItem create = 1; - - // Update operation: The feed item is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.FeedItem update = 2; - - // Remove operation: A resource name for the removed feed item is - // expected, in this format: - // - // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}` - string remove = 3; - } -} - -// Response message for an feed item mutate. -message MutateFeedItemsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateFeedItemResult results = 2; -} - -// The result for the feed item mutate. -message MutateFeedItemResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated feed item with only mutable fields after mutate. The field will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.FeedItem feed_item = 2; -} diff --git a/google/ads/googleads/v6/services/feed_item_set_link_service.proto b/google/ads/googleads/v6/services/feed_item_set_link_service.proto deleted file mode 100644 index f87c7e29c..000000000 --- a/google/ads/googleads/v6/services/feed_item_set_link_service.proto +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/feed_item_set_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemSetLinkServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the FeedItemSetLink service. - -// Service to manage feed item set links. -service FeedItemSetLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed item set link in full detail. - rpc GetFeedItemSetLink(GetFeedItemSetLinkRequest) returns (google.ads.googleads.v6.resources.FeedItemSetLink) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/feedItemSetLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes feed item set links. - rpc MutateFeedItemSetLinks(MutateFeedItemSetLinksRequest) returns (MutateFeedItemSetLinksResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/feedItemSetLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedItemSetLinkService.GetFeedItemSetLinks][]. -message GetFeedItemSetLinkRequest { - // Required. The resource name of the feed item set link to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItemSetLink" - } - ]; -} - -// Request message for [FeedItemSetLinkService.MutateFeedItemSetLinks][google.ads.googleads.v6.services.FeedItemSetLinkService.MutateFeedItemSetLinks]. -message MutateFeedItemSetLinksRequest { - // Required. The ID of the customer whose feed item set links are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feed item set links. - repeated FeedItemSetLinkOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a feed item set link. -message FeedItemSetLinkOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the - // new feed item set link. - google.ads.googleads.v6.resources.FeedItemSetLink create = 1; - - // Remove operation: A resource name for the removed feed item set link is - // expected, in this format: - // - // `customers/{customer_id}/feedItemSetLinks/{feed_id}_{feed_item_set_id}_{feed_item_id}` - string remove = 2; - } -} - -// Response message for a feed item set link mutate. -message MutateFeedItemSetLinksResponse { - // All results for the mutate. - repeated MutateFeedItemSetLinkResult results = 1; -} - -// The result for the feed item set link mutate. -message MutateFeedItemSetLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/feed_item_set_service.proto b/google/ads/googleads/v6/services/feed_item_set_service.proto deleted file mode 100644 index 09cb4950e..000000000 --- a/google/ads/googleads/v6/services/feed_item_set_service.proto +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/feed_item_set.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemSetServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the FeedItemSet service. - -// Service to manage feed Item Set -service FeedItemSetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed item set in full detail. - rpc GetFeedItemSet(GetFeedItemSetRequest) returns (google.ads.googleads.v6.resources.FeedItemSet) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/feedItemSets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates or removes feed item sets. Operation statuses are - // returned. - rpc MutateFeedItemSets(MutateFeedItemSetsRequest) returns (MutateFeedItemSetsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/feedItemSets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedItemSetService.GetFeedItemSet][google.ads.googleads.v6.services.FeedItemSetService.GetFeedItemSet]. -message GetFeedItemSetRequest { - // Required. The resource name of the feed item set to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItemSet" - } - ]; -} - -// Request message for [FeedItemSetService.MutateFeedItemSets][google.ads.googleads.v6.services.FeedItemSetService.MutateFeedItemSets]. -message MutateFeedItemSetsRequest { - // Required. The ID of the customer whose feed item sets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feed item sets. - repeated FeedItemSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, remove) on an feed item set. -message FeedItemSetOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed item set - google.ads.googleads.v6.resources.FeedItemSet create = 1; - - // Update operation: The feed item set is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.FeedItemSet update = 2; - - // Remove operation: A resource name for the removed feed item is - // expected, in this format: - // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_set_id}` - string remove = 3; - } -} - -// Response message for an feed item set mutate. -message MutateFeedItemSetsResponse { - // All results for the mutate. - repeated MutateFeedItemSetResult results = 1; -} - -// The result for the feed item set mutate. -message MutateFeedItemSetResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/feed_item_target_service.proto b/google/ads/googleads/v6/services/feed_item_target_service.proto deleted file mode 100644 index 8ce19327c..000000000 --- a/google/ads/googleads/v6/services/feed_item_target_service.proto +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/feed_item_target.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedItemTargetServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the FeedItemTarget service. - -// Service to manage feed item targets. -service FeedItemTargetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed item targets in full detail. - rpc GetFeedItemTarget(GetFeedItemTargetRequest) returns (google.ads.googleads.v6.resources.FeedItemTarget) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/feedItemTargets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes feed item targets. Operation statuses are returned. - rpc MutateFeedItemTargets(MutateFeedItemTargetsRequest) returns (MutateFeedItemTargetsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/feedItemTargets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedItemTargetService.GetFeedItemTarget][google.ads.googleads.v6.services.FeedItemTargetService.GetFeedItemTarget]. -message GetFeedItemTargetRequest { - // Required. The resource name of the feed item targets to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedItemTarget" - } - ]; -} - -// Request message for [FeedItemTargetService.MutateFeedItemTargets][google.ads.googleads.v6.services.FeedItemTargetService.MutateFeedItemTargets]. -message MutateFeedItemTargetsRequest { - // Required. The ID of the customer whose feed item targets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feed item targets. - repeated FeedItemTargetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, remove) on an feed item target. -message FeedItemTargetOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed item - // target. - google.ads.googleads.v6.resources.FeedItemTarget create = 1; - - // Remove operation: A resource name for the removed feed item target is - // expected, in this format: - // - // `customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}` - string remove = 2; - } -} - -// Response message for an feed item target mutate. -message MutateFeedItemTargetsResponse { - // All results for the mutate. - repeated MutateFeedItemTargetResult results = 2; -} - -// The result for the feed item target mutate. -message MutateFeedItemTargetResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated feed item target with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.FeedItemTarget feed_item_target = 2; -} diff --git a/google/ads/googleads/v6/services/feed_mapping_service.proto b/google/ads/googleads/v6/services/feed_mapping_service.proto deleted file mode 100644 index c1d363958..000000000 --- a/google/ads/googleads/v6/services/feed_mapping_service.proto +++ /dev/null @@ -1,132 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/feed_mapping.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedMappingServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the FeedMapping service. - -// Service to manage feed mappings. -service FeedMappingService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed mapping in full detail. - rpc GetFeedMapping(GetFeedMappingRequest) returns (google.ads.googleads.v6.resources.FeedMapping) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/feedMappings/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes feed mappings. Operation statuses are - // returned. - rpc MutateFeedMappings(MutateFeedMappingsRequest) returns (MutateFeedMappingsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/feedMappings:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedMappingService.GetFeedMapping][google.ads.googleads.v6.services.FeedMappingService.GetFeedMapping]. -message GetFeedMappingRequest { - // Required. The resource name of the feed mapping to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedMapping" - } - ]; -} - -// Request message for [FeedMappingService.MutateFeedMappings][google.ads.googleads.v6.services.FeedMappingService.MutateFeedMappings]. -message MutateFeedMappingsRequest { - // Required. The ID of the customer whose feed mappings are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feed mappings. - repeated FeedMappingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, remove) on a feed mapping. -message FeedMappingOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed mapping. - google.ads.googleads.v6.resources.FeedMapping create = 1; - - // Remove operation: A resource name for the removed feed mapping is - // expected, in this format: - // - // `customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}` - string remove = 3; - } -} - -// Response message for a feed mapping mutate. -message MutateFeedMappingsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateFeedMappingResult results = 2; -} - -// The result for the feed mapping mutate. -message MutateFeedMappingResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated feed mapping with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.FeedMapping feed_mapping = 2; -} diff --git a/google/ads/googleads/v6/services/feed_placeholder_view_service.proto b/google/ads/googleads/v6/services/feed_placeholder_view_service.proto deleted file mode 100644 index 772fa855e..000000000 --- a/google/ads/googleads/v6/services/feed_placeholder_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/feed_placeholder_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedPlaceholderViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the FeedPlaceholderView service. - -// Service to fetch feed placeholder views. -service FeedPlaceholderViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed placeholder view in full detail. - rpc GetFeedPlaceholderView(GetFeedPlaceholderViewRequest) returns (google.ads.googleads.v6.resources.FeedPlaceholderView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/feedPlaceholderViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [FeedPlaceholderViewService.GetFeedPlaceholderView][google.ads.googleads.v6.services.FeedPlaceholderViewService.GetFeedPlaceholderView]. -message GetFeedPlaceholderViewRequest { - // Required. The resource name of the feed placeholder view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/FeedPlaceholderView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/feed_service.proto b/google/ads/googleads/v6/services/feed_service.proto deleted file mode 100644 index 222515e66..000000000 --- a/google/ads/googleads/v6/services/feed_service.proto +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/feed.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "FeedServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Feed service. - -// Service to manage feeds. -service FeedService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested feed in full detail. - rpc GetFeed(GetFeedRequest) returns (google.ads.googleads.v6.resources.Feed) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/feeds/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes feeds. Operation statuses are - // returned. - rpc MutateFeeds(MutateFeedsRequest) returns (MutateFeedsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/feeds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [FeedService.GetFeed][google.ads.googleads.v6.services.FeedService.GetFeed]. -message GetFeedRequest { - // Required. The resource name of the feed to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Feed" - } - ]; -} - -// Request message for [FeedService.MutateFeeds][google.ads.googleads.v6.services.FeedService.MutateFeeds]. -message MutateFeedsRequest { - // Required. The ID of the customer whose feeds are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual feeds. - repeated FeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an feed. -message FeedOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new feed. - google.ads.googleads.v6.resources.Feed create = 1; - - // Update operation: The feed is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.Feed update = 2; - - // Remove operation: A resource name for the removed feed is - // expected, in this format: - // - // `customers/{customer_id}/feeds/{feed_id}` - string remove = 3; - } -} - -// Response message for an feed mutate. -message MutateFeedsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateFeedResult results = 2; -} - -// The result for the feed mutate. -message MutateFeedResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated feed with only mutable fields after mutate. The field will only - // be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.Feed feed = 2; -} diff --git a/google/ads/googleads/v6/services/gender_view_service.proto b/google/ads/googleads/v6/services/gender_view_service.proto deleted file mode 100644 index 774b115fd..000000000 --- a/google/ads/googleads/v6/services/gender_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/gender_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GenderViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Gender View service. - -// Service to manage gender views. -service GenderViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested gender view in full detail. - rpc GetGenderView(GetGenderViewRequest) returns (google.ads.googleads.v6.resources.GenderView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/genderViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [GenderViewService.GetGenderView][google.ads.googleads.v6.services.GenderViewService.GetGenderView]. -message GetGenderViewRequest { - // Required. The resource name of the gender view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GenderView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/geo_target_constant_service.proto b/google/ads/googleads/v6/services/geo_target_constant_service.proto deleted file mode 100644 index 22c62b9cb..000000000 --- a/google/ads/googleads/v6/services/geo_target_constant_service.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/geo_target_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GeoTargetConstantServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Geo target constant service. - -// Service to fetch geo target constants. -service GeoTargetConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested geo target constant in full detail. - rpc GetGeoTargetConstant(GetGeoTargetConstantRequest) returns (google.ads.googleads.v6.resources.GeoTargetConstant) { - option (google.api.http) = { - get: "/v6/{resource_name=geoTargetConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Returns GeoTargetConstant suggestions by location name or by resource name. - rpc SuggestGeoTargetConstants(SuggestGeoTargetConstantsRequest) returns (SuggestGeoTargetConstantsResponse) { - option (google.api.http) = { - post: "/v6/geoTargetConstants:suggest" - body: "*" - }; - } -} - -// Request message for [GeoTargetConstantService.GetGeoTargetConstant][google.ads.googleads.v6.services.GeoTargetConstantService.GetGeoTargetConstant]. -message GetGeoTargetConstantRequest { - // Required. The resource name of the geo target constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeoTargetConstant" - } - ]; -} - -// Request message for -// [GeoTargetConstantService.SuggestGeoTargetConstants][google.ads.googleads.v6.services.GeoTargetConstantService.SuggestGeoTargetConstants]. -message SuggestGeoTargetConstantsRequest { - // A list of location names. - message LocationNames { - // A list of location names. - repeated string names = 2; - } - - // A list of geo target constant resource names. - message GeoTargets { - // A list of geo target constant resource names. - repeated string geo_target_constants = 2; - } - - // If possible, returned geo targets are translated using this locale. If not, - // en is used by default. This is also used as a hint for returned geo - // targets. - optional string locale = 6; - - // Returned geo targets are restricted to this country code. - optional string country_code = 7; - - // Required. A selector of geo target constants. - oneof query { - // The location names to search by. At most 25 names can be set. - LocationNames location_names = 1; - - // The geo target constant resource names to filter by. - GeoTargets geo_targets = 2; - } -} - -// Response message for [GeoTargetConstantService.SuggestGeoTargetConstants][google.ads.googleads.v6.services.GeoTargetConstantService.SuggestGeoTargetConstants]. -message SuggestGeoTargetConstantsResponse { - // Geo target constant suggestions. - repeated GeoTargetConstantSuggestion geo_target_constant_suggestions = 1; -} - -// A geo target constant suggestion. -message GeoTargetConstantSuggestion { - // The language this GeoTargetConstantSuggestion is currently translated to. - // It affects the name of geo target fields. For example, if locale=en, then - // name=Spain. If locale=es, then name=España. The default locale will be - // returned if no translation exists for the locale in the request. - optional string locale = 6; - - // Approximate user population that will be targeted, rounded to the - // nearest 100. - optional int64 reach = 7; - - // If the request searched by location name, this is the location name that - // matched the geo target. - optional string search_term = 8; - - // The GeoTargetConstant result. - google.ads.googleads.v6.resources.GeoTargetConstant geo_target_constant = 4; - - // The list of parents of the geo target constant. - repeated google.ads.googleads.v6.resources.GeoTargetConstant geo_target_constant_parents = 5; -} diff --git a/google/ads/googleads/v6/services/geographic_view_service.proto b/google/ads/googleads/v6/services/geographic_view_service.proto deleted file mode 100644 index fd8c09a92..000000000 --- a/google/ads/googleads/v6/services/geographic_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/geographic_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GeographicViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the GeographicViewService. - -// Service to manage geographic views. -service GeographicViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested geographic view in full detail. - rpc GetGeographicView(GetGeographicViewRequest) returns (google.ads.googleads.v6.resources.GeographicView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/geographicViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [GeographicViewService.GetGeographicView][google.ads.googleads.v6.services.GeographicViewService.GetGeographicView]. -message GetGeographicViewRequest { - // Required. The resource name of the geographic view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GeographicView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/google_ads_field_service.proto b/google/ads/googleads/v6/services/google_ads_field_service.proto deleted file mode 100644 index 710bd3840..000000000 --- a/google/ads/googleads/v6/services/google_ads_field_service.proto +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/google_ads_field.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsFieldServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the GoogleAdsFieldService - -// Service to fetch Google Ads API fields. -service GoogleAdsFieldService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns just the requested field. - rpc GetGoogleAdsField(GetGoogleAdsFieldRequest) returns (google.ads.googleads.v6.resources.GoogleAdsField) { - option (google.api.http) = { - get: "/v6/{resource_name=googleAdsFields/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Returns all fields that match the search query. - rpc SearchGoogleAdsFields(SearchGoogleAdsFieldsRequest) returns (SearchGoogleAdsFieldsResponse) { - option (google.api.http) = { - post: "/v6/googleAdsFields:search" - body: "*" - }; - option (google.api.method_signature) = "query"; - } -} - -// Request message for [GoogleAdsFieldService.GetGoogleAdsField][google.ads.googleads.v6.services.GoogleAdsFieldService.GetGoogleAdsField]. -message GetGoogleAdsFieldRequest { - // Required. The resource name of the field to get. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GoogleAdsField" - } - ]; -} - -// Request message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v6.services.GoogleAdsFieldService.SearchGoogleAdsFields]. -message SearchGoogleAdsFieldsRequest { - // Required. The query string. - string query = 1 [(google.api.field_behavior) = REQUIRED]; - - // Token of the page to retrieve. If not specified, the first page of - // results will be returned. Use the value obtained from `next_page_token` - // in the previous response in order to request the next page of results. - string page_token = 2; - - // Number of elements to retrieve in a single page. - // When too large a page is requested, the server may decide to further - // limit the number of returned resources. - int32 page_size = 3; -} - -// Response message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v6.services.GoogleAdsFieldService.SearchGoogleAdsFields]. -message SearchGoogleAdsFieldsResponse { - // The list of fields that matched the query. - repeated google.ads.googleads.v6.resources.GoogleAdsField results = 1; - - // Pagination token used to retrieve the next page of results. Pass the - // content of this string as the `page_token` attribute of the next request. - // `next_page_token` is not returned for the last page. - string next_page_token = 2; - - // Total number of results that match the query ignoring the LIMIT clause. - int64 total_results_count = 3; -} diff --git a/google/ads/googleads/v6/services/google_ads_service.proto b/google/ads/googleads/v6/services/google_ads_service.proto deleted file mode 100644 index 4472797ec..000000000 --- a/google/ads/googleads/v6/services/google_ads_service.proto +++ /dev/null @@ -1,1040 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/common/metrics.proto"; -import "google/ads/googleads/v6/common/segments.proto"; -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/enums/summary_row_setting.proto"; -import "google/ads/googleads/v6/resources/account_budget.proto"; -import "google/ads/googleads/v6/resources/account_budget_proposal.proto"; -import "google/ads/googleads/v6/resources/account_link.proto"; -import "google/ads/googleads/v6/resources/ad_group.proto"; -import "google/ads/googleads/v6/resources/ad_group_ad.proto"; -import "google/ads/googleads/v6/resources/ad_group_ad_asset_view.proto"; -import "google/ads/googleads/v6/resources/ad_group_ad_label.proto"; -import "google/ads/googleads/v6/resources/ad_group_audience_view.proto"; -import "google/ads/googleads/v6/resources/ad_group_bid_modifier.proto"; -import "google/ads/googleads/v6/resources/ad_group_criterion.proto"; -import "google/ads/googleads/v6/resources/ad_group_criterion_label.proto"; -import "google/ads/googleads/v6/resources/ad_group_criterion_simulation.proto"; -import "google/ads/googleads/v6/resources/ad_group_extension_setting.proto"; -import "google/ads/googleads/v6/resources/ad_group_feed.proto"; -import "google/ads/googleads/v6/resources/ad_group_label.proto"; -import "google/ads/googleads/v6/resources/ad_group_simulation.proto"; -import "google/ads/googleads/v6/resources/ad_parameter.proto"; -import "google/ads/googleads/v6/resources/ad_schedule_view.proto"; -import "google/ads/googleads/v6/resources/age_range_view.proto"; -import "google/ads/googleads/v6/resources/asset.proto"; -import "google/ads/googleads/v6/resources/batch_job.proto"; -import "google/ads/googleads/v6/resources/bidding_strategy.proto"; -import "google/ads/googleads/v6/resources/billing_setup.proto"; -import "google/ads/googleads/v6/resources/call_view.proto"; -import "google/ads/googleads/v6/resources/campaign.proto"; -import "google/ads/googleads/v6/resources/campaign_asset.proto"; -import "google/ads/googleads/v6/resources/campaign_audience_view.proto"; -import "google/ads/googleads/v6/resources/campaign_bid_modifier.proto"; -import "google/ads/googleads/v6/resources/campaign_budget.proto"; -import "google/ads/googleads/v6/resources/campaign_criterion.proto"; -import "google/ads/googleads/v6/resources/campaign_criterion_simulation.proto"; -import "google/ads/googleads/v6/resources/campaign_draft.proto"; -import "google/ads/googleads/v6/resources/campaign_experiment.proto"; -import "google/ads/googleads/v6/resources/campaign_extension_setting.proto"; -import "google/ads/googleads/v6/resources/campaign_feed.proto"; -import "google/ads/googleads/v6/resources/campaign_label.proto"; -import "google/ads/googleads/v6/resources/campaign_shared_set.proto"; -import "google/ads/googleads/v6/resources/carrier_constant.proto"; -import "google/ads/googleads/v6/resources/change_event.proto"; -import "google/ads/googleads/v6/resources/change_status.proto"; -import "google/ads/googleads/v6/resources/click_view.proto"; -import "google/ads/googleads/v6/resources/combined_audience.proto"; -import "google/ads/googleads/v6/resources/conversion_action.proto"; -import "google/ads/googleads/v6/resources/currency_constant.proto"; -import "google/ads/googleads/v6/resources/custom_audience.proto"; -import "google/ads/googleads/v6/resources/custom_interest.proto"; -import "google/ads/googleads/v6/resources/customer.proto"; -import "google/ads/googleads/v6/resources/customer_client.proto"; -import "google/ads/googleads/v6/resources/customer_client_link.proto"; -import "google/ads/googleads/v6/resources/customer_extension_setting.proto"; -import "google/ads/googleads/v6/resources/customer_feed.proto"; -import "google/ads/googleads/v6/resources/customer_label.proto"; -import "google/ads/googleads/v6/resources/customer_manager_link.proto"; -import "google/ads/googleads/v6/resources/customer_negative_criterion.proto"; -import "google/ads/googleads/v6/resources/customer_user_access.proto"; -import "google/ads/googleads/v6/resources/customer_user_access_invitation.proto"; -import "google/ads/googleads/v6/resources/detail_placement_view.proto"; -import "google/ads/googleads/v6/resources/display_keyword_view.proto"; -import "google/ads/googleads/v6/resources/distance_view.proto"; -import "google/ads/googleads/v6/resources/domain_category.proto"; -import "google/ads/googleads/v6/resources/dynamic_search_ads_search_term_view.proto"; -import "google/ads/googleads/v6/resources/expanded_landing_page_view.proto"; -import "google/ads/googleads/v6/resources/extension_feed_item.proto"; -import "google/ads/googleads/v6/resources/feed.proto"; -import "google/ads/googleads/v6/resources/feed_item.proto"; -import "google/ads/googleads/v6/resources/feed_item_set.proto"; -import "google/ads/googleads/v6/resources/feed_item_set_link.proto"; -import "google/ads/googleads/v6/resources/feed_item_target.proto"; -import "google/ads/googleads/v6/resources/feed_mapping.proto"; -import "google/ads/googleads/v6/resources/feed_placeholder_view.proto"; -import "google/ads/googleads/v6/resources/gender_view.proto"; -import "google/ads/googleads/v6/resources/geo_target_constant.proto"; -import "google/ads/googleads/v6/resources/geographic_view.proto"; -import "google/ads/googleads/v6/resources/group_placement_view.proto"; -import "google/ads/googleads/v6/resources/hotel_group_view.proto"; -import "google/ads/googleads/v6/resources/hotel_performance_view.proto"; -import "google/ads/googleads/v6/resources/income_range_view.proto"; -import "google/ads/googleads/v6/resources/keyword_plan.proto"; -import "google/ads/googleads/v6/resources/keyword_plan_ad_group.proto"; -import "google/ads/googleads/v6/resources/keyword_plan_ad_group_keyword.proto"; -import "google/ads/googleads/v6/resources/keyword_plan_campaign.proto"; -import "google/ads/googleads/v6/resources/keyword_plan_campaign_keyword.proto"; -import "google/ads/googleads/v6/resources/keyword_view.proto"; -import "google/ads/googleads/v6/resources/label.proto"; -import "google/ads/googleads/v6/resources/landing_page_view.proto"; -import "google/ads/googleads/v6/resources/language_constant.proto"; -import "google/ads/googleads/v6/resources/location_view.proto"; -import "google/ads/googleads/v6/resources/managed_placement_view.proto"; -import "google/ads/googleads/v6/resources/media_file.proto"; -import "google/ads/googleads/v6/resources/mobile_app_category_constant.proto"; -import "google/ads/googleads/v6/resources/mobile_device_constant.proto"; -import "google/ads/googleads/v6/resources/offline_user_data_job.proto"; -import "google/ads/googleads/v6/resources/operating_system_version_constant.proto"; -import "google/ads/googleads/v6/resources/paid_organic_search_term_view.proto"; -import "google/ads/googleads/v6/resources/parental_status_view.proto"; -import "google/ads/googleads/v6/resources/product_bidding_category_constant.proto"; -import "google/ads/googleads/v6/resources/product_group_view.proto"; -import "google/ads/googleads/v6/resources/recommendation.proto"; -import "google/ads/googleads/v6/resources/remarketing_action.proto"; -import "google/ads/googleads/v6/resources/search_term_view.proto"; -import "google/ads/googleads/v6/resources/shared_criterion.proto"; -import "google/ads/googleads/v6/resources/shared_set.proto"; -import "google/ads/googleads/v6/resources/shopping_performance_view.proto"; -import "google/ads/googleads/v6/resources/third_party_app_analytics_link.proto"; -import "google/ads/googleads/v6/resources/topic_constant.proto"; -import "google/ads/googleads/v6/resources/topic_view.proto"; -import "google/ads/googleads/v6/resources/user_interest.proto"; -import "google/ads/googleads/v6/resources/user_list.proto"; -import "google/ads/googleads/v6/resources/user_location_view.proto"; -import "google/ads/googleads/v6/resources/video.proto"; -import "google/ads/googleads/v6/services/ad_group_ad_label_service.proto"; -import "google/ads/googleads/v6/services/ad_group_ad_service.proto"; -import "google/ads/googleads/v6/services/ad_group_bid_modifier_service.proto"; -import "google/ads/googleads/v6/services/ad_group_criterion_label_service.proto"; -import "google/ads/googleads/v6/services/ad_group_criterion_service.proto"; -import "google/ads/googleads/v6/services/ad_group_extension_setting_service.proto"; -import "google/ads/googleads/v6/services/ad_group_feed_service.proto"; -import "google/ads/googleads/v6/services/ad_group_label_service.proto"; -import "google/ads/googleads/v6/services/ad_group_service.proto"; -import "google/ads/googleads/v6/services/ad_parameter_service.proto"; -import "google/ads/googleads/v6/services/ad_service.proto"; -import "google/ads/googleads/v6/services/asset_service.proto"; -import "google/ads/googleads/v6/services/bidding_strategy_service.proto"; -import "google/ads/googleads/v6/services/campaign_asset_service.proto"; -import "google/ads/googleads/v6/services/campaign_bid_modifier_service.proto"; -import "google/ads/googleads/v6/services/campaign_budget_service.proto"; -import "google/ads/googleads/v6/services/campaign_criterion_service.proto"; -import "google/ads/googleads/v6/services/campaign_draft_service.proto"; -import "google/ads/googleads/v6/services/campaign_experiment_service.proto"; -import "google/ads/googleads/v6/services/campaign_extension_setting_service.proto"; -import "google/ads/googleads/v6/services/campaign_feed_service.proto"; -import "google/ads/googleads/v6/services/campaign_label_service.proto"; -import "google/ads/googleads/v6/services/campaign_service.proto"; -import "google/ads/googleads/v6/services/campaign_shared_set_service.proto"; -import "google/ads/googleads/v6/services/conversion_action_service.proto"; -import "google/ads/googleads/v6/services/customer_extension_setting_service.proto"; -import "google/ads/googleads/v6/services/customer_feed_service.proto"; -import "google/ads/googleads/v6/services/customer_label_service.proto"; -import "google/ads/googleads/v6/services/customer_negative_criterion_service.proto"; -import "google/ads/googleads/v6/services/customer_service.proto"; -import "google/ads/googleads/v6/services/extension_feed_item_service.proto"; -import "google/ads/googleads/v6/services/feed_item_service.proto"; -import "google/ads/googleads/v6/services/feed_item_set_link_service.proto"; -import "google/ads/googleads/v6/services/feed_item_set_service.proto"; -import "google/ads/googleads/v6/services/feed_item_target_service.proto"; -import "google/ads/googleads/v6/services/feed_mapping_service.proto"; -import "google/ads/googleads/v6/services/feed_service.proto"; -import "google/ads/googleads/v6/services/keyword_plan_ad_group_keyword_service.proto"; -import "google/ads/googleads/v6/services/keyword_plan_ad_group_service.proto"; -import "google/ads/googleads/v6/services/keyword_plan_campaign_keyword_service.proto"; -import "google/ads/googleads/v6/services/keyword_plan_campaign_service.proto"; -import "google/ads/googleads/v6/services/keyword_plan_service.proto"; -import "google/ads/googleads/v6/services/label_service.proto"; -import "google/ads/googleads/v6/services/media_file_service.proto"; -import "google/ads/googleads/v6/services/remarketing_action_service.proto"; -import "google/ads/googleads/v6/services/shared_criterion_service.proto"; -import "google/ads/googleads/v6/services/shared_set_service.proto"; -import "google/ads/googleads/v6/services/user_list_service.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GoogleAdsServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the GoogleAdsService. - -// Service to fetch data and metrics across resources. -service GoogleAdsService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns all rows that match the search query. - rpc Search(SearchGoogleAdsRequest) returns (SearchGoogleAdsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/googleAds:search" - body: "*" - }; - option (google.api.method_signature) = "customer_id,query"; - } - - // Returns all rows that match the search stream query. - rpc SearchStream(SearchGoogleAdsStreamRequest) returns (stream SearchGoogleAdsStreamResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/googleAds:searchStream" - body: "*" - }; - option (google.api.method_signature) = "customer_id,query"; - } - - // Creates, updates, or removes resources. This method supports atomic - // transactions with multiple types of resources. For example, you can - // atomically create a campaign and a campaign budget, or perform up to - // thousands of mutates atomically. - // - // This method is essentially a wrapper around a series of mutate methods. The - // only features it offers over calling those methods directly are: - // - // - Atomic transactions - // - Temp resource names (described below) - // - Somewhat reduced latency over making a series of mutate calls - // - // Note: Only resources that support atomic transactions are included, so this - // method can't replace all calls to individual services. - // - // ## Atomic Transaction Benefits - // - // Atomicity makes error handling much easier. If you're making a series of - // changes and one fails, it can leave your account in an inconsistent state. - // With atomicity, you either reach the desired state directly, or the request - // fails and you can retry. - // - // ## Temp Resource Names - // - // Temp resource names are a special type of resource name used to create a - // resource and reference that resource in the same request. For example, if a - // campaign budget is created with `resource_name` equal to - // `customers/123/campaignBudgets/-1`, that resource name can be reused in - // the `Campaign.budget` field in the same request. That way, the two - // resources are created and linked atomically. - // - // To create a temp resource name, put a negative number in the part of the - // name that the server would normally allocate. - // - // Note: - // - // - Resources must be created with a temp name before the name can be reused. - // For example, the previous CampaignBudget+Campaign example would fail if - // the mutate order was reversed. - // - Temp names are not remembered across requests. - // - There's no limit to the number of temp names in a request. - // - Each temp name must use a unique negative number, even if the resource - // types differ. - // - // ## Latency - // - // It's important to group mutates by resource type or the request may time - // out and fail. Latency is roughly equal to a series of calls to individual - // mutate methods, where each change in resource type is a new call. For - // example, mutating 10 campaigns then 10 ad groups is like 2 calls, while - // mutating 1 campaign, 1 ad group, 1 campaign, 1 ad group is like 4 calls. - rpc Mutate(MutateGoogleAdsRequest) returns (MutateGoogleAdsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/googleAds:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,mutate_operations"; - } -} - -// Request message for [GoogleAdsService.Search][google.ads.googleads.v6.services.GoogleAdsService.Search]. -message SearchGoogleAdsRequest { - // Required. The ID of the customer being queried. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The query string. - string query = 2 [(google.api.field_behavior) = REQUIRED]; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. Use the value obtained from - // `next_page_token` in the previous response in order to request - // the next page of results. - string page_token = 3; - - // Number of elements to retrieve in a single page. - // When too large a page is requested, the server may decide to - // further limit the number of returned resources. - int32 page_size = 4; - - // If true, the request is validated but not executed. - bool validate_only = 5; - - // If true, the total number of results that match the query ignoring the - // LIMIT clause will be included in the response. - // Default is false. - bool return_total_results_count = 7; - - // Determines whether a summary row will be returned. By default, summary row - // is not returned. If requested, the summary row will be sent in a response - // by itself after all other query results are returned. - google.ads.googleads.v6.enums.SummaryRowSettingEnum.SummaryRowSetting summary_row_setting = 8; -} - -// Response message for [GoogleAdsService.Search][google.ads.googleads.v6.services.GoogleAdsService.Search]. -message SearchGoogleAdsResponse { - // The list of rows that matched the query. - repeated GoogleAdsRow results = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. `next_page_token` is not returned for the last - // page. - string next_page_token = 2; - - // Total number of results that match the query ignoring the LIMIT - // clause. - int64 total_results_count = 3; - - // FieldMask that represents what fields were requested by the user. - google.protobuf.FieldMask field_mask = 5; - - // Summary row that contains summary of metrics in results. - // Summary of metrics means aggregation of metrics across all results, - // here aggregation could be sum, average, rate, etc. - GoogleAdsRow summary_row = 6; -} - -// Request message for [GoogleAdsService.SearchStream][google.ads.googleads.v6.services.GoogleAdsService.SearchStream]. -message SearchGoogleAdsStreamRequest { - // Required. The ID of the customer being queried. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The query string. - string query = 2 [(google.api.field_behavior) = REQUIRED]; - - // Determines whether a summary row will be returned. By default, summary row - // is not returned. If requested, the summary row will be sent in a response - // by itself after all other query results are returned. - google.ads.googleads.v6.enums.SummaryRowSettingEnum.SummaryRowSetting summary_row_setting = 3; -} - -// Response message for [GoogleAdsService.SearchStream][google.ads.googleads.v6.services.GoogleAdsService.SearchStream]. -message SearchGoogleAdsStreamResponse { - // The list of rows that matched the query. - repeated GoogleAdsRow results = 1; - - // FieldMask that represents what fields were requested by the user. - google.protobuf.FieldMask field_mask = 2; - - // Summary row that contains summary of metrics in results. - // Summary of metrics means aggregation of metrics across all results, - // here aggregation could be sum, average, rate, etc. - GoogleAdsRow summary_row = 3; -} - -// A returned row from the query. -message GoogleAdsRow { - // The account budget in the query. - google.ads.googleads.v6.resources.AccountBudget account_budget = 42; - - // The account budget proposal referenced in the query. - google.ads.googleads.v6.resources.AccountBudgetProposal account_budget_proposal = 43; - - // The AccountLink referenced in the query. - google.ads.googleads.v6.resources.AccountLink account_link = 143; - - // The ad group referenced in the query. - google.ads.googleads.v6.resources.AdGroup ad_group = 3; - - // The ad referenced in the query. - google.ads.googleads.v6.resources.AdGroupAd ad_group_ad = 16; - - // The ad group ad asset view in the query. - google.ads.googleads.v6.resources.AdGroupAdAssetView ad_group_ad_asset_view = 131; - - // The ad group ad label referenced in the query. - google.ads.googleads.v6.resources.AdGroupAdLabel ad_group_ad_label = 120; - - // The ad group audience view referenced in the query. - google.ads.googleads.v6.resources.AdGroupAudienceView ad_group_audience_view = 57; - - // The bid modifier referenced in the query. - google.ads.googleads.v6.resources.AdGroupBidModifier ad_group_bid_modifier = 24; - - // The criterion referenced in the query. - google.ads.googleads.v6.resources.AdGroupCriterion ad_group_criterion = 17; - - // The ad group criterion label referenced in the query. - google.ads.googleads.v6.resources.AdGroupCriterionLabel ad_group_criterion_label = 121; - - // The ad group criterion simulation referenced in the query. - google.ads.googleads.v6.resources.AdGroupCriterionSimulation ad_group_criterion_simulation = 110; - - // The ad group extension setting referenced in the query. - google.ads.googleads.v6.resources.AdGroupExtensionSetting ad_group_extension_setting = 112; - - // The ad group feed referenced in the query. - google.ads.googleads.v6.resources.AdGroupFeed ad_group_feed = 67; - - // The ad group label referenced in the query. - google.ads.googleads.v6.resources.AdGroupLabel ad_group_label = 115; - - // The ad group simulation referenced in the query. - google.ads.googleads.v6.resources.AdGroupSimulation ad_group_simulation = 107; - - // The ad parameter referenced in the query. - google.ads.googleads.v6.resources.AdParameter ad_parameter = 130; - - // The age range view referenced in the query. - google.ads.googleads.v6.resources.AgeRangeView age_range_view = 48; - - // The ad schedule view referenced in the query. - google.ads.googleads.v6.resources.AdScheduleView ad_schedule_view = 89; - - // The domain category referenced in the query. - google.ads.googleads.v6.resources.DomainCategory domain_category = 91; - - // The asset referenced in the query. - google.ads.googleads.v6.resources.Asset asset = 105; - - // The batch job referenced in the query. - google.ads.googleads.v6.resources.BatchJob batch_job = 139; - - // The bidding strategy referenced in the query. - google.ads.googleads.v6.resources.BiddingStrategy bidding_strategy = 18; - - // The billing setup referenced in the query. - google.ads.googleads.v6.resources.BillingSetup billing_setup = 41; - - // The call view referenced in the query. - google.ads.googleads.v6.resources.CallView call_view = 152; - - // The campaign budget referenced in the query. - google.ads.googleads.v6.resources.CampaignBudget campaign_budget = 19; - - // The campaign referenced in the query. - google.ads.googleads.v6.resources.Campaign campaign = 2; - - // The campaign asset referenced in the query. - google.ads.googleads.v6.resources.CampaignAsset campaign_asset = 142; - - // The campaign audience view referenced in the query. - google.ads.googleads.v6.resources.CampaignAudienceView campaign_audience_view = 69; - - // The campaign bid modifier referenced in the query. - google.ads.googleads.v6.resources.CampaignBidModifier campaign_bid_modifier = 26; - - // The campaign criterion referenced in the query. - google.ads.googleads.v6.resources.CampaignCriterion campaign_criterion = 20; - - // The campaign criterion simulation referenced in the query. - google.ads.googleads.v6.resources.CampaignCriterionSimulation campaign_criterion_simulation = 111; - - // The campaign draft referenced in the query. - google.ads.googleads.v6.resources.CampaignDraft campaign_draft = 49; - - // The campaign experiment referenced in the query. - google.ads.googleads.v6.resources.CampaignExperiment campaign_experiment = 84; - - // The campaign extension setting referenced in the query. - google.ads.googleads.v6.resources.CampaignExtensionSetting campaign_extension_setting = 113; - - // The campaign feed referenced in the query. - google.ads.googleads.v6.resources.CampaignFeed campaign_feed = 63; - - // The campaign label referenced in the query. - google.ads.googleads.v6.resources.CampaignLabel campaign_label = 108; - - // Campaign Shared Set referenced in AWQL query. - google.ads.googleads.v6.resources.CampaignSharedSet campaign_shared_set = 30; - - // The carrier constant referenced in the query. - google.ads.googleads.v6.resources.CarrierConstant carrier_constant = 66; - - // The ChangeEvent referenced in the query. - google.ads.googleads.v6.resources.ChangeEvent change_event = 145; - - // The ChangeStatus referenced in the query. - google.ads.googleads.v6.resources.ChangeStatus change_status = 37; - - // The CombinedAudience referenced in the query. - google.ads.googleads.v6.resources.CombinedAudience combined_audience = 148; - - // The conversion action referenced in the query. - google.ads.googleads.v6.resources.ConversionAction conversion_action = 103; - - // The ClickView referenced in the query. - google.ads.googleads.v6.resources.ClickView click_view = 122; - - // The currency constant referenced in the query. - google.ads.googleads.v6.resources.CurrencyConstant currency_constant = 134; - - // The CustomAudience referenced in the query. - google.ads.googleads.v6.resources.CustomAudience custom_audience = 147; - - // The CustomInterest referenced in the query. - google.ads.googleads.v6.resources.CustomInterest custom_interest = 104; - - // The customer referenced in the query. - google.ads.googleads.v6.resources.Customer customer = 1; - - // The CustomerManagerLink referenced in the query. - google.ads.googleads.v6.resources.CustomerManagerLink customer_manager_link = 61; - - // The CustomerClientLink referenced in the query. - google.ads.googleads.v6.resources.CustomerClientLink customer_client_link = 62; - - // The CustomerClient referenced in the query. - google.ads.googleads.v6.resources.CustomerClient customer_client = 70; - - // The customer extension setting referenced in the query. - google.ads.googleads.v6.resources.CustomerExtensionSetting customer_extension_setting = 114; - - // The customer feed referenced in the query. - google.ads.googleads.v6.resources.CustomerFeed customer_feed = 64; - - // The customer label referenced in the query. - google.ads.googleads.v6.resources.CustomerLabel customer_label = 124; - - // The customer negative criterion referenced in the query. - google.ads.googleads.v6.resources.CustomerNegativeCriterion customer_negative_criterion = 88; - - // The CustomerUserAccess referenced in the query. - google.ads.googleads.v6.resources.CustomerUserAccess customer_user_access = 146; - - // The CustomerUserAccessInvitation referenced in the query. - google.ads.googleads.v6.resources.CustomerUserAccessInvitation customer_user_access_invitation = 150; - - // The detail placement view referenced in the query. - google.ads.googleads.v6.resources.DetailPlacementView detail_placement_view = 118; - - // The display keyword view referenced in the query. - google.ads.googleads.v6.resources.DisplayKeywordView display_keyword_view = 47; - - // The distance view referenced in the query. - google.ads.googleads.v6.resources.DistanceView distance_view = 132; - - // The dynamic search ads search term view referenced in the query. - google.ads.googleads.v6.resources.DynamicSearchAdsSearchTermView dynamic_search_ads_search_term_view = 106; - - // The expanded landing page view referenced in the query. - google.ads.googleads.v6.resources.ExpandedLandingPageView expanded_landing_page_view = 128; - - // The extension feed item referenced in the query. - google.ads.googleads.v6.resources.ExtensionFeedItem extension_feed_item = 85; - - // The feed referenced in the query. - google.ads.googleads.v6.resources.Feed feed = 46; - - // The feed item referenced in the query. - google.ads.googleads.v6.resources.FeedItem feed_item = 50; - - // The feed item set referenced in the query. - google.ads.googleads.v6.resources.FeedItemSet feed_item_set = 149; - - // The feed item set link referenced in the query. - google.ads.googleads.v6.resources.FeedItemSetLink feed_item_set_link = 151; - - // The feed item target referenced in the query. - google.ads.googleads.v6.resources.FeedItemTarget feed_item_target = 116; - - // The feed mapping referenced in the query. - google.ads.googleads.v6.resources.FeedMapping feed_mapping = 58; - - // The feed placeholder view referenced in the query. - google.ads.googleads.v6.resources.FeedPlaceholderView feed_placeholder_view = 97; - - // The gender view referenced in the query. - google.ads.googleads.v6.resources.GenderView gender_view = 40; - - // The geo target constant referenced in the query. - google.ads.googleads.v6.resources.GeoTargetConstant geo_target_constant = 23; - - // The geographic view referenced in the query. - google.ads.googleads.v6.resources.GeographicView geographic_view = 125; - - // The group placement view referenced in the query. - google.ads.googleads.v6.resources.GroupPlacementView group_placement_view = 119; - - // The hotel group view referenced in the query. - google.ads.googleads.v6.resources.HotelGroupView hotel_group_view = 51; - - // The hotel performance view referenced in the query. - google.ads.googleads.v6.resources.HotelPerformanceView hotel_performance_view = 71; - - // The income range view referenced in the query. - google.ads.googleads.v6.resources.IncomeRangeView income_range_view = 138; - - // The keyword view referenced in the query. - google.ads.googleads.v6.resources.KeywordView keyword_view = 21; - - // The keyword plan referenced in the query. - google.ads.googleads.v6.resources.KeywordPlan keyword_plan = 32; - - // The keyword plan campaign referenced in the query. - google.ads.googleads.v6.resources.KeywordPlanCampaign keyword_plan_campaign = 33; - - // The keyword plan campaign keyword referenced in the query. - google.ads.googleads.v6.resources.KeywordPlanCampaignKeyword keyword_plan_campaign_keyword = 140; - - // The keyword plan ad group referenced in the query. - google.ads.googleads.v6.resources.KeywordPlanAdGroup keyword_plan_ad_group = 35; - - // The keyword plan ad group referenced in the query. - google.ads.googleads.v6.resources.KeywordPlanAdGroupKeyword keyword_plan_ad_group_keyword = 141; - - // The label referenced in the query. - google.ads.googleads.v6.resources.Label label = 52; - - // The landing page view referenced in the query. - google.ads.googleads.v6.resources.LandingPageView landing_page_view = 126; - - // The language constant referenced in the query. - google.ads.googleads.v6.resources.LanguageConstant language_constant = 55; - - // The location view referenced in the query. - google.ads.googleads.v6.resources.LocationView location_view = 123; - - // The managed placement view referenced in the query. - google.ads.googleads.v6.resources.ManagedPlacementView managed_placement_view = 53; - - // The media file referenced in the query. - google.ads.googleads.v6.resources.MediaFile media_file = 90; - - // The mobile app category constant referenced in the query. - google.ads.googleads.v6.resources.MobileAppCategoryConstant mobile_app_category_constant = 87; - - // The mobile device constant referenced in the query. - google.ads.googleads.v6.resources.MobileDeviceConstant mobile_device_constant = 98; - - // The offline user data job referenced in the query. - google.ads.googleads.v6.resources.OfflineUserDataJob offline_user_data_job = 137; - - // The operating system version constant referenced in the query. - google.ads.googleads.v6.resources.OperatingSystemVersionConstant operating_system_version_constant = 86; - - // The paid organic search term view referenced in the query. - google.ads.googleads.v6.resources.PaidOrganicSearchTermView paid_organic_search_term_view = 129; - - // The parental status view referenced in the query. - google.ads.googleads.v6.resources.ParentalStatusView parental_status_view = 45; - - // The Product Bidding Category referenced in the query. - google.ads.googleads.v6.resources.ProductBiddingCategoryConstant product_bidding_category_constant = 109; - - // The product group view referenced in the query. - google.ads.googleads.v6.resources.ProductGroupView product_group_view = 54; - - // The recommendation referenced in the query. - google.ads.googleads.v6.resources.Recommendation recommendation = 22; - - // The search term view referenced in the query. - google.ads.googleads.v6.resources.SearchTermView search_term_view = 68; - - // The shared set referenced in the query. - google.ads.googleads.v6.resources.SharedCriterion shared_criterion = 29; - - // The shared set referenced in the query. - google.ads.googleads.v6.resources.SharedSet shared_set = 27; - - // The shopping performance view referenced in the query. - google.ads.googleads.v6.resources.ShoppingPerformanceView shopping_performance_view = 117; - - // The AccountLink referenced in the query. - google.ads.googleads.v6.resources.ThirdPartyAppAnalyticsLink third_party_app_analytics_link = 144; - - // The topic view referenced in the query. - google.ads.googleads.v6.resources.TopicView topic_view = 44; - - // The user interest referenced in the query. - google.ads.googleads.v6.resources.UserInterest user_interest = 59; - - // The user list referenced in the query. - google.ads.googleads.v6.resources.UserList user_list = 38; - - // The user location view referenced in the query. - google.ads.googleads.v6.resources.UserLocationView user_location_view = 135; - - // The remarketing action referenced in the query. - google.ads.googleads.v6.resources.RemarketingAction remarketing_action = 60; - - // The topic constant referenced in the query. - google.ads.googleads.v6.resources.TopicConstant topic_constant = 31; - - // The video referenced in the query. - google.ads.googleads.v6.resources.Video video = 39; - - // The metrics. - google.ads.googleads.v6.common.Metrics metrics = 4; - - // The segments. - google.ads.googleads.v6.common.Segments segments = 102; -} - -// Request message for [GoogleAdsService.Mutate][google.ads.googleads.v6.services.GoogleAdsService.Mutate]. -message MutateGoogleAdsRequest { - // Required. The ID of the customer whose resources are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual resources. - repeated MutateOperation mutate_operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. The mutable - // resource will only be returned if the resource has the appropriate response - // field. E.g. MutateCampaignResult.campaign. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// Response message for [GoogleAdsService.Mutate][google.ads.googleads.v6.services.GoogleAdsService.Mutate]. -message MutateGoogleAdsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g., auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All responses for the mutate. - repeated MutateOperationResponse mutate_operation_responses = 1; -} - -// A single operation (create, update, remove) on a resource. -message MutateOperation { - // The mutate operation. - oneof operation { - // An ad group ad label mutate operation. - AdGroupAdLabelOperation ad_group_ad_label_operation = 17; - - // An ad group ad mutate operation. - AdGroupAdOperation ad_group_ad_operation = 1; - - // An ad group bid modifier mutate operation. - AdGroupBidModifierOperation ad_group_bid_modifier_operation = 2; - - // An ad group criterion label mutate operation. - AdGroupCriterionLabelOperation ad_group_criterion_label_operation = 18; - - // An ad group criterion mutate operation. - AdGroupCriterionOperation ad_group_criterion_operation = 3; - - // An ad group extension setting mutate operation. - AdGroupExtensionSettingOperation ad_group_extension_setting_operation = 19; - - // An ad group feed mutate operation. - AdGroupFeedOperation ad_group_feed_operation = 20; - - // An ad group label mutate operation. - AdGroupLabelOperation ad_group_label_operation = 21; - - // An ad group mutate operation. - AdGroupOperation ad_group_operation = 5; - - // An ad mutate operation. - AdOperation ad_operation = 49; - - // An ad parameter mutate operation. - AdParameterOperation ad_parameter_operation = 22; - - // An asset mutate operation. - AssetOperation asset_operation = 23; - - // A bidding strategy mutate operation. - BiddingStrategyOperation bidding_strategy_operation = 6; - - // A campaign asset mutate operation. - CampaignAssetOperation campaign_asset_operation = 52; - - // A campaign bid modifier mutate operation. - CampaignBidModifierOperation campaign_bid_modifier_operation = 7; - - // A campaign budget mutate operation. - CampaignBudgetOperation campaign_budget_operation = 8; - - // A campaign criterion mutate operation. - CampaignCriterionOperation campaign_criterion_operation = 13; - - // A campaign draft mutate operation. - CampaignDraftOperation campaign_draft_operation = 24; - - // A campaign experiment mutate operation. - CampaignExperimentOperation campaign_experiment_operation = 25; - - // A campaign extension setting mutate operation. - CampaignExtensionSettingOperation campaign_extension_setting_operation = 26; - - // A campaign feed mutate operation. - CampaignFeedOperation campaign_feed_operation = 27; - - // A campaign label mutate operation. - CampaignLabelOperation campaign_label_operation = 28; - - // A campaign mutate operation. - CampaignOperation campaign_operation = 10; - - // A campaign shared set mutate operation. - CampaignSharedSetOperation campaign_shared_set_operation = 11; - - // A conversion action mutate operation. - ConversionActionOperation conversion_action_operation = 12; - - // A customer extension setting mutate operation. - CustomerExtensionSettingOperation customer_extension_setting_operation = 30; - - // A customer feed mutate operation. - CustomerFeedOperation customer_feed_operation = 31; - - // A customer label mutate operation. - CustomerLabelOperation customer_label_operation = 32; - - // A customer negative criterion mutate operation. - CustomerNegativeCriterionOperation customer_negative_criterion_operation = 34; - - // A customer mutate operation. - CustomerOperation customer_operation = 35; - - // An extension feed item mutate operation. - ExtensionFeedItemOperation extension_feed_item_operation = 36; - - // A feed item mutate operation. - FeedItemOperation feed_item_operation = 37; - - // A feed item set mutate operation. - FeedItemSetOperation feed_item_set_operation = 53; - - // A feed item set link mutate operation. - FeedItemSetLinkOperation feed_item_set_link_operation = 54; - - // A feed item target mutate operation. - FeedItemTargetOperation feed_item_target_operation = 38; - - // A feed mapping mutate operation. - FeedMappingOperation feed_mapping_operation = 39; - - // A feed mutate operation. - FeedOperation feed_operation = 40; - - // A keyword plan ad group operation. - KeywordPlanAdGroupOperation keyword_plan_ad_group_operation = 44; - - // A keyword plan ad group keyword operation. - KeywordPlanAdGroupKeywordOperation keyword_plan_ad_group_keyword_operation = 50; - - // A keyword plan campaign keyword operation. - KeywordPlanCampaignKeywordOperation keyword_plan_campaign_keyword_operation = 51; - - // A keyword plan campaign operation. - KeywordPlanCampaignOperation keyword_plan_campaign_operation = 45; - - // A keyword plan operation. - KeywordPlanOperation keyword_plan_operation = 48; - - // A label mutate operation. - LabelOperation label_operation = 41; - - // A media file mutate operation. - MediaFileOperation media_file_operation = 42; - - // A remarketing action mutate operation. - RemarketingActionOperation remarketing_action_operation = 43; - - // A shared criterion mutate operation. - SharedCriterionOperation shared_criterion_operation = 14; - - // A shared set mutate operation. - SharedSetOperation shared_set_operation = 15; - - // A user list mutate operation. - UserListOperation user_list_operation = 16; - } -} - -// Response message for the resource mutate. -message MutateOperationResponse { - // The mutate response. - oneof response { - // The result for the ad group ad label mutate. - MutateAdGroupAdLabelResult ad_group_ad_label_result = 17; - - // The result for the ad group ad mutate. - MutateAdGroupAdResult ad_group_ad_result = 1; - - // The result for the ad group bid modifier mutate. - MutateAdGroupBidModifierResult ad_group_bid_modifier_result = 2; - - // The result for the ad group criterion label mutate. - MutateAdGroupCriterionLabelResult ad_group_criterion_label_result = 18; - - // The result for the ad group criterion mutate. - MutateAdGroupCriterionResult ad_group_criterion_result = 3; - - // The result for the ad group extension setting mutate. - MutateAdGroupExtensionSettingResult ad_group_extension_setting_result = 19; - - // The result for the ad group feed mutate. - MutateAdGroupFeedResult ad_group_feed_result = 20; - - // The result for the ad group label mutate. - MutateAdGroupLabelResult ad_group_label_result = 21; - - // The result for the ad group mutate. - MutateAdGroupResult ad_group_result = 5; - - // The result for the ad parameter mutate. - MutateAdParameterResult ad_parameter_result = 22; - - // The result for the ad mutate. - MutateAdResult ad_result = 49; - - // The result for the asset mutate. - MutateAssetResult asset_result = 23; - - // The result for the bidding strategy mutate. - MutateBiddingStrategyResult bidding_strategy_result = 6; - - // The result for the campaign asset mutate. - MutateCampaignAssetResult campaign_asset_result = 52; - - // The result for the campaign bid modifier mutate. - MutateCampaignBidModifierResult campaign_bid_modifier_result = 7; - - // The result for the campaign budget mutate. - MutateCampaignBudgetResult campaign_budget_result = 8; - - // The result for the campaign criterion mutate. - MutateCampaignCriterionResult campaign_criterion_result = 13; - - // The result for the campaign draft mutate. - MutateCampaignDraftResult campaign_draft_result = 24; - - // The result for the campaign experiment mutate. - MutateCampaignExperimentResult campaign_experiment_result = 25; - - // The result for the campaign extension setting mutate. - MutateCampaignExtensionSettingResult campaign_extension_setting_result = 26; - - // The result for the campaign feed mutate. - MutateCampaignFeedResult campaign_feed_result = 27; - - // The result for the campaign label mutate. - MutateCampaignLabelResult campaign_label_result = 28; - - // The result for the campaign mutate. - MutateCampaignResult campaign_result = 10; - - // The result for the campaign shared set mutate. - MutateCampaignSharedSetResult campaign_shared_set_result = 11; - - // The result for the conversion action mutate. - MutateConversionActionResult conversion_action_result = 12; - - // The result for the customer extension setting mutate. - MutateCustomerExtensionSettingResult customer_extension_setting_result = 30; - - // The result for the customer feed mutate. - MutateCustomerFeedResult customer_feed_result = 31; - - // The result for the customer label mutate. - MutateCustomerLabelResult customer_label_result = 32; - - // The result for the customer negative criterion mutate. - MutateCustomerNegativeCriteriaResult customer_negative_criterion_result = 34; - - // The result for the customer mutate. - MutateCustomerResult customer_result = 35; - - // The result for the extension feed item mutate. - MutateExtensionFeedItemResult extension_feed_item_result = 36; - - // The result for the feed item mutate. - MutateFeedItemResult feed_item_result = 37; - - // The result for the feed item set mutate. - MutateFeedItemSetResult feed_item_set_result = 53; - - // The result for the feed item set link mutate. - MutateFeedItemSetLinkResult feed_item_set_link_result = 54; - - // The result for the feed item target mutate. - MutateFeedItemTargetResult feed_item_target_result = 38; - - // The result for the feed mapping mutate. - MutateFeedMappingResult feed_mapping_result = 39; - - // The result for the feed mutate. - MutateFeedResult feed_result = 40; - - // The result for the keyword plan ad group mutate. - MutateKeywordPlanAdGroupResult keyword_plan_ad_group_result = 44; - - // The result for the keyword plan campaign mutate. - MutateKeywordPlanCampaignResult keyword_plan_campaign_result = 45; - - // The result for the keyword plan ad group keyword mutate. - MutateKeywordPlanAdGroupKeywordResult keyword_plan_ad_group_keyword_result = 50; - - // The result for the keyword plan campaign keyword mutate. - MutateKeywordPlanCampaignKeywordResult keyword_plan_campaign_keyword_result = 51; - - // The result for the keyword plan mutate. - MutateKeywordPlansResult keyword_plan_result = 48; - - // The result for the label mutate. - MutateLabelResult label_result = 41; - - // The result for the media file mutate. - MutateMediaFileResult media_file_result = 42; - - // The result for the remarketing action mutate. - MutateRemarketingActionResult remarketing_action_result = 43; - - // The result for the shared criterion mutate. - MutateSharedCriterionResult shared_criterion_result = 14; - - // The result for the shared set mutate. - MutateSharedSetResult shared_set_result = 15; - - // The result for the user list mutate. - MutateUserListResult user_list_result = 16; - } -} diff --git a/google/ads/googleads/v6/services/group_placement_view_service.proto b/google/ads/googleads/v6/services/group_placement_view_service.proto deleted file mode 100644 index db7fc3686..000000000 --- a/google/ads/googleads/v6/services/group_placement_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/group_placement_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "GroupPlacementViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Group Placement View service. - -// Service to fetch Group Placement views. -service GroupPlacementViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Group Placement view in full detail. - rpc GetGroupPlacementView(GetGroupPlacementViewRequest) returns (google.ads.googleads.v6.resources.GroupPlacementView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/groupPlacementViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [GroupPlacementViewService.GetGroupPlacementView][google.ads.googleads.v6.services.GroupPlacementViewService.GetGroupPlacementView]. -message GetGroupPlacementViewRequest { - // Required. The resource name of the Group Placement view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/GroupPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/hotel_group_view_service.proto b/google/ads/googleads/v6/services/hotel_group_view_service.proto deleted file mode 100644 index fd85d9885..000000000 --- a/google/ads/googleads/v6/services/hotel_group_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/hotel_group_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "HotelGroupViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Hotel Group View Service. - -// Service to manage Hotel Group Views. -service HotelGroupViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Hotel Group View in full detail. - rpc GetHotelGroupView(GetHotelGroupViewRequest) returns (google.ads.googleads.v6.resources.HotelGroupView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/hotelGroupViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [HotelGroupViewService.GetHotelGroupView][google.ads.googleads.v6.services.HotelGroupViewService.GetHotelGroupView]. -message GetHotelGroupViewRequest { - // Required. Resource name of the Hotel Group View to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelGroupView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/hotel_performance_view_service.proto b/google/ads/googleads/v6/services/hotel_performance_view_service.proto deleted file mode 100644 index 05ee08691..000000000 --- a/google/ads/googleads/v6/services/hotel_performance_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/hotel_performance_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "HotelPerformanceViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Hotel Performance View Service. - -// Service to manage Hotel Performance Views. -service HotelPerformanceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Hotel Performance View in full detail. - rpc GetHotelPerformanceView(GetHotelPerformanceViewRequest) returns (google.ads.googleads.v6.resources.HotelPerformanceView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/hotelPerformanceView}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [HotelPerformanceViewService.GetHotelPerformanceView][google.ads.googleads.v6.services.HotelPerformanceViewService.GetHotelPerformanceView]. -message GetHotelPerformanceViewRequest { - // Required. Resource name of the Hotel Performance View to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/HotelPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/income_range_view_service.proto b/google/ads/googleads/v6/services/income_range_view_service.proto deleted file mode 100644 index 054675ec2..000000000 --- a/google/ads/googleads/v6/services/income_range_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/income_range_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "IncomeRangeViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Income Range View service. - -// Service to manage income range views. -service IncomeRangeViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested income range view in full detail. - rpc GetIncomeRangeView(GetIncomeRangeViewRequest) returns (google.ads.googleads.v6.resources.IncomeRangeView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/incomeRangeViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [IncomeRangeViewService.GetIncomeRangeView][google.ads.googleads.v6.services.IncomeRangeViewService.GetIncomeRangeView]. -message GetIncomeRangeViewRequest { - // Required. The resource name of the income range view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/IncomeRangeView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/invoice_service.proto b/google/ads/googleads/v6/services/invoice_service.proto deleted file mode 100644 index 5ffc39eda..000000000 --- a/google/ads/googleads/v6/services/invoice_service.proto +++ /dev/null @@ -1,73 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/month_of_year.proto"; -import "google/ads/googleads/v6/resources/invoice.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "InvoiceServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Invoice service. - -// A service to fetch invoices issued for a billing setup during a given month. -service InvoiceService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns all invoices associated with a billing setup, for a given month. - rpc ListInvoices(ListInvoicesRequest) returns (ListInvoicesResponse) { - option (google.api.http) = { - get: "/v6/customers/{customer_id=*}/invoices" - }; - option (google.api.method_signature) = "customer_id,billing_setup,issue_year,issue_month"; - } -} - -// Request message for fetching the invoices of a given billing setup that were -// issued during a given month. -message ListInvoicesRequest { - // Required. The ID of the customer to fetch invoices for. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The billing setup resource name of the requested invoices. - // - // `customers/{customer_id}/billingSetups/{billing_setup_id}` - string billing_setup = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. The issue year to retrieve invoices, in yyyy format. Only - // invoices issued in 2019 or later can be retrieved. - string issue_year = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The issue month to retrieve invoices. - google.ads.googleads.v6.enums.MonthOfYearEnum.MonthOfYear issue_month = 4 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [InvoiceService.ListInvoices][google.ads.googleads.v6.services.InvoiceService.ListInvoices]. -message ListInvoicesResponse { - // The list of invoices that match the billing setup and time period. - repeated google.ads.googleads.v6.resources.Invoice invoices = 1; -} diff --git a/google/ads/googleads/v6/services/keyword_plan_ad_group_keyword_service.proto b/google/ads/googleads/v6/services/keyword_plan_ad_group_keyword_service.proto deleted file mode 100644 index cc9c6f119..000000000 --- a/google/ads/googleads/v6/services/keyword_plan_ad_group_keyword_service.proto +++ /dev/null @@ -1,143 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/keyword_plan_ad_group_keyword.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupKeywordServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the keyword plan ad group keyword service. - -// Service to manage Keyword Plan ad group keywords. KeywordPlanAdGroup is -// required to add ad group keywords. Positive and negative keywords are -// supported. A maximum of 10,000 positive keywords are allowed per keyword -// plan. A maximum of 1,000 negative keywords are allower per keyword plan. This -// includes campaign negative keywords and ad group negative keywords. -service KeywordPlanAdGroupKeywordService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Keyword Plan ad group keyword in full detail. - rpc GetKeywordPlanAdGroupKeyword(GetKeywordPlanAdGroupKeywordRequest) returns (google.ads.googleads.v6.resources.KeywordPlanAdGroupKeyword) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan ad group keywords. Operation - // statuses are returned. - rpc MutateKeywordPlanAdGroupKeywords(MutateKeywordPlanAdGroupKeywordsRequest) returns (MutateKeywordPlanAdGroupKeywordsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword][google.ads.googleads.v6.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword]. -message GetKeywordPlanAdGroupKeywordRequest { - // Required. The resource name of the ad group keyword to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - } - ]; -} - -// Request message for -// [KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords][google.ads.googleads.v6.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords]. -message MutateKeywordPlanAdGroupKeywordsRequest { - // Required. The ID of the customer whose Keyword Plan ad group keywords are being - // modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan ad group - // keywords. - repeated KeywordPlanAdGroupKeywordOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan ad group -// keyword. -message KeywordPlanAdGroupKeywordOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // ad group keyword. - google.ads.googleads.v6.resources.KeywordPlanAdGroupKeyword create = 1; - - // Update operation: The Keyword Plan ad group keyword is expected to have a - // valid resource name. - google.ads.googleads.v6.resources.KeywordPlanAdGroupKeyword update = 2; - - // Remove operation: A resource name for the removed Keyword Plan ad group - // keyword is expected, in this format: - // - // `customers/{customer_id}/keywordPlanAdGroupKeywords/{kp_ad_group_keyword_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" - }]; - } -} - -// Response message for a Keyword Plan ad group keyword mutate. -message MutateKeywordPlanAdGroupKeywordsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlanAdGroupKeywordResult results = 2; -} - -// The result for the Keyword Plan ad group keyword mutate. -message MutateKeywordPlanAdGroupKeywordResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/keyword_plan_ad_group_service.proto b/google/ads/googleads/v6/services/keyword_plan_ad_group_service.proto deleted file mode 100644 index 0a1c33b0d..000000000 --- a/google/ads/googleads/v6/services/keyword_plan_ad_group_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/keyword_plan_ad_group.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanAdGroupServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the keyword plan ad group service. - -// Service to manage Keyword Plan ad groups. -service KeywordPlanAdGroupService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Keyword Plan ad group in full detail. - rpc GetKeywordPlanAdGroup(GetKeywordPlanAdGroupRequest) returns (google.ads.googleads.v6.resources.KeywordPlanAdGroup) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/keywordPlanAdGroups/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan ad groups. Operation statuses are - // returned. - rpc MutateKeywordPlanAdGroups(MutateKeywordPlanAdGroupsRequest) returns (MutateKeywordPlanAdGroupsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/keywordPlanAdGroups:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [KeywordPlanAdGroupService.GetKeywordPlanAdGroup][google.ads.googleads.v6.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup]. -message GetKeywordPlanAdGroupRequest { - // Required. The resource name of the Keyword Plan ad group to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - } - ]; -} - -// Request message for [KeywordPlanAdGroupService.MutateKeywordPlanAdGroups][google.ads.googleads.v6.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups]. -message MutateKeywordPlanAdGroupsRequest { - // Required. The ID of the customer whose Keyword Plan ad groups are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan ad groups. - repeated KeywordPlanAdGroupOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan ad group. -message KeywordPlanAdGroupOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // ad group. - google.ads.googleads.v6.resources.KeywordPlanAdGroup create = 1; - - // Update operation: The Keyword Plan ad group is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.KeywordPlanAdGroup update = 2; - - // Remove operation: A resource name for the removed Keyword Plan ad group - // is expected, in this format: - // - // `customers/{customer_id}/keywordPlanAdGroups/{kp_ad_group_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanAdGroup" - }]; - } -} - -// Response message for a Keyword Plan ad group mutate. -message MutateKeywordPlanAdGroupsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. The order of the results is determined by the - // order of the keywords in the original request. - repeated MutateKeywordPlanAdGroupResult results = 2; -} - -// The result for the Keyword Plan ad group mutate. -message MutateKeywordPlanAdGroupResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/keyword_plan_campaign_keyword_service.proto b/google/ads/googleads/v6/services/keyword_plan_campaign_keyword_service.proto deleted file mode 100644 index b8cfe9bce..000000000 --- a/google/ads/googleads/v6/services/keyword_plan_campaign_keyword_service.proto +++ /dev/null @@ -1,141 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/keyword_plan_campaign_keyword.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignKeywordServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the keyword plan campaign keyword service. - -// Service to manage Keyword Plan campaign keywords. KeywordPlanCampaign is -// required to add the campaign keywords. Only negative keywords are supported. -// A maximum of 1000 negative keywords are allowed per plan. This includes both -// campaign negative keywords and ad group negative keywords. -service KeywordPlanCampaignKeywordService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested plan in full detail. - rpc GetKeywordPlanCampaignKeyword(GetKeywordPlanCampaignKeywordRequest) returns (google.ads.googleads.v6.resources.KeywordPlanCampaignKeyword) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan campaign keywords. Operation - // statuses are returned. - rpc MutateKeywordPlanCampaignKeywords(MutateKeywordPlanCampaignKeywordsRequest) returns (MutateKeywordPlanCampaignKeywordsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for -// [KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword][google.ads.googleads.v6.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword]. -message GetKeywordPlanCampaignKeywordRequest { - // Required. The resource name of the plan to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - } - ]; -} - -// Request message for -// [KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords][google.ads.googleads.v6.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords]. -message MutateKeywordPlanCampaignKeywordsRequest { - // Required. The ID of the customer whose campaign keywords are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan campaign - // keywords. - repeated KeywordPlanCampaignKeywordOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan campaign -// keyword. -message KeywordPlanCampaignKeywordOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // campaign keyword. - google.ads.googleads.v6.resources.KeywordPlanCampaignKeyword create = 1; - - // Update operation: The Keyword Plan campaign keyword expected to have a - // valid resource name. - google.ads.googleads.v6.resources.KeywordPlanCampaignKeyword update = 2; - - // Remove operation: A resource name for the removed Keyword Plan campaign - // keywords expected in this format: - // - // `customers/{customer_id}/keywordPlanCampaignKeywords/{kp_campaign_keyword_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" - }]; - } -} - -// Response message for a Keyword Plan campaign keyword mutate. -message MutateKeywordPlanCampaignKeywordsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlanCampaignKeywordResult results = 2; -} - -// The result for the Keyword Plan campaign keyword mutate. -message MutateKeywordPlanCampaignKeywordResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/keyword_plan_campaign_service.proto b/google/ads/googleads/v6/services/keyword_plan_campaign_service.proto deleted file mode 100644 index c875a3d61..000000000 --- a/google/ads/googleads/v6/services/keyword_plan_campaign_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/keyword_plan_campaign.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanCampaignServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the keyword plan campaign service. - -// Service to manage Keyword Plan campaigns. -service KeywordPlanCampaignService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Keyword Plan campaign in full detail. - rpc GetKeywordPlanCampaign(GetKeywordPlanCampaignRequest) returns (google.ads.googleads.v6.resources.KeywordPlanCampaign) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/keywordPlanCampaigns/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes Keyword Plan campaigns. Operation statuses are - // returned. - rpc MutateKeywordPlanCampaigns(MutateKeywordPlanCampaignsRequest) returns (MutateKeywordPlanCampaignsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/keywordPlanCampaigns:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [KeywordPlanCampaignService.GetKeywordPlanCampaign][google.ads.googleads.v6.services.KeywordPlanCampaignService.GetKeywordPlanCampaign]. -message GetKeywordPlanCampaignRequest { - // Required. The resource name of the Keyword Plan campaign to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - } - ]; -} - -// Request message for -// [KeywordPlanCampaignService.MutateKeywordPlanCampaigns][google.ads.googleads.v6.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns]. -message MutateKeywordPlanCampaignsRequest { - // Required. The ID of the customer whose Keyword Plan campaigns are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual Keyword Plan campaigns. - repeated KeywordPlanCampaignOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a Keyword Plan campaign. -message KeywordPlanCampaignOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new Keyword Plan - // campaign. - google.ads.googleads.v6.resources.KeywordPlanCampaign create = 1; - - // Update operation: The Keyword Plan campaign is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.KeywordPlanCampaign update = 2; - - // Remove operation: A resource name for the removed Keyword Plan campaign - // is expected, in this format: - // - // `customers/{customer_id}/keywordPlanCampaigns/{keywordPlan_campaign_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlanCampaign" - }]; - } -} - -// Response message for a Keyword Plan campaign mutate. -message MutateKeywordPlanCampaignsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlanCampaignResult results = 2; -} - -// The result for the Keyword Plan campaign mutate. -message MutateKeywordPlanCampaignResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/keyword_plan_idea_service.proto b/google/ads/googleads/v6/services/keyword_plan_idea_service.proto deleted file mode 100644 index 00e254be8..000000000 --- a/google/ads/googleads/v6/services/keyword_plan_idea_service.proto +++ /dev/null @@ -1,154 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/common/keyword_plan_common.proto"; -import "google/ads/googleads/v6/enums/keyword_plan_network.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanIdeaServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the keyword plan idea service. - -// Service to generate keyword ideas. -service KeywordPlanIdeaService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns a list of keyword ideas. - rpc GenerateKeywordIdeas(GenerateKeywordIdeasRequest) returns (GenerateKeywordIdeaResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}:generateKeywordIdeas" - body: "*" - }; - } -} - -// Request message for [KeywordPlanIdeaService.GenerateKeywordIdeas][google.ads.googleads.v6.services.KeywordPlanIdeaService.GenerateKeywordIdeas]. -message GenerateKeywordIdeasRequest { - // The ID of the customer with the recommendation. - string customer_id = 1; - - // The resource name of the language to target. - // Required - optional string language = 14; - - // The resource names of the location to target. - // Max 10 - repeated string geo_target_constants = 15; - - // If true, adult keywords will be included in response. - // The default value is false. - bool include_adult_keywords = 10; - - // Token of the page to retrieve. If not specified, the first - // page of results will be returned. To request next page of results use the - // value obtained from `next_page_token` in the previous response. - // The request fields must match across pages. - string page_token = 12; - - // Number of results to retrieve in a single page. - // A maximum of 10,000 results may be returned, if the page_size - // exceeds this, it is ignored. - // If unspecified, at most 10,000 results will be returned. - // The server may decide to further limit the number of returned resources. - // If the response contains fewer than 10,000 results it may not be assumed - // as last page of results. - int32 page_size = 13; - - // Targeting network. - google.ads.googleads.v6.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork keyword_plan_network = 9; - - // The type of seed to generate keyword ideas. - oneof seed { - // A Keyword and a specific Url to generate ideas from - // e.g. cars, www.example.com/cars. - KeywordAndUrlSeed keyword_and_url_seed = 2; - - // A Keyword or phrase to generate ideas from, e.g. cars. - KeywordSeed keyword_seed = 3; - - // A specific url to generate ideas from, e.g. www.example.com/cars. - UrlSeed url_seed = 5; - - // The site to generate ideas from, e.g. www.example.com. - SiteSeed site_seed = 11; - } -} - -// Keyword And Url Seed -message KeywordAndUrlSeed { - // The URL to crawl in order to generate keyword ideas. - optional string url = 3; - - // Requires at least one keyword. - repeated string keywords = 4; -} - -// Keyword Seed -message KeywordSeed { - // Requires at least one keyword. - repeated string keywords = 2; -} - -// Site Seed -message SiteSeed { - // The domain name of the site. If the customer requesting the ideas doesn't - // own the site provided only public information is returned. - optional string site = 2; -} - -// Url Seed -message UrlSeed { - // The URL to crawl in order to generate keyword ideas. - optional string url = 2; -} - -// Response message for [KeywordPlanIdeaService.GenerateKeywordIdeas][google.ads.googleads.v6.services.KeywordPlanIdeaService.GenerateKeywordIdeas]. -message GenerateKeywordIdeaResponse { - // Results of generating keyword ideas. - repeated GenerateKeywordIdeaResult results = 1; - - // Pagination token used to retrieve the next page of results. - // Pass the content of this string as the `page_token` attribute of - // the next request. - // `next_page_token` is not returned for the last page. - string next_page_token = 2; - - // Total number of results available. - int64 total_size = 3; -} - -// The result of generating keyword ideas. -message GenerateKeywordIdeaResult { - // Text of the keyword idea. - // As in Keyword Plan historical metrics, this text may not be an actual - // keyword, but the canonical form of multiple keywords. - // See KeywordPlanKeywordHistoricalMetrics message in KeywordPlanService. - optional string text = 5; - - // The historical metrics for the keyword - google.ads.googleads.v6.common.KeywordPlanHistoricalMetrics keyword_idea_metrics = 3; -} diff --git a/google/ads/googleads/v6/services/keyword_plan_service.proto b/google/ads/googleads/v6/services/keyword_plan_service.proto deleted file mode 100644 index 28aba3b62..000000000 --- a/google/ads/googleads/v6/services/keyword_plan_service.proto +++ /dev/null @@ -1,378 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/common/keyword_plan_common.proto"; -import "google/ads/googleads/v6/resources/keyword_plan.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordPlanServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the keyword plan service. - -// Service to manage keyword plans. -service KeywordPlanService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested plan in full detail. - rpc GetKeywordPlan(GetKeywordPlanRequest) returns (google.ads.googleads.v6.resources.KeywordPlan) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/keywordPlans/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes keyword plans. Operation statuses are - // returned. - rpc MutateKeywordPlans(MutateKeywordPlansRequest) returns (MutateKeywordPlansResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/keywordPlans:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Returns the requested Keyword Plan forecast curve. - // Only the bidding strategy is considered for generating forecast curve. - // The bidding strategy value specified in the plan is ignored. - // - // To generate a forecast at a value specified in the plan, use - // KeywordPlanService.GenerateForecastMetrics. - rpc GenerateForecastCurve(GenerateForecastCurveRequest) returns (GenerateForecastCurveResponse) { - option (google.api.http) = { - post: "/v6/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" - body: "*" - }; - option (google.api.method_signature) = "keyword_plan"; - } - - // Returns a forecast in the form of a time series for the Keyword Plan over - // the next 52 weeks. - // (1) Forecasts closer to the current date are generally more accurate than - // further out. - // - // (2) The forecast reflects seasonal trends using current and - // prior traffic patterns. The forecast period of the plan is ignored. - rpc GenerateForecastTimeSeries(GenerateForecastTimeSeriesRequest) returns (GenerateForecastTimeSeriesResponse) { - option (google.api.http) = { - post: "/v6/{keyword_plan=customers/*/keywordPlans/*}:generateForecastTimeSeries" - body: "*" - }; - option (google.api.method_signature) = "keyword_plan"; - } - - // Returns the requested Keyword Plan forecasts. - rpc GenerateForecastMetrics(GenerateForecastMetricsRequest) returns (GenerateForecastMetricsResponse) { - option (google.api.http) = { - post: "/v6/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" - body: "*" - }; - option (google.api.method_signature) = "keyword_plan"; - } - - // Returns the requested Keyword Plan historical metrics. - rpc GenerateHistoricalMetrics(GenerateHistoricalMetricsRequest) returns (GenerateHistoricalMetricsResponse) { - option (google.api.http) = { - post: "/v6/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" - body: "*" - }; - option (google.api.method_signature) = "keyword_plan"; - } -} - -// Request message for [KeywordPlanService.GetKeywordPlan][google.ads.googleads.v6.services.KeywordPlanService.GetKeywordPlan]. -message GetKeywordPlanRequest { - // Required. The resource name of the plan to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Request message for [KeywordPlanService.MutateKeywordPlans][google.ads.googleads.v6.services.KeywordPlanService.MutateKeywordPlans]. -message MutateKeywordPlansRequest { - // Required. The ID of the customer whose keyword plans are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual keyword plans. - repeated KeywordPlanOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update, remove) on a keyword plan. -message KeywordPlanOperation { - // The FieldMask that determines which resource fields are modified in an - // update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new keyword plan. - google.ads.googleads.v6.resources.KeywordPlan create = 1; - - // Update operation: The keyword plan is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.KeywordPlan update = 2; - - // Remove operation: A resource name for the removed keyword plan is - // expected in this format: - // - // `customers/{customer_id}/keywordPlans/{keyword_plan_id}` - string remove = 3 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - }]; - } -} - -// Response message for a keyword plan mutate. -message MutateKeywordPlansResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateKeywordPlansResult results = 2; -} - -// The result for the keyword plan mutate. -message MutateKeywordPlansResult { - // Returned for successful operations. - string resource_name = 1; -} - -// Request message for [KeywordPlanService.GenerateForecastCurve][google.ads.googleads.v6.services.KeywordPlanService.GenerateForecastCurve]. -message GenerateForecastCurveRequest { - // Required. The resource name of the keyword plan to be forecasted. - string keyword_plan = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Response message for [KeywordPlanService.GenerateForecastCurve][google.ads.googleads.v6.services.KeywordPlanService.GenerateForecastCurve]. -message GenerateForecastCurveResponse { - // List of forecast curves for the keyword plan campaign. - // One maximum. - repeated KeywordPlanCampaignForecastCurve campaign_forecast_curves = 1; -} - -// Request message for [KeywordPlanService.GenerateForecastTimeSeries][google.ads.googleads.v6.services.KeywordPlanService.GenerateForecastTimeSeries]. -message GenerateForecastTimeSeriesRequest { - // Required. The resource name of the keyword plan to be forecasted. - string keyword_plan = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Response message for [KeywordPlanService.GenerateForecastTimeSeries][google.ads.googleads.v6.services.KeywordPlanService.GenerateForecastTimeSeries]. -message GenerateForecastTimeSeriesResponse { - // List of weekly time series forecasts for the keyword plan campaign. - // One maximum. - repeated KeywordPlanWeeklyTimeSeriesForecast weekly_time_series_forecasts = 1; -} - -// Request message for [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v6.services.KeywordPlanService.GenerateForecastMetrics]. -message GenerateForecastMetricsRequest { - // Required. The resource name of the keyword plan to be forecasted. - string keyword_plan = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Response message for [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v6.services.KeywordPlanService.GenerateForecastMetrics]. -message GenerateForecastMetricsResponse { - // List of campaign forecasts. - // One maximum. - repeated KeywordPlanCampaignForecast campaign_forecasts = 1; - - // List of ad group forecasts. - repeated KeywordPlanAdGroupForecast ad_group_forecasts = 2; - - // List of keyword forecasts. - repeated KeywordPlanKeywordForecast keyword_forecasts = 3; -} - -// A campaign forecast. -message KeywordPlanCampaignForecast { - // The resource name of the Keyword Plan campaign related to the forecast. - // - // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` - optional string keyword_plan_campaign = 3; - - // The forecast for the Keyword Plan campaign. - ForecastMetrics campaign_forecast = 2; -} - -// An ad group forecast. -message KeywordPlanAdGroupForecast { - // The resource name of the Keyword Plan ad group related to the forecast. - // - // `customers/{customer_id}/keywordPlanAdGroups/{keyword_plan_ad_group_id}` - optional string keyword_plan_ad_group = 3; - - // The forecast for the Keyword Plan ad group. - ForecastMetrics ad_group_forecast = 2; -} - -// A keyword forecast. -message KeywordPlanKeywordForecast { - // The resource name of the Keyword Plan keyword related to the forecast. - // - // `customers/{customer_id}/keywordPlanAdGroupKeywords/{keyword_plan_ad_group_keyword_id}` - optional string keyword_plan_ad_group_keyword = 3; - - // The forecast for the Keyword Plan keyword. - ForecastMetrics keyword_forecast = 2; -} - -// The forecast curve for the campaign. -message KeywordPlanCampaignForecastCurve { - // The resource name of the Keyword Plan campaign related to the forecast. - // - // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` - optional string keyword_plan_campaign = 3; - - // The max cpc bid forecast curve for the campaign. - KeywordPlanMaxCpcBidForecastCurve max_cpc_bid_forecast_curve = 2; -} - -// The max cpc bid forecast curve. -message KeywordPlanMaxCpcBidForecastCurve { - // The forecasts for the Keyword Plan campaign at different max CPC bids. - repeated KeywordPlanMaxCpcBidForecast max_cpc_bid_forecasts = 1; -} - -// The forecast of the campaign at a specific bid. -message KeywordPlanMaxCpcBidForecast { - // The max cpc bid in micros. - optional int64 max_cpc_bid_micros = 3; - - // The forecast for the Keyword Plan campaign at the specific bid. - ForecastMetrics max_cpc_bid_forecast = 2; -} - -// The weekly time series forecast for the keyword plan campaign. -message KeywordPlanWeeklyTimeSeriesForecast { - // The resource name of the Keyword Plan campaign related to the forecast. - // - // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` - optional string keyword_plan_campaign = 1; - - // The forecasts for the Keyword Plan campaign at different max CPC bids. - repeated KeywordPlanWeeklyForecast weekly_forecasts = 2; -} - -// The forecast of the campaign for the week starting start_date. -message KeywordPlanWeeklyForecast { - // The start date, in yyyy-mm-dd format. This date is inclusive. - optional string start_date = 1; - - // The forecast for the Keyword Plan campaign for the week. - ForecastMetrics forecast = 2; -} - -// Forecast metrics. -message ForecastMetrics { - // Impressions - optional double impressions = 7; - - // Ctr - optional double ctr = 8; - - // AVG cpc - optional int64 average_cpc = 9; - - // Clicks - optional double clicks = 10; - - // Cost - optional int64 cost_micros = 11; -} - -// Request message for [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v6.services.KeywordPlanService.GenerateHistoricalMetrics]. -message GenerateHistoricalMetricsRequest { - // Required. The resource name of the keyword plan of which historical metrics are - // requested. - string keyword_plan = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordPlan" - } - ]; -} - -// Response message for [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v6.services.KeywordPlanService.GenerateHistoricalMetrics]. -message GenerateHistoricalMetricsResponse { - // List of keyword historical metrics. - repeated KeywordPlanKeywordHistoricalMetrics metrics = 1; -} - -// A keyword historical metrics. -message KeywordPlanKeywordHistoricalMetrics { - // The text of the query associated with one or more ad_group_keywords in the - // plan. - // - // Note that we de-dupe your keywords list, eliminating close variants before - // returning the plan's keywords as text. For example, if your plan originally - // contained the keywords 'car' and 'cars', the returned search query will - // only contain 'cars'. - // Starting V5, the list of de-duped queries will be included in - // close_variants field. - optional string search_query = 4; - - // The list of close variant queries for search_query whose search results - // are combined into the search_query. - repeated string close_variants = 3; - - // The historical metrics for the query associated with one or more - // ad_group_keywords in the plan. - google.ads.googleads.v6.common.KeywordPlanHistoricalMetrics keyword_metrics = 2; -} diff --git a/google/ads/googleads/v6/services/keyword_view_service.proto b/google/ads/googleads/v6/services/keyword_view_service.proto deleted file mode 100644 index ad2c7402e..000000000 --- a/google/ads/googleads/v6/services/keyword_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/keyword_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "KeywordViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Keyword View service. - -// Service to manage keyword views. -service KeywordViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested keyword view in full detail. - rpc GetKeywordView(GetKeywordViewRequest) returns (google.ads.googleads.v6.resources.KeywordView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/keywordViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [KeywordViewService.GetKeywordView][google.ads.googleads.v6.services.KeywordViewService.GetKeywordView]. -message GetKeywordViewRequest { - // Required. The resource name of the keyword view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/KeywordView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/label_service.proto b/google/ads/googleads/v6/services/label_service.proto deleted file mode 100644 index 4a7239487..000000000 --- a/google/ads/googleads/v6/services/label_service.proto +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/label.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LabelServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Service to manage labels. -service LabelService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested label in full detail. - rpc GetLabel(GetLabelRequest) returns (google.ads.googleads.v6.resources.Label) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/labels/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes labels. Operation statuses are returned. - rpc MutateLabels(MutateLabelsRequest) returns (MutateLabelsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/labels:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [LabelService.GetLabel][google.ads.googleads.v6.services.LabelService.GetLabel]. -message GetLabelRequest { - // Required. The resource name of the label to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Label" - } - ]; -} - -// Request message for [LabelService.MutateLabels][google.ads.googleads.v6.services.LabelService.MutateLabels]. -message MutateLabelsRequest { - // Required. ID of the customer whose labels are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on labels. - repeated LabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, remove, update) on a label. -message LabelOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new label. - google.ads.googleads.v6.resources.Label create = 1; - - // Update operation: The label is expected to have a valid resource name. - google.ads.googleads.v6.resources.Label update = 2; - - // Remove operation: A resource name for the label being removed, in - // this format: - // - // `customers/{customer_id}/labels/{label_id}` - string remove = 3; - } -} - -// Response message for a labels mutate. -message MutateLabelsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateLabelResult results = 2; -} - -// The result for a label mutate. -message MutateLabelResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated label with only mutable fields after mutate. The field will - // only be returned when response_content_type is set to "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.Label label = 2; -} diff --git a/google/ads/googleads/v6/services/landing_page_view_service.proto b/google/ads/googleads/v6/services/landing_page_view_service.proto deleted file mode 100644 index b7e601128..000000000 --- a/google/ads/googleads/v6/services/landing_page_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/landing_page_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LandingPageViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the landing page view service. - -// Service to fetch landing page views. -service LandingPageViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested landing page view in full detail. - rpc GetLandingPageView(GetLandingPageViewRequest) returns (google.ads.googleads.v6.resources.LandingPageView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/landingPageViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [LandingPageViewService.GetLandingPageView][google.ads.googleads.v6.services.LandingPageViewService.GetLandingPageView]. -message GetLandingPageViewRequest { - // Required. The resource name of the landing page view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LandingPageView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/language_constant_service.proto b/google/ads/googleads/v6/services/language_constant_service.proto deleted file mode 100644 index 9d9bc3b2a..000000000 --- a/google/ads/googleads/v6/services/language_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/language_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LanguageConstantServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the language constant service. - -// Service to fetch language constants. -service LanguageConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested language constant. - rpc GetLanguageConstant(GetLanguageConstantRequest) returns (google.ads.googleads.v6.resources.LanguageConstant) { - option (google.api.http) = { - get: "/v6/{resource_name=languageConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [LanguageConstantService.GetLanguageConstant][google.ads.googleads.v6.services.LanguageConstantService.GetLanguageConstant]. -message GetLanguageConstantRequest { - // Required. Resource name of the language constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LanguageConstant" - } - ]; -} diff --git a/google/ads/googleads/v6/services/location_view_service.proto b/google/ads/googleads/v6/services/location_view_service.proto deleted file mode 100644 index 8a9e8f502..000000000 --- a/google/ads/googleads/v6/services/location_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/location_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "LocationViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Location View service. - -// Service to fetch location views. -service LocationViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested location view in full detail. - rpc GetLocationView(GetLocationViewRequest) returns (google.ads.googleads.v6.resources.LocationView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/locationViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [LocationViewService.GetLocationView][google.ads.googleads.v6.services.LocationViewService.GetLocationView]. -message GetLocationViewRequest { - // Required. The resource name of the location view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/LocationView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/managed_placement_view_service.proto b/google/ads/googleads/v6/services/managed_placement_view_service.proto deleted file mode 100644 index dfdc53ebb..000000000 --- a/google/ads/googleads/v6/services/managed_placement_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/managed_placement_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ManagedPlacementViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Managed Placement View service. - -// Service to manage Managed Placement views. -service ManagedPlacementViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Managed Placement view in full detail. - rpc GetManagedPlacementView(GetManagedPlacementViewRequest) returns (google.ads.googleads.v6.resources.ManagedPlacementView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/managedPlacementViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ManagedPlacementViewService.GetManagedPlacementView][google.ads.googleads.v6.services.ManagedPlacementViewService.GetManagedPlacementView]. -message GetManagedPlacementViewRequest { - // Required. The resource name of the Managed Placement View to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ManagedPlacementView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/media_file_service.proto b/google/ads/googleads/v6/services/media_file_service.proto deleted file mode 100644 index d0aef0f71..000000000 --- a/google/ads/googleads/v6/services/media_file_service.proto +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/media_file.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MediaFileServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Media File service. - -// Service to manage media files. -service MediaFileService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested media file in full detail. - rpc GetMediaFile(GetMediaFileRequest) returns (google.ads.googleads.v6.resources.MediaFile) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/mediaFiles/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates media files. Operation statuses are returned. - rpc MutateMediaFiles(MutateMediaFilesRequest) returns (MutateMediaFilesResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/mediaFiles:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [MediaFileService.GetMediaFile][google.ads.googleads.v6.services.MediaFileService.GetMediaFile] -message GetMediaFileRequest { - // Required. The resource name of the media file to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MediaFile" - } - ]; -} - -// Request message for [MediaFileService.MutateMediaFiles][google.ads.googleads.v6.services.MediaFileService.MutateMediaFiles] -message MutateMediaFilesRequest { - // Required. The ID of the customer whose media files are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual media file. - repeated MediaFileOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation to create media file. -message MediaFileOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new media file. - google.ads.googleads.v6.resources.MediaFile create = 1; - } -} - -// Response message for a media file mutate. -message MutateMediaFilesResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateMediaFileResult results = 2; -} - -// The result for the media file mutate. -message MutateMediaFileResult { - // The resource name returned for successful operations. - string resource_name = 1; - - // The mutated media file with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.MediaFile media_file = 2; -} diff --git a/google/ads/googleads/v6/services/merchant_center_link_service.proto b/google/ads/googleads/v6/services/merchant_center_link_service.proto deleted file mode 100644 index bf0fedd3e..000000000 --- a/google/ads/googleads/v6/services/merchant_center_link_service.proto +++ /dev/null @@ -1,131 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/merchant_center_link.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MerchantCenterLinkServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the MerchantCenterLink service. - -// This service allows management of links between Google Ads and Google -// Merchant Center. -service MerchantCenterLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns Merchant Center links available for this customer. - rpc ListMerchantCenterLinks(ListMerchantCenterLinksRequest) returns (ListMerchantCenterLinksResponse) { - option (google.api.http) = { - get: "/v6/customers/{customer_id=*}/merchantCenterLinks" - }; - option (google.api.method_signature) = "customer_id"; - } - - // Returns the Merchant Center link in full detail. - rpc GetMerchantCenterLink(GetMerchantCenterLinkRequest) returns (google.ads.googleads.v6.resources.MerchantCenterLink) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/merchantCenterLinks/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Updates status or removes a Merchant Center link. - rpc MutateMerchantCenterLink(MutateMerchantCenterLinkRequest) returns (MutateMerchantCenterLinkResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/merchantCenterLinks:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operation"; - } -} - -// Request message for [MerchantCenterLinkService.ListMerchantCenterLinks][google.ads.googleads.v6.services.MerchantCenterLinkService.ListMerchantCenterLinks]. -message ListMerchantCenterLinksRequest { - // Required. The ID of the customer onto which to apply the Merchant Center link list - // operation. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [MerchantCenterLinkService.ListMerchantCenterLinks][google.ads.googleads.v6.services.MerchantCenterLinkService.ListMerchantCenterLinks]. -message ListMerchantCenterLinksResponse { - // Merchant Center links available for the requested customer - repeated google.ads.googleads.v6.resources.MerchantCenterLink merchant_center_links = 1; -} - -// Request message for [MerchantCenterLinkService.GetMerchantCenterLink][google.ads.googleads.v6.services.MerchantCenterLinkService.GetMerchantCenterLink]. -message GetMerchantCenterLinkRequest { - // Required. Resource name of the Merchant Center link. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MerchantCenterLink" - } - ]; -} - -// Request message for [MerchantCenterLinkService.MutateMerchantCenterLink][google.ads.googleads.v6.services.MerchantCenterLinkService.MutateMerchantCenterLink]. -message MutateMerchantCenterLinkRequest { - // Required. The ID of the customer being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The operation to perform on the link - MerchantCenterLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A single update on a Merchant Center link. -message MerchantCenterLinkOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 3; - - // The operation to perform - oneof operation { - // Update operation: The merchant center link is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.MerchantCenterLink update = 1; - - // Remove operation: A resource name for the removed merchant center link is - // expected, in this format: - // - // `customers/{customer_id}/merchantCenterLinks/{merchant_center_id}` - string remove = 2; - } -} - -// Response message for Merchant Center link mutate. -message MutateMerchantCenterLinkResponse { - // Result for the mutate. - MutateMerchantCenterLinkResult result = 2; -} - -// The result for the Merchant Center link mutate. -message MutateMerchantCenterLinkResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/mobile_app_category_constant_service.proto b/google/ads/googleads/v6/services/mobile_app_category_constant_service.proto deleted file mode 100644 index 30b368c6f..000000000 --- a/google/ads/googleads/v6/services/mobile_app_category_constant_service.proto +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/mobile_app_category_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MobileAppCategoryConstantServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Service to fetch mobile app category constants. -service MobileAppCategoryConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested mobile app category constant. - rpc GetMobileAppCategoryConstant(GetMobileAppCategoryConstantRequest) returns (google.ads.googleads.v6.resources.MobileAppCategoryConstant) { - option (google.api.http) = { - get: "/v6/{resource_name=mobileAppCategoryConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [MobileAppCategoryConstantService.GetMobileAppCategoryConstant][google.ads.googleads.v6.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant]. -message GetMobileAppCategoryConstantRequest { - // Required. Resource name of the mobile app category constant to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileAppCategoryConstant" - } - ]; -} diff --git a/google/ads/googleads/v6/services/mobile_device_constant_service.proto b/google/ads/googleads/v6/services/mobile_device_constant_service.proto deleted file mode 100644 index 6c1780a58..000000000 --- a/google/ads/googleads/v6/services/mobile_device_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/mobile_device_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "MobileDeviceConstantServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the mobile device constant service. - -// Service to fetch mobile device constants. -service MobileDeviceConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested mobile device constant in full detail. - rpc GetMobileDeviceConstant(GetMobileDeviceConstantRequest) returns (google.ads.googleads.v6.resources.MobileDeviceConstant) { - option (google.api.http) = { - get: "/v6/{resource_name=mobileDeviceConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [MobileDeviceConstantService.GetMobileDeviceConstant][google.ads.googleads.v6.services.MobileDeviceConstantService.GetMobileDeviceConstant]. -message GetMobileDeviceConstantRequest { - // Required. Resource name of the mobile device to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/MobileDeviceConstant" - } - ]; -} diff --git a/google/ads/googleads/v6/services/offline_user_data_job_service.proto b/google/ads/googleads/v6/services/offline_user_data_job_service.proto deleted file mode 100644 index 0d7d6c0ca..000000000 --- a/google/ads/googleads/v6/services/offline_user_data_job_service.proto +++ /dev/null @@ -1,170 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/common/offline_user_data.proto"; -import "google/ads/googleads/v6/resources/offline_user_data_job.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/longrunning/operations.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "OfflineUserDataJobServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the OfflineUserDataJobService. - -// Service to manage offline user data jobs. -service OfflineUserDataJobService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Creates an offline user data job. - rpc CreateOfflineUserDataJob(CreateOfflineUserDataJobRequest) returns (CreateOfflineUserDataJobResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/offlineUserDataJobs:create" - body: "*" - }; - option (google.api.method_signature) = "customer_id,job"; - } - - // Returns the offline user data job. - rpc GetOfflineUserDataJob(GetOfflineUserDataJobRequest) returns (google.ads.googleads.v6.resources.OfflineUserDataJob) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/offlineUserDataJobs/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Adds operations to the offline user data job. - rpc AddOfflineUserDataJobOperations(AddOfflineUserDataJobOperationsRequest) returns (AddOfflineUserDataJobOperationsResponse) { - option (google.api.http) = { - post: "/v6/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" - body: "*" - }; - option (google.api.method_signature) = "resource_name,operations"; - } - - // Runs the offline user data job. - // - // When finished, the long running operation will contain the processing - // result or failure information, if any. - rpc RunOfflineUserDataJob(RunOfflineUserDataJobRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v6/{resource_name=customers/*/offlineUserDataJobs/*}:run" - body: "*" - }; - option (google.api.method_signature) = "resource_name"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.protobuf.Empty" - }; - } -} - -// Request message for -// [OfflineUserDataJobService.CreateOfflineUserDataJob][google.ads.googleads.v6.services.OfflineUserDataJobService.CreateOfflineUserDataJob]. -message CreateOfflineUserDataJobRequest { - // Required. The ID of the customer for which to create an offline user data job. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The offline user data job to be created. - google.ads.googleads.v6.resources.OfflineUserDataJob job = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for -// [OfflineUserDataJobService.CreateOfflineUserDataJob][google.ads.googleads.v6.services.OfflineUserDataJobService.CreateOfflineUserDataJob]. -message CreateOfflineUserDataJobResponse { - // The resource name of the OfflineUserDataJob. - string resource_name = 1; -} - -// Request message for [OfflineUserDataJobService.GetOfflineUserDataJob][google.ads.googleads.v6.services.OfflineUserDataJobService.GetOfflineUserDataJob]. -message GetOfflineUserDataJobRequest { - // Required. The resource name of the OfflineUserDataJob to get. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; -} - -// Request message for [OfflineUserDataJobService.RunOfflineUserDataJob][google.ads.googleads.v6.services.OfflineUserDataJobService.RunOfflineUserDataJob]. -message RunOfflineUserDataJobRequest { - // Required. The resource name of the OfflineUserDataJob to run. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; -} - -// Request message for -// [OfflineUserDataJobService.AddOfflineUserDataJobOperations][google.ads.googleads.v6.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations]. -message AddOfflineUserDataJobOperationsRequest { - // Required. The resource name of the OfflineUserDataJob. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OfflineUserDataJob" - } - ]; - - // True to enable partial failure for the offline user data job. - optional bool enable_partial_failure = 4; - - // Required. The list of operations to be done. - repeated OfflineUserDataJobOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; -} - -// Operation to be made for the AddOfflineUserDataJobOperationsRequest. -message OfflineUserDataJobOperation { - // Operation to be made for the AddOfflineUserDataJobOperationsRequest. - oneof operation { - // Add the provided data to the transaction. Data cannot be retrieved after - // being uploaded. - google.ads.googleads.v6.common.UserData create = 1; - - // Remove the provided data from the transaction. Data cannot be retrieved - // after being uploaded. - google.ads.googleads.v6.common.UserData remove = 2; - - // Remove all previously provided data. This is only supported for Customer - // Match. - bool remove_all = 3; - } -} - -// Response message for -// [OfflineUserDataJobService.AddOfflineUserDataJobOperations][google.ads.googleads.v6.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations]. -message AddOfflineUserDataJobOperationsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 1; -} diff --git a/google/ads/googleads/v6/services/operating_system_version_constant_service.proto b/google/ads/googleads/v6/services/operating_system_version_constant_service.proto deleted file mode 100644 index baec1f4a4..000000000 --- a/google/ads/googleads/v6/services/operating_system_version_constant_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/operating_system_version_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "OperatingSystemVersionConstantServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the OS version constant service - -// Service to fetch Operating System Version constants. -service OperatingSystemVersionConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested OS version constant in full detail. - rpc GetOperatingSystemVersionConstant(GetOperatingSystemVersionConstantRequest) returns (google.ads.googleads.v6.resources.OperatingSystemVersionConstant) { - option (google.api.http) = { - get: "/v6/{resource_name=operatingSystemVersionConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant][google.ads.googleads.v6.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant]. -message GetOperatingSystemVersionConstantRequest { - // Required. Resource name of the OS version to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/OperatingSystemVersionConstant" - } - ]; -} diff --git a/google/ads/googleads/v6/services/paid_organic_search_term_view_service.proto b/google/ads/googleads/v6/services/paid_organic_search_term_view_service.proto deleted file mode 100644 index 2784bfa55..000000000 --- a/google/ads/googleads/v6/services/paid_organic_search_term_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/paid_organic_search_term_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "PaidOrganicSearchTermViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Paid Organic Search Term View service. - -// Service to fetch paid organic search term views. -service PaidOrganicSearchTermViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested paid organic search term view in full detail. - rpc GetPaidOrganicSearchTermView(GetPaidOrganicSearchTermViewRequest) returns (google.ads.googleads.v6.resources.PaidOrganicSearchTermView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/paidOrganicSearchTermViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView][google.ads.googleads.v6.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView]. -message GetPaidOrganicSearchTermViewRequest { - // Required. The resource name of the paid organic search term view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/PaidOrganicSearchTermView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/parental_status_view_service.proto b/google/ads/googleads/v6/services/parental_status_view_service.proto deleted file mode 100644 index b5309cd75..000000000 --- a/google/ads/googleads/v6/services/parental_status_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/parental_status_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ParentalStatusViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Parental Status View service. - -// Service to manage parental status views. -service ParentalStatusViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested parental status view in full detail. - rpc GetParentalStatusView(GetParentalStatusViewRequest) returns (google.ads.googleads.v6.resources.ParentalStatusView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/parentalStatusViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ParentalStatusViewService.GetParentalStatusView][google.ads.googleads.v6.services.ParentalStatusViewService.GetParentalStatusView]. -message GetParentalStatusViewRequest { - // Required. The resource name of the parental status view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ParentalStatusView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/payments_account_service.proto b/google/ads/googleads/v6/services/payments_account_service.proto deleted file mode 100644 index c4fa613ef..000000000 --- a/google/ads/googleads/v6/services/payments_account_service.proto +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/payments_account.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "PaymentsAccountServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the payments account service. - -// Service to provide payments accounts that can be used to set up consolidated -// billing. -service PaymentsAccountService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns all payments accounts associated with all managers - // between the login customer ID and specified serving customer in the - // hierarchy, inclusive. - rpc ListPaymentsAccounts(ListPaymentsAccountsRequest) returns (ListPaymentsAccountsResponse) { - option (google.api.http) = { - get: "/v6/customers/{customer_id=*}/paymentsAccounts" - }; - option (google.api.method_signature) = "customer_id"; - } -} - -// Request message for fetching all accessible payments accounts. -message ListPaymentsAccountsRequest { - // Required. The ID of the customer to apply the PaymentsAccount list operation to. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Response message for [PaymentsAccountService.ListPaymentsAccounts][google.ads.googleads.v6.services.PaymentsAccountService.ListPaymentsAccounts]. -message ListPaymentsAccountsResponse { - // The list of accessible payments accounts. - repeated google.ads.googleads.v6.resources.PaymentsAccount payments_accounts = 1; -} diff --git a/google/ads/googleads/v6/services/product_bidding_category_constant_service.proto b/google/ads/googleads/v6/services/product_bidding_category_constant_service.proto deleted file mode 100644 index 0c9b5af54..000000000 --- a/google/ads/googleads/v6/services/product_bidding_category_constant_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/product_bidding_category_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ProductBiddingCategoryConstantServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Product Bidding Category constant service - -// Service to fetch Product Bidding Categories. -service ProductBiddingCategoryConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Product Bidding Category in full detail. - rpc GetProductBiddingCategoryConstant(GetProductBiddingCategoryConstantRequest) returns (google.ads.googleads.v6.resources.ProductBiddingCategoryConstant) { - option (google.api.http) = { - get: "/v6/{resource_name=productBiddingCategoryConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant][google.ads.googleads.v6.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant]. -message GetProductBiddingCategoryConstantRequest { - // Required. Resource name of the Product Bidding Category to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductBiddingCategoryConstant" - } - ]; -} diff --git a/google/ads/googleads/v6/services/product_group_view_service.proto b/google/ads/googleads/v6/services/product_group_view_service.proto deleted file mode 100644 index a0ac8737b..000000000 --- a/google/ads/googleads/v6/services/product_group_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/product_group_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ProductGroupViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the ProductGroup View service. - -// Service to manage product group views. -service ProductGroupViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested product group view in full detail. - rpc GetProductGroupView(GetProductGroupViewRequest) returns (google.ads.googleads.v6.resources.ProductGroupView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/productGroupViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [ProductGroupViewService.GetProductGroupView][google.ads.googleads.v6.services.ProductGroupViewService.GetProductGroupView]. -message GetProductGroupViewRequest { - // Required. The resource name of the product group view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ProductGroupView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/reach_plan_service.proto b/google/ads/googleads/v6/services/reach_plan_service.proto deleted file mode 100644 index 51f2f3edc..000000000 --- a/google/ads/googleads/v6/services/reach_plan_service.proto +++ /dev/null @@ -1,429 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/common/criteria.proto"; -import "google/ads/googleads/v6/enums/frequency_cap_time_unit.proto"; -import "google/ads/googleads/v6/enums/reach_plan_ad_length.proto"; -import "google/ads/googleads/v6/enums/reach_plan_age_range.proto"; -import "google/ads/googleads/v6/enums/reach_plan_network.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ReachPlanServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the reach plan service. - -// Reach Plan Service gives users information about audience size that can -// be reached through advertisement on YouTube. In particular, -// GenerateReachForecast provides estimated number of people of specified -// demographics that can be reached by an ad in a given market by a campaign of -// certain duration with a defined budget. -service ReachPlanService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the list of plannable locations (for example, countries & DMAs). - rpc ListPlannableLocations(ListPlannableLocationsRequest) returns (ListPlannableLocationsResponse) { - option (google.api.http) = { - post: "/v6:listPlannableLocations" - body: "*" - }; - } - - // Returns the list of per-location plannable YouTube ad formats with allowed - // targeting. - rpc ListPlannableProducts(ListPlannableProductsRequest) returns (ListPlannableProductsResponse) { - option (google.api.http) = { - post: "/v6:listPlannableProducts" - body: "*" - }; - option (google.api.method_signature) = "plannable_location_id"; - } - - // Generates a product mix ideas given a set of preferences. This method - // helps the advertiser to obtain a good mix of ad formats and budget - // allocations based on its preferences. - rpc GenerateProductMixIdeas(GenerateProductMixIdeasRequest) returns (GenerateProductMixIdeasResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}:generateProductMixIdeas" - body: "*" - }; - option (google.api.method_signature) = "customer_id,plannable_location_id,currency_code,budget_micros"; - } - - // Generates a reach forecast for a given targeting / product mix. - rpc GenerateReachForecast(GenerateReachForecastRequest) returns (GenerateReachForecastResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}:generateReachForecast" - body: "*" - }; - option (google.api.method_signature) = "customer_id,campaign_duration,planned_products"; - } -} - -// Request message for [ReachPlanService.ListPlannableLocations][google.ads.googleads.v6.services.ReachPlanService.ListPlannableLocations]. -message ListPlannableLocationsRequest { - -} - -// The list of plannable locations. -message ListPlannableLocationsResponse { - // The list of locations available for planning (Countries, DMAs, - // sub-countries). - // For locations like Countries, DMAs see - // https://developers.google.com/adwords/api/docs/appendix/geotargeting for - // more information. - repeated PlannableLocation plannable_locations = 1; -} - -// A plannable location: a country, a DMA, a metro region, a tv region, -// a province. -message PlannableLocation { - // The location identifier. - optional string id = 4; - - // The unique location name in english. - optional string name = 5; - - // The parent country code, not present if location is a country. - // If present will always be a criterion id: additional information, such as - // country name are returned both via ListPlannableLocations or directly by - // accessing GeoTargetConstantService with the criterion id. - optional int64 parent_country_id = 6; -} - -// Request to list available products in a given location. -message ListPlannableProductsRequest { - // Required. The ID of the selected location for planning. To list the available - // plannable location ids use ListPlannableLocations. - string plannable_location_id = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A response with all available products. -message ListPlannableProductsResponse { - // The list of products available for planning and related targeting metadata. - repeated ProductMetadata product_metadata = 1; -} - -// The metadata associated with an available plannable product. -message ProductMetadata { - // The code associated with the ad product. E.g. BUMPER, TRUEVIEW_IN_STREAM - // To list the available plannable product codes use ListPlannableProducts. - optional string plannable_product_code = 4; - - // The name associated with the ad product. - string plannable_product_name = 3; - - // The allowed plannable targeting for this product. - PlannableTargeting plannable_targeting = 2; -} - -// The targeting for which traffic metrics will be reported. -message PlannableTargeting { - // Allowed plannable age ranges for the product for which metrics will be - // reported. Actual targeting is computed by mapping this age range onto - // standard Google common.AgeRangeInfo values. - repeated google.ads.googleads.v6.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_ranges = 1; - - // Targetable genders for the ad product. - repeated google.ads.googleads.v6.common.GenderInfo genders = 2; - - // Targetable devices for the ad product. - repeated google.ads.googleads.v6.common.DeviceInfo devices = 3; - - // Targetable networks for the ad product. - repeated google.ads.googleads.v6.enums.ReachPlanNetworkEnum.ReachPlanNetwork networks = 4; -} - -// Request message for [ReachPlanService.GenerateProductMixIdeas][google.ads.googleads.v6.services.ReachPlanService.GenerateProductMixIdeas]. -message GenerateProductMixIdeasRequest { - // Required. The ID of the customer. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The ID of the location, this is one of the ids returned by - // ListPlannableLocations. - string plannable_location_id = 6 [(google.api.field_behavior) = REQUIRED]; - - // Required. Currency code. - // Three-character ISO 4217 currency code. - string currency_code = 7 [(google.api.field_behavior) = REQUIRED]; - - // Required. Total budget. - // Amount in micros. One million is equivalent to one unit. - int64 budget_micros = 8 [(google.api.field_behavior) = REQUIRED]; - - // The preferences of the suggested product mix. - // An unset preference is interpreted as all possible values are allowed, - // unless explicitly specified. - Preferences preferences = 5; -} - -// Set of preferences about the planned mix. -message Preferences { - // True if ad skippable. - // If not set, default is any value. - optional bool is_skippable = 6; - - // True if ad start with sound. - // If not set, default is any value. - optional bool starts_with_sound = 7; - - // The length of the ad. - // If not set, default is any value. - google.ads.googleads.v6.enums.ReachPlanAdLengthEnum.ReachPlanAdLength ad_length = 3; - - // True if ad will only show on the top content. - // If not set, default is false. - optional bool top_content_only = 8; - - // True if the price guaranteed. The cost of serving the ad is agreed upfront - // and not subject to an auction. - // If not set, default is any value. - optional bool has_guaranteed_price = 9; -} - -// The suggested product mix. -message GenerateProductMixIdeasResponse { - // A list of products (ad formats) and the associated budget allocation idea. - repeated ProductAllocation product_allocation = 1; -} - -// An allocation of a part of the budget on a given product. -message ProductAllocation { - // Selected product for planning. The product codes returned are within the - // set of the ones returned by ListPlannableProducts when using the same - // location id. - optional string plannable_product_code = 3; - - // The value to be allocated for the suggested product in requested currency. - // Amount in micros. One million is equivalent to one unit. - optional int64 budget_micros = 4; -} - -// Request message for [ReachPlanService.GenerateReachForecast][google.ads.googleads.v6.services.ReachPlanService.GenerateReachForecast]. -message GenerateReachForecastRequest { - // Required. The ID of the customer. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // The currency code. - // Three-character ISO 4217 currency code. - optional string currency_code = 9; - - // Required. Campaign duration. - CampaignDuration campaign_duration = 3 [(google.api.field_behavior) = REQUIRED]; - - // Desired cookie frequency cap that will be applied to each planned product. - // This is equivalent to the frequency cap exposed in Google Ads when creating - // a campaign, it represents the maximum number of times an ad can be shown to - // the same user. - // If not specified no cap is applied. - // - // This field is deprecated in v4 and will eventually be removed. - // Please use cookie_frequency_cap_setting instead. - optional int32 cookie_frequency_cap = 10; - - // Desired cookie frequency cap that will be applied to each planned product. - // This is equivalent to the frequency cap exposed in Google Ads when creating - // a campaign, it represents the maximum number of times an ad can be shown to - // the same user during a specified time interval. - // If not specified, no cap is applied. - // - // This field replaces the deprecated cookie_frequency_cap field. - FrequencyCap cookie_frequency_cap_setting = 8; - - // Desired minimum effective frequency (the number of times a person was - // exposed to the ad) for the reported reach metrics [1-10]. - // This won't affect the targeting, but just the reporting. - // If not specified, a default of 1 is applied. - optional int32 min_effective_frequency = 11; - - // The targeting to be applied to all products selected in the product mix. - // - // This is planned targeting: execution details might vary based on the - // advertising product, please consult an implementation specialist. - // - // See specific metrics for details on how targeting affects them. - // - // In some cases, targeting may be overridden using the - // PlannedProduct.advanced_product_targeting field. - Targeting targeting = 6; - - // Required. The products to be forecast. - // The max number of allowed planned products is 15. - repeated PlannedProduct planned_products = 7 [(google.api.field_behavior) = REQUIRED]; -} - -// A rule specifying the maximum number of times an ad can be shown to a user -// over a particular time period. -message FrequencyCap { - // Required. The number of impressions, inclusive. - int32 impressions = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The type of time unit. - google.ads.googleads.v6.enums.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit time_unit = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// The targeting for which traffic metrics will be reported. -message Targeting { - // Required. The ID of the selected location. - // Plannable locations ID can be obtained from ListPlannableLocations. - optional string plannable_location_id = 6; - - // Targeted age range. - // If not specified, targets all age ranges. - google.ads.googleads.v6.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_range = 2; - - // Targeted genders. - // If not specified, targets all genders. - repeated google.ads.googleads.v6.common.GenderInfo genders = 3; - - // Targeted devices. - // If not specified, targets all applicable devices. Applicable devices vary - // by product and region and can be obtained from ListPlannableProducts. - repeated google.ads.googleads.v6.common.DeviceInfo devices = 4; - - // Targetable network for the ad product. - // If not specified, targets all applicable networks. Applicable networks vary - // by product and region and can be obtained from ListPlannableProducts. - google.ads.googleads.v6.enums.ReachPlanNetworkEnum.ReachPlanNetwork network = 5; -} - -// The duration of a planned campaign. -message CampaignDuration { - // The duration value in days. - optional int32 duration_in_days = 2; -} - -// A product being planned for reach. -message PlannedProduct { - // Required. Selected product for planning. - // The code associated with the ad product. E.g. Trueview, Bumper - // To list the available plannable product codes use ListPlannableProducts. - optional string plannable_product_code = 3; - - // Required. Maximum budget allocation in micros for the selected product. - // The value is specified in the selected planning currency_code. - // E.g. 1 000 000$ = 1 000 000 000 000 micros. - optional int64 budget_micros = 4; -} - -// Response message containing the generated reach curve. -message GenerateReachForecastResponse { - // Reference on target audiences for this curve. - OnTargetAudienceMetrics on_target_audience_metrics = 1; - - // The generated reach curve for the planned product mix. - ReachCurve reach_curve = 2; -} - -// The reach curve for the planned products. -message ReachCurve { - // All points on the reach curve. - repeated ReachForecast reach_forecasts = 1; -} - -// A point on reach curve. -message ReachForecast { - // The cost in micros. - int64 cost_micros = 5; - - // Forecasted traffic metrics for this point. - Forecast forecast = 2; - - // The forecasted allocation and traffic metrics for each planned product - // at this point on the reach curve. - repeated PlannedProductReachForecast planned_product_reach_forecasts = 4; -} - -// Forecasted traffic metrics for the planned products and targeting. -message Forecast { - // Number of unique people reached at least - // GenerateReachForecastRequest.min_effective_frequency times that exactly - // matches the Targeting. - optional int64 on_target_reach = 5; - - // Total number of unique people reached at least - // GenerateReachForecastRequest.min_effective_frequency times. This includes - // people that may fall outside the specified Targeting. - optional int64 total_reach = 6; - - // Number of ad impressions that exactly matches the Targeting. - optional int64 on_target_impressions = 7; - - // Total number of ad impressions. This includes impressions that may fall - // outside the specified Targeting, due to insufficient information on - // signed-in users. - optional int64 total_impressions = 8; -} - -// The forecasted allocation and traffic metrics for a specific product -// at a point on the reach curve. -message PlannedProductReachForecast { - // Selected product for planning. The product codes returned are within the - // set of the ones returned by ListPlannableProducts when using the same - // location id. - string plannable_product_code = 1; - - // The cost in micros. This may differ from the product's input allocation - // if one or more planned products cannot fulfill the budget because of - // limited inventory. - int64 cost_micros = 2; - - // Forecasted traffic metrics for this product. - PlannedProductForecast planned_product_forecast = 3; -} - -// Forecasted traffic metrics for a planned product. -message PlannedProductForecast { - // Number of unique people reached that exactly matches the Targeting. - int64 on_target_reach = 1; - - // Number of unique people reached. This includes people that may fall - // outside the specified Targeting. - int64 total_reach = 2; - - // Number of ad impressions that exactly matches the Targeting. - int64 on_target_impressions = 3; - - // Total number of ad impressions. This includes impressions that may fall - // outside the specified Targeting, due to insufficient information on - // signed-in users. - int64 total_impressions = 4; -} - -// Audience metrics for the planned products. -// These metrics consider the following targeting dimensions: -// -// - Location -// - PlannableAgeRange -// - Gender -message OnTargetAudienceMetrics { - // Reference audience size matching the considered targeting for YouTube. - optional int64 youtube_audience_size = 3; - - // Reference audience size matching the considered targeting for Census. - optional int64 census_audience_size = 4; -} diff --git a/google/ads/googleads/v6/services/recommendation_service.proto b/google/ads/googleads/v6/services/recommendation_service.proto deleted file mode 100644 index d52cdc5bc..000000000 --- a/google/ads/googleads/v6/services/recommendation_service.proto +++ /dev/null @@ -1,279 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/common/extensions.proto"; -import "google/ads/googleads/v6/enums/keyword_match_type.proto"; -import "google/ads/googleads/v6/resources/ad.proto"; -import "google/ads/googleads/v6/resources/recommendation.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "RecommendationServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Recommendation service. - -// Service to manage recommendations. -service RecommendationService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested recommendation in full detail. - rpc GetRecommendation(GetRecommendationRequest) returns (google.ads.googleads.v6.resources.Recommendation) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/recommendations/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Applies given recommendations with corresponding apply parameters. - rpc ApplyRecommendation(ApplyRecommendationRequest) returns (ApplyRecommendationResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/recommendations:apply" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } - - // Dismisses given recommendations. - rpc DismissRecommendation(DismissRecommendationRequest) returns (DismissRecommendationResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/recommendations:dismiss" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [RecommendationService.GetRecommendation][google.ads.googleads.v6.services.RecommendationService.GetRecommendation]. -message GetRecommendationRequest { - // Required. The resource name of the recommendation to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Recommendation" - } - ]; -} - -// Request message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v6.services.RecommendationService.ApplyRecommendation]. -message ApplyRecommendationRequest { - // Required. The ID of the customer with the recommendation. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to apply recommendations. - // If partial_failure=false all recommendations should be of the same type - // There is a limit of 100 operations per request. - repeated ApplyRecommendationOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, operations will be carried - // out as a transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; -} - -// Information about the operation to apply a recommendation and any parameters -// to customize it. -message ApplyRecommendationOperation { - // Parameters to use when applying a campaign budget recommendation. - message CampaignBudgetParameters { - // New budget amount to set for target budget resource. This is a required - // field. - optional int64 new_budget_amount_micros = 2; - } - - // Parameters to use when applying a text ad recommendation. - message TextAdParameters { - // New ad to add to recommended ad group. All necessary fields need to be - // set in this message. This is a required field. - google.ads.googleads.v6.resources.Ad ad = 1; - } - - // Parameters to use when applying keyword recommendation. - message KeywordParameters { - // The ad group resource to add keyword to. This is a required field. - optional string ad_group = 4; - - // The match type of the keyword. This is a required field. - google.ads.googleads.v6.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 2; - - // Optional, CPC bid to set for the keyword. If not set, keyword will use - // bid based on bidding strategy used by target ad group. - optional int64 cpc_bid_micros = 5; - } - - // Parameters to use when applying Target CPA recommendation. - message TargetCpaOptInParameters { - // Average CPA to use for Target CPA bidding strategy. This is a required - // field. - optional int64 target_cpa_micros = 3; - - // Optional, budget amount to set for the campaign. - optional int64 new_campaign_budget_amount_micros = 4; - } - - // Parameters to use when applying a Target ROAS opt-in recommendation. - message TargetRoasOptInParameters { - // Average ROAS (revenue per unit of spend) to use for Target ROAS bidding - // strategy. The value is between 0.01 and 1000.0, inclusive. This is a - // required field. - optional double target_roas = 1; - - // Optional, budget amount to set for the campaign. - optional int64 new_campaign_budget_amount_micros = 2; - } - - // Parameters to use when applying callout extension recommendation. - message CalloutExtensionParameters { - // Callout extensions to be added. This is a required field. - repeated google.ads.googleads.v6.common.CalloutFeedItem callout_extensions = 1; - } - - // Parameters to use when applying call extension recommendation. - message CallExtensionParameters { - // Call extensions to be added. This is a required field. - repeated google.ads.googleads.v6.common.CallFeedItem call_extensions = 1; - } - - // Parameters to use when applying sitelink extension recommendation. - message SitelinkExtensionParameters { - // Sitelink extensions to be added. This is a required field. - repeated google.ads.googleads.v6.common.SitelinkFeedItem sitelink_extensions = 1; - } - - // Parameters to use when applying move unused budget recommendation. - message MoveUnusedBudgetParameters { - // Budget amount to move from excess budget to constrained budget. This is - // a required field. - optional int64 budget_micros_to_move = 2; - } - - // Parameters to use when applying a responsive search ad recommendation. - message ResponsiveSearchAdParameters { - // Required. New ad to add to recommended ad group. - google.ads.googleads.v6.resources.Ad ad = 1 [(google.api.field_behavior) = REQUIRED]; - } - - // The resource name of the recommendation to apply. - string resource_name = 1; - - // Parameters to use when applying the recommendation. - oneof apply_parameters { - // Optional parameters to use when applying a campaign budget - // recommendation. - CampaignBudgetParameters campaign_budget = 2; - - // Optional parameters to use when applying a text ad recommendation. - TextAdParameters text_ad = 3; - - // Optional parameters to use when applying keyword recommendation. - KeywordParameters keyword = 4; - - // Optional parameters to use when applying target CPA opt-in - // recommendation. - TargetCpaOptInParameters target_cpa_opt_in = 5; - - // Optional parameters to use when applying target ROAS opt-in - // recommendation. - TargetRoasOptInParameters target_roas_opt_in = 10; - - // Parameters to use when applying callout extension recommendation. - CalloutExtensionParameters callout_extension = 6; - - // Parameters to use when applying call extension recommendation. - CallExtensionParameters call_extension = 7; - - // Parameters to use when applying sitelink extension recommendation. - SitelinkExtensionParameters sitelink_extension = 8; - - // Parameters to use when applying move unused budget recommendation. - MoveUnusedBudgetParameters move_unused_budget = 9; - - // Parameters to use when applying a responsive search ad recommendation. - ResponsiveSearchAdParameters responsive_search_ad = 11; - } -} - -// Response message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v6.services.RecommendationService.ApplyRecommendation]. -message ApplyRecommendationResponse { - // Results of operations to apply recommendations. - repeated ApplyRecommendationResult results = 1; - - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors) - // we return the RPC level error. - google.rpc.Status partial_failure_error = 2; -} - -// The result of applying a recommendation. -message ApplyRecommendationResult { - // Returned for successful applies. - string resource_name = 1; -} - -// Request message for [RecommendationService.DismissRecommendation][google.ads.googleads.v6.services.RecommendationService.DismissRecommendation]. -message DismissRecommendationRequest { - // Operation to dismiss a single recommendation identified by resource_name. - message DismissRecommendationOperation { - // The resource name of the recommendation to dismiss. - string resource_name = 1; - } - - // Required. The ID of the customer with the recommendation. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to dismiss recommendations. - // If partial_failure=false all recommendations should be of the same type - // There is a limit of 100 operations per request. - repeated DismissRecommendationOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, operations will be carried in a - // single transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 2; -} - -// Response message for [RecommendationService.DismissRecommendation][google.ads.googleads.v6.services.RecommendationService.DismissRecommendation]. -message DismissRecommendationResponse { - // The result of dismissing a recommendation. - message DismissRecommendationResult { - // Returned for successful dismissals. - string resource_name = 1; - } - - // Results of operations to dismiss recommendations. - repeated DismissRecommendationResult results = 1; - - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors) - // we return the RPC level error. - google.rpc.Status partial_failure_error = 2; -} diff --git a/google/ads/googleads/v6/services/remarketing_action_service.proto b/google/ads/googleads/v6/services/remarketing_action_service.proto deleted file mode 100644 index 27f98d7a2..000000000 --- a/google/ads/googleads/v6/services/remarketing_action_service.proto +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/remarketing_action.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "RemarketingActionServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Remarketing Action service. - -// Service to manage remarketing actions. -service RemarketingActionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested remarketing action in full detail. - rpc GetRemarketingAction(GetRemarketingActionRequest) returns (google.ads.googleads.v6.resources.RemarketingAction) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/remarketingActions/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates remarketing actions. Operation statuses are returned. - rpc MutateRemarketingActions(MutateRemarketingActionsRequest) returns (MutateRemarketingActionsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/remarketingActions:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [RemarketingActionService.GetRemarketingAction][google.ads.googleads.v6.services.RemarketingActionService.GetRemarketingAction]. -message GetRemarketingActionRequest { - // Required. The resource name of the remarketing action to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/RemarketingAction" - } - ]; -} - -// Request message for [RemarketingActionService.MutateRemarketingActions][google.ads.googleads.v6.services.RemarketingActionService.MutateRemarketingActions]. -message MutateRemarketingActionsRequest { - // Required. The ID of the customer whose remarketing actions are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual remarketing actions. - repeated RemarketingActionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update) on a remarketing action. -message RemarketingActionOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new remarketing - // action. - google.ads.googleads.v6.resources.RemarketingAction create = 1; - - // Update operation: The remarketing action is expected to have a valid - // resource name. - google.ads.googleads.v6.resources.RemarketingAction update = 2; - } -} - -// Response message for remarketing action mutate. -message MutateRemarketingActionsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateRemarketingActionResult results = 2; -} - -// The result for the remarketing action mutate. -message MutateRemarketingActionResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/search_term_view_service.proto b/google/ads/googleads/v6/services/search_term_view_service.proto deleted file mode 100644 index e145f44c8..000000000 --- a/google/ads/googleads/v6/services/search_term_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/search_term_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "SearchTermViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Search Term View service. - -// Service to manage search term views. -service SearchTermViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the attributes of the requested search term view. - rpc GetSearchTermView(GetSearchTermViewRequest) returns (google.ads.googleads.v6.resources.SearchTermView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/searchTermViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [SearchTermViewService.GetSearchTermView][google.ads.googleads.v6.services.SearchTermViewService.GetSearchTermView]. -message GetSearchTermViewRequest { - // Required. The resource name of the search term view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SearchTermView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/shared_criterion_service.proto b/google/ads/googleads/v6/services/shared_criterion_service.proto deleted file mode 100644 index 901a877ff..000000000 --- a/google/ads/googleads/v6/services/shared_criterion_service.proto +++ /dev/null @@ -1,132 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/shared_criterion.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "SharedCriterionServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Shared Criterion service. - -// Service to manage shared criteria. -service SharedCriterionService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested shared criterion in full detail. - rpc GetSharedCriterion(GetSharedCriterionRequest) returns (google.ads.googleads.v6.resources.SharedCriterion) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/sharedCriteria/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or removes shared criteria. Operation statuses are returned. - rpc MutateSharedCriteria(MutateSharedCriteriaRequest) returns (MutateSharedCriteriaResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/sharedCriteria:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [SharedCriterionService.GetSharedCriterion][google.ads.googleads.v6.services.SharedCriterionService.GetSharedCriterion]. -message GetSharedCriterionRequest { - // Required. The resource name of the shared criterion to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedCriterion" - } - ]; -} - -// Request message for [SharedCriterionService.MutateSharedCriteria][google.ads.googleads.v6.services.SharedCriterionService.MutateSharedCriteria]. -message MutateSharedCriteriaRequest { - // Required. The ID of the customer whose shared criteria are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual shared criteria. - repeated SharedCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, remove) on an shared criterion. -message SharedCriterionOperation { - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new shared - // criterion. - google.ads.googleads.v6.resources.SharedCriterion create = 1; - - // Remove operation: A resource name for the removed shared criterion is - // expected, in this format: - // - // `customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}` - string remove = 3; - } -} - -// Response message for a shared criterion mutate. -message MutateSharedCriteriaResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateSharedCriterionResult results = 2; -} - -// The result for the shared criterion mutate. -message MutateSharedCriterionResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated shared criterion with only mutable fields after mutate. The - // field will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.SharedCriterion shared_criterion = 2; -} diff --git a/google/ads/googleads/v6/services/shared_set_service.proto b/google/ads/googleads/v6/services/shared_set_service.proto deleted file mode 100644 index 72d7c9b22..000000000 --- a/google/ads/googleads/v6/services/shared_set_service.proto +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/enums/response_content_type.proto"; -import "google/ads/googleads/v6/resources/shared_set.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "SharedSetServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Shared Set service. - -// Service to manage shared sets. -service SharedSetService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested shared set in full detail. - rpc GetSharedSet(GetSharedSetRequest) returns (google.ads.googleads.v6.resources.SharedSet) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/sharedSets/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates, updates, or removes shared sets. Operation statuses are returned. - rpc MutateSharedSets(MutateSharedSetsRequest) returns (MutateSharedSetsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/sharedSets:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [SharedSetService.GetSharedSet][google.ads.googleads.v6.services.SharedSetService.GetSharedSet]. -message GetSharedSetRequest { - // Required. The resource name of the shared set to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/SharedSet" - } - ]; -} - -// Request message for [SharedSetService.MutateSharedSets][google.ads.googleads.v6.services.SharedSetService.MutateSharedSets]. -message MutateSharedSetsRequest { - // Required. The ID of the customer whose shared sets are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual shared sets. - repeated SharedSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; - - // The response content type setting. Determines whether the mutable resource - // or just the resource name should be returned post mutation. - google.ads.googleads.v6.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; -} - -// A single operation (create, update, remove) on an shared set. -message SharedSetOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new shared set. - google.ads.googleads.v6.resources.SharedSet create = 1; - - // Update operation: The shared set is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.SharedSet update = 2; - - // Remove operation: A resource name for the removed shared set is expected, - // in this format: - // - // `customers/{customer_id}/sharedSets/{shared_set_id}` - string remove = 3; - } -} - -// Response message for a shared set mutate. -message MutateSharedSetsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateSharedSetResult results = 2; -} - -// The result for the shared set mutate. -message MutateSharedSetResult { - // Returned for successful operations. - string resource_name = 1; - - // The mutated shared set with only mutable fields after mutate. The field - // will only be returned when response_content_type is set to - // "MUTABLE_RESOURCE". - google.ads.googleads.v6.resources.SharedSet shared_set = 2; -} diff --git a/google/ads/googleads/v6/services/shopping_performance_view_service.proto b/google/ads/googleads/v6/services/shopping_performance_view_service.proto deleted file mode 100644 index 9ecc01246..000000000 --- a/google/ads/googleads/v6/services/shopping_performance_view_service.proto +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/shopping_performance_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ShoppingPerformanceViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the ShoppingPerformanceView service. - -// Service to fetch Shopping performance views. -service ShoppingPerformanceViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested Shopping performance view in full detail. - rpc GetShoppingPerformanceView(GetShoppingPerformanceViewRequest) returns (google.ads.googleads.v6.resources.ShoppingPerformanceView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/shoppingPerformanceView}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for -// [ShoppingPerformanceViewService.GetShoppingPerformanceView][google.ads.googleads.v6.services.ShoppingPerformanceViewService.GetShoppingPerformanceView]. -message GetShoppingPerformanceViewRequest { - // Required. The resource name of the Shopping performance view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/ShoppingPerformanceView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/third_party_app_analytics_link_service.proto b/google/ads/googleads/v6/services/third_party_app_analytics_link_service.proto deleted file mode 100644 index d84bc8fd3..000000000 --- a/google/ads/googleads/v6/services/third_party_app_analytics_link_service.proto +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/third_party_app_analytics_link.proto"; -import "google/api/annotations.proto"; -import "google/api/resource.proto"; -import "google/api/client.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "ThirdPartyAppAnalyticsLinkServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// This service allows management of links between Google Ads and third party -// app analytics. -service ThirdPartyAppAnalyticsLinkService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the third party app analytics link in full detail. - rpc GetThirdPartyAppAnalyticsLink(GetThirdPartyAppAnalyticsLinkRequest) returns (google.ads.googleads.v6.resources.ThirdPartyAppAnalyticsLink) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" - }; - } - - // Regenerate ThirdPartyAppAnalyticsLink.shareable_link_id that should be - // provided to the third party when setting up app analytics. - rpc RegenerateShareableLinkId(RegenerateShareableLinkIdRequest) returns (RegenerateShareableLinkIdResponse) { - option (google.api.http) = { - post: "/v6/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}:regenerateShareableLinkId" - body: "*" - }; - } -} - -// Request message for -// [ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink][google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink]. -message GetThirdPartyAppAnalyticsLinkRequest { - // Resource name of the third party app analytics link. - string resource_name = 1 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" - }]; -} - -// Request message for -// [ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId][google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId]. -message RegenerateShareableLinkIdRequest { - // Resource name of the third party app analytics link. - string resource_name = 1 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" - }]; -} - -// Response message for -// [ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId][google.ads.googleads.v6.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId]. -message RegenerateShareableLinkIdResponse { - -} diff --git a/google/ads/googleads/v6/services/topic_constant_service.proto b/google/ads/googleads/v6/services/topic_constant_service.proto deleted file mode 100644 index 7d403bb51..000000000 --- a/google/ads/googleads/v6/services/topic_constant_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/topic_constant.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "TopicConstantServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Topic constant service - -// Service to fetch topic constants. -service TopicConstantService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested topic constant in full detail. - rpc GetTopicConstant(GetTopicConstantRequest) returns (google.ads.googleads.v6.resources.TopicConstant) { - option (google.api.http) = { - get: "/v6/{resource_name=topicConstants/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [TopicConstantService.GetTopicConstant][google.ads.googleads.v6.services.TopicConstantService.GetTopicConstant]. -message GetTopicConstantRequest { - // Required. Resource name of the Topic to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicConstant" - } - ]; -} diff --git a/google/ads/googleads/v6/services/topic_view_service.proto b/google/ads/googleads/v6/services/topic_view_service.proto deleted file mode 100644 index 642b296dc..000000000 --- a/google/ads/googleads/v6/services/topic_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/topic_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "TopicViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Topic View service. - -// Service to manage topic views. -service TopicViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested topic view in full detail. - rpc GetTopicView(GetTopicViewRequest) returns (google.ads.googleads.v6.resources.TopicView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/topicViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [TopicViewService.GetTopicView][google.ads.googleads.v6.services.TopicViewService.GetTopicView]. -message GetTopicViewRequest { - // Required. The resource name of the topic view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/TopicView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/user_data_service.proto b/google/ads/googleads/v6/services/user_data_service.proto deleted file mode 100644 index 3da8c99b3..000000000 --- a/google/ads/googleads/v6/services/user_data_service.proto +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/common/offline_user_data.proto"; -import "google/api/annotations.proto"; -import "google/api/field_behavior.proto"; -import "google/api/client.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserDataServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the UserDataService. - -// Service to manage user data uploads. -// Accessible only to customers on the allow-list. -service UserDataService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Uploads the given user data. - rpc UploadUserData(UploadUserDataRequest) returns (UploadUserDataResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}:uploadUserData" - body: "*" - }; - } -} - -// Request message for [UserDataService.UploadUserData][google.ads.googleads.v6.services.UserDataService.UploadUserData] -message UploadUserDataRequest { - // Required. The ID of the customer for which to update the user data. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to be done. - repeated UserDataOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; - - // Metadata of the request. - oneof metadata { - // Metadata for data updates to a Customer Match user list. - google.ads.googleads.v6.common.CustomerMatchUserListMetadata customer_match_user_list_metadata = 2; - } -} - -// Operation to be made for the UploadUserDataRequest. -message UserDataOperation { - // Operation to be made for the UploadUserDataRequest. - oneof operation { - // The list of user data to be appended to the user list. - google.ads.googleads.v6.common.UserData create = 1; - - // The list of user data to be removed from the user list. - google.ads.googleads.v6.common.UserData remove = 2; - } -} - -// Response message for [UserDataService.UploadUserData][google.ads.googleads.v6.services.UserDataService.UploadUserData] -message UploadUserDataResponse { - // The date time at which the request was received by API, formatted as - // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". - optional string upload_date_time = 3; - - // Number of upload data operations received by API. - optional int32 received_operations_count = 4; -} diff --git a/google/ads/googleads/v6/services/user_interest_service.proto b/google/ads/googleads/v6/services/user_interest_service.proto deleted file mode 100644 index faff6cad6..000000000 --- a/google/ads/googleads/v6/services/user_interest_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/user_interest.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserInterestServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the user interest service - -// Service to fetch Google Ads User Interest. -service UserInterestService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested user interest in full detail - rpc GetUserInterest(GetUserInterestRequest) returns (google.ads.googleads.v6.resources.UserInterest) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/userInterests/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [UserInterestService.GetUserInterest][google.ads.googleads.v6.services.UserInterestService.GetUserInterest]. -message GetUserInterestRequest { - // Required. Resource name of the UserInterest to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserInterest" - } - ]; -} diff --git a/google/ads/googleads/v6/services/user_list_service.proto b/google/ads/googleads/v6/services/user_list_service.proto deleted file mode 100644 index 51bc37454..000000000 --- a/google/ads/googleads/v6/services/user_list_service.proto +++ /dev/null @@ -1,129 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/user_list.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/field_mask.proto"; -import "google/rpc/status.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserListServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the User List service. - -// Service to manage user lists. -service UserListService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested user list. - rpc GetUserList(GetUserListRequest) returns (google.ads.googleads.v6.resources.UserList) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/userLists/*}" - }; - option (google.api.method_signature) = "resource_name"; - } - - // Creates or updates user lists. Operation statuses are returned. - rpc MutateUserLists(MutateUserListsRequest) returns (MutateUserListsResponse) { - option (google.api.http) = { - post: "/v6/customers/{customer_id=*}/userLists:mutate" - body: "*" - }; - option (google.api.method_signature) = "customer_id,operations"; - } -} - -// Request message for [UserListService.GetUserList][google.ads.googleads.v6.services.UserListService.GetUserList]. -message GetUserListRequest { - // Required. The resource name of the user list to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserList" - } - ]; -} - -// Request message for [UserListService.MutateUserLists][google.ads.googleads.v6.services.UserListService.MutateUserLists]. -message MutateUserListsRequest { - // Required. The ID of the customer whose user lists are being modified. - string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of operations to perform on individual user lists. - repeated UserListOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; - - // If true, successful operations will be carried out and invalid - // operations will return errors. If false, all operations will be carried - // out in one transaction if and only if they are all valid. - // Default is false. - bool partial_failure = 3; - - // If true, the request is validated but not executed. Only errors are - // returned, not results. - bool validate_only = 4; -} - -// A single operation (create, update) on a user list. -message UserListOperation { - // FieldMask that determines which resource fields are modified in an update. - google.protobuf.FieldMask update_mask = 4; - - // The mutate operation. - oneof operation { - // Create operation: No resource name is expected for the new user list. - google.ads.googleads.v6.resources.UserList create = 1; - - // Update operation: The user list is expected to have a valid resource - // name. - google.ads.googleads.v6.resources.UserList update = 2; - - // Remove operation: A resource name for the removed user list is expected, - // in this format: - // - // `customers/{customer_id}/userLists/{user_list_id}` - string remove = 3; - } -} - -// Response message for user list mutate. -message MutateUserListsResponse { - // Errors that pertain to operation failures in the partial failure mode. - // Returned only when partial_failure = true and all errors occur inside the - // operations. If any errors occur outside the operations (e.g. auth errors), - // we return an RPC level error. - google.rpc.Status partial_failure_error = 3; - - // All results for the mutate. - repeated MutateUserListResult results = 2; -} - -// The result for the user list mutate. -message MutateUserListResult { - // Returned for successful operations. - string resource_name = 1; -} diff --git a/google/ads/googleads/v6/services/user_location_view_service.proto b/google/ads/googleads/v6/services/user_location_view_service.proto deleted file mode 100644 index 57a343655..000000000 --- a/google/ads/googleads/v6/services/user_location_view_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/user_location_view.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "UserLocationViewServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the UserLocationView service. - -// Service to manage user location views. -service UserLocationViewService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested user location view in full detail. - rpc GetUserLocationView(GetUserLocationViewRequest) returns (google.ads.googleads.v6.resources.UserLocationView) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/userLocationViews/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [UserLocationViewService.GetUserLocationView][google.ads.googleads.v6.services.UserLocationViewService.GetUserLocationView]. -message GetUserLocationViewRequest { - // Required. The resource name of the user location view to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/UserLocationView" - } - ]; -} diff --git a/google/ads/googleads/v6/services/video_service.proto b/google/ads/googleads/v6/services/video_service.proto deleted file mode 100644 index b162de09d..000000000 --- a/google/ads/googleads/v6/services/video_service.proto +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright 2021 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.ads.googleads.v6.services; - -import "google/ads/googleads/v6/resources/video.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option csharp_namespace = "Google.Ads.GoogleAds.V6.Services"; -option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v6/services;services"; -option java_multiple_files = true; -option java_outer_classname = "VideoServiceProto"; -option java_package = "com.google.ads.googleads.v6.services"; -option objc_class_prefix = "GAA"; -option php_namespace = "Google\\Ads\\GoogleAds\\V6\\Services"; -option ruby_package = "Google::Ads::GoogleAds::V6::Services"; - -// Proto file describing the Video service. - -// Service to manage videos. -service VideoService { - option (google.api.default_host) = "googleads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; - - // Returns the requested video in full detail. - rpc GetVideo(GetVideoRequest) returns (google.ads.googleads.v6.resources.Video) { - option (google.api.http) = { - get: "/v6/{resource_name=customers/*/videos/*}" - }; - option (google.api.method_signature) = "resource_name"; - } -} - -// Request message for [VideoService.GetVideo][google.ads.googleads.v6.services.VideoService.GetVideo]. -message GetVideoRequest { - // Required. The resource name of the video to fetch. - string resource_name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "googleads.googleapis.com/Video" - } - ]; -} diff --git a/google/ads/googleads/v7/BUILD.bazel b/google/ads/googleads/v7/BUILD.bazel index b9be25b62..db1324a0f 100644 --- a/google/ads/googleads/v7/BUILD.bazel +++ b/google/ads/googleads/v7/BUILD.bazel @@ -96,25 +96,25 @@ java_gapic_assembly_gradle_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - "php_gapic_assembly_pkg2", - "php_gapic_library2", - "php_grpc_library2", - "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) -php_proto_library2( +php_proto_library( name = "googleads_php_proto", plugin_args = ["aggregate_metadata=google.ads.googleads"], deps = [":googleads_proto"], ) -php_grpc_library2( +php_grpc_library( name = "googleads_php_grpc", srcs = [":googleads_proto"], deps = [":googleads_php_proto"], ) -php_gapic_library2( +php_gapic_library( name = "googleads_php_gapic", srcs = [":googleads_proto"], gapic_yaml = "googleads_gapic.yaml", @@ -126,7 +126,7 @@ php_gapic_library2( ], ) -php_gapic_assembly_pkg2( +php_gapic_assembly_pkg( name = "googleads-php", deps = [ ":googleads_php_gapic", @@ -216,6 +216,7 @@ py_gapic_library( "lazy-import", "python-gapic-name=googleads", "python-gapic-templates=ads-templates", + "warehouse-package-name=google-ads", ], ) diff --git a/google/ads/googleads/v7/common/ad_type_infos.proto b/google/ads/googleads/v7/common/ad_type_infos.proto index 475653e7b..6df1acf18 100644 --- a/google/ads/googleads/v7/common/ad_type_infos.proto +++ b/google/ads/googleads/v7/common/ad_type_infos.proto @@ -109,7 +109,7 @@ message CallOnlyAdInfo { // The conversion action to attribute a call conversion to. If not set a // default conversion action is used. This field only has effect if - // call_tracked is set to true. Otherwise this field is ignored. + // `call_tracked` is set to `true`. Otherwise this field is ignored. optional string conversion_action = 23; // The call conversion behavior of this call only ad. It can use its own call @@ -210,8 +210,8 @@ message DisplayCallToAction { // white. optional string text_color = 6; - // Identifies the url collection in the ad.url_collections field. If not set - // the url defaults to final_url. + // Identifies the URL collection in the `ad.url_collections` field. If not + // set, the URL defaults to `final_url`. optional string url_collection_id = 7; } @@ -402,11 +402,11 @@ message ResponsiveSearchAdInfo { // will be selected from this list. repeated AdTextAsset descriptions = 2; - // First part of text that may appear appended to the url displayed in the ad. + // First part of text that can be appended to the URL in the ad. optional string path1 = 5; - // Second part of text that may appear appended to the url displayed in the - // ad. This field can only be set when path1 is also set. + // Second part of text that can be appended to the URL in the ad. This field + // can only be set when `path1` is also set. optional string path2 = 6; } @@ -428,17 +428,17 @@ message LegacyResponsiveDisplayAdInfo { // Advertiser's consent to allow flexible color. When true, the ad may be // served with different color if necessary. When false, the ad will be served // with the specified colors or a neutral color. - // The default value is true. - // Must be true if main_color and accent_color are not set. + // The default value is `true`. + // Must be true if `main_color` and `accent_color` are not set. optional bool allow_flexible_color = 20; // The accent color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as + // If one of `main_color` and `accent_color` is set, the other is required as // well. optional string accent_color = 21; // The main color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as + // If one of `main_color` and `accent_color` is set, the other is required as // well. optional string main_color = 22; @@ -463,7 +463,7 @@ message LegacyResponsiveDisplayAdInfo { // Prefix before price. E.g. 'as low as'. optional string price_prefix = 28; - // Promotion text used for dyanmic formats of responsive ads. For example + // Promotion text used for dynamic formats of responsive ads. For example // 'Free two-day shipping'. optional string promo_text = 29; } @@ -513,7 +513,7 @@ message AppEngagementAdInfo { // A legacy app install ad that only can be used by a few select customers. message LegacyAppInstallAdInfo { - // The id of the mobile app. + // The ID of the mobile app. optional string app_id = 6; // The app store the mobile app is available in. @@ -533,24 +533,24 @@ message LegacyAppInstallAdInfo { message ResponsiveDisplayAdInfo { // Marketing images to be used in the ad. Valid image types are GIF, // JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must - // be 1.91:1 (+-1%). At least one marketing_image is required. Combined with - // square_marketing_images the maximum is 15. + // be 1.91:1 (+-1%). At least one `marketing_image` is required. Combined + // with `square_marketing_images`, the maximum is 15. repeated AdImageAsset marketing_images = 1; // Square marketing images to be used in the ad. Valid image types are GIF, // JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must - // be 1:1 (+-1%). At least one square marketing_image is required. Combined - // with marketing_images the maximum is 15. + // be 1:1 (+-1%). At least one square `marketing_image` is required. Combined + // with `marketing_images`, the maximum is 15. repeated AdImageAsset square_marketing_images = 2; // Logo images to be used in the ad. Valid image types are GIF, // JPEG, and PNG. The minimum size is 512x128 and the aspect ratio must - // be 4:1 (+-1%). Combined with square_logo_images the maximum is 5. + // be 4:1 (+-1%). Combined with `square_logo_images`, the maximum is 5. repeated AdImageAsset logo_images = 3; // Square logo images to be used in the ad. Valid image types are GIF, // JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must - // be 1:1 (+-1%). Combined with square_logo_images the maximum is 5. + // be 1:1 (+-1%). Combined with `square_logo_images`, the maximum is 5. repeated AdImageAsset square_logo_images = 4; // Short format headlines for the ad. The maximum length is 30 characters. @@ -571,20 +571,20 @@ message ResponsiveDisplayAdInfo { optional string business_name = 17; // The main color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as + // If one of `main_color` and `accent_color` is set, the other is required as // well. optional string main_color = 18; // The accent color of the ad in hexadecimal, e.g. #ffffff for white. - // If one of main_color and accent_color is set, the other is required as + // If one of `main_color` and `accent_color` is set, the other is required as // well. optional string accent_color = 19; // Advertiser's consent to allow flexible color. When true, the ad may be // served with different color if necessary. When false, the ad will be served // with the specified colors or a neutral color. - // The default value is true. - // Must be true if main_color and accent_color are not set. + // The default value is `true`. + // Must be true if `main_color` and `accent_color` are not set. optional bool allow_flexible_color = 20; // The call-to-action text for the ad. Maximum display width is 30. @@ -593,7 +593,7 @@ message ResponsiveDisplayAdInfo { // Prefix before price. E.g. 'as low as'. optional string price_prefix = 22; - // Promotion text used for dyanmic formats of responsive ads. For example + // Promotion text used for dynamic formats of responsive ads. For example // 'Free two-day shipping'. optional string promo_text = 23; @@ -635,17 +635,16 @@ message LocalAdInfo { // are optional and at most 20 can be specified. repeated AdVideoAsset videos = 6; - // First part of optional text that may appear appended to the url displayed - // in the ad. + // First part of optional text that can be appended to the URL in the ad. optional string path1 = 9; - // Second part of optional text that may appear appended to the url displayed - // in the ad. This field can only be set when path1 is also set. + // Second part of optional text that can be appended to the URL in the ad. + // This field can only be set when `path1` is also set. optional string path2 = 10; } // A generic type of display ad. The exact ad format is controlled by the -// display_upload_product_type field, which determines what kinds of data +// `display_upload_product_type` field, which determines what kinds of data // need to be included with the ad. message DisplayUploadAdInfo { // The product type of this ad. See comments on the enum for details. @@ -654,7 +653,7 @@ message DisplayUploadAdInfo { // The asset data that makes up the ad. oneof media_asset { // A media bundle asset to be used in the ad. For information about the - // media bundle for HTML5_UPLOAD_AD see + // media bundle for HTML5_UPLOAD_AD, see // https://support.google.com/google-ads/answer/1722096 // Media bundles that are part of dynamic product types use a special format // that needs to be created through the Google Web Designer. See diff --git a/google/ads/googleads/v7/common/asset_types.proto b/google/ads/googleads/v7/common/asset_types.proto index bf32d2232..0c61dcfd8 100644 --- a/google/ads/googleads/v7/common/asset_types.proto +++ b/google/ads/googleads/v7/common/asset_types.proto @@ -138,7 +138,7 @@ message LeadFormAsset { // and the aspect ratio must be 1.91:1 (+-1%). optional string background_image_asset = 20; - // Desired intent for the lead form, e.g. more volume or higher intent. + // Desired intent for the lead form, e.g. more volume or more qualified. google.ads.googleads.v7.enums.LeadFormDesiredIntentEnum.LeadFormDesiredIntent desired_intent = 21; // Custom disclosure shown along with Google disclaimer on the lead form. diff --git a/google/ads/googleads/v7/common/bidding.proto b/google/ads/googleads/v7/common/bidding.proto index 4f9797c39..3f278bda3 100644 --- a/google/ads/googleads/v7/common/bidding.proto +++ b/google/ads/googleads/v7/common/bidding.proto @@ -66,10 +66,11 @@ message ManualCpv { // An automated bidding strategy to help get the most conversions for your // campaigns while spending your budget. message MaximizeConversions { - // The target cost per acquisition (CPA) option. This is the average amount - // that you would like to spend per acquisition. - // - // This field is read-only. + // The target cost-per-action (CPA) option. This is the average amount that + // you would like to spend per conversion action. If set, the bid strategy + // will get as many conversions as possible at or below the target + // cost-per-action. If the target CPA is not set, the bid strategy will + // aim to achieve the lowest possible CPA given the budget. int64 target_cpa = 1; } @@ -94,10 +95,12 @@ message TargetCpa { // Maximum bid limit that can be set by the bid strategy. // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. optional int64 cpc_bid_ceiling_micros = 5; // Minimum bid limit that can be set by the bid strategy. // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. optional int64 cpc_bid_floor_micros = 6; } @@ -133,10 +136,12 @@ message TargetRoas { // Maximum bid limit that can be set by the bid strategy. // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. optional int64 cpc_bid_ceiling_micros = 5; // Minimum bid limit that can be set by the bid strategy. // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. optional int64 cpc_bid_floor_micros = 6; } diff --git a/google/ads/googleads/v7/common/offline_user_data.proto b/google/ads/googleads/v7/common/offline_user_data.proto index 0cefaf5b4..febbace76 100644 --- a/google/ads/googleads/v7/common/offline_user_data.proto +++ b/google/ads/googleads/v7/common/offline_user_data.proto @@ -91,6 +91,10 @@ message TransactionAttribute { optional string transaction_date_time = 8; // Transaction amount in micros. Required. + // Transaction amount in micros needs to be greater than 1000. + // If item Attributes are provided, it represents the total value of the + // items, after multiplying the unit price per item by the quantity provided + // in the ItemAttributes. optional double transaction_amount_micros = 9; // Transaction currency code. ISO 4217 three-letter code is used. Required. diff --git a/google/ads/googleads/v7/common/user_lists.proto b/google/ads/googleads/v7/common/user_lists.proto index 8eded2d14..8cba7b33c 100644 --- a/google/ads/googleads/v7/common/user_lists.proto +++ b/google/ads/googleads/v7/common/user_lists.proto @@ -48,7 +48,7 @@ message SimilarUserListInfo { // UserList of CRM users provided by the advertiser. message CrmBasedUserListInfo { // A string that uniquely identifies a mobile application from which the data - // was collected to the Google Ads API. + // was collected. // For iOS, the ID string is the 9 digit string that appears at the end of an // App Store URL (e.g., "476943146" for "Flood-It! 2" whose App Store link is // http://itunes.apple.com/us/app/flood-it!-2/id476943146). diff --git a/google/ads/googleads/v7/common/value.proto b/google/ads/googleads/v7/common/value.proto index bc9f1779e..57190b33d 100644 --- a/google/ads/googleads/v7/common/value.proto +++ b/google/ads/googleads/v7/common/value.proto @@ -27,7 +27,7 @@ option objc_class_prefix = "GAA"; option php_namespace = "Google\\Ads\\GoogleAds\\V7\\Common"; option ruby_package = "Google::Ads::GoogleAds::V7::Common"; -// Proto file describing value types +// Proto file describing value types. // A generic data container. message Value { diff --git a/google/ads/googleads/v7/enums/google_ads_field_category.proto b/google/ads/googleads/v7/enums/google_ads_field_category.proto index 12533c31e..9cf6e5843 100644 --- a/google/ads/googleads/v7/enums/google_ads_field_category.proto +++ b/google/ads/googleads/v7/enums/google_ads_field_category.proto @@ -27,7 +27,7 @@ option objc_class_prefix = "GAA"; option php_namespace = "Google\\Ads\\GoogleAds\\V7\\Enums"; option ruby_package = "Google::Ads::GoogleAds::V7::Enums"; -// Proto file describing GoogleAdsField categories +// Proto file describing GoogleAdsField categories. // Container for enum that determines if the described artifact is a resource // or a field, and if it is a field, when it segments search queries. diff --git a/google/ads/googleads/v7/enums/google_ads_field_data_type.proto b/google/ads/googleads/v7/enums/google_ads_field_data_type.proto index bb24ceea8..2630ef208 100644 --- a/google/ads/googleads/v7/enums/google_ads_field_data_type.proto +++ b/google/ads/googleads/v7/enums/google_ads_field_data_type.proto @@ -27,7 +27,7 @@ option objc_class_prefix = "GAA"; option php_namespace = "Google\\Ads\\GoogleAds\\V7\\Enums"; option ruby_package = "Google::Ads::GoogleAds::V7::Enums"; -// Proto file describing GoogleAdsField data types +// Proto file describing GoogleAdsField data types. // Container holding the various data types. message GoogleAdsFieldDataTypeEnum { diff --git a/google/ads/googleads/v7/enums/lead_form_desired_intent.proto b/google/ads/googleads/v7/enums/lead_form_desired_intent.proto index f93b79339..fe5053758 100644 --- a/google/ads/googleads/v7/enums/lead_form_desired_intent.proto +++ b/google/ads/googleads/v7/enums/lead_form_desired_intent.proto @@ -40,7 +40,7 @@ message LeadFormDesiredIntentEnum { // Deliver more leads at a potentially lower quality. LOW_INTENT = 2; - // Only leads with a high level of intent are desired. + // Deliver leads that are more qualified. HIGH_INTENT = 3; } diff --git a/google/ads/googleads/v7/enums/location_source_type.proto b/google/ads/googleads/v7/enums/location_source_type.proto index a93d5ec53..a93fd75f6 100644 --- a/google/ads/googleads/v7/enums/location_source_type.proto +++ b/google/ads/googleads/v7/enums/location_source_type.proto @@ -39,8 +39,7 @@ message LocationSourceTypeEnum { // Used for return value only. Represents value unknown in this version. UNKNOWN = 1; - // Locations associated with the customer's linked Google My Business - // account. + // Locations associated with the customer's linked Business Profile. GOOGLE_MY_BUSINESS = 2; // Affiliate (chain) store locations. For example, Best Buy store locations. diff --git a/google/ads/googleads/v7/enums/placeholder_type.proto b/google/ads/googleads/v7/enums/placeholder_type.proto index 5e6572215..8c363c3de 100644 --- a/google/ads/googleads/v7/enums/placeholder_type.proto +++ b/google/ads/googleads/v7/enums/placeholder_type.proto @@ -51,8 +51,8 @@ message PlaceholderTypeEnum { // addition to a website. APP = 4; - // Lets you show locations of businesses from your Google My Business - // account in your ad. This helps people find your locations by showing your + // Lets you show locations of businesses from your Business Profile + // in your ad. This helps people find your locations by showing your // ads with your address, a map to your location, or the distance to your // business. This extension type is useful to draw customers to your // brick-and-mortar location. diff --git a/google/ads/googleads/v7/errors/authentication_error.proto b/google/ads/googleads/v7/errors/authentication_error.proto index f4b24f87c..680208a79 100644 --- a/google/ads/googleads/v7/errors/authentication_error.proto +++ b/google/ads/googleads/v7/errors/authentication_error.proto @@ -42,10 +42,10 @@ message AuthenticationErrorEnum { // Authentication of the request failed. AUTHENTICATION_ERROR = 2; - // Client Customer Id is not a number. + // Client Customer ID is not a number. CLIENT_CUSTOMER_ID_INVALID = 5; - // No customer found for the provided customer id. + // No customer found for the provided customer ID. CUSTOMER_NOT_FOUND = 8; // Client's Google Account is deleted. @@ -57,7 +57,7 @@ message AuthenticationErrorEnum { // A problem occurred during Google account authentication. GOOGLE_ACCOUNT_AUTHENTICATION_FAILED = 25; - // The user in the google account login token does not match the UserId in + // The user in the Google account login token does not match the user ID in // the cookie. GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH = 12; diff --git a/google/ads/googleads/v7/errors/conversion_upload_error.proto b/google/ads/googleads/v7/errors/conversion_upload_error.proto index 30924aa1d..e42b2a077 100644 --- a/google/ads/googleads/v7/errors/conversion_upload_error.proto +++ b/google/ads/googleads/v7/errors/conversion_upload_error.proto @@ -63,8 +63,8 @@ message ConversionUploadErrorEnum { // Ads clicks. GCLID_NOT_FOUND = 7; - // The click associated with the given gclid is owned by a customer - // account that the uploading customer does not manage. + // The click associated with the given gclid is owned by a customer account + // that the uploading customer does not manage. UNAUTHORIZED_CUSTOMER = 8; // No upload eligible conversion action that matches the provided diff --git a/google/ads/googleads/v7/errors/errors.proto b/google/ads/googleads/v7/errors/errors.proto index ac03cdac0..e28abcc58 100644 --- a/google/ads/googleads/v7/errors/errors.proto +++ b/google/ads/googleads/v7/errors/errors.proto @@ -158,7 +158,7 @@ message GoogleAdsFailure { // The list of errors that occurred. repeated GoogleAdsError errors = 1; - // The unique id of the request that is used for debugging purposes. + // The unique ID of the request that is used for debugging purposes. string request_id = 2; } diff --git a/google/ads/googleads/v7/errors/feed_error.proto b/google/ads/googleads/v7/errors/feed_error.proto index e7b996a4a..1a9732f4c 100644 --- a/google/ads/googleads/v7/errors/feed_error.proto +++ b/google/ads/googleads/v7/errors/feed_error.proto @@ -91,7 +91,7 @@ message FeedErrorEnum { // The business account is not valid. INVALID_BUSINESS_ACCOUNT = 18; - // Business account cannot access Google My Business account. + // Business account cannot access Business Profile. BUSINESS_ACCOUNT_CANNOT_ACCESS_LOCATION_ACCOUNT = 19; // Invalid chain ID provided for affiliate location feed. @@ -100,7 +100,7 @@ message FeedErrorEnum { // There is already a feed with the given system feed generation data. DUPLICATE_SYSTEM_FEED = 21; - // An error occurred accessing GMB account. + // An error occurred accessing Business Profile. GMB_ACCESS_ERROR = 22; // A customer cannot have both LOCATION and AFFILIATE_LOCATION feeds. diff --git a/google/ads/googleads/v7/errors/header_error.proto b/google/ads/googleads/v7/errors/header_error.proto index a7d2c2f65..853de948b 100644 --- a/google/ads/googleads/v7/errors/header_error.proto +++ b/google/ads/googleads/v7/errors/header_error.proto @@ -39,10 +39,10 @@ message HeaderErrorEnum { // The received error code is not known in this version. UNKNOWN = 1; - // The login customer id could not be validated. + // The login customer ID could not be validated. INVALID_LOGIN_CUSTOMER_ID = 3; - // The linked customer id could not be validated. + // The linked customer ID could not be validated. INVALID_LINKED_CUSTOMER_ID = 7; } diff --git a/google/ads/googleads/v7/errors/keyword_plan_ad_group_keyword_error.proto b/google/ads/googleads/v7/errors/keyword_plan_ad_group_keyword_error.proto index 405e30808..e4a1e56de 100644 --- a/google/ads/googleads/v7/errors/keyword_plan_ad_group_keyword_error.proto +++ b/google/ads/googleads/v7/errors/keyword_plan_ad_group_keyword_error.proto @@ -63,6 +63,9 @@ message KeywordPlanAdGroupKeywordErrorEnum { // Cpc Bid set for negative keyword. NEGATIVE_KEYWORD_HAS_CPC_BID = 8; + + // New broad match modifier (BMM) KpAdGroupKeywords are not allowed. + NEW_BMM_KEYWORDS_NOT_ALLOWED = 9; } diff --git a/google/ads/googleads/v7/errors/manager_link_error.proto b/google/ads/googleads/v7/errors/manager_link_error.proto index 50680cd83..e884e9257 100644 --- a/google/ads/googleads/v7/errors/manager_link_error.proto +++ b/google/ads/googleads/v7/errors/manager_link_error.proto @@ -57,7 +57,7 @@ message ManagerLinkErrorEnum { // Client is already managed in hierarchy. ALREADY_MANAGED_IN_HIERARCHY = 7; - // Manger and sub-manager to be linked have duplicate client. + // Manager and sub-manager to be linked have duplicate client. DUPLICATE_CHILD_FOUND = 8; // Client has no active user that can access the client account. diff --git a/google/ads/googleads/v7/errors/operation_access_denied_error.proto b/google/ads/googleads/v7/errors/operation_access_denied_error.proto index cfccd15e4..d7ab9a222 100644 --- a/google/ads/googleads/v7/errors/operation_access_denied_error.proto +++ b/google/ads/googleads/v7/errors/operation_access_denied_error.proto @@ -51,7 +51,7 @@ message OperationAccessDeniedErrorEnum { // Unauthorized UPDATE operation in invoking a service's mutate method. UPDATE_OPERATION_NOT_PERMITTED = 5; - // A mutate action is not allowed on this campaign, from this client. + // A mutate action is not allowed on this resource, from this client. MUTATE_ACTION_NOT_PERMITTED_FOR_CLIENT = 6; // This operation is not permitted on this campaign type @@ -60,7 +60,7 @@ message OperationAccessDeniedErrorEnum { // A CREATE operation may not set status to REMOVED. CREATE_AS_REMOVED_NOT_PERMITTED = 8; - // This operation is not allowed because the campaign or adgroup is removed. + // This operation is not allowed because the resource is removed. OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 9; // This operation is not permitted on this ad group type. diff --git a/google/ads/googleads/v7/errors/url_field_error.proto b/google/ads/googleads/v7/errors/url_field_error.proto index c657bfdcc..467b0f675 100644 --- a/google/ads/googleads/v7/errors/url_field_error.proto +++ b/google/ads/googleads/v7/errors/url_field_error.proto @@ -193,7 +193,7 @@ message UrlFieldErrorEnum { // The final url suffix cannot contain {lpurl} related or {ignore} tags. INVALID_TAG_IN_FINAL_URL_SUFFIX = 51; - // The top level domain is invalid, e.g, not a public top level domain + // The top level domain is invalid, e.g. not a public top level domain // listed in publicsuffix.org. INVALID_TOP_LEVEL_DOMAIN = 53; diff --git a/google/ads/googleads/v7/googleads_v7.yaml b/google/ads/googleads/v7/googleads_v7.yaml index 7db05a011..6d4d7aa68 100644 --- a/google/ads/googleads/v7/googleads_v7.yaml +++ b/google/ads/googleads/v7/googleads_v7.yaml @@ -289,15 +289,15 @@ backend: - selector: google.ads.googleads.v7.services.ConversionActionService.MutateConversionActions deadline: 60.0 - selector: google.ads.googleads.v7.services.ConversionAdjustmentUploadService.UploadConversionAdjustments - deadline: 60.0 + deadline: 600.0 - selector: google.ads.googleads.v7.services.ConversionCustomVariableService.GetConversionCustomVariable deadline: 60.0 - selector: google.ads.googleads.v7.services.ConversionCustomVariableService.MutateConversionCustomVariables deadline: 60.0 - selector: google.ads.googleads.v7.services.ConversionUploadService.UploadCallConversions - deadline: 60.0 + deadline: 600.0 - selector: google.ads.googleads.v7.services.ConversionUploadService.UploadClickConversions - deadline: 60.0 + deadline: 600.0 - selector: google.ads.googleads.v7.services.CurrencyConstantService.GetCurrencyConstant deadline: 60.0 - selector: google.ads.googleads.v7.services.CustomAudienceService.GetCustomAudience diff --git a/google/ads/googleads/v7/resources/ad_group.proto b/google/ads/googleads/v7/resources/ad_group.proto index be51936c9..c602fe05c 100644 --- a/google/ads/googleads/v7/resources/ad_group.proto +++ b/google/ads/googleads/v7/resources/ad_group.proto @@ -116,7 +116,11 @@ message AdGroup { // The maximum CPM (cost-per-thousand viewable impressions) bid. optional int64 cpm_bid_micros = 40; - // The target CPA (cost-per-acquisition). + // The target CPA (cost-per-acquisition). If the ad group's campaign + // bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa + // field set), then this field overrides the target CPA specified in the + // campaign's bidding strategy. + // Otherwise, this value is ignored. optional int64 target_cpa_micros = 41; // Output only. The CPV (cost-per-view) bid. @@ -127,8 +131,9 @@ message AdGroup { optional int64 target_cpm_micros = 43; // The target ROAS (return-on-ad-spend) override. If the ad group's campaign - // bidding strategy is a standard Target ROAS strategy, then this field - // overrides the target ROAS specified in the campaign's bidding strategy. + // bidding strategy is TargetRoas or MaximizeConversionValue (with its + // target_roas field set), then this field overrides the target ROAS specified + // in the campaign's bidding strategy. // Otherwise, this value is ignored. optional double target_roas = 44; diff --git a/google/ads/googleads/v7/resources/ad_group_simulation.proto b/google/ads/googleads/v7/resources/ad_group_simulation.proto index 028fc7eec..cfec43b17 100644 --- a/google/ads/googleads/v7/resources/ad_group_simulation.proto +++ b/google/ads/googleads/v7/resources/ad_group_simulation.proto @@ -45,8 +45,6 @@ option ruby_package = "Google::Ads::GoogleAds::V7::Resources"; // 5. DISPLAY - CPC_BID - DEFAULT // 6. DISPLAY - CPC_BID - UNIFORM // 7. DISPLAY - TARGET_CPA - UNIFORM -// 8. VIDEO - CPV_BID - DEFAULT -// 9. VIDEO - CPV_BID - UNIFORM message AdGroupSimulation { option (google.api.resource) = { type: "googleads.googleapis.com/AdGroupSimulation" diff --git a/google/ads/googleads/v7/resources/campaign.proto b/google/ads/googleads/v7/resources/campaign.proto index c06f7481e..de5b3da6a 100644 --- a/google/ads/googleads/v7/resources/campaign.proto +++ b/google/ads/googleads/v7/resources/campaign.proto @@ -109,6 +109,22 @@ message Campaign { optional string tracking_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } + // Selective optimization setting for this campaign, which includes a set of + // conversion actions to optimize this campaign towards. + message SelectiveOptimization { + // The selected set of conversion actions for optimizing this campaign. + repeated string conversion_actions = 2 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionAction" + }]; + } + + // Optimization goal setting for this campaign, which includes a set of + // optimization goal types. + message OptimizationGoalSetting { + // The list of optimization goal types. + repeated google.ads.googleads.v7.enums.OptimizationGoalTypeEnum.OptimizationGoalType optimization_goal_types = 1; + } + // The setting for Shopping campaigns. Defines the universe of products that // can be advertised by the campaign, and how this campaign interacts with // other Shopping campaigns. @@ -118,11 +134,11 @@ message Campaign { // Shopping campaigns. optional int64 merchant_id = 5 [(google.api.field_behavior) = IMMUTABLE]; - // Immutable. Sales country of products to include in the campaign. - // This field is required for Shopping campaigns. This field is immutable. + // Sales country of products to include in the campaign. + // This field is required for Shopping campaigns. // This field is optional for non-Shopping campaigns, but it must be equal // to 'ZZ' if set. - optional string sales_country = 6 [(google.api.field_behavior) = IMMUTABLE]; + optional string sales_country = 6; // Priority of the campaign. Campaigns with numerically higher priorities // take precedence over those with lower priorities. @@ -145,19 +161,6 @@ message Campaign { google.ads.googleads.v7.enums.NegativeGeoTargetTypeEnum.NegativeGeoTargetType negative_geo_target_type = 2; } - // Campaign-level settings for App Campaigns. - message AppCampaignSetting { - // Represents the goal which the bidding strategy of this app campaign - // should optimize towards. - google.ads.googleads.v7.enums.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType bidding_strategy_goal_type = 1; - - // Immutable. A string that uniquely identifies a mobile application. - optional string app_id = 4 [(google.api.field_behavior) = IMMUTABLE]; - - // Immutable. The application store that distributes this specific app. - google.ads.googleads.v7.enums.AppCampaignAppStoreEnum.AppCampaignAppStore app_store = 3 [(google.api.field_behavior) = IMMUTABLE]; - } - // Campaign setting for local campaigns. message LocalCampaignSetting { // The location source type for this local campaign. @@ -174,20 +177,17 @@ message Campaign { google.ads.googleads.v7.enums.VanityPharmaTextEnum.VanityPharmaText vanity_pharma_text = 2; } - // Selective optimization setting for this campaign, which includes a set of - // conversion actions to optimize this campaign towards. - message SelectiveOptimization { - // The selected set of conversion actions for optimizing this campaign. - repeated string conversion_actions = 2 [(google.api.resource_reference) = { - type: "googleads.googleapis.com/ConversionAction" - }]; - } + // Campaign-level settings for App Campaigns. + message AppCampaignSetting { + // Represents the goal which the bidding strategy of this app campaign + // should optimize towards. + google.ads.googleads.v7.enums.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType bidding_strategy_goal_type = 1; - // Optimization goal setting for this campaign, which includes a set of - // optimization goal types. - message OptimizationGoalSetting { - // The list of optimization goal types. - repeated google.ads.googleads.v7.enums.OptimizationGoalTypeEnum.OptimizationGoalType optimization_goal_types = 1; + // Immutable. A string that uniquely identifies a mobile application. + optional string app_id = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The application store that distributes this specific app. + google.ads.googleads.v7.enums.AppCampaignAppStoreEnum.AppCampaignAppStore app_store = 3 [(google.api.field_behavior) = IMMUTABLE]; } // Immutable. The resource name of the campaign. diff --git a/google/ads/googleads/v7/resources/campaign_criterion_simulation.proto b/google/ads/googleads/v7/resources/campaign_criterion_simulation.proto index 014ced434..bfa4c5a73 100644 --- a/google/ads/googleads/v7/resources/campaign_criterion_simulation.proto +++ b/google/ads/googleads/v7/resources/campaign_criterion_simulation.proto @@ -39,8 +39,7 @@ option ruby_package = "Google::Ads::GoogleAds::V7::Resources"; // method is detailed below respectively. // // 1. SEARCH - 30000,30001,30002 - BID_MODIFIER - UNIFORM -// 2. SHOPPING - 30000,30001,30002 - BID_MODIFIER - UNIFORM -// 3. DISPLAY - 30001 - BID_MODIFIER - UNIFORM +// 2. DISPLAY - 30001 - BID_MODIFIER - UNIFORM message CampaignCriterionSimulation { option (google.api.resource) = { type: "googleads.googleapis.com/CampaignCriterionSimulation" diff --git a/google/ads/googleads/v7/resources/change_event.proto b/google/ads/googleads/v7/resources/change_event.proto index 60af08739..ad98d3fdb 100644 --- a/google/ads/googleads/v7/resources/change_event.proto +++ b/google/ads/googleads/v7/resources/change_event.proto @@ -108,7 +108,7 @@ message ChangeEvent { // Output only. The resource name of the change event. // Change event resource names have the form: // - // `customers/{customer_id}/changeEvent/{timestamp_micros}~{command_index}~{mutate_index}` + // `customers/{customer_id}/changeEvents/{timestamp_micros}~{command_index}~{mutate_index}` string resource_name = 1 [ (google.api.field_behavior) = OUTPUT_ONLY, (google.api.resource_reference) = { diff --git a/google/ads/googleads/v7/resources/extension_feed_item.proto b/google/ads/googleads/v7/resources/extension_feed_item.proto index 880a0bd4a..2dd6ae368 100644 --- a/google/ads/googleads/v7/resources/extension_feed_item.proto +++ b/google/ads/googleads/v7/resources/extension_feed_item.proto @@ -119,8 +119,8 @@ message ExtensionFeedItem { // Promotion extension. google.ads.googleads.v7.common.PromotionFeedItem promotion_feed_item = 12; - // Output only. Location extension. Locations are synced from a GMB account into a feed. - // This field is read-only. + // Output only. Location extension. Locations are synced from a Business Profile into a + // feed. This field is read-only. google.ads.googleads.v7.common.LocationFeedItem location_feed_item = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Affiliate location extension. Feed locations are populated by Google Ads diff --git a/google/ads/googleads/v7/resources/feed.proto b/google/ads/googleads/v7/resources/feed.proto index 29c3d3f34..c106cc9a8 100644 --- a/google/ads/googleads/v7/resources/feed.proto +++ b/google/ads/googleads/v7/resources/feed.proto @@ -42,8 +42,7 @@ message Feed { pattern: "customers/{customer_id}/feeds/{feed_id}" }; - // Data used to configure a location feed populated from Google My Business - // Locations. + // Data used to configure a location feed populated from Business Profile. message PlacesLocationFeedData { // Data used for authorization using OAuth. message OAuthInfo { @@ -62,8 +61,8 @@ message Feed { // are not selectable. OAuthInfo oauth_info = 1 [(google.api.field_behavior) = IMMUTABLE]; - // Email address of a Google My Business account or email address of a - // manager of the Google My Business account. Required. + // Email address of a Business Profile or email address of a + // manager of the Business Profile. Required. optional string email_address = 7; // Plus page ID of the managed business whose locations should be used. If @@ -72,18 +71,18 @@ message Feed { // This field is mutate-only and is not selectable. string business_account_id = 8; - // Used to filter Google My Business listings by business name. If + // Used to filter Business Profile listings by business name. If // business_name_filter is set, only listings with a matching business name // are candidates to be sync'd into FeedItems. optional string business_name_filter = 9; - // Used to filter Google My Business listings by categories. If entries + // Used to filter Business Profile listings by categories. If entries // exist in category_filters, only listings that belong to any of the // categories are candidates to be sync'd into FeedItems. If no entries // exist in category_filters, then all listings are candidates for syncing. repeated string category_filters = 11; - // Used to filter Google My Business listings by labels. If entries exist in + // Used to filter Business Profile listings by labels. If entries exist in // label_filters, only listings that has any of the labels set are // candidates to be synchronized into FeedItems. If no entries exist in // label_filters, then all listings are candidates for syncing. @@ -139,8 +138,7 @@ message Feed { // The system data for the Feed. This data specifies information for // generating the feed items of the system generated feed. oneof system_feed_generation_data { - // Data used to configure a location feed populated from Google My Business - // Locations. + // Data used to configure a location feed populated from Business Profile. PlacesLocationFeedData places_location_feed_data = 6; // Data used to configure an affiliate location feed populated with diff --git a/google/ads/googleads/v7/resources/google_ads_field.proto b/google/ads/googleads/v7/resources/google_ads_field.proto index 67b1e01b6..2204d2347 100644 --- a/google/ads/googleads/v7/resources/google_ads_field.proto +++ b/google/ads/googleads/v7/resources/google_ads_field.proto @@ -80,24 +80,15 @@ message GoogleAdsField { // This field is only set for artifacts whose category is RESOURCE. repeated string attribute_resources = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. At and beyond version V1 this field lists the names of all metrics that are - // selectable with the described artifact when it is used in the FROM clause. + // Output only. This field lists the names of all metrics that are selectable with the + // described artifact when it is used in the FROM clause. // It is only set for artifacts whose category is RESOURCE. - // - // Before version V1 this field lists the names of all metrics that are - // selectable with the described artifact. It is only set for artifacts whose - // category is either RESOURCE or SEGMENT repeated string metrics = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. At and beyond version V1 this field lists the names of all artifacts, - // whether a segment or another resource, that segment metrics when included - // in search queries and when the described artifact is used in the FROM - // clause. It is only set for artifacts whose category is RESOURCE. - // - // Before version V1 this field lists the names of all artifacts, whether a - // segment or another resource, that segment metrics when included in search - // queries. It is only set for artifacts of category RESOURCE, SEGMENT or - // METRIC. + // Output only. This field lists the names of all artifacts, whether a segment or another + // resource, that segment metrics when included in search queries and when the + // described artifact is used in the FROM clause. It is only set for artifacts + // whose category is RESOURCE. repeated string segments = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Values the artifact can assume if it is a field of type ENUM. diff --git a/google/ads/googleads/v7/resources/operating_system_version_constant.proto b/google/ads/googleads/v7/resources/operating_system_version_constant.proto index 0eced1f81..1495e49fd 100644 --- a/google/ads/googleads/v7/resources/operating_system_version_constant.proto +++ b/google/ads/googleads/v7/resources/operating_system_version_constant.proto @@ -34,7 +34,7 @@ option ruby_package = "Google::Ads::GoogleAds::V7::Resources"; // A mobile operating system version or a range of versions, depending on // `operator_type`. List of available mobile platforms at -// https://developers.google.com/adwords/api/docs/appendix/codes-formats#mobile-platforms +// https://developers.google.com/google-ads/api/reference/data/codes-formats#mobile-platforms message OperatingSystemVersionConstant { option (google.api.resource) = { type: "googleads.googleapis.com/OperatingSystemVersionConstant" diff --git a/google/ads/googleads/v7/resources/recommendation.proto b/google/ads/googleads/v7/resources/recommendation.proto index 452cef750..edaa6d072 100644 --- a/google/ads/googleads/v7/resources/recommendation.proto +++ b/google/ads/googleads/v7/resources/recommendation.proto @@ -105,10 +105,9 @@ message Recommendation { optional int64 recommended_cpc_bid_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; } - // The Call extension recommendation. - message CallExtensionRecommendation { - // Output only. Call extensions recommended to be added. - repeated google.ads.googleads.v7.common.CallFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + // The Search Partners Opt-In recommendation. + message SearchPartnersOptInRecommendation { + } // The text ad recommendation. @@ -126,8 +125,14 @@ message Recommendation { optional string auto_apply_date = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; } - // The Optimize Ad Rotation recommendation. - message OptimizeAdRotationRecommendation { + // The Call extension recommendation. + message CallExtensionRecommendation { + // Output only. Call extensions recommended to be added. + repeated google.ads.googleads.v7.common.CallFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Enhanced Cost-Per-Click Opt-In recommendation. + message EnhancedCpcOptInRecommendation { } @@ -159,48 +164,15 @@ message Recommendation { optional int64 recommended_target_cpa_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; } - // The move unused budget recommendation. - message MoveUnusedBudgetRecommendation { - // Output only. The excess budget's resource_name. - optional string excess_campaign_budget = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The recommendation for the constrained budget to increase. - CampaignBudgetRecommendation budget_recommendation = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Enhanced Cost-Per-Click Opt-In recommendation. - message EnhancedCpcOptInRecommendation { - - } - // The Maximize Conversions Opt-In recommendation. message MaximizeConversionsOptInRecommendation { // Output only. The recommended new budget amount. optional int64 recommended_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } - // The Target ROAS opt-in recommendation. - message TargetRoasOptInRecommendation { - // Output only. The recommended target ROAS (revenue per unit of spend). - // The value is between 0.01 and 1000.0, inclusive. - optional double recommended_target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The minimum campaign budget, in local currency for the account, - // required to achieve the target ROAS. - // Amount is specified in micros, where one million is equivalent to one - // currency unit. - optional int64 required_campaign_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - - // The Search Partners Opt-In recommendation. - message SearchPartnersOptInRecommendation { - - } + // The Optimize Ad Rotation recommendation. + message OptimizeAdRotationRecommendation { - // The Sitelink extension recommendation. - message SitelinkExtensionRecommendation { - // Output only. Sitelink extensions recommended to be added. - repeated google.ads.googleads.v7.common.SitelinkFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; } // The Maximize Clicks opt-in recommendation. @@ -210,12 +182,6 @@ message Recommendation { optional int64 recommended_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } - // The Callout extension recommendation. - message CalloutExtensionRecommendation { - // Output only. Callout extensions recommended to be added. - repeated google.ads.googleads.v7.common.CalloutFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - } - // The keyword match type recommendation. message KeywordMatchTypeRecommendation { // Output only. The existing keyword where the match type should be more broad. @@ -225,12 +191,46 @@ message Recommendation { google.ads.googleads.v7.enums.KeywordMatchTypeEnum.KeywordMatchType recommended_match_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } + // The move unused budget recommendation. + message MoveUnusedBudgetRecommendation { + // Output only. The excess budget's resource_name. + optional string excess_campaign_budget = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommendation for the constrained budget to increase. + CampaignBudgetRecommendation budget_recommendation = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + // The add responsive search ad recommendation. message ResponsiveSearchAdRecommendation { // Output only. Recommended ad. Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; } + // The Callout extension recommendation. + message CalloutExtensionRecommendation { + // Output only. Callout extensions recommended to be added. + repeated google.ads.googleads.v7.common.CalloutFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Sitelink extension recommendation. + message SitelinkExtensionRecommendation { + // Output only. Sitelink extensions recommended to be added. + repeated google.ads.googleads.v7.common.SitelinkFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Target ROAS opt-in recommendation. + message TargetRoasOptInRecommendation { + // Output only. The recommended target ROAS (revenue per unit of spend). + // The value is between 0.01 and 1000.0, inclusive. + optional double recommended_target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The minimum campaign budget, in local currency for the account, + // required to achieve the target ROAS. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + optional int64 required_campaign_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + // Immutable. The resource name of the recommendation. // // `customers/{customer_id}/recommendations/{recommendation_id}` diff --git a/google/ads/googleads/v7/services/google_ads_field_service.proto b/google/ads/googleads/v7/services/google_ads_field_service.proto index d056e0aeb..9219d20dd 100644 --- a/google/ads/googleads/v7/services/google_ads_field_service.proto +++ b/google/ads/googleads/v7/services/google_ads_field_service.proto @@ -31,7 +31,7 @@ option objc_class_prefix = "GAA"; option php_namespace = "Google\\Ads\\GoogleAds\\V7\\Services"; option ruby_package = "Google::Ads::GoogleAds::V7::Services"; -// Proto file describing the GoogleAdsFieldService +// Proto file describing the GoogleAdsFieldService. // Service to fetch Google Ads API fields. service GoogleAdsFieldService { diff --git a/google/ads/googleads/v7/services/reach_plan_service.proto b/google/ads/googleads/v7/services/reach_plan_service.proto index 7b0254186..0ef871360 100644 --- a/google/ads/googleads/v7/services/reach_plan_service.proto +++ b/google/ads/googleads/v7/services/reach_plan_service.proto @@ -129,8 +129,8 @@ message ListPlannableLocationsRequest { message ListPlannableLocationsResponse { // The list of locations available for planning (Countries, DMAs, // sub-countries). - // For locations like Countries, DMAs see - // https://developers.google.com/adwords/api/docs/appendix/geotargeting for + // For locations like Countries and DMAs see + // https://developers.google.com/google-ads/api/reference/data/geotargets for // more information. repeated PlannableLocation plannable_locations = 1; } @@ -144,17 +144,18 @@ message PlannableLocation { // The unique location name in english. optional string name = 5; - // The parent country code, not present if location is a country. - // If present will always be a criterion id: additional information, such as - // country name are returned both via ListPlannableLocations or directly by - // accessing GeoTargetConstantService with the criterion id. + // The parent country, not present if location is a country. + // If present will always be a GeoTargetConstant ID. Additional information, + // such as country name is provided by + // [ReachPlanService.ListPlannableLocations][google.ads.googleads.v7.services.ReachPlanService.ListPlannableLocations] or directly by accessing + // [GeoTargetConstantService.GetGeoTargetConstant][google.ads.googleads.v7.services.GeoTargetConstantService.GetGeoTargetConstant]. optional int64 parent_country_id = 6; } // Request to list available products in a given location. message ListPlannableProductsRequest { // Required. The ID of the selected location for planning. To list the available - // plannable location ids use ListPlannableLocations. + // plannable location ids use [ReachPlanService.ListPlannableLocations][google.ads.googleads.v7.services.ReachPlanService.ListPlannableLocations]. string plannable_location_id = 2 [(google.api.field_behavior) = REQUIRED]; } @@ -188,6 +189,9 @@ message PlannableTargeting { repeated google.ads.googleads.v7.common.GenderInfo genders = 2; // Targetable devices for the ad product. + // TABLET device targeting is automatically applied to reported metrics + // when MOBILE targeting is selected for CPM_MASTHEAD, + // GOOGLE_PREFERRED_BUMPER and GOOGLE_PREFERRED_SHORT products. repeated google.ads.googleads.v7.common.DeviceInfo devices = 3; // Targetable networks for the ad product. @@ -200,7 +204,7 @@ message GenerateProductMixIdeasRequest { string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; // Required. The ID of the location, this is one of the ids returned by - // ListPlannableLocations. + // [ReachPlanService.ListPlannableLocations][google.ads.googleads.v7.services.ReachPlanService.ListPlannableLocations]. string plannable_location_id = 6 [(google.api.field_behavior) = REQUIRED]; // Required. Currency code. @@ -251,7 +255,7 @@ message GenerateProductMixIdeasResponse { message ProductAllocation { // Selected product for planning. The product codes returned are within the // set of the ones returned by ListPlannableProducts when using the same - // location id. + // location ID. optional string plannable_product_code = 3; // The value to be allocated for the suggested product in requested currency. @@ -285,7 +289,7 @@ message GenerateReachForecastRequest { // This is equivalent to the frequency cap exposed in Google Ads when creating // a campaign, it represents the maximum number of times an ad can be shown to // the same user during a specified time interval. - // If not specified, no cap is applied. + // If not specified, a default of 0 (no cap) is applied. // // This field replaces the deprecated cookie_frequency_cap field. FrequencyCap cookie_frequency_cap_setting = 8; @@ -294,6 +298,8 @@ message GenerateReachForecastRequest { // exposed to the ad) for the reported reach metrics [1-10]. // This won't affect the targeting, but just the reporting. // If not specified, a default of 1 is applied. + // + // This field cannot be combined with the effective_frequency_limit field. optional int32 min_effective_frequency = 11; // The targeting to be applied to all products selected in the product mix. @@ -302,9 +308,6 @@ message GenerateReachForecastRequest { // advertising product, please consult an implementation specialist. // // See specific metrics for details on how targeting affects them. - // - // In some cases, targeting may be overridden using the - // PlannedProduct.advanced_product_targeting field. Targeting targeting = 6; // Required. The products to be forecast. @@ -324,32 +327,36 @@ message FrequencyCap { // The targeting for which traffic metrics will be reported. message Targeting { - // Required. The ID of the selected location. - // Plannable locations ID can be obtained from ListPlannableLocations. + // Required. The ID of the selected location. Plannable location IDs can be + // obtained from [ReachPlanService.ListPlannableLocations][google.ads.googleads.v7.services.ReachPlanService.ListPlannableLocations]. optional string plannable_location_id = 6; // Targeted age range. - // If not specified, targets all age ranges. + // An unset value is equivalent to targeting all ages. google.ads.googleads.v7.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_range = 2; // Targeted genders. - // If not specified, targets all genders. + // An unset value is equivalent to targeting MALE and FEMALE. repeated google.ads.googleads.v7.common.GenderInfo genders = 3; // Targeted devices. // If not specified, targets all applicable devices. Applicable devices vary - // by product and region and can be obtained from ListPlannableProducts. + // by product and region and can be obtained from + // [ReachPlanService.ListPlannableProducts][google.ads.googleads.v7.services.ReachPlanService.ListPlannableProducts]. repeated google.ads.googleads.v7.common.DeviceInfo devices = 4; // Targetable network for the ad product. // If not specified, targets all applicable networks. Applicable networks vary - // by product and region and can be obtained from ListPlannableProducts. + // by product and region and can be obtained from + // [ReachPlanService.ListPlannableProducts][google.ads.googleads.v7.services.ReachPlanService.ListPlannableProducts]. google.ads.googleads.v7.enums.ReachPlanNetworkEnum.ReachPlanNetwork network = 5; } // The duration of a planned campaign. message CampaignDuration { // The duration value in days. + // + // This field cannot be combined with the date_range field. optional int32 duration_in_days = 2; } @@ -357,7 +364,8 @@ message CampaignDuration { message PlannedProduct { // Required. Selected product for planning. // The code associated with the ad product. E.g. Trueview, Bumper - // To list the available plannable product codes use ListPlannableProducts. + // To list the available plannable product codes use + // [ReachPlanService.ListPlannableProducts][google.ads.googleads.v7.services.ReachPlanService.ListPlannableProducts]. optional string plannable_product_code = 3; // Required. Maximum budget allocation in micros for the selected product. @@ -397,13 +405,23 @@ message ReachForecast { // Forecasted traffic metrics for the planned products and targeting. message Forecast { // Number of unique people reached at least - // GenerateReachForecastRequest.min_effective_frequency times that exactly + // GenerateReachForecastRequest.min_effective_frequency or + // GenerateReachForecastRequest.effective_frequency_limit times that exactly // matches the Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the on_target_reach + // value will be rounded to 0. optional int64 on_target_reach = 5; // Total number of unique people reached at least - // GenerateReachForecastRequest.min_effective_frequency times. This includes + // GenerateReachForecastRequest.min_effective_frequency or + // GenerateReachForecastRequest.effective_frequency_limit times. This includes // people that may fall outside the specified Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the total_reach + // value will be rounded to 0. optional int64 total_reach = 6; // Number of ad impressions that exactly matches the Targeting. @@ -426,7 +444,7 @@ message Forecast { message PlannedProductReachForecast { // Selected product for planning. The product codes returned are within the // set of the ones returned by ListPlannableProducts when using the same - // location id. + // location ID. string plannable_product_code = 1; // The cost in micros. This may differ from the product's input allocation @@ -441,10 +459,18 @@ message PlannedProductReachForecast { // Forecasted traffic metrics for a planned product. message PlannedProductForecast { // Number of unique people reached that exactly matches the Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the on_target_reach + // value will be rounded to 0. int64 on_target_reach = 1; // Number of unique people reached. This includes people that may fall // outside the specified Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the total_reach + // value will be rounded to 0. int64 total_reach = 2; // Number of ad impressions that exactly matches the Targeting. diff --git a/google/ads/googleads/v7/services/recommendation_service.proto b/google/ads/googleads/v7/services/recommendation_service.proto index e3f114140..5a75df014 100644 --- a/google/ads/googleads/v7/services/recommendation_service.proto +++ b/google/ads/googleads/v7/services/recommendation_service.proto @@ -171,7 +171,7 @@ message ApplyRecommendationOperation { message TargetRoasOptInParameters { // Average ROAS (revenue per unit of spend) to use for Target ROAS bidding // strategy. The value is between 0.01 and 1000.0, inclusive. This is a - // required field. + // required field, unless new_campaign_budget_amount_micros is set. optional double target_roas = 1; // Optional, budget amount to set for the campaign. diff --git a/google/ads/googleads/v7/services/user_data_service.proto b/google/ads/googleads/v7/services/user_data_service.proto index fad6f5723..92a20bcd7 100644 --- a/google/ads/googleads/v7/services/user_data_service.proto +++ b/google/ads/googleads/v7/services/user_data_service.proto @@ -33,7 +33,6 @@ option ruby_package = "Google::Ads::GoogleAds::V7::Services"; // Proto file describing the UserDataService. // Service to manage user data uploads. -// Accessible only to customers on the allow-list. service UserDataService { option (google.api.default_host) = "googleads.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; diff --git a/google/ads/googleads/v8/BUILD.bazel b/google/ads/googleads/v8/BUILD.bazel new file mode 100644 index 000000000..942c93bd1 --- /dev/null +++ b/google/ads/googleads/v8/BUILD.bazel @@ -0,0 +1,263 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +package(default_visibility = ["//visibility:public"]) + +exports_files(["googleads_grpc_service_config.json"] + ["*.yaml"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "googleads_proto", + srcs = [], + deps = [ + "//google/ads/googleads/v8/common:common_proto", + "//google/ads/googleads/v8/enums:enums_proto", + "//google/ads/googleads/v8/errors:errors_proto", + "//google/ads/googleads/v8/resources:resources_proto", + "//google/ads/googleads/v8/services:services_proto", + ], +) + +proto_library_with_info( + name = "googleads_proto_with_info", + deps = [ + ":googleads_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", +) + +java_gapic_library( + name = "googleads_java_gapic", + srcs = [ + ":googleads_proto_with_info", + ], + gapic_yaml = "googleads_gapic.yaml", + grpc_service_config = ":googleads_grpc_service_config.json", + deps = [ + "//google/ads/googleads/v8/common:common_java_proto", + "//google/ads/googleads/v8/enums:enums_java_proto", + "//google/ads/googleads/v8/resources:resources_java_proto", + "//google/ads/googleads/v8/services:services_java_grpc", + "//google/ads/googleads/v8/services:services_java_proto", + ], +) + +# TODO(ohren): Add more test classes when java_gapic_test is able to run more +# than a single test. Having at least one verifies proper compilation at least. +java_gapic_test( + name = "googleads_java_gapic_suite", + test_classes = [ + "com.google.ads.googleads.v8.services.CampaignServiceClientTest", + ], + runtime_deps = [":googleads_java_gapic_test"], +) + +java_gapic_assembly_gradle_pkg( + name = "googleads-java", + deps = [ + ":googleads_java_gapic", + "//google/ads/googleads/v8:googleads_proto", + "//google/ads/googleads/v8/common:common_java_proto", + "//google/ads/googleads/v8/enums:enums_java_proto", + "//google/ads/googleads/v8/errors:errors_java_proto", + "//google/ads/googleads/v8/resources:resources_java_proto", + "//google/ads/googleads/v8/services:services_java_grpc", + "//google/ads/googleads/v8/services:services_java_proto", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "googleads_php_proto", + plugin_args = ["aggregate_metadata=google.ads.googleads"], + deps = [":googleads_proto"], +) + +php_grpc_library( + name = "googleads_php_grpc", + srcs = [":googleads_proto"], + deps = [":googleads_php_proto"], +) + +php_gapic_library( + name = "googleads_php_gapic", + srcs = [":googleads_proto"], + gapic_yaml = "googleads_gapic.yaml", + grpc_service_config = "googleads_grpc_service_config.json", + service_yaml = "googleads_v8.yaml", + deps = [ + ":googleads_php_grpc", + ":googleads_php_proto", + ], +) + +php_gapic_assembly_pkg( + name = "googleads-php", + deps = [ + ":googleads_php_gapic", + ":googleads_php_grpc", + ":googleads_php_proto", + ], +) + +############################################################################## +# C# +############################################################################## +load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", "csharp_gapic_library") +load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic_pkg.bzl", "csharp_gapic_assembly_pkg") + +csharp_gapic_library( + name = "googleads_csharp_gapic", + srcs = [ + ":googleads_proto_with_info", + ], + grpc_service_config = "googleads_grpc_service_config.json", + deps = [ + "//google/ads/googleads/v8/services:services_csharp_grpc", + ], +) + +csharp_gapic_assembly_pkg( + name = "googleads-csharp", + deps = [ + ":googleads_csharp_gapic", + "//google/ads/googleads/v8/common:common_csharp_proto", + "//google/ads/googleads/v8/enums:enums_csharp_proto", + "//google/ads/googleads/v8/errors:errors_csharp_proto", + "//google/ads/googleads/v8/resources:resources_csharp_proto", + "//google/ads/googleads/v8/services:services_csharp_grpc", + "//google/ads/googleads/v8/services:services_csharp_proto", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_ads_gapic_library", + "ruby_gapic_assembly_pkg", +) + +ruby_ads_gapic_library( + name = "googleads_ruby_gapic", + srcs = ["googleads_proto_with_info"], + extra_protoc_parameters = [ + ":gem.:name=google-ads-googleads", + ":defaults.:service.:default_host=googleads.googleapis.com", + ":overrides.:namespace.Googleads=GoogleAds", + ], + grpc_service_config = "googleads_grpc_service_config.json", +) + +ruby_gapic_assembly_pkg( + name = "googleads-ruby", + deps = [ + ":googleads_ruby_gapic", + "//google/ads/googleads/v8/common:common_ruby_proto", + "//google/ads/googleads/v8/enums:enums_ruby_proto", + "//google/ads/googleads/v8/errors:errors_ruby_proto", + "//google/ads/googleads/v8/resources:resources_ruby_proto", + "//google/ads/googleads/v8/services:services_ruby_grpc", + "//google/ads/googleads/v8/services:services_ruby_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "googleads_py_gapic", + srcs = [":googleads_proto_with_info"], + grpc_service_config = "googleads_grpc_service_config.json", + opt_args = [ + "old-naming", + "lazy-import", + "python-gapic-name=googleads", + "python-gapic-templates=ads-templates", + "warehouse-package-name=google-ads", + ], +) + +py_gapic_assembly_pkg( + name = "googleads-py", + deps = [ + ":googleads_py_gapic", + "//google/ads/googleads/v8/common:common_py_proto", + "//google/ads/googleads/v8/enums:enums_py_proto", + "//google/ads/googleads/v8/errors:errors_py_proto", + "//google/ads/googleads/v8/resources:resources_py_proto", + "//google/ads/googleads/v8/services:services_py_grpc", + "//google/ads/googleads/v8/services:services_py_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "googleads_nodejs_gapic", + package_name = "google-ads", + src = ":googleads_proto_with_info", + extra_protoc_parameters = ["metadata"], + grpc_service_config = "googleads_grpc_service_config.json", + main_service = "GoogleAdsService", + package = "google.ads.googleads.v8", + service_yaml = "googleads_v8.yaml", + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "googleads-nodejs", + deps = [ + ":googleads_nodejs_gapic", + ":googleads_proto", + ], +) diff --git a/google/ads/googleads/v8/common/BUILD.bazel b/google/ads/googleads/v8/common/BUILD.bazel new file mode 100644 index 000000000..58e17973d --- /dev/null +++ b/google/ads/googleads/v8/common/BUILD.bazel @@ -0,0 +1,94 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") + +# TODO(ohren): Change srcs to use an enumeration of each individual proto +# instead of *.proto globbing once the build file generator supports +# subpackages. +proto_library( + name = "common_proto", + srcs = glob(["*.proto"]), + deps = [ + "//google/ads/googleads/v8/enums:enums_proto", + "//google/api:annotations_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "@com_google_protobuf//:wrappers_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_proto_library", +) + +java_proto_library( + name = "common_java_proto", + deps = [":common_proto"], +) + +############################################################################## +# PHP +############################################################################## + +# PHP targets are in the parent directory's BUILD.bazel file to facilitate +# aggregating metadata using a single underlying call to protoc. + +############################################################################## +# C# +############################################################################## +load( + "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", + "csharp_proto_library", +) + +csharp_proto_library( + name = "common_csharp_proto", + deps = [":common_proto"], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", + "ruby_proto_library", +) + +ruby_proto_library( + name = "common_ruby_proto", + deps = [":common_proto"], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_proto_library", +) + +py_proto_library( + name = "common_py_proto", + deps = [":common_proto"], +) diff --git a/google/ads/googleads/v8/common/ad_asset.proto b/google/ads/googleads/v8/common/ad_asset.proto new file mode 100644 index 000000000..a94b57ea5 --- /dev/null +++ b/google/ads/googleads/v8/common/ad_asset.proto @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/common/asset_policy.proto"; +import "google/ads/googleads/v8/enums/asset_performance_label.proto"; +import "google/ads/googleads/v8/enums/served_asset_field_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "AdAssetProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing assets used inside an ad. + +// A text asset used inside an ad. +message AdTextAsset { + // Asset text. + optional string text = 4; + + // The pinned field of the asset. This restricts the asset to only serve + // within this field. Multiple assets can be pinned to the same field. An + // asset that is unpinned or pinned to a different field will not serve in a + // field where some other asset has been pinned. + google.ads.googleads.v8.enums.ServedAssetFieldTypeEnum.ServedAssetFieldType pinned_field = 2; + + // The performance label of this text asset. + google.ads.googleads.v8.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel asset_performance_label = 5; + + // The policy summary of this text asset. + AdAssetPolicySummary policy_summary_info = 6; +} + +// An image asset used inside an ad. +message AdImageAsset { + // The Asset resource name of this image. + optional string asset = 2; +} + +// A video asset used inside an ad. +message AdVideoAsset { + // The Asset resource name of this video. + optional string asset = 2; +} + +// A media bundle asset used inside an ad. +message AdMediaBundleAsset { + // The Asset resource name of this media bundle. + optional string asset = 2; +} diff --git a/google/ads/googleads/v8/common/ad_type_infos.proto b/google/ads/googleads/v8/common/ad_type_infos.proto new file mode 100644 index 000000000..8cf443b24 --- /dev/null +++ b/google/ads/googleads/v8/common/ad_type_infos.proto @@ -0,0 +1,691 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/common/ad_asset.proto"; +import "google/ads/googleads/v8/enums/call_conversion_reporting_state.proto"; +import "google/ads/googleads/v8/enums/display_ad_format_setting.proto"; +import "google/ads/googleads/v8/enums/display_upload_product_type.proto"; +import "google/ads/googleads/v8/enums/legacy_app_install_ad_app_store.proto"; +import "google/ads/googleads/v8/enums/mime_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "AdTypeInfosProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file containing info messages for specific ad types. + +// A text ad. +message TextAdInfo { + // The headline of the ad. + optional string headline = 4; + + // The first line of the ad's description. + optional string description1 = 5; + + // The second line of the ad's description. + optional string description2 = 6; +} + +// An expanded text ad. +message ExpandedTextAdInfo { + // The first part of the ad's headline. + optional string headline_part1 = 8; + + // The second part of the ad's headline. + optional string headline_part2 = 9; + + // The third part of the ad's headline. + optional string headline_part3 = 10; + + // The description of the ad. + optional string description = 11; + + // The second description of the ad. + optional string description2 = 12; + + // The text that can appear alongside the ad's displayed URL. + optional string path1 = 13; + + // Additional text that can appear alongside the ad's displayed URL. + optional string path2 = 14; +} + +// An expanded dynamic search ad. +message ExpandedDynamicSearchAdInfo { + // The description of the ad. + optional string description = 3; + + // The second description of the ad. + optional string description2 = 4; +} + +// A hotel ad. +message HotelAdInfo { + +} + +// A Smart Shopping ad. +message ShoppingSmartAdInfo { + +} + +// A standard Shopping ad. +message ShoppingProductAdInfo { + +} + +// A Shopping Comparison Listing ad. +message ShoppingComparisonListingAdInfo { + // Headline of the ad. This field is required. Allowed length is between 25 + // and 45 characters. + optional string headline = 2; +} + +// A Gmail ad. +message GmailAdInfo { + // The Gmail teaser. + GmailTeaser teaser = 1; + + // The MediaFile resource name of the header image. Valid image types are GIF, + // JPEG and PNG. The minimum size is 300x100 pixels and the aspect ratio must + // be between 3:1 and 5:1 (+-1%). + optional string header_image = 10; + + // The MediaFile resource name of the marketing image. Valid image types are + // GIF, JPEG and PNG. The image must either be landscape with a minimum size + // of 600x314 pixels and aspect ratio of 600:314 (+-1%) or square with a + // minimum size of 300x300 pixels and aspect ratio of 1:1 (+-1%) + optional string marketing_image = 11; + + // Headline of the marketing image. + optional string marketing_image_headline = 12; + + // Description of the marketing image. + optional string marketing_image_description = 13; + + // Display-call-to-action of the marketing image. + DisplayCallToAction marketing_image_display_call_to_action = 6; + + // Product images. Up to 15 images are supported. + repeated ProductImage product_images = 7; + + // Product videos. Up to 7 videos are supported. At least one product video + // or a marketing image must be specified. + repeated ProductVideo product_videos = 8; +} + +// Gmail teaser data. The teaser is a small header that acts as an invitation +// to view the rest of the ad (the body). +message GmailTeaser { + // Headline of the teaser. + optional string headline = 5; + + // Description of the teaser. + optional string description = 6; + + // Business name of the advertiser. + optional string business_name = 7; + + // The MediaFile resource name of the logo image. Valid image types are GIF, + // JPEG and PNG. The minimum size is 144x144 pixels and the aspect ratio must + // be 1:1 (+-1%). + optional string logo_image = 8; +} + +// Data for display call to action. The call to action is a piece of the ad +// that prompts the user to do something. Like clicking a link or making a phone +// call. +message DisplayCallToAction { + // Text for the display-call-to-action. + optional string text = 5; + + // Text color for the display-call-to-action in hexadecimal, e.g. #ffffff for + // white. + optional string text_color = 6; + + // Identifies the URL collection in the `ad.url_collections` field. If not + // set, the URL defaults to `final_url`. + optional string url_collection_id = 7; +} + +// Product image specific data. +message ProductImage { + // The MediaFile resource name of the product image. Valid image types are + // GIF, JPEG and PNG. The minimum size is 300x300 pixels and the aspect ratio + // must be 1:1 (+-1%). + optional string product_image = 4; + + // Description of the product. + optional string description = 5; + + // Display-call-to-action of the product image. + DisplayCallToAction display_call_to_action = 3; +} + +// Product video specific data. +message ProductVideo { + // The MediaFile resource name of a video which must be hosted on YouTube. + optional string product_video = 2; +} + +// An image ad. +message ImageAdInfo { + // Width in pixels of the full size image. + optional int64 pixel_width = 15; + + // Height in pixels of the full size image. + optional int64 pixel_height = 16; + + // URL of the full size image. + optional string image_url = 17; + + // Width in pixels of the preview size image. + optional int64 preview_pixel_width = 18; + + // Height in pixels of the preview size image. + optional int64 preview_pixel_height = 19; + + // URL of the preview size image. + optional string preview_image_url = 20; + + // The mime type of the image. + google.ads.googleads.v8.enums.MimeTypeEnum.MimeType mime_type = 10; + + // The name of the image. If the image was created from a MediaFile, this is + // the MediaFile's name. If the image was created from bytes, this is empty. + optional string name = 21; + + // The image to create the ImageAd from. This can be specified in one of + // two ways. + // 1. An existing MediaFile resource. + // 2. The raw image data as bytes. + oneof image { + // The MediaFile resource to use for the image. + string media_file = 12; + + // Raw image data as bytes. + bytes data = 13; + + // An ad ID to copy the image from. + int64 ad_id_to_copy_image_from = 14; + } +} + +// Representation of video bumper in-stream ad format (very short in-stream +// non-skippable video ad). +message VideoBumperInStreamAdInfo { + // The MediaFile resource name of the companion banner used with the ad. + optional string companion_banner = 2; +} + +// Representation of video non-skippable in-stream ad format (15 second +// in-stream non-skippable video ad). +message VideoNonSkippableInStreamAdInfo { + // The MediaFile resource name of the companion banner used with the ad. + optional string companion_banner = 2; +} + +// Representation of video TrueView in-stream ad format (ad shown during video +// playback, often at beginning, which displays a skip button a few seconds into +// the video). +message VideoTrueViewInStreamAdInfo { + // Label on the CTA (call-to-action) button taking the user to the video ad's + // final URL. + // Required for TrueView for action campaigns, optional otherwise. + optional string action_button_label = 4; + + // Additional text displayed with the CTA (call-to-action) button to give + // context and encourage clicking on the button. + optional string action_headline = 5; + + // The MediaFile resource name of the companion banner used with the ad. + optional string companion_banner = 6; +} + +// Representation of video out-stream ad format (ad shown alongside a feed +// with automatic playback, without sound). +message VideoOutstreamAdInfo { + // The headline of the ad. + optional string headline = 3; + + // The description line. + optional string description = 4; +} + +// Representation of video TrueView discovery ad format. +message VideoTrueViewDiscoveryAdInfo { + // The headline of the ad. + optional string headline = 4; + + // First text line for a TrueView video discovery ad. + optional string description1 = 5; + + // Second text line for a TrueView video discovery ad. + optional string description2 = 6; +} + +// A video ad. +message VideoAdInfo { + // The MediaFile resource to use for the video. + optional string media_file = 7; + + // Format-specific schema for the different video formats. + oneof format { + // Video TrueView in-stream ad format. + VideoTrueViewInStreamAdInfo in_stream = 2; + + // Video bumper in-stream ad format. + VideoBumperInStreamAdInfo bumper = 3; + + // Video out-stream ad format. + VideoOutstreamAdInfo out_stream = 4; + + // Video non-skippable in-stream ad format. + VideoNonSkippableInStreamAdInfo non_skippable = 5; + + // Video TrueView discovery ad format. + VideoTrueViewDiscoveryAdInfo discovery = 6; + } +} + +// A video responsive ad. +message VideoResponsiveAdInfo { + // List of text assets used for the short headline, e.g. the "Call To Action" + // banner. Currently, only a single value for the short headline is supported. + repeated AdTextAsset headlines = 1; + + // List of text assets used for the long headline. + // Currently, only a single value for the long headline is supported. + repeated AdTextAsset long_headlines = 2; + + // List of text assets used for the description. + // Currently, only a single value for the description is supported. + repeated AdTextAsset descriptions = 3; + + // List of text assets used for the button, e.g. the "Call To Action" button. + // Currently, only a single value for the button is supported. + repeated AdTextAsset call_to_actions = 4; + + // List of YouTube video assets used for the ad. + // Currently, only a single value for the YouTube video asset is supported. + repeated AdVideoAsset videos = 5; + + // List of image assets used for the companion banner. + // Currently, only a single value for the companion banner asset is supported. + repeated AdImageAsset companion_banners = 6; +} + +// A responsive search ad. +// +// Responsive search ads let you create an ad that adapts to show more text, and +// more relevant messages, to your customers. Enter multiple headlines and +// descriptions when creating a responsive search ad, and over time, Google Ads +// will automatically test different combinations and learn which combinations +// perform best. By adapting your ad's content to more closely match potential +// customers' search terms, responsive search ads may improve your campaign's +// performance. +// +// More information at https://support.google.com/google-ads/answer/7684791 +message ResponsiveSearchAdInfo { + // List of text assets for headlines. When the ad serves the headlines will + // be selected from this list. + repeated AdTextAsset headlines = 1; + + // List of text assets for descriptions. When the ad serves the descriptions + // will be selected from this list. + repeated AdTextAsset descriptions = 2; + + // First part of text that can be appended to the URL in the ad. + optional string path1 = 5; + + // Second part of text that can be appended to the URL in the ad. This field + // can only be set when `path1` is also set. + optional string path2 = 6; +} + +// A legacy responsive display ad. Ads of this type are labeled 'Responsive ads' +// in the Google Ads UI. +message LegacyResponsiveDisplayAdInfo { + // The short version of the ad's headline. + optional string short_headline = 16; + + // The long version of the ad's headline. + optional string long_headline = 17; + + // The description of the ad. + optional string description = 18; + + // The business name in the ad. + optional string business_name = 19; + + // Advertiser's consent to allow flexible color. When true, the ad may be + // served with different color if necessary. When false, the ad will be served + // with the specified colors or a neutral color. + // The default value is `true`. + // Must be true if `main_color` and `accent_color` are not set. + optional bool allow_flexible_color = 20; + + // The accent color of the ad in hexadecimal, e.g. #ffffff for white. + // If one of `main_color` and `accent_color` is set, the other is required as + // well. + optional string accent_color = 21; + + // The main color of the ad in hexadecimal, e.g. #ffffff for white. + // If one of `main_color` and `accent_color` is set, the other is required as + // well. + optional string main_color = 22; + + // The call-to-action text for the ad. + optional string call_to_action_text = 23; + + // The MediaFile resource name of the logo image used in the ad. + optional string logo_image = 24; + + // The MediaFile resource name of the square logo image used in the ad. + optional string square_logo_image = 25; + + // The MediaFile resource name of the marketing image used in the ad. + optional string marketing_image = 26; + + // The MediaFile resource name of the square marketing image used in the ad. + optional string square_marketing_image = 27; + + // Specifies which format the ad will be served in. Default is ALL_FORMATS. + google.ads.googleads.v8.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting format_setting = 13; + + // Prefix before price. E.g. 'as low as'. + optional string price_prefix = 28; + + // Promotion text used for dynamic formats of responsive ads. For example + // 'Free two-day shipping'. + optional string promo_text = 29; +} + +// An app ad. +message AppAdInfo { + // Mandatory ad text. + AdTextAsset mandatory_ad_text = 1; + + // List of text assets for headlines. When the ad serves the headlines will + // be selected from this list. + repeated AdTextAsset headlines = 2; + + // List of text assets for descriptions. When the ad serves the descriptions + // will be selected from this list. + repeated AdTextAsset descriptions = 3; + + // List of image assets that may be displayed with the ad. + repeated AdImageAsset images = 4; + + // List of YouTube video assets that may be displayed with the ad. + repeated AdVideoAsset youtube_videos = 5; + + // List of media bundle assets that may be used with the ad. + repeated AdMediaBundleAsset html5_media_bundles = 6; +} + +// App engagement ads allow you to write text encouraging a specific action in +// the app, like checking in, making a purchase, or booking a flight. +// They allow you to send users to a specific part of your app where they can +// find what they're looking for easier and faster. +message AppEngagementAdInfo { + // List of text assets for headlines. When the ad serves the headlines will + // be selected from this list. + repeated AdTextAsset headlines = 1; + + // List of text assets for descriptions. When the ad serves the descriptions + // will be selected from this list. + repeated AdTextAsset descriptions = 2; + + // List of image assets that may be displayed with the ad. + repeated AdImageAsset images = 3; + + // List of video assets that may be displayed with the ad. + repeated AdVideoAsset videos = 4; +} + +// A legacy app install ad that only can be used by a few select customers. +message LegacyAppInstallAdInfo { + // The ID of the mobile app. + optional string app_id = 6; + + // The app store the mobile app is available in. + google.ads.googleads.v8.enums.LegacyAppInstallAdAppStoreEnum.LegacyAppInstallAdAppStore app_store = 2; + + // The headline of the ad. + optional string headline = 7; + + // The first description line of the ad. + optional string description1 = 8; + + // The second description line of the ad. + optional string description2 = 9; +} + +// A responsive display ad. +message ResponsiveDisplayAdInfo { + // Marketing images to be used in the ad. Valid image types are GIF, + // JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must + // be 1.91:1 (+-1%). At least one `marketing_image` is required. Combined + // with `square_marketing_images`, the maximum is 15. + repeated AdImageAsset marketing_images = 1; + + // Square marketing images to be used in the ad. Valid image types are GIF, + // JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must + // be 1:1 (+-1%). At least one square `marketing_image` is required. Combined + // with `marketing_images`, the maximum is 15. + repeated AdImageAsset square_marketing_images = 2; + + // Logo images to be used in the ad. Valid image types are GIF, + // JPEG, and PNG. The minimum size is 512x128 and the aspect ratio must + // be 4:1 (+-1%). Combined with `square_logo_images`, the maximum is 5. + repeated AdImageAsset logo_images = 3; + + // Square logo images to be used in the ad. Valid image types are GIF, + // JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must + // be 1:1 (+-1%). Combined with `square_logo_images`, the maximum is 5. + repeated AdImageAsset square_logo_images = 4; + + // Short format headlines for the ad. The maximum length is 30 characters. + // At least 1 and max 5 headlines can be specified. + repeated AdTextAsset headlines = 5; + + // A required long format headline. The maximum length is 90 characters. + AdTextAsset long_headline = 6; + + // Descriptive texts for the ad. The maximum length is 90 characters. At + // least 1 and max 5 headlines can be specified. + repeated AdTextAsset descriptions = 7; + + // Optional YouTube videos for the ad. A maximum of 5 videos can be specified. + repeated AdVideoAsset youtube_videos = 8; + + // The advertiser/brand name. Maximum display width is 25. + optional string business_name = 17; + + // The main color of the ad in hexadecimal, e.g. #ffffff for white. + // If one of `main_color` and `accent_color` is set, the other is required as + // well. + optional string main_color = 18; + + // The accent color of the ad in hexadecimal, e.g. #ffffff for white. + // If one of `main_color` and `accent_color` is set, the other is required as + // well. + optional string accent_color = 19; + + // Advertiser's consent to allow flexible color. When true, the ad may be + // served with different color if necessary. When false, the ad will be served + // with the specified colors or a neutral color. + // The default value is `true`. + // Must be true if `main_color` and `accent_color` are not set. + optional bool allow_flexible_color = 20; + + // The call-to-action text for the ad. Maximum display width is 30. + optional string call_to_action_text = 21; + + // Prefix before price. E.g. 'as low as'. + optional string price_prefix = 22; + + // Promotion text used for dynamic formats of responsive ads. For example + // 'Free two-day shipping'. + optional string promo_text = 23; + + // Specifies which format the ad will be served in. Default is ALL_FORMATS. + google.ads.googleads.v8.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting format_setting = 16; + + // Specification for various creative controls. + ResponsiveDisplayAdControlSpec control_spec = 24; +} + +// A local ad. +message LocalAdInfo { + // List of text assets for headlines. When the ad serves the headlines will + // be selected from this list. At least 1 and at most 5 headlines must be + // specified. + repeated AdTextAsset headlines = 1; + + // List of text assets for descriptions. When the ad serves the descriptions + // will be selected from this list. At least 1 and at most 5 descriptions must + // be specified. + repeated AdTextAsset descriptions = 2; + + // List of text assets for call-to-actions. When the ad serves the + // call-to-actions will be selected from this list. Call-to-actions are + // optional and at most 5 can be specified. + repeated AdTextAsset call_to_actions = 3; + + // List of marketing image assets that may be displayed with the ad. The + // images must be 314x600 pixels or 320x320 pixels. At least 1 and at most + // 20 image assets must be specified. + repeated AdImageAsset marketing_images = 4; + + // List of logo image assets that may be displayed with the ad. The images + // must be 128x128 pixels and not larger than 120KB. At least 1 and at most 5 + // image assets must be specified. + repeated AdImageAsset logo_images = 5; + + // List of YouTube video assets that may be displayed with the ad. Videos + // are optional and at most 20 can be specified. + repeated AdVideoAsset videos = 6; + + // First part of optional text that can be appended to the URL in the ad. + optional string path1 = 9; + + // Second part of optional text that can be appended to the URL in the ad. + // This field can only be set when `path1` is also set. + optional string path2 = 10; +} + +// A generic type of display ad. The exact ad format is controlled by the +// `display_upload_product_type` field, which determines what kinds of data +// need to be included with the ad. +message DisplayUploadAdInfo { + // The product type of this ad. See comments on the enum for details. + google.ads.googleads.v8.enums.DisplayUploadProductTypeEnum.DisplayUploadProductType display_upload_product_type = 1; + + // The asset data that makes up the ad. + oneof media_asset { + // A media bundle asset to be used in the ad. For information about the + // media bundle for HTML5_UPLOAD_AD, see + // https://support.google.com/google-ads/answer/1722096 + // Media bundles that are part of dynamic product types use a special format + // that needs to be created through the Google Web Designer. See + // https://support.google.com/webdesigner/answer/7543898 for more + // information. + AdMediaBundleAsset media_bundle = 2; + } +} + +// Specification for various creative controls for a responsive display ad. +message ResponsiveDisplayAdControlSpec { + // Whether the advertiser has opted into the asset enhancements feature. + bool enable_asset_enhancements = 1; + + // Whether the advertiser has opted into auto-gen video feature. + bool enable_autogen_video = 2; +} + +// A Smart campaign ad. +message SmartCampaignAdInfo { + // List of text assets for headlines. When the ad serves the headlines will + // be selected from this list. 3 headlines must be specified. + repeated AdTextAsset headlines = 1; + + // List of text assets for descriptions. When the ad serves the descriptions + // will be selected from this list. 2 descriptions must be specified. + repeated AdTextAsset descriptions = 2; +} + +// A call ad. +message CallAdInfo { + // The country code in the ad. + string country_code = 1; + + // The phone number in the ad. + string phone_number = 2; + + // The business name in the ad. + string business_name = 3; + + // First headline in the ad. + string headline1 = 11; + + // Second headline in the ad. + string headline2 = 12; + + // The first line of the ad's description. + string description1 = 4; + + // The second line of the ad's description. + string description2 = 5; + + // Whether to enable call tracking for the creative. Enabling call + // tracking also enables call conversions. + bool call_tracked = 6; + + // Whether to disable call conversion for the creative. + // If set to `true`, disables call conversions even when `call_tracked` is + // `true`. + // If `call_tracked` is `false`, this field is ignored. + bool disable_call_conversion = 7; + + // The URL to be used for phone number verification. + string phone_number_verification_url = 8; + + // The conversion action to attribute a call conversion to. If not set a + // default conversion action is used. This field only has effect if + // `call_tracked` is set to `true`. Otherwise this field is ignored. + string conversion_action = 9; + + // The call conversion behavior of this call ad. It can use its own call + // conversion setting, inherit the account level setting, or be disabled. + google.ads.googleads.v8.enums.CallConversionReportingStateEnum.CallConversionReportingState conversion_reporting_state = 10; + + // First part of text that can be appended to the URL in the ad. Optional. + string path1 = 13; + + // Second part of text that can be appended to the URL in the ad. This field + // can only be set when `path1` is also set. Optional. + string path2 = 14; +} diff --git a/google/ads/googleads/v8/common/asset_policy.proto b/google/ads/googleads/v8/common/asset_policy.proto new file mode 100644 index 000000000..eb3888f0c --- /dev/null +++ b/google/ads/googleads/v8/common/asset_policy.proto @@ -0,0 +1,46 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/common/policy.proto"; +import "google/ads/googleads/v8/enums/policy_approval_status.proto"; +import "google/ads/googleads/v8/enums/policy_review_status.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "AssetPolicyProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing asset policies. + +// Contains policy information for an asset inside an ad. +message AdAssetPolicySummary { + // The list of policy findings for this asset. + repeated PolicyTopicEntry policy_topic_entries = 1; + + // Where in the review process this asset. + google.ads.googleads.v8.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2; + + // The overall approval status of this asset, which is calculated based on + // the status of its individual policy topic entries. + google.ads.googleads.v8.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3; +} diff --git a/google/ads/googleads/v8/common/asset_types.proto b/google/ads/googleads/v8/common/asset_types.proto new file mode 100644 index 000000000..08aa9d6b0 --- /dev/null +++ b/google/ads/googleads/v8/common/asset_types.proto @@ -0,0 +1,325 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/ads/googleads/v8/common/feed_common.proto"; +import "google/ads/googleads/v8/enums/lead_form_call_to_action_type.proto"; +import "google/ads/googleads/v8/enums/lead_form_desired_intent.proto"; +import "google/ads/googleads/v8/enums/lead_form_field_user_input_type.proto"; +import "google/ads/googleads/v8/enums/lead_form_post_submit_call_to_action_type.proto"; +import "google/ads/googleads/v8/enums/mime_type.proto"; +import "google/ads/googleads/v8/enums/promotion_extension_discount_modifier.proto"; +import "google/ads/googleads/v8/enums/promotion_extension_occasion.proto"; +import "google/api/field_behavior.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "AssetTypesProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file containing info messages for specific asset types. + +// A YouTube asset. +message YoutubeVideoAsset { + // YouTube video id. This is the 11 character string value used in the + // YouTube video URL. + optional string youtube_video_id = 2; + + // YouTube video title. + string youtube_video_title = 3; +} + +// A MediaBundle asset. +message MediaBundleAsset { + // Media bundle (ZIP file) asset data. The format of the uploaded ZIP file + // depends on the ad field where it will be used. For more information on the + // format, see the documentation of the ad field where you plan on using the + // MediaBundleAsset. This field is mutate only. + optional bytes data = 2; +} + +// An Image asset. +message ImageAsset { + // The raw bytes data of an image. This field is mutate only. + optional bytes data = 5; + + // File size of the image asset in bytes. + optional int64 file_size = 6; + + // MIME type of the image asset. + google.ads.googleads.v8.enums.MimeTypeEnum.MimeType mime_type = 3; + + // Metadata for this image at its original size. + ImageDimension full_size = 4; +} + +// Metadata for an image at a certain size, either original or resized. +message ImageDimension { + // Height of the image. + optional int64 height_pixels = 4; + + // Width of the image. + optional int64 width_pixels = 5; + + // A URL that returns the image with this height and width. + optional string url = 6; +} + +// A Text asset. +message TextAsset { + // Text content of the text asset. + optional string text = 2; +} + +// A Lead Form asset. +message LeadFormAsset { + // Required. The name of the business being advertised. + string business_name = 10 [(google.api.field_behavior) = REQUIRED]; + + // Required. Pre-defined display text that encourages user to expand the form. + google.ads.googleads.v8.enums.LeadFormCallToActionTypeEnum.LeadFormCallToActionType call_to_action_type = 17 [(google.api.field_behavior) = REQUIRED]; + + // Required. Text giving a clear value proposition of what users expect once they expand + // the form. + string call_to_action_description = 18 [(google.api.field_behavior) = REQUIRED]; + + // Required. Headline of the expanded form to describe what the form is asking for or + // facilitating. + string headline = 12 [(google.api.field_behavior) = REQUIRED]; + + // Required. Detailed description of the expanded form to describe what the form is + // asking for or facilitating. + string description = 13 [(google.api.field_behavior) = REQUIRED]; + + // Required. Link to a page describing the policy on how the collected data is handled + // by the advertiser/business. + string privacy_policy_url = 14 [(google.api.field_behavior) = REQUIRED]; + + // Headline of text shown after form submission that describes how the + // advertiser will follow up with the user. + optional string post_submit_headline = 15; + + // Detailed description shown after form submission that describes how the + // advertiser will follow up with the user. + optional string post_submit_description = 16; + + // Ordered list of input fields. + repeated LeadFormField fields = 8; + + // Configured methods for collected lead data to be delivered to advertiser. + // Only one method typed as WebhookDelivery can be configured. + repeated LeadFormDeliveryMethod delivery_methods = 9; + + // Pre-defined display text that encourages user action after the form is + // submitted. + google.ads.googleads.v8.enums.LeadFormPostSubmitCallToActionTypeEnum.LeadFormPostSubmitCallToActionType post_submit_call_to_action_type = 19; + + // Asset resource name of the background image. The minimum size is 600x314 + // and the aspect ratio must be 1.91:1 (+-1%). + optional string background_image_asset = 20; + + // Desired intent for the lead form, e.g. more volume or more qualified. + google.ads.googleads.v8.enums.LeadFormDesiredIntentEnum.LeadFormDesiredIntent desired_intent = 21; + + // Custom disclosure shown along with Google disclaimer on the lead form. + // Accessible to allowed customers only. + optional string custom_disclosure = 22; +} + +// One input field instance within a form. +message LeadFormField { + // Describes the input type, which may be a predefined type such as + // "full name" or a pre-vetted question like "Do you own a car?". + google.ads.googleads.v8.enums.LeadFormFieldUserInputTypeEnum.LeadFormFieldUserInputType input_type = 1; + + // Defines answer configuration that this form field accepts. If oneof is not + // set, this is a free-text answer. + oneof answers { + // Answer configuration for a single choice question. Can be set only for + // pre-vetted question fields. Minimum of 2 answers required and maximum of + // 12 allowed. + LeadFormSingleChoiceAnswers single_choice_answers = 2; + } +} + +// Defines possible answers for a single choice question, usually presented as +// a single-choice drop-down list. +message LeadFormSingleChoiceAnswers { + // List of choices for a single question field. The order of entries defines + // UI order. Minimum of 2 answers required and maximum of 12 allowed. + repeated string answers = 1; +} + +// A configuration of how leads are delivered to the advertiser. +message LeadFormDeliveryMethod { + // Various subtypes of delivery. + oneof delivery_details { + // Webhook method of delivery. + WebhookDelivery webhook = 1; + } +} + +// Google notifies the advertiser of leads by making HTTP calls to an +// endpoint they specify. The requests contain JSON matching a schema that +// Google publishes as part of form ads documentation. +message WebhookDelivery { + // Webhook url specified by advertiser to send the lead. + optional string advertiser_webhook_url = 4; + + // Anti-spoofing secret set by the advertiser as part of the webhook payload. + optional string google_secret = 5; + + // The schema version that this delivery instance will use. + optional int64 payload_schema_version = 6; +} + +// A Book on Google asset. Used to redirect user to book through Google. +// Book on Google will change the redirect url to book directly through +// Google. +message BookOnGoogleAsset { + +} + +// A Promotion asset. +message PromotionAsset { + // Required. A freeform description of what the promotion is targeting. + string promotion_target = 1 [(google.api.field_behavior) = REQUIRED]; + + // A modifier for qualification of the discount. + google.ads.googleads.v8.enums.PromotionExtensionDiscountModifierEnum.PromotionExtensionDiscountModifier discount_modifier = 2; + + // Start date of when the promotion is eligible to be redeemed, in yyyy-MM-dd + // format. + string redemption_start_date = 7; + + // Last date of when the promotion is eligible to be redeemed, in yyyy-MM-dd + // format. + string redemption_end_date = 8; + + // The occasion the promotion was intended for. + // If an occasion is set, the redemption window will need to fall within the + // date range associated with the occasion. + google.ads.googleads.v8.enums.PromotionExtensionOccasionEnum.PromotionExtensionOccasion occasion = 9; + + // The language of the promotion. + // Represented as BCP 47 language tag. + string language_code = 10; + + // Start date of when this asset is effective and can begin serving, in + // yyyy-MM-dd format. + string start_date = 11; + + // Last date of when this asset is effective and still serving, in yyyy-MM-dd + // format. + string end_date = 12; + + // List of non-overlapping schedules specifying all time intervals for which + // the asset may serve. There can be a maximum of 6 schedules per day, 42 in + // total. + repeated AdScheduleInfo ad_schedule_targets = 13; + + // Discount type, can be percentage off or amount off. + oneof discount_type { + // Percentage off discount in the promotion. 1,000,000 = 100%. + // Either this or money_amount_off is required. + int64 percent_off = 3; + + // Money amount off for discount in the promotion. + // Either this or percent_off is required. + Money money_amount_off = 4; + } + + // Promotion trigger. Can be by promotion code or promo by eligible order + // amount. + oneof promotion_trigger { + // A code the user should use in order to be eligible for the promotion. + string promotion_code = 5; + + // The amount the total order needs to be for the user to be eligible for + // the promotion. + Money orders_over_amount = 6; + } +} + +// A Callout asset. +message CalloutAsset { + // Required. The callout text. + // The length of this string should be between 1 and 25, inclusive. + string callout_text = 1 [(google.api.field_behavior) = REQUIRED]; + + // Start date of when this asset is effective and can begin serving, in + // yyyy-MM-dd format. + string start_date = 2; + + // Last date of when this asset is effective and still serving, in yyyy-MM-dd + // format. + string end_date = 3; + + // List of non-overlapping schedules specifying all time intervals for which + // the asset may serve. There can be a maximum of 6 schedules per day, 42 in + // total. + repeated AdScheduleInfo ad_schedule_targets = 4; +} + +// A Structured Snippet asset. +message StructuredSnippetAsset { + // Required. The header of the snippet. + // This string should be one of the predefined values at + // https://developers.google.com/google-ads/api/reference/data/structured-snippet-headers + string header = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The values in the snippet. + // The size of this collection should be between 3 and 10, inclusive. + // The length of each value should be between 1 and 25 characters, inclusive. + repeated string values = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A Sitelink asset. +message SitelinkAsset { + // Required. URL display text for the sitelink. + // The length of this string should be between 1 and 25, inclusive. + string link_text = 1 [(google.api.field_behavior) = REQUIRED]; + + // First line of the description for the sitelink. + // If set, the length should be between 1 and 35, inclusive, and description2 + // must also be set. + string description1 = 2; + + // Second line of the description for the sitelink. + // If set, the length should be between 1 and 35, inclusive, and description1 + // must also be set. + string description2 = 3; + + // Start date of when this asset is effective and can begin serving, in + // yyyy-MM-dd format. + string start_date = 4; + + // Last date of when this asset is effective and still serving, in yyyy-MM-dd + // format. + string end_date = 5; + + // List of non-overlapping schedules specifying all time intervals for which + // the asset may serve. There can be a maximum of 6 schedules per day, 42 in + // total. + repeated AdScheduleInfo ad_schedule_targets = 6; +} diff --git a/google/ads/googleads/v8/common/bidding.proto b/google/ads/googleads/v8/common/bidding.proto new file mode 100644 index 000000000..126db31bf --- /dev/null +++ b/google/ads/googleads/v8/common/bidding.proto @@ -0,0 +1,179 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/target_impression_share_location.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "BiddingProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing bidding schemes. + +// Commission is an automatic bidding strategy in which the advertiser pays a +// certain portion of the conversion value. +message Commission { + // Commission rate defines the portion of the conversion value that the + // advertiser will be billed. A commission rate of x should be passed into + // this field as (x * 1,000,000). For example, 106,000 represents a commission + // rate of 0.106 (10.6%). + optional int64 commission_rate_micros = 2; +} + +// An automated bidding strategy that raises bids for clicks +// that seem more likely to lead to a conversion and lowers +// them for clicks where they seem less likely. +message EnhancedCpc { + +} + +// Manual click-based bidding where user pays per click. +message ManualCpc { + // Whether bids are to be enhanced based on conversion optimizer data. + optional bool enhanced_cpc_enabled = 2; +} + +// Manual impression-based bidding where user pays per thousand impressions. +message ManualCpm { + +} + +// View based bidding where user pays per video view. +message ManualCpv { + +} + +// An automated bidding strategy to help get the most conversions for your +// campaigns while spending your budget. +message MaximizeConversions { + // The target cost-per-action (CPA) option. This is the average amount that + // you would like to spend per conversion action. If set, the bid strategy + // will get as many conversions as possible at or below the target + // cost-per-action. If the target CPA is not set, the bid strategy will + // aim to achieve the lowest possible CPA given the budget. + int64 target_cpa = 1; +} + +// An automated bidding strategy to help get the most conversion value for your +// campaigns while spending your budget. +message MaximizeConversionValue { + // The target return on ad spend (ROAS) option. If set, the bid strategy will + // maximize revenue while averaging the target return on ad spend. If the + // target ROAS is high, the bid strategy may not be able to spend the full + // budget. If the target ROAS is not set, the bid strategy will aim to + // achieve the highest possible ROAS for the budget. + double target_roas = 2; +} + +// An automated bid strategy that sets bids to help get as many conversions as +// possible at the target cost-per-acquisition (CPA) you set. +message TargetCpa { + // Average CPA target. + // This target should be greater than or equal to minimum billable unit based + // on the currency for the account. + optional int64 target_cpa_micros = 4; + + // Maximum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. + optional int64 cpc_bid_ceiling_micros = 5; + + // Minimum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. + optional int64 cpc_bid_floor_micros = 6; +} + +// Target CPM (cost per thousand impressions) is an automated bidding strategy +// that sets bids to optimize performance given the target CPM you set. +message TargetCpm { + +} + +// An automated bidding strategy that sets bids so that a certain percentage of +// search ads are shown at the top of the first page (or other targeted +// location). +message TargetImpressionShare { + // The targeted location on the search results page. + google.ads.googleads.v8.enums.TargetImpressionShareLocationEnum.TargetImpressionShareLocation location = 1; + + // The desired fraction of ads to be shown in the targeted location in micros. + // E.g. 1% equals 10,000. + optional int64 location_fraction_micros = 4; + + // The highest CPC bid the automated bidding system is permitted to specify. + // This is a required field entered by the advertiser that sets the ceiling + // and specified in local micros. + optional int64 cpc_bid_ceiling_micros = 5; +} + +// An automated bidding strategy that helps you maximize revenue while +// averaging a specific target return on ad spend (ROAS). +message TargetRoas { + // Required. The desired revenue (based on conversion data) per unit of spend. + // Value must be between 0.01 and 1000.0, inclusive. + optional double target_roas = 4; + + // Maximum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. + optional int64 cpc_bid_ceiling_micros = 5; + + // Minimum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. + optional int64 cpc_bid_floor_micros = 6; +} + +// An automated bid strategy that sets your bids to help get as many clicks +// as possible within your budget. +message TargetSpend { + // The spend target under which to maximize clicks. + // A TargetSpend bidder will attempt to spend the smaller of this value + // or the natural throttling spend amount. + // If not specified, the budget is used as the spend target. + // This field is deprecated and should no longer be used. See + // https://ads-developers.googleblog.com/2020/05/reminder-about-sunset-creation-of.html + // for details. + optional int64 target_spend_micros = 3 [deprecated = true]; + + // Maximum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + optional int64 cpc_bid_ceiling_micros = 4; +} + +// A bidding strategy where bids are a fraction of the advertised price for +// some good or service. +message PercentCpc { + // Maximum bid limit that can be set by the bid strategy. This is + // an optional field entered by the advertiser and specified in local micros. + // Note: A zero value is interpreted in the same way as having bid_ceiling + // undefined. + optional int64 cpc_bid_ceiling_micros = 3; + + // Adjusts the bid for each auction upward or downward, depending on the + // likelihood of a conversion. Individual bids may exceed + // cpc_bid_ceiling_micros, but the average bid amount for a campaign should + // not. + optional bool enhanced_cpc_enabled = 4; +} diff --git a/google/ads/googleads/v8/common/click_location.proto b/google/ads/googleads/v8/common/click_location.proto new file mode 100644 index 000000000..8b91235da --- /dev/null +++ b/google/ads/googleads/v8/common/click_location.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "ClickLocationProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing a ClickLocation. + +// Location criteria associated with a click. +message ClickLocation { + // The city location criterion associated with the impression. + optional string city = 6; + + // The country location criterion associated with the impression. + optional string country = 7; + + // The metro location criterion associated with the impression. + optional string metro = 8; + + // The most specific location criterion associated with the impression. + optional string most_specific = 9; + + // The region location criterion associated with the impression. + optional string region = 10; +} diff --git a/google/ads/googleads/v8/common/criteria.proto b/google/ads/googleads/v8/common/criteria.proto new file mode 100644 index 000000000..1d26c963c --- /dev/null +++ b/google/ads/googleads/v8/common/criteria.proto @@ -0,0 +1,651 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/age_range_type.proto"; +import "google/ads/googleads/v8/enums/app_payment_model_type.proto"; +import "google/ads/googleads/v8/enums/content_label_type.proto"; +import "google/ads/googleads/v8/enums/day_of_week.proto"; +import "google/ads/googleads/v8/enums/device.proto"; +import "google/ads/googleads/v8/enums/gender_type.proto"; +import "google/ads/googleads/v8/enums/hotel_date_selection_type.proto"; +import "google/ads/googleads/v8/enums/income_range_type.proto"; +import "google/ads/googleads/v8/enums/interaction_type.proto"; +import "google/ads/googleads/v8/enums/keyword_match_type.proto"; +import "google/ads/googleads/v8/enums/listing_group_type.proto"; +import "google/ads/googleads/v8/enums/location_group_radius_units.proto"; +import "google/ads/googleads/v8/enums/minute_of_hour.proto"; +import "google/ads/googleads/v8/enums/parental_status_type.proto"; +import "google/ads/googleads/v8/enums/preferred_content_type.proto"; +import "google/ads/googleads/v8/enums/product_bidding_category_level.proto"; +import "google/ads/googleads/v8/enums/product_channel.proto"; +import "google/ads/googleads/v8/enums/product_channel_exclusivity.proto"; +import "google/ads/googleads/v8/enums/product_condition.proto"; +import "google/ads/googleads/v8/enums/product_custom_attribute_index.proto"; +import "google/ads/googleads/v8/enums/product_type_level.proto"; +import "google/ads/googleads/v8/enums/proximity_radius_units.proto"; +import "google/ads/googleads/v8/enums/webpage_condition_operand.proto"; +import "google/ads/googleads/v8/enums/webpage_condition_operator.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "CriteriaProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing criteria types. + +// A keyword criterion. +message KeywordInfo { + // The text of the keyword (at most 80 characters and 10 words). + optional string text = 3; + + // The match type of the keyword. + google.ads.googleads.v8.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 2; +} + +// A placement criterion. This can be used to modify bids for sites when +// targeting the content network. +message PlacementInfo { + // URL of the placement. + // + // For example, "http://www.domain.com". + optional string url = 2; +} + +// A mobile app category criterion. +message MobileAppCategoryInfo { + // The mobile app category constant resource name. + optional string mobile_app_category_constant = 2; +} + +// A mobile application criterion. +message MobileApplicationInfo { + // A string that uniquely identifies a mobile application to Google Ads API. + // The format of this string is "{platform}-{platform_native_id}", where + // platform is "1" for iOS apps and "2" for Android apps, and where + // platform_native_id is the mobile application identifier native to the + // corresponding platform. + // For iOS, this native identifier is the 9 digit string that appears at the + // end of an App Store URL (e.g., "476943146" for "Flood-It! 2" whose App + // Store link is "http://itunes.apple.com/us/app/flood-it!-2/id476943146"). + // For Android, this native identifier is the application's package name + // (e.g., "com.labpixies.colordrips" for "Color Drips" given Google Play link + // "https://play.google.com/store/apps/details?id=com.labpixies.colordrips"). + // A well formed app id for Google Ads API would thus be "1-476943146" for iOS + // and "2-com.labpixies.colordrips" for Android. + // This field is required and must be set in CREATE operations. + optional string app_id = 4; + + // Name of this mobile application. + optional string name = 5; +} + +// A location criterion. +message LocationInfo { + // The geo target constant resource name. + optional string geo_target_constant = 2; +} + +// A device criterion. +message DeviceInfo { + // Type of the device. + google.ads.googleads.v8.enums.DeviceEnum.Device type = 1; +} + +// A preferred content criterion. +message PreferredContentInfo { + // Type of the preferred content. + google.ads.googleads.v8.enums.PreferredContentTypeEnum.PreferredContentType type = 2; +} + +// A listing group criterion. +message ListingGroupInfo { + // Type of the listing group. + google.ads.googleads.v8.enums.ListingGroupTypeEnum.ListingGroupType type = 1; + + // Dimension value with which this listing group is refining its parent. + // Undefined for the root group. + ListingDimensionInfo case_value = 2; + + // Resource name of ad group criterion which is the parent listing group + // subdivision. Null for the root group. + optional string parent_ad_group_criterion = 4; +} + +// A listing scope criterion. +message ListingScopeInfo { + // Scope of the campaign criterion. + repeated ListingDimensionInfo dimensions = 2; +} + +// Listing dimensions for listing group criterion. +message ListingDimensionInfo { + // Dimension of one of the types below is always present. + oneof dimension { + // Advertiser-specific hotel ID. + HotelIdInfo hotel_id = 2; + + // Class of the hotel as a number of stars 1 to 5. + HotelClassInfo hotel_class = 3; + + // Country or Region the hotel is located in. + HotelCountryRegionInfo hotel_country_region = 4; + + // State the hotel is located in. + HotelStateInfo hotel_state = 5; + + // City the hotel is located in. + HotelCityInfo hotel_city = 6; + + // Bidding category of a product offer. + ProductBiddingCategoryInfo product_bidding_category = 13; + + // Brand of a product offer. + ProductBrandInfo product_brand = 15; + + // Locality of a product offer. + ProductChannelInfo product_channel = 8; + + // Availability of a product offer. + ProductChannelExclusivityInfo product_channel_exclusivity = 9; + + // Condition of a product offer. + ProductConditionInfo product_condition = 10; + + // Custom attribute of a product offer. + ProductCustomAttributeInfo product_custom_attribute = 16; + + // Item id of a product offer. + ProductItemIdInfo product_item_id = 11; + + // Type of a product offer. + ProductTypeInfo product_type = 12; + + // Unknown dimension. Set when no other listing dimension is set. + UnknownListingDimensionInfo unknown_listing_dimension = 14; + } +} + +// Advertiser-specific hotel ID. +message HotelIdInfo { + // String value of the hotel ID. + optional string value = 2; +} + +// Class of the hotel as a number of stars 1 to 5. +message HotelClassInfo { + // Long value of the hotel class. + optional int64 value = 2; +} + +// Country or Region the hotel is located in. +message HotelCountryRegionInfo { + // The Geo Target Constant resource name. + optional string country_region_criterion = 2; +} + +// State the hotel is located in. +message HotelStateInfo { + // The Geo Target Constant resource name. + optional string state_criterion = 2; +} + +// City the hotel is located in. +message HotelCityInfo { + // The Geo Target Constant resource name. + optional string city_criterion = 2; +} + +// Bidding category of a product offer. +message ProductBiddingCategoryInfo { + // ID of the product bidding category. + // + // This ID is equivalent to the google_product_category ID as described in + // this article: https://support.google.com/merchants/answer/6324436 + optional int64 id = 4; + + // Two-letter upper-case country code of the product bidding category. It must + // match the campaign.shopping_setting.sales_country field. + optional string country_code = 5; + + // Level of the product bidding category. + google.ads.googleads.v8.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 3; +} + +// Brand of the product. +message ProductBrandInfo { + // String value of the product brand. + optional string value = 2; +} + +// Locality of a product offer. +message ProductChannelInfo { + // Value of the locality. + google.ads.googleads.v8.enums.ProductChannelEnum.ProductChannel channel = 1; +} + +// Availability of a product offer. +message ProductChannelExclusivityInfo { + // Value of the availability. + google.ads.googleads.v8.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity channel_exclusivity = 1; +} + +// Condition of a product offer. +message ProductConditionInfo { + // Value of the condition. + google.ads.googleads.v8.enums.ProductConditionEnum.ProductCondition condition = 1; +} + +// Custom attribute of a product offer. +message ProductCustomAttributeInfo { + // String value of the product custom attribute. + optional string value = 3; + + // Indicates the index of the custom attribute. + google.ads.googleads.v8.enums.ProductCustomAttributeIndexEnum.ProductCustomAttributeIndex index = 2; +} + +// Item id of a product offer. +message ProductItemIdInfo { + // Value of the id. + optional string value = 2; +} + +// Type of a product offer. +message ProductTypeInfo { + // Value of the type. + optional string value = 3; + + // Level of the type. + google.ads.googleads.v8.enums.ProductTypeLevelEnum.ProductTypeLevel level = 2; +} + +// Unknown listing dimension. +message UnknownListingDimensionInfo { + +} + +// Criterion for hotel date selection (default dates vs. user selected). +message HotelDateSelectionTypeInfo { + // Type of the hotel date selection + google.ads.googleads.v8.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType type = 1; +} + +// Criterion for number of days prior to the stay the booking is being made. +message HotelAdvanceBookingWindowInfo { + // Low end of the number of days prior to the stay. + optional int64 min_days = 3; + + // High end of the number of days prior to the stay. + optional int64 max_days = 4; +} + +// Criterion for length of hotel stay in nights. +message HotelLengthOfStayInfo { + // Low end of the number of nights in the stay. + optional int64 min_nights = 3; + + // High end of the number of nights in the stay. + optional int64 max_nights = 4; +} + +// Criterion for a check-in date range. +message HotelCheckInDateRangeInfo { + // Start date in the YYYY-MM-DD format. + string start_date = 1; + + // End date in the YYYY-MM-DD format. + string end_date = 2; +} + +// Criterion for day of the week the booking is for. +message HotelCheckInDayInfo { + // The day of the week. + google.ads.googleads.v8.enums.DayOfWeekEnum.DayOfWeek day_of_week = 1; +} + +// Criterion for Interaction Type. +message InteractionTypeInfo { + // The interaction type. + google.ads.googleads.v8.enums.InteractionTypeEnum.InteractionType type = 1; +} + +// Represents an AdSchedule criterion. +// +// AdSchedule is specified as the day of the week and a time interval +// within which ads will be shown. +// +// No more than six AdSchedules can be added for the same day. +message AdScheduleInfo { + // Minutes after the start hour at which this schedule starts. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + google.ads.googleads.v8.enums.MinuteOfHourEnum.MinuteOfHour start_minute = 1; + + // Minutes after the end hour at which this schedule ends. The schedule is + // exclusive of the end minute. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + google.ads.googleads.v8.enums.MinuteOfHourEnum.MinuteOfHour end_minute = 2; + + // Starting hour in 24 hour time. + // This field must be between 0 and 23, inclusive. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + optional int32 start_hour = 6; + + // Ending hour in 24 hour time; 24 signifies end of the day. + // This field must be between 0 and 24, inclusive. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + optional int32 end_hour = 7; + + // Day of the week the schedule applies to. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + google.ads.googleads.v8.enums.DayOfWeekEnum.DayOfWeek day_of_week = 5; +} + +// An age range criterion. +message AgeRangeInfo { + // Type of the age range. + google.ads.googleads.v8.enums.AgeRangeTypeEnum.AgeRangeType type = 1; +} + +// A gender criterion. +message GenderInfo { + // Type of the gender. + google.ads.googleads.v8.enums.GenderTypeEnum.GenderType type = 1; +} + +// An income range criterion. +message IncomeRangeInfo { + // Type of the income range. + google.ads.googleads.v8.enums.IncomeRangeTypeEnum.IncomeRangeType type = 1; +} + +// A parental status criterion. +message ParentalStatusInfo { + // Type of the parental status. + google.ads.googleads.v8.enums.ParentalStatusTypeEnum.ParentalStatusType type = 1; +} + +// A YouTube Video criterion. +message YouTubeVideoInfo { + // YouTube video id as it appears on the YouTube watch page. + optional string video_id = 2; +} + +// A YouTube Channel criterion. +message YouTubeChannelInfo { + // The YouTube uploader channel id or the channel code of a YouTube channel. + optional string channel_id = 2; +} + +// A User List criterion. Represents a user list that is defined by the +// advertiser to be targeted. +message UserListInfo { + // The User List resource name. + optional string user_list = 2; +} + +// A Proximity criterion. The geo point and radius determine what geographical +// area is included. The address is a description of the geo point that does +// not affect ad serving. +// +// There are two ways to create a proximity. First, by setting an address +// and radius. The geo point will be automatically computed. Second, by +// setting a geo point and radius. The address is an optional label that won't +// be validated. +message ProximityInfo { + // Latitude and longitude. + GeoPointInfo geo_point = 1; + + // The radius of the proximity. + optional double radius = 5; + + // The unit of measurement of the radius. Default is KILOMETERS. + google.ads.googleads.v8.enums.ProximityRadiusUnitsEnum.ProximityRadiusUnits radius_units = 3; + + // Full address. + AddressInfo address = 4; +} + +// Geo point for proximity criterion. +message GeoPointInfo { + // Micro degrees for the longitude. + optional int32 longitude_in_micro_degrees = 3; + + // Micro degrees for the latitude. + optional int32 latitude_in_micro_degrees = 4; +} + +// Address for proximity criterion. +message AddressInfo { + // Postal code. + optional string postal_code = 8; + + // Province or state code. + optional string province_code = 9; + + // Country code. + optional string country_code = 10; + + // Province or state name. + optional string province_name = 11; + + // Street address line 1. + optional string street_address = 12; + + // Street address line 2. This field is write-only. It is only used for + // calculating the longitude and latitude of an address when geo_point is + // empty. + optional string street_address2 = 13; + + // Name of the city. + optional string city_name = 14; +} + +// A topic criterion. Use topics to target or exclude placements in the +// Google Display Network based on the category into which the placement falls +// (for example, "Pets & Animals/Pets/Dogs"). +message TopicInfo { + // The Topic Constant resource name. + optional string topic_constant = 3; + + // The category to target or exclude. Each subsequent element in the array + // describes a more specific sub-category. For example, + // "Pets & Animals", "Pets", "Dogs" represents the "Pets & Animals/Pets/Dogs" + // category. + repeated string path = 4; +} + +// A language criterion. +message LanguageInfo { + // The language constant resource name. + optional string language_constant = 2; +} + +// An IpBlock criterion used for IP exclusions. We allow: +// - IPv4 and IPv6 addresses +// - individual addresses (192.168.0.1) +// - masks for individual addresses (192.168.0.1/32) +// - masks for Class C networks (192.168.0.1/24) +message IpBlockInfo { + // The IP address of this IP block. + optional string ip_address = 2; +} + +// Content Label for category exclusion. +message ContentLabelInfo { + // Content label type, required for CREATE operations. + google.ads.googleads.v8.enums.ContentLabelTypeEnum.ContentLabelType type = 1; +} + +// Represents a Carrier Criterion. +message CarrierInfo { + // The Carrier constant resource name. + optional string carrier_constant = 2; +} + +// Represents a particular interest-based topic to be targeted. +message UserInterestInfo { + // The UserInterest resource name. + optional string user_interest_category = 2; +} + +// Represents a criterion for targeting webpages of an advertiser's website. +message WebpageInfo { + // The name of the criterion that is defined by this parameter. The name value + // will be used for identifying, sorting and filtering criteria with this type + // of parameters. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + optional string criterion_name = 3; + + // Conditions, or logical expressions, for webpage targeting. The list of + // webpage targeting conditions are and-ed together when evaluated + // for targeting. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + repeated WebpageConditionInfo conditions = 2; + + // Website criteria coverage percentage. This is the computed percentage + // of website coverage based on the website target, negative website target + // and negative keywords in the ad group and campaign. For instance, when + // coverage returns as 1, it indicates it has 100% coverage. This field is + // read-only. + double coverage_percentage = 4; + + // List of sample urls that match the website target. This field is read-only. + WebpageSampleInfo sample = 5; +} + +// Logical expression for targeting webpages of an advertiser's website. +message WebpageConditionInfo { + // Operand of webpage targeting condition. + google.ads.googleads.v8.enums.WebpageConditionOperandEnum.WebpageConditionOperand operand = 1; + + // Operator of webpage targeting condition. + google.ads.googleads.v8.enums.WebpageConditionOperatorEnum.WebpageConditionOperator operator = 2; + + // Argument of webpage targeting condition. + optional string argument = 4; +} + +// List of sample urls that match the website target +message WebpageSampleInfo { + // Webpage sample urls + repeated string sample_urls = 1; +} + +// Represents an operating system version to be targeted. +message OperatingSystemVersionInfo { + // The operating system version constant resource name. + optional string operating_system_version_constant = 2; +} + +// An app payment model criterion. +message AppPaymentModelInfo { + // Type of the app payment model. + google.ads.googleads.v8.enums.AppPaymentModelTypeEnum.AppPaymentModelType type = 1; +} + +// A mobile device criterion. +message MobileDeviceInfo { + // The mobile device constant resource name. + optional string mobile_device_constant = 2; +} + +// A custom affinity criterion. +// A criterion of this type is only targetable. +message CustomAffinityInfo { + // The CustomInterest resource name. + optional string custom_affinity = 2; +} + +// A custom intent criterion. +// A criterion of this type is only targetable. +message CustomIntentInfo { + // The CustomInterest resource name. + optional string custom_intent = 2; +} + +// A radius around a list of locations specified via a feed. +message LocationGroupInfo { + // Feed specifying locations for targeting. + // This is required and must be set in CREATE operations. + optional string feed = 5; + + // Geo target constant(s) restricting the scope of the geographic area within + // the feed. Currently only one geo target constant is allowed. + repeated string geo_target_constants = 6; + + // Distance in units specifying the radius around targeted locations. + // This is required and must be set in CREATE operations. + optional int64 radius = 7; + + // Unit of the radius. Miles and meters are supported for geo target + // constants. Milli miles and meters are supported for feed item sets. + // This is required and must be set in CREATE operations. + google.ads.googleads.v8.enums.LocationGroupRadiusUnitsEnum.LocationGroupRadiusUnits radius_units = 4; + + // FeedItemSets whose FeedItems are targeted. If multiple IDs are specified, + // then all items that appear in at least one set are targeted. This field + // cannot be used with geo_target_constants. This is optional and can only be + // set in CREATE operations. + repeated string feed_item_sets = 8; +} + +// A custom audience criterion. +message CustomAudienceInfo { + // The CustomAudience resource name. + string custom_audience = 1; +} + +// A combined audience criterion. +message CombinedAudienceInfo { + // The CombinedAudience resource name. + string combined_audience = 1; +} + +// A Smart Campaign keyword theme. +message KeywordThemeInfo { + // Either a predefined keyword theme constant or free-form text may be + // specified. + oneof keyword_theme { + // The resource name of a Smart Campaign keyword theme constant. + // `keywordThemeConstants/{keyword_theme_id}~{sub_keyword_theme_id}` + string keyword_theme_constant = 1; + + // Free-form text to be matched to a Smart Campaign keyword theme constant + // on a best-effort basis. + string free_form_keyword_theme = 2; + } +} diff --git a/google/ads/googleads/v8/common/criterion_category_availability.proto b/google/ads/googleads/v8/common/criterion_category_availability.proto new file mode 100644 index 000000000..aaa3243da --- /dev/null +++ b/google/ads/googleads/v8/common/criterion_category_availability.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/advertising_channel_sub_type.proto"; +import "google/ads/googleads/v8/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v8/enums/criterion_category_channel_availability_mode.proto"; +import "google/ads/googleads/v8/enums/criterion_category_locale_availability_mode.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "CriterionCategoryAvailabilityProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing criterion category availability information. + +// Information of category availability, per advertising channel. +message CriterionCategoryAvailability { + // Channel types and subtypes that are available to the category. + CriterionCategoryChannelAvailability channel = 1; + + // Locales that are available to the category for the channel. + repeated CriterionCategoryLocaleAvailability locale = 2; +} + +// Information of advertising channel type and subtypes a category is available +// in. +message CriterionCategoryChannelAvailability { + // Format of the channel availability. Can be ALL_CHANNELS (the rest of the + // fields will not be set), CHANNEL_TYPE (only advertising_channel_type type + // will be set, the category is available to all sub types under it) or + // CHANNEL_TYPE_AND_SUBTYPES (advertising_channel_type, + // advertising_channel_sub_type, and include_default_channel_sub_type will all + // be set). + google.ads.googleads.v8.enums.CriterionCategoryChannelAvailabilityModeEnum.CriterionCategoryChannelAvailabilityMode availability_mode = 1; + + // Channel type the category is available to. + google.ads.googleads.v8.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_type = 2; + + // Channel subtypes under the channel type the category is available to. + repeated google.ads.googleads.v8.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType advertising_channel_sub_type = 3; + + // Whether default channel sub type is included. For example, + // advertising_channel_type being DISPLAY and include_default_channel_sub_type + // being false means that the default display campaign where channel sub type + // is not set is not included in this availability configuration. + optional bool include_default_channel_sub_type = 5; +} + +// Information about which locales a category is available in. +message CriterionCategoryLocaleAvailability { + // Format of the locale availability. Can be LAUNCHED_TO_ALL (both country and + // language will be empty), COUNTRY (only country will be set), LANGUAGE (only + // language wil be set), COUNTRY_AND_LANGUAGE (both country and language will + // be set). + google.ads.googleads.v8.enums.CriterionCategoryLocaleAvailabilityModeEnum.CriterionCategoryLocaleAvailabilityMode availability_mode = 1; + + // Code of the country. + optional string country_code = 4; + + // Code of the language. + optional string language_code = 5; +} diff --git a/google/ads/googleads/v8/common/custom_parameter.proto b/google/ads/googleads/v8/common/custom_parameter.proto new file mode 100644 index 000000000..e393adb3a --- /dev/null +++ b/google/ads/googleads/v8/common/custom_parameter.proto @@ -0,0 +1,40 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "CustomParameterProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing CustomParameter and operation + +// A mapping that can be used by custom parameter tags in a +// `tracking_url_template`, `final_urls`, or `mobile_final_urls`. +message CustomParameter { + // The key matching the parameter tag name. + optional string key = 3; + + // The value to be substituted. + optional string value = 4; +} diff --git a/google/ads/googleads/v8/common/dates.proto b/google/ads/googleads/v8/common/dates.proto new file mode 100644 index 000000000..3c52f4f9d --- /dev/null +++ b/google/ads/googleads/v8/common/dates.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/month_of_year.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "DatesProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing date range message. + +// A date range. +message DateRange { + // The start date, in yyyy-mm-dd format. This date is inclusive. + optional string start_date = 3; + + // The end date, in yyyy-mm-dd format. This date is inclusive. + optional string end_date = 4; +} + +// The year month range inclusive of the start and end months. +// Eg: A year month range to represent Jan 2020 would be: (Jan 2020, Jan 2020). +message YearMonthRange { + // The inclusive start year month. + YearMonth start = 1; + + // The inclusive end year month. + YearMonth end = 2; +} + +// Year month. +message YearMonth { + // The year (e.g. 2020). + int64 year = 1; + + // The month of the year. (e.g. FEBRUARY). + google.ads.googleads.v8.enums.MonthOfYearEnum.MonthOfYear month = 2; +} diff --git a/google/ads/googleads/v8/common/explorer_auto_optimizer_setting.proto b/google/ads/googleads/v8/common/explorer_auto_optimizer_setting.proto new file mode 100644 index 000000000..d39cd6b37 --- /dev/null +++ b/google/ads/googleads/v8/common/explorer_auto_optimizer_setting.proto @@ -0,0 +1,38 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "ExplorerAutoOptimizerSettingProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing ExplorerAutoOptimizerSetting + +// Settings for the Display Campaign Optimizer, initially named "Explorer". +// Learn more about +// [automatic targeting](https://support.google.com/google-ads/answer/190596). +message ExplorerAutoOptimizerSetting { + // Indicates whether the optimizer is turned on. + optional bool opt_in = 2; +} diff --git a/google/ads/googleads/v8/common/extensions.proto b/google/ads/googleads/v8/common/extensions.proto new file mode 100644 index 000000000..2f21398ef --- /dev/null +++ b/google/ads/googleads/v8/common/extensions.proto @@ -0,0 +1,368 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/common/custom_parameter.proto"; +import "google/ads/googleads/v8/common/feed_common.proto"; +import "google/ads/googleads/v8/enums/app_store.proto"; +import "google/ads/googleads/v8/enums/call_conversion_reporting_state.proto"; +import "google/ads/googleads/v8/enums/price_extension_price_qualifier.proto"; +import "google/ads/googleads/v8/enums/price_extension_price_unit.proto"; +import "google/ads/googleads/v8/enums/price_extension_type.proto"; +import "google/ads/googleads/v8/enums/promotion_extension_discount_modifier.proto"; +import "google/ads/googleads/v8/enums/promotion_extension_occasion.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionsProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing extension types. + +// Represents an App extension. +message AppFeedItem { + // The visible text displayed when the link is rendered in an ad. + // This string must not be empty, and the length of this string should + // be between 1 and 25, inclusive. + optional string link_text = 9; + + // The store-specific ID for the target application. + // This string must not be empty. + optional string app_id = 10; + + // The application store that the target application belongs to. + // This field is required. + google.ads.googleads.v8.enums.AppStoreEnum.AppStore app_store = 3; + + // A list of possible final URLs after all cross domain redirects. + // This list must not be empty. + repeated string final_urls = 11; + + // A list of possible final mobile URLs after all cross domain redirects. + repeated string final_mobile_urls = 12; + + // URL template for constructing a tracking URL. Default value is "{lpurl}". + optional string tracking_url_template = 13; + + // A list of mappings to be used for substituting URL custom parameter tags in + // the tracking_url_template, final_urls, and/or final_mobile_urls. + repeated CustomParameter url_custom_parameters = 7; + + // URL template for appending params to landing page URLs served with parallel + // tracking. + optional string final_url_suffix = 14; +} + +// Represents a Call extension. +message CallFeedItem { + // The advertiser's phone number to append to the ad. + // This string must not be empty. + optional string phone_number = 7; + + // Uppercase two-letter country code of the advertiser's phone number. + // This string must not be empty. + optional string country_code = 8; + + // Indicates whether call tracking is enabled. By default, call tracking is + // not enabled. + optional bool call_tracking_enabled = 9; + + // The conversion action to attribute a call conversion to. If not set a + // default conversion action is used. This field only has effect if + // call_tracking_enabled is set to true. Otherwise this field is ignored. + optional string call_conversion_action = 10; + + // If true, disable call conversion tracking. call_conversion_action should + // not be set if this is true. Optional. + optional bool call_conversion_tracking_disabled = 11; + + // Enum value that indicates whether this call extension uses its own call + // conversion setting (or just have call conversion disabled), or following + // the account level setting. + google.ads.googleads.v8.enums.CallConversionReportingStateEnum.CallConversionReportingState call_conversion_reporting_state = 6; +} + +// Represents a callout extension. +message CalloutFeedItem { + // The callout text. + // The length of this string should be between 1 and 25, inclusive. + optional string callout_text = 2; +} + +// Represents a location extension. +message LocationFeedItem { + // The name of the business. + optional string business_name = 9; + + // Line 1 of the business address. + optional string address_line_1 = 10; + + // Line 2 of the business address. + optional string address_line_2 = 11; + + // City of the business address. + optional string city = 12; + + // Province of the business address. + optional string province = 13; + + // Postal code of the business address. + optional string postal_code = 14; + + // Country code of the business address. + optional string country_code = 15; + + // Phone number of the business. + optional string phone_number = 16; +} + +// Represents an affiliate location extension. +message AffiliateLocationFeedItem { + // The name of the business. + optional string business_name = 11; + + // Line 1 of the business address. + optional string address_line_1 = 12; + + // Line 2 of the business address. + optional string address_line_2 = 13; + + // City of the business address. + optional string city = 14; + + // Province of the business address. + optional string province = 15; + + // Postal code of the business address. + optional string postal_code = 16; + + // Country code of the business address. + optional string country_code = 17; + + // Phone number of the business. + optional string phone_number = 18; + + // Id of the retail chain that is advertised as a seller of your product. + optional int64 chain_id = 19; + + // Name of chain. + optional string chain_name = 20; +} + +// An extension that users can click on to send a text message to the +// advertiser. +message TextMessageFeedItem { + // The business name to prepend to the message text. + // This field is required. + optional string business_name = 6; + + // Uppercase two-letter country code of the advertiser's phone number. + // This field is required. + optional string country_code = 7; + + // The advertiser's phone number the message will be sent to. Required. + optional string phone_number = 8; + + // The text to show in the ad. + // This field is required. + optional string text = 9; + + // The message extension_text populated in the messaging app. + optional string extension_text = 10; +} + +// Represents a Price extension. +message PriceFeedItem { + // Price extension type of this extension. + google.ads.googleads.v8.enums.PriceExtensionTypeEnum.PriceExtensionType type = 1; + + // Price qualifier for all offers of this price extension. + google.ads.googleads.v8.enums.PriceExtensionPriceQualifierEnum.PriceExtensionPriceQualifier price_qualifier = 2; + + // Tracking URL template for all offers of this price extension. + optional string tracking_url_template = 7; + + // The code of the language used for this price extension. + optional string language_code = 8; + + // The price offerings in this price extension. + repeated PriceOffer price_offerings = 5; + + // Tracking URL template for all offers of this price extension. + optional string final_url_suffix = 9; +} + +// Represents one price offer in a price extension. +message PriceOffer { + // Header text of this offer. + optional string header = 7; + + // Description text of this offer. + optional string description = 8; + + // Price value of this offer. + Money price = 3; + + // Price unit for this offer. + google.ads.googleads.v8.enums.PriceExtensionPriceUnitEnum.PriceExtensionPriceUnit unit = 4; + + // A list of possible final URLs after all cross domain redirects. + repeated string final_urls = 9; + + // A list of possible final mobile URLs after all cross domain redirects. + repeated string final_mobile_urls = 10; +} + +// Represents a Promotion extension. +message PromotionFeedItem { + // A freeform description of what the promotion is targeting. + // This field is required. + optional string promotion_target = 16; + + // Enum that modifies the qualification of the discount. + google.ads.googleads.v8.enums.PromotionExtensionDiscountModifierEnum.PromotionExtensionDiscountModifier discount_modifier = 2; + + // Start date of when the promotion is eligible to be redeemed. + optional string promotion_start_date = 19; + + // Last date when the promotion is eligible to be redeemed. + optional string promotion_end_date = 20; + + // The occasion the promotion was intended for. + // If an occasion is set, the redemption window will need to fall within + // the date range associated with the occasion. + google.ads.googleads.v8.enums.PromotionExtensionOccasionEnum.PromotionExtensionOccasion occasion = 9; + + // A list of possible final URLs after all cross domain redirects. + // This field is required. + repeated string final_urls = 21; + + // A list of possible final mobile URLs after all cross domain redirects. + repeated string final_mobile_urls = 22; + + // URL template for constructing a tracking URL. + optional string tracking_url_template = 23; + + // A list of mappings to be used for substituting URL custom parameter tags in + // the tracking_url_template, final_urls, and/or final_mobile_urls. + repeated CustomParameter url_custom_parameters = 13; + + // URL template for appending params to landing page URLs served with parallel + // tracking. + optional string final_url_suffix = 24; + + // The language of the promotion. + // Represented as BCP 47 language tag. + optional string language_code = 25; + + // Discount type, can be percentage off or amount off. + oneof discount_type { + // Percentage off discount in the promotion in micros. + // One million is equivalent to one percent. + // Either this or money_off_amount is required. + int64 percent_off = 17; + + // Money amount off for discount in the promotion. + // Either this or percent_off is required. + Money money_amount_off = 4; + } + + // Promotion trigger. Can be by promotion code or promo by eligible order + // amount. + oneof promotion_trigger { + // A code the user should use in order to be eligible for the promotion. + string promotion_code = 18; + + // The amount the total order needs to be for the user to be eligible for + // the promotion. + Money orders_over_amount = 6; + } +} + +// Represents a structured snippet extension. +message StructuredSnippetFeedItem { + // The header of the snippet. + // This string must not be empty. + optional string header = 3; + + // The values in the snippet. + // The maximum size of this collection is 10. + repeated string values = 4; +} + +// Represents a sitelink extension. +message SitelinkFeedItem { + // URL display text for the sitelink. + // The length of this string should be between 1 and 25, inclusive. + optional string link_text = 9; + + // First line of the description for the sitelink. + // If this value is set, line2 must also be set. + // The length of this string should be between 0 and 35, inclusive. + optional string line1 = 10; + + // Second line of the description for the sitelink. + // If this value is set, line1 must also be set. + // The length of this string should be between 0 and 35, inclusive. + optional string line2 = 11; + + // A list of possible final URLs after all cross domain redirects. + repeated string final_urls = 12; + + // A list of possible final mobile URLs after all cross domain redirects. + repeated string final_mobile_urls = 13; + + // URL template for constructing a tracking URL. + optional string tracking_url_template = 14; + + // A list of mappings to be used for substituting URL custom parameter tags in + // the tracking_url_template, final_urls, and/or final_mobile_urls. + repeated CustomParameter url_custom_parameters = 7; + + // Final URL suffix to be appended to landing page URLs served with + // parallel tracking. + optional string final_url_suffix = 15; +} + +// Represents a hotel callout extension. +message HotelCalloutFeedItem { + // The callout text. + // The length of this string should be between 1 and 25, inclusive. + optional string text = 3; + + // The language of the hotel callout text. + // IETF BCP 47 compliant language code. + optional string language_code = 4; +} + +// Represents an advertiser provided image extension. +message ImageFeedItem { + // Required. Resource name of the image asset. + string image_asset = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; +} diff --git a/google/ads/googleads/v8/common/feed_common.proto b/google/ads/googleads/v8/common/feed_common.proto new file mode 100644 index 000000000..9e1bd467e --- /dev/null +++ b/google/ads/googleads/v8/common/feed_common.proto @@ -0,0 +1,39 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "FeedCommonProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing common feed proto messages. + +// Represents a price in a particular currency. +message Money { + // Three-character ISO 4217 currency code. + optional string currency_code = 3; + + // Amount in micros. One million is equivalent to one unit. + optional int64 amount_micros = 4; +} diff --git a/google/ads/googleads/v8/common/feed_item_set_filter_type_infos.proto b/google/ads/googleads/v8/common/feed_item_set_filter_type_infos.proto new file mode 100644 index 000000000..d79f19493 --- /dev/null +++ b/google/ads/googleads/v8/common/feed_item_set_filter_type_infos.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/feed_item_set_string_filter_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetFilterTypeInfosProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Represents a filter on locations in a feed item set. +// Only applicable if the parent Feed of the FeedItemSet is a LOCATION feed. +message DynamicLocationSetFilter { + // If multiple labels are set, then only feeditems marked with all the labels + // will be added to the FeedItemSet. + repeated string labels = 1; + + // Business name filter. + BusinessNameFilter business_name_filter = 2; +} + +// Represents a business name filter on locations in a FeedItemSet. +message BusinessNameFilter { + // Business name string to use for filtering. + string business_name = 1; + + // The type of string matching to use when filtering with business_name. + google.ads.googleads.v8.enums.FeedItemSetStringFilterTypeEnum.FeedItemSetStringFilterType filter_type = 2; +} + +// Represents a filter on affiliate locations in a FeedItemSet. +// Only applicable if the parent Feed of the FeedItemSet is an +// AFFILIATE_LOCATION feed. +message DynamicAffiliateLocationSetFilter { + // Used to filter affiliate locations by chain ids. Only affiliate locations + // that belong to the specified chain(s) will be added to the FeedItemSet. + repeated int64 chain_ids = 1; +} diff --git a/google/ads/googleads/v8/common/final_app_url.proto b/google/ads/googleads/v8/common/final_app_url.proto new file mode 100644 index 000000000..7f98f070f --- /dev/null +++ b/google/ads/googleads/v8/common/final_app_url.proto @@ -0,0 +1,46 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/app_url_operating_system_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "FinalAppUrlProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file FinalAppUrl type. + +// A URL for deep linking into an app for the given operating system. +message FinalAppUrl { + // The operating system targeted by this URL. Required. + google.ads.googleads.v8.enums.AppUrlOperatingSystemTypeEnum.AppUrlOperatingSystemType os_type = 1; + + // The app deep link URL. Deep links specify a location in an app that + // corresponds to the content you'd like to show, and should be of the form + // {scheme}://{host_path} + // The scheme identifies which app to open. For your app, you can use a custom + // scheme that starts with the app's name. The host and path specify the + // unique location in the app where your content exists. + // Example: "exampleapp://productid_1234". Required. + optional string url = 3; +} diff --git a/google/ads/googleads/v8/common/frequency_cap.proto b/google/ads/googleads/v8/common/frequency_cap.proto new file mode 100644 index 000000000..80b4d1b81 --- /dev/null +++ b/google/ads/googleads/v8/common/frequency_cap.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/frequency_cap_event_type.proto"; +import "google/ads/googleads/v8/enums/frequency_cap_level.proto"; +import "google/ads/googleads/v8/enums/frequency_cap_time_unit.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "FrequencyCapProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing frequency caps. + +// A rule specifying the maximum number of times an ad (or some set of ads) can +// be shown to a user over a particular time period. +message FrequencyCapEntry { + // The key of a particular frequency cap. There can be no more + // than one frequency cap with the same key. + FrequencyCapKey key = 1; + + // Maximum number of events allowed during the time range by this cap. + optional int32 cap = 3; +} + +// A group of fields used as keys for a frequency cap. +// There can be no more than one frequency cap with the same key. +message FrequencyCapKey { + // The level on which the cap is to be applied (e.g. ad group ad, ad group). + // The cap is applied to all the entities of this level. + google.ads.googleads.v8.enums.FrequencyCapLevelEnum.FrequencyCapLevel level = 1; + + // The type of event that the cap applies to (e.g. impression). + google.ads.googleads.v8.enums.FrequencyCapEventTypeEnum.FrequencyCapEventType event_type = 3; + + // Unit of time the cap is defined at (e.g. day, week). + google.ads.googleads.v8.enums.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit time_unit = 2; + + // Number of time units the cap lasts. + optional int32 time_length = 5; +} diff --git a/google/ads/googleads/v8/common/keyword_plan_common.proto b/google/ads/googleads/v8/common/keyword_plan_common.proto new file mode 100644 index 000000000..74398718e --- /dev/null +++ b/google/ads/googleads/v8/common/keyword_plan_common.proto @@ -0,0 +1,139 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/common/dates.proto"; +import "google/ads/googleads/v8/enums/device.proto"; +import "google/ads/googleads/v8/enums/keyword_plan_aggregate_metric_type.proto"; +import "google/ads/googleads/v8/enums/keyword_plan_competition_level.proto"; +import "google/ads/googleads/v8/enums/keyword_plan_concept_group_type.proto"; +import "google/ads/googleads/v8/enums/month_of_year.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCommonProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing Keyword Planner messages. + +// Historical metrics specific to the targeting options selected. +// Targeting options include geographies, network, etc. +// Refer to https://support.google.com/google-ads/answer/3022575 for more +// details. +message KeywordPlanHistoricalMetrics { + // Approximate number of monthly searches on this query averaged + // for the past 12 months. + optional int64 avg_monthly_searches = 7; + + // Approximate number of searches on this query for the past twelve months. + repeated MonthlySearchVolume monthly_search_volumes = 6; + + // The competition level for the query. + google.ads.googleads.v8.enums.KeywordPlanCompetitionLevelEnum.KeywordPlanCompetitionLevel competition = 2; + + // The competition index for the query in the range [0, 100]. + // Shows how competitive ad placement is for a keyword. + // The level of competition from 0-100 is determined by the number of ad slots + // filled divided by the total number of ad slots available. If not enough + // data is available, null is returned. + optional int64 competition_index = 8; + + // Top of page bid low range (20th percentile) in micros for the keyword. + optional int64 low_top_of_page_bid_micros = 9; + + // Top of page bid high range (80th percentile) in micros for the keyword. + optional int64 high_top_of_page_bid_micros = 10; +} + +// Historical metrics options. +message HistoricalMetricsOptions { + // The year month range for historical metrics. If not specified the searches + // will be returned for past 12 months. + // Searches data is available for the past 4 years. If the search volume is + // not available for the entire year_month_range provided, the subset of the + // year month range for which search volume is available will be returned. + optional YearMonthRange year_month_range = 1; +} + +// Monthly search volume. +message MonthlySearchVolume { + // The year of the search volume (e.g. 2020). + optional int64 year = 4; + + // The month of the search volume. + google.ads.googleads.v8.enums.MonthOfYearEnum.MonthOfYear month = 2; + + // Approximate number of searches for the month. + // A null value indicates the search volume is unavailable for + // that month. + optional int64 monthly_searches = 5; +} + +// The aggregate metrics specification of the request. +message KeywordPlanAggregateMetrics { + // The list of aggregate metrics to fetch data. + repeated google.ads.googleads.v8.enums.KeywordPlanAggregateMetricTypeEnum.KeywordPlanAggregateMetricType aggregate_metric_types = 1; +} + +// The aggregated historical metrics for keyword plan keywords. +message KeywordPlanAggregateMetricResults { + // The aggregate searches for all the keywords segmented by device + // for the specified time. + // Supports the following device types: MOBILE, TABLET, DESKTOP. + // + // This is only set when KeywordPlanAggregateMetricTypeEnum.DEVICE is set + // in the KeywordPlanAggregateMetrics field in the request. + repeated KeywordPlanDeviceSearches device_searches = 1; +} + +// The total searches for the device type during the specified time period. +message KeywordPlanDeviceSearches { + // The device type. + google.ads.googleads.v8.enums.DeviceEnum.Device device = 1; + + // The total searches for the device. + optional int64 search_count = 2; +} + +// The Annotations for the Keyword plan keywords. +message KeywordAnnotations { + // The list of concepts for the keyword. + repeated KeywordConcept concepts = 1; +} + +// The concept for the keyword. +message KeywordConcept { + // The concept name for the keyword in the concept_group. + string name = 1; + + // The concept group of the concept details. + ConceptGroup concept_group = 2; +} + +// The concept group for the keyword concept. +message ConceptGroup { + // The concept group name. + string name = 1; + + // The concept group type. + google.ads.googleads.v8.enums.KeywordPlanConceptGroupTypeEnum.KeywordPlanConceptGroupType type = 2; +} diff --git a/google/ads/googleads/v8/common/matching_function.proto b/google/ads/googleads/v8/common/matching_function.proto new file mode 100644 index 000000000..b5e521f9d --- /dev/null +++ b/google/ads/googleads/v8/common/matching_function.proto @@ -0,0 +1,126 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/matching_function_context_type.proto"; +import "google/ads/googleads/v8/enums/matching_function_operator.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "MatchingFunctionProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing a matching function. + +// Matching function associated with a +// CustomerFeed, CampaignFeed, or AdGroupFeed. The matching function is used +// to filter the set of feed items selected. +message MatchingFunction { + // String representation of the Function. + // + // Examples: + // + // 1. IDENTITY(true) or IDENTITY(false). All or no feed items served. + // 2. EQUALS(CONTEXT.DEVICE,"Mobile") + // 3. IN(FEED_ITEM_ID,{1000001,1000002,1000003}) + // 4. CONTAINS_ANY(FeedAttribute[12345678,0],{"Mars cruise","Venus cruise"}) + // 5. AND(IN(FEED_ITEM_ID,{10001,10002}),EQUALS(CONTEXT.DEVICE,"Mobile")) + // + // For more details, visit + // https://developers.google.com/adwords/api/docs/guides/feed-matching-functions + // + // Note that because multiple strings may represent the same underlying + // function (whitespace and single versus double quotation marks, for + // example), the value returned may not be identical to the string sent in a + // mutate request. + optional string function_string = 5; + + // Operator for a function. + google.ads.googleads.v8.enums.MatchingFunctionOperatorEnum.MatchingFunctionOperator operator = 4; + + // The operands on the left hand side of the equation. This is also the + // operand to be used for single operand expressions such as NOT. + repeated Operand left_operands = 2; + + // The operands on the right hand side of the equation. + repeated Operand right_operands = 3; +} + +// An operand in a matching function. +message Operand { + // A constant operand in a matching function. + message ConstantOperand { + // Constant operand values. Required. + oneof constant_operand_value { + // String value of the operand if it is a string type. + string string_value = 5; + + // Int64 value of the operand if it is a int64 type. + int64 long_value = 6; + + // Boolean value of the operand if it is a boolean type. + bool boolean_value = 7; + + // Double value of the operand if it is a double type. + double double_value = 8; + } + } + + // A feed attribute operand in a matching function. + // Used to represent a feed attribute in feed. + message FeedAttributeOperand { + // The associated feed. Required. + optional int64 feed_id = 3; + + // Id of the referenced feed attribute. Required. + optional int64 feed_attribute_id = 4; + } + + // A function operand in a matching function. + // Used to represent nested functions. + message FunctionOperand { + // The matching function held in this operand. + MatchingFunction matching_function = 1; + } + + // An operand in a function referring to a value in the request context. + message RequestContextOperand { + // Type of value to be referred in the request context. + google.ads.googleads.v8.enums.MatchingFunctionContextTypeEnum.MatchingFunctionContextType context_type = 1; + } + + // Different operands that can be used in a matching function. Required. + oneof function_argument_operand { + // A constant operand in a matching function. + ConstantOperand constant_operand = 1; + + // This operand specifies a feed attribute in feed. + FeedAttributeOperand feed_attribute_operand = 2; + + // A function operand in a matching function. + // Used to represent nested functions. + FunctionOperand function_operand = 3; + + // An operand in a function referring to a value in the request context. + RequestContextOperand request_context_operand = 4; + } +} diff --git a/google/ads/googleads/v8/common/metrics.proto b/google/ads/googleads/v8/common/metrics.proto new file mode 100644 index 000000000..ab54d06c5 --- /dev/null +++ b/google/ads/googleads/v8/common/metrics.proto @@ -0,0 +1,619 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/interaction_event_type.proto"; +import "google/ads/googleads/v8/enums/quality_score_bucket.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "MetricsProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing metrics. + +// Metrics data. +message Metrics { + // The percent of your ad impressions that are shown as the very first ad + // above the organic search results. + optional double absolute_top_impression_percentage = 183; + + // Average cost of viewable impressions (`active_view_impressions`). + optional double active_view_cpm = 184; + + // Active view measurable clicks divided by active view viewable impressions. + // This metric is reported only for display network. + optional double active_view_ctr = 185; + + // A measurement of how often your ad has become viewable on a Display + // Network site. + optional int64 active_view_impressions = 186; + + // The ratio of impressions that could be measured by Active View over the + // number of served impressions. + optional double active_view_measurability = 187; + + // The cost of the impressions you received that were measurable by Active + // View. + optional int64 active_view_measurable_cost_micros = 188; + + // The number of times your ads are appearing on placements in positions + // where they can be seen. + optional int64 active_view_measurable_impressions = 189; + + // The percentage of time when your ad appeared on an Active View enabled site + // (measurable impressions) and was viewable (viewable impressions). + optional double active_view_viewability = 190; + + // All conversions from interactions (as oppose to view through conversions) + // divided by the number of ad interactions. + optional double all_conversions_from_interactions_rate = 191; + + // The value of all conversions. + optional double all_conversions_value = 192; + + // The value of all conversions. When this column is selected with date, the + // values in date column means the conversion date. Details for the + // by_conversion_date columns are available at + // https://support.google.com/google-ads/answer/9549009. + double all_conversions_value_by_conversion_date = 240; + + // The total number of conversions. This includes all conversions regardless + // of the value of include_in_conversions_metric. + optional double all_conversions = 193; + + // The total number of conversions. This includes all conversions regardless + // of the value of include_in_conversions_metric. When this column is selected + // with date, the values in date column means the conversion date. Details for + // the by_conversion_date columns are available at + // https://support.google.com/google-ads/answer/9549009. + double all_conversions_by_conversion_date = 241; + + // The value of all conversions divided by the total cost of ad interactions + // (such as clicks for text ads or views for video ads). + optional double all_conversions_value_per_cost = 194; + + // The number of times people clicked the "Call" button to call a store during + // or after clicking an ad. This number doesn't include whether or not calls + // were connected, or the duration of any calls. + // This metric applies to feed items only. + optional double all_conversions_from_click_to_call = 195; + + // The number of times people clicked a "Get directions" button to navigate to + // a store after clicking an ad. + // This metric applies to feed items only. + optional double all_conversions_from_directions = 196; + + // The value of all conversions from interactions divided by the total number + // of interactions. + optional double all_conversions_from_interactions_value_per_interaction = 197; + + // The number of times people clicked a link to view a store's menu after + // clicking an ad. + // This metric applies to feed items only. + optional double all_conversions_from_menu = 198; + + // The number of times people placed an order at a store after clicking an ad. + // This metric applies to feed items only. + optional double all_conversions_from_order = 199; + + // The number of other conversions (for example, posting a review or saving a + // location for a store) that occurred after people clicked an ad. + // This metric applies to feed items only. + optional double all_conversions_from_other_engagement = 200; + + // Estimated number of times people visited a store after clicking an ad. + // This metric applies to feed items only. + optional double all_conversions_from_store_visit = 201; + + // The number of times that people were taken to a store's URL after clicking + // an ad. + // This metric applies to feed items only. + optional double all_conversions_from_store_website = 202; + + // The average amount you pay per interaction. This amount is the total cost + // of your ads divided by the total number of interactions. + optional double average_cost = 203; + + // The total cost of all clicks divided by the total number of clicks + // received. + optional double average_cpc = 204; + + // The average amount that you've been charged for an ad engagement. This + // amount is the total cost of all ad engagements divided by the total number + // of ad engagements. + optional double average_cpe = 205; + + // Average cost-per-thousand impressions (CPM). + optional double average_cpm = 206; + + // The average amount you pay each time someone views your ad. + // The average CPV is defined by the total cost of all ad views divided by + // the number of views. + optional double average_cpv = 207; + + // Average number of pages viewed per session. + optional double average_page_views = 208; + + // Total duration of all sessions (in seconds) / number of sessions. Imported + // from Google Analytics. + optional double average_time_on_site = 209; + + // An indication of how other advertisers are bidding on similar products. + optional double benchmark_average_max_cpc = 210; + + // An indication on how other advertisers' Shopping ads for similar products + // are performing based on how often people who see their ad click on it. + optional double benchmark_ctr = 211; + + // Percentage of clicks where the user only visited a single page on your + // site. Imported from Google Analytics. + optional double bounce_rate = 212; + + // The number of clicks. + optional int64 clicks = 131; + + // The number of times your ad or your site's listing in the unpaid + // results was clicked. See the help page at + // https://support.google.com/google-ads/answer/3097241 for details. + optional int64 combined_clicks = 156; + + // The number of times your ad or your site's listing in the unpaid + // results was clicked (combined_clicks) divided by combined_queries. See the + // help page at https://support.google.com/google-ads/answer/3097241 for + // details. + optional double combined_clicks_per_query = 157; + + // The number of searches that returned pages from your site in the unpaid + // results or showed one of your text ads. See the help page at + // https://support.google.com/google-ads/answer/3097241 for details. + optional int64 combined_queries = 158; + + // The estimated percent of times that your ad was eligible to show + // on the Display Network but didn't because your budget was too low. + // Note: Content budget lost impression share is reported in the range of 0 + // to 0.9. Any value above 0.9 is reported as 0.9001. + optional double content_budget_lost_impression_share = 159; + + // The impressions you've received on the Display Network divided + // by the estimated number of impressions you were eligible to receive. + // Note: Content impression share is reported in the range of 0.1 to 1. Any + // value below 0.1 is reported as 0.0999. + optional double content_impression_share = 160; + + // The last date/time a conversion tag for this conversion action successfully + // fired and was seen by Google Ads. This firing event may not have been the + // result of an attributable conversion (e.g. because the tag was fired from a + // browser that did not previously click an ad from an appropriate + // advertiser). The date/time is in the customer's time zone. + optional string conversion_last_received_request_date_time = 161; + + // The date of the most recent conversion for this conversion action. The date + // is in the customer's time zone. + optional string conversion_last_conversion_date = 162; + + // The estimated percentage of impressions on the Display Network + // that your ads didn't receive due to poor Ad Rank. + // Note: Content rank lost impression share is reported in the range of 0 + // to 0.9. Any value above 0.9 is reported as 0.9001. + optional double content_rank_lost_impression_share = 163; + + // Conversions from interactions divided by the number of ad interactions + // (such as clicks for text ads or views for video ads). This only includes + // conversion actions which include_in_conversions_metric attribute is set to + // true. If you use conversion-based bidding, your bid strategies will + // optimize for these conversions. + optional double conversions_from_interactions_rate = 164; + + // The value of conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double conversions_value = 165; + + // The value of conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. When this column is selected with date, the values in date + // column means the conversion date. Details for the by_conversion_date + // columns are available at + // https://support.google.com/google-ads/answer/9549009. + double conversions_value_by_conversion_date = 242; + + // The value of conversions divided by the cost of ad interactions. This only + // includes conversion actions which include_in_conversions_metric attribute + // is set to true. If you use conversion-based bidding, your bid strategies + // will optimize for these conversions. + optional double conversions_value_per_cost = 166; + + // The value of conversions from interactions divided by the number of ad + // interactions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double conversions_from_interactions_value_per_interaction = 167; + + // The number of conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double conversions = 168; + + // The number of conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. When this column is selected with date, the values in date + // column means the conversion date. Details for the by_conversion_date + // columns are available at + // https://support.google.com/google-ads/answer/9549009. + double conversions_by_conversion_date = 243; + + // The sum of your cost-per-click (CPC) and cost-per-thousand impressions + // (CPM) costs during this period. + optional int64 cost_micros = 169; + + // The cost of ad interactions divided by all conversions. + optional double cost_per_all_conversions = 170; + + // The cost of ad interactions divided by conversions. This only includes + // conversion actions which include_in_conversions_metric attribute is set to + // true. If you use conversion-based bidding, your bid strategies will + // optimize for these conversions. + optional double cost_per_conversion = 171; + + // The cost of ad interactions divided by current model attributed + // conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double cost_per_current_model_attributed_conversion = 172; + + // Conversions from when a customer clicks on a Google Ads ad on one device, + // then converts on a different device or browser. + // Cross-device conversions are already included in all_conversions. + optional double cross_device_conversions = 173; + + // The number of clicks your ad receives (Clicks) divided by the number + // of times your ad is shown (Impressions). + optional double ctr = 174; + + // Shows how your historic conversions data would look under the attribution + // model you've currently selected. This only includes conversion actions + // which include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double current_model_attributed_conversions = 175; + + // Current model attributed conversions from interactions divided by the + // number of ad interactions (such as clicks for text ads or views for video + // ads). This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double current_model_attributed_conversions_from_interactions_rate = 176; + + // The value of current model attributed conversions from interactions divided + // by the number of ad interactions. This only includes conversion actions + // which include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double current_model_attributed_conversions_from_interactions_value_per_interaction = 177; + + // The value of current model attributed conversions. This only includes + // conversion actions which include_in_conversions_metric attribute is set to + // true. If you use conversion-based bidding, your bid strategies will + // optimize for these conversions. + optional double current_model_attributed_conversions_value = 178; + + // The value of current model attributed conversions divided by the cost of ad + // interactions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double current_model_attributed_conversions_value_per_cost = 179; + + // How often people engage with your ad after it's shown to them. This is the + // number of ad expansions divided by the number of times your ad is shown. + optional double engagement_rate = 180; + + // The number of engagements. + // An engagement occurs when a viewer expands your Lightbox ad. Also, in the + // future, other ad types may support engagement metrics. + optional int64 engagements = 181; + + // Average lead value based on clicks. + optional double hotel_average_lead_value_micros = 213; + + // The average price difference between the price offered by reporting hotel + // advertiser and the cheapest price offered by the competing advertiser. + optional double hotel_price_difference_percentage = 214; + + // The number of impressions that hotel partners could have had given their + // feed performance. + optional int64 hotel_eligible_impressions = 215; + + // The creative historical quality score. + google.ads.googleads.v8.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80; + + // The quality of historical landing page experience. + google.ads.googleads.v8.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81; + + // The historical quality score. + optional int64 historical_quality_score = 216; + + // The historical search predicted click through rate (CTR). + google.ads.googleads.v8.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83; + + // The number of times the ad was forwarded to someone else as a message. + optional int64 gmail_forwards = 217; + + // The number of times someone has saved your Gmail ad to their inbox as a + // message. + optional int64 gmail_saves = 218; + + // The number of clicks to the landing page on the expanded state of Gmail + // ads. + optional int64 gmail_secondary_clicks = 219; + + // The number of times a store's location-based ad was shown. + // This metric applies to feed items only. + optional int64 impressions_from_store_reach = 220; + + // Count of how often your ad has appeared on a search results page or + // website on the Google Network. + optional int64 impressions = 221; + + // How often people interact with your ad after it is shown to them. + // This is the number of interactions divided by the number of times your ad + // is shown. + optional double interaction_rate = 222; + + // The number of interactions. + // An interaction is the main user action associated with an ad format-clicks + // for text and shopping ads, views for video ads, and so on. + optional int64 interactions = 223; + + // The types of payable and free interactions. + repeated google.ads.googleads.v8.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100; + + // The percentage of clicks filtered out of your total number of clicks + // (filtered + non-filtered clicks) during the reporting period. + optional double invalid_click_rate = 224; + + // Number of clicks Google considers illegitimate and doesn't charge you for. + optional int64 invalid_clicks = 225; + + // Number of message chats initiated for Click To Message impressions that + // were message tracking eligible. + optional int64 message_chats = 226; + + // Number of Click To Message impressions that were message tracking eligible. + optional int64 message_impressions = 227; + + // Number of message chats initiated (message_chats) divided by the number + // of message impressions (message_impressions). + // Rate at which a user initiates a message chat from an ad impression with + // a messaging option and message tracking enabled. + // Note that this rate can be more than 1.0 for a given message impression. + optional double message_chat_rate = 228; + + // The percentage of mobile clicks that go to a mobile-friendly page. + optional double mobile_friendly_clicks_percentage = 229; + + // Total optimization score uplift of all recommendations. + optional double optimization_score_uplift = 247; + + // URL for the optimization score page in the Google Ads web interface. + // This metric can be selected from `customer` or `campaign`, and can be + // segmented by `segments.recommendation_type`. For example, `SELECT + // metrics.optimization_score_url, segments.recommendation_type FROM + // customer` will return a URL for each unique (customer, recommendation_type) + // combination. + optional string optimization_score_url = 248; + + // The number of times someone clicked your site's listing in the unpaid + // results for a particular query. See the help page at + // https://support.google.com/google-ads/answer/3097241 for details. + optional int64 organic_clicks = 230; + + // The number of times someone clicked your site's listing in the unpaid + // results (organic_clicks) divided by the total number of searches that + // returned pages from your site (organic_queries). See the help page at + // https://support.google.com/google-ads/answer/3097241 for details. + optional double organic_clicks_per_query = 231; + + // The number of listings for your site in the unpaid search results. See the + // help page at https://support.google.com/google-ads/answer/3097241 for + // details. + optional int64 organic_impressions = 232; + + // The number of times a page from your site was listed in the unpaid search + // results (organic_impressions) divided by the number of searches returning + // your site's listing in the unpaid results (organic_queries). See the help + // page at https://support.google.com/google-ads/answer/3097241 for details. + optional double organic_impressions_per_query = 233; + + // The total number of searches that returned your site's listing in the + // unpaid results. See the help page at + // https://support.google.com/google-ads/answer/3097241 for details. + optional int64 organic_queries = 234; + + // Percentage of first-time sessions (from people who had never visited your + // site before). Imported from Google Analytics. + optional double percent_new_visitors = 235; + + // Number of offline phone calls. + optional int64 phone_calls = 236; + + // Number of offline phone impressions. + optional int64 phone_impressions = 237; + + // Number of phone calls received (phone_calls) divided by the number of + // times your phone number is shown (phone_impressions). + optional double phone_through_rate = 238; + + // Your clickthrough rate (Ctr) divided by the average clickthrough rate of + // all advertisers on the websites that show your ads. Measures how your ads + // perform on Display Network sites compared to other ads on the same sites. + optional double relative_ctr = 239; + + // The percentage of the customer's Shopping or Search ad impressions that are + // shown in the most prominent Shopping position. See + // https://support.google.com/google-ads/answer/7501826 + // for details. Any value below 0.1 is reported as 0.0999. + optional double search_absolute_top_impression_share = 136; + + // The number estimating how often your ad wasn't the very first ad above the + // organic search results due to a low budget. Note: Search + // budget lost absolute top impression share is reported in the range of 0 to + // 0.9. Any value above 0.9 is reported as 0.9001. + optional double search_budget_lost_absolute_top_impression_share = 137; + + // The estimated percent of times that your ad was eligible to show on the + // Search Network but didn't because your budget was too low. Note: Search + // budget lost impression share is reported in the range of 0 to 0.9. Any + // value above 0.9 is reported as 0.9001. + optional double search_budget_lost_impression_share = 138; + + // The number estimating how often your ad didn't show anywhere above the + // organic search results due to a low budget. Note: Search + // budget lost top impression share is reported in the range of 0 to 0.9. Any + // value above 0.9 is reported as 0.9001. + optional double search_budget_lost_top_impression_share = 139; + + // The number of clicks you've received on the Search Network + // divided by the estimated number of clicks you were eligible to receive. + // Note: Search click share is reported in the range of 0.1 to 1. Any value + // below 0.1 is reported as 0.0999. + optional double search_click_share = 140; + + // The impressions you've received divided by the estimated number of + // impressions you were eligible to receive on the Search Network for search + // terms that matched your keywords exactly (or were close variants of your + // keyword), regardless of your keyword match types. Note: Search exact match + // impression share is reported in the range of 0.1 to 1. Any value below 0.1 + // is reported as 0.0999. + optional double search_exact_match_impression_share = 141; + + // The impressions you've received on the Search Network divided + // by the estimated number of impressions you were eligible to receive. + // Note: Search impression share is reported in the range of 0.1 to 1. Any + // value below 0.1 is reported as 0.0999. + optional double search_impression_share = 142; + + // The number estimating how often your ad wasn't the very first ad above the + // organic search results due to poor Ad Rank. + // Note: Search rank lost absolute top impression share is reported in the + // range of 0 to 0.9. Any value above 0.9 is reported as 0.9001. + optional double search_rank_lost_absolute_top_impression_share = 143; + + // The estimated percentage of impressions on the Search Network + // that your ads didn't receive due to poor Ad Rank. + // Note: Search rank lost impression share is reported in the range of 0 to + // 0.9. Any value above 0.9 is reported as 0.9001. + optional double search_rank_lost_impression_share = 144; + + // The number estimating how often your ad didn't show anywhere above the + // organic search results due to poor Ad Rank. + // Note: Search rank lost top impression share is reported in the range of 0 + // to 0.9. Any value above 0.9 is reported as 0.9001. + optional double search_rank_lost_top_impression_share = 145; + + // The impressions you've received in the top location (anywhere above the + // organic search results) compared to the estimated number of impressions you + // were eligible to receive in the top location. + // Note: Search top impression share is reported in the range of 0.1 to 1. Any + // value below 0.1 is reported as 0.0999. + optional double search_top_impression_share = 146; + + // A measure of how quickly your page loads after clicks on your mobile ads. + // The score is a range from 1 to 10, 10 being the fastest. + optional int64 speed_score = 147; + + // The percent of your ad impressions that are shown anywhere above the + // organic search results. + optional double top_impression_percentage = 148; + + // The percentage of ad clicks to Accelerated Mobile Pages (AMP) landing pages + // that reach a valid AMP page. + optional double valid_accelerated_mobile_pages_clicks_percentage = 149; + + // The value of all conversions divided by the number of all conversions. + optional double value_per_all_conversions = 150; + + // The value of all conversions divided by the number of all conversions. When + // this column is selected with date, the values in date column means the + // conversion date. Details for the by_conversion_date columns are available + // at https://support.google.com/google-ads/answer/9549009. + optional double value_per_all_conversions_by_conversion_date = 244; + + // The value of conversions divided by the number of conversions. This only + // includes conversion actions which include_in_conversions_metric attribute + // is set to true. If you use conversion-based bidding, your bid strategies + // will optimize for these conversions. + optional double value_per_conversion = 151; + + // The value of conversions divided by the number of conversions. This only + // includes conversion actions which include_in_conversions_metric attribute + // is set to true. If you use conversion-based bidding, your bid strategies + // will optimize for these conversions. When this column is selected with + // date, the values in date column means the conversion date. Details for the + // by_conversion_date columns are available at + // https://support.google.com/google-ads/answer/9549009. + optional double value_per_conversions_by_conversion_date = 245; + + // The value of current model attributed conversions divided by the number of + // the conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double value_per_current_model_attributed_conversion = 152; + + // Percentage of impressions where the viewer watched all of your video. + optional double video_quartile_p100_rate = 132; + + // Percentage of impressions where the viewer watched 25% of your video. + optional double video_quartile_p25_rate = 133; + + // Percentage of impressions where the viewer watched 50% of your video. + optional double video_quartile_p50_rate = 134; + + // Percentage of impressions where the viewer watched 75% of your video. + optional double video_quartile_p75_rate = 135; + + // The number of views your TrueView video ad receives divided by its number + // of impressions, including thumbnail impressions for TrueView in-display + // ads. + optional double video_view_rate = 153; + + // The number of times your video ads were viewed. + optional int64 video_views = 154; + + // The total number of view-through conversions. + // These happen when a customer sees an image or rich media ad, then later + // completes a conversion on your site without interacting with (e.g., + // clicking on) another ad. + optional int64 view_through_conversions = 155; + + // The number of iOS Store Kit Ad Network conversions. + int64 sk_ad_network_conversions = 246; +} diff --git a/google/ads/googleads/v8/common/offline_user_data.proto b/google/ads/googleads/v8/common/offline_user_data.proto new file mode 100644 index 000000000..d6c710e8a --- /dev/null +++ b/google/ads/googleads/v8/common/offline_user_data.proto @@ -0,0 +1,284 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/user_identifier_source.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing offline user data. + +// Address identifier of offline data. +message OfflineUserAddressInfo { + // First name of the user, which is hashed as SHA-256 after normalized + // (Lowercase all characters; Remove any extra spaces before, after, and in + // between). + optional string hashed_first_name = 7; + + // Last name of the user, which is hashed as SHA-256 after normalized (lower + // case only and no punctuation). + optional string hashed_last_name = 8; + + // City of the address. Only accepted for Store Sales and + // ConversionAdjustmentUploadService. + optional string city = 9; + + // State code of the address. Only accepted for Store Sales and + // ConversionAdjustmentUploadService. + optional string state = 10; + + // 2-letter country code in ISO-3166-1 alpha-2 of the user's address. + optional string country_code = 11; + + // Postal code of the user's address. + optional string postal_code = 12; + + // The street address of the user hashed using SHA-256 hash function after + // normalization (lower case only). Only accepted for + // ConversionAdjustmentUploadService. + optional string hashed_street_address = 13; +} + +// User identifying information. +message UserIdentifier { + // Source of the user identifier when the upload is from Store Sales, + // ConversionUploadService, or ConversionAdjustmentUploadService. For + // ConversionUploadService and ConversionAdjustmentUploadService, the source + // of the user identifier must be specified as FIRST_PARTY, otherwise an error + // will be returned. + google.ads.googleads.v8.enums.UserIdentifierSourceEnum.UserIdentifierSource user_identifier_source = 6; + + // Exactly one must be specified. For OfflineUserDataJobService, Customer + // Match accepts hashed_email, hashed_phone_number, mobile_id, + // third_party_user_id, and address_info; Store Sales accepts hashed_email, + // hashed_phone_number, third_party_user_id, and address_info. + // ConversionUploadService accepts hashed_email and hashed_phone_number. + // ConversionAdjustmentUploadService accepts hashed_email, + // hashed_phone_number, and address_info. + oneof identifier { + // Hashed email address using SHA-256 hash function after normalization. + // Accepted for Customer Match, Store Sales, ConversionUploadService, and + // ConversionAdjustmentUploadService. + string hashed_email = 7; + + // Hashed phone number using SHA-256 hash function after normalization + // (E164 standard). Accepted for Customer Match, Store Sales, + // ConversionUploadService, and ConversionAdjustmentUploadService. + string hashed_phone_number = 8; + + // Mobile device ID (advertising ID/IDFA). Accepted only for Customer Match. + string mobile_id = 9; + + // Advertiser-assigned user ID for Customer Match upload, or + // third-party-assigned user ID for Store Sales. Accepted only for Customer + // Match and Store Sales. + string third_party_user_id = 10; + + // Address information. Accepted only for Customer Match, Store Sales, and + // ConversionAdjustmentUploadService. + OfflineUserAddressInfo address_info = 5; + } +} + +// Attribute of the store sales transaction. +message TransactionAttribute { + // Timestamp when transaction occurred. Required. + // The format is "YYYY-MM-DD HH:MM:SS[+/-HH:MM]", where [+/-HH:MM] is an + // optional timezone offset from UTC. If the offset is absent, the API will + // use the account's timezone as default. + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30+03:00" + optional string transaction_date_time = 8; + + // Transaction amount in micros. Required. + // Transaction amount in micros needs to be greater than 1000. + // If item Attributes are provided, it represents the total value of the + // items, after multiplying the unit price per item by the quantity provided + // in the ItemAttributes. + optional double transaction_amount_micros = 9; + + // Transaction currency code. ISO 4217 three-letter code is used. Required. + optional string currency_code = 10; + + // The resource name of conversion action to report conversions to. + // Required. + optional string conversion_action = 11; + + // Transaction order id. + // Accessible only to customers on the allow-list. + optional string order_id = 12; + + // Store attributes of the transaction. + // Accessible only to customers on the allow-list. + StoreAttribute store_attribute = 6; + + // Value of the custom variable for each transaction. + // Accessible only to customers on the allow-list. + optional string custom_value = 13; + + // Item attributes of the transaction. + ItemAttribute item_attribute = 14; +} + +// Store attributes of the transaction. +message StoreAttribute { + // Store code from + // https://support.google.com/business/answer/3370250#storecode + optional string store_code = 2; +} + +// Item attributes of the transaction. +message ItemAttribute { + // A unique identifier of a product. It can be either the Merchant Center Item + // ID or GTIN (Global Trade Item Number). + string item_id = 1; + + // ID of the Merchant Center Account. + optional int64 merchant_id = 2; + + // Common Locale Data Repository (CLDR) territory code of the country + // associated with the feed where your items are uploaded. See + // https://developers.google.com/google-ads/api/reference/data/codes-formats#country-codes + // for more information. + string country_code = 3; + + // ISO 639-1 code of the language associated with the feed where your items + // are uploaded + string language_code = 4; + + // The number of items sold. Defaults to 1 if not set. + int64 quantity = 5; +} + +// User data holding user identifiers and attributes. +message UserData { + // User identification info. Required. + repeated UserIdentifier user_identifiers = 1; + + // Additional transactions/attributes associated with the user. + // Required when updating store sales data. + TransactionAttribute transaction_attribute = 2; + + // Additional attributes associated with the user. Required when updating + // customer match attributes. These have an expiration of 540 days. + UserAttribute user_attribute = 3; +} + +// User attribute, can only be used with CUSTOMER_MATCH_WITH_ATTRIBUTES job +// type. +message UserAttribute { + // Advertiser defined lifetime value for the user. + optional int64 lifetime_value_micros = 1; + + // Advertiser defined lifetime value bucket for the user. The valid range for + // a lifetime value bucket is from 1 (low) to 10 (high), except for remove + // operation where 0 will also be accepted. + optional int32 lifetime_value_bucket = 2; + + // Timestamp of the last purchase made by the user. + // The format is YYYY-MM-DD HH:MM:SS[+/-HH:MM], where [+/-HH:MM] is an + // optional timezone offset from UTC. If the offset is absent, the API will + // use the account's timezone as default. + string last_purchase_date_time = 3; + + // Advertiser defined average number of purchases that are made by the user in + // a 30 day period. + int32 average_purchase_count = 4; + + // Advertiser defined average purchase value in micros for the user. + int64 average_purchase_value_micros = 5; + + // Timestamp when the user was acquired. + // The format is YYYY-MM-DD HH:MM:SS[+/-HH:MM], where [+/-HH:MM] is an + // optional timezone offset from UTC. If the offset is absent, the API will + // use the account's timezone as default. + string acquisition_date_time = 6; +} + +// Metadata for customer match user list. +message CustomerMatchUserListMetadata { + // The resource name of remarketing list to update data. + // Required for job of CUSTOMER_MATCH_USER_LIST type. + optional string user_list = 2; +} + +// Metadata for Store Sales Direct. +message StoreSalesMetadata { + // This is the fraction of all transactions that are identifiable (i.e., + // associated with any form of customer information). + // Required. + // The fraction needs to be between 0 and 1 (excluding 0). + optional double loyalty_fraction = 5; + + // This is the ratio of sales being uploaded compared to the overall sales + // that can be associated with a customer. Required. + // The fraction needs to be between 0 and 1 (excluding 0). For example, if you + // upload half the sales that you are able to associate with a customer, this + // would be 0.5. + optional double transaction_upload_fraction = 6; + + // Name of the store sales custom variable key. A predefined key that + // can be applied to the transaction and then later used for custom + // segmentation in reporting. + // Accessible only to customers on the allow-list. + optional string custom_key = 7; + + // Metadata for a third party Store Sales upload. + StoreSalesThirdPartyMetadata third_party_metadata = 3; +} + +// Metadata for a third party Store Sales. +// This product is only for customers on the allow-list. Please contact your +// Google business development representative for details on the upload +// configuration. +message StoreSalesThirdPartyMetadata { + // Time the advertiser uploaded the data to the partner. Required. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string advertiser_upload_date_time = 7; + + // The fraction of transactions that are valid. Invalid transactions may + // include invalid formats or values. + // Required. + // The fraction needs to be between 0 and 1 (excluding 0). + optional double valid_transaction_fraction = 8; + + // The fraction of valid transactions that are matched to a third party + // assigned user ID on the partner side. + // Required. + // The fraction needs to be between 0 and 1 (excluding 0). + optional double partner_match_fraction = 9; + + // The fraction of valid transactions that are uploaded by the partner to + // Google. + // Required. + // The fraction needs to be between 0 and 1 (excluding 0). + optional double partner_upload_fraction = 10; + + // Version of partner IDs to be used for uploads. Required. + optional string bridge_map_version_id = 11; + + // ID of the third party partner updating the transaction feed. + optional int64 partner_id = 12; +} diff --git a/google/ads/googleads/v8/common/policy.proto b/google/ads/googleads/v8/common/policy.proto new file mode 100644 index 000000000..3975c4536 --- /dev/null +++ b/google/ads/googleads/v8/common/policy.proto @@ -0,0 +1,220 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/policy_topic_entry_type.proto"; +import "google/ads/googleads/v8/enums/policy_topic_evidence_destination_mismatch_url_type.proto"; +import "google/ads/googleads/v8/enums/policy_topic_evidence_destination_not_working_device.proto"; +import "google/ads/googleads/v8/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "PolicyProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing policy information. + +// Key of the violation. The key is used for referring to a violation +// when filing an exemption request. +message PolicyViolationKey { + // Unique ID of the violated policy. + optional string policy_name = 3; + + // The text that violates the policy if specified. + // Otherwise, refers to the policy in general + // (e.g., when requesting to be exempt from the whole policy). + // If not specified for criterion exemptions, the whole policy is implied. + // Must be specified for ad exemptions. + optional string violating_text = 4; +} + +// Parameter for controlling how policy exemption is done. +message PolicyValidationParameter { + // The list of policy topics that should not cause a PolicyFindingError to + // be reported. This field is currently only compatible with Enhanced Text Ad. + // It corresponds to the PolicyTopicEntry.topic field. + // + // Resources violating these policies will be saved, but will not be eligible + // to serve. They may begin serving at a later time due to a change in + // policies, re-review of the resource, or a change in advertiser + // certificates. + repeated string ignorable_policy_topics = 3; + + // The list of policy violation keys that should not cause a + // PolicyViolationError to be reported. Not all policy violations are + // exemptable, please refer to the is_exemptible field in the returned + // PolicyViolationError. + // + // Resources violating these polices will be saved, but will not be eligible + // to serve. They may begin serving at a later time due to a change in + // policies, re-review of the resource, or a change in advertiser + // certificates. + repeated PolicyViolationKey exempt_policy_violation_keys = 2; +} + +// Policy finding attached to a resource (e.g. alcohol policy associated with +// a site that sells alcohol). +// +// Each PolicyTopicEntry has a topic that indicates the specific ads policy +// the entry is about and a type to indicate the effect that the entry will have +// on serving. It may optionally have one or more evidences that indicate the +// reason for the finding. It may also optionally have one or more constraints +// that provide details about how serving may be restricted. +message PolicyTopicEntry { + // Policy topic this finding refers to. For example, "ALCOHOL", + // "TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible + // policy topics is not fixed for a particular API version and may change + // at any time. + optional string topic = 5; + + // Describes the negative or positive effect this policy will have on serving. + google.ads.googleads.v8.enums.PolicyTopicEntryTypeEnum.PolicyTopicEntryType type = 2; + + // Additional information that explains policy finding + // (e.g. the brand name for a trademark finding). + repeated PolicyTopicEvidence evidences = 3; + + // Indicates how serving of this resource may be affected (e.g. not serving + // in a country). + repeated PolicyTopicConstraint constraints = 4; +} + +// Additional information that explains a policy finding. +message PolicyTopicEvidence { + // A list of fragments of text that violated a policy. + message TextList { + // The fragments of text from the resource that caused the policy finding. + repeated string texts = 2; + } + + // A list of websites that caused a policy finding. Used for + // ONE_WEBSITE_PER_AD_GROUP policy topic, for example. In case there are more + // than five websites, only the top five (those that appear in resources the + // most) will be listed here. + message WebsiteList { + // Websites that caused the policy finding. + repeated string websites = 2; + } + + // A list of strings found in a destination page that caused a policy + // finding. + message DestinationTextList { + // List of text found in the resource's destination page. + repeated string destination_texts = 2; + } + + // Evidence of mismatches between the URLs of a resource. + message DestinationMismatch { + // The set of URLs that did not match each other. + repeated google.ads.googleads.v8.enums.PolicyTopicEvidenceDestinationMismatchUrlTypeEnum.PolicyTopicEvidenceDestinationMismatchUrlType url_types = 1; + } + + // Evidence details when the destination is returning an HTTP error + // code or isn't functional in all locations for commonly used devices. + message DestinationNotWorking { + // The full URL that didn't work. + optional string expanded_url = 7; + + // The type of device that failed to load the URL. + google.ads.googleads.v8.enums.PolicyTopicEvidenceDestinationNotWorkingDeviceEnum.PolicyTopicEvidenceDestinationNotWorkingDevice device = 4; + + // The time the URL was last checked. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string last_checked_date_time = 8; + + // Indicates the reason of the DESTINATION_NOT_WORKING policy finding. + oneof reason { + // The type of DNS error. + google.ads.googleads.v8.enums.PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum.PolicyTopicEvidenceDestinationNotWorkingDnsErrorType dns_error_type = 1; + + // The HTTP error code. + int64 http_error_code = 6; + } + } + + // Specific evidence information depending on the evidence type. + oneof value { + // List of websites linked with this resource. + WebsiteList website_list = 3; + + // List of evidence found in the text of a resource. + TextList text_list = 4; + + // The language the resource was detected to be written in. + // This is an IETF language tag such as "en-US". + string language_code = 9; + + // The text in the destination of the resource that is causing a policy + // finding. + DestinationTextList destination_text_list = 6; + + // Mismatch between the destinations of a resource's URLs. + DestinationMismatch destination_mismatch = 7; + + // Details when the destination is returning an HTTP error code or isn't + // functional in all locations for commonly used devices. + DestinationNotWorking destination_not_working = 8; + } +} + +// Describes the effect on serving that a policy topic entry will have. +message PolicyTopicConstraint { + // A list of countries where a resource's serving is constrained. + message CountryConstraintList { + // Total number of countries targeted by the resource. + optional int32 total_targeted_countries = 3; + + // Countries in which serving is restricted. + repeated CountryConstraint countries = 2; + } + + // Indicates that a policy topic was constrained due to disapproval of the + // website for reseller purposes. + message ResellerConstraint { + + } + + // Indicates that a resource's ability to serve in a particular country is + // constrained. + message CountryConstraint { + // Geo target constant resource name of the country in which serving is + // constrained. + optional string country_criterion = 2; + } + + // Specific information about the constraint. + oneof value { + // Countries where the resource cannot serve. + CountryConstraintList country_constraint_list = 1; + + // Reseller constraint. + ResellerConstraint reseller_constraint = 2; + + // Countries where a certificate is required for serving. + CountryConstraintList certificate_missing_in_country_list = 3; + + // Countries where the resource's domain is not covered by the + // certificates associated with it. + CountryConstraintList certificate_domain_mismatch_in_country_list = 4; + } +} diff --git a/google/ads/googleads/v8/common/real_time_bidding_setting.proto b/google/ads/googleads/v8/common/real_time_bidding_setting.proto new file mode 100644 index 000000000..54bc10bab --- /dev/null +++ b/google/ads/googleads/v8/common/real_time_bidding_setting.proto @@ -0,0 +1,37 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "RealTimeBiddingSettingProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing RealTimeBiddingSetting + +// Settings for Real-Time Bidding, a feature only available for campaigns +// targeting the Ad Exchange network. +message RealTimeBiddingSetting { + // Whether the campaign is opted in to real-time bidding. + optional bool opt_in = 2; +} diff --git a/google/ads/googleads/v8/common/segments.proto b/google/ads/googleads/v8/common/segments.proto new file mode 100644 index 000000000..b29f43985 --- /dev/null +++ b/google/ads/googleads/v8/common/segments.proto @@ -0,0 +1,369 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/ads/googleads/v8/enums/ad_destination_type.proto"; +import "google/ads/googleads/v8/enums/ad_network_type.proto"; +import "google/ads/googleads/v8/enums/budget_campaign_association_status.proto"; +import "google/ads/googleads/v8/enums/click_type.proto"; +import "google/ads/googleads/v8/enums/conversion_action_category.proto"; +import "google/ads/googleads/v8/enums/conversion_attribution_event_type.proto"; +import "google/ads/googleads/v8/enums/conversion_lag_bucket.proto"; +import "google/ads/googleads/v8/enums/conversion_or_adjustment_lag_bucket.proto"; +import "google/ads/googleads/v8/enums/conversion_value_rule_primary_dimension.proto"; +import "google/ads/googleads/v8/enums/day_of_week.proto"; +import "google/ads/googleads/v8/enums/device.proto"; +import "google/ads/googleads/v8/enums/external_conversion_source.proto"; +import "google/ads/googleads/v8/enums/hotel_date_selection_type.proto"; +import "google/ads/googleads/v8/enums/hotel_price_bucket.proto"; +import "google/ads/googleads/v8/enums/hotel_rate_type.proto"; +import "google/ads/googleads/v8/enums/month_of_year.proto"; +import "google/ads/googleads/v8/enums/placeholder_type.proto"; +import "google/ads/googleads/v8/enums/product_channel.proto"; +import "google/ads/googleads/v8/enums/product_channel_exclusivity.proto"; +import "google/ads/googleads/v8/enums/product_condition.proto"; +import "google/ads/googleads/v8/enums/recommendation_type.proto"; +import "google/ads/googleads/v8/enums/search_engine_results_page_type.proto"; +import "google/ads/googleads/v8/enums/search_term_match_type.proto"; +import "google/ads/googleads/v8/enums/slot.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "SegmentsProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing segment only fields. + +// Segment only fields. +message Segments { + // Ad Destination type. + google.ads.googleads.v8.enums.AdDestinationTypeEnum.AdDestinationType ad_destination_type = 136; + + // Ad network type. + google.ads.googleads.v8.enums.AdNetworkTypeEnum.AdNetworkType ad_network_type = 3; + + // Budget campaign association status. + BudgetCampaignAssociationStatus budget_campaign_association_status = 134; + + // Click type. + google.ads.googleads.v8.enums.ClickTypeEnum.ClickType click_type = 26; + + // Resource name of the conversion action. + optional string conversion_action = 113; + + // Conversion action category. + google.ads.googleads.v8.enums.ConversionActionCategoryEnum.ConversionActionCategory conversion_action_category = 53; + + // Conversion action name. + optional string conversion_action_name = 114; + + // This segments your conversion columns by the original conversion and + // conversion value vs. the delta if conversions were adjusted. False row has + // the data as originally stated; While true row has the delta between data + // now and the data as originally stated. Summing the two together results + // post-adjustment data. + optional bool conversion_adjustment = 115; + + // Conversion attribution event type. + google.ads.googleads.v8.enums.ConversionAttributionEventTypeEnum.ConversionAttributionEventType conversion_attribution_event_type = 2; + + // An enum value representing the number of days between the impression and + // the conversion. + google.ads.googleads.v8.enums.ConversionLagBucketEnum.ConversionLagBucket conversion_lag_bucket = 50; + + // An enum value representing the number of days between the impression and + // the conversion or between the impression and adjustments to the conversion. + google.ads.googleads.v8.enums.ConversionOrAdjustmentLagBucketEnum.ConversionOrAdjustmentLagBucket conversion_or_adjustment_lag_bucket = 51; + + // Date to which metrics apply. + // yyyy-MM-dd format, e.g., 2018-04-17. + optional string date = 79; + + // Day of the week, e.g., MONDAY. + google.ads.googleads.v8.enums.DayOfWeekEnum.DayOfWeek day_of_week = 5; + + // Device to which metrics apply. + google.ads.googleads.v8.enums.DeviceEnum.Device device = 1; + + // External conversion source. + google.ads.googleads.v8.enums.ExternalConversionSourceEnum.ExternalConversionSource external_conversion_source = 55; + + // Resource name of the geo target constant that represents an airport. + optional string geo_target_airport = 116; + + // Resource name of the geo target constant that represents a canton. + optional string geo_target_canton = 117; + + // Resource name of the geo target constant that represents a city. + optional string geo_target_city = 118; + + // Resource name of the geo target constant that represents a country. + optional string geo_target_country = 119; + + // Resource name of the geo target constant that represents a county. + optional string geo_target_county = 120; + + // Resource name of the geo target constant that represents a district. + optional string geo_target_district = 121; + + // Resource name of the geo target constant that represents a metro. + optional string geo_target_metro = 122; + + // Resource name of the geo target constant that represents the most + // specific location. + optional string geo_target_most_specific_location = 123; + + // Resource name of the geo target constant that represents a postal code. + optional string geo_target_postal_code = 124; + + // Resource name of the geo target constant that represents a province. + optional string geo_target_province = 125; + + // Resource name of the geo target constant that represents a region. + optional string geo_target_region = 126; + + // Resource name of the geo target constant that represents a state. + optional string geo_target_state = 127; + + // Hotel booking window in days. + optional int64 hotel_booking_window_days = 135; + + // Hotel center ID. + optional int64 hotel_center_id = 80; + + // Hotel check-in date. Formatted as yyyy-MM-dd. + optional string hotel_check_in_date = 81; + + // Hotel check-in day of week. + google.ads.googleads.v8.enums.DayOfWeekEnum.DayOfWeek hotel_check_in_day_of_week = 9; + + // Hotel city. + optional string hotel_city = 82; + + // Hotel class. + optional int32 hotel_class = 83; + + // Hotel country. + optional string hotel_country = 84; + + // Hotel date selection type. + google.ads.googleads.v8.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType hotel_date_selection_type = 13; + + // Hotel length of stay. + optional int32 hotel_length_of_stay = 85; + + // Hotel rate rule ID. + optional string hotel_rate_rule_id = 86; + + // Hotel rate type. + google.ads.googleads.v8.enums.HotelRateTypeEnum.HotelRateType hotel_rate_type = 74; + + // Hotel price bucket. + google.ads.googleads.v8.enums.HotelPriceBucketEnum.HotelPriceBucket hotel_price_bucket = 78; + + // Hotel state. + optional string hotel_state = 87; + + // Hour of day as a number between 0 and 23, inclusive. + optional int32 hour = 88; + + // Only used with feed item metrics. + // Indicates whether the interaction metrics occurred on the feed item itself + // or a different extension or ad unit. + optional bool interaction_on_this_extension = 89; + + // Keyword criterion. + Keyword keyword = 61; + + // Month as represented by the date of the first day of a month. Formatted as + // yyyy-MM-dd. + optional string month = 90; + + // Month of the year, e.g., January. + google.ads.googleads.v8.enums.MonthOfYearEnum.MonthOfYear month_of_year = 18; + + // Partner hotel ID. + optional string partner_hotel_id = 91; + + // Placeholder type. This is only used with feed item metrics. + google.ads.googleads.v8.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 20; + + // Aggregator ID of the product. + optional int64 product_aggregator_id = 132; + + // Bidding category (level 1) of the product. + optional string product_bidding_category_level1 = 92; + + // Bidding category (level 2) of the product. + optional string product_bidding_category_level2 = 93; + + // Bidding category (level 3) of the product. + optional string product_bidding_category_level3 = 94; + + // Bidding category (level 4) of the product. + optional string product_bidding_category_level4 = 95; + + // Bidding category (level 5) of the product. + optional string product_bidding_category_level5 = 96; + + // Brand of the product. + optional string product_brand = 97; + + // Channel of the product. + google.ads.googleads.v8.enums.ProductChannelEnum.ProductChannel product_channel = 30; + + // Channel exclusivity of the product. + google.ads.googleads.v8.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity product_channel_exclusivity = 31; + + // Condition of the product. + google.ads.googleads.v8.enums.ProductConditionEnum.ProductCondition product_condition = 32; + + // Resource name of the geo target constant for the country of sale of the + // product. + optional string product_country = 98; + + // Custom attribute 0 of the product. + optional string product_custom_attribute0 = 99; + + // Custom attribute 1 of the product. + optional string product_custom_attribute1 = 100; + + // Custom attribute 2 of the product. + optional string product_custom_attribute2 = 101; + + // Custom attribute 3 of the product. + optional string product_custom_attribute3 = 102; + + // Custom attribute 4 of the product. + optional string product_custom_attribute4 = 103; + + // Item ID of the product. + optional string product_item_id = 104; + + // Resource name of the language constant for the language of the product. + optional string product_language = 105; + + // Merchant ID of the product. + optional int64 product_merchant_id = 133; + + // Store ID of the product. + optional string product_store_id = 106; + + // Title of the product. + optional string product_title = 107; + + // Type (level 1) of the product. + optional string product_type_l1 = 108; + + // Type (level 2) of the product. + optional string product_type_l2 = 109; + + // Type (level 3) of the product. + optional string product_type_l3 = 110; + + // Type (level 4) of the product. + optional string product_type_l4 = 111; + + // Type (level 5) of the product. + optional string product_type_l5 = 112; + + // Quarter as represented by the date of the first day of a quarter. + // Uses the calendar year for quarters, e.g., the second quarter of 2018 + // starts on 2018-04-01. Formatted as yyyy-MM-dd. + optional string quarter = 128; + + // Recommendation type. + google.ads.googleads.v8.enums.RecommendationTypeEnum.RecommendationType recommendation_type = 140; + + // Type of the search engine results page. + google.ads.googleads.v8.enums.SearchEngineResultsPageTypeEnum.SearchEngineResultsPageType search_engine_results_page_type = 70; + + // Match type of the keyword that triggered the ad, including variants. + google.ads.googleads.v8.enums.SearchTermMatchTypeEnum.SearchTermMatchType search_term_match_type = 22; + + // Position of the ad. + google.ads.googleads.v8.enums.SlotEnum.Slot slot = 23; + + // Primary dimension of applied conversion value rules. + // NO_RULE_APPLIED shows the total recorded value of conversions that + // do not have a value rule applied. + // ORIGINAL shows the original value of conversions to which a value rule + // has been applied. + // GEO_LOCATION, DEVICE, AUDIENCE show the net adjustment after value + // rules were applied. + google.ads.googleads.v8.enums.ConversionValueRulePrimaryDimensionEnum.ConversionValueRulePrimaryDimension conversion_value_rule_primary_dimension = 138; + + // Resource name of the ad group criterion that represents webpage criterion. + optional string webpage = 129; + + // Week as defined as Monday through Sunday, and represented by the date of + // Monday. Formatted as yyyy-MM-dd. + optional string week = 130; + + // Year, formatted as yyyy. + optional int32 year = 131; + + // iOS Store Kit Ad Network conversion value. + // Null value means this segment is not applicable, e.g. non-iOS campaign. + optional int64 sk_ad_network_conversion_value = 137; + + // Only used with CustomerAsset, CampaignAsset and AdGroupAsset metrics. + // Indicates whether the interaction metrics occurred on the asset itself + // or a different asset or ad unit. + // Interactions (e.g. clicks) are counted across all the parts of the served + // ad (e.g. Ad itself and other components like Sitelinks) when they are + // served together. When interaction_on_this_asset is true, it means the + // interactions are on this specific asset and when interaction_on_this_asset + // is false, it means the interactions is not on this specific asset but on + // other parts of the served ad this asset is served with. + optional AssetInteractionTarget asset_interaction_target = 139; +} + +// A Keyword criterion segment. +message Keyword { + // The AdGroupCriterion resource name. + optional string ad_group_criterion = 3; + + // Keyword info. + KeywordInfo info = 2; +} + +// A BudgetCampaignAssociationStatus segment. +message BudgetCampaignAssociationStatus { + // The campaign resource name. + optional string campaign = 1; + + // Budget campaign association status. + google.ads.googleads.v8.enums.BudgetCampaignAssociationStatusEnum.BudgetCampaignAssociationStatus status = 2; +} + +// An AssetInteractionTarget segment. +message AssetInteractionTarget { + // The asset resource name. + string asset = 1; + + // Only used with CustomerAsset, CampaignAsset and AdGroupAsset metrics. + // Indicates whether the interaction metrics occurred on the asset itself or a + // different asset or ad unit. + bool interaction_on_this_asset = 2; +} diff --git a/google/ads/googleads/v8/common/simulation.proto b/google/ads/googleads/v8/common/simulation.proto new file mode 100644 index 000000000..90b3c6974 --- /dev/null +++ b/google/ads/googleads/v8/common/simulation.proto @@ -0,0 +1,358 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "SimulationProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing simulation points. + +// A container for simulation points for simulations of type BID_MODIFIER. +message BidModifierSimulationPointList { + // Projected metrics for a series of bid modifier amounts. + repeated BidModifierSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type CPC_BID. +message CpcBidSimulationPointList { + // Projected metrics for a series of CPC bid amounts. + repeated CpcBidSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type CPV_BID. +message CpvBidSimulationPointList { + // Projected metrics for a series of CPV bid amounts. + repeated CpvBidSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type TARGET_CPA. +message TargetCpaSimulationPointList { + // Projected metrics for a series of target CPA amounts. + repeated TargetCpaSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type TARGET_ROAS. +message TargetRoasSimulationPointList { + // Projected metrics for a series of target ROAS amounts. + repeated TargetRoasSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type PERCENT_CPC_BID. +message PercentCpcBidSimulationPointList { + // Projected metrics for a series of percent CPC bid amounts. + repeated PercentCpcBidSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type BUDGET. +message BudgetSimulationPointList { + // Projected metrics for a series of budget amounts. + repeated BudgetSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type +// TARGET_IMPRESSION_SHARE. +message TargetImpressionShareSimulationPointList { + // Projected metrics for a specific target impression share value. + repeated TargetImpressionShareSimulationPoint points = 1; +} + +// Projected metrics for a specific bid modifier amount. +message BidModifierSimulationPoint { + // The simulated bid modifier upon which projected metrics are based. + optional double bid_modifier = 15; + + // Projected number of biddable conversions. + // Only search advertising channel type supports this field. + optional double biddable_conversions = 16; + + // Projected total value of biddable conversions. + // Only search advertising channel type supports this field. + optional double biddable_conversions_value = 17; + + // Projected number of clicks. + optional int64 clicks = 18; + + // Projected cost in micros. + optional int64 cost_micros = 19; + + // Projected number of impressions. + optional int64 impressions = 20; + + // Projected number of top slot impressions. + // Only search advertising channel type supports this field. + optional int64 top_slot_impressions = 21; + + // Projected number of biddable conversions for the parent resource. + // Only search advertising channel type supports this field. + optional double parent_biddable_conversions = 22; + + // Projected total value of biddable conversions for the parent resource. + // Only search advertising channel type supports this field. + optional double parent_biddable_conversions_value = 23; + + // Projected number of clicks for the parent resource. + optional int64 parent_clicks = 24; + + // Projected cost in micros for the parent resource. + optional int64 parent_cost_micros = 25; + + // Projected number of impressions for the parent resource. + optional int64 parent_impressions = 26; + + // Projected number of top slot impressions for the parent resource. + // Only search advertising channel type supports this field. + optional int64 parent_top_slot_impressions = 27; + + // Projected minimum daily budget that must be available to the parent + // resource to realize this simulation. + optional int64 parent_required_budget_micros = 28; +} + +// Projected metrics for a specific CPC bid amount. +message CpcBidSimulationPoint { + // Projected required daily budget that the advertiser must set in order to + // receive the estimated traffic, in micros of advertiser currency. + int64 required_budget_amount_micros = 17; + + // Projected number of biddable conversions. + optional double biddable_conversions = 9; + + // Projected total value of biddable conversions. + optional double biddable_conversions_value = 10; + + // Projected number of clicks. + optional int64 clicks = 11; + + // Projected cost in micros. + optional int64 cost_micros = 12; + + // Projected number of impressions. + optional int64 impressions = 13; + + // Projected number of top slot impressions. + // Only search advertising channel type supports this field. + optional int64 top_slot_impressions = 14; + + // When SimulationModificationMethod = UNIFORM or DEFAULT, + // cpc_bid_micros is set. + // When SimulationModificationMethod = SCALING, + // cpc_bid_scaling_modifier is set. + oneof cpc_simulation_key_value { + // The simulated CPC bid upon which projected metrics are based. + int64 cpc_bid_micros = 15; + + // The simulated scaling modifier upon which projected metrics are based. + // All CPC bids relevant to the simulated entity are scaled by this + // modifier. + double cpc_bid_scaling_modifier = 16; + } +} + +// Projected metrics for a specific CPV bid amount. +message CpvBidSimulationPoint { + // The simulated CPV bid upon which projected metrics are based. + optional int64 cpv_bid_micros = 5; + + // Projected cost in micros. + optional int64 cost_micros = 6; + + // Projected number of impressions. + optional int64 impressions = 7; + + // Projected number of views. + optional int64 views = 8; +} + +// Projected metrics for a specific target CPA amount. +message TargetCpaSimulationPoint { + // Projected required daily budget that the advertiser must set in order to + // receive the estimated traffic, in micros of advertiser currency. + int64 required_budget_amount_micros = 19; + + // Projected number of biddable conversions. + optional double biddable_conversions = 9; + + // Projected total value of biddable conversions. + optional double biddable_conversions_value = 10; + + // Projected number of app installs. + double app_installs = 15; + + // Projected number of in-app actions. + double in_app_actions = 16; + + // Projected number of clicks. + optional int64 clicks = 11; + + // Projected cost in micros. + optional int64 cost_micros = 12; + + // Projected number of impressions. + optional int64 impressions = 13; + + // Projected number of top slot impressions. + // Only search advertising channel type supports this field. + optional int64 top_slot_impressions = 14; + + // When SimulationModificationMethod = UNIFORM or DEFAULT, + // target_cpa_micros is set. + // When SimulationModificationMethod = SCALING, + // target_cpa_scaling_modifier is set. + oneof target_cpa_simulation_key_value { + // The simulated target CPA upon which projected metrics are based. + int64 target_cpa_micros = 17; + + // The simulated scaling modifier upon which projected metrics are based. + // All CPA targets relevant to the simulated entity are scaled by this + // modifier. + double target_cpa_scaling_modifier = 18; + } +} + +// Projected metrics for a specific target ROAS amount. +message TargetRoasSimulationPoint { + // The simulated target ROAS upon which projected metrics are based. + optional double target_roas = 8; + + // Projected required daily budget that the advertiser must set in order to + // receive the estimated traffic, in micros of advertiser currency. + int64 required_budget_amount_micros = 15; + + // Projected number of biddable conversions. + optional double biddable_conversions = 9; + + // Projected total value of biddable conversions. + optional double biddable_conversions_value = 10; + + // Projected number of clicks. + optional int64 clicks = 11; + + // Projected cost in micros. + optional int64 cost_micros = 12; + + // Projected number of impressions. + optional int64 impressions = 13; + + // Projected number of top slot impressions. + // Only Search advertising channel type supports this field. + optional int64 top_slot_impressions = 14; +} + +// Projected metrics for a specific percent CPC amount. Only Hotel advertising +// channel type supports this field. +message PercentCpcBidSimulationPoint { + // The simulated percent CPC upon which projected metrics are based. Percent + // CPC expressed as fraction of the advertised price for some good or service. + // The value stored here is 1,000,000 * [fraction]. + optional int64 percent_cpc_bid_micros = 1; + + // Projected number of biddable conversions. + optional double biddable_conversions = 2; + + // Projected total value of biddable conversions in local currency. + optional double biddable_conversions_value = 3; + + // Projected number of clicks. + optional int64 clicks = 4; + + // Projected cost in micros. + optional int64 cost_micros = 5; + + // Projected number of impressions. + optional int64 impressions = 6; + + // Projected number of top slot impressions. + optional int64 top_slot_impressions = 7; +} + +// Projected metrics for a specific budget amount. +message BudgetSimulationPoint { + // The simulated budget upon which projected metrics are based. + int64 budget_amount_micros = 1; + + // Projected required daily cpc bid ceiling that the advertiser must set to + // realize this simulation, in micros of the advertiser currency. + // Only campaigns with the Target Spend bidding strategy support this field. + int64 required_cpc_bid_ceiling_micros = 2; + + // Projected number of biddable conversions. + double biddable_conversions = 3; + + // Projected total value of biddable conversions. + double biddable_conversions_value = 4; + + // Projected number of clicks. + int64 clicks = 5; + + // Projected cost in micros. + int64 cost_micros = 6; + + // Projected number of impressions. + int64 impressions = 7; + + // Projected number of top slot impressions. + // Only search advertising channel type supports this field. + int64 top_slot_impressions = 8; +} + +// Projected metrics for a specific target impression share value. +message TargetImpressionShareSimulationPoint { + // The simulated target impression share value (in micros) upon which + // projected metrics are based. + // E.g. 10% impression share, which is equal to 0.1, is stored as 100_000. + // This value is validated and will not exceed 1M (100%). + int64 target_impression_share_micros = 1; + + // Projected required daily cpc bid ceiling that the advertiser must set to + // realize this simulation, in micros of the advertiser currency. + int64 required_cpc_bid_ceiling_micros = 2; + + // Projected required daily budget that the advertiser must set in order to + // receive the estimated traffic, in micros of advertiser currency. + int64 required_budget_amount_micros = 3; + + // Projected number of biddable conversions. + double biddable_conversions = 4; + + // Projected total value of biddable conversions. + double biddable_conversions_value = 5; + + // Projected number of clicks. + int64 clicks = 6; + + // Projected cost in micros. + int64 cost_micros = 7; + + // Projected number of impressions. + int64 impressions = 8; + + // Projected number of top slot impressions. + // Only search advertising channel type supports this field. + int64 top_slot_impressions = 9; + + // Projected number of absolute top impressions. + // Only search advertising channel type supports this field. + int64 absolute_top_impressions = 10; +} diff --git a/google/ads/googleads/v8/common/tag_snippet.proto b/google/ads/googleads/v8/common/tag_snippet.proto new file mode 100644 index 000000000..544567754 --- /dev/null +++ b/google/ads/googleads/v8/common/tag_snippet.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/tracking_code_page_format.proto"; +import "google/ads/googleads/v8/enums/tracking_code_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "TagSnippetProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing TagSnippet + +// The site tag and event snippet pair for a TrackingCodeType. +message TagSnippet { + // The type of the generated tag snippets for tracking conversions. + google.ads.googleads.v8.enums.TrackingCodeTypeEnum.TrackingCodeType type = 1; + + // The format of the web page where the tracking tag and snippet will be + // installed, e.g. HTML. + google.ads.googleads.v8.enums.TrackingCodePageFormatEnum.TrackingCodePageFormat page_format = 2; + + // The site tag that adds visitors to your basic remarketing lists and sets + // new cookies on your domain. + optional string global_site_tag = 5; + + // The event snippet that works with the site tag to track actions that + // should be counted as conversions. + optional string event_snippet = 6; +} diff --git a/google/ads/googleads/v8/common/targeting_setting.proto b/google/ads/googleads/v8/common/targeting_setting.proto new file mode 100644 index 000000000..a0b2097f3 --- /dev/null +++ b/google/ads/googleads/v8/common/targeting_setting.proto @@ -0,0 +1,85 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/targeting_dimension.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "TargetingSettingProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing TargetingSetting + +// Settings for the targeting-related features, at the campaign and ad group +// levels. For more details about the targeting setting, visit +// https://support.google.com/google-ads/answer/7365594 +message TargetingSetting { + // The per-targeting-dimension setting to restrict the reach of your campaign + // or ad group. + repeated TargetRestriction target_restrictions = 1; + + // The list of operations changing the target restrictions. + // + // Adding a target restriction with a targeting dimension that already exists + // causes the existing target restriction to be replaced with the new value. + repeated TargetRestrictionOperation target_restriction_operations = 2; +} + +// The list of per-targeting-dimension targeting settings. +message TargetRestriction { + // The targeting dimension that these settings apply to. + google.ads.googleads.v8.enums.TargetingDimensionEnum.TargetingDimension targeting_dimension = 1; + + // Indicates whether to restrict your ads to show only for the criteria you + // have selected for this targeting_dimension, or to target all values for + // this targeting_dimension and show ads based on your targeting in other + // TargetingDimensions. A value of `true` means that these criteria will only + // apply bid modifiers, and not affect targeting. A value of `false` means + // that these criteria will restrict targeting as well as applying bid + // modifiers. + optional bool bid_only = 3; +} + +// Operation to be performed on a target restriction list in a mutate. +message TargetRestrictionOperation { + // The operator. + enum Operator { + // Unspecified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Add the restriction to the existing restrictions. + ADD = 2; + + // Remove the restriction from the existing restrictions. + REMOVE = 3; + } + + // Type of list operation to perform. + Operator operator = 1; + + // The target restriction being added to or removed from the list. + TargetRestriction value = 2; +} diff --git a/google/ads/googleads/v8/common/text_label.proto b/google/ads/googleads/v8/common/text_label.proto new file mode 100644 index 000000000..bcfeef81a --- /dev/null +++ b/google/ads/googleads/v8/common/text_label.proto @@ -0,0 +1,40 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "TextLabelProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// A type of label displaying text on a colored background. +message TextLabel { + // Background color of the label in RGB format. This string must match the + // regular expression '^\#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$'. + // Note: The background color may not be visible for manager accounts. + optional string background_color = 3; + + // A short description of the label. The length must be no more than 200 + // characters. + optional string description = 4; +} diff --git a/google/ads/googleads/v8/common/url_collection.proto b/google/ads/googleads/v8/common/url_collection.proto new file mode 100644 index 000000000..fe2b2b94b --- /dev/null +++ b/google/ads/googleads/v8/common/url_collection.proto @@ -0,0 +1,45 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "UrlCollectionProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file UrlCollection type. + +// Collection of urls that is tagged with a unique identifier. +message UrlCollection { + // Unique identifier for this UrlCollection instance. + optional string url_collection_id = 5; + + // A list of possible final URLs. + repeated string final_urls = 6; + + // A list of possible final mobile URLs. + repeated string final_mobile_urls = 7; + + // URL template for constructing a tracking URL. + optional string tracking_url_template = 8; +} diff --git a/google/ads/googleads/v8/common/user_lists.proto b/google/ads/googleads/v8/common/user_lists.proto new file mode 100644 index 000000000..b2097e55e --- /dev/null +++ b/google/ads/googleads/v8/common/user_lists.proto @@ -0,0 +1,291 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/ads/googleads/v8/enums/customer_match_upload_key_type.proto"; +import "google/ads/googleads/v8/enums/user_list_combined_rule_operator.proto"; +import "google/ads/googleads/v8/enums/user_list_crm_data_source_type.proto"; +import "google/ads/googleads/v8/enums/user_list_date_rule_item_operator.proto"; +import "google/ads/googleads/v8/enums/user_list_logical_rule_operator.proto"; +import "google/ads/googleads/v8/enums/user_list_number_rule_item_operator.proto"; +import "google/ads/googleads/v8/enums/user_list_prepopulation_status.proto"; +import "google/ads/googleads/v8/enums/user_list_rule_type.proto"; +import "google/ads/googleads/v8/enums/user_list_string_rule_item_operator.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "UserListsProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing user list types. + +// SimilarUserList is a list of users which are similar to users from another +// UserList. These lists are read-only and automatically created by Google. +message SimilarUserListInfo { + // Seed UserList from which this list is derived. + optional string seed_user_list = 2; +} + +// UserList of CRM users provided by the advertiser. +message CrmBasedUserListInfo { + // A string that uniquely identifies a mobile application from which the data + // was collected. + // For iOS, the ID string is the 9 digit string that appears at the end of an + // App Store URL (e.g., "476943146" for "Flood-It! 2" whose App Store link is + // http://itunes.apple.com/us/app/flood-it!-2/id476943146). + // For Android, the ID string is the application's package name + // (e.g., "com.labpixies.colordrips" for "Color Drips" given Google Play link + // https://play.google.com/store/apps/details?id=com.labpixies.colordrips). + // Required when creating CrmBasedUserList for uploading mobile advertising + // IDs. + optional string app_id = 4; + + // Matching key type of the list. + // Mixed data types are not allowed on the same list. + // This field is required for an ADD operation. + google.ads.googleads.v8.enums.CustomerMatchUploadKeyTypeEnum.CustomerMatchUploadKeyType upload_key_type = 2; + + // Data source of the list. Default value is FIRST_PARTY. + // Only customers on the allow-list can create third-party sourced CRM lists. + google.ads.googleads.v8.enums.UserListCrmDataSourceTypeEnum.UserListCrmDataSourceType data_source_type = 3; +} + +// A client defined rule based on custom parameters sent by web sites or +// uploaded by the advertiser. +message UserListRuleInfo { + // Rule type is used to determine how to group rule items. + // + // The default is OR of ANDs (disjunctive normal form). + // That is, rule items will be ANDed together within rule item groups and the + // groups themselves will be ORed together. + // + // Currently AND of ORs (conjunctive normal form) is only supported for + // ExpressionRuleUserList. + google.ads.googleads.v8.enums.UserListRuleTypeEnum.UserListRuleType rule_type = 1; + + // List of rule item groups that defines this rule. + // Rule item groups are grouped together based on rule_type. + repeated UserListRuleItemGroupInfo rule_item_groups = 2; +} + +// A group of rule items. +message UserListRuleItemGroupInfo { + // Rule items that will be grouped together based on rule_type. + repeated UserListRuleItemInfo rule_items = 1; +} + +// An atomic rule item. +message UserListRuleItemInfo { + // Rule variable name. It should match the corresponding key name fired + // by the pixel. + // A name must begin with US-ascii letters or underscore or UTF8 code that is + // greater than 127 and consist of US-ascii letters or digits or underscore or + // UTF8 code that is greater than 127. + // For websites, there are two built-in variable URL (name = 'url__') and + // referrer URL (name = 'ref_url__'). + // This field must be populated when creating a new rule item. + optional string name = 5; + + // An atomic rule item. + oneof rule_item { + // An atomic rule item composed of a number operation. + UserListNumberRuleItemInfo number_rule_item = 2; + + // An atomic rule item composed of a string operation. + UserListStringRuleItemInfo string_rule_item = 3; + + // An atomic rule item composed of a date operation. + UserListDateRuleItemInfo date_rule_item = 4; + } +} + +// A rule item composed of a date operation. +message UserListDateRuleItemInfo { + // Date comparison operator. + // This field is required and must be populated when creating new date + // rule item. + google.ads.googleads.v8.enums.UserListDateRuleItemOperatorEnum.UserListDateRuleItemOperator operator = 1; + + // String representing date value to be compared with the rule variable. + // Supported date format is YYYY-MM-DD. + // Times are reported in the customer's time zone. + optional string value = 4; + + // The relative date value of the right hand side denoted by number of days + // offset from now. The value field will override this field when both are + // present. + optional int64 offset_in_days = 5; +} + +// A rule item composed of a number operation. +message UserListNumberRuleItemInfo { + // Number comparison operator. + // This field is required and must be populated when creating a new number + // rule item. + google.ads.googleads.v8.enums.UserListNumberRuleItemOperatorEnum.UserListNumberRuleItemOperator operator = 1; + + // Number value to be compared with the variable. + // This field is required and must be populated when creating a new number + // rule item. + optional double value = 3; +} + +// A rule item composed of a string operation. +message UserListStringRuleItemInfo { + // String comparison operator. + // This field is required and must be populated when creating a new string + // rule item. + google.ads.googleads.v8.enums.UserListStringRuleItemOperatorEnum.UserListStringRuleItemOperator operator = 1; + + // The right hand side of the string rule item. For URLs or referrer URLs, + // the value can not contain illegal URL chars such as newlines, quotes, + // tabs, or parentheses. This field is required and must be populated when + // creating a new string rule item. + optional string value = 3; +} + +// User lists defined by combining two rules, left operand and right operand. +// There are two operators: AND where left operand and right operand have to be +// true; AND_NOT where left operand is true but right operand is false. +message CombinedRuleUserListInfo { + // Left operand of the combined rule. + // This field is required and must be populated when creating new combined + // rule based user list. + UserListRuleInfo left_operand = 1; + + // Right operand of the combined rule. + // This field is required and must be populated when creating new combined + // rule based user list. + UserListRuleInfo right_operand = 2; + + // Operator to connect the two operands. + // + // Required for creating a combined rule user list. + google.ads.googleads.v8.enums.UserListCombinedRuleOperatorEnum.UserListCombinedRuleOperator rule_operator = 3; +} + +// Visitors of a page during specific dates. +message DateSpecificRuleUserListInfo { + // Boolean rule that defines visitor of a page. + // + // Required for creating a date specific rule user list. + UserListRuleInfo rule = 1; + + // Start date of users visit. If set to 2000-01-01, then the list includes all + // users before end_date. The date's format should be YYYY-MM-DD. + // + // Required for creating a data specific rule user list. + optional string start_date = 4; + + // Last date of users visit. If set to 2037-12-30, then the list includes all + // users after start_date. The date's format should be YYYY-MM-DD. + // + // Required for creating a data specific rule user list. + optional string end_date = 5; +} + +// Visitors of a page. The page visit is defined by one boolean rule expression. +message ExpressionRuleUserListInfo { + // Boolean rule that defines this user list. The rule consists of a list of + // rule item groups and each rule item group consists of a list of rule items. + // All the rule item groups are ORed or ANDed together for evaluation based on + // rule.rule_type. + // + // Required for creating an expression rule user list. + UserListRuleInfo rule = 1; +} + +// Representation of a userlist that is generated by a rule. +message RuleBasedUserListInfo { + // The status of pre-population. The field is default to NONE if not set which + // means the previous users will not be considered. If set to REQUESTED, past + // site visitors or app users who match the list definition will be included + // in the list (works on the Display Network only). This will only + // add past users from within the last 30 days, depending on the + // list's membership duration and the date when the remarketing tag is added. + // The status will be updated to FINISHED once request is processed, or FAILED + // if the request fails. + google.ads.googleads.v8.enums.UserListPrepopulationStatusEnum.UserListPrepopulationStatus prepopulation_status = 1; + + // Subtypes of rule based user lists. + oneof rule_based_user_list { + // User lists defined by combining two rules. + // There are two operators: AND, where the left and right operands have to + // be true; AND_NOT where left operand is true but right operand is false. + CombinedRuleUserListInfo combined_rule_user_list = 2; + + // Visitors of a page during specific dates. The visiting periods are + // defined as follows: + // Between start_date (inclusive) and end_date (inclusive); + // Before end_date (exclusive) with start_date = 2000-01-01; + // After start_date (exclusive) with end_date = 2037-12-30. + DateSpecificRuleUserListInfo date_specific_rule_user_list = 3; + + // Visitors of a page. The page visit is defined by one boolean rule + // expression. + ExpressionRuleUserListInfo expression_rule_user_list = 4; + } +} + +// Represents a user list that is a custom combination of user lists. +message LogicalUserListInfo { + // Logical list rules that define this user list. The rules are defined as a + // logical operator (ALL/ANY/NONE) and a list of user lists. All the rules are + // ANDed when they are evaluated. + // + // Required for creating a logical user list. + repeated UserListLogicalRuleInfo rules = 1; +} + +// A user list logical rule. A rule has a logical operator (and/or/not) and a +// list of user lists as operands. +message UserListLogicalRuleInfo { + // The logical operator of the rule. + google.ads.googleads.v8.enums.UserListLogicalRuleOperatorEnum.UserListLogicalRuleOperator operator = 1; + + // The list of operands of the rule. + repeated LogicalUserListOperandInfo rule_operands = 2; +} + +// Operand of logical user list that consists of a user list. +message LogicalUserListOperandInfo { + // Resource name of a user list as an operand. + optional string user_list = 2; +} + +// User list targeting as a collection of conversions or remarketing actions. +message BasicUserListInfo { + // Actions associated with this user list. + repeated UserListActionInfo actions = 1; +} + +// Represents an action type used for building remarketing user lists. +message UserListActionInfo { + // Subtypes of user list action. + oneof user_list_action { + // A conversion action that's not generated from remarketing. + string conversion_action = 3; + + // A remarketing action. + string remarketing_action = 4; + } +} diff --git a/google/ads/googleads/v8/common/value.proto b/google/ads/googleads/v8/common/value.proto new file mode 100644 index 000000000..b82dcc6fb --- /dev/null +++ b/google/ads/googleads/v8/common/value.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/common;common"; +option java_multiple_files = true; +option java_outer_classname = "ValueProto"; +option java_package = "com.google.ads.googleads.v8.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V8::Common"; + +// Proto file describing value types. + +// A generic data container. +message Value { + // A value. + oneof value { + // A boolean. + bool boolean_value = 1; + + // An int64. + int64 int64_value = 2; + + // A float. + float float_value = 3; + + // A double. + double double_value = 4; + + // A string. + string string_value = 5; + } +} diff --git a/google/ads/googleads/v4/enums/BUILD.bazel b/google/ads/googleads/v8/enums/BUILD.bazel similarity index 100% rename from google/ads/googleads/v4/enums/BUILD.bazel rename to google/ads/googleads/v8/enums/BUILD.bazel diff --git a/google/ads/googleads/v8/enums/access_invitation_status.proto b/google/ads/googleads/v8/enums/access_invitation_status.proto new file mode 100644 index 000000000..a11fbc605 --- /dev/null +++ b/google/ads/googleads/v8/enums/access_invitation_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccessInvitationStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing AccessInvitationStatus enum. + +// Container for enum for identifying the status of access invitation +message AccessInvitationStatusEnum { + // Possible access invitation status of a user + enum AccessInvitationStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The initial state of an invitation, before being acted upon by anyone. + PENDING = 2; + + // Invitation process was terminated by the email recipient. No new user was + // created. + DECLINED = 3; + + // Invitation URLs expired without being acted upon. No new user can be + // created. Invitations expire 20 days after creation. + EXPIRED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/access_reason.proto b/google/ads/googleads/v8/enums/access_reason.proto new file mode 100644 index 000000000..51933b85d --- /dev/null +++ b/google/ads/googleads/v8/enums/access_reason.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccessReasonProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Indicates the way the resource such as user list is related to a user. +message AccessReasonEnum { + // Enum describing possible access reasons. + enum AccessReason { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The resource is owned by the user. + OWNED = 2; + + // The resource is shared to the user. + SHARED = 3; + + // The resource is licensed to the user. + LICENSED = 4; + + // The user subscribed to the resource. + SUBSCRIBED = 5; + + // The resource is accessible to the user. + AFFILIATED = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/access_role.proto b/google/ads/googleads/v8/enums/access_role.proto new file mode 100644 index 000000000..e1d5ad180 --- /dev/null +++ b/google/ads/googleads/v8/enums/access_role.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccessRoleProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum describing possible access role for user. +message AccessRoleEnum { + // Possible access role of a user. + enum AccessRole { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Owns its account and can control the addition of other users. + ADMIN = 2; + + // Can modify campaigns, but can't affect other users. + STANDARD = 3; + + // Can view campaigns and account changes, but cannot make edits. + READ_ONLY = 4; + + // Role for \"email only\" access. Represents an email recipient rather than + // a true User entity. + EMAIL_ONLY = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/account_budget_proposal_status.proto b/google/ads/googleads/v8/enums/account_budget_proposal_status.proto new file mode 100644 index 000000000..db62296f1 --- /dev/null +++ b/google/ads/googleads/v8/enums/account_budget_proposal_status.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProposalStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing AccountBudgetProposal statuses. + +// Message describing AccountBudgetProposal statuses. +message AccountBudgetProposalStatusEnum { + // The possible statuses of an AccountBudgetProposal. + enum AccountBudgetProposalStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The proposal is pending approval. + PENDING = 2; + + // The proposal has been approved but the corresponding billing setup + // has not. This can occur for proposals that set up the first budget + // when signing up for billing or when performing a change of bill-to + // operation. + APPROVED_HELD = 3; + + // The proposal has been approved. + APPROVED = 4; + + // The proposal has been cancelled by the user. + CANCELLED = 5; + + // The proposal has been rejected by the user, e.g. by rejecting an + // acceptance email. + REJECTED = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/account_budget_proposal_type.proto b/google/ads/googleads/v8/enums/account_budget_proposal_type.proto new file mode 100644 index 000000000..adb7c89b5 --- /dev/null +++ b/google/ads/googleads/v8/enums/account_budget_proposal_type.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProposalTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing AccountBudgetProposal types. + +// Message describing AccountBudgetProposal types. +message AccountBudgetProposalTypeEnum { + // The possible types of an AccountBudgetProposal. + enum AccountBudgetProposalType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Identifies a request to create a new budget. + CREATE = 2; + + // Identifies a request to edit an existing budget. + UPDATE = 3; + + // Identifies a request to end a budget that has already started. + END = 4; + + // Identifies a request to remove a budget that hasn't started yet. + REMOVE = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/account_budget_status.proto b/google/ads/googleads/v8/enums/account_budget_status.proto new file mode 100644 index 000000000..7f05d7e00 --- /dev/null +++ b/google/ads/googleads/v8/enums/account_budget_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing AccountBudget statuses. + +// Message describing AccountBudget statuses. +message AccountBudgetStatusEnum { + // The possible statuses of an AccountBudget. + enum AccountBudgetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The account budget is pending approval. + PENDING = 2; + + // The account budget has been approved. + APPROVED = 3; + + // The account budget has been cancelled by the user. + CANCELLED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/account_link_status.proto b/google/ads/googleads/v8/enums/account_link_status.proto new file mode 100644 index 000000000..8730519a3 --- /dev/null +++ b/google/ads/googleads/v8/enums/account_link_status.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccountLinkStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum describing possible statuses of an account link. +message AccountLinkStatusEnum { + // Describes the possible statuses for a link between a Google Ads customer + // and another account. + enum AccountLinkStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The link is enabled. + ENABLED = 2; + + // The link is removed/disabled. + REMOVED = 3; + + // The link to the other account has been requested. A user on the other + // account may now approve the link by setting the status to ENABLED. + REQUESTED = 4; + + // This link has been requested by a user on the other account. It may be + // approved by a user on this account by setting the status to ENABLED. + PENDING_APPROVAL = 5; + + // The link is rejected by the approver. + REJECTED = 6; + + // The link is revoked by the user who requested the link. + REVOKED = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_customizer_placeholder_field.proto b/google/ads/googleads/v8/enums/ad_customizer_placeholder_field.proto new file mode 100644 index 000000000..0972b0020 --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_customizer_placeholder_field.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdCustomizerPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Ad Customizer placeholder fields. + +// Values for Ad Customizer placeholder fields. +message AdCustomizerPlaceholderFieldEnum { + // Possible values for Ad Customizers placeholder fields. + enum AdCustomizerPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: INT64. Integer value to be inserted. + INTEGER = 2; + + // Data Type: STRING. Price value to be inserted. + PRICE = 3; + + // Data Type: DATE_TIME. Date value to be inserted. + DATE = 4; + + // Data Type: STRING. String value to be inserted. + STRING = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_destination_type.proto b/google/ads/googleads/v8/enums/ad_destination_type.proto new file mode 100644 index 000000000..cd48f8cf0 --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_destination_type.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdDestinationTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing ad destination types. + +// Container for enumeration of Google Ads destination types. +message AdDestinationTypeEnum { + // Enumerates Google Ads destination types + enum AdDestinationType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Ads that don't intend to drive users off from ads to other destinations + NOT_APPLICABLE = 2; + + // Website + WEBSITE = 3; + + // App Deep Link + APP_DEEP_LINK = 4; + + // iOS App Store or Play Store + APP_STORE = 5; + + // Call Dialer + PHONE_CALL = 6; + + // Map App + MAP_DIRECTIONS = 7; + + // Location Dedicated Page + LOCATION_LISTING = 8; + + // Text Message + MESSAGE = 9; + + // Lead Generation Form + LEAD_FORM = 10; + + // YouTube + YOUTUBE = 11; + + // Ad Destination for Conversions with keys unknown + UNMODELED_FOR_CONVERSIONS = 12; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_group_ad_rotation_mode.proto b/google/ads/googleads/v8/enums/ad_group_ad_rotation_mode.proto new file mode 100644 index 000000000..afba3a294 --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_group_ad_rotation_mode.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdRotationModeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing ad group ad rotation mode. + +// Container for enum describing possible ad rotation modes of ads within an +// ad group. +message AdGroupAdRotationModeEnum { + // The possible ad rotation modes of an ad group. + enum AdGroupAdRotationMode { + // The ad rotation mode has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Optimize ad group ads based on clicks or conversions. + OPTIMIZE = 2; + + // Rotate evenly forever. + ROTATE_FOREVER = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_group_ad_status.proto b/google/ads/googleads/v8/enums/ad_group_ad_status.proto new file mode 100644 index 000000000..3d8c5544a --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_group_ad_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing ad group status. + +// Container for enum describing possible statuses of an AdGroupAd. +message AdGroupAdStatusEnum { + // The possible statuses of an AdGroupAd. + enum AdGroupAdStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The ad group ad is enabled. + ENABLED = 2; + + // The ad group ad is paused. + PAUSED = 3; + + // The ad group ad is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_group_criterion_approval_status.proto b/google/ads/googleads/v8/enums/ad_group_criterion_approval_status.proto new file mode 100644 index 000000000..604ada80e --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_group_criterion_approval_status.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionApprovalStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing approval status for the criterion. + +// Container for enum describing possible AdGroupCriterion approval statuses. +message AdGroupCriterionApprovalStatusEnum { + // Enumerates AdGroupCriterion approval statuses. + enum AdGroupCriterionApprovalStatus { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Approved. + APPROVED = 2; + + // Disapproved. + DISAPPROVED = 3; + + // Pending Review. + PENDING_REVIEW = 4; + + // Under review. + UNDER_REVIEW = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_group_criterion_status.proto b/google/ads/googleads/v8/enums/ad_group_criterion_status.proto new file mode 100644 index 000000000..aa96365de --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_group_criterion_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing AdGroupCriterion statuses. + +// Message describing AdGroupCriterion statuses. +message AdGroupCriterionStatusEnum { + // The possible statuses of an AdGroupCriterion. + enum AdGroupCriterionStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The ad group criterion is enabled. + ENABLED = 2; + + // The ad group criterion is paused. + PAUSED = 3; + + // The ad group criterion is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_group_status.proto b/google/ads/googleads/v8/enums/ad_group_status.proto new file mode 100644 index 000000000..02fa0a524 --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_group_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing ad group status. + +// Container for enum describing possible statuses of an ad group. +message AdGroupStatusEnum { + // The possible statuses of an ad group. + enum AdGroupStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The ad group is enabled. + ENABLED = 2; + + // The ad group is paused. + PAUSED = 3; + + // The ad group is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_group_type.proto b/google/ads/googleads/v8/enums/ad_group_type.proto new file mode 100644 index 000000000..f225e356d --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_group_type.proto @@ -0,0 +1,96 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing ad group types. + +// Defines types of an ad group, specific to a particular campaign channel +// type. This type drives validations that restrict which entities can be +// added to the ad group. +message AdGroupTypeEnum { + // Enum listing the possible types of an ad group. + enum AdGroupType { + // The type has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The default ad group type for Search campaigns. + SEARCH_STANDARD = 2; + + // The default ad group type for Display campaigns. + DISPLAY_STANDARD = 3; + + // The ad group type for Shopping campaigns serving standard product ads. + SHOPPING_PRODUCT_ADS = 4; + + // The default ad group type for Hotel campaigns. + HOTEL_ADS = 6; + + // The type for ad groups in Smart Shopping campaigns. + SHOPPING_SMART_ADS = 7; + + // Short unskippable in-stream video ads. + VIDEO_BUMPER = 8; + + // TrueView (skippable) in-stream video ads. + VIDEO_TRUE_VIEW_IN_STREAM = 9; + + // TrueView in-display video ads. + VIDEO_TRUE_VIEW_IN_DISPLAY = 10; + + // Unskippable in-stream video ads. + VIDEO_NON_SKIPPABLE_IN_STREAM = 11; + + // Outstream video ads. + VIDEO_OUTSTREAM = 12; + + // Ad group type for Dynamic Search Ads ad groups. + SEARCH_DYNAMIC_ADS = 13; + + // The type for ad groups in Shopping Comparison Listing campaigns. + SHOPPING_COMPARISON_LISTING_ADS = 14; + + // The ad group type for Promoted Hotel ad groups. + PROMOTED_HOTEL_ADS = 15; + + // Video responsive ad groups. + VIDEO_RESPONSIVE = 16; + + // Video efficient reach ad groups. + VIDEO_EFFICIENT_REACH = 17; + + // Ad group type for Smart campaigns. + SMART_CAMPAIGN_ADS = 18; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_network_type.proto b/google/ads/googleads/v8/enums/ad_network_type.proto new file mode 100644 index 000000000..c51464e1d --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_network_type.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdNetworkTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing ad network types. + +// Container for enumeration of Google Ads network types. +message AdNetworkTypeEnum { + // Enumerates Google Ads network types. + enum AdNetworkType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Google search. + SEARCH = 2; + + // Search partners. + SEARCH_PARTNERS = 3; + + // Display Network. + CONTENT = 4; + + // YouTube Search. + YOUTUBE_SEARCH = 5; + + // YouTube Videos + YOUTUBE_WATCH = 6; + + // Cross-network. + MIXED = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_serving_optimization_status.proto b/google/ads/googleads/v8/enums/ad_serving_optimization_status.proto new file mode 100644 index 000000000..1e7b7221e --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_serving_optimization_status.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdServingOptimizationStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing ad serving statuses. + +// Possible ad serving statuses of a campaign. +message AdServingOptimizationStatusEnum { + // Enum describing possible serving statuses. + enum AdServingOptimizationStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Ad serving is optimized based on CTR for the campaign. + OPTIMIZE = 2; + + // Ad serving is optimized based on CTR * Conversion for the campaign. If + // the campaign is not in the conversion optimizer bidding strategy, it will + // default to OPTIMIZED. + CONVERSION_OPTIMIZE = 3; + + // Ads are rotated evenly for 90 days, then optimized for clicks. + ROTATE = 4; + + // Show lower performing ads more evenly with higher performing ads, and do + // not optimize. + ROTATE_INDEFINITELY = 5; + + // Ad serving optimization status is not available. + UNAVAILABLE = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_strength.proto b/google/ads/googleads/v8/enums/ad_strength.proto new file mode 100644 index 000000000..64ce6d26d --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_strength.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdStrengthProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing ad strengths. + +// Container for enum describing possible ad strengths. +message AdStrengthEnum { + // Enum listing the possible ad strengths. + enum AdStrength { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The ad strength is currently pending. + PENDING = 2; + + // No ads could be generated. + NO_ADS = 3; + + // Poor strength. + POOR = 4; + + // Average strength. + AVERAGE = 5; + + // Good strength. + GOOD = 6; + + // Excellent strength. + EXCELLENT = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/ad_type.proto b/google/ads/googleads/v8/enums/ad_type.proto new file mode 100644 index 000000000..c58355870 --- /dev/null +++ b/google/ads/googleads/v8/enums/ad_type.proto @@ -0,0 +1,128 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing the ad type. + +// Container for enum describing possible types of an ad. +message AdTypeEnum { + // The possible types of an ad. + enum AdType { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The ad is a text ad. + TEXT_AD = 2; + + // The ad is an expanded text ad. + EXPANDED_TEXT_AD = 3; + + // The ad is an expanded dynamic search ad. + EXPANDED_DYNAMIC_SEARCH_AD = 7; + + // The ad is a hotel ad. + HOTEL_AD = 8; + + // The ad is a Smart Shopping ad. + SHOPPING_SMART_AD = 9; + + // The ad is a standard Shopping ad. + SHOPPING_PRODUCT_AD = 10; + + // The ad is a video ad. + VIDEO_AD = 12; + + // This ad is a Gmail ad. + GMAIL_AD = 13; + + // This ad is an Image ad. + IMAGE_AD = 14; + + // The ad is a responsive search ad. + RESPONSIVE_SEARCH_AD = 15; + + // The ad is a legacy responsive display ad. + LEGACY_RESPONSIVE_DISPLAY_AD = 16; + + // The ad is an app ad. + APP_AD = 17; + + // The ad is a legacy app install ad. + LEGACY_APP_INSTALL_AD = 18; + + // The ad is a responsive display ad. + RESPONSIVE_DISPLAY_AD = 19; + + // The ad is a local ad. + LOCAL_AD = 20; + + // The ad is a display upload ad with the HTML5_UPLOAD_AD product type. + HTML5_UPLOAD_AD = 21; + + // The ad is a display upload ad with one of the DYNAMIC_HTML5_* product + // types. + DYNAMIC_HTML5_AD = 22; + + // The ad is an app engagement ad. + APP_ENGAGEMENT_AD = 23; + + // The ad is a Shopping Comparison Listing ad. + SHOPPING_COMPARISON_LISTING_AD = 24; + + // Video bumper ad. + VIDEO_BUMPER_AD = 25; + + // Video non-skippable in-stream ad. + VIDEO_NON_SKIPPABLE_IN_STREAM_AD = 26; + + // Video outstream ad. + VIDEO_OUTSTREAM_AD = 27; + + // Video TrueView in-display ad. + VIDEO_TRUEVIEW_DISCOVERY_AD = 28; + + // Video TrueView in-stream ad. + VIDEO_TRUEVIEW_IN_STREAM_AD = 29; + + // Video responsive ad. + VIDEO_RESPONSIVE_AD = 30; + + // Smart campaign ad. + SMART_CAMPAIGN_AD = 31; + + // Call ad. + CALL_AD = 32; + } + + +} diff --git a/google/ads/googleads/v8/enums/advertising_channel_sub_type.proto b/google/ads/googleads/v8/enums/advertising_channel_sub_type.proto new file mode 100644 index 000000000..10f02acc1 --- /dev/null +++ b/google/ads/googleads/v8/enums/advertising_channel_sub_type.proto @@ -0,0 +1,96 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdvertisingChannelSubTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing advertising channel subtypes. + +// An immutable specialization of an Advertising Channel. +message AdvertisingChannelSubTypeEnum { + // Enum describing the different channel subtypes. + enum AdvertisingChannelSubType { + // Not specified. + UNSPECIFIED = 0; + + // Used as a return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Mobile app campaigns for Search. + SEARCH_MOBILE_APP = 2; + + // Mobile app campaigns for Display. + DISPLAY_MOBILE_APP = 3; + + // AdWords express campaigns for search. + SEARCH_EXPRESS = 4; + + // AdWords Express campaigns for display. + DISPLAY_EXPRESS = 5; + + // Smart Shopping campaigns. + SHOPPING_SMART_ADS = 6; + + // Gmail Ad campaigns. + DISPLAY_GMAIL_AD = 7; + + // Smart display campaigns. + DISPLAY_SMART_CAMPAIGN = 8; + + // Video Outstream campaigns. + VIDEO_OUTSTREAM = 9; + + // Video TrueView for Action campaigns. + VIDEO_ACTION = 10; + + // Video campaigns with non-skippable video ads. + VIDEO_NON_SKIPPABLE = 11; + + // App Campaign that allows you to easily promote your Android or iOS app + // across Google's top properties including Search, Play, YouTube, and the + // Google Display Network. + APP_CAMPAIGN = 12; + + // App Campaign for engagement, focused on driving re-engagement with the + // app across several of Google’s top properties including Search, YouTube, + // and the Google Display Network. + APP_CAMPAIGN_FOR_ENGAGEMENT = 13; + + // Campaigns specialized for local advertising. + LOCAL_CAMPAIGN = 14; + + // Shopping Comparison Listing campaigns. + SHOPPING_COMPARISON_LISTING_ADS = 15; + + // Standard Smart campaigns. + SMART_CAMPAIGN = 16; + + // Video campaigns with sequence video ads. + VIDEO_SEQUENCE = 17; + } + + +} diff --git a/google/ads/googleads/v8/enums/advertising_channel_type.proto b/google/ads/googleads/v8/enums/advertising_channel_type.proto new file mode 100644 index 000000000..a9590b192 --- /dev/null +++ b/google/ads/googleads/v8/enums/advertising_channel_type.proto @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdvertisingChannelTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing advertising channel types + +// The channel type a campaign may target to serve on. +message AdvertisingChannelTypeEnum { + // Enum describing the various advertising channel types. + enum AdvertisingChannelType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Search Network. Includes display bundled, and Search+ campaigns. + SEARCH = 2; + + // Google Display Network only. + DISPLAY = 3; + + // Shopping campaigns serve on the shopping property + // and on google.com search results. + SHOPPING = 4; + + // Hotel Ads campaigns. + HOTEL = 5; + + // Video campaigns. + VIDEO = 6; + + // App Campaigns, and App Campaigns for Engagement, that run + // across multiple channels. + MULTI_CHANNEL = 7; + + // Local ads campaigns. + LOCAL = 8; + + // Smart campaigns. + SMART = 9; + } + + +} diff --git a/google/ads/googleads/v8/enums/affiliate_location_feed_relationship_type.proto b/google/ads/googleads/v8/enums/affiliate_location_feed_relationship_type.proto new file mode 100644 index 000000000..383f94aca --- /dev/null +++ b/google/ads/googleads/v8/enums/affiliate_location_feed_relationship_type.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AffiliateLocationFeedRelationshipTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing relation type for affiliate location feeds. + +// Container for enum describing possible values for a relationship type for +// an affiliate location feed. +message AffiliateLocationFeedRelationshipTypeEnum { + // Possible values for a relationship type for an affiliate location feed. + enum AffiliateLocationFeedRelationshipType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // General retailer relationship. + GENERAL_RETAILER = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/affiliate_location_placeholder_field.proto b/google/ads/googleads/v8/enums/affiliate_location_placeholder_field.proto new file mode 100644 index 000000000..22b0dc2d0 --- /dev/null +++ b/google/ads/googleads/v8/enums/affiliate_location_placeholder_field.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AffiliateLocationPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Affiliate Location placeholder fields. + +// Values for Affiliate Location placeholder fields. +message AffiliateLocationPlaceholderFieldEnum { + // Possible values for Affiliate Location placeholder fields. + enum AffiliateLocationPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The name of the business. + BUSINESS_NAME = 2; + + // Data Type: STRING. Line 1 of the business address. + ADDRESS_LINE_1 = 3; + + // Data Type: STRING. Line 2 of the business address. + ADDRESS_LINE_2 = 4; + + // Data Type: STRING. City of the business address. + CITY = 5; + + // Data Type: STRING. Province of the business address. + PROVINCE = 6; + + // Data Type: STRING. Postal code of the business address. + POSTAL_CODE = 7; + + // Data Type: STRING. Country code of the business address. + COUNTRY_CODE = 8; + + // Data Type: STRING. Phone number of the business. + PHONE_NUMBER = 9; + + // Data Type: STRING. Language code of the business. + LANGUAGE_CODE = 10; + + // Data Type: INT64. ID of the chain. + CHAIN_ID = 11; + + // Data Type: STRING. Name of the chain. + CHAIN_NAME = 12; + } + + +} diff --git a/google/ads/googleads/v8/enums/age_range_type.proto b/google/ads/googleads/v8/enums/age_range_type.proto new file mode 100644 index 000000000..a80e4896a --- /dev/null +++ b/google/ads/googleads/v8/enums/age_range_type.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AgeRangeTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing age range types. + +// Container for enum describing the type of demographic age ranges. +message AgeRangeTypeEnum { + // The type of demographic age ranges (e.g. between 18 and 24 years old). + enum AgeRangeType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Between 18 and 24 years old. + AGE_RANGE_18_24 = 503001; + + // Between 25 and 34 years old. + AGE_RANGE_25_34 = 503002; + + // Between 35 and 44 years old. + AGE_RANGE_35_44 = 503003; + + // Between 45 and 54 years old. + AGE_RANGE_45_54 = 503004; + + // Between 55 and 64 years old. + AGE_RANGE_55_64 = 503005; + + // 65 years old and beyond. + AGE_RANGE_65_UP = 503006; + + // Undetermined age range. + AGE_RANGE_UNDETERMINED = 503999; + } + + +} diff --git a/google/ads/googleads/v8/enums/app_campaign_app_store.proto b/google/ads/googleads/v8/enums/app_campaign_app_store.proto new file mode 100644 index 000000000..b7391250f --- /dev/null +++ b/google/ads/googleads/v8/enums/app_campaign_app_store.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppCampaignAppStoreProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing App Campaign app store. + +// The application store that distributes mobile applications. +message AppCampaignAppStoreEnum { + // Enum describing app campaign app store. + enum AppCampaignAppStore { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Apple app store. + APPLE_APP_STORE = 2; + + // Google play. + GOOGLE_APP_STORE = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/app_campaign_bidding_strategy_goal_type.proto b/google/ads/googleads/v8/enums/app_campaign_bidding_strategy_goal_type.proto new file mode 100644 index 000000000..19b54d41e --- /dev/null +++ b/google/ads/googleads/v8/enums/app_campaign_bidding_strategy_goal_type.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppCampaignBiddingStrategyGoalTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing App Campaign bidding strategy goal types. + +// Container for enum describing goal towards which the bidding strategy of an +// app campaign should optimize for. +message AppCampaignBiddingStrategyGoalTypeEnum { + // Goal type of App campaign BiddingStrategy. + enum AppCampaignBiddingStrategyGoalType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Aim to maximize the number of app installs. The cpa bid is the + // target cost per install. + OPTIMIZE_INSTALLS_TARGET_INSTALL_COST = 2; + + // Aim to maximize the long term number of selected in-app conversions from + // app installs. The cpa bid is the target cost per install. + OPTIMIZE_IN_APP_CONVERSIONS_TARGET_INSTALL_COST = 3; + + // Aim to maximize the long term number of selected in-app conversions from + // app installs. The cpa bid is the target cost per in-app conversion. Note + // that the actual cpa may seem higher than the target cpa at first, since + // the long term conversions haven’t happened yet. + OPTIMIZE_IN_APP_CONVERSIONS_TARGET_CONVERSION_COST = 4; + + // Aim to maximize all conversions' value, i.e. install + selected in-app + // conversions while achieving or exceeding target return on advertising + // spend. + OPTIMIZE_RETURN_ON_ADVERTISING_SPEND = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/app_payment_model_type.proto b/google/ads/googleads/v8/enums/app_payment_model_type.proto new file mode 100644 index 000000000..51871cd1b --- /dev/null +++ b/google/ads/googleads/v8/enums/app_payment_model_type.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppPaymentModelTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing criteria types. + +// Represents a criterion for targeting paid apps. +message AppPaymentModelTypeEnum { + // Enum describing possible app payment models. + enum AppPaymentModelType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Represents paid-for apps. + PAID = 30; + } + + +} diff --git a/google/ads/googleads/v8/enums/app_placeholder_field.proto b/google/ads/googleads/v8/enums/app_placeholder_field.proto new file mode 100644 index 000000000..c51ddfa97 --- /dev/null +++ b/google/ads/googleads/v8/enums/app_placeholder_field.proto @@ -0,0 +1,75 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing App placeholder fields. + +// Values for App placeholder fields. +message AppPlaceholderFieldEnum { + // Possible values for App placeholder fields. + enum AppPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: INT64. The application store that the target application + // belongs to. Valid values are: 1 = Apple iTunes Store; 2 = Google Play + // Store. + STORE = 2; + + // Data Type: STRING. The store-specific ID for the target application. + ID = 3; + + // Data Type: STRING. The visible text displayed when the link is rendered + // in an ad. + LINK_TEXT = 4; + + // Data Type: STRING. The destination URL of the in-app link. + URL = 5; + + // Data Type: URL_LIST. Final URLs for the in-app link when using Upgraded + // URLs. + FINAL_URLS = 6; + + // Data Type: URL_LIST. Final Mobile URLs for the in-app link when using + // Upgraded URLs. + FINAL_MOBILE_URLS = 7; + + // Data Type: URL. Tracking template for the in-app link when using Upgraded + // URLs. + TRACKING_URL = 8; + + // Data Type: STRING. Final URL suffix for the in-app link when using + // parallel tracking. + FINAL_URL_SUFFIX = 9; + } + + +} diff --git a/google/ads/googleads/v8/enums/app_store.proto b/google/ads/googleads/v8/enums/app_store.proto new file mode 100644 index 000000000..efb6a3a68 --- /dev/null +++ b/google/ads/googleads/v8/enums/app_store.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppStoreProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing app store types for an app extension. + +// Container for enum describing app store type in an app extension. +message AppStoreEnum { + // App store type in an app extension. + enum AppStore { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Apple iTunes. + APPLE_ITUNES = 2; + + // Google Play. + GOOGLE_PLAY = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/app_url_operating_system_type.proto b/google/ads/googleads/v8/enums/app_url_operating_system_type.proto new file mode 100644 index 000000000..c7c79aa06 --- /dev/null +++ b/google/ads/googleads/v8/enums/app_url_operating_system_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppUrlOperatingSystemTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing operating system for a deeplink app URL. + +// The possible OS types for a deeplink AppUrl. +message AppUrlOperatingSystemTypeEnum { + // Operating System + enum AppUrlOperatingSystemType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The Apple IOS operating system. + IOS = 2; + + // The Android operating system. + ANDROID = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/asset_field_type.proto b/google/ads/googleads/v8/enums/asset_field_type.proto new file mode 100644 index 000000000..5e6669732 --- /dev/null +++ b/google/ads/googleads/v8/enums/asset_field_type.proto @@ -0,0 +1,81 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetFieldTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing asset type. + +// Container for enum describing the possible placements of an asset. +message AssetFieldTypeEnum { + // Enum describing the possible placements of an asset. + enum AssetFieldType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The asset is linked for use as a headline. + HEADLINE = 2; + + // The asset is linked for use as a description. + DESCRIPTION = 3; + + // The asset is linked for use as mandatory ad text. + MANDATORY_AD_TEXT = 4; + + // The asset is linked for use as a marketing image. + MARKETING_IMAGE = 5; + + // The asset is linked for use as a media bundle. + MEDIA_BUNDLE = 6; + + // The asset is linked for use as a YouTube video. + YOUTUBE_VIDEO = 7; + + // The asset is linked to indicate that a hotels campaign is "Book on + // Google" enabled. + BOOK_ON_GOOGLE = 8; + + // The asset is linked for use as a Lead Form extension. + LEAD_FORM = 9; + + // The asset is linked for use as a Promotion extension. + PROMOTION = 10; + + // The asset is linked for use as a Callout extension. + CALLOUT = 11; + + // The asset is linked for use as a Structured Snippet extension. + STRUCTURED_SNIPPET = 12; + + // The asset is linked for use as a Sitelink extension. + SITELINK = 13; + } + + +} diff --git a/google/ads/googleads/v8/enums/asset_link_status.proto b/google/ads/googleads/v8/enums/asset_link_status.proto new file mode 100644 index 000000000..60e685fe2 --- /dev/null +++ b/google/ads/googleads/v8/enums/asset_link_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetLinkStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing status of an asset link. + +// Container for enum describing possible statuses of an asset link. +message AssetLinkStatusEnum { + // Enum describing statuses of an asset link. + enum AssetLinkStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Asset link is enabled. + ENABLED = 2; + + // Asset link has been removed. + REMOVED = 3; + + // Asset link is paused. + PAUSED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/asset_performance_label.proto b/google/ads/googleads/v8/enums/asset_performance_label.proto new file mode 100644 index 000000000..003641458 --- /dev/null +++ b/google/ads/googleads/v8/enums/asset_performance_label.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetPerformanceLabelProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing the performance label of an asset. + +// Container for enum describing the performance label of an asset. +message AssetPerformanceLabelEnum { + // Enum describing the possible performance labels of an asset, usually + // computed in the context of a linkage. + enum AssetPerformanceLabel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // This asset does not yet have any performance informantion. This may be + // because it is still under review. + PENDING = 2; + + // The asset has started getting impressions but the stats are not + // statistically significant enough to get an asset performance label. + LEARNING = 3; + + // Worst performing assets. + LOW = 4; + + // Good performing assets. + GOOD = 5; + + // Best performing assets. + BEST = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/asset_type.proto b/google/ads/googleads/v8/enums/asset_type.proto new file mode 100644 index 000000000..66db168f3 --- /dev/null +++ b/google/ads/googleads/v8/enums/asset_type.proto @@ -0,0 +1,74 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing asset type. + +// Container for enum describing the types of asset. +message AssetTypeEnum { + // Enum describing possible types of asset. + enum AssetType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // YouTube video asset. + YOUTUBE_VIDEO = 2; + + // Media bundle asset. + MEDIA_BUNDLE = 3; + + // Image asset. + IMAGE = 4; + + // Text asset. + TEXT = 5; + + // Lead form asset. + LEAD_FORM = 6; + + // Book on Google asset. + BOOK_ON_GOOGLE = 7; + + // Promotion asset. + PROMOTION = 8; + + // Callout asset. + CALLOUT = 9; + + // Structured Snippet asset. + STRUCTURED_SNIPPET = 10; + + // Sitelink asset. + SITELINK = 11; + } + + +} diff --git a/google/ads/googleads/v8/enums/attribution_model.proto b/google/ads/googleads/v8/enums/attribution_model.proto new file mode 100644 index 000000000..4da3f09b5 --- /dev/null +++ b/google/ads/googleads/v8/enums/attribution_model.proto @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AttributionModelProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum representing the attribution model that describes how to +// distribute credit for a particular conversion across potentially many prior +// interactions. +message AttributionModelEnum { + // The attribution model that describes how to distribute credit for a + // particular conversion across potentially many prior interactions. + enum AttributionModel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Uses external attribution. + EXTERNAL = 100; + + // Attributes all credit for a conversion to its last click. + GOOGLE_ADS_LAST_CLICK = 101; + + // Attributes all credit for a conversion to its first click using Google + // Search attribution. + GOOGLE_SEARCH_ATTRIBUTION_FIRST_CLICK = 102; + + // Attributes credit for a conversion equally across all of its clicks using + // Google Search attribution. + GOOGLE_SEARCH_ATTRIBUTION_LINEAR = 103; + + // Attributes exponentially more credit for a conversion to its more recent + // clicks using Google Search attribution (half-life is 1 week). + GOOGLE_SEARCH_ATTRIBUTION_TIME_DECAY = 104; + + // Attributes 40% of the credit for a conversion to its first and last + // clicks. Remaining 20% is evenly distributed across all other clicks. This + // uses Google Search attribution. + GOOGLE_SEARCH_ATTRIBUTION_POSITION_BASED = 105; + + // Flexible model that uses machine learning to determine the appropriate + // distribution of credit among clicks using Google Search attribution. + GOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN = 106; + } + + +} diff --git a/google/ads/googleads/v8/enums/batch_job_status.proto b/google/ads/googleads/v8/enums/batch_job_status.proto new file mode 100644 index 000000000..2f7dc1a73 --- /dev/null +++ b/google/ads/googleads/v8/enums/batch_job_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BatchJobStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing batch job statuses. + +// Container for enum describing possible batch job statuses. +message BatchJobStatusEnum { + // The batch job statuses. + enum BatchJobStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The job is not currently running. + PENDING = 2; + + // The job is running. + RUNNING = 3; + + // The job is done. + DONE = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/bid_modifier_source.proto b/google/ads/googleads/v8/enums/bid_modifier_source.proto new file mode 100644 index 000000000..10f16a358 --- /dev/null +++ b/google/ads/googleads/v8/enums/bid_modifier_source.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BidModifierSourceProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing bid modifier source. + +// Container for enum describing possible bid modifier sources. +message BidModifierSourceEnum { + // Enum describing possible bid modifier sources. + enum BidModifierSource { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The bid modifier is specified at the campaign level, on the campaign + // level criterion. + CAMPAIGN = 2; + + // The bid modifier is specified (overridden) at the ad group level. + AD_GROUP = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/bidding_source.proto b/google/ads/googleads/v8/enums/bidding_source.proto new file mode 100644 index 000000000..7be8045c3 --- /dev/null +++ b/google/ads/googleads/v8/enums/bidding_source.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BiddingSourceProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing bidding sources. + +// Container for enum describing possible bidding sources. +message BiddingSourceEnum { + // Indicates where a bid or target is defined. For example, an ad group + // criterion may define a cpc bid directly, or it can inherit its cpc bid from + // the ad group. + enum BiddingSource { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Effective bid or target is inherited from campaign bidding strategy. + CAMPAIGN_BIDDING_STRATEGY = 5; + + // The bid or target is defined on the ad group. + AD_GROUP = 6; + + // The bid or target is defined on the ad group criterion. + AD_GROUP_CRITERION = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/bidding_strategy_status.proto b/google/ads/googleads/v8/enums/bidding_strategy_status.proto new file mode 100644 index 000000000..42fa33f4b --- /dev/null +++ b/google/ads/googleads/v8/enums/bidding_strategy_status.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategyStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing BiddingStrategy statuses. + +// Message describing BiddingStrategy statuses. +message BiddingStrategyStatusEnum { + // The possible statuses of a BiddingStrategy. + enum BiddingStrategyStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The bidding strategy is enabled. + ENABLED = 2; + + // The bidding strategy is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/bidding_strategy_type.proto b/google/ads/googleads/v8/enums/bidding_strategy_type.proto new file mode 100644 index 000000000..e6e35dfc3 --- /dev/null +++ b/google/ads/googleads/v8/enums/bidding_strategy_type.proto @@ -0,0 +1,119 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategyTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing bidding schemes. + +// Container for enum describing possible bidding strategy types. +message BiddingStrategyTypeEnum { + // Enum describing possible bidding strategy types. + enum BiddingStrategyType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Commission is an automatic bidding strategy in which the advertiser pays + // a certain portion of the conversion value. + COMMISSION = 16; + + // Enhanced CPC is a bidding strategy that raises bids for clicks + // that seem more likely to lead to a conversion and lowers + // them for clicks where they seem less likely. + ENHANCED_CPC = 2; + + // Used for return value only. Indicates that a campaign does not have a + // bidding strategy. This prevents the campaign from serving. For example, + // a campaign may be attached to a manager bidding strategy and the serving + // account is subsequently unlinked from the manager account. In this case + // the campaign will automatically be detached from the now inaccessible + // manager bidding strategy and transition to the INVALID bidding strategy + // type. + INVALID = 17; + + // Manual click based bidding where user pays per click. + MANUAL_CPC = 3; + + // Manual impression based bidding + // where user pays per thousand impressions. + MANUAL_CPM = 4; + + // A bidding strategy that pays a configurable amount per video view. + MANUAL_CPV = 13; + + // A bidding strategy that automatically maximizes number of conversions + // given a daily budget. + MAXIMIZE_CONVERSIONS = 10; + + // An automated bidding strategy that automatically sets bids to maximize + // revenue while spending your budget. + MAXIMIZE_CONVERSION_VALUE = 11; + + // Page-One Promoted bidding scheme, which sets max cpc bids to + // target impressions on page one or page one promoted slots on google.com. + // This enum value is deprecated. + PAGE_ONE_PROMOTED = 5; + + // Percent Cpc is bidding strategy where bids are a fraction of the + // advertised price for some good or service. + PERCENT_CPC = 12; + + // Target CPA is an automated bid strategy that sets bids + // to help get as many conversions as possible + // at the target cost-per-acquisition (CPA) you set. + TARGET_CPA = 6; + + // Target CPM is an automated bid strategy that sets bids to help get + // as many impressions as possible at the target cost per one thousand + // impressions (CPM) you set. + TARGET_CPM = 14; + + // An automated bidding strategy that sets bids so that a certain percentage + // of search ads are shown at the top of the first page (or other targeted + // location). + TARGET_IMPRESSION_SHARE = 15; + + // Target Outrank Share is an automated bidding strategy that sets bids + // based on the target fraction of auctions where the advertiser + // should outrank a specific competitor. + // This enum value is deprecated. + TARGET_OUTRANK_SHARE = 7; + + // Target ROAS is an automated bidding strategy + // that helps you maximize revenue while averaging + // a specific target Return On Average Spend (ROAS). + TARGET_ROAS = 8; + + // Target Spend is an automated bid strategy that sets your bids + // to help get as many clicks as possible within your budget. + TARGET_SPEND = 9; + } + + +} diff --git a/google/ads/googleads/v8/enums/billing_setup_status.proto b/google/ads/googleads/v8/enums/billing_setup_status.proto new file mode 100644 index 000000000..5246a1685 --- /dev/null +++ b/google/ads/googleads/v8/enums/billing_setup_status.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BillingSetupStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing BillingSetup statuses. + +// Message describing BillingSetup statuses. +message BillingSetupStatusEnum { + // The possible statuses of a BillingSetup. + enum BillingSetupStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The billing setup is pending approval. + PENDING = 2; + + // The billing setup has been approved but the corresponding first budget + // has not. This can only occur for billing setups configured for monthly + // invoicing. + APPROVED_HELD = 3; + + // The billing setup has been approved. + APPROVED = 4; + + // The billing setup was cancelled by the user prior to approval. + CANCELLED = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/brand_safety_suitability.proto b/google/ads/googleads/v8/enums/brand_safety_suitability.proto new file mode 100644 index 000000000..f06f15761 --- /dev/null +++ b/google/ads/googleads/v8/enums/brand_safety_suitability.proto @@ -0,0 +1,73 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BrandSafetySuitabilityProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing brand safety suitability settings. + +// Container for enum with 3-Tier brand safety suitability control. +message BrandSafetySuitabilityEnum { + // 3-Tier brand safety suitability control. + enum BrandSafetySuitability { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // This option lets you show ads across all inventory on YouTube and video + // partners that meet our standards for monetization. This option may be an + // appropriate choice for brands that want maximum access to the full + // breadth of videos eligible for ads, including, for example, videos that + // have strong profanity in the context of comedy or a documentary, or + // excessive violence as featured in video games. + EXPANDED_INVENTORY = 2; + + // This option lets you show ads across a wide range of content that's + // appropriate for most brands, such as popular music videos, documentaries, + // and movie trailers. The content you can show ads on is based on YouTube's + // advertiser-friendly content guidelines that take into account, for + // example, the strength or frequency of profanity, or the appropriateness + // of subject matter like sensitive events. Ads won't show, for example, on + // content with repeated strong profanity, strong sexual content, or graphic + // violence. + STANDARD_INVENTORY = 3; + + // This option lets you show ads on a reduced range of content that's + // appropriate for brands with particularly strict guidelines around + // inappropriate language and sexual suggestiveness; above and beyond what + // YouTube's advertiser-friendly content guidelines address. The videos + // accessible in this sensitive category meet heightened requirements, + // especially for inappropriate language and sexual suggestiveness. For + // example, your ads will be excluded from showing on some of YouTube's most + // popular music videos and other pop culture content across YouTube and + // Google video partners. + LIMITED_INVENTORY = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/budget_campaign_association_status.proto b/google/ads/googleads/v8/enums/budget_campaign_association_status.proto new file mode 100644 index 000000000..ca93d24b8 --- /dev/null +++ b/google/ads/googleads/v8/enums/budget_campaign_association_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BudgetCampaignAssociationStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Budget and Campaign association status. + +// Message describing the status of the association between the Budget and the +// Campaign. +message BudgetCampaignAssociationStatusEnum { + // Possible statuses of the association between the Budget and the Campaign. + enum BudgetCampaignAssociationStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The campaign is currently using the budget. + ENABLED = 2; + + // The campaign is no longer using the budget. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/budget_delivery_method.proto b/google/ads/googleads/v8/enums/budget_delivery_method.proto new file mode 100644 index 000000000..8e8a6893b --- /dev/null +++ b/google/ads/googleads/v8/enums/budget_delivery_method.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BudgetDeliveryMethodProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Budget delivery methods. + +// Message describing Budget delivery methods. A delivery method determines the +// rate at which the Budget is spent. +message BudgetDeliveryMethodEnum { + // Possible delivery methods of a Budget. + enum BudgetDeliveryMethod { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The budget server will throttle serving evenly across + // the entire time period. + STANDARD = 2; + + // The budget server will not throttle serving, + // and ads will serve as fast as possible. + ACCELERATED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/budget_period.proto b/google/ads/googleads/v8/enums/budget_period.proto new file mode 100644 index 000000000..b5e452706 --- /dev/null +++ b/google/ads/googleads/v8/enums/budget_period.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BudgetPeriodProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Budget delivery methods. + +// Message describing Budget period. +message BudgetPeriodEnum { + // Possible period of a Budget. + enum BudgetPeriod { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Daily budget. + DAILY = 2; + + // Custom budget, added back in V5. + // Custom bugdet can be used with total_amount to specify lifetime budget + // limit. See: https://support.google.com/google-ads/answer/6385083 for more + // info. + CUSTOM_PERIOD = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/budget_status.proto b/google/ads/googleads/v8/enums/budget_status.proto new file mode 100644 index 000000000..ee74213a1 --- /dev/null +++ b/google/ads/googleads/v8/enums/budget_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BudgetStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Budget statuses + +// Message describing a Budget status +message BudgetStatusEnum { + // Possible statuses of a Budget. + enum BudgetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Budget is enabled. + ENABLED = 2; + + // Budget is removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/budget_type.proto b/google/ads/googleads/v8/enums/budget_type.proto new file mode 100644 index 000000000..0d2b85564 --- /dev/null +++ b/google/ads/googleads/v8/enums/budget_type.proto @@ -0,0 +1,74 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BudgetTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Budget types. + +// Describes Budget types. +message BudgetTypeEnum { + // Possible Budget types. + enum BudgetType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Budget type for standard Google Ads usage. + // Caps daily spend at two times the specified budget amount. + // Full details: https://support.google.com/google-ads/answer/6385083 + STANDARD = 2; + + // Budget type for Hotels Ads commission program. + // Full details: https://support.google.com/google-ads/answer/9243945 + // + // This type is only supported by campaigns with + // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION and + // PaymentMode.CONVERSION_VALUE. + HOTEL_ADS_COMMISSION = 3; + + // Budget type with a fixed cost-per-acquisition (conversion). + // Full details: https://support.google.com/google-ads/answer/7528254 + // + // This type is only supported by campaigns with + // AdvertisingChannelType.DISPLAY (excluding + // AdvertisingChannelSubType.DISPLAY_GMAIL), + // BiddingStrategyType.TARGET_CPA and PaymentMode.CONVERSIONS. + FIXED_CPA = 4; + + // Budget type for Smart Campaign. + // Full details: https://support.google.com/google-ads/answer/7653509 + // + // This type is only supported by campaigns with + // AdvertisingChannelType.SMART and + // AdvertisingChannelSubType.SMART_CAMPAIGN. + SMART_CAMPAIGN = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/call_conversion_reporting_state.proto b/google/ads/googleads/v8/enums/call_conversion_reporting_state.proto new file mode 100644 index 000000000..2fd3492f3 --- /dev/null +++ b/google/ads/googleads/v8/enums/call_conversion_reporting_state.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CallConversionReportingStateProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing call conversion reporting state. + +// Container for enum describing possible data types for call conversion +// reporting state. +message CallConversionReportingStateEnum { + // Possible data types for a call conversion action state. + enum CallConversionReportingState { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Call conversion action is disabled. + DISABLED = 2; + + // Call conversion action will use call conversion type set at the + // account level. + USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION = 3; + + // Call conversion action will use call conversion type set at the resource + // (call only ads/call extensions) level. + USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/call_placeholder_field.proto b/google/ads/googleads/v8/enums/call_placeholder_field.proto new file mode 100644 index 000000000..d834abdb7 --- /dev/null +++ b/google/ads/googleads/v8/enums/call_placeholder_field.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CallPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Call placeholder fields. + +// Values for Call placeholder fields. +message CallPlaceholderFieldEnum { + // Possible values for Call placeholder fields. + enum CallPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The advertiser's phone number to append to the ad. + PHONE_NUMBER = 2; + + // Data Type: STRING. Uppercase two-letter country code of the advertiser's + // phone number. + COUNTRY_CODE = 3; + + // Data Type: BOOLEAN. Indicates whether call tracking is enabled. Default: + // true. + TRACKED = 4; + + // Data Type: INT64. The ID of an AdCallMetricsConversion object. This + // object contains the phoneCallDurationfield which is the minimum duration + // (in seconds) of a call to be considered a conversion. + CONVERSION_TYPE_ID = 5; + + // Data Type: STRING. Indicates whether this call extension uses its own + // call conversion setting or follows the account level setting. + // Valid values are: USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION and + // USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION. + CONVERSION_REPORTING_STATE = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/call_tracking_display_location.proto b/google/ads/googleads/v8/enums/call_tracking_display_location.proto new file mode 100644 index 000000000..29b7ec1ae --- /dev/null +++ b/google/ads/googleads/v8/enums/call_tracking_display_location.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CallTrackingDisplayLocationProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing call tracking display location. + +// Container for enum describing possible call tracking display locations. +message CallTrackingDisplayLocationEnum { + // Possible call tracking display locations. + enum CallTrackingDisplayLocation { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The phone call placed from the ad. + AD = 2; + + // The phone call placed from the landing page ad points to. + LANDING_PAGE = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/call_type.proto b/google/ads/googleads/v8/enums/call_type.proto new file mode 100644 index 000000000..965eae85a --- /dev/null +++ b/google/ads/googleads/v8/enums/call_type.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CallTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing call types. + +// Container for enum describing possible types of property from where the call +// was made. +message CallTypeEnum { + // Possible types of property from where the call was made. + enum CallType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The phone call was manually dialed. + MANUALLY_DIALED = 2; + + // The phone call was a mobile click-to-call. + HIGH_END_MOBILE_SEARCH = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/callout_placeholder_field.proto b/google/ads/googleads/v8/enums/callout_placeholder_field.proto new file mode 100644 index 000000000..e8c88d5f0 --- /dev/null +++ b/google/ads/googleads/v8/enums/callout_placeholder_field.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CalloutPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Callout placeholder fields. + +// Values for Callout placeholder fields. +message CalloutPlaceholderFieldEnum { + // Possible values for Callout placeholder fields. + enum CalloutPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Callout text. + CALLOUT_TEXT = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/campaign_criterion_status.proto b/google/ads/googleads/v8/enums/campaign_criterion_status.proto new file mode 100644 index 000000000..61a1a03a9 --- /dev/null +++ b/google/ads/googleads/v8/enums/campaign_criterion_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing CampaignCriterion statuses. + +// Message describing CampaignCriterion statuses. +message CampaignCriterionStatusEnum { + // The possible statuses of a CampaignCriterion. + enum CampaignCriterionStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The campaign criterion is enabled. + ENABLED = 2; + + // The campaign criterion is paused. + PAUSED = 3; + + // The campaign criterion is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/campaign_draft_status.proto b/google/ads/googleads/v8/enums/campaign_draft_status.proto new file mode 100644 index 000000000..fd9838747 --- /dev/null +++ b/google/ads/googleads/v8/enums/campaign_draft_status.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignDraftStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing campaign draft status. + +// Container for enum describing possible statuses of a campaign draft. +message CampaignDraftStatusEnum { + // Possible statuses of a campaign draft. + enum CampaignDraftStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Initial state of the draft, the advertiser can start adding changes with + // no effect on serving. + PROPOSED = 2; + + // The campaign draft is removed. + REMOVED = 3; + + // Advertiser requested to promote draft's changes back into the original + // campaign. Advertiser can poll the long running operation returned by + // the promote action to see the status of the promotion. + PROMOTING = 5; + + // The process to merge changes in the draft back to the original campaign + // has completed successfully. + PROMOTED = 4; + + // The promotion failed after it was partially applied. Promote cannot be + // attempted again safely, so the issue must be corrected in the original + // campaign. + PROMOTE_FAILED = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/campaign_experiment_status.proto b/google/ads/googleads/v8/enums/campaign_experiment_status.proto new file mode 100644 index 000000000..82f6442b5 --- /dev/null +++ b/google/ads/googleads/v8/enums/campaign_experiment_status.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing campaign experiment status. + +// Container for enum describing possible statuses of a campaign experiment. +message CampaignExperimentStatusEnum { + // Possible statuses of a campaign experiment. + enum CampaignExperimentStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The experiment campaign is being initialized. + INITIALIZING = 2; + + // Initialization of the experiment campaign failed. + INITIALIZATION_FAILED = 8; + + // The experiment campaign is fully initialized. The experiment is currently + // running, scheduled to run in the future or has ended based on its + // end date. An experiment with the status INITIALIZING will be updated to + // ENABLED when it is fully created. + ENABLED = 3; + + // The experiment campaign was graduated to a stand-alone + // campaign, existing independently of the experiment. + GRADUATED = 4; + + // The experiment is removed. + REMOVED = 5; + + // The experiment's changes are being applied to the original campaign. + // The long running operation returned by the promote method can be polled + // to see the status of the promotion. + PROMOTING = 6; + + // Promote of the experiment campaign failed. + PROMOTION_FAILED = 9; + + // The changes of the experiment are promoted to their original campaign. + PROMOTED = 7; + + // The experiment was ended manually. It did not end based on its end date. + ENDED_MANUALLY = 10; + } + + +} diff --git a/google/ads/googleads/v8/enums/campaign_experiment_traffic_split_type.proto b/google/ads/googleads/v8/enums/campaign_experiment_traffic_split_type.proto new file mode 100644 index 000000000..d7b8b9ab2 --- /dev/null +++ b/google/ads/googleads/v8/enums/campaign_experiment_traffic_split_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentTrafficSplitTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing campaign experiment traffic split type. + +// Container for enum describing campaign experiment traffic split type. +message CampaignExperimentTrafficSplitTypeEnum { + // Enum of strategies for splitting traffic between base and experiment + // campaigns in campaign experiment. + enum CampaignExperimentTrafficSplitType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Traffic is randomly assigned to the base or experiment arm for each + // query, independent of previous assignments for the same user. + RANDOM_QUERY = 2; + + // Traffic is split using cookies to keep users in the same arm (base or + // experiment) of the experiment. + COOKIE = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/campaign_experiment_type.proto b/google/ads/googleads/v8/enums/campaign_experiment_type.proto new file mode 100644 index 000000000..a27b8a7ba --- /dev/null +++ b/google/ads/googleads/v8/enums/campaign_experiment_type.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing campaign experiment type. + +// Container for enum describing campaign experiment type. +message CampaignExperimentTypeEnum { + // Indicates if this campaign is a normal campaign, + // a draft campaign, or an experiment campaign. + enum CampaignExperimentType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // This is a regular campaign. + BASE = 2; + + // This is a draft version of a campaign. + // It has some modifications from a base campaign, + // but it does not serve or accrue metrics. + DRAFT = 3; + + // This is an experiment version of a campaign. + // It has some modifications from a base campaign, + // and a percentage of traffic is being diverted + // from the BASE campaign to this experiment campaign. + EXPERIMENT = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/campaign_serving_status.proto b/google/ads/googleads/v8/enums/campaign_serving_status.proto new file mode 100644 index 000000000..130116cc4 --- /dev/null +++ b/google/ads/googleads/v8/enums/campaign_serving_status.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignServingStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Campaign serving statuses. + +// Message describing Campaign serving statuses. +message CampaignServingStatusEnum { + // Possible serving statuses of a campaign. + enum CampaignServingStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Serving. + SERVING = 2; + + // None. + NONE = 3; + + // Ended. + ENDED = 4; + + // Pending. + PENDING = 5; + + // Suspended. + SUSPENDED = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/campaign_shared_set_status.proto b/google/ads/googleads/v8/enums/campaign_shared_set_status.proto new file mode 100644 index 000000000..e24dff01c --- /dev/null +++ b/google/ads/googleads/v8/enums/campaign_shared_set_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSharedSetStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing campaign shared set statuses. + +// Container for enum describing types of campaign shared set statuses. +message CampaignSharedSetStatusEnum { + // Enum listing the possible campaign shared set statuses. + enum CampaignSharedSetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The campaign shared set is enabled. + ENABLED = 2; + + // The campaign shared set is removed and can no longer be used. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/campaign_status.proto b/google/ads/googleads/v8/enums/campaign_status.proto new file mode 100644 index 000000000..fba5ffdb8 --- /dev/null +++ b/google/ads/googleads/v8/enums/campaign_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing campaign status. + +// Container for enum describing possible statuses of a campaign. +message CampaignStatusEnum { + // Possible statuses of a campaign. + enum CampaignStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Campaign is currently serving ads depending on budget information. + ENABLED = 2; + + // Campaign has been paused by the user. + PAUSED = 3; + + // Campaign has been removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/change_client_type.proto b/google/ads/googleads/v8/enums/change_client_type.proto new file mode 100644 index 000000000..6adf7928e --- /dev/null +++ b/google/ads/googleads/v8/enums/change_client_type.proto @@ -0,0 +1,87 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ChangeClientTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing the sources that the change event resource was +// made through. + +// Container for enum describing the sources that the change event resource +// was made through. +message ChangeClientTypeEnum { + // The source that the change_event resource was made through. + enum ChangeClientType { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified client type + // unknown in this version. + UNKNOWN = 1; + + // Changes made through the "ads.google.com". + // For example, changes made through campaign management. + GOOGLE_ADS_WEB_CLIENT = 2; + + // Changes made through Google Ads automated rules. + GOOGLE_ADS_AUTOMATED_RULE = 3; + + // Changes made through Google Ads scripts. + GOOGLE_ADS_SCRIPTS = 4; + + // Changes made by Google Ads bulk upload. + GOOGLE_ADS_BULK_UPLOAD = 5; + + // Changes made by Google Ads API. + GOOGLE_ADS_API = 6; + + // Changes made by Google Ads Editor. + GOOGLE_ADS_EDITOR = 7; + + // Changes made by Google Ads mobile app. + GOOGLE_ADS_MOBILE_APP = 8; + + // Changes made through Google Ads recommendations. + GOOGLE_ADS_RECOMMENDATIONS = 9; + + // Changes made through Search Ads 360 Sync. + SEARCH_ADS_360_SYNC = 10; + + // Changes made through Search Ads 360 Post. + SEARCH_ADS_360_POST = 11; + + // Changes made through internal tools. + // For example, when a user sets a URL template on an entity like a + // Campaign, it's automatically wrapped with the SA360 Clickserver URL. + INTERNAL_TOOL = 12; + + // Types of changes that are not categorized, for example, + // changes made by coupon redemption through Google Ads. + OTHER = 13; + } + + +} diff --git a/google/ads/googleads/v8/enums/change_event_resource_type.proto b/google/ads/googleads/v8/enums/change_event_resource_type.proto new file mode 100644 index 000000000..47efa4a8c --- /dev/null +++ b/google/ads/googleads/v8/enums/change_event_resource_type.proto @@ -0,0 +1,94 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ChangeEventResourceTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing the resource types the ChangeEvent resource supports. + +// Container for enum describing supported resource types for the ChangeEvent +// resource. +message ChangeEventResourceTypeEnum { + // Enum listing the resource types support by the ChangeEvent resource. + enum ChangeEventResourceType { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified resource unknown + // in this version. + UNKNOWN = 1; + + // An Ad resource change. + AD = 2; + + // An AdGroup resource change. + AD_GROUP = 3; + + // An AdGroupCriterion resource change. + AD_GROUP_CRITERION = 4; + + // A Campaign resource change. + CAMPAIGN = 5; + + // A CampaignBudget resource change. + CAMPAIGN_BUDGET = 6; + + // An AdGroupBidModifier resource change. + AD_GROUP_BID_MODIFIER = 7; + + // A CampaignCriterion resource change. + CAMPAIGN_CRITERION = 8; + + // A Feed resource change. + FEED = 9; + + // A FeedItem resource change. + FEED_ITEM = 10; + + // A CampaignFeed resource change. + CAMPAIGN_FEED = 11; + + // An AdGroupFeed resource change. + AD_GROUP_FEED = 12; + + // An AdGroupAd resource change. + AD_GROUP_AD = 13; + + // An Asset resource change. + ASSET = 14; + + // A CustomerAsset resource change. + CUSTOMER_ASSET = 15; + + // A CampaignAsset resource change. + CAMPAIGN_ASSET = 16; + + // An AdGroupAsset resource change. + AD_GROUP_ASSET = 17; + } + + +} diff --git a/google/ads/googleads/v8/enums/change_status_operation.proto b/google/ads/googleads/v8/enums/change_status_operation.proto new file mode 100644 index 000000000..4acde1c50 --- /dev/null +++ b/google/ads/googleads/v8/enums/change_status_operation.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ChangeStatusOperationProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing the change status operations. + +// Container for enum describing operations for the ChangeStatus resource. +message ChangeStatusOperationEnum { + // Status of the changed resource + enum ChangeStatusOperation { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified resource unknown + // in this version. + UNKNOWN = 1; + + // The resource was created. + ADDED = 2; + + // The resource was modified. + CHANGED = 3; + + // The resource was removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/change_status_resource_type.proto b/google/ads/googleads/v8/enums/change_status_resource_type.proto new file mode 100644 index 000000000..9252e2bae --- /dev/null +++ b/google/ads/googleads/v8/enums/change_status_resource_type.proto @@ -0,0 +1,94 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ChangeStatusResourceTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing the resource types the ChangeStatus resource supports. + +// Container for enum describing supported resource types for the ChangeStatus +// resource. +message ChangeStatusResourceTypeEnum { + // Enum listing the resource types support by the ChangeStatus resource. + enum ChangeStatusResourceType { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified resource unknown + // in this version. + UNKNOWN = 1; + + // An AdGroup resource change. + AD_GROUP = 3; + + // An AdGroupAd resource change. + AD_GROUP_AD = 4; + + // An AdGroupCriterion resource change. + AD_GROUP_CRITERION = 5; + + // A Campaign resource change. + CAMPAIGN = 6; + + // A CampaignCriterion resource change. + CAMPAIGN_CRITERION = 7; + + // A Feed resource change. + FEED = 9; + + // A FeedItem resource change. + FEED_ITEM = 10; + + // An AdGroupFeed resource change. + AD_GROUP_FEED = 11; + + // A CampaignFeed resource change. + CAMPAIGN_FEED = 12; + + // An AdGroupBidModifier resource change. + AD_GROUP_BID_MODIFIER = 13; + + // A SharedSet resource change. + SHARED_SET = 14; + + // A CampaignSharedSet resource change. + CAMPAIGN_SHARED_SET = 15; + + // An Asset resource change. + ASSET = 16; + + // A CustomerAsset resource change. + CUSTOMER_ASSET = 17; + + // A CampaignAsset resource change. + CAMPAIGN_ASSET = 18; + + // An AdGroupAsset resource change. + AD_GROUP_ASSET = 19; + } + + +} diff --git a/google/ads/googleads/v8/enums/click_type.proto b/google/ads/googleads/v8/enums/click_type.proto new file mode 100644 index 000000000..8adb1a01c --- /dev/null +++ b/google/ads/googleads/v8/enums/click_type.proto @@ -0,0 +1,203 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ClickTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing click types. + +// Container for enumeration of Google Ads click types. +message ClickTypeEnum { + // Enumerates Google Ads click types. + enum ClickType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // App engagement ad deep link. + APP_DEEPLINK = 2; + + // Breadcrumbs. + BREADCRUMBS = 3; + + // Broadband Plan. + BROADBAND_PLAN = 4; + + // Manually dialed phone calls. + CALL_TRACKING = 5; + + // Phone calls. + CALLS = 6; + + // Click on engagement ad. + CLICK_ON_ENGAGEMENT_AD = 7; + + // Driving direction. + GET_DIRECTIONS = 8; + + // Get location details. + LOCATION_EXPANSION = 9; + + // Call. + LOCATION_FORMAT_CALL = 10; + + // Directions. + LOCATION_FORMAT_DIRECTIONS = 11; + + // Image(s). + LOCATION_FORMAT_IMAGE = 12; + + // Go to landing page. + LOCATION_FORMAT_LANDING_PAGE = 13; + + // Map. + LOCATION_FORMAT_MAP = 14; + + // Go to store info. + LOCATION_FORMAT_STORE_INFO = 15; + + // Text. + LOCATION_FORMAT_TEXT = 16; + + // Mobile phone calls. + MOBILE_CALL_TRACKING = 17; + + // Print offer. + OFFER_PRINTS = 18; + + // Other. + OTHER = 19; + + // Product plusbox offer. + PRODUCT_EXTENSION_CLICKS = 20; + + // Shopping - Product - Online. + PRODUCT_LISTING_AD_CLICKS = 21; + + // Sitelink. + SITELINKS = 22; + + // Show nearby locations. + STORE_LOCATOR = 23; + + // Headline. + URL_CLICKS = 25; + + // App store. + VIDEO_APP_STORE_CLICKS = 26; + + // Call-to-Action overlay. + VIDEO_CALL_TO_ACTION_CLICKS = 27; + + // Cards. + VIDEO_CARD_ACTION_HEADLINE_CLICKS = 28; + + // End cap. + VIDEO_END_CAP_CLICKS = 29; + + // Website. + VIDEO_WEBSITE_CLICKS = 30; + + // Visual Sitelinks. + VISUAL_SITELINKS = 31; + + // Wireless Plan. + WIRELESS_PLAN = 32; + + // Shopping - Product - Local. + PRODUCT_LISTING_AD_LOCAL = 33; + + // Shopping - Product - MultiChannel Local. + PRODUCT_LISTING_AD_MULTICHANNEL_LOCAL = 34; + + // Shopping - Product - MultiChannel Online. + PRODUCT_LISTING_AD_MULTICHANNEL_ONLINE = 35; + + // Shopping - Product - Coupon. + PRODUCT_LISTING_ADS_COUPON = 36; + + // Shopping - Product - Sell on Google. + PRODUCT_LISTING_AD_TRANSACTABLE = 37; + + // Shopping - Product - App engagement ad deep link. + PRODUCT_AD_APP_DEEPLINK = 38; + + // Shopping - Showcase - Category. + SHOWCASE_AD_CATEGORY_LINK = 39; + + // Shopping - Showcase - Local storefront. + SHOWCASE_AD_LOCAL_STOREFRONT_LINK = 40; + + // Shopping - Showcase - Online product. + SHOWCASE_AD_ONLINE_PRODUCT_LINK = 42; + + // Shopping - Showcase - Local product. + SHOWCASE_AD_LOCAL_PRODUCT_LINK = 43; + + // Promotion Extension. + PROMOTION_EXTENSION = 44; + + // Ad Headline. + SWIPEABLE_GALLERY_AD_HEADLINE = 45; + + // Swipes. + SWIPEABLE_GALLERY_AD_SWIPES = 46; + + // See More. + SWIPEABLE_GALLERY_AD_SEE_MORE = 47; + + // Sitelink 1. + SWIPEABLE_GALLERY_AD_SITELINK_ONE = 48; + + // Sitelink 2. + SWIPEABLE_GALLERY_AD_SITELINK_TWO = 49; + + // Sitelink 3. + SWIPEABLE_GALLERY_AD_SITELINK_THREE = 50; + + // Sitelink 4. + SWIPEABLE_GALLERY_AD_SITELINK_FOUR = 51; + + // Sitelink 5. + SWIPEABLE_GALLERY_AD_SITELINK_FIVE = 52; + + // Hotel price. + HOTEL_PRICE = 53; + + // Price Extension. + PRICE_EXTENSION = 54; + + // Book on Google hotel room selection. + HOTEL_BOOK_ON_GOOGLE_ROOM_SELECTION = 55; + + // Shopping - Comparison Listing. + SHOPPING_COMPARISON_LISTING = 56; + } + + +} diff --git a/google/ads/googleads/v8/enums/combined_audience_status.proto b/google/ads/googleads/v8/enums/combined_audience_status.proto new file mode 100644 index 000000000..4c58e6a3e --- /dev/null +++ b/google/ads/googleads/v8/enums/combined_audience_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CombinedAudienceStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing combined audience status. + +// The status of combined audience. +message CombinedAudienceStatusEnum { + // Enum containing possible combined audience status types. + enum CombinedAudienceStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Enabled status - combined audience is enabled and can be targeted. + ENABLED = 2; + + // Removed status - combined audience is removed and cannot be used for + // targeting. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/content_label_type.proto b/google/ads/googleads/v8/enums/content_label_type.proto new file mode 100644 index 000000000..3c69ac85d --- /dev/null +++ b/google/ads/googleads/v8/enums/content_label_type.proto @@ -0,0 +1,89 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ContentLabelTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing content label types. + +// Container for enum describing content label types in ContentLabel. +message ContentLabelTypeEnum { + // Enum listing the content label types supported by ContentLabel criterion. + enum ContentLabelType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Sexually suggestive content. + SEXUALLY_SUGGESTIVE = 2; + + // Below the fold placement. + BELOW_THE_FOLD = 3; + + // Parked domain. + PARKED_DOMAIN = 4; + + // Juvenile, gross & bizarre content. + JUVENILE = 6; + + // Profanity & rough language. + PROFANITY = 7; + + // Death & tragedy. + TRAGEDY = 8; + + // Video. + VIDEO = 9; + + // Content rating: G. + VIDEO_RATING_DV_G = 10; + + // Content rating: PG. + VIDEO_RATING_DV_PG = 11; + + // Content rating: T. + VIDEO_RATING_DV_T = 12; + + // Content rating: MA. + VIDEO_RATING_DV_MA = 13; + + // Content rating: not yet rated. + VIDEO_NOT_YET_RATED = 14; + + // Embedded video. + EMBEDDED_VIDEO = 15; + + // Live streaming video. + LIVE_STREAMING_VIDEO = 16; + + // Sensitive social issues. + SOCIAL_ISSUES = 17; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_action_category.proto b/google/ads/googleads/v8/enums/conversion_action_category.proto new file mode 100644 index 000000000..cf83f0ed7 --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_action_category.proto @@ -0,0 +1,106 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionCategoryProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum describing the category of conversions that are associated +// with a ConversionAction. +message ConversionActionCategoryEnum { + // The category of conversions that are associated with a ConversionAction. + enum ConversionActionCategory { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Default category. + DEFAULT = 2; + + // User visiting a page. + PAGE_VIEW = 3; + + // Purchase, sales, or "order placed" event. + PURCHASE = 4; + + // Signup user action. + SIGNUP = 5; + + // Lead-generating action. + LEAD = 6; + + // Software download action (as for an app). + DOWNLOAD = 7; + + // The addition of items to a shopping cart or bag on an advertiser site. + ADD_TO_CART = 8; + + // When someone enters the checkout flow on an advertiser site. + BEGIN_CHECKOUT = 9; + + // The start of a paid subscription for a product or service. + SUBSCRIBE_PAID = 10; + + // A call to indicate interest in an advertiser's offering. + PHONE_CALL_LEAD = 11; + + // A lead conversion imported from an external source into Google Ads. + IMPORTED_LEAD = 12; + + // A submission of a form on an advertiser site indicating business + // interest. + SUBMIT_LEAD_FORM = 13; + + // A booking of an appointment with an advertiser's business. + BOOK_APPOINTMENT = 14; + + // A quote or price estimate request. + REQUEST_QUOTE = 15; + + // A search for an advertiser's business location with intention to visit. + GET_DIRECTIONS = 16; + + // A click to an advertiser's partner's site. + OUTBOUND_CLICK = 17; + + // A call, SMS, email, chat or other type of contact to an advertiser. + CONTACT = 18; + + // A website engagement event such as long site time or a Google Analytics + // (GA) Smart Goal. Intended to be used for GA, Firebase, GA Gold goal + // imports. + ENGAGEMENT = 19; + + // A visit to a physical store location. + STORE_VISIT = 20; + + // A sale occurring in a physical store. + STORE_SALE = 21; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_action_counting_type.proto b/google/ads/googleads/v8/enums/conversion_action_counting_type.proto new file mode 100644 index 000000000..3461d50c8 --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_action_counting_type.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionCountingTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion action counting type. + +// Container for enum describing the conversion deduplication mode for +// conversion optimizer. +message ConversionActionCountingTypeEnum { + // Indicates how conversions for this action will be counted. For more + // information, see https://support.google.com/google-ads/answer/3438531. + enum ConversionActionCountingType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Count only one conversion per click. + ONE_PER_CLICK = 2; + + // Count all conversions per click. + MANY_PER_CLICK = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_action_status.proto b/google/ads/googleads/v8/enums/conversion_action_status.proto new file mode 100644 index 000000000..7b1be23db --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_action_status.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion action status. + +// Container for enum describing possible statuses of a conversion action. +message ConversionActionStatusEnum { + // Possible statuses of a conversion action. + enum ConversionActionStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversions will be recorded. + ENABLED = 2; + + // Conversions will not be recorded. + REMOVED = 3; + + // Conversions will not be recorded and the conversion action will not + // appear in the UI. + HIDDEN = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_action_type.proto b/google/ads/googleads/v8/enums/conversion_action_type.proto new file mode 100644 index 000000000..62bd9f7e3 --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_action_type.proto @@ -0,0 +1,174 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion action type. + +// Container for enum describing possible types of a conversion action. +message ConversionActionTypeEnum { + // Possible types of a conversion action. + enum ConversionActionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversions that occur when a user clicks on an ad's call extension. + AD_CALL = 2; + + // Conversions that occur when a user on a mobile device clicks a phone + // number. + CLICK_TO_CALL = 3; + + // Conversions that occur when a user downloads a mobile app from the Google + // Play Store. + GOOGLE_PLAY_DOWNLOAD = 4; + + // Conversions that occur when a user makes a purchase in an app through + // Android billing. + GOOGLE_PLAY_IN_APP_PURCHASE = 5; + + // Call conversions that are tracked by the advertiser and uploaded. + UPLOAD_CALLS = 6; + + // Conversions that are tracked by the advertiser and uploaded with + // attributed clicks. + UPLOAD_CLICKS = 7; + + // Conversions that occur on a webpage. + WEBPAGE = 8; + + // Conversions that occur when a user calls a dynamically-generated phone + // number from an advertiser's website. + WEBSITE_CALL = 9; + + // Store Sales conversion based on first-party or third-party merchant + // data uploads. + // Only customers on the allowlist can use store sales direct upload types. + STORE_SALES_DIRECT_UPLOAD = 10; + + // Store Sales conversion based on first-party or third-party merchant + // data uploads and/or from in-store purchases using cards from payment + // networks. + // Only customers on the allowlist can use store sales types. + // Read only. + STORE_SALES = 11; + + // Android app first open conversions tracked via Firebase. + FIREBASE_ANDROID_FIRST_OPEN = 12; + + // Android app in app purchase conversions tracked via Firebase. + FIREBASE_ANDROID_IN_APP_PURCHASE = 13; + + // Android app custom conversions tracked via Firebase. + FIREBASE_ANDROID_CUSTOM = 14; + + // iOS app first open conversions tracked via Firebase. + FIREBASE_IOS_FIRST_OPEN = 15; + + // iOS app in app purchase conversions tracked via Firebase. + FIREBASE_IOS_IN_APP_PURCHASE = 16; + + // iOS app custom conversions tracked via Firebase. + FIREBASE_IOS_CUSTOM = 17; + + // Android app first open conversions tracked via Third Party App Analytics. + THIRD_PARTY_APP_ANALYTICS_ANDROID_FIRST_OPEN = 18; + + // Android app in app purchase conversions tracked via Third Party App + // Analytics. + THIRD_PARTY_APP_ANALYTICS_ANDROID_IN_APP_PURCHASE = 19; + + // Android app custom conversions tracked via Third Party App Analytics. + THIRD_PARTY_APP_ANALYTICS_ANDROID_CUSTOM = 20; + + // iOS app first open conversions tracked via Third Party App Analytics. + THIRD_PARTY_APP_ANALYTICS_IOS_FIRST_OPEN = 21; + + // iOS app in app purchase conversions tracked via Third Party App + // Analytics. + THIRD_PARTY_APP_ANALYTICS_IOS_IN_APP_PURCHASE = 22; + + // iOS app custom conversions tracked via Third Party App Analytics. + THIRD_PARTY_APP_ANALYTICS_IOS_CUSTOM = 23; + + // Conversions that occur when a user pre-registers a mobile app from the + // Google Play Store. Read only. + ANDROID_APP_PRE_REGISTRATION = 24; + + // Conversions that track all Google Play downloads which aren't tracked + // by an app-specific type. Read only. + ANDROID_INSTALLS_ALL_OTHER_APPS = 25; + + // Floodlight activity that counts the number of times that users have + // visited a particular webpage after seeing or clicking on one of + // an advertiser's ads. Read only. + FLOODLIGHT_ACTION = 26; + + // Floodlight activity that tracks the number of sales made or the number + // of items purchased. Can also capture the total value of each sale. + // Read only. + FLOODLIGHT_TRANSACTION = 27; + + // Conversions that track local actions from Google's products and + // services after interacting with an ad. Read only. + GOOGLE_HOSTED = 28; + + // Conversions reported when a user submits a lead form. Read only. + LEAD_FORM_SUBMIT = 29; + + // Conversions that come from Salesforce. Read only. + SALESFORCE = 30; + + // Conversions imported from Search Ads 360 Floodlight data. Read only. + SEARCH_ADS_360 = 31; + + // Call conversions that occur on Smart campaign Ads without call tracking + // setup, using Smart campaign custom criteria. Read only. + SMART_CAMPAIGN_AD_CLICKS_TO_CALL = 32; + + // The user clicks on a call element within Google Maps. Smart campaign + // only. Read only. + SMART_CAMPAIGN_MAP_CLICKS_TO_CALL = 33; + + // The user requests directions to a business location within Google Maps. + // Smart campaign only. Read only. + SMART_CAMPAIGN_MAP_DIRECTIONS = 34; + + // Call conversions that occur on Smart campaign Ads with call tracking + // setup, using Smart campaign custom criteria. Read only. + SMART_CAMPAIGN_TRACKED_CALLS = 35; + + // Conversions that occur when a user visits an advertiser's retail store. + // Read only. + STORE_VISITS = 36; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_adjustment_type.proto b/google/ads/googleads/v8/enums/conversion_adjustment_type.proto new file mode 100644 index 000000000..e1143eab3 --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_adjustment_type.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionAdjustmentTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion adjustment type. + +// Container for enum describing conversion adjustment types. +message ConversionAdjustmentTypeEnum { + // The different actions advertisers can take to adjust the conversions that + // they already reported. Retractions negate a conversion. Restatements change + // the value of a conversion. + enum ConversionAdjustmentType { + // Not specified. + UNSPECIFIED = 0; + + // Represents value unknown in this version. + UNKNOWN = 1; + + // Negates a conversion so that its total value and count are both zero. + RETRACTION = 2; + + // Changes the value of a conversion. + RESTATEMENT = 3; + + // Supplements an existing conversion with provided user identifiers and + // user agent, which can be used by Google to enhance the conversion count. + ENHANCEMENT = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_attribution_event_type.proto b/google/ads/googleads/v8/enums/conversion_attribution_event_type.proto new file mode 100644 index 000000000..fd27860c4 --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_attribution_event_type.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionAttributionEventTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum indicating the event type the conversion is attributed to. +message ConversionAttributionEventTypeEnum { + // The event type of conversions that are attributed to. + enum ConversionAttributionEventType { + // Not specified. + UNSPECIFIED = 0; + + // Represents value unknown in this version. + UNKNOWN = 1; + + // The conversion is attributed to an impression. + IMPRESSION = 2; + + // The conversion is attributed to an interaction. + INTERACTION = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_custom_variable_status.proto b/google/ads/googleads/v8/enums/conversion_custom_variable_status.proto new file mode 100644 index 000000000..770a4ea42 --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_custom_variable_status.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionCustomVariableStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion custom variable status. + +// Container for enum describing possible statuses of a conversion custom +// variable. +message ConversionCustomVariableStatusEnum { + // Possible statuses of a conversion custom variable. + enum ConversionCustomVariableStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The conversion custom variable is pending activation and will not + // accrue stats until set to ENABLED. + // + // This status can't be used in CREATE and UPDATE requests. + ACTIVATION_NEEDED = 2; + + // The conversion custom variable is enabled and will accrue stats. + ENABLED = 3; + + // The conversion custom variable is paused and will not accrue stats + // until set to ENABLED again. + PAUSED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_lag_bucket.proto b/google/ads/googleads/v8/enums/conversion_lag_bucket.proto new file mode 100644 index 000000000..d412716a6 --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_lag_bucket.proto @@ -0,0 +1,117 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionLagBucketProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum representing the number of days between impression and +// conversion. +message ConversionLagBucketEnum { + // Enum representing the number of days between impression and conversion. + enum ConversionLagBucket { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversion lag bucket from 0 to 1 day. 0 day is included, 1 day is not. + LESS_THAN_ONE_DAY = 2; + + // Conversion lag bucket from 1 to 2 days. 1 day is included, 2 days is not. + ONE_TO_TWO_DAYS = 3; + + // Conversion lag bucket from 2 to 3 days. 2 days is included, + // 3 days is not. + TWO_TO_THREE_DAYS = 4; + + // Conversion lag bucket from 3 to 4 days. 3 days is included, + // 4 days is not. + THREE_TO_FOUR_DAYS = 5; + + // Conversion lag bucket from 4 to 5 days. 4 days is included, + // 5 days is not. + FOUR_TO_FIVE_DAYS = 6; + + // Conversion lag bucket from 5 to 6 days. 5 days is included, + // 6 days is not. + FIVE_TO_SIX_DAYS = 7; + + // Conversion lag bucket from 6 to 7 days. 6 days is included, + // 7 days is not. + SIX_TO_SEVEN_DAYS = 8; + + // Conversion lag bucket from 7 to 8 days. 7 days is included, + // 8 days is not. + SEVEN_TO_EIGHT_DAYS = 9; + + // Conversion lag bucket from 8 to 9 days. 8 days is included, + // 9 days is not. + EIGHT_TO_NINE_DAYS = 10; + + // Conversion lag bucket from 9 to 10 days. 9 days is included, + // 10 days is not. + NINE_TO_TEN_DAYS = 11; + + // Conversion lag bucket from 10 to 11 days. 10 days is included, + // 11 days is not. + TEN_TO_ELEVEN_DAYS = 12; + + // Conversion lag bucket from 11 to 12 days. 11 days is included, + // 12 days is not. + ELEVEN_TO_TWELVE_DAYS = 13; + + // Conversion lag bucket from 12 to 13 days. 12 days is included, + // 13 days is not. + TWELVE_TO_THIRTEEN_DAYS = 14; + + // Conversion lag bucket from 13 to 14 days. 13 days is included, + // 14 days is not. + THIRTEEN_TO_FOURTEEN_DAYS = 15; + + // Conversion lag bucket from 14 to 21 days. 14 days is included, + // 21 days is not. + FOURTEEN_TO_TWENTY_ONE_DAYS = 16; + + // Conversion lag bucket from 21 to 30 days. 21 days is included, + // 30 days is not. + TWENTY_ONE_TO_THIRTY_DAYS = 17; + + // Conversion lag bucket from 30 to 45 days. 30 days is included, + // 45 days is not. + THIRTY_TO_FORTY_FIVE_DAYS = 18; + + // Conversion lag bucket from 45 to 60 days. 45 days is included, + // 60 days is not. + FORTY_FIVE_TO_SIXTY_DAYS = 19; + + // Conversion lag bucket from 60 to 90 days. 60 days is included, + // 90 days is not. + SIXTY_TO_NINETY_DAYS = 20; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_or_adjustment_lag_bucket.proto b/google/ads/googleads/v8/enums/conversion_or_adjustment_lag_bucket.proto new file mode 100644 index 000000000..daa856d2c --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_or_adjustment_lag_bucket.proto @@ -0,0 +1,206 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionOrAdjustmentLagBucketProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum representing the number of days between the impression and +// the conversion or between the impression and adjustments to the conversion. +message ConversionOrAdjustmentLagBucketEnum { + // Enum representing the number of days between the impression and the + // conversion or between the impression and adjustments to the conversion. + enum ConversionOrAdjustmentLagBucket { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversion lag bucket from 0 to 1 day. 0 day is included, 1 day is not. + CONVERSION_LESS_THAN_ONE_DAY = 2; + + // Conversion lag bucket from 1 to 2 days. 1 day is included, 2 days is not. + CONVERSION_ONE_TO_TWO_DAYS = 3; + + // Conversion lag bucket from 2 to 3 days. 2 days is included, + // 3 days is not. + CONVERSION_TWO_TO_THREE_DAYS = 4; + + // Conversion lag bucket from 3 to 4 days. 3 days is included, + // 4 days is not. + CONVERSION_THREE_TO_FOUR_DAYS = 5; + + // Conversion lag bucket from 4 to 5 days. 4 days is included, + // 5 days is not. + CONVERSION_FOUR_TO_FIVE_DAYS = 6; + + // Conversion lag bucket from 5 to 6 days. 5 days is included, + // 6 days is not. + CONVERSION_FIVE_TO_SIX_DAYS = 7; + + // Conversion lag bucket from 6 to 7 days. 6 days is included, + // 7 days is not. + CONVERSION_SIX_TO_SEVEN_DAYS = 8; + + // Conversion lag bucket from 7 to 8 days. 7 days is included, + // 8 days is not. + CONVERSION_SEVEN_TO_EIGHT_DAYS = 9; + + // Conversion lag bucket from 8 to 9 days. 8 days is included, + // 9 days is not. + CONVERSION_EIGHT_TO_NINE_DAYS = 10; + + // Conversion lag bucket from 9 to 10 days. 9 days is included, + // 10 days is not. + CONVERSION_NINE_TO_TEN_DAYS = 11; + + // Conversion lag bucket from 10 to 11 days. 10 days is included, + // 11 days is not. + CONVERSION_TEN_TO_ELEVEN_DAYS = 12; + + // Conversion lag bucket from 11 to 12 days. 11 days is included, + // 12 days is not. + CONVERSION_ELEVEN_TO_TWELVE_DAYS = 13; + + // Conversion lag bucket from 12 to 13 days. 12 days is included, + // 13 days is not. + CONVERSION_TWELVE_TO_THIRTEEN_DAYS = 14; + + // Conversion lag bucket from 13 to 14 days. 13 days is included, + // 14 days is not. + CONVERSION_THIRTEEN_TO_FOURTEEN_DAYS = 15; + + // Conversion lag bucket from 14 to 21 days. 14 days is included, + // 21 days is not. + CONVERSION_FOURTEEN_TO_TWENTY_ONE_DAYS = 16; + + // Conversion lag bucket from 21 to 30 days. 21 days is included, + // 30 days is not. + CONVERSION_TWENTY_ONE_TO_THIRTY_DAYS = 17; + + // Conversion lag bucket from 30 to 45 days. 30 days is included, + // 45 days is not. + CONVERSION_THIRTY_TO_FORTY_FIVE_DAYS = 18; + + // Conversion lag bucket from 45 to 60 days. 45 days is included, + // 60 days is not. + CONVERSION_FORTY_FIVE_TO_SIXTY_DAYS = 19; + + // Conversion lag bucket from 60 to 90 days. 60 days is included, + // 90 days is not. + CONVERSION_SIXTY_TO_NINETY_DAYS = 20; + + // Conversion adjustment lag bucket from 0 to 1 day. 0 day is included, + // 1 day is not. + ADJUSTMENT_LESS_THAN_ONE_DAY = 21; + + // Conversion adjustment lag bucket from 1 to 2 days. 1 day is included, + // 2 days is not. + ADJUSTMENT_ONE_TO_TWO_DAYS = 22; + + // Conversion adjustment lag bucket from 2 to 3 days. 2 days is included, + // 3 days is not. + ADJUSTMENT_TWO_TO_THREE_DAYS = 23; + + // Conversion adjustment lag bucket from 3 to 4 days. 3 days is included, + // 4 days is not. + ADJUSTMENT_THREE_TO_FOUR_DAYS = 24; + + // Conversion adjustment lag bucket from 4 to 5 days. 4 days is included, + // 5 days is not. + ADJUSTMENT_FOUR_TO_FIVE_DAYS = 25; + + // Conversion adjustment lag bucket from 5 to 6 days. 5 days is included, + // 6 days is not. + ADJUSTMENT_FIVE_TO_SIX_DAYS = 26; + + // Conversion adjustment lag bucket from 6 to 7 days. 6 days is included, + // 7 days is not. + ADJUSTMENT_SIX_TO_SEVEN_DAYS = 27; + + // Conversion adjustment lag bucket from 7 to 8 days. 7 days is included, + // 8 days is not. + ADJUSTMENT_SEVEN_TO_EIGHT_DAYS = 28; + + // Conversion adjustment lag bucket from 8 to 9 days. 8 days is included, + // 9 days is not. + ADJUSTMENT_EIGHT_TO_NINE_DAYS = 29; + + // Conversion adjustment lag bucket from 9 to 10 days. 9 days is included, + // 10 days is not. + ADJUSTMENT_NINE_TO_TEN_DAYS = 30; + + // Conversion adjustment lag bucket from 10 to 11 days. 10 days is included, + // 11 days is not. + ADJUSTMENT_TEN_TO_ELEVEN_DAYS = 31; + + // Conversion adjustment lag bucket from 11 to 12 days. 11 days is included, + // 12 days is not. + ADJUSTMENT_ELEVEN_TO_TWELVE_DAYS = 32; + + // Conversion adjustment lag bucket from 12 to 13 days. 12 days is included, + // 13 days is not. + ADJUSTMENT_TWELVE_TO_THIRTEEN_DAYS = 33; + + // Conversion adjustment lag bucket from 13 to 14 days. 13 days is included, + // 14 days is not. + ADJUSTMENT_THIRTEEN_TO_FOURTEEN_DAYS = 34; + + // Conversion adjustment lag bucket from 14 to 21 days. 14 days is included, + // 21 days is not. + ADJUSTMENT_FOURTEEN_TO_TWENTY_ONE_DAYS = 35; + + // Conversion adjustment lag bucket from 21 to 30 days. 21 days is included, + // 30 days is not. + ADJUSTMENT_TWENTY_ONE_TO_THIRTY_DAYS = 36; + + // Conversion adjustment lag bucket from 30 to 45 days. 30 days is included, + // 45 days is not. + ADJUSTMENT_THIRTY_TO_FORTY_FIVE_DAYS = 37; + + // Conversion adjustment lag bucket from 45 to 60 days. 45 days is included, + // 60 days is not. + ADJUSTMENT_FORTY_FIVE_TO_SIXTY_DAYS = 38; + + // Conversion adjustment lag bucket from 60 to 90 days. 60 days is included, + // 90 days is not. + ADJUSTMENT_SIXTY_TO_NINETY_DAYS = 39; + + // Conversion adjustment lag bucket from 90 to 145 days. 90 days is + // included, 145 days is not. + ADJUSTMENT_NINETY_TO_ONE_HUNDRED_AND_FORTY_FIVE_DAYS = 40; + + // Conversion lag bucket UNKNOWN. This is for dates before conversion lag + // bucket was available in Google Ads. + CONVERSION_UNKNOWN = 41; + + // Conversion adjustment lag bucket UNKNOWN. This is for dates before + // conversion adjustment lag bucket was available in Google Ads. + ADJUSTMENT_UNKNOWN = 42; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_value_rule_primary_dimension.proto b/google/ads/googleads/v8/enums/conversion_value_rule_primary_dimension.proto new file mode 100644 index 000000000..47cefb380 --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_value_rule_primary_dimension.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRulePrimaryDimensionProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion value rule primary dimension. + +// Container for enum describing value rule primary dimension for stats. +message ConversionValueRulePrimaryDimensionEnum { + // Identifies the primary dimension for conversion value rule stats. + enum ConversionValueRulePrimaryDimension { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // For no-value-rule-applied conversions after value rule is enabled. + NO_RULE_APPLIED = 2; + + // Below are for value-rule-applied conversions: + // The original stats. + ORIGINAL = 3; + + // When a new or returning customer condition is satisfied. + NEW_VS_RETURNING_USER = 4; + + // When a query-time Geo location condition is satisfied. + GEO_LOCATION = 5; + + // When a query-time browsing device condition is satisfied. + DEVICE = 6; + + // When a query-time audience condition is satisfied. + AUDIENCE = 7; + + // When multiple rules are applied. + MULTIPLE = 8; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_value_rule_set_status.proto b/google/ads/googleads/v8/enums/conversion_value_rule_set_status.proto new file mode 100644 index 000000000..22327a5bb --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_value_rule_set_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleSetStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion value rule set status. + +// Container for enum describing possible statuses of a conversion value rule +// set. +message ConversionValueRuleSetStatusEnum { + // Possible statuses of a conversion value rule set. + enum ConversionValueRuleSetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversion Value Rule Set is enabled and can be applied. + ENABLED = 2; + + // Conversion Value Rule Set is permanently deleted and can't be applied. + REMOVED = 3; + + // Conversion Value Rule Set is paused and won't be applied. It can be + // enabled again. + PAUSED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/conversion_value_rule_status.proto b/google/ads/googleads/v8/enums/conversion_value_rule_status.proto new file mode 100644 index 000000000..a9e7aa4c5 --- /dev/null +++ b/google/ads/googleads/v8/enums/conversion_value_rule_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion value rule status. + +// Container for enum describing possible statuses of a conversion value rule. +message ConversionValueRuleStatusEnum { + // Possible statuses of a conversion value rule. + enum ConversionValueRuleStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversion Value Rule is enabled and can be applied. + ENABLED = 2; + + // Conversion Value Rule is permanently deleted and can't be applied. + REMOVED = 3; + + // Conversion Value Rule is paused, but can be re-enabled. + PAUSED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/criterion_category_channel_availability_mode.proto b/google/ads/googleads/v8/enums/criterion_category_channel_availability_mode.proto new file mode 100644 index 000000000..cb60574f7 --- /dev/null +++ b/google/ads/googleads/v8/enums/criterion_category_channel_availability_mode.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CriterionCategoryChannelAvailabilityModeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing the criterion category channel availability mode. + +// Describes channel availability mode for a criterion availability - whether +// the availability is meant to include all advertising channels, or a +// particular channel with all its channel subtypes, or a channel with a certain +// subset of channel subtypes. +message CriterionCategoryChannelAvailabilityModeEnum { + // Enum containing the possible CriterionCategoryChannelAvailabilityMode. + enum CriterionCategoryChannelAvailabilityMode { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The category is available to campaigns of all channel types and subtypes. + ALL_CHANNELS = 2; + + // The category is available to campaigns of a specific channel type, + // including all subtypes under it. + CHANNEL_TYPE_AND_ALL_SUBTYPES = 3; + + // The category is available to campaigns of a specific channel type and + // subtype(s). + CHANNEL_TYPE_AND_SUBSET_SUBTYPES = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/criterion_category_locale_availability_mode.proto b/google/ads/googleads/v8/enums/criterion_category_locale_availability_mode.proto new file mode 100644 index 000000000..c3be98fb9 --- /dev/null +++ b/google/ads/googleads/v8/enums/criterion_category_locale_availability_mode.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CriterionCategoryLocaleAvailabilityModeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing the criterion category locale availability mode. + +// Describes locale availability mode for a criterion availability - whether +// it's available globally, or a particular country with all languages, or a +// particular language with all countries, or a country-language pair. +message CriterionCategoryLocaleAvailabilityModeEnum { + // Enum containing the possible CriterionCategoryLocaleAvailabilityMode. + enum CriterionCategoryLocaleAvailabilityMode { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The category is available to campaigns of all locales. + ALL_LOCALES = 2; + + // The category is available to campaigns within a list of countries, + // regardless of language. + COUNTRY_AND_ALL_LANGUAGES = 3; + + // The category is available to campaigns within a list of languages, + // regardless of country. + LANGUAGE_AND_ALL_COUNTRIES = 4; + + // The category is available to campaigns within a list of country, language + // pairs. + COUNTRY_AND_LANGUAGE = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/criterion_system_serving_status.proto b/google/ads/googleads/v8/enums/criterion_system_serving_status.proto new file mode 100644 index 000000000..723f6234f --- /dev/null +++ b/google/ads/googleads/v8/enums/criterion_system_serving_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CriterionSystemServingStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing approval status for the criterion. + +// Container for enum describing possible criterion system serving statuses. +message CriterionSystemServingStatusEnum { + // Enumerates criterion system serving statuses. + enum CriterionSystemServingStatus { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Eligible. + ELIGIBLE = 2; + + // Low search volume. + RARELY_SERVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/criterion_type.proto b/google/ads/googleads/v8/enums/criterion_type.proto new file mode 100644 index 000000000..2f9104250 --- /dev/null +++ b/google/ads/googleads/v8/enums/criterion_type.proto @@ -0,0 +1,143 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CriterionTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing criteria types. + +// The possible types of a criterion. +message CriterionTypeEnum { + // Enum describing possible criterion types. + enum CriterionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Keyword. e.g. 'mars cruise'. + KEYWORD = 2; + + // Placement, aka Website. e.g. 'www.flowers4sale.com' + PLACEMENT = 3; + + // Mobile application categories to target. + MOBILE_APP_CATEGORY = 4; + + // Mobile applications to target. + MOBILE_APPLICATION = 5; + + // Devices to target. + DEVICE = 6; + + // Locations to target. + LOCATION = 7; + + // Listing groups to target. + LISTING_GROUP = 8; + + // Ad Schedule. + AD_SCHEDULE = 9; + + // Age range. + AGE_RANGE = 10; + + // Gender. + GENDER = 11; + + // Income Range. + INCOME_RANGE = 12; + + // Parental status. + PARENTAL_STATUS = 13; + + // YouTube Video. + YOUTUBE_VIDEO = 14; + + // YouTube Channel. + YOUTUBE_CHANNEL = 15; + + // User list. + USER_LIST = 16; + + // Proximity. + PROXIMITY = 17; + + // A topic target on the display network (e.g. "Pets & Animals"). + TOPIC = 18; + + // Listing scope to target. + LISTING_SCOPE = 19; + + // Language. + LANGUAGE = 20; + + // IpBlock. + IP_BLOCK = 21; + + // Content Label for category exclusion. + CONTENT_LABEL = 22; + + // Carrier. + CARRIER = 23; + + // A category the user is interested in. + USER_INTEREST = 24; + + // Webpage criterion for dynamic search ads. + WEBPAGE = 25; + + // Operating system version. + OPERATING_SYSTEM_VERSION = 26; + + // App payment model. + APP_PAYMENT_MODEL = 27; + + // Mobile device. + MOBILE_DEVICE = 28; + + // Custom affinity. + CUSTOM_AFFINITY = 29; + + // Custom intent. + CUSTOM_INTENT = 30; + + // Location group. + LOCATION_GROUP = 31; + + // Custom audience + CUSTOM_AUDIENCE = 32; + + // Combined audience + COMBINED_AUDIENCE = 33; + + // Smart Campaign keyword theme + KEYWORD_THEME = 34; + } + + +} diff --git a/google/ads/googleads/v8/enums/custom_audience_member_type.proto b/google/ads/googleads/v8/enums/custom_audience_member_type.proto new file mode 100644 index 000000000..b2850eb63 --- /dev/null +++ b/google/ads/googleads/v8/enums/custom_audience_member_type.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceMemberTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing custom audience member type. + +// The type of custom audience member. +message CustomAudienceMemberTypeEnum { + // Enum containing possible custom audience member types. + enum CustomAudienceMemberType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Users whose interests or actions are described by a keyword. + KEYWORD = 2; + + // Users who have interests related to the website's content. + URL = 3; + + // Users who visit place types described by a place category. + PLACE_CATEGORY = 4; + + // Users who have installed a mobile app. + APP = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/custom_audience_status.proto b/google/ads/googleads/v8/enums/custom_audience_status.proto new file mode 100644 index 000000000..c4eb15557 --- /dev/null +++ b/google/ads/googleads/v8/enums/custom_audience_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing custom audience status. + +// The status of custom audience. +message CustomAudienceStatusEnum { + // Enum containing possible custom audience statuses. + enum CustomAudienceStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Enabled status - custom audience is enabled and can be targeted. + ENABLED = 2; + + // Removed status - custom audience is removed and cannot be used for + // targeting. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/custom_audience_type.proto b/google/ads/googleads/v8/enums/custom_audience_type.proto new file mode 100644 index 000000000..fc64ba4f6 --- /dev/null +++ b/google/ads/googleads/v8/enums/custom_audience_type.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing custom audience type. + +// The types of custom audience. +message CustomAudienceTypeEnum { + // Enum containing possible custom audience types. + enum CustomAudienceType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Google Ads will auto-select the best interpretation at serving + // time. + AUTO = 2; + + // Matches users by their interests. + INTEREST = 3; + + // Matches users by topics they are researching or products they are + // considering for purchase. + PURCHASE_INTENT = 4; + + // Matches users by what they searched on Google Search. + SEARCH = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/custom_interest_member_type.proto b/google/ads/googleads/v8/enums/custom_interest_member_type.proto new file mode 100644 index 000000000..fad33dbb7 --- /dev/null +++ b/google/ads/googleads/v8/enums/custom_interest_member_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestMemberTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing custom interest member type. + +// The types of custom interest member, either KEYWORD or URL. +message CustomInterestMemberTypeEnum { + // Enum containing possible custom interest member types. + enum CustomInterestMemberType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Custom interest member type KEYWORD. + KEYWORD = 2; + + // Custom interest member type URL. + URL = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/custom_interest_status.proto b/google/ads/googleads/v8/enums/custom_interest_status.proto new file mode 100644 index 000000000..1ebafa63a --- /dev/null +++ b/google/ads/googleads/v8/enums/custom_interest_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing custom interest status. + +// The status of custom interest. +message CustomInterestStatusEnum { + // Enum containing possible custom interest types. + enum CustomInterestStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Enabled status - custom interest is enabled and can be targeted to. + ENABLED = 2; + + // Removed status - custom interest is removed and cannot be used for + // targeting. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/custom_interest_type.proto b/google/ads/googleads/v8/enums/custom_interest_type.proto new file mode 100644 index 000000000..13144b663 --- /dev/null +++ b/google/ads/googleads/v8/enums/custom_interest_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing custom interest type. + +// The types of custom interest. +message CustomInterestTypeEnum { + // Enum containing possible custom interest types. + enum CustomInterestType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Allows brand advertisers to define custom affinity audience lists. + CUSTOM_AFFINITY = 2; + + // Allows advertisers to define custom intent audience lists. + CUSTOM_INTENT = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/custom_placeholder_field.proto b/google/ads/googleads/v8/enums/custom_placeholder_field.proto new file mode 100644 index 000000000..7116a09aa --- /dev/null +++ b/google/ads/googleads/v8/enums/custom_placeholder_field.proto @@ -0,0 +1,129 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Custom placeholder fields. + +// Values for Custom placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message CustomPlaceholderFieldEnum { + // Possible values for Custom placeholder fields. + enum CustomPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Combination ID and ID2 must be unique per + // offer. + ID = 2; + + // Data Type: STRING. Combination ID and ID2 must be unique per offer. + ID2 = 3; + + // Data Type: STRING. Required. Main headline with product name to be shown + // in dynamic ad. + ITEM_TITLE = 4; + + // Data Type: STRING. Optional text to be shown in the image ad. + ITEM_SUBTITLE = 5; + + // Data Type: STRING. Optional description of the product to be shown in the + // ad. + ITEM_DESCRIPTION = 6; + + // Data Type: STRING. Full address of your offer or service, including + // postal code. This will be used to identify the closest product to the + // user when there are multiple offers in the feed that are relevant to the + // user. + ITEM_ADDRESS = 7; + + // Data Type: STRING. Price to be shown in the ad. + // Example: "100.00 USD" + PRICE = 8; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 9; + + // Data Type: STRING. Sale price to be shown in the ad. + // Example: "80.00 USD" + SALE_PRICE = 10; + + // Data Type: STRING. Formatted sale price to be shown in the ad. + // Example: "On sale for $80.00", "$60 - $80" + FORMATTED_SALE_PRICE = 11; + + // Data Type: URL. Image to be displayed in the ad. Highly recommended for + // image ads. + IMAGE_URL = 12; + + // Data Type: STRING. Used as a recommendation engine signal to serve items + // in the same category. + ITEM_CATEGORY = 13; + + // Data Type: URL_LIST. Final URLs for the ad when using Upgraded + // URLs. User will be redirected to these URLs when they click on an ad, or + // when they click on a specific product for ads that have multiple + // products. + FINAL_URLS = 14; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 15; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 16; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 17; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 18; + + // Data Type: STRING_LIST. List of recommended IDs to show together with + // this item. + SIMILAR_IDS = 19; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 20; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 21; + } + + +} diff --git a/google/ads/googleads/v8/enums/customer_match_upload_key_type.proto b/google/ads/googleads/v8/enums/customer_match_upload_key_type.proto new file mode 100644 index 000000000..de2566ce6 --- /dev/null +++ b/google/ads/googleads/v8/enums/customer_match_upload_key_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomerMatchUploadKeyTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Indicates what type of data are the user list's members matched from. +message CustomerMatchUploadKeyTypeEnum { + // Enum describing possible customer match upload key types. + enum CustomerMatchUploadKeyType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Members are matched from customer info such as email address, phone + // number or physical address. + CONTACT_INFO = 2; + + // Members are matched from a user id generated and assigned by the + // advertiser. + CRM_ID = 3; + + // Members are matched from mobile advertising ids. + MOBILE_ADVERTISING_ID = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/customer_pay_per_conversion_eligibility_failure_reason.proto b/google/ads/googleads/v8/enums/customer_pay_per_conversion_eligibility_failure_reason.proto new file mode 100644 index 000000000..8a698d564 --- /dev/null +++ b/google/ads/googleads/v8/enums/customer_pay_per_conversion_eligibility_failure_reason.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomerPayPerConversionEligibilityFailureReasonProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing pay per conversion eligibility failure reasons. + +// Container for enum describing reasons why a customer is not eligible to use +// PaymentMode.CONVERSIONS. +message CustomerPayPerConversionEligibilityFailureReasonEnum { + // Enum describing possible reasons a customer is not eligible to use + // PaymentMode.CONVERSIONS. + enum CustomerPayPerConversionEligibilityFailureReason { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Customer does not have enough conversions. + NOT_ENOUGH_CONVERSIONS = 2; + + // Customer's conversion lag is too high. + CONVERSION_LAG_TOO_HIGH = 3; + + // Customer uses shared budgets. + HAS_CAMPAIGN_WITH_SHARED_BUDGET = 4; + + // Customer has conversions with ConversionActionType.UPLOAD_CLICKS. + HAS_UPLOAD_CLICKS_CONVERSION = 5; + + // Customer's average daily spend is too high. + AVERAGE_DAILY_SPEND_TOO_HIGH = 6; + + // Customer's eligibility has not yet been calculated by the Google Ads + // backend. Check back soon. + ANALYSIS_NOT_COMPLETE = 7; + + // Customer is not eligible due to other reasons. + OTHER = 8; + } + + +} diff --git a/google/ads/googleads/v8/enums/data_driven_model_status.proto b/google/ads/googleads/v8/enums/data_driven_model_status.proto new file mode 100644 index 000000000..091f0f4a3 --- /dev/null +++ b/google/ads/googleads/v8/enums/data_driven_model_status.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DataDrivenModelStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing data-driven model status. + +// Container for enum indicating data driven model status. +message DataDrivenModelStatusEnum { + // Enumerates data driven model statuses. + enum DataDrivenModelStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The data driven model is available. + AVAILABLE = 2; + + // The data driven model is stale. It hasn't been updated for at least 7 + // days. It is still being used, but will become expired if it does not get + // updated for 30 days. + STALE = 3; + + // The data driven model expired. It hasn't been updated for at least 30 + // days and cannot be used. Most commonly this is because there hasn't been + // the required number of events in a recent 30-day period. + EXPIRED = 4; + + // The data driven model has never been generated. Most commonly this is + // because there has never been the required number of events in any 30-day + // period. + NEVER_GENERATED = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/day_of_week.proto b/google/ads/googleads/v8/enums/day_of_week.proto new file mode 100644 index 000000000..54f8336c5 --- /dev/null +++ b/google/ads/googleads/v8/enums/day_of_week.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DayOfWeekProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing days of week. + +// Container for enumeration of days of the week, e.g., "Monday". +message DayOfWeekEnum { + // Enumerates days of the week, e.g., "Monday". + enum DayOfWeek { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Monday. + MONDAY = 2; + + // Tuesday. + TUESDAY = 3; + + // Wednesday. + WEDNESDAY = 4; + + // Thursday. + THURSDAY = 5; + + // Friday. + FRIDAY = 6; + + // Saturday. + SATURDAY = 7; + + // Sunday. + SUNDAY = 8; + } + + +} diff --git a/google/ads/googleads/v8/enums/device.proto b/google/ads/googleads/v8/enums/device.proto new file mode 100644 index 000000000..bd177c4ac --- /dev/null +++ b/google/ads/googleads/v8/enums/device.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DeviceProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing devices. + +// Container for enumeration of Google Ads devices available for targeting. +message DeviceEnum { + // Enumerates Google Ads devices available for targeting. + enum Device { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Mobile devices with full browsers. + MOBILE = 2; + + // Tablets with full browsers. + TABLET = 3; + + // Computers. + DESKTOP = 4; + + // Smart TVs and game consoles. + CONNECTED_TV = 6; + + // Other device types. + OTHER = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/display_ad_format_setting.proto b/google/ads/googleads/v8/enums/display_ad_format_setting.proto new file mode 100644 index 000000000..aed99640c --- /dev/null +++ b/google/ads/googleads/v8/enums/display_ad_format_setting.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DisplayAdFormatSettingProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing display ad format settings. + +// Container for display ad format settings. +message DisplayAdFormatSettingEnum { + // Enumerates display ad format settings. + enum DisplayAdFormatSetting { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Text, image and native formats. + ALL_FORMATS = 2; + + // Text and image formats. + NON_NATIVE = 3; + + // Native format, i.e. the format rendering is controlled by the publisher + // and not by Google. + NATIVE = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/display_upload_product_type.proto b/google/ads/googleads/v8/enums/display_upload_product_type.proto new file mode 100644 index 000000000..c1f4baf00 --- /dev/null +++ b/google/ads/googleads/v8/enums/display_upload_product_type.proto @@ -0,0 +1,97 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DisplayUploadProductTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing display upload product types. + +// Container for display upload product types. Product types that have the word +// "DYNAMIC" in them must be associated with a campaign that has a dynamic +// remarketing feed. See https://support.google.com/google-ads/answer/6053288 +// for more info about dynamic remarketing. Other product types are regarded +// as "static" and do not have this requirement. +message DisplayUploadProductTypeEnum { + // Enumerates display upload product types. + enum DisplayUploadProductType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // HTML5 upload ad. This product type requires the upload_media_bundle + // field in DisplayUploadAdInfo to be set. + HTML5_UPLOAD_AD = 2; + + // Dynamic HTML5 education ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in an education campaign. + DYNAMIC_HTML5_EDUCATION_AD = 3; + + // Dynamic HTML5 flight ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a flight campaign. + DYNAMIC_HTML5_FLIGHT_AD = 4; + + // Dynamic HTML5 hotel and rental ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a hotel campaign. + DYNAMIC_HTML5_HOTEL_RENTAL_AD = 5; + + // Dynamic HTML5 job ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a job campaign. + DYNAMIC_HTML5_JOB_AD = 6; + + // Dynamic HTML5 local ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a local campaign. + DYNAMIC_HTML5_LOCAL_AD = 7; + + // Dynamic HTML5 real estate ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a real estate campaign. + DYNAMIC_HTML5_REAL_ESTATE_AD = 8; + + // Dynamic HTML5 custom ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a custom campaign. + DYNAMIC_HTML5_CUSTOM_AD = 9; + + // Dynamic HTML5 travel ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a travel campaign. + DYNAMIC_HTML5_TRAVEL_AD = 10; + + // Dynamic HTML5 hotel ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a hotel campaign. + DYNAMIC_HTML5_HOTEL_AD = 11; + } + + +} diff --git a/google/ads/googleads/v8/enums/distance_bucket.proto b/google/ads/googleads/v8/enums/distance_bucket.proto new file mode 100644 index 000000000..8466672f5 --- /dev/null +++ b/google/ads/googleads/v8/enums/distance_bucket.proto @@ -0,0 +1,127 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DistanceBucketProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing distance buckets. + +// Container for distance buckets of a user’s distance from an advertiser’s +// location extension. +message DistanceBucketEnum { + // The distance bucket for a user’s distance from an advertiser’s location + // extension. + enum DistanceBucket { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // User was within 700m of the location. + WITHIN_700M = 2; + + // User was within 1KM of the location. + WITHIN_1KM = 3; + + // User was within 5KM of the location. + WITHIN_5KM = 4; + + // User was within 10KM of the location. + WITHIN_10KM = 5; + + // User was within 15KM of the location. + WITHIN_15KM = 6; + + // User was within 20KM of the location. + WITHIN_20KM = 7; + + // User was within 25KM of the location. + WITHIN_25KM = 8; + + // User was within 30KM of the location. + WITHIN_30KM = 9; + + // User was within 35KM of the location. + WITHIN_35KM = 10; + + // User was within 40KM of the location. + WITHIN_40KM = 11; + + // User was within 45KM of the location. + WITHIN_45KM = 12; + + // User was within 50KM of the location. + WITHIN_50KM = 13; + + // User was within 55KM of the location. + WITHIN_55KM = 14; + + // User was within 60KM of the location. + WITHIN_60KM = 15; + + // User was within 65KM of the location. + WITHIN_65KM = 16; + + // User was beyond 65KM of the location. + BEYOND_65KM = 17; + + // User was within 0.7 miles of the location. + WITHIN_0_7MILES = 18; + + // User was within 1 mile of the location. + WITHIN_1MILE = 19; + + // User was within 5 miles of the location. + WITHIN_5MILES = 20; + + // User was within 10 miles of the location. + WITHIN_10MILES = 21; + + // User was within 15 miles of the location. + WITHIN_15MILES = 22; + + // User was within 20 miles of the location. + WITHIN_20MILES = 23; + + // User was within 25 miles of the location. + WITHIN_25MILES = 24; + + // User was within 30 miles of the location. + WITHIN_30MILES = 25; + + // User was within 35 miles of the location. + WITHIN_35MILES = 26; + + // User was within 40 miles of the location. + WITHIN_40MILES = 27; + + // User was beyond 40 miles of the location. + BEYOND_40MILES = 28; + } + + +} diff --git a/google/ads/googleads/v8/enums/dsa_page_feed_criterion_field.proto b/google/ads/googleads/v8/enums/dsa_page_feed_criterion_field.proto new file mode 100644 index 000000000..de45771a8 --- /dev/null +++ b/google/ads/googleads/v8/enums/dsa_page_feed_criterion_field.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DsaPageFeedCriterionFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Dynamic Search Ad Page Feed criterion fields. + +// Values for Dynamic Search Ad Page Feed criterion fields. +message DsaPageFeedCriterionFieldEnum { + // Possible values for Dynamic Search Ad Page Feed criterion fields. + enum DsaPageFeedCriterionField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: URL or URL_LIST. URL of the web page you want to target. + PAGE_URL = 2; + + // Data Type: STRING_LIST. The labels that will help you target ads within + // your page feed. + LABEL = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/education_placeholder_field.proto b/google/ads/googleads/v8/enums/education_placeholder_field.proto new file mode 100644 index 000000000..17d866cd0 --- /dev/null +++ b/google/ads/googleads/v8/enums/education_placeholder_field.proto @@ -0,0 +1,111 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "EducationPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Education placeholder fields. + +// Values for Education placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message EducationPlaceholderFieldEnum { + // Possible values for Education placeholder fields. + enum EducationPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Combination of PROGRAM ID and LOCATION ID + // must be unique per offer. + PROGRAM_ID = 2; + + // Data Type: STRING. Combination of PROGRAM ID and LOCATION ID must be + // unique per offer. + LOCATION_ID = 3; + + // Data Type: STRING. Required. Main headline with program name to be shown + // in dynamic ad. + PROGRAM_NAME = 4; + + // Data Type: STRING. Area of study that can be shown in dynamic ad. + AREA_OF_STUDY = 5; + + // Data Type: STRING. Description of program that can be shown in dynamic + // ad. + PROGRAM_DESCRIPTION = 6; + + // Data Type: STRING. Name of school that can be shown in dynamic ad. + SCHOOL_NAME = 7; + + // Data Type: STRING. Complete school address, including postal code. + ADDRESS = 8; + + // Data Type: URL. Image to be displayed in ads. + THUMBNAIL_IMAGE_URL = 9; + + // Data Type: URL. Alternative hosted file of image to be used in the ad. + ALTERNATIVE_THUMBNAIL_IMAGE_URL = 10; + + // Data Type: URL_LIST. Required. Final URLs to be used in ad when using + // Upgraded URLs; the more specific the better (e.g. the individual URL of a + // specific program and its location). + FINAL_URLS = 11; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 12; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 13; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 14; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 15; + + // Data Type: STRING_LIST. List of recommended program IDs to show together + // with this item. + SIMILAR_PROGRAM_IDS = 16; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 17; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 18; + } + + +} diff --git a/google/ads/googleads/v8/enums/extension_setting_device.proto b/google/ads/googleads/v8/enums/extension_setting_device.proto new file mode 100644 index 000000000..c7646f8ef --- /dev/null +++ b/google/ads/googleads/v8/enums/extension_setting_device.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionSettingDeviceProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing extension setting device type. + +// Container for enum describing extension setting device types. +message ExtensionSettingDeviceEnum { + // Possible device types for an extension setting. + enum ExtensionSettingDevice { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Mobile. The extensions in the extension setting will only serve on + // mobile devices. + MOBILE = 2; + + // Desktop. The extensions in the extension setting will only serve on + // desktop devices. + DESKTOP = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/extension_type.proto b/google/ads/googleads/v8/enums/extension_type.proto new file mode 100644 index 000000000..df3f09034 --- /dev/null +++ b/google/ads/googleads/v8/enums/extension_type.proto @@ -0,0 +1,84 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing extension type. + +// Container for enum describing possible data types for an extension in an +// extension setting. +message ExtensionTypeEnum { + // Possible data types for an extension in an extension setting. + enum ExtensionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // None. + NONE = 2; + + // App. + APP = 3; + + // Call. + CALL = 4; + + // Callout. + CALLOUT = 5; + + // Message. + MESSAGE = 6; + + // Price. + PRICE = 7; + + // Promotion. + PROMOTION = 8; + + // Sitelink. + SITELINK = 10; + + // Structured snippet. + STRUCTURED_SNIPPET = 11; + + // Location. + LOCATION = 12; + + // Affiliate location. + AFFILIATE_LOCATION = 13; + + // Hotel callout + HOTEL_CALLOUT = 15; + + // Image. + IMAGE = 16; + } + + +} diff --git a/google/ads/googleads/v8/enums/external_conversion_source.proto b/google/ads/googleads/v8/enums/external_conversion_source.proto new file mode 100644 index 000000000..d0b6fb79f --- /dev/null +++ b/google/ads/googleads/v8/enums/external_conversion_source.proto @@ -0,0 +1,152 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ExternalConversionSourceProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum describing the external conversion source that is +// associated with a ConversionAction. +message ExternalConversionSourceEnum { + // The external conversion source that is associated with a ConversionAction. + enum ExternalConversionSource { + // Not specified. + UNSPECIFIED = 0; + + // Represents value unknown in this version. + UNKNOWN = 1; + + // Conversion that occurs when a user navigates to a particular webpage + // after viewing an ad; Displayed in Google Ads UI as 'Website'. + WEBPAGE = 2; + + // Conversion that comes from linked Google Analytics goal or transaction; + // Displayed in Google Ads UI as 'Analytics'. + ANALYTICS = 3; + + // Website conversion that is uploaded through ConversionUploadService; + // Displayed in Google Ads UI as 'Import from clicks'. + UPLOAD = 4; + + // Conversion that occurs when a user clicks on a call extension directly on + // an ad; Displayed in Google Ads UI as 'Calls from ads'. + AD_CALL_METRICS = 5; + + // Conversion that occurs when a user calls a dynamically-generated phone + // number (by installed javascript) from an advertiser's website after + // clicking on an ad; Displayed in Google Ads UI as 'Calls from website'. + WEBSITE_CALL_METRICS = 6; + + // Conversion that occurs when a user visits an advertiser's retail store + // after clicking on a Google ad; + // Displayed in Google Ads UI as 'Store visits'. + STORE_VISITS = 7; + + // Conversion that occurs when a user takes an in-app action such as a + // purchase in an Android app; + // Displayed in Google Ads UI as 'Android in-app action'. + ANDROID_IN_APP = 8; + + // Conversion that occurs when a user takes an in-app action such as a + // purchase in an iOS app; + // Displayed in Google Ads UI as 'iOS in-app action'. + IOS_IN_APP = 9; + + // Conversion that occurs when a user opens an iOS app for the first time; + // Displayed in Google Ads UI as 'iOS app install (first open)'. + IOS_FIRST_OPEN = 10; + + // Legacy app conversions that do not have an AppPlatform provided; + // Displayed in Google Ads UI as 'Mobile app'. + APP_UNSPECIFIED = 11; + + // Conversion that occurs when a user opens an Android app for the first + // time; Displayed in Google Ads UI as 'Android app install (first open)'. + ANDROID_FIRST_OPEN = 12; + + // Call conversion that is uploaded through ConversionUploadService; + // Displayed in Google Ads UI as 'Import from calls'. + UPLOAD_CALLS = 13; + + // Conversion that comes from a linked Firebase event; + // Displayed in Google Ads UI as 'Firebase'. + FIREBASE = 14; + + // Conversion that occurs when a user clicks on a mobile phone number; + // Displayed in Google Ads UI as 'Phone number clicks'. + CLICK_TO_CALL = 15; + + // Conversion that comes from Salesforce; + // Displayed in Google Ads UI as 'Salesforce.com'. + SALESFORCE = 16; + + // Conversion that comes from in-store purchases recorded by CRM; + // Displayed in Google Ads UI as 'Store sales (data partner)'. + STORE_SALES_CRM = 17; + + // Conversion that comes from in-store purchases from payment network; + // Displayed in Google Ads UI as 'Store sales (payment network)'. + STORE_SALES_PAYMENT_NETWORK = 18; + + // Codeless Google Play conversion; + // Displayed in Google Ads UI as 'Google Play'. + GOOGLE_PLAY = 19; + + // Conversion that comes from a linked third-party app analytics event; + // Displayed in Google Ads UI as 'Third-party app analytics'. + THIRD_PARTY_APP_ANALYTICS = 20; + + // Conversion that is controlled by Google Attribution. + GOOGLE_ATTRIBUTION = 21; + + // Store Sales conversion based on first-party or third-party merchant data + // uploads. Displayed in Google Ads UI as 'Store sales (direct upload)'. + STORE_SALES_DIRECT_UPLOAD = 23; + + // Store Sales conversion based on first-party or third-party merchant + // data uploads and/or from in-store purchases using cards from payment + // networks. Displayed in Google Ads UI as 'Store sales'. + STORE_SALES = 24; + + // Conversions imported from Search Ads 360 Floodlight data. + SEARCH_ADS_360 = 25; + + // Conversions that track local actions from Google's products and services + // after interacting with an ad. + GOOGLE_HOSTED = 27; + + // Conversions reported by Floodlight tags. + FLOODLIGHT = 29; + + // Conversions that come from Google Analytics specifically for Search Ads + // 360. Displayed in Google Ads UI as Analytics (SA360). + ANALYTICS_SEARCH_ADS_360 = 31; + + // Conversion that comes from a linked Firebase event for Search Ads 360. + FIREBASE_SEARCH_ADS_360 = 33; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_attribute_type.proto b/google/ads/googleads/v8/enums/feed_attribute_type.proto new file mode 100644 index 000000000..211f204e3 --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_attribute_type.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedAttributeTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed attribute type. + +// Container for enum describing possible data types for a feed attribute. +message FeedAttributeTypeEnum { + // Possible data types for a feed attribute. + enum FeedAttributeType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Int64. + INT64 = 2; + + // Double. + DOUBLE = 3; + + // String. + STRING = 4; + + // Boolean. + BOOLEAN = 5; + + // Url. + URL = 6; + + // Datetime. + DATE_TIME = 7; + + // Int64 list. + INT64_LIST = 8; + + // Double (8 bytes) list. + DOUBLE_LIST = 9; + + // String list. + STRING_LIST = 10; + + // Boolean list. + BOOLEAN_LIST = 11; + + // Url list. + URL_LIST = 12; + + // Datetime list. + DATE_TIME_LIST = 13; + + // Price. + PRICE = 14; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_item_quality_approval_status.proto b/google/ads/googleads/v8/enums/feed_item_quality_approval_status.proto new file mode 100644 index 000000000..52d18ad00 --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_item_quality_approval_status.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemQualityApprovalStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed item quality evaluation approval statuses. + +// Container for enum describing possible quality evaluation approval statuses +// of a feed item. +message FeedItemQualityApprovalStatusEnum { + // The possible quality evaluation approval statuses of a feed item. + enum FeedItemQualityApprovalStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Meets all quality expectations. + APPROVED = 2; + + // Does not meet some quality expectations. The specific reason is found in + // the quality_disapproval_reasons field. + DISAPPROVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_item_quality_disapproval_reason.proto b/google/ads/googleads/v8/enums/feed_item_quality_disapproval_reason.proto new file mode 100644 index 000000000..4394d2685 --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_item_quality_disapproval_reason.proto @@ -0,0 +1,99 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemQualityDisapprovalReasonProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed item quality disapproval reasons. + +// Container for enum describing possible quality evaluation disapproval reasons +// of a feed item. +message FeedItemQualityDisapprovalReasonEnum { + // The possible quality evaluation disapproval reasons of a feed item. + enum FeedItemQualityDisapprovalReason { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Price contains repetitive headers. + PRICE_TABLE_REPETITIVE_HEADERS = 2; + + // Price contains repetitive description. + PRICE_TABLE_REPETITIVE_DESCRIPTION = 3; + + // Price contains inconsistent items. + PRICE_TABLE_INCONSISTENT_ROWS = 4; + + // Price contains qualifiers in description. + PRICE_DESCRIPTION_HAS_PRICE_QUALIFIERS = 5; + + // Price contains an unsupported language. + PRICE_UNSUPPORTED_LANGUAGE = 6; + + // Price item header is not relevant to the price type. + PRICE_TABLE_ROW_HEADER_TABLE_TYPE_MISMATCH = 7; + + // Price item header has promotional text. + PRICE_TABLE_ROW_HEADER_HAS_PROMOTIONAL_TEXT = 8; + + // Price item description is not relevant to the item header. + PRICE_TABLE_ROW_DESCRIPTION_NOT_RELEVANT = 9; + + // Price item description contains promotional text. + PRICE_TABLE_ROW_DESCRIPTION_HAS_PROMOTIONAL_TEXT = 10; + + // Price item header and description are repetitive. + PRICE_TABLE_ROW_HEADER_DESCRIPTION_REPETITIVE = 11; + + // Price item is in a foreign language, nonsense, or can't be rated. + PRICE_TABLE_ROW_UNRATEABLE = 12; + + // Price item price is invalid or inaccurate. + PRICE_TABLE_ROW_PRICE_INVALID = 13; + + // Price item URL is invalid or irrelevant. + PRICE_TABLE_ROW_URL_INVALID = 14; + + // Price item header or description has price. + PRICE_HEADER_OR_DESCRIPTION_HAS_PRICE = 15; + + // Structured snippet values do not match the header. + STRUCTURED_SNIPPETS_HEADER_POLICY_VIOLATED = 16; + + // Structured snippet values are repeated. + STRUCTURED_SNIPPETS_REPEATED_VALUES = 17; + + // Structured snippet values violate editorial guidelines like punctuation. + STRUCTURED_SNIPPETS_EDITORIAL_GUIDELINES = 18; + + // Structured snippet contain promotional text. + STRUCTURED_SNIPPETS_HAS_PROMOTIONAL_TEXT = 19; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_item_set_status.proto b/google/ads/googleads/v8/enums/feed_item_set_status.proto new file mode 100644 index 000000000..e27eeaa6a --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_item_set_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed item set status. + +// Container for enum describing possible statuses of a feed item set. +message FeedItemSetStatusEnum { + // Possible statuses of a feed item set. + enum FeedItemSetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed item set is enabled. + ENABLED = 2; + + // Feed item set has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_item_set_string_filter_type.proto b/google/ads/googleads/v8/enums/feed_item_set_string_filter_type.proto new file mode 100644 index 000000000..29f6703b9 --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_item_set_string_filter_type.proto @@ -0,0 +1,45 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetStringFilterTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// The type of string matching to be used for a dynamic FeedItemSet filter. +message FeedItemSetStringFilterTypeEnum { + // describe the possible types for a FeedItemSetStringFilter. + enum FeedItemSetStringFilterType { + // Not specified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The dynamic set filter will use exact string matching. + EXACT = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_item_status.proto b/google/ads/googleads/v8/enums/feed_item_status.proto new file mode 100644 index 000000000..99923cb65 --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_item_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed item status. + +// Container for enum describing possible statuses of a feed item. +message FeedItemStatusEnum { + // Possible statuses of a feed item. + enum FeedItemStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed item is enabled. + ENABLED = 2; + + // Feed item has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_item_target_device.proto b/google/ads/googleads/v8/enums/feed_item_target_device.proto new file mode 100644 index 000000000..2bcbe6fb1 --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_item_target_device.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetDeviceProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed item target device type. + +// Container for enum describing possible data types for a feed item target +// device. +message FeedItemTargetDeviceEnum { + // Possible data types for a feed item target device. + enum FeedItemTargetDevice { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Mobile. + MOBILE = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_item_target_status.proto b/google/ads/googleads/v8/enums/feed_item_target_status.proto new file mode 100644 index 000000000..2980d43c5 --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_item_target_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed item target status. + +// Container for enum describing possible statuses of a feed item target. +message FeedItemTargetStatusEnum { + // Possible statuses of a feed item target. + enum FeedItemTargetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed item target is enabled. + ENABLED = 2; + + // Feed item target has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_item_target_type.proto b/google/ads/googleads/v8/enums/feed_item_target_type.proto new file mode 100644 index 000000000..2c3cb4df4 --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_item_target_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed item target type status. + +// Container for enum describing possible types of a feed item target. +message FeedItemTargetTypeEnum { + // Possible type of a feed item target. + enum FeedItemTargetType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed item targets a campaign. + CAMPAIGN = 2; + + // Feed item targets an ad group. + AD_GROUP = 3; + + // Feed item targets a criterion. + CRITERION = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_item_validation_status.proto b/google/ads/googleads/v8/enums/feed_item_validation_status.proto new file mode 100644 index 000000000..fdd1a637c --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_item_validation_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemValidationStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed item validation statuses. + +// Container for enum describing possible validation statuses of a feed item. +message FeedItemValidationStatusEnum { + // The possible validation statuses of a feed item. + enum FeedItemValidationStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Validation pending. + PENDING = 2; + + // An error was found. + INVALID = 3; + + // Feed item is semantically well-formed. + VALID = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_link_status.proto b/google/ads/googleads/v8/enums/feed_link_status.proto new file mode 100644 index 000000000..3d68d849c --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_link_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedLinkStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing status of a feed link. + +// Container for an enum describing possible statuses of a feed link. +message FeedLinkStatusEnum { + // Possible statuses of a feed link. + enum FeedLinkStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed link is enabled. + ENABLED = 2; + + // Feed link has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_mapping_criterion_type.proto b/google/ads/googleads/v8/enums/feed_mapping_criterion_type.proto new file mode 100644 index 000000000..7b954eea4 --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_mapping_criterion_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedMappingCriterionTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing criterion types for feed mappings. + +// Container for enum describing possible criterion types for a feed mapping. +message FeedMappingCriterionTypeEnum { + // Possible placeholder types for a feed mapping. + enum FeedMappingCriterionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Allows campaign targeting at locations within a location feed. + LOCATION_EXTENSION_TARGETING = 4; + + // Allows url targeting for your dynamic search ads within a page feed. + DSA_PAGE_FEED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_mapping_status.proto b/google/ads/googleads/v8/enums/feed_mapping_status.proto new file mode 100644 index 000000000..7c3e6f75a --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_mapping_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedMappingStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed mapping status. + +// Container for enum describing possible statuses of a feed mapping. +message FeedMappingStatusEnum { + // Possible statuses of a feed mapping. + enum FeedMappingStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed mapping is enabled. + ENABLED = 2; + + // Feed mapping has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_origin.proto b/google/ads/googleads/v8/enums/feed_origin.proto new file mode 100644 index 000000000..fabf0c00d --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_origin.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedOriginProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed origin. + +// Container for enum describing possible values for a feed origin. +message FeedOriginEnum { + // Possible values for a feed origin. + enum FeedOrigin { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The FeedAttributes for this Feed are managed by the + // user. Users can add FeedAttributes to this Feed. + USER = 2; + + // The FeedAttributes for an GOOGLE Feed are created by Google. A feed of + // this type is maintained by Google and will have the correct attributes + // for the placeholder type of the feed. + GOOGLE = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/feed_status.proto b/google/ads/googleads/v8/enums/feed_status.proto new file mode 100644 index 000000000..7b2b383bb --- /dev/null +++ b/google/ads/googleads/v8/enums/feed_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed status. + +// Container for enum describing possible statuses of a feed. +message FeedStatusEnum { + // Possible statuses of a feed. + enum FeedStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed is enabled. + ENABLED = 2; + + // Feed has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/flight_placeholder_field.proto b/google/ads/googleads/v8/enums/flight_placeholder_field.proto new file mode 100644 index 000000000..905bf249c --- /dev/null +++ b/google/ads/googleads/v8/enums/flight_placeholder_field.proto @@ -0,0 +1,118 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FlightsPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Flight placeholder fields. + +// Values for Flight placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message FlightPlaceholderFieldEnum { + // Possible values for Flight placeholder fields. + enum FlightPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Destination id. Example: PAR, LON. + // For feed items that only have destination id, destination id must be a + // unique key. For feed items that have both destination id and origin id, + // then the combination must be a unique key. + DESTINATION_ID = 2; + + // Data Type: STRING. Origin id. Example: PAR, LON. + // Optional. Combination of destination id and origin id must be unique per + // offer. + ORIGIN_ID = 3; + + // Data Type: STRING. Required. Main headline with product name to be shown + // in dynamic ad. + FLIGHT_DESCRIPTION = 4; + + // Data Type: STRING. Shorter names are recommended. + ORIGIN_NAME = 5; + + // Data Type: STRING. Shorter names are recommended. + DESTINATION_NAME = 6; + + // Data Type: STRING. Price to be shown in the ad. + // Example: "100.00 USD" + FLIGHT_PRICE = 7; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 8; + + // Data Type: STRING. Sale price to be shown in the ad. + // Example: "80.00 USD" + FLIGHT_SALE_PRICE = 9; + + // Data Type: STRING. Formatted sale price to be shown in the ad. + // Example: "On sale for $80.00", "$60 - $80" + FORMATTED_SALE_PRICE = 10; + + // Data Type: URL. Image to be displayed in the ad. + IMAGE_URL = 11; + + // Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded + // URLs. User will be redirected to these URLs when they click on an ad, or + // when they click on a specific flight for ads that show multiple + // flights. + FINAL_URLS = 12; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 13; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 14; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 15; + + // Data Type: STRING_LIST. List of recommended destination IDs to show + // together with this item. + SIMILAR_DESTINATION_IDS = 16; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 17; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 18; + } + + +} diff --git a/google/ads/googleads/v8/enums/frequency_cap_event_type.proto b/google/ads/googleads/v8/enums/frequency_cap_event_type.proto new file mode 100644 index 000000000..7725e9320 --- /dev/null +++ b/google/ads/googleads/v8/enums/frequency_cap_event_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FrequencyCapEventTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing frequency caps. + +// Container for enum describing the type of event that the cap applies to. +message FrequencyCapEventTypeEnum { + // The type of event that the cap applies to (e.g. impression). + enum FrequencyCapEventType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The cap applies on ad impressions. + IMPRESSION = 2; + + // The cap applies on video ad views. + VIDEO_VIEW = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/frequency_cap_level.proto b/google/ads/googleads/v8/enums/frequency_cap_level.proto new file mode 100644 index 000000000..16102a97e --- /dev/null +++ b/google/ads/googleads/v8/enums/frequency_cap_level.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FrequencyCapLevelProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing frequency caps. + +// Container for enum describing the level on which the cap is to be applied. +message FrequencyCapLevelEnum { + // The level on which the cap is to be applied (e.g ad group ad, ad group). + // Cap is applied to all the resources of this level. + enum FrequencyCapLevel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The cap is applied at the ad group ad level. + AD_GROUP_AD = 2; + + // The cap is applied at the ad group level. + AD_GROUP = 3; + + // The cap is applied at the campaign level. + CAMPAIGN = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/frequency_cap_time_unit.proto b/google/ads/googleads/v8/enums/frequency_cap_time_unit.proto new file mode 100644 index 000000000..c3f1fc2f6 --- /dev/null +++ b/google/ads/googleads/v8/enums/frequency_cap_time_unit.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FrequencyCapTimeUnitProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing frequency caps. + +// Container for enum describing the unit of time the cap is defined at. +message FrequencyCapTimeUnitEnum { + // Unit of time the cap is defined at (e.g. day, week). + enum FrequencyCapTimeUnit { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The cap would define limit per one day. + DAY = 2; + + // The cap would define limit per one week. + WEEK = 3; + + // The cap would define limit per one month. + MONTH = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/gender_type.proto b/google/ads/googleads/v8/enums/gender_type.proto new file mode 100644 index 000000000..c2c127d67 --- /dev/null +++ b/google/ads/googleads/v8/enums/gender_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GenderTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing gender types. + +// Container for enum describing the type of demographic genders. +message GenderTypeEnum { + // The type of demographic genders (e.g. female). + enum GenderType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Male. + MALE = 10; + + // Female. + FEMALE = 11; + + // Undetermined gender. + UNDETERMINED = 20; + } + + +} diff --git a/google/ads/googleads/v8/enums/geo_target_constant_status.proto b/google/ads/googleads/v8/enums/geo_target_constant_status.proto new file mode 100644 index 000000000..8107b2afb --- /dev/null +++ b/google/ads/googleads/v8/enums/geo_target_constant_status.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetConstantStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing geo target constant statuses. + +// Container for describing the status of a geo target constant. +message GeoTargetConstantStatusEnum { + // The possible statuses of a geo target constant. + enum GeoTargetConstantStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The geo target constant is valid. + ENABLED = 2; + + // The geo target constant is obsolete and will be removed. + REMOVAL_PLANNED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/geo_targeting_restriction.proto b/google/ads/googleads/v8/enums/geo_targeting_restriction.proto new file mode 100644 index 000000000..c5645023e --- /dev/null +++ b/google/ads/googleads/v8/enums/geo_targeting_restriction.proto @@ -0,0 +1,49 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetingRestrictionProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing GeoTargetingRestriction. + +// Message describing feed item geo targeting restriction. +message GeoTargetingRestrictionEnum { + // A restriction used to determine if the request context's + // geo should be matched. + enum GeoTargetingRestriction { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Indicates that request context should match the physical location of + // the user. + LOCATION_OF_PRESENCE = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/geo_targeting_type.proto b/google/ads/googleads/v8/enums/geo_targeting_type.proto new file mode 100644 index 000000000..d6781c44f --- /dev/null +++ b/google/ads/googleads/v8/enums/geo_targeting_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetingTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing geo targeting types. + +// Container for enum describing possible geo targeting types. +message GeoTargetingTypeEnum { + // The possible geo targeting types. + enum GeoTargetingType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Location the user is interested in while making the query. + AREA_OF_INTEREST = 2; + + // Location of the user issuing the query. + LOCATION_OF_PRESENCE = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/google_ads_field_category.proto b/google/ads/googleads/v8/enums/google_ads_field_category.proto new file mode 100644 index 000000000..f78abad54 --- /dev/null +++ b/google/ads/googleads/v8/enums/google_ads_field_category.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GoogleAdsFieldCategoryProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing GoogleAdsField categories. + +// Container for enum that determines if the described artifact is a resource +// or a field, and if it is a field, when it segments search queries. +message GoogleAdsFieldCategoryEnum { + // The category of the artifact. + enum GoogleAdsFieldCategory { + // Unspecified + UNSPECIFIED = 0; + + // Unknown + UNKNOWN = 1; + + // The described artifact is a resource. + RESOURCE = 2; + + // The described artifact is a field and is an attribute of a resource. + // Including a resource attribute field in a query may segment the query if + // the resource to which it is attributed segments the resource found in + // the FROM clause. + ATTRIBUTE = 3; + + // The described artifact is a field and always segments search queries. + SEGMENT = 5; + + // The described artifact is a field and is a metric. It never segments + // search queries. + METRIC = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/google_ads_field_data_type.proto b/google/ads/googleads/v8/enums/google_ads_field_data_type.proto new file mode 100644 index 000000000..ae2cbf9cd --- /dev/null +++ b/google/ads/googleads/v8/enums/google_ads_field_data_type.proto @@ -0,0 +1,102 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GoogleAdsFieldDataTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing GoogleAdsField data types. + +// Container holding the various data types. +message GoogleAdsFieldDataTypeEnum { + // These are the various types a GoogleAdsService artifact may take on. + enum GoogleAdsFieldDataType { + // Unspecified + UNSPECIFIED = 0; + + // Unknown + UNKNOWN = 1; + + // Maps to google.protobuf.BoolValue + // + // Applicable operators: =, != + BOOLEAN = 2; + + // Maps to google.protobuf.StringValue. It can be compared using the set of + // operators specific to dates however. + // + // Applicable operators: =, <, >, <=, >=, BETWEEN, DURING, and IN + DATE = 3; + + // Maps to google.protobuf.DoubleValue + // + // Applicable operators: =, !=, <, >, IN, NOT IN + DOUBLE = 4; + + // Maps to an enum. It's specific definition can be found at type_url. + // + // Applicable operators: =, !=, IN, NOT IN + ENUM = 5; + + // Maps to google.protobuf.FloatValue + // + // Applicable operators: =, !=, <, >, IN, NOT IN + FLOAT = 6; + + // Maps to google.protobuf.Int32Value + // + // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN + INT32 = 7; + + // Maps to google.protobuf.Int64Value + // + // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN + INT64 = 8; + + // Maps to a protocol buffer message type. The data type's details can be + // found in type_url. + // + // No operators work with MESSAGE fields. + MESSAGE = 9; + + // Maps to google.protobuf.StringValue. Represents the resource name + // (unique id) of a resource or one of its foreign keys. + // + // No operators work with RESOURCE_NAME fields. + RESOURCE_NAME = 10; + + // Maps to google.protobuf.StringValue. + // + // Applicable operators: =, !=, LIKE, NOT LIKE, IN, NOT IN + STRING = 11; + + // Maps to google.protobuf.UInt64Value + // + // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN + UINT64 = 12; + } + + +} diff --git a/google/ads/googleads/v8/enums/google_voice_call_status.proto b/google/ads/googleads/v8/enums/google_voice_call_status.proto new file mode 100644 index 000000000..b526ee991 --- /dev/null +++ b/google/ads/googleads/v8/enums/google_voice_call_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GoogleVoiceCallStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing google voice call status. + +// Container for enum describing possible statuses of a google voice call. +message GoogleVoiceCallStatusEnum { + // Possible statuses of a google voice call. + enum GoogleVoiceCallStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The call was missed. + MISSED = 2; + + // The call was received. + RECEIVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/hotel_date_selection_type.proto b/google/ads/googleads/v8/enums/hotel_date_selection_type.proto new file mode 100644 index 000000000..54bec58ec --- /dev/null +++ b/google/ads/googleads/v8/enums/hotel_date_selection_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "HotelDateSelectionTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing hotel date selection types. + +// Container for enum describing possible hotel date selection types +message HotelDateSelectionTypeEnum { + // Enum describing possible hotel date selection types. + enum HotelDateSelectionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Dates selected by default. + DEFAULT_SELECTION = 50; + + // Dates selected by the user. + USER_SELECTED = 51; + } + + +} diff --git a/google/ads/googleads/v8/enums/hotel_placeholder_field.proto b/google/ads/googleads/v8/enums/hotel_placeholder_field.proto new file mode 100644 index 000000000..95d90c8c6 --- /dev/null +++ b/google/ads/googleads/v8/enums/hotel_placeholder_field.proto @@ -0,0 +1,124 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "HotelsPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Hotel placeholder fields. + +// Values for Hotel placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message HotelPlaceholderFieldEnum { + // Possible values for Hotel placeholder fields. + enum HotelPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Unique ID. + PROPERTY_ID = 2; + + // Data Type: STRING. Required. Main headline with property name to be shown + // in dynamic ad. + PROPERTY_NAME = 3; + + // Data Type: STRING. Name of destination to be shown in dynamic ad. + DESTINATION_NAME = 4; + + // Data Type: STRING. Description of destination to be shown in dynamic ad. + DESCRIPTION = 5; + + // Data Type: STRING. Complete property address, including postal code. + ADDRESS = 6; + + // Data Type: STRING. Price to be shown in the ad. + // Example: "100.00 USD" + PRICE = 7; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 8; + + // Data Type: STRING. Sale price to be shown in the ad. + // Example: "80.00 USD" + SALE_PRICE = 9; + + // Data Type: STRING. Formatted sale price to be shown in the ad. + // Example: "On sale for $80.00", "$60 - $80" + FORMATTED_SALE_PRICE = 10; + + // Data Type: URL. Image to be displayed in the ad. + IMAGE_URL = 11; + + // Data Type: STRING. Category of property used to group like items together + // for recommendation engine. + CATEGORY = 12; + + // Data Type: INT64. Star rating (1 to 5) used to group like items + // together for recommendation engine. + STAR_RATING = 13; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 14; + + // Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded + // URLs. User will be redirected to these URLs when they click on an ad, or + // when they click on a specific flight for ads that show multiple + // flights. + FINAL_URLS = 15; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 16; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 17; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 18; + + // Data Type: STRING_LIST. List of recommended property IDs to show together + // with this item. + SIMILAR_PROPERTY_IDS = 19; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 20; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 21; + } + + +} diff --git a/google/ads/googleads/v8/enums/hotel_price_bucket.proto b/google/ads/googleads/v8/enums/hotel_price_bucket.proto new file mode 100644 index 000000000..875d97afd --- /dev/null +++ b/google/ads/googleads/v8/enums/hotel_price_bucket.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "HotelPriceBucketProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing hotel price buckets. + +// Container for enum describing hotel price bucket for a hotel itinerary. +message HotelPriceBucketEnum { + // Enum describing possible hotel price buckets. + enum HotelPriceBucket { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Uniquely lowest price. Partner has the lowest price, and no other + // partners are within a small variance of that price. + LOWEST_UNIQUE = 2; + + // Tied for lowest price. Partner is within a small variance of the lowest + // price. + LOWEST_TIED = 3; + + // Not lowest price. Partner is not within a small variance of the lowest + // price. + NOT_LOWEST = 4; + + // Partner was the only one shown. + ONLY_PARTNER_SHOWN = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/hotel_rate_type.proto b/google/ads/googleads/v8/enums/hotel_rate_type.proto new file mode 100644 index 000000000..c884ca52f --- /dev/null +++ b/google/ads/googleads/v8/enums/hotel_rate_type.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "HotelRateTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing hotel rate types. + +// Container for enum describing possible hotel rate types. +message HotelRateTypeEnum { + // Enum describing possible hotel rate types. + enum HotelRateType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Rate type information is unavailable. + UNAVAILABLE = 2; + + // Rates available to everyone. + PUBLIC_RATE = 3; + + // A membership program rate is available and satisfies basic requirements + // like having a public rate available. UI treatment will strikethrough the + // public rate and indicate that a discount is available to the user. For + // more on Qualified Rates, visit + // https://developers.google.com/hotels/hotel-ads/dev-guide/qualified-rates + QUALIFIED_RATE = 4; + + // Rates available to users that satisfy some eligibility criteria. e.g. + // all signed-in users, 20% of mobile users, all mobile users in Canada, + // etc. + PRIVATE_RATE = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/image_placeholder_field.proto b/google/ads/googleads/v8/enums/image_placeholder_field.proto new file mode 100644 index 000000000..fb58dce84 --- /dev/null +++ b/google/ads/googleads/v8/enums/image_placeholder_field.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ImagePlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Advertiser Provided Image placeholder fields. + +// Values for Advertiser Provided Image placeholder fields. +message ImagePlaceholderFieldEnum { + // Possible values for Advertiser Provided Image placeholder fields. + enum ImagePlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: INT64. The asset ID of the image. + ASSET_ID = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/income_range_type.proto b/google/ads/googleads/v8/enums/income_range_type.proto new file mode 100644 index 000000000..d1a6ee733 --- /dev/null +++ b/google/ads/googleads/v8/enums/income_range_type.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "IncomeRangeTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing income range types. + +// Container for enum describing the type of demographic income ranges. +message IncomeRangeTypeEnum { + // The type of demographic income ranges (e.g. between 0% to 50%). + enum IncomeRangeType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // 0%-50%. + INCOME_RANGE_0_50 = 510001; + + // 50% to 60%. + INCOME_RANGE_50_60 = 510002; + + // 60% to 70%. + INCOME_RANGE_60_70 = 510003; + + // 70% to 80%. + INCOME_RANGE_70_80 = 510004; + + // 80% to 90%. + INCOME_RANGE_80_90 = 510005; + + // Greater than 90%. + INCOME_RANGE_90_UP = 510006; + + // Undetermined income range. + INCOME_RANGE_UNDETERMINED = 510000; + } + + +} diff --git a/google/ads/googleads/v8/enums/interaction_event_type.proto b/google/ads/googleads/v8/enums/interaction_event_type.proto new file mode 100644 index 000000000..544165d7d --- /dev/null +++ b/google/ads/googleads/v8/enums/interaction_event_type.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "InteractionEventTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing types of payable and free interactions. + +// Container for enum describing types of payable and free interactions. +message InteractionEventTypeEnum { + // Enum describing possible types of payable and free interactions. + enum InteractionEventType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Click to site. In most cases, this interaction navigates to an external + // location, usually the advertiser's landing page. This is also the default + // InteractionEventType for click events. + CLICK = 2; + + // The user's expressed intent to engage with the ad in-place. + ENGAGEMENT = 3; + + // User viewed a video ad. + VIDEO_VIEW = 4; + + // The default InteractionEventType for ad conversion events. + // This is used when an ad conversion row does NOT indicate + // that the free interactions (i.e., the ad conversions) + // should be 'promoted' and reported as part of the core metrics. + // These are simply other (ad) conversions. + NONE = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/interaction_type.proto b/google/ads/googleads/v8/enums/interaction_type.proto new file mode 100644 index 000000000..bdb73cda6 --- /dev/null +++ b/google/ads/googleads/v8/enums/interaction_type.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "InteractionTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing interaction types. + +// Container for enum describing possible interaction types. +message InteractionTypeEnum { + // Enum describing possible interaction types. + enum InteractionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Calls. + CALLS = 8000; + } + + +} diff --git a/google/ads/googleads/v8/enums/invoice_type.proto b/google/ads/googleads/v8/enums/invoice_type.proto new file mode 100644 index 000000000..2ee6328ec --- /dev/null +++ b/google/ads/googleads/v8/enums/invoice_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "InvoiceTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing invoice types. + +// Container for enum describing the type of invoices. +message InvoiceTypeEnum { + // The possible type of invoices. + enum InvoiceType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // An invoice with a negative amount. The account receives a credit. + CREDIT_MEMO = 2; + + // An invoice with a positive amount. The account owes a balance. + INVOICE = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/job_placeholder_field.proto b/google/ads/googleads/v8/enums/job_placeholder_field.proto new file mode 100644 index 000000000..d1e49fa95 --- /dev/null +++ b/google/ads/googleads/v8/enums/job_placeholder_field.proto @@ -0,0 +1,115 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "JobsPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Job placeholder fields. + +// Values for Job placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message JobPlaceholderFieldEnum { + // Possible values for Job placeholder fields. + enum JobPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. If only JOB_ID is specified, then it must be + // unique. If both JOB_ID and LOCATION_ID are specified, then the + // pair must be unique. + // ID) pair must be unique. + JOB_ID = 2; + + // Data Type: STRING. Combination of JOB_ID and LOCATION_ID must be unique + // per offer. + LOCATION_ID = 3; + + // Data Type: STRING. Required. Main headline with job title to be shown in + // dynamic ad. + TITLE = 4; + + // Data Type: STRING. Job subtitle to be shown in dynamic ad. + SUBTITLE = 5; + + // Data Type: STRING. Description of job to be shown in dynamic ad. + DESCRIPTION = 6; + + // Data Type: URL. Image to be displayed in the ad. Highly recommended for + // image ads. + IMAGE_URL = 7; + + // Data Type: STRING. Category of property used to group like items together + // for recommendation engine. + CATEGORY = 8; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 9; + + // Data Type: STRING. Complete property address, including postal code. + ADDRESS = 10; + + // Data Type: STRING. Salary or salary range of job to be shown in dynamic + // ad. + SALARY = 11; + + // Data Type: URL_LIST. Required. Final URLs to be used in ad when using + // Upgraded URLs; the more specific the better (e.g. the individual URL of a + // specific job and its location). + FINAL_URLS = 12; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 14; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 15; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 16; + + // Data Type: STRING_LIST. List of recommended job IDs to show together with + // this item. + SIMILAR_JOB_IDS = 17; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 18; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 19; + } + + +} diff --git a/google/ads/googleads/v8/enums/keyword_match_type.proto b/google/ads/googleads/v8/enums/keyword_match_type.proto new file mode 100644 index 000000000..a60c35ffe --- /dev/null +++ b/google/ads/googleads/v8/enums/keyword_match_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordMatchTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Keyword match types. + +// Message describing Keyword match types. +message KeywordMatchTypeEnum { + // Possible Keyword match types. + enum KeywordMatchType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Exact match. + EXACT = 2; + + // Phrase match. + PHRASE = 3; + + // Broad match. + BROAD = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/keyword_plan_aggregate_metric_type.proto b/google/ads/googleads/v8/enums/keyword_plan_aggregate_metric_type.proto new file mode 100644 index 000000000..3219e0758 --- /dev/null +++ b/google/ads/googleads/v8/enums/keyword_plan_aggregate_metric_type.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAggregateMetricTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing keyword plan aggregate metric types. + +// The enumeration of keyword plan aggregate metric types. +message KeywordPlanAggregateMetricTypeEnum { + // Aggregate fields. + enum KeywordPlanAggregateMetricType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // The device breakdown of aggregate search volume. + DEVICE = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/keyword_plan_competition_level.proto b/google/ads/googleads/v8/enums/keyword_plan_competition_level.proto new file mode 100644 index 000000000..efa553692 --- /dev/null +++ b/google/ads/googleads/v8/enums/keyword_plan_competition_level.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCompetitionLevelProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Keyword Planner competition levels. + +// Container for enumeration of keyword competition levels. The competition +// level indicates how competitive ad placement is for a keyword and +// is determined by the number of advertisers bidding on that keyword relative +// to all keywords across Google. The competition level can depend on the +// location and Search Network targeting options you've selected. +message KeywordPlanCompetitionLevelEnum { + // Competition level of a keyword. + enum KeywordPlanCompetitionLevel { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Low competition. The Competition Index range for this is [0, 33]. + LOW = 2; + + // Medium competition. The Competition Index range for this is [34, 66]. + MEDIUM = 3; + + // High competition. The Competition Index range for this is [67, 100]. + HIGH = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/keyword_plan_concept_group_type.proto b/google/ads/googleads/v8/enums/keyword_plan_concept_group_type.proto new file mode 100644 index 000000000..949d2d1f3 --- /dev/null +++ b/google/ads/googleads/v8/enums/keyword_plan_concept_group_type.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanConceptGroupTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Keyword Planner Concept Group types. + +// Container for enumeration of keyword plan concept group types. +message KeywordPlanConceptGroupTypeEnum { + // Enumerates keyword plan concept group types. + enum KeywordPlanConceptGroupType { + // The concept group classification different from brand/non-brand. + // This is a catch all bucket for all classifications that are none of the + // below. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // The concept group classification is based on BRAND. + BRAND = 2; + + // The concept group classification based on BRAND, that didn't fit well + // with the BRAND classifications. These are generally outliers and can have + // very few keywords in this type of classification. + OTHER_BRANDS = 3; + + // These concept group classification is not based on BRAND. This is + // returned for generic keywords that don't have a brand association. + NON_BRAND = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/keyword_plan_forecast_interval.proto b/google/ads/googleads/v8/enums/keyword_plan_forecast_interval.proto new file mode 100644 index 000000000..3de47c297 --- /dev/null +++ b/google/ads/googleads/v8/enums/keyword_plan_forecast_interval.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanForecastIntervalProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing keyword plan forecast intervals. + +// Container for enumeration of forecast intervals. +message KeywordPlanForecastIntervalEnum { + // Forecast intervals. + enum KeywordPlanForecastInterval { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // The next week date range for keyword plan. The next week is based + // on the default locale of the user's account and is mostly SUN-SAT or + // MON-SUN. + // This can be different from next-7 days. + NEXT_WEEK = 3; + + // The next month date range for keyword plan. + NEXT_MONTH = 4; + + // The next quarter date range for keyword plan. + NEXT_QUARTER = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/keyword_plan_keyword_annotation.proto b/google/ads/googleads/v8/enums/keyword_plan_keyword_annotation.proto new file mode 100644 index 000000000..ce67be5fc --- /dev/null +++ b/google/ads/googleads/v8/enums/keyword_plan_keyword_annotation.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanKeywordAnnotationProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Keyword Planner Keyword annotation types. + +// Container for enumeration of keyword plan keyword annotations. +message KeywordPlanKeywordAnnotationEnum { + // Enumerates keyword plan annotations that can be requested. + enum KeywordPlanKeywordAnnotation { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Return the keyword concept and concept group data. + KEYWORD_CONCEPT = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/keyword_plan_network.proto b/google/ads/googleads/v8/enums/keyword_plan_network.proto new file mode 100644 index 000000000..74135395d --- /dev/null +++ b/google/ads/googleads/v8/enums/keyword_plan_network.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanNetworkProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Keyword Planner forecastable network types. + +// Container for enumeration of keyword plan forecastable network types. +message KeywordPlanNetworkEnum { + // Enumerates keyword plan forecastable network types. + enum KeywordPlanNetwork { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Google Search. + GOOGLE_SEARCH = 2; + + // Google Search + Search partners. + GOOGLE_SEARCH_AND_PARTNERS = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/label_status.proto b/google/ads/googleads/v8/enums/label_status.proto new file mode 100644 index 000000000..394b2cd56 --- /dev/null +++ b/google/ads/googleads/v8/enums/label_status.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LabelStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum describing possible status of a label. +message LabelStatusEnum { + // Possible statuses of a label. + enum LabelStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Label is enabled. + ENABLED = 2; + + // Label is removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/lead_form_call_to_action_type.proto b/google/ads/googleads/v8/enums/lead_form_call_to_action_type.proto new file mode 100644 index 000000000..19bc05bd2 --- /dev/null +++ b/google/ads/googleads/v8/enums/lead_form_call_to_action_type.proto @@ -0,0 +1,84 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LeadFormCallToActionTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Describes the type of call-to-action phrases in a lead form. +message LeadFormCallToActionTypeEnum { + // Enum describing the type of call-to-action phrases in a lead form. + enum LeadFormCallToActionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Learn more. + LEARN_MORE = 2; + + // Get quote. + GET_QUOTE = 3; + + // Apply now. + APPLY_NOW = 4; + + // Sign Up. + SIGN_UP = 5; + + // Contact us. + CONTACT_US = 6; + + // Subscribe. + SUBSCRIBE = 7; + + // Download. + DOWNLOAD = 8; + + // Book now. + BOOK_NOW = 9; + + // Get offer. + GET_OFFER = 10; + + // Register. + REGISTER = 11; + + // Get info. + GET_INFO = 12; + + // Request a demo. + REQUEST_DEMO = 13; + + // Join now. + JOIN_NOW = 14; + + // Get started. + GET_STARTED = 15; + } + + +} diff --git a/google/ads/googleads/v8/enums/lead_form_desired_intent.proto b/google/ads/googleads/v8/enums/lead_form_desired_intent.proto new file mode 100644 index 000000000..8f3459047 --- /dev/null +++ b/google/ads/googleads/v8/enums/lead_form_desired_intent.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LeadFormDesiredIntentProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Describes the desired level of intent of generated leads. +message LeadFormDesiredIntentEnum { + // Enum describing the desired level of intent of generated leads. + enum LeadFormDesiredIntent { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Deliver more leads at a potentially lower quality. + LOW_INTENT = 2; + + // Deliver leads that are more qualified. + HIGH_INTENT = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/lead_form_field_user_input_type.proto b/google/ads/googleads/v8/enums/lead_form_field_user_input_type.proto new file mode 100644 index 000000000..20442fbd0 --- /dev/null +++ b/google/ads/googleads/v8/enums/lead_form_field_user_input_type.proto @@ -0,0 +1,273 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LeadFormFieldUserInputTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Describes the input type of a lead form field. +message LeadFormFieldUserInputTypeEnum { + // Enum describing the input type of a lead form field. + enum LeadFormFieldUserInputType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The user will be asked to fill in their given and family name. This field + // cannot be set at the same time as GIVEN_NAME or FAMILY_NAME. + FULL_NAME = 2; + + // The user will be asked to fill in their email address. + EMAIL = 3; + + // The user will be asked to fill in their phone number. + PHONE_NUMBER = 4; + + // The user will be asked to fill in their zip code. + POSTAL_CODE = 5; + + // The user will be asked to fill in their city. + CITY = 9; + + // The user will be asked to fill in their region part of the address (e.g. + // state for US, province for Canada). + REGION = 10; + + // The user will be asked to fill in their country. + COUNTRY = 11; + + // The user will be asked to fill in their work email address. + WORK_EMAIL = 12; + + // The user will be asked to fill in their company name. + COMPANY_NAME = 13; + + // The user will be asked to fill in their work phone. + WORK_PHONE = 14; + + // The user will be asked to fill in their job title. + JOB_TITLE = 15; + + // The user will be asked to fill in their first name. This + // field can not be set at the same time as FULL_NAME. + FIRST_NAME = 23; + + // The user will be asked to fill in their last name. This + // field can not be set at the same time as FULL_NAME. + LAST_NAME = 24; + + // Question: "Which model are you interested in?" + // Category: "Auto" + VEHICLE_MODEL = 1001; + + // Question: "Which type of vehicle are you interested in?" + // Category: "Auto" + VEHICLE_TYPE = 1002; + + // Question: "What is your preferred dealership?" + // Category: "Auto" + PREFERRED_DEALERSHIP = 1003; + + // Question: "When do you plan on purchasing a vehicle?" + // Category: "Auto" + VEHICLE_PURCHASE_TIMELINE = 1004; + + // Question: "Do you own a vehicle?" + // Category: "Auto" + VEHICLE_OWNERSHIP = 1005; + + // Question: "What vehicle ownership option are you interested in?" + // Category: "Auto" + VEHICLE_PAYMENT_TYPE = 1009; + + // Question: "What type of vehicle condition are you interested in?" + // Category: "Auto" + VEHICLE_CONDITION = 1010; + + // Question: "What size is your company?" + // Category: "Business" + COMPANY_SIZE = 1006; + + // Question: "What is your annual sales volume?" + // Category: "Business" + ANNUAL_SALES = 1007; + + // Question: "How many years have you been in business?" + // Category: "Business" + YEARS_IN_BUSINESS = 1008; + + // Question: "What is your job department?" + // Category: "Business" + JOB_DEPARTMENT = 1011; + + // Question: "What is your job role?" + // Category: "Business" + JOB_ROLE = 1012; + + // Question: "Which program are you interested in?" + // Category: "Education" + EDUCATION_PROGRAM = 1013; + + // Question: "Which course are you interested in?" + // Category: "Education" + EDUCATION_COURSE = 1014; + + // Question: "Which product are you interested in?" + // Category: "General" + PRODUCT = 1016; + + // Question: "Which service are you interested in?" + // Category: "General" + SERVICE = 1017; + + // Question: "Which offer are you interested in?" + // Category: "General" + OFFER = 1018; + + // Question: "Which category are you interested in?" + // Category: "General" + CATEGORY = 1019; + + // Question: "What is your preferred method of contact?" + // Category: "General" + PREFERRED_CONTACT_METHOD = 1020; + + // Question: "What is your preferred location?" + // Category: "General" + PREFERRED_LOCATION = 1021; + + // Question: "What is the best time to contact you?" + // Category: "General" + PREFERRED_CONTACT_TIME = 1022; + + // Question: "When are you looking to make a purchase?" + // Category: "General" + PURCHASE_TIMELINE = 1023; + + // Question: "How many years of work experience do you have?" + // Category: "Jobs" + YEARS_OF_EXPERIENCE = 1048; + + // Question: "What industry do you work in?" + // Category: "Jobs" + JOB_INDUSTRY = 1049; + + // Question: "What is your highest level of education?" + // Category: "Jobs" + LEVEL_OF_EDUCATION = 1050; + + // Question: "What type of property are you looking for?" + // Category: "Real Estate" + PROPERTY_TYPE = 1024; + + // Question: "What do you need a realtor's help with?" + // Category: "Real Estate" + REALTOR_HELP_GOAL = 1025; + + // Question: "What neighborhood are you interested in?" + // Category: "Real Estate" + PROPERTY_COMMUNITY = 1026; + + // Question: "What price range are you looking for?" + // Category: "Real Estate" + PRICE_RANGE = 1027; + + // Question: "How many bedrooms are you looking for?" + // Category: "Real Estate" + NUMBER_OF_BEDROOMS = 1028; + + // Question: "Are you looking for a fully furnished property?" + // Category: "Real Estate" + FURNISHED_PROPERTY = 1029; + + // Question: "Are you looking for properties that allow pets?" + // Category: "Real Estate" + PETS_ALLOWED_PROPERTY = 1030; + + // Question: "What is the next product you plan to purchase?" + // Category: "Retail" + NEXT_PLANNED_PURCHASE = 1031; + + // Question: "Would you like to sign up for an event?" + // Category: "Retail" + EVENT_SIGNUP_INTEREST = 1033; + + // Question: "Where are you interested in shopping?" + // Category: "Retail" + PREFERRED_SHOPPING_PLACES = 1034; + + // Question: "What is your favorite brand?" + // Category: "Retail" + FAVORITE_BRAND = 1035; + + // Question: "Which type of valid commercial license do you have?" + // Category: "Transportation" + TRANSPORTATION_COMMERCIAL_LICENSE_TYPE = 1036; + + // Question: "Interested in booking an event?" + // Category: "Travel" + EVENT_BOOKING_INTEREST = 1038; + + // Question: "What is your destination country?" + // Category: "Travel" + DESTINATION_COUNTRY = 1039; + + // Question: "What is your destination city?" + // Category: "Travel" + DESTINATION_CITY = 1040; + + // Question: "What is your departure country?" + // Category: "Travel" + DEPARTURE_COUNTRY = 1041; + + // Question: "What is your departure city?" + // Category: "Travel" + DEPARTURE_CITY = 1042; + + // Question: "What is your departure date?" + // Category: "Travel" + DEPARTURE_DATE = 1043; + + // Question: "What is your return date?" + // Category: "Travel" + RETURN_DATE = 1044; + + // Question: "How many people are you traveling with?" + // Category: "Travel" + NUMBER_OF_TRAVELERS = 1045; + + // Question: "What is your travel budget?" + // Category: "Travel" + TRAVEL_BUDGET = 1046; + + // Question: "Where do you want to stay during your travel?" + // Category: "Travel" + TRAVEL_ACCOMMODATION = 1047; + } + + +} diff --git a/google/ads/googleads/v8/enums/lead_form_post_submit_call_to_action_type.proto b/google/ads/googleads/v8/enums/lead_form_post_submit_call_to_action_type.proto new file mode 100644 index 000000000..aac94668b --- /dev/null +++ b/google/ads/googleads/v8/enums/lead_form_post_submit_call_to_action_type.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LeadFormPostSubmitCallToActionTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Describes the type of post-submit call-to-action phrases for a lead form. +message LeadFormPostSubmitCallToActionTypeEnum { + // Enum describing the type of post-submit call-to-action phrases for a lead + // form. + enum LeadFormPostSubmitCallToActionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Visit site. + VISIT_SITE = 2; + + // Download. + DOWNLOAD = 3; + + // Learn more. + LEARN_MORE = 4; + + // Shop now. + SHOP_NOW = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/legacy_app_install_ad_app_store.proto b/google/ads/googleads/v8/enums/legacy_app_install_ad_app_store.proto new file mode 100644 index 000000000..8f11ee8fe --- /dev/null +++ b/google/ads/googleads/v8/enums/legacy_app_install_ad_app_store.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LegacyAppInstallAdAppStoreProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing app store types for a legacy app install ad. + +// Container for enum describing app store type in a legacy app install ad. +message LegacyAppInstallAdAppStoreEnum { + // App store type in a legacy app install ad. + enum LegacyAppInstallAdAppStore { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Apple iTunes. + APPLE_APP_STORE = 2; + + // Google Play. + GOOGLE_PLAY = 3; + + // Windows Store. + WINDOWS_STORE = 4; + + // Windows Phone Store. + WINDOWS_PHONE_STORE = 5; + + // The app is hosted in a Chinese app store. + CN_APP_STORE = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/linked_account_type.proto b/google/ads/googleads/v8/enums/linked_account_type.proto new file mode 100644 index 000000000..7b3fcdcd1 --- /dev/null +++ b/google/ads/googleads/v8/enums/linked_account_type.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LinkedAccountTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum describing different types of Linked accounts. +message LinkedAccountTypeEnum { + // Describes the possible link types between a Google Ads customer + // and another account. + enum LinkedAccountType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // A link to provide third party app analytics data. + THIRD_PARTY_APP_ANALYTICS = 2; + + // A link to Data partner. + DATA_PARTNER = 3; + + // A link to Google Ads. + GOOGLE_ADS = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/listing_group_type.proto b/google/ads/googleads/v8/enums/listing_group_type.proto new file mode 100644 index 000000000..353c6aadf --- /dev/null +++ b/google/ads/googleads/v8/enums/listing_group_type.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ListingGroupTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing listing groups. + +// Container for enum describing the type of the listing group. +message ListingGroupTypeEnum { + // The type of the listing group. + enum ListingGroupType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Subdivision of products along some listing dimension. These nodes + // are not used by serving to target listing entries, but is purely + // to define the structure of the tree. + SUBDIVISION = 2; + + // Listing group unit that defines a bid. + UNIT = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/local_placeholder_field.proto b/google/ads/googleads/v8/enums/local_placeholder_field.proto new file mode 100644 index 000000000..3acc9b6db --- /dev/null +++ b/google/ads/googleads/v8/enums/local_placeholder_field.proto @@ -0,0 +1,119 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LocalPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Local placeholder fields. + +// Values for Local placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message LocalPlaceholderFieldEnum { + // Possible values for Local placeholder fields. + enum LocalPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Unique ID. + DEAL_ID = 2; + + // Data Type: STRING. Required. Main headline with local deal title to be + // shown in dynamic ad. + DEAL_NAME = 3; + + // Data Type: STRING. Local deal subtitle to be shown in dynamic ad. + SUBTITLE = 4; + + // Data Type: STRING. Description of local deal to be shown in dynamic ad. + DESCRIPTION = 5; + + // Data Type: STRING. Price to be shown in the ad. Highly recommended for + // dynamic ads. Example: "100.00 USD" + PRICE = 6; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 7; + + // Data Type: STRING. Sale price to be shown in the ad. + // Example: "80.00 USD" + SALE_PRICE = 8; + + // Data Type: STRING. Formatted sale price to be shown in the ad. + // Example: "On sale for $80.00", "$60 - $80" + FORMATTED_SALE_PRICE = 9; + + // Data Type: URL. Image to be displayed in the ad. + IMAGE_URL = 10; + + // Data Type: STRING. Complete property address, including postal code. + ADDRESS = 11; + + // Data Type: STRING. Category of local deal used to group like items + // together for recommendation engine. + CATEGORY = 12; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 13; + + // Data Type: URL_LIST. Required. Final URLs to be used in ad when using + // Upgraded URLs; the more specific the better (e.g. the individual URL of a + // specific local deal and its location). + FINAL_URLS = 14; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 15; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 16; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 17; + + // Data Type: STRING_LIST. List of recommended local deal IDs to show + // together with this item. + SIMILAR_DEAL_IDS = 18; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 19; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 20; + } + + +} diff --git a/google/ads/googleads/v8/enums/location_extension_targeting_criterion_field.proto b/google/ads/googleads/v8/enums/location_extension_targeting_criterion_field.proto new file mode 100644 index 000000000..8cee4802b --- /dev/null +++ b/google/ads/googleads/v8/enums/location_extension_targeting_criterion_field.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LocationExtensionTargetingCriterionFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Location Extension Targeting criterion fields. + +// Values for Location Extension Targeting criterion fields. +message LocationExtensionTargetingCriterionFieldEnum { + // Possible values for Location Extension Targeting criterion fields. + enum LocationExtensionTargetingCriterionField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Line 1 of the business address. + ADDRESS_LINE_1 = 2; + + // Data Type: STRING. Line 2 of the business address. + ADDRESS_LINE_2 = 3; + + // Data Type: STRING. City of the business address. + CITY = 4; + + // Data Type: STRING. Province of the business address. + PROVINCE = 5; + + // Data Type: STRING. Postal code of the business address. + POSTAL_CODE = 6; + + // Data Type: STRING. Country code of the business address. + COUNTRY_CODE = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/location_group_radius_units.proto b/google/ads/googleads/v8/enums/location_group_radius_units.proto new file mode 100644 index 000000000..67f49f46a --- /dev/null +++ b/google/ads/googleads/v8/enums/location_group_radius_units.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LocationGroupRadiusUnitsProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing location group radius units. + +// Container for enum describing unit of radius in location group. +message LocationGroupRadiusUnitsEnum { + // The unit of radius distance in location group (e.g. MILES) + enum LocationGroupRadiusUnits { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Meters + METERS = 2; + + // Miles + MILES = 3; + + // Milli Miles + MILLI_MILES = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/location_placeholder_field.proto b/google/ads/googleads/v8/enums/location_placeholder_field.proto new file mode 100644 index 000000000..a5591f2ed --- /dev/null +++ b/google/ads/googleads/v8/enums/location_placeholder_field.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LocationPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Location placeholder fields. + +// Values for Location placeholder fields. +message LocationPlaceholderFieldEnum { + // Possible values for Location placeholder fields. + enum LocationPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The name of the business. + BUSINESS_NAME = 2; + + // Data Type: STRING. Line 1 of the business address. + ADDRESS_LINE_1 = 3; + + // Data Type: STRING. Line 2 of the business address. + ADDRESS_LINE_2 = 4; + + // Data Type: STRING. City of the business address. + CITY = 5; + + // Data Type: STRING. Province of the business address. + PROVINCE = 6; + + // Data Type: STRING. Postal code of the business address. + POSTAL_CODE = 7; + + // Data Type: STRING. Country code of the business address. + COUNTRY_CODE = 8; + + // Data Type: STRING. Phone number of the business. + PHONE_NUMBER = 9; + } + + +} diff --git a/google/ads/googleads/v8/enums/location_source_type.proto b/google/ads/googleads/v8/enums/location_source_type.proto new file mode 100644 index 000000000..d7be983fc --- /dev/null +++ b/google/ads/googleads/v8/enums/location_source_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LocationSourceTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing location source types. + +// Used to distinguish the location source type. +message LocationSourceTypeEnum { + // The possible types of a location source. + enum LocationSourceType { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Locations associated with the customer's linked Business Profile. + GOOGLE_MY_BUSINESS = 2; + + // Affiliate (chain) store locations. For example, Best Buy store locations. + AFFILIATE = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/manager_link_status.proto b/google/ads/googleads/v8/enums/manager_link_status.proto new file mode 100644 index 000000000..797c2fc3f --- /dev/null +++ b/google/ads/googleads/v8/enums/manager_link_status.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ManagerLinkStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum describing possible status of a manager and client link. +message ManagerLinkStatusEnum { + // Possible statuses of a link. + enum ManagerLinkStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Indicates current in-effect relationship + ACTIVE = 2; + + // Indicates terminated relationship + INACTIVE = 3; + + // Indicates relationship has been requested by manager, but the client + // hasn't accepted yet. + PENDING = 4; + + // Relationship was requested by the manager, but the client has refused. + REFUSED = 5; + + // Indicates relationship has been requested by manager, but manager + // canceled it. + CANCELED = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/matching_function_context_type.proto b/google/ads/googleads/v8/enums/matching_function_context_type.proto new file mode 100644 index 000000000..a5967c735 --- /dev/null +++ b/google/ads/googleads/v8/enums/matching_function_context_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MatchingFunctionContextTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing matching function context types. + +// Container for context types for an operand in a matching function. +message MatchingFunctionContextTypeEnum { + // Possible context types for an operand in a matching function. + enum MatchingFunctionContextType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed item id in the request context. + FEED_ITEM_ID = 2; + + // The device being used (possible values are 'Desktop' or 'Mobile'). + DEVICE_NAME = 3; + + // Feed item set id in the request context. + FEED_ITEM_SET_ID = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/matching_function_operator.proto b/google/ads/googleads/v8/enums/matching_function_operator.proto new file mode 100644 index 000000000..6a37ce475 --- /dev/null +++ b/google/ads/googleads/v8/enums/matching_function_operator.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MatchingFunctionOperatorProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing matching function operators. + +// Container for enum describing matching function operator. +message MatchingFunctionOperatorEnum { + // Possible operators in a matching function. + enum MatchingFunctionOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The IN operator. + IN = 2; + + // The IDENTITY operator. + IDENTITY = 3; + + // The EQUALS operator + EQUALS = 4; + + // Operator that takes two or more operands that are of type + // FunctionOperand and checks that all the operands evaluate to true. + // For functions related to ad formats, all the operands must be in + // left_operands. + AND = 5; + + // Operator that returns true if the elements in left_operands contain any + // of the elements in right_operands. Otherwise, return false. The + // right_operands must contain at least 1 and no more than 3 + // ConstantOperands. + CONTAINS_ANY = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/media_type.proto b/google/ads/googleads/v8/enums/media_type.proto new file mode 100644 index 000000000..a01e702e8 --- /dev/null +++ b/google/ads/googleads/v8/enums/media_type.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MediaTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing media types. + +// Container for enum describing the types of media. +message MediaTypeEnum { + // The type of media. + enum MediaType { + // The media type has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Static image, used for image ad. + IMAGE = 2; + + // Small image, used for map ad. + ICON = 3; + + // ZIP file, used in fields of template ads. + MEDIA_BUNDLE = 4; + + // Audio file. + AUDIO = 5; + + // Video file. + VIDEO = 6; + + // Animated image, such as animated GIF. + DYNAMIC_IMAGE = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/merchant_center_link_status.proto b/google/ads/googleads/v8/enums/merchant_center_link_status.proto new file mode 100644 index 000000000..0a2279cf4 --- /dev/null +++ b/google/ads/googleads/v8/enums/merchant_center_link_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MerchantCenterLinkStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Merchant Center link statuses. + +// Container for enum describing possible statuses of a Google Merchant Center +// link. +message MerchantCenterLinkStatusEnum { + // Describes the possible statuses for a link between a Google Ads customer + // and a Google Merchant Center account. + enum MerchantCenterLinkStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The link is enabled. + ENABLED = 2; + + // The link has no effect. It was proposed by the Merchant Center Account + // owner and hasn't been confirmed by the customer. + PENDING = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/message_placeholder_field.proto b/google/ads/googleads/v8/enums/message_placeholder_field.proto new file mode 100644 index 000000000..ac20ff1b0 --- /dev/null +++ b/google/ads/googleads/v8/enums/message_placeholder_field.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MessagePlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Message placeholder fields. + +// Values for Message placeholder fields. +message MessagePlaceholderFieldEnum { + // Possible values for Message placeholder fields. + enum MessagePlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The name of your business. + BUSINESS_NAME = 2; + + // Data Type: STRING. Country code of phone number. + COUNTRY_CODE = 3; + + // Data Type: STRING. A phone number that's capable of sending and receiving + // text messages. + PHONE_NUMBER = 4; + + // Data Type: STRING. The text that will go in your click-to-message ad. + MESSAGE_EXTENSION_TEXT = 5; + + // Data Type: STRING. The message text automatically shows in people's + // messaging apps when they tap to send you a message. + MESSAGE_TEXT = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/mime_type.proto b/google/ads/googleads/v8/enums/mime_type.proto new file mode 100644 index 000000000..e88810f5c --- /dev/null +++ b/google/ads/googleads/v8/enums/mime_type.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MimeTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing mime types. + +// Container for enum describing the mime types. +message MimeTypeEnum { + // The mime type + enum MimeType { + // The mime type has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // MIME type of image/jpeg. + IMAGE_JPEG = 2; + + // MIME type of image/gif. + IMAGE_GIF = 3; + + // MIME type of image/png. + IMAGE_PNG = 4; + + // MIME type of application/x-shockwave-flash. + FLASH = 5; + + // MIME type of text/html. + TEXT_HTML = 6; + + // MIME type of application/pdf. + PDF = 7; + + // MIME type of application/msword. + MSWORD = 8; + + // MIME type of application/vnd.ms-excel. + MSEXCEL = 9; + + // MIME type of application/rtf. + RTF = 10; + + // MIME type of audio/wav. + AUDIO_WAV = 11; + + // MIME type of audio/mp3. + AUDIO_MP3 = 12; + + // MIME type of application/x-html5-ad-zip. + HTML5_AD_ZIP = 13; + } + + +} diff --git a/google/ads/googleads/v8/enums/minute_of_hour.proto b/google/ads/googleads/v8/enums/minute_of_hour.proto new file mode 100644 index 000000000..83389081d --- /dev/null +++ b/google/ads/googleads/v8/enums/minute_of_hour.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MinuteOfHourProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing days of week. + +// Container for enumeration of quarter-hours. +message MinuteOfHourEnum { + // Enumerates of quarter-hours. E.g. "FIFTEEN" + enum MinuteOfHour { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Zero minutes past the hour. + ZERO = 2; + + // Fifteen minutes past the hour. + FIFTEEN = 3; + + // Thirty minutes past the hour. + THIRTY = 4; + + // Forty-five minutes past the hour. + FORTY_FIVE = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/mobile_app_vendor.proto b/google/ads/googleads/v8/enums/mobile_app_vendor.proto new file mode 100644 index 000000000..f566e4d43 --- /dev/null +++ b/google/ads/googleads/v8/enums/mobile_app_vendor.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MobileAppVendorProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum describing different types of mobile app vendors. +message MobileAppVendorEnum { + // The type of mobile app vendor + enum MobileAppVendor { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Mobile app vendor for Apple app store. + APPLE_APP_STORE = 2; + + // Mobile app vendor for Google app store. + GOOGLE_APP_STORE = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/mobile_device_type.proto b/google/ads/googleads/v8/enums/mobile_device_type.proto new file mode 100644 index 000000000..ecbc057b6 --- /dev/null +++ b/google/ads/googleads/v8/enums/mobile_device_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MobileDeviceTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing mobile device types. + +// Container for enum describing the types of mobile device. +message MobileDeviceTypeEnum { + // The type of mobile device. + enum MobileDeviceType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Mobile phones. + MOBILE = 2; + + // Tablets. + TABLET = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/month_of_year.proto b/google/ads/googleads/v8/enums/month_of_year.proto new file mode 100644 index 000000000..8d830106d --- /dev/null +++ b/google/ads/googleads/v8/enums/month_of_year.proto @@ -0,0 +1,80 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MonthOfYearProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing days of week. + +// Container for enumeration of months of the year, e.g., "January". +message MonthOfYearEnum { + // Enumerates months of the year, e.g., "January". + enum MonthOfYear { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // January. + JANUARY = 2; + + // February. + FEBRUARY = 3; + + // March. + MARCH = 4; + + // April. + APRIL = 5; + + // May. + MAY = 6; + + // June. + JUNE = 7; + + // July. + JULY = 8; + + // August. + AUGUST = 9; + + // September. + SEPTEMBER = 10; + + // October. + OCTOBER = 11; + + // November. + NOVEMBER = 12; + + // December. + DECEMBER = 13; + } + + +} diff --git a/google/ads/googleads/v8/enums/negative_geo_target_type.proto b/google/ads/googleads/v8/enums/negative_geo_target_type.proto new file mode 100644 index 000000000..4cc197989 --- /dev/null +++ b/google/ads/googleads/v8/enums/negative_geo_target_type.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "NegativeGeoTargetTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing negative geo target types. + +// Container for enum describing possible negative geo target types. +message NegativeGeoTargetTypeEnum { + // The possible negative geo target types. + enum NegativeGeoTargetType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Specifies that a user is excluded from seeing the ad if they + // are in, or show interest in, advertiser's excluded locations. + PRESENCE_OR_INTEREST = 4; + + // Specifies that a user is excluded from seeing the ad if they + // are in advertiser's excluded locations. + PRESENCE = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/offline_user_data_job_failure_reason.proto b/google/ads/googleads/v8/enums/offline_user_data_job_failure_reason.proto new file mode 100644 index 000000000..223de2d55 --- /dev/null +++ b/google/ads/googleads/v8/enums/offline_user_data_job_failure_reason.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobFailureReasonProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing offline user data job failure reasons. + +// Container for enum describing reasons why an offline user data job +// failed to be processed. +message OfflineUserDataJobFailureReasonEnum { + // The failure reason of an offline user data job. + enum OfflineUserDataJobFailureReason { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The matched transactions are insufficient. + INSUFFICIENT_MATCHED_TRANSACTIONS = 2; + + // The uploaded transactions are insufficient. + INSUFFICIENT_TRANSACTIONS = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/offline_user_data_job_status.proto b/google/ads/googleads/v8/enums/offline_user_data_job_status.proto new file mode 100644 index 000000000..2f796468a --- /dev/null +++ b/google/ads/googleads/v8/enums/offline_user_data_job_status.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing offline user data job status. + +// Container for enum describing status of an offline user data job. +message OfflineUserDataJobStatusEnum { + // The status of an offline user data job. + enum OfflineUserDataJobStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The job has been successfully created and pending for uploading. + PENDING = 2; + + // Upload(s) have been accepted and data is being processed. + RUNNING = 3; + + // Uploaded data has been successfully processed. + SUCCESS = 4; + + // Uploaded data has failed to be processed. + FAILED = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/offline_user_data_job_type.proto b/google/ads/googleads/v8/enums/offline_user_data_job_type.proto new file mode 100644 index 000000000..d09315412 --- /dev/null +++ b/google/ads/googleads/v8/enums/offline_user_data_job_type.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing offline user data job types. + +// Container for enum describing types of an offline user data job. +message OfflineUserDataJobTypeEnum { + // The type of an offline user data job. + enum OfflineUserDataJobType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Store Sales Direct data for self service. + STORE_SALES_UPLOAD_FIRST_PARTY = 2; + + // Store Sales Direct data for third party. + STORE_SALES_UPLOAD_THIRD_PARTY = 3; + + // Customer Match user list data. + CUSTOMER_MATCH_USER_LIST = 4; + + // Customer Match with attribute data. + CUSTOMER_MATCH_WITH_ATTRIBUTES = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/operating_system_version_operator_type.proto b/google/ads/googleads/v8/enums/operating_system_version_operator_type.proto new file mode 100644 index 000000000..9a93f80d2 --- /dev/null +++ b/google/ads/googleads/v8/enums/operating_system_version_operator_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "OperatingSystemVersionOperatorTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing operating system version operator types. + +// Container for enum describing the type of OS operators. +message OperatingSystemVersionOperatorTypeEnum { + // The type of operating system version. + enum OperatingSystemVersionOperatorType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Equals to the specified version. + EQUALS_TO = 2; + + // Greater than or equals to the specified version. + GREATER_THAN_EQUALS_TO = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/optimization_goal_type.proto b/google/ads/googleads/v8/enums/optimization_goal_type.proto new file mode 100644 index 000000000..0c31b4f71 --- /dev/null +++ b/google/ads/googleads/v8/enums/optimization_goal_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "OptimizationGoalTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing optimization goal type. + +// Container for enum describing the type of optimization goal. +message OptimizationGoalTypeEnum { + // The type of optimization goal + enum OptimizationGoalType { + // Not specified. + UNSPECIFIED = 0; + + // Used as a return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Optimize for call clicks. Call click conversions are times people + // selected 'Call' to contact a store after viewing an ad. + CALL_CLICKS = 2; + + // Optimize for driving directions. Driving directions conversions are + // times people selected 'Get directions' to navigate to a store after + // viewing an ad. + DRIVING_DIRECTIONS = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/parental_status_type.proto b/google/ads/googleads/v8/enums/parental_status_type.proto new file mode 100644 index 000000000..ed9658314 --- /dev/null +++ b/google/ads/googleads/v8/enums/parental_status_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ParentalStatusTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing parenal status types. + +// Container for enum describing the type of demographic parental statuses. +message ParentalStatusTypeEnum { + // The type of parental statuses (e.g. not a parent). + enum ParentalStatusType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Parent. + PARENT = 300; + + // Not a parent. + NOT_A_PARENT = 301; + + // Undetermined parental status. + UNDETERMINED = 302; + } + + +} diff --git a/google/ads/googleads/v8/enums/payment_mode.proto b/google/ads/googleads/v8/enums/payment_mode.proto new file mode 100644 index 000000000..bb2de22d7 --- /dev/null +++ b/google/ads/googleads/v8/enums/payment_mode.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PaymentModeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing payment modes. + +// Container for enum describing possible payment modes. +message PaymentModeEnum { + // Enum describing possible payment modes. + enum PaymentMode { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Pay per click. + CLICKS = 4; + + // Pay per conversion value. This mode is only supported by campaigns with + // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION, and + // BudgetType.HOTEL_ADS_COMMISSION. + CONVERSION_VALUE = 5; + + // Pay per conversion. This mode is only supported by campaigns with + // AdvertisingChannelType.DISPLAY (excluding + // AdvertisingChannelSubType.DISPLAY_GMAIL), BiddingStrategyType.TARGET_CPA, + // and BudgetType.FIXED_CPA. The customer must also be eligible for this + // mode. See Customer.eligibility_failure_reasons for details. + CONVERSIONS = 6; + + // Pay per guest stay value. This mode is only supported by campaigns with + // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION, and + // BudgetType.STANDARD. + GUEST_STAY = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/placeholder_type.proto b/google/ads/googleads/v8/enums/placeholder_type.proto new file mode 100644 index 000000000..e129d9635 --- /dev/null +++ b/google/ads/googleads/v8/enums/placeholder_type.proto @@ -0,0 +1,124 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PlaceholderTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing feed placeholder types. + +// Container for enum describing possible placeholder types for a feed mapping. +message PlaceholderTypeEnum { + // Possible placeholder types for a feed mapping. + enum PlaceholderType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Lets you show links in your ad to pages from your website, including the + // main landing page. + SITELINK = 2; + + // Lets you attach a phone number to an ad, allowing customers to call + // directly from the ad. + CALL = 3; + + // Lets you provide users with a link that points to a mobile app in + // addition to a website. + APP = 4; + + // Lets you show locations of businesses from your Business Profile + // in your ad. This helps people find your locations by showing your + // ads with your address, a map to your location, or the distance to your + // business. This extension type is useful to draw customers to your + // brick-and-mortar location. + LOCATION = 5; + + // If you sell your product through retail chains, affiliate location + // extensions let you show nearby stores that carry your products. + AFFILIATE_LOCATION = 6; + + // Lets you include additional text with your search ads that provide + // detailed information about your business, including products and services + // you offer. Callouts appear in ads at the top and bottom of Google search + // results. + CALLOUT = 7; + + // Lets you add more info to your ad, specific to some predefined categories + // such as types, brands, styles, etc. A minimum of 3 text (SNIPPETS) values + // are required. + STRUCTURED_SNIPPET = 8; + + // Allows users to see your ad, click an icon, and contact you directly by + // text message. With one tap on your ad, people can contact you to book an + // appointment, get a quote, ask for information, or request a service. + MESSAGE = 9; + + // Lets you display prices for a list of items along with your ads. A price + // feed is composed of three to eight price table rows. + PRICE = 10; + + // Allows you to highlight sales and other promotions that let users see how + // they can save by buying now. + PROMOTION = 11; + + // Lets you dynamically inject custom data into the title and description + // of your ads. + AD_CUSTOMIZER = 12; + + // Indicates that this feed is for education dynamic remarketing. + DYNAMIC_EDUCATION = 13; + + // Indicates that this feed is for flight dynamic remarketing. + DYNAMIC_FLIGHT = 14; + + // Indicates that this feed is for a custom dynamic remarketing type. Use + // this only if the other business types don't apply to your products or + // services. + DYNAMIC_CUSTOM = 15; + + // Indicates that this feed is for hotels and rentals dynamic remarketing. + DYNAMIC_HOTEL = 16; + + // Indicates that this feed is for real estate dynamic remarketing. + DYNAMIC_REAL_ESTATE = 17; + + // Indicates that this feed is for travel dynamic remarketing. + DYNAMIC_TRAVEL = 18; + + // Indicates that this feed is for local deals dynamic remarketing. + DYNAMIC_LOCAL = 19; + + // Indicates that this feed is for job dynamic remarketing. + DYNAMIC_JOB = 20; + + // Lets you attach an image to an ad. + IMAGE = 21; + } + + +} diff --git a/google/ads/googleads/v8/enums/placement_type.proto b/google/ads/googleads/v8/enums/placement_type.proto new file mode 100644 index 000000000..dcc82fab0 --- /dev/null +++ b/google/ads/googleads/v8/enums/placement_type.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PlacementTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing placement types. + +// Container for enum describing possible placement types. +message PlacementTypeEnum { + // Possible placement types for a feed mapping. + enum PlacementType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Websites(e.g. 'www.flowers4sale.com'). + WEBSITE = 2; + + // Mobile application categories(e.g. 'Games'). + MOBILE_APP_CATEGORY = 3; + + // mobile applications(e.g. 'mobileapp::2-com.whatsthewordanswers'). + MOBILE_APPLICATION = 4; + + // YouTube videos(e.g. 'youtube.com/video/wtLJPvx7-ys'). + YOUTUBE_VIDEO = 5; + + // YouTube channels(e.g. 'youtube.com::L8ZULXASCc1I_oaOT0NaOQ'). + YOUTUBE_CHANNEL = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/policy_approval_status.proto b/google/ads/googleads/v8/enums/policy_approval_status.proto new file mode 100644 index 000000000..1118576e2 --- /dev/null +++ b/google/ads/googleads/v8/enums/policy_approval_status.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyApprovalStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing policy approval statuses. + +// Container for enum describing possible policy approval statuses. +message PolicyApprovalStatusEnum { + // The possible policy approval statuses. When there are several approval + // statuses available the most severe one will be used. The order of severity + // is DISAPPROVED, AREA_OF_INTEREST_ONLY, APPROVED_LIMITED and APPROVED. + enum PolicyApprovalStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Will not serve. + DISAPPROVED = 2; + + // Serves with restrictions. + APPROVED_LIMITED = 3; + + // Serves without restrictions. + APPROVED = 4; + + // Will not serve in targeted countries, but may serve for users who are + // searching for information about the targeted countries. + AREA_OF_INTEREST_ONLY = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/policy_review_status.proto b/google/ads/googleads/v8/enums/policy_review_status.proto new file mode 100644 index 000000000..cae168f2b --- /dev/null +++ b/google/ads/googleads/v8/enums/policy_review_status.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyReviewStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing policy review statuses. + +// Container for enum describing possible policy review statuses. +message PolicyReviewStatusEnum { + // The possible policy review statuses. + enum PolicyReviewStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Currently under review. + REVIEW_IN_PROGRESS = 2; + + // Primary review complete. Other reviews may be continuing. + REVIEWED = 3; + + // The resource has been resubmitted for approval or its policy decision has + // been appealed. + UNDER_APPEAL = 4; + + // The resource is eligible and may be serving but could still undergo + // further review. + ELIGIBLE_MAY_SERVE = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/policy_topic_entry_type.proto b/google/ads/googleads/v8/enums/policy_topic_entry_type.proto new file mode 100644 index 000000000..9dde752a3 --- /dev/null +++ b/google/ads/googleads/v8/enums/policy_topic_entry_type.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyTopicEntryTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing policy topic entry types. + +// Container for enum describing possible policy topic entry types. +message PolicyTopicEntryTypeEnum { + // The possible policy topic entry types. + enum PolicyTopicEntryType { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The resource will not be served. + PROHIBITED = 2; + + // The resource will not be served under some circumstances. + LIMITED = 4; + + // The resource cannot serve at all because of the current targeting + // criteria. + FULLY_LIMITED = 8; + + // May be of interest, but does not limit how the resource is served. + DESCRIPTIVE = 5; + + // Could increase coverage beyond normal. + BROADENING = 6; + + // Constrained for all targeted countries, but may serve in other countries + // through area of interest. + AREA_OF_INTEREST_ONLY = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/policy_topic_evidence_destination_mismatch_url_type.proto b/google/ads/googleads/v8/enums/policy_topic_evidence_destination_mismatch_url_type.proto new file mode 100644 index 000000000..4f2544d89 --- /dev/null +++ b/google/ads/googleads/v8/enums/policy_topic_evidence_destination_mismatch_url_type.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyTopicEvidenceDestinationMismatchUrlTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing policy topic evidence destination mismatch url types. + +// Container for enum describing possible policy topic evidence destination +// mismatch url types. +message PolicyTopicEvidenceDestinationMismatchUrlTypeEnum { + // The possible policy topic evidence destination mismatch url types. + enum PolicyTopicEvidenceDestinationMismatchUrlType { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The display url. + DISPLAY_URL = 2; + + // The final url. + FINAL_URL = 3; + + // The final mobile url. + FINAL_MOBILE_URL = 4; + + // The tracking url template, with substituted desktop url. + TRACKING_URL = 5; + + // The tracking url template, with substituted mobile url. + MOBILE_TRACKING_URL = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/policy_topic_evidence_destination_not_working_device.proto b/google/ads/googleads/v8/enums/policy_topic_evidence_destination_not_working_device.proto new file mode 100644 index 000000000..388447f3a --- /dev/null +++ b/google/ads/googleads/v8/enums/policy_topic_evidence_destination_not_working_device.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyTopicEvidenceDestinationNotWorkingDeviceProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing device of destination not working policy topic +// evidence. + +// Container for enum describing possible policy topic evidence destination not +// working devices. +message PolicyTopicEvidenceDestinationNotWorkingDeviceEnum { + // The possible policy topic evidence destination not working devices. + enum PolicyTopicEvidenceDestinationNotWorkingDevice { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Landing page doesn't work on desktop device. + DESKTOP = 2; + + // Landing page doesn't work on Android device. + ANDROID = 3; + + // Landing page doesn't work on iOS device. + IOS = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto b/google/ads/googleads/v8/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto new file mode 100644 index 000000000..cbdc26268 --- /dev/null +++ b/google/ads/googleads/v8/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing DNS error types of destination not working policy topic +// evidence. + +// Container for enum describing possible policy topic evidence destination not +// working DNS error types. +message PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum { + // The possible policy topic evidence destination not working DNS error types. + enum PolicyTopicEvidenceDestinationNotWorkingDnsErrorType { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Host name not found in DNS when fetching landing page. + HOSTNAME_NOT_FOUND = 2; + + // Google internal crawler issue when communicating with DNS. This error + // doesn't mean the landing page doesn't work. Google will recrawl the + // landing page. + GOOGLE_CRAWLER_DNS_ISSUE = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/positive_geo_target_type.proto b/google/ads/googleads/v8/enums/positive_geo_target_type.proto new file mode 100644 index 000000000..89045d744 --- /dev/null +++ b/google/ads/googleads/v8/enums/positive_geo_target_type.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PositiveGeoTargetTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing positive geo target types. + +// Container for enum describing possible positive geo target types. +message PositiveGeoTargetTypeEnum { + // The possible positive geo target types. + enum PositiveGeoTargetType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Specifies that an ad is triggered if the user is in, + // or shows interest in, advertiser's targeted locations. + PRESENCE_OR_INTEREST = 5; + + // Specifies that an ad is triggered if the user + // searches for advertiser's targeted locations. + // This can only be used with Search and standard + // Shopping campaigns. + SEARCH_INTEREST = 6; + + // Specifies that an ad is triggered if the user is in + // or regularly in advertiser's targeted locations. + PRESENCE = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/preferred_content_type.proto b/google/ads/googleads/v8/enums/preferred_content_type.proto new file mode 100644 index 000000000..5aa7b3ab0 --- /dev/null +++ b/google/ads/googleads/v8/enums/preferred_content_type.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PreferredContentTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing preferred content criterion type. + +// Container for enumeration of preferred content criterion type. +message PreferredContentTypeEnum { + // Enumerates preferred content criterion type. + enum PreferredContentType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Represents top content on YouTube. + YOUTUBE_TOP_CONTENT = 400; + } + + +} diff --git a/google/ads/googleads/v8/enums/price_extension_price_qualifier.proto b/google/ads/googleads/v8/enums/price_extension_price_qualifier.proto new file mode 100644 index 000000000..ca8e97014 --- /dev/null +++ b/google/ads/googleads/v8/enums/price_extension_price_qualifier.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PriceExtensionPriceQualifierProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing price extension price qualifier type. + +// Container for enum describing a price extension price qualifier. +message PriceExtensionPriceQualifierEnum { + // Enums of price extension price qualifier. + enum PriceExtensionPriceQualifier { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // 'From' qualifier for the price. + FROM = 2; + + // 'Up to' qualifier for the price. + UP_TO = 3; + + // 'Average' qualifier for the price. + AVERAGE = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/price_extension_price_unit.proto b/google/ads/googleads/v8/enums/price_extension_price_unit.proto new file mode 100644 index 000000000..1fc5b43f6 --- /dev/null +++ b/google/ads/googleads/v8/enums/price_extension_price_unit.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PriceExtensionPriceUnitProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing price extension price unit. + +// Container for enum describing price extension price unit. +message PriceExtensionPriceUnitEnum { + // Price extension price unit. + enum PriceExtensionPriceUnit { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Per hour. + PER_HOUR = 2; + + // Per day. + PER_DAY = 3; + + // Per week. + PER_WEEK = 4; + + // Per month. + PER_MONTH = 5; + + // Per year. + PER_YEAR = 6; + + // Per night. + PER_NIGHT = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/price_extension_type.proto b/google/ads/googleads/v8/enums/price_extension_type.proto new file mode 100644 index 000000000..b33bf87fb --- /dev/null +++ b/google/ads/googleads/v8/enums/price_extension_type.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PriceExtensionTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing price extension type. + +// Container for enum describing types for a price extension. +message PriceExtensionTypeEnum { + // Price extension type. + enum PriceExtensionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The type for showing a list of brands. + BRANDS = 2; + + // The type for showing a list of events. + EVENTS = 3; + + // The type for showing locations relevant to your business. + LOCATIONS = 4; + + // The type for showing sub-regions or districts within a city or region. + NEIGHBORHOODS = 5; + + // The type for showing a collection of product categories. + PRODUCT_CATEGORIES = 6; + + // The type for showing a collection of related product tiers. + PRODUCT_TIERS = 7; + + // The type for showing a collection of services offered by your business. + SERVICES = 8; + + // The type for showing a collection of service categories. + SERVICE_CATEGORIES = 9; + + // The type for showing a collection of related service tiers. + SERVICE_TIERS = 10; + } + + +} diff --git a/google/ads/googleads/v8/enums/price_placeholder_field.proto b/google/ads/googleads/v8/enums/price_placeholder_field.proto new file mode 100644 index 000000000..02a3236e1 --- /dev/null +++ b/google/ads/googleads/v8/enums/price_placeholder_field.proto @@ -0,0 +1,240 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PricePlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Price placeholder fields. + +// Values for Price placeholder fields. +message PricePlaceholderFieldEnum { + // Possible values for Price placeholder fields. + enum PricePlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The type of your price feed. Must match one of the + // predefined price feed type exactly. + TYPE = 2; + + // Data Type: STRING. The qualifier of each price. Must match one of the + // predefined price qualifiers exactly. + PRICE_QUALIFIER = 3; + + // Data Type: URL. Tracking template for the price feed when using Upgraded + // URLs. + TRACKING_TEMPLATE = 4; + + // Data Type: STRING. Language of the price feed. Must match one of the + // available available locale codes exactly. + LANGUAGE = 5; + + // Data Type: STRING. Final URL suffix for the price feed when using + // parallel tracking. + FINAL_URL_SUFFIX = 6; + + // Data Type: STRING. The header of item 1 of the table. + ITEM_1_HEADER = 100; + + // Data Type: STRING. The description of item 1 of the table. + ITEM_1_DESCRIPTION = 101; + + // Data Type: MONEY. The price (money with currency) of item 1 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_1_PRICE = 102; + + // Data Type: STRING. The price unit of item 1 of the table. Must match one + // of the predefined price units. + ITEM_1_UNIT = 103; + + // Data Type: URL_LIST. The final URLs of item 1 of the table when using + // Upgraded URLs. + ITEM_1_FINAL_URLS = 104; + + // Data Type: URL_LIST. The final mobile URLs of item 1 of the table when + // using Upgraded URLs. + ITEM_1_FINAL_MOBILE_URLS = 105; + + // Data Type: STRING. The header of item 2 of the table. + ITEM_2_HEADER = 200; + + // Data Type: STRING. The description of item 2 of the table. + ITEM_2_DESCRIPTION = 201; + + // Data Type: MONEY. The price (money with currency) of item 2 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_2_PRICE = 202; + + // Data Type: STRING. The price unit of item 2 of the table. Must match one + // of the predefined price units. + ITEM_2_UNIT = 203; + + // Data Type: URL_LIST. The final URLs of item 2 of the table when using + // Upgraded URLs. + ITEM_2_FINAL_URLS = 204; + + // Data Type: URL_LIST. The final mobile URLs of item 2 of the table when + // using Upgraded URLs. + ITEM_2_FINAL_MOBILE_URLS = 205; + + // Data Type: STRING. The header of item 3 of the table. + ITEM_3_HEADER = 300; + + // Data Type: STRING. The description of item 3 of the table. + ITEM_3_DESCRIPTION = 301; + + // Data Type: MONEY. The price (money with currency) of item 3 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_3_PRICE = 302; + + // Data Type: STRING. The price unit of item 3 of the table. Must match one + // of the predefined price units. + ITEM_3_UNIT = 303; + + // Data Type: URL_LIST. The final URLs of item 3 of the table when using + // Upgraded URLs. + ITEM_3_FINAL_URLS = 304; + + // Data Type: URL_LIST. The final mobile URLs of item 3 of the table when + // using Upgraded URLs. + ITEM_3_FINAL_MOBILE_URLS = 305; + + // Data Type: STRING. The header of item 4 of the table. + ITEM_4_HEADER = 400; + + // Data Type: STRING. The description of item 4 of the table. + ITEM_4_DESCRIPTION = 401; + + // Data Type: MONEY. The price (money with currency) of item 4 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_4_PRICE = 402; + + // Data Type: STRING. The price unit of item 4 of the table. Must match one + // of the predefined price units. + ITEM_4_UNIT = 403; + + // Data Type: URL_LIST. The final URLs of item 4 of the table when using + // Upgraded URLs. + ITEM_4_FINAL_URLS = 404; + + // Data Type: URL_LIST. The final mobile URLs of item 4 of the table when + // using Upgraded URLs. + ITEM_4_FINAL_MOBILE_URLS = 405; + + // Data Type: STRING. The header of item 5 of the table. + ITEM_5_HEADER = 500; + + // Data Type: STRING. The description of item 5 of the table. + ITEM_5_DESCRIPTION = 501; + + // Data Type: MONEY. The price (money with currency) of item 5 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_5_PRICE = 502; + + // Data Type: STRING. The price unit of item 5 of the table. Must match one + // of the predefined price units. + ITEM_5_UNIT = 503; + + // Data Type: URL_LIST. The final URLs of item 5 of the table when using + // Upgraded URLs. + ITEM_5_FINAL_URLS = 504; + + // Data Type: URL_LIST. The final mobile URLs of item 5 of the table when + // using Upgraded URLs. + ITEM_5_FINAL_MOBILE_URLS = 505; + + // Data Type: STRING. The header of item 6 of the table. + ITEM_6_HEADER = 600; + + // Data Type: STRING. The description of item 6 of the table. + ITEM_6_DESCRIPTION = 601; + + // Data Type: MONEY. The price (money with currency) of item 6 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_6_PRICE = 602; + + // Data Type: STRING. The price unit of item 6 of the table. Must match one + // of the predefined price units. + ITEM_6_UNIT = 603; + + // Data Type: URL_LIST. The final URLs of item 6 of the table when using + // Upgraded URLs. + ITEM_6_FINAL_URLS = 604; + + // Data Type: URL_LIST. The final mobile URLs of item 6 of the table when + // using Upgraded URLs. + ITEM_6_FINAL_MOBILE_URLS = 605; + + // Data Type: STRING. The header of item 7 of the table. + ITEM_7_HEADER = 700; + + // Data Type: STRING. The description of item 7 of the table. + ITEM_7_DESCRIPTION = 701; + + // Data Type: MONEY. The price (money with currency) of item 7 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_7_PRICE = 702; + + // Data Type: STRING. The price unit of item 7 of the table. Must match one + // of the predefined price units. + ITEM_7_UNIT = 703; + + // Data Type: URL_LIST. The final URLs of item 7 of the table when using + // Upgraded URLs. + ITEM_7_FINAL_URLS = 704; + + // Data Type: URL_LIST. The final mobile URLs of item 7 of the table when + // using Upgraded URLs. + ITEM_7_FINAL_MOBILE_URLS = 705; + + // Data Type: STRING. The header of item 8 of the table. + ITEM_8_HEADER = 800; + + // Data Type: STRING. The description of item 8 of the table. + ITEM_8_DESCRIPTION = 801; + + // Data Type: MONEY. The price (money with currency) of item 8 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_8_PRICE = 802; + + // Data Type: STRING. The price unit of item 8 of the table. Must match one + // of the predefined price units. + ITEM_8_UNIT = 803; + + // Data Type: URL_LIST. The final URLs of item 8 of the table when using + // Upgraded URLs. + ITEM_8_FINAL_URLS = 804; + + // Data Type: URL_LIST. The final mobile URLs of item 8 of the table when + // using Upgraded URLs. + ITEM_8_FINAL_MOBILE_URLS = 805; + } + + +} diff --git a/google/ads/googleads/v8/enums/product_bidding_category_level.proto b/google/ads/googleads/v8/enums/product_bidding_category_level.proto new file mode 100644 index 000000000..5df7b7184 --- /dev/null +++ b/google/ads/googleads/v8/enums/product_bidding_category_level.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductBiddingCategoryLevelProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Level of a product bidding category. +message ProductBiddingCategoryLevelEnum { + // Enum describing the level of the product bidding category. + enum ProductBiddingCategoryLevel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Level 1. + LEVEL1 = 2; + + // Level 2. + LEVEL2 = 3; + + // Level 3. + LEVEL3 = 4; + + // Level 4. + LEVEL4 = 5; + + // Level 5. + LEVEL5 = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/product_bidding_category_status.proto b/google/ads/googleads/v8/enums/product_bidding_category_status.proto new file mode 100644 index 000000000..2d16a013a --- /dev/null +++ b/google/ads/googleads/v8/enums/product_bidding_category_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductBiddingCategoryStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing bidding schemes. + +// Status of the product bidding category. +message ProductBiddingCategoryStatusEnum { + // Enum describing the status of the product bidding category. + enum ProductBiddingCategoryStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The category is active and can be used for bidding. + ACTIVE = 2; + + // The category is obsolete. Used only for reporting purposes. + OBSOLETE = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/product_channel.proto b/google/ads/googleads/v8/enums/product_channel.proto new file mode 100644 index 000000000..edb0a8ea1 --- /dev/null +++ b/google/ads/googleads/v8/enums/product_channel.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductChannelProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing bidding schemes. + +// Locality of a product offer. +message ProductChannelEnum { + // Enum describing the locality of a product offer. + enum ProductChannel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The item is sold online. + ONLINE = 2; + + // The item is sold in local stores. + LOCAL = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/product_channel_exclusivity.proto b/google/ads/googleads/v8/enums/product_channel_exclusivity.proto new file mode 100644 index 000000000..4221cfe50 --- /dev/null +++ b/google/ads/googleads/v8/enums/product_channel_exclusivity.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductChannelExclusivityProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing bidding schemes. + +// Availability of a product offer. +message ProductChannelExclusivityEnum { + // Enum describing the availability of a product offer. + enum ProductChannelExclusivity { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The item is sold through one channel only, either local stores or online + // as indicated by its ProductChannel. + SINGLE_CHANNEL = 2; + + // The item is matched to its online or local stores counterpart, indicating + // it is available for purchase in both ShoppingProductChannels. + MULTI_CHANNEL = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/product_condition.proto b/google/ads/googleads/v8/enums/product_condition.proto new file mode 100644 index 000000000..c3ef9ef80 --- /dev/null +++ b/google/ads/googleads/v8/enums/product_condition.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductConditionProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing bidding schemes. + +// Condition of a product offer. +message ProductConditionEnum { + // Enum describing the condition of a product offer. + enum ProductCondition { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The product condition is new. + NEW = 3; + + // The product condition is refurbished. + REFURBISHED = 4; + + // The product condition is used. + USED = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/product_custom_attribute_index.proto b/google/ads/googleads/v8/enums/product_custom_attribute_index.proto new file mode 100644 index 000000000..2bf696665 --- /dev/null +++ b/google/ads/googleads/v8/enums/product_custom_attribute_index.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductCustomAttributeIndexProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing product custom attributes. + +// Container for enum describing the index of the product custom attribute. +message ProductCustomAttributeIndexEnum { + // The index of the product custom attribute. + enum ProductCustomAttributeIndex { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // First product custom attribute. + INDEX0 = 7; + + // Second product custom attribute. + INDEX1 = 8; + + // Third product custom attribute. + INDEX2 = 9; + + // Fourth product custom attribute. + INDEX3 = 10; + + // Fifth product custom attribute. + INDEX4 = 11; + } + + +} diff --git a/google/ads/googleads/v8/enums/product_type_level.proto b/google/ads/googleads/v8/enums/product_type_level.proto new file mode 100644 index 000000000..4b9ca231d --- /dev/null +++ b/google/ads/googleads/v8/enums/product_type_level.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductTypeLevelProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing bidding schemes. + +// Level of the type of a product offer. +message ProductTypeLevelEnum { + // Enum describing the level of the type of a product offer. + enum ProductTypeLevel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Level 1. + LEVEL1 = 7; + + // Level 2. + LEVEL2 = 8; + + // Level 3. + LEVEL3 = 9; + + // Level 4. + LEVEL4 = 10; + + // Level 5. + LEVEL5 = 11; + } + + +} diff --git a/google/ads/googleads/v8/enums/promotion_extension_discount_modifier.proto b/google/ads/googleads/v8/enums/promotion_extension_discount_modifier.proto new file mode 100644 index 000000000..3aef5a872 --- /dev/null +++ b/google/ads/googleads/v8/enums/promotion_extension_discount_modifier.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PromotionExtensionDiscountModifierProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing promotion extension discount modifier. + +// Container for enum describing possible a promotion extension +// discount modifier. +message PromotionExtensionDiscountModifierEnum { + // A promotion extension discount modifier. + enum PromotionExtensionDiscountModifier { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // 'Up to'. + UP_TO = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/promotion_extension_occasion.proto b/google/ads/googleads/v8/enums/promotion_extension_occasion.proto new file mode 100644 index 000000000..42cea2baa --- /dev/null +++ b/google/ads/googleads/v8/enums/promotion_extension_occasion.proto @@ -0,0 +1,157 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PromotionExtensionOccasionProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing promotion extension occasion. + +// Container for enum describing a promotion extension occasion. +// For more information about the occasions please check: +// https://support.google.com/google-ads/answer/7367521 +message PromotionExtensionOccasionEnum { + // A promotion extension occasion. + enum PromotionExtensionOccasion { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // New Year's. + NEW_YEARS = 2; + + // Chinese New Year. + CHINESE_NEW_YEAR = 3; + + // Valentine's Day. + VALENTINES_DAY = 4; + + // Easter. + EASTER = 5; + + // Mother's Day. + MOTHERS_DAY = 6; + + // Father's Day. + FATHERS_DAY = 7; + + // Labor Day. + LABOR_DAY = 8; + + // Back To School. + BACK_TO_SCHOOL = 9; + + // Halloween. + HALLOWEEN = 10; + + // Black Friday. + BLACK_FRIDAY = 11; + + // Cyber Monday. + CYBER_MONDAY = 12; + + // Christmas. + CHRISTMAS = 13; + + // Boxing Day. + BOXING_DAY = 14; + + // Independence Day in any country. + INDEPENDENCE_DAY = 15; + + // National Day in any country. + NATIONAL_DAY = 16; + + // End of any season. + END_OF_SEASON = 17; + + // Winter Sale. + WINTER_SALE = 18; + + // Summer sale. + SUMMER_SALE = 19; + + // Fall Sale. + FALL_SALE = 20; + + // Spring Sale. + SPRING_SALE = 21; + + // Ramadan. + RAMADAN = 22; + + // Eid al-Fitr. + EID_AL_FITR = 23; + + // Eid al-Adha. + EID_AL_ADHA = 24; + + // Singles Day. + SINGLES_DAY = 25; + + // Women's Day. + WOMENS_DAY = 26; + + // Holi. + HOLI = 27; + + // Parent's Day. + PARENTS_DAY = 28; + + // St. Nicholas Day. + ST_NICHOLAS_DAY = 29; + + // Carnival. + CARNIVAL = 30; + + // Epiphany, also known as Three Kings' Day. + EPIPHANY = 31; + + // Rosh Hashanah. + ROSH_HASHANAH = 32; + + // Passover. + PASSOVER = 33; + + // Hanukkah. + HANUKKAH = 34; + + // Diwali. + DIWALI = 35; + + // Navratri. + NAVRATRI = 36; + + // Available in Thai: Songkran. + SONGKRAN = 37; + + // Available in Japanese: Year-end Gift. + YEAR_END_GIFT = 38; + } + + +} diff --git a/google/ads/googleads/v8/enums/promotion_placeholder_field.proto b/google/ads/googleads/v8/enums/promotion_placeholder_field.proto new file mode 100644 index 000000000..9f45604ab --- /dev/null +++ b/google/ads/googleads/v8/enums/promotion_placeholder_field.proto @@ -0,0 +1,95 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PromotionPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Promotion placeholder fields. + +// Values for Promotion placeholder fields. +message PromotionPlaceholderFieldEnum { + // Possible values for Promotion placeholder fields. + enum PromotionPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The text that appears on the ad when the extension is + // shown. + PROMOTION_TARGET = 2; + + // Data Type: STRING. Allows you to add "up to" phrase to the promotion, + // in case you have variable promotion rates. + DISCOUNT_MODIFIER = 3; + + // Data Type: INT64. Takes a value in micros, where 1 million micros + // represents 1%, and is shown as a percentage when rendered. + PERCENT_OFF = 4; + + // Data Type: MONEY. Requires a currency and an amount of money. + MONEY_AMOUNT_OFF = 5; + + // Data Type: STRING. A string that the user enters to get the discount. + PROMOTION_CODE = 6; + + // Data Type: MONEY. A minimum spend before the user qualifies for the + // promotion. + ORDERS_OVER_AMOUNT = 7; + + // Data Type: DATE. The start date of the promotion. + PROMOTION_START = 8; + + // Data Type: DATE. The end date of the promotion. + PROMOTION_END = 9; + + // Data Type: STRING. Describes the associated event for the promotion using + // one of the PromotionExtensionOccasion enum values, for example NEW_YEARS. + OCCASION = 10; + + // Data Type: URL_LIST. Final URLs to be used in the ad when using Upgraded + // URLs. + FINAL_URLS = 11; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 12; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 13; + + // Data Type: STRING. A string represented by a language code for the + // promotion. + LANGUAGE = 14; + + // Data Type: STRING. Final URL suffix for the ad when using parallel + // tracking. + FINAL_URL_SUFFIX = 15; + } + + +} diff --git a/google/ads/googleads/v8/enums/proximity_radius_units.proto b/google/ads/googleads/v8/enums/proximity_radius_units.proto new file mode 100644 index 000000000..d82f1db97 --- /dev/null +++ b/google/ads/googleads/v8/enums/proximity_radius_units.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProximityRadiusUnitsProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing proximity radius units. + +// Container for enum describing unit of radius in proximity. +message ProximityRadiusUnitsEnum { + // The unit of radius distance in proximity (e.g. MILES) + enum ProximityRadiusUnits { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Miles + MILES = 2; + + // Kilometers + KILOMETERS = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/quality_score_bucket.proto b/google/ads/googleads/v8/enums/quality_score_bucket.proto new file mode 100644 index 000000000..3e2626cbd --- /dev/null +++ b/google/ads/googleads/v8/enums/quality_score_bucket.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "QualityScoreBucketProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing quality score buckets. + +// The relative performance compared to other advertisers. +message QualityScoreBucketEnum { + // Enum listing the possible quality score buckets. + enum QualityScoreBucket { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Quality of the creative is below average. + BELOW_AVERAGE = 2; + + // Quality of the creative is average. + AVERAGE = 3; + + // Quality of the creative is above average. + ABOVE_AVERAGE = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/reach_plan_ad_length.proto b/google/ads/googleads/v8/enums/reach_plan_ad_length.proto new file mode 100644 index 000000000..dd2078465 --- /dev/null +++ b/google/ads/googleads/v8/enums/reach_plan_ad_length.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ReachPlanAdLengthProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing ad lengths of a plannable video ad. + +// Message describing length of a plannable video ad. +message ReachPlanAdLengthEnum { + // Possible ad length values. + enum ReachPlanAdLength { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // 6 seconds long ad. + SIX_SECONDS = 2; + + // 15 or 20 seconds long ad. + FIFTEEN_OR_TWENTY_SECONDS = 3; + + // More than 20 seconds long ad. + TWENTY_SECONDS_OR_MORE = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/reach_plan_age_range.proto b/google/ads/googleads/v8/enums/reach_plan_age_range.proto new file mode 100644 index 000000000..7dc1443bf --- /dev/null +++ b/google/ads/googleads/v8/enums/reach_plan_age_range.proto @@ -0,0 +1,122 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ReachPlanAgeRangeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing a plannable age range. + +// Message describing plannable age ranges. +message ReachPlanAgeRangeEnum { + // Possible plannable age range values. + enum ReachPlanAgeRange { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Between 18 and 24 years old. + AGE_RANGE_18_24 = 503001; + + // Between 18 and 34 years old. + AGE_RANGE_18_34 = 2; + + // Between 18 and 44 years old. + AGE_RANGE_18_44 = 3; + + // Between 18 and 49 years old. + AGE_RANGE_18_49 = 4; + + // Between 18 and 54 years old. + AGE_RANGE_18_54 = 5; + + // Between 18 and 64 years old. + AGE_RANGE_18_64 = 6; + + // Between 18 and 65+ years old. + AGE_RANGE_18_65_UP = 7; + + // Between 21 and 34 years old. + AGE_RANGE_21_34 = 8; + + // Between 25 and 34 years old. + AGE_RANGE_25_34 = 503002; + + // Between 25 and 44 years old. + AGE_RANGE_25_44 = 9; + + // Between 25 and 49 years old. + AGE_RANGE_25_49 = 10; + + // Between 25 and 54 years old. + AGE_RANGE_25_54 = 11; + + // Between 25 and 64 years old. + AGE_RANGE_25_64 = 12; + + // Between 25 and 65+ years old. + AGE_RANGE_25_65_UP = 13; + + // Between 35 and 44 years old. + AGE_RANGE_35_44 = 503003; + + // Between 35 and 49 years old. + AGE_RANGE_35_49 = 14; + + // Between 35 and 54 years old. + AGE_RANGE_35_54 = 15; + + // Between 35 and 64 years old. + AGE_RANGE_35_64 = 16; + + // Between 35 and 65+ years old. + AGE_RANGE_35_65_UP = 17; + + // Between 45 and 54 years old. + AGE_RANGE_45_54 = 503004; + + // Between 45 and 64 years old. + AGE_RANGE_45_64 = 18; + + // Between 45 and 65+ years old. + AGE_RANGE_45_65_UP = 19; + + // Between 50 and 65+ years old. + AGE_RANGE_50_65_UP = 20; + + // Between 55 and 64 years old. + AGE_RANGE_55_64 = 503005; + + // Between 55 and 65+ years old. + AGE_RANGE_55_65_UP = 21; + + // 65 years old and beyond. + AGE_RANGE_65_UP = 503006; + } + + +} diff --git a/google/ads/googleads/v8/enums/reach_plan_network.proto b/google/ads/googleads/v8/enums/reach_plan_network.proto new file mode 100644 index 000000000..67fca372d --- /dev/null +++ b/google/ads/googleads/v8/enums/reach_plan_network.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ReachPlanNetworkProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing a plannable network. + +// Container for enum describing plannable networks. +message ReachPlanNetworkEnum { + // Possible plannable network values. + enum ReachPlanNetwork { + // Not specified. + UNSPECIFIED = 0; + + // Used as a return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // YouTube network. + YOUTUBE = 2; + + // Google Video Partners (GVP) network. + GOOGLE_VIDEO_PARTNERS = 3; + + // A combination of the YouTube network and the Google Video Partners + // network. + YOUTUBE_AND_GOOGLE_VIDEO_PARTNERS = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/real_estate_placeholder_field.proto b/google/ads/googleads/v8/enums/real_estate_placeholder_field.proto new file mode 100644 index 000000000..08733fda6 --- /dev/null +++ b/google/ads/googleads/v8/enums/real_estate_placeholder_field.proto @@ -0,0 +1,115 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "RealEstatePlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Real Estate placeholder fields. + +// Values for Real Estate placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message RealEstatePlaceholderFieldEnum { + // Possible values for Real Estate placeholder fields. + enum RealEstatePlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Unique ID. + LISTING_ID = 2; + + // Data Type: STRING. Main headline with listing name to be shown in dynamic + // ad. + LISTING_NAME = 3; + + // Data Type: STRING. City name to be shown in dynamic ad. + CITY_NAME = 4; + + // Data Type: STRING. Description of listing to be shown in dynamic ad. + DESCRIPTION = 5; + + // Data Type: STRING. Complete listing address, including postal code. + ADDRESS = 6; + + // Data Type: STRING. Price to be shown in the ad. + // Example: "100.00 USD" + PRICE = 7; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 8; + + // Data Type: URL. Image to be displayed in the ad. + IMAGE_URL = 9; + + // Data Type: STRING. Type of property (house, condo, apartment, etc.) used + // to group like items together for recommendation engine. + PROPERTY_TYPE = 10; + + // Data Type: STRING. Type of listing (resale, rental, foreclosure, etc.) + // used to group like items together for recommendation engine. + LISTING_TYPE = 11; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 12; + + // Data Type: URL_LIST. Final URLs to be used in ad when using Upgraded + // URLs; the more specific the better (e.g. the individual URL of a specific + // listing and its location). + FINAL_URLS = 13; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 14; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 15; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 16; + + // Data Type: STRING_LIST. List of recommended listing IDs to show together + // with this item. + SIMILAR_LISTING_IDS = 17; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 18; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 19; + } + + +} diff --git a/google/ads/googleads/v8/enums/recommendation_type.proto b/google/ads/googleads/v8/enums/recommendation_type.proto new file mode 100644 index 000000000..5c48c54b2 --- /dev/null +++ b/google/ads/googleads/v8/enums/recommendation_type.proto @@ -0,0 +1,112 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "RecommendationTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Recommendation types. + +// Container for enum describing types of recommendations. +message RecommendationTypeEnum { + // Types of recommendations. + enum RecommendationType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Budget recommendation for campaigns that are currently budget-constrained + // (as opposed to the FORECASTING_CAMPAIGN_BUDGET recommendation, which + // applies to campaigns that are expected to become budget-constrained in + // the future). + CAMPAIGN_BUDGET = 2; + + // Keyword recommendation. + KEYWORD = 3; + + // Recommendation to add a new text ad. + TEXT_AD = 4; + + // Recommendation to update a campaign to use a Target CPA bidding strategy. + TARGET_CPA_OPT_IN = 5; + + // Recommendation to update a campaign to use the Maximize Conversions + // bidding strategy. + MAXIMIZE_CONVERSIONS_OPT_IN = 6; + + // Recommendation to enable Enhanced Cost Per Click for a campaign. + ENHANCED_CPC_OPT_IN = 7; + + // Recommendation to start showing your campaign's ads on Google Search + // Partners Websites. + SEARCH_PARTNERS_OPT_IN = 8; + + // Recommendation to update a campaign to use a Maximize Clicks bidding + // strategy. + MAXIMIZE_CLICKS_OPT_IN = 9; + + // Recommendation to start using the "Optimize" ad rotation setting for the + // given ad group. + OPTIMIZE_AD_ROTATION = 10; + + // Recommendation to add callout extensions to a campaign. + CALLOUT_EXTENSION = 11; + + // Recommendation to add sitelink extensions to a campaign. + SITELINK_EXTENSION = 12; + + // Recommendation to add call extensions to a campaign. + CALL_EXTENSION = 13; + + // Recommendation to change an existing keyword from one match type to a + // broader match type. + KEYWORD_MATCH_TYPE = 14; + + // Recommendation to move unused budget from one budget to a constrained + // budget. + MOVE_UNUSED_BUDGET = 15; + + // Budget recommendation for campaigns that are expected to become + // budget-constrained in the future (as opposed to the CAMPAIGN_BUDGET + // recommendation, which applies to campaigns that are currently + // budget-constrained). + FORECASTING_CAMPAIGN_BUDGET = 16; + + // Recommendation to update a campaign to use a Target ROAS bidding + // strategy. + TARGET_ROAS_OPT_IN = 17; + + // Recommendation to add a new responsive search ad. + RESPONSIVE_SEARCH_AD = 18; + + // Budget recommendation for campaigns whose ROI is predicted to increase + // with a budget adjustment. + MARGINAL_ROI_CAMPAIGN_BUDGET = 19; + } + + +} diff --git a/google/ads/googleads/v8/enums/resource_change_operation.proto b/google/ads/googleads/v8/enums/resource_change_operation.proto new file mode 100644 index 000000000..812ba3c0e --- /dev/null +++ b/google/ads/googleads/v8/enums/resource_change_operation.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ResourceChangeOperationProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing the resource change operations in change event. + +// Container for enum describing resource change operations +// in the ChangeEvent resource. +message ResourceChangeOperationEnum { + // The operation on the changed resource in change_event resource. + enum ResourceChangeOperation { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified operation unknown + // in this version. + UNKNOWN = 1; + + // The resource was created. + CREATE = 2; + + // The resource was modified. + UPDATE = 3; + + // The resource was removed. + REMOVE = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/resource_limit_type.proto b/google/ads/googleads/v8/enums/resource_limit_type.proto new file mode 100644 index 000000000..6fe8f5e89 --- /dev/null +++ b/google/ads/googleads/v8/enums/resource_limit_type.proto @@ -0,0 +1,333 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ResourceLimitTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum describing possible resource limit types. +message ResourceLimitTypeEnum { + // Resource limit type. + enum ResourceLimitType { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified operation unknown + // in this version. + UNKNOWN = 1; + + // Number of ENABLED and PAUSED campaigns per customer. + CAMPAIGNS_PER_CUSTOMER = 2; + + // Number of ENABLED and PAUSED base campaigns per customer. + BASE_CAMPAIGNS_PER_CUSTOMER = 3; + + // Number of ENABLED and PAUSED experiment campaigns per customer. + EXPERIMENT_CAMPAIGNS_PER_CUSTOMER = 105; + + // Number of ENABLED and PAUSED Hotel campaigns per customer. + HOTEL_CAMPAIGNS_PER_CUSTOMER = 4; + + // Number of ENABLED and PAUSED Smart Shopping campaigns per customer. + SMART_SHOPPING_CAMPAIGNS_PER_CUSTOMER = 5; + + // Number of ENABLED ad groups per campaign. + AD_GROUPS_PER_CAMPAIGN = 6; + + // Number of ENABLED ad groups per Shopping campaign. + AD_GROUPS_PER_SHOPPING_CAMPAIGN = 8; + + // Number of ENABLED ad groups per Hotel campaign. + AD_GROUPS_PER_HOTEL_CAMPAIGN = 9; + + // Number of ENABLED reporting ad groups per local campaign. + REPORTING_AD_GROUPS_PER_LOCAL_CAMPAIGN = 10; + + // Number of ENABLED reporting ad groups per App campaign. It includes app + // campaign and app campaign for engagement. + REPORTING_AD_GROUPS_PER_APP_CAMPAIGN = 11; + + // Number of ENABLED managed ad groups per smart campaign. + MANAGED_AD_GROUPS_PER_SMART_CAMPAIGN = 52; + + // Number of ENABLED ad group criteria per customer. + // An ad group criterion is considered as ENABLED if: + // 1. it's not REMOVED + // 2. its ad group is not REMOVED + // 3. its campaign is not REMOVED. + AD_GROUP_CRITERIA_PER_CUSTOMER = 12; + + // Number of ad group criteria across all base campaigns for a customer. + BASE_AD_GROUP_CRITERIA_PER_CUSTOMER = 13; + + // Number of ad group criteria across all experiment campaigns for a + // customer. + EXPERIMENT_AD_GROUP_CRITERIA_PER_CUSTOMER = 107; + + // Number of ENABLED ad group criteria per campaign. + // An ad group criterion is considered as ENABLED if: + // 1. it's not REMOVED + // 2. its ad group is not REMOVED. + AD_GROUP_CRITERIA_PER_CAMPAIGN = 14; + + // Number of ENABLED campaign criteria per customer. + CAMPAIGN_CRITERIA_PER_CUSTOMER = 15; + + // Number of ENABLED campaign criteria across all base campaigns for a + // customer. + BASE_CAMPAIGN_CRITERIA_PER_CUSTOMER = 16; + + // Number of ENABLED campaign criteria across all experiment campaigns for a + // customer. + EXPERIMENT_CAMPAIGN_CRITERIA_PER_CUSTOMER = 108; + + // Number of ENABLED webpage criteria per customer, including + // campaign level and ad group level. + WEBPAGE_CRITERIA_PER_CUSTOMER = 17; + + // Number of ENABLED webpage criteria across all base campaigns for + // a customer. + BASE_WEBPAGE_CRITERIA_PER_CUSTOMER = 18; + + // Meximum number of ENABLED webpage criteria across all experiment + // campaigns for a customer. + EXPERIMENT_WEBPAGE_CRITERIA_PER_CUSTOMER = 19; + + // Number of combined audience criteria per ad group. + COMBINED_AUDIENCE_CRITERIA_PER_AD_GROUP = 20; + + // Limit for placement criterion type group in customer negative criterion. + CUSTOMER_NEGATIVE_PLACEMENT_CRITERIA_PER_CUSTOMER = 21; + + // Limit for YouTube TV channels in customer negative criterion. + CUSTOMER_NEGATIVE_YOUTUBE_CHANNEL_CRITERIA_PER_CUSTOMER = 22; + + // Number of ENABLED criteria per ad group. + CRITERIA_PER_AD_GROUP = 23; + + // Number of listing group criteria per ad group. + LISTING_GROUPS_PER_AD_GROUP = 24; + + // Number of ENABLED explicitly shared budgets per customer. + EXPLICITLY_SHARED_BUDGETS_PER_CUSTOMER = 25; + + // Number of ENABLED implicitly shared budgets per customer. + IMPLICITLY_SHARED_BUDGETS_PER_CUSTOMER = 26; + + // Number of combined audience criteria per campaign. + COMBINED_AUDIENCE_CRITERIA_PER_CAMPAIGN = 27; + + // Number of negative keywords per campaign. + NEGATIVE_KEYWORDS_PER_CAMPAIGN = 28; + + // Number of excluded campaign criteria in placement dimension, e.g. + // placement, mobile application, YouTube channel, etc. The API criterion + // type is NOT limited to placement only, and this does not include + // exclusions at the ad group or other levels. + NEGATIVE_PLACEMENTS_PER_CAMPAIGN = 29; + + // Number of geo targets per campaign. + GEO_TARGETS_PER_CAMPAIGN = 30; + + // Number of negative IP blocks per campaign. + NEGATIVE_IP_BLOCKS_PER_CAMPAIGN = 32; + + // Number of proximity targets per campaign. + PROXIMITIES_PER_CAMPAIGN = 33; + + // Number of listing scopes per Shopping campaign. + LISTING_SCOPES_PER_SHOPPING_CAMPAIGN = 34; + + // Number of listing scopes per non-Shopping campaign. + LISTING_SCOPES_PER_NON_SHOPPING_CAMPAIGN = 35; + + // Number of criteria per negative keyword shared set. + NEGATIVE_KEYWORDS_PER_SHARED_SET = 36; + + // Number of criteria per negative placement shared set. + NEGATIVE_PLACEMENTS_PER_SHARED_SET = 37; + + // Default number of shared sets allowed per type per customer. + SHARED_SETS_PER_CUSTOMER_FOR_TYPE_DEFAULT = 40; + + // Number of shared sets of negative placement list type for a + // manager customer. + SHARED_SETS_PER_CUSTOMER_FOR_NEGATIVE_PLACEMENT_LIST_LOWER = 41; + + // Number of hotel_advance_booking_window bid modifiers per ad group. + HOTEL_ADVANCE_BOOKING_WINDOW_BID_MODIFIERS_PER_AD_GROUP = 44; + + // Number of ENABLED shared bidding strategies per customer. + BIDDING_STRATEGIES_PER_CUSTOMER = 45; + + // Number of open basic user lists per customer. + BASIC_USER_LISTS_PER_CUSTOMER = 47; + + // Number of open logical user lists per customer. + LOGICAL_USER_LISTS_PER_CUSTOMER = 48; + + // Number of ENABLED and PAUSED ad group ads across all base campaigns for a + // customer. + BASE_AD_GROUP_ADS_PER_CUSTOMER = 53; + + // Number of ENABLED and PAUSED ad group ads across all experiment campaigns + // for a customer. + EXPERIMENT_AD_GROUP_ADS_PER_CUSTOMER = 54; + + // Number of ENABLED and PAUSED ad group ads per campaign. + AD_GROUP_ADS_PER_CAMPAIGN = 55; + + // Number of ENABLED ads per ad group that do not fall in to other buckets. + // Includes text and many other types. + TEXT_AND_OTHER_ADS_PER_AD_GROUP = 56; + + // Number of ENABLED image ads per ad group. + IMAGE_ADS_PER_AD_GROUP = 57; + + // Number of ENABLED shopping smart ads per ad group. + SHOPPING_SMART_ADS_PER_AD_GROUP = 58; + + // Number of ENABLED responsive search ads per ad group. + RESPONSIVE_SEARCH_ADS_PER_AD_GROUP = 59; + + // Number of ENABLED app ads per ad group. + APP_ADS_PER_AD_GROUP = 60; + + // Number of ENABLED app engagement ads per ad group. + APP_ENGAGEMENT_ADS_PER_AD_GROUP = 61; + + // Number of ENABLED local ads per ad group. + LOCAL_ADS_PER_AD_GROUP = 62; + + // Number of ENABLED video ads per ad group. + VIDEO_ADS_PER_AD_GROUP = 63; + + // Number of ENABLED lead form asset links per campaign. + LEAD_FORM_ASSET_LINKS_PER_CAMPAIGN = 68; + + // Number of versions per ad. + VERSIONS_PER_AD = 82; + + // Number of ENABLED user feeds per customer. + USER_FEEDS_PER_CUSTOMER = 90; + + // Number of ENABLED system feeds per customer. + SYSTEM_FEEDS_PER_CUSTOMER = 91; + + // Number of feed attributes per feed. + FEED_ATTRIBUTES_PER_FEED = 92; + + // Number of ENABLED feed items per customer. + FEED_ITEMS_PER_CUSTOMER = 94; + + // Number of ENABLED campaign feeds per customer. + CAMPAIGN_FEEDS_PER_CUSTOMER = 95; + + // Number of ENABLED campaign feeds across all base campaigns for a + // customer. + BASE_CAMPAIGN_FEEDS_PER_CUSTOMER = 96; + + // Number of ENABLED campaign feeds across all experiment campaigns for a + // customer. + EXPERIMENT_CAMPAIGN_FEEDS_PER_CUSTOMER = 109; + + // Number of ENABLED ad group feeds per customer. + AD_GROUP_FEEDS_PER_CUSTOMER = 97; + + // Number of ENABLED ad group feeds across all base campaigns for a + // customer. + BASE_AD_GROUP_FEEDS_PER_CUSTOMER = 98; + + // Number of ENABLED ad group feeds across all experiment campaigns for a + // customer. + EXPERIMENT_AD_GROUP_FEEDS_PER_CUSTOMER = 110; + + // Number of ENABLED ad group feeds per campaign. + AD_GROUP_FEEDS_PER_CAMPAIGN = 99; + + // Number of ENABLED feed items per customer. + FEED_ITEM_SETS_PER_CUSTOMER = 100; + + // Number of feed items per feed item set. + FEED_ITEMS_PER_FEED_ITEM_SET = 101; + + // Number of ENABLED campaign experiments per customer. + CAMPAIGN_EXPERIMENTS_PER_CUSTOMER = 112; + + // Number of video experiment arms per experiment. + EXPERIMENT_ARMS_PER_VIDEO_EXPERIMENT = 113; + + // Number of owned labels per customer. + OWNED_LABELS_PER_CUSTOMER = 115; + + // Number of applied labels per campaign. + LABELS_PER_CAMPAIGN = 117; + + // Number of applied labels per ad group. + LABELS_PER_AD_GROUP = 118; + + // Number of applied labels per ad group ad. + LABELS_PER_AD_GROUP_AD = 119; + + // Number of applied labels per ad group criterion. + LABELS_PER_AD_GROUP_CRITERION = 120; + + // Number of customers with a single label applied. + TARGET_CUSTOMERS_PER_LABEL = 121; + + // Number of ENABLED keyword plans per user per customer. + // The limit is applied per pair because by default a plan + // is private to a user of a customer. Each user of a customer has his or + // her own independent limit. + KEYWORD_PLANS_PER_USER_PER_CUSTOMER = 122; + + // Number of keyword plan ad group keywords per keyword plan. + KEYWORD_PLAN_AD_GROUP_KEYWORDS_PER_KEYWORD_PLAN = 123; + + // Number of keyword plan ad groups per keyword plan. + KEYWORD_PLAN_AD_GROUPS_PER_KEYWORD_PLAN = 124; + + // Number of keyword plan negative keywords (both campaign and ad group) per + // keyword plan. + KEYWORD_PLAN_NEGATIVE_KEYWORDS_PER_KEYWORD_PLAN = 125; + + // Number of keyword plan campaigns per keyword plan. + KEYWORD_PLAN_CAMPAIGNS_PER_KEYWORD_PLAN = 126; + + // Number of ENABLED conversion actions per customer. + CONVERSION_ACTIONS_PER_CUSTOMER = 128; + + // Number of operations in a single batch job. + BATCH_JOB_OPERATIONS_PER_JOB = 130; + + // Number of PENDING or ENABLED batch jobs per customer. + BATCH_JOBS_PER_CUSTOMER = 131; + + // Number of hotel check-in date range bid modifiers per ad agroup. + HOTEL_CHECK_IN_DATE_RANGE_BID_MODIFIERS_PER_AD_GROUP = 132; + } + + +} diff --git a/google/ads/googleads/v8/enums/response_content_type.proto b/google/ads/googleads/v8/enums/response_content_type.proto new file mode 100644 index 000000000..b3b8fe73b --- /dev/null +++ b/google/ads/googleads/v8/enums/response_content_type.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ResponseContentTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing the response content types used in mutate operations. + +// Container for possible response content types. +message ResponseContentTypeEnum { + // Possible response content types. + enum ResponseContentType { + // Not specified. Will return the resource name only in the response. + UNSPECIFIED = 0; + + // The mutate response will be the resource name. + RESOURCE_NAME_ONLY = 1; + + // The mutate response will be the resource name and the resource with + // all mutable fields. + MUTABLE_RESOURCE = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/search_engine_results_page_type.proto b/google/ads/googleads/v8/enums/search_engine_results_page_type.proto new file mode 100644 index 000000000..29f7e11aa --- /dev/null +++ b/google/ads/googleads/v8/enums/search_engine_results_page_type.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SearchEngineResultsPageTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing search engine results page types. + +// The type of the search engine results page. +message SearchEngineResultsPageTypeEnum { + // The type of the search engine results page. + enum SearchEngineResultsPageType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Only ads were contained in the search engine results page. + ADS_ONLY = 2; + + // Only organic results were contained in the search engine results page. + ORGANIC_ONLY = 3; + + // Both ads and organic results were contained in the search engine results + // page. + ADS_AND_ORGANIC = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/search_term_match_type.proto b/google/ads/googleads/v8/enums/search_term_match_type.proto new file mode 100644 index 000000000..466903958 --- /dev/null +++ b/google/ads/googleads/v8/enums/search_term_match_type.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SearchTermMatchTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing search term match types. + +// Container for enum describing match types for a keyword triggering an ad. +message SearchTermMatchTypeEnum { + // Possible match types for a keyword triggering an ad, including variants. + enum SearchTermMatchType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Broad match. + BROAD = 2; + + // Exact match. + EXACT = 3; + + // Phrase match. + PHRASE = 4; + + // Exact match (close variant). + NEAR_EXACT = 5; + + // Phrase match (close variant). + NEAR_PHRASE = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/search_term_targeting_status.proto b/google/ads/googleads/v8/enums/search_term_targeting_status.proto new file mode 100644 index 000000000..5bf1e2e54 --- /dev/null +++ b/google/ads/googleads/v8/enums/search_term_targeting_status.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SearchTermTargetingStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing search term targeting statuses. + +// Container for enum indicating whether a search term is one of your targeted +// or excluded keywords. +message SearchTermTargetingStatusEnum { + // Indicates whether the search term is one of your targeted or excluded + // keywords. + enum SearchTermTargetingStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Search term is added to targeted keywords. + ADDED = 2; + + // Search term matches a negative keyword. + EXCLUDED = 3; + + // Search term has been both added and excluded. + ADDED_EXCLUDED = 4; + + // Search term is neither targeted nor excluded. + NONE = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/seasonality_event_scope.proto b/google/ads/googleads/v8/enums/seasonality_event_scope.proto new file mode 100644 index 000000000..ed90a47fb --- /dev/null +++ b/google/ads/googleads/v8/enums/seasonality_event_scope.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SeasonalityEventScopeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing seasonality event status. + +// Message describing seasonality event scopes. The two types of seasonality +// events are BiddingSeasonalityAdjustments and BiddingDataExclusions. +message SeasonalityEventScopeEnum { + // The possible scopes of a Seasonality Event. + enum SeasonalityEventScope { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The seasonality event is applied to all the customer’s traffic for + // supported advertising channel types and device types. The CUSTOMER scope + // cannot be used in mutates. + CUSTOMER = 2; + + // The seasonality event is applied to all specified campaigns. + CAMPAIGN = 4; + + // The seasonality event is applied to all campaigns that belong to + // specified channel types. + CHANNEL = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/seasonality_event_status.proto b/google/ads/googleads/v8/enums/seasonality_event_status.proto new file mode 100644 index 000000000..5255b696e --- /dev/null +++ b/google/ads/googleads/v8/enums/seasonality_event_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SeasonalityEventStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing seasonality event status. + +// Message describing seasonality event statuses. The two types of seasonality +// events are BiddingSeasonalityAdjustments and BiddingDataExclusions. +message SeasonalityEventStatusEnum { + // The possible statuses of a Seasonality Event. + enum SeasonalityEventStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The seasonality event is enabled. + ENABLED = 2; + + // The seasonality event is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/served_asset_field_type.proto b/google/ads/googleads/v8/enums/served_asset_field_type.proto new file mode 100644 index 000000000..7886f0da0 --- /dev/null +++ b/google/ads/googleads/v8/enums/served_asset_field_type.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ServedAssetFieldTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing policy review statuses. + +// Container for enum describing possible asset field types. +message ServedAssetFieldTypeEnum { + // The possible asset field types. + enum ServedAssetFieldType { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The asset is used in headline 1. + HEADLINE_1 = 2; + + // The asset is used in headline 2. + HEADLINE_2 = 3; + + // The asset is used in headline 3. + HEADLINE_3 = 4; + + // The asset is used in description 1. + DESCRIPTION_1 = 5; + + // The asset is used in description 2. + DESCRIPTION_2 = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/shared_set_status.proto b/google/ads/googleads/v8/enums/shared_set_status.proto new file mode 100644 index 000000000..4f861128b --- /dev/null +++ b/google/ads/googleads/v8/enums/shared_set_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SharedSetStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing shared set statuses. + +// Container for enum describing types of shared set statuses. +message SharedSetStatusEnum { + // Enum listing the possible shared set statuses. + enum SharedSetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The shared set is enabled. + ENABLED = 2; + + // The shared set is removed and can no longer be used. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/shared_set_type.proto b/google/ads/googleads/v8/enums/shared_set_type.proto new file mode 100644 index 000000000..43e284dcf --- /dev/null +++ b/google/ads/googleads/v8/enums/shared_set_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SharedSetTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing shared set types. + +// Container for enum describing types of shared sets. +message SharedSetTypeEnum { + // Enum listing the possible shared set types. + enum SharedSetType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // A set of keywords that can be excluded from targeting. + NEGATIVE_KEYWORDS = 2; + + // A set of placements that can be excluded from targeting. + NEGATIVE_PLACEMENTS = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/simulation_modification_method.proto b/google/ads/googleads/v8/enums/simulation_modification_method.proto new file mode 100644 index 000000000..d4fe28dec --- /dev/null +++ b/google/ads/googleads/v8/enums/simulation_modification_method.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SimulationModificationMethodProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing simulation modification methods. + +// Container for enum describing the method by which a simulation modifies +// a field. +message SimulationModificationMethodEnum { + // Enum describing the method by which a simulation modifies a field. + enum SimulationModificationMethod { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The values in a simulation were applied to all children of a given + // resource uniformly. Overrides on child resources were not respected. + UNIFORM = 2; + + // The values in a simulation were applied to the given resource. + // Overrides on child resources were respected, and traffic estimates + // do not include these resources. + DEFAULT = 3; + + // The values in a simulation were all scaled by the same factor. + // For example, in a simulated TargetCpa campaign, the campaign target and + // all ad group targets were scaled by a factor of X. + SCALING = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/simulation_type.proto b/google/ads/googleads/v8/enums/simulation_type.proto new file mode 100644 index 000000000..73a97e702 --- /dev/null +++ b/google/ads/googleads/v8/enums/simulation_type.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SimulationTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing simulation types. + +// Container for enum describing the field a simulation modifies. +message SimulationTypeEnum { + // Enum describing the field a simulation modifies. + enum SimulationType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The simulation is for a CPC bid. + CPC_BID = 2; + + // The simulation is for a CPV bid. + CPV_BID = 3; + + // The simulation is for a CPA target. + TARGET_CPA = 4; + + // The simulation is for a bid modifier. + BID_MODIFIER = 5; + + // The simulation is for a ROAS target. + TARGET_ROAS = 6; + + // The simulation is for a percent CPC bid. + PERCENT_CPC_BID = 7; + + // The simulation is for an impression share target. + TARGET_IMPRESSION_SHARE = 8; + + // The simulation is for a budget. + BUDGET = 9; + } + + +} diff --git a/google/ads/googleads/v8/enums/sitelink_placeholder_field.proto b/google/ads/googleads/v8/enums/sitelink_placeholder_field.proto new file mode 100644 index 000000000..600a0aed6 --- /dev/null +++ b/google/ads/googleads/v8/enums/sitelink_placeholder_field.proto @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SitelinkPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Sitelink placeholder fields. + +// Values for Sitelink placeholder fields. +message SitelinkPlaceholderFieldEnum { + // Possible values for Sitelink placeholder fields. + enum SitelinkPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The link text for your sitelink. + TEXT = 2; + + // Data Type: STRING. First line of the sitelink description. + LINE_1 = 3; + + // Data Type: STRING. Second line of the sitelink description. + LINE_2 = 4; + + // Data Type: URL_LIST. Final URLs for the sitelink when using Upgraded + // URLs. + FINAL_URLS = 5; + + // Data Type: URL_LIST. Final Mobile URLs for the sitelink when using + // Upgraded URLs. + FINAL_MOBILE_URLS = 6; + + // Data Type: URL. Tracking template for the sitelink when using Upgraded + // URLs. + TRACKING_URL = 7; + + // Data Type: STRING. Final URL suffix for sitelink when using parallel + // tracking. + FINAL_URL_SUFFIX = 8; + } + + +} diff --git a/google/ads/googleads/v8/enums/slot.proto b/google/ads/googleads/v8/enums/slot.proto new file mode 100644 index 000000000..744848795 --- /dev/null +++ b/google/ads/googleads/v8/enums/slot.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SlotProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing slots. + +// Container for enumeration of possible positions of the Ad. +message SlotEnum { + // Enumerates possible positions of the Ad. + enum Slot { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Google search: Side. + SEARCH_SIDE = 2; + + // Google search: Top. + SEARCH_TOP = 3; + + // Google search: Other. + SEARCH_OTHER = 4; + + // Google Display Network. + CONTENT = 5; + + // Search partners: Top. + SEARCH_PARTNER_TOP = 6; + + // Search partners: Other. + SEARCH_PARTNER_OTHER = 7; + + // Cross-network. + MIXED = 8; + } + + +} diff --git a/google/ads/googleads/v8/enums/spending_limit_type.proto b/google/ads/googleads/v8/enums/spending_limit_type.proto new file mode 100644 index 000000000..f9ad5e277 --- /dev/null +++ b/google/ads/googleads/v8/enums/spending_limit_type.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SpendingLimitTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing SpendingLimit types. + +// Message describing spending limit types. +message SpendingLimitTypeEnum { + // The possible spending limit types used by certain resources as an + // alternative to absolute money values in micros. + enum SpendingLimitType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Infinite, indicates unlimited spending power. + INFINITE = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/structured_snippet_placeholder_field.proto b/google/ads/googleads/v8/enums/structured_snippet_placeholder_field.proto new file mode 100644 index 000000000..9c622689f --- /dev/null +++ b/google/ads/googleads/v8/enums/structured_snippet_placeholder_field.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "StructuredSnippetPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Structured Snippet placeholder fields. + +// Values for Structured Snippet placeholder fields. +message StructuredSnippetPlaceholderFieldEnum { + // Possible values for Structured Snippet placeholder fields. + enum StructuredSnippetPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The category of snippet of your products/services. + // Must match exactly one of the predefined structured snippets headers. + // For a list, visit + // https://developers.google.com/adwords/api/docs/appendix/structured-snippet-headers + HEADER = 2; + + // Data Type: STRING_LIST. Text values that describe your products/services. + // All text must be family safe. Special or non-ASCII characters are not + // permitted. A snippet can be at most 25 characters. + SNIPPETS = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/summary_row_setting.proto b/google/ads/googleads/v8/enums/summary_row_setting.proto new file mode 100644 index 000000000..e800090fa --- /dev/null +++ b/google/ads/googleads/v8/enums/summary_row_setting.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SummaryRowSettingProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing summary row setting. + +// Indicates summary row setting in request parameter. +message SummaryRowSettingEnum { + // Enum describing return summary row settings. + enum SummaryRowSetting { + // Not specified. + UNSPECIFIED = 0; + + // Represent unknown values of return summary row. + UNKNOWN = 1; + + // Do not return summary row. + NO_SUMMARY_ROW = 2; + + // Return summary row along with results. The summary row will be returned + // in the last batch alone (last batch will contain no results). + SUMMARY_ROW_WITH_RESULTS = 3; + + // Return summary row only and return no results. + SUMMARY_ROW_ONLY = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/system_managed_entity_source.proto b/google/ads/googleads/v8/enums/system_managed_entity_source.proto new file mode 100644 index 000000000..c20b0bce4 --- /dev/null +++ b/google/ads/googleads/v8/enums/system_managed_entity_source.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SystemManagedEntitySourceProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing system managed entity sources. + +// Container for enum describing possible system managed entity sources. +message SystemManagedResourceSourceEnum { + // Enum listing the possible system managed entity sources. + enum SystemManagedResourceSource { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Generated ad variations experiment ad. + AD_VARIATIONS = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/target_cpa_opt_in_recommendation_goal.proto b/google/ads/googleads/v8/enums/target_cpa_opt_in_recommendation_goal.proto new file mode 100644 index 000000000..af00d8a78 --- /dev/null +++ b/google/ads/googleads/v8/enums/target_cpa_opt_in_recommendation_goal.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TargetCpaOptInRecommendationGoalProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing TargetCpaOptIn recommendation goals. + +// Container for enum describing goals for TargetCpaOptIn recommendation. +message TargetCpaOptInRecommendationGoalEnum { + // Goal of TargetCpaOptIn recommendation. + enum TargetCpaOptInRecommendationGoal { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Recommendation to set Target CPA to maintain the same cost. + SAME_COST = 2; + + // Recommendation to set Target CPA to maintain the same conversions. + SAME_CONVERSIONS = 3; + + // Recommendation to set Target CPA to maintain the same CPA. + SAME_CPA = 4; + + // Recommendation to set Target CPA to a value that is as close as possible + // to, yet lower than, the actual CPA (computed for past 28 days). + CLOSEST_CPA = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/target_impression_share_location.proto b/google/ads/googleads/v8/enums/target_impression_share_location.proto new file mode 100644 index 000000000..3b575a6ea --- /dev/null +++ b/google/ads/googleads/v8/enums/target_impression_share_location.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TargetImpressionShareLocationProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing target impression share goal. + +// Container for enum describing where on the first search results page the +// automated bidding system should target impressions for the +// TargetImpressionShare bidding strategy. +message TargetImpressionShareLocationEnum { + // Enum describing possible goals. + enum TargetImpressionShareLocation { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Any location on the web page. + ANYWHERE_ON_PAGE = 2; + + // Top box of ads. + TOP_OF_PAGE = 3; + + // Top slot in the top box of ads. + ABSOLUTE_TOP_OF_PAGE = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/targeting_dimension.proto b/google/ads/googleads/v8/enums/targeting_dimension.proto new file mode 100644 index 000000000..3bbe02f33 --- /dev/null +++ b/google/ads/googleads/v8/enums/targeting_dimension.proto @@ -0,0 +1,74 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TargetingDimensionProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing criteria types. + +// The dimensions that can be targeted. +message TargetingDimensionEnum { + // Enum describing possible targeting dimensions. + enum TargetingDimension { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Keyword criteria, e.g. 'mars cruise'. KEYWORD may be used as a custom bid + // dimension. Keywords are always a targeting dimension, so may not be set + // as a target "ALL" dimension with TargetRestriction. + KEYWORD = 2; + + // Audience criteria, which include user list, user interest, custom + // affinity, and custom in market. + AUDIENCE = 3; + + // Topic criteria for targeting categories of content, e.g. + // 'category::Animals>Pets' Used for Display and Video targeting. + TOPIC = 4; + + // Criteria for targeting gender. + GENDER = 5; + + // Criteria for targeting age ranges. + AGE_RANGE = 6; + + // Placement criteria, which include websites like 'www.flowers4sale.com', + // as well as mobile applications, mobile app categories, YouTube videos, + // and YouTube channels. + PLACEMENT = 7; + + // Criteria for parental status targeting. + PARENTAL_STATUS = 8; + + // Criteria for income range targeting. + INCOME_RANGE = 9; + } + + +} diff --git a/google/ads/googleads/v8/enums/time_type.proto b/google/ads/googleads/v8/enums/time_type.proto new file mode 100644 index 000000000..d03b82038 --- /dev/null +++ b/google/ads/googleads/v8/enums/time_type.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TimeTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing TimeType types. + +// Message describing time types. +message TimeTypeEnum { + // The possible time types used by certain resources as an alternative to + // absolute timestamps. + enum TimeType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // As soon as possible. + NOW = 2; + + // An infinite point in the future. + FOREVER = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/tracking_code_page_format.proto b/google/ads/googleads/v8/enums/tracking_code_page_format.proto new file mode 100644 index 000000000..5fc587368 --- /dev/null +++ b/google/ads/googleads/v8/enums/tracking_code_page_format.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TrackingCodePageFormatProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum describing the format of the web page where the tracking +// tag and snippet will be installed. +message TrackingCodePageFormatEnum { + // The format of the web page where the tracking tag and snippet will be + // installed. + enum TrackingCodePageFormat { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Standard HTML page format. + HTML = 2; + + // Google AMP page format. + AMP = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/tracking_code_type.proto b/google/ads/googleads/v8/enums/tracking_code_type.proto new file mode 100644 index 000000000..28ba63ab7 --- /dev/null +++ b/google/ads/googleads/v8/enums/tracking_code_type.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TrackingCodeTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Container for enum describing the type of the generated tag snippets for +// tracking conversions. +message TrackingCodeTypeEnum { + // The type of the generated tag snippets for tracking conversions. + enum TrackingCodeType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The snippet that is fired as a result of a website page loading. + WEBPAGE = 2; + + // The snippet contains a JavaScript function which fires the tag. This + // function is typically called from an onClick handler added to a link or + // button element on the page. + WEBPAGE_ONCLICK = 3; + + // For embedding on a mobile webpage. The snippet contains a JavaScript + // function which fires the tag. + CLICK_TO_CALL = 4; + + // The snippet that is used to replace the phone number on your website with + // a Google forwarding number for call tracking purposes. + WEBSITE_CALL = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/travel_placeholder_field.proto b/google/ads/googleads/v8/enums/travel_placeholder_field.proto new file mode 100644 index 000000000..f5399c979 --- /dev/null +++ b/google/ads/googleads/v8/enums/travel_placeholder_field.proto @@ -0,0 +1,128 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TravelPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing Travel placeholder fields. + +// Values for Travel placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message TravelPlaceholderFieldEnum { + // Possible values for Travel placeholder fields. + enum TravelPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Destination id. Example: PAR, LON. + // For feed items that only have destination id, destination id must be a + // unique key. For feed items that have both destination id and origin id, + // then the combination must be a unique key. + DESTINATION_ID = 2; + + // Data Type: STRING. Origin id. Example: PAR, LON. + // Combination of DESTINATION_ID and ORIGIN_ID must be + // unique per offer. + ORIGIN_ID = 3; + + // Data Type: STRING. Required. Main headline with name to be shown in + // dynamic ad. + TITLE = 4; + + // Data Type: STRING. The destination name. Shorter names are recommended. + DESTINATION_NAME = 5; + + // Data Type: STRING. Origin name. Shorter names are recommended. + ORIGIN_NAME = 6; + + // Data Type: STRING. Price to be shown in the ad. Highly recommended for + // dynamic ads. + // Example: "100.00 USD" + PRICE = 7; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 8; + + // Data Type: STRING. Sale price to be shown in the ad. + // Example: "80.00 USD" + SALE_PRICE = 9; + + // Data Type: STRING. Formatted sale price to be shown in the ad. + // Example: "On sale for $80.00", "$60 - $80" + FORMATTED_SALE_PRICE = 10; + + // Data Type: URL. Image to be displayed in the ad. + IMAGE_URL = 11; + + // Data Type: STRING. Category of travel offer used to group like items + // together for recommendation engine. + CATEGORY = 12; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 13; + + // Data Type: STRING. Address of travel offer, including postal code. + DESTINATION_ADDRESS = 14; + + // Data Type: URL_LIST. Required. Final URLs to be used in ad, when using + // Upgraded URLs; the more specific the better (e.g. the individual URL of a + // specific travel offer and its location). + FINAL_URL = 15; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 16; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 17; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 18; + + // Data Type: STRING_LIST. List of recommended destination IDs to show + // together with this item. + SIMILAR_DESTINATION_IDS = 19; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 20; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 21; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_identifier_source.proto b/google/ads/googleads/v8/enums/user_identifier_source.proto new file mode 100644 index 000000000..9165a6c82 --- /dev/null +++ b/google/ads/googleads/v8/enums/user_identifier_source.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserIdentifierSourceProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing user identifier source + +// Container for enum describing the source of the user identifier for offline +// Store Sales, click conversion, and conversion adjustment uploads. +message UserIdentifierSourceEnum { + // The type of user identifier source for offline Store Sales, click + // conversion, and conversion adjustment uploads. + enum UserIdentifierSource { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version + UNKNOWN = 1; + + // Indicates that the user identifier was provided by the first party + // (advertiser). + FIRST_PARTY = 2; + + // Indicates that the user identifier was provided by the third party + // (partner). + THIRD_PARTY = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_interest_taxonomy_type.proto b/google/ads/googleads/v8/enums/user_interest_taxonomy_type.proto new file mode 100644 index 000000000..4246ab631 --- /dev/null +++ b/google/ads/googleads/v8/enums/user_interest_taxonomy_type.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserInterestTaxonomyTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing the UserInterest taxonomy type + +// Message describing a UserInterestTaxonomyType. +message UserInterestTaxonomyTypeEnum { + // Enum containing the possible UserInterestTaxonomyTypes. + enum UserInterestTaxonomyType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The affinity for this user interest. + AFFINITY = 2; + + // The market for this user interest. + IN_MARKET = 3; + + // Users known to have installed applications in the specified categories. + MOBILE_APP_INSTALL_USER = 4; + + // The geographical location of the interest-based vertical. + VERTICAL_GEO = 5; + + // User interest criteria for new smart phone users. + NEW_SMART_PHONE_USER = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_access_status.proto b/google/ads/googleads/v8/enums/user_list_access_status.proto new file mode 100644 index 000000000..e8cd2fdc4 --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_access_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListAccessStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing user list access status. + +// Indicates if this client still has access to the list. +message UserListAccessStatusEnum { + // Enum containing possible user list access statuses. + enum UserListAccessStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The access is enabled. + ENABLED = 2; + + // The access is disabled. + DISABLED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_closing_reason.proto b/google/ads/googleads/v8/enums/user_list_closing_reason.proto new file mode 100644 index 000000000..e22f8e83f --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_closing_reason.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListClosingReasonProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing user list closing reason. + +// Indicates the reason why the userlist was closed. +// This enum is only used when a list is auto-closed by the system. +message UserListClosingReasonEnum { + // Enum describing possible user list closing reasons. + enum UserListClosingReason { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The userlist was closed because of not being used for over one year. + UNUSED = 2; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_combined_rule_operator.proto b/google/ads/googleads/v8/enums/user_list_combined_rule_operator.proto new file mode 100644 index 000000000..14dc6469e --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_combined_rule_operator.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListCombinedRuleOperatorProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Logical operator connecting two rules. +message UserListCombinedRuleOperatorEnum { + // Enum describing possible user list combined rule operators. + enum UserListCombinedRuleOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // A AND B. + AND = 2; + + // A AND NOT B. + AND_NOT = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_crm_data_source_type.proto b/google/ads/googleads/v8/enums/user_list_crm_data_source_type.proto new file mode 100644 index 000000000..5c76744ab --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_crm_data_source_type.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListCrmDataSourceTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Indicates source of Crm upload data. +message UserListCrmDataSourceTypeEnum { + // Enum describing possible user list crm data source type. + enum UserListCrmDataSourceType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The uploaded data is first-party data. + FIRST_PARTY = 2; + + // The uploaded data is from a third-party credit bureau. + THIRD_PARTY_CREDIT_BUREAU = 3; + + // The uploaded data is from a third-party voter file. + THIRD_PARTY_VOTER_FILE = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_date_rule_item_operator.proto b/google/ads/googleads/v8/enums/user_list_date_rule_item_operator.proto new file mode 100644 index 000000000..5c6371ece --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_date_rule_item_operator.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListDateRuleItemOperatorProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Supported rule operator for date type. +message UserListDateRuleItemOperatorEnum { + // Enum describing possible user list date rule item operators. + enum UserListDateRuleItemOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Equals. + EQUALS = 2; + + // Not Equals. + NOT_EQUALS = 3; + + // Before. + BEFORE = 4; + + // After. + AFTER = 5; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_logical_rule_operator.proto b/google/ads/googleads/v8/enums/user_list_logical_rule_operator.proto new file mode 100644 index 000000000..ed22121a6 --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_logical_rule_operator.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListLogicalRuleOperatorProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// The logical operator of the rule. +message UserListLogicalRuleOperatorEnum { + // Enum describing possible user list logical rule operators. + enum UserListLogicalRuleOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // And - all of the operands. + ALL = 2; + + // Or - at least one of the operands. + ANY = 3; + + // Not - none of the operands. + NONE = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_membership_status.proto b/google/ads/googleads/v8/enums/user_list_membership_status.proto new file mode 100644 index 000000000..29a84ff68 --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_membership_status.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListMembershipStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing user list membership status. + +// Membership status of this user list. Indicates whether a user list is open +// or active. Only open user lists can accumulate more users and can be used for +// targeting. +message UserListMembershipStatusEnum { + // Enum containing possible user list membership statuses. + enum UserListMembershipStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Open status - List is accruing members and can be targeted to. + OPEN = 2; + + // Closed status - No new members being added. Cannot be used for targeting. + CLOSED = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_number_rule_item_operator.proto b/google/ads/googleads/v8/enums/user_list_number_rule_item_operator.proto new file mode 100644 index 000000000..303226213 --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_number_rule_item_operator.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListNumberRuleItemOperatorProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Supported rule operator for number type. +message UserListNumberRuleItemOperatorEnum { + // Enum describing possible user list number rule item operators. + enum UserListNumberRuleItemOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Greater than. + GREATER_THAN = 2; + + // Greater than or equal. + GREATER_THAN_OR_EQUAL = 3; + + // Equals. + EQUALS = 4; + + // Not equals. + NOT_EQUALS = 5; + + // Less than. + LESS_THAN = 6; + + // Less than or equal. + LESS_THAN_OR_EQUAL = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_prepopulation_status.proto b/google/ads/googleads/v8/enums/user_list_prepopulation_status.proto new file mode 100644 index 000000000..6afb1b634 --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_prepopulation_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListPrepopulationStatusProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Indicates status of prepopulation based on the rule. +message UserListPrepopulationStatusEnum { + // Enum describing possible user list prepopulation status. + enum UserListPrepopulationStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Prepopoulation is being requested. + REQUESTED = 2; + + // Prepopulation is finished. + FINISHED = 3; + + // Prepopulation failed. + FAILED = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_rule_type.proto b/google/ads/googleads/v8/enums/user_list_rule_type.proto new file mode 100644 index 000000000..30d403b3a --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_rule_type.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListRuleTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Rule based user list rule type. +message UserListRuleTypeEnum { + // Enum describing possible user list rule types. + enum UserListRuleType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conjunctive normal form. + AND_OF_ORS = 2; + + // Disjunctive normal form. + OR_OF_ANDS = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_size_range.proto b/google/ads/googleads/v8/enums/user_list_size_range.proto new file mode 100644 index 000000000..8402f6946 --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_size_range.proto @@ -0,0 +1,92 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListSizeRangeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing user list size range. + +// Size range in terms of number of users of a UserList. +message UserListSizeRangeEnum { + // Enum containing possible user list size ranges. + enum UserListSizeRange { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // User list has less than 500 users. + LESS_THAN_FIVE_HUNDRED = 2; + + // User list has number of users in range of 500 to 1000. + LESS_THAN_ONE_THOUSAND = 3; + + // User list has number of users in range of 1000 to 10000. + ONE_THOUSAND_TO_TEN_THOUSAND = 4; + + // User list has number of users in range of 10000 to 50000. + TEN_THOUSAND_TO_FIFTY_THOUSAND = 5; + + // User list has number of users in range of 50000 to 100000. + FIFTY_THOUSAND_TO_ONE_HUNDRED_THOUSAND = 6; + + // User list has number of users in range of 100000 to 300000. + ONE_HUNDRED_THOUSAND_TO_THREE_HUNDRED_THOUSAND = 7; + + // User list has number of users in range of 300000 to 500000. + THREE_HUNDRED_THOUSAND_TO_FIVE_HUNDRED_THOUSAND = 8; + + // User list has number of users in range of 500000 to 1 million. + FIVE_HUNDRED_THOUSAND_TO_ONE_MILLION = 9; + + // User list has number of users in range of 1 to 2 millions. + ONE_MILLION_TO_TWO_MILLION = 10; + + // User list has number of users in range of 2 to 3 millions. + TWO_MILLION_TO_THREE_MILLION = 11; + + // User list has number of users in range of 3 to 5 millions. + THREE_MILLION_TO_FIVE_MILLION = 12; + + // User list has number of users in range of 5 to 10 millions. + FIVE_MILLION_TO_TEN_MILLION = 13; + + // User list has number of users in range of 10 to 20 millions. + TEN_MILLION_TO_TWENTY_MILLION = 14; + + // User list has number of users in range of 20 to 30 millions. + TWENTY_MILLION_TO_THIRTY_MILLION = 15; + + // User list has number of users in range of 30 to 50 millions. + THIRTY_MILLION_TO_FIFTY_MILLION = 16; + + // User list has over 50 million users. + OVER_FIFTY_MILLION = 17; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_string_rule_item_operator.proto b/google/ads/googleads/v8/enums/user_list_string_rule_item_operator.proto new file mode 100644 index 000000000..fec2ee683 --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_string_rule_item_operator.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListStringRuleItemOperatorProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Supported rule operator for string type. +message UserListStringRuleItemOperatorEnum { + // Enum describing possible user list string rule item operators. + enum UserListStringRuleItemOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Contains. + CONTAINS = 2; + + // Equals. + EQUALS = 3; + + // Starts with. + STARTS_WITH = 4; + + // Ends with. + ENDS_WITH = 5; + + // Not equals. + NOT_EQUALS = 6; + + // Not contains. + NOT_CONTAINS = 7; + + // Not starts with. + NOT_STARTS_WITH = 8; + + // Not ends with. + NOT_ENDS_WITH = 9; + } + + +} diff --git a/google/ads/googleads/v8/enums/user_list_type.proto b/google/ads/googleads/v8/enums/user_list_type.proto new file mode 100644 index 000000000..a526121d7 --- /dev/null +++ b/google/ads/googleads/v8/enums/user_list_type.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing user list type. + +// The user list types. +message UserListTypeEnum { + // Enum containing possible user list types. + enum UserListType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // UserList represented as a collection of conversion types. + REMARKETING = 2; + + // UserList represented as a combination of other user lists/interests. + LOGICAL = 3; + + // UserList created in the Google Ad Manager platform. + EXTERNAL_REMARKETING = 4; + + // UserList associated with a rule. + RULE_BASED = 5; + + // UserList with users similar to users of another UserList. + SIMILAR = 6; + + // UserList of first-party CRM data provided by advertiser in the form of + // emails or other formats. + CRM_BASED = 7; + } + + +} diff --git a/google/ads/googleads/v8/enums/value_rule_device_type.proto b/google/ads/googleads/v8/enums/value_rule_device_type.proto new file mode 100644 index 000000000..1d3e0f604 --- /dev/null +++ b/google/ads/googleads/v8/enums/value_rule_device_type.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ValueRuleDeviceTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion value rule device type. + +// Container for enum describing possible device types used in a conversion +// value rule. +message ValueRuleDeviceTypeEnum { + // Possible device types used in conversion value rule. + enum ValueRuleDeviceType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Mobile device. + MOBILE = 2; + + // Desktop device. + DESKTOP = 3; + + // Tablet device. + TABLET = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/value_rule_geo_location_match_type.proto b/google/ads/googleads/v8/enums/value_rule_geo_location_match_type.proto new file mode 100644 index 000000000..150a123f9 --- /dev/null +++ b/google/ads/googleads/v8/enums/value_rule_geo_location_match_type.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ValueRuleGeoLocationMatchTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion value rule geo location match type. + +// Container for enum describing possible geographic location matching types +// used in a conversion value rule. +message ValueRuleGeoLocationMatchTypeEnum { + // Possible geographic location matching types. + enum ValueRuleGeoLocationMatchType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Either Area of Interest or Location of Presence can be used to match. + ANY = 2; + + // Only Location of Presence can be used to match. + LOCATION_OF_PRESENCE = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/value_rule_operation.proto b/google/ads/googleads/v8/enums/value_rule_operation.proto new file mode 100644 index 000000000..6ba233af9 --- /dev/null +++ b/google/ads/googleads/v8/enums/value_rule_operation.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ValueRuleOperationProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion value rule operation. + +// Container for enum describing possible operations for value rules which are +// executed when rules are triggered. +message ValueRuleOperationEnum { + // Possible operations of the action of a conversion value rule. + enum ValueRuleOperation { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Add provided value to conversion value. + ADD = 2; + + // Multiply conversion value by provided value. + MULTIPLY = 3; + + // Set conversion value to provided value. + SET = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/value_rule_set_attachment_type.proto b/google/ads/googleads/v8/enums/value_rule_set_attachment_type.proto new file mode 100644 index 000000000..2a18f18f4 --- /dev/null +++ b/google/ads/googleads/v8/enums/value_rule_set_attachment_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ValueRuleSetAttachmentTypeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing where the conversion value rule is attached. + +// Container for enum describing where a value rule set is attached. +message ValueRuleSetAttachmentTypeEnum { + // Possible level where a value rule set is attached. + enum ValueRuleSetAttachmentType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Attached to the customer. + CUSTOMER = 2; + + // Attached to a campaign. + CAMPAIGN = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/value_rule_set_dimension.proto b/google/ads/googleads/v8/enums/value_rule_set_dimension.proto new file mode 100644 index 000000000..e365fd742 --- /dev/null +++ b/google/ads/googleads/v8/enums/value_rule_set_dimension.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ValueRuleSetDimensionProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing conversion value rule set dimension. + +// Container for enum describing possible dimensions of a conversion value rule +// set. +message ValueRuleSetDimensionEnum { + // Possible dimensions of a conversion value rule set. + enum ValueRuleSetDimension { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Dimension for geo location. + GEO_LOCATION = 2; + + // Dimension for device type. + DEVICE = 3; + + // Dimension for audience. + AUDIENCE = 4; + } + + +} diff --git a/google/ads/googleads/v8/enums/vanity_pharma_display_url_mode.proto b/google/ads/googleads/v8/enums/vanity_pharma_display_url_mode.proto new file mode 100644 index 000000000..55df5dacc --- /dev/null +++ b/google/ads/googleads/v8/enums/vanity_pharma_display_url_mode.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "VanityPharmaDisplayUrlModeProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing vanity pharma display url modes. + +// The display mode for vanity pharma URLs. +message VanityPharmaDisplayUrlModeEnum { + // Enum describing possible display modes for vanity pharma URLs. + enum VanityPharmaDisplayUrlMode { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Replace vanity pharma URL with manufacturer website url. + MANUFACTURER_WEBSITE_URL = 2; + + // Replace vanity pharma URL with description of the website. + WEBSITE_DESCRIPTION = 3; + } + + +} diff --git a/google/ads/googleads/v8/enums/vanity_pharma_text.proto b/google/ads/googleads/v8/enums/vanity_pharma_text.proto new file mode 100644 index 000000000..2e4f6e0a2 --- /dev/null +++ b/google/ads/googleads/v8/enums/vanity_pharma_text.proto @@ -0,0 +1,87 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "VanityPharmaTextProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing vanity pharma texts. + +// The text that will be displayed in display URL of the text ad when website +// description is the selected display mode for vanity pharma URLs. +message VanityPharmaTextEnum { + // Enum describing possible text. + enum VanityPharmaText { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Prescription treatment website with website content in English. + PRESCRIPTION_TREATMENT_WEBSITE_EN = 2; + + // Prescription treatment website with website content in Spanish + // (Sitio de tratamientos con receta). + PRESCRIPTION_TREATMENT_WEBSITE_ES = 3; + + // Prescription device website with website content in English. + PRESCRIPTION_DEVICE_WEBSITE_EN = 4; + + // Prescription device website with website content in Spanish (Sitio de + // dispositivos con receta). + PRESCRIPTION_DEVICE_WEBSITE_ES = 5; + + // Medical device website with website content in English. + MEDICAL_DEVICE_WEBSITE_EN = 6; + + // Medical device website with website content in Spanish (Sitio de + // dispositivos médicos). + MEDICAL_DEVICE_WEBSITE_ES = 7; + + // Preventative treatment website with website content in English. + PREVENTATIVE_TREATMENT_WEBSITE_EN = 8; + + // Preventative treatment website with website content in Spanish (Sitio de + // tratamientos preventivos). + PREVENTATIVE_TREATMENT_WEBSITE_ES = 9; + + // Prescription contraception website with website content in English. + PRESCRIPTION_CONTRACEPTION_WEBSITE_EN = 10; + + // Prescription contraception website with website content in Spanish (Sitio + // de anticonceptivos con receta). + PRESCRIPTION_CONTRACEPTION_WEBSITE_ES = 11; + + // Prescription vaccine website with website content in English. + PRESCRIPTION_VACCINE_WEBSITE_EN = 12; + + // Prescription vaccine website with website content in Spanish (Sitio de + // vacunas con receta). + PRESCRIPTION_VACCINE_WEBSITE_ES = 13; + } + + +} diff --git a/google/ads/googleads/v8/enums/webpage_condition_operand.proto b/google/ads/googleads/v8/enums/webpage_condition_operand.proto new file mode 100644 index 000000000..c9847a0ea --- /dev/null +++ b/google/ads/googleads/v8/enums/webpage_condition_operand.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "WebpageConditionOperandProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing webpage condition operand. + +// Container for enum describing webpage condition operand in webpage criterion. +message WebpageConditionOperandEnum { + // The webpage condition operand in webpage criterion. + enum WebpageConditionOperand { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Operand denoting a webpage URL targeting condition. + URL = 2; + + // Operand denoting a webpage category targeting condition. + CATEGORY = 3; + + // Operand denoting a webpage title targeting condition. + PAGE_TITLE = 4; + + // Operand denoting a webpage content targeting condition. + PAGE_CONTENT = 5; + + // Operand denoting a webpage custom label targeting condition. + CUSTOM_LABEL = 6; + } + + +} diff --git a/google/ads/googleads/v8/enums/webpage_condition_operator.proto b/google/ads/googleads/v8/enums/webpage_condition_operator.proto new file mode 100644 index 000000000..0807268e1 --- /dev/null +++ b/google/ads/googleads/v8/enums/webpage_condition_operator.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "WebpageConditionOperatorProto"; +option java_package = "com.google.ads.googleads.v8.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V8::Enums"; + +// Proto file describing webpage condition operator. + +// Container for enum describing webpage condition operator in webpage +// criterion. +message WebpageConditionOperatorEnum { + // The webpage condition operator in webpage criterion. + enum WebpageConditionOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The argument web condition is equal to the compared web condition. + EQUALS = 2; + + // The argument web condition is part of the compared web condition. + CONTAINS = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/BUILD.bazel b/google/ads/googleads/v8/errors/BUILD.bazel new file mode 100644 index 000000000..fccaec9cd --- /dev/null +++ b/google/ads/googleads/v8/errors/BUILD.bazel @@ -0,0 +1,94 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") + +# TODO(ohren): Change srcs to use an enumeration of each individual proto +# instead of *.proto globbing once the build file generator supports +# subpackages. +proto_library( + name = "errors_proto", + srcs = glob(["*.proto"]), + deps = [ + "//google/ads/googleads/v8/common:common_proto", + "//google/ads/googleads/v8/enums:enums_proto", + "//google/api:annotations_proto", + "@com_google_protobuf//:duration_proto", + "@com_google_protobuf//:wrappers_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_proto_library", +) + +java_proto_library( + name = "errors_java_proto", + deps = [":errors_proto"], +) + +############################################################################## +# PHP +############################################################################## + +# PHP targets are in the parent directory's BUILD.bazel file to facilitate +# aggregating metadata using a single underlying call to protoc. + +############################################################################## +# C# +############################################################################## +load( + "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", + "csharp_proto_library", +) + +csharp_proto_library( + name = "errors_csharp_proto", + deps = [":errors_proto"], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", + "ruby_proto_library", +) + +ruby_proto_library( + name = "errors_ruby_proto", + deps = [":errors_proto"], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_proto_library", +) + +py_proto_library( + name = "errors_py_proto", + deps = [":errors_proto"], +) diff --git a/google/ads/googleads/v8/errors/access_invitation_error.proto b/google/ads/googleads/v8/errors/access_invitation_error.proto new file mode 100644 index 000000000..82f95aab4 --- /dev/null +++ b/google/ads/googleads/v8/errors/access_invitation_error.proto @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AccessInvitationErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing AccessInvitation errors. + +// Container for enum describing possible AccessInvitation errors. +message AccessInvitationErrorEnum { + // Enum describing possible AccessInvitation errors. + enum AccessInvitationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The email address is invalid for sending an invitation. + INVALID_EMAIL_ADDRESS = 2; + + // Email address already has access to this customer. + EMAIL_ADDRESS_ALREADY_HAS_ACCESS = 3; + + // Invalid invitation status for the operation. + INVALID_INVITATION_STATUS = 4; + + // Email address cannot be like abc+foo@google.com. + GOOGLE_CONSUMER_ACCOUNT_NOT_ALLOWED = 5; + + // Invalid invitation id. + INVALID_INVITATION_ID = 6; + + // Email address already has a pending invitation. + EMAIL_ADDRESS_ALREADY_HAS_PENDING_INVITATION = 7; + + // Pending invitation limit exceeded for the customer. + PENDING_INVITATIONS_LIMIT_EXCEEDED = 8; + + // Email address doesn't conform to the email domain policy. Please see + // https://support.google.com/google-ads/answer/2375456 + EMAIL_DOMAIN_POLICY_VIOLATED = 9; + } + + +} diff --git a/google/ads/googleads/v8/errors/account_budget_proposal_error.proto b/google/ads/googleads/v8/errors/account_budget_proposal_error.proto new file mode 100644 index 000000000..41467289f --- /dev/null +++ b/google/ads/googleads/v8/errors/account_budget_proposal_error.proto @@ -0,0 +1,122 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProposalErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing account budget proposal errors. + +// Container for enum describing possible account budget proposal errors. +message AccountBudgetProposalErrorEnum { + // Enum describing possible account budget proposal errors. + enum AccountBudgetProposalError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The field mask must be empty for create/end/remove proposals. + FIELD_MASK_NOT_ALLOWED = 2; + + // The field cannot be set because of the proposal type. + IMMUTABLE_FIELD = 3; + + // The field is required because of the proposal type. + REQUIRED_FIELD_MISSING = 4; + + // Proposals that have been approved cannot be cancelled. + CANNOT_CANCEL_APPROVED_PROPOSAL = 5; + + // Budgets that haven't been approved cannot be removed. + CANNOT_REMOVE_UNAPPROVED_BUDGET = 6; + + // Budgets that are currently running cannot be removed. + CANNOT_REMOVE_RUNNING_BUDGET = 7; + + // Budgets that haven't been approved cannot be truncated. + CANNOT_END_UNAPPROVED_BUDGET = 8; + + // Only budgets that are currently running can be truncated. + CANNOT_END_INACTIVE_BUDGET = 9; + + // All budgets must have names. + BUDGET_NAME_REQUIRED = 10; + + // Expired budgets cannot be edited after a sufficient amount of time has + // passed. + CANNOT_UPDATE_OLD_BUDGET = 11; + + // It is not permissible a propose a new budget that ends in the past. + CANNOT_END_IN_PAST = 12; + + // An expired budget cannot be extended to overlap with the running budget. + CANNOT_EXTEND_END_TIME = 13; + + // A purchase order number is required. + PURCHASE_ORDER_NUMBER_REQUIRED = 14; + + // Budgets that have a pending update cannot be updated. + PENDING_UPDATE_PROPOSAL_EXISTS = 15; + + // Cannot propose more than one budget when the corresponding billing setup + // hasn't been approved. + MULTIPLE_BUDGETS_NOT_ALLOWED_FOR_UNAPPROVED_BILLING_SETUP = 16; + + // Cannot update the start time of a budget that has already started. + CANNOT_UPDATE_START_TIME_FOR_STARTED_BUDGET = 17; + + // Cannot update the spending limit of a budget with an amount lower than + // what has already been spent. + SPENDING_LIMIT_LOWER_THAN_ACCRUED_COST_NOT_ALLOWED = 18; + + // Cannot propose a budget update without actually changing any fields. + UPDATE_IS_NO_OP = 19; + + // The end time must come after the start time. + END_TIME_MUST_FOLLOW_START_TIME = 20; + + // The budget's date range must fall within the date range of its billing + // setup. + BUDGET_DATE_RANGE_INCOMPATIBLE_WITH_BILLING_SETUP = 21; + + // The user is not authorized to mutate budgets for the given billing setup. + NOT_AUTHORIZED = 22; + + // Mutates are not allowed for the given billing setup. + INVALID_BILLING_SETUP = 23; + + // Budget creation failed as it overlaps with an pending budget proposal + // or an approved budget. + OVERLAPS_EXISTING_BUDGET = 24; + + // The control setting in user's payments profile doesn't allow budget + // creation through API. Log in to Google Ads to create budget. + CANNOT_CREATE_BUDGET_THROUGH_API = 25; + } + + +} diff --git a/google/ads/googleads/v8/errors/account_link_error.proto b/google/ads/googleads/v8/errors/account_link_error.proto new file mode 100644 index 000000000..7abab09a6 --- /dev/null +++ b/google/ads/googleads/v8/errors/account_link_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AccountLinkErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing AccountLink errors. + +// Container for enum describing possible account link errors. +message AccountLinkErrorEnum { + // Enum describing possible account link errors. + enum AccountLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The new link status is invalid. + INVALID_STATUS = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/ad_customizer_error.proto b/google/ads/googleads/v8/errors/ad_customizer_error.proto new file mode 100644 index 000000000..809ec1320 --- /dev/null +++ b/google/ads/googleads/v8/errors/ad_customizer_error.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdCustomizerErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing ad customizer errors. + +// Container for enum describing possible ad customizer errors. +message AdCustomizerErrorEnum { + // Enum describing possible ad customizer errors. + enum AdCustomizerError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Invalid date argument in countdown function. + COUNTDOWN_INVALID_DATE_FORMAT = 2; + + // Countdown end date is in the past. + COUNTDOWN_DATE_IN_PAST = 3; + + // Invalid locale string in countdown function. + COUNTDOWN_INVALID_LOCALE = 4; + + // Days-before argument to countdown function is not positive. + COUNTDOWN_INVALID_START_DAYS_BEFORE = 5; + + // A user list referenced in an IF function does not exist. + UNKNOWN_USER_LIST = 6; + } + + +} diff --git a/google/ads/googleads/v8/errors/ad_error.proto b/google/ads/googleads/v8/errors/ad_error.proto new file mode 100644 index 000000000..4484a4bd1 --- /dev/null +++ b/google/ads/googleads/v8/errors/ad_error.proto @@ -0,0 +1,512 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing ad errors. + +// Container for enum describing possible ad errors. +message AdErrorEnum { + // Enum describing possible ad errors. + enum AdError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Ad customizers are not supported for ad type. + AD_CUSTOMIZERS_NOT_SUPPORTED_FOR_AD_TYPE = 2; + + // Estimating character sizes the string is too long. + APPROXIMATELY_TOO_LONG = 3; + + // Estimating character sizes the string is too short. + APPROXIMATELY_TOO_SHORT = 4; + + // There is a problem with the snippet. + BAD_SNIPPET = 5; + + // Cannot modify an ad. + CANNOT_MODIFY_AD = 6; + + // business name and url cannot be set at the same time + CANNOT_SET_BUSINESS_NAME_IF_URL_SET = 7; + + // The specified field is incompatible with this ad's type or settings. + CANNOT_SET_FIELD = 8; + + // Cannot set field when originAdId is set. + CANNOT_SET_FIELD_WITH_ORIGIN_AD_ID_SET = 9; + + // Cannot set field when an existing ad id is set for sharing. + CANNOT_SET_FIELD_WITH_AD_ID_SET_FOR_SHARING = 10; + + // Cannot set allowFlexibleColor false if no color is provided by user. + CANNOT_SET_ALLOW_FLEXIBLE_COLOR_FALSE = 11; + + // When user select native, no color control is allowed because we will + // always respect publisher color for native format serving. + CANNOT_SET_COLOR_CONTROL_WHEN_NATIVE_FORMAT_SETTING = 12; + + // Cannot specify a url for the ad type + CANNOT_SET_URL = 13; + + // Cannot specify a tracking or mobile url without also setting final urls + CANNOT_SET_WITHOUT_FINAL_URLS = 14; + + // Cannot specify a legacy url and a final url simultaneously + CANNOT_SET_WITH_FINAL_URLS = 15; + + // Cannot specify a urls in UrlData and in template fields simultaneously. + CANNOT_SET_WITH_URL_DATA = 17; + + // This operator cannot be used with a subclass of Ad. + CANNOT_USE_AD_SUBCLASS_FOR_OPERATOR = 18; + + // Customer is not approved for mobile ads. + CUSTOMER_NOT_APPROVED_MOBILEADS = 19; + + // Customer is not approved for 3PAS richmedia ads. + CUSTOMER_NOT_APPROVED_THIRDPARTY_ADS = 20; + + // Customer is not approved for 3PAS redirect richmedia (Ad Exchange) ads. + CUSTOMER_NOT_APPROVED_THIRDPARTY_REDIRECT_ADS = 21; + + // Not an eligible customer + CUSTOMER_NOT_ELIGIBLE = 22; + + // Customer is not eligible for updating beacon url + CUSTOMER_NOT_ELIGIBLE_FOR_UPDATING_BEACON_URL = 23; + + // There already exists an ad with the same dimensions in the union. + DIMENSION_ALREADY_IN_UNION = 24; + + // Ad's dimension must be set before setting union dimension. + DIMENSION_MUST_BE_SET = 25; + + // Ad's dimension must be included in the union dimensions. + DIMENSION_NOT_IN_UNION = 26; + + // Display Url cannot be specified (applies to Ad Exchange Ads) + DISPLAY_URL_CANNOT_BE_SPECIFIED = 27; + + // Telephone number contains invalid characters or invalid format. Please + // re-enter your number using digits (0-9), dashes (-), and parentheses + // only. + DOMESTIC_PHONE_NUMBER_FORMAT = 28; + + // Emergency telephone numbers are not allowed. Please enter a valid + // domestic phone number to connect customers to your business. + EMERGENCY_PHONE_NUMBER = 29; + + // A required field was not specified or is an empty string. + EMPTY_FIELD = 30; + + // A feed attribute referenced in an ad customizer tag is not in the ad + // customizer mapping for the feed. + FEED_ATTRIBUTE_MUST_HAVE_MAPPING_FOR_TYPE_ID = 31; + + // The ad customizer field mapping for the feed attribute does not match the + // expected field type. + FEED_ATTRIBUTE_MAPPING_TYPE_MISMATCH = 32; + + // The use of ad customizer tags in the ad text is disallowed. Details in + // trigger. + ILLEGAL_AD_CUSTOMIZER_TAG_USE = 33; + + // Tags of the form {PH_x}, where x is a number, are disallowed in ad text. + ILLEGAL_TAG_USE = 34; + + // The dimensions of the ad are specified or derived in multiple ways and + // are not consistent. + INCONSISTENT_DIMENSIONS = 35; + + // The status cannot differ among template ads of the same union. + INCONSISTENT_STATUS_IN_TEMPLATE_UNION = 36; + + // The length of the string is not valid. + INCORRECT_LENGTH = 37; + + // The ad is ineligible for upgrade. + INELIGIBLE_FOR_UPGRADE = 38; + + // User cannot create mobile ad for countries targeted in specified + // campaign. + INVALID_AD_ADDRESS_CAMPAIGN_TARGET = 39; + + // Invalid Ad type. A specific type of Ad is required. + INVALID_AD_TYPE = 40; + + // Headline, description or phone cannot be present when creating mobile + // image ad. + INVALID_ATTRIBUTES_FOR_MOBILE_IMAGE = 41; + + // Image cannot be present when creating mobile text ad. + INVALID_ATTRIBUTES_FOR_MOBILE_TEXT = 42; + + // Invalid call to action text. + INVALID_CALL_TO_ACTION_TEXT = 43; + + // Invalid character in URL. + INVALID_CHARACTER_FOR_URL = 44; + + // Creative's country code is not valid. + INVALID_COUNTRY_CODE = 45; + + // Invalid use of Expanded Dynamic Search Ads tags ({lpurl} etc.) + INVALID_EXPANDED_DYNAMIC_SEARCH_AD_TAG = 47; + + // An input error whose real reason was not properly mapped (should not + // happen). + INVALID_INPUT = 48; + + // An invalid markup language was entered. + INVALID_MARKUP_LANGUAGE = 49; + + // An invalid mobile carrier was entered. + INVALID_MOBILE_CARRIER = 50; + + // Specified mobile carriers target a country not targeted by the campaign. + INVALID_MOBILE_CARRIER_TARGET = 51; + + // Wrong number of elements for given element type + INVALID_NUMBER_OF_ELEMENTS = 52; + + // The format of the telephone number is incorrect. Please re-enter the + // number using the correct format. + INVALID_PHONE_NUMBER_FORMAT = 53; + + // The certified vendor format id is incorrect. + INVALID_RICH_MEDIA_CERTIFIED_VENDOR_FORMAT_ID = 54; + + // The template ad data contains validation errors. + INVALID_TEMPLATE_DATA = 55; + + // The template field doesn't have have the correct type. + INVALID_TEMPLATE_ELEMENT_FIELD_TYPE = 56; + + // Invalid template id. + INVALID_TEMPLATE_ID = 57; + + // After substituting replacement strings, the line is too wide. + LINE_TOO_WIDE = 58; + + // The feed referenced must have ad customizer mapping to be used in a + // customizer tag. + MISSING_AD_CUSTOMIZER_MAPPING = 59; + + // Missing address component in template element address field. + MISSING_ADDRESS_COMPONENT = 60; + + // An ad name must be entered. + MISSING_ADVERTISEMENT_NAME = 61; + + // Business name must be entered. + MISSING_BUSINESS_NAME = 62; + + // Description (line 2) must be entered. + MISSING_DESCRIPTION1 = 63; + + // Description (line 3) must be entered. + MISSING_DESCRIPTION2 = 64; + + // The destination url must contain at least one tag (e.g. {lpurl}) + MISSING_DESTINATION_URL_TAG = 65; + + // The tracking url template of ExpandedDynamicSearchAd must contain at + // least one tag. (e.g. {lpurl}) + MISSING_LANDING_PAGE_URL_TAG = 66; + + // A valid dimension must be specified for this ad. + MISSING_DIMENSION = 67; + + // A display URL must be entered. + MISSING_DISPLAY_URL = 68; + + // Headline must be entered. + MISSING_HEADLINE = 69; + + // A height must be entered. + MISSING_HEIGHT = 70; + + // An image must be entered. + MISSING_IMAGE = 71; + + // Marketing image or product videos are required. + MISSING_MARKETING_IMAGE_OR_PRODUCT_VIDEOS = 72; + + // The markup language in which your site is written must be entered. + MISSING_MARKUP_LANGUAGES = 73; + + // A mobile carrier must be entered. + MISSING_MOBILE_CARRIER = 74; + + // Phone number must be entered. + MISSING_PHONE = 75; + + // Missing required template fields + MISSING_REQUIRED_TEMPLATE_FIELDS = 76; + + // Missing a required field value + MISSING_TEMPLATE_FIELD_VALUE = 77; + + // The ad must have text. + MISSING_TEXT = 78; + + // A visible URL must be entered. + MISSING_VISIBLE_URL = 79; + + // A width must be entered. + MISSING_WIDTH = 80; + + // Only 1 feed can be used as the source of ad customizer substitutions in a + // single ad. + MULTIPLE_DISTINCT_FEEDS_UNSUPPORTED = 81; + + // TempAdUnionId must be use when adding template ads. + MUST_USE_TEMP_AD_UNION_ID_ON_ADD = 82; + + // The string has too many characters. + TOO_LONG = 83; + + // The string has too few characters. + TOO_SHORT = 84; + + // Ad union dimensions cannot change for saved ads. + UNION_DIMENSIONS_CANNOT_CHANGE = 85; + + // Address component is not {country, lat, lng}. + UNKNOWN_ADDRESS_COMPONENT = 86; + + // Unknown unique field name + UNKNOWN_FIELD_NAME = 87; + + // Unknown unique name (template element type specifier) + UNKNOWN_UNIQUE_NAME = 88; + + // Unsupported ad dimension + UNSUPPORTED_DIMENSIONS = 89; + + // URL starts with an invalid scheme. + URL_INVALID_SCHEME = 90; + + // URL ends with an invalid top-level domain name. + URL_INVALID_TOP_LEVEL_DOMAIN = 91; + + // URL contains illegal characters. + URL_MALFORMED = 92; + + // URL must contain a host name. + URL_NO_HOST = 93; + + // URL not equivalent during upgrade. + URL_NOT_EQUIVALENT = 94; + + // URL host name too long to be stored as visible URL (applies to Ad + // Exchange ads) + URL_HOST_NAME_TOO_LONG = 95; + + // URL must start with a scheme. + URL_NO_SCHEME = 96; + + // URL should end in a valid domain extension, such as .com or .net. + URL_NO_TOP_LEVEL_DOMAIN = 97; + + // URL must not end with a path. + URL_PATH_NOT_ALLOWED = 98; + + // URL must not specify a port. + URL_PORT_NOT_ALLOWED = 99; + + // URL must not contain a query. + URL_QUERY_NOT_ALLOWED = 100; + + // A url scheme is not allowed in front of tag in tracking url template + // (e.g. http://{lpurl}) + URL_SCHEME_BEFORE_EXPANDED_DYNAMIC_SEARCH_AD_TAG = 102; + + // The user does not have permissions to create a template ad for the given + // template. + USER_DOES_NOT_HAVE_ACCESS_TO_TEMPLATE = 103; + + // Expandable setting is inconsistent/wrong. For example, an AdX ad is + // invalid if it has a expandable vendor format but no expanding directions + // specified, or expanding directions is specified, but the vendor format is + // not expandable. + INCONSISTENT_EXPANDABLE_SETTINGS = 104; + + // Format is invalid + INVALID_FORMAT = 105; + + // The text of this field did not match a pattern of allowed values. + INVALID_FIELD_TEXT = 106; + + // Template element is mising + ELEMENT_NOT_PRESENT = 107; + + // Error occurred during image processing + IMAGE_ERROR = 108; + + // The value is not within the valid range + VALUE_NOT_IN_RANGE = 109; + + // Template element field is not present + FIELD_NOT_PRESENT = 110; + + // Address is incomplete + ADDRESS_NOT_COMPLETE = 111; + + // Invalid address + ADDRESS_INVALID = 112; + + // Error retrieving specified video + VIDEO_RETRIEVAL_ERROR = 113; + + // Error processing audio + AUDIO_ERROR = 114; + + // Display URL is incorrect for YouTube PYV ads + INVALID_YOUTUBE_DISPLAY_URL = 115; + + // Too many product Images in GmailAd + TOO_MANY_PRODUCT_IMAGES = 116; + + // Too many product Videos in GmailAd + TOO_MANY_PRODUCT_VIDEOS = 117; + + // The device preference is not compatible with the ad type + INCOMPATIBLE_AD_TYPE_AND_DEVICE_PREFERENCE = 118; + + // Call tracking is not supported for specified country. + CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 119; + + // Carrier specific short number is not allowed. + CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 120; + + // Specified phone number type is disallowed. + DISALLOWED_NUMBER_TYPE = 121; + + // Phone number not supported for country. + PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 122; + + // Phone number not supported with call tracking enabled for country. + PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 123; + + // Premium rate phone number is not allowed. + PREMIUM_RATE_NUMBER_NOT_ALLOWED = 124; + + // Vanity phone number is not allowed. + VANITY_PHONE_NUMBER_NOT_ALLOWED = 125; + + // Invalid call conversion type id. + INVALID_CALL_CONVERSION_TYPE_ID = 126; + + // Cannot disable call conversion and set conversion type id. + CANNOT_DISABLE_CALL_CONVERSION_AND_SET_CONVERSION_TYPE_ID = 127; + + // Cannot set path2 without path1. + CANNOT_SET_PATH2_WITHOUT_PATH1 = 128; + + // Missing domain name in campaign setting when adding expanded dynamic + // search ad. + MISSING_DYNAMIC_SEARCH_ADS_SETTING_DOMAIN_NAME = 129; + + // The associated ad is not compatible with restriction type. + INCOMPATIBLE_WITH_RESTRICTION_TYPE = 130; + + // Consent for call recording is required for creating/updating call only + // ads. Please see https://support.google.com/google-ads/answer/7412639. + CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 131; + + // Either an image or a media bundle is required in a display upload ad. + MISSING_IMAGE_OR_MEDIA_BUNDLE = 132; + + // The display upload product type is not supported in this campaign. + PRODUCT_TYPE_NOT_SUPPORTED_IN_THIS_CAMPAIGN = 133; + + // The default value of an ad placeholder can not be the empty string. + PLACEHOLDER_CANNOT_HAVE_EMPTY_DEFAULT_VALUE = 134; + + // Ad placeholders with countdown functions must not have a default value. + PLACEHOLDER_COUNTDOWN_FUNCTION_CANNOT_HAVE_DEFAULT_VALUE = 135; + + // A previous ad placeholder that had a default value was found which means + // that all (non-countdown) placeholders must have a default value. This + // ad placeholder does not have a default value. + PLACEHOLDER_DEFAULT_VALUE_MISSING = 136; + + // A previous ad placeholder that did not have a default value was found + // which means that no placeholders may have a default value. This + // ad placeholder does have a default value. + UNEXPECTED_PLACEHOLDER_DEFAULT_VALUE = 137; + + // Two ad customizers may not be directly adjacent in an ad text. They must + // be separated by at least one character. + AD_CUSTOMIZERS_MAY_NOT_BE_ADJACENT = 138; + + // The ad is not associated with any enabled AdGroupAd, and cannot be + // updated. + UPDATING_AD_WITH_NO_ENABLED_ASSOCIATION = 139; + + // Too many ad customizers in one asset. + TOO_MANY_AD_CUSTOMIZERS = 141; + + // The ad customizer tag is recognized, but the format is invalid. + INVALID_AD_CUSTOMIZER_FORMAT = 142; + + // Customizer tags cannot be nested. + NESTED_AD_CUSTOMIZER_SYNTAX = 143; + + // The ad customizer syntax used in the ad is not supported. + UNSUPPORTED_AD_CUSTOMIZER_SYNTAX = 144; + + // There exists unpaired brace in the ad customizer tag. + UNPAIRED_BRACE_IN_AD_CUSTOMIZER_TAG = 145; + + // More than one type of countdown tag exists among all text lines. + MORE_THAN_ONE_COUNTDOWN_TAG_TYPE_EXISTS = 146; + + // Date time in the countdown tag is invalid. + DATE_TIME_IN_COUNTDOWN_TAG_IS_INVALID = 147; + + // Date time in the countdown tag is in the past. + DATE_TIME_IN_COUNTDOWN_TAG_IS_PAST = 148; + + // Cannot recognize the ad customizer tag. + UNRECOGNIZED_AD_CUSTOMIZER_TAG_FOUND = 149; + + // App store value does not match the value of the app store in the app + // specified in the campaign. + STORE_MISMATCH = 152; + + // Missing required image aspect ratio. + MISSING_REQUIRED_IMAGE_ASPECT_RATIO = 153; + } + + +} diff --git a/google/ads/googleads/v8/errors/ad_group_ad_error.proto b/google/ads/googleads/v8/errors/ad_group_ad_error.proto new file mode 100644 index 000000000..de80b6c57 --- /dev/null +++ b/google/ads/googleads/v8/errors/ad_group_ad_error.proto @@ -0,0 +1,80 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing ad group ad errors. + +// Container for enum describing possible ad group ad errors. +message AdGroupAdErrorEnum { + // Enum describing possible ad group ad errors. + enum AdGroupAdError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // No link found between the adgroup ad and the label. + AD_GROUP_AD_LABEL_DOES_NOT_EXIST = 2; + + // The label has already been attached to the adgroup ad. + AD_GROUP_AD_LABEL_ALREADY_EXISTS = 3; + + // The specified ad was not found in the adgroup + AD_NOT_UNDER_ADGROUP = 4; + + // Removed ads may not be modified + CANNOT_OPERATE_ON_REMOVED_ADGROUPAD = 5; + + // An ad of this type is deprecated and cannot be created. Only deletions + // are permitted. + CANNOT_CREATE_DEPRECATED_ADS = 6; + + // Text ads are deprecated and cannot be created. Use expanded text ads + // instead. + CANNOT_CREATE_TEXT_ADS = 7; + + // A required field was not specified or is an empty string. + EMPTY_FIELD = 8; + + // An ad may only be modified once per call + RESOURCE_REFERENCED_IN_MULTIPLE_OPS = 9; + + // AdGroupAds with the given ad type cannot be paused. + AD_TYPE_CANNOT_BE_PAUSED = 10; + + // AdGroupAds with the given ad type cannot be removed. + AD_TYPE_CANNOT_BE_REMOVED = 11; + + // An ad of this type is deprecated and cannot be updated. Only removals + // are permitted. + CANNOT_UPDATE_DEPRECATED_ADS = 12; + } + + +} diff --git a/google/ads/googleads/v8/errors/ad_group_bid_modifier_error.proto b/google/ads/googleads/v8/errors/ad_group_bid_modifier_error.proto new file mode 100644 index 000000000..32674a0fa --- /dev/null +++ b/google/ads/googleads/v8/errors/ad_group_bid_modifier_error.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupBidModifierErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing ad group bid modifier errors. + +// Container for enum describing possible ad group bid modifier errors. +message AdGroupBidModifierErrorEnum { + // Enum describing possible ad group bid modifier errors. + enum AdGroupBidModifierError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The criterion ID does not support bid modification. + CRITERION_ID_NOT_SUPPORTED = 2; + + // Cannot override the bid modifier for the given criterion ID if the parent + // campaign is opted out of the same criterion. + CANNOT_OVERRIDE_OPTED_OUT_CAMPAIGN_CRITERION_BID_MODIFIER = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/ad_group_criterion_error.proto b/google/ads/googleads/v8/errors/ad_group_criterion_error.proto new file mode 100644 index 000000000..e030e8257 --- /dev/null +++ b/google/ads/googleads/v8/errors/ad_group_criterion_error.proto @@ -0,0 +1,137 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing ad group criterion errors. + +// Container for enum describing possible ad group criterion errors. +message AdGroupCriterionErrorEnum { + // Enum describing possible ad group criterion errors. + enum AdGroupCriterionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // No link found between the AdGroupCriterion and the label. + AD_GROUP_CRITERION_LABEL_DOES_NOT_EXIST = 2; + + // The label has already been attached to the AdGroupCriterion. + AD_GROUP_CRITERION_LABEL_ALREADY_EXISTS = 3; + + // Negative AdGroupCriterion cannot have labels. + CANNOT_ADD_LABEL_TO_NEGATIVE_CRITERION = 4; + + // Too many operations for a single call. + TOO_MANY_OPERATIONS = 5; + + // Negative ad group criteria are not updateable. + CANT_UPDATE_NEGATIVE = 6; + + // Concrete type of criterion (keyword v.s. placement) is required for ADD + // and SET operations. + CONCRETE_TYPE_REQUIRED = 7; + + // Bid is incompatible with ad group's bidding settings. + BID_INCOMPATIBLE_WITH_ADGROUP = 8; + + // Cannot target and exclude the same criterion at once. + CANNOT_TARGET_AND_EXCLUDE = 9; + + // The URL of a placement is invalid. + ILLEGAL_URL = 10; + + // Keyword text was invalid. + INVALID_KEYWORD_TEXT = 11; + + // Destination URL was invalid. + INVALID_DESTINATION_URL = 12; + + // The destination url must contain at least one tag (e.g. {lpurl}) + MISSING_DESTINATION_URL_TAG = 13; + + // Keyword-level cpm bid is not supported + KEYWORD_LEVEL_BID_NOT_SUPPORTED_FOR_MANUALCPM = 14; + + // For example, cannot add a biddable ad group criterion that had been + // removed. + INVALID_USER_STATUS = 15; + + // Criteria type cannot be targeted for the ad group. Either the account is + // restricted to keywords only, the criteria type is incompatible with the + // campaign's bidding strategy, or the criteria type can only be applied to + // campaigns. + CANNOT_ADD_CRITERIA_TYPE = 16; + + // Criteria type cannot be excluded for the ad group. Refer to the + // documentation for a specific criterion to check if it is excludable. + CANNOT_EXCLUDE_CRITERIA_TYPE = 17; + + // Partial failure is not supported for shopping campaign mutate operations. + CAMPAIGN_TYPE_NOT_COMPATIBLE_WITH_PARTIAL_FAILURE = 27; + + // Operations in the mutate request changes too many shopping ad groups. + // Please split requests for multiple shopping ad groups across multiple + // requests. + OPERATIONS_FOR_TOO_MANY_SHOPPING_ADGROUPS = 28; + + // Not allowed to modify url fields of an ad group criterion if there are + // duplicate elements for that ad group criterion in the request. + CANNOT_MODIFY_URL_FIELDS_WITH_DUPLICATE_ELEMENTS = 29; + + // Cannot set url fields without also setting final urls. + CANNOT_SET_WITHOUT_FINAL_URLS = 30; + + // Cannot clear final urls if final mobile urls exist. + CANNOT_CLEAR_FINAL_URLS_IF_FINAL_MOBILE_URLS_EXIST = 31; + + // Cannot clear final urls if final app urls exist. + CANNOT_CLEAR_FINAL_URLS_IF_FINAL_APP_URLS_EXIST = 32; + + // Cannot clear final urls if tracking url template exists. + CANNOT_CLEAR_FINAL_URLS_IF_TRACKING_URL_TEMPLATE_EXISTS = 33; + + // Cannot clear final urls if url custom parameters exist. + CANNOT_CLEAR_FINAL_URLS_IF_URL_CUSTOM_PARAMETERS_EXIST = 34; + + // Cannot set both destination url and final urls. + CANNOT_SET_BOTH_DESTINATION_URL_AND_FINAL_URLS = 35; + + // Cannot set both destination url and tracking url template. + CANNOT_SET_BOTH_DESTINATION_URL_AND_TRACKING_URL_TEMPLATE = 36; + + // Final urls are not supported for this criterion type. + FINAL_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE = 37; + + // Final mobile urls are not supported for this criterion type. + FINAL_MOBILE_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE = 38; + } + + +} diff --git a/google/ads/googleads/v8/errors/ad_group_error.proto b/google/ads/googleads/v8/errors/ad_group_error.proto new file mode 100644 index 000000000..7044cd61d --- /dev/null +++ b/google/ads/googleads/v8/errors/ad_group_error.proto @@ -0,0 +1,91 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing ad group errors. + +// Container for enum describing possible ad group errors. +message AdGroupErrorEnum { + // Enum describing possible ad group errors. + enum AdGroupError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // AdGroup with the same name already exists for the campaign. + DUPLICATE_ADGROUP_NAME = 2; + + // AdGroup name is not valid. + INVALID_ADGROUP_NAME = 3; + + // Advertiser is not allowed to target sites or set site bids that are not + // on the Google Search Network. + ADVERTISER_NOT_ON_CONTENT_NETWORK = 5; + + // Bid amount is too big. + BID_TOO_BIG = 6; + + // AdGroup bid does not match the campaign's bidding strategy. + BID_TYPE_AND_BIDDING_STRATEGY_MISMATCH = 7; + + // AdGroup name is required for Add. + MISSING_ADGROUP_NAME = 8; + + // No link found between the ad group and the label. + ADGROUP_LABEL_DOES_NOT_EXIST = 9; + + // The label has already been attached to the ad group. + ADGROUP_LABEL_ALREADY_EXISTS = 10; + + // The CriterionTypeGroup is not supported for the content bid dimension. + INVALID_CONTENT_BID_CRITERION_TYPE_GROUP = 11; + + // The ad group type is not compatible with the campaign channel type. + AD_GROUP_TYPE_NOT_VALID_FOR_ADVERTISING_CHANNEL_TYPE = 12; + + // The ad group type is not supported in the country of sale of the + // campaign. + ADGROUP_TYPE_NOT_SUPPORTED_FOR_CAMPAIGN_SALES_COUNTRY = 13; + + // Ad groups of AdGroupType.SEARCH_DYNAMIC_ADS can only be added to + // campaigns that have DynamicSearchAdsSetting attached. + CANNOT_ADD_ADGROUP_OF_TYPE_DSA_TO_CAMPAIGN_WITHOUT_DSA_SETTING = 14; + + // Promoted hotels ad groups are only available to customers on the + // allow-list. + PROMOTED_HOTEL_AD_GROUPS_NOT_AVAILABLE_FOR_CUSTOMER = 15; + + // The field type cannot be excluded because an active ad group-asset link + // of this type exists. + INVALID_EXCLUDED_PARENT_ASSET_FIELD_TYPE = 16; + } + + +} diff --git a/google/ads/googleads/v8/errors/ad_group_feed_error.proto b/google/ads/googleads/v8/errors/ad_group_feed_error.proto new file mode 100644 index 000000000..c9f3ab9c6 --- /dev/null +++ b/google/ads/googleads/v8/errors/ad_group_feed_error.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupFeedErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing ad group feed errors. + +// Container for enum describing possible ad group feed errors. +message AdGroupFeedErrorEnum { + // Enum describing possible ad group feed errors. + enum AdGroupFeedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // An active feed already exists for this ad group and place holder type. + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; + + // The specified feed is removed. + CANNOT_CREATE_FOR_REMOVED_FEED = 3; + + // The AdGroupFeed already exists. UPDATE operation should be used to modify + // the existing AdGroupFeed. + ADGROUP_FEED_ALREADY_EXISTS = 4; + + // Cannot operate on removed AdGroupFeed. + CANNOT_OPERATE_ON_REMOVED_ADGROUP_FEED = 5; + + // Invalid placeholder type. + INVALID_PLACEHOLDER_TYPE = 6; + + // Feed mapping for this placeholder type does not exist. + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7; + + // Location AdGroupFeeds cannot be created unless there is a location + // CustomerFeed for the specified feed. + NO_EXISTING_LOCATION_CUSTOMER_FEED = 8; + } + + +} diff --git a/google/ads/googleads/v8/errors/ad_parameter_error.proto b/google/ads/googleads/v8/errors/ad_parameter_error.proto new file mode 100644 index 000000000..69dad14be --- /dev/null +++ b/google/ads/googleads/v8/errors/ad_parameter_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdParameterErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing ad parameter errors. + +// Container for enum describing possible ad parameter errors. +message AdParameterErrorEnum { + // Enum describing possible ad parameter errors. + enum AdParameterError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The ad group criterion must be a keyword criterion. + AD_GROUP_CRITERION_MUST_BE_KEYWORD = 2; + + // The insertion text is invalid. + INVALID_INSERTION_TEXT_FORMAT = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/ad_sharing_error.proto b/google/ads/googleads/v8/errors/ad_sharing_error.proto new file mode 100644 index 000000000..396daa3aa --- /dev/null +++ b/google/ads/googleads/v8/errors/ad_sharing_error.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdSharingErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing ad sharing errors. + +// Container for enum describing possible ad sharing errors. +message AdSharingErrorEnum { + // Enum describing possible ad sharing errors. + enum AdSharingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Error resulting in attempting to add an Ad to an AdGroup that already + // contains the Ad. + AD_GROUP_ALREADY_CONTAINS_AD = 2; + + // Ad is not compatible with the AdGroup it is being shared with. + INCOMPATIBLE_AD_UNDER_AD_GROUP = 3; + + // Cannot add AdGroupAd on inactive Ad. + CANNOT_SHARE_INACTIVE_AD = 4; + } + + +} diff --git a/google/ads/googleads/v8/errors/adx_error.proto b/google/ads/googleads/v8/errors/adx_error.proto new file mode 100644 index 000000000..f975168b4 --- /dev/null +++ b/google/ads/googleads/v8/errors/adx_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdxErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing adx errors. + +// Container for enum describing possible adx errors. +message AdxErrorEnum { + // Enum describing possible adx errors. + enum AdxError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Attempt to use non-AdX feature by AdX customer. + UNSUPPORTED_FEATURE = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/asset_error.proto b/google/ads/googleads/v8/errors/asset_error.proto new file mode 100644 index 000000000..dac2179b3 --- /dev/null +++ b/google/ads/googleads/v8/errors/asset_error.proto @@ -0,0 +1,99 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AssetErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing asset errors. + +// Container for enum describing possible asset errors. +message AssetErrorEnum { + // Enum describing possible asset errors. + enum AssetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The customer is not is not on the allow-list for this asset type. + CUSTOMER_NOT_ON_ALLOWLIST_FOR_ASSET_TYPE = 13; + + // Assets are duplicated across operations. + DUPLICATE_ASSET = 3; + + // The asset name is duplicated, either across operations or with an + // existing asset. + DUPLICATE_ASSET_NAME = 4; + + // The Asset.asset_data oneof is empty. + ASSET_DATA_IS_MISSING = 5; + + // The asset has a name which is different from an existing duplicate that + // represents the same content. + CANNOT_MODIFY_ASSET_NAME = 6; + + // The field cannot be set for this asset type. + FIELD_INCOMPATIBLE_WITH_ASSET_TYPE = 7; + + // Call to action must come from the list of supported values. + INVALID_CALL_TO_ACTION_TEXT = 8; + + // A lead form asset is created with an invalid combination of input fields. + LEAD_FORM_INVALID_FIELDS_COMBINATION = 9; + + // Lead forms require that the Terms of Service have been agreed to before + // mutates can be executed. + LEAD_FORM_MISSING_AGREEMENT = 10; + + // Asset status is invalid in this operation. + INVALID_ASSET_STATUS = 11; + + // The field cannot be modified by this asset type. + FIELD_CANNOT_BE_MODIFIED_FOR_ASSET_TYPE = 12; + + // Ad schedules for the same asset cannot overlap. + SCHEDULES_CANNOT_OVERLAP = 14; + + // Cannot set both percent off and money amount off fields of promotion + // asset. + PROMOTION_CANNOT_SET_PERCENT_OFF_AND_MONEY_AMOUNT_OFF = 15; + + // Cannot set both promotion code and orders over amount fields of promotion + // asset. + PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 16; + + // The field has too many decimal places specified. + TOO_MANY_DECIMAL_PLACES_SPECIFIED = 17; + + // Duplicate assets across operations, which have identical Asset.asset_data + // oneof, cannot have different asset level fields for asset types which are + // deduped. + DUPLICATE_ASSETS_WITH_DIFFERENT_FIELD_VALUE = 18; + } + + +} diff --git a/google/ads/googleads/v8/errors/asset_link_error.proto b/google/ads/googleads/v8/errors/asset_link_error.proto new file mode 100644 index 000000000..1ed63aedc --- /dev/null +++ b/google/ads/googleads/v8/errors/asset_link_error.proto @@ -0,0 +1,108 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AssetLinkErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing asset link errors. + +// Container for enum describing possible asset link errors. +message AssetLinkErrorEnum { + // Enum describing possible asset link errors. + enum AssetLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Pinning is not supported for the given asset link field. + PINNING_UNSUPPORTED = 2; + + // The given field type is not supported to be added directly via asset + // links. + UNSUPPORTED_FIELD_TYPE = 3; + + // The given asset's type and the specified field type are incompatible. + FIELD_TYPE_INCOMPATIBLE_WITH_ASSET_TYPE = 4; + + // The specified field type is incompatible with the given campaign type. + FIELD_TYPE_INCOMPATIBLE_WITH_CAMPAIGN_TYPE = 5; + + // The campaign advertising channel type cannot be associated with the given + // asset due to channel-based restrictions on the asset's fields. + INCOMPATIBLE_ADVERTISING_CHANNEL_TYPE = 6; + + // The image asset provided is not within the dimension constraints + // specified for the submitted asset field. + IMAGE_NOT_WITHIN_SPECIFIED_DIMENSION_RANGE = 7; + + // The pinned field is not valid for the submitted asset field. + INVALID_PINNED_FIELD = 8; + + // The media bundle asset provided is too large for the submitted asset + // field. + MEDIA_BUNDLE_ASSET_FILE_SIZE_TOO_LARGE = 9; + + // Not enough assets are available for use with other fields since other + // assets are pinned to specific fields. + NOT_ENOUGH_AVAILABLE_ASSET_LINKS_FOR_VALID_COMBINATION = 10; + + // Not enough assets with fallback are available. When validating the + // minimum number of assets, assets without fallback (e.g. assets that + // contain location tag without default value "{LOCATION(City)}") will not + // be counted. + NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK = 11; + + // This is a combination of the + // NOT_ENOUGH_AVAILABLE_ASSET_LINKS_FOR_VALID_COMBINATION and + // NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK errors. Not enough assets + // with fallback are available since some assets are pinned. + NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK_FOR_VALID_COMBINATION = 12; + + // The YouTube video referenced in the provided asset has been removed. + YOUTUBE_VIDEO_REMOVED = 13; + + // The YouTube video referenced in the provided asset is too long for the + // field submitted. + YOUTUBE_VIDEO_TOO_LONG = 14; + + // The YouTube video referenced in the provided asset is too short for the + // field submitted. + YOUTUBE_VIDEO_TOO_SHORT = 15; + + // The status is invalid for the operation specified. + INVALID_STATUS = 17; + + // The YouTube video referenced in the provided asset has unknown duration. + // This might be the case for a livestream video or a video being currently + // uploaded to YouTube. In both cases, the video duration should eventually + // get resolved. + YOUTUBE_VIDEO_DURATION_NOT_DEFINED = 18; + } + + +} diff --git a/google/ads/googleads/v8/errors/authentication_error.proto b/google/ads/googleads/v8/errors/authentication_error.proto new file mode 100644 index 000000000..1bb65a8bb --- /dev/null +++ b/google/ads/googleads/v8/errors/authentication_error.proto @@ -0,0 +1,103 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AuthenticationErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing authentication errors. + +// Container for enum describing possible authentication errors. +message AuthenticationErrorEnum { + // Enum describing possible authentication errors. + enum AuthenticationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Authentication of the request failed. + AUTHENTICATION_ERROR = 2; + + // Client Customer ID is not a number. + CLIENT_CUSTOMER_ID_INVALID = 5; + + // No customer found for the provided customer ID. + CUSTOMER_NOT_FOUND = 8; + + // Client's Google Account is deleted. + GOOGLE_ACCOUNT_DELETED = 9; + + // Google account login token in the cookie is invalid. + GOOGLE_ACCOUNT_COOKIE_INVALID = 10; + + // A problem occurred during Google account authentication. + GOOGLE_ACCOUNT_AUTHENTICATION_FAILED = 25; + + // The user in the Google account login token does not match the user ID in + // the cookie. + GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH = 12; + + // Login cookie is required for authentication. + LOGIN_COOKIE_REQUIRED = 13; + + // User in the cookie is not a valid Ads user. + NOT_ADS_USER = 14; + + // Oauth token in the header is not valid. + OAUTH_TOKEN_INVALID = 15; + + // Oauth token in the header has expired. + OAUTH_TOKEN_EXPIRED = 16; + + // Oauth token in the header has been disabled. + OAUTH_TOKEN_DISABLED = 17; + + // Oauth token in the header has been revoked. + OAUTH_TOKEN_REVOKED = 18; + + // Oauth token HTTP header is malformed. + OAUTH_TOKEN_HEADER_INVALID = 19; + + // Login cookie is not valid. + LOGIN_COOKIE_INVALID = 20; + + // User Id in the header is not a valid id. + USER_ID_INVALID = 22; + + // An account administrator changed this account's authentication settings. + // To access this Google Ads account, enable 2-Step Verification in your + // Google account at https://www.google.com/landing/2step. + TWO_STEP_VERIFICATION_NOT_ENROLLED = 23; + + // An account administrator changed this account's authentication settings. + // To access this Google Ads account, enable Advanced Protection in your + // Google account at https://landing.google.com/advancedprotection. + ADVANCED_PROTECTION_NOT_ENROLLED = 24; + } + + +} diff --git a/google/ads/googleads/v8/errors/authorization_error.proto b/google/ads/googleads/v8/errors/authorization_error.proto new file mode 100644 index 000000000..cb5166005 --- /dev/null +++ b/google/ads/googleads/v8/errors/authorization_error.proto @@ -0,0 +1,92 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AuthorizationErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing authorization errors. + +// Container for enum describing possible authorization errors. +message AuthorizationErrorEnum { + // Enum describing possible authorization errors. + enum AuthorizationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // User doesn't have permission to access customer. Note: If you're + // accessing a client customer, the manager's customer ID must be set in the + // `login-customer-id` header. Learn more at + // https://developers.google.com/google-ads/api/docs/concepts/call-structure#cid + USER_PERMISSION_DENIED = 2; + + // The developer token is not on the allow-list. + DEVELOPER_TOKEN_NOT_ON_ALLOWLIST = 13; + + // The developer token is not allowed with the project sent in the request. + DEVELOPER_TOKEN_PROHIBITED = 4; + + // The Google Cloud project sent in the request does not have permission to + // access the api. + PROJECT_DISABLED = 5; + + // Authorization of the client failed. + AUTHORIZATION_ERROR = 6; + + // The user does not have permission to perform this action + // (e.g., ADD, UPDATE, REMOVE) on the resource or call a method. + ACTION_NOT_PERMITTED = 7; + + // Signup not complete. + INCOMPLETE_SIGNUP = 8; + + // The customer can't be used because it isn't enabled. + CUSTOMER_NOT_ENABLED = 24; + + // The developer must sign the terms of service. They can be found here: + // ads.google.com/aw/apicenter + MISSING_TOS = 9; + + // The developer token is not approved. Non-approved developer tokens can + // only be used with test accounts. + DEVELOPER_TOKEN_NOT_APPROVED = 10; + + // The login customer specified does not have access to the account + // specified, so the request is invalid. + INVALID_LOGIN_CUSTOMER_ID_SERVING_CUSTOMER_ID_COMBINATION = 11; + + // The developer specified does not have access to the service. + SERVICE_ACCESS_DENIED = 12; + + // The customer (or login customer) isn't in Google Ads. It belongs to + // another ads system. + ACCESS_DENIED_FOR_ACCOUNT_TYPE = 25; + } + + +} diff --git a/google/ads/googleads/v8/errors/batch_job_error.proto b/google/ads/googleads/v8/errors/batch_job_error.proto new file mode 100644 index 000000000..da9691434 --- /dev/null +++ b/google/ads/googleads/v8/errors/batch_job_error.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "BatchJobErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing batch job errors. + +// Container for enum describing possible batch job errors. +message BatchJobErrorEnum { + // Enum describing possible request errors. + enum BatchJobError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The batch job cannot add more operations or run after it has started + // running. + CANNOT_MODIFY_JOB_AFTER_JOB_STARTS_RUNNING = 2; + + // The operations for an AddBatchJobOperations request were empty. + EMPTY_OPERATIONS = 3; + + // The sequence token for an AddBatchJobOperations request was invalid. + INVALID_SEQUENCE_TOKEN = 4; + + // Batch job results can only be retrieved once the job is finished. + RESULTS_NOT_READY = 5; + + // The page size for ListBatchJobResults was invalid. + INVALID_PAGE_SIZE = 6; + + // The batch job cannot be removed because it has started running. + CAN_ONLY_REMOVE_PENDING_JOB = 7; + } + + +} diff --git a/google/ads/googleads/v8/errors/bidding_error.proto b/google/ads/googleads/v8/errors/bidding_error.proto new file mode 100644 index 000000000..f0180c7d1 --- /dev/null +++ b/google/ads/googleads/v8/errors/bidding_error.proto @@ -0,0 +1,122 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "BiddingErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing bidding errors. + +// Container for enum describing possible bidding errors. +message BiddingErrorEnum { + // Enum describing possible bidding errors. + enum BiddingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot transition to new bidding strategy. + BIDDING_STRATEGY_TRANSITION_NOT_ALLOWED = 2; + + // Cannot attach bidding strategy to campaign. + CANNOT_ATTACH_BIDDING_STRATEGY_TO_CAMPAIGN = 7; + + // Bidding strategy is not supported or cannot be used as anonymous. + INVALID_ANONYMOUS_BIDDING_STRATEGY_TYPE = 10; + + // The type does not match the named strategy's type. + INVALID_BIDDING_STRATEGY_TYPE = 14; + + // The bid is invalid. + INVALID_BID = 17; + + // Bidding strategy is not available for the account type. + BIDDING_STRATEGY_NOT_AVAILABLE_FOR_ACCOUNT_TYPE = 18; + + // Conversion tracking is not enabled in the campaign that has value-based + // bidding transitions. + CONVERSION_TRACKING_NOT_ENABLED = 19; + + // Not enough conversions tracked for value-based bidding transitions. + NOT_ENOUGH_CONVERSIONS = 20; + + // Campaign can not be created with given bidding strategy. It can be + // transitioned to the strategy, once eligible. + CANNOT_CREATE_CAMPAIGN_WITH_BIDDING_STRATEGY = 21; + + // Cannot target content network only as campaign uses Page One Promoted + // bidding strategy. + CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CAMPAIGN_LEVEL_POP_BIDDING_STRATEGY = 23; + + // Budget Optimizer and Target Spend bidding strategies are not supported + // for campaigns with AdSchedule targeting. + BIDDING_STRATEGY_NOT_SUPPORTED_WITH_AD_SCHEDULE = 24; + + // Pay per conversion is not available to all the customer, only few + // customers on the allow-list can use this. + PAY_PER_CONVERSION_NOT_AVAILABLE_FOR_CUSTOMER = 25; + + // Pay per conversion is not allowed with Target CPA. + PAY_PER_CONVERSION_NOT_ALLOWED_WITH_TARGET_CPA = 26; + + // Cannot set bidding strategy to Manual CPM for search network only + // campaigns. + BIDDING_STRATEGY_NOT_ALLOWED_FOR_SEARCH_ONLY_CAMPAIGNS = 27; + + // The bidding strategy is not supported for use in drafts or experiments. + BIDDING_STRATEGY_NOT_SUPPORTED_IN_DRAFTS_OR_EXPERIMENTS = 28; + + // Bidding strategy type does not support product type ad group criterion. + BIDDING_STRATEGY_TYPE_DOES_NOT_SUPPORT_PRODUCT_TYPE_ADGROUP_CRITERION = 29; + + // Bid amount is too small. + BID_TOO_SMALL = 30; + + // Bid amount is too big. + BID_TOO_BIG = 31; + + // Bid has too many fractional digit precision. + BID_TOO_MANY_FRACTIONAL_DIGITS = 32; + + // Invalid domain name specified. + INVALID_DOMAIN_NAME = 33; + + // The field is not compatible with the payment mode. + NOT_COMPATIBLE_WITH_PAYMENT_MODE = 34; + + // The field is not compatible with the budget type. + NOT_COMPATIBLE_WITH_BUDGET_TYPE = 35; + + // The field is not compatible with the bidding strategy type. + NOT_COMPATIBLE_WITH_BIDDING_STRATEGY_TYPE = 36; + + // Bidding strategy type is incompatible with shared budget. + BIDDING_STRATEGY_TYPE_INCOMPATIBLE_WITH_SHARED_BUDGET = 37; + } + + +} diff --git a/google/ads/googleads/v8/errors/bidding_strategy_error.proto b/google/ads/googleads/v8/errors/bidding_strategy_error.proto new file mode 100644 index 000000000..9f4f99240 --- /dev/null +++ b/google/ads/googleads/v8/errors/bidding_strategy_error.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategyErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing bidding strategy errors. + +// Container for enum describing possible bidding strategy errors. +message BiddingStrategyErrorEnum { + // Enum describing possible bidding strategy errors. + enum BiddingStrategyError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Each bidding strategy must have a unique name. + DUPLICATE_NAME = 2; + + // Bidding strategy type is immutable. + CANNOT_CHANGE_BIDDING_STRATEGY_TYPE = 3; + + // Only bidding strategies not linked to campaigns, adgroups or adgroup + // criteria can be removed. + CANNOT_REMOVE_ASSOCIATED_STRATEGY = 4; + + // The specified bidding strategy is not supported. + BIDDING_STRATEGY_NOT_SUPPORTED = 5; + + // The bidding strategy is incompatible with the campaign's bidding + // strategy goal type. + INCOMPATIBLE_BIDDING_STRATEGY_AND_BIDDING_STRATEGY_GOAL_TYPE = 6; + } + + +} diff --git a/google/ads/googleads/v8/errors/billing_setup_error.proto b/google/ads/googleads/v8/errors/billing_setup_error.proto new file mode 100644 index 000000000..70d9255f1 --- /dev/null +++ b/google/ads/googleads/v8/errors/billing_setup_error.proto @@ -0,0 +1,105 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "BillingSetupErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing billing setup errors. + +// Container for enum describing possible billing setup errors. +message BillingSetupErrorEnum { + // Enum describing possible billing setup errors. + enum BillingSetupError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot specify both an existing payments account and a new payments + // account when setting up billing. + CANNOT_USE_EXISTING_AND_NEW_ACCOUNT = 2; + + // Cannot cancel an approved billing setup whose start time has passed. + CANNOT_REMOVE_STARTED_BILLING_SETUP = 3; + + // Cannot perform a Change of Bill-To (CBT) to the same payments account. + CANNOT_CHANGE_BILLING_TO_SAME_PAYMENTS_ACCOUNT = 4; + + // Billing setups can only be used by customers with ENABLED or DRAFT + // status. + BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_STATUS = 5; + + // Billing setups must either include a correctly formatted existing + // payments account id, or a non-empty new payments account name. + INVALID_PAYMENTS_ACCOUNT = 6; + + // Only billable and third-party customers can create billing setups. + BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_CATEGORY = 7; + + // Billing setup creations can only use NOW for start time type. + INVALID_START_TIME_TYPE = 8; + + // Billing setups can only be created for a third-party customer if they do + // not already have a setup. + THIRD_PARTY_ALREADY_HAS_BILLING = 9; + + // Billing setups cannot be created if there is already a pending billing in + // progress. + BILLING_SETUP_IN_PROGRESS = 10; + + // Billing setups can only be created by customers who have permission to + // setup billings. Users can contact a representative for help setting up + // permissions. + NO_SIGNUP_PERMISSION = 11; + + // Billing setups cannot be created if there is already a future-approved + // billing. + CHANGE_OF_BILL_TO_IN_PROGRESS = 12; + + // Requested payments profile not found. + PAYMENTS_PROFILE_NOT_FOUND = 13; + + // Requested payments account not found. + PAYMENTS_ACCOUNT_NOT_FOUND = 14; + + // Billing setup creation failed because the payments profile is ineligible. + PAYMENTS_PROFILE_INELIGIBLE = 15; + + // Billing setup creation failed because the payments account is ineligible. + PAYMENTS_ACCOUNT_INELIGIBLE = 16; + + // Billing setup creation failed because the payments profile needs internal + // approval. + CUSTOMER_NEEDS_INTERNAL_APPROVAL = 17; + + // Payments account has different currency code than the current customer + // and hence cannot be used to setup billing. + PAYMENTS_ACCOUNT_INELIGIBLE_CURRENCY_CODE_MISMATCH = 19; + } + + +} diff --git a/google/ads/googleads/v8/errors/campaign_budget_error.proto b/google/ads/googleads/v8/errors/campaign_budget_error.proto new file mode 100644 index 000000000..ba5a31874 --- /dev/null +++ b/google/ads/googleads/v8/errors/campaign_budget_error.proto @@ -0,0 +1,97 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBudgetErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing campaign budget errors. + +// Container for enum describing possible campaign budget errors. +message CampaignBudgetErrorEnum { + // Enum describing possible campaign budget errors. + enum CampaignBudgetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The campaign budget cannot be shared. + CAMPAIGN_BUDGET_CANNOT_BE_SHARED = 17; + + // The requested campaign budget no longer exists. + CAMPAIGN_BUDGET_REMOVED = 2; + + // The campaign budget is associated with at least one campaign, and so the + // campaign budget cannot be removed. + CAMPAIGN_BUDGET_IN_USE = 3; + + // Customer is not on the allow-list for this campaign budget period. + CAMPAIGN_BUDGET_PERIOD_NOT_AVAILABLE = 4; + + // This field is not mutable on implicitly shared campaign budgets + CANNOT_MODIFY_FIELD_OF_IMPLICITLY_SHARED_CAMPAIGN_BUDGET = 6; + + // Cannot change explicitly shared campaign budgets back to implicitly + // shared ones. + CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_IMPLICITLY_SHARED = 7; + + // An implicit campaign budget without a name cannot be changed to + // explicitly shared campaign budget. + CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED_WITHOUT_NAME = 8; + + // Cannot change an implicitly shared campaign budget to an explicitly + // shared one. + CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED = 9; + + // Only explicitly shared campaign budgets can be used with multiple + // campaigns. + CANNOT_USE_IMPLICITLY_SHARED_CAMPAIGN_BUDGET_WITH_MULTIPLE_CAMPAIGNS = 10; + + // A campaign budget with this name already exists. + DUPLICATE_NAME = 11; + + // A money amount was not in the expected currency. + MONEY_AMOUNT_IN_WRONG_CURRENCY = 12; + + // A money amount was less than the minimum CPC for currency. + MONEY_AMOUNT_LESS_THAN_CURRENCY_MINIMUM_CPC = 13; + + // A money amount was greater than the maximum allowed. + MONEY_AMOUNT_TOO_LARGE = 14; + + // A money amount was negative. + NEGATIVE_MONEY_AMOUNT = 15; + + // A money amount was not a multiple of a minimum unit. + NON_MULTIPLE_OF_MINIMUM_CURRENCY_UNIT = 16; + + // Total budget amount must be unset when BudgetPeriod is DAILY. + TOTAL_BUDGET_AMOUNT_MUST_BE_UNSET_FOR_BUDGET_PERIOD_DAILY = 18; + } + + +} diff --git a/google/ads/googleads/v8/errors/campaign_criterion_error.proto b/google/ads/googleads/v8/errors/campaign_criterion_error.proto new file mode 100644 index 000000000..bbb55d1e1 --- /dev/null +++ b/google/ads/googleads/v8/errors/campaign_criterion_error.proto @@ -0,0 +1,99 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing campaign criterion errors. + +// Container for enum describing possible campaign criterion errors. +message CampaignCriterionErrorEnum { + // Enum describing possible campaign criterion errors. + enum CampaignCriterionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Concrete type of criterion (keyword v.s. placement) is required for + // CREATE and UPDATE operations. + CONCRETE_TYPE_REQUIRED = 2; + + // Invalid placement URL. + INVALID_PLACEMENT_URL = 3; + + // Criteria type can not be excluded for the campaign by the customer. like + // AOL account type cannot target site type criteria + CANNOT_EXCLUDE_CRITERIA_TYPE = 4; + + // Cannot set the campaign criterion status for this criteria type. + CANNOT_SET_STATUS_FOR_CRITERIA_TYPE = 5; + + // Cannot set the campaign criterion status for an excluded criteria. + CANNOT_SET_STATUS_FOR_EXCLUDED_CRITERIA = 6; + + // Cannot target and exclude the same criterion. + CANNOT_TARGET_AND_EXCLUDE = 7; + + // The mutate contained too many operations. + TOO_MANY_OPERATIONS = 8; + + // This operator cannot be applied to a criterion of this type. + OPERATOR_NOT_SUPPORTED_FOR_CRITERION_TYPE = 9; + + // The Shopping campaign sales country is not supported for + // ProductSalesChannel targeting. + SHOPPING_CAMPAIGN_SALES_COUNTRY_NOT_SUPPORTED_FOR_SALES_CHANNEL = 10; + + // The existing field can't be updated with CREATE operation. It can be + // updated with UPDATE operation only. + CANNOT_ADD_EXISTING_FIELD = 11; + + // Negative criteria are immutable, so updates are not allowed. + CANNOT_UPDATE_NEGATIVE_CRITERION = 12; + + // Only free form names are allowed for negative Smart campaign keyword + // theme. + CANNOT_SET_NEGATIVE_KEYWORD_THEME_CONSTANT_CRITERION = 13; + + // Invalid Smart campaign keyword theme constant criterion. + INVALID_KEYWORD_THEME_CONSTANT = 14; + + // A Smart campaign keyword theme constant or free-form Smart campaign + // keyword theme is required. + MISSING_KEYWORD_THEME_CONSTANT_OR_FREE_FORM_KEYWORD_THEME = 15; + + // A Smart campaign may not target proximity and location criteria + // simultaneously. + CANNOT_TARGET_BOTH_PROXIMITY_AND_LOCATION_CRITERIA_FOR_SMART_CAMPAIGN = 16; + + // A Smart campaign may not target multiple proximity criteria. + CANNOT_TARGET_MULTIPLE_PROXIMITY_CRITERIA_FOR_SMART_CAMPAIGN = 17; + } + + +} diff --git a/google/ads/googleads/v8/errors/campaign_draft_error.proto b/google/ads/googleads/v8/errors/campaign_draft_error.proto new file mode 100644 index 000000000..1c3ba4ccf --- /dev/null +++ b/google/ads/googleads/v8/errors/campaign_draft_error.proto @@ -0,0 +1,79 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignDraftErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing campaign draft errors. + +// Container for enum describing possible campaign draft errors. +message CampaignDraftErrorEnum { + // Enum describing possible campaign draft errors. + enum CampaignDraftError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A draft with this name already exists for this campaign. + DUPLICATE_DRAFT_NAME = 2; + + // The draft is removed and cannot be transitioned to another status. + INVALID_STATUS_TRANSITION_FROM_REMOVED = 3; + + // The draft has been promoted and cannot be transitioned to the specified + // status. + INVALID_STATUS_TRANSITION_FROM_PROMOTED = 4; + + // The draft has failed to be promoted and cannot be transitioned to the + // specified status. + INVALID_STATUS_TRANSITION_FROM_PROMOTE_FAILED = 5; + + // This customer is not allowed to create drafts. + CUSTOMER_CANNOT_CREATE_DRAFT = 6; + + // This campaign is not allowed to create drafts. + CAMPAIGN_CANNOT_CREATE_DRAFT = 7; + + // This modification cannot be made on a draft. + INVALID_DRAFT_CHANGE = 8; + + // The draft cannot be transitioned to the specified status from its + // current status. + INVALID_STATUS_TRANSITION = 9; + + // The campaign has reached the maximum number of drafts that can be created + // for a campaign throughout its lifetime. No additional drafts can be + // created for this campaign. Removed drafts also count towards this limit. + MAX_NUMBER_OF_DRAFTS_PER_CAMPAIGN_REACHED = 10; + + // ListAsyncErrors was called without first promoting the draft. + LIST_ERRORS_FOR_PROMOTED_DRAFT_ONLY = 11; + } + + +} diff --git a/google/ads/googleads/v8/errors/campaign_error.proto b/google/ads/googleads/v8/errors/campaign_error.proto new file mode 100644 index 000000000..7fccf36a9 --- /dev/null +++ b/google/ads/googleads/v8/errors/campaign_error.proto @@ -0,0 +1,190 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing campaign errors. + +// Container for enum describing possible campaign errors. +message CampaignErrorEnum { + // Enum describing possible campaign errors. + enum CampaignError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot target content network. + CANNOT_TARGET_CONTENT_NETWORK = 3; + + // Cannot target search network. + CANNOT_TARGET_SEARCH_NETWORK = 4; + + // Cannot cover search network without google search network. + CANNOT_TARGET_SEARCH_NETWORK_WITHOUT_GOOGLE_SEARCH = 5; + + // Cannot target Google Search network for a CPM campaign. + CANNOT_TARGET_GOOGLE_SEARCH_FOR_CPM_CAMPAIGN = 6; + + // Must target at least one network. + CAMPAIGN_MUST_TARGET_AT_LEAST_ONE_NETWORK = 7; + + // Only some Google partners are allowed to target partner search network. + CANNOT_TARGET_PARTNER_SEARCH_NETWORK = 8; + + // Cannot target content network only as campaign has criteria-level bidding + // strategy. + CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CRITERIA_LEVEL_BIDDING_STRATEGY = 9; + + // Cannot modify the start or end date such that the campaign duration would + // not contain the durations of all runnable trials. + CAMPAIGN_DURATION_MUST_CONTAIN_ALL_RUNNABLE_TRIALS = 10; + + // Cannot modify dates, budget or status of a trial campaign. + CANNOT_MODIFY_FOR_TRIAL_CAMPAIGN = 11; + + // Trying to modify the name of an active or paused campaign, where the name + // is already assigned to another active or paused campaign. + DUPLICATE_CAMPAIGN_NAME = 12; + + // Two fields are in conflicting modes. + INCOMPATIBLE_CAMPAIGN_FIELD = 13; + + // Campaign name cannot be used. + INVALID_CAMPAIGN_NAME = 14; + + // Given status is invalid. + INVALID_AD_SERVING_OPTIMIZATION_STATUS = 15; + + // Error in the campaign level tracking URL. + INVALID_TRACKING_URL = 16; + + // Cannot set both tracking URL template and tracking setting. A user has + // to clear legacy tracking setting in order to add tracking URL template. + CANNOT_SET_BOTH_TRACKING_URL_TEMPLATE_AND_TRACKING_SETTING = 17; + + // The maximum number of impressions for Frequency Cap should be an integer + // greater than 0. + MAX_IMPRESSIONS_NOT_IN_RANGE = 18; + + // Only the Day, Week and Month time units are supported. + TIME_UNIT_NOT_SUPPORTED = 19; + + // Operation not allowed on a campaign whose serving status has ended + INVALID_OPERATION_IF_SERVING_STATUS_HAS_ENDED = 20; + + // This budget is exclusively linked to a Campaign that is using experiments + // so it cannot be shared. + BUDGET_CANNOT_BE_SHARED = 21; + + // Campaigns using experiments cannot use a shared budget. + CAMPAIGN_CANNOT_USE_SHARED_BUDGET = 22; + + // A different budget cannot be assigned to a campaign when there are + // running or scheduled trials. + CANNOT_CHANGE_BUDGET_ON_CAMPAIGN_WITH_TRIALS = 23; + + // No link found between the campaign and the label. + CAMPAIGN_LABEL_DOES_NOT_EXIST = 24; + + // The label has already been attached to the campaign. + CAMPAIGN_LABEL_ALREADY_EXISTS = 25; + + // A ShoppingSetting was not found when creating a shopping campaign. + MISSING_SHOPPING_SETTING = 26; + + // The country in shopping setting is not an allowed country. + INVALID_SHOPPING_SALES_COUNTRY = 27; + + // The requested channel type is not available according to the customer's + // account setting. + ADVERTISING_CHANNEL_TYPE_NOT_AVAILABLE_FOR_ACCOUNT_TYPE = 31; + + // The AdvertisingChannelSubType is not a valid subtype of the primary + // channel type. + INVALID_ADVERTISING_CHANNEL_SUB_TYPE = 32; + + // At least one conversion must be selected. + AT_LEAST_ONE_CONVERSION_MUST_BE_SELECTED = 33; + + // Setting ad rotation mode for a campaign is not allowed. Ad rotation mode + // at campaign is deprecated. + CANNOT_SET_AD_ROTATION_MODE = 34; + + // Trying to change start date on a campaign that has started. + CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED = 35; + + // Trying to modify a date into the past. + CANNOT_SET_DATE_TO_PAST = 36; + + // Hotel center id in the hotel setting does not match any customer links. + MISSING_HOTEL_CUSTOMER_LINK = 37; + + // Hotel center id in the hotel setting must match an active customer link. + INVALID_HOTEL_CUSTOMER_LINK = 38; + + // Hotel setting was not found when creating a hotel ads campaign. + MISSING_HOTEL_SETTING = 39; + + // A Campaign cannot use shared campaign budgets and be part of a campaign + // group. + CANNOT_USE_SHARED_CAMPAIGN_BUDGET_WHILE_PART_OF_CAMPAIGN_GROUP = 40; + + // The app ID was not found. + APP_NOT_FOUND = 41; + + // Campaign.shopping_setting.enable_local is not supported for the specified + // campaign type. + SHOPPING_ENABLE_LOCAL_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE = 42; + + // The merchant does not support the creation of campaigns for Shopping + // Comparison Listing Ads. + MERCHANT_NOT_ALLOWED_FOR_COMPARISON_LISTING_ADS = 43; + + // The App campaign for engagement cannot be created because there aren't + // enough installs. + INSUFFICIENT_APP_INSTALLS_COUNT = 44; + + // The App campaign for engagement cannot be created because the app is + // sensitive. + SENSITIVE_CATEGORY_APP = 45; + + // Customers with Housing, Employment, or Credit ads must accept updated + // personalized ads policy to continue creating campaigns. + HEC_AGREEMENT_REQUIRED = 46; + + // The field is not compatible with view through conversion optimization. + NOT_COMPATIBLE_WITH_VIEW_THROUGH_CONVERSION_OPTIMIZATION = 49; + + // The field type cannot be excluded because an active campaign-asset link + // of this type exists. + INVALID_EXCLUDED_PARENT_ASSET_FIELD_TYPE = 48; + } + + +} diff --git a/google/ads/googleads/v8/errors/campaign_experiment_error.proto b/google/ads/googleads/v8/errors/campaign_experiment_error.proto new file mode 100644 index 000000000..3d4a976c9 --- /dev/null +++ b/google/ads/googleads/v8/errors/campaign_experiment_error.proto @@ -0,0 +1,81 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing campaign experiment errors. + +// Container for enum describing possible campaign experiment errors. +message CampaignExperimentErrorEnum { + // Enum describing possible campaign experiment errors. + enum CampaignExperimentError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // An active campaign or experiment with this name already exists. + DUPLICATE_NAME = 2; + + // Experiment cannot be updated from the current state to the + // requested target state. For example, an experiment can only graduate + // if its status is ENABLED. + INVALID_TRANSITION = 3; + + // Cannot create an experiment from a campaign using an explicitly shared + // budget. + CANNOT_CREATE_EXPERIMENT_WITH_SHARED_BUDGET = 4; + + // Cannot create an experiment for a removed base campaign. + CANNOT_CREATE_EXPERIMENT_FOR_REMOVED_BASE_CAMPAIGN = 5; + + // Cannot create an experiment from a draft, which has a status other than + // proposed. + CANNOT_CREATE_EXPERIMENT_FOR_NON_PROPOSED_DRAFT = 6; + + // This customer is not allowed to create an experiment. + CUSTOMER_CANNOT_CREATE_EXPERIMENT = 7; + + // This campaign is not allowed to create an experiment. + CAMPAIGN_CANNOT_CREATE_EXPERIMENT = 8; + + // Trying to set an experiment duration which overlaps with another + // experiment. + EXPERIMENT_DURATIONS_MUST_NOT_OVERLAP = 9; + + // All non-removed experiments must start and end within their campaign's + // duration. + EXPERIMENT_DURATION_MUST_BE_WITHIN_CAMPAIGN_DURATION = 10; + + // The experiment cannot be modified because its status is in a terminal + // state, such as REMOVED. + CANNOT_MUTATE_EXPERIMENT_DUE_TO_STATUS = 11; + } + + +} diff --git a/google/ads/googleads/v8/errors/campaign_feed_error.proto b/google/ads/googleads/v8/errors/campaign_feed_error.proto new file mode 100644 index 000000000..fc8fc0a2a --- /dev/null +++ b/google/ads/googleads/v8/errors/campaign_feed_error.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignFeedErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing campaign feed errors. + +// Container for enum describing possible campaign feed errors. +message CampaignFeedErrorEnum { + // Enum describing possible campaign feed errors. + enum CampaignFeedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // An active feed already exists for this campaign and placeholder type. + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; + + // The specified feed is removed. + CANNOT_CREATE_FOR_REMOVED_FEED = 4; + + // The CampaignFeed already exists. UPDATE should be used to modify the + // existing CampaignFeed. + CANNOT_CREATE_ALREADY_EXISTING_CAMPAIGN_FEED = 5; + + // Cannot update removed campaign feed. + CANNOT_MODIFY_REMOVED_CAMPAIGN_FEED = 6; + + // Invalid placeholder type. + INVALID_PLACEHOLDER_TYPE = 7; + + // Feed mapping for this placeholder type does not exist. + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 8; + + // Location CampaignFeeds cannot be created unless there is a location + // CustomerFeed for the specified feed. + NO_EXISTING_LOCATION_CUSTOMER_FEED = 9; + } + + +} diff --git a/google/ads/googleads/v8/errors/campaign_shared_set_error.proto b/google/ads/googleads/v8/errors/campaign_shared_set_error.proto new file mode 100644 index 000000000..52467b7dd --- /dev/null +++ b/google/ads/googleads/v8/errors/campaign_shared_set_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSharedSetErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing campaign shared set errors. + +// Container for enum describing possible campaign shared set errors. +message CampaignSharedSetErrorEnum { + // Enum describing possible campaign shared set errors. + enum CampaignSharedSetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The shared set belongs to another customer and permission isn't granted. + SHARED_SET_ACCESS_DENIED = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/change_event_error.proto b/google/ads/googleads/v8/errors/change_event_error.proto new file mode 100644 index 000000000..7aef976da --- /dev/null +++ b/google/ads/googleads/v8/errors/change_event_error.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ChangeEventErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing change event errors. + +// Container for enum describing possible change event errors. +message ChangeEventErrorEnum { + // Enum describing possible change event errors. + enum ChangeEventError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The requested start date is too old. It cannot be older than 30 days. + START_DATE_TOO_OLD = 2; + + // The change_event search request must specify a finite range filter + // on change_date_time. + CHANGE_DATE_RANGE_INFINITE = 3; + + // The change event search request has specified invalid date time filters + // that can never logically produce any valid results (for example, start + // time after end time). + CHANGE_DATE_RANGE_NEGATIVE = 4; + + // The change_event search request must specify a LIMIT. + LIMIT_NOT_SPECIFIED = 5; + + // The LIMIT specified by change_event request should be less than or equal + // to 10K. + INVALID_LIMIT_CLAUSE = 6; + } + + +} diff --git a/google/ads/googleads/v8/errors/change_status_error.proto b/google/ads/googleads/v8/errors/change_status_error.proto new file mode 100644 index 000000000..451bc5775 --- /dev/null +++ b/google/ads/googleads/v8/errors/change_status_error.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ChangeStatusErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing change status errors. + +// Container for enum describing possible change status errors. +message ChangeStatusErrorEnum { + // Enum describing possible change status errors. + enum ChangeStatusError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The requested start date is too old. + START_DATE_TOO_OLD = 3; + + // The change_status search request must specify a finite range filter + // on last_change_date_time. + CHANGE_DATE_RANGE_INFINITE = 4; + + // The change status search request has specified invalid date time filters + // that can never logically produce any valid results (for example, start + // time after end time). + CHANGE_DATE_RANGE_NEGATIVE = 5; + + // The change_status search request must specify a LIMIT. + LIMIT_NOT_SPECIFIED = 6; + + // The LIMIT specified by change_status request should be less than or equal + // to 10K. + INVALID_LIMIT_CLAUSE = 7; + } + + +} diff --git a/google/ads/googleads/v8/errors/collection_size_error.proto b/google/ads/googleads/v8/errors/collection_size_error.proto new file mode 100644 index 000000000..4bfc3d28e --- /dev/null +++ b/google/ads/googleads/v8/errors/collection_size_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CollectionSizeErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing collection size errors. + +// Container for enum describing possible collection size errors. +message CollectionSizeErrorEnum { + // Enum describing possible collection size errors. + enum CollectionSizeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Too few. + TOO_FEW = 2; + + // Too many. + TOO_MANY = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/context_error.proto b/google/ads/googleads/v8/errors/context_error.proto new file mode 100644 index 000000000..663e319d8 --- /dev/null +++ b/google/ads/googleads/v8/errors/context_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ContextErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing context errors. + +// Container for enum describing possible context errors. +message ContextErrorEnum { + // Enum describing possible context errors. + enum ContextError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The operation is not allowed for the given context. + OPERATION_NOT_PERMITTED_FOR_CONTEXT = 2; + + // The operation is not allowed for removed resources. + OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/conversion_action_error.proto b/google/ads/googleads/v8/errors/conversion_action_error.proto new file mode 100644 index 000000000..ede311fd8 --- /dev/null +++ b/google/ads/googleads/v8/errors/conversion_action_error.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing conversion action errors. + +// Container for enum describing possible conversion action errors. +message ConversionActionErrorEnum { + // Enum describing possible conversion action errors. + enum ConversionActionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The specified conversion action name already exists. + DUPLICATE_NAME = 2; + + // Another conversion action with the specified app id already exists. + DUPLICATE_APP_ID = 3; + + // Android first open action conflicts with Google play codeless download + // action tracking the same app. + TWO_CONVERSION_ACTIONS_BIDDING_ON_SAME_APP_DOWNLOAD = 4; + + // Android first open action conflicts with Google play codeless download + // action tracking the same app. + BIDDING_ON_SAME_APP_DOWNLOAD_AS_GLOBAL_ACTION = 5; + + // The attribution model cannot be set to DATA_DRIVEN because a data-driven + // model has never been generated. + DATA_DRIVEN_MODEL_WAS_NEVER_GENERATED = 6; + + // The attribution model cannot be set to DATA_DRIVEN because the + // data-driven model is expired. + DATA_DRIVEN_MODEL_EXPIRED = 7; + + // The attribution model cannot be set to DATA_DRIVEN because the + // data-driven model is stale. + DATA_DRIVEN_MODEL_STALE = 8; + + // The attribution model cannot be set to DATA_DRIVEN because the + // data-driven model is unavailable or the conversion action was newly + // added. + DATA_DRIVEN_MODEL_UNKNOWN = 9; + + // Creation of this conversion action type isn't supported by Google + // Ads API. + CREATION_NOT_SUPPORTED = 10; + + // Update of this conversion action isn't supported by Google Ads API. + UPDATE_NOT_SUPPORTED = 11; + } + + +} diff --git a/google/ads/googleads/v8/errors/conversion_adjustment_upload_error.proto b/google/ads/googleads/v8/errors/conversion_adjustment_upload_error.proto new file mode 100644 index 000000000..2a847d208 --- /dev/null +++ b/google/ads/googleads/v8/errors/conversion_adjustment_upload_error.proto @@ -0,0 +1,105 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionAdjustmentUploadErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing conversion adjustment upload errors. + +// Container for enum describing possible conversion adjustment upload errors. +message ConversionAdjustmentUploadErrorEnum { + // Enum describing possible conversion adjustment upload errors. + enum ConversionAdjustmentUploadError { + // Not specified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The specified conversion action was created too recently. + // Please try the upload again after 4-6 hours have passed since the + // conversion action was created. + TOO_RECENT_CONVERSION_ACTION = 2; + + // No conversion action of a supported ConversionActionType that matches the + // provided information can be found for the customer. + INVALID_CONVERSION_ACTION = 3; + + // A retraction was already reported for this conversion. + CONVERSION_ALREADY_RETRACTED = 4; + + // A conversion for the supplied combination of conversion + // action and conversion identifier could not be found. + CONVERSION_NOT_FOUND = 5; + + // The specified conversion has already expired. Conversions expire after 55 + // days, after which adjustments cannot be reported against them. + CONVERSION_EXPIRED = 6; + + // The supplied adjustment date time precedes that of the original + // conversion. + ADJUSTMENT_PRECEDES_CONVERSION = 7; + + // A restatement with a more recent adjustment date time was already + // reported for this conversion. + MORE_RECENT_RESTATEMENT_FOUND = 8; + + // The conversion was created too recently. + TOO_RECENT_CONVERSION = 9; + + // Restatements cannot be reported for a conversion action that always uses + // the default value. + CANNOT_RESTATE_CONVERSION_ACTION_THAT_ALWAYS_USES_DEFAULT_CONVERSION_VALUE = 10; + + // The request contained more than 2000 adjustments. + TOO_MANY_ADJUSTMENTS_IN_REQUEST = 11; + + // The conversion has been adjusted too many times. + TOO_MANY_ADJUSTMENTS = 12; + + // The customer has not accepted the customer data terms in the conversion + // settings page. + CUSTOMER_NOT_ACCEPTED_CUSTOMER_DATA_TERMS = 15; + + // The enhanced conversion settings of the conversion action supplied is + // not eligible for enhancements. + CONVERSION_ACTION_NOT_ELIGIBLE_FOR_ENHANCEMENT = 16; + + // The provided user identifier is not a SHA-256 hash. It is either unhashed + // or hashed using a different hash function. + INVALID_USER_IDENTIFIER = 17; + + // The provided user identifier is not supported. + // ConversionAdjustmentUploadService only supports hashed_email, + // hashed_phone_number, and address_info. + UNSUPPORTED_USER_IDENTIFIER = 18; + + // The user_identifier_source must be FIRST_PARTY for enhancements. + INVALID_USER_IDENTIFIER_SOURCE = 19; + } + + +} diff --git a/google/ads/googleads/v8/errors/conversion_custom_variable_error.proto b/google/ads/googleads/v8/errors/conversion_custom_variable_error.proto new file mode 100644 index 000000000..e178a51b8 --- /dev/null +++ b/google/ads/googleads/v8/errors/conversion_custom_variable_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionCustomVariableErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing conversion custom variable errors. + +// Container for enum describing possible conversion custom variable errors. +message ConversionCustomVariableErrorEnum { + // Enum describing possible conversion custom variable errors. + enum ConversionCustomVariableError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A conversion custom variable with the specified name already exists. + DUPLICATE_NAME = 2; + + // A conversion custom variable with the specified tag already exists. + DUPLICATE_TAG = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/conversion_upload_error.proto b/google/ads/googleads/v8/errors/conversion_upload_error.proto new file mode 100644 index 000000000..423cdd32b --- /dev/null +++ b/google/ads/googleads/v8/errors/conversion_upload_error.proto @@ -0,0 +1,169 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionUploadErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing conversion upload errors. + +// Container for enum describing possible conversion upload errors. +message ConversionUploadErrorEnum { + // Enum describing possible conversion upload errors. + enum ConversionUploadError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The request contained more than 2000 conversions. + TOO_MANY_CONVERSIONS_IN_REQUEST = 2; + + // The specified gclid could not be decoded. + UNPARSEABLE_GCLID = 3; + + // The specified conversion_date_time is before the event time + // associated with the given gclid. + CONVERSION_PRECEDES_GCLID = 4; + + // The click associated with the given gclid is either too old to be + // imported or occurred outside of the click through lookback window for the + // specified conversion action. + EXPIRED_GCLID = 5; + + // The click associated with the given gclid occurred too recently. Please + // try uploading again after 6 hours have passed since the click occurred. + TOO_RECENT_GCLID = 6; + + // The click associated with the given gclid could not be found in the + // system. This can happen if Google Click IDs are collected for non Google + // Ads clicks. + GCLID_NOT_FOUND = 7; + + // The click associated with the given gclid is owned by a customer account + // that the uploading customer does not manage. + UNAUTHORIZED_CUSTOMER = 8; + + // No upload eligible conversion action that matches the provided + // information can be found for the customer. + INVALID_CONVERSION_ACTION = 9; + + // The specified conversion action was created too recently. + // Please try the upload again after 4-6 hours have passed since the + // conversion action was created. + TOO_RECENT_CONVERSION_ACTION = 10; + + // The click associated with the given gclid does not contain conversion + // tracking information. + CONVERSION_TRACKING_NOT_ENABLED_AT_IMPRESSION_TIME = 11; + + // The specified conversion action does not use an external attribution + // model, but external_attribution_data was set. + EXTERNAL_ATTRIBUTION_DATA_SET_FOR_NON_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 12; + + // The specified conversion action uses an external attribution model, but + // external_attribution_data or one of its contained fields was not set. + // Both external_attribution_credit and external_attribution_model must be + // set for externally attributed conversion actions. + EXTERNAL_ATTRIBUTION_DATA_NOT_SET_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 13; + + // Order IDs are not supported for conversion actions which use an external + // attribution model. + ORDER_ID_NOT_PERMITTED_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 14; + + // A conversion with the same order id and conversion action combination + // already exists in our system. + ORDER_ID_ALREADY_IN_USE = 15; + + // The request contained two or more conversions with the same order id and + // conversion action combination. + DUPLICATE_ORDER_ID = 16; + + // The call occurred too recently. Please try uploading again after 12 hours + // have passed since the call occurred. + TOO_RECENT_CALL = 17; + + // The click that initiated the call is too old for this conversion to be + // imported. + EXPIRED_CALL = 18; + + // The call or the click leading to the call was not found. + CALL_NOT_FOUND = 19; + + // The specified conversion_date_time is before the call_start_date_time. + CONVERSION_PRECEDES_CALL = 20; + + // The click associated with the call does not contain conversion tracking + // information. + CONVERSION_TRACKING_NOT_ENABLED_AT_CALL_TIME = 21; + + // The caller’s phone number cannot be parsed. It should be formatted either + // as E.164 "+16502531234", International "+64 3-331 6005" or US national + // number "6502531234". + UNPARSEABLE_CALLERS_PHONE_NUMBER = 22; + + // The custom variable is not enabled. + CUSTOM_VARIABLE_NOT_ENABLED = 28; + + // The value of the custom variable contains private customer data, such + // as email addresses or phone numbers. + CUSTOM_VARIABLE_VALUE_CONTAINS_PII = 29; + + // The click associated with the given gclid isn't from the account where + // conversion tracking is set up. + INVALID_CUSTOMER_FOR_CLICK = 30; + + // The click associated with the given call isn't from the account where + // conversion tracking is set up. + INVALID_CUSTOMER_FOR_CALL = 31; + + // The conversion can't be uploaded because the conversion source didn't + // comply with the App Tracking Transparency (ATT) policy or the person who + // converted didn't consent to tracking. + CONVERSION_NOT_COMPLIANT_WITH_ATT_POLICY = 32; + + // No click was found for the provided user identifiers that could be + // applied to the specified conversion action. + CLICK_NOT_FOUND = 33; + + // The provided user identifier is not a SHA-256 hash. It is either unhashed + // or hashed using a different hash function. + INVALID_USER_IDENTIFIER = 34; + + // Conversion actions which use an external attribution model cannot be used + // with UserIdentifier. + EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION_NOT_PERMITTED_WITH_USER_IDENTIFIER = 35; + + // The provided user identifier is not supported. ConversionUploadService + // only supports hashed_email and hashed_phone_number. + UNSUPPORTED_USER_IDENTIFIER = 36; + + // The user_identifier_source must be FIRST_PARTY for conversion uploads. + INVALID_USER_IDENTIFIER_SOURCE = 37; + } + + +} diff --git a/google/ads/googleads/v8/errors/conversion_value_rule_error.proto b/google/ads/googleads/v8/errors/conversion_value_rule_error.proto new file mode 100644 index 000000000..fc711362c --- /dev/null +++ b/google/ads/googleads/v8/errors/conversion_value_rule_error.proto @@ -0,0 +1,92 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing conversion value rule errors. + +// Container for enum describing possible conversion value rule errors. +message ConversionValueRuleErrorEnum { + // Enum describing possible conversion value rule errors. + enum ConversionValueRuleError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The value rule's geo location condition contains invalid geo target + // constant(s), i.e. there's no matching geo target. + INVALID_GEO_TARGET_CONSTANT = 2; + + // The value rule's geo location condition contains conflicting included and + // excluded geo targets. Specifically, some of the excluded geo target(s) + // are the same as or contain some of the included geo target(s). For + // example, the geo location condition includes California but excludes U.S. + CONFLICTING_INCLUDED_AND_EXCLUDED_GEO_TARGET = 3; + + // User specified conflicting conditions for two value rules in the same + // value rule set. + CONFLICTING_CONDITIONS = 4; + + // The value rule cannot be removed because it's still included in some + // value rule set. + CANNOT_REMOVE_IF_INCLUDED_IN_VALUE_RULE_SET = 5; + + // The value rule contains a condition that's not allowed by the value rule + // set including this value rule. + CONDITION_NOT_ALLOWED = 6; + + // The value rule contains a field that should be unset. + FIELD_MUST_BE_UNSET = 7; + + // Pausing the value rule requires pausing the value rule set because the + // value rule is (one of) the last enabled in the value rule set. + CANNOT_PAUSE_UNLESS_VALUE_RULE_SET_IS_PAUSED = 8; + + // The value rule's geo location condition contains untargetable geo target + // constant(s). + UNTARGETABLE_GEO_TARGET = 9; + + // The value rule's audience condition contains invalid user list(s). In + // another word, there's no matching user list. + INVALID_AUDIENCE_USER_LIST = 10; + + // The value rule's audience condition contains inaccessible user list(s). + INACCESSIBLE_USER_LIST = 11; + + // The value rule's audience condition contains invalid user_interest(s). + // This might be because there is no matching user interest, or the user + // interest is not visible. + INVALID_AUDIENCE_USER_INTEREST = 12; + + // When a value rule is created, it shouldn't have REMOVED status. + CANNOT_ADD_RULE_WITH_STATUS_REMOVED = 13; + } + + +} diff --git a/google/ads/googleads/v8/errors/conversion_value_rule_set_error.proto b/google/ads/googleads/v8/errors/conversion_value_rule_set_error.proto new file mode 100644 index 000000000..1e143c7e3 --- /dev/null +++ b/google/ads/googleads/v8/errors/conversion_value_rule_set_error.proto @@ -0,0 +1,84 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleSetErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing conversion value rule set errors. + +// Container for enum describing possible conversion value rule set errors. +message ConversionValueRuleSetErrorEnum { + // Enum describing possible conversion value rule set errors. + enum ConversionValueRuleSetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Two value rules in this value rule set contain conflicting conditions. + CONFLICTING_VALUE_RULE_CONDITIONS = 2; + + // This value rule set includes a value rule that cannot be found, has been + // permanently removed or belongs to a different customer. + INVALID_VALUE_RULE = 3; + + // An error that's thrown when a mutate operation is trying to + // replace/remove some existing elements in the dimensions field. In other + // words, ADD op is always fine and UPDATE op is fine if it's only appending + // new elements into dimensions list. + DIMENSIONS_UPDATE_ONLY_ALLOW_APPEND = 4; + + // An error that's thrown when a mutate is adding new value rule(s) into a + // value rule set and the added value rule(s) include conditions that are + // not specified in the dimensions of the value rule set. + CONDITION_TYPE_NOT_ALLOWED = 5; + + // The dimensions field contains duplicate elements. + DUPLICATE_DIMENSIONS = 6; + + // This value rule set is attached to an invalid campaign id. Either a + // campaign with this campaign id doesn't exist or it belongs to a different + // customer. + INVALID_CAMPAIGN_ID = 7; + + // When a mutate request tries to pause a value rule set, the enabled + // value rules in this set must be paused in the same command, or this error + // will be thrown. + CANNOT_PAUSE_UNLESS_ALL_VALUE_RULES_ARE_PAUSED = 8; + + // When a mutate request tries to pause all the value rules in a value rule + // set, the value rule set must be paused, or this error will be thrown. + SHOULD_PAUSE_WHEN_ALL_VALUE_RULES_ARE_PAUSED = 9; + + // This value rule set is attached to a campaign that does not support value + // rules. Currently, campaign level value rule sets can only be created on + // Search, or Display campaigns. + VALUE_RULES_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE = 10; + } + + +} diff --git a/google/ads/googleads/v8/errors/country_code_error.proto b/google/ads/googleads/v8/errors/country_code_error.proto new file mode 100644 index 000000000..f849a1bac --- /dev/null +++ b/google/ads/googleads/v8/errors/country_code_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CountryCodeErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing country code errors. + +// Container for enum describing country code errors. +message CountryCodeErrorEnum { + // Enum describing country code errors. + enum CountryCodeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The country code is invalid. + INVALID_COUNTRY_CODE = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/criterion_error.proto b/google/ads/googleads/v8/errors/criterion_error.proto new file mode 100644 index 000000000..a1a7be9f6 --- /dev/null +++ b/google/ads/googleads/v8/errors/criterion_error.proto @@ -0,0 +1,456 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CriterionErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing criterion errors. + +// Container for enum describing possible criterion errors. +message CriterionErrorEnum { + // Enum describing possible criterion errors. + enum CriterionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Concrete type of criterion is required for CREATE and UPDATE operations. + CONCRETE_TYPE_REQUIRED = 2; + + // The category requested for exclusion is invalid. + INVALID_EXCLUDED_CATEGORY = 3; + + // Invalid keyword criteria text. + INVALID_KEYWORD_TEXT = 4; + + // Keyword text should be less than 80 chars. + KEYWORD_TEXT_TOO_LONG = 5; + + // Keyword text has too many words. + KEYWORD_HAS_TOO_MANY_WORDS = 6; + + // Keyword text has invalid characters or symbols. + KEYWORD_HAS_INVALID_CHARS = 7; + + // Invalid placement URL. + INVALID_PLACEMENT_URL = 8; + + // Invalid user list criterion. + INVALID_USER_LIST = 9; + + // Invalid user interest criterion. + INVALID_USER_INTEREST = 10; + + // Placement URL has wrong format. + INVALID_FORMAT_FOR_PLACEMENT_URL = 11; + + // Placement URL is too long. + PLACEMENT_URL_IS_TOO_LONG = 12; + + // Indicates the URL contains an illegal character. + PLACEMENT_URL_HAS_ILLEGAL_CHAR = 13; + + // Indicates the URL contains multiple comma separated URLs. + PLACEMENT_URL_HAS_MULTIPLE_SITES_IN_LINE = 14; + + // Indicates the domain is blocked. + PLACEMENT_IS_NOT_AVAILABLE_FOR_TARGETING_OR_EXCLUSION = 15; + + // Invalid topic path. + INVALID_TOPIC_PATH = 16; + + // The YouTube Channel Id is invalid. + INVALID_YOUTUBE_CHANNEL_ID = 17; + + // The YouTube Video Id is invalid. + INVALID_YOUTUBE_VIDEO_ID = 18; + + // Indicates the placement is a YouTube vertical channel, which is no longer + // supported. + YOUTUBE_VERTICAL_CHANNEL_DEPRECATED = 19; + + // Indicates the placement is a YouTube demographic channel, which is no + // longer supported. + YOUTUBE_DEMOGRAPHIC_CHANNEL_DEPRECATED = 20; + + // YouTube urls are not supported in Placement criterion. Use YouTubeChannel + // and YouTubeVideo criterion instead. + YOUTUBE_URL_UNSUPPORTED = 21; + + // Criteria type can not be excluded by the customer, like AOL account type + // cannot target site type criteria. + CANNOT_EXCLUDE_CRITERIA_TYPE = 22; + + // Criteria type can not be targeted. + CANNOT_ADD_CRITERIA_TYPE = 23; + + // Not allowed to exclude similar user list. + CANNOT_EXCLUDE_SIMILAR_USER_LIST = 26; + + // Not allowed to target a closed user list. + CANNOT_ADD_CLOSED_USER_LIST = 27; + + // Not allowed to add display only UserLists to search only campaigns. + CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_ONLY_CAMPAIGNS = 28; + + // Not allowed to add display only UserLists to search plus campaigns. + CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_CAMPAIGNS = 29; + + // Not allowed to add display only UserLists to shopping campaigns. + CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SHOPPING_CAMPAIGNS = 30; + + // Not allowed to add User interests to search only campaigns. + CANNOT_ADD_USER_INTERESTS_TO_SEARCH_CAMPAIGNS = 31; + + // Not allowed to set bids for this criterion type in search campaigns + CANNOT_SET_BIDS_ON_CRITERION_TYPE_IN_SEARCH_CAMPAIGNS = 32; + + // Final URLs, URL Templates and CustomParameters cannot be set for the + // criterion types of Gender, AgeRange, UserList, Placement, MobileApp, and + // MobileAppCategory in search campaigns and shopping campaigns. + CANNOT_ADD_URLS_TO_CRITERION_TYPE_FOR_CAMPAIGN_TYPE = 33; + + // Invalid combined audience criterion. + INVALID_COMBINED_AUDIENCE = 122; + + // Invalid custom affinity criterion. + INVALID_CUSTOM_AFFINITY = 96; + + // Invalid custom intent criterion. + INVALID_CUSTOM_INTENT = 97; + + // Invalid custom audience criterion. + INVALID_CUSTOM_AUDIENCE = 121; + + // IP address is not valid. + INVALID_IP_ADDRESS = 34; + + // IP format is not valid. + INVALID_IP_FORMAT = 35; + + // Mobile application is not valid. + INVALID_MOBILE_APP = 36; + + // Mobile application category is not valid. + INVALID_MOBILE_APP_CATEGORY = 37; + + // The CriterionId does not exist or is of the incorrect type. + INVALID_CRITERION_ID = 38; + + // The Criterion is not allowed to be targeted. + CANNOT_TARGET_CRITERION = 39; + + // The criterion is not allowed to be targeted as it is deprecated. + CANNOT_TARGET_OBSOLETE_CRITERION = 40; + + // The CriterionId is not valid for the type. + CRITERION_ID_AND_TYPE_MISMATCH = 41; + + // Distance for the radius for the proximity criterion is invalid. + INVALID_PROXIMITY_RADIUS = 42; + + // Units for the distance for the radius for the proximity criterion is + // invalid. + INVALID_PROXIMITY_RADIUS_UNITS = 43; + + // Street address in the address is not valid. + INVALID_STREETADDRESS_LENGTH = 44; + + // City name in the address is not valid. + INVALID_CITYNAME_LENGTH = 45; + + // Region code in the address is not valid. + INVALID_REGIONCODE_LENGTH = 46; + + // Region name in the address is not valid. + INVALID_REGIONNAME_LENGTH = 47; + + // Postal code in the address is not valid. + INVALID_POSTALCODE_LENGTH = 48; + + // Country code in the address is not valid. + INVALID_COUNTRY_CODE = 49; + + // Latitude for the GeoPoint is not valid. + INVALID_LATITUDE = 50; + + // Longitude for the GeoPoint is not valid. + INVALID_LONGITUDE = 51; + + // The Proximity input is not valid. Both address and geoPoint cannot be + // null. + PROXIMITY_GEOPOINT_AND_ADDRESS_BOTH_CANNOT_BE_NULL = 52; + + // The Proximity address cannot be geocoded to a valid lat/long. + INVALID_PROXIMITY_ADDRESS = 53; + + // User domain name is not valid. + INVALID_USER_DOMAIN_NAME = 54; + + // Length of serialized criterion parameter exceeded size limit. + CRITERION_PARAMETER_TOO_LONG = 55; + + // Time interval in the AdSchedule overlaps with another AdSchedule. + AD_SCHEDULE_TIME_INTERVALS_OVERLAP = 56; + + // AdSchedule time interval cannot span multiple days. + AD_SCHEDULE_INTERVAL_CANNOT_SPAN_MULTIPLE_DAYS = 57; + + // AdSchedule time interval specified is invalid, endTime cannot be earlier + // than startTime. + AD_SCHEDULE_INVALID_TIME_INTERVAL = 58; + + // The number of AdSchedule entries in a day exceeds the limit. + AD_SCHEDULE_EXCEEDED_INTERVALS_PER_DAY_LIMIT = 59; + + // CriteriaId does not match the interval of the AdSchedule specified. + AD_SCHEDULE_CRITERION_ID_MISMATCHING_FIELDS = 60; + + // Cannot set bid modifier for this criterion type. + CANNOT_BID_MODIFY_CRITERION_TYPE = 61; + + // Cannot bid modify criterion, since it is opted out of the campaign. + CANNOT_BID_MODIFY_CRITERION_CAMPAIGN_OPTED_OUT = 62; + + // Cannot set bid modifier for a negative criterion. + CANNOT_BID_MODIFY_NEGATIVE_CRITERION = 63; + + // Bid Modifier already exists. Use SET operation to update. + BID_MODIFIER_ALREADY_EXISTS = 64; + + // Feed Id is not allowed in these Location Groups. + FEED_ID_NOT_ALLOWED = 65; + + // The account may not use the requested criteria type. For example, some + // accounts are restricted to keywords only. + ACCOUNT_INELIGIBLE_FOR_CRITERIA_TYPE = 66; + + // The requested criteria type cannot be used with campaign or ad group + // bidding strategy. + CRITERIA_TYPE_INVALID_FOR_BIDDING_STRATEGY = 67; + + // The Criterion is not allowed to be excluded. + CANNOT_EXCLUDE_CRITERION = 68; + + // The criterion is not allowed to be removed. For example, we cannot remove + // any of the device criterion. + CANNOT_REMOVE_CRITERION = 69; + + // Bidding categories do not form a valid path in the Shopping bidding + // category taxonomy. + INVALID_PRODUCT_BIDDING_CATEGORY = 76; + + // ShoppingSetting must be added to the campaign before ProductScope + // criteria can be added. + MISSING_SHOPPING_SETTING = 77; + + // Matching function is invalid. + INVALID_MATCHING_FUNCTION = 78; + + // Filter parameters not allowed for location groups targeting. + LOCATION_FILTER_NOT_ALLOWED = 79; + + // Feed not found, or the feed is not an enabled location feed. + INVALID_FEED_FOR_LOCATION_FILTER = 98; + + // Given location filter parameter is invalid for location groups targeting. + LOCATION_FILTER_INVALID = 80; + + // Cannot set geo target constants and feed item sets at the same time. + CANNOT_SET_GEO_TARGET_CONSTANTS_WITH_FEED_ITEM_SETS = 123; + + // The location group radius is in the range but not at the valid increment. + INVALID_LOCATION_GROUP_RADIUS = 124; + + // The location group radius unit is invalid. + INVALID_LOCATION_GROUP_RADIUS_UNIT = 125; + + // Criteria type cannot be associated with a campaign and its ad group(s) + // simultaneously. + CANNOT_ATTACH_CRITERIA_AT_CAMPAIGN_AND_ADGROUP = 81; + + // Range represented by hotel length of stay's min nights and max nights + // overlaps with an existing criterion. + HOTEL_LENGTH_OF_STAY_OVERLAPS_WITH_EXISTING_CRITERION = 82; + + // Range represented by hotel advance booking window's min days and max days + // overlaps with an existing criterion. + HOTEL_ADVANCE_BOOKING_WINDOW_OVERLAPS_WITH_EXISTING_CRITERION = 83; + + // The field is not allowed to be set when the negative field is set to + // true, e.g. we don't allow bids in negative ad group or campaign criteria. + FIELD_INCOMPATIBLE_WITH_NEGATIVE_TARGETING = 84; + + // The combination of operand and operator in webpage condition is invalid. + INVALID_WEBPAGE_CONDITION = 85; + + // The URL of webpage condition is invalid. + INVALID_WEBPAGE_CONDITION_URL = 86; + + // The URL of webpage condition cannot be empty or contain white space. + WEBPAGE_CONDITION_URL_CANNOT_BE_EMPTY = 87; + + // The URL of webpage condition contains an unsupported protocol. + WEBPAGE_CONDITION_URL_UNSUPPORTED_PROTOCOL = 88; + + // The URL of webpage condition cannot be an IP address. + WEBPAGE_CONDITION_URL_CANNOT_BE_IP_ADDRESS = 89; + + // The domain of the URL is not consistent with the domain in campaign + // setting. + WEBPAGE_CONDITION_URL_DOMAIN_NOT_CONSISTENT_WITH_CAMPAIGN_SETTING = 90; + + // The URL of webpage condition cannot be a public suffix itself. + WEBPAGE_CONDITION_URL_CANNOT_BE_PUBLIC_SUFFIX = 91; + + // The URL of webpage condition has an invalid public suffix. + WEBPAGE_CONDITION_URL_INVALID_PUBLIC_SUFFIX = 92; + + // Value track parameter is not supported in webpage condition URL. + WEBPAGE_CONDITION_URL_VALUE_TRACK_VALUE_NOT_SUPPORTED = 93; + + // Only one URL-EQUALS webpage condition is allowed in a webpage + // criterion and it cannot be combined with other conditions. + WEBPAGE_CRITERION_URL_EQUALS_CAN_HAVE_ONLY_ONE_CONDITION = 94; + + // A webpage criterion cannot be added to a non-DSA ad group. + WEBPAGE_CRITERION_NOT_SUPPORTED_ON_NON_DSA_AD_GROUP = 95; + + // Cannot add positive user list criteria in Smart Display campaigns. + CANNOT_TARGET_USER_LIST_FOR_SMART_DISPLAY_CAMPAIGNS = 99; + + // Cannot add positive placement criterion types in search campaigns. + CANNOT_TARGET_PLACEMENTS_FOR_SEARCH_CAMPAIGNS = 126; + + // Listing scope contains too many dimension types. + LISTING_SCOPE_TOO_MANY_DIMENSION_TYPES = 100; + + // Listing scope has too many IN operators. + LISTING_SCOPE_TOO_MANY_IN_OPERATORS = 101; + + // Listing scope contains IN operator on an unsupported dimension type. + LISTING_SCOPE_IN_OPERATOR_NOT_SUPPORTED = 102; + + // There are dimensions with duplicate dimension type. + DUPLICATE_LISTING_DIMENSION_TYPE = 103; + + // There are dimensions with duplicate dimension value. + DUPLICATE_LISTING_DIMENSION_VALUE = 104; + + // Listing group SUBDIVISION nodes cannot have bids. + CANNOT_SET_BIDS_ON_LISTING_GROUP_SUBDIVISION = 105; + + // Ad group is invalid due to the listing groups it contains. + INVALID_LISTING_GROUP_HIERARCHY = 106; + + // Listing group unit cannot have children. + LISTING_GROUP_UNIT_CANNOT_HAVE_CHILDREN = 107; + + // Subdivided listing groups must have an "others" case. + LISTING_GROUP_SUBDIVISION_REQUIRES_OTHERS_CASE = 108; + + // Dimension type of listing group must be the same as that of its siblings. + LISTING_GROUP_REQUIRES_SAME_DIMENSION_TYPE_AS_SIBLINGS = 109; + + // Listing group cannot be added to the ad group because it already exists. + LISTING_GROUP_ALREADY_EXISTS = 110; + + // Listing group referenced in the operation was not found in the ad group. + LISTING_GROUP_DOES_NOT_EXIST = 111; + + // Recursive removal failed because listing group subdivision is being + // created or modified in this request. + LISTING_GROUP_CANNOT_BE_REMOVED = 112; + + // Listing group type is not allowed for specified ad group criterion type. + INVALID_LISTING_GROUP_TYPE = 113; + + // Listing group in an ADD operation specifies a non temporary criterion id. + LISTING_GROUP_ADD_MAY_ONLY_USE_TEMP_ID = 114; + + // The combined length of dimension values of the Listing scope criterion + // is too long. + LISTING_SCOPE_TOO_LONG = 115; + + // Listing scope contains too many dimensions. + LISTING_SCOPE_TOO_MANY_DIMENSIONS = 116; + + // The combined length of dimension values of the Listing group criterion is + // too long. + LISTING_GROUP_TOO_LONG = 117; + + // Listing group tree is too deep. + LISTING_GROUP_TREE_TOO_DEEP = 118; + + // Listing dimension is invalid (e.g. dimension contains illegal value, + // dimension type is represented with wrong class, etc). Listing dimension + // value can not contain "==" or "&+". + INVALID_LISTING_DIMENSION = 119; + + // Listing dimension type is either invalid for campaigns of this type or + // cannot be used in the current context. BIDDING_CATEGORY_Lx and + // PRODUCT_TYPE_Lx dimensions must be used in ascending order of their + // levels: L1, L2, L3, L4, L5... The levels must be specified sequentially + // and start from L1. Furthermore, an "others" Listing group cannot be + // subdivided with a dimension of the same type but of a higher level + // ("others" BIDDING_CATEGORY_L3 can be subdivided with BRAND but not with + // BIDDING_CATEGORY_L4). + INVALID_LISTING_DIMENSION_TYPE = 120; + + // Customer is not on allowlist for composite audience in display campaigns. + ADVERTISER_NOT_ON_ALLOWLIST_FOR_COMBINED_AUDIENCE_ON_DISPLAY = 127; + + // Cannot target on a removed combined audience. + CANNOT_TARGET_REMOVED_COMBINED_AUDIENCE = 128; + + // Combined audience ID is invalid. + INVALID_COMBINED_AUDIENCE_ID = 129; + + // Can not target removed combined audience. + CANNOT_TARGET_REMOVED_CUSTOM_AUDIENCE = 130; + + // Range represented by hotel check-in date's start date and end date + // overlaps with an existing criterion. + HOTEL_CHECK_IN_DATE_RANGE_OVERLAPS_WITH_EXISTING_CRITERION = 131; + + // Start date is earlier than earliest allowed value of yesterday UTC. + HOTEL_CHECK_IN_DATE_RANGE_START_DATE_TOO_EARLY = 132; + + // End date later is than latest allowed day of 330 days in the future UTC. + HOTEL_CHECK_IN_DATE_RANGE_END_DATE_TOO_LATE = 133; + + // Start date is after end date. + HOTEL_CHECK_IN_DATE_RANGE_REVERSED = 134; + + // Broad match modifier (BMM) keywords can no longer be created. Please see + // https://ads-developers.googleblog.com/2021/06/broad-match-modifier-upcoming-changes.html. + BROAD_MATCH_MODIFIER_KEYWORD_NOT_ALLOWED = 135; + } + + +} diff --git a/google/ads/googleads/v8/errors/currency_code_error.proto b/google/ads/googleads/v8/errors/currency_code_error.proto new file mode 100644 index 000000000..06de55097 --- /dev/null +++ b/google/ads/googleads/v8/errors/currency_code_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CurrencyCodeErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing currency code errors. + +// Container for enum describing possible currency code errors. +message CurrencyCodeErrorEnum { + // Enum describing possible currency code errors. + enum CurrencyCodeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The currency code is not supported. + UNSUPPORTED = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/custom_audience_error.proto b/google/ads/googleads/v8/errors/custom_audience_error.proto new file mode 100644 index 000000000..03df8b6ce --- /dev/null +++ b/google/ads/googleads/v8/errors/custom_audience_error.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing custom audience errors. + +// Container for enum describing possible custom audience errors. +message CustomAudienceErrorEnum { + // Enum describing possible custom audience errors. + enum CustomAudienceError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // New name in the custom audience is duplicated ignoring cases. + NAME_ALREADY_USED = 2; + + // Cannot remove a custom audience while it's still being used as targeting. + CANNOT_REMOVE_WHILE_IN_USE = 3; + + // Cannot update or remove a custom audience that is already removed. + RESOURCE_ALREADY_REMOVED = 4; + + // The pair of [type, value] already exists in members. + MEMBER_TYPE_AND_PARAMETER_ALREADY_EXISTED = 5; + + // Member type is invalid. + INVALID_MEMBER_TYPE = 6; + + // Member type does not have associated value. + MEMBER_TYPE_AND_VALUE_DOES_NOT_MATCH = 7; + + // Custom audience contains a member that violates policy. + POLICY_VIOLATION = 8; + + // Change in custom audience type is not allowed. + INVALID_TYPE_CHANGE = 9; + } + + +} diff --git a/google/ads/googleads/v8/errors/custom_interest_error.proto b/google/ads/googleads/v8/errors/custom_interest_error.proto new file mode 100644 index 000000000..0a6211bc2 --- /dev/null +++ b/google/ads/googleads/v8/errors/custom_interest_error.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing custom interest errors. + +// Container for enum describing possible custom interest errors. +message CustomInterestErrorEnum { + // Enum describing possible custom interest errors. + enum CustomInterestError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Duplicate custom interest name ignoring case. + NAME_ALREADY_USED = 2; + + // In the remove custom interest member operation, both member ID and + // pair [type, parameter] are not present. + CUSTOM_INTEREST_MEMBER_ID_AND_TYPE_PARAMETER_NOT_PRESENT_IN_REMOVE = 3; + + // The pair of [type, parameter] does not exist. + TYPE_AND_PARAMETER_NOT_FOUND = 4; + + // The pair of [type, parameter] already exists. + TYPE_AND_PARAMETER_ALREADY_EXISTED = 5; + + // Unsupported custom interest member type. + INVALID_CUSTOM_INTEREST_MEMBER_TYPE = 6; + + // Cannot remove a custom interest while it's still being targeted. + CANNOT_REMOVE_WHILE_IN_USE = 7; + + // Cannot mutate custom interest type. + CANNOT_CHANGE_TYPE = 8; + } + + +} diff --git a/google/ads/googleads/v8/errors/customer_client_link_error.proto b/google/ads/googleads/v8/errors/customer_client_link_error.proto new file mode 100644 index 000000000..ee4691a6e --- /dev/null +++ b/google/ads/googleads/v8/errors/customer_client_link_error.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientLinkErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing CustomerClientLink errors. + +// Container for enum describing possible CustomeClientLink errors. +message CustomerClientLinkErrorEnum { + // Enum describing possible CustomerClientLink errors. + enum CustomerClientLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Trying to manage a client that already in being managed by customer. + CLIENT_ALREADY_INVITED_BY_THIS_MANAGER = 2; + + // Already managed by some other manager in the hierarchy. + CLIENT_ALREADY_MANAGED_IN_HIERARCHY = 3; + + // Attempt to create a cycle in the hierarchy. + CYCLIC_LINK_NOT_ALLOWED = 4; + + // Managed accounts has the maximum number of linked accounts. + CUSTOMER_HAS_TOO_MANY_ACCOUNTS = 5; + + // Invitor has the maximum pending invitations. + CLIENT_HAS_TOO_MANY_INVITATIONS = 6; + + // Attempt to change hidden status of a link that is not active. + CANNOT_HIDE_OR_UNHIDE_MANAGER_ACCOUNTS = 7; + + // Parent manager account has the maximum number of linked accounts. + CUSTOMER_HAS_TOO_MANY_ACCOUNTS_AT_MANAGER = 8; + + // Client has too many managers. + CLIENT_HAS_TOO_MANY_MANAGERS = 9; + } + + +} diff --git a/google/ads/googleads/v8/errors/customer_error.proto b/google/ads/googleads/v8/errors/customer_error.proto new file mode 100644 index 000000000..4dfe97f06 --- /dev/null +++ b/google/ads/googleads/v8/errors/customer_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomerErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Container for enum describing possible customer errors. +message CustomerErrorEnum { + // Set of errors that are related to requests dealing with Customer. + enum CustomerError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Customer status is not allowed to be changed from DRAFT and CLOSED. + // Currency code and at least one of country code and time zone needs to be + // set when status is changed to ENABLED. + STATUS_CHANGE_DISALLOWED = 2; + + // CustomerService cannot get a customer that has not been fully set up. + ACCOUNT_NOT_SET_UP = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/customer_feed_error.proto b/google/ads/googleads/v8/errors/customer_feed_error.proto new file mode 100644 index 000000000..af9bcedbf --- /dev/null +++ b/google/ads/googleads/v8/errors/customer_feed_error.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomerFeedErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing customer feed errors. + +// Container for enum describing possible customer feed errors. +message CustomerFeedErrorEnum { + // Enum describing possible customer feed errors. + enum CustomerFeedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // An active feed already exists for this customer and place holder type. + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; + + // The specified feed is removed. + CANNOT_CREATE_FOR_REMOVED_FEED = 3; + + // The CustomerFeed already exists. Update should be used to modify the + // existing CustomerFeed. + CANNOT_CREATE_ALREADY_EXISTING_CUSTOMER_FEED = 4; + + // Cannot update removed customer feed. + CANNOT_MODIFY_REMOVED_CUSTOMER_FEED = 5; + + // Invalid placeholder type. + INVALID_PLACEHOLDER_TYPE = 6; + + // Feed mapping for this placeholder type does not exist. + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7; + + // Placeholder not allowed at the account level. + PLACEHOLDER_TYPE_NOT_ALLOWED_ON_CUSTOMER_FEED = 8; + } + + +} diff --git a/google/ads/googleads/v8/errors/customer_manager_link_error.proto b/google/ads/googleads/v8/errors/customer_manager_link_error.proto new file mode 100644 index 000000000..c4d5916e3 --- /dev/null +++ b/google/ads/googleads/v8/errors/customer_manager_link_error.proto @@ -0,0 +1,75 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomerManagerLinkErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing CustomerManagerLink errors. + +// Container for enum describing possible CustomerManagerLink errors. +message CustomerManagerLinkErrorEnum { + // Enum describing possible CustomerManagerLink errors. + enum CustomerManagerLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // No pending invitation. + NO_PENDING_INVITE = 2; + + // Attempt to operate on the same client more than once in the same call. + SAME_CLIENT_MORE_THAN_ONCE_PER_CALL = 3; + + // Manager account has the maximum number of linked accounts. + MANAGER_HAS_MAX_NUMBER_OF_LINKED_ACCOUNTS = 4; + + // If no active user on account it cannot be unlinked from its manager. + CANNOT_UNLINK_ACCOUNT_WITHOUT_ACTIVE_USER = 5; + + // Account should have at least one active owner on it before being + // unlinked. + CANNOT_REMOVE_LAST_CLIENT_ACCOUNT_OWNER = 6; + + // Only account owners may change their permission role. + CANNOT_CHANGE_ROLE_BY_NON_ACCOUNT_OWNER = 7; + + // When a client's link to its manager is not active, the link role cannot + // be changed. + CANNOT_CHANGE_ROLE_FOR_NON_ACTIVE_LINK_ACCOUNT = 8; + + // Attempt to link a child to a parent that contains or will contain + // duplicate children. + DUPLICATE_CHILD_FOUND = 9; + + // The authorized customer is a test account. It can add no more than the + // allowed number of accounts + TEST_ACCOUNT_LINKS_TOO_MANY_CHILD_ACCOUNTS = 10; + } + + +} diff --git a/google/ads/googleads/v8/errors/customer_user_access_error.proto b/google/ads/googleads/v8/errors/customer_user_access_error.proto new file mode 100644 index 000000000..37ff305ce --- /dev/null +++ b/google/ads/googleads/v8/errors/customer_user_access_error.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomerUserAccessErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing CustomerUserAccess errors. + +// Container for enum describing possible CustomerUserAccess errors. +message CustomerUserAccessErrorEnum { + // Enum describing possible customer user access errors. + enum CustomerUserAccessError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // There is no user associated with the user id specified. + INVALID_USER_ID = 2; + + // Unable to remove the access between the user and customer. + REMOVAL_DISALLOWED = 3; + + // Unable to add or update the access role as specified. + DISALLOWED_ACCESS_ROLE = 4; + + // The user can't remove itself from an active serving customer if it's the + // last admin user and the customer doesn't have any owner manager + LAST_ADMIN_USER_OF_SERVING_CUSTOMER = 5; + + // Last admin user cannot be removed from a manager. + LAST_ADMIN_USER_OF_MANAGER = 6; + } + + +} diff --git a/google/ads/googleads/v8/errors/database_error.proto b/google/ads/googleads/v8/errors/database_error.proto new file mode 100644 index 000000000..6abad4eb6 --- /dev/null +++ b/google/ads/googleads/v8/errors/database_error.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "DatabaseErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing database errors. + +// Container for enum describing possible database errors. +message DatabaseErrorEnum { + // Enum describing possible database errors. + enum DatabaseError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Multiple requests were attempting to modify the same resource at once. + // Please retry the request. + CONCURRENT_MODIFICATION = 2; + + // The request conflicted with existing data. This error will usually be + // replaced with a more specific error if the request is retried. + DATA_CONSTRAINT_VIOLATION = 3; + + // The data written is too large. Please split the request into smaller + // requests. + REQUEST_TOO_LARGE = 4; + } + + +} diff --git a/google/ads/googleads/v8/errors/date_error.proto b/google/ads/googleads/v8/errors/date_error.proto new file mode 100644 index 000000000..a53c4971e --- /dev/null +++ b/google/ads/googleads/v8/errors/date_error.proto @@ -0,0 +1,74 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "DateErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing date errors. + +// Container for enum describing possible date errors. +message DateErrorEnum { + // Enum describing possible date errors. + enum DateError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Given field values do not correspond to a valid date. + INVALID_FIELD_VALUES_IN_DATE = 2; + + // Given field values do not correspond to a valid date time. + INVALID_FIELD_VALUES_IN_DATE_TIME = 3; + + // The string date's format should be yyyy-mm-dd. + INVALID_STRING_DATE = 4; + + // The string date time's format should be yyyy-mm-dd hh:mm:ss.ssssss. + INVALID_STRING_DATE_TIME_MICROS = 6; + + // The string date time's format should be yyyy-mm-dd hh:mm:ss. + INVALID_STRING_DATE_TIME_SECONDS = 11; + + // The string date time's format should be yyyy-mm-dd hh:mm:ss+|-hh:mm. + INVALID_STRING_DATE_TIME_SECONDS_WITH_OFFSET = 12; + + // Date is before allowed minimum. + EARLIER_THAN_MINIMUM_DATE = 7; + + // Date is after allowed maximum. + LATER_THAN_MAXIMUM_DATE = 8; + + // Date range bounds are not in order. + DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE = 9; + + // Both dates in range are null. + DATE_RANGE_MINIMUM_AND_MAXIMUM_DATES_BOTH_NULL = 10; + } + + +} diff --git a/google/ads/googleads/v8/errors/date_range_error.proto b/google/ads/googleads/v8/errors/date_range_error.proto new file mode 100644 index 000000000..58b677179 --- /dev/null +++ b/google/ads/googleads/v8/errors/date_range_error.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "DateRangeErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing date range errors. + +// Container for enum describing possible date range errors. +message DateRangeErrorEnum { + // Enum describing possible date range errors. + enum DateRangeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Invalid date. + INVALID_DATE = 2; + + // The start date was after the end date. + START_DATE_AFTER_END_DATE = 3; + + // Cannot set date to past time + CANNOT_SET_DATE_TO_PAST = 4; + + // A date was used that is past the system "last" date. + AFTER_MAXIMUM_ALLOWABLE_DATE = 5; + + // Trying to change start date on a resource that has started. + CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED = 6; + } + + +} diff --git a/google/ads/googleads/v8/errors/distinct_error.proto b/google/ads/googleads/v8/errors/distinct_error.proto new file mode 100644 index 000000000..0bec94d6f --- /dev/null +++ b/google/ads/googleads/v8/errors/distinct_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "DistinctErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing distinct errors. + +// Container for enum describing possible distinct errors. +message DistinctErrorEnum { + // Enum describing possible distinct errors. + enum DistinctError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Duplicate element. + DUPLICATE_ELEMENT = 2; + + // Duplicate type. + DUPLICATE_TYPE = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/enum_error.proto b/google/ads/googleads/v8/errors/enum_error.proto new file mode 100644 index 000000000..608443991 --- /dev/null +++ b/google/ads/googleads/v8/errors/enum_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "EnumErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing enum errors. + +// Container for enum describing possible enum errors. +message EnumErrorEnum { + // Enum describing possible enum errors. + enum EnumError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The enum value is not permitted. + ENUM_VALUE_NOT_PERMITTED = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/errors.proto b/google/ads/googleads/v8/errors/errors.proto new file mode 100644 index 000000000..08c1578a3 --- /dev/null +++ b/google/ads/googleads/v8/errors/errors.proto @@ -0,0 +1,664 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/ads/googleads/v8/common/policy.proto"; +import "google/ads/googleads/v8/common/value.proto"; +import "google/ads/googleads/v8/enums/resource_limit_type.proto"; +import "google/ads/googleads/v8/errors/access_invitation_error.proto"; +import "google/ads/googleads/v8/errors/account_budget_proposal_error.proto"; +import "google/ads/googleads/v8/errors/account_link_error.proto"; +import "google/ads/googleads/v8/errors/ad_customizer_error.proto"; +import "google/ads/googleads/v8/errors/ad_error.proto"; +import "google/ads/googleads/v8/errors/ad_group_ad_error.proto"; +import "google/ads/googleads/v8/errors/ad_group_bid_modifier_error.proto"; +import "google/ads/googleads/v8/errors/ad_group_criterion_error.proto"; +import "google/ads/googleads/v8/errors/ad_group_error.proto"; +import "google/ads/googleads/v8/errors/ad_group_feed_error.proto"; +import "google/ads/googleads/v8/errors/ad_parameter_error.proto"; +import "google/ads/googleads/v8/errors/ad_sharing_error.proto"; +import "google/ads/googleads/v8/errors/adx_error.proto"; +import "google/ads/googleads/v8/errors/asset_error.proto"; +import "google/ads/googleads/v8/errors/asset_link_error.proto"; +import "google/ads/googleads/v8/errors/authentication_error.proto"; +import "google/ads/googleads/v8/errors/authorization_error.proto"; +import "google/ads/googleads/v8/errors/batch_job_error.proto"; +import "google/ads/googleads/v8/errors/bidding_error.proto"; +import "google/ads/googleads/v8/errors/bidding_strategy_error.proto"; +import "google/ads/googleads/v8/errors/billing_setup_error.proto"; +import "google/ads/googleads/v8/errors/campaign_budget_error.proto"; +import "google/ads/googleads/v8/errors/campaign_criterion_error.proto"; +import "google/ads/googleads/v8/errors/campaign_draft_error.proto"; +import "google/ads/googleads/v8/errors/campaign_error.proto"; +import "google/ads/googleads/v8/errors/campaign_experiment_error.proto"; +import "google/ads/googleads/v8/errors/campaign_feed_error.proto"; +import "google/ads/googleads/v8/errors/campaign_shared_set_error.proto"; +import "google/ads/googleads/v8/errors/change_event_error.proto"; +import "google/ads/googleads/v8/errors/change_status_error.proto"; +import "google/ads/googleads/v8/errors/collection_size_error.proto"; +import "google/ads/googleads/v8/errors/context_error.proto"; +import "google/ads/googleads/v8/errors/conversion_action_error.proto"; +import "google/ads/googleads/v8/errors/conversion_adjustment_upload_error.proto"; +import "google/ads/googleads/v8/errors/conversion_custom_variable_error.proto"; +import "google/ads/googleads/v8/errors/conversion_upload_error.proto"; +import "google/ads/googleads/v8/errors/conversion_value_rule_error.proto"; +import "google/ads/googleads/v8/errors/conversion_value_rule_set_error.proto"; +import "google/ads/googleads/v8/errors/country_code_error.proto"; +import "google/ads/googleads/v8/errors/criterion_error.proto"; +import "google/ads/googleads/v8/errors/currency_code_error.proto"; +import "google/ads/googleads/v8/errors/custom_audience_error.proto"; +import "google/ads/googleads/v8/errors/custom_interest_error.proto"; +import "google/ads/googleads/v8/errors/customer_client_link_error.proto"; +import "google/ads/googleads/v8/errors/customer_error.proto"; +import "google/ads/googleads/v8/errors/customer_feed_error.proto"; +import "google/ads/googleads/v8/errors/customer_manager_link_error.proto"; +import "google/ads/googleads/v8/errors/customer_user_access_error.proto"; +import "google/ads/googleads/v8/errors/database_error.proto"; +import "google/ads/googleads/v8/errors/date_error.proto"; +import "google/ads/googleads/v8/errors/date_range_error.proto"; +import "google/ads/googleads/v8/errors/distinct_error.proto"; +import "google/ads/googleads/v8/errors/enum_error.proto"; +import "google/ads/googleads/v8/errors/extension_feed_item_error.proto"; +import "google/ads/googleads/v8/errors/extension_setting_error.proto"; +import "google/ads/googleads/v8/errors/feed_attribute_reference_error.proto"; +import "google/ads/googleads/v8/errors/feed_error.proto"; +import "google/ads/googleads/v8/errors/feed_item_error.proto"; +import "google/ads/googleads/v8/errors/feed_item_set_error.proto"; +import "google/ads/googleads/v8/errors/feed_item_set_link_error.proto"; +import "google/ads/googleads/v8/errors/feed_item_target_error.proto"; +import "google/ads/googleads/v8/errors/feed_item_validation_error.proto"; +import "google/ads/googleads/v8/errors/feed_mapping_error.proto"; +import "google/ads/googleads/v8/errors/field_error.proto"; +import "google/ads/googleads/v8/errors/field_mask_error.proto"; +import "google/ads/googleads/v8/errors/function_error.proto"; +import "google/ads/googleads/v8/errors/function_parsing_error.proto"; +import "google/ads/googleads/v8/errors/geo_target_constant_suggestion_error.proto"; +import "google/ads/googleads/v8/errors/header_error.proto"; +import "google/ads/googleads/v8/errors/id_error.proto"; +import "google/ads/googleads/v8/errors/image_error.proto"; +import "google/ads/googleads/v8/errors/internal_error.proto"; +import "google/ads/googleads/v8/errors/invoice_error.proto"; +import "google/ads/googleads/v8/errors/keyword_plan_ad_group_error.proto"; +import "google/ads/googleads/v8/errors/keyword_plan_ad_group_keyword_error.proto"; +import "google/ads/googleads/v8/errors/keyword_plan_campaign_error.proto"; +import "google/ads/googleads/v8/errors/keyword_plan_campaign_keyword_error.proto"; +import "google/ads/googleads/v8/errors/keyword_plan_error.proto"; +import "google/ads/googleads/v8/errors/keyword_plan_idea_error.proto"; +import "google/ads/googleads/v8/errors/label_error.proto"; +import "google/ads/googleads/v8/errors/language_code_error.proto"; +import "google/ads/googleads/v8/errors/list_operation_error.proto"; +import "google/ads/googleads/v8/errors/manager_link_error.proto"; +import "google/ads/googleads/v8/errors/media_bundle_error.proto"; +import "google/ads/googleads/v8/errors/media_file_error.proto"; +import "google/ads/googleads/v8/errors/media_upload_error.proto"; +import "google/ads/googleads/v8/errors/multiplier_error.proto"; +import "google/ads/googleads/v8/errors/mutate_error.proto"; +import "google/ads/googleads/v8/errors/new_resource_creation_error.proto"; +import "google/ads/googleads/v8/errors/not_allowlisted_error.proto"; +import "google/ads/googleads/v8/errors/not_empty_error.proto"; +import "google/ads/googleads/v8/errors/null_error.proto"; +import "google/ads/googleads/v8/errors/offline_user_data_job_error.proto"; +import "google/ads/googleads/v8/errors/operation_access_denied_error.proto"; +import "google/ads/googleads/v8/errors/operator_error.proto"; +import "google/ads/googleads/v8/errors/partial_failure_error.proto"; +import "google/ads/googleads/v8/errors/payments_account_error.proto"; +import "google/ads/googleads/v8/errors/policy_finding_error.proto"; +import "google/ads/googleads/v8/errors/policy_validation_parameter_error.proto"; +import "google/ads/googleads/v8/errors/policy_violation_error.proto"; +import "google/ads/googleads/v8/errors/query_error.proto"; +import "google/ads/googleads/v8/errors/quota_error.proto"; +import "google/ads/googleads/v8/errors/range_error.proto"; +import "google/ads/googleads/v8/errors/reach_plan_error.proto"; +import "google/ads/googleads/v8/errors/recommendation_error.proto"; +import "google/ads/googleads/v8/errors/region_code_error.proto"; +import "google/ads/googleads/v8/errors/request_error.proto"; +import "google/ads/googleads/v8/errors/resource_access_denied_error.proto"; +import "google/ads/googleads/v8/errors/resource_count_limit_exceeded_error.proto"; +import "google/ads/googleads/v8/errors/setting_error.proto"; +import "google/ads/googleads/v8/errors/shared_criterion_error.proto"; +import "google/ads/googleads/v8/errors/shared_set_error.proto"; +import "google/ads/googleads/v8/errors/size_limit_error.proto"; +import "google/ads/googleads/v8/errors/string_format_error.proto"; +import "google/ads/googleads/v8/errors/string_length_error.proto"; +import "google/ads/googleads/v8/errors/third_party_app_analytics_link_error.proto"; +import "google/ads/googleads/v8/errors/time_zone_error.proto"; +import "google/ads/googleads/v8/errors/url_field_error.proto"; +import "google/ads/googleads/v8/errors/user_data_error.proto"; +import "google/ads/googleads/v8/errors/user_list_error.proto"; +import "google/ads/googleads/v8/errors/youtube_video_registration_error.proto"; +import "google/protobuf/duration.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ErrorsProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing the common error protos + +// Describes how a GoogleAds API call failed. It's returned inside +// google.rpc.Status.details when a call fails. +message GoogleAdsFailure { + // The list of errors that occurred. + repeated GoogleAdsError errors = 1; + + // The unique ID of the request that is used for debugging purposes. + string request_id = 2; +} + +// GoogleAds-specific error. +message GoogleAdsError { + // An enum value that indicates which error occurred. + ErrorCode error_code = 1; + + // A human-readable description of the error. + string message = 2; + + // The value that triggered the error. + google.ads.googleads.v8.common.Value trigger = 3; + + // Describes the part of the request proto that caused the error. + ErrorLocation location = 4; + + // Additional error details, which are returned by certain error codes. Most + // error codes do not include details. + ErrorDetails details = 5; +} + +// The error reason represented by type and enum. +message ErrorCode { + // The list of error enums + oneof error_code { + // An error caused by the request + RequestErrorEnum.RequestError request_error = 1; + + // An error with a Bidding Strategy mutate. + BiddingStrategyErrorEnum.BiddingStrategyError bidding_strategy_error = 2; + + // An error with a URL field mutate. + UrlFieldErrorEnum.UrlFieldError url_field_error = 3; + + // An error with a list operation. + ListOperationErrorEnum.ListOperationError list_operation_error = 4; + + // An error with an AWQL query + QueryErrorEnum.QueryError query_error = 5; + + // An error with a mutate + MutateErrorEnum.MutateError mutate_error = 7; + + // An error with a field mask + FieldMaskErrorEnum.FieldMaskError field_mask_error = 8; + + // An error encountered when trying to authorize a user. + AuthorizationErrorEnum.AuthorizationError authorization_error = 9; + + // An unexpected server-side error. + InternalErrorEnum.InternalError internal_error = 10; + + // An error with the amonut of quota remaining. + QuotaErrorEnum.QuotaError quota_error = 11; + + // An error with an Ad Group Ad mutate. + AdErrorEnum.AdError ad_error = 12; + + // An error with an Ad Group mutate. + AdGroupErrorEnum.AdGroupError ad_group_error = 13; + + // An error with a Campaign Budget mutate. + CampaignBudgetErrorEnum.CampaignBudgetError campaign_budget_error = 14; + + // An error with a Campaign mutate. + CampaignErrorEnum.CampaignError campaign_error = 15; + + // Indicates failure to properly authenticate user. + AuthenticationErrorEnum.AuthenticationError authentication_error = 17; + + // Indicates failure to properly authenticate user. + AdGroupCriterionErrorEnum.AdGroupCriterionError ad_group_criterion_error = 18; + + // The reasons for the ad customizer error + AdCustomizerErrorEnum.AdCustomizerError ad_customizer_error = 19; + + // The reasons for the ad group ad error + AdGroupAdErrorEnum.AdGroupAdError ad_group_ad_error = 21; + + // The reasons for the ad sharing error + AdSharingErrorEnum.AdSharingError ad_sharing_error = 24; + + // The reasons for the adx error + AdxErrorEnum.AdxError adx_error = 25; + + // The reasons for the asset error + AssetErrorEnum.AssetError asset_error = 107; + + // The reasons for the bidding errors + BiddingErrorEnum.BiddingError bidding_error = 26; + + // The reasons for the campaign criterion error + CampaignCriterionErrorEnum.CampaignCriterionError campaign_criterion_error = 29; + + // The reasons for the collection size error + CollectionSizeErrorEnum.CollectionSizeError collection_size_error = 31; + + // The reasons for the country code error + CountryCodeErrorEnum.CountryCodeError country_code_error = 109; + + // The reasons for the criterion error + CriterionErrorEnum.CriterionError criterion_error = 32; + + // The reasons for the customer error + CustomerErrorEnum.CustomerError customer_error = 90; + + // The reasons for the date error + DateErrorEnum.DateError date_error = 33; + + // The reasons for the date range error + DateRangeErrorEnum.DateRangeError date_range_error = 34; + + // The reasons for the distinct error + DistinctErrorEnum.DistinctError distinct_error = 35; + + // The reasons for the feed attribute reference error + FeedAttributeReferenceErrorEnum.FeedAttributeReferenceError feed_attribute_reference_error = 36; + + // The reasons for the function error + FunctionErrorEnum.FunctionError function_error = 37; + + // The reasons for the function parsing error + FunctionParsingErrorEnum.FunctionParsingError function_parsing_error = 38; + + // The reasons for the id error + IdErrorEnum.IdError id_error = 39; + + // The reasons for the image error + ImageErrorEnum.ImageError image_error = 40; + + // The reasons for the language code error + LanguageCodeErrorEnum.LanguageCodeError language_code_error = 110; + + // The reasons for the media bundle error + MediaBundleErrorEnum.MediaBundleError media_bundle_error = 42; + + // The reasons for media uploading errors. + MediaUploadErrorEnum.MediaUploadError media_upload_error = 116; + + // The reasons for the media file error + MediaFileErrorEnum.MediaFileError media_file_error = 86; + + // The reasons for the multiplier error + MultiplierErrorEnum.MultiplierError multiplier_error = 44; + + // The reasons for the new resource creation error + NewResourceCreationErrorEnum.NewResourceCreationError new_resource_creation_error = 45; + + // The reasons for the not empty error + NotEmptyErrorEnum.NotEmptyError not_empty_error = 46; + + // The reasons for the null error + NullErrorEnum.NullError null_error = 47; + + // The reasons for the operator error + OperatorErrorEnum.OperatorError operator_error = 48; + + // The reasons for the range error + RangeErrorEnum.RangeError range_error = 49; + + // The reasons for error in applying a recommendation + RecommendationErrorEnum.RecommendationError recommendation_error = 58; + + // The reasons for the region code error + RegionCodeErrorEnum.RegionCodeError region_code_error = 51; + + // The reasons for the setting error + SettingErrorEnum.SettingError setting_error = 52; + + // The reasons for the string format error + StringFormatErrorEnum.StringFormatError string_format_error = 53; + + // The reasons for the string length error + StringLengthErrorEnum.StringLengthError string_length_error = 54; + + // The reasons for the operation access denied error + OperationAccessDeniedErrorEnum.OperationAccessDeniedError operation_access_denied_error = 55; + + // The reasons for the resource access denied error + ResourceAccessDeniedErrorEnum.ResourceAccessDeniedError resource_access_denied_error = 56; + + // The reasons for the resource count limit exceeded error + ResourceCountLimitExceededErrorEnum.ResourceCountLimitExceededError resource_count_limit_exceeded_error = 57; + + // The reasons for YouTube video registration errors. + YoutubeVideoRegistrationErrorEnum.YoutubeVideoRegistrationError youtube_video_registration_error = 117; + + // The reasons for the ad group bid modifier error + AdGroupBidModifierErrorEnum.AdGroupBidModifierError ad_group_bid_modifier_error = 59; + + // The reasons for the context error + ContextErrorEnum.ContextError context_error = 60; + + // The reasons for the field error + FieldErrorEnum.FieldError field_error = 61; + + // The reasons for the shared set error + SharedSetErrorEnum.SharedSetError shared_set_error = 62; + + // The reasons for the shared criterion error + SharedCriterionErrorEnum.SharedCriterionError shared_criterion_error = 63; + + // The reasons for the campaign shared set error + CampaignSharedSetErrorEnum.CampaignSharedSetError campaign_shared_set_error = 64; + + // The reasons for the conversion action error + ConversionActionErrorEnum.ConversionActionError conversion_action_error = 65; + + // The reasons for the conversion adjustment upload error + ConversionAdjustmentUploadErrorEnum.ConversionAdjustmentUploadError conversion_adjustment_upload_error = 115; + + // The reasons for the conversion custom variable error + ConversionCustomVariableErrorEnum.ConversionCustomVariableError conversion_custom_variable_error = 143; + + // The reasons for the conversion upload error + ConversionUploadErrorEnum.ConversionUploadError conversion_upload_error = 111; + + // The reasons for the conversion value rule error + ConversionValueRuleErrorEnum.ConversionValueRuleError conversion_value_rule_error = 145; + + // The reasons for the conversion value rule set error + ConversionValueRuleSetErrorEnum.ConversionValueRuleSetError conversion_value_rule_set_error = 146; + + // The reasons for the header error. + HeaderErrorEnum.HeaderError header_error = 66; + + // The reasons for the database error. + DatabaseErrorEnum.DatabaseError database_error = 67; + + // The reasons for the policy finding error. + PolicyFindingErrorEnum.PolicyFindingError policy_finding_error = 68; + + // The reason for enum error. + EnumErrorEnum.EnumError enum_error = 70; + + // The reason for keyword plan error. + KeywordPlanErrorEnum.KeywordPlanError keyword_plan_error = 71; + + // The reason for keyword plan campaign error. + KeywordPlanCampaignErrorEnum.KeywordPlanCampaignError keyword_plan_campaign_error = 72; + + // The reason for keyword plan campaign keyword error. + KeywordPlanCampaignKeywordErrorEnum.KeywordPlanCampaignKeywordError keyword_plan_campaign_keyword_error = 132; + + // The reason for keyword plan ad group error. + KeywordPlanAdGroupErrorEnum.KeywordPlanAdGroupError keyword_plan_ad_group_error = 74; + + // The reason for keyword plan ad group keyword error. + KeywordPlanAdGroupKeywordErrorEnum.KeywordPlanAdGroupKeywordError keyword_plan_ad_group_keyword_error = 133; + + // The reason for keyword idea error. + KeywordPlanIdeaErrorEnum.KeywordPlanIdeaError keyword_plan_idea_error = 76; + + // The reasons for account budget proposal errors. + AccountBudgetProposalErrorEnum.AccountBudgetProposalError account_budget_proposal_error = 77; + + // The reasons for the user list error + UserListErrorEnum.UserListError user_list_error = 78; + + // The reasons for the change event error + ChangeEventErrorEnum.ChangeEventError change_event_error = 136; + + // The reasons for the change status error + ChangeStatusErrorEnum.ChangeStatusError change_status_error = 79; + + // The reasons for the feed error + FeedErrorEnum.FeedError feed_error = 80; + + // The reasons for the geo target constant suggestion error. + GeoTargetConstantSuggestionErrorEnum.GeoTargetConstantSuggestionError geo_target_constant_suggestion_error = 81; + + // The reasons for the campaign draft error + CampaignDraftErrorEnum.CampaignDraftError campaign_draft_error = 82; + + // The reasons for the feed item error + FeedItemErrorEnum.FeedItemError feed_item_error = 83; + + // The reason for the label error. + LabelErrorEnum.LabelError label_error = 84; + + // The reasons for the billing setup error + BillingSetupErrorEnum.BillingSetupError billing_setup_error = 87; + + // The reasons for the customer client link error + CustomerClientLinkErrorEnum.CustomerClientLinkError customer_client_link_error = 88; + + // The reasons for the customer manager link error + CustomerManagerLinkErrorEnum.CustomerManagerLinkError customer_manager_link_error = 91; + + // The reasons for the feed mapping error + FeedMappingErrorEnum.FeedMappingError feed_mapping_error = 92; + + // The reasons for the customer feed error + CustomerFeedErrorEnum.CustomerFeedError customer_feed_error = 93; + + // The reasons for the ad group feed error + AdGroupFeedErrorEnum.AdGroupFeedError ad_group_feed_error = 94; + + // The reasons for the campaign feed error + CampaignFeedErrorEnum.CampaignFeedError campaign_feed_error = 96; + + // The reasons for the custom interest error + CustomInterestErrorEnum.CustomInterestError custom_interest_error = 97; + + // The reasons for the campaign experiment error + CampaignExperimentErrorEnum.CampaignExperimentError campaign_experiment_error = 98; + + // The reasons for the extension feed item error + ExtensionFeedItemErrorEnum.ExtensionFeedItemError extension_feed_item_error = 100; + + // The reasons for the ad parameter error + AdParameterErrorEnum.AdParameterError ad_parameter_error = 101; + + // The reasons for the feed item validation error + FeedItemValidationErrorEnum.FeedItemValidationError feed_item_validation_error = 102; + + // The reasons for the extension setting error + ExtensionSettingErrorEnum.ExtensionSettingError extension_setting_error = 103; + + // The reasons for the feed item set error + FeedItemSetErrorEnum.FeedItemSetError feed_item_set_error = 140; + + // The reasons for the feed item set link error + FeedItemSetLinkErrorEnum.FeedItemSetLinkError feed_item_set_link_error = 141; + + // The reasons for the feed item target error + FeedItemTargetErrorEnum.FeedItemTargetError feed_item_target_error = 104; + + // The reasons for the policy violation error + PolicyViolationErrorEnum.PolicyViolationError policy_violation_error = 105; + + // The reasons for the mutate job error + PartialFailureErrorEnum.PartialFailureError partial_failure_error = 112; + + // The reasons for the policy validation parameter error + PolicyValidationParameterErrorEnum.PolicyValidationParameterError policy_validation_parameter_error = 114; + + // The reasons for the size limit error + SizeLimitErrorEnum.SizeLimitError size_limit_error = 118; + + // The reasons for the offline user data job error. + OfflineUserDataJobErrorEnum.OfflineUserDataJobError offline_user_data_job_error = 119; + + // The reasons for the not allowlisted error + NotAllowlistedErrorEnum.NotAllowlistedError not_allowlisted_error = 137; + + // The reasons for the manager link error + ManagerLinkErrorEnum.ManagerLinkError manager_link_error = 121; + + // The reasons for the currency code error + CurrencyCodeErrorEnum.CurrencyCodeError currency_code_error = 122; + + // The reasons for the access invitation error + AccessInvitationErrorEnum.AccessInvitationError access_invitation_error = 124; + + // The reasons for the reach plan error + ReachPlanErrorEnum.ReachPlanError reach_plan_error = 125; + + // The reasons for the invoice error + InvoiceErrorEnum.InvoiceError invoice_error = 126; + + // The reasons for errors in payments accounts service + PaymentsAccountErrorEnum.PaymentsAccountError payments_account_error = 127; + + // The reasons for the time zone error + TimeZoneErrorEnum.TimeZoneError time_zone_error = 128; + + // The reasons for the asset link error + AssetLinkErrorEnum.AssetLinkError asset_link_error = 129; + + // The reasons for the user data error. + UserDataErrorEnum.UserDataError user_data_error = 130; + + // The reasons for the batch job error + BatchJobErrorEnum.BatchJobError batch_job_error = 131; + + // The reasons for the account link status change error + AccountLinkErrorEnum.AccountLinkError account_link_error = 134; + + // The reasons for the third party app analytics link mutate error + ThirdPartyAppAnalyticsLinkErrorEnum.ThirdPartyAppAnalyticsLinkError third_party_app_analytics_link_error = 135; + + // The reasons for the customer user access mutate error + CustomerUserAccessErrorEnum.CustomerUserAccessError customer_user_access_error = 138; + + // The reasons for the custom audience error + CustomAudienceErrorEnum.CustomAudienceError custom_audience_error = 139; + } +} + +// Describes the part of the request proto that caused the error. +message ErrorLocation { + // A part of a field path. + message FieldPathElement { + // The name of a field or a oneof + string field_name = 1; + + // If field_name is a repeated field, this is the element that failed + optional int32 index = 3; + } + + // A field path that indicates which field was invalid in the request. + repeated FieldPathElement field_path_elements = 2; +} + +// Additional error details. +message ErrorDetails { + // The error code that should have been returned, but wasn't. This is used + // when the error code is not published in the client specified version. + string unpublished_error_code = 1; + + // Describes an ad policy violation. + PolicyViolationDetails policy_violation_details = 2; + + // Describes policy violation findings. + PolicyFindingDetails policy_finding_details = 3; + + // Details on the quota error, including the scope (account or developer), the + // rate bucket name and the retry delay. + QuotaErrorDetails quota_error_details = 4; + + // Details for a resource count limit exceeded error. + ResourceCountDetails resource_count_details = 5; +} + +// Error returned as part of a mutate response. +// This error indicates single policy violation by some text +// in one of the fields. +message PolicyViolationDetails { + // Human readable description of policy violation. + string external_policy_description = 2; + + // Unique identifier for this violation. + // If policy is exemptible, this key may be used to request exemption. + google.ads.googleads.v8.common.PolicyViolationKey key = 4; + + // Human readable name of the policy. + string external_policy_name = 5; + + // Whether user can file an exemption request for this violation. + bool is_exemptible = 6; +} + +// Error returned as part of a mutate response. +// This error indicates one or more policy findings in the fields of a +// resource. +message PolicyFindingDetails { + // The list of policy topics for the resource. Contains the PROHIBITED or + // FULLY_LIMITED policy topic entries that prevented the resource from being + // saved (among any other entries the resource may also have). + repeated google.ads.googleads.v8.common.PolicyTopicEntry policy_topic_entries = 1; +} + +// Additional quota error details when there is QuotaError. +message QuotaErrorDetails { + // Enum of possible scopes that quota buckets belong to. + enum QuotaRateScope { + // Unspecified enum + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Per customer account quota + ACCOUNT = 2; + + // Per project or DevToken quota + DEVELOPER = 3; + } + + // The rate scope of the quota limit. + QuotaRateScope rate_scope = 1; + + // The high level description of the quota bucket. + // Examples are "Get requests for standard access" or "Requests per account". + string rate_name = 2; + + // Backoff period that customers should wait before sending next request. + google.protobuf.Duration retry_delay = 3; +} + +// Error details returned when an resource count limit was exceeded. +message ResourceCountDetails { + // The ID of the resource whose limit was exceeded. + // External customer ID if the limit is for a customer. + string enclosing_id = 1; + + // The name of the resource (Customer, Campaign etc.) whose limit was + // exceeded. + string enclosing_resource = 5; + + // The limit which was exceeded. + int32 limit = 2; + + // The resource limit type which was exceeded. + google.ads.googleads.v8.enums.ResourceLimitTypeEnum.ResourceLimitType limit_type = 3; + + // The count of existing entities. + int32 existing_count = 4; +} diff --git a/google/ads/googleads/v8/errors/extension_feed_item_error.proto b/google/ads/googleads/v8/errors/extension_feed_item_error.proto new file mode 100644 index 000000000..c205b95ca --- /dev/null +++ b/google/ads/googleads/v8/errors/extension_feed_item_error.proto @@ -0,0 +1,195 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionFeedItemErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing extension feed item errors. + +// Container for enum describing possible extension feed item error. +message ExtensionFeedItemErrorEnum { + // Enum describing possible extension feed item errors. + enum ExtensionFeedItemError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Value is not within the accepted range. + VALUE_OUT_OF_RANGE = 2; + + // Url list is too long. + URL_LIST_TOO_LONG = 3; + + // Cannot have a geo targeting restriction without having geo targeting. + CANNOT_HAVE_RESTRICTION_ON_EMPTY_GEO_TARGETING = 4; + + // Cannot simultaneously set sitelink field with final urls. + CANNOT_SET_WITH_FINAL_URLS = 5; + + // Must set field with final urls. + CANNOT_SET_WITHOUT_FINAL_URLS = 6; + + // Phone number for a call extension is invalid. + INVALID_PHONE_NUMBER = 7; + + // Phone number for a call extension is not supported for the given country + // code. + PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 8; + + // A carrier specific number in short format is not allowed for call + // extensions. + CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 9; + + // Premium rate numbers are not allowed for call extensions. + PREMIUM_RATE_NUMBER_NOT_ALLOWED = 10; + + // Phone number type for a call extension is not allowed. + // For example, personal number is not allowed for a call extension in + // most regions. + DISALLOWED_NUMBER_TYPE = 11; + + // Phone number for a call extension does not meet domestic format + // requirements. + INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 12; + + // Vanity phone numbers (i.e. those including letters) are not allowed for + // call extensions. + VANITY_PHONE_NUMBER_NOT_ALLOWED = 13; + + // Call conversion action provided for a call extension is invalid. + INVALID_CALL_CONVERSION_ACTION = 14; + + // For a call extension, the customer is not on the allow-list for call + // tracking. + CUSTOMER_NOT_ON_ALLOWLIST_FOR_CALLTRACKING = 47; + + // Call tracking is not supported for the given country for a call + // extension. + CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 16; + + // Customer hasn't consented for call recording, which is required for + // creating/updating call feed items. Please see + // https://support.google.com/google-ads/answer/7412639. + CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 17; + + // App id provided for an app extension is invalid. + INVALID_APP_ID = 18; + + // Quotation marks present in the review text for a review extension. + QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 19; + + // Hyphen character present in the review text for a review extension. + HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 20; + + // A denylisted review source name or url was provided for a review + // extension. + REVIEW_EXTENSION_SOURCE_INELIGIBLE = 21; + + // Review source name should not be found in the review text. + SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 22; + + // Inconsistent currency codes. + INCONSISTENT_CURRENCY_CODES = 23; + + // Price extension cannot have duplicated headers. + PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 24; + + // Price item cannot have duplicated header and description. + PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 25; + + // Price extension has too few items. + PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 26; + + // Price extension has too many items. + PRICE_EXTENSION_HAS_TOO_MANY_ITEMS = 27; + + // The input value is not currently supported. + UNSUPPORTED_VALUE = 28; + + // The input value is not currently supported in the selected language of an + // extension. + UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE = 29; + + // Unknown or unsupported device preference. + INVALID_DEVICE_PREFERENCE = 30; + + // Invalid feed item schedule end time (i.e., endHour = 24 and endMinute != + // 0). + INVALID_SCHEDULE_END = 31; + + // Date time zone does not match the account's time zone. + DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 32; + + // Invalid structured snippet header. + INVALID_SNIPPETS_HEADER = 33; + + // Cannot operate on removed feed item. + CANNOT_OPERATE_ON_REMOVED_FEED_ITEM = 34; + + // Phone number not supported when call tracking enabled for country. + PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 35; + + // Cannot set call_conversion_action while call_conversion_tracking_enabled + // is set to true. + CONFLICTING_CALL_CONVERSION_SETTINGS = 36; + + // The type of the input extension feed item doesn't match the existing + // extension feed item. + EXTENSION_TYPE_MISMATCH = 37; + + // The oneof field extension i.e. subtype of extension feed item is + // required. + EXTENSION_SUBTYPE_REQUIRED = 38; + + // The referenced feed item is not mapped to a supported extension type. + EXTENSION_TYPE_UNSUPPORTED = 39; + + // Cannot operate on a Feed with more than one active FeedMapping. + CANNOT_OPERATE_ON_FEED_WITH_MULTIPLE_MAPPINGS = 40; + + // Cannot operate on a Feed that has key attributes. + CANNOT_OPERATE_ON_FEED_WITH_KEY_ATTRIBUTES = 41; + + // Input price is not in a valid format. + INVALID_PRICE_FORMAT = 42; + + // The promotion time is invalid. + PROMOTION_INVALID_TIME = 43; + + // This field has too many decimal places specified. + TOO_MANY_DECIMAL_PLACES_SPECIFIED = 44; + + // Concrete sub type of ExtensionFeedItem is required for this operation. + CONCRETE_EXTENSION_TYPE_REQUIRED = 45; + + // Feed item schedule end time must be after start time. + SCHEDULE_END_NOT_AFTER_START = 46; + } + + +} diff --git a/google/ads/googleads/v8/errors/extension_setting_error.proto b/google/ads/googleads/v8/errors/extension_setting_error.proto new file mode 100644 index 000000000..3afb52ed1 --- /dev/null +++ b/google/ads/googleads/v8/errors/extension_setting_error.proto @@ -0,0 +1,261 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionSettingErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing extension setting validation errors. + +// Container for enum describing validation errors of extension settings. +message ExtensionSettingErrorEnum { + // Enum describing possible extension setting errors. + enum ExtensionSettingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A platform restriction was provided without input extensions or existing + // extensions. + EXTENSIONS_REQUIRED = 2; + + // The provided feed type does not correspond to the provided extensions. + FEED_TYPE_EXTENSION_TYPE_MISMATCH = 3; + + // The provided feed type cannot be used. + INVALID_FEED_TYPE = 4; + + // The provided feed type cannot be used at the customer level. + INVALID_FEED_TYPE_FOR_CUSTOMER_EXTENSION_SETTING = 5; + + // Cannot change a feed item field on a CREATE operation. + CANNOT_CHANGE_FEED_ITEM_ON_CREATE = 6; + + // Cannot update an extension that is not already in this setting. + CANNOT_UPDATE_NEWLY_CREATED_EXTENSION = 7; + + // There is no existing AdGroupExtensionSetting for this type. + NO_EXISTING_AD_GROUP_EXTENSION_SETTING_FOR_TYPE = 8; + + // There is no existing CampaignExtensionSetting for this type. + NO_EXISTING_CAMPAIGN_EXTENSION_SETTING_FOR_TYPE = 9; + + // There is no existing CustomerExtensionSetting for this type. + NO_EXISTING_CUSTOMER_EXTENSION_SETTING_FOR_TYPE = 10; + + // The AdGroupExtensionSetting already exists. UPDATE should be used to + // modify the existing AdGroupExtensionSetting. + AD_GROUP_EXTENSION_SETTING_ALREADY_EXISTS = 11; + + // The CampaignExtensionSetting already exists. UPDATE should be used to + // modify the existing CampaignExtensionSetting. + CAMPAIGN_EXTENSION_SETTING_ALREADY_EXISTS = 12; + + // The CustomerExtensionSetting already exists. UPDATE should be used to + // modify the existing CustomerExtensionSetting. + CUSTOMER_EXTENSION_SETTING_ALREADY_EXISTS = 13; + + // An active ad group feed already exists for this place holder type. + AD_GROUP_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 14; + + // An active campaign feed already exists for this place holder type. + CAMPAIGN_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 15; + + // An active customer feed already exists for this place holder type. + CUSTOMER_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 16; + + // Value is not within the accepted range. + VALUE_OUT_OF_RANGE = 17; + + // Cannot simultaneously set specified field with final urls. + CANNOT_SET_FIELD_WITH_FINAL_URLS = 18; + + // Must set field with final urls. + FINAL_URLS_NOT_SET = 19; + + // Phone number for a call extension is invalid. + INVALID_PHONE_NUMBER = 20; + + // Phone number for a call extension is not supported for the given country + // code. + PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 21; + + // A carrier specific number in short format is not allowed for call + // extensions. + CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 22; + + // Premium rate numbers are not allowed for call extensions. + PREMIUM_RATE_NUMBER_NOT_ALLOWED = 23; + + // Phone number type for a call extension is not allowed. + DISALLOWED_NUMBER_TYPE = 24; + + // Phone number for a call extension does not meet domestic format + // requirements. + INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 25; + + // Vanity phone numbers (i.e. those including letters) are not allowed for + // call extensions. + VANITY_PHONE_NUMBER_NOT_ALLOWED = 26; + + // Country code provided for a call extension is invalid. + INVALID_COUNTRY_CODE = 27; + + // Call conversion type id provided for a call extension is invalid. + INVALID_CALL_CONVERSION_TYPE_ID = 28; + + // For a call extension, the customer is not on the allow-list for call + // tracking. + CUSTOMER_NOT_IN_ALLOWLIST_FOR_CALLTRACKING = 69; + + // Call tracking is not supported for the given country for a call + // extension. + CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 30; + + // App id provided for an app extension is invalid. + INVALID_APP_ID = 31; + + // Quotation marks present in the review text for a review extension. + QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 32; + + // Hyphen character present in the review text for a review extension. + HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 33; + + // A blocked review source name or url was provided for a review + // extension. + REVIEW_EXTENSION_SOURCE_NOT_ELIGIBLE = 34; + + // Review source name should not be found in the review text. + SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 35; + + // Field must be set. + MISSING_FIELD = 36; + + // Inconsistent currency codes. + INCONSISTENT_CURRENCY_CODES = 37; + + // Price extension cannot have duplicated headers. + PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 38; + + // Price item cannot have duplicated header and description. + PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 39; + + // Price extension has too few items + PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 40; + + // Price extension has too many items + PRICE_EXTENSION_HAS_TOO_MANY_ITEMS = 41; + + // The input value is not currently supported. + UNSUPPORTED_VALUE = 42; + + // Unknown or unsupported device preference. + INVALID_DEVICE_PREFERENCE = 43; + + // Invalid feed item schedule end time (i.e., endHour = 24 and + // endMinute != 0). + INVALID_SCHEDULE_END = 45; + + // Date time zone does not match the account's time zone. + DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 47; + + // Overlapping feed item schedule times (e.g., 7-10AM and 8-11AM) are not + // allowed. + OVERLAPPING_SCHEDULES_NOT_ALLOWED = 48; + + // Feed item schedule end time must be after start time. + SCHEDULE_END_NOT_AFTER_START = 49; + + // There are too many feed item schedules per day. + TOO_MANY_SCHEDULES_PER_DAY = 50; + + // Cannot edit the same extension feed item more than once in the same + // request. + DUPLICATE_EXTENSION_FEED_ITEM_EDIT = 51; + + // Invalid structured snippet header. + INVALID_SNIPPETS_HEADER = 52; + + // Phone number with call tracking enabled is not supported for the + // specified country. + PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 53; + + // The targeted adgroup must belong to the targeted campaign. + CAMPAIGN_TARGETING_MISMATCH = 54; + + // The feed used by the ExtensionSetting is removed and cannot be operated + // on. Remove the ExtensionSetting to allow a new one to be created using + // an active feed. + CANNOT_OPERATE_ON_REMOVED_FEED = 55; + + // The ExtensionFeedItem type is required for this operation. + EXTENSION_TYPE_REQUIRED = 56; + + // The matching function that links the extension feed to the customer, + // campaign, or ad group is not compatible with the ExtensionSetting + // services. + INCOMPATIBLE_UNDERLYING_MATCHING_FUNCTION = 57; + + // Start date must be before end date. + START_DATE_AFTER_END_DATE = 58; + + // Input price is not in a valid format. + INVALID_PRICE_FORMAT = 59; + + // The promotion time is invalid. + PROMOTION_INVALID_TIME = 60; + + // Cannot set both percent discount and money discount fields. + PROMOTION_CANNOT_SET_PERCENT_DISCOUNT_AND_MONEY_DISCOUNT = 61; + + // Cannot set both promotion code and orders over amount fields. + PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 62; + + // This field has too many decimal places specified. + TOO_MANY_DECIMAL_PLACES_SPECIFIED = 63; + + // The language code is not valid. + INVALID_LANGUAGE_CODE = 64; + + // The language is not supported. + UNSUPPORTED_LANGUAGE = 65; + + // Customer hasn't consented for call recording, which is required for + // adding/updating call extensions. Please see + // https://support.google.com/google-ads/answer/7412639. + CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 66; + + // The UPDATE operation does not specify any fields other than the resource + // name in the update mask. + EXTENSION_SETTING_UPDATE_IS_A_NOOP = 67; + + // The extension contains text which has been prohibited on policy grounds. + DISALLOWED_TEXT = 68; + } + + +} diff --git a/google/ads/googleads/v8/errors/feed_attribute_reference_error.proto b/google/ads/googleads/v8/errors/feed_attribute_reference_error.proto new file mode 100644 index 000000000..65903100c --- /dev/null +++ b/google/ads/googleads/v8/errors/feed_attribute_reference_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedAttributeReferenceErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing feed attribute reference errors. + +// Container for enum describing possible feed attribute reference errors. +message FeedAttributeReferenceErrorEnum { + // Enum describing possible feed attribute reference errors. + enum FeedAttributeReferenceError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A feed referenced by ID has been removed. + CANNOT_REFERENCE_REMOVED_FEED = 2; + + // There is no enabled feed with the given name. + INVALID_FEED_NAME = 3; + + // There is no feed attribute in an enabled feed with the given name. + INVALID_FEED_ATTRIBUTE_NAME = 4; + } + + +} diff --git a/google/ads/googleads/v8/errors/feed_error.proto b/google/ads/googleads/v8/errors/feed_error.proto new file mode 100644 index 000000000..208195c67 --- /dev/null +++ b/google/ads/googleads/v8/errors/feed_error.proto @@ -0,0 +1,111 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing feed errors. + +// Container for enum describing possible feed errors. +message FeedErrorEnum { + // Enum describing possible feed errors. + enum FeedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The names of the FeedAttributes must be unique. + ATTRIBUTE_NAMES_NOT_UNIQUE = 2; + + // The attribute list must be an exact copy of the existing list if the + // attribute ID's are present. + ATTRIBUTES_DO_NOT_MATCH_EXISTING_ATTRIBUTES = 3; + + // Cannot specify USER origin for a system generated feed. + CANNOT_SPECIFY_USER_ORIGIN_FOR_SYSTEM_FEED = 4; + + // Cannot specify GOOGLE origin for a non-system generated feed. + CANNOT_SPECIFY_GOOGLE_ORIGIN_FOR_NON_SYSTEM_FEED = 5; + + // Cannot specify feed attributes for system feed. + CANNOT_SPECIFY_FEED_ATTRIBUTES_FOR_SYSTEM_FEED = 6; + + // Cannot update FeedAttributes on feed with origin GOOGLE. + CANNOT_UPDATE_FEED_ATTRIBUTES_WITH_ORIGIN_GOOGLE = 7; + + // The given ID refers to a removed Feed. Removed Feeds are immutable. + FEED_REMOVED = 8; + + // The origin of the feed is not valid for the client. + INVALID_ORIGIN_VALUE = 9; + + // A user can only create and modify feeds with USER origin. + FEED_ORIGIN_IS_NOT_USER = 10; + + // Invalid auth token for the given email. + INVALID_AUTH_TOKEN_FOR_EMAIL = 11; + + // Invalid email specified. + INVALID_EMAIL = 12; + + // Feed name matches that of another active Feed. + DUPLICATE_FEED_NAME = 13; + + // Name of feed is not allowed. + INVALID_FEED_NAME = 14; + + // Missing OAuthInfo. + MISSING_OAUTH_INFO = 15; + + // New FeedAttributes must not affect the unique key. + NEW_ATTRIBUTE_CANNOT_BE_PART_OF_UNIQUE_KEY = 16; + + // Too many FeedAttributes for a Feed. + TOO_MANY_ATTRIBUTES = 17; + + // The business account is not valid. + INVALID_BUSINESS_ACCOUNT = 18; + + // Business account cannot access Business Profile. + BUSINESS_ACCOUNT_CANNOT_ACCESS_LOCATION_ACCOUNT = 19; + + // Invalid chain ID provided for affiliate location feed. + INVALID_AFFILIATE_CHAIN_ID = 20; + + // There is already a feed with the given system feed generation data. + DUPLICATE_SYSTEM_FEED = 21; + + // An error occurred accessing Business Profile. + GMB_ACCESS_ERROR = 22; + + // A customer cannot have both LOCATION and AFFILIATE_LOCATION feeds. + CANNOT_HAVE_LOCATION_AND_AFFILIATE_LOCATION_FEEDS = 23; + } + + +} diff --git a/google/ads/googleads/v8/errors/feed_item_error.proto b/google/ads/googleads/v8/errors/feed_item_error.proto new file mode 100644 index 000000000..fac1262e4 --- /dev/null +++ b/google/ads/googleads/v8/errors/feed_item_error.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing feed item errors. + +// Container for enum describing possible feed item errors. +message FeedItemErrorEnum { + // Enum describing possible feed item errors. + enum FeedItemError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot convert the feed attribute value from string to its real type. + CANNOT_CONVERT_ATTRIBUTE_VALUE_FROM_STRING = 2; + + // Cannot operate on removed feed item. + CANNOT_OPERATE_ON_REMOVED_FEED_ITEM = 3; + + // Date time zone does not match the account's time zone. + DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 4; + + // Feed item with the key attributes could not be found. + KEY_ATTRIBUTES_NOT_FOUND = 5; + + // Url feed attribute value is not valid. + INVALID_URL = 6; + + // Some key attributes are missing. + MISSING_KEY_ATTRIBUTES = 7; + + // Feed item has same key attributes as another feed item. + KEY_ATTRIBUTES_NOT_UNIQUE = 8; + + // Cannot modify key attributes on an existing feed item. + CANNOT_MODIFY_KEY_ATTRIBUTE_VALUE = 9; + + // The feed attribute value is too large. + SIZE_TOO_LARGE_FOR_MULTI_VALUE_ATTRIBUTE = 10; + } + + +} diff --git a/google/ads/googleads/v8/errors/feed_item_set_error.proto b/google/ads/googleads/v8/errors/feed_item_set_error.proto new file mode 100644 index 000000000..0c2039044 --- /dev/null +++ b/google/ads/googleads/v8/errors/feed_item_set_error.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing feed item set errors. + +// Container for enum describing possible feed item set errors. +message FeedItemSetErrorEnum { + // Enum describing possible feed item set errors. + enum FeedItemSetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The given ID refers to a removed FeedItemSet. + FEED_ITEM_SET_REMOVED = 2; + + // The dynamic filter of a feed item set cannot be cleared on UPDATE if it + // exists. A set is either static or dynamic once added, and that cannot + // change. + CANNOT_CLEAR_DYNAMIC_FILTER = 3; + + // The dynamic filter of a feed item set cannot be created on UPDATE if it + // does not exist. A set is either static or dynamic once added, and that + // cannot change. + CANNOT_CREATE_DYNAMIC_FILTER = 4; + + // FeedItemSets can only be made for location or affiliate location feeds. + INVALID_FEED_TYPE = 5; + + // FeedItemSets duplicate name. Name should be unique within an account. + DUPLICATE_NAME = 6; + + // The feed type of the parent Feed is not compatible with the type of + // dynamic filter being set. For example, you can only set + // dynamic_location_set_filter for LOCATION feed item sets. + WRONG_DYNAMIC_FILTER_FOR_FEED_TYPE = 7; + + // Chain ID specified for AffiliateLocationFeedData is invalid. + DYNAMIC_FILTER_INVALID_CHAIN_IDS = 8; + } + + +} diff --git a/google/ads/googleads/v8/errors/feed_item_set_link_error.proto b/google/ads/googleads/v8/errors/feed_item_set_link_error.proto new file mode 100644 index 000000000..4c8497f2a --- /dev/null +++ b/google/ads/googleads/v8/errors/feed_item_set_link_error.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetLinkErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing feed item set link errors. + +// Container for enum describing possible feed item set link errors. +message FeedItemSetLinkErrorEnum { + // Enum describing possible feed item set link errors. + enum FeedItemSetLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The feed IDs of the FeedItemSet and FeedItem do not match. Only FeedItems + // in a given Feed can be linked to a FeedItemSet in that Feed. + FEED_ID_MISMATCH = 2; + + // Cannot add or remove links to a dynamic set. + NO_MUTATE_ALLOWED_FOR_DYNAMIC_SET = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/feed_item_target_error.proto b/google/ads/googleads/v8/errors/feed_item_target_error.proto new file mode 100644 index 000000000..b8b9dae12 --- /dev/null +++ b/google/ads/googleads/v8/errors/feed_item_target_error.proto @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing feed item target errors. + +// Container for enum describing possible feed item target errors. +message FeedItemTargetErrorEnum { + // Enum describing possible feed item target errors. + enum FeedItemTargetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // On CREATE, the FeedItemTarget must have a populated field in the oneof + // target. + MUST_SET_TARGET_ONEOF_ON_CREATE = 2; + + // The specified feed item target already exists, so it cannot be added. + FEED_ITEM_TARGET_ALREADY_EXISTS = 3; + + // The schedules for a given feed item cannot overlap. + FEED_ITEM_SCHEDULES_CANNOT_OVERLAP = 4; + + // Too many targets of a given type were added for a single feed item. + TARGET_LIMIT_EXCEEDED_FOR_GIVEN_TYPE = 5; + + // Too many AdSchedules are enabled for the feed item for the given day. + TOO_MANY_SCHEDULES_PER_DAY = 6; + + // A feed item may either have an enabled campaign target or an enabled ad + // group target. + CANNOT_HAVE_ENABLED_CAMPAIGN_AND_ENABLED_AD_GROUP_TARGETS = 7; + + // Duplicate ad schedules aren't allowed. + DUPLICATE_AD_SCHEDULE = 8; + + // Duplicate keywords aren't allowed. + DUPLICATE_KEYWORD = 9; + } + + +} diff --git a/google/ads/googleads/v8/errors/feed_item_validation_error.proto b/google/ads/googleads/v8/errors/feed_item_validation_error.proto new file mode 100644 index 000000000..5d66a50fb --- /dev/null +++ b/google/ads/googleads/v8/errors/feed_item_validation_error.proto @@ -0,0 +1,377 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemValidationErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing feed item validation errors. + +// Container for enum describing possible validation errors of a feed item. +message FeedItemValidationErrorEnum { + // The possible validation errors of a feed item. + enum FeedItemValidationError { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // String is too short. + STRING_TOO_SHORT = 2; + + // String is too long. + STRING_TOO_LONG = 3; + + // Value is not provided. + VALUE_NOT_SPECIFIED = 4; + + // Phone number format is invalid for region. + INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 5; + + // String does not represent a phone number. + INVALID_PHONE_NUMBER = 6; + + // Phone number format is not compatible with country code. + PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 7; + + // Premium rate number is not allowed. + PREMIUM_RATE_NUMBER_NOT_ALLOWED = 8; + + // Phone number type is not allowed. + DISALLOWED_NUMBER_TYPE = 9; + + // Specified value is outside of the valid range. + VALUE_OUT_OF_RANGE = 10; + + // Call tracking is not supported in the selected country. + CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 11; + + // Customer is not on the allow-list for call tracking. + CUSTOMER_NOT_IN_ALLOWLIST_FOR_CALLTRACKING = 99; + + // Country code is invalid. + INVALID_COUNTRY_CODE = 13; + + // The specified mobile app id is invalid. + INVALID_APP_ID = 14; + + // Some required field attributes are missing. + MISSING_ATTRIBUTES_FOR_FIELDS = 15; + + // Invalid email button type for email extension. + INVALID_TYPE_ID = 16; + + // Email address is invalid. + INVALID_EMAIL_ADDRESS = 17; + + // The HTTPS URL in email extension is invalid. + INVALID_HTTPS_URL = 18; + + // Delivery address is missing from email extension. + MISSING_DELIVERY_ADDRESS = 19; + + // FeedItem scheduling start date comes after end date. + START_DATE_AFTER_END_DATE = 20; + + // FeedItem scheduling start time is missing. + MISSING_FEED_ITEM_START_TIME = 21; + + // FeedItem scheduling end time is missing. + MISSING_FEED_ITEM_END_TIME = 22; + + // Cannot compute system attributes on a FeedItem that has no FeedItemId. + MISSING_FEED_ITEM_ID = 23; + + // Call extension vanity phone numbers are not supported. + VANITY_PHONE_NUMBER_NOT_ALLOWED = 24; + + // Invalid review text. + INVALID_REVIEW_EXTENSION_SNIPPET = 25; + + // Invalid format for numeric value in ad parameter. + INVALID_NUMBER_FORMAT = 26; + + // Invalid format for date value in ad parameter. + INVALID_DATE_FORMAT = 27; + + // Invalid format for price value in ad parameter. + INVALID_PRICE_FORMAT = 28; + + // Unrecognized type given for value in ad parameter. + UNKNOWN_PLACEHOLDER_FIELD = 29; + + // Enhanced sitelinks must have both description lines specified. + MISSING_ENHANCED_SITELINK_DESCRIPTION_LINE = 30; + + // Review source is ineligible. + REVIEW_EXTENSION_SOURCE_INELIGIBLE = 31; + + // Review text cannot contain hyphens or dashes. + HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 32; + + // Review text cannot contain double quote characters. + DOUBLE_QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 33; + + // Review text cannot contain quote characters. + QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 34; + + // Parameters are encoded in the wrong format. + INVALID_FORM_ENCODED_PARAMS = 35; + + // URL parameter name must contain only letters, numbers, underscores, and + // dashes. + INVALID_URL_PARAMETER_NAME = 36; + + // Cannot find address location. + NO_GEOCODING_RESULT = 37; + + // Review extension text has source name. + SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 38; + + // Some phone numbers can be shorter than usual. Some of these short numbers + // are carrier-specific, and we disallow those in ad extensions because they + // will not be available to all users. + CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 39; + + // Triggered when a request references a placeholder field id that does not + // exist. + INVALID_PLACEHOLDER_FIELD_ID = 40; + + // URL contains invalid ValueTrack tags or format. + INVALID_URL_TAG = 41; + + // Provided list exceeds acceptable size. + LIST_TOO_LONG = 42; + + // Certain combinations of attributes aren't allowed to be specified in the + // same feed item. + INVALID_ATTRIBUTES_COMBINATION = 43; + + // An attribute has the same value repeatedly. + DUPLICATE_VALUES = 44; + + // Advertisers can link a conversion action with a phone number to indicate + // that sufficiently long calls forwarded to that phone number should be + // counted as conversions of the specified type. This is an error message + // indicating that the conversion action specified is invalid (e.g., the + // conversion action does not exist within the appropriate Google Ads + // account, or it is a type of conversion not appropriate to phone call + // conversions). + INVALID_CALL_CONVERSION_ACTION_ID = 45; + + // Tracking template requires final url to be set. + CANNOT_SET_WITHOUT_FINAL_URLS = 46; + + // An app id was provided that doesn't exist in the given app store. + APP_ID_DOESNT_EXIST_IN_APP_STORE = 47; + + // Invalid U2 final url. + INVALID_FINAL_URL = 48; + + // Invalid U2 tracking url. + INVALID_TRACKING_URL = 49; + + // Final URL should start from App download URL. + INVALID_FINAL_URL_FOR_APP_DOWNLOAD_URL = 50; + + // List provided is too short. + LIST_TOO_SHORT = 51; + + // User Action field has invalid value. + INVALID_USER_ACTION = 52; + + // Type field has invalid value. + INVALID_TYPE_NAME = 53; + + // Change status for event is invalid. + INVALID_EVENT_CHANGE_STATUS = 54; + + // The header of a structured snippets extension is not one of the valid + // headers. + INVALID_SNIPPETS_HEADER = 55; + + // Android app link is not formatted correctly + INVALID_ANDROID_APP_LINK = 56; + + // Phone number incompatible with call tracking for country. + NUMBER_TYPE_WITH_CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 57; + + // The input is identical to a reserved keyword + RESERVED_KEYWORD_OTHER = 58; + + // Each option label in the message extension must be unique. + DUPLICATE_OPTION_LABELS = 59; + + // Each option prefill in the message extension must be unique. + DUPLICATE_OPTION_PREFILLS = 60; + + // In message extensions, the number of optional labels and optional + // prefills must be the same. + UNEQUAL_LIST_LENGTHS = 61; + + // All currency codes in an ad extension must be the same. + INCONSISTENT_CURRENCY_CODES = 62; + + // Headers in price extension are not unique. + PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 63; + + // Header and description in an item are the same. + ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 64; + + // Price extension has too few items. + PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 65; + + // The given value is not supported. + UNSUPPORTED_VALUE = 66; + + // Invalid final mobile url. + INVALID_FINAL_MOBILE_URL = 67; + + // The given string value of Label contains invalid characters + INVALID_KEYWORDLESS_AD_RULE_LABEL = 68; + + // The given URL contains value track parameters. + VALUE_TRACK_PARAMETER_NOT_SUPPORTED = 69; + + // The given value is not supported in the selected language of an + // extension. + UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE = 70; + + // The iOS app link is not formatted correctly. + INVALID_IOS_APP_LINK = 71; + + // iOS app link or iOS app store id is missing. + MISSING_IOS_APP_LINK_OR_IOS_APP_STORE_ID = 72; + + // Promotion time is invalid. + PROMOTION_INVALID_TIME = 73; + + // Both the percent off and money amount off fields are set. + PROMOTION_CANNOT_SET_PERCENT_OFF_AND_MONEY_AMOUNT_OFF = 74; + + // Both the promotion code and orders over amount fields are set. + PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 75; + + // Too many decimal places are specified. + TOO_MANY_DECIMAL_PLACES_SPECIFIED = 76; + + // Ad Customizers are present and not allowed. + AD_CUSTOMIZERS_NOT_ALLOWED = 77; + + // Language code is not valid. + INVALID_LANGUAGE_CODE = 78; + + // Language is not supported. + UNSUPPORTED_LANGUAGE = 79; + + // IF Function is present and not allowed. + IF_FUNCTION_NOT_ALLOWED = 80; + + // Final url suffix is not valid. + INVALID_FINAL_URL_SUFFIX = 81; + + // Final url suffix contains an invalid tag. + INVALID_TAG_IN_FINAL_URL_SUFFIX = 82; + + // Final url suffix is formatted incorrectly. + INVALID_FINAL_URL_SUFFIX_FORMAT = 83; + + // Consent for call recording, which is required for the use of call + // extensions, was not provided by the advertiser. Please see + // https://support.google.com/google-ads/answer/7412639. + CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 84; + + // Multiple message delivery options are set. + ONLY_ONE_DELIVERY_OPTION_IS_ALLOWED = 85; + + // No message delivery option is set. + NO_DELIVERY_OPTION_IS_SET = 86; + + // String value of conversion reporting state field is not valid. + INVALID_CONVERSION_REPORTING_STATE = 87; + + // Image size is not right. + IMAGE_SIZE_WRONG = 88; + + // Email delivery is not supported in the country specified in the country + // code field. + EMAIL_DELIVERY_NOT_AVAILABLE_IN_COUNTRY = 89; + + // Auto reply is not supported in the country specified in the country code + // field. + AUTO_REPLY_NOT_AVAILABLE_IN_COUNTRY = 90; + + // Invalid value specified for latitude. + INVALID_LATITUDE_VALUE = 91; + + // Invalid value specified for longitude. + INVALID_LONGITUDE_VALUE = 92; + + // Too many label fields provided. + TOO_MANY_LABELS = 93; + + // Invalid image url. + INVALID_IMAGE_URL = 94; + + // Latitude value is missing. + MISSING_LATITUDE_VALUE = 95; + + // Longitude value is missing. + MISSING_LONGITUDE_VALUE = 96; + + // Unable to find address. + ADDRESS_NOT_FOUND = 97; + + // Cannot target provided address. + ADDRESS_NOT_TARGETABLE = 98; + + // The specified asset ID does not exist. + INVALID_ASSET_ID = 100; + + // The asset type cannot be set for the field. + INCOMPATIBLE_ASSET_TYPE = 101; + + // The image has unexpected size. + IMAGE_ERROR_UNEXPECTED_SIZE = 102; + + // The image aspect ratio is not allowed. + IMAGE_ERROR_ASPECT_RATIO_NOT_ALLOWED = 103; + + // The image file is too large. + IMAGE_ERROR_FILE_TOO_LARGE = 104; + + // The image format is unsupported. + IMAGE_ERROR_FORMAT_NOT_ALLOWED = 105; + + // Image violates constraints without more details. + IMAGE_ERROR_CONSTRAINTS_VIOLATED = 106; + + // An error occurred when validating image. + IMAGE_ERROR_SERVER_ERROR = 107; + } + + +} diff --git a/google/ads/googleads/v8/errors/feed_mapping_error.proto b/google/ads/googleads/v8/errors/feed_mapping_error.proto new file mode 100644 index 000000000..90f2cceac --- /dev/null +++ b/google/ads/googleads/v8/errors/feed_mapping_error.proto @@ -0,0 +1,100 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedMappingErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing feed item errors. + +// Container for enum describing possible feed item errors. +message FeedMappingErrorEnum { + // Enum describing possible feed item errors. + enum FeedMappingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The given placeholder field does not exist. + INVALID_PLACEHOLDER_FIELD = 2; + + // The given criterion field does not exist. + INVALID_CRITERION_FIELD = 3; + + // The given placeholder type does not exist. + INVALID_PLACEHOLDER_TYPE = 4; + + // The given criterion type does not exist. + INVALID_CRITERION_TYPE = 5; + + // A feed mapping must contain at least one attribute field mapping. + NO_ATTRIBUTE_FIELD_MAPPINGS = 7; + + // The type of the feed attribute referenced in the attribute field mapping + // must match the type of the placeholder field. + FEED_ATTRIBUTE_TYPE_MISMATCH = 8; + + // A feed mapping for a system generated feed cannot be operated on. + CANNOT_OPERATE_ON_MAPPINGS_FOR_SYSTEM_GENERATED_FEED = 9; + + // Only one feed mapping for a placeholder type is allowed per feed or + // customer (depending on the placeholder type). + MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_TYPE = 10; + + // Only one feed mapping for a criterion type is allowed per customer. + MULTIPLE_MAPPINGS_FOR_CRITERION_TYPE = 11; + + // Only one feed attribute mapping for a placeholder field is allowed + // (depending on the placeholder type). + MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_FIELD = 12; + + // Only one feed attribute mapping for a criterion field is allowed + // (depending on the criterion type). + MULTIPLE_MAPPINGS_FOR_CRITERION_FIELD = 13; + + // This feed mapping may not contain any explicit attribute field mappings. + UNEXPECTED_ATTRIBUTE_FIELD_MAPPINGS = 14; + + // Location placeholder feed mappings can only be created for Places feeds. + LOCATION_PLACEHOLDER_ONLY_FOR_PLACES_FEEDS = 15; + + // Mappings for typed feeds cannot be modified. + CANNOT_MODIFY_MAPPINGS_FOR_TYPED_FEED = 16; + + // The given placeholder type can only be mapped to system generated feeds. + INVALID_PLACEHOLDER_TYPE_FOR_NON_SYSTEM_GENERATED_FEED = 17; + + // The given placeholder type cannot be mapped to a system generated feed + // with the given type. + INVALID_PLACEHOLDER_TYPE_FOR_SYSTEM_GENERATED_FEED_TYPE = 18; + + // The "field" oneof was not set in an AttributeFieldMapping. + ATTRIBUTE_FIELD_MAPPING_MISSING_FIELD = 19; + } + + +} diff --git a/google/ads/googleads/v8/errors/field_error.proto b/google/ads/googleads/v8/errors/field_error.proto new file mode 100644 index 000000000..84f197bce --- /dev/null +++ b/google/ads/googleads/v8/errors/field_error.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FieldErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing field errors. + +// Container for enum describing possible field errors. +message FieldErrorEnum { + // Enum describing possible field errors. + enum FieldError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The required field was not present. + REQUIRED = 2; + + // The field attempted to be mutated is immutable. + IMMUTABLE_FIELD = 3; + + // The field's value is invalid. + INVALID_VALUE = 4; + + // The field cannot be set. + VALUE_MUST_BE_UNSET = 5; + + // The required repeated field was empty. + REQUIRED_NONEMPTY_LIST = 6; + + // The field cannot be cleared. + FIELD_CANNOT_BE_CLEARED = 7; + + // The field's value is on a deny-list for this field. + BLOCKED_VALUE = 9; + } + + +} diff --git a/google/ads/googleads/v8/errors/field_mask_error.proto b/google/ads/googleads/v8/errors/field_mask_error.proto new file mode 100644 index 000000000..e53bf7f6a --- /dev/null +++ b/google/ads/googleads/v8/errors/field_mask_error.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FieldMaskErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing field mask errors. + +// Container for enum describing possible field mask errors. +message FieldMaskErrorEnum { + // Enum describing possible field mask errors. + enum FieldMaskError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The field mask must be provided for update operations. + FIELD_MASK_MISSING = 5; + + // The field mask must be empty for create and remove operations. + FIELD_MASK_NOT_ALLOWED = 4; + + // The field mask contained an invalid field. + FIELD_NOT_FOUND = 2; + + // The field mask updated a field with subfields. Fields with subfields may + // be cleared, but not updated. To fix this, the field mask should select + // all the subfields of the invalid field. + FIELD_HAS_SUBFIELDS = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/function_error.proto b/google/ads/googleads/v8/errors/function_error.proto new file mode 100644 index 000000000..01b0340a1 --- /dev/null +++ b/google/ads/googleads/v8/errors/function_error.proto @@ -0,0 +1,93 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FunctionErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing function errors. + +// Container for enum describing possible function errors. +message FunctionErrorEnum { + // Enum describing possible function errors. + enum FunctionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The format of the function is not recognized as a supported function + // format. + INVALID_FUNCTION_FORMAT = 2; + + // Operand data types do not match. + DATA_TYPE_MISMATCH = 3; + + // The operands cannot be used together in a conjunction. + INVALID_CONJUNCTION_OPERANDS = 4; + + // Invalid numer of Operands. + INVALID_NUMBER_OF_OPERANDS = 5; + + // Operand Type not supported. + INVALID_OPERAND_TYPE = 6; + + // Operator not supported. + INVALID_OPERATOR = 7; + + // Request context type not supported. + INVALID_REQUEST_CONTEXT_TYPE = 8; + + // The matching function is not allowed for call placeholders + INVALID_FUNCTION_FOR_CALL_PLACEHOLDER = 9; + + // The matching function is not allowed for the specified placeholder + INVALID_FUNCTION_FOR_PLACEHOLDER = 10; + + // Invalid operand. + INVALID_OPERAND = 11; + + // Missing value for the constant operand. + MISSING_CONSTANT_OPERAND_VALUE = 12; + + // The value of the constant operand is invalid. + INVALID_CONSTANT_OPERAND_VALUE = 13; + + // Invalid function nesting. + INVALID_NESTING = 14; + + // The Feed ID was different from another Feed ID in the same function. + MULTIPLE_FEED_IDS_NOT_SUPPORTED = 15; + + // The matching function is invalid for use with a feed with a fixed schema. + INVALID_FUNCTION_FOR_FEED_WITH_FIXED_SCHEMA = 16; + + // Invalid attribute name. + INVALID_ATTRIBUTE_NAME = 17; + } + + +} diff --git a/google/ads/googleads/v8/errors/function_parsing_error.proto b/google/ads/googleads/v8/errors/function_parsing_error.proto new file mode 100644 index 000000000..02ee50071 --- /dev/null +++ b/google/ads/googleads/v8/errors/function_parsing_error.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FunctionParsingErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing function parsing errors. + +// Container for enum describing possible function parsing errors. +message FunctionParsingErrorEnum { + // Enum describing possible function parsing errors. + enum FunctionParsingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Unexpected end of function string. + NO_MORE_INPUT = 2; + + // Could not find an expected character. + EXPECTED_CHARACTER = 3; + + // Unexpected separator character. + UNEXPECTED_SEPARATOR = 4; + + // Unmatched left bracket or parenthesis. + UNMATCHED_LEFT_BRACKET = 5; + + // Unmatched right bracket or parenthesis. + UNMATCHED_RIGHT_BRACKET = 6; + + // Functions are nested too deeply. + TOO_MANY_NESTED_FUNCTIONS = 7; + + // Missing right-hand-side operand. + MISSING_RIGHT_HAND_OPERAND = 8; + + // Invalid operator/function name. + INVALID_OPERATOR_NAME = 9; + + // Feed attribute operand's argument is not an integer. + FEED_ATTRIBUTE_OPERAND_ARGUMENT_NOT_INTEGER = 10; + + // Missing function operands. + NO_OPERANDS = 11; + + // Function had too many operands. + TOO_MANY_OPERANDS = 12; + } + + +} diff --git a/google/ads/googleads/v8/errors/geo_target_constant_suggestion_error.proto b/google/ads/googleads/v8/errors/geo_target_constant_suggestion_error.proto new file mode 100644 index 000000000..6b9088421 --- /dev/null +++ b/google/ads/googleads/v8/errors/geo_target_constant_suggestion_error.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetConstantSuggestionErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Container for enum describing possible geo target constant suggestion errors. +message GeoTargetConstantSuggestionErrorEnum { + // Enum describing possible geo target constant suggestion errors. + enum GeoTargetConstantSuggestionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A location name cannot be greater than 300 characters. + LOCATION_NAME_SIZE_LIMIT = 2; + + // At most 25 location names can be specified in a SuggestGeoTargetConstants + // method. + LOCATION_NAME_LIMIT = 3; + + // The country code is invalid. + INVALID_COUNTRY_CODE = 4; + + // Geo target constant resource names or location names must be provided in + // the request. + REQUEST_PARAMETERS_UNSET = 5; + } + + +} diff --git a/google/ads/googleads/v8/errors/header_error.proto b/google/ads/googleads/v8/errors/header_error.proto new file mode 100644 index 000000000..ab7dbba66 --- /dev/null +++ b/google/ads/googleads/v8/errors/header_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "HeaderErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing header errors. + +// Container for enum describing possible header errors. +message HeaderErrorEnum { + // Enum describing possible header errors. + enum HeaderError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The login customer ID could not be validated. + INVALID_LOGIN_CUSTOMER_ID = 3; + + // The linked customer ID could not be validated. + INVALID_LINKED_CUSTOMER_ID = 7; + } + + +} diff --git a/google/ads/googleads/v8/errors/id_error.proto b/google/ads/googleads/v8/errors/id_error.proto new file mode 100644 index 000000000..e60138812 --- /dev/null +++ b/google/ads/googleads/v8/errors/id_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "IdErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing id errors. + +// Container for enum describing possible id errors. +message IdErrorEnum { + // Enum describing possible id errors. + enum IdError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Id not found + NOT_FOUND = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/image_error.proto b/google/ads/googleads/v8/errors/image_error.proto new file mode 100644 index 000000000..c0242211c --- /dev/null +++ b/google/ads/googleads/v8/errors/image_error.proto @@ -0,0 +1,164 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ImageErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing image errors. + +// Container for enum describing possible image errors. +message ImageErrorEnum { + // Enum describing possible image errors. + enum ImageError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The image is not valid. + INVALID_IMAGE = 2; + + // The image could not be stored. + STORAGE_ERROR = 3; + + // There was a problem with the request. + BAD_REQUEST = 4; + + // The image is not of legal dimensions. + UNEXPECTED_SIZE = 5; + + // Animated image are not permitted. + ANIMATED_NOT_ALLOWED = 6; + + // Animation is too long. + ANIMATION_TOO_LONG = 7; + + // There was an error on the server. + SERVER_ERROR = 8; + + // Image cannot be in CMYK color format. + CMYK_JPEG_NOT_ALLOWED = 9; + + // Flash images are not permitted. + FLASH_NOT_ALLOWED = 10; + + // Flash images must support clickTag. + FLASH_WITHOUT_CLICKTAG = 11; + + // A flash error has occurred after fixing the click tag. + FLASH_ERROR_AFTER_FIXING_CLICK_TAG = 12; + + // Unacceptable visual effects. + ANIMATED_VISUAL_EFFECT = 13; + + // There was a problem with the flash image. + FLASH_ERROR = 14; + + // Incorrect image layout. + LAYOUT_PROBLEM = 15; + + // There was a problem reading the image file. + PROBLEM_READING_IMAGE_FILE = 16; + + // There was an error storing the image. + ERROR_STORING_IMAGE = 17; + + // The aspect ratio of the image is not allowed. + ASPECT_RATIO_NOT_ALLOWED = 18; + + // Flash cannot have network objects. + FLASH_HAS_NETWORK_OBJECTS = 19; + + // Flash cannot have network methods. + FLASH_HAS_NETWORK_METHODS = 20; + + // Flash cannot have a Url. + FLASH_HAS_URL = 21; + + // Flash cannot use mouse tracking. + FLASH_HAS_MOUSE_TRACKING = 22; + + // Flash cannot have a random number. + FLASH_HAS_RANDOM_NUM = 23; + + // Ad click target cannot be '_self'. + FLASH_SELF_TARGETS = 24; + + // GetUrl method should only use '_blank'. + FLASH_BAD_GETURL_TARGET = 25; + + // Flash version is not supported. + FLASH_VERSION_NOT_SUPPORTED = 26; + + // Flash movies need to have hard coded click URL or clickTAG + FLASH_WITHOUT_HARD_CODED_CLICK_URL = 27; + + // Uploaded flash file is corrupted. + INVALID_FLASH_FILE = 28; + + // Uploaded flash file can be parsed, but the click tag can not be fixed + // properly. + FAILED_TO_FIX_CLICK_TAG_IN_FLASH = 29; + + // Flash movie accesses network resources + FLASH_ACCESSES_NETWORK_RESOURCES = 30; + + // Flash movie attempts to call external javascript code + FLASH_EXTERNAL_JS_CALL = 31; + + // Flash movie attempts to call flash system commands + FLASH_EXTERNAL_FS_CALL = 32; + + // Image file is too large. + FILE_TOO_LARGE = 33; + + // Image data is too large. + IMAGE_DATA_TOO_LARGE = 34; + + // Error while processing the image. + IMAGE_PROCESSING_ERROR = 35; + + // Image is too small. + IMAGE_TOO_SMALL = 36; + + // Input was invalid. + INVALID_INPUT = 37; + + // There was a problem reading the image file. + PROBLEM_READING_FILE = 38; + + // Image constraints are violated, but details like ASPECT_RATIO_NOT_ALLOWED + // can't be provided. This happens when asset spec contains more than one + // constraint and different criteria of different constraints are violated. + IMAGE_CONSTRAINTS_VIOLATED = 39; + + // Image format is not allowed. + FORMAT_NOT_ALLOWED = 40; + } + + +} diff --git a/google/ads/googleads/v8/errors/internal_error.proto b/google/ads/googleads/v8/errors/internal_error.proto new file mode 100644 index 000000000..fa10504c1 --- /dev/null +++ b/google/ads/googleads/v8/errors/internal_error.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "InternalErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing internal errors. + +// Container for enum describing possible internal errors. +message InternalErrorEnum { + // Enum describing possible internal errors. + enum InternalError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Google Ads API encountered unexpected internal error. + INTERNAL_ERROR = 2; + + // The intended error code doesn't exist in specified API version. It will + // be released in a future API version. + ERROR_CODE_NOT_PUBLISHED = 3; + + // Google Ads API encountered an unexpected transient error. The user + // should retry their request in these cases. + TRANSIENT_ERROR = 4; + + // The request took longer than a deadline. + DEADLINE_EXCEEDED = 5; + } + + +} diff --git a/google/ads/googleads/v8/errors/invoice_error.proto b/google/ads/googleads/v8/errors/invoice_error.proto new file mode 100644 index 000000000..d00fd64a6 --- /dev/null +++ b/google/ads/googleads/v8/errors/invoice_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "InvoiceErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing invoice errors. + +// Container for enum describing possible invoice errors. +message InvoiceErrorEnum { + // Enum describing possible invoice errors. + enum InvoiceError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot request invoices issued before 2019-01-01. + YEAR_MONTH_TOO_OLD = 2; + + // Cannot request invoices for customer who doesn't receive invoices. + NOT_INVOICED_CUSTOMER = 3; + + // Cannot request invoices for a non approved billing setup. + BILLING_SETUP_NOT_APPROVED = 4; + } + + +} diff --git a/google/ads/googleads/v8/errors/keyword_plan_ad_group_error.proto b/google/ads/googleads/v8/errors/keyword_plan_ad_group_error.proto new file mode 100644 index 000000000..ba1c0bf05 --- /dev/null +++ b/google/ads/googleads/v8/errors/keyword_plan_ad_group_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing errors from applying a keyword plan ad group. + +// Container for enum describing possible errors from applying a keyword plan +// ad group. +message KeywordPlanAdGroupErrorEnum { + // Enum describing possible errors from applying a keyword plan ad group. + enum KeywordPlanAdGroupError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The keyword plan ad group name is missing, empty, longer than allowed + // limit or contains invalid chars. + INVALID_NAME = 2; + + // The keyword plan ad group name is duplicate to an existing keyword plan + // AdGroup name or other keyword plan AdGroup name in the request. + DUPLICATE_NAME = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/keyword_plan_ad_group_keyword_error.proto b/google/ads/googleads/v8/errors/keyword_plan_ad_group_keyword_error.proto new file mode 100644 index 000000000..e822351d9 --- /dev/null +++ b/google/ads/googleads/v8/errors/keyword_plan_ad_group_keyword_error.proto @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupKeywordErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing errors from applying a keyword plan ad group keyword or +// keyword plan campaign keyword. + +// Container for enum describing possible errors from applying an ad group +// keyword or a campaign keyword from a keyword plan. +message KeywordPlanAdGroupKeywordErrorEnum { + // Enum describing possible errors from applying a keyword plan ad group + // keyword or keyword plan campaign keyword. + enum KeywordPlanAdGroupKeywordError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A keyword or negative keyword has invalid match type. + INVALID_KEYWORD_MATCH_TYPE = 2; + + // A keyword or negative keyword with same text and match type already + // exists. + DUPLICATE_KEYWORD = 3; + + // Keyword or negative keyword text exceeds the allowed limit. + KEYWORD_TEXT_TOO_LONG = 4; + + // Keyword or negative keyword text has invalid characters or symbols. + KEYWORD_HAS_INVALID_CHARS = 5; + + // Keyword or negative keyword text has too many words. + KEYWORD_HAS_TOO_MANY_WORDS = 6; + + // Keyword or negative keyword has invalid text. + INVALID_KEYWORD_TEXT = 7; + + // Cpc Bid set for negative keyword. + NEGATIVE_KEYWORD_HAS_CPC_BID = 8; + + // New broad match modifier (BMM) KpAdGroupKeywords are not allowed. + NEW_BMM_KEYWORDS_NOT_ALLOWED = 9; + } + + +} diff --git a/google/ads/googleads/v8/errors/keyword_plan_campaign_error.proto b/google/ads/googleads/v8/errors/keyword_plan_campaign_error.proto new file mode 100644 index 000000000..937f77c28 --- /dev/null +++ b/google/ads/googleads/v8/errors/keyword_plan_campaign_error.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing errors from applying a keyword plan campaign. + +// Container for enum describing possible errors from applying a keyword plan +// campaign. +message KeywordPlanCampaignErrorEnum { + // Enum describing possible errors from applying a keyword plan campaign. + enum KeywordPlanCampaignError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A keyword plan campaign name is missing, empty, longer than allowed limit + // or contains invalid chars. + INVALID_NAME = 2; + + // A keyword plan campaign contains one or more untargetable languages. + INVALID_LANGUAGES = 3; + + // A keyword plan campaign contains one or more invalid geo targets. + INVALID_GEOS = 4; + + // The keyword plan campaign name is duplicate to an existing keyword plan + // campaign name or other keyword plan campaign name in the request. + DUPLICATE_NAME = 5; + + // The number of geo targets in the keyword plan campaign exceeds limits. + MAX_GEOS_EXCEEDED = 6; + + // The number of languages in the keyword plan campaign exceeds limits. + MAX_LANGUAGES_EXCEEDED = 7; + } + + +} diff --git a/google/ads/googleads/v8/errors/keyword_plan_campaign_keyword_error.proto b/google/ads/googleads/v8/errors/keyword_plan_campaign_keyword_error.proto new file mode 100644 index 000000000..3a8ebdd93 --- /dev/null +++ b/google/ads/googleads/v8/errors/keyword_plan_campaign_keyword_error.proto @@ -0,0 +1,49 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignKeywordErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing errors from applying a keyword plan campaign keyword. + +// Container for enum describing possible errors from applying a keyword plan +// campaign keyword. +message KeywordPlanCampaignKeywordErrorEnum { + // Enum describing possible errors from applying a keyword plan campaign + // keyword. + enum KeywordPlanCampaignKeywordError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Keyword plan campaign keyword is positive. + CAMPAIGN_KEYWORD_IS_POSITIVE = 8; + } + + +} diff --git a/google/ads/googleads/v8/errors/keyword_plan_error.proto b/google/ads/googleads/v8/errors/keyword_plan_error.proto new file mode 100644 index 000000000..57b4a8c5b --- /dev/null +++ b/google/ads/googleads/v8/errors/keyword_plan_error.proto @@ -0,0 +1,91 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing errors from applying keyword plan resources (keyword +// plan, keyword plan campaign, keyword plan ad group or keyword plan keyword) +// or KeywordPlanService RPC. + +// Container for enum describing possible errors from applying a keyword plan +// resource (keyword plan, keyword plan campaign, keyword plan ad group or +// keyword plan keyword) or KeywordPlanService RPC. +message KeywordPlanErrorEnum { + // Enum describing possible errors from applying a keyword plan. + enum KeywordPlanError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The plan's bid multiplier value is outside the valid range. + BID_MULTIPLIER_OUT_OF_RANGE = 2; + + // The plan's bid value is too high. + BID_TOO_HIGH = 3; + + // The plan's bid value is too low. + BID_TOO_LOW = 4; + + // The plan's cpc bid is not a multiple of the minimum billable unit. + BID_TOO_MANY_FRACTIONAL_DIGITS = 5; + + // The plan's daily budget value is too low. + DAILY_BUDGET_TOO_LOW = 6; + + // The plan's daily budget is not a multiple of the minimum billable unit. + DAILY_BUDGET_TOO_MANY_FRACTIONAL_DIGITS = 7; + + // The input has an invalid value. + INVALID_VALUE = 8; + + // The plan has no keyword. + KEYWORD_PLAN_HAS_NO_KEYWORDS = 9; + + // The plan is not enabled and API cannot provide mutation, forecast or + // stats. + KEYWORD_PLAN_NOT_ENABLED = 10; + + // The requested plan cannot be found for providing forecast or stats. + KEYWORD_PLAN_NOT_FOUND = 11; + + // The plan is missing a cpc bid. + MISSING_BID = 13; + + // The plan is missing required forecast_period field. + MISSING_FORECAST_PERIOD = 14; + + // The plan's forecast_period has invalid forecast date range. + INVALID_FORECAST_DATE_RANGE = 15; + + // The plan's name is invalid. + INVALID_NAME = 16; + } + + +} diff --git a/google/ads/googleads/v8/errors/keyword_plan_idea_error.proto b/google/ads/googleads/v8/errors/keyword_plan_idea_error.proto new file mode 100644 index 000000000..e46a0155d --- /dev/null +++ b/google/ads/googleads/v8/errors/keyword_plan_idea_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanIdeaErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing errors from KeywordPlanIdeaService. + +// Container for enum describing possible errors from KeywordPlanIdeaService. +message KeywordPlanIdeaErrorEnum { + // Enum describing possible errors from KeywordPlanIdeaService. + enum KeywordPlanIdeaError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Error when crawling the input URL. + URL_CRAWL_ERROR = 2; + + // The input has an invalid value. + INVALID_VALUE = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/label_error.proto b/google/ads/googleads/v8/errors/label_error.proto new file mode 100644 index 000000000..d38293e71 --- /dev/null +++ b/google/ads/googleads/v8/errors/label_error.proto @@ -0,0 +1,73 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "LabelErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing label errors. + +// Container for enum describing possible label errors. +message LabelErrorEnum { + // Enum describing possible label errors. + enum LabelError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // An inactive label cannot be applied. + CANNOT_APPLY_INACTIVE_LABEL = 2; + + // A label cannot be applied to a disabled ad group criterion. + CANNOT_APPLY_LABEL_TO_DISABLED_AD_GROUP_CRITERION = 3; + + // A label cannot be applied to a negative ad group criterion. + CANNOT_APPLY_LABEL_TO_NEGATIVE_AD_GROUP_CRITERION = 4; + + // Cannot apply more than 50 labels per resource. + EXCEEDED_LABEL_LIMIT_PER_TYPE = 5; + + // Labels from a manager account cannot be applied to campaign, ad group, + // ad group ad, or ad group criterion resources. + INVALID_RESOURCE_FOR_MANAGER_LABEL = 6; + + // Label names must be unique. + DUPLICATE_NAME = 7; + + // Label names cannot be empty. + INVALID_LABEL_NAME = 8; + + // Labels cannot be applied to a draft. + CANNOT_ATTACH_LABEL_TO_DRAFT = 9; + + // Labels not from a manager account cannot be applied to the customer + // resource. + CANNOT_ATTACH_NON_MANAGER_LABEL_TO_CUSTOMER = 10; + } + + +} diff --git a/google/ads/googleads/v8/errors/language_code_error.proto b/google/ads/googleads/v8/errors/language_code_error.proto new file mode 100644 index 000000000..b5899f51e --- /dev/null +++ b/google/ads/googleads/v8/errors/language_code_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "LanguageCodeErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing language code errors. + +// Container for enum describing language code errors. +message LanguageCodeErrorEnum { + // Enum describing language code errors. + enum LanguageCodeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The input language code is not recognized. + LANGUAGE_CODE_NOT_FOUND = 2; + + // The language code is not supported. + INVALID_LANGUAGE_CODE = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/list_operation_error.proto b/google/ads/googleads/v8/errors/list_operation_error.proto new file mode 100644 index 000000000..79170f1e4 --- /dev/null +++ b/google/ads/googleads/v8/errors/list_operation_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ListOperationErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing list operation errors. + +// Container for enum describing possible list operation errors. +message ListOperationErrorEnum { + // Enum describing possible list operation errors. + enum ListOperationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Field required in value is missing. + REQUIRED_FIELD_MISSING = 7; + + // Duplicate or identical value is sent in multiple list operations. + DUPLICATE_VALUES = 8; + } + + +} diff --git a/google/ads/googleads/v8/errors/manager_link_error.proto b/google/ads/googleads/v8/errors/manager_link_error.proto new file mode 100644 index 000000000..3eb8c80ca --- /dev/null +++ b/google/ads/googleads/v8/errors/manager_link_error.proto @@ -0,0 +1,97 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ManagerLinkErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing ManagerLink errors. + +// Container for enum describing possible ManagerLink errors. +message ManagerLinkErrorEnum { + // Enum describing possible ManagerLink errors. + enum ManagerLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The manager and client have incompatible account types. + ACCOUNTS_NOT_COMPATIBLE_FOR_LINKING = 2; + + // Client is already linked to too many managers. + TOO_MANY_MANAGERS = 3; + + // Manager has too many pending invitations. + TOO_MANY_INVITES = 4; + + // Client is already invited by this manager. + ALREADY_INVITED_BY_THIS_MANAGER = 5; + + // The client is already managed by this manager. + ALREADY_MANAGED_BY_THIS_MANAGER = 6; + + // Client is already managed in hierarchy. + ALREADY_MANAGED_IN_HIERARCHY = 7; + + // Manager and sub-manager to be linked have duplicate client. + DUPLICATE_CHILD_FOUND = 8; + + // Client has no active user that can access the client account. + CLIENT_HAS_NO_ADMIN_USER = 9; + + // Adding this link would exceed the maximum hierarchy depth. + MAX_DEPTH_EXCEEDED = 10; + + // Adding this link will create a cycle. + CYCLE_NOT_ALLOWED = 11; + + // Manager account has the maximum number of linked clients. + TOO_MANY_ACCOUNTS = 12; + + // Parent manager account has the maximum number of linked clients. + TOO_MANY_ACCOUNTS_AT_MANAGER = 13; + + // The account is not authorized owner. + NON_OWNER_USER_CANNOT_MODIFY_LINK = 14; + + // Your manager account is suspended, and you are no longer allowed to link + // to clients. + SUSPENDED_ACCOUNT_CANNOT_ADD_CLIENTS = 15; + + // You are not allowed to move a client to a manager that is not under your + // current hierarchy. + CLIENT_OUTSIDE_TREE = 16; + + // The changed status for mutate link is invalid. + INVALID_STATUS_CHANGE = 17; + + // The change for mutate link is invalid. + INVALID_CHANGE = 18; + } + + +} diff --git a/google/ads/googleads/v8/errors/media_bundle_error.proto b/google/ads/googleads/v8/errors/media_bundle_error.proto new file mode 100644 index 000000000..e06cbabb0 --- /dev/null +++ b/google/ads/googleads/v8/errors/media_bundle_error.proto @@ -0,0 +1,110 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "MediaBundleErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing media bundle errors. + +// Container for enum describing possible media bundle errors. +message MediaBundleErrorEnum { + // Enum describing possible media bundle errors. + enum MediaBundleError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // There was a problem with the request. + BAD_REQUEST = 3; + + // HTML5 ads using DoubleClick Studio created ZIP files are not supported. + DOUBLECLICK_BUNDLE_NOT_ALLOWED = 4; + + // Cannot reference URL external to the media bundle. + EXTERNAL_URL_NOT_ALLOWED = 5; + + // Media bundle file is too large. + FILE_TOO_LARGE = 6; + + // ZIP file from Google Web Designer is not published. + GOOGLE_WEB_DESIGNER_ZIP_FILE_NOT_PUBLISHED = 7; + + // Input was invalid. + INVALID_INPUT = 8; + + // There was a problem with the media bundle. + INVALID_MEDIA_BUNDLE = 9; + + // There was a problem with one or more of the media bundle entries. + INVALID_MEDIA_BUNDLE_ENTRY = 10; + + // The media bundle contains a file with an unknown mime type + INVALID_MIME_TYPE = 11; + + // The media bundle contain an invalid asset path. + INVALID_PATH = 12; + + // HTML5 ad is trying to reference an asset not in .ZIP file + INVALID_URL_REFERENCE = 13; + + // Media data is too large. + MEDIA_DATA_TOO_LARGE = 14; + + // The media bundle contains no primary entry. + MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY = 15; + + // There was an error on the server. + SERVER_ERROR = 16; + + // The image could not be stored. + STORAGE_ERROR = 17; + + // Media bundle created with the Swiffy tool is not allowed. + SWIFFY_BUNDLE_NOT_ALLOWED = 18; + + // The media bundle contains too many files. + TOO_MANY_FILES = 19; + + // The media bundle is not of legal dimensions. + UNEXPECTED_SIZE = 20; + + // Google Web Designer not created for "Google Ads" environment. + UNSUPPORTED_GOOGLE_WEB_DESIGNER_ENVIRONMENT = 21; + + // Unsupported HTML5 feature in HTML5 asset. + UNSUPPORTED_HTML5_FEATURE = 22; + + // URL in HTML5 entry is not ssl compliant. + URL_IN_MEDIA_BUNDLE_NOT_SSL_COMPLIANT = 23; + + // Custom exits not allowed in HTML5 entry. + CUSTOM_EXIT_NOT_ALLOWED = 24; + } + + +} diff --git a/google/ads/googleads/v8/errors/media_file_error.proto b/google/ads/googleads/v8/errors/media_file_error.proto new file mode 100644 index 000000000..ca12c88a1 --- /dev/null +++ b/google/ads/googleads/v8/errors/media_file_error.proto @@ -0,0 +1,113 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "MediaFileErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing media file errors. + +// Container for enum describing possible media file errors. +message MediaFileErrorEnum { + // Enum describing possible media file errors. + enum MediaFileError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot create a standard icon type. + CANNOT_CREATE_STANDARD_ICON = 2; + + // May only select Standard Icons alone. + CANNOT_SELECT_STANDARD_ICON_WITH_OTHER_TYPES = 3; + + // Image contains both a media file ID and data. + CANNOT_SPECIFY_MEDIA_FILE_ID_AND_DATA = 4; + + // A media file with given type and reference ID already exists. + DUPLICATE_MEDIA = 5; + + // A required field was not specified or is an empty string. + EMPTY_FIELD = 6; + + // A media file may only be modified once per call. + RESOURCE_REFERENCED_IN_MULTIPLE_OPS = 7; + + // Field is not supported for the media sub type. + FIELD_NOT_SUPPORTED_FOR_MEDIA_SUB_TYPE = 8; + + // The media file ID is invalid. + INVALID_MEDIA_FILE_ID = 9; + + // The media subtype is invalid. + INVALID_MEDIA_SUB_TYPE = 10; + + // The media file type is invalid. + INVALID_MEDIA_FILE_TYPE = 11; + + // The mimetype is invalid. + INVALID_MIME_TYPE = 12; + + // The media reference ID is invalid. + INVALID_REFERENCE_ID = 13; + + // The YouTube video ID is invalid. + INVALID_YOU_TUBE_ID = 14; + + // Media file has failed transcoding + MEDIA_FILE_FAILED_TRANSCODING = 15; + + // Media file has not been transcoded. + MEDIA_NOT_TRANSCODED = 16; + + // The media type does not match the actual media file's type. + MEDIA_TYPE_DOES_NOT_MATCH_MEDIA_FILE_TYPE = 17; + + // None of the fields have been specified. + NO_FIELDS_SPECIFIED = 18; + + // One of reference ID or media file ID must be specified. + NULL_REFERENCE_ID_AND_MEDIA_ID = 19; + + // The string has too many characters. + TOO_LONG = 20; + + // The specified type is not supported. + UNSUPPORTED_TYPE = 21; + + // YouTube is unavailable for requesting video data. + YOU_TUBE_SERVICE_UNAVAILABLE = 22; + + // The YouTube video has a non positive duration. + YOU_TUBE_VIDEO_HAS_NON_POSITIVE_DURATION = 23; + + // The YouTube video ID is syntactically valid but the video was not found. + YOU_TUBE_VIDEO_NOT_FOUND = 24; + } + + +} diff --git a/google/ads/googleads/v8/errors/media_upload_error.proto b/google/ads/googleads/v8/errors/media_upload_error.proto new file mode 100644 index 000000000..05092c8b7 --- /dev/null +++ b/google/ads/googleads/v8/errors/media_upload_error.proto @@ -0,0 +1,152 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "MediaUploadErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing media uploading errors. + +// Container for enum describing possible media uploading errors. +message MediaUploadErrorEnum { + // Enum describing possible media uploading errors. + enum MediaUploadError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The uploaded file is too big. + FILE_TOO_BIG = 2; + + // Image data is unparseable. + UNPARSEABLE_IMAGE = 3; + + // Animated images are not allowed. + ANIMATED_IMAGE_NOT_ALLOWED = 4; + + // The image or media bundle format is not allowed. + FORMAT_NOT_ALLOWED = 5; + + // Cannot reference URL external to the media bundle. + EXTERNAL_URL_NOT_ALLOWED = 6; + + // HTML5 ad is trying to reference an asset not in .ZIP file. + INVALID_URL_REFERENCE = 7; + + // The media bundle contains no primary entry. + MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY = 8; + + // Animation has disallowed visual effects. + ANIMATED_VISUAL_EFFECT = 9; + + // Animation longer than the allowed 30 second limit. + ANIMATION_TOO_LONG = 10; + + // The aspect ratio of the image does not match the expected aspect ratios + // provided in the asset spec. + ASPECT_RATIO_NOT_ALLOWED = 11; + + // Audio files are not allowed in bundle. + AUDIO_NOT_ALLOWED_IN_MEDIA_BUNDLE = 12; + + // CMYK jpegs are not supported. + CMYK_JPEG_NOT_ALLOWED = 13; + + // Flash movies are not allowed. + FLASH_NOT_ALLOWED = 14; + + // The frame rate of the video is higher than the allowed 5fps. + FRAME_RATE_TOO_HIGH = 15; + + // ZIP file from Google Web Designer is not published. + GOOGLE_WEB_DESIGNER_ZIP_FILE_NOT_PUBLISHED = 16; + + // Image constraints are violated, but more details (like + // DIMENSIONS_NOT_ALLOWED or ASPECT_RATIO_NOT_ALLOWED) can not be provided. + // This happens when asset spec contains more than one constraint and + // criteria of different constraints are violated. + IMAGE_CONSTRAINTS_VIOLATED = 17; + + // Media bundle data is unrecognizable. + INVALID_MEDIA_BUNDLE = 18; + + // There was a problem with one or more of the media bundle entries. + INVALID_MEDIA_BUNDLE_ENTRY = 19; + + // The asset has an invalid mime type. + INVALID_MIME_TYPE = 20; + + // The media bundle contains an invalid asset path. + INVALID_PATH = 21; + + // Image has layout problem. + LAYOUT_PROBLEM = 22; + + // An asset had a URL reference that is malformed per RFC 1738 convention. + MALFORMED_URL = 23; + + // The uploaded media bundle format is not allowed. + MEDIA_BUNDLE_NOT_ALLOWED = 24; + + // The media bundle is not compatible with the asset spec product type. + // (E.g. Gmail, dynamic remarketing, etc.) + MEDIA_BUNDLE_NOT_COMPATIBLE_TO_PRODUCT_TYPE = 25; + + // A bundle being uploaded that is incompatible with multiple assets for + // different reasons. + MEDIA_BUNDLE_REJECTED_BY_MULTIPLE_ASSET_SPECS = 26; + + // The media bundle contains too many files. + TOO_MANY_FILES_IN_MEDIA_BUNDLE = 27; + + // Google Web Designer not created for "Google Ads" environment. + UNSUPPORTED_GOOGLE_WEB_DESIGNER_ENVIRONMENT = 28; + + // Unsupported HTML5 feature in HTML5 asset. + UNSUPPORTED_HTML5_FEATURE = 29; + + // URL in HTML5 entry is not SSL compliant. + URL_IN_MEDIA_BUNDLE_NOT_SSL_COMPLIANT = 30; + + // Video file name is longer than the 50 allowed characters. + VIDEO_FILE_NAME_TOO_LONG = 31; + + // Multiple videos with same name in a bundle. + VIDEO_MULTIPLE_FILES_WITH_SAME_NAME = 32; + + // Videos are not allowed in media bundle. + VIDEO_NOT_ALLOWED_IN_MEDIA_BUNDLE = 33; + + // This type of media cannot be uploaded through the Google Ads API. + CANNOT_UPLOAD_MEDIA_TYPE_THROUGH_API = 34; + + // The dimensions of the image are not allowed. + DIMENSIONS_NOT_ALLOWED = 35; + } + + +} diff --git a/google/ads/googleads/v8/errors/multiplier_error.proto b/google/ads/googleads/v8/errors/multiplier_error.proto new file mode 100644 index 000000000..10cdc6203 --- /dev/null +++ b/google/ads/googleads/v8/errors/multiplier_error.proto @@ -0,0 +1,81 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "MultiplierErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing multiplier errors. + +// Container for enum describing possible multiplier errors. +message MultiplierErrorEnum { + // Enum describing possible multiplier errors. + enum MultiplierError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Multiplier value is too high + MULTIPLIER_TOO_HIGH = 2; + + // Multiplier value is too low + MULTIPLIER_TOO_LOW = 3; + + // Too many fractional digits + TOO_MANY_FRACTIONAL_DIGITS = 4; + + // A multiplier cannot be set for this bidding strategy + MULTIPLIER_NOT_ALLOWED_FOR_BIDDING_STRATEGY = 5; + + // A multiplier cannot be set when there is no base bid (e.g., content max + // cpc) + MULTIPLIER_NOT_ALLOWED_WHEN_BASE_BID_IS_MISSING = 6; + + // A bid multiplier must be specified + NO_MULTIPLIER_SPECIFIED = 7; + + // Multiplier causes bid to exceed daily budget + MULTIPLIER_CAUSES_BID_TO_EXCEED_DAILY_BUDGET = 8; + + // Multiplier causes bid to exceed monthly budget + MULTIPLIER_CAUSES_BID_TO_EXCEED_MONTHLY_BUDGET = 9; + + // Multiplier causes bid to exceed custom budget + MULTIPLIER_CAUSES_BID_TO_EXCEED_CUSTOM_BUDGET = 10; + + // Multiplier causes bid to exceed maximum allowed bid + MULTIPLIER_CAUSES_BID_TO_EXCEED_MAX_ALLOWED_BID = 11; + + // Multiplier causes bid to become less than the minimum bid allowed + BID_LESS_THAN_MIN_ALLOWED_BID_WITH_MULTIPLIER = 12; + + // Multiplier type (cpc vs. cpm) needs to match campaign's bidding strategy + MULTIPLIER_AND_BIDDING_STRATEGY_TYPE_MISMATCH = 13; + } + + +} diff --git a/google/ads/googleads/v8/errors/mutate_error.proto b/google/ads/googleads/v8/errors/mutate_error.proto new file mode 100644 index 000000000..faa8f10fe --- /dev/null +++ b/google/ads/googleads/v8/errors/mutate_error.proto @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "MutateErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing mutate errors. + +// Container for enum describing possible mutate errors. +message MutateErrorEnum { + // Enum describing possible mutate errors. + enum MutateError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Requested resource was not found. + RESOURCE_NOT_FOUND = 3; + + // Cannot mutate the same resource twice in one request. + ID_EXISTS_IN_MULTIPLE_MUTATES = 7; + + // The field's contents don't match another field that represents the same + // data. + INCONSISTENT_FIELD_VALUES = 8; + + // Mutates are not allowed for the requested resource. + MUTATE_NOT_ALLOWED = 9; + + // The resource isn't in Google Ads. It belongs to another ads system. + RESOURCE_NOT_IN_GOOGLE_ADS = 10; + + // The resource being created already exists. + RESOURCE_ALREADY_EXISTS = 11; + + // This resource cannot be used with "validate_only". + RESOURCE_DOES_NOT_SUPPORT_VALIDATE_ONLY = 12; + + // Attempt to write to read-only fields. + RESOURCE_READ_ONLY = 13; + } + + +} diff --git a/google/ads/googleads/v8/errors/new_resource_creation_error.proto b/google/ads/googleads/v8/errors/new_resource_creation_error.proto new file mode 100644 index 000000000..3e2a6ce56 --- /dev/null +++ b/google/ads/googleads/v8/errors/new_resource_creation_error.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "NewResourceCreationErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing new resource creation errors. + +// Container for enum describing possible new resource creation errors. +message NewResourceCreationErrorEnum { + // Enum describing possible new resource creation errors. + enum NewResourceCreationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Do not set the id field while creating new resources. + CANNOT_SET_ID_FOR_CREATE = 2; + + // Creating more than one resource with the same temp ID is not allowed. + DUPLICATE_TEMP_IDS = 3; + + // Parent resource with specified temp ID failed validation, so no + // validation will be done for this child resource. + TEMP_ID_RESOURCE_HAD_ERRORS = 4; + } + + +} diff --git a/google/ads/googleads/v8/errors/not_allowlisted_error.proto b/google/ads/googleads/v8/errors/not_allowlisted_error.proto new file mode 100644 index 000000000..222882ae5 --- /dev/null +++ b/google/ads/googleads/v8/errors/not_allowlisted_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "NotAllowlistedErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing not allowlisted errors. + +// Container for enum describing possible not allowlisted errors. +message NotAllowlistedErrorEnum { + // Enum describing possible not allowlisted errors. + enum NotAllowlistedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Customer is not allowlisted for accessing this feature. + CUSTOMER_NOT_ALLOWLISTED_FOR_THIS_FEATURE = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/not_empty_error.proto b/google/ads/googleads/v8/errors/not_empty_error.proto new file mode 100644 index 000000000..902878247 --- /dev/null +++ b/google/ads/googleads/v8/errors/not_empty_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "NotEmptyErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing not empty errors. + +// Container for enum describing possible not empty errors. +message NotEmptyErrorEnum { + // Enum describing possible not empty errors. + enum NotEmptyError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Empty list. + EMPTY_LIST = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/null_error.proto b/google/ads/googleads/v8/errors/null_error.proto new file mode 100644 index 000000000..6e0e8239f --- /dev/null +++ b/google/ads/googleads/v8/errors/null_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "NullErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing null errors. + +// Container for enum describing possible null errors. +message NullErrorEnum { + // Enum describing possible null errors. + enum NullError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Specified list/container must not contain any null elements + NULL_CONTENT = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/offline_user_data_job_error.proto b/google/ads/googleads/v8/errors/offline_user_data_job_error.proto new file mode 100644 index 000000000..e81134867 --- /dev/null +++ b/google/ads/googleads/v8/errors/offline_user_data_job_error.proto @@ -0,0 +1,152 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing offline user data job errors. + +// Container for enum describing possible offline user data job errors. +message OfflineUserDataJobErrorEnum { + // Enum describing possible request errors. + enum OfflineUserDataJobError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The user list ID provided for the job is invalid. + INVALID_USER_LIST_ID = 3; + + // Type of the user list is not applicable for the job. + INVALID_USER_LIST_TYPE = 4; + + // Customer is not allowisted for using user ID in upload data. + NOT_ON_ALLOWLIST_FOR_USER_ID = 33; + + // Upload data is not compatible with the upload key type of the associated + // user list. + INCOMPATIBLE_UPLOAD_KEY_TYPE = 6; + + // The user identifier is missing valid data. + MISSING_USER_IDENTIFIER = 7; + + // The mobile ID is malformed. + INVALID_MOBILE_ID_FORMAT = 8; + + // Maximum number of user identifiers allowed per request is 100,000. + TOO_MANY_USER_IDENTIFIERS = 9; + + // Customer is not on the allow-list for store sales direct data. + NOT_ON_ALLOWLIST_FOR_STORE_SALES_DIRECT = 31; + + // Customer is not on the allow-list for unified store sales data. + NOT_ON_ALLOWLIST_FOR_UNIFIED_STORE_SALES = 32; + + // The partner ID in store sales direct metadata is invalid. + INVALID_PARTNER_ID = 11; + + // The data in user identifier should not be encoded. + INVALID_ENCODING = 12; + + // The country code is invalid. + INVALID_COUNTRY_CODE = 13; + + // Incompatible user identifier when using third_party_user_id for store + // sales direct first party data or not using third_party_user_id for store + // sales third party data. + INCOMPATIBLE_USER_IDENTIFIER = 14; + + // A transaction time in the future is not allowed. + FUTURE_TRANSACTION_TIME = 15; + + // The conversion_action specified in transaction_attributes is used to + // report conversions to a conversion action configured in Google Ads. This + // error indicates there is no such conversion action in the account. + INVALID_CONVERSION_ACTION = 16; + + // Mobile ID is not supported for store sales direct data. + MOBILE_ID_NOT_SUPPORTED = 17; + + // When a remove-all operation is provided, it has to be the first operation + // of the operation list. + INVALID_OPERATION_ORDER = 18; + + // Mixing creation and removal of offline data in the same job is not + // allowed. + CONFLICTING_OPERATION = 19; + + // The external update ID already exists. + EXTERNAL_UPDATE_ID_ALREADY_EXISTS = 21; + + // Once the upload job is started, new operations cannot be added. + JOB_ALREADY_STARTED = 22; + + // Remove operation is not allowed for store sales direct updates. + REMOVE_NOT_SUPPORTED = 23; + + // Remove-all is not supported for certain offline user data job types. + REMOVE_ALL_NOT_SUPPORTED = 24; + + // The SHA256 encoded value is malformed. + INVALID_SHA256_FORMAT = 25; + + // The custom key specified is not enabled for the unified store sales + // upload. + CUSTOM_KEY_DISABLED = 26; + + // The custom key specified is not predefined through the Google Ads UI. + CUSTOM_KEY_NOT_PREDEFINED = 27; + + // The custom key specified is not set in the upload. + CUSTOM_KEY_NOT_SET = 29; + + // The customer has not accepted the customer data terms in the conversion + // settings page. + CUSTOMER_NOT_ACCEPTED_CUSTOMER_DATA_TERMS = 30; + + // User attributes cannot be uploaded into a user list. + ATTRIBUTES_NOT_APPLICABLE_FOR_CUSTOMER_MATCH_USER_LIST = 34; + + // Lifetime value bucket must be a number from 1-10, except for remove + // operation where 0 will be accepted. + LIFETIME_VALUE_BUCKET_NOT_IN_RANGE = 35; + + // Identifiers not supported for Customer Match attributes. User attributes + // can only be provided with contact info (email, phone, address) user + // identifiers. + INCOMPATIBLE_USER_IDENTIFIER_FOR_ATTRIBUTES = 36; + + // A time in the future is not allowed. + FUTURE_TIME_NOT_ALLOWED = 37; + + // Last purchase date time cannot be less than acquisition date time. + LAST_PURCHASE_TIME_LESS_THAN_ACQUISITION_TIME = 38; + } + + +} diff --git a/google/ads/googleads/v8/errors/operation_access_denied_error.proto b/google/ads/googleads/v8/errors/operation_access_denied_error.proto new file mode 100644 index 000000000..d05a83c56 --- /dev/null +++ b/google/ads/googleads/v8/errors/operation_access_denied_error.proto @@ -0,0 +1,74 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "OperationAccessDeniedErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing operation access denied errors. + +// Container for enum describing possible operation access denied errors. +message OperationAccessDeniedErrorEnum { + // Enum describing possible operation access denied errors. + enum OperationAccessDeniedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Unauthorized invocation of a service's method (get, mutate, etc.) + ACTION_NOT_PERMITTED = 2; + + // Unauthorized CREATE operation in invoking a service's mutate method. + CREATE_OPERATION_NOT_PERMITTED = 3; + + // Unauthorized REMOVE operation in invoking a service's mutate method. + REMOVE_OPERATION_NOT_PERMITTED = 4; + + // Unauthorized UPDATE operation in invoking a service's mutate method. + UPDATE_OPERATION_NOT_PERMITTED = 5; + + // A mutate action is not allowed on this resource, from this client. + MUTATE_ACTION_NOT_PERMITTED_FOR_CLIENT = 6; + + // This operation is not permitted on this campaign type + OPERATION_NOT_PERMITTED_FOR_CAMPAIGN_TYPE = 7; + + // A CREATE operation may not set status to REMOVED. + CREATE_AS_REMOVED_NOT_PERMITTED = 8; + + // This operation is not allowed because the resource is removed. + OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 9; + + // This operation is not permitted on this ad group type. + OPERATION_NOT_PERMITTED_FOR_AD_GROUP_TYPE = 10; + + // The mutate is not allowed for this customer. + MUTATE_NOT_PERMITTED_FOR_CUSTOMER = 11; + } + + +} diff --git a/google/ads/googleads/v8/errors/operator_error.proto b/google/ads/googleads/v8/errors/operator_error.proto new file mode 100644 index 000000000..15a266352 --- /dev/null +++ b/google/ads/googleads/v8/errors/operator_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "OperatorErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing operator errors. + +// Container for enum describing possible operator errors. +message OperatorErrorEnum { + // Enum describing possible operator errors. + enum OperatorError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Operator not supported. + OPERATOR_NOT_SUPPORTED = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/partial_failure_error.proto b/google/ads/googleads/v8/errors/partial_failure_error.proto new file mode 100644 index 000000000..316c95f18 --- /dev/null +++ b/google/ads/googleads/v8/errors/partial_failure_error.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "PartialFailureErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing partial failure errors. + +// Container for enum describing possible partial failure errors. +message PartialFailureErrorEnum { + // Enum describing possible partial failure errors. + enum PartialFailureError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The partial failure field was false in the request. + // This method requires this field be set to true. + PARTIAL_FAILURE_MODE_REQUIRED = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/payments_account_error.proto b/google/ads/googleads/v8/errors/payments_account_error.proto new file mode 100644 index 000000000..824203270 --- /dev/null +++ b/google/ads/googleads/v8/errors/payments_account_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "PaymentsAccountErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing payments account service errors. + +// Container for enum describing possible errors in payments account service. +message PaymentsAccountErrorEnum { + // Enum describing possible errors in payments account service. + enum PaymentsAccountError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Manager customers are not supported for payments account service. + NOT_SUPPORTED_FOR_MANAGER_CUSTOMER = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/policy_finding_error.proto b/google/ads/googleads/v8/errors/policy_finding_error.proto new file mode 100644 index 000000000..f28a9c46e --- /dev/null +++ b/google/ads/googleads/v8/errors/policy_finding_error.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "PolicyFindingErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing policy finding errors. + +// Container for enum describing possible policy finding errors. +message PolicyFindingErrorEnum { + // Enum describing possible policy finding errors. + enum PolicyFindingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The resource has been disapproved since the policy summary includes + // policy topics of type PROHIBITED. + POLICY_FINDING = 2; + + // The given policy topic does not exist. + POLICY_TOPIC_NOT_FOUND = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/policy_validation_parameter_error.proto b/google/ads/googleads/v8/errors/policy_validation_parameter_error.proto new file mode 100644 index 000000000..a71eac51d --- /dev/null +++ b/google/ads/googleads/v8/errors/policy_validation_parameter_error.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "PolicyValidationParameterErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing policy validation parameter errors. + +// Container for enum describing possible policy validation parameter errors. +message PolicyValidationParameterErrorEnum { + // Enum describing possible policy validation parameter errors. + enum PolicyValidationParameterError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Ignorable policy topics are not supported for the ad type. + UNSUPPORTED_AD_TYPE_FOR_IGNORABLE_POLICY_TOPICS = 2; + + // Exempt policy violation keys are not supported for the ad type. + UNSUPPORTED_AD_TYPE_FOR_EXEMPT_POLICY_VIOLATION_KEYS = 3; + + // Cannot set ignorable policy topics and exempt policy violation keys in + // the same policy violation parameter. + CANNOT_SET_BOTH_IGNORABLE_POLICY_TOPICS_AND_EXEMPT_POLICY_VIOLATION_KEYS = 4; + } + + +} diff --git a/google/ads/googleads/v8/errors/policy_violation_error.proto b/google/ads/googleads/v8/errors/policy_violation_error.proto new file mode 100644 index 000000000..a3c540100 --- /dev/null +++ b/google/ads/googleads/v8/errors/policy_violation_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "PolicyViolationErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing policy violation errors. + +// Container for enum describing possible policy violation errors. +message PolicyViolationErrorEnum { + // Enum describing possible policy violation errors. + enum PolicyViolationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A policy was violated. See PolicyViolationDetails for more detail. + POLICY_ERROR = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/query_error.proto b/google/ads/googleads/v8/errors/query_error.proto new file mode 100644 index 000000000..48e1c9389 --- /dev/null +++ b/google/ads/googleads/v8/errors/query_error.proto @@ -0,0 +1,222 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "QueryErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing query errors. + +// Container for enum describing possible query errors. +message QueryErrorEnum { + // Enum describing possible query errors. + enum QueryError { + // Name unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Returned if all other query error reasons are not applicable. + QUERY_ERROR = 50; + + // A condition used in the query references an invalid enum constant. + BAD_ENUM_CONSTANT = 18; + + // Query contains an invalid escape sequence. + BAD_ESCAPE_SEQUENCE = 7; + + // Field name is invalid. + BAD_FIELD_NAME = 12; + + // Limit value is invalid (i.e. not a number) + BAD_LIMIT_VALUE = 15; + + // Encountered number can not be parsed. + BAD_NUMBER = 5; + + // Invalid operator encountered. + BAD_OPERATOR = 3; + + // Parameter unknown or not supported. + BAD_PARAMETER_NAME = 61; + + // Parameter have invalid value. + BAD_PARAMETER_VALUE = 62; + + // Invalid resource type was specified in the FROM clause. + BAD_RESOURCE_TYPE_IN_FROM_CLAUSE = 45; + + // Non-ASCII symbol encountered outside of strings. + BAD_SYMBOL = 2; + + // Value is invalid. + BAD_VALUE = 4; + + // Date filters fail to restrict date to a range smaller than 31 days. + // Applicable if the query is segmented by date. + DATE_RANGE_TOO_WIDE = 36; + + // Filters on date/week/month/quarter have a start date after + // end date. + DATE_RANGE_TOO_NARROW = 60; + + // Expected AND between values with BETWEEN operator. + EXPECTED_AND = 30; + + // Expecting ORDER BY to have BY. + EXPECTED_BY = 14; + + // There was no dimension field selected. + EXPECTED_DIMENSION_FIELD_IN_SELECT_CLAUSE = 37; + + // Missing filters on date related fields. + EXPECTED_FILTERS_ON_DATE_RANGE = 55; + + // Missing FROM clause. + EXPECTED_FROM = 44; + + // The operator used in the conditions requires the value to be a list. + EXPECTED_LIST = 41; + + // Fields used in WHERE or ORDER BY clauses are missing from the SELECT + // clause. + EXPECTED_REFERENCED_FIELD_IN_SELECT_CLAUSE = 16; + + // SELECT is missing at the beginning of query. + EXPECTED_SELECT = 13; + + // A list was passed as a value to a condition whose operator expects a + // single value. + EXPECTED_SINGLE_VALUE = 42; + + // Missing one or both values with BETWEEN operator. + EXPECTED_VALUE_WITH_BETWEEN_OPERATOR = 29; + + // Invalid date format. Expected 'YYYY-MM-DD'. + INVALID_DATE_FORMAT = 38; + + // Value passed was not a string when it should have been. I.e., it was a + // number or unquoted literal. + INVALID_STRING_VALUE = 57; + + // A String value passed to the BETWEEN operator does not parse as a date. + INVALID_VALUE_WITH_BETWEEN_OPERATOR = 26; + + // The value passed to the DURING operator is not a Date range literal + INVALID_VALUE_WITH_DURING_OPERATOR = 22; + + // An invalid value was passed to the LIKE operator. + INVALID_VALUE_WITH_LIKE_OPERATOR = 56; + + // An operator was provided that is inapplicable to the field being + // filtered. + OPERATOR_FIELD_MISMATCH = 35; + + // A Condition was found with an empty list. + PROHIBITED_EMPTY_LIST_IN_CONDITION = 28; + + // A condition used in the query references an unsupported enum constant. + PROHIBITED_ENUM_CONSTANT = 54; + + // Fields that are not allowed to be selected together were included in + // the SELECT clause. + PROHIBITED_FIELD_COMBINATION_IN_SELECT_CLAUSE = 31; + + // A field that is not orderable was included in the ORDER BY clause. + PROHIBITED_FIELD_IN_ORDER_BY_CLAUSE = 40; + + // A field that is not selectable was included in the SELECT clause. + PROHIBITED_FIELD_IN_SELECT_CLAUSE = 23; + + // A field that is not filterable was included in the WHERE clause. + PROHIBITED_FIELD_IN_WHERE_CLAUSE = 24; + + // Resource type specified in the FROM clause is not supported by this + // service. + PROHIBITED_RESOURCE_TYPE_IN_FROM_CLAUSE = 43; + + // A field that comes from an incompatible resource was included in the + // SELECT clause. + PROHIBITED_RESOURCE_TYPE_IN_SELECT_CLAUSE = 48; + + // A field that comes from an incompatible resource was included in the + // WHERE clause. + PROHIBITED_RESOURCE_TYPE_IN_WHERE_CLAUSE = 58; + + // A metric incompatible with the main resource or other selected + // segmenting resources was included in the SELECT or WHERE clause. + PROHIBITED_METRIC_IN_SELECT_OR_WHERE_CLAUSE = 49; + + // A segment incompatible with the main resource or other selected + // segmenting resources was included in the SELECT or WHERE clause. + PROHIBITED_SEGMENT_IN_SELECT_OR_WHERE_CLAUSE = 51; + + // A segment in the SELECT clause is incompatible with a metric in the + // SELECT or WHERE clause. + PROHIBITED_SEGMENT_WITH_METRIC_IN_SELECT_OR_WHERE_CLAUSE = 53; + + // The value passed to the limit clause is too low. + LIMIT_VALUE_TOO_LOW = 25; + + // Query has a string containing a newline character. + PROHIBITED_NEWLINE_IN_STRING = 8; + + // List contains values of different types. + PROHIBITED_VALUE_COMBINATION_IN_LIST = 10; + + // The values passed to the BETWEEN operator are not of the same type. + PROHIBITED_VALUE_COMBINATION_WITH_BETWEEN_OPERATOR = 21; + + // Query contains unterminated string. + STRING_NOT_TERMINATED = 6; + + // Too many segments are specified in SELECT clause. + TOO_MANY_SEGMENTS = 34; + + // Query is incomplete and cannot be parsed. + UNEXPECTED_END_OF_QUERY = 9; + + // FROM clause cannot be specified in this query. + UNEXPECTED_FROM_CLAUSE = 47; + + // Query contains one or more unrecognized fields. + UNRECOGNIZED_FIELD = 32; + + // Query has an unexpected extra part. + UNEXPECTED_INPUT = 11; + + // Metrics cannot be requested for a manager account. To retrieve metrics, + // issue separate requests against each client account under the manager + // account. + REQUESTED_METRICS_FOR_MANAGER = 59; + + // The number of values (right-hand-side operands) in a filter exceeds the + // limit. + FILTER_HAS_TOO_MANY_VALUES = 63; + } + + +} diff --git a/google/ads/googleads/v8/errors/quota_error.proto b/google/ads/googleads/v8/errors/quota_error.proto new file mode 100644 index 000000000..3749277db --- /dev/null +++ b/google/ads/googleads/v8/errors/quota_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "QuotaErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing quota errors. + +// Container for enum describing possible quota errors. +message QuotaErrorEnum { + // Enum describing possible quota errors. + enum QuotaError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Too many requests. + RESOURCE_EXHAUSTED = 2; + + // Access is prohibited. + ACCESS_PROHIBITED = 3; + + // Too many requests in a short amount of time. + RESOURCE_TEMPORARILY_EXHAUSTED = 4; + } + + +} diff --git a/google/ads/googleads/v8/errors/range_error.proto b/google/ads/googleads/v8/errors/range_error.proto new file mode 100644 index 000000000..0a9ef94de --- /dev/null +++ b/google/ads/googleads/v8/errors/range_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "RangeErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing range errors. + +// Container for enum describing possible range errors. +message RangeErrorEnum { + // Enum describing possible range errors. + enum RangeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Too low. + TOO_LOW = 2; + + // Too high. + TOO_HIGH = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/reach_plan_error.proto b/google/ads/googleads/v8/errors/reach_plan_error.proto new file mode 100644 index 000000000..95d451859 --- /dev/null +++ b/google/ads/googleads/v8/errors/reach_plan_error.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ReachPlanErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing errors generated from ReachPlanService. + +// Container for enum describing possible errors returned from +// the ReachPlanService. +message ReachPlanErrorEnum { + // Enum describing possible errors from ReachPlanService. + enum ReachPlanError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Not forecastable due to missing rate card data. + NOT_FORECASTABLE_MISSING_RATE = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/recommendation_error.proto b/google/ads/googleads/v8/errors/recommendation_error.proto new file mode 100644 index 000000000..79f5b3fcf --- /dev/null +++ b/google/ads/googleads/v8/errors/recommendation_error.proto @@ -0,0 +1,90 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "RecommendationErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing errors from applying a recommendation. + +// Container for enum describing possible errors from applying a recommendation. +message RecommendationErrorEnum { + // Enum describing possible errors from applying a recommendation. + enum RecommendationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The specified budget amount is too low e.g. lower than minimum currency + // unit or lower than ad group minimum cost-per-click. + BUDGET_AMOUNT_TOO_SMALL = 2; + + // The specified budget amount is too large. + BUDGET_AMOUNT_TOO_LARGE = 3; + + // The specified budget amount is not a valid amount. e.g. not a multiple + // of minimum currency unit. + INVALID_BUDGET_AMOUNT = 4; + + // The specified keyword or ad violates ad policy. + POLICY_ERROR = 5; + + // The specified bid amount is not valid. e.g. too many fractional digits, + // or negative amount. + INVALID_BID_AMOUNT = 6; + + // The number of keywords in ad group have reached the maximum allowed. + ADGROUP_KEYWORD_LIMIT = 7; + + // The recommendation requested to apply has already been applied. + RECOMMENDATION_ALREADY_APPLIED = 8; + + // The recommendation requested to apply has been invalidated. + RECOMMENDATION_INVALIDATED = 9; + + // The number of operations in a single request exceeds the maximum allowed. + TOO_MANY_OPERATIONS = 10; + + // There are no operations in the request. + NO_OPERATIONS = 11; + + // Operations with multiple recommendation types are not supported when + // partial failure mode is not enabled. + DIFFERENT_TYPES_NOT_SUPPORTED = 12; + + // Request contains multiple operations with the same resource_name. + DUPLICATE_RESOURCE_NAME = 13; + + // The recommendation requested to dismiss has already been dismissed. + RECOMMENDATION_ALREADY_DISMISSED = 14; + + // The recommendation apply request was malformed and invalid. + INVALID_APPLY_REQUEST = 15; + } + + +} diff --git a/google/ads/googleads/v8/errors/region_code_error.proto b/google/ads/googleads/v8/errors/region_code_error.proto new file mode 100644 index 000000000..90c417cf5 --- /dev/null +++ b/google/ads/googleads/v8/errors/region_code_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "RegionCodeErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing region code errors. + +// Container for enum describing possible region code errors. +message RegionCodeErrorEnum { + // Enum describing possible region code errors. + enum RegionCodeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Invalid region code. + INVALID_REGION_CODE = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/request_error.proto b/google/ads/googleads/v8/errors/request_error.proto new file mode 100644 index 000000000..b0e52db71 --- /dev/null +++ b/google/ads/googleads/v8/errors/request_error.proto @@ -0,0 +1,119 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "RequestErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing request errors. + +// Container for enum describing possible request errors. +message RequestErrorEnum { + // Enum describing possible request errors. + enum RequestError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Resource name is required for this request. + RESOURCE_NAME_MISSING = 3; + + // Resource name provided is malformed. + RESOURCE_NAME_MALFORMED = 4; + + // Resource name provided is malformed. + BAD_RESOURCE_ID = 17; + + // Customer ID is invalid. + INVALID_CUSTOMER_ID = 16; + + // Mutate operation should have either create, update, or remove specified. + OPERATION_REQUIRED = 5; + + // Requested resource not found. + RESOURCE_NOT_FOUND = 6; + + // Next page token specified in user request is invalid. + INVALID_PAGE_TOKEN = 7; + + // Next page token specified in user request has expired. + EXPIRED_PAGE_TOKEN = 8; + + // Page size specified in user request is invalid. + INVALID_PAGE_SIZE = 22; + + // Required field is missing. + REQUIRED_FIELD_MISSING = 9; + + // The field cannot be modified because it's immutable. It's also possible + // that the field can be modified using 'create' operation but not 'update'. + IMMUTABLE_FIELD = 11; + + // Received too many entries in request. + TOO_MANY_MUTATE_OPERATIONS = 13; + + // Request cannot be executed by a manager account. + CANNOT_BE_EXECUTED_BY_MANAGER_ACCOUNT = 14; + + // Mutate request was attempting to modify a readonly field. + // For instance, Budget fields can be requested for Ad Group, + // but are read-only for adGroups:mutate. + CANNOT_MODIFY_FOREIGN_FIELD = 15; + + // Enum value is not permitted. + INVALID_ENUM_VALUE = 18; + + // The developer-token parameter is required for all requests. + DEVELOPER_TOKEN_PARAMETER_MISSING = 19; + + // The login-customer-id parameter is required for this request. + LOGIN_CUSTOMER_ID_PARAMETER_MISSING = 20; + + // page_token is set in the validate only request + VALIDATE_ONLY_REQUEST_HAS_PAGE_TOKEN = 21; + + // return_summary_row cannot be enabled if request did not select any + // metrics field. + CANNOT_RETURN_SUMMARY_ROW_FOR_REQUEST_WITHOUT_METRICS = 29; + + // return_summary_row should not be enabled for validate only requests. + CANNOT_RETURN_SUMMARY_ROW_FOR_VALIDATE_ONLY_REQUESTS = 30; + + // return_summary_row parameter value should be the same between requests + // with page_token field set and their original request. + INCONSISTENT_RETURN_SUMMARY_ROW_VALUE = 31; + + // The total results count cannot be returned if it was not requested in the + // original request. + TOTAL_RESULTS_COUNT_NOT_ORIGINALLY_REQUESTED = 32; + + // Deadline specified by the client was too short. + RPC_DEADLINE_TOO_SHORT = 33; + } + + +} diff --git a/google/ads/googleads/v8/errors/resource_access_denied_error.proto b/google/ads/googleads/v8/errors/resource_access_denied_error.proto new file mode 100644 index 000000000..403de84d1 --- /dev/null +++ b/google/ads/googleads/v8/errors/resource_access_denied_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ResourceAccessDeniedErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing resource access denied errors. + +// Container for enum describing possible resource access denied errors. +message ResourceAccessDeniedErrorEnum { + // Enum describing possible resource access denied errors. + enum ResourceAccessDeniedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // User did not have write access. + WRITE_ACCESS_DENIED = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/resource_count_limit_exceeded_error.proto b/google/ads/googleads/v8/errors/resource_count_limit_exceeded_error.proto new file mode 100644 index 000000000..d737bc69c --- /dev/null +++ b/google/ads/googleads/v8/errors/resource_count_limit_exceeded_error.proto @@ -0,0 +1,93 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ResourceCountLimitExceededErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing resource count limit exceeded errors. + +// Container for enum describing possible resource count limit exceeded errors. +message ResourceCountLimitExceededErrorEnum { + // Enum describing possible resource count limit exceeded errors. + enum ResourceCountLimitExceededError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Indicates that this request would exceed the number of allowed resources + // for the Google Ads account. The exact resource type and limit being + // checked can be inferred from accountLimitType. + ACCOUNT_LIMIT = 2; + + // Indicates that this request would exceed the number of allowed resources + // in a Campaign. The exact resource type and limit being checked can be + // inferred from accountLimitType, and the numeric id of the + // Campaign involved is given by enclosingId. + CAMPAIGN_LIMIT = 3; + + // Indicates that this request would exceed the number of allowed resources + // in an ad group. The exact resource type and limit being checked can be + // inferred from accountLimitType, and the numeric id of the + // ad group involved is given by enclosingId. + ADGROUP_LIMIT = 4; + + // Indicates that this request would exceed the number of allowed resources + // in an ad group ad. The exact resource type and limit being checked can + // be inferred from accountLimitType, and the enclosingId + // contains the ad group id followed by the ad id, separated by a single + // comma (,). + AD_GROUP_AD_LIMIT = 5; + + // Indicates that this request would exceed the number of allowed resources + // in an ad group criterion. The exact resource type and limit being checked + // can be inferred from accountLimitType, and the + // enclosingId contains the ad group id followed by the + // criterion id, separated by a single comma (,). + AD_GROUP_CRITERION_LIMIT = 6; + + // Indicates that this request would exceed the number of allowed resources + // in this shared set. The exact resource type and limit being checked can + // be inferred from accountLimitType, and the numeric id of the + // shared set involved is given by enclosingId. + SHARED_SET_LIMIT = 7; + + // Exceeds a limit related to a matching function. + MATCHING_FUNCTION_LIMIT = 8; + + // The response for this request would exceed the maximum number of rows + // that can be returned. + RESPONSE_ROW_LIMIT_EXCEEDED = 9; + + // This request would exceed a limit on the number of allowed resources. + // The details of which type of limit was exceeded will eventually be + // returned in ErrorDetails. + RESOURCE_LIMIT = 10; + } + + +} diff --git a/google/ads/googleads/v8/errors/setting_error.proto b/google/ads/googleads/v8/errors/setting_error.proto new file mode 100644 index 000000000..7d3290a72 --- /dev/null +++ b/google/ads/googleads/v8/errors/setting_error.proto @@ -0,0 +1,85 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "SettingErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing setting errors. + +// Container for enum describing possible setting errors. +message SettingErrorEnum { + // Enum describing possible setting errors. + enum SettingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The campaign setting is not available for this Google Ads account. + SETTING_TYPE_IS_NOT_AVAILABLE = 3; + + // The setting is not compatible with the campaign. + SETTING_TYPE_IS_NOT_COMPATIBLE_WITH_CAMPAIGN = 4; + + // The supplied TargetingSetting contains an invalid CriterionTypeGroup. See + // CriterionTypeGroup documentation for CriterionTypeGroups allowed + // in Campaign or AdGroup TargetingSettings. + TARGETING_SETTING_CONTAINS_INVALID_CRITERION_TYPE_GROUP = 5; + + // TargetingSetting must not explicitly + // set any of the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, + // PARENT, INCOME_RANGE) to false (it's okay to not set them at all, in + // which case the system will set them to true automatically). + TARGETING_SETTING_DEMOGRAPHIC_CRITERION_TYPE_GROUPS_MUST_BE_SET_TO_TARGET_ALL = 6; + + // TargetingSetting cannot change any of + // the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, PARENT, + // INCOME_RANGE) from true to false. + TARGETING_SETTING_CANNOT_CHANGE_TARGET_ALL_TO_FALSE_FOR_DEMOGRAPHIC_CRITERION_TYPE_GROUP = 7; + + // At least one feed id should be present. + DYNAMIC_SEARCH_ADS_SETTING_AT_LEAST_ONE_FEED_ID_MUST_BE_PRESENT = 8; + + // The supplied DynamicSearchAdsSetting contains an invalid domain name. + DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_DOMAIN_NAME = 9; + + // The supplied DynamicSearchAdsSetting contains a subdomain name. + DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_SUBDOMAIN_NAME = 10; + + // The supplied DynamicSearchAdsSetting contains an invalid language code. + DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_LANGUAGE_CODE = 11; + + // TargetingSettings in search campaigns should not have + // CriterionTypeGroup.PLACEMENT set to targetAll. + TARGET_ALL_IS_NOT_ALLOWED_FOR_PLACEMENT_IN_SEARCH_CAMPAIGN = 12; + + // The setting value is not compatible with the campaign type. + SETTING_VALUE_NOT_COMPATIBLE_WITH_CAMPAIGN = 20; + } + + +} diff --git a/google/ads/googleads/v8/errors/shared_criterion_error.proto b/google/ads/googleads/v8/errors/shared_criterion_error.proto new file mode 100644 index 000000000..fd9196517 --- /dev/null +++ b/google/ads/googleads/v8/errors/shared_criterion_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "SharedCriterionErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing shared criterion errors. + +// Container for enum describing possible shared criterion errors. +message SharedCriterionErrorEnum { + // Enum describing possible shared criterion errors. + enum SharedCriterionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The criterion is not appropriate for the shared set type. + CRITERION_TYPE_NOT_ALLOWED_FOR_SHARED_SET_TYPE = 2; + } + + +} diff --git a/google/ads/googleads/v8/errors/shared_set_error.proto b/google/ads/googleads/v8/errors/shared_set_error.proto new file mode 100644 index 000000000..741806d01 --- /dev/null +++ b/google/ads/googleads/v8/errors/shared_set_error.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "SharedSetErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing shared set errors. + +// Container for enum describing possible shared set errors. +message SharedSetErrorEnum { + // Enum describing possible shared set errors. + enum SharedSetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The customer cannot create this type of shared set. + CUSTOMER_CANNOT_CREATE_SHARED_SET_OF_THIS_TYPE = 2; + + // A shared set with this name already exists. + DUPLICATE_NAME = 3; + + // Removed shared sets cannot be mutated. + SHARED_SET_REMOVED = 4; + + // The shared set cannot be removed because it is in use. + SHARED_SET_IN_USE = 5; + } + + +} diff --git a/google/ads/googleads/v8/errors/size_limit_error.proto b/google/ads/googleads/v8/errors/size_limit_error.proto new file mode 100644 index 000000000..f604f49d2 --- /dev/null +++ b/google/ads/googleads/v8/errors/size_limit_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "SizeLimitErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing size limit errors. + +// Container for enum describing possible size limit errors. +message SizeLimitErrorEnum { + // Enum describing possible size limit errors. + enum SizeLimitError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The number of entries in the request exceeds the system limit. + REQUEST_SIZE_LIMIT_EXCEEDED = 2; + + // The number of entries in the response exceeds the system limit. + RESPONSE_SIZE_LIMIT_EXCEEDED = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/string_format_error.proto b/google/ads/googleads/v8/errors/string_format_error.proto new file mode 100644 index 000000000..ef958095d --- /dev/null +++ b/google/ads/googleads/v8/errors/string_format_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "StringFormatErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing string format errors. + +// Container for enum describing possible string format errors. +message StringFormatErrorEnum { + // Enum describing possible string format errors. + enum StringFormatError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The input string value contains disallowed characters. + ILLEGAL_CHARS = 2; + + // The input string value is invalid for the associated field. + INVALID_FORMAT = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/string_length_error.proto b/google/ads/googleads/v8/errors/string_length_error.proto new file mode 100644 index 000000000..3c3943824 --- /dev/null +++ b/google/ads/googleads/v8/errors/string_length_error.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "StringLengthErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing string length errors. + +// Container for enum describing possible string length errors. +message StringLengthErrorEnum { + // Enum describing possible string length errors. + enum StringLengthError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The specified field should have a least one non-whitespace character in + // it. + EMPTY = 4; + + // Too short. + TOO_SHORT = 2; + + // Too long. + TOO_LONG = 3; + } + + +} diff --git a/google/ads/googleads/v8/errors/third_party_app_analytics_link_error.proto b/google/ads/googleads/v8/errors/third_party_app_analytics_link_error.proto new file mode 100644 index 000000000..bb113c656 --- /dev/null +++ b/google/ads/googleads/v8/errors/third_party_app_analytics_link_error.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ThirdPartyAppAnalyticsLinkErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing ThirdPartyAppAnalyticsLink errors. + +// Container for enum describing possible third party app analytics link errors. +message ThirdPartyAppAnalyticsLinkErrorEnum { + // Enum describing possible third party app analytics link errors. + enum ThirdPartyAppAnalyticsLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The provided analytics provider ID is invalid. + INVALID_ANALYTICS_PROVIDER_ID = 2; + + // The provided mobile app ID is invalid. + INVALID_MOBILE_APP_ID = 3; + + // The mobile app corresponding to the provided app ID is not + // active/enabled. + MOBILE_APP_IS_NOT_ENABLED = 4; + + // Regenerating shareable link ID is only allowed on active links + CANNOT_REGENERATE_SHAREABLE_LINK_ID_FOR_REMOVED_LINK = 5; + } + + +} diff --git a/google/ads/googleads/v8/errors/time_zone_error.proto b/google/ads/googleads/v8/errors/time_zone_error.proto new file mode 100644 index 000000000..e8ea6edbc --- /dev/null +++ b/google/ads/googleads/v8/errors/time_zone_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "TimeZoneErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing time zone errors. + +// Container for enum describing possible time zone errors. +message TimeZoneErrorEnum { + // Enum describing possible currency code errors. + enum TimeZoneError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Time zone is not valid. + INVALID_TIME_ZONE = 5; + } + + +} diff --git a/google/ads/googleads/v8/errors/url_field_error.proto b/google/ads/googleads/v8/errors/url_field_error.proto new file mode 100644 index 000000000..21dc5ef37 --- /dev/null +++ b/google/ads/googleads/v8/errors/url_field_error.proto @@ -0,0 +1,214 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "UrlFieldErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing url field errors. + +// Container for enum describing possible url field errors. +message UrlFieldErrorEnum { + // Enum describing possible url field errors. + enum UrlFieldError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The tracking url template is invalid. + INVALID_TRACKING_URL_TEMPLATE = 2; + + // The tracking url template contains invalid tag. + INVALID_TAG_IN_TRACKING_URL_TEMPLATE = 3; + + // The tracking url template must contain at least one tag (e.g. {lpurl}), + // This applies only to tracking url template associated with website ads or + // product ads. + MISSING_TRACKING_URL_TEMPLATE_TAG = 4; + + // The tracking url template must start with a valid protocol (or lpurl + // tag). + MISSING_PROTOCOL_IN_TRACKING_URL_TEMPLATE = 5; + + // The tracking url template starts with an invalid protocol. + INVALID_PROTOCOL_IN_TRACKING_URL_TEMPLATE = 6; + + // The tracking url template contains illegal characters. + MALFORMED_TRACKING_URL_TEMPLATE = 7; + + // The tracking url template must contain a host name (or lpurl tag). + MISSING_HOST_IN_TRACKING_URL_TEMPLATE = 8; + + // The tracking url template has an invalid or missing top level domain + // extension. + INVALID_TLD_IN_TRACKING_URL_TEMPLATE = 9; + + // The tracking url template contains nested occurrences of the same + // conditional tag (i.e. {ifmobile:{ifmobile:x}}). + REDUNDANT_NESTED_TRACKING_URL_TEMPLATE_TAG = 10; + + // The final url is invalid. + INVALID_FINAL_URL = 11; + + // The final url contains invalid tag. + INVALID_TAG_IN_FINAL_URL = 12; + + // The final url contains nested occurrences of the same conditional tag + // (i.e. {ifmobile:{ifmobile:x}}). + REDUNDANT_NESTED_FINAL_URL_TAG = 13; + + // The final url must start with a valid protocol. + MISSING_PROTOCOL_IN_FINAL_URL = 14; + + // The final url starts with an invalid protocol. + INVALID_PROTOCOL_IN_FINAL_URL = 15; + + // The final url contains illegal characters. + MALFORMED_FINAL_URL = 16; + + // The final url must contain a host name. + MISSING_HOST_IN_FINAL_URL = 17; + + // The tracking url template has an invalid or missing top level domain + // extension. + INVALID_TLD_IN_FINAL_URL = 18; + + // The final mobile url is invalid. + INVALID_FINAL_MOBILE_URL = 19; + + // The final mobile url contains invalid tag. + INVALID_TAG_IN_FINAL_MOBILE_URL = 20; + + // The final mobile url contains nested occurrences of the same conditional + // tag (i.e. {ifmobile:{ifmobile:x}}). + REDUNDANT_NESTED_FINAL_MOBILE_URL_TAG = 21; + + // The final mobile url must start with a valid protocol. + MISSING_PROTOCOL_IN_FINAL_MOBILE_URL = 22; + + // The final mobile url starts with an invalid protocol. + INVALID_PROTOCOL_IN_FINAL_MOBILE_URL = 23; + + // The final mobile url contains illegal characters. + MALFORMED_FINAL_MOBILE_URL = 24; + + // The final mobile url must contain a host name. + MISSING_HOST_IN_FINAL_MOBILE_URL = 25; + + // The tracking url template has an invalid or missing top level domain + // extension. + INVALID_TLD_IN_FINAL_MOBILE_URL = 26; + + // The final app url is invalid. + INVALID_FINAL_APP_URL = 27; + + // The final app url contains invalid tag. + INVALID_TAG_IN_FINAL_APP_URL = 28; + + // The final app url contains nested occurrences of the same conditional tag + // (i.e. {ifmobile:{ifmobile:x}}). + REDUNDANT_NESTED_FINAL_APP_URL_TAG = 29; + + // More than one app url found for the same OS type. + MULTIPLE_APP_URLS_FOR_OSTYPE = 30; + + // The OS type given for an app url is not valid. + INVALID_OSTYPE = 31; + + // The protocol given for an app url is not valid. (E.g. "android-app://") + INVALID_PROTOCOL_FOR_APP_URL = 32; + + // The package id (app id) given for an app url is not valid. + INVALID_PACKAGE_ID_FOR_APP_URL = 33; + + // The number of url custom parameters for an resource exceeds the maximum + // limit allowed. + URL_CUSTOM_PARAMETERS_COUNT_EXCEEDS_LIMIT = 34; + + // An invalid character appears in the parameter key. + INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_KEY = 39; + + // An invalid character appears in the parameter value. + INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_VALUE = 40; + + // The url custom parameter value fails url tag validation. + INVALID_TAG_IN_URL_CUSTOM_PARAMETER_VALUE = 41; + + // The custom parameter contains nested occurrences of the same conditional + // tag (i.e. {ifmobile:{ifmobile:x}}). + REDUNDANT_NESTED_URL_CUSTOM_PARAMETER_TAG = 42; + + // The protocol (http:// or https://) is missing. + MISSING_PROTOCOL = 43; + + // Unsupported protocol in URL. Only http and https are supported. + INVALID_PROTOCOL = 52; + + // The url is invalid. + INVALID_URL = 44; + + // Destination Url is deprecated. + DESTINATION_URL_DEPRECATED = 45; + + // The url contains invalid tag. + INVALID_TAG_IN_URL = 46; + + // The url must contain at least one tag (e.g. {lpurl}). + MISSING_URL_TAG = 47; + + // Duplicate url id. + DUPLICATE_URL_ID = 48; + + // Invalid url id. + INVALID_URL_ID = 49; + + // The final url suffix cannot begin with '?' or '&' characters and must be + // a valid query string. + FINAL_URL_SUFFIX_MALFORMED = 50; + + // The final url suffix cannot contain {lpurl} related or {ignore} tags. + INVALID_TAG_IN_FINAL_URL_SUFFIX = 51; + + // The top level domain is invalid, e.g. not a public top level domain + // listed in publicsuffix.org. + INVALID_TOP_LEVEL_DOMAIN = 53; + + // Malformed top level domain in URL. + MALFORMED_TOP_LEVEL_DOMAIN = 54; + + // Malformed URL. + MALFORMED_URL = 55; + + // No host found in URL. + MISSING_HOST = 56; + + // Custom parameter value cannot be null. + NULL_CUSTOM_PARAMETER_VALUE = 57; + } + + +} diff --git a/google/ads/googleads/v8/errors/user_data_error.proto b/google/ads/googleads/v8/errors/user_data_error.proto new file mode 100644 index 000000000..b6a2a1f5b --- /dev/null +++ b/google/ads/googleads/v8/errors/user_data_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "UserDataErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing user data errors. + +// Container for enum describing possible user data errors. +message UserDataErrorEnum { + // Enum describing possible request errors. + enum UserDataError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Customer is not allowed to perform operations related to Customer Match. + OPERATIONS_FOR_CUSTOMER_MATCH_NOT_ALLOWED = 2; + + // Maximum number of user identifiers allowed for each mutate is 100. + TOO_MANY_USER_IDENTIFIERS = 3; + + // Current user list is not applicable for the given customer. + USER_LIST_NOT_APPLICABLE = 4; + } + + +} diff --git a/google/ads/googleads/v8/errors/user_list_error.proto b/google/ads/googleads/v8/errors/user_list_error.proto new file mode 100644 index 000000000..d1fae2abf --- /dev/null +++ b/google/ads/googleads/v8/errors/user_list_error.proto @@ -0,0 +1,129 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "UserListErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing user list errors. + +// Container for enum describing possible user list errors. +message UserListErrorEnum { + // Enum describing possible user list errors. + enum UserListError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Creating and updating external remarketing user lists is not supported. + EXTERNAL_REMARKETING_USER_LIST_MUTATE_NOT_SUPPORTED = 2; + + // Concrete type of user list is required. + CONCRETE_TYPE_REQUIRED = 3; + + // Creating/updating user list conversion types requires specifying the + // conversion type Id. + CONVERSION_TYPE_ID_REQUIRED = 4; + + // Remarketing user list cannot have duplicate conversion types. + DUPLICATE_CONVERSION_TYPES = 5; + + // Conversion type is invalid/unknown. + INVALID_CONVERSION_TYPE = 6; + + // User list description is empty or invalid. + INVALID_DESCRIPTION = 7; + + // User list name is empty or invalid. + INVALID_NAME = 8; + + // Type of the UserList does not match. + INVALID_TYPE = 9; + + // Embedded logical user lists are not allowed. + CAN_NOT_ADD_LOGICAL_LIST_AS_LOGICAL_LIST_OPERAND = 10; + + // User list rule operand is invalid. + INVALID_USER_LIST_LOGICAL_RULE_OPERAND = 11; + + // Name is already being used for another user list for the account. + NAME_ALREADY_USED = 12; + + // Name is required when creating a new conversion type. + NEW_CONVERSION_TYPE_NAME_REQUIRED = 13; + + // The given conversion type name has been used. + CONVERSION_TYPE_NAME_ALREADY_USED = 14; + + // Only an owner account may edit a user list. + OWNERSHIP_REQUIRED_FOR_SET = 15; + + // Creating user list without setting type in oneof user_list field, or + // creating/updating read-only user list types is not allowed. + USER_LIST_MUTATE_NOT_SUPPORTED = 16; + + // Rule is invalid. + INVALID_RULE = 17; + + // The specified date range is empty. + INVALID_DATE_RANGE = 27; + + // A UserList which is privacy sensitive or legal rejected cannot be mutated + // by external users. + CAN_NOT_MUTATE_SENSITIVE_USERLIST = 28; + + // Maximum number of rulebased user lists a customer can have. + MAX_NUM_RULEBASED_USERLISTS = 29; + + // BasicUserList's billable record field cannot be modified once it is set. + CANNOT_MODIFY_BILLABLE_RECORD_COUNT = 30; + + // crm_based_user_list.app_id field must be set when upload_key_type is + // MOBILE_ADVERTISING_ID. + APP_ID_NOT_SET = 31; + + // Name of the user list is reserved for system generated lists and cannot + // be used. + USERLIST_NAME_IS_RESERVED_FOR_SYSTEM_LIST = 32; + + // Advertiser needs to be on the allow-list to use remarketing lists created + // from advertiser uploaded data (e.g., Customer Match lists). + ADVERTISER_NOT_ON_ALLOWLIST_FOR_USING_UPLOADED_DATA = 37; + + // The provided rule_type is not supported for the user list. + RULE_TYPE_IS_NOT_SUPPORTED = 34; + + // Similar user list cannot be used as a logical user list operand. + CAN_NOT_ADD_A_SIMILAR_USERLIST_AS_LOGICAL_LIST_OPERAND = 35; + + // Logical user list should not have a mix of CRM based user list and other + // types of lists in its rules. + CAN_NOT_MIX_CRM_BASED_IN_LOGICAL_LIST_WITH_OTHER_LISTS = 36; + } + + +} diff --git a/google/ads/googleads/v8/errors/youtube_video_registration_error.proto b/google/ads/googleads/v8/errors/youtube_video_registration_error.proto new file mode 100644 index 000000000..d63775fe7 --- /dev/null +++ b/google/ads/googleads/v8/errors/youtube_video_registration_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "YoutubeVideoRegistrationErrorProto"; +option java_package = "com.google.ads.googleads.v8.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V8::Errors"; + +// Proto file describing YouTube video registration errors. + +// Container for enum describing YouTube video registration errors. +message YoutubeVideoRegistrationErrorEnum { + // Enum describing YouTube video registration errors. + enum YoutubeVideoRegistrationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Video to be registered wasn't found. + VIDEO_NOT_FOUND = 2; + + // Video to be registered is not accessible (e.g. private). + VIDEO_NOT_ACCESSIBLE = 3; + + // Video to be registered is not eligible (e.g. mature content). + VIDEO_NOT_ELIGIBLE = 4; + } + + +} diff --git a/google/ads/googleads/v8/googleads_gapic.yaml b/google/ads/googleads/v8/googleads_gapic.yaml new file mode 100644 index 000000000..2aaeed956 --- /dev/null +++ b/google/ads/googleads/v8/googleads_gapic.yaml @@ -0,0 +1,26 @@ +type: com.google.api.codegen.ConfigProto +config_schema_version: 2.0.0 +language_settings: + csharp: + package_name: Google.Ads.GoogleAds.V8.Services + go: + package_name: google.golang.org/google/ads/googleads/v8/services + java: + package_name: com.google.ads.googleads.v8.services + nodejs: + package_name: v8.services + php: + package_name: Google\Ads\GoogleAds\V8\Services + python: + package_name: google.ads.googleads_v8.gapic.services + ruby: + package_name: Google::Ads::Googleads::V8::Services +interfaces: +- name: google.ads.googleads.v8.services.OfflineUserDataJobService + methods: + - name: RunOfflineUserDataJob + long_running: + initial_poll_delay_millis: 300000 + max_poll_delay_millis: 3600000 + poll_delay_multiplier: 1.25 + total_poll_timeout_millis: 43200000 diff --git a/google/ads/googleads/v8/googleads_grpc_service_config.json b/google/ads/googleads/v8/googleads_grpc_service_config.json new file mode 100755 index 000000000..920084a20 --- /dev/null +++ b/google/ads/googleads/v8/googleads_grpc_service_config.json @@ -0,0 +1,429 @@ +{ + "methodConfig": [ + { + "name": [ + { + "service": "google.ads.googleads.v8.services.AccessibleBiddingStrategyService" + }, + { + "service": "google.ads.googleads.v8.services.AccountBudgetProposalService" + }, + { + "service": "google.ads.googleads.v8.services.AccountBudgetService" + }, + { + "service": "google.ads.googleads.v8.services.AccountLinkService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupAdAssetViewService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupAdLabelService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupAdService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupAssetService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupAudienceViewService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupBidModifierService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupCriterionLabelService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupCriterionService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupCriterionSimulationService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupExtensionSettingService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupFeedService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupLabelService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupService" + }, + { + "service": "google.ads.googleads.v8.services.AdGroupSimulationService" + }, + { + "service": "google.ads.googleads.v8.services.AdParameterService" + }, + { + "service": "google.ads.googleads.v8.services.AdScheduleViewService" + }, + { + "service": "google.ads.googleads.v8.services.AdService" + }, + { + "service": "google.ads.googleads.v8.services.AgeRangeViewService" + }, + { + "service": "google.ads.googleads.v8.services.AssetFieldTypeViewService" + }, + { + "service": "google.ads.googleads.v8.services.AssetService" + }, + { + "service": "google.ads.googleads.v8.services.BatchJobService" + }, + { + "service": "google.ads.googleads.v8.services.BiddingDataExclusionService" + }, + { + "service": "google.ads.googleads.v8.services.BiddingSeasonalityAdjustmentService" + }, + { + "service": "google.ads.googleads.v8.services.BiddingStrategyService" + }, + { + "service": "google.ads.googleads.v8.services.BiddingStrategySimulationService" + }, + { + "service": "google.ads.googleads.v8.services.BillingSetupService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignAssetService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignAudienceViewService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignBidModifierService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignBudgetService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignCriterionService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignCriterionSimulationService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignDraftService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignExperimentService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignExtensionSettingService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignFeedService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignLabelService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignSharedSetService" + }, + { + "service": "google.ads.googleads.v8.services.CampaignSimulationService" + }, + { + "service": "google.ads.googleads.v8.services.CarrierConstantService" + }, + { + "service": "google.ads.googleads.v8.services.ChangeStatusService" + }, + { + "service": "google.ads.googleads.v8.services.ClickViewService" + }, + { + "service": "google.ads.googleads.v8.services.CombinedAudienceService" + }, + { + "service": "google.ads.googleads.v8.services.ConversionActionService" + }, + { + "service": "google.ads.googleads.v8.services.ConversionAdjustmentUploadService" + }, + { + "service": "google.ads.googleads.v8.services.ConversionCustomVariableService" + }, + { + "service": "google.ads.googleads.v8.services.ConversionUploadService" + }, + { + "service": "google.ads.googleads.v8.services.ConversionValueRuleService" + }, + { + "service": "google.ads.googleads.v8.services.ConversionValueRuleSetService" + }, + { + "service": "google.ads.googleads.v8.services.CurrencyConstantService" + }, + { + "service": "google.ads.googleads.v8.services.CustomAudienceService" + }, + { + "service": "google.ads.googleads.v8.services.CustomInterestService" + }, + { + "service": "google.ads.googleads.v8.services.CustomerAssetService" + }, + { + "service": "google.ads.googleads.v8.services.CustomerClientLinkService" + }, + { + "service": "google.ads.googleads.v8.services.CustomerClientService" + }, + { + "service": "google.ads.googleads.v8.services.CustomerExtensionSettingService" + }, + { + "service": "google.ads.googleads.v8.services.CustomerFeedService" + }, + { + "service": "google.ads.googleads.v8.services.CustomerLabelService" + }, + { + "service": "google.ads.googleads.v8.services.CustomerManagerLinkService" + }, + { + "service": "google.ads.googleads.v8.services.CustomerNegativeCriterionService" + }, + { + "service": "google.ads.googleads.v8.services.CustomerService" + }, + { + "service": "google.ads.googleads.v8.services.CustomerUserAccessInvitationService" + }, + { + "service": "google.ads.googleads.v8.services.CustomerUserAccessService" + }, + { + "service": "google.ads.googleads.v8.services.DetailPlacementViewService" + }, + { + "service": "google.ads.googleads.v8.services.DetailedDemographicService" + }, + { + "service": "google.ads.googleads.v8.services.DisplayKeywordViewService" + }, + { + "service": "google.ads.googleads.v8.services.DistanceViewService" + }, + { + "service": "google.ads.googleads.v8.services.DomainCategoryService" + }, + { + "service": "google.ads.googleads.v8.services.DynamicSearchAdsSearchTermViewService" + }, + { + "service": "google.ads.googleads.v8.services.ExpandedLandingPageViewService" + }, + { + "service": "google.ads.googleads.v8.services.ExtensionFeedItemService" + }, + { + "service": "google.ads.googleads.v8.services.FeedItemService" + }, + { + "service": "google.ads.googleads.v8.services.FeedItemSetLinkService" + }, + { + "service": "google.ads.googleads.v8.services.FeedItemSetService" + }, + { + "service": "google.ads.googleads.v8.services.FeedItemTargetService" + }, + { + "service": "google.ads.googleads.v8.services.FeedMappingService" + }, + { + "service": "google.ads.googleads.v8.services.FeedPlaceholderViewService" + }, + { + "service": "google.ads.googleads.v8.services.FeedService" + }, + { + "service": "google.ads.googleads.v8.services.GenderViewService" + }, + { + "service": "google.ads.googleads.v8.services.GeoTargetConstantService" + }, + { + "service": "google.ads.googleads.v8.services.GeographicViewService" + }, + { + "service": "google.ads.googleads.v8.services.GoogleAdsFieldService" + }, + { + "service": "google.ads.googleads.v8.services.GoogleAdsService" + }, + { + "service": "google.ads.googleads.v8.services.GroupPlacementViewService" + }, + { + "service": "google.ads.googleads.v8.services.HotelGroupViewService" + }, + { + "service": "google.ads.googleads.v8.services.HotelPerformanceViewService" + }, + { + "service": "google.ads.googleads.v8.services.IncomeRangeViewService" + }, + { + "service": "google.ads.googleads.v8.services.InvoiceService" + }, + { + "service": "google.ads.googleads.v8.services.KeywordPlanAdGroupKeywordService" + }, + { + "service": "google.ads.googleads.v8.services.KeywordPlanAdGroupService" + }, + { + "service": "google.ads.googleads.v8.services.KeywordPlanCampaignKeywordService" + }, + { + "service": "google.ads.googleads.v8.services.KeywordPlanCampaignService" + }, + { + "service": "google.ads.googleads.v8.services.KeywordPlanIdeaService" + }, + { + "service": "google.ads.googleads.v8.services.KeywordPlanService" + }, + { + "service": "google.ads.googleads.v8.services.KeywordThemeConstantService" + }, + { + "service": "google.ads.googleads.v8.services.KeywordViewService" + }, + { + "service": "google.ads.googleads.v8.services.LabelService" + }, + { + "service": "google.ads.googleads.v8.services.LandingPageViewService" + }, + { + "service": "google.ads.googleads.v8.services.LanguageConstantService" + }, + { + "service": "google.ads.googleads.v8.services.LifeEventService" + }, + { + "service": "google.ads.googleads.v8.services.LocationViewService" + }, + { + "service": "google.ads.googleads.v8.services.ManagedPlacementViewService" + }, + { + "service": "google.ads.googleads.v8.services.MediaFileService" + }, + { + "service": "google.ads.googleads.v8.services.MerchantCenterLinkService" + }, + { + "service": "google.ads.googleads.v8.services.MobileAppCategoryConstantService" + }, + { + "service": "google.ads.googleads.v8.services.MobileDeviceConstantService" + }, + { + "service": "google.ads.googleads.v8.services.OfflineUserDataJobService" + }, + { + "service": "google.ads.googleads.v8.services.OperatingSystemVersionConstantService" + }, + { + "service": "google.ads.googleads.v8.services.PaidOrganicSearchTermViewService" + }, + { + "service": "google.ads.googleads.v8.services.ParentalStatusViewService" + }, + { + "service": "google.ads.googleads.v8.services.PaymentsAccountService" + }, + { + "service": "google.ads.googleads.v8.services.ProductBiddingCategoryConstantService" + }, + { + "service": "google.ads.googleads.v8.services.ProductGroupViewService" + }, + { + "service": "google.ads.googleads.v8.services.ReachPlanService" + }, + { + "service": "google.ads.googleads.v8.services.RecommendationService" + }, + { + "service": "google.ads.googleads.v8.services.RemarketingActionService" + }, + { + "service": "google.ads.googleads.v8.services.SearchTermViewService" + }, + { + "service": "google.ads.googleads.v8.services.SharedCriterionService" + }, + { + "service": "google.ads.googleads.v8.services.SharedSetService" + }, + { + "service": "google.ads.googleads.v8.services.ShoppingPerformanceViewService" + }, + { + "service": "google.ads.googleads.v8.services.SmartCampaignSearchTermViewService" + }, + { + "service": "google.ads.googleads.v8.services.SmartCampaignSettingService" + }, + { + "service": "google.ads.googleads.v8.services.SmartCampaignSuggestService" + }, + { + "service": "google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService" + }, + { + "service": "google.ads.googleads.v8.services.TopicConstantService" + }, + { + "service": "google.ads.googleads.v8.services.TopicViewService" + }, + { + "service": "google.ads.googleads.v8.services.UserDataService" + }, + { + "service": "google.ads.googleads.v8.services.UserInterestService" + }, + { + "service": "google.ads.googleads.v8.services.UserListService" + }, + { + "service": "google.ads.googleads.v8.services.UserLocationViewService" + }, + { + "service": "google.ads.googleads.v8.services.VideoService" + }, + { + "service": "google.ads.googleads.v8.services.WebpageViewService" + } + ], + "timeout": "3600s", + "retryPolicy": { + "initialBackoff": "5s", + "maxBackoff": "60s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": [ + "UNAVAILABLE", + "DEADLINE_EXCEEDED" + ] + } + } + ] +} diff --git a/google/ads/googleads/v8/googleads_v8.yaml b/google/ads/googleads/v8/googleads_v8.yaml new file mode 100644 index 000000000..c691e62d9 --- /dev/null +++ b/google/ads/googleads/v8/googleads_v8.yaml @@ -0,0 +1,1403 @@ +type: google.api.Service +config_version: 3 +name: googleads.googleapis.com +title: Google Ads API + +apis: +- name: google.ads.googleads.v8.services.AccessibleBiddingStrategyService +- name: google.ads.googleads.v8.services.AccountBudgetProposalService +- name: google.ads.googleads.v8.services.AccountBudgetService +- name: google.ads.googleads.v8.services.AccountLinkService +- name: google.ads.googleads.v8.services.AdGroupAdAssetViewService +- name: google.ads.googleads.v8.services.AdGroupAdLabelService +- name: google.ads.googleads.v8.services.AdGroupAdService +- name: google.ads.googleads.v8.services.AdGroupAssetService +- name: google.ads.googleads.v8.services.AdGroupAudienceViewService +- name: google.ads.googleads.v8.services.AdGroupBidModifierService +- name: google.ads.googleads.v8.services.AdGroupCriterionLabelService +- name: google.ads.googleads.v8.services.AdGroupCriterionService +- name: google.ads.googleads.v8.services.AdGroupCriterionSimulationService +- name: google.ads.googleads.v8.services.AdGroupExtensionSettingService +- name: google.ads.googleads.v8.services.AdGroupFeedService +- name: google.ads.googleads.v8.services.AdGroupLabelService +- name: google.ads.googleads.v8.services.AdGroupService +- name: google.ads.googleads.v8.services.AdGroupSimulationService +- name: google.ads.googleads.v8.services.AdParameterService +- name: google.ads.googleads.v8.services.AdScheduleViewService +- name: google.ads.googleads.v8.services.AdService +- name: google.ads.googleads.v8.services.AgeRangeViewService +- name: google.ads.googleads.v8.services.AssetFieldTypeViewService +- name: google.ads.googleads.v8.services.AssetService +- name: google.ads.googleads.v8.services.BatchJobService +- name: google.ads.googleads.v8.services.BiddingDataExclusionService +- name: google.ads.googleads.v8.services.BiddingSeasonalityAdjustmentService +- name: google.ads.googleads.v8.services.BiddingStrategyService +- name: google.ads.googleads.v8.services.BiddingStrategySimulationService +- name: google.ads.googleads.v8.services.BillingSetupService +- name: google.ads.googleads.v8.services.CampaignAssetService +- name: google.ads.googleads.v8.services.CampaignAudienceViewService +- name: google.ads.googleads.v8.services.CampaignBidModifierService +- name: google.ads.googleads.v8.services.CampaignBudgetService +- name: google.ads.googleads.v8.services.CampaignCriterionService +- name: google.ads.googleads.v8.services.CampaignCriterionSimulationService +- name: google.ads.googleads.v8.services.CampaignDraftService +- name: google.ads.googleads.v8.services.CampaignExperimentService +- name: google.ads.googleads.v8.services.CampaignExtensionSettingService +- name: google.ads.googleads.v8.services.CampaignFeedService +- name: google.ads.googleads.v8.services.CampaignLabelService +- name: google.ads.googleads.v8.services.CampaignService +- name: google.ads.googleads.v8.services.CampaignSharedSetService +- name: google.ads.googleads.v8.services.CampaignSimulationService +- name: google.ads.googleads.v8.services.CarrierConstantService +- name: google.ads.googleads.v8.services.ChangeStatusService +- name: google.ads.googleads.v8.services.ClickViewService +- name: google.ads.googleads.v8.services.CombinedAudienceService +- name: google.ads.googleads.v8.services.ConversionActionService +- name: google.ads.googleads.v8.services.ConversionAdjustmentUploadService +- name: google.ads.googleads.v8.services.ConversionCustomVariableService +- name: google.ads.googleads.v8.services.ConversionUploadService +- name: google.ads.googleads.v8.services.ConversionValueRuleService +- name: google.ads.googleads.v8.services.ConversionValueRuleSetService +- name: google.ads.googleads.v8.services.CurrencyConstantService +- name: google.ads.googleads.v8.services.CustomAudienceService +- name: google.ads.googleads.v8.services.CustomInterestService +- name: google.ads.googleads.v8.services.CustomerAssetService +- name: google.ads.googleads.v8.services.CustomerClientLinkService +- name: google.ads.googleads.v8.services.CustomerClientService +- name: google.ads.googleads.v8.services.CustomerExtensionSettingService +- name: google.ads.googleads.v8.services.CustomerFeedService +- name: google.ads.googleads.v8.services.CustomerLabelService +- name: google.ads.googleads.v8.services.CustomerManagerLinkService +- name: google.ads.googleads.v8.services.CustomerNegativeCriterionService +- name: google.ads.googleads.v8.services.CustomerService +- name: google.ads.googleads.v8.services.CustomerUserAccessInvitationService +- name: google.ads.googleads.v8.services.CustomerUserAccessService +- name: google.ads.googleads.v8.services.DetailPlacementViewService +- name: google.ads.googleads.v8.services.DetailedDemographicService +- name: google.ads.googleads.v8.services.DisplayKeywordViewService +- name: google.ads.googleads.v8.services.DistanceViewService +- name: google.ads.googleads.v8.services.DomainCategoryService +- name: google.ads.googleads.v8.services.DynamicSearchAdsSearchTermViewService +- name: google.ads.googleads.v8.services.ExpandedLandingPageViewService +- name: google.ads.googleads.v8.services.ExtensionFeedItemService +- name: google.ads.googleads.v8.services.FeedItemService +- name: google.ads.googleads.v8.services.FeedItemSetLinkService +- name: google.ads.googleads.v8.services.FeedItemSetService +- name: google.ads.googleads.v8.services.FeedItemTargetService +- name: google.ads.googleads.v8.services.FeedMappingService +- name: google.ads.googleads.v8.services.FeedPlaceholderViewService +- name: google.ads.googleads.v8.services.FeedService +- name: google.ads.googleads.v8.services.GenderViewService +- name: google.ads.googleads.v8.services.GeoTargetConstantService +- name: google.ads.googleads.v8.services.GeographicViewService +- name: google.ads.googleads.v8.services.GoogleAdsFieldService +- name: google.ads.googleads.v8.services.GoogleAdsService +- name: google.ads.googleads.v8.services.GroupPlacementViewService +- name: google.ads.googleads.v8.services.HotelGroupViewService +- name: google.ads.googleads.v8.services.HotelPerformanceViewService +- name: google.ads.googleads.v8.services.IncomeRangeViewService +- name: google.ads.googleads.v8.services.InvoiceService +- name: google.ads.googleads.v8.services.KeywordPlanAdGroupKeywordService +- name: google.ads.googleads.v8.services.KeywordPlanAdGroupService +- name: google.ads.googleads.v8.services.KeywordPlanCampaignKeywordService +- name: google.ads.googleads.v8.services.KeywordPlanCampaignService +- name: google.ads.googleads.v8.services.KeywordPlanIdeaService +- name: google.ads.googleads.v8.services.KeywordPlanService +- name: google.ads.googleads.v8.services.KeywordThemeConstantService +- name: google.ads.googleads.v8.services.KeywordViewService +- name: google.ads.googleads.v8.services.LabelService +- name: google.ads.googleads.v8.services.LandingPageViewService +- name: google.ads.googleads.v8.services.LanguageConstantService +- name: google.ads.googleads.v8.services.LifeEventService +- name: google.ads.googleads.v8.services.LocationViewService +- name: google.ads.googleads.v8.services.ManagedPlacementViewService +- name: google.ads.googleads.v8.services.MediaFileService +- name: google.ads.googleads.v8.services.MerchantCenterLinkService +- name: google.ads.googleads.v8.services.MobileAppCategoryConstantService +- name: google.ads.googleads.v8.services.MobileDeviceConstantService +- name: google.ads.googleads.v8.services.OfflineUserDataJobService +- name: google.ads.googleads.v8.services.OperatingSystemVersionConstantService +- name: google.ads.googleads.v8.services.PaidOrganicSearchTermViewService +- name: google.ads.googleads.v8.services.ParentalStatusViewService +- name: google.ads.googleads.v8.services.PaymentsAccountService +- name: google.ads.googleads.v8.services.ProductBiddingCategoryConstantService +- name: google.ads.googleads.v8.services.ProductGroupViewService +- name: google.ads.googleads.v8.services.ReachPlanService +- name: google.ads.googleads.v8.services.RecommendationService +- name: google.ads.googleads.v8.services.RemarketingActionService +- name: google.ads.googleads.v8.services.SearchTermViewService +- name: google.ads.googleads.v8.services.SharedCriterionService +- name: google.ads.googleads.v8.services.SharedSetService +- name: google.ads.googleads.v8.services.ShoppingPerformanceViewService +- name: google.ads.googleads.v8.services.SmartCampaignSearchTermViewService +- name: google.ads.googleads.v8.services.SmartCampaignSettingService +- name: google.ads.googleads.v8.services.SmartCampaignSuggestService +- name: google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService +- name: google.ads.googleads.v8.services.TopicConstantService +- name: google.ads.googleads.v8.services.TopicViewService +- name: google.ads.googleads.v8.services.UserDataService +- name: google.ads.googleads.v8.services.UserInterestService +- name: google.ads.googleads.v8.services.UserListService +- name: google.ads.googleads.v8.services.UserLocationViewService +- name: google.ads.googleads.v8.services.VideoService +- name: google.ads.googleads.v8.services.WebpageViewService + +types: +- name: google.ads.googleads.v8.errors.GoogleAdsFailure +- name: google.ads.googleads.v8.resources.BatchJob.BatchJobMetadata +- name: google.ads.googleads.v8.services.CreateCampaignExperimentMetadata + +documentation: + summary: 'Manage your Google Ads accounts, campaigns, and reports with this API.' + overview: |- + The Google Ads API enables an app to integrate with the Google Ads + platform. You can efficiently retrieve and change your Google Ads data + using the API, making it ideal for managing large or complex accounts and + campaigns. + +backend: + rules: + - selector: google.ads.googleads.v8.services.AccessibleBiddingStrategyService.GetAccessibleBiddingStrategy + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AccountBudgetProposalService.GetAccountBudgetProposal + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AccountBudgetProposalService.MutateAccountBudgetProposal + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AccountBudgetService.GetAccountBudget + deadline: 60.0 + - selector: 'google.ads.googleads.v8.services.AccountLinkService.*' + deadline: 600.0 + - selector: google.ads.googleads.v8.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupAdLabelService.GetAdGroupAdLabel + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupAdLabelService.MutateAdGroupAdLabels + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupAdService.GetAdGroupAd + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupAdService.MutateAdGroupAds + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupAssetService.GetAdGroupAsset + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupAssetService.MutateAdGroupAssets + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupAudienceViewService.GetAdGroupAudienceView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupBidModifierService.GetAdGroupBidModifier + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupBidModifierService.MutateAdGroupBidModifiers + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupCriterionService.GetAdGroupCriterion + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupCriterionService.MutateAdGroupCriteria + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupFeedService.GetAdGroupFeed + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupFeedService.MutateAdGroupFeeds + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupLabelService.GetAdGroupLabel + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupLabelService.MutateAdGroupLabels + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupService.GetAdGroup + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupService.MutateAdGroups + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdGroupSimulationService.GetAdGroupSimulation + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdParameterService.GetAdParameter + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdParameterService.MutateAdParameters + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdScheduleViewService.GetAdScheduleView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdService.GetAd + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AdService.MutateAds + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AgeRangeViewService.GetAgeRangeView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AssetFieldTypeViewService.GetAssetFieldTypeView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AssetService.GetAsset + deadline: 60.0 + - selector: google.ads.googleads.v8.services.AssetService.MutateAssets + deadline: 60.0 + - selector: 'google.ads.googleads.v8.services.BatchJobService.*' + deadline: 60.0 + - selector: google.ads.googleads.v8.services.BiddingDataExclusionService.GetBiddingDataExclusion + deadline: 60.0 + - selector: google.ads.googleads.v8.services.BiddingDataExclusionService.MutateBiddingDataExclusions + deadline: 60.0 + - selector: google.ads.googleads.v8.services.BiddingSeasonalityAdjustmentService.GetBiddingSeasonalityAdjustment + deadline: 60.0 + - selector: google.ads.googleads.v8.services.BiddingSeasonalityAdjustmentService.MutateBiddingSeasonalityAdjustments + deadline: 60.0 + - selector: google.ads.googleads.v8.services.BiddingStrategyService.GetBiddingStrategy + deadline: 60.0 + - selector: google.ads.googleads.v8.services.BiddingStrategyService.MutateBiddingStrategies + deadline: 60.0 + - selector: google.ads.googleads.v8.services.BiddingStrategySimulationService.GetBiddingStrategySimulation + deadline: 60.0 + - selector: google.ads.googleads.v8.services.BillingSetupService.GetBillingSetup + deadline: 60.0 + - selector: google.ads.googleads.v8.services.BillingSetupService.MutateBillingSetup + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignAssetService.GetCampaignAsset + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignAssetService.MutateCampaignAssets + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignAudienceViewService.GetCampaignAudienceView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignBidModifierService.GetCampaignBidModifier + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignBidModifierService.MutateCampaignBidModifiers + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignBudgetService.GetCampaignBudget + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignBudgetService.MutateCampaignBudgets + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignCriterionService.GetCampaignCriterion + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignCriterionService.MutateCampaignCriteria + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation + deadline: 60.0 + - selector: 'google.ads.googleads.v8.services.CampaignDraftService.*' + deadline: 60.0 + - selector: 'google.ads.googleads.v8.services.CampaignExperimentService.*' + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignExtensionSettingService.GetCampaignExtensionSetting + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignFeedService.GetCampaignFeed + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignFeedService.MutateCampaignFeeds + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignLabelService.GetCampaignLabel + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignLabelService.MutateCampaignLabels + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignService.GetCampaign + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignService.MutateCampaigns + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignSharedSetService.GetCampaignSharedSet + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignSharedSetService.MutateCampaignSharedSets + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CampaignSimulationService.GetCampaignSimulation + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CarrierConstantService.GetCarrierConstant + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ChangeStatusService.GetChangeStatus + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ClickViewService.GetClickView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CombinedAudienceService.GetCombinedAudience + deadline: 600.0 + - selector: google.ads.googleads.v8.services.ConversionActionService.GetConversionAction + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ConversionActionService.MutateConversionActions + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ConversionAdjustmentUploadService.UploadConversionAdjustments + deadline: 600.0 + - selector: google.ads.googleads.v8.services.ConversionCustomVariableService.GetConversionCustomVariable + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ConversionCustomVariableService.MutateConversionCustomVariables + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ConversionUploadService.UploadCallConversions + deadline: 600.0 + - selector: google.ads.googleads.v8.services.ConversionUploadService.UploadClickConversions + deadline: 600.0 + - selector: google.ads.googleads.v8.services.ConversionValueRuleService.GetConversionValueRule + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ConversionValueRuleService.MutateConversionValueRules + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ConversionValueRuleSetService.GetConversionValueRuleSet + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ConversionValueRuleSetService.MutateConversionValueRuleSets + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CurrencyConstantService.GetCurrencyConstant + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomAudienceService.GetCustomAudience + deadline: 600.0 + - selector: google.ads.googleads.v8.services.CustomAudienceService.MutateCustomAudiences + deadline: 600.0 + - selector: google.ads.googleads.v8.services.CustomInterestService.GetCustomInterest + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomInterestService.MutateCustomInterests + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerAssetService.GetCustomerAsset + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerAssetService.MutateCustomerAssets + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerClientLinkService.GetCustomerClientLink + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerClientLinkService.MutateCustomerClientLink + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerClientService.GetCustomerClient + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerExtensionSettingService.GetCustomerExtensionSetting + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerFeedService.GetCustomerFeed + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerFeedService.MutateCustomerFeeds + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerLabelService.GetCustomerLabel + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerLabelService.MutateCustomerLabels + deadline: 60.0 + - selector: 'google.ads.googleads.v8.services.CustomerManagerLinkService.*' + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria + deadline: 60.0 + - selector: 'google.ads.googleads.v8.services.CustomerService.*' + deadline: 60.0 + - selector: google.ads.googleads.v8.services.CustomerUserAccessInvitationService.GetCustomerUserAccessInvitation + deadline: 600.0 + - selector: google.ads.googleads.v8.services.CustomerUserAccessInvitationService.MutateCustomerUserAccessInvitation + deadline: 600.0 + - selector: google.ads.googleads.v8.services.CustomerUserAccessService.GetCustomerUserAccess + deadline: 600.0 + - selector: google.ads.googleads.v8.services.CustomerUserAccessService.MutateCustomerUserAccess + deadline: 600.0 + - selector: google.ads.googleads.v8.services.DetailPlacementViewService.GetDetailPlacementView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.DetailedDemographicService.GetDetailedDemographic + deadline: 60.0 + - selector: google.ads.googleads.v8.services.DisplayKeywordViewService.GetDisplayKeywordView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.DistanceViewService.GetDistanceView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.DomainCategoryService.GetDomainCategory + deadline: 60.0 + - selector: google.ads.googleads.v8.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ExpandedLandingPageViewService.GetExpandedLandingPageView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ExtensionFeedItemService.GetExtensionFeedItem + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ExtensionFeedItemService.MutateExtensionFeedItems + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedItemService.GetFeedItem + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedItemService.MutateFeedItems + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedItemSetLinkService.GetFeedItemSetLink + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedItemSetLinkService.MutateFeedItemSetLinks + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedItemSetService.GetFeedItemSet + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedItemSetService.MutateFeedItemSets + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedItemTargetService.GetFeedItemTarget + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedItemTargetService.MutateFeedItemTargets + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedMappingService.GetFeedMapping + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedMappingService.MutateFeedMappings + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedPlaceholderViewService.GetFeedPlaceholderView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedService.GetFeed + deadline: 60.0 + - selector: google.ads.googleads.v8.services.FeedService.MutateFeeds + deadline: 60.0 + - selector: google.ads.googleads.v8.services.GenderViewService.GetGenderView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.GeoTargetConstantService.GetGeoTargetConstant + deadline: 60.0 + - selector: google.ads.googleads.v8.services.GeoTargetConstantService.SuggestGeoTargetConstants + deadline: 60.0 + - selector: google.ads.googleads.v8.services.GeographicViewService.GetGeographicView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.GoogleAdsFieldService.GetGoogleAdsField + deadline: 600.0 + - selector: google.ads.googleads.v8.services.GoogleAdsFieldService.SearchGoogleAdsFields + deadline: 600.0 + - selector: google.ads.googleads.v8.services.GoogleAdsService.Mutate + deadline: 600.0 + - selector: google.ads.googleads.v8.services.GoogleAdsService.Search + deadline: 3600.0 + - selector: google.ads.googleads.v8.services.GoogleAdsService.SearchStream + deadline: 3600.0 + - selector: google.ads.googleads.v8.services.GroupPlacementViewService.GetGroupPlacementView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.HotelGroupViewService.GetHotelGroupView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.HotelPerformanceViewService.GetHotelPerformanceView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.IncomeRangeViewService.GetIncomeRangeView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.InvoiceService.ListInvoices + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordPlanCampaignService.GetKeywordPlanCampaign + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordPlanIdeaService.GenerateKeywordIdeas + deadline: 600.0 + - selector: 'google.ads.googleads.v8.services.KeywordPlanService.*' + deadline: 600.0 + - selector: google.ads.googleads.v8.services.KeywordPlanService.GetKeywordPlan + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordPlanService.MutateKeywordPlans + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordThemeConstantService.GetKeywordThemeConstant + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordThemeConstantService.SuggestKeywordThemeConstants + deadline: 60.0 + - selector: google.ads.googleads.v8.services.KeywordViewService.GetKeywordView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.LabelService.GetLabel + deadline: 60.0 + - selector: google.ads.googleads.v8.services.LabelService.MutateLabels + deadline: 60.0 + - selector: google.ads.googleads.v8.services.LandingPageViewService.GetLandingPageView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.LanguageConstantService.GetLanguageConstant + deadline: 60.0 + - selector: google.ads.googleads.v8.services.LifeEventService.GetLifeEvent + deadline: 60.0 + - selector: google.ads.googleads.v8.services.LocationViewService.GetLocationView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ManagedPlacementViewService.GetManagedPlacementView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.MediaFileService.GetMediaFile + deadline: 60.0 + - selector: google.ads.googleads.v8.services.MediaFileService.MutateMediaFiles + deadline: 60.0 + - selector: 'google.ads.googleads.v8.services.MerchantCenterLinkService.*' + deadline: 60.0 + - selector: google.ads.googleads.v8.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant + deadline: 60.0 + - selector: google.ads.googleads.v8.services.MobileDeviceConstantService.GetMobileDeviceConstant + deadline: 60.0 + - selector: 'google.ads.googleads.v8.services.OfflineUserDataJobService.*' + deadline: 600.0 + - selector: google.ads.googleads.v8.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant + deadline: 60.0 + - selector: google.ads.googleads.v8.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ParentalStatusViewService.GetParentalStatusView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.PaymentsAccountService.ListPaymentsAccounts + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ProductGroupViewService.GetProductGroupView + deadline: 60.0 + - selector: 'google.ads.googleads.v8.services.ReachPlanService.*' + deadline: 600.0 + - selector: 'google.ads.googleads.v8.services.RecommendationService.*' + deadline: 600.0 + - selector: google.ads.googleads.v8.services.RemarketingActionService.GetRemarketingAction + deadline: 60.0 + - selector: google.ads.googleads.v8.services.RemarketingActionService.MutateRemarketingActions + deadline: 60.0 + - selector: google.ads.googleads.v8.services.SearchTermViewService.GetSearchTermView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.SharedCriterionService.GetSharedCriterion + deadline: 60.0 + - selector: google.ads.googleads.v8.services.SharedCriterionService.MutateSharedCriteria + deadline: 60.0 + - selector: google.ads.googleads.v8.services.SharedSetService.GetSharedSet + deadline: 60.0 + - selector: google.ads.googleads.v8.services.SharedSetService.MutateSharedSets + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ShoppingPerformanceViewService.GetShoppingPerformanceView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.SmartCampaignSearchTermViewService.GetSmartCampaignSearchTermView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.SmartCampaignSettingService.GetSmartCampaignSetting + deadline: 60.0 + - selector: google.ads.googleads.v8.services.SmartCampaignSettingService.MutateSmartCampaignSettings + deadline: 60.0 + - selector: google.ads.googleads.v8.services.SmartCampaignSuggestService.SuggestSmartCampaignAd + deadline: 60.0 + - selector: google.ads.googleads.v8.services.SmartCampaignSuggestService.SuggestSmartCampaignBudgetOptions + deadline: 60.0 + - selector: google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink + deadline: 600.0 + - selector: google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId + deadline: 600.0 + - selector: google.ads.googleads.v8.services.TopicConstantService.GetTopicConstant + deadline: 60.0 + - selector: google.ads.googleads.v8.services.TopicViewService.GetTopicView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.UserDataService.UploadUserData + deadline: 600.0 + - selector: google.ads.googleads.v8.services.UserInterestService.GetUserInterest + deadline: 60.0 + - selector: google.ads.googleads.v8.services.UserListService.GetUserList + deadline: 60.0 + - selector: google.ads.googleads.v8.services.UserListService.MutateUserLists + deadline: 60.0 + - selector: google.ads.googleads.v8.services.UserLocationViewService.GetUserLocationView + deadline: 60.0 + - selector: google.ads.googleads.v8.services.VideoService.GetVideo + deadline: 60.0 + - selector: google.ads.googleads.v8.services.WebpageViewService.GetWebpageView + deadline: 60.0 + - selector: 'google.longrunning.Operations.*' + deadline: 60.0 + +http: + rules: + - selector: google.longrunning.Operations.CancelOperation + post: '/v8/{name=customers/*/operations/*}:cancel' + body: '*' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/v8/{name=customers/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/v8/{name=customers/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v8/{name=customers/*/operations}' + - selector: google.longrunning.Operations.WaitOperation + post: '/v8/{name=customers/*/operations/*}:wait' + body: '*' + +authentication: + rules: + - selector: google.ads.googleads.v8.services.AccessibleBiddingStrategyService.GetAccessibleBiddingStrategy + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AccountBudgetProposalService.GetAccountBudgetProposal + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AccountBudgetProposalService.MutateAccountBudgetProposal + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AccountBudgetService.GetAccountBudget + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.AccountLinkService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupAdLabelService.GetAdGroupAdLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupAdLabelService.MutateAdGroupAdLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupAdService.GetAdGroupAd + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupAdService.MutateAdGroupAds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupAssetService.GetAdGroupAsset + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupAssetService.MutateAdGroupAssets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupAudienceViewService.GetAdGroupAudienceView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupBidModifierService.GetAdGroupBidModifier + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupBidModifierService.MutateAdGroupBidModifiers + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupCriterionService.GetAdGroupCriterion + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupCriterionService.MutateAdGroupCriteria + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupFeedService.GetAdGroupFeed + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupFeedService.MutateAdGroupFeeds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupLabelService.GetAdGroupLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupLabelService.MutateAdGroupLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupService.GetAdGroup + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupService.MutateAdGroups + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdGroupSimulationService.GetAdGroupSimulation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdParameterService.GetAdParameter + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdParameterService.MutateAdParameters + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdScheduleViewService.GetAdScheduleView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdService.GetAd + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AdService.MutateAds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AgeRangeViewService.GetAgeRangeView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AssetFieldTypeViewService.GetAssetFieldTypeView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AssetService.GetAsset + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.AssetService.MutateAssets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.BatchJobService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.BiddingDataExclusionService.GetBiddingDataExclusion + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.BiddingDataExclusionService.MutateBiddingDataExclusions + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.BiddingSeasonalityAdjustmentService.GetBiddingSeasonalityAdjustment + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.BiddingSeasonalityAdjustmentService.MutateBiddingSeasonalityAdjustments + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.BiddingStrategyService.GetBiddingStrategy + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.BiddingStrategyService.MutateBiddingStrategies + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.BiddingStrategySimulationService.GetBiddingStrategySimulation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.BillingSetupService.GetBillingSetup + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.BillingSetupService.MutateBillingSetup + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignAssetService.GetCampaignAsset + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignAssetService.MutateCampaignAssets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignAudienceViewService.GetCampaignAudienceView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignBidModifierService.GetCampaignBidModifier + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignBidModifierService.MutateCampaignBidModifiers + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignBudgetService.GetCampaignBudget + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignBudgetService.MutateCampaignBudgets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignCriterionService.GetCampaignCriterion + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignCriterionService.MutateCampaignCriteria + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.CampaignDraftService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.CampaignExperimentService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignExtensionSettingService.GetCampaignExtensionSetting + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignFeedService.GetCampaignFeed + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignFeedService.MutateCampaignFeeds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignLabelService.GetCampaignLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignLabelService.MutateCampaignLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignService.GetCampaign + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignService.MutateCampaigns + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignSharedSetService.GetCampaignSharedSet + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignSharedSetService.MutateCampaignSharedSets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CampaignSimulationService.GetCampaignSimulation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CarrierConstantService.GetCarrierConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ChangeStatusService.GetChangeStatus + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ClickViewService.GetClickView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CombinedAudienceService.GetCombinedAudience + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ConversionActionService.GetConversionAction + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ConversionActionService.MutateConversionActions + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ConversionAdjustmentUploadService.UploadConversionAdjustments + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ConversionCustomVariableService.GetConversionCustomVariable + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ConversionCustomVariableService.MutateConversionCustomVariables + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ConversionUploadService.UploadCallConversions + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ConversionUploadService.UploadClickConversions + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ConversionValueRuleService.GetConversionValueRule + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ConversionValueRuleService.MutateConversionValueRules + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ConversionValueRuleSetService.GetConversionValueRuleSet + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ConversionValueRuleSetService.MutateConversionValueRuleSets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CurrencyConstantService.GetCurrencyConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomAudienceService.GetCustomAudience + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomAudienceService.MutateCustomAudiences + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomInterestService.GetCustomInterest + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomInterestService.MutateCustomInterests + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerAssetService.GetCustomerAsset + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerAssetService.MutateCustomerAssets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerClientLinkService.GetCustomerClientLink + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerClientLinkService.MutateCustomerClientLink + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerClientService.GetCustomerClient + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerExtensionSettingService.GetCustomerExtensionSetting + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerFeedService.GetCustomerFeed + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerFeedService.MutateCustomerFeeds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerLabelService.GetCustomerLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerLabelService.MutateCustomerLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.CustomerManagerLinkService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.CustomerService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerUserAccessInvitationService.GetCustomerUserAccessInvitation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerUserAccessInvitationService.MutateCustomerUserAccessInvitation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerUserAccessService.GetCustomerUserAccess + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.CustomerUserAccessService.MutateCustomerUserAccess + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.DetailPlacementViewService.GetDetailPlacementView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.DetailedDemographicService.GetDetailedDemographic + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.DisplayKeywordViewService.GetDisplayKeywordView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.DistanceViewService.GetDistanceView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.DomainCategoryService.GetDomainCategory + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ExpandedLandingPageViewService.GetExpandedLandingPageView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ExtensionFeedItemService.GetExtensionFeedItem + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ExtensionFeedItemService.MutateExtensionFeedItems + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedItemService.GetFeedItem + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedItemService.MutateFeedItems + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedItemSetLinkService.GetFeedItemSetLink + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedItemSetLinkService.MutateFeedItemSetLinks + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedItemSetService.GetFeedItemSet + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedItemSetService.MutateFeedItemSets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedItemTargetService.GetFeedItemTarget + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedItemTargetService.MutateFeedItemTargets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedMappingService.GetFeedMapping + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedMappingService.MutateFeedMappings + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedPlaceholderViewService.GetFeedPlaceholderView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedService.GetFeed + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.FeedService.MutateFeeds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.GenderViewService.GetGenderView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.GeoTargetConstantService.GetGeoTargetConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.GeoTargetConstantService.SuggestGeoTargetConstants + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.GeographicViewService.GetGeographicView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.GoogleAdsFieldService.GetGoogleAdsField + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.GoogleAdsFieldService.SearchGoogleAdsFields + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.GoogleAdsService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.GroupPlacementViewService.GetGroupPlacementView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.HotelGroupViewService.GetHotelGroupView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.HotelPerformanceViewService.GetHotelPerformanceView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.IncomeRangeViewService.GetIncomeRangeView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.InvoiceService.ListInvoices + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordPlanCampaignService.GetKeywordPlanCampaign + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordPlanIdeaService.GenerateKeywordIdeas + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.KeywordPlanService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordThemeConstantService.GetKeywordThemeConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordThemeConstantService.SuggestKeywordThemeConstants + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.KeywordViewService.GetKeywordView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.LabelService.GetLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.LabelService.MutateLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.LandingPageViewService.GetLandingPageView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.LanguageConstantService.GetLanguageConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.LifeEventService.GetLifeEvent + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.LocationViewService.GetLocationView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ManagedPlacementViewService.GetManagedPlacementView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.MediaFileService.GetMediaFile + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.MediaFileService.MutateMediaFiles + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.MerchantCenterLinkService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.MobileDeviceConstantService.GetMobileDeviceConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.OfflineUserDataJobService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ParentalStatusViewService.GetParentalStatusView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.PaymentsAccountService.ListPaymentsAccounts + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ProductGroupViewService.GetProductGroupView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.ReachPlanService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v8.services.RecommendationService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.RemarketingActionService.GetRemarketingAction + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.RemarketingActionService.MutateRemarketingActions + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.SearchTermViewService.GetSearchTermView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.SharedCriterionService.GetSharedCriterion + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.SharedCriterionService.MutateSharedCriteria + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.SharedSetService.GetSharedSet + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.SharedSetService.MutateSharedSets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ShoppingPerformanceViewService.GetShoppingPerformanceView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.SmartCampaignSearchTermViewService.GetSmartCampaignSearchTermView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.SmartCampaignSettingService.GetSmartCampaignSetting + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.SmartCampaignSettingService.MutateSmartCampaignSettings + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.SmartCampaignSuggestService.SuggestSmartCampaignAd + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.SmartCampaignSuggestService.SuggestSmartCampaignBudgetOptions + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.TopicConstantService.GetTopicConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.TopicViewService.GetTopicView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.UserDataService.UploadUserData + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.UserInterestService.GetUserInterest + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.UserListService.GetUserList + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.UserListService.MutateUserLists + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.UserLocationViewService.GetUserLocationView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.VideoService.GetVideo + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v8.services.WebpageViewService.GetWebpageView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.longrunning.Operations.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords diff --git a/google/ads/googleads/v8/resources/BUILD.bazel b/google/ads/googleads/v8/resources/BUILD.bazel new file mode 100644 index 000000000..5d72781d8 --- /dev/null +++ b/google/ads/googleads/v8/resources/BUILD.bazel @@ -0,0 +1,97 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") + +# TODO(ohren): Change srcs to use an enumeration of each individual proto +# instead of *.proto globbing once the build file generator supports +# subpackages. +proto_library( + name = "resources_proto", + srcs = glob(["*.proto"]), + deps = [ + "//google/ads/googleads/v8/common:common_proto", + "//google/ads/googleads/v8/enums:enums_proto", + "//google/ads/googleads/v8/errors:errors_proto", + "//google/api:annotations_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "@com_google_protobuf//:field_mask_proto", + "@com_google_protobuf//:wrappers_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_proto_library", +) + +java_proto_library( + name = "resources_java_proto", + deps = [":resources_proto"], +) + +############################################################################## +# PHP +############################################################################## + +# PHP targets are in the parent directory's BUILD.bazel file to facilitate +# aggregating metadata using a single underlying call to protoc. + +############################################################################## +# C# +############################################################################## +load( + "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", + "csharp_proto_library", +) + +csharp_proto_library( + name = "resources_csharp_proto", + deps = [":resources_proto"], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", + "ruby_proto_library", +) + +ruby_proto_library( + name = "resources_ruby_proto", + deps = [":resources_proto"], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_proto_library", +) + +py_proto_library( + name = "resources_py_proto", + deps = [":resources_proto"], +) diff --git a/google/ads/googleads/v8/resources/accessible_bidding_strategy.proto b/google/ads/googleads/v8/resources/accessible_bidding_strategy.proto new file mode 100644 index 000000000..a03a154d2 --- /dev/null +++ b/google/ads/googleads/v8/resources/accessible_bidding_strategy.proto @@ -0,0 +1,172 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/bidding_strategy_type.proto"; +import "google/ads/googleads/v8/enums/target_impression_share_location.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AccessibleBiddingStrategyProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Represents a view of BiddingStrategies owned by and shared with the customer. +// +// In contrast to BiddingStrategy, this resource includes strategies owned by +// managers of the customer and shared with this customer - in addition to +// strategies owned by this customer. This resource does not provide metrics and +// only exposes a limited subset of the BiddingStrategy attributes. +message AccessibleBiddingStrategy { + option (google.api.resource) = { + type: "googleads.googleapis.com/AccessibleBiddingStrategy" + pattern: "customers/{customer_id}/accessibleBiddingStrategies/{bidding_strategy_id}" + }; + + // An automated bidding strategy to help get the most conversion value for + // your campaigns while spending your budget. + message MaximizeConversionValue { + // Output only. The target return on ad spend (ROAS) option. If set, the bid strategy + // will maximize revenue while averaging the target return on ad spend. If + // the target ROAS is high, the bid strategy may not be able to spend the + // full budget. If the target ROAS is not set, the bid strategy will aim to + // achieve the highest possible ROAS for the budget. + double target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // An automated bidding strategy to help get the most conversions for your + // campaigns while spending your budget. + message MaximizeConversions { + // Output only. The target cost per acquisition (CPA) option. This is the average amount + // that you would like to spend per acquisition. + int64 target_cpa = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // An automated bid strategy that sets bids to help get as many conversions as + // possible at the target cost-per-acquisition (CPA) you set. + message TargetCpa { + // Output only. Average CPA target. + // This target should be greater than or equal to minimum billable unit + // based on the currency for the account. + optional int64 target_cpa_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // An automated bidding strategy that sets bids so that a certain percentage + // of search ads are shown at the top of the first page (or other targeted + // location). + message TargetImpressionShare { + // Output only. The targeted location on the search results page. + google.ads.googleads.v8.enums.TargetImpressionShareLocationEnum.TargetImpressionShareLocation location = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The desired fraction of ads to be shown in the targeted location in + // micros. E.g. 1% equals 10,000. + optional int64 location_fraction_micros = 2; + + // Output only. The highest CPC bid the automated bidding system is permitted to specify. + // This is a required field entered by the advertiser that sets the ceiling + // and specified in local micros. + optional int64 cpc_bid_ceiling_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // An automated bidding strategy that helps you maximize revenue while + // averaging a specific target return on ad spend (ROAS). + message TargetRoas { + // Output only. The desired revenue (based on conversion data) per unit of spend. + optional double target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // An automated bid strategy that sets your bids to help get as many clicks + // as possible within your budget. + message TargetSpend { + // Output only. The spend target under which to maximize clicks. + // A TargetSpend bidder will attempt to spend the smaller of this value + // or the natural throttling spend amount. + // If not specified, the budget is used as the spend target. + // This field is deprecated and should no longer be used. See + // https://ads-developers.googleblog.com/2020/05/reminder-about-sunset-creation-of.html + // for details. + optional int64 target_spend_micros = 1 [ + deprecated = true, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + + // Output only. Maximum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + optional int64 cpc_bid_ceiling_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. The resource name of the accessible bidding strategy. + // AccessibleBiddingStrategy resource names have the form: + // + // `customers/{customer_id}/accessibleBiddingStrategies/{bidding_strategy_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccessibleBiddingStrategy" + } + ]; + + // Output only. The ID of the bidding strategy. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the bidding strategy. + string name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the bidding strategy. + google.ads.googleads.v8.enums.BiddingStrategyTypeEnum.BiddingStrategyType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ID of the Customer which owns the bidding strategy. + int64 owner_customer_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. descriptive_name of the Customer which owns the bidding strategy. + string owner_descriptive_name = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The bidding scheme. + // + // Only one can be set. + oneof scheme { + // Output only. An automated bidding strategy to help get the most conversion value for + // your campaigns while spending your budget. + MaximizeConversionValue maximize_conversion_value = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. An automated bidding strategy to help get the most conversions for your + // campaigns while spending your budget. + MaximizeConversions maximize_conversions = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A bidding strategy that sets bids to help get as many conversions as + // possible at the target cost-per-acquisition (CPA) you set. + TargetCpa target_cpa = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A bidding strategy that automatically optimizes towards a desired + // percentage of impressions. + TargetImpressionShare target_impression_share = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A bidding strategy that helps you maximize revenue while averaging a + // specific target Return On Ad Spend (ROAS). + TargetRoas target_roas = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A bid strategy that sets your bids to help get as many clicks as + // possible within your budget. + TargetSpend target_spend = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v8/resources/account_budget.proto b/google/ads/googleads/v8/resources/account_budget.proto new file mode 100644 index 000000000..8d37fae32 --- /dev/null +++ b/google/ads/googleads/v8/resources/account_budget.proto @@ -0,0 +1,252 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/account_budget_proposal_type.proto"; +import "google/ads/googleads/v8/enums/account_budget_status.proto"; +import "google/ads/googleads/v8/enums/spending_limit_type.proto"; +import "google/ads/googleads/v8/enums/time_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the AccountBudget resource. + +// An account-level budget. It contains information about the budget itself, +// as well as the most recently approved changes to the budget and proposed +// changes that are pending approval. The proposed changes that are pending +// approval, if any, are found in 'pending_proposal'. Effective details about +// the budget are found in fields prefixed 'approved_', 'adjusted_' and those +// without a prefix. Since some effective details may differ from what the user +// had originally requested (e.g. spending limit), these differences are +// juxtaposed via 'proposed_', 'approved_', and possibly 'adjusted_' fields. +// +// This resource is mutated using AccountBudgetProposal and cannot be mutated +// directly. A budget may have at most one pending proposal at any given time. +// It is read through pending_proposal. +// +// Once approved, a budget may be subject to adjustments, such as credit +// adjustments. Adjustments create differences between the 'approved' and +// 'adjusted' fields, which would otherwise be identical. +message AccountBudget { + option (google.api.resource) = { + type: "googleads.googleapis.com/AccountBudget" + pattern: "customers/{customer_id}/accountBudgets/{account_budget_id}" + }; + + // A pending proposal associated with the enclosing account-level budget, + // if applicable. + message PendingAccountBudgetProposal { + // Output only. The resource name of the proposal. + // AccountBudgetProposal resource names have the form: + // + // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` + optional string account_budget_proposal = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudgetProposal" + } + ]; + + // Output only. The type of this proposal, e.g. END to end the budget associated + // with this proposal. + google.ads.googleads.v8.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name to assign to the account-level budget. + optional string name = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The start time in yyyy-MM-dd HH:mm:ss format. + optional string start_date_time = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A purchase order number is a value that helps users reference this budget + // in their monthly invoices. + optional string purchase_order_number = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Notes associated with this budget. + optional string notes = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when this account-level budget proposal was created. + // Formatted as yyyy-MM-dd HH:mm:ss. + optional string creation_date_time = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The end time of the account-level budget. + oneof end_time { + // Output only. The end time in yyyy-MM-dd HH:mm:ss format. + string end_date_time = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The end time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v8.enums.TimeTypeEnum.TimeType end_time_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The spending limit. + oneof spending_limit { + // Output only. The spending limit in micros. One million is equivalent to + // one unit. + int64 spending_limit_micros = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v8.enums.SpendingLimitTypeEnum.SpendingLimitType spending_limit_type = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + } + + // Output only. The resource name of the account-level budget. + // AccountBudget resource names have the form: + // + // `customers/{customer_id}/accountBudgets/{account_budget_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudget" + } + ]; + + // Output only. The ID of the account-level budget. + optional int64 id = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the billing setup associated with this account-level + // budget. BillingSetup resource names have the form: + // + // `customers/{customer_id}/billingSetups/{billing_setup_id}` + optional string billing_setup = 24 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BillingSetup" + } + ]; + + // Output only. The status of this account-level budget. + google.ads.googleads.v8.enums.AccountBudgetStatusEnum.AccountBudgetStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the account-level budget. + optional string name = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The proposed start time of the account-level budget in + // yyyy-MM-dd HH:mm:ss format. If a start time type of NOW was proposed, + // this is the time of request. + optional string proposed_start_date_time = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The approved start time of the account-level budget in yyyy-MM-dd HH:mm:ss + // format. + // + // For example, if a new budget is approved after the proposed start time, + // the approved start time is the time of approval. + optional string approved_start_date_time = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total adjustments amount. + // + // An example of an adjustment is courtesy credits. + int64 total_adjustments_micros = 33 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The value of Ads that have been served, in micros. + // + // This includes overdelivery costs, in which case a credit might be + // automatically applied to the budget (see total_adjustments_micros). + int64 amount_served_micros = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A purchase order number is a value that helps users reference this budget + // in their monthly invoices. + optional string purchase_order_number = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Notes associated with the budget. + optional string notes = 36 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The pending proposal to modify this budget, if applicable. + PendingAccountBudgetProposal pending_proposal = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The proposed end time of the account-level budget. + oneof proposed_end_time { + // Output only. The proposed end time in yyyy-MM-dd HH:mm:ss format. + string proposed_end_date_time = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The proposed end time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v8.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The approved end time of the account-level budget. + // + // For example, if a budget's end time is updated and the proposal is approved + // after the proposed end time, the approved end time is the time of approval. + oneof approved_end_time { + // Output only. The approved end time in yyyy-MM-dd HH:mm:ss format. + string approved_end_date_time = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The approved end time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v8.enums.TimeTypeEnum.TimeType approved_end_time_type = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The proposed spending limit. + oneof proposed_spending_limit { + // Output only. The proposed spending limit in micros. One million is equivalent to + // one unit. + int64 proposed_spending_limit_micros = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The proposed spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v8.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The approved spending limit. + // + // For example, if the amount already spent by the account exceeds the + // proposed spending limit at the time the proposal is approved, the approved + // spending limit is set to the amount already spent. + oneof approved_spending_limit { + // Output only. The approved spending limit in micros. One million is equivalent to + // one unit. This will only be populated if the proposed spending limit + // is finite, and will always be greater than or equal to the + // proposed spending limit. + int64 approved_spending_limit_micros = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The approved spending limit as a well-defined type, e.g. INFINITE. This + // will only be populated if the approved spending limit is INFINITE. + google.ads.googleads.v8.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The spending limit after adjustments have been applied. Adjustments are + // stored in total_adjustments_micros. + // + // This value has the final say on how much the account is allowed to spend. + oneof adjusted_spending_limit { + // Output only. The adjusted spending limit in micros. One million is equivalent to + // one unit. + // + // If the approved spending limit is finite, the adjusted + // spending limit may vary depending on the types of adjustments applied + // to this budget, if applicable. + // + // The different kinds of adjustments are described here: + // https://support.google.com/google-ads/answer/1704323 + // + // For example, a debit adjustment reduces how much the account is + // allowed to spend. + int64 adjusted_spending_limit_micros = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The adjusted spending limit as a well-defined type, e.g. INFINITE. + // This will only be populated if the adjusted spending limit is INFINITE, + // which is guaranteed to be true if the approved spending limit is + // INFINITE. + google.ads.googleads.v8.enums.SpendingLimitTypeEnum.SpendingLimitType adjusted_spending_limit_type = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v8/resources/account_budget_proposal.proto b/google/ads/googleads/v8/resources/account_budget_proposal.proto new file mode 100644 index 000000000..8a0ca14f1 --- /dev/null +++ b/google/ads/googleads/v8/resources/account_budget_proposal.proto @@ -0,0 +1,160 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/account_budget_proposal_status.proto"; +import "google/ads/googleads/v8/enums/account_budget_proposal_type.proto"; +import "google/ads/googleads/v8/enums/spending_limit_type.proto"; +import "google/ads/googleads/v8/enums/time_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProposalProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the AccountBudgetProposal resource. + +// An account-level budget proposal. +// +// All fields prefixed with 'proposed' may not necessarily be applied directly. +// For example, proposed spending limits may be adjusted before their +// application. This is true if the 'proposed' field has an 'approved' +// counterpart, e.g. spending limits. +// +// Please note that the proposal type (proposal_type) changes which fields are +// required and which must remain empty. +message AccountBudgetProposal { + option (google.api.resource) = { + type: "googleads.googleapis.com/AccountBudgetProposal" + pattern: "customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}" + }; + + // Immutable. The resource name of the proposal. + // AccountBudgetProposal resource names have the form: + // + // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudgetProposal" + } + ]; + + // Output only. The ID of the proposal. + optional int64 id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The resource name of the billing setup associated with this proposal. + optional string billing_setup = 26 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BillingSetup" + } + ]; + + // Immutable. The resource name of the account-level budget associated with this + // proposal. + optional string account_budget = 27 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudget" + } + ]; + + // Immutable. The type of this proposal, e.g. END to end the budget associated with this + // proposal. + google.ads.googleads.v8.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The status of this proposal. + // When a new proposal is created, the status defaults to PENDING. + google.ads.googleads.v8.enums.AccountBudgetProposalStatusEnum.AccountBudgetProposalStatus status = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The name to assign to the account-level budget. + optional string proposed_name = 28 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The approved start date time in yyyy-mm-dd hh:mm:ss format. + optional string approved_start_date_time = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. A purchase order number is a value that enables the user to help them + // reference this budget in their monthly invoices. + optional string proposed_purchase_order_number = 35 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Notes associated with this budget. + optional string proposed_notes = 36 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The date time when this account-level budget proposal was created, which is + // not the same as its approval date time, if applicable. + optional string creation_date_time = 37 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The date time when this account-level budget was approved, if applicable. + optional string approval_date_time = 38 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The proposed start date time of the account-level budget, which cannot be + // in the past. + oneof proposed_start_time { + // Immutable. The proposed start date time in yyyy-mm-dd hh:mm:ss format. + string proposed_start_date_time = 29 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The proposed start date time as a well-defined type, e.g. NOW. + google.ads.googleads.v8.enums.TimeTypeEnum.TimeType proposed_start_time_type = 7 [(google.api.field_behavior) = IMMUTABLE]; + } + + // The proposed end date time of the account-level budget, which cannot be in + // the past. + oneof proposed_end_time { + // Immutable. The proposed end date time in yyyy-mm-dd hh:mm:ss format. + string proposed_end_date_time = 31 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The proposed end date time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v8.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9 [(google.api.field_behavior) = IMMUTABLE]; + } + + // The approved end date time of the account-level budget. + oneof approved_end_time { + // Output only. The approved end date time in yyyy-mm-dd hh:mm:ss format. + string approved_end_date_time = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The approved end date time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v8.enums.TimeTypeEnum.TimeType approved_end_time_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The proposed spending limit. + oneof proposed_spending_limit { + // Immutable. The proposed spending limit in micros. One million is equivalent to + // one unit. + int64 proposed_spending_limit_micros = 33 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The proposed spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v8.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 11 [(google.api.field_behavior) = IMMUTABLE]; + } + + // The approved spending limit. + oneof approved_spending_limit { + // Output only. The approved spending limit in micros. One million is equivalent to + // one unit. + int64 approved_spending_limit_micros = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The approved spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v8.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v8/resources/account_link.proto b/google/ads/googleads/v8/resources/account_link.proto new file mode 100644 index 000000000..054b6408b --- /dev/null +++ b/google/ads/googleads/v8/resources/account_link.proto @@ -0,0 +1,125 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/account_link_status.proto"; +import "google/ads/googleads/v8/enums/linked_account_type.proto"; +import "google/ads/googleads/v8/enums/mobile_app_vendor.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AccountLinkProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Represents the data sharing connection between a Google Ads account and +// another account +message AccountLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/AccountLink" + pattern: "customers/{customer_id}/accountLinks/{account_link_id}" + }; + + // Immutable. Resource name of the account link. + // AccountLink resource names have the form: + // `customers/{customer_id}/accountLinks/{account_link_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountLink" + } + ]; + + // Output only. The ID of the link. + // This field is read only. + optional int64 account_link_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The status of the link. + google.ads.googleads.v8.enums.AccountLinkStatusEnum.AccountLinkStatus status = 3; + + // Output only. The type of the linked account. + google.ads.googleads.v8.enums.LinkedAccountTypeEnum.LinkedAccountType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // An account linked to this Google Ads account. + oneof linked_account { + // Immutable. A third party app analytics link. + ThirdPartyAppAnalyticsLinkIdentifier third_party_app_analytics = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Data partner link. + DataPartnerLinkIdentifier data_partner = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Google Ads link. + GoogleAdsLinkIdentifier google_ads = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} + +// The identifiers of a Third Party App Analytics Link. +message ThirdPartyAppAnalyticsLinkIdentifier { + // Immutable. The ID of the app analytics provider. + // This field should not be empty when creating a new third + // party app analytics link. It is unable to be modified after the creation of + // the link. + optional int64 app_analytics_provider_id = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A string that uniquely identifies a mobile application from which the data + // was collected to the Google Ads API. For iOS, the ID string is the 9 digit + // string that appears at the end of an App Store URL (e.g., "422689480" for + // "Gmail" whose App Store link is + // https://apps.apple.com/us/app/gmail-email-by-google/id422689480). For + // Android, the ID string is the application's package name (e.g., + // "com.google.android.gm" for "Gmail" given Google Play link + // https://play.google.com/store/apps/details?id=com.google.android.gm) + // This field should not be empty when creating a new third + // party app analytics link. It is unable to be modified after the creation of + // the link. + optional string app_id = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The vendor of the app. + // This field should not be empty when creating a new third + // party app analytics link. It is unable to be modified after the creation of + // the link. + google.ads.googleads.v8.enums.MobileAppVendorEnum.MobileAppVendor app_vendor = 3 [(google.api.field_behavior) = IMMUTABLE]; +} + +// The identifier for Data Partner account. +message DataPartnerLinkIdentifier { + // Immutable. The customer ID of the Data partner account. + // This field is required and should not be empty when creating a new + // data partner link. It is unable to be modified after the creation of + // the link. + optional int64 data_partner_id = 1 [(google.api.field_behavior) = IMMUTABLE]; +} + +// The identifier for Google Ads account. +message GoogleAdsLinkIdentifier { + // Immutable. The resource name of the Google Ads account. + // This field is required and should not be empty when creating a new + // Google Ads link. It is unable to be modified after the creation of + // the link. + optional string customer = 3 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/ad.proto b/google/ads/googleads/v8/resources/ad.proto new file mode 100644 index 000000000..64a8c3fc4 --- /dev/null +++ b/google/ads/googleads/v8/resources/ad.proto @@ -0,0 +1,188 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/ad_type_infos.proto"; +import "google/ads/googleads/v8/common/custom_parameter.proto"; +import "google/ads/googleads/v8/common/final_app_url.proto"; +import "google/ads/googleads/v8/common/url_collection.proto"; +import "google/ads/googleads/v8/enums/ad_type.proto"; +import "google/ads/googleads/v8/enums/device.proto"; +import "google/ads/googleads/v8/enums/system_managed_entity_source.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad type. + +// An ad. +message Ad { + option (google.api.resource) = { + type: "googleads.googleapis.com/Ad" + pattern: "customers/{customer_id}/ads/{ad_id}" + }; + + // Immutable. The resource name of the ad. + // Ad resource names have the form: + // + // `customers/{customer_id}/ads/{ad_id}` + string resource_name = 37 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Ad" + } + ]; + + // Output only. The ID of the ad. + optional int64 id = 40 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The list of possible final URLs after all cross-domain redirects for the + // ad. + repeated string final_urls = 41; + + // A list of final app URLs that will be used on mobile if the user has the + // specific app installed. + repeated google.ads.googleads.v8.common.FinalAppUrl final_app_urls = 35; + + // The list of possible final mobile URLs after all cross-domain redirects + // for the ad. + repeated string final_mobile_urls = 42; + + // The URL template for constructing a tracking URL. + optional string tracking_url_template = 43; + + // The suffix to use when constructing a final URL. + optional string final_url_suffix = 44; + + // The list of mappings that can be used to substitute custom parameter tags + // in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + // For mutates, please use url custom parameter operations. + repeated google.ads.googleads.v8.common.CustomParameter url_custom_parameters = 10; + + // The URL that appears in the ad description for some ad formats. + optional string display_url = 45; + + // Output only. The type of ad. + google.ads.googleads.v8.enums.AdTypeEnum.AdType type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Indicates if this ad was automatically added by Google Ads and not by a + // user. For example, this could happen when ads are automatically created as + // suggestions for new ads based on knowledge of how existing ads are + // performing. + optional bool added_by_google_ads = 46 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The device preference for the ad. You can only specify a preference for + // mobile devices. When this preference is set the ad will be preferred over + // other ads when being displayed on a mobile device. The ad can still be + // displayed on other device types, e.g. if no other ads are available. + // If unspecified (no device preference), all devices are targeted. + // This is only supported by some ad types. + google.ads.googleads.v8.enums.DeviceEnum.Device device_preference = 20; + + // Additional URLs for the ad that are tagged with a unique identifier that + // can be referenced from other fields in the ad. + repeated google.ads.googleads.v8.common.UrlCollection url_collections = 26; + + // Immutable. The name of the ad. This is only used to be able to identify the ad. It + // does not need to be unique and does not affect the served ad. The name + // field is currently only supported for DisplayUploadAd, ImageAd, + // ShoppingComparisonListingAd and VideoAd. + optional string name = 47 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. If this ad is system managed, then this field will indicate the source. + // This field is read-only. + google.ads.googleads.v8.enums.SystemManagedResourceSourceEnum.SystemManagedResourceSource system_managed_resource_source = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Details pertinent to the ad type. Exactly one value must be set. + oneof ad_data { + // Immutable. Details pertaining to a text ad. + google.ads.googleads.v8.common.TextAdInfo text_ad = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Details pertaining to an expanded text ad. + google.ads.googleads.v8.common.ExpandedTextAdInfo expanded_text_ad = 7; + + // Details pertaining to a call ad. + google.ads.googleads.v8.common.CallAdInfo call_ad = 49; + + // Immutable. Details pertaining to an Expanded Dynamic Search Ad. + // This type of ad has its headline, final URLs, and display URL + // auto-generated at serving time according to domain name specific + // information provided by `dynamic_search_ads_setting` linked at the + // campaign level. + google.ads.googleads.v8.common.ExpandedDynamicSearchAdInfo expanded_dynamic_search_ad = 14 [(google.api.field_behavior) = IMMUTABLE]; + + // Details pertaining to a hotel ad. + google.ads.googleads.v8.common.HotelAdInfo hotel_ad = 15; + + // Details pertaining to a Smart Shopping ad. + google.ads.googleads.v8.common.ShoppingSmartAdInfo shopping_smart_ad = 17; + + // Details pertaining to a Shopping product ad. + google.ads.googleads.v8.common.ShoppingProductAdInfo shopping_product_ad = 18; + + // Immutable. Details pertaining to a Gmail ad. + google.ads.googleads.v8.common.GmailAdInfo gmail_ad = 21 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Details pertaining to an Image ad. + google.ads.googleads.v8.common.ImageAdInfo image_ad = 22 [(google.api.field_behavior) = IMMUTABLE]; + + // Details pertaining to a Video ad. + google.ads.googleads.v8.common.VideoAdInfo video_ad = 24; + + // Details pertaining to a Video responsive ad. + google.ads.googleads.v8.common.VideoResponsiveAdInfo video_responsive_ad = 39; + + // Details pertaining to a responsive search ad. + google.ads.googleads.v8.common.ResponsiveSearchAdInfo responsive_search_ad = 25; + + // Details pertaining to a legacy responsive display ad. + google.ads.googleads.v8.common.LegacyResponsiveDisplayAdInfo legacy_responsive_display_ad = 28; + + // Details pertaining to an app ad. + google.ads.googleads.v8.common.AppAdInfo app_ad = 29; + + // Immutable. Details pertaining to a legacy app install ad. + google.ads.googleads.v8.common.LegacyAppInstallAdInfo legacy_app_install_ad = 30 [(google.api.field_behavior) = IMMUTABLE]; + + // Details pertaining to a responsive display ad. + google.ads.googleads.v8.common.ResponsiveDisplayAdInfo responsive_display_ad = 31; + + // Details pertaining to a local ad. + google.ads.googleads.v8.common.LocalAdInfo local_ad = 32; + + // Details pertaining to a display upload ad. + google.ads.googleads.v8.common.DisplayUploadAdInfo display_upload_ad = 33; + + // Details pertaining to an app engagement ad. + google.ads.googleads.v8.common.AppEngagementAdInfo app_engagement_ad = 34; + + // Details pertaining to a Shopping Comparison Listing ad. + google.ads.googleads.v8.common.ShoppingComparisonListingAdInfo shopping_comparison_listing_ad = 36; + + // Details pertaining to a Smart campaign ad. + google.ads.googleads.v8.common.SmartCampaignAdInfo smart_campaign_ad = 48; + } +} diff --git a/google/ads/googleads/v8/resources/ad_group.proto b/google/ads/googleads/v8/resources/ad_group.proto new file mode 100644 index 000000000..526a2e7cb --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group.proto @@ -0,0 +1,187 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/custom_parameter.proto"; +import "google/ads/googleads/v8/common/explorer_auto_optimizer_setting.proto"; +import "google/ads/googleads/v8/common/targeting_setting.proto"; +import "google/ads/googleads/v8/enums/ad_group_ad_rotation_mode.proto"; +import "google/ads/googleads/v8/enums/ad_group_status.proto"; +import "google/ads/googleads/v8/enums/ad_group_type.proto"; +import "google/ads/googleads/v8/enums/asset_field_type.proto"; +import "google/ads/googleads/v8/enums/bidding_source.proto"; +import "google/ads/googleads/v8/enums/targeting_dimension.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad group resource. + +// An ad group. +message AdGroup { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroup" + pattern: "customers/{customer_id}/adGroups/{ad_group_id}" + }; + + // Immutable. The resource name of the ad group. + // Ad group resource names have the form: + // + // `customers/{customer_id}/adGroups/{ad_group_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. The ID of the ad group. + optional int64 id = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the ad group. + // + // This field is required and should not be empty when creating new ad + // groups. + // + // It must contain fewer than 255 UTF-8 full-width characters. + // + // It must not contain any null (code point 0x0), NL line feed + // (code point 0xA) or carriage return (code point 0xD) characters. + optional string name = 35; + + // The status of the ad group. + google.ads.googleads.v8.enums.AdGroupStatusEnum.AdGroupStatus status = 5; + + // Immutable. The type of the ad group. + google.ads.googleads.v8.enums.AdGroupTypeEnum.AdGroupType type = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // The ad rotation mode of the ad group. + google.ads.googleads.v8.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; + + // Output only. For draft or experiment ad groups, this field is the resource name of the + // base ad group from which this ad group was created. If a draft or + // experiment ad group does not have a base ad group, then this field is null. + // + // For base ad groups, this field equals the ad group resource name. + // + // This field is read-only. + optional string base_ad_group = 36 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // The URL template for constructing a tracking URL. + optional string tracking_url_template = 37; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v8.common.CustomParameter url_custom_parameters = 6; + + // Immutable. The campaign to which the ad group belongs. + optional string campaign = 38 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // The maximum CPC (cost-per-click) bid. + optional int64 cpc_bid_micros = 39; + + // The maximum CPM (cost-per-thousand viewable impressions) bid. + optional int64 cpm_bid_micros = 40; + + // The target CPA (cost-per-acquisition). If the ad group's campaign + // bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa + // field set), then this field overrides the target CPA specified in the + // campaign's bidding strategy. + // Otherwise, this value is ignored. + optional int64 target_cpa_micros = 41; + + // Output only. The CPV (cost-per-view) bid. + optional int64 cpv_bid_micros = 42 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Average amount in micros that the advertiser is willing to pay for every + // thousand times the ad is shown. + optional int64 target_cpm_micros = 43; + + // The target ROAS (return-on-ad-spend) override. If the ad group's campaign + // bidding strategy is TargetRoas or MaximizeConversionValue (with its + // target_roas field set), then this field overrides the target ROAS specified + // in the campaign's bidding strategy. + // Otherwise, this value is ignored. + optional double target_roas = 44; + + // The percent cpc bid amount, expressed as a fraction of the advertised price + // for some good or service. The valid range for the fraction is [0,1) and the + // value stored here is 1,000,000 * [fraction]. + optional int64 percent_cpc_bid_micros = 45; + + // Settings for the Display Campaign Optimizer, initially termed "Explorer". + google.ads.googleads.v8.common.ExplorerAutoOptimizerSetting explorer_auto_optimizer_setting = 21; + + // Allows advertisers to specify a targeting dimension on which to place + // absolute bids. This is only applicable for campaigns that target only the + // display network and not search. + google.ads.googleads.v8.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; + + // URL template for appending params to Final URL. + optional string final_url_suffix = 46; + + // Setting for targeting related features. + google.ads.googleads.v8.common.TargetingSetting targeting_setting = 25; + + // Output only. The effective target CPA (cost-per-acquisition). + // This field is read-only. + optional int64 effective_target_cpa_micros = 47 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective target CPA. + // This field is read-only. + google.ads.googleads.v8.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The effective target ROAS (return-on-ad-spend). + // This field is read-only. + optional double effective_target_roas = 48 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective target ROAS. + // This field is read-only. + google.ads.googleads.v8.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource names of labels attached to this ad group. + repeated string labels = 49 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupLabel" + } + ]; + + // The asset field types that should be excluded from this ad group. Asset + // links with these field types will not be inherited by this ad group from + // the upper levels. + repeated google.ads.googleads.v8.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; +} diff --git a/google/ads/googleads/v8/resources/ad_group_ad.proto b/google/ads/googleads/v8/resources/ad_group_ad.proto new file mode 100644 index 000000000..6ebbe1ad6 --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_ad.proto @@ -0,0 +1,103 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/policy.proto"; +import "google/ads/googleads/v8/enums/ad_group_ad_status.proto"; +import "google/ads/googleads/v8/enums/ad_strength.proto"; +import "google/ads/googleads/v8/enums/policy_approval_status.proto"; +import "google/ads/googleads/v8/enums/policy_review_status.proto"; +import "google/ads/googleads/v8/resources/ad.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad group ad resource. + +// An ad group ad. +message AdGroupAd { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupAd" + pattern: "customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}" + }; + + // Immutable. The resource name of the ad. + // Ad group ad resource names have the form: + // + // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; + + // The status of the ad. + google.ads.googleads.v8.enums.AdGroupAdStatusEnum.AdGroupAdStatus status = 3; + + // Immutable. The ad group to which the ad belongs. + optional string ad_group = 9 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Immutable. The ad. + Ad ad = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Policy information for the ad. + AdGroupAdPolicySummary policy_summary = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Overall ad strength for this ad group ad. + google.ads.googleads.v8.enums.AdStrengthEnum.AdStrength ad_strength = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A list of recommendations to improve the ad strength. For example, a + // recommendation could be "Your headlines are a little too similar. + // Try adding more distinct headlines.". + repeated string action_items = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource names of labels attached to this ad group ad. + repeated string labels = 10 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAdLabel" + } + ]; +} + +// Contains policy information for an ad. +message AdGroupAdPolicySummary { + // Output only. The list of policy findings for this ad. + repeated google.ads.googleads.v8.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Where in the review process this ad is. + google.ads.googleads.v8.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The overall approval status of this ad, calculated based on the status of + // its individual policy topic entries. + google.ads.googleads.v8.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/ad_group_ad_asset_view.proto b/google/ads/googleads/v8/resources/ad_group_ad_asset_view.proto new file mode 100644 index 000000000..307857a81 --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_ad_asset_view.proto @@ -0,0 +1,105 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/policy.proto"; +import "google/ads/googleads/v8/enums/asset_field_type.proto"; +import "google/ads/googleads/v8/enums/asset_performance_label.proto"; +import "google/ads/googleads/v8/enums/policy_approval_status.proto"; +import "google/ads/googleads/v8/enums/policy_review_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdAssetViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad group ad asset view resource. + +// A link between an AdGroupAd and an Asset. +// Currently we only support AdGroupAdAssetView for AppAds. +message AdGroupAdAssetView { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupAdAssetView" + pattern: "customers/{customer_id}/adGroupAdAssetViews/{ad_group_id}~{ad_id}~{asset_id}~{field_type}" + }; + + // Output only. The resource name of the ad group ad asset view. + // Ad group ad asset view resource names have the form (Before V4): + // + // `customers/{customer_id}/adGroupAdAssets/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}` + // + // Ad group ad asset view resource names have the form (Beginning from V4): + // + // `customers/{customer_id}/adGroupAdAssetViews/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAdAssetView" + } + ]; + + // Output only. The ad group ad to which the asset is linked. + optional string ad_group_ad = 9 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; + + // Output only. The asset which is linked to the ad group ad. + optional string asset = 10 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Output only. Role that the asset takes in the ad. + google.ads.googleads.v8.enums.AssetFieldTypeEnum.AssetFieldType field_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The status between the asset and the latest version of the ad. If true, the + // asset is linked to the latest version of the ad. If false, it means the + // link once existed but has been removed and is no longer present in the + // latest version of the ad. + optional bool enabled = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Policy information for the ad group ad asset. + AdGroupAdAssetPolicySummary policy_summary = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Performance of an asset linkage. + google.ads.googleads.v8.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel performance_label = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Contains policy information for an ad group ad asset. +message AdGroupAdAssetPolicySummary { + // Output only. The list of policy findings for the ad group ad asset. + repeated google.ads.googleads.v8.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Where in the review process this ad group ad asset is. + google.ads.googleads.v8.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The overall approval status of this ad group ad asset, calculated based on + // the status of its individual policy topic entries. + google.ads.googleads.v8.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/ad_group_ad_label.proto b/google/ads/googleads/v8/resources/ad_group_ad_label.proto new file mode 100644 index 000000000..1d1e75471 --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_ad_label.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdLabelProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad group ad label resource. + +// A relationship between an ad group ad and a label. +message AdGroupAdLabel { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupAdLabel" + pattern: "customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}" + }; + + // Immutable. The resource name of the ad group ad label. + // Ad group ad label resource names have the form: + // `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAdLabel" + } + ]; + + // Immutable. The ad group ad to which the label is attached. + optional string ad_group_ad = 4 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; + + // Immutable. The label assigned to the ad group ad. + optional string label = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/ad_group_asset.proto b/google/ads/googleads/v8/resources/ad_group_asset.proto new file mode 100644 index 000000000..94efcb4e4 --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_asset.proto @@ -0,0 +1,80 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/asset_field_type.proto"; +import "google/ads/googleads/v8/enums/asset_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAssetProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the AdGroupAsset resource. + +// A link between an ad group and an asset. +message AdGroupAsset { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupAsset" + pattern: "customers/{customer_id}/adGroupAssets/{ad_group_id}~{asset_id}~{field_type}" + }; + + // Immutable. The resource name of the ad group asset. + // AdGroupAsset resource names have the form: + // + // `customers/{customer_id}/adGroupAssets/{ad_group_id}~{asset_id}~{field_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAsset" + } + ]; + + // Required. Immutable. The ad group to which the asset is linked. + string ad_group = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Required. Immutable. The asset which is linked to the ad group. + string asset = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Required. Immutable. Role that the asset takes under the linked ad group. + google.ads.googleads.v8.enums.AssetFieldTypeEnum.AssetFieldType field_type = 4 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Status of the ad group asset. + google.ads.googleads.v8.enums.AssetLinkStatusEnum.AssetLinkStatus status = 5; +} diff --git a/google/ads/googleads/v8/resources/ad_group_audience_view.proto b/google/ads/googleads/v8/resources/ad_group_audience_view.proto new file mode 100644 index 000000000..4c6ce2317 --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_audience_view.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAudienceViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad group audience view resource. + +// An ad group audience view. +// Includes performance data from interests and remarketing lists for Display +// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), +// aggregated at the audience level. +message AdGroupAudienceView { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupAudienceView" + pattern: "customers/{customer_id}/adGroupAudienceViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the ad group audience view. + // Ad group audience view resource names have the form: + // + // `customers/{customer_id}/adGroupAudienceViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAudienceView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/ad_group_bid_modifier.proto b/google/ads/googleads/v8/resources/ad_group_bid_modifier.proto new file mode 100644 index 000000000..cf22f5cca --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_bid_modifier.proto @@ -0,0 +1,112 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/ads/googleads/v8/enums/bid_modifier_source.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupBidModifierProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad group bid modifier resource. + +// Represents an ad group bid modifier. +message AdGroupBidModifier { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupBidModifier" + pattern: "customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}" + }; + + // Immutable. The resource name of the ad group bid modifier. + // Ad group bid modifier resource names have the form: + // + // `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupBidModifier" + } + ]; + + // Immutable. The ad group to which this criterion belongs. + optional string ad_group = 13 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. The ID of the criterion to bid modify. + // + // This field is ignored for mutates. + optional int64 criterion_id = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The modifier for the bid when the criterion matches. The modifier must be + // in the range: 0.1 - 10.0. The range is 1.0 - 6.0 for PreferredContent. + // Use 0 to opt out of a Device type. + optional double bid_modifier = 15; + + // Output only. The base ad group from which this draft/trial adgroup bid modifier was + // created. If ad_group is a base ad group then this field will be equal to + // ad_group. If the ad group was created in the draft or trial and has no + // corresponding base ad group, then this field will be null. + // This field is readonly. + optional string base_ad_group = 16 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. Bid modifier source. + google.ads.googleads.v8.enums.BidModifierSourceEnum.BidModifierSource bid_modifier_source = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The criterion of this ad group bid modifier. + // + // Required in create operations starting in V5. + oneof criterion { + // Immutable. Criterion for hotel date selection (default dates vs. user selected). + google.ads.googleads.v8.common.HotelDateSelectionTypeInfo hotel_date_selection_type = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Criterion for number of days prior to the stay the booking is being made. + google.ads.googleads.v8.common.HotelAdvanceBookingWindowInfo hotel_advance_booking_window = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Criterion for length of hotel stay in nights. + google.ads.googleads.v8.common.HotelLengthOfStayInfo hotel_length_of_stay = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Criterion for day of the week the booking is for. + google.ads.googleads.v8.common.HotelCheckInDayInfo hotel_check_in_day = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A device criterion. + google.ads.googleads.v8.common.DeviceInfo device = 11 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A preferred content criterion. + google.ads.googleads.v8.common.PreferredContentInfo preferred_content = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Criterion for a hotel check-in date range. + google.ads.googleads.v8.common.HotelCheckInDateRangeInfo hotel_check_in_date_range = 17 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v8/resources/ad_group_criterion.proto b/google/ads/googleads/v8/resources/ad_group_criterion.proto new file mode 100644 index 000000000..0d5e9d61b --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_criterion.proto @@ -0,0 +1,291 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/ads/googleads/v8/common/custom_parameter.proto"; +import "google/ads/googleads/v8/enums/ad_group_criterion_approval_status.proto"; +import "google/ads/googleads/v8/enums/ad_group_criterion_status.proto"; +import "google/ads/googleads/v8/enums/bidding_source.proto"; +import "google/ads/googleads/v8/enums/criterion_system_serving_status.proto"; +import "google/ads/googleads/v8/enums/criterion_type.proto"; +import "google/ads/googleads/v8/enums/quality_score_bucket.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad group criterion resource. + +// An ad group criterion. +message AdGroupCriterion { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupCriterion" + pattern: "customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}" + }; + + // A container for ad group criterion quality information. + message QualityInfo { + // Output only. The quality score. + // + // This field may not be populated if Google does not have enough + // information to determine a value. + optional int32 quality_score = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The performance of the ad compared to other advertisers. + google.ads.googleads.v8.enums.QualityScoreBucketEnum.QualityScoreBucket creative_quality_score = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The quality score of the landing page. + google.ads.googleads.v8.enums.QualityScoreBucketEnum.QualityScoreBucket post_click_quality_score = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The click-through rate compared to that of other advertisers. + google.ads.googleads.v8.enums.QualityScoreBucketEnum.QualityScoreBucket search_predicted_ctr = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Estimates for criterion bids at various positions. + message PositionEstimates { + // Output only. The estimate of the CPC bid required for ad to be shown on first + // page of search results. + optional int64 first_page_cpc_micros = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The estimate of the CPC bid required for ad to be displayed in first + // position, at the top of the first page of search results. + optional int64 first_position_cpc_micros = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The estimate of the CPC bid required for ad to be displayed at the top + // of the first page of search results. + optional int64 top_of_page_cpc_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Estimate of how many clicks per week you might get by changing your + // keyword bid to the value in first_position_cpc_micros. + optional int64 estimated_add_clicks_at_first_position_cpc = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Estimate of how your cost per week might change when changing your + // keyword bid to the value in first_position_cpc_micros. + optional int64 estimated_add_cost_at_first_position_cpc = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Immutable. The resource name of the ad group criterion. + // Ad group criterion resource names have the form: + // + // `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; + + // Output only. The ID of the criterion. + // + // This field is ignored for mutates. + optional int64 criterion_id = 56 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The display name of the criterion. + // + // This field is ignored for mutates. + string display_name = 77 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The status of the criterion. + // + // This is the status of the ad group criterion entity, set by the client. + // Note: UI reports may incorporate additional information that affects + // whether a criterion is eligible to run. In some cases a criterion that's + // REMOVED in the API can still show as enabled in the UI. + // For example, campaigns by default show to users of all age ranges unless + // excluded. The UI will show each age range as "enabled", since they're + // eligible to see the ads; but AdGroupCriterion.status will show "removed", + // since no positive criterion was added. + google.ads.googleads.v8.enums.AdGroupCriterionStatusEnum.AdGroupCriterionStatus status = 3; + + // Output only. Information regarding the quality of the criterion. + QualityInfo quality_info = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The ad group to which the criterion belongs. + optional string ad_group = 57 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. The type of the criterion. + google.ads.googleads.v8.enums.CriterionTypeEnum.CriterionType type = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Whether to target (`false`) or exclude (`true`) the criterion. + // + // This field is immutable. To switch a criterion from positive to negative, + // remove then re-add it. + optional bool negative = 58 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Serving status of the criterion. + google.ads.googleads.v8.enums.CriterionSystemServingStatusEnum.CriterionSystemServingStatus system_serving_status = 52 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Approval status of the criterion. + google.ads.googleads.v8.enums.AdGroupCriterionApprovalStatusEnum.AdGroupCriterionApprovalStatus approval_status = 53 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. List of disapproval reasons of the criterion. + // + // The different reasons for disapproving a criterion can be found here: + // https://support.google.com/adspolicy/answer/6008942 + // + // This field is read-only. + repeated string disapproval_reasons = 59 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource names of labels attached to this ad group criterion. + repeated string labels = 60 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterionLabel" + } + ]; + + // The modifier for the bid when the criterion matches. The modifier must be + // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. + optional double bid_modifier = 61; + + // The CPC (cost-per-click) bid. + optional int64 cpc_bid_micros = 62; + + // The CPM (cost-per-thousand viewable impressions) bid. + optional int64 cpm_bid_micros = 63; + + // The CPV (cost-per-view) bid. + optional int64 cpv_bid_micros = 64; + + // The CPC bid amount, expressed as a fraction of the advertised price + // for some good or service. The valid range for the fraction is [0,1) and the + // value stored here is 1,000,000 * [fraction]. + optional int64 percent_cpc_bid_micros = 65; + + // Output only. The effective CPC (cost-per-click) bid. + optional int64 effective_cpc_bid_micros = 66 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The effective CPM (cost-per-thousand viewable impressions) bid. + optional int64 effective_cpm_bid_micros = 67 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The effective CPV (cost-per-view) bid. + optional int64 effective_cpv_bid_micros = 68 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The effective Percent CPC bid amount. + optional int64 effective_percent_cpc_bid_micros = 69 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective CPC bid. + google.ads.googleads.v8.enums.BiddingSourceEnum.BiddingSource effective_cpc_bid_source = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective CPM bid. + google.ads.googleads.v8.enums.BiddingSourceEnum.BiddingSource effective_cpm_bid_source = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective CPV bid. + google.ads.googleads.v8.enums.BiddingSourceEnum.BiddingSource effective_cpv_bid_source = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective Percent CPC bid. + google.ads.googleads.v8.enums.BiddingSourceEnum.BiddingSource effective_percent_cpc_bid_source = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Estimates for criterion bids at various positions. + PositionEstimates position_estimates = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The list of possible final URLs after all cross-domain redirects for the + // ad. + repeated string final_urls = 70; + + // The list of possible final mobile URLs after all cross-domain redirects. + repeated string final_mobile_urls = 71; + + // URL template for appending params to final URL. + optional string final_url_suffix = 72; + + // The URL template for constructing a tracking URL. + optional string tracking_url_template = 73; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v8.common.CustomParameter url_custom_parameters = 14; + + // The ad group criterion. + // + // Exactly one must be set. + oneof criterion { + // Immutable. Keyword. + google.ads.googleads.v8.common.KeywordInfo keyword = 27 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Placement. + google.ads.googleads.v8.common.PlacementInfo placement = 28 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile app category. + google.ads.googleads.v8.common.MobileAppCategoryInfo mobile_app_category = 29 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile application. + google.ads.googleads.v8.common.MobileApplicationInfo mobile_application = 30 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Listing group. + google.ads.googleads.v8.common.ListingGroupInfo listing_group = 32 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Age range. + google.ads.googleads.v8.common.AgeRangeInfo age_range = 36 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Gender. + google.ads.googleads.v8.common.GenderInfo gender = 37 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Income range. + google.ads.googleads.v8.common.IncomeRangeInfo income_range = 38 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Parental status. + google.ads.googleads.v8.common.ParentalStatusInfo parental_status = 39 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. User List. + google.ads.googleads.v8.common.UserListInfo user_list = 42 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Video. + google.ads.googleads.v8.common.YouTubeVideoInfo youtube_video = 40 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Channel. + google.ads.googleads.v8.common.YouTubeChannelInfo youtube_channel = 41 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Topic. + google.ads.googleads.v8.common.TopicInfo topic = 43 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. User Interest. + google.ads.googleads.v8.common.UserInterestInfo user_interest = 45 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Webpage + google.ads.googleads.v8.common.WebpageInfo webpage = 46 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. App Payment Model. + google.ads.googleads.v8.common.AppPaymentModelInfo app_payment_model = 47 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Affinity. + google.ads.googleads.v8.common.CustomAffinityInfo custom_affinity = 48 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Intent. + google.ads.googleads.v8.common.CustomIntentInfo custom_intent = 49 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Audience. + google.ads.googleads.v8.common.CustomAudienceInfo custom_audience = 74 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Combined Audience. + google.ads.googleads.v8.common.CombinedAudienceInfo combined_audience = 75 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v8/resources/ad_group_criterion_label.proto b/google/ads/googleads/v8/resources/ad_group_criterion_label.proto new file mode 100644 index 000000000..5ecf9e676 --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_criterion_label.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionLabelProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad group criterion label resource. + +// A relationship between an ad group criterion and a label. +message AdGroupCriterionLabel { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupCriterionLabel" + pattern: "customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}" + }; + + // Immutable. The resource name of the ad group criterion label. + // Ad group criterion label resource names have the form: + // `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterionLabel" + } + ]; + + // Immutable. The ad group criterion to which the label is attached. + optional string ad_group_criterion = 4 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; + + // Immutable. The label assigned to the ad group criterion. + optional string label = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/ad_group_criterion_simulation.proto b/google/ads/googleads/v8/resources/ad_group_criterion_simulation.proto new file mode 100644 index 000000000..0b0877c0b --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_criterion_simulation.proto @@ -0,0 +1,90 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/simulation.proto"; +import "google/ads/googleads/v8/enums/simulation_modification_method.proto"; +import "google/ads/googleads/v8/enums/simulation_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionSimulationProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad group criterion simulation resource. + +// An ad group criterion simulation. Supported combinations of advertising +// channel type, criterion type, simulation type, and simulation modification +// method are detailed below respectively. Hotel AdGroupCriterion simulation +// operations starting in V5. +// +// 1. DISPLAY - KEYWORD - CPC_BID - UNIFORM +// 2. SEARCH - KEYWORD - CPC_BID - UNIFORM +// 3. SHOPPING - LISTING_GROUP - CPC_BID - UNIFORM +// 4. HOTEL - LISTING_GROUP - CPC_BID - UNIFORM +// 5. HOTEL - LISTING_GROUP - PERCENT_CPC_BID - UNIFORM +message AdGroupCriterionSimulation { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupCriterionSimulation" + pattern: "customers/{customer_id}/adGroupCriterionSimulations/{ad_group_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}" + }; + + // Output only. The resource name of the ad group criterion simulation. + // Ad group criterion simulation resource names have the form: + // + // `customers/{customer_id}/adGroupCriterionSimulations/{ad_group_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterionSimulation" + } + ]; + + // Output only. AdGroup ID of the simulation. + optional int64 ad_group_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Criterion ID of the simulation. + optional int64 criterion_id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The field that the simulation modifies. + google.ads.googleads.v8.enums.SimulationTypeEnum.SimulationType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. How the simulation modifies the field. + google.ads.googleads.v8.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. First day on which the simulation is based, in YYYY-MM-DD format. + optional string start_date = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Last day on which the simulation is based, in YYYY-MM-DD format. + optional string end_date = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of simulation points. + oneof point_list { + // Output only. Simulation points if the simulation type is CPC_BID. + google.ads.googleads.v8.common.CpcBidSimulationPointList cpc_bid_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is PERCENT_CPC_BID. + google.ads.googleads.v8.common.PercentCpcBidSimulationPointList percent_cpc_bid_point_list = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v8/resources/ad_group_extension_setting.proto b/google/ads/googleads/v8/resources/ad_group_extension_setting.proto new file mode 100644 index 000000000..9ae23f56c --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_extension_setting.proto @@ -0,0 +1,79 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/extension_setting_device.proto"; +import "google/ads/googleads/v8/enums/extension_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupExtensionSettingProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the AdGroupExtensionSetting resource. + +// An ad group extension setting. +message AdGroupExtensionSetting { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupExtensionSetting" + pattern: "customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}" + }; + + // Immutable. The resource name of the ad group extension setting. + // AdGroupExtensionSetting resource names have the form: + // + // `customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupExtensionSetting" + } + ]; + + // Immutable. The extension type of the ad group extension setting. + google.ads.googleads.v8.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The resource name of the ad group. The linked extension feed items will + // serve under this ad group. + // AdGroup resource names have the form: + // + // `customers/{customer_id}/adGroups/{ad_group_id}` + optional string ad_group = 6 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // The resource names of the extension feed items to serve under the ad group. + // ExtensionFeedItem resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + repeated string extension_feed_items = 7 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + }]; + + // The device for which the extensions will serve. Optional. + google.ads.googleads.v8.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; +} diff --git a/google/ads/googleads/v8/resources/ad_group_feed.proto b/google/ads/googleads/v8/resources/ad_group_feed.proto new file mode 100644 index 000000000..fad3eb99d --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_feed.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/matching_function.proto"; +import "google/ads/googleads/v8/enums/feed_link_status.proto"; +import "google/ads/googleads/v8/enums/placeholder_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupFeedProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the AdGroupFeed resource. + +// An ad group feed. +message AdGroupFeed { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupFeed" + pattern: "customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id}" + }; + + // Immutable. The resource name of the ad group feed. + // Ad group feed resource names have the form: + // + // `customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id} + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupFeed" + } + ]; + + // Immutable. The feed being linked to the ad group. + optional string feed = 7 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Immutable. The ad group being linked to the feed. + optional string ad_group = 8 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Indicates which placeholder types the feed may populate under the connected + // ad group. Required. + repeated google.ads.googleads.v8.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; + + // Matching function associated with the AdGroupFeed. + // The matching function is used to filter the set of feed items selected. + // Required. + google.ads.googleads.v8.common.MatchingFunction matching_function = 5; + + // Output only. Status of the ad group feed. + // This field is read-only. + google.ads.googleads.v8.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/ad_group_label.proto b/google/ads/googleads/v8/resources/ad_group_label.proto new file mode 100644 index 000000000..cf0b1858d --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_label.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupLabelProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad group label resource. + +// A relationship between an ad group and a label. +message AdGroupLabel { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupLabel" + pattern: "customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}" + }; + + // Immutable. The resource name of the ad group label. + // Ad group label resource names have the form: + // `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupLabel" + } + ]; + + // Immutable. The ad group to which the label is attached. + optional string ad_group = 4 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Immutable. The label assigned to the ad group. + optional string label = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/ad_group_simulation.proto b/google/ads/googleads/v8/resources/ad_group_simulation.proto new file mode 100644 index 000000000..a5248cb00 --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_group_simulation.proto @@ -0,0 +1,94 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/simulation.proto"; +import "google/ads/googleads/v8/enums/simulation_modification_method.proto"; +import "google/ads/googleads/v8/enums/simulation_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupSimulationProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad group simulation resource. + +// An ad group simulation. Supported combinations of advertising +// channel type, simulation type and simulation modification method is +// detailed below respectively. +// +// 1. SEARCH - CPC_BID - DEFAULT +// 2. SEARCH - CPC_BID - UNIFORM +// 3. SEARCH - TARGET_CPA - UNIFORM +// 4. SEARCH - TARGET_ROAS - UNIFORM +// 5. DISPLAY - CPC_BID - DEFAULT +// 6. DISPLAY - CPC_BID - UNIFORM +// 7. DISPLAY - TARGET_CPA - UNIFORM +message AdGroupSimulation { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupSimulation" + pattern: "customers/{customer_id}/adGroupSimulations/{ad_group_id}~{type}~{modification_method}~{start_date}~{end_date}" + }; + + // Output only. The resource name of the ad group simulation. + // Ad group simulation resource names have the form: + // + // `customers/{customer_id}/adGroupSimulations/{ad_group_id}~{type}~{modification_method}~{start_date}~{end_date}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupSimulation" + } + ]; + + // Output only. Ad group id of the simulation. + optional int64 ad_group_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The field that the simulation modifies. + google.ads.googleads.v8.enums.SimulationTypeEnum.SimulationType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. How the simulation modifies the field. + google.ads.googleads.v8.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. First day on which the simulation is based, in YYYY-MM-DD format. + optional string start_date = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Last day on which the simulation is based, in YYYY-MM-DD format + optional string end_date = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of simulation points. + oneof point_list { + // Output only. Simulation points if the simulation type is CPC_BID. + google.ads.googleads.v8.common.CpcBidSimulationPointList cpc_bid_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is CPV_BID. + google.ads.googleads.v8.common.CpvBidSimulationPointList cpv_bid_point_list = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_CPA. + google.ads.googleads.v8.common.TargetCpaSimulationPointList target_cpa_point_list = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_ROAS. + google.ads.googleads.v8.common.TargetRoasSimulationPointList target_roas_point_list = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v8/resources/ad_parameter.proto b/google/ads/googleads/v8/resources/ad_parameter.proto new file mode 100644 index 000000000..eb4d3da0c --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_parameter.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdParameterProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad parameter resource. + +// An ad parameter that is used to update numeric values (such as prices or +// inventory levels) in any text line of an ad (including URLs). There can +// be a maximum of two AdParameters per ad group criterion. (One with +// parameter_index = 1 and one with parameter_index = 2.) +// In the ad the parameters are referenced by a placeholder of the form +// "{param#:value}". E.g. "{param1:$17}" +message AdParameter { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdParameter" + pattern: "customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}" + }; + + // Immutable. The resource name of the ad parameter. + // Ad parameter resource names have the form: + // + // `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdParameter" + } + ]; + + // Immutable. The ad group criterion that this ad parameter belongs to. + optional string ad_group_criterion = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; + + // Immutable. The unique index of this ad parameter. Must be either 1 or 2. + optional int64 parameter_index = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Numeric value to insert into the ad text. The following restrictions + // apply: + // - Can use comma or period as a separator, with an optional period or + // comma (respectively) for fractional values. For example, 1,000,000.00 + // and 2.000.000,10 are valid. + // - Can be prepended or appended with a currency symbol. For example, + // $99.99 is valid. + // - Can be prepended or appended with a currency code. For example, 99.99USD + // and EUR200 are valid. + // - Can use '%'. For example, 1.0% and 1,0% are valid. + // - Can use plus or minus. For example, -10.99 and 25+ are valid. + // - Can use '/' between two numbers. For example 4/1 and 0.95/0.45 are + // valid. + optional string insertion_text = 7; +} diff --git a/google/ads/googleads/v8/resources/ad_schedule_view.proto b/google/ads/googleads/v8/resources/ad_schedule_view.proto new file mode 100644 index 000000000..bdaa1e90d --- /dev/null +++ b/google/ads/googleads/v8/resources/ad_schedule_view.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdScheduleViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ad schedule view resource. + +// An ad schedule view summarizes the performance of campaigns by +// AdSchedule criteria. +message AdScheduleView { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdScheduleView" + pattern: "customers/{customer_id}/adScheduleViews/{campaign_id}~{criterion_id}" + }; + + // Output only. The resource name of the ad schedule view. + // AdSchedule view resource names have the form: + // + // `customers/{customer_id}/adScheduleViews/{campaign_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdScheduleView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/age_range_view.proto b/google/ads/googleads/v8/resources/age_range_view.proto new file mode 100644 index 000000000..515935854 --- /dev/null +++ b/google/ads/googleads/v8/resources/age_range_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AgeRangeViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the age range view resource. + +// An age range view. +message AgeRangeView { + option (google.api.resource) = { + type: "googleads.googleapis.com/AgeRangeView" + pattern: "customers/{customer_id}/ageRangeViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the age range view. + // Age range view resource names have the form: + // + // `customers/{customer_id}/ageRangeViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AgeRangeView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/asset.proto b/google/ads/googleads/v8/resources/asset.proto new file mode 100644 index 000000000..269b88838 --- /dev/null +++ b/google/ads/googleads/v8/resources/asset.proto @@ -0,0 +1,135 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/asset_types.proto"; +import "google/ads/googleads/v8/common/custom_parameter.proto"; +import "google/ads/googleads/v8/common/policy.proto"; +import "google/ads/googleads/v8/enums/asset_type.proto"; +import "google/ads/googleads/v8/enums/policy_approval_status.proto"; +import "google/ads/googleads/v8/enums/policy_review_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AssetProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the asset resource. + +// Asset is a part of an ad which can be shared across multiple ads. +// It can be an image (ImageAsset), a video (YoutubeVideoAsset), etc. +// Assets are immutable and cannot be removed. To stop an asset from serving, +// remove the asset from the entity that is using it. +message Asset { + option (google.api.resource) = { + type: "googleads.googleapis.com/Asset" + pattern: "customers/{customer_id}/assets/{asset_id}" + }; + + // Immutable. The resource name of the asset. + // Asset resource names have the form: + // + // `customers/{customer_id}/assets/{asset_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Output only. The ID of the asset. + optional int64 id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional name of the asset. + optional string name = 12; + + // Output only. Type of the asset. + google.ads.googleads.v8.enums.AssetTypeEnum.AssetType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // A list of possible final URLs after all cross domain redirects. + repeated string final_urls = 14; + + // A list of possible final mobile URLs after all cross domain redirects. + repeated string final_mobile_urls = 16; + + // URL template for constructing a tracking URL. + optional string tracking_url_template = 17; + + // A list of mappings to be used for substituting URL custom parameter tags in + // the tracking_url_template, final_urls, and/or final_mobile_urls. + repeated google.ads.googleads.v8.common.CustomParameter url_custom_parameters = 18; + + // URL template for appending params to landing page URLs served with parallel + // tracking. + optional string final_url_suffix = 19; + + // Output only. Policy information for the asset. + AssetPolicySummary policy_summary = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The specific type of the asset. + oneof asset_data { + // Immutable. A YouTube video asset. + google.ads.googleads.v8.common.YoutubeVideoAsset youtube_video_asset = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A media bundle asset. + google.ads.googleads.v8.common.MediaBundleAsset media_bundle_asset = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. An image asset. + google.ads.googleads.v8.common.ImageAsset image_asset = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A text asset. + google.ads.googleads.v8.common.TextAsset text_asset = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // A lead form asset. + google.ads.googleads.v8.common.LeadFormAsset lead_form_asset = 9; + + // A book on google asset. + google.ads.googleads.v8.common.BookOnGoogleAsset book_on_google_asset = 10; + + // A promotion asset. + google.ads.googleads.v8.common.PromotionAsset promotion_asset = 15; + + // A callout asset. + google.ads.googleads.v8.common.CalloutAsset callout_asset = 20; + + // A structured snippet asset. + google.ads.googleads.v8.common.StructuredSnippetAsset structured_snippet_asset = 21; + + // A sitelink asset. + google.ads.googleads.v8.common.SitelinkAsset sitelink_asset = 22; + } +} + +// Contains policy information for an asset. +message AssetPolicySummary { + // Output only. The list of policy findings for this asset. + repeated google.ads.googleads.v8.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Where in the review process this asset is. + google.ads.googleads.v8.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The overall approval status of this asset, calculated based on the status + // of its individual policy topic entries. + google.ads.googleads.v8.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/asset_field_type_view.proto b/google/ads/googleads/v8/resources/asset_field_type_view.proto new file mode 100644 index 000000000..022d701f6 --- /dev/null +++ b/google/ads/googleads/v8/resources/asset_field_type_view.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/asset_field_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AssetFieldTypeViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the AssetFieldTypeView resource. + +// An asset field type view. +// This view reports non-overcounted metrics for each asset field type when the +// asset is used as extension. +message AssetFieldTypeView { + option (google.api.resource) = { + type: "googleads.googleapis.com/AssetFieldTypeView" + pattern: "customers/{customer_id}/assetFieldTypeViews/{field_type}" + }; + + // Output only. The resource name of the asset field type view. + // Asset field type view resource names have the form: + // + // `customers/{customer_id}/assetFieldTypeViews/{field_type}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetFieldTypeView" + } + ]; + + // Output only. The asset field type of the asset field type view. + google.ads.googleads.v8.enums.AssetFieldTypeEnum.AssetFieldType field_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/batch_job.proto b/google/ads/googleads/v8/resources/batch_job.proto new file mode 100644 index 000000000..e65959f33 --- /dev/null +++ b/google/ads/googleads/v8/resources/batch_job.proto @@ -0,0 +1,98 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/batch_job_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BatchJobProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the batch job resource. + +// A list of mutates being processed asynchronously. The mutates are uploaded +// by the user. The mutates themselves aren't readable and the results of the +// job can only be read using BatchJobService.ListBatchJobResults. +message BatchJob { + option (google.api.resource) = { + type: "googleads.googleapis.com/BatchJob" + pattern: "customers/{customer_id}/batchJobs/{batch_job_id}" + }; + + // Additional information about the batch job. This message is also used as + // metadata returned in batch job Long Running Operations. + message BatchJobMetadata { + // Output only. The time when this batch job was created. + // Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:00" + optional string creation_date_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when this batch job started running. + // Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:30" + optional string start_date_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when this batch job was completed. + // Formatted as yyyy-MM-dd HH:mm:ss. Example: "2018-03-05 09:16:00" + optional string completion_date_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The fraction (between 0.0 and 1.0) of mutates that have been processed. + // This is empty if the job hasn't started running yet. + optional double estimated_completion_ratio = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of mutate operations in the batch job. + optional int64 operation_count = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of mutate operations executed by the batch job. + // Present only if the job has started running. + optional int64 executed_operation_count = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Immutable. The resource name of the batch job. + // Batch job resource names have the form: + // + // `customers/{customer_id}/batchJobs/{batch_job_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BatchJob" + } + ]; + + // Output only. ID of this batch job. + optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The next sequence token to use when adding operations. Only set when the + // batch job status is PENDING. + optional string next_add_sequence_token = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Contains additional information about this batch job. + BatchJobMetadata metadata = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of this batch job. + google.ads.googleads.v8.enums.BatchJobStatusEnum.BatchJobStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the long-running operation that can be used to poll + // for completion. Only set when the batch job status is RUNNING or DONE. + optional string long_running_operation = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/bidding_data_exclusion.proto b/google/ads/googleads/v8/resources/bidding_data_exclusion.proto new file mode 100644 index 000000000..72c57815d --- /dev/null +++ b/google/ads/googleads/v8/resources/bidding_data_exclusion.proto @@ -0,0 +1,108 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v8/enums/device.proto"; +import "google/ads/googleads/v8/enums/seasonality_event_scope.proto"; +import "google/ads/googleads/v8/enums/seasonality_event_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BiddingDataExclusionProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Represents a bidding data exclusion. +// +// See "About data exclusions" at +// https://support.google.com/google-ads/answer/10370710. +message BiddingDataExclusion { + option (google.api.resource) = { + type: "googleads.googleapis.com/BiddingDataExclusion" + pattern: "customers/{customer_id}/biddingDataExclusions/{seasonality_event_id}" + }; + + // Immutable. The resource name of the data exclusion. + // Data exclusion resource names have the form: + // + // `customers/{customer_id}/biddingDataExclusions/{data_exclusion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingDataExclusion" + } + ]; + + // Output only. The ID of the data exclusion. + int64 data_exclusion_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The scope of the data exclusion. + google.ads.googleads.v8.enums.SeasonalityEventScopeEnum.SeasonalityEventScope scope = 3; + + // Output only. The status of the data exclusion. + google.ads.googleads.v8.enums.SeasonalityEventStatusEnum.SeasonalityEventStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The inclusive start time of the data exclusion in yyyy-MM-dd HH:mm:ss + // format. + // + // A data exclusion is backward looking and should be used for events that + // start in the past and end either in the past or future. + string start_date_time = 5 [(google.api.field_behavior) = REQUIRED]; + + // Required. The exclusive end time of the data exclusion in yyyy-MM-dd HH:mm:ss format. + // + // The length of [start_date_time, end_date_time) interval must be + // within (0, 14 days]. + string end_date_time = 6 [(google.api.field_behavior) = REQUIRED]; + + // The name of the data exclusion. The name can be at most 255 + // characters. + string name = 7; + + // The description of the data exclusion. The description can be at + // most 2048 characters. + string description = 8; + + // If not specified, all devices will be included in this exclusion. + // Otherwise, only the specified targeted devices will be included in this + // exclusion. + repeated google.ads.googleads.v8.enums.DeviceEnum.Device devices = 9; + + // The data exclusion will apply to the campaigns listed when the scope of + // this exclusion is CAMPAIGN. The maximum number of campaigns per event is + // 2000. + // Note: a data exclusion with both advertising_channel_types and + // campaign_ids is not supported. + repeated string campaigns = 10 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + }]; + + // The data_exclusion will apply to all the campaigns under the listed + // channels retroactively as well as going forward when the scope of this + // exclusion is CHANNEL. + // The supported advertising channel types are DISPLAY, SEARCH and SHOPPING. + // Note: a data exclusion with both advertising_channel_types and + // campaign_ids is not supported. + repeated google.ads.googleads.v8.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_types = 11; +} diff --git a/google/ads/googleads/v8/resources/bidding_seasonality_adjustment.proto b/google/ads/googleads/v8/resources/bidding_seasonality_adjustment.proto new file mode 100644 index 000000000..d9fbca982 --- /dev/null +++ b/google/ads/googleads/v8/resources/bidding_seasonality_adjustment.proto @@ -0,0 +1,114 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v8/enums/device.proto"; +import "google/ads/googleads/v8/enums/seasonality_event_scope.proto"; +import "google/ads/googleads/v8/enums/seasonality_event_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BiddingSeasonalityAdjustmentProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Represents a bidding seasonality adjustment. +// +// See "About seasonality adjustments" at +// https://support.google.com/google-ads/answer/10369906. +message BiddingSeasonalityAdjustment { + option (google.api.resource) = { + type: "googleads.googleapis.com/BiddingSeasonalityAdjustment" + pattern: "customers/{customer_id}/biddingSeasonalityAdjustments/{seasonality_event_id}" + }; + + // Immutable. The resource name of the seasonality adjustment. + // Seasonality adjustment resource names have the form: + // + // `customers/{customer_id}/biddingSeasonalityAdjustments/{seasonality_adjustment_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingSeasonalityAdjustment" + } + ]; + + // Output only. The ID of the seasonality adjustment. + int64 seasonality_adjustment_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The scope of the seasonality adjustment. + google.ads.googleads.v8.enums.SeasonalityEventScopeEnum.SeasonalityEventScope scope = 3; + + // Output only. The status of the seasonality adjustment. + google.ads.googleads.v8.enums.SeasonalityEventStatusEnum.SeasonalityEventStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The inclusive start time of the seasonality adjustment in yyyy-MM-dd + // HH:mm:ss format. + // + // A seasonality adjustment is forward looking and should be used for events + // that start and end in the future. + string start_date_time = 5 [(google.api.field_behavior) = REQUIRED]; + + // Required. The exclusive end time of the seasonality adjustment in yyyy-MM-dd HH:mm:ss + // format. + // + // The length of [start_date_time, end_date_time) interval must be + // within (0, 14 days]. + string end_date_time = 6 [(google.api.field_behavior) = REQUIRED]; + + // The name of the seasonality adjustment. The name can be at most 255 + // characters. + string name = 7; + + // The description of the seasonality adjustment. The description can be at + // most 2048 characters. + string description = 8; + + // If not specified, all devices will be included in this adjustment. + // Otherwise, only the specified targeted devices will be included in this + // adjustment. + repeated google.ads.googleads.v8.enums.DeviceEnum.Device devices = 9; + + // Conversion rate modifier estimated based on expected conversion rate + // changes. When this field is unset or set to 1.0 no adjustment will be + // applied to traffic. The allowed range is 0.1 to 10.0. + double conversion_rate_modifier = 10; + + // The seasonality adjustment will apply to the campaigns listed when the + // scope of this adjustment is CAMPAIGN. The maximum number of campaigns per + // event is 2000. + // Note: a seasonality adjustment with both advertising_channel_types and + // campaign_ids is not supported. + repeated string campaigns = 11 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + }]; + + // The seasonality adjustment will apply to all the campaigns under the listed + // channels retroactively as well as going forward when the scope of this + // adjustment is CHANNEL. + // The supported advertising channel types are DISPLAY, SEARCH and SHOPPING. + // Note: a seasonality adjustment with both advertising_channel_types and + // campaign_ids is not supported. + repeated google.ads.googleads.v8.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_types = 12; +} diff --git a/google/ads/googleads/v8/resources/bidding_strategy.proto b/google/ads/googleads/v8/resources/bidding_strategy.proto new file mode 100644 index 000000000..9e4b8a561 --- /dev/null +++ b/google/ads/googleads/v8/resources/bidding_strategy.proto @@ -0,0 +1,139 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/bidding.proto"; +import "google/ads/googleads/v8/enums/bidding_strategy_status.proto"; +import "google/ads/googleads/v8/enums/bidding_strategy_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategyProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the BiddingStrategy resource + +// A bidding strategy. +message BiddingStrategy { + option (google.api.resource) = { + type: "googleads.googleapis.com/BiddingStrategy" + pattern: "customers/{customer_id}/biddingStrategies/{bidding_strategy_id}" + }; + + // Immutable. The resource name of the bidding strategy. + // Bidding strategy resource names have the form: + // + // `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingStrategy" + } + ]; + + // Output only. The ID of the bidding strategy. + optional int64 id = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the bidding strategy. + // All bidding strategies within an account must be named distinctly. + // + // The length of this string should be between 1 and 255, inclusive, + // in UTF-8 bytes, (trimmed). + optional string name = 17; + + // Output only. The status of the bidding strategy. + // + // This field is read-only. + google.ads.googleads.v8.enums.BiddingStrategyStatusEnum.BiddingStrategyStatus status = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the bidding strategy. + // Create a bidding strategy by setting the bidding scheme. + // + // This field is read-only. + google.ads.googleads.v8.enums.BiddingStrategyTypeEnum.BiddingStrategyType type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The currency used by the bidding strategy (ISO 4217 three-letter code). + // + // For bidding strategies in manager customers, this currency can be set on + // creation and defaults to the manager customer's currency. For serving + // customers, this field cannot be set; all strategies in a serving customer + // implicitly use the serving customer's currency. In all cases the + // effective_currency_code field returns the currency used by the strategy. + string currency_code = 23 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The currency used by the bidding strategy (ISO 4217 three-letter code). + // + // For bidding strategies in manager customers, this is the currency set by + // the advertiser when creating the strategy. For serving customers, this is + // the customer's currency_code. + // + // Bidding strategy metrics are reported in this currency. + // + // This field is read-only. + optional string effective_currency_code = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of campaigns attached to this bidding strategy. + // + // This field is read-only. + optional int64 campaign_count = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of non-removed campaigns attached to this bidding strategy. + // + // This field is read-only. + optional int64 non_removed_campaign_count = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The bidding scheme. + // + // Only one can be set. + oneof scheme { + // A bidding strategy that raises bids for clicks that seem more likely to + // lead to a conversion and lowers them for clicks where they seem less + // likely. + google.ads.googleads.v8.common.EnhancedCpc enhanced_cpc = 7; + + // An automated bidding strategy to help get the most conversion value for + // your campaigns while spending your budget. + google.ads.googleads.v8.common.MaximizeConversionValue maximize_conversion_value = 21; + + // An automated bidding strategy to help get the most conversions for your + // campaigns while spending your budget. + google.ads.googleads.v8.common.MaximizeConversions maximize_conversions = 22; + + // A bidding strategy that sets bids to help get as many conversions as + // possible at the target cost-per-acquisition (CPA) you set. + google.ads.googleads.v8.common.TargetCpa target_cpa = 9; + + // A bidding strategy that automatically optimizes towards a desired + // percentage of impressions. + google.ads.googleads.v8.common.TargetImpressionShare target_impression_share = 48; + + // A bidding strategy that helps you maximize revenue while averaging a + // specific target Return On Ad Spend (ROAS). + google.ads.googleads.v8.common.TargetRoas target_roas = 11; + + // A bid strategy that sets your bids to help get as many clicks as + // possible within your budget. + google.ads.googleads.v8.common.TargetSpend target_spend = 12; + } +} diff --git a/google/ads/googleads/v8/resources/bidding_strategy_simulation.proto b/google/ads/googleads/v8/resources/bidding_strategy_simulation.proto new file mode 100644 index 000000000..256c362d1 --- /dev/null +++ b/google/ads/googleads/v8/resources/bidding_strategy_simulation.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/simulation.proto"; +import "google/ads/googleads/v8/enums/simulation_modification_method.proto"; +import "google/ads/googleads/v8/enums/simulation_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategySimulationProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the bidding strategy simulation resource. + +// A bidding strategy simulation. Supported combinations of simulation type +// and simulation modification method are detailed below respectively. +// +// 1. TARGET_CPA - UNIFORM +// 2. TARGET_ROAS - UNIFORM +message BiddingStrategySimulation { + option (google.api.resource) = { + type: "googleads.googleapis.com/BiddingStrategySimulation" + pattern: "customers/{customer_id}/biddingStrategySimulations/{bidding_strategy_id}~{type}~{modification_method}~{start_date}~{end_date}" + }; + + // Output only. The resource name of the bidding strategy simulation. + // Bidding strategy simulation resource names have the form: + // + // `customers/{customer_id}/biddingStrategySimulations/{bidding_strategy_id}~{type}~{modification_method}~{start_date}~{end_date}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingStrategySimulation" + } + ]; + + // Output only. Bidding strategy shared set id of the simulation. + int64 bidding_strategy_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The field that the simulation modifies. + google.ads.googleads.v8.enums.SimulationTypeEnum.SimulationType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. How the simulation modifies the field. + google.ads.googleads.v8.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. First day on which the simulation is based, in YYYY-MM-DD format. + string start_date = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Last day on which the simulation is based, in YYYY-MM-DD format + string end_date = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of simulation points. + oneof point_list { + // Output only. Simulation points if the simulation type is TARGET_CPA. + google.ads.googleads.v8.common.TargetCpaSimulationPointList target_cpa_point_list = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_ROAS. + google.ads.googleads.v8.common.TargetRoasSimulationPointList target_roas_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v8/resources/billing_setup.proto b/google/ads/googleads/v8/resources/billing_setup.proto new file mode 100644 index 000000000..63d2930f0 --- /dev/null +++ b/google/ads/googleads/v8/resources/billing_setup.proto @@ -0,0 +1,138 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/billing_setup_status.proto"; +import "google/ads/googleads/v8/enums/time_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BillingSetupProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the BillingSetup resource. + +// A billing setup, which associates a payments account and an advertiser. A +// billing setup is specific to one advertiser. +message BillingSetup { + option (google.api.resource) = { + type: "googleads.googleapis.com/BillingSetup" + pattern: "customers/{customer_id}/billingSetups/{billing_setup_id}" + }; + + // Container of payments account information for this billing. + message PaymentsAccountInfo { + // Output only. A 16 digit id used to identify the payments account associated with the + // billing setup. + // + // This must be passed as a string with dashes, e.g. "1234-5678-9012-3456". + optional string payments_account_id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The name of the payments account associated with the billing setup. + // + // This enables the user to specify a meaningful name for a payments account + // to aid in reconciling monthly invoices. + // + // This name will be printed in the monthly invoices. + optional string payments_account_name = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A 12 digit id used to identify the payments profile associated with the + // billing setup. + // + // This must be passed in as a string with dashes, e.g. "1234-5678-9012". + optional string payments_profile_id = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The name of the payments profile associated with the billing setup. + optional string payments_profile_name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A secondary payments profile id present in uncommon situations, e.g. + // when a sequential liability agreement has been arranged. + optional string secondary_payments_profile_id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Immutable. The resource name of the billing setup. + // BillingSetup resource names have the form: + // + // `customers/{customer_id}/billingSetups/{billing_setup_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BillingSetup" + } + ]; + + // Output only. The ID of the billing setup. + optional int64 id = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The status of the billing setup. + google.ads.googleads.v8.enums.BillingSetupStatusEnum.BillingSetupStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The resource name of the payments account associated with this billing + // setup. Payments resource names have the form: + // + // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` + // When setting up billing, this is used to signup with an existing payments + // account (and then payments_account_info should not be set). + // When getting a billing setup, this and payments_account_info will be + // populated. + optional string payments_account = 18 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/PaymentsAccount" + } + ]; + + // Immutable. The payments account information associated with this billing setup. + // When setting up billing, this is used to signup with a new payments account + // (and then payments_account should not be set). + // When getting a billing setup, this and payments_account will be + // populated. + PaymentsAccountInfo payments_account_info = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // When creating a new billing setup, this is when the setup should take + // effect. NOW is the only acceptable start time if the customer doesn't have + // any approved setups. + // + // When fetching an existing billing setup, this is the requested start time. + // However, if the setup was approved (see status) after the requested start + // time, then this is the approval time. + oneof start_time { + // Immutable. The start date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. Only a + // future time is allowed. + string start_date_time = 16 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The start time as a type. Only NOW is allowed. + google.ads.googleads.v8.enums.TimeTypeEnum.TimeType start_time_type = 10 [(google.api.field_behavior) = IMMUTABLE]; + } + + // When the billing setup ends / ended. This is either FOREVER or the start + // time of the next scheduled billing setup. + oneof end_time { + // Output only. The end date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. + string end_date_time = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The end time as a type. The only possible value is FOREVER. + google.ads.googleads.v8.enums.TimeTypeEnum.TimeType end_time_type = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v8/resources/call_view.proto b/google/ads/googleads/v8/resources/call_view.proto new file mode 100644 index 000000000..d28e1513d --- /dev/null +++ b/google/ads/googleads/v8/resources/call_view.proto @@ -0,0 +1,80 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/call_tracking_display_location.proto"; +import "google/ads/googleads/v8/enums/call_type.proto"; +import "google/ads/googleads/v8/enums/google_voice_call_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CallViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the call view resource. + +// A call view that includes data for call tracking of call-only ads or call +// extensions. +message CallView { + option (google.api.resource) = { + type: "googleads.googleapis.com/CallView" + pattern: "customers/{customer_id}/callViews/{call_detail_id}" + }; + + // Output only. The resource name of the call view. + // Call view resource names have the form: + // + // `customers/{customer_id}/callViews/{call_detail_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CallView" + } + ]; + + // Output only. Country code of the caller. + string caller_country_code = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Area code of the caller. Null if the call duration is shorter than 15 + // seconds. + string caller_area_code = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The advertiser-provided call duration in seconds. + int64 call_duration_seconds = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The advertiser-provided call start date time. + string start_call_date_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The advertiser-provided call end date time. + string end_call_date_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The call tracking display location. + google.ads.googleads.v8.enums.CallTrackingDisplayLocationEnum.CallTrackingDisplayLocation call_tracking_display_location = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the call. + google.ads.googleads.v8.enums.CallTypeEnum.CallType type = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The status of the call. + google.ads.googleads.v8.enums.GoogleVoiceCallStatusEnum.GoogleVoiceCallStatus call_status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/campaign.proto b/google/ads/googleads/v8/resources/campaign.proto new file mode 100644 index 000000000..2a3f6d6e2 --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign.proto @@ -0,0 +1,441 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/bidding.proto"; +import "google/ads/googleads/v8/common/custom_parameter.proto"; +import "google/ads/googleads/v8/common/frequency_cap.proto"; +import "google/ads/googleads/v8/common/real_time_bidding_setting.proto"; +import "google/ads/googleads/v8/common/targeting_setting.proto"; +import "google/ads/googleads/v8/enums/ad_serving_optimization_status.proto"; +import "google/ads/googleads/v8/enums/advertising_channel_sub_type.proto"; +import "google/ads/googleads/v8/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v8/enums/app_campaign_app_store.proto"; +import "google/ads/googleads/v8/enums/app_campaign_bidding_strategy_goal_type.proto"; +import "google/ads/googleads/v8/enums/asset_field_type.proto"; +import "google/ads/googleads/v8/enums/bidding_strategy_type.proto"; +import "google/ads/googleads/v8/enums/brand_safety_suitability.proto"; +import "google/ads/googleads/v8/enums/campaign_experiment_type.proto"; +import "google/ads/googleads/v8/enums/campaign_serving_status.proto"; +import "google/ads/googleads/v8/enums/campaign_status.proto"; +import "google/ads/googleads/v8/enums/location_source_type.proto"; +import "google/ads/googleads/v8/enums/negative_geo_target_type.proto"; +import "google/ads/googleads/v8/enums/optimization_goal_type.proto"; +import "google/ads/googleads/v8/enums/payment_mode.proto"; +import "google/ads/googleads/v8/enums/positive_geo_target_type.proto"; +import "google/ads/googleads/v8/enums/vanity_pharma_display_url_mode.proto"; +import "google/ads/googleads/v8/enums/vanity_pharma_text.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Campaign resource. + +// A campaign. +message Campaign { + option (google.api.resource) = { + type: "googleads.googleapis.com/Campaign" + pattern: "customers/{customer_id}/campaigns/{campaign_id}" + }; + + // The network settings for the campaign. + message NetworkSettings { + // Whether ads will be served with google.com search results. + optional bool target_google_search = 5; + + // Whether ads will be served on partner sites in the Google Search Network + // (requires `target_google_search` to also be `true`). + optional bool target_search_network = 6; + + // Whether ads will be served on specified placements in the Google Display + // Network. Placements are specified using the Placement criterion. + optional bool target_content_network = 7; + + // Whether ads will be served on the Google Partner Network. + // This is available only to some select Google partner accounts. + optional bool target_partner_search_network = 8; + } + + // Campaign-level settings for hotel ads. + message HotelSettingInfo { + // Immutable. The linked Hotel Center account. + optional int64 hotel_center_id = 2 [(google.api.field_behavior) = IMMUTABLE]; + } + + // The setting for controlling Dynamic Search Ads (DSA). + message DynamicSearchAdsSetting { + // Required. The Internet domain name that this setting represents, e.g., "google.com" + // or "www.google.com". + string domain_name = 6 [(google.api.field_behavior) = REQUIRED]; + + // Required. The language code specifying the language of the domain, e.g., "en". + string language_code = 7 [(google.api.field_behavior) = REQUIRED]; + + // Whether the campaign uses advertiser supplied URLs exclusively. + optional bool use_supplied_urls_only = 8; + + // The list of page feeds associated with the campaign. + repeated string feeds = 9 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + }]; + } + + // Selective optimization setting for this campaign, which includes a set of + // conversion actions to optimize this campaign towards. + message SelectiveOptimization { + // The selected set of conversion actions for optimizing this campaign. + repeated string conversion_actions = 2 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionAction" + }]; + } + + // The setting for Shopping campaigns. Defines the universe of products that + // can be advertised by the campaign, and how this campaign interacts with + // other Shopping campaigns. + message ShoppingSetting { + // Immutable. ID of the Merchant Center account. + // This field is required for create operations. This field is immutable for + // Shopping campaigns. + optional int64 merchant_id = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Sales country of products to include in the campaign. + // This field is required for Shopping campaigns. + // This field is optional for non-Shopping campaigns, but it must be equal + // to 'ZZ' if set. + optional string sales_country = 6; + + // Priority of the campaign. Campaigns with numerically higher priorities + // take precedence over those with lower priorities. + // This field is required for Shopping campaigns, with values between 0 and + // 2, inclusive. + // This field is optional for Smart Shopping campaigns, but must be equal to + // 3 if set. + optional int32 campaign_priority = 7; + + // Whether to include local products. + optional bool enable_local = 8; + } + + // Optimization goal setting for this campaign, which includes a set of + // optimization goal types. + message OptimizationGoalSetting { + // The list of optimization goal types. + repeated google.ads.googleads.v8.enums.OptimizationGoalTypeEnum.OptimizationGoalType optimization_goal_types = 1; + } + + // Campaign-level settings for tracking information. + message TrackingSetting { + // Output only. The url used for dynamic tracking. + optional string tracking_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Represents a collection of settings related to ads geotargeting. + message GeoTargetTypeSetting { + // The setting used for positive geotargeting in this particular campaign. + google.ads.googleads.v8.enums.PositiveGeoTargetTypeEnum.PositiveGeoTargetType positive_geo_target_type = 1; + + // The setting used for negative geotargeting in this particular campaign. + google.ads.googleads.v8.enums.NegativeGeoTargetTypeEnum.NegativeGeoTargetType negative_geo_target_type = 2; + } + + // Campaign setting for local campaigns. + message LocalCampaignSetting { + // The location source type for this local campaign. + google.ads.googleads.v8.enums.LocationSourceTypeEnum.LocationSourceType location_source_type = 1; + } + + // Campaign-level settings for App Campaigns. + message AppCampaignSetting { + // Represents the goal which the bidding strategy of this app campaign + // should optimize towards. + google.ads.googleads.v8.enums.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType bidding_strategy_goal_type = 1; + + // Immutable. A string that uniquely identifies a mobile application. + optional string app_id = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The application store that distributes this specific app. + google.ads.googleads.v8.enums.AppCampaignAppStoreEnum.AppCampaignAppStore app_store = 3 [(google.api.field_behavior) = IMMUTABLE]; + } + + // Describes how unbranded pharma ads will be displayed. + message VanityPharma { + // The display mode for vanity pharma URLs. + google.ads.googleads.v8.enums.VanityPharmaDisplayUrlModeEnum.VanityPharmaDisplayUrlMode vanity_pharma_display_url_mode = 1; + + // The text that will be displayed in display URL of the text ad when + // website description is the selected display mode for vanity pharma URLs. + google.ads.googleads.v8.enums.VanityPharmaTextEnum.VanityPharmaText vanity_pharma_text = 2; + } + + // Immutable. The resource name of the campaign. + // Campaign resource names have the form: + // + // `customers/{customer_id}/campaigns/{campaign_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The ID of the campaign. + optional int64 id = 59 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the campaign. + // + // This field is required and should not be empty when creating new + // campaigns. + // + // It must not contain any null (code point 0x0), NL line feed + // (code point 0xA) or carriage return (code point 0xD) characters. + optional string name = 58; + + // The status of the campaign. + // + // When a new campaign is added, the status defaults to ENABLED. + google.ads.googleads.v8.enums.CampaignStatusEnum.CampaignStatus status = 5; + + // Output only. The ad serving status of the campaign. + google.ads.googleads.v8.enums.CampaignServingStatusEnum.CampaignServingStatus serving_status = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The ad serving optimization status of the campaign. + google.ads.googleads.v8.enums.AdServingOptimizationStatusEnum.AdServingOptimizationStatus ad_serving_optimization_status = 8; + + // Immutable. The primary serving target for ads within the campaign. + // The targeting options can be refined in `network_settings`. + // + // This field is required and should not be empty when creating new + // campaigns. + // + // Can be set only when creating campaigns. + // After the campaign is created, the field can not be changed. + google.ads.googleads.v8.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_type = 9 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Optional refinement to `advertising_channel_type`. + // Must be a valid sub-type of the parent channel type. + // + // Can be set only when creating campaigns. + // After campaign is created, the field can not be changed. + google.ads.googleads.v8.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType advertising_channel_sub_type = 10 [(google.api.field_behavior) = IMMUTABLE]; + + // The URL template for constructing a tracking URL. + optional string tracking_url_template = 60; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v8.common.CustomParameter url_custom_parameters = 12; + + // Settings for Real-Time Bidding, a feature only available for campaigns + // targeting the Ad Exchange network. + google.ads.googleads.v8.common.RealTimeBiddingSetting real_time_bidding_setting = 39; + + // The network settings for the campaign. + NetworkSettings network_settings = 14; + + // Immutable. The hotel setting for the campaign. + HotelSettingInfo hotel_setting = 32 [(google.api.field_behavior) = IMMUTABLE]; + + // The setting for controlling Dynamic Search Ads (DSA). + DynamicSearchAdsSetting dynamic_search_ads_setting = 33; + + // The setting for controlling Shopping campaigns. + ShoppingSetting shopping_setting = 36; + + // Setting for targeting related features. + google.ads.googleads.v8.common.TargetingSetting targeting_setting = 43; + + // The setting for ads geotargeting. + GeoTargetTypeSetting geo_target_type_setting = 47; + + // The setting for local campaign. + LocalCampaignSetting local_campaign_setting = 50; + + // The setting related to App Campaign. + AppCampaignSetting app_campaign_setting = 51; + + // Output only. The resource names of labels attached to this campaign. + repeated string labels = 61 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignLabel" + } + ]; + + // Output only. The type of campaign: normal, draft, or experiment. + google.ads.googleads.v8.enums.CampaignExperimentTypeEnum.CampaignExperimentType experiment_type = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the base campaign of a draft or experiment campaign. + // For base campaigns, this is equal to `resource_name`. + // + // This field is read-only. + optional string base_campaign = 56 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // The budget of the campaign. + optional string campaign_budget = 62 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBudget" + }]; + + // Output only. The type of bidding strategy. + // + // A bidding strategy can be created by setting either the bidding scheme to + // create a standard bidding strategy or the `bidding_strategy` field to + // create a portfolio bidding strategy. + // + // This field is read-only. + google.ads.googleads.v8.enums.BiddingStrategyTypeEnum.BiddingStrategyType bidding_strategy_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Resource name of AccessibleBiddingStrategy, a read-only view of the + // unrestricted attributes of the attached portfolio bidding + // strategy identified by 'bidding_strategy'. Empty, if the campaign does not + // use a portfolio strategy. + // Unrestricted strategy attributes are available to all customers + // with whom the strategy is shared and are read from the + // AccessibleBiddingStrategy resource. In contrast, restricted attributes are + // only available to the owner customer of the strategy and their managers. + // Restricted attributes can only be read from the BiddingStrategy resource. + string accessible_bidding_strategy = 71 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccessibleBiddingStrategy" + } + ]; + + // The date when campaign started. + optional string start_date = 63; + + // The last day of the campaign. + optional string end_date = 64; + + // Suffix used to append query parameters to landing pages that are served + // with parallel tracking. + optional string final_url_suffix = 65; + + // A list that limits how often each user will see this campaign's ads. + repeated google.ads.googleads.v8.common.FrequencyCapEntry frequency_caps = 40; + + // Output only. 3-Tier Brand Safety setting for the campaign. + google.ads.googleads.v8.enums.BrandSafetySuitabilityEnum.BrandSafetySuitability video_brand_safety_suitability = 42 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Describes how unbranded pharma ads will be displayed. + VanityPharma vanity_pharma = 44; + + // Selective optimization setting for this campaign, which includes a set of + // conversion actions to optimize this campaign towards. + SelectiveOptimization selective_optimization = 45; + + // Optimization goal setting for this campaign, which includes a set of + // optimization goal types. + OptimizationGoalSetting optimization_goal_setting = 54; + + // Output only. Campaign-level settings for tracking information. + TrackingSetting tracking_setting = 46 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Payment mode for the campaign. + google.ads.googleads.v8.enums.PaymentModeEnum.PaymentMode payment_mode = 52; + + // Output only. Optimization score of the campaign. + // + // Optimization score is an estimate of how well a campaign is set to perform. + // It ranges from 0% (0.0) to 100% (1.0), with 100% indicating that the + // campaign is performing at full potential. This field is null for unscored + // campaigns. + // + // See "About optimization score" at + // https://support.google.com/google-ads/answer/9061546. + // + // This field is read-only. + optional double optimization_score = 66 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The asset field types that should be excluded from this campaign. Asset + // links with these field types will not be inherited by this campaign from + // the upper level. + repeated google.ads.googleads.v8.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 69; + + // The bidding strategy for the campaign. + // + // Must be either portfolio (created via BiddingStrategy service) or + // standard, that is embedded into the campaign. + oneof campaign_bidding_strategy { + // Portfolio bidding strategy used by campaign. + string bidding_strategy = 67 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingStrategy" + }]; + + // Commission is an automatic bidding strategy in which the advertiser pays + // a certain portion of the conversion value. + google.ads.googleads.v8.common.Commission commission = 49; + + // Standard Manual CPC bidding strategy. + // Manual click-based bidding where user pays per click. + google.ads.googleads.v8.common.ManualCpc manual_cpc = 24; + + // Standard Manual CPM bidding strategy. + // Manual impression-based bidding where user pays per thousand + // impressions. + google.ads.googleads.v8.common.ManualCpm manual_cpm = 25; + + // Output only. A bidding strategy that pays a configurable amount per video view. + google.ads.googleads.v8.common.ManualCpv manual_cpv = 37 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Standard Maximize Conversions bidding strategy that automatically + // maximizes number of conversions while spending your budget. + google.ads.googleads.v8.common.MaximizeConversions maximize_conversions = 30; + + // Standard Maximize Conversion Value bidding strategy that automatically + // sets bids to maximize revenue while spending your budget. + google.ads.googleads.v8.common.MaximizeConversionValue maximize_conversion_value = 31; + + // Standard Target CPA bidding strategy that automatically sets bids to + // help get as many conversions as possible at the target + // cost-per-acquisition (CPA) you set. + google.ads.googleads.v8.common.TargetCpa target_cpa = 26; + + // Target Impression Share bidding strategy. An automated bidding strategy + // that sets bids to achieve a desired percentage of impressions. + google.ads.googleads.v8.common.TargetImpressionShare target_impression_share = 48; + + // Standard Target ROAS bidding strategy that automatically maximizes + // revenue while averaging a specific target return on ad spend (ROAS). + google.ads.googleads.v8.common.TargetRoas target_roas = 29; + + // Standard Target Spend bidding strategy that automatically sets your bids + // to help get as many clicks as possible within your budget. + google.ads.googleads.v8.common.TargetSpend target_spend = 27; + + // Standard Percent Cpc bidding strategy where bids are a fraction of the + // advertised price for some good or service. + google.ads.googleads.v8.common.PercentCpc percent_cpc = 34; + + // A bidding strategy that automatically optimizes cost per thousand + // impressions. + google.ads.googleads.v8.common.TargetCpm target_cpm = 41; + } +} diff --git a/google/ads/googleads/v8/resources/campaign_asset.proto b/google/ads/googleads/v8/resources/campaign_asset.proto new file mode 100644 index 000000000..bf012e660 --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_asset.proto @@ -0,0 +1,76 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/asset_field_type.proto"; +import "google/ads/googleads/v8/enums/asset_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignAssetProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CampaignAsset resource. + +// A link between a Campaign and an Asset. +message CampaignAsset { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignAsset" + pattern: "customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}" + }; + + // Immutable. The resource name of the campaign asset. + // CampaignAsset resource names have the form: + // + // `customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignAsset" + } + ]; + + // Immutable. The campaign to which the asset is linked. + optional string campaign = 6 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Immutable. The asset which is linked to the campaign. + optional string asset = 7 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Immutable. Role that the asset takes under the linked campaign. + // Required. + google.ads.googleads.v8.enums.AssetFieldTypeEnum.AssetFieldType field_type = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Status of the campaign asset. + google.ads.googleads.v8.enums.AssetLinkStatusEnum.AssetLinkStatus status = 5; +} diff --git a/google/ads/googleads/v8/resources/campaign_audience_view.proto b/google/ads/googleads/v8/resources/campaign_audience_view.proto new file mode 100644 index 000000000..342e530bc --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_audience_view.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignAudienceViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the campaign audience view resource. + +// A campaign audience view. +// Includes performance data from interests and remarketing lists for Display +// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), +// aggregated by campaign and audience criterion. This view only includes +// audiences attached at the campaign level. +message CampaignAudienceView { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignAudienceView" + pattern: "customers/{customer_id}/campaignAudienceViews/{campaign_id}~{criterion_id}" + }; + + // Output only. The resource name of the campaign audience view. + // Campaign audience view resource names have the form: + // + // `customers/{customer_id}/campaignAudienceViews/{campaign_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignAudienceView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/campaign_bid_modifier.proto b/google/ads/googleads/v8/resources/campaign_bid_modifier.proto new file mode 100644 index 000000000..15bbaa259 --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_bid_modifier.proto @@ -0,0 +1,76 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBidModifierProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Campaign Bid Modifier resource. + +// Represents a bid-modifiable only criterion at the campaign level. +message CampaignBidModifier { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignBidModifier" + pattern: "customers/{customer_id}/campaignBidModifiers/{campaign_id}~{criterion_id}" + }; + + // Immutable. The resource name of the campaign bid modifier. + // Campaign bid modifier resource names have the form: + // + // `customers/{customer_id}/campaignBidModifiers/{campaign_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBidModifier" + } + ]; + + // Output only. The campaign to which this criterion belongs. + optional string campaign = 6 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The ID of the criterion to bid modify. + // + // This field is ignored for mutates. + optional int64 criterion_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The modifier for the bid when the criterion matches. + optional double bid_modifier = 8; + + // The criterion of this campaign bid modifier. + // + // Required in create operations starting in V5. + oneof criterion { + // Immutable. Criterion for interaction type. Only supported for search campaigns. + google.ads.googleads.v8.common.InteractionTypeInfo interaction_type = 5 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v8/resources/campaign_budget.proto b/google/ads/googleads/v8/resources/campaign_budget.proto new file mode 100644 index 000000000..a4f685578 --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_budget.proto @@ -0,0 +1,156 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/budget_delivery_method.proto"; +import "google/ads/googleads/v8/enums/budget_period.proto"; +import "google/ads/googleads/v8/enums/budget_status.proto"; +import "google/ads/googleads/v8/enums/budget_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBudgetProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Budget resource. + +// A campaign budget. +message CampaignBudget { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignBudget" + pattern: "customers/{customer_id}/campaignBudgets/{campaign_budget_id}" + }; + + // Immutable. The resource name of the campaign budget. + // Campaign budget resource names have the form: + // + // `customers/{customer_id}/campaignBudgets/{campaign_budget_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBudget" + } + ]; + + // Output only. The ID of the campaign budget. + // + // A campaign budget is created using the CampaignBudgetService create + // operation and is assigned a budget ID. A budget ID can be shared across + // different campaigns; the system will then allocate the campaign budget + // among different campaigns to get optimum results. + optional int64 id = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the campaign budget. + // + // When creating a campaign budget through CampaignBudgetService, every + // explicitly shared campaign budget must have a non-null, non-empty name. + // Campaign budgets that are not explicitly shared derive their name from the + // attached campaign's name. + // + // The length of this string must be between 1 and 255, inclusive, + // in UTF-8 bytes, (trimmed). + optional string name = 20; + + // The amount of the budget, in the local currency for the account. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. Monthly spend is capped at 30.4 times this amount. + optional int64 amount_micros = 21; + + // The lifetime amount of the budget, in the local currency for the account. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + optional int64 total_amount_micros = 22; + + // Output only. The status of this campaign budget. This field is read-only. + google.ads.googleads.v8.enums.BudgetStatusEnum.BudgetStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The delivery method that determines the rate at which the campaign budget + // is spent. + // + // Defaults to STANDARD if unspecified in a create operation. + google.ads.googleads.v8.enums.BudgetDeliveryMethodEnum.BudgetDeliveryMethod delivery_method = 7; + + // Specifies whether the budget is explicitly shared. Defaults to true if + // unspecified in a create operation. + // + // If true, the budget was created with the purpose of sharing + // across one or more campaigns. + // + // If false, the budget was created with the intention of only being used + // with a single campaign. The budget's name and status will stay in sync + // with the campaign's name and status. Attempting to share the budget with a + // second campaign will result in an error. + // + // A non-shared budget can become an explicitly shared. The same operation + // must also assign the budget a name. + // + // A shared campaign budget can never become non-shared. + optional bool explicitly_shared = 23; + + // Output only. The number of campaigns actively using the budget. + // + // This field is read-only. + optional int64 reference_count = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Indicates whether there is a recommended budget for this campaign budget. + // + // This field is read-only. + optional bool has_recommended_budget = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended budget amount. If no recommendation is available, this will + // be set to the budget amount. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + // + // This field is read-only. + optional int64 recommended_budget_amount_micros = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Period over which to spend the budget. Defaults to DAILY if not specified. + google.ads.googleads.v8.enums.BudgetPeriodEnum.BudgetPeriod period = 13 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The estimated change in weekly clicks if the recommended budget is applied. + // + // This field is read-only. + optional int64 recommended_budget_estimated_change_weekly_clicks = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The estimated change in weekly cost in micros if the recommended budget is + // applied. One million is equivalent to one currency unit. + // + // This field is read-only. + optional int64 recommended_budget_estimated_change_weekly_cost_micros = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The estimated change in weekly interactions if the recommended budget is + // applied. + // + // This field is read-only. + optional int64 recommended_budget_estimated_change_weekly_interactions = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The estimated change in weekly views if the recommended budget is applied. + // + // This field is read-only. + optional int64 recommended_budget_estimated_change_weekly_views = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The type of the campaign budget. + google.ads.googleads.v8.enums.BudgetTypeEnum.BudgetType type = 18 [(google.api.field_behavior) = IMMUTABLE]; +} diff --git a/google/ads/googleads/v8/resources/campaign_criterion.proto b/google/ads/googleads/v8/resources/campaign_criterion.proto new file mode 100644 index 000000000..0a7882652 --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_criterion.proto @@ -0,0 +1,181 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/ads/googleads/v8/enums/campaign_criterion_status.proto"; +import "google/ads/googleads/v8/enums/criterion_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Campaign Criterion resource. + +// A campaign criterion. +message CampaignCriterion { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignCriterion" + pattern: "customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}" + }; + + // Immutable. The resource name of the campaign criterion. + // Campaign criterion resource names have the form: + // + // `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignCriterion" + } + ]; + + // Immutable. The campaign to which the criterion belongs. + optional string campaign = 37 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The ID of the criterion. + // + // This field is ignored during mutate. + optional int64 criterion_id = 38 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The display name of the criterion. + // + // This field is ignored for mutates. + string display_name = 43 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The modifier for the bids when the criterion matches. The modifier must be + // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. + // Use 0 to opt out of a Device type. + optional float bid_modifier = 39; + + // Immutable. Whether to target (`false`) or exclude (`true`) the criterion. + optional bool negative = 40 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The type of the criterion. + google.ads.googleads.v8.enums.CriterionTypeEnum.CriterionType type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The status of the criterion. + google.ads.googleads.v8.enums.CampaignCriterionStatusEnum.CampaignCriterionStatus status = 35; + + // The campaign criterion. + // + // Exactly one must be set. + oneof criterion { + // Immutable. Keyword. + google.ads.googleads.v8.common.KeywordInfo keyword = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Placement. + google.ads.googleads.v8.common.PlacementInfo placement = 9 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile app category. + google.ads.googleads.v8.common.MobileAppCategoryInfo mobile_app_category = 10 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile application. + google.ads.googleads.v8.common.MobileApplicationInfo mobile_application = 11 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Location. + google.ads.googleads.v8.common.LocationInfo location = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Device. + google.ads.googleads.v8.common.DeviceInfo device = 13 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Ad Schedule. + google.ads.googleads.v8.common.AdScheduleInfo ad_schedule = 15 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Age range. + google.ads.googleads.v8.common.AgeRangeInfo age_range = 16 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Gender. + google.ads.googleads.v8.common.GenderInfo gender = 17 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Income range. + google.ads.googleads.v8.common.IncomeRangeInfo income_range = 18 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Parental status. + google.ads.googleads.v8.common.ParentalStatusInfo parental_status = 19 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. User List. + google.ads.googleads.v8.common.UserListInfo user_list = 22 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Video. + google.ads.googleads.v8.common.YouTubeVideoInfo youtube_video = 20 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Channel. + google.ads.googleads.v8.common.YouTubeChannelInfo youtube_channel = 21 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Proximity. + google.ads.googleads.v8.common.ProximityInfo proximity = 23 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Topic. + google.ads.googleads.v8.common.TopicInfo topic = 24 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Listing scope. + google.ads.googleads.v8.common.ListingScopeInfo listing_scope = 25 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Language. + google.ads.googleads.v8.common.LanguageInfo language = 26 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. IpBlock. + google.ads.googleads.v8.common.IpBlockInfo ip_block = 27 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. ContentLabel. + google.ads.googleads.v8.common.ContentLabelInfo content_label = 28 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Carrier. + google.ads.googleads.v8.common.CarrierInfo carrier = 29 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. User Interest. + google.ads.googleads.v8.common.UserInterestInfo user_interest = 30 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Webpage. + google.ads.googleads.v8.common.WebpageInfo webpage = 31 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Operating system version. + google.ads.googleads.v8.common.OperatingSystemVersionInfo operating_system_version = 32 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile Device. + google.ads.googleads.v8.common.MobileDeviceInfo mobile_device = 33 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Location Group + google.ads.googleads.v8.common.LocationGroupInfo location_group = 34 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Affinity. + google.ads.googleads.v8.common.CustomAffinityInfo custom_affinity = 36 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Audience + google.ads.googleads.v8.common.CustomAudienceInfo custom_audience = 41 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Combined Audience. + google.ads.googleads.v8.common.CombinedAudienceInfo combined_audience = 42 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Smart Campaign Keyword Theme. + google.ads.googleads.v8.common.KeywordThemeInfo keyword_theme = 45 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v8/resources/campaign_criterion_simulation.proto b/google/ads/googleads/v8/resources/campaign_criterion_simulation.proto new file mode 100644 index 000000000..631fc06b7 --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_criterion_simulation.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/simulation.proto"; +import "google/ads/googleads/v8/enums/simulation_modification_method.proto"; +import "google/ads/googleads/v8/enums/simulation_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionSimulationProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the campaign criterion simulation resource. + +// A campaign criterion simulation. Supported combinations of advertising +// channel type, criterion ids, simulation type and simulation modification +// method is detailed below respectively. +// +// 1. SEARCH - 30000,30001,30002 - BID_MODIFIER - UNIFORM +// 2. DISPLAY - 30001 - BID_MODIFIER - UNIFORM +message CampaignCriterionSimulation { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignCriterionSimulation" + pattern: "customers/{customer_id}/campaignCriterionSimulations/{campaign_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}" + }; + + // Output only. The resource name of the campaign criterion simulation. + // Campaign criterion simulation resource names have the form: + // + // `customers/{customer_id}/campaignCriterionSimulations/{campaign_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignCriterionSimulation" + } + ]; + + // Output only. Campaign ID of the simulation. + optional int64 campaign_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Criterion ID of the simulation. + optional int64 criterion_id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The field that the simulation modifies. + google.ads.googleads.v8.enums.SimulationTypeEnum.SimulationType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. How the simulation modifies the field. + google.ads.googleads.v8.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. First day on which the simulation is based, in YYYY-MM-DD format. + optional string start_date = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Last day on which the simulation is based, in YYYY-MM-DD format. + optional string end_date = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of simulation points. + oneof point_list { + // Output only. Simulation points if the simulation type is BID_MODIFIER. + google.ads.googleads.v8.common.BidModifierSimulationPointList bid_modifier_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v8/resources/campaign_draft.proto b/google/ads/googleads/v8/resources/campaign_draft.proto new file mode 100644 index 000000000..a6f9acd3d --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_draft.proto @@ -0,0 +1,98 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/campaign_draft_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignDraftProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Campaign Draft resource. + +// A campaign draft. +message CampaignDraft { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignDraft" + pattern: "customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}" + }; + + // Immutable. The resource name of the campaign draft. + // Campaign draft resource names have the form: + // + // `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignDraft" + } + ]; + + // Output only. The ID of the draft. + // + // This field is read-only. + optional int64 draft_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The base campaign to which the draft belongs. + optional string base_campaign = 10 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // The name of the campaign draft. + // + // This field is required and should not be empty when creating new + // campaign drafts. + // + // It must not contain any null (code point 0x0), NL line feed + // (code point 0xA) or carriage return (code point 0xD) characters. + optional string name = 11; + + // Output only. Resource name of the Campaign that results from overlaying the draft + // changes onto the base campaign. + // + // This field is read-only. + optional string draft_campaign = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The status of the campaign draft. This field is read-only. + // + // When a new campaign draft is added, the status defaults to PROPOSED. + google.ads.googleads.v8.enums.CampaignDraftStatusEnum.CampaignDraftStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether there is an experiment based on this draft currently serving. + optional bool has_experiment_running = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the long-running operation that can be used to poll + // for completion of draft promotion. This is only set if the draft promotion + // is in progress or finished. + optional string long_running_operation = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/campaign_experiment.proto b/google/ads/googleads/v8/resources/campaign_experiment.proto new file mode 100644 index 000000000..c6904f501 --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_experiment.proto @@ -0,0 +1,121 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/campaign_experiment_status.proto"; +import "google/ads/googleads/v8/enums/campaign_experiment_traffic_split_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Campaign Experiment resource. + +// An A/B experiment that compares the performance of the base campaign +// (the control) and a variation of that campaign (the experiment). +message CampaignExperiment { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignExperiment" + pattern: "customers/{customer_id}/campaignExperiments/{campaign_experiment_id}" + }; + + // Immutable. The resource name of the campaign experiment. + // Campaign experiment resource names have the form: + // + // `customers/{customer_id}/campaignExperiments/{campaign_experiment_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignExperiment" + } + ]; + + // Output only. The ID of the campaign experiment. + // + // This field is read-only. + optional int64 id = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The campaign draft with staged changes to the base campaign. + optional string campaign_draft = 14 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignDraft" + } + ]; + + // The name of the campaign experiment. + // + // This field is required when creating new campaign experiments + // and must not conflict with the name of another non-removed + // campaign experiment or campaign. + // + // It must not contain any null (code point 0x0), NL line feed + // (code point 0xA) or carriage return (code point 0xD) characters. + optional string name = 15; + + // The description of the experiment. + optional string description = 16; + + // Immutable. Share of traffic directed to experiment as a percent (must be between 1 and + // 99 inclusive. Base campaign receives the remainder of the traffic + // (100 - traffic_split_percent). Required for create. + optional int64 traffic_split_percent = 17 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Determines the behavior of the traffic split. + google.ads.googleads.v8.enums.CampaignExperimentTrafficSplitTypeEnum.CampaignExperimentTrafficSplitType traffic_split_type = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The experiment campaign, as opposed to the base campaign. + optional string experiment_campaign = 18 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The status of the campaign experiment. This field is read-only. + google.ads.googleads.v8.enums.CampaignExperimentStatusEnum.CampaignExperimentStatus status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the long-running operation that can be used to poll + // for completion of experiment create or promote. The most recent long + // running operation is returned. + optional string long_running_operation = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Date when the campaign experiment starts. By default, the experiment starts + // now or on the campaign's start date, whichever is later. If this field is + // set, then the experiment starts at the beginning of the specified date in + // the customer's time zone. Cannot be changed once the experiment starts. + // + // Format: YYYY-MM-DD + // Example: 2019-03-14 + optional string start_date = 20; + + // The last day of the campaign experiment. By default, the experiment ends on + // the campaign's end date. If this field is set, then the experiment ends at + // the end of the specified date in the customer's time zone. + // + // Format: YYYY-MM-DD + // Example: 2019-04-18 + optional string end_date = 21; +} diff --git a/google/ads/googleads/v8/resources/campaign_extension_setting.proto b/google/ads/googleads/v8/resources/campaign_extension_setting.proto new file mode 100644 index 000000000..aaa7f3178 --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_extension_setting.proto @@ -0,0 +1,79 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/extension_setting_device.proto"; +import "google/ads/googleads/v8/enums/extension_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExtensionSettingProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CampaignExtensionSetting resource. + +// A campaign extension setting. +message CampaignExtensionSetting { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignExtensionSetting" + pattern: "customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}" + }; + + // Immutable. The resource name of the campaign extension setting. + // CampaignExtensionSetting resource names have the form: + // + // `customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignExtensionSetting" + } + ]; + + // Immutable. The extension type of the customer extension setting. + google.ads.googleads.v8.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The resource name of the campaign. The linked extension feed items will + // serve under this campaign. + // Campaign resource names have the form: + // + // `customers/{customer_id}/campaigns/{campaign_id}` + optional string campaign = 6 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // The resource names of the extension feed items to serve under the campaign. + // ExtensionFeedItem resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + repeated string extension_feed_items = 7 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + }]; + + // The device for which the extensions will serve. Optional. + google.ads.googleads.v8.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; +} diff --git a/google/ads/googleads/v8/resources/campaign_feed.proto b/google/ads/googleads/v8/resources/campaign_feed.proto new file mode 100644 index 000000000..b8f1601ce --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_feed.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/matching_function.proto"; +import "google/ads/googleads/v8/enums/feed_link_status.proto"; +import "google/ads/googleads/v8/enums/placeholder_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignFeedProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CampaignFeed resource. + +// A campaign feed. +message CampaignFeed { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignFeed" + pattern: "customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id}" + }; + + // Immutable. The resource name of the campaign feed. + // Campaign feed resource names have the form: + // + // `customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id} + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignFeed" + } + ]; + + // Immutable. The feed to which the CampaignFeed belongs. + optional string feed = 7 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Immutable. The campaign to which the CampaignFeed belongs. + optional string campaign = 8 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Indicates which placeholder types the feed may populate under the connected + // campaign. Required. + repeated google.ads.googleads.v8.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; + + // Matching function associated with the CampaignFeed. + // The matching function is used to filter the set of feed items selected. + // Required. + google.ads.googleads.v8.common.MatchingFunction matching_function = 5; + + // Output only. Status of the campaign feed. + // This field is read-only. + google.ads.googleads.v8.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/campaign_label.proto b/google/ads/googleads/v8/resources/campaign_label.proto new file mode 100644 index 000000000..e251eaccb --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_label.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignLabelProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the campaign label resource. + +// Represents a relationship between a campaign and a label. +message CampaignLabel { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignLabel" + pattern: "customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}" + }; + + // Immutable. Name of the resource. + // Campaign label resource names have the form: + // `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignLabel" + } + ]; + + // Immutable. The campaign to which the label is attached. + optional string campaign = 4 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Immutable. The label assigned to the campaign. + optional string label = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/campaign_shared_set.proto b/google/ads/googleads/v8/resources/campaign_shared_set.proto new file mode 100644 index 000000000..b8c8cd611 --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_shared_set.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/campaign_shared_set_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSharedSetProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CampaignSharedSet resource. + +// CampaignSharedSets are used for managing the shared sets associated with a +// campaign. +message CampaignSharedSet { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignSharedSet" + pattern: "customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}" + }; + + // Immutable. The resource name of the campaign shared set. + // Campaign shared set resource names have the form: + // + // `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignSharedSet" + } + ]; + + // Immutable. The campaign to which the campaign shared set belongs. + optional string campaign = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Immutable. The shared set associated with the campaign. This may be a negative keyword + // shared set of another customer. This customer should be a manager of the + // other customer, otherwise the campaign shared set will exist but have no + // serving effect. Only negative keyword shared sets can be associated with + // Shopping campaigns. Only negative placement shared sets can be associated + // with Display mobile app campaigns. + optional string shared_set = 6 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedSet" + } + ]; + + // Output only. The status of this campaign shared set. Read only. + google.ads.googleads.v8.enums.CampaignSharedSetStatusEnum.CampaignSharedSetStatus status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/campaign_simulation.proto b/google/ads/googleads/v8/resources/campaign_simulation.proto new file mode 100644 index 000000000..f37a2416f --- /dev/null +++ b/google/ads/googleads/v8/resources/campaign_simulation.proto @@ -0,0 +1,102 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/simulation.proto"; +import "google/ads/googleads/v8/enums/simulation_modification_method.proto"; +import "google/ads/googleads/v8/enums/simulation_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSimulationProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the campaign simulation resource. + +// A campaign simulation. Supported combinations of advertising +// channel type, simulation type and simulation modification +// method is detailed below respectively. +// +// SEARCH - CPC_BID - UNIFORM +// SEARCH - CPC_BID - SCALING +// SEARCH - TARGET_CPA - UNIFORM +// SEARCH - TARGET_CPA - SCALING +// SEARCH - TARGET_ROAS - UNIFORM +// SEARCH - TARGET_IMPRESSION_SHARE - UNIFORM +// SEARCH - BUDGET - UNIFORM +// SHOPPING - BUDGET - UNIFORM +// SHOPPING - TARGET_ROAS - UNIFORM +// MULTIPLE - TARGET_CPA - UNIFORM +// OWNED_AND_OPERATED - TARGET_CPA - DEFAULT +// DISPLAY - TARGET_CPA - UNIFORM +message CampaignSimulation { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignSimulation" + pattern: "customers/{customer_id}/campaignSimulations/{campaign_id}~{type}~{modification_method}~{start_date}~{end_date}" + }; + + // Output only. The resource name of the campaign simulation. + // Campaign simulation resource names have the form: + // + // `customers/{customer_id}/campaignSimulations/{campaign_id}~{type}~{modification_method}~{start_date}~{end_date}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignSimulation" + } + ]; + + // Output only. Campaign id of the simulation. + int64 campaign_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The field that the simulation modifies. + google.ads.googleads.v8.enums.SimulationTypeEnum.SimulationType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. How the simulation modifies the field. + google.ads.googleads.v8.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. First day on which the simulation is based, in YYYY-MM-DD format. + string start_date = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Last day on which the simulation is based, in YYYY-MM-DD format + string end_date = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of simulation points. + oneof point_list { + // Output only. Simulation points if the simulation type is CPC_BID. + google.ads.googleads.v8.common.CpcBidSimulationPointList cpc_bid_point_list = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_CPA. + google.ads.googleads.v8.common.TargetCpaSimulationPointList target_cpa_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_ROAS. + google.ads.googleads.v8.common.TargetRoasSimulationPointList target_roas_point_list = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_IMPRESSION_SHARE. + google.ads.googleads.v8.common.TargetImpressionShareSimulationPointList target_impression_share_point_list = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is BUDGET. + google.ads.googleads.v8.common.BudgetSimulationPointList budget_point_list = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v8/resources/carrier_constant.proto b/google/ads/googleads/v8/resources/carrier_constant.proto new file mode 100644 index 000000000..dd2875086 --- /dev/null +++ b/google/ads/googleads/v8/resources/carrier_constant.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CarrierConstantProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Carrier constant resource. + +// A carrier criterion that can be used in campaign targeting. +message CarrierConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/CarrierConstant" + pattern: "carrierConstants/{criterion_id}" + }; + + // Output only. The resource name of the carrier criterion. + // Carrier criterion resource names have the form: + // + // `carrierConstants/{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CarrierConstant" + } + ]; + + // Output only. The ID of the carrier criterion. + optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The full name of the carrier in English. + optional string name = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The country code of the country where the carrier is located, e.g., "AR", + // "FR", etc. + optional string country_code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/change_event.proto b/google/ads/googleads/v8/resources/change_event.proto new file mode 100644 index 000000000..44b974b2a --- /dev/null +++ b/google/ads/googleads/v8/resources/change_event.proto @@ -0,0 +1,203 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/ad_type.proto"; +import "google/ads/googleads/v8/enums/advertising_channel_sub_type.proto"; +import "google/ads/googleads/v8/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v8/enums/asset_type.proto"; +import "google/ads/googleads/v8/enums/change_client_type.proto"; +import "google/ads/googleads/v8/enums/change_event_resource_type.proto"; +import "google/ads/googleads/v8/enums/criterion_type.proto"; +import "google/ads/googleads/v8/enums/feed_origin.proto"; +import "google/ads/googleads/v8/enums/resource_change_operation.proto"; +import "google/ads/googleads/v8/resources/ad.proto"; +import "google/ads/googleads/v8/resources/ad_group.proto"; +import "google/ads/googleads/v8/resources/ad_group_ad.proto"; +import "google/ads/googleads/v8/resources/ad_group_asset.proto"; +import "google/ads/googleads/v8/resources/ad_group_bid_modifier.proto"; +import "google/ads/googleads/v8/resources/ad_group_criterion.proto"; +import "google/ads/googleads/v8/resources/ad_group_feed.proto"; +import "google/ads/googleads/v8/resources/asset.proto"; +import "google/ads/googleads/v8/resources/campaign.proto"; +import "google/ads/googleads/v8/resources/campaign_asset.proto"; +import "google/ads/googleads/v8/resources/campaign_budget.proto"; +import "google/ads/googleads/v8/resources/campaign_criterion.proto"; +import "google/ads/googleads/v8/resources/campaign_feed.proto"; +import "google/ads/googleads/v8/resources/customer_asset.proto"; +import "google/ads/googleads/v8/resources/feed.proto"; +import "google/ads/googleads/v8/resources/feed_item.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ChangeEventProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Change Event resource. + +// Describes the granular change of returned resource of certain resource types. +// Changes made through UI, API and new versions of Editor +// by external users (including external users, and internal users that can be +// shown externally) in the past 30 days will be shown. The change shows the old +// values of the changed fields before the change and the new values right after +// the change. ChangeEvent could have up to 3 minutes delay to reflect a new +// change. +message ChangeEvent { + option (google.api.resource) = { + type: "googleads.googleapis.com/ChangeEvent" + pattern: "customers/{customer_id}/changeEvents/{timestamp_micros}~{command_index}~{mutate_index}" + }; + + // A wrapper proto presenting all supported resources. + // Only the resource of the change_resource_type will be set. + message ChangedResource { + // Output only. Set if change_resource_type == AD. + Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP. + AdGroup ad_group = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP_CRITERION. + AdGroupCriterion ad_group_criterion = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CAMPAIGN. + Campaign campaign = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CAMPAIGN_BUDGET. + CampaignBudget campaign_budget = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP_BID_MODIFIER. + AdGroupBidModifier ad_group_bid_modifier = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CAMPAIGN_CRITERION. + CampaignCriterion campaign_criterion = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == FEED. + Feed feed = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == FEED_ITEM. + FeedItem feed_item = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CAMPAIGN_FEED. + CampaignFeed campaign_feed = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP_FEED. + AdGroupFeed ad_group_feed = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP_AD. + AdGroupAd ad_group_ad = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == ASSET. + Asset asset = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CUSTOMER_ASSET. + CustomerAsset customer_asset = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CAMPAIGN_ASSET. + CampaignAsset campaign_asset = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP_ASSET. + AdGroupAsset ad_group_asset = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. The resource name of the change event. + // Change event resource names have the form: + // + // `customers/{customer_id}/changeEvents/{timestamp_micros}~{command_index}~{mutate_index}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ChangeEvent" + } + ]; + + // Output only. Time at which the change was committed on this resource. + string change_date_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the changed resource. This dictates what resource + // will be set in old_resource and new_resource. + google.ads.googleads.v8.enums.ChangeEventResourceTypeEnum.ChangeEventResourceType change_resource_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Simply resource this change occurred on. + string change_resource_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Where the change was made through. + google.ads.googleads.v8.enums.ChangeClientTypeEnum.ChangeClientType client_type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The email of the user who made this change. + string user_email = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The old resource before the change. Only changed fields will be populated. + ChangedResource old_resource = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The new resource after the change. Only changed fields will be populated. + ChangedResource new_resource = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The operation on the changed resource. + google.ads.googleads.v8.enums.ResourceChangeOperationEnum.ResourceChangeOperation resource_change_operation = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A list of fields that are changed in the returned resource. + google.protobuf.FieldMask changed_fields = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Campaign affected by this change. + string campaign = 11 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The AdGroup affected by this change. + string ad_group = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. The Feed affected by this change. + string feed = 13 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Output only. The FeedItem affected by this change. + string feed_item = 14 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; + + // Output only. The Asset affected by this change. + string asset = 20 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/change_status.proto b/google/ads/googleads/v8/resources/change_status.proto new file mode 100644 index 000000000..add8a9095 --- /dev/null +++ b/google/ads/googleads/v8/resources/change_status.proto @@ -0,0 +1,199 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/ad_type.proto"; +import "google/ads/googleads/v8/enums/advertising_channel_sub_type.proto"; +import "google/ads/googleads/v8/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v8/enums/asset_type.proto"; +import "google/ads/googleads/v8/enums/change_status_operation.proto"; +import "google/ads/googleads/v8/enums/change_status_resource_type.proto"; +import "google/ads/googleads/v8/enums/criterion_type.proto"; +import "google/ads/googleads/v8/enums/feed_origin.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ChangeStatusProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Change Status resource. + +// Describes the status of returned resource. ChangeStatus could have up to 3 +// minutes delay to reflect a new change. +message ChangeStatus { + option (google.api.resource) = { + type: "googleads.googleapis.com/ChangeStatus" + pattern: "customers/{customer_id}/changeStatus/{change_status_id}" + }; + + // Output only. The resource name of the change status. + // Change status resource names have the form: + // + // `customers/{customer_id}/changeStatus/{change_status_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ChangeStatus" + } + ]; + + // Output only. Time at which the most recent change has occurred on this resource. + optional string last_change_date_time = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Represents the type of the changed resource. This dictates what fields + // will be set. For example, for AD_GROUP, campaign and ad_group fields will + // be set. + google.ads.googleads.v8.enums.ChangeStatusResourceTypeEnum.ChangeStatusResourceType resource_type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Campaign affected by this change. + optional string campaign = 17 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The AdGroup affected by this change. + optional string ad_group = 18 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. Represents the status of the changed resource. + google.ads.googleads.v8.enums.ChangeStatusOperationEnum.ChangeStatusOperation resource_status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The AdGroupAd affected by this change. + optional string ad_group_ad = 25 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; + + // Output only. The AdGroupCriterion affected by this change. + optional string ad_group_criterion = 26 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; + + // Output only. The CampaignCriterion affected by this change. + optional string campaign_criterion = 27 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignCriterion" + } + ]; + + // Output only. The Feed affected by this change. + optional string feed = 28 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Output only. The FeedItem affected by this change. + optional string feed_item = 29 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; + + // Output only. The AdGroupFeed affected by this change. + optional string ad_group_feed = 30 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupFeed" + } + ]; + + // Output only. The CampaignFeed affected by this change. + optional string campaign_feed = 31 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignFeed" + } + ]; + + // Output only. The AdGroupBidModifier affected by this change. + optional string ad_group_bid_modifier = 32 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupBidModifier" + } + ]; + + // Output only. The SharedSet affected by this change. + string shared_set = 33 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedSet" + } + ]; + + // Output only. The CampaignSharedSet affected by this change. + string campaign_shared_set = 34 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignSharedSet" + } + ]; + + // Output only. The Asset affected by this change. + string asset = 35 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Output only. The CustomerAsset affected by this change. + string customer_asset = 36 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerAsset" + } + ]; + + // Output only. The CampaignAsset affected by this change. + string campaign_asset = 37 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignAsset" + } + ]; + + // Output only. The AdGroupAsset affected by this change. + string ad_group_asset = 38 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAsset" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/click_view.proto b/google/ads/googleads/v8/resources/click_view.proto new file mode 100644 index 000000000..5087acca5 --- /dev/null +++ b/google/ads/googleads/v8/resources/click_view.proto @@ -0,0 +1,108 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/click_location.proto"; +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ClickViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ClickView resource. + +// A click view with metrics aggregated at each click level, including both +// valid and invalid clicks. For non-Search campaigns, metrics.clicks +// represents the number of valid and invalid interactions. +// Queries including ClickView must have a filter limiting the results to one +// day and can be requested for dates back to 90 days before the time of the +// request. +message ClickView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ClickView" + pattern: "customers/{customer_id}/clickViews/{date}~{gclid}" + }; + + // Output only. The resource name of the click view. + // Click view resource names have the form: + // + // `customers/{customer_id}/clickViews/{date (yyyy-MM-dd)}~{gclid}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ClickView" + } + ]; + + // Output only. The Google Click ID. + optional string gclid = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The location criteria matching the area of interest associated with the + // impression. + google.ads.googleads.v8.common.ClickLocation area_of_interest = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The location criteria matching the location of presence associated with the + // impression. + google.ads.googleads.v8.common.ClickLocation location_of_presence = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Page number in search results where the ad was shown. + optional int64 page_number = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The associated ad. + optional string ad_group_ad = 10 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; + + // Output only. The associated campaign location target, if one exists. + optional string campaign_location_target = 11 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + } + ]; + + // Output only. The associated user list, if one exists. + optional string user_list = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserList" + } + ]; + + // Output only. The associated keyword, if one exists and the click corresponds to the + // SEARCH channel. + string keyword = 13 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; + + // Output only. Basic information about the associated keyword, if it exists. + google.ads.googleads.v8.common.KeywordInfo keyword_info = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/combined_audience.proto b/google/ads/googleads/v8/resources/combined_audience.proto new file mode 100644 index 000000000..c1945dea9 --- /dev/null +++ b/google/ads/googleads/v8/resources/combined_audience.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/combined_audience_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CombinedAudienceProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Combined Audience resource. + +// Describe a resource for combined audiences which includes different +// audiences. +message CombinedAudience { + option (google.api.resource) = { + type: "googleads.googleapis.com/CombinedAudience" + pattern: "customers/{customer_id}/combinedAudiences/{combined_audience_id}" + }; + + // Immutable. The resource name of the combined audience. + // Combined audience names have the form: + // + // `customers/{customer_id}/combinedAudience/{combined_audience_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CombinedAudience" + } + ]; + + // Output only. ID of the combined audience. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of this combined audience. Indicates whether the combined audience + // is enabled or removed. + google.ads.googleads.v8.enums.CombinedAudienceStatusEnum.CombinedAudienceStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the combined audience. It should be unique across all combined + // audiences. + string name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Description of this combined audience. + string description = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/conversion_action.proto b/google/ads/googleads/v8/resources/conversion_action.proto new file mode 100644 index 000000000..40d09b0f7 --- /dev/null +++ b/google/ads/googleads/v8/resources/conversion_action.proto @@ -0,0 +1,176 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/tag_snippet.proto"; +import "google/ads/googleads/v8/enums/attribution_model.proto"; +import "google/ads/googleads/v8/enums/conversion_action_category.proto"; +import "google/ads/googleads/v8/enums/conversion_action_counting_type.proto"; +import "google/ads/googleads/v8/enums/conversion_action_status.proto"; +import "google/ads/googleads/v8/enums/conversion_action_type.proto"; +import "google/ads/googleads/v8/enums/data_driven_model_status.proto"; +import "google/ads/googleads/v8/enums/mobile_app_vendor.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Conversion Action resource. + +// A conversion action. +message ConversionAction { + option (google.api.resource) = { + type: "googleads.googleapis.com/ConversionAction" + pattern: "customers/{customer_id}/conversionActions/{conversion_action_id}" + }; + + // Settings related to this conversion action's attribution model. + message AttributionModelSettings { + // The attribution model type of this conversion action. + google.ads.googleads.v8.enums.AttributionModelEnum.AttributionModel attribution_model = 1; + + // Output only. The status of the data-driven attribution model for the conversion + // action. + google.ads.googleads.v8.enums.DataDrivenModelStatusEnum.DataDrivenModelStatus data_driven_model_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Settings related to the value for conversion events associated with this + // conversion action. + message ValueSettings { + // The value to use when conversion events for this conversion action are + // sent with an invalid, disallowed or missing value, or when + // this conversion action is configured to always use the default value. + optional double default_value = 4; + + // The currency code to use when conversion events for this conversion + // action are sent with an invalid or missing currency code, or when this + // conversion action is configured to always use the default value. + optional string default_currency_code = 5; + + // Controls whether the default value and default currency code are used in + // place of the value and currency code specified in conversion events for + // this conversion action. + optional bool always_use_default_value = 6; + } + + // Settings related to a Firebase conversion action. + message FirebaseSettings { + // Output only. The event name of a Firebase conversion. + optional string event_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Firebase project ID of the conversion. + optional string project_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Settings related to a third party app analytics conversion action. + message ThirdPartyAppAnalyticsSettings { + // Output only. The event name of a third-party app analytics conversion. + optional string event_name = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the third-party app analytics provider. + string provider_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Immutable. The resource name of the conversion action. + // Conversion action resource names have the form: + // + // `customers/{customer_id}/conversionActions/{conversion_action_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionAction" + } + ]; + + // Output only. The ID of the conversion action. + optional int64 id = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the conversion action. + // + // This field is required and should not be empty when creating new + // conversion actions. + optional string name = 22; + + // The status of this conversion action for conversion event accrual. + google.ads.googleads.v8.enums.ConversionActionStatusEnum.ConversionActionStatus status = 4; + + // Immutable. The type of this conversion action. + google.ads.googleads.v8.enums.ConversionActionTypeEnum.ConversionActionType type = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // The category of conversions reported for this conversion action. + google.ads.googleads.v8.enums.ConversionActionCategoryEnum.ConversionActionCategory category = 6; + + // Output only. The resource name of the conversion action owner customer, or null if this + // is a system-defined conversion action. + optional string owner_customer = 23 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Whether this conversion action should be included in the "conversions" + // metric. + optional bool include_in_conversions_metric = 24; + + // The maximum number of days that may elapse between an interaction + // (e.g., a click) and a conversion event. + optional int64 click_through_lookback_window_days = 25; + + // The maximum number of days which may elapse between an impression and a + // conversion without an interaction. + optional int64 view_through_lookback_window_days = 26; + + // Settings related to the value for conversion events associated with this + // conversion action. + ValueSettings value_settings = 11; + + // How to count conversion events for the conversion action. + google.ads.googleads.v8.enums.ConversionActionCountingTypeEnum.ConversionActionCountingType counting_type = 12; + + // Settings related to this conversion action's attribution model. + AttributionModelSettings attribution_model_settings = 13; + + // Output only. The snippets used for tracking conversions. + repeated google.ads.googleads.v8.common.TagSnippet tag_snippets = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The phone call duration in seconds after which a conversion should be + // reported for this conversion action. + // + // The value must be between 0 and 10000, inclusive. + optional int64 phone_call_duration_seconds = 27; + + // App ID for an app conversion action. + optional string app_id = 28; + + // Output only. Mobile app vendor for an app conversion action. + google.ads.googleads.v8.enums.MobileAppVendorEnum.MobileAppVendor mobile_app_vendor = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Firebase settings for Firebase conversion types. + FirebaseSettings firebase_settings = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Third Party App Analytics settings for third party conversion types. + ThirdPartyAppAnalyticsSettings third_party_app_analytics_settings = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/conversion_custom_variable.proto b/google/ads/googleads/v8/resources/conversion_custom_variable.proto new file mode 100644 index 000000000..4c4a7a394 --- /dev/null +++ b/google/ads/googleads/v8/resources/conversion_custom_variable.proto @@ -0,0 +1,86 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/conversion_custom_variable_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ConversionCustomVariableProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Conversion Custom Variable resource. + +// A conversion custom variable +// See "About custom variables for conversions" at +// https://support.google.com/google-ads/answer/9964350 +message ConversionCustomVariable { + option (google.api.resource) = { + type: "googleads.googleapis.com/ConversionCustomVariable" + pattern: "customers/{customer_id}/conversionCustomVariables/{conversion_custom_variable_id}" + }; + + // Immutable. The resource name of the conversion custom variable. + // Conversion custom variable resource names have the form: + // + // `customers/{customer_id}/conversionCustomVariables/{conversion_custom_variable_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionCustomVariable" + } + ]; + + // Output only. The ID of the conversion custom variable. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The name of the conversion custom variable. + // Name should be unique. The maximum length of name is 100 characters. + // There should not be any extra spaces before and after. + string name = 3 [(google.api.field_behavior) = REQUIRED]; + + // Required. Immutable. The tag of the conversion custom variable. It is used in the event snippet + // and sent to Google Ads along with conversion pings. For conversion uploads + // in Google Ads API, the resource name of the conversion custom variable is + // used. + // Tag should be unique. The maximum size of tag is 100 bytes. + // There should not be any extra spaces before and after. + // Currently only lowercase letters, numbers and underscores are allowed in + // the tag. + string tag = 4 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // The status of the conversion custom variable for conversion event accrual. + google.ads.googleads.v8.enums.ConversionCustomVariableStatusEnum.ConversionCustomVariableStatus status = 5; + + // Output only. The resource name of the customer that owns the conversion custom variable. + string owner_customer = 6 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/conversion_value_rule.proto b/google/ads/googleads/v8/resources/conversion_value_rule.proto new file mode 100644 index 000000000..da0ee815c --- /dev/null +++ b/google/ads/googleads/v8/resources/conversion_value_rule.proto @@ -0,0 +1,135 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/conversion_value_rule_status.proto"; +import "google/ads/googleads/v8/enums/value_rule_device_type.proto"; +import "google/ads/googleads/v8/enums/value_rule_geo_location_match_type.proto"; +import "google/ads/googleads/v8/enums/value_rule_operation.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Conversion Value Rule resource. + +// A conversion value rule +message ConversionValueRule { + option (google.api.resource) = { + type: "googleads.googleapis.com/ConversionValueRule" + pattern: "customers/{customer_id}/conversionValueRules/{conversion_value_rule_id}" + }; + + // Action applied when rule is applied. + message ValueRuleAction { + // Specifies applied operation. + google.ads.googleads.v8.enums.ValueRuleOperationEnum.ValueRuleOperation operation = 1; + + // Specifies applied value. + double value = 2; + } + + // Condition on Geo dimension. + message ValueRuleGeoLocationCondition { + // Geo locations that advertisers want to exclude. + repeated string excluded_geo_target_constants = 1 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + }]; + + // Excluded Geo location match type. + google.ads.googleads.v8.enums.ValueRuleGeoLocationMatchTypeEnum.ValueRuleGeoLocationMatchType excluded_geo_match_type = 2; + + // Geo locations that advertisers want to include. + repeated string geo_target_constants = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + }]; + + // Included Geo location match type. + google.ads.googleads.v8.enums.ValueRuleGeoLocationMatchTypeEnum.ValueRuleGeoLocationMatchType geo_match_type = 4; + } + + // Condition on Device dimension. + message ValueRuleDeviceCondition { + // Value for device type condition. + repeated google.ads.googleads.v8.enums.ValueRuleDeviceTypeEnum.ValueRuleDeviceType device_types = 1; + } + + // Condition on Audience dimension. + message ValueRuleAudienceCondition { + // User Lists. + repeated string user_lists = 1 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/UserList" + }]; + + // User Interests. + repeated string user_interests = 2 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/UserInterest" + }]; + } + + // Immutable. The resource name of the conversion value rule. + // Conversion value rule resource names have the form: + // + // `customers/{customer_id}/conversionValueRules/{conversion_value_rule_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionValueRule" + } + ]; + + // Output only. The ID of the conversion value rule. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Action applied when the rule is triggered. + ValueRuleAction action = 3; + + // Condition for Geo location that must be satisfied for the value rule to + // apply. + ValueRuleGeoLocationCondition geo_location_condition = 4; + + // Condition for device type that must be satisfied for the value rule to + // apply. + ValueRuleDeviceCondition device_condition = 5; + + // Condition for audience that must be satisfied for the value rule to apply. + ValueRuleAudienceCondition audience_condition = 6; + + // Output only. The resource name of the conversion value rule's owner customer. + // When the value rule is inherited from a manager + // customer, owner_customer will be the resource name of the manager whereas + // the customer in the resource_name will be of the requesting serving + // customer. + // ** Read-only ** + string owner_customer = 7 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // The status of the conversion value rule. + google.ads.googleads.v8.enums.ConversionValueRuleStatusEnum.ConversionValueRuleStatus status = 8; +} diff --git a/google/ads/googleads/v8/resources/conversion_value_rule_set.proto b/google/ads/googleads/v8/resources/conversion_value_rule_set.proto new file mode 100644 index 000000000..3bdcbec0f --- /dev/null +++ b/google/ads/googleads/v8/resources/conversion_value_rule_set.proto @@ -0,0 +1,96 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/conversion_value_rule_set_status.proto"; +import "google/ads/googleads/v8/enums/value_rule_set_attachment_type.proto"; +import "google/ads/googleads/v8/enums/value_rule_set_dimension.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleSetProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Conversion Value Rule Set resource. + +// A conversion value rule set +message ConversionValueRuleSet { + option (google.api.resource) = { + type: "googleads.googleapis.com/ConversionValueRuleSet" + pattern: "customers/{customer_id}/conversionValueRuleSets/{conversion_value_rule_set_id}" + }; + + // Immutable. The resource name of the conversion value rule set. + // Conversion value rule set resource names have the form: + // + // `customers/{customer_id}/conversionValueRuleSets/{conversion_value_rule_set_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionValueRuleSet" + } + ]; + + // Output only. The ID of the conversion value rule set. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Resource names of rules within the rule set. + repeated string conversion_value_rules = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionValueRule" + }]; + + // Defines dimensions for Value Rule conditions. The condition types of value + // rules within this value rule set must be of these dimensions. The first + // entry in this list is the primary dimension of the included value rules. + // When using value rule primary dimension segmentation, conversion values + // will be segmented into the values adjusted by value rules and the original + // values, if some value rules apply. + repeated google.ads.googleads.v8.enums.ValueRuleSetDimensionEnum.ValueRuleSetDimension dimensions = 4; + + // Output only. The resource name of the conversion value rule set's owner customer. + // When the value rule set is inherited from a manager + // customer, owner_customer will be the resource name of the manager whereas + // the customer in the resource_name will be of the requesting serving + // customer. + // ** Read-only ** + string owner_customer = 5 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Defines the scope where the conversion value rule set is attached. + google.ads.googleads.v8.enums.ValueRuleSetAttachmentTypeEnum.ValueRuleSetAttachmentType attachment_type = 6; + + // The resource name of the campaign when the conversion value rule + // set is attached to a campaign. + string campaign = 7 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + }]; + + // Output only. The status of the conversion value rule set. + // ** Read-only ** + google.ads.googleads.v8.enums.ConversionValueRuleSetStatusEnum.ConversionValueRuleSetStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/currency_constant.proto b/google/ads/googleads/v8/resources/currency_constant.proto new file mode 100644 index 000000000..53b606eb2 --- /dev/null +++ b/google/ads/googleads/v8/resources/currency_constant.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CurrencyConstantProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Currency Constant resource. + +// A currency constant. +message CurrencyConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/CurrencyConstant" + pattern: "currencyConstants/{code}" + }; + + // Output only. The resource name of the currency constant. + // Currency constant resource names have the form: + // + // `currencyConstants/{code}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CurrencyConstant" + } + ]; + + // Output only. ISO 4217 three-letter currency code, e.g. "USD" + optional string code = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Full English name of the currency. + optional string name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Standard symbol for describing this currency, e.g. '$' for US Dollars. + optional string symbol = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The billable unit for this currency. Billed amounts should be multiples of + // this value. + optional int64 billable_unit_micros = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/custom_audience.proto b/google/ads/googleads/v8/resources/custom_audience.proto new file mode 100644 index 000000000..96a4df6f7 --- /dev/null +++ b/google/ads/googleads/v8/resources/custom_audience.proto @@ -0,0 +1,107 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/custom_audience_member_type.proto"; +import "google/ads/googleads/v8/enums/custom_audience_status.proto"; +import "google/ads/googleads/v8/enums/custom_audience_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Custom Audience resource. + +// A custom audience. This is a list of users by interest. +message CustomAudience { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomAudience" + pattern: "customers/{customer_id}/customAudiences/{custom_audience_id}" + }; + + // Immutable. The resource name of the custom audience. + // Custom audience resource names have the form: + // + // `customers/{customer_id}/customAudiences/{custom_audience_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomAudience" + } + ]; + + // Output only. ID of the custom audience. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of this custom audience. Indicates whether the custom audience is + // enabled or removed. + google.ads.googleads.v8.enums.CustomAudienceStatusEnum.CustomAudienceStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Name of the custom audience. It should be unique for all custom audiences + // created by a customer. + // This field is required for creating operations. + string name = 4; + + // Type of the custom audience. + // ("INTEREST" OR "PURCHASE_INTENT" is not allowed for newly created custom + // audience but kept for existing audiences) + google.ads.googleads.v8.enums.CustomAudienceTypeEnum.CustomAudienceType type = 5; + + // Description of this custom audience. + string description = 6; + + // List of custom audience members that this custom audience is composed of. + // Members can be added during CustomAudience creation. If members are + // presented in UPDATE operation, existing members will be overridden. + repeated CustomAudienceMember members = 7; +} + +// A member of custom audience. A member can be a KEYWORD, URL, +// PLACE_CATEGORY or APP. It can only be created or removed but not changed. +message CustomAudienceMember { + // The type of custom audience member, KEYWORD, URL, PLACE_CATEGORY or APP. + google.ads.googleads.v8.enums.CustomAudienceMemberTypeEnum.CustomAudienceMemberType member_type = 1; + + // The CustomAudienceMember value. One field is populated depending on the + // member type. + oneof value { + // A keyword or keyword phrase — at most 10 words and 80 characters. + // Languages with double-width characters such as Chinese, Japanese, + // or Korean, are allowed 40 characters, which describes the user's + // interests or actions. + string keyword = 2; + + // An HTTP URL, protocol-included — at most 2048 characters, which includes + // contents users have interests in. + string url = 3; + + // A place type described by a place category users visit. + int64 place_category = 4; + + // A package name of Android apps which users installed such as + // com.google.example. + string app = 5; + } +} diff --git a/google/ads/googleads/v8/resources/custom_interest.proto b/google/ads/googleads/v8/resources/custom_interest.proto new file mode 100644 index 000000000..c57157fa6 --- /dev/null +++ b/google/ads/googleads/v8/resources/custom_interest.proto @@ -0,0 +1,89 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/custom_interest_member_type.proto"; +import "google/ads/googleads/v8/enums/custom_interest_status.proto"; +import "google/ads/googleads/v8/enums/custom_interest_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Custom Interest resource. + +// A custom interest. This is a list of users by interest. +message CustomInterest { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomInterest" + pattern: "customers/{customer_id}/customInterests/{custom_interest_id}" + }; + + // Immutable. The resource name of the custom interest. + // Custom interest resource names have the form: + // + // `customers/{customer_id}/customInterests/{custom_interest_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomInterest" + } + ]; + + // Output only. Id of the custom interest. + optional int64 id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Status of this custom interest. Indicates whether the custom interest is + // enabled or removed. + google.ads.googleads.v8.enums.CustomInterestStatusEnum.CustomInterestStatus status = 3; + + // Name of the custom interest. It should be unique across the same custom + // affinity audience. + // This field is required for create operations. + optional string name = 9; + + // Type of the custom interest, CUSTOM_AFFINITY or CUSTOM_INTENT. + // By default the type is set to CUSTOM_AFFINITY. + google.ads.googleads.v8.enums.CustomInterestTypeEnum.CustomInterestType type = 5; + + // Description of this custom interest audience. + optional string description = 10; + + // List of custom interest members that this custom interest is composed of. + // Members can be added during CustomInterest creation. If members are + // presented in UPDATE operation, existing members will be overridden. + repeated CustomInterestMember members = 7; +} + +// A member of custom interest audience. A member can be a keyword or url. +// It is immutable, that is, it can only be created or removed but not changed. +message CustomInterestMember { + // The type of custom interest member, KEYWORD or URL. + google.ads.googleads.v8.enums.CustomInterestMemberTypeEnum.CustomInterestMemberType member_type = 1; + + // Keyword text when member_type is KEYWORD or URL string when + // member_type is URL. + optional string parameter = 3; +} diff --git a/google/ads/googleads/v8/resources/customer.proto b/google/ads/googleads/v8/resources/customer.proto new file mode 100644 index 000000000..03fe8f41e --- /dev/null +++ b/google/ads/googleads/v8/resources/customer.proto @@ -0,0 +1,161 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/customer_pay_per_conversion_eligibility_failure_reason.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Customer resource. + +// A customer. +message Customer { + option (google.api.resource) = { + type: "googleads.googleapis.com/Customer" + pattern: "customers/{customer_id}" + }; + + // Immutable. The resource name of the customer. + // Customer resource names have the form: + // + // `customers/{customer_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Output only. The ID of the customer. + optional int64 id = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional, non-unique descriptive name of the customer. + optional string descriptive_name = 20; + + // Immutable. The currency in which the account operates. + // A subset of the currency codes from the ISO 4217 standard is + // supported. + optional string currency_code = 21 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The local timezone ID of the customer. + optional string time_zone = 22 [(google.api.field_behavior) = IMMUTABLE]; + + // The URL template for constructing a tracking URL out of parameters. + optional string tracking_url_template = 23; + + // The URL template for appending params to the final URL + optional string final_url_suffix = 24; + + // Whether auto-tagging is enabled for the customer. + optional bool auto_tagging_enabled = 25; + + // Output only. Whether the Customer has a Partners program badge. If the Customer is not + // associated with the Partners program, this will be false. For more + // information, see https://support.google.com/partners/answer/3125774. + optional bool has_partners_badge = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the customer is a manager. + optional bool manager = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the customer is a test account. + optional bool test_account = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Call reporting setting for a customer. + CallReportingSetting call_reporting_setting = 10; + + // Output only. Conversion tracking setting for a customer. + ConversionTrackingSetting conversion_tracking_setting = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Remarketing setting for a customer. + RemarketingSetting remarketing_setting = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Reasons why the customer is not eligible to use PaymentMode.CONVERSIONS. If + // the list is empty, the customer is eligible. This field is read-only. + repeated google.ads.googleads.v8.enums.CustomerPayPerConversionEligibilityFailureReasonEnum.CustomerPayPerConversionEligibilityFailureReason pay_per_conversion_eligibility_failure_reasons = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Optimization score of the customer. + // + // Optimization score is an estimate of how well a customer's campaigns are + // set to perform. It ranges from 0% (0.0) to 100% (1.0). This field is null + // for all manager customers, and for unscored non-manager customers. + // + // See "About optimization score" at + // https://support.google.com/google-ads/answer/9061546. + // + // This field is read-only. + optional double optimization_score = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Optimization score weight of the customer. + // + // Optimization score weight can be used to compare/aggregate optimization + // scores across multiple non-manager customers. The aggregate optimization + // score of a manager is computed as the sum over all of their customers of + // `Customer.optimization_score * Customer.optimization_score_weight`. This + // field is 0 for all manager customers, and for unscored non-manager + // customers. + // + // This field is read-only. + double optimization_score_weight = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Call reporting setting for a customer. +message CallReportingSetting { + // Enable reporting of phone call events by redirecting them via Google + // System. + optional bool call_reporting_enabled = 10; + + // Whether to enable call conversion reporting. + optional bool call_conversion_reporting_enabled = 11; + + // Customer-level call conversion action to attribute a call conversion to. + // If not set a default conversion action is used. Only in effect when + // call_conversion_reporting_enabled is set to true. + optional string call_conversion_action = 12 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionAction" + }]; +} + +// A collection of customer-wide settings related to Google Ads Conversion +// Tracking. +message ConversionTrackingSetting { + // Output only. The conversion tracking id used for this account. This id is automatically + // assigned after any conversion tracking feature is used. If the customer + // doesn't use conversion tracking, this is 0. This field is read-only. + optional int64 conversion_tracking_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The conversion tracking id of the customer's manager. This is set when the + // customer is opted into cross account conversion tracking, and it overrides + // conversion_tracking_id. This field can only be managed through the Google + // Ads UI. This field is read-only. + optional int64 cross_account_conversion_tracking_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Remarketing setting for a customer. +message RemarketingSetting { + // Output only. The Google global site tag. + optional string google_global_site_tag = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/customer_asset.proto b/google/ads/googleads/v8/resources/customer_asset.proto new file mode 100644 index 000000000..95905466f --- /dev/null +++ b/google/ads/googleads/v8/resources/customer_asset.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/asset_field_type.proto"; +import "google/ads/googleads/v8/enums/asset_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerAssetProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CustomerAsset resource. + +// A link between a customer and an asset. +message CustomerAsset { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerAsset" + pattern: "customers/{customer_id}/customerAssets/{asset_id}~{field_type}" + }; + + // Immutable. The resource name of the customer asset. + // CustomerAsset resource names have the form: + // + // `customers/{customer_id}/customerAssets/{asset_id}~{field_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerAsset" + } + ]; + + // Required. Immutable. The asset which is linked to the customer. + string asset = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Required. Immutable. Role that the asset takes for the customer link. + google.ads.googleads.v8.enums.AssetFieldTypeEnum.AssetFieldType field_type = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Status of the customer asset. + google.ads.googleads.v8.enums.AssetLinkStatusEnum.AssetLinkStatus status = 4; +} diff --git a/google/ads/googleads/v8/resources/customer_client.proto b/google/ads/googleads/v8/resources/customer_client.proto new file mode 100644 index 000000000..5d8c23ed5 --- /dev/null +++ b/google/ads/googleads/v8/resources/customer_client.proto @@ -0,0 +1,101 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CustomerClient resource. + +// A link between the given customer and a client customer. CustomerClients only +// exist for manager customers. All direct and indirect client customers are +// included, as well as the manager itself. +message CustomerClient { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerClient" + pattern: "customers/{customer_id}/customerClients/{client_customer_id}" + }; + + // Output only. The resource name of the customer client. + // CustomerClient resource names have the form: + // `customers/{customer_id}/customerClients/{client_customer_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerClient" + } + ]; + + // Output only. The resource name of the client-customer which is linked to + // the given customer. Read only. + optional string client_customer = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Output only. Specifies whether this is a + // [hidden account](https://support.google.com/google-ads/answer/7519830). + // Read only. + optional bool hidden = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Distance between given customer and client. For self link, the level value + // will be 0. Read only. + optional int64 level = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Common Locale Data Repository (CLDR) string representation of the + // time zone of the client, e.g. America/Los_Angeles. Read only. + optional string time_zone = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies if the client is a test account. Read only. + optional bool test_account = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies if the client is a manager. Read only. + optional bool manager = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Descriptive name for the client. Read only. + optional string descriptive_name = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Currency code (e.g. 'USD', 'EUR') for the client. Read only. + optional string currency_code = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ID of the client customer. Read only. + optional int64 id = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource names of the labels owned by the requesting customer that are + // applied to the client customer. + // Label resource names have the form: + // + // `customers/{customer_id}/labels/{label_id}` + repeated string applied_labels = 21 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/customer_client_link.proto b/google/ads/googleads/v8/resources/customer_client_link.proto new file mode 100644 index 000000000..2c5e0f86b --- /dev/null +++ b/google/ads/googleads/v8/resources/customer_client_link.proto @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/manager_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientLinkProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CustomerClientLink resource. + +// Represents customer client link relationship. +message CustomerClientLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerClientLink" + pattern: "customers/{customer_id}/customerClientLinks/{client_customer_id}~{manager_link_id}" + }; + + // Immutable. Name of the resource. + // CustomerClientLink resource names have the form: + // `customers/{customer_id}/customerClientLinks/{client_customer_id}~{manager_link_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerClientLink" + } + ]; + + // Immutable. The client customer linked to this customer. + optional string client_customer = 7 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Output only. This is uniquely identifies a customer client link. Read only. + optional int64 manager_link_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // This is the status of the link between client and manager. + google.ads.googleads.v8.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; + + // The visibility of the link. Users can choose whether or not to see hidden + // links in the Google Ads UI. + // Default value is false + optional bool hidden = 9; +} diff --git a/google/ads/googleads/v8/resources/customer_extension_setting.proto b/google/ads/googleads/v8/resources/customer_extension_setting.proto new file mode 100644 index 000000000..e916c8e0a --- /dev/null +++ b/google/ads/googleads/v8/resources/customer_extension_setting.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/extension_setting_device.proto"; +import "google/ads/googleads/v8/enums/extension_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerExtensionSettingProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CustomerExtensionSetting resource. + +// A customer extension setting. +message CustomerExtensionSetting { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerExtensionSetting" + pattern: "customers/{customer_id}/customerExtensionSettings/{extension_type}" + }; + + // Immutable. The resource name of the customer extension setting. + // CustomerExtensionSetting resource names have the form: + // + // `customers/{customer_id}/customerExtensionSettings/{extension_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerExtensionSetting" + } + ]; + + // Immutable. The extension type of the customer extension setting. + google.ads.googleads.v8.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; + + // The resource names of the extension feed items to serve under the customer. + // ExtensionFeedItem resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + repeated string extension_feed_items = 5 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + }]; + + // The device for which the extensions will serve. Optional. + google.ads.googleads.v8.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 4; +} diff --git a/google/ads/googleads/v8/resources/customer_feed.proto b/google/ads/googleads/v8/resources/customer_feed.proto new file mode 100644 index 000000000..e662fac47 --- /dev/null +++ b/google/ads/googleads/v8/resources/customer_feed.proto @@ -0,0 +1,75 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/matching_function.proto"; +import "google/ads/googleads/v8/enums/feed_link_status.proto"; +import "google/ads/googleads/v8/enums/placeholder_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerFeedProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CustomerFeed resource. + +// A customer feed. +message CustomerFeed { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerFeed" + pattern: "customers/{customer_id}/customerFeeds/{feed_id}" + }; + + // Immutable. The resource name of the customer feed. + // Customer feed resource names have the form: + // + // `customers/{customer_id}/customerFeeds/{feed_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerFeed" + } + ]; + + // Immutable. The feed being linked to the customer. + optional string feed = 6 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Indicates which placeholder types the feed may populate under the connected + // customer. Required. + repeated google.ads.googleads.v8.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 3; + + // Matching function associated with the CustomerFeed. + // The matching function is used to filter the set of feed items selected. + // Required. + google.ads.googleads.v8.common.MatchingFunction matching_function = 4; + + // Output only. Status of the customer feed. + // This field is read-only. + google.ads.googleads.v8.enums.FeedLinkStatusEnum.FeedLinkStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/customer_label.proto b/google/ads/googleads/v8/resources/customer_label.proto new file mode 100644 index 000000000..82fb12263 --- /dev/null +++ b/google/ads/googleads/v8/resources/customer_label.proto @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerLabelProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the customer label resource. + +// Represents a relationship between a customer and a label. This customer may +// not have access to all the labels attached to it. Additional CustomerLabels +// may be returned by increasing permissions with login-customer-id. +message CustomerLabel { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerLabel" + pattern: "customers/{customer_id}/customerLabels/{label_id}" + }; + + // Immutable. Name of the resource. + // Customer label resource names have the form: + // `customers/{customer_id}/customerLabels/{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerLabel" + } + ]; + + // Output only. The resource name of the customer to which the label is attached. + // Read only. + optional string customer = 4 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Output only. The resource name of the label assigned to the customer. + // + // Note: the Customer ID portion of the label resource name is not + // validated when creating a new CustomerLabel. + optional string label = 5 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/customer_manager_link.proto b/google/ads/googleads/v8/resources/customer_manager_link.proto new file mode 100644 index 000000000..bb79ce275 --- /dev/null +++ b/google/ads/googleads/v8/resources/customer_manager_link.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/manager_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerManagerLinkProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CustomerManagerLink resource. + +// Represents customer-manager link relationship. +message CustomerManagerLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerManagerLink" + pattern: "customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}" + }; + + // Immutable. Name of the resource. + // CustomerManagerLink resource names have the form: + // `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerManagerLink" + } + ]; + + // Output only. The manager customer linked to the customer. + optional string manager_customer = 6 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Output only. ID of the customer-manager link. This field is read only. + optional int64 manager_link_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Status of the link between the customer and the manager. + google.ads.googleads.v8.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; +} diff --git a/google/ads/googleads/v8/resources/customer_negative_criterion.proto b/google/ads/googleads/v8/resources/customer_negative_criterion.proto new file mode 100644 index 000000000..02bc736f4 --- /dev/null +++ b/google/ads/googleads/v8/resources/customer_negative_criterion.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/ads/googleads/v8/enums/criterion_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerNegativeCriterionProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Customer Negative Criterion resource. + +// A negative criterion for exclusions at the customer level. +message CustomerNegativeCriterion { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerNegativeCriterion" + pattern: "customers/{customer_id}/customerNegativeCriteria/{criterion_id}" + }; + + // Immutable. The resource name of the customer negative criterion. + // Customer negative criterion resource names have the form: + // + // `customers/{customer_id}/customerNegativeCriteria/{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerNegativeCriterion" + } + ]; + + // Output only. The ID of the criterion. + optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the criterion. + google.ads.googleads.v8.enums.CriterionTypeEnum.CriterionType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The customer negative criterion. + // + // Exactly one must be set. + oneof criterion { + // Immutable. ContentLabel. + google.ads.googleads.v8.common.ContentLabelInfo content_label = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. MobileApplication. + google.ads.googleads.v8.common.MobileApplicationInfo mobile_application = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. MobileAppCategory. + google.ads.googleads.v8.common.MobileAppCategoryInfo mobile_app_category = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Placement. + google.ads.googleads.v8.common.PlacementInfo placement = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Video. + google.ads.googleads.v8.common.YouTubeVideoInfo youtube_video = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Channel. + google.ads.googleads.v8.common.YouTubeChannelInfo youtube_channel = 9 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v8/resources/customer_user_access.proto b/google/ads/googleads/v8/resources/customer_user_access.proto new file mode 100644 index 000000000..2dcaf4ab2 --- /dev/null +++ b/google/ads/googleads/v8/resources/customer_user_access.proto @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/access_role.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerUserAccessProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CustomerUserAccess resource. + +// Represents the permission of a single user onto a single customer. +message CustomerUserAccess { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerUserAccess" + pattern: "customers/{customer_id}/customerUserAccesses/{user_id}" + }; + + // Immutable. Name of the resource. + // Resource names have the form: + // `customers/{customer_id}/customerUserAccesses/{user_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerUserAccess" + } + ]; + + // Output only. User id of the user with the customer access. + // Read only field + int64 user_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Email address of the user. + // Read only field + optional string email_address = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Access role of the user. + google.ads.googleads.v8.enums.AccessRoleEnum.AccessRole access_role = 4; + + // Output only. The customer user access creation time. + // Read only field + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string access_creation_date_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The email address of the inviter user. + // Read only field + optional string inviter_user_email_address = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/customer_user_access_invitation.proto b/google/ads/googleads/v8/resources/customer_user_access_invitation.proto new file mode 100644 index 000000000..d4c17a3ba --- /dev/null +++ b/google/ads/googleads/v8/resources/customer_user_access_invitation.proto @@ -0,0 +1,73 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/access_invitation_status.proto"; +import "google/ads/googleads/v8/enums/access_role.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerUserAccessInvitationProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the CustomerUserAccessInvitation resource. + +// Represent an invitation to a new user on this customer account. +message CustomerUserAccessInvitation { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerUserAccessInvitation" + pattern: "customers/{customer_id}/customerUserAccessInvitations/{invitation_id}" + }; + + // Immutable. Name of the resource. + // Resource names have the form: + // `customers/{customer_id}/customerUserAccessInvitations/{invitation_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerUserAccessInvitation" + } + ]; + + // Output only. The ID of the invitation. + // This field is read-only. + int64 invitation_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Access role of the user. + google.ads.googleads.v8.enums.AccessRoleEnum.AccessRole access_role = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Email address the invitation was sent to. + // This can differ from the email address of the account + // that accepts the invite. + string email_address = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Time invitation was created. + // This field is read-only. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + string creation_date_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Invitation status of the user. + google.ads.googleads.v8.enums.AccessInvitationStatusEnum.AccessInvitationStatus invitation_status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/detail_placement_view.proto b/google/ads/googleads/v8/resources/detail_placement_view.proto new file mode 100644 index 000000000..4184be50a --- /dev/null +++ b/google/ads/googleads/v8/resources/detail_placement_view.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/placement_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DetailPlacementViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the detail placement view resource. + +// A view with metrics aggregated by ad group and URL or YouTube video. +message DetailPlacementView { + option (google.api.resource) = { + type: "googleads.googleapis.com/DetailPlacementView" + pattern: "customers/{customer_id}/detailPlacementViews/{ad_group_id}~{base64_placement}" + }; + + // Output only. The resource name of the detail placement view. + // Detail placement view resource names have the form: + // + // `customers/{customer_id}/detailPlacementViews/{ad_group_id}~{base64_placement}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DetailPlacementView" + } + ]; + + // Output only. The automatic placement string at detail level, e. g. website URL, mobile + // application ID, or a YouTube video ID. + optional string placement = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The display name is URL name for websites, YouTube video name for YouTube + // videos, and translated mobile app name for mobile apps. + optional string display_name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. URL of the group placement, e.g. domain, link to the mobile application in + // app store, or a YouTube channel URL. + optional string group_placement_target_url = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. URL of the placement, e.g. website, link to the mobile application in app + // store, or a YouTube video URL. + optional string target_url = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Type of the placement, e.g. Website, YouTube Video, and Mobile Application. + google.ads.googleads.v8.enums.PlacementTypeEnum.PlacementType placement_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/detailed_demographic.proto b/google/ads/googleads/v8/resources/detailed_demographic.proto new file mode 100644 index 000000000..59013d501 --- /dev/null +++ b/google/ads/googleads/v8/resources/detailed_demographic.proto @@ -0,0 +1,74 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criterion_category_availability.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DetailedDemographicProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Detailed Demographic resource. + +// A detailed demographic: a particular interest-based vertical to be targeted +// to reach users based on long-term life facts. +message DetailedDemographic { + option (google.api.resource) = { + type: "googleads.googleapis.com/DetailedDemographic" + pattern: "customers/{customer_id}/detailedDemographics/{detailed_demographic_id}" + }; + + // Output only. The resource name of the detailed demographic. + // Detailed demographic resource names have the form: + // + // `customers/{customer_id}/detailedDemographics/{detailed_demographic_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DetailedDemographic" + } + ]; + + // Output only. The ID of the detailed demographic. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the detailed demographic. E.g."Highest Level of Educational + // Attainment" + string name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The parent of the detailed_demographic. + string parent = 4 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DetailedDemographic" + } + ]; + + // Output only. True if the detailed demographic is launched to all channels and locales. + bool launched_to_all = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Availability information of the detailed demographic. + repeated google.ads.googleads.v8.common.CriterionCategoryAvailability availabilities = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/display_keyword_view.proto b/google/ads/googleads/v8/resources/display_keyword_view.proto new file mode 100644 index 000000000..a6491d88c --- /dev/null +++ b/google/ads/googleads/v8/resources/display_keyword_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DisplayKeywordViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the display keyword view resource. + +// A display keyword view. +message DisplayKeywordView { + option (google.api.resource) = { + type: "googleads.googleapis.com/DisplayKeywordView" + pattern: "customers/{customer_id}/displayKeywordViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the display keyword view. + // Display Keyword view resource names have the form: + // + // `customers/{customer_id}/displayKeywordViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DisplayKeywordView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/distance_view.proto b/google/ads/googleads/v8/resources/distance_view.proto new file mode 100644 index 000000000..94cce7dbb --- /dev/null +++ b/google/ads/googleads/v8/resources/distance_view.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/distance_bucket.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DistanceViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the DistanceView resource. + +// A distance view with metrics aggregated by the user's distance from an +// advertiser's location extensions. Each DistanceBucket includes all +// impressions that fall within its distance and a single impression will +// contribute to the metrics for all DistanceBuckets that include the user's +// distance. +message DistanceView { + option (google.api.resource) = { + type: "googleads.googleapis.com/DistanceView" + pattern: "customers/{customer_id}/distanceViews/{placeholder_chain_id}~{distance_bucket}" + }; + + // Output only. The resource name of the distance view. + // Distance view resource names have the form: + // + // `customers/{customer_id}/distanceViews/1~{distance_bucket}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DistanceView" + } + ]; + + // Output only. Grouping of user distance from location extensions. + google.ads.googleads.v8.enums.DistanceBucketEnum.DistanceBucket distance_bucket = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. True if the DistanceBucket is using the metric system, false otherwise. + optional bool metric_system = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/domain_category.proto b/google/ads/googleads/v8/resources/domain_category.proto new file mode 100644 index 000000000..a7a5d373e --- /dev/null +++ b/google/ads/googleads/v8/resources/domain_category.proto @@ -0,0 +1,90 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DomainCategoryProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Domain Category resource. + +// A category generated automatically by crawling a domain. If a campaign uses +// the DynamicSearchAdsSetting, then domain categories will be generated for +// the domain. The categories can be targeted using WebpageConditionInfo. +// See: https://support.google.com/google-ads/answer/2471185 +message DomainCategory { + option (google.api.resource) = { + type: "googleads.googleapis.com/DomainCategory" + pattern: "customers/{customer_id}/domainCategories/{campaign_id}~{base64_category}~{language_code}" + }; + + // Output only. The resource name of the domain category. + // Domain category resource names have the form: + // + // `customers/{customer_id}/domainCategories/{campaign_id}~{category_base64}~{language_code}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DomainCategory" + } + ]; + + // Output only. The campaign this category is recommended for. + optional string campaign = 10 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. Recommended category for the website domain. e.g. if you have a website + // about electronics, the categories could be "cameras", "televisions", etc. + optional string category = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The language code specifying the language of the website. e.g. "en" for + // English. The language can be specified in the DynamicSearchAdsSetting + // required for dynamic search ads. This is the language of the pages from + // your website that you want Google Ads to find, create ads for, + // and match searches with. + optional string language_code = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The domain for the website. The domain can be specified in the + // DynamicSearchAdsSetting required for dynamic search ads. + optional string domain = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Fraction of pages on your site that this category matches. + optional double coverage_fraction = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The position of this category in the set of categories. Lower numbers + // indicate a better match for the domain. null indicates not recommended. + optional int64 category_rank = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Indicates whether this category has sub-categories. + optional bool has_children = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended cost per click for the category. + optional int64 recommended_cpc_bid_micros = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/dynamic_search_ads_search_term_view.proto b/google/ads/googleads/v8/resources/dynamic_search_ads_search_term_view.proto new file mode 100644 index 000000000..85b0c1997 --- /dev/null +++ b/google/ads/googleads/v8/resources/dynamic_search_ads_search_term_view.proto @@ -0,0 +1,86 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DynamicSearchAdsSearchTermViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Dynamic Search Ads Search Term View resource. + +// A dynamic search ads search term view. +message DynamicSearchAdsSearchTermView { + option (google.api.resource) = { + type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" + pattern: "customers/{customer_id}/dynamicSearchAdsSearchTermViews/{ad_group_id}~{search_term_fingerprint}~{headline_fingerprint}~{landing_page_fingerprint}~{page_url_fingerprint}" + }; + + // Output only. The resource name of the dynamic search ads search term view. + // Dynamic search ads search term view resource names have the form: + // + // `customers/{customer_id}/dynamicSearchAdsSearchTermViews/{ad_group_id}~{search_term_fingerprint}~{headline_fingerprint}~{landing_page_fingerprint}~{page_url_fingerprint}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" + } + ]; + + // Output only. Search term + // + // This field is read-only. + optional string search_term = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The dynamically generated headline of the Dynamic Search Ad. + // + // This field is read-only. + optional string headline = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The dynamically selected landing page URL of the impression. + // + // This field is read-only. + optional string landing_page = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The URL of page feed item served for the impression. + // + // This field is read-only. + optional string page_url = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. True if query matches a negative keyword. + // + // This field is read-only. + optional bool has_negative_keyword = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. True if query is added to targeted keywords. + // + // This field is read-only. + optional bool has_matching_keyword = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. True if query matches a negative url. + // + // This field is read-only. + optional bool has_negative_url = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/expanded_landing_page_view.proto b/google/ads/googleads/v8/resources/expanded_landing_page_view.proto new file mode 100644 index 000000000..2a6c7fb80 --- /dev/null +++ b/google/ads/googleads/v8/resources/expanded_landing_page_view.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ExpandedLandingPageViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the expanded landing page view resource. + +// A landing page view with metrics aggregated at the expanded final URL +// level. +message ExpandedLandingPageView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ExpandedLandingPageView" + pattern: "customers/{customer_id}/expandedLandingPageViews/{expanded_final_url_fingerprint}" + }; + + // Output only. The resource name of the expanded landing page view. + // Expanded landing page view resource names have the form: + // + // `customers/{customer_id}/expandedLandingPageViews/{expanded_final_url_fingerprint}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ExpandedLandingPageView" + } + ]; + + // Output only. The final URL that clicks are directed to. + optional string expanded_final_url = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/extension_feed_item.proto b/google/ads/googleads/v8/resources/extension_feed_item.proto new file mode 100644 index 000000000..588574f8a --- /dev/null +++ b/google/ads/googleads/v8/resources/extension_feed_item.proto @@ -0,0 +1,151 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/ads/googleads/v8/common/extensions.proto"; +import "google/ads/googleads/v8/enums/extension_type.proto"; +import "google/ads/googleads/v8/enums/feed_item_status.proto"; +import "google/ads/googleads/v8/enums/feed_item_target_device.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionFeedItemProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ExtensionFeedItem resource. + +// An extension feed item. +message ExtensionFeedItem { + option (google.api.resource) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + pattern: "customers/{customer_id}/extensionFeedItems/{feed_item_id}" + }; + + // Immutable. The resource name of the extension feed item. + // Extension feed item resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + } + ]; + + // Output only. The ID of this feed item. Read-only. + optional int64 id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The extension type of the extension feed item. + // This field is read-only. + google.ads.googleads.v8.enums.ExtensionTypeEnum.ExtensionType extension_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Start time in which this feed item is effective and can begin serving. The + // time is in the customer's time zone. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string start_date_time = 26; + + // End time in which this feed item is no longer effective and will stop + // serving. The time is in the customer's time zone. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string end_date_time = 27; + + // List of non-overlapping schedules specifying all time intervals + // for which the feed item may serve. There can be a maximum of 6 schedules + // per day. + repeated google.ads.googleads.v8.common.AdScheduleInfo ad_schedules = 16; + + // The targeted device. + google.ads.googleads.v8.enums.FeedItemTargetDeviceEnum.FeedItemTargetDevice device = 17; + + // The targeted geo target constant. + optional string targeted_geo_target_constant = 30 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + }]; + + // The targeted keyword. + google.ads.googleads.v8.common.KeywordInfo targeted_keyword = 22; + + // Output only. Status of the feed item. + // This field is read-only. + google.ads.googleads.v8.enums.FeedItemStatusEnum.FeedItemStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Extension type. + oneof extension { + // Sitelink extension. + google.ads.googleads.v8.common.SitelinkFeedItem sitelink_feed_item = 2; + + // Structured snippet extension. + google.ads.googleads.v8.common.StructuredSnippetFeedItem structured_snippet_feed_item = 3; + + // App extension. + google.ads.googleads.v8.common.AppFeedItem app_feed_item = 7; + + // Call extension. + google.ads.googleads.v8.common.CallFeedItem call_feed_item = 8; + + // Callout extension. + google.ads.googleads.v8.common.CalloutFeedItem callout_feed_item = 9; + + // Text message extension. + google.ads.googleads.v8.common.TextMessageFeedItem text_message_feed_item = 10; + + // Price extension. + google.ads.googleads.v8.common.PriceFeedItem price_feed_item = 11; + + // Promotion extension. + google.ads.googleads.v8.common.PromotionFeedItem promotion_feed_item = 12; + + // Output only. Location extension. Locations are synced from a Business Profile into a + // feed. This field is read-only. + google.ads.googleads.v8.common.LocationFeedItem location_feed_item = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Affiliate location extension. Feed locations are populated by Google Ads + // based on a chain ID. + // This field is read-only. + google.ads.googleads.v8.common.AffiliateLocationFeedItem affiliate_location_feed_item = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Hotel Callout extension. + google.ads.googleads.v8.common.HotelCalloutFeedItem hotel_callout_feed_item = 23; + + // Immutable. Advertiser provided image extension. + google.ads.googleads.v8.common.ImageFeedItem image_feed_item = 31 [(google.api.field_behavior) = IMMUTABLE]; + } + + // Targeting at either the campaign or ad group level. Feed items that target + // a campaign or ad group will only serve with that resource. + oneof serving_resource_targeting { + // The targeted campaign. + string targeted_campaign = 28 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + }]; + + // The targeted ad group. + string targeted_ad_group = 29 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + }]; + } +} diff --git a/google/ads/googleads/v8/resources/feed.proto b/google/ads/googleads/v8/resources/feed.proto new file mode 100644 index 000000000..58bf95160 --- /dev/null +++ b/google/ads/googleads/v8/resources/feed.proto @@ -0,0 +1,190 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/affiliate_location_feed_relationship_type.proto"; +import "google/ads/googleads/v8/enums/feed_attribute_type.proto"; +import "google/ads/googleads/v8/enums/feed_origin.proto"; +import "google/ads/googleads/v8/enums/feed_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Feed resource. + +// A feed. +message Feed { + option (google.api.resource) = { + type: "googleads.googleapis.com/Feed" + pattern: "customers/{customer_id}/feeds/{feed_id}" + }; + + // Data used to configure a location feed populated from Business Profile. + message PlacesLocationFeedData { + // Data used for authorization using OAuth. + message OAuthInfo { + // The HTTP method used to obtain authorization. + optional string http_method = 4; + + // The HTTP request URL used to obtain authorization. + optional string http_request_url = 5; + + // The HTTP authorization header used to obtain authorization. + optional string http_authorization_header = 6; + } + + // Immutable. Required authentication token (from OAuth API) for the email. + // This field can only be specified in a create request. All its subfields + // are not selectable. + OAuthInfo oauth_info = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // Email address of a Business Profile or email address of a + // manager of the Business Profile. Required. + optional string email_address = 7; + + // Plus page ID of the managed business whose locations should be used. If + // this field is not set, then all businesses accessible by the user + // (specified by email_address) are used. + // This field is mutate-only and is not selectable. + string business_account_id = 8; + + // Used to filter Business Profile listings by business name. If + // business_name_filter is set, only listings with a matching business name + // are candidates to be sync'd into FeedItems. + optional string business_name_filter = 9; + + // Used to filter Business Profile listings by categories. If entries + // exist in category_filters, only listings that belong to any of the + // categories are candidates to be sync'd into FeedItems. If no entries + // exist in category_filters, then all listings are candidates for syncing. + repeated string category_filters = 11; + + // Used to filter Business Profile listings by labels. If entries exist in + // label_filters, only listings that has any of the labels set are + // candidates to be synchronized into FeedItems. If no entries exist in + // label_filters, then all listings are candidates for syncing. + repeated string label_filters = 12; + } + + // Data used to configure an affiliate location feed populated with the + // specified chains. + message AffiliateLocationFeedData { + // The list of chains that the affiliate location feed will sync the + // locations from. + repeated int64 chain_ids = 3; + + // The relationship the chains have with the advertiser. + google.ads.googleads.v8.enums.AffiliateLocationFeedRelationshipTypeEnum.AffiliateLocationFeedRelationshipType relationship_type = 2; + } + + // Immutable. The resource name of the feed. + // Feed resource names have the form: + // + // `customers/{customer_id}/feeds/{feed_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Output only. The ID of the feed. + // This field is read-only. + optional int64 id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Name of the feed. Required. + optional string name = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // The Feed's attributes. Required on CREATE, unless + // system_feed_generation_data is provided, in which case Google Ads will + // update the feed with the correct attributes. + // Disallowed on UPDATE. Use attribute_operations to add new attributes. + repeated FeedAttribute attributes = 4; + + // The list of operations changing the feed attributes. Attributes can only + // be added, not removed. + repeated FeedAttributeOperation attribute_operations = 9; + + // Immutable. Specifies who manages the FeedAttributes for the Feed. + google.ads.googleads.v8.enums.FeedOriginEnum.FeedOrigin origin = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Status of the feed. + // This field is read-only. + google.ads.googleads.v8.enums.FeedStatusEnum.FeedStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The system data for the Feed. This data specifies information for + // generating the feed items of the system generated feed. + oneof system_feed_generation_data { + // Data used to configure a location feed populated from Business Profile. + PlacesLocationFeedData places_location_feed_data = 6; + + // Data used to configure an affiliate location feed populated with + // the specified chains. + AffiliateLocationFeedData affiliate_location_feed_data = 7; + } +} + +// FeedAttributes define the types of data expected to be present in a Feed. A +// single FeedAttribute specifies the expected type of the FeedItemAttributes +// with the same FeedAttributeId. Optionally, a FeedAttribute can be marked as +// being part of a FeedItem's unique key. +message FeedAttribute { + // ID of the attribute. + optional int64 id = 5; + + // The name of the attribute. Required. + optional string name = 6; + + // Data type for feed attribute. Required. + google.ads.googleads.v8.enums.FeedAttributeTypeEnum.FeedAttributeType type = 3; + + // Indicates that data corresponding to this attribute is part of a + // FeedItem's unique key. It defaults to false if it is unspecified. Note + // that a unique key is not required in a Feed's schema, in which case the + // FeedItems must be referenced by their feed_item_id. + optional bool is_part_of_key = 7; +} + +// Operation to be performed on a feed attribute list in a mutate. +message FeedAttributeOperation { + // The operator. + enum Operator { + // Unspecified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Add the attribute to the existing attributes. + ADD = 2; + } + + // Output only. Type of list operation to perform. + Operator operator = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The feed attribute being added to the list. + FeedAttribute value = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/feed_item.proto b/google/ads/googleads/v8/resources/feed_item.proto new file mode 100644 index 000000000..756910af4 --- /dev/null +++ b/google/ads/googleads/v8/resources/feed_item.proto @@ -0,0 +1,214 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/custom_parameter.proto"; +import "google/ads/googleads/v8/common/feed_common.proto"; +import "google/ads/googleads/v8/common/policy.proto"; +import "google/ads/googleads/v8/enums/feed_item_quality_approval_status.proto"; +import "google/ads/googleads/v8/enums/feed_item_quality_disapproval_reason.proto"; +import "google/ads/googleads/v8/enums/feed_item_status.proto"; +import "google/ads/googleads/v8/enums/feed_item_validation_status.proto"; +import "google/ads/googleads/v8/enums/geo_targeting_restriction.proto"; +import "google/ads/googleads/v8/enums/placeholder_type.proto"; +import "google/ads/googleads/v8/enums/policy_approval_status.proto"; +import "google/ads/googleads/v8/enums/policy_review_status.proto"; +import "google/ads/googleads/v8/errors/feed_item_validation_error.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the FeedItem resource. + +// A feed item. +message FeedItem { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedItem" + pattern: "customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}" + }; + + // Immutable. The resource name of the feed item. + // Feed item resource names have the form: + // + // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; + + // Immutable. The feed to which this feed item belongs. + optional string feed = 11 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Output only. The ID of this feed item. + optional int64 id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Start time in which this feed item is effective and can begin serving. The + // time is in the customer's time zone. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string start_date_time = 13; + + // End time in which this feed item is no longer effective and will stop + // serving. The time is in the customer's time zone. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string end_date_time = 14; + + // The feed item's attribute values. + repeated FeedItemAttributeValue attribute_values = 6; + + // Geo targeting restriction specifies the type of location that can be used + // for targeting. + google.ads.googleads.v8.enums.GeoTargetingRestrictionEnum.GeoTargetingRestriction geo_targeting_restriction = 7; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v8.common.CustomParameter url_custom_parameters = 8; + + // Output only. Status of the feed item. + // This field is read-only. + google.ads.googleads.v8.enums.FeedItemStatusEnum.FeedItemStatus status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. List of info about a feed item's validation and approval state for active + // feed mappings. There will be an entry in the list for each type of feed + // mapping associated with the feed, e.g. a feed with a sitelink and a call + // feed mapping would cause every feed item associated with that feed to have + // an entry in this list for both sitelink and call. + // This field is read-only. + repeated FeedItemPlaceholderPolicyInfo policy_infos = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// A feed item attribute value. +message FeedItemAttributeValue { + // Id of the feed attribute for which the value is associated with. + optional int64 feed_attribute_id = 11; + + // Int64 value. Should be set if feed_attribute_id refers to a feed attribute + // of type INT64. + optional int64 integer_value = 12; + + // Bool value. Should be set if feed_attribute_id refers to a feed attribute + // of type BOOLEAN. + optional bool boolean_value = 13; + + // String value. Should be set if feed_attribute_id refers to a feed attribute + // of type STRING, URL or DATE_TIME. + // For STRING the maximum length is 1500 characters. For URL the maximum + // length is 2076 characters. For DATE_TIME the string must be in the format + // "YYYYMMDD HHMMSS". + optional string string_value = 14; + + // Double value. Should be set if feed_attribute_id refers to a feed attribute + // of type DOUBLE. + optional double double_value = 15; + + // Price value. Should be set if feed_attribute_id refers to a feed attribute + // of type PRICE. + google.ads.googleads.v8.common.Money price_value = 6; + + // Repeated int64 value. Should be set if feed_attribute_id refers to a feed + // attribute of type INT64_LIST. + repeated int64 integer_values = 16; + + // Repeated bool value. Should be set if feed_attribute_id refers to a feed + // attribute of type BOOLEAN_LIST. + repeated bool boolean_values = 17; + + // Repeated string value. Should be set if feed_attribute_id refers to a feed + // attribute of type STRING_LIST, URL_LIST or DATE_TIME_LIST. + // For STRING_LIST and URL_LIST the total size of the list in bytes may not + // exceed 3000. For DATE_TIME_LIST the number of elements may not exceed 200. + // + // For STRING_LIST the maximum length of each string element is 1500 + // characters. For URL_LIST the maximum length is 2076 characters. For + // DATE_TIME the format of the string must be the same as start and end time + // for the feed item. + repeated string string_values = 18; + + // Repeated double value. Should be set if feed_attribute_id refers to a feed + // attribute of type DOUBLE_LIST. + repeated double double_values = 19; +} + +// Policy, validation, and quality approval info for a feed item for the +// specified placeholder type. +message FeedItemPlaceholderPolicyInfo { + // Output only. The placeholder type. + google.ads.googleads.v8.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type_enum = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The FeedMapping that contains the placeholder type. + optional string feed_mapping_resource_name = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Where the placeholder type is in the review process. + google.ads.googleads.v8.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The overall approval status of the placeholder type, calculated based on + // the status of its individual policy topic entries. + google.ads.googleads.v8.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The list of policy findings for the placeholder type. + repeated google.ads.googleads.v8.common.PolicyTopicEntry policy_topic_entries = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The validation status of the palceholder type. + google.ads.googleads.v8.enums.FeedItemValidationStatusEnum.FeedItemValidationStatus validation_status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. List of placeholder type validation errors. + repeated FeedItemValidationError validation_errors = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Placeholder type quality evaluation approval status. + google.ads.googleads.v8.enums.FeedItemQualityApprovalStatusEnum.FeedItemQualityApprovalStatus quality_approval_status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. List of placeholder type quality evaluation disapproval reasons. + repeated google.ads.googleads.v8.enums.FeedItemQualityDisapprovalReasonEnum.FeedItemQualityDisapprovalReason quality_disapproval_reasons = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Stores a validation error and the set of offending feed attributes which +// together are responsible for causing a feed item validation error. +message FeedItemValidationError { + // Output only. Error code indicating what validation error was triggered. The description + // of the error can be found in the 'description' field. + google.ads.googleads.v8.errors.FeedItemValidationErrorEnum.FeedItemValidationError validation_error = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The description of the validation error. + optional string description = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set of feed attributes in the feed item flagged during validation. If + // empty, no specific feed attributes can be associated with the error + // (e.g. error across the entire feed item). + repeated int64 feed_attribute_ids = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Any extra information related to this error which is not captured by + // validation_error and feed_attribute_id (e.g. placeholder field IDs when + // feed_attribute_id is not mapped). Note that extra_info is not localized. + optional string extra_info = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/feed_item_set.proto b/google/ads/googleads/v8/resources/feed_item_set.proto new file mode 100644 index 000000000..af4e6501c --- /dev/null +++ b/google/ads/googleads/v8/resources/feed_item_set.proto @@ -0,0 +1,84 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/feed_item_set_filter_type_infos.proto"; +import "google/ads/googleads/v8/enums/feed_item_set_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Represents a set of feed items. The set can be used and shared among certain +// feed item features. For instance, the set can be referenced within the +// matching functions of CustomerFeed, CampaignFeed, and AdGroupFeed. +message FeedItemSet { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedItemSet" + pattern: "customers/{customer_id}/feedItemSets/{feed_id}~{feed_item_set_id}" + }; + + // Immutable. The resource name of the feed item set. + // Feed item set resource names have the form: + // `customers/{customer_id}/feedItemSets/{feed_id}~{feed_item_set_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemSet" + } + ]; + + // Immutable. The resource name of the feed containing the feed items in the set. + // Immutable. Required. + string feed = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Output only. ID of the set. + int64 feed_item_set_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Name of the set. Must be unique within the account. + string display_name = 4; + + // Output only. Status of the feed item set. + // This field is read-only. + google.ads.googleads.v8.enums.FeedItemSetStatusEnum.FeedItemSetStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Represents a filter on locations in a feed item set. + // Only applicable if the parent Feed of the FeedItemSet is a LOCATION feed. + oneof dynamic_set_filter { + // Filter for dynamic location set. + // It is only used for sets of locations. + google.ads.googleads.v8.common.DynamicLocationSetFilter dynamic_location_set_filter = 5; + + // Filter for dynamic affiliate location set. + // This field doesn't apply generally to feed item sets. It is only used for + // sets of affiliate locations. + google.ads.googleads.v8.common.DynamicAffiliateLocationSetFilter dynamic_affiliate_location_set_filter = 6; + } +} diff --git a/google/ads/googleads/v8/resources/feed_item_set_link.proto b/google/ads/googleads/v8/resources/feed_item_set_link.proto new file mode 100644 index 000000000..623fb1405 --- /dev/null +++ b/google/ads/googleads/v8/resources/feed_item_set_link.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetLinkProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the FeedItemSetLink resource. + +// Represents a link between a FeedItem and a FeedItemSet. +message FeedItemSetLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedItemSetLink" + pattern: "customers/{customer_id}/feedItemSetLinks/{feed_id}~{feed_item_set_id}~{feed_item_id}" + }; + + // Immutable. The resource name of the feed item set link. + // Feed item set link resource names have the form: + // `customers/{customer_id}/feedItemSetLinks/{feed_id}~{feed_item_set_id}~{feed_item_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemSetLink" + } + ]; + + // Immutable. The linked FeedItem. + string feed_item = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; + + // Immutable. The linked FeedItemSet. + string feed_item_set = 3 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemSet" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/feed_item_target.proto b/google/ads/googleads/v8/resources/feed_item_target.proto new file mode 100644 index 000000000..f76960fdb --- /dev/null +++ b/google/ads/googleads/v8/resources/feed_item_target.proto @@ -0,0 +1,108 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/ads/googleads/v8/enums/feed_item_target_device.proto"; +import "google/ads/googleads/v8/enums/feed_item_target_status.proto"; +import "google/ads/googleads/v8/enums/feed_item_target_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the FeedItemTarget resource. + +// A feed item target. +message FeedItemTarget { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedItemTarget" + pattern: "customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}" + }; + + // Immutable. The resource name of the feed item target. + // Feed item target resource names have the form: + // `customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemTarget" + } + ]; + + // Immutable. The feed item to which this feed item target belongs. + optional string feed_item = 12 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; + + // Output only. The target type of this feed item target. This field is read-only. + google.ads.googleads.v8.enums.FeedItemTargetTypeEnum.FeedItemTargetType feed_item_target_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ID of the targeted resource. This field is read-only. + optional int64 feed_item_target_id = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of the feed item target. + // This field is read-only. + google.ads.googleads.v8.enums.FeedItemTargetStatusEnum.FeedItemTargetStatus status = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The targeted resource. + oneof target { + // Immutable. The targeted campaign. + string campaign = 14 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Immutable. The targeted ad group. + string ad_group = 15 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Immutable. The targeted keyword. + google.ads.googleads.v8.common.KeywordInfo keyword = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The targeted geo target constant resource name. + string geo_target_constant = 16 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + } + ]; + + // Immutable. The targeted device. + google.ads.googleads.v8.enums.FeedItemTargetDeviceEnum.FeedItemTargetDevice device = 9 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The targeted schedule. + google.ads.googleads.v8.common.AdScheduleInfo ad_schedule = 10 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v8/resources/feed_mapping.proto b/google/ads/googleads/v8/resources/feed_mapping.proto new file mode 100644 index 000000000..8c02a820f --- /dev/null +++ b/google/ads/googleads/v8/resources/feed_mapping.proto @@ -0,0 +1,189 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/ad_customizer_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/affiliate_location_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/app_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/call_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/callout_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/custom_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/dsa_page_feed_criterion_field.proto"; +import "google/ads/googleads/v8/enums/education_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/feed_mapping_criterion_type.proto"; +import "google/ads/googleads/v8/enums/feed_mapping_status.proto"; +import "google/ads/googleads/v8/enums/flight_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/hotel_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/image_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/job_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/local_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/location_extension_targeting_criterion_field.proto"; +import "google/ads/googleads/v8/enums/location_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/message_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/placeholder_type.proto"; +import "google/ads/googleads/v8/enums/price_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/promotion_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/real_estate_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/sitelink_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/structured_snippet_placeholder_field.proto"; +import "google/ads/googleads/v8/enums/travel_placeholder_field.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedMappingProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the FeedMapping resource. + +// A feed mapping. +message FeedMapping { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedMapping" + pattern: "customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}" + }; + + // Immutable. The resource name of the feed mapping. + // Feed mapping resource names have the form: + // + // `customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedMapping" + } + ]; + + // Immutable. The feed of this feed mapping. + optional string feed = 7 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Immutable. Feed attributes to field mappings. These mappings are a one-to-many + // relationship meaning that 1 feed attribute can be used to populate + // multiple placeholder fields, but 1 placeholder field can only draw + // data from 1 feed attribute. Ad Customizer is an exception, 1 placeholder + // field can be mapped to multiple feed attributes. Required. + repeated AttributeFieldMapping attribute_field_mappings = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Status of the feed mapping. + // This field is read-only. + google.ads.googleads.v8.enums.FeedMappingStatusEnum.FeedMappingStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Feed mapping target. Can be either a placeholder or a criterion. For a + // given feed, the active FeedMappings must have unique targets. Required. + oneof target { + // Immutable. The placeholder type of this mapping (i.e., if the mapping maps feed + // attributes to placeholder fields). + google.ads.googleads.v8.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The criterion type of this mapping (i.e., if the mapping maps feed + // attributes to criterion fields). + google.ads.googleads.v8.enums.FeedMappingCriterionTypeEnum.FeedMappingCriterionType criterion_type = 4 [(google.api.field_behavior) = IMMUTABLE]; + } +} + +// Maps from feed attribute id to a placeholder or criterion field id. +message AttributeFieldMapping { + // Immutable. Feed attribute from which to map. + optional int64 feed_attribute_id = 24 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The placeholder field ID. If a placeholder field enum is not published in + // the current API version, then this field will be populated and the field + // oneof will be empty. + // This field is read-only. + optional int64 field_id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Placeholder or criterion field to be populated using data from + // the above feed attribute. Required. + oneof field { + // Immutable. Sitelink Placeholder Fields. + google.ads.googleads.v8.enums.SitelinkPlaceholderFieldEnum.SitelinkPlaceholderField sitelink_field = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Call Placeholder Fields. + google.ads.googleads.v8.enums.CallPlaceholderFieldEnum.CallPlaceholderField call_field = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. App Placeholder Fields. + google.ads.googleads.v8.enums.AppPlaceholderFieldEnum.AppPlaceholderField app_field = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Location Placeholder Fields. This field is read-only. + google.ads.googleads.v8.enums.LocationPlaceholderFieldEnum.LocationPlaceholderField location_field = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Affiliate Location Placeholder Fields. This field is read-only. + google.ads.googleads.v8.enums.AffiliateLocationPlaceholderFieldEnum.AffiliateLocationPlaceholderField affiliate_location_field = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Callout Placeholder Fields. + google.ads.googleads.v8.enums.CalloutPlaceholderFieldEnum.CalloutPlaceholderField callout_field = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Structured Snippet Placeholder Fields. + google.ads.googleads.v8.enums.StructuredSnippetPlaceholderFieldEnum.StructuredSnippetPlaceholderField structured_snippet_field = 9 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Message Placeholder Fields. + google.ads.googleads.v8.enums.MessagePlaceholderFieldEnum.MessagePlaceholderField message_field = 10 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Price Placeholder Fields. + google.ads.googleads.v8.enums.PricePlaceholderFieldEnum.PricePlaceholderField price_field = 11 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Promotion Placeholder Fields. + google.ads.googleads.v8.enums.PromotionPlaceholderFieldEnum.PromotionPlaceholderField promotion_field = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Ad Customizer Placeholder Fields + google.ads.googleads.v8.enums.AdCustomizerPlaceholderFieldEnum.AdCustomizerPlaceholderField ad_customizer_field = 13 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Dynamic Search Ad Page Feed Fields. + google.ads.googleads.v8.enums.DsaPageFeedCriterionFieldEnum.DsaPageFeedCriterionField dsa_page_feed_field = 14 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Location Target Fields. + google.ads.googleads.v8.enums.LocationExtensionTargetingCriterionFieldEnum.LocationExtensionTargetingCriterionField location_extension_targeting_field = 15 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Education Placeholder Fields + google.ads.googleads.v8.enums.EducationPlaceholderFieldEnum.EducationPlaceholderField education_field = 16 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Flight Placeholder Fields + google.ads.googleads.v8.enums.FlightPlaceholderFieldEnum.FlightPlaceholderField flight_field = 17 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Placeholder Fields + google.ads.googleads.v8.enums.CustomPlaceholderFieldEnum.CustomPlaceholderField custom_field = 18 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Hotel Placeholder Fields + google.ads.googleads.v8.enums.HotelPlaceholderFieldEnum.HotelPlaceholderField hotel_field = 19 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Real Estate Placeholder Fields + google.ads.googleads.v8.enums.RealEstatePlaceholderFieldEnum.RealEstatePlaceholderField real_estate_field = 20 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Travel Placeholder Fields + google.ads.googleads.v8.enums.TravelPlaceholderFieldEnum.TravelPlaceholderField travel_field = 21 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Local Placeholder Fields + google.ads.googleads.v8.enums.LocalPlaceholderFieldEnum.LocalPlaceholderField local_field = 22 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Job Placeholder Fields + google.ads.googleads.v8.enums.JobPlaceholderFieldEnum.JobPlaceholderField job_field = 23 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Image Placeholder Fields + google.ads.googleads.v8.enums.ImagePlaceholderFieldEnum.ImagePlaceholderField image_field = 26 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v8/resources/feed_placeholder_view.proto b/google/ads/googleads/v8/resources/feed_placeholder_view.proto new file mode 100644 index 000000000..46554ebb3 --- /dev/null +++ b/google/ads/googleads/v8/resources/feed_placeholder_view.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/placeholder_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedPlaceholderViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the FeedPlaceholderView resource. + +// A feed placeholder view. +message FeedPlaceholderView { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedPlaceholderView" + pattern: "customers/{customer_id}/feedPlaceholderViews/{placeholder_type}" + }; + + // Output only. The resource name of the feed placeholder view. + // Feed placeholder view resource names have the form: + // + // `customers/{customer_id}/feedPlaceholderViews/{placeholder_type}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedPlaceholderView" + } + ]; + + // Output only. The placeholder type of the feed placeholder view. + google.ads.googleads.v8.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/gender_view.proto b/google/ads/googleads/v8/resources/gender_view.proto new file mode 100644 index 000000000..0672d6f2e --- /dev/null +++ b/google/ads/googleads/v8/resources/gender_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GenderViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the gender view resource. + +// A gender view. +message GenderView { + option (google.api.resource) = { + type: "googleads.googleapis.com/GenderView" + pattern: "customers/{customer_id}/genderViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the gender view. + // Gender view resource names have the form: + // + // `customers/{customer_id}/genderViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GenderView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/geo_target_constant.proto b/google/ads/googleads/v8/resources/geo_target_constant.proto new file mode 100644 index 000000000..23a29d355 --- /dev/null +++ b/google/ads/googleads/v8/resources/geo_target_constant.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/geo_target_constant_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetConstantProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the geo target constant resource. + +// A geo target constant. +message GeoTargetConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/GeoTargetConstant" + pattern: "geoTargetConstants/{criterion_id}" + }; + + // Output only. The resource name of the geo target constant. + // Geo target constant resource names have the form: + // + // `geoTargetConstants/{geo_target_constant_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + } + ]; + + // Output only. The ID of the geo target constant. + optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Geo target constant English name. + optional string name = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ISO-3166-1 alpha-2 country code that is associated with the target. + optional string country_code = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Geo target constant target type. + optional string target_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Geo target constant status. + google.ads.googleads.v8.enums.GeoTargetConstantStatusEnum.GeoTargetConstantStatus status = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The fully qualified English name, consisting of the target's name and that + // of its parent and country. + optional string canonical_name = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the parent geo target constant. + // Geo target constant resource names have the form: + // + // `geoTargetConstants/{parent_geo_target_constant_id}` + optional string parent_geo_target = 9 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/geographic_view.proto b/google/ads/googleads/v8/resources/geographic_view.proto new file mode 100644 index 000000000..cfba5eca2 --- /dev/null +++ b/google/ads/googleads/v8/resources/geographic_view.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/geo_targeting_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GeographicViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the geographic view resource. + +// A geographic view. +// +// Geographic View includes all metrics aggregated at the country level, +// one row per country. It reports metrics at either actual physical location of +// the user or an area of interest. If other segment fields are used, you may +// get more than one row per country. +message GeographicView { + option (google.api.resource) = { + type: "googleads.googleapis.com/GeographicView" + pattern: "customers/{customer_id}/geographicViews/{country_criterion_id}~{location_type}" + }; + + // Output only. The resource name of the geographic view. + // Geographic view resource names have the form: + // + // `customers/{customer_id}/geographicViews/{country_criterion_id}~{location_type}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeographicView" + } + ]; + + // Output only. Type of the geo targeting of the campaign. + google.ads.googleads.v8.enums.GeoTargetingTypeEnum.GeoTargetingType location_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Criterion Id for the country. + optional int64 country_criterion_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/google_ads_field.proto b/google/ads/googleads/v8/resources/google_ads_field.proto new file mode 100644 index 000000000..90cd5f3d8 --- /dev/null +++ b/google/ads/googleads/v8/resources/google_ads_field.proto @@ -0,0 +1,108 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/google_ads_field_category.proto"; +import "google/ads/googleads/v8/enums/google_ads_field_data_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GoogleAdsFieldProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Google Ads Field resource. + +// A field or resource (artifact) used by GoogleAdsService. +message GoogleAdsField { + option (google.api.resource) = { + type: "googleads.googleapis.com/GoogleAdsField" + pattern: "googleAdsFields/{google_ads_field}" + }; + + // Output only. The resource name of the artifact. + // Artifact resource names have the form: + // + // `googleAdsFields/{name}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GoogleAdsField" + } + ]; + + // Output only. The name of the artifact. + optional string name = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The category of the artifact. + google.ads.googleads.v8.enums.GoogleAdsFieldCategoryEnum.GoogleAdsFieldCategory category = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the artifact can be used in a SELECT clause in search + // queries. + optional bool selectable = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the artifact can be used in a WHERE clause in search + // queries. + optional bool filterable = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the artifact can be used in a ORDER BY clause in search + // queries. + optional bool sortable = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The names of all resources, segments, and metrics that are selectable with + // the described artifact. + repeated string selectable_with = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The names of all resources that are selectable with the described + // artifact. Fields from these resources do not segment metrics when included + // in search queries. + // + // This field is only set for artifacts whose category is RESOURCE. + repeated string attribute_resources = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. This field lists the names of all metrics that are selectable with the + // described artifact when it is used in the FROM clause. + // It is only set for artifacts whose category is RESOURCE. + repeated string metrics = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. This field lists the names of all artifacts, whether a segment or another + // resource, that segment metrics when included in search queries and when the + // described artifact is used in the FROM clause. It is only set for artifacts + // whose category is RESOURCE. + repeated string segments = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Values the artifact can assume if it is a field of type ENUM. + // + // This field is only set for artifacts of category SEGMENT or ATTRIBUTE. + repeated string enum_values = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. This field determines the operators that can be used with the artifact + // in WHERE clauses. + google.ads.googleads.v8.enums.GoogleAdsFieldDataTypeEnum.GoogleAdsFieldDataType data_type = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The URL of proto describing the artifact's data type. + optional string type_url = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the field artifact is repeated. + optional bool is_repeated = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/group_placement_view.proto b/google/ads/googleads/v8/resources/group_placement_view.proto new file mode 100644 index 000000000..913b451e4 --- /dev/null +++ b/google/ads/googleads/v8/resources/group_placement_view.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/placement_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GroupPlacementViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the group placement view resource. + +// A group placement view. +message GroupPlacementView { + option (google.api.resource) = { + type: "googleads.googleapis.com/GroupPlacementView" + pattern: "customers/{customer_id}/groupPlacementViews/{ad_group_id}~{base64_placement}" + }; + + // Output only. The resource name of the group placement view. + // Group placement view resource names have the form: + // + // `customers/{customer_id}/groupPlacementViews/{ad_group_id}~{base64_placement}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GroupPlacementView" + } + ]; + + // Output only. The automatic placement string at group level, e. g. web domain, mobile + // app ID, or a YouTube channel ID. + optional string placement = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Domain name for websites and YouTube channel name for YouTube channels. + optional string display_name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. URL of the group placement, e.g. domain, link to the mobile application in + // app store, or a YouTube channel URL. + optional string target_url = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Type of the placement, e.g. Website, YouTube Channel, Mobile Application. + google.ads.googleads.v8.enums.PlacementTypeEnum.PlacementType placement_type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/hotel_group_view.proto b/google/ads/googleads/v8/resources/hotel_group_view.proto new file mode 100644 index 000000000..ad3c38cd8 --- /dev/null +++ b/google/ads/googleads/v8/resources/hotel_group_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "HotelGroupViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the hotel group view resource. + +// A hotel group view. +message HotelGroupView { + option (google.api.resource) = { + type: "googleads.googleapis.com/HotelGroupView" + pattern: "customers/{customer_id}/hotelGroupViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the hotel group view. + // Hotel Group view resource names have the form: + // + // `customers/{customer_id}/hotelGroupViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/HotelGroupView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/hotel_performance_view.proto b/google/ads/googleads/v8/resources/hotel_performance_view.proto new file mode 100644 index 000000000..393360b6b --- /dev/null +++ b/google/ads/googleads/v8/resources/hotel_performance_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "HotelPerformanceViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the hotel performance view resource. + +// A hotel performance view. +message HotelPerformanceView { + option (google.api.resource) = { + type: "googleads.googleapis.com/HotelPerformanceView" + pattern: "customers/{customer_id}/hotelPerformanceView" + }; + + // Output only. The resource name of the hotel performance view. + // Hotel performance view resource names have the form: + // + // `customers/{customer_id}/hotelPerformanceView` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/HotelPerformanceView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/income_range_view.proto b/google/ads/googleads/v8/resources/income_range_view.proto new file mode 100644 index 000000000..7e26586e9 --- /dev/null +++ b/google/ads/googleads/v8/resources/income_range_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "IncomeRangeViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the income range view resource. + +// An income range view. +message IncomeRangeView { + option (google.api.resource) = { + type: "googleads.googleapis.com/IncomeRangeView" + pattern: "customers/{customer_id}/incomeRangeViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the income range view. + // Income range view resource names have the form: + // + // `customers/{customer_id}/incomeRangeViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/IncomeRangeView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/invoice.proto b/google/ads/googleads/v8/resources/invoice.proto new file mode 100644 index 000000000..2083ceab2 --- /dev/null +++ b/google/ads/googleads/v8/resources/invoice.proto @@ -0,0 +1,203 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/dates.proto"; +import "google/ads/googleads/v8/enums/invoice_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "InvoiceProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Invoice resource. + +// An invoice. All invoice information is snapshotted to match the PDF invoice. +// For invoices older than the launch of InvoiceService, the snapshotted +// information may not match the PDF invoice. +message Invoice { + option (google.api.resource) = { + type: "googleads.googleapis.com/Invoice" + pattern: "customers/{customer_id}/invoices/{invoice_id}" + }; + + // Represents a summarized account budget billable cost. + message AccountBudgetSummary { + // Output only. The resource name of the customer associated with this account budget. + // This contains the customer ID, which appears on the invoice PDF as + // "Account ID". + // Customer resource names have the form: + // + // `customers/{customer_id}` + optional string customer = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The descriptive name of the account budget’s customer. It appears on the + // invoice PDF as "Account". + optional string customer_descriptive_name = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the account budget associated with this summarized + // billable cost. + // AccountBudget resource names have the form: + // + // `customers/{customer_id}/accountBudgets/{account_budget_id}` + optional string account_budget = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the account budget. It appears on the invoice PDF as "Account + // budget". + optional string account_budget_name = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The purchase order number of the account budget. It appears on the + // invoice PDF as "Purchase order". + optional string purchase_order_number = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The pretax subtotal amount attributable to this budget during the service + // period, in micros. + optional int64 subtotal_amount_micros = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The tax amount attributable to this budget during the service period, in + // micros. + optional int64 tax_amount_micros = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total amount attributable to this budget during the service period, + // in micros. This equals the sum of the account budget subtotal amount and + // the account budget tax amount. + optional int64 total_amount_micros = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The billable activity date range of the account budget, within the + // service date range of this invoice. The end date is inclusive. This can + // be different from the account budget's start and end time. + google.ads.googleads.v8.common.DateRange billable_activity_date_range = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. The resource name of the invoice. Multiple customers can share a given + // invoice, so multiple resource names may point to the same invoice. + // Invoice resource names have the form: + // + // `customers/{customer_id}/invoices/{invoice_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Invoice" + } + ]; + + // Output only. The ID of the invoice. It appears on the invoice PDF as "Invoice number". + optional string id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of invoice. + google.ads.googleads.v8.enums.InvoiceTypeEnum.InvoiceType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of this invoice’s billing setup. + // + // `customers/{customer_id}/billingSetups/{billing_setup_id}` + optional string billing_setup = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A 16 digit ID used to identify the payments account associated with the + // billing setup, e.g. "1234-5678-9012-3456". It appears on the invoice PDF as + // "Billing Account Number". + optional string payments_account_id = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A 12 digit ID used to identify the payments profile associated with the + // billing setup, e.g. "1234-5678-9012". It appears on the invoice PDF as + // "Billing ID". + optional string payments_profile_id = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The issue date in yyyy-mm-dd format. It appears on the invoice PDF as + // either "Issue date" or "Invoice date". + optional string issue_date = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The due date in yyyy-mm-dd format. + optional string due_date = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The service period date range of this invoice. The end date is inclusive. + google.ads.googleads.v8.common.DateRange service_date_range = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The currency code. All costs are returned in this currency. A subset of the + // currency codes derived from the ISO 4217 standard is supported. + optional string currency_code = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The pretax subtotal amount of invoice level adjustments, in micros. + int64 adjustments_subtotal_amount_micros = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The sum of taxes on the invoice level adjustments, in micros. + int64 adjustments_tax_amount_micros = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total amount of invoice level adjustments, in micros. + int64 adjustments_total_amount_micros = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The pretax subtotal amount of invoice level regulatory costs, in micros. + int64 regulatory_costs_subtotal_amount_micros = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The sum of taxes on the invoice level regulatory costs, in micros. + int64 regulatory_costs_tax_amount_micros = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total amount of invoice level regulatory costs, in micros. + int64 regulatory_costs_total_amount_micros = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The pretax subtotal amount, in micros. This equals the + // sum of the AccountBudgetSummary subtotal amounts, + // Invoice.adjustments_subtotal_amount_micros, and + // Invoice.regulatory_costs_subtotal_amount_micros. + // Starting with v6, the Invoice.regulatory_costs_subtotal_amount_micros is no + // longer included. + optional int64 subtotal_amount_micros = 33 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The sum of all taxes on the invoice, in micros. This equals the sum of the + // AccountBudgetSummary tax amounts, plus taxes not associated with a specific + // account budget. + optional int64 tax_amount_micros = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total amount, in micros. This equals the sum of + // Invoice.subtotal_amount_micros and Invoice.tax_amount_micros. + // Starting with v6, Invoice.regulatory_costs_subtotal_amount_micros is + // also added as it is no longer already included in + // Invoice.tax_amount_micros. + optional int64 total_amount_micros = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the original invoice corrected, wrote off, or canceled + // by this invoice, if applicable. If `corrected_invoice` is set, + // `replaced_invoices` will not be set. + // Invoice resource names have the form: + // + // `customers/{customer_id}/invoices/{invoice_id}` + optional string corrected_invoice = 36 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the original invoice(s) being rebilled or replaced by + // this invoice, if applicable. There might be multiple replaced invoices due + // to invoice consolidation. The replaced invoices may not belong to the same + // payments account. If `replaced_invoices` is set, `corrected_invoice` will + // not be set. + // Invoice resource names have the form: + // + // `customers/{customer_id}/invoices/{invoice_id}` + repeated string replaced_invoices = 37 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The URL to a PDF copy of the invoice. Users need to pass in their OAuth + // token to request the PDF with this URL. + optional string pdf_url = 38 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The list of summarized account budget information associated with this + // invoice. + repeated AccountBudgetSummary account_budget_summaries = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/keyword_plan.proto b/google/ads/googleads/v8/resources/keyword_plan.proto new file mode 100644 index 000000000..719ea8950 --- /dev/null +++ b/google/ads/googleads/v8/resources/keyword_plan.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/dates.proto"; +import "google/ads/googleads/v8/enums/keyword_plan_forecast_interval.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the keyword plan resource. + +// A Keyword Planner plan. +// Max number of saved keyword plans: 10000. +// It's possible to remove plans if limit is reached. +message KeywordPlan { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordPlan" + pattern: "customers/{customer_id}/keywordPlans/{keyword_plan_id}" + }; + + // Immutable. The resource name of the Keyword Planner plan. + // KeywordPlan resource names have the form: + // + // `customers/{customer_id}/keywordPlans/{kp_plan_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; + + // Output only. The ID of the keyword plan. + optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the keyword plan. + // + // This field is required and should not be empty when creating new keyword + // plans. + optional string name = 6; + + // The date period used for forecasting the plan. + KeywordPlanForecastPeriod forecast_period = 4; +} + +// The forecasting period associated with the keyword plan. +message KeywordPlanForecastPeriod { + // Required. The date used for forecasting the Plan. + oneof interval { + // A future date range relative to the current date used for forecasting. + google.ads.googleads.v8.enums.KeywordPlanForecastIntervalEnum.KeywordPlanForecastInterval date_interval = 1; + + // The custom date range used for forecasting. + // The start and end dates must be in the future. Otherwise, an error will + // be returned when the forecasting action is performed. + // The start and end dates are inclusive. + google.ads.googleads.v8.common.DateRange date_range = 2; + } +} diff --git a/google/ads/googleads/v8/resources/keyword_plan_ad_group.proto b/google/ads/googleads/v8/resources/keyword_plan_ad_group.proto new file mode 100644 index 000000000..e66661a30 --- /dev/null +++ b/google/ads/googleads/v8/resources/keyword_plan_ad_group.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the keyword plan ad group resource. + +// A Keyword Planner ad group. +// Max number of keyword plan ad groups per plan: 200. +message KeywordPlanAdGroup { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordPlanAdGroup" + pattern: "customers/{customer_id}/keywordPlanAdGroups/{keyword_plan_ad_group_id}" + }; + + // Immutable. The resource name of the Keyword Planner ad group. + // KeywordPlanAdGroup resource names have the form: + // + // `customers/{customer_id}/keywordPlanAdGroups/{kp_ad_group_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroup" + } + ]; + + // The keyword plan campaign to which this ad group belongs. + optional string keyword_plan_campaign = 6 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + }]; + + // Output only. The ID of the keyword plan ad group. + optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the keyword plan ad group. + // + // This field is required and should not be empty when creating keyword plan + // ad group. + optional string name = 8; + + // A default ad group max cpc bid in micros in account currency for all + // biddable keywords under the keyword plan ad group. + // If not set, will inherit from parent campaign. + optional int64 cpc_bid_micros = 9; +} diff --git a/google/ads/googleads/v8/resources/keyword_plan_ad_group_keyword.proto b/google/ads/googleads/v8/resources/keyword_plan_ad_group_keyword.proto new file mode 100644 index 000000000..fa9d55f09 --- /dev/null +++ b/google/ads/googleads/v8/resources/keyword_plan_ad_group_keyword.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/keyword_match_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupKeywordProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the keyword plan ad group keyword resource. + +// A Keyword Plan ad group keyword. +// Max number of keyword plan keywords per plan: 10000. +message KeywordPlanAdGroupKeyword { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" + pattern: "customers/{customer_id}/keywordPlanAdGroupKeywords/{keyword_plan_ad_group_keyword_id}" + }; + + // Immutable. The resource name of the Keyword Plan ad group keyword. + // KeywordPlanAdGroupKeyword resource names have the form: + // + // `customers/{customer_id}/keywordPlanAdGroupKeywords/{kp_ad_group_keyword_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" + } + ]; + + // The Keyword Plan ad group to which this keyword belongs. + optional string keyword_plan_ad_group = 8 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroup" + }]; + + // Output only. The ID of the Keyword Plan keyword. + optional int64 id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The keyword text. + optional string text = 10; + + // The keyword match type. + google.ads.googleads.v8.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; + + // A keyword level max cpc bid in micros (e.g. $1 = 1mm). The currency is the + // same as the account currency code. This will override any CPC bid set at + // the keyword plan ad group level. + // Not applicable for negative keywords. (negative = true) + // This field is Optional. + optional int64 cpc_bid_micros = 11; + + // Immutable. If true, the keyword is negative. + optional bool negative = 12 [(google.api.field_behavior) = IMMUTABLE]; +} diff --git a/google/ads/googleads/v8/resources/keyword_plan_campaign.proto b/google/ads/googleads/v8/resources/keyword_plan_campaign.proto new file mode 100644 index 000000000..855f10bea --- /dev/null +++ b/google/ads/googleads/v8/resources/keyword_plan_campaign.proto @@ -0,0 +1,98 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/keyword_plan_network.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the keyword plan campaign resource. + +// A Keyword Plan campaign. +// Max number of keyword plan campaigns per plan allowed: 1. +message KeywordPlanCampaign { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + pattern: "customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}" + }; + + // Immutable. The resource name of the Keyword Plan campaign. + // KeywordPlanCampaign resource names have the form: + // + // `customers/{customer_id}/keywordPlanCampaigns/{kp_campaign_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + } + ]; + + // The keyword plan this campaign belongs to. + optional string keyword_plan = 9 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + }]; + + // Output only. The ID of the Keyword Plan campaign. + optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the Keyword Plan campaign. + // + // This field is required and should not be empty when creating Keyword Plan + // campaigns. + optional string name = 11; + + // The languages targeted for the Keyword Plan campaign. + // Max allowed: 1. + repeated string language_constants = 12 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/LanguageConstant" + }]; + + // Targeting network. + // + // This field is required and should not be empty when creating Keyword Plan + // campaigns. + google.ads.googleads.v8.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork keyword_plan_network = 6; + + // A default max cpc bid in micros, and in the account currency, for all ad + // groups under the campaign. + // + // This field is required and should not be empty when creating Keyword Plan + // campaigns. + optional int64 cpc_bid_micros = 13; + + // The geo targets. + // Max number allowed: 20. + repeated KeywordPlanGeoTarget geo_targets = 8; +} + +// A geo target. +message KeywordPlanGeoTarget { + // Required. The resource name of the geo target. + optional string geo_target_constant = 2 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + }]; +} diff --git a/google/ads/googleads/v8/resources/keyword_plan_campaign_keyword.proto b/google/ads/googleads/v8/resources/keyword_plan_campaign_keyword.proto new file mode 100644 index 000000000..eb43df8a4 --- /dev/null +++ b/google/ads/googleads/v8/resources/keyword_plan_campaign_keyword.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/keyword_match_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignKeywordProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the keyword plan negative keyword resource. + +// A Keyword Plan Campaign keyword. +// Only negative keywords are supported for Campaign Keyword. +message KeywordPlanCampaignKeyword { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" + pattern: "customers/{customer_id}/keywordPlanCampaignKeywords/{keyword_plan_campaign_keyword_id}" + }; + + // Immutable. The resource name of the Keyword Plan Campaign keyword. + // KeywordPlanCampaignKeyword resource names have the form: + // + // `customers/{customer_id}/keywordPlanCampaignKeywords/{kp_campaign_keyword_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" + } + ]; + + // The Keyword Plan campaign to which this negative keyword belongs. + optional string keyword_plan_campaign = 8 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + }]; + + // Output only. The ID of the Keyword Plan negative keyword. + optional int64 id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The keyword text. + optional string text = 10; + + // The keyword match type. + google.ads.googleads.v8.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; + + // Immutable. If true, the keyword is negative. + // Must be set to true. Only negative campaign keywords are supported. + optional bool negative = 11 [(google.api.field_behavior) = IMMUTABLE]; +} diff --git a/google/ads/googleads/v8/resources/keyword_theme_constant.proto b/google/ads/googleads/v8/resources/keyword_theme_constant.proto new file mode 100644 index 000000000..c8d326cb8 --- /dev/null +++ b/google/ads/googleads/v8/resources/keyword_theme_constant.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordThemeConstantProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Smart Campaign keyword theme constant resource. + +// A Smart Campaign keyword theme constant. +message KeywordThemeConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordThemeConstant" + pattern: "keywordThemeConstants/{express_category_id}~{express_sub_category_id}" + }; + + // Output only. The resource name of the keyword theme constant. + // Keyword theme constant resource names have the form: + // + // `keywordThemeConstants/{keyword_theme_id}~{sub_keyword_theme_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordThemeConstant" + } + ]; + + // Output only. The ISO-3166 Alpha-2 country code of the constant, eg. "US". + // To display and query matching purpose, the keyword theme needs to be + // localized. + optional string country_code = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ISO-639-1 language code with 2 letters of the constant, eg. "en". + // To display and query matching purpose, the keyword theme needs to be + // localized. + optional string language_code = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The display name of the keyword theme or sub keyword theme. + optional string display_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/keyword_view.proto b/google/ads/googleads/v8/resources/keyword_view.proto new file mode 100644 index 000000000..d82073bfb --- /dev/null +++ b/google/ads/googleads/v8/resources/keyword_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the keyword view resource. + +// A keyword view. +message KeywordView { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordView" + pattern: "customers/{customer_id}/keywordViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the keyword view. + // Keyword view resource names have the form: + // + // `customers/{customer_id}/keywordViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/label.proto b/google/ads/googleads/v8/resources/label.proto new file mode 100644 index 000000000..1685f7e76 --- /dev/null +++ b/google/ads/googleads/v8/resources/label.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/text_label.proto"; +import "google/ads/googleads/v8/enums/label_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LabelProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// A label. +message Label { + option (google.api.resource) = { + type: "googleads.googleapis.com/Label" + pattern: "customers/{customer_id}/labels/{label_id}" + }; + + // Immutable. Name of the resource. + // Label resource names have the form: + // `customers/{customer_id}/labels/{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; + + // Output only. Id of the label. Read only. + optional int64 id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the label. + // + // This field is required and should not be empty when creating a new label. + // + // The length of this string should be between 1 and 80, inclusive. + optional string name = 7; + + // Output only. Status of the label. Read only. + google.ads.googleads.v8.enums.LabelStatusEnum.LabelStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // A type of label displaying text on a colored background. + google.ads.googleads.v8.common.TextLabel text_label = 5; +} diff --git a/google/ads/googleads/v8/resources/landing_page_view.proto b/google/ads/googleads/v8/resources/landing_page_view.proto new file mode 100644 index 000000000..fc161cbdc --- /dev/null +++ b/google/ads/googleads/v8/resources/landing_page_view.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LandingPageViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the landing page view resource. + +// A landing page view with metrics aggregated at the unexpanded final URL +// level. +message LandingPageView { + option (google.api.resource) = { + type: "googleads.googleapis.com/LandingPageView" + pattern: "customers/{customer_id}/landingPageViews/{unexpanded_final_url_fingerprint}" + }; + + // Output only. The resource name of the landing page view. + // Landing page view resource names have the form: + // + // `customers/{customer_id}/landingPageViews/{unexpanded_final_url_fingerprint}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LandingPageView" + } + ]; + + // Output only. The advertiser-specified final URL. + optional string unexpanded_final_url = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/language_constant.proto b/google/ads/googleads/v8/resources/language_constant.proto new file mode 100644 index 000000000..311255a07 --- /dev/null +++ b/google/ads/googleads/v8/resources/language_constant.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LanguageConstantProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the language constant resource. + +// A language. +message LanguageConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/LanguageConstant" + pattern: "languageConstants/{criterion_id}" + }; + + // Output only. The resource name of the language constant. + // Language constant resource names have the form: + // + // `languageConstants/{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LanguageConstant" + } + ]; + + // Output only. The ID of the language constant. + optional int64 id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The language code, e.g. "en_US", "en_AU", "es", "fr", etc. + optional string code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The full name of the language in English, e.g., "English (US)", "Spanish", + // etc. + optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the language is targetable. + optional bool targetable = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/life_event.proto b/google/ads/googleads/v8/resources/life_event.proto new file mode 100644 index 000000000..ff87c9e0f --- /dev/null +++ b/google/ads/googleads/v8/resources/life_event.proto @@ -0,0 +1,73 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criterion_category_availability.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LifeEventProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Life Event resource. + +// A life event: a particular interest-based vertical to be targeted to reach +// users when they are in the midst of important life milestones. +message LifeEvent { + option (google.api.resource) = { + type: "googleads.googleapis.com/LifeEvent" + pattern: "customers/{customer_id}/lifeEvents/{life_event_id}" + }; + + // Output only. The resource name of the life event. + // Life event resource names have the form: + // + // `customers/{customer_id}/lifeEvents/{life_event_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LifeEvent" + } + ]; + + // Output only. The ID of the life event. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the life event. E.g.,"Recently Moved" + string name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The parent of the life_event. + string parent = 4 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LifeEvent" + } + ]; + + // Output only. True if the life event is launched to all channels and locales. + bool launched_to_all = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Availability information of the life event. + repeated google.ads.googleads.v8.common.CriterionCategoryAvailability availabilities = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/location_view.proto b/google/ads/googleads/v8/resources/location_view.proto new file mode 100644 index 000000000..970d6c08e --- /dev/null +++ b/google/ads/googleads/v8/resources/location_view.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LocationViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the location view resource. + +// A location view summarizes the performance of campaigns by +// Location criteria. +message LocationView { + option (google.api.resource) = { + type: "googleads.googleapis.com/LocationView" + pattern: "customers/{customer_id}/locationViews/{campaign_id}~{criterion_id}" + }; + + // Output only. The resource name of the location view. + // Location view resource names have the form: + // + // `customers/{customer_id}/locationViews/{campaign_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LocationView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/managed_placement_view.proto b/google/ads/googleads/v8/resources/managed_placement_view.proto new file mode 100644 index 000000000..14d750a87 --- /dev/null +++ b/google/ads/googleads/v8/resources/managed_placement_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ManagedPlacementViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Managed Placement view resource. + +// A managed placement view. +message ManagedPlacementView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ManagedPlacementView" + pattern: "customers/{customer_id}/managedPlacementViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the Managed Placement view. + // Managed placement view resource names have the form: + // + // `customers/{customer_id}/managedPlacementViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ManagedPlacementView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/media_file.proto b/google/ads/googleads/v8/resources/media_file.proto new file mode 100644 index 000000000..329f9de10 --- /dev/null +++ b/google/ads/googleads/v8/resources/media_file.proto @@ -0,0 +1,137 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/media_type.proto"; +import "google/ads/googleads/v8/enums/mime_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MediaFileProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the media file resource. + +// A media file. +message MediaFile { + option (google.api.resource) = { + type: "googleads.googleapis.com/MediaFile" + pattern: "customers/{customer_id}/mediaFiles/{media_file_id}" + }; + + // Immutable. The resource name of the media file. + // Media file resource names have the form: + // + // `customers/{customer_id}/mediaFiles/{media_file_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MediaFile" + } + ]; + + // Output only. The ID of the media file. + optional int64 id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Type of the media file. + google.ads.googleads.v8.enums.MediaTypeEnum.MediaType type = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The mime type of the media file. + google.ads.googleads.v8.enums.MimeTypeEnum.MimeType mime_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The URL of where the original media file was downloaded from (or a file + // name). Only used for media of type AUDIO and IMAGE. + optional string source_url = 13 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The name of the media file. The name can be used by clients to help + // identify previously uploaded media. + optional string name = 14 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The size of the media file in bytes. + optional int64 file_size = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The specific type of the media file. + oneof mediatype { + // Immutable. Encapsulates an Image. + MediaImage image = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A ZIP archive media the content of which contains HTML5 assets. + MediaBundle media_bundle = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Encapsulates an Audio. + MediaAudio audio = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Encapsulates a Video. + MediaVideo video = 11 [(google.api.field_behavior) = IMMUTABLE]; + } +} + +// Encapsulates an Image. +message MediaImage { + // Immutable. Raw image data. + optional bytes data = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The url to the full size version of the image. + optional string full_size_image_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The url to the preview size version of the image. + optional string preview_size_image_url = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Represents a ZIP archive media the content of which contains HTML5 assets. +message MediaBundle { + // Immutable. Raw zipped data. + optional bytes data = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The url to access the uploaded zipped data. + // E.g. https://tpc.googlesyndication.com/simgad/123 + // This field is read-only. + optional string url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Encapsulates an Audio. +message MediaAudio { + // Output only. The duration of the Audio in milliseconds. + optional int64 ad_duration_millis = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Encapsulates a Video. +message MediaVideo { + // Output only. The duration of the Video in milliseconds. + optional int64 ad_duration_millis = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The YouTube video ID (as seen in YouTube URLs). Adding prefix + // "https://www.youtube.com/watch?v=" to this ID will get the YouTube + // streaming URL for this video. + optional string youtube_video_id = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The Advertising Digital Identification code for this video, as defined by + // the American Association of Advertising Agencies, used mainly for + // television commercials. + optional string advertising_id_code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Industry Standard Commercial Identifier code for this video, used + // mainly for television commercials. + optional string isci_code = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/merchant_center_link.proto b/google/ads/googleads/v8/resources/merchant_center_link.proto new file mode 100644 index 000000000..d025ae2c3 --- /dev/null +++ b/google/ads/googleads/v8/resources/merchant_center_link.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/merchant_center_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MerchantCenterLinkProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Merchant Center link resource. + +// A data sharing connection, proposed or in use, +// between a Google Ads Customer and a Merchant Center account. +message MerchantCenterLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/MerchantCenterLink" + pattern: "customers/{customer_id}/merchantCenterLinks/{merchant_center_id}" + }; + + // Immutable. The resource name of the merchant center link. + // Merchant center link resource names have the form: + // + // `customers/{customer_id}/merchantCenterLinks/{merchant_center_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MerchantCenterLink" + } + ]; + + // Output only. The ID of the Merchant Center account. + // This field is readonly. + optional int64 id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the Merchant Center account. + // This field is readonly. + optional string merchant_center_account_name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The status of the link. + google.ads.googleads.v8.enums.MerchantCenterLinkStatusEnum.MerchantCenterLinkStatus status = 5; +} diff --git a/google/ads/googleads/v8/resources/mobile_app_category_constant.proto b/google/ads/googleads/v8/resources/mobile_app_category_constant.proto new file mode 100644 index 000000000..294adc265 --- /dev/null +++ b/google/ads/googleads/v8/resources/mobile_app_category_constant.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MobileAppCategoryConstantProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Mobile App Category Constant resource. + +// A mobile application category constant. +message MobileAppCategoryConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/MobileAppCategoryConstant" + pattern: "mobileAppCategoryConstants/{mobile_app_category_id}" + }; + + // Output only. The resource name of the mobile app category constant. + // Mobile app category constant resource names have the form: + // + // `mobileAppCategoryConstants/{mobile_app_category_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MobileAppCategoryConstant" + } + ]; + + // Output only. The ID of the mobile app category constant. + optional int32 id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Mobile app category name. + optional string name = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/mobile_device_constant.proto b/google/ads/googleads/v8/resources/mobile_device_constant.proto new file mode 100644 index 000000000..6be42d16d --- /dev/null +++ b/google/ads/googleads/v8/resources/mobile_device_constant.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/mobile_device_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MobileDeviceConstantProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the mobile device constant resource. + +// A mobile device constant. +message MobileDeviceConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/MobileDeviceConstant" + pattern: "mobileDeviceConstants/{criterion_id}" + }; + + // Output only. The resource name of the mobile device constant. + // Mobile device constant resource names have the form: + // + // `mobileDeviceConstants/{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MobileDeviceConstant" + } + ]; + + // Output only. The ID of the mobile device constant. + optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the mobile device. + optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The manufacturer of the mobile device. + optional string manufacturer_name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The operating system of the mobile device. + optional string operating_system_name = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of mobile device. + google.ads.googleads.v8.enums.MobileDeviceTypeEnum.MobileDeviceType type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/offline_user_data_job.proto b/google/ads/googleads/v8/resources/offline_user_data_job.proto new file mode 100644 index 000000000..9813b335c --- /dev/null +++ b/google/ads/googleads/v8/resources/offline_user_data_job.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/offline_user_data.proto"; +import "google/ads/googleads/v8/enums/offline_user_data_job_failure_reason.proto"; +import "google/ads/googleads/v8/enums/offline_user_data_job_status.proto"; +import "google/ads/googleads/v8/enums/offline_user_data_job_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the offline user data job resource. + +// A job containing offline user data of store visitors, or user list members +// that will be processed asynchronously. The uploaded data isn't readable and +// the processing results of the job can only be read using +// OfflineUserDataJobService.GetOfflineUserDataJob. +message OfflineUserDataJob { + option (google.api.resource) = { + type: "googleads.googleapis.com/OfflineUserDataJob" + pattern: "customers/{customer_id}/offlineUserDataJobs/{offline_user_data_update_id}" + }; + + // Immutable. The resource name of the offline user data job. + // Offline user data job resource names have the form: + // + // `customers/{customer_id}/offlineUserDataJobs/{offline_user_data_job_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OfflineUserDataJob" + } + ]; + + // Output only. ID of this offline user data job. + optional int64 id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. User specified job ID. + optional int64 external_id = 10 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Type of the job. + google.ads.googleads.v8.enums.OfflineUserDataJobTypeEnum.OfflineUserDataJobType type = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Status of the job. + google.ads.googleads.v8.enums.OfflineUserDataJobStatusEnum.OfflineUserDataJobStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Reason for the processing failure, if status is FAILED. + google.ads.googleads.v8.enums.OfflineUserDataJobFailureReasonEnum.OfflineUserDataJobFailureReason failure_reason = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Metadata of the job. + oneof metadata { + // Immutable. Metadata for data updates to a CRM-based user list. + google.ads.googleads.v8.common.CustomerMatchUserListMetadata customer_match_user_list_metadata = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Metadata for store sales data update. + google.ads.googleads.v8.common.StoreSalesMetadata store_sales_metadata = 8 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v8/resources/operating_system_version_constant.proto b/google/ads/googleads/v8/resources/operating_system_version_constant.proto new file mode 100644 index 000000000..03b652242 --- /dev/null +++ b/google/ads/googleads/v8/resources/operating_system_version_constant.proto @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/operating_system_version_operator_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "OperatingSystemVersionConstantProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the operating system version constant resource. + +// A mobile operating system version or a range of versions, depending on +// `operator_type`. List of available mobile platforms at +// https://developers.google.com/google-ads/api/reference/data/codes-formats#mobile-platforms +message OperatingSystemVersionConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/OperatingSystemVersionConstant" + pattern: "operatingSystemVersionConstants/{criterion_id}" + }; + + // Output only. The resource name of the operating system version constant. + // Operating system version constant resource names have the form: + // + // `operatingSystemVersionConstants/{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OperatingSystemVersionConstant" + } + ]; + + // Output only. The ID of the operating system version. + optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the operating system. + optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The OS Major Version number. + optional int32 os_major_version = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The OS Minor Version number. + optional int32 os_minor_version = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Determines whether this constant represents a single version or a range of + // versions. + google.ads.googleads.v8.enums.OperatingSystemVersionOperatorTypeEnum.OperatingSystemVersionOperatorType operator_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/paid_organic_search_term_view.proto b/google/ads/googleads/v8/resources/paid_organic_search_term_view.proto new file mode 100644 index 000000000..a47bc05ac --- /dev/null +++ b/google/ads/googleads/v8/resources/paid_organic_search_term_view.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "PaidOrganicSearchTermViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the PaidOrganicSearchTermView resource. + +// A paid organic search term view providing a view of search stats across +// ads and organic listings aggregated by search term at the ad group level. +message PaidOrganicSearchTermView { + option (google.api.resource) = { + type: "googleads.googleapis.com/PaidOrganicSearchTermView" + pattern: "customers/{customer_id}/paidOrganicSearchTermViews/{campaign_id}~{ad_group_id}~{base64_search_term}" + }; + + // Output only. The resource name of the search term view. + // Search term view resource names have the form: + // + // `customers/{customer_id}/paidOrganicSearchTermViews/{campaign_id}~ + // {ad_group_id}~{URL-base64 search term}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/PaidOrganicSearchTermView" + } + ]; + + // Output only. The search term. + optional string search_term = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/parental_status_view.proto b/google/ads/googleads/v8/resources/parental_status_view.proto new file mode 100644 index 000000000..9eac45f84 --- /dev/null +++ b/google/ads/googleads/v8/resources/parental_status_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ParentalStatusViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the parental status view resource. + +// A parental status view. +message ParentalStatusView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ParentalStatusView" + pattern: "customers/{customer_id}/parentalStatusViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the parental status view. + // Parental Status view resource names have the form: + // + // `customers/{customer_id}/parentalStatusViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ParentalStatusView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/payments_account.proto b/google/ads/googleads/v8/resources/payments_account.proto new file mode 100644 index 000000000..66c05e4e1 --- /dev/null +++ b/google/ads/googleads/v8/resources/payments_account.proto @@ -0,0 +1,78 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "PaymentsAccountProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the PaymentsAccount resource. + +// A payments account, which can be used to set up billing for an Ads customer. +message PaymentsAccount { + option (google.api.resource) = { + type: "googleads.googleapis.com/PaymentsAccount" + pattern: "customers/{customer_id}/paymentsAccounts/{payments_account_id}" + }; + + // Output only. The resource name of the payments account. + // PaymentsAccount resource names have the form: + // + // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/PaymentsAccount" + } + ]; + + // Output only. A 16 digit ID used to identify a payments account. + optional string payments_account_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the payments account. + optional string name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The currency code of the payments account. + // A subset of the currency codes derived from the ISO 4217 standard is + // supported. + optional string currency_code = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A 12 digit ID used to identify the payments profile associated with the + // payments account. + optional string payments_profile_id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A secondary payments profile ID present in uncommon situations, e.g. + // when a sequential liability agreement has been arranged. + optional string secondary_payments_profile_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Paying manager of this payment account. + optional string paying_manager_customer = 13 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/product_bidding_category_constant.proto b/google/ads/googleads/v8/resources/product_bidding_category_constant.proto new file mode 100644 index 000000000..b36fee9d1 --- /dev/null +++ b/google/ads/googleads/v8/resources/product_bidding_category_constant.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/product_bidding_category_level.proto"; +import "google/ads/googleads/v8/enums/product_bidding_category_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ProductBiddingCategoryConstantProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ProductBiddingCategoryConstant resource. + +// A Product Bidding Category. +message ProductBiddingCategoryConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/ProductBiddingCategoryConstant" + pattern: "productBiddingCategoryConstants/{country_code}~{level}~{id}" + }; + + // Output only. The resource name of the product bidding category. + // Product bidding category resource names have the form: + // + // `productBiddingCategoryConstants/{country_code}~{level}~{id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ProductBiddingCategoryConstant" + } + ]; + + // Output only. ID of the product bidding category. + // + // This ID is equivalent to the google_product_category ID as described in + // this article: https://support.google.com/merchants/answer/6324436. + optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Two-letter upper-case country code of the product bidding category. + optional string country_code = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Resource name of the parent product bidding category. + optional string product_bidding_category_constant_parent = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ProductBiddingCategoryConstant" + } + ]; + + // Output only. Level of the product bidding category. + google.ads.googleads.v8.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of the product bidding category. + google.ads.googleads.v8.enums.ProductBiddingCategoryStatusEnum.ProductBiddingCategoryStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Language code of the product bidding category. + optional string language_code = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Display value of the product bidding category localized according to + // language_code. + optional string localized_name = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/product_group_view.proto b/google/ads/googleads/v8/resources/product_group_view.proto new file mode 100644 index 000000000..734c06765 --- /dev/null +++ b/google/ads/googleads/v8/resources/product_group_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ProductGroupViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ProductGroup View resource. + +// A product group view. +message ProductGroupView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ProductGroupView" + pattern: "customers/{customer_id}/productGroupViews/{adgroup_id}~{criterion_id}" + }; + + // Output only. The resource name of the product group view. + // Product group view resource names have the form: + // + // `customers/{customer_id}/productGroupViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ProductGroupView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/recommendation.proto b/google/ads/googleads/v8/resources/recommendation.proto new file mode 100644 index 000000000..88dde325d --- /dev/null +++ b/google/ads/googleads/v8/resources/recommendation.proto @@ -0,0 +1,350 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/ads/googleads/v8/common/extensions.proto"; +import "google/ads/googleads/v8/enums/keyword_match_type.proto"; +import "google/ads/googleads/v8/enums/recommendation_type.proto"; +import "google/ads/googleads/v8/enums/target_cpa_opt_in_recommendation_goal.proto"; +import "google/ads/googleads/v8/resources/ad.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "RecommendationProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Recommendation resource. + +// A recommendation. +message Recommendation { + option (google.api.resource) = { + type: "googleads.googleapis.com/Recommendation" + pattern: "customers/{customer_id}/recommendations/{recommendation_id}" + }; + + // The impact of making the change as described in the recommendation. + // Some types of recommendations may not have impact information. + message RecommendationImpact { + // Output only. Base metrics at the time the recommendation was generated. + RecommendationMetrics base_metrics = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Estimated metrics if the recommendation is applied. + RecommendationMetrics potential_metrics = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Weekly account performance metrics. For some recommendation types, these + // are averaged over the past 90-day period and hence can be fractional. + message RecommendationMetrics { + // Output only. Number of ad impressions. + optional double impressions = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Number of ad clicks. + optional double clicks = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Cost (in micros) for advertising, in the local currency for the account. + optional int64 cost_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Number of conversions. + optional double conversions = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Number of video views for a video ad campaign. + optional double video_views = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The budget recommendation for budget constrained campaigns. + message CampaignBudgetRecommendation { + // The impact estimates for a given budget amount. + message CampaignBudgetRecommendationOption { + // Output only. The budget amount for this option. + optional int64 budget_amount_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The impact estimate if budget is changed to amount specified in this + // option. + RecommendationImpact impact = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. The current budget amount in micros. + optional int64 current_budget_amount_micros = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended budget amount in micros. + optional int64 recommended_budget_amount_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The budget amounts and associated impact estimates for some values of + // possible budget amounts. + repeated CampaignBudgetRecommendationOption budget_options = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The keyword recommendation. + message KeywordRecommendation { + // Output only. The recommended keyword. + google.ads.googleads.v8.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended CPC (cost-per-click) bid. + optional int64 recommended_cpc_bid_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Search Partners Opt-In recommendation. + message SearchPartnersOptInRecommendation { + + } + + // The text ad recommendation. + message TextAdRecommendation { + // Output only. Recommended ad. + Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Creation date of the recommended ad. + // YYYY-MM-DD format, e.g., 2018-04-17. + optional string creation_date = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Date, if present, is the earliest when the recommendation will be auto + // applied. + // YYYY-MM-DD format, e.g., 2018-04-17. + optional string auto_apply_date = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Target CPA opt-in recommendation. + message TargetCpaOptInRecommendation { + // The Target CPA opt-in option with impact estimate. + message TargetCpaOptInRecommendationOption { + // Output only. The goal achieved by this option. + google.ads.googleads.v8.enums.TargetCpaOptInRecommendationGoalEnum.TargetCpaOptInRecommendationGoal goal = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Average CPA target. + optional int64 target_cpa_micros = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The minimum campaign budget, in local currency for the account, + // required to achieve the target CPA. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + optional int64 required_campaign_budget_amount_micros = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The impact estimate if this option is selected. + RecommendationImpact impact = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. The available goals and corresponding options for Target CPA strategy. + repeated TargetCpaOptInRecommendationOption options = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended average CPA target. See required budget amount and impact + // of using this recommendation in options list. + optional int64 recommended_target_cpa_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Maximize Clicks opt-in recommendation. + message MaximizeClicksOptInRecommendation { + // Output only. The recommended new budget amount. + // Only set if the current budget is too high. + optional int64 recommended_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Callout extension recommendation. + message CalloutExtensionRecommendation { + // Output only. Callout extensions recommended to be added. + repeated google.ads.googleads.v8.common.CalloutFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Call extension recommendation. + message CallExtensionRecommendation { + // Output only. Call extensions recommended to be added. + repeated google.ads.googleads.v8.common.CallFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Maximize Conversions Opt-In recommendation. + message MaximizeConversionsOptInRecommendation { + // Output only. The recommended new budget amount. + optional int64 recommended_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Enhanced Cost-Per-Click Opt-In recommendation. + message EnhancedCpcOptInRecommendation { + + } + + // The Sitelink extension recommendation. + message SitelinkExtensionRecommendation { + // Output only. Sitelink extensions recommended to be added. + repeated google.ads.googleads.v8.common.SitelinkFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Optimize Ad Rotation recommendation. + message OptimizeAdRotationRecommendation { + + } + + // The keyword match type recommendation. + message KeywordMatchTypeRecommendation { + // Output only. The existing keyword where the match type should be more broad. + google.ads.googleads.v8.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended new match type. + google.ads.googleads.v8.enums.KeywordMatchTypeEnum.KeywordMatchType recommended_match_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Target ROAS opt-in recommendation. + message TargetRoasOptInRecommendation { + // Output only. The recommended target ROAS (revenue per unit of spend). + // The value is between 0.01 and 1000.0, inclusive. + optional double recommended_target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The minimum campaign budget, in local currency for the account, + // required to achieve the target ROAS. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + optional int64 required_campaign_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The move unused budget recommendation. + message MoveUnusedBudgetRecommendation { + // Output only. The excess budget's resource_name. + optional string excess_campaign_budget = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommendation for the constrained budget to increase. + CampaignBudgetRecommendation budget_recommendation = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The add responsive search ad recommendation. + message ResponsiveSearchAdRecommendation { + // Output only. Recommended ad. + Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Immutable. The resource name of the recommendation. + // + // `customers/{customer_id}/recommendations/{recommendation_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Recommendation" + } + ]; + + // Output only. The type of recommendation. + google.ads.googleads.v8.enums.RecommendationTypeEnum.RecommendationType type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The impact on account performance as a result of applying the + // recommendation. + RecommendationImpact impact = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The budget targeted by this recommendation. This will be set only when + // the recommendation affects a single campaign budget. + // + // This field will be set for the following recommendation types: + // CAMPAIGN_BUDGET, FORECASTING_CAMPAIGN_BUDGET, MARGINAL_ROI_CAMPAIGN_BUDGET, + // MOVE_UNUSED_BUDGET + optional string campaign_budget = 24 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBudget" + } + ]; + + // Output only. The campaign targeted by this recommendation. This will be set only when + // the recommendation affects a single campaign. + // + // This field will be set for the following recommendation types: + // CALL_EXTENSION, CALLOUT_EXTENSION, ENHANCED_CPC_OPT_IN, KEYWORD, + // KEYWORD_MATCH_TYPE, MAXIMIZE_CLICKS_OPT_IN, MAXIMIZE_CONVERSIONS_OPT_IN, + // OPTIMIZE_AD_ROTATION, RESPONSIVE_SEARCH_AD, SEARCH_PARTNERS_OPT_IN, + // SITELINK_EXTENSION, TARGET_CPA_OPT_IN, TARGET_ROAS_OPT_IN, TEXT_AD + optional string campaign = 25 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The ad group targeted by this recommendation. This will be set only when + // the recommendation affects a single ad group. + // + // This field will be set for the following recommendation types: + // KEYWORD, OPTIMIZE_AD_ROTATION, RESPONSIVE_SEARCH_AD, TEXT_AD + optional string ad_group = 26 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. Whether the recommendation is dismissed or not. + optional bool dismissed = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The details of recommendation. + oneof recommendation { + // Output only. The campaign budget recommendation. + CampaignBudgetRecommendation campaign_budget_recommendation = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The forecasting campaign budget recommendation. + CampaignBudgetRecommendation forecasting_campaign_budget_recommendation = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The keyword recommendation. + KeywordRecommendation keyword_recommendation = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Add expanded text ad recommendation. + TextAdRecommendation text_ad_recommendation = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The TargetCPA opt-in recommendation. + TargetCpaOptInRecommendation target_cpa_opt_in_recommendation = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The MaximizeConversions Opt-In recommendation. + MaximizeConversionsOptInRecommendation maximize_conversions_opt_in_recommendation = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Enhanced Cost-Per-Click Opt-In recommendation. + EnhancedCpcOptInRecommendation enhanced_cpc_opt_in_recommendation = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Search Partners Opt-In recommendation. + SearchPartnersOptInRecommendation search_partners_opt_in_recommendation = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The MaximizeClicks Opt-In recommendation. + MaximizeClicksOptInRecommendation maximize_clicks_opt_in_recommendation = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Optimize Ad Rotation recommendation. + OptimizeAdRotationRecommendation optimize_ad_rotation_recommendation = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Callout extension recommendation. + CalloutExtensionRecommendation callout_extension_recommendation = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Sitelink extension recommendation. + SitelinkExtensionRecommendation sitelink_extension_recommendation = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Call extension recommendation. + CallExtensionRecommendation call_extension_recommendation = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The keyword match type recommendation. + KeywordMatchTypeRecommendation keyword_match_type_recommendation = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The move unused budget recommendation. + MoveUnusedBudgetRecommendation move_unused_budget_recommendation = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Target ROAS opt-in recommendation. + TargetRoasOptInRecommendation target_roas_opt_in_recommendation = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The add responsive search ad recommendation. + ResponsiveSearchAdRecommendation responsive_search_ad_recommendation = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The marginal ROI campaign budget recommendation. + CampaignBudgetRecommendation marginal_roi_campaign_budget_recommendation = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v8/resources/remarketing_action.proto b/google/ads/googleads/v8/resources/remarketing_action.proto new file mode 100644 index 000000000..541b4b683 --- /dev/null +++ b/google/ads/googleads/v8/resources/remarketing_action.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/tag_snippet.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "RemarketingActionProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Remarketing Action resource. + +// A remarketing action. A snippet of JavaScript code that will collect the +// product id and the type of page people visited (product page, shopping cart +// page, purchase page, general site visit) on an advertiser's website. +message RemarketingAction { + option (google.api.resource) = { + type: "googleads.googleapis.com/RemarketingAction" + pattern: "customers/{customer_id}/remarketingActions/{remarketing_action_id}" + }; + + // Immutable. The resource name of the remarketing action. + // Remarketing action resource names have the form: + // + // `customers/{customer_id}/remarketingActions/{remarketing_action_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/RemarketingAction" + } + ]; + + // Output only. Id of the remarketing action. + optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the remarketing action. + // + // This field is required and should not be empty when creating new + // remarketing actions. + optional string name = 6; + + // Output only. The snippets used for tracking remarketing actions. + repeated google.ads.googleads.v8.common.TagSnippet tag_snippets = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/search_term_view.proto b/google/ads/googleads/v8/resources/search_term_view.proto new file mode 100644 index 000000000..0ddf21493 --- /dev/null +++ b/google/ads/googleads/v8/resources/search_term_view.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/search_term_targeting_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SearchTermViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the SearchTermView resource. + +// A search term view with metrics aggregated by search term at the ad group +// level. +message SearchTermView { + option (google.api.resource) = { + type: "googleads.googleapis.com/SearchTermView" + pattern: "customers/{customer_id}/searchTermViews/{campaign_id}~{ad_group_id}~{query}" + }; + + // Output only. The resource name of the search term view. + // Search term view resource names have the form: + // + // `customers/{customer_id}/searchTermViews/{campaign_id}~{ad_group_id}~{URL-base64_search_term}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SearchTermView" + } + ]; + + // Output only. The search term. + optional string search_term = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ad group the search term served in. + optional string ad_group = 6 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. Indicates whether the search term is currently one of your + // targeted or excluded keywords. + google.ads.googleads.v8.enums.SearchTermTargetingStatusEnum.SearchTermTargetingStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/shared_criterion.proto b/google/ads/googleads/v8/resources/shared_criterion.proto new file mode 100644 index 000000000..df9476658 --- /dev/null +++ b/google/ads/googleads/v8/resources/shared_criterion.proto @@ -0,0 +1,92 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/ads/googleads/v8/enums/criterion_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SharedCriterionProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the SharedCriterion resource. + +// A criterion belonging to a shared set. +message SharedCriterion { + option (google.api.resource) = { + type: "googleads.googleapis.com/SharedCriterion" + pattern: "customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}" + }; + + // Immutable. The resource name of the shared criterion. + // Shared set resource names have the form: + // + // `customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedCriterion" + } + ]; + + // Immutable. The shared set to which the shared criterion belongs. + optional string shared_set = 10 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedSet" + } + ]; + + // Output only. The ID of the criterion. + // + // This field is ignored for mutates. + optional int64 criterion_id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the criterion. + google.ads.googleads.v8.enums.CriterionTypeEnum.CriterionType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The criterion. + // + // Exactly one must be set. + oneof criterion { + // Immutable. Keyword. + google.ads.googleads.v8.common.KeywordInfo keyword = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Video. + google.ads.googleads.v8.common.YouTubeVideoInfo youtube_video = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Channel. + google.ads.googleads.v8.common.YouTubeChannelInfo youtube_channel = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Placement. + google.ads.googleads.v8.common.PlacementInfo placement = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile App Category. + google.ads.googleads.v8.common.MobileAppCategoryInfo mobile_app_category = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile application. + google.ads.googleads.v8.common.MobileApplicationInfo mobile_application = 9 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v8/resources/shared_set.proto b/google/ads/googleads/v8/resources/shared_set.proto new file mode 100644 index 000000000..2a5ff7191 --- /dev/null +++ b/google/ads/googleads/v8/resources/shared_set.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/enums/shared_set_status.proto"; +import "google/ads/googleads/v8/enums/shared_set_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SharedSetProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the SharedSet resource. + +// SharedSets are used for sharing criterion exclusions across multiple +// campaigns. +message SharedSet { + option (google.api.resource) = { + type: "googleads.googleapis.com/SharedSet" + pattern: "customers/{customer_id}/sharedSets/{shared_set_id}" + }; + + // Immutable. The resource name of the shared set. + // Shared set resource names have the form: + // + // `customers/{customer_id}/sharedSets/{shared_set_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedSet" + } + ]; + + // Output only. The ID of this shared set. Read only. + optional int64 id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The type of this shared set: each shared set holds only a single kind + // of resource. Required. Immutable. + google.ads.googleads.v8.enums.SharedSetTypeEnum.SharedSetType type = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // The name of this shared set. Required. + // Shared Sets must have names that are unique among active shared sets of + // the same type. + // The length of this string should be between 1 and 255 UTF-8 bytes, + // inclusive. + optional string name = 9; + + // Output only. The status of this shared set. Read only. + google.ads.googleads.v8.enums.SharedSetStatusEnum.SharedSetStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of shared criteria within this shared set. Read only. + optional int64 member_count = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of campaigns associated with this shared set. Read only. + optional int64 reference_count = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/shopping_performance_view.proto b/google/ads/googleads/v8/resources/shopping_performance_view.proto new file mode 100644 index 000000000..9f6c6a450 --- /dev/null +++ b/google/ads/googleads/v8/resources/shopping_performance_view.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ShoppingPerformanceViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the ShoppingPerformanceView resource. + +// Shopping performance view. +// Provides Shopping campaign statistics aggregated at several product dimension +// levels. Product dimension values from Merchant Center such as brand, +// category, custom attributes, product condition and product type will reflect +// the state of each dimension as of the date and time when the corresponding +// event was recorded. +message ShoppingPerformanceView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ShoppingPerformanceView" + pattern: "customers/{customer_id}/shoppingPerformanceView" + }; + + // Output only. The resource name of the Shopping performance view. + // Shopping performance view resource names have the form: + // `customers/{customer_id}/shoppingPerformanceView` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ShoppingPerformanceView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/smart_campaign_search_term_view.proto b/google/ads/googleads/v8/resources/smart_campaign_search_term_view.proto new file mode 100644 index 000000000..b3ade41a6 --- /dev/null +++ b/google/ads/googleads/v8/resources/smart_campaign_search_term_view.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SmartCampaignSearchTermViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the SmartCampaignSearchTermView resource. + +// A Smart campaign search term view. +message SmartCampaignSearchTermView { + option (google.api.resource) = { + type: "googleads.googleapis.com/SmartCampaignSearchTermView" + pattern: "customers/{customer_id}/smartCampaignSearchTermViews/{campaign_id}~{query}" + }; + + // Output only. The resource name of the Smart campaign search term view. + // Smart campaign search term view resource names have the form: + // + // `customers/{customer_id}/smartCampaignSearchTermViews/{campaign_id}~{URL-base64_search_term}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SmartCampaignSearchTermView" + } + ]; + + // Output only. The search term. + string search_term = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Smart campaign the search term served in. + string campaign = 3 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/smart_campaign_setting.proto b/google/ads/googleads/v8/resources/smart_campaign_setting.proto new file mode 100644 index 000000000..8cd0eef25 --- /dev/null +++ b/google/ads/googleads/v8/resources/smart_campaign_setting.proto @@ -0,0 +1,91 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SmartCampaignSettingProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Smart campaign setting resource. + +// Settings for configuring Smart campaigns. +message SmartCampaignSetting { + option (google.api.resource) = { + type: "googleads.googleapis.com/SmartCampaignSetting" + pattern: "customers/{customer_id}/smartCampaignSettings/{campaign_id}" + }; + + // Phone number and country code in smart campaign settings. + message PhoneNumber { + // Phone number of the smart campaign. + optional string phone_number = 1; + + // Upper-case, two-letter country code as defined by ISO-3166. + optional string country_code = 2; + } + + // Immutable. The resource name of the Smart campaign setting. + // Smart campaign setting resource names have the form: + // + // `customers/{customer_id}/smartCampaignSettings/{campaign_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SmartCampaignSetting" + } + ]; + + // Output only. The campaign to which these settings apply. + string campaign = 2 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Phone number and country code. + PhoneNumber phone_number = 3; + + // Landing page url given by user for this Campaign. + string final_url = 4; + + // The ISO-639-1 language code to advertise in. + string advertising_language_code = 7; + + // The business setting of this campaign. + oneof business_setting { + // The name of the business. + string business_name = 5; + + // The ID of the Business Profile location. + // The location ID can be fetched by Business Profile API with its form: + // accounts/{accountId}/locations/{locationId}. The last {locationId} + // component from the Business Profile API represents the + // business_location_id. See the [Business Profile API] + // (https://developers.google.com/my-business/reference/rest/v4/accounts.locations) + int64 business_location_id = 6; + } +} diff --git a/google/ads/googleads/v8/resources/third_party_app_analytics_link.proto b/google/ads/googleads/v8/resources/third_party_app_analytics_link.proto new file mode 100644 index 000000000..c22d8be36 --- /dev/null +++ b/google/ads/googleads/v8/resources/third_party_app_analytics_link.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ThirdPartyAppAnalyticsLinkProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// A data sharing connection, allowing the import of third party app analytics +// into a Google Ads Customer. +message ThirdPartyAppAnalyticsLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" + pattern: "customers/{customer_id}/thirdPartyAppAnalyticsLinks/{customer_link_id}" + }; + + // Immutable. The resource name of the third party app analytics link. + // Third party app analytics link resource names have the form: + // + // `customers/{customer_id}/thirdPartyAppAnalyticsLinks/{account_link_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" + } + ]; + + // Output only. The shareable link ID that should be provided to the third party when + // setting up app analytics. This is able to be regenerated using regenerate + // method in the ThirdPartyAppAnalyticsLinkService. + optional string shareable_link_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/topic_constant.proto b/google/ads/googleads/v8/resources/topic_constant.proto new file mode 100644 index 000000000..e2d314314 --- /dev/null +++ b/google/ads/googleads/v8/resources/topic_constant.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "TopicConstantProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the Topic Constant resource. + +// Use topics to target or exclude placements in the Google Display Network +// based on the category into which the placement falls (for example, +// "Pets & Animals/Pets/Dogs"). +message TopicConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/TopicConstant" + pattern: "topicConstants/{topic_id}" + }; + + // Output only. The resource name of the topic constant. + // topic constant resource names have the form: + // + // `topicConstants/{topic_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/TopicConstant" + } + ]; + + // Output only. The ID of the topic. + optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Resource name of parent of the topic constant. + optional string topic_constant_parent = 6 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/TopicConstant" + } + ]; + + // Output only. The category to target or exclude. Each subsequent element in the array + // describes a more specific sub-category. For example, + // {"Pets & Animals", "Pets", "Dogs"} represents the + // "Pets & Animals/Pets/Dogs" category. List of available topic categories at + // https://developers.google.com/adwords/api/docs/appendix/verticals + repeated string path = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/topic_view.proto b/google/ads/googleads/v8/resources/topic_view.proto new file mode 100644 index 000000000..a6a6633e4 --- /dev/null +++ b/google/ads/googleads/v8/resources/topic_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "TopicViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the topic view resource. + +// A topic view. +message TopicView { + option (google.api.resource) = { + type: "googleads.googleapis.com/TopicView" + pattern: "customers/{customer_id}/topicViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the topic view. + // Topic view resource names have the form: + // + // `customers/{customer_id}/topicViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/TopicView" + } + ]; +} diff --git a/google/ads/googleads/v8/resources/user_interest.proto b/google/ads/googleads/v8/resources/user_interest.proto new file mode 100644 index 000000000..353261653 --- /dev/null +++ b/google/ads/googleads/v8/resources/user_interest.proto @@ -0,0 +1,76 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/criterion_category_availability.proto"; +import "google/ads/googleads/v8/enums/user_interest_taxonomy_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "UserInterestProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the User Interest resource. + +// A user interest: a particular interest-based vertical to be targeted. +message UserInterest { + option (google.api.resource) = { + type: "googleads.googleapis.com/UserInterest" + pattern: "customers/{customer_id}/userInterests/{user_interest_id}" + }; + + // Output only. The resource name of the user interest. + // User interest resource names have the form: + // + // `customers/{customer_id}/userInterests/{user_interest_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserInterest" + } + ]; + + // Output only. Taxonomy type of the user interest. + google.ads.googleads.v8.enums.UserInterestTaxonomyTypeEnum.UserInterestTaxonomyType taxonomy_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ID of the user interest. + optional int64 user_interest_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the user interest. + optional string name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The parent of the user interest. + optional string user_interest_parent = 10 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserInterest" + } + ]; + + // Output only. True if the user interest is launched to all channels and locales. + optional bool launched_to_all = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Availability information of the user interest. + repeated google.ads.googleads.v8.common.CriterionCategoryAvailability availabilities = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/user_list.proto b/google/ads/googleads/v8/resources/user_list.proto new file mode 100644 index 000000000..ac009ef4c --- /dev/null +++ b/google/ads/googleads/v8/resources/user_list.proto @@ -0,0 +1,174 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/ads/googleads/v8/common/user_lists.proto"; +import "google/ads/googleads/v8/enums/access_reason.proto"; +import "google/ads/googleads/v8/enums/user_list_access_status.proto"; +import "google/ads/googleads/v8/enums/user_list_closing_reason.proto"; +import "google/ads/googleads/v8/enums/user_list_membership_status.proto"; +import "google/ads/googleads/v8/enums/user_list_size_range.proto"; +import "google/ads/googleads/v8/enums/user_list_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "UserListProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the User List resource. + +// A user list. This is a list of users a customer may target. +message UserList { + option (google.api.resource) = { + type: "googleads.googleapis.com/UserList" + pattern: "customers/{customer_id}/userLists/{user_list_id}" + }; + + // Immutable. The resource name of the user list. + // User list resource names have the form: + // + // `customers/{customer_id}/userLists/{user_list_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserList" + } + ]; + + // Output only. Id of the user list. + optional int64 id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A flag that indicates if a user may edit a list. Depends on the list + // ownership and list type. For example, external remarketing user lists are + // not editable. + // + // This field is read-only. + optional bool read_only = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Name of this user list. Depending on its access_reason, the user list name + // may not be unique (e.g. if access_reason=SHARED) + optional string name = 27; + + // Description of this user list. + optional string description = 28; + + // Membership status of this user list. Indicates whether a user list is open + // or active. Only open user lists can accumulate more users and can be + // targeted to. + google.ads.googleads.v8.enums.UserListMembershipStatusEnum.UserListMembershipStatus membership_status = 6; + + // An ID from external system. It is used by user list sellers to correlate + // IDs on their systems. + optional string integration_code = 29; + + // Number of days a user's cookie stays on your list since its most recent + // addition to the list. This field must be between 0 and 540 inclusive. + // However, for CRM based userlists, this field can be set to 10000 which + // means no expiration. + // + // It'll be ignored for logical_user_list. + optional int64 membership_life_span = 30; + + // Output only. Estimated number of users in this user list, on the Google Display Network. + // This value is null if the number of users has not yet been determined. + // + // This field is read-only. + optional int64 size_for_display = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Size range in terms of number of users of the UserList, on the Google + // Display Network. + // + // This field is read-only. + google.ads.googleads.v8.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_display = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Estimated number of users in this user list in the google.com domain. + // These are the users available for targeting in Search campaigns. + // This value is null if the number of users has not yet been determined. + // + // This field is read-only. + optional int64 size_for_search = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Size range in terms of number of users of the UserList, for Search ads. + // + // This field is read-only. + google.ads.googleads.v8.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_search = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Type of this list. + // + // This field is read-only. + google.ads.googleads.v8.enums.UserListTypeEnum.UserListType type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Indicating the reason why this user list membership status is closed. It is + // only populated on lists that were automatically closed due to inactivity, + // and will be cleared once the list membership status becomes open. + google.ads.googleads.v8.enums.UserListClosingReasonEnum.UserListClosingReason closing_reason = 14; + + // Output only. Indicates the reason this account has been granted access to the list. + // The reason can be SHARED, OWNED, LICENSED or SUBSCRIBED. + // + // This field is read-only. + google.ads.googleads.v8.enums.AccessReasonEnum.AccessReason access_reason = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Indicates if this share is still enabled. When a UserList is shared with + // the user this field is set to ENABLED. Later the userList owner can decide + // to revoke the share and make it DISABLED. + // The default value of this field is set to ENABLED. + google.ads.googleads.v8.enums.UserListAccessStatusEnum.UserListAccessStatus account_user_list_status = 16; + + // Indicates if this user list is eligible for Google Search Network. + optional bool eligible_for_search = 33; + + // Output only. Indicates this user list is eligible for Google Display Network. + // + // This field is read-only. + optional bool eligible_for_display = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Indicates match rate for Customer Match lists. The range of this field is + // [0-100]. This will be null for other list types or when it's not possible + // to calculate the match rate. + // + // This field is read-only. + optional int32 match_rate_percentage = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The user list. + // + // Exactly one must be set. + oneof user_list { + // User list of CRM users provided by the advertiser. + google.ads.googleads.v8.common.CrmBasedUserListInfo crm_based_user_list = 19; + + // Output only. User list which are similar to users from another UserList. + // These lists are readonly and automatically created by google. + google.ads.googleads.v8.common.SimilarUserListInfo similar_user_list = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // User list generated by a rule. + google.ads.googleads.v8.common.RuleBasedUserListInfo rule_based_user_list = 21; + + // User list that is a custom combination of user lists and user interests. + google.ads.googleads.v8.common.LogicalUserListInfo logical_user_list = 22; + + // User list targeting as a collection of conversion or remarketing actions. + google.ads.googleads.v8.common.BasicUserListInfo basic_user_list = 23; + } +} diff --git a/google/ads/googleads/v8/resources/user_location_view.proto b/google/ads/googleads/v8/resources/user_location_view.proto new file mode 100644 index 000000000..e4adae990 --- /dev/null +++ b/google/ads/googleads/v8/resources/user_location_view.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "UserLocationViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the user location view resource. + +// A user location view. +// +// User Location View includes all metrics aggregated at the country level, +// one row per country. It reports metrics at the actual physical location of +// the user by targeted or not targeted location. If other segment fields are +// used, you may get more than one row per country. +message UserLocationView { + option (google.api.resource) = { + type: "googleads.googleapis.com/UserLocationView" + pattern: "customers/{customer_id}/userLocationViews/{country_criterion_id}~{is_targeting_location}" + }; + + // Output only. The resource name of the user location view. + // UserLocation view resource names have the form: + // + // `customers/{customer_id}/userLocationViews/{country_criterion_id}~{targeting_location}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserLocationView" + } + ]; + + // Output only. Criterion Id for the country. + optional int64 country_criterion_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Indicates whether location was targeted or not. + optional bool targeting_location = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/video.proto b/google/ads/googleads/v8/resources/video.proto new file mode 100644 index 000000000..9dc758fd8 --- /dev/null +++ b/google/ads/googleads/v8/resources/video.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "VideoProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the video resource. + +// A video. +message Video { + option (google.api.resource) = { + type: "googleads.googleapis.com/Video" + pattern: "customers/{customer_id}/videos/{video_id}" + }; + + // Output only. The resource name of the video. + // Video resource names have the form: + // + // `customers/{customer_id}/videos/{video_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Video" + } + ]; + + // Output only. The ID of the video. + optional string id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The owner channel id of the video. + optional string channel_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The duration of the video in milliseconds. + optional int64 duration_millis = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The title of the video. + optional string title = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v8/resources/webpage_view.proto b/google/ads/googleads/v8/resources/webpage_view.proto new file mode 100644 index 000000000..b309363e9 --- /dev/null +++ b/google/ads/googleads/v8/resources/webpage_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "WebpageViewProto"; +option java_package = "com.google.ads.googleads.v8.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V8::Resources"; + +// Proto file describing the webpage view resource. + +// A webpage view. +message WebpageView { + option (google.api.resource) = { + type: "googleads.googleapis.com/WebpageView" + pattern: "customers/{customer_id}/webpageViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the webpage view. + // Webpage view resource names have the form: + // + // `customers/{customer_id}/webpageViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/WebpageView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/BUILD.bazel b/google/ads/googleads/v8/services/BUILD.bazel new file mode 100644 index 000000000..984c65849 --- /dev/null +++ b/google/ads/googleads/v8/services/BUILD.bazel @@ -0,0 +1,138 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +# TODO(ohren): Change srcs to use an enumeration of each individual proto +# instead of *.proto globbing once the build file generator supports +# subpackages. +proto_library( + name = "services_proto", + srcs = glob(["*.proto"]), + deps = [ + "//google/ads/googleads/v8/common:common_proto", + "//google/ads/googleads/v8/enums:enums_proto", + "//google/ads/googleads/v8/errors:errors_proto", + "//google/ads/googleads/v8/resources:resources_proto", + "//google/api:annotations_proto", + "//google/api:client_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "//google/longrunning:operations_proto", + "//google/rpc:status_proto", + "@com_google_protobuf//:empty_proto", + "@com_google_protobuf//:field_mask_proto", + "@com_google_protobuf//:wrappers_proto", + ], +) + +proto_library_with_info( + name = "services_proto_with_info", + deps = [ + ":services_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "services_java_proto", + deps = [":services_proto"], +) + +java_grpc_library( + name = "services_java_grpc", + srcs = [":services_proto"], + deps = [":services_java_proto"], +) + +############################################################################## +# PHP +############################################################################## + +# PHP targets are in the parent directory's BUILD.bazel file to facilitate +# aggregating metadata using a single underlying call to protoc. + +############################################################################## +# C# +############################################################################## +load( + "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "services_csharp_proto", + deps = [":services_proto"], +) + +csharp_grpc_library( + name = "services_csharp_grpc", + srcs = [":services_proto"], + deps = [":services_csharp_proto"], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "services_ruby_proto", + deps = [":services_proto"], +) + +ruby_grpc_library( + name = "services_ruby_grpc", + srcs = [":services_proto"], + deps = [":services_ruby_proto"], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_grpc_library", + "py_proto_library", +) + +py_proto_library( + name = "services_py_proto", + deps = [":services_proto"], +) + +py_grpc_library( + name = "services_py_grpc", + srcs = [":services_proto"], + deps = [":services_py_proto"], +) diff --git a/google/ads/googleads/v8/services/accessible_bidding_strategy_service.proto b/google/ads/googleads/v8/services/accessible_bidding_strategy_service.proto new file mode 100644 index 000000000..9fea6aa13 --- /dev/null +++ b/google/ads/googleads/v8/services/accessible_bidding_strategy_service.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/accessible_bidding_strategy.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AccessibleBiddingStrategyServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Service to read accessible bidding strategies. +service AccessibleBiddingStrategyService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested accessible bidding strategy in full detail. + rpc GetAccessibleBiddingStrategy(GetAccessibleBiddingStrategyRequest) returns (google.ads.googleads.v8.resources.AccessibleBiddingStrategy) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/accessibleBiddingStrategies/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [AccessibleBiddingStrategyService.GetAccessibleBiddingStrategy][google.ads.googleads.v8.services.AccessibleBiddingStrategyService.GetAccessibleBiddingStrategy]. +message GetAccessibleBiddingStrategyRequest { + // Required. The resource name of the accessible bidding strategy to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccessibleBiddingStrategy" + } + ]; +} diff --git a/google/ads/googleads/v8/services/account_budget_proposal_service.proto b/google/ads/googleads/v8/services/account_budget_proposal_service.proto new file mode 100644 index 000000000..e3c69bedb --- /dev/null +++ b/google/ads/googleads/v8/services/account_budget_proposal_service.proto @@ -0,0 +1,161 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/account_budget_proposal.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProposalServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the AccountBudgetProposal service. + +// A service for managing account-level budgets via proposals. +// +// A proposal is a request to create a new budget or make changes to an +// existing one. +// +// Reads for account-level budgets managed by these proposals will be +// supported in a future version. Until then, please use the +// BudgetOrderService from the AdWords API. Learn more at +// https://developers.google.com/adwords/api/docs/guides/budget-order +// +// Mutates: +// The CREATE operation creates a new proposal. +// UPDATE operations aren't supported. +// The REMOVE operation cancels a pending proposal. +service AccountBudgetProposalService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns an account-level budget proposal in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAccountBudgetProposal(GetAccountBudgetProposalRequest) returns (google.ads.googleads.v8.resources.AccountBudgetProposal) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/accountBudgetProposals/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes account budget proposals. Operation statuses + // are returned. + // + // List of thrown errors: + // [AccountBudgetProposalError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [DateError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + // [StringLengthError]() + rpc MutateAccountBudgetProposal(MutateAccountBudgetProposalRequest) returns (MutateAccountBudgetProposalResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/accountBudgetProposals:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for +// [AccountBudgetProposalService.GetAccountBudgetProposal][google.ads.googleads.v8.services.AccountBudgetProposalService.GetAccountBudgetProposal]. +message GetAccountBudgetProposalRequest { + // Required. The resource name of the account-level budget proposal to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudgetProposal" + } + ]; +} + +// Request message for +// [AccountBudgetProposalService.MutateAccountBudgetProposal][google.ads.googleads.v8.services.AccountBudgetProposalService.MutateAccountBudgetProposal]. +message MutateAccountBudgetProposalRequest { + // Required. The ID of the customer. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on an individual account-level budget proposal. + AccountBudgetProposalOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single operation to propose the creation of a new account-level budget or +// edit/end/remove an existing one. +message AccountBudgetProposalOperation { + // FieldMask that determines which budget fields are modified. While budgets + // may be modified, proposals that propose such modifications are final. + // Therefore, update operations are not supported for proposals. + // + // Proposals that modify budgets have the 'update' proposal type. Specifying + // a mask for any other proposal type is considered an error. + google.protobuf.FieldMask update_mask = 3; + + // The mutate operation. + oneof operation { + // Create operation: A new proposal to create a new budget, edit an + // existing budget, end an actively running budget, or remove an approved + // budget scheduled to start in the future. + // No resource name is expected for the new proposal. + google.ads.googleads.v8.resources.AccountBudgetProposal create = 2; + + // Remove operation: A resource name for the removed proposal is expected, + // in this format: + // + // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` + // A request may be cancelled iff it is pending. + string remove = 1; + } +} + +// Response message for account-level budget mutate operations. +message MutateAccountBudgetProposalResponse { + // The result of the mutate. + MutateAccountBudgetProposalResult result = 2; +} + +// The result for the account budget proposal mutate. +message MutateAccountBudgetProposalResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/account_budget_service.proto b/google/ads/googleads/v8/services/account_budget_service.proto new file mode 100644 index 000000000..e2187bad7 --- /dev/null +++ b/google/ads/googleads/v8/services/account_budget_service.proto @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/account_budget.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the AccountBudget service. + +// A service for fetching an account-level budget. +// +// Account-level budgets are mutated by creating proposal resources. +service AccountBudgetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns an account-level budget in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAccountBudget(GetAccountBudgetRequest) returns (google.ads.googleads.v8.resources.AccountBudget) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/accountBudgets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [AccountBudgetService.GetAccountBudget][google.ads.googleads.v8.services.AccountBudgetService.GetAccountBudget]. +message GetAccountBudgetRequest { + // Required. The resource name of the account-level budget to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudget" + } + ]; +} diff --git a/google/ads/googleads/v8/services/account_link_service.proto b/google/ads/googleads/v8/services/account_link_service.proto new file mode 100644 index 000000000..4a596b73e --- /dev/null +++ b/google/ads/googleads/v8/services/account_link_service.proto @@ -0,0 +1,178 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/account_link.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AccountLinkServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// This service allows management of links between Google Ads accounts and other +// accounts. +service AccountLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the account link in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAccountLink(GetAccountLinkRequest) returns (google.ads.googleads.v8.resources.AccountLink) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/accountLinks/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates an account link. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + // [ThirdPartyAppAnalyticsLinkError]() + rpc CreateAccountLink(CreateAccountLinkRequest) returns (CreateAccountLinkResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/accountLinks:create" + body: "*" + }; + option (google.api.method_signature) = "customer_id,account_link"; + } + + // Creates or removes an account link. + // From V5, create is not supported through + // AccountLinkService.MutateAccountLink. Please use + // AccountLinkService.CreateAccountLink instead. + // + // List of thrown errors: + // [AccountLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAccountLink(MutateAccountLinkRequest) returns (MutateAccountLinkResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/accountLinks:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for [AccountLinkService.GetAccountLink][google.ads.googleads.v8.services.AccountLinkService.GetAccountLink]. +message GetAccountLinkRequest { + // Required. Resource name of the account link. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountLink" + } + ]; +} + +// Request message for +// [AccountLinkService.CreateAccountLink][google.ads.googleads.v8.services.AccountLinkService.CreateAccountLink]. +message CreateAccountLinkRequest { + // Required. The ID of the customer for which the account link is created. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The account link to be created. + google.ads.googleads.v8.resources.AccountLink account_link = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for +// [AccountLinkService.CreateAccountLink][google.ads.googleads.v8.services.AccountLinkService.CreateAccountLink]. +message CreateAccountLinkResponse { + // Returned for successful operations. Resource name of the account link. + string resource_name = 1; +} + +// Request message for [AccountLinkService.MutateAccountLink][google.ads.googleads.v8.services.AccountLinkService.MutateAccountLink]. +message MutateAccountLinkRequest { + // Required. The ID of the customer being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the link. + AccountLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single update on an account link. +message AccountLinkOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The operation to perform. + oneof operation { + // Update operation: The account link is expected to have + // a valid resource name. + google.ads.googleads.v8.resources.AccountLink update = 2; + + // Remove operation: A resource name for the account link to remove is + // expected, in this format: + // + // `customers/{customer_id}/accountLinks/{account_link_id}` + string remove = 3; + } +} + +// Response message for account link mutate. +message MutateAccountLinkResponse { + // Result for the mutate. + MutateAccountLinkResult result = 1; +} + +// The result for the account link mutate. +message MutateAccountLinkResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/ad_group_ad_asset_view_service.proto b/google/ads/googleads/v8/services/ad_group_ad_asset_view_service.proto new file mode 100644 index 000000000..81b4a6815 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_ad_asset_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/ad_group_ad_asset_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdAssetViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the ad group ad asset view service. + +// Service to fetch ad group ad asset views. +service AdGroupAdAssetViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group ad asset view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupAdAssetView(GetAdGroupAdAssetViewRequest) returns (google.ads.googleads.v8.resources.AdGroupAdAssetView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupAdAssetViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AdGroupAdAssetViewService.GetAdGroupAdAssetView][google.ads.googleads.v8.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView]. +message GetAdGroupAdAssetViewRequest { + // Required. The resource name of the ad group ad asset view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAdAssetView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/ad_group_ad_label_service.proto b/google/ads/googleads/v8/services/ad_group_ad_label_service.proto new file mode 100644 index 000000000..310a40837 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_ad_label_service.proto @@ -0,0 +1,144 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/ad_group_ad_label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdLabelServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Ad Group Ad Label service. + +// Service to manage labels on ad group ads. +service AdGroupAdLabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group ad label in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupAdLabel(GetAdGroupAdLabelRequest) returns (google.ads.googleads.v8.resources.AdGroupAdLabel) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupAdLabels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates and removes ad group ad labels. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [HeaderError]() + // [InternalError]() + // [LabelError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAdGroupAdLabels(MutateAdGroupAdLabelsRequest) returns (MutateAdGroupAdLabelsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/adGroupAdLabels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupAdLabelService.GetAdGroupAdLabel][google.ads.googleads.v8.services.AdGroupAdLabelService.GetAdGroupAdLabel]. +message GetAdGroupAdLabelRequest { + // Required. The resource name of the ad group ad label to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAdLabel" + } + ]; +} + +// Request message for [AdGroupAdLabelService.MutateAdGroupAdLabels][google.ads.googleads.v8.services.AdGroupAdLabelService.MutateAdGroupAdLabels]. +message MutateAdGroupAdLabelsRequest { + // Required. ID of the customer whose ad group ad labels are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on ad group ad labels. + repeated AdGroupAdLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on an ad group ad label. +message AdGroupAdLabelOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group ad + // label. + google.ads.googleads.v8.resources.AdGroupAdLabel create = 1; + + // Remove operation: A resource name for the ad group ad label + // being removed, in this format: + // + // `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id} + // _{label_id}` + string remove = 2; + } +} + +// Response message for an ad group ad labels mutate. +message MutateAdGroupAdLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupAdLabelResult results = 2; +} + +// The result for an ad group ad label mutate. +message MutateAdGroupAdLabelResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/ad_group_ad_service.proto b/google/ads/googleads/v8/services/ad_group_ad_service.proto new file mode 100644 index 000000000..6d3f0aba0 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_ad_service.proto @@ -0,0 +1,195 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/policy.proto"; +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/ad_group_ad.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Ad Group Ad service. + +// Service to manage ads in an ad group. +service AdGroupAdService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupAd(GetAdGroupAdRequest) returns (google.ads.googleads.v8.resources.AdGroupAd) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupAds/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ads. Operation statuses are returned. + // + // List of thrown errors: + // [AdCustomizerError]() + // [AdError]() + // [AdGroupAdError]() + // [AdSharingError]() + // [AdxError]() + // [AssetError]() + // [AssetLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [ContextError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FeedAttributeReferenceError]() + // [FieldError]() + // [FieldMaskError]() + // [FunctionError]() + // [FunctionParsingError]() + // [HeaderError]() + // [IdError]() + // [ImageError]() + // [InternalError]() + // [ListOperationError]() + // [MediaBundleError]() + // [MediaFileError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [PolicyFindingError]() + // [PolicyValidationParameterError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateAdGroupAds(MutateAdGroupAdsRequest) returns (MutateAdGroupAdsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/adGroupAds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupAdService.GetAdGroupAd][google.ads.googleads.v8.services.AdGroupAdService.GetAdGroupAd]. +message GetAdGroupAdRequest { + // Required. The resource name of the ad to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; +} + +// Request message for [AdGroupAdService.MutateAdGroupAds][google.ads.googleads.v8.services.AdGroupAdService.MutateAdGroupAds]. +message MutateAdGroupAdsRequest { + // Required. The ID of the customer whose ads are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ads. + repeated AdGroupAdOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an ad group ad. +message AdGroupAdOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // Configuration for how policies are validated. + google.ads.googleads.v8.common.PolicyValidationParameter policy_validation_parameter = 5; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad. + google.ads.googleads.v8.resources.AdGroupAd create = 1; + + // Update operation: The ad is expected to have a valid resource name. + google.ads.googleads.v8.resources.AdGroupAd update = 2; + + // Remove operation: A resource name for the removed ad is expected, + // in this format: + // + // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` + string remove = 3; + } +} + +// Response message for an ad group ad mutate. +message MutateAdGroupAdsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupAdResult results = 2; +} + +// The result for the ad mutate. +message MutateAdGroupAdResult { + // The resource name returned for successful operations. + string resource_name = 1; + + // The mutated ad group ad with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.AdGroupAd ad_group_ad = 2; +} diff --git a/google/ads/googleads/v8/services/ad_group_asset_service.proto b/google/ads/googleads/v8/services/ad_group_asset_service.proto new file mode 100644 index 000000000..132fe57ce --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_asset_service.proto @@ -0,0 +1,162 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/ad_group_asset.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAssetServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the AdGroupAsset service. + +// Service to manage ad group assets. +service AdGroupAssetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group asset in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupAsset(GetAdGroupAssetRequest) returns (google.ads.googleads.v8.resources.AdGroupAsset) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupAssets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad group assets. Operation statuses are + // returned. + // + // List of thrown errors: + // [AssetLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [ContextError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [NotAllowlistedError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAdGroupAssets(MutateAdGroupAssetsRequest) returns (MutateAdGroupAssetsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/adGroupAssets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupAssetService.GetAdGroupAsset][google.ads.googleads.v8.services.AdGroupAssetService.GetAdGroupAsset]. +message GetAdGroupAssetRequest { + // Required. The resource name of the ad group asset to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAsset" + } + ]; +} + +// Request message for [AdGroupAssetService.MutateAdGroupAssets][google.ads.googleads.v8.services.AdGroupAssetService.MutateAdGroupAssets]. +message MutateAdGroupAssetsRequest { + // Required. The ID of the customer whose ad group assets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad group assets. + repeated AdGroupAssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an ad group asset. +message AdGroupAssetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group + // asset. + google.ads.googleads.v8.resources.AdGroupAsset create = 1; + + // Update operation: The ad group asset is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.AdGroupAsset update = 3; + + // Remove operation: A resource name for the removed ad group asset is + // expected, in this format: + // + // `customers/{customer_id}/adGroupAssets/{ad_group_id}~{asset_id}~{field_type}` + string remove = 2; + } +} + +// Response message for an ad group asset mutate. +message MutateAdGroupAssetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; + + // All results for the mutate. + repeated MutateAdGroupAssetResult results = 2; +} + +// The result for the ad group asset mutate. +message MutateAdGroupAssetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated ad group asset with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.AdGroupAsset ad_group_asset = 2; +} diff --git a/google/ads/googleads/v8/services/ad_group_audience_view_service.proto b/google/ads/googleads/v8/services/ad_group_audience_view_service.proto new file mode 100644 index 000000000..56085426c --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_audience_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/ad_group_audience_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAudienceViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the AdGroup Audience View service. + +// Service to manage ad group audience views. +service AdGroupAudienceViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group audience view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupAudienceView(GetAdGroupAudienceViewRequest) returns (google.ads.googleads.v8.resources.AdGroupAudienceView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupAudienceViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AdGroupAudienceViewService.GetAdGroupAudienceView][google.ads.googleads.v8.services.AdGroupAudienceViewService.GetAdGroupAudienceView]. +message GetAdGroupAudienceViewRequest { + // Required. The resource name of the ad group audience view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAudienceView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/ad_group_bid_modifier_service.proto b/google/ads/googleads/v8/services/ad_group_bid_modifier_service.proto new file mode 100644 index 000000000..4c75c2114 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_bid_modifier_service.proto @@ -0,0 +1,174 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/ad_group_bid_modifier.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupBidModifierServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Ad Group Bid Modifier service. + +// Service to manage ad group bid modifiers. +service AdGroupBidModifierService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group bid modifier in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupBidModifier(GetAdGroupBidModifierRequest) returns (google.ads.googleads.v8.resources.AdGroupBidModifier) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupBidModifiers/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad group bid modifiers. + // Operation statuses are returned. + // + // List of thrown errors: + // [AdGroupBidModifierError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [ContextError]() + // [CriterionError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateAdGroupBidModifiers(MutateAdGroupBidModifiersRequest) returns (MutateAdGroupBidModifiersResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/adGroupBidModifiers:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupBidModifierService.GetAdGroupBidModifier][google.ads.googleads.v8.services.AdGroupBidModifierService.GetAdGroupBidModifier]. +message GetAdGroupBidModifierRequest { + // Required. The resource name of the ad group bid modifier to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupBidModifier" + } + ]; +} + +// Request message for [AdGroupBidModifierService.MutateAdGroupBidModifiers][google.ads.googleads.v8.services.AdGroupBidModifierService.MutateAdGroupBidModifiers]. +message MutateAdGroupBidModifiersRequest { + // Required. ID of the customer whose ad group bid modifiers are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad group bid modifiers. + repeated AdGroupBidModifierOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on an ad group bid modifier. +message AdGroupBidModifierOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group bid + // modifier. + google.ads.googleads.v8.resources.AdGroupBidModifier create = 1; + + // Update operation: The ad group bid modifier is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.AdGroupBidModifier update = 2; + + // Remove operation: A resource name for the removed ad group bid modifier + // is expected, in this format: + // + // `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}` + string remove = 3; + } +} + +// Response message for ad group bid modifiers mutate. +message MutateAdGroupBidModifiersResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupBidModifierResult results = 2; +} + +// The result for the criterion mutate. +message MutateAdGroupBidModifierResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated ad group bid modifier with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.AdGroupBidModifier ad_group_bid_modifier = 2; +} diff --git a/google/ads/googleads/v8/services/ad_group_criterion_label_service.proto b/google/ads/googleads/v8/services/ad_group_criterion_label_service.proto new file mode 100644 index 000000000..d5a9f54b1 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_criterion_label_service.proto @@ -0,0 +1,143 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/ad_group_criterion_label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionLabelServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Ad Group Criterion Label service. + +// Service to manage labels on ad group criteria. +service AdGroupCriterionLabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group criterion label in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupCriterionLabel(GetAdGroupCriterionLabelRequest) returns (google.ads.googleads.v8.resources.AdGroupCriterionLabel) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupCriterionLabels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates and removes ad group criterion labels. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAdGroupCriterionLabels(MutateAdGroupCriterionLabelsRequest) returns (MutateAdGroupCriterionLabelsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/adGroupCriterionLabels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [AdGroupCriterionLabelService.GetAdGroupCriterionLabel][google.ads.googleads.v8.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel]. +message GetAdGroupCriterionLabelRequest { + // Required. The resource name of the ad group criterion label to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterionLabel" + } + ]; +} + +// Request message for +// [AdGroupCriterionLabelService.MutateAdGroupCriterionLabels][google.ads.googleads.v8.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels]. +message MutateAdGroupCriterionLabelsRequest { + // Required. ID of the customer whose ad group criterion labels are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on ad group criterion labels. + repeated AdGroupCriterionLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on an ad group criterion label. +message AdGroupCriterionLabelOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group + // label. + google.ads.googleads.v8.resources.AdGroupCriterionLabel create = 1; + + // Remove operation: A resource name for the ad group criterion label + // being removed, in this format: + // + // `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}` + string remove = 2; + } +} + +// Response message for an ad group criterion labels mutate. +message MutateAdGroupCriterionLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupCriterionLabelResult results = 2; +} + +// The result for an ad group criterion label mutate. +message MutateAdGroupCriterionLabelResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/ad_group_criterion_service.proto b/google/ads/googleads/v8/services/ad_group_criterion_service.proto new file mode 100644 index 000000000..9ca290573 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_criterion_service.proto @@ -0,0 +1,194 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/policy.proto"; +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/ad_group_criterion.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Ad Group Criterion service. + +// Service to manage ad group criteria. +service AdGroupCriterionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested criterion in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupCriterion(GetAdGroupCriterionRequest) returns (google.ads.googleads.v8.resources.AdGroupCriterion) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupCriteria/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes criteria. Operation statuses are returned. + // + // List of thrown errors: + // [AdGroupCriterionError]() + // [AdxError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [BiddingError]() + // [BiddingStrategyError]() + // [CollectionSizeError]() + // [ContextError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MultiplierError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateAdGroupCriteria(MutateAdGroupCriteriaRequest) returns (MutateAdGroupCriteriaResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/adGroupCriteria:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupCriterionService.GetAdGroupCriterion][google.ads.googleads.v8.services.AdGroupCriterionService.GetAdGroupCriterion]. +message GetAdGroupCriterionRequest { + // Required. The resource name of the criterion to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; +} + +// Request message for [AdGroupCriterionService.MutateAdGroupCriteria][google.ads.googleads.v8.services.AdGroupCriterionService.MutateAdGroupCriteria]. +message MutateAdGroupCriteriaRequest { + // Required. ID of the customer whose criteria are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual criteria. + repeated AdGroupCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on an ad group criterion. +message AdGroupCriterionOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The list of policy violation keys that should not cause a + // PolicyViolationError to be reported. Not all policy violations are + // exemptable, please refer to the is_exemptible field in the returned + // PolicyViolationError. + // + // Resources violating these polices will be saved, but will not be eligible + // to serve. They may begin serving at a later time due to a change in + // policies, re-review of the resource, or a change in advertiser + // certificates. + repeated google.ads.googleads.v8.common.PolicyViolationKey exempt_policy_violation_keys = 5; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new criterion. + google.ads.googleads.v8.resources.AdGroupCriterion create = 1; + + // Update operation: The criterion is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.AdGroupCriterion update = 2; + + // Remove operation: A resource name for the removed criterion is expected, + // in this format: + // + // `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` + string remove = 3; + } +} + +// Response message for an ad group criterion mutate. +message MutateAdGroupCriteriaResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupCriterionResult results = 2; +} + +// The result for the criterion mutate. +message MutateAdGroupCriterionResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated ad group criterion with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.AdGroupCriterion ad_group_criterion = 2; +} diff --git a/google/ads/googleads/v8/services/ad_group_criterion_simulation_service.proto b/google/ads/googleads/v8/services/ad_group_criterion_simulation_service.proto new file mode 100644 index 000000000..f5e36b4d4 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_criterion_simulation_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/ad_group_criterion_simulation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionSimulationServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the AdGroupCriterionSimulation service. + +// Service to fetch ad group criterion simulations. +service AdGroupCriterionSimulationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group criterion simulation in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupCriterionSimulation(GetAdGroupCriterionSimulationRequest) returns (google.ads.googleads.v8.resources.AdGroupCriterionSimulation) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupCriterionSimulations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation][google.ads.googleads.v8.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation]. +message GetAdGroupCriterionSimulationRequest { + // Required. The resource name of the ad group criterion simulation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterionSimulation" + } + ]; +} diff --git a/google/ads/googleads/v8/services/ad_group_extension_setting_service.proto b/google/ads/googleads/v8/services/ad_group_extension_setting_service.proto new file mode 100644 index 000000000..2f1ca770c --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_extension_setting_service.proto @@ -0,0 +1,183 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/ad_group_extension_setting.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupExtensionSettingServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the AdGroupExtensionSetting service. + +// Service to manage ad group extension settings. +service AdGroupExtensionSettingService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group extension setting in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupExtensionSetting(GetAdGroupExtensionSettingRequest) returns (google.ads.googleads.v8.resources.AdGroupExtensionSetting) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupExtensionSettings/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad group extension settings. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [ExtensionSettingError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateAdGroupExtensionSettings(MutateAdGroupExtensionSettingsRequest) returns (MutateAdGroupExtensionSettingsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/adGroupExtensionSettings:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [AdGroupExtensionSettingService.GetAdGroupExtensionSetting][google.ads.googleads.v8.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting]. +message GetAdGroupExtensionSettingRequest { + // Required. The resource name of the ad group extension setting to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupExtensionSetting" + } + ]; +} + +// Request message for +// [AdGroupExtensionSettingService.MutateAdGroupExtensionSettings][google.ads.googleads.v8.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings]. +message MutateAdGroupExtensionSettingsRequest { + // Required. The ID of the customer whose ad group extension settings are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad group extension + // settings. + repeated AdGroupExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on an ad group extension setting. +message AdGroupExtensionSettingOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group + // extension setting. + google.ads.googleads.v8.resources.AdGroupExtensionSetting create = 1; + + // Update operation: The ad group extension setting is expected to have a + // valid resource name. + google.ads.googleads.v8.resources.AdGroupExtensionSetting update = 2; + + // Remove operation: A resource name for the removed ad group extension + // setting is expected, in this format: + // + // `customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}` + string remove = 3; + } +} + +// Response message for an ad group extension setting mutate. +message MutateAdGroupExtensionSettingsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupExtensionSettingResult results = 2; +} + +// The result for the ad group extension setting mutate. +message MutateAdGroupExtensionSettingResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated AdGroupExtensionSetting with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.AdGroupExtensionSetting ad_group_extension_setting = 2; +} diff --git a/google/ads/googleads/v8/services/ad_group_feed_service.proto b/google/ads/googleads/v8/services/ad_group_feed_service.proto new file mode 100644 index 000000000..596e920d7 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_feed_service.proto @@ -0,0 +1,172 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/ad_group_feed.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupFeedServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the AdGroupFeed service. + +// Service to manage ad group feeds. +service AdGroupFeedService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group feed in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupFeed(GetAdGroupFeedRequest) returns (google.ads.googleads.v8.resources.AdGroupFeed) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupFeeds/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad group feeds. Operation statuses are + // returned. + // + // List of thrown errors: + // [AdGroupFeedError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FunctionError]() + // [FunctionParsingError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateAdGroupFeeds(MutateAdGroupFeedsRequest) returns (MutateAdGroupFeedsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/adGroupFeeds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupFeedService.GetAdGroupFeed][google.ads.googleads.v8.services.AdGroupFeedService.GetAdGroupFeed]. +message GetAdGroupFeedRequest { + // Required. The resource name of the ad group feed to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupFeed" + } + ]; +} + +// Request message for [AdGroupFeedService.MutateAdGroupFeeds][google.ads.googleads.v8.services.AdGroupFeedService.MutateAdGroupFeeds]. +message MutateAdGroupFeedsRequest { + // Required. The ID of the customer whose ad group feeds are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad group feeds. + repeated AdGroupFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an ad group feed. +message AdGroupFeedOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group feed. + google.ads.googleads.v8.resources.AdGroupFeed create = 1; + + // Update operation: The ad group feed is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.AdGroupFeed update = 2; + + // Remove operation: A resource name for the removed ad group feed is + // expected, in this format: + // + // `customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id}` + string remove = 3; + } +} + +// Response message for an ad group feed mutate. +message MutateAdGroupFeedsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupFeedResult results = 2; +} + +// The result for the ad group feed mutate. +message MutateAdGroupFeedResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated ad group feed with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.AdGroupFeed ad_group_feed = 2; +} diff --git a/google/ads/googleads/v8/services/ad_group_label_service.proto b/google/ads/googleads/v8/services/ad_group_label_service.proto new file mode 100644 index 000000000..39ff4b806 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_label_service.proto @@ -0,0 +1,144 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/ad_group_label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupLabelServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Ad Group Label service. + +// Service to manage labels on ad groups. +service AdGroupLabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group label in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupLabel(GetAdGroupLabelRequest) returns (google.ads.googleads.v8.resources.AdGroupLabel) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupLabels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates and removes ad group labels. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [LabelError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAdGroupLabels(MutateAdGroupLabelsRequest) returns (MutateAdGroupLabelsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/adGroupLabels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupLabelService.GetAdGroupLabel][google.ads.googleads.v8.services.AdGroupLabelService.GetAdGroupLabel]. +message GetAdGroupLabelRequest { + // Required. The resource name of the ad group label to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupLabel" + } + ]; +} + +// Request message for [AdGroupLabelService.MutateAdGroupLabels][google.ads.googleads.v8.services.AdGroupLabelService.MutateAdGroupLabels]. +message MutateAdGroupLabelsRequest { + // Required. ID of the customer whose ad group labels are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on ad group labels. + repeated AdGroupLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on an ad group label. +message AdGroupLabelOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group + // label. + google.ads.googleads.v8.resources.AdGroupLabel create = 1; + + // Remove operation: A resource name for the ad group label + // being removed, in this format: + // + // `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}` + string remove = 2; + } +} + +// Response message for an ad group labels mutate. +message MutateAdGroupLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupLabelResult results = 2; +} + +// The result for an ad group label mutate. +message MutateAdGroupLabelResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/ad_group_service.proto b/google/ads/googleads/v8/services/ad_group_service.proto new file mode 100644 index 000000000..1b00ef720 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_service.proto @@ -0,0 +1,178 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/ad_group.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Ad Group service. + +// Service to manage ad groups. +service AdGroupService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroup(GetAdGroupRequest) returns (google.ads.googleads.v8.resources.AdGroup) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroups/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad groups. Operation statuses are returned. + // + // List of thrown errors: + // [AdGroupError]() + // [AdxError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [BiddingError]() + // [BiddingStrategyError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MultiplierError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SettingError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateAdGroups(MutateAdGroupsRequest) returns (MutateAdGroupsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/adGroups:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupService.GetAdGroup][google.ads.googleads.v8.services.AdGroupService.GetAdGroup]. +message GetAdGroupRequest { + // Required. The resource name of the ad group to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; +} + +// Request message for [AdGroupService.MutateAdGroups][google.ads.googleads.v8.services.AdGroupService.MutateAdGroups]. +message MutateAdGroupsRequest { + // Required. The ID of the customer whose ad groups are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad groups. + repeated AdGroupOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an ad group. +message AdGroupOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group. + google.ads.googleads.v8.resources.AdGroup create = 1; + + // Update operation: The ad group is expected to have a valid resource name. + google.ads.googleads.v8.resources.AdGroup update = 2; + + // Remove operation: A resource name for the removed ad group is expected, + // in this format: + // + // `customers/{customer_id}/adGroups/{ad_group_id}` + string remove = 3; + } +} + +// Response message for an ad group mutate. +message MutateAdGroupsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupResult results = 2; +} + +// The result for the ad group mutate. +message MutateAdGroupResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated ad group with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.AdGroup ad_group = 2; +} diff --git a/google/ads/googleads/v8/services/ad_group_simulation_service.proto b/google/ads/googleads/v8/services/ad_group_simulation_service.proto new file mode 100644 index 000000000..3d3596792 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_group_simulation_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/ad_group_simulation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupSimulationServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the AdGroupSimulation service. + +// Service to fetch ad group simulations. +service AdGroupSimulationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group simulation in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupSimulation(GetAdGroupSimulationRequest) returns (google.ads.googleads.v8.resources.AdGroupSimulation) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adGroupSimulations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AdGroupSimulationService.GetAdGroupSimulation][google.ads.googleads.v8.services.AdGroupSimulationService.GetAdGroupSimulation]. +message GetAdGroupSimulationRequest { + // Required. The resource name of the ad group simulation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupSimulation" + } + ]; +} diff --git a/google/ads/googleads/v8/services/ad_parameter_service.proto b/google/ads/googleads/v8/services/ad_parameter_service.proto new file mode 100644 index 000000000..2fe7f3f31 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_parameter_service.proto @@ -0,0 +1,162 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/ad_parameter.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdParameterServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Ad Parameter service. + +// Service to manage ad parameters. +service AdParameterService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad parameter in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdParameter(GetAdParameterRequest) returns (google.ads.googleads.v8.resources.AdParameter) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adParameters/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad parameters. Operation statuses are + // returned. + // + // List of thrown errors: + // [AdParameterError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [ContextError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAdParameters(MutateAdParametersRequest) returns (MutateAdParametersResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/adParameters:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdParameterService.GetAdParameter][google.ads.googleads.v8.services.AdParameterService.GetAdParameter] +message GetAdParameterRequest { + // Required. The resource name of the ad parameter to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdParameter" + } + ]; +} + +// Request message for [AdParameterService.MutateAdParameters][google.ads.googleads.v8.services.AdParameterService.MutateAdParameters] +message MutateAdParametersRequest { + // Required. The ID of the customer whose ad parameters are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad parameters. + repeated AdParameterOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on ad parameter. +message AdParameterOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad parameter. + google.ads.googleads.v8.resources.AdParameter create = 1; + + // Update operation: The ad parameter is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.AdParameter update = 2; + + // Remove operation: A resource name for the ad parameter to remove is + // expected in this format: + // + // `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}` + string remove = 3; + } +} + +// Response message for an ad parameter mutate. +message MutateAdParametersResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdParameterResult results = 2; +} + +// The result for the ad parameter mutate. +message MutateAdParameterResult { + // The resource name returned for successful operations. + string resource_name = 1; + + // The mutated AdParameter with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.AdParameter ad_parameter = 2; +} diff --git a/google/ads/googleads/v8/services/ad_schedule_view_service.proto b/google/ads/googleads/v8/services/ad_schedule_view_service.proto new file mode 100644 index 000000000..c329e8b50 --- /dev/null +++ b/google/ads/googleads/v8/services/ad_schedule_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/ad_schedule_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdScheduleViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the AdSchedule View service. + +// Service to fetch ad schedule views. +service AdScheduleViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad schedule view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdScheduleView(GetAdScheduleViewRequest) returns (google.ads.googleads.v8.resources.AdScheduleView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/adScheduleViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AdScheduleViewService.GetAdScheduleView][google.ads.googleads.v8.services.AdScheduleViewService.GetAdScheduleView]. +message GetAdScheduleViewRequest { + // Required. The resource name of the ad schedule view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdScheduleView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/ad_service.proto b/google/ads/googleads/v8/services/ad_service.proto new file mode 100644 index 000000000..491e45fbe --- /dev/null +++ b/google/ads/googleads/v8/services/ad_service.proto @@ -0,0 +1,184 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/policy.proto"; +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/ad.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Ad service. + +// Service to manage ads. +service AdService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAd(GetAdRequest) returns (google.ads.googleads.v8.resources.Ad) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/ads/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Updates ads. Operation statuses are returned. Updating ads is not supported + // for TextAd, ExpandedDynamicSearchAd, GmailAd and ImageAd. + // + // List of thrown errors: + // [AdCustomizerError]() + // [AdError]() + // [AdSharingError]() + // [AdxError]() + // [AssetError]() + // [AssetLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FeedAttributeReferenceError]() + // [FieldError]() + // [FieldMaskError]() + // [FunctionError]() + // [FunctionParsingError]() + // [HeaderError]() + // [IdError]() + // [ImageError]() + // [InternalError]() + // [ListOperationError]() + // [MediaBundleError]() + // [MediaFileError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [PolicyFindingError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateAds(MutateAdsRequest) returns (MutateAdsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/ads:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdService.GetAd][google.ads.googleads.v8.services.AdService.GetAd]. +message GetAdRequest { + // Required. The resource name of the ad to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Ad" + } + ]; +} + +// Request message for [AdService.MutateAds][google.ads.googleads.v8.services.AdService.MutateAds]. +message MutateAdsRequest { + // Required. The ID of the customer whose ads are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ads. + repeated AdOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single update operation on an ad. +message AdOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 2; + + // Configuration for how policies are validated. + google.ads.googleads.v8.common.PolicyValidationParameter policy_validation_parameter = 3; + + // The mutate operation. + oneof operation { + // Update operation: The ad is expected to have a valid resource name + // in this format: + // + // `customers/{customer_id}/ads/{ad_id}` + google.ads.googleads.v8.resources.Ad update = 1; + } +} + +// Response message for an ad mutate. +message MutateAdsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdResult results = 2; +} + +// The result for the ad mutate. +message MutateAdResult { + // The resource name returned for successful operations. + string resource_name = 1; + + // The mutated ad with only mutable fields after mutate. The field will only + // be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.Ad ad = 2; +} diff --git a/google/ads/googleads/v8/services/age_range_view_service.proto b/google/ads/googleads/v8/services/age_range_view_service.proto new file mode 100644 index 000000000..3f0bba142 --- /dev/null +++ b/google/ads/googleads/v8/services/age_range_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/age_range_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AgeRangeViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Age Range View service. + +// Service to manage age range views. +service AgeRangeViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested age range view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAgeRangeView(GetAgeRangeViewRequest) returns (google.ads.googleads.v8.resources.AgeRangeView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/ageRangeViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AgeRangeViewService.GetAgeRangeView][google.ads.googleads.v8.services.AgeRangeViewService.GetAgeRangeView]. +message GetAgeRangeViewRequest { + // Required. The resource name of the age range view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AgeRangeView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/asset_field_type_view_service.proto b/google/ads/googleads/v8/services/asset_field_type_view_service.proto new file mode 100644 index 000000000..be005ac28 --- /dev/null +++ b/google/ads/googleads/v8/services/asset_field_type_view_service.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/asset_field_type_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AssetFieldTypeViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the AssetFieldTypeView service. + +// Service to fetch asset field type views. +service AssetFieldTypeViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested asset field type view in full detail. + rpc GetAssetFieldTypeView(GetAssetFieldTypeViewRequest) returns (google.ads.googleads.v8.resources.AssetFieldTypeView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/assetFieldTypeViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AssetFieldTypeViewService.GetAssetFieldTypeView][google.ads.googleads.v8.services.AssetFieldTypeViewService.GetAssetFieldTypeView]. +message GetAssetFieldTypeViewRequest { + // Required. The resource name of the asset field type view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetFieldTypeView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/asset_service.proto b/google/ads/googleads/v8/services/asset_service.proto new file mode 100644 index 000000000..9b504cd19 --- /dev/null +++ b/google/ads/googleads/v8/services/asset_service.proto @@ -0,0 +1,175 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/asset.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AssetServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Asset service. + +// Service to manage assets. Asset types can be created with AssetService are +// YoutubeVideoAsset, MediaBundleAsset and ImageAsset. TextAsset should be +// created with Ad inline. +service AssetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested asset in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAsset(GetAssetRequest) returns (google.ads.googleads.v8.resources.Asset) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/assets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates assets. Operation statuses are returned. + // + // List of thrown errors: + // [AssetError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CurrencyCodeError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MediaUploadError]() + // [MutateError]() + // [NotAllowlistedError]() + // [NotEmptyError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + // [YoutubeVideoRegistrationError]() + rpc MutateAssets(MutateAssetsRequest) returns (MutateAssetsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/assets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AssetService.GetAsset][google.ads.googleads.v8.services.AssetService.GetAsset] +message GetAssetRequest { + // Required. The resource name of the asset to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; +} + +// Request message for [AssetService.MutateAssets][google.ads.googleads.v8.services.AssetService.MutateAssets] +message MutateAssetsRequest { + // Required. The ID of the customer whose assets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual assets. + repeated AssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 5; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation to create an asset. Supported asset types are +// YoutubeVideoAsset, MediaBundleAsset, ImageAsset, and LeadFormAsset. TextAsset +// should be created with Ad inline. +message AssetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 3; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new asset. + google.ads.googleads.v8.resources.Asset create = 1; + + // Update operation: The asset is expected to have a valid resource name in + // this format: + // + // `customers/{customer_id}/assets/{asset_id}` + google.ads.googleads.v8.resources.Asset update = 2; + } +} + +// Response message for an asset mutate. +message MutateAssetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAssetResult results = 2; +} + +// The result for the asset mutate. +message MutateAssetResult { + // The resource name returned for successful operations. + string resource_name = 1; + + // The mutated asset with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.Asset asset = 2; +} diff --git a/google/ads/googleads/v8/services/batch_job_service.proto b/google/ads/googleads/v8/services/batch_job_service.proto new file mode 100644 index 000000000..d6898d3bd --- /dev/null +++ b/google/ads/googleads/v8/services/batch_job_service.proto @@ -0,0 +1,286 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/batch_job.proto"; +import "google/ads/googleads/v8/services/google_ads_service.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BatchJobServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the BatchJobService. + +// Service to manage batch jobs. +service BatchJobService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Mutates a batch job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc MutateBatchJob(MutateBatchJobRequest) returns (MutateBatchJobResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/batchJobs:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } + + // Returns the batch job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetBatchJob(GetBatchJobRequest) returns (google.ads.googleads.v8.resources.BatchJob) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/batchJobs/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Returns the results of the batch job. The job must be done. + // Supports standard list paging. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [BatchJobError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListBatchJobResults(ListBatchJobResultsRequest) returns (ListBatchJobResultsResponse) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/batchJobs/*}:listResults" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Runs the batch job. + // + // The Operation.metadata field type is BatchJobMetadata. When finished, the + // long running operation will not contain errors or a response. Instead, use + // ListBatchJobResults to get the results of the job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [BatchJobError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc RunBatchJob(RunBatchJobRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v8/{resource_name=customers/*/batchJobs/*}:run" + body: "*" + }; + option (google.api.method_signature) = "resource_name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "google.ads.googleads.v8.resources.BatchJob.BatchJobMetadata" + }; + } + + // Add operations to the batch job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [BatchJobError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc AddBatchJobOperations(AddBatchJobOperationsRequest) returns (AddBatchJobOperationsResponse) { + option (google.api.http) = { + post: "/v8/{resource_name=customers/*/batchJobs/*}:addOperations" + body: "*" + }; + option (google.api.method_signature) = "resource_name,sequence_token,mutate_operations"; + option (google.api.method_signature) = "resource_name,mutate_operations"; + } +} + +// Request message for [BatchJobService.MutateBatchJob][google.ads.googleads.v8.services.BatchJobService.MutateBatchJob]. +message MutateBatchJobRequest { + // Required. The ID of the customer for which to create a batch job. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on an individual batch job. + BatchJobOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A single operation on a batch job. +message BatchJobOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new batch job. + google.ads.googleads.v8.resources.BatchJob create = 1; + } +} + +// Response message for [BatchJobService.MutateBatchJob][google.ads.googleads.v8.services.BatchJobService.MutateBatchJob]. +message MutateBatchJobResponse { + // The result for the mutate. + MutateBatchJobResult result = 1; +} + +// The result for the batch job mutate. +message MutateBatchJobResult { + // The resource name of the batch job. + string resource_name = 1; +} + +// Request message for [BatchJobService.GetBatchJob][google.ads.googleads.v8.services.BatchJobService.GetBatchJob]. +message GetBatchJobRequest { + // Required. The resource name of the batch job to get. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BatchJob" + } + ]; +} + +// Request message for [BatchJobService.RunBatchJob][google.ads.googleads.v8.services.BatchJobService.RunBatchJob]. +message RunBatchJobRequest { + // Required. The resource name of the BatchJob to run. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BatchJob" + } + ]; +} + +// Request message for [BatchJobService.AddBatchJobOperations][google.ads.googleads.v8.services.BatchJobService.AddBatchJobOperations]. +message AddBatchJobOperationsRequest { + // Required. The resource name of the batch job. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BatchJob" + } + ]; + + // A token used to enforce sequencing. + // + // The first AddBatchJobOperations request for a batch job should not set + // sequence_token. Subsequent requests must set sequence_token to the value of + // next_sequence_token received in the previous AddBatchJobOperations + // response. + string sequence_token = 2; + + // Required. The list of mutates being added. + // + // Operations can use negative integers as temp ids to signify dependencies + // between entities created in this batch job. For example, a customer with + // id = 1234 can create a campaign and an ad group in that same campaign by + // creating a campaign in the first operation with the resource name + // explicitly set to "customers/1234/campaigns/-1", and creating an ad group + // in the second operation with the campaign field also set to + // "customers/1234/campaigns/-1". + repeated MutateOperation mutate_operations = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [BatchJobService.AddBatchJobOperations][google.ads.googleads.v8.services.BatchJobService.AddBatchJobOperations]. +message AddBatchJobOperationsResponse { + // The total number of operations added so far for this batch job. + int64 total_operations = 1; + + // The sequence token to be used when calling AddBatchJobOperations again if + // more operations need to be added. The next AddBatchJobOperations request + // must set the sequence_token field to the value of this field. + string next_sequence_token = 2; +} + +// Request message for [BatchJobService.ListBatchJobResults][google.ads.googleads.v8.services.BatchJobService.ListBatchJobResults]. +message ListBatchJobResultsRequest { + // Required. The resource name of the batch job whose results are being listed. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BatchJob" + } + ]; + + // Token of the page to retrieve. If not specified, the first + // page of results will be returned. Use the value obtained from + // `next_page_token` in the previous response in order to request + // the next page of results. + string page_token = 2; + + // Number of elements to retrieve in a single page. + // When a page request is too large, the server may decide to + // further limit the number of returned resources. + int32 page_size = 3; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 4; +} + +// Response message for [BatchJobService.ListBatchJobResults][google.ads.googleads.v8.services.BatchJobService.ListBatchJobResults]. +message ListBatchJobResultsResponse { + // The list of rows that matched the query. + repeated BatchJobResult results = 1; + + // Pagination token used to retrieve the next page of results. + // Pass the content of this string as the `page_token` attribute of + // the next request. `next_page_token` is not returned for the last + // page. + string next_page_token = 2; +} + +// An individual batch job result. +message BatchJobResult { + // Index of the mutate operation. + int64 operation_index = 1; + + // Response for the mutate. + // May be empty if errors occurred. + MutateOperationResponse mutate_operation_response = 2; + + // Details of the errors when processing the operation. + google.rpc.Status status = 3; +} diff --git a/google/ads/googleads/v8/services/bidding_data_exclusion_service.proto b/google/ads/googleads/v8/services/bidding_data_exclusion_service.proto new file mode 100644 index 000000000..54bbd06be --- /dev/null +++ b/google/ads/googleads/v8/services/bidding_data_exclusion_service.proto @@ -0,0 +1,141 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/bidding_data_exclusion.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BiddingDataExclusionServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Service to manage bidding data exclusions. +service BiddingDataExclusionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested data exclusion in full detail. + rpc GetBiddingDataExclusion(GetBiddingDataExclusionRequest) returns (google.ads.googleads.v8.resources.BiddingDataExclusion) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/biddingDataExclusions/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes data exclusions. + // Operation statuses are returned. + rpc MutateBiddingDataExclusions(MutateBiddingDataExclusionsRequest) returns (MutateBiddingDataExclusionsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/biddingDataExclusions:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [BiddingDataExclusionService.GetBiddingDataExclusion][google.ads.googleads.v8.services.BiddingDataExclusionService.GetBiddingDataExclusion]. +message GetBiddingDataExclusionRequest { + // Required. The resource name of the data exclusion to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingDataExclusion" + } + ]; +} + +// Request message for +// [BiddingDataExclusionService.MutateBiddingDataExclusions][google.ads.googleads.v8.services.BiddingDataExclusionService.MutateBiddingDataExclusions]. +message MutateBiddingDataExclusionsRequest { + // Required. ID of the customer whose data exclusions are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual data exclusions. + repeated BiddingDataExclusionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on a data exclusion. +message BiddingDataExclusionOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new data + // exclusion. + google.ads.googleads.v8.resources.BiddingDataExclusion create = 1; + + // Update operation: The data exclusion is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.BiddingDataExclusion update = 2; + + // Remove operation: A resource name for the removed data exclusion + // is expected, in this format: + // + // `customers/{customer_id}/biddingDataExclusions/{data_exclusion_id}` + string remove = 3; + } +} + +// Response message for data exlusions mutate. +message MutateBiddingDataExclusionsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateBiddingDataExclusionsResult results = 2; +} + +// The result for the data exclusion mutate. +message MutateBiddingDataExclusionsResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated bidding data exclusion with only mutable fields after mutate. + // The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.BiddingDataExclusion bidding_data_exclusion = 2; +} diff --git a/google/ads/googleads/v8/services/bidding_seasonality_adjustment_service.proto b/google/ads/googleads/v8/services/bidding_seasonality_adjustment_service.proto new file mode 100644 index 000000000..6b13726f5 --- /dev/null +++ b/google/ads/googleads/v8/services/bidding_seasonality_adjustment_service.proto @@ -0,0 +1,141 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/bidding_seasonality_adjustment.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BiddingSeasonalityAdjustmentServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Service to manage bidding seasonality adjustments. +service BiddingSeasonalityAdjustmentService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested seasonality adjustment in full detail. + rpc GetBiddingSeasonalityAdjustment(GetBiddingSeasonalityAdjustmentRequest) returns (google.ads.googleads.v8.resources.BiddingSeasonalityAdjustment) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/biddingSeasonalityAdjustments/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes seasonality adjustments. + // Operation statuses are returned. + rpc MutateBiddingSeasonalityAdjustments(MutateBiddingSeasonalityAdjustmentsRequest) returns (MutateBiddingSeasonalityAdjustmentsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/biddingSeasonalityAdjustments:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [BiddingSeasonalityAdjustmentService.GetBiddingSeasonalityAdjustment][google.ads.googleads.v8.services.BiddingSeasonalityAdjustmentService.GetBiddingSeasonalityAdjustment]. +message GetBiddingSeasonalityAdjustmentRequest { + // Required. The resource name of the seasonality adjustment to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingSeasonalityAdjustment" + } + ]; +} + +// Request message for +// [BiddingSeasonalityAdjustmentService.MutateBiddingSeasonalityAdjustments][google.ads.googleads.v8.services.BiddingSeasonalityAdjustmentService.MutateBiddingSeasonalityAdjustments]. +message MutateBiddingSeasonalityAdjustmentsRequest { + // Required. ID of the customer whose seasonality adjustments are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual seasonality adjustments. + repeated BiddingSeasonalityAdjustmentOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on a seasonality adjustment. +message BiddingSeasonalityAdjustmentOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new seasonality + // adjustment. + google.ads.googleads.v8.resources.BiddingSeasonalityAdjustment create = 1; + + // Update operation: The seasonality adjustment is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.BiddingSeasonalityAdjustment update = 2; + + // Remove operation: A resource name for the removed seasonality adjustment + // is expected, in this format: + // + // `customers/{customer_id}/biddingSeasonalityAdjustments/{seasonality_adjustment_id}` + string remove = 3; + } +} + +// Response message for seasonality adjustments mutate. +message MutateBiddingSeasonalityAdjustmentsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateBiddingSeasonalityAdjustmentsResult results = 2; +} + +// The result for the seasonality adjustment mutate. +message MutateBiddingSeasonalityAdjustmentsResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated bidding seasonality adjustment with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.BiddingSeasonalityAdjustment bidding_seasonality_adjustment = 2; +} diff --git a/google/ads/googleads/v8/services/bidding_strategy_service.proto b/google/ads/googleads/v8/services/bidding_strategy_service.proto new file mode 100644 index 000000000..e79678cf1 --- /dev/null +++ b/google/ads/googleads/v8/services/bidding_strategy_service.proto @@ -0,0 +1,177 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/bidding_strategy.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategyServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Bidding Strategy service. + +// Service to manage bidding strategies. +service BiddingStrategyService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested bidding strategy in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetBiddingStrategy(GetBiddingStrategyRequest) returns (google.ads.googleads.v8.resources.BiddingStrategy) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/biddingStrategies/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes bidding strategies. Operation statuses are + // returned. + // + // List of thrown errors: + // [AdxError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [BiddingError]() + // [BiddingStrategyError]() + // [ContextError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateBiddingStrategies(MutateBiddingStrategiesRequest) returns (MutateBiddingStrategiesResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/biddingStrategies:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [BiddingStrategyService.GetBiddingStrategy][google.ads.googleads.v8.services.BiddingStrategyService.GetBiddingStrategy]. +message GetBiddingStrategyRequest { + // Required. The resource name of the bidding strategy to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingStrategy" + } + ]; +} + +// Request message for [BiddingStrategyService.MutateBiddingStrategies][google.ads.googleads.v8.services.BiddingStrategyService.MutateBiddingStrategies]. +message MutateBiddingStrategiesRequest { + // Required. The ID of the customer whose bidding strategies are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual bidding strategies. + repeated BiddingStrategyOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a bidding strategy. +message BiddingStrategyOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new bidding + // strategy. + google.ads.googleads.v8.resources.BiddingStrategy create = 1; + + // Update operation: The bidding strategy is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.BiddingStrategy update = 2; + + // Remove operation: A resource name for the removed bidding strategy is + // expected, in this format: + // + // `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}` + string remove = 3; + } +} + +// Response message for bidding strategy mutate. +message MutateBiddingStrategiesResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateBiddingStrategyResult results = 2; +} + +// The result for the bidding strategy mutate. +message MutateBiddingStrategyResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated bidding strategy with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.BiddingStrategy bidding_strategy = 2; +} diff --git a/google/ads/googleads/v8/services/bidding_strategy_simulation_service.proto b/google/ads/googleads/v8/services/bidding_strategy_simulation_service.proto new file mode 100644 index 000000000..849d39229 --- /dev/null +++ b/google/ads/googleads/v8/services/bidding_strategy_simulation_service.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/bidding_strategy_simulation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategySimulationServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the BiddingStrategySimulation service. + +// Service to fetch bidding strategy simulations. +service BiddingStrategySimulationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested bidding strategy simulation in full detail. + rpc GetBiddingStrategySimulation(GetBiddingStrategySimulationRequest) returns (google.ads.googleads.v8.resources.BiddingStrategySimulation) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/biddingStrategySimulations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [BiddingStrategySimulationService.GetBiddingStrategySimulation][google.ads.googleads.v8.services.BiddingStrategySimulationService.GetBiddingStrategySimulation]. +message GetBiddingStrategySimulationRequest { + // Required. The resource name of the bidding strategy simulation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingStrategySimulation" + } + ]; +} diff --git a/google/ads/googleads/v8/services/billing_setup_service.proto b/google/ads/googleads/v8/services/billing_setup_service.proto new file mode 100644 index 000000000..72d51eeb3 --- /dev/null +++ b/google/ads/googleads/v8/services/billing_setup_service.proto @@ -0,0 +1,136 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/billing_setup.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BillingSetupServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the BillingSetup service. + +// A service for designating the business entity responsible for accrued costs. +// +// A billing setup is associated with a payments account. Billing-related +// activity for all billing setups associated with a particular payments account +// will appear on a single invoice generated monthly. +// +// Mutates: +// The REMOVE operation cancels a pending billing setup. +// The CREATE operation creates a new billing setup. +service BillingSetupService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns a billing setup. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetBillingSetup(GetBillingSetupRequest) returns (google.ads.googleads.v8.resources.BillingSetup) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/billingSetups/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates a billing setup, or cancels an existing billing setup. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [BillingSetupError]() + // [DateError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateBillingSetup(MutateBillingSetupRequest) returns (MutateBillingSetupResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/billingSetups:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for +// [BillingSetupService.GetBillingSetup][google.ads.googleads.v8.services.BillingSetupService.GetBillingSetup]. +message GetBillingSetupRequest { + // Required. The resource name of the billing setup to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BillingSetup" + } + ]; +} + +// Request message for billing setup mutate operations. +message MutateBillingSetupRequest { + // Required. Id of the customer to apply the billing setup mutate operation to. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform. + BillingSetupOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A single operation on a billing setup, which describes the cancellation of an +// existing billing setup. +message BillingSetupOperation { + // Only one of these operations can be set. "Update" operations are not + // supported. + oneof operation { + // Creates a billing setup. No resource name is expected for the new billing + // setup. + google.ads.googleads.v8.resources.BillingSetup create = 2; + + // Resource name of the billing setup to remove. A setup cannot be + // removed unless it is in a pending state or its scheduled start time is in + // the future. The resource name looks like + // `customers/{customer_id}/billingSetups/{billing_id}`. + string remove = 1; + } +} + +// Response message for a billing setup operation. +message MutateBillingSetupResponse { + // A result that identifies the resource affected by the mutate request. + MutateBillingSetupResult result = 1; +} + +// Result for a single billing setup mutate. +message MutateBillingSetupResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/campaign_asset_service.proto b/google/ads/googleads/v8/services/campaign_asset_service.proto new file mode 100644 index 000000000..7f6e6149f --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_asset_service.proto @@ -0,0 +1,163 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/campaign_asset.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignAssetServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the CampaignAsset service. + +// Service to manage campaign assets. +service CampaignAssetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign asset in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignAsset(GetCampaignAssetRequest) returns (google.ads.googleads.v8.resources.CampaignAsset) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignAssets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign assets. Operation statuses are + // returned. + // + // List of thrown errors: + // [AssetLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [ContextError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [NotAllowlistedError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCampaignAssets(MutateCampaignAssetsRequest) returns (MutateCampaignAssetsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaignAssets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignAssetService.GetCampaignAsset][google.ads.googleads.v8.services.CampaignAssetService.GetCampaignAsset]. +message GetCampaignAssetRequest { + // Required. The resource name of the campaign asset to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignAsset" + } + ]; +} + +// Request message for [CampaignAssetService.MutateCampaignAssets][google.ads.googleads.v8.services.CampaignAssetService.MutateCampaignAssets]. +message MutateCampaignAssetsRequest { + // Required. The ID of the customer whose campaign assets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign assets. + repeated CampaignAssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign asset. +message CampaignAssetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign + // asset. + google.ads.googleads.v8.resources.CampaignAsset create = 1; + + // Update operation: The campaign asset is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.CampaignAsset update = 3; + + // Remove operation: A resource name for the removed campaign asset is + // expected, in this format: + // + // `customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}` + string remove = 2; + } +} + +// Response message for a campaign asset mutate. +message MutateCampaignAssetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; + + // All results for the mutate. + repeated MutateCampaignAssetResult results = 2; +} + +// The result for the campaign asset mutate. +message MutateCampaignAssetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign asset with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CampaignAsset campaign_asset = 2; +} diff --git a/google/ads/googleads/v8/services/campaign_audience_view_service.proto b/google/ads/googleads/v8/services/campaign_audience_view_service.proto new file mode 100644 index 000000000..324c65e8f --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_audience_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/campaign_audience_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignAudienceViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Campaign Audience View service. + +// Service to manage campaign audience views. +service CampaignAudienceViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign audience view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignAudienceView(GetCampaignAudienceViewRequest) returns (google.ads.googleads.v8.resources.CampaignAudienceView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignAudienceViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CampaignAudienceViewService.GetCampaignAudienceView][google.ads.googleads.v8.services.CampaignAudienceViewService.GetCampaignAudienceView]. +message GetCampaignAudienceViewRequest { + // Required. The resource name of the campaign audience view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignAudienceView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/campaign_bid_modifier_service.proto b/google/ads/googleads/v8/services/campaign_bid_modifier_service.proto new file mode 100644 index 000000000..f9c189361 --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_bid_modifier_service.proto @@ -0,0 +1,174 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/campaign_bid_modifier.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBidModifierServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Campaign Bid Modifier service. + +// Service to manage campaign bid modifiers. +service CampaignBidModifierService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign bid modifier in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignBidModifier(GetCampaignBidModifierRequest) returns (google.ads.googleads.v8.resources.CampaignBidModifier) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignBidModifiers/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign bid modifiers. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ContextError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateCampaignBidModifiers(MutateCampaignBidModifiersRequest) returns (MutateCampaignBidModifiersResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaignBidModifiers:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignBidModifierService.GetCampaignBidModifier][google.ads.googleads.v8.services.CampaignBidModifierService.GetCampaignBidModifier]. +message GetCampaignBidModifierRequest { + // Required. The resource name of the campaign bid modifier to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBidModifier" + } + ]; +} + +// Request message for +// [CampaignBidModifierService.MutateCampaignBidModifiers][google.ads.googleads.v8.services.CampaignBidModifierService.MutateCampaignBidModifiers]. +message MutateCampaignBidModifiersRequest { + // Required. ID of the customer whose campaign bid modifiers are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign bid modifiers. + repeated CampaignBidModifierOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on a campaign bid modifier. +message CampaignBidModifierOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign bid + // modifier. + google.ads.googleads.v8.resources.CampaignBidModifier create = 1; + + // Update operation: The campaign bid modifier is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.CampaignBidModifier update = 2; + + // Remove operation: A resource name for the removed campaign bid modifier + // is expected, in this format: + // + // `customers/{customer_id}/CampaignBidModifiers/{campaign_id}~{criterion_id}` + string remove = 3; + } +} + +// Response message for campaign bid modifiers mutate. +message MutateCampaignBidModifiersResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignBidModifierResult results = 2; +} + +// The result for the criterion mutate. +message MutateCampaignBidModifierResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign bid modifier with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CampaignBidModifier campaign_bid_modifier = 2; +} diff --git a/google/ads/googleads/v8/services/campaign_budget_service.proto b/google/ads/googleads/v8/services/campaign_budget_service.proto new file mode 100644 index 000000000..11462c56d --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_budget_service.proto @@ -0,0 +1,167 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/campaign_budget.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBudgetServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Campaign Budget service. + +// Service to manage campaign budgets. +service CampaignBudgetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Campaign Budget in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignBudget(GetCampaignBudgetRequest) returns (google.ads.googleads.v8.resources.CampaignBudget) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignBudgets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign budgets. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignBudgetError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [OperationAccessDeniedError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [StringLengthError]() + rpc MutateCampaignBudgets(MutateCampaignBudgetsRequest) returns (MutateCampaignBudgetsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaignBudgets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignBudgetService.GetCampaignBudget][google.ads.googleads.v8.services.CampaignBudgetService.GetCampaignBudget]. +message GetCampaignBudgetRequest { + // Required. The resource name of the campaign budget to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBudget" + } + ]; +} + +// Request message for [CampaignBudgetService.MutateCampaignBudgets][google.ads.googleads.v8.services.CampaignBudgetService.MutateCampaignBudgets]. +message MutateCampaignBudgetsRequest { + // Required. The ID of the customer whose campaign budgets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign budgets. + repeated CampaignBudgetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign budget. +message CampaignBudgetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new budget. + google.ads.googleads.v8.resources.CampaignBudget create = 1; + + // Update operation: The campaign budget is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.CampaignBudget update = 2; + + // Remove operation: A resource name for the removed budget is expected, in + // this format: + // + // `customers/{customer_id}/campaignBudgets/{budget_id}` + string remove = 3; + } +} + +// Response message for campaign budget mutate. +message MutateCampaignBudgetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignBudgetResult results = 2; +} + +// The result for the campaign budget mutate. +message MutateCampaignBudgetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign budget with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CampaignBudget campaign_budget = 2; +} diff --git a/google/ads/googleads/v8/services/campaign_criterion_service.proto b/google/ads/googleads/v8/services/campaign_criterion_service.proto new file mode 100644 index 000000000..d2c5a4f63 --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_criterion_service.proto @@ -0,0 +1,178 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/campaign_criterion.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Campaign Criterion service. + +// Service to manage campaign criteria. +service CampaignCriterionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested criterion in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignCriterion(GetCampaignCriterionRequest) returns (google.ads.googleads.v8.resources.CampaignCriterion) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignCriteria/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes criteria. Operation statuses are returned. + // + // List of thrown errors: + // [AdxError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignCriterionError]() + // [CollectionSizeError]() + // [ContextError]() + // [CriterionError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [FunctionError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RegionCodeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateCampaignCriteria(MutateCampaignCriteriaRequest) returns (MutateCampaignCriteriaResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaignCriteria:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignCriterionService.GetCampaignCriterion][google.ads.googleads.v8.services.CampaignCriterionService.GetCampaignCriterion]. +message GetCampaignCriterionRequest { + // Required. The resource name of the criterion to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignCriterion" + } + ]; +} + +// Request message for [CampaignCriterionService.MutateCampaignCriteria][google.ads.googleads.v8.services.CampaignCriterionService.MutateCampaignCriteria]. +message MutateCampaignCriteriaRequest { + // Required. The ID of the customer whose criteria are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual criteria. + repeated CampaignCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign criterion. +message CampaignCriterionOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new criterion. + google.ads.googleads.v8.resources.CampaignCriterion create = 1; + + // Update operation: The criterion is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.CampaignCriterion update = 2; + + // Remove operation: A resource name for the removed criterion is expected, + // in this format: + // + // `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}` + string remove = 3; + } +} + +// Response message for campaign criterion mutate. +message MutateCampaignCriteriaResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignCriterionResult results = 2; +} + +// The result for the criterion mutate. +message MutateCampaignCriterionResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign criterion with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CampaignCriterion campaign_criterion = 2; +} diff --git a/google/ads/googleads/v8/services/campaign_criterion_simulation_service.proto b/google/ads/googleads/v8/services/campaign_criterion_simulation_service.proto new file mode 100644 index 000000000..7984de6d9 --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_criterion_simulation_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/campaign_criterion_simulation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionSimulationServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the CampaignCriterionSimulation service. + +// Service to fetch campaign criterion simulations. +service CampaignCriterionSimulationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign criterion simulation in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignCriterionSimulation(GetCampaignCriterionSimulationRequest) returns (google.ads.googleads.v8.resources.CampaignCriterionSimulation) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignCriterionSimulations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [CampaignCriterionSimulationService.GetCampaignCriterionSimulation][google.ads.googleads.v8.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation]. +message GetCampaignCriterionSimulationRequest { + // Required. The resource name of the campaign criterion simulation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignCriterionSimulation" + } + ]; +} diff --git a/google/ads/googleads/v8/services/campaign_draft_service.proto b/google/ads/googleads/v8/services/campaign_draft_service.proto new file mode 100644 index 000000000..d2146b521 --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_draft_service.proto @@ -0,0 +1,254 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/campaign_draft.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignDraftServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Campaign Draft service. + +// Service to manage campaign drafts. +service CampaignDraftService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign draft in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignDraft(GetCampaignDraftRequest) returns (google.ads.googleads.v8.resources.CampaignDraft) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignDrafts/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign drafts. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignDraftError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCampaignDrafts(MutateCampaignDraftsRequest) returns (MutateCampaignDraftsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaignDrafts:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } + + // Promotes the changes in a draft back to the base campaign. + // + // This method returns a Long Running Operation (LRO) indicating if the + // Promote is done. Use [Operations.GetOperation] to poll the LRO until it + // is done. Only a done status is returned in the response. See the status + // in the Campaign Draft resource to determine if the promotion was + // successful. If the LRO failed, use + // [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v8.services.CampaignDraftService.ListCampaignDraftAsyncErrors] to view the list of + // error reasons. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignDraftError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc PromoteCampaignDraft(PromoteCampaignDraftRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v8/{campaign_draft=customers/*/campaignDrafts/*}:promote" + body: "*" + }; + option (google.api.method_signature) = "campaign_draft"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "google.protobuf.Empty" + }; + } + + // Returns all errors that occurred during CampaignDraft promote. Throws an + // error if called before campaign draft is promoted. + // Supports standard list paging. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListCampaignDraftAsyncErrors(ListCampaignDraftAsyncErrorsRequest) returns (ListCampaignDraftAsyncErrorsResponse) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CampaignDraftService.GetCampaignDraft][google.ads.googleads.v8.services.CampaignDraftService.GetCampaignDraft]. +message GetCampaignDraftRequest { + // Required. The resource name of the campaign draft to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignDraft" + } + ]; +} + +// Request message for [CampaignDraftService.MutateCampaignDrafts][google.ads.googleads.v8.services.CampaignDraftService.MutateCampaignDrafts]. +message MutateCampaignDraftsRequest { + // Required. The ID of the customer whose campaign drafts are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign drafts. + repeated CampaignDraftOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// Request message for [CampaignDraftService.PromoteCampaignDraft][google.ads.googleads.v8.services.CampaignDraftService.PromoteCampaignDraft]. +message PromoteCampaignDraftRequest { + // Required. The resource name of the campaign draft to promote. + string campaign_draft = 1 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but no Long Running Operation is created. + // Only errors are returned. + bool validate_only = 2; +} + +// A single operation (create, update, remove) on a campaign draft. +message CampaignDraftOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign + // draft. + google.ads.googleads.v8.resources.CampaignDraft create = 1; + + // Update operation: The campaign draft is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.CampaignDraft update = 2; + + // Remove operation: The campaign draft is expected to have a valid + // resource name, in this format: + // + // `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}` + string remove = 3; + } +} + +// Response message for campaign draft mutate. +message MutateCampaignDraftsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignDraftResult results = 2; +} + +// The result for the campaign draft mutate. +message MutateCampaignDraftResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign draft with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CampaignDraft campaign_draft = 2; +} + +// Request message for [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v8.services.CampaignDraftService.ListCampaignDraftAsyncErrors]. +message ListCampaignDraftAsyncErrorsRequest { + // Required. The name of the campaign draft from which to retrieve the async errors. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignDraft" + } + ]; + + // Token of the page to retrieve. If not specified, the first + // page of results will be returned. Use the value obtained from + // `next_page_token` in the previous response in order to request + // the next page of results. + string page_token = 2; + + // Number of elements to retrieve in a single page. + // When a page request is too large, the server may decide to + // further limit the number of returned resources. + int32 page_size = 3; +} + +// Response message for [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v8.services.CampaignDraftService.ListCampaignDraftAsyncErrors]. +message ListCampaignDraftAsyncErrorsResponse { + // Details of the errors when performing the asynchronous operation. + repeated google.rpc.Status errors = 1; + + // Pagination token used to retrieve the next page of results. + // Pass the content of this string as the `page_token` attribute of + // the next request. `next_page_token` is not returned for the last + // page. + string next_page_token = 2; +} diff --git a/google/ads/googleads/v8/services/campaign_experiment_service.proto b/google/ads/googleads/v8/services/campaign_experiment_service.proto new file mode 100644 index 000000000..d631e84d2 --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_experiment_service.proto @@ -0,0 +1,382 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/campaign_experiment.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/empty.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Campaign Experiment service. + +// CampaignExperimentService manages the life cycle of campaign experiments. +// It is used to create new experiments from drafts, modify experiment +// properties, promote changes in an experiment back to its base campaign, +// graduate experiments into new stand-alone campaigns, and to remove an +// experiment. +// +// An experiment consists of two variants or arms - the base campaign and the +// experiment campaign, directing a fixed share of traffic to each arm. +// A campaign experiment is created from a draft of changes to the base campaign +// and will be a snapshot of changes in the draft at the time of creation. +service CampaignExperimentService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign experiment in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignExperiment(GetCampaignExperimentRequest) returns (google.ads.googleads.v8.resources.CampaignExperiment) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignExperiments/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates a campaign experiment based on a campaign draft. The draft campaign + // will be forked into a real campaign (called the experiment campaign) that + // will begin serving ads if successfully created. + // + // The campaign experiment is created immediately with status INITIALIZING. + // This method return a long running operation that tracks the forking of the + // draft campaign. If the forking fails, a list of errors can be retrieved + // using the ListCampaignExperimentAsyncErrors method. The operation's + // metadata will be a StringValue containing the resource name of the created + // campaign experiment. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignExperimentError]() + // [DatabaseError]() + // [DateError]() + // [DateRangeError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + rpc CreateCampaignExperiment(CreateCampaignExperimentRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaignExperiments:create" + body: "*" + }; + option (google.api.method_signature) = "customer_id,campaign_experiment"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "google.ads.googleads.v8.services.CreateCampaignExperimentMetadata" + }; + } + + // Updates campaign experiments. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignExperimentError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCampaignExperiments(MutateCampaignExperimentsRequest) returns (MutateCampaignExperimentsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaignExperiments:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } + + // Graduates a campaign experiment to a full campaign. The base and experiment + // campaigns will start running independently with their own budgets. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignExperimentError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc GraduateCampaignExperiment(GraduateCampaignExperimentRequest) returns (GraduateCampaignExperimentResponse) { + option (google.api.http) = { + post: "/v8/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" + body: "*" + }; + option (google.api.method_signature) = "campaign_experiment,campaign_budget"; + } + + // Promotes the changes in a experiment campaign back to the base campaign. + // + // The campaign experiment is updated immediately with status PROMOTING. + // This method return a long running operation that tracks the promoting of + // the experiment campaign. If the promoting fails, a list of errors can be + // retrieved using the ListCampaignExperimentAsyncErrors method. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc PromoteCampaignExperiment(PromoteCampaignExperimentRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v8/{campaign_experiment=customers/*/campaignExperiments/*}:promote" + body: "*" + }; + option (google.api.method_signature) = "campaign_experiment"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "google.protobuf.Empty" + }; + } + + // Immediately ends a campaign experiment, changing the experiment's scheduled + // end date and without waiting for end of day. End date is updated to be the + // time of the request. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignExperimentError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc EndCampaignExperiment(EndCampaignExperimentRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + post: "/v8/{campaign_experiment=customers/*/campaignExperiments/*}:end" + body: "*" + }; + option (google.api.method_signature) = "campaign_experiment"; + } + + // Returns all errors that occurred during CampaignExperiment create or + // promote (whichever occurred last). + // Supports standard list paging. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListCampaignExperimentAsyncErrors(ListCampaignExperimentAsyncErrorsRequest) returns (ListCampaignExperimentAsyncErrorsResponse) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CampaignExperimentService.GetCampaignExperiment][google.ads.googleads.v8.services.CampaignExperimentService.GetCampaignExperiment]. +message GetCampaignExperimentRequest { + // Required. The resource name of the campaign experiment to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignExperiment" + } + ]; +} + +// Request message for [CampaignExperimentService.MutateCampaignExperiments][google.ads.googleads.v8.services.CampaignExperimentService.MutateCampaignExperiments]. +message MutateCampaignExperimentsRequest { + // Required. The ID of the customer whose campaign experiments are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign experiments. + repeated CampaignExperimentOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single update operation on a campaign experiment. +message CampaignExperimentOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 3; + + // The mutate operation. + oneof operation { + // Update operation: The campaign experiment is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.CampaignExperiment update = 1; + + // Remove operation: The campaign experiment is expected to have a valid + // resource name, in this format: + // + // `customers/{customer_id}/campaignExperiments/{campaign_experiment_id}` + string remove = 2; + } +} + +// Response message for campaign experiment mutate. +message MutateCampaignExperimentsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignExperimentResult results = 2; +} + +// The result for the campaign experiment mutate. +message MutateCampaignExperimentResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign experiment with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CampaignExperiment campaign_experiment = 2; +} + +// Request message for [CampaignExperimentService.CreateCampaignExperiment][google.ads.googleads.v8.services.CampaignExperimentService.CreateCampaignExperiment]. +message CreateCampaignExperimentRequest { + // Required. The ID of the customer whose campaign experiment is being created. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The campaign experiment to be created. + google.ads.googleads.v8.resources.CampaignExperiment campaign_experiment = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// Message used as metadata returned in Long Running Operations for +// CreateCampaignExperimentRequest +message CreateCampaignExperimentMetadata { + // Resource name of campaign experiment created. + string campaign_experiment = 1; +} + +// Request message for [CampaignExperimentService.GraduateCampaignExperiment][google.ads.googleads.v8.services.CampaignExperimentService.GraduateCampaignExperiment]. +message GraduateCampaignExperimentRequest { + // Required. The resource name of the campaign experiment to graduate. + string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Resource name of the budget to attach to the campaign graduated from the + // experiment. + string campaign_budget = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// Response message for campaign experiment graduate. +message GraduateCampaignExperimentResponse { + // The resource name of the campaign from the graduated experiment. + // This campaign is the same one as CampaignExperiment.experiment_campaign. + string graduated_campaign = 1; +} + +// Request message for [CampaignExperimentService.PromoteCampaignExperiment][google.ads.googleads.v8.services.CampaignExperimentService.PromoteCampaignExperiment]. +message PromoteCampaignExperimentRequest { + // Required. The resource name of the campaign experiment to promote. + string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but no Long Running Operation is created. + // Only errors are returned. + bool validate_only = 2; +} + +// Request message for [CampaignExperimentService.EndCampaignExperiment][google.ads.googleads.v8.services.CampaignExperimentService.EndCampaignExperiment]. +message EndCampaignExperimentRequest { + // Required. The resource name of the campaign experiment to end. + string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 2; +} + +// Request message for +// [CampaignExperimentService.ListCampaignExperimentAsyncErrors][google.ads.googleads.v8.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors]. +message ListCampaignExperimentAsyncErrorsRequest { + // Required. The name of the campaign experiment from which to retrieve the async + // errors. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignExperiment" + } + ]; + + // Token of the page to retrieve. If not specified, the first + // page of results will be returned. Use the value obtained from + // `next_page_token` in the previous response in order to request + // the next page of results. + string page_token = 2; + + // Number of elements to retrieve in a single page. + // When a page request is too large, the server may decide to + // further limit the number of returned resources. + int32 page_size = 3; +} + +// Response message for +// [CampaignExperimentService.ListCampaignExperimentAsyncErrors][google.ads.googleads.v8.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors]. +message ListCampaignExperimentAsyncErrorsResponse { + // Details of the errors when performing the asynchronous operation. + repeated google.rpc.Status errors = 1; + + // Pagination token used to retrieve the next page of results. + // Pass the content of this string as the `page_token` attribute of + // the next request. `next_page_token` is not returned for the last + // page. + string next_page_token = 2; +} diff --git a/google/ads/googleads/v8/services/campaign_extension_setting_service.proto b/google/ads/googleads/v8/services/campaign_extension_setting_service.proto new file mode 100644 index 000000000..b794cbd79 --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_extension_setting_service.proto @@ -0,0 +1,182 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/campaign_extension_setting.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExtensionSettingServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the CampaignExtensionSetting service. + +// Service to manage campaign extension settings. +service CampaignExtensionSettingService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign extension setting in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignExtensionSetting(GetCampaignExtensionSettingRequest) returns (google.ads.googleads.v8.resources.CampaignExtensionSetting) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignExtensionSettings/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign extension settings. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [ExtensionSettingError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateCampaignExtensionSettings(MutateCampaignExtensionSettingsRequest) returns (MutateCampaignExtensionSettingsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaignExtensionSettings:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CampaignExtensionSettingService.GetCampaignExtensionSetting][google.ads.googleads.v8.services.CampaignExtensionSettingService.GetCampaignExtensionSetting]. +message GetCampaignExtensionSettingRequest { + // Required. The resource name of the campaign extension setting to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignExtensionSetting" + } + ]; +} + +// Request message for +// [CampaignExtensionSettingService.MutateCampaignExtensionSettings][google.ads.googleads.v8.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings]. +message MutateCampaignExtensionSettingsRequest { + // Required. The ID of the customer whose campaign extension settings are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign extension + // settings. + repeated CampaignExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign extension setting. +message CampaignExtensionSettingOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign + // extension setting. + google.ads.googleads.v8.resources.CampaignExtensionSetting create = 1; + + // Update operation: The campaign extension setting is expected to have a + // valid resource name. + google.ads.googleads.v8.resources.CampaignExtensionSetting update = 2; + + // Remove operation: A resource name for the removed campaign extension + // setting is expected, in this format: + // + // `customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}` + string remove = 3; + } +} + +// Response message for a campaign extension setting mutate. +message MutateCampaignExtensionSettingsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignExtensionSettingResult results = 2; +} + +// The result for the campaign extension setting mutate. +message MutateCampaignExtensionSettingResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign extension setting with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CampaignExtensionSetting campaign_extension_setting = 2; +} diff --git a/google/ads/googleads/v8/services/campaign_feed_service.proto b/google/ads/googleads/v8/services/campaign_feed_service.proto new file mode 100644 index 000000000..72b1c0c80 --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_feed_service.proto @@ -0,0 +1,173 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/campaign_feed.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignFeedServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the CampaignFeed service. + +// Service to manage campaign feeds. +service CampaignFeedService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign feed in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignFeed(GetCampaignFeedRequest) returns (google.ads.googleads.v8.resources.CampaignFeed) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignFeeds/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign feeds. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignFeedError]() + // [CollectionSizeError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FunctionError]() + // [FunctionParsingError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateCampaignFeeds(MutateCampaignFeedsRequest) returns (MutateCampaignFeedsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaignFeeds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignFeedService.GetCampaignFeed][google.ads.googleads.v8.services.CampaignFeedService.GetCampaignFeed]. +message GetCampaignFeedRequest { + // Required. The resource name of the campaign feed to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignFeed" + } + ]; +} + +// Request message for [CampaignFeedService.MutateCampaignFeeds][google.ads.googleads.v8.services.CampaignFeedService.MutateCampaignFeeds]. +message MutateCampaignFeedsRequest { + // Required. The ID of the customer whose campaign feeds are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign feeds. + repeated CampaignFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign feed. +message CampaignFeedOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign feed. + google.ads.googleads.v8.resources.CampaignFeed create = 1; + + // Update operation: The campaign feed is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.CampaignFeed update = 2; + + // Remove operation: A resource name for the removed campaign feed is + // expected, in this format: + // + // `customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id}` + string remove = 3; + } +} + +// Response message for a campaign feed mutate. +message MutateCampaignFeedsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignFeedResult results = 2; +} + +// The result for the campaign feed mutate. +message MutateCampaignFeedResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign feed with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CampaignFeed campaign_feed = 2; +} diff --git a/google/ads/googleads/v8/services/campaign_label_service.proto b/google/ads/googleads/v8/services/campaign_label_service.proto new file mode 100644 index 000000000..b9b7d15b4 --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_label_service.proto @@ -0,0 +1,144 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/campaign_label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignLabelServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Campaign Label service. + +// Service to manage labels on campaigns. +service CampaignLabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign-label relationship in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignLabel(GetCampaignLabelRequest) returns (google.ads.googleads.v8.resources.CampaignLabel) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignLabels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates and removes campaign-label relationships. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [LabelError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCampaignLabels(MutateCampaignLabelsRequest) returns (MutateCampaignLabelsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaignLabels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignLabelService.GetCampaignLabel][google.ads.googleads.v8.services.CampaignLabelService.GetCampaignLabel]. +message GetCampaignLabelRequest { + // Required. The resource name of the campaign-label relationship to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignLabel" + } + ]; +} + +// Request message for [CampaignLabelService.MutateCampaignLabels][google.ads.googleads.v8.services.CampaignLabelService.MutateCampaignLabels]. +message MutateCampaignLabelsRequest { + // Required. ID of the customer whose campaign-label relationships are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on campaign-label relationships. + repeated CampaignLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on a campaign-label relationship. +message CampaignLabelOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign-label + // relationship. + google.ads.googleads.v8.resources.CampaignLabel create = 1; + + // Remove operation: A resource name for the campaign-label relationship + // being removed, in this format: + // + // `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}` + string remove = 2; + } +} + +// Response message for a campaign labels mutate. +message MutateCampaignLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignLabelResult results = 2; +} + +// The result for a campaign label mutate. +message MutateCampaignLabelResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/campaign_service.proto b/google/ads/googleads/v8/services/campaign_service.proto new file mode 100644 index 000000000..61f557c40 --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_service.proto @@ -0,0 +1,183 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/campaign.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Campaign service. + +// Service to manage campaigns. +service CampaignService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaign(GetCampaignRequest) returns (google.ads.googleads.v8.resources.Campaign) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaigns/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaigns. Operation statuses are returned. + // + // List of thrown errors: + // [AdxError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [BiddingError]() + // [BiddingStrategyError]() + // [CampaignBudgetError]() + // [CampaignError]() + // [ContextError]() + // [DatabaseError]() + // [DateError]() + // [DateRangeError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotAllowlistedError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RegionCodeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SettingError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateCampaigns(MutateCampaignsRequest) returns (MutateCampaignsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaigns:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignService.GetCampaign][google.ads.googleads.v8.services.CampaignService.GetCampaign]. +message GetCampaignRequest { + // Required. The resource name of the campaign to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; +} + +// Request message for [CampaignService.MutateCampaigns][google.ads.googleads.v8.services.CampaignService.MutateCampaigns]. +message MutateCampaignsRequest { + // Required. The ID of the customer whose campaigns are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaigns. + repeated CampaignOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign. +message CampaignOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign. + google.ads.googleads.v8.resources.Campaign create = 1; + + // Update operation: The campaign is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.Campaign update = 2; + + // Remove operation: A resource name for the removed campaign is + // expected, in this format: + // + // `customers/{customer_id}/campaigns/{campaign_id}` + string remove = 3; + } +} + +// Response message for campaign mutate. +message MutateCampaignsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignResult results = 2; +} + +// The result for the campaign mutate. +message MutateCampaignResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.Campaign campaign = 2; +} diff --git a/google/ads/googleads/v8/services/campaign_shared_set_service.proto b/google/ads/googleads/v8/services/campaign_shared_set_service.proto new file mode 100644 index 000000000..411bc1ea9 --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_shared_set_service.proto @@ -0,0 +1,164 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/campaign_shared_set.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSharedSetServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Campaign Shared Set service. + +// Service to manage campaign shared sets. +service CampaignSharedSetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign shared set in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignSharedSet(GetCampaignSharedSetRequest) returns (google.ads.googleads.v8.resources.CampaignSharedSet) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignSharedSets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes campaign shared sets. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignSharedSetError]() + // [ContextError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateCampaignSharedSets(MutateCampaignSharedSetsRequest) returns (MutateCampaignSharedSetsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/campaignSharedSets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignSharedSetService.GetCampaignSharedSet][google.ads.googleads.v8.services.CampaignSharedSetService.GetCampaignSharedSet]. +message GetCampaignSharedSetRequest { + // Required. The resource name of the campaign shared set to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignSharedSet" + } + ]; +} + +// Request message for [CampaignSharedSetService.MutateCampaignSharedSets][google.ads.googleads.v8.services.CampaignSharedSetService.MutateCampaignSharedSets]. +message MutateCampaignSharedSetsRequest { + // Required. The ID of the customer whose campaign shared sets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign shared sets. + repeated CampaignSharedSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on an campaign shared set. +message CampaignSharedSetOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign + // shared set. + google.ads.googleads.v8.resources.CampaignSharedSet create = 1; + + // Remove operation: A resource name for the removed campaign shared set is + // expected, in this format: + // + // `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}` + string remove = 3; + } +} + +// Response message for a campaign shared set mutate. +message MutateCampaignSharedSetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignSharedSetResult results = 2; +} + +// The result for the campaign shared set mutate. +message MutateCampaignSharedSetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign shared set with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CampaignSharedSet campaign_shared_set = 2; +} diff --git a/google/ads/googleads/v8/services/campaign_simulation_service.proto b/google/ads/googleads/v8/services/campaign_simulation_service.proto new file mode 100644 index 000000000..a719d0faf --- /dev/null +++ b/google/ads/googleads/v8/services/campaign_simulation_service.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/campaign_simulation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSimulationServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the CampaignSimulation service. + +// Service to fetch campaign simulations. +service CampaignSimulationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign simulation in full detail. + rpc GetCampaignSimulation(GetCampaignSimulationRequest) returns (google.ads.googleads.v8.resources.CampaignSimulation) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/campaignSimulations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [CampaignSimulationService.GetCampaignSimulation][google.ads.googleads.v8.services.CampaignSimulationService.GetCampaignSimulation]. +message GetCampaignSimulationRequest { + // Required. The resource name of the campaign simulation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignSimulation" + } + ]; +} diff --git a/google/ads/googleads/v8/services/carrier_constant_service.proto b/google/ads/googleads/v8/services/carrier_constant_service.proto new file mode 100644 index 000000000..79120af02 --- /dev/null +++ b/google/ads/googleads/v8/services/carrier_constant_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/carrier_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CarrierConstantServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the carrier constant service. + +// Service to fetch carrier constants. +service CarrierConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested carrier constant in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCarrierConstant(GetCarrierConstantRequest) returns (google.ads.googleads.v8.resources.CarrierConstant) { + option (google.api.http) = { + get: "/v8/{resource_name=carrierConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CarrierConstantService.GetCarrierConstant][google.ads.googleads.v8.services.CarrierConstantService.GetCarrierConstant]. +message GetCarrierConstantRequest { + // Required. Resource name of the carrier constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CarrierConstant" + } + ]; +} diff --git a/google/ads/googleads/v8/services/change_status_service.proto b/google/ads/googleads/v8/services/change_status_service.proto new file mode 100644 index 000000000..23da01fda --- /dev/null +++ b/google/ads/googleads/v8/services/change_status_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/change_status.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ChangeStatusServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Change Status service. + +// Service to fetch change statuses. +service ChangeStatusService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested change status in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetChangeStatus(GetChangeStatusRequest) returns (google.ads.googleads.v8.resources.ChangeStatus) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/changeStatus/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for '[ChangeStatusService.GetChangeStatus][google.ads.googleads.v8.services.ChangeStatusService.GetChangeStatus]'. +message GetChangeStatusRequest { + // Required. The resource name of the change status to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ChangeStatus" + } + ]; +} diff --git a/google/ads/googleads/v8/services/click_view_service.proto b/google/ads/googleads/v8/services/click_view_service.proto new file mode 100644 index 000000000..5d4af7427 --- /dev/null +++ b/google/ads/googleads/v8/services/click_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/click_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ClickViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the ClickView service. + +// Service to fetch click views. +service ClickViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested click view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetClickView(GetClickViewRequest) returns (google.ads.googleads.v8.resources.ClickView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/clickViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [ClickViewService.GetClickView][google.ads.googleads.v8.services.ClickViewService.GetClickView]. +message GetClickViewRequest { + // Required. The resource name of the click view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ClickView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/combined_audience_service.proto b/google/ads/googleads/v8/services/combined_audience_service.proto new file mode 100644 index 000000000..56f712d43 --- /dev/null +++ b/google/ads/googleads/v8/services/combined_audience_service.proto @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/combined_audience.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CombinedAudienceServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Combined Audience service. + +// Service to manage combined audiences. This service can be used to list all +// your combined audiences with metadata, but won't show the structure and +// components of the combined audience. +service CombinedAudienceService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested combined audience in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCombinedAudience(GetCombinedAudienceRequest) returns (google.ads.googleads.v8.resources.CombinedAudience) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/combinedAudiences/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CombinedAudienceService.GetCombinedAudience][google.ads.googleads.v8.services.CombinedAudienceService.GetCombinedAudience]. +message GetCombinedAudienceRequest { + // Required. The resource name of the combined audience to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CombinedAudience" + } + ]; +} diff --git a/google/ads/googleads/v8/services/conversion_action_service.proto b/google/ads/googleads/v8/services/conversion_action_service.proto new file mode 100644 index 000000000..006793f5c --- /dev/null +++ b/google/ads/googleads/v8/services/conversion_action_service.proto @@ -0,0 +1,167 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/conversion_action.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Conversion Action service. + +// Service to manage conversion actions. +service ConversionActionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested conversion action. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetConversionAction(GetConversionActionRequest) returns (google.ads.googleads.v8.resources.ConversionAction) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/conversionActions/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates or removes conversion actions. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ConversionActionError]() + // [CurrencyCodeError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [StringLengthError]() + rpc MutateConversionActions(MutateConversionActionsRequest) returns (MutateConversionActionsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/conversionActions:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [ConversionActionService.GetConversionAction][google.ads.googleads.v8.services.ConversionActionService.GetConversionAction]. +message GetConversionActionRequest { + // Required. The resource name of the conversion action to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionAction" + } + ]; +} + +// Request message for [ConversionActionService.MutateConversionActions][google.ads.googleads.v8.services.ConversionActionService.MutateConversionActions]. +message MutateConversionActionsRequest { + // Required. The ID of the customer whose conversion actions are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual conversion actions. + repeated ConversionActionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a conversion action. +message ConversionActionOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new conversion + // action. + google.ads.googleads.v8.resources.ConversionAction create = 1; + + // Update operation: The conversion action is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.ConversionAction update = 2; + + // Remove operation: A resource name for the removed conversion action is + // expected, in this format: + // + // `customers/{customer_id}/conversionActions/{conversion_action_id}` + string remove = 3; + } +} + +// Response message for [ConversionActionService.MutateConversionActions][google.ads.googleads.v8.services.ConversionActionService.MutateConversionActions]. +message MutateConversionActionsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateConversionActionResult results = 2; +} + +// The result for the conversion action mutate. +message MutateConversionActionResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated conversion action with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.ConversionAction conversion_action = 2; +} diff --git a/google/ads/googleads/v8/services/conversion_adjustment_upload_service.proto b/google/ads/googleads/v8/services/conversion_adjustment_upload_service.proto new file mode 100644 index 000000000..d046f8062 --- /dev/null +++ b/google/ads/googleads/v8/services/conversion_adjustment_upload_service.proto @@ -0,0 +1,203 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/offline_user_data.proto"; +import "google/ads/googleads/v8/enums/conversion_adjustment_type.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionAdjustmentUploadServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Service to upload conversion adjustments. +service ConversionAdjustmentUploadService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Processes the given conversion adjustments. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [PartialFailureError]() + // [QuotaError]() + // [RequestError]() + rpc UploadConversionAdjustments(UploadConversionAdjustmentsRequest) returns (UploadConversionAdjustmentsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}:uploadConversionAdjustments" + body: "*" + }; + option (google.api.method_signature) = "customer_id,conversion_adjustments,partial_failure"; + } +} + +// Request message for +// [ConversionAdjustmentUploadService.UploadConversionAdjustments][google.ads.googleads.v8.services.ConversionAdjustmentUploadService.UploadConversionAdjustments]. +message UploadConversionAdjustmentsRequest { + // Required. The ID of the customer performing the upload. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The conversion adjustments that are being uploaded. + repeated ConversionAdjustment conversion_adjustments = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried out + // in one transaction if and only if they are all valid. This should always be + // set to true. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// Response message for +// [ConversionAdjustmentUploadService.UploadConversionAdjustments][google.ads.googleads.v8.services.ConversionAdjustmentUploadService.UploadConversionAdjustments]. +message UploadConversionAdjustmentsResponse { + // Errors that pertain to conversion adjustment failures in the partial + // failure mode. Returned when all errors occur inside the adjustments. If any + // errors occur outside the adjustments (e.g. auth errors), we return an RPC + // level error. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + google.rpc.Status partial_failure_error = 1; + + // Returned for successfully processed conversion adjustments. Proto will be + // empty for rows that received an error. Results are not returned when + // validate_only is true. + repeated ConversionAdjustmentResult results = 2; +} + +// A conversion adjustment. +message ConversionAdjustment { + // Resource name of the conversion action associated with this conversion + // adjustment. Note: Although this resource name consists of a customer id and + // a conversion action id, validation will ignore the customer id and use the + // conversion action id as the sole identifier of the conversion action. + optional string conversion_action = 8; + + // The date time at which the adjustment occurred. Must be after the + // conversion_date_time. The timezone must be specified. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string adjustment_date_time = 9; + + // The adjustment type. + google.ads.googleads.v8.enums.ConversionAdjustmentTypeEnum.ConversionAdjustmentType adjustment_type = 5; + + // Information needed to restate the conversion's value. + // Required for restatements. Should not be supplied for retractions. An error + // will be returned if provided for a retraction. + // NOTE: If you want to upload a second restatement with a different adjusted + // value, it must have a new, more recent, adjustment occurrence time. + // Otherwise, it will be treated as a duplicate of the previous restatement + // and ignored. + RestatementValue restatement_value = 6; + + // The user identifiers to enhance the original conversion. + // ConversionAdjustmentUploadService only accepts user identifiers in + // enhancements. The maximum number of user identifiers for each + // enhancement is 5. + repeated google.ads.googleads.v8.common.UserIdentifier user_identifiers = 10; + + // The user agent to enhance the original conversion. This can be found in + // your user's HTTP request header when they convert on your web page. + // Example, "Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X)". User + // agent can only be specified in enhancements with user identifiers. + optional string user_agent = 11; + + // Identifies the conversion to be adjusted. + oneof conversion_identifier { + // Uniquely identifies a conversion that was reported without an order ID + // specified. + GclidDateTimePair gclid_date_time_pair = 1; + + // The order ID of the conversion to be adjusted. If the conversion was + // reported with an order ID specified, that order ID must be used as the + // identifier here. The order ID is required for enhancements. + string order_id = 7; + } +} + +// Contains information needed to restate a conversion's value. +message RestatementValue { + // The restated conversion value. This is the value of the conversion after + // restatement. For example, to change the value of a conversion from 100 to + // 70, an adjusted value of 70 should be reported. + // NOTE: If you want to upload a second restatement with a different adjusted + // value, it must have a new, more recent, adjustment occurrence time. + // Otherwise, it will be treated as a duplicate of the previous restatement + // and ignored. + optional double adjusted_value = 3; + + // The currency of the restated value. If not provided, then the default + // currency from the conversion action is used, and if that is not set then + // the account currency is used. This is the ISO 4217 3-character currency + // code e.g. USD or EUR. + optional string currency_code = 4; +} + +// Uniquely identifies a conversion that was reported without an order ID +// specified. +message GclidDateTimePair { + // Google click ID (gclid) associated with the original conversion for this + // adjustment. + optional string gclid = 3; + + // The date time at which the original conversion for this adjustment + // occurred. The timezone must be specified. The format is "yyyy-mm-dd + // hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string conversion_date_time = 4; +} + +// Information identifying a successfully processed ConversionAdjustment. +message ConversionAdjustmentResult { + // Resource name of the conversion action associated with this conversion + // adjustment. + optional string conversion_action = 7; + + // The date time at which the adjustment occurred. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string adjustment_date_time = 8; + + // The adjustment type. + google.ads.googleads.v8.enums.ConversionAdjustmentTypeEnum.ConversionAdjustmentType adjustment_type = 5; + + // Identifies the conversion that was adjusted. + oneof conversion_identifier { + // Uniquely identifies a conversion that was reported without an order ID + // specified. + GclidDateTimePair gclid_date_time_pair = 1; + + // The order ID of the conversion that was adjusted. + string order_id = 6; + } +} diff --git a/google/ads/googleads/v8/services/conversion_custom_variable_service.proto b/google/ads/googleads/v8/services/conversion_custom_variable_service.proto new file mode 100644 index 000000000..b503e59be --- /dev/null +++ b/google/ads/googleads/v8/services/conversion_custom_variable_service.proto @@ -0,0 +1,158 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/conversion_custom_variable.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionCustomVariableServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Conversion Custom Variable service. + +// Service to manage conversion custom variables. +service ConversionCustomVariableService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested conversion custom variable. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetConversionCustomVariable(GetConversionCustomVariableRequest) returns (google.ads.googleads.v8.resources.ConversionCustomVariable) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/conversionCustomVariables/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates conversion custom variables. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ConversionCustomVariableError]() + // [DatabaseError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateConversionCustomVariables(MutateConversionCustomVariablesRequest) returns (MutateConversionCustomVariablesResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/conversionCustomVariables:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [ConversionCustomVariableService.GetConversionCustomVariable][google.ads.googleads.v8.services.ConversionCustomVariableService.GetConversionCustomVariable]. +message GetConversionCustomVariableRequest { + // Required. The resource name of the conversion custom variable to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionCustomVariable" + } + ]; +} + +// Request message for +// [ConversionCustomVariableService.MutateConversionCustomVariables][google.ads.googleads.v8.services.ConversionCustomVariableService.MutateConversionCustomVariables]. +message MutateConversionCustomVariablesRequest { + // Required. The ID of the customer whose conversion custom variables are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual conversion custom + // variables. + repeated ConversionCustomVariableOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update) on a conversion custom variable. +message ConversionCustomVariableOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 3; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new conversion + // custom variable. + google.ads.googleads.v8.resources.ConversionCustomVariable create = 1; + + // Update operation: The conversion custom variable is expected to have a + // valid resource name. + google.ads.googleads.v8.resources.ConversionCustomVariable update = 2; + } +} + +// Response message for +// [ConversionCustomVariableService.MutateConversionCustomVariables][google.ads.googleads.v8.services.ConversionCustomVariableService.MutateConversionCustomVariables]. +message MutateConversionCustomVariablesResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; + + // All results for the mutate. + repeated MutateConversionCustomVariableResult results = 2; +} + +// The result for the conversion custom variable mutate. +message MutateConversionCustomVariableResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated conversion custom variable with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.ConversionCustomVariable conversion_custom_variable = 2; +} diff --git a/google/ads/googleads/v8/services/conversion_upload_service.proto b/google/ads/googleads/v8/services/conversion_upload_service.proto new file mode 100644 index 000000000..c38f77cca --- /dev/null +++ b/google/ads/googleads/v8/services/conversion_upload_service.proto @@ -0,0 +1,327 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/offline_user_data.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionUploadServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Service to upload conversions. +service ConversionUploadService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Processes the given click conversions. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ConversionUploadError]() + // [HeaderError]() + // [InternalError]() + // [PartialFailureError]() + // [QuotaError]() + // [RequestError]() + rpc UploadClickConversions(UploadClickConversionsRequest) returns (UploadClickConversionsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}:uploadClickConversions" + body: "*" + }; + option (google.api.method_signature) = "customer_id,conversions,partial_failure"; + } + + // Processes the given call conversions. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [PartialFailureError]() + // [QuotaError]() + // [RequestError]() + rpc UploadCallConversions(UploadCallConversionsRequest) returns (UploadCallConversionsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}:uploadCallConversions" + body: "*" + }; + option (google.api.method_signature) = "customer_id,conversions,partial_failure"; + } +} + +// Request message for [ConversionUploadService.UploadClickConversions][google.ads.googleads.v8.services.ConversionUploadService.UploadClickConversions]. +message UploadClickConversionsRequest { + // Required. The ID of the customer performing the upload. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The conversions that are being uploaded. + repeated ClickConversion conversions = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // This should always be set to true. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// Response message for [ConversionUploadService.UploadClickConversions][google.ads.googleads.v8.services.ConversionUploadService.UploadClickConversions]. +message UploadClickConversionsResponse { + // Errors that pertain to conversion failures in the partial failure mode. + // Returned when all errors occur inside the conversions. If any errors occur + // outside the conversions (e.g. auth errors), we return an RPC level error. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + google.rpc.Status partial_failure_error = 1; + + // Returned for successfully processed conversions. Proto will be empty for + // rows that received an error. Results are not returned when validate_only is + // true. + repeated ClickConversionResult results = 2; +} + +// Request message for [ConversionUploadService.UploadCallConversions][google.ads.googleads.v8.services.ConversionUploadService.UploadCallConversions]. +message UploadCallConversionsRequest { + // Required. The ID of the customer performing the upload. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The conversions that are being uploaded. + repeated CallConversion conversions = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // This should always be set to true. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// Response message for [ConversionUploadService.UploadCallConversions][google.ads.googleads.v8.services.ConversionUploadService.UploadCallConversions]. +message UploadCallConversionsResponse { + // Errors that pertain to conversion failures in the partial failure mode. + // Returned when all errors occur inside the conversions. If any errors occur + // outside the conversions (e.g. auth errors), we return an RPC level error. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + google.rpc.Status partial_failure_error = 1; + + // Returned for successfully processed conversions. Proto will be empty for + // rows that received an error. Results are not returned when validate_only is + // true. + repeated CallConversionResult results = 2; +} + +// A click conversion. +message ClickConversion { + // The Google click ID (gclid) associated with this conversion. + optional string gclid = 9; + + // Resource name of the conversion action associated with this conversion. + // Note: Although this resource name consists of a customer id and a + // conversion action id, validation will ignore the customer id and use the + // conversion action id as the sole identifier of the conversion action. + optional string conversion_action = 10; + + // The date time at which the conversion occurred. Must be after + // the click time. The timezone must be specified. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. “2019-01-01 12:32:45-08:00”. + optional string conversion_date_time = 11; + + // The value of the conversion for the advertiser. + optional double conversion_value = 12; + + // Currency associated with the conversion value. This is the ISO 4217 + // 3-character currency code. For example: USD, EUR. + optional string currency_code = 13; + + // The order ID associated with the conversion. An order id can only be used + // for one conversion per conversion action. + optional string order_id = 14; + + // Additional data about externally attributed conversions. This field + // is required for conversions with an externally attributed conversion + // action, but should not be set otherwise. + ExternalAttributionData external_attribution_data = 7; + + // The custom variables associated with this conversion. + repeated CustomVariable custom_variables = 15; + + // The cart data associated with this conversion. + CartData cart_data = 16; + + // The user identifiers associated with this conversion. Only hashed_email and + // hashed_phone_number are supported for conversion uploads. The maximum + // number of user identifiers for each conversion is 5. + repeated google.ads.googleads.v8.common.UserIdentifier user_identifiers = 17; +} + +// A call conversion. +message CallConversion { + // The caller id from which this call was placed. Caller id is expected to be + // in E.164 format with preceding '+' sign. e.g. "+16502531234". + optional string caller_id = 7; + + // The date time at which the call occurred. The timezone must be specified. + // The format is "yyyy-mm-dd hh:mm:ss+|-hh:mm", + // e.g. "2019-01-01 12:32:45-08:00". + optional string call_start_date_time = 8; + + // Resource name of the conversion action associated with this conversion. + // Note: Although this resource name consists of a customer id and a + // conversion action id, validation will ignore the customer id and use the + // conversion action id as the sole identifier of the conversion action. + optional string conversion_action = 9; + + // The date time at which the conversion occurred. Must be after the call + // time. The timezone must be specified. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string conversion_date_time = 10; + + // The value of the conversion for the advertiser. + optional double conversion_value = 11; + + // Currency associated with the conversion value. This is the ISO 4217 + // 3-character currency code. For example: USD, EUR. + optional string currency_code = 12; + + // The custom variables associated with this conversion. + repeated CustomVariable custom_variables = 13; +} + +// Contains additional information about externally attributed conversions. +message ExternalAttributionData { + // Represents the fraction of the conversion that is attributed to the + // Google Ads click. + optional double external_attribution_credit = 3; + + // Specifies the attribution model name. + optional string external_attribution_model = 4; +} + +// Identifying information for a successfully processed ClickConversion. +message ClickConversionResult { + // The Google Click ID (gclid) associated with this conversion. + optional string gclid = 4; + + // Resource name of the conversion action associated with this conversion. + optional string conversion_action = 5; + + // The date time at which the conversion occurred. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. “2019-01-01 12:32:45-08:00”. + optional string conversion_date_time = 6; + + // The user identifiers associated with this conversion. Only hashed_email and + // hashed_phone_number are supported for conversion uploads. The maximum + // number of user identifiers for each conversion is 5. + repeated google.ads.googleads.v8.common.UserIdentifier user_identifiers = 7; +} + +// Identifying information for a successfully processed CallConversionUpload. +message CallConversionResult { + // The caller id from which this call was placed. Caller id is expected to be + // in E.164 format with preceding '+' sign. + optional string caller_id = 5; + + // The date time at which the call occurred. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string call_start_date_time = 6; + + // Resource name of the conversion action associated with this conversion. + optional string conversion_action = 7; + + // The date time at which the conversion occurred. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string conversion_date_time = 8; +} + +// A custom variable. +message CustomVariable { + // Resource name of the custom variable associated with this conversion. + // Note: Although this resource name consists of a customer id and a + // conversion custom variable id, validation will ignore the customer id and + // use the conversion custom variable id as the sole identifier of the + // conversion custom variable. + string conversion_custom_variable = 1 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionCustomVariable" + }]; + + // The value string of this custom variable. + // The value of the custom variable should not contain private customer data, + // such as email addresses or phone numbers. + string value = 2; +} + +// Contains additional information about cart data. +message CartData { + // Contains data of the items purchased. + message Item { + // The shopping id of the item. Must be equal to the Merchant Center product + // identifier. + string product_id = 1; + + // Number of items sold. + int32 quantity = 2; + + // Unit price excluding tax, shipping, and any transaction + // level discounts. The currency code is the same as that in the + // ClickConversion message. + double unit_price = 3; + } + + // The Merchant Center ID where the items are uploaded. + string merchant_id = 1; + + // The country code associated with the feed where the items are uploaded. + string feed_country_code = 2; + + // The language code associated with the feed where the items are uploaded. + string feed_language_code = 3; + + // Sum of all transaction level discounts, such as free shipping and + // coupon discounts for the whole cart. The currency code is the same + // as that in the ClickConversion message. + double local_transaction_cost = 4; + + // Data of the items purchased. + repeated Item items = 5; +} diff --git a/google/ads/googleads/v8/services/conversion_value_rule_service.proto b/google/ads/googleads/v8/services/conversion_value_rule_service.proto new file mode 100644 index 000000000..83509163b --- /dev/null +++ b/google/ads/googleads/v8/services/conversion_value_rule_service.proto @@ -0,0 +1,144 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/conversion_value_rule.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Conversion Value Rule service. + +// Service to manage conversion value rules. +service ConversionValueRuleService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested conversion value rule. + rpc GetConversionValueRule(GetConversionValueRuleRequest) returns (google.ads.googleads.v8.resources.ConversionValueRule) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/conversionValueRules/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes conversion value rules. Operation statuses are + // returned. + rpc MutateConversionValueRules(MutateConversionValueRulesRequest) returns (MutateConversionValueRulesResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/conversionValueRules:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [ConversionValueRuleService.GetConversionValueRule][google.ads.googleads.v8.services.ConversionValueRuleService.GetConversionValueRule]. +message GetConversionValueRuleRequest { + // Required. The resource name of the conversion value rule to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionValueRule" + } + ]; +} + +// Request message for +// [ConversionValueRuleService.MutateConversionValueRules][google.ads.googleads.v8.services.ConversionValueRuleService.MutateConversionValueRules]. +message MutateConversionValueRulesRequest { + // Required. The ID of the customer whose conversion value rules are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual conversion value rules. + repeated ConversionValueRuleOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 5; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 4; +} + +// A single operation (create, update, remove) on a conversion value rule. +message ConversionValueRuleOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new conversion + // value rule. + google.ads.googleads.v8.resources.ConversionValueRule create = 1; + + // Update operation: The conversion value rule is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.ConversionValueRule update = 2; + + // Remove operation: A resource name for the removed conversion value rule + // is expected, in this format: + // + // `customers/{customer_id}/conversionValueRules/{conversion_value_rule_id}` + string remove = 3; + } +} + +// Response message for +// [ConversionValueRuleService.MutateConversionValueRules][google.ads.googleads.v8.services.ConversionValueRuleService.MutateConversionValueRules]. +message MutateConversionValueRulesResponse { + // All results for the mutate. + repeated MutateConversionValueRuleResult results = 2; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; +} + +// The result for the conversion value rule mutate. +message MutateConversionValueRuleResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated conversion value rule with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.ConversionValueRule conversion_value_rule = 2; +} diff --git a/google/ads/googleads/v8/services/conversion_value_rule_set_service.proto b/google/ads/googleads/v8/services/conversion_value_rule_set_service.proto new file mode 100644 index 000000000..bca6666cc --- /dev/null +++ b/google/ads/googleads/v8/services/conversion_value_rule_set_service.proto @@ -0,0 +1,144 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/conversion_value_rule_set.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleSetServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Conversion Value Rule Set service. + +// Service to manage conversion value rule sets. +service ConversionValueRuleSetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested conversion value rule set. + rpc GetConversionValueRuleSet(GetConversionValueRuleSetRequest) returns (google.ads.googleads.v8.resources.ConversionValueRuleSet) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/conversionValueRuleSets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates or removes conversion value rule sets. Operation statuses + // are returned. + rpc MutateConversionValueRuleSets(MutateConversionValueRuleSetsRequest) returns (MutateConversionValueRuleSetsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/conversionValueRuleSets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [ConversionValueRuleSetService.GetConversionValueRuleSet][google.ads.googleads.v8.services.ConversionValueRuleSetService.GetConversionValueRuleSet]. +message GetConversionValueRuleSetRequest { + // Required. The resource name of the conversion value rule set to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionValueRuleSet" + } + ]; +} + +// Request message for +// [ConversionValueRuleSetService.MutateConversionValueRuleSets][google.ads.googleads.v8.services.ConversionValueRuleSetService.MutateConversionValueRuleSets]. +message MutateConversionValueRuleSetsRequest { + // Required. The ID of the customer whose conversion value rule sets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual conversion value rule sets. + repeated ConversionValueRuleSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 5; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 4; +} + +// A single operation (create, update, remove) on a conversion value rule set. +message ConversionValueRuleSetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new conversion + // value rule set. + google.ads.googleads.v8.resources.ConversionValueRuleSet create = 1; + + // Update operation: The conversion value rule set is expected to have a + // valid resource name. + google.ads.googleads.v8.resources.ConversionValueRuleSet update = 2; + + // Remove operation: A resource name for the removed conversion value rule + // set is expected, in this format: + // + // `customers/{customer_id}/conversionValueRuleSets/{conversion_value_rule_set_id}` + string remove = 3; + } +} + +// Response message for +// [ConversionValueRuleSetService.MutateConversionValueRuleSets][google.ads.googleads.v8.services.ConversionValueRuleSetService.MutateConversionValueRuleSets]. +message MutateConversionValueRuleSetsResponse { + // All results for the mutate. + repeated MutateConversionValueRuleSetResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the conversion value rule set mutate. +message MutateConversionValueRuleSetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated conversion value rule set with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.ConversionValueRuleSet conversion_value_rule_set = 2; +} diff --git a/google/ads/googleads/v8/services/currency_constant_service.proto b/google/ads/googleads/v8/services/currency_constant_service.proto new file mode 100644 index 000000000..58f9fa589 --- /dev/null +++ b/google/ads/googleads/v8/services/currency_constant_service.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/currency_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CurrencyConstantServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Service to fetch currency constants. +service CurrencyConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested currency constant. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCurrencyConstant(GetCurrencyConstantRequest) returns (google.ads.googleads.v8.resources.CurrencyConstant) { + option (google.api.http) = { + get: "/v8/{resource_name=currencyConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CurrencyConstantService.GetCurrencyConstant][google.ads.googleads.v8.services.CurrencyConstantService.GetCurrencyConstant]. +message GetCurrencyConstantRequest { + // Required. Resource name of the currency constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CurrencyConstant" + } + ]; +} diff --git a/google/ads/googleads/v8/services/custom_audience_service.proto b/google/ads/googleads/v8/services/custom_audience_service.proto new file mode 100644 index 000000000..99c508621 --- /dev/null +++ b/google/ads/googleads/v8/services/custom_audience_service.proto @@ -0,0 +1,140 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/custom_audience.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Custom Audience service. + +// Service to manage custom audiences. +service CustomAudienceService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested custom audience in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomAudience(GetCustomAudienceRequest) returns (google.ads.googleads.v8.resources.CustomAudience) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customAudiences/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates custom audiences. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CustomAudienceError]() + // [CustomInterestError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [OperationAccessDeniedError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomAudiences(MutateCustomAudiencesRequest) returns (MutateCustomAudiencesResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customAudiences:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CustomAudienceService.GetCustomAudience][google.ads.googleads.v8.services.CustomAudienceService.GetCustomAudience]. +message GetCustomAudienceRequest { + // Required. The resource name of the custom audience to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomAudience" + } + ]; +} + +// Request message for [CustomAudienceService.MutateCustomAudiences][google.ads.googleads.v8.services.CustomAudienceService.MutateCustomAudiences]. +message MutateCustomAudiencesRequest { + // Required. The ID of the customer whose custom audiences are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual custom audiences. + repeated CustomAudienceOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single operation (create, update) on a custom audience. +message CustomAudienceOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new custom + // audience. + google.ads.googleads.v8.resources.CustomAudience create = 1; + + // Update operation: The custom audience is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.CustomAudience update = 2; + + // Remove operation: A resource name for the removed custom audience is + // expected, in this format: + // + // `customers/{customer_id}/customAudiences/{custom_audience_id}` + string remove = 3; + } +} + +// Response message for custom audience mutate. +message MutateCustomAudiencesResponse { + // All results for the mutate. + repeated MutateCustomAudienceResult results = 1; +} + +// The result for the custom audience mutate. +message MutateCustomAudienceResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/custom_interest_service.proto b/google/ads/googleads/v8/services/custom_interest_service.proto new file mode 100644 index 000000000..2b8b8fc84 --- /dev/null +++ b/google/ads/googleads/v8/services/custom_interest_service.proto @@ -0,0 +1,132 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/custom_interest.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Custom Interest service. + +// Service to manage custom interests. +service CustomInterestService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested custom interest in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomInterest(GetCustomInterestRequest) returns (google.ads.googleads.v8.resources.CustomInterest) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customInterests/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates custom interests. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CriterionError]() + // [CustomInterestError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RequestError]() + // [StringLengthError]() + rpc MutateCustomInterests(MutateCustomInterestsRequest) returns (MutateCustomInterestsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customInterests:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CustomInterestService.GetCustomInterest][google.ads.googleads.v8.services.CustomInterestService.GetCustomInterest]. +message GetCustomInterestRequest { + // Required. The resource name of the custom interest to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomInterest" + } + ]; +} + +// Request message for [CustomInterestService.MutateCustomInterests][google.ads.googleads.v8.services.CustomInterestService.MutateCustomInterests]. +message MutateCustomInterestsRequest { + // Required. The ID of the customer whose custom interests are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual custom interests. + repeated CustomInterestOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update) on a custom interest. +message CustomInterestOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new custom + // interest. + google.ads.googleads.v8.resources.CustomInterest create = 1; + + // Update operation: The custom interest is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.CustomInterest update = 2; + } +} + +// Response message for custom interest mutate. +message MutateCustomInterestsResponse { + // All results for the mutate. + repeated MutateCustomInterestResult results = 2; +} + +// The result for the custom interest mutate. +message MutateCustomInterestResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/customer_asset_service.proto b/google/ads/googleads/v8/services/customer_asset_service.proto new file mode 100644 index 000000000..3317dfb3b --- /dev/null +++ b/google/ads/googleads/v8/services/customer_asset_service.proto @@ -0,0 +1,160 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/customer_asset.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerAssetServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the CustomerAsset service. + +// Service to manage customer assets. +service CustomerAssetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested customer asset in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerAsset(GetCustomerAssetRequest) returns (google.ads.googleads.v8.resources.CustomerAsset) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customerAssets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes customer assets. Operation statuses are + // returned. + // + // List of thrown errors: + // [AssetLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerAssets(MutateCustomerAssetsRequest) returns (MutateCustomerAssetsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customerAssets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CustomerAssetService.GetCustomerAsset][google.ads.googleads.v8.services.CustomerAssetService.GetCustomerAsset]. +message GetCustomerAssetRequest { + // Required. The resource name of the customer asset to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerAsset" + } + ]; +} + +// Request message for [CustomerAssetService.MutateCustomerAssets][google.ads.googleads.v8.services.CustomerAssetService.MutateCustomerAssets]. +message MutateCustomerAssetsRequest { + // Required. The ID of the customer whose customer assets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual customer assets. + repeated CustomerAssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a customer asset. +message CustomerAssetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new customer + // asset. + google.ads.googleads.v8.resources.CustomerAsset create = 1; + + // Update operation: The customer asset is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.CustomerAsset update = 3; + + // Remove operation: A resource name for the removed customer asset is + // expected, in this format: + // + // `customers/{customer_id}/customerAssets/{asset_id}~{field_type}` + string remove = 2; + } +} + +// Response message for a customer asset mutate. +message MutateCustomerAssetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; + + // All results for the mutate. + repeated MutateCustomerAssetResult results = 2; +} + +// The result for the customer asset mutate. +message MutateCustomerAssetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated customer asset with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CustomerAsset customer_asset = 2; +} diff --git a/google/ads/googleads/v8/services/customer_client_link_service.proto b/google/ads/googleads/v8/services/customer_client_link_service.proto new file mode 100644 index 000000000..8eb35596b --- /dev/null +++ b/google/ads/googleads/v8/services/customer_client_link_service.proto @@ -0,0 +1,129 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/customer_client_link.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientLinkServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Service to manage customer client links. +service CustomerClientLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested CustomerClientLink in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerClientLink(GetCustomerClientLinkRequest) returns (google.ads.googleads.v8.resources.CustomerClientLink) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customerClientLinks/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates a customer client link. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [ManagerLinkError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerClientLink(MutateCustomerClientLinkRequest) returns (MutateCustomerClientLinkResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customerClientLinks:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for [CustomerClientLinkService.GetCustomerClientLink][google.ads.googleads.v8.services.CustomerClientLinkService.GetCustomerClientLink]. +message GetCustomerClientLinkRequest { + // Required. The resource name of the customer client link to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerClientLink" + } + ]; +} + +// Request message for [CustomerClientLinkService.MutateCustomerClientLink][google.ads.googleads.v8.services.CustomerClientLinkService.MutateCustomerClientLink]. +message MutateCustomerClientLinkRequest { + // Required. The ID of the customer whose customer link are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the individual CustomerClientLink. + CustomerClientLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single operation (create, update) on a CustomerClientLink. +message CustomerClientLinkOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new link. + google.ads.googleads.v8.resources.CustomerClientLink create = 1; + + // Update operation: The link is expected to have a valid resource name. + google.ads.googleads.v8.resources.CustomerClientLink update = 2; + } +} + +// Response message for a CustomerClientLink mutate. +message MutateCustomerClientLinkResponse { + // A result that identifies the resource affected by the mutate request. + MutateCustomerClientLinkResult result = 1; +} + +// The result for a single customer client link mutate. +message MutateCustomerClientLinkResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/customer_client_service.proto b/google/ads/googleads/v8/services/customer_client_service.proto new file mode 100644 index 000000000..753f47461 --- /dev/null +++ b/google/ads/googleads/v8/services/customer_client_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/customer_client.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Customer Client service. + +// Service to get clients in a customer's hierarchy. +service CustomerClientService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested client in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerClient(GetCustomerClientRequest) returns (google.ads.googleads.v8.resources.CustomerClient) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customerClients/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CustomerClientService.GetCustomerClient][google.ads.googleads.v8.services.CustomerClientService.GetCustomerClient]. +message GetCustomerClientRequest { + // Required. The resource name of the client to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerClient" + } + ]; +} diff --git a/google/ads/googleads/v8/services/customer_extension_setting_service.proto b/google/ads/googleads/v8/services/customer_extension_setting_service.proto new file mode 100644 index 000000000..6784b1712 --- /dev/null +++ b/google/ads/googleads/v8/services/customer_extension_setting_service.proto @@ -0,0 +1,180 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/customer_extension_setting.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerExtensionSettingServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the CustomerExtensionSetting service. + +// Service to manage customer extension settings. +service CustomerExtensionSettingService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested customer extension setting in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerExtensionSetting(GetCustomerExtensionSettingRequest) returns (google.ads.googleads.v8.resources.CustomerExtensionSetting) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customerExtensionSettings/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes customer extension settings. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [ExtensionSettingError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateCustomerExtensionSettings(MutateCustomerExtensionSettingsRequest) returns (MutateCustomerExtensionSettingsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customerExtensionSettings:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CustomerExtensionSettingService.GetCustomerExtensionSetting][google.ads.googleads.v8.services.CustomerExtensionSettingService.GetCustomerExtensionSetting]. +message GetCustomerExtensionSettingRequest { + // Required. The resource name of the customer extension setting to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerExtensionSetting" + } + ]; +} + +// Request message for +// [CustomerExtensionSettingService.MutateCustomerExtensionSettings][google.ads.googleads.v8.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings]. +message MutateCustomerExtensionSettingsRequest { + // Required. The ID of the customer whose customer extension settings are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual customer extension + // settings. + repeated CustomerExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a customer extension setting. +message CustomerExtensionSettingOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new customer + // extension setting. + google.ads.googleads.v8.resources.CustomerExtensionSetting create = 1; + + // Update operation: The customer extension setting is expected to have a + // valid resource name. + google.ads.googleads.v8.resources.CustomerExtensionSetting update = 2; + + // Remove operation: A resource name for the removed customer extension + // setting is expected, in this format: + // + // `customers/{customer_id}/customerExtensionSettings/{extension_type}` + string remove = 3; + } +} + +// Response message for a customer extension setting mutate. +message MutateCustomerExtensionSettingsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCustomerExtensionSettingResult results = 2; +} + +// The result for the customer extension setting mutate. +message MutateCustomerExtensionSettingResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated CustomerExtensionSetting with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CustomerExtensionSetting customer_extension_setting = 2; +} diff --git a/google/ads/googleads/v8/services/customer_feed_service.proto b/google/ads/googleads/v8/services/customer_feed_service.proto new file mode 100644 index 000000000..e13168cab --- /dev/null +++ b/google/ads/googleads/v8/services/customer_feed_service.proto @@ -0,0 +1,172 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/customer_feed.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerFeedServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the CustomerFeed service. + +// Service to manage customer feeds. +service CustomerFeedService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested customer feed in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerFeed(GetCustomerFeedRequest) returns (google.ads.googleads.v8.resources.CustomerFeed) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customerFeeds/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes customer feeds. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CustomerFeedError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [FunctionError]() + // [FunctionParsingError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateCustomerFeeds(MutateCustomerFeedsRequest) returns (MutateCustomerFeedsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customerFeeds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CustomerFeedService.GetCustomerFeed][google.ads.googleads.v8.services.CustomerFeedService.GetCustomerFeed]. +message GetCustomerFeedRequest { + // Required. The resource name of the customer feed to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerFeed" + } + ]; +} + +// Request message for [CustomerFeedService.MutateCustomerFeeds][google.ads.googleads.v8.services.CustomerFeedService.MutateCustomerFeeds]. +message MutateCustomerFeedsRequest { + // Required. The ID of the customer whose customer feeds are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual customer feeds. + repeated CustomerFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a customer feed. +message CustomerFeedOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new customer feed. + google.ads.googleads.v8.resources.CustomerFeed create = 1; + + // Update operation: The customer feed is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.CustomerFeed update = 2; + + // Remove operation: A resource name for the removed customer feed is + // expected, in this format: + // + // `customers/{customer_id}/customerFeeds/{feed_id}` + string remove = 3; + } +} + +// Response message for a customer feed mutate. +message MutateCustomerFeedsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCustomerFeedResult results = 2; +} + +// The result for the customer feed mutate. +message MutateCustomerFeedResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated customer feed with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CustomerFeed customer_feed = 2; +} diff --git a/google/ads/googleads/v8/services/customer_label_service.proto b/google/ads/googleads/v8/services/customer_label_service.proto new file mode 100644 index 000000000..9d3b5c326 --- /dev/null +++ b/google/ads/googleads/v8/services/customer_label_service.proto @@ -0,0 +1,142 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/customer_label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerLabelServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Customer Label service. + +// Service to manage labels on customers. +service CustomerLabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested customer-label relationship in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerLabel(GetCustomerLabelRequest) returns (google.ads.googleads.v8.resources.CustomerLabel) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customerLabels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates and removes customer-label relationships. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [HeaderError]() + // [InternalError]() + // [LabelError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerLabels(MutateCustomerLabelsRequest) returns (MutateCustomerLabelsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customerLabels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CustomerLabelService.GetCustomerLabel][google.ads.googleads.v8.services.CustomerLabelService.GetCustomerLabel]. +message GetCustomerLabelRequest { + // Required. The resource name of the customer-label relationship to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerLabel" + } + ]; +} + +// Request message for [CustomerLabelService.MutateCustomerLabels][google.ads.googleads.v8.services.CustomerLabelService.MutateCustomerLabels]. +message MutateCustomerLabelsRequest { + // Required. ID of the customer whose customer-label relationships are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on customer-label relationships. + repeated CustomerLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on a customer-label relationship. +message CustomerLabelOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new customer-label + // relationship. + google.ads.googleads.v8.resources.CustomerLabel create = 1; + + // Remove operation: A resource name for the customer-label relationship + // being removed, in this format: + // + // `customers/{customer_id}/customerLabels/{label_id}` + string remove = 2; + } +} + +// Response message for a customer labels mutate. +message MutateCustomerLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCustomerLabelResult results = 2; +} + +// The result for a customer label mutate. +message MutateCustomerLabelResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/customer_manager_link_service.proto b/google/ads/googleads/v8/services/customer_manager_link_service.proto new file mode 100644 index 000000000..257c9036a --- /dev/null +++ b/google/ads/googleads/v8/services/customer_manager_link_service.proto @@ -0,0 +1,180 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/customer_manager_link.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerManagerLinkServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Service to manage customer-manager links. +service CustomerManagerLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested CustomerManagerLink in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerManagerLink(GetCustomerManagerLinkRequest) returns (google.ads.googleads.v8.resources.CustomerManagerLink) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customerManagerLinks/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates customer manager links. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [ManagerLinkError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerManagerLink(MutateCustomerManagerLinkRequest) returns (MutateCustomerManagerLinkResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customerManagerLinks:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } + + // Moves a client customer to a new manager customer. + // This simplifies the complex request that requires two operations to move + // a client customer to a new manager. i.e: + // 1. Update operation with Status INACTIVE (previous manager) and, + // 2. Update operation with Status ACTIVE (new manager). + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MoveManagerLink(MoveManagerLinkRequest) returns (MoveManagerLinkResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" + body: "*" + }; + option (google.api.method_signature) = "customer_id,previous_customer_manager_link,new_manager"; + } +} + +// Request message for [CustomerManagerLinkService.GetCustomerManagerLink][google.ads.googleads.v8.services.CustomerManagerLinkService.GetCustomerManagerLink]. +message GetCustomerManagerLinkRequest { + // Required. The resource name of the CustomerManagerLink to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerManagerLink" + } + ]; +} + +// Request message for [CustomerManagerLinkService.MutateCustomerManagerLink][google.ads.googleads.v8.services.CustomerManagerLinkService.MutateCustomerManagerLink]. +message MutateCustomerManagerLinkRequest { + // Required. The ID of the customer whose customer manager links are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual customer manager links. + repeated CustomerManagerLinkOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// Request message for [CustomerManagerLinkService.MoveManagerLink][google.ads.googleads.v8.services.CustomerManagerLinkService.MoveManagerLink]. +message MoveManagerLinkRequest { + // Required. The ID of the client customer that is being moved. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The resource name of the previous CustomerManagerLink. + // The resource name has the form: + // `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}` + string previous_customer_manager_link = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The resource name of the new manager customer that the client wants to move + // to. Customer resource names have the format: "customers/{customer_id}" + string new_manager = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// Updates the status of a CustomerManagerLink. +// The following actions are possible: +// 1. Update operation with status ACTIVE accepts a pending invitation. +// 2. Update operation with status REFUSED declines a pending invitation. +// 3. Update operation with status INACTIVE terminates link to manager. +message CustomerManagerLinkOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Update operation: The link is expected to have a valid resource name. + google.ads.googleads.v8.resources.CustomerManagerLink update = 2; + } +} + +// Response message for a CustomerManagerLink mutate. +message MutateCustomerManagerLinkResponse { + // A result that identifies the resource affected by the mutate request. + repeated MutateCustomerManagerLinkResult results = 1; +} + +// Response message for a CustomerManagerLink moveManagerLink. +message MoveManagerLinkResponse { + // Returned for successful operations. Represents a CustomerManagerLink + // resource of the newly created link between client customer and new manager + // customer. + string resource_name = 1; +} + +// The result for the customer manager link mutate. +message MutateCustomerManagerLinkResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/customer_negative_criterion_service.proto b/google/ads/googleads/v8/services/customer_negative_criterion_service.proto new file mode 100644 index 000000000..b23d9354f --- /dev/null +++ b/google/ads/googleads/v8/services/customer_negative_criterion_service.proto @@ -0,0 +1,152 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/customer_negative_criterion.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerNegativeCriterionServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Customer Negative Criterion service. + +// Service to manage customer negative criteria. +service CustomerNegativeCriterionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested criterion in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerNegativeCriterion(GetCustomerNegativeCriterionRequest) returns (google.ads.googleads.v8.resources.CustomerNegativeCriterion) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customerNegativeCriteria/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes criteria. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CriterionError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerNegativeCriteria(MutateCustomerNegativeCriteriaRequest) returns (MutateCustomerNegativeCriteriaResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customerNegativeCriteria:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CustomerNegativeCriterionService.GetCustomerNegativeCriterion][google.ads.googleads.v8.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion]. +message GetCustomerNegativeCriterionRequest { + // Required. The resource name of the criterion to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerNegativeCriterion" + } + ]; +} + +// Request message for +// [CustomerNegativeCriterionService.MutateCustomerNegativeCriteria][google.ads.googleads.v8.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria]. +message MutateCustomerNegativeCriteriaRequest { + // Required. The ID of the customer whose criteria are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual criteria. + repeated CustomerNegativeCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create or remove) on a customer level negative criterion. +message CustomerNegativeCriterionOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new criterion. + google.ads.googleads.v8.resources.CustomerNegativeCriterion create = 1; + + // Remove operation: A resource name for the removed criterion is expected, + // in this format: + // + // `customers/{customer_id}/customerNegativeCriteria/{criterion_id}` + string remove = 2; + } +} + +// Response message for customer negative criterion mutate. +message MutateCustomerNegativeCriteriaResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCustomerNegativeCriteriaResult results = 2; +} + +// The result for the criterion mutate. +message MutateCustomerNegativeCriteriaResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated criterion with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.CustomerNegativeCriterion customer_negative_criterion = 2; +} diff --git a/google/ads/googleads/v8/services/customer_service.proto b/google/ads/googleads/v8/services/customer_service.proto new file mode 100644 index 000000000..15de603cb --- /dev/null +++ b/google/ads/googleads/v8/services/customer_service.proto @@ -0,0 +1,214 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/access_role.proto"; +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/customer.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Customer service. + +// Service to manage customers. +service CustomerService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested customer in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomer(GetCustomerRequest) returns (google.ads.googleads.v8.resources.Customer) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Updates a customer. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + // [UrlFieldError]() + rpc MutateCustomer(MutateCustomerRequest) returns (MutateCustomerResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } + + // Returns resource names of customers directly accessible by the + // user authenticating the call. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListAccessibleCustomers(ListAccessibleCustomersRequest) returns (ListAccessibleCustomersResponse) { + option (google.api.http) = { + get: "/v8/customers:listAccessibleCustomers" + }; + } + + // Creates a new client under manager. The new client customer is returned. + // + // List of thrown errors: + // [AccessInvitationError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CurrencyCodeError]() + // [HeaderError]() + // [InternalError]() + // [ManagerLinkError]() + // [QuotaError]() + // [RequestError]() + // [StringLengthError]() + // [TimeZoneError]() + rpc CreateCustomerClient(CreateCustomerClientRequest) returns (CreateCustomerClientResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}:createCustomerClient" + body: "*" + }; + option (google.api.method_signature) = "customer_id,customer_client"; + } +} + +// Request message for [CustomerService.GetCustomer][google.ads.googleads.v8.services.CustomerService.GetCustomer]. +message GetCustomerRequest { + // Required. The resource name of the customer to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; +} + +// Request message for [CustomerService.MutateCustomer][google.ads.googleads.v8.services.CustomerService.MutateCustomer]. +message MutateCustomerRequest { + // Required. The ID of the customer being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the customer + CustomerOperation operation = 4 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 5; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 6; +} + +// Request message for [CustomerService.CreateCustomerClient][google.ads.googleads.v8.services.CustomerService.CreateCustomerClient]. +message CreateCustomerClientRequest { + // Required. The ID of the Manager under whom client customer is being created. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The new client customer to create. The resource name on this customer + // will be ignored. + google.ads.googleads.v8.resources.Customer customer_client = 2 [(google.api.field_behavior) = REQUIRED]; + + // Email address of the user who should be invited on the created client + // customer. Accessible only to customers on the allow-list. + optional string email_address = 5; + + // The proposed role of user on the created client customer. + // Accessible only to customers on the allow-list. + google.ads.googleads.v8.enums.AccessRoleEnum.AccessRole access_role = 4; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 6; +} + +// A single update on a customer. +message CustomerOperation { + // Mutate operation. Only updates are supported for customer. + google.ads.googleads.v8.resources.Customer update = 1; + + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 2; +} + +// Response message for CreateCustomerClient mutate. +message CreateCustomerClientResponse { + // The resource name of the newly created customer client. + string resource_name = 2; + + // Link for inviting user to access the created customer. Accessible to + // allowlisted customers only. + string invitation_link = 3; +} + +// Response message for customer mutate. +message MutateCustomerResponse { + // Result for the mutate. + MutateCustomerResult result = 2; +} + +// The result for the customer mutate. +message MutateCustomerResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated customer with only mutable fields after mutate. The fields will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.Customer customer = 2; +} + +// Request message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v8.services.CustomerService.ListAccessibleCustomers]. +message ListAccessibleCustomersRequest { + +} + +// Response message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v8.services.CustomerService.ListAccessibleCustomers]. +message ListAccessibleCustomersResponse { + // Resource name of customers directly accessible by the + // user authenticating the call. + repeated string resource_names = 1; +} diff --git a/google/ads/googleads/v8/services/customer_user_access_invitation_service.proto b/google/ads/googleads/v8/services/customer_user_access_invitation_service.proto new file mode 100644 index 000000000..18dbce368 --- /dev/null +++ b/google/ads/googleads/v8/services/customer_user_access_invitation_service.proto @@ -0,0 +1,125 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/customer_user_access_invitation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerUserAccessInvitationServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the CustomerUserAccessInvitation service. + +// This service manages the access invitation extended to users for a given +// customer. +service CustomerUserAccessInvitationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested access invitation in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerUserAccessInvitation(GetCustomerUserAccessInvitationRequest) returns (google.ads.googleads.v8.resources.CustomerUserAccessInvitation) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customerUserAccessInvitations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes an access invitation. + // + // List of thrown errors: + // [AccessInvitationError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerUserAccessInvitation(MutateCustomerUserAccessInvitationRequest) returns (MutateCustomerUserAccessInvitationResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customerUserAccessInvitations:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for +// [CustomerUserAccessInvitation.GetCustomerUserAccessInvitation][] +message GetCustomerUserAccessInvitationRequest { + // Required. Resource name of the access invitation. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerUserAccessInvitation" + } + ]; +} + +// Request message for +// [CustomerUserAccessInvitation.MutateCustomerUserAccessInvitation][] +message MutateCustomerUserAccessInvitationRequest { + // Required. The ID of the customer whose access invitation is being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the access invitation + CustomerUserAccessInvitationOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A single operation (create or remove) on customer user access invitation. +message CustomerUserAccessInvitationOperation { + // The mutate operation + oneof operation { + // Create operation: No resource name is expected for the new access + // invitation. + google.ads.googleads.v8.resources.CustomerUserAccessInvitation create = 1; + + // Remove operation: A resource name for the revoke invitation is + // expected, in this format: + // + // `customers/{customer_id}/customerUserAccessInvitations/{invitation_id}` + string remove = 2; + } +} + +// Response message for access invitation mutate. +message MutateCustomerUserAccessInvitationResponse { + // Result for the mutate. + MutateCustomerUserAccessInvitationResult result = 1; +} + +// The result for the access invitation mutate. +message MutateCustomerUserAccessInvitationResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/customer_user_access_service.proto b/google/ads/googleads/v8/services/customer_user_access_service.proto new file mode 100644 index 000000000..4146d8db4 --- /dev/null +++ b/google/ads/googleads/v8/services/customer_user_access_service.proto @@ -0,0 +1,129 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/customer_user_access.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerUserAccessServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// This service manages the permissions of a user on a given customer. +service CustomerUserAccessService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the CustomerUserAccess in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerUserAccess(GetCustomerUserAccessRequest) returns (google.ads.googleads.v8.resources.CustomerUserAccess) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/customerUserAccesses/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Updates, removes permission of a user on a given customer. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CustomerUserAccessError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerUserAccess(MutateCustomerUserAccessRequest) returns (MutateCustomerUserAccessResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/customerUserAccesses:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for +// [CustomerUserAccessService.GetCustomerUserAccess][google.ads.googleads.v8.services.CustomerUserAccessService.GetCustomerUserAccess]. +message GetCustomerUserAccessRequest { + // Required. Resource name of the customer user access. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerUserAccess" + } + ]; +} + +// Mutate Request for +// [CustomerUserAccessService.MutateCustomerUserAccess][google.ads.googleads.v8.services.CustomerUserAccessService.MutateCustomerUserAccess]. +message MutateCustomerUserAccessRequest { + // Required. The ID of the customer being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the customer + CustomerUserAccessOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A single operation (update, remove) on customer user access. +message CustomerUserAccessOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 3; + + // The mutate operation. + oneof operation { + // Update operation: The customer user access is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.CustomerUserAccess update = 1; + + // Remove operation: A resource name for the removed access is + // expected, in this format: + // + // `customers/{customer_id}/customerUserAccesses/{CustomerUserAccess.user_id}` + string remove = 2; + } +} + +// Response message for customer user access mutate. +message MutateCustomerUserAccessResponse { + // Result for the mutate. + MutateCustomerUserAccessResult result = 1; +} + +// The result for the customer user access mutate. +message MutateCustomerUserAccessResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/detail_placement_view_service.proto b/google/ads/googleads/v8/services/detail_placement_view_service.proto new file mode 100644 index 000000000..ce389b865 --- /dev/null +++ b/google/ads/googleads/v8/services/detail_placement_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/detail_placement_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DetailPlacementViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Detail Placement View service. + +// Service to fetch Detail Placement views. +service DetailPlacementViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Detail Placement view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetDetailPlacementView(GetDetailPlacementViewRequest) returns (google.ads.googleads.v8.resources.DetailPlacementView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/detailPlacementViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [DetailPlacementViewService.GetDetailPlacementView][google.ads.googleads.v8.services.DetailPlacementViewService.GetDetailPlacementView]. +message GetDetailPlacementViewRequest { + // Required. The resource name of the Detail Placement view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DetailPlacementView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/detailed_demographic_service.proto b/google/ads/googleads/v8/services/detailed_demographic_service.proto new file mode 100644 index 000000000..ef44a8f8b --- /dev/null +++ b/google/ads/googleads/v8/services/detailed_demographic_service.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/detailed_demographic.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DetailedDemographicServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the detailed demographic service + +// Service to fetch Google Ads Detailed Demographics. +service DetailedDemographicService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested detailed demographic in full detail. + rpc GetDetailedDemographic(GetDetailedDemographicRequest) returns (google.ads.googleads.v8.resources.DetailedDemographic) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/detailedDemographics/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [DetailedDemographicService.GetDetailedDemographic][google.ads.googleads.v8.services.DetailedDemographicService.GetDetailedDemographic]. +message GetDetailedDemographicRequest { + // Required. Resource name of the DetailedDemographic to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DetailedDemographic" + } + ]; +} diff --git a/google/ads/googleads/v8/services/display_keyword_view_service.proto b/google/ads/googleads/v8/services/display_keyword_view_service.proto new file mode 100644 index 000000000..512758d47 --- /dev/null +++ b/google/ads/googleads/v8/services/display_keyword_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/display_keyword_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DisplayKeywordViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Display Keyword View service. + +// Service to manage display keyword views. +service DisplayKeywordViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested display keyword view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetDisplayKeywordView(GetDisplayKeywordViewRequest) returns (google.ads.googleads.v8.resources.DisplayKeywordView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/displayKeywordViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [DisplayKeywordViewService.GetDisplayKeywordView][google.ads.googleads.v8.services.DisplayKeywordViewService.GetDisplayKeywordView]. +message GetDisplayKeywordViewRequest { + // Required. The resource name of the display keyword view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DisplayKeywordView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/distance_view_service.proto b/google/ads/googleads/v8/services/distance_view_service.proto new file mode 100644 index 000000000..f4b02944a --- /dev/null +++ b/google/ads/googleads/v8/services/distance_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/distance_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DistanceViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Distance View service. + +// Service to fetch distance views. +service DistanceViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the attributes of the requested distance view. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetDistanceView(GetDistanceViewRequest) returns (google.ads.googleads.v8.resources.DistanceView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/distanceViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [DistanceViewService.GetDistanceView][google.ads.googleads.v8.services.DistanceViewService.GetDistanceView]. +message GetDistanceViewRequest { + // Required. The resource name of the distance view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DistanceView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/domain_category_service.proto b/google/ads/googleads/v8/services/domain_category_service.proto new file mode 100644 index 000000000..ce7fddf6a --- /dev/null +++ b/google/ads/googleads/v8/services/domain_category_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/domain_category.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DomainCategoryServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the DomainCategory Service. + +// Service to fetch domain categories. +service DomainCategoryService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested domain category. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetDomainCategory(GetDomainCategoryRequest) returns (google.ads.googleads.v8.resources.DomainCategory) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/domainCategories/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [DomainCategoryService.GetDomainCategory][google.ads.googleads.v8.services.DomainCategoryService.GetDomainCategory]. +message GetDomainCategoryRequest { + // Required. Resource name of the domain category to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DomainCategory" + } + ]; +} diff --git a/google/ads/googleads/v8/services/dynamic_search_ads_search_term_view_service.proto b/google/ads/googleads/v8/services/dynamic_search_ads_search_term_view_service.proto new file mode 100644 index 000000000..842702101 --- /dev/null +++ b/google/ads/googleads/v8/services/dynamic_search_ads_search_term_view_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/dynamic_search_ads_search_term_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DynamicSearchAdsSearchTermViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Dynamic Search Ads Search Term View service. + +// Service to fetch dynamic search ads views. +service DynamicSearchAdsSearchTermViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested dynamic search ads search term view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetDynamicSearchAdsSearchTermView(GetDynamicSearchAdsSearchTermViewRequest) returns (google.ads.googleads.v8.resources.DynamicSearchAdsSearchTermView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView][google.ads.googleads.v8.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView]. +message GetDynamicSearchAdsSearchTermViewRequest { + // Required. The resource name of the dynamic search ads search term view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/expanded_landing_page_view_service.proto b/google/ads/googleads/v8/services/expanded_landing_page_view_service.proto new file mode 100644 index 000000000..00df6441a --- /dev/null +++ b/google/ads/googleads/v8/services/expanded_landing_page_view_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/expanded_landing_page_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ExpandedLandingPageViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the expanded landing page view service. + +// Service to fetch expanded landing page views. +service ExpandedLandingPageViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested expanded landing page view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetExpandedLandingPageView(GetExpandedLandingPageViewRequest) returns (google.ads.googleads.v8.resources.ExpandedLandingPageView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/expandedLandingPageViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [ExpandedLandingPageViewService.GetExpandedLandingPageView][google.ads.googleads.v8.services.ExpandedLandingPageViewService.GetExpandedLandingPageView]. +message GetExpandedLandingPageViewRequest { + // Required. The resource name of the expanded landing page view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ExpandedLandingPageView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/extension_feed_item_service.proto b/google/ads/googleads/v8/services/extension_feed_item_service.proto new file mode 100644 index 000000000..f08e6f739 --- /dev/null +++ b/google/ads/googleads/v8/services/extension_feed_item_service.proto @@ -0,0 +1,175 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/extension_feed_item.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionFeedItemServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the ExtensionFeedItem service. + +// Service to manage extension feed items. +service ExtensionFeedItemService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested extension feed item in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetExtensionFeedItem(GetExtensionFeedItemRequest) returns (google.ads.googleads.v8.resources.ExtensionFeedItem) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/extensionFeedItems/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes extension feed items. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CountryCodeError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [ExtensionFeedItemError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [ImageError]() + // [InternalError]() + // [LanguageCodeError]() + // [MutateError]() + // [NewResourceCreationError]() + // [OperationAccessDeniedError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateExtensionFeedItems(MutateExtensionFeedItemsRequest) returns (MutateExtensionFeedItemsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/extensionFeedItems:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [ExtensionFeedItemService.GetExtensionFeedItem][google.ads.googleads.v8.services.ExtensionFeedItemService.GetExtensionFeedItem]. +message GetExtensionFeedItemRequest { + // Required. The resource name of the extension feed item to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + } + ]; +} + +// Request message for [ExtensionFeedItemService.MutateExtensionFeedItems][google.ads.googleads.v8.services.ExtensionFeedItemService.MutateExtensionFeedItems]. +message MutateExtensionFeedItemsRequest { + // Required. The ID of the customer whose extension feed items are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual extension feed items. + repeated ExtensionFeedItemOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an extension feed item. +message ExtensionFeedItemOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new extension + // feed item. + google.ads.googleads.v8.resources.ExtensionFeedItem create = 1; + + // Update operation: The extension feed item is expected to have a + // valid resource name. + google.ads.googleads.v8.resources.ExtensionFeedItem update = 2; + + // Remove operation: A resource name for the removed extension feed item + // is expected, in this format: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + string remove = 3; + } +} + +// Response message for an extension feed item mutate. +message MutateExtensionFeedItemsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateExtensionFeedItemResult results = 2; +} + +// The result for the extension feed item mutate. +message MutateExtensionFeedItemResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated extension feed item with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.ExtensionFeedItem extension_feed_item = 2; +} diff --git a/google/ads/googleads/v8/services/feed_item_service.proto b/google/ads/googleads/v8/services/feed_item_service.proto new file mode 100644 index 000000000..c4c0346ad --- /dev/null +++ b/google/ads/googleads/v8/services/feed_item_service.proto @@ -0,0 +1,174 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/feed_item.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the FeedItem service. + +// Service to manage feed items. +service FeedItemService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed item in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedItem(GetFeedItemRequest) returns (google.ads.googleads.v8.resources.FeedItem) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/feedItems/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes feed items. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FeedItemError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateFeedItems(MutateFeedItemsRequest) returns (MutateFeedItemsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/feedItems:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedItemService.GetFeedItem][google.ads.googleads.v8.services.FeedItemService.GetFeedItem]. +message GetFeedItemRequest { + // Required. The resource name of the feed item to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; +} + +// Request message for [FeedItemService.MutateFeedItems][google.ads.googleads.v8.services.FeedItemService.MutateFeedItems]. +message MutateFeedItemsRequest { + // Required. The ID of the customer whose feed items are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feed items. + repeated FeedItemOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an feed item. +message FeedItemOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new feed item. + google.ads.googleads.v8.resources.FeedItem create = 1; + + // Update operation: The feed item is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.FeedItem update = 2; + + // Remove operation: A resource name for the removed feed item is + // expected, in this format: + // + // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}` + string remove = 3; + } +} + +// Response message for an feed item mutate. +message MutateFeedItemsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateFeedItemResult results = 2; +} + +// The result for the feed item mutate. +message MutateFeedItemResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated feed item with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.FeedItem feed_item = 2; +} diff --git a/google/ads/googleads/v8/services/feed_item_set_link_service.proto b/google/ads/googleads/v8/services/feed_item_set_link_service.proto new file mode 100644 index 000000000..bb99b23b8 --- /dev/null +++ b/google/ads/googleads/v8/services/feed_item_set_link_service.proto @@ -0,0 +1,131 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/feed_item_set_link.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetLinkServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the FeedItemSetLink service. + +// Service to manage feed item set links. +service FeedItemSetLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed item set link in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedItemSetLink(GetFeedItemSetLinkRequest) returns (google.ads.googleads.v8.resources.FeedItemSetLink) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/feedItemSetLinks/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes feed item set links. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateFeedItemSetLinks(MutateFeedItemSetLinksRequest) returns (MutateFeedItemSetLinksResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/feedItemSetLinks:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedItemSetLinkService.GetFeedItemSetLinks][]. +message GetFeedItemSetLinkRequest { + // Required. The resource name of the feed item set link to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemSetLink" + } + ]; +} + +// Request message for [FeedItemSetLinkService.MutateFeedItemSetLinks][google.ads.googleads.v8.services.FeedItemSetLinkService.MutateFeedItemSetLinks]. +message MutateFeedItemSetLinksRequest { + // Required. The ID of the customer whose feed item set links are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feed item set links. + repeated FeedItemSetLinkOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a feed item set link. +message FeedItemSetLinkOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the + // new feed item set link. + google.ads.googleads.v8.resources.FeedItemSetLink create = 1; + + // Remove operation: A resource name for the removed feed item set link is + // expected, in this format: + // + // `customers/{customer_id}/feedItemSetLinks/{feed_id}_{feed_item_set_id}_{feed_item_id}` + string remove = 2; + } +} + +// Response message for a feed item set link mutate. +message MutateFeedItemSetLinksResponse { + // All results for the mutate. + repeated MutateFeedItemSetLinkResult results = 1; +} + +// The result for the feed item set link mutate. +message MutateFeedItemSetLinkResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/feed_item_set_service.proto b/google/ads/googleads/v8/services/feed_item_set_service.proto new file mode 100644 index 000000000..686769b2c --- /dev/null +++ b/google/ads/googleads/v8/services/feed_item_set_service.proto @@ -0,0 +1,139 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/feed_item_set.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the FeedItemSet service. + +// Service to manage feed Item Set +service FeedItemSetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed item set in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedItemSet(GetFeedItemSetRequest) returns (google.ads.googleads.v8.resources.FeedItemSet) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/feedItemSets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates or removes feed item sets. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateFeedItemSets(MutateFeedItemSetsRequest) returns (MutateFeedItemSetsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/feedItemSets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedItemSetService.GetFeedItemSet][google.ads.googleads.v8.services.FeedItemSetService.GetFeedItemSet]. +message GetFeedItemSetRequest { + // Required. The resource name of the feed item set to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemSet" + } + ]; +} + +// Request message for [FeedItemSetService.MutateFeedItemSets][google.ads.googleads.v8.services.FeedItemSetService.MutateFeedItemSets]. +message MutateFeedItemSetsRequest { + // Required. The ID of the customer whose feed item sets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feed item sets. + repeated FeedItemSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on an feed item set. +message FeedItemSetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new feed item set + google.ads.googleads.v8.resources.FeedItemSet create = 1; + + // Update operation: The feed item set is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.FeedItemSet update = 2; + + // Remove operation: A resource name for the removed feed item is + // expected, in this format: + // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_set_id}` + string remove = 3; + } +} + +// Response message for an feed item set mutate. +message MutateFeedItemSetsResponse { + // All results for the mutate. + repeated MutateFeedItemSetResult results = 1; +} + +// The result for the feed item set mutate. +message MutateFeedItemSetResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/feed_item_target_service.proto b/google/ads/googleads/v8/services/feed_item_target_service.proto new file mode 100644 index 000000000..29c2940f0 --- /dev/null +++ b/google/ads/googleads/v8/services/feed_item_target_service.proto @@ -0,0 +1,161 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/feed_item_target.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the FeedItemTarget service. + +// Service to manage feed item targets. +service FeedItemTargetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed item targets in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedItemTarget(GetFeedItemTargetRequest) returns (google.ads.googleads.v8.resources.FeedItemTarget) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/feedItemTargets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes feed item targets. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CriterionError]() + // [DatabaseError]() + // [DistinctError]() + // [FeedItemTargetError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateFeedItemTargets(MutateFeedItemTargetsRequest) returns (MutateFeedItemTargetsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/feedItemTargets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedItemTargetService.GetFeedItemTarget][google.ads.googleads.v8.services.FeedItemTargetService.GetFeedItemTarget]. +message GetFeedItemTargetRequest { + // Required. The resource name of the feed item targets to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemTarget" + } + ]; +} + +// Request message for [FeedItemTargetService.MutateFeedItemTargets][google.ads.googleads.v8.services.FeedItemTargetService.MutateFeedItemTargets]. +message MutateFeedItemTargetsRequest { + // Required. The ID of the customer whose feed item targets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feed item targets. + repeated FeedItemTargetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single operation (create, remove) on an feed item target. +message FeedItemTargetOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new feed item + // target. + google.ads.googleads.v8.resources.FeedItemTarget create = 1; + + // Remove operation: A resource name for the removed feed item target is + // expected, in this format: + // + // `customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}` + string remove = 2; + } +} + +// Response message for an feed item target mutate. +message MutateFeedItemTargetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateFeedItemTargetResult results = 2; +} + +// The result for the feed item target mutate. +message MutateFeedItemTargetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated feed item target with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.FeedItemTarget feed_item_target = 2; +} diff --git a/google/ads/googleads/v8/services/feed_mapping_service.proto b/google/ads/googleads/v8/services/feed_mapping_service.proto new file mode 100644 index 000000000..01d1531a6 --- /dev/null +++ b/google/ads/googleads/v8/services/feed_mapping_service.proto @@ -0,0 +1,161 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/feed_mapping.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedMappingServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the FeedMapping service. + +// Service to manage feed mappings. +service FeedMappingService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed mapping in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedMapping(GetFeedMappingRequest) returns (google.ads.googleads.v8.resources.FeedMapping) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/feedMappings/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes feed mappings. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [DistinctError]() + // [FeedMappingError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateFeedMappings(MutateFeedMappingsRequest) returns (MutateFeedMappingsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/feedMappings:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedMappingService.GetFeedMapping][google.ads.googleads.v8.services.FeedMappingService.GetFeedMapping]. +message GetFeedMappingRequest { + // Required. The resource name of the feed mapping to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedMapping" + } + ]; +} + +// Request message for [FeedMappingService.MutateFeedMappings][google.ads.googleads.v8.services.FeedMappingService.MutateFeedMappings]. +message MutateFeedMappingsRequest { + // Required. The ID of the customer whose feed mappings are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feed mappings. + repeated FeedMappingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on a feed mapping. +message FeedMappingOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new feed mapping. + google.ads.googleads.v8.resources.FeedMapping create = 1; + + // Remove operation: A resource name for the removed feed mapping is + // expected, in this format: + // + // `customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}` + string remove = 3; + } +} + +// Response message for a feed mapping mutate. +message MutateFeedMappingsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateFeedMappingResult results = 2; +} + +// The result for the feed mapping mutate. +message MutateFeedMappingResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated feed mapping with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.FeedMapping feed_mapping = 2; +} diff --git a/google/ads/googleads/v8/services/feed_placeholder_view_service.proto b/google/ads/googleads/v8/services/feed_placeholder_view_service.proto new file mode 100644 index 000000000..539794062 --- /dev/null +++ b/google/ads/googleads/v8/services/feed_placeholder_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/feed_placeholder_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedPlaceholderViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the FeedPlaceholderView service. + +// Service to fetch feed placeholder views. +service FeedPlaceholderViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed placeholder view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedPlaceholderView(GetFeedPlaceholderViewRequest) returns (google.ads.googleads.v8.resources.FeedPlaceholderView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/feedPlaceholderViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [FeedPlaceholderViewService.GetFeedPlaceholderView][google.ads.googleads.v8.services.FeedPlaceholderViewService.GetFeedPlaceholderView]. +message GetFeedPlaceholderViewRequest { + // Required. The resource name of the feed placeholder view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedPlaceholderView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/feed_service.proto b/google/ads/googleads/v8/services/feed_service.proto new file mode 100644 index 000000000..4c84ae6db --- /dev/null +++ b/google/ads/googleads/v8/services/feed_service.proto @@ -0,0 +1,173 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/feed.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Feed service. + +// Service to manage feeds. +service FeedService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeed(GetFeedRequest) returns (google.ads.googleads.v8.resources.Feed) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/feeds/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes feeds. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [DatabaseError]() + // [DistinctError]() + // [FeedError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateFeeds(MutateFeedsRequest) returns (MutateFeedsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/feeds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedService.GetFeed][google.ads.googleads.v8.services.FeedService.GetFeed]. +message GetFeedRequest { + // Required. The resource name of the feed to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; +} + +// Request message for [FeedService.MutateFeeds][google.ads.googleads.v8.services.FeedService.MutateFeeds]. +message MutateFeedsRequest { + // Required. The ID of the customer whose feeds are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feeds. + repeated FeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an feed. +message FeedOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new feed. + google.ads.googleads.v8.resources.Feed create = 1; + + // Update operation: The feed is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.Feed update = 2; + + // Remove operation: A resource name for the removed feed is + // expected, in this format: + // + // `customers/{customer_id}/feeds/{feed_id}` + string remove = 3; + } +} + +// Response message for an feed mutate. +message MutateFeedsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateFeedResult results = 2; +} + +// The result for the feed mutate. +message MutateFeedResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated feed with only mutable fields after mutate. The field will only + // be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.Feed feed = 2; +} diff --git a/google/ads/googleads/v8/services/gender_view_service.proto b/google/ads/googleads/v8/services/gender_view_service.proto new file mode 100644 index 000000000..14af4ae4e --- /dev/null +++ b/google/ads/googleads/v8/services/gender_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/gender_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GenderViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Gender View service. + +// Service to manage gender views. +service GenderViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested gender view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetGenderView(GetGenderViewRequest) returns (google.ads.googleads.v8.resources.GenderView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/genderViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [GenderViewService.GetGenderView][google.ads.googleads.v8.services.GenderViewService.GetGenderView]. +message GetGenderViewRequest { + // Required. The resource name of the gender view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GenderView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/geo_target_constant_service.proto b/google/ads/googleads/v8/services/geo_target_constant_service.proto new file mode 100644 index 000000000..570fdd229 --- /dev/null +++ b/google/ads/googleads/v8/services/geo_target_constant_service.proto @@ -0,0 +1,146 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/geo_target_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetConstantServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Geo target constant service. + +// Service to fetch geo target constants. +service GeoTargetConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested geo target constant in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetGeoTargetConstant(GetGeoTargetConstantRequest) returns (google.ads.googleads.v8.resources.GeoTargetConstant) { + option (google.api.http) = { + get: "/v8/{resource_name=geoTargetConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Returns GeoTargetConstant suggestions by location name or by resource name. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [GeoTargetConstantSuggestionError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc SuggestGeoTargetConstants(SuggestGeoTargetConstantsRequest) returns (SuggestGeoTargetConstantsResponse) { + option (google.api.http) = { + post: "/v8/geoTargetConstants:suggest" + body: "*" + }; + } +} + +// Request message for [GeoTargetConstantService.GetGeoTargetConstant][google.ads.googleads.v8.services.GeoTargetConstantService.GetGeoTargetConstant]. +message GetGeoTargetConstantRequest { + // Required. The resource name of the geo target constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + } + ]; +} + +// Request message for +// [GeoTargetConstantService.SuggestGeoTargetConstants][google.ads.googleads.v8.services.GeoTargetConstantService.SuggestGeoTargetConstants]. +message SuggestGeoTargetConstantsRequest { + // A list of location names. + message LocationNames { + // A list of location names. + repeated string names = 2; + } + + // A list of geo target constant resource names. + message GeoTargets { + // A list of geo target constant resource names. + repeated string geo_target_constants = 2; + } + + // If possible, returned geo targets are translated using this locale. If not, + // en is used by default. This is also used as a hint for returned geo + // targets. + optional string locale = 6; + + // Returned geo targets are restricted to this country code. + optional string country_code = 7; + + // Required. A selector of geo target constants. + oneof query { + // The location names to search by. At most 25 names can be set. + LocationNames location_names = 1; + + // The geo target constant resource names to filter by. + GeoTargets geo_targets = 2; + } +} + +// Response message for [GeoTargetConstantService.SuggestGeoTargetConstants][google.ads.googleads.v8.services.GeoTargetConstantService.SuggestGeoTargetConstants]. +message SuggestGeoTargetConstantsResponse { + // Geo target constant suggestions. + repeated GeoTargetConstantSuggestion geo_target_constant_suggestions = 1; +} + +// A geo target constant suggestion. +message GeoTargetConstantSuggestion { + // The language this GeoTargetConstantSuggestion is currently translated to. + // It affects the name of geo target fields. For example, if locale=en, then + // name=Spain. If locale=es, then name=España. The default locale will be + // returned if no translation exists for the locale in the request. + optional string locale = 6; + + // Approximate user population that will be targeted, rounded to the + // nearest 100. + optional int64 reach = 7; + + // If the request searched by location name, this is the location name that + // matched the geo target. + optional string search_term = 8; + + // The GeoTargetConstant result. + google.ads.googleads.v8.resources.GeoTargetConstant geo_target_constant = 4; + + // The list of parents of the geo target constant. + repeated google.ads.googleads.v8.resources.GeoTargetConstant geo_target_constant_parents = 5; +} diff --git a/google/ads/googleads/v8/services/geographic_view_service.proto b/google/ads/googleads/v8/services/geographic_view_service.proto new file mode 100644 index 000000000..a970348df --- /dev/null +++ b/google/ads/googleads/v8/services/geographic_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/geographic_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GeographicViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the GeographicViewService. + +// Service to manage geographic views. +service GeographicViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested geographic view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetGeographicView(GetGeographicViewRequest) returns (google.ads.googleads.v8.resources.GeographicView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/geographicViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [GeographicViewService.GetGeographicView][google.ads.googleads.v8.services.GeographicViewService.GetGeographicView]. +message GetGeographicViewRequest { + // Required. The resource name of the geographic view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeographicView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/google_ads_field_service.proto b/google/ads/googleads/v8/services/google_ads_field_service.proto new file mode 100644 index 000000000..5c07b20fc --- /dev/null +++ b/google/ads/googleads/v8/services/google_ads_field_service.proto @@ -0,0 +1,115 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/google_ads_field.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GoogleAdsFieldServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the GoogleAdsFieldService. + +// Service to fetch Google Ads API fields. +service GoogleAdsFieldService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns just the requested field. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetGoogleAdsField(GetGoogleAdsFieldRequest) returns (google.ads.googleads.v8.resources.GoogleAdsField) { + option (google.api.http) = { + get: "/v8/{resource_name=googleAdsFields/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Returns all fields that match the search query. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QueryError]() + // [QuotaError]() + // [RequestError]() + rpc SearchGoogleAdsFields(SearchGoogleAdsFieldsRequest) returns (SearchGoogleAdsFieldsResponse) { + option (google.api.http) = { + post: "/v8/googleAdsFields:search" + body: "*" + }; + option (google.api.method_signature) = "query"; + } +} + +// Request message for [GoogleAdsFieldService.GetGoogleAdsField][google.ads.googleads.v8.services.GoogleAdsFieldService.GetGoogleAdsField]. +message GetGoogleAdsFieldRequest { + // Required. The resource name of the field to get. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GoogleAdsField" + } + ]; +} + +// Request message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v8.services.GoogleAdsFieldService.SearchGoogleAdsFields]. +message SearchGoogleAdsFieldsRequest { + // Required. The query string. + string query = 1 [(google.api.field_behavior) = REQUIRED]; + + // Token of the page to retrieve. If not specified, the first page of + // results will be returned. Use the value obtained from `next_page_token` + // in the previous response in order to request the next page of results. + string page_token = 2; + + // Number of elements to retrieve in a single page. + // When too large a page is requested, the server may decide to further + // limit the number of returned resources. + int32 page_size = 3; +} + +// Response message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v8.services.GoogleAdsFieldService.SearchGoogleAdsFields]. +message SearchGoogleAdsFieldsResponse { + // The list of fields that matched the query. + repeated google.ads.googleads.v8.resources.GoogleAdsField results = 1; + + // Pagination token used to retrieve the next page of results. Pass the + // content of this string as the `page_token` attribute of the next request. + // `next_page_token` is not returned for the last page. + string next_page_token = 2; + + // Total number of results that match the query ignoring the LIMIT clause. + int64 total_results_count = 3; +} diff --git a/google/ads/googleads/v8/services/google_ads_service.proto b/google/ads/googleads/v8/services/google_ads_service.proto new file mode 100644 index 000000000..61c03c115 --- /dev/null +++ b/google/ads/googleads/v8/services/google_ads_service.proto @@ -0,0 +1,1252 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/metrics.proto"; +import "google/ads/googleads/v8/common/segments.proto"; +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/enums/summary_row_setting.proto"; +import "google/ads/googleads/v8/resources/accessible_bidding_strategy.proto"; +import "google/ads/googleads/v8/resources/account_budget.proto"; +import "google/ads/googleads/v8/resources/account_budget_proposal.proto"; +import "google/ads/googleads/v8/resources/account_link.proto"; +import "google/ads/googleads/v8/resources/ad_group.proto"; +import "google/ads/googleads/v8/resources/ad_group_ad.proto"; +import "google/ads/googleads/v8/resources/ad_group_ad_asset_view.proto"; +import "google/ads/googleads/v8/resources/ad_group_ad_label.proto"; +import "google/ads/googleads/v8/resources/ad_group_asset.proto"; +import "google/ads/googleads/v8/resources/ad_group_audience_view.proto"; +import "google/ads/googleads/v8/resources/ad_group_bid_modifier.proto"; +import "google/ads/googleads/v8/resources/ad_group_criterion.proto"; +import "google/ads/googleads/v8/resources/ad_group_criterion_label.proto"; +import "google/ads/googleads/v8/resources/ad_group_criterion_simulation.proto"; +import "google/ads/googleads/v8/resources/ad_group_extension_setting.proto"; +import "google/ads/googleads/v8/resources/ad_group_feed.proto"; +import "google/ads/googleads/v8/resources/ad_group_label.proto"; +import "google/ads/googleads/v8/resources/ad_group_simulation.proto"; +import "google/ads/googleads/v8/resources/ad_parameter.proto"; +import "google/ads/googleads/v8/resources/ad_schedule_view.proto"; +import "google/ads/googleads/v8/resources/age_range_view.proto"; +import "google/ads/googleads/v8/resources/asset.proto"; +import "google/ads/googleads/v8/resources/asset_field_type_view.proto"; +import "google/ads/googleads/v8/resources/batch_job.proto"; +import "google/ads/googleads/v8/resources/bidding_data_exclusion.proto"; +import "google/ads/googleads/v8/resources/bidding_seasonality_adjustment.proto"; +import "google/ads/googleads/v8/resources/bidding_strategy.proto"; +import "google/ads/googleads/v8/resources/bidding_strategy_simulation.proto"; +import "google/ads/googleads/v8/resources/billing_setup.proto"; +import "google/ads/googleads/v8/resources/call_view.proto"; +import "google/ads/googleads/v8/resources/campaign.proto"; +import "google/ads/googleads/v8/resources/campaign_asset.proto"; +import "google/ads/googleads/v8/resources/campaign_audience_view.proto"; +import "google/ads/googleads/v8/resources/campaign_bid_modifier.proto"; +import "google/ads/googleads/v8/resources/campaign_budget.proto"; +import "google/ads/googleads/v8/resources/campaign_criterion.proto"; +import "google/ads/googleads/v8/resources/campaign_criterion_simulation.proto"; +import "google/ads/googleads/v8/resources/campaign_draft.proto"; +import "google/ads/googleads/v8/resources/campaign_experiment.proto"; +import "google/ads/googleads/v8/resources/campaign_extension_setting.proto"; +import "google/ads/googleads/v8/resources/campaign_feed.proto"; +import "google/ads/googleads/v8/resources/campaign_label.proto"; +import "google/ads/googleads/v8/resources/campaign_shared_set.proto"; +import "google/ads/googleads/v8/resources/campaign_simulation.proto"; +import "google/ads/googleads/v8/resources/carrier_constant.proto"; +import "google/ads/googleads/v8/resources/change_event.proto"; +import "google/ads/googleads/v8/resources/change_status.proto"; +import "google/ads/googleads/v8/resources/click_view.proto"; +import "google/ads/googleads/v8/resources/combined_audience.proto"; +import "google/ads/googleads/v8/resources/conversion_action.proto"; +import "google/ads/googleads/v8/resources/conversion_custom_variable.proto"; +import "google/ads/googleads/v8/resources/conversion_value_rule.proto"; +import "google/ads/googleads/v8/resources/conversion_value_rule_set.proto"; +import "google/ads/googleads/v8/resources/currency_constant.proto"; +import "google/ads/googleads/v8/resources/custom_audience.proto"; +import "google/ads/googleads/v8/resources/custom_interest.proto"; +import "google/ads/googleads/v8/resources/customer.proto"; +import "google/ads/googleads/v8/resources/customer_asset.proto"; +import "google/ads/googleads/v8/resources/customer_client.proto"; +import "google/ads/googleads/v8/resources/customer_client_link.proto"; +import "google/ads/googleads/v8/resources/customer_extension_setting.proto"; +import "google/ads/googleads/v8/resources/customer_feed.proto"; +import "google/ads/googleads/v8/resources/customer_label.proto"; +import "google/ads/googleads/v8/resources/customer_manager_link.proto"; +import "google/ads/googleads/v8/resources/customer_negative_criterion.proto"; +import "google/ads/googleads/v8/resources/customer_user_access.proto"; +import "google/ads/googleads/v8/resources/customer_user_access_invitation.proto"; +import "google/ads/googleads/v8/resources/detail_placement_view.proto"; +import "google/ads/googleads/v8/resources/detailed_demographic.proto"; +import "google/ads/googleads/v8/resources/display_keyword_view.proto"; +import "google/ads/googleads/v8/resources/distance_view.proto"; +import "google/ads/googleads/v8/resources/domain_category.proto"; +import "google/ads/googleads/v8/resources/dynamic_search_ads_search_term_view.proto"; +import "google/ads/googleads/v8/resources/expanded_landing_page_view.proto"; +import "google/ads/googleads/v8/resources/extension_feed_item.proto"; +import "google/ads/googleads/v8/resources/feed.proto"; +import "google/ads/googleads/v8/resources/feed_item.proto"; +import "google/ads/googleads/v8/resources/feed_item_set.proto"; +import "google/ads/googleads/v8/resources/feed_item_set_link.proto"; +import "google/ads/googleads/v8/resources/feed_item_target.proto"; +import "google/ads/googleads/v8/resources/feed_mapping.proto"; +import "google/ads/googleads/v8/resources/feed_placeholder_view.proto"; +import "google/ads/googleads/v8/resources/gender_view.proto"; +import "google/ads/googleads/v8/resources/geo_target_constant.proto"; +import "google/ads/googleads/v8/resources/geographic_view.proto"; +import "google/ads/googleads/v8/resources/group_placement_view.proto"; +import "google/ads/googleads/v8/resources/hotel_group_view.proto"; +import "google/ads/googleads/v8/resources/hotel_performance_view.proto"; +import "google/ads/googleads/v8/resources/income_range_view.proto"; +import "google/ads/googleads/v8/resources/keyword_plan.proto"; +import "google/ads/googleads/v8/resources/keyword_plan_ad_group.proto"; +import "google/ads/googleads/v8/resources/keyword_plan_ad_group_keyword.proto"; +import "google/ads/googleads/v8/resources/keyword_plan_campaign.proto"; +import "google/ads/googleads/v8/resources/keyword_plan_campaign_keyword.proto"; +import "google/ads/googleads/v8/resources/keyword_theme_constant.proto"; +import "google/ads/googleads/v8/resources/keyword_view.proto"; +import "google/ads/googleads/v8/resources/label.proto"; +import "google/ads/googleads/v8/resources/landing_page_view.proto"; +import "google/ads/googleads/v8/resources/language_constant.proto"; +import "google/ads/googleads/v8/resources/life_event.proto"; +import "google/ads/googleads/v8/resources/location_view.proto"; +import "google/ads/googleads/v8/resources/managed_placement_view.proto"; +import "google/ads/googleads/v8/resources/media_file.proto"; +import "google/ads/googleads/v8/resources/mobile_app_category_constant.proto"; +import "google/ads/googleads/v8/resources/mobile_device_constant.proto"; +import "google/ads/googleads/v8/resources/offline_user_data_job.proto"; +import "google/ads/googleads/v8/resources/operating_system_version_constant.proto"; +import "google/ads/googleads/v8/resources/paid_organic_search_term_view.proto"; +import "google/ads/googleads/v8/resources/parental_status_view.proto"; +import "google/ads/googleads/v8/resources/product_bidding_category_constant.proto"; +import "google/ads/googleads/v8/resources/product_group_view.proto"; +import "google/ads/googleads/v8/resources/recommendation.proto"; +import "google/ads/googleads/v8/resources/remarketing_action.proto"; +import "google/ads/googleads/v8/resources/search_term_view.proto"; +import "google/ads/googleads/v8/resources/shared_criterion.proto"; +import "google/ads/googleads/v8/resources/shared_set.proto"; +import "google/ads/googleads/v8/resources/shopping_performance_view.proto"; +import "google/ads/googleads/v8/resources/smart_campaign_search_term_view.proto"; +import "google/ads/googleads/v8/resources/smart_campaign_setting.proto"; +import "google/ads/googleads/v8/resources/third_party_app_analytics_link.proto"; +import "google/ads/googleads/v8/resources/topic_constant.proto"; +import "google/ads/googleads/v8/resources/topic_view.proto"; +import "google/ads/googleads/v8/resources/user_interest.proto"; +import "google/ads/googleads/v8/resources/user_list.proto"; +import "google/ads/googleads/v8/resources/user_location_view.proto"; +import "google/ads/googleads/v8/resources/video.proto"; +import "google/ads/googleads/v8/resources/webpage_view.proto"; +import "google/ads/googleads/v8/services/ad_group_ad_label_service.proto"; +import "google/ads/googleads/v8/services/ad_group_ad_service.proto"; +import "google/ads/googleads/v8/services/ad_group_asset_service.proto"; +import "google/ads/googleads/v8/services/ad_group_bid_modifier_service.proto"; +import "google/ads/googleads/v8/services/ad_group_criterion_label_service.proto"; +import "google/ads/googleads/v8/services/ad_group_criterion_service.proto"; +import "google/ads/googleads/v8/services/ad_group_extension_setting_service.proto"; +import "google/ads/googleads/v8/services/ad_group_feed_service.proto"; +import "google/ads/googleads/v8/services/ad_group_label_service.proto"; +import "google/ads/googleads/v8/services/ad_group_service.proto"; +import "google/ads/googleads/v8/services/ad_parameter_service.proto"; +import "google/ads/googleads/v8/services/ad_service.proto"; +import "google/ads/googleads/v8/services/asset_service.proto"; +import "google/ads/googleads/v8/services/bidding_data_exclusion_service.proto"; +import "google/ads/googleads/v8/services/bidding_seasonality_adjustment_service.proto"; +import "google/ads/googleads/v8/services/bidding_strategy_service.proto"; +import "google/ads/googleads/v8/services/campaign_asset_service.proto"; +import "google/ads/googleads/v8/services/campaign_bid_modifier_service.proto"; +import "google/ads/googleads/v8/services/campaign_budget_service.proto"; +import "google/ads/googleads/v8/services/campaign_criterion_service.proto"; +import "google/ads/googleads/v8/services/campaign_draft_service.proto"; +import "google/ads/googleads/v8/services/campaign_experiment_service.proto"; +import "google/ads/googleads/v8/services/campaign_extension_setting_service.proto"; +import "google/ads/googleads/v8/services/campaign_feed_service.proto"; +import "google/ads/googleads/v8/services/campaign_label_service.proto"; +import "google/ads/googleads/v8/services/campaign_service.proto"; +import "google/ads/googleads/v8/services/campaign_shared_set_service.proto"; +import "google/ads/googleads/v8/services/conversion_action_service.proto"; +import "google/ads/googleads/v8/services/conversion_custom_variable_service.proto"; +import "google/ads/googleads/v8/services/conversion_value_rule_service.proto"; +import "google/ads/googleads/v8/services/conversion_value_rule_set_service.proto"; +import "google/ads/googleads/v8/services/customer_asset_service.proto"; +import "google/ads/googleads/v8/services/customer_extension_setting_service.proto"; +import "google/ads/googleads/v8/services/customer_feed_service.proto"; +import "google/ads/googleads/v8/services/customer_label_service.proto"; +import "google/ads/googleads/v8/services/customer_negative_criterion_service.proto"; +import "google/ads/googleads/v8/services/customer_service.proto"; +import "google/ads/googleads/v8/services/extension_feed_item_service.proto"; +import "google/ads/googleads/v8/services/feed_item_service.proto"; +import "google/ads/googleads/v8/services/feed_item_set_link_service.proto"; +import "google/ads/googleads/v8/services/feed_item_set_service.proto"; +import "google/ads/googleads/v8/services/feed_item_target_service.proto"; +import "google/ads/googleads/v8/services/feed_mapping_service.proto"; +import "google/ads/googleads/v8/services/feed_service.proto"; +import "google/ads/googleads/v8/services/keyword_plan_ad_group_keyword_service.proto"; +import "google/ads/googleads/v8/services/keyword_plan_ad_group_service.proto"; +import "google/ads/googleads/v8/services/keyword_plan_campaign_keyword_service.proto"; +import "google/ads/googleads/v8/services/keyword_plan_campaign_service.proto"; +import "google/ads/googleads/v8/services/keyword_plan_service.proto"; +import "google/ads/googleads/v8/services/label_service.proto"; +import "google/ads/googleads/v8/services/media_file_service.proto"; +import "google/ads/googleads/v8/services/remarketing_action_service.proto"; +import "google/ads/googleads/v8/services/shared_criterion_service.proto"; +import "google/ads/googleads/v8/services/shared_set_service.proto"; +import "google/ads/googleads/v8/services/smart_campaign_setting_service.proto"; +import "google/ads/googleads/v8/services/user_list_service.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GoogleAdsServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the GoogleAdsService. + +// Service to fetch data and metrics across resources. +service GoogleAdsService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns all rows that match the search query. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ChangeEventError]() + // [ChangeStatusError]() + // [ClickViewError]() + // [HeaderError]() + // [InternalError]() + // [QueryError]() + // [QuotaError]() + // [RequestError]() + rpc Search(SearchGoogleAdsRequest) returns (SearchGoogleAdsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/googleAds:search" + body: "*" + }; + option (google.api.method_signature) = "customer_id,query"; + } + + // Returns all rows that match the search stream query. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ChangeEventError]() + // [ChangeStatusError]() + // [ClickViewError]() + // [HeaderError]() + // [InternalError]() + // [QueryError]() + // [QuotaError]() + // [RequestError]() + rpc SearchStream(SearchGoogleAdsStreamRequest) returns (stream SearchGoogleAdsStreamResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/googleAds:searchStream" + body: "*" + }; + option (google.api.method_signature) = "customer_id,query"; + } + + // Creates, updates, or removes resources. This method supports atomic + // transactions with multiple types of resources. For example, you can + // atomically create a campaign and a campaign budget, or perform up to + // thousands of mutates atomically. + // + // This method is essentially a wrapper around a series of mutate methods. The + // only features it offers over calling those methods directly are: + // + // - Atomic transactions + // - Temp resource names (described below) + // - Somewhat reduced latency over making a series of mutate calls + // + // Note: Only resources that support atomic transactions are included, so this + // method can't replace all calls to individual services. + // + // ## Atomic Transaction Benefits + // + // Atomicity makes error handling much easier. If you're making a series of + // changes and one fails, it can leave your account in an inconsistent state. + // With atomicity, you either reach the desired state directly, or the request + // fails and you can retry. + // + // ## Temp Resource Names + // + // Temp resource names are a special type of resource name used to create a + // resource and reference that resource in the same request. For example, if a + // campaign budget is created with `resource_name` equal to + // `customers/123/campaignBudgets/-1`, that resource name can be reused in + // the `Campaign.budget` field in the same request. That way, the two + // resources are created and linked atomically. + // + // To create a temp resource name, put a negative number in the part of the + // name that the server would normally allocate. + // + // Note: + // + // - Resources must be created with a temp name before the name can be reused. + // For example, the previous CampaignBudget+Campaign example would fail if + // the mutate order was reversed. + // - Temp names are not remembered across requests. + // - There's no limit to the number of temp names in a request. + // - Each temp name must use a unique negative number, even if the resource + // types differ. + // + // ## Latency + // + // It's important to group mutates by resource type or the request may time + // out and fail. Latency is roughly equal to a series of calls to individual + // mutate methods, where each change in resource type is a new call. For + // example, mutating 10 campaigns then 10 ad groups is like 2 calls, while + // mutating 1 campaign, 1 ad group, 1 campaign, 1 ad group is like 4 calls. + // + // List of thrown errors: + // [AdCustomizerError]() + // [AdError]() + // [AdGroupAdError]() + // [AdGroupCriterionError]() + // [AdGroupError]() + // [AssetError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [BiddingError]() + // [CampaignBudgetError]() + // [CampaignCriterionError]() + // [CampaignError]() + // [CampaignExperimentError]() + // [CampaignSharedSetError]() + // [CollectionSizeError]() + // [ContextError]() + // [ConversionActionError]() + // [CriterionError]() + // [CustomerFeedError]() + // [DatabaseError]() + // [DateError]() + // [DateRangeError]() + // [DistinctError]() + // [ExtensionFeedItemError]() + // [ExtensionSettingError]() + // [FeedAttributeReferenceError]() + // [FeedError]() + // [FeedItemError]() + // [FeedItemSetError]() + // [FieldError]() + // [FieldMaskError]() + // [FunctionParsingError]() + // [HeaderError]() + // [ImageError]() + // [InternalError]() + // [KeywordPlanAdGroupKeywordError]() + // [KeywordPlanCampaignError]() + // [KeywordPlanError]() + // [LabelError]() + // [ListOperationError]() + // [MediaUploadError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [PolicyFindingError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SettingError]() + // [SharedSetError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + // [UserListError]() + // [YoutubeVideoRegistrationError]() + rpc Mutate(MutateGoogleAdsRequest) returns (MutateGoogleAdsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/googleAds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,mutate_operations"; + } +} + +// Request message for [GoogleAdsService.Search][google.ads.googleads.v8.services.GoogleAdsService.Search]. +message SearchGoogleAdsRequest { + // Required. The ID of the customer being queried. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The query string. + string query = 2 [(google.api.field_behavior) = REQUIRED]; + + // Token of the page to retrieve. If not specified, the first + // page of results will be returned. Use the value obtained from + // `next_page_token` in the previous response in order to request + // the next page of results. + string page_token = 3; + + // Number of elements to retrieve in a single page. + // When too large a page is requested, the server may decide to + // further limit the number of returned resources. + int32 page_size = 4; + + // If true, the request is validated but not executed. + bool validate_only = 5; + + // If true, the total number of results that match the query ignoring the + // LIMIT clause will be included in the response. + // Default is false. + bool return_total_results_count = 7; + + // Determines whether a summary row will be returned. By default, summary row + // is not returned. If requested, the summary row will be sent in a response + // by itself after all other query results are returned. + google.ads.googleads.v8.enums.SummaryRowSettingEnum.SummaryRowSetting summary_row_setting = 8; +} + +// Response message for [GoogleAdsService.Search][google.ads.googleads.v8.services.GoogleAdsService.Search]. +message SearchGoogleAdsResponse { + // The list of rows that matched the query. + repeated GoogleAdsRow results = 1; + + // Pagination token used to retrieve the next page of results. + // Pass the content of this string as the `page_token` attribute of + // the next request. `next_page_token` is not returned for the last + // page. + string next_page_token = 2; + + // Total number of results that match the query ignoring the LIMIT + // clause. + int64 total_results_count = 3; + + // FieldMask that represents what fields were requested by the user. + google.protobuf.FieldMask field_mask = 5; + + // Summary row that contains summary of metrics in results. + // Summary of metrics means aggregation of metrics across all results, + // here aggregation could be sum, average, rate, etc. + GoogleAdsRow summary_row = 6; +} + +// Request message for [GoogleAdsService.SearchStream][google.ads.googleads.v8.services.GoogleAdsService.SearchStream]. +message SearchGoogleAdsStreamRequest { + // Required. The ID of the customer being queried. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The query string. + string query = 2 [(google.api.field_behavior) = REQUIRED]; + + // Determines whether a summary row will be returned. By default, summary row + // is not returned. If requested, the summary row will be sent in a response + // by itself after all other query results are returned. + google.ads.googleads.v8.enums.SummaryRowSettingEnum.SummaryRowSetting summary_row_setting = 3; +} + +// Response message for [GoogleAdsService.SearchStream][google.ads.googleads.v8.services.GoogleAdsService.SearchStream]. +message SearchGoogleAdsStreamResponse { + // The list of rows that matched the query. + repeated GoogleAdsRow results = 1; + + // FieldMask that represents what fields were requested by the user. + google.protobuf.FieldMask field_mask = 2; + + // Summary row that contains summary of metrics in results. + // Summary of metrics means aggregation of metrics across all results, + // here aggregation could be sum, average, rate, etc. + GoogleAdsRow summary_row = 3; + + // The unique id of the request that is used for debugging purposes. + string request_id = 4; +} + +// A returned row from the query. +message GoogleAdsRow { + // The account budget in the query. + google.ads.googleads.v8.resources.AccountBudget account_budget = 42; + + // The account budget proposal referenced in the query. + google.ads.googleads.v8.resources.AccountBudgetProposal account_budget_proposal = 43; + + // The AccountLink referenced in the query. + google.ads.googleads.v8.resources.AccountLink account_link = 143; + + // The ad group referenced in the query. + google.ads.googleads.v8.resources.AdGroup ad_group = 3; + + // The ad referenced in the query. + google.ads.googleads.v8.resources.AdGroupAd ad_group_ad = 16; + + // The ad group ad asset view in the query. + google.ads.googleads.v8.resources.AdGroupAdAssetView ad_group_ad_asset_view = 131; + + // The ad group ad label referenced in the query. + google.ads.googleads.v8.resources.AdGroupAdLabel ad_group_ad_label = 120; + + // The ad group asset referenced in the query. + google.ads.googleads.v8.resources.AdGroupAsset ad_group_asset = 154; + + // The ad group audience view referenced in the query. + google.ads.googleads.v8.resources.AdGroupAudienceView ad_group_audience_view = 57; + + // The bid modifier referenced in the query. + google.ads.googleads.v8.resources.AdGroupBidModifier ad_group_bid_modifier = 24; + + // The criterion referenced in the query. + google.ads.googleads.v8.resources.AdGroupCriterion ad_group_criterion = 17; + + // The ad group criterion label referenced in the query. + google.ads.googleads.v8.resources.AdGroupCriterionLabel ad_group_criterion_label = 121; + + // The ad group criterion simulation referenced in the query. + google.ads.googleads.v8.resources.AdGroupCriterionSimulation ad_group_criterion_simulation = 110; + + // The ad group extension setting referenced in the query. + google.ads.googleads.v8.resources.AdGroupExtensionSetting ad_group_extension_setting = 112; + + // The ad group feed referenced in the query. + google.ads.googleads.v8.resources.AdGroupFeed ad_group_feed = 67; + + // The ad group label referenced in the query. + google.ads.googleads.v8.resources.AdGroupLabel ad_group_label = 115; + + // The ad group simulation referenced in the query. + google.ads.googleads.v8.resources.AdGroupSimulation ad_group_simulation = 107; + + // The ad parameter referenced in the query. + google.ads.googleads.v8.resources.AdParameter ad_parameter = 130; + + // The age range view referenced in the query. + google.ads.googleads.v8.resources.AgeRangeView age_range_view = 48; + + // The ad schedule view referenced in the query. + google.ads.googleads.v8.resources.AdScheduleView ad_schedule_view = 89; + + // The domain category referenced in the query. + google.ads.googleads.v8.resources.DomainCategory domain_category = 91; + + // The asset referenced in the query. + google.ads.googleads.v8.resources.Asset asset = 105; + + // The asset field type view referenced in the query. + google.ads.googleads.v8.resources.AssetFieldTypeView asset_field_type_view = 168; + + // The batch job referenced in the query. + google.ads.googleads.v8.resources.BatchJob batch_job = 139; + + // The bidding data exclusion referenced in the query. + google.ads.googleads.v8.resources.BiddingDataExclusion bidding_data_exclusion = 159; + + // The bidding seasonality adjustment referenced in the query. + google.ads.googleads.v8.resources.BiddingSeasonalityAdjustment bidding_seasonality_adjustment = 160; + + // The bidding strategy referenced in the query. + google.ads.googleads.v8.resources.BiddingStrategy bidding_strategy = 18; + + // The bidding strategy simulation referenced in the query. + google.ads.googleads.v8.resources.BiddingStrategySimulation bidding_strategy_simulation = 158; + + // The billing setup referenced in the query. + google.ads.googleads.v8.resources.BillingSetup billing_setup = 41; + + // The call view referenced in the query. + google.ads.googleads.v8.resources.CallView call_view = 152; + + // The campaign budget referenced in the query. + google.ads.googleads.v8.resources.CampaignBudget campaign_budget = 19; + + // The campaign referenced in the query. + google.ads.googleads.v8.resources.Campaign campaign = 2; + + // The campaign asset referenced in the query. + google.ads.googleads.v8.resources.CampaignAsset campaign_asset = 142; + + // The campaign audience view referenced in the query. + google.ads.googleads.v8.resources.CampaignAudienceView campaign_audience_view = 69; + + // The campaign bid modifier referenced in the query. + google.ads.googleads.v8.resources.CampaignBidModifier campaign_bid_modifier = 26; + + // The campaign criterion referenced in the query. + google.ads.googleads.v8.resources.CampaignCriterion campaign_criterion = 20; + + // The campaign criterion simulation referenced in the query. + google.ads.googleads.v8.resources.CampaignCriterionSimulation campaign_criterion_simulation = 111; + + // The campaign draft referenced in the query. + google.ads.googleads.v8.resources.CampaignDraft campaign_draft = 49; + + // The campaign experiment referenced in the query. + google.ads.googleads.v8.resources.CampaignExperiment campaign_experiment = 84; + + // The campaign extension setting referenced in the query. + google.ads.googleads.v8.resources.CampaignExtensionSetting campaign_extension_setting = 113; + + // The campaign feed referenced in the query. + google.ads.googleads.v8.resources.CampaignFeed campaign_feed = 63; + + // The campaign label referenced in the query. + google.ads.googleads.v8.resources.CampaignLabel campaign_label = 108; + + // Campaign Shared Set referenced in AWQL query. + google.ads.googleads.v8.resources.CampaignSharedSet campaign_shared_set = 30; + + // The campaign simulation referenced in the query. + google.ads.googleads.v8.resources.CampaignSimulation campaign_simulation = 157; + + // The carrier constant referenced in the query. + google.ads.googleads.v8.resources.CarrierConstant carrier_constant = 66; + + // The ChangeEvent referenced in the query. + google.ads.googleads.v8.resources.ChangeEvent change_event = 145; + + // The ChangeStatus referenced in the query. + google.ads.googleads.v8.resources.ChangeStatus change_status = 37; + + // The CombinedAudience referenced in the query. + google.ads.googleads.v8.resources.CombinedAudience combined_audience = 148; + + // The conversion action referenced in the query. + google.ads.googleads.v8.resources.ConversionAction conversion_action = 103; + + // The conversion custom variable referenced in the query. + google.ads.googleads.v8.resources.ConversionCustomVariable conversion_custom_variable = 153; + + // The conversion value rule referenced in the query. + google.ads.googleads.v8.resources.ConversionValueRule conversion_value_rule = 164; + + // The conversion value rule set referenced in the query. + google.ads.googleads.v8.resources.ConversionValueRuleSet conversion_value_rule_set = 165; + + // The ClickView referenced in the query. + google.ads.googleads.v8.resources.ClickView click_view = 122; + + // The currency constant referenced in the query. + google.ads.googleads.v8.resources.CurrencyConstant currency_constant = 134; + + // The CustomAudience referenced in the query. + google.ads.googleads.v8.resources.CustomAudience custom_audience = 147; + + // The CustomInterest referenced in the query. + google.ads.googleads.v8.resources.CustomInterest custom_interest = 104; + + // The customer referenced in the query. + google.ads.googleads.v8.resources.Customer customer = 1; + + // The customer asset referenced in the query. + google.ads.googleads.v8.resources.CustomerAsset customer_asset = 155; + + // The accessible bidding strategy referenced in the query. + google.ads.googleads.v8.resources.AccessibleBiddingStrategy accessible_bidding_strategy = 169; + + // The CustomerManagerLink referenced in the query. + google.ads.googleads.v8.resources.CustomerManagerLink customer_manager_link = 61; + + // The CustomerClientLink referenced in the query. + google.ads.googleads.v8.resources.CustomerClientLink customer_client_link = 62; + + // The CustomerClient referenced in the query. + google.ads.googleads.v8.resources.CustomerClient customer_client = 70; + + // The customer extension setting referenced in the query. + google.ads.googleads.v8.resources.CustomerExtensionSetting customer_extension_setting = 114; + + // The customer feed referenced in the query. + google.ads.googleads.v8.resources.CustomerFeed customer_feed = 64; + + // The customer label referenced in the query. + google.ads.googleads.v8.resources.CustomerLabel customer_label = 124; + + // The customer negative criterion referenced in the query. + google.ads.googleads.v8.resources.CustomerNegativeCriterion customer_negative_criterion = 88; + + // The CustomerUserAccess referenced in the query. + google.ads.googleads.v8.resources.CustomerUserAccess customer_user_access = 146; + + // The CustomerUserAccessInvitation referenced in the query. + google.ads.googleads.v8.resources.CustomerUserAccessInvitation customer_user_access_invitation = 150; + + // The detail placement view referenced in the query. + google.ads.googleads.v8.resources.DetailPlacementView detail_placement_view = 118; + + // The detailed demographic referenced in the query. + google.ads.googleads.v8.resources.DetailedDemographic detailed_demographic = 166; + + // The display keyword view referenced in the query. + google.ads.googleads.v8.resources.DisplayKeywordView display_keyword_view = 47; + + // The distance view referenced in the query. + google.ads.googleads.v8.resources.DistanceView distance_view = 132; + + // The dynamic search ads search term view referenced in the query. + google.ads.googleads.v8.resources.DynamicSearchAdsSearchTermView dynamic_search_ads_search_term_view = 106; + + // The expanded landing page view referenced in the query. + google.ads.googleads.v8.resources.ExpandedLandingPageView expanded_landing_page_view = 128; + + // The extension feed item referenced in the query. + google.ads.googleads.v8.resources.ExtensionFeedItem extension_feed_item = 85; + + // The feed referenced in the query. + google.ads.googleads.v8.resources.Feed feed = 46; + + // The feed item referenced in the query. + google.ads.googleads.v8.resources.FeedItem feed_item = 50; + + // The feed item set referenced in the query. + google.ads.googleads.v8.resources.FeedItemSet feed_item_set = 149; + + // The feed item set link referenced in the query. + google.ads.googleads.v8.resources.FeedItemSetLink feed_item_set_link = 151; + + // The feed item target referenced in the query. + google.ads.googleads.v8.resources.FeedItemTarget feed_item_target = 116; + + // The feed mapping referenced in the query. + google.ads.googleads.v8.resources.FeedMapping feed_mapping = 58; + + // The feed placeholder view referenced in the query. + google.ads.googleads.v8.resources.FeedPlaceholderView feed_placeholder_view = 97; + + // The gender view referenced in the query. + google.ads.googleads.v8.resources.GenderView gender_view = 40; + + // The geo target constant referenced in the query. + google.ads.googleads.v8.resources.GeoTargetConstant geo_target_constant = 23; + + // The geographic view referenced in the query. + google.ads.googleads.v8.resources.GeographicView geographic_view = 125; + + // The group placement view referenced in the query. + google.ads.googleads.v8.resources.GroupPlacementView group_placement_view = 119; + + // The hotel group view referenced in the query. + google.ads.googleads.v8.resources.HotelGroupView hotel_group_view = 51; + + // The hotel performance view referenced in the query. + google.ads.googleads.v8.resources.HotelPerformanceView hotel_performance_view = 71; + + // The income range view referenced in the query. + google.ads.googleads.v8.resources.IncomeRangeView income_range_view = 138; + + // The keyword view referenced in the query. + google.ads.googleads.v8.resources.KeywordView keyword_view = 21; + + // The keyword plan referenced in the query. + google.ads.googleads.v8.resources.KeywordPlan keyword_plan = 32; + + // The keyword plan campaign referenced in the query. + google.ads.googleads.v8.resources.KeywordPlanCampaign keyword_plan_campaign = 33; + + // The keyword plan campaign keyword referenced in the query. + google.ads.googleads.v8.resources.KeywordPlanCampaignKeyword keyword_plan_campaign_keyword = 140; + + // The keyword plan ad group referenced in the query. + google.ads.googleads.v8.resources.KeywordPlanAdGroup keyword_plan_ad_group = 35; + + // The keyword plan ad group referenced in the query. + google.ads.googleads.v8.resources.KeywordPlanAdGroupKeyword keyword_plan_ad_group_keyword = 141; + + // The keyword theme constant referenced in the query. + google.ads.googleads.v8.resources.KeywordThemeConstant keyword_theme_constant = 163; + + // The label referenced in the query. + google.ads.googleads.v8.resources.Label label = 52; + + // The landing page view referenced in the query. + google.ads.googleads.v8.resources.LandingPageView landing_page_view = 126; + + // The language constant referenced in the query. + google.ads.googleads.v8.resources.LanguageConstant language_constant = 55; + + // The location view referenced in the query. + google.ads.googleads.v8.resources.LocationView location_view = 123; + + // The managed placement view referenced in the query. + google.ads.googleads.v8.resources.ManagedPlacementView managed_placement_view = 53; + + // The media file referenced in the query. + google.ads.googleads.v8.resources.MediaFile media_file = 90; + + // The mobile app category constant referenced in the query. + google.ads.googleads.v8.resources.MobileAppCategoryConstant mobile_app_category_constant = 87; + + // The mobile device constant referenced in the query. + google.ads.googleads.v8.resources.MobileDeviceConstant mobile_device_constant = 98; + + // The offline user data job referenced in the query. + google.ads.googleads.v8.resources.OfflineUserDataJob offline_user_data_job = 137; + + // The operating system version constant referenced in the query. + google.ads.googleads.v8.resources.OperatingSystemVersionConstant operating_system_version_constant = 86; + + // The paid organic search term view referenced in the query. + google.ads.googleads.v8.resources.PaidOrganicSearchTermView paid_organic_search_term_view = 129; + + // The parental status view referenced in the query. + google.ads.googleads.v8.resources.ParentalStatusView parental_status_view = 45; + + // The Product Bidding Category referenced in the query. + google.ads.googleads.v8.resources.ProductBiddingCategoryConstant product_bidding_category_constant = 109; + + // The product group view referenced in the query. + google.ads.googleads.v8.resources.ProductGroupView product_group_view = 54; + + // The recommendation referenced in the query. + google.ads.googleads.v8.resources.Recommendation recommendation = 22; + + // The search term view referenced in the query. + google.ads.googleads.v8.resources.SearchTermView search_term_view = 68; + + // The shared set referenced in the query. + google.ads.googleads.v8.resources.SharedCriterion shared_criterion = 29; + + // The shared set referenced in the query. + google.ads.googleads.v8.resources.SharedSet shared_set = 27; + + // The Smart campaign setting referenced in the query. + google.ads.googleads.v8.resources.SmartCampaignSetting smart_campaign_setting = 167; + + // The shopping performance view referenced in the query. + google.ads.googleads.v8.resources.ShoppingPerformanceView shopping_performance_view = 117; + + // The Smart campaign search term view referenced in the query. + google.ads.googleads.v8.resources.SmartCampaignSearchTermView smart_campaign_search_term_view = 170; + + // The AccountLink referenced in the query. + google.ads.googleads.v8.resources.ThirdPartyAppAnalyticsLink third_party_app_analytics_link = 144; + + // The topic view referenced in the query. + google.ads.googleads.v8.resources.TopicView topic_view = 44; + + // The user interest referenced in the query. + google.ads.googleads.v8.resources.UserInterest user_interest = 59; + + // The life event referenced in the query. + google.ads.googleads.v8.resources.LifeEvent life_event = 161; + + // The user list referenced in the query. + google.ads.googleads.v8.resources.UserList user_list = 38; + + // The user location view referenced in the query. + google.ads.googleads.v8.resources.UserLocationView user_location_view = 135; + + // The remarketing action referenced in the query. + google.ads.googleads.v8.resources.RemarketingAction remarketing_action = 60; + + // The topic constant referenced in the query. + google.ads.googleads.v8.resources.TopicConstant topic_constant = 31; + + // The video referenced in the query. + google.ads.googleads.v8.resources.Video video = 39; + + // The webpage view referenced in the query. + google.ads.googleads.v8.resources.WebpageView webpage_view = 162; + + // The metrics. + google.ads.googleads.v8.common.Metrics metrics = 4; + + // The segments. + google.ads.googleads.v8.common.Segments segments = 102; +} + +// Request message for [GoogleAdsService.Mutate][google.ads.googleads.v8.services.GoogleAdsService.Mutate]. +message MutateGoogleAdsRequest { + // Required. The ID of the customer whose resources are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual resources. + repeated MutateOperation mutate_operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. The mutable + // resource will only be returned if the resource has the appropriate response + // field. E.g. MutateCampaignResult.campaign. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// Response message for [GoogleAdsService.Mutate][google.ads.googleads.v8.services.GoogleAdsService.Mutate]. +message MutateGoogleAdsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g., auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All responses for the mutate. + repeated MutateOperationResponse mutate_operation_responses = 1; +} + +// A single operation (create, update, remove) on a resource. +message MutateOperation { + // The mutate operation. + oneof operation { + // An ad group ad label mutate operation. + AdGroupAdLabelOperation ad_group_ad_label_operation = 17; + + // An ad group ad mutate operation. + AdGroupAdOperation ad_group_ad_operation = 1; + + // An ad group asset mutate operation. + AdGroupAssetOperation ad_group_asset_operation = 56; + + // An ad group bid modifier mutate operation. + AdGroupBidModifierOperation ad_group_bid_modifier_operation = 2; + + // An ad group criterion label mutate operation. + AdGroupCriterionLabelOperation ad_group_criterion_label_operation = 18; + + // An ad group criterion mutate operation. + AdGroupCriterionOperation ad_group_criterion_operation = 3; + + // An ad group extension setting mutate operation. + AdGroupExtensionSettingOperation ad_group_extension_setting_operation = 19; + + // An ad group feed mutate operation. + AdGroupFeedOperation ad_group_feed_operation = 20; + + // An ad group label mutate operation. + AdGroupLabelOperation ad_group_label_operation = 21; + + // An ad group mutate operation. + AdGroupOperation ad_group_operation = 5; + + // An ad mutate operation. + AdOperation ad_operation = 49; + + // An ad parameter mutate operation. + AdParameterOperation ad_parameter_operation = 22; + + // An asset mutate operation. + AssetOperation asset_operation = 23; + + // A bidding data exclusion mutate operation. + BiddingDataExclusionOperation bidding_data_exclusion_operation = 58; + + // A bidding seasonality adjustment mutate operation. + BiddingSeasonalityAdjustmentOperation bidding_seasonality_adjustment_operation = 59; + + // A bidding strategy mutate operation. + BiddingStrategyOperation bidding_strategy_operation = 6; + + // A campaign asset mutate operation. + CampaignAssetOperation campaign_asset_operation = 52; + + // A campaign bid modifier mutate operation. + CampaignBidModifierOperation campaign_bid_modifier_operation = 7; + + // A campaign budget mutate operation. + CampaignBudgetOperation campaign_budget_operation = 8; + + // A campaign criterion mutate operation. + CampaignCriterionOperation campaign_criterion_operation = 13; + + // A campaign draft mutate operation. + CampaignDraftOperation campaign_draft_operation = 24; + + // A campaign experiment mutate operation. + CampaignExperimentOperation campaign_experiment_operation = 25; + + // A campaign extension setting mutate operation. + CampaignExtensionSettingOperation campaign_extension_setting_operation = 26; + + // A campaign feed mutate operation. + CampaignFeedOperation campaign_feed_operation = 27; + + // A campaign label mutate operation. + CampaignLabelOperation campaign_label_operation = 28; + + // A campaign mutate operation. + CampaignOperation campaign_operation = 10; + + // A campaign shared set mutate operation. + CampaignSharedSetOperation campaign_shared_set_operation = 11; + + // A conversion action mutate operation. + ConversionActionOperation conversion_action_operation = 12; + + // A conversion custom variable mutate operation. + ConversionCustomVariableOperation conversion_custom_variable_operation = 55; + + // A conversion value rule mutate operation. + ConversionValueRuleOperation conversion_value_rule_operation = 63; + + // A conversion value rule set mutate operation. + ConversionValueRuleSetOperation conversion_value_rule_set_operation = 64; + + // A customer asset mutate operation. + CustomerAssetOperation customer_asset_operation = 57; + + // A customer extension setting mutate operation. + CustomerExtensionSettingOperation customer_extension_setting_operation = 30; + + // A customer feed mutate operation. + CustomerFeedOperation customer_feed_operation = 31; + + // A customer label mutate operation. + CustomerLabelOperation customer_label_operation = 32; + + // A customer negative criterion mutate operation. + CustomerNegativeCriterionOperation customer_negative_criterion_operation = 34; + + // A customer mutate operation. + CustomerOperation customer_operation = 35; + + // An extension feed item mutate operation. + ExtensionFeedItemOperation extension_feed_item_operation = 36; + + // A feed item mutate operation. + FeedItemOperation feed_item_operation = 37; + + // A feed item set mutate operation. + FeedItemSetOperation feed_item_set_operation = 53; + + // A feed item set link mutate operation. + FeedItemSetLinkOperation feed_item_set_link_operation = 54; + + // A feed item target mutate operation. + FeedItemTargetOperation feed_item_target_operation = 38; + + // A feed mapping mutate operation. + FeedMappingOperation feed_mapping_operation = 39; + + // A feed mutate operation. + FeedOperation feed_operation = 40; + + // A keyword plan ad group operation. + KeywordPlanAdGroupOperation keyword_plan_ad_group_operation = 44; + + // A keyword plan ad group keyword operation. + KeywordPlanAdGroupKeywordOperation keyword_plan_ad_group_keyword_operation = 50; + + // A keyword plan campaign keyword operation. + KeywordPlanCampaignKeywordOperation keyword_plan_campaign_keyword_operation = 51; + + // A keyword plan campaign operation. + KeywordPlanCampaignOperation keyword_plan_campaign_operation = 45; + + // A keyword plan operation. + KeywordPlanOperation keyword_plan_operation = 48; + + // A label mutate operation. + LabelOperation label_operation = 41; + + // A media file mutate operation. + MediaFileOperation media_file_operation = 42; + + // A remarketing action mutate operation. + RemarketingActionOperation remarketing_action_operation = 43; + + // A shared criterion mutate operation. + SharedCriterionOperation shared_criterion_operation = 14; + + // A shared set mutate operation. + SharedSetOperation shared_set_operation = 15; + + // A Smart campaign setting mutate operation. + SmartCampaignSettingOperation smart_campaign_setting_operation = 61; + + // A user list mutate operation. + UserListOperation user_list_operation = 16; + } +} + +// Response message for the resource mutate. +message MutateOperationResponse { + // The mutate response. + oneof response { + // The result for the ad group ad label mutate. + MutateAdGroupAdLabelResult ad_group_ad_label_result = 17; + + // The result for the ad group ad mutate. + MutateAdGroupAdResult ad_group_ad_result = 1; + + // The result for the ad group asset mutate. + MutateAdGroupAssetResult ad_group_asset_result = 56; + + // The result for the ad group bid modifier mutate. + MutateAdGroupBidModifierResult ad_group_bid_modifier_result = 2; + + // The result for the ad group criterion label mutate. + MutateAdGroupCriterionLabelResult ad_group_criterion_label_result = 18; + + // The result for the ad group criterion mutate. + MutateAdGroupCriterionResult ad_group_criterion_result = 3; + + // The result for the ad group extension setting mutate. + MutateAdGroupExtensionSettingResult ad_group_extension_setting_result = 19; + + // The result for the ad group feed mutate. + MutateAdGroupFeedResult ad_group_feed_result = 20; + + // The result for the ad group label mutate. + MutateAdGroupLabelResult ad_group_label_result = 21; + + // The result for the ad group mutate. + MutateAdGroupResult ad_group_result = 5; + + // The result for the ad parameter mutate. + MutateAdParameterResult ad_parameter_result = 22; + + // The result for the ad mutate. + MutateAdResult ad_result = 49; + + // The result for the asset mutate. + MutateAssetResult asset_result = 23; + + // The result for the bidding data exclusion mutate. + MutateBiddingDataExclusionsResult bidding_data_exclusion_result = 58; + + // The result for the bidding seasonality adjustment mutate. + MutateBiddingSeasonalityAdjustmentsResult bidding_seasonality_adjustment_result = 59; + + // The result for the bidding strategy mutate. + MutateBiddingStrategyResult bidding_strategy_result = 6; + + // The result for the campaign asset mutate. + MutateCampaignAssetResult campaign_asset_result = 52; + + // The result for the campaign bid modifier mutate. + MutateCampaignBidModifierResult campaign_bid_modifier_result = 7; + + // The result for the campaign budget mutate. + MutateCampaignBudgetResult campaign_budget_result = 8; + + // The result for the campaign criterion mutate. + MutateCampaignCriterionResult campaign_criterion_result = 13; + + // The result for the campaign draft mutate. + MutateCampaignDraftResult campaign_draft_result = 24; + + // The result for the campaign experiment mutate. + MutateCampaignExperimentResult campaign_experiment_result = 25; + + // The result for the campaign extension setting mutate. + MutateCampaignExtensionSettingResult campaign_extension_setting_result = 26; + + // The result for the campaign feed mutate. + MutateCampaignFeedResult campaign_feed_result = 27; + + // The result for the campaign label mutate. + MutateCampaignLabelResult campaign_label_result = 28; + + // The result for the campaign mutate. + MutateCampaignResult campaign_result = 10; + + // The result for the campaign shared set mutate. + MutateCampaignSharedSetResult campaign_shared_set_result = 11; + + // The result for the conversion action mutate. + MutateConversionActionResult conversion_action_result = 12; + + // The result for the conversion custom variable mutate. + MutateConversionCustomVariableResult conversion_custom_variable_result = 55; + + // The result for the conversion value rule mutate. + MutateConversionValueRuleResult conversion_value_rule_result = 63; + + // The result for the conversion value rule set mutate. + MutateConversionValueRuleSetResult conversion_value_rule_set_result = 64; + + // The result for the customer asset mutate. + MutateCustomerAssetResult customer_asset_result = 57; + + // The result for the customer extension setting mutate. + MutateCustomerExtensionSettingResult customer_extension_setting_result = 30; + + // The result for the customer feed mutate. + MutateCustomerFeedResult customer_feed_result = 31; + + // The result for the customer label mutate. + MutateCustomerLabelResult customer_label_result = 32; + + // The result for the customer negative criterion mutate. + MutateCustomerNegativeCriteriaResult customer_negative_criterion_result = 34; + + // The result for the customer mutate. + MutateCustomerResult customer_result = 35; + + // The result for the extension feed item mutate. + MutateExtensionFeedItemResult extension_feed_item_result = 36; + + // The result for the feed item mutate. + MutateFeedItemResult feed_item_result = 37; + + // The result for the feed item set mutate. + MutateFeedItemSetResult feed_item_set_result = 53; + + // The result for the feed item set link mutate. + MutateFeedItemSetLinkResult feed_item_set_link_result = 54; + + // The result for the feed item target mutate. + MutateFeedItemTargetResult feed_item_target_result = 38; + + // The result for the feed mapping mutate. + MutateFeedMappingResult feed_mapping_result = 39; + + // The result for the feed mutate. + MutateFeedResult feed_result = 40; + + // The result for the keyword plan ad group mutate. + MutateKeywordPlanAdGroupResult keyword_plan_ad_group_result = 44; + + // The result for the keyword plan campaign mutate. + MutateKeywordPlanCampaignResult keyword_plan_campaign_result = 45; + + // The result for the keyword plan ad group keyword mutate. + MutateKeywordPlanAdGroupKeywordResult keyword_plan_ad_group_keyword_result = 50; + + // The result for the keyword plan campaign keyword mutate. + MutateKeywordPlanCampaignKeywordResult keyword_plan_campaign_keyword_result = 51; + + // The result for the keyword plan mutate. + MutateKeywordPlansResult keyword_plan_result = 48; + + // The result for the label mutate. + MutateLabelResult label_result = 41; + + // The result for the media file mutate. + MutateMediaFileResult media_file_result = 42; + + // The result for the remarketing action mutate. + MutateRemarketingActionResult remarketing_action_result = 43; + + // The result for the shared criterion mutate. + MutateSharedCriterionResult shared_criterion_result = 14; + + // The result for the shared set mutate. + MutateSharedSetResult shared_set_result = 15; + + // The result for the Smart campaign setting mutate. + MutateSmartCampaignSettingResult smart_campaign_setting_result = 61; + + // The result for the user list mutate. + MutateUserListResult user_list_result = 16; + } +} diff --git a/google/ads/googleads/v8/services/group_placement_view_service.proto b/google/ads/googleads/v8/services/group_placement_view_service.proto new file mode 100644 index 000000000..bdd50974b --- /dev/null +++ b/google/ads/googleads/v8/services/group_placement_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/group_placement_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GroupPlacementViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Group Placement View service. + +// Service to fetch Group Placement views. +service GroupPlacementViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Group Placement view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetGroupPlacementView(GetGroupPlacementViewRequest) returns (google.ads.googleads.v8.resources.GroupPlacementView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/groupPlacementViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [GroupPlacementViewService.GetGroupPlacementView][google.ads.googleads.v8.services.GroupPlacementViewService.GetGroupPlacementView]. +message GetGroupPlacementViewRequest { + // Required. The resource name of the Group Placement view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GroupPlacementView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/hotel_group_view_service.proto b/google/ads/googleads/v8/services/hotel_group_view_service.proto new file mode 100644 index 000000000..4c90a32aa --- /dev/null +++ b/google/ads/googleads/v8/services/hotel_group_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/hotel_group_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "HotelGroupViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Hotel Group View Service. + +// Service to manage Hotel Group Views. +service HotelGroupViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Hotel Group View in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetHotelGroupView(GetHotelGroupViewRequest) returns (google.ads.googleads.v8.resources.HotelGroupView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/hotelGroupViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [HotelGroupViewService.GetHotelGroupView][google.ads.googleads.v8.services.HotelGroupViewService.GetHotelGroupView]. +message GetHotelGroupViewRequest { + // Required. Resource name of the Hotel Group View to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/HotelGroupView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/hotel_performance_view_service.proto b/google/ads/googleads/v8/services/hotel_performance_view_service.proto new file mode 100644 index 000000000..80fc3a8d2 --- /dev/null +++ b/google/ads/googleads/v8/services/hotel_performance_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/hotel_performance_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "HotelPerformanceViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Hotel Performance View Service. + +// Service to manage Hotel Performance Views. +service HotelPerformanceViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Hotel Performance View in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetHotelPerformanceView(GetHotelPerformanceViewRequest) returns (google.ads.googleads.v8.resources.HotelPerformanceView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/hotelPerformanceView}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [HotelPerformanceViewService.GetHotelPerformanceView][google.ads.googleads.v8.services.HotelPerformanceViewService.GetHotelPerformanceView]. +message GetHotelPerformanceViewRequest { + // Required. Resource name of the Hotel Performance View to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/HotelPerformanceView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/income_range_view_service.proto b/google/ads/googleads/v8/services/income_range_view_service.proto new file mode 100644 index 000000000..40c07445b --- /dev/null +++ b/google/ads/googleads/v8/services/income_range_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/income_range_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "IncomeRangeViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Income Range View service. + +// Service to manage income range views. +service IncomeRangeViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested income range view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetIncomeRangeView(GetIncomeRangeViewRequest) returns (google.ads.googleads.v8.resources.IncomeRangeView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/incomeRangeViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [IncomeRangeViewService.GetIncomeRangeView][google.ads.googleads.v8.services.IncomeRangeViewService.GetIncomeRangeView]. +message GetIncomeRangeViewRequest { + // Required. The resource name of the income range view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/IncomeRangeView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/invoice_service.proto b/google/ads/googleads/v8/services/invoice_service.proto new file mode 100644 index 000000000..9da634584 --- /dev/null +++ b/google/ads/googleads/v8/services/invoice_service.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/month_of_year.proto"; +import "google/ads/googleads/v8/resources/invoice.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "InvoiceServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Invoice service. + +// A service to fetch invoices issued for a billing setup during a given month. +service InvoiceService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns all invoices associated with a billing setup, for a given month. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [InvoiceError]() + // [QuotaError]() + // [RequestError]() + rpc ListInvoices(ListInvoicesRequest) returns (ListInvoicesResponse) { + option (google.api.http) = { + get: "/v8/customers/{customer_id=*}/invoices" + }; + option (google.api.method_signature) = "customer_id,billing_setup,issue_year,issue_month"; + } +} + +// Request message for fetching the invoices of a given billing setup that were +// issued during a given month. +message ListInvoicesRequest { + // Required. The ID of the customer to fetch invoices for. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The billing setup resource name of the requested invoices. + // + // `customers/{customer_id}/billingSetups/{billing_setup_id}` + string billing_setup = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The issue year to retrieve invoices, in yyyy format. Only + // invoices issued in 2019 or later can be retrieved. + string issue_year = 3 [(google.api.field_behavior) = REQUIRED]; + + // Required. The issue month to retrieve invoices. + google.ads.googleads.v8.enums.MonthOfYearEnum.MonthOfYear issue_month = 4 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [InvoiceService.ListInvoices][google.ads.googleads.v8.services.InvoiceService.ListInvoices]. +message ListInvoicesResponse { + // The list of invoices that match the billing setup and time period. + repeated google.ads.googleads.v8.resources.Invoice invoices = 1; +} diff --git a/google/ads/googleads/v8/services/keyword_plan_ad_group_keyword_service.proto b/google/ads/googleads/v8/services/keyword_plan_ad_group_keyword_service.proto new file mode 100644 index 000000000..fa940e695 --- /dev/null +++ b/google/ads/googleads/v8/services/keyword_plan_ad_group_keyword_service.proto @@ -0,0 +1,165 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/keyword_plan_ad_group_keyword.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupKeywordServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the keyword plan ad group keyword service. + +// Service to manage Keyword Plan ad group keywords. KeywordPlanAdGroup is +// required to add ad group keywords. Positive and negative keywords are +// supported. A maximum of 10,000 positive keywords are allowed per keyword +// plan. A maximum of 1,000 negative keywords are allower per keyword plan. This +// includes campaign negative keywords and ad group negative keywords. +service KeywordPlanAdGroupKeywordService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Keyword Plan ad group keyword in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordPlanAdGroupKeyword(GetKeywordPlanAdGroupKeywordRequest) returns (google.ads.googleads.v8.resources.KeywordPlanAdGroupKeyword) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes Keyword Plan ad group keywords. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanAdGroupKeywordError]() + // [KeywordPlanError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc MutateKeywordPlanAdGroupKeywords(MutateKeywordPlanAdGroupKeywordsRequest) returns (MutateKeywordPlanAdGroupKeywordsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword][google.ads.googleads.v8.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword]. +message GetKeywordPlanAdGroupKeywordRequest { + // Required. The resource name of the ad group keyword to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" + } + ]; +} + +// Request message for +// [KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords][google.ads.googleads.v8.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords]. +message MutateKeywordPlanAdGroupKeywordsRequest { + // Required. The ID of the customer whose Keyword Plan ad group keywords are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual Keyword Plan ad group + // keywords. + repeated KeywordPlanAdGroupKeywordOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a Keyword Plan ad group +// keyword. +message KeywordPlanAdGroupKeywordOperation { + // The FieldMask that determines which resource fields are modified in an + // update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new Keyword Plan + // ad group keyword. + google.ads.googleads.v8.resources.KeywordPlanAdGroupKeyword create = 1; + + // Update operation: The Keyword Plan ad group keyword is expected to have a + // valid resource name. + google.ads.googleads.v8.resources.KeywordPlanAdGroupKeyword update = 2; + + // Remove operation: A resource name for the removed Keyword Plan ad group + // keyword is expected, in this format: + // + // `customers/{customer_id}/keywordPlanAdGroupKeywords/{kp_ad_group_keyword_id}` + string remove = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" + }]; + } +} + +// Response message for a Keyword Plan ad group keyword mutate. +message MutateKeywordPlanAdGroupKeywordsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateKeywordPlanAdGroupKeywordResult results = 2; +} + +// The result for the Keyword Plan ad group keyword mutate. +message MutateKeywordPlanAdGroupKeywordResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/keyword_plan_ad_group_service.proto b/google/ads/googleads/v8/services/keyword_plan_ad_group_service.proto new file mode 100644 index 000000000..0e296b227 --- /dev/null +++ b/google/ads/googleads/v8/services/keyword_plan_ad_group_service.proto @@ -0,0 +1,159 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/keyword_plan_ad_group.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the keyword plan ad group service. + +// Service to manage Keyword Plan ad groups. +service KeywordPlanAdGroupService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Keyword Plan ad group in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordPlanAdGroup(GetKeywordPlanAdGroupRequest) returns (google.ads.googleads.v8.resources.KeywordPlanAdGroup) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/keywordPlanAdGroups/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes Keyword Plan ad groups. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanAdGroupError]() + // [KeywordPlanError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc MutateKeywordPlanAdGroups(MutateKeywordPlanAdGroupsRequest) returns (MutateKeywordPlanAdGroupsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/keywordPlanAdGroups:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [KeywordPlanAdGroupService.GetKeywordPlanAdGroup][google.ads.googleads.v8.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup]. +message GetKeywordPlanAdGroupRequest { + // Required. The resource name of the Keyword Plan ad group to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroup" + } + ]; +} + +// Request message for [KeywordPlanAdGroupService.MutateKeywordPlanAdGroups][google.ads.googleads.v8.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups]. +message MutateKeywordPlanAdGroupsRequest { + // Required. The ID of the customer whose Keyword Plan ad groups are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual Keyword Plan ad groups. + repeated KeywordPlanAdGroupOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a Keyword Plan ad group. +message KeywordPlanAdGroupOperation { + // The FieldMask that determines which resource fields are modified in an + // update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new Keyword Plan + // ad group. + google.ads.googleads.v8.resources.KeywordPlanAdGroup create = 1; + + // Update operation: The Keyword Plan ad group is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.KeywordPlanAdGroup update = 2; + + // Remove operation: A resource name for the removed Keyword Plan ad group + // is expected, in this format: + // + // `customers/{customer_id}/keywordPlanAdGroups/{kp_ad_group_id}` + string remove = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroup" + }]; + } +} + +// Response message for a Keyword Plan ad group mutate. +message MutateKeywordPlanAdGroupsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. The order of the results is determined by the + // order of the keywords in the original request. + repeated MutateKeywordPlanAdGroupResult results = 2; +} + +// The result for the Keyword Plan ad group mutate. +message MutateKeywordPlanAdGroupResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/keyword_plan_campaign_keyword_service.proto b/google/ads/googleads/v8/services/keyword_plan_campaign_keyword_service.proto new file mode 100644 index 000000000..3229f3aa0 --- /dev/null +++ b/google/ads/googleads/v8/services/keyword_plan_campaign_keyword_service.proto @@ -0,0 +1,162 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/keyword_plan_campaign_keyword.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignKeywordServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the keyword plan campaign keyword service. + +// Service to manage Keyword Plan campaign keywords. KeywordPlanCampaign is +// required to add the campaign keywords. Only negative keywords are supported. +// A maximum of 1000 negative keywords are allowed per plan. This includes both +// campaign negative keywords and ad group negative keywords. +service KeywordPlanCampaignKeywordService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested plan in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordPlanCampaignKeyword(GetKeywordPlanCampaignKeywordRequest) returns (google.ads.googleads.v8.resources.KeywordPlanCampaignKeyword) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes Keyword Plan campaign keywords. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanAdGroupKeywordError]() + // [KeywordPlanCampaignKeywordError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc MutateKeywordPlanCampaignKeywords(MutateKeywordPlanCampaignKeywordsRequest) returns (MutateKeywordPlanCampaignKeywordsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword][google.ads.googleads.v8.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword]. +message GetKeywordPlanCampaignKeywordRequest { + // Required. The resource name of the plan to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" + } + ]; +} + +// Request message for +// [KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords][google.ads.googleads.v8.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords]. +message MutateKeywordPlanCampaignKeywordsRequest { + // Required. The ID of the customer whose campaign keywords are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual Keyword Plan campaign + // keywords. + repeated KeywordPlanCampaignKeywordOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a Keyword Plan campaign +// keyword. +message KeywordPlanCampaignKeywordOperation { + // The FieldMask that determines which resource fields are modified in an + // update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new Keyword Plan + // campaign keyword. + google.ads.googleads.v8.resources.KeywordPlanCampaignKeyword create = 1; + + // Update operation: The Keyword Plan campaign keyword expected to have a + // valid resource name. + google.ads.googleads.v8.resources.KeywordPlanCampaignKeyword update = 2; + + // Remove operation: A resource name for the removed Keyword Plan campaign + // keywords expected in this format: + // + // `customers/{customer_id}/keywordPlanCampaignKeywords/{kp_campaign_keyword_id}` + string remove = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" + }]; + } +} + +// Response message for a Keyword Plan campaign keyword mutate. +message MutateKeywordPlanCampaignKeywordsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateKeywordPlanCampaignKeywordResult results = 2; +} + +// The result for the Keyword Plan campaign keyword mutate. +message MutateKeywordPlanCampaignKeywordResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/keyword_plan_campaign_service.proto b/google/ads/googleads/v8/services/keyword_plan_campaign_service.proto new file mode 100644 index 000000000..f02084049 --- /dev/null +++ b/google/ads/googleads/v8/services/keyword_plan_campaign_service.proto @@ -0,0 +1,160 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/keyword_plan_campaign.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the keyword plan campaign service. + +// Service to manage Keyword Plan campaigns. +service KeywordPlanCampaignService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Keyword Plan campaign in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordPlanCampaign(GetKeywordPlanCampaignRequest) returns (google.ads.googleads.v8.resources.KeywordPlanCampaign) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/keywordPlanCampaigns/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes Keyword Plan campaigns. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanCampaignError]() + // [KeywordPlanError]() + // [ListOperationError]() + // [MutateError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc MutateKeywordPlanCampaigns(MutateKeywordPlanCampaignsRequest) returns (MutateKeywordPlanCampaignsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/keywordPlanCampaigns:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [KeywordPlanCampaignService.GetKeywordPlanCampaign][google.ads.googleads.v8.services.KeywordPlanCampaignService.GetKeywordPlanCampaign]. +message GetKeywordPlanCampaignRequest { + // Required. The resource name of the Keyword Plan campaign to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + } + ]; +} + +// Request message for +// [KeywordPlanCampaignService.MutateKeywordPlanCampaigns][google.ads.googleads.v8.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns]. +message MutateKeywordPlanCampaignsRequest { + // Required. The ID of the customer whose Keyword Plan campaigns are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual Keyword Plan campaigns. + repeated KeywordPlanCampaignOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a Keyword Plan campaign. +message KeywordPlanCampaignOperation { + // The FieldMask that determines which resource fields are modified in an + // update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new Keyword Plan + // campaign. + google.ads.googleads.v8.resources.KeywordPlanCampaign create = 1; + + // Update operation: The Keyword Plan campaign is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.KeywordPlanCampaign update = 2; + + // Remove operation: A resource name for the removed Keyword Plan campaign + // is expected, in this format: + // + // `customers/{customer_id}/keywordPlanCampaigns/{keywordPlan_campaign_id}` + string remove = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + }]; + } +} + +// Response message for a Keyword Plan campaign mutate. +message MutateKeywordPlanCampaignsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateKeywordPlanCampaignResult results = 2; +} + +// The result for the Keyword Plan campaign mutate. +message MutateKeywordPlanCampaignResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/keyword_plan_idea_service.proto b/google/ads/googleads/v8/services/keyword_plan_idea_service.proto new file mode 100644 index 000000000..5c436446c --- /dev/null +++ b/google/ads/googleads/v8/services/keyword_plan_idea_service.proto @@ -0,0 +1,181 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/keyword_plan_common.proto"; +import "google/ads/googleads/v8/enums/keyword_plan_keyword_annotation.proto"; +import "google/ads/googleads/v8/enums/keyword_plan_network.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanIdeaServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the keyword plan idea service. + +// Service to generate keyword ideas. +service KeywordPlanIdeaService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns a list of keyword ideas. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanIdeaError]() + // [QuotaError]() + // [RequestError]() + rpc GenerateKeywordIdeas(GenerateKeywordIdeasRequest) returns (GenerateKeywordIdeaResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}:generateKeywordIdeas" + body: "*" + }; + } +} + +// Request message for [KeywordPlanIdeaService.GenerateKeywordIdeas][google.ads.googleads.v8.services.KeywordPlanIdeaService.GenerateKeywordIdeas]. +message GenerateKeywordIdeasRequest { + // The ID of the customer with the recommendation. + string customer_id = 1; + + // The resource name of the language to target. + // Required + optional string language = 14; + + // The resource names of the location to target. + // Max 10 + repeated string geo_target_constants = 15; + + // If true, adult keywords will be included in response. + // The default value is false. + bool include_adult_keywords = 10; + + // Token of the page to retrieve. If not specified, the first + // page of results will be returned. To request next page of results use the + // value obtained from `next_page_token` in the previous response. + // The request fields must match across pages. + string page_token = 12; + + // Number of results to retrieve in a single page. + // A maximum of 10,000 results may be returned, if the page_size + // exceeds this, it is ignored. + // If unspecified, at most 10,000 results will be returned. + // The server may decide to further limit the number of returned resources. + // If the response contains fewer than 10,000 results it may not be assumed + // as last page of results. + int32 page_size = 13; + + // Targeting network. + google.ads.googleads.v8.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork keyword_plan_network = 9; + + // The keyword annotations to include in response. + repeated google.ads.googleads.v8.enums.KeywordPlanKeywordAnnotationEnum.KeywordPlanKeywordAnnotation keyword_annotation = 17; + + // The aggregate fields to include in response. + google.ads.googleads.v8.common.KeywordPlanAggregateMetrics aggregate_metrics = 16; + + // The options for historical metrics data. + google.ads.googleads.v8.common.HistoricalMetricsOptions historical_metrics_options = 18; + + // The type of seed to generate keyword ideas. + oneof seed { + // A Keyword and a specific Url to generate ideas from + // e.g. cars, www.example.com/cars. + KeywordAndUrlSeed keyword_and_url_seed = 2; + + // A Keyword or phrase to generate ideas from, e.g. cars. + KeywordSeed keyword_seed = 3; + + // A specific url to generate ideas from, e.g. www.example.com/cars. + UrlSeed url_seed = 5; + + // The site to generate ideas from, e.g. www.example.com. + SiteSeed site_seed = 11; + } +} + +// Keyword And Url Seed +message KeywordAndUrlSeed { + // The URL to crawl in order to generate keyword ideas. + optional string url = 3; + + // Requires at least one keyword. + repeated string keywords = 4; +} + +// Keyword Seed +message KeywordSeed { + // Requires at least one keyword. + repeated string keywords = 2; +} + +// Site Seed +message SiteSeed { + // The domain name of the site. If the customer requesting the ideas doesn't + // own the site provided only public information is returned. + optional string site = 2; +} + +// Url Seed +message UrlSeed { + // The URL to crawl in order to generate keyword ideas. + optional string url = 2; +} + +// Response message for [KeywordPlanIdeaService.GenerateKeywordIdeas][google.ads.googleads.v8.services.KeywordPlanIdeaService.GenerateKeywordIdeas]. +message GenerateKeywordIdeaResponse { + // Results of generating keyword ideas. + repeated GenerateKeywordIdeaResult results = 1; + + // The aggregate metrics for all keyword ideas. + google.ads.googleads.v8.common.KeywordPlanAggregateMetricResults aggregate_metric_results = 4; + + // Pagination token used to retrieve the next page of results. + // Pass the content of this string as the `page_token` attribute of + // the next request. + // `next_page_token` is not returned for the last page. + string next_page_token = 2; + + // Total number of results available. + int64 total_size = 3; +} + +// The result of generating keyword ideas. +message GenerateKeywordIdeaResult { + // Text of the keyword idea. + // As in Keyword Plan historical metrics, this text may not be an actual + // keyword, but the canonical form of multiple keywords. + // See KeywordPlanKeywordHistoricalMetrics message in KeywordPlanService. + optional string text = 5; + + // The historical metrics for the keyword. + google.ads.googleads.v8.common.KeywordPlanHistoricalMetrics keyword_idea_metrics = 3; + + // The annotations for the keyword. + // The annotation data is only provided if requested. + google.ads.googleads.v8.common.KeywordAnnotations keyword_annotations = 6; +} diff --git a/google/ads/googleads/v8/services/keyword_plan_service.proto b/google/ads/googleads/v8/services/keyword_plan_service.proto new file mode 100644 index 000000000..80608d9a9 --- /dev/null +++ b/google/ads/googleads/v8/services/keyword_plan_service.proto @@ -0,0 +1,446 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/keyword_plan_common.proto"; +import "google/ads/googleads/v8/resources/keyword_plan.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the keyword plan service. + +// Service to manage keyword plans. +service KeywordPlanService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested plan in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordPlan(GetKeywordPlanRequest) returns (google.ads.googleads.v8.resources.KeywordPlan) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/keywordPlans/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes keyword plans. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [StringLengthError]() + rpc MutateKeywordPlans(MutateKeywordPlansRequest) returns (MutateKeywordPlansResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/keywordPlans:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } + + // Returns the requested Keyword Plan forecast curve. + // Only the bidding strategy is considered for generating forecast curve. + // The bidding strategy value specified in the plan is ignored. + // + // To generate a forecast at a value specified in the plan, use + // KeywordPlanService.GenerateForecastMetrics. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanError]() + // [QuotaError]() + // [RequestError]() + rpc GenerateForecastCurve(GenerateForecastCurveRequest) returns (GenerateForecastCurveResponse) { + option (google.api.http) = { + post: "/v8/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" + body: "*" + }; + option (google.api.method_signature) = "keyword_plan"; + } + + // Returns a forecast in the form of a time series for the Keyword Plan over + // the next 52 weeks. + // (1) Forecasts closer to the current date are generally more accurate than + // further out. + // + // (2) The forecast reflects seasonal trends using current and + // prior traffic patterns. The forecast period of the plan is ignored. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanError]() + // [QuotaError]() + // [RequestError]() + rpc GenerateForecastTimeSeries(GenerateForecastTimeSeriesRequest) returns (GenerateForecastTimeSeriesResponse) { + option (google.api.http) = { + post: "/v8/{keyword_plan=customers/*/keywordPlans/*}:generateForecastTimeSeries" + body: "*" + }; + option (google.api.method_signature) = "keyword_plan"; + } + + // Returns the requested Keyword Plan forecasts. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanError]() + // [QuotaError]() + // [RequestError]() + rpc GenerateForecastMetrics(GenerateForecastMetricsRequest) returns (GenerateForecastMetricsResponse) { + option (google.api.http) = { + post: "/v8/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" + body: "*" + }; + option (google.api.method_signature) = "keyword_plan"; + } + + // Returns the requested Keyword Plan historical metrics. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanError]() + // [QuotaError]() + // [RequestError]() + rpc GenerateHistoricalMetrics(GenerateHistoricalMetricsRequest) returns (GenerateHistoricalMetricsResponse) { + option (google.api.http) = { + post: "/v8/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" + body: "*" + }; + option (google.api.method_signature) = "keyword_plan"; + } +} + +// Request message for [KeywordPlanService.GetKeywordPlan][google.ads.googleads.v8.services.KeywordPlanService.GetKeywordPlan]. +message GetKeywordPlanRequest { + // Required. The resource name of the plan to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; +} + +// Request message for [KeywordPlanService.MutateKeywordPlans][google.ads.googleads.v8.services.KeywordPlanService.MutateKeywordPlans]. +message MutateKeywordPlansRequest { + // Required. The ID of the customer whose keyword plans are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual keyword plans. + repeated KeywordPlanOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a keyword plan. +message KeywordPlanOperation { + // The FieldMask that determines which resource fields are modified in an + // update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new keyword plan. + google.ads.googleads.v8.resources.KeywordPlan create = 1; + + // Update operation: The keyword plan is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.KeywordPlan update = 2; + + // Remove operation: A resource name for the removed keyword plan is + // expected in this format: + // + // `customers/{customer_id}/keywordPlans/{keyword_plan_id}` + string remove = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + }]; + } +} + +// Response message for a keyword plan mutate. +message MutateKeywordPlansResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateKeywordPlansResult results = 2; +} + +// The result for the keyword plan mutate. +message MutateKeywordPlansResult { + // Returned for successful operations. + string resource_name = 1; +} + +// Request message for [KeywordPlanService.GenerateForecastCurve][google.ads.googleads.v8.services.KeywordPlanService.GenerateForecastCurve]. +message GenerateForecastCurveRequest { + // Required. The resource name of the keyword plan to be forecasted. + string keyword_plan = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; +} + +// Response message for [KeywordPlanService.GenerateForecastCurve][google.ads.googleads.v8.services.KeywordPlanService.GenerateForecastCurve]. +message GenerateForecastCurveResponse { + // List of forecast curves for the keyword plan campaign. + // One maximum. + repeated KeywordPlanCampaignForecastCurve campaign_forecast_curves = 1; +} + +// Request message for [KeywordPlanService.GenerateForecastTimeSeries][google.ads.googleads.v8.services.KeywordPlanService.GenerateForecastTimeSeries]. +message GenerateForecastTimeSeriesRequest { + // Required. The resource name of the keyword plan to be forecasted. + string keyword_plan = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; +} + +// Response message for [KeywordPlanService.GenerateForecastTimeSeries][google.ads.googleads.v8.services.KeywordPlanService.GenerateForecastTimeSeries]. +message GenerateForecastTimeSeriesResponse { + // List of weekly time series forecasts for the keyword plan campaign. + // One maximum. + repeated KeywordPlanWeeklyTimeSeriesForecast weekly_time_series_forecasts = 1; +} + +// Request message for [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v8.services.KeywordPlanService.GenerateForecastMetrics]. +message GenerateForecastMetricsRequest { + // Required. The resource name of the keyword plan to be forecasted. + string keyword_plan = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; +} + +// Response message for [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v8.services.KeywordPlanService.GenerateForecastMetrics]. +message GenerateForecastMetricsResponse { + // List of campaign forecasts. + // One maximum. + repeated KeywordPlanCampaignForecast campaign_forecasts = 1; + + // List of ad group forecasts. + repeated KeywordPlanAdGroupForecast ad_group_forecasts = 2; + + // List of keyword forecasts. + repeated KeywordPlanKeywordForecast keyword_forecasts = 3; +} + +// A campaign forecast. +message KeywordPlanCampaignForecast { + // The resource name of the Keyword Plan campaign related to the forecast. + // + // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` + optional string keyword_plan_campaign = 3; + + // The forecast for the Keyword Plan campaign. + ForecastMetrics campaign_forecast = 2; +} + +// An ad group forecast. +message KeywordPlanAdGroupForecast { + // The resource name of the Keyword Plan ad group related to the forecast. + // + // `customers/{customer_id}/keywordPlanAdGroups/{keyword_plan_ad_group_id}` + optional string keyword_plan_ad_group = 3; + + // The forecast for the Keyword Plan ad group. + ForecastMetrics ad_group_forecast = 2; +} + +// A keyword forecast. +message KeywordPlanKeywordForecast { + // The resource name of the Keyword Plan keyword related to the forecast. + // + // `customers/{customer_id}/keywordPlanAdGroupKeywords/{keyword_plan_ad_group_keyword_id}` + optional string keyword_plan_ad_group_keyword = 3; + + // The forecast for the Keyword Plan keyword. + ForecastMetrics keyword_forecast = 2; +} + +// The forecast curve for the campaign. +message KeywordPlanCampaignForecastCurve { + // The resource name of the Keyword Plan campaign related to the forecast. + // + // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` + optional string keyword_plan_campaign = 3; + + // The max cpc bid forecast curve for the campaign. + KeywordPlanMaxCpcBidForecastCurve max_cpc_bid_forecast_curve = 2; +} + +// The max cpc bid forecast curve. +message KeywordPlanMaxCpcBidForecastCurve { + // The forecasts for the Keyword Plan campaign at different max CPC bids. + repeated KeywordPlanMaxCpcBidForecast max_cpc_bid_forecasts = 1; +} + +// The forecast of the campaign at a specific bid. +message KeywordPlanMaxCpcBidForecast { + // The max cpc bid in micros. + optional int64 max_cpc_bid_micros = 3; + + // The forecast for the Keyword Plan campaign at the specific bid. + ForecastMetrics max_cpc_bid_forecast = 2; +} + +// The weekly time series forecast for the keyword plan campaign. +message KeywordPlanWeeklyTimeSeriesForecast { + // The resource name of the Keyword Plan campaign related to the forecast. + // + // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` + optional string keyword_plan_campaign = 1; + + // The forecasts for the Keyword Plan campaign at different max CPC bids. + repeated KeywordPlanWeeklyForecast weekly_forecasts = 2; +} + +// The forecast of the campaign for the week starting start_date. +message KeywordPlanWeeklyForecast { + // The start date, in yyyy-mm-dd format. This date is inclusive. + optional string start_date = 1; + + // The forecast for the Keyword Plan campaign for the week. + ForecastMetrics forecast = 2; +} + +// Forecast metrics. +message ForecastMetrics { + // Impressions + optional double impressions = 7; + + // Ctr + optional double ctr = 8; + + // AVG cpc + optional int64 average_cpc = 9; + + // Clicks + optional double clicks = 10; + + // Cost + optional int64 cost_micros = 11; +} + +// Request message for [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v8.services.KeywordPlanService.GenerateHistoricalMetrics]. +message GenerateHistoricalMetricsRequest { + // Required. The resource name of the keyword plan of which historical metrics are + // requested. + string keyword_plan = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; + + // The aggregate fields to include in response. + google.ads.googleads.v8.common.KeywordPlanAggregateMetrics aggregate_metrics = 2; + + // The options for historical metrics data. + google.ads.googleads.v8.common.HistoricalMetricsOptions historical_metrics_options = 3; +} + +// Response message for [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v8.services.KeywordPlanService.GenerateHistoricalMetrics]. +message GenerateHistoricalMetricsResponse { + // List of keyword historical metrics. + repeated KeywordPlanKeywordHistoricalMetrics metrics = 1; + + // The aggregate metrics for all the keywords in the keyword planner plan. + google.ads.googleads.v8.common.KeywordPlanAggregateMetricResults aggregate_metric_results = 2; +} + +// A keyword historical metrics. +message KeywordPlanKeywordHistoricalMetrics { + // The text of the query associated with one or more ad_group_keywords in the + // plan. + // + // Note that we de-dupe your keywords list, eliminating close variants before + // returning the plan's keywords as text. For example, if your plan originally + // contained the keywords 'car' and 'cars', the returned search query will + // only contain 'cars'. + // Starting V5, the list of de-duped queries will be included in + // close_variants field. + optional string search_query = 4; + + // The list of close variant queries for search_query whose search results + // are combined into the search_query. + repeated string close_variants = 3; + + // The historical metrics for the query associated with one or more + // ad_group_keywords in the plan. + google.ads.googleads.v8.common.KeywordPlanHistoricalMetrics keyword_metrics = 2; +} diff --git a/google/ads/googleads/v8/services/keyword_theme_constant_service.proto b/google/ads/googleads/v8/services/keyword_theme_constant_service.proto new file mode 100644 index 000000000..3e607999a --- /dev/null +++ b/google/ads/googleads/v8/services/keyword_theme_constant_service.proto @@ -0,0 +1,98 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/keyword_theme_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordThemeConstantServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Smart Campaign keyword theme constant service. + +// Service to fetch Smart Campaign keyword themes. +service KeywordThemeConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested keyword theme constant in full detail. + rpc GetKeywordThemeConstant(GetKeywordThemeConstantRequest) returns (google.ads.googleads.v8.resources.KeywordThemeConstant) { + option (google.api.http) = { + get: "/v8/{resource_name=keywordThemeConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Returns KeywordThemeConstant suggestions by keyword themes. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc SuggestKeywordThemeConstants(SuggestKeywordThemeConstantsRequest) returns (SuggestKeywordThemeConstantsResponse) { + option (google.api.http) = { + post: "/v8/keywordThemeConstants:suggest" + body: "*" + }; + } +} + +// Request message for [KeywordThemeConstantService.GetKeywordThemeConstant][google.ads.googleads.v8.services.KeywordThemeConstantService.GetKeywordThemeConstant]. +message GetKeywordThemeConstantRequest { + // Required. The resource name of the keyword theme constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordThemeConstant" + } + ]; +} + +// Request message for +// [KeywordThemeConstantService.SuggestKeywordThemeConstants][google.ads.googleads.v8.services.KeywordThemeConstantService.SuggestKeywordThemeConstants]. +message SuggestKeywordThemeConstantsRequest { + // The query text of a keyword theme that will be used to map to similar + // keyword themes. E.g. "plumber" or "roofer". + string query_text = 1; + + // Upper-case, two-letter country code as defined by ISO-3166. This for + // refining the scope of the query, default to 'US' if not set. + string country_code = 2; + + // The two letter language code for get corresponding keyword theme for + // refining the scope of the query, default to 'en' if not set. + string language_code = 3; +} + +// Response message for +// [KeywordThemeConstantService.SuggestKeywordThemeConstants][google.ads.googleads.v8.services.KeywordThemeConstantService.SuggestKeywordThemeConstants]. +message SuggestKeywordThemeConstantsResponse { + // Smart Campaign keyword theme suggestions. + repeated google.ads.googleads.v8.resources.KeywordThemeConstant keyword_theme_constants = 1; +} diff --git a/google/ads/googleads/v8/services/keyword_view_service.proto b/google/ads/googleads/v8/services/keyword_view_service.proto new file mode 100644 index 000000000..7070cbcf8 --- /dev/null +++ b/google/ads/googleads/v8/services/keyword_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/keyword_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Keyword View service. + +// Service to manage keyword views. +service KeywordViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested keyword view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordView(GetKeywordViewRequest) returns (google.ads.googleads.v8.resources.KeywordView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/keywordViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [KeywordViewService.GetKeywordView][google.ads.googleads.v8.services.KeywordViewService.GetKeywordView]. +message GetKeywordViewRequest { + // Required. The resource name of the keyword view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/label_service.proto b/google/ads/googleads/v8/services/label_service.proto new file mode 100644 index 000000000..dcec0e138 --- /dev/null +++ b/google/ads/googleads/v8/services/label_service.proto @@ -0,0 +1,168 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "LabelServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Service to manage labels. +service LabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested label in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetLabel(GetLabelRequest) returns (google.ads.googleads.v8.resources.Label) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/labels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes labels. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [LabelError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateLabels(MutateLabelsRequest) returns (MutateLabelsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/labels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [LabelService.GetLabel][google.ads.googleads.v8.services.LabelService.GetLabel]. +message GetLabelRequest { + // Required. The resource name of the label to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} + +// Request message for [LabelService.MutateLabels][google.ads.googleads.v8.services.LabelService.MutateLabels]. +message MutateLabelsRequest { + // Required. ID of the customer whose labels are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on labels. + repeated LabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on a label. +message LabelOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new label. + google.ads.googleads.v8.resources.Label create = 1; + + // Update operation: The label is expected to have a valid resource name. + google.ads.googleads.v8.resources.Label update = 2; + + // Remove operation: A resource name for the label being removed, in + // this format: + // + // `customers/{customer_id}/labels/{label_id}` + string remove = 3; + } +} + +// Response message for a labels mutate. +message MutateLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateLabelResult results = 2; +} + +// The result for a label mutate. +message MutateLabelResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated label with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.Label label = 2; +} diff --git a/google/ads/googleads/v8/services/landing_page_view_service.proto b/google/ads/googleads/v8/services/landing_page_view_service.proto new file mode 100644 index 000000000..84a0325b9 --- /dev/null +++ b/google/ads/googleads/v8/services/landing_page_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/landing_page_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "LandingPageViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the landing page view service. + +// Service to fetch landing page views. +service LandingPageViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested landing page view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetLandingPageView(GetLandingPageViewRequest) returns (google.ads.googleads.v8.resources.LandingPageView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/landingPageViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [LandingPageViewService.GetLandingPageView][google.ads.googleads.v8.services.LandingPageViewService.GetLandingPageView]. +message GetLandingPageViewRequest { + // Required. The resource name of the landing page view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LandingPageView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/language_constant_service.proto b/google/ads/googleads/v8/services/language_constant_service.proto new file mode 100644 index 000000000..e82eaa06d --- /dev/null +++ b/google/ads/googleads/v8/services/language_constant_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/language_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "LanguageConstantServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the language constant service. + +// Service to fetch language constants. +service LanguageConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested language constant. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetLanguageConstant(GetLanguageConstantRequest) returns (google.ads.googleads.v8.resources.LanguageConstant) { + option (google.api.http) = { + get: "/v8/{resource_name=languageConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [LanguageConstantService.GetLanguageConstant][google.ads.googleads.v8.services.LanguageConstantService.GetLanguageConstant]. +message GetLanguageConstantRequest { + // Required. Resource name of the language constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LanguageConstant" + } + ]; +} diff --git a/google/ads/googleads/v8/services/life_event_service.proto b/google/ads/googleads/v8/services/life_event_service.proto new file mode 100644 index 000000000..1660a6f4e --- /dev/null +++ b/google/ads/googleads/v8/services/life_event_service.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/life_event.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "LifeEventServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the life event service + +// Service to fetch Google Ads Life Events. +service LifeEventService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested life event in full detail. + rpc GetLifeEvent(GetLifeEventRequest) returns (google.ads.googleads.v8.resources.LifeEvent) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/lifeEvents/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [LifeEventService.GetLifeEvent][google.ads.googleads.v8.services.LifeEventService.GetLifeEvent]. +message GetLifeEventRequest { + // Required. Resource name of the LifeEvent to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LifeEvent" + } + ]; +} diff --git a/google/ads/googleads/v8/services/location_view_service.proto b/google/ads/googleads/v8/services/location_view_service.proto new file mode 100644 index 000000000..cc2eabfbd --- /dev/null +++ b/google/ads/googleads/v8/services/location_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/location_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "LocationViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Location View service. + +// Service to fetch location views. +service LocationViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested location view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetLocationView(GetLocationViewRequest) returns (google.ads.googleads.v8.resources.LocationView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/locationViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [LocationViewService.GetLocationView][google.ads.googleads.v8.services.LocationViewService.GetLocationView]. +message GetLocationViewRequest { + // Required. The resource name of the location view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LocationView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/managed_placement_view_service.proto b/google/ads/googleads/v8/services/managed_placement_view_service.proto new file mode 100644 index 000000000..e9b357927 --- /dev/null +++ b/google/ads/googleads/v8/services/managed_placement_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/managed_placement_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ManagedPlacementViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Managed Placement View service. + +// Service to manage Managed Placement views. +service ManagedPlacementViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Managed Placement view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetManagedPlacementView(GetManagedPlacementViewRequest) returns (google.ads.googleads.v8.resources.ManagedPlacementView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/managedPlacementViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [ManagedPlacementViewService.GetManagedPlacementView][google.ads.googleads.v8.services.ManagedPlacementViewService.GetManagedPlacementView]. +message GetManagedPlacementViewRequest { + // Required. The resource name of the Managed Placement View to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ManagedPlacementView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/media_file_service.proto b/google/ads/googleads/v8/services/media_file_service.proto new file mode 100644 index 000000000..5a08aafd9 --- /dev/null +++ b/google/ads/googleads/v8/services/media_file_service.proto @@ -0,0 +1,156 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/media_file.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "MediaFileServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Media File service. + +// Service to manage media files. +service MediaFileService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested media file in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetMediaFile(GetMediaFileRequest) returns (google.ads.googleads.v8.resources.MediaFile) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/mediaFiles/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates media files. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [ImageError]() + // [InternalError]() + // [MediaBundleError]() + // [MediaFileError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateMediaFiles(MutateMediaFilesRequest) returns (MutateMediaFilesResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/mediaFiles:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [MediaFileService.GetMediaFile][google.ads.googleads.v8.services.MediaFileService.GetMediaFile] +message GetMediaFileRequest { + // Required. The resource name of the media file to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MediaFile" + } + ]; +} + +// Request message for [MediaFileService.MutateMediaFiles][google.ads.googleads.v8.services.MediaFileService.MutateMediaFiles] +message MutateMediaFilesRequest { + // Required. The ID of the customer whose media files are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual media file. + repeated MediaFileOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation to create media file. +message MediaFileOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new media file. + google.ads.googleads.v8.resources.MediaFile create = 1; + } +} + +// Response message for a media file mutate. +message MutateMediaFilesResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateMediaFileResult results = 2; +} + +// The result for the media file mutate. +message MutateMediaFileResult { + // The resource name returned for successful operations. + string resource_name = 1; + + // The mutated media file with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.MediaFile media_file = 2; +} diff --git a/google/ads/googleads/v8/services/merchant_center_link_service.proto b/google/ads/googleads/v8/services/merchant_center_link_service.proto new file mode 100644 index 000000000..bdcc595f4 --- /dev/null +++ b/google/ads/googleads/v8/services/merchant_center_link_service.proto @@ -0,0 +1,160 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/merchant_center_link.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "MerchantCenterLinkServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the MerchantCenterLink service. + +// This service allows management of links between Google Ads and Google +// Merchant Center. +service MerchantCenterLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns Merchant Center links available for this customer. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListMerchantCenterLinks(ListMerchantCenterLinksRequest) returns (ListMerchantCenterLinksResponse) { + option (google.api.http) = { + get: "/v8/customers/{customer_id=*}/merchantCenterLinks" + }; + option (google.api.method_signature) = "customer_id"; + } + + // Returns the Merchant Center link in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetMerchantCenterLink(GetMerchantCenterLinkRequest) returns (google.ads.googleads.v8.resources.MerchantCenterLink) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/merchantCenterLinks/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Updates status or removes a Merchant Center link. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateMerchantCenterLink(MutateMerchantCenterLinkRequest) returns (MutateMerchantCenterLinkResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/merchantCenterLinks:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for [MerchantCenterLinkService.ListMerchantCenterLinks][google.ads.googleads.v8.services.MerchantCenterLinkService.ListMerchantCenterLinks]. +message ListMerchantCenterLinksRequest { + // Required. The ID of the customer onto which to apply the Merchant Center link list + // operation. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [MerchantCenterLinkService.ListMerchantCenterLinks][google.ads.googleads.v8.services.MerchantCenterLinkService.ListMerchantCenterLinks]. +message ListMerchantCenterLinksResponse { + // Merchant Center links available for the requested customer + repeated google.ads.googleads.v8.resources.MerchantCenterLink merchant_center_links = 1; +} + +// Request message for [MerchantCenterLinkService.GetMerchantCenterLink][google.ads.googleads.v8.services.MerchantCenterLinkService.GetMerchantCenterLink]. +message GetMerchantCenterLinkRequest { + // Required. Resource name of the Merchant Center link. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MerchantCenterLink" + } + ]; +} + +// Request message for [MerchantCenterLinkService.MutateMerchantCenterLink][google.ads.googleads.v8.services.MerchantCenterLinkService.MutateMerchantCenterLink]. +message MutateMerchantCenterLinkRequest { + // Required. The ID of the customer being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the link + MerchantCenterLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single update on a Merchant Center link. +message MerchantCenterLinkOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 3; + + // The operation to perform + oneof operation { + // Update operation: The merchant center link is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.MerchantCenterLink update = 1; + + // Remove operation: A resource name for the removed merchant center link is + // expected, in this format: + // + // `customers/{customer_id}/merchantCenterLinks/{merchant_center_id}` + string remove = 2; + } +} + +// Response message for Merchant Center link mutate. +message MutateMerchantCenterLinkResponse { + // Result for the mutate. + MutateMerchantCenterLinkResult result = 2; +} + +// The result for the Merchant Center link mutate. +message MutateMerchantCenterLinkResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/mobile_app_category_constant_service.proto b/google/ads/googleads/v8/services/mobile_app_category_constant_service.proto new file mode 100644 index 000000000..56d57d4c5 --- /dev/null +++ b/google/ads/googleads/v8/services/mobile_app_category_constant_service.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/mobile_app_category_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "MobileAppCategoryConstantServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Service to fetch mobile app category constants. +service MobileAppCategoryConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested mobile app category constant. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetMobileAppCategoryConstant(GetMobileAppCategoryConstantRequest) returns (google.ads.googleads.v8.resources.MobileAppCategoryConstant) { + option (google.api.http) = { + get: "/v8/{resource_name=mobileAppCategoryConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [MobileAppCategoryConstantService.GetMobileAppCategoryConstant][google.ads.googleads.v8.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant]. +message GetMobileAppCategoryConstantRequest { + // Required. Resource name of the mobile app category constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MobileAppCategoryConstant" + } + ]; +} diff --git a/google/ads/googleads/v8/services/mobile_device_constant_service.proto b/google/ads/googleads/v8/services/mobile_device_constant_service.proto new file mode 100644 index 000000000..e0330d396 --- /dev/null +++ b/google/ads/googleads/v8/services/mobile_device_constant_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/mobile_device_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "MobileDeviceConstantServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the mobile device constant service. + +// Service to fetch mobile device constants. +service MobileDeviceConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested mobile device constant in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetMobileDeviceConstant(GetMobileDeviceConstantRequest) returns (google.ads.googleads.v8.resources.MobileDeviceConstant) { + option (google.api.http) = { + get: "/v8/{resource_name=mobileDeviceConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [MobileDeviceConstantService.GetMobileDeviceConstant][google.ads.googleads.v8.services.MobileDeviceConstantService.GetMobileDeviceConstant]. +message GetMobileDeviceConstantRequest { + // Required. Resource name of the mobile device to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MobileDeviceConstant" + } + ]; +} diff --git a/google/ads/googleads/v8/services/offline_user_data_job_service.proto b/google/ads/googleads/v8/services/offline_user_data_job_service.proto new file mode 100644 index 000000000..7dba2a51e --- /dev/null +++ b/google/ads/googleads/v8/services/offline_user_data_job_service.proto @@ -0,0 +1,224 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/offline_user_data.proto"; +import "google/ads/googleads/v8/resources/offline_user_data_job.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the OfflineUserDataJobService. + +// Service to manage offline user data jobs. +service OfflineUserDataJobService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates an offline user data job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [NotAllowlistedError]() + // [OfflineUserDataJobError]() + // [QuotaError]() + // [RequestError]() + rpc CreateOfflineUserDataJob(CreateOfflineUserDataJobRequest) returns (CreateOfflineUserDataJobResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/offlineUserDataJobs:create" + body: "*" + }; + option (google.api.method_signature) = "customer_id,job"; + } + + // Returns the offline user data job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetOfflineUserDataJob(GetOfflineUserDataJobRequest) returns (google.ads.googleads.v8.resources.OfflineUserDataJob) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/offlineUserDataJobs/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Adds operations to the offline user data job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [OfflineUserDataJobError]() + // [QuotaError]() + // [RequestError]() + rpc AddOfflineUserDataJobOperations(AddOfflineUserDataJobOperationsRequest) returns (AddOfflineUserDataJobOperationsResponse) { + option (google.api.http) = { + post: "/v8/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" + body: "*" + }; + option (google.api.method_signature) = "resource_name,operations"; + } + + // Runs the offline user data job. + // + // When finished, the long running operation will contain the processing + // result or failure information, if any. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [HeaderError]() + // [InternalError]() + // [OfflineUserDataJobError]() + // [QuotaError]() + // [RequestError]() + rpc RunOfflineUserDataJob(RunOfflineUserDataJobRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v8/{resource_name=customers/*/offlineUserDataJobs/*}:run" + body: "*" + }; + option (google.api.method_signature) = "resource_name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "google.protobuf.Empty" + }; + } +} + +// Request message for +// [OfflineUserDataJobService.CreateOfflineUserDataJob][google.ads.googleads.v8.services.OfflineUserDataJobService.CreateOfflineUserDataJob]. +message CreateOfflineUserDataJobRequest { + // Required. The ID of the customer for which to create an offline user data job. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The offline user data job to be created. + google.ads.googleads.v8.resources.OfflineUserDataJob job = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// Response message for +// [OfflineUserDataJobService.CreateOfflineUserDataJob][google.ads.googleads.v8.services.OfflineUserDataJobService.CreateOfflineUserDataJob]. +message CreateOfflineUserDataJobResponse { + // The resource name of the OfflineUserDataJob. + string resource_name = 1; +} + +// Request message for [OfflineUserDataJobService.GetOfflineUserDataJob][google.ads.googleads.v8.services.OfflineUserDataJobService.GetOfflineUserDataJob]. +message GetOfflineUserDataJobRequest { + // Required. The resource name of the OfflineUserDataJob to get. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OfflineUserDataJob" + } + ]; +} + +// Request message for [OfflineUserDataJobService.RunOfflineUserDataJob][google.ads.googleads.v8.services.OfflineUserDataJobService.RunOfflineUserDataJob]. +message RunOfflineUserDataJobRequest { + // Required. The resource name of the OfflineUserDataJob to run. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OfflineUserDataJob" + } + ]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 2; +} + +// Request message for +// [OfflineUserDataJobService.AddOfflineUserDataJobOperations][google.ads.googleads.v8.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations]. +message AddOfflineUserDataJobOperationsRequest { + // Required. The resource name of the OfflineUserDataJob. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OfflineUserDataJob" + } + ]; + + // True to enable partial failure for the offline user data job. + optional bool enable_partial_failure = 4; + + // Required. The list of operations to be done. + repeated OfflineUserDataJobOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 5; +} + +// Operation to be made for the AddOfflineUserDataJobOperationsRequest. +message OfflineUserDataJobOperation { + // Operation to be made for the AddOfflineUserDataJobOperationsRequest. + oneof operation { + // Add the provided data to the transaction. Data cannot be retrieved after + // being uploaded. + google.ads.googleads.v8.common.UserData create = 1; + + // Remove the provided data from the transaction. Data cannot be retrieved + // after being uploaded. + google.ads.googleads.v8.common.UserData remove = 2; + + // Remove all previously provided data. This is only supported for Customer + // Match. + bool remove_all = 3; + } +} + +// Response message for +// [OfflineUserDataJobService.AddOfflineUserDataJobOperations][google.ads.googleads.v8.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations]. +message AddOfflineUserDataJobOperationsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; +} diff --git a/google/ads/googleads/v8/services/operating_system_version_constant_service.proto b/google/ads/googleads/v8/services/operating_system_version_constant_service.proto new file mode 100644 index 000000000..995cc1a6b --- /dev/null +++ b/google/ads/googleads/v8/services/operating_system_version_constant_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/operating_system_version_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "OperatingSystemVersionConstantServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the OS version constant service + +// Service to fetch Operating System Version constants. +service OperatingSystemVersionConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested OS version constant in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetOperatingSystemVersionConstant(GetOperatingSystemVersionConstantRequest) returns (google.ads.googleads.v8.resources.OperatingSystemVersionConstant) { + option (google.api.http) = { + get: "/v8/{resource_name=operatingSystemVersionConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant][google.ads.googleads.v8.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant]. +message GetOperatingSystemVersionConstantRequest { + // Required. Resource name of the OS version to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OperatingSystemVersionConstant" + } + ]; +} diff --git a/google/ads/googleads/v8/services/paid_organic_search_term_view_service.proto b/google/ads/googleads/v8/services/paid_organic_search_term_view_service.proto new file mode 100644 index 000000000..7bd14f1a3 --- /dev/null +++ b/google/ads/googleads/v8/services/paid_organic_search_term_view_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/paid_organic_search_term_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "PaidOrganicSearchTermViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Paid Organic Search Term View service. + +// Service to fetch paid organic search term views. +service PaidOrganicSearchTermViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested paid organic search term view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetPaidOrganicSearchTermView(GetPaidOrganicSearchTermViewRequest) returns (google.ads.googleads.v8.resources.PaidOrganicSearchTermView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/paidOrganicSearchTermViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView][google.ads.googleads.v8.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView]. +message GetPaidOrganicSearchTermViewRequest { + // Required. The resource name of the paid organic search term view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/PaidOrganicSearchTermView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/parental_status_view_service.proto b/google/ads/googleads/v8/services/parental_status_view_service.proto new file mode 100644 index 000000000..c37b143a6 --- /dev/null +++ b/google/ads/googleads/v8/services/parental_status_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/parental_status_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ParentalStatusViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Parental Status View service. + +// Service to manage parental status views. +service ParentalStatusViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested parental status view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetParentalStatusView(GetParentalStatusViewRequest) returns (google.ads.googleads.v8.resources.ParentalStatusView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/parentalStatusViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [ParentalStatusViewService.GetParentalStatusView][google.ads.googleads.v8.services.ParentalStatusViewService.GetParentalStatusView]. +message GetParentalStatusViewRequest { + // Required. The resource name of the parental status view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ParentalStatusView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/payments_account_service.proto b/google/ads/googleads/v8/services/payments_account_service.proto new file mode 100644 index 000000000..7c19f6c8b --- /dev/null +++ b/google/ads/googleads/v8/services/payments_account_service.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/payments_account.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "PaymentsAccountServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the payments account service. + +// Service to provide payments accounts that can be used to set up consolidated +// billing. +service PaymentsAccountService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns all payments accounts associated with all managers + // between the login customer ID and specified serving customer in the + // hierarchy, inclusive. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [PaymentsAccountError]() + // [QuotaError]() + // [RequestError]() + rpc ListPaymentsAccounts(ListPaymentsAccountsRequest) returns (ListPaymentsAccountsResponse) { + option (google.api.http) = { + get: "/v8/customers/{customer_id=*}/paymentsAccounts" + }; + option (google.api.method_signature) = "customer_id"; + } +} + +// Request message for fetching all accessible payments accounts. +message ListPaymentsAccountsRequest { + // Required. The ID of the customer to apply the PaymentsAccount list operation to. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [PaymentsAccountService.ListPaymentsAccounts][google.ads.googleads.v8.services.PaymentsAccountService.ListPaymentsAccounts]. +message ListPaymentsAccountsResponse { + // The list of accessible payments accounts. + repeated google.ads.googleads.v8.resources.PaymentsAccount payments_accounts = 1; +} diff --git a/google/ads/googleads/v8/services/product_bidding_category_constant_service.proto b/google/ads/googleads/v8/services/product_bidding_category_constant_service.proto new file mode 100644 index 000000000..42513e0ed --- /dev/null +++ b/google/ads/googleads/v8/services/product_bidding_category_constant_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/product_bidding_category_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ProductBiddingCategoryConstantServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Product Bidding Category constant service + +// Service to fetch Product Bidding Categories. +service ProductBiddingCategoryConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Product Bidding Category in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetProductBiddingCategoryConstant(GetProductBiddingCategoryConstantRequest) returns (google.ads.googleads.v8.resources.ProductBiddingCategoryConstant) { + option (google.api.http) = { + get: "/v8/{resource_name=productBiddingCategoryConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant][google.ads.googleads.v8.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant]. +message GetProductBiddingCategoryConstantRequest { + // Required. Resource name of the Product Bidding Category to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ProductBiddingCategoryConstant" + } + ]; +} diff --git a/google/ads/googleads/v8/services/product_group_view_service.proto b/google/ads/googleads/v8/services/product_group_view_service.proto new file mode 100644 index 000000000..9b01f204a --- /dev/null +++ b/google/ads/googleads/v8/services/product_group_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/product_group_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ProductGroupViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the ProductGroup View service. + +// Service to manage product group views. +service ProductGroupViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested product group view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetProductGroupView(GetProductGroupViewRequest) returns (google.ads.googleads.v8.resources.ProductGroupView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/productGroupViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [ProductGroupViewService.GetProductGroupView][google.ads.googleads.v8.services.ProductGroupViewService.GetProductGroupView]. +message GetProductGroupViewRequest { + // Required. The resource name of the product group view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ProductGroupView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/reach_plan_service.proto b/google/ads/googleads/v8/services/reach_plan_service.proto new file mode 100644 index 000000000..09587ed36 --- /dev/null +++ b/google/ads/googleads/v8/services/reach_plan_service.proto @@ -0,0 +1,552 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/ads/googleads/v8/enums/frequency_cap_time_unit.proto"; +import "google/ads/googleads/v8/enums/reach_plan_ad_length.proto"; +import "google/ads/googleads/v8/enums/reach_plan_age_range.proto"; +import "google/ads/googleads/v8/enums/reach_plan_network.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ReachPlanServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the reach plan service. + +// Reach Plan Service gives users information about audience size that can +// be reached through advertisement on YouTube. In particular, +// GenerateReachForecast provides estimated number of people of specified +// demographics that can be reached by an ad in a given market by a campaign of +// certain duration with a defined budget. +service ReachPlanService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the list of plannable locations (for example, countries & DMAs). + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListPlannableLocations(ListPlannableLocationsRequest) returns (ListPlannableLocationsResponse) { + option (google.api.http) = { + post: "/v8:listPlannableLocations" + body: "*" + }; + } + + // Returns the list of per-location plannable YouTube ad formats with allowed + // targeting. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListPlannableProducts(ListPlannableProductsRequest) returns (ListPlannableProductsResponse) { + option (google.api.http) = { + post: "/v8:listPlannableProducts" + body: "*" + }; + option (google.api.method_signature) = "plannable_location_id"; + } + + // Generates a product mix ideas given a set of preferences. This method + // helps the advertiser to obtain a good mix of ad formats and budget + // allocations based on its preferences. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [ReachPlanError]() + // [RequestError]() + rpc GenerateProductMixIdeas(GenerateProductMixIdeasRequest) returns (GenerateProductMixIdeasResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}:generateProductMixIdeas" + body: "*" + }; + option (google.api.method_signature) = "customer_id,plannable_location_id,currency_code,budget_micros"; + } + + // Generates a reach forecast for a given targeting / product mix. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RangeError]() + // [ReachPlanError]() + // [RequestError]() + rpc GenerateReachForecast(GenerateReachForecastRequest) returns (GenerateReachForecastResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}:generateReachForecast" + body: "*" + }; + option (google.api.method_signature) = "customer_id,campaign_duration,planned_products"; + } +} + +// Request message for [ReachPlanService.ListPlannableLocations][google.ads.googleads.v8.services.ReachPlanService.ListPlannableLocations]. +message ListPlannableLocationsRequest { + +} + +// The list of plannable locations. +message ListPlannableLocationsResponse { + // The list of locations available for planning (Countries, DMAs, + // sub-countries). + // For locations like Countries and DMAs see + // https://developers.google.com/google-ads/api/reference/data/geotargets for + // more information. + repeated PlannableLocation plannable_locations = 1; +} + +// A plannable location: a country, a DMA, a metro region, a tv region, +// a province. +message PlannableLocation { + // The location identifier. + optional string id = 4; + + // The unique location name in english. + optional string name = 5; + + // The parent country, not present if location is a country. + // If present will always be a GeoTargetConstant ID. Additional information, + // such as country name is provided by + // [ReachPlanService.ListPlannableLocations][google.ads.googleads.v8.services.ReachPlanService.ListPlannableLocations] or directly by accessing + // [GeoTargetConstantService.GetGeoTargetConstant][google.ads.googleads.v8.services.GeoTargetConstantService.GetGeoTargetConstant]. + optional int64 parent_country_id = 6; +} + +// Request to list available products in a given location. +message ListPlannableProductsRequest { + // Required. The ID of the selected location for planning. To list the available + // plannable location ids use [ReachPlanService.ListPlannableLocations][google.ads.googleads.v8.services.ReachPlanService.ListPlannableLocations]. + string plannable_location_id = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A response with all available products. +message ListPlannableProductsResponse { + // The list of products available for planning and related targeting metadata. + repeated ProductMetadata product_metadata = 1; +} + +// The metadata associated with an available plannable product. +message ProductMetadata { + // The code associated with the ad product. E.g. BUMPER, TRUEVIEW_IN_STREAM + // To list the available plannable product codes use ListPlannableProducts. + optional string plannable_product_code = 4; + + // The name associated with the ad product. + string plannable_product_name = 3; + + // The allowed plannable targeting for this product. + PlannableTargeting plannable_targeting = 2; +} + +// The targeting for which traffic metrics will be reported. +message PlannableTargeting { + // Allowed plannable age ranges for the product for which metrics will be + // reported. Actual targeting is computed by mapping this age range onto + // standard Google common.AgeRangeInfo values. + repeated google.ads.googleads.v8.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_ranges = 1; + + // Targetable genders for the ad product. + repeated google.ads.googleads.v8.common.GenderInfo genders = 2; + + // Targetable devices for the ad product. + // TABLET device targeting is automatically applied to reported metrics + // when MOBILE targeting is selected for CPM_MASTHEAD, + // GOOGLE_PREFERRED_BUMPER and GOOGLE_PREFERRED_SHORT products. + repeated google.ads.googleads.v8.common.DeviceInfo devices = 3; + + // Targetable networks for the ad product. + repeated google.ads.googleads.v8.enums.ReachPlanNetworkEnum.ReachPlanNetwork networks = 4; +} + +// Request message for [ReachPlanService.GenerateProductMixIdeas][google.ads.googleads.v8.services.ReachPlanService.GenerateProductMixIdeas]. +message GenerateProductMixIdeasRequest { + // Required. The ID of the customer. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The ID of the location, this is one of the ids returned by + // [ReachPlanService.ListPlannableLocations][google.ads.googleads.v8.services.ReachPlanService.ListPlannableLocations]. + string plannable_location_id = 6 [(google.api.field_behavior) = REQUIRED]; + + // Required. Currency code. + // Three-character ISO 4217 currency code. + string currency_code = 7 [(google.api.field_behavior) = REQUIRED]; + + // Required. Total budget. + // Amount in micros. One million is equivalent to one unit. + int64 budget_micros = 8 [(google.api.field_behavior) = REQUIRED]; + + // The preferences of the suggested product mix. + // An unset preference is interpreted as all possible values are allowed, + // unless explicitly specified. + Preferences preferences = 5; +} + +// Set of preferences about the planned mix. +message Preferences { + // True if ad skippable. + // If not set, default is any value. + optional bool is_skippable = 6; + + // True if ad start with sound. + // If not set, default is any value. + optional bool starts_with_sound = 7; + + // The length of the ad. + // If not set, default is any value. + google.ads.googleads.v8.enums.ReachPlanAdLengthEnum.ReachPlanAdLength ad_length = 3; + + // True if ad will only show on the top content. + // If not set, default is false. + optional bool top_content_only = 8; + + // True if the price guaranteed. The cost of serving the ad is agreed upfront + // and not subject to an auction. + // If not set, default is any value. + optional bool has_guaranteed_price = 9; +} + +// The suggested product mix. +message GenerateProductMixIdeasResponse { + // A list of products (ad formats) and the associated budget allocation idea. + repeated ProductAllocation product_allocation = 1; +} + +// An allocation of a part of the budget on a given product. +message ProductAllocation { + // Selected product for planning. The product codes returned are within the + // set of the ones returned by ListPlannableProducts when using the same + // location ID. + optional string plannable_product_code = 3; + + // The value to be allocated for the suggested product in requested currency. + // Amount in micros. One million is equivalent to one unit. + optional int64 budget_micros = 4; +} + +// Request message for [ReachPlanService.GenerateReachForecast][google.ads.googleads.v8.services.ReachPlanService.GenerateReachForecast]. +message GenerateReachForecastRequest { + // Required. The ID of the customer. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // The currency code. + // Three-character ISO 4217 currency code. + optional string currency_code = 9; + + // Required. Campaign duration. + CampaignDuration campaign_duration = 3 [(google.api.field_behavior) = REQUIRED]; + + // Desired cookie frequency cap that will be applied to each planned product. + // This is equivalent to the frequency cap exposed in Google Ads when creating + // a campaign, it represents the maximum number of times an ad can be shown to + // the same user. + // If not specified no cap is applied. + // + // This field is deprecated in v4 and will eventually be removed. + // Please use cookie_frequency_cap_setting instead. + optional int32 cookie_frequency_cap = 10; + + // Desired cookie frequency cap that will be applied to each planned product. + // This is equivalent to the frequency cap exposed in Google Ads when creating + // a campaign, it represents the maximum number of times an ad can be shown to + // the same user during a specified time interval. + // If not specified, a default of 0 (no cap) is applied. + // + // This field replaces the deprecated cookie_frequency_cap field. + FrequencyCap cookie_frequency_cap_setting = 8; + + // Desired minimum effective frequency (the number of times a person was + // exposed to the ad) for the reported reach metrics [1-10]. + // This won't affect the targeting, but just the reporting. + // If not specified, a default of 1 is applied. + // + // This field cannot be combined with the effective_frequency_limit field. + optional int32 min_effective_frequency = 11; + + // The highest minimum effective frequency (the number of times a person was + // exposed to the ad) value [1-10] to include in + // Forecast.effective_frequency_breakdowns. + // If not specified, Forecast.effective_frequency_breakdowns will not be + // provided. + // + // The effective frequency value provided here will also be used as the + // minimum effective frequency for the reported reach metrics. + // + // This field cannot be combined with the min_effective_frequency field. + optional EffectiveFrequencyLimit effective_frequency_limit = 12; + + // The targeting to be applied to all products selected in the product mix. + // + // This is planned targeting: execution details might vary based on the + // advertising product, please consult an implementation specialist. + // + // See specific metrics for details on how targeting affects them. + Targeting targeting = 6; + + // Required. The products to be forecast. + // The max number of allowed planned products is 15. + repeated PlannedProduct planned_products = 7 [(google.api.field_behavior) = REQUIRED]; +} + +// Effective frequency limit. +message EffectiveFrequencyLimit { + // The highest effective frequency value to include in + // Forecast.effective_frequency_breakdowns. + // This field supports frequencies 1-10, inclusive. + int32 effective_frequency_breakdown_limit = 1; +} + +// A rule specifying the maximum number of times an ad can be shown to a user +// over a particular time period. +message FrequencyCap { + // Required. The number of impressions, inclusive. + int32 impressions = 3 [(google.api.field_behavior) = REQUIRED]; + + // Required. The type of time unit. + google.ads.googleads.v8.enums.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit time_unit = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// The targeting for which traffic metrics will be reported. +message Targeting { + // Required. The ID of the selected location. Plannable location IDs can be + // obtained from [ReachPlanService.ListPlannableLocations][google.ads.googleads.v8.services.ReachPlanService.ListPlannableLocations]. + optional string plannable_location_id = 6; + + // Targeted age range. + // An unset value is equivalent to targeting all ages. + google.ads.googleads.v8.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_range = 2; + + // Targeted genders. + // An unset value is equivalent to targeting MALE and FEMALE. + repeated google.ads.googleads.v8.common.GenderInfo genders = 3; + + // Targeted devices. + // If not specified, targets all applicable devices. Applicable devices vary + // by product and region and can be obtained from + // [ReachPlanService.ListPlannableProducts][google.ads.googleads.v8.services.ReachPlanService.ListPlannableProducts]. + repeated google.ads.googleads.v8.common.DeviceInfo devices = 4; + + // Targetable network for the ad product. + // If not specified, targets all applicable networks. Applicable networks vary + // by product and region and can be obtained from + // [ReachPlanService.ListPlannableProducts][google.ads.googleads.v8.services.ReachPlanService.ListPlannableProducts]. + google.ads.googleads.v8.enums.ReachPlanNetworkEnum.ReachPlanNetwork network = 5; +} + +// The duration of a planned campaign. +message CampaignDuration { + // The duration value in days. + // + // This field cannot be combined with the date_range field. + optional int32 duration_in_days = 2; +} + +// A product being planned for reach. +message PlannedProduct { + // Required. Selected product for planning. + // The code associated with the ad product. E.g. Trueview, Bumper + // To list the available plannable product codes use + // [ReachPlanService.ListPlannableProducts][google.ads.googleads.v8.services.ReachPlanService.ListPlannableProducts]. + optional string plannable_product_code = 3; + + // Required. Maximum budget allocation in micros for the selected product. + // The value is specified in the selected planning currency_code. + // E.g. 1 000 000$ = 1 000 000 000 000 micros. + optional int64 budget_micros = 4; +} + +// Response message containing the generated reach curve. +message GenerateReachForecastResponse { + // Reference on target audiences for this curve. + OnTargetAudienceMetrics on_target_audience_metrics = 1; + + // The generated reach curve for the planned product mix. + ReachCurve reach_curve = 2; +} + +// The reach curve for the planned products. +message ReachCurve { + // All points on the reach curve. + repeated ReachForecast reach_forecasts = 1; +} + +// A point on reach curve. +message ReachForecast { + // The cost in micros. + int64 cost_micros = 5; + + // Forecasted traffic metrics for this point. + Forecast forecast = 2; + + // The forecasted allocation and traffic metrics for each planned product + // at this point on the reach curve. + repeated PlannedProductReachForecast planned_product_reach_forecasts = 4; +} + +// Forecasted traffic metrics for the planned products and targeting. +message Forecast { + // Number of unique people reached at least + // GenerateReachForecastRequest.min_effective_frequency or + // GenerateReachForecastRequest.effective_frequency_limit times that exactly + // matches the Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the on_target_reach + // value will be rounded to 0. + optional int64 on_target_reach = 5; + + // Total number of unique people reached at least + // GenerateReachForecastRequest.min_effective_frequency or + // GenerateReachForecastRequest.effective_frequency_limit times. This includes + // people that may fall outside the specified Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the total_reach + // value will be rounded to 0. + optional int64 total_reach = 6; + + // Number of ad impressions that exactly matches the Targeting. + optional int64 on_target_impressions = 7; + + // Total number of ad impressions. This includes impressions that may fall + // outside the specified Targeting, due to insufficient information on + // signed-in users. + optional int64 total_impressions = 8; + + // Number of times the ad's impressions were considered viewable. + // See https://support.google.com/google-ads/answer/7029393 for + // more information about what makes an ad viewable and how + // viewability is measured. + optional int64 viewable_impressions = 9; + + // A list of effective frequency forecasts. The list is ordered starting with + // 1+ and ending with the value set in + // GenerateReachForecastRequest.effective_frequency_limit. If no + // effective_frequency_limit was set, this list will be empty. + repeated EffectiveFrequencyBreakdown effective_frequency_breakdowns = 10; +} + +// The forecasted allocation and traffic metrics for a specific product +// at a point on the reach curve. +message PlannedProductReachForecast { + // Selected product for planning. The product codes returned are within the + // set of the ones returned by ListPlannableProducts when using the same + // location ID. + string plannable_product_code = 1; + + // The cost in micros. This may differ from the product's input allocation + // if one or more planned products cannot fulfill the budget because of + // limited inventory. + int64 cost_micros = 2; + + // Forecasted traffic metrics for this product. + PlannedProductForecast planned_product_forecast = 3; +} + +// Forecasted traffic metrics for a planned product. +message PlannedProductForecast { + // Number of unique people reached that exactly matches the Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the on_target_reach + // value will be rounded to 0. + int64 on_target_reach = 1; + + // Number of unique people reached. This includes people that may fall + // outside the specified Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the total_reach + // value will be rounded to 0. + int64 total_reach = 2; + + // Number of ad impressions that exactly matches the Targeting. + int64 on_target_impressions = 3; + + // Total number of ad impressions. This includes impressions that may fall + // outside the specified Targeting, due to insufficient information on + // signed-in users. + int64 total_impressions = 4; + + // Number of times the ad's impressions were considered viewable. + // See https://support.google.com/google-ads/answer/7029393 for + // more information about what makes an ad viewable and how + // viewability is measured. + optional int64 viewable_impressions = 5; +} + +// Audience metrics for the planned products. +// These metrics consider the following targeting dimensions: +// +// - Location +// - PlannableAgeRange +// - Gender +message OnTargetAudienceMetrics { + // Reference audience size matching the considered targeting for YouTube. + optional int64 youtube_audience_size = 3; + + // Reference audience size matching the considered targeting for Census. + optional int64 census_audience_size = 4; +} + +// A breakdown of the number of unique people reached at a given effective +// frequency. +message EffectiveFrequencyBreakdown { + // The effective frequency [1-10]. + int32 effective_frequency = 1; + + // The number of unique people reached at least effective_frequency times that + // exactly matches the Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the on_target_reach + // value will be rounded to 0. + int64 on_target_reach = 2; + + // Total number of unique people reached at least effective_frequency times. + // This includes people that may fall outside the specified Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the total_reach + // value will be rounded to 0. + int64 total_reach = 3; +} diff --git a/google/ads/googleads/v8/services/recommendation_service.proto b/google/ads/googleads/v8/services/recommendation_service.proto new file mode 100644 index 000000000..a4d3ab556 --- /dev/null +++ b/google/ads/googleads/v8/services/recommendation_service.proto @@ -0,0 +1,309 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/extensions.proto"; +import "google/ads/googleads/v8/enums/keyword_match_type.proto"; +import "google/ads/googleads/v8/resources/ad.proto"; +import "google/ads/googleads/v8/resources/recommendation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "RecommendationServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Recommendation service. + +// Service to manage recommendations. +service RecommendationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested recommendation in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetRecommendation(GetRecommendationRequest) returns (google.ads.googleads.v8.resources.Recommendation) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/recommendations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Applies given recommendations with corresponding apply parameters. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RecommendationError]() + // [RequestError]() + // [UrlFieldError]() + rpc ApplyRecommendation(ApplyRecommendationRequest) returns (ApplyRecommendationResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/recommendations:apply" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } + + // Dismisses given recommendations. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RecommendationError]() + // [RequestError]() + rpc DismissRecommendation(DismissRecommendationRequest) returns (DismissRecommendationResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/recommendations:dismiss" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [RecommendationService.GetRecommendation][google.ads.googleads.v8.services.RecommendationService.GetRecommendation]. +message GetRecommendationRequest { + // Required. The resource name of the recommendation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Recommendation" + } + ]; +} + +// Request message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v8.services.RecommendationService.ApplyRecommendation]. +message ApplyRecommendationRequest { + // Required. The ID of the customer with the recommendation. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to apply recommendations. + // If partial_failure=false all recommendations should be of the same type + // There is a limit of 100 operations per request. + repeated ApplyRecommendationOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, operations will be carried + // out as a transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; +} + +// Information about the operation to apply a recommendation and any parameters +// to customize it. +message ApplyRecommendationOperation { + // Parameters to use when applying a campaign budget recommendation. + message CampaignBudgetParameters { + // New budget amount to set for target budget resource. This is a required + // field. + optional int64 new_budget_amount_micros = 2; + } + + // Parameters to use when applying a text ad recommendation. + message TextAdParameters { + // New ad to add to recommended ad group. All necessary fields need to be + // set in this message. This is a required field. + google.ads.googleads.v8.resources.Ad ad = 1; + } + + // Parameters to use when applying keyword recommendation. + message KeywordParameters { + // The ad group resource to add keyword to. This is a required field. + optional string ad_group = 4; + + // The match type of the keyword. This is a required field. + google.ads.googleads.v8.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 2; + + // Optional, CPC bid to set for the keyword. If not set, keyword will use + // bid based on bidding strategy used by target ad group. + optional int64 cpc_bid_micros = 5; + } + + // Parameters to use when applying Target CPA recommendation. + message TargetCpaOptInParameters { + // Average CPA to use for Target CPA bidding strategy. This is a required + // field. + optional int64 target_cpa_micros = 3; + + // Optional, budget amount to set for the campaign. + optional int64 new_campaign_budget_amount_micros = 4; + } + + // Parameters to use when applying a Target ROAS opt-in recommendation. + message TargetRoasOptInParameters { + // Average ROAS (revenue per unit of spend) to use for Target ROAS bidding + // strategy. The value is between 0.01 and 1000.0, inclusive. This is a + // required field, unless new_campaign_budget_amount_micros is set. + optional double target_roas = 1; + + // Optional, budget amount to set for the campaign. + optional int64 new_campaign_budget_amount_micros = 2; + } + + // Parameters to use when applying callout extension recommendation. + message CalloutExtensionParameters { + // Callout extensions to be added. This is a required field. + repeated google.ads.googleads.v8.common.CalloutFeedItem callout_extensions = 1; + } + + // Parameters to use when applying call extension recommendation. + message CallExtensionParameters { + // Call extensions to be added. This is a required field. + repeated google.ads.googleads.v8.common.CallFeedItem call_extensions = 1; + } + + // Parameters to use when applying sitelink extension recommendation. + message SitelinkExtensionParameters { + // Sitelink extensions to be added. This is a required field. + repeated google.ads.googleads.v8.common.SitelinkFeedItem sitelink_extensions = 1; + } + + // Parameters to use when applying move unused budget recommendation. + message MoveUnusedBudgetParameters { + // Budget amount to move from excess budget to constrained budget. This is + // a required field. + optional int64 budget_micros_to_move = 2; + } + + // Parameters to use when applying a responsive search ad recommendation. + message ResponsiveSearchAdParameters { + // Required. New ad to add to recommended ad group. + google.ads.googleads.v8.resources.Ad ad = 1 [(google.api.field_behavior) = REQUIRED]; + } + + // The resource name of the recommendation to apply. + string resource_name = 1; + + // Parameters to use when applying the recommendation. + oneof apply_parameters { + // Optional parameters to use when applying a campaign budget + // recommendation. + CampaignBudgetParameters campaign_budget = 2; + + // Optional parameters to use when applying a text ad recommendation. + TextAdParameters text_ad = 3; + + // Optional parameters to use when applying keyword recommendation. + KeywordParameters keyword = 4; + + // Optional parameters to use when applying target CPA opt-in + // recommendation. + TargetCpaOptInParameters target_cpa_opt_in = 5; + + // Optional parameters to use when applying target ROAS opt-in + // recommendation. + TargetRoasOptInParameters target_roas_opt_in = 10; + + // Parameters to use when applying callout extension recommendation. + CalloutExtensionParameters callout_extension = 6; + + // Parameters to use when applying call extension recommendation. + CallExtensionParameters call_extension = 7; + + // Parameters to use when applying sitelink extension recommendation. + SitelinkExtensionParameters sitelink_extension = 8; + + // Parameters to use when applying move unused budget recommendation. + MoveUnusedBudgetParameters move_unused_budget = 9; + + // Parameters to use when applying a responsive search ad recommendation. + ResponsiveSearchAdParameters responsive_search_ad = 11; + } +} + +// Response message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v8.services.RecommendationService.ApplyRecommendation]. +message ApplyRecommendationResponse { + // Results of operations to apply recommendations. + repeated ApplyRecommendationResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors) + // we return the RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result of applying a recommendation. +message ApplyRecommendationResult { + // Returned for successful applies. + string resource_name = 1; +} + +// Request message for [RecommendationService.DismissRecommendation][google.ads.googleads.v8.services.RecommendationService.DismissRecommendation]. +message DismissRecommendationRequest { + // Operation to dismiss a single recommendation identified by resource_name. + message DismissRecommendationOperation { + // The resource name of the recommendation to dismiss. + string resource_name = 1; + } + + // Required. The ID of the customer with the recommendation. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to dismiss recommendations. + // If partial_failure=false all recommendations should be of the same type + // There is a limit of 100 operations per request. + repeated DismissRecommendationOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, operations will be carried in a + // single transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 2; +} + +// Response message for [RecommendationService.DismissRecommendation][google.ads.googleads.v8.services.RecommendationService.DismissRecommendation]. +message DismissRecommendationResponse { + // The result of dismissing a recommendation. + message DismissRecommendationResult { + // Returned for successful dismissals. + string resource_name = 1; + } + + // Results of operations to dismiss recommendations. + repeated DismissRecommendationResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors) + // we return the RPC level error. + google.rpc.Status partial_failure_error = 2; +} diff --git a/google/ads/googleads/v8/services/remarketing_action_service.proto b/google/ads/googleads/v8/services/remarketing_action_service.proto new file mode 100644 index 000000000..a6b9c5a75 --- /dev/null +++ b/google/ads/googleads/v8/services/remarketing_action_service.proto @@ -0,0 +1,141 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/remarketing_action.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "RemarketingActionServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Remarketing Action service. + +// Service to manage remarketing actions. +service RemarketingActionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested remarketing action in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetRemarketingAction(GetRemarketingActionRequest) returns (google.ads.googleads.v8.resources.RemarketingAction) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/remarketingActions/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates remarketing actions. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ConversionActionError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateRemarketingActions(MutateRemarketingActionsRequest) returns (MutateRemarketingActionsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/remarketingActions:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [RemarketingActionService.GetRemarketingAction][google.ads.googleads.v8.services.RemarketingActionService.GetRemarketingAction]. +message GetRemarketingActionRequest { + // Required. The resource name of the remarketing action to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/RemarketingAction" + } + ]; +} + +// Request message for [RemarketingActionService.MutateRemarketingActions][google.ads.googleads.v8.services.RemarketingActionService.MutateRemarketingActions]. +message MutateRemarketingActionsRequest { + // Required. The ID of the customer whose remarketing actions are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual remarketing actions. + repeated RemarketingActionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update) on a remarketing action. +message RemarketingActionOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new remarketing + // action. + google.ads.googleads.v8.resources.RemarketingAction create = 1; + + // Update operation: The remarketing action is expected to have a valid + // resource name. + google.ads.googleads.v8.resources.RemarketingAction update = 2; + } +} + +// Response message for remarketing action mutate. +message MutateRemarketingActionsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateRemarketingActionResult results = 2; +} + +// The result for the remarketing action mutate. +message MutateRemarketingActionResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/search_term_view_service.proto b/google/ads/googleads/v8/services/search_term_view_service.proto new file mode 100644 index 000000000..77da34fee --- /dev/null +++ b/google/ads/googleads/v8/services/search_term_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/search_term_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SearchTermViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Search Term View service. + +// Service to manage search term views. +service SearchTermViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the attributes of the requested search term view. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetSearchTermView(GetSearchTermViewRequest) returns (google.ads.googleads.v8.resources.SearchTermView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/searchTermViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [SearchTermViewService.GetSearchTermView][google.ads.googleads.v8.services.SearchTermViewService.GetSearchTermView]. +message GetSearchTermViewRequest { + // Required. The resource name of the search term view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SearchTermView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/shared_criterion_service.proto b/google/ads/googleads/v8/services/shared_criterion_service.proto new file mode 100644 index 000000000..bb06e05d0 --- /dev/null +++ b/google/ads/googleads/v8/services/shared_criterion_service.proto @@ -0,0 +1,162 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/shared_criterion.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SharedCriterionServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Shared Criterion service. + +// Service to manage shared criteria. +service SharedCriterionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested shared criterion in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetSharedCriterion(GetSharedCriterionRequest) returns (google.ads.googleads.v8.resources.SharedCriterion) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/sharedCriteria/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes shared criteria. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CriterionError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateSharedCriteria(MutateSharedCriteriaRequest) returns (MutateSharedCriteriaResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/sharedCriteria:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [SharedCriterionService.GetSharedCriterion][google.ads.googleads.v8.services.SharedCriterionService.GetSharedCriterion]. +message GetSharedCriterionRequest { + // Required. The resource name of the shared criterion to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedCriterion" + } + ]; +} + +// Request message for [SharedCriterionService.MutateSharedCriteria][google.ads.googleads.v8.services.SharedCriterionService.MutateSharedCriteria]. +message MutateSharedCriteriaRequest { + // Required. The ID of the customer whose shared criteria are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual shared criteria. + repeated SharedCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on an shared criterion. +message SharedCriterionOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new shared + // criterion. + google.ads.googleads.v8.resources.SharedCriterion create = 1; + + // Remove operation: A resource name for the removed shared criterion is + // expected, in this format: + // + // `customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}` + string remove = 3; + } +} + +// Response message for a shared criterion mutate. +message MutateSharedCriteriaResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateSharedCriterionResult results = 2; +} + +// The result for the shared criterion mutate. +message MutateSharedCriterionResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated shared criterion with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.SharedCriterion shared_criterion = 2; +} diff --git a/google/ads/googleads/v8/services/shared_set_service.proto b/google/ads/googleads/v8/services/shared_set_service.proto new file mode 100644 index 000000000..74022a0b8 --- /dev/null +++ b/google/ads/googleads/v8/services/shared_set_service.proto @@ -0,0 +1,172 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/shared_set.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SharedSetServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Shared Set service. + +// Service to manage shared sets. +service SharedSetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested shared set in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetSharedSet(GetSharedSetRequest) returns (google.ads.googleads.v8.resources.SharedSet) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/sharedSets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes shared sets. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SharedSetError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateSharedSets(MutateSharedSetsRequest) returns (MutateSharedSetsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/sharedSets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [SharedSetService.GetSharedSet][google.ads.googleads.v8.services.SharedSetService.GetSharedSet]. +message GetSharedSetRequest { + // Required. The resource name of the shared set to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedSet" + } + ]; +} + +// Request message for [SharedSetService.MutateSharedSets][google.ads.googleads.v8.services.SharedSetService.MutateSharedSets]. +message MutateSharedSetsRequest { + // Required. The ID of the customer whose shared sets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual shared sets. + repeated SharedSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an shared set. +message SharedSetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new shared set. + google.ads.googleads.v8.resources.SharedSet create = 1; + + // Update operation: The shared set is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.SharedSet update = 2; + + // Remove operation: A resource name for the removed shared set is expected, + // in this format: + // + // `customers/{customer_id}/sharedSets/{shared_set_id}` + string remove = 3; + } +} + +// Response message for a shared set mutate. +message MutateSharedSetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateSharedSetResult results = 2; +} + +// The result for the shared set mutate. +message MutateSharedSetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated shared set with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.SharedSet shared_set = 2; +} diff --git a/google/ads/googleads/v8/services/shopping_performance_view_service.proto b/google/ads/googleads/v8/services/shopping_performance_view_service.proto new file mode 100644 index 000000000..bd97ceef9 --- /dev/null +++ b/google/ads/googleads/v8/services/shopping_performance_view_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/shopping_performance_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ShoppingPerformanceViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the ShoppingPerformanceView service. + +// Service to fetch Shopping performance views. +service ShoppingPerformanceViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Shopping performance view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetShoppingPerformanceView(GetShoppingPerformanceViewRequest) returns (google.ads.googleads.v8.resources.ShoppingPerformanceView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/shoppingPerformanceView}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [ShoppingPerformanceViewService.GetShoppingPerformanceView][google.ads.googleads.v8.services.ShoppingPerformanceViewService.GetShoppingPerformanceView]. +message GetShoppingPerformanceViewRequest { + // Required. The resource name of the Shopping performance view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ShoppingPerformanceView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/smart_campaign_search_term_view_service.proto b/google/ads/googleads/v8/services/smart_campaign_search_term_view_service.proto new file mode 100644 index 000000000..12aa98911 --- /dev/null +++ b/google/ads/googleads/v8/services/smart_campaign_search_term_view_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/smart_campaign_search_term_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SmartCampaignSearchTermViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Smart Campaign Search Term View service. + +// Service to manage Smart campaign search term views. +service SmartCampaignSearchTermViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the attributes of the requested Smart campaign search term view. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetSmartCampaignSearchTermView(GetSmartCampaignSearchTermViewRequest) returns (google.ads.googleads.v8.resources.SmartCampaignSearchTermView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/smartCampaignSearchTermViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [SmartCampaignSearchTermViewService.GetSmartCampaignSearchTermView][google.ads.googleads.v8.services.SmartCampaignSearchTermViewService.GetSmartCampaignSearchTermView]. +message GetSmartCampaignSearchTermViewRequest { + // Required. The resource name of the Smart campaign search term view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SmartCampaignSearchTermView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/smart_campaign_setting_service.proto b/google/ads/googleads/v8/services/smart_campaign_setting_service.proto new file mode 100644 index 000000000..1a84ddf9c --- /dev/null +++ b/google/ads/googleads/v8/services/smart_campaign_setting_service.proto @@ -0,0 +1,128 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/enums/response_content_type.proto"; +import "google/ads/googleads/v8/resources/smart_campaign_setting.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SmartCampaignSettingServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Smart campaign setting service. + +// Service to manage Smart campaign settings. +service SmartCampaignSettingService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Smart campaign setting in full detail. + rpc GetSmartCampaignSetting(GetSmartCampaignSettingRequest) returns (google.ads.googleads.v8.resources.SmartCampaignSetting) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/smartCampaignSettings/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Updates Smart campaign settings for campaigns. + rpc MutateSmartCampaignSettings(MutateSmartCampaignSettingsRequest) returns (MutateSmartCampaignSettingsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/smartCampaignSettings:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [SmartCampaignSettingService.GetSmartCampaignSetting][google.ads.googleads.v8.services.SmartCampaignSettingService.GetSmartCampaignSetting]. +message GetSmartCampaignSettingRequest { + // Required. The resource name of the Smart campaign setting to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SmartCampaignSetting" + } + ]; +} + +// Request message for +// [SmartCampaignSettingService.MutateSmartCampaignSetting][]. +message MutateSmartCampaignSettingsRequest { + // Required. The ID of the customer whose Smart campaign settings are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual Smart campaign settings. + repeated SmartCampaignSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v8.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation to update Smart campaign settings for a campaign. +message SmartCampaignSettingOperation { + // Update operation: The Smart campaign setting must specify a valid + // resource name. + google.ads.googleads.v8.resources.SmartCampaignSetting update = 1; + + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 2; +} + +// Response message for campaign mutate. +message MutateSmartCampaignSettingsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; + + // All results for the mutate. + repeated MutateSmartCampaignSettingResult results = 2; +} + +// The result for the Smart campaign setting mutate. +message MutateSmartCampaignSettingResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated Smart campaign setting with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v8.resources.SmartCampaignSetting smart_campaign_setting = 2; +} diff --git a/google/ads/googleads/v8/services/smart_campaign_suggest_service.proto b/google/ads/googleads/v8/services/smart_campaign_suggest_service.proto new file mode 100644 index 000000000..81339b7d9 --- /dev/null +++ b/google/ads/googleads/v8/services/smart_campaign_suggest_service.proto @@ -0,0 +1,191 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/ad_type_infos.proto"; +import "google/ads/googleads/v8/common/criteria.proto"; +import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/client.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SmartCampaignSuggestServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Service to get suggestions for Smart Campaigns. +service SmartCampaignSuggestService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns BudgetOption suggestions. + rpc SuggestSmartCampaignBudgetOptions(SuggestSmartCampaignBudgetOptionsRequest) returns (SuggestSmartCampaignBudgetOptionsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}:suggestSmartCampaignBudgetOptions" + body: "*" + }; + } + + // Suggests a Smart campaign ad compatible with the Ad family of resources, + // based on data points such as targeting and the business to advertise. + rpc SuggestSmartCampaignAd(SuggestSmartCampaignAdRequest) returns (SuggestSmartCampaignAdResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}:suggestSmartCampaignAd" + body: "*" + }; + } +} + +// Request message for +// [SmartCampaignSuggestService.SuggestSmartCampaignBudgets][]. +message SuggestSmartCampaignBudgetOptionsRequest { + // Required. The ID of the customer whose budget options are to be suggested. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. For first time campaign creation use SuggestionInfo, for + // subsequent updates on BudgetOptions based on an already created campaign + // use that campaign. + oneof suggestion_data { + // Required. The resource name of the campaign to get suggestion for. + string campaign = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Required. Information needed to get budget options + SmartCampaignSuggestionInfo suggestion_info = 3 [(google.api.field_behavior) = REQUIRED]; + } +} + +// Information needed to get suggestion for Smart Campaign. More information +// provided will help the system to derive better suggestions. +message SmartCampaignSuggestionInfo { + // A list of locations. + message LocationList { + // Required. Locations. + repeated google.ads.googleads.v8.common.LocationInfo locations = 1 [(google.api.field_behavior) = REQUIRED]; + } + + // A context that describes a business. + message BusinessContext { + // Optional. The name of the business. + string business_name = 1 [(google.api.field_behavior) = OPTIONAL]; + } + + // Optional. Landing page URL of the campaign. + string final_url = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The two letter advertising language for the Smart campaign to be + // constructed, default to 'en' if not set. + string language_code = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The business ad schedule. + repeated google.ads.googleads.v8.common.AdScheduleInfo ad_schedules = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Smart campaign keyword themes. This field may greatly improve suggestion + // accuracy and we recommend always setting it if possible. + repeated google.ads.googleads.v8.common.KeywordThemeInfo keyword_themes = 7 [(google.api.field_behavior) = OPTIONAL]; + + // The business settings to consider when generating suggestions. + // Settings are automatically extracted from the business when provided. + // Otherwise, these settings must be specified explicitly. + oneof business_setting { + // Optional. Context describing the business to advertise. + BusinessContext business_context = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The ID of the Business Profile location. + // The location ID can be fetched by Business Profile API with its form: + // accounts/{accountId}/locations/{locationId}. The last {locationId} + // component from the Business Profile API represents the + // business_location_id. See the [Business Profile API] + // (https://developers.google.com/my-business/reference/rest/v4/accounts.locations) + int64 business_location_id = 2 [(google.api.field_behavior) = OPTIONAL]; + } + + // The geo target of the campaign, either a list of locations or + // a single proximity shall be specified. + oneof geo_target { + // Optional. The targeting geo location by locations. + LocationList location_list = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The targeting geo location by proximity. + google.ads.googleads.v8.common.ProximityInfo proximity = 5 [(google.api.field_behavior) = OPTIONAL]; + } +} + +// Response message for +// [SmartCampaignSuggestService.SuggestSmartCampaignBudgets][]. Depending on +// whether the system could suggest the options, either all of the options or +// none of them might be returned. +message SuggestSmartCampaignBudgetOptionsResponse { + // Performance metrics for a given budget option. + message Metrics { + // The estimated min daily clicks. + int64 min_daily_clicks = 1; + + // The estimated max daily clicks. + int64 max_daily_clicks = 2; + } + + // Smart Campaign budget option. + message BudgetOption { + // The amount of the budget, in the local currency for the account. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + int64 daily_amount_micros = 1; + + // Metrics pertaining to the suggested budget, could be empty if there is + // not enough information to derive the estimates. + Metrics metrics = 2; + } + + // Optional. The lowest budget option. + optional BudgetOption low = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The recommended budget option. + optional BudgetOption recommended = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The highest budget option. + optional BudgetOption high = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for +// [SmartCampaignSuggestService.SuggestSmartCampaignAd][google.ads.googleads.v8.services.SmartCampaignSuggestService.SuggestSmartCampaignAd]. +message SuggestSmartCampaignAdRequest { + // Required. The ID of the customer. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Inputs used to suggest a Smart campaign ad. + // Required fields: final_url, language_code, keyword_themes. + // Optional but recommended fields to improve the quality of the suggestion: + // business_setting and geo_target. + SmartCampaignSuggestionInfo suggestion_info = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for +// [SmartCampaignSuggestService.SuggestSmartCampaignAd][google.ads.googleads.v8.services.SmartCampaignSuggestService.SuggestSmartCampaignAd]. +message SuggestSmartCampaignAdResponse { + // Optional. Ad info includes 3 creative headlines and 2 creative descriptions. + google.ads.googleads.v8.common.SmartCampaignAdInfo ad_info = 1 [(google.api.field_behavior) = OPTIONAL]; +} diff --git a/google/ads/googleads/v8/services/third_party_app_analytics_link_service.proto b/google/ads/googleads/v8/services/third_party_app_analytics_link_service.proto new file mode 100644 index 000000000..20cb16854 --- /dev/null +++ b/google/ads/googleads/v8/services/third_party_app_analytics_link_service.proto @@ -0,0 +1,94 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/third_party_app_analytics_link.proto"; +import "google/api/annotations.proto"; +import "google/api/resource.proto"; +import "google/api/client.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ThirdPartyAppAnalyticsLinkServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// This service allows management of links between Google Ads and third party +// app analytics. +service ThirdPartyAppAnalyticsLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the third party app analytics link in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetThirdPartyAppAnalyticsLink(GetThirdPartyAppAnalyticsLinkRequest) returns (google.ads.googleads.v8.resources.ThirdPartyAppAnalyticsLink) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" + }; + } + + // Regenerate ThirdPartyAppAnalyticsLink.shareable_link_id that should be + // provided to the third party when setting up app analytics. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc RegenerateShareableLinkId(RegenerateShareableLinkIdRequest) returns (RegenerateShareableLinkIdResponse) { + option (google.api.http) = { + post: "/v8/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}:regenerateShareableLinkId" + body: "*" + }; + } +} + +// Request message for +// [ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink][google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink]. +message GetThirdPartyAppAnalyticsLinkRequest { + // Resource name of the third party app analytics link. + string resource_name = 1 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" + }]; +} + +// Request message for +// [ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId][google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId]. +message RegenerateShareableLinkIdRequest { + // Resource name of the third party app analytics link. + string resource_name = 1 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" + }]; +} + +// Response message for +// [ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId][google.ads.googleads.v8.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId]. +message RegenerateShareableLinkIdResponse { + +} diff --git a/google/ads/googleads/v8/services/topic_constant_service.proto b/google/ads/googleads/v8/services/topic_constant_service.proto new file mode 100644 index 000000000..8916ad25b --- /dev/null +++ b/google/ads/googleads/v8/services/topic_constant_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/topic_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "TopicConstantServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Topic constant service + +// Service to fetch topic constants. +service TopicConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested topic constant in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetTopicConstant(GetTopicConstantRequest) returns (google.ads.googleads.v8.resources.TopicConstant) { + option (google.api.http) = { + get: "/v8/{resource_name=topicConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [TopicConstantService.GetTopicConstant][google.ads.googleads.v8.services.TopicConstantService.GetTopicConstant]. +message GetTopicConstantRequest { + // Required. Resource name of the Topic to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/TopicConstant" + } + ]; +} diff --git a/google/ads/googleads/v8/services/topic_view_service.proto b/google/ads/googleads/v8/services/topic_view_service.proto new file mode 100644 index 000000000..6c95389ae --- /dev/null +++ b/google/ads/googleads/v8/services/topic_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/topic_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "TopicViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Topic View service. + +// Service to manage topic views. +service TopicViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested topic view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetTopicView(GetTopicViewRequest) returns (google.ads.googleads.v8.resources.TopicView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/topicViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [TopicViewService.GetTopicView][google.ads.googleads.v8.services.TopicViewService.GetTopicView]. +message GetTopicViewRequest { + // Required. The resource name of the topic view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/TopicView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/user_data_service.proto b/google/ads/googleads/v8/services/user_data_service.proto new file mode 100644 index 000000000..8051ca391 --- /dev/null +++ b/google/ads/googleads/v8/services/user_data_service.proto @@ -0,0 +1,97 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/common/offline_user_data.proto"; +import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; +import "google/api/client.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "UserDataServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the UserDataService. + +// Service to manage user data uploads. +service UserDataService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Uploads the given user data. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [OfflineUserDataJobError]() + // [QuotaError]() + // [RequestError]() + // [UserDataError]() + rpc UploadUserData(UploadUserDataRequest) returns (UploadUserDataResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}:uploadUserData" + body: "*" + }; + } +} + +// Request message for [UserDataService.UploadUserData][google.ads.googleads.v8.services.UserDataService.UploadUserData] +message UploadUserDataRequest { + // Required. The ID of the customer for which to update the user data. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to be done. + repeated UserDataOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; + + // Metadata of the request. + oneof metadata { + // Metadata for data updates to a Customer Match user list. + google.ads.googleads.v8.common.CustomerMatchUserListMetadata customer_match_user_list_metadata = 2; + } +} + +// Operation to be made for the UploadUserDataRequest. +message UserDataOperation { + // Operation to be made for the UploadUserDataRequest. + oneof operation { + // The list of user data to be appended to the user list. + google.ads.googleads.v8.common.UserData create = 1; + + // The list of user data to be removed from the user list. + google.ads.googleads.v8.common.UserData remove = 2; + } +} + +// Response message for [UserDataService.UploadUserData][google.ads.googleads.v8.services.UserDataService.UploadUserData] +message UploadUserDataResponse { + // The date time at which the request was received by API, formatted as + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string upload_date_time = 3; + + // Number of upload data operations received by API. + optional int32 received_operations_count = 4; +} diff --git a/google/ads/googleads/v8/services/user_interest_service.proto b/google/ads/googleads/v8/services/user_interest_service.proto new file mode 100644 index 000000000..e9d4c5a4a --- /dev/null +++ b/google/ads/googleads/v8/services/user_interest_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/user_interest.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "UserInterestServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the user interest service + +// Service to fetch Google Ads User Interest. +service UserInterestService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested user interest in full detail + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetUserInterest(GetUserInterestRequest) returns (google.ads.googleads.v8.resources.UserInterest) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/userInterests/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [UserInterestService.GetUserInterest][google.ads.googleads.v8.services.UserInterestService.GetUserInterest]. +message GetUserInterestRequest { + // Required. Resource name of the UserInterest to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserInterest" + } + ]; +} diff --git a/google/ads/googleads/v8/services/user_list_service.proto b/google/ads/googleads/v8/services/user_list_service.proto new file mode 100644 index 000000000..bc0d3ecf1 --- /dev/null +++ b/google/ads/googleads/v8/services/user_list_service.proto @@ -0,0 +1,159 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/user_list.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "UserListServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the User List service. + +// Service to manage user lists. +service UserListService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested user list. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetUserList(GetUserListRequest) returns (google.ads.googleads.v8.resources.UserList) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/userLists/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates user lists. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotAllowlistedError]() + // [NotEmptyError]() + // [OperationAccessDeniedError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [StringFormatError]() + // [StringLengthError]() + // [UserListError]() + rpc MutateUserLists(MutateUserListsRequest) returns (MutateUserListsResponse) { + option (google.api.http) = { + post: "/v8/customers/{customer_id=*}/userLists:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [UserListService.GetUserList][google.ads.googleads.v8.services.UserListService.GetUserList]. +message GetUserListRequest { + // Required. The resource name of the user list to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserList" + } + ]; +} + +// Request message for [UserListService.MutateUserLists][google.ads.googleads.v8.services.UserListService.MutateUserLists]. +message MutateUserListsRequest { + // Required. The ID of the customer whose user lists are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual user lists. + repeated UserListOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update) on a user list. +message UserListOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new user list. + google.ads.googleads.v8.resources.UserList create = 1; + + // Update operation: The user list is expected to have a valid resource + // name. + google.ads.googleads.v8.resources.UserList update = 2; + + // Remove operation: A resource name for the removed user list is expected, + // in this format: + // + // `customers/{customer_id}/userLists/{user_list_id}` + string remove = 3; + } +} + +// Response message for user list mutate. +message MutateUserListsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateUserListResult results = 2; +} + +// The result for the user list mutate. +message MutateUserListResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v8/services/user_location_view_service.proto b/google/ads/googleads/v8/services/user_location_view_service.proto new file mode 100644 index 000000000..a27f118a1 --- /dev/null +++ b/google/ads/googleads/v8/services/user_location_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/user_location_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "UserLocationViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the UserLocationView service. + +// Service to manage user location views. +service UserLocationViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested user location view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetUserLocationView(GetUserLocationViewRequest) returns (google.ads.googleads.v8.resources.UserLocationView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/userLocationViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [UserLocationViewService.GetUserLocationView][google.ads.googleads.v8.services.UserLocationViewService.GetUserLocationView]. +message GetUserLocationViewRequest { + // Required. The resource name of the user location view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserLocationView" + } + ]; +} diff --git a/google/ads/googleads/v8/services/video_service.proto b/google/ads/googleads/v8/services/video_service.proto new file mode 100644 index 000000000..d395012e9 --- /dev/null +++ b/google/ads/googleads/v8/services/video_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/video.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "VideoServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Video service. + +// Service to manage videos. +service VideoService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested video in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetVideo(GetVideoRequest) returns (google.ads.googleads.v8.resources.Video) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/videos/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [VideoService.GetVideo][google.ads.googleads.v8.services.VideoService.GetVideo]. +message GetVideoRequest { + // Required. The resource name of the video to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Video" + } + ]; +} diff --git a/google/ads/googleads/v8/services/webpage_view_service.proto b/google/ads/googleads/v8/services/webpage_view_service.proto new file mode 100644 index 000000000..b7b9abb5e --- /dev/null +++ b/google/ads/googleads/v8/services/webpage_view_service.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v8.services; + +import "google/ads/googleads/v8/resources/webpage_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V8.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v8/services;services"; +option java_multiple_files = true; +option java_outer_classname = "WebpageViewServiceProto"; +option java_package = "com.google.ads.googleads.v8.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V8\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V8::Services"; + +// Proto file describing the Webpage View service. + +// Service to manage webpage views. +service WebpageViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested webpage view in full detail. + rpc GetWebpageView(GetWebpageViewRequest) returns (google.ads.googleads.v8.resources.WebpageView) { + option (google.api.http) = { + get: "/v8/{resource_name=customers/*/webpageViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [WebpageViewService.GetWebpageView][google.ads.googleads.v8.services.WebpageViewService.GetWebpageView]. +message GetWebpageViewRequest { + // Required. The resource name of the webpage view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/WebpageView" + } + ]; +} diff --git a/google/ads/googleads/v9/BUILD.bazel b/google/ads/googleads/v9/BUILD.bazel new file mode 100644 index 000000000..f232f8aa8 --- /dev/null +++ b/google/ads/googleads/v9/BUILD.bazel @@ -0,0 +1,263 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +package(default_visibility = ["//visibility:public"]) + +exports_files(["googleads_grpc_service_config.json"] + ["*.yaml"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "googleads_proto", + srcs = [], + deps = [ + "//google/ads/googleads/v9/common:common_proto", + "//google/ads/googleads/v9/enums:enums_proto", + "//google/ads/googleads/v9/errors:errors_proto", + "//google/ads/googleads/v9/resources:resources_proto", + "//google/ads/googleads/v9/services:services_proto", + ], +) + +proto_library_with_info( + name = "googleads_proto_with_info", + deps = [ + ":googleads_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", +) + +java_gapic_library( + name = "googleads_java_gapic", + srcs = [ + ":googleads_proto_with_info", + ], + gapic_yaml = "googleads_gapic.yaml", + grpc_service_config = ":googleads_grpc_service_config.json", + deps = [ + "//google/ads/googleads/v9/common:common_java_proto", + "//google/ads/googleads/v9/enums:enums_java_proto", + "//google/ads/googleads/v9/resources:resources_java_proto", + "//google/ads/googleads/v9/services:services_java_grpc", + "//google/ads/googleads/v9/services:services_java_proto", + ], +) + +# TODO(ohren): Add more test classes when java_gapic_test is able to run more +# than a single test. Having at least one verifies proper compilation at least. +java_gapic_test( + name = "googleads_java_gapic_suite", + test_classes = [ + "com.google.ads.googleads.v9.services.CampaignServiceClientTest", + ], + runtime_deps = [":googleads_java_gapic_test"], +) + +java_gapic_assembly_gradle_pkg( + name = "googleads-java", + deps = [ + ":googleads_java_gapic", + "//google/ads/googleads/v9:googleads_proto", + "//google/ads/googleads/v9/common:common_java_proto", + "//google/ads/googleads/v9/enums:enums_java_proto", + "//google/ads/googleads/v9/errors:errors_java_proto", + "//google/ads/googleads/v9/resources:resources_java_proto", + "//google/ads/googleads/v9/services:services_java_grpc", + "//google/ads/googleads/v9/services:services_java_proto", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "googleads_php_proto", + plugin_args = ["aggregate_metadata=google.ads.googleads"], + deps = [":googleads_proto"], +) + +php_grpc_library( + name = "googleads_php_grpc", + srcs = [":googleads_proto"], + deps = [":googleads_php_proto"], +) + +php_gapic_library( + name = "googleads_php_gapic", + srcs = [":googleads_proto"], + gapic_yaml = "googleads_gapic.yaml", + grpc_service_config = "googleads_grpc_service_config.json", + service_yaml = "googleads_v9.yaml", + deps = [ + ":googleads_php_grpc", + ":googleads_php_proto", + ], +) + +php_gapic_assembly_pkg( + name = "googleads-php", + deps = [ + ":googleads_php_gapic", + ":googleads_php_grpc", + ":googleads_php_proto", + ], +) + +############################################################################## +# C# +############################################################################## +load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", "csharp_gapic_library") +load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic_pkg.bzl", "csharp_gapic_assembly_pkg") + +csharp_gapic_library( + name = "googleads_csharp_gapic", + srcs = [ + ":googleads_proto_with_info", + ], + grpc_service_config = "googleads_grpc_service_config.json", + deps = [ + "//google/ads/googleads/v9/services:services_csharp_grpc", + ], +) + +csharp_gapic_assembly_pkg( + name = "googleads-csharp", + deps = [ + ":googleads_csharp_gapic", + "//google/ads/googleads/v9/common:common_csharp_proto", + "//google/ads/googleads/v9/enums:enums_csharp_proto", + "//google/ads/googleads/v9/errors:errors_csharp_proto", + "//google/ads/googleads/v9/resources:resources_csharp_proto", + "//google/ads/googleads/v9/services:services_csharp_grpc", + "//google/ads/googleads/v9/services:services_csharp_proto", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_ads_gapic_library", + "ruby_gapic_assembly_pkg", +) + +ruby_ads_gapic_library( + name = "googleads_ruby_gapic", + srcs = ["googleads_proto_with_info"], + extra_protoc_parameters = [ + ":gem.:name=google-ads-googleads", + ":defaults.:service.:default_host=googleads.googleapis.com", + ":overrides.:namespace.Googleads=GoogleAds", + ], + grpc_service_config = "googleads_grpc_service_config.json", +) + +ruby_gapic_assembly_pkg( + name = "googleads-ruby", + deps = [ + ":googleads_ruby_gapic", + "//google/ads/googleads/v9/common:common_ruby_proto", + "//google/ads/googleads/v9/enums:enums_ruby_proto", + "//google/ads/googleads/v9/errors:errors_ruby_proto", + "//google/ads/googleads/v9/resources:resources_ruby_proto", + "//google/ads/googleads/v9/services:services_ruby_grpc", + "//google/ads/googleads/v9/services:services_ruby_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "googleads_py_gapic", + srcs = [":googleads_proto_with_info"], + grpc_service_config = "googleads_grpc_service_config.json", + opt_args = [ + "old-naming", + "lazy-import", + "python-gapic-name=googleads", + "python-gapic-templates=ads-templates", + "warehouse-package-name=google-ads", + ], +) + +py_gapic_assembly_pkg( + name = "googleads-py", + deps = [ + ":googleads_py_gapic", + "//google/ads/googleads/v9/common:common_py_proto", + "//google/ads/googleads/v9/enums:enums_py_proto", + "//google/ads/googleads/v9/errors:errors_py_proto", + "//google/ads/googleads/v9/resources:resources_py_proto", + "//google/ads/googleads/v9/services:services_py_grpc", + "//google/ads/googleads/v9/services:services_py_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "googleads_nodejs_gapic", + package_name = "google-ads", + src = ":googleads_proto_with_info", + extra_protoc_parameters = ["metadata"], + grpc_service_config = "googleads_grpc_service_config.json", + main_service = "GoogleAdsService", + package = "google.ads.googleads.v9", + service_yaml = "googleads_v9.yaml", + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "googleads-nodejs", + deps = [ + ":googleads_nodejs_gapic", + ":googleads_proto", + ], +) diff --git a/google/ads/googleads/v9/common/BUILD.bazel b/google/ads/googleads/v9/common/BUILD.bazel new file mode 100644 index 000000000..8f61bd5ee --- /dev/null +++ b/google/ads/googleads/v9/common/BUILD.bazel @@ -0,0 +1,94 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") + +# TODO(ohren): Change srcs to use an enumeration of each individual proto +# instead of *.proto globbing once the build file generator supports +# subpackages. +proto_library( + name = "common_proto", + srcs = glob(["*.proto"]), + deps = [ + "//google/ads/googleads/v9/enums:enums_proto", + "//google/api:annotations_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "@com_google_protobuf//:wrappers_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_proto_library", +) + +java_proto_library( + name = "common_java_proto", + deps = [":common_proto"], +) + +############################################################################## +# PHP +############################################################################## + +# PHP targets are in the parent directory's BUILD.bazel file to facilitate +# aggregating metadata using a single underlying call to protoc. + +############################################################################## +# C# +############################################################################## +load( + "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", + "csharp_proto_library", +) + +csharp_proto_library( + name = "common_csharp_proto", + deps = [":common_proto"], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", + "ruby_proto_library", +) + +ruby_proto_library( + name = "common_ruby_proto", + deps = [":common_proto"], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_proto_library", +) + +py_proto_library( + name = "common_py_proto", + deps = [":common_proto"], +) diff --git a/google/ads/googleads/v9/common/ad_asset.proto b/google/ads/googleads/v9/common/ad_asset.proto new file mode 100644 index 000000000..d69a5c14e --- /dev/null +++ b/google/ads/googleads/v9/common/ad_asset.proto @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/common/asset_policy.proto"; +import "google/ads/googleads/v9/enums/asset_performance_label.proto"; +import "google/ads/googleads/v9/enums/served_asset_field_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "AdAssetProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing assets used inside an ad. + +// A text asset used inside an ad. +message AdTextAsset { + // Asset text. + optional string text = 4; + + // The pinned field of the asset. This restricts the asset to only serve + // within this field. Multiple assets can be pinned to the same field. An + // asset that is unpinned or pinned to a different field will not serve in a + // field where some other asset has been pinned. + google.ads.googleads.v9.enums.ServedAssetFieldTypeEnum.ServedAssetFieldType pinned_field = 2; + + // The performance label of this text asset. + google.ads.googleads.v9.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel asset_performance_label = 5; + + // The policy summary of this text asset. + AdAssetPolicySummary policy_summary_info = 6; +} + +// An image asset used inside an ad. +message AdImageAsset { + // The Asset resource name of this image. + optional string asset = 2; +} + +// A video asset used inside an ad. +message AdVideoAsset { + // The Asset resource name of this video. + optional string asset = 2; +} + +// A media bundle asset used inside an ad. +message AdMediaBundleAsset { + // The Asset resource name of this media bundle. + optional string asset = 2; +} diff --git a/google/ads/googleads/v9/common/ad_type_infos.proto b/google/ads/googleads/v9/common/ad_type_infos.proto new file mode 100644 index 000000000..7a449e997 --- /dev/null +++ b/google/ads/googleads/v9/common/ad_type_infos.proto @@ -0,0 +1,724 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/common/ad_asset.proto"; +import "google/ads/googleads/v9/enums/call_conversion_reporting_state.proto"; +import "google/ads/googleads/v9/enums/display_ad_format_setting.proto"; +import "google/ads/googleads/v9/enums/display_upload_product_type.proto"; +import "google/ads/googleads/v9/enums/legacy_app_install_ad_app_store.proto"; +import "google/ads/googleads/v9/enums/mime_type.proto"; +import "google/ads/googleads/v9/enums/video_thumbnail.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "AdTypeInfosProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file containing info messages for specific ad types. + +// A text ad. +message TextAdInfo { + // The headline of the ad. + optional string headline = 4; + + // The first line of the ad's description. + optional string description1 = 5; + + // The second line of the ad's description. + optional string description2 = 6; +} + +// An expanded text ad. +message ExpandedTextAdInfo { + // The first part of the ad's headline. + optional string headline_part1 = 8; + + // The second part of the ad's headline. + optional string headline_part2 = 9; + + // The third part of the ad's headline. + optional string headline_part3 = 10; + + // The description of the ad. + optional string description = 11; + + // The second description of the ad. + optional string description2 = 12; + + // The text that can appear alongside the ad's displayed URL. + optional string path1 = 13; + + // Additional text that can appear alongside the ad's displayed URL. + optional string path2 = 14; +} + +// An expanded dynamic search ad. +message ExpandedDynamicSearchAdInfo { + // The description of the ad. + optional string description = 3; + + // The second description of the ad. + optional string description2 = 4; +} + +// A hotel ad. +message HotelAdInfo { + +} + +// A Smart Shopping ad. +message ShoppingSmartAdInfo { + +} + +// A standard Shopping ad. +message ShoppingProductAdInfo { + +} + +// A Shopping Comparison Listing ad. +message ShoppingComparisonListingAdInfo { + // Headline of the ad. This field is required. Allowed length is between 25 + // and 45 characters. + optional string headline = 2; +} + +// A Gmail ad. +message GmailAdInfo { + // The Gmail teaser. + GmailTeaser teaser = 1; + + // The MediaFile resource name of the header image. Valid image types are GIF, + // JPEG and PNG. The minimum size is 300x100 pixels and the aspect ratio must + // be between 3:1 and 5:1 (+-1%). + optional string header_image = 10; + + // The MediaFile resource name of the marketing image. Valid image types are + // GIF, JPEG and PNG. The image must either be landscape with a minimum size + // of 600x314 pixels and aspect ratio of 600:314 (+-1%) or square with a + // minimum size of 300x300 pixels and aspect ratio of 1:1 (+-1%) + optional string marketing_image = 11; + + // Headline of the marketing image. + optional string marketing_image_headline = 12; + + // Description of the marketing image. + optional string marketing_image_description = 13; + + // Display-call-to-action of the marketing image. + DisplayCallToAction marketing_image_display_call_to_action = 6; + + // Product images. Up to 15 images are supported. + repeated ProductImage product_images = 7; + + // Product videos. Up to 7 videos are supported. At least one product video + // or a marketing image must be specified. + repeated ProductVideo product_videos = 8; +} + +// Gmail teaser data. The teaser is a small header that acts as an invitation +// to view the rest of the ad (the body). +message GmailTeaser { + // Headline of the teaser. + optional string headline = 5; + + // Description of the teaser. + optional string description = 6; + + // Business name of the advertiser. + optional string business_name = 7; + + // The MediaFile resource name of the logo image. Valid image types are GIF, + // JPEG and PNG. The minimum size is 144x144 pixels and the aspect ratio must + // be 1:1 (+-1%). + optional string logo_image = 8; +} + +// Data for display call to action. The call to action is a piece of the ad +// that prompts the user to do something. Like clicking a link or making a phone +// call. +message DisplayCallToAction { + // Text for the display-call-to-action. + optional string text = 5; + + // Text color for the display-call-to-action in hexadecimal, e.g. #ffffff for + // white. + optional string text_color = 6; + + // Identifies the URL collection in the `ad.url_collections` field. If not + // set, the URL defaults to `final_url`. + optional string url_collection_id = 7; +} + +// Product image specific data. +message ProductImage { + // The MediaFile resource name of the product image. Valid image types are + // GIF, JPEG and PNG. The minimum size is 300x300 pixels and the aspect ratio + // must be 1:1 (+-1%). + optional string product_image = 4; + + // Description of the product. + optional string description = 5; + + // Display-call-to-action of the product image. + DisplayCallToAction display_call_to_action = 3; +} + +// Product video specific data. +message ProductVideo { + // The MediaFile resource name of a video which must be hosted on YouTube. + optional string product_video = 2; +} + +// An image ad. +message ImageAdInfo { + // Width in pixels of the full size image. + optional int64 pixel_width = 15; + + // Height in pixels of the full size image. + optional int64 pixel_height = 16; + + // URL of the full size image. + optional string image_url = 17; + + // Width in pixels of the preview size image. + optional int64 preview_pixel_width = 18; + + // Height in pixels of the preview size image. + optional int64 preview_pixel_height = 19; + + // URL of the preview size image. + optional string preview_image_url = 20; + + // The mime type of the image. + google.ads.googleads.v9.enums.MimeTypeEnum.MimeType mime_type = 10; + + // The name of the image. If the image was created from a MediaFile, this is + // the MediaFile's name. If the image was created from bytes, this is empty. + optional string name = 21; + + // The image to create the ImageAd from. This can be specified in one of + // two ways. + // 1. An existing MediaFile resource. + // 2. The raw image data as bytes. + oneof image { + // The MediaFile resource to use for the image. + string media_file = 12; + + // Raw image data as bytes. + bytes data = 13; + + // An ad ID to copy the image from. + int64 ad_id_to_copy_image_from = 14; + } +} + +// Representation of video bumper in-stream ad format (very short in-stream +// non-skippable video ad). +message VideoBumperInStreamAdInfo { + // The image assets of the companion banner used with the ad. + AdImageAsset companion_banner = 3; +} + +// Representation of video non-skippable in-stream ad format (15 second +// in-stream non-skippable video ad). +message VideoNonSkippableInStreamAdInfo { + // The image assets of the companion banner used with the ad. + AdImageAsset companion_banner = 5; + + // Label on the "Call To Action" button taking the user to the video ad's + // final URL. + string action_button_label = 3; + + // Additional text displayed with the "Call To Action" button to give + // context and encourage clicking on the button. + string action_headline = 4; +} + +// Representation of video TrueView in-stream ad format (ad shown during video +// playback, often at beginning, which displays a skip button a few seconds into +// the video). +message VideoTrueViewInStreamAdInfo { + // Label on the CTA (call-to-action) button taking the user to the video ad's + // final URL. + // Required for TrueView for action campaigns, optional otherwise. + string action_button_label = 4; + + // Additional text displayed with the CTA (call-to-action) button to give + // context and encourage clicking on the button. + string action_headline = 5; + + // The image assets of the companion banner used with the ad. + AdImageAsset companion_banner = 7; +} + +// Representation of video out-stream ad format (ad shown alongside a feed +// with automatic playback, without sound). +message VideoOutstreamAdInfo { + // The headline of the ad. + string headline = 3; + + // The description line. + string description = 4; +} + +// Representation of video TrueView discovery ad format. +message VideoTrueViewDiscoveryAdInfo { + // The headline of the ad. + string headline = 4; + + // First text line for a TrueView video discovery ad. + string description1 = 5; + + // Second text line for a TrueView video discovery ad. + string description2 = 6; + + // Video thumbnail image to use. + google.ads.googleads.v9.enums.VideoThumbnailEnum.VideoThumbnail thumbnail = 7; +} + +// A video ad. +message VideoAdInfo { + // The YouTube video assets used for the ad. + AdVideoAsset video = 8; + + // Format-specific schema for the different video formats. + oneof format { + // Video TrueView in-stream ad format. + VideoTrueViewInStreamAdInfo in_stream = 2; + + // Video bumper in-stream ad format. + VideoBumperInStreamAdInfo bumper = 3; + + // Video out-stream ad format. + VideoOutstreamAdInfo out_stream = 4; + + // Video non-skippable in-stream ad format. + VideoNonSkippableInStreamAdInfo non_skippable = 5; + + // Video TrueView discovery ad format. + VideoTrueViewDiscoveryAdInfo discovery = 6; + } +} + +// A video responsive ad. +message VideoResponsiveAdInfo { + // List of text assets used for the short headline, e.g. the "Call To Action" + // banner. Currently, only a single value for the short headline is supported. + repeated AdTextAsset headlines = 1; + + // List of text assets used for the long headline. + // Currently, only a single value for the long headline is supported. + repeated AdTextAsset long_headlines = 2; + + // List of text assets used for the description. + // Currently, only a single value for the description is supported. + repeated AdTextAsset descriptions = 3; + + // List of text assets used for the button, e.g. the "Call To Action" button. + // Currently, only a single value for the button is supported. + repeated AdTextAsset call_to_actions = 4; + + // List of YouTube video assets used for the ad. + // Currently, only a single value for the YouTube video asset is supported. + repeated AdVideoAsset videos = 5; + + // List of image assets used for the companion banner. + // Currently, only a single value for the companion banner asset is supported. + repeated AdImageAsset companion_banners = 6; +} + +// A responsive search ad. +// +// Responsive search ads let you create an ad that adapts to show more text, and +// more relevant messages, to your customers. Enter multiple headlines and +// descriptions when creating a responsive search ad, and over time, Google Ads +// will automatically test different combinations and learn which combinations +// perform best. By adapting your ad's content to more closely match potential +// customers' search terms, responsive search ads may improve your campaign's +// performance. +// +// More information at https://support.google.com/google-ads/answer/7684791 +message ResponsiveSearchAdInfo { + // List of text assets for headlines. When the ad serves the headlines will + // be selected from this list. + repeated AdTextAsset headlines = 1; + + // List of text assets for descriptions. When the ad serves the descriptions + // will be selected from this list. + repeated AdTextAsset descriptions = 2; + + // First part of text that can be appended to the URL in the ad. + optional string path1 = 5; + + // Second part of text that can be appended to the URL in the ad. This field + // can only be set when `path1` is also set. + optional string path2 = 6; +} + +// A legacy responsive display ad. Ads of this type are labeled 'Responsive ads' +// in the Google Ads UI. +message LegacyResponsiveDisplayAdInfo { + // The short version of the ad's headline. + optional string short_headline = 16; + + // The long version of the ad's headline. + optional string long_headline = 17; + + // The description of the ad. + optional string description = 18; + + // The business name in the ad. + optional string business_name = 19; + + // Advertiser's consent to allow flexible color. When true, the ad may be + // served with different color if necessary. When false, the ad will be served + // with the specified colors or a neutral color. + // The default value is `true`. + // Must be true if `main_color` and `accent_color` are not set. + optional bool allow_flexible_color = 20; + + // The accent color of the ad in hexadecimal, e.g. #ffffff for white. + // If one of `main_color` and `accent_color` is set, the other is required as + // well. + optional string accent_color = 21; + + // The main color of the ad in hexadecimal, e.g. #ffffff for white. + // If one of `main_color` and `accent_color` is set, the other is required as + // well. + optional string main_color = 22; + + // The call-to-action text for the ad. + optional string call_to_action_text = 23; + + // The MediaFile resource name of the logo image used in the ad. + optional string logo_image = 24; + + // The MediaFile resource name of the square logo image used in the ad. + optional string square_logo_image = 25; + + // The MediaFile resource name of the marketing image used in the ad. + optional string marketing_image = 26; + + // The MediaFile resource name of the square marketing image used in the ad. + optional string square_marketing_image = 27; + + // Specifies which format the ad will be served in. Default is ALL_FORMATS. + google.ads.googleads.v9.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting format_setting = 13; + + // Prefix before price. E.g. 'as low as'. + optional string price_prefix = 28; + + // Promotion text used for dynamic formats of responsive ads. For example + // 'Free two-day shipping'. + optional string promo_text = 29; +} + +// An app ad. +message AppAdInfo { + // Mandatory ad text. + AdTextAsset mandatory_ad_text = 1; + + // List of text assets for headlines. When the ad serves the headlines will + // be selected from this list. + repeated AdTextAsset headlines = 2; + + // List of text assets for descriptions. When the ad serves the descriptions + // will be selected from this list. + repeated AdTextAsset descriptions = 3; + + // List of image assets that may be displayed with the ad. + repeated AdImageAsset images = 4; + + // List of YouTube video assets that may be displayed with the ad. + repeated AdVideoAsset youtube_videos = 5; + + // List of media bundle assets that may be used with the ad. + repeated AdMediaBundleAsset html5_media_bundles = 6; +} + +// App engagement ads allow you to write text encouraging a specific action in +// the app, like checking in, making a purchase, or booking a flight. +// They allow you to send users to a specific part of your app where they can +// find what they're looking for easier and faster. +message AppEngagementAdInfo { + // List of text assets for headlines. When the ad serves the headlines will + // be selected from this list. + repeated AdTextAsset headlines = 1; + + // List of text assets for descriptions. When the ad serves the descriptions + // will be selected from this list. + repeated AdTextAsset descriptions = 2; + + // List of image assets that may be displayed with the ad. + repeated AdImageAsset images = 3; + + // List of video assets that may be displayed with the ad. + repeated AdVideoAsset videos = 4; +} + +// App pre-registration ads link to your app or game listing on Google Play, and +// can run on Google Play, on YouTube (in-stream only), and within other apps +// and mobile websites on the Display Network. It will help capture people’s +// interest in your app or game and generate an early install base for your app +// or game before a launch. +message AppPreRegistrationAdInfo { + // List of text assets for headlines. When the ad serves the headlines will + // be selected from this list. + repeated AdTextAsset headlines = 1; + + // List of text assets for descriptions. When the ad serves the descriptions + // will be selected from this list. + repeated AdTextAsset descriptions = 2; + + // List of image asset IDs whose images may be displayed with the ad. + repeated AdImageAsset images = 3; + + // List of YouTube video asset IDs whose videos may be displayed with the ad. + repeated AdVideoAsset youtube_videos = 4; +} + +// A legacy app install ad that only can be used by a few select customers. +message LegacyAppInstallAdInfo { + // The ID of the mobile app. + optional string app_id = 6; + + // The app store the mobile app is available in. + google.ads.googleads.v9.enums.LegacyAppInstallAdAppStoreEnum.LegacyAppInstallAdAppStore app_store = 2; + + // The headline of the ad. + optional string headline = 7; + + // The first description line of the ad. + optional string description1 = 8; + + // The second description line of the ad. + optional string description2 = 9; +} + +// A responsive display ad. +message ResponsiveDisplayAdInfo { + // Marketing images to be used in the ad. Valid image types are GIF, + // JPEG, and PNG. The minimum size is 600x314 and the aspect ratio must + // be 1.91:1 (+-1%). At least one `marketing_image` is required. Combined + // with `square_marketing_images`, the maximum is 15. + repeated AdImageAsset marketing_images = 1; + + // Square marketing images to be used in the ad. Valid image types are GIF, + // JPEG, and PNG. The minimum size is 300x300 and the aspect ratio must + // be 1:1 (+-1%). At least one square `marketing_image` is required. Combined + // with `marketing_images`, the maximum is 15. + repeated AdImageAsset square_marketing_images = 2; + + // Logo images to be used in the ad. Valid image types are GIF, + // JPEG, and PNG. The minimum size is 512x128 and the aspect ratio must + // be 4:1 (+-1%). Combined with `square_logo_images`, the maximum is 5. + repeated AdImageAsset logo_images = 3; + + // Square logo images to be used in the ad. Valid image types are GIF, + // JPEG, and PNG. The minimum size is 128x128 and the aspect ratio must + // be 1:1 (+-1%). Combined with `square_logo_images`, the maximum is 5. + repeated AdImageAsset square_logo_images = 4; + + // Short format headlines for the ad. The maximum length is 30 characters. + // At least 1 and max 5 headlines can be specified. + repeated AdTextAsset headlines = 5; + + // A required long format headline. The maximum length is 90 characters. + AdTextAsset long_headline = 6; + + // Descriptive texts for the ad. The maximum length is 90 characters. At + // least 1 and max 5 headlines can be specified. + repeated AdTextAsset descriptions = 7; + + // Optional YouTube videos for the ad. A maximum of 5 videos can be specified. + repeated AdVideoAsset youtube_videos = 8; + + // The advertiser/brand name. Maximum display width is 25. + optional string business_name = 17; + + // The main color of the ad in hexadecimal, e.g. #ffffff for white. + // If one of `main_color` and `accent_color` is set, the other is required as + // well. + optional string main_color = 18; + + // The accent color of the ad in hexadecimal, e.g. #ffffff for white. + // If one of `main_color` and `accent_color` is set, the other is required as + // well. + optional string accent_color = 19; + + // Advertiser's consent to allow flexible color. When true, the ad may be + // served with different color if necessary. When false, the ad will be served + // with the specified colors or a neutral color. + // The default value is `true`. + // Must be true if `main_color` and `accent_color` are not set. + optional bool allow_flexible_color = 20; + + // The call-to-action text for the ad. Maximum display width is 30. + optional string call_to_action_text = 21; + + // Prefix before price. E.g. 'as low as'. + optional string price_prefix = 22; + + // Promotion text used for dynamic formats of responsive ads. For example + // 'Free two-day shipping'. + optional string promo_text = 23; + + // Specifies which format the ad will be served in. Default is ALL_FORMATS. + google.ads.googleads.v9.enums.DisplayAdFormatSettingEnum.DisplayAdFormatSetting format_setting = 16; + + // Specification for various creative controls. + ResponsiveDisplayAdControlSpec control_spec = 24; +} + +// A local ad. +message LocalAdInfo { + // List of text assets for headlines. When the ad serves the headlines will + // be selected from this list. At least 1 and at most 5 headlines must be + // specified. + repeated AdTextAsset headlines = 1; + + // List of text assets for descriptions. When the ad serves the descriptions + // will be selected from this list. At least 1 and at most 5 descriptions must + // be specified. + repeated AdTextAsset descriptions = 2; + + // List of text assets for call-to-actions. When the ad serves the + // call-to-actions will be selected from this list. Call-to-actions are + // optional and at most 5 can be specified. + repeated AdTextAsset call_to_actions = 3; + + // List of marketing image assets that may be displayed with the ad. The + // images must be 314x600 pixels or 320x320 pixels. At least 1 and at most + // 20 image assets must be specified. + repeated AdImageAsset marketing_images = 4; + + // List of logo image assets that may be displayed with the ad. The images + // must be 128x128 pixels and not larger than 120KB. At least 1 and at most 5 + // image assets must be specified. + repeated AdImageAsset logo_images = 5; + + // List of YouTube video assets that may be displayed with the ad. Videos + // are optional and at most 20 can be specified. + repeated AdVideoAsset videos = 6; + + // First part of optional text that can be appended to the URL in the ad. + optional string path1 = 9; + + // Second part of optional text that can be appended to the URL in the ad. + // This field can only be set when `path1` is also set. + optional string path2 = 10; +} + +// A generic type of display ad. The exact ad format is controlled by the +// `display_upload_product_type` field, which determines what kinds of data +// need to be included with the ad. +message DisplayUploadAdInfo { + // The product type of this ad. See comments on the enum for details. + google.ads.googleads.v9.enums.DisplayUploadProductTypeEnum.DisplayUploadProductType display_upload_product_type = 1; + + // The asset data that makes up the ad. + oneof media_asset { + // A media bundle asset to be used in the ad. For information about the + // media bundle for HTML5_UPLOAD_AD, see + // https://support.google.com/google-ads/answer/1722096 + // Media bundles that are part of dynamic product types use a special format + // that needs to be created through the Google Web Designer. See + // https://support.google.com/webdesigner/answer/7543898 for more + // information. + AdMediaBundleAsset media_bundle = 2; + } +} + +// Specification for various creative controls for a responsive display ad. +message ResponsiveDisplayAdControlSpec { + // Whether the advertiser has opted into the asset enhancements feature. + bool enable_asset_enhancements = 1; + + // Whether the advertiser has opted into auto-gen video feature. + bool enable_autogen_video = 2; +} + +// A Smart campaign ad. +message SmartCampaignAdInfo { + // List of text assets for headlines. When the ad serves the headlines will + // be selected from this list. 3 headlines must be specified. + repeated AdTextAsset headlines = 1; + + // List of text assets for descriptions. When the ad serves the descriptions + // will be selected from this list. 2 descriptions must be specified. + repeated AdTextAsset descriptions = 2; +} + +// A call ad. +message CallAdInfo { + // The country code in the ad. + string country_code = 1; + + // The phone number in the ad. + string phone_number = 2; + + // The business name in the ad. + string business_name = 3; + + // First headline in the ad. + string headline1 = 11; + + // Second headline in the ad. + string headline2 = 12; + + // The first line of the ad's description. + string description1 = 4; + + // The second line of the ad's description. + string description2 = 5; + + // Whether to enable call tracking for the creative. Enabling call + // tracking also enables call conversions. + bool call_tracked = 6; + + // Whether to disable call conversion for the creative. + // If set to `true`, disables call conversions even when `call_tracked` is + // `true`. + // If `call_tracked` is `false`, this field is ignored. + bool disable_call_conversion = 7; + + // The URL to be used for phone number verification. + string phone_number_verification_url = 8; + + // The conversion action to attribute a call conversion to. If not set a + // default conversion action is used. This field only has effect if + // `call_tracked` is set to `true`. Otherwise this field is ignored. + string conversion_action = 9; + + // The call conversion behavior of this call ad. It can use its own call + // conversion setting, inherit the account level setting, or be disabled. + google.ads.googleads.v9.enums.CallConversionReportingStateEnum.CallConversionReportingState conversion_reporting_state = 10; + + // First part of text that can be appended to the URL in the ad. Optional. + string path1 = 13; + + // Second part of text that can be appended to the URL in the ad. This field + // can only be set when `path1` is also set. Optional. + string path2 = 14; +} diff --git a/google/ads/googleads/v9/common/asset_policy.proto b/google/ads/googleads/v9/common/asset_policy.proto new file mode 100644 index 000000000..f9a5ffe2b --- /dev/null +++ b/google/ads/googleads/v9/common/asset_policy.proto @@ -0,0 +1,46 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/common/policy.proto"; +import "google/ads/googleads/v9/enums/policy_approval_status.proto"; +import "google/ads/googleads/v9/enums/policy_review_status.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "AssetPolicyProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing asset policies. + +// Contains policy information for an asset inside an ad. +message AdAssetPolicySummary { + // The list of policy findings for this asset. + repeated PolicyTopicEntry policy_topic_entries = 1; + + // Where in the review process this asset. + google.ads.googleads.v9.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2; + + // The overall approval status of this asset, which is calculated based on + // the status of its individual policy topic entries. + google.ads.googleads.v9.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3; +} diff --git a/google/ads/googleads/v9/common/asset_types.proto b/google/ads/googleads/v9/common/asset_types.proto new file mode 100644 index 000000000..eb67517b9 --- /dev/null +++ b/google/ads/googleads/v9/common/asset_types.proto @@ -0,0 +1,502 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/common/feed_common.proto"; +import "google/ads/googleads/v9/enums/call_conversion_reporting_state.proto"; +import "google/ads/googleads/v9/enums/call_to_action_type.proto"; +import "google/ads/googleads/v9/enums/lead_form_call_to_action_type.proto"; +import "google/ads/googleads/v9/enums/lead_form_desired_intent.proto"; +import "google/ads/googleads/v9/enums/lead_form_field_user_input_type.proto"; +import "google/ads/googleads/v9/enums/lead_form_post_submit_call_to_action_type.proto"; +import "google/ads/googleads/v9/enums/mime_type.proto"; +import "google/ads/googleads/v9/enums/mobile_app_vendor.proto"; +import "google/ads/googleads/v9/enums/price_extension_price_qualifier.proto"; +import "google/ads/googleads/v9/enums/price_extension_price_unit.proto"; +import "google/ads/googleads/v9/enums/price_extension_type.proto"; +import "google/ads/googleads/v9/enums/promotion_extension_discount_modifier.proto"; +import "google/ads/googleads/v9/enums/promotion_extension_occasion.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "AssetTypesProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file containing info messages for specific asset types. + +// A YouTube asset. +message YoutubeVideoAsset { + // YouTube video id. This is the 11 character string value used in the + // YouTube video URL. + optional string youtube_video_id = 2; + + // YouTube video title. + string youtube_video_title = 3; +} + +// A MediaBundle asset. +message MediaBundleAsset { + // Media bundle (ZIP file) asset data. The format of the uploaded ZIP file + // depends on the ad field where it will be used. For more information on the + // format, see the documentation of the ad field where you plan on using the + // MediaBundleAsset. This field is mutate only. + optional bytes data = 2; +} + +// An Image asset. +message ImageAsset { + // The raw bytes data of an image. This field is mutate only. + optional bytes data = 5; + + // File size of the image asset in bytes. + optional int64 file_size = 6; + + // MIME type of the image asset. + google.ads.googleads.v9.enums.MimeTypeEnum.MimeType mime_type = 3; + + // Metadata for this image at its original size. + ImageDimension full_size = 4; +} + +// Metadata for an image at a certain size, either original or resized. +message ImageDimension { + // Height of the image. + optional int64 height_pixels = 4; + + // Width of the image. + optional int64 width_pixels = 5; + + // A URL that returns the image with this height and width. + optional string url = 6; +} + +// A Text asset. +message TextAsset { + // Text content of the text asset. + optional string text = 2; +} + +// A Lead Form asset. +message LeadFormAsset { + // Required. The name of the business being advertised. + string business_name = 10 [(google.api.field_behavior) = REQUIRED]; + + // Required. Pre-defined display text that encourages user to expand the form. + google.ads.googleads.v9.enums.LeadFormCallToActionTypeEnum.LeadFormCallToActionType call_to_action_type = 17 [(google.api.field_behavior) = REQUIRED]; + + // Required. Text giving a clear value proposition of what users expect once they expand + // the form. + string call_to_action_description = 18 [(google.api.field_behavior) = REQUIRED]; + + // Required. Headline of the expanded form to describe what the form is asking for or + // facilitating. + string headline = 12 [(google.api.field_behavior) = REQUIRED]; + + // Required. Detailed description of the expanded form to describe what the form is + // asking for or facilitating. + string description = 13 [(google.api.field_behavior) = REQUIRED]; + + // Required. Link to a page describing the policy on how the collected data is handled + // by the advertiser/business. + string privacy_policy_url = 14 [(google.api.field_behavior) = REQUIRED]; + + // Headline of text shown after form submission that describes how the + // advertiser will follow up with the user. + optional string post_submit_headline = 15; + + // Detailed description shown after form submission that describes how the + // advertiser will follow up with the user. + optional string post_submit_description = 16; + + // Ordered list of input fields. + repeated LeadFormField fields = 8; + + // Configured methods for collected lead data to be delivered to advertiser. + // Only one method typed as WebhookDelivery can be configured. + repeated LeadFormDeliveryMethod delivery_methods = 9; + + // Pre-defined display text that encourages user action after the form is + // submitted. + google.ads.googleads.v9.enums.LeadFormPostSubmitCallToActionTypeEnum.LeadFormPostSubmitCallToActionType post_submit_call_to_action_type = 19; + + // Asset resource name of the background image. The minimum size is 600x314 + // and the aspect ratio must be 1.91:1 (+-1%). + optional string background_image_asset = 20; + + // Desired intent for the lead form, e.g. more volume or more qualified. + google.ads.googleads.v9.enums.LeadFormDesiredIntentEnum.LeadFormDesiredIntent desired_intent = 21; + + // Custom disclosure shown along with Google disclaimer on the lead form. + // Accessible to allowed customers only. + optional string custom_disclosure = 22; +} + +// One input field instance within a form. +message LeadFormField { + // Describes the input type, which may be a predefined type such as + // "full name" or a pre-vetted question like "Do you own a car?". + google.ads.googleads.v9.enums.LeadFormFieldUserInputTypeEnum.LeadFormFieldUserInputType input_type = 1; + + // Defines answer configuration that this form field accepts. If oneof is not + // set, this is a free-text answer. + oneof answers { + // Answer configuration for a single choice question. Can be set only for + // pre-vetted question fields. Minimum of 2 answers required and maximum of + // 12 allowed. + LeadFormSingleChoiceAnswers single_choice_answers = 2; + } +} + +// Defines possible answers for a single choice question, usually presented as +// a single-choice drop-down list. +message LeadFormSingleChoiceAnswers { + // List of choices for a single question field. The order of entries defines + // UI order. Minimum of 2 answers required and maximum of 12 allowed. + repeated string answers = 1; +} + +// A configuration of how leads are delivered to the advertiser. +message LeadFormDeliveryMethod { + // Various subtypes of delivery. + oneof delivery_details { + // Webhook method of delivery. + WebhookDelivery webhook = 1; + } +} + +// Google notifies the advertiser of leads by making HTTP calls to an +// endpoint they specify. The requests contain JSON matching a schema that +// Google publishes as part of form ads documentation. +message WebhookDelivery { + // Webhook url specified by advertiser to send the lead. + optional string advertiser_webhook_url = 4; + + // Anti-spoofing secret set by the advertiser as part of the webhook payload. + optional string google_secret = 5; + + // The schema version that this delivery instance will use. + optional int64 payload_schema_version = 6; +} + +// A Book on Google asset. Used to redirect user to book through Google. +// Book on Google will change the redirect url to book directly through +// Google. +message BookOnGoogleAsset { + +} + +// A Promotion asset. +message PromotionAsset { + // Required. A freeform description of what the promotion is targeting. + string promotion_target = 1 [(google.api.field_behavior) = REQUIRED]; + + // A modifier for qualification of the discount. + google.ads.googleads.v9.enums.PromotionExtensionDiscountModifierEnum.PromotionExtensionDiscountModifier discount_modifier = 2; + + // Start date of when the promotion is eligible to be redeemed, in yyyy-MM-dd + // format. + string redemption_start_date = 7; + + // Last date of when the promotion is eligible to be redeemed, in yyyy-MM-dd + // format. + string redemption_end_date = 8; + + // The occasion the promotion was intended for. + // If an occasion is set, the redemption window will need to fall within the + // date range associated with the occasion. + google.ads.googleads.v9.enums.PromotionExtensionOccasionEnum.PromotionExtensionOccasion occasion = 9; + + // The language of the promotion. + // Represented as BCP 47 language tag. + string language_code = 10; + + // Start date of when this asset is effective and can begin serving, in + // yyyy-MM-dd format. + string start_date = 11; + + // Last date of when this asset is effective and still serving, in yyyy-MM-dd + // format. + string end_date = 12; + + // List of non-overlapping schedules specifying all time intervals for which + // the asset may serve. There can be a maximum of 6 schedules per day, 42 in + // total. + repeated AdScheduleInfo ad_schedule_targets = 13; + + // Discount type, can be percentage off or amount off. + oneof discount_type { + // Percentage off discount in the promotion. 1,000,000 = 100%. + // Either this or money_amount_off is required. + int64 percent_off = 3; + + // Money amount off for discount in the promotion. + // Either this or percent_off is required. + Money money_amount_off = 4; + } + + // Promotion trigger. Can be by promotion code or promo by eligible order + // amount. + oneof promotion_trigger { + // A code the user should use in order to be eligible for the promotion. + string promotion_code = 5; + + // The amount the total order needs to be for the user to be eligible for + // the promotion. + Money orders_over_amount = 6; + } +} + +// A Callout asset. +message CalloutAsset { + // Required. The callout text. + // The length of this string should be between 1 and 25, inclusive. + string callout_text = 1 [(google.api.field_behavior) = REQUIRED]; + + // Start date of when this asset is effective and can begin serving, in + // yyyy-MM-dd format. + string start_date = 2; + + // Last date of when this asset is effective and still serving, in yyyy-MM-dd + // format. + string end_date = 3; + + // List of non-overlapping schedules specifying all time intervals for which + // the asset may serve. There can be a maximum of 6 schedules per day, 42 in + // total. + repeated AdScheduleInfo ad_schedule_targets = 4; +} + +// A Structured Snippet asset. +message StructuredSnippetAsset { + // Required. The header of the snippet. + // This string should be one of the predefined values at + // https://developers.google.com/google-ads/api/reference/data/structured-snippet-headers + string header = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The values in the snippet. + // The size of this collection should be between 3 and 10, inclusive. + // The length of each value should be between 1 and 25 characters, inclusive. + repeated string values = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A Sitelink asset. +message SitelinkAsset { + // Required. URL display text for the sitelink. + // The length of this string should be between 1 and 25, inclusive. + string link_text = 1 [(google.api.field_behavior) = REQUIRED]; + + // First line of the description for the sitelink. + // If set, the length should be between 1 and 35, inclusive, and description2 + // must also be set. + string description1 = 2; + + // Second line of the description for the sitelink. + // If set, the length should be between 1 and 35, inclusive, and description1 + // must also be set. + string description2 = 3; + + // Start date of when this asset is effective and can begin serving, in + // yyyy-MM-dd format. + string start_date = 4; + + // Last date of when this asset is effective and still serving, in yyyy-MM-dd + // format. + string end_date = 5; + + // List of non-overlapping schedules specifying all time intervals for which + // the asset may serve. There can be a maximum of 6 schedules per day, 42 in + // total. + repeated AdScheduleInfo ad_schedule_targets = 6; +} + +// A Page Feed asset. +message PageFeedAsset { + // Required. The webpage that advertisers want to target. + string page_url = 1 [(google.api.field_behavior) = REQUIRED]; + + // Labels used to group the page urls. + repeated string labels = 2; +} + +// A Dynamic Education asset. +message DynamicEducationAsset { + // Required. Program ID which can be any sequence of letters and digits, and must be + // unique and match the values of remarketing tag. Required. + string program_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Location ID which can be any sequence of letters and digits and must be + // unique. + string location_id = 2; + + // Required. Program name, e.g. Nursing. Required. + string program_name = 3 [(google.api.field_behavior) = REQUIRED]; + + // Subject of study, e.g. Health. + string subject = 4; + + // Program description, e.g. Nursing Certification. + string program_description = 5; + + // School name, e.g. Mountain View School of Nursing. + string school_name = 6; + + // School address which can be specified in one of the following formats. + // (1) City, state, code, country, e.g. Mountain View, CA, USA. + // (2) Full address, e.g. 123 Boulevard St, Mountain View, CA 94043. + // (3) Latitude-longitude in the DDD format, e.g. 41.40338, 2.17403 + string address = 7; + + // Contextual keywords, e.g. Nursing certification, Health, Mountain View. + repeated string contextual_keywords = 8; + + // Android deep link, e.g. + // android-app://com.example.android/http/example.com/gizmos?1234. + string android_app_link = 9; + + // Similar program IDs. + repeated string similar_program_ids = 10; + + // iOS deep link, e.g. exampleApp://content/page. + string ios_app_link = 11; + + // iOS app store ID. This is used to check if the user has the app installed + // on their device before deep linking. If this field is set, then the + // ios_app_link field must also be present. + int64 ios_app_store_id = 12; + + // Thumbnail image url, e.g. http://www.example.com/thumbnail.png. The + // thumbnail image will not be uploaded as image asset. + string thumbnail_image_url = 13; + + // Image url, e.g. http://www.example.com/image.png. The image will not be + // uploaded as image asset. + string image_url = 14; +} + +// An asset representing a mobile app. +message MobileAppAsset { + // Required. A string that uniquely identifies a mobile application. It should just + // contain the platform native id, like "com.android.ebay" for Android or + // "12345689" for iOS. + string app_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The application store that distributes this specific app. + google.ads.googleads.v9.enums.MobileAppVendorEnum.MobileAppVendor app_store = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The visible text displayed when the link is rendered in an ad. + // The length of this string should be between 1 and 25, inclusive. + string link_text = 3 [(google.api.field_behavior) = REQUIRED]; + + // Start date of when this asset is effective and can begin serving, in + // yyyy-MM-dd format. + string start_date = 4; + + // Last date of when this asset is effective and still serving, in yyyy-MM-dd + // format. + string end_date = 5; +} + +// An asset representing a hotel callout. +message HotelCalloutAsset { + // Required. The text of the hotel callout asset. + // The length of this string should be between 1 and 25, inclusive. + string text = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The language of the hotel callout. + // Represented as BCP 47 language tag. + string language_code = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A Call asset. +message CallAsset { + // Required. Two-letter country code of the phone number. Examples: 'US', 'us'. + string country_code = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The advertiser's raw phone number. Examples: '1234567890', '(123)456-7890' + string phone_number = 2 [(google.api.field_behavior) = REQUIRED]; + + // Indicates whether this CallAsset should use its own call conversion + // setting, follow the account level setting, or disable call conversion. + google.ads.googleads.v9.enums.CallConversionReportingStateEnum.CallConversionReportingState call_conversion_reporting_state = 3; + + // The conversion action to attribute a call conversion to. If not set, the + // default conversion action is used. This field only has effect if + // call_conversion_reporting_state is set to + // USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION. + string call_conversion_action = 4 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionAction" + }]; + + // List of non-overlapping schedules specifying all time intervals for which + // the asset may serve. There can be a maximum of 6 schedules per day, 42 in + // total. + repeated AdScheduleInfo ad_schedule_targets = 5; +} + +// An asset representing a list of price offers. +message PriceAsset { + // Required. The type of the price asset. + google.ads.googleads.v9.enums.PriceExtensionTypeEnum.PriceExtensionType type = 1 [(google.api.field_behavior) = REQUIRED]; + + // The price qualifier of the price asset. + google.ads.googleads.v9.enums.PriceExtensionPriceQualifierEnum.PriceExtensionPriceQualifier price_qualifier = 2; + + // Required. The language of the price asset. + // Represented as BCP 47 language tag. + string language_code = 3 [(google.api.field_behavior) = REQUIRED]; + + // The price offerings of the price asset. + // The size of this collection should be between 3 and 8, inclusive. + repeated PriceOffering price_offerings = 4; +} + +// A single price offering within a PriceAsset. +message PriceOffering { + // Required. The header of the price offering. + // The length of this string should be between 1 and 25, inclusive. + string header = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The description of the price offering. + // The length of this string should be between 1 and 25, inclusive. + string description = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The price value of the price offering. + Money price = 3 [(google.api.field_behavior) = REQUIRED]; + + // The price unit of the price offering. + google.ads.googleads.v9.enums.PriceExtensionPriceUnitEnum.PriceExtensionPriceUnit unit = 4; + + // Required. The final URL after all cross domain redirects. + string final_url = 5 [(google.api.field_behavior) = REQUIRED]; + + // The final mobile URL after all cross domain redirects. + string final_mobile_url = 6; +} + +// A call to action asset. +message CallToActionAsset { + // Call to action. + google.ads.googleads.v9.enums.CallToActionTypeEnum.CallToActionType call_to_action = 1; +} diff --git a/google/ads/googleads/v9/common/bidding.proto b/google/ads/googleads/v9/common/bidding.proto new file mode 100644 index 000000000..eb41ee52d --- /dev/null +++ b/google/ads/googleads/v9/common/bidding.proto @@ -0,0 +1,199 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/target_impression_share_location.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "BiddingProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing bidding schemes. + +// Commission is an automatic bidding strategy in which the advertiser pays a +// certain portion of the conversion value. +message Commission { + // Commission rate defines the portion of the conversion value that the + // advertiser will be billed. A commission rate of x should be passed into + // this field as (x * 1,000,000). For example, 106,000 represents a commission + // rate of 0.106 (10.6%). + optional int64 commission_rate_micros = 2; +} + +// An automated bidding strategy that raises bids for clicks +// that seem more likely to lead to a conversion and lowers +// them for clicks where they seem less likely. +message EnhancedCpc { + +} + +// Manual click-based bidding where user pays per click. +message ManualCpc { + // Whether bids are to be enhanced based on conversion optimizer data. + optional bool enhanced_cpc_enabled = 2; +} + +// Manual impression-based bidding where user pays per thousand impressions. +message ManualCpm { + +} + +// View based bidding where user pays per video view. +message ManualCpv { + +} + +// An automated bidding strategy to help get the most conversions for your +// campaigns while spending your budget. +message MaximizeConversions { + // The target cost-per-action (CPA) option. This is the average amount that + // you would like to spend per conversion action. If set, the bid strategy + // will get as many conversions as possible at or below the target + // cost-per-action. If the target CPA is not set, the bid strategy will + // aim to achieve the lowest possible CPA given the budget. + int64 target_cpa = 1; + + // Maximum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // Mutable for portfolio bidding strategies only. + int64 cpc_bid_ceiling_micros = 2; + + // Minimum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // Mutable for portfolio bidding strategies only. + int64 cpc_bid_floor_micros = 3; +} + +// An automated bidding strategy to help get the most conversion value for your +// campaigns while spending your budget. +message MaximizeConversionValue { + // The target return on ad spend (ROAS) option. If set, the bid strategy will + // maximize revenue while averaging the target return on ad spend. If the + // target ROAS is high, the bid strategy may not be able to spend the full + // budget. If the target ROAS is not set, the bid strategy will aim to + // achieve the highest possible ROAS for the budget. + double target_roas = 2; + + // Maximum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // Mutable for portfolio bidding strategies only. + int64 cpc_bid_ceiling_micros = 3; + + // Minimum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // Mutable for portfolio bidding strategies only. + int64 cpc_bid_floor_micros = 4; +} + +// An automated bid strategy that sets bids to help get as many conversions as +// possible at the target cost-per-acquisition (CPA) you set. +message TargetCpa { + // Average CPA target. + // This target should be greater than or equal to minimum billable unit based + // on the currency for the account. + optional int64 target_cpa_micros = 4; + + // Maximum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. + optional int64 cpc_bid_ceiling_micros = 5; + + // Minimum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. + optional int64 cpc_bid_floor_micros = 6; +} + +// Target CPM (cost per thousand impressions) is an automated bidding strategy +// that sets bids to optimize performance given the target CPM you set. +message TargetCpm { + +} + +// An automated bidding strategy that sets bids so that a certain percentage of +// search ads are shown at the top of the first page (or other targeted +// location). +message TargetImpressionShare { + // The targeted location on the search results page. + google.ads.googleads.v9.enums.TargetImpressionShareLocationEnum.TargetImpressionShareLocation location = 1; + + // The desired fraction of ads to be shown in the targeted location in micros. + // E.g. 1% equals 10,000. + optional int64 location_fraction_micros = 4; + + // The highest CPC bid the automated bidding system is permitted to specify. + // This is a required field entered by the advertiser that sets the ceiling + // and specified in local micros. + optional int64 cpc_bid_ceiling_micros = 5; +} + +// An automated bidding strategy that helps you maximize revenue while +// averaging a specific target return on ad spend (ROAS). +message TargetRoas { + // Required. The desired revenue (based on conversion data) per unit of spend. + // Value must be between 0.01 and 1000.0, inclusive. + optional double target_roas = 4; + + // Maximum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. + optional int64 cpc_bid_ceiling_micros = 5; + + // Minimum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + // This should only be set for portfolio bid strategies. + optional int64 cpc_bid_floor_micros = 6; +} + +// An automated bid strategy that sets your bids to help get as many clicks +// as possible within your budget. +message TargetSpend { + // The spend target under which to maximize clicks. + // A TargetSpend bidder will attempt to spend the smaller of this value + // or the natural throttling spend amount. + // If not specified, the budget is used as the spend target. + // This field is deprecated and should no longer be used. See + // https://ads-developers.googleblog.com/2020/05/reminder-about-sunset-creation-of.html + // for details. + optional int64 target_spend_micros = 3 [deprecated = true]; + + // Maximum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + optional int64 cpc_bid_ceiling_micros = 4; +} + +// A bidding strategy where bids are a fraction of the advertised price for +// some good or service. +message PercentCpc { + // Maximum bid limit that can be set by the bid strategy. This is + // an optional field entered by the advertiser and specified in local micros. + // Note: A zero value is interpreted in the same way as having bid_ceiling + // undefined. + optional int64 cpc_bid_ceiling_micros = 3; + + // Adjusts the bid for each auction upward or downward, depending on the + // likelihood of a conversion. Individual bids may exceed + // cpc_bid_ceiling_micros, but the average bid amount for a campaign should + // not. + optional bool enhanced_cpc_enabled = 4; +} diff --git a/google/ads/googleads/v9/common/click_location.proto b/google/ads/googleads/v9/common/click_location.proto new file mode 100644 index 000000000..e43f034f4 --- /dev/null +++ b/google/ads/googleads/v9/common/click_location.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "ClickLocationProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing a ClickLocation. + +// Location criteria associated with a click. +message ClickLocation { + // The city location criterion associated with the impression. + optional string city = 6; + + // The country location criterion associated with the impression. + optional string country = 7; + + // The metro location criterion associated with the impression. + optional string metro = 8; + + // The most specific location criterion associated with the impression. + optional string most_specific = 9; + + // The region location criterion associated with the impression. + optional string region = 10; +} diff --git a/google/ads/googleads/v9/common/criteria.proto b/google/ads/googleads/v9/common/criteria.proto new file mode 100644 index 000000000..0f57f985b --- /dev/null +++ b/google/ads/googleads/v9/common/criteria.proto @@ -0,0 +1,651 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/age_range_type.proto"; +import "google/ads/googleads/v9/enums/app_payment_model_type.proto"; +import "google/ads/googleads/v9/enums/content_label_type.proto"; +import "google/ads/googleads/v9/enums/day_of_week.proto"; +import "google/ads/googleads/v9/enums/device.proto"; +import "google/ads/googleads/v9/enums/gender_type.proto"; +import "google/ads/googleads/v9/enums/hotel_date_selection_type.proto"; +import "google/ads/googleads/v9/enums/income_range_type.proto"; +import "google/ads/googleads/v9/enums/interaction_type.proto"; +import "google/ads/googleads/v9/enums/keyword_match_type.proto"; +import "google/ads/googleads/v9/enums/listing_group_type.proto"; +import "google/ads/googleads/v9/enums/location_group_radius_units.proto"; +import "google/ads/googleads/v9/enums/minute_of_hour.proto"; +import "google/ads/googleads/v9/enums/parental_status_type.proto"; +import "google/ads/googleads/v9/enums/preferred_content_type.proto"; +import "google/ads/googleads/v9/enums/product_bidding_category_level.proto"; +import "google/ads/googleads/v9/enums/product_channel.proto"; +import "google/ads/googleads/v9/enums/product_channel_exclusivity.proto"; +import "google/ads/googleads/v9/enums/product_condition.proto"; +import "google/ads/googleads/v9/enums/product_custom_attribute_index.proto"; +import "google/ads/googleads/v9/enums/product_type_level.proto"; +import "google/ads/googleads/v9/enums/proximity_radius_units.proto"; +import "google/ads/googleads/v9/enums/webpage_condition_operand.proto"; +import "google/ads/googleads/v9/enums/webpage_condition_operator.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "CriteriaProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing criteria types. + +// A keyword criterion. +message KeywordInfo { + // The text of the keyword (at most 80 characters and 10 words). + optional string text = 3; + + // The match type of the keyword. + google.ads.googleads.v9.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 2; +} + +// A placement criterion. This can be used to modify bids for sites when +// targeting the content network. +message PlacementInfo { + // URL of the placement. + // + // For example, "http://www.domain.com". + optional string url = 2; +} + +// A mobile app category criterion. +message MobileAppCategoryInfo { + // The mobile app category constant resource name. + optional string mobile_app_category_constant = 2; +} + +// A mobile application criterion. +message MobileApplicationInfo { + // A string that uniquely identifies a mobile application to Google Ads API. + // The format of this string is "{platform}-{platform_native_id}", where + // platform is "1" for iOS apps and "2" for Android apps, and where + // platform_native_id is the mobile application identifier native to the + // corresponding platform. + // For iOS, this native identifier is the 9 digit string that appears at the + // end of an App Store URL (e.g., "476943146" for "Flood-It! 2" whose App + // Store link is "http://itunes.apple.com/us/app/flood-it!-2/id476943146"). + // For Android, this native identifier is the application's package name + // (e.g., "com.labpixies.colordrips" for "Color Drips" given Google Play link + // "https://play.google.com/store/apps/details?id=com.labpixies.colordrips"). + // A well formed app id for Google Ads API would thus be "1-476943146" for iOS + // and "2-com.labpixies.colordrips" for Android. + // This field is required and must be set in CREATE operations. + optional string app_id = 4; + + // Name of this mobile application. + optional string name = 5; +} + +// A location criterion. +message LocationInfo { + // The geo target constant resource name. + optional string geo_target_constant = 2; +} + +// A device criterion. +message DeviceInfo { + // Type of the device. + google.ads.googleads.v9.enums.DeviceEnum.Device type = 1; +} + +// A preferred content criterion. +message PreferredContentInfo { + // Type of the preferred content. + google.ads.googleads.v9.enums.PreferredContentTypeEnum.PreferredContentType type = 2; +} + +// A listing group criterion. +message ListingGroupInfo { + // Type of the listing group. + google.ads.googleads.v9.enums.ListingGroupTypeEnum.ListingGroupType type = 1; + + // Dimension value with which this listing group is refining its parent. + // Undefined for the root group. + ListingDimensionInfo case_value = 2; + + // Resource name of ad group criterion which is the parent listing group + // subdivision. Null for the root group. + optional string parent_ad_group_criterion = 4; +} + +// A listing scope criterion. +message ListingScopeInfo { + // Scope of the campaign criterion. + repeated ListingDimensionInfo dimensions = 2; +} + +// Listing dimensions for listing group criterion. +message ListingDimensionInfo { + // Dimension of one of the types below is always present. + oneof dimension { + // Advertiser-specific hotel ID. + HotelIdInfo hotel_id = 2; + + // Class of the hotel as a number of stars 1 to 5. + HotelClassInfo hotel_class = 3; + + // Country or Region the hotel is located in. + HotelCountryRegionInfo hotel_country_region = 4; + + // State the hotel is located in. + HotelStateInfo hotel_state = 5; + + // City the hotel is located in. + HotelCityInfo hotel_city = 6; + + // Bidding category of a product offer. + ProductBiddingCategoryInfo product_bidding_category = 13; + + // Brand of a product offer. + ProductBrandInfo product_brand = 15; + + // Locality of a product offer. + ProductChannelInfo product_channel = 8; + + // Availability of a product offer. + ProductChannelExclusivityInfo product_channel_exclusivity = 9; + + // Condition of a product offer. + ProductConditionInfo product_condition = 10; + + // Custom attribute of a product offer. + ProductCustomAttributeInfo product_custom_attribute = 16; + + // Item id of a product offer. + ProductItemIdInfo product_item_id = 11; + + // Type of a product offer. + ProductTypeInfo product_type = 12; + + // Unknown dimension. Set when no other listing dimension is set. + UnknownListingDimensionInfo unknown_listing_dimension = 14; + } +} + +// Advertiser-specific hotel ID. +message HotelIdInfo { + // String value of the hotel ID. + optional string value = 2; +} + +// Class of the hotel as a number of stars 1 to 5. +message HotelClassInfo { + // Long value of the hotel class. + optional int64 value = 2; +} + +// Country or Region the hotel is located in. +message HotelCountryRegionInfo { + // The Geo Target Constant resource name. + optional string country_region_criterion = 2; +} + +// State the hotel is located in. +message HotelStateInfo { + // The Geo Target Constant resource name. + optional string state_criterion = 2; +} + +// City the hotel is located in. +message HotelCityInfo { + // The Geo Target Constant resource name. + optional string city_criterion = 2; +} + +// Bidding category of a product offer. +message ProductBiddingCategoryInfo { + // ID of the product bidding category. + // + // This ID is equivalent to the google_product_category ID as described in + // this article: https://support.google.com/merchants/answer/6324436 + optional int64 id = 4; + + // Two-letter upper-case country code of the product bidding category. It must + // match the campaign.shopping_setting.sales_country field. + optional string country_code = 5; + + // Level of the product bidding category. + google.ads.googleads.v9.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 3; +} + +// Brand of the product. +message ProductBrandInfo { + // String value of the product brand. + optional string value = 2; +} + +// Locality of a product offer. +message ProductChannelInfo { + // Value of the locality. + google.ads.googleads.v9.enums.ProductChannelEnum.ProductChannel channel = 1; +} + +// Availability of a product offer. +message ProductChannelExclusivityInfo { + // Value of the availability. + google.ads.googleads.v9.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity channel_exclusivity = 1; +} + +// Condition of a product offer. +message ProductConditionInfo { + // Value of the condition. + google.ads.googleads.v9.enums.ProductConditionEnum.ProductCondition condition = 1; +} + +// Custom attribute of a product offer. +message ProductCustomAttributeInfo { + // String value of the product custom attribute. + optional string value = 3; + + // Indicates the index of the custom attribute. + google.ads.googleads.v9.enums.ProductCustomAttributeIndexEnum.ProductCustomAttributeIndex index = 2; +} + +// Item id of a product offer. +message ProductItemIdInfo { + // Value of the id. + optional string value = 2; +} + +// Type of a product offer. +message ProductTypeInfo { + // Value of the type. + optional string value = 3; + + // Level of the type. + google.ads.googleads.v9.enums.ProductTypeLevelEnum.ProductTypeLevel level = 2; +} + +// Unknown listing dimension. +message UnknownListingDimensionInfo { + +} + +// Criterion for hotel date selection (default dates vs. user selected). +message HotelDateSelectionTypeInfo { + // Type of the hotel date selection + google.ads.googleads.v9.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType type = 1; +} + +// Criterion for number of days prior to the stay the booking is being made. +message HotelAdvanceBookingWindowInfo { + // Low end of the number of days prior to the stay. + optional int64 min_days = 3; + + // High end of the number of days prior to the stay. + optional int64 max_days = 4; +} + +// Criterion for length of hotel stay in nights. +message HotelLengthOfStayInfo { + // Low end of the number of nights in the stay. + optional int64 min_nights = 3; + + // High end of the number of nights in the stay. + optional int64 max_nights = 4; +} + +// Criterion for a check-in date range. +message HotelCheckInDateRangeInfo { + // Start date in the YYYY-MM-DD format. + string start_date = 1; + + // End date in the YYYY-MM-DD format. + string end_date = 2; +} + +// Criterion for day of the week the booking is for. +message HotelCheckInDayInfo { + // The day of the week. + google.ads.googleads.v9.enums.DayOfWeekEnum.DayOfWeek day_of_week = 1; +} + +// Criterion for Interaction Type. +message InteractionTypeInfo { + // The interaction type. + google.ads.googleads.v9.enums.InteractionTypeEnum.InteractionType type = 1; +} + +// Represents an AdSchedule criterion. +// +// AdSchedule is specified as the day of the week and a time interval +// within which ads will be shown. +// +// No more than six AdSchedules can be added for the same day. +message AdScheduleInfo { + // Minutes after the start hour at which this schedule starts. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + google.ads.googleads.v9.enums.MinuteOfHourEnum.MinuteOfHour start_minute = 1; + + // Minutes after the end hour at which this schedule ends. The schedule is + // exclusive of the end minute. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + google.ads.googleads.v9.enums.MinuteOfHourEnum.MinuteOfHour end_minute = 2; + + // Starting hour in 24 hour time. + // This field must be between 0 and 23, inclusive. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + optional int32 start_hour = 6; + + // Ending hour in 24 hour time; 24 signifies end of the day. + // This field must be between 0 and 24, inclusive. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + optional int32 end_hour = 7; + + // Day of the week the schedule applies to. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + google.ads.googleads.v9.enums.DayOfWeekEnum.DayOfWeek day_of_week = 5; +} + +// An age range criterion. +message AgeRangeInfo { + // Type of the age range. + google.ads.googleads.v9.enums.AgeRangeTypeEnum.AgeRangeType type = 1; +} + +// A gender criterion. +message GenderInfo { + // Type of the gender. + google.ads.googleads.v9.enums.GenderTypeEnum.GenderType type = 1; +} + +// An income range criterion. +message IncomeRangeInfo { + // Type of the income range. + google.ads.googleads.v9.enums.IncomeRangeTypeEnum.IncomeRangeType type = 1; +} + +// A parental status criterion. +message ParentalStatusInfo { + // Type of the parental status. + google.ads.googleads.v9.enums.ParentalStatusTypeEnum.ParentalStatusType type = 1; +} + +// A YouTube Video criterion. +message YouTubeVideoInfo { + // YouTube video id as it appears on the YouTube watch page. + optional string video_id = 2; +} + +// A YouTube Channel criterion. +message YouTubeChannelInfo { + // The YouTube uploader channel id or the channel code of a YouTube channel. + optional string channel_id = 2; +} + +// A User List criterion. Represents a user list that is defined by the +// advertiser to be targeted. +message UserListInfo { + // The User List resource name. + optional string user_list = 2; +} + +// A Proximity criterion. The geo point and radius determine what geographical +// area is included. The address is a description of the geo point that does +// not affect ad serving. +// +// There are two ways to create a proximity. First, by setting an address +// and radius. The geo point will be automatically computed. Second, by +// setting a geo point and radius. The address is an optional label that won't +// be validated. +message ProximityInfo { + // Latitude and longitude. + GeoPointInfo geo_point = 1; + + // The radius of the proximity. + optional double radius = 5; + + // The unit of measurement of the radius. Default is KILOMETERS. + google.ads.googleads.v9.enums.ProximityRadiusUnitsEnum.ProximityRadiusUnits radius_units = 3; + + // Full address. + AddressInfo address = 4; +} + +// Geo point for proximity criterion. +message GeoPointInfo { + // Micro degrees for the longitude. + optional int32 longitude_in_micro_degrees = 3; + + // Micro degrees for the latitude. + optional int32 latitude_in_micro_degrees = 4; +} + +// Address for proximity criterion. +message AddressInfo { + // Postal code. + optional string postal_code = 8; + + // Province or state code. + optional string province_code = 9; + + // Country code. + optional string country_code = 10; + + // Province or state name. + optional string province_name = 11; + + // Street address line 1. + optional string street_address = 12; + + // Street address line 2. This field is write-only. It is only used for + // calculating the longitude and latitude of an address when geo_point is + // empty. + optional string street_address2 = 13; + + // Name of the city. + optional string city_name = 14; +} + +// A topic criterion. Use topics to target or exclude placements in the +// Google Display Network based on the category into which the placement falls +// (for example, "Pets & Animals/Pets/Dogs"). +message TopicInfo { + // The Topic Constant resource name. + optional string topic_constant = 3; + + // The category to target or exclude. Each subsequent element in the array + // describes a more specific sub-category. For example, + // "Pets & Animals", "Pets", "Dogs" represents the "Pets & Animals/Pets/Dogs" + // category. + repeated string path = 4; +} + +// A language criterion. +message LanguageInfo { + // The language constant resource name. + optional string language_constant = 2; +} + +// An IpBlock criterion used for IP exclusions. We allow: +// - IPv4 and IPv6 addresses +// - individual addresses (192.168.0.1) +// - masks for individual addresses (192.168.0.1/32) +// - masks for Class C networks (192.168.0.1/24) +message IpBlockInfo { + // The IP address of this IP block. + optional string ip_address = 2; +} + +// Content Label for category exclusion. +message ContentLabelInfo { + // Content label type, required for CREATE operations. + google.ads.googleads.v9.enums.ContentLabelTypeEnum.ContentLabelType type = 1; +} + +// Represents a Carrier Criterion. +message CarrierInfo { + // The Carrier constant resource name. + optional string carrier_constant = 2; +} + +// Represents a particular interest-based topic to be targeted. +message UserInterestInfo { + // The UserInterest resource name. + optional string user_interest_category = 2; +} + +// Represents a criterion for targeting webpages of an advertiser's website. +message WebpageInfo { + // The name of the criterion that is defined by this parameter. The name value + // will be used for identifying, sorting and filtering criteria with this type + // of parameters. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + optional string criterion_name = 3; + + // Conditions, or logical expressions, for webpage targeting. The list of + // webpage targeting conditions are and-ed together when evaluated + // for targeting. + // + // This field is required for CREATE operations and is prohibited on UPDATE + // operations. + repeated WebpageConditionInfo conditions = 2; + + // Website criteria coverage percentage. This is the computed percentage + // of website coverage based on the website target, negative website target + // and negative keywords in the ad group and campaign. For instance, when + // coverage returns as 1, it indicates it has 100% coverage. This field is + // read-only. + double coverage_percentage = 4; + + // List of sample urls that match the website target. This field is read-only. + WebpageSampleInfo sample = 5; +} + +// Logical expression for targeting webpages of an advertiser's website. +message WebpageConditionInfo { + // Operand of webpage targeting condition. + google.ads.googleads.v9.enums.WebpageConditionOperandEnum.WebpageConditionOperand operand = 1; + + // Operator of webpage targeting condition. + google.ads.googleads.v9.enums.WebpageConditionOperatorEnum.WebpageConditionOperator operator = 2; + + // Argument of webpage targeting condition. + optional string argument = 4; +} + +// List of sample urls that match the website target +message WebpageSampleInfo { + // Webpage sample urls + repeated string sample_urls = 1; +} + +// Represents an operating system version to be targeted. +message OperatingSystemVersionInfo { + // The operating system version constant resource name. + optional string operating_system_version_constant = 2; +} + +// An app payment model criterion. +message AppPaymentModelInfo { + // Type of the app payment model. + google.ads.googleads.v9.enums.AppPaymentModelTypeEnum.AppPaymentModelType type = 1; +} + +// A mobile device criterion. +message MobileDeviceInfo { + // The mobile device constant resource name. + optional string mobile_device_constant = 2; +} + +// A custom affinity criterion. +// A criterion of this type is only targetable. +message CustomAffinityInfo { + // The CustomInterest resource name. + optional string custom_affinity = 2; +} + +// A custom intent criterion. +// A criterion of this type is only targetable. +message CustomIntentInfo { + // The CustomInterest resource name. + optional string custom_intent = 2; +} + +// A radius around a list of locations specified via a feed. +message LocationGroupInfo { + // Feed specifying locations for targeting. + // This is required and must be set in CREATE operations. + optional string feed = 5; + + // Geo target constant(s) restricting the scope of the geographic area within + // the feed. Currently only one geo target constant is allowed. + repeated string geo_target_constants = 6; + + // Distance in units specifying the radius around targeted locations. + // This is required and must be set in CREATE operations. + optional int64 radius = 7; + + // Unit of the radius. Miles and meters are supported for geo target + // constants. Milli miles and meters are supported for feed item sets. + // This is required and must be set in CREATE operations. + google.ads.googleads.v9.enums.LocationGroupRadiusUnitsEnum.LocationGroupRadiusUnits radius_units = 4; + + // FeedItemSets whose FeedItems are targeted. If multiple IDs are specified, + // then all items that appear in at least one set are targeted. This field + // cannot be used with geo_target_constants. This is optional and can only be + // set in CREATE operations. + repeated string feed_item_sets = 8; +} + +// A custom audience criterion. +message CustomAudienceInfo { + // The CustomAudience resource name. + string custom_audience = 1; +} + +// A combined audience criterion. +message CombinedAudienceInfo { + // The CombinedAudience resource name. + string combined_audience = 1; +} + +// A Smart Campaign keyword theme. +message KeywordThemeInfo { + // Either a predefined keyword theme constant or free-form text may be + // specified. + oneof keyword_theme { + // The resource name of a Smart Campaign keyword theme constant. + // `keywordThemeConstants/{keyword_theme_id}~{sub_keyword_theme_id}` + string keyword_theme_constant = 1; + + // Free-form text to be matched to a Smart Campaign keyword theme constant + // on a best-effort basis. + string free_form_keyword_theme = 2; + } +} diff --git a/google/ads/googleads/v9/common/criterion_category_availability.proto b/google/ads/googleads/v9/common/criterion_category_availability.proto new file mode 100644 index 000000000..811ee4e0d --- /dev/null +++ b/google/ads/googleads/v9/common/criterion_category_availability.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/advertising_channel_sub_type.proto"; +import "google/ads/googleads/v9/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v9/enums/criterion_category_channel_availability_mode.proto"; +import "google/ads/googleads/v9/enums/criterion_category_locale_availability_mode.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "CriterionCategoryAvailabilityProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing criterion category availability information. + +// Information of category availability, per advertising channel. +message CriterionCategoryAvailability { + // Channel types and subtypes that are available to the category. + CriterionCategoryChannelAvailability channel = 1; + + // Locales that are available to the category for the channel. + repeated CriterionCategoryLocaleAvailability locale = 2; +} + +// Information of advertising channel type and subtypes a category is available +// in. +message CriterionCategoryChannelAvailability { + // Format of the channel availability. Can be ALL_CHANNELS (the rest of the + // fields will not be set), CHANNEL_TYPE (only advertising_channel_type type + // will be set, the category is available to all sub types under it) or + // CHANNEL_TYPE_AND_SUBTYPES (advertising_channel_type, + // advertising_channel_sub_type, and include_default_channel_sub_type will all + // be set). + google.ads.googleads.v9.enums.CriterionCategoryChannelAvailabilityModeEnum.CriterionCategoryChannelAvailabilityMode availability_mode = 1; + + // Channel type the category is available to. + google.ads.googleads.v9.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_type = 2; + + // Channel subtypes under the channel type the category is available to. + repeated google.ads.googleads.v9.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType advertising_channel_sub_type = 3; + + // Whether default channel sub type is included. For example, + // advertising_channel_type being DISPLAY and include_default_channel_sub_type + // being false means that the default display campaign where channel sub type + // is not set is not included in this availability configuration. + optional bool include_default_channel_sub_type = 5; +} + +// Information about which locales a category is available in. +message CriterionCategoryLocaleAvailability { + // Format of the locale availability. Can be LAUNCHED_TO_ALL (both country and + // language will be empty), COUNTRY (only country will be set), LANGUAGE (only + // language wil be set), COUNTRY_AND_LANGUAGE (both country and language will + // be set). + google.ads.googleads.v9.enums.CriterionCategoryLocaleAvailabilityModeEnum.CriterionCategoryLocaleAvailabilityMode availability_mode = 1; + + // Code of the country. + optional string country_code = 4; + + // Code of the language. + optional string language_code = 5; +} diff --git a/google/ads/googleads/v9/common/custom_parameter.proto b/google/ads/googleads/v9/common/custom_parameter.proto new file mode 100644 index 000000000..4bc74113f --- /dev/null +++ b/google/ads/googleads/v9/common/custom_parameter.proto @@ -0,0 +1,40 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "CustomParameterProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing CustomParameter and operation + +// A mapping that can be used by custom parameter tags in a +// `tracking_url_template`, `final_urls`, or `mobile_final_urls`. +message CustomParameter { + // The key matching the parameter tag name. + optional string key = 3; + + // The value to be substituted. + optional string value = 4; +} diff --git a/google/ads/googleads/v9/common/customizer_value.proto b/google/ads/googleads/v9/common/customizer_value.proto new file mode 100644 index 000000000..46b96fa8f --- /dev/null +++ b/google/ads/googleads/v9/common/customizer_value.proto @@ -0,0 +1,45 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/customizer_attribute_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "CustomizerValueProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing common customizer value proto messages. + +// A customizer value that is referenced in customizer linkage entities +// like CustomerCustomizer, CampaignCustomizer, etc. +message CustomizerValue { + // Required. The data type for the customizer value. It must match the attribute type. + // The string_value content must match the constraints associated with the + // type. + google.ads.googleads.v9.enums.CustomizerAttributeTypeEnum.CustomizerAttributeType type = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Value to insert in creative text. Customizer values of all types are stored + // as string to make formatting unambiguous. + string string_value = 2 [(google.api.field_behavior) = REQUIRED]; +} diff --git a/google/ads/googleads/v9/common/dates.proto b/google/ads/googleads/v9/common/dates.proto new file mode 100644 index 000000000..4ae678e57 --- /dev/null +++ b/google/ads/googleads/v9/common/dates.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/month_of_year.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "DatesProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing date range message. + +// A date range. +message DateRange { + // The start date, in yyyy-mm-dd format. This date is inclusive. + optional string start_date = 3; + + // The end date, in yyyy-mm-dd format. This date is inclusive. + optional string end_date = 4; +} + +// The year month range inclusive of the start and end months. +// Eg: A year month range to represent Jan 2020 would be: (Jan 2020, Jan 2020). +message YearMonthRange { + // The inclusive start year month. + YearMonth start = 1; + + // The inclusive end year month. + YearMonth end = 2; +} + +// Year month. +message YearMonth { + // The year (e.g. 2020). + int64 year = 1; + + // The month of the year. (e.g. FEBRUARY). + google.ads.googleads.v9.enums.MonthOfYearEnum.MonthOfYear month = 2; +} diff --git a/google/ads/googleads/v9/common/explorer_auto_optimizer_setting.proto b/google/ads/googleads/v9/common/explorer_auto_optimizer_setting.proto new file mode 100644 index 000000000..51a368b43 --- /dev/null +++ b/google/ads/googleads/v9/common/explorer_auto_optimizer_setting.proto @@ -0,0 +1,38 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "ExplorerAutoOptimizerSettingProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing ExplorerAutoOptimizerSetting + +// Settings for the Display Campaign Optimizer, initially named "Explorer". +// Learn more about +// [automatic targeting](https://support.google.com/google-ads/answer/190596). +message ExplorerAutoOptimizerSetting { + // Indicates whether the optimizer is turned on. + optional bool opt_in = 2; +} diff --git a/google/ads/googleads/v9/common/extensions.proto b/google/ads/googleads/v9/common/extensions.proto new file mode 100644 index 000000000..2a91b364c --- /dev/null +++ b/google/ads/googleads/v9/common/extensions.proto @@ -0,0 +1,368 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/common/custom_parameter.proto"; +import "google/ads/googleads/v9/common/feed_common.proto"; +import "google/ads/googleads/v9/enums/app_store.proto"; +import "google/ads/googleads/v9/enums/call_conversion_reporting_state.proto"; +import "google/ads/googleads/v9/enums/price_extension_price_qualifier.proto"; +import "google/ads/googleads/v9/enums/price_extension_price_unit.proto"; +import "google/ads/googleads/v9/enums/price_extension_type.proto"; +import "google/ads/googleads/v9/enums/promotion_extension_discount_modifier.proto"; +import "google/ads/googleads/v9/enums/promotion_extension_occasion.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionsProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing extension types. + +// Represents an App extension. +message AppFeedItem { + // The visible text displayed when the link is rendered in an ad. + // This string must not be empty, and the length of this string should + // be between 1 and 25, inclusive. + optional string link_text = 9; + + // The store-specific ID for the target application. + // This string must not be empty. + optional string app_id = 10; + + // The application store that the target application belongs to. + // This field is required. + google.ads.googleads.v9.enums.AppStoreEnum.AppStore app_store = 3; + + // A list of possible final URLs after all cross domain redirects. + // This list must not be empty. + repeated string final_urls = 11; + + // A list of possible final mobile URLs after all cross domain redirects. + repeated string final_mobile_urls = 12; + + // URL template for constructing a tracking URL. Default value is "{lpurl}". + optional string tracking_url_template = 13; + + // A list of mappings to be used for substituting URL custom parameter tags in + // the tracking_url_template, final_urls, and/or final_mobile_urls. + repeated CustomParameter url_custom_parameters = 7; + + // URL template for appending params to landing page URLs served with parallel + // tracking. + optional string final_url_suffix = 14; +} + +// Represents a Call extension. +message CallFeedItem { + // The advertiser's phone number to append to the ad. + // This string must not be empty. + optional string phone_number = 7; + + // Uppercase two-letter country code of the advertiser's phone number. + // This string must not be empty. + optional string country_code = 8; + + // Indicates whether call tracking is enabled. By default, call tracking is + // not enabled. + optional bool call_tracking_enabled = 9; + + // The conversion action to attribute a call conversion to. If not set a + // default conversion action is used. This field only has effect if + // call_tracking_enabled is set to true. Otherwise this field is ignored. + optional string call_conversion_action = 10; + + // If true, disable call conversion tracking. call_conversion_action should + // not be set if this is true. Optional. + optional bool call_conversion_tracking_disabled = 11; + + // Enum value that indicates whether this call extension uses its own call + // conversion setting (or just have call conversion disabled), or following + // the account level setting. + google.ads.googleads.v9.enums.CallConversionReportingStateEnum.CallConversionReportingState call_conversion_reporting_state = 6; +} + +// Represents a callout extension. +message CalloutFeedItem { + // The callout text. + // The length of this string should be between 1 and 25, inclusive. + optional string callout_text = 2; +} + +// Represents a location extension. +message LocationFeedItem { + // The name of the business. + optional string business_name = 9; + + // Line 1 of the business address. + optional string address_line_1 = 10; + + // Line 2 of the business address. + optional string address_line_2 = 11; + + // City of the business address. + optional string city = 12; + + // Province of the business address. + optional string province = 13; + + // Postal code of the business address. + optional string postal_code = 14; + + // Country code of the business address. + optional string country_code = 15; + + // Phone number of the business. + optional string phone_number = 16; +} + +// Represents an affiliate location extension. +message AffiliateLocationFeedItem { + // The name of the business. + optional string business_name = 11; + + // Line 1 of the business address. + optional string address_line_1 = 12; + + // Line 2 of the business address. + optional string address_line_2 = 13; + + // City of the business address. + optional string city = 14; + + // Province of the business address. + optional string province = 15; + + // Postal code of the business address. + optional string postal_code = 16; + + // Country code of the business address. + optional string country_code = 17; + + // Phone number of the business. + optional string phone_number = 18; + + // Id of the retail chain that is advertised as a seller of your product. + optional int64 chain_id = 19; + + // Name of chain. + optional string chain_name = 20; +} + +// An extension that users can click on to send a text message to the +// advertiser. +message TextMessageFeedItem { + // The business name to prepend to the message text. + // This field is required. + optional string business_name = 6; + + // Uppercase two-letter country code of the advertiser's phone number. + // This field is required. + optional string country_code = 7; + + // The advertiser's phone number the message will be sent to. Required. + optional string phone_number = 8; + + // The text to show in the ad. + // This field is required. + optional string text = 9; + + // The message extension_text populated in the messaging app. + optional string extension_text = 10; +} + +// Represents a Price extension. +message PriceFeedItem { + // Price extension type of this extension. + google.ads.googleads.v9.enums.PriceExtensionTypeEnum.PriceExtensionType type = 1; + + // Price qualifier for all offers of this price extension. + google.ads.googleads.v9.enums.PriceExtensionPriceQualifierEnum.PriceExtensionPriceQualifier price_qualifier = 2; + + // Tracking URL template for all offers of this price extension. + optional string tracking_url_template = 7; + + // The code of the language used for this price extension. + optional string language_code = 8; + + // The price offerings in this price extension. + repeated PriceOffer price_offerings = 5; + + // Tracking URL template for all offers of this price extension. + optional string final_url_suffix = 9; +} + +// Represents one price offer in a price extension. +message PriceOffer { + // Header text of this offer. + optional string header = 7; + + // Description text of this offer. + optional string description = 8; + + // Price value of this offer. + Money price = 3; + + // Price unit for this offer. + google.ads.googleads.v9.enums.PriceExtensionPriceUnitEnum.PriceExtensionPriceUnit unit = 4; + + // A list of possible final URLs after all cross domain redirects. + repeated string final_urls = 9; + + // A list of possible final mobile URLs after all cross domain redirects. + repeated string final_mobile_urls = 10; +} + +// Represents a Promotion extension. +message PromotionFeedItem { + // A freeform description of what the promotion is targeting. + // This field is required. + optional string promotion_target = 16; + + // Enum that modifies the qualification of the discount. + google.ads.googleads.v9.enums.PromotionExtensionDiscountModifierEnum.PromotionExtensionDiscountModifier discount_modifier = 2; + + // Start date of when the promotion is eligible to be redeemed. + optional string promotion_start_date = 19; + + // Last date when the promotion is eligible to be redeemed. + optional string promotion_end_date = 20; + + // The occasion the promotion was intended for. + // If an occasion is set, the redemption window will need to fall within + // the date range associated with the occasion. + google.ads.googleads.v9.enums.PromotionExtensionOccasionEnum.PromotionExtensionOccasion occasion = 9; + + // A list of possible final URLs after all cross domain redirects. + // This field is required. + repeated string final_urls = 21; + + // A list of possible final mobile URLs after all cross domain redirects. + repeated string final_mobile_urls = 22; + + // URL template for constructing a tracking URL. + optional string tracking_url_template = 23; + + // A list of mappings to be used for substituting URL custom parameter tags in + // the tracking_url_template, final_urls, and/or final_mobile_urls. + repeated CustomParameter url_custom_parameters = 13; + + // URL template for appending params to landing page URLs served with parallel + // tracking. + optional string final_url_suffix = 24; + + // The language of the promotion. + // Represented as BCP 47 language tag. + optional string language_code = 25; + + // Discount type, can be percentage off or amount off. + oneof discount_type { + // Percentage off discount in the promotion in micros. + // One million is equivalent to one percent. + // Either this or money_off_amount is required. + int64 percent_off = 17; + + // Money amount off for discount in the promotion. + // Either this or percent_off is required. + Money money_amount_off = 4; + } + + // Promotion trigger. Can be by promotion code or promo by eligible order + // amount. + oneof promotion_trigger { + // A code the user should use in order to be eligible for the promotion. + string promotion_code = 18; + + // The amount the total order needs to be for the user to be eligible for + // the promotion. + Money orders_over_amount = 6; + } +} + +// Represents a structured snippet extension. +message StructuredSnippetFeedItem { + // The header of the snippet. + // This string must not be empty. + optional string header = 3; + + // The values in the snippet. + // The maximum size of this collection is 10. + repeated string values = 4; +} + +// Represents a sitelink extension. +message SitelinkFeedItem { + // URL display text for the sitelink. + // The length of this string should be between 1 and 25, inclusive. + optional string link_text = 9; + + // First line of the description for the sitelink. + // If this value is set, line2 must also be set. + // The length of this string should be between 0 and 35, inclusive. + optional string line1 = 10; + + // Second line of the description for the sitelink. + // If this value is set, line1 must also be set. + // The length of this string should be between 0 and 35, inclusive. + optional string line2 = 11; + + // A list of possible final URLs after all cross domain redirects. + repeated string final_urls = 12; + + // A list of possible final mobile URLs after all cross domain redirects. + repeated string final_mobile_urls = 13; + + // URL template for constructing a tracking URL. + optional string tracking_url_template = 14; + + // A list of mappings to be used for substituting URL custom parameter tags in + // the tracking_url_template, final_urls, and/or final_mobile_urls. + repeated CustomParameter url_custom_parameters = 7; + + // Final URL suffix to be appended to landing page URLs served with + // parallel tracking. + optional string final_url_suffix = 15; +} + +// Represents a hotel callout extension. +message HotelCalloutFeedItem { + // The callout text. + // The length of this string should be between 1 and 25, inclusive. + optional string text = 3; + + // The language of the hotel callout text. + // IETF BCP 47 compliant language code. + optional string language_code = 4; +} + +// Represents an advertiser provided image extension. +message ImageFeedItem { + // Required. Resource name of the image asset. + string image_asset = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; +} diff --git a/google/ads/googleads/v9/common/feed_common.proto b/google/ads/googleads/v9/common/feed_common.proto new file mode 100644 index 000000000..60aef6220 --- /dev/null +++ b/google/ads/googleads/v9/common/feed_common.proto @@ -0,0 +1,39 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "FeedCommonProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing common feed proto messages. + +// Represents a price in a particular currency. +message Money { + // Three-character ISO 4217 currency code. + optional string currency_code = 3; + + // Amount in micros. One million is equivalent to one unit. + optional int64 amount_micros = 4; +} diff --git a/google/ads/googleads/v9/common/feed_item_set_filter_type_infos.proto b/google/ads/googleads/v9/common/feed_item_set_filter_type_infos.proto new file mode 100644 index 000000000..9331c983d --- /dev/null +++ b/google/ads/googleads/v9/common/feed_item_set_filter_type_infos.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/feed_item_set_string_filter_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetFilterTypeInfosProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Represents a filter on locations in a feed item set. +// Only applicable if the parent Feed of the FeedItemSet is a LOCATION feed. +message DynamicLocationSetFilter { + // If multiple labels are set, then only feeditems marked with all the labels + // will be added to the FeedItemSet. + repeated string labels = 1; + + // Business name filter. + BusinessNameFilter business_name_filter = 2; +} + +// Represents a business name filter on locations in a FeedItemSet. +message BusinessNameFilter { + // Business name string to use for filtering. + string business_name = 1; + + // The type of string matching to use when filtering with business_name. + google.ads.googleads.v9.enums.FeedItemSetStringFilterTypeEnum.FeedItemSetStringFilterType filter_type = 2; +} + +// Represents a filter on affiliate locations in a FeedItemSet. +// Only applicable if the parent Feed of the FeedItemSet is an +// AFFILIATE_LOCATION feed. +message DynamicAffiliateLocationSetFilter { + // Used to filter affiliate locations by chain ids. Only affiliate locations + // that belong to the specified chain(s) will be added to the FeedItemSet. + repeated int64 chain_ids = 1; +} diff --git a/google/ads/googleads/v9/common/final_app_url.proto b/google/ads/googleads/v9/common/final_app_url.proto new file mode 100644 index 000000000..674161c9c --- /dev/null +++ b/google/ads/googleads/v9/common/final_app_url.proto @@ -0,0 +1,46 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/app_url_operating_system_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "FinalAppUrlProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file FinalAppUrl type. + +// A URL for deep linking into an app for the given operating system. +message FinalAppUrl { + // The operating system targeted by this URL. Required. + google.ads.googleads.v9.enums.AppUrlOperatingSystemTypeEnum.AppUrlOperatingSystemType os_type = 1; + + // The app deep link URL. Deep links specify a location in an app that + // corresponds to the content you'd like to show, and should be of the form + // {scheme}://{host_path} + // The scheme identifies which app to open. For your app, you can use a custom + // scheme that starts with the app's name. The host and path specify the + // unique location in the app where your content exists. + // Example: "exampleapp://productid_1234". Required. + optional string url = 3; +} diff --git a/google/ads/googleads/v9/common/frequency_cap.proto b/google/ads/googleads/v9/common/frequency_cap.proto new file mode 100644 index 000000000..39b47bbec --- /dev/null +++ b/google/ads/googleads/v9/common/frequency_cap.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/frequency_cap_event_type.proto"; +import "google/ads/googleads/v9/enums/frequency_cap_level.proto"; +import "google/ads/googleads/v9/enums/frequency_cap_time_unit.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "FrequencyCapProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing frequency caps. + +// A rule specifying the maximum number of times an ad (or some set of ads) can +// be shown to a user over a particular time period. +message FrequencyCapEntry { + // The key of a particular frequency cap. There can be no more + // than one frequency cap with the same key. + FrequencyCapKey key = 1; + + // Maximum number of events allowed during the time range by this cap. + optional int32 cap = 3; +} + +// A group of fields used as keys for a frequency cap. +// There can be no more than one frequency cap with the same key. +message FrequencyCapKey { + // The level on which the cap is to be applied (e.g. ad group ad, ad group). + // The cap is applied to all the entities of this level. + google.ads.googleads.v9.enums.FrequencyCapLevelEnum.FrequencyCapLevel level = 1; + + // The type of event that the cap applies to (e.g. impression). + google.ads.googleads.v9.enums.FrequencyCapEventTypeEnum.FrequencyCapEventType event_type = 3; + + // Unit of time the cap is defined at (e.g. day, week). + google.ads.googleads.v9.enums.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit time_unit = 2; + + // Number of time units the cap lasts. + optional int32 time_length = 5; +} diff --git a/google/ads/googleads/v9/common/keyword_plan_common.proto b/google/ads/googleads/v9/common/keyword_plan_common.proto new file mode 100644 index 000000000..3a28644f9 --- /dev/null +++ b/google/ads/googleads/v9/common/keyword_plan_common.proto @@ -0,0 +1,139 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/common/dates.proto"; +import "google/ads/googleads/v9/enums/device.proto"; +import "google/ads/googleads/v9/enums/keyword_plan_aggregate_metric_type.proto"; +import "google/ads/googleads/v9/enums/keyword_plan_competition_level.proto"; +import "google/ads/googleads/v9/enums/keyword_plan_concept_group_type.proto"; +import "google/ads/googleads/v9/enums/month_of_year.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCommonProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing Keyword Planner messages. + +// Historical metrics specific to the targeting options selected. +// Targeting options include geographies, network, etc. +// Refer to https://support.google.com/google-ads/answer/3022575 for more +// details. +message KeywordPlanHistoricalMetrics { + // Approximate number of monthly searches on this query averaged + // for the past 12 months. + optional int64 avg_monthly_searches = 7; + + // Approximate number of searches on this query for the past twelve months. + repeated MonthlySearchVolume monthly_search_volumes = 6; + + // The competition level for the query. + google.ads.googleads.v9.enums.KeywordPlanCompetitionLevelEnum.KeywordPlanCompetitionLevel competition = 2; + + // The competition index for the query in the range [0, 100]. + // Shows how competitive ad placement is for a keyword. + // The level of competition from 0-100 is determined by the number of ad slots + // filled divided by the total number of ad slots available. If not enough + // data is available, null is returned. + optional int64 competition_index = 8; + + // Top of page bid low range (20th percentile) in micros for the keyword. + optional int64 low_top_of_page_bid_micros = 9; + + // Top of page bid high range (80th percentile) in micros for the keyword. + optional int64 high_top_of_page_bid_micros = 10; +} + +// Historical metrics options. +message HistoricalMetricsOptions { + // The year month range for historical metrics. If not specified the searches + // will be returned for past 12 months. + // Searches data is available for the past 4 years. If the search volume is + // not available for the entire year_month_range provided, the subset of the + // year month range for which search volume is available will be returned. + optional YearMonthRange year_month_range = 1; +} + +// Monthly search volume. +message MonthlySearchVolume { + // The year of the search volume (e.g. 2020). + optional int64 year = 4; + + // The month of the search volume. + google.ads.googleads.v9.enums.MonthOfYearEnum.MonthOfYear month = 2; + + // Approximate number of searches for the month. + // A null value indicates the search volume is unavailable for + // that month. + optional int64 monthly_searches = 5; +} + +// The aggregate metrics specification of the request. +message KeywordPlanAggregateMetrics { + // The list of aggregate metrics to fetch data. + repeated google.ads.googleads.v9.enums.KeywordPlanAggregateMetricTypeEnum.KeywordPlanAggregateMetricType aggregate_metric_types = 1; +} + +// The aggregated historical metrics for keyword plan keywords. +message KeywordPlanAggregateMetricResults { + // The aggregate searches for all the keywords segmented by device + // for the specified time. + // Supports the following device types: MOBILE, TABLET, DESKTOP. + // + // This is only set when KeywordPlanAggregateMetricTypeEnum.DEVICE is set + // in the KeywordPlanAggregateMetrics field in the request. + repeated KeywordPlanDeviceSearches device_searches = 1; +} + +// The total searches for the device type during the specified time period. +message KeywordPlanDeviceSearches { + // The device type. + google.ads.googleads.v9.enums.DeviceEnum.Device device = 1; + + // The total searches for the device. + optional int64 search_count = 2; +} + +// The Annotations for the Keyword plan keywords. +message KeywordAnnotations { + // The list of concepts for the keyword. + repeated KeywordConcept concepts = 1; +} + +// The concept for the keyword. +message KeywordConcept { + // The concept name for the keyword in the concept_group. + string name = 1; + + // The concept group of the concept details. + ConceptGroup concept_group = 2; +} + +// The concept group for the keyword concept. +message ConceptGroup { + // The concept group name. + string name = 1; + + // The concept group type. + google.ads.googleads.v9.enums.KeywordPlanConceptGroupTypeEnum.KeywordPlanConceptGroupType type = 2; +} diff --git a/google/ads/googleads/v9/common/matching_function.proto b/google/ads/googleads/v9/common/matching_function.proto new file mode 100644 index 000000000..1300f30e7 --- /dev/null +++ b/google/ads/googleads/v9/common/matching_function.proto @@ -0,0 +1,126 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/matching_function_context_type.proto"; +import "google/ads/googleads/v9/enums/matching_function_operator.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "MatchingFunctionProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing a matching function. + +// Matching function associated with a +// CustomerFeed, CampaignFeed, or AdGroupFeed. The matching function is used +// to filter the set of feed items selected. +message MatchingFunction { + // String representation of the Function. + // + // Examples: + // + // 1. IDENTITY(true) or IDENTITY(false). All or no feed items served. + // 2. EQUALS(CONTEXT.DEVICE,"Mobile") + // 3. IN(FEED_ITEM_ID,{1000001,1000002,1000003}) + // 4. CONTAINS_ANY(FeedAttribute[12345678,0],{"Mars cruise","Venus cruise"}) + // 5. AND(IN(FEED_ITEM_ID,{10001,10002}),EQUALS(CONTEXT.DEVICE,"Mobile")) + // + // For more details, visit + // https://developers.google.com/adwords/api/docs/guides/feed-matching-functions + // + // Note that because multiple strings may represent the same underlying + // function (whitespace and single versus double quotation marks, for + // example), the value returned may not be identical to the string sent in a + // mutate request. + optional string function_string = 5; + + // Operator for a function. + google.ads.googleads.v9.enums.MatchingFunctionOperatorEnum.MatchingFunctionOperator operator = 4; + + // The operands on the left hand side of the equation. This is also the + // operand to be used for single operand expressions such as NOT. + repeated Operand left_operands = 2; + + // The operands on the right hand side of the equation. + repeated Operand right_operands = 3; +} + +// An operand in a matching function. +message Operand { + // A constant operand in a matching function. + message ConstantOperand { + // Constant operand values. Required. + oneof constant_operand_value { + // String value of the operand if it is a string type. + string string_value = 5; + + // Int64 value of the operand if it is a int64 type. + int64 long_value = 6; + + // Boolean value of the operand if it is a boolean type. + bool boolean_value = 7; + + // Double value of the operand if it is a double type. + double double_value = 8; + } + } + + // A feed attribute operand in a matching function. + // Used to represent a feed attribute in feed. + message FeedAttributeOperand { + // The associated feed. Required. + optional int64 feed_id = 3; + + // Id of the referenced feed attribute. Required. + optional int64 feed_attribute_id = 4; + } + + // A function operand in a matching function. + // Used to represent nested functions. + message FunctionOperand { + // The matching function held in this operand. + MatchingFunction matching_function = 1; + } + + // An operand in a function referring to a value in the request context. + message RequestContextOperand { + // Type of value to be referred in the request context. + google.ads.googleads.v9.enums.MatchingFunctionContextTypeEnum.MatchingFunctionContextType context_type = 1; + } + + // Different operands that can be used in a matching function. Required. + oneof function_argument_operand { + // A constant operand in a matching function. + ConstantOperand constant_operand = 1; + + // This operand specifies a feed attribute in feed. + FeedAttributeOperand feed_attribute_operand = 2; + + // A function operand in a matching function. + // Used to represent nested functions. + FunctionOperand function_operand = 3; + + // An operand in a function referring to a value in the request context. + RequestContextOperand request_context_operand = 4; + } +} diff --git a/google/ads/googleads/v9/common/metrics.proto b/google/ads/googleads/v9/common/metrics.proto new file mode 100644 index 000000000..377bbcac2 --- /dev/null +++ b/google/ads/googleads/v9/common/metrics.proto @@ -0,0 +1,619 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/interaction_event_type.proto"; +import "google/ads/googleads/v9/enums/quality_score_bucket.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "MetricsProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing metrics. + +// Metrics data. +message Metrics { + // The percent of your ad impressions that are shown as the very first ad + // above the organic search results. + optional double absolute_top_impression_percentage = 183; + + // Average cost of viewable impressions (`active_view_impressions`). + optional double active_view_cpm = 184; + + // Active view measurable clicks divided by active view viewable impressions. + // This metric is reported only for display network. + optional double active_view_ctr = 185; + + // A measurement of how often your ad has become viewable on a Display + // Network site. + optional int64 active_view_impressions = 186; + + // The ratio of impressions that could be measured by Active View over the + // number of served impressions. + optional double active_view_measurability = 187; + + // The cost of the impressions you received that were measurable by Active + // View. + optional int64 active_view_measurable_cost_micros = 188; + + // The number of times your ads are appearing on placements in positions + // where they can be seen. + optional int64 active_view_measurable_impressions = 189; + + // The percentage of time when your ad appeared on an Active View enabled site + // (measurable impressions) and was viewable (viewable impressions). + optional double active_view_viewability = 190; + + // All conversions from interactions (as oppose to view through conversions) + // divided by the number of ad interactions. + optional double all_conversions_from_interactions_rate = 191; + + // The value of all conversions. + optional double all_conversions_value = 192; + + // The value of all conversions. When this column is selected with date, the + // values in date column means the conversion date. Details for the + // by_conversion_date columns are available at + // https://support.google.com/google-ads/answer/9549009. + double all_conversions_value_by_conversion_date = 240; + + // The total number of conversions. This includes all conversions regardless + // of the value of include_in_conversions_metric. + optional double all_conversions = 193; + + // The total number of conversions. This includes all conversions regardless + // of the value of include_in_conversions_metric. When this column is selected + // with date, the values in date column means the conversion date. Details for + // the by_conversion_date columns are available at + // https://support.google.com/google-ads/answer/9549009. + double all_conversions_by_conversion_date = 241; + + // The value of all conversions divided by the total cost of ad interactions + // (such as clicks for text ads or views for video ads). + optional double all_conversions_value_per_cost = 194; + + // The number of times people clicked the "Call" button to call a store during + // or after clicking an ad. This number doesn't include whether or not calls + // were connected, or the duration of any calls. + // This metric applies to feed items only. + optional double all_conversions_from_click_to_call = 195; + + // The number of times people clicked a "Get directions" button to navigate to + // a store after clicking an ad. + // This metric applies to feed items only. + optional double all_conversions_from_directions = 196; + + // The value of all conversions from interactions divided by the total number + // of interactions. + optional double all_conversions_from_interactions_value_per_interaction = 197; + + // The number of times people clicked a link to view a store's menu after + // clicking an ad. + // This metric applies to feed items only. + optional double all_conversions_from_menu = 198; + + // The number of times people placed an order at a store after clicking an ad. + // This metric applies to feed items only. + optional double all_conversions_from_order = 199; + + // The number of other conversions (for example, posting a review or saving a + // location for a store) that occurred after people clicked an ad. + // This metric applies to feed items only. + optional double all_conversions_from_other_engagement = 200; + + // Estimated number of times people visited a store after clicking an ad. + // This metric applies to feed items only. + optional double all_conversions_from_store_visit = 201; + + // The number of times that people were taken to a store's URL after clicking + // an ad. + // This metric applies to feed items only. + optional double all_conversions_from_store_website = 202; + + // The average amount you pay per interaction. This amount is the total cost + // of your ads divided by the total number of interactions. + optional double average_cost = 203; + + // The total cost of all clicks divided by the total number of clicks + // received. + optional double average_cpc = 204; + + // The average amount that you've been charged for an ad engagement. This + // amount is the total cost of all ad engagements divided by the total number + // of ad engagements. + optional double average_cpe = 205; + + // Average cost-per-thousand impressions (CPM). + optional double average_cpm = 206; + + // The average amount you pay each time someone views your ad. + // The average CPV is defined by the total cost of all ad views divided by + // the number of views. + optional double average_cpv = 207; + + // Average number of pages viewed per session. + optional double average_page_views = 208; + + // Total duration of all sessions (in seconds) / number of sessions. Imported + // from Google Analytics. + optional double average_time_on_site = 209; + + // An indication of how other advertisers are bidding on similar products. + optional double benchmark_average_max_cpc = 210; + + // An indication on how other advertisers' Shopping ads for similar products + // are performing based on how often people who see their ad click on it. + optional double benchmark_ctr = 211; + + // Percentage of clicks where the user only visited a single page on your + // site. Imported from Google Analytics. + optional double bounce_rate = 212; + + // The number of clicks. + optional int64 clicks = 131; + + // The number of times your ad or your site's listing in the unpaid + // results was clicked. See the help page at + // https://support.google.com/google-ads/answer/3097241 for details. + optional int64 combined_clicks = 156; + + // The number of times your ad or your site's listing in the unpaid + // results was clicked (combined_clicks) divided by combined_queries. See the + // help page at https://support.google.com/google-ads/answer/3097241 for + // details. + optional double combined_clicks_per_query = 157; + + // The number of searches that returned pages from your site in the unpaid + // results or showed one of your text ads. See the help page at + // https://support.google.com/google-ads/answer/3097241 for details. + optional int64 combined_queries = 158; + + // The estimated percent of times that your ad was eligible to show + // on the Display Network but didn't because your budget was too low. + // Note: Content budget lost impression share is reported in the range of 0 + // to 0.9. Any value above 0.9 is reported as 0.9001. + optional double content_budget_lost_impression_share = 159; + + // The impressions you've received on the Display Network divided + // by the estimated number of impressions you were eligible to receive. + // Note: Content impression share is reported in the range of 0.1 to 1. Any + // value below 0.1 is reported as 0.0999. + optional double content_impression_share = 160; + + // The last date/time a conversion tag for this conversion action successfully + // fired and was seen by Google Ads. This firing event may not have been the + // result of an attributable conversion (e.g. because the tag was fired from a + // browser that did not previously click an ad from an appropriate + // advertiser). The date/time is in the customer's time zone. + optional string conversion_last_received_request_date_time = 161; + + // The date of the most recent conversion for this conversion action. The date + // is in the customer's time zone. + optional string conversion_last_conversion_date = 162; + + // The estimated percentage of impressions on the Display Network + // that your ads didn't receive due to poor Ad Rank. + // Note: Content rank lost impression share is reported in the range of 0 + // to 0.9. Any value above 0.9 is reported as 0.9001. + optional double content_rank_lost_impression_share = 163; + + // Conversions from interactions divided by the number of ad interactions + // (such as clicks for text ads or views for video ads). This only includes + // conversion actions which include_in_conversions_metric attribute is set to + // true. If you use conversion-based bidding, your bid strategies will + // optimize for these conversions. + optional double conversions_from_interactions_rate = 164; + + // The value of conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double conversions_value = 165; + + // The value of conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. When this column is selected with date, the values in date + // column means the conversion date. Details for the by_conversion_date + // columns are available at + // https://support.google.com/google-ads/answer/9549009. + double conversions_value_by_conversion_date = 242; + + // The value of conversions divided by the cost of ad interactions. This only + // includes conversion actions which include_in_conversions_metric attribute + // is set to true. If you use conversion-based bidding, your bid strategies + // will optimize for these conversions. + optional double conversions_value_per_cost = 166; + + // The value of conversions from interactions divided by the number of ad + // interactions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double conversions_from_interactions_value_per_interaction = 167; + + // The number of conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double conversions = 168; + + // The number of conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. When this column is selected with date, the values in date + // column means the conversion date. Details for the by_conversion_date + // columns are available at + // https://support.google.com/google-ads/answer/9549009. + double conversions_by_conversion_date = 243; + + // The sum of your cost-per-click (CPC) and cost-per-thousand impressions + // (CPM) costs during this period. + optional int64 cost_micros = 169; + + // The cost of ad interactions divided by all conversions. + optional double cost_per_all_conversions = 170; + + // The cost of ad interactions divided by conversions. This only includes + // conversion actions which include_in_conversions_metric attribute is set to + // true. If you use conversion-based bidding, your bid strategies will + // optimize for these conversions. + optional double cost_per_conversion = 171; + + // The cost of ad interactions divided by current model attributed + // conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double cost_per_current_model_attributed_conversion = 172; + + // Conversions from when a customer clicks on a Google Ads ad on one device, + // then converts on a different device or browser. + // Cross-device conversions are already included in all_conversions. + optional double cross_device_conversions = 173; + + // The number of clicks your ad receives (Clicks) divided by the number + // of times your ad is shown (Impressions). + optional double ctr = 174; + + // Shows how your historic conversions data would look under the attribution + // model you've currently selected. This only includes conversion actions + // which include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double current_model_attributed_conversions = 175; + + // Current model attributed conversions from interactions divided by the + // number of ad interactions (such as clicks for text ads or views for video + // ads). This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double current_model_attributed_conversions_from_interactions_rate = 176; + + // The value of current model attributed conversions from interactions divided + // by the number of ad interactions. This only includes conversion actions + // which include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double current_model_attributed_conversions_from_interactions_value_per_interaction = 177; + + // The value of current model attributed conversions. This only includes + // conversion actions which include_in_conversions_metric attribute is set to + // true. If you use conversion-based bidding, your bid strategies will + // optimize for these conversions. + optional double current_model_attributed_conversions_value = 178; + + // The value of current model attributed conversions divided by the cost of ad + // interactions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double current_model_attributed_conversions_value_per_cost = 179; + + // How often people engage with your ad after it's shown to them. This is the + // number of ad expansions divided by the number of times your ad is shown. + optional double engagement_rate = 180; + + // The number of engagements. + // An engagement occurs when a viewer expands your Lightbox ad. Also, in the + // future, other ad types may support engagement metrics. + optional int64 engagements = 181; + + // Average lead value based on clicks. + optional double hotel_average_lead_value_micros = 213; + + // The average price difference between the price offered by reporting hotel + // advertiser and the cheapest price offered by the competing advertiser. + optional double hotel_price_difference_percentage = 214; + + // The number of impressions that hotel partners could have had given their + // feed performance. + optional int64 hotel_eligible_impressions = 215; + + // The creative historical quality score. + google.ads.googleads.v9.enums.QualityScoreBucketEnum.QualityScoreBucket historical_creative_quality_score = 80; + + // The quality of historical landing page experience. + google.ads.googleads.v9.enums.QualityScoreBucketEnum.QualityScoreBucket historical_landing_page_quality_score = 81; + + // The historical quality score. + optional int64 historical_quality_score = 216; + + // The historical search predicted click through rate (CTR). + google.ads.googleads.v9.enums.QualityScoreBucketEnum.QualityScoreBucket historical_search_predicted_ctr = 83; + + // The number of times the ad was forwarded to someone else as a message. + optional int64 gmail_forwards = 217; + + // The number of times someone has saved your Gmail ad to their inbox as a + // message. + optional int64 gmail_saves = 218; + + // The number of clicks to the landing page on the expanded state of Gmail + // ads. + optional int64 gmail_secondary_clicks = 219; + + // The number of times a store's location-based ad was shown. + // This metric applies to feed items only. + optional int64 impressions_from_store_reach = 220; + + // Count of how often your ad has appeared on a search results page or + // website on the Google Network. + optional int64 impressions = 221; + + // How often people interact with your ad after it is shown to them. + // This is the number of interactions divided by the number of times your ad + // is shown. + optional double interaction_rate = 222; + + // The number of interactions. + // An interaction is the main user action associated with an ad format-clicks + // for text and shopping ads, views for video ads, and so on. + optional int64 interactions = 223; + + // The types of payable and free interactions. + repeated google.ads.googleads.v9.enums.InteractionEventTypeEnum.InteractionEventType interaction_event_types = 100; + + // The percentage of clicks filtered out of your total number of clicks + // (filtered + non-filtered clicks) during the reporting period. + optional double invalid_click_rate = 224; + + // Number of clicks Google considers illegitimate and doesn't charge you for. + optional int64 invalid_clicks = 225; + + // Number of message chats initiated for Click To Message impressions that + // were message tracking eligible. + optional int64 message_chats = 226; + + // Number of Click To Message impressions that were message tracking eligible. + optional int64 message_impressions = 227; + + // Number of message chats initiated (message_chats) divided by the number + // of message impressions (message_impressions). + // Rate at which a user initiates a message chat from an ad impression with + // a messaging option and message tracking enabled. + // Note that this rate can be more than 1.0 for a given message impression. + optional double message_chat_rate = 228; + + // The percentage of mobile clicks that go to a mobile-friendly page. + optional double mobile_friendly_clicks_percentage = 229; + + // Total optimization score uplift of all recommendations. + optional double optimization_score_uplift = 247; + + // URL for the optimization score page in the Google Ads web interface. + // This metric can be selected from `customer` or `campaign`, and can be + // segmented by `segments.recommendation_type`. For example, `SELECT + // metrics.optimization_score_url, segments.recommendation_type FROM + // customer` will return a URL for each unique (customer, recommendation_type) + // combination. + optional string optimization_score_url = 248; + + // The number of times someone clicked your site's listing in the unpaid + // results for a particular query. See the help page at + // https://support.google.com/google-ads/answer/3097241 for details. + optional int64 organic_clicks = 230; + + // The number of times someone clicked your site's listing in the unpaid + // results (organic_clicks) divided by the total number of searches that + // returned pages from your site (organic_queries). See the help page at + // https://support.google.com/google-ads/answer/3097241 for details. + optional double organic_clicks_per_query = 231; + + // The number of listings for your site in the unpaid search results. See the + // help page at https://support.google.com/google-ads/answer/3097241 for + // details. + optional int64 organic_impressions = 232; + + // The number of times a page from your site was listed in the unpaid search + // results (organic_impressions) divided by the number of searches returning + // your site's listing in the unpaid results (organic_queries). See the help + // page at https://support.google.com/google-ads/answer/3097241 for details. + optional double organic_impressions_per_query = 233; + + // The total number of searches that returned your site's listing in the + // unpaid results. See the help page at + // https://support.google.com/google-ads/answer/3097241 for details. + optional int64 organic_queries = 234; + + // Percentage of first-time sessions (from people who had never visited your + // site before). Imported from Google Analytics. + optional double percent_new_visitors = 235; + + // Number of offline phone calls. + optional int64 phone_calls = 236; + + // Number of offline phone impressions. + optional int64 phone_impressions = 237; + + // Number of phone calls received (phone_calls) divided by the number of + // times your phone number is shown (phone_impressions). + optional double phone_through_rate = 238; + + // Your clickthrough rate (Ctr) divided by the average clickthrough rate of + // all advertisers on the websites that show your ads. Measures how your ads + // perform on Display Network sites compared to other ads on the same sites. + optional double relative_ctr = 239; + + // The percentage of the customer's Shopping or Search ad impressions that are + // shown in the most prominent Shopping position. See + // https://support.google.com/google-ads/answer/7501826 + // for details. Any value below 0.1 is reported as 0.0999. + optional double search_absolute_top_impression_share = 136; + + // The number estimating how often your ad wasn't the very first ad above the + // organic search results due to a low budget. Note: Search + // budget lost absolute top impression share is reported in the range of 0 to + // 0.9. Any value above 0.9 is reported as 0.9001. + optional double search_budget_lost_absolute_top_impression_share = 137; + + // The estimated percent of times that your ad was eligible to show on the + // Search Network but didn't because your budget was too low. Note: Search + // budget lost impression share is reported in the range of 0 to 0.9. Any + // value above 0.9 is reported as 0.9001. + optional double search_budget_lost_impression_share = 138; + + // The number estimating how often your ad didn't show anywhere above the + // organic search results due to a low budget. Note: Search + // budget lost top impression share is reported in the range of 0 to 0.9. Any + // value above 0.9 is reported as 0.9001. + optional double search_budget_lost_top_impression_share = 139; + + // The number of clicks you've received on the Search Network + // divided by the estimated number of clicks you were eligible to receive. + // Note: Search click share is reported in the range of 0.1 to 1. Any value + // below 0.1 is reported as 0.0999. + optional double search_click_share = 140; + + // The impressions you've received divided by the estimated number of + // impressions you were eligible to receive on the Search Network for search + // terms that matched your keywords exactly (or were close variants of your + // keyword), regardless of your keyword match types. Note: Search exact match + // impression share is reported in the range of 0.1 to 1. Any value below 0.1 + // is reported as 0.0999. + optional double search_exact_match_impression_share = 141; + + // The impressions you've received on the Search Network divided + // by the estimated number of impressions you were eligible to receive. + // Note: Search impression share is reported in the range of 0.1 to 1. Any + // value below 0.1 is reported as 0.0999. + optional double search_impression_share = 142; + + // The number estimating how often your ad wasn't the very first ad above the + // organic search results due to poor Ad Rank. + // Note: Search rank lost absolute top impression share is reported in the + // range of 0 to 0.9. Any value above 0.9 is reported as 0.9001. + optional double search_rank_lost_absolute_top_impression_share = 143; + + // The estimated percentage of impressions on the Search Network + // that your ads didn't receive due to poor Ad Rank. + // Note: Search rank lost impression share is reported in the range of 0 to + // 0.9. Any value above 0.9 is reported as 0.9001. + optional double search_rank_lost_impression_share = 144; + + // The number estimating how often your ad didn't show anywhere above the + // organic search results due to poor Ad Rank. + // Note: Search rank lost top impression share is reported in the range of 0 + // to 0.9. Any value above 0.9 is reported as 0.9001. + optional double search_rank_lost_top_impression_share = 145; + + // The impressions you've received in the top location (anywhere above the + // organic search results) compared to the estimated number of impressions you + // were eligible to receive in the top location. + // Note: Search top impression share is reported in the range of 0.1 to 1. Any + // value below 0.1 is reported as 0.0999. + optional double search_top_impression_share = 146; + + // A measure of how quickly your page loads after clicks on your mobile ads. + // The score is a range from 1 to 10, 10 being the fastest. + optional int64 speed_score = 147; + + // The percent of your ad impressions that are shown anywhere above the + // organic search results. + optional double top_impression_percentage = 148; + + // The percentage of ad clicks to Accelerated Mobile Pages (AMP) landing pages + // that reach a valid AMP page. + optional double valid_accelerated_mobile_pages_clicks_percentage = 149; + + // The value of all conversions divided by the number of all conversions. + optional double value_per_all_conversions = 150; + + // The value of all conversions divided by the number of all conversions. When + // this column is selected with date, the values in date column means the + // conversion date. Details for the by_conversion_date columns are available + // at https://support.google.com/google-ads/answer/9549009. + optional double value_per_all_conversions_by_conversion_date = 244; + + // The value of conversions divided by the number of conversions. This only + // includes conversion actions which include_in_conversions_metric attribute + // is set to true. If you use conversion-based bidding, your bid strategies + // will optimize for these conversions. + optional double value_per_conversion = 151; + + // The value of conversions divided by the number of conversions. This only + // includes conversion actions which include_in_conversions_metric attribute + // is set to true. If you use conversion-based bidding, your bid strategies + // will optimize for these conversions. When this column is selected with + // date, the values in date column means the conversion date. Details for the + // by_conversion_date columns are available at + // https://support.google.com/google-ads/answer/9549009. + optional double value_per_conversions_by_conversion_date = 245; + + // The value of current model attributed conversions divided by the number of + // the conversions. This only includes conversion actions which + // include_in_conversions_metric attribute is set to true. If you use + // conversion-based bidding, your bid strategies will optimize for these + // conversions. + optional double value_per_current_model_attributed_conversion = 152; + + // Percentage of impressions where the viewer watched all of your video. + optional double video_quartile_p100_rate = 132; + + // Percentage of impressions where the viewer watched 25% of your video. + optional double video_quartile_p25_rate = 133; + + // Percentage of impressions where the viewer watched 50% of your video. + optional double video_quartile_p50_rate = 134; + + // Percentage of impressions where the viewer watched 75% of your video. + optional double video_quartile_p75_rate = 135; + + // The number of views your TrueView video ad receives divided by its number + // of impressions, including thumbnail impressions for TrueView in-display + // ads. + optional double video_view_rate = 153; + + // The number of times your video ads were viewed. + optional int64 video_views = 154; + + // The total number of view-through conversions. + // These happen when a customer sees an image or rich media ad, then later + // completes a conversion on your site without interacting with (e.g., + // clicking on) another ad. + optional int64 view_through_conversions = 155; + + // The number of iOS Store Kit Ad Network conversions. + int64 sk_ad_network_conversions = 246; +} diff --git a/google/ads/googleads/v9/common/offline_user_data.proto b/google/ads/googleads/v9/common/offline_user_data.proto new file mode 100644 index 000000000..ba80cef0d --- /dev/null +++ b/google/ads/googleads/v9/common/offline_user_data.proto @@ -0,0 +1,296 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/user_identifier_source.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing offline user data. + +// Address identifier of offline data. +message OfflineUserAddressInfo { + // First name of the user, which is hashed as SHA-256 after normalized + // (Lowercase all characters; Remove any extra spaces before, after, and in + // between). + optional string hashed_first_name = 7; + + // Last name of the user, which is hashed as SHA-256 after normalized (lower + // case only and no punctuation). + optional string hashed_last_name = 8; + + // City of the address. Only accepted for Store Sales and + // ConversionAdjustmentUploadService. + optional string city = 9; + + // State code of the address. Only accepted for Store Sales and + // ConversionAdjustmentUploadService. + optional string state = 10; + + // 2-letter country code in ISO-3166-1 alpha-2 of the user's address. + optional string country_code = 11; + + // Postal code of the user's address. + optional string postal_code = 12; + + // The street address of the user hashed using SHA-256 hash function after + // normalization (lower case only). Only accepted for + // ConversionAdjustmentUploadService. + optional string hashed_street_address = 13; +} + +// User identifying information. +message UserIdentifier { + // Source of the user identifier when the upload is from Store Sales, + // ConversionUploadService, or ConversionAdjustmentUploadService. + google.ads.googleads.v9.enums.UserIdentifierSourceEnum.UserIdentifierSource user_identifier_source = 6; + + // Exactly one must be specified. For OfflineUserDataJobService, Customer + // Match accepts hashed_email, hashed_phone_number, mobile_id, + // third_party_user_id, and address_info; Store Sales accepts hashed_email, + // hashed_phone_number, third_party_user_id, and address_info. + // ConversionUploadService accepts hashed_email and hashed_phone_number. + // ConversionAdjustmentUploadService accepts hashed_email, + // hashed_phone_number, and address_info. + oneof identifier { + // Hashed email address using SHA-256 hash function after normalization. + // Accepted for Customer Match, Store Sales, ConversionUploadService, and + // ConversionAdjustmentUploadService. + string hashed_email = 7; + + // Hashed phone number using SHA-256 hash function after normalization + // (E164 standard). Accepted for Customer Match, Store Sales, + // ConversionUploadService, and ConversionAdjustmentUploadService. + string hashed_phone_number = 8; + + // Mobile device ID (advertising ID/IDFA). Accepted only for Customer Match. + string mobile_id = 9; + + // Advertiser-assigned user ID for Customer Match upload, or + // third-party-assigned user ID for Store Sales. Accepted only for Customer + // Match and Store Sales. + string third_party_user_id = 10; + + // Address information. Accepted only for Customer Match, Store Sales, and + // ConversionAdjustmentUploadService. + OfflineUserAddressInfo address_info = 5; + } +} + +// Attribute of the store sales transaction. +message TransactionAttribute { + // Timestamp when transaction occurred. Required. + // The format is "YYYY-MM-DD HH:MM:SS[+/-HH:MM]", where [+/-HH:MM] is an + // optional timezone offset from UTC. If the offset is absent, the API will + // use the account's timezone as default. + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30+03:00" + optional string transaction_date_time = 8; + + // Transaction amount in micros. Required. + // Transaction amount in micros needs to be greater than 1000. + // If item Attributes are provided, it represents the total value of the + // items, after multiplying the unit price per item by the quantity provided + // in the ItemAttributes. + optional double transaction_amount_micros = 9; + + // Transaction currency code. ISO 4217 three-letter code is used. Required. + optional string currency_code = 10; + + // The resource name of conversion action to report conversions to. + // Required. + optional string conversion_action = 11; + + // Transaction order id. + // Accessible only to customers on the allow-list. + optional string order_id = 12; + + // Store attributes of the transaction. + // Accessible only to customers on the allow-list. + StoreAttribute store_attribute = 6; + + // Value of the custom variable for each transaction. + // Accessible only to customers on the allow-list. + optional string custom_value = 13; + + // Item attributes of the transaction. + ItemAttribute item_attribute = 14; +} + +// Store attributes of the transaction. +message StoreAttribute { + // Store code from + // https://support.google.com/business/answer/3370250#storecode + optional string store_code = 2; +} + +// Item attributes of the transaction. +message ItemAttribute { + // A unique identifier of a product. It can be either the Merchant Center Item + // ID or GTIN (Global Trade Item Number). + string item_id = 1; + + // ID of the Merchant Center Account. + optional int64 merchant_id = 2; + + // Common Locale Data Repository (CLDR) territory code of the country + // associated with the feed where your items are uploaded. See + // https://developers.google.com/google-ads/api/reference/data/codes-formats#country-codes + // for more information. + string country_code = 3; + + // ISO 639-1 code of the language associated with the feed where your items + // are uploaded + string language_code = 4; + + // The number of items sold. Defaults to 1 if not set. + int64 quantity = 5; +} + +// User data holding user identifiers and attributes. +message UserData { + // User identification info. Required. + repeated UserIdentifier user_identifiers = 1; + + // Additional transactions/attributes associated with the user. + // Required when updating store sales data. + TransactionAttribute transaction_attribute = 2; + + // Additional attributes associated with the user. Required when updating + // customer match attributes. These have an expiration of 540 days. + UserAttribute user_attribute = 3; +} + +// User attribute, can only be used with CUSTOMER_MATCH_WITH_ATTRIBUTES job +// type. +message UserAttribute { + // Advertiser defined lifetime value for the user. + optional int64 lifetime_value_micros = 1; + + // Advertiser defined lifetime value bucket for the user. The valid range for + // a lifetime value bucket is from 1 (low) to 10 (high), except for remove + // operation where 0 will also be accepted. + optional int32 lifetime_value_bucket = 2; + + // Timestamp of the last purchase made by the user. + // The format is YYYY-MM-DD HH:MM:SS[+/-HH:MM], where [+/-HH:MM] is an + // optional timezone offset from UTC. If the offset is absent, the API will + // use the account's timezone as default. + string last_purchase_date_time = 3; + + // Advertiser defined average number of purchases that are made by the user in + // a 30 day period. + int32 average_purchase_count = 4; + + // Advertiser defined average purchase value in micros for the user. + int64 average_purchase_value_micros = 5; + + // Timestamp when the user was acquired. + // The format is YYYY-MM-DD HH:MM:SS[+/-HH:MM], where [+/-HH:MM] is an + // optional timezone offset from UTC. If the offset is absent, the API will + // use the account's timezone as default. + string acquisition_date_time = 6; + + // The shopping loyalty related data. Shopping utilizes this data to provide + // users with a better experience. Accessible only to merchants on the + // allow-list with users’ consent. + optional ShoppingLoyalty shopping_loyalty = 7; +} + +// The shopping loyalty related data. Shopping utilizes this data to provide +// users with a better experience. +// Accessible only to merchants on the allow-list. +message ShoppingLoyalty { + // The membership tier. It is a free-form string as each merchant may have + // their own loyalty system. For example, it could be a number from 1 to 10, + // or a string such as "Golden" or "Silver", or even empty string "". + optional string loyalty_tier = 1; +} + +// Metadata for customer match user list. +message CustomerMatchUserListMetadata { + // The resource name of remarketing list to update data. + // Required for job of CUSTOMER_MATCH_USER_LIST type. + optional string user_list = 2; +} + +// Metadata for Store Sales Direct. +message StoreSalesMetadata { + // This is the fraction of all transactions that are identifiable (i.e., + // associated with any form of customer information). + // Required. + // The fraction needs to be between 0 and 1 (excluding 0). + optional double loyalty_fraction = 5; + + // This is the ratio of sales being uploaded compared to the overall sales + // that can be associated with a customer. Required. + // The fraction needs to be between 0 and 1 (excluding 0). For example, if you + // upload half the sales that you are able to associate with a customer, this + // would be 0.5. + optional double transaction_upload_fraction = 6; + + // Name of the store sales custom variable key. A predefined key that + // can be applied to the transaction and then later used for custom + // segmentation in reporting. + // Accessible only to customers on the allow-list. + optional string custom_key = 7; + + // Metadata for a third party Store Sales upload. + StoreSalesThirdPartyMetadata third_party_metadata = 3; +} + +// Metadata for a third party Store Sales. +// This product is only for customers on the allow-list. Please contact your +// Google business development representative for details on the upload +// configuration. +message StoreSalesThirdPartyMetadata { + // Time the advertiser uploaded the data to the partner. Required. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string advertiser_upload_date_time = 7; + + // The fraction of transactions that are valid. Invalid transactions may + // include invalid formats or values. + // Required. + // The fraction needs to be between 0 and 1 (excluding 0). + optional double valid_transaction_fraction = 8; + + // The fraction of valid transactions that are matched to a third party + // assigned user ID on the partner side. + // Required. + // The fraction needs to be between 0 and 1 (excluding 0). + optional double partner_match_fraction = 9; + + // The fraction of valid transactions that are uploaded by the partner to + // Google. + // Required. + // The fraction needs to be between 0 and 1 (excluding 0). + optional double partner_upload_fraction = 10; + + // Version of partner IDs to be used for uploads. Required. + optional string bridge_map_version_id = 11; + + // ID of the third party partner updating the transaction feed. + optional int64 partner_id = 12; +} diff --git a/google/ads/googleads/v9/common/policy.proto b/google/ads/googleads/v9/common/policy.proto new file mode 100644 index 000000000..d3741b5a2 --- /dev/null +++ b/google/ads/googleads/v9/common/policy.proto @@ -0,0 +1,220 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/policy_topic_entry_type.proto"; +import "google/ads/googleads/v9/enums/policy_topic_evidence_destination_mismatch_url_type.proto"; +import "google/ads/googleads/v9/enums/policy_topic_evidence_destination_not_working_device.proto"; +import "google/ads/googleads/v9/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "PolicyProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing policy information. + +// Key of the violation. The key is used for referring to a violation +// when filing an exemption request. +message PolicyViolationKey { + // Unique ID of the violated policy. + optional string policy_name = 3; + + // The text that violates the policy if specified. + // Otherwise, refers to the policy in general + // (e.g., when requesting to be exempt from the whole policy). + // If not specified for criterion exemptions, the whole policy is implied. + // Must be specified for ad exemptions. + optional string violating_text = 4; +} + +// Parameter for controlling how policy exemption is done. +message PolicyValidationParameter { + // The list of policy topics that should not cause a PolicyFindingError to + // be reported. This field is currently only compatible with Enhanced Text Ad. + // It corresponds to the PolicyTopicEntry.topic field. + // + // Resources violating these policies will be saved, but will not be eligible + // to serve. They may begin serving at a later time due to a change in + // policies, re-review of the resource, or a change in advertiser + // certificates. + repeated string ignorable_policy_topics = 3; + + // The list of policy violation keys that should not cause a + // PolicyViolationError to be reported. Not all policy violations are + // exemptable, please refer to the is_exemptible field in the returned + // PolicyViolationError. + // + // Resources violating these polices will be saved, but will not be eligible + // to serve. They may begin serving at a later time due to a change in + // policies, re-review of the resource, or a change in advertiser + // certificates. + repeated PolicyViolationKey exempt_policy_violation_keys = 2; +} + +// Policy finding attached to a resource (e.g. alcohol policy associated with +// a site that sells alcohol). +// +// Each PolicyTopicEntry has a topic that indicates the specific ads policy +// the entry is about and a type to indicate the effect that the entry will have +// on serving. It may optionally have one or more evidences that indicate the +// reason for the finding. It may also optionally have one or more constraints +// that provide details about how serving may be restricted. +message PolicyTopicEntry { + // Policy topic this finding refers to. For example, "ALCOHOL", + // "TRADEMARKS_IN_AD_TEXT", or "DESTINATION_NOT_WORKING". The set of possible + // policy topics is not fixed for a particular API version and may change + // at any time. + optional string topic = 5; + + // Describes the negative or positive effect this policy will have on serving. + google.ads.googleads.v9.enums.PolicyTopicEntryTypeEnum.PolicyTopicEntryType type = 2; + + // Additional information that explains policy finding + // (e.g. the brand name for a trademark finding). + repeated PolicyTopicEvidence evidences = 3; + + // Indicates how serving of this resource may be affected (e.g. not serving + // in a country). + repeated PolicyTopicConstraint constraints = 4; +} + +// Additional information that explains a policy finding. +message PolicyTopicEvidence { + // A list of fragments of text that violated a policy. + message TextList { + // The fragments of text from the resource that caused the policy finding. + repeated string texts = 2; + } + + // A list of websites that caused a policy finding. Used for + // ONE_WEBSITE_PER_AD_GROUP policy topic, for example. In case there are more + // than five websites, only the top five (those that appear in resources the + // most) will be listed here. + message WebsiteList { + // Websites that caused the policy finding. + repeated string websites = 2; + } + + // A list of strings found in a destination page that caused a policy + // finding. + message DestinationTextList { + // List of text found in the resource's destination page. + repeated string destination_texts = 2; + } + + // Evidence of mismatches between the URLs of a resource. + message DestinationMismatch { + // The set of URLs that did not match each other. + repeated google.ads.googleads.v9.enums.PolicyTopicEvidenceDestinationMismatchUrlTypeEnum.PolicyTopicEvidenceDestinationMismatchUrlType url_types = 1; + } + + // Evidence details when the destination is returning an HTTP error + // code or isn't functional in all locations for commonly used devices. + message DestinationNotWorking { + // The full URL that didn't work. + optional string expanded_url = 7; + + // The type of device that failed to load the URL. + google.ads.googleads.v9.enums.PolicyTopicEvidenceDestinationNotWorkingDeviceEnum.PolicyTopicEvidenceDestinationNotWorkingDevice device = 4; + + // The time the URL was last checked. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string last_checked_date_time = 8; + + // Indicates the reason of the DESTINATION_NOT_WORKING policy finding. + oneof reason { + // The type of DNS error. + google.ads.googleads.v9.enums.PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum.PolicyTopicEvidenceDestinationNotWorkingDnsErrorType dns_error_type = 1; + + // The HTTP error code. + int64 http_error_code = 6; + } + } + + // Specific evidence information depending on the evidence type. + oneof value { + // List of websites linked with this resource. + WebsiteList website_list = 3; + + // List of evidence found in the text of a resource. + TextList text_list = 4; + + // The language the resource was detected to be written in. + // This is an IETF language tag such as "en-US". + string language_code = 9; + + // The text in the destination of the resource that is causing a policy + // finding. + DestinationTextList destination_text_list = 6; + + // Mismatch between the destinations of a resource's URLs. + DestinationMismatch destination_mismatch = 7; + + // Details when the destination is returning an HTTP error code or isn't + // functional in all locations for commonly used devices. + DestinationNotWorking destination_not_working = 8; + } +} + +// Describes the effect on serving that a policy topic entry will have. +message PolicyTopicConstraint { + // A list of countries where a resource's serving is constrained. + message CountryConstraintList { + // Total number of countries targeted by the resource. + optional int32 total_targeted_countries = 3; + + // Countries in which serving is restricted. + repeated CountryConstraint countries = 2; + } + + // Indicates that a policy topic was constrained due to disapproval of the + // website for reseller purposes. + message ResellerConstraint { + + } + + // Indicates that a resource's ability to serve in a particular country is + // constrained. + message CountryConstraint { + // Geo target constant resource name of the country in which serving is + // constrained. + optional string country_criterion = 2; + } + + // Specific information about the constraint. + oneof value { + // Countries where the resource cannot serve. + CountryConstraintList country_constraint_list = 1; + + // Reseller constraint. + ResellerConstraint reseller_constraint = 2; + + // Countries where a certificate is required for serving. + CountryConstraintList certificate_missing_in_country_list = 3; + + // Countries where the resource's domain is not covered by the + // certificates associated with it. + CountryConstraintList certificate_domain_mismatch_in_country_list = 4; + } +} diff --git a/google/ads/googleads/v9/common/policy_summary.proto b/google/ads/googleads/v9/common/policy_summary.proto new file mode 100644 index 000000000..e84f3682e --- /dev/null +++ b/google/ads/googleads/v9/common/policy_summary.proto @@ -0,0 +1,46 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/common/policy.proto"; +import "google/ads/googleads/v9/enums/policy_approval_status.proto"; +import "google/ads/googleads/v9/enums/policy_review_status.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "PolicySummaryProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing policy summary. + +// Contains policy summary information. +message PolicySummary { + // The list of policy findings. + repeated PolicyTopicEntry policy_topic_entries = 1; + + // Where in the review process the resource is. + google.ads.googleads.v9.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2; + + // The overall approval status, which is calculated based on + // the status of its individual policy topic entries. + google.ads.googleads.v9.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3; +} diff --git a/google/ads/googleads/v9/common/real_time_bidding_setting.proto b/google/ads/googleads/v9/common/real_time_bidding_setting.proto new file mode 100644 index 000000000..c827b26e1 --- /dev/null +++ b/google/ads/googleads/v9/common/real_time_bidding_setting.proto @@ -0,0 +1,37 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "RealTimeBiddingSettingProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing RealTimeBiddingSetting + +// Settings for Real-Time Bidding, a feature only available for campaigns +// targeting the Ad Exchange network. +message RealTimeBiddingSetting { + // Whether the campaign is opted in to real-time bidding. + optional bool opt_in = 2; +} diff --git a/google/ads/googleads/v9/common/segments.proto b/google/ads/googleads/v9/common/segments.proto new file mode 100644 index 000000000..5fe127bc6 --- /dev/null +++ b/google/ads/googleads/v9/common/segments.proto @@ -0,0 +1,369 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/enums/ad_destination_type.proto"; +import "google/ads/googleads/v9/enums/ad_network_type.proto"; +import "google/ads/googleads/v9/enums/budget_campaign_association_status.proto"; +import "google/ads/googleads/v9/enums/click_type.proto"; +import "google/ads/googleads/v9/enums/conversion_action_category.proto"; +import "google/ads/googleads/v9/enums/conversion_attribution_event_type.proto"; +import "google/ads/googleads/v9/enums/conversion_lag_bucket.proto"; +import "google/ads/googleads/v9/enums/conversion_or_adjustment_lag_bucket.proto"; +import "google/ads/googleads/v9/enums/conversion_value_rule_primary_dimension.proto"; +import "google/ads/googleads/v9/enums/day_of_week.proto"; +import "google/ads/googleads/v9/enums/device.proto"; +import "google/ads/googleads/v9/enums/external_conversion_source.proto"; +import "google/ads/googleads/v9/enums/hotel_date_selection_type.proto"; +import "google/ads/googleads/v9/enums/hotel_price_bucket.proto"; +import "google/ads/googleads/v9/enums/hotel_rate_type.proto"; +import "google/ads/googleads/v9/enums/month_of_year.proto"; +import "google/ads/googleads/v9/enums/placeholder_type.proto"; +import "google/ads/googleads/v9/enums/product_channel.proto"; +import "google/ads/googleads/v9/enums/product_channel_exclusivity.proto"; +import "google/ads/googleads/v9/enums/product_condition.proto"; +import "google/ads/googleads/v9/enums/recommendation_type.proto"; +import "google/ads/googleads/v9/enums/search_engine_results_page_type.proto"; +import "google/ads/googleads/v9/enums/search_term_match_type.proto"; +import "google/ads/googleads/v9/enums/slot.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "SegmentsProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing segment only fields. + +// Segment only fields. +message Segments { + // Ad Destination type. + google.ads.googleads.v9.enums.AdDestinationTypeEnum.AdDestinationType ad_destination_type = 136; + + // Ad network type. + google.ads.googleads.v9.enums.AdNetworkTypeEnum.AdNetworkType ad_network_type = 3; + + // Budget campaign association status. + BudgetCampaignAssociationStatus budget_campaign_association_status = 134; + + // Click type. + google.ads.googleads.v9.enums.ClickTypeEnum.ClickType click_type = 26; + + // Resource name of the conversion action. + optional string conversion_action = 113; + + // Conversion action category. + google.ads.googleads.v9.enums.ConversionActionCategoryEnum.ConversionActionCategory conversion_action_category = 53; + + // Conversion action name. + optional string conversion_action_name = 114; + + // This segments your conversion columns by the original conversion and + // conversion value vs. the delta if conversions were adjusted. False row has + // the data as originally stated; While true row has the delta between data + // now and the data as originally stated. Summing the two together results + // post-adjustment data. + optional bool conversion_adjustment = 115; + + // Conversion attribution event type. + google.ads.googleads.v9.enums.ConversionAttributionEventTypeEnum.ConversionAttributionEventType conversion_attribution_event_type = 2; + + // An enum value representing the number of days between the impression and + // the conversion. + google.ads.googleads.v9.enums.ConversionLagBucketEnum.ConversionLagBucket conversion_lag_bucket = 50; + + // An enum value representing the number of days between the impression and + // the conversion or between the impression and adjustments to the conversion. + google.ads.googleads.v9.enums.ConversionOrAdjustmentLagBucketEnum.ConversionOrAdjustmentLagBucket conversion_or_adjustment_lag_bucket = 51; + + // Date to which metrics apply. + // yyyy-MM-dd format, e.g., 2018-04-17. + optional string date = 79; + + // Day of the week, e.g., MONDAY. + google.ads.googleads.v9.enums.DayOfWeekEnum.DayOfWeek day_of_week = 5; + + // Device to which metrics apply. + google.ads.googleads.v9.enums.DeviceEnum.Device device = 1; + + // External conversion source. + google.ads.googleads.v9.enums.ExternalConversionSourceEnum.ExternalConversionSource external_conversion_source = 55; + + // Resource name of the geo target constant that represents an airport. + optional string geo_target_airport = 116; + + // Resource name of the geo target constant that represents a canton. + optional string geo_target_canton = 117; + + // Resource name of the geo target constant that represents a city. + optional string geo_target_city = 118; + + // Resource name of the geo target constant that represents a country. + optional string geo_target_country = 119; + + // Resource name of the geo target constant that represents a county. + optional string geo_target_county = 120; + + // Resource name of the geo target constant that represents a district. + optional string geo_target_district = 121; + + // Resource name of the geo target constant that represents a metro. + optional string geo_target_metro = 122; + + // Resource name of the geo target constant that represents the most + // specific location. + optional string geo_target_most_specific_location = 123; + + // Resource name of the geo target constant that represents a postal code. + optional string geo_target_postal_code = 124; + + // Resource name of the geo target constant that represents a province. + optional string geo_target_province = 125; + + // Resource name of the geo target constant that represents a region. + optional string geo_target_region = 126; + + // Resource name of the geo target constant that represents a state. + optional string geo_target_state = 127; + + // Hotel booking window in days. + optional int64 hotel_booking_window_days = 135; + + // Hotel center ID. + optional int64 hotel_center_id = 80; + + // Hotel check-in date. Formatted as yyyy-MM-dd. + optional string hotel_check_in_date = 81; + + // Hotel check-in day of week. + google.ads.googleads.v9.enums.DayOfWeekEnum.DayOfWeek hotel_check_in_day_of_week = 9; + + // Hotel city. + optional string hotel_city = 82; + + // Hotel class. + optional int32 hotel_class = 83; + + // Hotel country. + optional string hotel_country = 84; + + // Hotel date selection type. + google.ads.googleads.v9.enums.HotelDateSelectionTypeEnum.HotelDateSelectionType hotel_date_selection_type = 13; + + // Hotel length of stay. + optional int32 hotel_length_of_stay = 85; + + // Hotel rate rule ID. + optional string hotel_rate_rule_id = 86; + + // Hotel rate type. + google.ads.googleads.v9.enums.HotelRateTypeEnum.HotelRateType hotel_rate_type = 74; + + // Hotel price bucket. + google.ads.googleads.v9.enums.HotelPriceBucketEnum.HotelPriceBucket hotel_price_bucket = 78; + + // Hotel state. + optional string hotel_state = 87; + + // Hour of day as a number between 0 and 23, inclusive. + optional int32 hour = 88; + + // Only used with feed item metrics. + // Indicates whether the interaction metrics occurred on the feed item itself + // or a different extension or ad unit. + optional bool interaction_on_this_extension = 89; + + // Keyword criterion. + Keyword keyword = 61; + + // Month as represented by the date of the first day of a month. Formatted as + // yyyy-MM-dd. + optional string month = 90; + + // Month of the year, e.g., January. + google.ads.googleads.v9.enums.MonthOfYearEnum.MonthOfYear month_of_year = 18; + + // Partner hotel ID. + optional string partner_hotel_id = 91; + + // Placeholder type. This is only used with feed item metrics. + google.ads.googleads.v9.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 20; + + // Aggregator ID of the product. + optional int64 product_aggregator_id = 132; + + // Bidding category (level 1) of the product. + optional string product_bidding_category_level1 = 92; + + // Bidding category (level 2) of the product. + optional string product_bidding_category_level2 = 93; + + // Bidding category (level 3) of the product. + optional string product_bidding_category_level3 = 94; + + // Bidding category (level 4) of the product. + optional string product_bidding_category_level4 = 95; + + // Bidding category (level 5) of the product. + optional string product_bidding_category_level5 = 96; + + // Brand of the product. + optional string product_brand = 97; + + // Channel of the product. + google.ads.googleads.v9.enums.ProductChannelEnum.ProductChannel product_channel = 30; + + // Channel exclusivity of the product. + google.ads.googleads.v9.enums.ProductChannelExclusivityEnum.ProductChannelExclusivity product_channel_exclusivity = 31; + + // Condition of the product. + google.ads.googleads.v9.enums.ProductConditionEnum.ProductCondition product_condition = 32; + + // Resource name of the geo target constant for the country of sale of the + // product. + optional string product_country = 98; + + // Custom attribute 0 of the product. + optional string product_custom_attribute0 = 99; + + // Custom attribute 1 of the product. + optional string product_custom_attribute1 = 100; + + // Custom attribute 2 of the product. + optional string product_custom_attribute2 = 101; + + // Custom attribute 3 of the product. + optional string product_custom_attribute3 = 102; + + // Custom attribute 4 of the product. + optional string product_custom_attribute4 = 103; + + // Item ID of the product. + optional string product_item_id = 104; + + // Resource name of the language constant for the language of the product. + optional string product_language = 105; + + // Merchant ID of the product. + optional int64 product_merchant_id = 133; + + // Store ID of the product. + optional string product_store_id = 106; + + // Title of the product. + optional string product_title = 107; + + // Type (level 1) of the product. + optional string product_type_l1 = 108; + + // Type (level 2) of the product. + optional string product_type_l2 = 109; + + // Type (level 3) of the product. + optional string product_type_l3 = 110; + + // Type (level 4) of the product. + optional string product_type_l4 = 111; + + // Type (level 5) of the product. + optional string product_type_l5 = 112; + + // Quarter as represented by the date of the first day of a quarter. + // Uses the calendar year for quarters, e.g., the second quarter of 2018 + // starts on 2018-04-01. Formatted as yyyy-MM-dd. + optional string quarter = 128; + + // Recommendation type. + google.ads.googleads.v9.enums.RecommendationTypeEnum.RecommendationType recommendation_type = 140; + + // Type of the search engine results page. + google.ads.googleads.v9.enums.SearchEngineResultsPageTypeEnum.SearchEngineResultsPageType search_engine_results_page_type = 70; + + // Match type of the keyword that triggered the ad, including variants. + google.ads.googleads.v9.enums.SearchTermMatchTypeEnum.SearchTermMatchType search_term_match_type = 22; + + // Position of the ad. + google.ads.googleads.v9.enums.SlotEnum.Slot slot = 23; + + // Primary dimension of applied conversion value rules. + // NO_RULE_APPLIED shows the total recorded value of conversions that + // do not have a value rule applied. + // ORIGINAL shows the original value of conversions to which a value rule + // has been applied. + // GEO_LOCATION, DEVICE, AUDIENCE show the net adjustment after value + // rules were applied. + google.ads.googleads.v9.enums.ConversionValueRulePrimaryDimensionEnum.ConversionValueRulePrimaryDimension conversion_value_rule_primary_dimension = 138; + + // Resource name of the ad group criterion that represents webpage criterion. + optional string webpage = 129; + + // Week as defined as Monday through Sunday, and represented by the date of + // Monday. Formatted as yyyy-MM-dd. + optional string week = 130; + + // Year, formatted as yyyy. + optional int32 year = 131; + + // iOS Store Kit Ad Network conversion value. + // Null value means this segment is not applicable, e.g. non-iOS campaign. + optional int64 sk_ad_network_conversion_value = 137; + + // Only used with CustomerAsset, CampaignAsset and AdGroupAsset metrics. + // Indicates whether the interaction metrics occurred on the asset itself + // or a different asset or ad unit. + // Interactions (e.g. clicks) are counted across all the parts of the served + // ad (e.g. Ad itself and other components like Sitelinks) when they are + // served together. When interaction_on_this_asset is true, it means the + // interactions are on this specific asset and when interaction_on_this_asset + // is false, it means the interactions is not on this specific asset but on + // other parts of the served ad this asset is served with. + optional AssetInteractionTarget asset_interaction_target = 139; +} + +// A Keyword criterion segment. +message Keyword { + // The AdGroupCriterion resource name. + optional string ad_group_criterion = 3; + + // Keyword info. + KeywordInfo info = 2; +} + +// A BudgetCampaignAssociationStatus segment. +message BudgetCampaignAssociationStatus { + // The campaign resource name. + optional string campaign = 1; + + // Budget campaign association status. + google.ads.googleads.v9.enums.BudgetCampaignAssociationStatusEnum.BudgetCampaignAssociationStatus status = 2; +} + +// An AssetInteractionTarget segment. +message AssetInteractionTarget { + // The asset resource name. + string asset = 1; + + // Only used with CustomerAsset, CampaignAsset and AdGroupAsset metrics. + // Indicates whether the interaction metrics occurred on the asset itself or a + // different asset or ad unit. + bool interaction_on_this_asset = 2; +} diff --git a/google/ads/googleads/v9/common/simulation.proto b/google/ads/googleads/v9/common/simulation.proto new file mode 100644 index 000000000..f2df42331 --- /dev/null +++ b/google/ads/googleads/v9/common/simulation.proto @@ -0,0 +1,358 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "SimulationProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing simulation points. + +// A container for simulation points for simulations of type BID_MODIFIER. +message BidModifierSimulationPointList { + // Projected metrics for a series of bid modifier amounts. + repeated BidModifierSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type CPC_BID. +message CpcBidSimulationPointList { + // Projected metrics for a series of CPC bid amounts. + repeated CpcBidSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type CPV_BID. +message CpvBidSimulationPointList { + // Projected metrics for a series of CPV bid amounts. + repeated CpvBidSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type TARGET_CPA. +message TargetCpaSimulationPointList { + // Projected metrics for a series of target CPA amounts. + repeated TargetCpaSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type TARGET_ROAS. +message TargetRoasSimulationPointList { + // Projected metrics for a series of target ROAS amounts. + repeated TargetRoasSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type PERCENT_CPC_BID. +message PercentCpcBidSimulationPointList { + // Projected metrics for a series of percent CPC bid amounts. + repeated PercentCpcBidSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type BUDGET. +message BudgetSimulationPointList { + // Projected metrics for a series of budget amounts. + repeated BudgetSimulationPoint points = 1; +} + +// A container for simulation points for simulations of type +// TARGET_IMPRESSION_SHARE. +message TargetImpressionShareSimulationPointList { + // Projected metrics for a specific target impression share value. + repeated TargetImpressionShareSimulationPoint points = 1; +} + +// Projected metrics for a specific bid modifier amount. +message BidModifierSimulationPoint { + // The simulated bid modifier upon which projected metrics are based. + optional double bid_modifier = 15; + + // Projected number of biddable conversions. + // Only search advertising channel type supports this field. + optional double biddable_conversions = 16; + + // Projected total value of biddable conversions. + // Only search advertising channel type supports this field. + optional double biddable_conversions_value = 17; + + // Projected number of clicks. + optional int64 clicks = 18; + + // Projected cost in micros. + optional int64 cost_micros = 19; + + // Projected number of impressions. + optional int64 impressions = 20; + + // Projected number of top slot impressions. + // Only search advertising channel type supports this field. + optional int64 top_slot_impressions = 21; + + // Projected number of biddable conversions for the parent resource. + // Only search advertising channel type supports this field. + optional double parent_biddable_conversions = 22; + + // Projected total value of biddable conversions for the parent resource. + // Only search advertising channel type supports this field. + optional double parent_biddable_conversions_value = 23; + + // Projected number of clicks for the parent resource. + optional int64 parent_clicks = 24; + + // Projected cost in micros for the parent resource. + optional int64 parent_cost_micros = 25; + + // Projected number of impressions for the parent resource. + optional int64 parent_impressions = 26; + + // Projected number of top slot impressions for the parent resource. + // Only search advertising channel type supports this field. + optional int64 parent_top_slot_impressions = 27; + + // Projected minimum daily budget that must be available to the parent + // resource to realize this simulation. + optional int64 parent_required_budget_micros = 28; +} + +// Projected metrics for a specific CPC bid amount. +message CpcBidSimulationPoint { + // Projected required daily budget that the advertiser must set in order to + // receive the estimated traffic, in micros of advertiser currency. + int64 required_budget_amount_micros = 17; + + // Projected number of biddable conversions. + optional double biddable_conversions = 9; + + // Projected total value of biddable conversions. + optional double biddable_conversions_value = 10; + + // Projected number of clicks. + optional int64 clicks = 11; + + // Projected cost in micros. + optional int64 cost_micros = 12; + + // Projected number of impressions. + optional int64 impressions = 13; + + // Projected number of top slot impressions. + // Only search advertising channel type supports this field. + optional int64 top_slot_impressions = 14; + + // When SimulationModificationMethod = UNIFORM or DEFAULT, + // cpc_bid_micros is set. + // When SimulationModificationMethod = SCALING, + // cpc_bid_scaling_modifier is set. + oneof cpc_simulation_key_value { + // The simulated CPC bid upon which projected metrics are based. + int64 cpc_bid_micros = 15; + + // The simulated scaling modifier upon which projected metrics are based. + // All CPC bids relevant to the simulated entity are scaled by this + // modifier. + double cpc_bid_scaling_modifier = 16; + } +} + +// Projected metrics for a specific CPV bid amount. +message CpvBidSimulationPoint { + // The simulated CPV bid upon which projected metrics are based. + optional int64 cpv_bid_micros = 5; + + // Projected cost in micros. + optional int64 cost_micros = 6; + + // Projected number of impressions. + optional int64 impressions = 7; + + // Projected number of views. + optional int64 views = 8; +} + +// Projected metrics for a specific target CPA amount. +message TargetCpaSimulationPoint { + // Projected required daily budget that the advertiser must set in order to + // receive the estimated traffic, in micros of advertiser currency. + int64 required_budget_amount_micros = 19; + + // Projected number of biddable conversions. + optional double biddable_conversions = 9; + + // Projected total value of biddable conversions. + optional double biddable_conversions_value = 10; + + // Projected number of app installs. + double app_installs = 15; + + // Projected number of in-app actions. + double in_app_actions = 16; + + // Projected number of clicks. + optional int64 clicks = 11; + + // Projected cost in micros. + optional int64 cost_micros = 12; + + // Projected number of impressions. + optional int64 impressions = 13; + + // Projected number of top slot impressions. + // Only search advertising channel type supports this field. + optional int64 top_slot_impressions = 14; + + // When SimulationModificationMethod = UNIFORM or DEFAULT, + // target_cpa_micros is set. + // When SimulationModificationMethod = SCALING, + // target_cpa_scaling_modifier is set. + oneof target_cpa_simulation_key_value { + // The simulated target CPA upon which projected metrics are based. + int64 target_cpa_micros = 17; + + // The simulated scaling modifier upon which projected metrics are based. + // All CPA targets relevant to the simulated entity are scaled by this + // modifier. + double target_cpa_scaling_modifier = 18; + } +} + +// Projected metrics for a specific target ROAS amount. +message TargetRoasSimulationPoint { + // The simulated target ROAS upon which projected metrics are based. + optional double target_roas = 8; + + // Projected required daily budget that the advertiser must set in order to + // receive the estimated traffic, in micros of advertiser currency. + int64 required_budget_amount_micros = 15; + + // Projected number of biddable conversions. + optional double biddable_conversions = 9; + + // Projected total value of biddable conversions. + optional double biddable_conversions_value = 10; + + // Projected number of clicks. + optional int64 clicks = 11; + + // Projected cost in micros. + optional int64 cost_micros = 12; + + // Projected number of impressions. + optional int64 impressions = 13; + + // Projected number of top slot impressions. + // Only Search advertising channel type supports this field. + optional int64 top_slot_impressions = 14; +} + +// Projected metrics for a specific percent CPC amount. Only Hotel advertising +// channel type supports this field. +message PercentCpcBidSimulationPoint { + // The simulated percent CPC upon which projected metrics are based. Percent + // CPC expressed as fraction of the advertised price for some good or service. + // The value stored here is 1,000,000 * [fraction]. + optional int64 percent_cpc_bid_micros = 1; + + // Projected number of biddable conversions. + optional double biddable_conversions = 2; + + // Projected total value of biddable conversions in local currency. + optional double biddable_conversions_value = 3; + + // Projected number of clicks. + optional int64 clicks = 4; + + // Projected cost in micros. + optional int64 cost_micros = 5; + + // Projected number of impressions. + optional int64 impressions = 6; + + // Projected number of top slot impressions. + optional int64 top_slot_impressions = 7; +} + +// Projected metrics for a specific budget amount. +message BudgetSimulationPoint { + // The simulated budget upon which projected metrics are based. + int64 budget_amount_micros = 1; + + // Projected required daily cpc bid ceiling that the advertiser must set to + // realize this simulation, in micros of the advertiser currency. + // Only campaigns with the Target Spend bidding strategy support this field. + int64 required_cpc_bid_ceiling_micros = 2; + + // Projected number of biddable conversions. + double biddable_conversions = 3; + + // Projected total value of biddable conversions. + double biddable_conversions_value = 4; + + // Projected number of clicks. + int64 clicks = 5; + + // Projected cost in micros. + int64 cost_micros = 6; + + // Projected number of impressions. + int64 impressions = 7; + + // Projected number of top slot impressions. + // Only search advertising channel type supports this field. + int64 top_slot_impressions = 8; +} + +// Projected metrics for a specific target impression share value. +message TargetImpressionShareSimulationPoint { + // The simulated target impression share value (in micros) upon which + // projected metrics are based. + // E.g. 10% impression share, which is equal to 0.1, is stored as 100_000. + // This value is validated and will not exceed 1M (100%). + int64 target_impression_share_micros = 1; + + // Projected required daily cpc bid ceiling that the advertiser must set to + // realize this simulation, in micros of the advertiser currency. + int64 required_cpc_bid_ceiling_micros = 2; + + // Projected required daily budget that the advertiser must set in order to + // receive the estimated traffic, in micros of advertiser currency. + int64 required_budget_amount_micros = 3; + + // Projected number of biddable conversions. + double biddable_conversions = 4; + + // Projected total value of biddable conversions. + double biddable_conversions_value = 5; + + // Projected number of clicks. + int64 clicks = 6; + + // Projected cost in micros. + int64 cost_micros = 7; + + // Projected number of impressions. + int64 impressions = 8; + + // Projected number of top slot impressions. + // Only search advertising channel type supports this field. + int64 top_slot_impressions = 9; + + // Projected number of absolute top impressions. + // Only search advertising channel type supports this field. + int64 absolute_top_impressions = 10; +} diff --git a/google/ads/googleads/v9/common/tag_snippet.proto b/google/ads/googleads/v9/common/tag_snippet.proto new file mode 100644 index 000000000..35ad133f0 --- /dev/null +++ b/google/ads/googleads/v9/common/tag_snippet.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/tracking_code_page_format.proto"; +import "google/ads/googleads/v9/enums/tracking_code_type.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "TagSnippetProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing TagSnippet + +// The site tag and event snippet pair for a TrackingCodeType. +message TagSnippet { + // The type of the generated tag snippets for tracking conversions. + google.ads.googleads.v9.enums.TrackingCodeTypeEnum.TrackingCodeType type = 1; + + // The format of the web page where the tracking tag and snippet will be + // installed, e.g. HTML. + google.ads.googleads.v9.enums.TrackingCodePageFormatEnum.TrackingCodePageFormat page_format = 2; + + // The site tag that adds visitors to your basic remarketing lists and sets + // new cookies on your domain. + optional string global_site_tag = 5; + + // The event snippet that works with the site tag to track actions that + // should be counted as conversions. + optional string event_snippet = 6; +} diff --git a/google/ads/googleads/v9/common/targeting_setting.proto b/google/ads/googleads/v9/common/targeting_setting.proto new file mode 100644 index 000000000..10cebf18e --- /dev/null +++ b/google/ads/googleads/v9/common/targeting_setting.proto @@ -0,0 +1,85 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/targeting_dimension.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "TargetingSettingProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing TargetingSetting + +// Settings for the targeting-related features, at the campaign and ad group +// levels. For more details about the targeting setting, visit +// https://support.google.com/google-ads/answer/7365594 +message TargetingSetting { + // The per-targeting-dimension setting to restrict the reach of your campaign + // or ad group. + repeated TargetRestriction target_restrictions = 1; + + // The list of operations changing the target restrictions. + // + // Adding a target restriction with a targeting dimension that already exists + // causes the existing target restriction to be replaced with the new value. + repeated TargetRestrictionOperation target_restriction_operations = 2; +} + +// The list of per-targeting-dimension targeting settings. +message TargetRestriction { + // The targeting dimension that these settings apply to. + google.ads.googleads.v9.enums.TargetingDimensionEnum.TargetingDimension targeting_dimension = 1; + + // Indicates whether to restrict your ads to show only for the criteria you + // have selected for this targeting_dimension, or to target all values for + // this targeting_dimension and show ads based on your targeting in other + // TargetingDimensions. A value of `true` means that these criteria will only + // apply bid modifiers, and not affect targeting. A value of `false` means + // that these criteria will restrict targeting as well as applying bid + // modifiers. + optional bool bid_only = 3; +} + +// Operation to be performed on a target restriction list in a mutate. +message TargetRestrictionOperation { + // The operator. + enum Operator { + // Unspecified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Add the restriction to the existing restrictions. + ADD = 2; + + // Remove the restriction from the existing restrictions. + REMOVE = 3; + } + + // Type of list operation to perform. + Operator operator = 1; + + // The target restriction being added to or removed from the list. + TargetRestriction value = 2; +} diff --git a/google/ads/googleads/v9/common/text_label.proto b/google/ads/googleads/v9/common/text_label.proto new file mode 100644 index 000000000..64f98a7e9 --- /dev/null +++ b/google/ads/googleads/v9/common/text_label.proto @@ -0,0 +1,40 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "TextLabelProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// A type of label displaying text on a colored background. +message TextLabel { + // Background color of the label in RGB format. This string must match the + // regular expression '^\#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$'. + // Note: The background color may not be visible for manager accounts. + optional string background_color = 3; + + // A short description of the label. The length must be no more than 200 + // characters. + optional string description = 4; +} diff --git a/google/ads/googleads/v9/common/url_collection.proto b/google/ads/googleads/v9/common/url_collection.proto new file mode 100644 index 000000000..3a4411fd6 --- /dev/null +++ b/google/ads/googleads/v9/common/url_collection.proto @@ -0,0 +1,45 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "UrlCollectionProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file UrlCollection type. + +// Collection of urls that is tagged with a unique identifier. +message UrlCollection { + // Unique identifier for this UrlCollection instance. + optional string url_collection_id = 5; + + // A list of possible final URLs. + repeated string final_urls = 6; + + // A list of possible final mobile URLs. + repeated string final_mobile_urls = 7; + + // URL template for constructing a tracking URL. + optional string tracking_url_template = 8; +} diff --git a/google/ads/googleads/v9/common/user_lists.proto b/google/ads/googleads/v9/common/user_lists.proto new file mode 100644 index 000000000..970b490b9 --- /dev/null +++ b/google/ads/googleads/v9/common/user_lists.proto @@ -0,0 +1,291 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/ads/googleads/v9/enums/customer_match_upload_key_type.proto"; +import "google/ads/googleads/v9/enums/user_list_combined_rule_operator.proto"; +import "google/ads/googleads/v9/enums/user_list_crm_data_source_type.proto"; +import "google/ads/googleads/v9/enums/user_list_date_rule_item_operator.proto"; +import "google/ads/googleads/v9/enums/user_list_logical_rule_operator.proto"; +import "google/ads/googleads/v9/enums/user_list_number_rule_item_operator.proto"; +import "google/ads/googleads/v9/enums/user_list_prepopulation_status.proto"; +import "google/ads/googleads/v9/enums/user_list_rule_type.proto"; +import "google/ads/googleads/v9/enums/user_list_string_rule_item_operator.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "UserListsProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing user list types. + +// SimilarUserList is a list of users which are similar to users from another +// UserList. These lists are read-only and automatically created by Google. +message SimilarUserListInfo { + // Seed UserList from which this list is derived. + optional string seed_user_list = 2; +} + +// UserList of CRM users provided by the advertiser. +message CrmBasedUserListInfo { + // A string that uniquely identifies a mobile application from which the data + // was collected. + // For iOS, the ID string is the 9 digit string that appears at the end of an + // App Store URL (e.g., "476943146" for "Flood-It! 2" whose App Store link is + // http://itunes.apple.com/us/app/flood-it!-2/id476943146). + // For Android, the ID string is the application's package name + // (e.g., "com.labpixies.colordrips" for "Color Drips" given Google Play link + // https://play.google.com/store/apps/details?id=com.labpixies.colordrips). + // Required when creating CrmBasedUserList for uploading mobile advertising + // IDs. + optional string app_id = 4; + + // Matching key type of the list. + // Mixed data types are not allowed on the same list. + // This field is required for an ADD operation. + google.ads.googleads.v9.enums.CustomerMatchUploadKeyTypeEnum.CustomerMatchUploadKeyType upload_key_type = 2; + + // Data source of the list. Default value is FIRST_PARTY. + // Only customers on the allow-list can create third-party sourced CRM lists. + google.ads.googleads.v9.enums.UserListCrmDataSourceTypeEnum.UserListCrmDataSourceType data_source_type = 3; +} + +// A client defined rule based on custom parameters sent by web sites or +// uploaded by the advertiser. +message UserListRuleInfo { + // Rule type is used to determine how to group rule items. + // + // The default is OR of ANDs (disjunctive normal form). + // That is, rule items will be ANDed together within rule item groups and the + // groups themselves will be ORed together. + // + // Currently AND of ORs (conjunctive normal form) is only supported for + // ExpressionRuleUserList. + google.ads.googleads.v9.enums.UserListRuleTypeEnum.UserListRuleType rule_type = 1; + + // List of rule item groups that defines this rule. + // Rule item groups are grouped together based on rule_type. + repeated UserListRuleItemGroupInfo rule_item_groups = 2; +} + +// A group of rule items. +message UserListRuleItemGroupInfo { + // Rule items that will be grouped together based on rule_type. + repeated UserListRuleItemInfo rule_items = 1; +} + +// An atomic rule item. +message UserListRuleItemInfo { + // Rule variable name. It should match the corresponding key name fired + // by the pixel. + // A name must begin with US-ascii letters or underscore or UTF8 code that is + // greater than 127 and consist of US-ascii letters or digits or underscore or + // UTF8 code that is greater than 127. + // For websites, there are two built-in variable URL (name = 'url__') and + // referrer URL (name = 'ref_url__'). + // This field must be populated when creating a new rule item. + optional string name = 5; + + // An atomic rule item. + oneof rule_item { + // An atomic rule item composed of a number operation. + UserListNumberRuleItemInfo number_rule_item = 2; + + // An atomic rule item composed of a string operation. + UserListStringRuleItemInfo string_rule_item = 3; + + // An atomic rule item composed of a date operation. + UserListDateRuleItemInfo date_rule_item = 4; + } +} + +// A rule item composed of a date operation. +message UserListDateRuleItemInfo { + // Date comparison operator. + // This field is required and must be populated when creating new date + // rule item. + google.ads.googleads.v9.enums.UserListDateRuleItemOperatorEnum.UserListDateRuleItemOperator operator = 1; + + // String representing date value to be compared with the rule variable. + // Supported date format is YYYY-MM-DD. + // Times are reported in the customer's time zone. + optional string value = 4; + + // The relative date value of the right hand side denoted by number of days + // offset from now. The value field will override this field when both are + // present. + optional int64 offset_in_days = 5; +} + +// A rule item composed of a number operation. +message UserListNumberRuleItemInfo { + // Number comparison operator. + // This field is required and must be populated when creating a new number + // rule item. + google.ads.googleads.v9.enums.UserListNumberRuleItemOperatorEnum.UserListNumberRuleItemOperator operator = 1; + + // Number value to be compared with the variable. + // This field is required and must be populated when creating a new number + // rule item. + optional double value = 3; +} + +// A rule item composed of a string operation. +message UserListStringRuleItemInfo { + // String comparison operator. + // This field is required and must be populated when creating a new string + // rule item. + google.ads.googleads.v9.enums.UserListStringRuleItemOperatorEnum.UserListStringRuleItemOperator operator = 1; + + // The right hand side of the string rule item. For URLs or referrer URLs, + // the value can not contain illegal URL chars such as newlines, quotes, + // tabs, or parentheses. This field is required and must be populated when + // creating a new string rule item. + optional string value = 3; +} + +// User lists defined by combining two rules, left operand and right operand. +// There are two operators: AND where left operand and right operand have to be +// true; AND_NOT where left operand is true but right operand is false. +message CombinedRuleUserListInfo { + // Left operand of the combined rule. + // This field is required and must be populated when creating new combined + // rule based user list. + UserListRuleInfo left_operand = 1; + + // Right operand of the combined rule. + // This field is required and must be populated when creating new combined + // rule based user list. + UserListRuleInfo right_operand = 2; + + // Operator to connect the two operands. + // + // Required for creating a combined rule user list. + google.ads.googleads.v9.enums.UserListCombinedRuleOperatorEnum.UserListCombinedRuleOperator rule_operator = 3; +} + +// Visitors of a page during specific dates. +message DateSpecificRuleUserListInfo { + // Boolean rule that defines visitor of a page. + // + // Required for creating a date specific rule user list. + UserListRuleInfo rule = 1; + + // Start date of users visit. If set to 2000-01-01, then the list includes all + // users before end_date. The date's format should be YYYY-MM-DD. + // + // Required for creating a data specific rule user list. + optional string start_date = 4; + + // Last date of users visit. If set to 2037-12-30, then the list includes all + // users after start_date. The date's format should be YYYY-MM-DD. + // + // Required for creating a data specific rule user list. + optional string end_date = 5; +} + +// Visitors of a page. The page visit is defined by one boolean rule expression. +message ExpressionRuleUserListInfo { + // Boolean rule that defines this user list. The rule consists of a list of + // rule item groups and each rule item group consists of a list of rule items. + // All the rule item groups are ORed or ANDed together for evaluation based on + // rule.rule_type. + // + // Required for creating an expression rule user list. + UserListRuleInfo rule = 1; +} + +// Representation of a userlist that is generated by a rule. +message RuleBasedUserListInfo { + // The status of pre-population. The field is default to NONE if not set which + // means the previous users will not be considered. If set to REQUESTED, past + // site visitors or app users who match the list definition will be included + // in the list (works on the Display Network only). This will only + // add past users from within the last 30 days, depending on the + // list's membership duration and the date when the remarketing tag is added. + // The status will be updated to FINISHED once request is processed, or FAILED + // if the request fails. + google.ads.googleads.v9.enums.UserListPrepopulationStatusEnum.UserListPrepopulationStatus prepopulation_status = 1; + + // Subtypes of rule based user lists. + oneof rule_based_user_list { + // User lists defined by combining two rules. + // There are two operators: AND, where the left and right operands have to + // be true; AND_NOT where left operand is true but right operand is false. + CombinedRuleUserListInfo combined_rule_user_list = 2; + + // Visitors of a page during specific dates. The visiting periods are + // defined as follows: + // Between start_date (inclusive) and end_date (inclusive); + // Before end_date (exclusive) with start_date = 2000-01-01; + // After start_date (exclusive) with end_date = 2037-12-30. + DateSpecificRuleUserListInfo date_specific_rule_user_list = 3; + + // Visitors of a page. The page visit is defined by one boolean rule + // expression. + ExpressionRuleUserListInfo expression_rule_user_list = 4; + } +} + +// Represents a user list that is a custom combination of user lists. +message LogicalUserListInfo { + // Logical list rules that define this user list. The rules are defined as a + // logical operator (ALL/ANY/NONE) and a list of user lists. All the rules are + // ANDed when they are evaluated. + // + // Required for creating a logical user list. + repeated UserListLogicalRuleInfo rules = 1; +} + +// A user list logical rule. A rule has a logical operator (and/or/not) and a +// list of user lists as operands. +message UserListLogicalRuleInfo { + // The logical operator of the rule. + google.ads.googleads.v9.enums.UserListLogicalRuleOperatorEnum.UserListLogicalRuleOperator operator = 1; + + // The list of operands of the rule. + repeated LogicalUserListOperandInfo rule_operands = 2; +} + +// Operand of logical user list that consists of a user list. +message LogicalUserListOperandInfo { + // Resource name of a user list as an operand. + optional string user_list = 2; +} + +// User list targeting as a collection of conversions or remarketing actions. +message BasicUserListInfo { + // Actions associated with this user list. + repeated UserListActionInfo actions = 1; +} + +// Represents an action type used for building remarketing user lists. +message UserListActionInfo { + // Subtypes of user list action. + oneof user_list_action { + // A conversion action that's not generated from remarketing. + string conversion_action = 3; + + // A remarketing action. + string remarketing_action = 4; + } +} diff --git a/google/ads/googleads/v9/common/value.proto b/google/ads/googleads/v9/common/value.proto new file mode 100644 index 000000000..724a47259 --- /dev/null +++ b/google/ads/googleads/v9/common/value.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.common; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Common"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/common;common"; +option java_multiple_files = true; +option java_outer_classname = "ValueProto"; +option java_package = "com.google.ads.googleads.v9.common"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Common"; +option ruby_package = "Google::Ads::GoogleAds::V9::Common"; + +// Proto file describing value types. + +// A generic data container. +message Value { + // A value. + oneof value { + // A boolean. + bool boolean_value = 1; + + // An int64. + int64 int64_value = 2; + + // A float. + float float_value = 3; + + // A double. + double double_value = 4; + + // A string. + string string_value = 5; + } +} diff --git a/google/ads/googleads/v5/enums/BUILD.bazel b/google/ads/googleads/v9/enums/BUILD.bazel similarity index 100% rename from google/ads/googleads/v5/enums/BUILD.bazel rename to google/ads/googleads/v9/enums/BUILD.bazel diff --git a/google/ads/googleads/v9/enums/access_invitation_status.proto b/google/ads/googleads/v9/enums/access_invitation_status.proto new file mode 100644 index 000000000..802f147b6 --- /dev/null +++ b/google/ads/googleads/v9/enums/access_invitation_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccessInvitationStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing AccessInvitationStatus enum. + +// Container for enum for identifying the status of access invitation +message AccessInvitationStatusEnum { + // Possible access invitation status of a user + enum AccessInvitationStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The initial state of an invitation, before being acted upon by anyone. + PENDING = 2; + + // Invitation process was terminated by the email recipient. No new user was + // created. + DECLINED = 3; + + // Invitation URLs expired without being acted upon. No new user can be + // created. Invitations expire 20 days after creation. + EXPIRED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/access_reason.proto b/google/ads/googleads/v9/enums/access_reason.proto new file mode 100644 index 000000000..68c59f970 --- /dev/null +++ b/google/ads/googleads/v9/enums/access_reason.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccessReasonProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Indicates the way the resource such as user list is related to a user. +message AccessReasonEnum { + // Enum describing possible access reasons. + enum AccessReason { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The resource is owned by the user. + OWNED = 2; + + // The resource is shared to the user. + SHARED = 3; + + // The resource is licensed to the user. + LICENSED = 4; + + // The user subscribed to the resource. + SUBSCRIBED = 5; + + // The resource is accessible to the user. + AFFILIATED = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/access_role.proto b/google/ads/googleads/v9/enums/access_role.proto new file mode 100644 index 000000000..ca9f1198e --- /dev/null +++ b/google/ads/googleads/v9/enums/access_role.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccessRoleProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing possible access role for user. +message AccessRoleEnum { + // Possible access role of a user. + enum AccessRole { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Owns its account and can control the addition of other users. + ADMIN = 2; + + // Can modify campaigns, but can't affect other users. + STANDARD = 3; + + // Can view campaigns and account changes, but cannot make edits. + READ_ONLY = 4; + + // Role for \"email only\" access. Represents an email recipient rather than + // a true User entity. + EMAIL_ONLY = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/account_budget_proposal_status.proto b/google/ads/googleads/v9/enums/account_budget_proposal_status.proto new file mode 100644 index 000000000..b54a6fd3a --- /dev/null +++ b/google/ads/googleads/v9/enums/account_budget_proposal_status.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProposalStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing AccountBudgetProposal statuses. + +// Message describing AccountBudgetProposal statuses. +message AccountBudgetProposalStatusEnum { + // The possible statuses of an AccountBudgetProposal. + enum AccountBudgetProposalStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The proposal is pending approval. + PENDING = 2; + + // The proposal has been approved but the corresponding billing setup + // has not. This can occur for proposals that set up the first budget + // when signing up for billing or when performing a change of bill-to + // operation. + APPROVED_HELD = 3; + + // The proposal has been approved. + APPROVED = 4; + + // The proposal has been cancelled by the user. + CANCELLED = 5; + + // The proposal has been rejected by the user, e.g. by rejecting an + // acceptance email. + REJECTED = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/account_budget_proposal_type.proto b/google/ads/googleads/v9/enums/account_budget_proposal_type.proto new file mode 100644 index 000000000..c3c06e045 --- /dev/null +++ b/google/ads/googleads/v9/enums/account_budget_proposal_type.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProposalTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing AccountBudgetProposal types. + +// Message describing AccountBudgetProposal types. +message AccountBudgetProposalTypeEnum { + // The possible types of an AccountBudgetProposal. + enum AccountBudgetProposalType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Identifies a request to create a new budget. + CREATE = 2; + + // Identifies a request to edit an existing budget. + UPDATE = 3; + + // Identifies a request to end a budget that has already started. + END = 4; + + // Identifies a request to remove a budget that hasn't started yet. + REMOVE = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/account_budget_status.proto b/google/ads/googleads/v9/enums/account_budget_status.proto new file mode 100644 index 000000000..949d9ce54 --- /dev/null +++ b/google/ads/googleads/v9/enums/account_budget_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing AccountBudget statuses. + +// Message describing AccountBudget statuses. +message AccountBudgetStatusEnum { + // The possible statuses of an AccountBudget. + enum AccountBudgetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The account budget is pending approval. + PENDING = 2; + + // The account budget has been approved. + APPROVED = 3; + + // The account budget has been cancelled by the user. + CANCELLED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/account_link_status.proto b/google/ads/googleads/v9/enums/account_link_status.proto new file mode 100644 index 000000000..4a99583fe --- /dev/null +++ b/google/ads/googleads/v9/enums/account_link_status.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AccountLinkStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing possible statuses of an account link. +message AccountLinkStatusEnum { + // Describes the possible statuses for a link between a Google Ads customer + // and another account. + enum AccountLinkStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The link is enabled. + ENABLED = 2; + + // The link is removed/disabled. + REMOVED = 3; + + // The link to the other account has been requested. A user on the other + // account may now approve the link by setting the status to ENABLED. + REQUESTED = 4; + + // This link has been requested by a user on the other account. It may be + // approved by a user on this account by setting the status to ENABLED. + PENDING_APPROVAL = 5; + + // The link is rejected by the approver. + REJECTED = 6; + + // The link is revoked by the user who requested the link. + REVOKED = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_customizer_placeholder_field.proto b/google/ads/googleads/v9/enums/ad_customizer_placeholder_field.proto new file mode 100644 index 000000000..1aa0154ac --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_customizer_placeholder_field.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdCustomizerPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Ad Customizer placeholder fields. + +// Values for Ad Customizer placeholder fields. +message AdCustomizerPlaceholderFieldEnum { + // Possible values for Ad Customizers placeholder fields. + enum AdCustomizerPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: INT64. Integer value to be inserted. + INTEGER = 2; + + // Data Type: STRING. Price value to be inserted. + PRICE = 3; + + // Data Type: DATE_TIME. Date value to be inserted. + DATE = 4; + + // Data Type: STRING. String value to be inserted. + STRING = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_destination_type.proto b/google/ads/googleads/v9/enums/ad_destination_type.proto new file mode 100644 index 000000000..e1e454901 --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_destination_type.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdDestinationTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing ad destination types. + +// Container for enumeration of Google Ads destination types. +message AdDestinationTypeEnum { + // Enumerates Google Ads destination types + enum AdDestinationType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Ads that don't intend to drive users off from ads to other destinations + NOT_APPLICABLE = 2; + + // Website + WEBSITE = 3; + + // App Deep Link + APP_DEEP_LINK = 4; + + // iOS App Store or Play Store + APP_STORE = 5; + + // Call Dialer + PHONE_CALL = 6; + + // Map App + MAP_DIRECTIONS = 7; + + // Location Dedicated Page + LOCATION_LISTING = 8; + + // Text Message + MESSAGE = 9; + + // Lead Generation Form + LEAD_FORM = 10; + + // YouTube + YOUTUBE = 11; + + // Ad Destination for Conversions with keys unknown + UNMODELED_FOR_CONVERSIONS = 12; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_group_ad_rotation_mode.proto b/google/ads/googleads/v9/enums/ad_group_ad_rotation_mode.proto new file mode 100644 index 000000000..f7c997681 --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_group_ad_rotation_mode.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdRotationModeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing ad group ad rotation mode. + +// Container for enum describing possible ad rotation modes of ads within an +// ad group. +message AdGroupAdRotationModeEnum { + // The possible ad rotation modes of an ad group. + enum AdGroupAdRotationMode { + // The ad rotation mode has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Optimize ad group ads based on clicks or conversions. + OPTIMIZE = 2; + + // Rotate evenly forever. + ROTATE_FOREVER = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_group_ad_status.proto b/google/ads/googleads/v9/enums/ad_group_ad_status.proto new file mode 100644 index 000000000..ad90af3a0 --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_group_ad_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing ad group status. + +// Container for enum describing possible statuses of an AdGroupAd. +message AdGroupAdStatusEnum { + // The possible statuses of an AdGroupAd. + enum AdGroupAdStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The ad group ad is enabled. + ENABLED = 2; + + // The ad group ad is paused. + PAUSED = 3; + + // The ad group ad is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_group_criterion_approval_status.proto b/google/ads/googleads/v9/enums/ad_group_criterion_approval_status.proto new file mode 100644 index 000000000..a6d68b642 --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_group_criterion_approval_status.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionApprovalStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing approval status for the criterion. + +// Container for enum describing possible AdGroupCriterion approval statuses. +message AdGroupCriterionApprovalStatusEnum { + // Enumerates AdGroupCriterion approval statuses. + enum AdGroupCriterionApprovalStatus { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Approved. + APPROVED = 2; + + // Disapproved. + DISAPPROVED = 3; + + // Pending Review. + PENDING_REVIEW = 4; + + // Under review. + UNDER_REVIEW = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_group_criterion_status.proto b/google/ads/googleads/v9/enums/ad_group_criterion_status.proto new file mode 100644 index 000000000..61a753151 --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_group_criterion_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing AdGroupCriterion statuses. + +// Message describing AdGroupCriterion statuses. +message AdGroupCriterionStatusEnum { + // The possible statuses of an AdGroupCriterion. + enum AdGroupCriterionStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The ad group criterion is enabled. + ENABLED = 2; + + // The ad group criterion is paused. + PAUSED = 3; + + // The ad group criterion is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_group_status.proto b/google/ads/googleads/v9/enums/ad_group_status.proto new file mode 100644 index 000000000..a5a15bd53 --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_group_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing ad group status. + +// Container for enum describing possible statuses of an ad group. +message AdGroupStatusEnum { + // The possible statuses of an ad group. + enum AdGroupStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The ad group is enabled. + ENABLED = 2; + + // The ad group is paused. + PAUSED = 3; + + // The ad group is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_group_type.proto b/google/ads/googleads/v9/enums/ad_group_type.proto new file mode 100644 index 000000000..18d80cc3c --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_group_type.proto @@ -0,0 +1,96 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing ad group types. + +// Defines types of an ad group, specific to a particular campaign channel +// type. This type drives validations that restrict which entities can be +// added to the ad group. +message AdGroupTypeEnum { + // Enum listing the possible types of an ad group. + enum AdGroupType { + // The type has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The default ad group type for Search campaigns. + SEARCH_STANDARD = 2; + + // The default ad group type for Display campaigns. + DISPLAY_STANDARD = 3; + + // The ad group type for Shopping campaigns serving standard product ads. + SHOPPING_PRODUCT_ADS = 4; + + // The default ad group type for Hotel campaigns. + HOTEL_ADS = 6; + + // The type for ad groups in Smart Shopping campaigns. + SHOPPING_SMART_ADS = 7; + + // Short unskippable in-stream video ads. + VIDEO_BUMPER = 8; + + // TrueView (skippable) in-stream video ads. + VIDEO_TRUE_VIEW_IN_STREAM = 9; + + // TrueView in-display video ads. + VIDEO_TRUE_VIEW_IN_DISPLAY = 10; + + // Unskippable in-stream video ads. + VIDEO_NON_SKIPPABLE_IN_STREAM = 11; + + // Outstream video ads. + VIDEO_OUTSTREAM = 12; + + // Ad group type for Dynamic Search Ads ad groups. + SEARCH_DYNAMIC_ADS = 13; + + // The type for ad groups in Shopping Comparison Listing campaigns. + SHOPPING_COMPARISON_LISTING_ADS = 14; + + // The ad group type for Promoted Hotel ad groups. + PROMOTED_HOTEL_ADS = 15; + + // Video responsive ad groups. + VIDEO_RESPONSIVE = 16; + + // Video efficient reach ad groups. + VIDEO_EFFICIENT_REACH = 17; + + // Ad group type for Smart campaigns. + SMART_CAMPAIGN_ADS = 18; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_network_type.proto b/google/ads/googleads/v9/enums/ad_network_type.proto new file mode 100644 index 000000000..803115c76 --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_network_type.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdNetworkTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing ad network types. + +// Container for enumeration of Google Ads network types. +message AdNetworkTypeEnum { + // Enumerates Google Ads network types. + enum AdNetworkType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Google search. + SEARCH = 2; + + // Search partners. + SEARCH_PARTNERS = 3; + + // Display Network. + CONTENT = 4; + + // YouTube Search. + YOUTUBE_SEARCH = 5; + + // YouTube Videos + YOUTUBE_WATCH = 6; + + // Cross-network. + MIXED = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_serving_optimization_status.proto b/google/ads/googleads/v9/enums/ad_serving_optimization_status.proto new file mode 100644 index 000000000..76307f12c --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_serving_optimization_status.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdServingOptimizationStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing ad serving statuses. + +// Possible ad serving statuses of a campaign. +message AdServingOptimizationStatusEnum { + // Enum describing possible serving statuses. + enum AdServingOptimizationStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Ad serving is optimized based on CTR for the campaign. + OPTIMIZE = 2; + + // Ad serving is optimized based on CTR * Conversion for the campaign. If + // the campaign is not in the conversion optimizer bidding strategy, it will + // default to OPTIMIZED. + CONVERSION_OPTIMIZE = 3; + + // Ads are rotated evenly for 90 days, then optimized for clicks. + ROTATE = 4; + + // Show lower performing ads more evenly with higher performing ads, and do + // not optimize. + ROTATE_INDEFINITELY = 5; + + // Ad serving optimization status is not available. + UNAVAILABLE = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_strength.proto b/google/ads/googleads/v9/enums/ad_strength.proto new file mode 100644 index 000000000..1bb2aaa82 --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_strength.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdStrengthProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing ad strengths. + +// Container for enum describing possible ad strengths. +message AdStrengthEnum { + // Enum listing the possible ad strengths. + enum AdStrength { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The ad strength is currently pending. + PENDING = 2; + + // No ads could be generated. + NO_ADS = 3; + + // Poor strength. + POOR = 4; + + // Average strength. + AVERAGE = 5; + + // Good strength. + GOOD = 6; + + // Excellent strength. + EXCELLENT = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/ad_type.proto b/google/ads/googleads/v9/enums/ad_type.proto new file mode 100644 index 000000000..940604baa --- /dev/null +++ b/google/ads/googleads/v9/enums/ad_type.proto @@ -0,0 +1,131 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing the ad type. + +// Container for enum describing possible types of an ad. +message AdTypeEnum { + // The possible types of an ad. + enum AdType { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The ad is a text ad. + TEXT_AD = 2; + + // The ad is an expanded text ad. + EXPANDED_TEXT_AD = 3; + + // The ad is an expanded dynamic search ad. + EXPANDED_DYNAMIC_SEARCH_AD = 7; + + // The ad is a hotel ad. + HOTEL_AD = 8; + + // The ad is a Smart Shopping ad. + SHOPPING_SMART_AD = 9; + + // The ad is a standard Shopping ad. + SHOPPING_PRODUCT_AD = 10; + + // The ad is a video ad. + VIDEO_AD = 12; + + // This ad is a Gmail ad. + GMAIL_AD = 13; + + // This ad is an Image ad. + IMAGE_AD = 14; + + // The ad is a responsive search ad. + RESPONSIVE_SEARCH_AD = 15; + + // The ad is a legacy responsive display ad. + LEGACY_RESPONSIVE_DISPLAY_AD = 16; + + // The ad is an app ad. + APP_AD = 17; + + // The ad is a legacy app install ad. + LEGACY_APP_INSTALL_AD = 18; + + // The ad is a responsive display ad. + RESPONSIVE_DISPLAY_AD = 19; + + // The ad is a local ad. + LOCAL_AD = 20; + + // The ad is a display upload ad with the HTML5_UPLOAD_AD product type. + HTML5_UPLOAD_AD = 21; + + // The ad is a display upload ad with one of the DYNAMIC_HTML5_* product + // types. + DYNAMIC_HTML5_AD = 22; + + // The ad is an app engagement ad. + APP_ENGAGEMENT_AD = 23; + + // The ad is a Shopping Comparison Listing ad. + SHOPPING_COMPARISON_LISTING_AD = 24; + + // Video bumper ad. + VIDEO_BUMPER_AD = 25; + + // Video non-skippable in-stream ad. + VIDEO_NON_SKIPPABLE_IN_STREAM_AD = 26; + + // Video outstream ad. + VIDEO_OUTSTREAM_AD = 27; + + // Video TrueView in-display ad. + VIDEO_TRUEVIEW_DISCOVERY_AD = 28; + + // Video TrueView in-stream ad. + VIDEO_TRUEVIEW_IN_STREAM_AD = 29; + + // Video responsive ad. + VIDEO_RESPONSIVE_AD = 30; + + // Smart campaign ad. + SMART_CAMPAIGN_AD = 31; + + // Call ad. + CALL_AD = 32; + + // Universal app pre-registration ad. + APP_PRE_REGISTRATION_AD = 33; + } + + +} diff --git a/google/ads/googleads/v9/enums/advertising_channel_sub_type.proto b/google/ads/googleads/v9/enums/advertising_channel_sub_type.proto new file mode 100644 index 000000000..a18c75c09 --- /dev/null +++ b/google/ads/googleads/v9/enums/advertising_channel_sub_type.proto @@ -0,0 +1,102 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdvertisingChannelSubTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing advertising channel subtypes. + +// An immutable specialization of an Advertising Channel. +message AdvertisingChannelSubTypeEnum { + // Enum describing the different channel subtypes. + enum AdvertisingChannelSubType { + // Not specified. + UNSPECIFIED = 0; + + // Used as a return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Mobile app campaigns for Search. + SEARCH_MOBILE_APP = 2; + + // Mobile app campaigns for Display. + DISPLAY_MOBILE_APP = 3; + + // AdWords express campaigns for search. + SEARCH_EXPRESS = 4; + + // AdWords Express campaigns for display. + DISPLAY_EXPRESS = 5; + + // Smart Shopping campaigns. + SHOPPING_SMART_ADS = 6; + + // Gmail Ad campaigns. + DISPLAY_GMAIL_AD = 7; + + // Smart display campaigns. + DISPLAY_SMART_CAMPAIGN = 8; + + // Video Outstream campaigns. + VIDEO_OUTSTREAM = 9; + + // Video TrueView for Action campaigns. + VIDEO_ACTION = 10; + + // Video campaigns with non-skippable video ads. + VIDEO_NON_SKIPPABLE = 11; + + // App Campaign that allows you to easily promote your Android or iOS app + // across Google's top properties including Search, Play, YouTube, and the + // Google Display Network. + APP_CAMPAIGN = 12; + + // App Campaign for engagement, focused on driving re-engagement with the + // app across several of Google’s top properties including Search, YouTube, + // and the Google Display Network. + APP_CAMPAIGN_FOR_ENGAGEMENT = 13; + + // Campaigns specialized for local advertising. + LOCAL_CAMPAIGN = 14; + + // Shopping Comparison Listing campaigns. + SHOPPING_COMPARISON_LISTING_ADS = 15; + + // Standard Smart campaigns. + SMART_CAMPAIGN = 16; + + // Video campaigns with sequence video ads. + VIDEO_SEQUENCE = 17; + + // App Campaign for pre registration, specialized for advertising mobile + // app pre-registration, that targets multiple advertising channels across + // Google Play, YouTube and Display Network. See + // https://support.google.com/google-ads/answer/9441344 to learn more. + APP_CAMPAIGN_FOR_PRE_REGISTRATION = 18; + } + + +} diff --git a/google/ads/googleads/v9/enums/advertising_channel_type.proto b/google/ads/googleads/v9/enums/advertising_channel_type.proto new file mode 100644 index 000000000..dee11f139 --- /dev/null +++ b/google/ads/googleads/v9/enums/advertising_channel_type.proto @@ -0,0 +1,73 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AdvertisingChannelTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing advertising channel types + +// The channel type a campaign may target to serve on. +message AdvertisingChannelTypeEnum { + // Enum describing the various advertising channel types. + enum AdvertisingChannelType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Search Network. Includes display bundled, and Search+ campaigns. + SEARCH = 2; + + // Google Display Network only. + DISPLAY = 3; + + // Shopping campaigns serve on the shopping property + // and on google.com search results. + SHOPPING = 4; + + // Hotel Ads campaigns. + HOTEL = 5; + + // Video campaigns. + VIDEO = 6; + + // App Campaigns, and App Campaigns for Engagement, that run + // across multiple channels. + MULTI_CHANNEL = 7; + + // Local ads campaigns. + LOCAL = 8; + + // Smart campaigns. + SMART = 9; + + // Performance Max campaigns. + PERFORMANCE_MAX = 10; + } + + +} diff --git a/google/ads/googleads/v9/enums/affiliate_location_feed_relationship_type.proto b/google/ads/googleads/v9/enums/affiliate_location_feed_relationship_type.proto new file mode 100644 index 000000000..3bee231d0 --- /dev/null +++ b/google/ads/googleads/v9/enums/affiliate_location_feed_relationship_type.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AffiliateLocationFeedRelationshipTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing relation type for affiliate location feeds. + +// Container for enum describing possible values for a relationship type for +// an affiliate location feed. +message AffiliateLocationFeedRelationshipTypeEnum { + // Possible values for a relationship type for an affiliate location feed. + enum AffiliateLocationFeedRelationshipType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // General retailer relationship. + GENERAL_RETAILER = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/affiliate_location_placeholder_field.proto b/google/ads/googleads/v9/enums/affiliate_location_placeholder_field.proto new file mode 100644 index 000000000..45c431ef6 --- /dev/null +++ b/google/ads/googleads/v9/enums/affiliate_location_placeholder_field.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AffiliateLocationPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Affiliate Location placeholder fields. + +// Values for Affiliate Location placeholder fields. +message AffiliateLocationPlaceholderFieldEnum { + // Possible values for Affiliate Location placeholder fields. + enum AffiliateLocationPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The name of the business. + BUSINESS_NAME = 2; + + // Data Type: STRING. Line 1 of the business address. + ADDRESS_LINE_1 = 3; + + // Data Type: STRING. Line 2 of the business address. + ADDRESS_LINE_2 = 4; + + // Data Type: STRING. City of the business address. + CITY = 5; + + // Data Type: STRING. Province of the business address. + PROVINCE = 6; + + // Data Type: STRING. Postal code of the business address. + POSTAL_CODE = 7; + + // Data Type: STRING. Country code of the business address. + COUNTRY_CODE = 8; + + // Data Type: STRING. Phone number of the business. + PHONE_NUMBER = 9; + + // Data Type: STRING. Language code of the business. + LANGUAGE_CODE = 10; + + // Data Type: INT64. ID of the chain. + CHAIN_ID = 11; + + // Data Type: STRING. Name of the chain. + CHAIN_NAME = 12; + } + + +} diff --git a/google/ads/googleads/v9/enums/age_range_type.proto b/google/ads/googleads/v9/enums/age_range_type.proto new file mode 100644 index 000000000..22bf34849 --- /dev/null +++ b/google/ads/googleads/v9/enums/age_range_type.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AgeRangeTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing age range types. + +// Container for enum describing the type of demographic age ranges. +message AgeRangeTypeEnum { + // The type of demographic age ranges (e.g. between 18 and 24 years old). + enum AgeRangeType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Between 18 and 24 years old. + AGE_RANGE_18_24 = 503001; + + // Between 25 and 34 years old. + AGE_RANGE_25_34 = 503002; + + // Between 35 and 44 years old. + AGE_RANGE_35_44 = 503003; + + // Between 45 and 54 years old. + AGE_RANGE_45_54 = 503004; + + // Between 55 and 64 years old. + AGE_RANGE_55_64 = 503005; + + // 65 years old and beyond. + AGE_RANGE_65_UP = 503006; + + // Undetermined age range. + AGE_RANGE_UNDETERMINED = 503999; + } + + +} diff --git a/google/ads/googleads/v9/enums/app_campaign_app_store.proto b/google/ads/googleads/v9/enums/app_campaign_app_store.proto new file mode 100644 index 000000000..f018f24df --- /dev/null +++ b/google/ads/googleads/v9/enums/app_campaign_app_store.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppCampaignAppStoreProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing App Campaign app store. + +// The application store that distributes mobile applications. +message AppCampaignAppStoreEnum { + // Enum describing app campaign app store. + enum AppCampaignAppStore { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Apple app store. + APPLE_APP_STORE = 2; + + // Google play. + GOOGLE_APP_STORE = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/app_campaign_bidding_strategy_goal_type.proto b/google/ads/googleads/v9/enums/app_campaign_bidding_strategy_goal_type.proto new file mode 100644 index 000000000..b39873f3c --- /dev/null +++ b/google/ads/googleads/v9/enums/app_campaign_bidding_strategy_goal_type.proto @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppCampaignBiddingStrategyGoalTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing App Campaign bidding strategy goal types. + +// Container for enum describing goal towards which the bidding strategy of an +// app campaign should optimize for. +message AppCampaignBiddingStrategyGoalTypeEnum { + // Goal type of App campaign BiddingStrategy. + enum AppCampaignBiddingStrategyGoalType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Aim to maximize the number of app installs. The cpa bid is the + // target cost per install. + OPTIMIZE_INSTALLS_TARGET_INSTALL_COST = 2; + + // Aim to maximize the long term number of selected in-app conversions from + // app installs. The cpa bid is the target cost per install. + OPTIMIZE_IN_APP_CONVERSIONS_TARGET_INSTALL_COST = 3; + + // Aim to maximize the long term number of selected in-app conversions from + // app installs. The cpa bid is the target cost per in-app conversion. Note + // that the actual cpa may seem higher than the target cpa at first, since + // the long term conversions haven’t happened yet. + OPTIMIZE_IN_APP_CONVERSIONS_TARGET_CONVERSION_COST = 4; + + // Aim to maximize all conversions' value, i.e. install + selected in-app + // conversions while achieving or exceeding target return on advertising + // spend. + OPTIMIZE_RETURN_ON_ADVERTISING_SPEND = 5; + + // Aim to maximize the pre-registration of the app. + OPTIMIZE_PRE_REGISTRATION_CONVERSION_VOLUME = 6; + + // Aim to maximize installation of the app without target cost-per-install. + OPTIMIZE_INSTALLS_WITHOUT_TARGET_INSTALL_COST = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/app_payment_model_type.proto b/google/ads/googleads/v9/enums/app_payment_model_type.proto new file mode 100644 index 000000000..bf67202b3 --- /dev/null +++ b/google/ads/googleads/v9/enums/app_payment_model_type.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppPaymentModelTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing criteria types. + +// Represents a criterion for targeting paid apps. +message AppPaymentModelTypeEnum { + // Enum describing possible app payment models. + enum AppPaymentModelType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Represents paid-for apps. + PAID = 30; + } + + +} diff --git a/google/ads/googleads/v9/enums/app_placeholder_field.proto b/google/ads/googleads/v9/enums/app_placeholder_field.proto new file mode 100644 index 000000000..cb8a56600 --- /dev/null +++ b/google/ads/googleads/v9/enums/app_placeholder_field.proto @@ -0,0 +1,75 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing App placeholder fields. + +// Values for App placeholder fields. +message AppPlaceholderFieldEnum { + // Possible values for App placeholder fields. + enum AppPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: INT64. The application store that the target application + // belongs to. Valid values are: 1 = Apple iTunes Store; 2 = Google Play + // Store. + STORE = 2; + + // Data Type: STRING. The store-specific ID for the target application. + ID = 3; + + // Data Type: STRING. The visible text displayed when the link is rendered + // in an ad. + LINK_TEXT = 4; + + // Data Type: STRING. The destination URL of the in-app link. + URL = 5; + + // Data Type: URL_LIST. Final URLs for the in-app link when using Upgraded + // URLs. + FINAL_URLS = 6; + + // Data Type: URL_LIST. Final Mobile URLs for the in-app link when using + // Upgraded URLs. + FINAL_MOBILE_URLS = 7; + + // Data Type: URL. Tracking template for the in-app link when using Upgraded + // URLs. + TRACKING_URL = 8; + + // Data Type: STRING. Final URL suffix for the in-app link when using + // parallel tracking. + FINAL_URL_SUFFIX = 9; + } + + +} diff --git a/google/ads/googleads/v9/enums/app_store.proto b/google/ads/googleads/v9/enums/app_store.proto new file mode 100644 index 000000000..0cc57a067 --- /dev/null +++ b/google/ads/googleads/v9/enums/app_store.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppStoreProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing app store types for an app extension. + +// Container for enum describing app store type in an app extension. +message AppStoreEnum { + // App store type in an app extension. + enum AppStore { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Apple iTunes. + APPLE_ITUNES = 2; + + // Google Play. + GOOGLE_PLAY = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/app_url_operating_system_type.proto b/google/ads/googleads/v9/enums/app_url_operating_system_type.proto new file mode 100644 index 000000000..ca4df8b13 --- /dev/null +++ b/google/ads/googleads/v9/enums/app_url_operating_system_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AppUrlOperatingSystemTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing operating system for a deeplink app URL. + +// The possible OS types for a deeplink AppUrl. +message AppUrlOperatingSystemTypeEnum { + // Operating System + enum AppUrlOperatingSystemType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The Apple IOS operating system. + IOS = 2; + + // The Android operating system. + ANDROID = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/asset_field_type.proto b/google/ads/googleads/v9/enums/asset_field_type.proto new file mode 100644 index 000000000..84960311c --- /dev/null +++ b/google/ads/googleads/v9/enums/asset_field_type.proto @@ -0,0 +1,117 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetFieldTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing asset type. + +// Container for enum describing the possible placements of an asset. +message AssetFieldTypeEnum { + // Enum describing the possible placements of an asset. + enum AssetFieldType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The asset is linked for use as a headline. + HEADLINE = 2; + + // The asset is linked for use as a description. + DESCRIPTION = 3; + + // The asset is linked for use as mandatory ad text. + MANDATORY_AD_TEXT = 4; + + // The asset is linked for use as a marketing image. + MARKETING_IMAGE = 5; + + // The asset is linked for use as a media bundle. + MEDIA_BUNDLE = 6; + + // The asset is linked for use as a YouTube video. + YOUTUBE_VIDEO = 7; + + // The asset is linked to indicate that a hotels campaign is "Book on + // Google" enabled. + BOOK_ON_GOOGLE = 8; + + // The asset is linked for use as a Lead Form extension. + LEAD_FORM = 9; + + // The asset is linked for use as a Promotion extension. + PROMOTION = 10; + + // The asset is linked for use as a Callout extension. + CALLOUT = 11; + + // The asset is linked for use as a Structured Snippet extension. + STRUCTURED_SNIPPET = 12; + + // The asset is linked for use as a Sitelink extension. + SITELINK = 13; + + // The asset is linked for use as a Mobile App extension. + MOBILE_APP = 14; + + // The asset is linked for use as a Hotel Callout extension. + HOTEL_CALLOUT = 15; + + // The asset is linked for use as a Call extension. + CALL = 16; + + // The asset is linked for use as a Price extension. + PRICE = 24; + + // The asset is linked for use as a long headline. + LONG_HEADLINE = 17; + + // The asset is linked for use as a business name. + BUSINESS_NAME = 18; + + // The asset is linked for use as a square marketing image. + SQUARE_MARKETING_IMAGE = 19; + + // The asset is linked for use as a portrait marketing image. + PORTRAIT_MARKETING_IMAGE = 20; + + // The asset is linked for use as a logo. + LOGO = 21; + + // The asset is linked for use as a landscape logo. + LANDSCAPE_LOGO = 22; + + // The asset is linked for use as a non YouTube logo. + VIDEO = 23; + + // The asset is linked for use to select a call-to-action. + CALL_TO_ACTION_SELECTION = 25; + } + + +} diff --git a/google/ads/googleads/v9/enums/asset_group_status.proto b/google/ads/googleads/v9/enums/asset_group_status.proto new file mode 100644 index 000000000..15113c909 --- /dev/null +++ b/google/ads/googleads/v9/enums/asset_group_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetGroupStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing asset group status. + +// Container for enum describing possible statuses of an asset group. +message AssetGroupStatusEnum { + // The possible statuses of an asset group. + enum AssetGroupStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + UNKNOWN = 1; + + // The asset group is enabled. + ENABLED = 2; + + // The asset group is paused. + PAUSED = 3; + + // The asset group is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/asset_link_status.proto b/google/ads/googleads/v9/enums/asset_link_status.proto new file mode 100644 index 000000000..de012c76f --- /dev/null +++ b/google/ads/googleads/v9/enums/asset_link_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetLinkStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing status of an asset link. + +// Container for enum describing possible statuses of an asset link. +message AssetLinkStatusEnum { + // Enum describing statuses of an asset link. + enum AssetLinkStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Asset link is enabled. + ENABLED = 2; + + // Asset link has been removed. + REMOVED = 3; + + // Asset link is paused. + PAUSED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/asset_performance_label.proto b/google/ads/googleads/v9/enums/asset_performance_label.proto new file mode 100644 index 000000000..570d1f245 --- /dev/null +++ b/google/ads/googleads/v9/enums/asset_performance_label.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetPerformanceLabelProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing the performance label of an asset. + +// Container for enum describing the performance label of an asset. +message AssetPerformanceLabelEnum { + // Enum describing the possible performance labels of an asset, usually + // computed in the context of a linkage. + enum AssetPerformanceLabel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // This asset does not yet have any performance informantion. This may be + // because it is still under review. + PENDING = 2; + + // The asset has started getting impressions but the stats are not + // statistically significant enough to get an asset performance label. + LEARNING = 3; + + // Worst performing assets. + LOW = 4; + + // Good performing assets. + GOOD = 5; + + // Best performing assets. + BEST = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/asset_set_asset_status.proto b/google/ads/googleads/v9/enums/asset_set_asset_status.proto new file mode 100644 index 000000000..bcb815f12 --- /dev/null +++ b/google/ads/googleads/v9/enums/asset_set_asset_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetSetAssetStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing asset set status. + +// Container for enum describing possible statuses of an asset set asset. +message AssetSetAssetStatusEnum { + // The possible statuses of an asset set asset. + enum AssetSetAssetStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // This is a response-only value. + UNKNOWN = 1; + + // The asset set asset is enabled. + ENABLED = 2; + + // The asset set asset is removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/asset_set_link_status.proto b/google/ads/googleads/v9/enums/asset_set_link_status.proto new file mode 100644 index 000000000..9ef8c4fb1 --- /dev/null +++ b/google/ads/googleads/v9/enums/asset_set_link_status.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetSetLinkStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing asset set status. + +// Container for enum describing possible statuses of the linkage between asset +// set and its container. +message AssetSetLinkStatusEnum { + // The possible statuses of he linkage between asset set and its container. + enum AssetSetLinkStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // This is a response-only value. + UNKNOWN = 1; + + // The linkage between asset set and its container is enabled. + ENABLED = 2; + + // The linkage between asset set and its container is removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/asset_set_status.proto b/google/ads/googleads/v9/enums/asset_set_status.proto new file mode 100644 index 000000000..6faac36be --- /dev/null +++ b/google/ads/googleads/v9/enums/asset_set_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetSetStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing asset set status. + +// Container for enum describing possible statuses of an asset set. +message AssetSetStatusEnum { + // The possible statuses of an asset set. + enum AssetSetStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // This is a response-only value. + UNKNOWN = 1; + + // The asset set is enabled. + ENABLED = 2; + + // The asset set is removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/asset_set_type.proto b/google/ads/googleads/v9/enums/asset_set_type.proto new file mode 100644 index 000000000..b208ae2cc --- /dev/null +++ b/google/ads/googleads/v9/enums/asset_set_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetSetTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing asset set type. + +// Container for enum describing possible types of an asset set. +message AssetSetTypeEnum { + // Possible types of an asset set. + enum AssetSetType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Page feed. + PAGE_FEED = 2; + + // Dynamic education feed. + DYNAMIC_EDUCATION = 3; + + // Google Merchant Center asset set. + MERCHANT_CENTER_FEED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/asset_type.proto b/google/ads/googleads/v9/enums/asset_type.proto new file mode 100644 index 000000000..2966e4158 --- /dev/null +++ b/google/ads/googleads/v9/enums/asset_type.proto @@ -0,0 +1,95 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AssetTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing asset type. + +// Container for enum describing the types of asset. +message AssetTypeEnum { + // Enum describing possible types of asset. + enum AssetType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // YouTube video asset. + YOUTUBE_VIDEO = 2; + + // Media bundle asset. + MEDIA_BUNDLE = 3; + + // Image asset. + IMAGE = 4; + + // Text asset. + TEXT = 5; + + // Lead form asset. + LEAD_FORM = 6; + + // Book on Google asset. + BOOK_ON_GOOGLE = 7; + + // Promotion asset. + PROMOTION = 8; + + // Callout asset. + CALLOUT = 9; + + // Structured Snippet asset. + STRUCTURED_SNIPPET = 10; + + // Sitelink asset. + SITELINK = 11; + + // Page Feed asset. + PAGE_FEED = 12; + + // Dynamic Education asset. + DYNAMIC_EDUCATION = 13; + + // Mobile app asset. + MOBILE_APP = 14; + + // Hotel callout asset. + HOTEL_CALLOUT = 15; + + // Call asset. + CALL = 16; + + // Price asset. + PRICE = 17; + + // Call to action asset. + CALL_TO_ACTION = 18; + } + + +} diff --git a/google/ads/googleads/v9/enums/attribution_model.proto b/google/ads/googleads/v9/enums/attribution_model.proto new file mode 100644 index 000000000..c5c03b9e5 --- /dev/null +++ b/google/ads/googleads/v9/enums/attribution_model.proto @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "AttributionModelProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum representing the attribution model that describes how to +// distribute credit for a particular conversion across potentially many prior +// interactions. +message AttributionModelEnum { + // The attribution model that describes how to distribute credit for a + // particular conversion across potentially many prior interactions. + enum AttributionModel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Uses external attribution. + EXTERNAL = 100; + + // Attributes all credit for a conversion to its last click. + GOOGLE_ADS_LAST_CLICK = 101; + + // Attributes all credit for a conversion to its first click using Google + // Search attribution. + GOOGLE_SEARCH_ATTRIBUTION_FIRST_CLICK = 102; + + // Attributes credit for a conversion equally across all of its clicks using + // Google Search attribution. + GOOGLE_SEARCH_ATTRIBUTION_LINEAR = 103; + + // Attributes exponentially more credit for a conversion to its more recent + // clicks using Google Search attribution (half-life is 1 week). + GOOGLE_SEARCH_ATTRIBUTION_TIME_DECAY = 104; + + // Attributes 40% of the credit for a conversion to its first and last + // clicks. Remaining 20% is evenly distributed across all other clicks. This + // uses Google Search attribution. + GOOGLE_SEARCH_ATTRIBUTION_POSITION_BASED = 105; + + // Flexible model that uses machine learning to determine the appropriate + // distribution of credit among clicks using Google Search attribution. + GOOGLE_SEARCH_ATTRIBUTION_DATA_DRIVEN = 106; + } + + +} diff --git a/google/ads/googleads/v9/enums/batch_job_status.proto b/google/ads/googleads/v9/enums/batch_job_status.proto new file mode 100644 index 000000000..a3747c2e3 --- /dev/null +++ b/google/ads/googleads/v9/enums/batch_job_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BatchJobStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing batch job statuses. + +// Container for enum describing possible batch job statuses. +message BatchJobStatusEnum { + // The batch job statuses. + enum BatchJobStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The job is not currently running. + PENDING = 2; + + // The job is running. + RUNNING = 3; + + // The job is done. + DONE = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/bid_modifier_source.proto b/google/ads/googleads/v9/enums/bid_modifier_source.proto new file mode 100644 index 000000000..e30e7c6a0 --- /dev/null +++ b/google/ads/googleads/v9/enums/bid_modifier_source.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BidModifierSourceProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing bid modifier source. + +// Container for enum describing possible bid modifier sources. +message BidModifierSourceEnum { + // Enum describing possible bid modifier sources. + enum BidModifierSource { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The bid modifier is specified at the campaign level, on the campaign + // level criterion. + CAMPAIGN = 2; + + // The bid modifier is specified (overridden) at the ad group level. + AD_GROUP = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/bidding_source.proto b/google/ads/googleads/v9/enums/bidding_source.proto new file mode 100644 index 000000000..0d5b32be4 --- /dev/null +++ b/google/ads/googleads/v9/enums/bidding_source.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BiddingSourceProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing bidding sources. + +// Container for enum describing possible bidding sources. +message BiddingSourceEnum { + // Indicates where a bid or target is defined. For example, an ad group + // criterion may define a cpc bid directly, or it can inherit its cpc bid from + // the ad group. + enum BiddingSource { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Effective bid or target is inherited from campaign bidding strategy. + CAMPAIGN_BIDDING_STRATEGY = 5; + + // The bid or target is defined on the ad group. + AD_GROUP = 6; + + // The bid or target is defined on the ad group criterion. + AD_GROUP_CRITERION = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/bidding_strategy_status.proto b/google/ads/googleads/v9/enums/bidding_strategy_status.proto new file mode 100644 index 000000000..00e448b62 --- /dev/null +++ b/google/ads/googleads/v9/enums/bidding_strategy_status.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategyStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing BiddingStrategy statuses. + +// Message describing BiddingStrategy statuses. +message BiddingStrategyStatusEnum { + // The possible statuses of a BiddingStrategy. + enum BiddingStrategyStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The bidding strategy is enabled. + ENABLED = 2; + + // The bidding strategy is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/bidding_strategy_type.proto b/google/ads/googleads/v9/enums/bidding_strategy_type.proto new file mode 100644 index 000000000..47bd8d5cd --- /dev/null +++ b/google/ads/googleads/v9/enums/bidding_strategy_type.proto @@ -0,0 +1,119 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategyTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing bidding schemes. + +// Container for enum describing possible bidding strategy types. +message BiddingStrategyTypeEnum { + // Enum describing possible bidding strategy types. + enum BiddingStrategyType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Commission is an automatic bidding strategy in which the advertiser pays + // a certain portion of the conversion value. + COMMISSION = 16; + + // Enhanced CPC is a bidding strategy that raises bids for clicks + // that seem more likely to lead to a conversion and lowers + // them for clicks where they seem less likely. + ENHANCED_CPC = 2; + + // Used for return value only. Indicates that a campaign does not have a + // bidding strategy. This prevents the campaign from serving. For example, + // a campaign may be attached to a manager bidding strategy and the serving + // account is subsequently unlinked from the manager account. In this case + // the campaign will automatically be detached from the now inaccessible + // manager bidding strategy and transition to the INVALID bidding strategy + // type. + INVALID = 17; + + // Manual click based bidding where user pays per click. + MANUAL_CPC = 3; + + // Manual impression based bidding + // where user pays per thousand impressions. + MANUAL_CPM = 4; + + // A bidding strategy that pays a configurable amount per video view. + MANUAL_CPV = 13; + + // A bidding strategy that automatically maximizes number of conversions + // given a daily budget. + MAXIMIZE_CONVERSIONS = 10; + + // An automated bidding strategy that automatically sets bids to maximize + // revenue while spending your budget. + MAXIMIZE_CONVERSION_VALUE = 11; + + // Page-One Promoted bidding scheme, which sets max cpc bids to + // target impressions on page one or page one promoted slots on google.com. + // This enum value is deprecated. + PAGE_ONE_PROMOTED = 5; + + // Percent Cpc is bidding strategy where bids are a fraction of the + // advertised price for some good or service. + PERCENT_CPC = 12; + + // Target CPA is an automated bid strategy that sets bids + // to help get as many conversions as possible + // at the target cost-per-acquisition (CPA) you set. + TARGET_CPA = 6; + + // Target CPM is an automated bid strategy that sets bids to help get + // as many impressions as possible at the target cost per one thousand + // impressions (CPM) you set. + TARGET_CPM = 14; + + // An automated bidding strategy that sets bids so that a certain percentage + // of search ads are shown at the top of the first page (or other targeted + // location). + TARGET_IMPRESSION_SHARE = 15; + + // Target Outrank Share is an automated bidding strategy that sets bids + // based on the target fraction of auctions where the advertiser + // should outrank a specific competitor. + // This enum value is deprecated. + TARGET_OUTRANK_SHARE = 7; + + // Target ROAS is an automated bidding strategy + // that helps you maximize revenue while averaging + // a specific target Return On Average Spend (ROAS). + TARGET_ROAS = 8; + + // Target Spend is an automated bid strategy that sets your bids + // to help get as many clicks as possible within your budget. + TARGET_SPEND = 9; + } + + +} diff --git a/google/ads/googleads/v9/enums/billing_setup_status.proto b/google/ads/googleads/v9/enums/billing_setup_status.proto new file mode 100644 index 000000000..8f7a3bf8a --- /dev/null +++ b/google/ads/googleads/v9/enums/billing_setup_status.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BillingSetupStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing BillingSetup statuses. + +// Message describing BillingSetup statuses. +message BillingSetupStatusEnum { + // The possible statuses of a BillingSetup. + enum BillingSetupStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The billing setup is pending approval. + PENDING = 2; + + // The billing setup has been approved but the corresponding first budget + // has not. This can only occur for billing setups configured for monthly + // invoicing. + APPROVED_HELD = 3; + + // The billing setup has been approved. + APPROVED = 4; + + // The billing setup was cancelled by the user prior to approval. + CANCELLED = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/brand_safety_suitability.proto b/google/ads/googleads/v9/enums/brand_safety_suitability.proto new file mode 100644 index 000000000..ebfbb7c8f --- /dev/null +++ b/google/ads/googleads/v9/enums/brand_safety_suitability.proto @@ -0,0 +1,73 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BrandSafetySuitabilityProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing brand safety suitability settings. + +// Container for enum with 3-Tier brand safety suitability control. +message BrandSafetySuitabilityEnum { + // 3-Tier brand safety suitability control. + enum BrandSafetySuitability { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // This option lets you show ads across all inventory on YouTube and video + // partners that meet our standards for monetization. This option may be an + // appropriate choice for brands that want maximum access to the full + // breadth of videos eligible for ads, including, for example, videos that + // have strong profanity in the context of comedy or a documentary, or + // excessive violence as featured in video games. + EXPANDED_INVENTORY = 2; + + // This option lets you show ads across a wide range of content that's + // appropriate for most brands, such as popular music videos, documentaries, + // and movie trailers. The content you can show ads on is based on YouTube's + // advertiser-friendly content guidelines that take into account, for + // example, the strength or frequency of profanity, or the appropriateness + // of subject matter like sensitive events. Ads won't show, for example, on + // content with repeated strong profanity, strong sexual content, or graphic + // violence. + STANDARD_INVENTORY = 3; + + // This option lets you show ads on a reduced range of content that's + // appropriate for brands with particularly strict guidelines around + // inappropriate language and sexual suggestiveness; above and beyond what + // YouTube's advertiser-friendly content guidelines address. The videos + // accessible in this sensitive category meet heightened requirements, + // especially for inappropriate language and sexual suggestiveness. For + // example, your ads will be excluded from showing on some of YouTube's most + // popular music videos and other pop culture content across YouTube and + // Google video partners. + LIMITED_INVENTORY = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/budget_campaign_association_status.proto b/google/ads/googleads/v9/enums/budget_campaign_association_status.proto new file mode 100644 index 000000000..6b53fab6d --- /dev/null +++ b/google/ads/googleads/v9/enums/budget_campaign_association_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BudgetCampaignAssociationStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Budget and Campaign association status. + +// Message describing the status of the association between the Budget and the +// Campaign. +message BudgetCampaignAssociationStatusEnum { + // Possible statuses of the association between the Budget and the Campaign. + enum BudgetCampaignAssociationStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The campaign is currently using the budget. + ENABLED = 2; + + // The campaign is no longer using the budget. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/budget_delivery_method.proto b/google/ads/googleads/v9/enums/budget_delivery_method.proto new file mode 100644 index 000000000..bfc7aff41 --- /dev/null +++ b/google/ads/googleads/v9/enums/budget_delivery_method.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BudgetDeliveryMethodProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Budget delivery methods. + +// Message describing Budget delivery methods. A delivery method determines the +// rate at which the Budget is spent. +message BudgetDeliveryMethodEnum { + // Possible delivery methods of a Budget. + enum BudgetDeliveryMethod { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The budget server will throttle serving evenly across + // the entire time period. + STANDARD = 2; + + // The budget server will not throttle serving, + // and ads will serve as fast as possible. + ACCELERATED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/budget_period.proto b/google/ads/googleads/v9/enums/budget_period.proto new file mode 100644 index 000000000..924fd95b6 --- /dev/null +++ b/google/ads/googleads/v9/enums/budget_period.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BudgetPeriodProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Budget delivery methods. + +// Message describing Budget period. +message BudgetPeriodEnum { + // Possible period of a Budget. + enum BudgetPeriod { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Daily budget. + DAILY = 2; + + // Custom budget, added back in V5. + // Custom bugdet can be used with total_amount to specify lifetime budget + // limit. See: https://support.google.com/google-ads/answer/6385083 for more + // info. + CUSTOM_PERIOD = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/budget_status.proto b/google/ads/googleads/v9/enums/budget_status.proto new file mode 100644 index 000000000..49ae3eac8 --- /dev/null +++ b/google/ads/googleads/v9/enums/budget_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BudgetStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Budget statuses + +// Message describing a Budget status +message BudgetStatusEnum { + // Possible statuses of a Budget. + enum BudgetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Budget is enabled. + ENABLED = 2; + + // Budget is removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/budget_type.proto b/google/ads/googleads/v9/enums/budget_type.proto new file mode 100644 index 000000000..7c6a70b5a --- /dev/null +++ b/google/ads/googleads/v9/enums/budget_type.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "BudgetTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Budget types. + +// Describes Budget types. +message BudgetTypeEnum { + // Possible Budget types. + enum BudgetType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Budget type for standard Google Ads usage. + // Caps daily spend at two times the specified budget amount. + // Full details: https://support.google.com/google-ads/answer/6385083 + STANDARD = 2; + + // Budget type with a fixed cost-per-acquisition (conversion). + // Full details: https://support.google.com/google-ads/answer/7528254 + // + // This type is only supported by campaigns with + // AdvertisingChannelType.DISPLAY (excluding + // AdvertisingChannelSubType.DISPLAY_GMAIL), + // BiddingStrategyType.TARGET_CPA and PaymentMode.CONVERSIONS. + FIXED_CPA = 4; + + // Budget type for Smart Campaign. + // Full details: https://support.google.com/google-ads/answer/7653509 + // + // This type is only supported by campaigns with + // AdvertisingChannelType.SMART and + // AdvertisingChannelSubType.SMART_CAMPAIGN. + SMART_CAMPAIGN = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/call_conversion_reporting_state.proto b/google/ads/googleads/v9/enums/call_conversion_reporting_state.proto new file mode 100644 index 000000000..ff4629b8e --- /dev/null +++ b/google/ads/googleads/v9/enums/call_conversion_reporting_state.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CallConversionReportingStateProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing call conversion reporting state. + +// Container for enum describing possible data types for call conversion +// reporting state. +message CallConversionReportingStateEnum { + // Possible data types for a call conversion action state. + enum CallConversionReportingState { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Call conversion action is disabled. + DISABLED = 2; + + // Call conversion action will use call conversion type set at the + // account level. + USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION = 3; + + // Call conversion action will use call conversion type set at the resource + // (call only ads/call extensions) level. + USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/call_placeholder_field.proto b/google/ads/googleads/v9/enums/call_placeholder_field.proto new file mode 100644 index 000000000..f06246090 --- /dev/null +++ b/google/ads/googleads/v9/enums/call_placeholder_field.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CallPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Call placeholder fields. + +// Values for Call placeholder fields. +message CallPlaceholderFieldEnum { + // Possible values for Call placeholder fields. + enum CallPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The advertiser's phone number to append to the ad. + PHONE_NUMBER = 2; + + // Data Type: STRING. Uppercase two-letter country code of the advertiser's + // phone number. + COUNTRY_CODE = 3; + + // Data Type: BOOLEAN. Indicates whether call tracking is enabled. Default: + // true. + TRACKED = 4; + + // Data Type: INT64. The ID of an AdCallMetricsConversion object. This + // object contains the phoneCallDurationfield which is the minimum duration + // (in seconds) of a call to be considered a conversion. + CONVERSION_TYPE_ID = 5; + + // Data Type: STRING. Indicates whether this call extension uses its own + // call conversion setting or follows the account level setting. + // Valid values are: USE_ACCOUNT_LEVEL_CALL_CONVERSION_ACTION and + // USE_RESOURCE_LEVEL_CALL_CONVERSION_ACTION. + CONVERSION_REPORTING_STATE = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/call_to_action_type.proto b/google/ads/googleads/v9/enums/call_to_action_type.proto new file mode 100644 index 000000000..e8636caad --- /dev/null +++ b/google/ads/googleads/v9/enums/call_to_action_type.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CallToActionTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing call to action type. + +// Container for enum describing the call to action types. +message CallToActionTypeEnum { + // Enum describing possible types of call to action. + enum CallToActionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The call to action type is learn more. + LEARN_MORE = 2; + + // The call to action type is get quote. + GET_QUOTE = 3; + + // The call to action type is apply now. + APPLY_NOW = 4; + + // The call to action type is sign up. + SIGN_UP = 5; + + // The call to action type is contact us. + CONTACT_US = 6; + + // The call to action type is subscribe. + SUBSCRIBE = 7; + + // The call to action type is download. + DOWNLOAD = 8; + + // The call to action type is book now. + BOOK_NOW = 9; + + // The call to action type is shop now. + SHOP_NOW = 10; + } + + +} diff --git a/google/ads/googleads/v9/enums/call_tracking_display_location.proto b/google/ads/googleads/v9/enums/call_tracking_display_location.proto new file mode 100644 index 000000000..958e67bcb --- /dev/null +++ b/google/ads/googleads/v9/enums/call_tracking_display_location.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CallTrackingDisplayLocationProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing call tracking display location. + +// Container for enum describing possible call tracking display locations. +message CallTrackingDisplayLocationEnum { + // Possible call tracking display locations. + enum CallTrackingDisplayLocation { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The phone call placed from the ad. + AD = 2; + + // The phone call placed from the landing page ad points to. + LANDING_PAGE = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/call_type.proto b/google/ads/googleads/v9/enums/call_type.proto new file mode 100644 index 000000000..84aa8deba --- /dev/null +++ b/google/ads/googleads/v9/enums/call_type.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CallTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing call types. + +// Container for enum describing possible types of property from where the call +// was made. +message CallTypeEnum { + // Possible types of property from where the call was made. + enum CallType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The phone call was manually dialed. + MANUALLY_DIALED = 2; + + // The phone call was a mobile click-to-call. + HIGH_END_MOBILE_SEARCH = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/callout_placeholder_field.proto b/google/ads/googleads/v9/enums/callout_placeholder_field.proto new file mode 100644 index 000000000..461872447 --- /dev/null +++ b/google/ads/googleads/v9/enums/callout_placeholder_field.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CalloutPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Callout placeholder fields. + +// Values for Callout placeholder fields. +message CalloutPlaceholderFieldEnum { + // Possible values for Callout placeholder fields. + enum CalloutPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Callout text. + CALLOUT_TEXT = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/campaign_criterion_status.proto b/google/ads/googleads/v9/enums/campaign_criterion_status.proto new file mode 100644 index 000000000..a18fd14b0 --- /dev/null +++ b/google/ads/googleads/v9/enums/campaign_criterion_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing CampaignCriterion statuses. + +// Message describing CampaignCriterion statuses. +message CampaignCriterionStatusEnum { + // The possible statuses of a CampaignCriterion. + enum CampaignCriterionStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The campaign criterion is enabled. + ENABLED = 2; + + // The campaign criterion is paused. + PAUSED = 3; + + // The campaign criterion is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/campaign_draft_status.proto b/google/ads/googleads/v9/enums/campaign_draft_status.proto new file mode 100644 index 000000000..1bc2f8093 --- /dev/null +++ b/google/ads/googleads/v9/enums/campaign_draft_status.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignDraftStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing campaign draft status. + +// Container for enum describing possible statuses of a campaign draft. +message CampaignDraftStatusEnum { + // Possible statuses of a campaign draft. + enum CampaignDraftStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Initial state of the draft, the advertiser can start adding changes with + // no effect on serving. + PROPOSED = 2; + + // The campaign draft is removed. + REMOVED = 3; + + // Advertiser requested to promote draft's changes back into the original + // campaign. Advertiser can poll the long running operation returned by + // the promote action to see the status of the promotion. + PROMOTING = 5; + + // The process to merge changes in the draft back to the original campaign + // has completed successfully. + PROMOTED = 4; + + // The promotion failed after it was partially applied. Promote cannot be + // attempted again safely, so the issue must be corrected in the original + // campaign. + PROMOTE_FAILED = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/campaign_experiment_status.proto b/google/ads/googleads/v9/enums/campaign_experiment_status.proto new file mode 100644 index 000000000..3febb5644 --- /dev/null +++ b/google/ads/googleads/v9/enums/campaign_experiment_status.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing campaign experiment status. + +// Container for enum describing possible statuses of a campaign experiment. +message CampaignExperimentStatusEnum { + // Possible statuses of a campaign experiment. + enum CampaignExperimentStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The experiment campaign is being initialized. + INITIALIZING = 2; + + // Initialization of the experiment campaign failed. + INITIALIZATION_FAILED = 8; + + // The experiment campaign is fully initialized. The experiment is currently + // running, scheduled to run in the future or has ended based on its + // end date. An experiment with the status INITIALIZING will be updated to + // ENABLED when it is fully created. + ENABLED = 3; + + // The experiment campaign was graduated to a stand-alone + // campaign, existing independently of the experiment. + GRADUATED = 4; + + // The experiment is removed. + REMOVED = 5; + + // The experiment's changes are being applied to the original campaign. + // The long running operation returned by the promote method can be polled + // to see the status of the promotion. + PROMOTING = 6; + + // Promote of the experiment campaign failed. + PROMOTION_FAILED = 9; + + // The changes of the experiment are promoted to their original campaign. + PROMOTED = 7; + + // The experiment was ended manually. It did not end based on its end date. + ENDED_MANUALLY = 10; + } + + +} diff --git a/google/ads/googleads/v9/enums/campaign_experiment_traffic_split_type.proto b/google/ads/googleads/v9/enums/campaign_experiment_traffic_split_type.proto new file mode 100644 index 000000000..b7c01172e --- /dev/null +++ b/google/ads/googleads/v9/enums/campaign_experiment_traffic_split_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentTrafficSplitTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing campaign experiment traffic split type. + +// Container for enum describing campaign experiment traffic split type. +message CampaignExperimentTrafficSplitTypeEnum { + // Enum of strategies for splitting traffic between base and experiment + // campaigns in campaign experiment. + enum CampaignExperimentTrafficSplitType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Traffic is randomly assigned to the base or experiment arm for each + // query, independent of previous assignments for the same user. + RANDOM_QUERY = 2; + + // Traffic is split using cookies to keep users in the same arm (base or + // experiment) of the experiment. + COOKIE = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/campaign_experiment_type.proto b/google/ads/googleads/v9/enums/campaign_experiment_type.proto new file mode 100644 index 000000000..aa517f87b --- /dev/null +++ b/google/ads/googleads/v9/enums/campaign_experiment_type.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing campaign experiment type. + +// Container for enum describing campaign experiment type. +message CampaignExperimentTypeEnum { + // Indicates if this campaign is a normal campaign, + // a draft campaign, or an experiment campaign. + enum CampaignExperimentType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // This is a regular campaign. + BASE = 2; + + // This is a draft version of a campaign. + // It has some modifications from a base campaign, + // but it does not serve or accrue metrics. + DRAFT = 3; + + // This is an experiment version of a campaign. + // It has some modifications from a base campaign, + // and a percentage of traffic is being diverted + // from the BASE campaign to this experiment campaign. + EXPERIMENT = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/campaign_serving_status.proto b/google/ads/googleads/v9/enums/campaign_serving_status.proto new file mode 100644 index 000000000..6209eb0ed --- /dev/null +++ b/google/ads/googleads/v9/enums/campaign_serving_status.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignServingStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Campaign serving statuses. + +// Message describing Campaign serving statuses. +message CampaignServingStatusEnum { + // Possible serving statuses of a campaign. + enum CampaignServingStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Serving. + SERVING = 2; + + // None. + NONE = 3; + + // Ended. + ENDED = 4; + + // Pending. + PENDING = 5; + + // Suspended. + SUSPENDED = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/campaign_shared_set_status.proto b/google/ads/googleads/v9/enums/campaign_shared_set_status.proto new file mode 100644 index 000000000..6aa44d8cd --- /dev/null +++ b/google/ads/googleads/v9/enums/campaign_shared_set_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSharedSetStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing campaign shared set statuses. + +// Container for enum describing types of campaign shared set statuses. +message CampaignSharedSetStatusEnum { + // Enum listing the possible campaign shared set statuses. + enum CampaignSharedSetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The campaign shared set is enabled. + ENABLED = 2; + + // The campaign shared set is removed and can no longer be used. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/campaign_status.proto b/google/ads/googleads/v9/enums/campaign_status.proto new file mode 100644 index 000000000..4d9ad040c --- /dev/null +++ b/google/ads/googleads/v9/enums/campaign_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CampaignStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing campaign status. + +// Container for enum describing possible statuses of a campaign. +message CampaignStatusEnum { + // Possible statuses of a campaign. + enum CampaignStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Campaign is currently serving ads depending on budget information. + ENABLED = 2; + + // Campaign has been paused by the user. + PAUSED = 3; + + // Campaign has been removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/change_client_type.proto b/google/ads/googleads/v9/enums/change_client_type.proto new file mode 100644 index 000000000..2fb7f3897 --- /dev/null +++ b/google/ads/googleads/v9/enums/change_client_type.proto @@ -0,0 +1,87 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ChangeClientTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing the sources that the change event resource was +// made through. + +// Container for enum describing the sources that the change event resource +// was made through. +message ChangeClientTypeEnum { + // The source that the change_event resource was made through. + enum ChangeClientType { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified client type + // unknown in this version. + UNKNOWN = 1; + + // Changes made through the "ads.google.com". + // For example, changes made through campaign management. + GOOGLE_ADS_WEB_CLIENT = 2; + + // Changes made through Google Ads automated rules. + GOOGLE_ADS_AUTOMATED_RULE = 3; + + // Changes made through Google Ads scripts. + GOOGLE_ADS_SCRIPTS = 4; + + // Changes made by Google Ads bulk upload. + GOOGLE_ADS_BULK_UPLOAD = 5; + + // Changes made by Google Ads API. + GOOGLE_ADS_API = 6; + + // Changes made by Google Ads Editor. + GOOGLE_ADS_EDITOR = 7; + + // Changes made by Google Ads mobile app. + GOOGLE_ADS_MOBILE_APP = 8; + + // Changes made through Google Ads recommendations. + GOOGLE_ADS_RECOMMENDATIONS = 9; + + // Changes made through Search Ads 360 Sync. + SEARCH_ADS_360_SYNC = 10; + + // Changes made through Search Ads 360 Post. + SEARCH_ADS_360_POST = 11; + + // Changes made through internal tools. + // For example, when a user sets a URL template on an entity like a + // Campaign, it's automatically wrapped with the SA360 Clickserver URL. + INTERNAL_TOOL = 12; + + // Types of changes that are not categorized, for example, + // changes made by coupon redemption through Google Ads. + OTHER = 13; + } + + +} diff --git a/google/ads/googleads/v9/enums/change_event_resource_type.proto b/google/ads/googleads/v9/enums/change_event_resource_type.proto new file mode 100644 index 000000000..eac06181c --- /dev/null +++ b/google/ads/googleads/v9/enums/change_event_resource_type.proto @@ -0,0 +1,94 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ChangeEventResourceTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing the resource types the ChangeEvent resource supports. + +// Container for enum describing supported resource types for the ChangeEvent +// resource. +message ChangeEventResourceTypeEnum { + // Enum listing the resource types support by the ChangeEvent resource. + enum ChangeEventResourceType { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified resource unknown + // in this version. + UNKNOWN = 1; + + // An Ad resource change. + AD = 2; + + // An AdGroup resource change. + AD_GROUP = 3; + + // An AdGroupCriterion resource change. + AD_GROUP_CRITERION = 4; + + // A Campaign resource change. + CAMPAIGN = 5; + + // A CampaignBudget resource change. + CAMPAIGN_BUDGET = 6; + + // An AdGroupBidModifier resource change. + AD_GROUP_BID_MODIFIER = 7; + + // A CampaignCriterion resource change. + CAMPAIGN_CRITERION = 8; + + // A Feed resource change. + FEED = 9; + + // A FeedItem resource change. + FEED_ITEM = 10; + + // A CampaignFeed resource change. + CAMPAIGN_FEED = 11; + + // An AdGroupFeed resource change. + AD_GROUP_FEED = 12; + + // An AdGroupAd resource change. + AD_GROUP_AD = 13; + + // An Asset resource change. + ASSET = 14; + + // A CustomerAsset resource change. + CUSTOMER_ASSET = 15; + + // A CampaignAsset resource change. + CAMPAIGN_ASSET = 16; + + // An AdGroupAsset resource change. + AD_GROUP_ASSET = 17; + } + + +} diff --git a/google/ads/googleads/v9/enums/change_status_operation.proto b/google/ads/googleads/v9/enums/change_status_operation.proto new file mode 100644 index 000000000..c1b95cdb1 --- /dev/null +++ b/google/ads/googleads/v9/enums/change_status_operation.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ChangeStatusOperationProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing the change status operations. + +// Container for enum describing operations for the ChangeStatus resource. +message ChangeStatusOperationEnum { + // Status of the changed resource + enum ChangeStatusOperation { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified resource unknown + // in this version. + UNKNOWN = 1; + + // The resource was created. + ADDED = 2; + + // The resource was modified. + CHANGED = 3; + + // The resource was removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/change_status_resource_type.proto b/google/ads/googleads/v9/enums/change_status_resource_type.proto new file mode 100644 index 000000000..51d8472b8 --- /dev/null +++ b/google/ads/googleads/v9/enums/change_status_resource_type.proto @@ -0,0 +1,94 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ChangeStatusResourceTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing the resource types the ChangeStatus resource supports. + +// Container for enum describing supported resource types for the ChangeStatus +// resource. +message ChangeStatusResourceTypeEnum { + // Enum listing the resource types support by the ChangeStatus resource. + enum ChangeStatusResourceType { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified resource unknown + // in this version. + UNKNOWN = 1; + + // An AdGroup resource change. + AD_GROUP = 3; + + // An AdGroupAd resource change. + AD_GROUP_AD = 4; + + // An AdGroupCriterion resource change. + AD_GROUP_CRITERION = 5; + + // A Campaign resource change. + CAMPAIGN = 6; + + // A CampaignCriterion resource change. + CAMPAIGN_CRITERION = 7; + + // A Feed resource change. + FEED = 9; + + // A FeedItem resource change. + FEED_ITEM = 10; + + // An AdGroupFeed resource change. + AD_GROUP_FEED = 11; + + // A CampaignFeed resource change. + CAMPAIGN_FEED = 12; + + // An AdGroupBidModifier resource change. + AD_GROUP_BID_MODIFIER = 13; + + // A SharedSet resource change. + SHARED_SET = 14; + + // A CampaignSharedSet resource change. + CAMPAIGN_SHARED_SET = 15; + + // An Asset resource change. + ASSET = 16; + + // A CustomerAsset resource change. + CUSTOMER_ASSET = 17; + + // A CampaignAsset resource change. + CAMPAIGN_ASSET = 18; + + // An AdGroupAsset resource change. + AD_GROUP_ASSET = 19; + } + + +} diff --git a/google/ads/googleads/v9/enums/click_type.proto b/google/ads/googleads/v9/enums/click_type.proto new file mode 100644 index 000000000..088fd7b18 --- /dev/null +++ b/google/ads/googleads/v9/enums/click_type.proto @@ -0,0 +1,203 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ClickTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing click types. + +// Container for enumeration of Google Ads click types. +message ClickTypeEnum { + // Enumerates Google Ads click types. + enum ClickType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // App engagement ad deep link. + APP_DEEPLINK = 2; + + // Breadcrumbs. + BREADCRUMBS = 3; + + // Broadband Plan. + BROADBAND_PLAN = 4; + + // Manually dialed phone calls. + CALL_TRACKING = 5; + + // Phone calls. + CALLS = 6; + + // Click on engagement ad. + CLICK_ON_ENGAGEMENT_AD = 7; + + // Driving direction. + GET_DIRECTIONS = 8; + + // Get location details. + LOCATION_EXPANSION = 9; + + // Call. + LOCATION_FORMAT_CALL = 10; + + // Directions. + LOCATION_FORMAT_DIRECTIONS = 11; + + // Image(s). + LOCATION_FORMAT_IMAGE = 12; + + // Go to landing page. + LOCATION_FORMAT_LANDING_PAGE = 13; + + // Map. + LOCATION_FORMAT_MAP = 14; + + // Go to store info. + LOCATION_FORMAT_STORE_INFO = 15; + + // Text. + LOCATION_FORMAT_TEXT = 16; + + // Mobile phone calls. + MOBILE_CALL_TRACKING = 17; + + // Print offer. + OFFER_PRINTS = 18; + + // Other. + OTHER = 19; + + // Product plusbox offer. + PRODUCT_EXTENSION_CLICKS = 20; + + // Shopping - Product - Online. + PRODUCT_LISTING_AD_CLICKS = 21; + + // Sitelink. + SITELINKS = 22; + + // Show nearby locations. + STORE_LOCATOR = 23; + + // Headline. + URL_CLICKS = 25; + + // App store. + VIDEO_APP_STORE_CLICKS = 26; + + // Call-to-Action overlay. + VIDEO_CALL_TO_ACTION_CLICKS = 27; + + // Cards. + VIDEO_CARD_ACTION_HEADLINE_CLICKS = 28; + + // End cap. + VIDEO_END_CAP_CLICKS = 29; + + // Website. + VIDEO_WEBSITE_CLICKS = 30; + + // Visual Sitelinks. + VISUAL_SITELINKS = 31; + + // Wireless Plan. + WIRELESS_PLAN = 32; + + // Shopping - Product - Local. + PRODUCT_LISTING_AD_LOCAL = 33; + + // Shopping - Product - MultiChannel Local. + PRODUCT_LISTING_AD_MULTICHANNEL_LOCAL = 34; + + // Shopping - Product - MultiChannel Online. + PRODUCT_LISTING_AD_MULTICHANNEL_ONLINE = 35; + + // Shopping - Product - Coupon. + PRODUCT_LISTING_ADS_COUPON = 36; + + // Shopping - Product - Sell on Google. + PRODUCT_LISTING_AD_TRANSACTABLE = 37; + + // Shopping - Product - App engagement ad deep link. + PRODUCT_AD_APP_DEEPLINK = 38; + + // Shopping - Showcase - Category. + SHOWCASE_AD_CATEGORY_LINK = 39; + + // Shopping - Showcase - Local storefront. + SHOWCASE_AD_LOCAL_STOREFRONT_LINK = 40; + + // Shopping - Showcase - Online product. + SHOWCASE_AD_ONLINE_PRODUCT_LINK = 42; + + // Shopping - Showcase - Local product. + SHOWCASE_AD_LOCAL_PRODUCT_LINK = 43; + + // Promotion Extension. + PROMOTION_EXTENSION = 44; + + // Ad Headline. + SWIPEABLE_GALLERY_AD_HEADLINE = 45; + + // Swipes. + SWIPEABLE_GALLERY_AD_SWIPES = 46; + + // See More. + SWIPEABLE_GALLERY_AD_SEE_MORE = 47; + + // Sitelink 1. + SWIPEABLE_GALLERY_AD_SITELINK_ONE = 48; + + // Sitelink 2. + SWIPEABLE_GALLERY_AD_SITELINK_TWO = 49; + + // Sitelink 3. + SWIPEABLE_GALLERY_AD_SITELINK_THREE = 50; + + // Sitelink 4. + SWIPEABLE_GALLERY_AD_SITELINK_FOUR = 51; + + // Sitelink 5. + SWIPEABLE_GALLERY_AD_SITELINK_FIVE = 52; + + // Hotel price. + HOTEL_PRICE = 53; + + // Price Extension. + PRICE_EXTENSION = 54; + + // Book on Google hotel room selection. + HOTEL_BOOK_ON_GOOGLE_ROOM_SELECTION = 55; + + // Shopping - Comparison Listing. + SHOPPING_COMPARISON_LISTING = 56; + } + + +} diff --git a/google/ads/googleads/v9/enums/combined_audience_status.proto b/google/ads/googleads/v9/enums/combined_audience_status.proto new file mode 100644 index 000000000..922355b7f --- /dev/null +++ b/google/ads/googleads/v9/enums/combined_audience_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CombinedAudienceStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing combined audience status. + +// The status of combined audience. +message CombinedAudienceStatusEnum { + // Enum containing possible combined audience status types. + enum CombinedAudienceStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Enabled status - combined audience is enabled and can be targeted. + ENABLED = 2; + + // Removed status - combined audience is removed and cannot be used for + // targeting. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/content_label_type.proto b/google/ads/googleads/v9/enums/content_label_type.proto new file mode 100644 index 000000000..2b3acf689 --- /dev/null +++ b/google/ads/googleads/v9/enums/content_label_type.proto @@ -0,0 +1,89 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ContentLabelTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing content label types. + +// Container for enum describing content label types in ContentLabel. +message ContentLabelTypeEnum { + // Enum listing the content label types supported by ContentLabel criterion. + enum ContentLabelType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Sexually suggestive content. + SEXUALLY_SUGGESTIVE = 2; + + // Below the fold placement. + BELOW_THE_FOLD = 3; + + // Parked domain. + PARKED_DOMAIN = 4; + + // Juvenile, gross & bizarre content. + JUVENILE = 6; + + // Profanity & rough language. + PROFANITY = 7; + + // Death & tragedy. + TRAGEDY = 8; + + // Video. + VIDEO = 9; + + // Content rating: G. + VIDEO_RATING_DV_G = 10; + + // Content rating: PG. + VIDEO_RATING_DV_PG = 11; + + // Content rating: T. + VIDEO_RATING_DV_T = 12; + + // Content rating: MA. + VIDEO_RATING_DV_MA = 13; + + // Content rating: not yet rated. + VIDEO_NOT_YET_RATED = 14; + + // Embedded video. + EMBEDDED_VIDEO = 15; + + // Live streaming video. + LIVE_STREAMING_VIDEO = 16; + + // Sensitive social issues. + SOCIAL_ISSUES = 17; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_action_category.proto b/google/ads/googleads/v9/enums/conversion_action_category.proto new file mode 100644 index 000000000..e94bdbd84 --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_action_category.proto @@ -0,0 +1,106 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionCategoryProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing the category of conversions that are associated +// with a ConversionAction. +message ConversionActionCategoryEnum { + // The category of conversions that are associated with a ConversionAction. + enum ConversionActionCategory { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Default category. + DEFAULT = 2; + + // User visiting a page. + PAGE_VIEW = 3; + + // Purchase, sales, or "order placed" event. + PURCHASE = 4; + + // Signup user action. + SIGNUP = 5; + + // Lead-generating action. + LEAD = 6; + + // Software download action (as for an app). + DOWNLOAD = 7; + + // The addition of items to a shopping cart or bag on an advertiser site. + ADD_TO_CART = 8; + + // When someone enters the checkout flow on an advertiser site. + BEGIN_CHECKOUT = 9; + + // The start of a paid subscription for a product or service. + SUBSCRIBE_PAID = 10; + + // A call to indicate interest in an advertiser's offering. + PHONE_CALL_LEAD = 11; + + // A lead conversion imported from an external source into Google Ads. + IMPORTED_LEAD = 12; + + // A submission of a form on an advertiser site indicating business + // interest. + SUBMIT_LEAD_FORM = 13; + + // A booking of an appointment with an advertiser's business. + BOOK_APPOINTMENT = 14; + + // A quote or price estimate request. + REQUEST_QUOTE = 15; + + // A search for an advertiser's business location with intention to visit. + GET_DIRECTIONS = 16; + + // A click to an advertiser's partner's site. + OUTBOUND_CLICK = 17; + + // A call, SMS, email, chat or other type of contact to an advertiser. + CONTACT = 18; + + // A website engagement event such as long site time or a Google Analytics + // (GA) Smart Goal. Intended to be used for GA, Firebase, GA Gold goal + // imports. + ENGAGEMENT = 19; + + // A visit to a physical store location. + STORE_VISIT = 20; + + // A sale occurring in a physical store. + STORE_SALE = 21; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_action_counting_type.proto b/google/ads/googleads/v9/enums/conversion_action_counting_type.proto new file mode 100644 index 000000000..8a243ba4d --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_action_counting_type.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionCountingTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion action counting type. + +// Container for enum describing the conversion deduplication mode for +// conversion optimizer. +message ConversionActionCountingTypeEnum { + // Indicates how conversions for this action will be counted. For more + // information, see https://support.google.com/google-ads/answer/3438531. + enum ConversionActionCountingType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Count only one conversion per click. + ONE_PER_CLICK = 2; + + // Count all conversions per click. + MANY_PER_CLICK = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_action_status.proto b/google/ads/googleads/v9/enums/conversion_action_status.proto new file mode 100644 index 000000000..5e3de168f --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_action_status.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion action status. + +// Container for enum describing possible statuses of a conversion action. +message ConversionActionStatusEnum { + // Possible statuses of a conversion action. + enum ConversionActionStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversions will be recorded. + ENABLED = 2; + + // Conversions will not be recorded. + REMOVED = 3; + + // Conversions will not be recorded and the conversion action will not + // appear in the UI. + HIDDEN = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_action_type.proto b/google/ads/googleads/v9/enums/conversion_action_type.proto new file mode 100644 index 000000000..b2e34666d --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_action_type.proto @@ -0,0 +1,174 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion action type. + +// Container for enum describing possible types of a conversion action. +message ConversionActionTypeEnum { + // Possible types of a conversion action. + enum ConversionActionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversions that occur when a user clicks on an ad's call extension. + AD_CALL = 2; + + // Conversions that occur when a user on a mobile device clicks a phone + // number. + CLICK_TO_CALL = 3; + + // Conversions that occur when a user downloads a mobile app from the Google + // Play Store. + GOOGLE_PLAY_DOWNLOAD = 4; + + // Conversions that occur when a user makes a purchase in an app through + // Android billing. + GOOGLE_PLAY_IN_APP_PURCHASE = 5; + + // Call conversions that are tracked by the advertiser and uploaded. + UPLOAD_CALLS = 6; + + // Conversions that are tracked by the advertiser and uploaded with + // attributed clicks. + UPLOAD_CLICKS = 7; + + // Conversions that occur on a webpage. + WEBPAGE = 8; + + // Conversions that occur when a user calls a dynamically-generated phone + // number from an advertiser's website. + WEBSITE_CALL = 9; + + // Store Sales conversion based on first-party or third-party merchant + // data uploads. + // Only customers on the allowlist can use store sales direct upload types. + STORE_SALES_DIRECT_UPLOAD = 10; + + // Store Sales conversion based on first-party or third-party merchant + // data uploads and/or from in-store purchases using cards from payment + // networks. + // Only customers on the allowlist can use store sales types. + // Read only. + STORE_SALES = 11; + + // Android app first open conversions tracked via Firebase. + FIREBASE_ANDROID_FIRST_OPEN = 12; + + // Android app in app purchase conversions tracked via Firebase. + FIREBASE_ANDROID_IN_APP_PURCHASE = 13; + + // Android app custom conversions tracked via Firebase. + FIREBASE_ANDROID_CUSTOM = 14; + + // iOS app first open conversions tracked via Firebase. + FIREBASE_IOS_FIRST_OPEN = 15; + + // iOS app in app purchase conversions tracked via Firebase. + FIREBASE_IOS_IN_APP_PURCHASE = 16; + + // iOS app custom conversions tracked via Firebase. + FIREBASE_IOS_CUSTOM = 17; + + // Android app first open conversions tracked via Third Party App Analytics. + THIRD_PARTY_APP_ANALYTICS_ANDROID_FIRST_OPEN = 18; + + // Android app in app purchase conversions tracked via Third Party App + // Analytics. + THIRD_PARTY_APP_ANALYTICS_ANDROID_IN_APP_PURCHASE = 19; + + // Android app custom conversions tracked via Third Party App Analytics. + THIRD_PARTY_APP_ANALYTICS_ANDROID_CUSTOM = 20; + + // iOS app first open conversions tracked via Third Party App Analytics. + THIRD_PARTY_APP_ANALYTICS_IOS_FIRST_OPEN = 21; + + // iOS app in app purchase conversions tracked via Third Party App + // Analytics. + THIRD_PARTY_APP_ANALYTICS_IOS_IN_APP_PURCHASE = 22; + + // iOS app custom conversions tracked via Third Party App Analytics. + THIRD_PARTY_APP_ANALYTICS_IOS_CUSTOM = 23; + + // Conversions that occur when a user pre-registers a mobile app from the + // Google Play Store. Read only. + ANDROID_APP_PRE_REGISTRATION = 24; + + // Conversions that track all Google Play downloads which aren't tracked + // by an app-specific type. Read only. + ANDROID_INSTALLS_ALL_OTHER_APPS = 25; + + // Floodlight activity that counts the number of times that users have + // visited a particular webpage after seeing or clicking on one of + // an advertiser's ads. Read only. + FLOODLIGHT_ACTION = 26; + + // Floodlight activity that tracks the number of sales made or the number + // of items purchased. Can also capture the total value of each sale. + // Read only. + FLOODLIGHT_TRANSACTION = 27; + + // Conversions that track local actions from Google's products and + // services after interacting with an ad. Read only. + GOOGLE_HOSTED = 28; + + // Conversions reported when a user submits a lead form. Read only. + LEAD_FORM_SUBMIT = 29; + + // Conversions that come from Salesforce. Read only. + SALESFORCE = 30; + + // Conversions imported from Search Ads 360 Floodlight data. Read only. + SEARCH_ADS_360 = 31; + + // Call conversions that occur on Smart campaign Ads without call tracking + // setup, using Smart campaign custom criteria. Read only. + SMART_CAMPAIGN_AD_CLICKS_TO_CALL = 32; + + // The user clicks on a call element within Google Maps. Smart campaign + // only. Read only. + SMART_CAMPAIGN_MAP_CLICKS_TO_CALL = 33; + + // The user requests directions to a business location within Google Maps. + // Smart campaign only. Read only. + SMART_CAMPAIGN_MAP_DIRECTIONS = 34; + + // Call conversions that occur on Smart campaign Ads with call tracking + // setup, using Smart campaign custom criteria. Read only. + SMART_CAMPAIGN_TRACKED_CALLS = 35; + + // Conversions that occur when a user visits an advertiser's retail store. + // Read only. + STORE_VISITS = 36; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_adjustment_type.proto b/google/ads/googleads/v9/enums/conversion_adjustment_type.proto new file mode 100644 index 000000000..e5d3ba70b --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_adjustment_type.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionAdjustmentTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion adjustment type. + +// Container for enum describing conversion adjustment types. +message ConversionAdjustmentTypeEnum { + // The different actions advertisers can take to adjust the conversions that + // they already reported. Retractions negate a conversion. Restatements change + // the value of a conversion. + enum ConversionAdjustmentType { + // Not specified. + UNSPECIFIED = 0; + + // Represents value unknown in this version. + UNKNOWN = 1; + + // Negates a conversion so that its total value and count are both zero. + RETRACTION = 2; + + // Changes the value of a conversion. + RESTATEMENT = 3; + + // Supplements an existing conversion with provided user identifiers and + // user agent, which can be used by Google to enhance the conversion count. + ENHANCEMENT = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_attribution_event_type.proto b/google/ads/googleads/v9/enums/conversion_attribution_event_type.proto new file mode 100644 index 000000000..42e72c4f6 --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_attribution_event_type.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionAttributionEventTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum indicating the event type the conversion is attributed to. +message ConversionAttributionEventTypeEnum { + // The event type of conversions that are attributed to. + enum ConversionAttributionEventType { + // Not specified. + UNSPECIFIED = 0; + + // Represents value unknown in this version. + UNKNOWN = 1; + + // The conversion is attributed to an impression. + IMPRESSION = 2; + + // The conversion is attributed to an interaction. + INTERACTION = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_custom_variable_status.proto b/google/ads/googleads/v9/enums/conversion_custom_variable_status.proto new file mode 100644 index 000000000..9c37cbe20 --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_custom_variable_status.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionCustomVariableStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion custom variable status. + +// Container for enum describing possible statuses of a conversion custom +// variable. +message ConversionCustomVariableStatusEnum { + // Possible statuses of a conversion custom variable. + enum ConversionCustomVariableStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The conversion custom variable is pending activation and will not + // accrue stats until set to ENABLED. + // + // This status can't be used in CREATE and UPDATE requests. + ACTIVATION_NEEDED = 2; + + // The conversion custom variable is enabled and will accrue stats. + ENABLED = 3; + + // The conversion custom variable is paused and will not accrue stats + // until set to ENABLED again. + PAUSED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_lag_bucket.proto b/google/ads/googleads/v9/enums/conversion_lag_bucket.proto new file mode 100644 index 000000000..0fb3e1a3b --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_lag_bucket.proto @@ -0,0 +1,117 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionLagBucketProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum representing the number of days between impression and +// conversion. +message ConversionLagBucketEnum { + // Enum representing the number of days between impression and conversion. + enum ConversionLagBucket { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversion lag bucket from 0 to 1 day. 0 day is included, 1 day is not. + LESS_THAN_ONE_DAY = 2; + + // Conversion lag bucket from 1 to 2 days. 1 day is included, 2 days is not. + ONE_TO_TWO_DAYS = 3; + + // Conversion lag bucket from 2 to 3 days. 2 days is included, + // 3 days is not. + TWO_TO_THREE_DAYS = 4; + + // Conversion lag bucket from 3 to 4 days. 3 days is included, + // 4 days is not. + THREE_TO_FOUR_DAYS = 5; + + // Conversion lag bucket from 4 to 5 days. 4 days is included, + // 5 days is not. + FOUR_TO_FIVE_DAYS = 6; + + // Conversion lag bucket from 5 to 6 days. 5 days is included, + // 6 days is not. + FIVE_TO_SIX_DAYS = 7; + + // Conversion lag bucket from 6 to 7 days. 6 days is included, + // 7 days is not. + SIX_TO_SEVEN_DAYS = 8; + + // Conversion lag bucket from 7 to 8 days. 7 days is included, + // 8 days is not. + SEVEN_TO_EIGHT_DAYS = 9; + + // Conversion lag bucket from 8 to 9 days. 8 days is included, + // 9 days is not. + EIGHT_TO_NINE_DAYS = 10; + + // Conversion lag bucket from 9 to 10 days. 9 days is included, + // 10 days is not. + NINE_TO_TEN_DAYS = 11; + + // Conversion lag bucket from 10 to 11 days. 10 days is included, + // 11 days is not. + TEN_TO_ELEVEN_DAYS = 12; + + // Conversion lag bucket from 11 to 12 days. 11 days is included, + // 12 days is not. + ELEVEN_TO_TWELVE_DAYS = 13; + + // Conversion lag bucket from 12 to 13 days. 12 days is included, + // 13 days is not. + TWELVE_TO_THIRTEEN_DAYS = 14; + + // Conversion lag bucket from 13 to 14 days. 13 days is included, + // 14 days is not. + THIRTEEN_TO_FOURTEEN_DAYS = 15; + + // Conversion lag bucket from 14 to 21 days. 14 days is included, + // 21 days is not. + FOURTEEN_TO_TWENTY_ONE_DAYS = 16; + + // Conversion lag bucket from 21 to 30 days. 21 days is included, + // 30 days is not. + TWENTY_ONE_TO_THIRTY_DAYS = 17; + + // Conversion lag bucket from 30 to 45 days. 30 days is included, + // 45 days is not. + THIRTY_TO_FORTY_FIVE_DAYS = 18; + + // Conversion lag bucket from 45 to 60 days. 45 days is included, + // 60 days is not. + FORTY_FIVE_TO_SIXTY_DAYS = 19; + + // Conversion lag bucket from 60 to 90 days. 60 days is included, + // 90 days is not. + SIXTY_TO_NINETY_DAYS = 20; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_or_adjustment_lag_bucket.proto b/google/ads/googleads/v9/enums/conversion_or_adjustment_lag_bucket.proto new file mode 100644 index 000000000..76371efe9 --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_or_adjustment_lag_bucket.proto @@ -0,0 +1,206 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionOrAdjustmentLagBucketProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum representing the number of days between the impression and +// the conversion or between the impression and adjustments to the conversion. +message ConversionOrAdjustmentLagBucketEnum { + // Enum representing the number of days between the impression and the + // conversion or between the impression and adjustments to the conversion. + enum ConversionOrAdjustmentLagBucket { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversion lag bucket from 0 to 1 day. 0 day is included, 1 day is not. + CONVERSION_LESS_THAN_ONE_DAY = 2; + + // Conversion lag bucket from 1 to 2 days. 1 day is included, 2 days is not. + CONVERSION_ONE_TO_TWO_DAYS = 3; + + // Conversion lag bucket from 2 to 3 days. 2 days is included, + // 3 days is not. + CONVERSION_TWO_TO_THREE_DAYS = 4; + + // Conversion lag bucket from 3 to 4 days. 3 days is included, + // 4 days is not. + CONVERSION_THREE_TO_FOUR_DAYS = 5; + + // Conversion lag bucket from 4 to 5 days. 4 days is included, + // 5 days is not. + CONVERSION_FOUR_TO_FIVE_DAYS = 6; + + // Conversion lag bucket from 5 to 6 days. 5 days is included, + // 6 days is not. + CONVERSION_FIVE_TO_SIX_DAYS = 7; + + // Conversion lag bucket from 6 to 7 days. 6 days is included, + // 7 days is not. + CONVERSION_SIX_TO_SEVEN_DAYS = 8; + + // Conversion lag bucket from 7 to 8 days. 7 days is included, + // 8 days is not. + CONVERSION_SEVEN_TO_EIGHT_DAYS = 9; + + // Conversion lag bucket from 8 to 9 days. 8 days is included, + // 9 days is not. + CONVERSION_EIGHT_TO_NINE_DAYS = 10; + + // Conversion lag bucket from 9 to 10 days. 9 days is included, + // 10 days is not. + CONVERSION_NINE_TO_TEN_DAYS = 11; + + // Conversion lag bucket from 10 to 11 days. 10 days is included, + // 11 days is not. + CONVERSION_TEN_TO_ELEVEN_DAYS = 12; + + // Conversion lag bucket from 11 to 12 days. 11 days is included, + // 12 days is not. + CONVERSION_ELEVEN_TO_TWELVE_DAYS = 13; + + // Conversion lag bucket from 12 to 13 days. 12 days is included, + // 13 days is not. + CONVERSION_TWELVE_TO_THIRTEEN_DAYS = 14; + + // Conversion lag bucket from 13 to 14 days. 13 days is included, + // 14 days is not. + CONVERSION_THIRTEEN_TO_FOURTEEN_DAYS = 15; + + // Conversion lag bucket from 14 to 21 days. 14 days is included, + // 21 days is not. + CONVERSION_FOURTEEN_TO_TWENTY_ONE_DAYS = 16; + + // Conversion lag bucket from 21 to 30 days. 21 days is included, + // 30 days is not. + CONVERSION_TWENTY_ONE_TO_THIRTY_DAYS = 17; + + // Conversion lag bucket from 30 to 45 days. 30 days is included, + // 45 days is not. + CONVERSION_THIRTY_TO_FORTY_FIVE_DAYS = 18; + + // Conversion lag bucket from 45 to 60 days. 45 days is included, + // 60 days is not. + CONVERSION_FORTY_FIVE_TO_SIXTY_DAYS = 19; + + // Conversion lag bucket from 60 to 90 days. 60 days is included, + // 90 days is not. + CONVERSION_SIXTY_TO_NINETY_DAYS = 20; + + // Conversion adjustment lag bucket from 0 to 1 day. 0 day is included, + // 1 day is not. + ADJUSTMENT_LESS_THAN_ONE_DAY = 21; + + // Conversion adjustment lag bucket from 1 to 2 days. 1 day is included, + // 2 days is not. + ADJUSTMENT_ONE_TO_TWO_DAYS = 22; + + // Conversion adjustment lag bucket from 2 to 3 days. 2 days is included, + // 3 days is not. + ADJUSTMENT_TWO_TO_THREE_DAYS = 23; + + // Conversion adjustment lag bucket from 3 to 4 days. 3 days is included, + // 4 days is not. + ADJUSTMENT_THREE_TO_FOUR_DAYS = 24; + + // Conversion adjustment lag bucket from 4 to 5 days. 4 days is included, + // 5 days is not. + ADJUSTMENT_FOUR_TO_FIVE_DAYS = 25; + + // Conversion adjustment lag bucket from 5 to 6 days. 5 days is included, + // 6 days is not. + ADJUSTMENT_FIVE_TO_SIX_DAYS = 26; + + // Conversion adjustment lag bucket from 6 to 7 days. 6 days is included, + // 7 days is not. + ADJUSTMENT_SIX_TO_SEVEN_DAYS = 27; + + // Conversion adjustment lag bucket from 7 to 8 days. 7 days is included, + // 8 days is not. + ADJUSTMENT_SEVEN_TO_EIGHT_DAYS = 28; + + // Conversion adjustment lag bucket from 8 to 9 days. 8 days is included, + // 9 days is not. + ADJUSTMENT_EIGHT_TO_NINE_DAYS = 29; + + // Conversion adjustment lag bucket from 9 to 10 days. 9 days is included, + // 10 days is not. + ADJUSTMENT_NINE_TO_TEN_DAYS = 30; + + // Conversion adjustment lag bucket from 10 to 11 days. 10 days is included, + // 11 days is not. + ADJUSTMENT_TEN_TO_ELEVEN_DAYS = 31; + + // Conversion adjustment lag bucket from 11 to 12 days. 11 days is included, + // 12 days is not. + ADJUSTMENT_ELEVEN_TO_TWELVE_DAYS = 32; + + // Conversion adjustment lag bucket from 12 to 13 days. 12 days is included, + // 13 days is not. + ADJUSTMENT_TWELVE_TO_THIRTEEN_DAYS = 33; + + // Conversion adjustment lag bucket from 13 to 14 days. 13 days is included, + // 14 days is not. + ADJUSTMENT_THIRTEEN_TO_FOURTEEN_DAYS = 34; + + // Conversion adjustment lag bucket from 14 to 21 days. 14 days is included, + // 21 days is not. + ADJUSTMENT_FOURTEEN_TO_TWENTY_ONE_DAYS = 35; + + // Conversion adjustment lag bucket from 21 to 30 days. 21 days is included, + // 30 days is not. + ADJUSTMENT_TWENTY_ONE_TO_THIRTY_DAYS = 36; + + // Conversion adjustment lag bucket from 30 to 45 days. 30 days is included, + // 45 days is not. + ADJUSTMENT_THIRTY_TO_FORTY_FIVE_DAYS = 37; + + // Conversion adjustment lag bucket from 45 to 60 days. 45 days is included, + // 60 days is not. + ADJUSTMENT_FORTY_FIVE_TO_SIXTY_DAYS = 38; + + // Conversion adjustment lag bucket from 60 to 90 days. 60 days is included, + // 90 days is not. + ADJUSTMENT_SIXTY_TO_NINETY_DAYS = 39; + + // Conversion adjustment lag bucket from 90 to 145 days. 90 days is + // included, 145 days is not. + ADJUSTMENT_NINETY_TO_ONE_HUNDRED_AND_FORTY_FIVE_DAYS = 40; + + // Conversion lag bucket UNKNOWN. This is for dates before conversion lag + // bucket was available in Google Ads. + CONVERSION_UNKNOWN = 41; + + // Conversion adjustment lag bucket UNKNOWN. This is for dates before + // conversion adjustment lag bucket was available in Google Ads. + ADJUSTMENT_UNKNOWN = 42; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_origin.proto b/google/ads/googleads/v9/enums/conversion_origin.proto new file mode 100644 index 000000000..084509a6a --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_origin.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionOriginProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion origin. + +// Container for enum describing possible conversion origins. +message ConversionOriginEnum { + // The possible places where a conversion can occur. + enum ConversionOrigin { + // The conversion origin has not been specified. + UNSPECIFIED = 0; + + // The conversion origin is not known in this version. + UNKNOWN = 1; + + // Conversion that occurs when a user visits a website or takes an action + // there after viewing an ad. + WEBSITE = 2; + + // Conversions reported by an offline pipeline which collects local actions + // from Google-hosted pages (e.g. Google Maps, Google Place Page, etc) and + // attributes them to relevant ad events. + GOOGLE_HOSTED = 3; + + // Conversion that occurs when a user performs an action via any app + // platforms. + APP = 4; + + // Conversion that occurs when a user makes a call from ads. + CALL_FROM_ADS = 5; + + // Conversion that occurs when a user visits or makes a purchase at a + // physical store. + STORE = 6; + + // Conversion that occurs on YouTube. + YOUTUBE_HOSTED = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_value_rule_primary_dimension.proto b/google/ads/googleads/v9/enums/conversion_value_rule_primary_dimension.proto new file mode 100644 index 000000000..89db3946a --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_value_rule_primary_dimension.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRulePrimaryDimensionProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion value rule primary dimension. + +// Container for enum describing value rule primary dimension for stats. +message ConversionValueRulePrimaryDimensionEnum { + // Identifies the primary dimension for conversion value rule stats. + enum ConversionValueRulePrimaryDimension { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // For no-value-rule-applied conversions after value rule is enabled. + NO_RULE_APPLIED = 2; + + // Below are for value-rule-applied conversions: + // The original stats. + ORIGINAL = 3; + + // When a new or returning customer condition is satisfied. + NEW_VS_RETURNING_USER = 4; + + // When a query-time Geo location condition is satisfied. + GEO_LOCATION = 5; + + // When a query-time browsing device condition is satisfied. + DEVICE = 6; + + // When a query-time audience condition is satisfied. + AUDIENCE = 7; + + // When multiple rules are applied. + MULTIPLE = 8; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_value_rule_set_status.proto b/google/ads/googleads/v9/enums/conversion_value_rule_set_status.proto new file mode 100644 index 000000000..64d582ac1 --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_value_rule_set_status.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleSetStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion value rule set status. + +// Container for enum describing possible statuses of a conversion value rule +// set. +message ConversionValueRuleSetStatusEnum { + // Possible statuses of a conversion value rule set. + enum ConversionValueRuleSetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversion Value Rule Set is enabled and can be applied. + ENABLED = 2; + + // Conversion Value Rule Set is permanently deleted and can't be applied. + REMOVED = 3; + + // Conversion Value Rule Set is paused and won't be applied. It can be + // enabled again. + PAUSED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/conversion_value_rule_status.proto b/google/ads/googleads/v9/enums/conversion_value_rule_status.proto new file mode 100644 index 000000000..d77214c96 --- /dev/null +++ b/google/ads/googleads/v9/enums/conversion_value_rule_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion value rule status. + +// Container for enum describing possible statuses of a conversion value rule. +message ConversionValueRuleStatusEnum { + // Possible statuses of a conversion value rule. + enum ConversionValueRuleStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conversion Value Rule is enabled and can be applied. + ENABLED = 2; + + // Conversion Value Rule is permanently deleted and can't be applied. + REMOVED = 3; + + // Conversion Value Rule is paused, but can be re-enabled. + PAUSED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/criterion_category_channel_availability_mode.proto b/google/ads/googleads/v9/enums/criterion_category_channel_availability_mode.proto new file mode 100644 index 000000000..bf030b5c6 --- /dev/null +++ b/google/ads/googleads/v9/enums/criterion_category_channel_availability_mode.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CriterionCategoryChannelAvailabilityModeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing the criterion category channel availability mode. + +// Describes channel availability mode for a criterion availability - whether +// the availability is meant to include all advertising channels, or a +// particular channel with all its channel subtypes, or a channel with a certain +// subset of channel subtypes. +message CriterionCategoryChannelAvailabilityModeEnum { + // Enum containing the possible CriterionCategoryChannelAvailabilityMode. + enum CriterionCategoryChannelAvailabilityMode { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The category is available to campaigns of all channel types and subtypes. + ALL_CHANNELS = 2; + + // The category is available to campaigns of a specific channel type, + // including all subtypes under it. + CHANNEL_TYPE_AND_ALL_SUBTYPES = 3; + + // The category is available to campaigns of a specific channel type and + // subtype(s). + CHANNEL_TYPE_AND_SUBSET_SUBTYPES = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/criterion_category_locale_availability_mode.proto b/google/ads/googleads/v9/enums/criterion_category_locale_availability_mode.proto new file mode 100644 index 000000000..899289ed5 --- /dev/null +++ b/google/ads/googleads/v9/enums/criterion_category_locale_availability_mode.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CriterionCategoryLocaleAvailabilityModeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing the criterion category locale availability mode. + +// Describes locale availability mode for a criterion availability - whether +// it's available globally, or a particular country with all languages, or a +// particular language with all countries, or a country-language pair. +message CriterionCategoryLocaleAvailabilityModeEnum { + // Enum containing the possible CriterionCategoryLocaleAvailabilityMode. + enum CriterionCategoryLocaleAvailabilityMode { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The category is available to campaigns of all locales. + ALL_LOCALES = 2; + + // The category is available to campaigns within a list of countries, + // regardless of language. + COUNTRY_AND_ALL_LANGUAGES = 3; + + // The category is available to campaigns within a list of languages, + // regardless of country. + LANGUAGE_AND_ALL_COUNTRIES = 4; + + // The category is available to campaigns within a list of country, language + // pairs. + COUNTRY_AND_LANGUAGE = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/criterion_system_serving_status.proto b/google/ads/googleads/v9/enums/criterion_system_serving_status.proto new file mode 100644 index 000000000..69f262ce6 --- /dev/null +++ b/google/ads/googleads/v9/enums/criterion_system_serving_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CriterionSystemServingStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing approval status for the criterion. + +// Container for enum describing possible criterion system serving statuses. +message CriterionSystemServingStatusEnum { + // Enumerates criterion system serving statuses. + enum CriterionSystemServingStatus { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Eligible. + ELIGIBLE = 2; + + // Low search volume. + RARELY_SERVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/criterion_type.proto b/google/ads/googleads/v9/enums/criterion_type.proto new file mode 100644 index 000000000..a076dd542 --- /dev/null +++ b/google/ads/googleads/v9/enums/criterion_type.proto @@ -0,0 +1,143 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CriterionTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing criteria types. + +// The possible types of a criterion. +message CriterionTypeEnum { + // Enum describing possible criterion types. + enum CriterionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Keyword. e.g. 'mars cruise'. + KEYWORD = 2; + + // Placement, aka Website. e.g. 'www.flowers4sale.com' + PLACEMENT = 3; + + // Mobile application categories to target. + MOBILE_APP_CATEGORY = 4; + + // Mobile applications to target. + MOBILE_APPLICATION = 5; + + // Devices to target. + DEVICE = 6; + + // Locations to target. + LOCATION = 7; + + // Listing groups to target. + LISTING_GROUP = 8; + + // Ad Schedule. + AD_SCHEDULE = 9; + + // Age range. + AGE_RANGE = 10; + + // Gender. + GENDER = 11; + + // Income Range. + INCOME_RANGE = 12; + + // Parental status. + PARENTAL_STATUS = 13; + + // YouTube Video. + YOUTUBE_VIDEO = 14; + + // YouTube Channel. + YOUTUBE_CHANNEL = 15; + + // User list. + USER_LIST = 16; + + // Proximity. + PROXIMITY = 17; + + // A topic target on the display network (e.g. "Pets & Animals"). + TOPIC = 18; + + // Listing scope to target. + LISTING_SCOPE = 19; + + // Language. + LANGUAGE = 20; + + // IpBlock. + IP_BLOCK = 21; + + // Content Label for category exclusion. + CONTENT_LABEL = 22; + + // Carrier. + CARRIER = 23; + + // A category the user is interested in. + USER_INTEREST = 24; + + // Webpage criterion for dynamic search ads. + WEBPAGE = 25; + + // Operating system version. + OPERATING_SYSTEM_VERSION = 26; + + // App payment model. + APP_PAYMENT_MODEL = 27; + + // Mobile device. + MOBILE_DEVICE = 28; + + // Custom affinity. + CUSTOM_AFFINITY = 29; + + // Custom intent. + CUSTOM_INTENT = 30; + + // Location group. + LOCATION_GROUP = 31; + + // Custom audience + CUSTOM_AUDIENCE = 32; + + // Combined audience + COMBINED_AUDIENCE = 33; + + // Smart Campaign keyword theme + KEYWORD_THEME = 34; + } + + +} diff --git a/google/ads/googleads/v9/enums/custom_audience_member_type.proto b/google/ads/googleads/v9/enums/custom_audience_member_type.proto new file mode 100644 index 000000000..a45f9fd9c --- /dev/null +++ b/google/ads/googleads/v9/enums/custom_audience_member_type.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceMemberTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing custom audience member type. + +// The type of custom audience member. +message CustomAudienceMemberTypeEnum { + // Enum containing possible custom audience member types. + enum CustomAudienceMemberType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Users whose interests or actions are described by a keyword. + KEYWORD = 2; + + // Users who have interests related to the website's content. + URL = 3; + + // Users who visit place types described by a place category. + PLACE_CATEGORY = 4; + + // Users who have installed a mobile app. + APP = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/custom_audience_status.proto b/google/ads/googleads/v9/enums/custom_audience_status.proto new file mode 100644 index 000000000..5430f5273 --- /dev/null +++ b/google/ads/googleads/v9/enums/custom_audience_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing custom audience status. + +// The status of custom audience. +message CustomAudienceStatusEnum { + // Enum containing possible custom audience statuses. + enum CustomAudienceStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Enabled status - custom audience is enabled and can be targeted. + ENABLED = 2; + + // Removed status - custom audience is removed and cannot be used for + // targeting. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/custom_audience_type.proto b/google/ads/googleads/v9/enums/custom_audience_type.proto new file mode 100644 index 000000000..0dfe387a6 --- /dev/null +++ b/google/ads/googleads/v9/enums/custom_audience_type.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing custom audience type. + +// The types of custom audience. +message CustomAudienceTypeEnum { + // Enum containing possible custom audience types. + enum CustomAudienceType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Google Ads will auto-select the best interpretation at serving + // time. + AUTO = 2; + + // Matches users by their interests. + INTEREST = 3; + + // Matches users by topics they are researching or products they are + // considering for purchase. + PURCHASE_INTENT = 4; + + // Matches users by what they searched on Google Search. + SEARCH = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/custom_conversion_goal_status.proto b/google/ads/googleads/v9/enums/custom_conversion_goal_status.proto new file mode 100644 index 000000000..4e73c3127 --- /dev/null +++ b/google/ads/googleads/v9/enums/custom_conversion_goal_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomConversionGoalStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing custom conversion goal status. + +// Container for enum describing possible statuses of a custom conversion goal. +message CustomConversionGoalStatusEnum { + // The possible statuses of a custom conversion goal. + enum CustomConversionGoalStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + UNKNOWN = 1; + + // The custom conversion goal is enabled. + ENABLED = 2; + + // The custom conversion goal is removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/custom_interest_member_type.proto b/google/ads/googleads/v9/enums/custom_interest_member_type.proto new file mode 100644 index 000000000..14716c78f --- /dev/null +++ b/google/ads/googleads/v9/enums/custom_interest_member_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestMemberTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing custom interest member type. + +// The types of custom interest member, either KEYWORD or URL. +message CustomInterestMemberTypeEnum { + // Enum containing possible custom interest member types. + enum CustomInterestMemberType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Custom interest member type KEYWORD. + KEYWORD = 2; + + // Custom interest member type URL. + URL = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/custom_interest_status.proto b/google/ads/googleads/v9/enums/custom_interest_status.proto new file mode 100644 index 000000000..e759a5dde --- /dev/null +++ b/google/ads/googleads/v9/enums/custom_interest_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing custom interest status. + +// The status of custom interest. +message CustomInterestStatusEnum { + // Enum containing possible custom interest types. + enum CustomInterestStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Enabled status - custom interest is enabled and can be targeted to. + ENABLED = 2; + + // Removed status - custom interest is removed and cannot be used for + // targeting. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/custom_interest_type.proto b/google/ads/googleads/v9/enums/custom_interest_type.proto new file mode 100644 index 000000000..b9d8213f7 --- /dev/null +++ b/google/ads/googleads/v9/enums/custom_interest_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing custom interest type. + +// The types of custom interest. +message CustomInterestTypeEnum { + // Enum containing possible custom interest types. + enum CustomInterestType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Allows brand advertisers to define custom affinity audience lists. + CUSTOM_AFFINITY = 2; + + // Allows advertisers to define custom intent audience lists. + CUSTOM_INTENT = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/custom_placeholder_field.proto b/google/ads/googleads/v9/enums/custom_placeholder_field.proto new file mode 100644 index 000000000..781e3742b --- /dev/null +++ b/google/ads/googleads/v9/enums/custom_placeholder_field.proto @@ -0,0 +1,129 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Custom placeholder fields. + +// Values for Custom placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message CustomPlaceholderFieldEnum { + // Possible values for Custom placeholder fields. + enum CustomPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Combination ID and ID2 must be unique per + // offer. + ID = 2; + + // Data Type: STRING. Combination ID and ID2 must be unique per offer. + ID2 = 3; + + // Data Type: STRING. Required. Main headline with product name to be shown + // in dynamic ad. + ITEM_TITLE = 4; + + // Data Type: STRING. Optional text to be shown in the image ad. + ITEM_SUBTITLE = 5; + + // Data Type: STRING. Optional description of the product to be shown in the + // ad. + ITEM_DESCRIPTION = 6; + + // Data Type: STRING. Full address of your offer or service, including + // postal code. This will be used to identify the closest product to the + // user when there are multiple offers in the feed that are relevant to the + // user. + ITEM_ADDRESS = 7; + + // Data Type: STRING. Price to be shown in the ad. + // Example: "100.00 USD" + PRICE = 8; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 9; + + // Data Type: STRING. Sale price to be shown in the ad. + // Example: "80.00 USD" + SALE_PRICE = 10; + + // Data Type: STRING. Formatted sale price to be shown in the ad. + // Example: "On sale for $80.00", "$60 - $80" + FORMATTED_SALE_PRICE = 11; + + // Data Type: URL. Image to be displayed in the ad. Highly recommended for + // image ads. + IMAGE_URL = 12; + + // Data Type: STRING. Used as a recommendation engine signal to serve items + // in the same category. + ITEM_CATEGORY = 13; + + // Data Type: URL_LIST. Final URLs for the ad when using Upgraded + // URLs. User will be redirected to these URLs when they click on an ad, or + // when they click on a specific product for ads that have multiple + // products. + FINAL_URLS = 14; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 15; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 16; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 17; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 18; + + // Data Type: STRING_LIST. List of recommended IDs to show together with + // this item. + SIMILAR_IDS = 19; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 20; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 21; + } + + +} diff --git a/google/ads/googleads/v9/enums/customer_match_upload_key_type.proto b/google/ads/googleads/v9/enums/customer_match_upload_key_type.proto new file mode 100644 index 000000000..3c4c64d99 --- /dev/null +++ b/google/ads/googleads/v9/enums/customer_match_upload_key_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomerMatchUploadKeyTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Indicates what type of data are the user list's members matched from. +message CustomerMatchUploadKeyTypeEnum { + // Enum describing possible customer match upload key types. + enum CustomerMatchUploadKeyType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Members are matched from customer info such as email address, phone + // number or physical address. + CONTACT_INFO = 2; + + // Members are matched from a user id generated and assigned by the + // advertiser. + CRM_ID = 3; + + // Members are matched from mobile advertising ids. + MOBILE_ADVERTISING_ID = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/customer_pay_per_conversion_eligibility_failure_reason.proto b/google/ads/googleads/v9/enums/customer_pay_per_conversion_eligibility_failure_reason.proto new file mode 100644 index 000000000..c7d3555cb --- /dev/null +++ b/google/ads/googleads/v9/enums/customer_pay_per_conversion_eligibility_failure_reason.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomerPayPerConversionEligibilityFailureReasonProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing pay per conversion eligibility failure reasons. + +// Container for enum describing reasons why a customer is not eligible to use +// PaymentMode.CONVERSIONS. +message CustomerPayPerConversionEligibilityFailureReasonEnum { + // Enum describing possible reasons a customer is not eligible to use + // PaymentMode.CONVERSIONS. + enum CustomerPayPerConversionEligibilityFailureReason { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Customer does not have enough conversions. + NOT_ENOUGH_CONVERSIONS = 2; + + // Customer's conversion lag is too high. + CONVERSION_LAG_TOO_HIGH = 3; + + // Customer uses shared budgets. + HAS_CAMPAIGN_WITH_SHARED_BUDGET = 4; + + // Customer has conversions with ConversionActionType.UPLOAD_CLICKS. + HAS_UPLOAD_CLICKS_CONVERSION = 5; + + // Customer's average daily spend is too high. + AVERAGE_DAILY_SPEND_TOO_HIGH = 6; + + // Customer's eligibility has not yet been calculated by the Google Ads + // backend. Check back soon. + ANALYSIS_NOT_COMPLETE = 7; + + // Customer is not eligible due to other reasons. + OTHER = 8; + } + + +} diff --git a/google/ads/googleads/v9/enums/customizer_attribute_status.proto b/google/ads/googleads/v9/enums/customizer_attribute_status.proto new file mode 100644 index 000000000..7b609ecf6 --- /dev/null +++ b/google/ads/googleads/v9/enums/customizer_attribute_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomizerAttributeStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing customizer attribute status. + +// Container for enum describing possible statuses of a customizer attribute. +message CustomizerAttributeStatusEnum { + // The possible statuses of a customizer attribute. + enum CustomizerAttributeStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + UNKNOWN = 1; + + // The customizer attribute is enabled. + ENABLED = 2; + + // The customizer attribute is removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/customizer_attribute_type.proto b/google/ads/googleads/v9/enums/customizer_attribute_type.proto new file mode 100644 index 000000000..9719e6cc0 --- /dev/null +++ b/google/ads/googleads/v9/enums/customizer_attribute_type.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomizerAttributeTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing customizer attribute type. + +// Container for enum describing possible types of a customizer attribute. +message CustomizerAttributeTypeEnum { + // The possible types of a customizer attribute. + enum CustomizerAttributeType { + // The status has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + UNKNOWN = 1; + + // Text customizer. + TEXT = 2; + + // Number customizer. + NUMBER = 3; + + // Price customizer consisting of a number and a currency. + PRICE = 4; + + // Percentage customizer consisting of a number and a '%'. + PERCENT = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/customizer_value_status.proto b/google/ads/googleads/v9/enums/customizer_value_status.proto new file mode 100644 index 000000000..33e0308f4 --- /dev/null +++ b/google/ads/googleads/v9/enums/customizer_value_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "CustomizerValueStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing customizer value status. + +// Container for enum describing possible statuses of a customizer value. +message CustomizerValueStatusEnum { + // The possible statuses of a customizer value. + enum CustomizerValueStatus { + // The status has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + UNKNOWN = 1; + + // The customizer value is enabled. + ENABLED = 2; + + // The customizer value is removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/data_driven_model_status.proto b/google/ads/googleads/v9/enums/data_driven_model_status.proto new file mode 100644 index 000000000..754a98961 --- /dev/null +++ b/google/ads/googleads/v9/enums/data_driven_model_status.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DataDrivenModelStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing data-driven model status. + +// Container for enum indicating data driven model status. +message DataDrivenModelStatusEnum { + // Enumerates data driven model statuses. + enum DataDrivenModelStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The data driven model is available. + AVAILABLE = 2; + + // The data driven model is stale. It hasn't been updated for at least 7 + // days. It is still being used, but will become expired if it does not get + // updated for 30 days. + STALE = 3; + + // The data driven model expired. It hasn't been updated for at least 30 + // days and cannot be used. Most commonly this is because there hasn't been + // the required number of events in a recent 30-day period. + EXPIRED = 4; + + // The data driven model has never been generated. Most commonly this is + // because there has never been the required number of events in any 30-day + // period. + NEVER_GENERATED = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/day_of_week.proto b/google/ads/googleads/v9/enums/day_of_week.proto new file mode 100644 index 000000000..548b9e005 --- /dev/null +++ b/google/ads/googleads/v9/enums/day_of_week.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DayOfWeekProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing days of week. + +// Container for enumeration of days of the week, e.g., "Monday". +message DayOfWeekEnum { + // Enumerates days of the week, e.g., "Monday". + enum DayOfWeek { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Monday. + MONDAY = 2; + + // Tuesday. + TUESDAY = 3; + + // Wednesday. + WEDNESDAY = 4; + + // Thursday. + THURSDAY = 5; + + // Friday. + FRIDAY = 6; + + // Saturday. + SATURDAY = 7; + + // Sunday. + SUNDAY = 8; + } + + +} diff --git a/google/ads/googleads/v9/enums/device.proto b/google/ads/googleads/v9/enums/device.proto new file mode 100644 index 000000000..c44c336fc --- /dev/null +++ b/google/ads/googleads/v9/enums/device.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DeviceProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing devices. + +// Container for enumeration of Google Ads devices available for targeting. +message DeviceEnum { + // Enumerates Google Ads devices available for targeting. + enum Device { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Mobile devices with full browsers. + MOBILE = 2; + + // Tablets with full browsers. + TABLET = 3; + + // Computers. + DESKTOP = 4; + + // Smart TVs and game consoles. + CONNECTED_TV = 6; + + // Other device types. + OTHER = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/display_ad_format_setting.proto b/google/ads/googleads/v9/enums/display_ad_format_setting.proto new file mode 100644 index 000000000..b54db6d97 --- /dev/null +++ b/google/ads/googleads/v9/enums/display_ad_format_setting.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DisplayAdFormatSettingProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing display ad format settings. + +// Container for display ad format settings. +message DisplayAdFormatSettingEnum { + // Enumerates display ad format settings. + enum DisplayAdFormatSetting { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Text, image and native formats. + ALL_FORMATS = 2; + + // Text and image formats. + NON_NATIVE = 3; + + // Native format, i.e. the format rendering is controlled by the publisher + // and not by Google. + NATIVE = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/display_upload_product_type.proto b/google/ads/googleads/v9/enums/display_upload_product_type.proto new file mode 100644 index 000000000..5a5e29699 --- /dev/null +++ b/google/ads/googleads/v9/enums/display_upload_product_type.proto @@ -0,0 +1,97 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DisplayUploadProductTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing display upload product types. + +// Container for display upload product types. Product types that have the word +// "DYNAMIC" in them must be associated with a campaign that has a dynamic +// remarketing feed. See https://support.google.com/google-ads/answer/6053288 +// for more info about dynamic remarketing. Other product types are regarded +// as "static" and do not have this requirement. +message DisplayUploadProductTypeEnum { + // Enumerates display upload product types. + enum DisplayUploadProductType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // HTML5 upload ad. This product type requires the upload_media_bundle + // field in DisplayUploadAdInfo to be set. + HTML5_UPLOAD_AD = 2; + + // Dynamic HTML5 education ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in an education campaign. + DYNAMIC_HTML5_EDUCATION_AD = 3; + + // Dynamic HTML5 flight ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a flight campaign. + DYNAMIC_HTML5_FLIGHT_AD = 4; + + // Dynamic HTML5 hotel and rental ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a hotel campaign. + DYNAMIC_HTML5_HOTEL_RENTAL_AD = 5; + + // Dynamic HTML5 job ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a job campaign. + DYNAMIC_HTML5_JOB_AD = 6; + + // Dynamic HTML5 local ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a local campaign. + DYNAMIC_HTML5_LOCAL_AD = 7; + + // Dynamic HTML5 real estate ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a real estate campaign. + DYNAMIC_HTML5_REAL_ESTATE_AD = 8; + + // Dynamic HTML5 custom ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a custom campaign. + DYNAMIC_HTML5_CUSTOM_AD = 9; + + // Dynamic HTML5 travel ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a travel campaign. + DYNAMIC_HTML5_TRAVEL_AD = 10; + + // Dynamic HTML5 hotel ad. This product type requires the + // upload_media_bundle field in DisplayUploadAdInfo to be set. Can only be + // used in a hotel campaign. + DYNAMIC_HTML5_HOTEL_AD = 11; + } + + +} diff --git a/google/ads/googleads/v9/enums/distance_bucket.proto b/google/ads/googleads/v9/enums/distance_bucket.proto new file mode 100644 index 000000000..cfbccb1c1 --- /dev/null +++ b/google/ads/googleads/v9/enums/distance_bucket.proto @@ -0,0 +1,127 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DistanceBucketProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing distance buckets. + +// Container for distance buckets of a user’s distance from an advertiser’s +// location extension. +message DistanceBucketEnum { + // The distance bucket for a user’s distance from an advertiser’s location + // extension. + enum DistanceBucket { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // User was within 700m of the location. + WITHIN_700M = 2; + + // User was within 1KM of the location. + WITHIN_1KM = 3; + + // User was within 5KM of the location. + WITHIN_5KM = 4; + + // User was within 10KM of the location. + WITHIN_10KM = 5; + + // User was within 15KM of the location. + WITHIN_15KM = 6; + + // User was within 20KM of the location. + WITHIN_20KM = 7; + + // User was within 25KM of the location. + WITHIN_25KM = 8; + + // User was within 30KM of the location. + WITHIN_30KM = 9; + + // User was within 35KM of the location. + WITHIN_35KM = 10; + + // User was within 40KM of the location. + WITHIN_40KM = 11; + + // User was within 45KM of the location. + WITHIN_45KM = 12; + + // User was within 50KM of the location. + WITHIN_50KM = 13; + + // User was within 55KM of the location. + WITHIN_55KM = 14; + + // User was within 60KM of the location. + WITHIN_60KM = 15; + + // User was within 65KM of the location. + WITHIN_65KM = 16; + + // User was beyond 65KM of the location. + BEYOND_65KM = 17; + + // User was within 0.7 miles of the location. + WITHIN_0_7MILES = 18; + + // User was within 1 mile of the location. + WITHIN_1MILE = 19; + + // User was within 5 miles of the location. + WITHIN_5MILES = 20; + + // User was within 10 miles of the location. + WITHIN_10MILES = 21; + + // User was within 15 miles of the location. + WITHIN_15MILES = 22; + + // User was within 20 miles of the location. + WITHIN_20MILES = 23; + + // User was within 25 miles of the location. + WITHIN_25MILES = 24; + + // User was within 30 miles of the location. + WITHIN_30MILES = 25; + + // User was within 35 miles of the location. + WITHIN_35MILES = 26; + + // User was within 40 miles of the location. + WITHIN_40MILES = 27; + + // User was beyond 40 miles of the location. + BEYOND_40MILES = 28; + } + + +} diff --git a/google/ads/googleads/v9/enums/dsa_page_feed_criterion_field.proto b/google/ads/googleads/v9/enums/dsa_page_feed_criterion_field.proto new file mode 100644 index 000000000..0e558866e --- /dev/null +++ b/google/ads/googleads/v9/enums/dsa_page_feed_criterion_field.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "DsaPageFeedCriterionFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Dynamic Search Ad Page Feed criterion fields. + +// Values for Dynamic Search Ad Page Feed criterion fields. +message DsaPageFeedCriterionFieldEnum { + // Possible values for Dynamic Search Ad Page Feed criterion fields. + enum DsaPageFeedCriterionField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: URL or URL_LIST. URL of the web page you want to target. + PAGE_URL = 2; + + // Data Type: STRING_LIST. The labels that will help you target ads within + // your page feed. + LABEL = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/education_placeholder_field.proto b/google/ads/googleads/v9/enums/education_placeholder_field.proto new file mode 100644 index 000000000..ecc015710 --- /dev/null +++ b/google/ads/googleads/v9/enums/education_placeholder_field.proto @@ -0,0 +1,111 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "EducationPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Education placeholder fields. + +// Values for Education placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message EducationPlaceholderFieldEnum { + // Possible values for Education placeholder fields. + enum EducationPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Combination of PROGRAM ID and LOCATION ID + // must be unique per offer. + PROGRAM_ID = 2; + + // Data Type: STRING. Combination of PROGRAM ID and LOCATION ID must be + // unique per offer. + LOCATION_ID = 3; + + // Data Type: STRING. Required. Main headline with program name to be shown + // in dynamic ad. + PROGRAM_NAME = 4; + + // Data Type: STRING. Area of study that can be shown in dynamic ad. + AREA_OF_STUDY = 5; + + // Data Type: STRING. Description of program that can be shown in dynamic + // ad. + PROGRAM_DESCRIPTION = 6; + + // Data Type: STRING. Name of school that can be shown in dynamic ad. + SCHOOL_NAME = 7; + + // Data Type: STRING. Complete school address, including postal code. + ADDRESS = 8; + + // Data Type: URL. Image to be displayed in ads. + THUMBNAIL_IMAGE_URL = 9; + + // Data Type: URL. Alternative hosted file of image to be used in the ad. + ALTERNATIVE_THUMBNAIL_IMAGE_URL = 10; + + // Data Type: URL_LIST. Required. Final URLs to be used in ad when using + // Upgraded URLs; the more specific the better (e.g. the individual URL of a + // specific program and its location). + FINAL_URLS = 11; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 12; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 13; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 14; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 15; + + // Data Type: STRING_LIST. List of recommended program IDs to show together + // with this item. + SIMILAR_PROGRAM_IDS = 16; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 17; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 18; + } + + +} diff --git a/google/ads/googleads/v9/enums/extension_setting_device.proto b/google/ads/googleads/v9/enums/extension_setting_device.proto new file mode 100644 index 000000000..df50d0e9f --- /dev/null +++ b/google/ads/googleads/v9/enums/extension_setting_device.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionSettingDeviceProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing extension setting device type. + +// Container for enum describing extension setting device types. +message ExtensionSettingDeviceEnum { + // Possible device types for an extension setting. + enum ExtensionSettingDevice { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Mobile. The extensions in the extension setting will only serve on + // mobile devices. + MOBILE = 2; + + // Desktop. The extensions in the extension setting will only serve on + // desktop devices. + DESKTOP = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/extension_type.proto b/google/ads/googleads/v9/enums/extension_type.proto new file mode 100644 index 000000000..5224da803 --- /dev/null +++ b/google/ads/googleads/v9/enums/extension_type.proto @@ -0,0 +1,84 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing extension type. + +// Container for enum describing possible data types for an extension in an +// extension setting. +message ExtensionTypeEnum { + // Possible data types for an extension in an extension setting. + enum ExtensionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // None. + NONE = 2; + + // App. + APP = 3; + + // Call. + CALL = 4; + + // Callout. + CALLOUT = 5; + + // Message. + MESSAGE = 6; + + // Price. + PRICE = 7; + + // Promotion. + PROMOTION = 8; + + // Sitelink. + SITELINK = 10; + + // Structured snippet. + STRUCTURED_SNIPPET = 11; + + // Location. + LOCATION = 12; + + // Affiliate location. + AFFILIATE_LOCATION = 13; + + // Hotel callout + HOTEL_CALLOUT = 15; + + // Image. + IMAGE = 16; + } + + +} diff --git a/google/ads/googleads/v9/enums/external_conversion_source.proto b/google/ads/googleads/v9/enums/external_conversion_source.proto new file mode 100644 index 000000000..9ff8a9436 --- /dev/null +++ b/google/ads/googleads/v9/enums/external_conversion_source.proto @@ -0,0 +1,152 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ExternalConversionSourceProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing the external conversion source that is +// associated with a ConversionAction. +message ExternalConversionSourceEnum { + // The external conversion source that is associated with a ConversionAction. + enum ExternalConversionSource { + // Not specified. + UNSPECIFIED = 0; + + // Represents value unknown in this version. + UNKNOWN = 1; + + // Conversion that occurs when a user navigates to a particular webpage + // after viewing an ad; Displayed in Google Ads UI as 'Website'. + WEBPAGE = 2; + + // Conversion that comes from linked Google Analytics goal or transaction; + // Displayed in Google Ads UI as 'Analytics'. + ANALYTICS = 3; + + // Website conversion that is uploaded through ConversionUploadService; + // Displayed in Google Ads UI as 'Import from clicks'. + UPLOAD = 4; + + // Conversion that occurs when a user clicks on a call extension directly on + // an ad; Displayed in Google Ads UI as 'Calls from ads'. + AD_CALL_METRICS = 5; + + // Conversion that occurs when a user calls a dynamically-generated phone + // number (by installed javascript) from an advertiser's website after + // clicking on an ad; Displayed in Google Ads UI as 'Calls from website'. + WEBSITE_CALL_METRICS = 6; + + // Conversion that occurs when a user visits an advertiser's retail store + // after clicking on a Google ad; + // Displayed in Google Ads UI as 'Store visits'. + STORE_VISITS = 7; + + // Conversion that occurs when a user takes an in-app action such as a + // purchase in an Android app; + // Displayed in Google Ads UI as 'Android in-app action'. + ANDROID_IN_APP = 8; + + // Conversion that occurs when a user takes an in-app action such as a + // purchase in an iOS app; + // Displayed in Google Ads UI as 'iOS in-app action'. + IOS_IN_APP = 9; + + // Conversion that occurs when a user opens an iOS app for the first time; + // Displayed in Google Ads UI as 'iOS app install (first open)'. + IOS_FIRST_OPEN = 10; + + // Legacy app conversions that do not have an AppPlatform provided; + // Displayed in Google Ads UI as 'Mobile app'. + APP_UNSPECIFIED = 11; + + // Conversion that occurs when a user opens an Android app for the first + // time; Displayed in Google Ads UI as 'Android app install (first open)'. + ANDROID_FIRST_OPEN = 12; + + // Call conversion that is uploaded through ConversionUploadService; + // Displayed in Google Ads UI as 'Import from calls'. + UPLOAD_CALLS = 13; + + // Conversion that comes from a linked Firebase event; + // Displayed in Google Ads UI as 'Firebase'. + FIREBASE = 14; + + // Conversion that occurs when a user clicks on a mobile phone number; + // Displayed in Google Ads UI as 'Phone number clicks'. + CLICK_TO_CALL = 15; + + // Conversion that comes from Salesforce; + // Displayed in Google Ads UI as 'Salesforce.com'. + SALESFORCE = 16; + + // Conversion that comes from in-store purchases recorded by CRM; + // Displayed in Google Ads UI as 'Store sales (data partner)'. + STORE_SALES_CRM = 17; + + // Conversion that comes from in-store purchases from payment network; + // Displayed in Google Ads UI as 'Store sales (payment network)'. + STORE_SALES_PAYMENT_NETWORK = 18; + + // Codeless Google Play conversion; + // Displayed in Google Ads UI as 'Google Play'. + GOOGLE_PLAY = 19; + + // Conversion that comes from a linked third-party app analytics event; + // Displayed in Google Ads UI as 'Third-party app analytics'. + THIRD_PARTY_APP_ANALYTICS = 20; + + // Conversion that is controlled by Google Attribution. + GOOGLE_ATTRIBUTION = 21; + + // Store Sales conversion based on first-party or third-party merchant data + // uploads. Displayed in Google Ads UI as 'Store sales (direct upload)'. + STORE_SALES_DIRECT_UPLOAD = 23; + + // Store Sales conversion based on first-party or third-party merchant + // data uploads and/or from in-store purchases using cards from payment + // networks. Displayed in Google Ads UI as 'Store sales'. + STORE_SALES = 24; + + // Conversions imported from Search Ads 360 Floodlight data. + SEARCH_ADS_360 = 25; + + // Conversions that track local actions from Google's products and services + // after interacting with an ad. + GOOGLE_HOSTED = 27; + + // Conversions reported by Floodlight tags. + FLOODLIGHT = 29; + + // Conversions that come from Google Analytics specifically for Search Ads + // 360. Displayed in Google Ads UI as Analytics (SA360). + ANALYTICS_SEARCH_ADS_360 = 31; + + // Conversion that comes from a linked Firebase event for Search Ads 360. + FIREBASE_SEARCH_ADS_360 = 33; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_attribute_type.proto b/google/ads/googleads/v9/enums/feed_attribute_type.proto new file mode 100644 index 000000000..41ad1f8a4 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_attribute_type.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedAttributeTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed attribute type. + +// Container for enum describing possible data types for a feed attribute. +message FeedAttributeTypeEnum { + // Possible data types for a feed attribute. + enum FeedAttributeType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Int64. + INT64 = 2; + + // Double. + DOUBLE = 3; + + // String. + STRING = 4; + + // Boolean. + BOOLEAN = 5; + + // Url. + URL = 6; + + // Datetime. + DATE_TIME = 7; + + // Int64 list. + INT64_LIST = 8; + + // Double (8 bytes) list. + DOUBLE_LIST = 9; + + // String list. + STRING_LIST = 10; + + // Boolean list. + BOOLEAN_LIST = 11; + + // Url list. + URL_LIST = 12; + + // Datetime list. + DATE_TIME_LIST = 13; + + // Price. + PRICE = 14; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_item_quality_approval_status.proto b/google/ads/googleads/v9/enums/feed_item_quality_approval_status.proto new file mode 100644 index 000000000..e0b1dbb45 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_item_quality_approval_status.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemQualityApprovalStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed item quality evaluation approval statuses. + +// Container for enum describing possible quality evaluation approval statuses +// of a feed item. +message FeedItemQualityApprovalStatusEnum { + // The possible quality evaluation approval statuses of a feed item. + enum FeedItemQualityApprovalStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Meets all quality expectations. + APPROVED = 2; + + // Does not meet some quality expectations. The specific reason is found in + // the quality_disapproval_reasons field. + DISAPPROVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_item_quality_disapproval_reason.proto b/google/ads/googleads/v9/enums/feed_item_quality_disapproval_reason.proto new file mode 100644 index 000000000..dc4b83d59 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_item_quality_disapproval_reason.proto @@ -0,0 +1,99 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemQualityDisapprovalReasonProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed item quality disapproval reasons. + +// Container for enum describing possible quality evaluation disapproval reasons +// of a feed item. +message FeedItemQualityDisapprovalReasonEnum { + // The possible quality evaluation disapproval reasons of a feed item. + enum FeedItemQualityDisapprovalReason { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Price contains repetitive headers. + PRICE_TABLE_REPETITIVE_HEADERS = 2; + + // Price contains repetitive description. + PRICE_TABLE_REPETITIVE_DESCRIPTION = 3; + + // Price contains inconsistent items. + PRICE_TABLE_INCONSISTENT_ROWS = 4; + + // Price contains qualifiers in description. + PRICE_DESCRIPTION_HAS_PRICE_QUALIFIERS = 5; + + // Price contains an unsupported language. + PRICE_UNSUPPORTED_LANGUAGE = 6; + + // Price item header is not relevant to the price type. + PRICE_TABLE_ROW_HEADER_TABLE_TYPE_MISMATCH = 7; + + // Price item header has promotional text. + PRICE_TABLE_ROW_HEADER_HAS_PROMOTIONAL_TEXT = 8; + + // Price item description is not relevant to the item header. + PRICE_TABLE_ROW_DESCRIPTION_NOT_RELEVANT = 9; + + // Price item description contains promotional text. + PRICE_TABLE_ROW_DESCRIPTION_HAS_PROMOTIONAL_TEXT = 10; + + // Price item header and description are repetitive. + PRICE_TABLE_ROW_HEADER_DESCRIPTION_REPETITIVE = 11; + + // Price item is in a foreign language, nonsense, or can't be rated. + PRICE_TABLE_ROW_UNRATEABLE = 12; + + // Price item price is invalid or inaccurate. + PRICE_TABLE_ROW_PRICE_INVALID = 13; + + // Price item URL is invalid or irrelevant. + PRICE_TABLE_ROW_URL_INVALID = 14; + + // Price item header or description has price. + PRICE_HEADER_OR_DESCRIPTION_HAS_PRICE = 15; + + // Structured snippet values do not match the header. + STRUCTURED_SNIPPETS_HEADER_POLICY_VIOLATED = 16; + + // Structured snippet values are repeated. + STRUCTURED_SNIPPETS_REPEATED_VALUES = 17; + + // Structured snippet values violate editorial guidelines like punctuation. + STRUCTURED_SNIPPETS_EDITORIAL_GUIDELINES = 18; + + // Structured snippet contain promotional text. + STRUCTURED_SNIPPETS_HAS_PROMOTIONAL_TEXT = 19; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_item_set_status.proto b/google/ads/googleads/v9/enums/feed_item_set_status.proto new file mode 100644 index 000000000..f42b1c1c7 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_item_set_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed item set status. + +// Container for enum describing possible statuses of a feed item set. +message FeedItemSetStatusEnum { + // Possible statuses of a feed item set. + enum FeedItemSetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed item set is enabled. + ENABLED = 2; + + // Feed item set has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_item_set_string_filter_type.proto b/google/ads/googleads/v9/enums/feed_item_set_string_filter_type.proto new file mode 100644 index 000000000..5f27b405b --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_item_set_string_filter_type.proto @@ -0,0 +1,45 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetStringFilterTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// The type of string matching to be used for a dynamic FeedItemSet filter. +message FeedItemSetStringFilterTypeEnum { + // describe the possible types for a FeedItemSetStringFilter. + enum FeedItemSetStringFilterType { + // Not specified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The dynamic set filter will use exact string matching. + EXACT = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_item_status.proto b/google/ads/googleads/v9/enums/feed_item_status.proto new file mode 100644 index 000000000..7a1d523a0 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_item_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed item status. + +// Container for enum describing possible statuses of a feed item. +message FeedItemStatusEnum { + // Possible statuses of a feed item. + enum FeedItemStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed item is enabled. + ENABLED = 2; + + // Feed item has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_item_target_device.proto b/google/ads/googleads/v9/enums/feed_item_target_device.proto new file mode 100644 index 000000000..21bfd071b --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_item_target_device.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetDeviceProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed item target device type. + +// Container for enum describing possible data types for a feed item target +// device. +message FeedItemTargetDeviceEnum { + // Possible data types for a feed item target device. + enum FeedItemTargetDevice { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Mobile. + MOBILE = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_item_target_status.proto b/google/ads/googleads/v9/enums/feed_item_target_status.proto new file mode 100644 index 000000000..50369d863 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_item_target_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed item target status. + +// Container for enum describing possible statuses of a feed item target. +message FeedItemTargetStatusEnum { + // Possible statuses of a feed item target. + enum FeedItemTargetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed item target is enabled. + ENABLED = 2; + + // Feed item target has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_item_target_type.proto b/google/ads/googleads/v9/enums/feed_item_target_type.proto new file mode 100644 index 000000000..6576c25d7 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_item_target_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed item target type status. + +// Container for enum describing possible types of a feed item target. +message FeedItemTargetTypeEnum { + // Possible type of a feed item target. + enum FeedItemTargetType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed item targets a campaign. + CAMPAIGN = 2; + + // Feed item targets an ad group. + AD_GROUP = 3; + + // Feed item targets a criterion. + CRITERION = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_item_validation_status.proto b/google/ads/googleads/v9/enums/feed_item_validation_status.proto new file mode 100644 index 000000000..18e25f119 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_item_validation_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemValidationStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed item validation statuses. + +// Container for enum describing possible validation statuses of a feed item. +message FeedItemValidationStatusEnum { + // The possible validation statuses of a feed item. + enum FeedItemValidationStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Validation pending. + PENDING = 2; + + // An error was found. + INVALID = 3; + + // Feed item is semantically well-formed. + VALID = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_link_status.proto b/google/ads/googleads/v9/enums/feed_link_status.proto new file mode 100644 index 000000000..c6cf54b6e --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_link_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedLinkStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing status of a feed link. + +// Container for an enum describing possible statuses of a feed link. +message FeedLinkStatusEnum { + // Possible statuses of a feed link. + enum FeedLinkStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed link is enabled. + ENABLED = 2; + + // Feed link has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_mapping_criterion_type.proto b/google/ads/googleads/v9/enums/feed_mapping_criterion_type.proto new file mode 100644 index 000000000..a7b975f54 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_mapping_criterion_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedMappingCriterionTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing criterion types for feed mappings. + +// Container for enum describing possible criterion types for a feed mapping. +message FeedMappingCriterionTypeEnum { + // Possible placeholder types for a feed mapping. + enum FeedMappingCriterionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Allows campaign targeting at locations within a location feed. + LOCATION_EXTENSION_TARGETING = 4; + + // Allows url targeting for your dynamic search ads within a page feed. + DSA_PAGE_FEED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_mapping_status.proto b/google/ads/googleads/v9/enums/feed_mapping_status.proto new file mode 100644 index 000000000..03ecba308 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_mapping_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedMappingStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed mapping status. + +// Container for enum describing possible statuses of a feed mapping. +message FeedMappingStatusEnum { + // Possible statuses of a feed mapping. + enum FeedMappingStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed mapping is enabled. + ENABLED = 2; + + // Feed mapping has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_origin.proto b/google/ads/googleads/v9/enums/feed_origin.proto new file mode 100644 index 000000000..8dc17f473 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_origin.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedOriginProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed origin. + +// Container for enum describing possible values for a feed origin. +message FeedOriginEnum { + // Possible values for a feed origin. + enum FeedOrigin { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The FeedAttributes for this Feed are managed by the + // user. Users can add FeedAttributes to this Feed. + USER = 2; + + // The FeedAttributes for an GOOGLE Feed are created by Google. A feed of + // this type is maintained by Google and will have the correct attributes + // for the placeholder type of the feed. + GOOGLE = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/feed_status.proto b/google/ads/googleads/v9/enums/feed_status.proto new file mode 100644 index 000000000..d2463b4a0 --- /dev/null +++ b/google/ads/googleads/v9/enums/feed_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FeedStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed status. + +// Container for enum describing possible statuses of a feed. +message FeedStatusEnum { + // Possible statuses of a feed. + enum FeedStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed is enabled. + ENABLED = 2; + + // Feed has been removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/flight_placeholder_field.proto b/google/ads/googleads/v9/enums/flight_placeholder_field.proto new file mode 100644 index 000000000..fc0dc5caa --- /dev/null +++ b/google/ads/googleads/v9/enums/flight_placeholder_field.proto @@ -0,0 +1,118 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FlightsPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Flight placeholder fields. + +// Values for Flight placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message FlightPlaceholderFieldEnum { + // Possible values for Flight placeholder fields. + enum FlightPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Destination id. Example: PAR, LON. + // For feed items that only have destination id, destination id must be a + // unique key. For feed items that have both destination id and origin id, + // then the combination must be a unique key. + DESTINATION_ID = 2; + + // Data Type: STRING. Origin id. Example: PAR, LON. + // Optional. Combination of destination id and origin id must be unique per + // offer. + ORIGIN_ID = 3; + + // Data Type: STRING. Required. Main headline with product name to be shown + // in dynamic ad. + FLIGHT_DESCRIPTION = 4; + + // Data Type: STRING. Shorter names are recommended. + ORIGIN_NAME = 5; + + // Data Type: STRING. Shorter names are recommended. + DESTINATION_NAME = 6; + + // Data Type: STRING. Price to be shown in the ad. + // Example: "100.00 USD" + FLIGHT_PRICE = 7; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 8; + + // Data Type: STRING. Sale price to be shown in the ad. + // Example: "80.00 USD" + FLIGHT_SALE_PRICE = 9; + + // Data Type: STRING. Formatted sale price to be shown in the ad. + // Example: "On sale for $80.00", "$60 - $80" + FORMATTED_SALE_PRICE = 10; + + // Data Type: URL. Image to be displayed in the ad. + IMAGE_URL = 11; + + // Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded + // URLs. User will be redirected to these URLs when they click on an ad, or + // when they click on a specific flight for ads that show multiple + // flights. + FINAL_URLS = 12; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 13; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 14; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 15; + + // Data Type: STRING_LIST. List of recommended destination IDs to show + // together with this item. + SIMILAR_DESTINATION_IDS = 16; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 17; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 18; + } + + +} diff --git a/google/ads/googleads/v9/enums/frequency_cap_event_type.proto b/google/ads/googleads/v9/enums/frequency_cap_event_type.proto new file mode 100644 index 000000000..f433086b6 --- /dev/null +++ b/google/ads/googleads/v9/enums/frequency_cap_event_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FrequencyCapEventTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing frequency caps. + +// Container for enum describing the type of event that the cap applies to. +message FrequencyCapEventTypeEnum { + // The type of event that the cap applies to (e.g. impression). + enum FrequencyCapEventType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The cap applies on ad impressions. + IMPRESSION = 2; + + // The cap applies on video ad views. + VIDEO_VIEW = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/frequency_cap_level.proto b/google/ads/googleads/v9/enums/frequency_cap_level.proto new file mode 100644 index 000000000..67961cbf7 --- /dev/null +++ b/google/ads/googleads/v9/enums/frequency_cap_level.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FrequencyCapLevelProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing frequency caps. + +// Container for enum describing the level on which the cap is to be applied. +message FrequencyCapLevelEnum { + // The level on which the cap is to be applied (e.g ad group ad, ad group). + // Cap is applied to all the resources of this level. + enum FrequencyCapLevel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The cap is applied at the ad group ad level. + AD_GROUP_AD = 2; + + // The cap is applied at the ad group level. + AD_GROUP = 3; + + // The cap is applied at the campaign level. + CAMPAIGN = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/frequency_cap_time_unit.proto b/google/ads/googleads/v9/enums/frequency_cap_time_unit.proto new file mode 100644 index 000000000..2f97bd839 --- /dev/null +++ b/google/ads/googleads/v9/enums/frequency_cap_time_unit.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "FrequencyCapTimeUnitProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing frequency caps. + +// Container for enum describing the unit of time the cap is defined at. +message FrequencyCapTimeUnitEnum { + // Unit of time the cap is defined at (e.g. day, week). + enum FrequencyCapTimeUnit { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The cap would define limit per one day. + DAY = 2; + + // The cap would define limit per one week. + WEEK = 3; + + // The cap would define limit per one month. + MONTH = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/gender_type.proto b/google/ads/googleads/v9/enums/gender_type.proto new file mode 100644 index 000000000..b515fc621 --- /dev/null +++ b/google/ads/googleads/v9/enums/gender_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GenderTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing gender types. + +// Container for enum describing the type of demographic genders. +message GenderTypeEnum { + // The type of demographic genders (e.g. female). + enum GenderType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Male. + MALE = 10; + + // Female. + FEMALE = 11; + + // Undetermined gender. + UNDETERMINED = 20; + } + + +} diff --git a/google/ads/googleads/v9/enums/geo_target_constant_status.proto b/google/ads/googleads/v9/enums/geo_target_constant_status.proto new file mode 100644 index 000000000..c2d2247a6 --- /dev/null +++ b/google/ads/googleads/v9/enums/geo_target_constant_status.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetConstantStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing geo target constant statuses. + +// Container for describing the status of a geo target constant. +message GeoTargetConstantStatusEnum { + // The possible statuses of a geo target constant. + enum GeoTargetConstantStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The geo target constant is valid. + ENABLED = 2; + + // The geo target constant is obsolete and will be removed. + REMOVAL_PLANNED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/geo_targeting_restriction.proto b/google/ads/googleads/v9/enums/geo_targeting_restriction.proto new file mode 100644 index 000000000..7da3a650f --- /dev/null +++ b/google/ads/googleads/v9/enums/geo_targeting_restriction.proto @@ -0,0 +1,49 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetingRestrictionProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing GeoTargetingRestriction. + +// Message describing feed item geo targeting restriction. +message GeoTargetingRestrictionEnum { + // A restriction used to determine if the request context's + // geo should be matched. + enum GeoTargetingRestriction { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Indicates that request context should match the physical location of + // the user. + LOCATION_OF_PRESENCE = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/geo_targeting_type.proto b/google/ads/googleads/v9/enums/geo_targeting_type.proto new file mode 100644 index 000000000..b7b00db22 --- /dev/null +++ b/google/ads/googleads/v9/enums/geo_targeting_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetingTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing geo targeting types. + +// Container for enum describing possible geo targeting types. +message GeoTargetingTypeEnum { + // The possible geo targeting types. + enum GeoTargetingType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Location the user is interested in while making the query. + AREA_OF_INTEREST = 2; + + // Location of the user issuing the query. + LOCATION_OF_PRESENCE = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/goal_config_level.proto b/google/ads/googleads/v9/enums/goal_config_level.proto new file mode 100644 index 000000000..72e2164cc --- /dev/null +++ b/google/ads/googleads/v9/enums/goal_config_level.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GoalConfigLevelProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing goal config level. + +// Container for enum describing possible goal config levels. +message GoalConfigLevelEnum { + // The possible goal config levels. Campaigns automatically inherit the + // effective conversion account's customer goals unless they have been + // configured with their own set of campaign goals. + enum GoalConfigLevel { + // The goal config level has not been specified. + UNSPECIFIED = 0; + + // The goal config level is not known in this version. + UNKNOWN = 1; + + // The goal config is defined at the customer level. + CUSTOMER = 2; + + // The goal config is defined at the campaign level. + CAMPAIGN = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/google_ads_field_category.proto b/google/ads/googleads/v9/enums/google_ads_field_category.proto new file mode 100644 index 000000000..3b3b15cac --- /dev/null +++ b/google/ads/googleads/v9/enums/google_ads_field_category.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GoogleAdsFieldCategoryProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing GoogleAdsField categories. + +// Container for enum that determines if the described artifact is a resource +// or a field, and if it is a field, when it segments search queries. +message GoogleAdsFieldCategoryEnum { + // The category of the artifact. + enum GoogleAdsFieldCategory { + // Unspecified + UNSPECIFIED = 0; + + // Unknown + UNKNOWN = 1; + + // The described artifact is a resource. + RESOURCE = 2; + + // The described artifact is a field and is an attribute of a resource. + // Including a resource attribute field in a query may segment the query if + // the resource to which it is attributed segments the resource found in + // the FROM clause. + ATTRIBUTE = 3; + + // The described artifact is a field and always segments search queries. + SEGMENT = 5; + + // The described artifact is a field and is a metric. It never segments + // search queries. + METRIC = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/google_ads_field_data_type.proto b/google/ads/googleads/v9/enums/google_ads_field_data_type.proto new file mode 100644 index 000000000..8fed90108 --- /dev/null +++ b/google/ads/googleads/v9/enums/google_ads_field_data_type.proto @@ -0,0 +1,102 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GoogleAdsFieldDataTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing GoogleAdsField data types. + +// Container holding the various data types. +message GoogleAdsFieldDataTypeEnum { + // These are the various types a GoogleAdsService artifact may take on. + enum GoogleAdsFieldDataType { + // Unspecified + UNSPECIFIED = 0; + + // Unknown + UNKNOWN = 1; + + // Maps to google.protobuf.BoolValue + // + // Applicable operators: =, != + BOOLEAN = 2; + + // Maps to google.protobuf.StringValue. It can be compared using the set of + // operators specific to dates however. + // + // Applicable operators: =, <, >, <=, >=, BETWEEN, DURING, and IN + DATE = 3; + + // Maps to google.protobuf.DoubleValue + // + // Applicable operators: =, !=, <, >, IN, NOT IN + DOUBLE = 4; + + // Maps to an enum. It's specific definition can be found at type_url. + // + // Applicable operators: =, !=, IN, NOT IN + ENUM = 5; + + // Maps to google.protobuf.FloatValue + // + // Applicable operators: =, !=, <, >, IN, NOT IN + FLOAT = 6; + + // Maps to google.protobuf.Int32Value + // + // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN + INT32 = 7; + + // Maps to google.protobuf.Int64Value + // + // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN + INT64 = 8; + + // Maps to a protocol buffer message type. The data type's details can be + // found in type_url. + // + // No operators work with MESSAGE fields. + MESSAGE = 9; + + // Maps to google.protobuf.StringValue. Represents the resource name + // (unique id) of a resource or one of its foreign keys. + // + // No operators work with RESOURCE_NAME fields. + RESOURCE_NAME = 10; + + // Maps to google.protobuf.StringValue. + // + // Applicable operators: =, !=, LIKE, NOT LIKE, IN, NOT IN + STRING = 11; + + // Maps to google.protobuf.UInt64Value + // + // Applicable operators: =, !=, <, >, <=, >=, BETWEEN, IN, NOT IN + UINT64 = 12; + } + + +} diff --git a/google/ads/googleads/v9/enums/google_voice_call_status.proto b/google/ads/googleads/v9/enums/google_voice_call_status.proto new file mode 100644 index 000000000..3fb3f0e66 --- /dev/null +++ b/google/ads/googleads/v9/enums/google_voice_call_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "GoogleVoiceCallStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing google voice call status. + +// Container for enum describing possible statuses of a google voice call. +message GoogleVoiceCallStatusEnum { + // Possible statuses of a google voice call. + enum GoogleVoiceCallStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The call was missed. + MISSED = 2; + + // The call was received. + RECEIVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/hotel_date_selection_type.proto b/google/ads/googleads/v9/enums/hotel_date_selection_type.proto new file mode 100644 index 000000000..7f42efc18 --- /dev/null +++ b/google/ads/googleads/v9/enums/hotel_date_selection_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "HotelDateSelectionTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing hotel date selection types. + +// Container for enum describing possible hotel date selection types +message HotelDateSelectionTypeEnum { + // Enum describing possible hotel date selection types. + enum HotelDateSelectionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Dates selected by default. + DEFAULT_SELECTION = 50; + + // Dates selected by the user. + USER_SELECTED = 51; + } + + +} diff --git a/google/ads/googleads/v9/enums/hotel_placeholder_field.proto b/google/ads/googleads/v9/enums/hotel_placeholder_field.proto new file mode 100644 index 000000000..3acc3cb9e --- /dev/null +++ b/google/ads/googleads/v9/enums/hotel_placeholder_field.proto @@ -0,0 +1,124 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "HotelsPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Hotel placeholder fields. + +// Values for Hotel placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message HotelPlaceholderFieldEnum { + // Possible values for Hotel placeholder fields. + enum HotelPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Unique ID. + PROPERTY_ID = 2; + + // Data Type: STRING. Required. Main headline with property name to be shown + // in dynamic ad. + PROPERTY_NAME = 3; + + // Data Type: STRING. Name of destination to be shown in dynamic ad. + DESTINATION_NAME = 4; + + // Data Type: STRING. Description of destination to be shown in dynamic ad. + DESCRIPTION = 5; + + // Data Type: STRING. Complete property address, including postal code. + ADDRESS = 6; + + // Data Type: STRING. Price to be shown in the ad. + // Example: "100.00 USD" + PRICE = 7; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 8; + + // Data Type: STRING. Sale price to be shown in the ad. + // Example: "80.00 USD" + SALE_PRICE = 9; + + // Data Type: STRING. Formatted sale price to be shown in the ad. + // Example: "On sale for $80.00", "$60 - $80" + FORMATTED_SALE_PRICE = 10; + + // Data Type: URL. Image to be displayed in the ad. + IMAGE_URL = 11; + + // Data Type: STRING. Category of property used to group like items together + // for recommendation engine. + CATEGORY = 12; + + // Data Type: INT64. Star rating (1 to 5) used to group like items + // together for recommendation engine. + STAR_RATING = 13; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 14; + + // Data Type: URL_LIST. Required. Final URLs for the ad when using Upgraded + // URLs. User will be redirected to these URLs when they click on an ad, or + // when they click on a specific flight for ads that show multiple + // flights. + FINAL_URLS = 15; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 16; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 17; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 18; + + // Data Type: STRING_LIST. List of recommended property IDs to show together + // with this item. + SIMILAR_PROPERTY_IDS = 19; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 20; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 21; + } + + +} diff --git a/google/ads/googleads/v9/enums/hotel_price_bucket.proto b/google/ads/googleads/v9/enums/hotel_price_bucket.proto new file mode 100644 index 000000000..6dd418446 --- /dev/null +++ b/google/ads/googleads/v9/enums/hotel_price_bucket.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "HotelPriceBucketProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing hotel price buckets. + +// Container for enum describing hotel price bucket for a hotel itinerary. +message HotelPriceBucketEnum { + // Enum describing possible hotel price buckets. + enum HotelPriceBucket { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Uniquely lowest price. Partner has the lowest price, and no other + // partners are within a small variance of that price. + LOWEST_UNIQUE = 2; + + // Tied for lowest price. Partner is within a small variance of the lowest + // price. + LOWEST_TIED = 3; + + // Not lowest price. Partner is not within a small variance of the lowest + // price. + NOT_LOWEST = 4; + + // Partner was the only one shown. + ONLY_PARTNER_SHOWN = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/hotel_rate_type.proto b/google/ads/googleads/v9/enums/hotel_rate_type.proto new file mode 100644 index 000000000..0e9b12b00 --- /dev/null +++ b/google/ads/googleads/v9/enums/hotel_rate_type.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "HotelRateTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing hotel rate types. + +// Container for enum describing possible hotel rate types. +message HotelRateTypeEnum { + // Enum describing possible hotel rate types. + enum HotelRateType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Rate type information is unavailable. + UNAVAILABLE = 2; + + // Rates available to everyone. + PUBLIC_RATE = 3; + + // A membership program rate is available and satisfies basic requirements + // like having a public rate available. UI treatment will strikethrough the + // public rate and indicate that a discount is available to the user. For + // more on Qualified Rates, visit + // https://developers.google.com/hotels/hotel-ads/dev-guide/qualified-rates + QUALIFIED_RATE = 4; + + // Rates available to users that satisfy some eligibility criteria. e.g. + // all signed-in users, 20% of mobile users, all mobile users in Canada, + // etc. + PRIVATE_RATE = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/hotel_reconciliation_status.proto b/google/ads/googleads/v9/enums/hotel_reconciliation_status.proto new file mode 100644 index 000000000..c2ef158be --- /dev/null +++ b/google/ads/googleads/v9/enums/hotel_reconciliation_status.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "HotelReconciliationStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing hotel reconciliation row status. + +// Container for HotelReconciliationStatus. +message HotelReconciliationStatusEnum { + // Status of the hotel booking reconciliation. + enum HotelReconciliationStatus { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Bookings are for a future date, or a stay is underway but the check-out + // date hasn't passed. An active reservation can't be reconciled. + RESERVATION_ENABLED = 2; + + // Check-out has already taken place, or the booked dates have passed + // without cancellation. Bookings that are not reconciled within 45 days of + // the check-out date are billed based on the original booking price. + RECONCILIATION_NEEDED = 3; + + // These bookings have been reconciled. Reconciled bookings are billed 45 + // days after the check-out date. + RECONCILED = 4; + + // This booking was marked as canceled. Canceled stays with a value greater + // than zero (due to minimum stay rules or cancellation fees) are billed 45 + // days after the check-out date. + CANCELED = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/image_placeholder_field.proto b/google/ads/googleads/v9/enums/image_placeholder_field.proto new file mode 100644 index 000000000..d16b0ec33 --- /dev/null +++ b/google/ads/googleads/v9/enums/image_placeholder_field.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ImagePlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Advertiser Provided Image placeholder fields. + +// Values for Advertiser Provided Image placeholder fields. +message ImagePlaceholderFieldEnum { + // Possible values for Advertiser Provided Image placeholder fields. + enum ImagePlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: INT64. The asset ID of the image. + ASSET_ID = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/income_range_type.proto b/google/ads/googleads/v9/enums/income_range_type.proto new file mode 100644 index 000000000..c718e9818 --- /dev/null +++ b/google/ads/googleads/v9/enums/income_range_type.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "IncomeRangeTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing income range types. + +// Container for enum describing the type of demographic income ranges. +message IncomeRangeTypeEnum { + // The type of demographic income ranges (e.g. between 0% to 50%). + enum IncomeRangeType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // 0%-50%. + INCOME_RANGE_0_50 = 510001; + + // 50% to 60%. + INCOME_RANGE_50_60 = 510002; + + // 60% to 70%. + INCOME_RANGE_60_70 = 510003; + + // 70% to 80%. + INCOME_RANGE_70_80 = 510004; + + // 80% to 90%. + INCOME_RANGE_80_90 = 510005; + + // Greater than 90%. + INCOME_RANGE_90_UP = 510006; + + // Undetermined income range. + INCOME_RANGE_UNDETERMINED = 510000; + } + + +} diff --git a/google/ads/googleads/v9/enums/interaction_event_type.proto b/google/ads/googleads/v9/enums/interaction_event_type.proto new file mode 100644 index 000000000..89adab63a --- /dev/null +++ b/google/ads/googleads/v9/enums/interaction_event_type.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "InteractionEventTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing types of payable and free interactions. + +// Container for enum describing types of payable and free interactions. +message InteractionEventTypeEnum { + // Enum describing possible types of payable and free interactions. + enum InteractionEventType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Click to site. In most cases, this interaction navigates to an external + // location, usually the advertiser's landing page. This is also the default + // InteractionEventType for click events. + CLICK = 2; + + // The user's expressed intent to engage with the ad in-place. + ENGAGEMENT = 3; + + // User viewed a video ad. + VIDEO_VIEW = 4; + + // The default InteractionEventType for ad conversion events. + // This is used when an ad conversion row does NOT indicate + // that the free interactions (i.e., the ad conversions) + // should be 'promoted' and reported as part of the core metrics. + // These are simply other (ad) conversions. + NONE = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/interaction_type.proto b/google/ads/googleads/v9/enums/interaction_type.proto new file mode 100644 index 000000000..5f93f3bcc --- /dev/null +++ b/google/ads/googleads/v9/enums/interaction_type.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "InteractionTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing interaction types. + +// Container for enum describing possible interaction types. +message InteractionTypeEnum { + // Enum describing possible interaction types. + enum InteractionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Calls. + CALLS = 8000; + } + + +} diff --git a/google/ads/googleads/v9/enums/invoice_type.proto b/google/ads/googleads/v9/enums/invoice_type.proto new file mode 100644 index 000000000..451542071 --- /dev/null +++ b/google/ads/googleads/v9/enums/invoice_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "InvoiceTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing invoice types. + +// Container for enum describing the type of invoices. +message InvoiceTypeEnum { + // The possible type of invoices. + enum InvoiceType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // An invoice with a negative amount. The account receives a credit. + CREDIT_MEMO = 2; + + // An invoice with a positive amount. The account owes a balance. + INVOICE = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/job_placeholder_field.proto b/google/ads/googleads/v9/enums/job_placeholder_field.proto new file mode 100644 index 000000000..f799defc6 --- /dev/null +++ b/google/ads/googleads/v9/enums/job_placeholder_field.proto @@ -0,0 +1,115 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "JobsPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Job placeholder fields. + +// Values for Job placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message JobPlaceholderFieldEnum { + // Possible values for Job placeholder fields. + enum JobPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. If only JOB_ID is specified, then it must be + // unique. If both JOB_ID and LOCATION_ID are specified, then the + // pair must be unique. + // ID) pair must be unique. + JOB_ID = 2; + + // Data Type: STRING. Combination of JOB_ID and LOCATION_ID must be unique + // per offer. + LOCATION_ID = 3; + + // Data Type: STRING. Required. Main headline with job title to be shown in + // dynamic ad. + TITLE = 4; + + // Data Type: STRING. Job subtitle to be shown in dynamic ad. + SUBTITLE = 5; + + // Data Type: STRING. Description of job to be shown in dynamic ad. + DESCRIPTION = 6; + + // Data Type: URL. Image to be displayed in the ad. Highly recommended for + // image ads. + IMAGE_URL = 7; + + // Data Type: STRING. Category of property used to group like items together + // for recommendation engine. + CATEGORY = 8; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 9; + + // Data Type: STRING. Complete property address, including postal code. + ADDRESS = 10; + + // Data Type: STRING. Salary or salary range of job to be shown in dynamic + // ad. + SALARY = 11; + + // Data Type: URL_LIST. Required. Final URLs to be used in ad when using + // Upgraded URLs; the more specific the better (e.g. the individual URL of a + // specific job and its location). + FINAL_URLS = 12; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 14; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 15; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 16; + + // Data Type: STRING_LIST. List of recommended job IDs to show together with + // this item. + SIMILAR_JOB_IDS = 17; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 18; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 19; + } + + +} diff --git a/google/ads/googleads/v9/enums/keyword_match_type.proto b/google/ads/googleads/v9/enums/keyword_match_type.proto new file mode 100644 index 000000000..0c96c7aa2 --- /dev/null +++ b/google/ads/googleads/v9/enums/keyword_match_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordMatchTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Keyword match types. + +// Message describing Keyword match types. +message KeywordMatchTypeEnum { + // Possible Keyword match types. + enum KeywordMatchType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Exact match. + EXACT = 2; + + // Phrase match. + PHRASE = 3; + + // Broad match. + BROAD = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/keyword_plan_aggregate_metric_type.proto b/google/ads/googleads/v9/enums/keyword_plan_aggregate_metric_type.proto new file mode 100644 index 000000000..a525c8fe9 --- /dev/null +++ b/google/ads/googleads/v9/enums/keyword_plan_aggregate_metric_type.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAggregateMetricTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing keyword plan aggregate metric types. + +// The enumeration of keyword plan aggregate metric types. +message KeywordPlanAggregateMetricTypeEnum { + // Aggregate fields. + enum KeywordPlanAggregateMetricType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // The device breakdown of aggregate search volume. + DEVICE = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/keyword_plan_competition_level.proto b/google/ads/googleads/v9/enums/keyword_plan_competition_level.proto new file mode 100644 index 000000000..678ef8cb2 --- /dev/null +++ b/google/ads/googleads/v9/enums/keyword_plan_competition_level.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCompetitionLevelProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Keyword Planner competition levels. + +// Container for enumeration of keyword competition levels. The competition +// level indicates how competitive ad placement is for a keyword and +// is determined by the number of advertisers bidding on that keyword relative +// to all keywords across Google. The competition level can depend on the +// location and Search Network targeting options you've selected. +message KeywordPlanCompetitionLevelEnum { + // Competition level of a keyword. + enum KeywordPlanCompetitionLevel { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Low competition. The Competition Index range for this is [0, 33]. + LOW = 2; + + // Medium competition. The Competition Index range for this is [34, 66]. + MEDIUM = 3; + + // High competition. The Competition Index range for this is [67, 100]. + HIGH = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/keyword_plan_concept_group_type.proto b/google/ads/googleads/v9/enums/keyword_plan_concept_group_type.proto new file mode 100644 index 000000000..fba7e29b2 --- /dev/null +++ b/google/ads/googleads/v9/enums/keyword_plan_concept_group_type.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanConceptGroupTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Keyword Planner Concept Group types. + +// Container for enumeration of keyword plan concept group types. +message KeywordPlanConceptGroupTypeEnum { + // Enumerates keyword plan concept group types. + enum KeywordPlanConceptGroupType { + // The concept group classification different from brand/non-brand. + // This is a catch all bucket for all classifications that are none of the + // below. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // The concept group classification is based on BRAND. + BRAND = 2; + + // The concept group classification based on BRAND, that didn't fit well + // with the BRAND classifications. These are generally outliers and can have + // very few keywords in this type of classification. + OTHER_BRANDS = 3; + + // These concept group classification is not based on BRAND. This is + // returned for generic keywords that don't have a brand association. + NON_BRAND = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/keyword_plan_forecast_interval.proto b/google/ads/googleads/v9/enums/keyword_plan_forecast_interval.proto new file mode 100644 index 000000000..ca7bef128 --- /dev/null +++ b/google/ads/googleads/v9/enums/keyword_plan_forecast_interval.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanForecastIntervalProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing keyword plan forecast intervals. + +// Container for enumeration of forecast intervals. +message KeywordPlanForecastIntervalEnum { + // Forecast intervals. + enum KeywordPlanForecastInterval { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // The next week date range for keyword plan. The next week is based + // on the default locale of the user's account and is mostly SUN-SAT or + // MON-SUN. + // This can be different from next-7 days. + NEXT_WEEK = 3; + + // The next month date range for keyword plan. + NEXT_MONTH = 4; + + // The next quarter date range for keyword plan. + NEXT_QUARTER = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/keyword_plan_keyword_annotation.proto b/google/ads/googleads/v9/enums/keyword_plan_keyword_annotation.proto new file mode 100644 index 000000000..8d63512ea --- /dev/null +++ b/google/ads/googleads/v9/enums/keyword_plan_keyword_annotation.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanKeywordAnnotationProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Keyword Planner Keyword annotation types. + +// Container for enumeration of keyword plan keyword annotations. +message KeywordPlanKeywordAnnotationEnum { + // Enumerates keyword plan annotations that can be requested. + enum KeywordPlanKeywordAnnotation { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Return the keyword concept and concept group data. + KEYWORD_CONCEPT = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/keyword_plan_network.proto b/google/ads/googleads/v9/enums/keyword_plan_network.proto new file mode 100644 index 000000000..e48cf13f8 --- /dev/null +++ b/google/ads/googleads/v9/enums/keyword_plan_network.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanNetworkProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Keyword Planner forecastable network types. + +// Container for enumeration of keyword plan forecastable network types. +message KeywordPlanNetworkEnum { + // Enumerates keyword plan forecastable network types. + enum KeywordPlanNetwork { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Google Search. + GOOGLE_SEARCH = 2; + + // Google Search + Search partners. + GOOGLE_SEARCH_AND_PARTNERS = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/label_status.proto b/google/ads/googleads/v9/enums/label_status.proto new file mode 100644 index 000000000..13f72dfff --- /dev/null +++ b/google/ads/googleads/v9/enums/label_status.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LabelStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing possible status of a label. +message LabelStatusEnum { + // Possible statuses of a label. + enum LabelStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Label is enabled. + ENABLED = 2; + + // Label is removed. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/lead_form_call_to_action_type.proto b/google/ads/googleads/v9/enums/lead_form_call_to_action_type.proto new file mode 100644 index 000000000..7279a4322 --- /dev/null +++ b/google/ads/googleads/v9/enums/lead_form_call_to_action_type.proto @@ -0,0 +1,84 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LeadFormCallToActionTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Describes the type of call-to-action phrases in a lead form. +message LeadFormCallToActionTypeEnum { + // Enum describing the type of call-to-action phrases in a lead form. + enum LeadFormCallToActionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Learn more. + LEARN_MORE = 2; + + // Get quote. + GET_QUOTE = 3; + + // Apply now. + APPLY_NOW = 4; + + // Sign Up. + SIGN_UP = 5; + + // Contact us. + CONTACT_US = 6; + + // Subscribe. + SUBSCRIBE = 7; + + // Download. + DOWNLOAD = 8; + + // Book now. + BOOK_NOW = 9; + + // Get offer. + GET_OFFER = 10; + + // Register. + REGISTER = 11; + + // Get info. + GET_INFO = 12; + + // Request a demo. + REQUEST_DEMO = 13; + + // Join now. + JOIN_NOW = 14; + + // Get started. + GET_STARTED = 15; + } + + +} diff --git a/google/ads/googleads/v9/enums/lead_form_desired_intent.proto b/google/ads/googleads/v9/enums/lead_form_desired_intent.proto new file mode 100644 index 000000000..6cb79db73 --- /dev/null +++ b/google/ads/googleads/v9/enums/lead_form_desired_intent.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LeadFormDesiredIntentProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Describes the desired level of intent of generated leads. +message LeadFormDesiredIntentEnum { + // Enum describing the desired level of intent of generated leads. + enum LeadFormDesiredIntent { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Deliver more leads at a potentially lower quality. + LOW_INTENT = 2; + + // Deliver leads that are more qualified. + HIGH_INTENT = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/lead_form_field_user_input_type.proto b/google/ads/googleads/v9/enums/lead_form_field_user_input_type.proto new file mode 100644 index 000000000..264badfc4 --- /dev/null +++ b/google/ads/googleads/v9/enums/lead_form_field_user_input_type.proto @@ -0,0 +1,273 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LeadFormFieldUserInputTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Describes the input type of a lead form field. +message LeadFormFieldUserInputTypeEnum { + // Enum describing the input type of a lead form field. + enum LeadFormFieldUserInputType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The user will be asked to fill in their given and family name. This field + // cannot be set at the same time as GIVEN_NAME or FAMILY_NAME. + FULL_NAME = 2; + + // The user will be asked to fill in their email address. + EMAIL = 3; + + // The user will be asked to fill in their phone number. + PHONE_NUMBER = 4; + + // The user will be asked to fill in their zip code. + POSTAL_CODE = 5; + + // The user will be asked to fill in their city. + CITY = 9; + + // The user will be asked to fill in their region part of the address (e.g. + // state for US, province for Canada). + REGION = 10; + + // The user will be asked to fill in their country. + COUNTRY = 11; + + // The user will be asked to fill in their work email address. + WORK_EMAIL = 12; + + // The user will be asked to fill in their company name. + COMPANY_NAME = 13; + + // The user will be asked to fill in their work phone. + WORK_PHONE = 14; + + // The user will be asked to fill in their job title. + JOB_TITLE = 15; + + // The user will be asked to fill in their first name. This + // field can not be set at the same time as FULL_NAME. + FIRST_NAME = 23; + + // The user will be asked to fill in their last name. This + // field can not be set at the same time as FULL_NAME. + LAST_NAME = 24; + + // Question: "Which model are you interested in?" + // Category: "Auto" + VEHICLE_MODEL = 1001; + + // Question: "Which type of vehicle are you interested in?" + // Category: "Auto" + VEHICLE_TYPE = 1002; + + // Question: "What is your preferred dealership?" + // Category: "Auto" + PREFERRED_DEALERSHIP = 1003; + + // Question: "When do you plan on purchasing a vehicle?" + // Category: "Auto" + VEHICLE_PURCHASE_TIMELINE = 1004; + + // Question: "Do you own a vehicle?" + // Category: "Auto" + VEHICLE_OWNERSHIP = 1005; + + // Question: "What vehicle ownership option are you interested in?" + // Category: "Auto" + VEHICLE_PAYMENT_TYPE = 1009; + + // Question: "What type of vehicle condition are you interested in?" + // Category: "Auto" + VEHICLE_CONDITION = 1010; + + // Question: "What size is your company?" + // Category: "Business" + COMPANY_SIZE = 1006; + + // Question: "What is your annual sales volume?" + // Category: "Business" + ANNUAL_SALES = 1007; + + // Question: "How many years have you been in business?" + // Category: "Business" + YEARS_IN_BUSINESS = 1008; + + // Question: "What is your job department?" + // Category: "Business" + JOB_DEPARTMENT = 1011; + + // Question: "What is your job role?" + // Category: "Business" + JOB_ROLE = 1012; + + // Question: "Which program are you interested in?" + // Category: "Education" + EDUCATION_PROGRAM = 1013; + + // Question: "Which course are you interested in?" + // Category: "Education" + EDUCATION_COURSE = 1014; + + // Question: "Which product are you interested in?" + // Category: "General" + PRODUCT = 1016; + + // Question: "Which service are you interested in?" + // Category: "General" + SERVICE = 1017; + + // Question: "Which offer are you interested in?" + // Category: "General" + OFFER = 1018; + + // Question: "Which category are you interested in?" + // Category: "General" + CATEGORY = 1019; + + // Question: "What is your preferred method of contact?" + // Category: "General" + PREFERRED_CONTACT_METHOD = 1020; + + // Question: "What is your preferred location?" + // Category: "General" + PREFERRED_LOCATION = 1021; + + // Question: "What is the best time to contact you?" + // Category: "General" + PREFERRED_CONTACT_TIME = 1022; + + // Question: "When are you looking to make a purchase?" + // Category: "General" + PURCHASE_TIMELINE = 1023; + + // Question: "How many years of work experience do you have?" + // Category: "Jobs" + YEARS_OF_EXPERIENCE = 1048; + + // Question: "What industry do you work in?" + // Category: "Jobs" + JOB_INDUSTRY = 1049; + + // Question: "What is your highest level of education?" + // Category: "Jobs" + LEVEL_OF_EDUCATION = 1050; + + // Question: "What type of property are you looking for?" + // Category: "Real Estate" + PROPERTY_TYPE = 1024; + + // Question: "What do you need a realtor's help with?" + // Category: "Real Estate" + REALTOR_HELP_GOAL = 1025; + + // Question: "What neighborhood are you interested in?" + // Category: "Real Estate" + PROPERTY_COMMUNITY = 1026; + + // Question: "What price range are you looking for?" + // Category: "Real Estate" + PRICE_RANGE = 1027; + + // Question: "How many bedrooms are you looking for?" + // Category: "Real Estate" + NUMBER_OF_BEDROOMS = 1028; + + // Question: "Are you looking for a fully furnished property?" + // Category: "Real Estate" + FURNISHED_PROPERTY = 1029; + + // Question: "Are you looking for properties that allow pets?" + // Category: "Real Estate" + PETS_ALLOWED_PROPERTY = 1030; + + // Question: "What is the next product you plan to purchase?" + // Category: "Retail" + NEXT_PLANNED_PURCHASE = 1031; + + // Question: "Would you like to sign up for an event?" + // Category: "Retail" + EVENT_SIGNUP_INTEREST = 1033; + + // Question: "Where are you interested in shopping?" + // Category: "Retail" + PREFERRED_SHOPPING_PLACES = 1034; + + // Question: "What is your favorite brand?" + // Category: "Retail" + FAVORITE_BRAND = 1035; + + // Question: "Which type of valid commercial license do you have?" + // Category: "Transportation" + TRANSPORTATION_COMMERCIAL_LICENSE_TYPE = 1036; + + // Question: "Interested in booking an event?" + // Category: "Travel" + EVENT_BOOKING_INTEREST = 1038; + + // Question: "What is your destination country?" + // Category: "Travel" + DESTINATION_COUNTRY = 1039; + + // Question: "What is your destination city?" + // Category: "Travel" + DESTINATION_CITY = 1040; + + // Question: "What is your departure country?" + // Category: "Travel" + DEPARTURE_COUNTRY = 1041; + + // Question: "What is your departure city?" + // Category: "Travel" + DEPARTURE_CITY = 1042; + + // Question: "What is your departure date?" + // Category: "Travel" + DEPARTURE_DATE = 1043; + + // Question: "What is your return date?" + // Category: "Travel" + RETURN_DATE = 1044; + + // Question: "How many people are you traveling with?" + // Category: "Travel" + NUMBER_OF_TRAVELERS = 1045; + + // Question: "What is your travel budget?" + // Category: "Travel" + TRAVEL_BUDGET = 1046; + + // Question: "Where do you want to stay during your travel?" + // Category: "Travel" + TRAVEL_ACCOMMODATION = 1047; + } + + +} diff --git a/google/ads/googleads/v9/enums/lead_form_post_submit_call_to_action_type.proto b/google/ads/googleads/v9/enums/lead_form_post_submit_call_to_action_type.proto new file mode 100644 index 000000000..50c51eb69 --- /dev/null +++ b/google/ads/googleads/v9/enums/lead_form_post_submit_call_to_action_type.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LeadFormPostSubmitCallToActionTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Describes the type of post-submit call-to-action phrases for a lead form. +message LeadFormPostSubmitCallToActionTypeEnum { + // Enum describing the type of post-submit call-to-action phrases for a lead + // form. + enum LeadFormPostSubmitCallToActionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Visit site. + VISIT_SITE = 2; + + // Download. + DOWNLOAD = 3; + + // Learn more. + LEARN_MORE = 4; + + // Shop now. + SHOP_NOW = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/legacy_app_install_ad_app_store.proto b/google/ads/googleads/v9/enums/legacy_app_install_ad_app_store.proto new file mode 100644 index 000000000..3d24ee299 --- /dev/null +++ b/google/ads/googleads/v9/enums/legacy_app_install_ad_app_store.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LegacyAppInstallAdAppStoreProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing app store types for a legacy app install ad. + +// Container for enum describing app store type in a legacy app install ad. +message LegacyAppInstallAdAppStoreEnum { + // App store type in a legacy app install ad. + enum LegacyAppInstallAdAppStore { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Apple iTunes. + APPLE_APP_STORE = 2; + + // Google Play. + GOOGLE_PLAY = 3; + + // Windows Store. + WINDOWS_STORE = 4; + + // Windows Phone Store. + WINDOWS_PHONE_STORE = 5; + + // The app is hosted in a Chinese app store. + CN_APP_STORE = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/linked_account_type.proto b/google/ads/googleads/v9/enums/linked_account_type.proto new file mode 100644 index 000000000..084644179 --- /dev/null +++ b/google/ads/googleads/v9/enums/linked_account_type.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LinkedAccountTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing different types of Linked accounts. +message LinkedAccountTypeEnum { + // Describes the possible link types between a Google Ads customer + // and another account. + enum LinkedAccountType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // A link to provide third party app analytics data. + THIRD_PARTY_APP_ANALYTICS = 2; + + // A link to Data partner. + DATA_PARTNER = 3; + + // A link to Google Ads. + GOOGLE_ADS = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/listing_group_filter_bidding_category_level.proto b/google/ads/googleads/v9/enums/listing_group_filter_bidding_category_level.proto new file mode 100644 index 000000000..37e0d997f --- /dev/null +++ b/google/ads/googleads/v9/enums/listing_group_filter_bidding_category_level.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ListingGroupFilterBiddingCategoryLevelProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing listing groups. + +// Container for enum describing the levels of bidding category used in +// ListingGroupFilterDimension. +message ListingGroupFilterBiddingCategoryLevelEnum { + // The level of the listing group filter bidding category. + enum ListingGroupFilterBiddingCategoryLevel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Level 1. + LEVEL1 = 2; + + // Level 2. + LEVEL2 = 3; + + // Level 3. + LEVEL3 = 4; + + // Level 4. + LEVEL4 = 5; + + // Level 5. + LEVEL5 = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/listing_group_filter_custom_attribute_index.proto b/google/ads/googleads/v9/enums/listing_group_filter_custom_attribute_index.proto new file mode 100644 index 000000000..7646020ea --- /dev/null +++ b/google/ads/googleads/v9/enums/listing_group_filter_custom_attribute_index.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ListingGroupFilterCustomAttributeIndexProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing listing groups. + +// Container for enum describing the indexes of custom attribute used in +// ListingGroupFilterDimension. +message ListingGroupFilterCustomAttributeIndexEnum { + // The index of customer attributes. + enum ListingGroupFilterCustomAttributeIndex { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // First listing group filter custom attribute. + INDEX0 = 2; + + // Second listing group filter custom attribute. + INDEX1 = 3; + + // Third listing group filter custom attribute. + INDEX2 = 4; + + // Fourth listing group filter custom attribute. + INDEX3 = 5; + + // Fifth listing group filter custom attribute. + INDEX4 = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/listing_group_filter_product_channel.proto b/google/ads/googleads/v9/enums/listing_group_filter_product_channel.proto new file mode 100644 index 000000000..c49637f39 --- /dev/null +++ b/google/ads/googleads/v9/enums/listing_group_filter_product_channel.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ListingGroupFilterProductChannelProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing listing groups. + +// Locality of a product offer. +message ListingGroupFilterProductChannelEnum { + // Enum describing the locality of a product offer. + enum ListingGroupFilterProductChannel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The item is sold online. + ONLINE = 2; + + // The item is sold in local stores. + LOCAL = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/listing_group_filter_product_condition.proto b/google/ads/googleads/v9/enums/listing_group_filter_product_condition.proto new file mode 100644 index 000000000..4310f1475 --- /dev/null +++ b/google/ads/googleads/v9/enums/listing_group_filter_product_condition.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ListingGroupFilterProductConditionProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing listing groups. + +// Condition of a product offer. +message ListingGroupFilterProductConditionEnum { + // Enum describing the condition of a product offer. + enum ListingGroupFilterProductCondition { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The product condition is new. + NEW = 2; + + // The product condition is refurbished. + REFURBISHED = 3; + + // The product condition is used. + USED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/listing_group_filter_product_type_level.proto b/google/ads/googleads/v9/enums/listing_group_filter_product_type_level.proto new file mode 100644 index 000000000..e429fe13c --- /dev/null +++ b/google/ads/googleads/v9/enums/listing_group_filter_product_type_level.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ListingGroupFilterProductTypeLevelProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing listing groups. + +// Level of the type of a product offer. +message ListingGroupFilterProductTypeLevelEnum { + // Enum describing the level of the type of a product offer. + enum ListingGroupFilterProductTypeLevel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Level 1. + LEVEL1 = 2; + + // Level 2. + LEVEL2 = 3; + + // Level 3. + LEVEL3 = 4; + + // Level 4. + LEVEL4 = 5; + + // Level 5. + LEVEL5 = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/listing_group_filter_type_enum.proto b/google/ads/googleads/v9/enums/listing_group_filter_type_enum.proto new file mode 100644 index 000000000..18ae23439 --- /dev/null +++ b/google/ads/googleads/v9/enums/listing_group_filter_type_enum.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ListingGroupFilterTypeEnumProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing listing groups. + +// Container for enum describing the type of the listing group filter node. +message ListingGroupFilterTypeEnum { + // The type of the listing group filter. + enum ListingGroupFilterType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Subdivision of products along some listing dimensions. + SUBDIVISION = 2; + + // An included listing group filter leaf node. + UNIT_INCLUDED = 3; + + // An excluded listing group filter leaf node. + UNIT_EXCLUDED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/listing_group_filter_vertical.proto b/google/ads/googleads/v9/enums/listing_group_filter_vertical.proto new file mode 100644 index 000000000..81b458815 --- /dev/null +++ b/google/ads/googleads/v9/enums/listing_group_filter_vertical.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ListingGroupFilterVerticalProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing listing groups. + +// Container for enum describing the type of the vertical a listing group filter +// tree represents. +message ListingGroupFilterVerticalEnum { + // The type of the listing group filter vertical. + enum ListingGroupFilterVertical { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Represents the shopping vertical. + SHOPPING = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/listing_group_type.proto b/google/ads/googleads/v9/enums/listing_group_type.proto new file mode 100644 index 000000000..e57d53a96 --- /dev/null +++ b/google/ads/googleads/v9/enums/listing_group_type.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ListingGroupTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing listing groups. + +// Container for enum describing the type of the listing group. +message ListingGroupTypeEnum { + // The type of the listing group. + enum ListingGroupType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Subdivision of products along some listing dimension. These nodes + // are not used by serving to target listing entries, but is purely + // to define the structure of the tree. + SUBDIVISION = 2; + + // Listing group unit that defines a bid. + UNIT = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/local_placeholder_field.proto b/google/ads/googleads/v9/enums/local_placeholder_field.proto new file mode 100644 index 000000000..7fae7b3d5 --- /dev/null +++ b/google/ads/googleads/v9/enums/local_placeholder_field.proto @@ -0,0 +1,119 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LocalPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Local placeholder fields. + +// Values for Local placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message LocalPlaceholderFieldEnum { + // Possible values for Local placeholder fields. + enum LocalPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Unique ID. + DEAL_ID = 2; + + // Data Type: STRING. Required. Main headline with local deal title to be + // shown in dynamic ad. + DEAL_NAME = 3; + + // Data Type: STRING. Local deal subtitle to be shown in dynamic ad. + SUBTITLE = 4; + + // Data Type: STRING. Description of local deal to be shown in dynamic ad. + DESCRIPTION = 5; + + // Data Type: STRING. Price to be shown in the ad. Highly recommended for + // dynamic ads. Example: "100.00 USD" + PRICE = 6; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 7; + + // Data Type: STRING. Sale price to be shown in the ad. + // Example: "80.00 USD" + SALE_PRICE = 8; + + // Data Type: STRING. Formatted sale price to be shown in the ad. + // Example: "On sale for $80.00", "$60 - $80" + FORMATTED_SALE_PRICE = 9; + + // Data Type: URL. Image to be displayed in the ad. + IMAGE_URL = 10; + + // Data Type: STRING. Complete property address, including postal code. + ADDRESS = 11; + + // Data Type: STRING. Category of local deal used to group like items + // together for recommendation engine. + CATEGORY = 12; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 13; + + // Data Type: URL_LIST. Required. Final URLs to be used in ad when using + // Upgraded URLs; the more specific the better (e.g. the individual URL of a + // specific local deal and its location). + FINAL_URLS = 14; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 15; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 16; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 17; + + // Data Type: STRING_LIST. List of recommended local deal IDs to show + // together with this item. + SIMILAR_DEAL_IDS = 18; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 19; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 20; + } + + +} diff --git a/google/ads/googleads/v9/enums/location_extension_targeting_criterion_field.proto b/google/ads/googleads/v9/enums/location_extension_targeting_criterion_field.proto new file mode 100644 index 000000000..acfe44f32 --- /dev/null +++ b/google/ads/googleads/v9/enums/location_extension_targeting_criterion_field.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LocationExtensionTargetingCriterionFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Location Extension Targeting criterion fields. + +// Values for Location Extension Targeting criterion fields. +message LocationExtensionTargetingCriterionFieldEnum { + // Possible values for Location Extension Targeting criterion fields. + enum LocationExtensionTargetingCriterionField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Line 1 of the business address. + ADDRESS_LINE_1 = 2; + + // Data Type: STRING. Line 2 of the business address. + ADDRESS_LINE_2 = 3; + + // Data Type: STRING. City of the business address. + CITY = 4; + + // Data Type: STRING. Province of the business address. + PROVINCE = 5; + + // Data Type: STRING. Postal code of the business address. + POSTAL_CODE = 6; + + // Data Type: STRING. Country code of the business address. + COUNTRY_CODE = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/location_group_radius_units.proto b/google/ads/googleads/v9/enums/location_group_radius_units.proto new file mode 100644 index 000000000..870e4bd96 --- /dev/null +++ b/google/ads/googleads/v9/enums/location_group_radius_units.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LocationGroupRadiusUnitsProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing location group radius units. + +// Container for enum describing unit of radius in location group. +message LocationGroupRadiusUnitsEnum { + // The unit of radius distance in location group (e.g. MILES) + enum LocationGroupRadiusUnits { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Meters + METERS = 2; + + // Miles + MILES = 3; + + // Milli Miles + MILLI_MILES = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/location_placeholder_field.proto b/google/ads/googleads/v9/enums/location_placeholder_field.proto new file mode 100644 index 000000000..216aeec88 --- /dev/null +++ b/google/ads/googleads/v9/enums/location_placeholder_field.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LocationPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Location placeholder fields. + +// Values for Location placeholder fields. +message LocationPlaceholderFieldEnum { + // Possible values for Location placeholder fields. + enum LocationPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The name of the business. + BUSINESS_NAME = 2; + + // Data Type: STRING. Line 1 of the business address. + ADDRESS_LINE_1 = 3; + + // Data Type: STRING. Line 2 of the business address. + ADDRESS_LINE_2 = 4; + + // Data Type: STRING. City of the business address. + CITY = 5; + + // Data Type: STRING. Province of the business address. + PROVINCE = 6; + + // Data Type: STRING. Postal code of the business address. + POSTAL_CODE = 7; + + // Data Type: STRING. Country code of the business address. + COUNTRY_CODE = 8; + + // Data Type: STRING. Phone number of the business. + PHONE_NUMBER = 9; + } + + +} diff --git a/google/ads/googleads/v9/enums/location_source_type.proto b/google/ads/googleads/v9/enums/location_source_type.proto new file mode 100644 index 000000000..d1ecb4fed --- /dev/null +++ b/google/ads/googleads/v9/enums/location_source_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "LocationSourceTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing location source types. + +// Used to distinguish the location source type. +message LocationSourceTypeEnum { + // The possible types of a location source. + enum LocationSourceType { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Locations associated with the customer's linked Business Profile. + GOOGLE_MY_BUSINESS = 2; + + // Affiliate (chain) store locations. For example, Best Buy store locations. + AFFILIATE = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/manager_link_status.proto b/google/ads/googleads/v9/enums/manager_link_status.proto new file mode 100644 index 000000000..2f85dc442 --- /dev/null +++ b/google/ads/googleads/v9/enums/manager_link_status.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ManagerLinkStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing possible status of a manager and client link. +message ManagerLinkStatusEnum { + // Possible statuses of a link. + enum ManagerLinkStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Indicates current in-effect relationship + ACTIVE = 2; + + // Indicates terminated relationship + INACTIVE = 3; + + // Indicates relationship has been requested by manager, but the client + // hasn't accepted yet. + PENDING = 4; + + // Relationship was requested by the manager, but the client has refused. + REFUSED = 5; + + // Indicates relationship has been requested by manager, but manager + // canceled it. + CANCELED = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/matching_function_context_type.proto b/google/ads/googleads/v9/enums/matching_function_context_type.proto new file mode 100644 index 000000000..53e0ffcd0 --- /dev/null +++ b/google/ads/googleads/v9/enums/matching_function_context_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MatchingFunctionContextTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing matching function context types. + +// Container for context types for an operand in a matching function. +message MatchingFunctionContextTypeEnum { + // Possible context types for an operand in a matching function. + enum MatchingFunctionContextType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Feed item id in the request context. + FEED_ITEM_ID = 2; + + // The device being used (possible values are 'Desktop' or 'Mobile'). + DEVICE_NAME = 3; + + // Feed item set id in the request context. + FEED_ITEM_SET_ID = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/matching_function_operator.proto b/google/ads/googleads/v9/enums/matching_function_operator.proto new file mode 100644 index 000000000..476b2470a --- /dev/null +++ b/google/ads/googleads/v9/enums/matching_function_operator.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MatchingFunctionOperatorProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing matching function operators. + +// Container for enum describing matching function operator. +message MatchingFunctionOperatorEnum { + // Possible operators in a matching function. + enum MatchingFunctionOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The IN operator. + IN = 2; + + // The IDENTITY operator. + IDENTITY = 3; + + // The EQUALS operator + EQUALS = 4; + + // Operator that takes two or more operands that are of type + // FunctionOperand and checks that all the operands evaluate to true. + // For functions related to ad formats, all the operands must be in + // left_operands. + AND = 5; + + // Operator that returns true if the elements in left_operands contain any + // of the elements in right_operands. Otherwise, return false. The + // right_operands must contain at least 1 and no more than 3 + // ConstantOperands. + CONTAINS_ANY = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/media_type.proto b/google/ads/googleads/v9/enums/media_type.proto new file mode 100644 index 000000000..0be1d4735 --- /dev/null +++ b/google/ads/googleads/v9/enums/media_type.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MediaTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing media types. + +// Container for enum describing the types of media. +message MediaTypeEnum { + // The type of media. + enum MediaType { + // The media type has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Static image, used for image ad. + IMAGE = 2; + + // Small image, used for map ad. + ICON = 3; + + // ZIP file, used in fields of template ads. + MEDIA_BUNDLE = 4; + + // Audio file. + AUDIO = 5; + + // Video file. + VIDEO = 6; + + // Animated image, such as animated GIF. + DYNAMIC_IMAGE = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/merchant_center_link_status.proto b/google/ads/googleads/v9/enums/merchant_center_link_status.proto new file mode 100644 index 000000000..0c3979de6 --- /dev/null +++ b/google/ads/googleads/v9/enums/merchant_center_link_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MerchantCenterLinkStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Merchant Center link statuses. + +// Container for enum describing possible statuses of a Google Merchant Center +// link. +message MerchantCenterLinkStatusEnum { + // Describes the possible statuses for a link between a Google Ads customer + // and a Google Merchant Center account. + enum MerchantCenterLinkStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The link is enabled. + ENABLED = 2; + + // The link has no effect. It was proposed by the Merchant Center Account + // owner and hasn't been confirmed by the customer. + PENDING = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/message_placeholder_field.proto b/google/ads/googleads/v9/enums/message_placeholder_field.proto new file mode 100644 index 000000000..0e9a38a69 --- /dev/null +++ b/google/ads/googleads/v9/enums/message_placeholder_field.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MessagePlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Message placeholder fields. + +// Values for Message placeholder fields. +message MessagePlaceholderFieldEnum { + // Possible values for Message placeholder fields. + enum MessagePlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The name of your business. + BUSINESS_NAME = 2; + + // Data Type: STRING. Country code of phone number. + COUNTRY_CODE = 3; + + // Data Type: STRING. A phone number that's capable of sending and receiving + // text messages. + PHONE_NUMBER = 4; + + // Data Type: STRING. The text that will go in your click-to-message ad. + MESSAGE_EXTENSION_TEXT = 5; + + // Data Type: STRING. The message text automatically shows in people's + // messaging apps when they tap to send you a message. + MESSAGE_TEXT = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/mime_type.proto b/google/ads/googleads/v9/enums/mime_type.proto new file mode 100644 index 000000000..f8c1d5497 --- /dev/null +++ b/google/ads/googleads/v9/enums/mime_type.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MimeTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing mime types. + +// Container for enum describing the mime types. +message MimeTypeEnum { + // The mime type + enum MimeType { + // The mime type has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // MIME type of image/jpeg. + IMAGE_JPEG = 2; + + // MIME type of image/gif. + IMAGE_GIF = 3; + + // MIME type of image/png. + IMAGE_PNG = 4; + + // MIME type of application/x-shockwave-flash. + FLASH = 5; + + // MIME type of text/html. + TEXT_HTML = 6; + + // MIME type of application/pdf. + PDF = 7; + + // MIME type of application/msword. + MSWORD = 8; + + // MIME type of application/vnd.ms-excel. + MSEXCEL = 9; + + // MIME type of application/rtf. + RTF = 10; + + // MIME type of audio/wav. + AUDIO_WAV = 11; + + // MIME type of audio/mp3. + AUDIO_MP3 = 12; + + // MIME type of application/x-html5-ad-zip. + HTML5_AD_ZIP = 13; + } + + +} diff --git a/google/ads/googleads/v9/enums/minute_of_hour.proto b/google/ads/googleads/v9/enums/minute_of_hour.proto new file mode 100644 index 000000000..7dc8f5df8 --- /dev/null +++ b/google/ads/googleads/v9/enums/minute_of_hour.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MinuteOfHourProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing days of week. + +// Container for enumeration of quarter-hours. +message MinuteOfHourEnum { + // Enumerates of quarter-hours. E.g. "FIFTEEN" + enum MinuteOfHour { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Zero minutes past the hour. + ZERO = 2; + + // Fifteen minutes past the hour. + FIFTEEN = 3; + + // Thirty minutes past the hour. + THIRTY = 4; + + // Forty-five minutes past the hour. + FORTY_FIVE = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/mobile_app_vendor.proto b/google/ads/googleads/v9/enums/mobile_app_vendor.proto new file mode 100644 index 000000000..c3a805c26 --- /dev/null +++ b/google/ads/googleads/v9/enums/mobile_app_vendor.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MobileAppVendorProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing different types of mobile app vendors. +message MobileAppVendorEnum { + // The type of mobile app vendor + enum MobileAppVendor { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Mobile app vendor for Apple app store. + APPLE_APP_STORE = 2; + + // Mobile app vendor for Google app store. + GOOGLE_APP_STORE = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/mobile_device_type.proto b/google/ads/googleads/v9/enums/mobile_device_type.proto new file mode 100644 index 000000000..ac91fc9c7 --- /dev/null +++ b/google/ads/googleads/v9/enums/mobile_device_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MobileDeviceTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing mobile device types. + +// Container for enum describing the types of mobile device. +message MobileDeviceTypeEnum { + // The type of mobile device. + enum MobileDeviceType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Mobile phones. + MOBILE = 2; + + // Tablets. + TABLET = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/month_of_year.proto b/google/ads/googleads/v9/enums/month_of_year.proto new file mode 100644 index 000000000..dbc85b3f4 --- /dev/null +++ b/google/ads/googleads/v9/enums/month_of_year.proto @@ -0,0 +1,80 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "MonthOfYearProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing days of week. + +// Container for enumeration of months of the year, e.g., "January". +message MonthOfYearEnum { + // Enumerates months of the year, e.g., "January". + enum MonthOfYear { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // January. + JANUARY = 2; + + // February. + FEBRUARY = 3; + + // March. + MARCH = 4; + + // April. + APRIL = 5; + + // May. + MAY = 6; + + // June. + JUNE = 7; + + // July. + JULY = 8; + + // August. + AUGUST = 9; + + // September. + SEPTEMBER = 10; + + // October. + OCTOBER = 11; + + // November. + NOVEMBER = 12; + + // December. + DECEMBER = 13; + } + + +} diff --git a/google/ads/googleads/v9/enums/negative_geo_target_type.proto b/google/ads/googleads/v9/enums/negative_geo_target_type.proto new file mode 100644 index 000000000..0f379553c --- /dev/null +++ b/google/ads/googleads/v9/enums/negative_geo_target_type.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "NegativeGeoTargetTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing negative geo target types. + +// Container for enum describing possible negative geo target types. +message NegativeGeoTargetTypeEnum { + // The possible negative geo target types. + enum NegativeGeoTargetType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Specifies that a user is excluded from seeing the ad if they + // are in, or show interest in, advertiser's excluded locations. + PRESENCE_OR_INTEREST = 4; + + // Specifies that a user is excluded from seeing the ad if they + // are in advertiser's excluded locations. + PRESENCE = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/offline_user_data_job_failure_reason.proto b/google/ads/googleads/v9/enums/offline_user_data_job_failure_reason.proto new file mode 100644 index 000000000..fe016df98 --- /dev/null +++ b/google/ads/googleads/v9/enums/offline_user_data_job_failure_reason.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobFailureReasonProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing offline user data job failure reasons. + +// Container for enum describing reasons why an offline user data job +// failed to be processed. +message OfflineUserDataJobFailureReasonEnum { + // The failure reason of an offline user data job. + enum OfflineUserDataJobFailureReason { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The matched transactions are insufficient. + INSUFFICIENT_MATCHED_TRANSACTIONS = 2; + + // The uploaded transactions are insufficient. + INSUFFICIENT_TRANSACTIONS = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/offline_user_data_job_match_rate_range.proto b/google/ads/googleads/v9/enums/offline_user_data_job_match_rate_range.proto new file mode 100644 index 000000000..9218ee478 --- /dev/null +++ b/google/ads/googleads/v9/enums/offline_user_data_job_match_rate_range.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobMatchRateRangeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing reasons match rate ranges for a customer match +// list upload. +message OfflineUserDataJobMatchRateRangeEnum { + // The match rate range of an offline user data job. + enum OfflineUserDataJobMatchRateRange { + // Not specified. + UNSPECIFIED = 0; + + // Default value for match rate range. + UNKNOWN = 1; + + // Match rate range for offline data upload entity is between 0% and 19%. + MATCH_RANGE_LESS_THAN_20 = 2; + + // Match rate range for offline data upload entity is between 20% and 30%. + MATCH_RANGE_20_TO_30 = 3; + + // Match rate range for offline data upload entity is between 31% and 40%. + MATCH_RANGE_31_TO_40 = 4; + + // Match rate range for offline data upload entity is between 41% and 50%. + MATCH_RANGE_41_TO_50 = 5; + + // Match rate range for offline data upload entity is between 51% and 60%. + MATCH_RANGE_51_TO_60 = 6; + + // Match rate range for offline data upload entity is between 61% and 70%. + MATCH_RANGE_61_TO_70 = 7; + + // Match rate range for offline data upload entity is between 71% and 80%. + MATCH_RANGE_71_TO_80 = 8; + + // Match rate range for offline data upload entity is between 81% and 90%. + MATCH_RANGE_81_TO_90 = 9; + + // Match rate range for offline data upload entity more than or equal to + // 91%. + MATCH_RANGE_91_TO_100 = 10; + } + + +} diff --git a/google/ads/googleads/v9/enums/offline_user_data_job_status.proto b/google/ads/googleads/v9/enums/offline_user_data_job_status.proto new file mode 100644 index 000000000..5e287a3a7 --- /dev/null +++ b/google/ads/googleads/v9/enums/offline_user_data_job_status.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing offline user data job status. + +// Container for enum describing status of an offline user data job. +message OfflineUserDataJobStatusEnum { + // The status of an offline user data job. + enum OfflineUserDataJobStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The job has been successfully created and pending for uploading. + PENDING = 2; + + // Upload(s) have been accepted and data is being processed. + RUNNING = 3; + + // Uploaded data has been successfully processed. + SUCCESS = 4; + + // Uploaded data has failed to be processed. + FAILED = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/offline_user_data_job_type.proto b/google/ads/googleads/v9/enums/offline_user_data_job_type.proto new file mode 100644 index 000000000..1de3c83db --- /dev/null +++ b/google/ads/googleads/v9/enums/offline_user_data_job_type.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing offline user data job types. + +// Container for enum describing types of an offline user data job. +message OfflineUserDataJobTypeEnum { + // The type of an offline user data job. + enum OfflineUserDataJobType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Store Sales Direct data for self service. + STORE_SALES_UPLOAD_FIRST_PARTY = 2; + + // Store Sales Direct data for third party. + STORE_SALES_UPLOAD_THIRD_PARTY = 3; + + // Customer Match user list data. + CUSTOMER_MATCH_USER_LIST = 4; + + // Customer Match with attribute data. + CUSTOMER_MATCH_WITH_ATTRIBUTES = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/operating_system_version_operator_type.proto b/google/ads/googleads/v9/enums/operating_system_version_operator_type.proto new file mode 100644 index 000000000..fcd024b75 --- /dev/null +++ b/google/ads/googleads/v9/enums/operating_system_version_operator_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "OperatingSystemVersionOperatorTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing operating system version operator types. + +// Container for enum describing the type of OS operators. +message OperatingSystemVersionOperatorTypeEnum { + // The type of operating system version. + enum OperatingSystemVersionOperatorType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Equals to the specified version. + EQUALS_TO = 2; + + // Greater than or equals to the specified version. + GREATER_THAN_EQUALS_TO = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/optimization_goal_type.proto b/google/ads/googleads/v9/enums/optimization_goal_type.proto new file mode 100644 index 000000000..48b5583c0 --- /dev/null +++ b/google/ads/googleads/v9/enums/optimization_goal_type.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "OptimizationGoalTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing optimization goal type. + +// Container for enum describing the type of optimization goal. +message OptimizationGoalTypeEnum { + // The type of optimization goal + enum OptimizationGoalType { + // Not specified. + UNSPECIFIED = 0; + + // Used as a return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Optimize for call clicks. Call click conversions are times people + // selected 'Call' to contact a store after viewing an ad. + CALL_CLICKS = 2; + + // Optimize for driving directions. Driving directions conversions are + // times people selected 'Get directions' to navigate to a store after + // viewing an ad. + DRIVING_DIRECTIONS = 3; + + // Optimize for pre-registration. Pre-registration conversions are the + // number of pre-registration signups to receive a notification when the app + // is released. + APP_PRE_REGISTRATION = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/parental_status_type.proto b/google/ads/googleads/v9/enums/parental_status_type.proto new file mode 100644 index 000000000..6785db0b4 --- /dev/null +++ b/google/ads/googleads/v9/enums/parental_status_type.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ParentalStatusTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing parenal status types. + +// Container for enum describing the type of demographic parental statuses. +message ParentalStatusTypeEnum { + // The type of parental statuses (e.g. not a parent). + enum ParentalStatusType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Parent. + PARENT = 300; + + // Not a parent. + NOT_A_PARENT = 301; + + // Undetermined parental status. + UNDETERMINED = 302; + } + + +} diff --git a/google/ads/googleads/v9/enums/payment_mode.proto b/google/ads/googleads/v9/enums/payment_mode.proto new file mode 100644 index 000000000..8961219a4 --- /dev/null +++ b/google/ads/googleads/v9/enums/payment_mode.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PaymentModeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing payment modes. + +// Container for enum describing possible payment modes. +message PaymentModeEnum { + // Enum describing possible payment modes. + enum PaymentMode { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Pay per click. + CLICKS = 4; + + // Pay per conversion value. This mode is only supported by campaigns with + // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION, and + // BudgetType.HOTEL_ADS_COMMISSION. + CONVERSION_VALUE = 5; + + // Pay per conversion. This mode is only supported by campaigns with + // AdvertisingChannelType.DISPLAY (excluding + // AdvertisingChannelSubType.DISPLAY_GMAIL), BiddingStrategyType.TARGET_CPA, + // and BudgetType.FIXED_CPA. The customer must also be eligible for this + // mode. See Customer.eligibility_failure_reasons for details. + CONVERSIONS = 6; + + // Pay per guest stay value. This mode is only supported by campaigns with + // AdvertisingChannelType.HOTEL, BiddingStrategyType.COMMISSION, and + // BudgetType.STANDARD. + GUEST_STAY = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/placeholder_type.proto b/google/ads/googleads/v9/enums/placeholder_type.proto new file mode 100644 index 000000000..725f11d18 --- /dev/null +++ b/google/ads/googleads/v9/enums/placeholder_type.proto @@ -0,0 +1,124 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PlaceholderTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing feed placeholder types. + +// Container for enum describing possible placeholder types for a feed mapping. +message PlaceholderTypeEnum { + // Possible placeholder types for a feed mapping. + enum PlaceholderType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Lets you show links in your ad to pages from your website, including the + // main landing page. + SITELINK = 2; + + // Lets you attach a phone number to an ad, allowing customers to call + // directly from the ad. + CALL = 3; + + // Lets you provide users with a link that points to a mobile app in + // addition to a website. + APP = 4; + + // Lets you show locations of businesses from your Business Profile + // in your ad. This helps people find your locations by showing your + // ads with your address, a map to your location, or the distance to your + // business. This extension type is useful to draw customers to your + // brick-and-mortar location. + LOCATION = 5; + + // If you sell your product through retail chains, affiliate location + // extensions let you show nearby stores that carry your products. + AFFILIATE_LOCATION = 6; + + // Lets you include additional text with your search ads that provide + // detailed information about your business, including products and services + // you offer. Callouts appear in ads at the top and bottom of Google search + // results. + CALLOUT = 7; + + // Lets you add more info to your ad, specific to some predefined categories + // such as types, brands, styles, etc. A minimum of 3 text (SNIPPETS) values + // are required. + STRUCTURED_SNIPPET = 8; + + // Allows users to see your ad, click an icon, and contact you directly by + // text message. With one tap on your ad, people can contact you to book an + // appointment, get a quote, ask for information, or request a service. + MESSAGE = 9; + + // Lets you display prices for a list of items along with your ads. A price + // feed is composed of three to eight price table rows. + PRICE = 10; + + // Allows you to highlight sales and other promotions that let users see how + // they can save by buying now. + PROMOTION = 11; + + // Lets you dynamically inject custom data into the title and description + // of your ads. + AD_CUSTOMIZER = 12; + + // Indicates that this feed is for education dynamic remarketing. + DYNAMIC_EDUCATION = 13; + + // Indicates that this feed is for flight dynamic remarketing. + DYNAMIC_FLIGHT = 14; + + // Indicates that this feed is for a custom dynamic remarketing type. Use + // this only if the other business types don't apply to your products or + // services. + DYNAMIC_CUSTOM = 15; + + // Indicates that this feed is for hotels and rentals dynamic remarketing. + DYNAMIC_HOTEL = 16; + + // Indicates that this feed is for real estate dynamic remarketing. + DYNAMIC_REAL_ESTATE = 17; + + // Indicates that this feed is for travel dynamic remarketing. + DYNAMIC_TRAVEL = 18; + + // Indicates that this feed is for local deals dynamic remarketing. + DYNAMIC_LOCAL = 19; + + // Indicates that this feed is for job dynamic remarketing. + DYNAMIC_JOB = 20; + + // Lets you attach an image to an ad. + IMAGE = 21; + } + + +} diff --git a/google/ads/googleads/v9/enums/placement_type.proto b/google/ads/googleads/v9/enums/placement_type.proto new file mode 100644 index 000000000..7ea18a868 --- /dev/null +++ b/google/ads/googleads/v9/enums/placement_type.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PlacementTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing placement types. + +// Container for enum describing possible placement types. +message PlacementTypeEnum { + // Possible placement types for a feed mapping. + enum PlacementType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Websites(e.g. 'www.flowers4sale.com'). + WEBSITE = 2; + + // Mobile application categories(e.g. 'Games'). + MOBILE_APP_CATEGORY = 3; + + // mobile applications(e.g. 'mobileapp::2-com.whatsthewordanswers'). + MOBILE_APPLICATION = 4; + + // YouTube videos(e.g. 'youtube.com/video/wtLJPvx7-ys'). + YOUTUBE_VIDEO = 5; + + // YouTube channels(e.g. 'youtube.com::L8ZULXASCc1I_oaOT0NaOQ'). + YOUTUBE_CHANNEL = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/policy_approval_status.proto b/google/ads/googleads/v9/enums/policy_approval_status.proto new file mode 100644 index 000000000..9462df773 --- /dev/null +++ b/google/ads/googleads/v9/enums/policy_approval_status.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyApprovalStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing policy approval statuses. + +// Container for enum describing possible policy approval statuses. +message PolicyApprovalStatusEnum { + // The possible policy approval statuses. When there are several approval + // statuses available the most severe one will be used. The order of severity + // is DISAPPROVED, AREA_OF_INTEREST_ONLY, APPROVED_LIMITED and APPROVED. + enum PolicyApprovalStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Will not serve. + DISAPPROVED = 2; + + // Serves with restrictions. + APPROVED_LIMITED = 3; + + // Serves without restrictions. + APPROVED = 4; + + // Will not serve in targeted countries, but may serve for users who are + // searching for information about the targeted countries. + AREA_OF_INTEREST_ONLY = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/policy_review_status.proto b/google/ads/googleads/v9/enums/policy_review_status.proto new file mode 100644 index 000000000..5e34834be --- /dev/null +++ b/google/ads/googleads/v9/enums/policy_review_status.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyReviewStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing policy review statuses. + +// Container for enum describing possible policy review statuses. +message PolicyReviewStatusEnum { + // The possible policy review statuses. + enum PolicyReviewStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Currently under review. + REVIEW_IN_PROGRESS = 2; + + // Primary review complete. Other reviews may be continuing. + REVIEWED = 3; + + // The resource has been resubmitted for approval or its policy decision has + // been appealed. + UNDER_APPEAL = 4; + + // The resource is eligible and may be serving but could still undergo + // further review. + ELIGIBLE_MAY_SERVE = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/policy_topic_entry_type.proto b/google/ads/googleads/v9/enums/policy_topic_entry_type.proto new file mode 100644 index 000000000..69eef6938 --- /dev/null +++ b/google/ads/googleads/v9/enums/policy_topic_entry_type.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyTopicEntryTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing policy topic entry types. + +// Container for enum describing possible policy topic entry types. +message PolicyTopicEntryTypeEnum { + // The possible policy topic entry types. + enum PolicyTopicEntryType { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The resource will not be served. + PROHIBITED = 2; + + // The resource will not be served under some circumstances. + LIMITED = 4; + + // The resource cannot serve at all because of the current targeting + // criteria. + FULLY_LIMITED = 8; + + // May be of interest, but does not limit how the resource is served. + DESCRIPTIVE = 5; + + // Could increase coverage beyond normal. + BROADENING = 6; + + // Constrained for all targeted countries, but may serve in other countries + // through area of interest. + AREA_OF_INTEREST_ONLY = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/policy_topic_evidence_destination_mismatch_url_type.proto b/google/ads/googleads/v9/enums/policy_topic_evidence_destination_mismatch_url_type.proto new file mode 100644 index 000000000..bf1b391fc --- /dev/null +++ b/google/ads/googleads/v9/enums/policy_topic_evidence_destination_mismatch_url_type.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyTopicEvidenceDestinationMismatchUrlTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing policy topic evidence destination mismatch url types. + +// Container for enum describing possible policy topic evidence destination +// mismatch url types. +message PolicyTopicEvidenceDestinationMismatchUrlTypeEnum { + // The possible policy topic evidence destination mismatch url types. + enum PolicyTopicEvidenceDestinationMismatchUrlType { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The display url. + DISPLAY_URL = 2; + + // The final url. + FINAL_URL = 3; + + // The final mobile url. + FINAL_MOBILE_URL = 4; + + // The tracking url template, with substituted desktop url. + TRACKING_URL = 5; + + // The tracking url template, with substituted mobile url. + MOBILE_TRACKING_URL = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/policy_topic_evidence_destination_not_working_device.proto b/google/ads/googleads/v9/enums/policy_topic_evidence_destination_not_working_device.proto new file mode 100644 index 000000000..fc8a83931 --- /dev/null +++ b/google/ads/googleads/v9/enums/policy_topic_evidence_destination_not_working_device.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyTopicEvidenceDestinationNotWorkingDeviceProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing device of destination not working policy topic +// evidence. + +// Container for enum describing possible policy topic evidence destination not +// working devices. +message PolicyTopicEvidenceDestinationNotWorkingDeviceEnum { + // The possible policy topic evidence destination not working devices. + enum PolicyTopicEvidenceDestinationNotWorkingDevice { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Landing page doesn't work on desktop device. + DESKTOP = 2; + + // Landing page doesn't work on Android device. + ANDROID = 3; + + // Landing page doesn't work on iOS device. + IOS = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto b/google/ads/googleads/v9/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto new file mode 100644 index 000000000..600d0c308 --- /dev/null +++ b/google/ads/googleads/v9/enums/policy_topic_evidence_destination_not_working_dns_error_type.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing DNS error types of destination not working policy topic +// evidence. + +// Container for enum describing possible policy topic evidence destination not +// working DNS error types. +message PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum { + // The possible policy topic evidence destination not working DNS error types. + enum PolicyTopicEvidenceDestinationNotWorkingDnsErrorType { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // Host name not found in DNS when fetching landing page. + HOSTNAME_NOT_FOUND = 2; + + // Google internal crawler issue when communicating with DNS. This error + // doesn't mean the landing page doesn't work. Google will recrawl the + // landing page. + GOOGLE_CRAWLER_DNS_ISSUE = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/positive_geo_target_type.proto b/google/ads/googleads/v9/enums/positive_geo_target_type.proto new file mode 100644 index 000000000..ca81822ed --- /dev/null +++ b/google/ads/googleads/v9/enums/positive_geo_target_type.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PositiveGeoTargetTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing positive geo target types. + +// Container for enum describing possible positive geo target types. +message PositiveGeoTargetTypeEnum { + // The possible positive geo target types. + enum PositiveGeoTargetType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Specifies that an ad is triggered if the user is in, + // or shows interest in, advertiser's targeted locations. + PRESENCE_OR_INTEREST = 5; + + // Specifies that an ad is triggered if the user + // searches for advertiser's targeted locations. + // This can only be used with Search and standard + // Shopping campaigns. + SEARCH_INTEREST = 6; + + // Specifies that an ad is triggered if the user is in + // or regularly in advertiser's targeted locations. + PRESENCE = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/preferred_content_type.proto b/google/ads/googleads/v9/enums/preferred_content_type.proto new file mode 100644 index 000000000..49b5548ec --- /dev/null +++ b/google/ads/googleads/v9/enums/preferred_content_type.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PreferredContentTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing preferred content criterion type. + +// Container for enumeration of preferred content criterion type. +message PreferredContentTypeEnum { + // Enumerates preferred content criterion type. + enum PreferredContentType { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Represents top content on YouTube. + YOUTUBE_TOP_CONTENT = 400; + } + + +} diff --git a/google/ads/googleads/v9/enums/price_extension_price_qualifier.proto b/google/ads/googleads/v9/enums/price_extension_price_qualifier.proto new file mode 100644 index 000000000..67f252460 --- /dev/null +++ b/google/ads/googleads/v9/enums/price_extension_price_qualifier.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PriceExtensionPriceQualifierProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing price extension price qualifier type. + +// Container for enum describing a price extension price qualifier. +message PriceExtensionPriceQualifierEnum { + // Enums of price extension price qualifier. + enum PriceExtensionPriceQualifier { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // 'From' qualifier for the price. + FROM = 2; + + // 'Up to' qualifier for the price. + UP_TO = 3; + + // 'Average' qualifier for the price. + AVERAGE = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/price_extension_price_unit.proto b/google/ads/googleads/v9/enums/price_extension_price_unit.proto new file mode 100644 index 000000000..d781a573b --- /dev/null +++ b/google/ads/googleads/v9/enums/price_extension_price_unit.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PriceExtensionPriceUnitProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing price extension price unit. + +// Container for enum describing price extension price unit. +message PriceExtensionPriceUnitEnum { + // Price extension price unit. + enum PriceExtensionPriceUnit { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Per hour. + PER_HOUR = 2; + + // Per day. + PER_DAY = 3; + + // Per week. + PER_WEEK = 4; + + // Per month. + PER_MONTH = 5; + + // Per year. + PER_YEAR = 6; + + // Per night. + PER_NIGHT = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/price_extension_type.proto b/google/ads/googleads/v9/enums/price_extension_type.proto new file mode 100644 index 000000000..4b79d88d2 --- /dev/null +++ b/google/ads/googleads/v9/enums/price_extension_type.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PriceExtensionTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing price extension type. + +// Container for enum describing types for a price extension. +message PriceExtensionTypeEnum { + // Price extension type. + enum PriceExtensionType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The type for showing a list of brands. + BRANDS = 2; + + // The type for showing a list of events. + EVENTS = 3; + + // The type for showing locations relevant to your business. + LOCATIONS = 4; + + // The type for showing sub-regions or districts within a city or region. + NEIGHBORHOODS = 5; + + // The type for showing a collection of product categories. + PRODUCT_CATEGORIES = 6; + + // The type for showing a collection of related product tiers. + PRODUCT_TIERS = 7; + + // The type for showing a collection of services offered by your business. + SERVICES = 8; + + // The type for showing a collection of service categories. + SERVICE_CATEGORIES = 9; + + // The type for showing a collection of related service tiers. + SERVICE_TIERS = 10; + } + + +} diff --git a/google/ads/googleads/v9/enums/price_placeholder_field.proto b/google/ads/googleads/v9/enums/price_placeholder_field.proto new file mode 100644 index 000000000..7dc0497b8 --- /dev/null +++ b/google/ads/googleads/v9/enums/price_placeholder_field.proto @@ -0,0 +1,240 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PricePlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Price placeholder fields. + +// Values for Price placeholder fields. +message PricePlaceholderFieldEnum { + // Possible values for Price placeholder fields. + enum PricePlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The type of your price feed. Must match one of the + // predefined price feed type exactly. + TYPE = 2; + + // Data Type: STRING. The qualifier of each price. Must match one of the + // predefined price qualifiers exactly. + PRICE_QUALIFIER = 3; + + // Data Type: URL. Tracking template for the price feed when using Upgraded + // URLs. + TRACKING_TEMPLATE = 4; + + // Data Type: STRING. Language of the price feed. Must match one of the + // available available locale codes exactly. + LANGUAGE = 5; + + // Data Type: STRING. Final URL suffix for the price feed when using + // parallel tracking. + FINAL_URL_SUFFIX = 6; + + // Data Type: STRING. The header of item 1 of the table. + ITEM_1_HEADER = 100; + + // Data Type: STRING. The description of item 1 of the table. + ITEM_1_DESCRIPTION = 101; + + // Data Type: MONEY. The price (money with currency) of item 1 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_1_PRICE = 102; + + // Data Type: STRING. The price unit of item 1 of the table. Must match one + // of the predefined price units. + ITEM_1_UNIT = 103; + + // Data Type: URL_LIST. The final URLs of item 1 of the table when using + // Upgraded URLs. + ITEM_1_FINAL_URLS = 104; + + // Data Type: URL_LIST. The final mobile URLs of item 1 of the table when + // using Upgraded URLs. + ITEM_1_FINAL_MOBILE_URLS = 105; + + // Data Type: STRING. The header of item 2 of the table. + ITEM_2_HEADER = 200; + + // Data Type: STRING. The description of item 2 of the table. + ITEM_2_DESCRIPTION = 201; + + // Data Type: MONEY. The price (money with currency) of item 2 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_2_PRICE = 202; + + // Data Type: STRING. The price unit of item 2 of the table. Must match one + // of the predefined price units. + ITEM_2_UNIT = 203; + + // Data Type: URL_LIST. The final URLs of item 2 of the table when using + // Upgraded URLs. + ITEM_2_FINAL_URLS = 204; + + // Data Type: URL_LIST. The final mobile URLs of item 2 of the table when + // using Upgraded URLs. + ITEM_2_FINAL_MOBILE_URLS = 205; + + // Data Type: STRING. The header of item 3 of the table. + ITEM_3_HEADER = 300; + + // Data Type: STRING. The description of item 3 of the table. + ITEM_3_DESCRIPTION = 301; + + // Data Type: MONEY. The price (money with currency) of item 3 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_3_PRICE = 302; + + // Data Type: STRING. The price unit of item 3 of the table. Must match one + // of the predefined price units. + ITEM_3_UNIT = 303; + + // Data Type: URL_LIST. The final URLs of item 3 of the table when using + // Upgraded URLs. + ITEM_3_FINAL_URLS = 304; + + // Data Type: URL_LIST. The final mobile URLs of item 3 of the table when + // using Upgraded URLs. + ITEM_3_FINAL_MOBILE_URLS = 305; + + // Data Type: STRING. The header of item 4 of the table. + ITEM_4_HEADER = 400; + + // Data Type: STRING. The description of item 4 of the table. + ITEM_4_DESCRIPTION = 401; + + // Data Type: MONEY. The price (money with currency) of item 4 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_4_PRICE = 402; + + // Data Type: STRING. The price unit of item 4 of the table. Must match one + // of the predefined price units. + ITEM_4_UNIT = 403; + + // Data Type: URL_LIST. The final URLs of item 4 of the table when using + // Upgraded URLs. + ITEM_4_FINAL_URLS = 404; + + // Data Type: URL_LIST. The final mobile URLs of item 4 of the table when + // using Upgraded URLs. + ITEM_4_FINAL_MOBILE_URLS = 405; + + // Data Type: STRING. The header of item 5 of the table. + ITEM_5_HEADER = 500; + + // Data Type: STRING. The description of item 5 of the table. + ITEM_5_DESCRIPTION = 501; + + // Data Type: MONEY. The price (money with currency) of item 5 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_5_PRICE = 502; + + // Data Type: STRING. The price unit of item 5 of the table. Must match one + // of the predefined price units. + ITEM_5_UNIT = 503; + + // Data Type: URL_LIST. The final URLs of item 5 of the table when using + // Upgraded URLs. + ITEM_5_FINAL_URLS = 504; + + // Data Type: URL_LIST. The final mobile URLs of item 5 of the table when + // using Upgraded URLs. + ITEM_5_FINAL_MOBILE_URLS = 505; + + // Data Type: STRING. The header of item 6 of the table. + ITEM_6_HEADER = 600; + + // Data Type: STRING. The description of item 6 of the table. + ITEM_6_DESCRIPTION = 601; + + // Data Type: MONEY. The price (money with currency) of item 6 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_6_PRICE = 602; + + // Data Type: STRING. The price unit of item 6 of the table. Must match one + // of the predefined price units. + ITEM_6_UNIT = 603; + + // Data Type: URL_LIST. The final URLs of item 6 of the table when using + // Upgraded URLs. + ITEM_6_FINAL_URLS = 604; + + // Data Type: URL_LIST. The final mobile URLs of item 6 of the table when + // using Upgraded URLs. + ITEM_6_FINAL_MOBILE_URLS = 605; + + // Data Type: STRING. The header of item 7 of the table. + ITEM_7_HEADER = 700; + + // Data Type: STRING. The description of item 7 of the table. + ITEM_7_DESCRIPTION = 701; + + // Data Type: MONEY. The price (money with currency) of item 7 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_7_PRICE = 702; + + // Data Type: STRING. The price unit of item 7 of the table. Must match one + // of the predefined price units. + ITEM_7_UNIT = 703; + + // Data Type: URL_LIST. The final URLs of item 7 of the table when using + // Upgraded URLs. + ITEM_7_FINAL_URLS = 704; + + // Data Type: URL_LIST. The final mobile URLs of item 7 of the table when + // using Upgraded URLs. + ITEM_7_FINAL_MOBILE_URLS = 705; + + // Data Type: STRING. The header of item 8 of the table. + ITEM_8_HEADER = 800; + + // Data Type: STRING. The description of item 8 of the table. + ITEM_8_DESCRIPTION = 801; + + // Data Type: MONEY. The price (money with currency) of item 8 of the table, + // e.g., 30 USD. The currency must match one of the available currencies. + ITEM_8_PRICE = 802; + + // Data Type: STRING. The price unit of item 8 of the table. Must match one + // of the predefined price units. + ITEM_8_UNIT = 803; + + // Data Type: URL_LIST. The final URLs of item 8 of the table when using + // Upgraded URLs. + ITEM_8_FINAL_URLS = 804; + + // Data Type: URL_LIST. The final mobile URLs of item 8 of the table when + // using Upgraded URLs. + ITEM_8_FINAL_MOBILE_URLS = 805; + } + + +} diff --git a/google/ads/googleads/v9/enums/product_bidding_category_level.proto b/google/ads/googleads/v9/enums/product_bidding_category_level.proto new file mode 100644 index 000000000..7c0ac5e0f --- /dev/null +++ b/google/ads/googleads/v9/enums/product_bidding_category_level.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductBiddingCategoryLevelProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Level of a product bidding category. +message ProductBiddingCategoryLevelEnum { + // Enum describing the level of the product bidding category. + enum ProductBiddingCategoryLevel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Level 1. + LEVEL1 = 2; + + // Level 2. + LEVEL2 = 3; + + // Level 3. + LEVEL3 = 4; + + // Level 4. + LEVEL4 = 5; + + // Level 5. + LEVEL5 = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/product_bidding_category_status.proto b/google/ads/googleads/v9/enums/product_bidding_category_status.proto new file mode 100644 index 000000000..244de109e --- /dev/null +++ b/google/ads/googleads/v9/enums/product_bidding_category_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductBiddingCategoryStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing bidding schemes. + +// Status of the product bidding category. +message ProductBiddingCategoryStatusEnum { + // Enum describing the status of the product bidding category. + enum ProductBiddingCategoryStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The category is active and can be used for bidding. + ACTIVE = 2; + + // The category is obsolete. Used only for reporting purposes. + OBSOLETE = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/product_channel.proto b/google/ads/googleads/v9/enums/product_channel.proto new file mode 100644 index 000000000..d6a03fcec --- /dev/null +++ b/google/ads/googleads/v9/enums/product_channel.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductChannelProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing bidding schemes. + +// Locality of a product offer. +message ProductChannelEnum { + // Enum describing the locality of a product offer. + enum ProductChannel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The item is sold online. + ONLINE = 2; + + // The item is sold in local stores. + LOCAL = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/product_channel_exclusivity.proto b/google/ads/googleads/v9/enums/product_channel_exclusivity.proto new file mode 100644 index 000000000..4c463f3e3 --- /dev/null +++ b/google/ads/googleads/v9/enums/product_channel_exclusivity.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductChannelExclusivityProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing bidding schemes. + +// Availability of a product offer. +message ProductChannelExclusivityEnum { + // Enum describing the availability of a product offer. + enum ProductChannelExclusivity { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The item is sold through one channel only, either local stores or online + // as indicated by its ProductChannel. + SINGLE_CHANNEL = 2; + + // The item is matched to its online or local stores counterpart, indicating + // it is available for purchase in both ShoppingProductChannels. + MULTI_CHANNEL = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/product_condition.proto b/google/ads/googleads/v9/enums/product_condition.proto new file mode 100644 index 000000000..2897f0dcd --- /dev/null +++ b/google/ads/googleads/v9/enums/product_condition.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductConditionProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing bidding schemes. + +// Condition of a product offer. +message ProductConditionEnum { + // Enum describing the condition of a product offer. + enum ProductCondition { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The product condition is new. + NEW = 3; + + // The product condition is refurbished. + REFURBISHED = 4; + + // The product condition is used. + USED = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/product_custom_attribute_index.proto b/google/ads/googleads/v9/enums/product_custom_attribute_index.proto new file mode 100644 index 000000000..4ca7973a7 --- /dev/null +++ b/google/ads/googleads/v9/enums/product_custom_attribute_index.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductCustomAttributeIndexProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing product custom attributes. + +// Container for enum describing the index of the product custom attribute. +message ProductCustomAttributeIndexEnum { + // The index of the product custom attribute. + enum ProductCustomAttributeIndex { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // First product custom attribute. + INDEX0 = 7; + + // Second product custom attribute. + INDEX1 = 8; + + // Third product custom attribute. + INDEX2 = 9; + + // Fourth product custom attribute. + INDEX3 = 10; + + // Fifth product custom attribute. + INDEX4 = 11; + } + + +} diff --git a/google/ads/googleads/v9/enums/product_type_level.proto b/google/ads/googleads/v9/enums/product_type_level.proto new file mode 100644 index 000000000..eb34ee8d2 --- /dev/null +++ b/google/ads/googleads/v9/enums/product_type_level.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProductTypeLevelProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing bidding schemes. + +// Level of the type of a product offer. +message ProductTypeLevelEnum { + // Enum describing the level of the type of a product offer. + enum ProductTypeLevel { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Level 1. + LEVEL1 = 7; + + // Level 2. + LEVEL2 = 8; + + // Level 3. + LEVEL3 = 9; + + // Level 4. + LEVEL4 = 10; + + // Level 5. + LEVEL5 = 11; + } + + +} diff --git a/google/ads/googleads/v9/enums/promotion_extension_discount_modifier.proto b/google/ads/googleads/v9/enums/promotion_extension_discount_modifier.proto new file mode 100644 index 000000000..57633d358 --- /dev/null +++ b/google/ads/googleads/v9/enums/promotion_extension_discount_modifier.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PromotionExtensionDiscountModifierProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing promotion extension discount modifier. + +// Container for enum describing possible a promotion extension +// discount modifier. +message PromotionExtensionDiscountModifierEnum { + // A promotion extension discount modifier. + enum PromotionExtensionDiscountModifier { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // 'Up to'. + UP_TO = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/promotion_extension_occasion.proto b/google/ads/googleads/v9/enums/promotion_extension_occasion.proto new file mode 100644 index 000000000..b5d578f21 --- /dev/null +++ b/google/ads/googleads/v9/enums/promotion_extension_occasion.proto @@ -0,0 +1,157 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PromotionExtensionOccasionProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing promotion extension occasion. + +// Container for enum describing a promotion extension occasion. +// For more information about the occasions please check: +// https://support.google.com/google-ads/answer/7367521 +message PromotionExtensionOccasionEnum { + // A promotion extension occasion. + enum PromotionExtensionOccasion { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // New Year's. + NEW_YEARS = 2; + + // Chinese New Year. + CHINESE_NEW_YEAR = 3; + + // Valentine's Day. + VALENTINES_DAY = 4; + + // Easter. + EASTER = 5; + + // Mother's Day. + MOTHERS_DAY = 6; + + // Father's Day. + FATHERS_DAY = 7; + + // Labor Day. + LABOR_DAY = 8; + + // Back To School. + BACK_TO_SCHOOL = 9; + + // Halloween. + HALLOWEEN = 10; + + // Black Friday. + BLACK_FRIDAY = 11; + + // Cyber Monday. + CYBER_MONDAY = 12; + + // Christmas. + CHRISTMAS = 13; + + // Boxing Day. + BOXING_DAY = 14; + + // Independence Day in any country. + INDEPENDENCE_DAY = 15; + + // National Day in any country. + NATIONAL_DAY = 16; + + // End of any season. + END_OF_SEASON = 17; + + // Winter Sale. + WINTER_SALE = 18; + + // Summer sale. + SUMMER_SALE = 19; + + // Fall Sale. + FALL_SALE = 20; + + // Spring Sale. + SPRING_SALE = 21; + + // Ramadan. + RAMADAN = 22; + + // Eid al-Fitr. + EID_AL_FITR = 23; + + // Eid al-Adha. + EID_AL_ADHA = 24; + + // Singles Day. + SINGLES_DAY = 25; + + // Women's Day. + WOMENS_DAY = 26; + + // Holi. + HOLI = 27; + + // Parent's Day. + PARENTS_DAY = 28; + + // St. Nicholas Day. + ST_NICHOLAS_DAY = 29; + + // Carnival. + CARNIVAL = 30; + + // Epiphany, also known as Three Kings' Day. + EPIPHANY = 31; + + // Rosh Hashanah. + ROSH_HASHANAH = 32; + + // Passover. + PASSOVER = 33; + + // Hanukkah. + HANUKKAH = 34; + + // Diwali. + DIWALI = 35; + + // Navratri. + NAVRATRI = 36; + + // Available in Thai: Songkran. + SONGKRAN = 37; + + // Available in Japanese: Year-end Gift. + YEAR_END_GIFT = 38; + } + + +} diff --git a/google/ads/googleads/v9/enums/promotion_placeholder_field.proto b/google/ads/googleads/v9/enums/promotion_placeholder_field.proto new file mode 100644 index 000000000..a68ddec0e --- /dev/null +++ b/google/ads/googleads/v9/enums/promotion_placeholder_field.proto @@ -0,0 +1,95 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "PromotionPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Promotion placeholder fields. + +// Values for Promotion placeholder fields. +message PromotionPlaceholderFieldEnum { + // Possible values for Promotion placeholder fields. + enum PromotionPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The text that appears on the ad when the extension is + // shown. + PROMOTION_TARGET = 2; + + // Data Type: STRING. Allows you to add "up to" phrase to the promotion, + // in case you have variable promotion rates. + DISCOUNT_MODIFIER = 3; + + // Data Type: INT64. Takes a value in micros, where 1 million micros + // represents 1%, and is shown as a percentage when rendered. + PERCENT_OFF = 4; + + // Data Type: MONEY. Requires a currency and an amount of money. + MONEY_AMOUNT_OFF = 5; + + // Data Type: STRING. A string that the user enters to get the discount. + PROMOTION_CODE = 6; + + // Data Type: MONEY. A minimum spend before the user qualifies for the + // promotion. + ORDERS_OVER_AMOUNT = 7; + + // Data Type: DATE. The start date of the promotion. + PROMOTION_START = 8; + + // Data Type: DATE. The end date of the promotion. + PROMOTION_END = 9; + + // Data Type: STRING. Describes the associated event for the promotion using + // one of the PromotionExtensionOccasion enum values, for example NEW_YEARS. + OCCASION = 10; + + // Data Type: URL_LIST. Final URLs to be used in the ad when using Upgraded + // URLs. + FINAL_URLS = 11; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 12; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 13; + + // Data Type: STRING. A string represented by a language code for the + // promotion. + LANGUAGE = 14; + + // Data Type: STRING. Final URL suffix for the ad when using parallel + // tracking. + FINAL_URL_SUFFIX = 15; + } + + +} diff --git a/google/ads/googleads/v9/enums/proximity_radius_units.proto b/google/ads/googleads/v9/enums/proximity_radius_units.proto new file mode 100644 index 000000000..50a11901b --- /dev/null +++ b/google/ads/googleads/v9/enums/proximity_radius_units.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ProximityRadiusUnitsProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing proximity radius units. + +// Container for enum describing unit of radius in proximity. +message ProximityRadiusUnitsEnum { + // The unit of radius distance in proximity (e.g. MILES) + enum ProximityRadiusUnits { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Miles + MILES = 2; + + // Kilometers + KILOMETERS = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/quality_score_bucket.proto b/google/ads/googleads/v9/enums/quality_score_bucket.proto new file mode 100644 index 000000000..583e0b188 --- /dev/null +++ b/google/ads/googleads/v9/enums/quality_score_bucket.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "QualityScoreBucketProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing quality score buckets. + +// The relative performance compared to other advertisers. +message QualityScoreBucketEnum { + // Enum listing the possible quality score buckets. + enum QualityScoreBucket { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Quality of the creative is below average. + BELOW_AVERAGE = 2; + + // Quality of the creative is average. + AVERAGE = 3; + + // Quality of the creative is above average. + ABOVE_AVERAGE = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/reach_plan_ad_length.proto b/google/ads/googleads/v9/enums/reach_plan_ad_length.proto new file mode 100644 index 000000000..c21c757a0 --- /dev/null +++ b/google/ads/googleads/v9/enums/reach_plan_ad_length.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ReachPlanAdLengthProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing ad lengths of a plannable video ad. + +// Message describing length of a plannable video ad. +message ReachPlanAdLengthEnum { + // Possible ad length values. + enum ReachPlanAdLength { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // 6 seconds long ad. + SIX_SECONDS = 2; + + // 15 or 20 seconds long ad. + FIFTEEN_OR_TWENTY_SECONDS = 3; + + // More than 20 seconds long ad. + TWENTY_SECONDS_OR_MORE = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/reach_plan_age_range.proto b/google/ads/googleads/v9/enums/reach_plan_age_range.proto new file mode 100644 index 000000000..20bc5a36a --- /dev/null +++ b/google/ads/googleads/v9/enums/reach_plan_age_range.proto @@ -0,0 +1,122 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ReachPlanAgeRangeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing a plannable age range. + +// Message describing plannable age ranges. +message ReachPlanAgeRangeEnum { + // Possible plannable age range values. + enum ReachPlanAgeRange { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Between 18 and 24 years old. + AGE_RANGE_18_24 = 503001; + + // Between 18 and 34 years old. + AGE_RANGE_18_34 = 2; + + // Between 18 and 44 years old. + AGE_RANGE_18_44 = 3; + + // Between 18 and 49 years old. + AGE_RANGE_18_49 = 4; + + // Between 18 and 54 years old. + AGE_RANGE_18_54 = 5; + + // Between 18 and 64 years old. + AGE_RANGE_18_64 = 6; + + // Between 18 and 65+ years old. + AGE_RANGE_18_65_UP = 7; + + // Between 21 and 34 years old. + AGE_RANGE_21_34 = 8; + + // Between 25 and 34 years old. + AGE_RANGE_25_34 = 503002; + + // Between 25 and 44 years old. + AGE_RANGE_25_44 = 9; + + // Between 25 and 49 years old. + AGE_RANGE_25_49 = 10; + + // Between 25 and 54 years old. + AGE_RANGE_25_54 = 11; + + // Between 25 and 64 years old. + AGE_RANGE_25_64 = 12; + + // Between 25 and 65+ years old. + AGE_RANGE_25_65_UP = 13; + + // Between 35 and 44 years old. + AGE_RANGE_35_44 = 503003; + + // Between 35 and 49 years old. + AGE_RANGE_35_49 = 14; + + // Between 35 and 54 years old. + AGE_RANGE_35_54 = 15; + + // Between 35 and 64 years old. + AGE_RANGE_35_64 = 16; + + // Between 35 and 65+ years old. + AGE_RANGE_35_65_UP = 17; + + // Between 45 and 54 years old. + AGE_RANGE_45_54 = 503004; + + // Between 45 and 64 years old. + AGE_RANGE_45_64 = 18; + + // Between 45 and 65+ years old. + AGE_RANGE_45_65_UP = 19; + + // Between 50 and 65+ years old. + AGE_RANGE_50_65_UP = 20; + + // Between 55 and 64 years old. + AGE_RANGE_55_64 = 503005; + + // Between 55 and 65+ years old. + AGE_RANGE_55_65_UP = 21; + + // 65 years old and beyond. + AGE_RANGE_65_UP = 503006; + } + + +} diff --git a/google/ads/googleads/v9/enums/reach_plan_network.proto b/google/ads/googleads/v9/enums/reach_plan_network.proto new file mode 100644 index 000000000..1b6f2f6bd --- /dev/null +++ b/google/ads/googleads/v9/enums/reach_plan_network.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ReachPlanNetworkProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing a plannable network. + +// Container for enum describing plannable networks. +message ReachPlanNetworkEnum { + // Possible plannable network values. + enum ReachPlanNetwork { + // Not specified. + UNSPECIFIED = 0; + + // Used as a return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // YouTube network. + YOUTUBE = 2; + + // Google Video Partners (GVP) network. + GOOGLE_VIDEO_PARTNERS = 3; + + // A combination of the YouTube network and the Google Video Partners + // network. + YOUTUBE_AND_GOOGLE_VIDEO_PARTNERS = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/real_estate_placeholder_field.proto b/google/ads/googleads/v9/enums/real_estate_placeholder_field.proto new file mode 100644 index 000000000..d07d4a3bc --- /dev/null +++ b/google/ads/googleads/v9/enums/real_estate_placeholder_field.proto @@ -0,0 +1,115 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "RealEstatePlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Real Estate placeholder fields. + +// Values for Real Estate placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message RealEstatePlaceholderFieldEnum { + // Possible values for Real Estate placeholder fields. + enum RealEstatePlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Unique ID. + LISTING_ID = 2; + + // Data Type: STRING. Main headline with listing name to be shown in dynamic + // ad. + LISTING_NAME = 3; + + // Data Type: STRING. City name to be shown in dynamic ad. + CITY_NAME = 4; + + // Data Type: STRING. Description of listing to be shown in dynamic ad. + DESCRIPTION = 5; + + // Data Type: STRING. Complete listing address, including postal code. + ADDRESS = 6; + + // Data Type: STRING. Price to be shown in the ad. + // Example: "100.00 USD" + PRICE = 7; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 8; + + // Data Type: URL. Image to be displayed in the ad. + IMAGE_URL = 9; + + // Data Type: STRING. Type of property (house, condo, apartment, etc.) used + // to group like items together for recommendation engine. + PROPERTY_TYPE = 10; + + // Data Type: STRING. Type of listing (resale, rental, foreclosure, etc.) + // used to group like items together for recommendation engine. + LISTING_TYPE = 11; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 12; + + // Data Type: URL_LIST. Final URLs to be used in ad when using Upgraded + // URLs; the more specific the better (e.g. the individual URL of a specific + // listing and its location). + FINAL_URLS = 13; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 14; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 15; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 16; + + // Data Type: STRING_LIST. List of recommended listing IDs to show together + // with this item. + SIMILAR_LISTING_IDS = 17; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 18; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 19; + } + + +} diff --git a/google/ads/googleads/v9/enums/recommendation_type.proto b/google/ads/googleads/v9/enums/recommendation_type.proto new file mode 100644 index 000000000..a20f17f36 --- /dev/null +++ b/google/ads/googleads/v9/enums/recommendation_type.proto @@ -0,0 +1,112 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "RecommendationTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Recommendation types. + +// Container for enum describing types of recommendations. +message RecommendationTypeEnum { + // Types of recommendations. + enum RecommendationType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Budget recommendation for campaigns that are currently budget-constrained + // (as opposed to the FORECASTING_CAMPAIGN_BUDGET recommendation, which + // applies to campaigns that are expected to become budget-constrained in + // the future). + CAMPAIGN_BUDGET = 2; + + // Keyword recommendation. + KEYWORD = 3; + + // Recommendation to add a new text ad. + TEXT_AD = 4; + + // Recommendation to update a campaign to use a Target CPA bidding strategy. + TARGET_CPA_OPT_IN = 5; + + // Recommendation to update a campaign to use the Maximize Conversions + // bidding strategy. + MAXIMIZE_CONVERSIONS_OPT_IN = 6; + + // Recommendation to enable Enhanced Cost Per Click for a campaign. + ENHANCED_CPC_OPT_IN = 7; + + // Recommendation to start showing your campaign's ads on Google Search + // Partners Websites. + SEARCH_PARTNERS_OPT_IN = 8; + + // Recommendation to update a campaign to use a Maximize Clicks bidding + // strategy. + MAXIMIZE_CLICKS_OPT_IN = 9; + + // Recommendation to start using the "Optimize" ad rotation setting for the + // given ad group. + OPTIMIZE_AD_ROTATION = 10; + + // Recommendation to add callout extensions to a campaign. + CALLOUT_EXTENSION = 11; + + // Recommendation to add sitelink extensions to a campaign. + SITELINK_EXTENSION = 12; + + // Recommendation to add call extensions to a campaign. + CALL_EXTENSION = 13; + + // Recommendation to change an existing keyword from one match type to a + // broader match type. + KEYWORD_MATCH_TYPE = 14; + + // Recommendation to move unused budget from one budget to a constrained + // budget. + MOVE_UNUSED_BUDGET = 15; + + // Budget recommendation for campaigns that are expected to become + // budget-constrained in the future (as opposed to the CAMPAIGN_BUDGET + // recommendation, which applies to campaigns that are currently + // budget-constrained). + FORECASTING_CAMPAIGN_BUDGET = 16; + + // Recommendation to update a campaign to use a Target ROAS bidding + // strategy. + TARGET_ROAS_OPT_IN = 17; + + // Recommendation to add a new responsive search ad. + RESPONSIVE_SEARCH_AD = 18; + + // Budget recommendation for campaigns whose ROI is predicted to increase + // with a budget adjustment. + MARGINAL_ROI_CAMPAIGN_BUDGET = 19; + } + + +} diff --git a/google/ads/googleads/v9/enums/resource_change_operation.proto b/google/ads/googleads/v9/enums/resource_change_operation.proto new file mode 100644 index 000000000..ea23eb0a7 --- /dev/null +++ b/google/ads/googleads/v9/enums/resource_change_operation.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ResourceChangeOperationProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing the resource change operations in change event. + +// Container for enum describing resource change operations +// in the ChangeEvent resource. +message ResourceChangeOperationEnum { + // The operation on the changed resource in change_event resource. + enum ResourceChangeOperation { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified operation unknown + // in this version. + UNKNOWN = 1; + + // The resource was created. + CREATE = 2; + + // The resource was modified. + UPDATE = 3; + + // The resource was removed. + REMOVE = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/resource_limit_type.proto b/google/ads/googleads/v9/enums/resource_limit_type.proto new file mode 100644 index 000000000..e24d35d08 --- /dev/null +++ b/google/ads/googleads/v9/enums/resource_limit_type.proto @@ -0,0 +1,405 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ResourceLimitTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing possible resource limit types. +message ResourceLimitTypeEnum { + // Resource limit type. + enum ResourceLimitType { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents an unclassified operation unknown + // in this version. + UNKNOWN = 1; + + // Number of ENABLED and PAUSED campaigns per customer. + CAMPAIGNS_PER_CUSTOMER = 2; + + // Number of ENABLED and PAUSED base campaigns per customer. + BASE_CAMPAIGNS_PER_CUSTOMER = 3; + + // Number of ENABLED and PAUSED experiment campaigns per customer. + EXPERIMENT_CAMPAIGNS_PER_CUSTOMER = 105; + + // Number of ENABLED and PAUSED Hotel campaigns per customer. + HOTEL_CAMPAIGNS_PER_CUSTOMER = 4; + + // Number of ENABLED and PAUSED Smart Shopping campaigns per customer. + SMART_SHOPPING_CAMPAIGNS_PER_CUSTOMER = 5; + + // Number of ENABLED ad groups per campaign. + AD_GROUPS_PER_CAMPAIGN = 6; + + // Number of ENABLED ad groups per Shopping campaign. + AD_GROUPS_PER_SHOPPING_CAMPAIGN = 8; + + // Number of ENABLED ad groups per Hotel campaign. + AD_GROUPS_PER_HOTEL_CAMPAIGN = 9; + + // Number of ENABLED reporting ad groups per local campaign. + REPORTING_AD_GROUPS_PER_LOCAL_CAMPAIGN = 10; + + // Number of ENABLED reporting ad groups per App campaign. It includes app + // campaign and app campaign for engagement. + REPORTING_AD_GROUPS_PER_APP_CAMPAIGN = 11; + + // Number of ENABLED managed ad groups per smart campaign. + MANAGED_AD_GROUPS_PER_SMART_CAMPAIGN = 52; + + // Number of ENABLED ad group criteria per customer. + // An ad group criterion is considered as ENABLED if: + // 1. it's not REMOVED + // 2. its ad group is not REMOVED + // 3. its campaign is not REMOVED. + AD_GROUP_CRITERIA_PER_CUSTOMER = 12; + + // Number of ad group criteria across all base campaigns for a customer. + BASE_AD_GROUP_CRITERIA_PER_CUSTOMER = 13; + + // Number of ad group criteria across all experiment campaigns for a + // customer. + EXPERIMENT_AD_GROUP_CRITERIA_PER_CUSTOMER = 107; + + // Number of ENABLED ad group criteria per campaign. + // An ad group criterion is considered as ENABLED if: + // 1. it's not REMOVED + // 2. its ad group is not REMOVED. + AD_GROUP_CRITERIA_PER_CAMPAIGN = 14; + + // Number of ENABLED campaign criteria per customer. + CAMPAIGN_CRITERIA_PER_CUSTOMER = 15; + + // Number of ENABLED campaign criteria across all base campaigns for a + // customer. + BASE_CAMPAIGN_CRITERIA_PER_CUSTOMER = 16; + + // Number of ENABLED campaign criteria across all experiment campaigns for a + // customer. + EXPERIMENT_CAMPAIGN_CRITERIA_PER_CUSTOMER = 108; + + // Number of ENABLED webpage criteria per customer, including + // campaign level and ad group level. + WEBPAGE_CRITERIA_PER_CUSTOMER = 17; + + // Number of ENABLED webpage criteria across all base campaigns for + // a customer. + BASE_WEBPAGE_CRITERIA_PER_CUSTOMER = 18; + + // Meximum number of ENABLED webpage criteria across all experiment + // campaigns for a customer. + EXPERIMENT_WEBPAGE_CRITERIA_PER_CUSTOMER = 19; + + // Number of combined audience criteria per ad group. + COMBINED_AUDIENCE_CRITERIA_PER_AD_GROUP = 20; + + // Limit for placement criterion type group in customer negative criterion. + CUSTOMER_NEGATIVE_PLACEMENT_CRITERIA_PER_CUSTOMER = 21; + + // Limit for YouTube TV channels in customer negative criterion. + CUSTOMER_NEGATIVE_YOUTUBE_CHANNEL_CRITERIA_PER_CUSTOMER = 22; + + // Number of ENABLED criteria per ad group. + CRITERIA_PER_AD_GROUP = 23; + + // Number of listing group criteria per ad group. + LISTING_GROUPS_PER_AD_GROUP = 24; + + // Number of ENABLED explicitly shared budgets per customer. + EXPLICITLY_SHARED_BUDGETS_PER_CUSTOMER = 25; + + // Number of ENABLED implicitly shared budgets per customer. + IMPLICITLY_SHARED_BUDGETS_PER_CUSTOMER = 26; + + // Number of combined audience criteria per campaign. + COMBINED_AUDIENCE_CRITERIA_PER_CAMPAIGN = 27; + + // Number of negative keywords per campaign. + NEGATIVE_KEYWORDS_PER_CAMPAIGN = 28; + + // Number of excluded campaign criteria in placement dimension, e.g. + // placement, mobile application, YouTube channel, etc. The API criterion + // type is NOT limited to placement only, and this does not include + // exclusions at the ad group or other levels. + NEGATIVE_PLACEMENTS_PER_CAMPAIGN = 29; + + // Number of geo targets per campaign. + GEO_TARGETS_PER_CAMPAIGN = 30; + + // Number of negative IP blocks per campaign. + NEGATIVE_IP_BLOCKS_PER_CAMPAIGN = 32; + + // Number of proximity targets per campaign. + PROXIMITIES_PER_CAMPAIGN = 33; + + // Number of listing scopes per Shopping campaign. + LISTING_SCOPES_PER_SHOPPING_CAMPAIGN = 34; + + // Number of listing scopes per non-Shopping campaign. + LISTING_SCOPES_PER_NON_SHOPPING_CAMPAIGN = 35; + + // Number of criteria per negative keyword shared set. + NEGATIVE_KEYWORDS_PER_SHARED_SET = 36; + + // Number of criteria per negative placement shared set. + NEGATIVE_PLACEMENTS_PER_SHARED_SET = 37; + + // Default number of shared sets allowed per type per customer. + SHARED_SETS_PER_CUSTOMER_FOR_TYPE_DEFAULT = 40; + + // Number of shared sets of negative placement list type for a + // manager customer. + SHARED_SETS_PER_CUSTOMER_FOR_NEGATIVE_PLACEMENT_LIST_LOWER = 41; + + // Number of hotel_advance_booking_window bid modifiers per ad group. + HOTEL_ADVANCE_BOOKING_WINDOW_BID_MODIFIERS_PER_AD_GROUP = 44; + + // Number of ENABLED shared bidding strategies per customer. + BIDDING_STRATEGIES_PER_CUSTOMER = 45; + + // Number of open basic user lists per customer. + BASIC_USER_LISTS_PER_CUSTOMER = 47; + + // Number of open logical user lists per customer. + LOGICAL_USER_LISTS_PER_CUSTOMER = 48; + + // Number of ENABLED and PAUSED ad group ads across all base campaigns for a + // customer. + BASE_AD_GROUP_ADS_PER_CUSTOMER = 53; + + // Number of ENABLED and PAUSED ad group ads across all experiment campaigns + // for a customer. + EXPERIMENT_AD_GROUP_ADS_PER_CUSTOMER = 54; + + // Number of ENABLED and PAUSED ad group ads per campaign. + AD_GROUP_ADS_PER_CAMPAIGN = 55; + + // Number of ENABLED ads per ad group that do not fall in to other buckets. + // Includes text and many other types. + TEXT_AND_OTHER_ADS_PER_AD_GROUP = 56; + + // Number of ENABLED image ads per ad group. + IMAGE_ADS_PER_AD_GROUP = 57; + + // Number of ENABLED shopping smart ads per ad group. + SHOPPING_SMART_ADS_PER_AD_GROUP = 58; + + // Number of ENABLED responsive search ads per ad group. + RESPONSIVE_SEARCH_ADS_PER_AD_GROUP = 59; + + // Number of ENABLED app ads per ad group. + APP_ADS_PER_AD_GROUP = 60; + + // Number of ENABLED app engagement ads per ad group. + APP_ENGAGEMENT_ADS_PER_AD_GROUP = 61; + + // Number of ENABLED local ads per ad group. + LOCAL_ADS_PER_AD_GROUP = 62; + + // Number of ENABLED video ads per ad group. + VIDEO_ADS_PER_AD_GROUP = 63; + + // Number of ENABLED lead form CampaignAssets per campaign. + LEAD_FORM_CAMPAIGN_ASSETS_PER_CAMPAIGN = 143; + + // Number of ENABLED promotion CustomerAssets per customer. + PROMOTION_CUSTOMER_ASSETS_PER_CUSTOMER = 79; + + // Number of ENABLED promotion CampaignAssets per campaign. + PROMOTION_CAMPAIGN_ASSETS_PER_CAMPAIGN = 80; + + // Number of ENABLED promotion AdGroupAssets per ad group. + PROMOTION_AD_GROUP_ASSETS_PER_AD_GROUP = 81; + + // Number of ENABLED callout CustomerAssets per customer. + CALLOUT_CUSTOMER_ASSETS_PER_CUSTOMER = 134; + + // Number of ENABLED callout CampaignAssets per campaign. + CALLOUT_CAMPAIGN_ASSETS_PER_CAMPAIGN = 135; + + // Number of ENABLED callout AdGroupAssets per ad group. + CALLOUT_AD_GROUP_ASSETS_PER_AD_GROUP = 136; + + // Number of ENABLED sitelink CustomerAssets per customer. + SITELINK_CUSTOMER_ASSETS_PER_CUSTOMER = 137; + + // Number of ENABLED sitelink CampaignAssets per campaign. + SITELINK_CAMPAIGN_ASSETS_PER_CAMPAIGN = 138; + + // Number of ENABLED sitelink AdGroupAssets per ad group. + SITELINK_AD_GROUP_ASSETS_PER_AD_GROUP = 139; + + // Number of ENABLED structured snippet CustomerAssets per customer. + STRUCTURED_SNIPPET_CUSTOMER_ASSETS_PER_CUSTOMER = 140; + + // Number of ENABLED structured snippet CampaignAssets per campaign. + STRUCTURED_SNIPPET_CAMPAIGN_ASSETS_PER_CAMPAIGN = 141; + + // Number of ENABLED structured snippet AdGroupAssets per ad group. + STRUCTURED_SNIPPET_AD_GROUP_ASSETS_PER_AD_GROUP = 142; + + // Number of ENABLED mobile app CustomerAssets per customer. + MOBILE_APP_CUSTOMER_ASSETS_PER_CUSTOMER = 144; + + // Number of ENABLED mobile app CampaignAssets per campaign. + MOBILE_APP_CAMPAIGN_ASSETS_PER_CAMPAIGN = 145; + + // Number of ENABLED mobile app AdGroupAssets per ad group. + MOBILE_APP_AD_GROUP_ASSETS_PER_AD_GROUP = 146; + + // Number of ENABLED hotel callout CustomerAssets per customer. + HOTEL_CALLOUT_CUSTOMER_ASSETS_PER_CUSTOMER = 147; + + // Number of ENABLED hotel callout CampaignAssets per campaign. + HOTEL_CALLOUT_CAMPAIGN_ASSETS_PER_CAMPAIGN = 148; + + // Number of ENABLED hotel callout AdGroupAssets per ad group. + HOTEL_CALLOUT_AD_GROUP_ASSETS_PER_AD_GROUP = 149; + + // Number of ENABLED call CustomerAssets per customer. + CALL_CUSTOMER_ASSETS_PER_CUSTOMER = 150; + + // Number of ENABLED call CampaignAssets per campaign. + CALL_CAMPAIGN_ASSETS_PER_CAMPAIGN = 151; + + // Number of ENABLED call AdGroupAssets per ad group. + CALL_AD_GROUP_ASSETS_PER_AD_GROUP = 152; + + // Number of ENABLED price CustomerAssets per customer. + PRICE_CUSTOMER_ASSETS_PER_CUSTOMER = 154; + + // Number of ENABLED price CampaignAssets per campaign. + PRICE_CAMPAIGN_ASSETS_PER_CAMPAIGN = 155; + + // Number of ENABLED price AdGroupAssets per ad group. + PRICE_AD_GROUP_ASSETS_PER_AD_GROUP = 156; + + // Number of versions per ad. + VERSIONS_PER_AD = 82; + + // Number of ENABLED user feeds per customer. + USER_FEEDS_PER_CUSTOMER = 90; + + // Number of ENABLED system feeds per customer. + SYSTEM_FEEDS_PER_CUSTOMER = 91; + + // Number of feed attributes per feed. + FEED_ATTRIBUTES_PER_FEED = 92; + + // Number of ENABLED feed items per customer. + FEED_ITEMS_PER_CUSTOMER = 94; + + // Number of ENABLED campaign feeds per customer. + CAMPAIGN_FEEDS_PER_CUSTOMER = 95; + + // Number of ENABLED campaign feeds across all base campaigns for a + // customer. + BASE_CAMPAIGN_FEEDS_PER_CUSTOMER = 96; + + // Number of ENABLED campaign feeds across all experiment campaigns for a + // customer. + EXPERIMENT_CAMPAIGN_FEEDS_PER_CUSTOMER = 109; + + // Number of ENABLED ad group feeds per customer. + AD_GROUP_FEEDS_PER_CUSTOMER = 97; + + // Number of ENABLED ad group feeds across all base campaigns for a + // customer. + BASE_AD_GROUP_FEEDS_PER_CUSTOMER = 98; + + // Number of ENABLED ad group feeds across all experiment campaigns for a + // customer. + EXPERIMENT_AD_GROUP_FEEDS_PER_CUSTOMER = 110; + + // Number of ENABLED ad group feeds per campaign. + AD_GROUP_FEEDS_PER_CAMPAIGN = 99; + + // Number of ENABLED feed items per customer. + FEED_ITEM_SETS_PER_CUSTOMER = 100; + + // Number of feed items per feed item set. + FEED_ITEMS_PER_FEED_ITEM_SET = 101; + + // Number of ENABLED campaign experiments per customer. + CAMPAIGN_EXPERIMENTS_PER_CUSTOMER = 112; + + // Number of video experiment arms per experiment. + EXPERIMENT_ARMS_PER_VIDEO_EXPERIMENT = 113; + + // Number of owned labels per customer. + OWNED_LABELS_PER_CUSTOMER = 115; + + // Number of applied labels per campaign. + LABELS_PER_CAMPAIGN = 117; + + // Number of applied labels per ad group. + LABELS_PER_AD_GROUP = 118; + + // Number of applied labels per ad group ad. + LABELS_PER_AD_GROUP_AD = 119; + + // Number of applied labels per ad group criterion. + LABELS_PER_AD_GROUP_CRITERION = 120; + + // Number of customers with a single label applied. + TARGET_CUSTOMERS_PER_LABEL = 121; + + // Number of ENABLED keyword plans per user per customer. + // The limit is applied per pair because by default a plan + // is private to a user of a customer. Each user of a customer has his or + // her own independent limit. + KEYWORD_PLANS_PER_USER_PER_CUSTOMER = 122; + + // Number of keyword plan ad group keywords per keyword plan. + KEYWORD_PLAN_AD_GROUP_KEYWORDS_PER_KEYWORD_PLAN = 123; + + // Number of keyword plan ad groups per keyword plan. + KEYWORD_PLAN_AD_GROUPS_PER_KEYWORD_PLAN = 124; + + // Number of keyword plan negative keywords (both campaign and ad group) per + // keyword plan. + KEYWORD_PLAN_NEGATIVE_KEYWORDS_PER_KEYWORD_PLAN = 125; + + // Number of keyword plan campaigns per keyword plan. + KEYWORD_PLAN_CAMPAIGNS_PER_KEYWORD_PLAN = 126; + + // Number of ENABLED conversion actions per customer. + CONVERSION_ACTIONS_PER_CUSTOMER = 128; + + // Number of operations in a single batch job. + BATCH_JOB_OPERATIONS_PER_JOB = 130; + + // Number of PENDING or ENABLED batch jobs per customer. + BATCH_JOBS_PER_CUSTOMER = 131; + + // Number of hotel check-in date range bid modifiers per ad agroup. + HOTEL_CHECK_IN_DATE_RANGE_BID_MODIFIERS_PER_AD_GROUP = 132; + } + + +} diff --git a/google/ads/googleads/v9/enums/response_content_type.proto b/google/ads/googleads/v9/enums/response_content_type.proto new file mode 100644 index 000000000..dc36f4fcd --- /dev/null +++ b/google/ads/googleads/v9/enums/response_content_type.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ResponseContentTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing the response content types used in mutate operations. + +// Container for possible response content types. +message ResponseContentTypeEnum { + // Possible response content types. + enum ResponseContentType { + // Not specified. Will return the resource name only in the response. + UNSPECIFIED = 0; + + // The mutate response will be the resource name. + RESOURCE_NAME_ONLY = 1; + + // The mutate response will be the resource name and the resource with + // all mutable fields. + MUTABLE_RESOURCE = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/search_engine_results_page_type.proto b/google/ads/googleads/v9/enums/search_engine_results_page_type.proto new file mode 100644 index 000000000..15c0ad353 --- /dev/null +++ b/google/ads/googleads/v9/enums/search_engine_results_page_type.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SearchEngineResultsPageTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing search engine results page types. + +// The type of the search engine results page. +message SearchEngineResultsPageTypeEnum { + // The type of the search engine results page. + enum SearchEngineResultsPageType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Only ads were contained in the search engine results page. + ADS_ONLY = 2; + + // Only organic results were contained in the search engine results page. + ORGANIC_ONLY = 3; + + // Both ads and organic results were contained in the search engine results + // page. + ADS_AND_ORGANIC = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/search_term_match_type.proto b/google/ads/googleads/v9/enums/search_term_match_type.proto new file mode 100644 index 000000000..7a75805a3 --- /dev/null +++ b/google/ads/googleads/v9/enums/search_term_match_type.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SearchTermMatchTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing search term match types. + +// Container for enum describing match types for a keyword triggering an ad. +message SearchTermMatchTypeEnum { + // Possible match types for a keyword triggering an ad, including variants. + enum SearchTermMatchType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Broad match. + BROAD = 2; + + // Exact match. + EXACT = 3; + + // Phrase match. + PHRASE = 4; + + // Exact match (close variant). + NEAR_EXACT = 5; + + // Phrase match (close variant). + NEAR_PHRASE = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/search_term_targeting_status.proto b/google/ads/googleads/v9/enums/search_term_targeting_status.proto new file mode 100644 index 000000000..8eb53613d --- /dev/null +++ b/google/ads/googleads/v9/enums/search_term_targeting_status.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SearchTermTargetingStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing search term targeting statuses. + +// Container for enum indicating whether a search term is one of your targeted +// or excluded keywords. +message SearchTermTargetingStatusEnum { + // Indicates whether the search term is one of your targeted or excluded + // keywords. + enum SearchTermTargetingStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Search term is added to targeted keywords. + ADDED = 2; + + // Search term matches a negative keyword. + EXCLUDED = 3; + + // Search term has been both added and excluded. + ADDED_EXCLUDED = 4; + + // Search term is neither targeted nor excluded. + NONE = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/seasonality_event_scope.proto b/google/ads/googleads/v9/enums/seasonality_event_scope.proto new file mode 100644 index 000000000..58eeb10d7 --- /dev/null +++ b/google/ads/googleads/v9/enums/seasonality_event_scope.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SeasonalityEventScopeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing seasonality event status. + +// Message describing seasonality event scopes. The two types of seasonality +// events are BiddingSeasonalityAdjustments and BiddingDataExclusions. +message SeasonalityEventScopeEnum { + // The possible scopes of a Seasonality Event. + enum SeasonalityEventScope { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The seasonality event is applied to all the customer’s traffic for + // supported advertising channel types and device types. The CUSTOMER scope + // cannot be used in mutates. + CUSTOMER = 2; + + // The seasonality event is applied to all specified campaigns. + CAMPAIGN = 4; + + // The seasonality event is applied to all campaigns that belong to + // specified channel types. + CHANNEL = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/seasonality_event_status.proto b/google/ads/googleads/v9/enums/seasonality_event_status.proto new file mode 100644 index 000000000..0ea6d26ca --- /dev/null +++ b/google/ads/googleads/v9/enums/seasonality_event_status.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SeasonalityEventStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing seasonality event status. + +// Message describing seasonality event statuses. The two types of seasonality +// events are BiddingSeasonalityAdjustments and BiddingDataExclusions. +message SeasonalityEventStatusEnum { + // The possible statuses of a Seasonality Event. + enum SeasonalityEventStatus { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The seasonality event is enabled. + ENABLED = 2; + + // The seasonality event is removed. + REMOVED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/served_asset_field_type.proto b/google/ads/googleads/v9/enums/served_asset_field_type.proto new file mode 100644 index 000000000..c0f355e8e --- /dev/null +++ b/google/ads/googleads/v9/enums/served_asset_field_type.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ServedAssetFieldTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing policy review statuses. + +// Container for enum describing possible asset field types. +message ServedAssetFieldTypeEnum { + // The possible asset field types. + enum ServedAssetFieldType { + // No value has been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // + // This is a response-only value. + UNKNOWN = 1; + + // The asset is used in headline 1. + HEADLINE_1 = 2; + + // The asset is used in headline 2. + HEADLINE_2 = 3; + + // The asset is used in headline 3. + HEADLINE_3 = 4; + + // The asset is used in description 1. + DESCRIPTION_1 = 5; + + // The asset is used in description 2. + DESCRIPTION_2 = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/shared_set_status.proto b/google/ads/googleads/v9/enums/shared_set_status.proto new file mode 100644 index 000000000..9d45810d5 --- /dev/null +++ b/google/ads/googleads/v9/enums/shared_set_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SharedSetStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing shared set statuses. + +// Container for enum describing types of shared set statuses. +message SharedSetStatusEnum { + // Enum listing the possible shared set statuses. + enum SharedSetStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The shared set is enabled. + ENABLED = 2; + + // The shared set is removed and can no longer be used. + REMOVED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/shared_set_type.proto b/google/ads/googleads/v9/enums/shared_set_type.proto new file mode 100644 index 000000000..a4ebe603d --- /dev/null +++ b/google/ads/googleads/v9/enums/shared_set_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SharedSetTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing shared set types. + +// Container for enum describing types of shared sets. +message SharedSetTypeEnum { + // Enum listing the possible shared set types. + enum SharedSetType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // A set of keywords that can be excluded from targeting. + NEGATIVE_KEYWORDS = 2; + + // A set of placements that can be excluded from targeting. + NEGATIVE_PLACEMENTS = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/simulation_modification_method.proto b/google/ads/googleads/v9/enums/simulation_modification_method.proto new file mode 100644 index 000000000..fd92eb2ce --- /dev/null +++ b/google/ads/googleads/v9/enums/simulation_modification_method.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SimulationModificationMethodProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing simulation modification methods. + +// Container for enum describing the method by which a simulation modifies +// a field. +message SimulationModificationMethodEnum { + // Enum describing the method by which a simulation modifies a field. + enum SimulationModificationMethod { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The values in a simulation were applied to all children of a given + // resource uniformly. Overrides on child resources were not respected. + UNIFORM = 2; + + // The values in a simulation were applied to the given resource. + // Overrides on child resources were respected, and traffic estimates + // do not include these resources. + DEFAULT = 3; + + // The values in a simulation were all scaled by the same factor. + // For example, in a simulated TargetCpa campaign, the campaign target and + // all ad group targets were scaled by a factor of X. + SCALING = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/simulation_type.proto b/google/ads/googleads/v9/enums/simulation_type.proto new file mode 100644 index 000000000..7bb2a612e --- /dev/null +++ b/google/ads/googleads/v9/enums/simulation_type.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SimulationTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing simulation types. + +// Container for enum describing the field a simulation modifies. +message SimulationTypeEnum { + // Enum describing the field a simulation modifies. + enum SimulationType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The simulation is for a CPC bid. + CPC_BID = 2; + + // The simulation is for a CPV bid. + CPV_BID = 3; + + // The simulation is for a CPA target. + TARGET_CPA = 4; + + // The simulation is for a bid modifier. + BID_MODIFIER = 5; + + // The simulation is for a ROAS target. + TARGET_ROAS = 6; + + // The simulation is for a percent CPC bid. + PERCENT_CPC_BID = 7; + + // The simulation is for an impression share target. + TARGET_IMPRESSION_SHARE = 8; + + // The simulation is for a budget. + BUDGET = 9; + } + + +} diff --git a/google/ads/googleads/v9/enums/sitelink_placeholder_field.proto b/google/ads/googleads/v9/enums/sitelink_placeholder_field.proto new file mode 100644 index 000000000..b8cb46fcf --- /dev/null +++ b/google/ads/googleads/v9/enums/sitelink_placeholder_field.proto @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SitelinkPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Sitelink placeholder fields. + +// Values for Sitelink placeholder fields. +message SitelinkPlaceholderFieldEnum { + // Possible values for Sitelink placeholder fields. + enum SitelinkPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The link text for your sitelink. + TEXT = 2; + + // Data Type: STRING. First line of the sitelink description. + LINE_1 = 3; + + // Data Type: STRING. Second line of the sitelink description. + LINE_2 = 4; + + // Data Type: URL_LIST. Final URLs for the sitelink when using Upgraded + // URLs. + FINAL_URLS = 5; + + // Data Type: URL_LIST. Final Mobile URLs for the sitelink when using + // Upgraded URLs. + FINAL_MOBILE_URLS = 6; + + // Data Type: URL. Tracking template for the sitelink when using Upgraded + // URLs. + TRACKING_URL = 7; + + // Data Type: STRING. Final URL suffix for sitelink when using parallel + // tracking. + FINAL_URL_SUFFIX = 8; + } + + +} diff --git a/google/ads/googleads/v9/enums/slot.proto b/google/ads/googleads/v9/enums/slot.proto new file mode 100644 index 000000000..f3200ea6f --- /dev/null +++ b/google/ads/googleads/v9/enums/slot.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SlotProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing slots. + +// Container for enumeration of possible positions of the Ad. +message SlotEnum { + // Enumerates possible positions of the Ad. + enum Slot { + // Not specified. + UNSPECIFIED = 0; + + // The value is unknown in this version. + UNKNOWN = 1; + + // Google search: Side. + SEARCH_SIDE = 2; + + // Google search: Top. + SEARCH_TOP = 3; + + // Google search: Other. + SEARCH_OTHER = 4; + + // Google Display Network. + CONTENT = 5; + + // Search partners: Top. + SEARCH_PARTNER_TOP = 6; + + // Search partners: Other. + SEARCH_PARTNER_OTHER = 7; + + // Cross-network. + MIXED = 8; + } + + +} diff --git a/google/ads/googleads/v9/enums/spending_limit_type.proto b/google/ads/googleads/v9/enums/spending_limit_type.proto new file mode 100644 index 000000000..adfae6384 --- /dev/null +++ b/google/ads/googleads/v9/enums/spending_limit_type.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SpendingLimitTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing SpendingLimit types. + +// Message describing spending limit types. +message SpendingLimitTypeEnum { + // The possible spending limit types used by certain resources as an + // alternative to absolute money values in micros. + enum SpendingLimitType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Infinite, indicates unlimited spending power. + INFINITE = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/structured_snippet_placeholder_field.proto b/google/ads/googleads/v9/enums/structured_snippet_placeholder_field.proto new file mode 100644 index 000000000..3528b84d9 --- /dev/null +++ b/google/ads/googleads/v9/enums/structured_snippet_placeholder_field.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "StructuredSnippetPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Structured Snippet placeholder fields. + +// Values for Structured Snippet placeholder fields. +message StructuredSnippetPlaceholderFieldEnum { + // Possible values for Structured Snippet placeholder fields. + enum StructuredSnippetPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. The category of snippet of your products/services. + // Must match exactly one of the predefined structured snippets headers. + // For a list, visit + // https://developers.google.com/adwords/api/docs/appendix/structured-snippet-headers + HEADER = 2; + + // Data Type: STRING_LIST. Text values that describe your products/services. + // All text must be family safe. Special or non-ASCII characters are not + // permitted. A snippet can be at most 25 characters. + SNIPPETS = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/summary_row_setting.proto b/google/ads/googleads/v9/enums/summary_row_setting.proto new file mode 100644 index 000000000..6440da263 --- /dev/null +++ b/google/ads/googleads/v9/enums/summary_row_setting.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SummaryRowSettingProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing summary row setting. + +// Indicates summary row setting in request parameter. +message SummaryRowSettingEnum { + // Enum describing return summary row settings. + enum SummaryRowSetting { + // Not specified. + UNSPECIFIED = 0; + + // Represent unknown values of return summary row. + UNKNOWN = 1; + + // Do not return summary row. + NO_SUMMARY_ROW = 2; + + // Return summary row along with results. The summary row will be returned + // in the last batch alone (last batch will contain no results). + SUMMARY_ROW_WITH_RESULTS = 3; + + // Return summary row only and return no results. + SUMMARY_ROW_ONLY = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/system_managed_entity_source.proto b/google/ads/googleads/v9/enums/system_managed_entity_source.proto new file mode 100644 index 000000000..623163fcf --- /dev/null +++ b/google/ads/googleads/v9/enums/system_managed_entity_source.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "SystemManagedEntitySourceProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing system managed entity sources. + +// Container for enum describing possible system managed entity sources. +message SystemManagedResourceSourceEnum { + // Enum listing the possible system managed entity sources. + enum SystemManagedResourceSource { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Generated ad variations experiment ad. + AD_VARIATIONS = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/target_cpa_opt_in_recommendation_goal.proto b/google/ads/googleads/v9/enums/target_cpa_opt_in_recommendation_goal.proto new file mode 100644 index 000000000..9b4c4e1e4 --- /dev/null +++ b/google/ads/googleads/v9/enums/target_cpa_opt_in_recommendation_goal.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TargetCpaOptInRecommendationGoalProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing TargetCpaOptIn recommendation goals. + +// Container for enum describing goals for TargetCpaOptIn recommendation. +message TargetCpaOptInRecommendationGoalEnum { + // Goal of TargetCpaOptIn recommendation. + enum TargetCpaOptInRecommendationGoal { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Recommendation to set Target CPA to maintain the same cost. + SAME_COST = 2; + + // Recommendation to set Target CPA to maintain the same conversions. + SAME_CONVERSIONS = 3; + + // Recommendation to set Target CPA to maintain the same CPA. + SAME_CPA = 4; + + // Recommendation to set Target CPA to a value that is as close as possible + // to, yet lower than, the actual CPA (computed for past 28 days). + CLOSEST_CPA = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/target_impression_share_location.proto b/google/ads/googleads/v9/enums/target_impression_share_location.proto new file mode 100644 index 000000000..8ffcf90b3 --- /dev/null +++ b/google/ads/googleads/v9/enums/target_impression_share_location.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TargetImpressionShareLocationProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing target impression share goal. + +// Container for enum describing where on the first search results page the +// automated bidding system should target impressions for the +// TargetImpressionShare bidding strategy. +message TargetImpressionShareLocationEnum { + // Enum describing possible goals. + enum TargetImpressionShareLocation { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Any location on the web page. + ANYWHERE_ON_PAGE = 2; + + // Top box of ads. + TOP_OF_PAGE = 3; + + // Top slot in the top box of ads. + ABSOLUTE_TOP_OF_PAGE = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/targeting_dimension.proto b/google/ads/googleads/v9/enums/targeting_dimension.proto new file mode 100644 index 000000000..25fe5be3f --- /dev/null +++ b/google/ads/googleads/v9/enums/targeting_dimension.proto @@ -0,0 +1,74 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TargetingDimensionProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing criteria types. + +// The dimensions that can be targeted. +message TargetingDimensionEnum { + // Enum describing possible targeting dimensions. + enum TargetingDimension { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Keyword criteria, e.g. 'mars cruise'. KEYWORD may be used as a custom bid + // dimension. Keywords are always a targeting dimension, so may not be set + // as a target "ALL" dimension with TargetRestriction. + KEYWORD = 2; + + // Audience criteria, which include user list, user interest, custom + // affinity, and custom in market. + AUDIENCE = 3; + + // Topic criteria for targeting categories of content, e.g. + // 'category::Animals>Pets' Used for Display and Video targeting. + TOPIC = 4; + + // Criteria for targeting gender. + GENDER = 5; + + // Criteria for targeting age ranges. + AGE_RANGE = 6; + + // Placement criteria, which include websites like 'www.flowers4sale.com', + // as well as mobile applications, mobile app categories, YouTube videos, + // and YouTube channels. + PLACEMENT = 7; + + // Criteria for parental status targeting. + PARENTAL_STATUS = 8; + + // Criteria for income range targeting. + INCOME_RANGE = 9; + } + + +} diff --git a/google/ads/googleads/v9/enums/time_type.proto b/google/ads/googleads/v9/enums/time_type.proto new file mode 100644 index 000000000..9eab9def0 --- /dev/null +++ b/google/ads/googleads/v9/enums/time_type.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TimeTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing TimeType types. + +// Message describing time types. +message TimeTypeEnum { + // The possible time types used by certain resources as an alternative to + // absolute timestamps. + enum TimeType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // As soon as possible. + NOW = 2; + + // An infinite point in the future. + FOREVER = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/tracking_code_page_format.proto b/google/ads/googleads/v9/enums/tracking_code_page_format.proto new file mode 100644 index 000000000..1eaab4f83 --- /dev/null +++ b/google/ads/googleads/v9/enums/tracking_code_page_format.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TrackingCodePageFormatProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing the format of the web page where the tracking +// tag and snippet will be installed. +message TrackingCodePageFormatEnum { + // The format of the web page where the tracking tag and snippet will be + // installed. + enum TrackingCodePageFormat { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Standard HTML page format. + HTML = 2; + + // Google AMP page format. + AMP = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/tracking_code_type.proto b/google/ads/googleads/v9/enums/tracking_code_type.proto new file mode 100644 index 000000000..d77c175d4 --- /dev/null +++ b/google/ads/googleads/v9/enums/tracking_code_type.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TrackingCodeTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Container for enum describing the type of the generated tag snippets for +// tracking conversions. +message TrackingCodeTypeEnum { + // The type of the generated tag snippets for tracking conversions. + enum TrackingCodeType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The snippet that is fired as a result of a website page loading. + WEBPAGE = 2; + + // The snippet contains a JavaScript function which fires the tag. This + // function is typically called from an onClick handler added to a link or + // button element on the page. + WEBPAGE_ONCLICK = 3; + + // For embedding on a mobile webpage. The snippet contains a JavaScript + // function which fires the tag. + CLICK_TO_CALL = 4; + + // The snippet that is used to replace the phone number on your website with + // a Google forwarding number for call tracking purposes. + WEBSITE_CALL = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/travel_placeholder_field.proto b/google/ads/googleads/v9/enums/travel_placeholder_field.proto new file mode 100644 index 000000000..241d9bc03 --- /dev/null +++ b/google/ads/googleads/v9/enums/travel_placeholder_field.proto @@ -0,0 +1,128 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "TravelPlaceholderFieldProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing Travel placeholder fields. + +// Values for Travel placeholder fields. +// For more information about dynamic remarketing feeds, see +// https://support.google.com/google-ads/answer/6053288. +message TravelPlaceholderFieldEnum { + // Possible values for Travel placeholder fields. + enum TravelPlaceholderField { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Data Type: STRING. Required. Destination id. Example: PAR, LON. + // For feed items that only have destination id, destination id must be a + // unique key. For feed items that have both destination id and origin id, + // then the combination must be a unique key. + DESTINATION_ID = 2; + + // Data Type: STRING. Origin id. Example: PAR, LON. + // Combination of DESTINATION_ID and ORIGIN_ID must be + // unique per offer. + ORIGIN_ID = 3; + + // Data Type: STRING. Required. Main headline with name to be shown in + // dynamic ad. + TITLE = 4; + + // Data Type: STRING. The destination name. Shorter names are recommended. + DESTINATION_NAME = 5; + + // Data Type: STRING. Origin name. Shorter names are recommended. + ORIGIN_NAME = 6; + + // Data Type: STRING. Price to be shown in the ad. Highly recommended for + // dynamic ads. + // Example: "100.00 USD" + PRICE = 7; + + // Data Type: STRING. Formatted price to be shown in the ad. + // Example: "Starting at $100.00 USD", "$80 - $100" + FORMATTED_PRICE = 8; + + // Data Type: STRING. Sale price to be shown in the ad. + // Example: "80.00 USD" + SALE_PRICE = 9; + + // Data Type: STRING. Formatted sale price to be shown in the ad. + // Example: "On sale for $80.00", "$60 - $80" + FORMATTED_SALE_PRICE = 10; + + // Data Type: URL. Image to be displayed in the ad. + IMAGE_URL = 11; + + // Data Type: STRING. Category of travel offer used to group like items + // together for recommendation engine. + CATEGORY = 12; + + // Data Type: STRING_LIST. Keywords used for product retrieval. + CONTEXTUAL_KEYWORDS = 13; + + // Data Type: STRING. Address of travel offer, including postal code. + DESTINATION_ADDRESS = 14; + + // Data Type: URL_LIST. Required. Final URLs to be used in ad, when using + // Upgraded URLs; the more specific the better (e.g. the individual URL of a + // specific travel offer and its location). + FINAL_URL = 15; + + // Data Type: URL_LIST. Final mobile URLs for the ad when using Upgraded + // URLs. + FINAL_MOBILE_URLS = 16; + + // Data Type: URL. Tracking template for the ad when using Upgraded URLs. + TRACKING_URL = 17; + + // Data Type: STRING. Android app link. Must be formatted as: + // android-app://{package_id}/{scheme}/{host_path}. + // The components are defined as follows: + // package_id: app ID as specified in Google Play. + // scheme: the scheme to pass to the application. Can be HTTP, or a custom + // scheme. + // host_path: identifies the specific content within your application. + ANDROID_APP_LINK = 18; + + // Data Type: STRING_LIST. List of recommended destination IDs to show + // together with this item. + SIMILAR_DESTINATION_IDS = 19; + + // Data Type: STRING. iOS app link. + IOS_APP_LINK = 20; + + // Data Type: INT64. iOS app store ID. + IOS_APP_STORE_ID = 21; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_identifier_source.proto b/google/ads/googleads/v9/enums/user_identifier_source.proto new file mode 100644 index 000000000..8f0fb29d7 --- /dev/null +++ b/google/ads/googleads/v9/enums/user_identifier_source.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserIdentifierSourceProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing user identifier source + +// Container for enum describing the source of the user identifier for offline +// Store Sales, click conversion, and conversion adjustment uploads. +message UserIdentifierSourceEnum { + // The type of user identifier source for offline Store Sales, click + // conversion, and conversion adjustment uploads. + enum UserIdentifierSource { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version + UNKNOWN = 1; + + // Indicates that the user identifier was provided by the first party + // (advertiser). + FIRST_PARTY = 2; + + // Indicates that the user identifier was provided by the third party + // (partner). + THIRD_PARTY = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_interest_taxonomy_type.proto b/google/ads/googleads/v9/enums/user_interest_taxonomy_type.proto new file mode 100644 index 000000000..b8a5ab519 --- /dev/null +++ b/google/ads/googleads/v9/enums/user_interest_taxonomy_type.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserInterestTaxonomyTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing the UserInterest taxonomy type + +// Message describing a UserInterestTaxonomyType. +message UserInterestTaxonomyTypeEnum { + // Enum containing the possible UserInterestTaxonomyTypes. + enum UserInterestTaxonomyType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The affinity for this user interest. + AFFINITY = 2; + + // The market for this user interest. + IN_MARKET = 3; + + // Users known to have installed applications in the specified categories. + MOBILE_APP_INSTALL_USER = 4; + + // The geographical location of the interest-based vertical. + VERTICAL_GEO = 5; + + // User interest criteria for new smart phone users. + NEW_SMART_PHONE_USER = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_access_status.proto b/google/ads/googleads/v9/enums/user_list_access_status.proto new file mode 100644 index 000000000..5439a3c4b --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_access_status.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListAccessStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing user list access status. + +// Indicates if this client still has access to the list. +message UserListAccessStatusEnum { + // Enum containing possible user list access statuses. + enum UserListAccessStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The access is enabled. + ENABLED = 2; + + // The access is disabled. + DISABLED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_closing_reason.proto b/google/ads/googleads/v9/enums/user_list_closing_reason.proto new file mode 100644 index 000000000..7c3e81b6f --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_closing_reason.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListClosingReasonProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing user list closing reason. + +// Indicates the reason why the userlist was closed. +// This enum is only used when a list is auto-closed by the system. +message UserListClosingReasonEnum { + // Enum describing possible user list closing reasons. + enum UserListClosingReason { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The userlist was closed because of not being used for over one year. + UNUSED = 2; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_combined_rule_operator.proto b/google/ads/googleads/v9/enums/user_list_combined_rule_operator.proto new file mode 100644 index 000000000..92d1abb85 --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_combined_rule_operator.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListCombinedRuleOperatorProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Logical operator connecting two rules. +message UserListCombinedRuleOperatorEnum { + // Enum describing possible user list combined rule operators. + enum UserListCombinedRuleOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // A AND B. + AND = 2; + + // A AND NOT B. + AND_NOT = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_crm_data_source_type.proto b/google/ads/googleads/v9/enums/user_list_crm_data_source_type.proto new file mode 100644 index 000000000..11c016b11 --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_crm_data_source_type.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListCrmDataSourceTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Indicates source of Crm upload data. +message UserListCrmDataSourceTypeEnum { + // Enum describing possible user list crm data source type. + enum UserListCrmDataSourceType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The uploaded data is first-party data. + FIRST_PARTY = 2; + + // The uploaded data is from a third-party credit bureau. + THIRD_PARTY_CREDIT_BUREAU = 3; + + // The uploaded data is from a third-party voter file. + THIRD_PARTY_VOTER_FILE = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_date_rule_item_operator.proto b/google/ads/googleads/v9/enums/user_list_date_rule_item_operator.proto new file mode 100644 index 000000000..85cf9a7a0 --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_date_rule_item_operator.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListDateRuleItemOperatorProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Supported rule operator for date type. +message UserListDateRuleItemOperatorEnum { + // Enum describing possible user list date rule item operators. + enum UserListDateRuleItemOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Equals. + EQUALS = 2; + + // Not Equals. + NOT_EQUALS = 3; + + // Before. + BEFORE = 4; + + // After. + AFTER = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_logical_rule_operator.proto b/google/ads/googleads/v9/enums/user_list_logical_rule_operator.proto new file mode 100644 index 000000000..facb5a5af --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_logical_rule_operator.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListLogicalRuleOperatorProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// The logical operator of the rule. +message UserListLogicalRuleOperatorEnum { + // Enum describing possible user list logical rule operators. + enum UserListLogicalRuleOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // And - all of the operands. + ALL = 2; + + // Or - at least one of the operands. + ANY = 3; + + // Not - none of the operands. + NONE = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_membership_status.proto b/google/ads/googleads/v9/enums/user_list_membership_status.proto new file mode 100644 index 000000000..5a6c0a270 --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_membership_status.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListMembershipStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing user list membership status. + +// Membership status of this user list. Indicates whether a user list is open +// or active. Only open user lists can accumulate more users and can be used for +// targeting. +message UserListMembershipStatusEnum { + // Enum containing possible user list membership statuses. + enum UserListMembershipStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Open status - List is accruing members and can be targeted to. + OPEN = 2; + + // Closed status - No new members being added. Cannot be used for targeting. + CLOSED = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_number_rule_item_operator.proto b/google/ads/googleads/v9/enums/user_list_number_rule_item_operator.proto new file mode 100644 index 000000000..b8ad47baa --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_number_rule_item_operator.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListNumberRuleItemOperatorProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Supported rule operator for number type. +message UserListNumberRuleItemOperatorEnum { + // Enum describing possible user list number rule item operators. + enum UserListNumberRuleItemOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Greater than. + GREATER_THAN = 2; + + // Greater than or equal. + GREATER_THAN_OR_EQUAL = 3; + + // Equals. + EQUALS = 4; + + // Not equals. + NOT_EQUALS = 5; + + // Less than. + LESS_THAN = 6; + + // Less than or equal. + LESS_THAN_OR_EQUAL = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_prepopulation_status.proto b/google/ads/googleads/v9/enums/user_list_prepopulation_status.proto new file mode 100644 index 000000000..e4592b168 --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_prepopulation_status.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListPrepopulationStatusProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Indicates status of prepopulation based on the rule. +message UserListPrepopulationStatusEnum { + // Enum describing possible user list prepopulation status. + enum UserListPrepopulationStatus { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Prepopoulation is being requested. + REQUESTED = 2; + + // Prepopulation is finished. + FINISHED = 3; + + // Prepopulation failed. + FAILED = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_rule_type.proto b/google/ads/googleads/v9/enums/user_list_rule_type.proto new file mode 100644 index 000000000..d52ec7659 --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_rule_type.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListRuleTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Rule based user list rule type. +message UserListRuleTypeEnum { + // Enum describing possible user list rule types. + enum UserListRuleType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Conjunctive normal form. + AND_OF_ORS = 2; + + // Disjunctive normal form. + OR_OF_ANDS = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_size_range.proto b/google/ads/googleads/v9/enums/user_list_size_range.proto new file mode 100644 index 000000000..720c179d7 --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_size_range.proto @@ -0,0 +1,92 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListSizeRangeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing user list size range. + +// Size range in terms of number of users of a UserList. +message UserListSizeRangeEnum { + // Enum containing possible user list size ranges. + enum UserListSizeRange { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // User list has less than 500 users. + LESS_THAN_FIVE_HUNDRED = 2; + + // User list has number of users in range of 500 to 1000. + LESS_THAN_ONE_THOUSAND = 3; + + // User list has number of users in range of 1000 to 10000. + ONE_THOUSAND_TO_TEN_THOUSAND = 4; + + // User list has number of users in range of 10000 to 50000. + TEN_THOUSAND_TO_FIFTY_THOUSAND = 5; + + // User list has number of users in range of 50000 to 100000. + FIFTY_THOUSAND_TO_ONE_HUNDRED_THOUSAND = 6; + + // User list has number of users in range of 100000 to 300000. + ONE_HUNDRED_THOUSAND_TO_THREE_HUNDRED_THOUSAND = 7; + + // User list has number of users in range of 300000 to 500000. + THREE_HUNDRED_THOUSAND_TO_FIVE_HUNDRED_THOUSAND = 8; + + // User list has number of users in range of 500000 to 1 million. + FIVE_HUNDRED_THOUSAND_TO_ONE_MILLION = 9; + + // User list has number of users in range of 1 to 2 millions. + ONE_MILLION_TO_TWO_MILLION = 10; + + // User list has number of users in range of 2 to 3 millions. + TWO_MILLION_TO_THREE_MILLION = 11; + + // User list has number of users in range of 3 to 5 millions. + THREE_MILLION_TO_FIVE_MILLION = 12; + + // User list has number of users in range of 5 to 10 millions. + FIVE_MILLION_TO_TEN_MILLION = 13; + + // User list has number of users in range of 10 to 20 millions. + TEN_MILLION_TO_TWENTY_MILLION = 14; + + // User list has number of users in range of 20 to 30 millions. + TWENTY_MILLION_TO_THIRTY_MILLION = 15; + + // User list has number of users in range of 30 to 50 millions. + THIRTY_MILLION_TO_FIFTY_MILLION = 16; + + // User list has over 50 million users. + OVER_FIFTY_MILLION = 17; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_string_rule_item_operator.proto b/google/ads/googleads/v9/enums/user_list_string_rule_item_operator.proto new file mode 100644 index 000000000..97115c0aa --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_string_rule_item_operator.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListStringRuleItemOperatorProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Supported rule operator for string type. +message UserListStringRuleItemOperatorEnum { + // Enum describing possible user list string rule item operators. + enum UserListStringRuleItemOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Contains. + CONTAINS = 2; + + // Equals. + EQUALS = 3; + + // Starts with. + STARTS_WITH = 4; + + // Ends with. + ENDS_WITH = 5; + + // Not equals. + NOT_EQUALS = 6; + + // Not contains. + NOT_CONTAINS = 7; + + // Not starts with. + NOT_STARTS_WITH = 8; + + // Not ends with. + NOT_ENDS_WITH = 9; + } + + +} diff --git a/google/ads/googleads/v9/enums/user_list_type.proto b/google/ads/googleads/v9/enums/user_list_type.proto new file mode 100644 index 000000000..4119387d0 --- /dev/null +++ b/google/ads/googleads/v9/enums/user_list_type.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "UserListTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing user list type. + +// The user list types. +message UserListTypeEnum { + // Enum containing possible user list types. + enum UserListType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // UserList represented as a collection of conversion types. + REMARKETING = 2; + + // UserList represented as a combination of other user lists/interests. + LOGICAL = 3; + + // UserList created in the Google Ad Manager platform. + EXTERNAL_REMARKETING = 4; + + // UserList associated with a rule. + RULE_BASED = 5; + + // UserList with users similar to users of another UserList. + SIMILAR = 6; + + // UserList of first-party CRM data provided by advertiser in the form of + // emails or other formats. + CRM_BASED = 7; + } + + +} diff --git a/google/ads/googleads/v9/enums/value_rule_device_type.proto b/google/ads/googleads/v9/enums/value_rule_device_type.proto new file mode 100644 index 000000000..546625d18 --- /dev/null +++ b/google/ads/googleads/v9/enums/value_rule_device_type.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ValueRuleDeviceTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion value rule device type. + +// Container for enum describing possible device types used in a conversion +// value rule. +message ValueRuleDeviceTypeEnum { + // Possible device types used in conversion value rule. + enum ValueRuleDeviceType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Mobile device. + MOBILE = 2; + + // Desktop device. + DESKTOP = 3; + + // Tablet device. + TABLET = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/value_rule_geo_location_match_type.proto b/google/ads/googleads/v9/enums/value_rule_geo_location_match_type.proto new file mode 100644 index 000000000..a5fd0b4e2 --- /dev/null +++ b/google/ads/googleads/v9/enums/value_rule_geo_location_match_type.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ValueRuleGeoLocationMatchTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion value rule geo location match type. + +// Container for enum describing possible geographic location matching types +// used in a conversion value rule. +message ValueRuleGeoLocationMatchTypeEnum { + // Possible geographic location matching types. + enum ValueRuleGeoLocationMatchType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Either Area of Interest or Location of Presence can be used to match. + ANY = 2; + + // Only Location of Presence can be used to match. + LOCATION_OF_PRESENCE = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/value_rule_operation.proto b/google/ads/googleads/v9/enums/value_rule_operation.proto new file mode 100644 index 000000000..e41a9750c --- /dev/null +++ b/google/ads/googleads/v9/enums/value_rule_operation.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ValueRuleOperationProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion value rule operation. + +// Container for enum describing possible operations for value rules which are +// executed when rules are triggered. +message ValueRuleOperationEnum { + // Possible operations of the action of a conversion value rule. + enum ValueRuleOperation { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Add provided value to conversion value. + ADD = 2; + + // Multiply conversion value by provided value. + MULTIPLY = 3; + + // Set conversion value to provided value. + SET = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/value_rule_set_attachment_type.proto b/google/ads/googleads/v9/enums/value_rule_set_attachment_type.proto new file mode 100644 index 000000000..68e40db01 --- /dev/null +++ b/google/ads/googleads/v9/enums/value_rule_set_attachment_type.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ValueRuleSetAttachmentTypeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing where the conversion value rule is attached. + +// Container for enum describing where a value rule set is attached. +message ValueRuleSetAttachmentTypeEnum { + // Possible level where a value rule set is attached. + enum ValueRuleSetAttachmentType { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Attached to the customer. + CUSTOMER = 2; + + // Attached to a campaign. + CAMPAIGN = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/value_rule_set_dimension.proto b/google/ads/googleads/v9/enums/value_rule_set_dimension.proto new file mode 100644 index 000000000..f95e2b3ee --- /dev/null +++ b/google/ads/googleads/v9/enums/value_rule_set_dimension.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "ValueRuleSetDimensionProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing conversion value rule set dimension. + +// Container for enum describing possible dimensions of a conversion value rule +// set. +message ValueRuleSetDimensionEnum { + // Possible dimensions of a conversion value rule set. + enum ValueRuleSetDimension { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Dimension for geo location. + GEO_LOCATION = 2; + + // Dimension for device type. + DEVICE = 3; + + // Dimension for audience. + AUDIENCE = 4; + } + + +} diff --git a/google/ads/googleads/v9/enums/vanity_pharma_display_url_mode.proto b/google/ads/googleads/v9/enums/vanity_pharma_display_url_mode.proto new file mode 100644 index 000000000..07c7dc8c7 --- /dev/null +++ b/google/ads/googleads/v9/enums/vanity_pharma_display_url_mode.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "VanityPharmaDisplayUrlModeProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing vanity pharma display url modes. + +// The display mode for vanity pharma URLs. +message VanityPharmaDisplayUrlModeEnum { + // Enum describing possible display modes for vanity pharma URLs. + enum VanityPharmaDisplayUrlMode { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Replace vanity pharma URL with manufacturer website url. + MANUFACTURER_WEBSITE_URL = 2; + + // Replace vanity pharma URL with description of the website. + WEBSITE_DESCRIPTION = 3; + } + + +} diff --git a/google/ads/googleads/v9/enums/vanity_pharma_text.proto b/google/ads/googleads/v9/enums/vanity_pharma_text.proto new file mode 100644 index 000000000..bea8cb6cb --- /dev/null +++ b/google/ads/googleads/v9/enums/vanity_pharma_text.proto @@ -0,0 +1,87 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "VanityPharmaTextProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing vanity pharma texts. + +// The text that will be displayed in display URL of the text ad when website +// description is the selected display mode for vanity pharma URLs. +message VanityPharmaTextEnum { + // Enum describing possible text. + enum VanityPharmaText { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Prescription treatment website with website content in English. + PRESCRIPTION_TREATMENT_WEBSITE_EN = 2; + + // Prescription treatment website with website content in Spanish + // (Sitio de tratamientos con receta). + PRESCRIPTION_TREATMENT_WEBSITE_ES = 3; + + // Prescription device website with website content in English. + PRESCRIPTION_DEVICE_WEBSITE_EN = 4; + + // Prescription device website with website content in Spanish (Sitio de + // dispositivos con receta). + PRESCRIPTION_DEVICE_WEBSITE_ES = 5; + + // Medical device website with website content in English. + MEDICAL_DEVICE_WEBSITE_EN = 6; + + // Medical device website with website content in Spanish (Sitio de + // dispositivos médicos). + MEDICAL_DEVICE_WEBSITE_ES = 7; + + // Preventative treatment website with website content in English. + PREVENTATIVE_TREATMENT_WEBSITE_EN = 8; + + // Preventative treatment website with website content in Spanish (Sitio de + // tratamientos preventivos). + PREVENTATIVE_TREATMENT_WEBSITE_ES = 9; + + // Prescription contraception website with website content in English. + PRESCRIPTION_CONTRACEPTION_WEBSITE_EN = 10; + + // Prescription contraception website with website content in Spanish (Sitio + // de anticonceptivos con receta). + PRESCRIPTION_CONTRACEPTION_WEBSITE_ES = 11; + + // Prescription vaccine website with website content in English. + PRESCRIPTION_VACCINE_WEBSITE_EN = 12; + + // Prescription vaccine website with website content in Spanish (Sitio de + // vacunas con receta). + PRESCRIPTION_VACCINE_WEBSITE_ES = 13; + } + + +} diff --git a/google/ads/googleads/v9/enums/video_thumbnail.proto b/google/ads/googleads/v9/enums/video_thumbnail.proto new file mode 100644 index 000000000..6cb70c698 --- /dev/null +++ b/google/ads/googleads/v9/enums/video_thumbnail.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "VideoThumbnailProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing video thumbnails. + +// Defines the thumbnail to use for In-Display video ads. Note that +// DEFAULT_THUMBNAIL may have been uploaded by the user while thumbnails 1-3 are +// auto-generated from the video. +message VideoThumbnailEnum { + // Enum listing the possible types of a video thumbnail. + enum VideoThumbnail { + // The type has not been specified. + UNSPECIFIED = 0; + + // The received value is not known in this version. + // This is a response-only value. + UNKNOWN = 1; + + // The default thumbnail. Can be auto-generated or user-uploaded. + DEFAULT_THUMBNAIL = 2; + + // Thumbnail 1, generated from the video. + THUMBNAIL_1 = 3; + + // Thumbnail 2, generated from the video. + THUMBNAIL_2 = 4; + + // Thumbnail 3, generated from the video. + THUMBNAIL_3 = 5; + } + + +} diff --git a/google/ads/googleads/v9/enums/webpage_condition_operand.proto b/google/ads/googleads/v9/enums/webpage_condition_operand.proto new file mode 100644 index 000000000..b53e2f1de --- /dev/null +++ b/google/ads/googleads/v9/enums/webpage_condition_operand.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "WebpageConditionOperandProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing webpage condition operand. + +// Container for enum describing webpage condition operand in webpage criterion. +message WebpageConditionOperandEnum { + // The webpage condition operand in webpage criterion. + enum WebpageConditionOperand { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Operand denoting a webpage URL targeting condition. + URL = 2; + + // Operand denoting a webpage category targeting condition. + CATEGORY = 3; + + // Operand denoting a webpage title targeting condition. + PAGE_TITLE = 4; + + // Operand denoting a webpage content targeting condition. + PAGE_CONTENT = 5; + + // Operand denoting a webpage custom label targeting condition. + CUSTOM_LABEL = 6; + } + + +} diff --git a/google/ads/googleads/v9/enums/webpage_condition_operator.proto b/google/ads/googleads/v9/enums/webpage_condition_operator.proto new file mode 100644 index 000000000..11f52d369 --- /dev/null +++ b/google/ads/googleads/v9/enums/webpage_condition_operator.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.enums; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Enums"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/enums;enums"; +option java_multiple_files = true; +option java_outer_classname = "WebpageConditionOperatorProto"; +option java_package = "com.google.ads.googleads.v9.enums"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Enums"; +option ruby_package = "Google::Ads::GoogleAds::V9::Enums"; + +// Proto file describing webpage condition operator. + +// Container for enum describing webpage condition operator in webpage +// criterion. +message WebpageConditionOperatorEnum { + // The webpage condition operator in webpage criterion. + enum WebpageConditionOperator { + // Not specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // The argument web condition is equal to the compared web condition. + EQUALS = 2; + + // The argument web condition is part of the compared web condition. + CONTAINS = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/BUILD.bazel b/google/ads/googleads/v9/errors/BUILD.bazel new file mode 100644 index 000000000..d58aecebe --- /dev/null +++ b/google/ads/googleads/v9/errors/BUILD.bazel @@ -0,0 +1,94 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") + +# TODO(ohren): Change srcs to use an enumeration of each individual proto +# instead of *.proto globbing once the build file generator supports +# subpackages. +proto_library( + name = "errors_proto", + srcs = glob(["*.proto"]), + deps = [ + "//google/ads/googleads/v9/common:common_proto", + "//google/ads/googleads/v9/enums:enums_proto", + "//google/api:annotations_proto", + "@com_google_protobuf//:duration_proto", + "@com_google_protobuf//:wrappers_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_proto_library", +) + +java_proto_library( + name = "errors_java_proto", + deps = [":errors_proto"], +) + +############################################################################## +# PHP +############################################################################## + +# PHP targets are in the parent directory's BUILD.bazel file to facilitate +# aggregating metadata using a single underlying call to protoc. + +############################################################################## +# C# +############################################################################## +load( + "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", + "csharp_proto_library", +) + +csharp_proto_library( + name = "errors_csharp_proto", + deps = [":errors_proto"], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", + "ruby_proto_library", +) + +ruby_proto_library( + name = "errors_ruby_proto", + deps = [":errors_proto"], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_proto_library", +) + +py_proto_library( + name = "errors_py_proto", + deps = [":errors_proto"], +) diff --git a/google/ads/googleads/v9/errors/access_invitation_error.proto b/google/ads/googleads/v9/errors/access_invitation_error.proto new file mode 100644 index 000000000..d5215afa0 --- /dev/null +++ b/google/ads/googleads/v9/errors/access_invitation_error.proto @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AccessInvitationErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing AccessInvitation errors. + +// Container for enum describing possible AccessInvitation errors. +message AccessInvitationErrorEnum { + // Enum describing possible AccessInvitation errors. + enum AccessInvitationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The email address is invalid for sending an invitation. + INVALID_EMAIL_ADDRESS = 2; + + // Email address already has access to this customer. + EMAIL_ADDRESS_ALREADY_HAS_ACCESS = 3; + + // Invalid invitation status for the operation. + INVALID_INVITATION_STATUS = 4; + + // Email address cannot be like abc+foo@google.com. + GOOGLE_CONSUMER_ACCOUNT_NOT_ALLOWED = 5; + + // Invalid invitation id. + INVALID_INVITATION_ID = 6; + + // Email address already has a pending invitation. + EMAIL_ADDRESS_ALREADY_HAS_PENDING_INVITATION = 7; + + // Pending invitation limit exceeded for the customer. + PENDING_INVITATIONS_LIMIT_EXCEEDED = 8; + + // Email address doesn't conform to the email domain policy. Please see + // https://support.google.com/google-ads/answer/2375456 + EMAIL_DOMAIN_POLICY_VIOLATED = 9; + } + + +} diff --git a/google/ads/googleads/v9/errors/account_budget_proposal_error.proto b/google/ads/googleads/v9/errors/account_budget_proposal_error.proto new file mode 100644 index 000000000..f30be85d9 --- /dev/null +++ b/google/ads/googleads/v9/errors/account_budget_proposal_error.proto @@ -0,0 +1,122 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProposalErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing account budget proposal errors. + +// Container for enum describing possible account budget proposal errors. +message AccountBudgetProposalErrorEnum { + // Enum describing possible account budget proposal errors. + enum AccountBudgetProposalError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The field mask must be empty for create/end/remove proposals. + FIELD_MASK_NOT_ALLOWED = 2; + + // The field cannot be set because of the proposal type. + IMMUTABLE_FIELD = 3; + + // The field is required because of the proposal type. + REQUIRED_FIELD_MISSING = 4; + + // Proposals that have been approved cannot be cancelled. + CANNOT_CANCEL_APPROVED_PROPOSAL = 5; + + // Budgets that haven't been approved cannot be removed. + CANNOT_REMOVE_UNAPPROVED_BUDGET = 6; + + // Budgets that are currently running cannot be removed. + CANNOT_REMOVE_RUNNING_BUDGET = 7; + + // Budgets that haven't been approved cannot be truncated. + CANNOT_END_UNAPPROVED_BUDGET = 8; + + // Only budgets that are currently running can be truncated. + CANNOT_END_INACTIVE_BUDGET = 9; + + // All budgets must have names. + BUDGET_NAME_REQUIRED = 10; + + // Expired budgets cannot be edited after a sufficient amount of time has + // passed. + CANNOT_UPDATE_OLD_BUDGET = 11; + + // It is not permissible a propose a new budget that ends in the past. + CANNOT_END_IN_PAST = 12; + + // An expired budget cannot be extended to overlap with the running budget. + CANNOT_EXTEND_END_TIME = 13; + + // A purchase order number is required. + PURCHASE_ORDER_NUMBER_REQUIRED = 14; + + // Budgets that have a pending update cannot be updated. + PENDING_UPDATE_PROPOSAL_EXISTS = 15; + + // Cannot propose more than one budget when the corresponding billing setup + // hasn't been approved. + MULTIPLE_BUDGETS_NOT_ALLOWED_FOR_UNAPPROVED_BILLING_SETUP = 16; + + // Cannot update the start time of a budget that has already started. + CANNOT_UPDATE_START_TIME_FOR_STARTED_BUDGET = 17; + + // Cannot update the spending limit of a budget with an amount lower than + // what has already been spent. + SPENDING_LIMIT_LOWER_THAN_ACCRUED_COST_NOT_ALLOWED = 18; + + // Cannot propose a budget update without actually changing any fields. + UPDATE_IS_NO_OP = 19; + + // The end time must come after the start time. + END_TIME_MUST_FOLLOW_START_TIME = 20; + + // The budget's date range must fall within the date range of its billing + // setup. + BUDGET_DATE_RANGE_INCOMPATIBLE_WITH_BILLING_SETUP = 21; + + // The user is not authorized to mutate budgets for the given billing setup. + NOT_AUTHORIZED = 22; + + // Mutates are not allowed for the given billing setup. + INVALID_BILLING_SETUP = 23; + + // Budget creation failed as it overlaps with an pending budget proposal + // or an approved budget. + OVERLAPS_EXISTING_BUDGET = 24; + + // The control setting in user's payments profile doesn't allow budget + // creation through API. Log in to Google Ads to create budget. + CANNOT_CREATE_BUDGET_THROUGH_API = 25; + } + + +} diff --git a/google/ads/googleads/v9/errors/account_link_error.proto b/google/ads/googleads/v9/errors/account_link_error.proto new file mode 100644 index 000000000..a55823b62 --- /dev/null +++ b/google/ads/googleads/v9/errors/account_link_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AccountLinkErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing AccountLink errors. + +// Container for enum describing possible account link errors. +message AccountLinkErrorEnum { + // Enum describing possible account link errors. + enum AccountLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The new link status is invalid. + INVALID_STATUS = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/ad_customizer_error.proto b/google/ads/googleads/v9/errors/ad_customizer_error.proto new file mode 100644 index 000000000..155e6e5c6 --- /dev/null +++ b/google/ads/googleads/v9/errors/ad_customizer_error.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdCustomizerErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ad customizer errors. + +// Container for enum describing possible ad customizer errors. +message AdCustomizerErrorEnum { + // Enum describing possible ad customizer errors. + enum AdCustomizerError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Invalid date argument in countdown function. + COUNTDOWN_INVALID_DATE_FORMAT = 2; + + // Countdown end date is in the past. + COUNTDOWN_DATE_IN_PAST = 3; + + // Invalid locale string in countdown function. + COUNTDOWN_INVALID_LOCALE = 4; + + // Days-before argument to countdown function is not positive. + COUNTDOWN_INVALID_START_DAYS_BEFORE = 5; + + // A user list referenced in an IF function does not exist. + UNKNOWN_USER_LIST = 6; + } + + +} diff --git a/google/ads/googleads/v9/errors/ad_error.proto b/google/ads/googleads/v9/errors/ad_error.proto new file mode 100644 index 000000000..27dca1725 --- /dev/null +++ b/google/ads/googleads/v9/errors/ad_error.proto @@ -0,0 +1,524 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ad errors. + +// Container for enum describing possible ad errors. +message AdErrorEnum { + // Enum describing possible ad errors. + enum AdError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Ad customizers are not supported for ad type. + AD_CUSTOMIZERS_NOT_SUPPORTED_FOR_AD_TYPE = 2; + + // Estimating character sizes the string is too long. + APPROXIMATELY_TOO_LONG = 3; + + // Estimating character sizes the string is too short. + APPROXIMATELY_TOO_SHORT = 4; + + // There is a problem with the snippet. + BAD_SNIPPET = 5; + + // Cannot modify an ad. + CANNOT_MODIFY_AD = 6; + + // business name and url cannot be set at the same time + CANNOT_SET_BUSINESS_NAME_IF_URL_SET = 7; + + // The specified field is incompatible with this ad's type or settings. + CANNOT_SET_FIELD = 8; + + // Cannot set field when originAdId is set. + CANNOT_SET_FIELD_WITH_ORIGIN_AD_ID_SET = 9; + + // Cannot set field when an existing ad id is set for sharing. + CANNOT_SET_FIELD_WITH_AD_ID_SET_FOR_SHARING = 10; + + // Cannot set allowFlexibleColor false if no color is provided by user. + CANNOT_SET_ALLOW_FLEXIBLE_COLOR_FALSE = 11; + + // When user select native, no color control is allowed because we will + // always respect publisher color for native format serving. + CANNOT_SET_COLOR_CONTROL_WHEN_NATIVE_FORMAT_SETTING = 12; + + // Cannot specify a url for the ad type + CANNOT_SET_URL = 13; + + // Cannot specify a tracking or mobile url without also setting final urls + CANNOT_SET_WITHOUT_FINAL_URLS = 14; + + // Cannot specify a legacy url and a final url simultaneously + CANNOT_SET_WITH_FINAL_URLS = 15; + + // Cannot specify a urls in UrlData and in template fields simultaneously. + CANNOT_SET_WITH_URL_DATA = 17; + + // This operator cannot be used with a subclass of Ad. + CANNOT_USE_AD_SUBCLASS_FOR_OPERATOR = 18; + + // Customer is not approved for mobile ads. + CUSTOMER_NOT_APPROVED_MOBILEADS = 19; + + // Customer is not approved for 3PAS richmedia ads. + CUSTOMER_NOT_APPROVED_THIRDPARTY_ADS = 20; + + // Customer is not approved for 3PAS redirect richmedia (Ad Exchange) ads. + CUSTOMER_NOT_APPROVED_THIRDPARTY_REDIRECT_ADS = 21; + + // Not an eligible customer + CUSTOMER_NOT_ELIGIBLE = 22; + + // Customer is not eligible for updating beacon url + CUSTOMER_NOT_ELIGIBLE_FOR_UPDATING_BEACON_URL = 23; + + // There already exists an ad with the same dimensions in the union. + DIMENSION_ALREADY_IN_UNION = 24; + + // Ad's dimension must be set before setting union dimension. + DIMENSION_MUST_BE_SET = 25; + + // Ad's dimension must be included in the union dimensions. + DIMENSION_NOT_IN_UNION = 26; + + // Display Url cannot be specified (applies to Ad Exchange Ads) + DISPLAY_URL_CANNOT_BE_SPECIFIED = 27; + + // Telephone number contains invalid characters or invalid format. Please + // re-enter your number using digits (0-9), dashes (-), and parentheses + // only. + DOMESTIC_PHONE_NUMBER_FORMAT = 28; + + // Emergency telephone numbers are not allowed. Please enter a valid + // domestic phone number to connect customers to your business. + EMERGENCY_PHONE_NUMBER = 29; + + // A required field was not specified or is an empty string. + EMPTY_FIELD = 30; + + // A feed attribute referenced in an ad customizer tag is not in the ad + // customizer mapping for the feed. + FEED_ATTRIBUTE_MUST_HAVE_MAPPING_FOR_TYPE_ID = 31; + + // The ad customizer field mapping for the feed attribute does not match the + // expected field type. + FEED_ATTRIBUTE_MAPPING_TYPE_MISMATCH = 32; + + // The use of ad customizer tags in the ad text is disallowed. Details in + // trigger. + ILLEGAL_AD_CUSTOMIZER_TAG_USE = 33; + + // Tags of the form {PH_x}, where x is a number, are disallowed in ad text. + ILLEGAL_TAG_USE = 34; + + // The dimensions of the ad are specified or derived in multiple ways and + // are not consistent. + INCONSISTENT_DIMENSIONS = 35; + + // The status cannot differ among template ads of the same union. + INCONSISTENT_STATUS_IN_TEMPLATE_UNION = 36; + + // The length of the string is not valid. + INCORRECT_LENGTH = 37; + + // The ad is ineligible for upgrade. + INELIGIBLE_FOR_UPGRADE = 38; + + // User cannot create mobile ad for countries targeted in specified + // campaign. + INVALID_AD_ADDRESS_CAMPAIGN_TARGET = 39; + + // Invalid Ad type. A specific type of Ad is required. + INVALID_AD_TYPE = 40; + + // Headline, description or phone cannot be present when creating mobile + // image ad. + INVALID_ATTRIBUTES_FOR_MOBILE_IMAGE = 41; + + // Image cannot be present when creating mobile text ad. + INVALID_ATTRIBUTES_FOR_MOBILE_TEXT = 42; + + // Invalid call to action text. + INVALID_CALL_TO_ACTION_TEXT = 43; + + // Invalid character in URL. + INVALID_CHARACTER_FOR_URL = 44; + + // Creative's country code is not valid. + INVALID_COUNTRY_CODE = 45; + + // Invalid use of Expanded Dynamic Search Ads tags ({lpurl} etc.) + INVALID_EXPANDED_DYNAMIC_SEARCH_AD_TAG = 47; + + // An input error whose real reason was not properly mapped (should not + // happen). + INVALID_INPUT = 48; + + // An invalid markup language was entered. + INVALID_MARKUP_LANGUAGE = 49; + + // An invalid mobile carrier was entered. + INVALID_MOBILE_CARRIER = 50; + + // Specified mobile carriers target a country not targeted by the campaign. + INVALID_MOBILE_CARRIER_TARGET = 51; + + // Wrong number of elements for given element type + INVALID_NUMBER_OF_ELEMENTS = 52; + + // The format of the telephone number is incorrect. Please re-enter the + // number using the correct format. + INVALID_PHONE_NUMBER_FORMAT = 53; + + // The certified vendor format id is incorrect. + INVALID_RICH_MEDIA_CERTIFIED_VENDOR_FORMAT_ID = 54; + + // The template ad data contains validation errors. + INVALID_TEMPLATE_DATA = 55; + + // The template field doesn't have have the correct type. + INVALID_TEMPLATE_ELEMENT_FIELD_TYPE = 56; + + // Invalid template id. + INVALID_TEMPLATE_ID = 57; + + // After substituting replacement strings, the line is too wide. + LINE_TOO_WIDE = 58; + + // The feed referenced must have ad customizer mapping to be used in a + // customizer tag. + MISSING_AD_CUSTOMIZER_MAPPING = 59; + + // Missing address component in template element address field. + MISSING_ADDRESS_COMPONENT = 60; + + // An ad name must be entered. + MISSING_ADVERTISEMENT_NAME = 61; + + // Business name must be entered. + MISSING_BUSINESS_NAME = 62; + + // Description (line 2) must be entered. + MISSING_DESCRIPTION1 = 63; + + // Description (line 3) must be entered. + MISSING_DESCRIPTION2 = 64; + + // The destination url must contain at least one tag (e.g. {lpurl}) + MISSING_DESTINATION_URL_TAG = 65; + + // The tracking url template of ExpandedDynamicSearchAd must contain at + // least one tag. (e.g. {lpurl}) + MISSING_LANDING_PAGE_URL_TAG = 66; + + // A valid dimension must be specified for this ad. + MISSING_DIMENSION = 67; + + // A display URL must be entered. + MISSING_DISPLAY_URL = 68; + + // Headline must be entered. + MISSING_HEADLINE = 69; + + // A height must be entered. + MISSING_HEIGHT = 70; + + // An image must be entered. + MISSING_IMAGE = 71; + + // Marketing image or product videos are required. + MISSING_MARKETING_IMAGE_OR_PRODUCT_VIDEOS = 72; + + // The markup language in which your site is written must be entered. + MISSING_MARKUP_LANGUAGES = 73; + + // A mobile carrier must be entered. + MISSING_MOBILE_CARRIER = 74; + + // Phone number must be entered. + MISSING_PHONE = 75; + + // Missing required template fields + MISSING_REQUIRED_TEMPLATE_FIELDS = 76; + + // Missing a required field value + MISSING_TEMPLATE_FIELD_VALUE = 77; + + // The ad must have text. + MISSING_TEXT = 78; + + // A visible URL must be entered. + MISSING_VISIBLE_URL = 79; + + // A width must be entered. + MISSING_WIDTH = 80; + + // Only 1 feed can be used as the source of ad customizer substitutions in a + // single ad. + MULTIPLE_DISTINCT_FEEDS_UNSUPPORTED = 81; + + // TempAdUnionId must be use when adding template ads. + MUST_USE_TEMP_AD_UNION_ID_ON_ADD = 82; + + // The string has too many characters. + TOO_LONG = 83; + + // The string has too few characters. + TOO_SHORT = 84; + + // Ad union dimensions cannot change for saved ads. + UNION_DIMENSIONS_CANNOT_CHANGE = 85; + + // Address component is not {country, lat, lng}. + UNKNOWN_ADDRESS_COMPONENT = 86; + + // Unknown unique field name + UNKNOWN_FIELD_NAME = 87; + + // Unknown unique name (template element type specifier) + UNKNOWN_UNIQUE_NAME = 88; + + // Unsupported ad dimension + UNSUPPORTED_DIMENSIONS = 89; + + // URL starts with an invalid scheme. + URL_INVALID_SCHEME = 90; + + // URL ends with an invalid top-level domain name. + URL_INVALID_TOP_LEVEL_DOMAIN = 91; + + // URL contains illegal characters. + URL_MALFORMED = 92; + + // URL must contain a host name. + URL_NO_HOST = 93; + + // URL not equivalent during upgrade. + URL_NOT_EQUIVALENT = 94; + + // URL host name too long to be stored as visible URL (applies to Ad + // Exchange ads) + URL_HOST_NAME_TOO_LONG = 95; + + // URL must start with a scheme. + URL_NO_SCHEME = 96; + + // URL should end in a valid domain extension, such as .com or .net. + URL_NO_TOP_LEVEL_DOMAIN = 97; + + // URL must not end with a path. + URL_PATH_NOT_ALLOWED = 98; + + // URL must not specify a port. + URL_PORT_NOT_ALLOWED = 99; + + // URL must not contain a query. + URL_QUERY_NOT_ALLOWED = 100; + + // A url scheme is not allowed in front of tag in tracking url template + // (e.g. http://{lpurl}) + URL_SCHEME_BEFORE_EXPANDED_DYNAMIC_SEARCH_AD_TAG = 102; + + // The user does not have permissions to create a template ad for the given + // template. + USER_DOES_NOT_HAVE_ACCESS_TO_TEMPLATE = 103; + + // Expandable setting is inconsistent/wrong. For example, an AdX ad is + // invalid if it has a expandable vendor format but no expanding directions + // specified, or expanding directions is specified, but the vendor format is + // not expandable. + INCONSISTENT_EXPANDABLE_SETTINGS = 104; + + // Format is invalid + INVALID_FORMAT = 105; + + // The text of this field did not match a pattern of allowed values. + INVALID_FIELD_TEXT = 106; + + // Template element is mising + ELEMENT_NOT_PRESENT = 107; + + // Error occurred during image processing + IMAGE_ERROR = 108; + + // The value is not within the valid range + VALUE_NOT_IN_RANGE = 109; + + // Template element field is not present + FIELD_NOT_PRESENT = 110; + + // Address is incomplete + ADDRESS_NOT_COMPLETE = 111; + + // Invalid address + ADDRESS_INVALID = 112; + + // Error retrieving specified video + VIDEO_RETRIEVAL_ERROR = 113; + + // Error processing audio + AUDIO_ERROR = 114; + + // Display URL is incorrect for YouTube PYV ads + INVALID_YOUTUBE_DISPLAY_URL = 115; + + // Too many product Images in GmailAd + TOO_MANY_PRODUCT_IMAGES = 116; + + // Too many product Videos in GmailAd + TOO_MANY_PRODUCT_VIDEOS = 117; + + // The device preference is not compatible with the ad type + INCOMPATIBLE_AD_TYPE_AND_DEVICE_PREFERENCE = 118; + + // Call tracking is not supported for specified country. + CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 119; + + // Carrier specific short number is not allowed. + CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 120; + + // Specified phone number type is disallowed. + DISALLOWED_NUMBER_TYPE = 121; + + // Phone number not supported for country. + PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 122; + + // Phone number not supported with call tracking enabled for country. + PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 123; + + // Premium rate phone number is not allowed. + PREMIUM_RATE_NUMBER_NOT_ALLOWED = 124; + + // Vanity phone number is not allowed. + VANITY_PHONE_NUMBER_NOT_ALLOWED = 125; + + // Invalid call conversion type id. + INVALID_CALL_CONVERSION_TYPE_ID = 126; + + // Cannot disable call conversion and set conversion type id. + CANNOT_DISABLE_CALL_CONVERSION_AND_SET_CONVERSION_TYPE_ID = 127; + + // Cannot set path2 without path1. + CANNOT_SET_PATH2_WITHOUT_PATH1 = 128; + + // Missing domain name in campaign setting when adding expanded dynamic + // search ad. + MISSING_DYNAMIC_SEARCH_ADS_SETTING_DOMAIN_NAME = 129; + + // The associated ad is not compatible with restriction type. + INCOMPATIBLE_WITH_RESTRICTION_TYPE = 130; + + // Consent for call recording is required for creating/updating call only + // ads. Please see https://support.google.com/google-ads/answer/7412639. + CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 131; + + // Either an image or a media bundle is required in a display upload ad. + MISSING_IMAGE_OR_MEDIA_BUNDLE = 132; + + // The display upload product type is not supported in this campaign. + PRODUCT_TYPE_NOT_SUPPORTED_IN_THIS_CAMPAIGN = 133; + + // The default value of an ad placeholder can not be the empty string. + PLACEHOLDER_CANNOT_HAVE_EMPTY_DEFAULT_VALUE = 134; + + // Ad placeholders with countdown functions must not have a default value. + PLACEHOLDER_COUNTDOWN_FUNCTION_CANNOT_HAVE_DEFAULT_VALUE = 135; + + // A previous ad placeholder that had a default value was found which means + // that all (non-countdown) placeholders must have a default value. This + // ad placeholder does not have a default value. + PLACEHOLDER_DEFAULT_VALUE_MISSING = 136; + + // A previous ad placeholder that did not have a default value was found + // which means that no placeholders may have a default value. This + // ad placeholder does have a default value. + UNEXPECTED_PLACEHOLDER_DEFAULT_VALUE = 137; + + // Two ad customizers may not be directly adjacent in an ad text. They must + // be separated by at least one character. + AD_CUSTOMIZERS_MAY_NOT_BE_ADJACENT = 138; + + // The ad is not associated with any enabled AdGroupAd, and cannot be + // updated. + UPDATING_AD_WITH_NO_ENABLED_ASSOCIATION = 139; + + // Call Ad verification url and final url don't have same domain. + CALL_AD_VERIFICATION_URL_FINAL_URL_DOES_NOT_HAVE_SAME_DOMAIN = 140; + + // Final url and verification url cannot both be empty for call ads. + CALL_AD_FINAL_URL_AND_VERIFICATION_URL_CANNOT_BOTH_BE_EMPTY = 154; + + // Too many ad customizers in one asset. + TOO_MANY_AD_CUSTOMIZERS = 141; + + // The ad customizer tag is recognized, but the format is invalid. + INVALID_AD_CUSTOMIZER_FORMAT = 142; + + // Customizer tags cannot be nested. + NESTED_AD_CUSTOMIZER_SYNTAX = 143; + + // The ad customizer syntax used in the ad is not supported. + UNSUPPORTED_AD_CUSTOMIZER_SYNTAX = 144; + + // There exists unpaired brace in the ad customizer tag. + UNPAIRED_BRACE_IN_AD_CUSTOMIZER_TAG = 145; + + // More than one type of countdown tag exists among all text lines. + MORE_THAN_ONE_COUNTDOWN_TAG_TYPE_EXISTS = 146; + + // Date time in the countdown tag is invalid. + DATE_TIME_IN_COUNTDOWN_TAG_IS_INVALID = 147; + + // Date time in the countdown tag is in the past. + DATE_TIME_IN_COUNTDOWN_TAG_IS_PAST = 148; + + // Cannot recognize the ad customizer tag. + UNRECOGNIZED_AD_CUSTOMIZER_TAG_FOUND = 149; + + // Customizer type forbidden for this field. + CUSTOMIZER_TYPE_FORBIDDEN_FOR_FIELD = 150; + + // Customizer attribute name is invalid. + INVALID_CUSTOMIZER_ATTRIBUTE_NAME = 151; + + // App store value does not match the value of the app store in the app + // specified in the campaign. + STORE_MISMATCH = 152; + + // Missing required image aspect ratio. + MISSING_REQUIRED_IMAGE_ASPECT_RATIO = 153; + } + + +} diff --git a/google/ads/googleads/v9/errors/ad_group_ad_error.proto b/google/ads/googleads/v9/errors/ad_group_ad_error.proto new file mode 100644 index 000000000..1078c22df --- /dev/null +++ b/google/ads/googleads/v9/errors/ad_group_ad_error.proto @@ -0,0 +1,80 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ad group ad errors. + +// Container for enum describing possible ad group ad errors. +message AdGroupAdErrorEnum { + // Enum describing possible ad group ad errors. + enum AdGroupAdError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // No link found between the adgroup ad and the label. + AD_GROUP_AD_LABEL_DOES_NOT_EXIST = 2; + + // The label has already been attached to the adgroup ad. + AD_GROUP_AD_LABEL_ALREADY_EXISTS = 3; + + // The specified ad was not found in the adgroup + AD_NOT_UNDER_ADGROUP = 4; + + // Removed ads may not be modified + CANNOT_OPERATE_ON_REMOVED_ADGROUPAD = 5; + + // An ad of this type is deprecated and cannot be created. Only deletions + // are permitted. + CANNOT_CREATE_DEPRECATED_ADS = 6; + + // Text ads are deprecated and cannot be created. Use expanded text ads + // instead. + CANNOT_CREATE_TEXT_ADS = 7; + + // A required field was not specified or is an empty string. + EMPTY_FIELD = 8; + + // An ad may only be modified once per call + RESOURCE_REFERENCED_IN_MULTIPLE_OPS = 9; + + // AdGroupAds with the given ad type cannot be paused. + AD_TYPE_CANNOT_BE_PAUSED = 10; + + // AdGroupAds with the given ad type cannot be removed. + AD_TYPE_CANNOT_BE_REMOVED = 11; + + // An ad of this type is deprecated and cannot be updated. Only removals + // are permitted. + CANNOT_UPDATE_DEPRECATED_ADS = 12; + } + + +} diff --git a/google/ads/googleads/v9/errors/ad_group_bid_modifier_error.proto b/google/ads/googleads/v9/errors/ad_group_bid_modifier_error.proto new file mode 100644 index 000000000..e1fcb72b6 --- /dev/null +++ b/google/ads/googleads/v9/errors/ad_group_bid_modifier_error.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupBidModifierErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ad group bid modifier errors. + +// Container for enum describing possible ad group bid modifier errors. +message AdGroupBidModifierErrorEnum { + // Enum describing possible ad group bid modifier errors. + enum AdGroupBidModifierError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The criterion ID does not support bid modification. + CRITERION_ID_NOT_SUPPORTED = 2; + + // Cannot override the bid modifier for the given criterion ID if the parent + // campaign is opted out of the same criterion. + CANNOT_OVERRIDE_OPTED_OUT_CAMPAIGN_CRITERION_BID_MODIFIER = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/ad_group_criterion_customizer_error.proto b/google/ads/googleads/v9/errors/ad_group_criterion_customizer_error.proto new file mode 100644 index 000000000..05177ddf6 --- /dev/null +++ b/google/ads/googleads/v9/errors/ad_group_criterion_customizer_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionCustomizerErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ad group criterion customizer errors. + +// Container for enum describing possible ad group criterion customizer errors. +message AdGroupCriterionCustomizerErrorEnum { + // Enum describing possible ad group criterion customizer errors. + enum AdGroupCriterionCustomizerError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Only keyword type criterion is allowed to link customizer attribute. + CRITERION_IS_NOT_KEYWORD = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/ad_group_criterion_error.proto b/google/ads/googleads/v9/errors/ad_group_criterion_error.proto new file mode 100644 index 000000000..5a7fb6666 --- /dev/null +++ b/google/ads/googleads/v9/errors/ad_group_criterion_error.proto @@ -0,0 +1,137 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ad group criterion errors. + +// Container for enum describing possible ad group criterion errors. +message AdGroupCriterionErrorEnum { + // Enum describing possible ad group criterion errors. + enum AdGroupCriterionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // No link found between the AdGroupCriterion and the label. + AD_GROUP_CRITERION_LABEL_DOES_NOT_EXIST = 2; + + // The label has already been attached to the AdGroupCriterion. + AD_GROUP_CRITERION_LABEL_ALREADY_EXISTS = 3; + + // Negative AdGroupCriterion cannot have labels. + CANNOT_ADD_LABEL_TO_NEGATIVE_CRITERION = 4; + + // Too many operations for a single call. + TOO_MANY_OPERATIONS = 5; + + // Negative ad group criteria are not updateable. + CANT_UPDATE_NEGATIVE = 6; + + // Concrete type of criterion (keyword v.s. placement) is required for ADD + // and SET operations. + CONCRETE_TYPE_REQUIRED = 7; + + // Bid is incompatible with ad group's bidding settings. + BID_INCOMPATIBLE_WITH_ADGROUP = 8; + + // Cannot target and exclude the same criterion at once. + CANNOT_TARGET_AND_EXCLUDE = 9; + + // The URL of a placement is invalid. + ILLEGAL_URL = 10; + + // Keyword text was invalid. + INVALID_KEYWORD_TEXT = 11; + + // Destination URL was invalid. + INVALID_DESTINATION_URL = 12; + + // The destination url must contain at least one tag (e.g. {lpurl}) + MISSING_DESTINATION_URL_TAG = 13; + + // Keyword-level cpm bid is not supported + KEYWORD_LEVEL_BID_NOT_SUPPORTED_FOR_MANUALCPM = 14; + + // For example, cannot add a biddable ad group criterion that had been + // removed. + INVALID_USER_STATUS = 15; + + // Criteria type cannot be targeted for the ad group. Either the account is + // restricted to keywords only, the criteria type is incompatible with the + // campaign's bidding strategy, or the criteria type can only be applied to + // campaigns. + CANNOT_ADD_CRITERIA_TYPE = 16; + + // Criteria type cannot be excluded for the ad group. Refer to the + // documentation for a specific criterion to check if it is excludable. + CANNOT_EXCLUDE_CRITERIA_TYPE = 17; + + // Partial failure is not supported for shopping campaign mutate operations. + CAMPAIGN_TYPE_NOT_COMPATIBLE_WITH_PARTIAL_FAILURE = 27; + + // Operations in the mutate request changes too many shopping ad groups. + // Please split requests for multiple shopping ad groups across multiple + // requests. + OPERATIONS_FOR_TOO_MANY_SHOPPING_ADGROUPS = 28; + + // Not allowed to modify url fields of an ad group criterion if there are + // duplicate elements for that ad group criterion in the request. + CANNOT_MODIFY_URL_FIELDS_WITH_DUPLICATE_ELEMENTS = 29; + + // Cannot set url fields without also setting final urls. + CANNOT_SET_WITHOUT_FINAL_URLS = 30; + + // Cannot clear final urls if final mobile urls exist. + CANNOT_CLEAR_FINAL_URLS_IF_FINAL_MOBILE_URLS_EXIST = 31; + + // Cannot clear final urls if final app urls exist. + CANNOT_CLEAR_FINAL_URLS_IF_FINAL_APP_URLS_EXIST = 32; + + // Cannot clear final urls if tracking url template exists. + CANNOT_CLEAR_FINAL_URLS_IF_TRACKING_URL_TEMPLATE_EXISTS = 33; + + // Cannot clear final urls if url custom parameters exist. + CANNOT_CLEAR_FINAL_URLS_IF_URL_CUSTOM_PARAMETERS_EXIST = 34; + + // Cannot set both destination url and final urls. + CANNOT_SET_BOTH_DESTINATION_URL_AND_FINAL_URLS = 35; + + // Cannot set both destination url and tracking url template. + CANNOT_SET_BOTH_DESTINATION_URL_AND_TRACKING_URL_TEMPLATE = 36; + + // Final urls are not supported for this criterion type. + FINAL_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE = 37; + + // Final mobile urls are not supported for this criterion type. + FINAL_MOBILE_URLS_NOT_SUPPORTED_FOR_CRITERION_TYPE = 38; + } + + +} diff --git a/google/ads/googleads/v9/errors/ad_group_customizer_error.proto b/google/ads/googleads/v9/errors/ad_group_customizer_error.proto new file mode 100644 index 000000000..fadbdcbba --- /dev/null +++ b/google/ads/googleads/v9/errors/ad_group_customizer_error.proto @@ -0,0 +1,44 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCustomizerErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ad group customizer errors. + +// Container for enum describing possible ad group customizer errors. +message AdGroupCustomizerErrorEnum { + // Enum describing possible ad group customizer errors. + enum AdGroupCustomizerError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + } + + +} diff --git a/google/ads/googleads/v9/errors/ad_group_error.proto b/google/ads/googleads/v9/errors/ad_group_error.proto new file mode 100644 index 000000000..7f56ed28a --- /dev/null +++ b/google/ads/googleads/v9/errors/ad_group_error.proto @@ -0,0 +1,91 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ad group errors. + +// Container for enum describing possible ad group errors. +message AdGroupErrorEnum { + // Enum describing possible ad group errors. + enum AdGroupError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // AdGroup with the same name already exists for the campaign. + DUPLICATE_ADGROUP_NAME = 2; + + // AdGroup name is not valid. + INVALID_ADGROUP_NAME = 3; + + // Advertiser is not allowed to target sites or set site bids that are not + // on the Google Search Network. + ADVERTISER_NOT_ON_CONTENT_NETWORK = 5; + + // Bid amount is too big. + BID_TOO_BIG = 6; + + // AdGroup bid does not match the campaign's bidding strategy. + BID_TYPE_AND_BIDDING_STRATEGY_MISMATCH = 7; + + // AdGroup name is required for Add. + MISSING_ADGROUP_NAME = 8; + + // No link found between the ad group and the label. + ADGROUP_LABEL_DOES_NOT_EXIST = 9; + + // The label has already been attached to the ad group. + ADGROUP_LABEL_ALREADY_EXISTS = 10; + + // The CriterionTypeGroup is not supported for the content bid dimension. + INVALID_CONTENT_BID_CRITERION_TYPE_GROUP = 11; + + // The ad group type is not compatible with the campaign channel type. + AD_GROUP_TYPE_NOT_VALID_FOR_ADVERTISING_CHANNEL_TYPE = 12; + + // The ad group type is not supported in the country of sale of the + // campaign. + ADGROUP_TYPE_NOT_SUPPORTED_FOR_CAMPAIGN_SALES_COUNTRY = 13; + + // Ad groups of AdGroupType.SEARCH_DYNAMIC_ADS can only be added to + // campaigns that have DynamicSearchAdsSetting attached. + CANNOT_ADD_ADGROUP_OF_TYPE_DSA_TO_CAMPAIGN_WITHOUT_DSA_SETTING = 14; + + // Promoted hotels ad groups are only available to customers on the + // allow-list. + PROMOTED_HOTEL_AD_GROUPS_NOT_AVAILABLE_FOR_CUSTOMER = 15; + + // The field type cannot be excluded because an active ad group-asset link + // of this type exists. + INVALID_EXCLUDED_PARENT_ASSET_FIELD_TYPE = 16; + } + + +} diff --git a/google/ads/googleads/v9/errors/ad_group_feed_error.proto b/google/ads/googleads/v9/errors/ad_group_feed_error.proto new file mode 100644 index 000000000..b52b038de --- /dev/null +++ b/google/ads/googleads/v9/errors/ad_group_feed_error.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupFeedErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ad group feed errors. + +// Container for enum describing possible ad group feed errors. +message AdGroupFeedErrorEnum { + // Enum describing possible ad group feed errors. + enum AdGroupFeedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // An active feed already exists for this ad group and place holder type. + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; + + // The specified feed is removed. + CANNOT_CREATE_FOR_REMOVED_FEED = 3; + + // The AdGroupFeed already exists. UPDATE operation should be used to modify + // the existing AdGroupFeed. + ADGROUP_FEED_ALREADY_EXISTS = 4; + + // Cannot operate on removed AdGroupFeed. + CANNOT_OPERATE_ON_REMOVED_ADGROUP_FEED = 5; + + // Invalid placeholder type. + INVALID_PLACEHOLDER_TYPE = 6; + + // Feed mapping for this placeholder type does not exist. + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7; + + // Location AdGroupFeeds cannot be created unless there is a location + // CustomerFeed for the specified feed. + NO_EXISTING_LOCATION_CUSTOMER_FEED = 8; + } + + +} diff --git a/google/ads/googleads/v9/errors/ad_parameter_error.proto b/google/ads/googleads/v9/errors/ad_parameter_error.proto new file mode 100644 index 000000000..12c8ec7f7 --- /dev/null +++ b/google/ads/googleads/v9/errors/ad_parameter_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdParameterErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ad parameter errors. + +// Container for enum describing possible ad parameter errors. +message AdParameterErrorEnum { + // Enum describing possible ad parameter errors. + enum AdParameterError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The ad group criterion must be a keyword criterion. + AD_GROUP_CRITERION_MUST_BE_KEYWORD = 2; + + // The insertion text is invalid. + INVALID_INSERTION_TEXT_FORMAT = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/ad_sharing_error.proto b/google/ads/googleads/v9/errors/ad_sharing_error.proto new file mode 100644 index 000000000..27a149266 --- /dev/null +++ b/google/ads/googleads/v9/errors/ad_sharing_error.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdSharingErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ad sharing errors. + +// Container for enum describing possible ad sharing errors. +message AdSharingErrorEnum { + // Enum describing possible ad sharing errors. + enum AdSharingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Error resulting in attempting to add an Ad to an AdGroup that already + // contains the Ad. + AD_GROUP_ALREADY_CONTAINS_AD = 2; + + // Ad is not compatible with the AdGroup it is being shared with. + INCOMPATIBLE_AD_UNDER_AD_GROUP = 3; + + // Cannot add AdGroupAd on inactive Ad. + CANNOT_SHARE_INACTIVE_AD = 4; + } + + +} diff --git a/google/ads/googleads/v9/errors/adx_error.proto b/google/ads/googleads/v9/errors/adx_error.proto new file mode 100644 index 000000000..4d141b4c4 --- /dev/null +++ b/google/ads/googleads/v9/errors/adx_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AdxErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing adx errors. + +// Container for enum describing possible adx errors. +message AdxErrorEnum { + // Enum describing possible adx errors. + enum AdxError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Attempt to use non-AdX feature by AdX customer. + UNSUPPORTED_FEATURE = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/asset_error.proto b/google/ads/googleads/v9/errors/asset_error.proto new file mode 100644 index 000000000..4720f3bdc --- /dev/null +++ b/google/ads/googleads/v9/errors/asset_error.proto @@ -0,0 +1,134 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AssetErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing asset errors. + +// Container for enum describing possible asset errors. +message AssetErrorEnum { + // Enum describing possible asset errors. + enum AssetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The customer is not is not on the allow-list for this asset type. + CUSTOMER_NOT_ON_ALLOWLIST_FOR_ASSET_TYPE = 13; + + // Assets are duplicated across operations. + DUPLICATE_ASSET = 3; + + // The asset name is duplicated, either across operations or with an + // existing asset. + DUPLICATE_ASSET_NAME = 4; + + // The Asset.asset_data oneof is empty. + ASSET_DATA_IS_MISSING = 5; + + // The asset has a name which is different from an existing duplicate that + // represents the same content. + CANNOT_MODIFY_ASSET_NAME = 6; + + // The field cannot be set for this asset type. + FIELD_INCOMPATIBLE_WITH_ASSET_TYPE = 7; + + // Call to action must come from the list of supported values. + INVALID_CALL_TO_ACTION_TEXT = 8; + + // A lead form asset is created with an invalid combination of input fields. + LEAD_FORM_INVALID_FIELDS_COMBINATION = 9; + + // Lead forms require that the Terms of Service have been agreed to before + // mutates can be executed. + LEAD_FORM_MISSING_AGREEMENT = 10; + + // Asset status is invalid in this operation. + INVALID_ASSET_STATUS = 11; + + // The field cannot be modified by this asset type. + FIELD_CANNOT_BE_MODIFIED_FOR_ASSET_TYPE = 12; + + // Ad schedules for the same asset cannot overlap. + SCHEDULES_CANNOT_OVERLAP = 14; + + // Cannot set both percent off and money amount off fields of promotion + // asset. + PROMOTION_CANNOT_SET_PERCENT_OFF_AND_MONEY_AMOUNT_OFF = 15; + + // Cannot set both promotion code and orders over amount fields of promotion + // asset. + PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 16; + + // The field has too many decimal places specified. + TOO_MANY_DECIMAL_PLACES_SPECIFIED = 17; + + // Duplicate assets across operations, which have identical Asset.asset_data + // oneof, cannot have different asset level fields for asset types which are + // deduped. + DUPLICATE_ASSETS_WITH_DIFFERENT_FIELD_VALUE = 18; + + // Carrier specific short number is not allowed. + CALL_CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 19; + + // Customer consent required for call recording Terms of Service. + CALL_CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 20; + + // The type of the specified phone number is not allowed. + CALL_DISALLOWED_NUMBER_TYPE = 21; + + // If the default call_conversion_action is not used, the customer must have + // a ConversionAction with the same id and the ConversionAction must be call + // conversion type. + CALL_INVALID_CONVERSION_ACTION = 22; + + // The country code of the phone number is invalid. + CALL_INVALID_COUNTRY_CODE = 23; + + // The format of the phone number is incorrect. + CALL_INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 24; + + // The input phone number is not a valid phone number. + CALL_INVALID_PHONE_NUMBER = 25; + + // The phone number is not supported for country. + CALL_PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 26; + + // Premium rate phone number is not allowed. + CALL_PREMIUM_RATE_NUMBER_NOT_ALLOWED = 27; + + // Vanity phone number is not allowed. + CALL_VANITY_PHONE_NUMBER_NOT_ALLOWED = 28; + + // PriceOffering cannot have the same value for header and description. + PRICE_HEADER_SAME_AS_DESCRIPTION = 29; + } + + +} diff --git a/google/ads/googleads/v9/errors/asset_group_asset_error.proto b/google/ads/googleads/v9/errors/asset_group_asset_error.proto new file mode 100644 index 000000000..8ff06ec54 --- /dev/null +++ b/google/ads/googleads/v9/errors/asset_group_asset_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AssetGroupAssetErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing asset group asset errors. + +// Container for enum describing possible asset group asset errors. +message AssetGroupAssetErrorEnum { + // Enum describing possible asset group asset errors. + enum AssetGroupAssetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot add duplicated asset group asset. + DUPLICATE_RESOURCE = 2; + + // Expandable tags are not allowed in description assets. + EXPANDABLE_TAGS_NOT_ALLOWED_IN_DESCRIPTION = 3; + + // Ad customizers are not supported in assetgroup's text assets. + AD_CUSTOMIZER_NOT_SUPPORTED = 4; + } + + +} diff --git a/google/ads/googleads/v9/errors/asset_group_error.proto b/google/ads/googleads/v9/errors/asset_group_error.proto new file mode 100644 index 000000000..99ec9eab5 --- /dev/null +++ b/google/ads/googleads/v9/errors/asset_group_error.proto @@ -0,0 +1,74 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AssetGroupErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing asset group errors. + +// Container for enum describing possible asset group errors. +message AssetGroupErrorEnum { + // Enum describing possible asset group errors. + enum AssetGroupError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Each asset group in a single campaign must have a unique name. + DUPLICATE_NAME = 2; + + // Cannot add asset group for the campaign type. + CANNOT_ADD_ASSET_GROUP_FOR_CAMPAIGN_TYPE = 3; + + // Not enough headline asset for a valid asset group. + NOT_ENOUGH_HEADLINE_ASSET = 4; + + // Not enough long headline asset for a valid asset group. + NOT_ENOUGH_LONG_HEADLINE_ASSET = 5; + + // Not enough description headline asset for a valid asset group. + NOT_ENOUGH_DESCRIPTION_ASSET = 6; + + // Not enough business name asset for a valid asset group. + NOT_ENOUGH_BUSINESS_NAME_ASSET = 7; + + // Not enough marketing image asset for a valid asset group. + NOT_ENOUGH_MARKETING_IMAGE_ASSET = 8; + + // Not enough square marketing image asset for a valid asset group. + NOT_ENOUGH_SQUARE_MARKETING_IMAGE_ASSET = 9; + + // Not enough logo asset for a valid asset group. + NOT_ENOUGH_LOGO_ASSET = 10; + + // Final url and shopping merchant url does not have the same domain. + FINAL_URL_SHOPPING_MERCHANT_HOME_PAGE_URL_DOMAINS_DIFFER = 11; + } + + +} diff --git a/google/ads/googleads/v9/errors/asset_group_listing_group_filter_error.proto b/google/ads/googleads/v9/errors/asset_group_listing_group_filter_error.proto new file mode 100644 index 000000000..84b2b3948 --- /dev/null +++ b/google/ads/googleads/v9/errors/asset_group_listing_group_filter_error.proto @@ -0,0 +1,85 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AssetGroupListingGroupFilterErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing asset group asset errors. + +// Container for enum describing possible asset group listing group filter +// errors. +message AssetGroupListingGroupFilterErrorEnum { + // Enum describing possible asset group listing group filter errors. + enum AssetGroupListingGroupFilterError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Listing group tree is too deep. + TREE_TOO_DEEP = 2; + + // Listing Group UNIT node cannot have children. + UNIT_CANNOT_HAVE_CHILDREN = 3; + + // Listing Group SUBDIVISION node must have everything else child. + SUBDIVISION_MUST_HAVE_EVERYTHING_ELSE_CHILD = 4; + + // Dimension type of Listing Group must be the same as that of its siblings. + DIFFERENT_DIMENSION_TYPE_BETWEEN_SIBLINGS = 5; + + // The sibling Listing Groups target exactly the same dimension value. + SAME_DIMENSION_VALUE_BETWEEN_SIBLINGS = 6; + + // The dimension type is the same as one of the ancestor Listing Groups. + SAME_DIMENSION_TYPE_BETWEEN_ANCESTORS = 7; + + // Each Listing Group tree must have a single root. + MULTIPLE_ROOTS = 8; + + // Invalid Listing Group dimension value. + INVALID_DIMENSION_VALUE = 9; + + // Hierarchical dimension must refine a dimension of the same type. + MUST_REFINE_HIERARCHICAL_PARENT_TYPE = 10; + + // Invalid Product Bidding Category. + INVALID_PRODUCT_BIDDING_CATEGORY = 11; + + // Modifying case value is allowed only while updating the entire subtree at + // the same time. + CHANGING_CASE_VALUE_WITH_CHILDREN = 12; + + // Subdivision node has children which must be removed first. + SUBDIVISION_HAS_CHILDREN = 13; + + // Dimension can't subdivide everything-else node in its own hierarchy. + CANNOT_REFINE_HIERARCHICAL_EVERYTHING_ELSE = 14; + } + + +} diff --git a/google/ads/googleads/v9/errors/asset_link_error.proto b/google/ads/googleads/v9/errors/asset_link_error.proto new file mode 100644 index 000000000..09cc4e82d --- /dev/null +++ b/google/ads/googleads/v9/errors/asset_link_error.proto @@ -0,0 +1,108 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AssetLinkErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing asset link errors. + +// Container for enum describing possible asset link errors. +message AssetLinkErrorEnum { + // Enum describing possible asset link errors. + enum AssetLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Pinning is not supported for the given asset link field. + PINNING_UNSUPPORTED = 2; + + // The given field type is not supported to be added directly via asset + // links. + UNSUPPORTED_FIELD_TYPE = 3; + + // The given asset's type and the specified field type are incompatible. + FIELD_TYPE_INCOMPATIBLE_WITH_ASSET_TYPE = 4; + + // The specified field type is incompatible with the given campaign type. + FIELD_TYPE_INCOMPATIBLE_WITH_CAMPAIGN_TYPE = 5; + + // The campaign advertising channel type cannot be associated with the given + // asset due to channel-based restrictions on the asset's fields. + INCOMPATIBLE_ADVERTISING_CHANNEL_TYPE = 6; + + // The image asset provided is not within the dimension constraints + // specified for the submitted asset field. + IMAGE_NOT_WITHIN_SPECIFIED_DIMENSION_RANGE = 7; + + // The pinned field is not valid for the submitted asset field. + INVALID_PINNED_FIELD = 8; + + // The media bundle asset provided is too large for the submitted asset + // field. + MEDIA_BUNDLE_ASSET_FILE_SIZE_TOO_LARGE = 9; + + // Not enough assets are available for use with other fields since other + // assets are pinned to specific fields. + NOT_ENOUGH_AVAILABLE_ASSET_LINKS_FOR_VALID_COMBINATION = 10; + + // Not enough assets with fallback are available. When validating the + // minimum number of assets, assets without fallback (e.g. assets that + // contain location tag without default value "{LOCATION(City)}") will not + // be counted. + NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK = 11; + + // This is a combination of the + // NOT_ENOUGH_AVAILABLE_ASSET_LINKS_FOR_VALID_COMBINATION and + // NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK errors. Not enough assets + // with fallback are available since some assets are pinned. + NOT_ENOUGH_AVAILABLE_ASSET_LINKS_WITH_FALLBACK_FOR_VALID_COMBINATION = 12; + + // The YouTube video referenced in the provided asset has been removed. + YOUTUBE_VIDEO_REMOVED = 13; + + // The YouTube video referenced in the provided asset is too long for the + // field submitted. + YOUTUBE_VIDEO_TOO_LONG = 14; + + // The YouTube video referenced in the provided asset is too short for the + // field submitted. + YOUTUBE_VIDEO_TOO_SHORT = 15; + + // The status is invalid for the operation specified. + INVALID_STATUS = 17; + + // The YouTube video referenced in the provided asset has unknown duration. + // This might be the case for a livestream video or a video being currently + // uploaded to YouTube. In both cases, the video duration should eventually + // get resolved. + YOUTUBE_VIDEO_DURATION_NOT_DEFINED = 18; + } + + +} diff --git a/google/ads/googleads/v9/errors/asset_set_asset_error.proto b/google/ads/googleads/v9/errors/asset_set_asset_error.proto new file mode 100644 index 000000000..c96383ccd --- /dev/null +++ b/google/ads/googleads/v9/errors/asset_set_asset_error.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AssetSetAssetErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing asset set asset errors. + +// Container for enum describing possible asset set asset errors. +message AssetSetAssetErrorEnum { + // Enum describing possible asset set asset errors. + enum AssetSetAssetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The asset type is not eligible to be linked to the specific type of asset + // set. + INVALID_ASSET_TYPE = 2; + + // The asset set type is not eligible to contain the specified type of + // assets. + INVALID_ASSET_SET_TYPE = 3; + + // The asset contains duplicate external key with another asset in the asset + // set. + DUPLICATE_EXTERNAL_KEY = 4; + } + + +} diff --git a/google/ads/googleads/v9/errors/asset_set_error.proto b/google/ads/googleads/v9/errors/asset_set_error.proto new file mode 100644 index 000000000..309e46442 --- /dev/null +++ b/google/ads/googleads/v9/errors/asset_set_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AssetSetErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing asset set errors. + +// Container for enum describing possible asset set errors. +message AssetSetErrorEnum { + // Enum describing possible asset set errors. + enum AssetSetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The asset set name matches that of another enabled asset set. + DUPLICATE_ASSET_SET_NAME = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/asset_set_link_error.proto b/google/ads/googleads/v9/errors/asset_set_link_error.proto new file mode 100644 index 000000000..d8620aa3e --- /dev/null +++ b/google/ads/googleads/v9/errors/asset_set_link_error.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AssetSetLinkErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing asset set link errors. + +// Container for enum describing possible asset set link errors. +message AssetSetLinkErrorEnum { + // Enum describing possible asset set link errors. + enum AssetSetLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Advertising channel type cannot be attached to the asset set due to + // channel-based restrictions. + INCOMPATIBLE_ADVERTISING_CHANNEL_TYPE = 2; + + // For this asset set type, only one campaign to feed linkage is allowed. + DUPLICATE_FEED_LINK = 3; + + // The asset set type and campaign type are incompatible. + INCOMPATIBLE_ASSET_SET_TYPE_WITH_CAMPAIGN_TYPE = 4; + + // Cannot link duplicate asset sets to the same campaign. + DUPLICATE_ASSET_SET_LINK = 5; + + // Cannot remove the asset set link. If a campaign is linked with only one + // asset set and you attempt to unlink them, this error will be triggered. + ASSET_SET_LINK_CANNOT_BE_REMOVED = 6; + } + + +} diff --git a/google/ads/googleads/v9/errors/authentication_error.proto b/google/ads/googleads/v9/errors/authentication_error.proto new file mode 100644 index 000000000..0d686b27f --- /dev/null +++ b/google/ads/googleads/v9/errors/authentication_error.proto @@ -0,0 +1,103 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AuthenticationErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing authentication errors. + +// Container for enum describing possible authentication errors. +message AuthenticationErrorEnum { + // Enum describing possible authentication errors. + enum AuthenticationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Authentication of the request failed. + AUTHENTICATION_ERROR = 2; + + // Client Customer ID is not a number. + CLIENT_CUSTOMER_ID_INVALID = 5; + + // No customer found for the provided customer ID. + CUSTOMER_NOT_FOUND = 8; + + // Client's Google Account is deleted. + GOOGLE_ACCOUNT_DELETED = 9; + + // Google account login token in the cookie is invalid. + GOOGLE_ACCOUNT_COOKIE_INVALID = 10; + + // A problem occurred during Google account authentication. + GOOGLE_ACCOUNT_AUTHENTICATION_FAILED = 25; + + // The user in the Google account login token does not match the user ID in + // the cookie. + GOOGLE_ACCOUNT_USER_AND_ADS_USER_MISMATCH = 12; + + // Login cookie is required for authentication. + LOGIN_COOKIE_REQUIRED = 13; + + // User in the cookie is not a valid Ads user. + NOT_ADS_USER = 14; + + // Oauth token in the header is not valid. + OAUTH_TOKEN_INVALID = 15; + + // Oauth token in the header has expired. + OAUTH_TOKEN_EXPIRED = 16; + + // Oauth token in the header has been disabled. + OAUTH_TOKEN_DISABLED = 17; + + // Oauth token in the header has been revoked. + OAUTH_TOKEN_REVOKED = 18; + + // Oauth token HTTP header is malformed. + OAUTH_TOKEN_HEADER_INVALID = 19; + + // Login cookie is not valid. + LOGIN_COOKIE_INVALID = 20; + + // User Id in the header is not a valid id. + USER_ID_INVALID = 22; + + // An account administrator changed this account's authentication settings. + // To access this Google Ads account, enable 2-Step Verification in your + // Google account at https://www.google.com/landing/2step. + TWO_STEP_VERIFICATION_NOT_ENROLLED = 23; + + // An account administrator changed this account's authentication settings. + // To access this Google Ads account, enable Advanced Protection in your + // Google account at https://landing.google.com/advancedprotection. + ADVANCED_PROTECTION_NOT_ENROLLED = 24; + } + + +} diff --git a/google/ads/googleads/v9/errors/authorization_error.proto b/google/ads/googleads/v9/errors/authorization_error.proto new file mode 100644 index 000000000..2b705b527 --- /dev/null +++ b/google/ads/googleads/v9/errors/authorization_error.proto @@ -0,0 +1,92 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "AuthorizationErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing authorization errors. + +// Container for enum describing possible authorization errors. +message AuthorizationErrorEnum { + // Enum describing possible authorization errors. + enum AuthorizationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // User doesn't have permission to access customer. Note: If you're + // accessing a client customer, the manager's customer ID must be set in the + // `login-customer-id` header. Learn more at + // https://developers.google.com/google-ads/api/docs/concepts/call-structure#cid + USER_PERMISSION_DENIED = 2; + + // The developer token is not on the allow-list. + DEVELOPER_TOKEN_NOT_ON_ALLOWLIST = 13; + + // The developer token is not allowed with the project sent in the request. + DEVELOPER_TOKEN_PROHIBITED = 4; + + // The Google Cloud project sent in the request does not have permission to + // access the api. + PROJECT_DISABLED = 5; + + // Authorization of the client failed. + AUTHORIZATION_ERROR = 6; + + // The user does not have permission to perform this action + // (e.g., ADD, UPDATE, REMOVE) on the resource or call a method. + ACTION_NOT_PERMITTED = 7; + + // Signup not complete. + INCOMPLETE_SIGNUP = 8; + + // The customer can't be used because it isn't enabled. + CUSTOMER_NOT_ENABLED = 24; + + // The developer must sign the terms of service. They can be found here: + // ads.google.com/aw/apicenter + MISSING_TOS = 9; + + // The developer token is not approved. Non-approved developer tokens can + // only be used with test accounts. + DEVELOPER_TOKEN_NOT_APPROVED = 10; + + // The login customer specified does not have access to the account + // specified, so the request is invalid. + INVALID_LOGIN_CUSTOMER_ID_SERVING_CUSTOMER_ID_COMBINATION = 11; + + // The developer specified does not have access to the service. + SERVICE_ACCESS_DENIED = 12; + + // The customer (or login customer) isn't in Google Ads. It belongs to + // another ads system. + ACCESS_DENIED_FOR_ACCOUNT_TYPE = 25; + } + + +} diff --git a/google/ads/googleads/v9/errors/batch_job_error.proto b/google/ads/googleads/v9/errors/batch_job_error.proto new file mode 100644 index 000000000..59a8da2b8 --- /dev/null +++ b/google/ads/googleads/v9/errors/batch_job_error.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "BatchJobErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing batch job errors. + +// Container for enum describing possible batch job errors. +message BatchJobErrorEnum { + // Enum describing possible request errors. + enum BatchJobError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The batch job cannot add more operations or run after it has started + // running. + CANNOT_MODIFY_JOB_AFTER_JOB_STARTS_RUNNING = 2; + + // The operations for an AddBatchJobOperations request were empty. + EMPTY_OPERATIONS = 3; + + // The sequence token for an AddBatchJobOperations request was invalid. + INVALID_SEQUENCE_TOKEN = 4; + + // Batch job results can only be retrieved once the job is finished. + RESULTS_NOT_READY = 5; + + // The page size for ListBatchJobResults was invalid. + INVALID_PAGE_SIZE = 6; + + // The batch job cannot be removed because it has started running. + CAN_ONLY_REMOVE_PENDING_JOB = 7; + } + + +} diff --git a/google/ads/googleads/v9/errors/bidding_error.proto b/google/ads/googleads/v9/errors/bidding_error.proto new file mode 100644 index 000000000..774d26db7 --- /dev/null +++ b/google/ads/googleads/v9/errors/bidding_error.proto @@ -0,0 +1,122 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "BiddingErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing bidding errors. + +// Container for enum describing possible bidding errors. +message BiddingErrorEnum { + // Enum describing possible bidding errors. + enum BiddingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot transition to new bidding strategy. + BIDDING_STRATEGY_TRANSITION_NOT_ALLOWED = 2; + + // Cannot attach bidding strategy to campaign. + CANNOT_ATTACH_BIDDING_STRATEGY_TO_CAMPAIGN = 7; + + // Bidding strategy is not supported or cannot be used as anonymous. + INVALID_ANONYMOUS_BIDDING_STRATEGY_TYPE = 10; + + // The type does not match the named strategy's type. + INVALID_BIDDING_STRATEGY_TYPE = 14; + + // The bid is invalid. + INVALID_BID = 17; + + // Bidding strategy is not available for the account type. + BIDDING_STRATEGY_NOT_AVAILABLE_FOR_ACCOUNT_TYPE = 18; + + // Conversion tracking is not enabled in the campaign that has value-based + // bidding transitions. + CONVERSION_TRACKING_NOT_ENABLED = 19; + + // Not enough conversions tracked for value-based bidding transitions. + NOT_ENOUGH_CONVERSIONS = 20; + + // Campaign can not be created with given bidding strategy. It can be + // transitioned to the strategy, once eligible. + CANNOT_CREATE_CAMPAIGN_WITH_BIDDING_STRATEGY = 21; + + // Cannot target content network only as campaign uses Page One Promoted + // bidding strategy. + CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CAMPAIGN_LEVEL_POP_BIDDING_STRATEGY = 23; + + // Budget Optimizer and Target Spend bidding strategies are not supported + // for campaigns with AdSchedule targeting. + BIDDING_STRATEGY_NOT_SUPPORTED_WITH_AD_SCHEDULE = 24; + + // Pay per conversion is not available to all the customer, only few + // customers on the allow-list can use this. + PAY_PER_CONVERSION_NOT_AVAILABLE_FOR_CUSTOMER = 25; + + // Pay per conversion is not allowed with Target CPA. + PAY_PER_CONVERSION_NOT_ALLOWED_WITH_TARGET_CPA = 26; + + // Cannot set bidding strategy to Manual CPM for search network only + // campaigns. + BIDDING_STRATEGY_NOT_ALLOWED_FOR_SEARCH_ONLY_CAMPAIGNS = 27; + + // The bidding strategy is not supported for use in drafts or experiments. + BIDDING_STRATEGY_NOT_SUPPORTED_IN_DRAFTS_OR_EXPERIMENTS = 28; + + // Bidding strategy type does not support product type ad group criterion. + BIDDING_STRATEGY_TYPE_DOES_NOT_SUPPORT_PRODUCT_TYPE_ADGROUP_CRITERION = 29; + + // Bid amount is too small. + BID_TOO_SMALL = 30; + + // Bid amount is too big. + BID_TOO_BIG = 31; + + // Bid has too many fractional digit precision. + BID_TOO_MANY_FRACTIONAL_DIGITS = 32; + + // Invalid domain name specified. + INVALID_DOMAIN_NAME = 33; + + // The field is not compatible with the payment mode. + NOT_COMPATIBLE_WITH_PAYMENT_MODE = 34; + + // The field is not compatible with the budget type. + NOT_COMPATIBLE_WITH_BUDGET_TYPE = 35; + + // The field is not compatible with the bidding strategy type. + NOT_COMPATIBLE_WITH_BIDDING_STRATEGY_TYPE = 36; + + // Bidding strategy type is incompatible with shared budget. + BIDDING_STRATEGY_TYPE_INCOMPATIBLE_WITH_SHARED_BUDGET = 37; + } + + +} diff --git a/google/ads/googleads/v9/errors/bidding_strategy_error.proto b/google/ads/googleads/v9/errors/bidding_strategy_error.proto new file mode 100644 index 000000000..151365158 --- /dev/null +++ b/google/ads/googleads/v9/errors/bidding_strategy_error.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategyErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing bidding strategy errors. + +// Container for enum describing possible bidding strategy errors. +message BiddingStrategyErrorEnum { + // Enum describing possible bidding strategy errors. + enum BiddingStrategyError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Each bidding strategy must have a unique name. + DUPLICATE_NAME = 2; + + // Bidding strategy type is immutable. + CANNOT_CHANGE_BIDDING_STRATEGY_TYPE = 3; + + // Only bidding strategies not linked to campaigns, adgroups or adgroup + // criteria can be removed. + CANNOT_REMOVE_ASSOCIATED_STRATEGY = 4; + + // The specified bidding strategy is not supported. + BIDDING_STRATEGY_NOT_SUPPORTED = 5; + + // The bidding strategy is incompatible with the campaign's bidding + // strategy goal type. + INCOMPATIBLE_BIDDING_STRATEGY_AND_BIDDING_STRATEGY_GOAL_TYPE = 6; + } + + +} diff --git a/google/ads/googleads/v9/errors/billing_setup_error.proto b/google/ads/googleads/v9/errors/billing_setup_error.proto new file mode 100644 index 000000000..d26cc4c54 --- /dev/null +++ b/google/ads/googleads/v9/errors/billing_setup_error.proto @@ -0,0 +1,109 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "BillingSetupErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing billing setup errors. + +// Container for enum describing possible billing setup errors. +message BillingSetupErrorEnum { + // Enum describing possible billing setup errors. + enum BillingSetupError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot specify both an existing payments account and a new payments + // account when setting up billing. + CANNOT_USE_EXISTING_AND_NEW_ACCOUNT = 2; + + // Cannot cancel an approved billing setup whose start time has passed. + CANNOT_REMOVE_STARTED_BILLING_SETUP = 3; + + // Cannot perform a Change of Bill-To (CBT) to the same payments account. + CANNOT_CHANGE_BILLING_TO_SAME_PAYMENTS_ACCOUNT = 4; + + // Billing setups can only be used by customers with ENABLED or DRAFT + // status. + BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_STATUS = 5; + + // Billing setups must either include a correctly formatted existing + // payments account id, or a non-empty new payments account name. + INVALID_PAYMENTS_ACCOUNT = 6; + + // Only billable and third-party customers can create billing setups. + BILLING_SETUP_NOT_PERMITTED_FOR_CUSTOMER_CATEGORY = 7; + + // Billing setup creations can only use NOW for start time type. + INVALID_START_TIME_TYPE = 8; + + // Billing setups can only be created for a third-party customer if they do + // not already have a setup. + THIRD_PARTY_ALREADY_HAS_BILLING = 9; + + // Billing setups cannot be created if there is already a pending billing in + // progress. + BILLING_SETUP_IN_PROGRESS = 10; + + // Billing setups can only be created by customers who have permission to + // setup billings. Users can contact a representative for help setting up + // permissions. + NO_SIGNUP_PERMISSION = 11; + + // Billing setups cannot be created if there is already a future-approved + // billing. + CHANGE_OF_BILL_TO_IN_PROGRESS = 12; + + // Requested payments profile not found. + PAYMENTS_PROFILE_NOT_FOUND = 13; + + // Requested payments account not found. + PAYMENTS_ACCOUNT_NOT_FOUND = 14; + + // Billing setup creation failed because the payments profile is ineligible. + PAYMENTS_PROFILE_INELIGIBLE = 15; + + // Billing setup creation failed because the payments account is ineligible. + PAYMENTS_ACCOUNT_INELIGIBLE = 16; + + // Billing setup creation failed because the payments profile needs internal + // approval. + CUSTOMER_NEEDS_INTERNAL_APPROVAL = 17; + + // Payments account has different currency code than the current customer + // and hence cannot be used to setup billing. + PAYMENTS_ACCOUNT_INELIGIBLE_CURRENCY_CODE_MISMATCH = 19; + + // A start time in the future cannot be used because there is currently no + // active billing setup for this customer. + FUTURE_START_TIME_PROHIBITED = 20; + } + + +} diff --git a/google/ads/googleads/v9/errors/campaign_budget_error.proto b/google/ads/googleads/v9/errors/campaign_budget_error.proto new file mode 100644 index 000000000..535440916 --- /dev/null +++ b/google/ads/googleads/v9/errors/campaign_budget_error.proto @@ -0,0 +1,100 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBudgetErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing campaign budget errors. + +// Container for enum describing possible campaign budget errors. +message CampaignBudgetErrorEnum { + // Enum describing possible campaign budget errors. + enum CampaignBudgetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The campaign budget cannot be shared. + CAMPAIGN_BUDGET_CANNOT_BE_SHARED = 17; + + // The requested campaign budget no longer exists. + CAMPAIGN_BUDGET_REMOVED = 2; + + // The campaign budget is associated with at least one campaign, and so the + // campaign budget cannot be removed. + CAMPAIGN_BUDGET_IN_USE = 3; + + // Customer is not on the allow-list for this campaign budget period. + CAMPAIGN_BUDGET_PERIOD_NOT_AVAILABLE = 4; + + // This field is not mutable on implicitly shared campaign budgets + CANNOT_MODIFY_FIELD_OF_IMPLICITLY_SHARED_CAMPAIGN_BUDGET = 6; + + // Cannot change explicitly shared campaign budgets back to implicitly + // shared ones. + CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_IMPLICITLY_SHARED = 7; + + // An implicit campaign budget without a name cannot be changed to + // explicitly shared campaign budget. + CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED_WITHOUT_NAME = 8; + + // Cannot change an implicitly shared campaign budget to an explicitly + // shared one. + CANNOT_UPDATE_CAMPAIGN_BUDGET_TO_EXPLICITLY_SHARED = 9; + + // Only explicitly shared campaign budgets can be used with multiple + // campaigns. + CANNOT_USE_IMPLICITLY_SHARED_CAMPAIGN_BUDGET_WITH_MULTIPLE_CAMPAIGNS = 10; + + // A campaign budget with this name already exists. + DUPLICATE_NAME = 11; + + // A money amount was not in the expected currency. + MONEY_AMOUNT_IN_WRONG_CURRENCY = 12; + + // A money amount was less than the minimum CPC for currency. + MONEY_AMOUNT_LESS_THAN_CURRENCY_MINIMUM_CPC = 13; + + // A money amount was greater than the maximum allowed. + MONEY_AMOUNT_TOO_LARGE = 14; + + // A money amount was negative. + NEGATIVE_MONEY_AMOUNT = 15; + + // A money amount was not a multiple of a minimum unit. + NON_MULTIPLE_OF_MINIMUM_CURRENCY_UNIT = 16; + + // Total budget amount must be unset when BudgetPeriod is DAILY. + TOTAL_BUDGET_AMOUNT_MUST_BE_UNSET_FOR_BUDGET_PERIOD_DAILY = 18; + + // The period of the budget is not allowed. + INVALID_PERIOD = 19; + } + + +} diff --git a/google/ads/googleads/v9/errors/campaign_criterion_error.proto b/google/ads/googleads/v9/errors/campaign_criterion_error.proto new file mode 100644 index 000000000..4bdeb76c6 --- /dev/null +++ b/google/ads/googleads/v9/errors/campaign_criterion_error.proto @@ -0,0 +1,99 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing campaign criterion errors. + +// Container for enum describing possible campaign criterion errors. +message CampaignCriterionErrorEnum { + // Enum describing possible campaign criterion errors. + enum CampaignCriterionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Concrete type of criterion (keyword v.s. placement) is required for + // CREATE and UPDATE operations. + CONCRETE_TYPE_REQUIRED = 2; + + // Invalid placement URL. + INVALID_PLACEMENT_URL = 3; + + // Criteria type can not be excluded for the campaign by the customer. like + // AOL account type cannot target site type criteria + CANNOT_EXCLUDE_CRITERIA_TYPE = 4; + + // Cannot set the campaign criterion status for this criteria type. + CANNOT_SET_STATUS_FOR_CRITERIA_TYPE = 5; + + // Cannot set the campaign criterion status for an excluded criteria. + CANNOT_SET_STATUS_FOR_EXCLUDED_CRITERIA = 6; + + // Cannot target and exclude the same criterion. + CANNOT_TARGET_AND_EXCLUDE = 7; + + // The mutate contained too many operations. + TOO_MANY_OPERATIONS = 8; + + // This operator cannot be applied to a criterion of this type. + OPERATOR_NOT_SUPPORTED_FOR_CRITERION_TYPE = 9; + + // The Shopping campaign sales country is not supported for + // ProductSalesChannel targeting. + SHOPPING_CAMPAIGN_SALES_COUNTRY_NOT_SUPPORTED_FOR_SALES_CHANNEL = 10; + + // The existing field can't be updated with CREATE operation. It can be + // updated with UPDATE operation only. + CANNOT_ADD_EXISTING_FIELD = 11; + + // Negative criteria are immutable, so updates are not allowed. + CANNOT_UPDATE_NEGATIVE_CRITERION = 12; + + // Only free form names are allowed for negative Smart campaign keyword + // theme. + CANNOT_SET_NEGATIVE_KEYWORD_THEME_CONSTANT_CRITERION = 13; + + // Invalid Smart campaign keyword theme constant criterion. + INVALID_KEYWORD_THEME_CONSTANT = 14; + + // A Smart campaign keyword theme constant or free-form Smart campaign + // keyword theme is required. + MISSING_KEYWORD_THEME_CONSTANT_OR_FREE_FORM_KEYWORD_THEME = 15; + + // A Smart campaign may not target proximity and location criteria + // simultaneously. + CANNOT_TARGET_BOTH_PROXIMITY_AND_LOCATION_CRITERIA_FOR_SMART_CAMPAIGN = 16; + + // A Smart campaign may not target multiple proximity criteria. + CANNOT_TARGET_MULTIPLE_PROXIMITY_CRITERIA_FOR_SMART_CAMPAIGN = 17; + } + + +} diff --git a/google/ads/googleads/v9/errors/campaign_customizer_error.proto b/google/ads/googleads/v9/errors/campaign_customizer_error.proto new file mode 100644 index 000000000..99dc8e253 --- /dev/null +++ b/google/ads/googleads/v9/errors/campaign_customizer_error.proto @@ -0,0 +1,44 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCustomizerErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing campaign customizer errors. + +// Container for enum describing possible campaign customizer errors. +message CampaignCustomizerErrorEnum { + // Enum describing possible campaign customizer errors. + enum CampaignCustomizerError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + } + + +} diff --git a/google/ads/googleads/v9/errors/campaign_draft_error.proto b/google/ads/googleads/v9/errors/campaign_draft_error.proto new file mode 100644 index 000000000..1f97e172b --- /dev/null +++ b/google/ads/googleads/v9/errors/campaign_draft_error.proto @@ -0,0 +1,79 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignDraftErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing campaign draft errors. + +// Container for enum describing possible campaign draft errors. +message CampaignDraftErrorEnum { + // Enum describing possible campaign draft errors. + enum CampaignDraftError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A draft with this name already exists for this campaign. + DUPLICATE_DRAFT_NAME = 2; + + // The draft is removed and cannot be transitioned to another status. + INVALID_STATUS_TRANSITION_FROM_REMOVED = 3; + + // The draft has been promoted and cannot be transitioned to the specified + // status. + INVALID_STATUS_TRANSITION_FROM_PROMOTED = 4; + + // The draft has failed to be promoted and cannot be transitioned to the + // specified status. + INVALID_STATUS_TRANSITION_FROM_PROMOTE_FAILED = 5; + + // This customer is not allowed to create drafts. + CUSTOMER_CANNOT_CREATE_DRAFT = 6; + + // This campaign is not allowed to create drafts. + CAMPAIGN_CANNOT_CREATE_DRAFT = 7; + + // This modification cannot be made on a draft. + INVALID_DRAFT_CHANGE = 8; + + // The draft cannot be transitioned to the specified status from its + // current status. + INVALID_STATUS_TRANSITION = 9; + + // The campaign has reached the maximum number of drafts that can be created + // for a campaign throughout its lifetime. No additional drafts can be + // created for this campaign. Removed drafts also count towards this limit. + MAX_NUMBER_OF_DRAFTS_PER_CAMPAIGN_REACHED = 10; + + // ListAsyncErrors was called without first promoting the draft. + LIST_ERRORS_FOR_PROMOTED_DRAFT_ONLY = 11; + } + + +} diff --git a/google/ads/googleads/v9/errors/campaign_error.proto b/google/ads/googleads/v9/errors/campaign_error.proto new file mode 100644 index 000000000..2a55f028c --- /dev/null +++ b/google/ads/googleads/v9/errors/campaign_error.proto @@ -0,0 +1,201 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing campaign errors. + +// Container for enum describing possible campaign errors. +message CampaignErrorEnum { + // Enum describing possible campaign errors. + enum CampaignError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot target content network. + CANNOT_TARGET_CONTENT_NETWORK = 3; + + // Cannot target search network. + CANNOT_TARGET_SEARCH_NETWORK = 4; + + // Cannot cover search network without google search network. + CANNOT_TARGET_SEARCH_NETWORK_WITHOUT_GOOGLE_SEARCH = 5; + + // Cannot target Google Search network for a CPM campaign. + CANNOT_TARGET_GOOGLE_SEARCH_FOR_CPM_CAMPAIGN = 6; + + // Must target at least one network. + CAMPAIGN_MUST_TARGET_AT_LEAST_ONE_NETWORK = 7; + + // Only some Google partners are allowed to target partner search network. + CANNOT_TARGET_PARTNER_SEARCH_NETWORK = 8; + + // Cannot target content network only as campaign has criteria-level bidding + // strategy. + CANNOT_TARGET_CONTENT_NETWORK_ONLY_WITH_CRITERIA_LEVEL_BIDDING_STRATEGY = 9; + + // Cannot modify the start or end date such that the campaign duration would + // not contain the durations of all runnable trials. + CAMPAIGN_DURATION_MUST_CONTAIN_ALL_RUNNABLE_TRIALS = 10; + + // Cannot modify dates, budget or status of a trial campaign. + CANNOT_MODIFY_FOR_TRIAL_CAMPAIGN = 11; + + // Trying to modify the name of an active or paused campaign, where the name + // is already assigned to another active or paused campaign. + DUPLICATE_CAMPAIGN_NAME = 12; + + // Two fields are in conflicting modes. + INCOMPATIBLE_CAMPAIGN_FIELD = 13; + + // Campaign name cannot be used. + INVALID_CAMPAIGN_NAME = 14; + + // Given status is invalid. + INVALID_AD_SERVING_OPTIMIZATION_STATUS = 15; + + // Error in the campaign level tracking URL. + INVALID_TRACKING_URL = 16; + + // Cannot set both tracking URL template and tracking setting. A user has + // to clear legacy tracking setting in order to add tracking URL template. + CANNOT_SET_BOTH_TRACKING_URL_TEMPLATE_AND_TRACKING_SETTING = 17; + + // The maximum number of impressions for Frequency Cap should be an integer + // greater than 0. + MAX_IMPRESSIONS_NOT_IN_RANGE = 18; + + // Only the Day, Week and Month time units are supported. + TIME_UNIT_NOT_SUPPORTED = 19; + + // Operation not allowed on a campaign whose serving status has ended + INVALID_OPERATION_IF_SERVING_STATUS_HAS_ENDED = 20; + + // This budget is exclusively linked to a Campaign that is using experiments + // so it cannot be shared. + BUDGET_CANNOT_BE_SHARED = 21; + + // Campaigns using experiments cannot use a shared budget. + CAMPAIGN_CANNOT_USE_SHARED_BUDGET = 22; + + // A different budget cannot be assigned to a campaign when there are + // running or scheduled trials. + CANNOT_CHANGE_BUDGET_ON_CAMPAIGN_WITH_TRIALS = 23; + + // No link found between the campaign and the label. + CAMPAIGN_LABEL_DOES_NOT_EXIST = 24; + + // The label has already been attached to the campaign. + CAMPAIGN_LABEL_ALREADY_EXISTS = 25; + + // A ShoppingSetting was not found when creating a shopping campaign. + MISSING_SHOPPING_SETTING = 26; + + // The country in shopping setting is not an allowed country. + INVALID_SHOPPING_SALES_COUNTRY = 27; + + // The requested channel type is not available according to the customer's + // account setting. + ADVERTISING_CHANNEL_TYPE_NOT_AVAILABLE_FOR_ACCOUNT_TYPE = 31; + + // The AdvertisingChannelSubType is not a valid subtype of the primary + // channel type. + INVALID_ADVERTISING_CHANNEL_SUB_TYPE = 32; + + // At least one conversion must be selected. + AT_LEAST_ONE_CONVERSION_MUST_BE_SELECTED = 33; + + // Setting ad rotation mode for a campaign is not allowed. Ad rotation mode + // at campaign is deprecated. + CANNOT_SET_AD_ROTATION_MODE = 34; + + // Trying to change start date on a campaign that has started. + CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED = 35; + + // Trying to modify a date into the past. + CANNOT_SET_DATE_TO_PAST = 36; + + // Hotel center id in the hotel setting does not match any customer links. + MISSING_HOTEL_CUSTOMER_LINK = 37; + + // Hotel center id in the hotel setting must match an active customer link. + INVALID_HOTEL_CUSTOMER_LINK = 38; + + // Hotel setting was not found when creating a hotel ads campaign. + MISSING_HOTEL_SETTING = 39; + + // A Campaign cannot use shared campaign budgets and be part of a campaign + // group. + CANNOT_USE_SHARED_CAMPAIGN_BUDGET_WHILE_PART_OF_CAMPAIGN_GROUP = 40; + + // The app ID was not found. + APP_NOT_FOUND = 41; + + // Campaign.shopping_setting.enable_local is not supported for the specified + // campaign type. + SHOPPING_ENABLE_LOCAL_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE = 42; + + // The merchant does not support the creation of campaigns for Shopping + // Comparison Listing Ads. + MERCHANT_NOT_ALLOWED_FOR_COMPARISON_LISTING_ADS = 43; + + // The App campaign for engagement cannot be created because there aren't + // enough installs. + INSUFFICIENT_APP_INSTALLS_COUNT = 44; + + // The App campaign for engagement cannot be created because the app is + // sensitive. + SENSITIVE_CATEGORY_APP = 45; + + // Customers with Housing, Employment, or Credit ads must accept updated + // personalized ads policy to continue creating campaigns. + HEC_AGREEMENT_REQUIRED = 46; + + // The field is not compatible with view through conversion optimization. + NOT_COMPATIBLE_WITH_VIEW_THROUGH_CONVERSION_OPTIMIZATION = 49; + + // The field type cannot be excluded because an active campaign-asset link + // of this type exists. + INVALID_EXCLUDED_PARENT_ASSET_FIELD_TYPE = 48; + + // The app pre-registration campaign cannot be created for non-Android + // applications. + CANNOT_CREATE_APP_PRE_REGISTRATION_FOR_NON_ANDROID_APP = 50; + + // The campaign cannot be created since the app is not available for + // pre-registration in any country. + APP_NOT_AVAILABLE_TO_CREATE_APP_PRE_REGISTRATION_CAMPAIGN = 51; + + // The type of the Budget is not compatible with this Campaign. + INCOMPATIBLE_BUDGET_TYPE = 52; + } + + +} diff --git a/google/ads/googleads/v9/errors/campaign_experiment_error.proto b/google/ads/googleads/v9/errors/campaign_experiment_error.proto new file mode 100644 index 000000000..f5f6e70eb --- /dev/null +++ b/google/ads/googleads/v9/errors/campaign_experiment_error.proto @@ -0,0 +1,81 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing campaign experiment errors. + +// Container for enum describing possible campaign experiment errors. +message CampaignExperimentErrorEnum { + // Enum describing possible campaign experiment errors. + enum CampaignExperimentError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // An active campaign or experiment with this name already exists. + DUPLICATE_NAME = 2; + + // Experiment cannot be updated from the current state to the + // requested target state. For example, an experiment can only graduate + // if its status is ENABLED. + INVALID_TRANSITION = 3; + + // Cannot create an experiment from a campaign using an explicitly shared + // budget. + CANNOT_CREATE_EXPERIMENT_WITH_SHARED_BUDGET = 4; + + // Cannot create an experiment for a removed base campaign. + CANNOT_CREATE_EXPERIMENT_FOR_REMOVED_BASE_CAMPAIGN = 5; + + // Cannot create an experiment from a draft, which has a status other than + // proposed. + CANNOT_CREATE_EXPERIMENT_FOR_NON_PROPOSED_DRAFT = 6; + + // This customer is not allowed to create an experiment. + CUSTOMER_CANNOT_CREATE_EXPERIMENT = 7; + + // This campaign is not allowed to create an experiment. + CAMPAIGN_CANNOT_CREATE_EXPERIMENT = 8; + + // Trying to set an experiment duration which overlaps with another + // experiment. + EXPERIMENT_DURATIONS_MUST_NOT_OVERLAP = 9; + + // All non-removed experiments must start and end within their campaign's + // duration. + EXPERIMENT_DURATION_MUST_BE_WITHIN_CAMPAIGN_DURATION = 10; + + // The experiment cannot be modified because its status is in a terminal + // state, such as REMOVED. + CANNOT_MUTATE_EXPERIMENT_DUE_TO_STATUS = 11; + } + + +} diff --git a/google/ads/googleads/v9/errors/campaign_feed_error.proto b/google/ads/googleads/v9/errors/campaign_feed_error.proto new file mode 100644 index 000000000..1b0a1f945 --- /dev/null +++ b/google/ads/googleads/v9/errors/campaign_feed_error.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignFeedErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing campaign feed errors. + +// Container for enum describing possible campaign feed errors. +message CampaignFeedErrorEnum { + // Enum describing possible campaign feed errors. + enum CampaignFeedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // An active feed already exists for this campaign and placeholder type. + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; + + // The specified feed is removed. + CANNOT_CREATE_FOR_REMOVED_FEED = 4; + + // The CampaignFeed already exists. UPDATE should be used to modify the + // existing CampaignFeed. + CANNOT_CREATE_ALREADY_EXISTING_CAMPAIGN_FEED = 5; + + // Cannot update removed campaign feed. + CANNOT_MODIFY_REMOVED_CAMPAIGN_FEED = 6; + + // Invalid placeholder type. + INVALID_PLACEHOLDER_TYPE = 7; + + // Feed mapping for this placeholder type does not exist. + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 8; + + // Location CampaignFeeds cannot be created unless there is a location + // CustomerFeed for the specified feed. + NO_EXISTING_LOCATION_CUSTOMER_FEED = 9; + } + + +} diff --git a/google/ads/googleads/v9/errors/campaign_shared_set_error.proto b/google/ads/googleads/v9/errors/campaign_shared_set_error.proto new file mode 100644 index 000000000..d0e53f332 --- /dev/null +++ b/google/ads/googleads/v9/errors/campaign_shared_set_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSharedSetErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing campaign shared set errors. + +// Container for enum describing possible campaign shared set errors. +message CampaignSharedSetErrorEnum { + // Enum describing possible campaign shared set errors. + enum CampaignSharedSetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The shared set belongs to another customer and permission isn't granted. + SHARED_SET_ACCESS_DENIED = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/change_event_error.proto b/google/ads/googleads/v9/errors/change_event_error.proto new file mode 100644 index 000000000..077a77df7 --- /dev/null +++ b/google/ads/googleads/v9/errors/change_event_error.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ChangeEventErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing change event errors. + +// Container for enum describing possible change event errors. +message ChangeEventErrorEnum { + // Enum describing possible change event errors. + enum ChangeEventError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The requested start date is too old. It cannot be older than 30 days. + START_DATE_TOO_OLD = 2; + + // The change_event search request must specify a finite range filter + // on change_date_time. + CHANGE_DATE_RANGE_INFINITE = 3; + + // The change event search request has specified invalid date time filters + // that can never logically produce any valid results (for example, start + // time after end time). + CHANGE_DATE_RANGE_NEGATIVE = 4; + + // The change_event search request must specify a LIMIT. + LIMIT_NOT_SPECIFIED = 5; + + // The LIMIT specified by change_event request should be less than or equal + // to 10K. + INVALID_LIMIT_CLAUSE = 6; + } + + +} diff --git a/google/ads/googleads/v9/errors/change_status_error.proto b/google/ads/googleads/v9/errors/change_status_error.proto new file mode 100644 index 000000000..7fc45a2ee --- /dev/null +++ b/google/ads/googleads/v9/errors/change_status_error.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ChangeStatusErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing change status errors. + +// Container for enum describing possible change status errors. +message ChangeStatusErrorEnum { + // Enum describing possible change status errors. + enum ChangeStatusError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The requested start date is too old. + START_DATE_TOO_OLD = 3; + + // The change_status search request must specify a finite range filter + // on last_change_date_time. + CHANGE_DATE_RANGE_INFINITE = 4; + + // The change status search request has specified invalid date time filters + // that can never logically produce any valid results (for example, start + // time after end time). + CHANGE_DATE_RANGE_NEGATIVE = 5; + + // The change_status search request must specify a LIMIT. + LIMIT_NOT_SPECIFIED = 6; + + // The LIMIT specified by change_status request should be less than or equal + // to 10K. + INVALID_LIMIT_CLAUSE = 7; + } + + +} diff --git a/google/ads/googleads/v9/errors/collection_size_error.proto b/google/ads/googleads/v9/errors/collection_size_error.proto new file mode 100644 index 000000000..18002b753 --- /dev/null +++ b/google/ads/googleads/v9/errors/collection_size_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CollectionSizeErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing collection size errors. + +// Container for enum describing possible collection size errors. +message CollectionSizeErrorEnum { + // Enum describing possible collection size errors. + enum CollectionSizeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Too few. + TOO_FEW = 2; + + // Too many. + TOO_MANY = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/context_error.proto b/google/ads/googleads/v9/errors/context_error.proto new file mode 100644 index 000000000..e6bd62454 --- /dev/null +++ b/google/ads/googleads/v9/errors/context_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ContextErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing context errors. + +// Container for enum describing possible context errors. +message ContextErrorEnum { + // Enum describing possible context errors. + enum ContextError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The operation is not allowed for the given context. + OPERATION_NOT_PERMITTED_FOR_CONTEXT = 2; + + // The operation is not allowed for removed resources. + OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/conversion_action_error.proto b/google/ads/googleads/v9/errors/conversion_action_error.proto new file mode 100644 index 000000000..ebe23fcb7 --- /dev/null +++ b/google/ads/googleads/v9/errors/conversion_action_error.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing conversion action errors. + +// Container for enum describing possible conversion action errors. +message ConversionActionErrorEnum { + // Enum describing possible conversion action errors. + enum ConversionActionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The specified conversion action name already exists. + DUPLICATE_NAME = 2; + + // Another conversion action with the specified app id already exists. + DUPLICATE_APP_ID = 3; + + // Android first open action conflicts with Google play codeless download + // action tracking the same app. + TWO_CONVERSION_ACTIONS_BIDDING_ON_SAME_APP_DOWNLOAD = 4; + + // Android first open action conflicts with Google play codeless download + // action tracking the same app. + BIDDING_ON_SAME_APP_DOWNLOAD_AS_GLOBAL_ACTION = 5; + + // The attribution model cannot be set to DATA_DRIVEN because a data-driven + // model has never been generated. + DATA_DRIVEN_MODEL_WAS_NEVER_GENERATED = 6; + + // The attribution model cannot be set to DATA_DRIVEN because the + // data-driven model is expired. + DATA_DRIVEN_MODEL_EXPIRED = 7; + + // The attribution model cannot be set to DATA_DRIVEN because the + // data-driven model is stale. + DATA_DRIVEN_MODEL_STALE = 8; + + // The attribution model cannot be set to DATA_DRIVEN because the + // data-driven model is unavailable or the conversion action was newly + // added. + DATA_DRIVEN_MODEL_UNKNOWN = 9; + + // Creation of this conversion action type isn't supported by Google + // Ads API. + CREATION_NOT_SUPPORTED = 10; + + // Update of this conversion action isn't supported by Google Ads API. + UPDATE_NOT_SUPPORTED = 11; + } + + +} diff --git a/google/ads/googleads/v9/errors/conversion_adjustment_upload_error.proto b/google/ads/googleads/v9/errors/conversion_adjustment_upload_error.proto new file mode 100644 index 000000000..d923c4dc2 --- /dev/null +++ b/google/ads/googleads/v9/errors/conversion_adjustment_upload_error.proto @@ -0,0 +1,122 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionAdjustmentUploadErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing conversion adjustment upload errors. + +// Container for enum describing possible conversion adjustment upload errors. +message ConversionAdjustmentUploadErrorEnum { + // Enum describing possible conversion adjustment upload errors. + enum ConversionAdjustmentUploadError { + // Not specified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The specified conversion action was created too recently. + // Please try the upload again after 4-6 hours have passed since the + // conversion action was created. + TOO_RECENT_CONVERSION_ACTION = 2; + + // No conversion action of a supported ConversionActionType that matches the + // provided information can be found for the customer. + INVALID_CONVERSION_ACTION = 3; + + // A retraction was already reported for this conversion. + CONVERSION_ALREADY_RETRACTED = 4; + + // A conversion for the supplied combination of conversion + // action and conversion identifier could not be found. + CONVERSION_NOT_FOUND = 5; + + // The specified conversion has already expired. Conversions expire after 55 + // days, after which adjustments cannot be reported against them. + CONVERSION_EXPIRED = 6; + + // The supplied adjustment date time precedes that of the original + // conversion. + ADJUSTMENT_PRECEDES_CONVERSION = 7; + + // A restatement with a more recent adjustment date time was already + // reported for this conversion. + MORE_RECENT_RESTATEMENT_FOUND = 8; + + // The conversion was created too recently. + TOO_RECENT_CONVERSION = 9; + + // Restatements cannot be reported for a conversion action that always uses + // the default value. + CANNOT_RESTATE_CONVERSION_ACTION_THAT_ALWAYS_USES_DEFAULT_CONVERSION_VALUE = 10; + + // The request contained more than 2000 adjustments. + TOO_MANY_ADJUSTMENTS_IN_REQUEST = 11; + + // The conversion has been adjusted too many times. + TOO_MANY_ADJUSTMENTS = 12; + + // A restatement with this timestamp already exists for this conversion. To + // upload another adjustment, please use a different timestamp. + RESTATEMENT_ALREADY_EXISTS = 13; + + // This adjustment has the same timestamp as another adjustment in the + // request for this conversion. To upload another adjustment, please use a + // different timestamp. + DUPLICATE_ADJUSTMENT_IN_REQUEST = 14; + + // The customer has not accepted the customer data terms in the conversion + // settings page. + CUSTOMER_NOT_ACCEPTED_CUSTOMER_DATA_TERMS = 15; + + // The enhanced conversion settings of the conversion action supplied is + // not eligible for enhancements. + CONVERSION_ACTION_NOT_ELIGIBLE_FOR_ENHANCEMENT = 16; + + // The provided user identifier is not a SHA-256 hash. It is either unhashed + // or hashed using a different hash function. + INVALID_USER_IDENTIFIER = 17; + + // The provided user identifier is not supported. + // ConversionAdjustmentUploadService only supports hashed_email, + // hashed_phone_number, and address_info. + UNSUPPORTED_USER_IDENTIFIER = 18; + + // Cannot set both gclid_date_time_pair and order_id. + GCLID_DATE_TIME_PAIR_AND_ORDER_ID_BOTH_SET = 20; + + // An enhancement with this conversion action and order_id already exists + // for this conversion. + CONVERSION_ALREADY_ENHANCED = 21; + + // This enhancement has the same conversion action and order_id as + // another enhancement in the request. + DUPLICATE_ENHANCEMENT_IN_REQUEST = 22; + } + + +} diff --git a/google/ads/googleads/v9/errors/conversion_custom_variable_error.proto b/google/ads/googleads/v9/errors/conversion_custom_variable_error.proto new file mode 100644 index 000000000..a8a4cb960 --- /dev/null +++ b/google/ads/googleads/v9/errors/conversion_custom_variable_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionCustomVariableErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing conversion custom variable errors. + +// Container for enum describing possible conversion custom variable errors. +message ConversionCustomVariableErrorEnum { + // Enum describing possible conversion custom variable errors. + enum ConversionCustomVariableError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A conversion custom variable with the specified name already exists. + DUPLICATE_NAME = 2; + + // A conversion custom variable with the specified tag already exists. + DUPLICATE_TAG = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/conversion_upload_error.proto b/google/ads/googleads/v9/errors/conversion_upload_error.proto new file mode 100644 index 000000000..06ab12c08 --- /dev/null +++ b/google/ads/googleads/v9/errors/conversion_upload_error.proto @@ -0,0 +1,202 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionUploadErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing conversion upload errors. + +// Container for enum describing possible conversion upload errors. +message ConversionUploadErrorEnum { + // Enum describing possible conversion upload errors. + enum ConversionUploadError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The request contained more than 2000 conversions. + TOO_MANY_CONVERSIONS_IN_REQUEST = 2; + + // The specified gclid could not be decoded. + UNPARSEABLE_GCLID = 3; + + // The specified conversion_date_time is before the event time + // associated with the given identifier or iOS URL parameter. + CONVERSION_PRECEDES_EVENT = 42; + + // The click associated with the given identifier or iOS URL parameter is + // either too old to be imported or occurred outside of the click through + // lookback window for the specified conversion action. + EXPIRED_EVENT = 43; + + // The click associated with the given identifier or iOS URL parameter + // occurred too recently. Please try uploading again after 6 hours have + // passed since the click occurred. + TOO_RECENT_EVENT = 44; + + // The click associated with the given identifier or iOS URL parameter could + // not be found in the system. This can happen if the identifier or iOS URL + // parameter are collected for non Google Ads clicks. + EVENT_NOT_FOUND = 45; + + // The click associated with the given identifier or iOS URL parameter is + // owned by a customer account that the uploading customer does not manage. + UNAUTHORIZED_CUSTOMER = 8; + + // No upload eligible conversion action that matches the provided + // information can be found for the customer. + INVALID_CONVERSION_ACTION = 9; + + // The specified conversion action was created too recently. + // Please try the upload again after 4-6 hours have passed since the + // conversion action was created. + TOO_RECENT_CONVERSION_ACTION = 10; + + // The click associated with the given identifier does not contain + // conversion tracking information. + CONVERSION_TRACKING_NOT_ENABLED_AT_IMPRESSION_TIME = 11; + + // The specified conversion action does not use an external attribution + // model, but external_attribution_data was set. + EXTERNAL_ATTRIBUTION_DATA_SET_FOR_NON_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 12; + + // The specified conversion action uses an external attribution model, but + // external_attribution_data or one of its contained fields was not set. + // Both external_attribution_credit and external_attribution_model must be + // set for externally attributed conversion actions. + EXTERNAL_ATTRIBUTION_DATA_NOT_SET_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 13; + + // Order IDs are not supported for conversion actions which use an external + // attribution model. + ORDER_ID_NOT_PERMITTED_FOR_EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION = 14; + + // A conversion with the same order id and conversion action combination + // already exists in our system. + ORDER_ID_ALREADY_IN_USE = 15; + + // The request contained two or more conversions with the same order id and + // conversion action combination. + DUPLICATE_ORDER_ID = 16; + + // The call occurred too recently. Please try uploading again after 12 hours + // have passed since the call occurred. + TOO_RECENT_CALL = 17; + + // The click that initiated the call is too old for this conversion to be + // imported. + EXPIRED_CALL = 18; + + // The call or the click leading to the call was not found. + CALL_NOT_FOUND = 19; + + // The specified conversion_date_time is before the call_start_date_time. + CONVERSION_PRECEDES_CALL = 20; + + // The click associated with the call does not contain conversion tracking + // information. + CONVERSION_TRACKING_NOT_ENABLED_AT_CALL_TIME = 21; + + // The caller’s phone number cannot be parsed. It should be formatted either + // as E.164 "+16502531234", International "+64 3-331 6005" or US national + // number "6502531234". + UNPARSEABLE_CALLERS_PHONE_NUMBER = 22; + + // A conversion with this timestamp already exists for this click. To upload + // another conversion, please use a different timestamp. + CLICK_CONVERSION_ALREADY_EXISTS = 23; + + // A conversion with this timestamp already exists for this call. To upload + // another conversion, please use a different timestamp. + CALL_CONVERSION_ALREADY_EXISTS = 24; + + // This conversion has the same click and timestamp as another conversion in + // the request. To upload another conversion for this click, please use a + // different timestamp. + DUPLICATE_CLICK_CONVERSION_IN_REQUEST = 25; + + // This conversion has the same call and timestamp as another conversion in + // the request. To upload another conversion for this call, please use a + // different timestamp. + DUPLICATE_CALL_CONVERSION_IN_REQUEST = 26; + + // The custom variable is not enabled. + CUSTOM_VARIABLE_NOT_ENABLED = 28; + + // The value of the custom variable contains private customer data, such + // as email addresses or phone numbers. + CUSTOM_VARIABLE_VALUE_CONTAINS_PII = 29; + + // The click associated with the given identifier or iOS URL parameter isn't + // from the account where conversion tracking is set up. + INVALID_CUSTOMER_FOR_CLICK = 30; + + // The click associated with the given call isn't from the account where + // conversion tracking is set up. + INVALID_CUSTOMER_FOR_CALL = 31; + + // The conversion can't be uploaded because the conversion source didn't + // comply with the App Tracking Transparency (ATT) policy or the person who + // converted didn't consent to tracking. + CONVERSION_NOT_COMPLIANT_WITH_ATT_POLICY = 32; + + // No click was found for the provided user identifiers that could be + // applied to the specified conversion action. + CLICK_NOT_FOUND = 33; + + // The provided user identifier is not a SHA-256 hash. It is either unhashed + // or hashed using a different hash function. + INVALID_USER_IDENTIFIER = 34; + + // Conversion actions which use an external attribution model cannot be used + // with UserIdentifier. + EXTERNALLY_ATTRIBUTED_CONVERSION_ACTION_NOT_PERMITTED_WITH_USER_IDENTIFIER = 35; + + // The provided user identifier is not supported. ConversionUploadService + // only supports hashed_email and hashed_phone_number. + UNSUPPORTED_USER_IDENTIFIER = 36; + + // gbraid and wbraid are both set in the request. Only one is allowed. + GBRAID_WBRAID_BOTH_SET = 38; + + // The specified wbraid could not be decoded. + UNPARSEABLE_WBRAID = 39; + + // The specified gbraid could not be decoded. + UNPARSEABLE_GBRAID = 40; + + // Conversion types which use an external attribution model cannot be used + // with gbraid or wbraid. + EXTERNALLY_ATTRIBUTED_CONVERSION_TYPE_NOT_PERMITTED_WITH_BRAID = 41; + + // Conversion actions which use the one-per-click counting type cannot be + // used with gbraid or wbraid. + ONE_PER_CLICK_CONVERSION_ACTION_NOT_PERMITTED_WITH_BRAID = 46; + } + + +} diff --git a/google/ads/googleads/v9/errors/conversion_value_rule_error.proto b/google/ads/googleads/v9/errors/conversion_value_rule_error.proto new file mode 100644 index 000000000..62aee9283 --- /dev/null +++ b/google/ads/googleads/v9/errors/conversion_value_rule_error.proto @@ -0,0 +1,92 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing conversion value rule errors. + +// Container for enum describing possible conversion value rule errors. +message ConversionValueRuleErrorEnum { + // Enum describing possible conversion value rule errors. + enum ConversionValueRuleError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The value rule's geo location condition contains invalid geo target + // constant(s), i.e. there's no matching geo target. + INVALID_GEO_TARGET_CONSTANT = 2; + + // The value rule's geo location condition contains conflicting included and + // excluded geo targets. Specifically, some of the excluded geo target(s) + // are the same as or contain some of the included geo target(s). For + // example, the geo location condition includes California but excludes U.S. + CONFLICTING_INCLUDED_AND_EXCLUDED_GEO_TARGET = 3; + + // User specified conflicting conditions for two value rules in the same + // value rule set. + CONFLICTING_CONDITIONS = 4; + + // The value rule cannot be removed because it's still included in some + // value rule set. + CANNOT_REMOVE_IF_INCLUDED_IN_VALUE_RULE_SET = 5; + + // The value rule contains a condition that's not allowed by the value rule + // set including this value rule. + CONDITION_NOT_ALLOWED = 6; + + // The value rule contains a field that should be unset. + FIELD_MUST_BE_UNSET = 7; + + // Pausing the value rule requires pausing the value rule set because the + // value rule is (one of) the last enabled in the value rule set. + CANNOT_PAUSE_UNLESS_VALUE_RULE_SET_IS_PAUSED = 8; + + // The value rule's geo location condition contains untargetable geo target + // constant(s). + UNTARGETABLE_GEO_TARGET = 9; + + // The value rule's audience condition contains invalid user list(s). In + // another word, there's no matching user list. + INVALID_AUDIENCE_USER_LIST = 10; + + // The value rule's audience condition contains inaccessible user list(s). + INACCESSIBLE_USER_LIST = 11; + + // The value rule's audience condition contains invalid user_interest(s). + // This might be because there is no matching user interest, or the user + // interest is not visible. + INVALID_AUDIENCE_USER_INTEREST = 12; + + // When a value rule is created, it shouldn't have REMOVED status. + CANNOT_ADD_RULE_WITH_STATUS_REMOVED = 13; + } + + +} diff --git a/google/ads/googleads/v9/errors/conversion_value_rule_set_error.proto b/google/ads/googleads/v9/errors/conversion_value_rule_set_error.proto new file mode 100644 index 000000000..a4bcc9eba --- /dev/null +++ b/google/ads/googleads/v9/errors/conversion_value_rule_set_error.proto @@ -0,0 +1,84 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleSetErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing conversion value rule set errors. + +// Container for enum describing possible conversion value rule set errors. +message ConversionValueRuleSetErrorEnum { + // Enum describing possible conversion value rule set errors. + enum ConversionValueRuleSetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Two value rules in this value rule set contain conflicting conditions. + CONFLICTING_VALUE_RULE_CONDITIONS = 2; + + // This value rule set includes a value rule that cannot be found, has been + // permanently removed or belongs to a different customer. + INVALID_VALUE_RULE = 3; + + // An error that's thrown when a mutate operation is trying to + // replace/remove some existing elements in the dimensions field. In other + // words, ADD op is always fine and UPDATE op is fine if it's only appending + // new elements into dimensions list. + DIMENSIONS_UPDATE_ONLY_ALLOW_APPEND = 4; + + // An error that's thrown when a mutate is adding new value rule(s) into a + // value rule set and the added value rule(s) include conditions that are + // not specified in the dimensions of the value rule set. + CONDITION_TYPE_NOT_ALLOWED = 5; + + // The dimensions field contains duplicate elements. + DUPLICATE_DIMENSIONS = 6; + + // This value rule set is attached to an invalid campaign id. Either a + // campaign with this campaign id doesn't exist or it belongs to a different + // customer. + INVALID_CAMPAIGN_ID = 7; + + // When a mutate request tries to pause a value rule set, the enabled + // value rules in this set must be paused in the same command, or this error + // will be thrown. + CANNOT_PAUSE_UNLESS_ALL_VALUE_RULES_ARE_PAUSED = 8; + + // When a mutate request tries to pause all the value rules in a value rule + // set, the value rule set must be paused, or this error will be thrown. + SHOULD_PAUSE_WHEN_ALL_VALUE_RULES_ARE_PAUSED = 9; + + // This value rule set is attached to a campaign that does not support value + // rules. Currently, campaign level value rule sets can only be created on + // Search, or Display campaigns. + VALUE_RULES_NOT_SUPPORTED_FOR_CAMPAIGN_TYPE = 10; + } + + +} diff --git a/google/ads/googleads/v9/errors/country_code_error.proto b/google/ads/googleads/v9/errors/country_code_error.proto new file mode 100644 index 000000000..f70dfbee2 --- /dev/null +++ b/google/ads/googleads/v9/errors/country_code_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CountryCodeErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing country code errors. + +// Container for enum describing country code errors. +message CountryCodeErrorEnum { + // Enum describing country code errors. + enum CountryCodeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The country code is invalid. + INVALID_COUNTRY_CODE = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/criterion_error.proto b/google/ads/googleads/v9/errors/criterion_error.proto new file mode 100644 index 000000000..2f0ee26a7 --- /dev/null +++ b/google/ads/googleads/v9/errors/criterion_error.proto @@ -0,0 +1,456 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CriterionErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing criterion errors. + +// Container for enum describing possible criterion errors. +message CriterionErrorEnum { + // Enum describing possible criterion errors. + enum CriterionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Concrete type of criterion is required for CREATE and UPDATE operations. + CONCRETE_TYPE_REQUIRED = 2; + + // The category requested for exclusion is invalid. + INVALID_EXCLUDED_CATEGORY = 3; + + // Invalid keyword criteria text. + INVALID_KEYWORD_TEXT = 4; + + // Keyword text should be less than 80 chars. + KEYWORD_TEXT_TOO_LONG = 5; + + // Keyword text has too many words. + KEYWORD_HAS_TOO_MANY_WORDS = 6; + + // Keyword text has invalid characters or symbols. + KEYWORD_HAS_INVALID_CHARS = 7; + + // Invalid placement URL. + INVALID_PLACEMENT_URL = 8; + + // Invalid user list criterion. + INVALID_USER_LIST = 9; + + // Invalid user interest criterion. + INVALID_USER_INTEREST = 10; + + // Placement URL has wrong format. + INVALID_FORMAT_FOR_PLACEMENT_URL = 11; + + // Placement URL is too long. + PLACEMENT_URL_IS_TOO_LONG = 12; + + // Indicates the URL contains an illegal character. + PLACEMENT_URL_HAS_ILLEGAL_CHAR = 13; + + // Indicates the URL contains multiple comma separated URLs. + PLACEMENT_URL_HAS_MULTIPLE_SITES_IN_LINE = 14; + + // Indicates the domain is blocked. + PLACEMENT_IS_NOT_AVAILABLE_FOR_TARGETING_OR_EXCLUSION = 15; + + // Invalid topic path. + INVALID_TOPIC_PATH = 16; + + // The YouTube Channel Id is invalid. + INVALID_YOUTUBE_CHANNEL_ID = 17; + + // The YouTube Video Id is invalid. + INVALID_YOUTUBE_VIDEO_ID = 18; + + // Indicates the placement is a YouTube vertical channel, which is no longer + // supported. + YOUTUBE_VERTICAL_CHANNEL_DEPRECATED = 19; + + // Indicates the placement is a YouTube demographic channel, which is no + // longer supported. + YOUTUBE_DEMOGRAPHIC_CHANNEL_DEPRECATED = 20; + + // YouTube urls are not supported in Placement criterion. Use YouTubeChannel + // and YouTubeVideo criterion instead. + YOUTUBE_URL_UNSUPPORTED = 21; + + // Criteria type can not be excluded by the customer, like AOL account type + // cannot target site type criteria. + CANNOT_EXCLUDE_CRITERIA_TYPE = 22; + + // Criteria type can not be targeted. + CANNOT_ADD_CRITERIA_TYPE = 23; + + // Not allowed to exclude similar user list. + CANNOT_EXCLUDE_SIMILAR_USER_LIST = 26; + + // Not allowed to target a closed user list. + CANNOT_ADD_CLOSED_USER_LIST = 27; + + // Not allowed to add display only UserLists to search only campaigns. + CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_ONLY_CAMPAIGNS = 28; + + // Not allowed to add display only UserLists to search plus campaigns. + CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SEARCH_CAMPAIGNS = 29; + + // Not allowed to add display only UserLists to shopping campaigns. + CANNOT_ADD_DISPLAY_ONLY_LISTS_TO_SHOPPING_CAMPAIGNS = 30; + + // Not allowed to add User interests to search only campaigns. + CANNOT_ADD_USER_INTERESTS_TO_SEARCH_CAMPAIGNS = 31; + + // Not allowed to set bids for this criterion type in search campaigns + CANNOT_SET_BIDS_ON_CRITERION_TYPE_IN_SEARCH_CAMPAIGNS = 32; + + // Final URLs, URL Templates and CustomParameters cannot be set for the + // criterion types of Gender, AgeRange, UserList, Placement, MobileApp, and + // MobileAppCategory in search campaigns and shopping campaigns. + CANNOT_ADD_URLS_TO_CRITERION_TYPE_FOR_CAMPAIGN_TYPE = 33; + + // Invalid combined audience criterion. + INVALID_COMBINED_AUDIENCE = 122; + + // Invalid custom affinity criterion. + INVALID_CUSTOM_AFFINITY = 96; + + // Invalid custom intent criterion. + INVALID_CUSTOM_INTENT = 97; + + // Invalid custom audience criterion. + INVALID_CUSTOM_AUDIENCE = 121; + + // IP address is not valid. + INVALID_IP_ADDRESS = 34; + + // IP format is not valid. + INVALID_IP_FORMAT = 35; + + // Mobile application is not valid. + INVALID_MOBILE_APP = 36; + + // Mobile application category is not valid. + INVALID_MOBILE_APP_CATEGORY = 37; + + // The CriterionId does not exist or is of the incorrect type. + INVALID_CRITERION_ID = 38; + + // The Criterion is not allowed to be targeted. + CANNOT_TARGET_CRITERION = 39; + + // The criterion is not allowed to be targeted as it is deprecated. + CANNOT_TARGET_OBSOLETE_CRITERION = 40; + + // The CriterionId is not valid for the type. + CRITERION_ID_AND_TYPE_MISMATCH = 41; + + // Distance for the radius for the proximity criterion is invalid. + INVALID_PROXIMITY_RADIUS = 42; + + // Units for the distance for the radius for the proximity criterion is + // invalid. + INVALID_PROXIMITY_RADIUS_UNITS = 43; + + // Street address in the address is not valid. + INVALID_STREETADDRESS_LENGTH = 44; + + // City name in the address is not valid. + INVALID_CITYNAME_LENGTH = 45; + + // Region code in the address is not valid. + INVALID_REGIONCODE_LENGTH = 46; + + // Region name in the address is not valid. + INVALID_REGIONNAME_LENGTH = 47; + + // Postal code in the address is not valid. + INVALID_POSTALCODE_LENGTH = 48; + + // Country code in the address is not valid. + INVALID_COUNTRY_CODE = 49; + + // Latitude for the GeoPoint is not valid. + INVALID_LATITUDE = 50; + + // Longitude for the GeoPoint is not valid. + INVALID_LONGITUDE = 51; + + // The Proximity input is not valid. Both address and geoPoint cannot be + // null. + PROXIMITY_GEOPOINT_AND_ADDRESS_BOTH_CANNOT_BE_NULL = 52; + + // The Proximity address cannot be geocoded to a valid lat/long. + INVALID_PROXIMITY_ADDRESS = 53; + + // User domain name is not valid. + INVALID_USER_DOMAIN_NAME = 54; + + // Length of serialized criterion parameter exceeded size limit. + CRITERION_PARAMETER_TOO_LONG = 55; + + // Time interval in the AdSchedule overlaps with another AdSchedule. + AD_SCHEDULE_TIME_INTERVALS_OVERLAP = 56; + + // AdSchedule time interval cannot span multiple days. + AD_SCHEDULE_INTERVAL_CANNOT_SPAN_MULTIPLE_DAYS = 57; + + // AdSchedule time interval specified is invalid, endTime cannot be earlier + // than startTime. + AD_SCHEDULE_INVALID_TIME_INTERVAL = 58; + + // The number of AdSchedule entries in a day exceeds the limit. + AD_SCHEDULE_EXCEEDED_INTERVALS_PER_DAY_LIMIT = 59; + + // CriteriaId does not match the interval of the AdSchedule specified. + AD_SCHEDULE_CRITERION_ID_MISMATCHING_FIELDS = 60; + + // Cannot set bid modifier for this criterion type. + CANNOT_BID_MODIFY_CRITERION_TYPE = 61; + + // Cannot bid modify criterion, since it is opted out of the campaign. + CANNOT_BID_MODIFY_CRITERION_CAMPAIGN_OPTED_OUT = 62; + + // Cannot set bid modifier for a negative criterion. + CANNOT_BID_MODIFY_NEGATIVE_CRITERION = 63; + + // Bid Modifier already exists. Use SET operation to update. + BID_MODIFIER_ALREADY_EXISTS = 64; + + // Feed Id is not allowed in these Location Groups. + FEED_ID_NOT_ALLOWED = 65; + + // The account may not use the requested criteria type. For example, some + // accounts are restricted to keywords only. + ACCOUNT_INELIGIBLE_FOR_CRITERIA_TYPE = 66; + + // The requested criteria type cannot be used with campaign or ad group + // bidding strategy. + CRITERIA_TYPE_INVALID_FOR_BIDDING_STRATEGY = 67; + + // The Criterion is not allowed to be excluded. + CANNOT_EXCLUDE_CRITERION = 68; + + // The criterion is not allowed to be removed. For example, we cannot remove + // any of the device criterion. + CANNOT_REMOVE_CRITERION = 69; + + // Bidding categories do not form a valid path in the Shopping bidding + // category taxonomy. + INVALID_PRODUCT_BIDDING_CATEGORY = 76; + + // ShoppingSetting must be added to the campaign before ProductScope + // criteria can be added. + MISSING_SHOPPING_SETTING = 77; + + // Matching function is invalid. + INVALID_MATCHING_FUNCTION = 78; + + // Filter parameters not allowed for location groups targeting. + LOCATION_FILTER_NOT_ALLOWED = 79; + + // Feed not found, or the feed is not an enabled location feed. + INVALID_FEED_FOR_LOCATION_FILTER = 98; + + // Given location filter parameter is invalid for location groups targeting. + LOCATION_FILTER_INVALID = 80; + + // Cannot set geo target constants and feed item sets at the same time. + CANNOT_SET_GEO_TARGET_CONSTANTS_WITH_FEED_ITEM_SETS = 123; + + // The location group radius is in the range but not at the valid increment. + INVALID_LOCATION_GROUP_RADIUS = 124; + + // The location group radius unit is invalid. + INVALID_LOCATION_GROUP_RADIUS_UNIT = 125; + + // Criteria type cannot be associated with a campaign and its ad group(s) + // simultaneously. + CANNOT_ATTACH_CRITERIA_AT_CAMPAIGN_AND_ADGROUP = 81; + + // Range represented by hotel length of stay's min nights and max nights + // overlaps with an existing criterion. + HOTEL_LENGTH_OF_STAY_OVERLAPS_WITH_EXISTING_CRITERION = 82; + + // Range represented by hotel advance booking window's min days and max days + // overlaps with an existing criterion. + HOTEL_ADVANCE_BOOKING_WINDOW_OVERLAPS_WITH_EXISTING_CRITERION = 83; + + // The field is not allowed to be set when the negative field is set to + // true, e.g. we don't allow bids in negative ad group or campaign criteria. + FIELD_INCOMPATIBLE_WITH_NEGATIVE_TARGETING = 84; + + // The combination of operand and operator in webpage condition is invalid. + INVALID_WEBPAGE_CONDITION = 85; + + // The URL of webpage condition is invalid. + INVALID_WEBPAGE_CONDITION_URL = 86; + + // The URL of webpage condition cannot be empty or contain white space. + WEBPAGE_CONDITION_URL_CANNOT_BE_EMPTY = 87; + + // The URL of webpage condition contains an unsupported protocol. + WEBPAGE_CONDITION_URL_UNSUPPORTED_PROTOCOL = 88; + + // The URL of webpage condition cannot be an IP address. + WEBPAGE_CONDITION_URL_CANNOT_BE_IP_ADDRESS = 89; + + // The domain of the URL is not consistent with the domain in campaign + // setting. + WEBPAGE_CONDITION_URL_DOMAIN_NOT_CONSISTENT_WITH_CAMPAIGN_SETTING = 90; + + // The URL of webpage condition cannot be a public suffix itself. + WEBPAGE_CONDITION_URL_CANNOT_BE_PUBLIC_SUFFIX = 91; + + // The URL of webpage condition has an invalid public suffix. + WEBPAGE_CONDITION_URL_INVALID_PUBLIC_SUFFIX = 92; + + // Value track parameter is not supported in webpage condition URL. + WEBPAGE_CONDITION_URL_VALUE_TRACK_VALUE_NOT_SUPPORTED = 93; + + // Only one URL-EQUALS webpage condition is allowed in a webpage + // criterion and it cannot be combined with other conditions. + WEBPAGE_CRITERION_URL_EQUALS_CAN_HAVE_ONLY_ONE_CONDITION = 94; + + // A webpage criterion cannot be added to a non-DSA ad group. + WEBPAGE_CRITERION_NOT_SUPPORTED_ON_NON_DSA_AD_GROUP = 95; + + // Cannot add positive user list criteria in Smart Display campaigns. + CANNOT_TARGET_USER_LIST_FOR_SMART_DISPLAY_CAMPAIGNS = 99; + + // Cannot add positive placement criterion types in search campaigns. + CANNOT_TARGET_PLACEMENTS_FOR_SEARCH_CAMPAIGNS = 126; + + // Listing scope contains too many dimension types. + LISTING_SCOPE_TOO_MANY_DIMENSION_TYPES = 100; + + // Listing scope has too many IN operators. + LISTING_SCOPE_TOO_MANY_IN_OPERATORS = 101; + + // Listing scope contains IN operator on an unsupported dimension type. + LISTING_SCOPE_IN_OPERATOR_NOT_SUPPORTED = 102; + + // There are dimensions with duplicate dimension type. + DUPLICATE_LISTING_DIMENSION_TYPE = 103; + + // There are dimensions with duplicate dimension value. + DUPLICATE_LISTING_DIMENSION_VALUE = 104; + + // Listing group SUBDIVISION nodes cannot have bids. + CANNOT_SET_BIDS_ON_LISTING_GROUP_SUBDIVISION = 105; + + // Ad group is invalid due to the listing groups it contains. + INVALID_LISTING_GROUP_HIERARCHY = 106; + + // Listing group unit cannot have children. + LISTING_GROUP_UNIT_CANNOT_HAVE_CHILDREN = 107; + + // Subdivided listing groups must have an "others" case. + LISTING_GROUP_SUBDIVISION_REQUIRES_OTHERS_CASE = 108; + + // Dimension type of listing group must be the same as that of its siblings. + LISTING_GROUP_REQUIRES_SAME_DIMENSION_TYPE_AS_SIBLINGS = 109; + + // Listing group cannot be added to the ad group because it already exists. + LISTING_GROUP_ALREADY_EXISTS = 110; + + // Listing group referenced in the operation was not found in the ad group. + LISTING_GROUP_DOES_NOT_EXIST = 111; + + // Recursive removal failed because listing group subdivision is being + // created or modified in this request. + LISTING_GROUP_CANNOT_BE_REMOVED = 112; + + // Listing group type is not allowed for specified ad group criterion type. + INVALID_LISTING_GROUP_TYPE = 113; + + // Listing group in an ADD operation specifies a non temporary criterion id. + LISTING_GROUP_ADD_MAY_ONLY_USE_TEMP_ID = 114; + + // The combined length of dimension values of the Listing scope criterion + // is too long. + LISTING_SCOPE_TOO_LONG = 115; + + // Listing scope contains too many dimensions. + LISTING_SCOPE_TOO_MANY_DIMENSIONS = 116; + + // The combined length of dimension values of the Listing group criterion is + // too long. + LISTING_GROUP_TOO_LONG = 117; + + // Listing group tree is too deep. + LISTING_GROUP_TREE_TOO_DEEP = 118; + + // Listing dimension is invalid (e.g. dimension contains illegal value, + // dimension type is represented with wrong class, etc). Listing dimension + // value can not contain "==" or "&+". + INVALID_LISTING_DIMENSION = 119; + + // Listing dimension type is either invalid for campaigns of this type or + // cannot be used in the current context. BIDDING_CATEGORY_Lx and + // PRODUCT_TYPE_Lx dimensions must be used in ascending order of their + // levels: L1, L2, L3, L4, L5... The levels must be specified sequentially + // and start from L1. Furthermore, an "others" Listing group cannot be + // subdivided with a dimension of the same type but of a higher level + // ("others" BIDDING_CATEGORY_L3 can be subdivided with BRAND but not with + // BIDDING_CATEGORY_L4). + INVALID_LISTING_DIMENSION_TYPE = 120; + + // Customer is not on allowlist for composite audience in display campaigns. + ADVERTISER_NOT_ON_ALLOWLIST_FOR_COMBINED_AUDIENCE_ON_DISPLAY = 127; + + // Cannot target on a removed combined audience. + CANNOT_TARGET_REMOVED_COMBINED_AUDIENCE = 128; + + // Combined audience ID is invalid. + INVALID_COMBINED_AUDIENCE_ID = 129; + + // Can not target removed combined audience. + CANNOT_TARGET_REMOVED_CUSTOM_AUDIENCE = 130; + + // Range represented by hotel check-in date's start date and end date + // overlaps with an existing criterion. + HOTEL_CHECK_IN_DATE_RANGE_OVERLAPS_WITH_EXISTING_CRITERION = 131; + + // Start date is earlier than earliest allowed value of yesterday UTC. + HOTEL_CHECK_IN_DATE_RANGE_START_DATE_TOO_EARLY = 132; + + // End date later is than latest allowed day of 330 days in the future UTC. + HOTEL_CHECK_IN_DATE_RANGE_END_DATE_TOO_LATE = 133; + + // Start date is after end date. + HOTEL_CHECK_IN_DATE_RANGE_REVERSED = 134; + + // Broad match modifier (BMM) keywords can no longer be created. Please see + // https://ads-developers.googleblog.com/2021/06/broad-match-modifier-upcoming-changes.html. + BROAD_MATCH_MODIFIER_KEYWORD_NOT_ALLOWED = 135; + } + + +} diff --git a/google/ads/googleads/v9/errors/currency_code_error.proto b/google/ads/googleads/v9/errors/currency_code_error.proto new file mode 100644 index 000000000..de4c5b308 --- /dev/null +++ b/google/ads/googleads/v9/errors/currency_code_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CurrencyCodeErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing currency code errors. + +// Container for enum describing possible currency code errors. +message CurrencyCodeErrorEnum { + // Enum describing possible currency code errors. + enum CurrencyCodeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The currency code is not supported. + UNSUPPORTED = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/custom_audience_error.proto b/google/ads/googleads/v9/errors/custom_audience_error.proto new file mode 100644 index 000000000..1b0d8af3a --- /dev/null +++ b/google/ads/googleads/v9/errors/custom_audience_error.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing custom audience errors. + +// Container for enum describing possible custom audience errors. +message CustomAudienceErrorEnum { + // Enum describing possible custom audience errors. + enum CustomAudienceError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // New name in the custom audience is duplicated ignoring cases. + NAME_ALREADY_USED = 2; + + // Cannot remove a custom audience while it's still being used as targeting. + CANNOT_REMOVE_WHILE_IN_USE = 3; + + // Cannot update or remove a custom audience that is already removed. + RESOURCE_ALREADY_REMOVED = 4; + + // The pair of [type, value] already exists in members. + MEMBER_TYPE_AND_PARAMETER_ALREADY_EXISTED = 5; + + // Member type is invalid. + INVALID_MEMBER_TYPE = 6; + + // Member type does not have associated value. + MEMBER_TYPE_AND_VALUE_DOES_NOT_MATCH = 7; + + // Custom audience contains a member that violates policy. + POLICY_VIOLATION = 8; + + // Change in custom audience type is not allowed. + INVALID_TYPE_CHANGE = 9; + } + + +} diff --git a/google/ads/googleads/v9/errors/custom_conversion_goal_error.proto b/google/ads/googleads/v9/errors/custom_conversion_goal_error.proto new file mode 100644 index 000000000..494307ddb --- /dev/null +++ b/google/ads/googleads/v9/errors/custom_conversion_goal_error.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomConversionGoalErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing CustomConversionGoal errors. + +// Container for enum describing possible custom conversion goal errors. +message CustomConversionGoalErrorEnum { + // Enum describing possible custom conversion goal errors. + enum CustomConversionGoalError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot find a conversion action with the specified id. + INVALID_CONVERSION_ACTION = 2; + + // The conversion action is not enabled so it cannot be included in a custom + // conversion goal. + CONVERSION_ACTION_NOT_ENABLED = 3; + + // The custom conversion goal cannot be removed because it's linked to a + // campaign. + CANNOT_REMOVE_LINKED_CUSTOM_CONVERSION_GOAL = 4; + } + + +} diff --git a/google/ads/googleads/v9/errors/custom_interest_error.proto b/google/ads/googleads/v9/errors/custom_interest_error.proto new file mode 100644 index 000000000..3685c31ec --- /dev/null +++ b/google/ads/googleads/v9/errors/custom_interest_error.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing custom interest errors. + +// Container for enum describing possible custom interest errors. +message CustomInterestErrorEnum { + // Enum describing possible custom interest errors. + enum CustomInterestError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Duplicate custom interest name ignoring case. + NAME_ALREADY_USED = 2; + + // In the remove custom interest member operation, both member ID and + // pair [type, parameter] are not present. + CUSTOM_INTEREST_MEMBER_ID_AND_TYPE_PARAMETER_NOT_PRESENT_IN_REMOVE = 3; + + // The pair of [type, parameter] does not exist. + TYPE_AND_PARAMETER_NOT_FOUND = 4; + + // The pair of [type, parameter] already exists. + TYPE_AND_PARAMETER_ALREADY_EXISTED = 5; + + // Unsupported custom interest member type. + INVALID_CUSTOM_INTEREST_MEMBER_TYPE = 6; + + // Cannot remove a custom interest while it's still being targeted. + CANNOT_REMOVE_WHILE_IN_USE = 7; + + // Cannot mutate custom interest type. + CANNOT_CHANGE_TYPE = 8; + } + + +} diff --git a/google/ads/googleads/v9/errors/customer_client_link_error.proto b/google/ads/googleads/v9/errors/customer_client_link_error.proto new file mode 100644 index 000000000..2afccc3b5 --- /dev/null +++ b/google/ads/googleads/v9/errors/customer_client_link_error.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientLinkErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing CustomerClientLink errors. + +// Container for enum describing possible CustomeClientLink errors. +message CustomerClientLinkErrorEnum { + // Enum describing possible CustomerClientLink errors. + enum CustomerClientLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Trying to manage a client that already in being managed by customer. + CLIENT_ALREADY_INVITED_BY_THIS_MANAGER = 2; + + // Already managed by some other manager in the hierarchy. + CLIENT_ALREADY_MANAGED_IN_HIERARCHY = 3; + + // Attempt to create a cycle in the hierarchy. + CYCLIC_LINK_NOT_ALLOWED = 4; + + // Managed accounts has the maximum number of linked accounts. + CUSTOMER_HAS_TOO_MANY_ACCOUNTS = 5; + + // Invitor has the maximum pending invitations. + CLIENT_HAS_TOO_MANY_INVITATIONS = 6; + + // Attempt to change hidden status of a link that is not active. + CANNOT_HIDE_OR_UNHIDE_MANAGER_ACCOUNTS = 7; + + // Parent manager account has the maximum number of linked accounts. + CUSTOMER_HAS_TOO_MANY_ACCOUNTS_AT_MANAGER = 8; + + // Client has too many managers. + CLIENT_HAS_TOO_MANY_MANAGERS = 9; + } + + +} diff --git a/google/ads/googleads/v9/errors/customer_customizer_error.proto b/google/ads/googleads/v9/errors/customer_customizer_error.proto new file mode 100644 index 000000000..6c9a94ef7 --- /dev/null +++ b/google/ads/googleads/v9/errors/customer_customizer_error.proto @@ -0,0 +1,44 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomerCustomizerErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing customer customizer errors. + +// Container for enum describing possible customer customizer errors. +message CustomerCustomizerErrorEnum { + // Enum describing possible customer customizer errors. + enum CustomerCustomizerError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + } + + +} diff --git a/google/ads/googleads/v9/errors/customer_error.proto b/google/ads/googleads/v9/errors/customer_error.proto new file mode 100644 index 000000000..07aa869da --- /dev/null +++ b/google/ads/googleads/v9/errors/customer_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomerErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Container for enum describing possible customer errors. +message CustomerErrorEnum { + // Set of errors that are related to requests dealing with Customer. + enum CustomerError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Customer status is not allowed to be changed from DRAFT and CLOSED. + // Currency code and at least one of country code and time zone needs to be + // set when status is changed to ENABLED. + STATUS_CHANGE_DISALLOWED = 2; + + // CustomerService cannot get a customer that has not been fully set up. + ACCOUNT_NOT_SET_UP = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/customer_feed_error.proto b/google/ads/googleads/v9/errors/customer_feed_error.proto new file mode 100644 index 000000000..c8653b1da --- /dev/null +++ b/google/ads/googleads/v9/errors/customer_feed_error.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomerFeedErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing customer feed errors. + +// Container for enum describing possible customer feed errors. +message CustomerFeedErrorEnum { + // Enum describing possible customer feed errors. + enum CustomerFeedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // An active feed already exists for this customer and place holder type. + FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 2; + + // The specified feed is removed. + CANNOT_CREATE_FOR_REMOVED_FEED = 3; + + // The CustomerFeed already exists. Update should be used to modify the + // existing CustomerFeed. + CANNOT_CREATE_ALREADY_EXISTING_CUSTOMER_FEED = 4; + + // Cannot update removed customer feed. + CANNOT_MODIFY_REMOVED_CUSTOMER_FEED = 5; + + // Invalid placeholder type. + INVALID_PLACEHOLDER_TYPE = 6; + + // Feed mapping for this placeholder type does not exist. + MISSING_FEEDMAPPING_FOR_PLACEHOLDER_TYPE = 7; + + // Placeholder not allowed at the account level. + PLACEHOLDER_TYPE_NOT_ALLOWED_ON_CUSTOMER_FEED = 8; + } + + +} diff --git a/google/ads/googleads/v9/errors/customer_manager_link_error.proto b/google/ads/googleads/v9/errors/customer_manager_link_error.proto new file mode 100644 index 000000000..8c623eef0 --- /dev/null +++ b/google/ads/googleads/v9/errors/customer_manager_link_error.proto @@ -0,0 +1,75 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomerManagerLinkErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing CustomerManagerLink errors. + +// Container for enum describing possible CustomerManagerLink errors. +message CustomerManagerLinkErrorEnum { + // Enum describing possible CustomerManagerLink errors. + enum CustomerManagerLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // No pending invitation. + NO_PENDING_INVITE = 2; + + // Attempt to operate on the same client more than once in the same call. + SAME_CLIENT_MORE_THAN_ONCE_PER_CALL = 3; + + // Manager account has the maximum number of linked accounts. + MANAGER_HAS_MAX_NUMBER_OF_LINKED_ACCOUNTS = 4; + + // If no active user on account it cannot be unlinked from its manager. + CANNOT_UNLINK_ACCOUNT_WITHOUT_ACTIVE_USER = 5; + + // Account should have at least one active owner on it before being + // unlinked. + CANNOT_REMOVE_LAST_CLIENT_ACCOUNT_OWNER = 6; + + // Only account owners may change their permission role. + CANNOT_CHANGE_ROLE_BY_NON_ACCOUNT_OWNER = 7; + + // When a client's link to its manager is not active, the link role cannot + // be changed. + CANNOT_CHANGE_ROLE_FOR_NON_ACTIVE_LINK_ACCOUNT = 8; + + // Attempt to link a child to a parent that contains or will contain + // duplicate children. + DUPLICATE_CHILD_FOUND = 9; + + // The authorized customer is a test account. It can add no more than the + // allowed number of accounts + TEST_ACCOUNT_LINKS_TOO_MANY_CHILD_ACCOUNTS = 10; + } + + +} diff --git a/google/ads/googleads/v9/errors/customer_user_access_error.proto b/google/ads/googleads/v9/errors/customer_user_access_error.proto new file mode 100644 index 000000000..e98de2971 --- /dev/null +++ b/google/ads/googleads/v9/errors/customer_user_access_error.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomerUserAccessErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing CustomerUserAccess errors. + +// Container for enum describing possible CustomerUserAccess errors. +message CustomerUserAccessErrorEnum { + // Enum describing possible customer user access errors. + enum CustomerUserAccessError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // There is no user associated with the user id specified. + INVALID_USER_ID = 2; + + // Unable to remove the access between the user and customer. + REMOVAL_DISALLOWED = 3; + + // Unable to add or update the access role as specified. + DISALLOWED_ACCESS_ROLE = 4; + + // The user can't remove itself from an active serving customer if it's the + // last admin user and the customer doesn't have any owner manager + LAST_ADMIN_USER_OF_SERVING_CUSTOMER = 5; + + // Last admin user cannot be removed from a manager. + LAST_ADMIN_USER_OF_MANAGER = 6; + } + + +} diff --git a/google/ads/googleads/v9/errors/customizer_attribute_error.proto b/google/ads/googleads/v9/errors/customizer_attribute_error.proto new file mode 100644 index 000000000..1cd22f570 --- /dev/null +++ b/google/ads/googleads/v9/errors/customizer_attribute_error.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "CustomizerAttributeErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing customizer attribute errors. + +// Container for enum describing possible customizer attribute errors. +message CustomizerAttributeErrorEnum { + // Enum describing possible customizer attribute errors. + enum CustomizerAttributeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // CustomizerAttribute name matches that of another active + // CustomizerAttribute. + DUPLICATE_CUSTOMIZER_ATTRIBUTE_NAME = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/database_error.proto b/google/ads/googleads/v9/errors/database_error.proto new file mode 100644 index 000000000..337871a46 --- /dev/null +++ b/google/ads/googleads/v9/errors/database_error.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "DatabaseErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing database errors. + +// Container for enum describing possible database errors. +message DatabaseErrorEnum { + // Enum describing possible database errors. + enum DatabaseError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Multiple requests were attempting to modify the same resource at once. + // Please retry the request. + CONCURRENT_MODIFICATION = 2; + + // The request conflicted with existing data. This error will usually be + // replaced with a more specific error if the request is retried. + DATA_CONSTRAINT_VIOLATION = 3; + + // The data written is too large. Please split the request into smaller + // requests. + REQUEST_TOO_LARGE = 4; + } + + +} diff --git a/google/ads/googleads/v9/errors/date_error.proto b/google/ads/googleads/v9/errors/date_error.proto new file mode 100644 index 000000000..b1264d541 --- /dev/null +++ b/google/ads/googleads/v9/errors/date_error.proto @@ -0,0 +1,74 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "DateErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing date errors. + +// Container for enum describing possible date errors. +message DateErrorEnum { + // Enum describing possible date errors. + enum DateError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Given field values do not correspond to a valid date. + INVALID_FIELD_VALUES_IN_DATE = 2; + + // Given field values do not correspond to a valid date time. + INVALID_FIELD_VALUES_IN_DATE_TIME = 3; + + // The string date's format should be yyyy-mm-dd. + INVALID_STRING_DATE = 4; + + // The string date time's format should be yyyy-mm-dd hh:mm:ss.ssssss. + INVALID_STRING_DATE_TIME_MICROS = 6; + + // The string date time's format should be yyyy-mm-dd hh:mm:ss. + INVALID_STRING_DATE_TIME_SECONDS = 11; + + // The string date time's format should be yyyy-mm-dd hh:mm:ss+|-hh:mm. + INVALID_STRING_DATE_TIME_SECONDS_WITH_OFFSET = 12; + + // Date is before allowed minimum. + EARLIER_THAN_MINIMUM_DATE = 7; + + // Date is after allowed maximum. + LATER_THAN_MAXIMUM_DATE = 8; + + // Date range bounds are not in order. + DATE_RANGE_MINIMUM_DATE_LATER_THAN_MAXIMUM_DATE = 9; + + // Both dates in range are null. + DATE_RANGE_MINIMUM_AND_MAXIMUM_DATES_BOTH_NULL = 10; + } + + +} diff --git a/google/ads/googleads/v9/errors/date_range_error.proto b/google/ads/googleads/v9/errors/date_range_error.proto new file mode 100644 index 000000000..62531e723 --- /dev/null +++ b/google/ads/googleads/v9/errors/date_range_error.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "DateRangeErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing date range errors. + +// Container for enum describing possible date range errors. +message DateRangeErrorEnum { + // Enum describing possible date range errors. + enum DateRangeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Invalid date. + INVALID_DATE = 2; + + // The start date was after the end date. + START_DATE_AFTER_END_DATE = 3; + + // Cannot set date to past time + CANNOT_SET_DATE_TO_PAST = 4; + + // A date was used that is past the system "last" date. + AFTER_MAXIMUM_ALLOWABLE_DATE = 5; + + // Trying to change start date on a resource that has started. + CANNOT_MODIFY_START_DATE_IF_ALREADY_STARTED = 6; + } + + +} diff --git a/google/ads/googleads/v9/errors/distinct_error.proto b/google/ads/googleads/v9/errors/distinct_error.proto new file mode 100644 index 000000000..4daecc1cb --- /dev/null +++ b/google/ads/googleads/v9/errors/distinct_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "DistinctErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing distinct errors. + +// Container for enum describing possible distinct errors. +message DistinctErrorEnum { + // Enum describing possible distinct errors. + enum DistinctError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Duplicate element. + DUPLICATE_ELEMENT = 2; + + // Duplicate type. + DUPLICATE_TYPE = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/enum_error.proto b/google/ads/googleads/v9/errors/enum_error.proto new file mode 100644 index 000000000..0b3e17d30 --- /dev/null +++ b/google/ads/googleads/v9/errors/enum_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "EnumErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing enum errors. + +// Container for enum describing possible enum errors. +message EnumErrorEnum { + // Enum describing possible enum errors. + enum EnumError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The enum value is not permitted. + ENUM_VALUE_NOT_PERMITTED = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/errors.proto b/google/ads/googleads/v9/errors/errors.proto new file mode 100644 index 000000000..f72ebc94f --- /dev/null +++ b/google/ads/googleads/v9/errors/errors.proto @@ -0,0 +1,716 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/ads/googleads/v9/common/policy.proto"; +import "google/ads/googleads/v9/common/value.proto"; +import "google/ads/googleads/v9/enums/resource_limit_type.proto"; +import "google/ads/googleads/v9/errors/access_invitation_error.proto"; +import "google/ads/googleads/v9/errors/account_budget_proposal_error.proto"; +import "google/ads/googleads/v9/errors/account_link_error.proto"; +import "google/ads/googleads/v9/errors/ad_customizer_error.proto"; +import "google/ads/googleads/v9/errors/ad_error.proto"; +import "google/ads/googleads/v9/errors/ad_group_ad_error.proto"; +import "google/ads/googleads/v9/errors/ad_group_bid_modifier_error.proto"; +import "google/ads/googleads/v9/errors/ad_group_criterion_customizer_error.proto"; +import "google/ads/googleads/v9/errors/ad_group_criterion_error.proto"; +import "google/ads/googleads/v9/errors/ad_group_customizer_error.proto"; +import "google/ads/googleads/v9/errors/ad_group_error.proto"; +import "google/ads/googleads/v9/errors/ad_group_feed_error.proto"; +import "google/ads/googleads/v9/errors/ad_parameter_error.proto"; +import "google/ads/googleads/v9/errors/ad_sharing_error.proto"; +import "google/ads/googleads/v9/errors/adx_error.proto"; +import "google/ads/googleads/v9/errors/asset_error.proto"; +import "google/ads/googleads/v9/errors/asset_group_asset_error.proto"; +import "google/ads/googleads/v9/errors/asset_group_error.proto"; +import "google/ads/googleads/v9/errors/asset_group_listing_group_filter_error.proto"; +import "google/ads/googleads/v9/errors/asset_link_error.proto"; +import "google/ads/googleads/v9/errors/asset_set_asset_error.proto"; +import "google/ads/googleads/v9/errors/asset_set_error.proto"; +import "google/ads/googleads/v9/errors/asset_set_link_error.proto"; +import "google/ads/googleads/v9/errors/authentication_error.proto"; +import "google/ads/googleads/v9/errors/authorization_error.proto"; +import "google/ads/googleads/v9/errors/batch_job_error.proto"; +import "google/ads/googleads/v9/errors/bidding_error.proto"; +import "google/ads/googleads/v9/errors/bidding_strategy_error.proto"; +import "google/ads/googleads/v9/errors/billing_setup_error.proto"; +import "google/ads/googleads/v9/errors/campaign_budget_error.proto"; +import "google/ads/googleads/v9/errors/campaign_criterion_error.proto"; +import "google/ads/googleads/v9/errors/campaign_customizer_error.proto"; +import "google/ads/googleads/v9/errors/campaign_draft_error.proto"; +import "google/ads/googleads/v9/errors/campaign_error.proto"; +import "google/ads/googleads/v9/errors/campaign_experiment_error.proto"; +import "google/ads/googleads/v9/errors/campaign_feed_error.proto"; +import "google/ads/googleads/v9/errors/campaign_shared_set_error.proto"; +import "google/ads/googleads/v9/errors/change_event_error.proto"; +import "google/ads/googleads/v9/errors/change_status_error.proto"; +import "google/ads/googleads/v9/errors/collection_size_error.proto"; +import "google/ads/googleads/v9/errors/context_error.proto"; +import "google/ads/googleads/v9/errors/conversion_action_error.proto"; +import "google/ads/googleads/v9/errors/conversion_adjustment_upload_error.proto"; +import "google/ads/googleads/v9/errors/conversion_custom_variable_error.proto"; +import "google/ads/googleads/v9/errors/conversion_upload_error.proto"; +import "google/ads/googleads/v9/errors/conversion_value_rule_error.proto"; +import "google/ads/googleads/v9/errors/conversion_value_rule_set_error.proto"; +import "google/ads/googleads/v9/errors/country_code_error.proto"; +import "google/ads/googleads/v9/errors/criterion_error.proto"; +import "google/ads/googleads/v9/errors/currency_code_error.proto"; +import "google/ads/googleads/v9/errors/custom_audience_error.proto"; +import "google/ads/googleads/v9/errors/custom_conversion_goal_error.proto"; +import "google/ads/googleads/v9/errors/custom_interest_error.proto"; +import "google/ads/googleads/v9/errors/customer_client_link_error.proto"; +import "google/ads/googleads/v9/errors/customer_customizer_error.proto"; +import "google/ads/googleads/v9/errors/customer_error.proto"; +import "google/ads/googleads/v9/errors/customer_feed_error.proto"; +import "google/ads/googleads/v9/errors/customer_manager_link_error.proto"; +import "google/ads/googleads/v9/errors/customer_user_access_error.proto"; +import "google/ads/googleads/v9/errors/customizer_attribute_error.proto"; +import "google/ads/googleads/v9/errors/database_error.proto"; +import "google/ads/googleads/v9/errors/date_error.proto"; +import "google/ads/googleads/v9/errors/date_range_error.proto"; +import "google/ads/googleads/v9/errors/distinct_error.proto"; +import "google/ads/googleads/v9/errors/enum_error.proto"; +import "google/ads/googleads/v9/errors/extension_feed_item_error.proto"; +import "google/ads/googleads/v9/errors/extension_setting_error.proto"; +import "google/ads/googleads/v9/errors/feed_attribute_reference_error.proto"; +import "google/ads/googleads/v9/errors/feed_error.proto"; +import "google/ads/googleads/v9/errors/feed_item_error.proto"; +import "google/ads/googleads/v9/errors/feed_item_set_error.proto"; +import "google/ads/googleads/v9/errors/feed_item_set_link_error.proto"; +import "google/ads/googleads/v9/errors/feed_item_target_error.proto"; +import "google/ads/googleads/v9/errors/feed_item_validation_error.proto"; +import "google/ads/googleads/v9/errors/feed_mapping_error.proto"; +import "google/ads/googleads/v9/errors/field_error.proto"; +import "google/ads/googleads/v9/errors/field_mask_error.proto"; +import "google/ads/googleads/v9/errors/function_error.proto"; +import "google/ads/googleads/v9/errors/function_parsing_error.proto"; +import "google/ads/googleads/v9/errors/geo_target_constant_suggestion_error.proto"; +import "google/ads/googleads/v9/errors/header_error.proto"; +import "google/ads/googleads/v9/errors/id_error.proto"; +import "google/ads/googleads/v9/errors/image_error.proto"; +import "google/ads/googleads/v9/errors/internal_error.proto"; +import "google/ads/googleads/v9/errors/invoice_error.proto"; +import "google/ads/googleads/v9/errors/keyword_plan_ad_group_error.proto"; +import "google/ads/googleads/v9/errors/keyword_plan_ad_group_keyword_error.proto"; +import "google/ads/googleads/v9/errors/keyword_plan_campaign_error.proto"; +import "google/ads/googleads/v9/errors/keyword_plan_campaign_keyword_error.proto"; +import "google/ads/googleads/v9/errors/keyword_plan_error.proto"; +import "google/ads/googleads/v9/errors/keyword_plan_idea_error.proto"; +import "google/ads/googleads/v9/errors/label_error.proto"; +import "google/ads/googleads/v9/errors/language_code_error.proto"; +import "google/ads/googleads/v9/errors/list_operation_error.proto"; +import "google/ads/googleads/v9/errors/manager_link_error.proto"; +import "google/ads/googleads/v9/errors/media_bundle_error.proto"; +import "google/ads/googleads/v9/errors/media_file_error.proto"; +import "google/ads/googleads/v9/errors/media_upload_error.proto"; +import "google/ads/googleads/v9/errors/merchant_center_error.proto"; +import "google/ads/googleads/v9/errors/multiplier_error.proto"; +import "google/ads/googleads/v9/errors/mutate_error.proto"; +import "google/ads/googleads/v9/errors/new_resource_creation_error.proto"; +import "google/ads/googleads/v9/errors/not_allowlisted_error.proto"; +import "google/ads/googleads/v9/errors/not_empty_error.proto"; +import "google/ads/googleads/v9/errors/null_error.proto"; +import "google/ads/googleads/v9/errors/offline_user_data_job_error.proto"; +import "google/ads/googleads/v9/errors/operation_access_denied_error.proto"; +import "google/ads/googleads/v9/errors/operator_error.proto"; +import "google/ads/googleads/v9/errors/partial_failure_error.proto"; +import "google/ads/googleads/v9/errors/payments_account_error.proto"; +import "google/ads/googleads/v9/errors/policy_finding_error.proto"; +import "google/ads/googleads/v9/errors/policy_validation_parameter_error.proto"; +import "google/ads/googleads/v9/errors/policy_violation_error.proto"; +import "google/ads/googleads/v9/errors/query_error.proto"; +import "google/ads/googleads/v9/errors/quota_error.proto"; +import "google/ads/googleads/v9/errors/range_error.proto"; +import "google/ads/googleads/v9/errors/reach_plan_error.proto"; +import "google/ads/googleads/v9/errors/recommendation_error.proto"; +import "google/ads/googleads/v9/errors/region_code_error.proto"; +import "google/ads/googleads/v9/errors/request_error.proto"; +import "google/ads/googleads/v9/errors/resource_access_denied_error.proto"; +import "google/ads/googleads/v9/errors/resource_count_limit_exceeded_error.proto"; +import "google/ads/googleads/v9/errors/setting_error.proto"; +import "google/ads/googleads/v9/errors/shared_criterion_error.proto"; +import "google/ads/googleads/v9/errors/shared_set_error.proto"; +import "google/ads/googleads/v9/errors/size_limit_error.proto"; +import "google/ads/googleads/v9/errors/string_format_error.proto"; +import "google/ads/googleads/v9/errors/string_length_error.proto"; +import "google/ads/googleads/v9/errors/third_party_app_analytics_link_error.proto"; +import "google/ads/googleads/v9/errors/time_zone_error.proto"; +import "google/ads/googleads/v9/errors/url_field_error.proto"; +import "google/ads/googleads/v9/errors/user_data_error.proto"; +import "google/ads/googleads/v9/errors/user_list_error.proto"; +import "google/ads/googleads/v9/errors/youtube_video_registration_error.proto"; +import "google/protobuf/duration.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ErrorsProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing the common error protos + +// Describes how a GoogleAds API call failed. It's returned inside +// google.rpc.Status.details when a call fails. +message GoogleAdsFailure { + // The list of errors that occurred. + repeated GoogleAdsError errors = 1; + + // The unique ID of the request that is used for debugging purposes. + string request_id = 2; +} + +// GoogleAds-specific error. +message GoogleAdsError { + // An enum value that indicates which error occurred. + ErrorCode error_code = 1; + + // A human-readable description of the error. + string message = 2; + + // The value that triggered the error. + google.ads.googleads.v9.common.Value trigger = 3; + + // Describes the part of the request proto that caused the error. + ErrorLocation location = 4; + + // Additional error details, which are returned by certain error codes. Most + // error codes do not include details. + ErrorDetails details = 5; +} + +// The error reason represented by type and enum. +message ErrorCode { + // The list of error enums + oneof error_code { + // An error caused by the request + RequestErrorEnum.RequestError request_error = 1; + + // An error with a Bidding Strategy mutate. + BiddingStrategyErrorEnum.BiddingStrategyError bidding_strategy_error = 2; + + // An error with a URL field mutate. + UrlFieldErrorEnum.UrlFieldError url_field_error = 3; + + // An error with a list operation. + ListOperationErrorEnum.ListOperationError list_operation_error = 4; + + // An error with an AWQL query + QueryErrorEnum.QueryError query_error = 5; + + // An error with a mutate + MutateErrorEnum.MutateError mutate_error = 7; + + // An error with a field mask + FieldMaskErrorEnum.FieldMaskError field_mask_error = 8; + + // An error encountered when trying to authorize a user. + AuthorizationErrorEnum.AuthorizationError authorization_error = 9; + + // An unexpected server-side error. + InternalErrorEnum.InternalError internal_error = 10; + + // An error with the amonut of quota remaining. + QuotaErrorEnum.QuotaError quota_error = 11; + + // An error with an Ad Group Ad mutate. + AdErrorEnum.AdError ad_error = 12; + + // An error with an Ad Group mutate. + AdGroupErrorEnum.AdGroupError ad_group_error = 13; + + // An error with a Campaign Budget mutate. + CampaignBudgetErrorEnum.CampaignBudgetError campaign_budget_error = 14; + + // An error with a Campaign mutate. + CampaignErrorEnum.CampaignError campaign_error = 15; + + // Indicates failure to properly authenticate user. + AuthenticationErrorEnum.AuthenticationError authentication_error = 17; + + // The reasons for the ad group criterion customizer error. + AdGroupCriterionCustomizerErrorEnum.AdGroupCriterionCustomizerError ad_group_criterion_customizer_error = 161; + + // Indicates failure to properly authenticate user. + AdGroupCriterionErrorEnum.AdGroupCriterionError ad_group_criterion_error = 18; + + // The reasons for the ad group customizer error. + AdGroupCustomizerErrorEnum.AdGroupCustomizerError ad_group_customizer_error = 159; + + // The reasons for the ad customizer error + AdCustomizerErrorEnum.AdCustomizerError ad_customizer_error = 19; + + // The reasons for the ad group ad error + AdGroupAdErrorEnum.AdGroupAdError ad_group_ad_error = 21; + + // The reasons for the ad sharing error + AdSharingErrorEnum.AdSharingError ad_sharing_error = 24; + + // The reasons for the adx error + AdxErrorEnum.AdxError adx_error = 25; + + // The reasons for the asset error + AssetErrorEnum.AssetError asset_error = 107; + + // The reasons for the asset group asset error + AssetGroupAssetErrorEnum.AssetGroupAssetError asset_group_asset_error = 149; + + // The reasons for the asset group listing group filter error + AssetGroupListingGroupFilterErrorEnum.AssetGroupListingGroupFilterError asset_group_listing_group_filter_error = 155; + + // The reasons for the asset group error + AssetGroupErrorEnum.AssetGroupError asset_group_error = 148; + + // The reasons for the asset set asset error + AssetSetAssetErrorEnum.AssetSetAssetError asset_set_asset_error = 153; + + // The reasons for the asset set link error + AssetSetLinkErrorEnum.AssetSetLinkError asset_set_link_error = 154; + + // The reasons for the asset set error + AssetSetErrorEnum.AssetSetError asset_set_error = 152; + + // The reasons for the bidding errors + BiddingErrorEnum.BiddingError bidding_error = 26; + + // The reasons for the campaign criterion error + CampaignCriterionErrorEnum.CampaignCriterionError campaign_criterion_error = 29; + + // The reasons for the campaign customizer error. + CampaignCustomizerErrorEnum.CampaignCustomizerError campaign_customizer_error = 160; + + // The reasons for the collection size error + CollectionSizeErrorEnum.CollectionSizeError collection_size_error = 31; + + // The reasons for the country code error + CountryCodeErrorEnum.CountryCodeError country_code_error = 109; + + // The reasons for the criterion error + CriterionErrorEnum.CriterionError criterion_error = 32; + + // The reasons for the custom conversion goal error + CustomConversionGoalErrorEnum.CustomConversionGoalError custom_conversion_goal_error = 150; + + // The reasons for the customer customizer error. + CustomerCustomizerErrorEnum.CustomerCustomizerError customer_customizer_error = 158; + + // The reasons for the customer error + CustomerErrorEnum.CustomerError customer_error = 90; + + // The reasons for the customizer attribute error. + CustomizerAttributeErrorEnum.CustomizerAttributeError customizer_attribute_error = 151; + + // The reasons for the date error + DateErrorEnum.DateError date_error = 33; + + // The reasons for the date range error + DateRangeErrorEnum.DateRangeError date_range_error = 34; + + // The reasons for the distinct error + DistinctErrorEnum.DistinctError distinct_error = 35; + + // The reasons for the feed attribute reference error + FeedAttributeReferenceErrorEnum.FeedAttributeReferenceError feed_attribute_reference_error = 36; + + // The reasons for the function error + FunctionErrorEnum.FunctionError function_error = 37; + + // The reasons for the function parsing error + FunctionParsingErrorEnum.FunctionParsingError function_parsing_error = 38; + + // The reasons for the id error + IdErrorEnum.IdError id_error = 39; + + // The reasons for the image error + ImageErrorEnum.ImageError image_error = 40; + + // The reasons for the language code error + LanguageCodeErrorEnum.LanguageCodeError language_code_error = 110; + + // The reasons for the media bundle error + MediaBundleErrorEnum.MediaBundleError media_bundle_error = 42; + + // The reasons for media uploading errors. + MediaUploadErrorEnum.MediaUploadError media_upload_error = 116; + + // The reasons for the media file error + MediaFileErrorEnum.MediaFileError media_file_error = 86; + + // Container for enum describing possible merchant center errors. + MerchantCenterErrorEnum.MerchantCenterError merchant_center_error = 162; + + // The reasons for the multiplier error + MultiplierErrorEnum.MultiplierError multiplier_error = 44; + + // The reasons for the new resource creation error + NewResourceCreationErrorEnum.NewResourceCreationError new_resource_creation_error = 45; + + // The reasons for the not empty error + NotEmptyErrorEnum.NotEmptyError not_empty_error = 46; + + // The reasons for the null error + NullErrorEnum.NullError null_error = 47; + + // The reasons for the operator error + OperatorErrorEnum.OperatorError operator_error = 48; + + // The reasons for the range error + RangeErrorEnum.RangeError range_error = 49; + + // The reasons for error in applying a recommendation + RecommendationErrorEnum.RecommendationError recommendation_error = 58; + + // The reasons for the region code error + RegionCodeErrorEnum.RegionCodeError region_code_error = 51; + + // The reasons for the setting error + SettingErrorEnum.SettingError setting_error = 52; + + // The reasons for the string format error + StringFormatErrorEnum.StringFormatError string_format_error = 53; + + // The reasons for the string length error + StringLengthErrorEnum.StringLengthError string_length_error = 54; + + // The reasons for the operation access denied error + OperationAccessDeniedErrorEnum.OperationAccessDeniedError operation_access_denied_error = 55; + + // The reasons for the resource access denied error + ResourceAccessDeniedErrorEnum.ResourceAccessDeniedError resource_access_denied_error = 56; + + // The reasons for the resource count limit exceeded error + ResourceCountLimitExceededErrorEnum.ResourceCountLimitExceededError resource_count_limit_exceeded_error = 57; + + // The reasons for YouTube video registration errors. + YoutubeVideoRegistrationErrorEnum.YoutubeVideoRegistrationError youtube_video_registration_error = 117; + + // The reasons for the ad group bid modifier error + AdGroupBidModifierErrorEnum.AdGroupBidModifierError ad_group_bid_modifier_error = 59; + + // The reasons for the context error + ContextErrorEnum.ContextError context_error = 60; + + // The reasons for the field error + FieldErrorEnum.FieldError field_error = 61; + + // The reasons for the shared set error + SharedSetErrorEnum.SharedSetError shared_set_error = 62; + + // The reasons for the shared criterion error + SharedCriterionErrorEnum.SharedCriterionError shared_criterion_error = 63; + + // The reasons for the campaign shared set error + CampaignSharedSetErrorEnum.CampaignSharedSetError campaign_shared_set_error = 64; + + // The reasons for the conversion action error + ConversionActionErrorEnum.ConversionActionError conversion_action_error = 65; + + // The reasons for the conversion adjustment upload error + ConversionAdjustmentUploadErrorEnum.ConversionAdjustmentUploadError conversion_adjustment_upload_error = 115; + + // The reasons for the conversion custom variable error + ConversionCustomVariableErrorEnum.ConversionCustomVariableError conversion_custom_variable_error = 143; + + // The reasons for the conversion upload error + ConversionUploadErrorEnum.ConversionUploadError conversion_upload_error = 111; + + // The reasons for the conversion value rule error + ConversionValueRuleErrorEnum.ConversionValueRuleError conversion_value_rule_error = 145; + + // The reasons for the conversion value rule set error + ConversionValueRuleSetErrorEnum.ConversionValueRuleSetError conversion_value_rule_set_error = 146; + + // The reasons for the header error. + HeaderErrorEnum.HeaderError header_error = 66; + + // The reasons for the database error. + DatabaseErrorEnum.DatabaseError database_error = 67; + + // The reasons for the policy finding error. + PolicyFindingErrorEnum.PolicyFindingError policy_finding_error = 68; + + // The reason for enum error. + EnumErrorEnum.EnumError enum_error = 70; + + // The reason for keyword plan error. + KeywordPlanErrorEnum.KeywordPlanError keyword_plan_error = 71; + + // The reason for keyword plan campaign error. + KeywordPlanCampaignErrorEnum.KeywordPlanCampaignError keyword_plan_campaign_error = 72; + + // The reason for keyword plan campaign keyword error. + KeywordPlanCampaignKeywordErrorEnum.KeywordPlanCampaignKeywordError keyword_plan_campaign_keyword_error = 132; + + // The reason for keyword plan ad group error. + KeywordPlanAdGroupErrorEnum.KeywordPlanAdGroupError keyword_plan_ad_group_error = 74; + + // The reason for keyword plan ad group keyword error. + KeywordPlanAdGroupKeywordErrorEnum.KeywordPlanAdGroupKeywordError keyword_plan_ad_group_keyword_error = 133; + + // The reason for keyword idea error. + KeywordPlanIdeaErrorEnum.KeywordPlanIdeaError keyword_plan_idea_error = 76; + + // The reasons for account budget proposal errors. + AccountBudgetProposalErrorEnum.AccountBudgetProposalError account_budget_proposal_error = 77; + + // The reasons for the user list error + UserListErrorEnum.UserListError user_list_error = 78; + + // The reasons for the change event error + ChangeEventErrorEnum.ChangeEventError change_event_error = 136; + + // The reasons for the change status error + ChangeStatusErrorEnum.ChangeStatusError change_status_error = 79; + + // The reasons for the feed error + FeedErrorEnum.FeedError feed_error = 80; + + // The reasons for the geo target constant suggestion error. + GeoTargetConstantSuggestionErrorEnum.GeoTargetConstantSuggestionError geo_target_constant_suggestion_error = 81; + + // The reasons for the campaign draft error + CampaignDraftErrorEnum.CampaignDraftError campaign_draft_error = 82; + + // The reasons for the feed item error + FeedItemErrorEnum.FeedItemError feed_item_error = 83; + + // The reason for the label error. + LabelErrorEnum.LabelError label_error = 84; + + // The reasons for the billing setup error + BillingSetupErrorEnum.BillingSetupError billing_setup_error = 87; + + // The reasons for the customer client link error + CustomerClientLinkErrorEnum.CustomerClientLinkError customer_client_link_error = 88; + + // The reasons for the customer manager link error + CustomerManagerLinkErrorEnum.CustomerManagerLinkError customer_manager_link_error = 91; + + // The reasons for the feed mapping error + FeedMappingErrorEnum.FeedMappingError feed_mapping_error = 92; + + // The reasons for the customer feed error + CustomerFeedErrorEnum.CustomerFeedError customer_feed_error = 93; + + // The reasons for the ad group feed error + AdGroupFeedErrorEnum.AdGroupFeedError ad_group_feed_error = 94; + + // The reasons for the campaign feed error + CampaignFeedErrorEnum.CampaignFeedError campaign_feed_error = 96; + + // The reasons for the custom interest error + CustomInterestErrorEnum.CustomInterestError custom_interest_error = 97; + + // The reasons for the campaign experiment error + CampaignExperimentErrorEnum.CampaignExperimentError campaign_experiment_error = 98; + + // The reasons for the extension feed item error + ExtensionFeedItemErrorEnum.ExtensionFeedItemError extension_feed_item_error = 100; + + // The reasons for the ad parameter error + AdParameterErrorEnum.AdParameterError ad_parameter_error = 101; + + // The reasons for the feed item validation error + FeedItemValidationErrorEnum.FeedItemValidationError feed_item_validation_error = 102; + + // The reasons for the extension setting error + ExtensionSettingErrorEnum.ExtensionSettingError extension_setting_error = 103; + + // The reasons for the feed item set error + FeedItemSetErrorEnum.FeedItemSetError feed_item_set_error = 140; + + // The reasons for the feed item set link error + FeedItemSetLinkErrorEnum.FeedItemSetLinkError feed_item_set_link_error = 141; + + // The reasons for the feed item target error + FeedItemTargetErrorEnum.FeedItemTargetError feed_item_target_error = 104; + + // The reasons for the policy violation error + PolicyViolationErrorEnum.PolicyViolationError policy_violation_error = 105; + + // The reasons for the mutate job error + PartialFailureErrorEnum.PartialFailureError partial_failure_error = 112; + + // The reasons for the policy validation parameter error + PolicyValidationParameterErrorEnum.PolicyValidationParameterError policy_validation_parameter_error = 114; + + // The reasons for the size limit error + SizeLimitErrorEnum.SizeLimitError size_limit_error = 118; + + // The reasons for the offline user data job error. + OfflineUserDataJobErrorEnum.OfflineUserDataJobError offline_user_data_job_error = 119; + + // The reasons for the not allowlisted error + NotAllowlistedErrorEnum.NotAllowlistedError not_allowlisted_error = 137; + + // The reasons for the manager link error + ManagerLinkErrorEnum.ManagerLinkError manager_link_error = 121; + + // The reasons for the currency code error + CurrencyCodeErrorEnum.CurrencyCodeError currency_code_error = 122; + + // The reasons for the access invitation error + AccessInvitationErrorEnum.AccessInvitationError access_invitation_error = 124; + + // The reasons for the reach plan error + ReachPlanErrorEnum.ReachPlanError reach_plan_error = 125; + + // The reasons for the invoice error + InvoiceErrorEnum.InvoiceError invoice_error = 126; + + // The reasons for errors in payments accounts service + PaymentsAccountErrorEnum.PaymentsAccountError payments_account_error = 127; + + // The reasons for the time zone error + TimeZoneErrorEnum.TimeZoneError time_zone_error = 128; + + // The reasons for the asset link error + AssetLinkErrorEnum.AssetLinkError asset_link_error = 129; + + // The reasons for the user data error. + UserDataErrorEnum.UserDataError user_data_error = 130; + + // The reasons for the batch job error + BatchJobErrorEnum.BatchJobError batch_job_error = 131; + + // The reasons for the account link status change error + AccountLinkErrorEnum.AccountLinkError account_link_error = 134; + + // The reasons for the third party app analytics link mutate error + ThirdPartyAppAnalyticsLinkErrorEnum.ThirdPartyAppAnalyticsLinkError third_party_app_analytics_link_error = 135; + + // The reasons for the customer user access mutate error + CustomerUserAccessErrorEnum.CustomerUserAccessError customer_user_access_error = 138; + + // The reasons for the custom audience error + CustomAudienceErrorEnum.CustomAudienceError custom_audience_error = 139; + } +} + +// Describes the part of the request proto that caused the error. +message ErrorLocation { + // A part of a field path. + message FieldPathElement { + // The name of a field or a oneof + string field_name = 1; + + // If field_name is a repeated field, this is the element that failed + optional int32 index = 3; + } + + // A field path that indicates which field was invalid in the request. + repeated FieldPathElement field_path_elements = 2; +} + +// Additional error details. +message ErrorDetails { + // The error code that should have been returned, but wasn't. This is used + // when the error code is not published in the client specified version. + string unpublished_error_code = 1; + + // Describes an ad policy violation. + PolicyViolationDetails policy_violation_details = 2; + + // Describes policy violation findings. + PolicyFindingDetails policy_finding_details = 3; + + // Details on the quota error, including the scope (account or developer), the + // rate bucket name and the retry delay. + QuotaErrorDetails quota_error_details = 4; + + // Details for a resource count limit exceeded error. + ResourceCountDetails resource_count_details = 5; +} + +// Error returned as part of a mutate response. +// This error indicates single policy violation by some text +// in one of the fields. +message PolicyViolationDetails { + // Human readable description of policy violation. + string external_policy_description = 2; + + // Unique identifier for this violation. + // If policy is exemptible, this key may be used to request exemption. + google.ads.googleads.v9.common.PolicyViolationKey key = 4; + + // Human readable name of the policy. + string external_policy_name = 5; + + // Whether user can file an exemption request for this violation. + bool is_exemptible = 6; +} + +// Error returned as part of a mutate response. +// This error indicates one or more policy findings in the fields of a +// resource. +message PolicyFindingDetails { + // The list of policy topics for the resource. Contains the PROHIBITED or + // FULLY_LIMITED policy topic entries that prevented the resource from being + // saved (among any other entries the resource may also have). + repeated google.ads.googleads.v9.common.PolicyTopicEntry policy_topic_entries = 1; +} + +// Additional quota error details when there is QuotaError. +message QuotaErrorDetails { + // Enum of possible scopes that quota buckets belong to. + enum QuotaRateScope { + // Unspecified enum + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Per customer account quota + ACCOUNT = 2; + + // Per project or DevToken quota + DEVELOPER = 3; + } + + // The rate scope of the quota limit. + QuotaRateScope rate_scope = 1; + + // The high level description of the quota bucket. + // Examples are "Get requests for standard access" or "Requests per account". + string rate_name = 2; + + // Backoff period that customers should wait before sending next request. + google.protobuf.Duration retry_delay = 3; +} + +// Error details returned when an resource count limit was exceeded. +message ResourceCountDetails { + // The ID of the resource whose limit was exceeded. + // External customer ID if the limit is for a customer. + string enclosing_id = 1; + + // The name of the resource (Customer, Campaign etc.) whose limit was + // exceeded. + string enclosing_resource = 5; + + // The limit which was exceeded. + int32 limit = 2; + + // The resource limit type which was exceeded. + google.ads.googleads.v9.enums.ResourceLimitTypeEnum.ResourceLimitType limit_type = 3; + + // The count of existing entities. + int32 existing_count = 4; +} diff --git a/google/ads/googleads/v9/errors/extension_feed_item_error.proto b/google/ads/googleads/v9/errors/extension_feed_item_error.proto new file mode 100644 index 000000000..11913cae3 --- /dev/null +++ b/google/ads/googleads/v9/errors/extension_feed_item_error.proto @@ -0,0 +1,195 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionFeedItemErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing extension feed item errors. + +// Container for enum describing possible extension feed item error. +message ExtensionFeedItemErrorEnum { + // Enum describing possible extension feed item errors. + enum ExtensionFeedItemError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Value is not within the accepted range. + VALUE_OUT_OF_RANGE = 2; + + // Url list is too long. + URL_LIST_TOO_LONG = 3; + + // Cannot have a geo targeting restriction without having geo targeting. + CANNOT_HAVE_RESTRICTION_ON_EMPTY_GEO_TARGETING = 4; + + // Cannot simultaneously set sitelink field with final urls. + CANNOT_SET_WITH_FINAL_URLS = 5; + + // Must set field with final urls. + CANNOT_SET_WITHOUT_FINAL_URLS = 6; + + // Phone number for a call extension is invalid. + INVALID_PHONE_NUMBER = 7; + + // Phone number for a call extension is not supported for the given country + // code. + PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 8; + + // A carrier specific number in short format is not allowed for call + // extensions. + CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 9; + + // Premium rate numbers are not allowed for call extensions. + PREMIUM_RATE_NUMBER_NOT_ALLOWED = 10; + + // Phone number type for a call extension is not allowed. + // For example, personal number is not allowed for a call extension in + // most regions. + DISALLOWED_NUMBER_TYPE = 11; + + // Phone number for a call extension does not meet domestic format + // requirements. + INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 12; + + // Vanity phone numbers (i.e. those including letters) are not allowed for + // call extensions. + VANITY_PHONE_NUMBER_NOT_ALLOWED = 13; + + // Call conversion action provided for a call extension is invalid. + INVALID_CALL_CONVERSION_ACTION = 14; + + // For a call extension, the customer is not on the allow-list for call + // tracking. + CUSTOMER_NOT_ON_ALLOWLIST_FOR_CALLTRACKING = 47; + + // Call tracking is not supported for the given country for a call + // extension. + CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 16; + + // Customer hasn't consented for call recording, which is required for + // creating/updating call feed items. Please see + // https://support.google.com/google-ads/answer/7412639. + CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 17; + + // App id provided for an app extension is invalid. + INVALID_APP_ID = 18; + + // Quotation marks present in the review text for a review extension. + QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 19; + + // Hyphen character present in the review text for a review extension. + HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 20; + + // A denylisted review source name or url was provided for a review + // extension. + REVIEW_EXTENSION_SOURCE_INELIGIBLE = 21; + + // Review source name should not be found in the review text. + SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 22; + + // Inconsistent currency codes. + INCONSISTENT_CURRENCY_CODES = 23; + + // Price extension cannot have duplicated headers. + PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 24; + + // Price item cannot have duplicated header and description. + PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 25; + + // Price extension has too few items. + PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 26; + + // Price extension has too many items. + PRICE_EXTENSION_HAS_TOO_MANY_ITEMS = 27; + + // The input value is not currently supported. + UNSUPPORTED_VALUE = 28; + + // The input value is not currently supported in the selected language of an + // extension. + UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE = 29; + + // Unknown or unsupported device preference. + INVALID_DEVICE_PREFERENCE = 30; + + // Invalid feed item schedule end time (i.e., endHour = 24 and endMinute != + // 0). + INVALID_SCHEDULE_END = 31; + + // Date time zone does not match the account's time zone. + DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 32; + + // Invalid structured snippet header. + INVALID_SNIPPETS_HEADER = 33; + + // Cannot operate on removed feed item. + CANNOT_OPERATE_ON_REMOVED_FEED_ITEM = 34; + + // Phone number not supported when call tracking enabled for country. + PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 35; + + // Cannot set call_conversion_action while call_conversion_tracking_enabled + // is set to true. + CONFLICTING_CALL_CONVERSION_SETTINGS = 36; + + // The type of the input extension feed item doesn't match the existing + // extension feed item. + EXTENSION_TYPE_MISMATCH = 37; + + // The oneof field extension i.e. subtype of extension feed item is + // required. + EXTENSION_SUBTYPE_REQUIRED = 38; + + // The referenced feed item is not mapped to a supported extension type. + EXTENSION_TYPE_UNSUPPORTED = 39; + + // Cannot operate on a Feed with more than one active FeedMapping. + CANNOT_OPERATE_ON_FEED_WITH_MULTIPLE_MAPPINGS = 40; + + // Cannot operate on a Feed that has key attributes. + CANNOT_OPERATE_ON_FEED_WITH_KEY_ATTRIBUTES = 41; + + // Input price is not in a valid format. + INVALID_PRICE_FORMAT = 42; + + // The promotion time is invalid. + PROMOTION_INVALID_TIME = 43; + + // This field has too many decimal places specified. + TOO_MANY_DECIMAL_PLACES_SPECIFIED = 44; + + // Concrete sub type of ExtensionFeedItem is required for this operation. + CONCRETE_EXTENSION_TYPE_REQUIRED = 45; + + // Feed item schedule end time must be after start time. + SCHEDULE_END_NOT_AFTER_START = 46; + } + + +} diff --git a/google/ads/googleads/v9/errors/extension_setting_error.proto b/google/ads/googleads/v9/errors/extension_setting_error.proto new file mode 100644 index 000000000..caf8220b6 --- /dev/null +++ b/google/ads/googleads/v9/errors/extension_setting_error.proto @@ -0,0 +1,261 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionSettingErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing extension setting validation errors. + +// Container for enum describing validation errors of extension settings. +message ExtensionSettingErrorEnum { + // Enum describing possible extension setting errors. + enum ExtensionSettingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A platform restriction was provided without input extensions or existing + // extensions. + EXTENSIONS_REQUIRED = 2; + + // The provided feed type does not correspond to the provided extensions. + FEED_TYPE_EXTENSION_TYPE_MISMATCH = 3; + + // The provided feed type cannot be used. + INVALID_FEED_TYPE = 4; + + // The provided feed type cannot be used at the customer level. + INVALID_FEED_TYPE_FOR_CUSTOMER_EXTENSION_SETTING = 5; + + // Cannot change a feed item field on a CREATE operation. + CANNOT_CHANGE_FEED_ITEM_ON_CREATE = 6; + + // Cannot update an extension that is not already in this setting. + CANNOT_UPDATE_NEWLY_CREATED_EXTENSION = 7; + + // There is no existing AdGroupExtensionSetting for this type. + NO_EXISTING_AD_GROUP_EXTENSION_SETTING_FOR_TYPE = 8; + + // There is no existing CampaignExtensionSetting for this type. + NO_EXISTING_CAMPAIGN_EXTENSION_SETTING_FOR_TYPE = 9; + + // There is no existing CustomerExtensionSetting for this type. + NO_EXISTING_CUSTOMER_EXTENSION_SETTING_FOR_TYPE = 10; + + // The AdGroupExtensionSetting already exists. UPDATE should be used to + // modify the existing AdGroupExtensionSetting. + AD_GROUP_EXTENSION_SETTING_ALREADY_EXISTS = 11; + + // The CampaignExtensionSetting already exists. UPDATE should be used to + // modify the existing CampaignExtensionSetting. + CAMPAIGN_EXTENSION_SETTING_ALREADY_EXISTS = 12; + + // The CustomerExtensionSetting already exists. UPDATE should be used to + // modify the existing CustomerExtensionSetting. + CUSTOMER_EXTENSION_SETTING_ALREADY_EXISTS = 13; + + // An active ad group feed already exists for this place holder type. + AD_GROUP_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 14; + + // An active campaign feed already exists for this place holder type. + CAMPAIGN_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 15; + + // An active customer feed already exists for this place holder type. + CUSTOMER_FEED_ALREADY_EXISTS_FOR_PLACEHOLDER_TYPE = 16; + + // Value is not within the accepted range. + VALUE_OUT_OF_RANGE = 17; + + // Cannot simultaneously set specified field with final urls. + CANNOT_SET_FIELD_WITH_FINAL_URLS = 18; + + // Must set field with final urls. + FINAL_URLS_NOT_SET = 19; + + // Phone number for a call extension is invalid. + INVALID_PHONE_NUMBER = 20; + + // Phone number for a call extension is not supported for the given country + // code. + PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 21; + + // A carrier specific number in short format is not allowed for call + // extensions. + CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 22; + + // Premium rate numbers are not allowed for call extensions. + PREMIUM_RATE_NUMBER_NOT_ALLOWED = 23; + + // Phone number type for a call extension is not allowed. + DISALLOWED_NUMBER_TYPE = 24; + + // Phone number for a call extension does not meet domestic format + // requirements. + INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 25; + + // Vanity phone numbers (i.e. those including letters) are not allowed for + // call extensions. + VANITY_PHONE_NUMBER_NOT_ALLOWED = 26; + + // Country code provided for a call extension is invalid. + INVALID_COUNTRY_CODE = 27; + + // Call conversion type id provided for a call extension is invalid. + INVALID_CALL_CONVERSION_TYPE_ID = 28; + + // For a call extension, the customer is not on the allow-list for call + // tracking. + CUSTOMER_NOT_IN_ALLOWLIST_FOR_CALLTRACKING = 69; + + // Call tracking is not supported for the given country for a call + // extension. + CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 30; + + // App id provided for an app extension is invalid. + INVALID_APP_ID = 31; + + // Quotation marks present in the review text for a review extension. + QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 32; + + // Hyphen character present in the review text for a review extension. + HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 33; + + // A blocked review source name or url was provided for a review + // extension. + REVIEW_EXTENSION_SOURCE_NOT_ELIGIBLE = 34; + + // Review source name should not be found in the review text. + SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 35; + + // Field must be set. + MISSING_FIELD = 36; + + // Inconsistent currency codes. + INCONSISTENT_CURRENCY_CODES = 37; + + // Price extension cannot have duplicated headers. + PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 38; + + // Price item cannot have duplicated header and description. + PRICE_ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 39; + + // Price extension has too few items + PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 40; + + // Price extension has too many items + PRICE_EXTENSION_HAS_TOO_MANY_ITEMS = 41; + + // The input value is not currently supported. + UNSUPPORTED_VALUE = 42; + + // Unknown or unsupported device preference. + INVALID_DEVICE_PREFERENCE = 43; + + // Invalid feed item schedule end time (i.e., endHour = 24 and + // endMinute != 0). + INVALID_SCHEDULE_END = 45; + + // Date time zone does not match the account's time zone. + DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 47; + + // Overlapping feed item schedule times (e.g., 7-10AM and 8-11AM) are not + // allowed. + OVERLAPPING_SCHEDULES_NOT_ALLOWED = 48; + + // Feed item schedule end time must be after start time. + SCHEDULE_END_NOT_AFTER_START = 49; + + // There are too many feed item schedules per day. + TOO_MANY_SCHEDULES_PER_DAY = 50; + + // Cannot edit the same extension feed item more than once in the same + // request. + DUPLICATE_EXTENSION_FEED_ITEM_EDIT = 51; + + // Invalid structured snippet header. + INVALID_SNIPPETS_HEADER = 52; + + // Phone number with call tracking enabled is not supported for the + // specified country. + PHONE_NUMBER_NOT_SUPPORTED_WITH_CALLTRACKING_FOR_COUNTRY = 53; + + // The targeted adgroup must belong to the targeted campaign. + CAMPAIGN_TARGETING_MISMATCH = 54; + + // The feed used by the ExtensionSetting is removed and cannot be operated + // on. Remove the ExtensionSetting to allow a new one to be created using + // an active feed. + CANNOT_OPERATE_ON_REMOVED_FEED = 55; + + // The ExtensionFeedItem type is required for this operation. + EXTENSION_TYPE_REQUIRED = 56; + + // The matching function that links the extension feed to the customer, + // campaign, or ad group is not compatible with the ExtensionSetting + // services. + INCOMPATIBLE_UNDERLYING_MATCHING_FUNCTION = 57; + + // Start date must be before end date. + START_DATE_AFTER_END_DATE = 58; + + // Input price is not in a valid format. + INVALID_PRICE_FORMAT = 59; + + // The promotion time is invalid. + PROMOTION_INVALID_TIME = 60; + + // Cannot set both percent discount and money discount fields. + PROMOTION_CANNOT_SET_PERCENT_DISCOUNT_AND_MONEY_DISCOUNT = 61; + + // Cannot set both promotion code and orders over amount fields. + PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 62; + + // This field has too many decimal places specified. + TOO_MANY_DECIMAL_PLACES_SPECIFIED = 63; + + // The language code is not valid. + INVALID_LANGUAGE_CODE = 64; + + // The language is not supported. + UNSUPPORTED_LANGUAGE = 65; + + // Customer hasn't consented for call recording, which is required for + // adding/updating call extensions. Please see + // https://support.google.com/google-ads/answer/7412639. + CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 66; + + // The UPDATE operation does not specify any fields other than the resource + // name in the update mask. + EXTENSION_SETTING_UPDATE_IS_A_NOOP = 67; + + // The extension contains text which has been prohibited on policy grounds. + DISALLOWED_TEXT = 68; + } + + +} diff --git a/google/ads/googleads/v9/errors/feed_attribute_reference_error.proto b/google/ads/googleads/v9/errors/feed_attribute_reference_error.proto new file mode 100644 index 000000000..c07b8989d --- /dev/null +++ b/google/ads/googleads/v9/errors/feed_attribute_reference_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedAttributeReferenceErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing feed attribute reference errors. + +// Container for enum describing possible feed attribute reference errors. +message FeedAttributeReferenceErrorEnum { + // Enum describing possible feed attribute reference errors. + enum FeedAttributeReferenceError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A feed referenced by ID has been removed. + CANNOT_REFERENCE_REMOVED_FEED = 2; + + // There is no enabled feed with the given name. + INVALID_FEED_NAME = 3; + + // There is no feed attribute in an enabled feed with the given name. + INVALID_FEED_ATTRIBUTE_NAME = 4; + } + + +} diff --git a/google/ads/googleads/v9/errors/feed_error.proto b/google/ads/googleads/v9/errors/feed_error.proto new file mode 100644 index 000000000..b8d67cd35 --- /dev/null +++ b/google/ads/googleads/v9/errors/feed_error.proto @@ -0,0 +1,114 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing feed errors. + +// Container for enum describing possible feed errors. +message FeedErrorEnum { + // Enum describing possible feed errors. + enum FeedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The names of the FeedAttributes must be unique. + ATTRIBUTE_NAMES_NOT_UNIQUE = 2; + + // The attribute list must be an exact copy of the existing list if the + // attribute ID's are present. + ATTRIBUTES_DO_NOT_MATCH_EXISTING_ATTRIBUTES = 3; + + // Cannot specify USER origin for a system generated feed. + CANNOT_SPECIFY_USER_ORIGIN_FOR_SYSTEM_FEED = 4; + + // Cannot specify GOOGLE origin for a non-system generated feed. + CANNOT_SPECIFY_GOOGLE_ORIGIN_FOR_NON_SYSTEM_FEED = 5; + + // Cannot specify feed attributes for system feed. + CANNOT_SPECIFY_FEED_ATTRIBUTES_FOR_SYSTEM_FEED = 6; + + // Cannot update FeedAttributes on feed with origin GOOGLE. + CANNOT_UPDATE_FEED_ATTRIBUTES_WITH_ORIGIN_GOOGLE = 7; + + // The given ID refers to a removed Feed. Removed Feeds are immutable. + FEED_REMOVED = 8; + + // The origin of the feed is not valid for the client. + INVALID_ORIGIN_VALUE = 9; + + // A user can only create and modify feeds with USER origin. + FEED_ORIGIN_IS_NOT_USER = 10; + + // Invalid auth token for the given email. + INVALID_AUTH_TOKEN_FOR_EMAIL = 11; + + // Invalid email specified. + INVALID_EMAIL = 12; + + // Feed name matches that of another active Feed. + DUPLICATE_FEED_NAME = 13; + + // Name of feed is not allowed. + INVALID_FEED_NAME = 14; + + // Missing OAuthInfo. + MISSING_OAUTH_INFO = 15; + + // New FeedAttributes must not affect the unique key. + NEW_ATTRIBUTE_CANNOT_BE_PART_OF_UNIQUE_KEY = 16; + + // Too many FeedAttributes for a Feed. + TOO_MANY_ATTRIBUTES = 17; + + // The business account is not valid. + INVALID_BUSINESS_ACCOUNT = 18; + + // Business account cannot access Business Profile. + BUSINESS_ACCOUNT_CANNOT_ACCESS_LOCATION_ACCOUNT = 19; + + // Invalid chain ID provided for affiliate location feed. + INVALID_AFFILIATE_CHAIN_ID = 20; + + // There is already a feed with the given system feed generation data. + DUPLICATE_SYSTEM_FEED = 21; + + // An error occurred accessing Business Profile. + GMB_ACCESS_ERROR = 22; + + // A customer cannot have both LOCATION and AFFILIATE_LOCATION feeds. + CANNOT_HAVE_LOCATION_AND_AFFILIATE_LOCATION_FEEDS = 23; + + // Feed-based extension is read-only for this extension type. + LEGACY_EXTENSION_TYPE_READ_ONLY = 24; + } + + +} diff --git a/google/ads/googleads/v9/errors/feed_item_error.proto b/google/ads/googleads/v9/errors/feed_item_error.proto new file mode 100644 index 000000000..01ffbdffc --- /dev/null +++ b/google/ads/googleads/v9/errors/feed_item_error.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing feed item errors. + +// Container for enum describing possible feed item errors. +message FeedItemErrorEnum { + // Enum describing possible feed item errors. + enum FeedItemError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot convert the feed attribute value from string to its real type. + CANNOT_CONVERT_ATTRIBUTE_VALUE_FROM_STRING = 2; + + // Cannot operate on removed feed item. + CANNOT_OPERATE_ON_REMOVED_FEED_ITEM = 3; + + // Date time zone does not match the account's time zone. + DATE_TIME_MUST_BE_IN_ACCOUNT_TIME_ZONE = 4; + + // Feed item with the key attributes could not be found. + KEY_ATTRIBUTES_NOT_FOUND = 5; + + // Url feed attribute value is not valid. + INVALID_URL = 6; + + // Some key attributes are missing. + MISSING_KEY_ATTRIBUTES = 7; + + // Feed item has same key attributes as another feed item. + KEY_ATTRIBUTES_NOT_UNIQUE = 8; + + // Cannot modify key attributes on an existing feed item. + CANNOT_MODIFY_KEY_ATTRIBUTE_VALUE = 9; + + // The feed attribute value is too large. + SIZE_TOO_LARGE_FOR_MULTI_VALUE_ATTRIBUTE = 10; + } + + +} diff --git a/google/ads/googleads/v9/errors/feed_item_set_error.proto b/google/ads/googleads/v9/errors/feed_item_set_error.proto new file mode 100644 index 000000000..2a60ec46c --- /dev/null +++ b/google/ads/googleads/v9/errors/feed_item_set_error.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing feed item set errors. + +// Container for enum describing possible feed item set errors. +message FeedItemSetErrorEnum { + // Enum describing possible feed item set errors. + enum FeedItemSetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The given ID refers to a removed FeedItemSet. + FEED_ITEM_SET_REMOVED = 2; + + // The dynamic filter of a feed item set cannot be cleared on UPDATE if it + // exists. A set is either static or dynamic once added, and that cannot + // change. + CANNOT_CLEAR_DYNAMIC_FILTER = 3; + + // The dynamic filter of a feed item set cannot be created on UPDATE if it + // does not exist. A set is either static or dynamic once added, and that + // cannot change. + CANNOT_CREATE_DYNAMIC_FILTER = 4; + + // FeedItemSets can only be made for location or affiliate location feeds. + INVALID_FEED_TYPE = 5; + + // FeedItemSets duplicate name. Name should be unique within an account. + DUPLICATE_NAME = 6; + + // The feed type of the parent Feed is not compatible with the type of + // dynamic filter being set. For example, you can only set + // dynamic_location_set_filter for LOCATION feed item sets. + WRONG_DYNAMIC_FILTER_FOR_FEED_TYPE = 7; + + // Chain ID specified for AffiliateLocationFeedData is invalid. + DYNAMIC_FILTER_INVALID_CHAIN_IDS = 8; + } + + +} diff --git a/google/ads/googleads/v9/errors/feed_item_set_link_error.proto b/google/ads/googleads/v9/errors/feed_item_set_link_error.proto new file mode 100644 index 000000000..76e26c26d --- /dev/null +++ b/google/ads/googleads/v9/errors/feed_item_set_link_error.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetLinkErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing feed item set link errors. + +// Container for enum describing possible feed item set link errors. +message FeedItemSetLinkErrorEnum { + // Enum describing possible feed item set link errors. + enum FeedItemSetLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The feed IDs of the FeedItemSet and FeedItem do not match. Only FeedItems + // in a given Feed can be linked to a FeedItemSet in that Feed. + FEED_ID_MISMATCH = 2; + + // Cannot add or remove links to a dynamic set. + NO_MUTATE_ALLOWED_FOR_DYNAMIC_SET = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/feed_item_target_error.proto b/google/ads/googleads/v9/errors/feed_item_target_error.proto new file mode 100644 index 000000000..77188f214 --- /dev/null +++ b/google/ads/googleads/v9/errors/feed_item_target_error.proto @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing feed item target errors. + +// Container for enum describing possible feed item target errors. +message FeedItemTargetErrorEnum { + // Enum describing possible feed item target errors. + enum FeedItemTargetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // On CREATE, the FeedItemTarget must have a populated field in the oneof + // target. + MUST_SET_TARGET_ONEOF_ON_CREATE = 2; + + // The specified feed item target already exists, so it cannot be added. + FEED_ITEM_TARGET_ALREADY_EXISTS = 3; + + // The schedules for a given feed item cannot overlap. + FEED_ITEM_SCHEDULES_CANNOT_OVERLAP = 4; + + // Too many targets of a given type were added for a single feed item. + TARGET_LIMIT_EXCEEDED_FOR_GIVEN_TYPE = 5; + + // Too many AdSchedules are enabled for the feed item for the given day. + TOO_MANY_SCHEDULES_PER_DAY = 6; + + // A feed item may either have an enabled campaign target or an enabled ad + // group target. + CANNOT_HAVE_ENABLED_CAMPAIGN_AND_ENABLED_AD_GROUP_TARGETS = 7; + + // Duplicate ad schedules aren't allowed. + DUPLICATE_AD_SCHEDULE = 8; + + // Duplicate keywords aren't allowed. + DUPLICATE_KEYWORD = 9; + } + + +} diff --git a/google/ads/googleads/v9/errors/feed_item_validation_error.proto b/google/ads/googleads/v9/errors/feed_item_validation_error.proto new file mode 100644 index 000000000..135d9d277 --- /dev/null +++ b/google/ads/googleads/v9/errors/feed_item_validation_error.proto @@ -0,0 +1,377 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemValidationErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing feed item validation errors. + +// Container for enum describing possible validation errors of a feed item. +message FeedItemValidationErrorEnum { + // The possible validation errors of a feed item. + enum FeedItemValidationError { + // No value has been specified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // String is too short. + STRING_TOO_SHORT = 2; + + // String is too long. + STRING_TOO_LONG = 3; + + // Value is not provided. + VALUE_NOT_SPECIFIED = 4; + + // Phone number format is invalid for region. + INVALID_DOMESTIC_PHONE_NUMBER_FORMAT = 5; + + // String does not represent a phone number. + INVALID_PHONE_NUMBER = 6; + + // Phone number format is not compatible with country code. + PHONE_NUMBER_NOT_SUPPORTED_FOR_COUNTRY = 7; + + // Premium rate number is not allowed. + PREMIUM_RATE_NUMBER_NOT_ALLOWED = 8; + + // Phone number type is not allowed. + DISALLOWED_NUMBER_TYPE = 9; + + // Specified value is outside of the valid range. + VALUE_OUT_OF_RANGE = 10; + + // Call tracking is not supported in the selected country. + CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 11; + + // Customer is not on the allow-list for call tracking. + CUSTOMER_NOT_IN_ALLOWLIST_FOR_CALLTRACKING = 99; + + // Country code is invalid. + INVALID_COUNTRY_CODE = 13; + + // The specified mobile app id is invalid. + INVALID_APP_ID = 14; + + // Some required field attributes are missing. + MISSING_ATTRIBUTES_FOR_FIELDS = 15; + + // Invalid email button type for email extension. + INVALID_TYPE_ID = 16; + + // Email address is invalid. + INVALID_EMAIL_ADDRESS = 17; + + // The HTTPS URL in email extension is invalid. + INVALID_HTTPS_URL = 18; + + // Delivery address is missing from email extension. + MISSING_DELIVERY_ADDRESS = 19; + + // FeedItem scheduling start date comes after end date. + START_DATE_AFTER_END_DATE = 20; + + // FeedItem scheduling start time is missing. + MISSING_FEED_ITEM_START_TIME = 21; + + // FeedItem scheduling end time is missing. + MISSING_FEED_ITEM_END_TIME = 22; + + // Cannot compute system attributes on a FeedItem that has no FeedItemId. + MISSING_FEED_ITEM_ID = 23; + + // Call extension vanity phone numbers are not supported. + VANITY_PHONE_NUMBER_NOT_ALLOWED = 24; + + // Invalid review text. + INVALID_REVIEW_EXTENSION_SNIPPET = 25; + + // Invalid format for numeric value in ad parameter. + INVALID_NUMBER_FORMAT = 26; + + // Invalid format for date value in ad parameter. + INVALID_DATE_FORMAT = 27; + + // Invalid format for price value in ad parameter. + INVALID_PRICE_FORMAT = 28; + + // Unrecognized type given for value in ad parameter. + UNKNOWN_PLACEHOLDER_FIELD = 29; + + // Enhanced sitelinks must have both description lines specified. + MISSING_ENHANCED_SITELINK_DESCRIPTION_LINE = 30; + + // Review source is ineligible. + REVIEW_EXTENSION_SOURCE_INELIGIBLE = 31; + + // Review text cannot contain hyphens or dashes. + HYPHENS_IN_REVIEW_EXTENSION_SNIPPET = 32; + + // Review text cannot contain double quote characters. + DOUBLE_QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 33; + + // Review text cannot contain quote characters. + QUOTES_IN_REVIEW_EXTENSION_SNIPPET = 34; + + // Parameters are encoded in the wrong format. + INVALID_FORM_ENCODED_PARAMS = 35; + + // URL parameter name must contain only letters, numbers, underscores, and + // dashes. + INVALID_URL_PARAMETER_NAME = 36; + + // Cannot find address location. + NO_GEOCODING_RESULT = 37; + + // Review extension text has source name. + SOURCE_NAME_IN_REVIEW_EXTENSION_TEXT = 38; + + // Some phone numbers can be shorter than usual. Some of these short numbers + // are carrier-specific, and we disallow those in ad extensions because they + // will not be available to all users. + CARRIER_SPECIFIC_SHORT_NUMBER_NOT_ALLOWED = 39; + + // Triggered when a request references a placeholder field id that does not + // exist. + INVALID_PLACEHOLDER_FIELD_ID = 40; + + // URL contains invalid ValueTrack tags or format. + INVALID_URL_TAG = 41; + + // Provided list exceeds acceptable size. + LIST_TOO_LONG = 42; + + // Certain combinations of attributes aren't allowed to be specified in the + // same feed item. + INVALID_ATTRIBUTES_COMBINATION = 43; + + // An attribute has the same value repeatedly. + DUPLICATE_VALUES = 44; + + // Advertisers can link a conversion action with a phone number to indicate + // that sufficiently long calls forwarded to that phone number should be + // counted as conversions of the specified type. This is an error message + // indicating that the conversion action specified is invalid (e.g., the + // conversion action does not exist within the appropriate Google Ads + // account, or it is a type of conversion not appropriate to phone call + // conversions). + INVALID_CALL_CONVERSION_ACTION_ID = 45; + + // Tracking template requires final url to be set. + CANNOT_SET_WITHOUT_FINAL_URLS = 46; + + // An app id was provided that doesn't exist in the given app store. + APP_ID_DOESNT_EXIST_IN_APP_STORE = 47; + + // Invalid U2 final url. + INVALID_FINAL_URL = 48; + + // Invalid U2 tracking url. + INVALID_TRACKING_URL = 49; + + // Final URL should start from App download URL. + INVALID_FINAL_URL_FOR_APP_DOWNLOAD_URL = 50; + + // List provided is too short. + LIST_TOO_SHORT = 51; + + // User Action field has invalid value. + INVALID_USER_ACTION = 52; + + // Type field has invalid value. + INVALID_TYPE_NAME = 53; + + // Change status for event is invalid. + INVALID_EVENT_CHANGE_STATUS = 54; + + // The header of a structured snippets extension is not one of the valid + // headers. + INVALID_SNIPPETS_HEADER = 55; + + // Android app link is not formatted correctly + INVALID_ANDROID_APP_LINK = 56; + + // Phone number incompatible with call tracking for country. + NUMBER_TYPE_WITH_CALLTRACKING_NOT_SUPPORTED_FOR_COUNTRY = 57; + + // The input is identical to a reserved keyword + RESERVED_KEYWORD_OTHER = 58; + + // Each option label in the message extension must be unique. + DUPLICATE_OPTION_LABELS = 59; + + // Each option prefill in the message extension must be unique. + DUPLICATE_OPTION_PREFILLS = 60; + + // In message extensions, the number of optional labels and optional + // prefills must be the same. + UNEQUAL_LIST_LENGTHS = 61; + + // All currency codes in an ad extension must be the same. + INCONSISTENT_CURRENCY_CODES = 62; + + // Headers in price extension are not unique. + PRICE_EXTENSION_HAS_DUPLICATED_HEADERS = 63; + + // Header and description in an item are the same. + ITEM_HAS_DUPLICATED_HEADER_AND_DESCRIPTION = 64; + + // Price extension has too few items. + PRICE_EXTENSION_HAS_TOO_FEW_ITEMS = 65; + + // The given value is not supported. + UNSUPPORTED_VALUE = 66; + + // Invalid final mobile url. + INVALID_FINAL_MOBILE_URL = 67; + + // The given string value of Label contains invalid characters + INVALID_KEYWORDLESS_AD_RULE_LABEL = 68; + + // The given URL contains value track parameters. + VALUE_TRACK_PARAMETER_NOT_SUPPORTED = 69; + + // The given value is not supported in the selected language of an + // extension. + UNSUPPORTED_VALUE_IN_SELECTED_LANGUAGE = 70; + + // The iOS app link is not formatted correctly. + INVALID_IOS_APP_LINK = 71; + + // iOS app link or iOS app store id is missing. + MISSING_IOS_APP_LINK_OR_IOS_APP_STORE_ID = 72; + + // Promotion time is invalid. + PROMOTION_INVALID_TIME = 73; + + // Both the percent off and money amount off fields are set. + PROMOTION_CANNOT_SET_PERCENT_OFF_AND_MONEY_AMOUNT_OFF = 74; + + // Both the promotion code and orders over amount fields are set. + PROMOTION_CANNOT_SET_PROMOTION_CODE_AND_ORDERS_OVER_AMOUNT = 75; + + // Too many decimal places are specified. + TOO_MANY_DECIMAL_PLACES_SPECIFIED = 76; + + // Ad Customizers are present and not allowed. + AD_CUSTOMIZERS_NOT_ALLOWED = 77; + + // Language code is not valid. + INVALID_LANGUAGE_CODE = 78; + + // Language is not supported. + UNSUPPORTED_LANGUAGE = 79; + + // IF Function is present and not allowed. + IF_FUNCTION_NOT_ALLOWED = 80; + + // Final url suffix is not valid. + INVALID_FINAL_URL_SUFFIX = 81; + + // Final url suffix contains an invalid tag. + INVALID_TAG_IN_FINAL_URL_SUFFIX = 82; + + // Final url suffix is formatted incorrectly. + INVALID_FINAL_URL_SUFFIX_FORMAT = 83; + + // Consent for call recording, which is required for the use of call + // extensions, was not provided by the advertiser. Please see + // https://support.google.com/google-ads/answer/7412639. + CUSTOMER_CONSENT_FOR_CALL_RECORDING_REQUIRED = 84; + + // Multiple message delivery options are set. + ONLY_ONE_DELIVERY_OPTION_IS_ALLOWED = 85; + + // No message delivery option is set. + NO_DELIVERY_OPTION_IS_SET = 86; + + // String value of conversion reporting state field is not valid. + INVALID_CONVERSION_REPORTING_STATE = 87; + + // Image size is not right. + IMAGE_SIZE_WRONG = 88; + + // Email delivery is not supported in the country specified in the country + // code field. + EMAIL_DELIVERY_NOT_AVAILABLE_IN_COUNTRY = 89; + + // Auto reply is not supported in the country specified in the country code + // field. + AUTO_REPLY_NOT_AVAILABLE_IN_COUNTRY = 90; + + // Invalid value specified for latitude. + INVALID_LATITUDE_VALUE = 91; + + // Invalid value specified for longitude. + INVALID_LONGITUDE_VALUE = 92; + + // Too many label fields provided. + TOO_MANY_LABELS = 93; + + // Invalid image url. + INVALID_IMAGE_URL = 94; + + // Latitude value is missing. + MISSING_LATITUDE_VALUE = 95; + + // Longitude value is missing. + MISSING_LONGITUDE_VALUE = 96; + + // Unable to find address. + ADDRESS_NOT_FOUND = 97; + + // Cannot target provided address. + ADDRESS_NOT_TARGETABLE = 98; + + // The specified asset ID does not exist. + INVALID_ASSET_ID = 100; + + // The asset type cannot be set for the field. + INCOMPATIBLE_ASSET_TYPE = 101; + + // The image has unexpected size. + IMAGE_ERROR_UNEXPECTED_SIZE = 102; + + // The image aspect ratio is not allowed. + IMAGE_ERROR_ASPECT_RATIO_NOT_ALLOWED = 103; + + // The image file is too large. + IMAGE_ERROR_FILE_TOO_LARGE = 104; + + // The image format is unsupported. + IMAGE_ERROR_FORMAT_NOT_ALLOWED = 105; + + // Image violates constraints without more details. + IMAGE_ERROR_CONSTRAINTS_VIOLATED = 106; + + // An error occurred when validating image. + IMAGE_ERROR_SERVER_ERROR = 107; + } + + +} diff --git a/google/ads/googleads/v9/errors/feed_mapping_error.proto b/google/ads/googleads/v9/errors/feed_mapping_error.proto new file mode 100644 index 000000000..44e5834b8 --- /dev/null +++ b/google/ads/googleads/v9/errors/feed_mapping_error.proto @@ -0,0 +1,100 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FeedMappingErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing feed item errors. + +// Container for enum describing possible feed item errors. +message FeedMappingErrorEnum { + // Enum describing possible feed item errors. + enum FeedMappingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The given placeholder field does not exist. + INVALID_PLACEHOLDER_FIELD = 2; + + // The given criterion field does not exist. + INVALID_CRITERION_FIELD = 3; + + // The given placeholder type does not exist. + INVALID_PLACEHOLDER_TYPE = 4; + + // The given criterion type does not exist. + INVALID_CRITERION_TYPE = 5; + + // A feed mapping must contain at least one attribute field mapping. + NO_ATTRIBUTE_FIELD_MAPPINGS = 7; + + // The type of the feed attribute referenced in the attribute field mapping + // must match the type of the placeholder field. + FEED_ATTRIBUTE_TYPE_MISMATCH = 8; + + // A feed mapping for a system generated feed cannot be operated on. + CANNOT_OPERATE_ON_MAPPINGS_FOR_SYSTEM_GENERATED_FEED = 9; + + // Only one feed mapping for a placeholder type is allowed per feed or + // customer (depending on the placeholder type). + MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_TYPE = 10; + + // Only one feed mapping for a criterion type is allowed per customer. + MULTIPLE_MAPPINGS_FOR_CRITERION_TYPE = 11; + + // Only one feed attribute mapping for a placeholder field is allowed + // (depending on the placeholder type). + MULTIPLE_MAPPINGS_FOR_PLACEHOLDER_FIELD = 12; + + // Only one feed attribute mapping for a criterion field is allowed + // (depending on the criterion type). + MULTIPLE_MAPPINGS_FOR_CRITERION_FIELD = 13; + + // This feed mapping may not contain any explicit attribute field mappings. + UNEXPECTED_ATTRIBUTE_FIELD_MAPPINGS = 14; + + // Location placeholder feed mappings can only be created for Places feeds. + LOCATION_PLACEHOLDER_ONLY_FOR_PLACES_FEEDS = 15; + + // Mappings for typed feeds cannot be modified. + CANNOT_MODIFY_MAPPINGS_FOR_TYPED_FEED = 16; + + // The given placeholder type can only be mapped to system generated feeds. + INVALID_PLACEHOLDER_TYPE_FOR_NON_SYSTEM_GENERATED_FEED = 17; + + // The given placeholder type cannot be mapped to a system generated feed + // with the given type. + INVALID_PLACEHOLDER_TYPE_FOR_SYSTEM_GENERATED_FEED_TYPE = 18; + + // The "field" oneof was not set in an AttributeFieldMapping. + ATTRIBUTE_FIELD_MAPPING_MISSING_FIELD = 19; + } + + +} diff --git a/google/ads/googleads/v9/errors/field_error.proto b/google/ads/googleads/v9/errors/field_error.proto new file mode 100644 index 000000000..36ad3b5e5 --- /dev/null +++ b/google/ads/googleads/v9/errors/field_error.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FieldErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing field errors. + +// Container for enum describing possible field errors. +message FieldErrorEnum { + // Enum describing possible field errors. + enum FieldError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The required field was not present. + REQUIRED = 2; + + // The field attempted to be mutated is immutable. + IMMUTABLE_FIELD = 3; + + // The field's value is invalid. + INVALID_VALUE = 4; + + // The field cannot be set. + VALUE_MUST_BE_UNSET = 5; + + // The required repeated field was empty. + REQUIRED_NONEMPTY_LIST = 6; + + // The field cannot be cleared. + FIELD_CANNOT_BE_CLEARED = 7; + + // The field's value is on a deny-list for this field. + BLOCKED_VALUE = 9; + } + + +} diff --git a/google/ads/googleads/v9/errors/field_mask_error.proto b/google/ads/googleads/v9/errors/field_mask_error.proto new file mode 100644 index 000000000..218708ff9 --- /dev/null +++ b/google/ads/googleads/v9/errors/field_mask_error.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FieldMaskErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing field mask errors. + +// Container for enum describing possible field mask errors. +message FieldMaskErrorEnum { + // Enum describing possible field mask errors. + enum FieldMaskError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The field mask must be provided for update operations. + FIELD_MASK_MISSING = 5; + + // The field mask must be empty for create and remove operations. + FIELD_MASK_NOT_ALLOWED = 4; + + // The field mask contained an invalid field. + FIELD_NOT_FOUND = 2; + + // The field mask updated a field with subfields. Fields with subfields may + // be cleared, but not updated. To fix this, the field mask should select + // all the subfields of the invalid field. + FIELD_HAS_SUBFIELDS = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/function_error.proto b/google/ads/googleads/v9/errors/function_error.proto new file mode 100644 index 000000000..01d909832 --- /dev/null +++ b/google/ads/googleads/v9/errors/function_error.proto @@ -0,0 +1,93 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FunctionErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing function errors. + +// Container for enum describing possible function errors. +message FunctionErrorEnum { + // Enum describing possible function errors. + enum FunctionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The format of the function is not recognized as a supported function + // format. + INVALID_FUNCTION_FORMAT = 2; + + // Operand data types do not match. + DATA_TYPE_MISMATCH = 3; + + // The operands cannot be used together in a conjunction. + INVALID_CONJUNCTION_OPERANDS = 4; + + // Invalid numer of Operands. + INVALID_NUMBER_OF_OPERANDS = 5; + + // Operand Type not supported. + INVALID_OPERAND_TYPE = 6; + + // Operator not supported. + INVALID_OPERATOR = 7; + + // Request context type not supported. + INVALID_REQUEST_CONTEXT_TYPE = 8; + + // The matching function is not allowed for call placeholders + INVALID_FUNCTION_FOR_CALL_PLACEHOLDER = 9; + + // The matching function is not allowed for the specified placeholder + INVALID_FUNCTION_FOR_PLACEHOLDER = 10; + + // Invalid operand. + INVALID_OPERAND = 11; + + // Missing value for the constant operand. + MISSING_CONSTANT_OPERAND_VALUE = 12; + + // The value of the constant operand is invalid. + INVALID_CONSTANT_OPERAND_VALUE = 13; + + // Invalid function nesting. + INVALID_NESTING = 14; + + // The Feed ID was different from another Feed ID in the same function. + MULTIPLE_FEED_IDS_NOT_SUPPORTED = 15; + + // The matching function is invalid for use with a feed with a fixed schema. + INVALID_FUNCTION_FOR_FEED_WITH_FIXED_SCHEMA = 16; + + // Invalid attribute name. + INVALID_ATTRIBUTE_NAME = 17; + } + + +} diff --git a/google/ads/googleads/v9/errors/function_parsing_error.proto b/google/ads/googleads/v9/errors/function_parsing_error.proto new file mode 100644 index 000000000..0e48eec6f --- /dev/null +++ b/google/ads/googleads/v9/errors/function_parsing_error.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "FunctionParsingErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing function parsing errors. + +// Container for enum describing possible function parsing errors. +message FunctionParsingErrorEnum { + // Enum describing possible function parsing errors. + enum FunctionParsingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Unexpected end of function string. + NO_MORE_INPUT = 2; + + // Could not find an expected character. + EXPECTED_CHARACTER = 3; + + // Unexpected separator character. + UNEXPECTED_SEPARATOR = 4; + + // Unmatched left bracket or parenthesis. + UNMATCHED_LEFT_BRACKET = 5; + + // Unmatched right bracket or parenthesis. + UNMATCHED_RIGHT_BRACKET = 6; + + // Functions are nested too deeply. + TOO_MANY_NESTED_FUNCTIONS = 7; + + // Missing right-hand-side operand. + MISSING_RIGHT_HAND_OPERAND = 8; + + // Invalid operator/function name. + INVALID_OPERATOR_NAME = 9; + + // Feed attribute operand's argument is not an integer. + FEED_ATTRIBUTE_OPERAND_ARGUMENT_NOT_INTEGER = 10; + + // Missing function operands. + NO_OPERANDS = 11; + + // Function had too many operands. + TOO_MANY_OPERANDS = 12; + } + + +} diff --git a/google/ads/googleads/v9/errors/geo_target_constant_suggestion_error.proto b/google/ads/googleads/v9/errors/geo_target_constant_suggestion_error.proto new file mode 100644 index 000000000..7ece814bc --- /dev/null +++ b/google/ads/googleads/v9/errors/geo_target_constant_suggestion_error.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetConstantSuggestionErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Container for enum describing possible geo target constant suggestion errors. +message GeoTargetConstantSuggestionErrorEnum { + // Enum describing possible geo target constant suggestion errors. + enum GeoTargetConstantSuggestionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A location name cannot be greater than 300 characters. + LOCATION_NAME_SIZE_LIMIT = 2; + + // At most 25 location names can be specified in a SuggestGeoTargetConstants + // method. + LOCATION_NAME_LIMIT = 3; + + // The country code is invalid. + INVALID_COUNTRY_CODE = 4; + + // Geo target constant resource names or location names must be provided in + // the request. + REQUEST_PARAMETERS_UNSET = 5; + } + + +} diff --git a/google/ads/googleads/v9/errors/header_error.proto b/google/ads/googleads/v9/errors/header_error.proto new file mode 100644 index 000000000..b02d10148 --- /dev/null +++ b/google/ads/googleads/v9/errors/header_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "HeaderErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing header errors. + +// Container for enum describing possible header errors. +message HeaderErrorEnum { + // Enum describing possible header errors. + enum HeaderError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The login customer ID could not be validated. + INVALID_LOGIN_CUSTOMER_ID = 3; + + // The linked customer ID could not be validated. + INVALID_LINKED_CUSTOMER_ID = 7; + } + + +} diff --git a/google/ads/googleads/v9/errors/id_error.proto b/google/ads/googleads/v9/errors/id_error.proto new file mode 100644 index 000000000..2a528913d --- /dev/null +++ b/google/ads/googleads/v9/errors/id_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "IdErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing id errors. + +// Container for enum describing possible id errors. +message IdErrorEnum { + // Enum describing possible id errors. + enum IdError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Id not found + NOT_FOUND = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/image_error.proto b/google/ads/googleads/v9/errors/image_error.proto new file mode 100644 index 000000000..e27011416 --- /dev/null +++ b/google/ads/googleads/v9/errors/image_error.proto @@ -0,0 +1,164 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ImageErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing image errors. + +// Container for enum describing possible image errors. +message ImageErrorEnum { + // Enum describing possible image errors. + enum ImageError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The image is not valid. + INVALID_IMAGE = 2; + + // The image could not be stored. + STORAGE_ERROR = 3; + + // There was a problem with the request. + BAD_REQUEST = 4; + + // The image is not of legal dimensions. + UNEXPECTED_SIZE = 5; + + // Animated image are not permitted. + ANIMATED_NOT_ALLOWED = 6; + + // Animation is too long. + ANIMATION_TOO_LONG = 7; + + // There was an error on the server. + SERVER_ERROR = 8; + + // Image cannot be in CMYK color format. + CMYK_JPEG_NOT_ALLOWED = 9; + + // Flash images are not permitted. + FLASH_NOT_ALLOWED = 10; + + // Flash images must support clickTag. + FLASH_WITHOUT_CLICKTAG = 11; + + // A flash error has occurred after fixing the click tag. + FLASH_ERROR_AFTER_FIXING_CLICK_TAG = 12; + + // Unacceptable visual effects. + ANIMATED_VISUAL_EFFECT = 13; + + // There was a problem with the flash image. + FLASH_ERROR = 14; + + // Incorrect image layout. + LAYOUT_PROBLEM = 15; + + // There was a problem reading the image file. + PROBLEM_READING_IMAGE_FILE = 16; + + // There was an error storing the image. + ERROR_STORING_IMAGE = 17; + + // The aspect ratio of the image is not allowed. + ASPECT_RATIO_NOT_ALLOWED = 18; + + // Flash cannot have network objects. + FLASH_HAS_NETWORK_OBJECTS = 19; + + // Flash cannot have network methods. + FLASH_HAS_NETWORK_METHODS = 20; + + // Flash cannot have a Url. + FLASH_HAS_URL = 21; + + // Flash cannot use mouse tracking. + FLASH_HAS_MOUSE_TRACKING = 22; + + // Flash cannot have a random number. + FLASH_HAS_RANDOM_NUM = 23; + + // Ad click target cannot be '_self'. + FLASH_SELF_TARGETS = 24; + + // GetUrl method should only use '_blank'. + FLASH_BAD_GETURL_TARGET = 25; + + // Flash version is not supported. + FLASH_VERSION_NOT_SUPPORTED = 26; + + // Flash movies need to have hard coded click URL or clickTAG + FLASH_WITHOUT_HARD_CODED_CLICK_URL = 27; + + // Uploaded flash file is corrupted. + INVALID_FLASH_FILE = 28; + + // Uploaded flash file can be parsed, but the click tag can not be fixed + // properly. + FAILED_TO_FIX_CLICK_TAG_IN_FLASH = 29; + + // Flash movie accesses network resources + FLASH_ACCESSES_NETWORK_RESOURCES = 30; + + // Flash movie attempts to call external javascript code + FLASH_EXTERNAL_JS_CALL = 31; + + // Flash movie attempts to call flash system commands + FLASH_EXTERNAL_FS_CALL = 32; + + // Image file is too large. + FILE_TOO_LARGE = 33; + + // Image data is too large. + IMAGE_DATA_TOO_LARGE = 34; + + // Error while processing the image. + IMAGE_PROCESSING_ERROR = 35; + + // Image is too small. + IMAGE_TOO_SMALL = 36; + + // Input was invalid. + INVALID_INPUT = 37; + + // There was a problem reading the image file. + PROBLEM_READING_FILE = 38; + + // Image constraints are violated, but details like ASPECT_RATIO_NOT_ALLOWED + // can't be provided. This happens when asset spec contains more than one + // constraint and different criteria of different constraints are violated. + IMAGE_CONSTRAINTS_VIOLATED = 39; + + // Image format is not allowed. + FORMAT_NOT_ALLOWED = 40; + } + + +} diff --git a/google/ads/googleads/v9/errors/internal_error.proto b/google/ads/googleads/v9/errors/internal_error.proto new file mode 100644 index 000000000..3018ec60d --- /dev/null +++ b/google/ads/googleads/v9/errors/internal_error.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "InternalErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing internal errors. + +// Container for enum describing possible internal errors. +message InternalErrorEnum { + // Enum describing possible internal errors. + enum InternalError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Google Ads API encountered unexpected internal error. + INTERNAL_ERROR = 2; + + // The intended error code doesn't exist in specified API version. It will + // be released in a future API version. + ERROR_CODE_NOT_PUBLISHED = 3; + + // Google Ads API encountered an unexpected transient error. The user + // should retry their request in these cases. + TRANSIENT_ERROR = 4; + + // The request took longer than a deadline. + DEADLINE_EXCEEDED = 5; + } + + +} diff --git a/google/ads/googleads/v9/errors/invoice_error.proto b/google/ads/googleads/v9/errors/invoice_error.proto new file mode 100644 index 000000000..9d5dcf29e --- /dev/null +++ b/google/ads/googleads/v9/errors/invoice_error.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "InvoiceErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing invoice errors. + +// Container for enum describing possible invoice errors. +message InvoiceErrorEnum { + // Enum describing possible invoice errors. + enum InvoiceError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot request invoices issued before 2019-01-01. + YEAR_MONTH_TOO_OLD = 2; + + // Cannot request invoices for customer who doesn't receive invoices. + NOT_INVOICED_CUSTOMER = 3; + + // Cannot request invoices for a non approved billing setup. + BILLING_SETUP_NOT_APPROVED = 4; + + // Cannot request invoices for a billing setup that is not on monthly + // invoicing. + BILLING_SETUP_NOT_ON_MONTHLY_INVOICING = 5; + + // Cannot request invoices for a non serving customer. + NON_SERVING_CUSTOMER = 6; + } + + +} diff --git a/google/ads/googleads/v9/errors/keyword_plan_ad_group_error.proto b/google/ads/googleads/v9/errors/keyword_plan_ad_group_error.proto new file mode 100644 index 000000000..29cd9fbca --- /dev/null +++ b/google/ads/googleads/v9/errors/keyword_plan_ad_group_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing errors from applying a keyword plan ad group. + +// Container for enum describing possible errors from applying a keyword plan +// ad group. +message KeywordPlanAdGroupErrorEnum { + // Enum describing possible errors from applying a keyword plan ad group. + enum KeywordPlanAdGroupError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The keyword plan ad group name is missing, empty, longer than allowed + // limit or contains invalid chars. + INVALID_NAME = 2; + + // The keyword plan ad group name is duplicate to an existing keyword plan + // AdGroup name or other keyword plan AdGroup name in the request. + DUPLICATE_NAME = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/keyword_plan_ad_group_keyword_error.proto b/google/ads/googleads/v9/errors/keyword_plan_ad_group_keyword_error.proto new file mode 100644 index 000000000..e13a35616 --- /dev/null +++ b/google/ads/googleads/v9/errors/keyword_plan_ad_group_keyword_error.proto @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupKeywordErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing errors from applying a keyword plan ad group keyword or +// keyword plan campaign keyword. + +// Container for enum describing possible errors from applying an ad group +// keyword or a campaign keyword from a keyword plan. +message KeywordPlanAdGroupKeywordErrorEnum { + // Enum describing possible errors from applying a keyword plan ad group + // keyword or keyword plan campaign keyword. + enum KeywordPlanAdGroupKeywordError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A keyword or negative keyword has invalid match type. + INVALID_KEYWORD_MATCH_TYPE = 2; + + // A keyword or negative keyword with same text and match type already + // exists. + DUPLICATE_KEYWORD = 3; + + // Keyword or negative keyword text exceeds the allowed limit. + KEYWORD_TEXT_TOO_LONG = 4; + + // Keyword or negative keyword text has invalid characters or symbols. + KEYWORD_HAS_INVALID_CHARS = 5; + + // Keyword or negative keyword text has too many words. + KEYWORD_HAS_TOO_MANY_WORDS = 6; + + // Keyword or negative keyword has invalid text. + INVALID_KEYWORD_TEXT = 7; + + // Cpc Bid set for negative keyword. + NEGATIVE_KEYWORD_HAS_CPC_BID = 8; + + // New broad match modifier (BMM) KpAdGroupKeywords are not allowed. + NEW_BMM_KEYWORDS_NOT_ALLOWED = 9; + } + + +} diff --git a/google/ads/googleads/v9/errors/keyword_plan_campaign_error.proto b/google/ads/googleads/v9/errors/keyword_plan_campaign_error.proto new file mode 100644 index 000000000..21ed4ac6b --- /dev/null +++ b/google/ads/googleads/v9/errors/keyword_plan_campaign_error.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing errors from applying a keyword plan campaign. + +// Container for enum describing possible errors from applying a keyword plan +// campaign. +message KeywordPlanCampaignErrorEnum { + // Enum describing possible errors from applying a keyword plan campaign. + enum KeywordPlanCampaignError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A keyword plan campaign name is missing, empty, longer than allowed limit + // or contains invalid chars. + INVALID_NAME = 2; + + // A keyword plan campaign contains one or more untargetable languages. + INVALID_LANGUAGES = 3; + + // A keyword plan campaign contains one or more invalid geo targets. + INVALID_GEOS = 4; + + // The keyword plan campaign name is duplicate to an existing keyword plan + // campaign name or other keyword plan campaign name in the request. + DUPLICATE_NAME = 5; + + // The number of geo targets in the keyword plan campaign exceeds limits. + MAX_GEOS_EXCEEDED = 6; + + // The number of languages in the keyword plan campaign exceeds limits. + MAX_LANGUAGES_EXCEEDED = 7; + } + + +} diff --git a/google/ads/googleads/v9/errors/keyword_plan_campaign_keyword_error.proto b/google/ads/googleads/v9/errors/keyword_plan_campaign_keyword_error.proto new file mode 100644 index 000000000..a4759e2c3 --- /dev/null +++ b/google/ads/googleads/v9/errors/keyword_plan_campaign_keyword_error.proto @@ -0,0 +1,49 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignKeywordErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing errors from applying a keyword plan campaign keyword. + +// Container for enum describing possible errors from applying a keyword plan +// campaign keyword. +message KeywordPlanCampaignKeywordErrorEnum { + // Enum describing possible errors from applying a keyword plan campaign + // keyword. + enum KeywordPlanCampaignKeywordError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Keyword plan campaign keyword is positive. + CAMPAIGN_KEYWORD_IS_POSITIVE = 8; + } + + +} diff --git a/google/ads/googleads/v9/errors/keyword_plan_error.proto b/google/ads/googleads/v9/errors/keyword_plan_error.proto new file mode 100644 index 000000000..7706490cc --- /dev/null +++ b/google/ads/googleads/v9/errors/keyword_plan_error.proto @@ -0,0 +1,91 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing errors from applying keyword plan resources (keyword +// plan, keyword plan campaign, keyword plan ad group or keyword plan keyword) +// or KeywordPlanService RPC. + +// Container for enum describing possible errors from applying a keyword plan +// resource (keyword plan, keyword plan campaign, keyword plan ad group or +// keyword plan keyword) or KeywordPlanService RPC. +message KeywordPlanErrorEnum { + // Enum describing possible errors from applying a keyword plan. + enum KeywordPlanError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The plan's bid multiplier value is outside the valid range. + BID_MULTIPLIER_OUT_OF_RANGE = 2; + + // The plan's bid value is too high. + BID_TOO_HIGH = 3; + + // The plan's bid value is too low. + BID_TOO_LOW = 4; + + // The plan's cpc bid is not a multiple of the minimum billable unit. + BID_TOO_MANY_FRACTIONAL_DIGITS = 5; + + // The plan's daily budget value is too low. + DAILY_BUDGET_TOO_LOW = 6; + + // The plan's daily budget is not a multiple of the minimum billable unit. + DAILY_BUDGET_TOO_MANY_FRACTIONAL_DIGITS = 7; + + // The input has an invalid value. + INVALID_VALUE = 8; + + // The plan has no keyword. + KEYWORD_PLAN_HAS_NO_KEYWORDS = 9; + + // The plan is not enabled and API cannot provide mutation, forecast or + // stats. + KEYWORD_PLAN_NOT_ENABLED = 10; + + // The requested plan cannot be found for providing forecast or stats. + KEYWORD_PLAN_NOT_FOUND = 11; + + // The plan is missing a cpc bid. + MISSING_BID = 13; + + // The plan is missing required forecast_period field. + MISSING_FORECAST_PERIOD = 14; + + // The plan's forecast_period has invalid forecast date range. + INVALID_FORECAST_DATE_RANGE = 15; + + // The plan's name is invalid. + INVALID_NAME = 16; + } + + +} diff --git a/google/ads/googleads/v9/errors/keyword_plan_idea_error.proto b/google/ads/googleads/v9/errors/keyword_plan_idea_error.proto new file mode 100644 index 000000000..be00b8b00 --- /dev/null +++ b/google/ads/googleads/v9/errors/keyword_plan_idea_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanIdeaErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing errors from KeywordPlanIdeaService. + +// Container for enum describing possible errors from KeywordPlanIdeaService. +message KeywordPlanIdeaErrorEnum { + // Enum describing possible errors from KeywordPlanIdeaService. + enum KeywordPlanIdeaError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Error when crawling the input URL. + URL_CRAWL_ERROR = 2; + + // The input has an invalid value. + INVALID_VALUE = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/label_error.proto b/google/ads/googleads/v9/errors/label_error.proto new file mode 100644 index 000000000..4c7b6be06 --- /dev/null +++ b/google/ads/googleads/v9/errors/label_error.proto @@ -0,0 +1,73 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "LabelErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing label errors. + +// Container for enum describing possible label errors. +message LabelErrorEnum { + // Enum describing possible label errors. + enum LabelError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // An inactive label cannot be applied. + CANNOT_APPLY_INACTIVE_LABEL = 2; + + // A label cannot be applied to a disabled ad group criterion. + CANNOT_APPLY_LABEL_TO_DISABLED_AD_GROUP_CRITERION = 3; + + // A label cannot be applied to a negative ad group criterion. + CANNOT_APPLY_LABEL_TO_NEGATIVE_AD_GROUP_CRITERION = 4; + + // Cannot apply more than 50 labels per resource. + EXCEEDED_LABEL_LIMIT_PER_TYPE = 5; + + // Labels from a manager account cannot be applied to campaign, ad group, + // ad group ad, or ad group criterion resources. + INVALID_RESOURCE_FOR_MANAGER_LABEL = 6; + + // Label names must be unique. + DUPLICATE_NAME = 7; + + // Label names cannot be empty. + INVALID_LABEL_NAME = 8; + + // Labels cannot be applied to a draft. + CANNOT_ATTACH_LABEL_TO_DRAFT = 9; + + // Labels not from a manager account cannot be applied to the customer + // resource. + CANNOT_ATTACH_NON_MANAGER_LABEL_TO_CUSTOMER = 10; + } + + +} diff --git a/google/ads/googleads/v9/errors/language_code_error.proto b/google/ads/googleads/v9/errors/language_code_error.proto new file mode 100644 index 000000000..444a26ecd --- /dev/null +++ b/google/ads/googleads/v9/errors/language_code_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "LanguageCodeErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing language code errors. + +// Container for enum describing language code errors. +message LanguageCodeErrorEnum { + // Enum describing language code errors. + enum LanguageCodeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The input language code is not recognized. + LANGUAGE_CODE_NOT_FOUND = 2; + + // The language code is not supported. + INVALID_LANGUAGE_CODE = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/list_operation_error.proto b/google/ads/googleads/v9/errors/list_operation_error.proto new file mode 100644 index 000000000..ea2c9440c --- /dev/null +++ b/google/ads/googleads/v9/errors/list_operation_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ListOperationErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing list operation errors. + +// Container for enum describing possible list operation errors. +message ListOperationErrorEnum { + // Enum describing possible list operation errors. + enum ListOperationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Field required in value is missing. + REQUIRED_FIELD_MISSING = 7; + + // Duplicate or identical value is sent in multiple list operations. + DUPLICATE_VALUES = 8; + } + + +} diff --git a/google/ads/googleads/v9/errors/manager_link_error.proto b/google/ads/googleads/v9/errors/manager_link_error.proto new file mode 100644 index 000000000..b6f7cf371 --- /dev/null +++ b/google/ads/googleads/v9/errors/manager_link_error.proto @@ -0,0 +1,103 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ManagerLinkErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ManagerLink errors. + +// Container for enum describing possible ManagerLink errors. +message ManagerLinkErrorEnum { + // Enum describing possible ManagerLink errors. + enum ManagerLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The manager and client have incompatible account types. + ACCOUNTS_NOT_COMPATIBLE_FOR_LINKING = 2; + + // Client is already linked to too many managers. + TOO_MANY_MANAGERS = 3; + + // Manager has too many pending invitations. + TOO_MANY_INVITES = 4; + + // Client is already invited by this manager. + ALREADY_INVITED_BY_THIS_MANAGER = 5; + + // The client is already managed by this manager. + ALREADY_MANAGED_BY_THIS_MANAGER = 6; + + // Client is already managed in hierarchy. + ALREADY_MANAGED_IN_HIERARCHY = 7; + + // Manager and sub-manager to be linked have duplicate client. + DUPLICATE_CHILD_FOUND = 8; + + // Client has no active user that can access the client account. + CLIENT_HAS_NO_ADMIN_USER = 9; + + // Adding this link would exceed the maximum hierarchy depth. + MAX_DEPTH_EXCEEDED = 10; + + // Adding this link will create a cycle. + CYCLE_NOT_ALLOWED = 11; + + // Manager account has the maximum number of linked clients. + TOO_MANY_ACCOUNTS = 12; + + // Parent manager account has the maximum number of linked clients. + TOO_MANY_ACCOUNTS_AT_MANAGER = 13; + + // The account is not authorized owner. + NON_OWNER_USER_CANNOT_MODIFY_LINK = 14; + + // Your manager account is suspended, and you are no longer allowed to link + // to clients. + SUSPENDED_ACCOUNT_CANNOT_ADD_CLIENTS = 15; + + // You are not allowed to move a client to a manager that is not under your + // current hierarchy. + CLIENT_OUTSIDE_TREE = 16; + + // The changed status for mutate link is invalid. + INVALID_STATUS_CHANGE = 17; + + // The change for mutate link is invalid. + INVALID_CHANGE = 18; + + // You are not allowed to link a manager account to itself. + CUSTOMER_CANNOT_MANAGE_SELF = 19; + + // The link was created with status ACTIVE and not PENDING. + CREATING_ENABLED_LINK_NOT_ALLOWED = 20; + } + + +} diff --git a/google/ads/googleads/v9/errors/media_bundle_error.proto b/google/ads/googleads/v9/errors/media_bundle_error.proto new file mode 100644 index 000000000..c7bd8e0f9 --- /dev/null +++ b/google/ads/googleads/v9/errors/media_bundle_error.proto @@ -0,0 +1,110 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "MediaBundleErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing media bundle errors. + +// Container for enum describing possible media bundle errors. +message MediaBundleErrorEnum { + // Enum describing possible media bundle errors. + enum MediaBundleError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // There was a problem with the request. + BAD_REQUEST = 3; + + // HTML5 ads using DoubleClick Studio created ZIP files are not supported. + DOUBLECLICK_BUNDLE_NOT_ALLOWED = 4; + + // Cannot reference URL external to the media bundle. + EXTERNAL_URL_NOT_ALLOWED = 5; + + // Media bundle file is too large. + FILE_TOO_LARGE = 6; + + // ZIP file from Google Web Designer is not published. + GOOGLE_WEB_DESIGNER_ZIP_FILE_NOT_PUBLISHED = 7; + + // Input was invalid. + INVALID_INPUT = 8; + + // There was a problem with the media bundle. + INVALID_MEDIA_BUNDLE = 9; + + // There was a problem with one or more of the media bundle entries. + INVALID_MEDIA_BUNDLE_ENTRY = 10; + + // The media bundle contains a file with an unknown mime type + INVALID_MIME_TYPE = 11; + + // The media bundle contain an invalid asset path. + INVALID_PATH = 12; + + // HTML5 ad is trying to reference an asset not in .ZIP file + INVALID_URL_REFERENCE = 13; + + // Media data is too large. + MEDIA_DATA_TOO_LARGE = 14; + + // The media bundle contains no primary entry. + MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY = 15; + + // There was an error on the server. + SERVER_ERROR = 16; + + // The image could not be stored. + STORAGE_ERROR = 17; + + // Media bundle created with the Swiffy tool is not allowed. + SWIFFY_BUNDLE_NOT_ALLOWED = 18; + + // The media bundle contains too many files. + TOO_MANY_FILES = 19; + + // The media bundle is not of legal dimensions. + UNEXPECTED_SIZE = 20; + + // Google Web Designer not created for "Google Ads" environment. + UNSUPPORTED_GOOGLE_WEB_DESIGNER_ENVIRONMENT = 21; + + // Unsupported HTML5 feature in HTML5 asset. + UNSUPPORTED_HTML5_FEATURE = 22; + + // URL in HTML5 entry is not ssl compliant. + URL_IN_MEDIA_BUNDLE_NOT_SSL_COMPLIANT = 23; + + // Custom exits not allowed in HTML5 entry. + CUSTOM_EXIT_NOT_ALLOWED = 24; + } + + +} diff --git a/google/ads/googleads/v9/errors/media_file_error.proto b/google/ads/googleads/v9/errors/media_file_error.proto new file mode 100644 index 000000000..521a63125 --- /dev/null +++ b/google/ads/googleads/v9/errors/media_file_error.proto @@ -0,0 +1,113 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "MediaFileErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing media file errors. + +// Container for enum describing possible media file errors. +message MediaFileErrorEnum { + // Enum describing possible media file errors. + enum MediaFileError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Cannot create a standard icon type. + CANNOT_CREATE_STANDARD_ICON = 2; + + // May only select Standard Icons alone. + CANNOT_SELECT_STANDARD_ICON_WITH_OTHER_TYPES = 3; + + // Image contains both a media file ID and data. + CANNOT_SPECIFY_MEDIA_FILE_ID_AND_DATA = 4; + + // A media file with given type and reference ID already exists. + DUPLICATE_MEDIA = 5; + + // A required field was not specified or is an empty string. + EMPTY_FIELD = 6; + + // A media file may only be modified once per call. + RESOURCE_REFERENCED_IN_MULTIPLE_OPS = 7; + + // Field is not supported for the media sub type. + FIELD_NOT_SUPPORTED_FOR_MEDIA_SUB_TYPE = 8; + + // The media file ID is invalid. + INVALID_MEDIA_FILE_ID = 9; + + // The media subtype is invalid. + INVALID_MEDIA_SUB_TYPE = 10; + + // The media file type is invalid. + INVALID_MEDIA_FILE_TYPE = 11; + + // The mimetype is invalid. + INVALID_MIME_TYPE = 12; + + // The media reference ID is invalid. + INVALID_REFERENCE_ID = 13; + + // The YouTube video ID is invalid. + INVALID_YOU_TUBE_ID = 14; + + // Media file has failed transcoding + MEDIA_FILE_FAILED_TRANSCODING = 15; + + // Media file has not been transcoded. + MEDIA_NOT_TRANSCODED = 16; + + // The media type does not match the actual media file's type. + MEDIA_TYPE_DOES_NOT_MATCH_MEDIA_FILE_TYPE = 17; + + // None of the fields have been specified. + NO_FIELDS_SPECIFIED = 18; + + // One of reference ID or media file ID must be specified. + NULL_REFERENCE_ID_AND_MEDIA_ID = 19; + + // The string has too many characters. + TOO_LONG = 20; + + // The specified type is not supported. + UNSUPPORTED_TYPE = 21; + + // YouTube is unavailable for requesting video data. + YOU_TUBE_SERVICE_UNAVAILABLE = 22; + + // The YouTube video has a non positive duration. + YOU_TUBE_VIDEO_HAS_NON_POSITIVE_DURATION = 23; + + // The YouTube video ID is syntactically valid but the video was not found. + YOU_TUBE_VIDEO_NOT_FOUND = 24; + } + + +} diff --git a/google/ads/googleads/v9/errors/media_upload_error.proto b/google/ads/googleads/v9/errors/media_upload_error.proto new file mode 100644 index 000000000..1c333e15d --- /dev/null +++ b/google/ads/googleads/v9/errors/media_upload_error.proto @@ -0,0 +1,152 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "MediaUploadErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing media uploading errors. + +// Container for enum describing possible media uploading errors. +message MediaUploadErrorEnum { + // Enum describing possible media uploading errors. + enum MediaUploadError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The uploaded file is too big. + FILE_TOO_BIG = 2; + + // Image data is unparseable. + UNPARSEABLE_IMAGE = 3; + + // Animated images are not allowed. + ANIMATED_IMAGE_NOT_ALLOWED = 4; + + // The image or media bundle format is not allowed. + FORMAT_NOT_ALLOWED = 5; + + // Cannot reference URL external to the media bundle. + EXTERNAL_URL_NOT_ALLOWED = 6; + + // HTML5 ad is trying to reference an asset not in .ZIP file. + INVALID_URL_REFERENCE = 7; + + // The media bundle contains no primary entry. + MISSING_PRIMARY_MEDIA_BUNDLE_ENTRY = 8; + + // Animation has disallowed visual effects. + ANIMATED_VISUAL_EFFECT = 9; + + // Animation longer than the allowed 30 second limit. + ANIMATION_TOO_LONG = 10; + + // The aspect ratio of the image does not match the expected aspect ratios + // provided in the asset spec. + ASPECT_RATIO_NOT_ALLOWED = 11; + + // Audio files are not allowed in bundle. + AUDIO_NOT_ALLOWED_IN_MEDIA_BUNDLE = 12; + + // CMYK jpegs are not supported. + CMYK_JPEG_NOT_ALLOWED = 13; + + // Flash movies are not allowed. + FLASH_NOT_ALLOWED = 14; + + // The frame rate of the video is higher than the allowed 5fps. + FRAME_RATE_TOO_HIGH = 15; + + // ZIP file from Google Web Designer is not published. + GOOGLE_WEB_DESIGNER_ZIP_FILE_NOT_PUBLISHED = 16; + + // Image constraints are violated, but more details (like + // DIMENSIONS_NOT_ALLOWED or ASPECT_RATIO_NOT_ALLOWED) can not be provided. + // This happens when asset spec contains more than one constraint and + // criteria of different constraints are violated. + IMAGE_CONSTRAINTS_VIOLATED = 17; + + // Media bundle data is unrecognizable. + INVALID_MEDIA_BUNDLE = 18; + + // There was a problem with one or more of the media bundle entries. + INVALID_MEDIA_BUNDLE_ENTRY = 19; + + // The asset has an invalid mime type. + INVALID_MIME_TYPE = 20; + + // The media bundle contains an invalid asset path. + INVALID_PATH = 21; + + // Image has layout problem. + LAYOUT_PROBLEM = 22; + + // An asset had a URL reference that is malformed per RFC 1738 convention. + MALFORMED_URL = 23; + + // The uploaded media bundle format is not allowed. + MEDIA_BUNDLE_NOT_ALLOWED = 24; + + // The media bundle is not compatible with the asset spec product type. + // (E.g. Gmail, dynamic remarketing, etc.) + MEDIA_BUNDLE_NOT_COMPATIBLE_TO_PRODUCT_TYPE = 25; + + // A bundle being uploaded that is incompatible with multiple assets for + // different reasons. + MEDIA_BUNDLE_REJECTED_BY_MULTIPLE_ASSET_SPECS = 26; + + // The media bundle contains too many files. + TOO_MANY_FILES_IN_MEDIA_BUNDLE = 27; + + // Google Web Designer not created for "Google Ads" environment. + UNSUPPORTED_GOOGLE_WEB_DESIGNER_ENVIRONMENT = 28; + + // Unsupported HTML5 feature in HTML5 asset. + UNSUPPORTED_HTML5_FEATURE = 29; + + // URL in HTML5 entry is not SSL compliant. + URL_IN_MEDIA_BUNDLE_NOT_SSL_COMPLIANT = 30; + + // Video file name is longer than the 50 allowed characters. + VIDEO_FILE_NAME_TOO_LONG = 31; + + // Multiple videos with same name in a bundle. + VIDEO_MULTIPLE_FILES_WITH_SAME_NAME = 32; + + // Videos are not allowed in media bundle. + VIDEO_NOT_ALLOWED_IN_MEDIA_BUNDLE = 33; + + // This type of media cannot be uploaded through the Google Ads API. + CANNOT_UPLOAD_MEDIA_TYPE_THROUGH_API = 34; + + // The dimensions of the image are not allowed. + DIMENSIONS_NOT_ALLOWED = 35; + } + + +} diff --git a/google/ads/googleads/v9/errors/merchant_center_error.proto b/google/ads/googleads/v9/errors/merchant_center_error.proto new file mode 100644 index 000000000..b749907bd --- /dev/null +++ b/google/ads/googleads/v9/errors/merchant_center_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "MerchantCenterErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing merchant center errors. + +// Container for enum describing possible merchant center errors. +message MerchantCenterErrorEnum { + // Enum describing Merchant Center errors. + enum MerchantCenterError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Merchant ID is either not found or not linked to the Google Ads customer. + MERCHANT_ID_CANNOT_BE_ACCESSED = 2; + + // Customer not allowlisted for Shopping in Performance Max Campaign. + CUSTOMER_NOT_ALLOWED_FOR_SHOPPING_PERFORMANCE_MAX = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/multiplier_error.proto b/google/ads/googleads/v9/errors/multiplier_error.proto new file mode 100644 index 000000000..11b1e9bd7 --- /dev/null +++ b/google/ads/googleads/v9/errors/multiplier_error.proto @@ -0,0 +1,81 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "MultiplierErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing multiplier errors. + +// Container for enum describing possible multiplier errors. +message MultiplierErrorEnum { + // Enum describing possible multiplier errors. + enum MultiplierError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Multiplier value is too high + MULTIPLIER_TOO_HIGH = 2; + + // Multiplier value is too low + MULTIPLIER_TOO_LOW = 3; + + // Too many fractional digits + TOO_MANY_FRACTIONAL_DIGITS = 4; + + // A multiplier cannot be set for this bidding strategy + MULTIPLIER_NOT_ALLOWED_FOR_BIDDING_STRATEGY = 5; + + // A multiplier cannot be set when there is no base bid (e.g., content max + // cpc) + MULTIPLIER_NOT_ALLOWED_WHEN_BASE_BID_IS_MISSING = 6; + + // A bid multiplier must be specified + NO_MULTIPLIER_SPECIFIED = 7; + + // Multiplier causes bid to exceed daily budget + MULTIPLIER_CAUSES_BID_TO_EXCEED_DAILY_BUDGET = 8; + + // Multiplier causes bid to exceed monthly budget + MULTIPLIER_CAUSES_BID_TO_EXCEED_MONTHLY_BUDGET = 9; + + // Multiplier causes bid to exceed custom budget + MULTIPLIER_CAUSES_BID_TO_EXCEED_CUSTOM_BUDGET = 10; + + // Multiplier causes bid to exceed maximum allowed bid + MULTIPLIER_CAUSES_BID_TO_EXCEED_MAX_ALLOWED_BID = 11; + + // Multiplier causes bid to become less than the minimum bid allowed + BID_LESS_THAN_MIN_ALLOWED_BID_WITH_MULTIPLIER = 12; + + // Multiplier type (cpc vs. cpm) needs to match campaign's bidding strategy + MULTIPLIER_AND_BIDDING_STRATEGY_TYPE_MISMATCH = 13; + } + + +} diff --git a/google/ads/googleads/v9/errors/mutate_error.proto b/google/ads/googleads/v9/errors/mutate_error.proto new file mode 100644 index 000000000..f37fdc547 --- /dev/null +++ b/google/ads/googleads/v9/errors/mutate_error.proto @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "MutateErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing mutate errors. + +// Container for enum describing possible mutate errors. +message MutateErrorEnum { + // Enum describing possible mutate errors. + enum MutateError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Requested resource was not found. + RESOURCE_NOT_FOUND = 3; + + // Cannot mutate the same resource twice in one request. + ID_EXISTS_IN_MULTIPLE_MUTATES = 7; + + // The field's contents don't match another field that represents the same + // data. + INCONSISTENT_FIELD_VALUES = 8; + + // Mutates are not allowed for the requested resource. + MUTATE_NOT_ALLOWED = 9; + + // The resource isn't in Google Ads. It belongs to another ads system. + RESOURCE_NOT_IN_GOOGLE_ADS = 10; + + // The resource being created already exists. + RESOURCE_ALREADY_EXISTS = 11; + + // This resource cannot be used with "validate_only". + RESOURCE_DOES_NOT_SUPPORT_VALIDATE_ONLY = 12; + + // This operation cannot be used with "partial_failure". + OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE = 16; + + // Attempt to write to read-only fields. + RESOURCE_READ_ONLY = 13; + } + + +} diff --git a/google/ads/googleads/v9/errors/new_resource_creation_error.proto b/google/ads/googleads/v9/errors/new_resource_creation_error.proto new file mode 100644 index 000000000..4761317cc --- /dev/null +++ b/google/ads/googleads/v9/errors/new_resource_creation_error.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "NewResourceCreationErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing new resource creation errors. + +// Container for enum describing possible new resource creation errors. +message NewResourceCreationErrorEnum { + // Enum describing possible new resource creation errors. + enum NewResourceCreationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Do not set the id field while creating new resources. + CANNOT_SET_ID_FOR_CREATE = 2; + + // Creating more than one resource with the same temp ID is not allowed. + DUPLICATE_TEMP_IDS = 3; + + // Parent resource with specified temp ID failed validation, so no + // validation will be done for this child resource. + TEMP_ID_RESOURCE_HAD_ERRORS = 4; + } + + +} diff --git a/google/ads/googleads/v9/errors/not_allowlisted_error.proto b/google/ads/googleads/v9/errors/not_allowlisted_error.proto new file mode 100644 index 000000000..16e68680a --- /dev/null +++ b/google/ads/googleads/v9/errors/not_allowlisted_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "NotAllowlistedErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing not allowlisted errors. + +// Container for enum describing possible not allowlisted errors. +message NotAllowlistedErrorEnum { + // Enum describing possible not allowlisted errors. + enum NotAllowlistedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Customer is not allowlisted for accessing this feature. + CUSTOMER_NOT_ALLOWLISTED_FOR_THIS_FEATURE = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/not_empty_error.proto b/google/ads/googleads/v9/errors/not_empty_error.proto new file mode 100644 index 000000000..aae0e2892 --- /dev/null +++ b/google/ads/googleads/v9/errors/not_empty_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "NotEmptyErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing not empty errors. + +// Container for enum describing possible not empty errors. +message NotEmptyErrorEnum { + // Enum describing possible not empty errors. + enum NotEmptyError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Empty list. + EMPTY_LIST = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/null_error.proto b/google/ads/googleads/v9/errors/null_error.proto new file mode 100644 index 000000000..161b84732 --- /dev/null +++ b/google/ads/googleads/v9/errors/null_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "NullErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing null errors. + +// Container for enum describing possible null errors. +message NullErrorEnum { + // Enum describing possible null errors. + enum NullError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Specified list/container must not contain any null elements + NULL_CONTENT = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/offline_user_data_job_error.proto b/google/ads/googleads/v9/errors/offline_user_data_job_error.proto new file mode 100644 index 000000000..2391baaf2 --- /dev/null +++ b/google/ads/googleads/v9/errors/offline_user_data_job_error.proto @@ -0,0 +1,160 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing offline user data job errors. + +// Container for enum describing possible offline user data job errors. +message OfflineUserDataJobErrorEnum { + // Enum describing possible request errors. + enum OfflineUserDataJobError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The user list ID provided for the job is invalid. + INVALID_USER_LIST_ID = 3; + + // Type of the user list is not applicable for the job. + INVALID_USER_LIST_TYPE = 4; + + // Customer is not allowisted for using user ID in upload data. + NOT_ON_ALLOWLIST_FOR_USER_ID = 33; + + // Upload data is not compatible with the upload key type of the associated + // user list. + INCOMPATIBLE_UPLOAD_KEY_TYPE = 6; + + // The user identifier is missing valid data. + MISSING_USER_IDENTIFIER = 7; + + // The mobile ID is malformed. + INVALID_MOBILE_ID_FORMAT = 8; + + // Maximum number of user identifiers allowed per request is 100,000. + TOO_MANY_USER_IDENTIFIERS = 9; + + // Customer is not on the allow-list for store sales direct data. + NOT_ON_ALLOWLIST_FOR_STORE_SALES_DIRECT = 31; + + // Customer is not on the allow-list for unified store sales data. + NOT_ON_ALLOWLIST_FOR_UNIFIED_STORE_SALES = 32; + + // The partner ID in store sales direct metadata is invalid. + INVALID_PARTNER_ID = 11; + + // The data in user identifier should not be encoded. + INVALID_ENCODING = 12; + + // The country code is invalid. + INVALID_COUNTRY_CODE = 13; + + // Incompatible user identifier when using third_party_user_id for store + // sales direct first party data or not using third_party_user_id for store + // sales third party data. + INCOMPATIBLE_USER_IDENTIFIER = 14; + + // A transaction time in the future is not allowed. + FUTURE_TRANSACTION_TIME = 15; + + // The conversion_action specified in transaction_attributes is used to + // report conversions to a conversion action configured in Google Ads. This + // error indicates there is no such conversion action in the account. + INVALID_CONVERSION_ACTION = 16; + + // Mobile ID is not supported for store sales direct data. + MOBILE_ID_NOT_SUPPORTED = 17; + + // When a remove-all operation is provided, it has to be the first operation + // of the operation list. + INVALID_OPERATION_ORDER = 18; + + // Mixing creation and removal of offline data in the same job is not + // allowed. + CONFLICTING_OPERATION = 19; + + // The external update ID already exists. + EXTERNAL_UPDATE_ID_ALREADY_EXISTS = 21; + + // Once the upload job is started, new operations cannot be added. + JOB_ALREADY_STARTED = 22; + + // Remove operation is not allowed for store sales direct updates. + REMOVE_NOT_SUPPORTED = 23; + + // Remove-all is not supported for certain offline user data job types. + REMOVE_ALL_NOT_SUPPORTED = 24; + + // The SHA256 encoded value is malformed. + INVALID_SHA256_FORMAT = 25; + + // The custom key specified is not enabled for the unified store sales + // upload. + CUSTOM_KEY_DISABLED = 26; + + // The custom key specified is not predefined through the Google Ads UI. + CUSTOM_KEY_NOT_PREDEFINED = 27; + + // The custom key specified is not set in the upload. + CUSTOM_KEY_NOT_SET = 29; + + // The customer has not accepted the customer data terms in the conversion + // settings page. + CUSTOMER_NOT_ACCEPTED_CUSTOMER_DATA_TERMS = 30; + + // User attributes cannot be uploaded into a user list. + ATTRIBUTES_NOT_APPLICABLE_FOR_CUSTOMER_MATCH_USER_LIST = 34; + + // Lifetime value bucket must be a number from 1-10, except for remove + // operation where 0 will be accepted. + LIFETIME_VALUE_BUCKET_NOT_IN_RANGE = 35; + + // Identifiers not supported for Customer Match attributes. User attributes + // can only be provided with contact info (email, phone, address) user + // identifiers. + INCOMPATIBLE_USER_IDENTIFIER_FOR_ATTRIBUTES = 36; + + // A time in the future is not allowed. + FUTURE_TIME_NOT_ALLOWED = 37; + + // Last purchase date time cannot be less than acquisition date time. + LAST_PURCHASE_TIME_LESS_THAN_ACQUISITION_TIME = 38; + + // Only emails are accepted as user identifiers for shopping loyalty match. + // {-- api.dev/not-precedent: The identifier is not limited to ids, but + // also include other user info eg. phone numbers.} + CUSTOMER_IDENTIFIER_NOT_ALLOWED = 39; + + // Provided item ID is invalid. + INVALID_ITEM_ID = 40; + } + + +} diff --git a/google/ads/googleads/v9/errors/operation_access_denied_error.proto b/google/ads/googleads/v9/errors/operation_access_denied_error.proto new file mode 100644 index 000000000..8101b4b63 --- /dev/null +++ b/google/ads/googleads/v9/errors/operation_access_denied_error.proto @@ -0,0 +1,74 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "OperationAccessDeniedErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing operation access denied errors. + +// Container for enum describing possible operation access denied errors. +message OperationAccessDeniedErrorEnum { + // Enum describing possible operation access denied errors. + enum OperationAccessDeniedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Unauthorized invocation of a service's method (get, mutate, etc.) + ACTION_NOT_PERMITTED = 2; + + // Unauthorized CREATE operation in invoking a service's mutate method. + CREATE_OPERATION_NOT_PERMITTED = 3; + + // Unauthorized REMOVE operation in invoking a service's mutate method. + REMOVE_OPERATION_NOT_PERMITTED = 4; + + // Unauthorized UPDATE operation in invoking a service's mutate method. + UPDATE_OPERATION_NOT_PERMITTED = 5; + + // A mutate action is not allowed on this resource, from this client. + MUTATE_ACTION_NOT_PERMITTED_FOR_CLIENT = 6; + + // This operation is not permitted on this campaign type + OPERATION_NOT_PERMITTED_FOR_CAMPAIGN_TYPE = 7; + + // A CREATE operation may not set status to REMOVED. + CREATE_AS_REMOVED_NOT_PERMITTED = 8; + + // This operation is not allowed because the resource is removed. + OPERATION_NOT_PERMITTED_FOR_REMOVED_RESOURCE = 9; + + // This operation is not permitted on this ad group type. + OPERATION_NOT_PERMITTED_FOR_AD_GROUP_TYPE = 10; + + // The mutate is not allowed for this customer. + MUTATE_NOT_PERMITTED_FOR_CUSTOMER = 11; + } + + +} diff --git a/google/ads/googleads/v9/errors/operator_error.proto b/google/ads/googleads/v9/errors/operator_error.proto new file mode 100644 index 000000000..f39d7e85a --- /dev/null +++ b/google/ads/googleads/v9/errors/operator_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "OperatorErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing operator errors. + +// Container for enum describing possible operator errors. +message OperatorErrorEnum { + // Enum describing possible operator errors. + enum OperatorError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Operator not supported. + OPERATOR_NOT_SUPPORTED = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/partial_failure_error.proto b/google/ads/googleads/v9/errors/partial_failure_error.proto new file mode 100644 index 000000000..108e90915 --- /dev/null +++ b/google/ads/googleads/v9/errors/partial_failure_error.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "PartialFailureErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing partial failure errors. + +// Container for enum describing possible partial failure errors. +message PartialFailureErrorEnum { + // Enum describing possible partial failure errors. + enum PartialFailureError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The partial failure field was false in the request. + // This method requires this field be set to true. + PARTIAL_FAILURE_MODE_REQUIRED = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/payments_account_error.proto b/google/ads/googleads/v9/errors/payments_account_error.proto new file mode 100644 index 000000000..ac90a7078 --- /dev/null +++ b/google/ads/googleads/v9/errors/payments_account_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "PaymentsAccountErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing payments account service errors. + +// Container for enum describing possible errors in payments account service. +message PaymentsAccountErrorEnum { + // Enum describing possible errors in payments account service. + enum PaymentsAccountError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Manager customers are not supported for payments account service. + NOT_SUPPORTED_FOR_MANAGER_CUSTOMER = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/policy_finding_error.proto b/google/ads/googleads/v9/errors/policy_finding_error.proto new file mode 100644 index 000000000..e6d4d8da0 --- /dev/null +++ b/google/ads/googleads/v9/errors/policy_finding_error.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "PolicyFindingErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing policy finding errors. + +// Container for enum describing possible policy finding errors. +message PolicyFindingErrorEnum { + // Enum describing possible policy finding errors. + enum PolicyFindingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The resource has been disapproved since the policy summary includes + // policy topics of type PROHIBITED. + POLICY_FINDING = 2; + + // The given policy topic does not exist. + POLICY_TOPIC_NOT_FOUND = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/policy_validation_parameter_error.proto b/google/ads/googleads/v9/errors/policy_validation_parameter_error.proto new file mode 100644 index 000000000..d8fa0bbf6 --- /dev/null +++ b/google/ads/googleads/v9/errors/policy_validation_parameter_error.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "PolicyValidationParameterErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing policy validation parameter errors. + +// Container for enum describing possible policy validation parameter errors. +message PolicyValidationParameterErrorEnum { + // Enum describing possible policy validation parameter errors. + enum PolicyValidationParameterError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Ignorable policy topics are not supported for the ad type. + UNSUPPORTED_AD_TYPE_FOR_IGNORABLE_POLICY_TOPICS = 2; + + // Exempt policy violation keys are not supported for the ad type. + UNSUPPORTED_AD_TYPE_FOR_EXEMPT_POLICY_VIOLATION_KEYS = 3; + + // Cannot set ignorable policy topics and exempt policy violation keys in + // the same policy violation parameter. + CANNOT_SET_BOTH_IGNORABLE_POLICY_TOPICS_AND_EXEMPT_POLICY_VIOLATION_KEYS = 4; + } + + +} diff --git a/google/ads/googleads/v9/errors/policy_violation_error.proto b/google/ads/googleads/v9/errors/policy_violation_error.proto new file mode 100644 index 000000000..31c90e410 --- /dev/null +++ b/google/ads/googleads/v9/errors/policy_violation_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "PolicyViolationErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing policy violation errors. + +// Container for enum describing possible policy violation errors. +message PolicyViolationErrorEnum { + // Enum describing possible policy violation errors. + enum PolicyViolationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // A policy was violated. See PolicyViolationDetails for more detail. + POLICY_ERROR = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/query_error.proto b/google/ads/googleads/v9/errors/query_error.proto new file mode 100644 index 000000000..8cb206840 --- /dev/null +++ b/google/ads/googleads/v9/errors/query_error.proto @@ -0,0 +1,227 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "QueryErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing query errors. + +// Container for enum describing possible query errors. +message QueryErrorEnum { + // Enum describing possible query errors. + enum QueryError { + // Name unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Returned if all other query error reasons are not applicable. + QUERY_ERROR = 50; + + // A condition used in the query references an invalid enum constant. + BAD_ENUM_CONSTANT = 18; + + // Query contains an invalid escape sequence. + BAD_ESCAPE_SEQUENCE = 7; + + // Field name is invalid. + BAD_FIELD_NAME = 12; + + // Limit value is invalid (i.e. not a number) + BAD_LIMIT_VALUE = 15; + + // Encountered number can not be parsed. + BAD_NUMBER = 5; + + // Invalid operator encountered. + BAD_OPERATOR = 3; + + // Parameter unknown or not supported. + BAD_PARAMETER_NAME = 61; + + // Parameter have invalid value. + BAD_PARAMETER_VALUE = 62; + + // Invalid resource type was specified in the FROM clause. + BAD_RESOURCE_TYPE_IN_FROM_CLAUSE = 45; + + // Non-ASCII symbol encountered outside of strings. + BAD_SYMBOL = 2; + + // Value is invalid. + BAD_VALUE = 4; + + // Date filters fail to restrict date to a range smaller than 31 days. + // Applicable if the query is segmented by date. + DATE_RANGE_TOO_WIDE = 36; + + // Filters on date/week/month/quarter have a start date after + // end date. + DATE_RANGE_TOO_NARROW = 60; + + // Expected AND between values with BETWEEN operator. + EXPECTED_AND = 30; + + // Expecting ORDER BY to have BY. + EXPECTED_BY = 14; + + // There was no dimension field selected. + EXPECTED_DIMENSION_FIELD_IN_SELECT_CLAUSE = 37; + + // Missing filters on date related fields. + EXPECTED_FILTERS_ON_DATE_RANGE = 55; + + // Missing FROM clause. + EXPECTED_FROM = 44; + + // The operator used in the conditions requires the value to be a list. + EXPECTED_LIST = 41; + + // Fields used in WHERE or ORDER BY clauses are missing from the SELECT + // clause. + EXPECTED_REFERENCED_FIELD_IN_SELECT_CLAUSE = 16; + + // SELECT is missing at the beginning of query. + EXPECTED_SELECT = 13; + + // A list was passed as a value to a condition whose operator expects a + // single value. + EXPECTED_SINGLE_VALUE = 42; + + // Missing one or both values with BETWEEN operator. + EXPECTED_VALUE_WITH_BETWEEN_OPERATOR = 29; + + // Invalid date format. Expected 'YYYY-MM-DD'. + INVALID_DATE_FORMAT = 38; + + // Misaligned date value for the filter. The date should be the start of a + // week/month/quarter if the filtered field is + // segments.week/segments.month/segments.quarter. + MISALIGNED_DATE_FOR_FILTER = 64; + + // Value passed was not a string when it should have been. I.e., it was a + // number or unquoted literal. + INVALID_STRING_VALUE = 57; + + // A String value passed to the BETWEEN operator does not parse as a date. + INVALID_VALUE_WITH_BETWEEN_OPERATOR = 26; + + // The value passed to the DURING operator is not a Date range literal + INVALID_VALUE_WITH_DURING_OPERATOR = 22; + + // An invalid value was passed to the LIKE operator. + INVALID_VALUE_WITH_LIKE_OPERATOR = 56; + + // An operator was provided that is inapplicable to the field being + // filtered. + OPERATOR_FIELD_MISMATCH = 35; + + // A Condition was found with an empty list. + PROHIBITED_EMPTY_LIST_IN_CONDITION = 28; + + // A condition used in the query references an unsupported enum constant. + PROHIBITED_ENUM_CONSTANT = 54; + + // Fields that are not allowed to be selected together were included in + // the SELECT clause. + PROHIBITED_FIELD_COMBINATION_IN_SELECT_CLAUSE = 31; + + // A field that is not orderable was included in the ORDER BY clause. + PROHIBITED_FIELD_IN_ORDER_BY_CLAUSE = 40; + + // A field that is not selectable was included in the SELECT clause. + PROHIBITED_FIELD_IN_SELECT_CLAUSE = 23; + + // A field that is not filterable was included in the WHERE clause. + PROHIBITED_FIELD_IN_WHERE_CLAUSE = 24; + + // Resource type specified in the FROM clause is not supported by this + // service. + PROHIBITED_RESOURCE_TYPE_IN_FROM_CLAUSE = 43; + + // A field that comes from an incompatible resource was included in the + // SELECT clause. + PROHIBITED_RESOURCE_TYPE_IN_SELECT_CLAUSE = 48; + + // A field that comes from an incompatible resource was included in the + // WHERE clause. + PROHIBITED_RESOURCE_TYPE_IN_WHERE_CLAUSE = 58; + + // A metric incompatible with the main resource or other selected + // segmenting resources was included in the SELECT or WHERE clause. + PROHIBITED_METRIC_IN_SELECT_OR_WHERE_CLAUSE = 49; + + // A segment incompatible with the main resource or other selected + // segmenting resources was included in the SELECT or WHERE clause. + PROHIBITED_SEGMENT_IN_SELECT_OR_WHERE_CLAUSE = 51; + + // A segment in the SELECT clause is incompatible with a metric in the + // SELECT or WHERE clause. + PROHIBITED_SEGMENT_WITH_METRIC_IN_SELECT_OR_WHERE_CLAUSE = 53; + + // The value passed to the limit clause is too low. + LIMIT_VALUE_TOO_LOW = 25; + + // Query has a string containing a newline character. + PROHIBITED_NEWLINE_IN_STRING = 8; + + // List contains values of different types. + PROHIBITED_VALUE_COMBINATION_IN_LIST = 10; + + // The values passed to the BETWEEN operator are not of the same type. + PROHIBITED_VALUE_COMBINATION_WITH_BETWEEN_OPERATOR = 21; + + // Query contains unterminated string. + STRING_NOT_TERMINATED = 6; + + // Too many segments are specified in SELECT clause. + TOO_MANY_SEGMENTS = 34; + + // Query is incomplete and cannot be parsed. + UNEXPECTED_END_OF_QUERY = 9; + + // FROM clause cannot be specified in this query. + UNEXPECTED_FROM_CLAUSE = 47; + + // Query contains one or more unrecognized fields. + UNRECOGNIZED_FIELD = 32; + + // Query has an unexpected extra part. + UNEXPECTED_INPUT = 11; + + // Metrics cannot be requested for a manager account. To retrieve metrics, + // issue separate requests against each client account under the manager + // account. + REQUESTED_METRICS_FOR_MANAGER = 59; + + // The number of values (right-hand-side operands) in a filter exceeds the + // limit. + FILTER_HAS_TOO_MANY_VALUES = 63; + } + + +} diff --git a/google/ads/googleads/v9/errors/quota_error.proto b/google/ads/googleads/v9/errors/quota_error.proto new file mode 100644 index 000000000..9993344da --- /dev/null +++ b/google/ads/googleads/v9/errors/quota_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "QuotaErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing quota errors. + +// Container for enum describing possible quota errors. +message QuotaErrorEnum { + // Enum describing possible quota errors. + enum QuotaError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Too many requests. + RESOURCE_EXHAUSTED = 2; + + // Access is prohibited. + ACCESS_PROHIBITED = 3; + + // Too many requests in a short amount of time. + RESOURCE_TEMPORARILY_EXHAUSTED = 4; + } + + +} diff --git a/google/ads/googleads/v9/errors/range_error.proto b/google/ads/googleads/v9/errors/range_error.proto new file mode 100644 index 000000000..9bab3f87f --- /dev/null +++ b/google/ads/googleads/v9/errors/range_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "RangeErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing range errors. + +// Container for enum describing possible range errors. +message RangeErrorEnum { + // Enum describing possible range errors. + enum RangeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Too low. + TOO_LOW = 2; + + // Too high. + TOO_HIGH = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/reach_plan_error.proto b/google/ads/googleads/v9/errors/reach_plan_error.proto new file mode 100644 index 000000000..f32aa697d --- /dev/null +++ b/google/ads/googleads/v9/errors/reach_plan_error.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ReachPlanErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing errors generated from ReachPlanService. + +// Container for enum describing possible errors returned from +// the ReachPlanService. +message ReachPlanErrorEnum { + // Enum describing possible errors from ReachPlanService. + enum ReachPlanError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Not forecastable due to missing rate card data. + NOT_FORECASTABLE_MISSING_RATE = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/recommendation_error.proto b/google/ads/googleads/v9/errors/recommendation_error.proto new file mode 100644 index 000000000..65850f1e3 --- /dev/null +++ b/google/ads/googleads/v9/errors/recommendation_error.proto @@ -0,0 +1,90 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "RecommendationErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing errors from applying a recommendation. + +// Container for enum describing possible errors from applying a recommendation. +message RecommendationErrorEnum { + // Enum describing possible errors from applying a recommendation. + enum RecommendationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The specified budget amount is too low e.g. lower than minimum currency + // unit or lower than ad group minimum cost-per-click. + BUDGET_AMOUNT_TOO_SMALL = 2; + + // The specified budget amount is too large. + BUDGET_AMOUNT_TOO_LARGE = 3; + + // The specified budget amount is not a valid amount. e.g. not a multiple + // of minimum currency unit. + INVALID_BUDGET_AMOUNT = 4; + + // The specified keyword or ad violates ad policy. + POLICY_ERROR = 5; + + // The specified bid amount is not valid. e.g. too many fractional digits, + // or negative amount. + INVALID_BID_AMOUNT = 6; + + // The number of keywords in ad group have reached the maximum allowed. + ADGROUP_KEYWORD_LIMIT = 7; + + // The recommendation requested to apply has already been applied. + RECOMMENDATION_ALREADY_APPLIED = 8; + + // The recommendation requested to apply has been invalidated. + RECOMMENDATION_INVALIDATED = 9; + + // The number of operations in a single request exceeds the maximum allowed. + TOO_MANY_OPERATIONS = 10; + + // There are no operations in the request. + NO_OPERATIONS = 11; + + // Operations with multiple recommendation types are not supported when + // partial failure mode is not enabled. + DIFFERENT_TYPES_NOT_SUPPORTED = 12; + + // Request contains multiple operations with the same resource_name. + DUPLICATE_RESOURCE_NAME = 13; + + // The recommendation requested to dismiss has already been dismissed. + RECOMMENDATION_ALREADY_DISMISSED = 14; + + // The recommendation apply request was malformed and invalid. + INVALID_APPLY_REQUEST = 15; + } + + +} diff --git a/google/ads/googleads/v9/errors/region_code_error.proto b/google/ads/googleads/v9/errors/region_code_error.proto new file mode 100644 index 000000000..12834b61b --- /dev/null +++ b/google/ads/googleads/v9/errors/region_code_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "RegionCodeErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing region code errors. + +// Container for enum describing possible region code errors. +message RegionCodeErrorEnum { + // Enum describing possible region code errors. + enum RegionCodeError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Invalid region code. + INVALID_REGION_CODE = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/request_error.proto b/google/ads/googleads/v9/errors/request_error.proto new file mode 100644 index 000000000..20e254bd0 --- /dev/null +++ b/google/ads/googleads/v9/errors/request_error.proto @@ -0,0 +1,119 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "RequestErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing request errors. + +// Container for enum describing possible request errors. +message RequestErrorEnum { + // Enum describing possible request errors. + enum RequestError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Resource name is required for this request. + RESOURCE_NAME_MISSING = 3; + + // Resource name provided is malformed. + RESOURCE_NAME_MALFORMED = 4; + + // Resource name provided is malformed. + BAD_RESOURCE_ID = 17; + + // Customer ID is invalid. + INVALID_CUSTOMER_ID = 16; + + // Mutate operation should have either create, update, or remove specified. + OPERATION_REQUIRED = 5; + + // Requested resource not found. + RESOURCE_NOT_FOUND = 6; + + // Next page token specified in user request is invalid. + INVALID_PAGE_TOKEN = 7; + + // Next page token specified in user request has expired. + EXPIRED_PAGE_TOKEN = 8; + + // Page size specified in user request is invalid. + INVALID_PAGE_SIZE = 22; + + // Required field is missing. + REQUIRED_FIELD_MISSING = 9; + + // The field cannot be modified because it's immutable. It's also possible + // that the field can be modified using 'create' operation but not 'update'. + IMMUTABLE_FIELD = 11; + + // Received too many entries in request. + TOO_MANY_MUTATE_OPERATIONS = 13; + + // Request cannot be executed by a manager account. + CANNOT_BE_EXECUTED_BY_MANAGER_ACCOUNT = 14; + + // Mutate request was attempting to modify a readonly field. + // For instance, Budget fields can be requested for Ad Group, + // but are read-only for adGroups:mutate. + CANNOT_MODIFY_FOREIGN_FIELD = 15; + + // Enum value is not permitted. + INVALID_ENUM_VALUE = 18; + + // The developer-token parameter is required for all requests. + DEVELOPER_TOKEN_PARAMETER_MISSING = 19; + + // The login-customer-id parameter is required for this request. + LOGIN_CUSTOMER_ID_PARAMETER_MISSING = 20; + + // page_token is set in the validate only request + VALIDATE_ONLY_REQUEST_HAS_PAGE_TOKEN = 21; + + // return_summary_row cannot be enabled if request did not select any + // metrics field. + CANNOT_RETURN_SUMMARY_ROW_FOR_REQUEST_WITHOUT_METRICS = 29; + + // return_summary_row should not be enabled for validate only requests. + CANNOT_RETURN_SUMMARY_ROW_FOR_VALIDATE_ONLY_REQUESTS = 30; + + // return_summary_row parameter value should be the same between requests + // with page_token field set and their original request. + INCONSISTENT_RETURN_SUMMARY_ROW_VALUE = 31; + + // The total results count cannot be returned if it was not requested in the + // original request. + TOTAL_RESULTS_COUNT_NOT_ORIGINALLY_REQUESTED = 32; + + // Deadline specified by the client was too short. + RPC_DEADLINE_TOO_SHORT = 33; + } + + +} diff --git a/google/ads/googleads/v9/errors/resource_access_denied_error.proto b/google/ads/googleads/v9/errors/resource_access_denied_error.proto new file mode 100644 index 000000000..6d33d6f39 --- /dev/null +++ b/google/ads/googleads/v9/errors/resource_access_denied_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ResourceAccessDeniedErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing resource access denied errors. + +// Container for enum describing possible resource access denied errors. +message ResourceAccessDeniedErrorEnum { + // Enum describing possible resource access denied errors. + enum ResourceAccessDeniedError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // User did not have write access. + WRITE_ACCESS_DENIED = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/resource_count_limit_exceeded_error.proto b/google/ads/googleads/v9/errors/resource_count_limit_exceeded_error.proto new file mode 100644 index 000000000..d5b8f1599 --- /dev/null +++ b/google/ads/googleads/v9/errors/resource_count_limit_exceeded_error.proto @@ -0,0 +1,93 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ResourceCountLimitExceededErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing resource count limit exceeded errors. + +// Container for enum describing possible resource count limit exceeded errors. +message ResourceCountLimitExceededErrorEnum { + // Enum describing possible resource count limit exceeded errors. + enum ResourceCountLimitExceededError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Indicates that this request would exceed the number of allowed resources + // for the Google Ads account. The exact resource type and limit being + // checked can be inferred from accountLimitType. + ACCOUNT_LIMIT = 2; + + // Indicates that this request would exceed the number of allowed resources + // in a Campaign. The exact resource type and limit being checked can be + // inferred from accountLimitType, and the numeric id of the + // Campaign involved is given by enclosingId. + CAMPAIGN_LIMIT = 3; + + // Indicates that this request would exceed the number of allowed resources + // in an ad group. The exact resource type and limit being checked can be + // inferred from accountLimitType, and the numeric id of the + // ad group involved is given by enclosingId. + ADGROUP_LIMIT = 4; + + // Indicates that this request would exceed the number of allowed resources + // in an ad group ad. The exact resource type and limit being checked can + // be inferred from accountLimitType, and the enclosingId + // contains the ad group id followed by the ad id, separated by a single + // comma (,). + AD_GROUP_AD_LIMIT = 5; + + // Indicates that this request would exceed the number of allowed resources + // in an ad group criterion. The exact resource type and limit being checked + // can be inferred from accountLimitType, and the + // enclosingId contains the ad group id followed by the + // criterion id, separated by a single comma (,). + AD_GROUP_CRITERION_LIMIT = 6; + + // Indicates that this request would exceed the number of allowed resources + // in this shared set. The exact resource type and limit being checked can + // be inferred from accountLimitType, and the numeric id of the + // shared set involved is given by enclosingId. + SHARED_SET_LIMIT = 7; + + // Exceeds a limit related to a matching function. + MATCHING_FUNCTION_LIMIT = 8; + + // The response for this request would exceed the maximum number of rows + // that can be returned. + RESPONSE_ROW_LIMIT_EXCEEDED = 9; + + // This request would exceed a limit on the number of allowed resources. + // The details of which type of limit was exceeded will eventually be + // returned in ErrorDetails. + RESOURCE_LIMIT = 10; + } + + +} diff --git a/google/ads/googleads/v9/errors/setting_error.proto b/google/ads/googleads/v9/errors/setting_error.proto new file mode 100644 index 000000000..9230efc6c --- /dev/null +++ b/google/ads/googleads/v9/errors/setting_error.proto @@ -0,0 +1,85 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "SettingErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing setting errors. + +// Container for enum describing possible setting errors. +message SettingErrorEnum { + // Enum describing possible setting errors. + enum SettingError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The campaign setting is not available for this Google Ads account. + SETTING_TYPE_IS_NOT_AVAILABLE = 3; + + // The setting is not compatible with the campaign. + SETTING_TYPE_IS_NOT_COMPATIBLE_WITH_CAMPAIGN = 4; + + // The supplied TargetingSetting contains an invalid CriterionTypeGroup. See + // CriterionTypeGroup documentation for CriterionTypeGroups allowed + // in Campaign or AdGroup TargetingSettings. + TARGETING_SETTING_CONTAINS_INVALID_CRITERION_TYPE_GROUP = 5; + + // TargetingSetting must not explicitly + // set any of the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, + // PARENT, INCOME_RANGE) to false (it's okay to not set them at all, in + // which case the system will set them to true automatically). + TARGETING_SETTING_DEMOGRAPHIC_CRITERION_TYPE_GROUPS_MUST_BE_SET_TO_TARGET_ALL = 6; + + // TargetingSetting cannot change any of + // the Demographic CriterionTypeGroups (AGE_RANGE, GENDER, PARENT, + // INCOME_RANGE) from true to false. + TARGETING_SETTING_CANNOT_CHANGE_TARGET_ALL_TO_FALSE_FOR_DEMOGRAPHIC_CRITERION_TYPE_GROUP = 7; + + // At least one feed id should be present. + DYNAMIC_SEARCH_ADS_SETTING_AT_LEAST_ONE_FEED_ID_MUST_BE_PRESENT = 8; + + // The supplied DynamicSearchAdsSetting contains an invalid domain name. + DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_DOMAIN_NAME = 9; + + // The supplied DynamicSearchAdsSetting contains a subdomain name. + DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_SUBDOMAIN_NAME = 10; + + // The supplied DynamicSearchAdsSetting contains an invalid language code. + DYNAMIC_SEARCH_ADS_SETTING_CONTAINS_INVALID_LANGUAGE_CODE = 11; + + // TargetingSettings in search campaigns should not have + // CriterionTypeGroup.PLACEMENT set to targetAll. + TARGET_ALL_IS_NOT_ALLOWED_FOR_PLACEMENT_IN_SEARCH_CAMPAIGN = 12; + + // The setting value is not compatible with the campaign type. + SETTING_VALUE_NOT_COMPATIBLE_WITH_CAMPAIGN = 20; + } + + +} diff --git a/google/ads/googleads/v9/errors/shared_criterion_error.proto b/google/ads/googleads/v9/errors/shared_criterion_error.proto new file mode 100644 index 000000000..900c2a9b6 --- /dev/null +++ b/google/ads/googleads/v9/errors/shared_criterion_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "SharedCriterionErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing shared criterion errors. + +// Container for enum describing possible shared criterion errors. +message SharedCriterionErrorEnum { + // Enum describing possible shared criterion errors. + enum SharedCriterionError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The criterion is not appropriate for the shared set type. + CRITERION_TYPE_NOT_ALLOWED_FOR_SHARED_SET_TYPE = 2; + } + + +} diff --git a/google/ads/googleads/v9/errors/shared_set_error.proto b/google/ads/googleads/v9/errors/shared_set_error.proto new file mode 100644 index 000000000..ffe828f33 --- /dev/null +++ b/google/ads/googleads/v9/errors/shared_set_error.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "SharedSetErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing shared set errors. + +// Container for enum describing possible shared set errors. +message SharedSetErrorEnum { + // Enum describing possible shared set errors. + enum SharedSetError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The customer cannot create this type of shared set. + CUSTOMER_CANNOT_CREATE_SHARED_SET_OF_THIS_TYPE = 2; + + // A shared set with this name already exists. + DUPLICATE_NAME = 3; + + // Removed shared sets cannot be mutated. + SHARED_SET_REMOVED = 4; + + // The shared set cannot be removed because it is in use. + SHARED_SET_IN_USE = 5; + } + + +} diff --git a/google/ads/googleads/v9/errors/size_limit_error.proto b/google/ads/googleads/v9/errors/size_limit_error.proto new file mode 100644 index 000000000..673e58576 --- /dev/null +++ b/google/ads/googleads/v9/errors/size_limit_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "SizeLimitErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing size limit errors. + +// Container for enum describing possible size limit errors. +message SizeLimitErrorEnum { + // Enum describing possible size limit errors. + enum SizeLimitError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The number of entries in the request exceeds the system limit. + REQUEST_SIZE_LIMIT_EXCEEDED = 2; + + // The number of entries in the response exceeds the system limit. + RESPONSE_SIZE_LIMIT_EXCEEDED = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/string_format_error.proto b/google/ads/googleads/v9/errors/string_format_error.proto new file mode 100644 index 000000000..d01e11345 --- /dev/null +++ b/google/ads/googleads/v9/errors/string_format_error.proto @@ -0,0 +1,50 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "StringFormatErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing string format errors. + +// Container for enum describing possible string format errors. +message StringFormatErrorEnum { + // Enum describing possible string format errors. + enum StringFormatError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The input string value contains disallowed characters. + ILLEGAL_CHARS = 2; + + // The input string value is invalid for the associated field. + INVALID_FORMAT = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/string_length_error.proto b/google/ads/googleads/v9/errors/string_length_error.proto new file mode 100644 index 000000000..906e4a226 --- /dev/null +++ b/google/ads/googleads/v9/errors/string_length_error.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "StringLengthErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing string length errors. + +// Container for enum describing possible string length errors. +message StringLengthErrorEnum { + // Enum describing possible string length errors. + enum StringLengthError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The specified field should have a least one non-whitespace character in + // it. + EMPTY = 4; + + // Too short. + TOO_SHORT = 2; + + // Too long. + TOO_LONG = 3; + } + + +} diff --git a/google/ads/googleads/v9/errors/third_party_app_analytics_link_error.proto b/google/ads/googleads/v9/errors/third_party_app_analytics_link_error.proto new file mode 100644 index 000000000..72ec12688 --- /dev/null +++ b/google/ads/googleads/v9/errors/third_party_app_analytics_link_error.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "ThirdPartyAppAnalyticsLinkErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing ThirdPartyAppAnalyticsLink errors. + +// Container for enum describing possible third party app analytics link errors. +message ThirdPartyAppAnalyticsLinkErrorEnum { + // Enum describing possible third party app analytics link errors. + enum ThirdPartyAppAnalyticsLinkError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The provided analytics provider ID is invalid. + INVALID_ANALYTICS_PROVIDER_ID = 2; + + // The provided mobile app ID is invalid. + INVALID_MOBILE_APP_ID = 3; + + // The mobile app corresponding to the provided app ID is not + // active/enabled. + MOBILE_APP_IS_NOT_ENABLED = 4; + + // Regenerating shareable link ID is only allowed on active links + CANNOT_REGENERATE_SHAREABLE_LINK_ID_FOR_REMOVED_LINK = 5; + } + + +} diff --git a/google/ads/googleads/v9/errors/time_zone_error.proto b/google/ads/googleads/v9/errors/time_zone_error.proto new file mode 100644 index 000000000..ec0b7c109 --- /dev/null +++ b/google/ads/googleads/v9/errors/time_zone_error.proto @@ -0,0 +1,47 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "TimeZoneErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing time zone errors. + +// Container for enum describing possible time zone errors. +message TimeZoneErrorEnum { + // Enum describing possible currency code errors. + enum TimeZoneError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Time zone is not valid. + INVALID_TIME_ZONE = 5; + } + + +} diff --git a/google/ads/googleads/v9/errors/url_field_error.proto b/google/ads/googleads/v9/errors/url_field_error.proto new file mode 100644 index 000000000..00171edeb --- /dev/null +++ b/google/ads/googleads/v9/errors/url_field_error.proto @@ -0,0 +1,217 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "UrlFieldErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing url field errors. + +// Container for enum describing possible url field errors. +message UrlFieldErrorEnum { + // Enum describing possible url field errors. + enum UrlFieldError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // The tracking url template is invalid. + INVALID_TRACKING_URL_TEMPLATE = 2; + + // The tracking url template contains invalid tag. + INVALID_TAG_IN_TRACKING_URL_TEMPLATE = 3; + + // The tracking url template must contain at least one tag (e.g. {lpurl}), + // This applies only to tracking url template associated with website ads or + // product ads. + MISSING_TRACKING_URL_TEMPLATE_TAG = 4; + + // The tracking url template must start with a valid protocol (or lpurl + // tag). + MISSING_PROTOCOL_IN_TRACKING_URL_TEMPLATE = 5; + + // The tracking url template starts with an invalid protocol. + INVALID_PROTOCOL_IN_TRACKING_URL_TEMPLATE = 6; + + // The tracking url template contains illegal characters. + MALFORMED_TRACKING_URL_TEMPLATE = 7; + + // The tracking url template must contain a host name (or lpurl tag). + MISSING_HOST_IN_TRACKING_URL_TEMPLATE = 8; + + // The tracking url template has an invalid or missing top level domain + // extension. + INVALID_TLD_IN_TRACKING_URL_TEMPLATE = 9; + + // The tracking url template contains nested occurrences of the same + // conditional tag (i.e. {ifmobile:{ifmobile:x}}). + REDUNDANT_NESTED_TRACKING_URL_TEMPLATE_TAG = 10; + + // The final url is invalid. + INVALID_FINAL_URL = 11; + + // The final url contains invalid tag. + INVALID_TAG_IN_FINAL_URL = 12; + + // The final url contains nested occurrences of the same conditional tag + // (i.e. {ifmobile:{ifmobile:x}}). + REDUNDANT_NESTED_FINAL_URL_TAG = 13; + + // The final url must start with a valid protocol. + MISSING_PROTOCOL_IN_FINAL_URL = 14; + + // The final url starts with an invalid protocol. + INVALID_PROTOCOL_IN_FINAL_URL = 15; + + // The final url contains illegal characters. + MALFORMED_FINAL_URL = 16; + + // The final url must contain a host name. + MISSING_HOST_IN_FINAL_URL = 17; + + // The tracking url template has an invalid or missing top level domain + // extension. + INVALID_TLD_IN_FINAL_URL = 18; + + // The final mobile url is invalid. + INVALID_FINAL_MOBILE_URL = 19; + + // The final mobile url contains invalid tag. + INVALID_TAG_IN_FINAL_MOBILE_URL = 20; + + // The final mobile url contains nested occurrences of the same conditional + // tag (i.e. {ifmobile:{ifmobile:x}}). + REDUNDANT_NESTED_FINAL_MOBILE_URL_TAG = 21; + + // The final mobile url must start with a valid protocol. + MISSING_PROTOCOL_IN_FINAL_MOBILE_URL = 22; + + // The final mobile url starts with an invalid protocol. + INVALID_PROTOCOL_IN_FINAL_MOBILE_URL = 23; + + // The final mobile url contains illegal characters. + MALFORMED_FINAL_MOBILE_URL = 24; + + // The final mobile url must contain a host name. + MISSING_HOST_IN_FINAL_MOBILE_URL = 25; + + // The tracking url template has an invalid or missing top level domain + // extension. + INVALID_TLD_IN_FINAL_MOBILE_URL = 26; + + // The final app url is invalid. + INVALID_FINAL_APP_URL = 27; + + // The final app url contains invalid tag. + INVALID_TAG_IN_FINAL_APP_URL = 28; + + // The final app url contains nested occurrences of the same conditional tag + // (i.e. {ifmobile:{ifmobile:x}}). + REDUNDANT_NESTED_FINAL_APP_URL_TAG = 29; + + // More than one app url found for the same OS type. + MULTIPLE_APP_URLS_FOR_OSTYPE = 30; + + // The OS type given for an app url is not valid. + INVALID_OSTYPE = 31; + + // The protocol given for an app url is not valid. (E.g. "android-app://") + INVALID_PROTOCOL_FOR_APP_URL = 32; + + // The package id (app id) given for an app url is not valid. + INVALID_PACKAGE_ID_FOR_APP_URL = 33; + + // The number of url custom parameters for an resource exceeds the maximum + // limit allowed. + URL_CUSTOM_PARAMETERS_COUNT_EXCEEDS_LIMIT = 34; + + // An invalid character appears in the parameter key. + INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_KEY = 39; + + // An invalid character appears in the parameter value. + INVALID_CHARACTERS_IN_URL_CUSTOM_PARAMETER_VALUE = 40; + + // The url custom parameter value fails url tag validation. + INVALID_TAG_IN_URL_CUSTOM_PARAMETER_VALUE = 41; + + // The custom parameter contains nested occurrences of the same conditional + // tag (i.e. {ifmobile:{ifmobile:x}}). + REDUNDANT_NESTED_URL_CUSTOM_PARAMETER_TAG = 42; + + // The protocol (http:// or https://) is missing. + MISSING_PROTOCOL = 43; + + // Unsupported protocol in URL. Only http and https are supported. + INVALID_PROTOCOL = 52; + + // The url is invalid. + INVALID_URL = 44; + + // Destination Url is deprecated. + DESTINATION_URL_DEPRECATED = 45; + + // The url contains invalid tag. + INVALID_TAG_IN_URL = 46; + + // The url must contain at least one tag (e.g. {lpurl}). + MISSING_URL_TAG = 47; + + // Duplicate url id. + DUPLICATE_URL_ID = 48; + + // Invalid url id. + INVALID_URL_ID = 49; + + // The final url suffix cannot begin with '?' or '&' characters and must be + // a valid query string. + FINAL_URL_SUFFIX_MALFORMED = 50; + + // The final url suffix cannot contain {lpurl} related or {ignore} tags. + INVALID_TAG_IN_FINAL_URL_SUFFIX = 51; + + // The top level domain is invalid, e.g. not a public top level domain + // listed in publicsuffix.org. + INVALID_TOP_LEVEL_DOMAIN = 53; + + // Malformed top level domain in URL. + MALFORMED_TOP_LEVEL_DOMAIN = 54; + + // Malformed URL. + MALFORMED_URL = 55; + + // No host found in URL. + MISSING_HOST = 56; + + // Custom parameter value cannot be null. + NULL_CUSTOM_PARAMETER_VALUE = 57; + + // Track parameter is not supported. + VALUE_TRACK_PARAMETER_NOT_SUPPORTED = 58; + } + + +} diff --git a/google/ads/googleads/v9/errors/user_data_error.proto b/google/ads/googleads/v9/errors/user_data_error.proto new file mode 100644 index 000000000..a9b39d022 --- /dev/null +++ b/google/ads/googleads/v9/errors/user_data_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "UserDataErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing user data errors. + +// Container for enum describing possible user data errors. +message UserDataErrorEnum { + // Enum describing possible request errors. + enum UserDataError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Customer is not allowed to perform operations related to Customer Match. + OPERATIONS_FOR_CUSTOMER_MATCH_NOT_ALLOWED = 2; + + // Maximum number of user identifiers allowed for each mutate is 100. + TOO_MANY_USER_IDENTIFIERS = 3; + + // Current user list is not applicable for the given customer. + USER_LIST_NOT_APPLICABLE = 4; + } + + +} diff --git a/google/ads/googleads/v9/errors/user_list_error.proto b/google/ads/googleads/v9/errors/user_list_error.proto new file mode 100644 index 000000000..01f9a57ef --- /dev/null +++ b/google/ads/googleads/v9/errors/user_list_error.proto @@ -0,0 +1,129 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "UserListErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing user list errors. + +// Container for enum describing possible user list errors. +message UserListErrorEnum { + // Enum describing possible user list errors. + enum UserListError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Creating and updating external remarketing user lists is not supported. + EXTERNAL_REMARKETING_USER_LIST_MUTATE_NOT_SUPPORTED = 2; + + // Concrete type of user list is required. + CONCRETE_TYPE_REQUIRED = 3; + + // Creating/updating user list conversion types requires specifying the + // conversion type Id. + CONVERSION_TYPE_ID_REQUIRED = 4; + + // Remarketing user list cannot have duplicate conversion types. + DUPLICATE_CONVERSION_TYPES = 5; + + // Conversion type is invalid/unknown. + INVALID_CONVERSION_TYPE = 6; + + // User list description is empty or invalid. + INVALID_DESCRIPTION = 7; + + // User list name is empty or invalid. + INVALID_NAME = 8; + + // Type of the UserList does not match. + INVALID_TYPE = 9; + + // Embedded logical user lists are not allowed. + CAN_NOT_ADD_LOGICAL_LIST_AS_LOGICAL_LIST_OPERAND = 10; + + // User list rule operand is invalid. + INVALID_USER_LIST_LOGICAL_RULE_OPERAND = 11; + + // Name is already being used for another user list for the account. + NAME_ALREADY_USED = 12; + + // Name is required when creating a new conversion type. + NEW_CONVERSION_TYPE_NAME_REQUIRED = 13; + + // The given conversion type name has been used. + CONVERSION_TYPE_NAME_ALREADY_USED = 14; + + // Only an owner account may edit a user list. + OWNERSHIP_REQUIRED_FOR_SET = 15; + + // Creating user list without setting type in oneof user_list field, or + // creating/updating read-only user list types is not allowed. + USER_LIST_MUTATE_NOT_SUPPORTED = 16; + + // Rule is invalid. + INVALID_RULE = 17; + + // The specified date range is empty. + INVALID_DATE_RANGE = 27; + + // A UserList which is privacy sensitive or legal rejected cannot be mutated + // by external users. + CAN_NOT_MUTATE_SENSITIVE_USERLIST = 28; + + // Maximum number of rulebased user lists a customer can have. + MAX_NUM_RULEBASED_USERLISTS = 29; + + // BasicUserList's billable record field cannot be modified once it is set. + CANNOT_MODIFY_BILLABLE_RECORD_COUNT = 30; + + // crm_based_user_list.app_id field must be set when upload_key_type is + // MOBILE_ADVERTISING_ID. + APP_ID_NOT_SET = 31; + + // Name of the user list is reserved for system generated lists and cannot + // be used. + USERLIST_NAME_IS_RESERVED_FOR_SYSTEM_LIST = 32; + + // Advertiser needs to be on the allow-list to use remarketing lists created + // from advertiser uploaded data (e.g., Customer Match lists). + ADVERTISER_NOT_ON_ALLOWLIST_FOR_USING_UPLOADED_DATA = 37; + + // The provided rule_type is not supported for the user list. + RULE_TYPE_IS_NOT_SUPPORTED = 34; + + // Similar user list cannot be used as a logical user list operand. + CAN_NOT_ADD_A_SIMILAR_USERLIST_AS_LOGICAL_LIST_OPERAND = 35; + + // Logical user list should not have a mix of CRM based user list and other + // types of lists in its rules. + CAN_NOT_MIX_CRM_BASED_IN_LOGICAL_LIST_WITH_OTHER_LISTS = 36; + } + + +} diff --git a/google/ads/googleads/v9/errors/youtube_video_registration_error.proto b/google/ads/googleads/v9/errors/youtube_video_registration_error.proto new file mode 100644 index 000000000..322eff896 --- /dev/null +++ b/google/ads/googleads/v9/errors/youtube_video_registration_error.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.errors; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Errors"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/errors;errors"; +option java_multiple_files = true; +option java_outer_classname = "YoutubeVideoRegistrationErrorProto"; +option java_package = "com.google.ads.googleads.v9.errors"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Errors"; +option ruby_package = "Google::Ads::GoogleAds::V9::Errors"; + +// Proto file describing YouTube video registration errors. + +// Container for enum describing YouTube video registration errors. +message YoutubeVideoRegistrationErrorEnum { + // Enum describing YouTube video registration errors. + enum YoutubeVideoRegistrationError { + // Enum unspecified. + UNSPECIFIED = 0; + + // The received error code is not known in this version. + UNKNOWN = 1; + + // Video to be registered wasn't found. + VIDEO_NOT_FOUND = 2; + + // Video to be registered is not accessible (e.g. private). + VIDEO_NOT_ACCESSIBLE = 3; + + // Video to be registered is not eligible (e.g. mature content). + VIDEO_NOT_ELIGIBLE = 4; + } + + +} diff --git a/google/ads/googleads/v9/googleads_gapic.yaml b/google/ads/googleads/v9/googleads_gapic.yaml new file mode 100644 index 000000000..2a9f65a14 --- /dev/null +++ b/google/ads/googleads/v9/googleads_gapic.yaml @@ -0,0 +1,26 @@ +type: com.google.api.codegen.ConfigProto +config_schema_version: 2.0.0 +language_settings: + csharp: + package_name: Google.Ads.GoogleAds.V9.Services + go: + package_name: google.golang.org/google/ads/googleads/v9/services + java: + package_name: com.google.ads.googleads.v9.services + nodejs: + package_name: v9.services + php: + package_name: Google\Ads\GoogleAds\V9\Services + python: + package_name: google.ads.googleads_v9.gapic.services + ruby: + package_name: Google::Ads::Googleads::V9::Services +interfaces: +- name: google.ads.googleads.v9.services.OfflineUserDataJobService + methods: + - name: RunOfflineUserDataJob + long_running: + initial_poll_delay_millis: 300000 + max_poll_delay_millis: 3600000 + poll_delay_multiplier: 1.25 + total_poll_timeout_millis: 43200000 diff --git a/google/ads/googleads/v9/googleads_grpc_service_config.json b/google/ads/googleads/v9/googleads_grpc_service_config.json new file mode 100755 index 000000000..f629b75e6 --- /dev/null +++ b/google/ads/googleads/v9/googleads_grpc_service_config.json @@ -0,0 +1,474 @@ +{ + "methodConfig": [ + { + "name": [ + { + "service": "google.ads.googleads.v9.services.AccessibleBiddingStrategyService" + }, + { + "service": "google.ads.googleads.v9.services.AccountBudgetProposalService" + }, + { + "service": "google.ads.googleads.v9.services.AccountBudgetService" + }, + { + "service": "google.ads.googleads.v9.services.AccountLinkService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupAdAssetViewService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupAdLabelService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupAdService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupAssetService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupAudienceViewService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupBidModifierService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupCriterionCustomizerService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupCriterionLabelService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupCriterionService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupCriterionSimulationService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupCustomizerService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupExtensionSettingService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupFeedService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupLabelService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupService" + }, + { + "service": "google.ads.googleads.v9.services.AdGroupSimulationService" + }, + { + "service": "google.ads.googleads.v9.services.AdParameterService" + }, + { + "service": "google.ads.googleads.v9.services.AdScheduleViewService" + }, + { + "service": "google.ads.googleads.v9.services.AdService" + }, + { + "service": "google.ads.googleads.v9.services.AgeRangeViewService" + }, + { + "service": "google.ads.googleads.v9.services.AssetFieldTypeViewService" + }, + { + "service": "google.ads.googleads.v9.services.AssetGroupAssetService" + }, + { + "service": "google.ads.googleads.v9.services.AssetGroupListingGroupFilterService" + }, + { + "service": "google.ads.googleads.v9.services.AssetGroupService" + }, + { + "service": "google.ads.googleads.v9.services.AssetService" + }, + { + "service": "google.ads.googleads.v9.services.AssetSetAssetService" + }, + { + "service": "google.ads.googleads.v9.services.AssetSetService" + }, + { + "service": "google.ads.googleads.v9.services.BatchJobService" + }, + { + "service": "google.ads.googleads.v9.services.BiddingDataExclusionService" + }, + { + "service": "google.ads.googleads.v9.services.BiddingSeasonalityAdjustmentService" + }, + { + "service": "google.ads.googleads.v9.services.BiddingStrategyService" + }, + { + "service": "google.ads.googleads.v9.services.BiddingStrategySimulationService" + }, + { + "service": "google.ads.googleads.v9.services.BillingSetupService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignAssetService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignAssetSetService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignAudienceViewService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignBidModifierService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignBudgetService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignConversionGoalService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignCriterionService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignCriterionSimulationService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignCustomizerService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignDraftService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignExperimentService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignExtensionSettingService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignFeedService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignLabelService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignSharedSetService" + }, + { + "service": "google.ads.googleads.v9.services.CampaignSimulationService" + }, + { + "service": "google.ads.googleads.v9.services.CarrierConstantService" + }, + { + "service": "google.ads.googleads.v9.services.ChangeStatusService" + }, + { + "service": "google.ads.googleads.v9.services.ClickViewService" + }, + { + "service": "google.ads.googleads.v9.services.CombinedAudienceService" + }, + { + "service": "google.ads.googleads.v9.services.ConversionActionService" + }, + { + "service": "google.ads.googleads.v9.services.ConversionAdjustmentUploadService" + }, + { + "service": "google.ads.googleads.v9.services.ConversionCustomVariableService" + }, + { + "service": "google.ads.googleads.v9.services.ConversionGoalCampaignConfigService" + }, + { + "service": "google.ads.googleads.v9.services.ConversionUploadService" + }, + { + "service": "google.ads.googleads.v9.services.ConversionValueRuleService" + }, + { + "service": "google.ads.googleads.v9.services.ConversionValueRuleSetService" + }, + { + "service": "google.ads.googleads.v9.services.CurrencyConstantService" + }, + { + "service": "google.ads.googleads.v9.services.CustomAudienceService" + }, + { + "service": "google.ads.googleads.v9.services.CustomConversionGoalService" + }, + { + "service": "google.ads.googleads.v9.services.CustomInterestService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerAssetService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerClientLinkService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerClientService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerConversionGoalService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerCustomizerService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerExtensionSettingService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerFeedService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerLabelService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerManagerLinkService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerNegativeCriterionService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerUserAccessInvitationService" + }, + { + "service": "google.ads.googleads.v9.services.CustomerUserAccessService" + }, + { + "service": "google.ads.googleads.v9.services.CustomizerAttributeService" + }, + { + "service": "google.ads.googleads.v9.services.DetailPlacementViewService" + }, + { + "service": "google.ads.googleads.v9.services.DetailedDemographicService" + }, + { + "service": "google.ads.googleads.v9.services.DisplayKeywordViewService" + }, + { + "service": "google.ads.googleads.v9.services.DistanceViewService" + }, + { + "service": "google.ads.googleads.v9.services.DomainCategoryService" + }, + { + "service": "google.ads.googleads.v9.services.DynamicSearchAdsSearchTermViewService" + }, + { + "service": "google.ads.googleads.v9.services.ExpandedLandingPageViewService" + }, + { + "service": "google.ads.googleads.v9.services.ExtensionFeedItemService" + }, + { + "service": "google.ads.googleads.v9.services.FeedItemService" + }, + { + "service": "google.ads.googleads.v9.services.FeedItemSetLinkService" + }, + { + "service": "google.ads.googleads.v9.services.FeedItemSetService" + }, + { + "service": "google.ads.googleads.v9.services.FeedItemTargetService" + }, + { + "service": "google.ads.googleads.v9.services.FeedMappingService" + }, + { + "service": "google.ads.googleads.v9.services.FeedPlaceholderViewService" + }, + { + "service": "google.ads.googleads.v9.services.FeedService" + }, + { + "service": "google.ads.googleads.v9.services.GenderViewService" + }, + { + "service": "google.ads.googleads.v9.services.GeoTargetConstantService" + }, + { + "service": "google.ads.googleads.v9.services.GeographicViewService" + }, + { + "service": "google.ads.googleads.v9.services.GoogleAdsFieldService" + }, + { + "service": "google.ads.googleads.v9.services.GoogleAdsService" + }, + { + "service": "google.ads.googleads.v9.services.GroupPlacementViewService" + }, + { + "service": "google.ads.googleads.v9.services.HotelGroupViewService" + }, + { + "service": "google.ads.googleads.v9.services.HotelPerformanceViewService" + }, + { + "service": "google.ads.googleads.v9.services.IncomeRangeViewService" + }, + { + "service": "google.ads.googleads.v9.services.InvoiceService" + }, + { + "service": "google.ads.googleads.v9.services.KeywordPlanAdGroupKeywordService" + }, + { + "service": "google.ads.googleads.v9.services.KeywordPlanAdGroupService" + }, + { + "service": "google.ads.googleads.v9.services.KeywordPlanCampaignKeywordService" + }, + { + "service": "google.ads.googleads.v9.services.KeywordPlanCampaignService" + }, + { + "service": "google.ads.googleads.v9.services.KeywordPlanIdeaService" + }, + { + "service": "google.ads.googleads.v9.services.KeywordPlanService" + }, + { + "service": "google.ads.googleads.v9.services.KeywordThemeConstantService" + }, + { + "service": "google.ads.googleads.v9.services.KeywordViewService" + }, + { + "service": "google.ads.googleads.v9.services.LabelService" + }, + { + "service": "google.ads.googleads.v9.services.LandingPageViewService" + }, + { + "service": "google.ads.googleads.v9.services.LanguageConstantService" + }, + { + "service": "google.ads.googleads.v9.services.LifeEventService" + }, + { + "service": "google.ads.googleads.v9.services.LocationViewService" + }, + { + "service": "google.ads.googleads.v9.services.ManagedPlacementViewService" + }, + { + "service": "google.ads.googleads.v9.services.MediaFileService" + }, + { + "service": "google.ads.googleads.v9.services.MerchantCenterLinkService" + }, + { + "service": "google.ads.googleads.v9.services.MobileAppCategoryConstantService" + }, + { + "service": "google.ads.googleads.v9.services.MobileDeviceConstantService" + }, + { + "service": "google.ads.googleads.v9.services.OfflineUserDataJobService" + }, + { + "service": "google.ads.googleads.v9.services.OperatingSystemVersionConstantService" + }, + { + "service": "google.ads.googleads.v9.services.PaidOrganicSearchTermViewService" + }, + { + "service": "google.ads.googleads.v9.services.ParentalStatusViewService" + }, + { + "service": "google.ads.googleads.v9.services.PaymentsAccountService" + }, + { + "service": "google.ads.googleads.v9.services.ProductBiddingCategoryConstantService" + }, + { + "service": "google.ads.googleads.v9.services.ProductGroupViewService" + }, + { + "service": "google.ads.googleads.v9.services.ReachPlanService" + }, + { + "service": "google.ads.googleads.v9.services.RecommendationService" + }, + { + "service": "google.ads.googleads.v9.services.RemarketingActionService" + }, + { + "service": "google.ads.googleads.v9.services.SearchTermViewService" + }, + { + "service": "google.ads.googleads.v9.services.SharedCriterionService" + }, + { + "service": "google.ads.googleads.v9.services.SharedSetService" + }, + { + "service": "google.ads.googleads.v9.services.ShoppingPerformanceViewService" + }, + { + "service": "google.ads.googleads.v9.services.SmartCampaignSearchTermViewService" + }, + { + "service": "google.ads.googleads.v9.services.SmartCampaignSettingService" + }, + { + "service": "google.ads.googleads.v9.services.SmartCampaignSuggestService" + }, + { + "service": "google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService" + }, + { + "service": "google.ads.googleads.v9.services.TopicConstantService" + }, + { + "service": "google.ads.googleads.v9.services.TopicViewService" + }, + { + "service": "google.ads.googleads.v9.services.UserDataService" + }, + { + "service": "google.ads.googleads.v9.services.UserInterestService" + }, + { + "service": "google.ads.googleads.v9.services.UserListService" + }, + { + "service": "google.ads.googleads.v9.services.UserLocationViewService" + }, + { + "service": "google.ads.googleads.v9.services.VideoService" + }, + { + "service": "google.ads.googleads.v9.services.WebpageViewService" + } + ], + "timeout": "3600s", + "retryPolicy": { + "initialBackoff": "5s", + "maxBackoff": "60s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": [ + "UNAVAILABLE", + "DEADLINE_EXCEEDED" + ] + } + } + ] +} diff --git a/google/ads/googleads/v9/googleads_v9.yaml b/google/ads/googleads/v9/googleads_v9.yaml new file mode 100644 index 000000000..31d9d9240 --- /dev/null +++ b/google/ads/googleads/v9/googleads_v9.yaml @@ -0,0 +1,1514 @@ +type: google.api.Service +config_version: 3 +name: googleads.googleapis.com +title: Google Ads API + +apis: +- name: google.ads.googleads.v9.services.AccessibleBiddingStrategyService +- name: google.ads.googleads.v9.services.AccountBudgetProposalService +- name: google.ads.googleads.v9.services.AccountBudgetService +- name: google.ads.googleads.v9.services.AccountLinkService +- name: google.ads.googleads.v9.services.AdGroupAdAssetViewService +- name: google.ads.googleads.v9.services.AdGroupAdLabelService +- name: google.ads.googleads.v9.services.AdGroupAdService +- name: google.ads.googleads.v9.services.AdGroupAssetService +- name: google.ads.googleads.v9.services.AdGroupAudienceViewService +- name: google.ads.googleads.v9.services.AdGroupBidModifierService +- name: google.ads.googleads.v9.services.AdGroupCriterionCustomizerService +- name: google.ads.googleads.v9.services.AdGroupCriterionLabelService +- name: google.ads.googleads.v9.services.AdGroupCriterionService +- name: google.ads.googleads.v9.services.AdGroupCriterionSimulationService +- name: google.ads.googleads.v9.services.AdGroupCustomizerService +- name: google.ads.googleads.v9.services.AdGroupExtensionSettingService +- name: google.ads.googleads.v9.services.AdGroupFeedService +- name: google.ads.googleads.v9.services.AdGroupLabelService +- name: google.ads.googleads.v9.services.AdGroupService +- name: google.ads.googleads.v9.services.AdGroupSimulationService +- name: google.ads.googleads.v9.services.AdParameterService +- name: google.ads.googleads.v9.services.AdScheduleViewService +- name: google.ads.googleads.v9.services.AdService +- name: google.ads.googleads.v9.services.AgeRangeViewService +- name: google.ads.googleads.v9.services.AssetFieldTypeViewService +- name: google.ads.googleads.v9.services.AssetGroupAssetService +- name: google.ads.googleads.v9.services.AssetGroupListingGroupFilterService +- name: google.ads.googleads.v9.services.AssetGroupService +- name: google.ads.googleads.v9.services.AssetService +- name: google.ads.googleads.v9.services.AssetSetAssetService +- name: google.ads.googleads.v9.services.AssetSetService +- name: google.ads.googleads.v9.services.BatchJobService +- name: google.ads.googleads.v9.services.BiddingDataExclusionService +- name: google.ads.googleads.v9.services.BiddingSeasonalityAdjustmentService +- name: google.ads.googleads.v9.services.BiddingStrategyService +- name: google.ads.googleads.v9.services.BiddingStrategySimulationService +- name: google.ads.googleads.v9.services.BillingSetupService +- name: google.ads.googleads.v9.services.CampaignAssetService +- name: google.ads.googleads.v9.services.CampaignAssetSetService +- name: google.ads.googleads.v9.services.CampaignAudienceViewService +- name: google.ads.googleads.v9.services.CampaignBidModifierService +- name: google.ads.googleads.v9.services.CampaignBudgetService +- name: google.ads.googleads.v9.services.CampaignConversionGoalService +- name: google.ads.googleads.v9.services.CampaignCriterionService +- name: google.ads.googleads.v9.services.CampaignCriterionSimulationService +- name: google.ads.googleads.v9.services.CampaignCustomizerService +- name: google.ads.googleads.v9.services.CampaignDraftService +- name: google.ads.googleads.v9.services.CampaignExperimentService +- name: google.ads.googleads.v9.services.CampaignExtensionSettingService +- name: google.ads.googleads.v9.services.CampaignFeedService +- name: google.ads.googleads.v9.services.CampaignLabelService +- name: google.ads.googleads.v9.services.CampaignService +- name: google.ads.googleads.v9.services.CampaignSharedSetService +- name: google.ads.googleads.v9.services.CampaignSimulationService +- name: google.ads.googleads.v9.services.CarrierConstantService +- name: google.ads.googleads.v9.services.ChangeStatusService +- name: google.ads.googleads.v9.services.ClickViewService +- name: google.ads.googleads.v9.services.CombinedAudienceService +- name: google.ads.googleads.v9.services.ConversionActionService +- name: google.ads.googleads.v9.services.ConversionAdjustmentUploadService +- name: google.ads.googleads.v9.services.ConversionCustomVariableService +- name: google.ads.googleads.v9.services.ConversionGoalCampaignConfigService +- name: google.ads.googleads.v9.services.ConversionUploadService +- name: google.ads.googleads.v9.services.ConversionValueRuleService +- name: google.ads.googleads.v9.services.ConversionValueRuleSetService +- name: google.ads.googleads.v9.services.CurrencyConstantService +- name: google.ads.googleads.v9.services.CustomAudienceService +- name: google.ads.googleads.v9.services.CustomConversionGoalService +- name: google.ads.googleads.v9.services.CustomInterestService +- name: google.ads.googleads.v9.services.CustomerAssetService +- name: google.ads.googleads.v9.services.CustomerClientLinkService +- name: google.ads.googleads.v9.services.CustomerClientService +- name: google.ads.googleads.v9.services.CustomerConversionGoalService +- name: google.ads.googleads.v9.services.CustomerCustomizerService +- name: google.ads.googleads.v9.services.CustomerExtensionSettingService +- name: google.ads.googleads.v9.services.CustomerFeedService +- name: google.ads.googleads.v9.services.CustomerLabelService +- name: google.ads.googleads.v9.services.CustomerManagerLinkService +- name: google.ads.googleads.v9.services.CustomerNegativeCriterionService +- name: google.ads.googleads.v9.services.CustomerService +- name: google.ads.googleads.v9.services.CustomerUserAccessInvitationService +- name: google.ads.googleads.v9.services.CustomerUserAccessService +- name: google.ads.googleads.v9.services.CustomizerAttributeService +- name: google.ads.googleads.v9.services.DetailPlacementViewService +- name: google.ads.googleads.v9.services.DetailedDemographicService +- name: google.ads.googleads.v9.services.DisplayKeywordViewService +- name: google.ads.googleads.v9.services.DistanceViewService +- name: google.ads.googleads.v9.services.DomainCategoryService +- name: google.ads.googleads.v9.services.DynamicSearchAdsSearchTermViewService +- name: google.ads.googleads.v9.services.ExpandedLandingPageViewService +- name: google.ads.googleads.v9.services.ExtensionFeedItemService +- name: google.ads.googleads.v9.services.FeedItemService +- name: google.ads.googleads.v9.services.FeedItemSetLinkService +- name: google.ads.googleads.v9.services.FeedItemSetService +- name: google.ads.googleads.v9.services.FeedItemTargetService +- name: google.ads.googleads.v9.services.FeedMappingService +- name: google.ads.googleads.v9.services.FeedPlaceholderViewService +- name: google.ads.googleads.v9.services.FeedService +- name: google.ads.googleads.v9.services.GenderViewService +- name: google.ads.googleads.v9.services.GeoTargetConstantService +- name: google.ads.googleads.v9.services.GeographicViewService +- name: google.ads.googleads.v9.services.GoogleAdsFieldService +- name: google.ads.googleads.v9.services.GoogleAdsService +- name: google.ads.googleads.v9.services.GroupPlacementViewService +- name: google.ads.googleads.v9.services.HotelGroupViewService +- name: google.ads.googleads.v9.services.HotelPerformanceViewService +- name: google.ads.googleads.v9.services.IncomeRangeViewService +- name: google.ads.googleads.v9.services.InvoiceService +- name: google.ads.googleads.v9.services.KeywordPlanAdGroupKeywordService +- name: google.ads.googleads.v9.services.KeywordPlanAdGroupService +- name: google.ads.googleads.v9.services.KeywordPlanCampaignKeywordService +- name: google.ads.googleads.v9.services.KeywordPlanCampaignService +- name: google.ads.googleads.v9.services.KeywordPlanIdeaService +- name: google.ads.googleads.v9.services.KeywordPlanService +- name: google.ads.googleads.v9.services.KeywordThemeConstantService +- name: google.ads.googleads.v9.services.KeywordViewService +- name: google.ads.googleads.v9.services.LabelService +- name: google.ads.googleads.v9.services.LandingPageViewService +- name: google.ads.googleads.v9.services.LanguageConstantService +- name: google.ads.googleads.v9.services.LifeEventService +- name: google.ads.googleads.v9.services.LocationViewService +- name: google.ads.googleads.v9.services.ManagedPlacementViewService +- name: google.ads.googleads.v9.services.MediaFileService +- name: google.ads.googleads.v9.services.MerchantCenterLinkService +- name: google.ads.googleads.v9.services.MobileAppCategoryConstantService +- name: google.ads.googleads.v9.services.MobileDeviceConstantService +- name: google.ads.googleads.v9.services.OfflineUserDataJobService +- name: google.ads.googleads.v9.services.OperatingSystemVersionConstantService +- name: google.ads.googleads.v9.services.PaidOrganicSearchTermViewService +- name: google.ads.googleads.v9.services.ParentalStatusViewService +- name: google.ads.googleads.v9.services.PaymentsAccountService +- name: google.ads.googleads.v9.services.ProductBiddingCategoryConstantService +- name: google.ads.googleads.v9.services.ProductGroupViewService +- name: google.ads.googleads.v9.services.ReachPlanService +- name: google.ads.googleads.v9.services.RecommendationService +- name: google.ads.googleads.v9.services.RemarketingActionService +- name: google.ads.googleads.v9.services.SearchTermViewService +- name: google.ads.googleads.v9.services.SharedCriterionService +- name: google.ads.googleads.v9.services.SharedSetService +- name: google.ads.googleads.v9.services.ShoppingPerformanceViewService +- name: google.ads.googleads.v9.services.SmartCampaignSearchTermViewService +- name: google.ads.googleads.v9.services.SmartCampaignSettingService +- name: google.ads.googleads.v9.services.SmartCampaignSuggestService +- name: google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService +- name: google.ads.googleads.v9.services.TopicConstantService +- name: google.ads.googleads.v9.services.TopicViewService +- name: google.ads.googleads.v9.services.UserDataService +- name: google.ads.googleads.v9.services.UserInterestService +- name: google.ads.googleads.v9.services.UserListService +- name: google.ads.googleads.v9.services.UserLocationViewService +- name: google.ads.googleads.v9.services.VideoService +- name: google.ads.googleads.v9.services.WebpageViewService + +types: +- name: google.ads.googleads.v9.errors.GoogleAdsFailure +- name: google.ads.googleads.v9.resources.BatchJob.BatchJobMetadata +- name: google.ads.googleads.v9.services.CreateCampaignExperimentMetadata + +documentation: + summary: 'Manage your Google Ads accounts, campaigns, and reports with this API.' + overview: |- + The Google Ads API enables an app to integrate with the Google Ads + platform. You can efficiently retrieve and change your Google Ads data + using the API, making it ideal for managing large or complex accounts and + campaigns. + +backend: + rules: + - selector: google.ads.googleads.v9.services.AccessibleBiddingStrategyService.GetAccessibleBiddingStrategy + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AccountBudgetProposalService.GetAccountBudgetProposal + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AccountBudgetProposalService.MutateAccountBudgetProposal + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AccountBudgetService.GetAccountBudget + deadline: 60.0 + - selector: 'google.ads.googleads.v9.services.AccountLinkService.*' + deadline: 600.0 + - selector: google.ads.googleads.v9.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupAdLabelService.GetAdGroupAdLabel + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupAdLabelService.MutateAdGroupAdLabels + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupAdService.GetAdGroupAd + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupAdService.MutateAdGroupAds + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupAssetService.GetAdGroupAsset + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupAssetService.MutateAdGroupAssets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupAudienceViewService.GetAdGroupAudienceView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupBidModifierService.GetAdGroupBidModifier + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupBidModifierService.MutateAdGroupBidModifiers + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupCriterionCustomizerService.MutateAdGroupCriterionCustomizers + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupCriterionService.GetAdGroupCriterion + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupCriterionService.MutateAdGroupCriteria + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupCustomizerService.MutateAdGroupCustomizers + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupFeedService.GetAdGroupFeed + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupFeedService.MutateAdGroupFeeds + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupLabelService.GetAdGroupLabel + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupLabelService.MutateAdGroupLabels + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupService.GetAdGroup + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupService.MutateAdGroups + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdGroupSimulationService.GetAdGroupSimulation + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdParameterService.GetAdParameter + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdParameterService.MutateAdParameters + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdScheduleViewService.GetAdScheduleView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdService.GetAd + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AdService.MutateAds + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AgeRangeViewService.GetAgeRangeView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AssetFieldTypeViewService.GetAssetFieldTypeView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AssetGroupAssetService.GetAssetGroupAsset + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AssetGroupAssetService.MutateAssetGroupAssets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AssetGroupListingGroupFilterService.MutateAssetGroupListingGroupFilters + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AssetGroupService.GetAssetGroup + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AssetGroupService.MutateAssetGroups + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AssetService.GetAsset + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AssetService.MutateAssets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AssetSetAssetService.MutateAssetSetAssets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.AssetSetService.MutateAssetSets + deadline: 60.0 + - selector: 'google.ads.googleads.v9.services.BatchJobService.*' + deadline: 60.0 + - selector: google.ads.googleads.v9.services.BiddingDataExclusionService.GetBiddingDataExclusion + deadline: 60.0 + - selector: google.ads.googleads.v9.services.BiddingDataExclusionService.MutateBiddingDataExclusions + deadline: 60.0 + - selector: google.ads.googleads.v9.services.BiddingSeasonalityAdjustmentService.GetBiddingSeasonalityAdjustment + deadline: 60.0 + - selector: google.ads.googleads.v9.services.BiddingSeasonalityAdjustmentService.MutateBiddingSeasonalityAdjustments + deadline: 60.0 + - selector: google.ads.googleads.v9.services.BiddingStrategyService.GetBiddingStrategy + deadline: 60.0 + - selector: google.ads.googleads.v9.services.BiddingStrategyService.MutateBiddingStrategies + deadline: 60.0 + - selector: google.ads.googleads.v9.services.BiddingStrategySimulationService.GetBiddingStrategySimulation + deadline: 60.0 + - selector: google.ads.googleads.v9.services.BillingSetupService.GetBillingSetup + deadline: 60.0 + - selector: google.ads.googleads.v9.services.BillingSetupService.MutateBillingSetup + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignAssetService.GetCampaignAsset + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignAssetService.MutateCampaignAssets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignAssetSetService.MutateCampaignAssetSets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignAudienceViewService.GetCampaignAudienceView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignBidModifierService.GetCampaignBidModifier + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignBidModifierService.MutateCampaignBidModifiers + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignBudgetService.GetCampaignBudget + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignBudgetService.MutateCampaignBudgets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignConversionGoalService.MutateCampaignConversionGoals + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignCriterionService.GetCampaignCriterion + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignCriterionService.MutateCampaignCriteria + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignCustomizerService.MutateCampaignCustomizers + deadline: 60.0 + - selector: 'google.ads.googleads.v9.services.CampaignDraftService.*' + deadline: 60.0 + - selector: 'google.ads.googleads.v9.services.CampaignExperimentService.*' + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignExtensionSettingService.GetCampaignExtensionSetting + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignFeedService.GetCampaignFeed + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignFeedService.MutateCampaignFeeds + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignLabelService.GetCampaignLabel + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignLabelService.MutateCampaignLabels + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignService.GetCampaign + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignService.MutateCampaigns + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignSharedSetService.GetCampaignSharedSet + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignSharedSetService.MutateCampaignSharedSets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CampaignSimulationService.GetCampaignSimulation + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CarrierConstantService.GetCarrierConstant + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ChangeStatusService.GetChangeStatus + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ClickViewService.GetClickView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CombinedAudienceService.GetCombinedAudience + deadline: 600.0 + - selector: google.ads.googleads.v9.services.ConversionActionService.GetConversionAction + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ConversionActionService.MutateConversionActions + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ConversionAdjustmentUploadService.UploadConversionAdjustments + deadline: 600.0 + - selector: google.ads.googleads.v9.services.ConversionCustomVariableService.GetConversionCustomVariable + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ConversionCustomVariableService.MutateConversionCustomVariables + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ConversionGoalCampaignConfigService.MutateConversionGoalCampaignConfigs + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ConversionUploadService.UploadCallConversions + deadline: 600.0 + - selector: google.ads.googleads.v9.services.ConversionUploadService.UploadClickConversions + deadline: 600.0 + - selector: google.ads.googleads.v9.services.ConversionValueRuleService.GetConversionValueRule + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ConversionValueRuleService.MutateConversionValueRules + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ConversionValueRuleSetService.GetConversionValueRuleSet + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ConversionValueRuleSetService.MutateConversionValueRuleSets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CurrencyConstantService.GetCurrencyConstant + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomAudienceService.GetCustomAudience + deadline: 600.0 + - selector: google.ads.googleads.v9.services.CustomAudienceService.MutateCustomAudiences + deadline: 600.0 + - selector: google.ads.googleads.v9.services.CustomConversionGoalService.MutateCustomConversionGoals + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomInterestService.GetCustomInterest + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomInterestService.MutateCustomInterests + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerAssetService.GetCustomerAsset + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerAssetService.MutateCustomerAssets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerClientLinkService.GetCustomerClientLink + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerClientLinkService.MutateCustomerClientLink + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerClientService.GetCustomerClient + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerConversionGoalService.MutateCustomerConversionGoals + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerCustomizerService.MutateCustomerCustomizers + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerExtensionSettingService.GetCustomerExtensionSetting + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerFeedService.GetCustomerFeed + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerFeedService.MutateCustomerFeeds + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerLabelService.GetCustomerLabel + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerLabelService.MutateCustomerLabels + deadline: 60.0 + - selector: 'google.ads.googleads.v9.services.CustomerManagerLinkService.*' + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria + deadline: 60.0 + - selector: 'google.ads.googleads.v9.services.CustomerService.*' + deadline: 60.0 + - selector: google.ads.googleads.v9.services.CustomerUserAccessInvitationService.GetCustomerUserAccessInvitation + deadline: 600.0 + - selector: google.ads.googleads.v9.services.CustomerUserAccessInvitationService.MutateCustomerUserAccessInvitation + deadline: 600.0 + - selector: google.ads.googleads.v9.services.CustomerUserAccessService.GetCustomerUserAccess + deadline: 600.0 + - selector: google.ads.googleads.v9.services.CustomerUserAccessService.MutateCustomerUserAccess + deadline: 600.0 + - selector: google.ads.googleads.v9.services.CustomizerAttributeService.MutateCustomizerAttributes + deadline: 60.0 + - selector: google.ads.googleads.v9.services.DetailPlacementViewService.GetDetailPlacementView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.DetailedDemographicService.GetDetailedDemographic + deadline: 60.0 + - selector: google.ads.googleads.v9.services.DisplayKeywordViewService.GetDisplayKeywordView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.DistanceViewService.GetDistanceView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.DomainCategoryService.GetDomainCategory + deadline: 60.0 + - selector: google.ads.googleads.v9.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ExpandedLandingPageViewService.GetExpandedLandingPageView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ExtensionFeedItemService.GetExtensionFeedItem + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ExtensionFeedItemService.MutateExtensionFeedItems + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedItemService.GetFeedItem + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedItemService.MutateFeedItems + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedItemSetLinkService.GetFeedItemSetLink + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedItemSetLinkService.MutateFeedItemSetLinks + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedItemSetService.GetFeedItemSet + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedItemSetService.MutateFeedItemSets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedItemTargetService.GetFeedItemTarget + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedItemTargetService.MutateFeedItemTargets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedMappingService.GetFeedMapping + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedMappingService.MutateFeedMappings + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedPlaceholderViewService.GetFeedPlaceholderView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedService.GetFeed + deadline: 60.0 + - selector: google.ads.googleads.v9.services.FeedService.MutateFeeds + deadline: 60.0 + - selector: google.ads.googleads.v9.services.GenderViewService.GetGenderView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.GeoTargetConstantService.GetGeoTargetConstant + deadline: 60.0 + - selector: google.ads.googleads.v9.services.GeoTargetConstantService.SuggestGeoTargetConstants + deadline: 60.0 + - selector: google.ads.googleads.v9.services.GeographicViewService.GetGeographicView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.GoogleAdsFieldService.GetGoogleAdsField + deadline: 600.0 + - selector: google.ads.googleads.v9.services.GoogleAdsFieldService.SearchGoogleAdsFields + deadline: 600.0 + - selector: google.ads.googleads.v9.services.GoogleAdsService.Mutate + deadline: 600.0 + - selector: google.ads.googleads.v9.services.GoogleAdsService.Search + deadline: 3600.0 + - selector: google.ads.googleads.v9.services.GoogleAdsService.SearchStream + deadline: 3600.0 + - selector: google.ads.googleads.v9.services.GroupPlacementViewService.GetGroupPlacementView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.HotelGroupViewService.GetHotelGroupView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.HotelPerformanceViewService.GetHotelPerformanceView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.IncomeRangeViewService.GetIncomeRangeView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.InvoiceService.ListInvoices + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordPlanCampaignService.GetKeywordPlanCampaign + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordPlanIdeaService.GenerateKeywordIdeas + deadline: 600.0 + - selector: 'google.ads.googleads.v9.services.KeywordPlanService.*' + deadline: 600.0 + - selector: google.ads.googleads.v9.services.KeywordPlanService.GetKeywordPlan + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordPlanService.MutateKeywordPlans + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordThemeConstantService.GetKeywordThemeConstant + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordThemeConstantService.SuggestKeywordThemeConstants + deadline: 60.0 + - selector: google.ads.googleads.v9.services.KeywordViewService.GetKeywordView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.LabelService.GetLabel + deadline: 60.0 + - selector: google.ads.googleads.v9.services.LabelService.MutateLabels + deadline: 60.0 + - selector: google.ads.googleads.v9.services.LandingPageViewService.GetLandingPageView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.LanguageConstantService.GetLanguageConstant + deadline: 60.0 + - selector: google.ads.googleads.v9.services.LifeEventService.GetLifeEvent + deadline: 60.0 + - selector: google.ads.googleads.v9.services.LocationViewService.GetLocationView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ManagedPlacementViewService.GetManagedPlacementView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.MediaFileService.GetMediaFile + deadline: 60.0 + - selector: google.ads.googleads.v9.services.MediaFileService.MutateMediaFiles + deadline: 60.0 + - selector: 'google.ads.googleads.v9.services.MerchantCenterLinkService.*' + deadline: 60.0 + - selector: google.ads.googleads.v9.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant + deadline: 60.0 + - selector: google.ads.googleads.v9.services.MobileDeviceConstantService.GetMobileDeviceConstant + deadline: 60.0 + - selector: 'google.ads.googleads.v9.services.OfflineUserDataJobService.*' + deadline: 600.0 + - selector: google.ads.googleads.v9.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant + deadline: 60.0 + - selector: google.ads.googleads.v9.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ParentalStatusViewService.GetParentalStatusView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.PaymentsAccountService.ListPaymentsAccounts + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ProductGroupViewService.GetProductGroupView + deadline: 60.0 + - selector: 'google.ads.googleads.v9.services.ReachPlanService.*' + deadline: 600.0 + - selector: 'google.ads.googleads.v9.services.RecommendationService.*' + deadline: 600.0 + - selector: google.ads.googleads.v9.services.RemarketingActionService.GetRemarketingAction + deadline: 60.0 + - selector: google.ads.googleads.v9.services.RemarketingActionService.MutateRemarketingActions + deadline: 60.0 + - selector: google.ads.googleads.v9.services.SearchTermViewService.GetSearchTermView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.SharedCriterionService.GetSharedCriterion + deadline: 60.0 + - selector: google.ads.googleads.v9.services.SharedCriterionService.MutateSharedCriteria + deadline: 60.0 + - selector: google.ads.googleads.v9.services.SharedSetService.GetSharedSet + deadline: 60.0 + - selector: google.ads.googleads.v9.services.SharedSetService.MutateSharedSets + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ShoppingPerformanceViewService.GetShoppingPerformanceView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.SmartCampaignSearchTermViewService.GetSmartCampaignSearchTermView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.SmartCampaignSettingService.GetSmartCampaignSetting + deadline: 60.0 + - selector: google.ads.googleads.v9.services.SmartCampaignSettingService.MutateSmartCampaignSettings + deadline: 60.0 + - selector: 'google.ads.googleads.v9.services.SmartCampaignSuggestService.*' + deadline: 60.0 + - selector: google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink + deadline: 600.0 + - selector: google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId + deadline: 600.0 + - selector: google.ads.googleads.v9.services.TopicConstantService.GetTopicConstant + deadline: 60.0 + - selector: google.ads.googleads.v9.services.TopicViewService.GetTopicView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.UserDataService.UploadUserData + deadline: 600.0 + - selector: google.ads.googleads.v9.services.UserInterestService.GetUserInterest + deadline: 60.0 + - selector: google.ads.googleads.v9.services.UserListService.GetUserList + deadline: 60.0 + - selector: google.ads.googleads.v9.services.UserListService.MutateUserLists + deadline: 60.0 + - selector: google.ads.googleads.v9.services.UserLocationViewService.GetUserLocationView + deadline: 60.0 + - selector: google.ads.googleads.v9.services.VideoService.GetVideo + deadline: 60.0 + - selector: google.ads.googleads.v9.services.WebpageViewService.GetWebpageView + deadline: 60.0 + - selector: 'google.longrunning.Operations.*' + deadline: 60.0 + +http: + rules: + - selector: google.longrunning.Operations.CancelOperation + post: '/v9/{name=customers/*/operations/*}:cancel' + body: '*' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/v9/{name=customers/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/v9/{name=customers/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v9/{name=customers/*/operations}' + - selector: google.longrunning.Operations.WaitOperation + post: '/v9/{name=customers/*/operations/*}:wait' + body: '*' + +authentication: + rules: + - selector: google.ads.googleads.v9.services.AccessibleBiddingStrategyService.GetAccessibleBiddingStrategy + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AccountBudgetProposalService.GetAccountBudgetProposal + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AccountBudgetProposalService.MutateAccountBudgetProposal + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AccountBudgetService.GetAccountBudget + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.AccountLinkService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupAdLabelService.GetAdGroupAdLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupAdLabelService.MutateAdGroupAdLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupAdService.GetAdGroupAd + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupAdService.MutateAdGroupAds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupAssetService.GetAdGroupAsset + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupAssetService.MutateAdGroupAssets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupAudienceViewService.GetAdGroupAudienceView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupBidModifierService.GetAdGroupBidModifier + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupBidModifierService.MutateAdGroupBidModifiers + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupCriterionCustomizerService.MutateAdGroupCriterionCustomizers + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupCriterionService.GetAdGroupCriterion + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupCriterionService.MutateAdGroupCriteria + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupCustomizerService.MutateAdGroupCustomizers + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupFeedService.GetAdGroupFeed + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupFeedService.MutateAdGroupFeeds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupLabelService.GetAdGroupLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupLabelService.MutateAdGroupLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupService.GetAdGroup + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupService.MutateAdGroups + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdGroupSimulationService.GetAdGroupSimulation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdParameterService.GetAdParameter + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdParameterService.MutateAdParameters + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdScheduleViewService.GetAdScheduleView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdService.GetAd + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AdService.MutateAds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AgeRangeViewService.GetAgeRangeView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AssetFieldTypeViewService.GetAssetFieldTypeView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AssetGroupAssetService.GetAssetGroupAsset + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AssetGroupAssetService.MutateAssetGroupAssets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AssetGroupListingGroupFilterService.MutateAssetGroupListingGroupFilters + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AssetGroupService.GetAssetGroup + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AssetGroupService.MutateAssetGroups + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AssetService.GetAsset + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AssetService.MutateAssets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AssetSetAssetService.MutateAssetSetAssets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.AssetSetService.MutateAssetSets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.BatchJobService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.BiddingDataExclusionService.GetBiddingDataExclusion + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.BiddingDataExclusionService.MutateBiddingDataExclusions + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.BiddingSeasonalityAdjustmentService.GetBiddingSeasonalityAdjustment + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.BiddingSeasonalityAdjustmentService.MutateBiddingSeasonalityAdjustments + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.BiddingStrategyService.GetBiddingStrategy + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.BiddingStrategyService.MutateBiddingStrategies + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.BiddingStrategySimulationService.GetBiddingStrategySimulation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.BillingSetupService.GetBillingSetup + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.BillingSetupService.MutateBillingSetup + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignAssetService.GetCampaignAsset + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignAssetService.MutateCampaignAssets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignAssetSetService.MutateCampaignAssetSets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignAudienceViewService.GetCampaignAudienceView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignBidModifierService.GetCampaignBidModifier + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignBidModifierService.MutateCampaignBidModifiers + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignBudgetService.GetCampaignBudget + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignBudgetService.MutateCampaignBudgets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignConversionGoalService.MutateCampaignConversionGoals + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignCriterionService.GetCampaignCriterion + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignCriterionService.MutateCampaignCriteria + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignCustomizerService.MutateCampaignCustomizers + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.CampaignDraftService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.CampaignExperimentService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignExtensionSettingService.GetCampaignExtensionSetting + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignFeedService.GetCampaignFeed + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignFeedService.MutateCampaignFeeds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignLabelService.GetCampaignLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignLabelService.MutateCampaignLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignService.GetCampaign + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignService.MutateCampaigns + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignSharedSetService.GetCampaignSharedSet + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignSharedSetService.MutateCampaignSharedSets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CampaignSimulationService.GetCampaignSimulation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CarrierConstantService.GetCarrierConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ChangeStatusService.GetChangeStatus + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ClickViewService.GetClickView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CombinedAudienceService.GetCombinedAudience + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionActionService.GetConversionAction + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionActionService.MutateConversionActions + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionAdjustmentUploadService.UploadConversionAdjustments + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionCustomVariableService.GetConversionCustomVariable + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionCustomVariableService.MutateConversionCustomVariables + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionGoalCampaignConfigService.MutateConversionGoalCampaignConfigs + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionUploadService.UploadCallConversions + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionUploadService.UploadClickConversions + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionValueRuleService.GetConversionValueRule + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionValueRuleService.MutateConversionValueRules + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionValueRuleSetService.GetConversionValueRuleSet + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ConversionValueRuleSetService.MutateConversionValueRuleSets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CurrencyConstantService.GetCurrencyConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomAudienceService.GetCustomAudience + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomAudienceService.MutateCustomAudiences + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomConversionGoalService.MutateCustomConversionGoals + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomInterestService.GetCustomInterest + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomInterestService.MutateCustomInterests + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerAssetService.GetCustomerAsset + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerAssetService.MutateCustomerAssets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerClientLinkService.GetCustomerClientLink + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerClientLinkService.MutateCustomerClientLink + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerClientService.GetCustomerClient + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerConversionGoalService.MutateCustomerConversionGoals + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerCustomizerService.MutateCustomerCustomizers + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerExtensionSettingService.GetCustomerExtensionSetting + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerFeedService.GetCustomerFeed + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerFeedService.MutateCustomerFeeds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerLabelService.GetCustomerLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerLabelService.MutateCustomerLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.CustomerManagerLinkService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.CustomerService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerUserAccessInvitationService.GetCustomerUserAccessInvitation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerUserAccessInvitationService.MutateCustomerUserAccessInvitation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerUserAccessService.GetCustomerUserAccess + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomerUserAccessService.MutateCustomerUserAccess + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.CustomizerAttributeService.MutateCustomizerAttributes + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.DetailPlacementViewService.GetDetailPlacementView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.DetailedDemographicService.GetDetailedDemographic + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.DisplayKeywordViewService.GetDisplayKeywordView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.DistanceViewService.GetDistanceView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.DomainCategoryService.GetDomainCategory + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ExpandedLandingPageViewService.GetExpandedLandingPageView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ExtensionFeedItemService.GetExtensionFeedItem + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ExtensionFeedItemService.MutateExtensionFeedItems + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedItemService.GetFeedItem + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedItemService.MutateFeedItems + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedItemSetLinkService.GetFeedItemSetLink + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedItemSetLinkService.MutateFeedItemSetLinks + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedItemSetService.GetFeedItemSet + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedItemSetService.MutateFeedItemSets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedItemTargetService.GetFeedItemTarget + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedItemTargetService.MutateFeedItemTargets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedMappingService.GetFeedMapping + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedMappingService.MutateFeedMappings + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedPlaceholderViewService.GetFeedPlaceholderView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedService.GetFeed + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.FeedService.MutateFeeds + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.GenderViewService.GetGenderView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.GeoTargetConstantService.GetGeoTargetConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.GeoTargetConstantService.SuggestGeoTargetConstants + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.GeographicViewService.GetGeographicView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.GoogleAdsFieldService.GetGoogleAdsField + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.GoogleAdsFieldService.SearchGoogleAdsFields + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.GoogleAdsService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.GroupPlacementViewService.GetGroupPlacementView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.HotelGroupViewService.GetHotelGroupView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.HotelPerformanceViewService.GetHotelPerformanceView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.IncomeRangeViewService.GetIncomeRangeView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.InvoiceService.ListInvoices + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordPlanCampaignService.GetKeywordPlanCampaign + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordPlanIdeaService.GenerateKeywordIdeas + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.KeywordPlanService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordThemeConstantService.GetKeywordThemeConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordThemeConstantService.SuggestKeywordThemeConstants + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.KeywordViewService.GetKeywordView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.LabelService.GetLabel + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.LabelService.MutateLabels + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.LandingPageViewService.GetLandingPageView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.LanguageConstantService.GetLanguageConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.LifeEventService.GetLifeEvent + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.LocationViewService.GetLocationView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ManagedPlacementViewService.GetManagedPlacementView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.MediaFileService.GetMediaFile + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.MediaFileService.MutateMediaFiles + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.MerchantCenterLinkService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.MobileDeviceConstantService.GetMobileDeviceConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.OfflineUserDataJobService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ParentalStatusViewService.GetParentalStatusView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.PaymentsAccountService.ListPaymentsAccounts + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ProductGroupViewService.GetProductGroupView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.ReachPlanService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.RecommendationService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.RemarketingActionService.GetRemarketingAction + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.RemarketingActionService.MutateRemarketingActions + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.SearchTermViewService.GetSearchTermView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.SharedCriterionService.GetSharedCriterion + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.SharedCriterionService.MutateSharedCriteria + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.SharedSetService.GetSharedSet + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.SharedSetService.MutateSharedSets + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ShoppingPerformanceViewService.GetShoppingPerformanceView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.SmartCampaignSearchTermViewService.GetSmartCampaignSearchTermView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.SmartCampaignSettingService.GetSmartCampaignSetting + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.SmartCampaignSettingService.MutateSmartCampaignSettings + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.ads.googleads.v9.services.SmartCampaignSuggestService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.TopicConstantService.GetTopicConstant + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.TopicViewService.GetTopicView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.UserDataService.UploadUserData + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.UserInterestService.GetUserInterest + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.UserListService.GetUserList + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.UserListService.MutateUserLists + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.UserLocationViewService.GetUserLocationView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.VideoService.GetVideo + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: google.ads.googleads.v9.services.WebpageViewService.GetWebpageView + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords + - selector: 'google.longrunning.Operations.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/adwords diff --git a/google/ads/googleads/v9/resources/BUILD.bazel b/google/ads/googleads/v9/resources/BUILD.bazel new file mode 100644 index 000000000..e0837a2fc --- /dev/null +++ b/google/ads/googleads/v9/resources/BUILD.bazel @@ -0,0 +1,97 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") + +# TODO(ohren): Change srcs to use an enumeration of each individual proto +# instead of *.proto globbing once the build file generator supports +# subpackages. +proto_library( + name = "resources_proto", + srcs = glob(["*.proto"]), + deps = [ + "//google/ads/googleads/v9/common:common_proto", + "//google/ads/googleads/v9/enums:enums_proto", + "//google/ads/googleads/v9/errors:errors_proto", + "//google/api:annotations_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "@com_google_protobuf//:field_mask_proto", + "@com_google_protobuf//:wrappers_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_proto_library", +) + +java_proto_library( + name = "resources_java_proto", + deps = [":resources_proto"], +) + +############################################################################## +# PHP +############################################################################## + +# PHP targets are in the parent directory's BUILD.bazel file to facilitate +# aggregating metadata using a single underlying call to protoc. + +############################################################################## +# C# +############################################################################## +load( + "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", + "csharp_proto_library", +) + +csharp_proto_library( + name = "resources_csharp_proto", + deps = [":resources_proto"], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", + "ruby_proto_library", +) + +ruby_proto_library( + name = "resources_ruby_proto", + deps = [":resources_proto"], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_proto_library", +) + +py_proto_library( + name = "resources_py_proto", + deps = [":resources_proto"], +) diff --git a/google/ads/googleads/v9/resources/accessible_bidding_strategy.proto b/google/ads/googleads/v9/resources/accessible_bidding_strategy.proto new file mode 100644 index 000000000..434e8f757 --- /dev/null +++ b/google/ads/googleads/v9/resources/accessible_bidding_strategy.proto @@ -0,0 +1,172 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/bidding_strategy_type.proto"; +import "google/ads/googleads/v9/enums/target_impression_share_location.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AccessibleBiddingStrategyProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Represents a view of BiddingStrategies owned by and shared with the customer. +// +// In contrast to BiddingStrategy, this resource includes strategies owned by +// managers of the customer and shared with this customer - in addition to +// strategies owned by this customer. This resource does not provide metrics and +// only exposes a limited subset of the BiddingStrategy attributes. +message AccessibleBiddingStrategy { + option (google.api.resource) = { + type: "googleads.googleapis.com/AccessibleBiddingStrategy" + pattern: "customers/{customer_id}/accessibleBiddingStrategies/{bidding_strategy_id}" + }; + + // An automated bidding strategy to help get the most conversion value for + // your campaigns while spending your budget. + message MaximizeConversionValue { + // Output only. The target return on ad spend (ROAS) option. If set, the bid strategy + // will maximize revenue while averaging the target return on ad spend. If + // the target ROAS is high, the bid strategy may not be able to spend the + // full budget. If the target ROAS is not set, the bid strategy will aim to + // achieve the highest possible ROAS for the budget. + double target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // An automated bidding strategy to help get the most conversions for your + // campaigns while spending your budget. + message MaximizeConversions { + // Output only. The target cost per acquisition (CPA) option. This is the average amount + // that you would like to spend per acquisition. + int64 target_cpa = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // An automated bidding strategy that helps you maximize revenue while + // averaging a specific target return on ad spend (ROAS). + message TargetRoas { + // Output only. The desired revenue (based on conversion data) per unit of spend. + optional double target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // An automated bid strategy that sets bids to help get as many conversions as + // possible at the target cost-per-acquisition (CPA) you set. + message TargetCpa { + // Output only. Average CPA target. + // This target should be greater than or equal to minimum billable unit + // based on the currency for the account. + optional int64 target_cpa_micros = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // An automated bidding strategy that sets bids so that a certain percentage + // of search ads are shown at the top of the first page (or other targeted + // location). + message TargetImpressionShare { + // Output only. The targeted location on the search results page. + google.ads.googleads.v9.enums.TargetImpressionShareLocationEnum.TargetImpressionShareLocation location = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The desired fraction of ads to be shown in the targeted location in + // micros. E.g. 1% equals 10,000. + optional int64 location_fraction_micros = 2; + + // Output only. The highest CPC bid the automated bidding system is permitted to specify. + // This is a required field entered by the advertiser that sets the ceiling + // and specified in local micros. + optional int64 cpc_bid_ceiling_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // An automated bid strategy that sets your bids to help get as many clicks + // as possible within your budget. + message TargetSpend { + // Output only. The spend target under which to maximize clicks. + // A TargetSpend bidder will attempt to spend the smaller of this value + // or the natural throttling spend amount. + // If not specified, the budget is used as the spend target. + // This field is deprecated and should no longer be used. See + // https://ads-developers.googleblog.com/2020/05/reminder-about-sunset-creation-of.html + // for details. + optional int64 target_spend_micros = 1 [ + deprecated = true, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + + // Output only. Maximum bid limit that can be set by the bid strategy. + // The limit applies to all keywords managed by the strategy. + optional int64 cpc_bid_ceiling_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. The resource name of the accessible bidding strategy. + // AccessibleBiddingStrategy resource names have the form: + // + // `customers/{customer_id}/accessibleBiddingStrategies/{bidding_strategy_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccessibleBiddingStrategy" + } + ]; + + // Output only. The ID of the bidding strategy. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the bidding strategy. + string name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the bidding strategy. + google.ads.googleads.v9.enums.BiddingStrategyTypeEnum.BiddingStrategyType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ID of the Customer which owns the bidding strategy. + int64 owner_customer_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. descriptive_name of the Customer which owns the bidding strategy. + string owner_descriptive_name = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The bidding scheme. + // + // Only one can be set. + oneof scheme { + // Output only. An automated bidding strategy to help get the most conversion value for + // your campaigns while spending your budget. + MaximizeConversionValue maximize_conversion_value = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. An automated bidding strategy to help get the most conversions for your + // campaigns while spending your budget. + MaximizeConversions maximize_conversions = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A bidding strategy that sets bids to help get as many conversions as + // possible at the target cost-per-acquisition (CPA) you set. + TargetCpa target_cpa = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A bidding strategy that automatically optimizes towards a desired + // percentage of impressions. + TargetImpressionShare target_impression_share = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A bidding strategy that helps you maximize revenue while averaging a + // specific target Return On Ad Spend (ROAS). + TargetRoas target_roas = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A bid strategy that sets your bids to help get as many clicks as + // possible within your budget. + TargetSpend target_spend = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v9/resources/account_budget.proto b/google/ads/googleads/v9/resources/account_budget.proto new file mode 100644 index 000000000..02249cb1b --- /dev/null +++ b/google/ads/googleads/v9/resources/account_budget.proto @@ -0,0 +1,252 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/account_budget_proposal_type.proto"; +import "google/ads/googleads/v9/enums/account_budget_status.proto"; +import "google/ads/googleads/v9/enums/spending_limit_type.proto"; +import "google/ads/googleads/v9/enums/time_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the AccountBudget resource. + +// An account-level budget. It contains information about the budget itself, +// as well as the most recently approved changes to the budget and proposed +// changes that are pending approval. The proposed changes that are pending +// approval, if any, are found in 'pending_proposal'. Effective details about +// the budget are found in fields prefixed 'approved_', 'adjusted_' and those +// without a prefix. Since some effective details may differ from what the user +// had originally requested (e.g. spending limit), these differences are +// juxtaposed via 'proposed_', 'approved_', and possibly 'adjusted_' fields. +// +// This resource is mutated using AccountBudgetProposal and cannot be mutated +// directly. A budget may have at most one pending proposal at any given time. +// It is read through pending_proposal. +// +// Once approved, a budget may be subject to adjustments, such as credit +// adjustments. Adjustments create differences between the 'approved' and +// 'adjusted' fields, which would otherwise be identical. +message AccountBudget { + option (google.api.resource) = { + type: "googleads.googleapis.com/AccountBudget" + pattern: "customers/{customer_id}/accountBudgets/{account_budget_id}" + }; + + // A pending proposal associated with the enclosing account-level budget, + // if applicable. + message PendingAccountBudgetProposal { + // Output only. The resource name of the proposal. + // AccountBudgetProposal resource names have the form: + // + // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` + optional string account_budget_proposal = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudgetProposal" + } + ]; + + // Output only. The type of this proposal, e.g. END to end the budget associated + // with this proposal. + google.ads.googleads.v9.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name to assign to the account-level budget. + optional string name = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The start time in yyyy-MM-dd HH:mm:ss format. + optional string start_date_time = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A purchase order number is a value that helps users reference this budget + // in their monthly invoices. + optional string purchase_order_number = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Notes associated with this budget. + optional string notes = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when this account-level budget proposal was created. + // Formatted as yyyy-MM-dd HH:mm:ss. + optional string creation_date_time = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The end time of the account-level budget. + oneof end_time { + // Output only. The end time in yyyy-MM-dd HH:mm:ss format. + string end_date_time = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The end time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v9.enums.TimeTypeEnum.TimeType end_time_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The spending limit. + oneof spending_limit { + // Output only. The spending limit in micros. One million is equivalent to + // one unit. + int64 spending_limit_micros = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v9.enums.SpendingLimitTypeEnum.SpendingLimitType spending_limit_type = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + } + + // Output only. The resource name of the account-level budget. + // AccountBudget resource names have the form: + // + // `customers/{customer_id}/accountBudgets/{account_budget_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudget" + } + ]; + + // Output only. The ID of the account-level budget. + optional int64 id = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the billing setup associated with this account-level + // budget. BillingSetup resource names have the form: + // + // `customers/{customer_id}/billingSetups/{billing_setup_id}` + optional string billing_setup = 24 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BillingSetup" + } + ]; + + // Output only. The status of this account-level budget. + google.ads.googleads.v9.enums.AccountBudgetStatusEnum.AccountBudgetStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the account-level budget. + optional string name = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The proposed start time of the account-level budget in + // yyyy-MM-dd HH:mm:ss format. If a start time type of NOW was proposed, + // this is the time of request. + optional string proposed_start_date_time = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The approved start time of the account-level budget in yyyy-MM-dd HH:mm:ss + // format. + // + // For example, if a new budget is approved after the proposed start time, + // the approved start time is the time of approval. + optional string approved_start_date_time = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total adjustments amount. + // + // An example of an adjustment is courtesy credits. + int64 total_adjustments_micros = 33 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The value of Ads that have been served, in micros. + // + // This includes overdelivery costs, in which case a credit might be + // automatically applied to the budget (see total_adjustments_micros). + int64 amount_served_micros = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A purchase order number is a value that helps users reference this budget + // in their monthly invoices. + optional string purchase_order_number = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Notes associated with the budget. + optional string notes = 36 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The pending proposal to modify this budget, if applicable. + PendingAccountBudgetProposal pending_proposal = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The proposed end time of the account-level budget. + oneof proposed_end_time { + // Output only. The proposed end time in yyyy-MM-dd HH:mm:ss format. + string proposed_end_date_time = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The proposed end time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v9.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The approved end time of the account-level budget. + // + // For example, if a budget's end time is updated and the proposal is approved + // after the proposed end time, the approved end time is the time of approval. + oneof approved_end_time { + // Output only. The approved end time in yyyy-MM-dd HH:mm:ss format. + string approved_end_date_time = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The approved end time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v9.enums.TimeTypeEnum.TimeType approved_end_time_type = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The proposed spending limit. + oneof proposed_spending_limit { + // Output only. The proposed spending limit in micros. One million is equivalent to + // one unit. + int64 proposed_spending_limit_micros = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The proposed spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v9.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The approved spending limit. + // + // For example, if the amount already spent by the account exceeds the + // proposed spending limit at the time the proposal is approved, the approved + // spending limit is set to the amount already spent. + oneof approved_spending_limit { + // Output only. The approved spending limit in micros. One million is equivalent to + // one unit. This will only be populated if the proposed spending limit + // is finite, and will always be greater than or equal to the + // proposed spending limit. + int64 approved_spending_limit_micros = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The approved spending limit as a well-defined type, e.g. INFINITE. This + // will only be populated if the approved spending limit is INFINITE. + google.ads.googleads.v9.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The spending limit after adjustments have been applied. Adjustments are + // stored in total_adjustments_micros. + // + // This value has the final say on how much the account is allowed to spend. + oneof adjusted_spending_limit { + // Output only. The adjusted spending limit in micros. One million is equivalent to + // one unit. + // + // If the approved spending limit is finite, the adjusted + // spending limit may vary depending on the types of adjustments applied + // to this budget, if applicable. + // + // The different kinds of adjustments are described here: + // https://support.google.com/google-ads/answer/1704323 + // + // For example, a debit adjustment reduces how much the account is + // allowed to spend. + int64 adjusted_spending_limit_micros = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The adjusted spending limit as a well-defined type, e.g. INFINITE. + // This will only be populated if the adjusted spending limit is INFINITE, + // which is guaranteed to be true if the approved spending limit is + // INFINITE. + google.ads.googleads.v9.enums.SpendingLimitTypeEnum.SpendingLimitType adjusted_spending_limit_type = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v9/resources/account_budget_proposal.proto b/google/ads/googleads/v9/resources/account_budget_proposal.proto new file mode 100644 index 000000000..a581bf59b --- /dev/null +++ b/google/ads/googleads/v9/resources/account_budget_proposal.proto @@ -0,0 +1,160 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/account_budget_proposal_status.proto"; +import "google/ads/googleads/v9/enums/account_budget_proposal_type.proto"; +import "google/ads/googleads/v9/enums/spending_limit_type.proto"; +import "google/ads/googleads/v9/enums/time_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProposalProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the AccountBudgetProposal resource. + +// An account-level budget proposal. +// +// All fields prefixed with 'proposed' may not necessarily be applied directly. +// For example, proposed spending limits may be adjusted before their +// application. This is true if the 'proposed' field has an 'approved' +// counterpart, e.g. spending limits. +// +// Please note that the proposal type (proposal_type) changes which fields are +// required and which must remain empty. +message AccountBudgetProposal { + option (google.api.resource) = { + type: "googleads.googleapis.com/AccountBudgetProposal" + pattern: "customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}" + }; + + // Immutable. The resource name of the proposal. + // AccountBudgetProposal resource names have the form: + // + // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudgetProposal" + } + ]; + + // Output only. The ID of the proposal. + optional int64 id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The resource name of the billing setup associated with this proposal. + optional string billing_setup = 26 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BillingSetup" + } + ]; + + // Immutable. The resource name of the account-level budget associated with this + // proposal. + optional string account_budget = 27 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudget" + } + ]; + + // Immutable. The type of this proposal, e.g. END to end the budget associated with this + // proposal. + google.ads.googleads.v9.enums.AccountBudgetProposalTypeEnum.AccountBudgetProposalType proposal_type = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The status of this proposal. + // When a new proposal is created, the status defaults to PENDING. + google.ads.googleads.v9.enums.AccountBudgetProposalStatusEnum.AccountBudgetProposalStatus status = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The name to assign to the account-level budget. + optional string proposed_name = 28 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The approved start date time in yyyy-mm-dd hh:mm:ss format. + optional string approved_start_date_time = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. A purchase order number is a value that enables the user to help them + // reference this budget in their monthly invoices. + optional string proposed_purchase_order_number = 35 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Notes associated with this budget. + optional string proposed_notes = 36 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The date time when this account-level budget proposal was created, which is + // not the same as its approval date time, if applicable. + optional string creation_date_time = 37 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The date time when this account-level budget was approved, if applicable. + optional string approval_date_time = 38 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The proposed start date time of the account-level budget, which cannot be + // in the past. + oneof proposed_start_time { + // Immutable. The proposed start date time in yyyy-mm-dd hh:mm:ss format. + string proposed_start_date_time = 29 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The proposed start date time as a well-defined type, e.g. NOW. + google.ads.googleads.v9.enums.TimeTypeEnum.TimeType proposed_start_time_type = 7 [(google.api.field_behavior) = IMMUTABLE]; + } + + // The proposed end date time of the account-level budget, which cannot be in + // the past. + oneof proposed_end_time { + // Immutable. The proposed end date time in yyyy-mm-dd hh:mm:ss format. + string proposed_end_date_time = 31 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The proposed end date time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v9.enums.TimeTypeEnum.TimeType proposed_end_time_type = 9 [(google.api.field_behavior) = IMMUTABLE]; + } + + // The approved end date time of the account-level budget. + oneof approved_end_time { + // Output only. The approved end date time in yyyy-mm-dd hh:mm:ss format. + string approved_end_date_time = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The approved end date time as a well-defined type, e.g. FOREVER. + google.ads.googleads.v9.enums.TimeTypeEnum.TimeType approved_end_time_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The proposed spending limit. + oneof proposed_spending_limit { + // Immutable. The proposed spending limit in micros. One million is equivalent to + // one unit. + int64 proposed_spending_limit_micros = 33 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The proposed spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v9.enums.SpendingLimitTypeEnum.SpendingLimitType proposed_spending_limit_type = 11 [(google.api.field_behavior) = IMMUTABLE]; + } + + // The approved spending limit. + oneof approved_spending_limit { + // Output only. The approved spending limit in micros. One million is equivalent to + // one unit. + int64 approved_spending_limit_micros = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The approved spending limit as a well-defined type, e.g. INFINITE. + google.ads.googleads.v9.enums.SpendingLimitTypeEnum.SpendingLimitType approved_spending_limit_type = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v9/resources/account_link.proto b/google/ads/googleads/v9/resources/account_link.proto new file mode 100644 index 000000000..1930f1ce2 --- /dev/null +++ b/google/ads/googleads/v9/resources/account_link.proto @@ -0,0 +1,125 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/account_link_status.proto"; +import "google/ads/googleads/v9/enums/linked_account_type.proto"; +import "google/ads/googleads/v9/enums/mobile_app_vendor.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AccountLinkProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Represents the data sharing connection between a Google Ads account and +// another account +message AccountLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/AccountLink" + pattern: "customers/{customer_id}/accountLinks/{account_link_id}" + }; + + // Immutable. Resource name of the account link. + // AccountLink resource names have the form: + // `customers/{customer_id}/accountLinks/{account_link_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountLink" + } + ]; + + // Output only. The ID of the link. + // This field is read only. + optional int64 account_link_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The status of the link. + google.ads.googleads.v9.enums.AccountLinkStatusEnum.AccountLinkStatus status = 3; + + // Output only. The type of the linked account. + google.ads.googleads.v9.enums.LinkedAccountTypeEnum.LinkedAccountType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // An account linked to this Google Ads account. + oneof linked_account { + // Immutable. A third party app analytics link. + ThirdPartyAppAnalyticsLinkIdentifier third_party_app_analytics = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Data partner link. + DataPartnerLinkIdentifier data_partner = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Google Ads link. + GoogleAdsLinkIdentifier google_ads = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} + +// The identifiers of a Third Party App Analytics Link. +message ThirdPartyAppAnalyticsLinkIdentifier { + // Immutable. The ID of the app analytics provider. + // This field should not be empty when creating a new third + // party app analytics link. It is unable to be modified after the creation of + // the link. + optional int64 app_analytics_provider_id = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A string that uniquely identifies a mobile application from which the data + // was collected to the Google Ads API. For iOS, the ID string is the 9 digit + // string that appears at the end of an App Store URL (e.g., "422689480" for + // "Gmail" whose App Store link is + // https://apps.apple.com/us/app/gmail-email-by-google/id422689480). For + // Android, the ID string is the application's package name (e.g., + // "com.google.android.gm" for "Gmail" given Google Play link + // https://play.google.com/store/apps/details?id=com.google.android.gm) + // This field should not be empty when creating a new third + // party app analytics link. It is unable to be modified after the creation of + // the link. + optional string app_id = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The vendor of the app. + // This field should not be empty when creating a new third + // party app analytics link. It is unable to be modified after the creation of + // the link. + google.ads.googleads.v9.enums.MobileAppVendorEnum.MobileAppVendor app_vendor = 3 [(google.api.field_behavior) = IMMUTABLE]; +} + +// The identifier for Data Partner account. +message DataPartnerLinkIdentifier { + // Immutable. The customer ID of the Data partner account. + // This field is required and should not be empty when creating a new + // data partner link. It is unable to be modified after the creation of + // the link. + optional int64 data_partner_id = 1 [(google.api.field_behavior) = IMMUTABLE]; +} + +// The identifier for Google Ads account. +message GoogleAdsLinkIdentifier { + // Immutable. The resource name of the Google Ads account. + // This field is required and should not be empty when creating a new + // Google Ads link. It is unable to be modified after the creation of + // the link. + optional string customer = 3 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/ad.proto b/google/ads/googleads/v9/resources/ad.proto new file mode 100644 index 000000000..a67fd4d2e --- /dev/null +++ b/google/ads/googleads/v9/resources/ad.proto @@ -0,0 +1,191 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/ad_type_infos.proto"; +import "google/ads/googleads/v9/common/custom_parameter.proto"; +import "google/ads/googleads/v9/common/final_app_url.proto"; +import "google/ads/googleads/v9/common/url_collection.proto"; +import "google/ads/googleads/v9/enums/ad_type.proto"; +import "google/ads/googleads/v9/enums/device.proto"; +import "google/ads/googleads/v9/enums/system_managed_entity_source.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad type. + +// An ad. +message Ad { + option (google.api.resource) = { + type: "googleads.googleapis.com/Ad" + pattern: "customers/{customer_id}/ads/{ad_id}" + }; + + // Immutable. The resource name of the ad. + // Ad resource names have the form: + // + // `customers/{customer_id}/ads/{ad_id}` + string resource_name = 37 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Ad" + } + ]; + + // Output only. The ID of the ad. + optional int64 id = 40 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The list of possible final URLs after all cross-domain redirects for the + // ad. + repeated string final_urls = 41; + + // A list of final app URLs that will be used on mobile if the user has the + // specific app installed. + repeated google.ads.googleads.v9.common.FinalAppUrl final_app_urls = 35; + + // The list of possible final mobile URLs after all cross-domain redirects + // for the ad. + repeated string final_mobile_urls = 42; + + // The URL template for constructing a tracking URL. + optional string tracking_url_template = 43; + + // The suffix to use when constructing a final URL. + optional string final_url_suffix = 44; + + // The list of mappings that can be used to substitute custom parameter tags + // in a `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + // For mutates, please use url custom parameter operations. + repeated google.ads.googleads.v9.common.CustomParameter url_custom_parameters = 10; + + // The URL that appears in the ad description for some ad formats. + optional string display_url = 45; + + // Output only. The type of ad. + google.ads.googleads.v9.enums.AdTypeEnum.AdType type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Indicates if this ad was automatically added by Google Ads and not by a + // user. For example, this could happen when ads are automatically created as + // suggestions for new ads based on knowledge of how existing ads are + // performing. + optional bool added_by_google_ads = 46 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The device preference for the ad. You can only specify a preference for + // mobile devices. When this preference is set the ad will be preferred over + // other ads when being displayed on a mobile device. The ad can still be + // displayed on other device types, e.g. if no other ads are available. + // If unspecified (no device preference), all devices are targeted. + // This is only supported by some ad types. + google.ads.googleads.v9.enums.DeviceEnum.Device device_preference = 20; + + // Additional URLs for the ad that are tagged with a unique identifier that + // can be referenced from other fields in the ad. + repeated google.ads.googleads.v9.common.UrlCollection url_collections = 26; + + // Immutable. The name of the ad. This is only used to be able to identify the ad. It + // does not need to be unique and does not affect the served ad. The name + // field is currently only supported for DisplayUploadAd, ImageAd, + // ShoppingComparisonListingAd and VideoAd. + optional string name = 47 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. If this ad is system managed, then this field will indicate the source. + // This field is read-only. + google.ads.googleads.v9.enums.SystemManagedResourceSourceEnum.SystemManagedResourceSource system_managed_resource_source = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Details pertinent to the ad type. Exactly one value must be set. + oneof ad_data { + // Immutable. Details pertaining to a text ad. + google.ads.googleads.v9.common.TextAdInfo text_ad = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Details pertaining to an expanded text ad. + google.ads.googleads.v9.common.ExpandedTextAdInfo expanded_text_ad = 7; + + // Details pertaining to a call ad. + google.ads.googleads.v9.common.CallAdInfo call_ad = 49; + + // Immutable. Details pertaining to an Expanded Dynamic Search Ad. + // This type of ad has its headline, final URLs, and display URL + // auto-generated at serving time according to domain name specific + // information provided by `dynamic_search_ads_setting` linked at the + // campaign level. + google.ads.googleads.v9.common.ExpandedDynamicSearchAdInfo expanded_dynamic_search_ad = 14 [(google.api.field_behavior) = IMMUTABLE]; + + // Details pertaining to a hotel ad. + google.ads.googleads.v9.common.HotelAdInfo hotel_ad = 15; + + // Details pertaining to a Smart Shopping ad. + google.ads.googleads.v9.common.ShoppingSmartAdInfo shopping_smart_ad = 17; + + // Details pertaining to a Shopping product ad. + google.ads.googleads.v9.common.ShoppingProductAdInfo shopping_product_ad = 18; + + // Immutable. Details pertaining to a Gmail ad. + google.ads.googleads.v9.common.GmailAdInfo gmail_ad = 21 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Details pertaining to an Image ad. + google.ads.googleads.v9.common.ImageAdInfo image_ad = 22 [(google.api.field_behavior) = IMMUTABLE]; + + // Details pertaining to a Video ad. + google.ads.googleads.v9.common.VideoAdInfo video_ad = 24; + + // Details pertaining to a Video responsive ad. + google.ads.googleads.v9.common.VideoResponsiveAdInfo video_responsive_ad = 39; + + // Details pertaining to a responsive search ad. + google.ads.googleads.v9.common.ResponsiveSearchAdInfo responsive_search_ad = 25; + + // Details pertaining to a legacy responsive display ad. + google.ads.googleads.v9.common.LegacyResponsiveDisplayAdInfo legacy_responsive_display_ad = 28; + + // Details pertaining to an app ad. + google.ads.googleads.v9.common.AppAdInfo app_ad = 29; + + // Immutable. Details pertaining to a legacy app install ad. + google.ads.googleads.v9.common.LegacyAppInstallAdInfo legacy_app_install_ad = 30 [(google.api.field_behavior) = IMMUTABLE]; + + // Details pertaining to a responsive display ad. + google.ads.googleads.v9.common.ResponsiveDisplayAdInfo responsive_display_ad = 31; + + // Details pertaining to a local ad. + google.ads.googleads.v9.common.LocalAdInfo local_ad = 32; + + // Details pertaining to a display upload ad. + google.ads.googleads.v9.common.DisplayUploadAdInfo display_upload_ad = 33; + + // Details pertaining to an app engagement ad. + google.ads.googleads.v9.common.AppEngagementAdInfo app_engagement_ad = 34; + + // Details pertaining to a Shopping Comparison Listing ad. + google.ads.googleads.v9.common.ShoppingComparisonListingAdInfo shopping_comparison_listing_ad = 36; + + // Details pertaining to a Smart campaign ad. + google.ads.googleads.v9.common.SmartCampaignAdInfo smart_campaign_ad = 48; + + // Details pertaining to an app pre-registration ad. + google.ads.googleads.v9.common.AppPreRegistrationAdInfo app_pre_registration_ad = 50; + } +} diff --git a/google/ads/googleads/v9/resources/ad_group.proto b/google/ads/googleads/v9/resources/ad_group.proto new file mode 100644 index 000000000..bdfd36073 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group.proto @@ -0,0 +1,187 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/custom_parameter.proto"; +import "google/ads/googleads/v9/common/explorer_auto_optimizer_setting.proto"; +import "google/ads/googleads/v9/common/targeting_setting.proto"; +import "google/ads/googleads/v9/enums/ad_group_ad_rotation_mode.proto"; +import "google/ads/googleads/v9/enums/ad_group_status.proto"; +import "google/ads/googleads/v9/enums/ad_group_type.proto"; +import "google/ads/googleads/v9/enums/asset_field_type.proto"; +import "google/ads/googleads/v9/enums/bidding_source.proto"; +import "google/ads/googleads/v9/enums/targeting_dimension.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad group resource. + +// An ad group. +message AdGroup { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroup" + pattern: "customers/{customer_id}/adGroups/{ad_group_id}" + }; + + // Immutable. The resource name of the ad group. + // Ad group resource names have the form: + // + // `customers/{customer_id}/adGroups/{ad_group_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. The ID of the ad group. + optional int64 id = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the ad group. + // + // This field is required and should not be empty when creating new ad + // groups. + // + // It must contain fewer than 255 UTF-8 full-width characters. + // + // It must not contain any null (code point 0x0), NL line feed + // (code point 0xA) or carriage return (code point 0xD) characters. + optional string name = 35; + + // The status of the ad group. + google.ads.googleads.v9.enums.AdGroupStatusEnum.AdGroupStatus status = 5; + + // Immutable. The type of the ad group. + google.ads.googleads.v9.enums.AdGroupTypeEnum.AdGroupType type = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // The ad rotation mode of the ad group. + google.ads.googleads.v9.enums.AdGroupAdRotationModeEnum.AdGroupAdRotationMode ad_rotation_mode = 22; + + // Output only. For draft or experiment ad groups, this field is the resource name of the + // base ad group from which this ad group was created. If a draft or + // experiment ad group does not have a base ad group, then this field is null. + // + // For base ad groups, this field equals the ad group resource name. + // + // This field is read-only. + optional string base_ad_group = 36 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // The URL template for constructing a tracking URL. + optional string tracking_url_template = 37; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v9.common.CustomParameter url_custom_parameters = 6; + + // Immutable. The campaign to which the ad group belongs. + optional string campaign = 38 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // The maximum CPC (cost-per-click) bid. + optional int64 cpc_bid_micros = 39; + + // The maximum CPM (cost-per-thousand viewable impressions) bid. + optional int64 cpm_bid_micros = 40; + + // The target CPA (cost-per-acquisition). If the ad group's campaign + // bidding strategy is TargetCpa or MaximizeConversions (with its target_cpa + // field set), then this field overrides the target CPA specified in the + // campaign's bidding strategy. + // Otherwise, this value is ignored. + optional int64 target_cpa_micros = 41; + + // Output only. The CPV (cost-per-view) bid. + optional int64 cpv_bid_micros = 42 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Average amount in micros that the advertiser is willing to pay for every + // thousand times the ad is shown. + optional int64 target_cpm_micros = 43; + + // The target ROAS (return-on-ad-spend) override. If the ad group's campaign + // bidding strategy is TargetRoas or MaximizeConversionValue (with its + // target_roas field set), then this field overrides the target ROAS specified + // in the campaign's bidding strategy. + // Otherwise, this value is ignored. + optional double target_roas = 44; + + // The percent cpc bid amount, expressed as a fraction of the advertised price + // for some good or service. The valid range for the fraction is [0,1) and the + // value stored here is 1,000,000 * [fraction]. + optional int64 percent_cpc_bid_micros = 45; + + // Settings for the Display Campaign Optimizer, initially termed "Explorer". + google.ads.googleads.v9.common.ExplorerAutoOptimizerSetting explorer_auto_optimizer_setting = 21; + + // Allows advertisers to specify a targeting dimension on which to place + // absolute bids. This is only applicable for campaigns that target only the + // display network and not search. + google.ads.googleads.v9.enums.TargetingDimensionEnum.TargetingDimension display_custom_bid_dimension = 23; + + // URL template for appending params to Final URL. + optional string final_url_suffix = 46; + + // Setting for targeting related features. + google.ads.googleads.v9.common.TargetingSetting targeting_setting = 25; + + // Output only. The effective target CPA (cost-per-acquisition). + // This field is read-only. + optional int64 effective_target_cpa_micros = 47 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective target CPA. + // This field is read-only. + google.ads.googleads.v9.enums.BiddingSourceEnum.BiddingSource effective_target_cpa_source = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The effective target ROAS (return-on-ad-spend). + // This field is read-only. + optional double effective_target_roas = 48 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective target ROAS. + // This field is read-only. + google.ads.googleads.v9.enums.BiddingSourceEnum.BiddingSource effective_target_roas_source = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource names of labels attached to this ad group. + repeated string labels = 49 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupLabel" + } + ]; + + // The asset field types that should be excluded from this ad group. Asset + // links with these field types will not be inherited by this ad group from + // the upper levels. + repeated google.ads.googleads.v9.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 54; +} diff --git a/google/ads/googleads/v9/resources/ad_group_ad.proto b/google/ads/googleads/v9/resources/ad_group_ad.proto new file mode 100644 index 000000000..315818c98 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_ad.proto @@ -0,0 +1,103 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/policy.proto"; +import "google/ads/googleads/v9/enums/ad_group_ad_status.proto"; +import "google/ads/googleads/v9/enums/ad_strength.proto"; +import "google/ads/googleads/v9/enums/policy_approval_status.proto"; +import "google/ads/googleads/v9/enums/policy_review_status.proto"; +import "google/ads/googleads/v9/resources/ad.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad group ad resource. + +// An ad group ad. +message AdGroupAd { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupAd" + pattern: "customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}" + }; + + // Immutable. The resource name of the ad. + // Ad group ad resource names have the form: + // + // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; + + // The status of the ad. + google.ads.googleads.v9.enums.AdGroupAdStatusEnum.AdGroupAdStatus status = 3; + + // Immutable. The ad group to which the ad belongs. + optional string ad_group = 9 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Immutable. The ad. + Ad ad = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Policy information for the ad. + AdGroupAdPolicySummary policy_summary = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Overall ad strength for this ad group ad. + google.ads.googleads.v9.enums.AdStrengthEnum.AdStrength ad_strength = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A list of recommendations to improve the ad strength. For example, a + // recommendation could be "Your headlines are a little too similar. + // Try adding more distinct headlines.". + repeated string action_items = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource names of labels attached to this ad group ad. + repeated string labels = 10 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAdLabel" + } + ]; +} + +// Contains policy information for an ad. +message AdGroupAdPolicySummary { + // Output only. The list of policy findings for this ad. + repeated google.ads.googleads.v9.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Where in the review process this ad is. + google.ads.googleads.v9.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The overall approval status of this ad, calculated based on the status of + // its individual policy topic entries. + google.ads.googleads.v9.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/ad_group_ad_asset_view.proto b/google/ads/googleads/v9/resources/ad_group_ad_asset_view.proto new file mode 100644 index 000000000..13bf4d447 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_ad_asset_view.proto @@ -0,0 +1,105 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/policy.proto"; +import "google/ads/googleads/v9/enums/asset_field_type.proto"; +import "google/ads/googleads/v9/enums/asset_performance_label.proto"; +import "google/ads/googleads/v9/enums/policy_approval_status.proto"; +import "google/ads/googleads/v9/enums/policy_review_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdAssetViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad group ad asset view resource. + +// A link between an AdGroupAd and an Asset. +// Currently we only support AdGroupAdAssetView for AppAds. +message AdGroupAdAssetView { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupAdAssetView" + pattern: "customers/{customer_id}/adGroupAdAssetViews/{ad_group_id}~{ad_id}~{asset_id}~{field_type}" + }; + + // Output only. The resource name of the ad group ad asset view. + // Ad group ad asset view resource names have the form (Before V4): + // + // `customers/{customer_id}/adGroupAdAssets/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}` + // + // Ad group ad asset view resource names have the form (Beginning from V4): + // + // `customers/{customer_id}/adGroupAdAssetViews/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAdAssetView" + } + ]; + + // Output only. The ad group ad to which the asset is linked. + optional string ad_group_ad = 9 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; + + // Output only. The asset which is linked to the ad group ad. + optional string asset = 10 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Output only. Role that the asset takes in the ad. + google.ads.googleads.v9.enums.AssetFieldTypeEnum.AssetFieldType field_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The status between the asset and the latest version of the ad. If true, the + // asset is linked to the latest version of the ad. If false, it means the + // link once existed but has been removed and is no longer present in the + // latest version of the ad. + optional bool enabled = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Policy information for the ad group ad asset. + AdGroupAdAssetPolicySummary policy_summary = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Performance of an asset linkage. + google.ads.googleads.v9.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel performance_label = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Contains policy information for an ad group ad asset. +message AdGroupAdAssetPolicySummary { + // Output only. The list of policy findings for the ad group ad asset. + repeated google.ads.googleads.v9.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Where in the review process this ad group ad asset is. + google.ads.googleads.v9.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The overall approval status of this ad group ad asset, calculated based on + // the status of its individual policy topic entries. + google.ads.googleads.v9.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/ad_group_ad_label.proto b/google/ads/googleads/v9/resources/ad_group_ad_label.proto new file mode 100644 index 000000000..d45072b76 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_ad_label.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdLabelProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad group ad label resource. + +// A relationship between an ad group ad and a label. +message AdGroupAdLabel { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupAdLabel" + pattern: "customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}" + }; + + // Immutable. The resource name of the ad group ad label. + // Ad group ad label resource names have the form: + // `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id}~{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAdLabel" + } + ]; + + // Immutable. The ad group ad to which the label is attached. + optional string ad_group_ad = 4 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; + + // Immutable. The label assigned to the ad group ad. + optional string label = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/ad_group_asset.proto b/google/ads/googleads/v9/resources/ad_group_asset.proto new file mode 100644 index 000000000..cfb8dfc49 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_asset.proto @@ -0,0 +1,80 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/asset_field_type.proto"; +import "google/ads/googleads/v9/enums/asset_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAssetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the AdGroupAsset resource. + +// A link between an ad group and an asset. +message AdGroupAsset { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupAsset" + pattern: "customers/{customer_id}/adGroupAssets/{ad_group_id}~{asset_id}~{field_type}" + }; + + // Immutable. The resource name of the ad group asset. + // AdGroupAsset resource names have the form: + // + // `customers/{customer_id}/adGroupAssets/{ad_group_id}~{asset_id}~{field_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAsset" + } + ]; + + // Required. Immutable. The ad group to which the asset is linked. + string ad_group = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Required. Immutable. The asset which is linked to the ad group. + string asset = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Required. Immutable. Role that the asset takes under the linked ad group. + google.ads.googleads.v9.enums.AssetFieldTypeEnum.AssetFieldType field_type = 4 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Status of the ad group asset. + google.ads.googleads.v9.enums.AssetLinkStatusEnum.AssetLinkStatus status = 5; +} diff --git a/google/ads/googleads/v9/resources/ad_group_audience_view.proto b/google/ads/googleads/v9/resources/ad_group_audience_view.proto new file mode 100644 index 000000000..f62b8da90 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_audience_view.proto @@ -0,0 +1,54 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAudienceViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad group audience view resource. + +// An ad group audience view. +// Includes performance data from interests and remarketing lists for Display +// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), +// aggregated at the audience level. +message AdGroupAudienceView { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupAudienceView" + pattern: "customers/{customer_id}/adGroupAudienceViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the ad group audience view. + // Ad group audience view resource names have the form: + // + // `customers/{customer_id}/adGroupAudienceViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAudienceView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/ad_group_bid_modifier.proto b/google/ads/googleads/v9/resources/ad_group_bid_modifier.proto new file mode 100644 index 000000000..665768283 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_bid_modifier.proto @@ -0,0 +1,112 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/enums/bid_modifier_source.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupBidModifierProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad group bid modifier resource. + +// Represents an ad group bid modifier. +message AdGroupBidModifier { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupBidModifier" + pattern: "customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}" + }; + + // Immutable. The resource name of the ad group bid modifier. + // Ad group bid modifier resource names have the form: + // + // `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupBidModifier" + } + ]; + + // Immutable. The ad group to which this criterion belongs. + optional string ad_group = 13 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. The ID of the criterion to bid modify. + // + // This field is ignored for mutates. + optional int64 criterion_id = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The modifier for the bid when the criterion matches. The modifier must be + // in the range: 0.1 - 10.0. The range is 1.0 - 6.0 for PreferredContent. + // Use 0 to opt out of a Device type. + optional double bid_modifier = 15; + + // Output only. The base ad group from which this draft/trial adgroup bid modifier was + // created. If ad_group is a base ad group then this field will be equal to + // ad_group. If the ad group was created in the draft or trial and has no + // corresponding base ad group, then this field will be null. + // This field is readonly. + optional string base_ad_group = 16 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. Bid modifier source. + google.ads.googleads.v9.enums.BidModifierSourceEnum.BidModifierSource bid_modifier_source = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The criterion of this ad group bid modifier. + // + // Required in create operations starting in V5. + oneof criterion { + // Immutable. Criterion for hotel date selection (default dates vs. user selected). + google.ads.googleads.v9.common.HotelDateSelectionTypeInfo hotel_date_selection_type = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Criterion for number of days prior to the stay the booking is being made. + google.ads.googleads.v9.common.HotelAdvanceBookingWindowInfo hotel_advance_booking_window = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Criterion for length of hotel stay in nights. + google.ads.googleads.v9.common.HotelLengthOfStayInfo hotel_length_of_stay = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Criterion for day of the week the booking is for. + google.ads.googleads.v9.common.HotelCheckInDayInfo hotel_check_in_day = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A device criterion. + google.ads.googleads.v9.common.DeviceInfo device = 11 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A preferred content criterion. + google.ads.googleads.v9.common.PreferredContentInfo preferred_content = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Criterion for a hotel check-in date range. + google.ads.googleads.v9.common.HotelCheckInDateRangeInfo hotel_check_in_date_range = 17 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v9/resources/ad_group_criterion.proto b/google/ads/googleads/v9/resources/ad_group_criterion.proto new file mode 100644 index 000000000..973905021 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_criterion.proto @@ -0,0 +1,291 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/common/custom_parameter.proto"; +import "google/ads/googleads/v9/enums/ad_group_criterion_approval_status.proto"; +import "google/ads/googleads/v9/enums/ad_group_criterion_status.proto"; +import "google/ads/googleads/v9/enums/bidding_source.proto"; +import "google/ads/googleads/v9/enums/criterion_system_serving_status.proto"; +import "google/ads/googleads/v9/enums/criterion_type.proto"; +import "google/ads/googleads/v9/enums/quality_score_bucket.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad group criterion resource. + +// An ad group criterion. +message AdGroupCriterion { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupCriterion" + pattern: "customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}" + }; + + // A container for ad group criterion quality information. + message QualityInfo { + // Output only. The quality score. + // + // This field may not be populated if Google does not have enough + // information to determine a value. + optional int32 quality_score = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The performance of the ad compared to other advertisers. + google.ads.googleads.v9.enums.QualityScoreBucketEnum.QualityScoreBucket creative_quality_score = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The quality score of the landing page. + google.ads.googleads.v9.enums.QualityScoreBucketEnum.QualityScoreBucket post_click_quality_score = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The click-through rate compared to that of other advertisers. + google.ads.googleads.v9.enums.QualityScoreBucketEnum.QualityScoreBucket search_predicted_ctr = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Estimates for criterion bids at various positions. + message PositionEstimates { + // Output only. The estimate of the CPC bid required for ad to be shown on first + // page of search results. + optional int64 first_page_cpc_micros = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The estimate of the CPC bid required for ad to be displayed in first + // position, at the top of the first page of search results. + optional int64 first_position_cpc_micros = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The estimate of the CPC bid required for ad to be displayed at the top + // of the first page of search results. + optional int64 top_of_page_cpc_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Estimate of how many clicks per week you might get by changing your + // keyword bid to the value in first_position_cpc_micros. + optional int64 estimated_add_clicks_at_first_position_cpc = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Estimate of how your cost per week might change when changing your + // keyword bid to the value in first_position_cpc_micros. + optional int64 estimated_add_cost_at_first_position_cpc = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Immutable. The resource name of the ad group criterion. + // Ad group criterion resource names have the form: + // + // `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; + + // Output only. The ID of the criterion. + // + // This field is ignored for mutates. + optional int64 criterion_id = 56 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The display name of the criterion. + // + // This field is ignored for mutates. + string display_name = 77 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The status of the criterion. + // + // This is the status of the ad group criterion entity, set by the client. + // Note: UI reports may incorporate additional information that affects + // whether a criterion is eligible to run. In some cases a criterion that's + // REMOVED in the API can still show as enabled in the UI. + // For example, campaigns by default show to users of all age ranges unless + // excluded. The UI will show each age range as "enabled", since they're + // eligible to see the ads; but AdGroupCriterion.status will show "removed", + // since no positive criterion was added. + google.ads.googleads.v9.enums.AdGroupCriterionStatusEnum.AdGroupCriterionStatus status = 3; + + // Output only. Information regarding the quality of the criterion. + QualityInfo quality_info = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The ad group to which the criterion belongs. + optional string ad_group = 57 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. The type of the criterion. + google.ads.googleads.v9.enums.CriterionTypeEnum.CriterionType type = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Whether to target (`false`) or exclude (`true`) the criterion. + // + // This field is immutable. To switch a criterion from positive to negative, + // remove then re-add it. + optional bool negative = 58 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Serving status of the criterion. + google.ads.googleads.v9.enums.CriterionSystemServingStatusEnum.CriterionSystemServingStatus system_serving_status = 52 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Approval status of the criterion. + google.ads.googleads.v9.enums.AdGroupCriterionApprovalStatusEnum.AdGroupCriterionApprovalStatus approval_status = 53 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. List of disapproval reasons of the criterion. + // + // The different reasons for disapproving a criterion can be found here: + // https://support.google.com/adspolicy/answer/6008942 + // + // This field is read-only. + repeated string disapproval_reasons = 59 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource names of labels attached to this ad group criterion. + repeated string labels = 60 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterionLabel" + } + ]; + + // The modifier for the bid when the criterion matches. The modifier must be + // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. + optional double bid_modifier = 61; + + // The CPC (cost-per-click) bid. + optional int64 cpc_bid_micros = 62; + + // The CPM (cost-per-thousand viewable impressions) bid. + optional int64 cpm_bid_micros = 63; + + // The CPV (cost-per-view) bid. + optional int64 cpv_bid_micros = 64; + + // The CPC bid amount, expressed as a fraction of the advertised price + // for some good or service. The valid range for the fraction is [0,1) and the + // value stored here is 1,000,000 * [fraction]. + optional int64 percent_cpc_bid_micros = 65; + + // Output only. The effective CPC (cost-per-click) bid. + optional int64 effective_cpc_bid_micros = 66 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The effective CPM (cost-per-thousand viewable impressions) bid. + optional int64 effective_cpm_bid_micros = 67 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The effective CPV (cost-per-view) bid. + optional int64 effective_cpv_bid_micros = 68 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The effective Percent CPC bid amount. + optional int64 effective_percent_cpc_bid_micros = 69 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective CPC bid. + google.ads.googleads.v9.enums.BiddingSourceEnum.BiddingSource effective_cpc_bid_source = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective CPM bid. + google.ads.googleads.v9.enums.BiddingSourceEnum.BiddingSource effective_cpm_bid_source = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective CPV bid. + google.ads.googleads.v9.enums.BiddingSourceEnum.BiddingSource effective_cpv_bid_source = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Source of the effective Percent CPC bid. + google.ads.googleads.v9.enums.BiddingSourceEnum.BiddingSource effective_percent_cpc_bid_source = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Estimates for criterion bids at various positions. + PositionEstimates position_estimates = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The list of possible final URLs after all cross-domain redirects for the + // ad. + repeated string final_urls = 70; + + // The list of possible final mobile URLs after all cross-domain redirects. + repeated string final_mobile_urls = 71; + + // URL template for appending params to final URL. + optional string final_url_suffix = 72; + + // The URL template for constructing a tracking URL. + optional string tracking_url_template = 73; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v9.common.CustomParameter url_custom_parameters = 14; + + // The ad group criterion. + // + // Exactly one must be set. + oneof criterion { + // Immutable. Keyword. + google.ads.googleads.v9.common.KeywordInfo keyword = 27 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Placement. + google.ads.googleads.v9.common.PlacementInfo placement = 28 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile app category. + google.ads.googleads.v9.common.MobileAppCategoryInfo mobile_app_category = 29 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile application. + google.ads.googleads.v9.common.MobileApplicationInfo mobile_application = 30 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Listing group. + google.ads.googleads.v9.common.ListingGroupInfo listing_group = 32 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Age range. + google.ads.googleads.v9.common.AgeRangeInfo age_range = 36 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Gender. + google.ads.googleads.v9.common.GenderInfo gender = 37 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Income range. + google.ads.googleads.v9.common.IncomeRangeInfo income_range = 38 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Parental status. + google.ads.googleads.v9.common.ParentalStatusInfo parental_status = 39 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. User List. + google.ads.googleads.v9.common.UserListInfo user_list = 42 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Video. + google.ads.googleads.v9.common.YouTubeVideoInfo youtube_video = 40 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Channel. + google.ads.googleads.v9.common.YouTubeChannelInfo youtube_channel = 41 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Topic. + google.ads.googleads.v9.common.TopicInfo topic = 43 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. User Interest. + google.ads.googleads.v9.common.UserInterestInfo user_interest = 45 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Webpage + google.ads.googleads.v9.common.WebpageInfo webpage = 46 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. App Payment Model. + google.ads.googleads.v9.common.AppPaymentModelInfo app_payment_model = 47 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Affinity. + google.ads.googleads.v9.common.CustomAffinityInfo custom_affinity = 48 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Intent. + google.ads.googleads.v9.common.CustomIntentInfo custom_intent = 49 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Audience. + google.ads.googleads.v9.common.CustomAudienceInfo custom_audience = 74 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Combined Audience. + google.ads.googleads.v9.common.CombinedAudienceInfo combined_audience = 75 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v9/resources/ad_group_criterion_customizer.proto b/google/ads/googleads/v9/resources/ad_group_criterion_customizer.proto new file mode 100644 index 000000000..2d76ba4b1 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_criterion_customizer.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/customizer_value.proto"; +import "google/ads/googleads/v9/enums/customizer_value_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionCustomizerProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// A customizer value for the associated CustomizerAttribute at the +// AdGroupCriterion level. +message AdGroupCriterionCustomizer { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupCriterionCustomizer" + pattern: "customers/{customer_id}/adGroupCriterionCustomizers/{ad_group_id}~{criterion_id}~{customizer_attribute_id}" + }; + + // Immutable. The resource name of the ad group criterion customizer. + // Ad group criterion customizer resource names have the form: + // + // `customers/{customer_id}/adGroupCriterionCustomizers/{ad_group_id}~{criterion_id}~{customizer_attribute_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterionCustomizer" + } + ]; + + // Immutable. The ad group criterion to which the customizer attribute is linked. + // It must be a keyword criterion. + optional string ad_group_criterion = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; + + // Required. Immutable. The customizer attribute which is linked to the ad group criterion. + string customizer_attribute = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomizerAttribute" + } + ]; + + // Output only. The status of the ad group criterion customizer. + google.ads.googleads.v9.enums.CustomizerValueStatusEnum.CustomizerValueStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The value to associate with the customizer attribute at this level. The + // value must be of the type specified for the CustomizerAttribute. + google.ads.googleads.v9.common.CustomizerValue value = 5 [(google.api.field_behavior) = REQUIRED]; +} diff --git a/google/ads/googleads/v9/resources/ad_group_criterion_label.proto b/google/ads/googleads/v9/resources/ad_group_criterion_label.proto new file mode 100644 index 000000000..d89b334f1 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_criterion_label.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionLabelProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad group criterion label resource. + +// A relationship between an ad group criterion and a label. +message AdGroupCriterionLabel { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupCriterionLabel" + pattern: "customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}" + }; + + // Immutable. The resource name of the ad group criterion label. + // Ad group criterion label resource names have the form: + // `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterionLabel" + } + ]; + + // Immutable. The ad group criterion to which the label is attached. + optional string ad_group_criterion = 4 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; + + // Immutable. The label assigned to the ad group criterion. + optional string label = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/ad_group_criterion_simulation.proto b/google/ads/googleads/v9/resources/ad_group_criterion_simulation.proto new file mode 100644 index 000000000..cb9a4bfd9 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_criterion_simulation.proto @@ -0,0 +1,90 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/simulation.proto"; +import "google/ads/googleads/v9/enums/simulation_modification_method.proto"; +import "google/ads/googleads/v9/enums/simulation_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionSimulationProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad group criterion simulation resource. + +// An ad group criterion simulation. Supported combinations of advertising +// channel type, criterion type, simulation type, and simulation modification +// method are detailed below respectively. Hotel AdGroupCriterion simulation +// operations starting in V5. +// +// 1. DISPLAY - KEYWORD - CPC_BID - UNIFORM +// 2. SEARCH - KEYWORD - CPC_BID - UNIFORM +// 3. SHOPPING - LISTING_GROUP - CPC_BID - UNIFORM +// 4. HOTEL - LISTING_GROUP - CPC_BID - UNIFORM +// 5. HOTEL - LISTING_GROUP - PERCENT_CPC_BID - UNIFORM +message AdGroupCriterionSimulation { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupCriterionSimulation" + pattern: "customers/{customer_id}/adGroupCriterionSimulations/{ad_group_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}" + }; + + // Output only. The resource name of the ad group criterion simulation. + // Ad group criterion simulation resource names have the form: + // + // `customers/{customer_id}/adGroupCriterionSimulations/{ad_group_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterionSimulation" + } + ]; + + // Output only. AdGroup ID of the simulation. + optional int64 ad_group_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Criterion ID of the simulation. + optional int64 criterion_id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The field that the simulation modifies. + google.ads.googleads.v9.enums.SimulationTypeEnum.SimulationType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. How the simulation modifies the field. + google.ads.googleads.v9.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. First day on which the simulation is based, in YYYY-MM-DD format. + optional string start_date = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Last day on which the simulation is based, in YYYY-MM-DD format. + optional string end_date = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of simulation points. + oneof point_list { + // Output only. Simulation points if the simulation type is CPC_BID. + google.ads.googleads.v9.common.CpcBidSimulationPointList cpc_bid_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is PERCENT_CPC_BID. + google.ads.googleads.v9.common.PercentCpcBidSimulationPointList percent_cpc_bid_point_list = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v9/resources/ad_group_customizer.proto b/google/ads/googleads/v9/resources/ad_group_customizer.proto new file mode 100644 index 000000000..9b09d032c --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_customizer.proto @@ -0,0 +1,76 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/customizer_value.proto"; +import "google/ads/googleads/v9/enums/customizer_value_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCustomizerProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// A customizer value for the associated CustomizerAttribute at the AdGroup +// level. +message AdGroupCustomizer { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupCustomizer" + pattern: "customers/{customer_id}/adGroupCustomizers/{ad_group_id}~{customizer_attribute_id}" + }; + + // Immutable. The resource name of the ad group customizer. + // Ad group customizer resource names have the form: + // + // `customers/{customer_id}/adGroupCustomizers/{ad_group_id}~{customizer_attribute_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCustomizer" + } + ]; + + // Immutable. The ad group to which the customizer attribute is linked. + string ad_group = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Required. Immutable. The customizer attribute which is linked to the ad group. + string customizer_attribute = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomizerAttribute" + } + ]; + + // Output only. The status of the ad group customizer. + google.ads.googleads.v9.enums.CustomizerValueStatusEnum.CustomizerValueStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The value to associate with the customizer attribute at this level. The + // value must be of the type specified for the CustomizerAttribute. + google.ads.googleads.v9.common.CustomizerValue value = 5 [(google.api.field_behavior) = REQUIRED]; +} diff --git a/google/ads/googleads/v9/resources/ad_group_extension_setting.proto b/google/ads/googleads/v9/resources/ad_group_extension_setting.proto new file mode 100644 index 000000000..5f13588f5 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_extension_setting.proto @@ -0,0 +1,79 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/extension_setting_device.proto"; +import "google/ads/googleads/v9/enums/extension_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupExtensionSettingProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the AdGroupExtensionSetting resource. + +// An ad group extension setting. +message AdGroupExtensionSetting { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupExtensionSetting" + pattern: "customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}" + }; + + // Immutable. The resource name of the ad group extension setting. + // AdGroupExtensionSetting resource names have the form: + // + // `customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupExtensionSetting" + } + ]; + + // Immutable. The extension type of the ad group extension setting. + google.ads.googleads.v9.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The resource name of the ad group. The linked extension feed items will + // serve under this ad group. + // AdGroup resource names have the form: + // + // `customers/{customer_id}/adGroups/{ad_group_id}` + optional string ad_group = 6 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // The resource names of the extension feed items to serve under the ad group. + // ExtensionFeedItem resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + repeated string extension_feed_items = 7 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + }]; + + // The device for which the extensions will serve. Optional. + google.ads.googleads.v9.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; +} diff --git a/google/ads/googleads/v9/resources/ad_group_feed.proto b/google/ads/googleads/v9/resources/ad_group_feed.proto new file mode 100644 index 000000000..44d67750a --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_feed.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/matching_function.proto"; +import "google/ads/googleads/v9/enums/feed_link_status.proto"; +import "google/ads/googleads/v9/enums/placeholder_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupFeedProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the AdGroupFeed resource. + +// An ad group feed. +message AdGroupFeed { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupFeed" + pattern: "customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id}" + }; + + // Immutable. The resource name of the ad group feed. + // Ad group feed resource names have the form: + // + // `customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id} + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupFeed" + } + ]; + + // Immutable. The feed being linked to the ad group. + optional string feed = 7 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Immutable. The ad group being linked to the feed. + optional string ad_group = 8 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Indicates which placeholder types the feed may populate under the connected + // ad group. Required. + repeated google.ads.googleads.v9.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; + + // Matching function associated with the AdGroupFeed. + // The matching function is used to filter the set of feed items selected. + // Required. + google.ads.googleads.v9.common.MatchingFunction matching_function = 5; + + // Output only. Status of the ad group feed. + // This field is read-only. + google.ads.googleads.v9.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/ad_group_label.proto b/google/ads/googleads/v9/resources/ad_group_label.proto new file mode 100644 index 000000000..70789b107 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_label.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupLabelProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad group label resource. + +// A relationship between an ad group and a label. +message AdGroupLabel { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupLabel" + pattern: "customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}" + }; + + // Immutable. The resource name of the ad group label. + // Ad group label resource names have the form: + // `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupLabel" + } + ]; + + // Immutable. The ad group to which the label is attached. + optional string ad_group = 4 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Immutable. The label assigned to the ad group. + optional string label = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/ad_group_simulation.proto b/google/ads/googleads/v9/resources/ad_group_simulation.proto new file mode 100644 index 000000000..b2de488aa --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_group_simulation.proto @@ -0,0 +1,94 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/simulation.proto"; +import "google/ads/googleads/v9/enums/simulation_modification_method.proto"; +import "google/ads/googleads/v9/enums/simulation_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupSimulationProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad group simulation resource. + +// An ad group simulation. Supported combinations of advertising +// channel type, simulation type and simulation modification method is +// detailed below respectively. +// +// 1. SEARCH - CPC_BID - DEFAULT +// 2. SEARCH - CPC_BID - UNIFORM +// 3. SEARCH - TARGET_CPA - UNIFORM +// 4. SEARCH - TARGET_ROAS - UNIFORM +// 5. DISPLAY - CPC_BID - DEFAULT +// 6. DISPLAY - CPC_BID - UNIFORM +// 7. DISPLAY - TARGET_CPA - UNIFORM +message AdGroupSimulation { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdGroupSimulation" + pattern: "customers/{customer_id}/adGroupSimulations/{ad_group_id}~{type}~{modification_method}~{start_date}~{end_date}" + }; + + // Output only. The resource name of the ad group simulation. + // Ad group simulation resource names have the form: + // + // `customers/{customer_id}/adGroupSimulations/{ad_group_id}~{type}~{modification_method}~{start_date}~{end_date}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupSimulation" + } + ]; + + // Output only. Ad group id of the simulation. + optional int64 ad_group_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The field that the simulation modifies. + google.ads.googleads.v9.enums.SimulationTypeEnum.SimulationType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. How the simulation modifies the field. + google.ads.googleads.v9.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. First day on which the simulation is based, in YYYY-MM-DD format. + optional string start_date = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Last day on which the simulation is based, in YYYY-MM-DD format + optional string end_date = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of simulation points. + oneof point_list { + // Output only. Simulation points if the simulation type is CPC_BID. + google.ads.googleads.v9.common.CpcBidSimulationPointList cpc_bid_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is CPV_BID. + google.ads.googleads.v9.common.CpvBidSimulationPointList cpv_bid_point_list = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_CPA. + google.ads.googleads.v9.common.TargetCpaSimulationPointList target_cpa_point_list = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_ROAS. + google.ads.googleads.v9.common.TargetRoasSimulationPointList target_roas_point_list = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v9/resources/ad_parameter.proto b/google/ads/googleads/v9/resources/ad_parameter.proto new file mode 100644 index 000000000..629d2dbda --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_parameter.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdParameterProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad parameter resource. + +// An ad parameter that is used to update numeric values (such as prices or +// inventory levels) in any text line of an ad (including URLs). There can +// be a maximum of two AdParameters per ad group criterion. (One with +// parameter_index = 1 and one with parameter_index = 2.) +// In the ad the parameters are referenced by a placeholder of the form +// "{param#:value}". E.g. "{param1:$17}" +message AdParameter { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdParameter" + pattern: "customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}" + }; + + // Immutable. The resource name of the ad parameter. + // Ad parameter resource names have the form: + // + // `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdParameter" + } + ]; + + // Immutable. The ad group criterion that this ad parameter belongs to. + optional string ad_group_criterion = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; + + // Immutable. The unique index of this ad parameter. Must be either 1 or 2. + optional int64 parameter_index = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Numeric value to insert into the ad text. The following restrictions + // apply: + // - Can use comma or period as a separator, with an optional period or + // comma (respectively) for fractional values. For example, 1,000,000.00 + // and 2.000.000,10 are valid. + // - Can be prepended or appended with a currency symbol. For example, + // $99.99 is valid. + // - Can be prepended or appended with a currency code. For example, 99.99USD + // and EUR200 are valid. + // - Can use '%'. For example, 1.0% and 1,0% are valid. + // - Can use plus or minus. For example, -10.99 and 25+ are valid. + // - Can use '/' between two numbers. For example 4/1 and 0.95/0.45 are + // valid. + optional string insertion_text = 7; +} diff --git a/google/ads/googleads/v9/resources/ad_schedule_view.proto b/google/ads/googleads/v9/resources/ad_schedule_view.proto new file mode 100644 index 000000000..a69b26e81 --- /dev/null +++ b/google/ads/googleads/v9/resources/ad_schedule_view.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AdScheduleViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ad schedule view resource. + +// An ad schedule view summarizes the performance of campaigns by +// AdSchedule criteria. +message AdScheduleView { + option (google.api.resource) = { + type: "googleads.googleapis.com/AdScheduleView" + pattern: "customers/{customer_id}/adScheduleViews/{campaign_id}~{criterion_id}" + }; + + // Output only. The resource name of the ad schedule view. + // AdSchedule view resource names have the form: + // + // `customers/{customer_id}/adScheduleViews/{campaign_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdScheduleView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/age_range_view.proto b/google/ads/googleads/v9/resources/age_range_view.proto new file mode 100644 index 000000000..7c88ceabc --- /dev/null +++ b/google/ads/googleads/v9/resources/age_range_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AgeRangeViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the age range view resource. + +// An age range view. +message AgeRangeView { + option (google.api.resource) = { + type: "googleads.googleapis.com/AgeRangeView" + pattern: "customers/{customer_id}/ageRangeViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the age range view. + // Age range view resource names have the form: + // + // `customers/{customer_id}/ageRangeViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AgeRangeView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/asset.proto b/google/ads/googleads/v9/resources/asset.proto new file mode 100644 index 000000000..ba0bb340e --- /dev/null +++ b/google/ads/googleads/v9/resources/asset.proto @@ -0,0 +1,156 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/asset_types.proto"; +import "google/ads/googleads/v9/common/custom_parameter.proto"; +import "google/ads/googleads/v9/common/policy.proto"; +import "google/ads/googleads/v9/enums/asset_type.proto"; +import "google/ads/googleads/v9/enums/policy_approval_status.proto"; +import "google/ads/googleads/v9/enums/policy_review_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AssetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the asset resource. + +// Asset is a part of an ad which can be shared across multiple ads. +// It can be an image (ImageAsset), a video (YoutubeVideoAsset), etc. +// Assets are immutable and cannot be removed. To stop an asset from serving, +// remove the asset from the entity that is using it. +message Asset { + option (google.api.resource) = { + type: "googleads.googleapis.com/Asset" + pattern: "customers/{customer_id}/assets/{asset_id}" + }; + + // Immutable. The resource name of the asset. + // Asset resource names have the form: + // + // `customers/{customer_id}/assets/{asset_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Output only. The ID of the asset. + optional int64 id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional name of the asset. + optional string name = 12; + + // Output only. Type of the asset. + google.ads.googleads.v9.enums.AssetTypeEnum.AssetType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // A list of possible final URLs after all cross domain redirects. + repeated string final_urls = 14; + + // A list of possible final mobile URLs after all cross domain redirects. + repeated string final_mobile_urls = 16; + + // URL template for constructing a tracking URL. + optional string tracking_url_template = 17; + + // A list of mappings to be used for substituting URL custom parameter tags in + // the tracking_url_template, final_urls, and/or final_mobile_urls. + repeated google.ads.googleads.v9.common.CustomParameter url_custom_parameters = 18; + + // URL template for appending params to landing page URLs served with parallel + // tracking. + optional string final_url_suffix = 19; + + // Output only. Policy information for the asset. + AssetPolicySummary policy_summary = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The specific type of the asset. + oneof asset_data { + // Immutable. A YouTube video asset. + google.ads.googleads.v9.common.YoutubeVideoAsset youtube_video_asset = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A media bundle asset. + google.ads.googleads.v9.common.MediaBundleAsset media_bundle_asset = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. An image asset. + google.ads.googleads.v9.common.ImageAsset image_asset = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. A text asset. + google.ads.googleads.v9.common.TextAsset text_asset = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // A lead form asset. + google.ads.googleads.v9.common.LeadFormAsset lead_form_asset = 9; + + // A book on google asset. + google.ads.googleads.v9.common.BookOnGoogleAsset book_on_google_asset = 10; + + // A promotion asset. + google.ads.googleads.v9.common.PromotionAsset promotion_asset = 15; + + // A callout asset. + google.ads.googleads.v9.common.CalloutAsset callout_asset = 20; + + // A structured snippet asset. + google.ads.googleads.v9.common.StructuredSnippetAsset structured_snippet_asset = 21; + + // A sitelink asset. + google.ads.googleads.v9.common.SitelinkAsset sitelink_asset = 22; + + // A page feed asset. + google.ads.googleads.v9.common.PageFeedAsset page_feed_asset = 23; + + // A dynamic education asset. + google.ads.googleads.v9.common.DynamicEducationAsset dynamic_education_asset = 24; + + // A mobile app asset. + google.ads.googleads.v9.common.MobileAppAsset mobile_app_asset = 25; + + // A hotel callout asset. + google.ads.googleads.v9.common.HotelCalloutAsset hotel_callout_asset = 26; + + // A call asset. + google.ads.googleads.v9.common.CallAsset call_asset = 27; + + // A price asset. + google.ads.googleads.v9.common.PriceAsset price_asset = 28; + + // Immutable. A call to action asset. + google.ads.googleads.v9.common.CallToActionAsset call_to_action_asset = 29 [(google.api.field_behavior) = IMMUTABLE]; + } +} + +// Contains policy information for an asset. +message AssetPolicySummary { + // Output only. The list of policy findings for this asset. + repeated google.ads.googleads.v9.common.PolicyTopicEntry policy_topic_entries = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Where in the review process this asset is. + google.ads.googleads.v9.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The overall approval status of this asset, calculated based on the status + // of its individual policy topic entries. + google.ads.googleads.v9.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/asset_field_type_view.proto b/google/ads/googleads/v9/resources/asset_field_type_view.proto new file mode 100644 index 000000000..664255186 --- /dev/null +++ b/google/ads/googleads/v9/resources/asset_field_type_view.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/asset_field_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AssetFieldTypeViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the AssetFieldTypeView resource. + +// An asset field type view. +// This view reports non-overcounted metrics for each asset field type when the +// asset is used as extension. +message AssetFieldTypeView { + option (google.api.resource) = { + type: "googleads.googleapis.com/AssetFieldTypeView" + pattern: "customers/{customer_id}/assetFieldTypeViews/{field_type}" + }; + + // Output only. The resource name of the asset field type view. + // Asset field type view resource names have the form: + // + // `customers/{customer_id}/assetFieldTypeViews/{field_type}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetFieldTypeView" + } + ]; + + // Output only. The asset field type of the asset field type view. + google.ads.googleads.v9.enums.AssetFieldTypeEnum.AssetFieldType field_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/asset_group.proto b/google/ads/googleads/v9/resources/asset_group.proto new file mode 100644 index 000000000..073775779 --- /dev/null +++ b/google/ads/googleads/v9/resources/asset_group.proto @@ -0,0 +1,88 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/asset_group_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AssetGroupProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// An asset group. +// AssetGroupAsset will be used to link an asset to the asset group. +// AssetGroupHint will be used to associate a hint to an asset group. +message AssetGroup { + option (google.api.resource) = { + type: "googleads.googleapis.com/AssetGroup" + pattern: "customers/{customer_id}/assetGroups/{asset_group_id}" + }; + + // Immutable. The resource name of the asset group. + // Asset group resource names have the form: + // + // `customers/{customer_id}/assetGroups/{asset_group_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetGroup" + } + ]; + + // Output only. The ID of the asset group. + int64 id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The campaign with which this asset group is associated. + // The asset which is linked to the asset group. + string campaign = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Required. Name of the asset group. Required. It must have a minimum length of 1 and + // maximum length of 128. It must be unique under a campaign. + string name = 3 [(google.api.field_behavior) = REQUIRED]; + + // A list of final URLs after all cross domain redirects. In performance max, + // by default, the urls will be eligible for expansion unless opted out. + repeated string final_urls = 4; + + // A list of final mobile URLs after all cross domain redirects. In + // performance max, by default, the urls will be eligible for expansion + // unless opted out. + repeated string final_mobile_urls = 5; + + // The status of the asset group. + google.ads.googleads.v9.enums.AssetGroupStatusEnum.AssetGroupStatus status = 6; + + // First part of text that may appear appended to the url displayed in + // the ad. + string path1 = 7; + + // Second part of text that may appear appended to the url displayed in + // the ad. This field can only be set when path1 is set. + string path2 = 8; +} diff --git a/google/ads/googleads/v9/resources/asset_group_asset.proto b/google/ads/googleads/v9/resources/asset_group_asset.proto new file mode 100644 index 000000000..6962f3055 --- /dev/null +++ b/google/ads/googleads/v9/resources/asset_group_asset.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/policy_summary.proto"; +import "google/ads/googleads/v9/enums/asset_field_type.proto"; +import "google/ads/googleads/v9/enums/asset_link_status.proto"; +import "google/ads/googleads/v9/enums/asset_performance_label.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AssetGroupAssetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// AssetGroupAsset is the link between an asset and an asset group. +// Adding an AssetGroupAsset links an asset with an asset group. +message AssetGroupAsset { + option (google.api.resource) = { + type: "googleads.googleapis.com/AssetGroupAsset" + pattern: "customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_type}" + }; + + // Immutable. The resource name of the asset group asset. + // Asset group asset resource name have the form: + // + // `customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetGroupAsset" + } + ]; + + // Immutable. The asset group which this asset group asset is linking. + string asset_group = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetGroup" + } + ]; + + // Immutable. The asset which this asset group asset is linking. + string asset = 3 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // The description of the placement of the asset within the asset group. E.g.: + // HEADLINE, YOUTUBE_VIDEO etc + google.ads.googleads.v9.enums.AssetFieldTypeEnum.AssetFieldType field_type = 4; + + // The status of the link between an asset and asset group. + google.ads.googleads.v9.enums.AssetLinkStatusEnum.AssetLinkStatus status = 5; + + // Output only. The performance of this asset group asset. + google.ads.googleads.v9.enums.AssetPerformanceLabelEnum.AssetPerformanceLabel performance_label = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The policy information for this asset group asset. + google.ads.googleads.v9.common.PolicySummary policy_summary = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/asset_group_listing_group_filter.proto b/google/ads/googleads/v9/resources/asset_group_listing_group_filter.proto new file mode 100644 index 000000000..afc0aeb2a --- /dev/null +++ b/google/ads/googleads/v9/resources/asset_group_listing_group_filter.proto @@ -0,0 +1,173 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/listing_group_filter_bidding_category_level.proto"; +import "google/ads/googleads/v9/enums/listing_group_filter_custom_attribute_index.proto"; +import "google/ads/googleads/v9/enums/listing_group_filter_product_channel.proto"; +import "google/ads/googleads/v9/enums/listing_group_filter_product_condition.proto"; +import "google/ads/googleads/v9/enums/listing_group_filter_product_type_level.proto"; +import "google/ads/googleads/v9/enums/listing_group_filter_type_enum.proto"; +import "google/ads/googleads/v9/enums/listing_group_filter_vertical.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AssetGroupListingGroupFilterProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// AssetGroupListingGroupFilter represents a listing group filter tree node in +// an asset group. +message AssetGroupListingGroupFilter { + option (google.api.resource) = { + type: "googleads.googleapis.com/AssetGroupListingGroupFilter" + pattern: "customers/{customer_id}/assetGroupListingGroupFilters/{asset_group_id}~{listing_group_filter_id}" + }; + + // Immutable. The resource name of the asset group listing group filter. + // Asset group listing group filter resource name have the form: + // + // `customers/{customer_id}/assetGroupListingGroupFilters/{asset_group_id}~{listing_group_filter_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetGroupListingGroupFilter" + } + ]; + + // Immutable. The asset group which this asset group listing group filter is part of. + string asset_group = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetGroup" + } + ]; + + // Output only. The ID of the ListingGroupFilter. + int64 id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Type of a listing group filter node. + google.ads.googleads.v9.enums.ListingGroupFilterTypeEnum.ListingGroupFilterType type = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The vertical the current node tree represents. All nodes in the same tree + // must belong to the same vertical. + google.ads.googleads.v9.enums.ListingGroupFilterVerticalEnum.ListingGroupFilterVertical vertical = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Dimension value with which this listing group is refining its parent. + // Undefined for the root group. + ListingGroupFilterDimension case_value = 6; + + // Immutable. Resource name of the parent listing group subdivision. Null for the root + // listing group filter node. + string parent_listing_group_filter = 7 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetGroupListingGroupFilter" + } + ]; +} + +// Listing dimensions for the asset group listing group filter. +message ListingGroupFilterDimension { + // One element of a bidding category at a certain level. Top-level categories + // are at level 1, their children at level 2, and so on. We currently support + // up to 5 levels. The user must specify a dimension type that indicates the + // level of the category. All cases of the same subdivision must have the same + // dimension type (category level). + message ProductBiddingCategory { + // ID of the product bidding category. + // + // This ID is equivalent to the google_product_category ID as described in + // this article: https://support.google.com/merchants/answer/6324436 + optional int64 id = 1; + + // Indicates the level of the category in the taxonomy. + google.ads.googleads.v9.enums.ListingGroupFilterBiddingCategoryLevelEnum.ListingGroupFilterBiddingCategoryLevel level = 2; + } + + // Brand of the product. + message ProductBrand { + // String value of the product brand. + optional string value = 1; + } + + // Locality of a product offer. + message ProductChannel { + // Value of the locality. + google.ads.googleads.v9.enums.ListingGroupFilterProductChannelEnum.ListingGroupFilterProductChannel channel = 1; + } + + // Custom attribute of a product offer. + message ProductCustomAttribute { + // String value of the product custom attribute. + optional string value = 1; + + // Indicates the index of the custom attribute. + google.ads.googleads.v9.enums.ListingGroupFilterCustomAttributeIndexEnum.ListingGroupFilterCustomAttributeIndex index = 2; + } + + // Condition of a product offer. + message ProductCondition { + // Value of the condition. + google.ads.googleads.v9.enums.ListingGroupFilterProductConditionEnum.ListingGroupFilterProductCondition condition = 1; + } + + // Item id of a product offer. + message ProductItemId { + // Value of the id. + optional string value = 1; + } + + // Type of a product offer. + message ProductType { + // Value of the type. + optional string value = 1; + + // Level of the type. + google.ads.googleads.v9.enums.ListingGroupFilterProductTypeLevelEnum.ListingGroupFilterProductTypeLevel level = 2; + } + + // Dimension of one of the types below is always present. + oneof dimension { + // Bidding category of a product offer. + ProductBiddingCategory product_bidding_category = 1; + + // Brand of a product offer. + ProductBrand product_brand = 2; + + // Locality of a product offer. + ProductChannel product_channel = 3; + + // Condition of a product offer. + ProductCondition product_condition = 4; + + // Custom attribute of a product offer. + ProductCustomAttribute product_custom_attribute = 5; + + // Item id of a product offer. + ProductItemId product_item_id = 6; + + // Type of a product offer. + ProductType product_type = 7; + } +} diff --git a/google/ads/googleads/v9/resources/asset_group_product_group_view.proto b/google/ads/googleads/v9/resources/asset_group_product_group_view.proto new file mode 100644 index 000000000..680e5d93b --- /dev/null +++ b/google/ads/googleads/v9/resources/asset_group_product_group_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AssetGroupProductGroupViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the AssetGroupProductGroupView resource. + +// An asset group product group view. +message AssetGroupProductGroupView { + option (google.api.resource) = { + type: "googleads.googleapis.com/AssetGroupProductGroupView" + pattern: "customers/{customer_id}/assetGroupProductGroupViews/{asset_group_id}~{listing_group_filter_id}" + }; + + // Output only. The resource name of the asset group product group view. + // Asset group product group view resource names have the form: + // + // `customers/{customer_id}/assetGroupProductGroupViews/{asset_group_id}~{listing_group_filter_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetGroupProductGroupView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/asset_set.proto b/google/ads/googleads/v9/resources/asset_set.proto new file mode 100644 index 000000000..c681e2e50 --- /dev/null +++ b/google/ads/googleads/v9/resources/asset_set.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/asset_set_status.proto"; +import "google/ads/googleads/v9/enums/asset_set_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AssetSetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// An asset set representing a collection of assets. +// Use AssetSetAsset to link an asset to the asset set. +message AssetSet { + option (google.api.resource) = { + type: "googleads.googleapis.com/AssetSet" + pattern: "customers/{customer_id}/assetSets/{asset_set_id}" + }; + + // Merchant ID and Feed Label from Google Merchant Center. + message MerchantCenterFeed { + // Required. Merchant ID from Google Merchant Center + int64 merchant_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Feed Label from Google Merchant Center. + optional string feed_label = 2 [(google.api.field_behavior) = OPTIONAL]; + } + + // Immutable. The resource name of the asset set. + // Asset set resource names have the form: + // + // `customers/{customer_id}/assetSets/{asset_set_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetSet" + } + ]; + + // Required. Name of the asset set. Required. It must have a minimum length of 1 and + // maximum length of 128. + string name = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Immutable. The type of the asset set. Required. + google.ads.googleads.v9.enums.AssetSetTypeEnum.AssetSetType type = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Output only. The status of the asset set. Read-only. + google.ads.googleads.v9.enums.AssetSetStatusEnum.AssetSetStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Merchant ID and Feed Label from Google Merchant Center. + MerchantCenterFeed merchant_center_feed = 5; +} diff --git a/google/ads/googleads/v9/resources/asset_set_asset.proto b/google/ads/googleads/v9/resources/asset_set_asset.proto new file mode 100644 index 000000000..effa745ea --- /dev/null +++ b/google/ads/googleads/v9/resources/asset_set_asset.proto @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/asset_set_asset_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "AssetSetAssetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// AssetSetAsset is the link between an asset and an asset set. +// Adding an AssetSetAsset links an asset with an asset set. +message AssetSetAsset { + option (google.api.resource) = { + type: "googleads.googleapis.com/AssetSetAsset" + pattern: "customers/{customer_id}/assetSetAssets/{asset_set_id}~{asset_id}" + }; + + // Immutable. The resource name of the asset set asset. + // Asset set asset resource names have the form: + // + // `customers/{customer_id}/assetSetAssets/{asset_set_id}~{asset_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetSetAsset" + } + ]; + + // Immutable. The asset set which this asset set asset is linking to. + string asset_set = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetSet" + } + ]; + + // Immutable. The asset which this asset set asset is linking to. + string asset = 3 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Output only. The status of the asset set asset. Read-only. + google.ads.googleads.v9.enums.AssetSetAssetStatusEnum.AssetSetAssetStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/batch_job.proto b/google/ads/googleads/v9/resources/batch_job.proto new file mode 100644 index 000000000..1c54b863f --- /dev/null +++ b/google/ads/googleads/v9/resources/batch_job.proto @@ -0,0 +1,98 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/batch_job_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BatchJobProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the batch job resource. + +// A list of mutates being processed asynchronously. The mutates are uploaded +// by the user. The mutates themselves aren't readable and the results of the +// job can only be read using BatchJobService.ListBatchJobResults. +message BatchJob { + option (google.api.resource) = { + type: "googleads.googleapis.com/BatchJob" + pattern: "customers/{customer_id}/batchJobs/{batch_job_id}" + }; + + // Additional information about the batch job. This message is also used as + // metadata returned in batch job Long Running Operations. + message BatchJobMetadata { + // Output only. The time when this batch job was created. + // Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:00" + optional string creation_date_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when this batch job started running. + // Formatted as yyyy-mm-dd hh:mm:ss. Example: "2018-03-05 09:15:30" + optional string start_date_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when this batch job was completed. + // Formatted as yyyy-MM-dd HH:mm:ss. Example: "2018-03-05 09:16:00" + optional string completion_date_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The fraction (between 0.0 and 1.0) of mutates that have been processed. + // This is empty if the job hasn't started running yet. + optional double estimated_completion_ratio = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of mutate operations in the batch job. + optional int64 operation_count = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of mutate operations executed by the batch job. + // Present only if the job has started running. + optional int64 executed_operation_count = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Immutable. The resource name of the batch job. + // Batch job resource names have the form: + // + // `customers/{customer_id}/batchJobs/{batch_job_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BatchJob" + } + ]; + + // Output only. ID of this batch job. + optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The next sequence token to use when adding operations. Only set when the + // batch job status is PENDING. + optional string next_add_sequence_token = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Contains additional information about this batch job. + BatchJobMetadata metadata = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of this batch job. + google.ads.googleads.v9.enums.BatchJobStatusEnum.BatchJobStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the long-running operation that can be used to poll + // for completion. Only set when the batch job status is RUNNING or DONE. + optional string long_running_operation = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/bidding_data_exclusion.proto b/google/ads/googleads/v9/resources/bidding_data_exclusion.proto new file mode 100644 index 000000000..fc45d05f4 --- /dev/null +++ b/google/ads/googleads/v9/resources/bidding_data_exclusion.proto @@ -0,0 +1,108 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v9/enums/device.proto"; +import "google/ads/googleads/v9/enums/seasonality_event_scope.proto"; +import "google/ads/googleads/v9/enums/seasonality_event_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BiddingDataExclusionProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Represents a bidding data exclusion. +// +// See "About data exclusions" at +// https://support.google.com/google-ads/answer/10370710. +message BiddingDataExclusion { + option (google.api.resource) = { + type: "googleads.googleapis.com/BiddingDataExclusion" + pattern: "customers/{customer_id}/biddingDataExclusions/{seasonality_event_id}" + }; + + // Immutable. The resource name of the data exclusion. + // Data exclusion resource names have the form: + // + // `customers/{customer_id}/biddingDataExclusions/{data_exclusion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingDataExclusion" + } + ]; + + // Output only. The ID of the data exclusion. + int64 data_exclusion_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The scope of the data exclusion. + google.ads.googleads.v9.enums.SeasonalityEventScopeEnum.SeasonalityEventScope scope = 3; + + // Output only. The status of the data exclusion. + google.ads.googleads.v9.enums.SeasonalityEventStatusEnum.SeasonalityEventStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The inclusive start time of the data exclusion in yyyy-MM-dd HH:mm:ss + // format. + // + // A data exclusion is backward looking and should be used for events that + // start in the past and end either in the past or future. + string start_date_time = 5 [(google.api.field_behavior) = REQUIRED]; + + // Required. The exclusive end time of the data exclusion in yyyy-MM-dd HH:mm:ss format. + // + // The length of [start_date_time, end_date_time) interval must be + // within (0, 14 days]. + string end_date_time = 6 [(google.api.field_behavior) = REQUIRED]; + + // The name of the data exclusion. The name can be at most 255 + // characters. + string name = 7; + + // The description of the data exclusion. The description can be at + // most 2048 characters. + string description = 8; + + // If not specified, all devices will be included in this exclusion. + // Otherwise, only the specified targeted devices will be included in this + // exclusion. + repeated google.ads.googleads.v9.enums.DeviceEnum.Device devices = 9; + + // The data exclusion will apply to the campaigns listed when the scope of + // this exclusion is CAMPAIGN. The maximum number of campaigns per event is + // 2000. + // Note: a data exclusion with both advertising_channel_types and + // campaign_ids is not supported. + repeated string campaigns = 10 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + }]; + + // The data_exclusion will apply to all the campaigns under the listed + // channels retroactively as well as going forward when the scope of this + // exclusion is CHANNEL. + // The supported advertising channel types are DISPLAY, SEARCH and SHOPPING. + // Note: a data exclusion with both advertising_channel_types and + // campaign_ids is not supported. + repeated google.ads.googleads.v9.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_types = 11; +} diff --git a/google/ads/googleads/v9/resources/bidding_seasonality_adjustment.proto b/google/ads/googleads/v9/resources/bidding_seasonality_adjustment.proto new file mode 100644 index 000000000..089cf36dc --- /dev/null +++ b/google/ads/googleads/v9/resources/bidding_seasonality_adjustment.proto @@ -0,0 +1,114 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v9/enums/device.proto"; +import "google/ads/googleads/v9/enums/seasonality_event_scope.proto"; +import "google/ads/googleads/v9/enums/seasonality_event_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BiddingSeasonalityAdjustmentProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Represents a bidding seasonality adjustment. +// +// See "About seasonality adjustments" at +// https://support.google.com/google-ads/answer/10369906. +message BiddingSeasonalityAdjustment { + option (google.api.resource) = { + type: "googleads.googleapis.com/BiddingSeasonalityAdjustment" + pattern: "customers/{customer_id}/biddingSeasonalityAdjustments/{seasonality_event_id}" + }; + + // Immutable. The resource name of the seasonality adjustment. + // Seasonality adjustment resource names have the form: + // + // `customers/{customer_id}/biddingSeasonalityAdjustments/{seasonality_adjustment_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingSeasonalityAdjustment" + } + ]; + + // Output only. The ID of the seasonality adjustment. + int64 seasonality_adjustment_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The scope of the seasonality adjustment. + google.ads.googleads.v9.enums.SeasonalityEventScopeEnum.SeasonalityEventScope scope = 3; + + // Output only. The status of the seasonality adjustment. + google.ads.googleads.v9.enums.SeasonalityEventStatusEnum.SeasonalityEventStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The inclusive start time of the seasonality adjustment in yyyy-MM-dd + // HH:mm:ss format. + // + // A seasonality adjustment is forward looking and should be used for events + // that start and end in the future. + string start_date_time = 5 [(google.api.field_behavior) = REQUIRED]; + + // Required. The exclusive end time of the seasonality adjustment in yyyy-MM-dd HH:mm:ss + // format. + // + // The length of [start_date_time, end_date_time) interval must be + // within (0, 14 days]. + string end_date_time = 6 [(google.api.field_behavior) = REQUIRED]; + + // The name of the seasonality adjustment. The name can be at most 255 + // characters. + string name = 7; + + // The description of the seasonality adjustment. The description can be at + // most 2048 characters. + string description = 8; + + // If not specified, all devices will be included in this adjustment. + // Otherwise, only the specified targeted devices will be included in this + // adjustment. + repeated google.ads.googleads.v9.enums.DeviceEnum.Device devices = 9; + + // Conversion rate modifier estimated based on expected conversion rate + // changes. When this field is unset or set to 1.0 no adjustment will be + // applied to traffic. The allowed range is 0.1 to 10.0. + double conversion_rate_modifier = 10; + + // The seasonality adjustment will apply to the campaigns listed when the + // scope of this adjustment is CAMPAIGN. The maximum number of campaigns per + // event is 2000. + // Note: a seasonality adjustment with both advertising_channel_types and + // campaign_ids is not supported. + repeated string campaigns = 11 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + }]; + + // The seasonality adjustment will apply to all the campaigns under the listed + // channels retroactively as well as going forward when the scope of this + // adjustment is CHANNEL. + // The supported advertising channel types are DISPLAY, SEARCH and SHOPPING. + // Note: a seasonality adjustment with both advertising_channel_types and + // campaign_ids is not supported. + repeated google.ads.googleads.v9.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_types = 12; +} diff --git a/google/ads/googleads/v9/resources/bidding_strategy.proto b/google/ads/googleads/v9/resources/bidding_strategy.proto new file mode 100644 index 000000000..177ed108e --- /dev/null +++ b/google/ads/googleads/v9/resources/bidding_strategy.proto @@ -0,0 +1,139 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/bidding.proto"; +import "google/ads/googleads/v9/enums/bidding_strategy_status.proto"; +import "google/ads/googleads/v9/enums/bidding_strategy_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategyProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the BiddingStrategy resource + +// A bidding strategy. +message BiddingStrategy { + option (google.api.resource) = { + type: "googleads.googleapis.com/BiddingStrategy" + pattern: "customers/{customer_id}/biddingStrategies/{bidding_strategy_id}" + }; + + // Immutable. The resource name of the bidding strategy. + // Bidding strategy resource names have the form: + // + // `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingStrategy" + } + ]; + + // Output only. The ID of the bidding strategy. + optional int64 id = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the bidding strategy. + // All bidding strategies within an account must be named distinctly. + // + // The length of this string should be between 1 and 255, inclusive, + // in UTF-8 bytes, (trimmed). + optional string name = 17; + + // Output only. The status of the bidding strategy. + // + // This field is read-only. + google.ads.googleads.v9.enums.BiddingStrategyStatusEnum.BiddingStrategyStatus status = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the bidding strategy. + // Create a bidding strategy by setting the bidding scheme. + // + // This field is read-only. + google.ads.googleads.v9.enums.BiddingStrategyTypeEnum.BiddingStrategyType type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The currency used by the bidding strategy (ISO 4217 three-letter code). + // + // For bidding strategies in manager customers, this currency can be set on + // creation and defaults to the manager customer's currency. For serving + // customers, this field cannot be set; all strategies in a serving customer + // implicitly use the serving customer's currency. In all cases the + // effective_currency_code field returns the currency used by the strategy. + string currency_code = 23 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The currency used by the bidding strategy (ISO 4217 three-letter code). + // + // For bidding strategies in manager customers, this is the currency set by + // the advertiser when creating the strategy. For serving customers, this is + // the customer's currency_code. + // + // Bidding strategy metrics are reported in this currency. + // + // This field is read-only. + optional string effective_currency_code = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of campaigns attached to this bidding strategy. + // + // This field is read-only. + optional int64 campaign_count = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of non-removed campaigns attached to this bidding strategy. + // + // This field is read-only. + optional int64 non_removed_campaign_count = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The bidding scheme. + // + // Only one can be set. + oneof scheme { + // A bidding strategy that raises bids for clicks that seem more likely to + // lead to a conversion and lowers them for clicks where they seem less + // likely. + google.ads.googleads.v9.common.EnhancedCpc enhanced_cpc = 7; + + // An automated bidding strategy to help get the most conversion value for + // your campaigns while spending your budget. + google.ads.googleads.v9.common.MaximizeConversionValue maximize_conversion_value = 21; + + // An automated bidding strategy to help get the most conversions for your + // campaigns while spending your budget. + google.ads.googleads.v9.common.MaximizeConversions maximize_conversions = 22; + + // A bidding strategy that sets bids to help get as many conversions as + // possible at the target cost-per-acquisition (CPA) you set. + google.ads.googleads.v9.common.TargetCpa target_cpa = 9; + + // A bidding strategy that automatically optimizes towards a desired + // percentage of impressions. + google.ads.googleads.v9.common.TargetImpressionShare target_impression_share = 48; + + // A bidding strategy that helps you maximize revenue while averaging a + // specific target Return On Ad Spend (ROAS). + google.ads.googleads.v9.common.TargetRoas target_roas = 11; + + // A bid strategy that sets your bids to help get as many clicks as + // possible within your budget. + google.ads.googleads.v9.common.TargetSpend target_spend = 12; + } +} diff --git a/google/ads/googleads/v9/resources/bidding_strategy_simulation.proto b/google/ads/googleads/v9/resources/bidding_strategy_simulation.proto new file mode 100644 index 000000000..1b725121b --- /dev/null +++ b/google/ads/googleads/v9/resources/bidding_strategy_simulation.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/simulation.proto"; +import "google/ads/googleads/v9/enums/simulation_modification_method.proto"; +import "google/ads/googleads/v9/enums/simulation_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategySimulationProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the bidding strategy simulation resource. + +// A bidding strategy simulation. Supported combinations of simulation type +// and simulation modification method are detailed below respectively. +// +// 1. TARGET_CPA - UNIFORM +// 2. TARGET_ROAS - UNIFORM +message BiddingStrategySimulation { + option (google.api.resource) = { + type: "googleads.googleapis.com/BiddingStrategySimulation" + pattern: "customers/{customer_id}/biddingStrategySimulations/{bidding_strategy_id}~{type}~{modification_method}~{start_date}~{end_date}" + }; + + // Output only. The resource name of the bidding strategy simulation. + // Bidding strategy simulation resource names have the form: + // + // `customers/{customer_id}/biddingStrategySimulations/{bidding_strategy_id}~{type}~{modification_method}~{start_date}~{end_date}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingStrategySimulation" + } + ]; + + // Output only. Bidding strategy shared set id of the simulation. + int64 bidding_strategy_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The field that the simulation modifies. + google.ads.googleads.v9.enums.SimulationTypeEnum.SimulationType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. How the simulation modifies the field. + google.ads.googleads.v9.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. First day on which the simulation is based, in YYYY-MM-DD format. + string start_date = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Last day on which the simulation is based, in YYYY-MM-DD format + string end_date = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of simulation points. + oneof point_list { + // Output only. Simulation points if the simulation type is TARGET_CPA. + google.ads.googleads.v9.common.TargetCpaSimulationPointList target_cpa_point_list = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_ROAS. + google.ads.googleads.v9.common.TargetRoasSimulationPointList target_roas_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v9/resources/billing_setup.proto b/google/ads/googleads/v9/resources/billing_setup.proto new file mode 100644 index 000000000..4d5a1cd00 --- /dev/null +++ b/google/ads/googleads/v9/resources/billing_setup.proto @@ -0,0 +1,138 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/billing_setup_status.proto"; +import "google/ads/googleads/v9/enums/time_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "BillingSetupProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the BillingSetup resource. + +// A billing setup, which associates a payments account and an advertiser. A +// billing setup is specific to one advertiser. +message BillingSetup { + option (google.api.resource) = { + type: "googleads.googleapis.com/BillingSetup" + pattern: "customers/{customer_id}/billingSetups/{billing_setup_id}" + }; + + // Container of payments account information for this billing. + message PaymentsAccountInfo { + // Output only. A 16 digit id used to identify the payments account associated with the + // billing setup. + // + // This must be passed as a string with dashes, e.g. "1234-5678-9012-3456". + optional string payments_account_id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The name of the payments account associated with the billing setup. + // + // This enables the user to specify a meaningful name for a payments account + // to aid in reconciling monthly invoices. + // + // This name will be printed in the monthly invoices. + optional string payments_account_name = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A 12 digit id used to identify the payments profile associated with the + // billing setup. + // + // This must be passed in as a string with dashes, e.g. "1234-5678-9012". + optional string payments_profile_id = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The name of the payments profile associated with the billing setup. + optional string payments_profile_name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A secondary payments profile id present in uncommon situations, e.g. + // when a sequential liability agreement has been arranged. + optional string secondary_payments_profile_id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Immutable. The resource name of the billing setup. + // BillingSetup resource names have the form: + // + // `customers/{customer_id}/billingSetups/{billing_setup_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BillingSetup" + } + ]; + + // Output only. The ID of the billing setup. + optional int64 id = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The status of the billing setup. + google.ads.googleads.v9.enums.BillingSetupStatusEnum.BillingSetupStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The resource name of the payments account associated with this billing + // setup. Payments resource names have the form: + // + // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` + // When setting up billing, this is used to signup with an existing payments + // account (and then payments_account_info should not be set). + // When getting a billing setup, this and payments_account_info will be + // populated. + optional string payments_account = 18 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/PaymentsAccount" + } + ]; + + // Immutable. The payments account information associated with this billing setup. + // When setting up billing, this is used to signup with a new payments account + // (and then payments_account should not be set). + // When getting a billing setup, this and payments_account will be + // populated. + PaymentsAccountInfo payments_account_info = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // When creating a new billing setup, this is when the setup should take + // effect. NOW is the only acceptable start time if the customer doesn't have + // any approved setups. + // + // When fetching an existing billing setup, this is the requested start time. + // However, if the setup was approved (see status) after the requested start + // time, then this is the approval time. + oneof start_time { + // Immutable. The start date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. Only a + // future time is allowed. + string start_date_time = 16 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The start time as a type. Only NOW is allowed. + google.ads.googleads.v9.enums.TimeTypeEnum.TimeType start_time_type = 10 [(google.api.field_behavior) = IMMUTABLE]; + } + + // When the billing setup ends / ended. This is either FOREVER or the start + // time of the next scheduled billing setup. + oneof end_time { + // Output only. The end date time in yyyy-MM-dd or yyyy-MM-dd HH:mm:ss format. + string end_date_time = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The end time as a type. The only possible value is FOREVER. + google.ads.googleads.v9.enums.TimeTypeEnum.TimeType end_time_type = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v9/resources/call_view.proto b/google/ads/googleads/v9/resources/call_view.proto new file mode 100644 index 000000000..3b25042d6 --- /dev/null +++ b/google/ads/googleads/v9/resources/call_view.proto @@ -0,0 +1,80 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/call_tracking_display_location.proto"; +import "google/ads/googleads/v9/enums/call_type.proto"; +import "google/ads/googleads/v9/enums/google_voice_call_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CallViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the call view resource. + +// A call view that includes data for call tracking of call-only ads or call +// extensions. +message CallView { + option (google.api.resource) = { + type: "googleads.googleapis.com/CallView" + pattern: "customers/{customer_id}/callViews/{call_detail_id}" + }; + + // Output only. The resource name of the call view. + // Call view resource names have the form: + // + // `customers/{customer_id}/callViews/{call_detail_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CallView" + } + ]; + + // Output only. Country code of the caller. + string caller_country_code = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Area code of the caller. Null if the call duration is shorter than 15 + // seconds. + string caller_area_code = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The advertiser-provided call duration in seconds. + int64 call_duration_seconds = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The advertiser-provided call start date time. + string start_call_date_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The advertiser-provided call end date time. + string end_call_date_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The call tracking display location. + google.ads.googleads.v9.enums.CallTrackingDisplayLocationEnum.CallTrackingDisplayLocation call_tracking_display_location = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the call. + google.ads.googleads.v9.enums.CallTypeEnum.CallType type = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The status of the call. + google.ads.googleads.v9.enums.GoogleVoiceCallStatusEnum.GoogleVoiceCallStatus call_status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/campaign.proto b/google/ads/googleads/v9/resources/campaign.proto new file mode 100644 index 000000000..05b761493 --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign.proto @@ -0,0 +1,449 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/bidding.proto"; +import "google/ads/googleads/v9/common/custom_parameter.proto"; +import "google/ads/googleads/v9/common/frequency_cap.proto"; +import "google/ads/googleads/v9/common/real_time_bidding_setting.proto"; +import "google/ads/googleads/v9/common/targeting_setting.proto"; +import "google/ads/googleads/v9/enums/ad_serving_optimization_status.proto"; +import "google/ads/googleads/v9/enums/advertising_channel_sub_type.proto"; +import "google/ads/googleads/v9/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v9/enums/app_campaign_app_store.proto"; +import "google/ads/googleads/v9/enums/app_campaign_bidding_strategy_goal_type.proto"; +import "google/ads/googleads/v9/enums/asset_field_type.proto"; +import "google/ads/googleads/v9/enums/bidding_strategy_type.proto"; +import "google/ads/googleads/v9/enums/brand_safety_suitability.proto"; +import "google/ads/googleads/v9/enums/campaign_experiment_type.proto"; +import "google/ads/googleads/v9/enums/campaign_serving_status.proto"; +import "google/ads/googleads/v9/enums/campaign_status.proto"; +import "google/ads/googleads/v9/enums/location_source_type.proto"; +import "google/ads/googleads/v9/enums/negative_geo_target_type.proto"; +import "google/ads/googleads/v9/enums/optimization_goal_type.proto"; +import "google/ads/googleads/v9/enums/payment_mode.proto"; +import "google/ads/googleads/v9/enums/positive_geo_target_type.proto"; +import "google/ads/googleads/v9/enums/vanity_pharma_display_url_mode.proto"; +import "google/ads/googleads/v9/enums/vanity_pharma_text.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Campaign resource. + +// A campaign. +message Campaign { + option (google.api.resource) = { + type: "googleads.googleapis.com/Campaign" + pattern: "customers/{customer_id}/campaigns/{campaign_id}" + }; + + // The network settings for the campaign. + message NetworkSettings { + // Whether ads will be served with google.com search results. + optional bool target_google_search = 5; + + // Whether ads will be served on partner sites in the Google Search Network + // (requires `target_google_search` to also be `true`). + optional bool target_search_network = 6; + + // Whether ads will be served on specified placements in the Google Display + // Network. Placements are specified using the Placement criterion. + optional bool target_content_network = 7; + + // Whether ads will be served on the Google Partner Network. + // This is available only to some select Google partner accounts. + optional bool target_partner_search_network = 8; + } + + // Campaign-level settings for hotel ads. + message HotelSettingInfo { + // Immutable. The linked Hotel Center account. + optional int64 hotel_center_id = 2 [(google.api.field_behavior) = IMMUTABLE]; + } + + // The setting for controlling Dynamic Search Ads (DSA). + message DynamicSearchAdsSetting { + // Required. The Internet domain name that this setting represents, e.g., "google.com" + // or "www.google.com". + string domain_name = 6 [(google.api.field_behavior) = REQUIRED]; + + // Required. The language code specifying the language of the domain, e.g., "en". + string language_code = 7 [(google.api.field_behavior) = REQUIRED]; + + // Whether the campaign uses advertiser supplied URLs exclusively. + optional bool use_supplied_urls_only = 8; + + // The list of page feeds associated with the campaign. + repeated string feeds = 9 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + }]; + } + + // Optimization goal setting for this campaign, which includes a set of + // optimization goal types. + message OptimizationGoalSetting { + // The list of optimization goal types. + repeated google.ads.googleads.v9.enums.OptimizationGoalTypeEnum.OptimizationGoalType optimization_goal_types = 1; + } + + // The setting for Shopping campaigns. Defines the universe of products that + // can be advertised by the campaign, and how this campaign interacts with + // other Shopping campaigns. + message ShoppingSetting { + // Immutable. ID of the Merchant Center account. + // This field is required for create operations. This field is immutable for + // Shopping campaigns. + optional int64 merchant_id = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Sales country of products to include in the campaign. + // This field is required for Shopping campaigns. + // This field is optional for non-Shopping campaigns, but it must be equal + // to 'ZZ' if set. + optional string sales_country = 6; + + // Priority of the campaign. Campaigns with numerically higher priorities + // take precedence over those with lower priorities. + // This field is required for Shopping campaigns, with values between 0 and + // 2, inclusive. + // This field is optional for Smart Shopping campaigns, but must be equal to + // 3 if set. + optional int32 campaign_priority = 7; + + // Whether to include local products. + optional bool enable_local = 8; + } + + // Campaign-level settings for tracking information. + message TrackingSetting { + // Output only. The url used for dynamic tracking. + optional string tracking_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Represents a collection of settings related to ads geotargeting. + message GeoTargetTypeSetting { + // The setting used for positive geotargeting in this particular campaign. + google.ads.googleads.v9.enums.PositiveGeoTargetTypeEnum.PositiveGeoTargetType positive_geo_target_type = 1; + + // The setting used for negative geotargeting in this particular campaign. + google.ads.googleads.v9.enums.NegativeGeoTargetTypeEnum.NegativeGeoTargetType negative_geo_target_type = 2; + } + + // Campaign setting for local campaigns. + message LocalCampaignSetting { + // The location source type for this local campaign. + google.ads.googleads.v9.enums.LocationSourceTypeEnum.LocationSourceType location_source_type = 1; + } + + // Campaign-level settings for App Campaigns. + message AppCampaignSetting { + // Represents the goal which the bidding strategy of this app campaign + // should optimize towards. + google.ads.googleads.v9.enums.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType bidding_strategy_goal_type = 1; + + // Immutable. A string that uniquely identifies a mobile application. + optional string app_id = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The application store that distributes this specific app. + google.ads.googleads.v9.enums.AppCampaignAppStoreEnum.AppCampaignAppStore app_store = 3 [(google.api.field_behavior) = IMMUTABLE]; + } + + // Describes how unbranded pharma ads will be displayed. + message VanityPharma { + // The display mode for vanity pharma URLs. + google.ads.googleads.v9.enums.VanityPharmaDisplayUrlModeEnum.VanityPharmaDisplayUrlMode vanity_pharma_display_url_mode = 1; + + // The text that will be displayed in display URL of the text ad when + // website description is the selected display mode for vanity pharma URLs. + google.ads.googleads.v9.enums.VanityPharmaTextEnum.VanityPharmaText vanity_pharma_text = 2; + } + + // Selective optimization setting for this campaign, which includes a set of + // conversion actions to optimize this campaign towards. + message SelectiveOptimization { + // The selected set of conversion actions for optimizing this campaign. + repeated string conversion_actions = 2 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionAction" + }]; + } + + // Immutable. The resource name of the campaign. + // Campaign resource names have the form: + // + // `customers/{customer_id}/campaigns/{campaign_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The ID of the campaign. + optional int64 id = 59 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the campaign. + // + // This field is required and should not be empty when creating new + // campaigns. + // + // It must not contain any null (code point 0x0), NL line feed + // (code point 0xA) or carriage return (code point 0xD) characters. + optional string name = 58; + + // The status of the campaign. + // + // When a new campaign is added, the status defaults to ENABLED. + google.ads.googleads.v9.enums.CampaignStatusEnum.CampaignStatus status = 5; + + // Output only. The ad serving status of the campaign. + google.ads.googleads.v9.enums.CampaignServingStatusEnum.CampaignServingStatus serving_status = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The ad serving optimization status of the campaign. + google.ads.googleads.v9.enums.AdServingOptimizationStatusEnum.AdServingOptimizationStatus ad_serving_optimization_status = 8; + + // Immutable. The primary serving target for ads within the campaign. + // The targeting options can be refined in `network_settings`. + // + // This field is required and should not be empty when creating new + // campaigns. + // + // Can be set only when creating campaigns. + // After the campaign is created, the field can not be changed. + google.ads.googleads.v9.enums.AdvertisingChannelTypeEnum.AdvertisingChannelType advertising_channel_type = 9 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Optional refinement to `advertising_channel_type`. + // Must be a valid sub-type of the parent channel type. + // + // Can be set only when creating campaigns. + // After campaign is created, the field can not be changed. + google.ads.googleads.v9.enums.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType advertising_channel_sub_type = 10 [(google.api.field_behavior) = IMMUTABLE]; + + // The URL template for constructing a tracking URL. + optional string tracking_url_template = 60; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v9.common.CustomParameter url_custom_parameters = 12; + + // Settings for Real-Time Bidding, a feature only available for campaigns + // targeting the Ad Exchange network. + google.ads.googleads.v9.common.RealTimeBiddingSetting real_time_bidding_setting = 39; + + // The network settings for the campaign. + NetworkSettings network_settings = 14; + + // Immutable. The hotel setting for the campaign. + HotelSettingInfo hotel_setting = 32 [(google.api.field_behavior) = IMMUTABLE]; + + // The setting for controlling Dynamic Search Ads (DSA). + DynamicSearchAdsSetting dynamic_search_ads_setting = 33; + + // The setting for controlling Shopping campaigns. + ShoppingSetting shopping_setting = 36; + + // Setting for targeting related features. + google.ads.googleads.v9.common.TargetingSetting targeting_setting = 43; + + // The setting for ads geotargeting. + GeoTargetTypeSetting geo_target_type_setting = 47; + + // The setting for local campaign. + LocalCampaignSetting local_campaign_setting = 50; + + // The setting related to App Campaign. + AppCampaignSetting app_campaign_setting = 51; + + // Output only. The resource names of labels attached to this campaign. + repeated string labels = 61 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignLabel" + } + ]; + + // Output only. The type of campaign: normal, draft, or experiment. + google.ads.googleads.v9.enums.CampaignExperimentTypeEnum.CampaignExperimentType experiment_type = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the base campaign of a draft or experiment campaign. + // For base campaigns, this is equal to `resource_name`. + // + // This field is read-only. + optional string base_campaign = 56 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // The budget of the campaign. + optional string campaign_budget = 62 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBudget" + }]; + + // Output only. The type of bidding strategy. + // + // A bidding strategy can be created by setting either the bidding scheme to + // create a standard bidding strategy or the `bidding_strategy` field to + // create a portfolio bidding strategy. + // + // This field is read-only. + google.ads.googleads.v9.enums.BiddingStrategyTypeEnum.BiddingStrategyType bidding_strategy_type = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Resource name of AccessibleBiddingStrategy, a read-only view of the + // unrestricted attributes of the attached portfolio bidding + // strategy identified by 'bidding_strategy'. Empty, if the campaign does not + // use a portfolio strategy. + // Unrestricted strategy attributes are available to all customers + // with whom the strategy is shared and are read from the + // AccessibleBiddingStrategy resource. In contrast, restricted attributes are + // only available to the owner customer of the strategy and their managers. + // Restricted attributes can only be read from the BiddingStrategy resource. + string accessible_bidding_strategy = 71 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccessibleBiddingStrategy" + } + ]; + + // The date when campaign started. + optional string start_date = 63; + + // The last day of the campaign. + optional string end_date = 64; + + // Suffix used to append query parameters to landing pages that are served + // with parallel tracking. + optional string final_url_suffix = 65; + + // A list that limits how often each user will see this campaign's ads. + repeated google.ads.googleads.v9.common.FrequencyCapEntry frequency_caps = 40; + + // Output only. 3-Tier Brand Safety setting for the campaign. + google.ads.googleads.v9.enums.BrandSafetySuitabilityEnum.BrandSafetySuitability video_brand_safety_suitability = 42 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Describes how unbranded pharma ads will be displayed. + VanityPharma vanity_pharma = 44; + + // Selective optimization setting for this campaign, which includes a set of + // conversion actions to optimize this campaign towards. + SelectiveOptimization selective_optimization = 45; + + // Optimization goal setting for this campaign, which includes a set of + // optimization goal types. + OptimizationGoalSetting optimization_goal_setting = 54; + + // Output only. Campaign-level settings for tracking information. + TrackingSetting tracking_setting = 46 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Payment mode for the campaign. + google.ads.googleads.v9.enums.PaymentModeEnum.PaymentMode payment_mode = 52; + + // Output only. Optimization score of the campaign. + // + // Optimization score is an estimate of how well a campaign is set to perform. + // It ranges from 0% (0.0) to 100% (1.0), with 100% indicating that the + // campaign is performing at full potential. This field is null for unscored + // campaigns. + // + // See "About optimization score" at + // https://support.google.com/google-ads/answer/9061546. + // + // This field is read-only. + optional double optimization_score = 66 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The asset field types that should be excluded from this campaign. Asset + // links with these field types will not be inherited by this campaign from + // the upper level. + repeated google.ads.googleads.v9.enums.AssetFieldTypeEnum.AssetFieldType excluded_parent_asset_field_types = 69; + + // Represents opting out of URL expansion to more targeted URLs. If opted out + // (true), only the final URLs in the asset group or URLs specified in the + // advertiser's Google Merchant Center or business data feeds are targeted. + // If opted in (false), the entire domain will be targeted. This field can + // only be set for Performance Max campaigns, where the default value is + // false. + optional bool url_expansion_opt_out = 72; + + // The bidding strategy for the campaign. + // + // Must be either portfolio (created via BiddingStrategy service) or + // standard, that is embedded into the campaign. + oneof campaign_bidding_strategy { + // Portfolio bidding strategy used by campaign. + string bidding_strategy = 67 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingStrategy" + }]; + + // Commission is an automatic bidding strategy in which the advertiser pays + // a certain portion of the conversion value. + google.ads.googleads.v9.common.Commission commission = 49; + + // Standard Manual CPC bidding strategy. + // Manual click-based bidding where user pays per click. + google.ads.googleads.v9.common.ManualCpc manual_cpc = 24; + + // Standard Manual CPM bidding strategy. + // Manual impression-based bidding where user pays per thousand + // impressions. + google.ads.googleads.v9.common.ManualCpm manual_cpm = 25; + + // Output only. A bidding strategy that pays a configurable amount per video view. + google.ads.googleads.v9.common.ManualCpv manual_cpv = 37 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Standard Maximize Conversions bidding strategy that automatically + // maximizes number of conversions while spending your budget. + google.ads.googleads.v9.common.MaximizeConversions maximize_conversions = 30; + + // Standard Maximize Conversion Value bidding strategy that automatically + // sets bids to maximize revenue while spending your budget. + google.ads.googleads.v9.common.MaximizeConversionValue maximize_conversion_value = 31; + + // Standard Target CPA bidding strategy that automatically sets bids to + // help get as many conversions as possible at the target + // cost-per-acquisition (CPA) you set. + google.ads.googleads.v9.common.TargetCpa target_cpa = 26; + + // Target Impression Share bidding strategy. An automated bidding strategy + // that sets bids to achieve a desired percentage of impressions. + google.ads.googleads.v9.common.TargetImpressionShare target_impression_share = 48; + + // Standard Target ROAS bidding strategy that automatically maximizes + // revenue while averaging a specific target return on ad spend (ROAS). + google.ads.googleads.v9.common.TargetRoas target_roas = 29; + + // Standard Target Spend bidding strategy that automatically sets your bids + // to help get as many clicks as possible within your budget. + google.ads.googleads.v9.common.TargetSpend target_spend = 27; + + // Standard Percent Cpc bidding strategy where bids are a fraction of the + // advertised price for some good or service. + google.ads.googleads.v9.common.PercentCpc percent_cpc = 34; + + // A bidding strategy that automatically optimizes cost per thousand + // impressions. + google.ads.googleads.v9.common.TargetCpm target_cpm = 41; + } +} diff --git a/google/ads/googleads/v9/resources/campaign_asset.proto b/google/ads/googleads/v9/resources/campaign_asset.proto new file mode 100644 index 000000000..b78f1fcf5 --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_asset.proto @@ -0,0 +1,76 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/asset_field_type.proto"; +import "google/ads/googleads/v9/enums/asset_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignAssetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CampaignAsset resource. + +// A link between a Campaign and an Asset. +message CampaignAsset { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignAsset" + pattern: "customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}" + }; + + // Immutable. The resource name of the campaign asset. + // CampaignAsset resource names have the form: + // + // `customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignAsset" + } + ]; + + // Immutable. The campaign to which the asset is linked. + optional string campaign = 6 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Immutable. The asset which is linked to the campaign. + optional string asset = 7 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Immutable. Role that the asset takes under the linked campaign. + // Required. + google.ads.googleads.v9.enums.AssetFieldTypeEnum.AssetFieldType field_type = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Status of the campaign asset. + google.ads.googleads.v9.enums.AssetLinkStatusEnum.AssetLinkStatus status = 5; +} diff --git a/google/ads/googleads/v9/resources/campaign_asset_set.proto b/google/ads/googleads/v9/resources/campaign_asset_set.proto new file mode 100644 index 000000000..a0e0edf7e --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_asset_set.proto @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/asset_set_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignAssetSetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CampaignAsset resource. + +// CampaignAssetSet is the linkage between a campaign and an asset set. +// Adding a CampaignAssetSet links an asset set with a campaign. +message CampaignAssetSet { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignAssetSet" + pattern: "customers/{customer_id}/campaignAssetSets/{campaign_id}~{asset_set_id}" + }; + + // Immutable. The resource name of the campaign asset set. + // Asset set asset resource names have the form: + // + // `customers/{customer_id}/campaignAssetSets/{campaign_id}~{asset_set_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignAssetSet" + } + ]; + + // Immutable. The campaign to which this asset set is linked. + string campaign = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Immutable. The asset set which is linked to the campaign. + string asset_set = 3 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetSet" + } + ]; + + // Output only. The status of the campaign asset set asset. Read-only. + google.ads.googleads.v9.enums.AssetSetLinkStatusEnum.AssetSetLinkStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/campaign_audience_view.proto b/google/ads/googleads/v9/resources/campaign_audience_view.proto new file mode 100644 index 000000000..1f40fd485 --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_audience_view.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignAudienceViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the campaign audience view resource. + +// A campaign audience view. +// Includes performance data from interests and remarketing lists for Display +// Network and YouTube Network ads, and remarketing lists for search ads (RLSA), +// aggregated by campaign and audience criterion. This view only includes +// audiences attached at the campaign level. +message CampaignAudienceView { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignAudienceView" + pattern: "customers/{customer_id}/campaignAudienceViews/{campaign_id}~{criterion_id}" + }; + + // Output only. The resource name of the campaign audience view. + // Campaign audience view resource names have the form: + // + // `customers/{customer_id}/campaignAudienceViews/{campaign_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignAudienceView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/campaign_bid_modifier.proto b/google/ads/googleads/v9/resources/campaign_bid_modifier.proto new file mode 100644 index 000000000..f7415a8fd --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_bid_modifier.proto @@ -0,0 +1,76 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBidModifierProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Campaign Bid Modifier resource. + +// Represents a bid-modifiable only criterion at the campaign level. +message CampaignBidModifier { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignBidModifier" + pattern: "customers/{customer_id}/campaignBidModifiers/{campaign_id}~{criterion_id}" + }; + + // Immutable. The resource name of the campaign bid modifier. + // Campaign bid modifier resource names have the form: + // + // `customers/{customer_id}/campaignBidModifiers/{campaign_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBidModifier" + } + ]; + + // Output only. The campaign to which this criterion belongs. + optional string campaign = 6 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The ID of the criterion to bid modify. + // + // This field is ignored for mutates. + optional int64 criterion_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The modifier for the bid when the criterion matches. + optional double bid_modifier = 8; + + // The criterion of this campaign bid modifier. + // + // Required in create operations starting in V5. + oneof criterion { + // Immutable. Criterion for interaction type. Only supported for search campaigns. + google.ads.googleads.v9.common.InteractionTypeInfo interaction_type = 5 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v9/resources/campaign_budget.proto b/google/ads/googleads/v9/resources/campaign_budget.proto new file mode 100644 index 000000000..4401d6dbf --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_budget.proto @@ -0,0 +1,156 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/budget_delivery_method.proto"; +import "google/ads/googleads/v9/enums/budget_period.proto"; +import "google/ads/googleads/v9/enums/budget_status.proto"; +import "google/ads/googleads/v9/enums/budget_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBudgetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Budget resource. + +// A campaign budget. +message CampaignBudget { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignBudget" + pattern: "customers/{customer_id}/campaignBudgets/{campaign_budget_id}" + }; + + // Immutable. The resource name of the campaign budget. + // Campaign budget resource names have the form: + // + // `customers/{customer_id}/campaignBudgets/{campaign_budget_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBudget" + } + ]; + + // Output only. The ID of the campaign budget. + // + // A campaign budget is created using the CampaignBudgetService create + // operation and is assigned a budget ID. A budget ID can be shared across + // different campaigns; the system will then allocate the campaign budget + // among different campaigns to get optimum results. + optional int64 id = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the campaign budget. + // + // When creating a campaign budget through CampaignBudgetService, every + // explicitly shared campaign budget must have a non-null, non-empty name. + // Campaign budgets that are not explicitly shared derive their name from the + // attached campaign's name. + // + // The length of this string must be between 1 and 255, inclusive, + // in UTF-8 bytes, (trimmed). + optional string name = 20; + + // The amount of the budget, in the local currency for the account. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. Monthly spend is capped at 30.4 times this amount. + optional int64 amount_micros = 21; + + // The lifetime amount of the budget, in the local currency for the account. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + optional int64 total_amount_micros = 22; + + // Output only. The status of this campaign budget. This field is read-only. + google.ads.googleads.v9.enums.BudgetStatusEnum.BudgetStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The delivery method that determines the rate at which the campaign budget + // is spent. + // + // Defaults to STANDARD if unspecified in a create operation. + google.ads.googleads.v9.enums.BudgetDeliveryMethodEnum.BudgetDeliveryMethod delivery_method = 7; + + // Specifies whether the budget is explicitly shared. Defaults to true if + // unspecified in a create operation. + // + // If true, the budget was created with the purpose of sharing + // across one or more campaigns. + // + // If false, the budget was created with the intention of only being used + // with a single campaign. The budget's name and status will stay in sync + // with the campaign's name and status. Attempting to share the budget with a + // second campaign will result in an error. + // + // A non-shared budget can become an explicitly shared. The same operation + // must also assign the budget a name. + // + // A shared campaign budget can never become non-shared. + optional bool explicitly_shared = 23; + + // Output only. The number of campaigns actively using the budget. + // + // This field is read-only. + optional int64 reference_count = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Indicates whether there is a recommended budget for this campaign budget. + // + // This field is read-only. + optional bool has_recommended_budget = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended budget amount. If no recommendation is available, this will + // be set to the budget amount. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + // + // This field is read-only. + optional int64 recommended_budget_amount_micros = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Period over which to spend the budget. Defaults to DAILY if not specified. + google.ads.googleads.v9.enums.BudgetPeriodEnum.BudgetPeriod period = 13 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The estimated change in weekly clicks if the recommended budget is applied. + // + // This field is read-only. + optional int64 recommended_budget_estimated_change_weekly_clicks = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The estimated change in weekly cost in micros if the recommended budget is + // applied. One million is equivalent to one currency unit. + // + // This field is read-only. + optional int64 recommended_budget_estimated_change_weekly_cost_micros = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The estimated change in weekly interactions if the recommended budget is + // applied. + // + // This field is read-only. + optional int64 recommended_budget_estimated_change_weekly_interactions = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The estimated change in weekly views if the recommended budget is applied. + // + // This field is read-only. + optional int64 recommended_budget_estimated_change_weekly_views = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The type of the campaign budget. + google.ads.googleads.v9.enums.BudgetTypeEnum.BudgetType type = 18 [(google.api.field_behavior) = IMMUTABLE]; +} diff --git a/google/ads/googleads/v9/resources/campaign_conversion_goal.proto b/google/ads/googleads/v9/resources/campaign_conversion_goal.proto new file mode 100644 index 000000000..7556d1eba --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_conversion_goal.proto @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/conversion_action_category.proto"; +import "google/ads/googleads/v9/enums/conversion_origin.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignConversionGoalProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// The biddability setting for the specified campaign only for all +// conversion actions with a matching category and origin. +message CampaignConversionGoal { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignConversionGoal" + pattern: "customers/{customer_id}/campaignConversionGoals/{campaign_id}~{category}~{source}" + }; + + // Immutable. The resource name of the campaign conversion goal. + // Campaign conversion goal resource names have the form: + // + // `customers/{customer_id}/campaignConversionGoals/{campaign_id}~{category}~{origin}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignConversionGoal" + } + ]; + + // Immutable. The campaign with which this campaign conversion goal is associated. + string campaign = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // The conversion category of this campaign conversion goal. + google.ads.googleads.v9.enums.ConversionActionCategoryEnum.ConversionActionCategory category = 3; + + // The conversion origin of this campaign conversion goal. + google.ads.googleads.v9.enums.ConversionOriginEnum.ConversionOrigin origin = 4; + + // The biddability of the campaign conversion goal. + bool biddable = 5; +} diff --git a/google/ads/googleads/v9/resources/campaign_criterion.proto b/google/ads/googleads/v9/resources/campaign_criterion.proto new file mode 100644 index 000000000..924b3993d --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_criterion.proto @@ -0,0 +1,181 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/enums/campaign_criterion_status.proto"; +import "google/ads/googleads/v9/enums/criterion_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Campaign Criterion resource. + +// A campaign criterion. +message CampaignCriterion { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignCriterion" + pattern: "customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}" + }; + + // Immutable. The resource name of the campaign criterion. + // Campaign criterion resource names have the form: + // + // `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignCriterion" + } + ]; + + // Immutable. The campaign to which the criterion belongs. + optional string campaign = 37 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The ID of the criterion. + // + // This field is ignored during mutate. + optional int64 criterion_id = 38 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The display name of the criterion. + // + // This field is ignored for mutates. + string display_name = 43 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The modifier for the bids when the criterion matches. The modifier must be + // in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. + // Use 0 to opt out of a Device type. + optional float bid_modifier = 39; + + // Immutable. Whether to target (`false`) or exclude (`true`) the criterion. + optional bool negative = 40 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The type of the criterion. + google.ads.googleads.v9.enums.CriterionTypeEnum.CriterionType type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The status of the criterion. + google.ads.googleads.v9.enums.CampaignCriterionStatusEnum.CampaignCriterionStatus status = 35; + + // The campaign criterion. + // + // Exactly one must be set. + oneof criterion { + // Immutable. Keyword. + google.ads.googleads.v9.common.KeywordInfo keyword = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Placement. + google.ads.googleads.v9.common.PlacementInfo placement = 9 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile app category. + google.ads.googleads.v9.common.MobileAppCategoryInfo mobile_app_category = 10 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile application. + google.ads.googleads.v9.common.MobileApplicationInfo mobile_application = 11 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Location. + google.ads.googleads.v9.common.LocationInfo location = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Device. + google.ads.googleads.v9.common.DeviceInfo device = 13 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Ad Schedule. + google.ads.googleads.v9.common.AdScheduleInfo ad_schedule = 15 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Age range. + google.ads.googleads.v9.common.AgeRangeInfo age_range = 16 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Gender. + google.ads.googleads.v9.common.GenderInfo gender = 17 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Income range. + google.ads.googleads.v9.common.IncomeRangeInfo income_range = 18 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Parental status. + google.ads.googleads.v9.common.ParentalStatusInfo parental_status = 19 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. User List. + google.ads.googleads.v9.common.UserListInfo user_list = 22 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Video. + google.ads.googleads.v9.common.YouTubeVideoInfo youtube_video = 20 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Channel. + google.ads.googleads.v9.common.YouTubeChannelInfo youtube_channel = 21 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Proximity. + google.ads.googleads.v9.common.ProximityInfo proximity = 23 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Topic. + google.ads.googleads.v9.common.TopicInfo topic = 24 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Listing scope. + google.ads.googleads.v9.common.ListingScopeInfo listing_scope = 25 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Language. + google.ads.googleads.v9.common.LanguageInfo language = 26 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. IpBlock. + google.ads.googleads.v9.common.IpBlockInfo ip_block = 27 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. ContentLabel. + google.ads.googleads.v9.common.ContentLabelInfo content_label = 28 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Carrier. + google.ads.googleads.v9.common.CarrierInfo carrier = 29 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. User Interest. + google.ads.googleads.v9.common.UserInterestInfo user_interest = 30 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Webpage. + google.ads.googleads.v9.common.WebpageInfo webpage = 31 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Operating system version. + google.ads.googleads.v9.common.OperatingSystemVersionInfo operating_system_version = 32 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile Device. + google.ads.googleads.v9.common.MobileDeviceInfo mobile_device = 33 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Location Group + google.ads.googleads.v9.common.LocationGroupInfo location_group = 34 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Affinity. + google.ads.googleads.v9.common.CustomAffinityInfo custom_affinity = 36 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Audience + google.ads.googleads.v9.common.CustomAudienceInfo custom_audience = 41 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Combined Audience. + google.ads.googleads.v9.common.CombinedAudienceInfo combined_audience = 42 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Smart Campaign Keyword Theme. + google.ads.googleads.v9.common.KeywordThemeInfo keyword_theme = 45 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v9/resources/campaign_criterion_simulation.proto b/google/ads/googleads/v9/resources/campaign_criterion_simulation.proto new file mode 100644 index 000000000..3165994bc --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_criterion_simulation.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/simulation.proto"; +import "google/ads/googleads/v9/enums/simulation_modification_method.proto"; +import "google/ads/googleads/v9/enums/simulation_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionSimulationProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the campaign criterion simulation resource. + +// A campaign criterion simulation. Supported combinations of advertising +// channel type, criterion ids, simulation type and simulation modification +// method is detailed below respectively. +// +// 1. SEARCH - 30000,30001,30002 - BID_MODIFIER - UNIFORM +// 2. DISPLAY - 30001 - BID_MODIFIER - UNIFORM +message CampaignCriterionSimulation { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignCriterionSimulation" + pattern: "customers/{customer_id}/campaignCriterionSimulations/{campaign_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}" + }; + + // Output only. The resource name of the campaign criterion simulation. + // Campaign criterion simulation resource names have the form: + // + // `customers/{customer_id}/campaignCriterionSimulations/{campaign_id}~{criterion_id}~{type}~{modification_method}~{start_date}~{end_date}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignCriterionSimulation" + } + ]; + + // Output only. Campaign ID of the simulation. + optional int64 campaign_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Criterion ID of the simulation. + optional int64 criterion_id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The field that the simulation modifies. + google.ads.googleads.v9.enums.SimulationTypeEnum.SimulationType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. How the simulation modifies the field. + google.ads.googleads.v9.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. First day on which the simulation is based, in YYYY-MM-DD format. + optional string start_date = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Last day on which the simulation is based, in YYYY-MM-DD format. + optional string end_date = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of simulation points. + oneof point_list { + // Output only. Simulation points if the simulation type is BID_MODIFIER. + google.ads.googleads.v9.common.BidModifierSimulationPointList bid_modifier_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v9/resources/campaign_customizer.proto b/google/ads/googleads/v9/resources/campaign_customizer.proto new file mode 100644 index 000000000..06903164c --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_customizer.proto @@ -0,0 +1,76 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/customizer_value.proto"; +import "google/ads/googleads/v9/enums/customizer_value_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCustomizerProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// A customizer value for the associated CustomizerAttribute at the Campaign +// level. +message CampaignCustomizer { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignCustomizer" + pattern: "customers/{customer_id}/campaignCustomizers/{campaign_id}~{customizer_attribute_id}" + }; + + // Immutable. The resource name of the campaign customizer. + // Campaign customizer resource names have the form: + // + // `customers/{customer_id}/campaignCustomizers/{campaign_id}~{customizer_attribute_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignCustomizer" + } + ]; + + // Immutable. The campaign to which the customizer attribute is linked. + string campaign = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Required. Immutable. The customizer attribute which is linked to the campaign. + string customizer_attribute = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomizerAttribute" + } + ]; + + // Output only. The status of the campaign customizer. + google.ads.googleads.v9.enums.CustomizerValueStatusEnum.CustomizerValueStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The value to associate with the customizer attribute at this level. The + // value must be of the type specified for the CustomizerAttribute. + google.ads.googleads.v9.common.CustomizerValue value = 5 [(google.api.field_behavior) = REQUIRED]; +} diff --git a/google/ads/googleads/v9/resources/campaign_draft.proto b/google/ads/googleads/v9/resources/campaign_draft.proto new file mode 100644 index 000000000..a6ff902ec --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_draft.proto @@ -0,0 +1,98 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/campaign_draft_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignDraftProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Campaign Draft resource. + +// A campaign draft. +message CampaignDraft { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignDraft" + pattern: "customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}" + }; + + // Immutable. The resource name of the campaign draft. + // Campaign draft resource names have the form: + // + // `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignDraft" + } + ]; + + // Output only. The ID of the draft. + // + // This field is read-only. + optional int64 draft_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The base campaign to which the draft belongs. + optional string base_campaign = 10 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // The name of the campaign draft. + // + // This field is required and should not be empty when creating new + // campaign drafts. + // + // It must not contain any null (code point 0x0), NL line feed + // (code point 0xA) or carriage return (code point 0xD) characters. + optional string name = 11; + + // Output only. Resource name of the Campaign that results from overlaying the draft + // changes onto the base campaign. + // + // This field is read-only. + optional string draft_campaign = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The status of the campaign draft. This field is read-only. + // + // When a new campaign draft is added, the status defaults to PROPOSED. + google.ads.googleads.v9.enums.CampaignDraftStatusEnum.CampaignDraftStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether there is an experiment based on this draft currently serving. + optional bool has_experiment_running = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the long-running operation that can be used to poll + // for completion of draft promotion. This is only set if the draft promotion + // is in progress or finished. + optional string long_running_operation = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/campaign_experiment.proto b/google/ads/googleads/v9/resources/campaign_experiment.proto new file mode 100644 index 000000000..1d831e74f --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_experiment.proto @@ -0,0 +1,121 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/campaign_experiment_status.proto"; +import "google/ads/googleads/v9/enums/campaign_experiment_traffic_split_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Campaign Experiment resource. + +// An A/B experiment that compares the performance of the base campaign +// (the control) and a variation of that campaign (the experiment). +message CampaignExperiment { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignExperiment" + pattern: "customers/{customer_id}/campaignExperiments/{campaign_experiment_id}" + }; + + // Immutable. The resource name of the campaign experiment. + // Campaign experiment resource names have the form: + // + // `customers/{customer_id}/campaignExperiments/{campaign_experiment_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignExperiment" + } + ]; + + // Output only. The ID of the campaign experiment. + // + // This field is read-only. + optional int64 id = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The campaign draft with staged changes to the base campaign. + optional string campaign_draft = 14 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignDraft" + } + ]; + + // The name of the campaign experiment. + // + // This field is required when creating new campaign experiments + // and must not conflict with the name of another non-removed + // campaign experiment or campaign. + // + // It must not contain any null (code point 0x0), NL line feed + // (code point 0xA) or carriage return (code point 0xD) characters. + optional string name = 15; + + // The description of the experiment. + optional string description = 16; + + // Immutable. Share of traffic directed to experiment as a percent (must be between 1 and + // 99 inclusive. Base campaign receives the remainder of the traffic + // (100 - traffic_split_percent). Required for create. + optional int64 traffic_split_percent = 17 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Determines the behavior of the traffic split. + google.ads.googleads.v9.enums.CampaignExperimentTrafficSplitTypeEnum.CampaignExperimentTrafficSplitType traffic_split_type = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The experiment campaign, as opposed to the base campaign. + optional string experiment_campaign = 18 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The status of the campaign experiment. This field is read-only. + google.ads.googleads.v9.enums.CampaignExperimentStatusEnum.CampaignExperimentStatus status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the long-running operation that can be used to poll + // for completion of experiment create or promote. The most recent long + // running operation is returned. + optional string long_running_operation = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Date when the campaign experiment starts. By default, the experiment starts + // now or on the campaign's start date, whichever is later. If this field is + // set, then the experiment starts at the beginning of the specified date in + // the customer's time zone. Cannot be changed once the experiment starts. + // + // Format: YYYY-MM-DD + // Example: 2019-03-14 + optional string start_date = 20; + + // The last day of the campaign experiment. By default, the experiment ends on + // the campaign's end date. If this field is set, then the experiment ends at + // the end of the specified date in the customer's time zone. + // + // Format: YYYY-MM-DD + // Example: 2019-04-18 + optional string end_date = 21; +} diff --git a/google/ads/googleads/v9/resources/campaign_extension_setting.proto b/google/ads/googleads/v9/resources/campaign_extension_setting.proto new file mode 100644 index 000000000..ff9601678 --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_extension_setting.proto @@ -0,0 +1,79 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/extension_setting_device.proto"; +import "google/ads/googleads/v9/enums/extension_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExtensionSettingProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CampaignExtensionSetting resource. + +// A campaign extension setting. +message CampaignExtensionSetting { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignExtensionSetting" + pattern: "customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}" + }; + + // Immutable. The resource name of the campaign extension setting. + // CampaignExtensionSetting resource names have the form: + // + // `customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignExtensionSetting" + } + ]; + + // Immutable. The extension type of the customer extension setting. + google.ads.googleads.v9.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The resource name of the campaign. The linked extension feed items will + // serve under this campaign. + // Campaign resource names have the form: + // + // `customers/{customer_id}/campaigns/{campaign_id}` + optional string campaign = 6 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // The resource names of the extension feed items to serve under the campaign. + // ExtensionFeedItem resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + repeated string extension_feed_items = 7 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + }]; + + // The device for which the extensions will serve. Optional. + google.ads.googleads.v9.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 5; +} diff --git a/google/ads/googleads/v9/resources/campaign_feed.proto b/google/ads/googleads/v9/resources/campaign_feed.proto new file mode 100644 index 000000000..ce353d131 --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_feed.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/matching_function.proto"; +import "google/ads/googleads/v9/enums/feed_link_status.proto"; +import "google/ads/googleads/v9/enums/placeholder_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignFeedProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CampaignFeed resource. + +// A campaign feed. +message CampaignFeed { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignFeed" + pattern: "customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id}" + }; + + // Immutable. The resource name of the campaign feed. + // Campaign feed resource names have the form: + // + // `customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id} + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignFeed" + } + ]; + + // Immutable. The feed to which the CampaignFeed belongs. + optional string feed = 7 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Immutable. The campaign to which the CampaignFeed belongs. + optional string campaign = 8 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Indicates which placeholder types the feed may populate under the connected + // campaign. Required. + repeated google.ads.googleads.v9.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 4; + + // Matching function associated with the CampaignFeed. + // The matching function is used to filter the set of feed items selected. + // Required. + google.ads.googleads.v9.common.MatchingFunction matching_function = 5; + + // Output only. Status of the campaign feed. + // This field is read-only. + google.ads.googleads.v9.enums.FeedLinkStatusEnum.FeedLinkStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/campaign_label.proto b/google/ads/googleads/v9/resources/campaign_label.proto new file mode 100644 index 000000000..b27ff4b5e --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_label.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignLabelProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the campaign label resource. + +// Represents a relationship between a campaign and a label. +message CampaignLabel { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignLabel" + pattern: "customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}" + }; + + // Immutable. Name of the resource. + // Campaign label resource names have the form: + // `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignLabel" + } + ]; + + // Immutable. The campaign to which the label is attached. + optional string campaign = 4 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Immutable. The label assigned to the campaign. + optional string label = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/campaign_shared_set.proto b/google/ads/googleads/v9/resources/campaign_shared_set.proto new file mode 100644 index 000000000..03a0c581f --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_shared_set.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/campaign_shared_set_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSharedSetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CampaignSharedSet resource. + +// CampaignSharedSets are used for managing the shared sets associated with a +// campaign. +message CampaignSharedSet { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignSharedSet" + pattern: "customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}" + }; + + // Immutable. The resource name of the campaign shared set. + // Campaign shared set resource names have the form: + // + // `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignSharedSet" + } + ]; + + // Immutable. The campaign to which the campaign shared set belongs. + optional string campaign = 5 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Immutable. The shared set associated with the campaign. This may be a negative keyword + // shared set of another customer. This customer should be a manager of the + // other customer, otherwise the campaign shared set will exist but have no + // serving effect. Only negative keyword shared sets can be associated with + // Shopping campaigns. Only negative placement shared sets can be associated + // with Display mobile app campaigns. + optional string shared_set = 6 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedSet" + } + ]; + + // Output only. The status of this campaign shared set. Read only. + google.ads.googleads.v9.enums.CampaignSharedSetStatusEnum.CampaignSharedSetStatus status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/campaign_simulation.proto b/google/ads/googleads/v9/resources/campaign_simulation.proto new file mode 100644 index 000000000..3c42edc48 --- /dev/null +++ b/google/ads/googleads/v9/resources/campaign_simulation.proto @@ -0,0 +1,102 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/simulation.proto"; +import "google/ads/googleads/v9/enums/simulation_modification_method.proto"; +import "google/ads/googleads/v9/enums/simulation_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSimulationProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the campaign simulation resource. + +// A campaign simulation. Supported combinations of advertising +// channel type, simulation type and simulation modification +// method is detailed below respectively. +// +// SEARCH - CPC_BID - UNIFORM +// SEARCH - CPC_BID - SCALING +// SEARCH - TARGET_CPA - UNIFORM +// SEARCH - TARGET_CPA - SCALING +// SEARCH - TARGET_ROAS - UNIFORM +// SEARCH - TARGET_IMPRESSION_SHARE - UNIFORM +// SEARCH - BUDGET - UNIFORM +// SHOPPING - BUDGET - UNIFORM +// SHOPPING - TARGET_ROAS - UNIFORM +// MULTIPLE - TARGET_CPA - UNIFORM +// OWNED_AND_OPERATED - TARGET_CPA - DEFAULT +// DISPLAY - TARGET_CPA - UNIFORM +message CampaignSimulation { + option (google.api.resource) = { + type: "googleads.googleapis.com/CampaignSimulation" + pattern: "customers/{customer_id}/campaignSimulations/{campaign_id}~{type}~{modification_method}~{start_date}~{end_date}" + }; + + // Output only. The resource name of the campaign simulation. + // Campaign simulation resource names have the form: + // + // `customers/{customer_id}/campaignSimulations/{campaign_id}~{type}~{modification_method}~{start_date}~{end_date}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignSimulation" + } + ]; + + // Output only. Campaign id of the simulation. + int64 campaign_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The field that the simulation modifies. + google.ads.googleads.v9.enums.SimulationTypeEnum.SimulationType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. How the simulation modifies the field. + google.ads.googleads.v9.enums.SimulationModificationMethodEnum.SimulationModificationMethod modification_method = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. First day on which the simulation is based, in YYYY-MM-DD format. + string start_date = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Last day on which the simulation is based, in YYYY-MM-DD format + string end_date = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of simulation points. + oneof point_list { + // Output only. Simulation points if the simulation type is CPC_BID. + google.ads.googleads.v9.common.CpcBidSimulationPointList cpc_bid_point_list = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_CPA. + google.ads.googleads.v9.common.TargetCpaSimulationPointList target_cpa_point_list = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_ROAS. + google.ads.googleads.v9.common.TargetRoasSimulationPointList target_roas_point_list = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is TARGET_IMPRESSION_SHARE. + google.ads.googleads.v9.common.TargetImpressionShareSimulationPointList target_impression_share_point_list = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Simulation points if the simulation type is BUDGET. + google.ads.googleads.v9.common.BudgetSimulationPointList budget_point_list = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v9/resources/carrier_constant.proto b/google/ads/googleads/v9/resources/carrier_constant.proto new file mode 100644 index 000000000..9d9428346 --- /dev/null +++ b/google/ads/googleads/v9/resources/carrier_constant.proto @@ -0,0 +1,61 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CarrierConstantProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Carrier constant resource. + +// A carrier criterion that can be used in campaign targeting. +message CarrierConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/CarrierConstant" + pattern: "carrierConstants/{criterion_id}" + }; + + // Output only. The resource name of the carrier criterion. + // Carrier criterion resource names have the form: + // + // `carrierConstants/{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CarrierConstant" + } + ]; + + // Output only. The ID of the carrier criterion. + optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The full name of the carrier in English. + optional string name = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The country code of the country where the carrier is located, e.g., "AR", + // "FR", etc. + optional string country_code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/change_event.proto b/google/ads/googleads/v9/resources/change_event.proto new file mode 100644 index 000000000..f66e36a02 --- /dev/null +++ b/google/ads/googleads/v9/resources/change_event.proto @@ -0,0 +1,203 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/ad_type.proto"; +import "google/ads/googleads/v9/enums/advertising_channel_sub_type.proto"; +import "google/ads/googleads/v9/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v9/enums/asset_type.proto"; +import "google/ads/googleads/v9/enums/change_client_type.proto"; +import "google/ads/googleads/v9/enums/change_event_resource_type.proto"; +import "google/ads/googleads/v9/enums/criterion_type.proto"; +import "google/ads/googleads/v9/enums/feed_origin.proto"; +import "google/ads/googleads/v9/enums/resource_change_operation.proto"; +import "google/ads/googleads/v9/resources/ad.proto"; +import "google/ads/googleads/v9/resources/ad_group.proto"; +import "google/ads/googleads/v9/resources/ad_group_ad.proto"; +import "google/ads/googleads/v9/resources/ad_group_asset.proto"; +import "google/ads/googleads/v9/resources/ad_group_bid_modifier.proto"; +import "google/ads/googleads/v9/resources/ad_group_criterion.proto"; +import "google/ads/googleads/v9/resources/ad_group_feed.proto"; +import "google/ads/googleads/v9/resources/asset.proto"; +import "google/ads/googleads/v9/resources/campaign.proto"; +import "google/ads/googleads/v9/resources/campaign_asset.proto"; +import "google/ads/googleads/v9/resources/campaign_budget.proto"; +import "google/ads/googleads/v9/resources/campaign_criterion.proto"; +import "google/ads/googleads/v9/resources/campaign_feed.proto"; +import "google/ads/googleads/v9/resources/customer_asset.proto"; +import "google/ads/googleads/v9/resources/feed.proto"; +import "google/ads/googleads/v9/resources/feed_item.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ChangeEventProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Change Event resource. + +// Describes the granular change of returned resource of certain resource types. +// Changes made through UI, API and new versions of Editor +// by external users (including external users, and internal users that can be +// shown externally) in the past 30 days will be shown. The change shows the old +// values of the changed fields before the change and the new values right after +// the change. ChangeEvent could have up to 3 minutes delay to reflect a new +// change. +message ChangeEvent { + option (google.api.resource) = { + type: "googleads.googleapis.com/ChangeEvent" + pattern: "customers/{customer_id}/changeEvents/{timestamp_micros}~{command_index}~{mutate_index}" + }; + + // A wrapper proto presenting all supported resources. + // Only the resource of the change_resource_type will be set. + message ChangedResource { + // Output only. Set if change_resource_type == AD. + Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP. + AdGroup ad_group = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP_CRITERION. + AdGroupCriterion ad_group_criterion = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CAMPAIGN. + Campaign campaign = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CAMPAIGN_BUDGET. + CampaignBudget campaign_budget = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP_BID_MODIFIER. + AdGroupBidModifier ad_group_bid_modifier = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CAMPAIGN_CRITERION. + CampaignCriterion campaign_criterion = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == FEED. + Feed feed = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == FEED_ITEM. + FeedItem feed_item = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CAMPAIGN_FEED. + CampaignFeed campaign_feed = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP_FEED. + AdGroupFeed ad_group_feed = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP_AD. + AdGroupAd ad_group_ad = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == ASSET. + Asset asset = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CUSTOMER_ASSET. + CustomerAsset customer_asset = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == CAMPAIGN_ASSET. + CampaignAsset campaign_asset = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set if change_resource_type == AD_GROUP_ASSET. + AdGroupAsset ad_group_asset = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. The resource name of the change event. + // Change event resource names have the form: + // + // `customers/{customer_id}/changeEvents/{timestamp_micros}~{command_index}~{mutate_index}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ChangeEvent" + } + ]; + + // Output only. Time at which the change was committed on this resource. + string change_date_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the changed resource. This dictates what resource + // will be set in old_resource and new_resource. + google.ads.googleads.v9.enums.ChangeEventResourceTypeEnum.ChangeEventResourceType change_resource_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Simply resource this change occurred on. + string change_resource_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Where the change was made through. + google.ads.googleads.v9.enums.ChangeClientTypeEnum.ChangeClientType client_type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The email of the user who made this change. + string user_email = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The old resource before the change. Only changed fields will be populated. + ChangedResource old_resource = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The new resource after the change. Only changed fields will be populated. + ChangedResource new_resource = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The operation on the changed resource. + google.ads.googleads.v9.enums.ResourceChangeOperationEnum.ResourceChangeOperation resource_change_operation = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A list of fields that are changed in the returned resource. + google.protobuf.FieldMask changed_fields = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Campaign affected by this change. + string campaign = 11 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The AdGroup affected by this change. + string ad_group = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. The Feed affected by this change. + string feed = 13 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Output only. The FeedItem affected by this change. + string feed_item = 14 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; + + // Output only. The Asset affected by this change. + string asset = 20 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/change_status.proto b/google/ads/googleads/v9/resources/change_status.proto new file mode 100644 index 000000000..442125c6f --- /dev/null +++ b/google/ads/googleads/v9/resources/change_status.proto @@ -0,0 +1,199 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/ad_type.proto"; +import "google/ads/googleads/v9/enums/advertising_channel_sub_type.proto"; +import "google/ads/googleads/v9/enums/advertising_channel_type.proto"; +import "google/ads/googleads/v9/enums/asset_type.proto"; +import "google/ads/googleads/v9/enums/change_status_operation.proto"; +import "google/ads/googleads/v9/enums/change_status_resource_type.proto"; +import "google/ads/googleads/v9/enums/criterion_type.proto"; +import "google/ads/googleads/v9/enums/feed_origin.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ChangeStatusProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Change Status resource. + +// Describes the status of returned resource. ChangeStatus could have up to 3 +// minutes delay to reflect a new change. +message ChangeStatus { + option (google.api.resource) = { + type: "googleads.googleapis.com/ChangeStatus" + pattern: "customers/{customer_id}/changeStatus/{change_status_id}" + }; + + // Output only. The resource name of the change status. + // Change status resource names have the form: + // + // `customers/{customer_id}/changeStatus/{change_status_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ChangeStatus" + } + ]; + + // Output only. Time at which the most recent change has occurred on this resource. + optional string last_change_date_time = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Represents the type of the changed resource. This dictates what fields + // will be set. For example, for AD_GROUP, campaign and ad_group fields will + // be set. + google.ads.googleads.v9.enums.ChangeStatusResourceTypeEnum.ChangeStatusResourceType resource_type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Campaign affected by this change. + optional string campaign = 17 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The AdGroup affected by this change. + optional string ad_group = 18 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. Represents the status of the changed resource. + google.ads.googleads.v9.enums.ChangeStatusOperationEnum.ChangeStatusOperation resource_status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The AdGroupAd affected by this change. + optional string ad_group_ad = 25 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; + + // Output only. The AdGroupCriterion affected by this change. + optional string ad_group_criterion = 26 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; + + // Output only. The CampaignCriterion affected by this change. + optional string campaign_criterion = 27 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignCriterion" + } + ]; + + // Output only. The Feed affected by this change. + optional string feed = 28 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Output only. The FeedItem affected by this change. + optional string feed_item = 29 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; + + // Output only. The AdGroupFeed affected by this change. + optional string ad_group_feed = 30 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupFeed" + } + ]; + + // Output only. The CampaignFeed affected by this change. + optional string campaign_feed = 31 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignFeed" + } + ]; + + // Output only. The AdGroupBidModifier affected by this change. + optional string ad_group_bid_modifier = 32 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupBidModifier" + } + ]; + + // Output only. The SharedSet affected by this change. + string shared_set = 33 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedSet" + } + ]; + + // Output only. The CampaignSharedSet affected by this change. + string campaign_shared_set = 34 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignSharedSet" + } + ]; + + // Output only. The Asset affected by this change. + string asset = 35 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Output only. The CustomerAsset affected by this change. + string customer_asset = 36 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerAsset" + } + ]; + + // Output only. The CampaignAsset affected by this change. + string campaign_asset = 37 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignAsset" + } + ]; + + // Output only. The AdGroupAsset affected by this change. + string ad_group_asset = 38 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAsset" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/click_view.proto b/google/ads/googleads/v9/resources/click_view.proto new file mode 100644 index 000000000..bbbac1076 --- /dev/null +++ b/google/ads/googleads/v9/resources/click_view.proto @@ -0,0 +1,108 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/click_location.proto"; +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ClickViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ClickView resource. + +// A click view with metrics aggregated at each click level, including both +// valid and invalid clicks. For non-Search campaigns, metrics.clicks +// represents the number of valid and invalid interactions. +// Queries including ClickView must have a filter limiting the results to one +// day and can be requested for dates back to 90 days before the time of the +// request. +message ClickView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ClickView" + pattern: "customers/{customer_id}/clickViews/{date}~{gclid}" + }; + + // Output only. The resource name of the click view. + // Click view resource names have the form: + // + // `customers/{customer_id}/clickViews/{date (yyyy-MM-dd)}~{gclid}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ClickView" + } + ]; + + // Output only. The Google Click ID. + optional string gclid = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The location criteria matching the area of interest associated with the + // impression. + google.ads.googleads.v9.common.ClickLocation area_of_interest = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The location criteria matching the location of presence associated with the + // impression. + google.ads.googleads.v9.common.ClickLocation location_of_presence = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Page number in search results where the ad was shown. + optional int64 page_number = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The associated ad. + optional string ad_group_ad = 10 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; + + // Output only. The associated campaign location target, if one exists. + optional string campaign_location_target = 11 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + } + ]; + + // Output only. The associated user list, if one exists. + optional string user_list = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserList" + } + ]; + + // Output only. The associated keyword, if one exists and the click corresponds to the + // SEARCH channel. + string keyword = 13 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; + + // Output only. Basic information about the associated keyword, if it exists. + google.ads.googleads.v9.common.KeywordInfo keyword_info = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/combined_audience.proto b/google/ads/googleads/v9/resources/combined_audience.proto new file mode 100644 index 000000000..32ac886b7 --- /dev/null +++ b/google/ads/googleads/v9/resources/combined_audience.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/combined_audience_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CombinedAudienceProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Combined Audience resource. + +// Describe a resource for combined audiences which includes different +// audiences. +message CombinedAudience { + option (google.api.resource) = { + type: "googleads.googleapis.com/CombinedAudience" + pattern: "customers/{customer_id}/combinedAudiences/{combined_audience_id}" + }; + + // Immutable. The resource name of the combined audience. + // Combined audience names have the form: + // + // `customers/{customer_id}/combinedAudience/{combined_audience_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CombinedAudience" + } + ]; + + // Output only. ID of the combined audience. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of this combined audience. Indicates whether the combined audience + // is enabled or removed. + google.ads.googleads.v9.enums.CombinedAudienceStatusEnum.CombinedAudienceStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the combined audience. It should be unique across all combined + // audiences. + string name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Description of this combined audience. + string description = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/conversion_action.proto b/google/ads/googleads/v9/resources/conversion_action.proto new file mode 100644 index 000000000..6382c8381 --- /dev/null +++ b/google/ads/googleads/v9/resources/conversion_action.proto @@ -0,0 +1,189 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/tag_snippet.proto"; +import "google/ads/googleads/v9/enums/attribution_model.proto"; +import "google/ads/googleads/v9/enums/conversion_action_category.proto"; +import "google/ads/googleads/v9/enums/conversion_action_counting_type.proto"; +import "google/ads/googleads/v9/enums/conversion_action_status.proto"; +import "google/ads/googleads/v9/enums/conversion_action_type.proto"; +import "google/ads/googleads/v9/enums/conversion_origin.proto"; +import "google/ads/googleads/v9/enums/data_driven_model_status.proto"; +import "google/ads/googleads/v9/enums/mobile_app_vendor.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Conversion Action resource. + +// A conversion action. +message ConversionAction { + option (google.api.resource) = { + type: "googleads.googleapis.com/ConversionAction" + pattern: "customers/{customer_id}/conversionActions/{conversion_action_id}" + }; + + // Settings related to this conversion action's attribution model. + message AttributionModelSettings { + // The attribution model type of this conversion action. + google.ads.googleads.v9.enums.AttributionModelEnum.AttributionModel attribution_model = 1; + + // Output only. The status of the data-driven attribution model for the conversion + // action. + google.ads.googleads.v9.enums.DataDrivenModelStatusEnum.DataDrivenModelStatus data_driven_model_status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Settings related to the value for conversion events associated with this + // conversion action. + message ValueSettings { + // The value to use when conversion events for this conversion action are + // sent with an invalid, disallowed or missing value, or when + // this conversion action is configured to always use the default value. + optional double default_value = 4; + + // The currency code to use when conversion events for this conversion + // action are sent with an invalid or missing currency code, or when this + // conversion action is configured to always use the default value. + optional string default_currency_code = 5; + + // Controls whether the default value and default currency code are used in + // place of the value and currency code specified in conversion events for + // this conversion action. + optional bool always_use_default_value = 6; + } + + // Settings related to a third party app analytics conversion action. + message ThirdPartyAppAnalyticsSettings { + // Output only. The event name of a third-party app analytics conversion. + optional string event_name = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the third-party app analytics provider. + string provider_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Settings related to a Firebase conversion action. + message FirebaseSettings { + // Output only. The event name of a Firebase conversion. + optional string event_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Firebase project ID of the conversion. + optional string project_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Immutable. The resource name of the conversion action. + // Conversion action resource names have the form: + // + // `customers/{customer_id}/conversionActions/{conversion_action_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionAction" + } + ]; + + // Output only. The ID of the conversion action. + optional int64 id = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the conversion action. + // + // This field is required and should not be empty when creating new + // conversion actions. + optional string name = 22; + + // The status of this conversion action for conversion event accrual. + google.ads.googleads.v9.enums.ConversionActionStatusEnum.ConversionActionStatus status = 4; + + // Immutable. The type of this conversion action. + google.ads.googleads.v9.enums.ConversionActionTypeEnum.ConversionActionType type = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The conversion origin of this conversion action. + google.ads.googleads.v9.enums.ConversionOriginEnum.ConversionOrigin origin = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // If a conversion action’s primary_for_goal bit is false, the conversion + // action is non-biddable for all campaigns regardless of their customer + // conversion goal or campaign conversion goal. + // However, custom conversion goals do not respect primary_for_goal, so if + // a campaign has a custom conversion goal configured with a + // primary_for_goal = false conversion action, that conversion action is + // still biddable. + bool primary_for_goal = 31; + + // The category of conversions reported for this conversion action. + google.ads.googleads.v9.enums.ConversionActionCategoryEnum.ConversionActionCategory category = 6; + + // Output only. The resource name of the conversion action owner customer, or null if this + // is a system-defined conversion action. + optional string owner_customer = 23 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Whether this conversion action should be included in the "conversions" + // metric. + optional bool include_in_conversions_metric = 24; + + // The maximum number of days that may elapse between an interaction + // (e.g., a click) and a conversion event. + optional int64 click_through_lookback_window_days = 25; + + // The maximum number of days which may elapse between an impression and a + // conversion without an interaction. + optional int64 view_through_lookback_window_days = 26; + + // Settings related to the value for conversion events associated with this + // conversion action. + ValueSettings value_settings = 11; + + // How to count conversion events for the conversion action. + google.ads.googleads.v9.enums.ConversionActionCountingTypeEnum.ConversionActionCountingType counting_type = 12; + + // Settings related to this conversion action's attribution model. + AttributionModelSettings attribution_model_settings = 13; + + // Output only. The snippets used for tracking conversions. + repeated google.ads.googleads.v9.common.TagSnippet tag_snippets = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The phone call duration in seconds after which a conversion should be + // reported for this conversion action. + // + // The value must be between 0 and 10000, inclusive. + optional int64 phone_call_duration_seconds = 27; + + // App ID for an app conversion action. + optional string app_id = 28; + + // Output only. Mobile app vendor for an app conversion action. + google.ads.googleads.v9.enums.MobileAppVendorEnum.MobileAppVendor mobile_app_vendor = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Firebase settings for Firebase conversion types. + FirebaseSettings firebase_settings = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Third Party App Analytics settings for third party conversion types. + ThirdPartyAppAnalyticsSettings third_party_app_analytics_settings = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/conversion_custom_variable.proto b/google/ads/googleads/v9/resources/conversion_custom_variable.proto new file mode 100644 index 000000000..6357ecbcc --- /dev/null +++ b/google/ads/googleads/v9/resources/conversion_custom_variable.proto @@ -0,0 +1,86 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/conversion_custom_variable_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ConversionCustomVariableProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Conversion Custom Variable resource. + +// A conversion custom variable +// See "About custom variables for conversions" at +// https://support.google.com/google-ads/answer/9964350 +message ConversionCustomVariable { + option (google.api.resource) = { + type: "googleads.googleapis.com/ConversionCustomVariable" + pattern: "customers/{customer_id}/conversionCustomVariables/{conversion_custom_variable_id}" + }; + + // Immutable. The resource name of the conversion custom variable. + // Conversion custom variable resource names have the form: + // + // `customers/{customer_id}/conversionCustomVariables/{conversion_custom_variable_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionCustomVariable" + } + ]; + + // Output only. The ID of the conversion custom variable. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The name of the conversion custom variable. + // Name should be unique. The maximum length of name is 100 characters. + // There should not be any extra spaces before and after. + string name = 3 [(google.api.field_behavior) = REQUIRED]; + + // Required. Immutable. The tag of the conversion custom variable. It is used in the event snippet + // and sent to Google Ads along with conversion pings. For conversion uploads + // in Google Ads API, the resource name of the conversion custom variable is + // used. + // Tag should be unique. The maximum size of tag is 100 bytes. + // There should not be any extra spaces before and after. + // Currently only lowercase letters, numbers and underscores are allowed in + // the tag. + string tag = 4 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // The status of the conversion custom variable for conversion event accrual. + google.ads.googleads.v9.enums.ConversionCustomVariableStatusEnum.ConversionCustomVariableStatus status = 5; + + // Output only. The resource name of the customer that owns the conversion custom variable. + string owner_customer = 6 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/conversion_goal_campaign_config.proto b/google/ads/googleads/v9/resources/conversion_goal_campaign_config.proto new file mode 100644 index 000000000..20dc2ea7c --- /dev/null +++ b/google/ads/googleads/v9/resources/conversion_goal_campaign_config.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/goal_config_level.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ConversionGoalCampaignConfigProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Conversion goal settings for a Campaign. +message ConversionGoalCampaignConfig { + option (google.api.resource) = { + type: "googleads.googleapis.com/ConversionGoalCampaignConfig" + pattern: "customers/{customer_id}/conversionGoalCampaignConfigs/{campaign_id}" + }; + + // Immutable. The resource name of the conversion goal campaign config. + // Conversion goal campaign config resource names have the form: + // + // `customers/{customer_id}/conversionGoalCampaignConfigs/{campaign_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionGoalCampaignConfig" + } + ]; + + // Immutable. The campaign with which this conversion goal campaign config is associated. + string campaign = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // The level of goal config the campaign is using. + google.ads.googleads.v9.enums.GoalConfigLevelEnum.GoalConfigLevel goal_config_level = 3; + + // The custom conversion goal the campaign is using for optimization. + string custom_conversion_goal = 4 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomConversionGoal" + }]; +} diff --git a/google/ads/googleads/v9/resources/conversion_value_rule.proto b/google/ads/googleads/v9/resources/conversion_value_rule.proto new file mode 100644 index 000000000..ddbc4e576 --- /dev/null +++ b/google/ads/googleads/v9/resources/conversion_value_rule.proto @@ -0,0 +1,135 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/conversion_value_rule_status.proto"; +import "google/ads/googleads/v9/enums/value_rule_device_type.proto"; +import "google/ads/googleads/v9/enums/value_rule_geo_location_match_type.proto"; +import "google/ads/googleads/v9/enums/value_rule_operation.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Conversion Value Rule resource. + +// A conversion value rule +message ConversionValueRule { + option (google.api.resource) = { + type: "googleads.googleapis.com/ConversionValueRule" + pattern: "customers/{customer_id}/conversionValueRules/{conversion_value_rule_id}" + }; + + // Action applied when rule is applied. + message ValueRuleAction { + // Specifies applied operation. + google.ads.googleads.v9.enums.ValueRuleOperationEnum.ValueRuleOperation operation = 1; + + // Specifies applied value. + double value = 2; + } + + // Condition on Geo dimension. + message ValueRuleGeoLocationCondition { + // Geo locations that advertisers want to exclude. + repeated string excluded_geo_target_constants = 1 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + }]; + + // Excluded Geo location match type. + google.ads.googleads.v9.enums.ValueRuleGeoLocationMatchTypeEnum.ValueRuleGeoLocationMatchType excluded_geo_match_type = 2; + + // Geo locations that advertisers want to include. + repeated string geo_target_constants = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + }]; + + // Included Geo location match type. + google.ads.googleads.v9.enums.ValueRuleGeoLocationMatchTypeEnum.ValueRuleGeoLocationMatchType geo_match_type = 4; + } + + // Condition on Device dimension. + message ValueRuleDeviceCondition { + // Value for device type condition. + repeated google.ads.googleads.v9.enums.ValueRuleDeviceTypeEnum.ValueRuleDeviceType device_types = 1; + } + + // Condition on Audience dimension. + message ValueRuleAudienceCondition { + // User Lists. + repeated string user_lists = 1 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/UserList" + }]; + + // User Interests. + repeated string user_interests = 2 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/UserInterest" + }]; + } + + // Immutable. The resource name of the conversion value rule. + // Conversion value rule resource names have the form: + // + // `customers/{customer_id}/conversionValueRules/{conversion_value_rule_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionValueRule" + } + ]; + + // Output only. The ID of the conversion value rule. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Action applied when the rule is triggered. + ValueRuleAction action = 3; + + // Condition for Geo location that must be satisfied for the value rule to + // apply. + ValueRuleGeoLocationCondition geo_location_condition = 4; + + // Condition for device type that must be satisfied for the value rule to + // apply. + ValueRuleDeviceCondition device_condition = 5; + + // Condition for audience that must be satisfied for the value rule to apply. + ValueRuleAudienceCondition audience_condition = 6; + + // Output only. The resource name of the conversion value rule's owner customer. + // When the value rule is inherited from a manager + // customer, owner_customer will be the resource name of the manager whereas + // the customer in the resource_name will be of the requesting serving + // customer. + // ** Read-only ** + string owner_customer = 7 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // The status of the conversion value rule. + google.ads.googleads.v9.enums.ConversionValueRuleStatusEnum.ConversionValueRuleStatus status = 8; +} diff --git a/google/ads/googleads/v9/resources/conversion_value_rule_set.proto b/google/ads/googleads/v9/resources/conversion_value_rule_set.proto new file mode 100644 index 000000000..a9ec440f9 --- /dev/null +++ b/google/ads/googleads/v9/resources/conversion_value_rule_set.proto @@ -0,0 +1,96 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/conversion_value_rule_set_status.proto"; +import "google/ads/googleads/v9/enums/value_rule_set_attachment_type.proto"; +import "google/ads/googleads/v9/enums/value_rule_set_dimension.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleSetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Conversion Value Rule Set resource. + +// A conversion value rule set +message ConversionValueRuleSet { + option (google.api.resource) = { + type: "googleads.googleapis.com/ConversionValueRuleSet" + pattern: "customers/{customer_id}/conversionValueRuleSets/{conversion_value_rule_set_id}" + }; + + // Immutable. The resource name of the conversion value rule set. + // Conversion value rule set resource names have the form: + // + // `customers/{customer_id}/conversionValueRuleSets/{conversion_value_rule_set_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionValueRuleSet" + } + ]; + + // Output only. The ID of the conversion value rule set. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Resource names of rules within the rule set. + repeated string conversion_value_rules = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionValueRule" + }]; + + // Defines dimensions for Value Rule conditions. The condition types of value + // rules within this value rule set must be of these dimensions. The first + // entry in this list is the primary dimension of the included value rules. + // When using value rule primary dimension segmentation, conversion values + // will be segmented into the values adjusted by value rules and the original + // values, if some value rules apply. + repeated google.ads.googleads.v9.enums.ValueRuleSetDimensionEnum.ValueRuleSetDimension dimensions = 4; + + // Output only. The resource name of the conversion value rule set's owner customer. + // When the value rule set is inherited from a manager + // customer, owner_customer will be the resource name of the manager whereas + // the customer in the resource_name will be of the requesting serving + // customer. + // ** Read-only ** + string owner_customer = 5 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Defines the scope where the conversion value rule set is attached. + google.ads.googleads.v9.enums.ValueRuleSetAttachmentTypeEnum.ValueRuleSetAttachmentType attachment_type = 6; + + // The resource name of the campaign when the conversion value rule + // set is attached to a campaign. + string campaign = 7 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + }]; + + // Output only. The status of the conversion value rule set. + // ** Read-only ** + google.ads.googleads.v9.enums.ConversionValueRuleSetStatusEnum.ConversionValueRuleSetStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/currency_constant.proto b/google/ads/googleads/v9/resources/currency_constant.proto new file mode 100644 index 000000000..6a90a95af --- /dev/null +++ b/google/ads/googleads/v9/resources/currency_constant.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CurrencyConstantProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Currency Constant resource. + +// A currency constant. +message CurrencyConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/CurrencyConstant" + pattern: "currencyConstants/{code}" + }; + + // Output only. The resource name of the currency constant. + // Currency constant resource names have the form: + // + // `currencyConstants/{code}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CurrencyConstant" + } + ]; + + // Output only. ISO 4217 three-letter currency code, e.g. "USD" + optional string code = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Full English name of the currency. + optional string name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Standard symbol for describing this currency, e.g. '$' for US Dollars. + optional string symbol = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The billable unit for this currency. Billed amounts should be multiples of + // this value. + optional int64 billable_unit_micros = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/custom_audience.proto b/google/ads/googleads/v9/resources/custom_audience.proto new file mode 100644 index 000000000..b3239c1a7 --- /dev/null +++ b/google/ads/googleads/v9/resources/custom_audience.proto @@ -0,0 +1,107 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/custom_audience_member_type.proto"; +import "google/ads/googleads/v9/enums/custom_audience_status.proto"; +import "google/ads/googleads/v9/enums/custom_audience_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Custom Audience resource. + +// A custom audience. This is a list of users by interest. +message CustomAudience { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomAudience" + pattern: "customers/{customer_id}/customAudiences/{custom_audience_id}" + }; + + // Immutable. The resource name of the custom audience. + // Custom audience resource names have the form: + // + // `customers/{customer_id}/customAudiences/{custom_audience_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomAudience" + } + ]; + + // Output only. ID of the custom audience. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of this custom audience. Indicates whether the custom audience is + // enabled or removed. + google.ads.googleads.v9.enums.CustomAudienceStatusEnum.CustomAudienceStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Name of the custom audience. It should be unique for all custom audiences + // created by a customer. + // This field is required for creating operations. + string name = 4; + + // Type of the custom audience. + // ("INTEREST" OR "PURCHASE_INTENT" is not allowed for newly created custom + // audience but kept for existing audiences) + google.ads.googleads.v9.enums.CustomAudienceTypeEnum.CustomAudienceType type = 5; + + // Description of this custom audience. + string description = 6; + + // List of custom audience members that this custom audience is composed of. + // Members can be added during CustomAudience creation. If members are + // presented in UPDATE operation, existing members will be overridden. + repeated CustomAudienceMember members = 7; +} + +// A member of custom audience. A member can be a KEYWORD, URL, +// PLACE_CATEGORY or APP. It can only be created or removed but not changed. +message CustomAudienceMember { + // The type of custom audience member, KEYWORD, URL, PLACE_CATEGORY or APP. + google.ads.googleads.v9.enums.CustomAudienceMemberTypeEnum.CustomAudienceMemberType member_type = 1; + + // The CustomAudienceMember value. One field is populated depending on the + // member type. + oneof value { + // A keyword or keyword phrase — at most 10 words and 80 characters. + // Languages with double-width characters such as Chinese, Japanese, + // or Korean, are allowed 40 characters, which describes the user's + // interests or actions. + string keyword = 2; + + // An HTTP URL, protocol-included — at most 2048 characters, which includes + // contents users have interests in. + string url = 3; + + // A place type described by a place category users visit. + int64 place_category = 4; + + // A package name of Android apps which users installed such as + // com.google.example. + string app = 5; + } +} diff --git a/google/ads/googleads/v9/resources/custom_conversion_goal.proto b/google/ads/googleads/v9/resources/custom_conversion_goal.proto new file mode 100644 index 000000000..54bcd89f8 --- /dev/null +++ b/google/ads/googleads/v9/resources/custom_conversion_goal.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/custom_conversion_goal_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomConversionGoalProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Custom conversion goal that can make arbitrary conversion actions biddable. +message CustomConversionGoal { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomConversionGoal" + pattern: "customers/{customer_id}/customConversionGoals/{goal_id}" + }; + + // Immutable. The resource name of the custom conversion goal. + // Custom conversion goal resource names have the form: + // + // `customers/{customer_id}/customConversionGoals/{goal_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomConversionGoal" + } + ]; + + // Immutable. The ID for this custom conversion goal. + int64 id = 2 [(google.api.field_behavior) = IMMUTABLE]; + + // The name for this custom conversion goal. + string name = 3; + + // Conversion actions that the custom conversion goal makes biddable. + repeated string conversion_actions = 4 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionAction" + }]; + + // The status of the custom conversion goal. + google.ads.googleads.v9.enums.CustomConversionGoalStatusEnum.CustomConversionGoalStatus status = 5; +} diff --git a/google/ads/googleads/v9/resources/custom_interest.proto b/google/ads/googleads/v9/resources/custom_interest.proto new file mode 100644 index 000000000..1978fd535 --- /dev/null +++ b/google/ads/googleads/v9/resources/custom_interest.proto @@ -0,0 +1,89 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/custom_interest_member_type.proto"; +import "google/ads/googleads/v9/enums/custom_interest_status.proto"; +import "google/ads/googleads/v9/enums/custom_interest_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Custom Interest resource. + +// A custom interest. This is a list of users by interest. +message CustomInterest { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomInterest" + pattern: "customers/{customer_id}/customInterests/{custom_interest_id}" + }; + + // Immutable. The resource name of the custom interest. + // Custom interest resource names have the form: + // + // `customers/{customer_id}/customInterests/{custom_interest_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomInterest" + } + ]; + + // Output only. Id of the custom interest. + optional int64 id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Status of this custom interest. Indicates whether the custom interest is + // enabled or removed. + google.ads.googleads.v9.enums.CustomInterestStatusEnum.CustomInterestStatus status = 3; + + // Name of the custom interest. It should be unique across the same custom + // affinity audience. + // This field is required for create operations. + optional string name = 9; + + // Type of the custom interest, CUSTOM_AFFINITY or CUSTOM_INTENT. + // By default the type is set to CUSTOM_AFFINITY. + google.ads.googleads.v9.enums.CustomInterestTypeEnum.CustomInterestType type = 5; + + // Description of this custom interest audience. + optional string description = 10; + + // List of custom interest members that this custom interest is composed of. + // Members can be added during CustomInterest creation. If members are + // presented in UPDATE operation, existing members will be overridden. + repeated CustomInterestMember members = 7; +} + +// A member of custom interest audience. A member can be a keyword or url. +// It is immutable, that is, it can only be created or removed but not changed. +message CustomInterestMember { + // The type of custom interest member, KEYWORD or URL. + google.ads.googleads.v9.enums.CustomInterestMemberTypeEnum.CustomInterestMemberType member_type = 1; + + // Keyword text when member_type is KEYWORD or URL string when + // member_type is URL. + optional string parameter = 3; +} diff --git a/google/ads/googleads/v9/resources/customer.proto b/google/ads/googleads/v9/resources/customer.proto new file mode 100644 index 000000000..ed71fd2a9 --- /dev/null +++ b/google/ads/googleads/v9/resources/customer.proto @@ -0,0 +1,161 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/customer_pay_per_conversion_eligibility_failure_reason.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Customer resource. + +// A customer. +message Customer { + option (google.api.resource) = { + type: "googleads.googleapis.com/Customer" + pattern: "customers/{customer_id}" + }; + + // Immutable. The resource name of the customer. + // Customer resource names have the form: + // + // `customers/{customer_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Output only. The ID of the customer. + optional int64 id = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional, non-unique descriptive name of the customer. + optional string descriptive_name = 20; + + // Immutable. The currency in which the account operates. + // A subset of the currency codes from the ISO 4217 standard is + // supported. + optional string currency_code = 21 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The local timezone ID of the customer. + optional string time_zone = 22 [(google.api.field_behavior) = IMMUTABLE]; + + // The URL template for constructing a tracking URL out of parameters. + optional string tracking_url_template = 23; + + // The URL template for appending params to the final URL + optional string final_url_suffix = 24; + + // Whether auto-tagging is enabled for the customer. + optional bool auto_tagging_enabled = 25; + + // Output only. Whether the Customer has a Partners program badge. If the Customer is not + // associated with the Partners program, this will be false. For more + // information, see https://support.google.com/partners/answer/3125774. + optional bool has_partners_badge = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the customer is a manager. + optional bool manager = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the customer is a test account. + optional bool test_account = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Call reporting setting for a customer. + CallReportingSetting call_reporting_setting = 10; + + // Output only. Conversion tracking setting for a customer. + ConversionTrackingSetting conversion_tracking_setting = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Remarketing setting for a customer. + RemarketingSetting remarketing_setting = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Reasons why the customer is not eligible to use PaymentMode.CONVERSIONS. If + // the list is empty, the customer is eligible. This field is read-only. + repeated google.ads.googleads.v9.enums.CustomerPayPerConversionEligibilityFailureReasonEnum.CustomerPayPerConversionEligibilityFailureReason pay_per_conversion_eligibility_failure_reasons = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Optimization score of the customer. + // + // Optimization score is an estimate of how well a customer's campaigns are + // set to perform. It ranges from 0% (0.0) to 100% (1.0). This field is null + // for all manager customers, and for unscored non-manager customers. + // + // See "About optimization score" at + // https://support.google.com/google-ads/answer/9061546. + // + // This field is read-only. + optional double optimization_score = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Optimization score weight of the customer. + // + // Optimization score weight can be used to compare/aggregate optimization + // scores across multiple non-manager customers. The aggregate optimization + // score of a manager is computed as the sum over all of their customers of + // `Customer.optimization_score * Customer.optimization_score_weight`. This + // field is 0 for all manager customers, and for unscored non-manager + // customers. + // + // This field is read-only. + double optimization_score_weight = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Call reporting setting for a customer. +message CallReportingSetting { + // Enable reporting of phone call events by redirecting them via Google + // System. + optional bool call_reporting_enabled = 10; + + // Whether to enable call conversion reporting. + optional bool call_conversion_reporting_enabled = 11; + + // Customer-level call conversion action to attribute a call conversion to. + // If not set a default conversion action is used. Only in effect when + // call_conversion_reporting_enabled is set to true. + optional string call_conversion_action = 12 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionAction" + }]; +} + +// A collection of customer-wide settings related to Google Ads Conversion +// Tracking. +message ConversionTrackingSetting { + // Output only. The conversion tracking id used for this account. This id is automatically + // assigned after any conversion tracking feature is used. If the customer + // doesn't use conversion tracking, this is 0. This field is read-only. + optional int64 conversion_tracking_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The conversion tracking id of the customer's manager. This is set when the + // customer is opted into cross account conversion tracking, and it overrides + // conversion_tracking_id. This field can only be managed through the Google + // Ads UI. This field is read-only. + optional int64 cross_account_conversion_tracking_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Remarketing setting for a customer. +message RemarketingSetting { + // Output only. The Google global site tag. + optional string google_global_site_tag = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/customer_asset.proto b/google/ads/googleads/v9/resources/customer_asset.proto new file mode 100644 index 000000000..2785b83b0 --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_asset.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/asset_field_type.proto"; +import "google/ads/googleads/v9/enums/asset_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerAssetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CustomerAsset resource. + +// A link between a customer and an asset. +message CustomerAsset { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerAsset" + pattern: "customers/{customer_id}/customerAssets/{asset_id}~{field_type}" + }; + + // Immutable. The resource name of the customer asset. + // CustomerAsset resource names have the form: + // + // `customers/{customer_id}/customerAssets/{asset_id}~{field_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerAsset" + } + ]; + + // Required. Immutable. The asset which is linked to the customer. + string asset = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; + + // Required. Immutable. Role that the asset takes for the customer link. + google.ads.googleads.v9.enums.AssetFieldTypeEnum.AssetFieldType field_type = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Status of the customer asset. + google.ads.googleads.v9.enums.AssetLinkStatusEnum.AssetLinkStatus status = 4; +} diff --git a/google/ads/googleads/v9/resources/customer_client.proto b/google/ads/googleads/v9/resources/customer_client.proto new file mode 100644 index 000000000..d97d8b835 --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_client.proto @@ -0,0 +1,101 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CustomerClient resource. + +// A link between the given customer and a client customer. CustomerClients only +// exist for manager customers. All direct and indirect client customers are +// included, as well as the manager itself. +message CustomerClient { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerClient" + pattern: "customers/{customer_id}/customerClients/{client_customer_id}" + }; + + // Output only. The resource name of the customer client. + // CustomerClient resource names have the form: + // `customers/{customer_id}/customerClients/{client_customer_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerClient" + } + ]; + + // Output only. The resource name of the client-customer which is linked to + // the given customer. Read only. + optional string client_customer = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Output only. Specifies whether this is a + // [hidden account](https://support.google.com/google-ads/answer/7519830). + // Read only. + optional bool hidden = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Distance between given customer and client. For self link, the level value + // will be 0. Read only. + optional int64 level = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Common Locale Data Repository (CLDR) string representation of the + // time zone of the client, e.g. America/Los_Angeles. Read only. + optional string time_zone = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies if the client is a test account. Read only. + optional bool test_account = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies if the client is a manager. Read only. + optional bool manager = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Descriptive name for the client. Read only. + optional string descriptive_name = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Currency code (e.g. 'USD', 'EUR') for the client. Read only. + optional string currency_code = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ID of the client customer. Read only. + optional int64 id = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource names of the labels owned by the requesting customer that are + // applied to the client customer. + // Label resource names have the form: + // + // `customers/{customer_id}/labels/{label_id}` + repeated string applied_labels = 21 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/customer_client_link.proto b/google/ads/googleads/v9/resources/customer_client_link.proto new file mode 100644 index 000000000..8e0b1ce1a --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_client_link.proto @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/manager_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientLinkProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CustomerClientLink resource. + +// Represents customer client link relationship. +message CustomerClientLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerClientLink" + pattern: "customers/{customer_id}/customerClientLinks/{client_customer_id}~{manager_link_id}" + }; + + // Immutable. Name of the resource. + // CustomerClientLink resource names have the form: + // `customers/{customer_id}/customerClientLinks/{client_customer_id}~{manager_link_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerClientLink" + } + ]; + + // Immutable. The client customer linked to this customer. + optional string client_customer = 7 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Output only. This is uniquely identifies a customer client link. Read only. + optional int64 manager_link_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // This is the status of the link between client and manager. + google.ads.googleads.v9.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; + + // The visibility of the link. Users can choose whether or not to see hidden + // links in the Google Ads UI. + // Default value is false + optional bool hidden = 9; +} diff --git a/google/ads/googleads/v9/resources/customer_conversion_goal.proto b/google/ads/googleads/v9/resources/customer_conversion_goal.proto new file mode 100644 index 000000000..9d76f3acd --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_conversion_goal.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/conversion_action_category.proto"; +import "google/ads/googleads/v9/enums/conversion_origin.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerConversionGoalProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Biddability control for conversion actions with a matching category and +// origin. +message CustomerConversionGoal { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerConversionGoal" + pattern: "customers/{customer_id}/customerConversionGoals/{category}~{source}" + }; + + // Immutable. The resource name of the customer conversion goal. + // Customer conversion goal resource names have the form: + // + // `customers/{customer_id}/customerConversionGoals/{category}~{origin}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerConversionGoal" + } + ]; + + // The conversion category of this customer conversion goal. Only + // conversion actions that have this category will be included in this goal. + google.ads.googleads.v9.enums.ConversionActionCategoryEnum.ConversionActionCategory category = 2; + + // The conversion origin of this customer conversion goal. Only + // conversion actions that have this conversion origin will be included in + // this goal. + google.ads.googleads.v9.enums.ConversionOriginEnum.ConversionOrigin origin = 3; + + // The biddability of the customer conversion goal. + bool biddable = 4; +} diff --git a/google/ads/googleads/v9/resources/customer_customizer.proto b/google/ads/googleads/v9/resources/customer_customizer.proto new file mode 100644 index 000000000..719f8e4df --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_customizer.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/customizer_value.proto"; +import "google/ads/googleads/v9/enums/customizer_value_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerCustomizerProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// A customizer value for the associated CustomizerAttribute at the Customer +// level. +message CustomerCustomizer { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerCustomizer" + pattern: "customers/{customer_id}/customerCustomizers/{customizer_attribute_id}" + }; + + // Immutable. The resource name of the customer customizer. + // Customer customizer resource names have the form: + // + // `customers/{customer_id}/customerCustomizers/{customizer_attribute_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerCustomizer" + } + ]; + + // Required. Immutable. The customizer attribute which is linked to the customer. + string customizer_attribute = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomizerAttribute" + } + ]; + + // Output only. The status of the customer customizer attribute. + google.ads.googleads.v9.enums.CustomizerValueStatusEnum.CustomizerValueStatus status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The value to associate with the customizer attribute at this level. The + // value must be of the type specified for the CustomizerAttribute. + google.ads.googleads.v9.common.CustomizerValue value = 4 [(google.api.field_behavior) = REQUIRED]; +} diff --git a/google/ads/googleads/v9/resources/customer_extension_setting.proto b/google/ads/googleads/v9/resources/customer_extension_setting.proto new file mode 100644 index 000000000..da7f2b3d1 --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_extension_setting.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/extension_setting_device.proto"; +import "google/ads/googleads/v9/enums/extension_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerExtensionSettingProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CustomerExtensionSetting resource. + +// A customer extension setting. +message CustomerExtensionSetting { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerExtensionSetting" + pattern: "customers/{customer_id}/customerExtensionSettings/{extension_type}" + }; + + // Immutable. The resource name of the customer extension setting. + // CustomerExtensionSetting resource names have the form: + // + // `customers/{customer_id}/customerExtensionSettings/{extension_type}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerExtensionSetting" + } + ]; + + // Immutable. The extension type of the customer extension setting. + google.ads.googleads.v9.enums.ExtensionTypeEnum.ExtensionType extension_type = 2 [(google.api.field_behavior) = IMMUTABLE]; + + // The resource names of the extension feed items to serve under the customer. + // ExtensionFeedItem resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + repeated string extension_feed_items = 5 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + }]; + + // The device for which the extensions will serve. Optional. + google.ads.googleads.v9.enums.ExtensionSettingDeviceEnum.ExtensionSettingDevice device = 4; +} diff --git a/google/ads/googleads/v9/resources/customer_feed.proto b/google/ads/googleads/v9/resources/customer_feed.proto new file mode 100644 index 000000000..fa60000be --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_feed.proto @@ -0,0 +1,75 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/matching_function.proto"; +import "google/ads/googleads/v9/enums/feed_link_status.proto"; +import "google/ads/googleads/v9/enums/placeholder_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerFeedProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CustomerFeed resource. + +// A customer feed. +message CustomerFeed { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerFeed" + pattern: "customers/{customer_id}/customerFeeds/{feed_id}" + }; + + // Immutable. The resource name of the customer feed. + // Customer feed resource names have the form: + // + // `customers/{customer_id}/customerFeeds/{feed_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerFeed" + } + ]; + + // Immutable. The feed being linked to the customer. + optional string feed = 6 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Indicates which placeholder types the feed may populate under the connected + // customer. Required. + repeated google.ads.googleads.v9.enums.PlaceholderTypeEnum.PlaceholderType placeholder_types = 3; + + // Matching function associated with the CustomerFeed. + // The matching function is used to filter the set of feed items selected. + // Required. + google.ads.googleads.v9.common.MatchingFunction matching_function = 4; + + // Output only. Status of the customer feed. + // This field is read-only. + google.ads.googleads.v9.enums.FeedLinkStatusEnum.FeedLinkStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/customer_label.proto b/google/ads/googleads/v9/resources/customer_label.proto new file mode 100644 index 000000000..ec8935af6 --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_label.proto @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerLabelProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the customer label resource. + +// Represents a relationship between a customer and a label. This customer may +// not have access to all the labels attached to it. Additional CustomerLabels +// may be returned by increasing permissions with login-customer-id. +message CustomerLabel { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerLabel" + pattern: "customers/{customer_id}/customerLabels/{label_id}" + }; + + // Immutable. Name of the resource. + // Customer label resource names have the form: + // `customers/{customer_id}/customerLabels/{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerLabel" + } + ]; + + // Output only. The resource name of the customer to which the label is attached. + // Read only. + optional string customer = 4 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Output only. The resource name of the label assigned to the customer. + // + // Note: the Customer ID portion of the label resource name is not + // validated when creating a new CustomerLabel. + optional string label = 5 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/customer_manager_link.proto b/google/ads/googleads/v9/resources/customer_manager_link.proto new file mode 100644 index 000000000..79b6db27d --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_manager_link.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/manager_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerManagerLinkProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CustomerManagerLink resource. + +// Represents customer-manager link relationship. +message CustomerManagerLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerManagerLink" + pattern: "customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}" + }; + + // Immutable. Name of the resource. + // CustomerManagerLink resource names have the form: + // `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerManagerLink" + } + ]; + + // Output only. The manager customer linked to the customer. + optional string manager_customer = 6 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; + + // Output only. ID of the customer-manager link. This field is read only. + optional int64 manager_link_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Status of the link between the customer and the manager. + google.ads.googleads.v9.enums.ManagerLinkStatusEnum.ManagerLinkStatus status = 5; +} diff --git a/google/ads/googleads/v9/resources/customer_negative_criterion.proto b/google/ads/googleads/v9/resources/customer_negative_criterion.proto new file mode 100644 index 000000000..40a945335 --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_negative_criterion.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/enums/criterion_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerNegativeCriterionProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Customer Negative Criterion resource. + +// A negative criterion for exclusions at the customer level. +message CustomerNegativeCriterion { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerNegativeCriterion" + pattern: "customers/{customer_id}/customerNegativeCriteria/{criterion_id}" + }; + + // Immutable. The resource name of the customer negative criterion. + // Customer negative criterion resource names have the form: + // + // `customers/{customer_id}/customerNegativeCriteria/{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerNegativeCriterion" + } + ]; + + // Output only. The ID of the criterion. + optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the criterion. + google.ads.googleads.v9.enums.CriterionTypeEnum.CriterionType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The customer negative criterion. + // + // Exactly one must be set. + oneof criterion { + // Immutable. ContentLabel. + google.ads.googleads.v9.common.ContentLabelInfo content_label = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. MobileApplication. + google.ads.googleads.v9.common.MobileApplicationInfo mobile_application = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. MobileAppCategory. + google.ads.googleads.v9.common.MobileAppCategoryInfo mobile_app_category = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Placement. + google.ads.googleads.v9.common.PlacementInfo placement = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Video. + google.ads.googleads.v9.common.YouTubeVideoInfo youtube_video = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Channel. + google.ads.googleads.v9.common.YouTubeChannelInfo youtube_channel = 9 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v9/resources/customer_user_access.proto b/google/ads/googleads/v9/resources/customer_user_access.proto new file mode 100644 index 000000000..858293410 --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_user_access.proto @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/access_role.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerUserAccessProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CustomerUserAccess resource. + +// Represents the permission of a single user onto a single customer. +message CustomerUserAccess { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerUserAccess" + pattern: "customers/{customer_id}/customerUserAccesses/{user_id}" + }; + + // Immutable. Name of the resource. + // Resource names have the form: + // `customers/{customer_id}/customerUserAccesses/{user_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerUserAccess" + } + ]; + + // Output only. User id of the user with the customer access. + // Read only field + int64 user_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Email address of the user. + // Read only field + optional string email_address = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Access role of the user. + google.ads.googleads.v9.enums.AccessRoleEnum.AccessRole access_role = 4; + + // Output only. The customer user access creation time. + // Read only field + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string access_creation_date_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The email address of the inviter user. + // Read only field + optional string inviter_user_email_address = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/customer_user_access_invitation.proto b/google/ads/googleads/v9/resources/customer_user_access_invitation.proto new file mode 100644 index 000000000..1fe90f402 --- /dev/null +++ b/google/ads/googleads/v9/resources/customer_user_access_invitation.proto @@ -0,0 +1,73 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/access_invitation_status.proto"; +import "google/ads/googleads/v9/enums/access_role.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomerUserAccessInvitationProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the CustomerUserAccessInvitation resource. + +// Represent an invitation to a new user on this customer account. +message CustomerUserAccessInvitation { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomerUserAccessInvitation" + pattern: "customers/{customer_id}/customerUserAccessInvitations/{invitation_id}" + }; + + // Immutable. Name of the resource. + // Resource names have the form: + // `customers/{customer_id}/customerUserAccessInvitations/{invitation_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerUserAccessInvitation" + } + ]; + + // Output only. The ID of the invitation. + // This field is read-only. + int64 invitation_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Access role of the user. + google.ads.googleads.v9.enums.AccessRoleEnum.AccessRole access_role = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Email address the invitation was sent to. + // This can differ from the email address of the account + // that accepts the invite. + string email_address = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Time invitation was created. + // This field is read-only. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + string creation_date_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Invitation status of the user. + google.ads.googleads.v9.enums.AccessInvitationStatusEnum.AccessInvitationStatus invitation_status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/customizer_attribute.proto b/google/ads/googleads/v9/resources/customizer_attribute.proto new file mode 100644 index 000000000..c19a00b9b --- /dev/null +++ b/google/ads/googleads/v9/resources/customizer_attribute.proto @@ -0,0 +1,72 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/customizer_attribute_status.proto"; +import "google/ads/googleads/v9/enums/customizer_attribute_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "CustomizerAttributeProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// A customizer attribute. +// Use CustomerCustomizer, CampaignCustomizer, AdGroupCustomizer, or +// AdGroupCriterionCustomizer to associate a customizer attribute and +// set its value at the customer, campaign, ad group, or ad group criterion +// level, respectively. +message CustomizerAttribute { + option (google.api.resource) = { + type: "googleads.googleapis.com/CustomizerAttribute" + pattern: "customers/{customer_id}/customizerAttributes/{customizer_attribute_id}" + }; + + // Immutable. The resource name of the customizer attribute. + // Customizer Attribute resource names have the form: + // + // `customers/{customer_id}/customizerAttributes/{customizer_attribute_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomizerAttribute" + } + ]; + + // Output only. The ID of the customizer attribute. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. Immutable. Name of the customizer attribute. Required. It must have a minimum length + // of 1 and maximum length of 40. Name of an enabled customizer attribute must + // be unique (case insensitive). + string name = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Immutable. The type of the customizer attribute. + google.ads.googleads.v9.enums.CustomizerAttributeTypeEnum.CustomizerAttributeType type = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The status of the customizer attribute. + google.ads.googleads.v9.enums.CustomizerAttributeStatusEnum.CustomizerAttributeStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/detail_placement_view.proto b/google/ads/googleads/v9/resources/detail_placement_view.proto new file mode 100644 index 000000000..cc639c8a7 --- /dev/null +++ b/google/ads/googleads/v9/resources/detail_placement_view.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/placement_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DetailPlacementViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the detail placement view resource. + +// A view with metrics aggregated by ad group and URL or YouTube video. +message DetailPlacementView { + option (google.api.resource) = { + type: "googleads.googleapis.com/DetailPlacementView" + pattern: "customers/{customer_id}/detailPlacementViews/{ad_group_id}~{base64_placement}" + }; + + // Output only. The resource name of the detail placement view. + // Detail placement view resource names have the form: + // + // `customers/{customer_id}/detailPlacementViews/{ad_group_id}~{base64_placement}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DetailPlacementView" + } + ]; + + // Output only. The automatic placement string at detail level, e. g. website URL, mobile + // application ID, or a YouTube video ID. + optional string placement = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The display name is URL name for websites, YouTube video name for YouTube + // videos, and translated mobile app name for mobile apps. + optional string display_name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. URL of the group placement, e.g. domain, link to the mobile application in + // app store, or a YouTube channel URL. + optional string group_placement_target_url = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. URL of the placement, e.g. website, link to the mobile application in app + // store, or a YouTube video URL. + optional string target_url = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Type of the placement, e.g. Website, YouTube Video, and Mobile Application. + google.ads.googleads.v9.enums.PlacementTypeEnum.PlacementType placement_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/detailed_demographic.proto b/google/ads/googleads/v9/resources/detailed_demographic.proto new file mode 100644 index 000000000..496936b4b --- /dev/null +++ b/google/ads/googleads/v9/resources/detailed_demographic.proto @@ -0,0 +1,74 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criterion_category_availability.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DetailedDemographicProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Detailed Demographic resource. + +// A detailed demographic: a particular interest-based vertical to be targeted +// to reach users based on long-term life facts. +message DetailedDemographic { + option (google.api.resource) = { + type: "googleads.googleapis.com/DetailedDemographic" + pattern: "customers/{customer_id}/detailedDemographics/{detailed_demographic_id}" + }; + + // Output only. The resource name of the detailed demographic. + // Detailed demographic resource names have the form: + // + // `customers/{customer_id}/detailedDemographics/{detailed_demographic_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DetailedDemographic" + } + ]; + + // Output only. The ID of the detailed demographic. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the detailed demographic. E.g."Highest Level of Educational + // Attainment" + string name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The parent of the detailed_demographic. + string parent = 4 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DetailedDemographic" + } + ]; + + // Output only. True if the detailed demographic is launched to all channels and locales. + bool launched_to_all = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Availability information of the detailed demographic. + repeated google.ads.googleads.v9.common.CriterionCategoryAvailability availabilities = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/display_keyword_view.proto b/google/ads/googleads/v9/resources/display_keyword_view.proto new file mode 100644 index 000000000..ba53d3b34 --- /dev/null +++ b/google/ads/googleads/v9/resources/display_keyword_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DisplayKeywordViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the display keyword view resource. + +// A display keyword view. +message DisplayKeywordView { + option (google.api.resource) = { + type: "googleads.googleapis.com/DisplayKeywordView" + pattern: "customers/{customer_id}/displayKeywordViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the display keyword view. + // Display Keyword view resource names have the form: + // + // `customers/{customer_id}/displayKeywordViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DisplayKeywordView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/distance_view.proto b/google/ads/googleads/v9/resources/distance_view.proto new file mode 100644 index 000000000..711d9e507 --- /dev/null +++ b/google/ads/googleads/v9/resources/distance_view.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/distance_bucket.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DistanceViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the DistanceView resource. + +// A distance view with metrics aggregated by the user's distance from an +// advertiser's location extensions. Each DistanceBucket includes all +// impressions that fall within its distance and a single impression will +// contribute to the metrics for all DistanceBuckets that include the user's +// distance. +message DistanceView { + option (google.api.resource) = { + type: "googleads.googleapis.com/DistanceView" + pattern: "customers/{customer_id}/distanceViews/{placeholder_chain_id}~{distance_bucket}" + }; + + // Output only. The resource name of the distance view. + // Distance view resource names have the form: + // + // `customers/{customer_id}/distanceViews/1~{distance_bucket}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DistanceView" + } + ]; + + // Output only. Grouping of user distance from location extensions. + google.ads.googleads.v9.enums.DistanceBucketEnum.DistanceBucket distance_bucket = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. True if the DistanceBucket is using the metric system, false otherwise. + optional bool metric_system = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/domain_category.proto b/google/ads/googleads/v9/resources/domain_category.proto new file mode 100644 index 000000000..4fa7f739d --- /dev/null +++ b/google/ads/googleads/v9/resources/domain_category.proto @@ -0,0 +1,90 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DomainCategoryProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Domain Category resource. + +// A category generated automatically by crawling a domain. If a campaign uses +// the DynamicSearchAdsSetting, then domain categories will be generated for +// the domain. The categories can be targeted using WebpageConditionInfo. +// See: https://support.google.com/google-ads/answer/2471185 +message DomainCategory { + option (google.api.resource) = { + type: "googleads.googleapis.com/DomainCategory" + pattern: "customers/{customer_id}/domainCategories/{campaign_id}~{base64_category}~{language_code}" + }; + + // Output only. The resource name of the domain category. + // Domain category resource names have the form: + // + // `customers/{customer_id}/domainCategories/{campaign_id}~{category_base64}~{language_code}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DomainCategory" + } + ]; + + // Output only. The campaign this category is recommended for. + optional string campaign = 10 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. Recommended category for the website domain. e.g. if you have a website + // about electronics, the categories could be "cameras", "televisions", etc. + optional string category = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The language code specifying the language of the website. e.g. "en" for + // English. The language can be specified in the DynamicSearchAdsSetting + // required for dynamic search ads. This is the language of the pages from + // your website that you want Google Ads to find, create ads for, + // and match searches with. + optional string language_code = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The domain for the website. The domain can be specified in the + // DynamicSearchAdsSetting required for dynamic search ads. + optional string domain = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Fraction of pages on your site that this category matches. + optional double coverage_fraction = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The position of this category in the set of categories. Lower numbers + // indicate a better match for the domain. null indicates not recommended. + optional int64 category_rank = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Indicates whether this category has sub-categories. + optional bool has_children = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended cost per click for the category. + optional int64 recommended_cpc_bid_micros = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/dynamic_search_ads_search_term_view.proto b/google/ads/googleads/v9/resources/dynamic_search_ads_search_term_view.proto new file mode 100644 index 000000000..6ca9d0a00 --- /dev/null +++ b/google/ads/googleads/v9/resources/dynamic_search_ads_search_term_view.proto @@ -0,0 +1,86 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "DynamicSearchAdsSearchTermViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Dynamic Search Ads Search Term View resource. + +// A dynamic search ads search term view. +message DynamicSearchAdsSearchTermView { + option (google.api.resource) = { + type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" + pattern: "customers/{customer_id}/dynamicSearchAdsSearchTermViews/{ad_group_id}~{search_term_fingerprint}~{headline_fingerprint}~{landing_page_fingerprint}~{page_url_fingerprint}" + }; + + // Output only. The resource name of the dynamic search ads search term view. + // Dynamic search ads search term view resource names have the form: + // + // `customers/{customer_id}/dynamicSearchAdsSearchTermViews/{ad_group_id}~{search_term_fingerprint}~{headline_fingerprint}~{landing_page_fingerprint}~{page_url_fingerprint}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" + } + ]; + + // Output only. Search term + // + // This field is read-only. + optional string search_term = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The dynamically generated headline of the Dynamic Search Ad. + // + // This field is read-only. + optional string headline = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The dynamically selected landing page URL of the impression. + // + // This field is read-only. + optional string landing_page = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The URL of page feed item served for the impression. + // + // This field is read-only. + optional string page_url = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. True if query matches a negative keyword. + // + // This field is read-only. + optional bool has_negative_keyword = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. True if query is added to targeted keywords. + // + // This field is read-only. + optional bool has_matching_keyword = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. True if query matches a negative url. + // + // This field is read-only. + optional bool has_negative_url = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/expanded_landing_page_view.proto b/google/ads/googleads/v9/resources/expanded_landing_page_view.proto new file mode 100644 index 000000000..43d3e6d42 --- /dev/null +++ b/google/ads/googleads/v9/resources/expanded_landing_page_view.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ExpandedLandingPageViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the expanded landing page view resource. + +// A landing page view with metrics aggregated at the expanded final URL +// level. +message ExpandedLandingPageView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ExpandedLandingPageView" + pattern: "customers/{customer_id}/expandedLandingPageViews/{expanded_final_url_fingerprint}" + }; + + // Output only. The resource name of the expanded landing page view. + // Expanded landing page view resource names have the form: + // + // `customers/{customer_id}/expandedLandingPageViews/{expanded_final_url_fingerprint}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ExpandedLandingPageView" + } + ]; + + // Output only. The final URL that clicks are directed to. + optional string expanded_final_url = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/extension_feed_item.proto b/google/ads/googleads/v9/resources/extension_feed_item.proto new file mode 100644 index 000000000..a870eb40a --- /dev/null +++ b/google/ads/googleads/v9/resources/extension_feed_item.proto @@ -0,0 +1,151 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/common/extensions.proto"; +import "google/ads/googleads/v9/enums/extension_type.proto"; +import "google/ads/googleads/v9/enums/feed_item_status.proto"; +import "google/ads/googleads/v9/enums/feed_item_target_device.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionFeedItemProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ExtensionFeedItem resource. + +// An extension feed item. +message ExtensionFeedItem { + option (google.api.resource) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + pattern: "customers/{customer_id}/extensionFeedItems/{feed_item_id}" + }; + + // Immutable. The resource name of the extension feed item. + // Extension feed item resource names have the form: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + } + ]; + + // Output only. The ID of this feed item. Read-only. + optional int64 id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The extension type of the extension feed item. + // This field is read-only. + google.ads.googleads.v9.enums.ExtensionTypeEnum.ExtensionType extension_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Start time in which this feed item is effective and can begin serving. The + // time is in the customer's time zone. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string start_date_time = 26; + + // End time in which this feed item is no longer effective and will stop + // serving. The time is in the customer's time zone. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string end_date_time = 27; + + // List of non-overlapping schedules specifying all time intervals + // for which the feed item may serve. There can be a maximum of 6 schedules + // per day. + repeated google.ads.googleads.v9.common.AdScheduleInfo ad_schedules = 16; + + // The targeted device. + google.ads.googleads.v9.enums.FeedItemTargetDeviceEnum.FeedItemTargetDevice device = 17; + + // The targeted geo target constant. + optional string targeted_geo_target_constant = 30 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + }]; + + // The targeted keyword. + google.ads.googleads.v9.common.KeywordInfo targeted_keyword = 22; + + // Output only. Status of the feed item. + // This field is read-only. + google.ads.googleads.v9.enums.FeedItemStatusEnum.FeedItemStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Extension type. + oneof extension { + // Sitelink extension. + google.ads.googleads.v9.common.SitelinkFeedItem sitelink_feed_item = 2; + + // Structured snippet extension. + google.ads.googleads.v9.common.StructuredSnippetFeedItem structured_snippet_feed_item = 3; + + // App extension. + google.ads.googleads.v9.common.AppFeedItem app_feed_item = 7; + + // Call extension. + google.ads.googleads.v9.common.CallFeedItem call_feed_item = 8; + + // Callout extension. + google.ads.googleads.v9.common.CalloutFeedItem callout_feed_item = 9; + + // Text message extension. + google.ads.googleads.v9.common.TextMessageFeedItem text_message_feed_item = 10; + + // Price extension. + google.ads.googleads.v9.common.PriceFeedItem price_feed_item = 11; + + // Promotion extension. + google.ads.googleads.v9.common.PromotionFeedItem promotion_feed_item = 12; + + // Output only. Location extension. Locations are synced from a Business Profile into a + // feed. This field is read-only. + google.ads.googleads.v9.common.LocationFeedItem location_feed_item = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Affiliate location extension. Feed locations are populated by Google Ads + // based on a chain ID. + // This field is read-only. + google.ads.googleads.v9.common.AffiliateLocationFeedItem affiliate_location_feed_item = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Hotel Callout extension. + google.ads.googleads.v9.common.HotelCalloutFeedItem hotel_callout_feed_item = 23; + + // Immutable. Advertiser provided image extension. + google.ads.googleads.v9.common.ImageFeedItem image_feed_item = 31 [(google.api.field_behavior) = IMMUTABLE]; + } + + // Targeting at either the campaign or ad group level. Feed items that target + // a campaign or ad group will only serve with that resource. + oneof serving_resource_targeting { + // The targeted campaign. + string targeted_campaign = 28 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + }]; + + // The targeted ad group. + string targeted_ad_group = 29 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + }]; + } +} diff --git a/google/ads/googleads/v9/resources/feed.proto b/google/ads/googleads/v9/resources/feed.proto new file mode 100644 index 000000000..d995e02d5 --- /dev/null +++ b/google/ads/googleads/v9/resources/feed.proto @@ -0,0 +1,190 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/affiliate_location_feed_relationship_type.proto"; +import "google/ads/googleads/v9/enums/feed_attribute_type.proto"; +import "google/ads/googleads/v9/enums/feed_origin.proto"; +import "google/ads/googleads/v9/enums/feed_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Feed resource. + +// A feed. +message Feed { + option (google.api.resource) = { + type: "googleads.googleapis.com/Feed" + pattern: "customers/{customer_id}/feeds/{feed_id}" + }; + + // Data used to configure a location feed populated from Business Profile. + message PlacesLocationFeedData { + // Data used for authorization using OAuth. + message OAuthInfo { + // The HTTP method used to obtain authorization. + optional string http_method = 4; + + // The HTTP request URL used to obtain authorization. + optional string http_request_url = 5; + + // The HTTP authorization header used to obtain authorization. + optional string http_authorization_header = 6; + } + + // Immutable. Required authentication token (from OAuth API) for the email. + // This field can only be specified in a create request. All its subfields + // are not selectable. + OAuthInfo oauth_info = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // Email address of a Business Profile or email address of a + // manager of the Business Profile. Required. + optional string email_address = 7; + + // Plus page ID of the managed business whose locations should be used. If + // this field is not set, then all businesses accessible by the user + // (specified by email_address) are used. + // This field is mutate-only and is not selectable. + string business_account_id = 8; + + // Used to filter Business Profile listings by business name. If + // business_name_filter is set, only listings with a matching business name + // are candidates to be sync'd into FeedItems. + optional string business_name_filter = 9; + + // Used to filter Business Profile listings by categories. If entries + // exist in category_filters, only listings that belong to any of the + // categories are candidates to be sync'd into FeedItems. If no entries + // exist in category_filters, then all listings are candidates for syncing. + repeated string category_filters = 11; + + // Used to filter Business Profile listings by labels. If entries exist in + // label_filters, only listings that has any of the labels set are + // candidates to be synchronized into FeedItems. If no entries exist in + // label_filters, then all listings are candidates for syncing. + repeated string label_filters = 12; + } + + // Data used to configure an affiliate location feed populated with the + // specified chains. + message AffiliateLocationFeedData { + // The list of chains that the affiliate location feed will sync the + // locations from. + repeated int64 chain_ids = 3; + + // The relationship the chains have with the advertiser. + google.ads.googleads.v9.enums.AffiliateLocationFeedRelationshipTypeEnum.AffiliateLocationFeedRelationshipType relationship_type = 2; + } + + // Immutable. The resource name of the feed. + // Feed resource names have the form: + // + // `customers/{customer_id}/feeds/{feed_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Output only. The ID of the feed. + // This field is read-only. + optional int64 id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Name of the feed. Required. + optional string name = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // The Feed's attributes. Required on CREATE, unless + // system_feed_generation_data is provided, in which case Google Ads will + // update the feed with the correct attributes. + // Disallowed on UPDATE. Use attribute_operations to add new attributes. + repeated FeedAttribute attributes = 4; + + // The list of operations changing the feed attributes. Attributes can only + // be added, not removed. + repeated FeedAttributeOperation attribute_operations = 9; + + // Immutable. Specifies who manages the FeedAttributes for the Feed. + google.ads.googleads.v9.enums.FeedOriginEnum.FeedOrigin origin = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Status of the feed. + // This field is read-only. + google.ads.googleads.v9.enums.FeedStatusEnum.FeedStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The system data for the Feed. This data specifies information for + // generating the feed items of the system generated feed. + oneof system_feed_generation_data { + // Data used to configure a location feed populated from Business Profile. + PlacesLocationFeedData places_location_feed_data = 6; + + // Data used to configure an affiliate location feed populated with + // the specified chains. + AffiliateLocationFeedData affiliate_location_feed_data = 7; + } +} + +// FeedAttributes define the types of data expected to be present in a Feed. A +// single FeedAttribute specifies the expected type of the FeedItemAttributes +// with the same FeedAttributeId. Optionally, a FeedAttribute can be marked as +// being part of a FeedItem's unique key. +message FeedAttribute { + // ID of the attribute. + optional int64 id = 5; + + // The name of the attribute. Required. + optional string name = 6; + + // Data type for feed attribute. Required. + google.ads.googleads.v9.enums.FeedAttributeTypeEnum.FeedAttributeType type = 3; + + // Indicates that data corresponding to this attribute is part of a + // FeedItem's unique key. It defaults to false if it is unspecified. Note + // that a unique key is not required in a Feed's schema, in which case the + // FeedItems must be referenced by their feed_item_id. + optional bool is_part_of_key = 7; +} + +// Operation to be performed on a feed attribute list in a mutate. +message FeedAttributeOperation { + // The operator. + enum Operator { + // Unspecified. + UNSPECIFIED = 0; + + // Used for return value only. Represents value unknown in this version. + UNKNOWN = 1; + + // Add the attribute to the existing attributes. + ADD = 2; + } + + // Output only. Type of list operation to perform. + Operator operator = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The feed attribute being added to the list. + FeedAttribute value = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/feed_item.proto b/google/ads/googleads/v9/resources/feed_item.proto new file mode 100644 index 000000000..ec8cdecce --- /dev/null +++ b/google/ads/googleads/v9/resources/feed_item.proto @@ -0,0 +1,214 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/custom_parameter.proto"; +import "google/ads/googleads/v9/common/feed_common.proto"; +import "google/ads/googleads/v9/common/policy.proto"; +import "google/ads/googleads/v9/enums/feed_item_quality_approval_status.proto"; +import "google/ads/googleads/v9/enums/feed_item_quality_disapproval_reason.proto"; +import "google/ads/googleads/v9/enums/feed_item_status.proto"; +import "google/ads/googleads/v9/enums/feed_item_validation_status.proto"; +import "google/ads/googleads/v9/enums/geo_targeting_restriction.proto"; +import "google/ads/googleads/v9/enums/placeholder_type.proto"; +import "google/ads/googleads/v9/enums/policy_approval_status.proto"; +import "google/ads/googleads/v9/enums/policy_review_status.proto"; +import "google/ads/googleads/v9/errors/feed_item_validation_error.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the FeedItem resource. + +// A feed item. +message FeedItem { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedItem" + pattern: "customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}" + }; + + // Immutable. The resource name of the feed item. + // Feed item resource names have the form: + // + // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; + + // Immutable. The feed to which this feed item belongs. + optional string feed = 11 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Output only. The ID of this feed item. + optional int64 id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Start time in which this feed item is effective and can begin serving. The + // time is in the customer's time zone. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string start_date_time = 13; + + // End time in which this feed item is no longer effective and will stop + // serving. The time is in the customer's time zone. + // The format is "YYYY-MM-DD HH:MM:SS". + // Examples: "2018-03-05 09:15:00" or "2018-02-01 14:34:30" + optional string end_date_time = 14; + + // The feed item's attribute values. + repeated FeedItemAttributeValue attribute_values = 6; + + // Geo targeting restriction specifies the type of location that can be used + // for targeting. + google.ads.googleads.v9.enums.GeoTargetingRestrictionEnum.GeoTargetingRestriction geo_targeting_restriction = 7; + + // The list of mappings used to substitute custom parameter tags in a + // `tracking_url_template`, `final_urls`, or `mobile_final_urls`. + repeated google.ads.googleads.v9.common.CustomParameter url_custom_parameters = 8; + + // Output only. Status of the feed item. + // This field is read-only. + google.ads.googleads.v9.enums.FeedItemStatusEnum.FeedItemStatus status = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. List of info about a feed item's validation and approval state for active + // feed mappings. There will be an entry in the list for each type of feed + // mapping associated with the feed, e.g. a feed with a sitelink and a call + // feed mapping would cause every feed item associated with that feed to have + // an entry in this list for both sitelink and call. + // This field is read-only. + repeated FeedItemPlaceholderPolicyInfo policy_infos = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// A feed item attribute value. +message FeedItemAttributeValue { + // Id of the feed attribute for which the value is associated with. + optional int64 feed_attribute_id = 11; + + // Int64 value. Should be set if feed_attribute_id refers to a feed attribute + // of type INT64. + optional int64 integer_value = 12; + + // Bool value. Should be set if feed_attribute_id refers to a feed attribute + // of type BOOLEAN. + optional bool boolean_value = 13; + + // String value. Should be set if feed_attribute_id refers to a feed attribute + // of type STRING, URL or DATE_TIME. + // For STRING the maximum length is 1500 characters. For URL the maximum + // length is 2076 characters. For DATE_TIME the string must be in the format + // "YYYYMMDD HHMMSS". + optional string string_value = 14; + + // Double value. Should be set if feed_attribute_id refers to a feed attribute + // of type DOUBLE. + optional double double_value = 15; + + // Price value. Should be set if feed_attribute_id refers to a feed attribute + // of type PRICE. + google.ads.googleads.v9.common.Money price_value = 6; + + // Repeated int64 value. Should be set if feed_attribute_id refers to a feed + // attribute of type INT64_LIST. + repeated int64 integer_values = 16; + + // Repeated bool value. Should be set if feed_attribute_id refers to a feed + // attribute of type BOOLEAN_LIST. + repeated bool boolean_values = 17; + + // Repeated string value. Should be set if feed_attribute_id refers to a feed + // attribute of type STRING_LIST, URL_LIST or DATE_TIME_LIST. + // For STRING_LIST and URL_LIST the total size of the list in bytes may not + // exceed 3000. For DATE_TIME_LIST the number of elements may not exceed 200. + // + // For STRING_LIST the maximum length of each string element is 1500 + // characters. For URL_LIST the maximum length is 2076 characters. For + // DATE_TIME the format of the string must be the same as start and end time + // for the feed item. + repeated string string_values = 18; + + // Repeated double value. Should be set if feed_attribute_id refers to a feed + // attribute of type DOUBLE_LIST. + repeated double double_values = 19; +} + +// Policy, validation, and quality approval info for a feed item for the +// specified placeholder type. +message FeedItemPlaceholderPolicyInfo { + // Output only. The placeholder type. + google.ads.googleads.v9.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type_enum = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The FeedMapping that contains the placeholder type. + optional string feed_mapping_resource_name = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Where the placeholder type is in the review process. + google.ads.googleads.v9.enums.PolicyReviewStatusEnum.PolicyReviewStatus review_status = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The overall approval status of the placeholder type, calculated based on + // the status of its individual policy topic entries. + google.ads.googleads.v9.enums.PolicyApprovalStatusEnum.PolicyApprovalStatus approval_status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The list of policy findings for the placeholder type. + repeated google.ads.googleads.v9.common.PolicyTopicEntry policy_topic_entries = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The validation status of the palceholder type. + google.ads.googleads.v9.enums.FeedItemValidationStatusEnum.FeedItemValidationStatus validation_status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. List of placeholder type validation errors. + repeated FeedItemValidationError validation_errors = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Placeholder type quality evaluation approval status. + google.ads.googleads.v9.enums.FeedItemQualityApprovalStatusEnum.FeedItemQualityApprovalStatus quality_approval_status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. List of placeholder type quality evaluation disapproval reasons. + repeated google.ads.googleads.v9.enums.FeedItemQualityDisapprovalReasonEnum.FeedItemQualityDisapprovalReason quality_disapproval_reasons = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Stores a validation error and the set of offending feed attributes which +// together are responsible for causing a feed item validation error. +message FeedItemValidationError { + // Output only. Error code indicating what validation error was triggered. The description + // of the error can be found in the 'description' field. + google.ads.googleads.v9.errors.FeedItemValidationErrorEnum.FeedItemValidationError validation_error = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The description of the validation error. + optional string description = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Set of feed attributes in the feed item flagged during validation. If + // empty, no specific feed attributes can be associated with the error + // (e.g. error across the entire feed item). + repeated int64 feed_attribute_ids = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Any extra information related to this error which is not captured by + // validation_error and feed_attribute_id (e.g. placeholder field IDs when + // feed_attribute_id is not mapped). Note that extra_info is not localized. + optional string extra_info = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/feed_item_set.proto b/google/ads/googleads/v9/resources/feed_item_set.proto new file mode 100644 index 000000000..8966f1f26 --- /dev/null +++ b/google/ads/googleads/v9/resources/feed_item_set.proto @@ -0,0 +1,84 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/feed_item_set_filter_type_infos.proto"; +import "google/ads/googleads/v9/enums/feed_item_set_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Represents a set of feed items. The set can be used and shared among certain +// feed item features. For instance, the set can be referenced within the +// matching functions of CustomerFeed, CampaignFeed, and AdGroupFeed. +message FeedItemSet { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedItemSet" + pattern: "customers/{customer_id}/feedItemSets/{feed_id}~{feed_item_set_id}" + }; + + // Immutable. The resource name of the feed item set. + // Feed item set resource names have the form: + // `customers/{customer_id}/feedItemSets/{feed_id}~{feed_item_set_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemSet" + } + ]; + + // Immutable. The resource name of the feed containing the feed items in the set. + // Immutable. Required. + string feed = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Output only. ID of the set. + int64 feed_item_set_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Name of the set. Must be unique within the account. + string display_name = 4; + + // Output only. Status of the feed item set. + // This field is read-only. + google.ads.googleads.v9.enums.FeedItemSetStatusEnum.FeedItemSetStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Represents a filter on locations in a feed item set. + // Only applicable if the parent Feed of the FeedItemSet is a LOCATION feed. + oneof dynamic_set_filter { + // Filter for dynamic location set. + // It is only used for sets of locations. + google.ads.googleads.v9.common.DynamicLocationSetFilter dynamic_location_set_filter = 5; + + // Filter for dynamic affiliate location set. + // This field doesn't apply generally to feed item sets. It is only used for + // sets of affiliate locations. + google.ads.googleads.v9.common.DynamicAffiliateLocationSetFilter dynamic_affiliate_location_set_filter = 6; + } +} diff --git a/google/ads/googleads/v9/resources/feed_item_set_link.proto b/google/ads/googleads/v9/resources/feed_item_set_link.proto new file mode 100644 index 000000000..709af2347 --- /dev/null +++ b/google/ads/googleads/v9/resources/feed_item_set_link.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetLinkProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the FeedItemSetLink resource. + +// Represents a link between a FeedItem and a FeedItemSet. +message FeedItemSetLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedItemSetLink" + pattern: "customers/{customer_id}/feedItemSetLinks/{feed_id}~{feed_item_set_id}~{feed_item_id}" + }; + + // Immutable. The resource name of the feed item set link. + // Feed item set link resource names have the form: + // `customers/{customer_id}/feedItemSetLinks/{feed_id}~{feed_item_set_id}~{feed_item_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemSetLink" + } + ]; + + // Immutable. The linked FeedItem. + string feed_item = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; + + // Immutable. The linked FeedItemSet. + string feed_item_set = 3 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemSet" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/feed_item_target.proto b/google/ads/googleads/v9/resources/feed_item_target.proto new file mode 100644 index 000000000..032257003 --- /dev/null +++ b/google/ads/googleads/v9/resources/feed_item_target.proto @@ -0,0 +1,108 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/enums/feed_item_target_device.proto"; +import "google/ads/googleads/v9/enums/feed_item_target_status.proto"; +import "google/ads/googleads/v9/enums/feed_item_target_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the FeedItemTarget resource. + +// A feed item target. +message FeedItemTarget { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedItemTarget" + pattern: "customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}" + }; + + // Immutable. The resource name of the feed item target. + // Feed item target resource names have the form: + // `customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemTarget" + } + ]; + + // Immutable. The feed item to which this feed item target belongs. + optional string feed_item = 12 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; + + // Output only. The target type of this feed item target. This field is read-only. + google.ads.googleads.v9.enums.FeedItemTargetTypeEnum.FeedItemTargetType feed_item_target_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ID of the targeted resource. This field is read-only. + optional int64 feed_item_target_id = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of the feed item target. + // This field is read-only. + google.ads.googleads.v9.enums.FeedItemTargetStatusEnum.FeedItemTargetStatus status = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The targeted resource. + oneof target { + // Immutable. The targeted campaign. + string campaign = 14 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Immutable. The targeted ad group. + string ad_group = 15 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Immutable. The targeted keyword. + google.ads.googleads.v9.common.KeywordInfo keyword = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The targeted geo target constant resource name. + string geo_target_constant = 16 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + } + ]; + + // Immutable. The targeted device. + google.ads.googleads.v9.enums.FeedItemTargetDeviceEnum.FeedItemTargetDevice device = 9 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The targeted schedule. + google.ads.googleads.v9.common.AdScheduleInfo ad_schedule = 10 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v9/resources/feed_mapping.proto b/google/ads/googleads/v9/resources/feed_mapping.proto new file mode 100644 index 000000000..6b6b906a8 --- /dev/null +++ b/google/ads/googleads/v9/resources/feed_mapping.proto @@ -0,0 +1,189 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/ad_customizer_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/affiliate_location_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/app_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/call_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/callout_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/custom_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/dsa_page_feed_criterion_field.proto"; +import "google/ads/googleads/v9/enums/education_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/feed_mapping_criterion_type.proto"; +import "google/ads/googleads/v9/enums/feed_mapping_status.proto"; +import "google/ads/googleads/v9/enums/flight_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/hotel_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/image_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/job_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/local_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/location_extension_targeting_criterion_field.proto"; +import "google/ads/googleads/v9/enums/location_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/message_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/placeholder_type.proto"; +import "google/ads/googleads/v9/enums/price_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/promotion_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/real_estate_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/sitelink_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/structured_snippet_placeholder_field.proto"; +import "google/ads/googleads/v9/enums/travel_placeholder_field.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedMappingProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the FeedMapping resource. + +// A feed mapping. +message FeedMapping { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedMapping" + pattern: "customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}" + }; + + // Immutable. The resource name of the feed mapping. + // Feed mapping resource names have the form: + // + // `customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedMapping" + } + ]; + + // Immutable. The feed of this feed mapping. + optional string feed = 7 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; + + // Immutable. Feed attributes to field mappings. These mappings are a one-to-many + // relationship meaning that 1 feed attribute can be used to populate + // multiple placeholder fields, but 1 placeholder field can only draw + // data from 1 feed attribute. Ad Customizer is an exception, 1 placeholder + // field can be mapped to multiple feed attributes. Required. + repeated AttributeFieldMapping attribute_field_mappings = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Status of the feed mapping. + // This field is read-only. + google.ads.googleads.v9.enums.FeedMappingStatusEnum.FeedMappingStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Feed mapping target. Can be either a placeholder or a criterion. For a + // given feed, the active FeedMappings must have unique targets. Required. + oneof target { + // Immutable. The placeholder type of this mapping (i.e., if the mapping maps feed + // attributes to placeholder fields). + google.ads.googleads.v9.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The criterion type of this mapping (i.e., if the mapping maps feed + // attributes to criterion fields). + google.ads.googleads.v9.enums.FeedMappingCriterionTypeEnum.FeedMappingCriterionType criterion_type = 4 [(google.api.field_behavior) = IMMUTABLE]; + } +} + +// Maps from feed attribute id to a placeholder or criterion field id. +message AttributeFieldMapping { + // Immutable. Feed attribute from which to map. + optional int64 feed_attribute_id = 24 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The placeholder field ID. If a placeholder field enum is not published in + // the current API version, then this field will be populated and the field + // oneof will be empty. + // This field is read-only. + optional int64 field_id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Placeholder or criterion field to be populated using data from + // the above feed attribute. Required. + oneof field { + // Immutable. Sitelink Placeholder Fields. + google.ads.googleads.v9.enums.SitelinkPlaceholderFieldEnum.SitelinkPlaceholderField sitelink_field = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Call Placeholder Fields. + google.ads.googleads.v9.enums.CallPlaceholderFieldEnum.CallPlaceholderField call_field = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. App Placeholder Fields. + google.ads.googleads.v9.enums.AppPlaceholderFieldEnum.AppPlaceholderField app_field = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Location Placeholder Fields. This field is read-only. + google.ads.googleads.v9.enums.LocationPlaceholderFieldEnum.LocationPlaceholderField location_field = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Affiliate Location Placeholder Fields. This field is read-only. + google.ads.googleads.v9.enums.AffiliateLocationPlaceholderFieldEnum.AffiliateLocationPlaceholderField affiliate_location_field = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Callout Placeholder Fields. + google.ads.googleads.v9.enums.CalloutPlaceholderFieldEnum.CalloutPlaceholderField callout_field = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Structured Snippet Placeholder Fields. + google.ads.googleads.v9.enums.StructuredSnippetPlaceholderFieldEnum.StructuredSnippetPlaceholderField structured_snippet_field = 9 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Message Placeholder Fields. + google.ads.googleads.v9.enums.MessagePlaceholderFieldEnum.MessagePlaceholderField message_field = 10 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Price Placeholder Fields. + google.ads.googleads.v9.enums.PricePlaceholderFieldEnum.PricePlaceholderField price_field = 11 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Promotion Placeholder Fields. + google.ads.googleads.v9.enums.PromotionPlaceholderFieldEnum.PromotionPlaceholderField promotion_field = 12 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Ad Customizer Placeholder Fields + google.ads.googleads.v9.enums.AdCustomizerPlaceholderFieldEnum.AdCustomizerPlaceholderField ad_customizer_field = 13 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Dynamic Search Ad Page Feed Fields. + google.ads.googleads.v9.enums.DsaPageFeedCriterionFieldEnum.DsaPageFeedCriterionField dsa_page_feed_field = 14 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Location Target Fields. + google.ads.googleads.v9.enums.LocationExtensionTargetingCriterionFieldEnum.LocationExtensionTargetingCriterionField location_extension_targeting_field = 15 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Education Placeholder Fields + google.ads.googleads.v9.enums.EducationPlaceholderFieldEnum.EducationPlaceholderField education_field = 16 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Flight Placeholder Fields + google.ads.googleads.v9.enums.FlightPlaceholderFieldEnum.FlightPlaceholderField flight_field = 17 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Custom Placeholder Fields + google.ads.googleads.v9.enums.CustomPlaceholderFieldEnum.CustomPlaceholderField custom_field = 18 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Hotel Placeholder Fields + google.ads.googleads.v9.enums.HotelPlaceholderFieldEnum.HotelPlaceholderField hotel_field = 19 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Real Estate Placeholder Fields + google.ads.googleads.v9.enums.RealEstatePlaceholderFieldEnum.RealEstatePlaceholderField real_estate_field = 20 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Travel Placeholder Fields + google.ads.googleads.v9.enums.TravelPlaceholderFieldEnum.TravelPlaceholderField travel_field = 21 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Local Placeholder Fields + google.ads.googleads.v9.enums.LocalPlaceholderFieldEnum.LocalPlaceholderField local_field = 22 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Job Placeholder Fields + google.ads.googleads.v9.enums.JobPlaceholderFieldEnum.JobPlaceholderField job_field = 23 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Image Placeholder Fields + google.ads.googleads.v9.enums.ImagePlaceholderFieldEnum.ImagePlaceholderField image_field = 26 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v9/resources/feed_placeholder_view.proto b/google/ads/googleads/v9/resources/feed_placeholder_view.proto new file mode 100644 index 000000000..1fe913670 --- /dev/null +++ b/google/ads/googleads/v9/resources/feed_placeholder_view.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/placeholder_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "FeedPlaceholderViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the FeedPlaceholderView resource. + +// A feed placeholder view. +message FeedPlaceholderView { + option (google.api.resource) = { + type: "googleads.googleapis.com/FeedPlaceholderView" + pattern: "customers/{customer_id}/feedPlaceholderViews/{placeholder_type}" + }; + + // Output only. The resource name of the feed placeholder view. + // Feed placeholder view resource names have the form: + // + // `customers/{customer_id}/feedPlaceholderViews/{placeholder_type}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedPlaceholderView" + } + ]; + + // Output only. The placeholder type of the feed placeholder view. + google.ads.googleads.v9.enums.PlaceholderTypeEnum.PlaceholderType placeholder_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/gender_view.proto b/google/ads/googleads/v9/resources/gender_view.proto new file mode 100644 index 000000000..55edbf79b --- /dev/null +++ b/google/ads/googleads/v9/resources/gender_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GenderViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the gender view resource. + +// A gender view. +message GenderView { + option (google.api.resource) = { + type: "googleads.googleapis.com/GenderView" + pattern: "customers/{customer_id}/genderViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the gender view. + // Gender view resource names have the form: + // + // `customers/{customer_id}/genderViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GenderView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/geo_target_constant.proto b/google/ads/googleads/v9/resources/geo_target_constant.proto new file mode 100644 index 000000000..2f7971865 --- /dev/null +++ b/google/ads/googleads/v9/resources/geo_target_constant.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/geo_target_constant_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetConstantProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the geo target constant resource. + +// A geo target constant. +message GeoTargetConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/GeoTargetConstant" + pattern: "geoTargetConstants/{criterion_id}" + }; + + // Output only. The resource name of the geo target constant. + // Geo target constant resource names have the form: + // + // `geoTargetConstants/{geo_target_constant_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + } + ]; + + // Output only. The ID of the geo target constant. + optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Geo target constant English name. + optional string name = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ISO-3166-1 alpha-2 country code that is associated with the target. + optional string country_code = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Geo target constant target type. + optional string target_type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Geo target constant status. + google.ads.googleads.v9.enums.GeoTargetConstantStatusEnum.GeoTargetConstantStatus status = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The fully qualified English name, consisting of the target's name and that + // of its parent and country. + optional string canonical_name = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the parent geo target constant. + // Geo target constant resource names have the form: + // + // `geoTargetConstants/{parent_geo_target_constant_id}` + optional string parent_geo_target = 9 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/geographic_view.proto b/google/ads/googleads/v9/resources/geographic_view.proto new file mode 100644 index 000000000..7c6bcc6c2 --- /dev/null +++ b/google/ads/googleads/v9/resources/geographic_view.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/geo_targeting_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GeographicViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the geographic view resource. + +// A geographic view. +// +// Geographic View includes all metrics aggregated at the country level, +// one row per country. It reports metrics at either actual physical location of +// the user or an area of interest. If other segment fields are used, you may +// get more than one row per country. +message GeographicView { + option (google.api.resource) = { + type: "googleads.googleapis.com/GeographicView" + pattern: "customers/{customer_id}/geographicViews/{country_criterion_id}~{location_type}" + }; + + // Output only. The resource name of the geographic view. + // Geographic view resource names have the form: + // + // `customers/{customer_id}/geographicViews/{country_criterion_id}~{location_type}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeographicView" + } + ]; + + // Output only. Type of the geo targeting of the campaign. + google.ads.googleads.v9.enums.GeoTargetingTypeEnum.GeoTargetingType location_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Criterion Id for the country. + optional int64 country_criterion_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/google_ads_field.proto b/google/ads/googleads/v9/resources/google_ads_field.proto new file mode 100644 index 000000000..021ab2139 --- /dev/null +++ b/google/ads/googleads/v9/resources/google_ads_field.proto @@ -0,0 +1,108 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/google_ads_field_category.proto"; +import "google/ads/googleads/v9/enums/google_ads_field_data_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GoogleAdsFieldProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Google Ads Field resource. + +// A field or resource (artifact) used by GoogleAdsService. +message GoogleAdsField { + option (google.api.resource) = { + type: "googleads.googleapis.com/GoogleAdsField" + pattern: "googleAdsFields/{google_ads_field}" + }; + + // Output only. The resource name of the artifact. + // Artifact resource names have the form: + // + // `googleAdsFields/{name}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GoogleAdsField" + } + ]; + + // Output only. The name of the artifact. + optional string name = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The category of the artifact. + google.ads.googleads.v9.enums.GoogleAdsFieldCategoryEnum.GoogleAdsFieldCategory category = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the artifact can be used in a SELECT clause in search + // queries. + optional bool selectable = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the artifact can be used in a WHERE clause in search + // queries. + optional bool filterable = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the artifact can be used in a ORDER BY clause in search + // queries. + optional bool sortable = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The names of all resources, segments, and metrics that are selectable with + // the described artifact. + repeated string selectable_with = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The names of all resources that are selectable with the described + // artifact. Fields from these resources do not segment metrics when included + // in search queries. + // + // This field is only set for artifacts whose category is RESOURCE. + repeated string attribute_resources = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. This field lists the names of all metrics that are selectable with the + // described artifact when it is used in the FROM clause. + // It is only set for artifacts whose category is RESOURCE. + repeated string metrics = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. This field lists the names of all artifacts, whether a segment or another + // resource, that segment metrics when included in search queries and when the + // described artifact is used in the FROM clause. It is only set for artifacts + // whose category is RESOURCE. + repeated string segments = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Values the artifact can assume if it is a field of type ENUM. + // + // This field is only set for artifacts of category SEGMENT or ATTRIBUTE. + repeated string enum_values = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. This field determines the operators that can be used with the artifact + // in WHERE clauses. + google.ads.googleads.v9.enums.GoogleAdsFieldDataTypeEnum.GoogleAdsFieldDataType data_type = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The URL of proto describing the artifact's data type. + optional string type_url = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the field artifact is repeated. + optional bool is_repeated = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/group_placement_view.proto b/google/ads/googleads/v9/resources/group_placement_view.proto new file mode 100644 index 000000000..d00b1df24 --- /dev/null +++ b/google/ads/googleads/v9/resources/group_placement_view.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/placement_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "GroupPlacementViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the group placement view resource. + +// A group placement view. +message GroupPlacementView { + option (google.api.resource) = { + type: "googleads.googleapis.com/GroupPlacementView" + pattern: "customers/{customer_id}/groupPlacementViews/{ad_group_id}~{base64_placement}" + }; + + // Output only. The resource name of the group placement view. + // Group placement view resource names have the form: + // + // `customers/{customer_id}/groupPlacementViews/{ad_group_id}~{base64_placement}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GroupPlacementView" + } + ]; + + // Output only. The automatic placement string at group level, e. g. web domain, mobile + // app ID, or a YouTube channel ID. + optional string placement = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Domain name for websites and YouTube channel name for YouTube channels. + optional string display_name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. URL of the group placement, e.g. domain, link to the mobile application in + // app store, or a YouTube channel URL. + optional string target_url = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Type of the placement, e.g. Website, YouTube Channel, Mobile Application. + google.ads.googleads.v9.enums.PlacementTypeEnum.PlacementType placement_type = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/hotel_group_view.proto b/google/ads/googleads/v9/resources/hotel_group_view.proto new file mode 100644 index 000000000..17f94345d --- /dev/null +++ b/google/ads/googleads/v9/resources/hotel_group_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "HotelGroupViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the hotel group view resource. + +// A hotel group view. +message HotelGroupView { + option (google.api.resource) = { + type: "googleads.googleapis.com/HotelGroupView" + pattern: "customers/{customer_id}/hotelGroupViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the hotel group view. + // Hotel Group view resource names have the form: + // + // `customers/{customer_id}/hotelGroupViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/HotelGroupView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/hotel_performance_view.proto b/google/ads/googleads/v9/resources/hotel_performance_view.proto new file mode 100644 index 000000000..9ebaa1060 --- /dev/null +++ b/google/ads/googleads/v9/resources/hotel_performance_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "HotelPerformanceViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the hotel performance view resource. + +// A hotel performance view. +message HotelPerformanceView { + option (google.api.resource) = { + type: "googleads.googleapis.com/HotelPerformanceView" + pattern: "customers/{customer_id}/hotelPerformanceView" + }; + + // Output only. The resource name of the hotel performance view. + // Hotel performance view resource names have the form: + // + // `customers/{customer_id}/hotelPerformanceView` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/HotelPerformanceView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/hotel_reconciliation.proto b/google/ads/googleads/v9/resources/hotel_reconciliation.proto new file mode 100644 index 000000000..8d677d56c --- /dev/null +++ b/google/ads/googleads/v9/resources/hotel_reconciliation.proto @@ -0,0 +1,109 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/hotel_reconciliation_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "HotelReconciliationProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the hotel reconciliation resource. + +// A hotel reconciliation. It contains conversion information from Hotel +// bookings to reconcile with advertiser records. These rows may be updated +// or canceled before billing via Bulk Uploads. +message HotelReconciliation { + option (google.api.resource) = { + type: "googleads.googleapis.com/HotelReconciliation" + pattern: "customers/{customer_id}/hotelReconciliations/{commission_id}" + }; + + // Immutable. The resource name of the hotel reconciliation. + // Hotel reconciliation resource names have the form: + // + // `customers/{customer_id}/hotelReconciliations/{commission_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/HotelReconciliation" + } + ]; + + // Required. Output only. The commission ID is Google's ID for this booking. Every booking event is + // assigned a Commission ID to help you match it to a guest stay. + string commission_id = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + + // Output only. The order ID is the identifier for this booking as provided in the + // 'transaction_id' parameter of the conversion tracking tag. + string order_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifier for the Hotel Center account which provides the rates for the + // Hotel campaign. + int64 hotel_center_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Unique identifier for the booked property, as provided in the Hotel Center + // feed. The hotel ID comes from the 'ID' parameter of the conversion tracking + // tag. + string hotel_id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Check-in date recorded when the booking is made. If the check-in date is + // modified at reconciliation, the revised date will then take the place of + // the original date in this column. Format is YYYY-MM-DD. + string check_in_date = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Check-out date recorded when the booking is made. If the check-in date is + // modified at reconciliation, the revised date will then take the place of + // the original date in this column. Format is YYYY-MM-DD. + string check_out_date = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. Output only. Reconciled value is the final value of a booking as paid by the guest. If + // original booking value changes for any reason, such as itinerary changes or + // room upsells, the reconciled value should be the full final amount + // collected. If a booking is canceled, the reconciled value should include + // the value of any cancellation fees or non-refundable nights charged. Value + // is in millionths of the base unit currency. For example, $12.35 would be + // represented as 12350000. Currency unit is in the default customer currency. + int64 reconciled_value_micros = 8 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + + // Output only. Whether a given booking has been billed. Once billed, a booking can't be + // modified. + bool billed = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. Output only. Current status of a booking with regards to reconciliation and billing. + // Bookings should be reconciled within 45 days after the check-out date. + // Any booking not reconciled within 45 days will be billed at its original + // value. + google.ads.googleads.v9.enums.HotelReconciliationStatusEnum.HotelReconciliationStatus status = 10 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = OUTPUT_ONLY + ]; +} diff --git a/google/ads/googleads/v9/resources/income_range_view.proto b/google/ads/googleads/v9/resources/income_range_view.proto new file mode 100644 index 000000000..4cefe063f --- /dev/null +++ b/google/ads/googleads/v9/resources/income_range_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "IncomeRangeViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the income range view resource. + +// An income range view. +message IncomeRangeView { + option (google.api.resource) = { + type: "googleads.googleapis.com/IncomeRangeView" + pattern: "customers/{customer_id}/incomeRangeViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the income range view. + // Income range view resource names have the form: + // + // `customers/{customer_id}/incomeRangeViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/IncomeRangeView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/invoice.proto b/google/ads/googleads/v9/resources/invoice.proto new file mode 100644 index 000000000..1da7d815a --- /dev/null +++ b/google/ads/googleads/v9/resources/invoice.proto @@ -0,0 +1,203 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/dates.proto"; +import "google/ads/googleads/v9/enums/invoice_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "InvoiceProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Invoice resource. + +// An invoice. All invoice information is snapshotted to match the PDF invoice. +// For invoices older than the launch of InvoiceService, the snapshotted +// information may not match the PDF invoice. +message Invoice { + option (google.api.resource) = { + type: "googleads.googleapis.com/Invoice" + pattern: "customers/{customer_id}/invoices/{invoice_id}" + }; + + // Represents a summarized account budget billable cost. + message AccountBudgetSummary { + // Output only. The resource name of the customer associated with this account budget. + // This contains the customer ID, which appears on the invoice PDF as + // "Account ID". + // Customer resource names have the form: + // + // `customers/{customer_id}` + optional string customer = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The descriptive name of the account budget’s customer. It appears on the + // invoice PDF as "Account". + optional string customer_descriptive_name = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the account budget associated with this summarized + // billable cost. + // AccountBudget resource names have the form: + // + // `customers/{customer_id}/accountBudgets/{account_budget_id}` + optional string account_budget = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the account budget. It appears on the invoice PDF as "Account + // budget". + optional string account_budget_name = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The purchase order number of the account budget. It appears on the + // invoice PDF as "Purchase order". + optional string purchase_order_number = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The pretax subtotal amount attributable to this budget during the service + // period, in micros. + optional int64 subtotal_amount_micros = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The tax amount attributable to this budget during the service period, in + // micros. + optional int64 tax_amount_micros = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total amount attributable to this budget during the service period, + // in micros. This equals the sum of the account budget subtotal amount and + // the account budget tax amount. + optional int64 total_amount_micros = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The billable activity date range of the account budget, within the + // service date range of this invoice. The end date is inclusive. This can + // be different from the account budget's start and end time. + google.ads.googleads.v9.common.DateRange billable_activity_date_range = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. The resource name of the invoice. Multiple customers can share a given + // invoice, so multiple resource names may point to the same invoice. + // Invoice resource names have the form: + // + // `customers/{customer_id}/invoices/{invoice_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Invoice" + } + ]; + + // Output only. The ID of the invoice. It appears on the invoice PDF as "Invoice number". + optional string id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of invoice. + google.ads.googleads.v9.enums.InvoiceTypeEnum.InvoiceType type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of this invoice’s billing setup. + // + // `customers/{customer_id}/billingSetups/{billing_setup_id}` + optional string billing_setup = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A 16 digit ID used to identify the payments account associated with the + // billing setup, e.g. "1234-5678-9012-3456". It appears on the invoice PDF as + // "Billing Account Number". + optional string payments_account_id = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A 12 digit ID used to identify the payments profile associated with the + // billing setup, e.g. "1234-5678-9012". It appears on the invoice PDF as + // "Billing ID". + optional string payments_profile_id = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The issue date in yyyy-mm-dd format. It appears on the invoice PDF as + // either "Issue date" or "Invoice date". + optional string issue_date = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The due date in yyyy-mm-dd format. + optional string due_date = 30 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The service period date range of this invoice. The end date is inclusive. + google.ads.googleads.v9.common.DateRange service_date_range = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The currency code. All costs are returned in this currency. A subset of the + // currency codes derived from the ISO 4217 standard is supported. + optional string currency_code = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The pretax subtotal amount of invoice level adjustments, in micros. + int64 adjustments_subtotal_amount_micros = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The sum of taxes on the invoice level adjustments, in micros. + int64 adjustments_tax_amount_micros = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total amount of invoice level adjustments, in micros. + int64 adjustments_total_amount_micros = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The pretax subtotal amount of invoice level regulatory costs, in micros. + int64 regulatory_costs_subtotal_amount_micros = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The sum of taxes on the invoice level regulatory costs, in micros. + int64 regulatory_costs_tax_amount_micros = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total amount of invoice level regulatory costs, in micros. + int64 regulatory_costs_total_amount_micros = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The pretax subtotal amount, in micros. This equals the + // sum of the AccountBudgetSummary subtotal amounts, + // Invoice.adjustments_subtotal_amount_micros, and + // Invoice.regulatory_costs_subtotal_amount_micros. + // Starting with v6, the Invoice.regulatory_costs_subtotal_amount_micros is no + // longer included. + optional int64 subtotal_amount_micros = 33 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The sum of all taxes on the invoice, in micros. This equals the sum of the + // AccountBudgetSummary tax amounts, plus taxes not associated with a specific + // account budget. + optional int64 tax_amount_micros = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The total amount, in micros. This equals the sum of + // Invoice.subtotal_amount_micros and Invoice.tax_amount_micros. + // Starting with v6, Invoice.regulatory_costs_subtotal_amount_micros is + // also added as it is no longer already included in + // Invoice.tax_amount_micros. + optional int64 total_amount_micros = 35 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the original invoice corrected, wrote off, or canceled + // by this invoice, if applicable. If `corrected_invoice` is set, + // `replaced_invoices` will not be set. + // Invoice resource names have the form: + // + // `customers/{customer_id}/invoices/{invoice_id}` + optional string corrected_invoice = 36 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the original invoice(s) being rebilled or replaced by + // this invoice, if applicable. There might be multiple replaced invoices due + // to invoice consolidation. The replaced invoices may not belong to the same + // payments account. If `replaced_invoices` is set, `corrected_invoice` will + // not be set. + // Invoice resource names have the form: + // + // `customers/{customer_id}/invoices/{invoice_id}` + repeated string replaced_invoices = 37 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The URL to a PDF copy of the invoice. Users need to pass in their OAuth + // token to request the PDF with this URL. + optional string pdf_url = 38 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The list of summarized account budget information associated with this + // invoice. + repeated AccountBudgetSummary account_budget_summaries = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/keyword_plan.proto b/google/ads/googleads/v9/resources/keyword_plan.proto new file mode 100644 index 000000000..41a660aef --- /dev/null +++ b/google/ads/googleads/v9/resources/keyword_plan.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/dates.proto"; +import "google/ads/googleads/v9/enums/keyword_plan_forecast_interval.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the keyword plan resource. + +// A Keyword Planner plan. +// Max number of saved keyword plans: 10000. +// It's possible to remove plans if limit is reached. +message KeywordPlan { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordPlan" + pattern: "customers/{customer_id}/keywordPlans/{keyword_plan_id}" + }; + + // Immutable. The resource name of the Keyword Planner plan. + // KeywordPlan resource names have the form: + // + // `customers/{customer_id}/keywordPlans/{kp_plan_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; + + // Output only. The ID of the keyword plan. + optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the keyword plan. + // + // This field is required and should not be empty when creating new keyword + // plans. + optional string name = 6; + + // The date period used for forecasting the plan. + KeywordPlanForecastPeriod forecast_period = 4; +} + +// The forecasting period associated with the keyword plan. +message KeywordPlanForecastPeriod { + // Required. The date used for forecasting the Plan. + oneof interval { + // A future date range relative to the current date used for forecasting. + google.ads.googleads.v9.enums.KeywordPlanForecastIntervalEnum.KeywordPlanForecastInterval date_interval = 1; + + // The custom date range used for forecasting. + // The start and end dates must be in the future. Otherwise, an error will + // be returned when the forecasting action is performed. + // The start and end dates are inclusive. + google.ads.googleads.v9.common.DateRange date_range = 2; + } +} diff --git a/google/ads/googleads/v9/resources/keyword_plan_ad_group.proto b/google/ads/googleads/v9/resources/keyword_plan_ad_group.proto new file mode 100644 index 000000000..a04308b35 --- /dev/null +++ b/google/ads/googleads/v9/resources/keyword_plan_ad_group.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the keyword plan ad group resource. + +// A Keyword Planner ad group. +// Max number of keyword plan ad groups per plan: 200. +message KeywordPlanAdGroup { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordPlanAdGroup" + pattern: "customers/{customer_id}/keywordPlanAdGroups/{keyword_plan_ad_group_id}" + }; + + // Immutable. The resource name of the Keyword Planner ad group. + // KeywordPlanAdGroup resource names have the form: + // + // `customers/{customer_id}/keywordPlanAdGroups/{kp_ad_group_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroup" + } + ]; + + // The keyword plan campaign to which this ad group belongs. + optional string keyword_plan_campaign = 6 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + }]; + + // Output only. The ID of the keyword plan ad group. + optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the keyword plan ad group. + // + // This field is required and should not be empty when creating keyword plan + // ad group. + optional string name = 8; + + // A default ad group max cpc bid in micros in account currency for all + // biddable keywords under the keyword plan ad group. + // If not set, will inherit from parent campaign. + optional int64 cpc_bid_micros = 9; +} diff --git a/google/ads/googleads/v9/resources/keyword_plan_ad_group_keyword.proto b/google/ads/googleads/v9/resources/keyword_plan_ad_group_keyword.proto new file mode 100644 index 000000000..b39b02091 --- /dev/null +++ b/google/ads/googleads/v9/resources/keyword_plan_ad_group_keyword.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/keyword_match_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupKeywordProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the keyword plan ad group keyword resource. + +// A Keyword Plan ad group keyword. +// Max number of keyword plan keywords per plan: 10000. +message KeywordPlanAdGroupKeyword { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" + pattern: "customers/{customer_id}/keywordPlanAdGroupKeywords/{keyword_plan_ad_group_keyword_id}" + }; + + // Immutable. The resource name of the Keyword Plan ad group keyword. + // KeywordPlanAdGroupKeyword resource names have the form: + // + // `customers/{customer_id}/keywordPlanAdGroupKeywords/{kp_ad_group_keyword_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" + } + ]; + + // The Keyword Plan ad group to which this keyword belongs. + optional string keyword_plan_ad_group = 8 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroup" + }]; + + // Output only. The ID of the Keyword Plan keyword. + optional int64 id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The keyword text. + optional string text = 10; + + // The keyword match type. + google.ads.googleads.v9.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; + + // A keyword level max cpc bid in micros (e.g. $1 = 1mm). The currency is the + // same as the account currency code. This will override any CPC bid set at + // the keyword plan ad group level. + // Not applicable for negative keywords. (negative = true) + // This field is Optional. + optional int64 cpc_bid_micros = 11; + + // Immutable. If true, the keyword is negative. + optional bool negative = 12 [(google.api.field_behavior) = IMMUTABLE]; +} diff --git a/google/ads/googleads/v9/resources/keyword_plan_campaign.proto b/google/ads/googleads/v9/resources/keyword_plan_campaign.proto new file mode 100644 index 000000000..c2e5cdd6b --- /dev/null +++ b/google/ads/googleads/v9/resources/keyword_plan_campaign.proto @@ -0,0 +1,98 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/keyword_plan_network.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the keyword plan campaign resource. + +// A Keyword Plan campaign. +// Max number of keyword plan campaigns per plan allowed: 1. +message KeywordPlanCampaign { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + pattern: "customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}" + }; + + // Immutable. The resource name of the Keyword Plan campaign. + // KeywordPlanCampaign resource names have the form: + // + // `customers/{customer_id}/keywordPlanCampaigns/{kp_campaign_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + } + ]; + + // The keyword plan this campaign belongs to. + optional string keyword_plan = 9 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + }]; + + // Output only. The ID of the Keyword Plan campaign. + optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the Keyword Plan campaign. + // + // This field is required and should not be empty when creating Keyword Plan + // campaigns. + optional string name = 11; + + // The languages targeted for the Keyword Plan campaign. + // Max allowed: 1. + repeated string language_constants = 12 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/LanguageConstant" + }]; + + // Targeting network. + // + // This field is required and should not be empty when creating Keyword Plan + // campaigns. + google.ads.googleads.v9.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork keyword_plan_network = 6; + + // A default max cpc bid in micros, and in the account currency, for all ad + // groups under the campaign. + // + // This field is required and should not be empty when creating Keyword Plan + // campaigns. + optional int64 cpc_bid_micros = 13; + + // The geo targets. + // Max number allowed: 20. + repeated KeywordPlanGeoTarget geo_targets = 8; +} + +// A geo target. +message KeywordPlanGeoTarget { + // Required. The resource name of the geo target. + optional string geo_target_constant = 2 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + }]; +} diff --git a/google/ads/googleads/v9/resources/keyword_plan_campaign_keyword.proto b/google/ads/googleads/v9/resources/keyword_plan_campaign_keyword.proto new file mode 100644 index 000000000..e5bf72e02 --- /dev/null +++ b/google/ads/googleads/v9/resources/keyword_plan_campaign_keyword.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/keyword_match_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignKeywordProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the keyword plan negative keyword resource. + +// A Keyword Plan Campaign keyword. +// Only negative keywords are supported for Campaign Keyword. +message KeywordPlanCampaignKeyword { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" + pattern: "customers/{customer_id}/keywordPlanCampaignKeywords/{keyword_plan_campaign_keyword_id}" + }; + + // Immutable. The resource name of the Keyword Plan Campaign keyword. + // KeywordPlanCampaignKeyword resource names have the form: + // + // `customers/{customer_id}/keywordPlanCampaignKeywords/{kp_campaign_keyword_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" + } + ]; + + // The Keyword Plan campaign to which this negative keyword belongs. + optional string keyword_plan_campaign = 8 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + }]; + + // Output only. The ID of the Keyword Plan negative keyword. + optional int64 id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The keyword text. + optional string text = 10; + + // The keyword match type. + google.ads.googleads.v9.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 5; + + // Immutable. If true, the keyword is negative. + // Must be set to true. Only negative campaign keywords are supported. + optional bool negative = 11 [(google.api.field_behavior) = IMMUTABLE]; +} diff --git a/google/ads/googleads/v9/resources/keyword_theme_constant.proto b/google/ads/googleads/v9/resources/keyword_theme_constant.proto new file mode 100644 index 000000000..8e35dce0b --- /dev/null +++ b/google/ads/googleads/v9/resources/keyword_theme_constant.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordThemeConstantProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Smart Campaign keyword theme constant resource. + +// A Smart Campaign keyword theme constant. +message KeywordThemeConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordThemeConstant" + pattern: "keywordThemeConstants/{express_category_id}~{express_sub_category_id}" + }; + + // Output only. The resource name of the keyword theme constant. + // Keyword theme constant resource names have the form: + // + // `keywordThemeConstants/{keyword_theme_id}~{sub_keyword_theme_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordThemeConstant" + } + ]; + + // Output only. The ISO-3166 Alpha-2 country code of the constant, eg. "US". + // To display and query matching purpose, the keyword theme needs to be + // localized. + optional string country_code = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ISO-639-1 language code with 2 letters of the constant, eg. "en". + // To display and query matching purpose, the keyword theme needs to be + // localized. + optional string language_code = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The display name of the keyword theme or sub keyword theme. + optional string display_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/keyword_view.proto b/google/ads/googleads/v9/resources/keyword_view.proto new file mode 100644 index 000000000..a78971d18 --- /dev/null +++ b/google/ads/googleads/v9/resources/keyword_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "KeywordViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the keyword view resource. + +// A keyword view. +message KeywordView { + option (google.api.resource) = { + type: "googleads.googleapis.com/KeywordView" + pattern: "customers/{customer_id}/keywordViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the keyword view. + // Keyword view resource names have the form: + // + // `customers/{customer_id}/keywordViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/label.proto b/google/ads/googleads/v9/resources/label.proto new file mode 100644 index 000000000..7345ad07b --- /dev/null +++ b/google/ads/googleads/v9/resources/label.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/text_label.proto"; +import "google/ads/googleads/v9/enums/label_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LabelProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// A label. +message Label { + option (google.api.resource) = { + type: "googleads.googleapis.com/Label" + pattern: "customers/{customer_id}/labels/{label_id}" + }; + + // Immutable. Name of the resource. + // Label resource names have the form: + // `customers/{customer_id}/labels/{label_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; + + // Output only. Id of the label. Read only. + optional int64 id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the label. + // + // This field is required and should not be empty when creating a new label. + // + // The length of this string should be between 1 and 80, inclusive. + optional string name = 7; + + // Output only. Status of the label. Read only. + google.ads.googleads.v9.enums.LabelStatusEnum.LabelStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // A type of label displaying text on a colored background. + google.ads.googleads.v9.common.TextLabel text_label = 5; +} diff --git a/google/ads/googleads/v9/resources/landing_page_view.proto b/google/ads/googleads/v9/resources/landing_page_view.proto new file mode 100644 index 000000000..bbd4bc500 --- /dev/null +++ b/google/ads/googleads/v9/resources/landing_page_view.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LandingPageViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the landing page view resource. + +// A landing page view with metrics aggregated at the unexpanded final URL +// level. +message LandingPageView { + option (google.api.resource) = { + type: "googleads.googleapis.com/LandingPageView" + pattern: "customers/{customer_id}/landingPageViews/{unexpanded_final_url_fingerprint}" + }; + + // Output only. The resource name of the landing page view. + // Landing page view resource names have the form: + // + // `customers/{customer_id}/landingPageViews/{unexpanded_final_url_fingerprint}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LandingPageView" + } + ]; + + // Output only. The advertiser-specified final URL. + optional string unexpanded_final_url = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/language_constant.proto b/google/ads/googleads/v9/resources/language_constant.proto new file mode 100644 index 000000000..69934780d --- /dev/null +++ b/google/ads/googleads/v9/resources/language_constant.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LanguageConstantProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the language constant resource. + +// A language. +message LanguageConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/LanguageConstant" + pattern: "languageConstants/{criterion_id}" + }; + + // Output only. The resource name of the language constant. + // Language constant resource names have the form: + // + // `languageConstants/{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LanguageConstant" + } + ]; + + // Output only. The ID of the language constant. + optional int64 id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The language code, e.g. "en_US", "en_AU", "es", "fr", etc. + optional string code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The full name of the language in English, e.g., "English (US)", "Spanish", + // etc. + optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether the language is targetable. + optional bool targetable = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/life_event.proto b/google/ads/googleads/v9/resources/life_event.proto new file mode 100644 index 000000000..374b9ecc2 --- /dev/null +++ b/google/ads/googleads/v9/resources/life_event.proto @@ -0,0 +1,73 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criterion_category_availability.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LifeEventProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Life Event resource. + +// A life event: a particular interest-based vertical to be targeted to reach +// users when they are in the midst of important life milestones. +message LifeEvent { + option (google.api.resource) = { + type: "googleads.googleapis.com/LifeEvent" + pattern: "customers/{customer_id}/lifeEvents/{life_event_id}" + }; + + // Output only. The resource name of the life event. + // Life event resource names have the form: + // + // `customers/{customer_id}/lifeEvents/{life_event_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LifeEvent" + } + ]; + + // Output only. The ID of the life event. + int64 id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the life event. E.g.,"Recently Moved" + string name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The parent of the life_event. + string parent = 4 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LifeEvent" + } + ]; + + // Output only. True if the life event is launched to all channels and locales. + bool launched_to_all = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Availability information of the life event. + repeated google.ads.googleads.v9.common.CriterionCategoryAvailability availabilities = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/location_view.proto b/google/ads/googleads/v9/resources/location_view.proto new file mode 100644 index 000000000..a218d83ee --- /dev/null +++ b/google/ads/googleads/v9/resources/location_view.proto @@ -0,0 +1,52 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "LocationViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the location view resource. + +// A location view summarizes the performance of campaigns by +// Location criteria. +message LocationView { + option (google.api.resource) = { + type: "googleads.googleapis.com/LocationView" + pattern: "customers/{customer_id}/locationViews/{campaign_id}~{criterion_id}" + }; + + // Output only. The resource name of the location view. + // Location view resource names have the form: + // + // `customers/{customer_id}/locationViews/{campaign_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LocationView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/managed_placement_view.proto b/google/ads/googleads/v9/resources/managed_placement_view.proto new file mode 100644 index 000000000..82f352d6d --- /dev/null +++ b/google/ads/googleads/v9/resources/managed_placement_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ManagedPlacementViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Managed Placement view resource. + +// A managed placement view. +message ManagedPlacementView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ManagedPlacementView" + pattern: "customers/{customer_id}/managedPlacementViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the Managed Placement view. + // Managed placement view resource names have the form: + // + // `customers/{customer_id}/managedPlacementViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ManagedPlacementView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/media_file.proto b/google/ads/googleads/v9/resources/media_file.proto new file mode 100644 index 000000000..0e2c4eb93 --- /dev/null +++ b/google/ads/googleads/v9/resources/media_file.proto @@ -0,0 +1,137 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/media_type.proto"; +import "google/ads/googleads/v9/enums/mime_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MediaFileProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the media file resource. + +// A media file. +message MediaFile { + option (google.api.resource) = { + type: "googleads.googleapis.com/MediaFile" + pattern: "customers/{customer_id}/mediaFiles/{media_file_id}" + }; + + // Immutable. The resource name of the media file. + // Media file resource names have the form: + // + // `customers/{customer_id}/mediaFiles/{media_file_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MediaFile" + } + ]; + + // Output only. The ID of the media file. + optional int64 id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Type of the media file. + google.ads.googleads.v9.enums.MediaTypeEnum.MediaType type = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The mime type of the media file. + google.ads.googleads.v9.enums.MimeTypeEnum.MimeType mime_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The URL of where the original media file was downloaded from (or a file + // name). Only used for media of type AUDIO and IMAGE. + optional string source_url = 13 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The name of the media file. The name can be used by clients to help + // identify previously uploaded media. + optional string name = 14 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The size of the media file in bytes. + optional int64 file_size = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The specific type of the media file. + oneof mediatype { + // Immutable. Encapsulates an Image. + MediaImage image = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. A ZIP archive media the content of which contains HTML5 assets. + MediaBundle media_bundle = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Encapsulates an Audio. + MediaAudio audio = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Encapsulates a Video. + MediaVideo video = 11 [(google.api.field_behavior) = IMMUTABLE]; + } +} + +// Encapsulates an Image. +message MediaImage { + // Immutable. Raw image data. + optional bytes data = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The url to the full size version of the image. + optional string full_size_image_url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The url to the preview size version of the image. + optional string preview_size_image_url = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Represents a ZIP archive media the content of which contains HTML5 assets. +message MediaBundle { + // Immutable. Raw zipped data. + optional bytes data = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The url to access the uploaded zipped data. + // E.g. https://tpc.googlesyndication.com/simgad/123 + // This field is read-only. + optional string url = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Encapsulates an Audio. +message MediaAudio { + // Output only. The duration of the Audio in milliseconds. + optional int64 ad_duration_millis = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Encapsulates a Video. +message MediaVideo { + // Output only. The duration of the Video in milliseconds. + optional int64 ad_duration_millis = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The YouTube video ID (as seen in YouTube URLs). Adding prefix + // "https://www.youtube.com/watch?v=" to this ID will get the YouTube + // streaming URL for this video. + optional string youtube_video_id = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The Advertising Digital Identification code for this video, as defined by + // the American Association of Advertising Agencies, used mainly for + // television commercials. + optional string advertising_id_code = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Industry Standard Commercial Identifier code for this video, used + // mainly for television commercials. + optional string isci_code = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/merchant_center_link.proto b/google/ads/googleads/v9/resources/merchant_center_link.proto new file mode 100644 index 000000000..4643ce1a3 --- /dev/null +++ b/google/ads/googleads/v9/resources/merchant_center_link.proto @@ -0,0 +1,64 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/merchant_center_link_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MerchantCenterLinkProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Merchant Center link resource. + +// A data sharing connection, proposed or in use, +// between a Google Ads Customer and a Merchant Center account. +message MerchantCenterLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/MerchantCenterLink" + pattern: "customers/{customer_id}/merchantCenterLinks/{merchant_center_id}" + }; + + // Immutable. The resource name of the merchant center link. + // Merchant center link resource names have the form: + // + // `customers/{customer_id}/merchantCenterLinks/{merchant_center_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MerchantCenterLink" + } + ]; + + // Output only. The ID of the Merchant Center account. + // This field is readonly. + optional int64 id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the Merchant Center account. + // This field is readonly. + optional string merchant_center_account_name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The status of the link. + google.ads.googleads.v9.enums.MerchantCenterLinkStatusEnum.MerchantCenterLinkStatus status = 5; +} diff --git a/google/ads/googleads/v9/resources/mobile_app_category_constant.proto b/google/ads/googleads/v9/resources/mobile_app_category_constant.proto new file mode 100644 index 000000000..f2788d96d --- /dev/null +++ b/google/ads/googleads/v9/resources/mobile_app_category_constant.proto @@ -0,0 +1,57 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MobileAppCategoryConstantProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Mobile App Category Constant resource. + +// A mobile application category constant. +message MobileAppCategoryConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/MobileAppCategoryConstant" + pattern: "mobileAppCategoryConstants/{mobile_app_category_id}" + }; + + // Output only. The resource name of the mobile app category constant. + // Mobile app category constant resource names have the form: + // + // `mobileAppCategoryConstants/{mobile_app_category_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MobileAppCategoryConstant" + } + ]; + + // Output only. The ID of the mobile app category constant. + optional int32 id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Mobile app category name. + optional string name = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/mobile_device_constant.proto b/google/ads/googleads/v9/resources/mobile_device_constant.proto new file mode 100644 index 000000000..32b3da89a --- /dev/null +++ b/google/ads/googleads/v9/resources/mobile_device_constant.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/mobile_device_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "MobileDeviceConstantProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the mobile device constant resource. + +// A mobile device constant. +message MobileDeviceConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/MobileDeviceConstant" + pattern: "mobileDeviceConstants/{criterion_id}" + }; + + // Output only. The resource name of the mobile device constant. + // Mobile device constant resource names have the form: + // + // `mobileDeviceConstants/{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MobileDeviceConstant" + } + ]; + + // Output only. The ID of the mobile device constant. + optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the mobile device. + optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The manufacturer of the mobile device. + optional string manufacturer_name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The operating system of the mobile device. + optional string operating_system_name = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of mobile device. + google.ads.googleads.v9.enums.MobileDeviceTypeEnum.MobileDeviceType type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/offline_user_data_job.proto b/google/ads/googleads/v9/resources/offline_user_data_job.proto new file mode 100644 index 000000000..9ec8cbd57 --- /dev/null +++ b/google/ads/googleads/v9/resources/offline_user_data_job.proto @@ -0,0 +1,95 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/offline_user_data.proto"; +import "google/ads/googleads/v9/enums/offline_user_data_job_failure_reason.proto"; +import "google/ads/googleads/v9/enums/offline_user_data_job_match_rate_range.proto"; +import "google/ads/googleads/v9/enums/offline_user_data_job_status.proto"; +import "google/ads/googleads/v9/enums/offline_user_data_job_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the offline user data job resource. + +// A job containing offline user data of store visitors, or user list members +// that will be processed asynchronously. The uploaded data isn't readable and +// the processing results of the job can only be read using +// OfflineUserDataJobService.GetOfflineUserDataJob. +message OfflineUserDataJob { + option (google.api.resource) = { + type: "googleads.googleapis.com/OfflineUserDataJob" + pattern: "customers/{customer_id}/offlineUserDataJobs/{offline_user_data_update_id}" + }; + + // Immutable. The resource name of the offline user data job. + // Offline user data job resource names have the form: + // + // `customers/{customer_id}/offlineUserDataJobs/{offline_user_data_job_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OfflineUserDataJob" + } + ]; + + // Output only. ID of this offline user data job. + optional int64 id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. User specified job ID. + optional int64 external_id = 10 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Type of the job. + google.ads.googleads.v9.enums.OfflineUserDataJobTypeEnum.OfflineUserDataJobType type = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Status of the job. + google.ads.googleads.v9.enums.OfflineUserDataJobStatusEnum.OfflineUserDataJobStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Reason for the processing failure, if status is FAILED. + google.ads.googleads.v9.enums.OfflineUserDataJobFailureReasonEnum.OfflineUserDataJobFailureReason failure_reason = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Metadata of offline user data job depicting match rate range. + OfflineUserDataJobMetadata operation_metadata = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Metadata of the job. + oneof metadata { + // Immutable. Metadata for data updates to a CRM-based user list. + google.ads.googleads.v9.common.CustomerMatchUserListMetadata customer_match_user_list_metadata = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Metadata for store sales data update. + google.ads.googleads.v9.common.StoreSalesMetadata store_sales_metadata = 8 [(google.api.field_behavior) = IMMUTABLE]; + } +} + +// Metadata of offline user data job. +message OfflineUserDataJobMetadata { + // Output only. Match rate of the Customer Match user list upload. Describes the estimated + // match rate when the status of the job is “RUNNING” and final match rate + // when the final match rate is available after the status of the job is + // “SUCCESS/FAILED”. + google.ads.googleads.v9.enums.OfflineUserDataJobMatchRateRangeEnum.OfflineUserDataJobMatchRateRange match_rate_range = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/operating_system_version_constant.proto b/google/ads/googleads/v9/resources/operating_system_version_constant.proto new file mode 100644 index 000000000..0031309f1 --- /dev/null +++ b/google/ads/googleads/v9/resources/operating_system_version_constant.proto @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/operating_system_version_operator_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "OperatingSystemVersionConstantProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the operating system version constant resource. + +// A mobile operating system version or a range of versions, depending on +// `operator_type`. List of available mobile platforms at +// https://developers.google.com/google-ads/api/reference/data/codes-formats#mobile-platforms +message OperatingSystemVersionConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/OperatingSystemVersionConstant" + pattern: "operatingSystemVersionConstants/{criterion_id}" + }; + + // Output only. The resource name of the operating system version constant. + // Operating system version constant resource names have the form: + // + // `operatingSystemVersionConstants/{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OperatingSystemVersionConstant" + } + ]; + + // Output only. The ID of the operating system version. + optional int64 id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the operating system. + optional string name = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The OS Major Version number. + optional int32 os_major_version = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The OS Minor Version number. + optional int32 os_minor_version = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Determines whether this constant represents a single version or a range of + // versions. + google.ads.googleads.v9.enums.OperatingSystemVersionOperatorTypeEnum.OperatingSystemVersionOperatorType operator_type = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/paid_organic_search_term_view.proto b/google/ads/googleads/v9/resources/paid_organic_search_term_view.proto new file mode 100644 index 000000000..261b2c6ad --- /dev/null +++ b/google/ads/googleads/v9/resources/paid_organic_search_term_view.proto @@ -0,0 +1,56 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "PaidOrganicSearchTermViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the PaidOrganicSearchTermView resource. + +// A paid organic search term view providing a view of search stats across +// ads and organic listings aggregated by search term at the ad group level. +message PaidOrganicSearchTermView { + option (google.api.resource) = { + type: "googleads.googleapis.com/PaidOrganicSearchTermView" + pattern: "customers/{customer_id}/paidOrganicSearchTermViews/{campaign_id}~{ad_group_id}~{base64_search_term}" + }; + + // Output only. The resource name of the search term view. + // Search term view resource names have the form: + // + // `customers/{customer_id}/paidOrganicSearchTermViews/{campaign_id}~ + // {ad_group_id}~{URL-base64 search term}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/PaidOrganicSearchTermView" + } + ]; + + // Output only. The search term. + optional string search_term = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/parental_status_view.proto b/google/ads/googleads/v9/resources/parental_status_view.proto new file mode 100644 index 000000000..de331f8f3 --- /dev/null +++ b/google/ads/googleads/v9/resources/parental_status_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ParentalStatusViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the parental status view resource. + +// A parental status view. +message ParentalStatusView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ParentalStatusView" + pattern: "customers/{customer_id}/parentalStatusViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the parental status view. + // Parental Status view resource names have the form: + // + // `customers/{customer_id}/parentalStatusViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ParentalStatusView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/payments_account.proto b/google/ads/googleads/v9/resources/payments_account.proto new file mode 100644 index 000000000..a20d481f8 --- /dev/null +++ b/google/ads/googleads/v9/resources/payments_account.proto @@ -0,0 +1,78 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "PaymentsAccountProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the PaymentsAccount resource. + +// A payments account, which can be used to set up billing for an Ads customer. +message PaymentsAccount { + option (google.api.resource) = { + type: "googleads.googleapis.com/PaymentsAccount" + pattern: "customers/{customer_id}/paymentsAccounts/{payments_account_id}" + }; + + // Output only. The resource name of the payments account. + // PaymentsAccount resource names have the form: + // + // `customers/{customer_id}/paymentsAccounts/{payments_account_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/PaymentsAccount" + } + ]; + + // Output only. A 16 digit ID used to identify a payments account. + optional string payments_account_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the payments account. + optional string name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The currency code of the payments account. + // A subset of the currency codes derived from the ISO 4217 standard is + // supported. + optional string currency_code = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A 12 digit ID used to identify the payments profile associated with the + // payments account. + optional string payments_profile_id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A secondary payments profile ID present in uncommon situations, e.g. + // when a sequential liability agreement has been arranged. + optional string secondary_payments_profile_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Paying manager of this payment account. + optional string paying_manager_customer = 13 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/product_bidding_category_constant.proto b/google/ads/googleads/v9/resources/product_bidding_category_constant.proto new file mode 100644 index 000000000..925889008 --- /dev/null +++ b/google/ads/googleads/v9/resources/product_bidding_category_constant.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/product_bidding_category_level.proto"; +import "google/ads/googleads/v9/enums/product_bidding_category_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ProductBiddingCategoryConstantProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ProductBiddingCategoryConstant resource. + +// A Product Bidding Category. +message ProductBiddingCategoryConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/ProductBiddingCategoryConstant" + pattern: "productBiddingCategoryConstants/{country_code}~{level}~{id}" + }; + + // Output only. The resource name of the product bidding category. + // Product bidding category resource names have the form: + // + // `productBiddingCategoryConstants/{country_code}~{level}~{id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ProductBiddingCategoryConstant" + } + ]; + + // Output only. ID of the product bidding category. + // + // This ID is equivalent to the google_product_category ID as described in + // this article: https://support.google.com/merchants/answer/6324436. + optional int64 id = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Two-letter upper-case country code of the product bidding category. + optional string country_code = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Resource name of the parent product bidding category. + optional string product_bidding_category_constant_parent = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ProductBiddingCategoryConstant" + } + ]; + + // Output only. Level of the product bidding category. + google.ads.googleads.v9.enums.ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevel level = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of the product bidding category. + google.ads.googleads.v9.enums.ProductBiddingCategoryStatusEnum.ProductBiddingCategoryStatus status = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Language code of the product bidding category. + optional string language_code = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Display value of the product bidding category localized according to + // language_code. + optional string localized_name = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/product_group_view.proto b/google/ads/googleads/v9/resources/product_group_view.proto new file mode 100644 index 000000000..1ce1ccfa0 --- /dev/null +++ b/google/ads/googleads/v9/resources/product_group_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ProductGroupViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ProductGroup View resource. + +// A product group view. +message ProductGroupView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ProductGroupView" + pattern: "customers/{customer_id}/productGroupViews/{adgroup_id}~{criterion_id}" + }; + + // Output only. The resource name of the product group view. + // Product group view resource names have the form: + // + // `customers/{customer_id}/productGroupViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ProductGroupView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/recommendation.proto b/google/ads/googleads/v9/resources/recommendation.proto new file mode 100644 index 000000000..d426c4e16 --- /dev/null +++ b/google/ads/googleads/v9/resources/recommendation.proto @@ -0,0 +1,350 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/common/extensions.proto"; +import "google/ads/googleads/v9/enums/keyword_match_type.proto"; +import "google/ads/googleads/v9/enums/recommendation_type.proto"; +import "google/ads/googleads/v9/enums/target_cpa_opt_in_recommendation_goal.proto"; +import "google/ads/googleads/v9/resources/ad.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "RecommendationProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Recommendation resource. + +// A recommendation. +message Recommendation { + option (google.api.resource) = { + type: "googleads.googleapis.com/Recommendation" + pattern: "customers/{customer_id}/recommendations/{recommendation_id}" + }; + + // The impact of making the change as described in the recommendation. + // Some types of recommendations may not have impact information. + message RecommendationImpact { + // Output only. Base metrics at the time the recommendation was generated. + RecommendationMetrics base_metrics = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Estimated metrics if the recommendation is applied. + RecommendationMetrics potential_metrics = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Weekly account performance metrics. For some recommendation types, these + // are averaged over the past 90-day period and hence can be fractional. + message RecommendationMetrics { + // Output only. Number of ad impressions. + optional double impressions = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Number of ad clicks. + optional double clicks = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Cost (in micros) for advertising, in the local currency for the account. + optional int64 cost_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Number of conversions. + optional double conversions = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Number of video views for a video ad campaign. + optional double video_views = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The budget recommendation for budget constrained campaigns. + message CampaignBudgetRecommendation { + // The impact estimates for a given budget amount. + message CampaignBudgetRecommendationOption { + // Output only. The budget amount for this option. + optional int64 budget_amount_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The impact estimate if budget is changed to amount specified in this + // option. + RecommendationImpact impact = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. The current budget amount in micros. + optional int64 current_budget_amount_micros = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended budget amount in micros. + optional int64 recommended_budget_amount_micros = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The budget amounts and associated impact estimates for some values of + // possible budget amounts. + repeated CampaignBudgetRecommendationOption budget_options = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The keyword recommendation. + message KeywordRecommendation { + // Output only. The recommended keyword. + google.ads.googleads.v9.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended CPC (cost-per-click) bid. + optional int64 recommended_cpc_bid_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Target ROAS opt-in recommendation. + message TargetRoasOptInRecommendation { + // Output only. The recommended target ROAS (revenue per unit of spend). + // The value is between 0.01 and 1000.0, inclusive. + optional double recommended_target_roas = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The minimum campaign budget, in local currency for the account, + // required to achieve the target ROAS. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + optional int64 required_campaign_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The text ad recommendation. + message TextAdRecommendation { + // Output only. Recommended ad. + Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Creation date of the recommended ad. + // YYYY-MM-DD format, e.g., 2018-04-17. + optional string creation_date = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Date, if present, is the earliest when the recommendation will be auto + // applied. + // YYYY-MM-DD format, e.g., 2018-04-17. + optional string auto_apply_date = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Maximize Clicks opt-in recommendation. + message MaximizeClicksOptInRecommendation { + // Output only. The recommended new budget amount. + // Only set if the current budget is too high. + optional int64 recommended_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Target CPA opt-in recommendation. + message TargetCpaOptInRecommendation { + // The Target CPA opt-in option with impact estimate. + message TargetCpaOptInRecommendationOption { + // Output only. The goal achieved by this option. + google.ads.googleads.v9.enums.TargetCpaOptInRecommendationGoalEnum.TargetCpaOptInRecommendationGoal goal = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Average CPA target. + optional int64 target_cpa_micros = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The minimum campaign budget, in local currency for the account, + // required to achieve the target CPA. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + optional int64 required_campaign_budget_amount_micros = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The impact estimate if this option is selected. + RecommendationImpact impact = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. The available goals and corresponding options for Target CPA strategy. + repeated TargetCpaOptInRecommendationOption options = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended average CPA target. See required budget amount and impact + // of using this recommendation in options list. + optional int64 recommended_target_cpa_micros = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Maximize Conversions Opt-In recommendation. + message MaximizeConversionsOptInRecommendation { + // Output only. The recommended new budget amount. + optional int64 recommended_budget_amount_micros = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Search Partners Opt-In recommendation. + message SearchPartnersOptInRecommendation { + + } + + // The move unused budget recommendation. + message MoveUnusedBudgetRecommendation { + // Output only. The excess budget's resource_name. + optional string excess_campaign_budget = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommendation for the constrained budget to increase. + CampaignBudgetRecommendation budget_recommendation = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Enhanced Cost-Per-Click Opt-In recommendation. + message EnhancedCpcOptInRecommendation { + + } + + // The Optimize Ad Rotation recommendation. + message OptimizeAdRotationRecommendation { + + } + + // The Callout extension recommendation. + message CalloutExtensionRecommendation { + // Output only. Callout extensions recommended to be added. + repeated google.ads.googleads.v9.common.CalloutFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Sitelink extension recommendation. + message SitelinkExtensionRecommendation { + // Output only. Sitelink extensions recommended to be added. + repeated google.ads.googleads.v9.common.SitelinkFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The Call extension recommendation. + message CallExtensionRecommendation { + // Output only. Call extensions recommended to be added. + repeated google.ads.googleads.v9.common.CallFeedItem recommended_extensions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The keyword match type recommendation. + message KeywordMatchTypeRecommendation { + // Output only. The existing keyword where the match type should be more broad. + google.ads.googleads.v9.common.KeywordInfo keyword = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The recommended new match type. + google.ads.googleads.v9.enums.KeywordMatchTypeEnum.KeywordMatchType recommended_match_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The add responsive search ad recommendation. + message ResponsiveSearchAdRecommendation { + // Output only. Recommended ad. + Ad ad = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Immutable. The resource name of the recommendation. + // + // `customers/{customer_id}/recommendations/{recommendation_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Recommendation" + } + ]; + + // Output only. The type of recommendation. + google.ads.googleads.v9.enums.RecommendationTypeEnum.RecommendationType type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The impact on account performance as a result of applying the + // recommendation. + RecommendationImpact impact = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The budget targeted by this recommendation. This will be set only when + // the recommendation affects a single campaign budget. + // + // This field will be set for the following recommendation types: + // CAMPAIGN_BUDGET, FORECASTING_CAMPAIGN_BUDGET, MARGINAL_ROI_CAMPAIGN_BUDGET, + // MOVE_UNUSED_BUDGET + optional string campaign_budget = 24 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBudget" + } + ]; + + // Output only. The campaign targeted by this recommendation. This will be set only when + // the recommendation affects a single campaign. + // + // This field will be set for the following recommendation types: + // CALL_EXTENSION, CALLOUT_EXTENSION, ENHANCED_CPC_OPT_IN, KEYWORD, + // KEYWORD_MATCH_TYPE, MAXIMIZE_CLICKS_OPT_IN, MAXIMIZE_CONVERSIONS_OPT_IN, + // OPTIMIZE_AD_ROTATION, RESPONSIVE_SEARCH_AD, SEARCH_PARTNERS_OPT_IN, + // SITELINK_EXTENSION, TARGET_CPA_OPT_IN, TARGET_ROAS_OPT_IN, TEXT_AD + optional string campaign = 25 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Output only. The ad group targeted by this recommendation. This will be set only when + // the recommendation affects a single ad group. + // + // This field will be set for the following recommendation types: + // KEYWORD, OPTIMIZE_AD_ROTATION, RESPONSIVE_SEARCH_AD, TEXT_AD + optional string ad_group = 26 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. Whether the recommendation is dismissed or not. + optional bool dismissed = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The details of recommendation. + oneof recommendation { + // Output only. The campaign budget recommendation. + CampaignBudgetRecommendation campaign_budget_recommendation = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The forecasting campaign budget recommendation. + CampaignBudgetRecommendation forecasting_campaign_budget_recommendation = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The keyword recommendation. + KeywordRecommendation keyword_recommendation = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Add expanded text ad recommendation. + TextAdRecommendation text_ad_recommendation = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The TargetCPA opt-in recommendation. + TargetCpaOptInRecommendation target_cpa_opt_in_recommendation = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The MaximizeConversions Opt-In recommendation. + MaximizeConversionsOptInRecommendation maximize_conversions_opt_in_recommendation = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Enhanced Cost-Per-Click Opt-In recommendation. + EnhancedCpcOptInRecommendation enhanced_cpc_opt_in_recommendation = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Search Partners Opt-In recommendation. + SearchPartnersOptInRecommendation search_partners_opt_in_recommendation = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The MaximizeClicks Opt-In recommendation. + MaximizeClicksOptInRecommendation maximize_clicks_opt_in_recommendation = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Optimize Ad Rotation recommendation. + OptimizeAdRotationRecommendation optimize_ad_rotation_recommendation = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Callout extension recommendation. + CalloutExtensionRecommendation callout_extension_recommendation = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Sitelink extension recommendation. + SitelinkExtensionRecommendation sitelink_extension_recommendation = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Call extension recommendation. + CallExtensionRecommendation call_extension_recommendation = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The keyword match type recommendation. + KeywordMatchTypeRecommendation keyword_match_type_recommendation = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The move unused budget recommendation. + MoveUnusedBudgetRecommendation move_unused_budget_recommendation = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Target ROAS opt-in recommendation. + TargetRoasOptInRecommendation target_roas_opt_in_recommendation = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The add responsive search ad recommendation. + ResponsiveSearchAdRecommendation responsive_search_ad_recommendation = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The marginal ROI campaign budget recommendation. + CampaignBudgetRecommendation marginal_roi_campaign_budget_recommendation = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; + } +} diff --git a/google/ads/googleads/v9/resources/remarketing_action.proto b/google/ads/googleads/v9/resources/remarketing_action.proto new file mode 100644 index 000000000..9ba66f5a0 --- /dev/null +++ b/google/ads/googleads/v9/resources/remarketing_action.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/tag_snippet.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "RemarketingActionProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Remarketing Action resource. + +// A remarketing action. A snippet of JavaScript code that will collect the +// product id and the type of page people visited (product page, shopping cart +// page, purchase page, general site visit) on an advertiser's website. +message RemarketingAction { + option (google.api.resource) = { + type: "googleads.googleapis.com/RemarketingAction" + pattern: "customers/{customer_id}/remarketingActions/{remarketing_action_id}" + }; + + // Immutable. The resource name of the remarketing action. + // Remarketing action resource names have the form: + // + // `customers/{customer_id}/remarketingActions/{remarketing_action_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/RemarketingAction" + } + ]; + + // Output only. Id of the remarketing action. + optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The name of the remarketing action. + // + // This field is required and should not be empty when creating new + // remarketing actions. + optional string name = 6; + + // Output only. The snippets used for tracking remarketing actions. + repeated google.ads.googleads.v9.common.TagSnippet tag_snippets = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/search_term_view.proto b/google/ads/googleads/v9/resources/search_term_view.proto new file mode 100644 index 000000000..207854250 --- /dev/null +++ b/google/ads/googleads/v9/resources/search_term_view.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/search_term_targeting_status.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SearchTermViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the SearchTermView resource. + +// A search term view with metrics aggregated by search term at the ad group +// level. +message SearchTermView { + option (google.api.resource) = { + type: "googleads.googleapis.com/SearchTermView" + pattern: "customers/{customer_id}/searchTermViews/{campaign_id}~{ad_group_id}~{query}" + }; + + // Output only. The resource name of the search term view. + // Search term view resource names have the form: + // + // `customers/{customer_id}/searchTermViews/{campaign_id}~{ad_group_id}~{URL-base64_search_term}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SearchTermView" + } + ]; + + // Output only. The search term. + optional string search_term = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ad group the search term served in. + optional string ad_group = 6 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; + + // Output only. Indicates whether the search term is currently one of your + // targeted or excluded keywords. + google.ads.googleads.v9.enums.SearchTermTargetingStatusEnum.SearchTermTargetingStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/shared_criterion.proto b/google/ads/googleads/v9/resources/shared_criterion.proto new file mode 100644 index 000000000..24e999d4f --- /dev/null +++ b/google/ads/googleads/v9/resources/shared_criterion.proto @@ -0,0 +1,92 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/enums/criterion_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SharedCriterionProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the SharedCriterion resource. + +// A criterion belonging to a shared set. +message SharedCriterion { + option (google.api.resource) = { + type: "googleads.googleapis.com/SharedCriterion" + pattern: "customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}" + }; + + // Immutable. The resource name of the shared criterion. + // Shared set resource names have the form: + // + // `customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedCriterion" + } + ]; + + // Immutable. The shared set to which the shared criterion belongs. + optional string shared_set = 10 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedSet" + } + ]; + + // Output only. The ID of the criterion. + // + // This field is ignored for mutates. + optional int64 criterion_id = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The type of the criterion. + google.ads.googleads.v9.enums.CriterionTypeEnum.CriterionType type = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The criterion. + // + // Exactly one must be set. + oneof criterion { + // Immutable. Keyword. + google.ads.googleads.v9.common.KeywordInfo keyword = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Video. + google.ads.googleads.v9.common.YouTubeVideoInfo youtube_video = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. YouTube Channel. + google.ads.googleads.v9.common.YouTubeChannelInfo youtube_channel = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Placement. + google.ads.googleads.v9.common.PlacementInfo placement = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile App Category. + google.ads.googleads.v9.common.MobileAppCategoryInfo mobile_app_category = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Mobile application. + google.ads.googleads.v9.common.MobileApplicationInfo mobile_application = 9 [(google.api.field_behavior) = IMMUTABLE]; + } +} diff --git a/google/ads/googleads/v9/resources/shared_set.proto b/google/ads/googleads/v9/resources/shared_set.proto new file mode 100644 index 000000000..9e73ff713 --- /dev/null +++ b/google/ads/googleads/v9/resources/shared_set.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/enums/shared_set_status.proto"; +import "google/ads/googleads/v9/enums/shared_set_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SharedSetProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the SharedSet resource. + +// SharedSets are used for sharing criterion exclusions across multiple +// campaigns. +message SharedSet { + option (google.api.resource) = { + type: "googleads.googleapis.com/SharedSet" + pattern: "customers/{customer_id}/sharedSets/{shared_set_id}" + }; + + // Immutable. The resource name of the shared set. + // Shared set resource names have the form: + // + // `customers/{customer_id}/sharedSets/{shared_set_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedSet" + } + ]; + + // Output only. The ID of this shared set. Read only. + optional int64 id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The type of this shared set: each shared set holds only a single kind + // of resource. Required. Immutable. + google.ads.googleads.v9.enums.SharedSetTypeEnum.SharedSetType type = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // The name of this shared set. Required. + // Shared Sets must have names that are unique among active shared sets of + // the same type. + // The length of this string should be between 1 and 255 UTF-8 bytes, + // inclusive. + optional string name = 9; + + // Output only. The status of this shared set. Read only. + google.ads.googleads.v9.enums.SharedSetStatusEnum.SharedSetStatus status = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of shared criteria within this shared set. Read only. + optional int64 member_count = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of campaigns associated with this shared set. Read only. + optional int64 reference_count = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/shopping_performance_view.proto b/google/ads/googleads/v9/resources/shopping_performance_view.proto new file mode 100644 index 000000000..b2d741fc3 --- /dev/null +++ b/google/ads/googleads/v9/resources/shopping_performance_view.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ShoppingPerformanceViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the ShoppingPerformanceView resource. + +// Shopping performance view. +// Provides Shopping campaign statistics aggregated at several product dimension +// levels. Product dimension values from Merchant Center such as brand, +// category, custom attributes, product condition and product type will reflect +// the state of each dimension as of the date and time when the corresponding +// event was recorded. +message ShoppingPerformanceView { + option (google.api.resource) = { + type: "googleads.googleapis.com/ShoppingPerformanceView" + pattern: "customers/{customer_id}/shoppingPerformanceView" + }; + + // Output only. The resource name of the Shopping performance view. + // Shopping performance view resource names have the form: + // `customers/{customer_id}/shoppingPerformanceView` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ShoppingPerformanceView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/smart_campaign_search_term_view.proto b/google/ads/googleads/v9/resources/smart_campaign_search_term_view.proto new file mode 100644 index 000000000..9e1cf544e --- /dev/null +++ b/google/ads/googleads/v9/resources/smart_campaign_search_term_view.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SmartCampaignSearchTermViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the SmartCampaignSearchTermView resource. + +// A Smart campaign search term view. +message SmartCampaignSearchTermView { + option (google.api.resource) = { + type: "googleads.googleapis.com/SmartCampaignSearchTermView" + pattern: "customers/{customer_id}/smartCampaignSearchTermViews/{campaign_id}~{query}" + }; + + // Output only. The resource name of the Smart campaign search term view. + // Smart campaign search term view resource names have the form: + // + // `customers/{customer_id}/smartCampaignSearchTermViews/{campaign_id}~{URL-base64_search_term}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SmartCampaignSearchTermView" + } + ]; + + // Output only. The search term. + string search_term = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The Smart campaign the search term served in. + string campaign = 3 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/smart_campaign_setting.proto b/google/ads/googleads/v9/resources/smart_campaign_setting.proto new file mode 100644 index 000000000..293c7cefd --- /dev/null +++ b/google/ads/googleads/v9/resources/smart_campaign_setting.proto @@ -0,0 +1,91 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "SmartCampaignSettingProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Smart campaign setting resource. + +// Settings for configuring Smart campaigns. +message SmartCampaignSetting { + option (google.api.resource) = { + type: "googleads.googleapis.com/SmartCampaignSetting" + pattern: "customers/{customer_id}/smartCampaignSettings/{campaign_id}" + }; + + // Phone number and country code in smart campaign settings. + message PhoneNumber { + // Phone number of the smart campaign. + optional string phone_number = 1; + + // Upper-case, two-letter country code as defined by ISO-3166. + optional string country_code = 2; + } + + // Immutable. The resource name of the Smart campaign setting. + // Smart campaign setting resource names have the form: + // + // `customers/{customer_id}/smartCampaignSettings/{campaign_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SmartCampaignSetting" + } + ]; + + // Output only. The campaign to which these settings apply. + string campaign = 2 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Phone number and country code. + PhoneNumber phone_number = 3; + + // Landing page url given by user for this Campaign. + string final_url = 4; + + // The ISO-639-1 language code to advertise in. + string advertising_language_code = 7; + + // The business setting of this campaign. + oneof business_setting { + // The name of the business. + string business_name = 5; + + // The ID of the Business Profile location. + // The location ID can be fetched by Business Profile API with its form: + // accounts/{accountId}/locations/{locationId}. The last {locationId} + // component from the Business Profile API represents the + // business_location_id. See the [Business Profile API] + // (https://developers.google.com/my-business/reference/rest/v4/accounts.locations) + int64 business_location_id = 6; + } +} diff --git a/google/ads/googleads/v9/resources/third_party_app_analytics_link.proto b/google/ads/googleads/v9/resources/third_party_app_analytics_link.proto new file mode 100644 index 000000000..2aa49b91c --- /dev/null +++ b/google/ads/googleads/v9/resources/third_party_app_analytics_link.proto @@ -0,0 +1,55 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "ThirdPartyAppAnalyticsLinkProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// A data sharing connection, allowing the import of third party app analytics +// into a Google Ads Customer. +message ThirdPartyAppAnalyticsLink { + option (google.api.resource) = { + type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" + pattern: "customers/{customer_id}/thirdPartyAppAnalyticsLinks/{customer_link_id}" + }; + + // Immutable. The resource name of the third party app analytics link. + // Third party app analytics link resource names have the form: + // + // `customers/{customer_id}/thirdPartyAppAnalyticsLinks/{account_link_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" + } + ]; + + // Output only. The shareable link ID that should be provided to the third party when + // setting up app analytics. This is able to be regenerated using regenerate + // method in the ThirdPartyAppAnalyticsLinkService. + optional string shareable_link_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/topic_constant.proto b/google/ads/googleads/v9/resources/topic_constant.proto new file mode 100644 index 000000000..3cd6f64e0 --- /dev/null +++ b/google/ads/googleads/v9/resources/topic_constant.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "TopicConstantProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the Topic Constant resource. + +// Use topics to target or exclude placements in the Google Display Network +// based on the category into which the placement falls (for example, +// "Pets & Animals/Pets/Dogs"). +message TopicConstant { + option (google.api.resource) = { + type: "googleads.googleapis.com/TopicConstant" + pattern: "topicConstants/{topic_id}" + }; + + // Output only. The resource name of the topic constant. + // topic constant resource names have the form: + // + // `topicConstants/{topic_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/TopicConstant" + } + ]; + + // Output only. The ID of the topic. + optional int64 id = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Resource name of parent of the topic constant. + optional string topic_constant_parent = 6 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/TopicConstant" + } + ]; + + // Output only. The category to target or exclude. Each subsequent element in the array + // describes a more specific sub-category. For example, + // {"Pets & Animals", "Pets", "Dogs"} represents the + // "Pets & Animals/Pets/Dogs" category. List of available topic categories at + // https://developers.google.com/adwords/api/docs/appendix/verticals + repeated string path = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/topic_view.proto b/google/ads/googleads/v9/resources/topic_view.proto new file mode 100644 index 000000000..8040a3d0f --- /dev/null +++ b/google/ads/googleads/v9/resources/topic_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "TopicViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the topic view resource. + +// A topic view. +message TopicView { + option (google.api.resource) = { + type: "googleads.googleapis.com/TopicView" + pattern: "customers/{customer_id}/topicViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the topic view. + // Topic view resource names have the form: + // + // `customers/{customer_id}/topicViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/TopicView" + } + ]; +} diff --git a/google/ads/googleads/v9/resources/user_interest.proto b/google/ads/googleads/v9/resources/user_interest.proto new file mode 100644 index 000000000..345a0e16e --- /dev/null +++ b/google/ads/googleads/v9/resources/user_interest.proto @@ -0,0 +1,76 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/criterion_category_availability.proto"; +import "google/ads/googleads/v9/enums/user_interest_taxonomy_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "UserInterestProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the User Interest resource. + +// A user interest: a particular interest-based vertical to be targeted. +message UserInterest { + option (google.api.resource) = { + type: "googleads.googleapis.com/UserInterest" + pattern: "customers/{customer_id}/userInterests/{user_interest_id}" + }; + + // Output only. The resource name of the user interest. + // User interest resource names have the form: + // + // `customers/{customer_id}/userInterests/{user_interest_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserInterest" + } + ]; + + // Output only. Taxonomy type of the user interest. + google.ads.googleads.v9.enums.UserInterestTaxonomyTypeEnum.UserInterestTaxonomyType taxonomy_type = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The ID of the user interest. + optional int64 user_interest_id = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the user interest. + optional string name = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The parent of the user interest. + optional string user_interest_parent = 10 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserInterest" + } + ]; + + // Output only. True if the user interest is launched to all channels and locales. + optional bool launched_to_all = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Availability information of the user interest. + repeated google.ads.googleads.v9.common.CriterionCategoryAvailability availabilities = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/user_list.proto b/google/ads/googleads/v9/resources/user_list.proto new file mode 100644 index 000000000..f479d053d --- /dev/null +++ b/google/ads/googleads/v9/resources/user_list.proto @@ -0,0 +1,174 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/ads/googleads/v9/common/user_lists.proto"; +import "google/ads/googleads/v9/enums/access_reason.proto"; +import "google/ads/googleads/v9/enums/user_list_access_status.proto"; +import "google/ads/googleads/v9/enums/user_list_closing_reason.proto"; +import "google/ads/googleads/v9/enums/user_list_membership_status.proto"; +import "google/ads/googleads/v9/enums/user_list_size_range.proto"; +import "google/ads/googleads/v9/enums/user_list_type.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "UserListProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the User List resource. + +// A user list. This is a list of users a customer may target. +message UserList { + option (google.api.resource) = { + type: "googleads.googleapis.com/UserList" + pattern: "customers/{customer_id}/userLists/{user_list_id}" + }; + + // Immutable. The resource name of the user list. + // User list resource names have the form: + // + // `customers/{customer_id}/userLists/{user_list_id}` + string resource_name = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserList" + } + ]; + + // Output only. Id of the user list. + optional int64 id = 25 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A flag that indicates if a user may edit a list. Depends on the list + // ownership and list type. For example, external remarketing user lists are + // not editable. + // + // This field is read-only. + optional bool read_only = 26 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Name of this user list. Depending on its access_reason, the user list name + // may not be unique (e.g. if access_reason=SHARED) + optional string name = 27; + + // Description of this user list. + optional string description = 28; + + // Membership status of this user list. Indicates whether a user list is open + // or active. Only open user lists can accumulate more users and can be + // targeted to. + google.ads.googleads.v9.enums.UserListMembershipStatusEnum.UserListMembershipStatus membership_status = 6; + + // An ID from external system. It is used by user list sellers to correlate + // IDs on their systems. + optional string integration_code = 29; + + // Number of days a user's cookie stays on your list since its most recent + // addition to the list. This field must be between 0 and 540 inclusive. + // However, for CRM based userlists, this field can be set to 10000 which + // means no expiration. + // + // It'll be ignored for logical_user_list. + optional int64 membership_life_span = 30; + + // Output only. Estimated number of users in this user list, on the Google Display Network. + // This value is null if the number of users has not yet been determined. + // + // This field is read-only. + optional int64 size_for_display = 31 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Size range in terms of number of users of the UserList, on the Google + // Display Network. + // + // This field is read-only. + google.ads.googleads.v9.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_display = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Estimated number of users in this user list in the google.com domain. + // These are the users available for targeting in Search campaigns. + // This value is null if the number of users has not yet been determined. + // + // This field is read-only. + optional int64 size_for_search = 32 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Size range in terms of number of users of the UserList, for Search ads. + // + // This field is read-only. + google.ads.googleads.v9.enums.UserListSizeRangeEnum.UserListSizeRange size_range_for_search = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Type of this list. + // + // This field is read-only. + google.ads.googleads.v9.enums.UserListTypeEnum.UserListType type = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Indicating the reason why this user list membership status is closed. It is + // only populated on lists that were automatically closed due to inactivity, + // and will be cleared once the list membership status becomes open. + google.ads.googleads.v9.enums.UserListClosingReasonEnum.UserListClosingReason closing_reason = 14; + + // Output only. Indicates the reason this account has been granted access to the list. + // The reason can be SHARED, OWNED, LICENSED or SUBSCRIBED. + // + // This field is read-only. + google.ads.googleads.v9.enums.AccessReasonEnum.AccessReason access_reason = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Indicates if this share is still enabled. When a UserList is shared with + // the user this field is set to ENABLED. Later the userList owner can decide + // to revoke the share and make it DISABLED. + // The default value of this field is set to ENABLED. + google.ads.googleads.v9.enums.UserListAccessStatusEnum.UserListAccessStatus account_user_list_status = 16; + + // Indicates if this user list is eligible for Google Search Network. + optional bool eligible_for_search = 33; + + // Output only. Indicates this user list is eligible for Google Display Network. + // + // This field is read-only. + optional bool eligible_for_display = 34 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Indicates match rate for Customer Match lists. The range of this field is + // [0-100]. This will be null for other list types or when it's not possible + // to calculate the match rate. + // + // This field is read-only. + optional int32 match_rate_percentage = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The user list. + // + // Exactly one must be set. + oneof user_list { + // User list of CRM users provided by the advertiser. + google.ads.googleads.v9.common.CrmBasedUserListInfo crm_based_user_list = 19; + + // Output only. User list which are similar to users from another UserList. + // These lists are readonly and automatically created by google. + google.ads.googleads.v9.common.SimilarUserListInfo similar_user_list = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // User list generated by a rule. + google.ads.googleads.v9.common.RuleBasedUserListInfo rule_based_user_list = 21; + + // User list that is a custom combination of user lists and user interests. + google.ads.googleads.v9.common.LogicalUserListInfo logical_user_list = 22; + + // User list targeting as a collection of conversion or remarketing actions. + google.ads.googleads.v9.common.BasicUserListInfo basic_user_list = 23; + } +} diff --git a/google/ads/googleads/v9/resources/user_location_view.proto b/google/ads/googleads/v9/resources/user_location_view.proto new file mode 100644 index 000000000..496c4a98a --- /dev/null +++ b/google/ads/googleads/v9/resources/user_location_view.proto @@ -0,0 +1,62 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "UserLocationViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the user location view resource. + +// A user location view. +// +// User Location View includes all metrics aggregated at the country level, +// one row per country. It reports metrics at the actual physical location of +// the user by targeted or not targeted location. If other segment fields are +// used, you may get more than one row per country. +message UserLocationView { + option (google.api.resource) = { + type: "googleads.googleapis.com/UserLocationView" + pattern: "customers/{customer_id}/userLocationViews/{country_criterion_id}~{is_targeting_location}" + }; + + // Output only. The resource name of the user location view. + // UserLocation view resource names have the form: + // + // `customers/{customer_id}/userLocationViews/{country_criterion_id}~{targeting_location}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserLocationView" + } + ]; + + // Output only. Criterion Id for the country. + optional int64 country_criterion_id = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Indicates whether location was targeted or not. + optional bool targeting_location = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/video.proto b/google/ads/googleads/v9/resources/video.proto new file mode 100644 index 000000000..3078b6d4b --- /dev/null +++ b/google/ads/googleads/v9/resources/video.proto @@ -0,0 +1,63 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "VideoProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the video resource. + +// A video. +message Video { + option (google.api.resource) = { + type: "googleads.googleapis.com/Video" + pattern: "customers/{customer_id}/videos/{video_id}" + }; + + // Output only. The resource name of the video. + // Video resource names have the form: + // + // `customers/{customer_id}/videos/{video_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Video" + } + ]; + + // Output only. The ID of the video. + optional string id = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The owner channel id of the video. + optional string channel_id = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The duration of the video in milliseconds. + optional int64 duration_millis = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The title of the video. + optional string title = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/ads/googleads/v9/resources/webpage_view.proto b/google/ads/googleads/v9/resources/webpage_view.proto new file mode 100644 index 000000000..8bea57f30 --- /dev/null +++ b/google/ads/googleads/v9/resources/webpage_view.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.resources; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Resources"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/resources;resources"; +option java_multiple_files = true; +option java_outer_classname = "WebpageViewProto"; +option java_package = "com.google.ads.googleads.v9.resources"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Resources"; +option ruby_package = "Google::Ads::GoogleAds::V9::Resources"; + +// Proto file describing the webpage view resource. + +// A webpage view. +message WebpageView { + option (google.api.resource) = { + type: "googleads.googleapis.com/WebpageView" + pattern: "customers/{customer_id}/webpageViews/{ad_group_id}~{criterion_id}" + }; + + // Output only. The resource name of the webpage view. + // Webpage view resource names have the form: + // + // `customers/{customer_id}/webpageViews/{ad_group_id}~{criterion_id}` + string resource_name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/WebpageView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/BUILD.bazel b/google/ads/googleads/v9/services/BUILD.bazel new file mode 100644 index 000000000..7640aac7d --- /dev/null +++ b/google/ads/googleads/v9/services/BUILD.bazel @@ -0,0 +1,138 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +# TODO(ohren): Change srcs to use an enumeration of each individual proto +# instead of *.proto globbing once the build file generator supports +# subpackages. +proto_library( + name = "services_proto", + srcs = glob(["*.proto"]), + deps = [ + "//google/ads/googleads/v9/common:common_proto", + "//google/ads/googleads/v9/enums:enums_proto", + "//google/ads/googleads/v9/errors:errors_proto", + "//google/ads/googleads/v9/resources:resources_proto", + "//google/api:annotations_proto", + "//google/api:client_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "//google/longrunning:operations_proto", + "//google/rpc:status_proto", + "@com_google_protobuf//:empty_proto", + "@com_google_protobuf//:field_mask_proto", + "@com_google_protobuf//:wrappers_proto", + ], +) + +proto_library_with_info( + name = "services_proto_with_info", + deps = [ + ":services_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "services_java_proto", + deps = [":services_proto"], +) + +java_grpc_library( + name = "services_java_grpc", + srcs = [":services_proto"], + deps = [":services_java_proto"], +) + +############################################################################## +# PHP +############################################################################## + +# PHP targets are in the parent directory's BUILD.bazel file to facilitate +# aggregating metadata using a single underlying call to protoc. + +############################################################################## +# C# +############################################################################## +load( + "@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "services_csharp_proto", + deps = [":services_proto"], +) + +csharp_grpc_library( + name = "services_csharp_grpc", + srcs = [":services_proto"], + deps = [":services_csharp_proto"], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "services_ruby_proto", + deps = [":services_proto"], +) + +ruby_grpc_library( + name = "services_ruby_grpc", + srcs = [":services_proto"], + deps = [":services_ruby_proto"], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_grpc_library", + "py_proto_library", +) + +py_proto_library( + name = "services_py_proto", + deps = [":services_proto"], +) + +py_grpc_library( + name = "services_py_grpc", + srcs = [":services_proto"], + deps = [":services_py_proto"], +) diff --git a/google/ads/googleads/v9/services/accessible_bidding_strategy_service.proto b/google/ads/googleads/v9/services/accessible_bidding_strategy_service.proto new file mode 100644 index 000000000..dd8a77055 --- /dev/null +++ b/google/ads/googleads/v9/services/accessible_bidding_strategy_service.proto @@ -0,0 +1,58 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/accessible_bidding_strategy.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AccessibleBiddingStrategyServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Service to read accessible bidding strategies. +service AccessibleBiddingStrategyService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested accessible bidding strategy in full detail. + rpc GetAccessibleBiddingStrategy(GetAccessibleBiddingStrategyRequest) returns (google.ads.googleads.v9.resources.AccessibleBiddingStrategy) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/accessibleBiddingStrategies/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [AccessibleBiddingStrategyService.GetAccessibleBiddingStrategy][google.ads.googleads.v9.services.AccessibleBiddingStrategyService.GetAccessibleBiddingStrategy]. +message GetAccessibleBiddingStrategyRequest { + // Required. The resource name of the accessible bidding strategy to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccessibleBiddingStrategy" + } + ]; +} diff --git a/google/ads/googleads/v9/services/account_budget_proposal_service.proto b/google/ads/googleads/v9/services/account_budget_proposal_service.proto new file mode 100644 index 000000000..4252e7bbf --- /dev/null +++ b/google/ads/googleads/v9/services/account_budget_proposal_service.proto @@ -0,0 +1,161 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/account_budget_proposal.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetProposalServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AccountBudgetProposal service. + +// A service for managing account-level budgets via proposals. +// +// A proposal is a request to create a new budget or make changes to an +// existing one. +// +// Reads for account-level budgets managed by these proposals will be +// supported in a future version. Until then, please use the +// BudgetOrderService from the AdWords API. Learn more at +// https://developers.google.com/adwords/api/docs/guides/budget-order +// +// Mutates: +// The CREATE operation creates a new proposal. +// UPDATE operations aren't supported. +// The REMOVE operation cancels a pending proposal. +service AccountBudgetProposalService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns an account-level budget proposal in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAccountBudgetProposal(GetAccountBudgetProposalRequest) returns (google.ads.googleads.v9.resources.AccountBudgetProposal) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/accountBudgetProposals/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes account budget proposals. Operation statuses + // are returned. + // + // List of thrown errors: + // [AccountBudgetProposalError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [DateError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + // [StringLengthError]() + rpc MutateAccountBudgetProposal(MutateAccountBudgetProposalRequest) returns (MutateAccountBudgetProposalResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/accountBudgetProposals:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for +// [AccountBudgetProposalService.GetAccountBudgetProposal][google.ads.googleads.v9.services.AccountBudgetProposalService.GetAccountBudgetProposal]. +message GetAccountBudgetProposalRequest { + // Required. The resource name of the account-level budget proposal to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudgetProposal" + } + ]; +} + +// Request message for +// [AccountBudgetProposalService.MutateAccountBudgetProposal][google.ads.googleads.v9.services.AccountBudgetProposalService.MutateAccountBudgetProposal]. +message MutateAccountBudgetProposalRequest { + // Required. The ID of the customer. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on an individual account-level budget proposal. + AccountBudgetProposalOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single operation to propose the creation of a new account-level budget or +// edit/end/remove an existing one. +message AccountBudgetProposalOperation { + // FieldMask that determines which budget fields are modified. While budgets + // may be modified, proposals that propose such modifications are final. + // Therefore, update operations are not supported for proposals. + // + // Proposals that modify budgets have the 'update' proposal type. Specifying + // a mask for any other proposal type is considered an error. + google.protobuf.FieldMask update_mask = 3; + + // The mutate operation. + oneof operation { + // Create operation: A new proposal to create a new budget, edit an + // existing budget, end an actively running budget, or remove an approved + // budget scheduled to start in the future. + // No resource name is expected for the new proposal. + google.ads.googleads.v9.resources.AccountBudgetProposal create = 2; + + // Remove operation: A resource name for the removed proposal is expected, + // in this format: + // + // `customers/{customer_id}/accountBudgetProposals/{account_budget_proposal_id}` + // A request may be cancelled iff it is pending. + string remove = 1; + } +} + +// Response message for account-level budget mutate operations. +message MutateAccountBudgetProposalResponse { + // The result of the mutate. + MutateAccountBudgetProposalResult result = 2; +} + +// The result for the account budget proposal mutate. +message MutateAccountBudgetProposalResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/account_budget_service.proto b/google/ads/googleads/v9/services/account_budget_service.proto new file mode 100644 index 000000000..bd8808101 --- /dev/null +++ b/google/ads/googleads/v9/services/account_budget_service.proto @@ -0,0 +1,70 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/account_budget.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AccountBudgetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AccountBudget service. + +// A service for fetching an account-level budget. +// +// Account-level budgets are mutated by creating proposal resources. +service AccountBudgetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns an account-level budget in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAccountBudget(GetAccountBudgetRequest) returns (google.ads.googleads.v9.resources.AccountBudget) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/accountBudgets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [AccountBudgetService.GetAccountBudget][google.ads.googleads.v9.services.AccountBudgetService.GetAccountBudget]. +message GetAccountBudgetRequest { + // Required. The resource name of the account-level budget to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountBudget" + } + ]; +} diff --git a/google/ads/googleads/v9/services/account_link_service.proto b/google/ads/googleads/v9/services/account_link_service.proto new file mode 100644 index 000000000..5ffabd9d9 --- /dev/null +++ b/google/ads/googleads/v9/services/account_link_service.proto @@ -0,0 +1,185 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/account_link.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AccountLinkServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// This service allows management of links between Google Ads accounts and other +// accounts. +service AccountLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the account link in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAccountLink(GetAccountLinkRequest) returns (google.ads.googleads.v9.resources.AccountLink) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/accountLinks/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates an account link. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + // [ThirdPartyAppAnalyticsLinkError]() + rpc CreateAccountLink(CreateAccountLinkRequest) returns (CreateAccountLinkResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/accountLinks:create" + body: "*" + }; + option (google.api.method_signature) = "customer_id,account_link"; + } + + // Creates or removes an account link. + // From V5, create is not supported through + // AccountLinkService.MutateAccountLink. Please use + // AccountLinkService.CreateAccountLink instead. + // + // List of thrown errors: + // [AccountLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAccountLink(MutateAccountLinkRequest) returns (MutateAccountLinkResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/accountLinks:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for [AccountLinkService.GetAccountLink][google.ads.googleads.v9.services.AccountLinkService.GetAccountLink]. +message GetAccountLinkRequest { + // Required. Resource name of the account link. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AccountLink" + } + ]; +} + +// Request message for +// [AccountLinkService.CreateAccountLink][google.ads.googleads.v9.services.AccountLinkService.CreateAccountLink]. +message CreateAccountLinkRequest { + // Required. The ID of the customer for which the account link is created. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The account link to be created. + google.ads.googleads.v9.resources.AccountLink account_link = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for +// [AccountLinkService.CreateAccountLink][google.ads.googleads.v9.services.AccountLinkService.CreateAccountLink]. +message CreateAccountLinkResponse { + // Returned for successful operations. Resource name of the account link. + string resource_name = 1; +} + +// Request message for [AccountLinkService.MutateAccountLink][google.ads.googleads.v9.services.AccountLinkService.MutateAccountLink]. +message MutateAccountLinkRequest { + // Required. The ID of the customer being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the link. + AccountLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single update on an account link. +message AccountLinkOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The operation to perform. + oneof operation { + // Update operation: The account link is expected to have + // a valid resource name. + google.ads.googleads.v9.resources.AccountLink update = 2; + + // Remove operation: A resource name for the account link to remove is + // expected, in this format: + // + // `customers/{customer_id}/accountLinks/{account_link_id}` + string remove = 3; + } +} + +// Response message for account link mutate. +message MutateAccountLinkResponse { + // Result for the mutate. + MutateAccountLinkResult result = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the account link mutate. +message MutateAccountLinkResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/ad_group_ad_asset_view_service.proto b/google/ads/googleads/v9/services/ad_group_ad_asset_view_service.proto new file mode 100644 index 000000000..0f1b263cc --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_ad_asset_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/ad_group_ad_asset_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdAssetViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the ad group ad asset view service. + +// Service to fetch ad group ad asset views. +service AdGroupAdAssetViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group ad asset view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupAdAssetView(GetAdGroupAdAssetViewRequest) returns (google.ads.googleads.v9.resources.AdGroupAdAssetView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupAdAssetViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AdGroupAdAssetViewService.GetAdGroupAdAssetView][google.ads.googleads.v9.services.AdGroupAdAssetViewService.GetAdGroupAdAssetView]. +message GetAdGroupAdAssetViewRequest { + // Required. The resource name of the ad group ad asset view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAdAssetView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/ad_group_ad_label_service.proto b/google/ads/googleads/v9/services/ad_group_ad_label_service.proto new file mode 100644 index 000000000..d19ecd960 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_ad_label_service.proto @@ -0,0 +1,144 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/ad_group_ad_label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdLabelServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Ad Group Ad Label service. + +// Service to manage labels on ad group ads. +service AdGroupAdLabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group ad label in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupAdLabel(GetAdGroupAdLabelRequest) returns (google.ads.googleads.v9.resources.AdGroupAdLabel) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupAdLabels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates and removes ad group ad labels. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [HeaderError]() + // [InternalError]() + // [LabelError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAdGroupAdLabels(MutateAdGroupAdLabelsRequest) returns (MutateAdGroupAdLabelsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adGroupAdLabels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupAdLabelService.GetAdGroupAdLabel][google.ads.googleads.v9.services.AdGroupAdLabelService.GetAdGroupAdLabel]. +message GetAdGroupAdLabelRequest { + // Required. The resource name of the ad group ad label to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAdLabel" + } + ]; +} + +// Request message for [AdGroupAdLabelService.MutateAdGroupAdLabels][google.ads.googleads.v9.services.AdGroupAdLabelService.MutateAdGroupAdLabels]. +message MutateAdGroupAdLabelsRequest { + // Required. ID of the customer whose ad group ad labels are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on ad group ad labels. + repeated AdGroupAdLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on an ad group ad label. +message AdGroupAdLabelOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group ad + // label. + google.ads.googleads.v9.resources.AdGroupAdLabel create = 1; + + // Remove operation: A resource name for the ad group ad label + // being removed, in this format: + // + // `customers/{customer_id}/adGroupAdLabels/{ad_group_id}~{ad_id} + // _{label_id}` + string remove = 2; + } +} + +// Response message for an ad group ad labels mutate. +message MutateAdGroupAdLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupAdLabelResult results = 2; +} + +// The result for an ad group ad label mutate. +message MutateAdGroupAdLabelResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/ad_group_ad_service.proto b/google/ads/googleads/v9/services/ad_group_ad_service.proto new file mode 100644 index 000000000..c3b2ff9e0 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_ad_service.proto @@ -0,0 +1,195 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/policy.proto"; +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/ad_group_ad.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAdServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Ad Group Ad service. + +// Service to manage ads in an ad group. +service AdGroupAdService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupAd(GetAdGroupAdRequest) returns (google.ads.googleads.v9.resources.AdGroupAd) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupAds/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ads. Operation statuses are returned. + // + // List of thrown errors: + // [AdCustomizerError]() + // [AdError]() + // [AdGroupAdError]() + // [AdSharingError]() + // [AdxError]() + // [AssetError]() + // [AssetLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [ContextError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FeedAttributeReferenceError]() + // [FieldError]() + // [FieldMaskError]() + // [FunctionError]() + // [FunctionParsingError]() + // [HeaderError]() + // [IdError]() + // [ImageError]() + // [InternalError]() + // [ListOperationError]() + // [MediaBundleError]() + // [MediaFileError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [PolicyFindingError]() + // [PolicyValidationParameterError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateAdGroupAds(MutateAdGroupAdsRequest) returns (MutateAdGroupAdsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adGroupAds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupAdService.GetAdGroupAd][google.ads.googleads.v9.services.AdGroupAdService.GetAdGroupAd]. +message GetAdGroupAdRequest { + // Required. The resource name of the ad to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAd" + } + ]; +} + +// Request message for [AdGroupAdService.MutateAdGroupAds][google.ads.googleads.v9.services.AdGroupAdService.MutateAdGroupAds]. +message MutateAdGroupAdsRequest { + // Required. The ID of the customer whose ads are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ads. + repeated AdGroupAdOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an ad group ad. +message AdGroupAdOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // Configuration for how policies are validated. + google.ads.googleads.v9.common.PolicyValidationParameter policy_validation_parameter = 5; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad. + google.ads.googleads.v9.resources.AdGroupAd create = 1; + + // Update operation: The ad is expected to have a valid resource name. + google.ads.googleads.v9.resources.AdGroupAd update = 2; + + // Remove operation: A resource name for the removed ad is expected, + // in this format: + // + // `customers/{customer_id}/adGroupAds/{ad_group_id}~{ad_id}` + string remove = 3; + } +} + +// Response message for an ad group ad mutate. +message MutateAdGroupAdsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupAdResult results = 2; +} + +// The result for the ad mutate. +message MutateAdGroupAdResult { + // The resource name returned for successful operations. + string resource_name = 1; + + // The mutated ad group ad with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AdGroupAd ad_group_ad = 2; +} diff --git a/google/ads/googleads/v9/services/ad_group_asset_service.proto b/google/ads/googleads/v9/services/ad_group_asset_service.proto new file mode 100644 index 000000000..e9978f7f0 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_asset_service.proto @@ -0,0 +1,162 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/ad_group_asset.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAssetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AdGroupAsset service. + +// Service to manage ad group assets. +service AdGroupAssetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group asset in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupAsset(GetAdGroupAssetRequest) returns (google.ads.googleads.v9.resources.AdGroupAsset) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupAssets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad group assets. Operation statuses are + // returned. + // + // List of thrown errors: + // [AssetLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [ContextError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [NotAllowlistedError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAdGroupAssets(MutateAdGroupAssetsRequest) returns (MutateAdGroupAssetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adGroupAssets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupAssetService.GetAdGroupAsset][google.ads.googleads.v9.services.AdGroupAssetService.GetAdGroupAsset]. +message GetAdGroupAssetRequest { + // Required. The resource name of the ad group asset to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAsset" + } + ]; +} + +// Request message for [AdGroupAssetService.MutateAdGroupAssets][google.ads.googleads.v9.services.AdGroupAssetService.MutateAdGroupAssets]. +message MutateAdGroupAssetsRequest { + // Required. The ID of the customer whose ad group assets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad group assets. + repeated AdGroupAssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an ad group asset. +message AdGroupAssetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group + // asset. + google.ads.googleads.v9.resources.AdGroupAsset create = 1; + + // Update operation: The ad group asset is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.AdGroupAsset update = 3; + + // Remove operation: A resource name for the removed ad group asset is + // expected, in this format: + // + // `customers/{customer_id}/adGroupAssets/{ad_group_id}~{asset_id}~{field_type}` + string remove = 2; + } +} + +// Response message for an ad group asset mutate. +message MutateAdGroupAssetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; + + // All results for the mutate. + repeated MutateAdGroupAssetResult results = 2; +} + +// The result for the ad group asset mutate. +message MutateAdGroupAssetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated ad group asset with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AdGroupAsset ad_group_asset = 2; +} diff --git a/google/ads/googleads/v9/services/ad_group_audience_view_service.proto b/google/ads/googleads/v9/services/ad_group_audience_view_service.proto new file mode 100644 index 000000000..b90af3854 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_audience_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/ad_group_audience_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupAudienceViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AdGroup Audience View service. + +// Service to manage ad group audience views. +service AdGroupAudienceViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group audience view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupAudienceView(GetAdGroupAudienceViewRequest) returns (google.ads.googleads.v9.resources.AdGroupAudienceView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupAudienceViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AdGroupAudienceViewService.GetAdGroupAudienceView][google.ads.googleads.v9.services.AdGroupAudienceViewService.GetAdGroupAudienceView]. +message GetAdGroupAudienceViewRequest { + // Required. The resource name of the ad group audience view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupAudienceView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/ad_group_bid_modifier_service.proto b/google/ads/googleads/v9/services/ad_group_bid_modifier_service.proto new file mode 100644 index 000000000..ff9f91588 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_bid_modifier_service.proto @@ -0,0 +1,174 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/ad_group_bid_modifier.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupBidModifierServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Ad Group Bid Modifier service. + +// Service to manage ad group bid modifiers. +service AdGroupBidModifierService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group bid modifier in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupBidModifier(GetAdGroupBidModifierRequest) returns (google.ads.googleads.v9.resources.AdGroupBidModifier) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupBidModifiers/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad group bid modifiers. + // Operation statuses are returned. + // + // List of thrown errors: + // [AdGroupBidModifierError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [ContextError]() + // [CriterionError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateAdGroupBidModifiers(MutateAdGroupBidModifiersRequest) returns (MutateAdGroupBidModifiersResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adGroupBidModifiers:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupBidModifierService.GetAdGroupBidModifier][google.ads.googleads.v9.services.AdGroupBidModifierService.GetAdGroupBidModifier]. +message GetAdGroupBidModifierRequest { + // Required. The resource name of the ad group bid modifier to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupBidModifier" + } + ]; +} + +// Request message for [AdGroupBidModifierService.MutateAdGroupBidModifiers][google.ads.googleads.v9.services.AdGroupBidModifierService.MutateAdGroupBidModifiers]. +message MutateAdGroupBidModifiersRequest { + // Required. ID of the customer whose ad group bid modifiers are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad group bid modifiers. + repeated AdGroupBidModifierOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on an ad group bid modifier. +message AdGroupBidModifierOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group bid + // modifier. + google.ads.googleads.v9.resources.AdGroupBidModifier create = 1; + + // Update operation: The ad group bid modifier is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.AdGroupBidModifier update = 2; + + // Remove operation: A resource name for the removed ad group bid modifier + // is expected, in this format: + // + // `customers/{customer_id}/adGroupBidModifiers/{ad_group_id}~{criterion_id}` + string remove = 3; + } +} + +// Response message for ad group bid modifiers mutate. +message MutateAdGroupBidModifiersResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupBidModifierResult results = 2; +} + +// The result for the criterion mutate. +message MutateAdGroupBidModifierResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated ad group bid modifier with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AdGroupBidModifier ad_group_bid_modifier = 2; +} diff --git a/google/ads/googleads/v9/services/ad_group_criterion_customizer_service.proto b/google/ads/googleads/v9/services/ad_group_criterion_customizer_service.proto new file mode 100644 index 000000000..d77aff7e6 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_criterion_customizer_service.proto @@ -0,0 +1,116 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/ad_group_criterion_customizer.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionCustomizerServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AdGroupCriterionCustomizer service. + +// Service to manage ad group criterion customizer +service AdGroupCriterionCustomizerService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes ad group criterion customizers. Operation + // statuses are returned. + rpc MutateAdGroupCriterionCustomizers(MutateAdGroupCriterionCustomizersRequest) returns (MutateAdGroupCriterionCustomizersResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/AdGroupCriterionCustomizers:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [AdGroupCriterionCustomizerService.MutateAdGroupCriterionCustomizers][google.ads.googleads.v9.services.AdGroupCriterionCustomizerService.MutateAdGroupCriterionCustomizers]. +message MutateAdGroupCriterionCustomizersRequest { + // Required. The ID of the customer whose ad group criterion customizers are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad group criterion + // customizers. + repeated AdGroupCriterionCustomizerOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on an customizer attribute. +message AdGroupCriterionCustomizerOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group + // criterion customizer. + google.ads.googleads.v9.resources.AdGroupCriterionCustomizer create = 1; + + // Remove operation: A resource name for the removed ad group criterion + // customizer is expected, in this format: + // + // `customers/{customer_id}/adGroupCriterionCustomizers/{ad_group_id}~{criterion_id}~{customizer_attribute_id}` + string remove = 2; + } +} + +// Response message for an ad group criterion customizer mutate. +message MutateAdGroupCriterionCustomizersResponse { + // All results for the mutate. + repeated MutateAdGroupCriterionCustomizerResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the ad group criterion customizer mutate. +message MutateAdGroupCriterionCustomizerResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated AdGroupCriterionCustomizer with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AdGroupCriterionCustomizer ad_group_criterion_customizer = 2; +} diff --git a/google/ads/googleads/v9/services/ad_group_criterion_label_service.proto b/google/ads/googleads/v9/services/ad_group_criterion_label_service.proto new file mode 100644 index 000000000..8bd2c85e2 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_criterion_label_service.proto @@ -0,0 +1,143 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/ad_group_criterion_label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionLabelServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Ad Group Criterion Label service. + +// Service to manage labels on ad group criteria. +service AdGroupCriterionLabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group criterion label in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupCriterionLabel(GetAdGroupCriterionLabelRequest) returns (google.ads.googleads.v9.resources.AdGroupCriterionLabel) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupCriterionLabels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates and removes ad group criterion labels. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAdGroupCriterionLabels(MutateAdGroupCriterionLabelsRequest) returns (MutateAdGroupCriterionLabelsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adGroupCriterionLabels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [AdGroupCriterionLabelService.GetAdGroupCriterionLabel][google.ads.googleads.v9.services.AdGroupCriterionLabelService.GetAdGroupCriterionLabel]. +message GetAdGroupCriterionLabelRequest { + // Required. The resource name of the ad group criterion label to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterionLabel" + } + ]; +} + +// Request message for +// [AdGroupCriterionLabelService.MutateAdGroupCriterionLabels][google.ads.googleads.v9.services.AdGroupCriterionLabelService.MutateAdGroupCriterionLabels]. +message MutateAdGroupCriterionLabelsRequest { + // Required. ID of the customer whose ad group criterion labels are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on ad group criterion labels. + repeated AdGroupCriterionLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on an ad group criterion label. +message AdGroupCriterionLabelOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group + // label. + google.ads.googleads.v9.resources.AdGroupCriterionLabel create = 1; + + // Remove operation: A resource name for the ad group criterion label + // being removed, in this format: + // + // `customers/{customer_id}/adGroupCriterionLabels/{ad_group_id}~{criterion_id}~{label_id}` + string remove = 2; + } +} + +// Response message for an ad group criterion labels mutate. +message MutateAdGroupCriterionLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupCriterionLabelResult results = 2; +} + +// The result for an ad group criterion label mutate. +message MutateAdGroupCriterionLabelResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/ad_group_criterion_service.proto b/google/ads/googleads/v9/services/ad_group_criterion_service.proto new file mode 100644 index 000000000..cf063a2bc --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_criterion_service.proto @@ -0,0 +1,194 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/policy.proto"; +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/ad_group_criterion.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Ad Group Criterion service. + +// Service to manage ad group criteria. +service AdGroupCriterionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested criterion in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupCriterion(GetAdGroupCriterionRequest) returns (google.ads.googleads.v9.resources.AdGroupCriterion) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupCriteria/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes criteria. Operation statuses are returned. + // + // List of thrown errors: + // [AdGroupCriterionError]() + // [AdxError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [BiddingError]() + // [BiddingStrategyError]() + // [CollectionSizeError]() + // [ContextError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MultiplierError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateAdGroupCriteria(MutateAdGroupCriteriaRequest) returns (MutateAdGroupCriteriaResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adGroupCriteria:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupCriterionService.GetAdGroupCriterion][google.ads.googleads.v9.services.AdGroupCriterionService.GetAdGroupCriterion]. +message GetAdGroupCriterionRequest { + // Required. The resource name of the criterion to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterion" + } + ]; +} + +// Request message for [AdGroupCriterionService.MutateAdGroupCriteria][google.ads.googleads.v9.services.AdGroupCriterionService.MutateAdGroupCriteria]. +message MutateAdGroupCriteriaRequest { + // Required. ID of the customer whose criteria are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual criteria. + repeated AdGroupCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on an ad group criterion. +message AdGroupCriterionOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The list of policy violation keys that should not cause a + // PolicyViolationError to be reported. Not all policy violations are + // exemptable, please refer to the is_exemptible field in the returned + // PolicyViolationError. + // + // Resources violating these polices will be saved, but will not be eligible + // to serve. They may begin serving at a later time due to a change in + // policies, re-review of the resource, or a change in advertiser + // certificates. + repeated google.ads.googleads.v9.common.PolicyViolationKey exempt_policy_violation_keys = 5; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new criterion. + google.ads.googleads.v9.resources.AdGroupCriterion create = 1; + + // Update operation: The criterion is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.AdGroupCriterion update = 2; + + // Remove operation: A resource name for the removed criterion is expected, + // in this format: + // + // `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` + string remove = 3; + } +} + +// Response message for an ad group criterion mutate. +message MutateAdGroupCriteriaResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupCriterionResult results = 2; +} + +// The result for the criterion mutate. +message MutateAdGroupCriterionResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated ad group criterion with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AdGroupCriterion ad_group_criterion = 2; +} diff --git a/google/ads/googleads/v9/services/ad_group_criterion_simulation_service.proto b/google/ads/googleads/v9/services/ad_group_criterion_simulation_service.proto new file mode 100644 index 000000000..97051e3da --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_criterion_simulation_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/ad_group_criterion_simulation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCriterionSimulationServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AdGroupCriterionSimulation service. + +// Service to fetch ad group criterion simulations. +service AdGroupCriterionSimulationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group criterion simulation in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupCriterionSimulation(GetAdGroupCriterionSimulationRequest) returns (google.ads.googleads.v9.resources.AdGroupCriterionSimulation) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupCriterionSimulations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation][google.ads.googleads.v9.services.AdGroupCriterionSimulationService.GetAdGroupCriterionSimulation]. +message GetAdGroupCriterionSimulationRequest { + // Required. The resource name of the ad group criterion simulation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupCriterionSimulation" + } + ]; +} diff --git a/google/ads/googleads/v9/services/ad_group_customizer_service.proto b/google/ads/googleads/v9/services/ad_group_customizer_service.proto new file mode 100644 index 000000000..244910aff --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_customizer_service.proto @@ -0,0 +1,113 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/ad_group_customizer.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupCustomizerServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AdGroupCustomizer service. + +// Service to manage ad group customizer +service AdGroupCustomizerService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes ad group customizers. Operation statuses are + // returned. + rpc MutateAdGroupCustomizers(MutateAdGroupCustomizersRequest) returns (MutateAdGroupCustomizersResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adGroupCustomizers:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [AdGroupCustomizerService.MutateAdGroupCustomizers][google.ads.googleads.v9.services.AdGroupCustomizerService.MutateAdGroupCustomizers]. +message MutateAdGroupCustomizersRequest { + // Required. The ID of the customer whose ad group customizers are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad group customizers. + repeated AdGroupCustomizerOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on an customizer attribute. +message AdGroupCustomizerOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group + // customizer + google.ads.googleads.v9.resources.AdGroupCustomizer create = 1; + + // Remove operation: A resource name for the removed ad group customizer is + // expected, in this format: + // `customers/{customer_id}/adGroupCustomizers/{ad_group_id}~{customizer_attribute_id}` + string remove = 2; + } +} + +// Response message for an ad group customizer mutate. +message MutateAdGroupCustomizersResponse { + // All results for the mutate. + repeated MutateAdGroupCustomizerResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the ad group customizer mutate. +message MutateAdGroupCustomizerResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated AdGroupCustomizer with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AdGroupCustomizer ad_group_customizer = 2; +} diff --git a/google/ads/googleads/v9/services/ad_group_extension_setting_service.proto b/google/ads/googleads/v9/services/ad_group_extension_setting_service.proto new file mode 100644 index 000000000..1c9e25ea1 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_extension_setting_service.proto @@ -0,0 +1,183 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/ad_group_extension_setting.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupExtensionSettingServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AdGroupExtensionSetting service. + +// Service to manage ad group extension settings. +service AdGroupExtensionSettingService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group extension setting in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupExtensionSetting(GetAdGroupExtensionSettingRequest) returns (google.ads.googleads.v9.resources.AdGroupExtensionSetting) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupExtensionSettings/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad group extension settings. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [ExtensionSettingError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateAdGroupExtensionSettings(MutateAdGroupExtensionSettingsRequest) returns (MutateAdGroupExtensionSettingsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adGroupExtensionSettings:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [AdGroupExtensionSettingService.GetAdGroupExtensionSetting][google.ads.googleads.v9.services.AdGroupExtensionSettingService.GetAdGroupExtensionSetting]. +message GetAdGroupExtensionSettingRequest { + // Required. The resource name of the ad group extension setting to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupExtensionSetting" + } + ]; +} + +// Request message for +// [AdGroupExtensionSettingService.MutateAdGroupExtensionSettings][google.ads.googleads.v9.services.AdGroupExtensionSettingService.MutateAdGroupExtensionSettings]. +message MutateAdGroupExtensionSettingsRequest { + // Required. The ID of the customer whose ad group extension settings are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad group extension + // settings. + repeated AdGroupExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on an ad group extension setting. +message AdGroupExtensionSettingOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group + // extension setting. + google.ads.googleads.v9.resources.AdGroupExtensionSetting create = 1; + + // Update operation: The ad group extension setting is expected to have a + // valid resource name. + google.ads.googleads.v9.resources.AdGroupExtensionSetting update = 2; + + // Remove operation: A resource name for the removed ad group extension + // setting is expected, in this format: + // + // `customers/{customer_id}/adGroupExtensionSettings/{ad_group_id}~{extension_type}` + string remove = 3; + } +} + +// Response message for an ad group extension setting mutate. +message MutateAdGroupExtensionSettingsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupExtensionSettingResult results = 2; +} + +// The result for the ad group extension setting mutate. +message MutateAdGroupExtensionSettingResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated AdGroupExtensionSetting with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AdGroupExtensionSetting ad_group_extension_setting = 2; +} diff --git a/google/ads/googleads/v9/services/ad_group_feed_service.proto b/google/ads/googleads/v9/services/ad_group_feed_service.proto new file mode 100644 index 000000000..043182212 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_feed_service.proto @@ -0,0 +1,172 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/ad_group_feed.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupFeedServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AdGroupFeed service. + +// Service to manage ad group feeds. +service AdGroupFeedService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group feed in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupFeed(GetAdGroupFeedRequest) returns (google.ads.googleads.v9.resources.AdGroupFeed) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupFeeds/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad group feeds. Operation statuses are + // returned. + // + // List of thrown errors: + // [AdGroupFeedError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FunctionError]() + // [FunctionParsingError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateAdGroupFeeds(MutateAdGroupFeedsRequest) returns (MutateAdGroupFeedsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adGroupFeeds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupFeedService.GetAdGroupFeed][google.ads.googleads.v9.services.AdGroupFeedService.GetAdGroupFeed]. +message GetAdGroupFeedRequest { + // Required. The resource name of the ad group feed to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupFeed" + } + ]; +} + +// Request message for [AdGroupFeedService.MutateAdGroupFeeds][google.ads.googleads.v9.services.AdGroupFeedService.MutateAdGroupFeeds]. +message MutateAdGroupFeedsRequest { + // Required. The ID of the customer whose ad group feeds are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad group feeds. + repeated AdGroupFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an ad group feed. +message AdGroupFeedOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group feed. + google.ads.googleads.v9.resources.AdGroupFeed create = 1; + + // Update operation: The ad group feed is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.AdGroupFeed update = 2; + + // Remove operation: A resource name for the removed ad group feed is + // expected, in this format: + // + // `customers/{customer_id}/adGroupFeeds/{ad_group_id}~{feed_id}` + string remove = 3; + } +} + +// Response message for an ad group feed mutate. +message MutateAdGroupFeedsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupFeedResult results = 2; +} + +// The result for the ad group feed mutate. +message MutateAdGroupFeedResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated ad group feed with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AdGroupFeed ad_group_feed = 2; +} diff --git a/google/ads/googleads/v9/services/ad_group_label_service.proto b/google/ads/googleads/v9/services/ad_group_label_service.proto new file mode 100644 index 000000000..6ad8aec68 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_label_service.proto @@ -0,0 +1,144 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/ad_group_label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupLabelServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Ad Group Label service. + +// Service to manage labels on ad groups. +service AdGroupLabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group label in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupLabel(GetAdGroupLabelRequest) returns (google.ads.googleads.v9.resources.AdGroupLabel) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupLabels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates and removes ad group labels. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [LabelError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAdGroupLabels(MutateAdGroupLabelsRequest) returns (MutateAdGroupLabelsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adGroupLabels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupLabelService.GetAdGroupLabel][google.ads.googleads.v9.services.AdGroupLabelService.GetAdGroupLabel]. +message GetAdGroupLabelRequest { + // Required. The resource name of the ad group label to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupLabel" + } + ]; +} + +// Request message for [AdGroupLabelService.MutateAdGroupLabels][google.ads.googleads.v9.services.AdGroupLabelService.MutateAdGroupLabels]. +message MutateAdGroupLabelsRequest { + // Required. ID of the customer whose ad group labels are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on ad group labels. + repeated AdGroupLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on an ad group label. +message AdGroupLabelOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group + // label. + google.ads.googleads.v9.resources.AdGroupLabel create = 1; + + // Remove operation: A resource name for the ad group label + // being removed, in this format: + // + // `customers/{customer_id}/adGroupLabels/{ad_group_id}~{label_id}` + string remove = 2; + } +} + +// Response message for an ad group labels mutate. +message MutateAdGroupLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupLabelResult results = 2; +} + +// The result for an ad group label mutate. +message MutateAdGroupLabelResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/ad_group_service.proto b/google/ads/googleads/v9/services/ad_group_service.proto new file mode 100644 index 000000000..132d29265 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_service.proto @@ -0,0 +1,178 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/ad_group.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Ad Group service. + +// Service to manage ad groups. +service AdGroupService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroup(GetAdGroupRequest) returns (google.ads.googleads.v9.resources.AdGroup) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroups/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad groups. Operation statuses are returned. + // + // List of thrown errors: + // [AdGroupError]() + // [AdxError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [BiddingError]() + // [BiddingStrategyError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MultiplierError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SettingError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateAdGroups(MutateAdGroupsRequest) returns (MutateAdGroupsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adGroups:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdGroupService.GetAdGroup][google.ads.googleads.v9.services.AdGroupService.GetAdGroup]. +message GetAdGroupRequest { + // Required. The resource name of the ad group to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroup" + } + ]; +} + +// Request message for [AdGroupService.MutateAdGroups][google.ads.googleads.v9.services.AdGroupService.MutateAdGroups]. +message MutateAdGroupsRequest { + // Required. The ID of the customer whose ad groups are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad groups. + repeated AdGroupOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an ad group. +message AdGroupOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad group. + google.ads.googleads.v9.resources.AdGroup create = 1; + + // Update operation: The ad group is expected to have a valid resource name. + google.ads.googleads.v9.resources.AdGroup update = 2; + + // Remove operation: A resource name for the removed ad group is expected, + // in this format: + // + // `customers/{customer_id}/adGroups/{ad_group_id}` + string remove = 3; + } +} + +// Response message for an ad group mutate. +message MutateAdGroupsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdGroupResult results = 2; +} + +// The result for the ad group mutate. +message MutateAdGroupResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated ad group with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AdGroup ad_group = 2; +} diff --git a/google/ads/googleads/v9/services/ad_group_simulation_service.proto b/google/ads/googleads/v9/services/ad_group_simulation_service.proto new file mode 100644 index 000000000..32f891689 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_group_simulation_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/ad_group_simulation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdGroupSimulationServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AdGroupSimulation service. + +// Service to fetch ad group simulations. +service AdGroupSimulationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad group simulation in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdGroupSimulation(GetAdGroupSimulationRequest) returns (google.ads.googleads.v9.resources.AdGroupSimulation) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adGroupSimulations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AdGroupSimulationService.GetAdGroupSimulation][google.ads.googleads.v9.services.AdGroupSimulationService.GetAdGroupSimulation]. +message GetAdGroupSimulationRequest { + // Required. The resource name of the ad group simulation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdGroupSimulation" + } + ]; +} diff --git a/google/ads/googleads/v9/services/ad_parameter_service.proto b/google/ads/googleads/v9/services/ad_parameter_service.proto new file mode 100644 index 000000000..841622556 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_parameter_service.proto @@ -0,0 +1,162 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/ad_parameter.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdParameterServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Ad Parameter service. + +// Service to manage ad parameters. +service AdParameterService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad parameter in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdParameter(GetAdParameterRequest) returns (google.ads.googleads.v9.resources.AdParameter) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adParameters/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes ad parameters. Operation statuses are + // returned. + // + // List of thrown errors: + // [AdParameterError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [ContextError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateAdParameters(MutateAdParametersRequest) returns (MutateAdParametersResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/adParameters:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdParameterService.GetAdParameter][google.ads.googleads.v9.services.AdParameterService.GetAdParameter] +message GetAdParameterRequest { + // Required. The resource name of the ad parameter to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdParameter" + } + ]; +} + +// Request message for [AdParameterService.MutateAdParameters][google.ads.googleads.v9.services.AdParameterService.MutateAdParameters] +message MutateAdParametersRequest { + // Required. The ID of the customer whose ad parameters are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ad parameters. + repeated AdParameterOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on ad parameter. +message AdParameterOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new ad parameter. + google.ads.googleads.v9.resources.AdParameter create = 1; + + // Update operation: The ad parameter is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.AdParameter update = 2; + + // Remove operation: A resource name for the ad parameter to remove is + // expected in this format: + // + // `customers/{customer_id}/adParameters/{ad_group_id}~{criterion_id}~{parameter_index}` + string remove = 3; + } +} + +// Response message for an ad parameter mutate. +message MutateAdParametersResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdParameterResult results = 2; +} + +// The result for the ad parameter mutate. +message MutateAdParameterResult { + // The resource name returned for successful operations. + string resource_name = 1; + + // The mutated AdParameter with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AdParameter ad_parameter = 2; +} diff --git a/google/ads/googleads/v9/services/ad_schedule_view_service.proto b/google/ads/googleads/v9/services/ad_schedule_view_service.proto new file mode 100644 index 000000000..64a9dd966 --- /dev/null +++ b/google/ads/googleads/v9/services/ad_schedule_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/ad_schedule_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdScheduleViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AdSchedule View service. + +// Service to fetch ad schedule views. +service AdScheduleViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad schedule view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAdScheduleView(GetAdScheduleViewRequest) returns (google.ads.googleads.v9.resources.AdScheduleView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/adScheduleViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AdScheduleViewService.GetAdScheduleView][google.ads.googleads.v9.services.AdScheduleViewService.GetAdScheduleView]. +message GetAdScheduleViewRequest { + // Required. The resource name of the ad schedule view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AdScheduleView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/ad_service.proto b/google/ads/googleads/v9/services/ad_service.proto new file mode 100644 index 000000000..eea1077bc --- /dev/null +++ b/google/ads/googleads/v9/services/ad_service.proto @@ -0,0 +1,184 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/policy.proto"; +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/ad.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AdServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Ad service. + +// Service to manage ads. +service AdService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested ad in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAd(GetAdRequest) returns (google.ads.googleads.v9.resources.Ad) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/ads/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Updates ads. Operation statuses are returned. Updating ads is not supported + // for TextAd, ExpandedDynamicSearchAd, GmailAd and ImageAd. + // + // List of thrown errors: + // [AdCustomizerError]() + // [AdError]() + // [AdSharingError]() + // [AdxError]() + // [AssetError]() + // [AssetLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FeedAttributeReferenceError]() + // [FieldError]() + // [FieldMaskError]() + // [FunctionError]() + // [FunctionParsingError]() + // [HeaderError]() + // [IdError]() + // [ImageError]() + // [InternalError]() + // [ListOperationError]() + // [MediaBundleError]() + // [MediaFileError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [PolicyFindingError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateAds(MutateAdsRequest) returns (MutateAdsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/ads:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AdService.GetAd][google.ads.googleads.v9.services.AdService.GetAd]. +message GetAdRequest { + // Required. The resource name of the ad to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Ad" + } + ]; +} + +// Request message for [AdService.MutateAds][google.ads.googleads.v9.services.AdService.MutateAds]. +message MutateAdsRequest { + // Required. The ID of the customer whose ads are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual ads. + repeated AdOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single update operation on an ad. +message AdOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 2; + + // Configuration for how policies are validated. + google.ads.googleads.v9.common.PolicyValidationParameter policy_validation_parameter = 3; + + // The mutate operation. + oneof operation { + // Update operation: The ad is expected to have a valid resource name + // in this format: + // + // `customers/{customer_id}/ads/{ad_id}` + google.ads.googleads.v9.resources.Ad update = 1; + } +} + +// Response message for an ad mutate. +message MutateAdsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAdResult results = 2; +} + +// The result for the ad mutate. +message MutateAdResult { + // The resource name returned for successful operations. + string resource_name = 1; + + // The mutated ad with only mutable fields after mutate. The field will only + // be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.Ad ad = 2; +} diff --git a/google/ads/googleads/v9/services/age_range_view_service.proto b/google/ads/googleads/v9/services/age_range_view_service.proto new file mode 100644 index 000000000..901fd7781 --- /dev/null +++ b/google/ads/googleads/v9/services/age_range_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/age_range_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AgeRangeViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Age Range View service. + +// Service to manage age range views. +service AgeRangeViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested age range view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAgeRangeView(GetAgeRangeViewRequest) returns (google.ads.googleads.v9.resources.AgeRangeView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/ageRangeViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AgeRangeViewService.GetAgeRangeView][google.ads.googleads.v9.services.AgeRangeViewService.GetAgeRangeView]. +message GetAgeRangeViewRequest { + // Required. The resource name of the age range view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AgeRangeView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/asset_field_type_view_service.proto b/google/ads/googleads/v9/services/asset_field_type_view_service.proto new file mode 100644 index 000000000..627e8346f --- /dev/null +++ b/google/ads/googleads/v9/services/asset_field_type_view_service.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/asset_field_type_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AssetFieldTypeViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AssetFieldTypeView service. + +// Service to fetch asset field type views. +service AssetFieldTypeViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested asset field type view in full detail. + rpc GetAssetFieldTypeView(GetAssetFieldTypeViewRequest) returns (google.ads.googleads.v9.resources.AssetFieldTypeView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/assetFieldTypeViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [AssetFieldTypeViewService.GetAssetFieldTypeView][google.ads.googleads.v9.services.AssetFieldTypeViewService.GetAssetFieldTypeView]. +message GetAssetFieldTypeViewRequest { + // Required. The resource name of the asset field type view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetFieldTypeView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/asset_group_asset_service.proto b/google/ads/googleads/v9/services/asset_group_asset_service.proto new file mode 100644 index 000000000..21c2319e3 --- /dev/null +++ b/google/ads/googleads/v9/services/asset_group_asset_service.proto @@ -0,0 +1,130 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/asset_group_asset.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AssetGroupAssetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AssetGroupAsset service. + +// Service to manage asset group asset. +service AssetGroupAssetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested asset group asset in full detail. + rpc GetAssetGroupAsset(GetAssetGroupAssetRequest) returns (google.ads.googleads.v9.resources.AssetGroupAsset) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/assetGroupAssets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates or removes asset group assets. Operation statuses are + // returned. + rpc MutateAssetGroupAssets(MutateAssetGroupAssetsRequest) returns (MutateAssetGroupAssetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/assetGroupAssets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AssetGroupAssetService.GetAssetGroupAsset][google.ads.googleads.v9.services.AssetGroupAssetService.GetAssetGroupAsset]. +message GetAssetGroupAssetRequest { + // Required. The resource name of the asset group asset to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetGroupAsset" + } + ]; +} + +// Request message for [AssetGroupAssetService.MutateAssetGroupAssets][google.ads.googleads.v9.services.AssetGroupAssetService.MutateAssetGroupAssets]. +message MutateAssetGroupAssetsRequest { + // Required. The ID of the customer whose asset group assets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual asset group assets. + repeated AssetGroupAssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on an asset group asset. +message AssetGroupAssetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new asset group + // asset + google.ads.googleads.v9.resources.AssetGroupAsset create = 1; + + // Update operation: The asset group asset sis expected to have a valid + // resource name. + google.ads.googleads.v9.resources.AssetGroupAsset update = 2; + + // Remove operation: A resource name for the removed asset group asset is + // expected, in this format: + // `customers/{customer_id}/assetGroupAssets/{asset_group_id}~{asset_id}~{field_type}` + string remove = 3; + } +} + +// Response message for an asset group asset mutate. +message MutateAssetGroupAssetsResponse { + // All results for the mutate. + repeated MutateAssetGroupAssetResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the asset group asset mutate. +message MutateAssetGroupAssetResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/asset_group_listing_group_filter_service.proto b/google/ads/googleads/v9/services/asset_group_listing_group_filter_service.proto new file mode 100644 index 000000000..2af559696 --- /dev/null +++ b/google/ads/googleads/v9/services/asset_group_listing_group_filter_service.proto @@ -0,0 +1,115 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/asset_group_listing_group_filter.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AssetGroupListingGroupFilterServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AssetGroupListingGroupFilter service. + +// Service to manage asset group listing group filter. +service AssetGroupListingGroupFilterService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes asset group listing group filters. Operation + // statuses are returned. + rpc MutateAssetGroupListingGroupFilters(MutateAssetGroupListingGroupFiltersRequest) returns (MutateAssetGroupListingGroupFiltersResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/assetGroupListingGroupFilters:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [AssetGroupListingGroupFilterService.MutateAssetGroupListingGroupFilters][google.ads.googleads.v9.services.AssetGroupListingGroupFilterService.MutateAssetGroupListingGroupFilters]. +// partial_failure is not supported because the tree needs to be validated +// together. +message MutateAssetGroupListingGroupFiltersRequest { + // Required. The ID of the customer whose asset group listing group filters are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual asset group listing group + // filters. + repeated AssetGroupListingGroupFilterOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 4; +} + +// A single operation (create, remove) on an asset group listing group filter. +message AssetGroupListingGroupFilterOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new asset group + // listing group filter. + google.ads.googleads.v9.resources.AssetGroupListingGroupFilter create = 1; + + // Update operation: The asset group listing group filter is expected to + // have a valid resource name. + google.ads.googleads.v9.resources.AssetGroupListingGroupFilter update = 2; + + // Remove operation: A resource name for the removed asset group listing + // group filter is expected, in this format: + // `customers/{customer_id}/assetGroupListingGroupFilters/{asset_group_id}~{listing_group_filter_id}` + // An entity can be removed only if it's not referenced by other + // parent_listing_group_id. If multiple entities are being deleted, the + // mutates must be in the correct order. + string remove = 3; + } +} + +// Response message for an asset group listing group filter mutate. +message MutateAssetGroupListingGroupFiltersResponse { + // All results for the mutate. + repeated MutateAssetGroupListingGroupFilterResult results = 1; +} + +// The result for the asset group listing group filter mutate. +message MutateAssetGroupListingGroupFilterResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated AssetGroupListingGroupFilter with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AssetGroupListingGroupFilter asset_group_listing_group_filter = 2; +} diff --git a/google/ads/googleads/v9/services/asset_group_service.proto b/google/ads/googleads/v9/services/asset_group_service.proto new file mode 100644 index 000000000..3b98f6d24 --- /dev/null +++ b/google/ads/googleads/v9/services/asset_group_service.proto @@ -0,0 +1,123 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/asset_group.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AssetGroupServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AssetGroup service. + +// Service to manage asset group +service AssetGroupService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested asset group in full detail. + rpc GetAssetGroup(GetAssetGroupRequest) returns (google.ads.googleads.v9.resources.AssetGroup) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/assetGroups/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates or removes asset groups. Operation statuses are + // returned. + rpc MutateAssetGroups(MutateAssetGroupsRequest) returns (MutateAssetGroupsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/assetGroups:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AssetGroupService.GetAssetGroup][google.ads.googleads.v9.services.AssetGroupService.GetAssetGroup]. +message GetAssetGroupRequest { + // Required. The resource name of the asset group to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/AssetGroup" + } + ]; +} + +// Request message for [AssetGroupService.MutateAssetGroups][google.ads.googleads.v9.services.AssetGroupService.MutateAssetGroups]. +message MutateAssetGroupsRequest { + // Required. The ID of the customer whose asset groups are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual asset groups. + repeated AssetGroupOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on an asset group. +message AssetGroupOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new asset group + google.ads.googleads.v9.resources.AssetGroup create = 1; + + // Update operation: The asset group is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.AssetGroup update = 2; + + // Remove operation: A resource name for the removed asset group is + // expected, in this format: + // `customers/{customer_id}/assetGroups/{asset_group_id}` + string remove = 3; + } +} + +// Response message for an asset group mutate. +message MutateAssetGroupsResponse { + // All results for the mutate. + repeated MutateAssetGroupResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the asset group mutate. +message MutateAssetGroupResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/asset_service.proto b/google/ads/googleads/v9/services/asset_service.proto new file mode 100644 index 000000000..9a841de2f --- /dev/null +++ b/google/ads/googleads/v9/services/asset_service.proto @@ -0,0 +1,175 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/asset.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AssetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Asset service. + +// Service to manage assets. Asset types can be created with AssetService are +// YoutubeVideoAsset, MediaBundleAsset and ImageAsset. TextAsset should be +// created with Ad inline. +service AssetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested asset in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetAsset(GetAssetRequest) returns (google.ads.googleads.v9.resources.Asset) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/assets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates assets. Operation statuses are returned. + // + // List of thrown errors: + // [AssetError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CurrencyCodeError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MediaUploadError]() + // [MutateError]() + // [NotAllowlistedError]() + // [NotEmptyError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + // [YoutubeVideoRegistrationError]() + rpc MutateAssets(MutateAssetsRequest) returns (MutateAssetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/assets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AssetService.GetAsset][google.ads.googleads.v9.services.AssetService.GetAsset] +message GetAssetRequest { + // Required. The resource name of the asset to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Asset" + } + ]; +} + +// Request message for [AssetService.MutateAssets][google.ads.googleads.v9.services.AssetService.MutateAssets] +message MutateAssetsRequest { + // Required. The ID of the customer whose assets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual assets. + repeated AssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 5; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation to create an asset. Supported asset types are +// YoutubeVideoAsset, MediaBundleAsset, ImageAsset, and LeadFormAsset. TextAsset +// should be created with Ad inline. +message AssetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 3; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new asset. + google.ads.googleads.v9.resources.Asset create = 1; + + // Update operation: The asset is expected to have a valid resource name in + // this format: + // + // `customers/{customer_id}/assets/{asset_id}` + google.ads.googleads.v9.resources.Asset update = 2; + } +} + +// Response message for an asset mutate. +message MutateAssetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateAssetResult results = 2; +} + +// The result for the asset mutate. +message MutateAssetResult { + // The resource name returned for successful operations. + string resource_name = 1; + + // The mutated asset with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.Asset asset = 2; +} diff --git a/google/ads/googleads/v9/services/asset_set_asset_service.proto b/google/ads/googleads/v9/services/asset_set_asset_service.proto new file mode 100644 index 000000000..c89b229aa --- /dev/null +++ b/google/ads/googleads/v9/services/asset_set_asset_service.proto @@ -0,0 +1,112 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/asset_set_asset.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AssetSetAssetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AssetSetAsset service. + +// Service to manage asset set asset. +service AssetSetAssetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes asset set assets. Operation statuses are + // returned. + rpc MutateAssetSetAssets(MutateAssetSetAssetsRequest) returns (MutateAssetSetAssetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/assetSetAssets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AssetSetAssetService.MutateAssetSetAssets][google.ads.googleads.v9.services.AssetSetAssetService.MutateAssetSetAssets]. +message MutateAssetSetAssetsRequest { + // Required. The ID of the customer whose asset set assets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual asset set assets. + repeated AssetSetAssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on an asset set asset. +message AssetSetAssetOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new asset set + // asset + google.ads.googleads.v9.resources.AssetSetAsset create = 1; + + // Remove operation: A resource name for the removed asset set asset is + // expected, in this format: + // `customers/{customer_id}/assetSetAssets/{asset_set_id}~{asset_id}` + string remove = 2; + } +} + +// Response message for an asset set asset mutate. +message MutateAssetSetAssetsResponse { + // All results for the mutate. + repeated MutateAssetSetAssetResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the asset set asset mutate. +message MutateAssetSetAssetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated asset set asset with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AssetSetAsset asset_set_asset = 2; +} diff --git a/google/ads/googleads/v9/services/asset_set_service.proto b/google/ads/googleads/v9/services/asset_set_service.proto new file mode 100644 index 000000000..772851f81 --- /dev/null +++ b/google/ads/googleads/v9/services/asset_set_service.proto @@ -0,0 +1,118 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/asset_set.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "AssetSetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the AssetSet service. + +// Service to manage asset set +service AssetSetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes asset sets. Operation statuses are + // returned. + rpc MutateAssetSets(MutateAssetSetsRequest) returns (MutateAssetSetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/assetSets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [AssetSetService.MutateAssetSets][google.ads.googleads.v9.services.AssetSetService.MutateAssetSets]. +message MutateAssetSetsRequest { + // Required. The ID of the customer whose asset sets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual asset sets. + repeated AssetSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on an asset set. +message AssetSetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new asset set + google.ads.googleads.v9.resources.AssetSet create = 1; + + // Update operation: The asset set is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.AssetSet update = 2; + + // Remove operation: A resource name for the removed asset set is + // expected, in this format: + // `customers/{customer_id}/assetSets/{asset_set_id}` + string remove = 3; + } +} + +// Response message for an asset set mutate. +message MutateAssetSetsResponse { + // All results for the mutate. + repeated MutateAssetSetResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the asset set mutate. +message MutateAssetSetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated asset set with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.AssetSet asset_set = 2; +} diff --git a/google/ads/googleads/v9/services/batch_job_service.proto b/google/ads/googleads/v9/services/batch_job_service.proto new file mode 100644 index 000000000..aa63d7b28 --- /dev/null +++ b/google/ads/googleads/v9/services/batch_job_service.proto @@ -0,0 +1,286 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/batch_job.proto"; +import "google/ads/googleads/v9/services/google_ads_service.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BatchJobServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the BatchJobService. + +// Service to manage batch jobs. +service BatchJobService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Mutates a batch job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc MutateBatchJob(MutateBatchJobRequest) returns (MutateBatchJobResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/batchJobs:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } + + // Returns the batch job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetBatchJob(GetBatchJobRequest) returns (google.ads.googleads.v9.resources.BatchJob) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/batchJobs/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Returns the results of the batch job. The job must be done. + // Supports standard list paging. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [BatchJobError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListBatchJobResults(ListBatchJobResultsRequest) returns (ListBatchJobResultsResponse) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/batchJobs/*}:listResults" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Runs the batch job. + // + // The Operation.metadata field type is BatchJobMetadata. When finished, the + // long running operation will not contain errors or a response. Instead, use + // ListBatchJobResults to get the results of the job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [BatchJobError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc RunBatchJob(RunBatchJobRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v9/{resource_name=customers/*/batchJobs/*}:run" + body: "*" + }; + option (google.api.method_signature) = "resource_name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "google.ads.googleads.v9.resources.BatchJob.BatchJobMetadata" + }; + } + + // Add operations to the batch job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [BatchJobError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc AddBatchJobOperations(AddBatchJobOperationsRequest) returns (AddBatchJobOperationsResponse) { + option (google.api.http) = { + post: "/v9/{resource_name=customers/*/batchJobs/*}:addOperations" + body: "*" + }; + option (google.api.method_signature) = "resource_name,sequence_token,mutate_operations"; + option (google.api.method_signature) = "resource_name,mutate_operations"; + } +} + +// Request message for [BatchJobService.MutateBatchJob][google.ads.googleads.v9.services.BatchJobService.MutateBatchJob]. +message MutateBatchJobRequest { + // Required. The ID of the customer for which to create a batch job. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on an individual batch job. + BatchJobOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A single operation on a batch job. +message BatchJobOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new batch job. + google.ads.googleads.v9.resources.BatchJob create = 1; + } +} + +// Response message for [BatchJobService.MutateBatchJob][google.ads.googleads.v9.services.BatchJobService.MutateBatchJob]. +message MutateBatchJobResponse { + // The result for the mutate. + MutateBatchJobResult result = 1; +} + +// The result for the batch job mutate. +message MutateBatchJobResult { + // The resource name of the batch job. + string resource_name = 1; +} + +// Request message for [BatchJobService.GetBatchJob][google.ads.googleads.v9.services.BatchJobService.GetBatchJob]. +message GetBatchJobRequest { + // Required. The resource name of the batch job to get. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BatchJob" + } + ]; +} + +// Request message for [BatchJobService.RunBatchJob][google.ads.googleads.v9.services.BatchJobService.RunBatchJob]. +message RunBatchJobRequest { + // Required. The resource name of the BatchJob to run. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BatchJob" + } + ]; +} + +// Request message for [BatchJobService.AddBatchJobOperations][google.ads.googleads.v9.services.BatchJobService.AddBatchJobOperations]. +message AddBatchJobOperationsRequest { + // Required. The resource name of the batch job. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BatchJob" + } + ]; + + // A token used to enforce sequencing. + // + // The first AddBatchJobOperations request for a batch job should not set + // sequence_token. Subsequent requests must set sequence_token to the value of + // next_sequence_token received in the previous AddBatchJobOperations + // response. + string sequence_token = 2; + + // Required. The list of mutates being added. + // + // Operations can use negative integers as temp ids to signify dependencies + // between entities created in this batch job. For example, a customer with + // id = 1234 can create a campaign and an ad group in that same campaign by + // creating a campaign in the first operation with the resource name + // explicitly set to "customers/1234/campaigns/-1", and creating an ad group + // in the second operation with the campaign field also set to + // "customers/1234/campaigns/-1". + repeated MutateOperation mutate_operations = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [BatchJobService.AddBatchJobOperations][google.ads.googleads.v9.services.BatchJobService.AddBatchJobOperations]. +message AddBatchJobOperationsResponse { + // The total number of operations added so far for this batch job. + int64 total_operations = 1; + + // The sequence token to be used when calling AddBatchJobOperations again if + // more operations need to be added. The next AddBatchJobOperations request + // must set the sequence_token field to the value of this field. + string next_sequence_token = 2; +} + +// Request message for [BatchJobService.ListBatchJobResults][google.ads.googleads.v9.services.BatchJobService.ListBatchJobResults]. +message ListBatchJobResultsRequest { + // Required. The resource name of the batch job whose results are being listed. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BatchJob" + } + ]; + + // Token of the page to retrieve. If not specified, the first + // page of results will be returned. Use the value obtained from + // `next_page_token` in the previous response in order to request + // the next page of results. + string page_token = 2; + + // Number of elements to retrieve in a single page. + // When a page request is too large, the server may decide to + // further limit the number of returned resources. + int32 page_size = 3; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 4; +} + +// Response message for [BatchJobService.ListBatchJobResults][google.ads.googleads.v9.services.BatchJobService.ListBatchJobResults]. +message ListBatchJobResultsResponse { + // The list of rows that matched the query. + repeated BatchJobResult results = 1; + + // Pagination token used to retrieve the next page of results. + // Pass the content of this string as the `page_token` attribute of + // the next request. `next_page_token` is not returned for the last + // page. + string next_page_token = 2; +} + +// An individual batch job result. +message BatchJobResult { + // Index of the mutate operation. + int64 operation_index = 1; + + // Response for the mutate. + // May be empty if errors occurred. + MutateOperationResponse mutate_operation_response = 2; + + // Details of the errors when processing the operation. + google.rpc.Status status = 3; +} diff --git a/google/ads/googleads/v9/services/bidding_data_exclusion_service.proto b/google/ads/googleads/v9/services/bidding_data_exclusion_service.proto new file mode 100644 index 000000000..0e1deceae --- /dev/null +++ b/google/ads/googleads/v9/services/bidding_data_exclusion_service.proto @@ -0,0 +1,141 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/bidding_data_exclusion.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BiddingDataExclusionServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Service to manage bidding data exclusions. +service BiddingDataExclusionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested data exclusion in full detail. + rpc GetBiddingDataExclusion(GetBiddingDataExclusionRequest) returns (google.ads.googleads.v9.resources.BiddingDataExclusion) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/biddingDataExclusions/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes data exclusions. + // Operation statuses are returned. + rpc MutateBiddingDataExclusions(MutateBiddingDataExclusionsRequest) returns (MutateBiddingDataExclusionsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/biddingDataExclusions:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [BiddingDataExclusionService.GetBiddingDataExclusion][google.ads.googleads.v9.services.BiddingDataExclusionService.GetBiddingDataExclusion]. +message GetBiddingDataExclusionRequest { + // Required. The resource name of the data exclusion to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingDataExclusion" + } + ]; +} + +// Request message for +// [BiddingDataExclusionService.MutateBiddingDataExclusions][google.ads.googleads.v9.services.BiddingDataExclusionService.MutateBiddingDataExclusions]. +message MutateBiddingDataExclusionsRequest { + // Required. ID of the customer whose data exclusions are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual data exclusions. + repeated BiddingDataExclusionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on a data exclusion. +message BiddingDataExclusionOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new data + // exclusion. + google.ads.googleads.v9.resources.BiddingDataExclusion create = 1; + + // Update operation: The data exclusion is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.BiddingDataExclusion update = 2; + + // Remove operation: A resource name for the removed data exclusion + // is expected, in this format: + // + // `customers/{customer_id}/biddingDataExclusions/{data_exclusion_id}` + string remove = 3; + } +} + +// Response message for data exlusions mutate. +message MutateBiddingDataExclusionsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateBiddingDataExclusionsResult results = 2; +} + +// The result for the data exclusion mutate. +message MutateBiddingDataExclusionsResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated bidding data exclusion with only mutable fields after mutate. + // The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.BiddingDataExclusion bidding_data_exclusion = 2; +} diff --git a/google/ads/googleads/v9/services/bidding_seasonality_adjustment_service.proto b/google/ads/googleads/v9/services/bidding_seasonality_adjustment_service.proto new file mode 100644 index 000000000..27dd20e2c --- /dev/null +++ b/google/ads/googleads/v9/services/bidding_seasonality_adjustment_service.proto @@ -0,0 +1,141 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/bidding_seasonality_adjustment.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BiddingSeasonalityAdjustmentServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Service to manage bidding seasonality adjustments. +service BiddingSeasonalityAdjustmentService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested seasonality adjustment in full detail. + rpc GetBiddingSeasonalityAdjustment(GetBiddingSeasonalityAdjustmentRequest) returns (google.ads.googleads.v9.resources.BiddingSeasonalityAdjustment) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/biddingSeasonalityAdjustments/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes seasonality adjustments. + // Operation statuses are returned. + rpc MutateBiddingSeasonalityAdjustments(MutateBiddingSeasonalityAdjustmentsRequest) returns (MutateBiddingSeasonalityAdjustmentsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/biddingSeasonalityAdjustments:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [BiddingSeasonalityAdjustmentService.GetBiddingSeasonalityAdjustment][google.ads.googleads.v9.services.BiddingSeasonalityAdjustmentService.GetBiddingSeasonalityAdjustment]. +message GetBiddingSeasonalityAdjustmentRequest { + // Required. The resource name of the seasonality adjustment to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingSeasonalityAdjustment" + } + ]; +} + +// Request message for +// [BiddingSeasonalityAdjustmentService.MutateBiddingSeasonalityAdjustments][google.ads.googleads.v9.services.BiddingSeasonalityAdjustmentService.MutateBiddingSeasonalityAdjustments]. +message MutateBiddingSeasonalityAdjustmentsRequest { + // Required. ID of the customer whose seasonality adjustments are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual seasonality adjustments. + repeated BiddingSeasonalityAdjustmentOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on a seasonality adjustment. +message BiddingSeasonalityAdjustmentOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new seasonality + // adjustment. + google.ads.googleads.v9.resources.BiddingSeasonalityAdjustment create = 1; + + // Update operation: The seasonality adjustment is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.BiddingSeasonalityAdjustment update = 2; + + // Remove operation: A resource name for the removed seasonality adjustment + // is expected, in this format: + // + // `customers/{customer_id}/biddingSeasonalityAdjustments/{seasonality_adjustment_id}` + string remove = 3; + } +} + +// Response message for seasonality adjustments mutate. +message MutateBiddingSeasonalityAdjustmentsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateBiddingSeasonalityAdjustmentsResult results = 2; +} + +// The result for the seasonality adjustment mutate. +message MutateBiddingSeasonalityAdjustmentsResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated bidding seasonality adjustment with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.BiddingSeasonalityAdjustment bidding_seasonality_adjustment = 2; +} diff --git a/google/ads/googleads/v9/services/bidding_strategy_service.proto b/google/ads/googleads/v9/services/bidding_strategy_service.proto new file mode 100644 index 000000000..043bb65d0 --- /dev/null +++ b/google/ads/googleads/v9/services/bidding_strategy_service.proto @@ -0,0 +1,177 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/bidding_strategy.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategyServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Bidding Strategy service. + +// Service to manage bidding strategies. +service BiddingStrategyService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested bidding strategy in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetBiddingStrategy(GetBiddingStrategyRequest) returns (google.ads.googleads.v9.resources.BiddingStrategy) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/biddingStrategies/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes bidding strategies. Operation statuses are + // returned. + // + // List of thrown errors: + // [AdxError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [BiddingError]() + // [BiddingStrategyError]() + // [ContextError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateBiddingStrategies(MutateBiddingStrategiesRequest) returns (MutateBiddingStrategiesResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/biddingStrategies:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [BiddingStrategyService.GetBiddingStrategy][google.ads.googleads.v9.services.BiddingStrategyService.GetBiddingStrategy]. +message GetBiddingStrategyRequest { + // Required. The resource name of the bidding strategy to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingStrategy" + } + ]; +} + +// Request message for [BiddingStrategyService.MutateBiddingStrategies][google.ads.googleads.v9.services.BiddingStrategyService.MutateBiddingStrategies]. +message MutateBiddingStrategiesRequest { + // Required. The ID of the customer whose bidding strategies are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual bidding strategies. + repeated BiddingStrategyOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a bidding strategy. +message BiddingStrategyOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new bidding + // strategy. + google.ads.googleads.v9.resources.BiddingStrategy create = 1; + + // Update operation: The bidding strategy is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.BiddingStrategy update = 2; + + // Remove operation: A resource name for the removed bidding strategy is + // expected, in this format: + // + // `customers/{customer_id}/biddingStrategies/{bidding_strategy_id}` + string remove = 3; + } +} + +// Response message for bidding strategy mutate. +message MutateBiddingStrategiesResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateBiddingStrategyResult results = 2; +} + +// The result for the bidding strategy mutate. +message MutateBiddingStrategyResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated bidding strategy with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.BiddingStrategy bidding_strategy = 2; +} diff --git a/google/ads/googleads/v9/services/bidding_strategy_simulation_service.proto b/google/ads/googleads/v9/services/bidding_strategy_simulation_service.proto new file mode 100644 index 000000000..a6637a249 --- /dev/null +++ b/google/ads/googleads/v9/services/bidding_strategy_simulation_service.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/bidding_strategy_simulation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BiddingStrategySimulationServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the BiddingStrategySimulation service. + +// Service to fetch bidding strategy simulations. +service BiddingStrategySimulationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested bidding strategy simulation in full detail. + rpc GetBiddingStrategySimulation(GetBiddingStrategySimulationRequest) returns (google.ads.googleads.v9.resources.BiddingStrategySimulation) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/biddingStrategySimulations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [BiddingStrategySimulationService.GetBiddingStrategySimulation][google.ads.googleads.v9.services.BiddingStrategySimulationService.GetBiddingStrategySimulation]. +message GetBiddingStrategySimulationRequest { + // Required. The resource name of the bidding strategy simulation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BiddingStrategySimulation" + } + ]; +} diff --git a/google/ads/googleads/v9/services/billing_setup_service.proto b/google/ads/googleads/v9/services/billing_setup_service.proto new file mode 100644 index 000000000..eb6f5cfc4 --- /dev/null +++ b/google/ads/googleads/v9/services/billing_setup_service.proto @@ -0,0 +1,136 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/billing_setup.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "BillingSetupServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the BillingSetup service. + +// A service for designating the business entity responsible for accrued costs. +// +// A billing setup is associated with a payments account. Billing-related +// activity for all billing setups associated with a particular payments account +// will appear on a single invoice generated monthly. +// +// Mutates: +// The REMOVE operation cancels a pending billing setup. +// The CREATE operation creates a new billing setup. +service BillingSetupService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns a billing setup. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetBillingSetup(GetBillingSetupRequest) returns (google.ads.googleads.v9.resources.BillingSetup) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/billingSetups/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates a billing setup, or cancels an existing billing setup. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [BillingSetupError]() + // [DateError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateBillingSetup(MutateBillingSetupRequest) returns (MutateBillingSetupResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/billingSetups:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for +// [BillingSetupService.GetBillingSetup][google.ads.googleads.v9.services.BillingSetupService.GetBillingSetup]. +message GetBillingSetupRequest { + // Required. The resource name of the billing setup to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/BillingSetup" + } + ]; +} + +// Request message for billing setup mutate operations. +message MutateBillingSetupRequest { + // Required. Id of the customer to apply the billing setup mutate operation to. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform. + BillingSetupOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A single operation on a billing setup, which describes the cancellation of an +// existing billing setup. +message BillingSetupOperation { + // Only one of these operations can be set. "Update" operations are not + // supported. + oneof operation { + // Creates a billing setup. No resource name is expected for the new billing + // setup. + google.ads.googleads.v9.resources.BillingSetup create = 2; + + // Resource name of the billing setup to remove. A setup cannot be + // removed unless it is in a pending state or its scheduled start time is in + // the future. The resource name looks like + // `customers/{customer_id}/billingSetups/{billing_id}`. + string remove = 1; + } +} + +// Response message for a billing setup operation. +message MutateBillingSetupResponse { + // A result that identifies the resource affected by the mutate request. + MutateBillingSetupResult result = 1; +} + +// Result for a single billing setup mutate. +message MutateBillingSetupResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/campaign_asset_service.proto b/google/ads/googleads/v9/services/campaign_asset_service.proto new file mode 100644 index 000000000..1d44e1000 --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_asset_service.proto @@ -0,0 +1,163 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign_asset.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignAssetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CampaignAsset service. + +// Service to manage campaign assets. +service CampaignAssetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign asset in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignAsset(GetCampaignAssetRequest) returns (google.ads.googleads.v9.resources.CampaignAsset) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignAssets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign assets. Operation statuses are + // returned. + // + // List of thrown errors: + // [AssetLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [ContextError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [NotAllowlistedError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCampaignAssets(MutateCampaignAssetsRequest) returns (MutateCampaignAssetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignAssets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignAssetService.GetCampaignAsset][google.ads.googleads.v9.services.CampaignAssetService.GetCampaignAsset]. +message GetCampaignAssetRequest { + // Required. The resource name of the campaign asset to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignAsset" + } + ]; +} + +// Request message for [CampaignAssetService.MutateCampaignAssets][google.ads.googleads.v9.services.CampaignAssetService.MutateCampaignAssets]. +message MutateCampaignAssetsRequest { + // Required. The ID of the customer whose campaign assets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign assets. + repeated CampaignAssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign asset. +message CampaignAssetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign + // asset. + google.ads.googleads.v9.resources.CampaignAsset create = 1; + + // Update operation: The campaign asset is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.CampaignAsset update = 3; + + // Remove operation: A resource name for the removed campaign asset is + // expected, in this format: + // + // `customers/{customer_id}/campaignAssets/{campaign_id}~{asset_id}~{field_type}` + string remove = 2; + } +} + +// Response message for a campaign asset mutate. +message MutateCampaignAssetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; + + // All results for the mutate. + repeated MutateCampaignAssetResult results = 2; +} + +// The result for the campaign asset mutate. +message MutateCampaignAssetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign asset with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CampaignAsset campaign_asset = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_asset_set_service.proto b/google/ads/googleads/v9/services/campaign_asset_set_service.proto new file mode 100644 index 000000000..c1956d006 --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_asset_set_service.proto @@ -0,0 +1,112 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign_asset_set.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignAssetSetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CampaignAssetSet service. + +// Service to manage campaign asset set +service CampaignAssetSetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes campaign asset sets. Operation statuses are + // returned. + rpc MutateCampaignAssetSets(MutateCampaignAssetSetsRequest) returns (MutateCampaignAssetSetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignAssetSets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignAssetSetService.MutateCampaignAssetSets][google.ads.googleads.v9.services.CampaignAssetSetService.MutateCampaignAssetSets]. +message MutateCampaignAssetSetsRequest { + // Required. The ID of the customer whose campaign asset sets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign asset sets. + repeated CampaignAssetSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on a campaign asset set. +message CampaignAssetSetOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign asset + // set. + google.ads.googleads.v9.resources.CampaignAssetSet create = 1; + + // Remove operation: A resource name for the removed campaign asset set is + // expected, in this format: + // `customers/{customer_id}/campaignAssetSets/{campaign_id}~{asset_set_id}` + string remove = 2; + } +} + +// Response message for a campaign asset set mutate. +message MutateCampaignAssetSetsResponse { + // All results for the mutate. + repeated MutateCampaignAssetSetResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the campaign asset set mutate. +message MutateCampaignAssetSetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign asset set with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CampaignAssetSet campaign_asset_set = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_audience_view_service.proto b/google/ads/googleads/v9/services/campaign_audience_view_service.proto new file mode 100644 index 000000000..15f24521a --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_audience_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/campaign_audience_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignAudienceViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Campaign Audience View service. + +// Service to manage campaign audience views. +service CampaignAudienceViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign audience view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignAudienceView(GetCampaignAudienceViewRequest) returns (google.ads.googleads.v9.resources.CampaignAudienceView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignAudienceViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CampaignAudienceViewService.GetCampaignAudienceView][google.ads.googleads.v9.services.CampaignAudienceViewService.GetCampaignAudienceView]. +message GetCampaignAudienceViewRequest { + // Required. The resource name of the campaign audience view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignAudienceView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/campaign_bid_modifier_service.proto b/google/ads/googleads/v9/services/campaign_bid_modifier_service.proto new file mode 100644 index 000000000..9f8b99740 --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_bid_modifier_service.proto @@ -0,0 +1,174 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign_bid_modifier.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBidModifierServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Campaign Bid Modifier service. + +// Service to manage campaign bid modifiers. +service CampaignBidModifierService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign bid modifier in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignBidModifier(GetCampaignBidModifierRequest) returns (google.ads.googleads.v9.resources.CampaignBidModifier) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignBidModifiers/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign bid modifiers. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ContextError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateCampaignBidModifiers(MutateCampaignBidModifiersRequest) returns (MutateCampaignBidModifiersResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignBidModifiers:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignBidModifierService.GetCampaignBidModifier][google.ads.googleads.v9.services.CampaignBidModifierService.GetCampaignBidModifier]. +message GetCampaignBidModifierRequest { + // Required. The resource name of the campaign bid modifier to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBidModifier" + } + ]; +} + +// Request message for +// [CampaignBidModifierService.MutateCampaignBidModifiers][google.ads.googleads.v9.services.CampaignBidModifierService.MutateCampaignBidModifiers]. +message MutateCampaignBidModifiersRequest { + // Required. ID of the customer whose campaign bid modifiers are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign bid modifiers. + repeated CampaignBidModifierOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on a campaign bid modifier. +message CampaignBidModifierOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign bid + // modifier. + google.ads.googleads.v9.resources.CampaignBidModifier create = 1; + + // Update operation: The campaign bid modifier is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.CampaignBidModifier update = 2; + + // Remove operation: A resource name for the removed campaign bid modifier + // is expected, in this format: + // + // `customers/{customer_id}/CampaignBidModifiers/{campaign_id}~{criterion_id}` + string remove = 3; + } +} + +// Response message for campaign bid modifiers mutate. +message MutateCampaignBidModifiersResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignBidModifierResult results = 2; +} + +// The result for the criterion mutate. +message MutateCampaignBidModifierResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign bid modifier with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CampaignBidModifier campaign_bid_modifier = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_budget_service.proto b/google/ads/googleads/v9/services/campaign_budget_service.proto new file mode 100644 index 000000000..efd8d2c12 --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_budget_service.proto @@ -0,0 +1,167 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign_budget.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignBudgetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Campaign Budget service. + +// Service to manage campaign budgets. +service CampaignBudgetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Campaign Budget in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignBudget(GetCampaignBudgetRequest) returns (google.ads.googleads.v9.resources.CampaignBudget) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignBudgets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign budgets. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignBudgetError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [OperationAccessDeniedError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [StringLengthError]() + rpc MutateCampaignBudgets(MutateCampaignBudgetsRequest) returns (MutateCampaignBudgetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignBudgets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignBudgetService.GetCampaignBudget][google.ads.googleads.v9.services.CampaignBudgetService.GetCampaignBudget]. +message GetCampaignBudgetRequest { + // Required. The resource name of the campaign budget to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignBudget" + } + ]; +} + +// Request message for [CampaignBudgetService.MutateCampaignBudgets][google.ads.googleads.v9.services.CampaignBudgetService.MutateCampaignBudgets]. +message MutateCampaignBudgetsRequest { + // Required. The ID of the customer whose campaign budgets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign budgets. + repeated CampaignBudgetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign budget. +message CampaignBudgetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new budget. + google.ads.googleads.v9.resources.CampaignBudget create = 1; + + // Update operation: The campaign budget is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.CampaignBudget update = 2; + + // Remove operation: A resource name for the removed budget is expected, in + // this format: + // + // `customers/{customer_id}/campaignBudgets/{budget_id}` + string remove = 3; + } +} + +// Response message for campaign budget mutate. +message MutateCampaignBudgetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignBudgetResult results = 2; +} + +// The result for the campaign budget mutate. +message MutateCampaignBudgetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign budget with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CampaignBudget campaign_budget = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_conversion_goal_service.proto b/google/ads/googleads/v9/services/campaign_conversion_goal_service.proto new file mode 100644 index 000000000..c425f6e61 --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_conversion_goal_service.proto @@ -0,0 +1,89 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/campaign_conversion_goal.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignConversionGoalServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CampaignConversionGoal service. + +// Service to manage campaign conversion goal. +service CampaignConversionGoalService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes campaign conversion goals. Operation statuses + // are returned. + rpc MutateCampaignConversionGoals(MutateCampaignConversionGoalsRequest) returns (MutateCampaignConversionGoalsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignConversionGoals:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CampaignConversionGoalService.MutateCampaignConversionGoals][google.ads.googleads.v9.services.CampaignConversionGoalService.MutateCampaignConversionGoals]. +message MutateCampaignConversionGoalsRequest { + // Required. The ID of the customer whose campaign conversion goals are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign conversion goal. + repeated CampaignConversionGoalOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single operation (update) on a campaign conversion goal. +message CampaignConversionGoalOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 2; + + // The mutate operation. + oneof operation { + // Update operation: The customer conversion goal is expected to have a + // valid resource name. + google.ads.googleads.v9.resources.CampaignConversionGoal update = 1; + } +} + +// Response message for a campaign conversion goal mutate. +message MutateCampaignConversionGoalsResponse { + // All results for the mutate. + repeated MutateCampaignConversionGoalResult results = 1; +} + +// The result for the campaign conversion goal mutate. +message MutateCampaignConversionGoalResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/campaign_criterion_service.proto b/google/ads/googleads/v9/services/campaign_criterion_service.proto new file mode 100644 index 000000000..6049d6ff8 --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_criterion_service.proto @@ -0,0 +1,178 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign_criterion.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Campaign Criterion service. + +// Service to manage campaign criteria. +service CampaignCriterionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested criterion in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignCriterion(GetCampaignCriterionRequest) returns (google.ads.googleads.v9.resources.CampaignCriterion) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignCriteria/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes criteria. Operation statuses are returned. + // + // List of thrown errors: + // [AdxError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignCriterionError]() + // [CollectionSizeError]() + // [ContextError]() + // [CriterionError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [FunctionError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RegionCodeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateCampaignCriteria(MutateCampaignCriteriaRequest) returns (MutateCampaignCriteriaResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignCriteria:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignCriterionService.GetCampaignCriterion][google.ads.googleads.v9.services.CampaignCriterionService.GetCampaignCriterion]. +message GetCampaignCriterionRequest { + // Required. The resource name of the criterion to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignCriterion" + } + ]; +} + +// Request message for [CampaignCriterionService.MutateCampaignCriteria][google.ads.googleads.v9.services.CampaignCriterionService.MutateCampaignCriteria]. +message MutateCampaignCriteriaRequest { + // Required. The ID of the customer whose criteria are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual criteria. + repeated CampaignCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign criterion. +message CampaignCriterionOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new criterion. + google.ads.googleads.v9.resources.CampaignCriterion create = 1; + + // Update operation: The criterion is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.CampaignCriterion update = 2; + + // Remove operation: A resource name for the removed criterion is expected, + // in this format: + // + // `customers/{customer_id}/campaignCriteria/{campaign_id}~{criterion_id}` + string remove = 3; + } +} + +// Response message for campaign criterion mutate. +message MutateCampaignCriteriaResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignCriterionResult results = 2; +} + +// The result for the criterion mutate. +message MutateCampaignCriterionResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign criterion with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CampaignCriterion campaign_criterion = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_criterion_simulation_service.proto b/google/ads/googleads/v9/services/campaign_criterion_simulation_service.proto new file mode 100644 index 000000000..0b773be27 --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_criterion_simulation_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/campaign_criterion_simulation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCriterionSimulationServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CampaignCriterionSimulation service. + +// Service to fetch campaign criterion simulations. +service CampaignCriterionSimulationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign criterion simulation in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignCriterionSimulation(GetCampaignCriterionSimulationRequest) returns (google.ads.googleads.v9.resources.CampaignCriterionSimulation) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignCriterionSimulations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [CampaignCriterionSimulationService.GetCampaignCriterionSimulation][google.ads.googleads.v9.services.CampaignCriterionSimulationService.GetCampaignCriterionSimulation]. +message GetCampaignCriterionSimulationRequest { + // Required. The resource name of the campaign criterion simulation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignCriterionSimulation" + } + ]; +} diff --git a/google/ads/googleads/v9/services/campaign_customizer_service.proto b/google/ads/googleads/v9/services/campaign_customizer_service.proto new file mode 100644 index 000000000..fbfb42a05 --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_customizer_service.proto @@ -0,0 +1,113 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign_customizer.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignCustomizerServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CampaignCustomizer service. + +// Service to manage campaign customizer +service CampaignCustomizerService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes campaign customizers. Operation statuses are + // returned. + rpc MutateCampaignCustomizers(MutateCampaignCustomizersRequest) returns (MutateCampaignCustomizersResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignCustomizers:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CampaignCustomizerService.MutateCampaignCustomizers][google.ads.googleads.v9.services.CampaignCustomizerService.MutateCampaignCustomizers]. +message MutateCampaignCustomizersRequest { + // Required. The ID of the customer whose campaign customizers are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign customizers. + repeated CampaignCustomizerOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on an customizer attribute. +message CampaignCustomizerOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign + // customizer + google.ads.googleads.v9.resources.CampaignCustomizer create = 1; + + // Remove operation: A resource name for the removed campaign customizer is + // expected, in this format: + // `customers/{customer_id}/campaignCustomizers/{campaign_id}~{customizer_attribute_id}` + string remove = 2; + } +} + +// Response message for an campaign customizer mutate. +message MutateCampaignCustomizersResponse { + // All results for the mutate. + repeated MutateCampaignCustomizerResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the campaign customizer mutate. +message MutateCampaignCustomizerResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated CampaignCustomizer with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CampaignCustomizer campaign_customizer = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_draft_service.proto b/google/ads/googleads/v9/services/campaign_draft_service.proto new file mode 100644 index 000000000..75b914c5f --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_draft_service.proto @@ -0,0 +1,254 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign_draft.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignDraftServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Campaign Draft service. + +// Service to manage campaign drafts. +service CampaignDraftService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign draft in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignDraft(GetCampaignDraftRequest) returns (google.ads.googleads.v9.resources.CampaignDraft) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignDrafts/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign drafts. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignDraftError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCampaignDrafts(MutateCampaignDraftsRequest) returns (MutateCampaignDraftsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignDrafts:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } + + // Promotes the changes in a draft back to the base campaign. + // + // This method returns a Long Running Operation (LRO) indicating if the + // Promote is done. Use [Operations.GetOperation] to poll the LRO until it + // is done. Only a done status is returned in the response. See the status + // in the Campaign Draft resource to determine if the promotion was + // successful. If the LRO failed, use + // [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v9.services.CampaignDraftService.ListCampaignDraftAsyncErrors] to view the list of + // error reasons. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignDraftError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc PromoteCampaignDraft(PromoteCampaignDraftRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v9/{campaign_draft=customers/*/campaignDrafts/*}:promote" + body: "*" + }; + option (google.api.method_signature) = "campaign_draft"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "google.protobuf.Empty" + }; + } + + // Returns all errors that occurred during CampaignDraft promote. Throws an + // error if called before campaign draft is promoted. + // Supports standard list paging. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListCampaignDraftAsyncErrors(ListCampaignDraftAsyncErrorsRequest) returns (ListCampaignDraftAsyncErrorsResponse) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignDrafts/*}:listAsyncErrors" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CampaignDraftService.GetCampaignDraft][google.ads.googleads.v9.services.CampaignDraftService.GetCampaignDraft]. +message GetCampaignDraftRequest { + // Required. The resource name of the campaign draft to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignDraft" + } + ]; +} + +// Request message for [CampaignDraftService.MutateCampaignDrafts][google.ads.googleads.v9.services.CampaignDraftService.MutateCampaignDrafts]. +message MutateCampaignDraftsRequest { + // Required. The ID of the customer whose campaign drafts are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign drafts. + repeated CampaignDraftOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// Request message for [CampaignDraftService.PromoteCampaignDraft][google.ads.googleads.v9.services.CampaignDraftService.PromoteCampaignDraft]. +message PromoteCampaignDraftRequest { + // Required. The resource name of the campaign draft to promote. + string campaign_draft = 1 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but no Long Running Operation is created. + // Only errors are returned. + bool validate_only = 2; +} + +// A single operation (create, update, remove) on a campaign draft. +message CampaignDraftOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign + // draft. + google.ads.googleads.v9.resources.CampaignDraft create = 1; + + // Update operation: The campaign draft is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.CampaignDraft update = 2; + + // Remove operation: The campaign draft is expected to have a valid + // resource name, in this format: + // + // `customers/{customer_id}/campaignDrafts/{base_campaign_id}~{draft_id}` + string remove = 3; + } +} + +// Response message for campaign draft mutate. +message MutateCampaignDraftsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignDraftResult results = 2; +} + +// The result for the campaign draft mutate. +message MutateCampaignDraftResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign draft with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CampaignDraft campaign_draft = 2; +} + +// Request message for [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v9.services.CampaignDraftService.ListCampaignDraftAsyncErrors]. +message ListCampaignDraftAsyncErrorsRequest { + // Required. The name of the campaign draft from which to retrieve the async errors. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignDraft" + } + ]; + + // Token of the page to retrieve. If not specified, the first + // page of results will be returned. Use the value obtained from + // `next_page_token` in the previous response in order to request + // the next page of results. + string page_token = 2; + + // Number of elements to retrieve in a single page. + // When a page request is too large, the server may decide to + // further limit the number of returned resources. + int32 page_size = 3; +} + +// Response message for [CampaignDraftService.ListCampaignDraftAsyncErrors][google.ads.googleads.v9.services.CampaignDraftService.ListCampaignDraftAsyncErrors]. +message ListCampaignDraftAsyncErrorsResponse { + // Details of the errors when performing the asynchronous operation. + repeated google.rpc.Status errors = 1; + + // Pagination token used to retrieve the next page of results. + // Pass the content of this string as the `page_token` attribute of + // the next request. `next_page_token` is not returned for the last + // page. + string next_page_token = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_experiment_service.proto b/google/ads/googleads/v9/services/campaign_experiment_service.proto new file mode 100644 index 000000000..22198a4df --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_experiment_service.proto @@ -0,0 +1,382 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign_experiment.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/empty.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExperimentServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Campaign Experiment service. + +// CampaignExperimentService manages the life cycle of campaign experiments. +// It is used to create new experiments from drafts, modify experiment +// properties, promote changes in an experiment back to its base campaign, +// graduate experiments into new stand-alone campaigns, and to remove an +// experiment. +// +// An experiment consists of two variants or arms - the base campaign and the +// experiment campaign, directing a fixed share of traffic to each arm. +// A campaign experiment is created from a draft of changes to the base campaign +// and will be a snapshot of changes in the draft at the time of creation. +service CampaignExperimentService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign experiment in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignExperiment(GetCampaignExperimentRequest) returns (google.ads.googleads.v9.resources.CampaignExperiment) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignExperiments/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates a campaign experiment based on a campaign draft. The draft campaign + // will be forked into a real campaign (called the experiment campaign) that + // will begin serving ads if successfully created. + // + // The campaign experiment is created immediately with status INITIALIZING. + // This method return a long running operation that tracks the forking of the + // draft campaign. If the forking fails, a list of errors can be retrieved + // using the ListCampaignExperimentAsyncErrors method. The operation's + // metadata will be a StringValue containing the resource name of the created + // campaign experiment. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignExperimentError]() + // [DatabaseError]() + // [DateError]() + // [DateRangeError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + rpc CreateCampaignExperiment(CreateCampaignExperimentRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignExperiments:create" + body: "*" + }; + option (google.api.method_signature) = "customer_id,campaign_experiment"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "google.ads.googleads.v9.services.CreateCampaignExperimentMetadata" + }; + } + + // Updates campaign experiments. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignExperimentError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCampaignExperiments(MutateCampaignExperimentsRequest) returns (MutateCampaignExperimentsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignExperiments:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } + + // Graduates a campaign experiment to a full campaign. The base and experiment + // campaigns will start running independently with their own budgets. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignExperimentError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc GraduateCampaignExperiment(GraduateCampaignExperimentRequest) returns (GraduateCampaignExperimentResponse) { + option (google.api.http) = { + post: "/v9/{campaign_experiment=customers/*/campaignExperiments/*}:graduate" + body: "*" + }; + option (google.api.method_signature) = "campaign_experiment,campaign_budget"; + } + + // Promotes the changes in a experiment campaign back to the base campaign. + // + // The campaign experiment is updated immediately with status PROMOTING. + // This method return a long running operation that tracks the promoting of + // the experiment campaign. If the promoting fails, a list of errors can be + // retrieved using the ListCampaignExperimentAsyncErrors method. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc PromoteCampaignExperiment(PromoteCampaignExperimentRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v9/{campaign_experiment=customers/*/campaignExperiments/*}:promote" + body: "*" + }; + option (google.api.method_signature) = "campaign_experiment"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "google.protobuf.Empty" + }; + } + + // Immediately ends a campaign experiment, changing the experiment's scheduled + // end date and without waiting for end of day. End date is updated to be the + // time of the request. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignExperimentError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc EndCampaignExperiment(EndCampaignExperimentRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + post: "/v9/{campaign_experiment=customers/*/campaignExperiments/*}:end" + body: "*" + }; + option (google.api.method_signature) = "campaign_experiment"; + } + + // Returns all errors that occurred during CampaignExperiment create or + // promote (whichever occurred last). + // Supports standard list paging. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListCampaignExperimentAsyncErrors(ListCampaignExperimentAsyncErrorsRequest) returns (ListCampaignExperimentAsyncErrorsResponse) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignExperiments/*}:listAsyncErrors" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CampaignExperimentService.GetCampaignExperiment][google.ads.googleads.v9.services.CampaignExperimentService.GetCampaignExperiment]. +message GetCampaignExperimentRequest { + // Required. The resource name of the campaign experiment to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignExperiment" + } + ]; +} + +// Request message for [CampaignExperimentService.MutateCampaignExperiments][google.ads.googleads.v9.services.CampaignExperimentService.MutateCampaignExperiments]. +message MutateCampaignExperimentsRequest { + // Required. The ID of the customer whose campaign experiments are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign experiments. + repeated CampaignExperimentOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single update operation on a campaign experiment. +message CampaignExperimentOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 3; + + // The mutate operation. + oneof operation { + // Update operation: The campaign experiment is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.CampaignExperiment update = 1; + + // Remove operation: The campaign experiment is expected to have a valid + // resource name, in this format: + // + // `customers/{customer_id}/campaignExperiments/{campaign_experiment_id}` + string remove = 2; + } +} + +// Response message for campaign experiment mutate. +message MutateCampaignExperimentsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignExperimentResult results = 2; +} + +// The result for the campaign experiment mutate. +message MutateCampaignExperimentResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign experiment with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CampaignExperiment campaign_experiment = 2; +} + +// Request message for [CampaignExperimentService.CreateCampaignExperiment][google.ads.googleads.v9.services.CampaignExperimentService.CreateCampaignExperiment]. +message CreateCampaignExperimentRequest { + // Required. The ID of the customer whose campaign experiment is being created. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The campaign experiment to be created. + google.ads.googleads.v9.resources.CampaignExperiment campaign_experiment = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// Message used as metadata returned in Long Running Operations for +// CreateCampaignExperimentRequest +message CreateCampaignExperimentMetadata { + // Resource name of campaign experiment created. + string campaign_experiment = 1; +} + +// Request message for [CampaignExperimentService.GraduateCampaignExperiment][google.ads.googleads.v9.services.CampaignExperimentService.GraduateCampaignExperiment]. +message GraduateCampaignExperimentRequest { + // Required. The resource name of the campaign experiment to graduate. + string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Resource name of the budget to attach to the campaign graduated from the + // experiment. + string campaign_budget = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// Response message for campaign experiment graduate. +message GraduateCampaignExperimentResponse { + // The resource name of the campaign from the graduated experiment. + // This campaign is the same one as CampaignExperiment.experiment_campaign. + string graduated_campaign = 1; +} + +// Request message for [CampaignExperimentService.PromoteCampaignExperiment][google.ads.googleads.v9.services.CampaignExperimentService.PromoteCampaignExperiment]. +message PromoteCampaignExperimentRequest { + // Required. The resource name of the campaign experiment to promote. + string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but no Long Running Operation is created. + // Only errors are returned. + bool validate_only = 2; +} + +// Request message for [CampaignExperimentService.EndCampaignExperiment][google.ads.googleads.v9.services.CampaignExperimentService.EndCampaignExperiment]. +message EndCampaignExperimentRequest { + // Required. The resource name of the campaign experiment to end. + string campaign_experiment = 1 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 2; +} + +// Request message for +// [CampaignExperimentService.ListCampaignExperimentAsyncErrors][google.ads.googleads.v9.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors]. +message ListCampaignExperimentAsyncErrorsRequest { + // Required. The name of the campaign experiment from which to retrieve the async + // errors. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignExperiment" + } + ]; + + // Token of the page to retrieve. If not specified, the first + // page of results will be returned. Use the value obtained from + // `next_page_token` in the previous response in order to request + // the next page of results. + string page_token = 2; + + // Number of elements to retrieve in a single page. + // When a page request is too large, the server may decide to + // further limit the number of returned resources. + int32 page_size = 3; +} + +// Response message for +// [CampaignExperimentService.ListCampaignExperimentAsyncErrors][google.ads.googleads.v9.services.CampaignExperimentService.ListCampaignExperimentAsyncErrors]. +message ListCampaignExperimentAsyncErrorsResponse { + // Details of the errors when performing the asynchronous operation. + repeated google.rpc.Status errors = 1; + + // Pagination token used to retrieve the next page of results. + // Pass the content of this string as the `page_token` attribute of + // the next request. `next_page_token` is not returned for the last + // page. + string next_page_token = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_extension_setting_service.proto b/google/ads/googleads/v9/services/campaign_extension_setting_service.proto new file mode 100644 index 000000000..f39232a12 --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_extension_setting_service.proto @@ -0,0 +1,182 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign_extension_setting.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignExtensionSettingServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CampaignExtensionSetting service. + +// Service to manage campaign extension settings. +service CampaignExtensionSettingService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign extension setting in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignExtensionSetting(GetCampaignExtensionSettingRequest) returns (google.ads.googleads.v9.resources.CampaignExtensionSetting) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignExtensionSettings/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign extension settings. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [ExtensionSettingError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateCampaignExtensionSettings(MutateCampaignExtensionSettingsRequest) returns (MutateCampaignExtensionSettingsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignExtensionSettings:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CampaignExtensionSettingService.GetCampaignExtensionSetting][google.ads.googleads.v9.services.CampaignExtensionSettingService.GetCampaignExtensionSetting]. +message GetCampaignExtensionSettingRequest { + // Required. The resource name of the campaign extension setting to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignExtensionSetting" + } + ]; +} + +// Request message for +// [CampaignExtensionSettingService.MutateCampaignExtensionSettings][google.ads.googleads.v9.services.CampaignExtensionSettingService.MutateCampaignExtensionSettings]. +message MutateCampaignExtensionSettingsRequest { + // Required. The ID of the customer whose campaign extension settings are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign extension + // settings. + repeated CampaignExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign extension setting. +message CampaignExtensionSettingOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign + // extension setting. + google.ads.googleads.v9.resources.CampaignExtensionSetting create = 1; + + // Update operation: The campaign extension setting is expected to have a + // valid resource name. + google.ads.googleads.v9.resources.CampaignExtensionSetting update = 2; + + // Remove operation: A resource name for the removed campaign extension + // setting is expected, in this format: + // + // `customers/{customer_id}/campaignExtensionSettings/{campaign_id}~{extension_type}` + string remove = 3; + } +} + +// Response message for a campaign extension setting mutate. +message MutateCampaignExtensionSettingsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignExtensionSettingResult results = 2; +} + +// The result for the campaign extension setting mutate. +message MutateCampaignExtensionSettingResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign extension setting with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CampaignExtensionSetting campaign_extension_setting = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_feed_service.proto b/google/ads/googleads/v9/services/campaign_feed_service.proto new file mode 100644 index 000000000..e72851c1a --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_feed_service.proto @@ -0,0 +1,173 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign_feed.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignFeedServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CampaignFeed service. + +// Service to manage campaign feeds. +service CampaignFeedService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign feed in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignFeed(GetCampaignFeedRequest) returns (google.ads.googleads.v9.resources.CampaignFeed) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignFeeds/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaign feeds. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignFeedError]() + // [CollectionSizeError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FunctionError]() + // [FunctionParsingError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateCampaignFeeds(MutateCampaignFeedsRequest) returns (MutateCampaignFeedsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignFeeds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignFeedService.GetCampaignFeed][google.ads.googleads.v9.services.CampaignFeedService.GetCampaignFeed]. +message GetCampaignFeedRequest { + // Required. The resource name of the campaign feed to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignFeed" + } + ]; +} + +// Request message for [CampaignFeedService.MutateCampaignFeeds][google.ads.googleads.v9.services.CampaignFeedService.MutateCampaignFeeds]. +message MutateCampaignFeedsRequest { + // Required. The ID of the customer whose campaign feeds are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign feeds. + repeated CampaignFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign feed. +message CampaignFeedOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign feed. + google.ads.googleads.v9.resources.CampaignFeed create = 1; + + // Update operation: The campaign feed is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.CampaignFeed update = 2; + + // Remove operation: A resource name for the removed campaign feed is + // expected, in this format: + // + // `customers/{customer_id}/campaignFeeds/{campaign_id}~{feed_id}` + string remove = 3; + } +} + +// Response message for a campaign feed mutate. +message MutateCampaignFeedsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignFeedResult results = 2; +} + +// The result for the campaign feed mutate. +message MutateCampaignFeedResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign feed with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CampaignFeed campaign_feed = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_label_service.proto b/google/ads/googleads/v9/services/campaign_label_service.proto new file mode 100644 index 000000000..c493e8190 --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_label_service.proto @@ -0,0 +1,144 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/campaign_label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignLabelServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Campaign Label service. + +// Service to manage labels on campaigns. +service CampaignLabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign-label relationship in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignLabel(GetCampaignLabelRequest) returns (google.ads.googleads.v9.resources.CampaignLabel) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignLabels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates and removes campaign-label relationships. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [LabelError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCampaignLabels(MutateCampaignLabelsRequest) returns (MutateCampaignLabelsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignLabels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignLabelService.GetCampaignLabel][google.ads.googleads.v9.services.CampaignLabelService.GetCampaignLabel]. +message GetCampaignLabelRequest { + // Required. The resource name of the campaign-label relationship to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignLabel" + } + ]; +} + +// Request message for [CampaignLabelService.MutateCampaignLabels][google.ads.googleads.v9.services.CampaignLabelService.MutateCampaignLabels]. +message MutateCampaignLabelsRequest { + // Required. ID of the customer whose campaign-label relationships are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on campaign-label relationships. + repeated CampaignLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on a campaign-label relationship. +message CampaignLabelOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign-label + // relationship. + google.ads.googleads.v9.resources.CampaignLabel create = 1; + + // Remove operation: A resource name for the campaign-label relationship + // being removed, in this format: + // + // `customers/{customer_id}/campaignLabels/{campaign_id}~{label_id}` + string remove = 2; + } +} + +// Response message for a campaign labels mutate. +message MutateCampaignLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignLabelResult results = 2; +} + +// The result for a campaign label mutate. +message MutateCampaignLabelResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/campaign_service.proto b/google/ads/googleads/v9/services/campaign_service.proto new file mode 100644 index 000000000..5b7d380a4 --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_service.proto @@ -0,0 +1,183 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Campaign service. + +// Service to manage campaigns. +service CampaignService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaign(GetCampaignRequest) returns (google.ads.googleads.v9.resources.Campaign) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaigns/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes campaigns. Operation statuses are returned. + // + // List of thrown errors: + // [AdxError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [BiddingError]() + // [BiddingStrategyError]() + // [CampaignBudgetError]() + // [CampaignError]() + // [ContextError]() + // [DatabaseError]() + // [DateError]() + // [DateRangeError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotAllowlistedError]() + // [NotEmptyError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RegionCodeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SettingError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateCampaigns(MutateCampaignsRequest) returns (MutateCampaignsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaigns:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignService.GetCampaign][google.ads.googleads.v9.services.CampaignService.GetCampaign]. +message GetCampaignRequest { + // Required. The resource name of the campaign to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; +} + +// Request message for [CampaignService.MutateCampaigns][google.ads.googleads.v9.services.CampaignService.MutateCampaigns]. +message MutateCampaignsRequest { + // Required. The ID of the customer whose campaigns are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaigns. + repeated CampaignOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a campaign. +message CampaignOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign. + google.ads.googleads.v9.resources.Campaign create = 1; + + // Update operation: The campaign is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.Campaign update = 2; + + // Remove operation: A resource name for the removed campaign is + // expected, in this format: + // + // `customers/{customer_id}/campaigns/{campaign_id}` + string remove = 3; + } +} + +// Response message for campaign mutate. +message MutateCampaignsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignResult results = 2; +} + +// The result for the campaign mutate. +message MutateCampaignResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.Campaign campaign = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_shared_set_service.proto b/google/ads/googleads/v9/services/campaign_shared_set_service.proto new file mode 100644 index 000000000..ca8ff8c3f --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_shared_set_service.proto @@ -0,0 +1,164 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/campaign_shared_set.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSharedSetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Campaign Shared Set service. + +// Service to manage campaign shared sets. +service CampaignSharedSetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign shared set in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCampaignSharedSet(GetCampaignSharedSetRequest) returns (google.ads.googleads.v9.resources.CampaignSharedSet) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignSharedSets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes campaign shared sets. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CampaignSharedSetError]() + // [ContextError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateCampaignSharedSets(MutateCampaignSharedSetsRequest) returns (MutateCampaignSharedSetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/campaignSharedSets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CampaignSharedSetService.GetCampaignSharedSet][google.ads.googleads.v9.services.CampaignSharedSetService.GetCampaignSharedSet]. +message GetCampaignSharedSetRequest { + // Required. The resource name of the campaign shared set to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignSharedSet" + } + ]; +} + +// Request message for [CampaignSharedSetService.MutateCampaignSharedSets][google.ads.googleads.v9.services.CampaignSharedSetService.MutateCampaignSharedSets]. +message MutateCampaignSharedSetsRequest { + // Required. The ID of the customer whose campaign shared sets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual campaign shared sets. + repeated CampaignSharedSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on an campaign shared set. +message CampaignSharedSetOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new campaign + // shared set. + google.ads.googleads.v9.resources.CampaignSharedSet create = 1; + + // Remove operation: A resource name for the removed campaign shared set is + // expected, in this format: + // + // `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}` + string remove = 3; + } +} + +// Response message for a campaign shared set mutate. +message MutateCampaignSharedSetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCampaignSharedSetResult results = 2; +} + +// The result for the campaign shared set mutate. +message MutateCampaignSharedSetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated campaign shared set with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CampaignSharedSet campaign_shared_set = 2; +} diff --git a/google/ads/googleads/v9/services/campaign_simulation_service.proto b/google/ads/googleads/v9/services/campaign_simulation_service.proto new file mode 100644 index 000000000..92833873e --- /dev/null +++ b/google/ads/googleads/v9/services/campaign_simulation_service.proto @@ -0,0 +1,60 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/campaign_simulation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CampaignSimulationServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CampaignSimulation service. + +// Service to fetch campaign simulations. +service CampaignSimulationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested campaign simulation in full detail. + rpc GetCampaignSimulation(GetCampaignSimulationRequest) returns (google.ads.googleads.v9.resources.CampaignSimulation) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/campaignSimulations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [CampaignSimulationService.GetCampaignSimulation][google.ads.googleads.v9.services.CampaignSimulationService.GetCampaignSimulation]. +message GetCampaignSimulationRequest { + // Required. The resource name of the campaign simulation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CampaignSimulation" + } + ]; +} diff --git a/google/ads/googleads/v9/services/carrier_constant_service.proto b/google/ads/googleads/v9/services/carrier_constant_service.proto new file mode 100644 index 000000000..1047cf870 --- /dev/null +++ b/google/ads/googleads/v9/services/carrier_constant_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/carrier_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CarrierConstantServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the carrier constant service. + +// Service to fetch carrier constants. +service CarrierConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested carrier constant in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCarrierConstant(GetCarrierConstantRequest) returns (google.ads.googleads.v9.resources.CarrierConstant) { + option (google.api.http) = { + get: "/v9/{resource_name=carrierConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CarrierConstantService.GetCarrierConstant][google.ads.googleads.v9.services.CarrierConstantService.GetCarrierConstant]. +message GetCarrierConstantRequest { + // Required. Resource name of the carrier constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CarrierConstant" + } + ]; +} diff --git a/google/ads/googleads/v9/services/change_status_service.proto b/google/ads/googleads/v9/services/change_status_service.proto new file mode 100644 index 000000000..55056554b --- /dev/null +++ b/google/ads/googleads/v9/services/change_status_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/change_status.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ChangeStatusServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Change Status service. + +// Service to fetch change statuses. +service ChangeStatusService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested change status in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetChangeStatus(GetChangeStatusRequest) returns (google.ads.googleads.v9.resources.ChangeStatus) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/changeStatus/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for '[ChangeStatusService.GetChangeStatus][google.ads.googleads.v9.services.ChangeStatusService.GetChangeStatus]'. +message GetChangeStatusRequest { + // Required. The resource name of the change status to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ChangeStatus" + } + ]; +} diff --git a/google/ads/googleads/v9/services/click_view_service.proto b/google/ads/googleads/v9/services/click_view_service.proto new file mode 100644 index 000000000..125674328 --- /dev/null +++ b/google/ads/googleads/v9/services/click_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/click_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ClickViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the ClickView service. + +// Service to fetch click views. +service ClickViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested click view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetClickView(GetClickViewRequest) returns (google.ads.googleads.v9.resources.ClickView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/clickViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [ClickViewService.GetClickView][google.ads.googleads.v9.services.ClickViewService.GetClickView]. +message GetClickViewRequest { + // Required. The resource name of the click view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ClickView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/combined_audience_service.proto b/google/ads/googleads/v9/services/combined_audience_service.proto new file mode 100644 index 000000000..d5bf1503a --- /dev/null +++ b/google/ads/googleads/v9/services/combined_audience_service.proto @@ -0,0 +1,69 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/combined_audience.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CombinedAudienceServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Combined Audience service. + +// Service to manage combined audiences. This service can be used to list all +// your combined audiences with metadata, but won't show the structure and +// components of the combined audience. +service CombinedAudienceService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested combined audience in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCombinedAudience(GetCombinedAudienceRequest) returns (google.ads.googleads.v9.resources.CombinedAudience) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/combinedAudiences/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CombinedAudienceService.GetCombinedAudience][google.ads.googleads.v9.services.CombinedAudienceService.GetCombinedAudience]. +message GetCombinedAudienceRequest { + // Required. The resource name of the combined audience to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CombinedAudience" + } + ]; +} diff --git a/google/ads/googleads/v9/services/conversion_action_service.proto b/google/ads/googleads/v9/services/conversion_action_service.proto new file mode 100644 index 000000000..3f5cd493e --- /dev/null +++ b/google/ads/googleads/v9/services/conversion_action_service.proto @@ -0,0 +1,167 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/conversion_action.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionActionServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Conversion Action service. + +// Service to manage conversion actions. +service ConversionActionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested conversion action. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetConversionAction(GetConversionActionRequest) returns (google.ads.googleads.v9.resources.ConversionAction) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/conversionActions/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates or removes conversion actions. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ConversionActionError]() + // [CurrencyCodeError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [StringLengthError]() + rpc MutateConversionActions(MutateConversionActionsRequest) returns (MutateConversionActionsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/conversionActions:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [ConversionActionService.GetConversionAction][google.ads.googleads.v9.services.ConversionActionService.GetConversionAction]. +message GetConversionActionRequest { + // Required. The resource name of the conversion action to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionAction" + } + ]; +} + +// Request message for [ConversionActionService.MutateConversionActions][google.ads.googleads.v9.services.ConversionActionService.MutateConversionActions]. +message MutateConversionActionsRequest { + // Required. The ID of the customer whose conversion actions are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual conversion actions. + repeated ConversionActionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a conversion action. +message ConversionActionOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new conversion + // action. + google.ads.googleads.v9.resources.ConversionAction create = 1; + + // Update operation: The conversion action is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.ConversionAction update = 2; + + // Remove operation: A resource name for the removed conversion action is + // expected, in this format: + // + // `customers/{customer_id}/conversionActions/{conversion_action_id}` + string remove = 3; + } +} + +// Response message for [ConversionActionService.MutateConversionActions][google.ads.googleads.v9.services.ConversionActionService.MutateConversionActions]. +message MutateConversionActionsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateConversionActionResult results = 2; +} + +// The result for the conversion action mutate. +message MutateConversionActionResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated conversion action with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.ConversionAction conversion_action = 2; +} diff --git a/google/ads/googleads/v9/services/conversion_adjustment_upload_service.proto b/google/ads/googleads/v9/services/conversion_adjustment_upload_service.proto new file mode 100644 index 000000000..12556b711 --- /dev/null +++ b/google/ads/googleads/v9/services/conversion_adjustment_upload_service.proto @@ -0,0 +1,200 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/offline_user_data.proto"; +import "google/ads/googleads/v9/enums/conversion_adjustment_type.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionAdjustmentUploadServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Service to upload conversion adjustments. +service ConversionAdjustmentUploadService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Processes the given conversion adjustments. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [PartialFailureError]() + // [QuotaError]() + // [RequestError]() + rpc UploadConversionAdjustments(UploadConversionAdjustmentsRequest) returns (UploadConversionAdjustmentsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:uploadConversionAdjustments" + body: "*" + }; + option (google.api.method_signature) = "customer_id,conversion_adjustments,partial_failure"; + } +} + +// Request message for +// [ConversionAdjustmentUploadService.UploadConversionAdjustments][google.ads.googleads.v9.services.ConversionAdjustmentUploadService.UploadConversionAdjustments]. +message UploadConversionAdjustmentsRequest { + // Required. The ID of the customer performing the upload. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The conversion adjustments that are being uploaded. + repeated ConversionAdjustment conversion_adjustments = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried out + // in one transaction if and only if they are all valid. This should always be + // set to true. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// Response message for +// [ConversionAdjustmentUploadService.UploadConversionAdjustments][google.ads.googleads.v9.services.ConversionAdjustmentUploadService.UploadConversionAdjustments]. +message UploadConversionAdjustmentsResponse { + // Errors that pertain to conversion adjustment failures in the partial + // failure mode. Returned when all errors occur inside the adjustments. If any + // errors occur outside the adjustments (e.g. auth errors), we return an RPC + // level error. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + google.rpc.Status partial_failure_error = 1; + + // Returned for successfully processed conversion adjustments. Proto will be + // empty for rows that received an error. Results are not returned when + // validate_only is true. + repeated ConversionAdjustmentResult results = 2; +} + +// A conversion adjustment. +message ConversionAdjustment { + // For adjustments, uniquely identifies a conversion that was reported + // without an order ID specified. If the adjustment_type is ENHANCEMENT, this + // value is optional but may be set in addition to the order_id. + GclidDateTimePair gclid_date_time_pair = 12; + + // The order ID of the conversion to be adjusted. If the conversion was + // reported with an order ID specified, that order ID must be used as the + // identifier here. The order ID is required for enhancements. + optional string order_id = 13; + + // Resource name of the conversion action associated with this conversion + // adjustment. Note: Although this resource name consists of a customer id and + // a conversion action id, validation will ignore the customer id and use the + // conversion action id as the sole identifier of the conversion action. + optional string conversion_action = 8; + + // The date time at which the adjustment occurred. Must be after the + // conversion_date_time. The timezone must be specified. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string adjustment_date_time = 9; + + // The adjustment type. + google.ads.googleads.v9.enums.ConversionAdjustmentTypeEnum.ConversionAdjustmentType adjustment_type = 5; + + // Information needed to restate the conversion's value. + // Required for restatements. Should not be supplied for retractions. An error + // will be returned if provided for a retraction. + // NOTE: If you want to upload a second restatement with a different adjusted + // value, it must have a new, more recent, adjustment occurrence time. + // Otherwise, it will be treated as a duplicate of the previous restatement + // and ignored. + RestatementValue restatement_value = 6; + + // The user identifiers to enhance the original conversion. + // ConversionAdjustmentUploadService only accepts user identifiers in + // enhancements. The maximum number of user identifiers for each + // enhancement is 5. + repeated google.ads.googleads.v9.common.UserIdentifier user_identifiers = 10; + + // The user agent to enhance the original conversion. This can be found in + // your user's HTTP request header when they convert on your web page. + // Example, "Mozilla/5.0 (iPhone; CPU iPhone OS 12_2 like Mac OS X)". User + // agent can only be specified in enhancements with user identifiers. This + // should match the user agent of the request that sent the original + // conversion so the conversion and its enhancement are either both attributed + // as same-device or both attributed as cross-device. + optional string user_agent = 11; +} + +// Contains information needed to restate a conversion's value. +message RestatementValue { + // The restated conversion value. This is the value of the conversion after + // restatement. For example, to change the value of a conversion from 100 to + // 70, an adjusted value of 70 should be reported. + // NOTE: If you want to upload a second restatement with a different adjusted + // value, it must have a new, more recent, adjustment occurrence time. + // Otherwise, it will be treated as a duplicate of the previous restatement + // and ignored. + optional double adjusted_value = 3; + + // The currency of the restated value. If not provided, then the default + // currency from the conversion action is used, and if that is not set then + // the account currency is used. This is the ISO 4217 3-character currency + // code e.g. USD or EUR. + optional string currency_code = 4; +} + +// Uniquely identifies a conversion that was reported without an order ID +// specified. +message GclidDateTimePair { + // Google click ID (gclid) associated with the original conversion for this + // adjustment. + optional string gclid = 3; + + // The date time at which the original conversion for this adjustment + // occurred. The timezone must be specified. The format is "yyyy-mm-dd + // hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string conversion_date_time = 4; +} + +// Information identifying a successfully processed ConversionAdjustment. +message ConversionAdjustmentResult { + // The gclid and conversion date time of the conversion. + GclidDateTimePair gclid_date_time_pair = 9; + + // The order ID of the conversion to be adjusted. + string order_id = 10; + + // Resource name of the conversion action associated with this conversion + // adjustment. + optional string conversion_action = 7; + + // The date time at which the adjustment occurred. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string adjustment_date_time = 8; + + // The adjustment type. + google.ads.googleads.v9.enums.ConversionAdjustmentTypeEnum.ConversionAdjustmentType adjustment_type = 5; +} diff --git a/google/ads/googleads/v9/services/conversion_custom_variable_service.proto b/google/ads/googleads/v9/services/conversion_custom_variable_service.proto new file mode 100644 index 000000000..f8e565232 --- /dev/null +++ b/google/ads/googleads/v9/services/conversion_custom_variable_service.proto @@ -0,0 +1,158 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/conversion_custom_variable.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionCustomVariableServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Conversion Custom Variable service. + +// Service to manage conversion custom variables. +service ConversionCustomVariableService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested conversion custom variable. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetConversionCustomVariable(GetConversionCustomVariableRequest) returns (google.ads.googleads.v9.resources.ConversionCustomVariable) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/conversionCustomVariables/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates conversion custom variables. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ConversionCustomVariableError]() + // [DatabaseError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateConversionCustomVariables(MutateConversionCustomVariablesRequest) returns (MutateConversionCustomVariablesResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/conversionCustomVariables:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [ConversionCustomVariableService.GetConversionCustomVariable][google.ads.googleads.v9.services.ConversionCustomVariableService.GetConversionCustomVariable]. +message GetConversionCustomVariableRequest { + // Required. The resource name of the conversion custom variable to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionCustomVariable" + } + ]; +} + +// Request message for +// [ConversionCustomVariableService.MutateConversionCustomVariables][google.ads.googleads.v9.services.ConversionCustomVariableService.MutateConversionCustomVariables]. +message MutateConversionCustomVariablesRequest { + // Required. The ID of the customer whose conversion custom variables are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual conversion custom + // variables. + repeated ConversionCustomVariableOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update) on a conversion custom variable. +message ConversionCustomVariableOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 3; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new conversion + // custom variable. + google.ads.googleads.v9.resources.ConversionCustomVariable create = 1; + + // Update operation: The conversion custom variable is expected to have a + // valid resource name. + google.ads.googleads.v9.resources.ConversionCustomVariable update = 2; + } +} + +// Response message for +// [ConversionCustomVariableService.MutateConversionCustomVariables][google.ads.googleads.v9.services.ConversionCustomVariableService.MutateConversionCustomVariables]. +message MutateConversionCustomVariablesResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; + + // All results for the mutate. + repeated MutateConversionCustomVariableResult results = 2; +} + +// The result for the conversion custom variable mutate. +message MutateConversionCustomVariableResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated conversion custom variable with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.ConversionCustomVariable conversion_custom_variable = 2; +} diff --git a/google/ads/googleads/v9/services/conversion_goal_campaign_config_service.proto b/google/ads/googleads/v9/services/conversion_goal_campaign_config_service.proto new file mode 100644 index 000000000..cb47b21a4 --- /dev/null +++ b/google/ads/googleads/v9/services/conversion_goal_campaign_config_service.proto @@ -0,0 +1,100 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/conversion_goal_campaign_config.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionGoalCampaignConfigServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the ConversionGoalCampaignConfig service. + +// Service to manage conversion goal campaign config. +service ConversionGoalCampaignConfigService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes conversion goal campaign config. Operation + // statuses are returned. + rpc MutateConversionGoalCampaignConfigs(MutateConversionGoalCampaignConfigsRequest) returns (MutateConversionGoalCampaignConfigsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/conversionGoalCampaignConfigs:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [ConversionGoalCampaignConfigService.MutateConversionGoalCampaignConfig][]. +message MutateConversionGoalCampaignConfigsRequest { + // Required. The ID of the customer whose custom conversion goals are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual conversion goal campaign + // config. + repeated ConversionGoalCampaignConfigOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 4; +} + +// A single operation (update) on a conversion goal campaign config. +message ConversionGoalCampaignConfigOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 2; + + // The mutate operation. + oneof operation { + // Update operation: The conversion goal campaign config is expected to have + // a valid resource name. + google.ads.googleads.v9.resources.ConversionGoalCampaignConfig update = 1; + } +} + +// Response message for a conversion goal campaign config mutate. +message MutateConversionGoalCampaignConfigsResponse { + // All results for the mutate. + repeated MutateConversionGoalCampaignConfigResult results = 1; +} + +// The result for the conversion goal campaign config mutate. +message MutateConversionGoalCampaignConfigResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated ConversionGoalCampaignConfig with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.ConversionGoalCampaignConfig conversion_goal_campaign_config = 2; +} diff --git a/google/ads/googleads/v9/services/conversion_upload_service.proto b/google/ads/googleads/v9/services/conversion_upload_service.proto new file mode 100644 index 000000000..a5ce69b2e --- /dev/null +++ b/google/ads/googleads/v9/services/conversion_upload_service.proto @@ -0,0 +1,343 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/offline_user_data.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionUploadServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Service to upload conversions. +service ConversionUploadService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Processes the given click conversions. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ConversionUploadError]() + // [HeaderError]() + // [InternalError]() + // [PartialFailureError]() + // [QuotaError]() + // [RequestError]() + rpc UploadClickConversions(UploadClickConversionsRequest) returns (UploadClickConversionsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:uploadClickConversions" + body: "*" + }; + option (google.api.method_signature) = "customer_id,conversions,partial_failure"; + } + + // Processes the given call conversions. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [PartialFailureError]() + // [QuotaError]() + // [RequestError]() + rpc UploadCallConversions(UploadCallConversionsRequest) returns (UploadCallConversionsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:uploadCallConversions" + body: "*" + }; + option (google.api.method_signature) = "customer_id,conversions,partial_failure"; + } +} + +// Request message for [ConversionUploadService.UploadClickConversions][google.ads.googleads.v9.services.ConversionUploadService.UploadClickConversions]. +message UploadClickConversionsRequest { + // Required. The ID of the customer performing the upload. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The conversions that are being uploaded. + repeated ClickConversion conversions = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // This should always be set to true. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// Response message for [ConversionUploadService.UploadClickConversions][google.ads.googleads.v9.services.ConversionUploadService.UploadClickConversions]. +message UploadClickConversionsResponse { + // Errors that pertain to conversion failures in the partial failure mode. + // Returned when all errors occur inside the conversions. If any errors occur + // outside the conversions (e.g. auth errors), we return an RPC level error. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + google.rpc.Status partial_failure_error = 1; + + // Returned for successfully processed conversions. Proto will be empty for + // rows that received an error. Results are not returned when validate_only is + // true. + repeated ClickConversionResult results = 2; +} + +// Request message for [ConversionUploadService.UploadCallConversions][google.ads.googleads.v9.services.ConversionUploadService.UploadCallConversions]. +message UploadCallConversionsRequest { + // Required. The ID of the customer performing the upload. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The conversions that are being uploaded. + repeated CallConversion conversions = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // This should always be set to true. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + bool partial_failure = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// Response message for [ConversionUploadService.UploadCallConversions][google.ads.googleads.v9.services.ConversionUploadService.UploadCallConversions]. +message UploadCallConversionsResponse { + // Errors that pertain to conversion failures in the partial failure mode. + // Returned when all errors occur inside the conversions. If any errors occur + // outside the conversions (e.g. auth errors), we return an RPC level error. + // See + // https://developers.google.com/google-ads/api/docs/best-practices/partial-failures + // for more information about partial failure. + google.rpc.Status partial_failure_error = 1; + + // Returned for successfully processed conversions. Proto will be empty for + // rows that received an error. Results are not returned when validate_only is + // true. + repeated CallConversionResult results = 2; +} + +// A click conversion. +message ClickConversion { + // The Google click ID (gclid) associated with this conversion. + optional string gclid = 9; + + // The click identifier for clicks associated with app conversions and + // originating from iOS devices starting with iOS14. + string gbraid = 18; + + // The click identifier for clicks associated with web conversions and + // originating from iOS devices starting with iOS14. + string wbraid = 19; + + // Resource name of the conversion action associated with this conversion. + // Note: Although this resource name consists of a customer id and a + // conversion action id, validation will ignore the customer id and use the + // conversion action id as the sole identifier of the conversion action. + optional string conversion_action = 10; + + // The date time at which the conversion occurred. Must be after + // the click time. The timezone must be specified. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. “2019-01-01 12:32:45-08:00”. + optional string conversion_date_time = 11; + + // The value of the conversion for the advertiser. + optional double conversion_value = 12; + + // Currency associated with the conversion value. This is the ISO 4217 + // 3-character currency code. For example: USD, EUR. + optional string currency_code = 13; + + // The order ID associated with the conversion. An order id can only be used + // for one conversion per conversion action. + optional string order_id = 14; + + // Additional data about externally attributed conversions. This field + // is required for conversions with an externally attributed conversion + // action, but should not be set otherwise. + ExternalAttributionData external_attribution_data = 7; + + // The custom variables associated with this conversion. + repeated CustomVariable custom_variables = 15; + + // The cart data associated with this conversion. + CartData cart_data = 16; + + // The user identifiers associated with this conversion. Only hashed_email and + // hashed_phone_number are supported for conversion uploads. The maximum + // number of user identifiers for each conversion is 5. + repeated google.ads.googleads.v9.common.UserIdentifier user_identifiers = 17; +} + +// A call conversion. +message CallConversion { + // The caller id from which this call was placed. Caller id is expected to be + // in E.164 format with preceding '+' sign. e.g. "+16502531234". + optional string caller_id = 7; + + // The date time at which the call occurred. The timezone must be specified. + // The format is "yyyy-mm-dd hh:mm:ss+|-hh:mm", + // e.g. "2019-01-01 12:32:45-08:00". + optional string call_start_date_time = 8; + + // Resource name of the conversion action associated with this conversion. + // Note: Although this resource name consists of a customer id and a + // conversion action id, validation will ignore the customer id and use the + // conversion action id as the sole identifier of the conversion action. + optional string conversion_action = 9; + + // The date time at which the conversion occurred. Must be after the call + // time. The timezone must be specified. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string conversion_date_time = 10; + + // The value of the conversion for the advertiser. + optional double conversion_value = 11; + + // Currency associated with the conversion value. This is the ISO 4217 + // 3-character currency code. For example: USD, EUR. + optional string currency_code = 12; + + // The custom variables associated with this conversion. + repeated CustomVariable custom_variables = 13; +} + +// Contains additional information about externally attributed conversions. +message ExternalAttributionData { + // Represents the fraction of the conversion that is attributed to the + // Google Ads click. + optional double external_attribution_credit = 3; + + // Specifies the attribution model name. + optional string external_attribution_model = 4; +} + +// Identifying information for a successfully processed ClickConversion. +message ClickConversionResult { + // The Google Click ID (gclid) associated with this conversion. + optional string gclid = 4; + + // The click identifier for clicks associated with app conversions and + // originating from iOS devices starting with iOS14. + string gbraid = 8; + + // The click identifier for clicks associated with web conversions and + // originating from iOS devices starting with iOS14. + string wbraid = 9; + + // Resource name of the conversion action associated with this conversion. + optional string conversion_action = 5; + + // The date time at which the conversion occurred. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. “2019-01-01 12:32:45-08:00”. + optional string conversion_date_time = 6; + + // The user identifiers associated with this conversion. Only hashed_email and + // hashed_phone_number are supported for conversion uploads. The maximum + // number of user identifiers for each conversion is 5. + repeated google.ads.googleads.v9.common.UserIdentifier user_identifiers = 7; +} + +// Identifying information for a successfully processed CallConversionUpload. +message CallConversionResult { + // The caller id from which this call was placed. Caller id is expected to be + // in E.164 format with preceding '+' sign. + optional string caller_id = 5; + + // The date time at which the call occurred. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string call_start_date_time = 6; + + // Resource name of the conversion action associated with this conversion. + optional string conversion_action = 7; + + // The date time at which the conversion occurred. The format is + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string conversion_date_time = 8; +} + +// A custom variable. +message CustomVariable { + // Resource name of the custom variable associated with this conversion. + // Note: Although this resource name consists of a customer id and a + // conversion custom variable id, validation will ignore the customer id and + // use the conversion custom variable id as the sole identifier of the + // conversion custom variable. + string conversion_custom_variable = 1 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionCustomVariable" + }]; + + // The value string of this custom variable. + // The value of the custom variable should not contain private customer data, + // such as email addresses or phone numbers. + string value = 2; +} + +// Contains additional information about cart data. +message CartData { + // Contains data of the items purchased. + message Item { + // The shopping id of the item. Must be equal to the Merchant Center product + // identifier. + string product_id = 1; + + // Number of items sold. + int32 quantity = 2; + + // Unit price excluding tax, shipping, and any transaction + // level discounts. The currency code is the same as that in the + // ClickConversion message. + double unit_price = 3; + } + + // The Merchant Center ID where the items are uploaded. + int64 merchant_id = 6; + + // The country code associated with the feed where the items are uploaded. + string feed_country_code = 2; + + // The language code associated with the feed where the items are uploaded. + string feed_language_code = 3; + + // Sum of all transaction level discounts, such as free shipping and + // coupon discounts for the whole cart. The currency code is the same + // as that in the ClickConversion message. + double local_transaction_cost = 4; + + // Data of the items purchased. + repeated Item items = 5; +} diff --git a/google/ads/googleads/v9/services/conversion_value_rule_service.proto b/google/ads/googleads/v9/services/conversion_value_rule_service.proto new file mode 100644 index 000000000..6c47c9540 --- /dev/null +++ b/google/ads/googleads/v9/services/conversion_value_rule_service.proto @@ -0,0 +1,144 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/conversion_value_rule.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Conversion Value Rule service. + +// Service to manage conversion value rules. +service ConversionValueRuleService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested conversion value rule. + rpc GetConversionValueRule(GetConversionValueRuleRequest) returns (google.ads.googleads.v9.resources.ConversionValueRule) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/conversionValueRules/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes conversion value rules. Operation statuses are + // returned. + rpc MutateConversionValueRules(MutateConversionValueRulesRequest) returns (MutateConversionValueRulesResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/conversionValueRules:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [ConversionValueRuleService.GetConversionValueRule][google.ads.googleads.v9.services.ConversionValueRuleService.GetConversionValueRule]. +message GetConversionValueRuleRequest { + // Required. The resource name of the conversion value rule to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionValueRule" + } + ]; +} + +// Request message for +// [ConversionValueRuleService.MutateConversionValueRules][google.ads.googleads.v9.services.ConversionValueRuleService.MutateConversionValueRules]. +message MutateConversionValueRulesRequest { + // Required. The ID of the customer whose conversion value rules are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual conversion value rules. + repeated ConversionValueRuleOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 5; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 4; +} + +// A single operation (create, update, remove) on a conversion value rule. +message ConversionValueRuleOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new conversion + // value rule. + google.ads.googleads.v9.resources.ConversionValueRule create = 1; + + // Update operation: The conversion value rule is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.ConversionValueRule update = 2; + + // Remove operation: A resource name for the removed conversion value rule + // is expected, in this format: + // + // `customers/{customer_id}/conversionValueRules/{conversion_value_rule_id}` + string remove = 3; + } +} + +// Response message for +// [ConversionValueRuleService.MutateConversionValueRules][google.ads.googleads.v9.services.ConversionValueRuleService.MutateConversionValueRules]. +message MutateConversionValueRulesResponse { + // All results for the mutate. + repeated MutateConversionValueRuleResult results = 2; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; +} + +// The result for the conversion value rule mutate. +message MutateConversionValueRuleResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated conversion value rule with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.ConversionValueRule conversion_value_rule = 2; +} diff --git a/google/ads/googleads/v9/services/conversion_value_rule_set_service.proto b/google/ads/googleads/v9/services/conversion_value_rule_set_service.proto new file mode 100644 index 000000000..c3ef6b375 --- /dev/null +++ b/google/ads/googleads/v9/services/conversion_value_rule_set_service.proto @@ -0,0 +1,144 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/conversion_value_rule_set.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ConversionValueRuleSetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Conversion Value Rule Set service. + +// Service to manage conversion value rule sets. +service ConversionValueRuleSetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested conversion value rule set. + rpc GetConversionValueRuleSet(GetConversionValueRuleSetRequest) returns (google.ads.googleads.v9.resources.ConversionValueRuleSet) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/conversionValueRuleSets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates or removes conversion value rule sets. Operation statuses + // are returned. + rpc MutateConversionValueRuleSets(MutateConversionValueRuleSetsRequest) returns (MutateConversionValueRuleSetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/conversionValueRuleSets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [ConversionValueRuleSetService.GetConversionValueRuleSet][google.ads.googleads.v9.services.ConversionValueRuleSetService.GetConversionValueRuleSet]. +message GetConversionValueRuleSetRequest { + // Required. The resource name of the conversion value rule set to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ConversionValueRuleSet" + } + ]; +} + +// Request message for +// [ConversionValueRuleSetService.MutateConversionValueRuleSets][google.ads.googleads.v9.services.ConversionValueRuleSetService.MutateConversionValueRuleSets]. +message MutateConversionValueRuleSetsRequest { + // Required. The ID of the customer whose conversion value rule sets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual conversion value rule sets. + repeated ConversionValueRuleSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 5; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 4; +} + +// A single operation (create, update, remove) on a conversion value rule set. +message ConversionValueRuleSetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new conversion + // value rule set. + google.ads.googleads.v9.resources.ConversionValueRuleSet create = 1; + + // Update operation: The conversion value rule set is expected to have a + // valid resource name. + google.ads.googleads.v9.resources.ConversionValueRuleSet update = 2; + + // Remove operation: A resource name for the removed conversion value rule + // set is expected, in this format: + // + // `customers/{customer_id}/conversionValueRuleSets/{conversion_value_rule_set_id}` + string remove = 3; + } +} + +// Response message for +// [ConversionValueRuleSetService.MutateConversionValueRuleSets][google.ads.googleads.v9.services.ConversionValueRuleSetService.MutateConversionValueRuleSets]. +message MutateConversionValueRuleSetsResponse { + // All results for the mutate. + repeated MutateConversionValueRuleSetResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the conversion value rule set mutate. +message MutateConversionValueRuleSetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated conversion value rule set with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.ConversionValueRuleSet conversion_value_rule_set = 2; +} diff --git a/google/ads/googleads/v9/services/currency_constant_service.proto b/google/ads/googleads/v9/services/currency_constant_service.proto new file mode 100644 index 000000000..c00ccd428 --- /dev/null +++ b/google/ads/googleads/v9/services/currency_constant_service.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/currency_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CurrencyConstantServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Service to fetch currency constants. +service CurrencyConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested currency constant. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCurrencyConstant(GetCurrencyConstantRequest) returns (google.ads.googleads.v9.resources.CurrencyConstant) { + option (google.api.http) = { + get: "/v9/{resource_name=currencyConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CurrencyConstantService.GetCurrencyConstant][google.ads.googleads.v9.services.CurrencyConstantService.GetCurrencyConstant]. +message GetCurrencyConstantRequest { + // Required. Resource name of the currency constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CurrencyConstant" + } + ]; +} diff --git a/google/ads/googleads/v9/services/custom_audience_service.proto b/google/ads/googleads/v9/services/custom_audience_service.proto new file mode 100644 index 000000000..01de27406 --- /dev/null +++ b/google/ads/googleads/v9/services/custom_audience_service.proto @@ -0,0 +1,140 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/custom_audience.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomAudienceServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Custom Audience service. + +// Service to manage custom audiences. +service CustomAudienceService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested custom audience in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomAudience(GetCustomAudienceRequest) returns (google.ads.googleads.v9.resources.CustomAudience) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customAudiences/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates custom audiences. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CustomAudienceError]() + // [CustomInterestError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [OperationAccessDeniedError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomAudiences(MutateCustomAudiencesRequest) returns (MutateCustomAudiencesResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customAudiences:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CustomAudienceService.GetCustomAudience][google.ads.googleads.v9.services.CustomAudienceService.GetCustomAudience]. +message GetCustomAudienceRequest { + // Required. The resource name of the custom audience to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomAudience" + } + ]; +} + +// Request message for [CustomAudienceService.MutateCustomAudiences][google.ads.googleads.v9.services.CustomAudienceService.MutateCustomAudiences]. +message MutateCustomAudiencesRequest { + // Required. The ID of the customer whose custom audiences are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual custom audiences. + repeated CustomAudienceOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single operation (create, update) on a custom audience. +message CustomAudienceOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new custom + // audience. + google.ads.googleads.v9.resources.CustomAudience create = 1; + + // Update operation: The custom audience is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.CustomAudience update = 2; + + // Remove operation: A resource name for the removed custom audience is + // expected, in this format: + // + // `customers/{customer_id}/customAudiences/{custom_audience_id}` + string remove = 3; + } +} + +// Response message for custom audience mutate. +message MutateCustomAudiencesResponse { + // All results for the mutate. + repeated MutateCustomAudienceResult results = 1; +} + +// The result for the custom audience mutate. +message MutateCustomAudienceResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/custom_conversion_goal_service.proto b/google/ads/googleads/v9/services/custom_conversion_goal_service.proto new file mode 100644 index 000000000..8eaa40bec --- /dev/null +++ b/google/ads/googleads/v9/services/custom_conversion_goal_service.proto @@ -0,0 +1,109 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/custom_conversion_goal.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomConversionGoalServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CustomConversionGoal service. + +// Service to manage custom conversion goal. +service CustomConversionGoalService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes custom conversion goals. Operation statuses + // are returned. + rpc MutateCustomConversionGoals(MutateCustomConversionGoalsRequest) returns (MutateCustomConversionGoalsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customConversionGoals:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CustomConversionGoalService.MutateCustomConversionGoals][google.ads.googleads.v9.services.CustomConversionGoalService.MutateCustomConversionGoals]. +message MutateCustomConversionGoalsRequest { + // Required. The ID of the customer whose custom conversion goals are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual custom conversion goal. + repeated CustomConversionGoalOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 4; +} + +// A single operation (create, remove) on a custom conversion goal. +message CustomConversionGoalOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new custom + // conversion goal + google.ads.googleads.v9.resources.CustomConversionGoal create = 1; + + // Update operation: The custom conversion goal is expected to have a + // valid resource name. + google.ads.googleads.v9.resources.CustomConversionGoal update = 2; + + // Remove operation: A resource name for the removed custom conversion goal + // is expected, in this format: + // + // 'customers/{customer_id}/conversionActions/{ConversionGoal.custom_goal_config.conversion_type_ids}' + string remove = 3; + } +} + +// Response message for a custom conversion goal mutate. +message MutateCustomConversionGoalsResponse { + // All results for the mutate. + repeated MutateCustomConversionGoalResult results = 1; +} + +// The result for the custom conversion goal mutate. +message MutateCustomConversionGoalResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated CustomConversionGoal with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CustomConversionGoal custom_conversion_goal = 2; +} diff --git a/google/ads/googleads/v9/services/custom_interest_service.proto b/google/ads/googleads/v9/services/custom_interest_service.proto new file mode 100644 index 000000000..4bb63934e --- /dev/null +++ b/google/ads/googleads/v9/services/custom_interest_service.proto @@ -0,0 +1,132 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/custom_interest.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomInterestServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Custom Interest service. + +// Service to manage custom interests. +service CustomInterestService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested custom interest in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomInterest(GetCustomInterestRequest) returns (google.ads.googleads.v9.resources.CustomInterest) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customInterests/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates custom interests. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CriterionError]() + // [CustomInterestError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RequestError]() + // [StringLengthError]() + rpc MutateCustomInterests(MutateCustomInterestsRequest) returns (MutateCustomInterestsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customInterests:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CustomInterestService.GetCustomInterest][google.ads.googleads.v9.services.CustomInterestService.GetCustomInterest]. +message GetCustomInterestRequest { + // Required. The resource name of the custom interest to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomInterest" + } + ]; +} + +// Request message for [CustomInterestService.MutateCustomInterests][google.ads.googleads.v9.services.CustomInterestService.MutateCustomInterests]. +message MutateCustomInterestsRequest { + // Required. The ID of the customer whose custom interests are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual custom interests. + repeated CustomInterestOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update) on a custom interest. +message CustomInterestOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new custom + // interest. + google.ads.googleads.v9.resources.CustomInterest create = 1; + + // Update operation: The custom interest is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.CustomInterest update = 2; + } +} + +// Response message for custom interest mutate. +message MutateCustomInterestsResponse { + // All results for the mutate. + repeated MutateCustomInterestResult results = 2; +} + +// The result for the custom interest mutate. +message MutateCustomInterestResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/customer_asset_service.proto b/google/ads/googleads/v9/services/customer_asset_service.proto new file mode 100644 index 000000000..0872691b2 --- /dev/null +++ b/google/ads/googleads/v9/services/customer_asset_service.proto @@ -0,0 +1,160 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/customer_asset.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerAssetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CustomerAsset service. + +// Service to manage customer assets. +service CustomerAssetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested customer asset in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerAsset(GetCustomerAssetRequest) returns (google.ads.googleads.v9.resources.CustomerAsset) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customerAssets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes customer assets. Operation statuses are + // returned. + // + // List of thrown errors: + // [AssetLinkError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerAssets(MutateCustomerAssetsRequest) returns (MutateCustomerAssetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customerAssets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CustomerAssetService.GetCustomerAsset][google.ads.googleads.v9.services.CustomerAssetService.GetCustomerAsset]. +message GetCustomerAssetRequest { + // Required. The resource name of the customer asset to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerAsset" + } + ]; +} + +// Request message for [CustomerAssetService.MutateCustomerAssets][google.ads.googleads.v9.services.CustomerAssetService.MutateCustomerAssets]. +message MutateCustomerAssetsRequest { + // Required. The ID of the customer whose customer assets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual customer assets. + repeated CustomerAssetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a customer asset. +message CustomerAssetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new customer + // asset. + google.ads.googleads.v9.resources.CustomerAsset create = 1; + + // Update operation: The customer asset is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.CustomerAsset update = 3; + + // Remove operation: A resource name for the removed customer asset is + // expected, in this format: + // + // `customers/{customer_id}/customerAssets/{asset_id}~{field_type}` + string remove = 2; + } +} + +// Response message for a customer asset mutate. +message MutateCustomerAssetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; + + // All results for the mutate. + repeated MutateCustomerAssetResult results = 2; +} + +// The result for the customer asset mutate. +message MutateCustomerAssetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated customer asset with only mutable fields after + // mutate. The field will only be returned when response_content_type is set + // to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CustomerAsset customer_asset = 2; +} diff --git a/google/ads/googleads/v9/services/customer_client_link_service.proto b/google/ads/googleads/v9/services/customer_client_link_service.proto new file mode 100644 index 000000000..bd35ff246 --- /dev/null +++ b/google/ads/googleads/v9/services/customer_client_link_service.proto @@ -0,0 +1,129 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/customer_client_link.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientLinkServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Service to manage customer client links. +service CustomerClientLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested CustomerClientLink in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerClientLink(GetCustomerClientLinkRequest) returns (google.ads.googleads.v9.resources.CustomerClientLink) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customerClientLinks/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates a customer client link. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [ManagerLinkError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerClientLink(MutateCustomerClientLinkRequest) returns (MutateCustomerClientLinkResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customerClientLinks:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for [CustomerClientLinkService.GetCustomerClientLink][google.ads.googleads.v9.services.CustomerClientLinkService.GetCustomerClientLink]. +message GetCustomerClientLinkRequest { + // Required. The resource name of the customer client link to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerClientLink" + } + ]; +} + +// Request message for [CustomerClientLinkService.MutateCustomerClientLink][google.ads.googleads.v9.services.CustomerClientLinkService.MutateCustomerClientLink]. +message MutateCustomerClientLinkRequest { + // Required. The ID of the customer whose customer link are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the individual CustomerClientLink. + CustomerClientLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single operation (create, update) on a CustomerClientLink. +message CustomerClientLinkOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new link. + google.ads.googleads.v9.resources.CustomerClientLink create = 1; + + // Update operation: The link is expected to have a valid resource name. + google.ads.googleads.v9.resources.CustomerClientLink update = 2; + } +} + +// Response message for a CustomerClientLink mutate. +message MutateCustomerClientLinkResponse { + // A result that identifies the resource affected by the mutate request. + MutateCustomerClientLinkResult result = 1; +} + +// The result for a single customer client link mutate. +message MutateCustomerClientLinkResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/customer_client_service.proto b/google/ads/googleads/v9/services/customer_client_service.proto new file mode 100644 index 000000000..c70ed5922 --- /dev/null +++ b/google/ads/googleads/v9/services/customer_client_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/customer_client.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerClientServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Customer Client service. + +// Service to get clients in a customer's hierarchy. +service CustomerClientService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested client in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerClient(GetCustomerClientRequest) returns (google.ads.googleads.v9.resources.CustomerClient) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customerClients/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [CustomerClientService.GetCustomerClient][google.ads.googleads.v9.services.CustomerClientService.GetCustomerClient]. +message GetCustomerClientRequest { + // Required. The resource name of the client to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerClient" + } + ]; +} diff --git a/google/ads/googleads/v9/services/customer_conversion_goal_service.proto b/google/ads/googleads/v9/services/customer_conversion_goal_service.proto new file mode 100644 index 000000000..656da7113 --- /dev/null +++ b/google/ads/googleads/v9/services/customer_conversion_goal_service.proto @@ -0,0 +1,89 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/customer_conversion_goal.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerConversionGoalServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CustomerConversionGoal service. + +// Service to manage customer conversion goal. +service CustomerConversionGoalService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes customer conversion goals. Operation statuses + // are returned. + rpc MutateCustomerConversionGoals(MutateCustomerConversionGoalsRequest) returns (MutateCustomerConversionGoalsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customerConversionGoals:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CustomerConversionGoalService.MutateCustomerConversionGoals][google.ads.googleads.v9.services.CustomerConversionGoalService.MutateCustomerConversionGoals]. +message MutateCustomerConversionGoalsRequest { + // Required. The ID of the customer whose customer conversion goals are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual customer conversion goal. + repeated CustomerConversionGoalOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single operation (update) on a customer conversion goal. +message CustomerConversionGoalOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 2; + + // The mutate operation. + oneof operation { + // Update operation: The customer conversion goal is expected to have a + // valid resource name. + google.ads.googleads.v9.resources.CustomerConversionGoal update = 1; + } +} + +// Response message for a customer conversion goal mutate. +message MutateCustomerConversionGoalsResponse { + // All results for the mutate. + repeated MutateCustomerConversionGoalResult results = 1; +} + +// The result for the customer conversion goal mutate. +message MutateCustomerConversionGoalResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/customer_customizer_service.proto b/google/ads/googleads/v9/services/customer_customizer_service.proto new file mode 100644 index 000000000..89cf41115 --- /dev/null +++ b/google/ads/googleads/v9/services/customer_customizer_service.proto @@ -0,0 +1,113 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/customer_customizer.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerCustomizerServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CustomerCustomizer service. + +// Service to manage customer customizer +service CustomerCustomizerService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes customer customizers. Operation statuses are + // returned. + rpc MutateCustomerCustomizers(MutateCustomerCustomizersRequest) returns (MutateCustomerCustomizersResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/CustomerCustomizers:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CustomerCustomizerService.MutateCustomerCustomizers][google.ads.googleads.v9.services.CustomerCustomizerService.MutateCustomerCustomizers]. +message MutateCustomerCustomizersRequest { + // Required. The ID of the customer whose customer customizers are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual customer customizers. + repeated CustomerCustomizerOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on an customizer attribute. +message CustomerCustomizerOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new customer + // customizer + google.ads.googleads.v9.resources.CustomerCustomizer create = 1; + + // Remove operation: A resource name for the removed customer customizer is + // expected, in this format: + // `customers/{customer_id}/customerCustomizers/{customizer_attribute_id}` + string remove = 2; + } +} + +// Response message for an customizer attribute mutate. +message MutateCustomerCustomizersResponse { + // All results for the mutate. + repeated MutateCustomerCustomizerResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the customizer attribute mutate. +message MutateCustomerCustomizerResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated CustomerCustomizer with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CustomerCustomizer customer_customizer = 2; +} diff --git a/google/ads/googleads/v9/services/customer_extension_setting_service.proto b/google/ads/googleads/v9/services/customer_extension_setting_service.proto new file mode 100644 index 000000000..61350b9fe --- /dev/null +++ b/google/ads/googleads/v9/services/customer_extension_setting_service.proto @@ -0,0 +1,180 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/customer_extension_setting.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerExtensionSettingServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CustomerExtensionSetting service. + +// Service to manage customer extension settings. +service CustomerExtensionSettingService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested customer extension setting in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerExtensionSetting(GetCustomerExtensionSettingRequest) returns (google.ads.googleads.v9.resources.CustomerExtensionSetting) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customerExtensionSettings/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes customer extension settings. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [ExtensionSettingError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateCustomerExtensionSettings(MutateCustomerExtensionSettingsRequest) returns (MutateCustomerExtensionSettingsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customerExtensionSettings:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CustomerExtensionSettingService.GetCustomerExtensionSetting][google.ads.googleads.v9.services.CustomerExtensionSettingService.GetCustomerExtensionSetting]. +message GetCustomerExtensionSettingRequest { + // Required. The resource name of the customer extension setting to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerExtensionSetting" + } + ]; +} + +// Request message for +// [CustomerExtensionSettingService.MutateCustomerExtensionSettings][google.ads.googleads.v9.services.CustomerExtensionSettingService.MutateCustomerExtensionSettings]. +message MutateCustomerExtensionSettingsRequest { + // Required. The ID of the customer whose customer extension settings are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual customer extension + // settings. + repeated CustomerExtensionSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a customer extension setting. +message CustomerExtensionSettingOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new customer + // extension setting. + google.ads.googleads.v9.resources.CustomerExtensionSetting create = 1; + + // Update operation: The customer extension setting is expected to have a + // valid resource name. + google.ads.googleads.v9.resources.CustomerExtensionSetting update = 2; + + // Remove operation: A resource name for the removed customer extension + // setting is expected, in this format: + // + // `customers/{customer_id}/customerExtensionSettings/{extension_type}` + string remove = 3; + } +} + +// Response message for a customer extension setting mutate. +message MutateCustomerExtensionSettingsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCustomerExtensionSettingResult results = 2; +} + +// The result for the customer extension setting mutate. +message MutateCustomerExtensionSettingResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated CustomerExtensionSetting with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CustomerExtensionSetting customer_extension_setting = 2; +} diff --git a/google/ads/googleads/v9/services/customer_feed_service.proto b/google/ads/googleads/v9/services/customer_feed_service.proto new file mode 100644 index 000000000..cdd9a0d55 --- /dev/null +++ b/google/ads/googleads/v9/services/customer_feed_service.proto @@ -0,0 +1,172 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/customer_feed.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerFeedServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CustomerFeed service. + +// Service to manage customer feeds. +service CustomerFeedService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested customer feed in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerFeed(GetCustomerFeedRequest) returns (google.ads.googleads.v9.resources.CustomerFeed) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customerFeeds/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes customer feeds. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CustomerFeedError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [FunctionError]() + // [FunctionParsingError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateCustomerFeeds(MutateCustomerFeedsRequest) returns (MutateCustomerFeedsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customerFeeds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CustomerFeedService.GetCustomerFeed][google.ads.googleads.v9.services.CustomerFeedService.GetCustomerFeed]. +message GetCustomerFeedRequest { + // Required. The resource name of the customer feed to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerFeed" + } + ]; +} + +// Request message for [CustomerFeedService.MutateCustomerFeeds][google.ads.googleads.v9.services.CustomerFeedService.MutateCustomerFeeds]. +message MutateCustomerFeedsRequest { + // Required. The ID of the customer whose customer feeds are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual customer feeds. + repeated CustomerFeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on a customer feed. +message CustomerFeedOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new customer feed. + google.ads.googleads.v9.resources.CustomerFeed create = 1; + + // Update operation: The customer feed is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.CustomerFeed update = 2; + + // Remove operation: A resource name for the removed customer feed is + // expected, in this format: + // + // `customers/{customer_id}/customerFeeds/{feed_id}` + string remove = 3; + } +} + +// Response message for a customer feed mutate. +message MutateCustomerFeedsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCustomerFeedResult results = 2; +} + +// The result for the customer feed mutate. +message MutateCustomerFeedResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated customer feed with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CustomerFeed customer_feed = 2; +} diff --git a/google/ads/googleads/v9/services/customer_label_service.proto b/google/ads/googleads/v9/services/customer_label_service.proto new file mode 100644 index 000000000..c19a19938 --- /dev/null +++ b/google/ads/googleads/v9/services/customer_label_service.proto @@ -0,0 +1,142 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/customer_label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerLabelServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Customer Label service. + +// Service to manage labels on customers. +service CustomerLabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested customer-label relationship in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerLabel(GetCustomerLabelRequest) returns (google.ads.googleads.v9.resources.CustomerLabel) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customerLabels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates and removes customer-label relationships. + // Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [HeaderError]() + // [InternalError]() + // [LabelError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerLabels(MutateCustomerLabelsRequest) returns (MutateCustomerLabelsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customerLabels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [CustomerLabelService.GetCustomerLabel][google.ads.googleads.v9.services.CustomerLabelService.GetCustomerLabel]. +message GetCustomerLabelRequest { + // Required. The resource name of the customer-label relationship to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerLabel" + } + ]; +} + +// Request message for [CustomerLabelService.MutateCustomerLabels][google.ads.googleads.v9.services.CustomerLabelService.MutateCustomerLabels]. +message MutateCustomerLabelsRequest { + // Required. ID of the customer whose customer-label relationships are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on customer-label relationships. + repeated CustomerLabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on a customer-label relationship. +message CustomerLabelOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new customer-label + // relationship. + google.ads.googleads.v9.resources.CustomerLabel create = 1; + + // Remove operation: A resource name for the customer-label relationship + // being removed, in this format: + // + // `customers/{customer_id}/customerLabels/{label_id}` + string remove = 2; + } +} + +// Response message for a customer labels mutate. +message MutateCustomerLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCustomerLabelResult results = 2; +} + +// The result for a customer label mutate. +message MutateCustomerLabelResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/customer_manager_link_service.proto b/google/ads/googleads/v9/services/customer_manager_link_service.proto new file mode 100644 index 000000000..70df4c0af --- /dev/null +++ b/google/ads/googleads/v9/services/customer_manager_link_service.proto @@ -0,0 +1,180 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/customer_manager_link.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerManagerLinkServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Service to manage customer-manager links. +service CustomerManagerLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested CustomerManagerLink in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerManagerLink(GetCustomerManagerLinkRequest) returns (google.ads.googleads.v9.resources.CustomerManagerLink) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customerManagerLinks/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates customer manager links. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [ManagerLinkError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerManagerLink(MutateCustomerManagerLinkRequest) returns (MutateCustomerManagerLinkResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customerManagerLinks:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } + + // Moves a client customer to a new manager customer. + // This simplifies the complex request that requires two operations to move + // a client customer to a new manager. i.e: + // 1. Update operation with Status INACTIVE (previous manager) and, + // 2. Update operation with Status ACTIVE (new manager). + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MoveManagerLink(MoveManagerLinkRequest) returns (MoveManagerLinkResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customerManagerLinks:moveManagerLink" + body: "*" + }; + option (google.api.method_signature) = "customer_id,previous_customer_manager_link,new_manager"; + } +} + +// Request message for [CustomerManagerLinkService.GetCustomerManagerLink][google.ads.googleads.v9.services.CustomerManagerLinkService.GetCustomerManagerLink]. +message GetCustomerManagerLinkRequest { + // Required. The resource name of the CustomerManagerLink to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerManagerLink" + } + ]; +} + +// Request message for [CustomerManagerLinkService.MutateCustomerManagerLink][google.ads.googleads.v9.services.CustomerManagerLinkService.MutateCustomerManagerLink]. +message MutateCustomerManagerLinkRequest { + // Required. The ID of the customer whose customer manager links are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual customer manager links. + repeated CustomerManagerLinkOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// Request message for [CustomerManagerLinkService.MoveManagerLink][google.ads.googleads.v9.services.CustomerManagerLinkService.MoveManagerLink]. +message MoveManagerLinkRequest { + // Required. The ID of the client customer that is being moved. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The resource name of the previous CustomerManagerLink. + // The resource name has the form: + // `customers/{customer_id}/customerManagerLinks/{manager_customer_id}~{manager_link_id}` + string previous_customer_manager_link = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The resource name of the new manager customer that the client wants to move + // to. Customer resource names have the format: "customers/{customer_id}" + string new_manager = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// Updates the status of a CustomerManagerLink. +// The following actions are possible: +// 1. Update operation with status ACTIVE accepts a pending invitation. +// 2. Update operation with status REFUSED declines a pending invitation. +// 3. Update operation with status INACTIVE terminates link to manager. +message CustomerManagerLinkOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Update operation: The link is expected to have a valid resource name. + google.ads.googleads.v9.resources.CustomerManagerLink update = 2; + } +} + +// Response message for a CustomerManagerLink mutate. +message MutateCustomerManagerLinkResponse { + // A result that identifies the resource affected by the mutate request. + repeated MutateCustomerManagerLinkResult results = 1; +} + +// Response message for a CustomerManagerLink moveManagerLink. +message MoveManagerLinkResponse { + // Returned for successful operations. Represents a CustomerManagerLink + // resource of the newly created link between client customer and new manager + // customer. + string resource_name = 1; +} + +// The result for the customer manager link mutate. +message MutateCustomerManagerLinkResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/customer_negative_criterion_service.proto b/google/ads/googleads/v9/services/customer_negative_criterion_service.proto new file mode 100644 index 000000000..2ab4ee6fe --- /dev/null +++ b/google/ads/googleads/v9/services/customer_negative_criterion_service.proto @@ -0,0 +1,152 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/customer_negative_criterion.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerNegativeCriterionServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Customer Negative Criterion service. + +// Service to manage customer negative criteria. +service CustomerNegativeCriterionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested criterion in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerNegativeCriterion(GetCustomerNegativeCriterionRequest) returns (google.ads.googleads.v9.resources.CustomerNegativeCriterion) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customerNegativeCriteria/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes criteria. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CriterionError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerNegativeCriteria(MutateCustomerNegativeCriteriaRequest) returns (MutateCustomerNegativeCriteriaResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customerNegativeCriteria:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CustomerNegativeCriterionService.GetCustomerNegativeCriterion][google.ads.googleads.v9.services.CustomerNegativeCriterionService.GetCustomerNegativeCriterion]. +message GetCustomerNegativeCriterionRequest { + // Required. The resource name of the criterion to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerNegativeCriterion" + } + ]; +} + +// Request message for +// [CustomerNegativeCriterionService.MutateCustomerNegativeCriteria][google.ads.googleads.v9.services.CustomerNegativeCriterionService.MutateCustomerNegativeCriteria]. +message MutateCustomerNegativeCriteriaRequest { + // Required. The ID of the customer whose criteria are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual criteria. + repeated CustomerNegativeCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create or remove) on a customer level negative criterion. +message CustomerNegativeCriterionOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new criterion. + google.ads.googleads.v9.resources.CustomerNegativeCriterion create = 1; + + // Remove operation: A resource name for the removed criterion is expected, + // in this format: + // + // `customers/{customer_id}/customerNegativeCriteria/{criterion_id}` + string remove = 2; + } +} + +// Response message for customer negative criterion mutate. +message MutateCustomerNegativeCriteriaResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateCustomerNegativeCriteriaResult results = 2; +} + +// The result for the criterion mutate. +message MutateCustomerNegativeCriteriaResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated criterion with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CustomerNegativeCriterion customer_negative_criterion = 2; +} diff --git a/google/ads/googleads/v9/services/customer_service.proto b/google/ads/googleads/v9/services/customer_service.proto new file mode 100644 index 000000000..36d0a2dde --- /dev/null +++ b/google/ads/googleads/v9/services/customer_service.proto @@ -0,0 +1,214 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/access_role.proto"; +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/customer.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Customer service. + +// Service to manage customers. +service CustomerService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested customer in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomer(GetCustomerRequest) returns (google.ads.googleads.v9.resources.Customer) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Updates a customer. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + // [UrlFieldError]() + rpc MutateCustomer(MutateCustomerRequest) returns (MutateCustomerResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } + + // Returns resource names of customers directly accessible by the + // user authenticating the call. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListAccessibleCustomers(ListAccessibleCustomersRequest) returns (ListAccessibleCustomersResponse) { + option (google.api.http) = { + get: "/v9/customers:listAccessibleCustomers" + }; + } + + // Creates a new client under manager. The new client customer is returned. + // + // List of thrown errors: + // [AccessInvitationError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [CurrencyCodeError]() + // [HeaderError]() + // [InternalError]() + // [ManagerLinkError]() + // [QuotaError]() + // [RequestError]() + // [StringLengthError]() + // [TimeZoneError]() + rpc CreateCustomerClient(CreateCustomerClientRequest) returns (CreateCustomerClientResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:createCustomerClient" + body: "*" + }; + option (google.api.method_signature) = "customer_id,customer_client"; + } +} + +// Request message for [CustomerService.GetCustomer][google.ads.googleads.v9.services.CustomerService.GetCustomer]. +message GetCustomerRequest { + // Required. The resource name of the customer to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Customer" + } + ]; +} + +// Request message for [CustomerService.MutateCustomer][google.ads.googleads.v9.services.CustomerService.MutateCustomer]. +message MutateCustomerRequest { + // Required. The ID of the customer being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the customer + CustomerOperation operation = 4 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 5; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 6; +} + +// Request message for [CustomerService.CreateCustomerClient][google.ads.googleads.v9.services.CustomerService.CreateCustomerClient]. +message CreateCustomerClientRequest { + // Required. The ID of the Manager under whom client customer is being created. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The new client customer to create. The resource name on this customer + // will be ignored. + google.ads.googleads.v9.resources.Customer customer_client = 2 [(google.api.field_behavior) = REQUIRED]; + + // Email address of the user who should be invited on the created client + // customer. Accessible only to customers on the allow-list. + optional string email_address = 5; + + // The proposed role of user on the created client customer. + // Accessible only to customers on the allow-list. + google.ads.googleads.v9.enums.AccessRoleEnum.AccessRole access_role = 4; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 6; +} + +// A single update on a customer. +message CustomerOperation { + // Mutate operation. Only updates are supported for customer. + google.ads.googleads.v9.resources.Customer update = 1; + + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 2; +} + +// Response message for CreateCustomerClient mutate. +message CreateCustomerClientResponse { + // The resource name of the newly created customer client. + string resource_name = 2; + + // Link for inviting user to access the created customer. Accessible to + // allowlisted customers only. + string invitation_link = 3; +} + +// Response message for customer mutate. +message MutateCustomerResponse { + // Result for the mutate. + MutateCustomerResult result = 2; +} + +// The result for the customer mutate. +message MutateCustomerResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated customer with only mutable fields after mutate. The fields will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.Customer customer = 2; +} + +// Request message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v9.services.CustomerService.ListAccessibleCustomers]. +message ListAccessibleCustomersRequest { + +} + +// Response message for [CustomerService.ListAccessibleCustomers][google.ads.googleads.v9.services.CustomerService.ListAccessibleCustomers]. +message ListAccessibleCustomersResponse { + // Resource name of customers directly accessible by the + // user authenticating the call. + repeated string resource_names = 1; +} diff --git a/google/ads/googleads/v9/services/customer_user_access_invitation_service.proto b/google/ads/googleads/v9/services/customer_user_access_invitation_service.proto new file mode 100644 index 000000000..01c9cdbc7 --- /dev/null +++ b/google/ads/googleads/v9/services/customer_user_access_invitation_service.proto @@ -0,0 +1,125 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/customer_user_access_invitation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerUserAccessInvitationServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CustomerUserAccessInvitation service. + +// This service manages the access invitation extended to users for a given +// customer. +service CustomerUserAccessInvitationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested access invitation in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerUserAccessInvitation(GetCustomerUserAccessInvitationRequest) returns (google.ads.googleads.v9.resources.CustomerUserAccessInvitation) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customerUserAccessInvitations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes an access invitation. + // + // List of thrown errors: + // [AccessInvitationError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerUserAccessInvitation(MutateCustomerUserAccessInvitationRequest) returns (MutateCustomerUserAccessInvitationResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customerUserAccessInvitations:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for +// [CustomerUserAccessInvitation.GetCustomerUserAccessInvitation][] +message GetCustomerUserAccessInvitationRequest { + // Required. Resource name of the access invitation. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerUserAccessInvitation" + } + ]; +} + +// Request message for +// [CustomerUserAccessInvitation.MutateCustomerUserAccessInvitation][] +message MutateCustomerUserAccessInvitationRequest { + // Required. The ID of the customer whose access invitation is being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the access invitation + CustomerUserAccessInvitationOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A single operation (create or remove) on customer user access invitation. +message CustomerUserAccessInvitationOperation { + // The mutate operation + oneof operation { + // Create operation: No resource name is expected for the new access + // invitation. + google.ads.googleads.v9.resources.CustomerUserAccessInvitation create = 1; + + // Remove operation: A resource name for the revoke invitation is + // expected, in this format: + // + // `customers/{customer_id}/customerUserAccessInvitations/{invitation_id}` + string remove = 2; + } +} + +// Response message for access invitation mutate. +message MutateCustomerUserAccessInvitationResponse { + // Result for the mutate. + MutateCustomerUserAccessInvitationResult result = 1; +} + +// The result for the access invitation mutate. +message MutateCustomerUserAccessInvitationResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/customer_user_access_service.proto b/google/ads/googleads/v9/services/customer_user_access_service.proto new file mode 100644 index 000000000..0b83b3f26 --- /dev/null +++ b/google/ads/googleads/v9/services/customer_user_access_service.proto @@ -0,0 +1,129 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/customer_user_access.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomerUserAccessServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// This service manages the permissions of a user on a given customer. +service CustomerUserAccessService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the CustomerUserAccess in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetCustomerUserAccess(GetCustomerUserAccessRequest) returns (google.ads.googleads.v9.resources.CustomerUserAccess) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/customerUserAccesses/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Updates, removes permission of a user on a given customer. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CustomerUserAccessError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateCustomerUserAccess(MutateCustomerUserAccessRequest) returns (MutateCustomerUserAccessResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customerUserAccesses:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for +// [CustomerUserAccessService.GetCustomerUserAccess][google.ads.googleads.v9.services.CustomerUserAccessService.GetCustomerUserAccess]. +message GetCustomerUserAccessRequest { + // Required. Resource name of the customer user access. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/CustomerUserAccess" + } + ]; +} + +// Mutate Request for +// [CustomerUserAccessService.MutateCustomerUserAccess][google.ads.googleads.v9.services.CustomerUserAccessService.MutateCustomerUserAccess]. +message MutateCustomerUserAccessRequest { + // Required. The ID of the customer being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the customer + CustomerUserAccessOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A single operation (update, remove) on customer user access. +message CustomerUserAccessOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 3; + + // The mutate operation. + oneof operation { + // Update operation: The customer user access is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.CustomerUserAccess update = 1; + + // Remove operation: A resource name for the removed access is + // expected, in this format: + // + // `customers/{customer_id}/customerUserAccesses/{CustomerUserAccess.user_id}` + string remove = 2; + } +} + +// Response message for customer user access mutate. +message MutateCustomerUserAccessResponse { + // Result for the mutate. + MutateCustomerUserAccessResult result = 1; +} + +// The result for the customer user access mutate. +message MutateCustomerUserAccessResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/customizer_attribute_service.proto b/google/ads/googleads/v9/services/customizer_attribute_service.proto new file mode 100644 index 000000000..db878c6e5 --- /dev/null +++ b/google/ads/googleads/v9/services/customizer_attribute_service.proto @@ -0,0 +1,117 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/customizer_attribute.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "CustomizerAttributeServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the CustomizerAttribute service. + +// Service to manage customizer attribute +service CustomizerAttributeService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates, updates or removes customizer attributes. Operation statuses are + // returned. + rpc MutateCustomizerAttributes(MutateCustomizerAttributesRequest) returns (MutateCustomizerAttributesResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/customizerAttributes:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [CustomizerAttributeService.MutateCustomizerAttributes][google.ads.googleads.v9.services.CustomizerAttributeService.MutateCustomizerAttributes]. +message MutateCustomizerAttributesRequest { + // Required. The ID of the customer whose customizer attributes are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual customizer attributes. + repeated CustomizerAttributeOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on an customizer attribute. +message CustomizerAttributeOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new customizer + // attribute + google.ads.googleads.v9.resources.CustomizerAttribute create = 1; + + // Remove operation: A resource name for the removed customizer attribute is + // expected, in this format: + // `customers/{customer_id}/customizerAttributes/{customizer_attribute_id}` + string remove = 2; + } +} + +// Response message for an customizer attribute mutate. +message MutateCustomizerAttributesResponse { + // All results for the mutate. + repeated MutateCustomizerAttributeResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the customizer attribute mutate. +message MutateCustomizerAttributeResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated CustomizerAttribute with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.CustomizerAttribute customizer_attribute = 2; +} diff --git a/google/ads/googleads/v9/services/detail_placement_view_service.proto b/google/ads/googleads/v9/services/detail_placement_view_service.proto new file mode 100644 index 000000000..d5d9b6ae7 --- /dev/null +++ b/google/ads/googleads/v9/services/detail_placement_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/detail_placement_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DetailPlacementViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Detail Placement View service. + +// Service to fetch Detail Placement views. +service DetailPlacementViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Detail Placement view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetDetailPlacementView(GetDetailPlacementViewRequest) returns (google.ads.googleads.v9.resources.DetailPlacementView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/detailPlacementViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [DetailPlacementViewService.GetDetailPlacementView][google.ads.googleads.v9.services.DetailPlacementViewService.GetDetailPlacementView]. +message GetDetailPlacementViewRequest { + // Required. The resource name of the Detail Placement view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DetailPlacementView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/detailed_demographic_service.proto b/google/ads/googleads/v9/services/detailed_demographic_service.proto new file mode 100644 index 000000000..5fbc8af46 --- /dev/null +++ b/google/ads/googleads/v9/services/detailed_demographic_service.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/detailed_demographic.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DetailedDemographicServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the detailed demographic service + +// Service to fetch Google Ads Detailed Demographics. +service DetailedDemographicService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested detailed demographic in full detail. + rpc GetDetailedDemographic(GetDetailedDemographicRequest) returns (google.ads.googleads.v9.resources.DetailedDemographic) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/detailedDemographics/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [DetailedDemographicService.GetDetailedDemographic][google.ads.googleads.v9.services.DetailedDemographicService.GetDetailedDemographic]. +message GetDetailedDemographicRequest { + // Required. Resource name of the DetailedDemographic to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DetailedDemographic" + } + ]; +} diff --git a/google/ads/googleads/v9/services/display_keyword_view_service.proto b/google/ads/googleads/v9/services/display_keyword_view_service.proto new file mode 100644 index 000000000..e242ac793 --- /dev/null +++ b/google/ads/googleads/v9/services/display_keyword_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/display_keyword_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DisplayKeywordViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Display Keyword View service. + +// Service to manage display keyword views. +service DisplayKeywordViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested display keyword view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetDisplayKeywordView(GetDisplayKeywordViewRequest) returns (google.ads.googleads.v9.resources.DisplayKeywordView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/displayKeywordViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [DisplayKeywordViewService.GetDisplayKeywordView][google.ads.googleads.v9.services.DisplayKeywordViewService.GetDisplayKeywordView]. +message GetDisplayKeywordViewRequest { + // Required. The resource name of the display keyword view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DisplayKeywordView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/distance_view_service.proto b/google/ads/googleads/v9/services/distance_view_service.proto new file mode 100644 index 000000000..625e06b5b --- /dev/null +++ b/google/ads/googleads/v9/services/distance_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/distance_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DistanceViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Distance View service. + +// Service to fetch distance views. +service DistanceViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the attributes of the requested distance view. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetDistanceView(GetDistanceViewRequest) returns (google.ads.googleads.v9.resources.DistanceView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/distanceViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [DistanceViewService.GetDistanceView][google.ads.googleads.v9.services.DistanceViewService.GetDistanceView]. +message GetDistanceViewRequest { + // Required. The resource name of the distance view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DistanceView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/domain_category_service.proto b/google/ads/googleads/v9/services/domain_category_service.proto new file mode 100644 index 000000000..f7680b3a7 --- /dev/null +++ b/google/ads/googleads/v9/services/domain_category_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/domain_category.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DomainCategoryServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the DomainCategory Service. + +// Service to fetch domain categories. +service DomainCategoryService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested domain category. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetDomainCategory(GetDomainCategoryRequest) returns (google.ads.googleads.v9.resources.DomainCategory) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/domainCategories/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [DomainCategoryService.GetDomainCategory][google.ads.googleads.v9.services.DomainCategoryService.GetDomainCategory]. +message GetDomainCategoryRequest { + // Required. Resource name of the domain category to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DomainCategory" + } + ]; +} diff --git a/google/ads/googleads/v9/services/dynamic_search_ads_search_term_view_service.proto b/google/ads/googleads/v9/services/dynamic_search_ads_search_term_view_service.proto new file mode 100644 index 000000000..723bcf7f3 --- /dev/null +++ b/google/ads/googleads/v9/services/dynamic_search_ads_search_term_view_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/dynamic_search_ads_search_term_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "DynamicSearchAdsSearchTermViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Dynamic Search Ads Search Term View service. + +// Service to fetch dynamic search ads views. +service DynamicSearchAdsSearchTermViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested dynamic search ads search term view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetDynamicSearchAdsSearchTermView(GetDynamicSearchAdsSearchTermViewRequest) returns (google.ads.googleads.v9.resources.DynamicSearchAdsSearchTermView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/dynamicSearchAdsSearchTermViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView][google.ads.googleads.v9.services.DynamicSearchAdsSearchTermViewService.GetDynamicSearchAdsSearchTermView]. +message GetDynamicSearchAdsSearchTermViewRequest { + // Required. The resource name of the dynamic search ads search term view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/DynamicSearchAdsSearchTermView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/expanded_landing_page_view_service.proto b/google/ads/googleads/v9/services/expanded_landing_page_view_service.proto new file mode 100644 index 000000000..197efec52 --- /dev/null +++ b/google/ads/googleads/v9/services/expanded_landing_page_view_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/expanded_landing_page_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ExpandedLandingPageViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the expanded landing page view service. + +// Service to fetch expanded landing page views. +service ExpandedLandingPageViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested expanded landing page view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetExpandedLandingPageView(GetExpandedLandingPageViewRequest) returns (google.ads.googleads.v9.resources.ExpandedLandingPageView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/expandedLandingPageViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [ExpandedLandingPageViewService.GetExpandedLandingPageView][google.ads.googleads.v9.services.ExpandedLandingPageViewService.GetExpandedLandingPageView]. +message GetExpandedLandingPageViewRequest { + // Required. The resource name of the expanded landing page view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ExpandedLandingPageView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/extension_feed_item_service.proto b/google/ads/googleads/v9/services/extension_feed_item_service.proto new file mode 100644 index 000000000..1186f7323 --- /dev/null +++ b/google/ads/googleads/v9/services/extension_feed_item_service.proto @@ -0,0 +1,175 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/extension_feed_item.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ExtensionFeedItemServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the ExtensionFeedItem service. + +// Service to manage extension feed items. +service ExtensionFeedItemService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested extension feed item in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetExtensionFeedItem(GetExtensionFeedItemRequest) returns (google.ads.googleads.v9.resources.ExtensionFeedItem) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/extensionFeedItems/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes extension feed items. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CountryCodeError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [ExtensionFeedItemError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [ImageError]() + // [InternalError]() + // [LanguageCodeError]() + // [MutateError]() + // [NewResourceCreationError]() + // [OperationAccessDeniedError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateExtensionFeedItems(MutateExtensionFeedItemsRequest) returns (MutateExtensionFeedItemsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/extensionFeedItems:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [ExtensionFeedItemService.GetExtensionFeedItem][google.ads.googleads.v9.services.ExtensionFeedItemService.GetExtensionFeedItem]. +message GetExtensionFeedItemRequest { + // Required. The resource name of the extension feed item to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ExtensionFeedItem" + } + ]; +} + +// Request message for [ExtensionFeedItemService.MutateExtensionFeedItems][google.ads.googleads.v9.services.ExtensionFeedItemService.MutateExtensionFeedItems]. +message MutateExtensionFeedItemsRequest { + // Required. The ID of the customer whose extension feed items are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual extension feed items. + repeated ExtensionFeedItemOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an extension feed item. +message ExtensionFeedItemOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new extension + // feed item. + google.ads.googleads.v9.resources.ExtensionFeedItem create = 1; + + // Update operation: The extension feed item is expected to have a + // valid resource name. + google.ads.googleads.v9.resources.ExtensionFeedItem update = 2; + + // Remove operation: A resource name for the removed extension feed item + // is expected, in this format: + // + // `customers/{customer_id}/extensionFeedItems/{feed_item_id}` + string remove = 3; + } +} + +// Response message for an extension feed item mutate. +message MutateExtensionFeedItemsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateExtensionFeedItemResult results = 2; +} + +// The result for the extension feed item mutate. +message MutateExtensionFeedItemResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated extension feed item with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.ExtensionFeedItem extension_feed_item = 2; +} diff --git a/google/ads/googleads/v9/services/feed_item_service.proto b/google/ads/googleads/v9/services/feed_item_service.proto new file mode 100644 index 000000000..a3cae8526 --- /dev/null +++ b/google/ads/googleads/v9/services/feed_item_service.proto @@ -0,0 +1,174 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/feed_item.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the FeedItem service. + +// Service to manage feed items. +service FeedItemService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed item in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedItem(GetFeedItemRequest) returns (google.ads.googleads.v9.resources.FeedItem) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/feedItems/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes feed items. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [CriterionError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FeedItemError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + rpc MutateFeedItems(MutateFeedItemsRequest) returns (MutateFeedItemsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/feedItems:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedItemService.GetFeedItem][google.ads.googleads.v9.services.FeedItemService.GetFeedItem]. +message GetFeedItemRequest { + // Required. The resource name of the feed item to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItem" + } + ]; +} + +// Request message for [FeedItemService.MutateFeedItems][google.ads.googleads.v9.services.FeedItemService.MutateFeedItems]. +message MutateFeedItemsRequest { + // Required. The ID of the customer whose feed items are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feed items. + repeated FeedItemOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an feed item. +message FeedItemOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new feed item. + google.ads.googleads.v9.resources.FeedItem create = 1; + + // Update operation: The feed item is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.FeedItem update = 2; + + // Remove operation: A resource name for the removed feed item is + // expected, in this format: + // + // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_id}` + string remove = 3; + } +} + +// Response message for an feed item mutate. +message MutateFeedItemsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateFeedItemResult results = 2; +} + +// The result for the feed item mutate. +message MutateFeedItemResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated feed item with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.FeedItem feed_item = 2; +} diff --git a/google/ads/googleads/v9/services/feed_item_set_link_service.proto b/google/ads/googleads/v9/services/feed_item_set_link_service.proto new file mode 100644 index 000000000..e7797fb90 --- /dev/null +++ b/google/ads/googleads/v9/services/feed_item_set_link_service.proto @@ -0,0 +1,138 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/feed_item_set_link.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetLinkServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the FeedItemSetLink service. + +// Service to manage feed item set links. +service FeedItemSetLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed item set link in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedItemSetLink(GetFeedItemSetLinkRequest) returns (google.ads.googleads.v9.resources.FeedItemSetLink) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/feedItemSetLinks/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes feed item set links. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateFeedItemSetLinks(MutateFeedItemSetLinksRequest) returns (MutateFeedItemSetLinksResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/feedItemSetLinks:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedItemSetLinkService.GetFeedItemSetLinks][]. +message GetFeedItemSetLinkRequest { + // Required. The resource name of the feed item set link to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemSetLink" + } + ]; +} + +// Request message for [FeedItemSetLinkService.MutateFeedItemSetLinks][google.ads.googleads.v9.services.FeedItemSetLinkService.MutateFeedItemSetLinks]. +message MutateFeedItemSetLinksRequest { + // Required. The ID of the customer whose feed item set links are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feed item set links. + repeated FeedItemSetLinkOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a feed item set link. +message FeedItemSetLinkOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the + // new feed item set link. + google.ads.googleads.v9.resources.FeedItemSetLink create = 1; + + // Remove operation: A resource name for the removed feed item set link is + // expected, in this format: + // + // `customers/{customer_id}/feedItemSetLinks/{feed_id}_{feed_item_set_id}_{feed_item_id}` + string remove = 2; + } +} + +// Response message for a feed item set link mutate. +message MutateFeedItemSetLinksResponse { + // All results for the mutate. + repeated MutateFeedItemSetLinkResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the feed item set link mutate. +message MutateFeedItemSetLinkResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/feed_item_set_service.proto b/google/ads/googleads/v9/services/feed_item_set_service.proto new file mode 100644 index 000000000..87e01b2a8 --- /dev/null +++ b/google/ads/googleads/v9/services/feed_item_set_service.proto @@ -0,0 +1,146 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/feed_item_set.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemSetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the FeedItemSet service. + +// Service to manage feed Item Set +service FeedItemSetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed item set in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedItemSet(GetFeedItemSetRequest) returns (google.ads.googleads.v9.resources.FeedItemSet) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/feedItemSets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates or removes feed item sets. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + rpc MutateFeedItemSets(MutateFeedItemSetsRequest) returns (MutateFeedItemSetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/feedItemSets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedItemSetService.GetFeedItemSet][google.ads.googleads.v9.services.FeedItemSetService.GetFeedItemSet]. +message GetFeedItemSetRequest { + // Required. The resource name of the feed item set to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemSet" + } + ]; +} + +// Request message for [FeedItemSetService.MutateFeedItemSets][google.ads.googleads.v9.services.FeedItemSetService.MutateFeedItemSets]. +message MutateFeedItemSetsRequest { + // Required. The ID of the customer whose feed item sets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feed item sets. + repeated FeedItemSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, remove) on an feed item set. +message FeedItemSetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new feed item set + google.ads.googleads.v9.resources.FeedItemSet create = 1; + + // Update operation: The feed item set is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.FeedItemSet update = 2; + + // Remove operation: A resource name for the removed feed item is + // expected, in this format: + // `customers/{customer_id}/feedItems/{feed_id}~{feed_item_set_id}` + string remove = 3; + } +} + +// Response message for an feed item set mutate. +message MutateFeedItemSetsResponse { + // All results for the mutate. + repeated MutateFeedItemSetResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result for the feed item set mutate. +message MutateFeedItemSetResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/feed_item_target_service.proto b/google/ads/googleads/v9/services/feed_item_target_service.proto new file mode 100644 index 000000000..9d3647b09 --- /dev/null +++ b/google/ads/googleads/v9/services/feed_item_target_service.proto @@ -0,0 +1,161 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/feed_item_target.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedItemTargetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the FeedItemTarget service. + +// Service to manage feed item targets. +service FeedItemTargetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed item targets in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedItemTarget(GetFeedItemTargetRequest) returns (google.ads.googleads.v9.resources.FeedItemTarget) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/feedItemTargets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes feed item targets. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CriterionError]() + // [DatabaseError]() + // [DistinctError]() + // [FeedItemTargetError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateFeedItemTargets(MutateFeedItemTargetsRequest) returns (MutateFeedItemTargetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/feedItemTargets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedItemTargetService.GetFeedItemTarget][google.ads.googleads.v9.services.FeedItemTargetService.GetFeedItemTarget]. +message GetFeedItemTargetRequest { + // Required. The resource name of the feed item targets to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedItemTarget" + } + ]; +} + +// Request message for [FeedItemTargetService.MutateFeedItemTargets][google.ads.googleads.v9.services.FeedItemTargetService.MutateFeedItemTargets]. +message MutateFeedItemTargetsRequest { + // Required. The ID of the customer whose feed item targets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feed item targets. + repeated FeedItemTargetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single operation (create, remove) on an feed item target. +message FeedItemTargetOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new feed item + // target. + google.ads.googleads.v9.resources.FeedItemTarget create = 1; + + // Remove operation: A resource name for the removed feed item target is + // expected, in this format: + // + // `customers/{customer_id}/feedItemTargets/{feed_id}~{feed_item_id}~{feed_item_target_type}~{feed_item_target_id}` + string remove = 2; + } +} + +// Response message for an feed item target mutate. +message MutateFeedItemTargetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateFeedItemTargetResult results = 2; +} + +// The result for the feed item target mutate. +message MutateFeedItemTargetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated feed item target with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.FeedItemTarget feed_item_target = 2; +} diff --git a/google/ads/googleads/v9/services/feed_mapping_service.proto b/google/ads/googleads/v9/services/feed_mapping_service.proto new file mode 100644 index 000000000..1e668132e --- /dev/null +++ b/google/ads/googleads/v9/services/feed_mapping_service.proto @@ -0,0 +1,161 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/feed_mapping.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedMappingServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the FeedMapping service. + +// Service to manage feed mappings. +service FeedMappingService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed mapping in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedMapping(GetFeedMappingRequest) returns (google.ads.googleads.v9.resources.FeedMapping) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/feedMappings/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes feed mappings. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [DistinctError]() + // [FeedMappingError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [OperationAccessDeniedError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateFeedMappings(MutateFeedMappingsRequest) returns (MutateFeedMappingsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/feedMappings:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedMappingService.GetFeedMapping][google.ads.googleads.v9.services.FeedMappingService.GetFeedMapping]. +message GetFeedMappingRequest { + // Required. The resource name of the feed mapping to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedMapping" + } + ]; +} + +// Request message for [FeedMappingService.MutateFeedMappings][google.ads.googleads.v9.services.FeedMappingService.MutateFeedMappings]. +message MutateFeedMappingsRequest { + // Required. The ID of the customer whose feed mappings are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feed mappings. + repeated FeedMappingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on a feed mapping. +message FeedMappingOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new feed mapping. + google.ads.googleads.v9.resources.FeedMapping create = 1; + + // Remove operation: A resource name for the removed feed mapping is + // expected, in this format: + // + // `customers/{customer_id}/feedMappings/{feed_id}~{feed_mapping_id}` + string remove = 3; + } +} + +// Response message for a feed mapping mutate. +message MutateFeedMappingsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateFeedMappingResult results = 2; +} + +// The result for the feed mapping mutate. +message MutateFeedMappingResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated feed mapping with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.FeedMapping feed_mapping = 2; +} diff --git a/google/ads/googleads/v9/services/feed_placeholder_view_service.proto b/google/ads/googleads/v9/services/feed_placeholder_view_service.proto new file mode 100644 index 000000000..3ece6a71c --- /dev/null +++ b/google/ads/googleads/v9/services/feed_placeholder_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/feed_placeholder_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedPlaceholderViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the FeedPlaceholderView service. + +// Service to fetch feed placeholder views. +service FeedPlaceholderViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed placeholder view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeedPlaceholderView(GetFeedPlaceholderViewRequest) returns (google.ads.googleads.v9.resources.FeedPlaceholderView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/feedPlaceholderViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [FeedPlaceholderViewService.GetFeedPlaceholderView][google.ads.googleads.v9.services.FeedPlaceholderViewService.GetFeedPlaceholderView]. +message GetFeedPlaceholderViewRequest { + // Required. The resource name of the feed placeholder view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/FeedPlaceholderView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/feed_service.proto b/google/ads/googleads/v9/services/feed_service.proto new file mode 100644 index 000000000..9dc6f7e52 --- /dev/null +++ b/google/ads/googleads/v9/services/feed_service.proto @@ -0,0 +1,173 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/feed.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "FeedServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Feed service. + +// Service to manage feeds. +service FeedService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested feed in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetFeed(GetFeedRequest) returns (google.ads.googleads.v9.resources.Feed) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/feeds/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes feeds. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [DatabaseError]() + // [DistinctError]() + // [FeedError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [ListOperationError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateFeeds(MutateFeedsRequest) returns (MutateFeedsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/feeds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [FeedService.GetFeed][google.ads.googleads.v9.services.FeedService.GetFeed]. +message GetFeedRequest { + // Required. The resource name of the feed to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Feed" + } + ]; +} + +// Request message for [FeedService.MutateFeeds][google.ads.googleads.v9.services.FeedService.MutateFeeds]. +message MutateFeedsRequest { + // Required. The ID of the customer whose feeds are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual feeds. + repeated FeedOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an feed. +message FeedOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new feed. + google.ads.googleads.v9.resources.Feed create = 1; + + // Update operation: The feed is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.Feed update = 2; + + // Remove operation: A resource name for the removed feed is + // expected, in this format: + // + // `customers/{customer_id}/feeds/{feed_id}` + string remove = 3; + } +} + +// Response message for an feed mutate. +message MutateFeedsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateFeedResult results = 2; +} + +// The result for the feed mutate. +message MutateFeedResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated feed with only mutable fields after mutate. The field will only + // be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.Feed feed = 2; +} diff --git a/google/ads/googleads/v9/services/gender_view_service.proto b/google/ads/googleads/v9/services/gender_view_service.proto new file mode 100644 index 000000000..d7653376f --- /dev/null +++ b/google/ads/googleads/v9/services/gender_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/gender_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GenderViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Gender View service. + +// Service to manage gender views. +service GenderViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested gender view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetGenderView(GetGenderViewRequest) returns (google.ads.googleads.v9.resources.GenderView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/genderViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [GenderViewService.GetGenderView][google.ads.googleads.v9.services.GenderViewService.GetGenderView]. +message GetGenderViewRequest { + // Required. The resource name of the gender view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GenderView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/geo_target_constant_service.proto b/google/ads/googleads/v9/services/geo_target_constant_service.proto new file mode 100644 index 000000000..000d67ef2 --- /dev/null +++ b/google/ads/googleads/v9/services/geo_target_constant_service.proto @@ -0,0 +1,146 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/geo_target_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GeoTargetConstantServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Geo target constant service. + +// Service to fetch geo target constants. +service GeoTargetConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested geo target constant in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetGeoTargetConstant(GetGeoTargetConstantRequest) returns (google.ads.googleads.v9.resources.GeoTargetConstant) { + option (google.api.http) = { + get: "/v9/{resource_name=geoTargetConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Returns GeoTargetConstant suggestions by location name or by resource name. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [GeoTargetConstantSuggestionError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc SuggestGeoTargetConstants(SuggestGeoTargetConstantsRequest) returns (SuggestGeoTargetConstantsResponse) { + option (google.api.http) = { + post: "/v9/geoTargetConstants:suggest" + body: "*" + }; + } +} + +// Request message for [GeoTargetConstantService.GetGeoTargetConstant][google.ads.googleads.v9.services.GeoTargetConstantService.GetGeoTargetConstant]. +message GetGeoTargetConstantRequest { + // Required. The resource name of the geo target constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeoTargetConstant" + } + ]; +} + +// Request message for +// [GeoTargetConstantService.SuggestGeoTargetConstants][google.ads.googleads.v9.services.GeoTargetConstantService.SuggestGeoTargetConstants]. +message SuggestGeoTargetConstantsRequest { + // A list of location names. + message LocationNames { + // A list of location names. + repeated string names = 2; + } + + // A list of geo target constant resource names. + message GeoTargets { + // A list of geo target constant resource names. + repeated string geo_target_constants = 2; + } + + // If possible, returned geo targets are translated using this locale. If not, + // en is used by default. This is also used as a hint for returned geo + // targets. + optional string locale = 6; + + // Returned geo targets are restricted to this country code. + optional string country_code = 7; + + // Required. A selector of geo target constants. + oneof query { + // The location names to search by. At most 25 names can be set. + LocationNames location_names = 1; + + // The geo target constant resource names to filter by. + GeoTargets geo_targets = 2; + } +} + +// Response message for [GeoTargetConstantService.SuggestGeoTargetConstants][google.ads.googleads.v9.services.GeoTargetConstantService.SuggestGeoTargetConstants]. +message SuggestGeoTargetConstantsResponse { + // Geo target constant suggestions. + repeated GeoTargetConstantSuggestion geo_target_constant_suggestions = 1; +} + +// A geo target constant suggestion. +message GeoTargetConstantSuggestion { + // The language this GeoTargetConstantSuggestion is currently translated to. + // It affects the name of geo target fields. For example, if locale=en, then + // name=Spain. If locale=es, then name=España. The default locale will be + // returned if no translation exists for the locale in the request. + optional string locale = 6; + + // Approximate user population that will be targeted, rounded to the + // nearest 100. + optional int64 reach = 7; + + // If the request searched by location name, this is the location name that + // matched the geo target. + optional string search_term = 8; + + // The GeoTargetConstant result. + google.ads.googleads.v9.resources.GeoTargetConstant geo_target_constant = 4; + + // The list of parents of the geo target constant. + repeated google.ads.googleads.v9.resources.GeoTargetConstant geo_target_constant_parents = 5; +} diff --git a/google/ads/googleads/v9/services/geographic_view_service.proto b/google/ads/googleads/v9/services/geographic_view_service.proto new file mode 100644 index 000000000..49aceac4a --- /dev/null +++ b/google/ads/googleads/v9/services/geographic_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/geographic_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GeographicViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the GeographicViewService. + +// Service to manage geographic views. +service GeographicViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested geographic view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetGeographicView(GetGeographicViewRequest) returns (google.ads.googleads.v9.resources.GeographicView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/geographicViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [GeographicViewService.GetGeographicView][google.ads.googleads.v9.services.GeographicViewService.GetGeographicView]. +message GetGeographicViewRequest { + // Required. The resource name of the geographic view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GeographicView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/google_ads_field_service.proto b/google/ads/googleads/v9/services/google_ads_field_service.proto new file mode 100644 index 000000000..4308514a6 --- /dev/null +++ b/google/ads/googleads/v9/services/google_ads_field_service.proto @@ -0,0 +1,115 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/google_ads_field.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GoogleAdsFieldServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the GoogleAdsFieldService. + +// Service to fetch Google Ads API fields. +service GoogleAdsFieldService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns just the requested field. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetGoogleAdsField(GetGoogleAdsFieldRequest) returns (google.ads.googleads.v9.resources.GoogleAdsField) { + option (google.api.http) = { + get: "/v9/{resource_name=googleAdsFields/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Returns all fields that match the search query. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QueryError]() + // [QuotaError]() + // [RequestError]() + rpc SearchGoogleAdsFields(SearchGoogleAdsFieldsRequest) returns (SearchGoogleAdsFieldsResponse) { + option (google.api.http) = { + post: "/v9/googleAdsFields:search" + body: "*" + }; + option (google.api.method_signature) = "query"; + } +} + +// Request message for [GoogleAdsFieldService.GetGoogleAdsField][google.ads.googleads.v9.services.GoogleAdsFieldService.GetGoogleAdsField]. +message GetGoogleAdsFieldRequest { + // Required. The resource name of the field to get. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GoogleAdsField" + } + ]; +} + +// Request message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v9.services.GoogleAdsFieldService.SearchGoogleAdsFields]. +message SearchGoogleAdsFieldsRequest { + // Required. The query string. + string query = 1 [(google.api.field_behavior) = REQUIRED]; + + // Token of the page to retrieve. If not specified, the first page of + // results will be returned. Use the value obtained from `next_page_token` + // in the previous response in order to request the next page of results. + string page_token = 2; + + // Number of elements to retrieve in a single page. + // When too large a page is requested, the server may decide to further + // limit the number of returned resources. + int32 page_size = 3; +} + +// Response message for [GoogleAdsFieldService.SearchGoogleAdsFields][google.ads.googleads.v9.services.GoogleAdsFieldService.SearchGoogleAdsFields]. +message SearchGoogleAdsFieldsResponse { + // The list of fields that matched the query. + repeated google.ads.googleads.v9.resources.GoogleAdsField results = 1; + + // Pagination token used to retrieve the next page of results. Pass the + // content of this string as the `page_token` attribute of the next request. + // `next_page_token` is not returned for the last page. + string next_page_token = 2; + + // Total number of results that match the query ignoring the LIMIT clause. + int64 total_results_count = 3; +} diff --git a/google/ads/googleads/v9/services/google_ads_service.proto b/google/ads/googleads/v9/services/google_ads_service.proto new file mode 100644 index 000000000..91f8db248 --- /dev/null +++ b/google/ads/googleads/v9/services/google_ads_service.proto @@ -0,0 +1,1425 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/metrics.proto"; +import "google/ads/googleads/v9/common/segments.proto"; +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/enums/summary_row_setting.proto"; +import "google/ads/googleads/v9/resources/accessible_bidding_strategy.proto"; +import "google/ads/googleads/v9/resources/account_budget.proto"; +import "google/ads/googleads/v9/resources/account_budget_proposal.proto"; +import "google/ads/googleads/v9/resources/account_link.proto"; +import "google/ads/googleads/v9/resources/ad_group.proto"; +import "google/ads/googleads/v9/resources/ad_group_ad.proto"; +import "google/ads/googleads/v9/resources/ad_group_ad_asset_view.proto"; +import "google/ads/googleads/v9/resources/ad_group_ad_label.proto"; +import "google/ads/googleads/v9/resources/ad_group_asset.proto"; +import "google/ads/googleads/v9/resources/ad_group_audience_view.proto"; +import "google/ads/googleads/v9/resources/ad_group_bid_modifier.proto"; +import "google/ads/googleads/v9/resources/ad_group_criterion.proto"; +import "google/ads/googleads/v9/resources/ad_group_criterion_customizer.proto"; +import "google/ads/googleads/v9/resources/ad_group_criterion_label.proto"; +import "google/ads/googleads/v9/resources/ad_group_criterion_simulation.proto"; +import "google/ads/googleads/v9/resources/ad_group_customizer.proto"; +import "google/ads/googleads/v9/resources/ad_group_extension_setting.proto"; +import "google/ads/googleads/v9/resources/ad_group_feed.proto"; +import "google/ads/googleads/v9/resources/ad_group_label.proto"; +import "google/ads/googleads/v9/resources/ad_group_simulation.proto"; +import "google/ads/googleads/v9/resources/ad_parameter.proto"; +import "google/ads/googleads/v9/resources/ad_schedule_view.proto"; +import "google/ads/googleads/v9/resources/age_range_view.proto"; +import "google/ads/googleads/v9/resources/asset.proto"; +import "google/ads/googleads/v9/resources/asset_field_type_view.proto"; +import "google/ads/googleads/v9/resources/asset_group.proto"; +import "google/ads/googleads/v9/resources/asset_group_asset.proto"; +import "google/ads/googleads/v9/resources/asset_group_listing_group_filter.proto"; +import "google/ads/googleads/v9/resources/asset_group_product_group_view.proto"; +import "google/ads/googleads/v9/resources/asset_set.proto"; +import "google/ads/googleads/v9/resources/asset_set_asset.proto"; +import "google/ads/googleads/v9/resources/batch_job.proto"; +import "google/ads/googleads/v9/resources/bidding_data_exclusion.proto"; +import "google/ads/googleads/v9/resources/bidding_seasonality_adjustment.proto"; +import "google/ads/googleads/v9/resources/bidding_strategy.proto"; +import "google/ads/googleads/v9/resources/bidding_strategy_simulation.proto"; +import "google/ads/googleads/v9/resources/billing_setup.proto"; +import "google/ads/googleads/v9/resources/call_view.proto"; +import "google/ads/googleads/v9/resources/campaign.proto"; +import "google/ads/googleads/v9/resources/campaign_asset.proto"; +import "google/ads/googleads/v9/resources/campaign_asset_set.proto"; +import "google/ads/googleads/v9/resources/campaign_audience_view.proto"; +import "google/ads/googleads/v9/resources/campaign_bid_modifier.proto"; +import "google/ads/googleads/v9/resources/campaign_budget.proto"; +import "google/ads/googleads/v9/resources/campaign_conversion_goal.proto"; +import "google/ads/googleads/v9/resources/campaign_criterion.proto"; +import "google/ads/googleads/v9/resources/campaign_criterion_simulation.proto"; +import "google/ads/googleads/v9/resources/campaign_customizer.proto"; +import "google/ads/googleads/v9/resources/campaign_draft.proto"; +import "google/ads/googleads/v9/resources/campaign_experiment.proto"; +import "google/ads/googleads/v9/resources/campaign_extension_setting.proto"; +import "google/ads/googleads/v9/resources/campaign_feed.proto"; +import "google/ads/googleads/v9/resources/campaign_label.proto"; +import "google/ads/googleads/v9/resources/campaign_shared_set.proto"; +import "google/ads/googleads/v9/resources/campaign_simulation.proto"; +import "google/ads/googleads/v9/resources/carrier_constant.proto"; +import "google/ads/googleads/v9/resources/change_event.proto"; +import "google/ads/googleads/v9/resources/change_status.proto"; +import "google/ads/googleads/v9/resources/click_view.proto"; +import "google/ads/googleads/v9/resources/combined_audience.proto"; +import "google/ads/googleads/v9/resources/conversion_action.proto"; +import "google/ads/googleads/v9/resources/conversion_custom_variable.proto"; +import "google/ads/googleads/v9/resources/conversion_goal_campaign_config.proto"; +import "google/ads/googleads/v9/resources/conversion_value_rule.proto"; +import "google/ads/googleads/v9/resources/conversion_value_rule_set.proto"; +import "google/ads/googleads/v9/resources/currency_constant.proto"; +import "google/ads/googleads/v9/resources/custom_audience.proto"; +import "google/ads/googleads/v9/resources/custom_conversion_goal.proto"; +import "google/ads/googleads/v9/resources/custom_interest.proto"; +import "google/ads/googleads/v9/resources/customer.proto"; +import "google/ads/googleads/v9/resources/customer_asset.proto"; +import "google/ads/googleads/v9/resources/customer_client.proto"; +import "google/ads/googleads/v9/resources/customer_client_link.proto"; +import "google/ads/googleads/v9/resources/customer_conversion_goal.proto"; +import "google/ads/googleads/v9/resources/customer_customizer.proto"; +import "google/ads/googleads/v9/resources/customer_extension_setting.proto"; +import "google/ads/googleads/v9/resources/customer_feed.proto"; +import "google/ads/googleads/v9/resources/customer_label.proto"; +import "google/ads/googleads/v9/resources/customer_manager_link.proto"; +import "google/ads/googleads/v9/resources/customer_negative_criterion.proto"; +import "google/ads/googleads/v9/resources/customer_user_access.proto"; +import "google/ads/googleads/v9/resources/customer_user_access_invitation.proto"; +import "google/ads/googleads/v9/resources/customizer_attribute.proto"; +import "google/ads/googleads/v9/resources/detail_placement_view.proto"; +import "google/ads/googleads/v9/resources/detailed_demographic.proto"; +import "google/ads/googleads/v9/resources/display_keyword_view.proto"; +import "google/ads/googleads/v9/resources/distance_view.proto"; +import "google/ads/googleads/v9/resources/domain_category.proto"; +import "google/ads/googleads/v9/resources/dynamic_search_ads_search_term_view.proto"; +import "google/ads/googleads/v9/resources/expanded_landing_page_view.proto"; +import "google/ads/googleads/v9/resources/extension_feed_item.proto"; +import "google/ads/googleads/v9/resources/feed.proto"; +import "google/ads/googleads/v9/resources/feed_item.proto"; +import "google/ads/googleads/v9/resources/feed_item_set.proto"; +import "google/ads/googleads/v9/resources/feed_item_set_link.proto"; +import "google/ads/googleads/v9/resources/feed_item_target.proto"; +import "google/ads/googleads/v9/resources/feed_mapping.proto"; +import "google/ads/googleads/v9/resources/feed_placeholder_view.proto"; +import "google/ads/googleads/v9/resources/gender_view.proto"; +import "google/ads/googleads/v9/resources/geo_target_constant.proto"; +import "google/ads/googleads/v9/resources/geographic_view.proto"; +import "google/ads/googleads/v9/resources/group_placement_view.proto"; +import "google/ads/googleads/v9/resources/hotel_group_view.proto"; +import "google/ads/googleads/v9/resources/hotel_performance_view.proto"; +import "google/ads/googleads/v9/resources/hotel_reconciliation.proto"; +import "google/ads/googleads/v9/resources/income_range_view.proto"; +import "google/ads/googleads/v9/resources/keyword_plan.proto"; +import "google/ads/googleads/v9/resources/keyword_plan_ad_group.proto"; +import "google/ads/googleads/v9/resources/keyword_plan_ad_group_keyword.proto"; +import "google/ads/googleads/v9/resources/keyword_plan_campaign.proto"; +import "google/ads/googleads/v9/resources/keyword_plan_campaign_keyword.proto"; +import "google/ads/googleads/v9/resources/keyword_theme_constant.proto"; +import "google/ads/googleads/v9/resources/keyword_view.proto"; +import "google/ads/googleads/v9/resources/label.proto"; +import "google/ads/googleads/v9/resources/landing_page_view.proto"; +import "google/ads/googleads/v9/resources/language_constant.proto"; +import "google/ads/googleads/v9/resources/life_event.proto"; +import "google/ads/googleads/v9/resources/location_view.proto"; +import "google/ads/googleads/v9/resources/managed_placement_view.proto"; +import "google/ads/googleads/v9/resources/media_file.proto"; +import "google/ads/googleads/v9/resources/mobile_app_category_constant.proto"; +import "google/ads/googleads/v9/resources/mobile_device_constant.proto"; +import "google/ads/googleads/v9/resources/offline_user_data_job.proto"; +import "google/ads/googleads/v9/resources/operating_system_version_constant.proto"; +import "google/ads/googleads/v9/resources/paid_organic_search_term_view.proto"; +import "google/ads/googleads/v9/resources/parental_status_view.proto"; +import "google/ads/googleads/v9/resources/product_bidding_category_constant.proto"; +import "google/ads/googleads/v9/resources/product_group_view.proto"; +import "google/ads/googleads/v9/resources/recommendation.proto"; +import "google/ads/googleads/v9/resources/remarketing_action.proto"; +import "google/ads/googleads/v9/resources/search_term_view.proto"; +import "google/ads/googleads/v9/resources/shared_criterion.proto"; +import "google/ads/googleads/v9/resources/shared_set.proto"; +import "google/ads/googleads/v9/resources/shopping_performance_view.proto"; +import "google/ads/googleads/v9/resources/smart_campaign_search_term_view.proto"; +import "google/ads/googleads/v9/resources/smart_campaign_setting.proto"; +import "google/ads/googleads/v9/resources/third_party_app_analytics_link.proto"; +import "google/ads/googleads/v9/resources/topic_constant.proto"; +import "google/ads/googleads/v9/resources/topic_view.proto"; +import "google/ads/googleads/v9/resources/user_interest.proto"; +import "google/ads/googleads/v9/resources/user_list.proto"; +import "google/ads/googleads/v9/resources/user_location_view.proto"; +import "google/ads/googleads/v9/resources/video.proto"; +import "google/ads/googleads/v9/resources/webpage_view.proto"; +import "google/ads/googleads/v9/services/ad_group_ad_label_service.proto"; +import "google/ads/googleads/v9/services/ad_group_ad_service.proto"; +import "google/ads/googleads/v9/services/ad_group_asset_service.proto"; +import "google/ads/googleads/v9/services/ad_group_bid_modifier_service.proto"; +import "google/ads/googleads/v9/services/ad_group_criterion_customizer_service.proto"; +import "google/ads/googleads/v9/services/ad_group_criterion_label_service.proto"; +import "google/ads/googleads/v9/services/ad_group_criterion_service.proto"; +import "google/ads/googleads/v9/services/ad_group_customizer_service.proto"; +import "google/ads/googleads/v9/services/ad_group_extension_setting_service.proto"; +import "google/ads/googleads/v9/services/ad_group_feed_service.proto"; +import "google/ads/googleads/v9/services/ad_group_label_service.proto"; +import "google/ads/googleads/v9/services/ad_group_service.proto"; +import "google/ads/googleads/v9/services/ad_parameter_service.proto"; +import "google/ads/googleads/v9/services/ad_service.proto"; +import "google/ads/googleads/v9/services/asset_group_asset_service.proto"; +import "google/ads/googleads/v9/services/asset_group_listing_group_filter_service.proto"; +import "google/ads/googleads/v9/services/asset_group_service.proto"; +import "google/ads/googleads/v9/services/asset_service.proto"; +import "google/ads/googleads/v9/services/asset_set_asset_service.proto"; +import "google/ads/googleads/v9/services/asset_set_service.proto"; +import "google/ads/googleads/v9/services/bidding_data_exclusion_service.proto"; +import "google/ads/googleads/v9/services/bidding_seasonality_adjustment_service.proto"; +import "google/ads/googleads/v9/services/bidding_strategy_service.proto"; +import "google/ads/googleads/v9/services/campaign_asset_service.proto"; +import "google/ads/googleads/v9/services/campaign_asset_set_service.proto"; +import "google/ads/googleads/v9/services/campaign_bid_modifier_service.proto"; +import "google/ads/googleads/v9/services/campaign_budget_service.proto"; +import "google/ads/googleads/v9/services/campaign_conversion_goal_service.proto"; +import "google/ads/googleads/v9/services/campaign_criterion_service.proto"; +import "google/ads/googleads/v9/services/campaign_customizer_service.proto"; +import "google/ads/googleads/v9/services/campaign_draft_service.proto"; +import "google/ads/googleads/v9/services/campaign_experiment_service.proto"; +import "google/ads/googleads/v9/services/campaign_extension_setting_service.proto"; +import "google/ads/googleads/v9/services/campaign_feed_service.proto"; +import "google/ads/googleads/v9/services/campaign_label_service.proto"; +import "google/ads/googleads/v9/services/campaign_service.proto"; +import "google/ads/googleads/v9/services/campaign_shared_set_service.proto"; +import "google/ads/googleads/v9/services/conversion_action_service.proto"; +import "google/ads/googleads/v9/services/conversion_custom_variable_service.proto"; +import "google/ads/googleads/v9/services/conversion_goal_campaign_config_service.proto"; +import "google/ads/googleads/v9/services/conversion_value_rule_service.proto"; +import "google/ads/googleads/v9/services/conversion_value_rule_set_service.proto"; +import "google/ads/googleads/v9/services/custom_conversion_goal_service.proto"; +import "google/ads/googleads/v9/services/customer_asset_service.proto"; +import "google/ads/googleads/v9/services/customer_conversion_goal_service.proto"; +import "google/ads/googleads/v9/services/customer_customizer_service.proto"; +import "google/ads/googleads/v9/services/customer_extension_setting_service.proto"; +import "google/ads/googleads/v9/services/customer_feed_service.proto"; +import "google/ads/googleads/v9/services/customer_label_service.proto"; +import "google/ads/googleads/v9/services/customer_negative_criterion_service.proto"; +import "google/ads/googleads/v9/services/customer_service.proto"; +import "google/ads/googleads/v9/services/customizer_attribute_service.proto"; +import "google/ads/googleads/v9/services/extension_feed_item_service.proto"; +import "google/ads/googleads/v9/services/feed_item_service.proto"; +import "google/ads/googleads/v9/services/feed_item_set_link_service.proto"; +import "google/ads/googleads/v9/services/feed_item_set_service.proto"; +import "google/ads/googleads/v9/services/feed_item_target_service.proto"; +import "google/ads/googleads/v9/services/feed_mapping_service.proto"; +import "google/ads/googleads/v9/services/feed_service.proto"; +import "google/ads/googleads/v9/services/keyword_plan_ad_group_keyword_service.proto"; +import "google/ads/googleads/v9/services/keyword_plan_ad_group_service.proto"; +import "google/ads/googleads/v9/services/keyword_plan_campaign_keyword_service.proto"; +import "google/ads/googleads/v9/services/keyword_plan_campaign_service.proto"; +import "google/ads/googleads/v9/services/keyword_plan_service.proto"; +import "google/ads/googleads/v9/services/label_service.proto"; +import "google/ads/googleads/v9/services/media_file_service.proto"; +import "google/ads/googleads/v9/services/remarketing_action_service.proto"; +import "google/ads/googleads/v9/services/shared_criterion_service.proto"; +import "google/ads/googleads/v9/services/shared_set_service.proto"; +import "google/ads/googleads/v9/services/smart_campaign_setting_service.proto"; +import "google/ads/googleads/v9/services/user_list_service.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GoogleAdsServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the GoogleAdsService. + +// Service to fetch data and metrics across resources. +service GoogleAdsService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns all rows that match the search query. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ChangeEventError]() + // [ChangeStatusError]() + // [ClickViewError]() + // [HeaderError]() + // [InternalError]() + // [QueryError]() + // [QuotaError]() + // [RequestError]() + rpc Search(SearchGoogleAdsRequest) returns (SearchGoogleAdsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/googleAds:search" + body: "*" + }; + option (google.api.method_signature) = "customer_id,query"; + } + + // Returns all rows that match the search stream query. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ChangeEventError]() + // [ChangeStatusError]() + // [ClickViewError]() + // [HeaderError]() + // [InternalError]() + // [QueryError]() + // [QuotaError]() + // [RequestError]() + rpc SearchStream(SearchGoogleAdsStreamRequest) returns (stream SearchGoogleAdsStreamResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/googleAds:searchStream" + body: "*" + }; + option (google.api.method_signature) = "customer_id,query"; + } + + // Creates, updates, or removes resources. This method supports atomic + // transactions with multiple types of resources. For example, you can + // atomically create a campaign and a campaign budget, or perform up to + // thousands of mutates atomically. + // + // This method is essentially a wrapper around a series of mutate methods. The + // only features it offers over calling those methods directly are: + // + // - Atomic transactions + // - Temp resource names (described below) + // - Somewhat reduced latency over making a series of mutate calls + // + // Note: Only resources that support atomic transactions are included, so this + // method can't replace all calls to individual services. + // + // ## Atomic Transaction Benefits + // + // Atomicity makes error handling much easier. If you're making a series of + // changes and one fails, it can leave your account in an inconsistent state. + // With atomicity, you either reach the desired state directly, or the request + // fails and you can retry. + // + // ## Temp Resource Names + // + // Temp resource names are a special type of resource name used to create a + // resource and reference that resource in the same request. For example, if a + // campaign budget is created with `resource_name` equal to + // `customers/123/campaignBudgets/-1`, that resource name can be reused in + // the `Campaign.budget` field in the same request. That way, the two + // resources are created and linked atomically. + // + // To create a temp resource name, put a negative number in the part of the + // name that the server would normally allocate. + // + // Note: + // + // - Resources must be created with a temp name before the name can be reused. + // For example, the previous CampaignBudget+Campaign example would fail if + // the mutate order was reversed. + // - Temp names are not remembered across requests. + // - There's no limit to the number of temp names in a request. + // - Each temp name must use a unique negative number, even if the resource + // types differ. + // + // ## Latency + // + // It's important to group mutates by resource type or the request may time + // out and fail. Latency is roughly equal to a series of calls to individual + // mutate methods, where each change in resource type is a new call. For + // example, mutating 10 campaigns then 10 ad groups is like 2 calls, while + // mutating 1 campaign, 1 ad group, 1 campaign, 1 ad group is like 4 calls. + // + // List of thrown errors: + // [AdCustomizerError]() + // [AdError]() + // [AdGroupAdError]() + // [AdGroupCriterionError]() + // [AdGroupError]() + // [AssetError]() + // [AuthenticationError]() + // [AuthorizationError]() + // [BiddingError]() + // [CampaignBudgetError]() + // [CampaignCriterionError]() + // [CampaignError]() + // [CampaignExperimentError]() + // [CampaignSharedSetError]() + // [CollectionSizeError]() + // [ContextError]() + // [ConversionActionError]() + // [CriterionError]() + // [CustomerFeedError]() + // [DatabaseError]() + // [DateError]() + // [DateRangeError]() + // [DistinctError]() + // [ExtensionFeedItemError]() + // [ExtensionSettingError]() + // [FeedAttributeReferenceError]() + // [FeedError]() + // [FeedItemError]() + // [FeedItemSetError]() + // [FieldError]() + // [FieldMaskError]() + // [FunctionParsingError]() + // [HeaderError]() + // [ImageError]() + // [InternalError]() + // [KeywordPlanAdGroupKeywordError]() + // [KeywordPlanCampaignError]() + // [KeywordPlanError]() + // [LabelError]() + // [ListOperationError]() + // [MediaUploadError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NullError]() + // [OperationAccessDeniedError]() + // [PolicyFindingError]() + // [PolicyViolationError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SettingError]() + // [SharedSetError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + // [UrlFieldError]() + // [UserListError]() + // [YoutubeVideoRegistrationError]() + rpc Mutate(MutateGoogleAdsRequest) returns (MutateGoogleAdsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/googleAds:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,mutate_operations"; + } +} + +// Request message for [GoogleAdsService.Search][google.ads.googleads.v9.services.GoogleAdsService.Search]. +message SearchGoogleAdsRequest { + // Required. The ID of the customer being queried. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The query string. + string query = 2 [(google.api.field_behavior) = REQUIRED]; + + // Token of the page to retrieve. If not specified, the first + // page of results will be returned. Use the value obtained from + // `next_page_token` in the previous response in order to request + // the next page of results. + string page_token = 3; + + // Number of elements to retrieve in a single page. + // When too large a page is requested, the server may decide to + // further limit the number of returned resources. + int32 page_size = 4; + + // If true, the request is validated but not executed. + bool validate_only = 5; + + // If true, the total number of results that match the query ignoring the + // LIMIT clause will be included in the response. + // Default is false. + bool return_total_results_count = 7; + + // Determines whether a summary row will be returned. By default, summary row + // is not returned. If requested, the summary row will be sent in a response + // by itself after all other query results are returned. + google.ads.googleads.v9.enums.SummaryRowSettingEnum.SummaryRowSetting summary_row_setting = 8; +} + +// Response message for [GoogleAdsService.Search][google.ads.googleads.v9.services.GoogleAdsService.Search]. +message SearchGoogleAdsResponse { + // The list of rows that matched the query. + repeated GoogleAdsRow results = 1; + + // Pagination token used to retrieve the next page of results. + // Pass the content of this string as the `page_token` attribute of + // the next request. `next_page_token` is not returned for the last + // page. + string next_page_token = 2; + + // Total number of results that match the query ignoring the LIMIT + // clause. + int64 total_results_count = 3; + + // FieldMask that represents what fields were requested by the user. + google.protobuf.FieldMask field_mask = 5; + + // Summary row that contains summary of metrics in results. + // Summary of metrics means aggregation of metrics across all results, + // here aggregation could be sum, average, rate, etc. + GoogleAdsRow summary_row = 6; +} + +// Request message for [GoogleAdsService.SearchStream][google.ads.googleads.v9.services.GoogleAdsService.SearchStream]. +message SearchGoogleAdsStreamRequest { + // Required. The ID of the customer being queried. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The query string. + string query = 2 [(google.api.field_behavior) = REQUIRED]; + + // Determines whether a summary row will be returned. By default, summary row + // is not returned. If requested, the summary row will be sent in a response + // by itself after all other query results are returned. + google.ads.googleads.v9.enums.SummaryRowSettingEnum.SummaryRowSetting summary_row_setting = 3; +} + +// Response message for [GoogleAdsService.SearchStream][google.ads.googleads.v9.services.GoogleAdsService.SearchStream]. +message SearchGoogleAdsStreamResponse { + // The list of rows that matched the query. + repeated GoogleAdsRow results = 1; + + // FieldMask that represents what fields were requested by the user. + google.protobuf.FieldMask field_mask = 2; + + // Summary row that contains summary of metrics in results. + // Summary of metrics means aggregation of metrics across all results, + // here aggregation could be sum, average, rate, etc. + GoogleAdsRow summary_row = 3; + + // The unique id of the request that is used for debugging purposes. + string request_id = 4; +} + +// A returned row from the query. +message GoogleAdsRow { + // The account budget in the query. + google.ads.googleads.v9.resources.AccountBudget account_budget = 42; + + // The account budget proposal referenced in the query. + google.ads.googleads.v9.resources.AccountBudgetProposal account_budget_proposal = 43; + + // The AccountLink referenced in the query. + google.ads.googleads.v9.resources.AccountLink account_link = 143; + + // The ad group referenced in the query. + google.ads.googleads.v9.resources.AdGroup ad_group = 3; + + // The ad referenced in the query. + google.ads.googleads.v9.resources.AdGroupAd ad_group_ad = 16; + + // The ad group ad asset view in the query. + google.ads.googleads.v9.resources.AdGroupAdAssetView ad_group_ad_asset_view = 131; + + // The ad group ad label referenced in the query. + google.ads.googleads.v9.resources.AdGroupAdLabel ad_group_ad_label = 120; + + // The ad group asset referenced in the query. + google.ads.googleads.v9.resources.AdGroupAsset ad_group_asset = 154; + + // The ad group audience view referenced in the query. + google.ads.googleads.v9.resources.AdGroupAudienceView ad_group_audience_view = 57; + + // The bid modifier referenced in the query. + google.ads.googleads.v9.resources.AdGroupBidModifier ad_group_bid_modifier = 24; + + // The criterion referenced in the query. + google.ads.googleads.v9.resources.AdGroupCriterion ad_group_criterion = 17; + + // The ad group criterion customizer referenced in the query. + google.ads.googleads.v9.resources.AdGroupCriterionCustomizer ad_group_criterion_customizer = 187; + + // The ad group criterion label referenced in the query. + google.ads.googleads.v9.resources.AdGroupCriterionLabel ad_group_criterion_label = 121; + + // The ad group criterion simulation referenced in the query. + google.ads.googleads.v9.resources.AdGroupCriterionSimulation ad_group_criterion_simulation = 110; + + // The ad group customizer referenced in the query. + google.ads.googleads.v9.resources.AdGroupCustomizer ad_group_customizer = 185; + + // The ad group extension setting referenced in the query. + google.ads.googleads.v9.resources.AdGroupExtensionSetting ad_group_extension_setting = 112; + + // The ad group feed referenced in the query. + google.ads.googleads.v9.resources.AdGroupFeed ad_group_feed = 67; + + // The ad group label referenced in the query. + google.ads.googleads.v9.resources.AdGroupLabel ad_group_label = 115; + + // The ad group simulation referenced in the query. + google.ads.googleads.v9.resources.AdGroupSimulation ad_group_simulation = 107; + + // The ad parameter referenced in the query. + google.ads.googleads.v9.resources.AdParameter ad_parameter = 130; + + // The age range view referenced in the query. + google.ads.googleads.v9.resources.AgeRangeView age_range_view = 48; + + // The ad schedule view referenced in the query. + google.ads.googleads.v9.resources.AdScheduleView ad_schedule_view = 89; + + // The domain category referenced in the query. + google.ads.googleads.v9.resources.DomainCategory domain_category = 91; + + // The asset referenced in the query. + google.ads.googleads.v9.resources.Asset asset = 105; + + // The asset field type view referenced in the query. + google.ads.googleads.v9.resources.AssetFieldTypeView asset_field_type_view = 168; + + // The asset group asset referenced in the query. + google.ads.googleads.v9.resources.AssetGroupAsset asset_group_asset = 173; + + // The asset group listing group filter referenced in the query. + google.ads.googleads.v9.resources.AssetGroupListingGroupFilter asset_group_listing_group_filter = 182; + + // The asset group product group view referenced in the query. + google.ads.googleads.v9.resources.AssetGroupProductGroupView asset_group_product_group_view = 189; + + // The asset group referenced in the query. + google.ads.googleads.v9.resources.AssetGroup asset_group = 172; + + // The asset set asset referenced in the query. + google.ads.googleads.v9.resources.AssetSetAsset asset_set_asset = 180; + + // The asset set referenced in the query. + google.ads.googleads.v9.resources.AssetSet asset_set = 179; + + // The batch job referenced in the query. + google.ads.googleads.v9.resources.BatchJob batch_job = 139; + + // The bidding data exclusion referenced in the query. + google.ads.googleads.v9.resources.BiddingDataExclusion bidding_data_exclusion = 159; + + // The bidding seasonality adjustment referenced in the query. + google.ads.googleads.v9.resources.BiddingSeasonalityAdjustment bidding_seasonality_adjustment = 160; + + // The bidding strategy referenced in the query. + google.ads.googleads.v9.resources.BiddingStrategy bidding_strategy = 18; + + // The bidding strategy simulation referenced in the query. + google.ads.googleads.v9.resources.BiddingStrategySimulation bidding_strategy_simulation = 158; + + // The billing setup referenced in the query. + google.ads.googleads.v9.resources.BillingSetup billing_setup = 41; + + // The call view referenced in the query. + google.ads.googleads.v9.resources.CallView call_view = 152; + + // The campaign budget referenced in the query. + google.ads.googleads.v9.resources.CampaignBudget campaign_budget = 19; + + // The campaign referenced in the query. + google.ads.googleads.v9.resources.Campaign campaign = 2; + + // The campaign asset referenced in the query. + google.ads.googleads.v9.resources.CampaignAsset campaign_asset = 142; + + // The campaign asset set referenced in the query. + google.ads.googleads.v9.resources.CampaignAssetSet campaign_asset_set = 181; + + // The campaign audience view referenced in the query. + google.ads.googleads.v9.resources.CampaignAudienceView campaign_audience_view = 69; + + // The campaign bid modifier referenced in the query. + google.ads.googleads.v9.resources.CampaignBidModifier campaign_bid_modifier = 26; + + // The CampaignConversionGoal referenced in the query. + google.ads.googleads.v9.resources.CampaignConversionGoal campaign_conversion_goal = 175; + + // The campaign criterion referenced in the query. + google.ads.googleads.v9.resources.CampaignCriterion campaign_criterion = 20; + + // The campaign criterion simulation referenced in the query. + google.ads.googleads.v9.resources.CampaignCriterionSimulation campaign_criterion_simulation = 111; + + // The campaign customizer referenced in the query. + google.ads.googleads.v9.resources.CampaignCustomizer campaign_customizer = 186; + + // The campaign draft referenced in the query. + google.ads.googleads.v9.resources.CampaignDraft campaign_draft = 49; + + // The campaign experiment referenced in the query. + google.ads.googleads.v9.resources.CampaignExperiment campaign_experiment = 84; + + // The campaign extension setting referenced in the query. + google.ads.googleads.v9.resources.CampaignExtensionSetting campaign_extension_setting = 113; + + // The campaign feed referenced in the query. + google.ads.googleads.v9.resources.CampaignFeed campaign_feed = 63; + + // The campaign label referenced in the query. + google.ads.googleads.v9.resources.CampaignLabel campaign_label = 108; + + // Campaign Shared Set referenced in AWQL query. + google.ads.googleads.v9.resources.CampaignSharedSet campaign_shared_set = 30; + + // The campaign simulation referenced in the query. + google.ads.googleads.v9.resources.CampaignSimulation campaign_simulation = 157; + + // The carrier constant referenced in the query. + google.ads.googleads.v9.resources.CarrierConstant carrier_constant = 66; + + // The ChangeEvent referenced in the query. + google.ads.googleads.v9.resources.ChangeEvent change_event = 145; + + // The ChangeStatus referenced in the query. + google.ads.googleads.v9.resources.ChangeStatus change_status = 37; + + // The CombinedAudience referenced in the query. + google.ads.googleads.v9.resources.CombinedAudience combined_audience = 148; + + // The conversion action referenced in the query. + google.ads.googleads.v9.resources.ConversionAction conversion_action = 103; + + // The conversion custom variable referenced in the query. + google.ads.googleads.v9.resources.ConversionCustomVariable conversion_custom_variable = 153; + + // The ConversionGoalCampaignConfig referenced in the query. + google.ads.googleads.v9.resources.ConversionGoalCampaignConfig conversion_goal_campaign_config = 177; + + // The conversion value rule referenced in the query. + google.ads.googleads.v9.resources.ConversionValueRule conversion_value_rule = 164; + + // The conversion value rule set referenced in the query. + google.ads.googleads.v9.resources.ConversionValueRuleSet conversion_value_rule_set = 165; + + // The ClickView referenced in the query. + google.ads.googleads.v9.resources.ClickView click_view = 122; + + // The currency constant referenced in the query. + google.ads.googleads.v9.resources.CurrencyConstant currency_constant = 134; + + // The CustomAudience referenced in the query. + google.ads.googleads.v9.resources.CustomAudience custom_audience = 147; + + // The CustomConversionGoal referenced in the query. + google.ads.googleads.v9.resources.CustomConversionGoal custom_conversion_goal = 176; + + // The CustomInterest referenced in the query. + google.ads.googleads.v9.resources.CustomInterest custom_interest = 104; + + // The customer referenced in the query. + google.ads.googleads.v9.resources.Customer customer = 1; + + // The customer asset referenced in the query. + google.ads.googleads.v9.resources.CustomerAsset customer_asset = 155; + + // The accessible bidding strategy referenced in the query. + google.ads.googleads.v9.resources.AccessibleBiddingStrategy accessible_bidding_strategy = 169; + + // The customer customizer referenced in the query. + google.ads.googleads.v9.resources.CustomerCustomizer customer_customizer = 184; + + // The CustomerManagerLink referenced in the query. + google.ads.googleads.v9.resources.CustomerManagerLink customer_manager_link = 61; + + // The CustomerClientLink referenced in the query. + google.ads.googleads.v9.resources.CustomerClientLink customer_client_link = 62; + + // The CustomerClient referenced in the query. + google.ads.googleads.v9.resources.CustomerClient customer_client = 70; + + // The CustomerConversionGoal referenced in the query. + google.ads.googleads.v9.resources.CustomerConversionGoal customer_conversion_goal = 174; + + // The customer extension setting referenced in the query. + google.ads.googleads.v9.resources.CustomerExtensionSetting customer_extension_setting = 114; + + // The customer feed referenced in the query. + google.ads.googleads.v9.resources.CustomerFeed customer_feed = 64; + + // The customer label referenced in the query. + google.ads.googleads.v9.resources.CustomerLabel customer_label = 124; + + // The customer negative criterion referenced in the query. + google.ads.googleads.v9.resources.CustomerNegativeCriterion customer_negative_criterion = 88; + + // The CustomerUserAccess referenced in the query. + google.ads.googleads.v9.resources.CustomerUserAccess customer_user_access = 146; + + // The CustomerUserAccessInvitation referenced in the query. + google.ads.googleads.v9.resources.CustomerUserAccessInvitation customer_user_access_invitation = 150; + + // The customizer attribute referenced in the query. + google.ads.googleads.v9.resources.CustomizerAttribute customizer_attribute = 178; + + // The detail placement view referenced in the query. + google.ads.googleads.v9.resources.DetailPlacementView detail_placement_view = 118; + + // The detailed demographic referenced in the query. + google.ads.googleads.v9.resources.DetailedDemographic detailed_demographic = 166; + + // The display keyword view referenced in the query. + google.ads.googleads.v9.resources.DisplayKeywordView display_keyword_view = 47; + + // The distance view referenced in the query. + google.ads.googleads.v9.resources.DistanceView distance_view = 132; + + // The dynamic search ads search term view referenced in the query. + google.ads.googleads.v9.resources.DynamicSearchAdsSearchTermView dynamic_search_ads_search_term_view = 106; + + // The expanded landing page view referenced in the query. + google.ads.googleads.v9.resources.ExpandedLandingPageView expanded_landing_page_view = 128; + + // The extension feed item referenced in the query. + google.ads.googleads.v9.resources.ExtensionFeedItem extension_feed_item = 85; + + // The feed referenced in the query. + google.ads.googleads.v9.resources.Feed feed = 46; + + // The feed item referenced in the query. + google.ads.googleads.v9.resources.FeedItem feed_item = 50; + + // The feed item set referenced in the query. + google.ads.googleads.v9.resources.FeedItemSet feed_item_set = 149; + + // The feed item set link referenced in the query. + google.ads.googleads.v9.resources.FeedItemSetLink feed_item_set_link = 151; + + // The feed item target referenced in the query. + google.ads.googleads.v9.resources.FeedItemTarget feed_item_target = 116; + + // The feed mapping referenced in the query. + google.ads.googleads.v9.resources.FeedMapping feed_mapping = 58; + + // The feed placeholder view referenced in the query. + google.ads.googleads.v9.resources.FeedPlaceholderView feed_placeholder_view = 97; + + // The gender view referenced in the query. + google.ads.googleads.v9.resources.GenderView gender_view = 40; + + // The geo target constant referenced in the query. + google.ads.googleads.v9.resources.GeoTargetConstant geo_target_constant = 23; + + // The geographic view referenced in the query. + google.ads.googleads.v9.resources.GeographicView geographic_view = 125; + + // The group placement view referenced in the query. + google.ads.googleads.v9.resources.GroupPlacementView group_placement_view = 119; + + // The hotel group view referenced in the query. + google.ads.googleads.v9.resources.HotelGroupView hotel_group_view = 51; + + // The hotel performance view referenced in the query. + google.ads.googleads.v9.resources.HotelPerformanceView hotel_performance_view = 71; + + // The hotel reconciliation referenced in the query. + google.ads.googleads.v9.resources.HotelReconciliation hotel_reconciliation = 188; + + // The income range view referenced in the query. + google.ads.googleads.v9.resources.IncomeRangeView income_range_view = 138; + + // The keyword view referenced in the query. + google.ads.googleads.v9.resources.KeywordView keyword_view = 21; + + // The keyword plan referenced in the query. + google.ads.googleads.v9.resources.KeywordPlan keyword_plan = 32; + + // The keyword plan campaign referenced in the query. + google.ads.googleads.v9.resources.KeywordPlanCampaign keyword_plan_campaign = 33; + + // The keyword plan campaign keyword referenced in the query. + google.ads.googleads.v9.resources.KeywordPlanCampaignKeyword keyword_plan_campaign_keyword = 140; + + // The keyword plan ad group referenced in the query. + google.ads.googleads.v9.resources.KeywordPlanAdGroup keyword_plan_ad_group = 35; + + // The keyword plan ad group referenced in the query. + google.ads.googleads.v9.resources.KeywordPlanAdGroupKeyword keyword_plan_ad_group_keyword = 141; + + // The keyword theme constant referenced in the query. + google.ads.googleads.v9.resources.KeywordThemeConstant keyword_theme_constant = 163; + + // The label referenced in the query. + google.ads.googleads.v9.resources.Label label = 52; + + // The landing page view referenced in the query. + google.ads.googleads.v9.resources.LandingPageView landing_page_view = 126; + + // The language constant referenced in the query. + google.ads.googleads.v9.resources.LanguageConstant language_constant = 55; + + // The location view referenced in the query. + google.ads.googleads.v9.resources.LocationView location_view = 123; + + // The managed placement view referenced in the query. + google.ads.googleads.v9.resources.ManagedPlacementView managed_placement_view = 53; + + // The media file referenced in the query. + google.ads.googleads.v9.resources.MediaFile media_file = 90; + + // The mobile app category constant referenced in the query. + google.ads.googleads.v9.resources.MobileAppCategoryConstant mobile_app_category_constant = 87; + + // The mobile device constant referenced in the query. + google.ads.googleads.v9.resources.MobileDeviceConstant mobile_device_constant = 98; + + // The offline user data job referenced in the query. + google.ads.googleads.v9.resources.OfflineUserDataJob offline_user_data_job = 137; + + // The operating system version constant referenced in the query. + google.ads.googleads.v9.resources.OperatingSystemVersionConstant operating_system_version_constant = 86; + + // The paid organic search term view referenced in the query. + google.ads.googleads.v9.resources.PaidOrganicSearchTermView paid_organic_search_term_view = 129; + + // The parental status view referenced in the query. + google.ads.googleads.v9.resources.ParentalStatusView parental_status_view = 45; + + // The Product Bidding Category referenced in the query. + google.ads.googleads.v9.resources.ProductBiddingCategoryConstant product_bidding_category_constant = 109; + + // The product group view referenced in the query. + google.ads.googleads.v9.resources.ProductGroupView product_group_view = 54; + + // The recommendation referenced in the query. + google.ads.googleads.v9.resources.Recommendation recommendation = 22; + + // The search term view referenced in the query. + google.ads.googleads.v9.resources.SearchTermView search_term_view = 68; + + // The shared set referenced in the query. + google.ads.googleads.v9.resources.SharedCriterion shared_criterion = 29; + + // The shared set referenced in the query. + google.ads.googleads.v9.resources.SharedSet shared_set = 27; + + // The Smart campaign setting referenced in the query. + google.ads.googleads.v9.resources.SmartCampaignSetting smart_campaign_setting = 167; + + // The shopping performance view referenced in the query. + google.ads.googleads.v9.resources.ShoppingPerformanceView shopping_performance_view = 117; + + // The Smart campaign search term view referenced in the query. + google.ads.googleads.v9.resources.SmartCampaignSearchTermView smart_campaign_search_term_view = 170; + + // The AccountLink referenced in the query. + google.ads.googleads.v9.resources.ThirdPartyAppAnalyticsLink third_party_app_analytics_link = 144; + + // The topic view referenced in the query. + google.ads.googleads.v9.resources.TopicView topic_view = 44; + + // The user interest referenced in the query. + google.ads.googleads.v9.resources.UserInterest user_interest = 59; + + // The life event referenced in the query. + google.ads.googleads.v9.resources.LifeEvent life_event = 161; + + // The user list referenced in the query. + google.ads.googleads.v9.resources.UserList user_list = 38; + + // The user location view referenced in the query. + google.ads.googleads.v9.resources.UserLocationView user_location_view = 135; + + // The remarketing action referenced in the query. + google.ads.googleads.v9.resources.RemarketingAction remarketing_action = 60; + + // The topic constant referenced in the query. + google.ads.googleads.v9.resources.TopicConstant topic_constant = 31; + + // The video referenced in the query. + google.ads.googleads.v9.resources.Video video = 39; + + // The webpage view referenced in the query. + google.ads.googleads.v9.resources.WebpageView webpage_view = 162; + + // The metrics. + google.ads.googleads.v9.common.Metrics metrics = 4; + + // The segments. + google.ads.googleads.v9.common.Segments segments = 102; +} + +// Request message for [GoogleAdsService.Mutate][google.ads.googleads.v9.services.GoogleAdsService.Mutate]. +message MutateGoogleAdsRequest { + // Required. The ID of the customer whose resources are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual resources. + repeated MutateOperation mutate_operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. The mutable + // resource will only be returned if the resource has the appropriate response + // field. E.g. MutateCampaignResult.campaign. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// Response message for [GoogleAdsService.Mutate][google.ads.googleads.v9.services.GoogleAdsService.Mutate]. +message MutateGoogleAdsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g., auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All responses for the mutate. + repeated MutateOperationResponse mutate_operation_responses = 1; +} + +// A single operation (create, update, remove) on a resource. +message MutateOperation { + // The mutate operation. + oneof operation { + // An ad group ad label mutate operation. + AdGroupAdLabelOperation ad_group_ad_label_operation = 17; + + // An ad group ad mutate operation. + AdGroupAdOperation ad_group_ad_operation = 1; + + // An ad group asset mutate operation. + AdGroupAssetOperation ad_group_asset_operation = 56; + + // An ad group bid modifier mutate operation. + AdGroupBidModifierOperation ad_group_bid_modifier_operation = 2; + + // An ad group criterion customizer mutate operation. + AdGroupCriterionCustomizerOperation ad_group_criterion_customizer_operation = 77; + + // An ad group criterion label mutate operation. + AdGroupCriterionLabelOperation ad_group_criterion_label_operation = 18; + + // An ad group criterion mutate operation. + AdGroupCriterionOperation ad_group_criterion_operation = 3; + + // An ad group customizer mutate operation. + AdGroupCustomizerOperation ad_group_customizer_operation = 75; + + // An ad group extension setting mutate operation. + AdGroupExtensionSettingOperation ad_group_extension_setting_operation = 19; + + // An ad group feed mutate operation. + AdGroupFeedOperation ad_group_feed_operation = 20; + + // An ad group label mutate operation. + AdGroupLabelOperation ad_group_label_operation = 21; + + // An ad group mutate operation. + AdGroupOperation ad_group_operation = 5; + + // An ad mutate operation. + AdOperation ad_operation = 49; + + // An ad parameter mutate operation. + AdParameterOperation ad_parameter_operation = 22; + + // An asset mutate operation. + AssetOperation asset_operation = 23; + + // An asset group asset mutate operation. + AssetGroupAssetOperation asset_group_asset_operation = 65; + + // An asset group listing group filter mutate operation. + AssetGroupListingGroupFilterOperation asset_group_listing_group_filter_operation = 78; + + // An asset group mutate operation. + AssetGroupOperation asset_group_operation = 62; + + // An asset set asset mutate operation. + AssetSetAssetOperation asset_set_asset_operation = 71; + + // An asset set mutate operation. + AssetSetOperation asset_set_operation = 72; + + // A bidding data exclusion mutate operation. + BiddingDataExclusionOperation bidding_data_exclusion_operation = 58; + + // A bidding seasonality adjustment mutate operation. + BiddingSeasonalityAdjustmentOperation bidding_seasonality_adjustment_operation = 59; + + // A bidding strategy mutate operation. + BiddingStrategyOperation bidding_strategy_operation = 6; + + // A campaign asset mutate operation. + CampaignAssetOperation campaign_asset_operation = 52; + + // A campaign asset mutate operation. + CampaignAssetSetOperation campaign_asset_set_operation = 73; + + // A campaign bid modifier mutate operation. + CampaignBidModifierOperation campaign_bid_modifier_operation = 7; + + // A campaign budget mutate operation. + CampaignBudgetOperation campaign_budget_operation = 8; + + // A campaign conversion goal mutate operation. + CampaignConversionGoalOperation campaign_conversion_goal_operation = 67; + + // A campaign criterion mutate operation. + CampaignCriterionOperation campaign_criterion_operation = 13; + + // An campaign customizer mutate operation. + CampaignCustomizerOperation campaign_customizer_operation = 76; + + // A campaign draft mutate operation. + CampaignDraftOperation campaign_draft_operation = 24; + + // A campaign experiment mutate operation. + CampaignExperimentOperation campaign_experiment_operation = 25; + + // A campaign extension setting mutate operation. + CampaignExtensionSettingOperation campaign_extension_setting_operation = 26; + + // A campaign feed mutate operation. + CampaignFeedOperation campaign_feed_operation = 27; + + // A campaign label mutate operation. + CampaignLabelOperation campaign_label_operation = 28; + + // A campaign mutate operation. + CampaignOperation campaign_operation = 10; + + // A campaign shared set mutate operation. + CampaignSharedSetOperation campaign_shared_set_operation = 11; + + // A conversion action mutate operation. + ConversionActionOperation conversion_action_operation = 12; + + // A conversion custom variable mutate operation. + ConversionCustomVariableOperation conversion_custom_variable_operation = 55; + + // A conversion goal campaign config mutate operation. + ConversionGoalCampaignConfigOperation conversion_goal_campaign_config_operation = 69; + + // A conversion value rule mutate operation. + ConversionValueRuleOperation conversion_value_rule_operation = 63; + + // A conversion value rule set mutate operation. + ConversionValueRuleSetOperation conversion_value_rule_set_operation = 64; + + // A custom conversion goal mutate operation. + CustomConversionGoalOperation custom_conversion_goal_operation = 68; + + // A customer asset mutate operation. + CustomerAssetOperation customer_asset_operation = 57; + + // A customer conversion goal mutate operation. + CustomerConversionGoalOperation customer_conversion_goal_operation = 66; + + // An customer customizer mutate operation. + CustomerCustomizerOperation customizer_customizer_operation = 74; + + // A customer extension setting mutate operation. + CustomerExtensionSettingOperation customer_extension_setting_operation = 30; + + // A customer feed mutate operation. + CustomerFeedOperation customer_feed_operation = 31; + + // A customer label mutate operation. + CustomerLabelOperation customer_label_operation = 32; + + // A customer negative criterion mutate operation. + CustomerNegativeCriterionOperation customer_negative_criterion_operation = 34; + + // A customer mutate operation. + CustomerOperation customer_operation = 35; + + // An customizer attribute mutate operation. + CustomizerAttributeOperation customizer_attribute_operation = 70; + + // An extension feed item mutate operation. + ExtensionFeedItemOperation extension_feed_item_operation = 36; + + // A feed item mutate operation. + FeedItemOperation feed_item_operation = 37; + + // A feed item set mutate operation. + FeedItemSetOperation feed_item_set_operation = 53; + + // A feed item set link mutate operation. + FeedItemSetLinkOperation feed_item_set_link_operation = 54; + + // A feed item target mutate operation. + FeedItemTargetOperation feed_item_target_operation = 38; + + // A feed mapping mutate operation. + FeedMappingOperation feed_mapping_operation = 39; + + // A feed mutate operation. + FeedOperation feed_operation = 40; + + // A keyword plan ad group operation. + KeywordPlanAdGroupOperation keyword_plan_ad_group_operation = 44; + + // A keyword plan ad group keyword operation. + KeywordPlanAdGroupKeywordOperation keyword_plan_ad_group_keyword_operation = 50; + + // A keyword plan campaign keyword operation. + KeywordPlanCampaignKeywordOperation keyword_plan_campaign_keyword_operation = 51; + + // A keyword plan campaign operation. + KeywordPlanCampaignOperation keyword_plan_campaign_operation = 45; + + // A keyword plan operation. + KeywordPlanOperation keyword_plan_operation = 48; + + // A label mutate operation. + LabelOperation label_operation = 41; + + // A media file mutate operation. + MediaFileOperation media_file_operation = 42; + + // A remarketing action mutate operation. + RemarketingActionOperation remarketing_action_operation = 43; + + // A shared criterion mutate operation. + SharedCriterionOperation shared_criterion_operation = 14; + + // A shared set mutate operation. + SharedSetOperation shared_set_operation = 15; + + // A Smart campaign setting mutate operation. + SmartCampaignSettingOperation smart_campaign_setting_operation = 61; + + // A user list mutate operation. + UserListOperation user_list_operation = 16; + } +} + +// Response message for the resource mutate. +message MutateOperationResponse { + // The mutate response. + oneof response { + // The result for the ad group ad label mutate. + MutateAdGroupAdLabelResult ad_group_ad_label_result = 17; + + // The result for the ad group ad mutate. + MutateAdGroupAdResult ad_group_ad_result = 1; + + // The result for the ad group asset mutate. + MutateAdGroupAssetResult ad_group_asset_result = 56; + + // The result for the ad group bid modifier mutate. + MutateAdGroupBidModifierResult ad_group_bid_modifier_result = 2; + + // The result for the ad group criterion customizer mutate. + MutateAdGroupCriterionCustomizerResult ad_group_criterion_customizer_result = 77; + + // The result for the ad group criterion label mutate. + MutateAdGroupCriterionLabelResult ad_group_criterion_label_result = 18; + + // The result for the ad group criterion mutate. + MutateAdGroupCriterionResult ad_group_criterion_result = 3; + + // The result for the ad group customizer mutate. + MutateAdGroupCustomizerResult ad_group_customizer_result = 75; + + // The result for the ad group extension setting mutate. + MutateAdGroupExtensionSettingResult ad_group_extension_setting_result = 19; + + // The result for the ad group feed mutate. + MutateAdGroupFeedResult ad_group_feed_result = 20; + + // The result for the ad group label mutate. + MutateAdGroupLabelResult ad_group_label_result = 21; + + // The result for the ad group mutate. + MutateAdGroupResult ad_group_result = 5; + + // The result for the ad parameter mutate. + MutateAdParameterResult ad_parameter_result = 22; + + // The result for the ad mutate. + MutateAdResult ad_result = 49; + + // The result for the asset mutate. + MutateAssetResult asset_result = 23; + + // The result for the asset group asset mutate. + MutateAssetGroupAssetResult asset_group_asset_result = 65; + + // The result for the asset group listing group filter mutate. + MutateAssetGroupListingGroupFilterResult asset_group_listing_group_filter_result = 78; + + // The result for the asset group mutate. + MutateAssetGroupResult asset_group_result = 62; + + // The result for the asset set asset mutate. + MutateAssetSetAssetResult asset_set_asset_result = 71; + + // The result for the asset set mutate. + MutateAssetSetResult asset_set_result = 72; + + // The result for the bidding data exclusion mutate. + MutateBiddingDataExclusionsResult bidding_data_exclusion_result = 58; + + // The result for the bidding seasonality adjustment mutate. + MutateBiddingSeasonalityAdjustmentsResult bidding_seasonality_adjustment_result = 59; + + // The result for the bidding strategy mutate. + MutateBiddingStrategyResult bidding_strategy_result = 6; + + // The result for the campaign asset mutate. + MutateCampaignAssetResult campaign_asset_result = 52; + + // The result for the campaign asset set mutate. + MutateCampaignAssetSetResult campaign_asset_set_result = 73; + + // The result for the campaign bid modifier mutate. + MutateCampaignBidModifierResult campaign_bid_modifier_result = 7; + + // The result for the campaign budget mutate. + MutateCampaignBudgetResult campaign_budget_result = 8; + + // The result for the campaign conversion goal mutate. + MutateCampaignConversionGoalResult campaign_conversion_goal_result = 67; + + // The result for the campaign criterion mutate. + MutateCampaignCriterionResult campaign_criterion_result = 13; + + // The result for the campaign customizer mutate. + MutateCampaignCustomizerResult campaign_customizer_result = 76; + + // The result for the campaign draft mutate. + MutateCampaignDraftResult campaign_draft_result = 24; + + // The result for the campaign experiment mutate. + MutateCampaignExperimentResult campaign_experiment_result = 25; + + // The result for the campaign extension setting mutate. + MutateCampaignExtensionSettingResult campaign_extension_setting_result = 26; + + // The result for the campaign feed mutate. + MutateCampaignFeedResult campaign_feed_result = 27; + + // The result for the campaign label mutate. + MutateCampaignLabelResult campaign_label_result = 28; + + // The result for the campaign mutate. + MutateCampaignResult campaign_result = 10; + + // The result for the campaign shared set mutate. + MutateCampaignSharedSetResult campaign_shared_set_result = 11; + + // The result for the conversion action mutate. + MutateConversionActionResult conversion_action_result = 12; + + // The result for the conversion custom variable mutate. + MutateConversionCustomVariableResult conversion_custom_variable_result = 55; + + // The result for the conversion goal campaign config mutate. + MutateConversionGoalCampaignConfigResult conversion_goal_campaign_config_result = 69; + + // The result for the conversion value rule mutate. + MutateConversionValueRuleResult conversion_value_rule_result = 63; + + // The result for the conversion value rule set mutate. + MutateConversionValueRuleSetResult conversion_value_rule_set_result = 64; + + // The result for the custom conversion goal mutate. + MutateCustomConversionGoalResult custom_conversion_goal_result = 68; + + // The result for the customer asset mutate. + MutateCustomerAssetResult customer_asset_result = 57; + + // The result for the customer conversion goal mutate. + MutateCustomerConversionGoalResult customer_conversion_goal_result = 66; + + // The result for the customer customizer mutate. + MutateCustomerCustomizerResult customer_customizer_result = 74; + + // The result for the customer extension setting mutate. + MutateCustomerExtensionSettingResult customer_extension_setting_result = 30; + + // The result for the customer feed mutate. + MutateCustomerFeedResult customer_feed_result = 31; + + // The result for the customer label mutate. + MutateCustomerLabelResult customer_label_result = 32; + + // The result for the customer negative criterion mutate. + MutateCustomerNegativeCriteriaResult customer_negative_criterion_result = 34; + + // The result for the customer mutate. + MutateCustomerResult customer_result = 35; + + // The result for the customizer attribute mutate. + MutateCustomizerAttributeResult customizer_attribute_result = 70; + + // The result for the extension feed item mutate. + MutateExtensionFeedItemResult extension_feed_item_result = 36; + + // The result for the feed item mutate. + MutateFeedItemResult feed_item_result = 37; + + // The result for the feed item set mutate. + MutateFeedItemSetResult feed_item_set_result = 53; + + // The result for the feed item set link mutate. + MutateFeedItemSetLinkResult feed_item_set_link_result = 54; + + // The result for the feed item target mutate. + MutateFeedItemTargetResult feed_item_target_result = 38; + + // The result for the feed mapping mutate. + MutateFeedMappingResult feed_mapping_result = 39; + + // The result for the feed mutate. + MutateFeedResult feed_result = 40; + + // The result for the keyword plan ad group mutate. + MutateKeywordPlanAdGroupResult keyword_plan_ad_group_result = 44; + + // The result for the keyword plan campaign mutate. + MutateKeywordPlanCampaignResult keyword_plan_campaign_result = 45; + + // The result for the keyword plan ad group keyword mutate. + MutateKeywordPlanAdGroupKeywordResult keyword_plan_ad_group_keyword_result = 50; + + // The result for the keyword plan campaign keyword mutate. + MutateKeywordPlanCampaignKeywordResult keyword_plan_campaign_keyword_result = 51; + + // The result for the keyword plan mutate. + MutateKeywordPlansResult keyword_plan_result = 48; + + // The result for the label mutate. + MutateLabelResult label_result = 41; + + // The result for the media file mutate. + MutateMediaFileResult media_file_result = 42; + + // The result for the remarketing action mutate. + MutateRemarketingActionResult remarketing_action_result = 43; + + // The result for the shared criterion mutate. + MutateSharedCriterionResult shared_criterion_result = 14; + + // The result for the shared set mutate. + MutateSharedSetResult shared_set_result = 15; + + // The result for the Smart campaign setting mutate. + MutateSmartCampaignSettingResult smart_campaign_setting_result = 61; + + // The result for the user list mutate. + MutateUserListResult user_list_result = 16; + } +} diff --git a/google/ads/googleads/v9/services/group_placement_view_service.proto b/google/ads/googleads/v9/services/group_placement_view_service.proto new file mode 100644 index 000000000..bd8dda949 --- /dev/null +++ b/google/ads/googleads/v9/services/group_placement_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/group_placement_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "GroupPlacementViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Group Placement View service. + +// Service to fetch Group Placement views. +service GroupPlacementViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Group Placement view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetGroupPlacementView(GetGroupPlacementViewRequest) returns (google.ads.googleads.v9.resources.GroupPlacementView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/groupPlacementViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [GroupPlacementViewService.GetGroupPlacementView][google.ads.googleads.v9.services.GroupPlacementViewService.GetGroupPlacementView]. +message GetGroupPlacementViewRequest { + // Required. The resource name of the Group Placement view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/GroupPlacementView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/hotel_group_view_service.proto b/google/ads/googleads/v9/services/hotel_group_view_service.proto new file mode 100644 index 000000000..a11973374 --- /dev/null +++ b/google/ads/googleads/v9/services/hotel_group_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/hotel_group_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "HotelGroupViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Hotel Group View Service. + +// Service to manage Hotel Group Views. +service HotelGroupViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Hotel Group View in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetHotelGroupView(GetHotelGroupViewRequest) returns (google.ads.googleads.v9.resources.HotelGroupView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/hotelGroupViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [HotelGroupViewService.GetHotelGroupView][google.ads.googleads.v9.services.HotelGroupViewService.GetHotelGroupView]. +message GetHotelGroupViewRequest { + // Required. Resource name of the Hotel Group View to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/HotelGroupView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/hotel_performance_view_service.proto b/google/ads/googleads/v9/services/hotel_performance_view_service.proto new file mode 100644 index 000000000..6b516ca57 --- /dev/null +++ b/google/ads/googleads/v9/services/hotel_performance_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/hotel_performance_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "HotelPerformanceViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Hotel Performance View Service. + +// Service to manage Hotel Performance Views. +service HotelPerformanceViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Hotel Performance View in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetHotelPerformanceView(GetHotelPerformanceViewRequest) returns (google.ads.googleads.v9.resources.HotelPerformanceView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/hotelPerformanceView}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [HotelPerformanceViewService.GetHotelPerformanceView][google.ads.googleads.v9.services.HotelPerformanceViewService.GetHotelPerformanceView]. +message GetHotelPerformanceViewRequest { + // Required. Resource name of the Hotel Performance View to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/HotelPerformanceView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/income_range_view_service.proto b/google/ads/googleads/v9/services/income_range_view_service.proto new file mode 100644 index 000000000..9bc978a4f --- /dev/null +++ b/google/ads/googleads/v9/services/income_range_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/income_range_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "IncomeRangeViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Income Range View service. + +// Service to manage income range views. +service IncomeRangeViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested income range view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetIncomeRangeView(GetIncomeRangeViewRequest) returns (google.ads.googleads.v9.resources.IncomeRangeView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/incomeRangeViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [IncomeRangeViewService.GetIncomeRangeView][google.ads.googleads.v9.services.IncomeRangeViewService.GetIncomeRangeView]. +message GetIncomeRangeViewRequest { + // Required. The resource name of the income range view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/IncomeRangeView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/invoice_service.proto b/google/ads/googleads/v9/services/invoice_service.proto new file mode 100644 index 000000000..ce8d3734e --- /dev/null +++ b/google/ads/googleads/v9/services/invoice_service.proto @@ -0,0 +1,83 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/month_of_year.proto"; +import "google/ads/googleads/v9/resources/invoice.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "InvoiceServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Invoice service. + +// A service to fetch invoices issued for a billing setup during a given month. +service InvoiceService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns all invoices associated with a billing setup, for a given month. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [InvoiceError]() + // [QuotaError]() + // [RequestError]() + rpc ListInvoices(ListInvoicesRequest) returns (ListInvoicesResponse) { + option (google.api.http) = { + get: "/v9/customers/{customer_id=*}/invoices" + }; + option (google.api.method_signature) = "customer_id,billing_setup,issue_year,issue_month"; + } +} + +// Request message for fetching the invoices of a given billing setup that were +// issued during a given month. +message ListInvoicesRequest { + // Required. The ID of the customer to fetch invoices for. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The billing setup resource name of the requested invoices. + // + // `customers/{customer_id}/billingSetups/{billing_setup_id}` + string billing_setup = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The issue year to retrieve invoices, in yyyy format. Only + // invoices issued in 2019 or later can be retrieved. + string issue_year = 3 [(google.api.field_behavior) = REQUIRED]; + + // Required. The issue month to retrieve invoices. + google.ads.googleads.v9.enums.MonthOfYearEnum.MonthOfYear issue_month = 4 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [InvoiceService.ListInvoices][google.ads.googleads.v9.services.InvoiceService.ListInvoices]. +message ListInvoicesResponse { + // The list of invoices that match the billing setup and time period. + repeated google.ads.googleads.v9.resources.Invoice invoices = 1; +} diff --git a/google/ads/googleads/v9/services/keyword_plan_ad_group_keyword_service.proto b/google/ads/googleads/v9/services/keyword_plan_ad_group_keyword_service.proto new file mode 100644 index 000000000..5001b10db --- /dev/null +++ b/google/ads/googleads/v9/services/keyword_plan_ad_group_keyword_service.proto @@ -0,0 +1,165 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/keyword_plan_ad_group_keyword.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupKeywordServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the keyword plan ad group keyword service. + +// Service to manage Keyword Plan ad group keywords. KeywordPlanAdGroup is +// required to add ad group keywords. Positive and negative keywords are +// supported. A maximum of 10,000 positive keywords are allowed per keyword +// plan. A maximum of 1,000 negative keywords are allower per keyword plan. This +// includes campaign negative keywords and ad group negative keywords. +service KeywordPlanAdGroupKeywordService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Keyword Plan ad group keyword in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordPlanAdGroupKeyword(GetKeywordPlanAdGroupKeywordRequest) returns (google.ads.googleads.v9.resources.KeywordPlanAdGroupKeyword) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/keywordPlanAdGroupKeywords/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes Keyword Plan ad group keywords. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanAdGroupKeywordError]() + // [KeywordPlanError]() + // [MutateError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc MutateKeywordPlanAdGroupKeywords(MutateKeywordPlanAdGroupKeywordsRequest) returns (MutateKeywordPlanAdGroupKeywordsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/keywordPlanAdGroupKeywords:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword][google.ads.googleads.v9.services.KeywordPlanAdGroupKeywordService.GetKeywordPlanAdGroupKeyword]. +message GetKeywordPlanAdGroupKeywordRequest { + // Required. The resource name of the ad group keyword to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" + } + ]; +} + +// Request message for +// [KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords][google.ads.googleads.v9.services.KeywordPlanAdGroupKeywordService.MutateKeywordPlanAdGroupKeywords]. +message MutateKeywordPlanAdGroupKeywordsRequest { + // Required. The ID of the customer whose Keyword Plan ad group keywords are being + // modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual Keyword Plan ad group + // keywords. + repeated KeywordPlanAdGroupKeywordOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a Keyword Plan ad group +// keyword. +message KeywordPlanAdGroupKeywordOperation { + // The FieldMask that determines which resource fields are modified in an + // update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new Keyword Plan + // ad group keyword. + google.ads.googleads.v9.resources.KeywordPlanAdGroupKeyword create = 1; + + // Update operation: The Keyword Plan ad group keyword is expected to have a + // valid resource name. + google.ads.googleads.v9.resources.KeywordPlanAdGroupKeyword update = 2; + + // Remove operation: A resource name for the removed Keyword Plan ad group + // keyword is expected, in this format: + // + // `customers/{customer_id}/keywordPlanAdGroupKeywords/{kp_ad_group_keyword_id}` + string remove = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroupKeyword" + }]; + } +} + +// Response message for a Keyword Plan ad group keyword mutate. +message MutateKeywordPlanAdGroupKeywordsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateKeywordPlanAdGroupKeywordResult results = 2; +} + +// The result for the Keyword Plan ad group keyword mutate. +message MutateKeywordPlanAdGroupKeywordResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/keyword_plan_ad_group_service.proto b/google/ads/googleads/v9/services/keyword_plan_ad_group_service.proto new file mode 100644 index 000000000..a77967a1a --- /dev/null +++ b/google/ads/googleads/v9/services/keyword_plan_ad_group_service.proto @@ -0,0 +1,159 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/keyword_plan_ad_group.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanAdGroupServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the keyword plan ad group service. + +// Service to manage Keyword Plan ad groups. +service KeywordPlanAdGroupService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Keyword Plan ad group in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordPlanAdGroup(GetKeywordPlanAdGroupRequest) returns (google.ads.googleads.v9.resources.KeywordPlanAdGroup) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/keywordPlanAdGroups/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes Keyword Plan ad groups. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanAdGroupError]() + // [KeywordPlanError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc MutateKeywordPlanAdGroups(MutateKeywordPlanAdGroupsRequest) returns (MutateKeywordPlanAdGroupsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/keywordPlanAdGroups:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [KeywordPlanAdGroupService.GetKeywordPlanAdGroup][google.ads.googleads.v9.services.KeywordPlanAdGroupService.GetKeywordPlanAdGroup]. +message GetKeywordPlanAdGroupRequest { + // Required. The resource name of the Keyword Plan ad group to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroup" + } + ]; +} + +// Request message for [KeywordPlanAdGroupService.MutateKeywordPlanAdGroups][google.ads.googleads.v9.services.KeywordPlanAdGroupService.MutateKeywordPlanAdGroups]. +message MutateKeywordPlanAdGroupsRequest { + // Required. The ID of the customer whose Keyword Plan ad groups are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual Keyword Plan ad groups. + repeated KeywordPlanAdGroupOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a Keyword Plan ad group. +message KeywordPlanAdGroupOperation { + // The FieldMask that determines which resource fields are modified in an + // update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new Keyword Plan + // ad group. + google.ads.googleads.v9.resources.KeywordPlanAdGroup create = 1; + + // Update operation: The Keyword Plan ad group is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.KeywordPlanAdGroup update = 2; + + // Remove operation: A resource name for the removed Keyword Plan ad group + // is expected, in this format: + // + // `customers/{customer_id}/keywordPlanAdGroups/{kp_ad_group_id}` + string remove = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanAdGroup" + }]; + } +} + +// Response message for a Keyword Plan ad group mutate. +message MutateKeywordPlanAdGroupsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. The order of the results is determined by the + // order of the keywords in the original request. + repeated MutateKeywordPlanAdGroupResult results = 2; +} + +// The result for the Keyword Plan ad group mutate. +message MutateKeywordPlanAdGroupResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/keyword_plan_campaign_keyword_service.proto b/google/ads/googleads/v9/services/keyword_plan_campaign_keyword_service.proto new file mode 100644 index 000000000..0ff3934f2 --- /dev/null +++ b/google/ads/googleads/v9/services/keyword_plan_campaign_keyword_service.proto @@ -0,0 +1,162 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/keyword_plan_campaign_keyword.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignKeywordServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the keyword plan campaign keyword service. + +// Service to manage Keyword Plan campaign keywords. KeywordPlanCampaign is +// required to add the campaign keywords. Only negative keywords are supported. +// A maximum of 1000 negative keywords are allowed per plan. This includes both +// campaign negative keywords and ad group negative keywords. +service KeywordPlanCampaignKeywordService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested plan in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordPlanCampaignKeyword(GetKeywordPlanCampaignKeywordRequest) returns (google.ads.googleads.v9.resources.KeywordPlanCampaignKeyword) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/keywordPlanCampaignKeywords/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes Keyword Plan campaign keywords. Operation + // statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanAdGroupKeywordError]() + // [KeywordPlanCampaignKeywordError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc MutateKeywordPlanCampaignKeywords(MutateKeywordPlanCampaignKeywordsRequest) returns (MutateKeywordPlanCampaignKeywordsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/keywordPlanCampaignKeywords:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for +// [KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword][google.ads.googleads.v9.services.KeywordPlanCampaignKeywordService.GetKeywordPlanCampaignKeyword]. +message GetKeywordPlanCampaignKeywordRequest { + // Required. The resource name of the plan to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" + } + ]; +} + +// Request message for +// [KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords][google.ads.googleads.v9.services.KeywordPlanCampaignKeywordService.MutateKeywordPlanCampaignKeywords]. +message MutateKeywordPlanCampaignKeywordsRequest { + // Required. The ID of the customer whose campaign keywords are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual Keyword Plan campaign + // keywords. + repeated KeywordPlanCampaignKeywordOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a Keyword Plan campaign +// keyword. +message KeywordPlanCampaignKeywordOperation { + // The FieldMask that determines which resource fields are modified in an + // update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new Keyword Plan + // campaign keyword. + google.ads.googleads.v9.resources.KeywordPlanCampaignKeyword create = 1; + + // Update operation: The Keyword Plan campaign keyword expected to have a + // valid resource name. + google.ads.googleads.v9.resources.KeywordPlanCampaignKeyword update = 2; + + // Remove operation: A resource name for the removed Keyword Plan campaign + // keywords expected in this format: + // + // `customers/{customer_id}/keywordPlanCampaignKeywords/{kp_campaign_keyword_id}` + string remove = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaignKeyword" + }]; + } +} + +// Response message for a Keyword Plan campaign keyword mutate. +message MutateKeywordPlanCampaignKeywordsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateKeywordPlanCampaignKeywordResult results = 2; +} + +// The result for the Keyword Plan campaign keyword mutate. +message MutateKeywordPlanCampaignKeywordResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/keyword_plan_campaign_service.proto b/google/ads/googleads/v9/services/keyword_plan_campaign_service.proto new file mode 100644 index 000000000..56ec51152 --- /dev/null +++ b/google/ads/googleads/v9/services/keyword_plan_campaign_service.proto @@ -0,0 +1,160 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/keyword_plan_campaign.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanCampaignServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the keyword plan campaign service. + +// Service to manage Keyword Plan campaigns. +service KeywordPlanCampaignService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Keyword Plan campaign in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordPlanCampaign(GetKeywordPlanCampaignRequest) returns (google.ads.googleads.v9.resources.KeywordPlanCampaign) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/keywordPlanCampaigns/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes Keyword Plan campaigns. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanCampaignError]() + // [KeywordPlanError]() + // [ListOperationError]() + // [MutateError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + rpc MutateKeywordPlanCampaigns(MutateKeywordPlanCampaignsRequest) returns (MutateKeywordPlanCampaignsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/keywordPlanCampaigns:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [KeywordPlanCampaignService.GetKeywordPlanCampaign][google.ads.googleads.v9.services.KeywordPlanCampaignService.GetKeywordPlanCampaign]. +message GetKeywordPlanCampaignRequest { + // Required. The resource name of the Keyword Plan campaign to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + } + ]; +} + +// Request message for +// [KeywordPlanCampaignService.MutateKeywordPlanCampaigns][google.ads.googleads.v9.services.KeywordPlanCampaignService.MutateKeywordPlanCampaigns]. +message MutateKeywordPlanCampaignsRequest { + // Required. The ID of the customer whose Keyword Plan campaigns are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual Keyword Plan campaigns. + repeated KeywordPlanCampaignOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a Keyword Plan campaign. +message KeywordPlanCampaignOperation { + // The FieldMask that determines which resource fields are modified in an + // update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new Keyword Plan + // campaign. + google.ads.googleads.v9.resources.KeywordPlanCampaign create = 1; + + // Update operation: The Keyword Plan campaign is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.KeywordPlanCampaign update = 2; + + // Remove operation: A resource name for the removed Keyword Plan campaign + // is expected, in this format: + // + // `customers/{customer_id}/keywordPlanCampaigns/{keywordPlan_campaign_id}` + string remove = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlanCampaign" + }]; + } +} + +// Response message for a Keyword Plan campaign mutate. +message MutateKeywordPlanCampaignsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateKeywordPlanCampaignResult results = 2; +} + +// The result for the Keyword Plan campaign mutate. +message MutateKeywordPlanCampaignResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/keyword_plan_idea_service.proto b/google/ads/googleads/v9/services/keyword_plan_idea_service.proto new file mode 100644 index 000000000..32f32634d --- /dev/null +++ b/google/ads/googleads/v9/services/keyword_plan_idea_service.proto @@ -0,0 +1,181 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/keyword_plan_common.proto"; +import "google/ads/googleads/v9/enums/keyword_plan_keyword_annotation.proto"; +import "google/ads/googleads/v9/enums/keyword_plan_network.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanIdeaServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the keyword plan idea service. + +// Service to generate keyword ideas. +service KeywordPlanIdeaService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns a list of keyword ideas. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanIdeaError]() + // [QuotaError]() + // [RequestError]() + rpc GenerateKeywordIdeas(GenerateKeywordIdeasRequest) returns (GenerateKeywordIdeaResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:generateKeywordIdeas" + body: "*" + }; + } +} + +// Request message for [KeywordPlanIdeaService.GenerateKeywordIdeas][google.ads.googleads.v9.services.KeywordPlanIdeaService.GenerateKeywordIdeas]. +message GenerateKeywordIdeasRequest { + // The ID of the customer with the recommendation. + string customer_id = 1; + + // The resource name of the language to target. + // Required + optional string language = 14; + + // The resource names of the location to target. + // Max 10 + repeated string geo_target_constants = 15; + + // If true, adult keywords will be included in response. + // The default value is false. + bool include_adult_keywords = 10; + + // Token of the page to retrieve. If not specified, the first + // page of results will be returned. To request next page of results use the + // value obtained from `next_page_token` in the previous response. + // The request fields must match across pages. + string page_token = 12; + + // Number of results to retrieve in a single page. + // A maximum of 10,000 results may be returned, if the page_size + // exceeds this, it is ignored. + // If unspecified, at most 10,000 results will be returned. + // The server may decide to further limit the number of returned resources. + // If the response contains fewer than 10,000 results it may not be assumed + // as last page of results. + int32 page_size = 13; + + // Targeting network. + google.ads.googleads.v9.enums.KeywordPlanNetworkEnum.KeywordPlanNetwork keyword_plan_network = 9; + + // The keyword annotations to include in response. + repeated google.ads.googleads.v9.enums.KeywordPlanKeywordAnnotationEnum.KeywordPlanKeywordAnnotation keyword_annotation = 17; + + // The aggregate fields to include in response. + google.ads.googleads.v9.common.KeywordPlanAggregateMetrics aggregate_metrics = 16; + + // The options for historical metrics data. + google.ads.googleads.v9.common.HistoricalMetricsOptions historical_metrics_options = 18; + + // The type of seed to generate keyword ideas. + oneof seed { + // A Keyword and a specific Url to generate ideas from + // e.g. cars, www.example.com/cars. + KeywordAndUrlSeed keyword_and_url_seed = 2; + + // A Keyword or phrase to generate ideas from, e.g. cars. + KeywordSeed keyword_seed = 3; + + // A specific url to generate ideas from, e.g. www.example.com/cars. + UrlSeed url_seed = 5; + + // The site to generate ideas from, e.g. www.example.com. + SiteSeed site_seed = 11; + } +} + +// Keyword And Url Seed +message KeywordAndUrlSeed { + // The URL to crawl in order to generate keyword ideas. + optional string url = 3; + + // Requires at least one keyword. + repeated string keywords = 4; +} + +// Keyword Seed +message KeywordSeed { + // Requires at least one keyword. + repeated string keywords = 2; +} + +// Site Seed +message SiteSeed { + // The domain name of the site. If the customer requesting the ideas doesn't + // own the site provided only public information is returned. + optional string site = 2; +} + +// Url Seed +message UrlSeed { + // The URL to crawl in order to generate keyword ideas. + optional string url = 2; +} + +// Response message for [KeywordPlanIdeaService.GenerateKeywordIdeas][google.ads.googleads.v9.services.KeywordPlanIdeaService.GenerateKeywordIdeas]. +message GenerateKeywordIdeaResponse { + // Results of generating keyword ideas. + repeated GenerateKeywordIdeaResult results = 1; + + // The aggregate metrics for all keyword ideas. + google.ads.googleads.v9.common.KeywordPlanAggregateMetricResults aggregate_metric_results = 4; + + // Pagination token used to retrieve the next page of results. + // Pass the content of this string as the `page_token` attribute of + // the next request. + // `next_page_token` is not returned for the last page. + string next_page_token = 2; + + // Total number of results available. + int64 total_size = 3; +} + +// The result of generating keyword ideas. +message GenerateKeywordIdeaResult { + // Text of the keyword idea. + // As in Keyword Plan historical metrics, this text may not be an actual + // keyword, but the canonical form of multiple keywords. + // See KeywordPlanKeywordHistoricalMetrics message in KeywordPlanService. + optional string text = 5; + + // The historical metrics for the keyword. + google.ads.googleads.v9.common.KeywordPlanHistoricalMetrics keyword_idea_metrics = 3; + + // The annotations for the keyword. + // The annotation data is only provided if requested. + google.ads.googleads.v9.common.KeywordAnnotations keyword_annotations = 6; +} diff --git a/google/ads/googleads/v9/services/keyword_plan_service.proto b/google/ads/googleads/v9/services/keyword_plan_service.proto new file mode 100644 index 000000000..96d13777f --- /dev/null +++ b/google/ads/googleads/v9/services/keyword_plan_service.proto @@ -0,0 +1,446 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/keyword_plan_common.proto"; +import "google/ads/googleads/v9/resources/keyword_plan.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordPlanServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the keyword plan service. + +// Service to manage keyword plans. +service KeywordPlanService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested plan in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordPlan(GetKeywordPlanRequest) returns (google.ads.googleads.v9.resources.KeywordPlan) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/keywordPlans/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes keyword plans. Operation statuses are + // returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanError]() + // [MutateError]() + // [NewResourceCreationError]() + // [QuotaError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [StringLengthError]() + rpc MutateKeywordPlans(MutateKeywordPlansRequest) returns (MutateKeywordPlansResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/keywordPlans:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } + + // Returns the requested Keyword Plan forecast curve. + // Only the bidding strategy is considered for generating forecast curve. + // The bidding strategy value specified in the plan is ignored. + // + // To generate a forecast at a value specified in the plan, use + // KeywordPlanService.GenerateForecastMetrics. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanError]() + // [QuotaError]() + // [RequestError]() + rpc GenerateForecastCurve(GenerateForecastCurveRequest) returns (GenerateForecastCurveResponse) { + option (google.api.http) = { + post: "/v9/{keyword_plan=customers/*/keywordPlans/*}:generateForecastCurve" + body: "*" + }; + option (google.api.method_signature) = "keyword_plan"; + } + + // Returns a forecast in the form of a time series for the Keyword Plan over + // the next 52 weeks. + // (1) Forecasts closer to the current date are generally more accurate than + // further out. + // + // (2) The forecast reflects seasonal trends using current and + // prior traffic patterns. The forecast period of the plan is ignored. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanError]() + // [QuotaError]() + // [RequestError]() + rpc GenerateForecastTimeSeries(GenerateForecastTimeSeriesRequest) returns (GenerateForecastTimeSeriesResponse) { + option (google.api.http) = { + post: "/v9/{keyword_plan=customers/*/keywordPlans/*}:generateForecastTimeSeries" + body: "*" + }; + option (google.api.method_signature) = "keyword_plan"; + } + + // Returns the requested Keyword Plan forecasts. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanError]() + // [QuotaError]() + // [RequestError]() + rpc GenerateForecastMetrics(GenerateForecastMetricsRequest) returns (GenerateForecastMetricsResponse) { + option (google.api.http) = { + post: "/v9/{keyword_plan=customers/*/keywordPlans/*}:generateForecastMetrics" + body: "*" + }; + option (google.api.method_signature) = "keyword_plan"; + } + + // Returns the requested Keyword Plan historical metrics. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [KeywordPlanError]() + // [QuotaError]() + // [RequestError]() + rpc GenerateHistoricalMetrics(GenerateHistoricalMetricsRequest) returns (GenerateHistoricalMetricsResponse) { + option (google.api.http) = { + post: "/v9/{keyword_plan=customers/*/keywordPlans/*}:generateHistoricalMetrics" + body: "*" + }; + option (google.api.method_signature) = "keyword_plan"; + } +} + +// Request message for [KeywordPlanService.GetKeywordPlan][google.ads.googleads.v9.services.KeywordPlanService.GetKeywordPlan]. +message GetKeywordPlanRequest { + // Required. The resource name of the plan to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; +} + +// Request message for [KeywordPlanService.MutateKeywordPlans][google.ads.googleads.v9.services.KeywordPlanService.MutateKeywordPlans]. +message MutateKeywordPlansRequest { + // Required. The ID of the customer whose keyword plans are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual keyword plans. + repeated KeywordPlanOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update, remove) on a keyword plan. +message KeywordPlanOperation { + // The FieldMask that determines which resource fields are modified in an + // update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new keyword plan. + google.ads.googleads.v9.resources.KeywordPlan create = 1; + + // Update operation: The keyword plan is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.KeywordPlan update = 2; + + // Remove operation: A resource name for the removed keyword plan is + // expected in this format: + // + // `customers/{customer_id}/keywordPlans/{keyword_plan_id}` + string remove = 3 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + }]; + } +} + +// Response message for a keyword plan mutate. +message MutateKeywordPlansResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateKeywordPlansResult results = 2; +} + +// The result for the keyword plan mutate. +message MutateKeywordPlansResult { + // Returned for successful operations. + string resource_name = 1; +} + +// Request message for [KeywordPlanService.GenerateForecastCurve][google.ads.googleads.v9.services.KeywordPlanService.GenerateForecastCurve]. +message GenerateForecastCurveRequest { + // Required. The resource name of the keyword plan to be forecasted. + string keyword_plan = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; +} + +// Response message for [KeywordPlanService.GenerateForecastCurve][google.ads.googleads.v9.services.KeywordPlanService.GenerateForecastCurve]. +message GenerateForecastCurveResponse { + // List of forecast curves for the keyword plan campaign. + // One maximum. + repeated KeywordPlanCampaignForecastCurve campaign_forecast_curves = 1; +} + +// Request message for [KeywordPlanService.GenerateForecastTimeSeries][google.ads.googleads.v9.services.KeywordPlanService.GenerateForecastTimeSeries]. +message GenerateForecastTimeSeriesRequest { + // Required. The resource name of the keyword plan to be forecasted. + string keyword_plan = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; +} + +// Response message for [KeywordPlanService.GenerateForecastTimeSeries][google.ads.googleads.v9.services.KeywordPlanService.GenerateForecastTimeSeries]. +message GenerateForecastTimeSeriesResponse { + // List of weekly time series forecasts for the keyword plan campaign. + // One maximum. + repeated KeywordPlanWeeklyTimeSeriesForecast weekly_time_series_forecasts = 1; +} + +// Request message for [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v9.services.KeywordPlanService.GenerateForecastMetrics]. +message GenerateForecastMetricsRequest { + // Required. The resource name of the keyword plan to be forecasted. + string keyword_plan = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; +} + +// Response message for [KeywordPlanService.GenerateForecastMetrics][google.ads.googleads.v9.services.KeywordPlanService.GenerateForecastMetrics]. +message GenerateForecastMetricsResponse { + // List of campaign forecasts. + // One maximum. + repeated KeywordPlanCampaignForecast campaign_forecasts = 1; + + // List of ad group forecasts. + repeated KeywordPlanAdGroupForecast ad_group_forecasts = 2; + + // List of keyword forecasts. + repeated KeywordPlanKeywordForecast keyword_forecasts = 3; +} + +// A campaign forecast. +message KeywordPlanCampaignForecast { + // The resource name of the Keyword Plan campaign related to the forecast. + // + // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` + optional string keyword_plan_campaign = 3; + + // The forecast for the Keyword Plan campaign. + ForecastMetrics campaign_forecast = 2; +} + +// An ad group forecast. +message KeywordPlanAdGroupForecast { + // The resource name of the Keyword Plan ad group related to the forecast. + // + // `customers/{customer_id}/keywordPlanAdGroups/{keyword_plan_ad_group_id}` + optional string keyword_plan_ad_group = 3; + + // The forecast for the Keyword Plan ad group. + ForecastMetrics ad_group_forecast = 2; +} + +// A keyword forecast. +message KeywordPlanKeywordForecast { + // The resource name of the Keyword Plan keyword related to the forecast. + // + // `customers/{customer_id}/keywordPlanAdGroupKeywords/{keyword_plan_ad_group_keyword_id}` + optional string keyword_plan_ad_group_keyword = 3; + + // The forecast for the Keyword Plan keyword. + ForecastMetrics keyword_forecast = 2; +} + +// The forecast curve for the campaign. +message KeywordPlanCampaignForecastCurve { + // The resource name of the Keyword Plan campaign related to the forecast. + // + // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` + optional string keyword_plan_campaign = 3; + + // The max cpc bid forecast curve for the campaign. + KeywordPlanMaxCpcBidForecastCurve max_cpc_bid_forecast_curve = 2; +} + +// The max cpc bid forecast curve. +message KeywordPlanMaxCpcBidForecastCurve { + // The forecasts for the Keyword Plan campaign at different max CPC bids. + repeated KeywordPlanMaxCpcBidForecast max_cpc_bid_forecasts = 1; +} + +// The forecast of the campaign at a specific bid. +message KeywordPlanMaxCpcBidForecast { + // The max cpc bid in micros. + optional int64 max_cpc_bid_micros = 3; + + // The forecast for the Keyword Plan campaign at the specific bid. + ForecastMetrics max_cpc_bid_forecast = 2; +} + +// The weekly time series forecast for the keyword plan campaign. +message KeywordPlanWeeklyTimeSeriesForecast { + // The resource name of the Keyword Plan campaign related to the forecast. + // + // `customers/{customer_id}/keywordPlanCampaigns/{keyword_plan_campaign_id}` + optional string keyword_plan_campaign = 1; + + // The forecasts for the Keyword Plan campaign at different max CPC bids. + repeated KeywordPlanWeeklyForecast weekly_forecasts = 2; +} + +// The forecast of the campaign for the week starting start_date. +message KeywordPlanWeeklyForecast { + // The start date, in yyyy-mm-dd format. This date is inclusive. + optional string start_date = 1; + + // The forecast for the Keyword Plan campaign for the week. + ForecastMetrics forecast = 2; +} + +// Forecast metrics. +message ForecastMetrics { + // Impressions + optional double impressions = 7; + + // Ctr + optional double ctr = 8; + + // AVG cpc + optional int64 average_cpc = 9; + + // Clicks + optional double clicks = 10; + + // Cost + optional int64 cost_micros = 11; +} + +// Request message for [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v9.services.KeywordPlanService.GenerateHistoricalMetrics]. +message GenerateHistoricalMetricsRequest { + // Required. The resource name of the keyword plan of which historical metrics are + // requested. + string keyword_plan = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordPlan" + } + ]; + + // The aggregate fields to include in response. + google.ads.googleads.v9.common.KeywordPlanAggregateMetrics aggregate_metrics = 2; + + // The options for historical metrics data. + google.ads.googleads.v9.common.HistoricalMetricsOptions historical_metrics_options = 3; +} + +// Response message for [KeywordPlanService.GenerateHistoricalMetrics][google.ads.googleads.v9.services.KeywordPlanService.GenerateHistoricalMetrics]. +message GenerateHistoricalMetricsResponse { + // List of keyword historical metrics. + repeated KeywordPlanKeywordHistoricalMetrics metrics = 1; + + // The aggregate metrics for all the keywords in the keyword planner plan. + google.ads.googleads.v9.common.KeywordPlanAggregateMetricResults aggregate_metric_results = 2; +} + +// A keyword historical metrics. +message KeywordPlanKeywordHistoricalMetrics { + // The text of the query associated with one or more ad_group_keywords in the + // plan. + // + // Note that we de-dupe your keywords list, eliminating close variants before + // returning the plan's keywords as text. For example, if your plan originally + // contained the keywords 'car' and 'cars', the returned search query will + // only contain 'cars'. + // Starting V5, the list of de-duped queries will be included in + // close_variants field. + optional string search_query = 4; + + // The list of close variant queries for search_query whose search results + // are combined into the search_query. + repeated string close_variants = 3; + + // The historical metrics for the query associated with one or more + // ad_group_keywords in the plan. + google.ads.googleads.v9.common.KeywordPlanHistoricalMetrics keyword_metrics = 2; +} diff --git a/google/ads/googleads/v9/services/keyword_theme_constant_service.proto b/google/ads/googleads/v9/services/keyword_theme_constant_service.proto new file mode 100644 index 000000000..7b95eebb3 --- /dev/null +++ b/google/ads/googleads/v9/services/keyword_theme_constant_service.proto @@ -0,0 +1,98 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/keyword_theme_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordThemeConstantServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Smart Campaign keyword theme constant service. + +// Service to fetch Smart Campaign keyword themes. +service KeywordThemeConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested keyword theme constant in full detail. + rpc GetKeywordThemeConstant(GetKeywordThemeConstantRequest) returns (google.ads.googleads.v9.resources.KeywordThemeConstant) { + option (google.api.http) = { + get: "/v9/{resource_name=keywordThemeConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Returns KeywordThemeConstant suggestions by keyword themes. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc SuggestKeywordThemeConstants(SuggestKeywordThemeConstantsRequest) returns (SuggestKeywordThemeConstantsResponse) { + option (google.api.http) = { + post: "/v9/keywordThemeConstants:suggest" + body: "*" + }; + } +} + +// Request message for [KeywordThemeConstantService.GetKeywordThemeConstant][google.ads.googleads.v9.services.KeywordThemeConstantService.GetKeywordThemeConstant]. +message GetKeywordThemeConstantRequest { + // Required. The resource name of the keyword theme constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordThemeConstant" + } + ]; +} + +// Request message for +// [KeywordThemeConstantService.SuggestKeywordThemeConstants][google.ads.googleads.v9.services.KeywordThemeConstantService.SuggestKeywordThemeConstants]. +message SuggestKeywordThemeConstantsRequest { + // The query text of a keyword theme that will be used to map to similar + // keyword themes. E.g. "plumber" or "roofer". + string query_text = 1; + + // Upper-case, two-letter country code as defined by ISO-3166. This for + // refining the scope of the query, default to 'US' if not set. + string country_code = 2; + + // The two letter language code for get corresponding keyword theme for + // refining the scope of the query, default to 'en' if not set. + string language_code = 3; +} + +// Response message for +// [KeywordThemeConstantService.SuggestKeywordThemeConstants][google.ads.googleads.v9.services.KeywordThemeConstantService.SuggestKeywordThemeConstants]. +message SuggestKeywordThemeConstantsResponse { + // Smart Campaign keyword theme suggestions. + repeated google.ads.googleads.v9.resources.KeywordThemeConstant keyword_theme_constants = 1; +} diff --git a/google/ads/googleads/v9/services/keyword_view_service.proto b/google/ads/googleads/v9/services/keyword_view_service.proto new file mode 100644 index 000000000..2fdb8a0d9 --- /dev/null +++ b/google/ads/googleads/v9/services/keyword_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/keyword_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "KeywordViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Keyword View service. + +// Service to manage keyword views. +service KeywordViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested keyword view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetKeywordView(GetKeywordViewRequest) returns (google.ads.googleads.v9.resources.KeywordView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/keywordViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [KeywordViewService.GetKeywordView][google.ads.googleads.v9.services.KeywordViewService.GetKeywordView]. +message GetKeywordViewRequest { + // Required. The resource name of the keyword view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/KeywordView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/label_service.proto b/google/ads/googleads/v9/services/label_service.proto new file mode 100644 index 000000000..cc4292c2a --- /dev/null +++ b/google/ads/googleads/v9/services/label_service.proto @@ -0,0 +1,168 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/label.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "LabelServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Service to manage labels. +service LabelService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested label in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetLabel(GetLabelRequest) returns (google.ads.googleads.v9.resources.Label) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/labels/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes labels. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [LabelError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateLabels(MutateLabelsRequest) returns (MutateLabelsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/labels:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [LabelService.GetLabel][google.ads.googleads.v9.services.LabelService.GetLabel]. +message GetLabelRequest { + // Required. The resource name of the label to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Label" + } + ]; +} + +// Request message for [LabelService.MutateLabels][google.ads.googleads.v9.services.LabelService.MutateLabels]. +message MutateLabelsRequest { + // Required. ID of the customer whose labels are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on labels. + repeated LabelOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove, update) on a label. +message LabelOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new label. + google.ads.googleads.v9.resources.Label create = 1; + + // Update operation: The label is expected to have a valid resource name. + google.ads.googleads.v9.resources.Label update = 2; + + // Remove operation: A resource name for the label being removed, in + // this format: + // + // `customers/{customer_id}/labels/{label_id}` + string remove = 3; + } +} + +// Response message for a labels mutate. +message MutateLabelsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateLabelResult results = 2; +} + +// The result for a label mutate. +message MutateLabelResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated label with only mutable fields after mutate. The field will + // only be returned when response_content_type is set to "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.Label label = 2; +} diff --git a/google/ads/googleads/v9/services/landing_page_view_service.proto b/google/ads/googleads/v9/services/landing_page_view_service.proto new file mode 100644 index 000000000..591c8b026 --- /dev/null +++ b/google/ads/googleads/v9/services/landing_page_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/landing_page_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "LandingPageViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the landing page view service. + +// Service to fetch landing page views. +service LandingPageViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested landing page view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetLandingPageView(GetLandingPageViewRequest) returns (google.ads.googleads.v9.resources.LandingPageView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/landingPageViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [LandingPageViewService.GetLandingPageView][google.ads.googleads.v9.services.LandingPageViewService.GetLandingPageView]. +message GetLandingPageViewRequest { + // Required. The resource name of the landing page view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LandingPageView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/language_constant_service.proto b/google/ads/googleads/v9/services/language_constant_service.proto new file mode 100644 index 000000000..001365eb6 --- /dev/null +++ b/google/ads/googleads/v9/services/language_constant_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/language_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "LanguageConstantServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the language constant service. + +// Service to fetch language constants. +service LanguageConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested language constant. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetLanguageConstant(GetLanguageConstantRequest) returns (google.ads.googleads.v9.resources.LanguageConstant) { + option (google.api.http) = { + get: "/v9/{resource_name=languageConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [LanguageConstantService.GetLanguageConstant][google.ads.googleads.v9.services.LanguageConstantService.GetLanguageConstant]. +message GetLanguageConstantRequest { + // Required. Resource name of the language constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LanguageConstant" + } + ]; +} diff --git a/google/ads/googleads/v9/services/life_event_service.proto b/google/ads/googleads/v9/services/life_event_service.proto new file mode 100644 index 000000000..e1ce55f87 --- /dev/null +++ b/google/ads/googleads/v9/services/life_event_service.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/life_event.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "LifeEventServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the life event service + +// Service to fetch Google Ads Life Events. +service LifeEventService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested life event in full detail. + rpc GetLifeEvent(GetLifeEventRequest) returns (google.ads.googleads.v9.resources.LifeEvent) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/lifeEvents/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [LifeEventService.GetLifeEvent][google.ads.googleads.v9.services.LifeEventService.GetLifeEvent]. +message GetLifeEventRequest { + // Required. Resource name of the LifeEvent to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LifeEvent" + } + ]; +} diff --git a/google/ads/googleads/v9/services/location_view_service.proto b/google/ads/googleads/v9/services/location_view_service.proto new file mode 100644 index 000000000..8ff56254d --- /dev/null +++ b/google/ads/googleads/v9/services/location_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/location_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "LocationViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Location View service. + +// Service to fetch location views. +service LocationViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested location view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetLocationView(GetLocationViewRequest) returns (google.ads.googleads.v9.resources.LocationView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/locationViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [LocationViewService.GetLocationView][google.ads.googleads.v9.services.LocationViewService.GetLocationView]. +message GetLocationViewRequest { + // Required. The resource name of the location view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/LocationView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/managed_placement_view_service.proto b/google/ads/googleads/v9/services/managed_placement_view_service.proto new file mode 100644 index 000000000..ea4727d3e --- /dev/null +++ b/google/ads/googleads/v9/services/managed_placement_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/managed_placement_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ManagedPlacementViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Managed Placement View service. + +// Service to manage Managed Placement views. +service ManagedPlacementViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Managed Placement view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetManagedPlacementView(GetManagedPlacementViewRequest) returns (google.ads.googleads.v9.resources.ManagedPlacementView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/managedPlacementViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [ManagedPlacementViewService.GetManagedPlacementView][google.ads.googleads.v9.services.ManagedPlacementViewService.GetManagedPlacementView]. +message GetManagedPlacementViewRequest { + // Required. The resource name of the Managed Placement View to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ManagedPlacementView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/media_file_service.proto b/google/ads/googleads/v9/services/media_file_service.proto new file mode 100644 index 000000000..28805a3b6 --- /dev/null +++ b/google/ads/googleads/v9/services/media_file_service.proto @@ -0,0 +1,156 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/media_file.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "MediaFileServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Media File service. + +// Service to manage media files. +service MediaFileService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested media file in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetMediaFile(GetMediaFileRequest) returns (google.ads.googleads.v9.resources.MediaFile) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/mediaFiles/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates media files. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [ImageError]() + // [InternalError]() + // [MediaBundleError]() + // [MediaFileError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateMediaFiles(MutateMediaFilesRequest) returns (MutateMediaFilesResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/mediaFiles:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [MediaFileService.GetMediaFile][google.ads.googleads.v9.services.MediaFileService.GetMediaFile] +message GetMediaFileRequest { + // Required. The resource name of the media file to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MediaFile" + } + ]; +} + +// Request message for [MediaFileService.MutateMediaFiles][google.ads.googleads.v9.services.MediaFileService.MutateMediaFiles] +message MutateMediaFilesRequest { + // Required. The ID of the customer whose media files are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual media file. + repeated MediaFileOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation to create media file. +message MediaFileOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new media file. + google.ads.googleads.v9.resources.MediaFile create = 1; + } +} + +// Response message for a media file mutate. +message MutateMediaFilesResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateMediaFileResult results = 2; +} + +// The result for the media file mutate. +message MutateMediaFileResult { + // The resource name returned for successful operations. + string resource_name = 1; + + // The mutated media file with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.MediaFile media_file = 2; +} diff --git a/google/ads/googleads/v9/services/merchant_center_link_service.proto b/google/ads/googleads/v9/services/merchant_center_link_service.proto new file mode 100644 index 000000000..f966d95bc --- /dev/null +++ b/google/ads/googleads/v9/services/merchant_center_link_service.proto @@ -0,0 +1,160 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/merchant_center_link.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "MerchantCenterLinkServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the MerchantCenterLink service. + +// This service allows management of links between Google Ads and Google +// Merchant Center. +service MerchantCenterLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns Merchant Center links available for this customer. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListMerchantCenterLinks(ListMerchantCenterLinksRequest) returns (ListMerchantCenterLinksResponse) { + option (google.api.http) = { + get: "/v9/customers/{customer_id=*}/merchantCenterLinks" + }; + option (google.api.method_signature) = "customer_id"; + } + + // Returns the Merchant Center link in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetMerchantCenterLink(GetMerchantCenterLinkRequest) returns (google.ads.googleads.v9.resources.MerchantCenterLink) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/merchantCenterLinks/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Updates status or removes a Merchant Center link. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateMerchantCenterLink(MutateMerchantCenterLinkRequest) returns (MutateMerchantCenterLinkResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/merchantCenterLinks:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operation"; + } +} + +// Request message for [MerchantCenterLinkService.ListMerchantCenterLinks][google.ads.googleads.v9.services.MerchantCenterLinkService.ListMerchantCenterLinks]. +message ListMerchantCenterLinksRequest { + // Required. The ID of the customer onto which to apply the Merchant Center link list + // operation. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [MerchantCenterLinkService.ListMerchantCenterLinks][google.ads.googleads.v9.services.MerchantCenterLinkService.ListMerchantCenterLinks]. +message ListMerchantCenterLinksResponse { + // Merchant Center links available for the requested customer + repeated google.ads.googleads.v9.resources.MerchantCenterLink merchant_center_links = 1; +} + +// Request message for [MerchantCenterLinkService.GetMerchantCenterLink][google.ads.googleads.v9.services.MerchantCenterLinkService.GetMerchantCenterLink]. +message GetMerchantCenterLinkRequest { + // Required. Resource name of the Merchant Center link. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MerchantCenterLink" + } + ]; +} + +// Request message for [MerchantCenterLinkService.MutateMerchantCenterLink][google.ads.googleads.v9.services.MerchantCenterLinkService.MutateMerchantCenterLink]. +message MutateMerchantCenterLinkRequest { + // Required. The ID of the customer being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The operation to perform on the link + MerchantCenterLinkOperation operation = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; +} + +// A single update on a Merchant Center link. +message MerchantCenterLinkOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 3; + + // The operation to perform + oneof operation { + // Update operation: The merchant center link is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.MerchantCenterLink update = 1; + + // Remove operation: A resource name for the removed merchant center link is + // expected, in this format: + // + // `customers/{customer_id}/merchantCenterLinks/{merchant_center_id}` + string remove = 2; + } +} + +// Response message for Merchant Center link mutate. +message MutateMerchantCenterLinkResponse { + // Result for the mutate. + MutateMerchantCenterLinkResult result = 2; +} + +// The result for the Merchant Center link mutate. +message MutateMerchantCenterLinkResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/mobile_app_category_constant_service.proto b/google/ads/googleads/v9/services/mobile_app_category_constant_service.proto new file mode 100644 index 000000000..470f24f1b --- /dev/null +++ b/google/ads/googleads/v9/services/mobile_app_category_constant_service.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/mobile_app_category_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "MobileAppCategoryConstantServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Service to fetch mobile app category constants. +service MobileAppCategoryConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested mobile app category constant. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetMobileAppCategoryConstant(GetMobileAppCategoryConstantRequest) returns (google.ads.googleads.v9.resources.MobileAppCategoryConstant) { + option (google.api.http) = { + get: "/v9/{resource_name=mobileAppCategoryConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [MobileAppCategoryConstantService.GetMobileAppCategoryConstant][google.ads.googleads.v9.services.MobileAppCategoryConstantService.GetMobileAppCategoryConstant]. +message GetMobileAppCategoryConstantRequest { + // Required. Resource name of the mobile app category constant to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MobileAppCategoryConstant" + } + ]; +} diff --git a/google/ads/googleads/v9/services/mobile_device_constant_service.proto b/google/ads/googleads/v9/services/mobile_device_constant_service.proto new file mode 100644 index 000000000..1c9923d03 --- /dev/null +++ b/google/ads/googleads/v9/services/mobile_device_constant_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/mobile_device_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "MobileDeviceConstantServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the mobile device constant service. + +// Service to fetch mobile device constants. +service MobileDeviceConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested mobile device constant in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetMobileDeviceConstant(GetMobileDeviceConstantRequest) returns (google.ads.googleads.v9.resources.MobileDeviceConstant) { + option (google.api.http) = { + get: "/v9/{resource_name=mobileDeviceConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [MobileDeviceConstantService.GetMobileDeviceConstant][google.ads.googleads.v9.services.MobileDeviceConstantService.GetMobileDeviceConstant]. +message GetMobileDeviceConstantRequest { + // Required. Resource name of the mobile device to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/MobileDeviceConstant" + } + ]; +} diff --git a/google/ads/googleads/v9/services/offline_user_data_job_service.proto b/google/ads/googleads/v9/services/offline_user_data_job_service.proto new file mode 100644 index 000000000..d350ed4b6 --- /dev/null +++ b/google/ads/googleads/v9/services/offline_user_data_job_service.proto @@ -0,0 +1,237 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/offline_user_data.proto"; +import "google/ads/googleads/v9/resources/offline_user_data_job.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "OfflineUserDataJobServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the OfflineUserDataJobService. + +// Service to manage offline user data jobs. +service OfflineUserDataJobService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Creates an offline user data job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [NotAllowlistedError]() + // [OfflineUserDataJobError]() + // [QuotaError]() + // [RequestError]() + rpc CreateOfflineUserDataJob(CreateOfflineUserDataJobRequest) returns (CreateOfflineUserDataJobResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/offlineUserDataJobs:create" + body: "*" + }; + option (google.api.method_signature) = "customer_id,job"; + } + + // Returns the offline user data job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetOfflineUserDataJob(GetOfflineUserDataJobRequest) returns (google.ads.googleads.v9.resources.OfflineUserDataJob) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/offlineUserDataJobs/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Adds operations to the offline user data job. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [OfflineUserDataJobError]() + // [QuotaError]() + // [RequestError]() + rpc AddOfflineUserDataJobOperations(AddOfflineUserDataJobOperationsRequest) returns (AddOfflineUserDataJobOperationsResponse) { + option (google.api.http) = { + post: "/v9/{resource_name=customers/*/offlineUserDataJobs/*}:addOperations" + body: "*" + }; + option (google.api.method_signature) = "resource_name,operations"; + } + + // Runs the offline user data job. + // + // When finished, the long running operation will contain the processing + // result or failure information, if any. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [HeaderError]() + // [InternalError]() + // [OfflineUserDataJobError]() + // [QuotaError]() + // [RequestError]() + rpc RunOfflineUserDataJob(RunOfflineUserDataJobRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v9/{resource_name=customers/*/offlineUserDataJobs/*}:run" + body: "*" + }; + option (google.api.method_signature) = "resource_name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "google.ads.googleads.v9.resources.OfflineUserDataJobMetadata" + }; + } +} + +// Request message for +// [OfflineUserDataJobService.CreateOfflineUserDataJob][google.ads.googleads.v9.services.OfflineUserDataJobService.CreateOfflineUserDataJob]. +message CreateOfflineUserDataJobRequest { + // Required. The ID of the customer for which to create an offline user data job. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The offline user data job to be created. + google.ads.googleads.v9.resources.OfflineUserDataJob job = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 3; + + // If true, match rate range for the offline user data job is calculated and + // made available in the resource. + bool enable_match_rate_range_preview = 5; +} + +// Response message for +// [OfflineUserDataJobService.CreateOfflineUserDataJob][google.ads.googleads.v9.services.OfflineUserDataJobService.CreateOfflineUserDataJob]. +message CreateOfflineUserDataJobResponse { + // The resource name of the OfflineUserDataJob. + string resource_name = 1; +} + +// Request message for [OfflineUserDataJobService.GetOfflineUserDataJob][google.ads.googleads.v9.services.OfflineUserDataJobService.GetOfflineUserDataJob]. +message GetOfflineUserDataJobRequest { + // Required. The resource name of the OfflineUserDataJob to get. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OfflineUserDataJob" + } + ]; +} + +// Request message for [OfflineUserDataJobService.RunOfflineUserDataJob][google.ads.googleads.v9.services.OfflineUserDataJobService.RunOfflineUserDataJob]. +message RunOfflineUserDataJobRequest { + // Required. The resource name of the OfflineUserDataJob to run. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OfflineUserDataJob" + } + ]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 2; +} + +// Request message for +// [OfflineUserDataJobService.AddOfflineUserDataJobOperations][google.ads.googleads.v9.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations]. +message AddOfflineUserDataJobOperationsRequest { + // Required. The resource name of the OfflineUserDataJob. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OfflineUserDataJob" + } + ]; + + // True to enable partial failure for the offline user data job. + optional bool enable_partial_failure = 4; + + // True to enable warnings for the offline user data job. When enabled, a + // warning will not block the OfflineUserDataJobOperation, and will also + // return warning messages about malformed field values. + optional bool enable_warnings = 6; + + // Required. The list of operations to be done. + repeated OfflineUserDataJobOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 5; +} + +// Operation to be made for the AddOfflineUserDataJobOperationsRequest. +message OfflineUserDataJobOperation { + // Operation to be made for the AddOfflineUserDataJobOperationsRequest. + oneof operation { + // Add the provided data to the transaction. Data cannot be retrieved after + // being uploaded. + google.ads.googleads.v9.common.UserData create = 1; + + // Remove the provided data from the transaction. Data cannot be retrieved + // after being uploaded. + google.ads.googleads.v9.common.UserData remove = 2; + + // Remove all previously provided data. This is only supported for Customer + // Match. + bool remove_all = 3; + } +} + +// Response message for +// [OfflineUserDataJobService.AddOfflineUserDataJobOperations][google.ads.googleads.v9.services.OfflineUserDataJobService.AddOfflineUserDataJobOperations]. +message AddOfflineUserDataJobOperationsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; + + // Non blocking errors that pertain to operation failures in the warnings + // mode. Returned only when enable_warnings = true. + google.rpc.Status warning = 2; +} diff --git a/google/ads/googleads/v9/services/operating_system_version_constant_service.proto b/google/ads/googleads/v9/services/operating_system_version_constant_service.proto new file mode 100644 index 000000000..f17ec617f --- /dev/null +++ b/google/ads/googleads/v9/services/operating_system_version_constant_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/operating_system_version_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "OperatingSystemVersionConstantServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the OS version constant service + +// Service to fetch Operating System Version constants. +service OperatingSystemVersionConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested OS version constant in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetOperatingSystemVersionConstant(GetOperatingSystemVersionConstantRequest) returns (google.ads.googleads.v9.resources.OperatingSystemVersionConstant) { + option (google.api.http) = { + get: "/v9/{resource_name=operatingSystemVersionConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant][google.ads.googleads.v9.services.OperatingSystemVersionConstantService.GetOperatingSystemVersionConstant]. +message GetOperatingSystemVersionConstantRequest { + // Required. Resource name of the OS version to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/OperatingSystemVersionConstant" + } + ]; +} diff --git a/google/ads/googleads/v9/services/paid_organic_search_term_view_service.proto b/google/ads/googleads/v9/services/paid_organic_search_term_view_service.proto new file mode 100644 index 000000000..22445f87f --- /dev/null +++ b/google/ads/googleads/v9/services/paid_organic_search_term_view_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/paid_organic_search_term_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "PaidOrganicSearchTermViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Paid Organic Search Term View service. + +// Service to fetch paid organic search term views. +service PaidOrganicSearchTermViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested paid organic search term view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetPaidOrganicSearchTermView(GetPaidOrganicSearchTermViewRequest) returns (google.ads.googleads.v9.resources.PaidOrganicSearchTermView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/paidOrganicSearchTermViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView][google.ads.googleads.v9.services.PaidOrganicSearchTermViewService.GetPaidOrganicSearchTermView]. +message GetPaidOrganicSearchTermViewRequest { + // Required. The resource name of the paid organic search term view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/PaidOrganicSearchTermView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/parental_status_view_service.proto b/google/ads/googleads/v9/services/parental_status_view_service.proto new file mode 100644 index 000000000..cc42ace46 --- /dev/null +++ b/google/ads/googleads/v9/services/parental_status_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/parental_status_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ParentalStatusViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Parental Status View service. + +// Service to manage parental status views. +service ParentalStatusViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested parental status view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetParentalStatusView(GetParentalStatusViewRequest) returns (google.ads.googleads.v9.resources.ParentalStatusView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/parentalStatusViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [ParentalStatusViewService.GetParentalStatusView][google.ads.googleads.v9.services.ParentalStatusViewService.GetParentalStatusView]. +message GetParentalStatusViewRequest { + // Required. The resource name of the parental status view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ParentalStatusView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/payments_account_service.proto b/google/ads/googleads/v9/services/payments_account_service.proto new file mode 100644 index 000000000..ad536d70e --- /dev/null +++ b/google/ads/googleads/v9/services/payments_account_service.proto @@ -0,0 +1,71 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/payments_account.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "PaymentsAccountServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the payments account service. + +// Service to provide payments accounts that can be used to set up consolidated +// billing. +service PaymentsAccountService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns all payments accounts associated with all managers + // between the login customer ID and specified serving customer in the + // hierarchy, inclusive. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [PaymentsAccountError]() + // [QuotaError]() + // [RequestError]() + rpc ListPaymentsAccounts(ListPaymentsAccountsRequest) returns (ListPaymentsAccountsResponse) { + option (google.api.http) = { + get: "/v9/customers/{customer_id=*}/paymentsAccounts" + }; + option (google.api.method_signature) = "customer_id"; + } +} + +// Request message for fetching all accessible payments accounts. +message ListPaymentsAccountsRequest { + // Required. The ID of the customer to apply the PaymentsAccount list operation to. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [PaymentsAccountService.ListPaymentsAccounts][google.ads.googleads.v9.services.PaymentsAccountService.ListPaymentsAccounts]. +message ListPaymentsAccountsResponse { + // The list of accessible payments accounts. + repeated google.ads.googleads.v9.resources.PaymentsAccount payments_accounts = 1; +} diff --git a/google/ads/googleads/v9/services/product_bidding_category_constant_service.proto b/google/ads/googleads/v9/services/product_bidding_category_constant_service.proto new file mode 100644 index 000000000..5073bb454 --- /dev/null +++ b/google/ads/googleads/v9/services/product_bidding_category_constant_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/product_bidding_category_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ProductBiddingCategoryConstantServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Product Bidding Category constant service + +// Service to fetch Product Bidding Categories. +service ProductBiddingCategoryConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Product Bidding Category in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetProductBiddingCategoryConstant(GetProductBiddingCategoryConstantRequest) returns (google.ads.googleads.v9.resources.ProductBiddingCategoryConstant) { + option (google.api.http) = { + get: "/v9/{resource_name=productBiddingCategoryConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant][google.ads.googleads.v9.services.ProductBiddingCategoryConstantService.GetProductBiddingCategoryConstant]. +message GetProductBiddingCategoryConstantRequest { + // Required. Resource name of the Product Bidding Category to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ProductBiddingCategoryConstant" + } + ]; +} diff --git a/google/ads/googleads/v9/services/product_group_view_service.proto b/google/ads/googleads/v9/services/product_group_view_service.proto new file mode 100644 index 000000000..f6bdf30a9 --- /dev/null +++ b/google/ads/googleads/v9/services/product_group_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/product_group_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ProductGroupViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the ProductGroup View service. + +// Service to manage product group views. +service ProductGroupViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested product group view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetProductGroupView(GetProductGroupViewRequest) returns (google.ads.googleads.v9.resources.ProductGroupView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/productGroupViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [ProductGroupViewService.GetProductGroupView][google.ads.googleads.v9.services.ProductGroupViewService.GetProductGroupView]. +message GetProductGroupViewRequest { + // Required. The resource name of the product group view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ProductGroupView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/reach_plan_service.proto b/google/ads/googleads/v9/services/reach_plan_service.proto new file mode 100644 index 000000000..57d8f0f12 --- /dev/null +++ b/google/ads/googleads/v9/services/reach_plan_service.proto @@ -0,0 +1,568 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/common/dates.proto"; +import "google/ads/googleads/v9/enums/frequency_cap_time_unit.proto"; +import "google/ads/googleads/v9/enums/reach_plan_ad_length.proto"; +import "google/ads/googleads/v9/enums/reach_plan_age_range.proto"; +import "google/ads/googleads/v9/enums/reach_plan_network.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ReachPlanServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the reach plan service. + +// Reach Plan Service gives users information about audience size that can +// be reached through advertisement on YouTube. In particular, +// GenerateReachForecast provides estimated number of people of specified +// demographics that can be reached by an ad in a given market by a campaign of +// certain duration with a defined budget. +service ReachPlanService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the list of plannable locations (for example, countries & DMAs). + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListPlannableLocations(ListPlannableLocationsRequest) returns (ListPlannableLocationsResponse) { + option (google.api.http) = { + post: "/v9:listPlannableLocations" + body: "*" + }; + } + + // Returns the list of per-location plannable YouTube ad formats with allowed + // targeting. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc ListPlannableProducts(ListPlannableProductsRequest) returns (ListPlannableProductsResponse) { + option (google.api.http) = { + post: "/v9:listPlannableProducts" + body: "*" + }; + option (google.api.method_signature) = "plannable_location_id"; + } + + // Generates a product mix ideas given a set of preferences. This method + // helps the advertiser to obtain a good mix of ad formats and budget + // allocations based on its preferences. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [ReachPlanError]() + // [RequestError]() + rpc GenerateProductMixIdeas(GenerateProductMixIdeasRequest) returns (GenerateProductMixIdeasResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:generateProductMixIdeas" + body: "*" + }; + option (google.api.method_signature) = "customer_id,plannable_location_id,currency_code,budget_micros"; + } + + // Generates a reach forecast for a given targeting / product mix. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RangeError]() + // [ReachPlanError]() + // [RequestError]() + rpc GenerateReachForecast(GenerateReachForecastRequest) returns (GenerateReachForecastResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:generateReachForecast" + body: "*" + }; + option (google.api.method_signature) = "customer_id,campaign_duration,planned_products"; + } +} + +// Request message for [ReachPlanService.ListPlannableLocations][google.ads.googleads.v9.services.ReachPlanService.ListPlannableLocations]. +message ListPlannableLocationsRequest { + +} + +// The list of plannable locations. +message ListPlannableLocationsResponse { + // The list of locations available for planning (Countries, DMAs, + // sub-countries). + // For locations like Countries and DMAs see + // https://developers.google.com/google-ads/api/reference/data/geotargets for + // more information. + repeated PlannableLocation plannable_locations = 1; +} + +// A plannable location: a country, a DMA, a metro region, a tv region, +// a province. +message PlannableLocation { + // The location identifier. + optional string id = 4; + + // The unique location name in english. + optional string name = 5; + + // The parent country, not present if location is a country. + // If present will always be a GeoTargetConstant ID. Additional information, + // such as country name is provided by + // [ReachPlanService.ListPlannableLocations][google.ads.googleads.v9.services.ReachPlanService.ListPlannableLocations] or directly by accessing + // [GeoTargetConstantService.GetGeoTargetConstant][google.ads.googleads.v9.services.GeoTargetConstantService.GetGeoTargetConstant]. + optional int64 parent_country_id = 6; + + // The ISO-3166-1 alpha-2 country code that is associated with the location. + optional string country_code = 7; + + // The location's type. Location types correspond to target_type returned by + // [GeoTargetConstantService.GetGeoTargetConstant][google.ads.googleads.v9.services.GeoTargetConstantService.GetGeoTargetConstant]. + optional string location_type = 8; +} + +// Request to list available products in a given location. +message ListPlannableProductsRequest { + // Required. The ID of the selected location for planning. To list the available + // plannable location ids use [ReachPlanService.ListPlannableLocations][google.ads.googleads.v9.services.ReachPlanService.ListPlannableLocations]. + string plannable_location_id = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// A response with all available products. +message ListPlannableProductsResponse { + // The list of products available for planning and related targeting metadata. + repeated ProductMetadata product_metadata = 1; +} + +// The metadata associated with an available plannable product. +message ProductMetadata { + // The code associated with the ad product. E.g. BUMPER, TRUEVIEW_IN_STREAM + // To list the available plannable product codes use ListPlannableProducts. + optional string plannable_product_code = 4; + + // The name associated with the ad product. + string plannable_product_name = 3; + + // The allowed plannable targeting for this product. + PlannableTargeting plannable_targeting = 2; +} + +// The targeting for which traffic metrics will be reported. +message PlannableTargeting { + // Allowed plannable age ranges for the product for which metrics will be + // reported. Actual targeting is computed by mapping this age range onto + // standard Google common.AgeRangeInfo values. + repeated google.ads.googleads.v9.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_ranges = 1; + + // Targetable genders for the ad product. + repeated google.ads.googleads.v9.common.GenderInfo genders = 2; + + // Targetable devices for the ad product. + // TABLET device targeting is automatically applied to reported metrics + // when MOBILE targeting is selected for CPM_MASTHEAD, + // GOOGLE_PREFERRED_BUMPER and GOOGLE_PREFERRED_SHORT products. + repeated google.ads.googleads.v9.common.DeviceInfo devices = 3; + + // Targetable networks for the ad product. + repeated google.ads.googleads.v9.enums.ReachPlanNetworkEnum.ReachPlanNetwork networks = 4; +} + +// Request message for [ReachPlanService.GenerateProductMixIdeas][google.ads.googleads.v9.services.ReachPlanService.GenerateProductMixIdeas]. +message GenerateProductMixIdeasRequest { + // Required. The ID of the customer. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The ID of the location, this is one of the ids returned by + // [ReachPlanService.ListPlannableLocations][google.ads.googleads.v9.services.ReachPlanService.ListPlannableLocations]. + string plannable_location_id = 6 [(google.api.field_behavior) = REQUIRED]; + + // Required. Currency code. + // Three-character ISO 4217 currency code. + string currency_code = 7 [(google.api.field_behavior) = REQUIRED]; + + // Required. Total budget. + // Amount in micros. One million is equivalent to one unit. + int64 budget_micros = 8 [(google.api.field_behavior) = REQUIRED]; + + // The preferences of the suggested product mix. + // An unset preference is interpreted as all possible values are allowed, + // unless explicitly specified. + Preferences preferences = 5; +} + +// Set of preferences about the planned mix. +message Preferences { + // True if ad skippable. + // If not set, default is any value. + optional bool is_skippable = 6; + + // True if ad start with sound. + // If not set, default is any value. + optional bool starts_with_sound = 7; + + // The length of the ad. + // If not set, default is any value. + google.ads.googleads.v9.enums.ReachPlanAdLengthEnum.ReachPlanAdLength ad_length = 3; + + // True if ad will only show on the top content. + // If not set, default is false. + optional bool top_content_only = 8; + + // True if the price guaranteed. The cost of serving the ad is agreed upfront + // and not subject to an auction. + // If not set, default is any value. + optional bool has_guaranteed_price = 9; +} + +// The suggested product mix. +message GenerateProductMixIdeasResponse { + // A list of products (ad formats) and the associated budget allocation idea. + repeated ProductAllocation product_allocation = 1; +} + +// An allocation of a part of the budget on a given product. +message ProductAllocation { + // Selected product for planning. The product codes returned are within the + // set of the ones returned by ListPlannableProducts when using the same + // location ID. + optional string plannable_product_code = 3; + + // The value to be allocated for the suggested product in requested currency. + // Amount in micros. One million is equivalent to one unit. + optional int64 budget_micros = 4; +} + +// Request message for [ReachPlanService.GenerateReachForecast][google.ads.googleads.v9.services.ReachPlanService.GenerateReachForecast]. +message GenerateReachForecastRequest { + // Required. The ID of the customer. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // The currency code. + // Three-character ISO 4217 currency code. + optional string currency_code = 9; + + // Required. Campaign duration. + CampaignDuration campaign_duration = 3 [(google.api.field_behavior) = REQUIRED]; + + // Desired cookie frequency cap that will be applied to each planned product. + // This is equivalent to the frequency cap exposed in Google Ads when creating + // a campaign, it represents the maximum number of times an ad can be shown to + // the same user. + // If not specified no cap is applied. + // + // This field is deprecated in v4 and will eventually be removed. + // Please use cookie_frequency_cap_setting instead. + optional int32 cookie_frequency_cap = 10; + + // Desired cookie frequency cap that will be applied to each planned product. + // This is equivalent to the frequency cap exposed in Google Ads when creating + // a campaign, it represents the maximum number of times an ad can be shown to + // the same user during a specified time interval. + // If not specified, a default of 0 (no cap) is applied. + // + // This field replaces the deprecated cookie_frequency_cap field. + FrequencyCap cookie_frequency_cap_setting = 8; + + // Desired minimum effective frequency (the number of times a person was + // exposed to the ad) for the reported reach metrics [1-10]. + // This won't affect the targeting, but just the reporting. + // If not specified, a default of 1 is applied. + // + // This field cannot be combined with the effective_frequency_limit field. + optional int32 min_effective_frequency = 11; + + // The highest minimum effective frequency (the number of times a person was + // exposed to the ad) value [1-10] to include in + // Forecast.effective_frequency_breakdowns. + // If not specified, Forecast.effective_frequency_breakdowns will not be + // provided. + // + // The effective frequency value provided here will also be used as the + // minimum effective frequency for the reported reach metrics. + // + // This field cannot be combined with the min_effective_frequency field. + optional EffectiveFrequencyLimit effective_frequency_limit = 12; + + // The targeting to be applied to all products selected in the product mix. + // + // This is planned targeting: execution details might vary based on the + // advertising product, please consult an implementation specialist. + // + // See specific metrics for details on how targeting affects them. + Targeting targeting = 6; + + // Required. The products to be forecast. + // The max number of allowed planned products is 15. + repeated PlannedProduct planned_products = 7 [(google.api.field_behavior) = REQUIRED]; +} + +// Effective frequency limit. +message EffectiveFrequencyLimit { + // The highest effective frequency value to include in + // Forecast.effective_frequency_breakdowns. + // This field supports frequencies 1-10, inclusive. + int32 effective_frequency_breakdown_limit = 1; +} + +// A rule specifying the maximum number of times an ad can be shown to a user +// over a particular time period. +message FrequencyCap { + // Required. The number of impressions, inclusive. + int32 impressions = 3 [(google.api.field_behavior) = REQUIRED]; + + // Required. The type of time unit. + google.ads.googleads.v9.enums.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit time_unit = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// The targeting for which traffic metrics will be reported. +message Targeting { + // Required. The ID of the selected location. Plannable location IDs can be + // obtained from [ReachPlanService.ListPlannableLocations][google.ads.googleads.v9.services.ReachPlanService.ListPlannableLocations]. + optional string plannable_location_id = 6; + + // Targeted age range. + // An unset value is equivalent to targeting all ages. + google.ads.googleads.v9.enums.ReachPlanAgeRangeEnum.ReachPlanAgeRange age_range = 2; + + // Targeted genders. + // An unset value is equivalent to targeting MALE and FEMALE. + repeated google.ads.googleads.v9.common.GenderInfo genders = 3; + + // Targeted devices. + // If not specified, targets all applicable devices. Applicable devices vary + // by product and region and can be obtained from + // [ReachPlanService.ListPlannableProducts][google.ads.googleads.v9.services.ReachPlanService.ListPlannableProducts]. + repeated google.ads.googleads.v9.common.DeviceInfo devices = 4; + + // Targetable network for the ad product. + // If not specified, targets all applicable networks. Applicable networks vary + // by product and region and can be obtained from + // [ReachPlanService.ListPlannableProducts][google.ads.googleads.v9.services.ReachPlanService.ListPlannableProducts]. + google.ads.googleads.v9.enums.ReachPlanNetworkEnum.ReachPlanNetwork network = 5; +} + +// The duration of a planned campaign. +message CampaignDuration { + // The duration value in days. + // + // This field cannot be combined with the date_range field. + optional int32 duration_in_days = 2; + + // Date range of the campaign. + // Dates are in the yyyy-mm-dd format and inclusive. + // The end date must be < 1 year in the future and the + // date range must be <= 92 days long. + // + // This field cannot be combined with the duration_in_days field. + google.ads.googleads.v9.common.DateRange date_range = 3; +} + +// A product being planned for reach. +message PlannedProduct { + // Required. Selected product for planning. + // The code associated with the ad product. E.g. Trueview, Bumper + // To list the available plannable product codes use + // [ReachPlanService.ListPlannableProducts][google.ads.googleads.v9.services.ReachPlanService.ListPlannableProducts]. + optional string plannable_product_code = 3; + + // Required. Maximum budget allocation in micros for the selected product. + // The value is specified in the selected planning currency_code. + // E.g. 1 000 000$ = 1 000 000 000 000 micros. + optional int64 budget_micros = 4; +} + +// Response message containing the generated reach curve. +message GenerateReachForecastResponse { + // Reference on target audiences for this curve. + OnTargetAudienceMetrics on_target_audience_metrics = 1; + + // The generated reach curve for the planned product mix. + ReachCurve reach_curve = 2; +} + +// The reach curve for the planned products. +message ReachCurve { + // All points on the reach curve. + repeated ReachForecast reach_forecasts = 1; +} + +// A point on reach curve. +message ReachForecast { + // The cost in micros. + int64 cost_micros = 5; + + // Forecasted traffic metrics for this point. + Forecast forecast = 2; + + // The forecasted allocation and traffic metrics for each planned product + // at this point on the reach curve. + repeated PlannedProductReachForecast planned_product_reach_forecasts = 4; +} + +// Forecasted traffic metrics for the planned products and targeting. +message Forecast { + // Number of unique people reached at least + // GenerateReachForecastRequest.min_effective_frequency or + // GenerateReachForecastRequest.effective_frequency_limit times that exactly + // matches the Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the on_target_reach + // value will be rounded to 0. + optional int64 on_target_reach = 5; + + // Total number of unique people reached at least + // GenerateReachForecastRequest.min_effective_frequency or + // GenerateReachForecastRequest.effective_frequency_limit times. This includes + // people that may fall outside the specified Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the total_reach + // value will be rounded to 0. + optional int64 total_reach = 6; + + // Number of ad impressions that exactly matches the Targeting. + optional int64 on_target_impressions = 7; + + // Total number of ad impressions. This includes impressions that may fall + // outside the specified Targeting, due to insufficient information on + // signed-in users. + optional int64 total_impressions = 8; + + // Number of times the ad's impressions were considered viewable. + // See https://support.google.com/google-ads/answer/7029393 for + // more information about what makes an ad viewable and how + // viewability is measured. + optional int64 viewable_impressions = 9; + + // A list of effective frequency forecasts. The list is ordered starting with + // 1+ and ending with the value set in + // GenerateReachForecastRequest.effective_frequency_limit. If no + // effective_frequency_limit was set, this list will be empty. + repeated EffectiveFrequencyBreakdown effective_frequency_breakdowns = 10; +} + +// The forecasted allocation and traffic metrics for a specific product +// at a point on the reach curve. +message PlannedProductReachForecast { + // Selected product for planning. The product codes returned are within the + // set of the ones returned by ListPlannableProducts when using the same + // location ID. + string plannable_product_code = 1; + + // The cost in micros. This may differ from the product's input allocation + // if one or more planned products cannot fulfill the budget because of + // limited inventory. + int64 cost_micros = 2; + + // Forecasted traffic metrics for this product. + PlannedProductForecast planned_product_forecast = 3; +} + +// Forecasted traffic metrics for a planned product. +message PlannedProductForecast { + // Number of unique people reached that exactly matches the Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the on_target_reach + // value will be rounded to 0. + int64 on_target_reach = 1; + + // Number of unique people reached. This includes people that may fall + // outside the specified Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the total_reach + // value will be rounded to 0. + int64 total_reach = 2; + + // Number of ad impressions that exactly matches the Targeting. + int64 on_target_impressions = 3; + + // Total number of ad impressions. This includes impressions that may fall + // outside the specified Targeting, due to insufficient information on + // signed-in users. + int64 total_impressions = 4; + + // Number of times the ad's impressions were considered viewable. + // See https://support.google.com/google-ads/answer/7029393 for + // more information about what makes an ad viewable and how + // viewability is measured. + optional int64 viewable_impressions = 5; +} + +// Audience metrics for the planned products. +// These metrics consider the following targeting dimensions: +// +// - Location +// - PlannableAgeRange +// - Gender +message OnTargetAudienceMetrics { + // Reference audience size matching the considered targeting for YouTube. + optional int64 youtube_audience_size = 3; + + // Reference audience size matching the considered targeting for Census. + optional int64 census_audience_size = 4; +} + +// A breakdown of the number of unique people reached at a given effective +// frequency. +message EffectiveFrequencyBreakdown { + // The effective frequency [1-10]. + int32 effective_frequency = 1; + + // The number of unique people reached at least effective_frequency times that + // exactly matches the Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the on_target_reach + // value will be rounded to 0. + int64 on_target_reach = 2; + + // Total number of unique people reached at least effective_frequency times. + // This includes people that may fall outside the specified Targeting. + // + // Note that a minimum number of unique people must be reached in order for + // data to be reported. If the minimum number is not met, the total_reach + // value will be rounded to 0. + int64 total_reach = 3; +} diff --git a/google/ads/googleads/v9/services/recommendation_service.proto b/google/ads/googleads/v9/services/recommendation_service.proto new file mode 100644 index 000000000..58fa37a1c --- /dev/null +++ b/google/ads/googleads/v9/services/recommendation_service.proto @@ -0,0 +1,309 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/extensions.proto"; +import "google/ads/googleads/v9/enums/keyword_match_type.proto"; +import "google/ads/googleads/v9/resources/ad.proto"; +import "google/ads/googleads/v9/resources/recommendation.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "RecommendationServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Recommendation service. + +// Service to manage recommendations. +service RecommendationService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested recommendation in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetRecommendation(GetRecommendationRequest) returns (google.ads.googleads.v9.resources.Recommendation) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/recommendations/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Applies given recommendations with corresponding apply parameters. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [QuotaError]() + // [RecommendationError]() + // [RequestError]() + // [UrlFieldError]() + rpc ApplyRecommendation(ApplyRecommendationRequest) returns (ApplyRecommendationResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/recommendations:apply" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } + + // Dismisses given recommendations. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RecommendationError]() + // [RequestError]() + rpc DismissRecommendation(DismissRecommendationRequest) returns (DismissRecommendationResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/recommendations:dismiss" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [RecommendationService.GetRecommendation][google.ads.googleads.v9.services.RecommendationService.GetRecommendation]. +message GetRecommendationRequest { + // Required. The resource name of the recommendation to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Recommendation" + } + ]; +} + +// Request message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v9.services.RecommendationService.ApplyRecommendation]. +message ApplyRecommendationRequest { + // Required. The ID of the customer with the recommendation. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to apply recommendations. + // If partial_failure=false all recommendations should be of the same type + // There is a limit of 100 operations per request. + repeated ApplyRecommendationOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, operations will be carried + // out as a transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; +} + +// Information about the operation to apply a recommendation and any parameters +// to customize it. +message ApplyRecommendationOperation { + // Parameters to use when applying a campaign budget recommendation. + message CampaignBudgetParameters { + // New budget amount to set for target budget resource. This is a required + // field. + optional int64 new_budget_amount_micros = 2; + } + + // Parameters to use when applying a text ad recommendation. + message TextAdParameters { + // New ad to add to recommended ad group. All necessary fields need to be + // set in this message. This is a required field. + google.ads.googleads.v9.resources.Ad ad = 1; + } + + // Parameters to use when applying keyword recommendation. + message KeywordParameters { + // The ad group resource to add keyword to. This is a required field. + optional string ad_group = 4; + + // The match type of the keyword. This is a required field. + google.ads.googleads.v9.enums.KeywordMatchTypeEnum.KeywordMatchType match_type = 2; + + // Optional, CPC bid to set for the keyword. If not set, keyword will use + // bid based on bidding strategy used by target ad group. + optional int64 cpc_bid_micros = 5; + } + + // Parameters to use when applying Target CPA recommendation. + message TargetCpaOptInParameters { + // Average CPA to use for Target CPA bidding strategy. This is a required + // field. + optional int64 target_cpa_micros = 3; + + // Optional, budget amount to set for the campaign. + optional int64 new_campaign_budget_amount_micros = 4; + } + + // Parameters to use when applying a Target ROAS opt-in recommendation. + message TargetRoasOptInParameters { + // Average ROAS (revenue per unit of spend) to use for Target ROAS bidding + // strategy. The value is between 0.01 and 1000.0, inclusive. This is a + // required field, unless new_campaign_budget_amount_micros is set. + optional double target_roas = 1; + + // Optional, budget amount to set for the campaign. + optional int64 new_campaign_budget_amount_micros = 2; + } + + // Parameters to use when applying callout extension recommendation. + message CalloutExtensionParameters { + // Callout extensions to be added. This is a required field. + repeated google.ads.googleads.v9.common.CalloutFeedItem callout_extensions = 1; + } + + // Parameters to use when applying call extension recommendation. + message CallExtensionParameters { + // Call extensions to be added. This is a required field. + repeated google.ads.googleads.v9.common.CallFeedItem call_extensions = 1; + } + + // Parameters to use when applying sitelink extension recommendation. + message SitelinkExtensionParameters { + // Sitelink extensions to be added. This is a required field. + repeated google.ads.googleads.v9.common.SitelinkFeedItem sitelink_extensions = 1; + } + + // Parameters to use when applying move unused budget recommendation. + message MoveUnusedBudgetParameters { + // Budget amount to move from excess budget to constrained budget. This is + // a required field. + optional int64 budget_micros_to_move = 2; + } + + // Parameters to use when applying a responsive search ad recommendation. + message ResponsiveSearchAdParameters { + // Required. New ad to add to recommended ad group. + google.ads.googleads.v9.resources.Ad ad = 1 [(google.api.field_behavior) = REQUIRED]; + } + + // The resource name of the recommendation to apply. + string resource_name = 1; + + // Parameters to use when applying the recommendation. + oneof apply_parameters { + // Optional parameters to use when applying a campaign budget + // recommendation. + CampaignBudgetParameters campaign_budget = 2; + + // Optional parameters to use when applying a text ad recommendation. + TextAdParameters text_ad = 3; + + // Optional parameters to use when applying keyword recommendation. + KeywordParameters keyword = 4; + + // Optional parameters to use when applying target CPA opt-in + // recommendation. + TargetCpaOptInParameters target_cpa_opt_in = 5; + + // Optional parameters to use when applying target ROAS opt-in + // recommendation. + TargetRoasOptInParameters target_roas_opt_in = 10; + + // Parameters to use when applying callout extension recommendation. + CalloutExtensionParameters callout_extension = 6; + + // Parameters to use when applying call extension recommendation. + CallExtensionParameters call_extension = 7; + + // Parameters to use when applying sitelink extension recommendation. + SitelinkExtensionParameters sitelink_extension = 8; + + // Parameters to use when applying move unused budget recommendation. + MoveUnusedBudgetParameters move_unused_budget = 9; + + // Parameters to use when applying a responsive search ad recommendation. + ResponsiveSearchAdParameters responsive_search_ad = 11; + } +} + +// Response message for [RecommendationService.ApplyRecommendation][google.ads.googleads.v9.services.RecommendationService.ApplyRecommendation]. +message ApplyRecommendationResponse { + // Results of operations to apply recommendations. + repeated ApplyRecommendationResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors) + // we return the RPC level error. + google.rpc.Status partial_failure_error = 2; +} + +// The result of applying a recommendation. +message ApplyRecommendationResult { + // Returned for successful applies. + string resource_name = 1; +} + +// Request message for [RecommendationService.DismissRecommendation][google.ads.googleads.v9.services.RecommendationService.DismissRecommendation]. +message DismissRecommendationRequest { + // Operation to dismiss a single recommendation identified by resource_name. + message DismissRecommendationOperation { + // The resource name of the recommendation to dismiss. + string resource_name = 1; + } + + // Required. The ID of the customer with the recommendation. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to dismiss recommendations. + // If partial_failure=false all recommendations should be of the same type + // There is a limit of 100 operations per request. + repeated DismissRecommendationOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, operations will be carried in a + // single transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 2; +} + +// Response message for [RecommendationService.DismissRecommendation][google.ads.googleads.v9.services.RecommendationService.DismissRecommendation]. +message DismissRecommendationResponse { + // The result of dismissing a recommendation. + message DismissRecommendationResult { + // Returned for successful dismissals. + string resource_name = 1; + } + + // Results of operations to dismiss recommendations. + repeated DismissRecommendationResult results = 1; + + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors) + // we return the RPC level error. + google.rpc.Status partial_failure_error = 2; +} diff --git a/google/ads/googleads/v9/services/remarketing_action_service.proto b/google/ads/googleads/v9/services/remarketing_action_service.proto new file mode 100644 index 000000000..5027ced29 --- /dev/null +++ b/google/ads/googleads/v9/services/remarketing_action_service.proto @@ -0,0 +1,141 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/remarketing_action.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "RemarketingActionServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Remarketing Action service. + +// Service to manage remarketing actions. +service RemarketingActionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested remarketing action in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetRemarketingAction(GetRemarketingActionRequest) returns (google.ads.googleads.v9.resources.RemarketingAction) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/remarketingActions/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates remarketing actions. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [ConversionActionError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc MutateRemarketingActions(MutateRemarketingActionsRequest) returns (MutateRemarketingActionsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/remarketingActions:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [RemarketingActionService.GetRemarketingAction][google.ads.googleads.v9.services.RemarketingActionService.GetRemarketingAction]. +message GetRemarketingActionRequest { + // Required. The resource name of the remarketing action to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/RemarketingAction" + } + ]; +} + +// Request message for [RemarketingActionService.MutateRemarketingActions][google.ads.googleads.v9.services.RemarketingActionService.MutateRemarketingActions]. +message MutateRemarketingActionsRequest { + // Required. The ID of the customer whose remarketing actions are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual remarketing actions. + repeated RemarketingActionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update) on a remarketing action. +message RemarketingActionOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new remarketing + // action. + google.ads.googleads.v9.resources.RemarketingAction create = 1; + + // Update operation: The remarketing action is expected to have a valid + // resource name. + google.ads.googleads.v9.resources.RemarketingAction update = 2; + } +} + +// Response message for remarketing action mutate. +message MutateRemarketingActionsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateRemarketingActionResult results = 2; +} + +// The result for the remarketing action mutate. +message MutateRemarketingActionResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/search_term_view_service.proto b/google/ads/googleads/v9/services/search_term_view_service.proto new file mode 100644 index 000000000..8c03584ca --- /dev/null +++ b/google/ads/googleads/v9/services/search_term_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/search_term_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SearchTermViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Search Term View service. + +// Service to manage search term views. +service SearchTermViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the attributes of the requested search term view. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetSearchTermView(GetSearchTermViewRequest) returns (google.ads.googleads.v9.resources.SearchTermView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/searchTermViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [SearchTermViewService.GetSearchTermView][google.ads.googleads.v9.services.SearchTermViewService.GetSearchTermView]. +message GetSearchTermViewRequest { + // Required. The resource name of the search term view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SearchTermView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/shared_criterion_service.proto b/google/ads/googleads/v9/services/shared_criterion_service.proto new file mode 100644 index 000000000..8432fbcc3 --- /dev/null +++ b/google/ads/googleads/v9/services/shared_criterion_service.proto @@ -0,0 +1,162 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/shared_criterion.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SharedCriterionServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Shared Criterion service. + +// Service to manage shared criteria. +service SharedCriterionService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested shared criterion in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetSharedCriterion(GetSharedCriterionRequest) returns (google.ads.googleads.v9.resources.SharedCriterion) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/sharedCriteria/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or removes shared criteria. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CriterionError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateSharedCriteria(MutateSharedCriteriaRequest) returns (MutateSharedCriteriaResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/sharedCriteria:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [SharedCriterionService.GetSharedCriterion][google.ads.googleads.v9.services.SharedCriterionService.GetSharedCriterion]. +message GetSharedCriterionRequest { + // Required. The resource name of the shared criterion to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedCriterion" + } + ]; +} + +// Request message for [SharedCriterionService.MutateSharedCriteria][google.ads.googleads.v9.services.SharedCriterionService.MutateSharedCriteria]. +message MutateSharedCriteriaRequest { + // Required. The ID of the customer whose shared criteria are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual shared criteria. + repeated SharedCriterionOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, remove) on an shared criterion. +message SharedCriterionOperation { + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new shared + // criterion. + google.ads.googleads.v9.resources.SharedCriterion create = 1; + + // Remove operation: A resource name for the removed shared criterion is + // expected, in this format: + // + // `customers/{customer_id}/sharedCriteria/{shared_set_id}~{criterion_id}` + string remove = 3; + } +} + +// Response message for a shared criterion mutate. +message MutateSharedCriteriaResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateSharedCriterionResult results = 2; +} + +// The result for the shared criterion mutate. +message MutateSharedCriterionResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated shared criterion with only mutable fields after mutate. The + // field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.SharedCriterion shared_criterion = 2; +} diff --git a/google/ads/googleads/v9/services/shared_set_service.proto b/google/ads/googleads/v9/services/shared_set_service.proto new file mode 100644 index 000000000..b81ff5d54 --- /dev/null +++ b/google/ads/googleads/v9/services/shared_set_service.proto @@ -0,0 +1,172 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/shared_set.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SharedSetServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Shared Set service. + +// Service to manage shared sets. +service SharedSetService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested shared set in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetSharedSet(GetSharedSetRequest) returns (google.ads.googleads.v9.resources.SharedSet) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/sharedSets/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates, updates, or removes shared sets. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [DatabaseError]() + // [DateError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [IdError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotEmptyError]() + // [NullError]() + // [OperatorError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [ResourceCountLimitExceededError]() + // [SharedSetError]() + // [SizeLimitError]() + // [StringFormatError]() + // [StringLengthError]() + rpc MutateSharedSets(MutateSharedSetsRequest) returns (MutateSharedSetsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/sharedSets:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [SharedSetService.GetSharedSet][google.ads.googleads.v9.services.SharedSetService.GetSharedSet]. +message GetSharedSetRequest { + // Required. The resource name of the shared set to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SharedSet" + } + ]; +} + +// Request message for [SharedSetService.MutateSharedSets][google.ads.googleads.v9.services.SharedSetService.MutateSharedSets]. +message MutateSharedSetsRequest { + // Required. The ID of the customer whose shared sets are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual shared sets. + repeated SharedSetOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation (create, update, remove) on an shared set. +message SharedSetOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new shared set. + google.ads.googleads.v9.resources.SharedSet create = 1; + + // Update operation: The shared set is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.SharedSet update = 2; + + // Remove operation: A resource name for the removed shared set is expected, + // in this format: + // + // `customers/{customer_id}/sharedSets/{shared_set_id}` + string remove = 3; + } +} + +// Response message for a shared set mutate. +message MutateSharedSetsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateSharedSetResult results = 2; +} + +// The result for the shared set mutate. +message MutateSharedSetResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated shared set with only mutable fields after mutate. The field + // will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.SharedSet shared_set = 2; +} diff --git a/google/ads/googleads/v9/services/shopping_performance_view_service.proto b/google/ads/googleads/v9/services/shopping_performance_view_service.proto new file mode 100644 index 000000000..c90492e5e --- /dev/null +++ b/google/ads/googleads/v9/services/shopping_performance_view_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/shopping_performance_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ShoppingPerformanceViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the ShoppingPerformanceView service. + +// Service to fetch Shopping performance views. +service ShoppingPerformanceViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Shopping performance view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetShoppingPerformanceView(GetShoppingPerformanceViewRequest) returns (google.ads.googleads.v9.resources.ShoppingPerformanceView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/shoppingPerformanceView}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [ShoppingPerformanceViewService.GetShoppingPerformanceView][google.ads.googleads.v9.services.ShoppingPerformanceViewService.GetShoppingPerformanceView]. +message GetShoppingPerformanceViewRequest { + // Required. The resource name of the Shopping performance view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/ShoppingPerformanceView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/smart_campaign_search_term_view_service.proto b/google/ads/googleads/v9/services/smart_campaign_search_term_view_service.proto new file mode 100644 index 000000000..7799a36af --- /dev/null +++ b/google/ads/googleads/v9/services/smart_campaign_search_term_view_service.proto @@ -0,0 +1,68 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/smart_campaign_search_term_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SmartCampaignSearchTermViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Smart Campaign Search Term View service. + +// Service to manage Smart campaign search term views. +service SmartCampaignSearchTermViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the attributes of the requested Smart campaign search term view. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetSmartCampaignSearchTermView(GetSmartCampaignSearchTermViewRequest) returns (google.ads.googleads.v9.resources.SmartCampaignSearchTermView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/smartCampaignSearchTermViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for +// [SmartCampaignSearchTermViewService.GetSmartCampaignSearchTermView][google.ads.googleads.v9.services.SmartCampaignSearchTermViewService.GetSmartCampaignSearchTermView]. +message GetSmartCampaignSearchTermViewRequest { + // Required. The resource name of the Smart campaign search term view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SmartCampaignSearchTermView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/smart_campaign_setting_service.proto b/google/ads/googleads/v9/services/smart_campaign_setting_service.proto new file mode 100644 index 000000000..def5a47bf --- /dev/null +++ b/google/ads/googleads/v9/services/smart_campaign_setting_service.proto @@ -0,0 +1,128 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/enums/response_content_type.proto"; +import "google/ads/googleads/v9/resources/smart_campaign_setting.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SmartCampaignSettingServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Smart campaign setting service. + +// Service to manage Smart campaign settings. +service SmartCampaignSettingService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested Smart campaign setting in full detail. + rpc GetSmartCampaignSetting(GetSmartCampaignSettingRequest) returns (google.ads.googleads.v9.resources.SmartCampaignSetting) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/smartCampaignSettings/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Updates Smart campaign settings for campaigns. + rpc MutateSmartCampaignSettings(MutateSmartCampaignSettingsRequest) returns (MutateSmartCampaignSettingsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/smartCampaignSettings:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [SmartCampaignSettingService.GetSmartCampaignSetting][google.ads.googleads.v9.services.SmartCampaignSettingService.GetSmartCampaignSetting]. +message GetSmartCampaignSettingRequest { + // Required. The resource name of the Smart campaign setting to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/SmartCampaignSetting" + } + ]; +} + +// Request message for +// [SmartCampaignSettingService.MutateSmartCampaignSetting][]. +message MutateSmartCampaignSettingsRequest { + // Required. The ID of the customer whose Smart campaign settings are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual Smart campaign settings. + repeated SmartCampaignSettingOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; + + // The response content type setting. Determines whether the mutable resource + // or just the resource name should be returned post mutation. + google.ads.googleads.v9.enums.ResponseContentTypeEnum.ResponseContentType response_content_type = 5; +} + +// A single operation to update Smart campaign settings for a campaign. +message SmartCampaignSettingOperation { + // Update operation: The Smart campaign setting must specify a valid + // resource name. + google.ads.googleads.v9.resources.SmartCampaignSetting update = 1; + + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 2; +} + +// Response message for campaign mutate. +message MutateSmartCampaignSettingsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 1; + + // All results for the mutate. + repeated MutateSmartCampaignSettingResult results = 2; +} + +// The result for the Smart campaign setting mutate. +message MutateSmartCampaignSettingResult { + // Returned for successful operations. + string resource_name = 1; + + // The mutated Smart campaign setting with only mutable fields after mutate. + // The field will only be returned when response_content_type is set to + // "MUTABLE_RESOURCE". + google.ads.googleads.v9.resources.SmartCampaignSetting smart_campaign_setting = 2; +} diff --git a/google/ads/googleads/v9/services/smart_campaign_suggest_service.proto b/google/ads/googleads/v9/services/smart_campaign_suggest_service.proto new file mode 100644 index 000000000..a6d401e47 --- /dev/null +++ b/google/ads/googleads/v9/services/smart_campaign_suggest_service.proto @@ -0,0 +1,224 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/ad_type_infos.proto"; +import "google/ads/googleads/v9/common/criteria.proto"; +import "google/ads/googleads/v9/resources/keyword_theme_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/client.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "SmartCampaignSuggestServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Service to get suggestions for Smart Campaigns. +service SmartCampaignSuggestService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns BudgetOption suggestions. + rpc SuggestSmartCampaignBudgetOptions(SuggestSmartCampaignBudgetOptionsRequest) returns (SuggestSmartCampaignBudgetOptionsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:suggestSmartCampaignBudgetOptions" + body: "*" + }; + } + + // Suggests a Smart campaign ad compatible with the Ad family of resources, + // based on data points such as targeting and the business to advertise. + rpc SuggestSmartCampaignAd(SuggestSmartCampaignAdRequest) returns (SuggestSmartCampaignAdResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:suggestSmartCampaignAd" + body: "*" + }; + } + + // Suggests keyword themes to advertise on. + rpc SuggestKeywordThemes(SuggestKeywordThemesRequest) returns (SuggestKeywordThemesResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:suggestKeywordThemes" + body: "*" + }; + } +} + +// Request message for +// [SmartCampaignSuggestService.SuggestSmartCampaignBudgets][]. +message SuggestSmartCampaignBudgetOptionsRequest { + // Required. The ID of the customer whose budget options are to be suggested. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. For first time campaign creation use SuggestionInfo, for + // subsequent updates on BudgetOptions based on an already created campaign + // use that campaign. + oneof suggestion_data { + // Required. The resource name of the campaign to get suggestion for. + string campaign = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Campaign" + } + ]; + + // Required. Information needed to get budget options + SmartCampaignSuggestionInfo suggestion_info = 3 [(google.api.field_behavior) = REQUIRED]; + } +} + +// Information needed to get suggestion for Smart Campaign. More information +// provided will help the system to derive better suggestions. +message SmartCampaignSuggestionInfo { + // A list of locations. + message LocationList { + // Required. Locations. + repeated google.ads.googleads.v9.common.LocationInfo locations = 1 [(google.api.field_behavior) = REQUIRED]; + } + + // A context that describes a business. + message BusinessContext { + // Optional. The name of the business. + string business_name = 1 [(google.api.field_behavior) = OPTIONAL]; + } + + // Optional. Landing page URL of the campaign. + string final_url = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The two letter advertising language for the Smart campaign to be + // constructed, default to 'en' if not set. + string language_code = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The business ad schedule. + repeated google.ads.googleads.v9.common.AdScheduleInfo ad_schedules = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Smart campaign keyword themes. This field may greatly improve suggestion + // accuracy and we recommend always setting it if possible. + repeated google.ads.googleads.v9.common.KeywordThemeInfo keyword_themes = 7 [(google.api.field_behavior) = OPTIONAL]; + + // The business settings to consider when generating suggestions. + // Settings are automatically extracted from the business when provided. + // Otherwise, these settings must be specified explicitly. + oneof business_setting { + // Optional. Context describing the business to advertise. + BusinessContext business_context = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The ID of the Business Profile location. + // The location ID can be fetched by Business Profile API with its form: + // accounts/{accountId}/locations/{locationId}. The last {locationId} + // component from the Business Profile API represents the + // business_location_id. See the [Business Profile API] + // (https://developers.google.com/my-business/reference/rest/v4/accounts.locations) + int64 business_location_id = 2 [(google.api.field_behavior) = OPTIONAL]; + } + + // The geo target of the campaign, either a list of locations or + // a single proximity shall be specified. + oneof geo_target { + // Optional. The targeting geo location by locations. + LocationList location_list = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The targeting geo location by proximity. + google.ads.googleads.v9.common.ProximityInfo proximity = 5 [(google.api.field_behavior) = OPTIONAL]; + } +} + +// Response message for +// [SmartCampaignSuggestService.SuggestSmartCampaignBudgets][]. Depending on +// whether the system could suggest the options, either all of the options or +// none of them might be returned. +message SuggestSmartCampaignBudgetOptionsResponse { + // Performance metrics for a given budget option. + message Metrics { + // The estimated min daily clicks. + int64 min_daily_clicks = 1; + + // The estimated max daily clicks. + int64 max_daily_clicks = 2; + } + + // Smart Campaign budget option. + message BudgetOption { + // The amount of the budget, in the local currency for the account. + // Amount is specified in micros, where one million is equivalent to one + // currency unit. + int64 daily_amount_micros = 1; + + // Metrics pertaining to the suggested budget, could be empty if there is + // not enough information to derive the estimates. + Metrics metrics = 2; + } + + // Optional. The lowest budget option. + optional BudgetOption low = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The recommended budget option. + optional BudgetOption recommended = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The highest budget option. + optional BudgetOption high = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for +// [SmartCampaignSuggestService.SuggestSmartCampaignAd][google.ads.googleads.v9.services.SmartCampaignSuggestService.SuggestSmartCampaignAd]. +message SuggestSmartCampaignAdRequest { + // Required. The ID of the customer. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Inputs used to suggest a Smart campaign ad. + // Required fields: final_url, language_code, keyword_themes. + // Optional but recommended fields to improve the quality of the suggestion: + // business_setting and geo_target. + SmartCampaignSuggestionInfo suggestion_info = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for +// [SmartCampaignSuggestService.SuggestSmartCampaignAd][google.ads.googleads.v9.services.SmartCampaignSuggestService.SuggestSmartCampaignAd]. +message SuggestSmartCampaignAdResponse { + // Optional. Ad info includes 3 creative headlines and 2 creative descriptions. + google.ads.googleads.v9.common.SmartCampaignAdInfo ad_info = 1 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for +// [SmartCampaignSuggestService.SuggestKeywordThemes][google.ads.googleads.v9.services.SmartCampaignSuggestService.SuggestKeywordThemes]. +message SuggestKeywordThemesRequest { + // Required. The ID of the customer. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Information to get keyword theme suggestions. + // Required fields: + // * suggestion_info.final_url + // * suggestion_info.language_code + // * suggestion_info.geo_target + // + // Recommended fields: + // * suggestion_info.business_setting + SmartCampaignSuggestionInfo suggestion_info = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for +// [SmartCampaignSuggestService.SuggestKeywordThemes][google.ads.googleads.v9.services.SmartCampaignSuggestService.SuggestKeywordThemes]. +message SuggestKeywordThemesResponse { + // Smart campaign keyword theme suggestions. + repeated google.ads.googleads.v9.resources.KeywordThemeConstant keyword_themes = 1; +} diff --git a/google/ads/googleads/v9/services/third_party_app_analytics_link_service.proto b/google/ads/googleads/v9/services/third_party_app_analytics_link_service.proto new file mode 100644 index 000000000..f8aa59633 --- /dev/null +++ b/google/ads/googleads/v9/services/third_party_app_analytics_link_service.proto @@ -0,0 +1,94 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/third_party_app_analytics_link.proto"; +import "google/api/annotations.proto"; +import "google/api/resource.proto"; +import "google/api/client.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "ThirdPartyAppAnalyticsLinkServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// This service allows management of links between Google Ads and third party +// app analytics. +service ThirdPartyAppAnalyticsLinkService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the third party app analytics link in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetThirdPartyAppAnalyticsLink(GetThirdPartyAppAnalyticsLinkRequest) returns (google.ads.googleads.v9.resources.ThirdPartyAppAnalyticsLink) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}" + }; + } + + // Regenerate ThirdPartyAppAnalyticsLink.shareable_link_id that should be + // provided to the third party when setting up app analytics. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc RegenerateShareableLinkId(RegenerateShareableLinkIdRequest) returns (RegenerateShareableLinkIdResponse) { + option (google.api.http) = { + post: "/v9/{resource_name=customers/*/thirdPartyAppAnalyticsLinks/*}:regenerateShareableLinkId" + body: "*" + }; + } +} + +// Request message for +// [ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink][google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService.GetThirdPartyAppAnalyticsLink]. +message GetThirdPartyAppAnalyticsLinkRequest { + // Resource name of the third party app analytics link. + string resource_name = 1 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" + }]; +} + +// Request message for +// [ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId][google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId]. +message RegenerateShareableLinkIdRequest { + // Resource name of the third party app analytics link. + string resource_name = 1 [(google.api.resource_reference) = { + type: "googleads.googleapis.com/ThirdPartyAppAnalyticsLink" + }]; +} + +// Response message for +// [ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId][google.ads.googleads.v9.services.ThirdPartyAppAnalyticsLinkService.RegenerateShareableLinkId]. +message RegenerateShareableLinkIdResponse { + +} diff --git a/google/ads/googleads/v9/services/topic_constant_service.proto b/google/ads/googleads/v9/services/topic_constant_service.proto new file mode 100644 index 000000000..aaa80ec24 --- /dev/null +++ b/google/ads/googleads/v9/services/topic_constant_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/topic_constant.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "TopicConstantServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Topic constant service + +// Service to fetch topic constants. +service TopicConstantService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested topic constant in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetTopicConstant(GetTopicConstantRequest) returns (google.ads.googleads.v9.resources.TopicConstant) { + option (google.api.http) = { + get: "/v9/{resource_name=topicConstants/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [TopicConstantService.GetTopicConstant][google.ads.googleads.v9.services.TopicConstantService.GetTopicConstant]. +message GetTopicConstantRequest { + // Required. Resource name of the Topic to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/TopicConstant" + } + ]; +} diff --git a/google/ads/googleads/v9/services/topic_view_service.proto b/google/ads/googleads/v9/services/topic_view_service.proto new file mode 100644 index 000000000..0b8b76072 --- /dev/null +++ b/google/ads/googleads/v9/services/topic_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/topic_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "TopicViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Topic View service. + +// Service to manage topic views. +service TopicViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested topic view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetTopicView(GetTopicViewRequest) returns (google.ads.googleads.v9.resources.TopicView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/topicViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [TopicViewService.GetTopicView][google.ads.googleads.v9.services.TopicViewService.GetTopicView]. +message GetTopicViewRequest { + // Required. The resource name of the topic view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/TopicView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/user_data_service.proto b/google/ads/googleads/v9/services/user_data_service.proto new file mode 100644 index 000000000..fe745908e --- /dev/null +++ b/google/ads/googleads/v9/services/user_data_service.proto @@ -0,0 +1,97 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/common/offline_user_data.proto"; +import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; +import "google/api/client.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "UserDataServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the UserDataService. + +// Service to manage user data uploads. +service UserDataService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Uploads the given user data. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [FieldError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [OfflineUserDataJobError]() + // [QuotaError]() + // [RequestError]() + // [UserDataError]() + rpc UploadUserData(UploadUserDataRequest) returns (UploadUserDataResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}:uploadUserData" + body: "*" + }; + } +} + +// Request message for [UserDataService.UploadUserData][google.ads.googleads.v9.services.UserDataService.UploadUserData] +message UploadUserDataRequest { + // Required. The ID of the customer for which to update the user data. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to be done. + repeated UserDataOperation operations = 3 [(google.api.field_behavior) = REQUIRED]; + + // Metadata of the request. + oneof metadata { + // Metadata for data updates to a Customer Match user list. + google.ads.googleads.v9.common.CustomerMatchUserListMetadata customer_match_user_list_metadata = 2; + } +} + +// Operation to be made for the UploadUserDataRequest. +message UserDataOperation { + // Operation to be made for the UploadUserDataRequest. + oneof operation { + // The list of user data to be appended to the user list. + google.ads.googleads.v9.common.UserData create = 1; + + // The list of user data to be removed from the user list. + google.ads.googleads.v9.common.UserData remove = 2; + } +} + +// Response message for [UserDataService.UploadUserData][google.ads.googleads.v9.services.UserDataService.UploadUserData] +message UploadUserDataResponse { + // The date time at which the request was received by API, formatted as + // "yyyy-mm-dd hh:mm:ss+|-hh:mm", e.g. "2019-01-01 12:32:45-08:00". + optional string upload_date_time = 3; + + // Number of upload data operations received by API. + optional int32 received_operations_count = 4; +} diff --git a/google/ads/googleads/v9/services/user_interest_service.proto b/google/ads/googleads/v9/services/user_interest_service.proto new file mode 100644 index 000000000..e455b9da0 --- /dev/null +++ b/google/ads/googleads/v9/services/user_interest_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/user_interest.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "UserInterestServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the user interest service + +// Service to fetch Google Ads User Interest. +service UserInterestService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested user interest in full detail + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetUserInterest(GetUserInterestRequest) returns (google.ads.googleads.v9.resources.UserInterest) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/userInterests/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [UserInterestService.GetUserInterest][google.ads.googleads.v9.services.UserInterestService.GetUserInterest]. +message GetUserInterestRequest { + // Required. Resource name of the UserInterest to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserInterest" + } + ]; +} diff --git a/google/ads/googleads/v9/services/user_list_service.proto b/google/ads/googleads/v9/services/user_list_service.proto new file mode 100644 index 000000000..eaacfe159 --- /dev/null +++ b/google/ads/googleads/v9/services/user_list_service.proto @@ -0,0 +1,159 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/user_list.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "UserListServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the User List service. + +// Service to manage user lists. +service UserListService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested user list. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetUserList(GetUserListRequest) returns (google.ads.googleads.v9.resources.UserList) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/userLists/*}" + }; + option (google.api.method_signature) = "resource_name"; + } + + // Creates or updates user lists. Operation statuses are returned. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [CollectionSizeError]() + // [DatabaseError]() + // [DistinctError]() + // [FieldError]() + // [FieldMaskError]() + // [HeaderError]() + // [InternalError]() + // [MutateError]() + // [NewResourceCreationError]() + // [NotAllowlistedError]() + // [NotEmptyError]() + // [OperationAccessDeniedError]() + // [QuotaError]() + // [RangeError]() + // [RequestError]() + // [StringFormatError]() + // [StringLengthError]() + // [UserListError]() + rpc MutateUserLists(MutateUserListsRequest) returns (MutateUserListsResponse) { + option (google.api.http) = { + post: "/v9/customers/{customer_id=*}/userLists:mutate" + body: "*" + }; + option (google.api.method_signature) = "customer_id,operations"; + } +} + +// Request message for [UserListService.GetUserList][google.ads.googleads.v9.services.UserListService.GetUserList]. +message GetUserListRequest { + // Required. The resource name of the user list to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserList" + } + ]; +} + +// Request message for [UserListService.MutateUserLists][google.ads.googleads.v9.services.UserListService.MutateUserLists]. +message MutateUserListsRequest { + // Required. The ID of the customer whose user lists are being modified. + string customer_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of operations to perform on individual user lists. + repeated UserListOperation operations = 2 [(google.api.field_behavior) = REQUIRED]; + + // If true, successful operations will be carried out and invalid + // operations will return errors. If false, all operations will be carried + // out in one transaction if and only if they are all valid. + // Default is false. + bool partial_failure = 3; + + // If true, the request is validated but not executed. Only errors are + // returned, not results. + bool validate_only = 4; +} + +// A single operation (create, update) on a user list. +message UserListOperation { + // FieldMask that determines which resource fields are modified in an update. + google.protobuf.FieldMask update_mask = 4; + + // The mutate operation. + oneof operation { + // Create operation: No resource name is expected for the new user list. + google.ads.googleads.v9.resources.UserList create = 1; + + // Update operation: The user list is expected to have a valid resource + // name. + google.ads.googleads.v9.resources.UserList update = 2; + + // Remove operation: A resource name for the removed user list is expected, + // in this format: + // + // `customers/{customer_id}/userLists/{user_list_id}` + string remove = 3; + } +} + +// Response message for user list mutate. +message MutateUserListsResponse { + // Errors that pertain to operation failures in the partial failure mode. + // Returned only when partial_failure = true and all errors occur inside the + // operations. If any errors occur outside the operations (e.g. auth errors), + // we return an RPC level error. + google.rpc.Status partial_failure_error = 3; + + // All results for the mutate. + repeated MutateUserListResult results = 2; +} + +// The result for the user list mutate. +message MutateUserListResult { + // Returned for successful operations. + string resource_name = 1; +} diff --git a/google/ads/googleads/v9/services/user_location_view_service.proto b/google/ads/googleads/v9/services/user_location_view_service.proto new file mode 100644 index 000000000..808549628 --- /dev/null +++ b/google/ads/googleads/v9/services/user_location_view_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/user_location_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "UserLocationViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the UserLocationView service. + +// Service to manage user location views. +service UserLocationViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested user location view in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetUserLocationView(GetUserLocationViewRequest) returns (google.ads.googleads.v9.resources.UserLocationView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/userLocationViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [UserLocationViewService.GetUserLocationView][google.ads.googleads.v9.services.UserLocationViewService.GetUserLocationView]. +message GetUserLocationViewRequest { + // Required. The resource name of the user location view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/UserLocationView" + } + ]; +} diff --git a/google/ads/googleads/v9/services/video_service.proto b/google/ads/googleads/v9/services/video_service.proto new file mode 100644 index 000000000..49b0a33d4 --- /dev/null +++ b/google/ads/googleads/v9/services/video_service.proto @@ -0,0 +1,67 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/video.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "VideoServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Video service. + +// Service to manage videos. +service VideoService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested video in full detail. + // + // List of thrown errors: + // [AuthenticationError]() + // [AuthorizationError]() + // [HeaderError]() + // [InternalError]() + // [QuotaError]() + // [RequestError]() + rpc GetVideo(GetVideoRequest) returns (google.ads.googleads.v9.resources.Video) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/videos/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [VideoService.GetVideo][google.ads.googleads.v9.services.VideoService.GetVideo]. +message GetVideoRequest { + // Required. The resource name of the video to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/Video" + } + ]; +} diff --git a/google/ads/googleads/v9/services/webpage_view_service.proto b/google/ads/googleads/v9/services/webpage_view_service.proto new file mode 100644 index 000000000..a8f6937c6 --- /dev/null +++ b/google/ads/googleads/v9/services/webpage_view_service.proto @@ -0,0 +1,59 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.ads.googleads.v9.services; + +import "google/ads/googleads/v9/resources/webpage_view.proto"; +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Ads.GoogleAds.V9.Services"; +option go_package = "google.golang.org/genproto/googleapis/ads/googleads/v9/services;services"; +option java_multiple_files = true; +option java_outer_classname = "WebpageViewServiceProto"; +option java_package = "com.google.ads.googleads.v9.services"; +option objc_class_prefix = "GAA"; +option php_namespace = "Google\\Ads\\GoogleAds\\V9\\Services"; +option ruby_package = "Google::Ads::GoogleAds::V9::Services"; + +// Proto file describing the Webpage View service. + +// Service to manage webpage views. +service WebpageViewService { + option (google.api.default_host) = "googleads.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/adwords"; + + // Returns the requested webpage view in full detail. + rpc GetWebpageView(GetWebpageViewRequest) returns (google.ads.googleads.v9.resources.WebpageView) { + option (google.api.http) = { + get: "/v9/{resource_name=customers/*/webpageViews/*}" + }; + option (google.api.method_signature) = "resource_name"; + } +} + +// Request message for [WebpageViewService.GetWebpageView][google.ads.googleads.v9.services.WebpageViewService.GetWebpageView]. +message GetWebpageViewRequest { + // Required. The resource name of the webpage view to fetch. + string resource_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "googleads.googleapis.com/WebpageView" + } + ]; +} diff --git a/google/analytics/admin/BUILD.bazel b/google/analytics/admin/BUILD.bazel new file mode 100644 index 000000000..7d08fc58a --- /dev/null +++ b/google/analytics/admin/BUILD.bazel @@ -0,0 +1,39 @@ +# This build file includes a target for the Ruby wrapper library for +# google-analytics-admin. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for analyticsadmin. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1alpha in this case. +ruby_cloud_gapic_library( + name = "analyticsadmin_ruby_wrapper", + srcs = ["//google/analytics/admin/v1alpha:admin_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-analytics-admin", + "ruby-cloud-env-prefix=ANALYTICS_ADMIN", + "ruby-cloud-wrapper-of=v1alpha:0.0", + "ruby-cloud-api-id=analyticsadmin.googleapis.com", + "ruby-cloud-api-shortname=analyticsadmin", + ], + ruby_cloud_description = "The Analytics Admin API allows for programmatic access to the Google Analytics App+Web configuration data. You can use the Google Analytics Admin API to manage accounts and App+Web properties.", + ruby_cloud_title = "Google Analytics Admin", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-analytics-admin-ruby", + deps = [ + ":analyticsadmin_ruby_wrapper", + ], +) diff --git a/google/analytics/admin/v1alpha/BUILD.bazel b/google/analytics/admin/v1alpha/BUILD.bazel index 7d5adec34..34951f97c 100644 --- a/google/analytics/admin/v1alpha/BUILD.bazel +++ b/google/analytics/admin/v1alpha/BUILD.bazel @@ -171,14 +171,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/analytics/admin/v1alpha/analytics_admin.proto b/google/analytics/admin/v1alpha/analytics_admin.proto index 14ba713d9..ff367e3ff 100644 --- a/google/analytics/admin/v1alpha/analytics_admin.proto +++ b/google/analytics/admin/v1alpha/analytics_admin.proto @@ -405,27 +405,6 @@ service AnalyticsAdminService { option (google.api.method_signature) = "parent"; } - // Returns the singleton enhanced measurement settings for this web stream. - // Note that the stream must enable enhanced measurement for these settings to - // take effect. - rpc GetEnhancedMeasurementSettings(GetEnhancedMeasurementSettingsRequest) returns (EnhancedMeasurementSettings) { - option (google.api.http) = { - get: "/v1alpha/{name=properties/*/webDataStreams/*/enhancedMeasurementSettings}" - }; - option (google.api.method_signature) = "name"; - } - - // Updates the singleton enhanced measurement settings for this web stream. - // Note that the stream must enable enhanced measurement for these settings to - // take effect. - rpc UpdateEnhancedMeasurementSettings(UpdateEnhancedMeasurementSettingsRequest) returns (EnhancedMeasurementSettings) { - option (google.api.http) = { - patch: "/v1alpha/{enhanced_measurement_settings.name=properties/*/webDataStreams/*/enhancedMeasurementSettings}" - body: "enhanced_measurement_settings" - }; - option (google.api.method_signature) = "enhanced_measurement_settings,update_mask"; - } - // Creates a FirebaseLink. // // Properties can have at most one FirebaseLink. @@ -437,15 +416,6 @@ service AnalyticsAdminService { option (google.api.method_signature) = "parent,firebase_link"; } - // Updates a FirebaseLink on a property - rpc UpdateFirebaseLink(UpdateFirebaseLinkRequest) returns (FirebaseLink) { - option (google.api.http) = { - patch: "/v1alpha/{firebase_link.name=properties/*/firebaseLinks/*}" - body: "firebase_link" - }; - option (google.api.method_signature) = "firebase_link,update_mask"; - } - // Deletes a FirebaseLink on a property rpc DeleteFirebaseLink(DeleteFirebaseLinkRequest) returns (google.protobuf.Empty) { option (google.api.http) = { @@ -592,6 +562,17 @@ service AnalyticsAdminService { option (google.api.method_signature) = "measurement_protocol_secret,update_mask"; } + // Acknowledges the terms of user data collection for the specified property. + // + // This acknowledgement must be completed (either in the Google Analytics UI + // or via this API) before MeasurementProtocolSecret resources may be created. + rpc AcknowledgeUserDataCollection(AcknowledgeUserDataCollectionRequest) returns (AcknowledgeUserDataCollectionResponse) { + option (google.api.http) = { + post: "/v1alpha/{property=properties/*}:acknowledgeUserDataCollection" + body: "*" + }; + } + // Searches through all changes to an account or its children given the // specified set of filters. rpc SearchChangeHistoryEvents(SearchChangeHistoryEventsRequest) returns (SearchChangeHistoryEventsResponse) { @@ -653,6 +634,108 @@ service AnalyticsAdminService { option (google.api.method_signature) = "parent"; } + // Look up a single DisplayVideo360AdvertiserLink + rpc GetDisplayVideo360AdvertiserLink(GetDisplayVideo360AdvertiserLinkRequest) returns (DisplayVideo360AdvertiserLink) { + option (google.api.http) = { + get: "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinks/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists all DisplayVideo360AdvertiserLinks on a property. + rpc ListDisplayVideo360AdvertiserLinks(ListDisplayVideo360AdvertiserLinksRequest) returns (ListDisplayVideo360AdvertiserLinksResponse) { + option (google.api.http) = { + get: "/v1alpha/{parent=properties/*}/displayVideo360AdvertiserLinks" + }; + option (google.api.method_signature) = "parent"; + } + + // Creates a DisplayVideo360AdvertiserLink. + // This can only be utilized by users who have proper authorization both on + // the Google Analytics property and on the Display & Video 360 advertiser. + // Users who do not have access to the Display & Video 360 advertiser should + // instead seek to create a DisplayVideo360LinkProposal. + rpc CreateDisplayVideo360AdvertiserLink(CreateDisplayVideo360AdvertiserLinkRequest) returns (DisplayVideo360AdvertiserLink) { + option (google.api.http) = { + post: "/v1alpha/{parent=properties/*}/displayVideo360AdvertiserLinks" + body: "display_video_360_advertiser_link" + }; + option (google.api.method_signature) = "parent,display_video_360_advertiser_link"; + } + + // Deletes a DisplayVideo360AdvertiserLink on a property. + rpc DeleteDisplayVideo360AdvertiserLink(DeleteDisplayVideo360AdvertiserLinkRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinks/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Updates a DisplayVideo360AdvertiserLink on a property. + rpc UpdateDisplayVideo360AdvertiserLink(UpdateDisplayVideo360AdvertiserLinkRequest) returns (DisplayVideo360AdvertiserLink) { + option (google.api.http) = { + patch: "/v1alpha/{display_video_360_advertiser_link.name=properties/*/displayVideo360AdvertiserLinks/*}" + body: "display_video_360_advertiser_link" + }; + option (google.api.method_signature) = "display_video_360_advertiser_link,update_mask"; + } + + // Lookup for a single DisplayVideo360AdvertiserLinkProposal. + rpc GetDisplayVideo360AdvertiserLinkProposal(GetDisplayVideo360AdvertiserLinkProposalRequest) returns (DisplayVideo360AdvertiserLinkProposal) { + option (google.api.http) = { + get: "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinkProposals/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists DisplayVideo360AdvertiserLinkProposals on a property. + rpc ListDisplayVideo360AdvertiserLinkProposals(ListDisplayVideo360AdvertiserLinkProposalsRequest) returns (ListDisplayVideo360AdvertiserLinkProposalsResponse) { + option (google.api.http) = { + get: "/v1alpha/{parent=properties/*}/displayVideo360AdvertiserLinkProposals" + }; + option (google.api.method_signature) = "parent"; + } + + // Creates a DisplayVideo360AdvertiserLinkProposal. + rpc CreateDisplayVideo360AdvertiserLinkProposal(CreateDisplayVideo360AdvertiserLinkProposalRequest) returns (DisplayVideo360AdvertiserLinkProposal) { + option (google.api.http) = { + post: "/v1alpha/{parent=properties/*}/displayVideo360AdvertiserLinkProposals" + body: "display_video_360_advertiser_link_proposal" + }; + option (google.api.method_signature) = "parent,display_video_360_advertiser_link_proposal"; + } + + // Deletes a DisplayVideo360AdvertiserLinkProposal on a property. + // This can only be used on cancelled proposals. + rpc DeleteDisplayVideo360AdvertiserLinkProposal(DeleteDisplayVideo360AdvertiserLinkProposalRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinkProposals/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Approves a DisplayVideo360AdvertiserLinkProposal. + // The DisplayVideo360AdvertiserLinkProposal will be deleted and a new + // DisplayVideo360AdvertiserLink will be created. + rpc ApproveDisplayVideo360AdvertiserLinkProposal(ApproveDisplayVideo360AdvertiserLinkProposalRequest) returns (ApproveDisplayVideo360AdvertiserLinkProposalResponse) { + option (google.api.http) = { + post: "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinkProposals/*}:approve" + body: "*" + }; + } + + // Cancels a DisplayVideo360AdvertiserLinkProposal. + // Cancelling can mean either: + // - Declining a proposal initiated from Display & Video 360 + // - Withdrawing a proposal initiated from Google Analytics + // After being cancelled, a proposal will eventually be deleted automatically. + rpc CancelDisplayVideo360AdvertiserLinkProposal(CancelDisplayVideo360AdvertiserLinkProposalRequest) returns (DisplayVideo360AdvertiserLinkProposal) { + option (google.api.http) = { + post: "/v1alpha/{name=properties/*/displayVideo360AdvertiserLinkProposals/*}:cancel" + body: "*" + }; + } + // Creates a CustomDimension. rpc CreateCustomDimension(CreateCustomDimensionRequest) returns (CustomDimension) { option (google.api.http) = { @@ -738,6 +821,65 @@ service AnalyticsAdminService { }; option (google.api.method_signature) = "name"; } + + // Returns the singleton data retention settings for this property. + rpc GetDataRetentionSettings(GetDataRetentionSettingsRequest) returns (DataRetentionSettings) { + option (google.api.http) = { + get: "/v1alpha/{name=properties/*/dataRetentionSettings}" + }; + option (google.api.method_signature) = "name"; + } + + // Updates the singleton data retention settings for this property. + rpc UpdateDataRetentionSettings(UpdateDataRetentionSettingsRequest) returns (DataRetentionSettings) { + option (google.api.http) = { + patch: "/v1alpha/{data_retention_settings.name=properties/*/dataRetentionSettings}" + body: "data_retention_settings" + }; + option (google.api.method_signature) = "data_retention_settings,update_mask"; + } + + // Creates a DataStream. + rpc CreateDataStream(CreateDataStreamRequest) returns (DataStream) { + option (google.api.http) = { + post: "/v1alpha/{parent=properties/*}/dataStreams" + body: "data_stream" + }; + option (google.api.method_signature) = "parent,data_stream"; + } + + // Deletes a DataStream on a property. + rpc DeleteDataStream(DeleteDataStreamRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1alpha/{name=properties/*/dataStreams/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Updates a DataStream on a property. + rpc UpdateDataStream(UpdateDataStreamRequest) returns (DataStream) { + option (google.api.http) = { + patch: "/v1alpha/{data_stream.name=properties/*/dataStreams/*}" + body: "data_stream" + }; + option (google.api.method_signature) = "data_stream,update_mask"; + } + + // Lists DataStreams on a property. + rpc ListDataStreams(ListDataStreamsRequest) returns (ListDataStreamsResponse) { + option (google.api.http) = { + get: "/v1alpha/{parent=properties/*}/dataStreams" + }; + option (google.api.method_signature) = "parent"; + } + + // Lookup for a single DataStream. + rpc GetDataStream(GetDataStreamRequest) returns (DataStream) { + option (google.api.http) = { + get: "/v1alpha/{name=properties/*/dataStreams/*}" + }; + option (google.api.method_signature) = "name"; + } } // Request message for GetAccount RPC. @@ -1369,32 +1511,6 @@ message ListAndroidAppDataStreamsResponse { string next_page_token = 2; } -// Request message for GetEnhancedMeasurementSettings RPC. -message GetEnhancedMeasurementSettingsRequest { - // Required. The name of the settings to lookup. - // Format: - // properties/{property_id}/webDataStreams/{stream_id}/enhancedMeasurementSettings - // Example: "properties/1000/webDataStreams/2000/enhancedMeasurementSettings" - string name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "analyticsadmin.googleapis.com/EnhancedMeasurementSettings" - } - ]; -} - -// Request message for UpdateEnhancedMeasurementSettings RPC. -message UpdateEnhancedMeasurementSettingsRequest { - // Required. The settings to update. - // The `name` field is used to identify the settings to be updated. - EnhancedMeasurementSettings enhanced_measurement_settings = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of fields to be updated. Field names must be in snake case - // (e.g., "field_to_update"). Omitted fields will not be updated. To replace - // the entire entity, use one path with the string "*" to match all fields. - google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; -} - // Request message for CreateFirebaseLink RPC message CreateFirebaseLinkRequest { // Required. Format: properties/{property_id} @@ -1410,17 +1526,6 @@ message CreateFirebaseLinkRequest { FirebaseLink firebase_link = 2 [(google.api.field_behavior) = REQUIRED]; } -// Request message for UpdateFirebaseLink RPC -message UpdateFirebaseLinkRequest { - // Required. The Firebase link to update. - FirebaseLink firebase_link = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The list of fields to be updated. Field names must be in snake case - // (e.g., "field_to_update"). Omitted fields will not be updated. To replace - // the entire entity, use one path with the string "*" to match all fields. - google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; -} - // Request message for DeleteFirebaseLink RPC message DeleteFirebaseLinkRequest { // Required. Format: properties/{property_id}/firebaseLinks/{firebase_link_id} @@ -1590,6 +1695,32 @@ message ListAccountSummariesResponse { string next_page_token = 2; } +// Request message for AcknowledgeUserDataCollection RPC. +message AcknowledgeUserDataCollectionRequest { + // Required. The property for which to acknowledge user data collection. + string property = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "analyticsadmin.googleapis.com/Property" + } + ]; + + // Required. An acknowledgement that the caller of this method understands the terms + // of user data collection. + // + // This field must contain the exact value: + // "I acknowledge that I have the necessary privacy disclosures and rights + // from my end users for the collection and processing of their data, + // including the association of such data with the visitation information + // Google Analytics collects from my site and/or app property." + string acknowledgement = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for AcknowledgeUserDataCollection RPC. +message AcknowledgeUserDataCollectionResponse { + +} + // Request message for SearchChangeHistoryEvents RPC. message SearchChangeHistoryEventsRequest { // Required. The account resource for which to return change history resources. @@ -1839,6 +1970,193 @@ message ListConversionEventsResponse { string next_page_token = 2; } +// Request message for GetDisplayVideo360AdvertiserLink RPC. +message GetDisplayVideo360AdvertiserLinkRequest { + // Required. The name of the DisplayVideo360AdvertiserLink to get. + // Example format: properties/1234/displayVideo360AdvertiserLink/5678 + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLink" + } + ]; +} + +// Request message for ListDisplayVideo360AdvertiserLinks RPC. +message ListDisplayVideo360AdvertiserLinksRequest { + // Required. Example format: properties/1234 + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLink" + } + ]; + + // The maximum number of resources to return. + // If unspecified, at most 50 resources will be returned. + // The maximum value is 200 (higher values will be coerced to the maximum). + int32 page_size = 2; + + // A page token, received from a previous `ListDisplayVideo360AdvertiserLinks` + // call. Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // `ListDisplayVideo360AdvertiserLinks` must match the call that provided the + // page token. + string page_token = 3; +} + +// Response message for ListDisplayVideo360AdvertiserLinks RPC. +message ListDisplayVideo360AdvertiserLinksResponse { + // List of DisplayVideo360AdvertiserLinks. + repeated DisplayVideo360AdvertiserLink display_video_360_advertiser_links = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for CreateDisplayVideo360AdvertiserLink RPC. +message CreateDisplayVideo360AdvertiserLinkRequest { + // Required. Example format: properties/1234 + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLink" + } + ]; + + // Required. The DisplayVideo360AdvertiserLink to create. + DisplayVideo360AdvertiserLink display_video_360_advertiser_link = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for DeleteDisplayVideo360AdvertiserLink RPC. +message DeleteDisplayVideo360AdvertiserLinkRequest { + // Required. The name of the DisplayVideo360AdvertiserLink to delete. + // Example format: properties/1234/displayVideo360AdvertiserLinks/5678 + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLink" + } + ]; +} + +// Request message for UpdateDisplayVideo360AdvertiserLink RPC. +message UpdateDisplayVideo360AdvertiserLinkRequest { + // The DisplayVideo360AdvertiserLink to update + DisplayVideo360AdvertiserLink display_video_360_advertiser_link = 1; + + // Required. The list of fields to be updated. Omitted fields will not be updated. + // To replace the entire entity, use one path with the string "*" to match + // all fields. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for GetDisplayVideo360AdvertiserLinkProposal RPC. +message GetDisplayVideo360AdvertiserLinkProposalRequest { + // Required. The name of the DisplayVideo360AdvertiserLinkProposal to get. + // Example format: properties/1234/displayVideo360AdvertiserLinkProposals/5678 + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLinkProposal" + } + ]; +} + +// Request message for ListDisplayVideo360AdvertiserLinkProposals RPC. +message ListDisplayVideo360AdvertiserLinkProposalsRequest { + // Required. Example format: properties/1234 + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLinkProposal" + } + ]; + + // The maximum number of resources to return. + // If unspecified, at most 50 resources will be returned. + // The maximum value is 200 (higher values will be coerced to the maximum). + int32 page_size = 2; + + // A page token, received from a previous + // `ListDisplayVideo360AdvertiserLinkProposals` call. Provide this to retrieve + // the subsequent page. + // + // When paginating, all other parameters provided to + // `ListDisplayVideo360AdvertiserLinkProposals` must match the call that + // provided the page token. + string page_token = 3; +} + +// Response message for ListDisplayVideo360AdvertiserLinkProposals RPC. +message ListDisplayVideo360AdvertiserLinkProposalsResponse { + // List of DisplayVideo360AdvertiserLinkProposals. + repeated DisplayVideo360AdvertiserLinkProposal display_video_360_advertiser_link_proposals = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for CreateDisplayVideo360AdvertiserLinkProposal RPC. +message CreateDisplayVideo360AdvertiserLinkProposalRequest { + // Required. Example format: properties/1234 + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLinkProposal" + } + ]; + + // Required. The DisplayVideo360AdvertiserLinkProposal to create. + DisplayVideo360AdvertiserLinkProposal display_video_360_advertiser_link_proposal = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for DeleteDisplayVideo360AdvertiserLinkProposal RPC. +message DeleteDisplayVideo360AdvertiserLinkProposalRequest { + // Required. The name of the DisplayVideo360AdvertiserLinkProposal to delete. + // Example format: properties/1234/displayVideo360AdvertiserLinkProposals/5678 + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLinkProposal" + } + ]; +} + +// Request message for ApproveDisplayVideo360AdvertiserLinkProposal RPC. +message ApproveDisplayVideo360AdvertiserLinkProposalRequest { + // Required. The name of the DisplayVideo360AdvertiserLinkProposal to approve. + // Example format: properties/1234/displayVideo360AdvertiserLinkProposals/5678 + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLinkProposal" + } + ]; +} + +// Response message for ApproveDisplayVideo360AdvertiserLinkProposal RPC. +message ApproveDisplayVideo360AdvertiserLinkProposalResponse { + // The DisplayVideo360AdvertiserLink created as a result of approving the + // proposal. + DisplayVideo360AdvertiserLink display_video_360_advertiser_link = 1; +} + +// Request message for CancelDisplayVideo360AdvertiserLinkProposal RPC. +message CancelDisplayVideo360AdvertiserLinkProposalRequest { + // Required. The name of the DisplayVideo360AdvertiserLinkProposal to cancel. + // Example format: properties/1234/displayVideo360AdvertiserLinkProposals/5678 + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLinkProposal" + } + ]; +} + // Request message for CreateCustomDimension RPC. message CreateCustomDimensionRequest { // Required. Example format: properties/1234 @@ -2002,3 +2320,111 @@ message GetCustomMetricRequest { } ]; } + +// Request message for GetDataRetentionSettings RPC. +message GetDataRetentionSettingsRequest { + // Required. The name of the settings to lookup. + // Format: + // properties/{property}/dataRetentionSettings + // Example: "properties/1000/dataRetentionSettings" + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "analyticsadmin.googleapis.com/DataRetentionSettings" + } + ]; +} + +// Request message for UpdateDataRetentionSettings RPC. +message UpdateDataRetentionSettingsRequest { + // Required. The settings to update. + // The `name` field is used to identify the settings to be updated. + DataRetentionSettings data_retention_settings = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of fields to be updated. Field names must be in snake case + // (e.g., "field_to_update"). Omitted fields will not be updated. To replace + // the entire entity, use one path with the string "*" to match all fields. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for CreateDataStream RPC. +message CreateDataStreamRequest { + // Required. Example format: properties/1234 + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "analyticsadmin.googleapis.com/DataStream" + } + ]; + + // Required. The DataStream to create. + DataStream data_stream = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for DeleteDataStream RPC. +message DeleteDataStreamRequest { + // Required. The name of the DataStream to delete. + // Example format: properties/1234/dataStreams/5678 + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "analyticsadmin.googleapis.com/DataStream" + } + ]; +} + +// Request message for UpdateDataStream RPC. +message UpdateDataStreamRequest { + // The DataStream to update + DataStream data_stream = 1; + + // Required. The list of fields to be updated. Omitted fields will not be updated. + // To replace the entire entity, use one path with the string "*" to match + // all fields. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for ListDataStreams RPC. +message ListDataStreamsRequest { + // Required. Example format: properties/1234 + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "analyticsadmin.googleapis.com/DataStream" + } + ]; + + // The maximum number of resources to return. + // If unspecified, at most 50 resources will be returned. + // The maximum value is 200 (higher values will be coerced to the maximum). + int32 page_size = 2; + + // A page token, received from a previous `ListDataStreams` call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to `ListDataStreams` must + // match the call that provided the page token. + string page_token = 3; +} + +// Response message for ListDataStreams RPC. +message ListDataStreamsResponse { + // List of DataStreams. + repeated DataStream data_streams = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for GetDataStream RPC. +message GetDataStreamRequest { + // Required. The name of the DataStream to get. + // Example format: properties/1234/dataStreams/5678 + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "analyticsadmin.googleapis.com/DataStream" + } + ]; +} diff --git a/google/analytics/admin/v1alpha/analyticsadmin_v1alpha.yaml b/google/analytics/admin/v1alpha/analyticsadmin_v1alpha.yaml index c604b15fb..20cb77def 100644 --- a/google/analytics/admin/v1alpha/analyticsadmin_v1alpha.yaml +++ b/google/analytics/admin/v1alpha/analyticsadmin_v1alpha.yaml @@ -67,12 +67,27 @@ authentication: canonical_scopes: |- https://www.googleapis.com/auth/analytics.edit, https://www.googleapis.com/auth/analytics.readonly + - selector: google.analytics.admin.v1alpha.AnalyticsAdminService.GetDataRetentionSettings + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/analytics.edit, + https://www.googleapis.com/auth/analytics.readonly - selector: google.analytics.admin.v1alpha.AnalyticsAdminService.GetDataSharingSettings oauth: canonical_scopes: |- https://www.googleapis.com/auth/analytics.edit, https://www.googleapis.com/auth/analytics.readonly - - selector: google.analytics.admin.v1alpha.AnalyticsAdminService.GetEnhancedMeasurementSettings + - selector: google.analytics.admin.v1alpha.AnalyticsAdminService.GetDataStream + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/analytics.edit, + https://www.googleapis.com/auth/analytics.readonly + - selector: google.analytics.admin.v1alpha.AnalyticsAdminService.GetDisplayVideo360AdvertiserLink + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/analytics.edit, + https://www.googleapis.com/auth/analytics.readonly + - selector: google.analytics.admin.v1alpha.AnalyticsAdminService.GetDisplayVideo360AdvertiserLinkProposal oauth: canonical_scopes: |- https://www.googleapis.com/auth/analytics.edit, @@ -142,6 +157,21 @@ authentication: canonical_scopes: |- https://www.googleapis.com/auth/analytics.edit, https://www.googleapis.com/auth/analytics.readonly + - selector: google.analytics.admin.v1alpha.AnalyticsAdminService.ListDataStreams + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/analytics.edit, + https://www.googleapis.com/auth/analytics.readonly + - selector: google.analytics.admin.v1alpha.AnalyticsAdminService.ListDisplayVideo360AdvertiserLinkProposals + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/analytics.edit, + https://www.googleapis.com/auth/analytics.readonly + - selector: google.analytics.admin.v1alpha.AnalyticsAdminService.ListDisplayVideo360AdvertiserLinks + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/analytics.edit, + https://www.googleapis.com/auth/analytics.readonly - selector: google.analytics.admin.v1alpha.AnalyticsAdminService.ListFirebaseLinks oauth: canonical_scopes: |- diff --git a/google/analytics/admin/v1alpha/resources.proto b/google/analytics/admin/v1alpha/resources.proto index 7b6af2302..4820ec8c0 100644 --- a/google/analytics/admin/v1alpha/resources.proto +++ b/google/analytics/admin/v1alpha/resources.proto @@ -26,27 +26,6 @@ option java_multiple_files = true; option java_outer_classname = "ResourcesProto"; option java_package = "com.google.analytics.admin.v1alpha"; -// Maximum access settings that Firebase user receive on the linked Analytics -// property. -enum MaximumUserAccess { - // Unspecified maximum user access. - MAXIMUM_USER_ACCESS_UNSPECIFIED = 0; - - // Firebase users have no access to the Analytics property. - NO_ACCESS = 1; - - // Firebase users have Read & Analyze access to the Analytics property. - READ_AND_ANALYZE = 2; - - // Firebase users have edit access to the Analytics property, but may not - // manage the Firebase link. - EDITOR_WITHOUT_LINK_MANAGEMENT = 3; - - // Firebase users have edit access to the Analytics property and may manage - // the Firebase link. - EDITOR_INCLUDING_LINK_MANAGEMENT = 4; -} - // The category selected for this property, used for industry benchmarking. enum IndustryCategory { // Industry category unspecified @@ -131,6 +110,18 @@ enum IndustryCategory { SHOPPING = 26; } +// Various levels of service for Google Analytics. +enum ServiceLevel { + // Service level not specified or invalid. + SERVICE_LEVEL_UNSPECIFIED = 0; + + // The standard version of Google Analytics. + GOOGLE_ANALYTICS_STANDARD = 1; + + // The paid, premium version of Google Analytics. + GOOGLE_ANALYTICS_360 = 2; +} + // Different kinds of actors that can make changes to Google Analytics // resources. enum ActorType { @@ -202,6 +193,15 @@ enum ChangeHistoryResourceType { // CustomMetric resource CUSTOM_METRIC = 12; + + // DataRetentionSettings resource + DATA_RETENTION_SETTINGS = 13; + + // DisplayVideo360AdvertiserLink resource + DISPLAY_VIDEO_360_ADVERTISER_LINK = 14; + + // DisplayVideo360AdvertiserLinkProposal resource + DISPLAY_VIDEO_360_ADVERTISER_LINK_PROPOSAL = 15; } // Status of the Google Signals settings (i.e., whether this feature has been @@ -233,6 +233,51 @@ enum GoogleSignalsConsent { GOOGLE_SIGNALS_CONSENT_NOT_CONSENTED = 1; } +// An indication of which product the user initiated a link proposal from. +enum LinkProposalInitiatingProduct { + // Unspecified product. + LINK_PROPOSAL_INITIATING_PRODUCT_UNSPECIFIED = 0; + + // This proposal was created by a user from Google Analytics. + GOOGLE_ANALYTICS = 1; + + // This proposal was created by a user from a linked product (not Google + // Analytics). + LINKED_PRODUCT = 2; +} + +// The state of a link proposal resource. +enum LinkProposalState { + // Unspecified state + LINK_PROPOSAL_STATE_UNSPECIFIED = 0; + + // This proposal is awaiting review from a Google Analytics user. This + // proposal will automatically expire after some time. + AWAITING_REVIEW_FROM_GOOGLE_ANALYTICS = 1; + + // This proposal is awaiting review from a user of a linked product. This + // proposal will automatically expire after some time. + AWAITING_REVIEW_FROM_LINKED_PRODUCT = 2; + + // This proposal has been withdrawn by an admin on the initiating product. + // This proposal will be automatically deleted after some time. + WITHDRAWN = 3; + + // This proposal has been declined by an admin on the receiving product. This + // proposal will be automatically deleted after some time. + DECLINED = 4; + + // This proposal expired due to lack of response from an admin on the + // receiving product. This proposal will be automatically deleted after some + // time. + EXPIRED = 5; + + // This proposal has become obsolete because a link was directly created to + // the same external product resource that this proposal specifies. This + // proposal will be automatically deleted after some time. + OBSOLETE = 6; +} + // A resource message representing a Google Analytics account. message Account { option (google.api.resource) = { @@ -314,6 +359,9 @@ message Property { // Examples: "USD", "EUR", "JPY" string currency_code = 8; + // Output only. The Google Analytics service level that applies to this property. + ServiceLevel service_level = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. If set, the time at which this property was trashed. If not set, then this // property is not currently in the trash can. google.protobuf.Timestamp delete_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -322,6 +370,16 @@ message Property { // deleted. If not set, then this property is not currently in the trash can // and is not slated to be deleted. google.protobuf.Timestamp expire_time = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The resource name of the parent account + // Format: accounts/{account_id} + // Example: "accounts/123" + string account = 13 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "analyticsadmin.googleapis.com/Account" + } + ]; } // A resource message representing a Google Analytics Android app stream. @@ -423,10 +481,113 @@ message WebDataStream { // Required. Human-readable display name for the Data Stream. // - // The max allowed display name length is 100 UTF-16 code units. + // The max allowed display name length is 255 UTF-16 code units. string display_name = 7 [(google.api.field_behavior) = REQUIRED]; } +// A resource message representing a data stream. +message DataStream { + option (google.api.resource) = { + type: "analyticsadmin.googleapis.com/DataStream" + pattern: "properties/{property}/dataStreams/{data_stream}" + }; + + // Data specific to web streams. + message WebStreamData { + // Output only. Analytics "Measurement ID", without the "G-" prefix. + // Example: "G-1A2BCD345E" would just be "1A2BCD345E" + string measurement_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. ID of the corresponding web app in Firebase, if any. + // This ID can change if the web app is deleted and recreated. + string firebase_app_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Domain name of the web app being measured, or empty. + // Example: "http://www.google.com", "https://www.google.com" + string default_uri = 3 [(google.api.field_behavior) = IMMUTABLE]; + } + + // Data specific to Android app streams. + message AndroidAppStreamData { + // Output only. ID of the corresponding Android app in Firebase, if any. + // This ID can change if the Android app is deleted and recreated. + string firebase_app_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The package name for the app being measured. + // Example: "com.example.myandroidapp" + string package_name = 2 [(google.api.field_behavior) = IMMUTABLE]; + } + + // Data specific to iOS app streams. + message IosAppStreamData { + // Output only. ID of the corresponding iOS app in Firebase, if any. + // This ID can change if the iOS app is deleted and recreated. + string firebase_app_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. Immutable. The Apple App Store Bundle ID for the app + // Example: "com.example.myiosapp" + string bundle_id = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.field_behavior) = REQUIRED + ]; + } + + // The type of the data stream. + enum DataStreamType { + // Type unknown or not specified. + DATA_STREAM_TYPE_UNSPECIFIED = 0; + + // Web data stream. + WEB_DATA_STREAM = 1; + + // Android app data stream. + ANDROID_APP_DATA_STREAM = 2; + + // iOS app data stream. + IOS_APP_DATA_STREAM = 3; + } + + // Data for specific data stream types. The message that will be + // set corresponds to the type of this stream. + oneof stream_data { + // Data specific to web streams. Must be populated if type is + // WEB_DATA_STREAM. + WebStreamData web_stream_data = 6; + + // Data specific to Android app streams. Must be populated if type is + // ANDROID_APP_DATA_STREAM. + AndroidAppStreamData android_app_stream_data = 7; + + // Data specific to iOS app streams. Must be populated if type is + // IOS_APP_DATA_STREAM. + IosAppStreamData ios_app_stream_data = 8; + } + + // Output only. Resource name of this Data Stream. + // Format: properties/{property_id}/dataStreams/{stream_id} + // Example: "properties/1000/dataStreams/2000" + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. Immutable. The type of this DataStream resource. + DataStreamType type = 2 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.field_behavior) = REQUIRED + ]; + + // Human-readable display name for the Data Stream. + // + // Required for web data streams. + // + // The max allowed display name length is 255 UTF-16 code units. + string display_name = 3; + + // Output only. Time when this stream was originally created. + google.protobuf.Timestamp create_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Time when stream payload fields were last updated. + google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + // A resource message representing a user's permissions on an Account or // Property resource. message UserLink { @@ -445,10 +606,12 @@ message UserLink { // Roles directly assigned to this user for this account or property. // // Valid values: - // predefinedRoles/read - // predefinedRoles/collaborate - // predefinedRoles/edit - // predefinedRoles/manage-users + // predefinedRoles/viewer + // predefinedRoles/analyst + // predefinedRoles/editor + // predefinedRoles/admin + // predefinedRoles/no-cost-data + // predefinedRoles/no-revenue-data // // Excludes roles that are inherited from a higher-level entity, group, // or organization admin role. @@ -468,7 +631,7 @@ message AuditUserLink { // Roles directly assigned to this user for this entity. // - // Format: predefinedRoles/read + // Format: predefinedRoles/viewer // // Excludes roles that are inherited from an account (if this is for a // property), group, or organization admin role. @@ -477,72 +640,11 @@ message AuditUserLink { // Union of all permissions a user has at this account or property (includes // direct permissions, group-inherited permissions, etc.). // - // Format: predefinedRoles/read + // Format: predefinedRoles/viewer repeated string effective_roles = 4; } -// Singleton resource under a WebDataStream, configuring measurement of -// additional site interactions and content. -message EnhancedMeasurementSettings { - option (google.api.resource) = { - type: "analyticsadmin.googleapis.com/EnhancedMeasurementSettings" - pattern: "properties/{property}/webDataStreams/{web_data_stream}/enhancedMeasurementSettings" - }; - - // Output only. Resource name of this Data Stream. - // Format: - // properties/{property_id}/webDataStreams/{stream_id}/enhancedMeasurementSettings - // Example: "properties/1000/webDataStreams/2000/enhancedMeasurementSettings" - string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Indicates whether Enhanced Measurement Settings will be used to - // automatically measure interactions and content on this web stream. - // - // Changing this value does not affect the settings themselves, but determines - // whether they are respected. - bool stream_enabled = 2; - - // Output only. If enabled, capture a page view event each time a page loads or the - // website changes the browser history state. - bool page_views_enabled = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // If enabled, capture scroll events each time a visitor gets to the bottom of - // a page. - bool scrolls_enabled = 4; - - // If enabled, capture an outbound click event each time a visitor clicks a - // link that leads them away from your domain. - bool outbound_clicks_enabled = 5; - - // If enabled, capture a view search results event each time a visitor - // performs a search on your site (based on a query parameter). - bool site_search_enabled = 7; - - // If enabled, capture video play, progress, and complete events as visitors - // view embedded videos on your site. - bool video_engagement_enabled = 9; - - // If enabled, capture a file download event each time a link is clicked with - // a common document, compressed file, application, video, or audio extension. - bool file_downloads_enabled = 10; - - // Output only. If enabled, capture a page view event each time a page loads. - bool page_loads_enabled = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // If enabled, capture a page view event each time the website changes the - // browser history state. - bool page_changes_enabled = 13; - - // Required. URL query parameters to interpret as site search parameters. - // Max length is 1024 characters. Must not be empty. - string search_query_parameter = 16 [(google.api.field_behavior) = REQUIRED]; - - // Additional URL query parameters. - // Max length is 1024 characters. - string uri_query_parameter = 17; -} - -// A link between an GA4 property and a Firebase project. +// A link between a GA4 property and a Firebase project. message FirebaseLink { option (google.api.resource) = { type: "analyticsadmin.googleapis.com/FirebaseLink" @@ -563,10 +665,6 @@ message FirebaseLink { // Output only. Time when this FirebaseLink was originally created. google.protobuf.Timestamp create_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Maximum user access to the GA4 property allowed to admins of - // the linked Firebase project. - MaximumUserAccess maximum_user_access = 4; } // Read-only resource with the tag for sending data from a website to a @@ -586,7 +684,7 @@ message GlobalSiteTag { string snippet = 2 [(google.api.field_behavior) = IMMUTABLE]; } -// A link between an GA4 property and a Google Ads account. +// A link between a GA4 property and a Google Ads account. message GoogleAdsLink { option (google.api.resource) = { type: "analyticsadmin.googleapis.com/GoogleAdsLink" @@ -610,15 +708,15 @@ message GoogleAdsLink { // If this field is not set on create/update, it will be defaulted to true. google.protobuf.BoolValue ads_personalization_enabled = 5; - // Output only. Email address of the user that created the link. - // An empty string will be returned if the email address can't be retrieved. - string email_address = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. Time when this link was originally created. google.protobuf.Timestamp create_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Time when this link was last updated. google.protobuf.Timestamp update_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Email address of the user that created the link. + // An empty string will be returned if the email address can't be retrieved. + string creator_email_address = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; } // A resource message representing data sharing settings of a Google Analytics @@ -681,7 +779,7 @@ message AccountSummary { repeated PropertySummary property_summaries = 4; } -// A virtual resource representing metadata for an GA4 property. +// A virtual resource representing metadata for a GA4 property. message PropertySummary { // Resource name of property referred to by this property summary // Format: properties/{property_id} @@ -690,7 +788,7 @@ message PropertySummary { type: "analyticsadmin.googleapis.com/Property" }]; - // Display name for the property referred to in this account summary. + // Display name for the property referred to in this property summary. string display_name = 2; } @@ -774,6 +872,14 @@ message ChangeHistoryChange { // A snapshot of a GoogleSignalsSettings resource in change history. GoogleSignalsSettings google_signals_settings = 8; + // A snapshot of a DisplayVideo360AdvertiserLink resource in change + // history. + DisplayVideo360AdvertiserLink display_video_360_advertiser_link = 9; + + // A snapshot of a DisplayVideo360AdvertiserLinkProposal resource in + // change history. + DisplayVideo360AdvertiserLinkProposal display_video_360_advertiser_link_proposal = 10; + // A snapshot of a ConversionEvent resource in change history. ConversionEvent conversion_event = 11; @@ -785,6 +891,9 @@ message ChangeHistoryChange { // A snapshot of a CustomMetric resource in change history. CustomMetric custom_metric = 14; + + // A snapshot of a data retention settings resource in change history. + DataRetentionSettings data_retention_settings = 15; } } @@ -803,6 +912,106 @@ message ChangeHistoryChange { ChangeHistoryResource resource_after_change = 4; } +// A link between a GA4 property and a Display & Video 360 advertiser. +message DisplayVideo360AdvertiserLink { + option (google.api.resource) = { + type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLink" + pattern: "properties/{property}/displayVideo360AdvertiserLinks/{display_video_360_advertiser_link}" + }; + + // Output only. The resource name for this DisplayVideo360AdvertiserLink resource. + // Format: properties/{propertyId}/displayVideo360AdvertiserLinks/{linkId} + // + // Note: linkId is not the Display & Video 360 Advertiser ID + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The Display & Video 360 Advertiser's advertiser ID. + string advertiser_id = 2 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The display name of the Display & Video 360 Advertiser. + string advertiser_display_name = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Enables personalized advertising features with this integration. + // If this field is not set on create/update, it will be defaulted to true. + google.protobuf.BoolValue ads_personalization_enabled = 4; + + // Immutable. Enables the import of campaign data from Display & Video 360 into the GA4 + // property. After link creation, this can only be updated from the Display & + // Video 360 product. + // If this field is not set on create, it will be defaulted to true. + google.protobuf.BoolValue campaign_data_sharing_enabled = 5 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Enables the import of cost data from Display & Video 360 into the GA4 + // property. This can only be enabled if campaign_data_sharing_enabled is + // enabled. After link creation, this can only be updated from the Display & + // Video 360 product. + // If this field is not set on create, it will be defaulted to true. + google.protobuf.BoolValue cost_data_sharing_enabled = 6 [(google.api.field_behavior) = IMMUTABLE]; +} + +// A proposal for a link between a GA4 property and a Display & Video 360 +// advertiser. +// +// A proposal is converted to a DisplayVideo360AdvertiserLink once approved. +// Google Analytics admins approve inbound proposals while Display & Video 360 +// admins approve outbound proposals. +message DisplayVideo360AdvertiserLinkProposal { + option (google.api.resource) = { + type: "analyticsadmin.googleapis.com/DisplayVideo360AdvertiserLinkProposal" + pattern: "properties/{property}/displayVideo360AdvertiserLinkProposals/{display_video_360_advertiser_link_proposal}" + }; + + // Output only. The resource name for this DisplayVideo360AdvertiserLinkProposal resource. + // Format: + // properties/{propertyId}/displayVideo360AdvertiserLinkProposals/{proposalId} + // + // Note: proposalId is not the Display & Video 360 Advertiser ID + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. The Display & Video 360 Advertiser's advertiser ID. + string advertiser_id = 2 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. The status information for this link proposal. + LinkProposalStatusDetails link_proposal_status_details = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The display name of the Display & Video Advertiser. + // Only populated for proposals that originated from Display & Video 360. + string advertiser_display_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Input only. On a proposal being sent to Display & Video 360, this field must be set to + // the email address of an admin on the target advertiser. This is used to + // verify that the Google Analytics admin is aware of at least one admin on + // the Display & Video 360 Advertiser. This does not restrict approval of the + // proposal to a single user. Any admin on the Display & Video 360 Advertiser + // may approve the proposal. + string validation_email = 5 [(google.api.field_behavior) = INPUT_ONLY]; + + // Immutable. Enables personalized advertising features with this integration. + // If this field is not set on create, it will be defaulted to true. + google.protobuf.BoolValue ads_personalization_enabled = 6 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Enables the import of campaign data from Display & Video 360. + // If this field is not set on create, it will be defaulted to true. + google.protobuf.BoolValue campaign_data_sharing_enabled = 7 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. Enables the import of cost data from Display & Video 360. + // This can only be enabled if campaign_data_sharing_enabled is enabled. + // If this field is not set on create, it will be defaulted to true. + google.protobuf.BoolValue cost_data_sharing_enabled = 8 [(google.api.field_behavior) = IMMUTABLE]; +} + +// Status information for a link proposal. +message LinkProposalStatusDetails { + // Output only. The source of this proposal. + LinkProposalInitiatingProduct link_proposal_initiating_product = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The email address of the user that proposed this linkage. + string requestor_email = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The state of this proposal. + LinkProposalState link_proposal_state = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + // A conversion event in a Google Analytics property. message ConversionEvent { option (google.api.resource) = { @@ -822,7 +1031,15 @@ message ConversionEvent { google.protobuf.Timestamp create_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. If set, this event can currently be deleted via DeleteConversionEvent. - bool is_deletable = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + bool deletable = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. If set to true, this conversion event refers to a custom event. If set to + // false, this conversion event refers to a default event in GA. Default + // events typically have special meaning in GA. Default events are usually + // created for you by the GA system, but in some cases can be created by + // property admins. Custom events count towards the maximum number of + // custom conversion events that may be created per property. + bool custom = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Settings values for Google Signals. This is a singleton resource. @@ -986,11 +1203,8 @@ message CustomMetric { // Max length of 150 characters. string description = 4 [(google.api.field_behavior) = OPTIONAL]; - // Required. Immutable. The type for the custom metric's value. - MeasurementUnit measurement_unit = 5 [ - (google.api.field_behavior) = REQUIRED, - (google.api.field_behavior) = IMMUTABLE - ]; + // Required. The type for the custom metric's value. + MeasurementUnit measurement_unit = 5 [(google.api.field_behavior) = REQUIRED]; // Required. Immutable. The scope of this custom metric. MetricScope scope = 6 [ @@ -998,3 +1212,46 @@ message CustomMetric { (google.api.field_behavior) = IMMUTABLE ]; } + +// Settings values for data retention. This is a singleton resource. +message DataRetentionSettings { + option (google.api.resource) = { + type: "analyticsadmin.googleapis.com/DataRetentionSettings" + pattern: "properties/{property}/dataRetentionSettings" + }; + + // Valid values for the data retention duration. + enum RetentionDuration { + // Data retention time duration is not specified. + RETENTION_DURATION_UNSPECIFIED = 0; + + // The data retention time duration is 2 months. + TWO_MONTHS = 1; + + // The data retention time duration is 14 months. + FOURTEEN_MONTHS = 3; + + // The data retention time duration is 26 months. + // Available to 360 properties only. + TWENTY_SIX_MONTHS = 4; + + // The data retention time duration is 38 months. + // Available to 360 properties only. + THIRTY_EIGHT_MONTHS = 5; + + // The data retention time duration is 50 months. + // Available to 360 properties only. + FIFTY_MONTHS = 6; + } + + // Output only. Resource name for this DataRetentionSetting resource. + // Format: properties/{property}/dataRetentionSettings + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The length of time that event-level data is retained. + RetentionDuration event_data_retention = 2; + + // If true, reset the retention period for the user identifier with every + // event from that user. + bool reset_user_data_on_new_activity = 3; +} diff --git a/google/analytics/data/BUILD.bazel b/google/analytics/data/BUILD.bazel new file mode 100644 index 000000000..32f9d0452 --- /dev/null +++ b/google/analytics/data/BUILD.bazel @@ -0,0 +1,41 @@ +# This build file includes a target for the Ruby wrapper library for +# google-analytics-data. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for analyticsdata. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1beta in this case. +ruby_cloud_gapic_library( + name = "analyticsdata_ruby_wrapper", + srcs = ["//google/analytics/data/v1beta:data_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-analytics-data", + "ruby-cloud-env-prefix=ANALYTICS_DATA", + "ruby-cloud-wrapper-of=v1beta:0.0;v1alpha:0.0", + "ruby-cloud-product-url=https://developers.google.com/analytics/devguides/reporting/data/v1", + "ruby-cloud-api-id=analyticsdata.googleapis.com", + "ruby-cloud-api-shortname=analyticsdata", + "ruby-cloud-service-override=BetaAnalyticsData=AnalyticsData", + ], + ruby_cloud_description = "The Google Analytics Data API provides programmatic methods to access report data in Google Analytics 4 (GA4) properties. Google Analytics 4 helps you understand how people use your web, iOS, or Android app.", + ruby_cloud_title = "Google Analytics Data", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-analytics-data-ruby", + deps = [ + ":analyticsdata_ruby_wrapper", + ], +) diff --git a/google/analytics/data/v1alpha/BUILD.bazel b/google/analytics/data/v1alpha/BUILD.bazel deleted file mode 100644 index 91edda2a1..000000000 --- a/google/analytics/data/v1alpha/BUILD.bazel +++ /dev/null @@ -1,338 +0,0 @@ -# This file was automatically generated by BuildFileGenerator -# https://github.com/googleapis/gapic-generator/tree/master/rules_gapic/bazel - -# Most of the manual changes to this file will be overwritten. -# It's **only** allowed to change the following rule attribute values: -# - names of *_gapic_assembly_* rules -# - certain parameters of *_gapic_library rules, including but not limited to: -# * extra_protoc_parameters -# * extra_protoc_file_parameters -# The complete list of preserved parameters can be found in the source code. - -# This is an API workspace, having public visibility by default makes perfect sense. -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") -load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") - -proto_library( - name = "data_proto", - srcs = [ - "analytics_data_api.proto", - "data.proto", - ], - deps = [ - "//google/api:annotations_proto", - "//google/api:client_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - ], -) - -proto_library_with_info( - name = "data_proto_with_info", - deps = [ - ":data_proto", - "//google/cloud:common_resources_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_gapic_assembly_gradle_pkg", - "java_gapic_library", - "java_gapic_test", - "java_grpc_library", - "java_proto_library", -) - -java_proto_library( - name = "data_java_proto", - deps = [":data_proto"], -) - -java_grpc_library( - name = "data_java_grpc", - srcs = [":data_proto"], - deps = [":data_java_proto"], -) - -java_gapic_library( - name = "data_java_gapic", - srcs = [":data_proto_with_info"], - grpc_service_config = "analytics_data_grpc_service_config.json", - test_deps = [ - ":data_java_grpc", - ], - deps = [ - ":data_java_proto", - ], -) - -java_gapic_test( - name = "data_java_gapic_test_suite", - test_classes = [ - "com.google.analytics.data.v1alpha.AlphaAnalyticsDataClientTest", - ], - runtime_deps = [":data_java_gapic_test"], -) - -# Open Source Packages -java_gapic_assembly_gradle_pkg( - name = "google-analytics-data-v1alpha-java", - deps = [ - ":data_java_gapic", - ":data_java_grpc", - ":data_java_proto", - ":data_proto", - ], -) - -############################################################################## -# Go -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "go_gapic_assembly_pkg", - "go_gapic_library", - "go_proto_library", - "go_test", -) - -go_proto_library( - name = "data_go_proto", - compilers = ["@io_bazel_rules_go//proto:go_grpc"], - importpath = "google.golang.org/genproto/googleapis/analytics/data/v1alpha", - protos = [":data_proto"], - deps = [ - "//google/api:annotations_go_proto", - ], -) - -go_gapic_library( - name = "data_go_gapic", - srcs = [":data_proto_with_info"], - grpc_service_config = "analytics_data_grpc_service_config.json", - importpath = "google.golang.org/google/analytics/data/v1alpha;data", - service_yaml = "analyticsdata_v1alpha.yaml", - deps = [ - ":data_go_proto", - ], -) - -go_test( - name = "data_go_gapic_test", - srcs = [":data_go_gapic_srcjar_test"], - embed = [":data_go_gapic"], - importpath = "google.golang.org/google/analytics/data/v1alpha", -) - -# Open Source Packages -go_gapic_assembly_pkg( - name = "gapi-analytics-data-v1alpha-go", - deps = [ - ":data_go_gapic", - ":data_go_gapic_srcjar-test.srcjar", - ":data_go_proto", - ], -) - -############################################################################## -# Python -############################################################################## - -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_gapic_assembly_pkg", - "py_gapic_library", -) - -py_gapic_library( - name = "data_py_gapic", - srcs = [":data_proto"], - grpc_service_config = "analytics_data_grpc_service_config.json", -) - -# Open Source Packages -py_gapic_assembly_pkg( - name = "google-analytics-data-v1alpha-py", - deps = [ - ":data_py_gapic", - ], -) - -############################################################################## -# PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", -) - -php_proto_library( - name = "data_php_proto", - deps = [":data_proto"], -) - -php_grpc_library( - name = "data_php_grpc", - srcs = [":data_proto"], - deps = [":data_php_proto"], -) - -php_gapic_library( - name = "data_php_gapic", - srcs = [":data_proto_with_info"], - grpc_service_config = "analytics_data_grpc_service_config.json", - deps = [ - ":data_php_grpc", - ":data_php_proto", - ], -) - -# Open Source Packages -php_gapic_assembly_pkg( - name = "google-analytics-data-v1alpha-php", - deps = [ - ":data_php_gapic", - ":data_php_grpc", - ":data_php_proto", - ], -) - -############################################################################## -# Node.js -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "nodejs_gapic_assembly_pkg", - "nodejs_gapic_library", -) - -nodejs_gapic_library( - name = "data_nodejs_gapic", - package_name = "@google-analytics/data", - src = ":data_proto_with_info", - extra_protoc_parameters = ["metadata"], - grpc_service_config = "analytics_data_grpc_service_config.json", - package = "google.analytics.data.v1alpha", - service_yaml = "analyticsdata_v1alpha.yaml", - deps = [], -) - -nodejs_gapic_assembly_pkg( - name = "google-analytics-data-v1alpha-nodejs", - deps = [ - ":data_nodejs_gapic", - ":data_proto", - ], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "ruby_gapic_assembly_pkg", - "ruby_cloud_gapic_library", - "ruby_grpc_library", - "ruby_proto_library", -) - -ruby_proto_library( - name = "data_ruby_proto", - deps = [":data_proto"], -) - -ruby_grpc_library( - name = "data_ruby_grpc", - srcs = [":data_proto"], - deps = [":data_ruby_proto"], -) - -ruby_cloud_gapic_library( - name = "data_ruby_gapic", - srcs = [":data_proto_with_info",], - extra_protoc_parameters = [ - "ruby-cloud-gem-name=google-analytics-data-v1alpha", - "ruby-cloud-env-prefix=ANALYTICS", - "ruby-cloud-api-id=analyticsdata.googleapis.com", - "ruby-cloud-api-shortname=analyticsdata", - "ruby-cloud-service-override=AlphaAnalyticsData=AnalyticsData", - ], - grpc_service_config = "analytics_data_grpc_service_config.json", - ruby_cloud_description = "The Google Analytics Data API provides programmatic methods to access report data in Google Analytics App+Web properties. With the Google Analytics Data API, you can build custom dashboards to display Google Analytics data, automate complex reporting tasks to save time, and integrate your Google Analytics data with other business applications.", - ruby_cloud_title = "Google Analytics Data V1alpha", - deps = [ - ":data_ruby_grpc", - ":data_ruby_proto", - ], -) - -# Open Source Packages -ruby_gapic_assembly_pkg( - name = "google-analytics-data-v1alpha-ruby", - deps = [ - ":data_ruby_gapic", - ":data_ruby_grpc", - ":data_ruby_proto", - ], -) - -############################################################################## -# C# -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "csharp_gapic_assembly_pkg", - "csharp_gapic_library", - "csharp_grpc_library", - "csharp_proto_library", -) - -csharp_proto_library( - name = "data_csharp_proto", - deps = [":data_proto"], -) - -csharp_grpc_library( - name = "data_csharp_grpc", - srcs = [":data_proto"], - deps = [":data_csharp_proto"], -) - -csharp_gapic_library( - name = "data_csharp_gapic", - srcs = [":data_proto_with_info"], - common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", - grpc_service_config = "analytics_data_grpc_service_config.json", - deps = [ - ":data_csharp_grpc", - ":data_csharp_proto", - ], -) - -# Open Source Packages -csharp_gapic_assembly_pkg( - name = "google-analytics-data-v1alpha-csharp", - deps = [ - ":data_csharp_gapic", - ":data_csharp_grpc", - ":data_csharp_proto", - ], -) - -############################################################################## -# C++ -############################################################################## -# Put your C++ rules here diff --git a/google/analytics/data/v1alpha/analytics_data_api.proto b/google/analytics/data/v1alpha/analytics_data_api.proto deleted file mode 100644 index 7f5f9f9b9..000000000 --- a/google/analytics/data/v1alpha/analytics_data_api.proto +++ /dev/null @@ -1,477 +0,0 @@ -// Copyright 2020 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.analytics.data.v1alpha; - -import "google/analytics/data/v1alpha/data.proto"; -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; - -option go_package = "google.golang.org/genproto/googleapis/analytics/data/v1alpha;data"; -option java_multiple_files = true; -option java_outer_classname = "AnalyticsDataApiProto"; -option java_package = "com.google.analytics.data.v1alpha"; - -// Google Analytics reporting data service. -service AlphaAnalyticsData { - option (google.api.default_host) = "analyticsdata.googleapis.com"; - option (google.api.oauth_scopes) = - "https://www.googleapis.com/auth/analytics," - "https://www.googleapis.com/auth/analytics.readonly"; - - // Returns a customized report of your Google Analytics event data. Reports - // contain statistics derived from data collected by the Google Analytics - // tracking code. The data returned from the API is as a table with columns - // for the requested dimensions and metrics. Metrics are individual - // measurements of user activity on your property, such as active users or - // event count. Dimensions break down metrics across some common criteria, - // such as country or event name. - rpc RunReport(RunReportRequest) returns (RunReportResponse) { - option (google.api.http) = { - post: "/v1alpha:runReport" - body: "*" - }; - } - - // Returns a customized pivot report of your Google Analytics event data. - // Pivot reports are more advanced and expressive formats than regular - // reports. In a pivot report, dimensions are only visible if they are - // included in a pivot. Multiple pivots can be specified to further dissect - // your data. - rpc RunPivotReport(RunPivotReportRequest) returns (RunPivotReportResponse) { - option (google.api.http) = { - post: "/v1alpha:runPivotReport" - body: "*" - }; - } - - // Returns multiple reports in a batch. All reports must be for the same - // Entity. - rpc BatchRunReports(BatchRunReportsRequest) returns (BatchRunReportsResponse) { - option (google.api.http) = { - post: "/v1alpha:batchRunReports" - body: "*" - }; - } - - // Returns multiple pivot reports in a batch. All reports must be for the same - // Entity. - rpc BatchRunPivotReports(BatchRunPivotReportsRequest) returns (BatchRunPivotReportsResponse) { - option (google.api.http) = { - post: "/v1alpha:batchRunPivotReports" - body: "*" - }; - } - - // Returns metadata for dimensions and metrics available in reporting methods. - // Used to explore the dimensions and metrics. In this method, a Google - // Analytics GA4 Property Identifier is specified in the request, and - // the metadata response includes Custom dimensions and metrics as well as - // Universal metadata. - // - // For example if a custom metric with parameter name `levels_unlocked` is - // registered to a property, the Metadata response will contain - // `customEvent:levels_unlocked`. Universal metadata are dimensions and - // metrics applicable to any property such as `country` and `totalUsers`. - rpc GetMetadata(GetMetadataRequest) returns (Metadata) { - option (google.api.http) = { - get: "/v1alpha/{name=properties/*/metadata}" - }; - option (google.api.method_signature) = "name"; - } - - // The Google Analytics Realtime API returns a customized report of realtime - // event data for your property. These reports show events and usage from the - // last 30 minutes. - rpc RunRealtimeReport(RunRealtimeReportRequest) returns (RunRealtimeReportResponse) { - option (google.api.http) = { - post: "/v1alpha/{property=properties/*}:runRealtimeReport" - body: "*" - }; - } -} - -// The dimensions and metrics currently accepted in reporting methods. -message Metadata { - option (google.api.resource) = { - type: "analyticsdata.googleapis.com/Metadata" - pattern: "properties/{property}/metadata" - }; - - // Resource name of this metadata. - string name = 3; - - // The dimension descriptions. - repeated DimensionMetadata dimensions = 1; - - // The metric descriptions. - repeated MetricMetadata metrics = 2; -} - -// The request to generate a report. -message RunReportRequest { - // A property whose events are tracked. Within a batch request, this entity - // should either be unspecified or consistent with the batch-level entity. - Entity entity = 1; - - // The dimensions requested and displayed. - repeated Dimension dimensions = 2; - - // The metrics requested and displayed. - repeated Metric metrics = 3; - - // Date ranges of data to read. If multiple date ranges are requested, each - // response row will contain a zero based date range index. If two date - // ranges overlap, the event data for the overlapping days is included in the - // response rows for both date ranges. In a cohort request, this `dateRanges` - // must be unspecified. - repeated DateRange date_ranges = 4; - - // The row count of the start row. The first row is counted as row 0. - // - // To learn more about this pagination parameter, see - // [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). - int64 offset = 5; - - // The number of rows to return. If unspecified, 10 rows are returned. If - // -1, all rows are returned. - // - // To learn more about this pagination parameter, see - // [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). - int64 limit = 6; - - // Aggregation of metrics. Aggregated metric values will be shown in rows - // where the dimension_values are set to "RESERVED_(MetricAggregation)". - repeated MetricAggregation metric_aggregations = 7; - - // The filter clause of dimensions. Dimensions must be requested to be used in - // this filter. Metrics cannot be used in this filter. - FilterExpression dimension_filter = 8; - - // The filter clause of metrics. Applied at post aggregation phase, similar to - // SQL having-clause. Metrics must be requested to be used in this filter. - // Dimensions cannot be used in this filter. - FilterExpression metric_filter = 9; - - // Specifies how rows are ordered in the response. - repeated OrderBy order_bys = 10; - - // A currency code in ISO4217 format, such as "AED", "USD", "JPY". - // If the field is empty, the report uses the entity's default currency. - string currency_code = 11; - - // Cohort group associated with this request. If there is a cohort group - // in the request the 'cohort' dimension must be present. - CohortSpec cohort_spec = 12; - - // If false or unspecified, each row with all metrics equal to 0 will not be - // returned. If true, these rows will be returned if they are not separately - // removed by a filter. - bool keep_empty_rows = 13; - - // Toggles whether to return the current state of this Analytics Property's - // quota. Quota is returned in [PropertyQuota](#PropertyQuota). - bool return_property_quota = 14; -} - -// The response report table corresponding to a request. -message RunReportResponse { - // Describes dimension columns. The number of DimensionHeaders and ordering of - // DimensionHeaders matches the dimensions present in rows. - repeated DimensionHeader dimension_headers = 11; - - // Describes metric columns. The number of MetricHeaders and ordering of - // MetricHeaders matches the metrics present in rows. - repeated MetricHeader metric_headers = 1; - - // Rows of dimension value combinations and metric values in the report. - repeated Row rows = 2; - - // If requested, the totaled values of metrics. - repeated Row totals = 8; - - // If requested, the maximum values of metrics. - repeated Row maximums = 9; - - // If requested, the minimum values of metrics. - repeated Row minimums = 10; - - // The total number of rows in the query result, regardless of the number of - // rows returned in the response. For example if a query returns 175 rows and - // includes limit = 50 in the API request, the response will contain row_count - // = 175 but only 50 rows. - // - // To learn more about this pagination parameter, see - // [Pagination](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#pagination). - int32 row_count = 12; - - // Metadata for the report. - ResponseMetaData metadata = 6; - - // This Analytics Property's quota state including this request. - PropertyQuota property_quota = 7; -} - -// The request to generate a pivot report. -message RunPivotReportRequest { - // A property whose events are tracked. Within a batch request, this entity - // should either be unspecified or consistent with the batch-level entity. - Entity entity = 1; - - // The dimensions requested. All defined dimensions must be used by one of the - // following: dimension_expression, dimension_filter, pivots, order_bys. - repeated Dimension dimensions = 2; - - // The metrics requested, at least one metric needs to be specified. All - // defined metrics must be used by one of the following: metric_expression, - // metric_filter, order_bys. - repeated Metric metrics = 3; - - // The filter clause of dimensions. Dimensions must be requested to be used in - // this filter. Metrics cannot be used in this filter. - FilterExpression dimension_filter = 4; - - // The filter clause of metrics. Applied at post aggregation phase, similar to - // SQL having-clause. Metrics must be requested to be used in this filter. - // Dimensions cannot be used in this filter. - FilterExpression metric_filter = 5; - - // Describes the visual format of the report's dimensions in columns or rows. - // The union of the fieldNames (dimension names) in all pivots must be a - // subset of dimension names defined in Dimensions. No two pivots can share a - // dimension. A dimension is only visible if it appears in a pivot. - repeated Pivot pivots = 6; - - // The date range to retrieve event data for the report. If multiple date - // ranges are specified, event data from each date range is used in the - // report. A special dimension with field name "dateRange" can be included in - // a Pivot's field names; if included, the report compares between date - // ranges. In a cohort request, this `dateRanges` must be unspecified. - repeated DateRange date_ranges = 7; - - // A currency code in ISO4217 format, such as "AED", "USD", "JPY". - // If the field is empty, the report uses the entity's default currency. - string currency_code = 8; - - // Cohort group associated with this request. If there is a cohort group - // in the request the 'cohort' dimension must be present. - CohortSpec cohort_spec = 9; - - // If false or unspecified, each row with all metrics equal to 0 will not be - // returned. If true, these rows will be returned if they are not separately - // removed by a filter. - bool keep_empty_rows = 10; - - // Toggles whether to return the current state of this Analytics Property's - // quota. Quota is returned in [PropertyQuota](#PropertyQuota). - bool return_property_quota = 11; -} - -// The response pivot report table corresponding to a pivot request. -message RunPivotReportResponse { - // Summarizes the columns and rows created by a pivot. Each pivot in the - // request produces one header in the response. If we have a request like - // this: - // - // "pivots": [{ - // "fieldNames": ["country", - // "city"] - // }, - // { - // "fieldNames": "eventName" - // }] - // - // We will have the following `pivotHeaders` in the response: - // - // "pivotHeaders" : [{ - // "dimensionHeaders": [{ - // "dimensionValues": [ - // { "value": "United Kingdom" }, - // { "value": "London" } - // ] - // }, - // { - // "dimensionValues": [ - // { "value": "Japan" }, - // { "value": "Osaka" } - // ] - // }] - // }, - // { - // "dimensionHeaders": [{ - // "dimensionValues": [{ "value": "session_start" }] - // }, - // { - // "dimensionValues": [{ "value": "scroll" }] - // }] - // }] - repeated PivotHeader pivot_headers = 1; - - // Describes dimension columns. The number of DimensionHeaders and ordering of - // DimensionHeaders matches the dimensions present in rows. - repeated DimensionHeader dimension_headers = 7; - - // Describes metric columns. The number of MetricHeaders and ordering of - // MetricHeaders matches the metrics present in rows. - repeated MetricHeader metric_headers = 2; - - // Rows of dimension value combinations and metric values in the report. - repeated Row rows = 3; - - // Aggregation of metric values. Can be totals, minimums, or maximums. The - // returned aggregations are controlled by the metric_aggregations in the - // pivot. The type of aggregation returned in each row is shown by the - // dimension_values which are set to "RESERVED_". - repeated Row aggregates = 4; - - // Metadata for the report. - ResponseMetaData metadata = 5; - - // This Analytics Property's quota state including this request. - PropertyQuota property_quota = 6; -} - -// The batch request containing multiple report requests. -message BatchRunReportsRequest { - // A property whose events are tracked. This entity must be specified for the - // batch. The entity within RunReportRequest may either be unspecified or - // consistent with this entity. - Entity entity = 1; - - // Individual requests. Each request has a separate report response. Each - // batch request is allowed up to 5 requests. - repeated RunReportRequest requests = 2; -} - -// The batch response containing multiple reports. -message BatchRunReportsResponse { - // Individual responses. Each response has a separate report request. - repeated RunReportResponse reports = 1; -} - -// The batch request containing multiple pivot report requests. -message BatchRunPivotReportsRequest { - // A property whose events are tracked. This entity must be specified for the - // batch. The entity within RunPivotReportRequest may either be unspecified or - // consistent with this entity. - Entity entity = 1; - - // Individual requests. Each request has a separate pivot report response. - // Each batch request is allowed up to 5 requests. - repeated RunPivotReportRequest requests = 2; -} - -// The batch response containing multiple pivot reports. -message BatchRunPivotReportsResponse { - // Individual responses. Each response has a separate pivot report request. - repeated RunPivotReportResponse pivot_reports = 1; -} - -// Request for a property's dimension and metric metadata. -message GetMetadataRequest { - // Required. The resource name of the metadata to retrieve. This name field is - // specified in the URL path and not URL parameters. Property is a numeric - // Google Analytics GA4 Property identifier. To learn more, see [where to find - // your Property - // ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). - // - // Example: properties/1234/metadata - // - // Set the Property ID to 0 for dimensions and metrics common to all - // properties. In this special mode, this method will not return custom - // dimensions and metrics. - string name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "analyticsdata.googleapis.com/Metadata" - } - ]; -} - -// The request to generate a realtime report. -message RunRealtimeReportRequest { - // A Google Analytics GA4 property identifier whose events are tracked. - // Specified in the URL path and not the body. To learn more, see [where to - // find your Property - // ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). - // - // Example: properties/1234 - string property = 1; - - // The dimensions requested and displayed. - repeated Dimension dimensions = 2; - - // The metrics requested and displayed. - repeated Metric metrics = 3; - - // The number of rows to return. If unspecified, 10 rows are returned. If - // -1, all rows are returned. - int64 limit = 4; - - // The filter clause of dimensions. Dimensions must be requested to be used in - // this filter. Metrics cannot be used in this filter. - FilterExpression dimension_filter = 5; - - // The filter clause of metrics. Applied at post aggregation phase, similar to - // SQL having-clause. Metrics must be requested to be used in this filter. - // Dimensions cannot be used in this filter. - FilterExpression metric_filter = 6; - - // Aggregation of metrics. Aggregated metric values will be shown in rows - // where the dimension_values are set to "RESERVED_(MetricAggregation)". - repeated MetricAggregation metric_aggregations = 7; - - // Specifies how rows are ordered in the response. - repeated OrderBy order_bys = 8; - - // Toggles whether to return the current state of this Analytics Property's - // Realtime quota. Quota is returned in [PropertyQuota](#PropertyQuota). - bool return_property_quota = 9; -} - -// The response realtime report table corresponding to a request. -message RunRealtimeReportResponse { - // Describes dimension columns. The number of DimensionHeaders and ordering of - // DimensionHeaders matches the dimensions present in rows. - repeated DimensionHeader dimension_headers = 1; - - // Describes metric columns. The number of MetricHeaders and ordering of - // MetricHeaders matches the metrics present in rows. - repeated MetricHeader metric_headers = 2; - - // Rows of dimension value combinations and metric values in the report. - repeated Row rows = 3; - - // If requested, the totaled values of metrics. - repeated Row totals = 4; - - // If requested, the maximum values of metrics. - repeated Row maximums = 5; - - // If requested, the minimum values of metrics. - repeated Row minimums = 6; - - // The total number of rows in the query result, regardless of the number of - // rows returned in the response. For example if a query returns 175 rows and - // includes limit = 50 in the API request, the response will contain row_count - // = 175 but only 50 rows. - int32 row_count = 7; - - // This Analytics Property's Realtime quota state including this request. - PropertyQuota property_quota = 8; -} diff --git a/google/analytics/data/v1alpha/analytics_data_grpc_service_config.json b/google/analytics/data/v1alpha/analytics_data_grpc_service_config.json deleted file mode 100644 index 940558b11..000000000 --- a/google/analytics/data/v1alpha/analytics_data_grpc_service_config.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "methodConfig": [ - { - "name": [{"service": "google.analytics.data.v1alpha.AlphaAnalyticsData"}], - "timeout": "60s", - "retryPolicy": { - "maxAttempts": 5, - "initialBackoff": "1s", - "maxBackoff": "60s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": ["UNKNOWN"] - } - }, - { - "name": [ - { - "service": "google.analytics.data.v1alpha.AlphaAnalyticsData", - "method": "RunReport" - }, - { - "service": "google.analytics.data.v1alpha.AlphaAnalyticsData", - "method": "RunPivotReport" - }, - { - "service": "google.analytics.data.v1alpha.AlphaAnalyticsData", - "method": "BatchRunReports" - }, - { - "service": "google.analytics.data.v1alpha.AlphaAnalyticsData", - "method": "BatchRunPivotReports" - } - ], - "timeout": "60s" - } - ] -} diff --git a/google/analytics/data/v1alpha/analyticsdata_gapic.yaml b/google/analytics/data/v1alpha/analyticsdata_gapic.yaml deleted file mode 100644 index 0bcb880b6..000000000 --- a/google/analytics/data/v1alpha/analyticsdata_gapic.yaml +++ /dev/null @@ -1,2 +0,0 @@ -type: com.google.api.codegen.ConfigProto -config_schema_version: 2.0.0 diff --git a/google/analytics/data/v1alpha/analyticsdata_v1alpha.yaml b/google/analytics/data/v1alpha/analyticsdata_v1alpha.yaml deleted file mode 100644 index 0e68c8676..000000000 --- a/google/analytics/data/v1alpha/analyticsdata_v1alpha.yaml +++ /dev/null @@ -1,23 +0,0 @@ -type: google.api.Service -config_version: 3 -name: analyticsdata.googleapis.com -title: Google Analytics Data API - -apis: -- name: google.analytics.data.v1alpha.AlphaAnalyticsData - -documentation: - summary: Accesses report data in Google Analytics. - -backend: - rules: - - selector: 'google.analytics.data.v1alpha.AlphaAnalyticsData.*' - deadline: 180.0 - -authentication: - rules: - - selector: 'google.analytics.data.v1alpha.AlphaAnalyticsData.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/analytics, - https://www.googleapis.com/auth/analytics.readonly diff --git a/google/analytics/data/v1alpha/data.proto b/google/analytics/data/v1alpha/data.proto deleted file mode 100644 index aafd17689..000000000 --- a/google/analytics/data/v1alpha/data.proto +++ /dev/null @@ -1,793 +0,0 @@ -// Copyright 2020 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.analytics.data.v1alpha; - -option go_package = "google.golang.org/genproto/googleapis/analytics/data/v1alpha;data"; -option java_multiple_files = true; -option java_outer_classname = "ReportingApiProto"; -option java_package = "com.google.analytics.data.v1alpha"; - -// A contiguous set of days: startDate, startDate + 1, ..., endDate. Requests -// are allowed up to 4 date ranges. -message DateRange { - // The inclusive start date for the query in the format `YYYY-MM-DD`. Cannot - // be after `end_date`. The format `NdaysAgo`, `yesterday`, or `today` is also - // accepted, and in that case, the date is inferred based on the property's - // reporting time zone. - string start_date = 1; - - // The inclusive end date for the query in the format `YYYY-MM-DD`. Cannot - // be before `start_date`. The format `NdaysAgo`, `yesterday`, or `today` is - // also accepted, and in that case, the date is inferred based on the - // property's reporting time zone. - string end_date = 2; - - // Assigns a name to this date range. The dimension `dateRange` is valued to - // this name in a report response. If set, cannot begin with `date_range_` or - // `RESERVED_`. If not set, date ranges are named by their zero based index in - // the request: `date_range_0`, `date_range_1`, etc. - string name = 3; -} - -// The unique identifier of the property whose events are tracked. -message Entity { - // A Google Analytics GA4 property id. To learn more, see [where to find your - // Property - // ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). - string property_id = 1; -} - -// Dimensions are attributes of your data. For example, the dimension city -// indicates the city from which an event originates. Dimension values in report -// responses are strings; for example, city could be "Paris" or "New York". -// Requests are allowed up to 8 dimensions. -message Dimension { - // The name of the dimension. See the [API - // Dimensions](https://developers.google.com/analytics/devguides/reporting/data/v1/api-schema#dimensions) - // for the list of dimension names. - // - // If `dimensionExpression` is specified, `name` can be any string that you - // would like. For example if a `dimensionExpression` concatenates `country` - // and `city`, you could call that dimension `countryAndCity`. - // - // Dimensions are referenced by `name` in `dimensionFilter`, `orderBys`, - // `dimensionExpression`, and `pivots`. - string name = 1; - - // One dimension can be the result of an expression of multiple dimensions. - // For example, dimension "country, city": concatenate(country, ", ", city). - DimensionExpression dimension_expression = 2; -} - -// Used to express a dimension which is the result of a formula of multiple -// dimensions. Example usages: -// 1) lower_case(dimension) -// 2) concatenate(dimension1, symbol, dimension2). -message DimensionExpression { - // Used to convert a dimension value to a single case. - message CaseExpression { - // Name of a dimension. The name must refer back to a name in dimensions - // field of the request. - string dimension_name = 1; - } - - // Used to combine dimension values to a single dimension. - message ConcatenateExpression { - // Names of dimensions. The names must refer back to names in the dimensions - // field of the request. - repeated string dimension_names = 1; - - // The delimiter placed between dimension names. - // - // Delimiters are often single characters such as "|" or "," but can be - // longer strings. If a dimension value contains the delimiter, both will be - // present in response with no distinction. For example if dimension 1 value - // = "US,FR", dimension 2 value = "JP", and delimiter = ",", then the - // response will contain "US,FR,JP". - string delimiter = 2; - } - - // Specify one type of dimension expression for `DimensionExpression`. - oneof one_expression { - // Used to convert a dimension value to lower case. - CaseExpression lower_case = 4; - - // Used to convert a dimension value to upper case. - CaseExpression upper_case = 5; - - // Used to combine dimension values to a single dimension. - // For example, dimension "country, city": concatenate(country, ", ", city). - ConcatenateExpression concatenate = 6; - } -} - -// The quantitative measurements of a report. For example, the metric -// `eventCount` is the total number of events. Requests are allowed up to 10 -// metrics. -message Metric { - // The name of the metric. See the [API - // Metrics](https://developers.google.com/analytics/devguides/reporting/data/v1/api-schema#metrics) - // for the list of metric names. - // - // If `expression` is specified, `name` can be any string that you would like. - // For example if `expression` is `screenPageViews/sessions`, you could call - // that metric's name = `viewsPerSession`. - // - // Metrics are referenced by `name` in `metricFilter`, `orderBys`, and metric - // `expression`. - string name = 1; - - // A mathematical expression for derived metrics. For example, the metric - // Event count per user is `eventCount/totalUsers`. - string expression = 2; - - // Indicates if a metric is invisible in the report response. If a metric is - // invisible, the metric will not produce a column in the response, but can be - // used in `metricFilter`, `orderBys`, or a metric `expression`. - bool invisible = 3; -} - -// To express dimension or metric filters. -// The fields in the same FilterExpression need to be either all dimensions or -// all metrics. -message FilterExpression { - // Specify one type of filter expression for `FilterExpression`. - oneof expr { - // The FilterExpressions in and_group have an AND relationship. - FilterExpressionList and_group = 1; - - // The FilterExpressions in or_group have an OR relationship. - FilterExpressionList or_group = 2; - - // The FilterExpression is NOT of not_expression. - FilterExpression not_expression = 3; - - // A primitive filter. - // All fields in filter in same FilterExpression needs to be either all - // dimensions or metrics. - Filter filter = 4; - } -} - -// A list of filter expressions. -message FilterExpressionList { - // A list of filter expressions. - repeated FilterExpression expressions = 1; -} - -// An expression to filter dimension or metric values. -message Filter { - // The filter for string - message StringFilter { - // The match type of a string filter - enum MatchType { - // Unspecified - MATCH_TYPE_UNSPECIFIED = 0; - - // Exact match of the string value. - EXACT = 1; - - // Begins with the string value. - BEGINS_WITH = 2; - - // Ends with the string value. - ENDS_WITH = 3; - - // Contains the string value. - CONTAINS = 4; - - // Full regular expression match with the string value. - FULL_REGEXP = 5; - - // Partial regular expression match with the string value. - PARTIAL_REGEXP = 6; - } - - // The match type for this filter. - MatchType match_type = 1; - - // The string value used for the matching. - string value = 2; - - // If true, the string value is case sensitive. - bool case_sensitive = 3; - } - - // The result needs to be in a list of string values. - message InListFilter { - // The list of string values. - // Must be non-empty. - repeated string values = 1; - - // If true, the string value is case sensitive. - bool case_sensitive = 2; - } - - // Filters for numeric or date values. - message NumericFilter { - // The operation applied to a numeric filter - enum Operation { - // Unspecified. - OPERATION_UNSPECIFIED = 0; - - // Equal - EQUAL = 1; - - // Less than - LESS_THAN = 2; - - // Less than or equal - LESS_THAN_OR_EQUAL = 3; - - // Greater than - GREATER_THAN = 4; - - // Greater than or equal - GREATER_THAN_OR_EQUAL = 5; - } - - // The operation type for this filter. - Operation operation = 1; - - // A numeric value or a date value. - NumericValue value = 2; - } - - // To express that the result needs to be between two numbers (inclusive). - message BetweenFilter { - // Begins with this number. - NumericValue from_value = 1; - - // Ends with this number. - NumericValue to_value = 2; - } - - // The dimension name or metric name. Must be a name defined in dimensions - // or metrics. - string field_name = 1; - - // Specify one type of filter for `Filter`. - oneof one_filter { - // A filter for null values. If True, a null dimension value is matched by - // this filter. Null filter is commonly used inside a NOT filter - // expression. For example, a NOT expression of a null filter removes rows - // when a dimension is null. - bool null_filter = 2; - - // Strings related filter. - StringFilter string_filter = 3; - - // A filter for in list values. - InListFilter in_list_filter = 4; - - // A filter for numeric or date values. - NumericFilter numeric_filter = 5; - - // A filter for two values. - BetweenFilter between_filter = 6; - } -} - -// The sort options. -message OrderBy { - // Sorts by metric values. - message MetricOrderBy { - // A metric name in the request to order by. - string metric_name = 1; - } - - // Sorts by dimension values. - message DimensionOrderBy { - // Rule to order the string dimension values by. - enum OrderType { - // Unspecified. - ORDER_TYPE_UNSPECIFIED = 0; - - // Alphanumeric sort by Unicode code point. For example, "2" < "A" < "X" < - // "b" < "z". - ALPHANUMERIC = 1; - - // Case insensitive alphanumeric sort by lower case Unicode code point. - // For example, "2" < "A" < "b" < "X" < "z". - CASE_INSENSITIVE_ALPHANUMERIC = 2; - - // Dimension values are converted to numbers before sorting. For example - // in NUMERIC sort, "25" < "100", and in `ALPHANUMERIC` sort, "100" < - // "25". Non-numeric dimension values all have equal ordering value below - // all numeric values. - NUMERIC = 3; - } - - // A dimension name in the request to order by. - string dimension_name = 1; - - // Controls the rule for dimension value ordering. - OrderType order_type = 2; - } - - // Sorts by a pivot column group. - message PivotOrderBy { - // A pair of dimension names and values. Rows with this dimension pivot pair - // are ordered by the metric's value. - // - // For example if pivots = {{"browser", "Chrome"}} and - // metric_name = "Sessions", - // then the rows will be sorted based on Sessions in Chrome. - // - // ---------|----------|----------------|----------|---------------- - // | Chrome | Chrome | Safari | Safari - // ---------|----------|----------------|----------|---------------- - // Country | Sessions | Pages/Sessions | Sessions | Pages/Sessions - // ---------|----------|----------------|----------|---------------- - // US | 2 | 2 | 3 | 1 - // ---------|----------|----------------|----------|---------------- - // Canada | 3 | 1 | 4 | 1 - // ---------|----------|----------------|----------|---------------- - message PivotSelection { - // Must be a dimension name from the request. - string dimension_name = 1; - - // Order by only when the named dimension is this value. - string dimension_value = 2; - } - - // In the response to order by, order rows by this column. Must be a metric - // name from the request. - string metric_name = 1; - - // Used to select a dimension name and value pivot. If multiple pivot - // selections are given, the sort occurs on rows where all pivot selection - // dimension name and value pairs match the row's dimension name and value - // pair. - repeated PivotSelection pivot_selections = 2; - } - - // Specify one type of order by for `OrderBy`. - oneof one_order_by { - // Sorts results by a metric's values. - MetricOrderBy metric = 1; - - // Sorts results by a dimension's values. - DimensionOrderBy dimension = 2; - - // Sorts results by a metric's values within a pivot column group. - PivotOrderBy pivot = 3; - } - - // If true, sorts by descending order. - bool desc = 4; -} - -// Describes the visible dimension columns and rows in the report response. -message Pivot { - // Dimension names for visible columns in the report response. Including - // "dateRange" produces a date range column; for each row in the response, - // dimension values in the date range column will indicate the corresponding - // date range from the request. - repeated string field_names = 1; - - // Specifies how dimensions are ordered in the pivot. In the first Pivot, the - // OrderBys determine Row and PivotDimensionHeader ordering; in subsequent - // Pivots, the OrderBys determine only PivotDimensionHeader ordering. - // Dimensions specified in these OrderBys must be a subset of - // Pivot.field_names. - repeated OrderBy order_bys = 2; - - // The row count of the start row. The first row is counted as row 0. - int64 offset = 3; - - // The number of rows to return in this pivot. If unspecified, 10 rows are - // returned. If -1, all rows are returned. - int64 limit = 4; - - // Aggregate the metrics by dimensions in this pivot using the specified - // metric_aggregations. - repeated MetricAggregation metric_aggregations = 5; -} - -// Specification of cohorts for a cohort report. -// Cohort reports can be used for example to create a time series of user -// retention for the cohort. For example, you could select the cohort of users -// that were acquired in the first week of September and follow that cohort for -// the next six weeks. Selecting the users acquired in the first week of -// September cohort is specified in the `cohort` object. Following that -// cohort for the next six weeks is specified in the `cohortsRange` object. -// -// The report response could show a weekly time series where say your app has -// retained 60% of this cohort after three weeks and 25% of this cohort after -// six weeks. These two percentages can be calculated by the metric -// `cohortActiveUsers/cohortTotalUsers` and will be separate rows in the report. -message CohortSpec { - // Defines the selection criteria to group users into cohorts. - // - // Most cohort reports define only a single cohort. If multiple cohorts are - // specified, each cohort can be recognized in the report by their name. - repeated Cohort cohorts = 1; - - // Cohort reports follow cohorts over an extended reporting date range. This - // range specifies an offset duration to follow the cohorts over. - CohortsRange cohorts_range = 2; - - // Optional settings for a cohort report. - CohortReportSettings cohort_report_settings = 3; -} - -// Defines a cohort selection criteria. A cohort is a group of users who share -// a common characteristic. For example, users with the same `firstTouchDate` -// belong to the same cohort. -message Cohort { - // Assigns a name to this cohort. The dimension `cohort` is valued to this - // name in a report response. If set, cannot begin with `cohort_` or - // `RESERVED_`. If not set, cohorts are named by their zero based index - // `cohort_0`, `cohort_1`, etc. - string name = 1; - - // Dimension used by the cohort. Required and only supports `firstTouchDate`. - string dimension = 2; - - // The cohort selects users whose first touch date is between start date and - // end date defined in the `dateRange`. This `dateRange` does not specify the - // full date range of event data that is present in a cohort report. In a - // cohort report, this `dateRange` is extended by the granularity and offset - // present in the `cohortsRange`; event data for the extended reporting date - // range is present in a cohort report. - // - // In a cohort request, this `dateRange` is required and the `dateRanges` in - // the `RunReportRequest` or `RunPivotReportRequest` must be unspecified. - // - // This `dateRange` should generally be aligned with the cohort's granularity. - // If `CohortsRange` uses daily granularity, this `dateRange` can be a single - // day. If `CohortsRange` uses weekly granularity, this `dateRange` can be - // aligned to a week boundary, starting at Sunday and ending Saturday. If - // `CohortsRange` uses monthly granularity, this `dateRange` can be aligned to - // a month, starting at the first and ending on the last day of the month. - DateRange date_range = 3; -} - -// Configures the extended reporting date range for a cohort report. Specifies -// an offset duration to follow the cohorts over. -message CohortsRange { - // The granularity used to interpret the `startOffset` and `endOffset` for the - // extended reporting date range for a cohort report. - enum Granularity { - // Should never be specified. - GRANULARITY_UNSPECIFIED = 0; - - // Daily granularity. Commonly used if the cohort's `dateRange` is a single - // day and the request contains `cohortNthDay`. - DAILY = 1; - - // Weekly granularity. Commonly used if the cohort's `dateRange` is a week - // in duration (starting on Sunday and ending on Saturday) and the request - // contains `cohortNthWeek`. - WEEKLY = 2; - - // Monthly granularity. Commonly used if the cohort's `dateRange` is a month - // in duration and the request contains `cohortNthMonth`. - MONTHLY = 3; - } - - // The granularity used to interpret the `startOffset` and `endOffset` for the - // extended reporting date range for a cohort report. - Granularity granularity = 1; - - // `startOffset` specifies the start date of the extended reporting date range - // for a cohort report. `startOffset` is commonly set to 0 so that reports - // contain data from the acquisition of the cohort forward. - // - // If `granularity` is `DAILY`, the `startDate` of the extended reporting date - // range is `startDate` of the cohort plus `startOffset` days. - // - // If `granularity` is `WEEKLY`, the `startDate` of the extended reporting - // date range is `startDate` of the cohort plus `startOffset * 7` days. - // - // If `granularity` is `MONTHLY`, the `startDate` of the extended reporting - // date range is `startDate` of the cohort plus `startOffset * 30` days. - int32 start_offset = 2; - - // `endOffset` specifies the end date of the extended reporting date range - // for a cohort report. `endOffset` can be any positive integer but is - // commonly set to 5 to 10 so that reports contain data on the cohort for the - // next several granularity time periods. - // - // If `granularity` is `DAILY`, the `endDate` of the extended reporting date - // range is `endDate` of the cohort plus `endOffset` days. - // - // If `granularity` is `WEEKLY`, the `endDate` of the extended reporting date - // range is `endDate` of the cohort plus `endOffset * 7` days. - // - // If `granularity` is `MONTHLY`, the `endDate` of the extended reporting date - // range is `endDate` of the cohort plus `endOffset * 30` days. - int32 end_offset = 3; -} - -// Optional settings of a cohort report. -message CohortReportSettings { - // If true, accumulates the result from first touch day to the end day. Not - // supported in `RunReportRequest`. - bool accumulate = 1; -} - -// Response's metadata carrying additional information about the report content. -message ResponseMetaData { - // If true, indicates some buckets of dimension combinations are rolled into - // "(other)" row. This can happen for high cardinality reports. - bool data_loss_from_other_row = 3; -} - -// Describes a dimension column in the report. Dimensions requested in a report -// produce column entries within rows and DimensionHeaders. However, dimensions -// used exclusively within filters or expressions do not produce columns in a -// report; correspondingly, those dimensions do not produce headers. -message DimensionHeader { - // The dimension's name. - string name = 1; -} - -// Describes a metric column in the report. Visible metrics requested in a -// report produce column entries within rows and MetricHeaders. However, -// metrics used exclusively within filters or expressions do not produce columns -// in a report; correspondingly, those metrics do not produce headers. -message MetricHeader { - // The metric's name. - string name = 1; - - // The metric's data type. - MetricType type = 2; -} - -// Dimensions' values in a single pivot. -message PivotHeader { - // The size is the same as the cardinality of the corresponding dimension - // combinations. - repeated PivotDimensionHeader pivot_dimension_headers = 1; - - // The cardinality of the pivot as if offset = 0 and limit = -1. The total - // number of rows for this pivot's fields regardless of how the parameters - // offset and limit are specified in the request. - int32 row_count = 2; -} - -// Summarizes dimension values from a row for this pivot. -message PivotDimensionHeader { - // Values of multiple dimensions in a pivot. - repeated DimensionValue dimension_values = 1; -} - -// Report data for each row. -// For example if RunReportRequest contains: -// -// ```none -// "dimensions": [ -// { -// "name": "eventName" -// }, -// { -// "name": "countryId" -// } -// ], -// "metrics": [ -// { -// "name": "eventCount" -// } -// ] -// ``` -// -// One row with 'in_app_purchase' as the eventName, 'JP' as the countryId, and -// 15 as the eventCount, would be: -// -// ```none -// "dimensionValues": [ -// { -// "value": "in_app_purchase" -// }, -// { -// "value": "JP" -// } -// ], -// "metricValues": [ -// { -// "value": "15" -// } -// ] -// ``` -message Row { - // List of requested dimension values. In a PivotReport, dimension_values - // are only listed for dimensions included in a pivot. - repeated DimensionValue dimension_values = 1; - - // List of requested visible metric values. - repeated MetricValue metric_values = 2; -} - -// The value of a dimension. -message DimensionValue { - // One kind of dimension value - oneof one_value { - // Value as a string if the dimension type is a string. - string value = 1; - } -} - -// The value of a metric. -message MetricValue { - // One of metric value - oneof one_value { - // Measurement value. See MetricHeader for type. - string value = 4; - } -} - -// To represent a number. -message NumericValue { - // One of a numeric value - oneof one_value { - // Integer value - int64 int64_value = 1; - - // Double value - double double_value = 2; - } -} - -// Current state of all quotas for this Analytics Property. If any quota for a -// property is exhausted, all requests to that property will return Resource -// Exhausted errors. -message PropertyQuota { - // Standard Analytics Properties can use up to 25,000 tokens per day; - // Analytics 360 Properties can use 250,000 tokens per day. Most requests - // consume fewer than 10 tokens. - QuotaStatus tokens_per_day = 1; - - // Standard Analytics Properties can use up to 5,000 tokens per day; Analytics - // 360 Properties can use 50,000 tokens per day. An API request consumes a - // single number of tokens, and that number is deducted from both the hourly - // and daily quotas. - QuotaStatus tokens_per_hour = 2; - - // Standard Analytics Properties can send up to 10 concurrent requests; - // Analytics 360 Properties can use up to 50 concurrent requests. - QuotaStatus concurrent_requests = 3; - - // Standard Analytics Properties and cloud project pairs can have up to 10 - // server errors per hour; Analytics 360 Properties and cloud project pairs - // can have up to 50 server errors per hour. - QuotaStatus server_errors_per_project_per_hour = 4; -} - -// Current state for a particular quota group. -message QuotaStatus { - // Quota consumed by this request. - int32 consumed = 1; - - // Quota remaining after this request. - int32 remaining = 2; -} - -// Explains a dimension. -message DimensionMetadata { - // This dimension's name. Useable in [Dimension](#Dimension)'s `name`. For - // example, `eventName`. - string api_name = 1; - - // This dimension's name within the Google Analytics user interface. For - // example, `Event name`. - string ui_name = 2; - - // Description of how this dimension is used and calculated. - string description = 3; - - // Still usable but deprecated names for this dimension. If populated, this - // dimension is available by either `apiName` or one of `deprecatedApiNames` - // for a period of time. After the deprecation period, the dimension will be - // available only by `apiName`. - repeated string deprecated_api_names = 4; - - // True if the dimension is a custom dimension for this property. - bool custom_definition = 5; -} - -// Explains a metric. -message MetricMetadata { - // A metric name. Useable in [Metric](#Metric)'s `name`. For example, - // `eventCount`. - string api_name = 1; - - // This metric's name within the Google Analytics user interface. For example, - // `Event count`. - string ui_name = 2; - - // Description of how this metric is used and calculated. - string description = 3; - - // Still usable but deprecated names for this metric. If populated, this - // metric is available by either `apiName` or one of `deprecatedApiNames` - // for a period of time. After the deprecation period, the metric will be - // available only by `apiName`. - repeated string deprecated_api_names = 4; - - // The type of this metric. - MetricType type = 5; - - // The mathematical expression for this derived metric. Can be used in - // [Metric](#Metric)'s `expression` field for equivalent reports. Most metrics - // are not expressions, and for non-expressions, this field is empty. - string expression = 6; - - // True if the metric is a custom metric for this property. - bool custom_definition = 7; -} - -// Represents aggregation of metrics. -enum MetricAggregation { - // Unspecified operator. - METRIC_AGGREGATION_UNSPECIFIED = 0; - - // SUM operator. - TOTAL = 1; - - // Minimum operator. - MINIMUM = 5; - - // Maximum operator. - MAXIMUM = 6; - - // Count operator. - COUNT = 4; -} - -// A metric's value type. -enum MetricType { - // Unspecified type. - METRIC_TYPE_UNSPECIFIED = 0; - - // Integer type. - TYPE_INTEGER = 1; - - // Floating point type. - TYPE_FLOAT = 2; - - // A duration of seconds; a special floating point type. - TYPE_SECONDS = 4; - - // A duration in milliseconds; a special floating point type. - TYPE_MILLISECONDS = 5; - - // A duration in minutes; a special floating point type. - TYPE_MINUTES = 6; - - // A duration in hours; a special floating point type. - TYPE_HOURS = 7; - - // A custom metric of standard type; a special floating point type. - TYPE_STANDARD = 8; - - // An amount of money; a special floating point type. - TYPE_CURRENCY = 9; - - // A length in feet; a special floating point type. - TYPE_FEET = 10; - - // A length in miles; a special floating point type. - TYPE_MILES = 11; - - // A length in meters; a special floating point type. - TYPE_METERS = 12; - - // A length in kilometers; a special floating point type. - TYPE_KILOMETERS = 13; -} diff --git a/google/analytics/data/v1beta/BUILD.bazel b/google/analytics/data/v1beta/BUILD.bazel index 9a553ecb0..7483e9154 100644 --- a/google/analytics/data/v1beta/BUILD.bazel +++ b/google/analytics/data/v1beta/BUILD.bazel @@ -170,14 +170,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -265,15 +264,16 @@ ruby_cloud_gapic_library( name = "data_ruby_gapic", srcs = [":data_proto_with_info"], extra_protoc_parameters = [ - "ruby-cloud-gem-name=google-analytics-data-v1", - "ruby-cloud-env-prefix=ANALYTICSDATA", + "ruby-cloud-gem-name=google-analytics-data-v1beta", + "ruby-cloud-env-prefix=ANALYTICS_DATA", "ruby-cloud-product-url=https://developers.google.com/analytics/devguides/reporting/data/v1", "ruby-cloud-api-id=analyticsdata.googleapis.com", "ruby-cloud-api-shortname=analyticsdata", + "ruby-cloud-service-override=BetaAnalyticsData=AnalyticsData", ], grpc_service_config = "analytics_data_grpc_service_config.json", - ruby_cloud_description = "The Google Analytics Data API V1 provides programmatic methods to access report data in Google Analytics 4 (GA4) properties.", - ruby_cloud_title = "Google Analytics Data V1", + ruby_cloud_description = "The Google Analytics Data API provides programmatic methods to access report data in Google Analytics 4 (GA4) properties. Google Analytics 4 helps you understand how people use your web, iOS, or Android app.", + ruby_cloud_title = "Google Analytics Data V1beta", deps = [ ":data_ruby_grpc", ":data_ruby_proto", diff --git a/google/analytics/data/v1beta/analytics_data_api.proto b/google/analytics/data/v1beta/analytics_data_api.proto index 38f2977a8..b32577e76 100644 --- a/google/analytics/data/v1beta/analytics_data_api.proto +++ b/google/analytics/data/v1beta/analytics_data_api.proto @@ -104,6 +104,71 @@ service BetaAnalyticsData { body: "*" }; } + + // This compatibility method lists dimensions and metrics that can be added to + // a report request and maintain compatibility. This method fails if the + // request's dimensions and metrics are incompatible. + // + // In Google Analytics, reports fail if they request incompatible dimensions + // and/or metrics; in that case, you will need to remove dimensions and/or + // metrics from the incompatible report until the report is compatible. + // + // The Realtime and Core reports have different compatibility rules. This + // method checks compatibility for Core reports. + rpc CheckCompatibility(CheckCompatibilityRequest) returns (CheckCompatibilityResponse) { + option (google.api.http) = { + post: "/v1beta/{property=properties/*}:checkCompatibility" + body: "*" + }; + } +} + +// The request for compatibility information for a report's dimensions and +// metrics. Check compatibility provides a preview of the compatibility of a +// report; fields shared with the `runReport` request should be the same values +// as in your `runReport` request. +message CheckCompatibilityRequest { + // A Google Analytics GA4 property identifier whose events are tracked. To + // learn more, see [where to find your Property + // ID](https://developers.google.com/analytics/devguides/reporting/data/v1/property-id). + // `property` should be the same value as in your `runReport` request. + // + // Example: properties/1234 + // + // Set the Property ID to 0 for compatibility checking on dimensions and + // metrics common to all properties. In this special mode, this method will + // not return custom dimensions and metrics. + string property = 1; + + // The dimensions in this report. `dimensions` should be the same value as in + // your `runReport` request. + repeated Dimension dimensions = 2; + + // The metrics in this report. `metrics` should be the same value as in your + // `runReport` request. + repeated Metric metrics = 3; + + // The filter clause of dimensions. `dimensionFilter` should be the same value + // as in your `runReport` request. + FilterExpression dimension_filter = 4; + + // The filter clause of metrics. `metricFilter` should be the same value as in + // your `runReport` request + FilterExpression metric_filter = 5; + + // Filters the dimensions and metrics in the response to just this + // compatibility. Commonly used as `”compatibilityFilter”: “COMPATIBLE”` + // to only return compatible dimensions & metrics. + Compatibility compatibility_filter = 6; +} + +// The compatibility response with the compatibility of each dimension & metric. +message CheckCompatibilityResponse { + // The compatibility of each dimension. + repeated DimensionCompatibility dimension_compatibilities = 1; + + // The compatibility of each metric. + repeated MetricCompatibility metric_compatibilities = 2; } // The dimensions and metrics currently accepted in reporting methods. @@ -148,13 +213,14 @@ message RunReportRequest { // must be unspecified. repeated DateRange date_ranges = 4; - // The filter clause of dimensions. Dimensions must be requested to be used in - // this filter. Metrics cannot be used in this filter. + // Dimension filters allow you to ask for only specific dimension values in + // the report. To learn more, see [Fundamentals of Dimension + // Filters](https://developers.google.com/analytics/devguides/reporting/data/v1/basics#dimension_filters) + // for examples. Metrics cannot be used in this filter. FilterExpression dimension_filter = 5; // The filter clause of metrics. Applied at post aggregation phase, similar to - // SQL having-clause. Metrics must be requested to be used in this filter. - // Dimensions cannot be used in this filter. + // SQL having-clause. Dimensions cannot be used in this filter. FilterExpression metric_filter = 6; // The row count of the start row. The first row is counted as row 0. @@ -506,6 +572,13 @@ message RunRealtimeReportRequest { // Toggles whether to return the current state of this Analytics Property's // Realtime quota. Quota is returned in [PropertyQuota](#PropertyQuota). bool return_property_quota = 9; + + // The minute ranges of event data to read. If unspecified, one minute range + // for the last 30 minutes will be used. If multiple minute ranges are + // requested, each response row will contain a zero based minute range index. + // If two minute ranges overlap, the event data for the overlapping minutes is + // included in the response rows for both minute ranges. + repeated MinuteRange minute_ranges = 10; } // The response realtime report table corresponding to a request. diff --git a/google/analytics/data/v1beta/data.proto b/google/analytics/data/v1beta/data.proto index 3057ae22c..7f9b1450b 100644 --- a/google/analytics/data/v1beta/data.proto +++ b/google/analytics/data/v1beta/data.proto @@ -43,10 +43,41 @@ message DateRange { string name = 3; } +// A contiguous set of minutes: startMinutesAgo, startMinutesAgo + 1, ..., +// endMinutesAgo. Requests are allowed up to 2 minute ranges. +message MinuteRange { + // The inclusive start minute for the query as a number of minutes before now. + // For example, `"startMinutesAgo": 29` specifies the report should include + // event data from 29 minutes ago and after. Cannot be after `endMinutesAgo`. + // + // If unspecified, `startMinutesAgo` is defaulted to 29. Standard Analytics + // properties can request up to the last 30 minutes of event data + // (`startMinutesAgo <= 29`), and 360 Analytics properties can request up to + // the last 60 minutes of event data (`startMinutesAgo <= 59`). + optional int32 start_minutes_ago = 1; + + // The inclusive end minute for the query as a number of minutes before now. + // Cannot be before `startMinutesAgo`. For example, `"endMinutesAgo": 15` + // specifies the report should include event data from prior to 15 minutes + // ago. + // + // If unspecified, `endMinutesAgo` is defaulted to 0. Standard Analytics + // properties can request any minute in the last 30 minutes of event data + // (`endMinutesAgo <= 29`), and 360 Analytics properties can request any + // minute in the last 60 minutes of event data (`endMinutesAgo <= 59`). + optional int32 end_minutes_ago = 2; + + // Assigns a name to this minute range. The dimension `dateRange` is valued to + // this name in a report response. If set, cannot begin with `date_range_` or + // `RESERVED_`. If not set, minute ranges are named by their zero based index + // in the request: `date_range_0`, `date_range_1`, etc. + string name = 3; +} + // Dimensions are attributes of your data. For example, the dimension city // indicates the city from which an event originates. Dimension values in report // responses are strings; for example, city could be "Paris" or "New York". -// Requests are allowed up to 8 dimensions. +// Requests are allowed up to 9 dimensions. message Dimension { // The name of the dimension. See the [API // Dimensions](https://developers.google.com/analytics/devguides/reporting/data/v1/api-schema#dimensions) @@ -56,7 +87,7 @@ message Dimension { // would like within the allowed character set. For example if a // `dimensionExpression` concatenates `country` and `city`, you could call // that dimension `countryAndCity`. Dimension names that you choose must match - // the regular expression "^[a-zA-Z0-9_]$". + // the regular expression `^[a-zA-Z0-9_]$`. // // Dimensions are referenced by `name` in `dimensionFilter`, `orderBys`, // `dimensionExpression`, and `pivots`. @@ -121,7 +152,7 @@ message Metric { // within the allowed character set. For example if `expression` is // `screenPageViews/sessions`, you could call that metric's name = // `viewsPerSession`. Metric names that you choose must match the regular - // expression "^[a-zA-Z0-9_]$". + // expression `^[a-zA-Z0-9_]$`. // // Metrics are referenced by `name` in `metricFilter`, `orderBys`, and metric // `expression`. @@ -524,9 +555,55 @@ message CohortReportSettings { // Response's metadata carrying additional information about the report content. message ResponseMetaData { + // The schema restrictions actively enforced in creating this report. To learn + // more, see [Access and data-restriction + // management](https://support.google.com/analytics/answer/10851388). + message SchemaRestrictionResponse { + // A metric actively restricted in creating the report. + message ActiveMetricRestriction { + // The name of the restricted metric. + optional string metric_name = 1; + + // The reason for this metric's restriction. + repeated RestrictedMetricType restricted_metric_types = 2; + } + + // All restrictions actively enforced in creating the report. For example, + // `purchaseRevenue` always has the restriction type `REVENUE_DATA`. + // However, this active response restriction is only populated if the user's + // custom role disallows access to `REVENUE_DATA`. + repeated ActiveMetricRestriction active_metric_restrictions = 1; + } + // If true, indicates some buckets of dimension combinations are rolled into // "(other)" row. This can happen for high cardinality reports. bool data_loss_from_other_row = 3; + + // Describes the schema restrictions actively enforced in creating this + // report. To learn more, see [Access and data-restriction + // management](https://support.google.com/analytics/answer/10851388). + optional SchemaRestrictionResponse schema_restriction_response = 4; + + // The currency code used in this report. Intended to be used in formatting + // currency metrics like `purchaseRevenue` for visualization. If currency_code + // was specified in the request, this response parameter will echo the request + // parameter; otherwise, this response parameter is the property's current + // currency_code. + // + // Currency codes are string encodings of currency types from the ISO 4217 + // standard (https://en.wikipedia.org/wiki/ISO_4217); for example "USD", + // "EUR", "JPY". To learn more, see + // https://support.google.com/analytics/answer/9796179. + optional string currency_code = 5; + + // The property's current timezone. Intended to be used to interpret + // time-based dimensions like `hour` and `minute`. Formatted as strings from + // the IANA Time Zone database (https://www.iana.org/time-zones); for example + // "America/New_York" or "Asia/Tokyo". + optional string time_zone = 6; + + // If empty reason is specified, the report is empty for this reason. + optional string empty_reason = 7; } // Describes a dimension column in the report. Dimensions requested in a report @@ -705,10 +782,28 @@ message DimensionMetadata { // True if the dimension is a custom dimension for this property. bool custom_definition = 5; + + // The display name of the category that this dimension belongs to. Similar + // dimensions and metrics are categorized together. + string category = 7; } // Explains a metric. message MetricMetadata { + // Justifications for why this metric is blocked. + enum BlockedReason { + // Will never be specified in API response. + BLOCKED_REASON_UNSPECIFIED = 0; + + // If present, your access is blocked to revenue related metrics for this + // property, and this metric is revenue related. + NO_REVENUE_METRICS = 1; + + // If present, your access is blocked to cost related metrics for this + // property, and this metric is cost related. + NO_COST_METRICS = 2; + } + // A metric name. Useable in [Metric](#Metric)'s `name`. For example, // `eventCount`. string api_name = 1; @@ -736,6 +831,44 @@ message MetricMetadata { // True if the metric is a custom metric for this property. bool custom_definition = 7; + + // If reasons are specified, your access is blocked to this metric for this + // property. API requests from you to this property for this metric will + // succeed; however, the report will contain only zeros for this metric. API + // requests with metric filters on blocked metrics will fail. If reasons are + // empty, you have access to this metric. + // + // To learn more, see [Access and data-restriction + // management](https://support.google.com/analytics/answer/10851388). + repeated BlockedReason blocked_reasons = 8; + + // The display name of the category that this metrics belongs to. Similar + // dimensions and metrics are categorized together. + string category = 10; +} + +// The compatibility for a single dimension. +message DimensionCompatibility { + // The dimension metadata contains the API name for this compatibility + // information. The dimension metadata also contains other helpful information + // like the UI name and description. + optional DimensionMetadata dimension_metadata = 1; + + // The compatibility of this dimension. If the compatibility is COMPATIBLE, + // this dimension can be successfully added to the report. + optional Compatibility compatibility = 2; +} + +// The compatibility for a single metric. +message MetricCompatibility { + // The metric metadata contains the API name for this compatibility + // information. The metric metadata also contains other helpful information + // like the UI name and description. + optional MetricMetadata metric_metadata = 1; + + // The compatibility of this metric. If the compatibility is COMPATIBLE, + // this metric can be successfully added to the report. + optional Compatibility compatibility = 2; } // Represents aggregation of metrics. @@ -797,3 +930,30 @@ enum MetricType { // A length in kilometers; a special floating point type. TYPE_KILOMETERS = 13; } + +// Categories of data that you may be restricted from viewing on certain GA4 +// properties. +enum RestrictedMetricType { + // Unspecified type. + RESTRICTED_METRIC_TYPE_UNSPECIFIED = 0; + + // Cost metrics such as `adCost`. + COST_DATA = 1; + + // Revenue metrics such as `purchaseRevenue`. + REVENUE_DATA = 2; +} + +// The compatibility types for a single dimension or metric. +enum Compatibility { + // Unspecified compatibility. + COMPATIBILITY_UNSPECIFIED = 0; + + // The dimension or metric is compatible. This dimension or metric can be + // successfully added to a report. + COMPATIBLE = 1; + + // The dimension or metric is incompatible. This dimension or metric cannot be + // successfully added to a report. + INCOMPATIBLE = 2; +} diff --git a/google/api/BUILD.bazel b/google/api/BUILD.bazel index 1db2ad0c2..781061120 100644 --- a/google/api/BUILD.bazel +++ b/google/api/BUILD.bazel @@ -90,6 +90,11 @@ proto_library( deps = [":annotations_proto"], ) +proto_library( + name = "error_reason_proto", + srcs = ["error_reason.proto"], +) + proto_library( name = "field_behavior_proto", srcs = ["field_behavior.proto"], @@ -176,6 +181,14 @@ proto_library( ], ) +proto_library( + name = "routing_proto", + srcs = ["routing.proto"], + deps = [ + "@com_google_protobuf//:descriptor_proto", + ], +) + proto_library( name = "service_proto", srcs = ["service.proto"], @@ -238,7 +251,10 @@ proto_library( ############################################################################## # Java ############################################################################## -load("@com_google_googleapis_imports//:imports.bzl", "java_proto_library") +load("@com_google_googleapis_imports//:imports.bzl", + "java_proto_library", + "java_gapic_assembly_gradle_pkg" +) java_proto_library( name = "api_java_proto", @@ -255,6 +271,7 @@ java_proto_library( "distribution_proto", "documentation_proto", "endpoint_proto", + "error_reason_proto", "field_behavior_proto", "http_proto", "httpbody_proto", @@ -267,6 +284,48 @@ java_proto_library( "monitoring_proto", "quota_proto", "resource_proto", + "routing_proto", + "service_proto", + "source_info_proto", + "system_parameter_proto", + "usage_proto", + "visibility_proto", + ], +) + +# Please DO-NOT-REMOVE this section. +# This is required to generate java files for these protos. +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-api-java", + deps = [ + ":api_java_proto", + "annotations_proto", + "auth_proto", + "backend_proto", + "billing_proto", + "client_proto", + "config_change_proto", + "consumer_proto", + "context_proto", + "control_proto", + "distribution_proto", + "documentation_proto", + "endpoint_proto", + "error_reason_proto", + "field_behavior_proto", + "http_proto", + "httpbody_proto", + "label_proto", + "launch_stage_proto", + "log_proto", + "logging_proto", + "metric_proto", + "monitored_resource_proto", + "monitoring_proto", + "quota_proto", + "resource_proto", + "routing_proto", "service_proto", "source_info_proto", "system_parameter_proto", @@ -362,6 +421,12 @@ go_proto_library( protos = [":resource_proto"], ) +go_proto_library( + name = "routing_go_proto", + importpath = "google.golang.org/genproto/googleapis/api/annotations;annotations", + protos = [":routing_proto"], +) + go_proto_library( name = "serviceconfig_go_proto", importpath = "google.golang.org/genproto/googleapis/api/serviceconfig", @@ -522,6 +587,11 @@ cc_proto_library( deps = [":resource_proto"], ) +cc_proto_library( + name = "routing_cc_proto", + deps = [":routing_proto"], +) + cc_proto_library( name = "service_cc_proto", deps = [":service_proto"], @@ -672,6 +742,11 @@ py_proto_library( deps = [":resource_proto"], ) +py_proto_library( + name = "routing_py_proto", + deps = [":routing_proto"], +) + py_proto_library( name = "service_py_proto", deps = [":service_proto"], diff --git a/google/api/expr/conformance/v1alpha1/BUILD.bazel b/google/api/expr/conformance/v1alpha1/BUILD.bazel new file mode 100644 index 000000000..012109e27 --- /dev/null +++ b/google/api/expr/conformance/v1alpha1/BUILD.bazel @@ -0,0 +1,178 @@ +# This file was automatically generated by BuildFileGenerator + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") + +proto_library( + name = "conformance_proto", + srcs = [ + "conformance_service.proto", + ], + deps = [ + "//google/api/expr/v1alpha1:checked_proto", + "//google/api/expr/v1alpha1:eval_proto", + "//google/api/expr/v1alpha1:syntax_proto", + "//google/api:client_proto", + "//google/rpc:status_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "conformance_java_proto", + deps = [":conformance_proto"], +) + +java_grpc_library( + name = "conformance_java_grpc", + srcs = [":conformance_proto"], + deps = [":conformance_java_proto"], +) + +############################################################################## +# Go +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_proto_library", +) + +go_proto_library( + name = "conformance_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/api/expr/conformance/v1alpha1", + protos = [":conformance_proto"], + deps = [ + "//google/api/expr/v1alpha1:expr_go_proto", + "//google/api:annotations_go_proto", + "//google/rpc:status_go_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "moved_proto_library", + "py_grpc_library", + "py_proto_library", +) + +moved_proto_library( + name = "conformance_moved_proto", + srcs = [":conformance_proto"], + deps = [ + "//google/api/expr/v1alpha1:checked_proto", + "//google/api/expr/v1alpha1:eval_proto", + "//google/api/expr/v1alpha1:syntax_proto", + "//google/api:client_proto", + "//google/rpc:status_proto", + ], +) + +py_proto_library( + name = "conformance_py_proto", + deps = [":conformance_moved_proto"], +) + +py_grpc_library( + name = "conformance_py_grpc", + srcs = [":conformance_moved_proto"], + deps = [":conformance_py_proto"], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "conformance_php_proto", + deps = [":conformance_proto"], +) + +php_grpc_library( + name = "conformance_php_grpc", + srcs = [":conformance_proto"], + deps = [":conformance_php_proto"], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "conformance_ruby_proto", + deps = [":conformance_proto"], +) + +ruby_grpc_library( + name = "conformance_ruby_grpc", + srcs = [":conformance_proto"], + deps = [":conformance_ruby_proto"], +) + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "conformance_csharp_proto", + deps = [":conformance_proto"], +) + +csharp_grpc_library( + name = "conformance_csharp_grpc", + srcs = [":conformance_proto"], + deps = [":conformance_csharp_proto"], +) + +############################################################################## +# C++ +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "conformance_cc_proto", + deps = [":conformance_proto"], +) + +cc_grpc_library( + name = "conformance_cc_grpc", + srcs = [":conformance_proto"], + generate_mocks = True, + grpc_only = True, + deps = [":conformance_cc_proto"], +) diff --git a/google/api/expr/v1alpha1/conformance_service.proto b/google/api/expr/conformance/v1alpha1/conformance_service.proto similarity index 83% rename from google/api/expr/v1alpha1/conformance_service.proto rename to google/api/expr/conformance/v1alpha1/conformance_service.proto index 8dfa9d74d..916169843 100644 --- a/google/api/expr/v1alpha1/conformance_service.proto +++ b/google/api/expr/conformance/v1alpha1/conformance_service.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -14,18 +14,19 @@ syntax = "proto3"; -package google.api.expr.v1alpha1; +package google.api.expr.conformance.v1alpha1; import "google/api/expr/v1alpha1/checked.proto"; import "google/api/expr/v1alpha1/eval.proto"; import "google/api/expr/v1alpha1/syntax.proto"; import "google/rpc/status.proto"; +import "google/api/client.proto"; option cc_enable_arenas = true; option go_package = "google.golang.org/genproto/googleapis/api/expr/conformance/v1alpha1;confpb"; option java_multiple_files = true; option java_outer_classname = "ConformanceServiceProto"; -option java_package = "com.google.api.expr.v1alpha1"; +option java_package = "com.google.api.expr.conformance.v1alpha1"; // Access a CEL implementation from another process or machine. // A CEL implementation is decomposed as a parser, a static checker, @@ -33,6 +34,7 @@ option java_package = "com.google.api.expr.v1alpha1"; // a server for this API. The API will be used for conformance testing // and other utilities. service ConformanceService { + option (google.api.default_host) = "cel.googleapis.com"; // Transforms CEL source text into a parsed representation. rpc Parse(ParseRequest) returns (ParseResponse) { @@ -57,7 +59,7 @@ message ParseRequest { // Tag for version of CEL syntax, for future use. string syntax_version = 2; - // File or resource for source text, used in [SourceInfo][google.api.expr.v1alpha1.SourceInfo]. + // File or resource for source text, used in [SourceInfo][google.api.SourceInfo]. string source_location = 3; // Prevent macro expansion. See "Macros" in Language Defiinition. @@ -67,7 +69,7 @@ message ParseRequest { // Response message for the Parse method. message ParseResponse { // The parsed representation, or unset if parsing failed. - ParsedExpr parsed_expr = 1; + google.api.expr.v1alpha1.ParsedExpr parsed_expr = 1; // Any number of issues with [StatusDetails][] as the details. repeated google.rpc.Status issues = 2; @@ -76,18 +78,18 @@ message ParseResponse { // Request message for the Check method. message CheckRequest { // Required. The parsed representation of the CEL program. - ParsedExpr parsed_expr = 1; + google.api.expr.v1alpha1.ParsedExpr parsed_expr = 1; // Declarations of types for external variables and functions. // Required if program uses external variables or functions // not in the default environment. - repeated Decl type_env = 2; + repeated google.api.expr.v1alpha1.Decl type_env = 2; // The protocol buffer context. See "Name Resolution" in the // Language Definition. string container = 3; - // If true, use only the declarations in [type_env][google.api.expr.v1alpha1.CheckRequest.type_env]. If false (default), + // If true, use only the declarations in [type_env][google.api.expr.conformance.v1alpha1.CheckRequest.type_env]. If false (default), // add declarations for the standard definitions to the type environment. See // "Standard Definitions" in the Language Definition. bool no_std_env = 4; @@ -96,7 +98,7 @@ message CheckRequest { // Response message for the Check method. message CheckResponse { // The annotated representation, or unset if checking failed. - CheckedExpr checked_expr = 1; + google.api.expr.v1alpha1.CheckedExpr checked_expr = 1; // Any number of issues with [StatusDetails][] as the details. repeated google.rpc.Status issues = 2; @@ -107,27 +109,27 @@ message EvalRequest { // Required. Either the parsed or annotated representation of the CEL program. oneof expr_kind { // Evaluate based on the parsed representation. - ParsedExpr parsed_expr = 1; + google.api.expr.v1alpha1.ParsedExpr parsed_expr = 1; // Evaluate based on the checked representation. - CheckedExpr checked_expr = 2; + google.api.expr.v1alpha1.CheckedExpr checked_expr = 2; } // Bindings for the external variables. The types SHOULD be compatible - // with the type environment in [CheckRequest][google.api.expr.v1alpha1.CheckRequest], if checked. - map bindings = 3; + // with the type environment in [CheckRequest][google.api.expr.conformance.v1alpha1.CheckRequest], if checked. + map bindings = 3; - // SHOULD be the same container as used in [CheckRequest][google.api.expr.v1alpha1.CheckRequest], if checked. + // SHOULD be the same container as used in [CheckRequest][google.api.expr.conformance.v1alpha1.CheckRequest], if checked. string container = 4; } // Response message for the Eval method. message EvalResponse { // The execution result, or unset if execution couldn't start. - ExprValue result = 1; + google.api.expr.v1alpha1.ExprValue result = 1; // Any number of issues with [StatusDetails][] as the details. - // Note that CEL execution errors are reified into [ExprValue][google.api.expr.v1alpha1.ExprValue]. + // Note that CEL execution errors are reified into [ExprValue][]. // Nevertheless, we'll allow out-of-band issues to be raised, // which also makes the replies more regular. repeated google.rpc.Status issues = 2; @@ -157,8 +159,8 @@ message IssueDetails { Severity severity = 1; // Position in the source, if known. - SourcePosition position = 2; + google.api.expr.v1alpha1.SourcePosition position = 2; - // Expression ID from [Expr][google.api.expr.v1alpha1.Expr], 0 if unknown. + // Expression ID from [Expr][], 0 if unknown. int64 id = 3; } diff --git a/google/api/expr/v1alpha1/BUILD.bazel b/google/api/expr/v1alpha1/BUILD.bazel index c020dd0d3..a303701b2 100644 --- a/google/api/expr/v1alpha1/BUILD.bazel +++ b/google/api/expr/v1alpha1/BUILD.bazel @@ -27,19 +27,6 @@ proto_library( ], ) -proto_library( - name = "conformance_service_proto", - srcs = [ - "conformance_service.proto", - ], - deps = [ - ":checked_proto", - ":eval_proto", - ":syntax_proto", - "//google/rpc:status_proto", - ], -) - proto_library( name = "checked_proto", srcs = ["checked.proto"], @@ -100,15 +87,10 @@ java_proto_library( deps = [":expr_proto"], ) -java_proto_library( - name = "conformance_service_java_proto", - deps = [":conformance_service_proto"], -) - java_grpc_library( - name = "conformance_service_java_grpc", - srcs = [":conformance_service_proto"], - deps = [":conformance_service_java_proto"], + name = "expr_java_grpc", + srcs = [":expr_proto"], + deps = [":expr_java_proto"], ) ############################################################################## @@ -129,18 +111,6 @@ go_proto_library( ], ) -go_proto_library( - name = "conformance_service_go_proto", - compilers = ["@io_bazel_rules_go//proto:go_grpc"], - importpath = "google.golang.org/genproto/googleapis/api/expr/conformance/v1alpha1", - protos = [":conformance_service_proto"], - deps = [ - ":expr_go_proto", - "//google/rpc:status_go_proto", - ], -) - - ############################################################################## # Python ############################################################################## @@ -164,41 +134,24 @@ moved_proto_library( ], ) -moved_proto_library( - name = "conformance_service_moved_proto", - srcs = [":conformance_service_proto"], - deps = [ - ":expr_moved_proto", - "//google/rpc:status_proto", - ], -) - py_proto_library( name = "expr_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":expr_moved_proto"], ) -py_proto_library( - name = "conformance_service_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", - deps = [":conformance_service_moved_proto"], -) - py_grpc_library( - name = "conformance_service_py_grpc", - srcs = [":conformance_service_moved_proto"], - deps = [":conformance_service_py_proto"], + name = "expr_py_grpc", + srcs = [":expr_moved_proto"], + deps = [":expr_py_proto"], ) ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -206,15 +159,10 @@ php_proto_library( deps = [":expr_proto"], ) -php_proto_library( - name = "conformance_service_php_proto", - deps = [":conformance_service_proto"], -) - php_grpc_library( - name = "conformance_service_php_grpc", - srcs = [":conformance_service_proto"], - deps = [":conformance_service_php_proto"], + name = "expr_php_grpc", + srcs = [":expr_proto"], + deps = [":expr_php_proto"], ) ############################################################################## @@ -231,15 +179,10 @@ ruby_proto_library( deps = [":expr_proto"], ) -ruby_proto_library( - name = "conformance_service_ruby_proto", - deps = [":conformance_service_proto"], -) - ruby_grpc_library( - name = "conformance_service_ruby_grpc", - srcs = [":conformance_service_proto"], - deps = [":conformance_service_ruby_proto"], + name = "expr_ruby_grpc", + srcs = [":expr_proto"], + deps = [":expr_ruby_proto"], ) ############################################################################## @@ -256,15 +199,10 @@ csharp_proto_library( deps = [":expr_proto"], ) -csharp_proto_library( - name = "conformance_service_csharp_proto", - deps = [":conformance_service_proto"], -) - csharp_grpc_library( - name = "conformance_service_csharp_grpc", - srcs = [":conformance_service_proto"], - deps = [":conformance_service_csharp_proto"], + name = "expr_csharp_grpc", + srcs = [":expr_proto"], + deps = [":expr_csharp_proto"], ) ############################################################################## @@ -272,7 +210,6 @@ csharp_grpc_library( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - "cc_grpc_library", "cc_proto_library", ) @@ -281,18 +218,6 @@ cc_proto_library( deps = [":checked_proto"], ) -cc_proto_library( - name = "conformance_service_cc_proto", - deps = [":conformance_service_proto"], -) - -cc_grpc_library( - name = "conformance_service_cc_grpc", - srcs = [":conformance_service_proto"], - generate_mocks = True, - grpc_only = True, - deps = [":conformance_service_cc_proto"], -) cc_proto_library( name = "eval_cc_proto", diff --git a/google/api/expr/v1alpha1/checked.proto b/google/api/expr/v1alpha1/checked.proto index e6333b073..16aab0312 100644 --- a/google/api/expr/v1alpha1/checked.proto +++ b/google/api/expr/v1alpha1/checked.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -58,6 +58,15 @@ message CheckedExpr { // any optimizations made during the type-checking pass. SourceInfo source_info = 5; + // The expr version indicates the major / minor version number of the `expr` + // representation. + // + // The most common reason for a version change will be to indicate to the CEL + // runtimes that transformations have been performed on the expr during static + // analysis. In some cases, this will save the runtime the work of applying + // the same or similar transformations prior to evaluation. + string expr_version = 6; + // The checked expression. Semantically equivalent to the parsed `expr`, but // may have structural differences. Expr expr = 4; @@ -228,8 +237,7 @@ message Decl { } // Function declaration specifies one or more overloads which indicate the - // function's parameter types and return type, and may optionally specify a - // function definition in terms of CEL expressions. + // function's parameter types and return type. // // Functions have no observable side-effects (there may be side-effects like // logging which are not observable from CEL). diff --git a/google/api/expr/v1alpha1/eval.proto b/google/api/expr/v1alpha1/eval.proto index c09506830..38ae8bb66 100644 --- a/google/api/expr/v1alpha1/eval.proto +++ b/google/api/expr/v1alpha1/eval.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/google/api/expr/v1alpha1/explain.proto b/google/api/expr/v1alpha1/explain.proto index 5e1bc941d..9547661a6 100644 --- a/google/api/expr/v1alpha1/explain.proto +++ b/google/api/expr/v1alpha1/explain.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/google/api/expr/v1alpha1/syntax.proto b/google/api/expr/v1alpha1/syntax.proto index 3f7652f16..15ad1981c 100644 --- a/google/api/expr/v1alpha1/syntax.proto +++ b/google/api/expr/v1alpha1/syntax.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -99,7 +99,7 @@ message Expr { // A list creation expression. // - // Lists may either be homogenous, e.g. `[1, 2, 3]`, or heterogenous, e.g. + // Lists may either be homogenous, e.g. `[1, 2, 3]`, or heterogeneous, e.g. // `dyn([1, 'hello', 2.0])` message CreateList { // The elements part of the list. @@ -287,15 +287,16 @@ message SourceInfo { // `acme/app/AnvilPolicy.cel`. string location = 2; - // Monotonically increasing list of character offsets where newlines appear. + // Monotonically increasing list of code point offsets where newlines + // `\n` appear. // // The line number of a given position is the index `i` where for a given // `id` the `line_offsets[i] < id_positions[id] < line_offsets[i+1]`. The // column may be derivd from `id_positions[id] - line_offsets[i]`. repeated int32 line_offsets = 3; - // A map from the parse node id (e.g. `Expr.id`) to the character offset - // within source. + // A map from the parse node id (e.g. `Expr.id`) to the code point offset + // within the source. map positions = 4; // A map from the parse node id where a macro replacement was made to the @@ -314,7 +315,7 @@ message SourcePosition { // The soucre location name (e.g. file name). string location = 1; - // The character offset. + // The UTF-8 code unit offset. int32 offset = 2; // The 1-based index of the starting line in the source text diff --git a/google/api/expr/v1alpha1/value.proto b/google/api/expr/v1alpha1/value.proto index 3f2d250fa..99c56614c 100644 --- a/google/api/expr/v1alpha1/value.proto +++ b/google/api/expr/v1alpha1/value.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/google/api/field_behavior.proto b/google/api/field_behavior.proto index ee836185c..c4abe3b67 100644 --- a/google/api/field_behavior.proto +++ b/google/api/field_behavior.proto @@ -81,4 +81,10 @@ enum FieldBehavior { // in any arbitrary order, rather than the order the user originally // provided. Additionally, the list's order may or may not be stable. UNORDERED_LIST = 6; + + // Denotes that this field returns a non-empty default value if not set. + // This indicates that if the user provides the empty value in a request, + // a non-empty value will be returned. The user will not be aware of what + // non-empty value to expect. + NON_EMPTY_DEFAULT = 7; } diff --git a/google/api/httpbody.proto b/google/api/httpbody.proto index 596ba3578..00c80aba9 100644 --- a/google/api/httpbody.proto +++ b/google/api/httpbody.proto @@ -45,12 +45,15 @@ option objc_class_prefix = "GAPI"; // // // The raw HTTP body is bound to this field. // google.api.HttpBody http_body = 2; +// // } // // service ResourceService { -// rpc GetResource(GetResourceRequest) returns (google.api.HttpBody); -// rpc UpdateResource(google.api.HttpBody) returns -// (google.protobuf.Empty); +// rpc GetResource(GetResourceRequest) +// returns (google.api.HttpBody); +// rpc UpdateResource(google.api.HttpBody) +// returns (google.protobuf.Empty); +// // } // // Example with streaming methods: @@ -60,6 +63,7 @@ option objc_class_prefix = "GAPI"; // returns (stream google.api.HttpBody); // rpc UpdateCalendar(stream google.api.HttpBody) // returns (stream google.api.HttpBody); +// // } // // Use of this type only changes how the request and response bodies are diff --git a/google/api/resource.proto b/google/api/resource.proto index 2dfff1590..0ce0344f5 100644 --- a/google/api/resource.proto +++ b/google/api/resource.proto @@ -57,11 +57,7 @@ extend google.protobuf.MessageOptions { // // For Kubernetes resources, the format is {api group}/{kind}. // option (google.api.resource) = { // type: "pubsub.googleapis.com/Topic" -// name_descriptor: { -// pattern: "projects/{project}/topics/{topic}" -// parent_type: "cloudresourcemanager.googleapis.com/Project" -// parent_name_extractor: "projects/{project}" -// } +// pattern: "projects/{project}/topics/{topic}" // }; // } // @@ -69,10 +65,7 @@ extend google.protobuf.MessageOptions { // // resources: // - type: "pubsub.googleapis.com/Topic" -// name_descriptor: -// - pattern: "projects/{project}/topics/{topic}" -// parent_type: "cloudresourcemanager.googleapis.com/Project" -// parent_name_extractor: "projects/{project}" +// pattern: "projects/{project}/topics/{topic}" // // Sometimes, resources have multiple patterns, typically because they can // live under multiple parents. @@ -82,26 +75,10 @@ extend google.protobuf.MessageOptions { // message LogEntry { // option (google.api.resource) = { // type: "logging.googleapis.com/LogEntry" -// name_descriptor: { -// pattern: "projects/{project}/logs/{log}" -// parent_type: "cloudresourcemanager.googleapis.com/Project" -// parent_name_extractor: "projects/{project}" -// } -// name_descriptor: { -// pattern: "folders/{folder}/logs/{log}" -// parent_type: "cloudresourcemanager.googleapis.com/Folder" -// parent_name_extractor: "folders/{folder}" -// } -// name_descriptor: { -// pattern: "organizations/{organization}/logs/{log}" -// parent_type: "cloudresourcemanager.googleapis.com/Organization" -// parent_name_extractor: "organizations/{organization}" -// } -// name_descriptor: { -// pattern: "billingAccounts/{billing_account}/logs/{log}" -// parent_type: "billing.googleapis.com/BillingAccount" -// parent_name_extractor: "billingAccounts/{billing_account}" -// } +// pattern: "projects/{project}/logs/{log}" +// pattern: "folders/{folder}/logs/{log}" +// pattern: "organizations/{organization}/logs/{log}" +// pattern: "billingAccounts/{billing_account}/logs/{log}" // }; // } // @@ -109,48 +86,10 @@ extend google.protobuf.MessageOptions { // // resources: // - type: 'logging.googleapis.com/LogEntry' -// name_descriptor: -// - pattern: "projects/{project}/logs/{log}" -// parent_type: "cloudresourcemanager.googleapis.com/Project" -// parent_name_extractor: "projects/{project}" -// - pattern: "folders/{folder}/logs/{log}" -// parent_type: "cloudresourcemanager.googleapis.com/Folder" -// parent_name_extractor: "folders/{folder}" -// - pattern: "organizations/{organization}/logs/{log}" -// parent_type: "cloudresourcemanager.googleapis.com/Organization" -// parent_name_extractor: "organizations/{organization}" -// - pattern: "billingAccounts/{billing_account}/logs/{log}" -// parent_type: "billing.googleapis.com/BillingAccount" -// parent_name_extractor: "billingAccounts/{billing_account}" -// -// For flexible resources, the resource name doesn't contain parent names, but -// the resource itself has parents for policy evaluation. -// -// Example: -// -// message Shelf { -// option (google.api.resource) = { -// type: "library.googleapis.com/Shelf" -// name_descriptor: { -// pattern: "shelves/{shelf}" -// parent_type: "cloudresourcemanager.googleapis.com/Project" -// } -// name_descriptor: { -// pattern: "shelves/{shelf}" -// parent_type: "cloudresourcemanager.googleapis.com/Folder" -// } -// }; -// } -// -// The ResourceDescriptor Yaml config will look like: -// -// resources: -// - type: 'library.googleapis.com/Shelf' -// name_descriptor: -// - pattern: "shelves/{shelf}" -// parent_type: "cloudresourcemanager.googleapis.com/Project" -// - pattern: "shelves/{shelf}" -// parent_type: "cloudresourcemanager.googleapis.com/Folder" +// pattern: "projects/{project}/logs/{log}" +// pattern: "folders/{folder}/logs/{log}" +// pattern: "organizations/{organization}/logs/{log}" +// pattern: "billingAccounts/{billing_account}/logs/{log}" message ResourceDescriptor { // A description of the historical or future-looking state of the // resource pattern. diff --git a/google/api/routing.proto b/google/api/routing.proto new file mode 100644 index 000000000..013828389 --- /dev/null +++ b/google/api/routing.proto @@ -0,0 +1,461 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.api; + +import "google/protobuf/descriptor.proto"; + +option go_package = "google.golang.org/genproto/googleapis/api/annotations;annotations"; +option java_multiple_files = true; +option java_outer_classname = "RoutingProto"; +option java_package = "com.google.api"; +option objc_class_prefix = "GAPI"; + +extend google.protobuf.MethodOptions { + // See RoutingRule. + google.api.RoutingRule routing = 72295729; +} + +// Specifies the routing information that should be sent along with the request +// in the form of routing header. +// **NOTE:** All service configuration rules follow the "last one wins" order. +// +// The examples below will apply to an RPC which has the following request type: +// +// Message Definition: +// +// message Request { +// // The name of the Table +// // Values can be of the following formats: +// // - `projects//tables/` +// // - `projects//instances//tables/
` +// // - `region//zones//tables/
` +// string table_name = 1; +// +// // This value specifies routing for replication. +// // It can be in the following formats: +// // - `profiles/` +// // - a legacy `profile_id` that can be any string +// string app_profile_id = 2; +// } +// +// Example message: +// +// { +// table_name: projects/proj_foo/instances/instance_bar/table/table_baz, +// app_profile_id: profiles/prof_qux +// } +// +// The routing header consists of one or multiple key-value pairs. Every key +// and value must be percent-encoded, and joined together in the format of +// `key1=value1&key2=value2`. +// In the examples below I am skipping the percent-encoding for readablity. +// +// Example 1 +// +// Extracting a field from the request to put into the routing header +// unchanged, with the key equal to the field name. +// +// annotation: +// +// option (google.api.routing) = { +// // Take the `app_profile_id`. +// routing_parameters { +// field: "app_profile_id" +// } +// }; +// +// result: +// +// x-goog-request-params: app_profile_id=profiles/prof_qux +// +// Example 2 +// +// Extracting a field from the request to put into the routing header +// unchanged, with the key different from the field name. +// +// annotation: +// +// option (google.api.routing) = { +// // Take the `app_profile_id`, but name it `routing_id` in the header. +// routing_parameters { +// field: "app_profile_id" +// path_template: "{routing_id=**}" +// } +// }; +// +// result: +// +// x-goog-request-params: routing_id=profiles/prof_qux +// +// Example 3 +// +// Extracting a field from the request to put into the routing +// header, while matching a path template syntax on the field's value. +// +// NB: it is more useful to send nothing than to send garbage for the purpose +// of dynamic routing, since garbage pollutes cache. Thus the matching. +// +// Sub-example 3a +// +// The field matches the template. +// +// annotation: +// +// option (google.api.routing) = { +// // Take the `table_name`, if it's well-formed (with project-based +// // syntax). +// routing_parameters { +// field: "table_name" +// path_template: "{table_name=projects/*/instances/*/**}" +// } +// }; +// +// result: +// +// x-goog-request-params: +// table_name=projects/proj_foo/instances/instance_bar/table/table_baz +// +// Sub-example 3b +// +// The field does not match the template. +// +// annotation: +// +// option (google.api.routing) = { +// // Take the `table_name`, if it's well-formed (with region-based +// // syntax). +// routing_parameters { +// field: "table_name" +// path_template: "{table_name=regions/*/zones/*/**}" +// } +// }; +// +// result: +// +// +// +// Sub-example 3c +// +// Multiple alternative conflictingly named path templates are +// specified. The one that matches is used to construct the header. +// +// annotation: +// +// option (google.api.routing) = { +// // Take the `table_name`, if it's well-formed, whether +// // using the region- or projects-based syntax. +// +// routing_parameters { +// field: "table_name" +// path_template: "{table_name=regions/*/zones/*/**}" +// } +// routing_parameters { +// field: "table_name" +// path_template: "{table_name=projects/*/instances/*/**}" +// } +// }; +// +// result: +// +// x-goog-request-params: +// table_name=projects/proj_foo/instances/instance_bar/table/table_baz +// +// Example 4 +// +// Extracting a single routing header key-value pair by matching a +// template syntax on (a part of) a single request field. +// +// annotation: +// +// option (google.api.routing) = { +// // Take just the project id from the `table_name` field. +// routing_parameters { +// field: "table_name" +// path_template: "{routing_id=projects/*}/**" +// } +// }; +// +// result: +// +// x-goog-request-params: routing_id=projects/proj_foo +// +// Example 5 +// +// Extracting a single routing header key-value pair by matching +// several conflictingly named path templates on (parts of) a single request +// field. The last template to match "wins" the conflict. +// +// annotation: +// +// option (google.api.routing) = { +// // If the `table_name` does not have instances information, +// // take just the project id for routing. +// // Otherwise take project + instance. +// +// routing_parameters { +// field: "table_name" +// path_template: "{routing_id=projects/*}/**" +// } +// routing_parameters { +// field: "table_name" +// path_template: "{routing_id=projects/*/instances/*}/**" +// } +// }; +// +// result: +// +// x-goog-request-params: +// routing_id=projects/proj_foo/instances/instance_bar +// +// Example 6 +// +// Extracting multiple routing header key-value pairs by matching +// several non-conflicting path templates on (parts of) a single request field. +// +// Sub-example 6a +// +// Make the templates strict, so that if the `table_name` does not +// have an instance information, nothing is sent. +// +// annotation: +// +// option (google.api.routing) = { +// // The routing code needs two keys instead of one composite +// // but works only for the tables with the "project-instance" name +// // syntax. +// +// routing_parameters { +// field: "table_name" +// path_template: "{project_id=projects/*}/instances/*/**" +// } +// routing_parameters { +// field: "table_name" +// path_template: "projects/*/{instance_id=instances/*}/**" +// } +// }; +// +// result: +// +// x-goog-request-params: +// project_id=projects/proj_foo&instance_id=instances/instance_bar +// +// Sub-example 6b +// +// Make the templates loose, so that if the `table_name` does not +// have an instance information, just the project id part is sent. +// +// annotation: +// +// option (google.api.routing) = { +// // The routing code wants two keys instead of one composite +// // but will work with just the `project_id` for tables without +// // an instance in the `table_name`. +// +// routing_parameters { +// field: "table_name" +// path_template: "{project_id=projects/*}/**" +// } +// routing_parameters { +// field: "table_name" +// path_template: "projects/*/{instance_id=instances/*}/**" +// } +// }; +// +// result (is the same as 6a for our example message because it has the instance +// information): +// +// x-goog-request-params: +// project_id=projects/proj_foo&instance_id=instances/instance_bar +// +// Example 7 +// +// Extracting multiple routing header key-value pairs by matching +// several path templates on multiple request fields. +// +// NB: note that here there is no way to specify sending nothing if one of the +// fields does not match its template. E.g. if the `table_name` is in the wrong +// format, the `project_id` will not be sent, but the `routing_id` will be. +// The backend routing code has to be aware of that and be prepared to not +// receive a full complement of keys if it expects multiple. +// +// annotation: +// +// option (google.api.routing) = { +// // The routing needs both `project_id` and `routing_id` +// // (from the `app_profile_id` field) for routing. +// +// routing_parameters { +// field: "table_name" +// path_template: "{project_id=projects/*}/**" +// } +// routing_parameters { +// field: "app_profile_id" +// path_template: "{routing_id=**}" +// } +// }; +// +// result: +// +// x-goog-request-params: +// project_id=projects/proj_foo&routing_id=profiles/prof_qux +// +// Example 8 +// +// Extracting a single routing header key-value pair by matching +// several conflictingly named path templates on several request fields. The +// last template to match "wins" the conflict. +// +// annotation: +// +// option (google.api.routing) = { +// // The `routing_id` can be a project id or a region id depending on +// // the table name format, but only if the `app_profile_id` is not set. +// // If `app_profile_id` is set it should be used instead. +// +// routing_parameters { +// field: "table_name" +// path_template: "{routing_id=projects/*}/**" +// } +// routing_parameters { +// field: "table_name" +// path_template: "{routing_id=regions/*}/**" +// } +// routing_parameters { +// field: "app_profile_id" +// path_template: "{routing_id=**}" +// } +// }; +// +// result: +// +// x-goog-request-params: routing_id=profiles/prof_qux +// +// Example 9 +// +// Bringing it all together. +// +// annotation: +// +// option (google.api.routing) = { +// // For routing both `table_location` and a `routing_id` are needed. +// // +// // table_location can be either an instance id or a region+zone id. +// // +// // For `routing_id`, take the value of `app_profile_id` +// // - If it's in the format `profiles/`, send +// // just the `` part. +// // - If it's any other literal, send it as is. +// // If the `app_profile_id` is empty, and the `table_name` starts with +// // the project_id, send that instead. +// +// routing_parameters { +// field: "table_name" +// path_template: "projects/*/{table_location=instances/*}/tables/*" +// } +// routing_parameters { +// field: "table_name" +// path_template: "{table_location=regions/*/zones/*}/tables/*" +// } +// routing_parameters { +// field: "table_name" +// path_template: "{routing_id=projects/*}/**" +// } +// routing_parameters { +// field: "app_profile_id" +// path_template: "{routing_id=**}" +// } +// routing_parameters { +// field: "app_profile_id" +// path_template: "profiles/{routing_id=*}" +// } +// }; +// +// result: +// +// x-goog-request-params: +// table_location=instances/instance_bar&routing_id=prof_qux +message RoutingRule { + // A collection of Routing Parameter specifications. + // **NOTE:** If multiple Routing Parameters describe the same key + // (via the `path_template` field or via the `field` field when + // `path_template` is not provided), "last one wins" rule + // determines which Parameter gets used. + // See the examples for more details. + repeated RoutingParameter routing_parameters = 2; +} + +// A projection from an input message to the GRPC or REST header. +message RoutingParameter { + // A request field to extract the header key-value pair from. + string field = 1; + + // A pattern matching the key-value field. Optional. + // If not specified, the whole field specified in the `field` field will be + // taken as value, and its name used as key. If specified, it MUST contain + // exactly one named segment (along with any number of unnamed segments) The + // pattern will be matched over the field specified in the `field` field, then + // if the match is successful: + // - the name of the single named segment will be used as a header name, + // - the match value of the segment will be used as a header value; + // if the match is NOT successful, nothing will be sent. + // + // Example: + // + // -- This is a field in the request message + // | that the header value will be extracted from. + // | + // | -- This is the key name in the + // | | routing header. + // V | + // field: "table_name" v + // path_template: "projects/*/{table_location=instances/*}/tables/*" + // ^ ^ + // | | + // In the {} brackets is the pattern that -- | + // specifies what to extract from the | + // field as a value to be sent. | + // | + // The string in the field must match the whole pattern -- + // before brackets, inside brackets, after brackets. + // + // When looking at this specific example, we can see that: + // - A key-value pair with the key `table_location` + // and the value matching `instances/*` should be added + // to the x-goog-request-params routing header. + // - The value is extracted from the request message's `table_name` field + // if it matches the full pattern specified: + // `projects/*/instances/*/tables/*`. + // + // **NB:** If the `path_template` field is not provided, the key name is + // equal to the field name, and the whole field should be sent as a value. + // This makes the pattern for the field and the value functionally equivalent + // to `**`, and the configuration + // + // { + // field: "table_name" + // } + // + // is a functionally equivalent shorthand to: + // + // { + // field: "table_name" + // path_template: "{table_name=**}" + // } + // + // See Example 1 for more details. + string path_template = 2; +} diff --git a/google/api/servicecontrol/BUILD.bazel b/google/api/servicecontrol/BUILD.bazel index e69de29bb..0ed01f052 100644 --- a/google/api/servicecontrol/BUILD.bazel +++ b/google/api/servicecontrol/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-service_control. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for servicecontrol. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "servicecontrol_ruby_wrapper", + srcs = ["//google/api/servicecontrol/v1:servicecontrol_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-service_control", + "ruby-cloud-env-prefix=SERVICE_CONTROL", + "ruby-cloud-wrapper-of=v1:0.3", + "ruby-cloud-product-url=https://cloud.google.com/service-infrastructure/docs/overview/", + "ruby-cloud-api-id=servicecontrol.googleapis.com", + "ruby-cloud-api-shortname=servicecontrol", + ], + ruby_cloud_description = "The Service Control API provides control plane functionality to managed services, such as logging, monitoring, and status checks.", + ruby_cloud_title = "Service Control API", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-servicecontrol-ruby", + deps = [ + ":servicecontrol_ruby_wrapper", + ], +) diff --git a/google/api/servicecontrol/v1/BUILD.bazel b/google/api/servicecontrol/v1/BUILD.bazel index 770b9a3a6..45ef46f39 100644 --- a/google/api/servicecontrol/v1/BUILD.bazel +++ b/google/api/servicecontrol/v1/BUILD.bazel @@ -1,5 +1,6 @@ # This file was automatically generated by BuildFileGenerator -# https://github.com/googleapis/gapic-generator/tree/master/rules_gapic/bazel +# https://github.com/googleapis/rules_gapic/tree/master/bazel + # Most of the manual changes to this file will be overwritten. # It's **only** allowed to change the following rule attribute values: # - names of *_gapic_assembly_* rules @@ -7,6 +8,7 @@ # * extra_protoc_parameters # * extra_protoc_file_parameters # The complete list of preserved parameters can be found in the source code. + # This is an API workspace, having public visibility by default makes perfect sense. package(default_visibility = ["//visibility:public"]) @@ -31,6 +33,7 @@ proto_library( deps = [ "//google/api:annotations_proto", "//google/api:client_proto", + "//google/api:distribution_proto", "//google/logging/type:type_proto", "//google/rpc:status_proto", "@com_google_protobuf//:any_proto", @@ -51,98 +54,113 @@ proto_library_with_info( ############################################################################## # Java ############################################################################## -# load( -# "@com_google_googleapis_imports//:imports.bzl", -# "java_gapic_assembly_gradle_pkg", -# "java_gapic_library", -# "java_gapic_test", -# "java_grpc_library", -# "java_proto_library", -# ) -# java_proto_library( -# name = "servicecontrol_java_proto", -# deps = [":servicecontrol_proto"], -# ) -# java_grpc_library( -# name = "servicecontrol_java_grpc", -# srcs = [":servicecontrol_proto"], -# deps = [":servicecontrol_java_proto"], -# ) -# java_gapic_library( -# name = "servicecontrol_java_gapic", -# srcs = [":servicecontrol_proto_with_info"], -# grpc_service_config = None, -# package = "google.api.servicecontrol.v1", -# test_deps = [ -# ":servicecontrol_java_grpc", -# ], -# deps = [ -# ":servicecontrol_java_proto", -# ], -# ) -# java_gapic_test( -# name = "servicecontrol_java_gapic_test_suite", -# test_classes = [ -# ], -# runtime_deps = [":servicecontrol_java_gapic_test"], -# ) -# # Open Source Packages -# java_gapic_assembly_gradle_pkg( -# name = "google-cloud-api-servicecontrol-v1-java", -# deps = [ -# ":servicecontrol_java_gapic", -# ":servicecontrol_java_grpc", -# ":servicecontrol_java_proto", -# ":servicecontrol_proto", -# ], -# ) +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "servicecontrol_java_proto", + deps = [":servicecontrol_proto"], +) + +java_grpc_library( + name = "servicecontrol_java_grpc", + srcs = [":servicecontrol_proto"], + deps = [":servicecontrol_java_proto"], +) + +java_gapic_library( + name = "servicecontrol_java_gapic", + srcs = [":servicecontrol_proto_with_info"], + grpc_service_config = "servicecontrol_grpc_service_config.json", + test_deps = [ + ":servicecontrol_java_grpc", + ], + deps = [ + ":servicecontrol_java_proto", + ], +) + +java_gapic_test( + name = "servicecontrol_java_gapic_test_suite", + test_classes = [ + "com.google.api.servicecontrol.v1.QuotaControllerClientTest", + "com.google.api.servicecontrol.v1.ServiceControllerClientTest", + ], + runtime_deps = [":servicecontrol_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-api-servicecontrol-v1-java", + deps = [ + ":servicecontrol_java_gapic", + ":servicecontrol_java_grpc", + ":servicecontrol_java_proto", + ":servicecontrol_proto", + ], +) + ############################################################################## # Go ############################################################################## -# load( -# "@com_google_googleapis_imports//:imports.bzl", -# "go_gapic_assembly_pkg", -# "go_gapic_library", -# "go_proto_library", -# "go_test", -# ) -# go_proto_library( -# name = "servicecontrol_go_proto", -# compilers = ["@io_bazel_rules_go//proto:go_grpc"], -# importpath = "google.golang.org/genproto/googleapis/api/servicecontrol/v1", -# protos = [":servicecontrol_proto"], -# deps = [ -# "//google/api:annotations_go_proto", -# "//google/logging/type:type_proto", -# "//google/rpc:status_go_proto", -# ], -# ) -# go_gapic_library( -# name = "servicecontrol_go_gapic", -# srcs = [":servicecontrol_proto_with_info"], -# grpc_service_config = None, -# importpath = "cloud.google.com/go/api/servicecontrol/apiv1;servicecontrol", -# service_yaml = "servicecontrol.yaml", -# deps = [ -# ":servicecontrol_go_proto", -# "@io_bazel_rules_go//proto/wkt:duration_go_proto", -# ], -# ) -# go_test( -# name = "servicecontrol_go_gapic_test", -# srcs = [":servicecontrol_go_gapic_srcjar_test"], -# embed = [":servicecontrol_go_gapic"], -# importpath = "cloud.google.com/go/api/servicecontrol/apiv1", -# ) -# # Open Source Packages -# go_gapic_assembly_pkg( -# name = "gapi-cloud-api-servicecontrol-v1-go", -# deps = [ -# ":servicecontrol_go_gapic", -# ":servicecontrol_go_gapic_srcjar-test.srcjar", -# ":servicecontrol_go_proto", -# ], -# ) +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_gapic_assembly_pkg", + "go_gapic_library", + "go_proto_library", + "go_test", +) + +go_proto_library( + name = "servicecontrol_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/api/servicecontrol/v1", + protos = [":servicecontrol_proto"], + deps = [ + "//google/api:annotations_go_proto", + "//google/api:distribution_go_proto", + "//google/logging/type:type_go_proto", + "//google/rpc:status_go_proto", + ], +) + +go_gapic_library( + name = "servicecontrol_go_gapic", + srcs = [":servicecontrol_proto_with_info"], + grpc_service_config = "servicecontrol_grpc_service_config.json", + importpath = "cloud.google.com/go/api/servicecontrol/apiv1;servicecontrol", + metadata = True, + service_yaml = "servicecontrol.yaml", + deps = [ + ":servicecontrol_go_proto", + "@io_bazel_rules_go//proto/wkt:duration_go_proto", + ], +) + +go_test( + name = "servicecontrol_go_gapic_test", + srcs = [":servicecontrol_go_gapic_srcjar_test"], + embed = [":servicecontrol_go_gapic"], + importpath = "cloud.google.com/go/api/servicecontrol/apiv1", +) + +# Open Source Packages +go_gapic_assembly_pkg( + name = "gapi-cloud-api-servicecontrol-v1-go", + deps = [ + ":servicecontrol_go_gapic", + ":servicecontrol_go_gapic_srcjar-metadata.srcjar", + ":servicecontrol_go_gapic_srcjar-test.srcjar", + ":servicecontrol_go_proto", + ], +) + ############################################################################## # Python ############################################################################## @@ -155,12 +173,12 @@ load( py_gapic_library( name = "servicecontrol_py_gapic", srcs = [":servicecontrol_proto"], - grpc_service_config = None, + grpc_service_config = "servicecontrol_grpc_service_config.json", opt_args = [ - "warehouse-package-name=google-cloud-service-control", - "python-gapic-namespace=google.cloud", "python-gapic-name=servicecontrol", - ] + "python-gapic-namespace=google.cloud", + "warehouse-package-name=google-cloud-service-control", + ], ) # Open Source Packages @@ -173,14 +191,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -197,7 +214,8 @@ php_grpc_library( php_gapic_library( name = "servicecontrol_php_gapic", srcs = [":servicecontrol_proto_with_info"], - grpc_service_config = None, + grpc_service_config = "servicecontrol_grpc_service_config.json", + service_yaml = "servicecontrol.yaml", deps = [ ":servicecontrol_php_grpc", ":servicecontrol_php_proto", @@ -228,7 +246,7 @@ nodejs_gapic_library( package_name = "@google-cloud/service-control", src = ":servicecontrol_proto_with_info", extra_protoc_parameters = ["metadata"], - grpc_service_config = None, + grpc_service_config = "servicecontrol_grpc_service_config.json", package = "google.api.servicecontrol.v1", service_yaml = "servicecontrol.yaml", deps = [], @@ -239,6 +257,8 @@ nodejs_gapic_assembly_pkg( deps = [ ":servicecontrol_nodejs_gapic", ":servicecontrol_proto", + ## DO NOT CHANGE: Owlbot add dependency logging type protos. + "//google/logging/type:type_proto", ], ) @@ -268,12 +288,13 @@ ruby_cloud_gapic_library( name = "servicecontrol_ruby_gapic", srcs = [":servicecontrol_proto_with_info"], extra_protoc_parameters = [ - "ruby-cloud-gem-name=google-cloud-service_control-v1", - "ruby-cloud-env-prefix=SERVICE_CONTROL", - "ruby-cloud-product-url=https://cloud.google.com/service-infrastructure/docs/overview/", "ruby-cloud-api-id=servicecontrol.googleapis.com", "ruby-cloud-api-shortname=servicecontrol", + "ruby-cloud-env-prefix=SERVICE_CONTROL", + "ruby-cloud-gem-name=google-cloud-service_control-v1", + "ruby-cloud-product-url=https://cloud.google.com/service-infrastructure/docs/overview/", ], + grpc_service_config = "servicecontrol_grpc_service_config.json", ruby_cloud_description = "The Service Control API provides control plane functionality to managed services, such as logging, monitoring, and status checks.", ruby_cloud_title = "Service Control API V1", deps = [ @@ -318,7 +339,7 @@ csharp_gapic_library( name = "servicecontrol_csharp_gapic", srcs = [":servicecontrol_proto_with_info"], common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", - grpc_service_config = None, + grpc_service_config = "servicecontrol_grpc_service_config.json", deps = [ ":servicecontrol_csharp_grpc", ":servicecontrol_csharp_proto", @@ -334,7 +355,24 @@ csharp_gapic_assembly_pkg( ":servicecontrol_csharp_proto", ], ) + ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "servicecontrol_cc_proto", + deps = [":servicecontrol_proto"], +) + +cc_grpc_library( + name = "servicecontrol_cc_grpc", + srcs = [":servicecontrol_proto"], + grpc_only = True, + deps = [":servicecontrol_cc_proto"], +) diff --git a/google/api/servicecontrol/v1/check_error.proto b/google/api/servicecontrol/v1/check_error.proto index b165ca71e..4f63471a2 100644 --- a/google/api/servicecontrol/v1/check_error.proto +++ b/google/api/servicecontrol/v1/check_error.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/google/api/servicecontrol/v1/distribution.proto b/google/api/servicecontrol/v1/distribution.proto index 91f833874..e874e44aa 100644 --- a/google/api/servicecontrol/v1/distribution.proto +++ b/google/api/servicecontrol/v1/distribution.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,6 +16,8 @@ syntax = "proto3"; package google.api.servicecontrol.v1; +import "google/api/distribution.proto"; + option cc_enable_arenas = true; option csharp_namespace = "Google.Cloud.ServiceControl.V1"; option go_package = "google.golang.org/genproto/googleapis/api/servicecontrol/v1;servicecontrol"; @@ -29,10 +31,10 @@ option ruby_package = "Google::Cloud::ServiceControl::V1"; // points. It contains the size of the population of sample points plus // additional optional information: // -// - the arithmetic mean of the samples -// - the minimum and maximum of the samples -// - the sum-squared-deviation of the samples, used to compute variance -// - a histogram of the values of the sample points +// * the arithmetic mean of the samples +// * the minimum and maximum of the samples +// * the sum-squared-deviation of the samples, used to compute variance +// * a histogram of the values of the sample points message Distribution { // Describing buckets with constant width. message LinearBuckets { @@ -158,4 +160,7 @@ message Distribution { // Buckets with arbitrary user-provided width. ExplicitBuckets explicit_buckets = 9; } + + // Example points. Must be in increasing order of `value` field. + repeated google.api.Distribution.Exemplar exemplars = 10; } diff --git a/google/api/servicecontrol/v1/http_request.proto b/google/api/servicecontrol/v1/http_request.proto index ce1d5fb43..1587203e6 100644 --- a/google/api/servicecontrol/v1/http_request.proto +++ b/google/api/servicecontrol/v1/http_request.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/google/api/servicecontrol/v1/log_entry.proto b/google/api/servicecontrol/v1/log_entry.proto index c89f4617c..4f20aef0b 100644 --- a/google/api/servicecontrol/v1/log_entry.proto +++ b/google/api/servicecontrol/v1/log_entry.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/google/api/servicecontrol/v1/metric_value.proto b/google/api/servicecontrol/v1/metric_value.proto index e160e795b..c0e2a42d6 100644 --- a/google/api/servicecontrol/v1/metric_value.proto +++ b/google/api/servicecontrol/v1/metric_value.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -39,11 +39,13 @@ message MetricValue { // The start of the time period over which this metric value's measurement // applies. The time period has different semantics for different metric // types (cumulative, delta, and gauge). See the metric definition - // documentation in the service configuration for details. + // documentation in the service configuration for details. If not specified, + // [google.api.servicecontrol.v1.Operation.start_time][google.api.servicecontrol.v1.Operation.start_time] will be used. google.protobuf.Timestamp start_time = 2; // The end of the time period over which this metric value's measurement - // applies. + // applies. If not specified, + // [google.api.servicecontrol.v1.Operation.end_time][google.api.servicecontrol.v1.Operation.end_time] will be used. google.protobuf.Timestamp end_time = 3; // The value. The type of value used in the request must diff --git a/google/api/servicecontrol/v1/operation.proto b/google/api/servicecontrol/v1/operation.proto index 4bc67177d..7ce6cd43a 100644 --- a/google/api/servicecontrol/v1/operation.proto +++ b/google/api/servicecontrol/v1/operation.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -34,13 +34,13 @@ option ruby_package = "Google::Cloud::ServiceControl::V1"; message Operation { // Defines the importance of the data contained in the operation. enum Importance { - // The API implementation may cache and aggregate the data. - // The data may be lost when rare and unexpected system failures occur. + // Allows data caching, batching, and aggregation. It provides + // higher performance with higher data loss risk. LOW = 0; - // The API implementation doesn't cache and aggregate the data. - // If the method returns successfully, it's guaranteed that the data has - // been persisted in durable storage. + // Disables data aggregation to minimize data loss. It is for operations + // that contains significant monetary value or audit trail. This feature + // only applies to the client libraries. HIGH = 1; } @@ -76,8 +76,10 @@ message Operation { google.protobuf.Timestamp start_time = 4; // End time of the operation. - // Required when the operation is used in [ServiceController.Report][google.api.servicecontrol.v1.ServiceController.Report], - // but optional when the operation is used in [ServiceController.Check][google.api.servicecontrol.v1.ServiceController.Check]. + // Required when the operation is used in + // [ServiceController.Report][google.api.servicecontrol.v1.ServiceController.Report], + // but optional when the operation is used in + // [ServiceController.Check][google.api.servicecontrol.v1.ServiceController.Check]. google.protobuf.Timestamp end_time = 5; // Labels describing the operation. Only the following labels are allowed: diff --git a/google/api/servicecontrol/v1/quota_controller.proto b/google/api/servicecontrol/v1/quota_controller.proto index 0ca178600..58b13ee62 100644 --- a/google/api/servicecontrol/v1/quota_controller.proto +++ b/google/api/servicecontrol/v1/quota_controller.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -18,6 +18,7 @@ package google.api.servicecontrol.v1; import "google/api/annotations.proto"; import "google/api/servicecontrol/v1/metric_value.proto"; +import "google/rpc/status.proto"; import "google/api/client.proto"; option cc_enable_arenas = true; @@ -29,7 +30,7 @@ option java_package = "com.google.api.servicecontrol.v1"; option php_namespace = "Google\\Cloud\\ServiceControl\\V1"; option ruby_package = "Google::Cloud::ServiceControl::V1"; -// [Google Quota Control API](https://cloud.google.com/service-control/overview) +// [Google Quota Control API](/service-control/overview) // // Allows clients to allocate and release quota against a [managed // service](https://cloud.google.com/service-management/reference/rpc/google.api/servicemanagement.v1#google.api.servicemanagement.v1.ManagedService). @@ -108,14 +109,14 @@ message QuotaOperation { // Unimplemented. When used in AllocateQuotaRequest, this returns the // effective quota limit(s) in the response, and no quota check will be // performed. Not supported for other requests, and even for - // AllocateQuotaRequest, this is currently supported only for whitelisted + // AllocateQuotaRequest, this is currently supported only for allowlisted // services. QUERY_ONLY = 4; // The operation allocates quota for the amount specified in the service // configuration or specified using the quota metrics. If the requested // amount is higher than the available quota, request does not fail and - // remaining quota would become negative (going over the limit) + // remaining quota would become negative (going over the limit). // Not supported for Rate Quota. ADJUST_ONLY = 5; } @@ -139,6 +140,7 @@ message QuotaOperation { // (1) the quota operation is performed on non-API resources. // (2) quota_metrics is set because the caller is doing quota override. // + // // Example of an RPC method name: // google.example.library.v1.LibraryService.CreateShelf string method_name = 2; @@ -236,4 +238,8 @@ message QuotaError { // Free-form text that provides details on the cause of the error. string description = 3; + + // Contains additional information about the quota error. + // If available, `status.code` will be non zero. + google.rpc.Status status = 4; } diff --git a/google/api/servicecontrol/v1/service_controller.proto b/google/api/servicecontrol/v1/service_controller.proto index 6916853f2..8580fc7a8 100644 --- a/google/api/servicecontrol/v1/service_controller.proto +++ b/google/api/servicecontrol/v1/service_controller.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -17,11 +17,11 @@ syntax = "proto3"; package google.api.servicecontrol.v1; import "google/api/annotations.proto"; +import "google/api/client.proto"; import "google/api/servicecontrol/v1/check_error.proto"; import "google/api/servicecontrol/v1/operation.proto"; import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; -import "google/api/client.proto"; option cc_enable_arenas = true; option csharp_namespace = "Google.Cloud.ServiceControl.V1"; @@ -33,7 +33,7 @@ option objc_class_prefix = "GASC"; option php_namespace = "Google\\Cloud\\ServiceControl\\V1"; option ruby_package = "Google::Cloud::ServiceControl::V1"; -// [Google Service Control API](https://cloud.google.com/service-control/overview) +// [Google Service Control API](/service-control/overview) // // Lets clients check and report operations against a [managed // service](https://cloud.google.com/service-management/reference/rpc/google.api/servicemanagement.v1#google.api.servicemanagement.v1.ManagedService). @@ -54,7 +54,8 @@ service ServiceController { // propagation, therefore callers MUST NOT depend on the `Check` method having // the latest policy information. // - // NOTE: the [CheckRequest][google.api.servicecontrol.v1.CheckRequest] has the size limit of 64KB. + // NOTE: the [CheckRequest][google.api.servicecontrol.v1.CheckRequest] has + // the size limit (wire-format byte size) of 1MB. // // This method requires the `servicemanagement.services.check` permission // on the specified service. For more information, see @@ -75,8 +76,8 @@ service ServiceController { // the aggregation time window to avoid data loss risk more than 0.01% // for business and compliance reasons. // - // NOTE: the [ReportRequest][google.api.servicecontrol.v1.ReportRequest] has the size limit (wire-format byte size) of - // 1MB. + // NOTE: the [ReportRequest][google.api.servicecontrol.v1.ReportRequest] has + // the size limit (wire-format byte size) of 1MB. // // This method requires the `servicemanagement.services.report` permission // on the specified service. For more information, see @@ -163,8 +164,9 @@ message CheckResponse { int64 consumer_number = 3; } - // The same operation_id value used in the [CheckRequest][google.api.servicecontrol.v1.CheckRequest]. - // Used for logging and diagnostics purposes. + // The same operation_id value used in the + // [CheckRequest][google.api.servicecontrol.v1.CheckRequest]. Used for logging + // and diagnostics purposes. string operation_id = 1; // Indicate the decision of the check. @@ -203,7 +205,8 @@ message ReportRequest { // // There is no limit on the number of operations in the same ReportRequest, // however the ReportRequest size should be no larger than 1MB. See - // [ReportResponse.report_errors][google.api.servicecontrol.v1.ReportResponse.report_errors] for partial failure behavior. + // [ReportResponse.report_errors][google.api.servicecontrol.v1.ReportResponse.report_errors] + // for partial failure behavior. repeated Operation operations = 2; // Specifies which version of service config should be used to process the @@ -216,12 +219,16 @@ message ReportRequest { // Response message for the Report method. message ReportResponse { - // Represents the processing error of one [Operation][google.api.servicecontrol.v1.Operation] in the request. + // Represents the processing error of one + // [Operation][google.api.servicecontrol.v1.Operation] in the request. message ReportError { - // The [Operation.operation_id][google.api.servicecontrol.v1.Operation.operation_id] value from the request. + // The + // [Operation.operation_id][google.api.servicecontrol.v1.Operation.operation_id] + // value from the request. string operation_id = 1; - // Details of the error when processing the [Operation][google.api.servicecontrol.v1.Operation]. + // Details of the error when processing the + // [Operation][google.api.servicecontrol.v1.Operation]. google.rpc.Status status = 2; } diff --git a/google/api/servicecontrol/v1/servicecontrol.yaml b/google/api/servicecontrol/v1/servicecontrol.yaml index a1cad5648..7a2b56855 100644 --- a/google/api/servicecontrol/v1/servicecontrol.yaml +++ b/google/api/servicecontrol/v1/servicecontrol.yaml @@ -1,5 +1,5 @@ type: google.api.Service -config_version: 2 +config_version: 3 name: servicecontrol.googleapis.com title: Service Control API @@ -9,8 +9,8 @@ apis: documentation: summary: |- - Provides control plane functionality to managed services, such as logging, - monitoring, and status checks. + Provides admission control and telemetry reporting for services integrated + with Service Infrastructure. overview: |- Google Service Control provides control plane functionality to managed services, such as logging, monitoring, and status checks. This page diff --git a/google/api/servicecontrol/v1/servicecontrol_grpc_service_config.json b/google/api/servicecontrol/v1/servicecontrol_grpc_service_config.json new file mode 100644 index 000000000..e56066167 --- /dev/null +++ b/google/api/servicecontrol/v1/servicecontrol_grpc_service_config.json @@ -0,0 +1,29 @@ +{ + "methodConfig": [ + { + "name": [ + { + "service": "google.api.servicecontrol.v1.ServiceController", + "method": "Check" + } + ], + "timeout": "5s", + "retryPolicy": { + "maxAttempts": 5, + "initialBackoff": "1s", + "maxBackoff": "10s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": ["UNAVAILABLE"] + } + }, + { + "name": [ + { + "service": "google.api.servicecontrol.v1.ServiceController", + "method": "Report" + } + ], + "timeout": "16s" + } + ] +} diff --git a/google/api/servicemanagement/BUILD.bazel b/google/api/servicemanagement/BUILD.bazel index 1e5b8c2af..08d5c1336 100644 --- a/google/api/servicemanagement/BUILD.bazel +++ b/google/api/servicemanagement/BUILD.bazel @@ -1 +1,40 @@ -exports_files(glob(["*.yaml"])) \ No newline at end of file +# This build file includes a target for the Ruby wrapper library for +# google-cloud-service_management. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for servicemanagement. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "servicemanagement_ruby_wrapper", + srcs = ["//google/api/servicemanagement/v1:servicemanagement_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-service_management", + "ruby-cloud-env-prefix=SERVICE_MANAGEMENT", + "ruby-cloud-wrapper-of=v1:0.3", + "ruby-cloud-product-url=https://cloud.google.com/service-infrastructure/docs/overview/", + "ruby-cloud-api-id=servicemanagement.googleapis.com", + "ruby-cloud-api-shortname=servicemanagement", + ], + ruby_cloud_description = "Google Service Management allows service producers to publish their services on Google Cloud Platform so that they can be discovered and used by service consumers.", + ruby_cloud_title = "Service Management API", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-servicemanagement-ruby", + deps = [ + ":servicemanagement_ruby_wrapper", + ], +) diff --git a/google/api/servicemanagement/v1/BUILD.bazel b/google/api/servicemanagement/v1/BUILD.bazel index bf764ccfd..835ab0d45 100644 --- a/google/api/servicemanagement/v1/BUILD.bazel +++ b/google/api/servicemanagement/v1/BUILD.bazel @@ -184,14 +184,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -350,4 +349,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "servicemanagement_cc_proto", + deps = [":servicemanagement_proto"], +) + +cc_grpc_library( + name = "servicemanagement_cc_grpc", + srcs = [":servicemanagement_proto"], + grpc_only = True, + deps = [":servicemanagement_cc_proto"], +) diff --git a/google/api/serviceusage/BUILD.bazel b/google/api/serviceusage/BUILD.bazel new file mode 100644 index 000000000..011cfc2b8 --- /dev/null +++ b/google/api/serviceusage/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-service_usage. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for serviceusage. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "serviceusage_ruby_wrapper", + srcs = ["//google/api/serviceusage/v1:serviceusage_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-service_usage", + "ruby-cloud-env-prefix=SERVICE_USAGE", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/service-usage/", + "ruby-cloud-api-id=serviceusage.googleapis.com", + "ruby-cloud-api-shortname=serviceusage", + ], + ruby_cloud_description = "Service Usage is an infrastructure service of Google Cloud that lets you list and manage other APIs and services in your Cloud projects. You can list and manage Google Cloud services and their APIs, as well as services created using Cloud Endpoints.", + ruby_cloud_title = "Service Usage", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-serviceusage-ruby", + deps = [ + ":serviceusage_ruby_wrapper", + ], +) diff --git a/google/api/serviceusage/v1/BUILD.bazel b/google/api/serviceusage/v1/BUILD.bazel index c8e9b780a..dab03a80c 100644 --- a/google/api/serviceusage/v1/BUILD.bazel +++ b/google/api/serviceusage/v1/BUILD.bazel @@ -176,6 +176,11 @@ py_gapic_library( name = "serviceusage_py_gapic", srcs = [":serviceusage_proto"], grpc_service_config = "serviceusage_grpc_service_config.json", + opt_args = [ + "warehouse-package-name=google-cloud-service-usage", + "python-gapic-namespace=google.cloud", + "python-gapic-name=service_usage", + ], ) # Open Source Packages @@ -191,10 +196,10 @@ py_gapic_assembly_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -283,9 +288,15 @@ ruby_cloud_gapic_library( name = "serviceusage_ruby_gapic", srcs = [":serviceusage_proto_with_info"], extra_protoc_parameters = [ - "ruby-cloud-gem-name=google-cloud-api-serviceusage-v1", + "ruby-cloud-gem-name=google-cloud-service_usage-v1", + "ruby-cloud-env-prefix=SERVICE_USAGE", + "ruby-cloud-product-url=https://cloud.google.com/service-usage/", + "ruby-cloud-api-id=serviceusage.googleapis.com", + "ruby-cloud-api-shortname=serviceusage", ], grpc_service_config = "serviceusage_grpc_service_config.json", + ruby_cloud_description = "Service Usage is an infrastructure service of Google Cloud that lets you list and manage other APIs and services in your Cloud projects. You can list and manage Google Cloud services and their APIs, as well as services created using Cloud Endpoints.", + ruby_cloud_title = "Service Usage V1", deps = [ ":serviceusage_ruby_grpc", ":serviceusage_ruby_proto", @@ -348,4 +359,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "serviceusage_cc_proto", + deps = [":serviceusage_proto"], +) + +cc_grpc_library( + name = "serviceusage_cc_grpc", + srcs = [":serviceusage_proto"], + grpc_only = True, + deps = [":serviceusage_cc_proto"], +) diff --git a/google/api/serviceusage/v1/serviceusage.proto b/google/api/serviceusage/v1/serviceusage.proto index fad7c3271..41c5e2d4c 100644 --- a/google/api/serviceusage/v1/serviceusage.proto +++ b/google/api/serviceusage/v1/serviceusage.proto @@ -209,7 +209,7 @@ message ListServicesRequest { // Requested size of the next page of data. // Requested page size cannot exceed 200. - // If not set, the default page size is 50. + // If not set, the default page size is 50. int32 page_size = 2; // Token identifying which result to start with, which is returned by a diff --git a/google/api/serviceusage/v1beta1/BUILD.bazel b/google/api/serviceusage/v1beta1/BUILD.bazel index 338a8dd4a..4ac6a5ea2 100644 --- a/google/api/serviceusage/v1beta1/BUILD.bazel +++ b/google/api/serviceusage/v1beta1/BUILD.bazel @@ -188,10 +188,10 @@ py_gapic_assembly_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -279,8 +279,16 @@ ruby_grpc_library( ruby_cloud_gapic_library( name = "serviceusage_ruby_gapic", srcs = [":serviceusage_proto_with_info"], - extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-api-serviceusage-v1beta1"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-service_usage-v1beta1", + "ruby-cloud-env-prefix=SERVICE_USAGE", + "ruby-cloud-product-url=https://cloud.google.com/service-usage/", + "ruby-cloud-api-id=serviceusage.googleapis.com", + "ruby-cloud-api-shortname=serviceusage", + ], grpc_service_config = "serviceusage_grpc_service_config.json", + ruby_cloud_description = "Service Usage is an infrastructure service of Google Cloud that lets you list and manage other APIs and services in your Cloud projects. You can list and manage Google Cloud services and their APIs, as well as services created using Cloud Endpoints.", + ruby_cloud_title = "Service Usage V1beta1", deps = [ ":serviceusage_ruby_grpc", ":serviceusage_ruby_proto", diff --git a/google/appengine/BUILD.bazel b/google/appengine/BUILD.bazel new file mode 100644 index 000000000..8a194edf5 --- /dev/null +++ b/google/appengine/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-app_engine. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for appengine. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "appengine_ruby_wrapper", + srcs = ["//google/appengine/v1:appengine_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-app_engine", + "ruby-cloud-env-prefix=APP_ENGINE", + "ruby-cloud-wrapper-of=v1:0.3", + "ruby-cloud-product-url=https://cloud.google.com/appengine/docs/admin-api/", + "ruby-cloud-api-id=appengine.googleapis.com", + "ruby-cloud-api-shortname=appengine", + ], + ruby_cloud_description = "The App Engine Admin API provisions and manages your App Engine applications.", + ruby_cloud_title = "App Engine Admin", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-appengine-ruby", + deps = [ + ":appengine_ruby_wrapper", + ], +) diff --git a/google/appengine/legacy/BUILD.bazel b/google/appengine/legacy/BUILD.bazel index ab1592b97..bea806a2d 100644 --- a/google/appengine/legacy/BUILD.bazel +++ b/google/appengine/legacy/BUILD.bazel @@ -76,7 +76,6 @@ moved_proto_library( py_proto_library( name = "legacy_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":legacy_moved_proto"], ) @@ -88,12 +87,11 @@ py_grpc_library( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -160,4 +158,20 @@ csharp_grpc_library( ############################################################################## # C++ ############################################################################## -# Put your C++ code here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "legacy_cc_proto", + deps = [":legacy_proto"], +) + +cc_grpc_library( + name = "legacy_cc_grpc", + srcs = [":legacy_proto"], + grpc_only = True, + deps = [":legacy_cc_proto"], +) diff --git a/google/appengine/logging/v1/BUILD.bazel b/google/appengine/logging/v1/BUILD.bazel index 23a275f91..ad4db5290 100644 --- a/google/appengine/logging/v1/BUILD.bazel +++ b/google/appengine/logging/v1/BUILD.bazel @@ -87,12 +87,11 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -158,4 +157,20 @@ csharp_grpc_library( ############################################################################## # C++ ############################################################################## -# Put your C++ code here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "logging_cc_proto", + deps = [":logging_proto"], +) + +cc_grpc_library( + name = "logging_cc_grpc", + srcs = [":logging_proto"], + grpc_only = True, + deps = [":logging_cc_proto"], +) diff --git a/google/appengine/v1/BUILD.bazel b/google/appengine/v1/BUILD.bazel index 2d2b178d7..7ed290422 100644 --- a/google/appengine/v1/BUILD.bazel +++ b/google/appengine/v1/BUILD.bazel @@ -206,14 +206,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -372,4 +371,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "appengine_cc_proto", + deps = [":appengine_proto"], +) + +cc_grpc_library( + name = "appengine_cc_grpc", + srcs = [":appengine_proto"], + grpc_only = True, + deps = [":appengine_cc_proto"], +) diff --git a/google/appengine/v1beta/BUILD.bazel b/google/appengine/v1beta/BUILD.bazel index 07ba196d8..e79f08375 100644 --- a/google/appengine/v1beta/BUILD.bazel +++ b/google/appengine/v1beta/BUILD.bazel @@ -107,7 +107,6 @@ moved_proto_library( py_proto_library( name = "appengine_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":appengine_moved_proto"], ) @@ -119,12 +118,11 @@ py_grpc_library( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/apps/alertcenter/v1beta1/BUILD.bazel b/google/apps/alertcenter/v1beta1/BUILD.bazel index d5d53b56b..33820b5f1 100644 --- a/google/apps/alertcenter/v1beta1/BUILD.bazel +++ b/google/apps/alertcenter/v1beta1/BUILD.bazel @@ -176,10 +176,10 @@ py_gapic_assembly_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/apps/drive/activity/v2/BUILD.bazel b/google/apps/drive/activity/v2/BUILD.bazel index 3fad496b1..084ccc571 100644 --- a/google/apps/drive/activity/v2/BUILD.bazel +++ b/google/apps/drive/activity/v2/BUILD.bazel @@ -174,14 +174,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/apps/market/v2/BUILD.bazel b/google/apps/market/v2/BUILD.bazel index 5fdc1b4d1..f385d4ae1 100644 --- a/google/apps/market/v2/BUILD.bazel +++ b/google/apps/market/v2/BUILD.bazel @@ -170,14 +170,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/apps/script/type/BUILD.bazel b/google/apps/script/type/BUILD.bazel index 094d0832a..2dd3aa8b0 100644 --- a/google/apps/script/type/BUILD.bazel +++ b/google/apps/script/type/BUILD.bazel @@ -10,14 +10,16 @@ load("@rules_proto//proto:defs.bzl", "proto_library") ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", "csharp_grpc_library", "csharp_proto_library", "go_proto_library", + "java_gapic_assembly_gradle_pkg", "java_grpc_library", "java_proto_library", "moved_proto_library", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", "py_grpc_library", "py_proto_library", "ruby_grpc_library", @@ -51,6 +53,18 @@ java_grpc_library( deps = [":type_java_proto"], ) +# Please DO-NOT-REMOVE this section. +# This is required to generate java files for these protos. +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-apps-script-type-java", + deps = [ + ":type_java_grpc", + ":type_java_proto", + ":type_proto", + ], +) + go_proto_library( name = "type_go_proto", compilers = ["@io_bazel_rules_go//proto:go_grpc"], @@ -69,7 +83,6 @@ moved_proto_library( py_proto_library( name = "type_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":type_moved_proto"], ) @@ -112,6 +125,17 @@ csharp_grpc_library( deps = [":type_csharp_proto"], ) +# Open Source Packages +csharp_gapic_assembly_pkg( + name = "google-apps-script-type-csharp", + package_name = "Google.Apps.Script.Type", + generate_nongapic_package = True, + deps = [ + ":type_csharp_grpc", + ":type_csharp_proto", + ], +) + ############################################################################## # C++ ############################################################################## diff --git a/google/apps/script/type/calendar/BUILD.bazel b/google/apps/script/type/calendar/BUILD.bazel index 96efe84a3..18a160348 100644 --- a/google/apps/script/type/calendar/BUILD.bazel +++ b/google/apps/script/type/calendar/BUILD.bazel @@ -15,9 +15,10 @@ load( "go_proto_library", "java_grpc_library", "java_proto_library", + "java_gapic_assembly_gradle_pkg", "moved_proto_library", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", "py_grpc_library", "py_proto_library", "ruby_grpc_library", @@ -49,6 +50,18 @@ java_grpc_library( deps = [":calendar_java_proto"], ) +# Please DO-NOT-REMOVE this section. +# This is required to generate java files for these protos. +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-apps-script-type-calendar-java", + deps = [ + ":calendar_java_proto", + ":calendar_java_grpc", + ":calendar_proto", + ], +) + go_proto_library( name = "calendar_go_proto", compilers = ["@io_bazel_rules_go//proto:go_grpc"], @@ -71,7 +84,6 @@ moved_proto_library( py_proto_library( name = "calendar_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":calendar_moved_proto"], ) diff --git a/google/apps/script/type/docs/BUILD.bazel b/google/apps/script/type/docs/BUILD.bazel index 0f74a0dfc..bf87cd484 100644 --- a/google/apps/script/type/docs/BUILD.bazel +++ b/google/apps/script/type/docs/BUILD.bazel @@ -15,9 +15,10 @@ load( "go_proto_library", "java_grpc_library", "java_proto_library", + "java_gapic_assembly_gradle_pkg", "moved_proto_library", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", "py_grpc_library", "py_proto_library", "ruby_grpc_library", @@ -49,6 +50,18 @@ java_grpc_library( deps = [":docs_java_proto"], ) +# Please DO-NOT-REMOVE this section. +# This is required to generate java files for these protos. +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-apps-script-type-docs-java", + deps = [ + ":docs_java_proto", + ":docs_java_grpc", + ":docs_proto", + ], +) + go_proto_library( name = "docs_go_proto", compilers = ["@io_bazel_rules_go//proto:go_grpc"], @@ -71,7 +84,6 @@ moved_proto_library( py_proto_library( name = "docs_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":docs_moved_proto"], ) diff --git a/google/apps/script/type/drive/BUILD.bazel b/google/apps/script/type/drive/BUILD.bazel index d1ff9402b..c63487ba6 100644 --- a/google/apps/script/type/drive/BUILD.bazel +++ b/google/apps/script/type/drive/BUILD.bazel @@ -15,9 +15,10 @@ load( "go_proto_library", "java_grpc_library", "java_proto_library", + "java_gapic_assembly_gradle_pkg", "moved_proto_library", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", "py_grpc_library", "py_proto_library", "ruby_grpc_library", @@ -48,6 +49,18 @@ java_grpc_library( deps = [":drive_java_proto"], ) +# Please DO-NOT-REMOVE this section. +# This is required to generate java files for these protos. +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-apps-script-type-drive-java", + deps = [ + ":drive_java_proto", + ":drive_java_grpc", + ":drive_proto", + ], +) + go_proto_library( name = "drive_go_proto", compilers = ["@io_bazel_rules_go//proto:go_grpc"], @@ -68,7 +81,6 @@ moved_proto_library( py_proto_library( name = "drive_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":drive_moved_proto"], ) diff --git a/google/apps/script/type/gmail/BUILD.bazel b/google/apps/script/type/gmail/BUILD.bazel index b5268e02d..1990f63f2 100644 --- a/google/apps/script/type/gmail/BUILD.bazel +++ b/google/apps/script/type/gmail/BUILD.bazel @@ -15,9 +15,10 @@ load( "go_proto_library", "java_grpc_library", "java_proto_library", + "java_gapic_assembly_gradle_pkg", "moved_proto_library", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", "py_grpc_library", "py_proto_library", "ruby_grpc_library", @@ -49,6 +50,19 @@ java_grpc_library( deps = [":gmail_java_proto"], ) +# Please DO-NOT-REMOVE this section. +# This is required to generate java files for these protos. +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-apps-script-type-gmail-java", + deps = [ + ":gmail_java_proto", + ":gmail_java_grpc", + ":gmail_proto", + ], +) + + go_proto_library( name = "gmail_go_proto", compilers = ["@io_bazel_rules_go//proto:go_grpc"], @@ -70,7 +84,6 @@ moved_proto_library( py_proto_library( name = "gmail_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":gmail_moved_proto"], ) diff --git a/google/apps/script/type/sheets/BUILD.bazel b/google/apps/script/type/sheets/BUILD.bazel index 14600b677..94ba71efa 100644 --- a/google/apps/script/type/sheets/BUILD.bazel +++ b/google/apps/script/type/sheets/BUILD.bazel @@ -15,9 +15,10 @@ load( "go_proto_library", "java_grpc_library", "java_proto_library", + "java_gapic_assembly_gradle_pkg", "moved_proto_library", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", "py_grpc_library", "py_proto_library", "ruby_grpc_library", @@ -49,6 +50,18 @@ java_grpc_library( deps = [":sheets_java_proto"], ) +# Please DO-NOT-REMOVE this section. +# This is required to generate java files for these protos. +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-apps-script-type-sheets-java", + deps = [ + ":sheets_java_proto", + ":sheets_java_grpc", + ":sheets_proto", + ], +) + go_proto_library( name = "sheets_go_proto", compilers = ["@io_bazel_rules_go//proto:go_grpc"], @@ -71,7 +84,6 @@ moved_proto_library( py_proto_library( name = "sheets_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":sheets_moved_proto"], ) diff --git a/google/apps/script/type/slides/BUILD.bazel b/google/apps/script/type/slides/BUILD.bazel index 7ff196055..95ff616a4 100644 --- a/google/apps/script/type/slides/BUILD.bazel +++ b/google/apps/script/type/slides/BUILD.bazel @@ -15,9 +15,10 @@ load( "go_proto_library", "java_grpc_library", "java_proto_library", + "java_gapic_assembly_gradle_pkg", "moved_proto_library", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", "py_grpc_library", "py_proto_library", "ruby_grpc_library", @@ -49,6 +50,18 @@ java_grpc_library( deps = [":slides_java_proto"], ) +# Please DO-NOT-REMOVE this section. +# This is required to generate java files for these protos. +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-apps-script-type-slides-java", + deps = [ + ":slides_java_proto", + ":slides_java_grpc", + ":slides_proto", + ], +) + go_proto_library( name = "slides_go_proto", compilers = ["@io_bazel_rules_go//proto:go_grpc"], @@ -71,7 +84,6 @@ moved_proto_library( py_proto_library( name = "slides_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":slides_moved_proto"], ) diff --git a/google/area120/tables/BUILD.bazel b/google/area120/tables/BUILD.bazel new file mode 100644 index 000000000..3814ace03 --- /dev/null +++ b/google/area120/tables/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-area120-tables. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for area120tables. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1alpha1 in this case. +ruby_cloud_gapic_library( + name = "area120tables_ruby_wrapper", + srcs = ["//google/area120/tables/v1alpha1:tables_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-area120-tables", + "ruby-cloud-env-prefix=AREA120_TABLES", + "ruby-cloud-wrapper-of=v1alpha1:0.0", + "ruby-cloud-product-url=https://tables.area120.google.com/u/0/about#/", + "ruby-cloud-api-id=area120tables.googleapis.com", + "ruby-cloud-api-shortname=area120tables", + ], + ruby_cloud_description = "Using the Area 120 Tables API, you can query for tables, and update/create/delete rows within tables programmatically.", + ruby_cloud_title = "Area 120 Tables", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-area120-tables-ruby", + deps = [ + ":area120tables_ruby_wrapper", + ], +) diff --git a/google/area120/tables/v1alpha1/BUILD.bazel b/google/area120/tables/v1alpha1/BUILD.bazel index 011d1ca80..7abbceaa0 100644 --- a/google/area120/tables/v1alpha1/BUILD.bazel +++ b/google/area120/tables/v1alpha1/BUILD.bazel @@ -171,14 +171,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/bigtable/admin/v2/BUILD.bazel b/google/bigtable/admin/v2/BUILD.bazel index fcf2d1f1a..aa7d9be4b 100644 --- a/google/bigtable/admin/v2/BUILD.bazel +++ b/google/bigtable/admin/v2/BUILD.bazel @@ -186,14 +186,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -285,8 +284,9 @@ ruby_cloud_gapic_library( "ruby-cloud-gem-name=google-cloud-bigtable-admin-v2", "ruby-cloud-env-prefix=BIGTABLE", "ruby-cloud-product-url=https://cloud.google.com/bigtable", - "ruby-cloud-api-id=bigtable.googleapis.com", - "ruby-cloud-api-shortname=bigtable", + "ruby-cloud-api-id=bigtableadmin.googleapis.com", + "ruby-cloud-api-shortname=bigtableadmin", + "ruby-cloud-wrapper-gem-override=google-cloud-bigtable", ], grpc_service_config = "bigtableadmin_grpc_service_config.json", ruby_cloud_description = "Cloud Bigtable is a fully managed, scalable NoSQL database service for large analytical and operational workloads.", diff --git a/google/bigtable/admin/v2/bigtable_instance_admin.proto b/google/bigtable/admin/v2/bigtable_instance_admin.proto index ca3aaed7a..76dbd914f 100644 --- a/google/bigtable/admin/v2/bigtable_instance_admin.proto +++ b/google/bigtable/admin/v2/bigtable_instance_admin.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -51,6 +51,12 @@ service BigtableInstanceAdmin { "https://www.googleapis.com/auth/cloud-platform.read-only"; // Create an instance within a project. + // + // Note that exactly one of Cluster.serve_nodes and + // Cluster.cluster_config.cluster_autoscaling_config can be set. If + // serve_nodes is set to non-zero, then the cluster is manually scaled. If + // cluster_config.cluster_autoscaling_config is non-empty, then autoscaling is + // enabled. rpc CreateInstance(CreateInstanceRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2/{parent=projects/*}/instances" @@ -112,6 +118,12 @@ service BigtableInstanceAdmin { } // Creates a cluster within an instance. + // + // Note that exactly one of Cluster.serve_nodes and + // Cluster.cluster_config.cluster_autoscaling_config can be set. If + // serve_nodes is set to non-zero, then the cluster is manually scaled. If + // cluster_config.cluster_autoscaling_config is non-empty, then autoscaling is + // enabled. rpc CreateCluster(CreateClusterRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2/{parent=projects/*/instances/*}/clusters" @@ -141,6 +153,10 @@ service BigtableInstanceAdmin { } // Updates a cluster within an instance. + // + // Note that UpdateCluster does not support updating + // cluster_config.cluster_autoscaling_config. In order to update it, you + // must use PartialUpdateCluster. rpc UpdateCluster(Cluster) returns (google.longrunning.Operation) { option (google.api.http) = { put: "/v2/{name=projects/*/instances/*/clusters/*}" @@ -152,6 +168,30 @@ service BigtableInstanceAdmin { }; } + // Partially updates a cluster within a project. This method is the preferred + // way to update a Cluster. + // + // To enable and update autoscaling, set + // cluster_config.cluster_autoscaling_config. When autoscaling is enabled, + // serve_nodes is treated as an OUTPUT_ONLY field, meaning that updates to it + // are ignored. Note that an update cannot simultaneously set serve_nodes to + // non-zero and cluster_config.cluster_autoscaling_config to non-empty, and + // also specify both in the update_mask. + // + // To disable autoscaling, clear cluster_config.cluster_autoscaling_config, + // and explicitly set a serve_node count via the update_mask. + rpc PartialUpdateCluster(PartialUpdateClusterRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v2/{cluster.name=projects/*/instances/*/clusters/*}" + body: "cluster" + }; + option (google.api.method_signature) = "cluster,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Cluster" + metadata_type: "PartialUpdateClusterMetadata" + }; + } + // Deletes a cluster from an instance. rpc DeleteCluster(DeleteClusterRequest) returns (google.protobuf.Empty) { option (google.api.http) = { @@ -271,7 +311,7 @@ message GetInstanceRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; } @@ -325,7 +365,7 @@ message DeleteInstanceRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; } @@ -338,7 +378,7 @@ message CreateClusterRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -359,7 +399,7 @@ message GetClusterRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; } @@ -373,7 +413,7 @@ message ListClustersRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -404,7 +444,7 @@ message DeleteClusterRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; } @@ -457,6 +497,28 @@ message UpdateClusterMetadata { google.protobuf.Timestamp finish_time = 3; } +// The metadata for the Operation returned by PartialUpdateCluster. +message PartialUpdateClusterMetadata { + // The time at which the original request was received. + google.protobuf.Timestamp request_time = 1; + + // The time at which the operation failed or was completed successfully. + google.protobuf.Timestamp finish_time = 2; + + // The original request for PartialUpdateCluster. + PartialUpdateClusterRequest original_request = 3; +} + +// Request message for BigtableInstanceAdmin.PartialUpdateCluster. +message PartialUpdateClusterRequest { + // Required. The Cluster which contains the partial updates to be applied, subject to + // the update_mask. + Cluster cluster = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The subset of Cluster fields which should be replaced. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; +} + // Request message for BigtableInstanceAdmin.CreateAppProfile. message CreateAppProfileRequest { // Required. The unique name of the instance in which to create the new app profile. @@ -465,7 +527,7 @@ message CreateAppProfileRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -489,7 +551,7 @@ message GetAppProfileRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/AppProfile" + type: "bigtableadmin.googleapis.com/AppProfile" } ]; } @@ -504,7 +566,7 @@ message ListAppProfilesRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -560,7 +622,7 @@ message DeleteAppProfileRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/AppProfile" + type: "bigtableadmin.googleapis.com/AppProfile" } ]; diff --git a/google/bigtable/admin/v2/bigtable_table_admin.proto b/google/bigtable/admin/v2/bigtable_table_admin.proto index ff2076c50..88bd87047 100644 --- a/google/bigtable/admin/v2/bigtable_table_admin.proto +++ b/google/bigtable/admin/v2/bigtable_table_admin.proto @@ -340,7 +340,7 @@ message RestoreTableRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -355,7 +355,7 @@ message RestoreTableRequest { // Name of the backup from which to restore. Values are of the form // `projects//instances//clusters//backups/`. string backup = 3 [(google.api.resource_reference) = { - type: "bigtable.googleapis.com/Backup" + type: "bigtableadmin.googleapis.com/Backup" }]; } } @@ -417,7 +417,7 @@ message CreateTableRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -461,7 +461,7 @@ message CreateTableFromSnapshotRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -476,7 +476,7 @@ message CreateTableFromSnapshotRequest { string source_snapshot = 3 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Snapshot" + type: "bigtableadmin.googleapis.com/Snapshot" } ]; } @@ -490,7 +490,7 @@ message DropRowRangeRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -513,7 +513,7 @@ message ListTablesRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" } ]; @@ -557,7 +557,7 @@ message GetTableRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -575,7 +575,7 @@ message DeleteTableRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; } @@ -610,7 +610,7 @@ message ModifyColumnFamiliesRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -630,7 +630,7 @@ message GenerateConsistencyTokenRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; } @@ -651,7 +651,7 @@ message CheckConsistencyRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -681,7 +681,7 @@ message SnapshotTableRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -691,7 +691,7 @@ message SnapshotTableRequest { string cluster = 2 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; @@ -725,7 +725,7 @@ message GetSnapshotRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Snapshot" + type: "bigtableadmin.googleapis.com/Snapshot" } ]; } @@ -746,7 +746,7 @@ message ListSnapshotsRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; @@ -789,7 +789,7 @@ message DeleteSnapshotRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Snapshot" + type: "bigtableadmin.googleapis.com/Snapshot" } ]; } @@ -837,7 +837,7 @@ message CreateBackupRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; @@ -893,7 +893,7 @@ message GetBackupRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Backup" + type: "bigtableadmin.googleapis.com/Backup" } ]; } @@ -906,7 +906,7 @@ message DeleteBackupRequest { string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Backup" + type: "bigtableadmin.googleapis.com/Backup" } ]; } @@ -920,7 +920,7 @@ message ListBackupsRequest { string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" } ]; diff --git a/google/bigtable/admin/v2/bigtableadmin_gapic.yaml b/google/bigtable/admin/v2/bigtableadmin_gapic.yaml index 081506cf4..3cb1d63fc 100644 --- a/google/bigtable/admin/v2/bigtableadmin_gapic.yaml +++ b/google/bigtable/admin/v2/bigtableadmin_gapic.yaml @@ -33,6 +33,12 @@ interfaces: poll_delay_multiplier: 1.5 max_poll_delay_millis: 5000 total_poll_timeout_millis: 600000 + - name: PartialUpdateCluster + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 5000 + total_poll_timeout_millis: 600000 - name: UpdateAppProfile long_running: initial_poll_delay_millis: 500 diff --git a/google/bigtable/admin/v2/bigtableadmin_grpc_service_config.json b/google/bigtable/admin/v2/bigtableadmin_grpc_service_config.json index 29f7ae282..95ecf2536 100755 --- a/google/bigtable/admin/v2/bigtableadmin_grpc_service_config.json +++ b/google/bigtable/admin/v2/bigtableadmin_grpc_service_config.json @@ -150,6 +150,10 @@ "service": "google.bigtable.admin.v2.BigtableInstanceAdmin", "method": "UpdateCluster" }, + { + "service": "google.bigtable.admin.v2.BigtableInstanceAdmin", + "method": "PartialUpdateCluster" + }, { "service": "google.bigtable.admin.v2.BigtableInstanceAdmin", "method": "ListClusters" diff --git a/google/bigtable/admin/v2/bigtableadmin_v2.yaml b/google/bigtable/admin/v2/bigtableadmin_v2.yaml index f13bf93c1..bb46f4dd6 100644 --- a/google/bigtable/admin/v2/bigtableadmin_v2.yaml +++ b/google/bigtable/admin/v2/bigtableadmin_v2.yaml @@ -14,6 +14,7 @@ types: - name: google.bigtable.admin.v2.CreateInstanceMetadata - name: google.bigtable.admin.v2.CreateTableFromSnapshotMetadata - name: google.bigtable.admin.v2.OptimizeRestoredTableMetadata +- name: google.bigtable.admin.v2.PartialUpdateClusterMetadata - name: google.bigtable.admin.v2.RestoreTableMetadata - name: google.bigtable.admin.v2.SnapshotTableMetadata - name: google.bigtable.admin.v2.UpdateAppProfileMetadata diff --git a/google/bigtable/admin/v2/common.proto b/google/bigtable/admin/v2/common.proto index 17c69d469..1d7782e67 100644 --- a/google/bigtable/admin/v2/common.proto +++ b/google/bigtable/admin/v2/common.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -17,6 +17,7 @@ syntax = "proto3"; package google.bigtable.admin.v2; import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.Bigtable.Admin.V2"; option go_package = "google.golang.org/genproto/googleapis/bigtable/admin/v2;admin"; diff --git a/google/bigtable/admin/v2/instance.proto b/google/bigtable/admin/v2/instance.proto index d590788b2..2e61b0858 100644 --- a/google/bigtable/admin/v2/instance.proto +++ b/google/bigtable/admin/v2/instance.proto @@ -19,6 +19,8 @@ package google.bigtable.admin.v2; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/bigtable/admin/v2/common.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.Bigtable.Admin.V2"; option go_package = "google.golang.org/genproto/googleapis/bigtable/admin/v2;admin"; @@ -38,7 +40,7 @@ option (google.api.resource_definition) = { // [Clusters][google.bigtable.admin.v2.Cluster] in the instance. message Instance { option (google.api.resource) = { - type: "bigtable.googleapis.com/Instance" + type: "bigtableadmin.googleapis.com/Instance" pattern: "projects/{project}/instances/{instance}" }; @@ -105,6 +107,28 @@ message Instance { // * No more than 64 labels can be associated with a given resource. // * Keys and values must both be under 128 bytes. map labels = 5; + + // Output only. A server-assigned timestamp representing when this Instance was created. + // For instances created before this field was added (August 2021), this value + // is `seconds: 0, nanos: 1`. + google.protobuf.Timestamp create_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// The Autoscaling targets for a Cluster. These determine the recommended nodes. +message AutoscalingTargets { + // The cpu utilization that the Autoscaler should be trying to achieve. + // This number is on a scale from 0 (no utilization) to + // 100 (total utilization). + int32 cpu_utilization_percent = 2; +} + +// Limits for the number of nodes a Cluster can autoscale up/down to. +message AutoscalingLimits { + // Required. Minimum number of nodes to scale down to. + int32 min_serve_nodes = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Maximum number of nodes to scale up to. + int32 max_serve_nodes = 2 [(google.api.field_behavior) = REQUIRED]; } // A resizable group of nodes in a particular cloud location, capable @@ -112,10 +136,25 @@ message Instance { // [Instance][google.bigtable.admin.v2.Instance]. message Cluster { option (google.api.resource) = { - type: "bigtable.googleapis.com/Cluster" + type: "bigtableadmin.googleapis.com/Cluster" pattern: "projects/{project}/instances/{instance}/clusters/{cluster}" }; + // Autoscaling config for a cluster. + message ClusterAutoscalingConfig { + // Required. Autoscaling limits for this cluster. + AutoscalingLimits autoscaling_limits = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Autoscaling targets for this cluster. + AutoscalingTargets autoscaling_targets = 2 [(google.api.field_behavior) = REQUIRED]; + } + + // Configuration for a cluster. + message ClusterConfig { + // Autoscaling configuration for this cluster. + ClusterAutoscalingConfig cluster_autoscaling_config = 1; + } + // Cloud Key Management Service (Cloud KMS) settings for a CMEK-protected // cluster. message EncryptionConfig { @@ -173,9 +212,14 @@ message Cluster { // The current state of the cluster. State state = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Required. The number of nodes allocated to this cluster. More nodes enable - // higher throughput and more consistent performance. - int32 serve_nodes = 4 [(google.api.field_behavior) = REQUIRED]; + // The number of nodes allocated to this cluster. More nodes enable higher + // throughput and more consistent performance. + int32 serve_nodes = 4; + + oneof config { + // Configuration for this cluster. + ClusterConfig cluster_config = 7; + } // (`CreationOnly`) // The type of storage used by this cluster to serve its @@ -191,7 +235,7 @@ message Cluster { // from a particular end user application. message AppProfile { option (google.api.resource) = { - type: "bigtable.googleapis.com/AppProfile" + type: "bigtableadmin.googleapis.com/AppProfile" pattern: "projects/{project}/instances/{instance}/appProfiles/{app_profile}" }; @@ -200,7 +244,11 @@ message AppProfile { // transient errors or delays. Clusters in a region are considered // equidistant. Choosing this option sacrifices read-your-writes consistency // to improve availability. - message MultiClusterRoutingUseAny {} + message MultiClusterRoutingUseAny { + // The set of clusters to route to. The order is ignored; clusters will be + // tried in order of distance. If left empty, all clusters are eligible. + repeated string cluster_ids = 1; + } // Unconditionally routes all read/write requests to a specific cluster. // This option preserves read-your-writes consistency but does not improve diff --git a/google/bigtable/admin/v2/table.proto b/google/bigtable/admin/v2/table.proto index a5578225e..4e2d709ab 100644 --- a/google/bigtable/admin/v2/table.proto +++ b/google/bigtable/admin/v2/table.proto @@ -60,7 +60,7 @@ message RestoreInfo { // Each table is served using the resources of its parent cluster. message Table { option (google.api.resource) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" pattern: "projects/{project}/instances/{instance}/tables/{table}" }; @@ -266,7 +266,7 @@ message EncryptionInfo { // for production use. It is not subject to any SLA or deprecation policy. message Snapshot { option (google.api.resource) = { - type: "bigtable.googleapis.com/Snapshot" + type: "bigtableadmin.googleapis.com/Snapshot" pattern: "projects/{project}/instances/{instance}/clusters/{cluster}/snapshots/{snapshot}" }; @@ -316,7 +316,7 @@ message Snapshot { // A backup of a Cloud Bigtable table. message Backup { option (google.api.resource) = { - type: "bigtable.googleapis.com/Backup" + type: "bigtableadmin.googleapis.com/Backup" pattern: "projects/{project}/instances/{instance}/clusters/{cluster}/backups/{backup}" }; diff --git a/google/bigtable/v2/BUILD.bazel b/google/bigtable/v2/BUILD.bazel index 2f8891595..692627dfe 100644 --- a/google/bigtable/v2/BUILD.bazel +++ b/google/bigtable/v2/BUILD.bazel @@ -20,6 +20,7 @@ proto_library( "//google/api:client_proto", "//google/api:field_behavior_proto", "//google/api:resource_proto", + "//google/api:routing_proto", "//google/rpc:status_proto", "@com_google_protobuf//:wrappers_proto", ], @@ -163,14 +164,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -187,6 +187,7 @@ php_grpc_library( php_gapic_library( name = "bigtable_php_gapic", srcs = [":bigtable_proto_with_info"], + service_yaml = "bigtable_v2.yaml", deps = [ ":bigtable_php_grpc", ":bigtable_php_proto", diff --git a/google/bigtable/v2/bigtable.proto b/google/bigtable/v2/bigtable.proto index 32aaba21d..17b145665 100644 --- a/google/bigtable/v2/bigtable.proto +++ b/google/bigtable/v2/bigtable.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2019 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -20,6 +20,7 @@ import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/api/routing.proto"; import "google/bigtable/v2/data.proto"; import "google/protobuf/wrappers.proto"; import "google/rpc/status.proto"; @@ -32,7 +33,7 @@ option java_package = "com.google.bigtable.v2"; option php_namespace = "Google\\Cloud\\Bigtable\\V2"; option ruby_package = "Google::Cloud::Bigtable::V2"; option (google.api.resource_definition) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" pattern: "projects/{project}/instances/{instance}/tables/{table}" }; @@ -57,6 +58,15 @@ service Bigtable { post: "/v2/{table_name=projects/*/instances/*/tables/*}:readRows" body: "*" }; + option (google.api.routing) = { + routing_parameters { + field: "table_name" + path_template: "{table_name=projects/*/instances/*/tables/*}" + } + routing_parameters { + field: "app_profile_id" + } + }; option (google.api.method_signature) = "table_name"; option (google.api.method_signature) = "table_name,app_profile_id"; } @@ -69,6 +79,15 @@ service Bigtable { option (google.api.http) = { get: "/v2/{table_name=projects/*/instances/*/tables/*}:sampleRowKeys" }; + option (google.api.routing) = { + routing_parameters { + field: "table_name" + path_template: "{table_name=projects/*/instances/*/tables/*}" + } + routing_parameters { + field: "app_profile_id" + } + }; option (google.api.method_signature) = "table_name"; option (google.api.method_signature) = "table_name,app_profile_id"; } @@ -80,6 +99,15 @@ service Bigtable { post: "/v2/{table_name=projects/*/instances/*/tables/*}:mutateRow" body: "*" }; + option (google.api.routing) = { + routing_parameters { + field: "table_name" + path_template: "{table_name=projects/*/instances/*/tables/*}" + } + routing_parameters { + field: "app_profile_id" + } + }; option (google.api.method_signature) = "table_name,row_key,mutations"; option (google.api.method_signature) = "table_name,row_key,mutations,app_profile_id"; } @@ -92,6 +120,15 @@ service Bigtable { post: "/v2/{table_name=projects/*/instances/*/tables/*}:mutateRows" body: "*" }; + option (google.api.routing) = { + routing_parameters { + field: "table_name" + path_template: "{table_name=projects/*/instances/*/tables/*}" + } + routing_parameters { + field: "app_profile_id" + } + }; option (google.api.method_signature) = "table_name,entries"; option (google.api.method_signature) = "table_name,entries,app_profile_id"; } @@ -102,6 +139,15 @@ service Bigtable { post: "/v2/{table_name=projects/*/instances/*/tables/*}:checkAndMutateRow" body: "*" }; + option (google.api.routing) = { + routing_parameters { + field: "table_name" + path_template: "{table_name=projects/*/instances/*/tables/*}" + } + routing_parameters { + field: "app_profile_id" + } + }; option (google.api.method_signature) = "table_name,row_key,predicate_filter,true_mutations,false_mutations"; option (google.api.method_signature) = "table_name,row_key,predicate_filter,true_mutations,false_mutations,app_profile_id"; } @@ -116,6 +162,15 @@ service Bigtable { post: "/v2/{table_name=projects/*/instances/*/tables/*}:readModifyWriteRow" body: "*" }; + option (google.api.routing) = { + routing_parameters { + field: "table_name" + path_template: "{table_name=projects/*/instances/*/tables/*}" + } + routing_parameters { + field: "app_profile_id" + } + }; option (google.api.method_signature) = "table_name,row_key,rules"; option (google.api.method_signature) = "table_name,row_key,rules,app_profile_id"; } @@ -129,7 +184,7 @@ message ReadRowsRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -137,14 +192,15 @@ message ReadRowsRequest { // "default" application profile will be used. string app_profile_id = 5; - // The row keys and/or ranges to read. If not specified, reads from all rows. + // The row keys and/or ranges to read sequentially. If not specified, reads + // from all rows. RowSet rows = 2; // The filter to apply to the contents of the specified row(s). If unset, // reads the entirety of each row. RowFilter filter = 3; - // The read will terminate after committing to N rows' worth of results. The + // The read will stop after committing to N rows' worth of results. The // default (zero) is to return all results. int64 rows_limit = 4; } @@ -236,7 +292,7 @@ message SampleRowKeysRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -271,7 +327,7 @@ message MutateRowRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -311,7 +367,7 @@ message MutateRowsRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -355,7 +411,7 @@ message CheckAndMutateRowRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; @@ -403,7 +459,7 @@ message ReadModifyWriteRowRequest { string table_name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { - type: "bigtable.googleapis.com/Table" + type: "bigtableadmin.googleapis.com/Table" } ]; diff --git a/google/bigtable/v2/data.proto b/google/bigtable/v2/data.proto index 2cc916454..7193ee753 100644 --- a/google/bigtable/v2/data.proto +++ b/google/bigtable/v2/data.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2019 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -// syntax = "proto3"; @@ -210,7 +209,7 @@ message ValueRange { // RowFilter.Chain and RowFilter.Interleave documentation. // // The total serialized size of a RowFilter message must not -// exceed 4096 bytes, and RowFilters may not be nested within each other +// exceed 20480 bytes, and RowFilters may not be nested within each other // (in Chains or Interleaves) to a depth of more than 20. message RowFilter { // A RowFilter which sends rows through several RowFilters in sequence. diff --git a/google/chromeos/moblab/v1beta1/BUILD.bazel b/google/chromeos/moblab/v1beta1/BUILD.bazel index 6027e9052..471c31ff8 100644 --- a/google/chromeos/moblab/v1beta1/BUILD.bazel +++ b/google/chromeos/moblab/v1beta1/BUILD.bazel @@ -69,12 +69,15 @@ java_grpc_library( java_gapic_library( name = "moblab_java_gapic", srcs = [":moblab_proto_with_info"], + gapic_yaml = "chromeosmoblab_gapic.yaml", grpc_service_config = "moblab_grpc_service_config.json", + service_yaml = "chromeosmoblab_v1beta1.yaml", test_deps = [ ":moblab_java_grpc", ], deps = [ ":moblab_java_proto", + "//google/api:api_java_proto", ], ) @@ -180,10 +183,10 @@ py_gapic_assembly_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -250,7 +253,7 @@ nodejs_gapic_assembly_pkg( # Ruby ############################################################################## load( - "@com_google_googleapis_imports//:imports.bzl", + "@com_google_googleapis_imports//:imports.bzl", "ruby_cloud_gapic_library", "ruby_gapic_assembly_pkg", "ruby_grpc_library", @@ -271,9 +274,7 @@ ruby_grpc_library( ruby_cloud_gapic_library( name = "moblab_ruby_gapic", srcs = [":moblab_proto_with_info"], - extra_protoc_parameters = [ - "ruby-cloud-gem-name=google-cloud-chromeos-moblab-v1beta1", - ], + extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-chromeos-moblab-v1beta1"], grpc_service_config = "moblab_grpc_service_config.json", deps = [ ":moblab_ruby_grpc", diff --git a/google/chromeos/moblab/v1beta1/build_service.proto b/google/chromeos/moblab/v1beta1/build_service.proto index 0dc717a4b..bdc73d95a 100644 --- a/google/chromeos/moblab/v1beta1/build_service.proto +++ b/google/chromeos/moblab/v1beta1/build_service.proto @@ -37,6 +37,21 @@ service BuildService { option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/moblabapi"; + // Lists all build targets that a user has access to. + rpc ListBuildTargets(ListBuildTargetsRequest) returns (ListBuildTargetsResponse) { + option (google.api.http) = { + get: "/v1beta1/buildTargets" + }; + } + + // Lists all models for the given build target. + rpc ListModels(ListModelsRequest) returns (ListModelsResponse) { + option (google.api.http) = { + get: "/v1beta1/{parent=buildTargets/*}/models" + }; + option (google.api.method_signature) = "parent"; + } + // Lists all builds for the given build target and model in descending order // for the milestones and build versions. rpc ListBuilds(ListBuildsRequest) returns (ListBuildsResponse) { @@ -71,6 +86,98 @@ service BuildService { metadata_type: "StageBuildMetadata" }; } + + // Finds the most stable build for the given build target. The definition of + // the most stable build is determined by evaluating the following rules in + // order until one is true. If none are true, then there is no stable build + // and it will return an empty response. + // + // Evaluation rules: + // 1. Stable channel build with label “Live” + // 2. Beta channel build with label “Live” + // 3. Dev channel build with label “Live” + // 4. Most recent stable channel build with build status Pass + // 5. Most recent beta channel build with build status Pass + // 6. Most recent dev channel build with build status Pass + rpc FindMostStableBuild(FindMostStableBuildRequest) returns (FindMostStableBuildResponse) { + option (google.api.http) = { + get: "/v1beta1/{build_target=buildTargets/*}:findMostStableBuild" + }; + option (google.api.method_signature) = "build_target"; + } +} + +// Request message for finding the most stable build. +message FindMostStableBuildRequest { + // Required. The full resource name of the build target. + // For example, + // 'buildTargets/octopus'. + string build_target = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "chromeosmoblab.googleapis.com/BuildTarget" + } + ]; +} + +// Response message for finding the most stable build. +message FindMostStableBuildResponse { + // The most stable build. + Build build = 1; +} + +// Request message for listing build targets. +message ListBuildTargetsRequest { + // Optional. The number of build targets to return in a page. + int32 page_size = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A page token, received from a previous `ListBuildTargets` call. Provide + // this to retrieve the subsequent page. + string page_token = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for listing build targets. +message ListBuildTargetsResponse { + // The list of build targets. + repeated BuildTarget build_targets = 1; + + // Token to retrieve the next page of build targets. If this field is omitted, + // there are no subsequent pages. + string next_page_token = 2; + + // Total number of build targets. + int32 total_size = 3; +} + +// Request message for listing models. +message ListModelsRequest { + // Required. The full resource name of build target. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "chromeosmoblab.googleapis.com/BuildTarget" + } + ]; + + // Optional. The number of models to return in a page. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A page token, received from a previous `ListModels` call. Provide + // this to retrieve the subsequent page. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for listing models. +message ListModelsResponse { + // The list of models. + repeated Model models = 1; + + // Token to retrieve the next page of models. If this field is omitted, there + // are no subsequent pages. + string next_page_token = 2; + + // Total number of models. + int32 total_size = 3; } // Request message for listing builds. @@ -94,14 +201,14 @@ message ListBuildsRequest { string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; // Optional. Filter that specifies value constraints of fields. For example, the - // filter can be set as `filter='milestone=milestones/80'` to only select + // filter can be set as "filter='milestone=milestones/80'" to only select // builds in milestone 80. string filter = 4 [(google.api.field_behavior) = OPTIONAL]; // Optional. Read mask that specifies which Build fields to return. If empty, all Build // fields will be returned. // Valid fields: name, milestone, build_version. - // For example, if the read_mask is set as `read_mask='milestone'`, the + // For example, if the read_mask is set as "read_mask='milestone'", the // ListBuilds will return a list of Builds object with only the milestone // field. google.protobuf.FieldMask read_mask = 5 [(google.api.field_behavior) = OPTIONAL]; @@ -138,7 +245,7 @@ message CheckBuildStageStatusRequest { ]; // Optional. Filter that specifies value constraints of fields. For example, the - // filter can be set as `filter='type=release'` to only check the release + // filter can be set as "filter='type=release'" to only check the release // builds. string filter = 2 [(google.api.field_behavior) = OPTIONAL]; } @@ -168,7 +275,7 @@ message StageBuildRequest { ]; // Optional. Filter that specifies value constraints of fields. For example, the - // filter can be set as `filter='type=release'` to only check the release + // filter can be set as "filter='type=release'" to only check the release // builds. string filter = 2 [(google.api.field_behavior) = OPTIONAL]; } diff --git a/google/chromeos/moblab/v1beta1/resources.proto b/google/chromeos/moblab/v1beta1/resources.proto index 372386874..cb40f61f0 100644 --- a/google/chromeos/moblab/v1beta1/resources.proto +++ b/google/chromeos/moblab/v1beta1/resources.proto @@ -69,7 +69,7 @@ message Build { pattern: "buildTargets/{build_target}/models/{model}/builds/{build}" }; - // The build status types. + // The build status types. enum BuildStatus { // No build status is specified. BUILD_STATUS_UNSPECIFIED = 0; @@ -121,6 +121,10 @@ message Build { // The branch of the build. string branch = 6; + + // The read write firmware version of the software that is flashed to the chip + // on the Chrome OS device. + string rw_firmware_version = 7; } // Resource that represents a build artifact stored in Google Cloud Storage for diff --git a/google/chromeos/uidetection/v1/BUILD.bazel b/google/chromeos/uidetection/v1/BUILD.bazel new file mode 100644 index 000000000..e452031cd --- /dev/null +++ b/google/chromeos/uidetection/v1/BUILD.bazel @@ -0,0 +1,350 @@ +# This file was automatically generated by BuildFileGenerator +# https://github.com/googleapis/rules_gapic/tree/master/bazel + +# Most of the manual changes to this file will be overwritten. +# It's **only** allowed to change the following rule attribute values: +# - names of *_gapic_assembly_* rules +# - certain parameters of *_gapic_library rules, including but not limited to: +# * extra_protoc_parameters +# * extra_protoc_file_parameters +# The complete list of preserved parameters can be found in the source code. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "uidetection_proto", + srcs = [ + "ui_detection.proto", + ], + deps = [ + "//google/api:annotations_proto", + "//google/api:client_proto", + "//google/api:field_behavior_proto", + ], +) + +proto_library_with_info( + name = "uidetection_proto_with_info", + deps = [ + ":uidetection_proto", + "//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "uidetection_java_proto", + deps = [":uidetection_proto"], +) + +java_grpc_library( + name = "uidetection_java_grpc", + srcs = [":uidetection_proto"], + deps = [":uidetection_java_proto"], +) + +java_gapic_library( + name = "uidetection_java_gapic", + srcs = [":uidetection_proto_with_info"], + gapic_yaml = None, + grpc_service_config = "ui_detection_grpc_service_config.json", + service_yaml = "chromeosuidetection_v1.yaml", + test_deps = [ + ":uidetection_java_grpc", + ], + deps = [ + ":uidetection_java_proto", + "//google/api:api_java_proto", + ], +) + +java_gapic_test( + name = "uidetection_java_gapic_test_suite", + test_classes = [ + "com.google.chromeos.uidetection.v1.UiDetectionServiceClientTest", + ], + runtime_deps = [":uidetection_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-chromeos-uidetection-v1-java", + deps = [ + ":uidetection_java_gapic", + ":uidetection_java_grpc", + ":uidetection_java_proto", + ":uidetection_proto", + ], +) + +############################################################################## +# Go +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_gapic_assembly_pkg", + "go_gapic_library", + "go_proto_library", + "go_test", +) + +go_proto_library( + name = "uidetection_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/chromeos/uidetection/v1", + protos = [":uidetection_proto"], + deps = [ + "//google/api:annotations_go_proto", + ], +) + +go_gapic_library( + name = "uidetection_go_gapic", + srcs = [":uidetection_proto_with_info"], + grpc_service_config = "ui_detection_grpc_service_config.json", + importpath = "google.golang.org/google/chromeos/uidetection/v1;uidetection", + service_yaml = "chromeosuidetection_v1.yaml", + metadata = True, + deps = [ + ":uidetection_go_proto", + ], +) + +go_test( + name = "uidetection_go_gapic_test", + srcs = [":uidetection_go_gapic_srcjar_test"], + embed = [":uidetection_go_gapic"], + importpath = "google.golang.org/google/chromeos/uidetection/v1", +) + +# Open Source Packages +go_gapic_assembly_pkg( + name = "gapi-cloud-chromeos-uidetection-v1-go", + deps = [ + ":uidetection_go_gapic", + ":uidetection_go_gapic_srcjar-test.srcjar", + ":uidetection_go_gapic_srcjar-metadata.srcjar", + ":uidetection_go_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "uidetection_py_gapic", + srcs = [":uidetection_proto"], + grpc_service_config = "ui_detection_grpc_service_config.json", +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "chromeos-uidetection-v1-py", + deps = [ + ":uidetection_py_gapic", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "uidetection_php_proto", + deps = [":uidetection_proto"], +) + +php_grpc_library( + name = "uidetection_php_grpc", + srcs = [":uidetection_proto"], + deps = [":uidetection_php_proto"], +) + +php_gapic_library( + name = "uidetection_php_gapic", + srcs = [":uidetection_proto_with_info"], + grpc_service_config = "ui_detection_grpc_service_config.json", + service_yaml = "chromeosuidetection_v1.yaml", + deps = [ + ":uidetection_php_grpc", + ":uidetection_php_proto", + ], +) + +# Open Source Packages +php_gapic_assembly_pkg( + name = "google-cloud-chromeos-uidetection-v1-php", + deps = [ + ":uidetection_php_gapic", + ":uidetection_php_grpc", + ":uidetection_php_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "uidetection_nodejs_gapic", + package_name = "@google-cloud/uidetection", + src = ":uidetection_proto_with_info", + extra_protoc_parameters = ["metadata"], + grpc_service_config = "ui_detection_grpc_service_config.json", + package = "google.chromeos.uidetection.v1", + service_yaml = "chromeosuidetection_v1.yaml", + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "chromeos-uidetection-v1-nodejs", + deps = [ + ":uidetection_nodejs_gapic", + ":uidetection_proto", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_gapic_assembly_pkg", + "ruby_cloud_gapic_library", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "uidetection_ruby_proto", + deps = [":uidetection_proto"], +) + +ruby_grpc_library( + name = "uidetection_ruby_grpc", + srcs = [":uidetection_proto"], + deps = [":uidetection_ruby_proto"], +) + +ruby_cloud_gapic_library( + name = "uidetection_ruby_gapic", + srcs = [":uidetection_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-chromeos-uidetection-v1", + ], + grpc_service_config = "ui_detection_grpc_service_config.json", + deps = [ + ":uidetection_ruby_grpc", + ":uidetection_ruby_proto", + ], +) + +# Open Source Packages +ruby_gapic_assembly_pkg( + name = "google-cloud-chromeos-uidetection-v1-ruby", + deps = [ + ":uidetection_ruby_gapic", + ":uidetection_ruby_grpc", + ":uidetection_ruby_proto", + ], +) + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", + "csharp_gapic_library", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "uidetection_csharp_proto", + deps = [":uidetection_proto"], +) + +csharp_grpc_library( + name = "uidetection_csharp_grpc", + srcs = [":uidetection_proto"], + deps = [":uidetection_csharp_proto"], +) + +csharp_gapic_library( + name = "uidetection_csharp_gapic", + srcs = [":uidetection_proto_with_info"], + common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", + grpc_service_config = "ui_detection_grpc_service_config.json", + deps = [ + ":uidetection_csharp_grpc", + ":uidetection_csharp_proto", + ], +) + +# Open Source Packages +csharp_gapic_assembly_pkg( + name = "google-cloud-chromeos-uidetection-v1-csharp", + deps = [ + ":uidetection_csharp_gapic", + ":uidetection_csharp_grpc", + ":uidetection_csharp_proto", + ], +) + +############################################################################## +# C++ +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "uidetection_cc_proto", + deps = [":uidetection_proto"], +) + +cc_grpc_library( + name = "uidetection_cc_grpc", + srcs = [":uidetection_proto"], + grpc_only = True, + deps = [":uidetection_cc_proto"], +) diff --git a/google/chromeos/uidetection/v1/chromeosuidetection_v1.yaml b/google/chromeos/uidetection/v1/chromeosuidetection_v1.yaml new file mode 100644 index 000000000..f6e15a55c --- /dev/null +++ b/google/chromeos/uidetection/v1/chromeosuidetection_v1.yaml @@ -0,0 +1,18 @@ +type: google.api.Service +config_version: 3 +name: chromeosuidetection.googleapis.com +title: ChromeOS UI Detection API + +apis: +- name: google.chromeos.uidetection.v1.UiDetectionService + +documentation: + summary: |- + ChromeOS UI Detection API allows image-based UI detection in E2E testing + frameworks of ChromeOS. It will be used by ChromeOS labs and ChromeOS + partners. + +backend: + rules: + - selector: google.chromeos.uidetection.v1.UiDetectionService.ExecuteDetection + deadline: 30.0 diff --git a/google/chromeos/uidetection/v1/ui_detection.proto b/google/chromeos/uidetection/v1/ui_detection.proto new file mode 100644 index 000000000..e7f529c9c --- /dev/null +++ b/google/chromeos/uidetection/v1/ui_detection.proto @@ -0,0 +1,105 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.chromeos.uidetection.v1; + +import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; +import "google/api/client.proto"; + +option go_package = "google.golang.org/genproto/googleapis/chromeos/uidetection/v1;uidetection"; +option java_multiple_files = true; +option java_outer_classname = "UiDetectionProto"; +option java_package = "com.google.chromeos.uidetection.v1"; + +// Provides image-based UI detection service. +service UiDetectionService { + option (google.api.default_host) = "chromeosuidetection.googleapis.com"; + + // Runs the detection. + rpc ExecuteDetection(UiDetectionRequest) returns (UiDetectionResponse) { + option (google.api.http) = { + get: "/v1/executeDetection:execute" + }; + } +} + +// Request message for UI detection. +message UiDetectionRequest { + // Required. Required field that represents a PNG image. + bytes image_png = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Required field that indicates the detection type. + DetectionRequest request = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Detection type specifies what to detect in the image. +message DetectionRequest { + oneof detection_request_type { + // Detection type for word detection. + WordDetectionRequest word_detection_request = 1; + + // Detection type for text block detection. + TextBlockDetectionRequest text_block_detection_request = 2; + + // Detection type for custom icon detection. + CustomIconDetectionRequest custom_icon_detection_request = 3; + } +} + +// Detection type for word detection. +message WordDetectionRequest { + // Required. The word to locate in the image. + string word = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Detection type for text block detection. +message TextBlockDetectionRequest { + // Required. The text block consisting a list of words to locate im the image. + repeated string words = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Detection type for custom icon detection. +message CustomIconDetectionRequest { + // Required. Required field that represents an icon in PNG format. + bytes icon_png = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for UI detection. +message UiDetectionResponse { + // Locations of matching UI elements. + repeated BoundingBox bounding_boxes = 1; +} + +// The location of a UI element. +// A bounding box is reprensented by its top-left point [left, top] +// and its bottom-right point [right, bottom]. +message BoundingBox { + // The text found in the bounding box. + string text = 1; + + // The y-coordinate of the top-left point. + int32 top = 2; + + // The x-coordinate of the top-left point. + int32 left = 3; + + // The y-coordinate of the bottom-right point. + int32 bottom = 4; + + // The x-coordinate of the bottom-right point. + int32 right = 5; +} diff --git a/google/chromeos/uidetection/v1/ui_detection_grpc_service_config.json b/google/chromeos/uidetection/v1/ui_detection_grpc_service_config.json new file mode 100644 index 000000000..7632a3fa8 --- /dev/null +++ b/google/chromeos/uidetection/v1/ui_detection_grpc_service_config.json @@ -0,0 +1,13 @@ +{ + "methodConfig": [{ + "name": [{ "service": "google.chromeos.uidetection.v1.UiDetectionService", "method": "ExecuteDetection" }], + "timeout": "60s", + "retryPolicy": { + "maxAttempts": 5, + "initialBackoff": "1s", + "maxBackoff": "10s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": ["UNAVAILABLE"] + } + }] +} diff --git a/google/cloud/BUILD.bazel b/google/cloud/BUILD.bazel index 676dc2e50..d405b232b 100644 --- a/google/cloud/BUILD.bazel +++ b/google/cloud/BUILD.bazel @@ -11,3 +11,102 @@ proto_library( srcs = ["common_resources.proto"], deps = ["//google/api:resource_proto"], ) + +proto_library( + name = "extended_operations_proto", + srcs = ["extended_operations.proto"], + deps = ["@com_google_protobuf//:descriptor_proto"], +) + +############################################################################## +# Java +############################################################################## +load("@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_proto_library") + +java_proto_library( + name = "extended_operations_java_proto", + deps = [ + ":extended_operations_proto", + ], +) + +# Please DO-NOT-REMOVE this section. +# This is required to generate java files for these protos. +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-apps-script-type-java", + deps = [ + "extended_operations_java_proto", + ":extended_operations_proto", + ], +) + +############################################################################## +# Go +############################################################################## +load("@com_google_googleapis_imports//:imports.bzl", "go_proto_library") + +go_proto_library( + name = "extended_operations_go_proto", + importpath = "google.golang.org/genproto/googleapis/cloud/extendedops", + protos = [ + ":extended_operations_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load("@com_google_googleapis_imports//:imports.bzl", "py_proto_library") + +py_proto_library( + name = "extended_operations_py_proto", + deps = [":extended_operations_proto"], +) + +############################################################################## +# PHP +############################################################################## +load("@com_google_googleapis_imports//:imports.bzl", "php_proto_library") + +php_proto_library( + name = "extended_operations_php_proto", + deps = [":extended_operations_proto"], +) + +############################################################################## +# Node.js +############################################################################## +# Node does not have langauge-specific proto_library targets + +############################################################################## +# Ruby +############################################################################## +load("@com_google_googleapis_imports//:imports.bzl", "ruby_proto_library") + +ruby_proto_library( + name = "extended_operations_ruby_proto", + deps = [":extended_operations_proto"], +) + +############################################################################## +# C# +############################################################################## +load("@com_google_googleapis_imports//:imports.bzl", "csharp_proto_library") + +csharp_proto_library( + name = "extended_operations_csharp_proto", + deps = [":extended_operations_proto"], +) + +############################################################################## +# C++ +############################################################################## +load("@com_google_googleapis_imports//:imports.bzl", "cc_proto_library") + +cc_proto_library( + name = "extended_operations_cc_proto", + deps = [":extended_operations_proto"], +) diff --git a/google/cloud/accessapproval/BUILD.bazel b/google/cloud/accessapproval/BUILD.bazel new file mode 100644 index 000000000..919d9c2be --- /dev/null +++ b/google/cloud/accessapproval/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-access_approval. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for accessapproval. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "accessapproval_ruby_wrapper", + srcs = ["//google/cloud/accessapproval/v1:accessapproval_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-access_approval", + "ruby-cloud-env-prefix=ACCESS_APPROVAL", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/access-approval/", + "ruby-cloud-api-id=accessapproval.googleapis.com", + "ruby-cloud-api-shortname=accessapproval", + ], + ruby_cloud_description = "An API for controlling access to data by Google personnel.", + ruby_cloud_title = "Access Approval", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-accessapproval-ruby", + deps = [ + ":accessapproval_ruby_wrapper", + ], +) diff --git a/google/cloud/accessapproval/v1/BUILD.bazel b/google/cloud/accessapproval/v1/BUILD.bazel index 46fbb74e5..c6e248684 100644 --- a/google/cloud/accessapproval/v1/BUILD.bazel +++ b/google/cloud/accessapproval/v1/BUILD.bazel @@ -158,6 +158,9 @@ py_gapic_library( name = "accessapproval_py_gapic", srcs = [":accessapproval_proto"], grpc_service_config = "accessapproval_grpc_service_config.json", + opt_args = [ + "warehouse-package-name=google-cloud-access-approval", + ], ) # Open Source Packages @@ -170,14 +173,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -336,4 +338,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "accessapproval_cc_proto", + deps = [":accessapproval_proto"], +) + +cc_grpc_library( + name = "accessapproval_cc_grpc", + srcs = [":accessapproval_proto"], + grpc_only = True, + deps = [":accessapproval_cc_proto"], +) diff --git a/google/cloud/accessapproval/v1/accessapproval_grpc_service_config.json b/google/cloud/accessapproval/v1/accessapproval_grpc_service_config.json index 03f40e13a..7d505a0ef 100644 --- a/google/cloud/accessapproval/v1/accessapproval_grpc_service_config.json +++ b/google/cloud/accessapproval/v1/accessapproval_grpc_service_config.json @@ -21,7 +21,6 @@ "name": [ {"service": "google.cloud.accessapproval.v1.AccessApproval", "method": "ApproveApprovalRequest"}, {"service": "google.cloud.accessapproval.v1.AccessApproval", "method": "DismissApprovalRequest"}, - {"service": "google.cloud.accessapproval.v1.AccessApproval", "method": "InvalidateApprovalRequest"}, {"service": "google.cloud.accessapproval.v1.AccessApproval", "method": "UpdateAccessApprovalSettings"}, {"service": "google.cloud.accessapproval.v1.AccessApproval", "method": "DeleteAccessApprovalSettings"} ], diff --git a/google/cloud/aiplatform/logging/BUILD.bazel b/google/cloud/aiplatform/logging/BUILD.bazel index 68c2a097b..a4e031b01 100644 --- a/google/cloud/aiplatform/logging/BUILD.bazel +++ b/google/cloud/aiplatform/logging/BUILD.bazel @@ -76,7 +76,6 @@ moved_proto_library( py_proto_library( name = "logging_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":logging_moved_proto"], ) @@ -88,12 +87,11 @@ py_grpc_library( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -160,4 +158,20 @@ csharp_grpc_library( ############################################################################## # C++ ############################################################################## -# Put your C++ code here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "logging_cc_proto", + deps = [":logging_proto"], +) + +cc_grpc_library( + name = "logging_cc_grpc", + srcs = [":logging_proto"], + grpc_only = True, + deps = [":logging_cc_proto"], +) diff --git a/google/cloud/aiplatform/v1/BUILD.bazel b/google/cloud/aiplatform/v1/BUILD.bazel index d4ec1f60e..36345b872 100644 --- a/google/cloud/aiplatform/v1/BUILD.bazel +++ b/google/cloud/aiplatform/v1/BUILD.bazel @@ -1,5 +1,5 @@ # This file was automatically generated by BuildFileGenerator -# https://github.com/googleapis/gapic-generator/tree/master/rules_gapic/bazel +# https://github.com/googleapis/rules_gapic/tree/master/bazel # Most of the manual changes to this file will be overwritten. # It's **only** allowed to change the following rule attribute values: @@ -31,44 +31,80 @@ proto_library( "accelerator_type.proto", "annotation.proto", "annotation_spec.proto", + "artifact.proto", "batch_prediction_job.proto", "completion_stats.proto", + "context.proto", "custom_job.proto", "data_item.proto", "data_labeling_job.proto", "dataset.proto", "dataset_service.proto", + "deployed_index_ref.proto", "deployed_model_ref.proto", "encryption_spec.proto", "endpoint.proto", "endpoint_service.proto", + "entity_type.proto", "env_var.proto", + "event.proto", + "execution.proto", + "explanation.proto", + "explanation_metadata.proto", + "feature.proto", + "feature_monitoring_stats.proto", + "feature_selector.proto", + "featurestore.proto", + "featurestore_online_service.proto", + "featurestore_service.proto", "hyperparameter_tuning_job.proto", + "index.proto", + "index_endpoint.proto", + "index_endpoint_service.proto", + "index_service.proto", "io.proto", "job_service.proto", "job_state.proto", + "lineage_subgraph.proto", "machine_resources.proto", "manual_batch_tuning_parameters.proto", + "metadata_schema.proto", + "metadata_service.proto", + "metadata_store.proto", "migratable_resource.proto", "migration_service.proto", "model.proto", + "model_deployment_monitoring_job.proto", "model_evaluation.proto", "model_evaluation_slice.proto", + "model_monitoring.proto", "model_service.proto", "operation.proto", + "pipeline_job.proto", "pipeline_service.proto", "pipeline_state.proto", "prediction_service.proto", "specialist_pool.proto", "specialist_pool_service.proto", "study.proto", + "tensorboard.proto", + "tensorboard_data.proto", + "tensorboard_experiment.proto", + "tensorboard_run.proto", + "tensorboard_service.proto", + "tensorboard_time_series.proto", "training_pipeline.proto", + "types.proto", + "unmanaged_container_model.proto", "user_action_reference.proto", + "value.proto", + "vizier_service.proto", ], deps = [ "//google/api:annotations_proto", "//google/api:client_proto", "//google/api:field_behavior_proto", + "//google/api:httpbody_proto", "//google/api:resource_proto", "//google/longrunning:operations_proto", "//google/rpc:status_proto", @@ -136,6 +172,7 @@ java_gapic_library( ] + _JAVA_PROTO_SUBPACKAGE_DEPS, deps = [ ":aiplatform_java_proto", + "//google/api:api_java_proto", ] + _JAVA_PROTO_SUBPACKAGE_DEPS, ) @@ -183,6 +220,7 @@ go_proto_library( protos = [":aiplatform_proto"], deps = [ "//google/api:annotations_go_proto", + "//google/api:httpbody_go_proto", "//google/longrunning:longrunning_go_proto", "//google/rpc:status_go_proto", "//google/type:money_go_proto", @@ -194,9 +232,11 @@ go_gapic_library( srcs = [":aiplatform_proto_with_info"], grpc_service_config = "aiplatform_grpc_service_config.json", importpath = "cloud.google.com/go/aiplatform/apiv1;aiplatform", + metadata = True, service_yaml = "aiplatform_v1.yaml", deps = [ ":aiplatform_go_proto", + "//google/api:httpbody_go_proto", "//google/longrunning:longrunning_go_proto", "@com_google_cloud_go//longrunning:go_default_library", "@com_google_cloud_go//longrunning/autogen:go_default_library", @@ -217,6 +257,7 @@ go_gapic_assembly_pkg( name = "gapi-cloud-aiplatform-v1-go", deps = [ ":aiplatform_go_gapic", + ":aiplatform_go_gapic_srcjar-metadata.srcjar", ":aiplatform_go_gapic_srcjar-test.srcjar", ":aiplatform_go_proto", ], @@ -254,14 +295,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -279,6 +319,7 @@ php_gapic_library( name = "aiplatform_php_gapic", srcs = [":aiplatform_proto_with_info"], grpc_service_config = "aiplatform_grpc_service_config.json", + service_yaml = "aiplatform_v1.yaml", deps = [ ":aiplatform_php_grpc", ":aiplatform_php_proto", @@ -328,8 +369,8 @@ nodejs_gapic_assembly_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - "ruby_gapic_assembly_pkg", "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", "ruby_grpc_library", "ruby_proto_library", ) @@ -347,9 +388,18 @@ ruby_grpc_library( ruby_cloud_gapic_library( name = "aiplatform_ruby_gapic", - srcs = [":aiplatform_proto_with_info",], - extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-aiplatform-v1"], + srcs = [":aiplatform_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-api-id=aiplatform.googleapis.com", + "ruby-cloud-api-shortname=aiplatform", + "ruby-cloud-gem-name=google-cloud-ai_platform-v1", + "ruby-cloud-gem-namespace=Google::Cloud::AIPlatform::V1", + "ruby-cloud-product-url=https://cloud.google.com/vertex-ai/docs/", + "ruby-cloud-service-override=AiPlatform=AIPlatform", + ], grpc_service_config = "aiplatform_grpc_service_config.json", + ruby_cloud_description = "Vertex AI enables data scientists, developers, and AI newcomers to create custom machine learning models specific to their business needs by leveraging Google's state-of-the-art transfer learning and innovative AI research.", + ruby_cloud_title = "Vertex AI V1", deps = [ ":aiplatform_ruby_grpc", ":aiplatform_ruby_proto", @@ -387,6 +437,32 @@ csharp_grpc_library( srcs = [":aiplatform_proto"], deps = [":aiplatform_csharp_proto"], ) + +# Generate a package for googleapis-gen even without the GAPIC client. +# This will allow OwlBot to trigger changes to be pushed to google-cloud-dotnet, +# which will perform full generation after fixing up the protos first. + +csharp_gapic_assembly_pkg( + name = "google-cloud-aiplatform-v1-csharp", + package_name = "Google.Cloud.AIPlatform.V1", + generate_nongapic_package = True, + deps = [ + ":aiplatform_csharp_grpc", + ":aiplatform_csharp_proto", + ], +) + +# csharp_gapic_library( +# name = "aiplatform_csharp_gapic", +# srcs = [":aiplatform_proto_with_info"], +# common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", +# grpc_service_config = "aiplatform_grpc_service_config.json", +# deps = [ +# ":aiplatform_csharp_grpc", +# ":aiplatform_csharp_proto", +# ], +# ) + ################################ # Keep C# target commented out through the regeneration, as C# gen has an issue # with the aiplatform v1 protos @@ -416,4 +492,20 @@ csharp_grpc_library( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "aiplatform_cc_proto", + deps = [":aiplatform_proto"], +) + +cc_grpc_library( + name = "aiplatform_cc_grpc", + srcs = [":aiplatform_proto"], + grpc_only = True, + deps = [":aiplatform_cc_proto"], +) diff --git a/google/cloud/aiplatform/v1/accelerator_type.proto b/google/cloud/aiplatform/v1/accelerator_type.proto index 096d7187a..0bd6d10ae 100644 --- a/google/cloud/aiplatform/v1/accelerator_type.proto +++ b/google/cloud/aiplatform/v1/accelerator_type.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "AcceleratorTypeProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Represents a hardware accelerator type. enum AcceleratorType { @@ -43,9 +46,6 @@ enum AcceleratorType { // Nvidia Tesla T4 GPU. NVIDIA_TESLA_T4 = 5; - // TPU v2. - TPU_V2 = 6; - - // TPU v3. - TPU_V3 = 7; + // Nvidia Tesla A100 GPU. + NVIDIA_TESLA_A100 = 8; } diff --git a/google/cloud/aiplatform/v1/aiplatform_grpc_service_config.json b/google/cloud/aiplatform/v1/aiplatform_grpc_service_config.json index 6918f0988..c30cbeb1c 100644 --- a/google/cloud/aiplatform/v1/aiplatform_grpc_service_config.json +++ b/google/cloud/aiplatform/v1/aiplatform_grpc_service_config.json @@ -3,43 +3,43 @@ { "name": [ { - "service": "google.cloud.aiplatform.v1.DatasetService", + "service": "google.cloud.aiplatform.v1beta1.DatasetService", "method": "CreateDataset" }, { - "service": "google.cloud.aiplatform.v1.DatasetService", + "service": "google.cloud.aiplatform.v1beta1.DatasetService", "method": "GetDataset" }, { - "service": "google.cloud.aiplatform.v1.DatasetService", + "service": "google.cloud.aiplatform.v1beta1.DatasetService", "method": "UpdateDataset" }, { - "service": "google.cloud.aiplatform.v1.DatasetService", + "service": "google.cloud.aiplatform.v1beta1.DatasetService", "method": "ListDatasets" }, { - "service": "google.cloud.aiplatform.v1.DatasetService", + "service": "google.cloud.aiplatform.v1beta1.DatasetService", "method": "DeleteDataset" }, { - "service": "google.cloud.aiplatform.v1.DatasetService", + "service": "google.cloud.aiplatform.v1beta1.DatasetService", "method": "ImportData" }, { - "service": "google.cloud.aiplatform.v1.DatasetService", + "service": "google.cloud.aiplatform.v1beta1.DatasetService", "method": "ExportData" }, { - "service": "google.cloud.aiplatform.v1.DatasetService", + "service": "google.cloud.aiplatform.v1beta1.DatasetService", "method": "ListDataItems" }, { - "service": "google.cloud.aiplatform.v1.DatasetService", + "service": "google.cloud.aiplatform.v1beta1.DatasetService", "method": "GetAnnotationSpec" }, { - "service": "google.cloud.aiplatform.v1.DatasetService", + "service": "google.cloud.aiplatform.v1beta1.DatasetService", "method": "ListAnnotations" } ], @@ -48,116 +48,214 @@ { "name":[ { - "service": "google.cloud.aiplatform.v1.EndpointService", + "service": "google.cloud.aiplatform.v1beta1.EndpointService", "method": "CreateEndpoint" }, { - "service": "google.cloud.aiplatform.v1.EndpointService", + "service": "google.cloud.aiplatform.v1beta1.EndpointService", "method": "GetEndpoint" }, { - "service": "google.cloud.aiplatform.v1.EndpointService", + "service": "google.cloud.aiplatform.v1beta1.EndpointService", "method": "ListEndpoints" }, { - "service": "google.cloud.aiplatform.v1.EndpointService", + "service": "google.cloud.aiplatform.v1beta1.EndpointService", "method": "UpdateEndpoint" }, { - "service": "google.cloud.aiplatform.v1.EndpointService", + "service": "google.cloud.aiplatform.v1beta1.EndpointService", "method": "DeleteEndpoint" }, { - "service": "google.cloud.aiplatform.v1.EndpointService", + "service": "google.cloud.aiplatform.v1beta1.EndpointService", "method": "DeployModel" }, { - "service": "google.cloud.aiplatform.v1.EndpointService", + "service": "google.cloud.aiplatform.v1beta1.EndpointService", "method": "UndeployModel" } ], "timeout": "5s" }, + { + "name": [ + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "CreateFeaturestore" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "GetFeaturestore" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "ListFeaturestores" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "UpdateFeaturestore" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "DeleteFeaturestore" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "CreateEntityType" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "GetEntityType" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "ListEntityTypes" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "UpdateEntityType" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "DeleteEntityType" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "CreateFeature" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "BatchCreateFeatures" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "GetFeature" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "ListFeatures" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "SearchFeatures" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "UpdateFeature" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "DeleteFeature" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "ImportFeatureValues" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "BatchReadFeatureValues" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreService", + "method": "ExportFeatureValuess" + } + ], + "timeout": "5s" + }, + { + "name": [ + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreOnlineServingService", + "method": "ReadFeatureValues" + }, + { + "service": "google.cloud.aiplatform.v1beta1.FeaturestoreOnlineServingService", + "method": "StreamingReadFeatureValues" + } + ], + "timeout": "5s" + }, { "name":[ { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "CreateCustomJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "GetCustomJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "ListCustomJobs" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "DeleteCustomJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "CancelCustomJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "CreateDataLabelingJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "GetDataLabelingJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "ListDataLabelingJobs" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "DeleteDataLabelingJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "CancelDataLabelingJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "CreateHyperparameterTuningJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "GetHyperparameterTuningJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "ListHyperparameterTuningJobs" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "DeleteHyperparameterTuningJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "CancelHyperparameterTuningJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "CreateBatchPredictionJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "GetBatchPredictionJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "ListBatchPredictionJobs" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "DeleteBatchPredictionJob" }, { - "service": "google.cloud.aiplatform.v1.JobService", + "service": "google.cloud.aiplatform.v1beta1.JobService", "method": "CancelBatchPredictionJob" } ], @@ -166,47 +264,47 @@ { "name":[ { - "service": "google.cloud.aiplatform.v1.ModelService", + "service": "google.cloud.aiplatform.v1beta1.ModelService", "method": "UploadModel" }, { - "service": "google.cloud.aiplatform.v1.ModelService", + "service": "google.cloud.aiplatform.v1beta1.ModelService", "method": "GetModel" }, { - "service": "google.cloud.aiplatform.v1.ModelService", + "service": "google.cloud.aiplatform.v1beta1.ModelService", "method": "ListModels" }, { - "service": "google.cloud.aiplatform.v1.ModelService", + "service": "google.cloud.aiplatform.v1beta1.ModelService", "method": "UpdateModel" }, { - "service": "google.cloud.aiplatform.v1.ModelService", + "service": "google.cloud.aiplatform.v1beta1.ModelService", "method": "DeleteModel" }, { - "service": "google.cloud.aiplatform.v1.ModelService", + "service": "google.cloud.aiplatform.v1beta1.ModelService", "method": "ExportModel" }, { - "service": "google.cloud.aiplatform.v1.ModelService", + "service": "google.cloud.aiplatform.v1beta1.ModelService", "method": "GetModelEvaluation" }, { - "service": "google.cloud.aiplatform.v1.ModelService", + "service": "google.cloud.aiplatform.v1beta1.ModelService", "method": "ListModelEvaluations" }, { - "service": "google.cloud.aiplatform.v1.ModelService", + "service": "google.cloud.aiplatform.v1beta1.ModelService", "method": "GetModelEvaluationSlice" }, { - "service": "google.cloud.aiplatform.v1.ModelService", + "service": "google.cloud.aiplatform.v1beta1.ModelService", "method": "ListModelEvaluationSlices" }, { - "service": "google.cloud.aiplatform.v1.ModelService", + "service": "google.cloud.aiplatform.v1beta1.ModelService", "method": "ExportEvaluatedDataItems" } ], @@ -215,23 +313,23 @@ { "name":[ { - "service": "google.cloud.aiplatform.v1.PipelineService", + "service": "google.cloud.aiplatform.v1beta1.PipelineService", "method": "CreateTrainingPipeline" }, { - "service": "google.cloud.aiplatform.v1.PipelineService", + "service": "google.cloud.aiplatform.v1beta1.PipelineService", "method": "GetTrainingPipeline" }, { - "service": "google.cloud.aiplatform.v1.PipelineService", + "service": "google.cloud.aiplatform.v1beta1.PipelineService", "method": "ListTrainingPipelines" }, { - "service": "google.cloud.aiplatform.v1.PipelineService", + "service": "google.cloud.aiplatform.v1beta1.PipelineService", "method": "DeleteTrainingPipeline" }, { - "service": "google.cloud.aiplatform.v1.PipelineService", + "service": "google.cloud.aiplatform.v1beta1.PipelineService", "method": "CancelTrainingPipeline" } ], @@ -240,11 +338,11 @@ { "name":[ { - "service": "google.cloud.aiplatform.v1.PredictionService", + "service": "google.cloud.aiplatform.v1beta1.PredictionService", "method": "Predict" }, { - "service": "google.cloud.aiplatform.v1.PredictionService", + "service": "google.cloud.aiplatform.v1beta1.PredictionService", "method": "Explain" } ], @@ -253,23 +351,23 @@ { "name":[ { - "service": "google.cloud.aiplatform.v1.SpecialistPoolService", + "service": "google.cloud.aiplatform.v1beta1.SpecialistPoolService", "method": "CreateSpecialistPool" }, { - "service": "google.cloud.aiplatform.v1.SpecialistPoolService", + "service": "google.cloud.aiplatform.v1beta1.SpecialistPoolService", "method": "GetSpecialistPool" }, { - "service": "google.cloud.aiplatform.v1.SpecialistPoolService", + "service": "google.cloud.aiplatform.v1beta1.SpecialistPoolService", "method": "ListSpecialistPools" }, { - "service": "google.cloud.aiplatform.v1.SpecialistPoolService", + "service": "google.cloud.aiplatform.v1beta1.SpecialistPoolService", "method": "DeleteSpecialistPool" }, { - "service": "google.cloud.aiplatform.v1.SpecialistPoolService", + "service": "google.cloud.aiplatform.v1beta1.SpecialistPoolService", "method": "UpdateSpecialistPool" } ], diff --git a/google/cloud/aiplatform/v1/aiplatform_v1.yaml b/google/cloud/aiplatform/v1/aiplatform_v1.yaml index 3e7439645..efd3c39dd 100644 --- a/google/cloud/aiplatform/v1/aiplatform_v1.yaml +++ b/google/cloud/aiplatform/v1/aiplatform_v1.yaml @@ -6,44 +6,94 @@ title: Vertex AI API apis: - name: google.cloud.aiplatform.v1.DatasetService - name: google.cloud.aiplatform.v1.EndpointService +- name: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService +- name: google.cloud.aiplatform.v1.FeaturestoreService +- name: google.cloud.aiplatform.v1.IndexEndpointService +- name: google.cloud.aiplatform.v1.IndexService - name: google.cloud.aiplatform.v1.JobService +- name: google.cloud.aiplatform.v1.MetadataService - name: google.cloud.aiplatform.v1.MigrationService - name: google.cloud.aiplatform.v1.ModelService - name: google.cloud.aiplatform.v1.PipelineService - name: google.cloud.aiplatform.v1.PredictionService - name: google.cloud.aiplatform.v1.SpecialistPoolService +- name: google.cloud.aiplatform.v1.TensorboardService +- name: google.cloud.aiplatform.v1.VizierService types: +- name: google.cloud.aiplatform.v1.BatchCreateFeaturesOperationMetadata +- name: google.cloud.aiplatform.v1.BatchCreateFeaturesResponse - name: google.cloud.aiplatform.v1.BatchMigrateResourcesOperationMetadata - name: google.cloud.aiplatform.v1.BatchMigrateResourcesResponse +- name: google.cloud.aiplatform.v1.BatchReadFeatureValuesOperationMetadata +- name: google.cloud.aiplatform.v1.BatchReadFeatureValuesResponse +- name: google.cloud.aiplatform.v1.CheckTrialEarlyStoppingStateMetatdata +- name: google.cloud.aiplatform.v1.CheckTrialEarlyStoppingStateResponse - name: google.cloud.aiplatform.v1.CreateDatasetOperationMetadata - name: google.cloud.aiplatform.v1.CreateEndpointOperationMetadata +- name: google.cloud.aiplatform.v1.CreateEntityTypeOperationMetadata +- name: google.cloud.aiplatform.v1.CreateFeatureOperationMetadata +- name: google.cloud.aiplatform.v1.CreateFeaturestoreOperationMetadata +- name: google.cloud.aiplatform.v1.CreateIndexEndpointOperationMetadata +- name: google.cloud.aiplatform.v1.CreateIndexOperationMetadata +- name: google.cloud.aiplatform.v1.CreateMetadataStoreOperationMetadata - name: google.cloud.aiplatform.v1.CreateSpecialistPoolOperationMetadata +- name: google.cloud.aiplatform.v1.CreateTensorboardOperationMetadata +- name: google.cloud.aiplatform.v1.DeleteMetadataStoreOperationMetadata - name: google.cloud.aiplatform.v1.DeleteOperationMetadata +- name: google.cloud.aiplatform.v1.DeployIndexOperationMetadata +- name: google.cloud.aiplatform.v1.DeployIndexResponse - name: google.cloud.aiplatform.v1.DeployModelOperationMetadata - name: google.cloud.aiplatform.v1.DeployModelResponse - name: google.cloud.aiplatform.v1.ExportDataOperationMetadata - name: google.cloud.aiplatform.v1.ExportDataResponse +- name: google.cloud.aiplatform.v1.ExportFeatureValuesOperationMetadata +- name: google.cloud.aiplatform.v1.ExportFeatureValuesResponse - name: google.cloud.aiplatform.v1.ExportModelOperationMetadata - name: google.cloud.aiplatform.v1.ExportModelResponse - name: google.cloud.aiplatform.v1.ImportDataOperationMetadata - name: google.cloud.aiplatform.v1.ImportDataResponse +- name: google.cloud.aiplatform.v1.ImportFeatureValuesOperationMetadata +- name: google.cloud.aiplatform.v1.ImportFeatureValuesResponse +- name: google.cloud.aiplatform.v1.MutateDeployedIndexOperationMetadata +- name: google.cloud.aiplatform.v1.MutateDeployedIndexResponse +- name: google.cloud.aiplatform.v1.PurgeArtifactsMetadata +- name: google.cloud.aiplatform.v1.PurgeArtifactsResponse +- name: google.cloud.aiplatform.v1.PurgeContextsMetadata +- name: google.cloud.aiplatform.v1.PurgeContextsResponse +- name: google.cloud.aiplatform.v1.PurgeExecutionsMetadata +- name: google.cloud.aiplatform.v1.PurgeExecutionsResponse - name: google.cloud.aiplatform.v1.SpecialistPool +- name: google.cloud.aiplatform.v1.SuggestTrialsMetadata +- name: google.cloud.aiplatform.v1.SuggestTrialsResponse +- name: google.cloud.aiplatform.v1.UndeployIndexOperationMetadata +- name: google.cloud.aiplatform.v1.UndeployIndexResponse - name: google.cloud.aiplatform.v1.UndeployModelOperationMetadata - name: google.cloud.aiplatform.v1.UndeployModelResponse +- name: google.cloud.aiplatform.v1.UpdateFeaturestoreOperationMetadata +- name: google.cloud.aiplatform.v1.UpdateIndexOperationMetadata +- name: google.cloud.aiplatform.v1.UpdateModelDeploymentMonitoringJobOperationMetadata - name: google.cloud.aiplatform.v1.UpdateSpecialistPoolOperationMetadata +- name: google.cloud.aiplatform.v1.UpdateTensorboardOperationMetadata - name: google.cloud.aiplatform.v1.UploadModelOperationMetadata - name: google.cloud.aiplatform.v1.UploadModelResponse +- name: google.cloud.aiplatform.v1.schema.ImageBoundingBoxAnnotation +- name: google.cloud.aiplatform.v1.schema.ImageClassificationAnnotation +- name: google.cloud.aiplatform.v1.schema.ImageDataItem +- name: google.cloud.aiplatform.v1.schema.ImageSegmentationAnnotation +- name: google.cloud.aiplatform.v1.schema.TextClassificationAnnotation +- name: google.cloud.aiplatform.v1.schema.TextDataItem +- name: google.cloud.aiplatform.v1.schema.TextExtractionAnnotation +- name: google.cloud.aiplatform.v1.schema.TextSentimentAnnotation +- name: google.cloud.aiplatform.v1.schema.VideoActionRecognitionAnnotation +- name: google.cloud.aiplatform.v1.schema.VideoClassificationAnnotation +- name: google.cloud.aiplatform.v1.schema.VideoDataItem +- name: google.cloud.aiplatform.v1.schema.VideoObjectTrackingAnnotation documentation: summary: |- Train high-quality custom machine learning models with minimal machine learning expertise and effort. - overview: |- - Vertex AI enables data scientists, developers, and AI newcomers to create - custom machine learning models specific to their business needs by - leveraging Google's state-of-the-art transfer learning and innovative AI - research. rules: - selector: google.cloud.location.Locations.GetLocation description: Gets information about a location. @@ -51,14 +101,49 @@ documentation: - selector: google.cloud.location.Locations.ListLocations description: Lists information about the supported locations for this service. + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + description: |- + Gets the access control policy for a resource. Returns an empty policy + if the resource exists and does not have a policy set. + + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + description: |- + Sets the access control policy on the specified resource. Replaces + any existing policy. + + Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` + errors. + + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + description: |- + Returns permissions that a caller has on the specified resource. If the + resource does not exist, this will return an empty set of + permissions, not a `NOT_FOUND` error. + + Note: This operation is designed to be used for building + permission-aware UIs and command-line tools, not for authorization + checking. This operation may "fail open" without warning. + backend: rules: - selector: 'google.cloud.aiplatform.v1.DatasetService.*' deadline: 60.0 - selector: 'google.cloud.aiplatform.v1.EndpointService.*' deadline: 60.0 + - selector: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.ReadFeatureValues + deadline: 60.0 + - selector: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.StreamingReadFeatureValues + deadline: 60.0 + - selector: 'google.cloud.aiplatform.v1.FeaturestoreService.*' + deadline: 60.0 + - selector: 'google.cloud.aiplatform.v1.IndexEndpointService.*' + deadline: 30.0 + - selector: 'google.cloud.aiplatform.v1.IndexService.*' + deadline: 30.0 - selector: 'google.cloud.aiplatform.v1.JobService.*' deadline: 60.0 + - selector: 'google.cloud.aiplatform.v1.MetadataService.*' + deadline: 60.0 - selector: google.cloud.aiplatform.v1.MigrationService.BatchMigrateResources deadline: 60.0 - selector: google.cloud.aiplatform.v1.MigrationService.SearchMigratableResources @@ -67,13 +152,330 @@ backend: deadline: 60.0 - selector: 'google.cloud.aiplatform.v1.PipelineService.*' deadline: 60.0 - - selector: google.cloud.aiplatform.v1.PredictionService.Predict + - selector: 'google.cloud.aiplatform.v1.PredictionService.*' deadline: 600.0 - selector: 'google.cloud.aiplatform.v1.SpecialistPoolService.*' deadline: 60.0 + - selector: 'google.cloud.aiplatform.v1.TensorboardService.*' + deadline: 60.0 + - selector: 'google.cloud.aiplatform.v1.VizierService.*' + deadline: 60.0 + - selector: google.cloud.location.Locations.GetLocation + deadline: 30.0 + - selector: google.cloud.location.Locations.ListLocations + deadline: 30.0 + - selector: 'google.iam.v1.IAMPolicy.*' + deadline: 60.0 - selector: 'google.longrunning.Operations.*' deadline: 60.0 +http: + rules: + - selector: google.cloud.location.Locations.GetLocation + get: '/ui/{name=projects/*/locations/*}' + additional_bindings: + - get: '/v1/{name=projects/*/locations/*}' + - selector: google.cloud.location.Locations.ListLocations + get: '/ui/{name=projects/*}/locations' + additional_bindings: + - get: '/v1/{name=projects/*}/locations' + - selector: google.longrunning.Operations.CancelOperation + post: '/ui/{name=projects/*/locations/*/operations/*}:cancel' + additional_bindings: + - post: '/ui/{name=projects/*/locations/*/datasets/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/edgeDevices/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/endpoints/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/featurestores/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/customJobs/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/dataLabelingJobs/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/hyperparameterTuningJobs/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/indexes/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/indexEndpoints/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/migratableResources/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/models/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/studies/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/studies/*/trials/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/trainingPipelines/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/pipelineJobs/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/specialistPools/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/tensorboards/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/datasets/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/datasets/*/dataItems/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/endpoints/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/featurestores/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/customJobs/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/dataLabelingJobs/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/hyperparameterTuningJobs/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/indexes/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/indexEndpoints/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/migratableResources/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/models/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/studies/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/studies/*/trials/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/trainingPipelines/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/pipelineJobs/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/specialistPools/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/tensorboards/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*/operations/*}:cancel' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/ui/{name=projects/*/locations/*/operations/*}' + additional_bindings: + - delete: '/ui/{name=projects/*/locations/*/datasets/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/edgeDevices/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/endpoints/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/featurestores/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/customJobs/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/dataLabelingJobs/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/hyperparameterTuningJobs/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/indexes/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/indexEndpoints/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/migratableResources/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/models/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/studies/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/studies/*/trials/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/trainingPipelines/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/pipelineJobs/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/specialistPools/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/tensorboards/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/datasets/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/datasets/*/dataItems/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/endpoints/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/featurestores/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/customJobs/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/dataLabelingJobs/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/hyperparameterTuningJobs/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/indexes/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/indexEndpoints/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/migratableResources/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/models/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/studies/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/studies/*/trials/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/trainingPipelines/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/pipelineJobs/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/specialistPools/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/tensorboards/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/ui/{name=projects/*/locations/*/operations/*}' + additional_bindings: + - get: '/ui/{name=projects/*/locations/*/datasets/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/edgeDeploymentJobs/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/edgeDevices/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/endpoints/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/featurestores/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/customJobs/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/dataLabelingJobs/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/hyperparameterTuningJobs/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/indexes/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/indexEndpoints/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/migratableResources/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/models/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/studies/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/studies/*/trials/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/trainingPipelines/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/pipelineJobs/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/specialistPools/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/tensorboards/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/datasets/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/datasets/*/dataItems/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/endpoints/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/featurestores/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/customJobs/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/dataLabelingJobs/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/hyperparameterTuningJobs/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/indexes/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/indexEndpoints/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/migratableResources/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/models/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/studies/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/studies/*/trials/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/trainingPipelines/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/pipelineJobs/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/specialistPools/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/tensorboards/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/ui/{name=projects/*/locations/*}/operations' + additional_bindings: + - get: '/ui/{name=projects/*/locations/*/datasets/*}/operations' + - get: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*}/operations' + - get: '/ui/{name=projects/*/locations/*/datasets/*/savedQueries/*}/operations' + - get: '/ui/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}/operations' + - get: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*}/operations' + - get: '/ui/{name=projects/*/locations/*/edgeDevices/*}/operations' + - get: '/ui/{name=projects/*/locations/*/endpoints/*}/operations' + - get: '/ui/{name=projects/*/locations/*/featurestores/*}/operations' + - get: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*}/operations' + - get: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}/operations' + - get: '/ui/{name=projects/*/locations/*/customJobs/*}/operations' + - get: '/ui/{name=projects/*/locations/*/dataLabelingJobs/*}/operations' + - get: '/ui/{name=projects/*/locations/*/hyperparameterTuningJobs/*}/operations' + - get: '/ui/{name=projects/*/locations/*/indexes/*}/operations' + - get: '/ui/{name=projects/*/locations/*/indexEndpoints/*}/operations' + - get: '/ui/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}/operations' + - get: '/ui/{name=projects/*/locations/*/migratableResources/*}/operations' + - get: '/ui/{name=projects/*/locations/*/models/*}/operations' + - get: '/ui/{name=projects/*/locations/*/models/*/evaluations/*}/operations' + - get: '/ui/{name=projects/*/locations/*/studies/*}/operations' + - get: '/ui/{name=projects/*/locations/*/studies/*/trials/*}/operations' + - get: '/ui/{name=projects/*/locations/*/trainingPipelines/*}/operations' + - get: '/ui/{name=projects/*/locations/*/pipelineJobs/*}/operations' + - get: '/ui/{name=projects/*/locations/*/specialistPools/*}/operations' + - get: '/ui/{name=projects/*/locations/*/tensorboards/*}/operations' + - get: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*}/operations' + - get: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/operations' + - get: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}/operations' + - get: '/v1/{name=projects/*/locations/*}/operations' + - get: '/v1/{name=projects/*/locations/*/datasets/*}/operations' + - get: '/v1/{name=projects/*/locations/*/datasets/*/dataItems/*}/operations' + - get: '/v1/{name=projects/*/locations/*/datasets/*/savedQueries/*}/operations' + - get: '/v1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}/operations' + - get: '/v1/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*}/operations' + - get: '/v1/{name=projects/*/locations/*/endpoints/*}/operations' + - get: '/v1/{name=projects/*/locations/*/featurestores/*}/operations' + - get: '/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*}/operations' + - get: '/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}/operations' + - get: '/v1/{name=projects/*/locations/*/customJobs/*}/operations' + - get: '/v1/{name=projects/*/locations/*/dataLabelingJobs/*}/operations' + - get: '/v1/{name=projects/*/locations/*/hyperparameterTuningJobs/*}/operations' + - get: '/v1/{name=projects/*/locations/*/indexes/*}/operations' + - get: '/v1/{name=projects/*/locations/*/indexEndpoints/*}/operations' + - get: '/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}/operations' + - get: '/v1/{name=projects/*/locations/*/migratableResources/*}/operations' + - get: '/v1/{name=projects/*/locations/*/models/*}/operations' + - get: '/v1/{name=projects/*/locations/*/models/*/evaluations/*}/operations' + - get: '/v1/{name=projects/*/locations/*/studies/*}/operations' + - get: '/v1/{name=projects/*/locations/*/studies/*/trials/*}/operations' + - get: '/v1/{name=projects/*/locations/*/trainingPipelines/*}/operations' + - get: '/v1/{name=projects/*/locations/*/pipelineJobs/*}/operations' + - get: '/v1/{name=projects/*/locations/*/specialistPools/*}/operations' + - get: '/v1/{name=projects/*/locations/*/tensorboards/*}/operations' + - get: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*}/operations' + - get: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/operations' + - get: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}/operations' + - selector: google.longrunning.Operations.WaitOperation + post: '/ui/{name=projects/*/locations/*/operations/*}:wait' + additional_bindings: + - post: '/ui/{name=projects/*/locations/*/datasets/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/edgeDevices/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/endpoints/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/featurestores/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/customJobs/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/dataLabelingJobs/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/hyperparameterTuningJobs/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/indexes/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/indexEndpoints/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/migratableResources/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/models/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/studies/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/studies/*/trials/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/trainingPipelines/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/pipelineJobs/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/specialistPools/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/tensorboards/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/datasets/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/datasets/*/dataItems/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/endpoints/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/featurestores/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/customJobs/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/dataLabelingJobs/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/hyperparameterTuningJobs/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/indexes/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/indexEndpoints/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/migratableResources/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/models/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/studies/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/studies/*/trials/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/trainingPipelines/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/pipelineJobs/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/specialistPools/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/tensorboards/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*/operations/*}:wait' + authentication: rules: - selector: 'google.cloud.aiplatform.v1.DatasetService.*' @@ -84,10 +486,34 @@ authentication: oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.ReadFeatureValues + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.StreamingReadFeatureValues + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.cloud.aiplatform.v1.FeaturestoreService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.cloud.aiplatform.v1.IndexEndpointService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.cloud.aiplatform.v1.IndexService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform - selector: 'google.cloud.aiplatform.v1.JobService.*' oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform + - selector: 'google.cloud.aiplatform.v1.MetadataService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform - selector: google.cloud.aiplatform.v1.MigrationService.BatchMigrateResources oauth: canonical_scopes: |- @@ -104,7 +530,7 @@ authentication: oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform - - selector: google.cloud.aiplatform.v1.PredictionService.Predict + - selector: 'google.cloud.aiplatform.v1.PredictionService.*' oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform @@ -112,6 +538,76 @@ authentication: oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform + - selector: 'google.cloud.aiplatform.v1.TensorboardService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.aiplatform.v1.TensorboardService.GetTensorboard + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/cloud-platform.read-only + - selector: google.cloud.aiplatform.v1.TensorboardService.GetTensorboardExperiment + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/cloud-platform.read-only + - selector: google.cloud.aiplatform.v1.TensorboardService.GetTensorboardRun + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/cloud-platform.read-only + - selector: google.cloud.aiplatform.v1.TensorboardService.GetTensorboardTimeSeries + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/cloud-platform.read-only + - selector: google.cloud.aiplatform.v1.TensorboardService.ListTensorboardExperiments + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/cloud-platform.read-only + - selector: google.cloud.aiplatform.v1.TensorboardService.ListTensorboardRuns + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/cloud-platform.read-only + - selector: google.cloud.aiplatform.v1.TensorboardService.ListTensorboardTimeSeries + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/cloud-platform.read-only + - selector: google.cloud.aiplatform.v1.TensorboardService.ListTensorboards + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/cloud-platform.read-only + - selector: google.cloud.aiplatform.v1.TensorboardService.ReadTensorboardBlobData + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/cloud-platform.read-only + - selector: google.cloud.aiplatform.v1.TensorboardService.ReadTensorboardTimeSeriesData + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/cloud-platform.read-only + - selector: 'google.cloud.aiplatform.v1.VizierService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.GetLocation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.ListLocations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.iam.v1.IAMPolicy.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform - selector: 'google.longrunning.Operations.*' oauth: canonical_scopes: |- diff --git a/google/cloud/aiplatform/v1/annotation.proto b/google/cloud/aiplatform/v1/annotation.proto index 545cf2786..91b768e47 100644 --- a/google/cloud/aiplatform/v1/annotation.proto +++ b/google/cloud/aiplatform/v1/annotation.proto @@ -18,15 +18,19 @@ package google.cloud.aiplatform.v1; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; + import "google/cloud/aiplatform/v1/user_action_reference.proto"; import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "AnnotationProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Used to assign specific AnnotationSpec to a particular area of a DataItem or // the whole part of the DataItem. diff --git a/google/cloud/aiplatform/v1/annotation_spec.proto b/google/cloud/aiplatform/v1/annotation_spec.proto index bbcb03266..b4727ac90 100644 --- a/google/cloud/aiplatform/v1/annotation_spec.proto +++ b/google/cloud/aiplatform/v1/annotation_spec.proto @@ -21,10 +21,13 @@ import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "AnnotationSpecProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Identifies a concept with which DataItems may be annotated with. message AnnotationSpec { diff --git a/google/cloud/aiplatform/v1/artifact.proto b/google/cloud/aiplatform/v1/artifact.proto new file mode 100644 index 000000000..c34a76fa5 --- /dev/null +++ b/google/cloud/aiplatform/v1/artifact.proto @@ -0,0 +1,111 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/value.proto"; +import "google/protobuf/struct.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "ArtifactProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Instance of a general artifact. +message Artifact { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/Artifact" + pattern: "projects/{project}/locations/{location}/metadataStores/{metadata_store}/artifacts/{artifact}" + }; + + // Describes the state of the Artifact. + enum State { + // Unspecified state for the Artifact. + STATE_UNSPECIFIED = 0; + + // A state used by systems like Vertex AI Pipelines to indicate that the + // underlying data item represented by this Artifact is being created. + PENDING = 1; + + // A state indicating that the Artifact should exist, unless something + // external to the system deletes it. + LIVE = 2; + } + + // Output only. The resource name of the Artifact. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // User provided display name of the Artifact. + // May be up to 128 Unicode characters. + string display_name = 2; + + // The uniform resource identifier of the artifact file. + // May be empty if there is no actual artifact file. + string uri = 6; + + // An eTag used to perform consistent read-modify-write updates. If not set, a + // blind "overwrite" update happens. + string etag = 9; + + // The labels with user-defined metadata to organize your Artifacts. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // No more than 64 user labels can be associated with one Artifact (System + // labels are excluded). + map labels = 10; + + // Output only. Timestamp when this Artifact was created. + google.protobuf.Timestamp create_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this Artifact was last updated. + google.protobuf.Timestamp update_time = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The state of this Artifact. This is a property of the Artifact, and does + // not imply or capture any ongoing process. This property is managed by + // clients (such as Vertex AI Pipelines), and the system does not prescribe + // or check the validity of state transitions. + State state = 13; + + // The title of the schema describing the metadata. + // + // Schema title and version is expected to be registered in earlier Create + // Schema calls. And both are used together as unique identifiers to identify + // schemas within the local metadata store. + string schema_title = 14; + + // The version of the schema in schema_name to use. + // + // Schema title and version is expected to be registered in earlier Create + // Schema calls. And both are used together as unique identifiers to identify + // schemas within the local metadata store. + string schema_version = 15; + + // Properties of the Artifact. + // The size of this field should not exceed 200KB. + google.protobuf.Struct metadata = 16; + + // Description of the Artifact + string description = 17; +} diff --git a/google/cloud/aiplatform/v1/batch_prediction_job.proto b/google/cloud/aiplatform/v1/batch_prediction_job.proto index f99371b23..a793e57f4 100644 --- a/google/cloud/aiplatform/v1/batch_prediction_job.proto +++ b/google/cloud/aiplatform/v1/batch_prediction_job.proto @@ -20,19 +20,25 @@ import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/cloud/aiplatform/v1/completion_stats.proto"; import "google/cloud/aiplatform/v1/encryption_spec.proto"; +import "google/cloud/aiplatform/v1/explanation.proto"; import "google/cloud/aiplatform/v1/io.proto"; import "google/cloud/aiplatform/v1/job_state.proto"; import "google/cloud/aiplatform/v1/machine_resources.proto"; import "google/cloud/aiplatform/v1/manual_batch_tuning_parameters.proto"; +import "google/cloud/aiplatform/v1/model_monitoring.proto"; +import "google/cloud/aiplatform/v1/unmanaged_container_model.proto"; import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "BatchPredictionJobProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A job that uses a [Model][google.cloud.aiplatform.v1.BatchPredictionJob.model] to produce predictions // on multiple [input instances][google.cloud.aiplatform.v1.BatchPredictionJob.input_config]. If @@ -91,8 +97,7 @@ message BatchPredictionJob { // `errors_N.` files are created (N depends on total number // of failed predictions). These files contain the failed instances, // as per their schema, followed by an additional `error` field which as - // value has - // [`google.rpc.Status`](Status) + // value has [google.rpc.Status][google.rpc.Status] // containing only `code` and `message` fields. GcsDestination gcs_destination = 2; @@ -112,7 +117,7 @@ message BatchPredictionJob { // prediction schemata. The `errors` table contains rows for which the // prediction has failed, it has instance columns, as per the // instance schema, followed by a single "errors" column, which as values - // has [`google.rpc.Status`](Status) + // has [google.rpc.Status][google.rpc.Status] // represented as a STRUCT, and containing only `code` and `message`. BigQueryDestination bigquery_destination = 3; } @@ -137,6 +142,12 @@ message BatchPredictionJob { // format, into which the prediction output is written. string bigquery_output_dataset = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } + + // Output only. The name of the BigQuery table created, in + // `predictions_` + // format, into which the prediction output is written. + // Can be used by UI to generate the BigQuery output path, for example. + string bigquery_output_table = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Output only. Resource name of the BatchPredictionJob. @@ -145,16 +156,19 @@ message BatchPredictionJob { // Required. The user-defined name of this BatchPredictionJob. string display_name = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. The name of the Model that produces the predictions via this job, + // The name of the Model resoure that produces the predictions via this job, // must share the same ancestor Location. // Starting this job has no impact on any existing deployments of the Model // and their resources. - string model = 3 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "aiplatform.googleapis.com/Model" - } - ]; + // Exactly one of model and unmanaged_container_model must be set. + string model = 3 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Model" + }]; + + // Contains model information necessary to perform batch prediction without + // requiring uploading to model registry. + // Exactly one of model and unmanaged_container_model must be set. + UnmanagedContainerModel unmanaged_container_model = 28; // Required. Input configuration of the instances on which predictions are performed. // The schema of any single instance may be specified via @@ -191,6 +205,32 @@ message BatchPredictionJob { // the tuning itself). ManualBatchTuningParameters manual_batch_tuning_parameters = 8 [(google.api.field_behavior) = IMMUTABLE]; + // Generate explanation with the batch prediction results. + // + // When set to `true`, the batch prediction output changes based on the + // `predictions_format` field of the + // [BatchPredictionJob.output_config][google.cloud.aiplatform.v1.BatchPredictionJob.output_config] object: + // + // * `bigquery`: output includes a column named `explanation`. The value + // is a struct that conforms to the [Explanation][google.cloud.aiplatform.v1.Explanation] object. + // * `jsonl`: The JSON objects on each line include an additional entry + // keyed `explanation`. The value of the entry is a JSON object that + // conforms to the [Explanation][google.cloud.aiplatform.v1.Explanation] object. + // * `csv`: Generating explanations for CSV format is not supported. + // + // If this field is set to true, either the [Model.explanation_spec][google.cloud.aiplatform.v1.Model.explanation_spec] or + // [explanation_spec][google.cloud.aiplatform.v1.BatchPredictionJob.explanation_spec] must be populated. + bool generate_explanation = 23; + + // Explanation configuration for this BatchPredictionJob. Can be + // specified only if [generate_explanation][google.cloud.aiplatform.v1.BatchPredictionJob.generate_explanation] is set to `true`. + // + // This value overrides the value of [Model.explanation_spec][google.cloud.aiplatform.v1.Model.explanation_spec]. All fields of + // [explanation_spec][google.cloud.aiplatform.v1.BatchPredictionJob.explanation_spec] are optional in the request. If a field of the + // [explanation_spec][google.cloud.aiplatform.v1.BatchPredictionJob.explanation_spec] object is not populated, the corresponding field of + // the [Model.explanation_spec][google.cloud.aiplatform.v1.Model.explanation_spec] object is inherited. + ExplanationSpec explanation_spec = 25; + // Output only. Information further describing the output of this job. OutputInfo output_info = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; diff --git a/google/cloud/aiplatform/v1/completion_stats.proto b/google/cloud/aiplatform/v1/completion_stats.proto index 56dddbad7..09288808c 100644 --- a/google/cloud/aiplatform/v1/completion_stats.proto +++ b/google/cloud/aiplatform/v1/completion_stats.proto @@ -20,10 +20,13 @@ import "google/api/field_behavior.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "CompletionStatsProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Success and error statistics of processing multiple entities // (for example, DataItems or structured data rows) in batch. diff --git a/google/cloud/aiplatform/v1/context.proto b/google/cloud/aiplatform/v1/context.proto new file mode 100644 index 000000000..0305987f0 --- /dev/null +++ b/google/cloud/aiplatform/v1/context.proto @@ -0,0 +1,96 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/value.proto"; +import "google/protobuf/struct.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "ContextProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Instance of a general context. +message Context { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/Context" + pattern: "projects/{project}/locations/{location}/metadataStores/{metadata_store}/contexts/{context}" + }; + + // Output only. The resource name of the Context. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // User provided display name of the Context. + // May be up to 128 Unicode characters. + string display_name = 2; + + // An eTag used to perform consistent read-modify-write updates. If not set, a + // blind "overwrite" update happens. + string etag = 8; + + // The labels with user-defined metadata to organize your Contexts. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // No more than 64 user labels can be associated with one Context (System + // labels are excluded). + map labels = 9; + + // Output only. Timestamp when this Context was created. + google.protobuf.Timestamp create_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this Context was last updated. + google.protobuf.Timestamp update_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A list of resource names of Contexts that are parents of this Context. + // A Context may have at most 10 parent_contexts. + repeated string parent_contexts = 12 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Context" + } + ]; + + // The title of the schema describing the metadata. + // + // Schema title and version is expected to be registered in earlier Create + // Schema calls. And both are used together as unique identifiers to identify + // schemas within the local metadata store. + string schema_title = 13; + + // The version of the schema in schema_name to use. + // + // Schema title and version is expected to be registered in earlier Create + // Schema calls. And both are used together as unique identifiers to identify + // schemas within the local metadata store. + string schema_version = 14; + + // Properties of the Context. + // The size of this field should not exceed 200KB. + google.protobuf.Struct metadata = 15; + + // Description of the Context + string description = 16; +} diff --git a/google/cloud/aiplatform/v1/custom_job.proto b/google/cloud/aiplatform/v1/custom_job.proto index fd66585e4..9c947bf35 100644 --- a/google/cloud/aiplatform/v1/custom_job.proto +++ b/google/cloud/aiplatform/v1/custom_job.proto @@ -28,10 +28,13 @@ import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "CustomJobProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Represents a job that runs custom workloads such as a Docker container or a // Python package. A CustomJob can have multiple worker pools and each worker @@ -88,6 +91,19 @@ message CustomJob { // then all resources created by the CustomJob will be encrypted with the // provided encryption key. EncryptionSpec encryption_spec = 12; + + // Output only. URIs for accessing [interactive + // shells](https://cloud.google.com/vertex-ai/docs/training/monitor-debug-interactive-shell) + // (one URI for each training node). Only available if + // [job_spec.enable_web_access][google.cloud.aiplatform.v1.CustomJobSpec.enable_web_access] is `true`. + // + // The keys are names of each node in the training job; for example, + // `workerpool0-0` for the primary node, `workerpool1-0` for the first node in + // the second worker pool, and `workerpool1-1` for the second node in the + // second worker pool. + // + // The values are the URIs for each node's interactive shell. + map web_access_uris = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Represents the spec of a CustomJob. @@ -102,7 +118,7 @@ message CustomJobSpec { // Specifies the service account for workload run-as account. // Users submitting jobs must have act-as permission on this run-as account. - // If unspecified, the [AI Platform Custom Code Service + // If unspecified, the [Vertex AI Custom Code Service // Agent](https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) // for the CustomJob's project is used. string service_account = 4; @@ -115,9 +131,14 @@ message CustomJobSpec { // Where {project} is a project number, as in `12345`, and {network} is a // network name. // - // Private services access must already be configured for the network. If left - // unspecified, the job is not peered with any network. - string network = 5; + // To specify this field, you must have already [configured VPC Network + // Peering for Vertex + // AI](https://cloud.google.com/vertex-ai/docs/general/vpc-peering). + // + // If this field is left unspecified, the job is not peered with any network. + string network = 5 [(google.api.resource_reference) = { + type: "compute.googleapis.com/Network" + }]; // The Cloud Storage location to store the output of this CustomJob or // HyperparameterTuningJob. For HyperparameterTuningJob, @@ -141,6 +162,26 @@ message CustomJobSpec { // * AIP_CHECKPOINT_DIR = `//checkpoints/` // * AIP_TENSORBOARD_LOG_DIR = `//logs/` GcsDestination base_output_directory = 6; + + // Optional. The name of a Vertex AI [Tensorboard][google.cloud.aiplatform.v1.Tensorboard] resource to which this CustomJob + // will upload Tensorboard logs. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` + string tensorboard = 7 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Tensorboard" + } + ]; + + // Optional. Whether you want Vertex AI to enable [interactive shell + // access](https://cloud.google.com/vertex-ai/docs/training/monitor-debug-interactive-shell) + // to training containers. + // + // If set to `true`, you can access interactive shells at the URIs given + // by [CustomJob.web_access_uris][google.cloud.aiplatform.v1.CustomJob.web_access_uris] or [Trial.web_access_uris][google.cloud.aiplatform.v1.Trial.web_access_uris] (within + // [HyperparameterTuningJob.trials][google.cloud.aiplatform.v1.HyperparameterTuningJob.trials]). + bool enable_web_access = 10 [(google.api.field_behavior) = OPTIONAL]; } // Represents the spec of a worker pool in a job. @@ -181,6 +222,7 @@ message ContainerSpec { repeated string args = 3; // Environment variables to be passed to the container. + // Maximum limit is 100. repeated EnvVar env = 4; } @@ -206,6 +248,7 @@ message PythonPackageSpec { repeated string args = 4; // Environment variables to be passed to the python module. + // Maximum limit is 100. repeated EnvVar env = 5; } diff --git a/google/cloud/aiplatform/v1/data_item.proto b/google/cloud/aiplatform/v1/data_item.proto index 399de0e8a..f2313209c 100644 --- a/google/cloud/aiplatform/v1/data_item.proto +++ b/google/cloud/aiplatform/v1/data_item.proto @@ -18,14 +18,18 @@ package google.cloud.aiplatform.v1; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; + import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "DataItemProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A piece of data in a Dataset. Could be an image, a video, a document or plain // text. diff --git a/google/cloud/aiplatform/v1/data_labeling_job.proto b/google/cloud/aiplatform/v1/data_labeling_job.proto index a95f27c3b..82ff7cab5 100644 --- a/google/cloud/aiplatform/v1/data_labeling_job.proto +++ b/google/cloud/aiplatform/v1/data_labeling_job.proto @@ -28,10 +28,13 @@ import "google/rpc/status.proto"; import "google/type/money.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "DataLabelingJobProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // DataLabelingJob is used to trigger a human labeling job on unlabeled data // from the following Dataset: diff --git a/google/cloud/aiplatform/v1/dataset.proto b/google/cloud/aiplatform/v1/dataset.proto index e970c8cf2..da467816d 100644 --- a/google/cloud/aiplatform/v1/dataset.proto +++ b/google/cloud/aiplatform/v1/dataset.proto @@ -24,10 +24,13 @@ import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "DatasetProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A collection of DataItems and Annotations on them. message Dataset { @@ -44,6 +47,9 @@ message Dataset { // characters. string display_name = 2 [(google.api.field_behavior) = REQUIRED]; + // Optional. The description of the Dataset. + string description = 16 [(google.api.field_behavior) = OPTIONAL]; + // Required. Points to a YAML file stored on Google Cloud Storage describing additional // information about the Dataset. // The schema is defined as an OpenAPI 3.0.2 Schema Object. diff --git a/google/cloud/aiplatform/v1/dataset_service.proto b/google/cloud/aiplatform/v1/dataset_service.proto index 75a71664c..d07ecf58a 100644 --- a/google/cloud/aiplatform/v1/dataset_service.proto +++ b/google/cloud/aiplatform/v1/dataset_service.proto @@ -29,11 +29,16 @@ import "google/cloud/aiplatform/v1/training_pipeline.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "DatasetServiceProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; +// The service that handles the CRUD of Vertex AI Dataset and its child +// resources. service DatasetService { option (google.api.default_host) = "aiplatform.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; diff --git a/google/cloud/aiplatform/v1/deployed_index_ref.proto b/google/cloud/aiplatform/v1/deployed_index_ref.proto new file mode 100644 index 000000000..cd0a8595b --- /dev/null +++ b/google/cloud/aiplatform/v1/deployed_index_ref.proto @@ -0,0 +1,43 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "DeployedIndexRefProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Points to a DeployedIndex. +message DeployedIndexRef { + // Immutable. A resource name of the IndexEndpoint. + string index_endpoint = 1 [ + (google.api.field_behavior) = IMMUTABLE, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/IndexEndpoint" + } + ]; + + // Immutable. The ID of the DeployedIndex in the above IndexEndpoint. + string deployed_index_id = 2 [(google.api.field_behavior) = IMMUTABLE]; +} diff --git a/google/cloud/aiplatform/v1/deployed_model_ref.proto b/google/cloud/aiplatform/v1/deployed_model_ref.proto index c0a954e0e..0950cbb9f 100644 --- a/google/cloud/aiplatform/v1/deployed_model_ref.proto +++ b/google/cloud/aiplatform/v1/deployed_model_ref.proto @@ -20,10 +20,13 @@ import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "DeployedModelNameProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Points to a DeployedModel. message DeployedModelRef { diff --git a/google/cloud/aiplatform/v1/encryption_spec.proto b/google/cloud/aiplatform/v1/encryption_spec.proto index 36e2578e9..ee7a96b83 100644 --- a/google/cloud/aiplatform/v1/encryption_spec.proto +++ b/google/cloud/aiplatform/v1/encryption_spec.proto @@ -19,10 +19,13 @@ package google.cloud.aiplatform.v1; import "google/api/field_behavior.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "EncryptionSpecProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Represents a customer-managed encryption key spec that can be applied to // a top-level resource. diff --git a/google/cloud/aiplatform/v1/endpoint.proto b/google/cloud/aiplatform/v1/endpoint.proto index 7c5277e43..69c65501f 100644 --- a/google/cloud/aiplatform/v1/endpoint.proto +++ b/google/cloud/aiplatform/v1/endpoint.proto @@ -19,14 +19,21 @@ package google.cloud.aiplatform.v1; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/cloud/aiplatform/v1/encryption_spec.proto"; +import "google/cloud/aiplatform/v1/explanation.proto"; +import "google/cloud/aiplatform/v1/io.proto"; import "google/cloud/aiplatform/v1/machine_resources.proto"; +import "google/cloud/aiplatform/v1/model_deployment_monitoring_job.proto"; +import "google/cloud/aiplatform/v1/model_monitoring.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "EndpointProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Models are deployed into it, and afterwards Endpoint is called to obtain // predictions and explanations. @@ -85,6 +92,43 @@ message Endpoint { // Endpoint and all sub-resources of this Endpoint will be secured by // this key. EncryptionSpec encryption_spec = 10; + + // The full name of the Google Compute Engine + // [network](https://cloud.google.com//compute/docs/networks-and-firewalls#networks) + // to which the Endpoint should be peered. + // + // Private services access must already be configured for the network. If left + // unspecified, the Endpoint is not peered with any network. + // + // Only one of the fields, [network][google.cloud.aiplatform.v1.Endpoint.network] or + // [enable_private_service_connect][google.cloud.aiplatform.v1.Endpoint.enable_private_service_connect], + // can be set. + // + // [Format](https://cloud.google.com/compute/docs/reference/rest/v1/networks/insert): + // `projects/{project}/global/networks/{network}`. + // Where `{project}` is a project number, as in `12345`, and `{network}` is + // network name. + string network = 13 [(google.api.resource_reference) = { + type: "compute.googleapis.com/Network" + }]; + + // If true, expose the Endpoint via private service connect. + // + // Only one of the fields, [network][google.cloud.aiplatform.v1.Endpoint.network] or + // [enable_private_service_connect][google.cloud.aiplatform.v1.Endpoint.enable_private_service_connect], + // can be set. + bool enable_private_service_connect = 17; + + // Output only. Resource name of the Model Monitoring job associated with this Endpoint + // if monitoring is enabled by [CreateModelDeploymentMonitoringJob][]. + // Format: + // `projects/{project}/locations/{location}/modelDeploymentMonitoringJobs/{model_deployment_monitoring_job}` + string model_deployment_monitoring_job = 14 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/ModelDeploymentMonitoringJob" + } + ]; } // A deployment of a Model. Endpoints contain one or more DeployedModels. @@ -99,13 +143,16 @@ message DeployedModel { // that need a higher degree of manual configuration. DedicatedResources dedicated_resources = 7; - // A description of resources that to large degree are decided by AI - // Platform, and require only a modest additional configuration. + // A description of resources that to large degree are decided by Vertex + // AI, and require only a modest additional configuration. AutomaticResources automatic_resources = 8; } - // Output only. The ID of the DeployedModel. - string id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Immutable. The ID of the DeployedModel. If not provided upon deployment, Vertex AI + // will generate a value for this ID. + // + // This value should be 1-10 characters, and valid characters are /[0-9]/. + string id = 1 [(google.api.field_behavior) = IMMUTABLE]; // Required. The name of the Model that this is the deployment of. Note that the Model // may be in a different location than the DeployedModel's Endpoint. @@ -123,6 +170,17 @@ message DeployedModel { // Output only. Timestamp when the DeployedModel was created. google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Explanation configuration for this DeployedModel. + // + // When deploying a Model using [EndpointService.DeployModel][google.cloud.aiplatform.v1.EndpointService.DeployModel], this value + // overrides the value of [Model.explanation_spec][google.cloud.aiplatform.v1.Model.explanation_spec]. All fields of + // [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec] are optional in the request. If a field of + // [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec] is not populated, the value of the same field of + // [Model.explanation_spec][google.cloud.aiplatform.v1.Model.explanation_spec] is inherited. If the corresponding + // [Model.explanation_spec][google.cloud.aiplatform.v1.Model.explanation_spec] is not populated, all fields of the + // [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec] will be used for the explanation configuration. + ExplanationSpec explanation_spec = 9; + // The service account that the DeployedModel's container runs as. Specify the // email address of the service account. If this service account is not // specified, the container runs as a service account that doesn't have access @@ -148,4 +206,29 @@ message DeployedModel { // receives prediction requests at a high queries per second rate (QPS). // Estimate your costs before enabling this option. bool enable_access_logging = 13; + + // Output only. Provide paths for users to send predict/explain/health requests directly to + // the deployed model services running on Cloud via private services access. + // This field is populated if [network][google.cloud.aiplatform.v1.Endpoint.network] is configured. + PrivateEndpoints private_endpoints = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// PrivateEndpoints proto is used to provide paths for users to send +// requests privately. +// To send request via private service access, use predict_http_uri, +// explain_http_uri or health_http_uri. To send request via private service +// connect, use service_attachment. +message PrivateEndpoints { + // Output only. Http(s) path to send prediction requests. + string predict_http_uri = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Http(s) path to send explain requests. + string explain_http_uri = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Http(s) path to send health check requests. + string health_http_uri = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the service attachment resource. Populated if private service + // connect is enabled. + string service_attachment = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; } diff --git a/google/cloud/aiplatform/v1/endpoint_service.proto b/google/cloud/aiplatform/v1/endpoint_service.proto index ca3352f54..bb38292a6 100644 --- a/google/cloud/aiplatform/v1/endpoint_service.proto +++ b/google/cloud/aiplatform/v1/endpoint_service.proto @@ -25,11 +25,15 @@ import "google/cloud/aiplatform/v1/operation.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "EndpointServiceProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; +// A service for managing Vertex AI's Endpoints. service EndpointService { option (google.api.default_host) = "aiplatform.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; @@ -41,6 +45,7 @@ service EndpointService { body: "endpoint" }; option (google.api.method_signature) = "parent,endpoint"; + option (google.api.method_signature) = "parent,endpoint,endpoint_id"; option (google.longrunning.operation_info) = { response_type: "Endpoint" metadata_type: "CreateEndpointOperationMetadata" @@ -125,6 +130,16 @@ message CreateEndpointRequest { // Required. The Endpoint to create. Endpoint endpoint = 2 [(google.api.field_behavior) = REQUIRED]; + + // Immutable. The ID to use for endpoint, which will become the final + // component of the endpoint resource name. + // If not provided, Vertex AI will generate a value for this ID. + // + // This value should be 1-10 characters, and valid characters are /[0-9]/. + // When using HTTP/JSON, this field is populated based on a query string + // argument, such as `?endpoint_id=12345`. This is the fallback for fields + // that are not included in either the URI or the body. + string endpoint_id = 4 [(google.api.field_behavior) = IMMUTABLE]; } // Runtime operation information for [EndpointService.CreateEndpoint][google.cloud.aiplatform.v1.EndpointService.CreateEndpoint]. diff --git a/google/cloud/aiplatform/v1/entity_type.proto b/google/cloud/aiplatform/v1/entity_type.proto new file mode 100644 index 000000000..497aa96dd --- /dev/null +++ b/google/cloud/aiplatform/v1/entity_type.proto @@ -0,0 +1,77 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/feature.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "EntityTypeProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// An entity type is a type of object in a system that needs to be modeled and +// have stored information about. For example, driver is an entity type, and +// driver0 is an instance of an entity type driver. +message EntityType { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/EntityType" + pattern: "projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}" + }; + + // Immutable. Name of the EntityType. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}` + // + // The last part entity_type is assigned by the client. The entity_type can be + // up to 64 characters long and can consist only of ASCII Latin letters A-Z + // and a-z and underscore(_), and ASCII digits 0-9 starting with a letter. The + // value will be unique given a featurestore. + string name = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // Optional. Description of the EntityType. + string description = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Timestamp when this EntityType was created. + google.protobuf.Timestamp create_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this EntityType was most recently updated. + google.protobuf.Timestamp update_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The labels with user-defined metadata to organize your EntityTypes. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // + // See https://goo.gl/xmQnxf for more information on and examples of labels. + // No more than 64 user labels can be associated with one EntityType (System + // labels are excluded)." + // System reserved label keys are prefixed with "aiplatform.googleapis.com/" + // and are immutable. + map labels = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Used to perform a consistent read-modify-write updates. If not set, a blind + // "overwrite" update happens. + string etag = 7 [(google.api.field_behavior) = OPTIONAL]; +} diff --git a/google/cloud/aiplatform/v1/env_var.proto b/google/cloud/aiplatform/v1/env_var.proto index 9bb71f6b5..1d6aa59f3 100644 --- a/google/cloud/aiplatform/v1/env_var.proto +++ b/google/cloud/aiplatform/v1/env_var.proto @@ -19,10 +19,13 @@ package google.cloud.aiplatform.v1; import "google/api/field_behavior.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "EnvVarProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Represents an environment variable present in a Container or Python Module. message EnvVar { diff --git a/google/cloud/aiplatform/v1/event.proto b/google/cloud/aiplatform/v1/event.proto new file mode 100644 index 000000000..f4c928aab --- /dev/null +++ b/google/cloud/aiplatform/v1/event.proto @@ -0,0 +1,81 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "EventProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// An edge describing the relationship between an Artifact and an Execution in +// a lineage graph. +message Event { + // Describes whether an Event's Artifact is the Execution's input or output. + enum Type { + // Unspecified whether input or output of the Execution. + TYPE_UNSPECIFIED = 0; + + // An input of the Execution. + INPUT = 1; + + // An output of the Execution. + OUTPUT = 2; + } + + // Required. The relative resource name of the Artifact in the Event. + string artifact = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Artifact" + } + ]; + + // Output only. The relative resource name of the Execution in the Event. + string execution = 2 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Execution" + } + ]; + + // Output only. Time the Event occurred. + google.protobuf.Timestamp event_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The type of the Event. + Type type = 4 [(google.api.field_behavior) = REQUIRED]; + + // The labels with user-defined metadata to annotate Events. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // No more than 64 user labels can be associated with one Event (System + // labels are excluded). + // + // See https://goo.gl/xmQnxf for more information and examples of labels. + // System reserved label keys are prefixed with "aiplatform.googleapis.com/" + // and are immutable. + map labels = 5; +} diff --git a/google/cloud/aiplatform/v1/execution.proto b/google/cloud/aiplatform/v1/execution.proto new file mode 100644 index 000000000..c883d68ed --- /dev/null +++ b/google/cloud/aiplatform/v1/execution.proto @@ -0,0 +1,117 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/value.proto"; +import "google/protobuf/struct.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "ExecutionProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Instance of a general execution. +message Execution { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/Execution" + pattern: "projects/{project}/locations/{location}/metadataStores/{metadata_store}/executions/{execution}" + }; + + // Describes the state of the Execution. + enum State { + // Unspecified Execution state + STATE_UNSPECIFIED = 0; + + // The Execution is new + NEW = 1; + + // The Execution is running + RUNNING = 2; + + // The Execution has finished running + COMPLETE = 3; + + // The Execution has failed + FAILED = 4; + + // The Execution completed through Cache hit. + CACHED = 5; + + // The Execution was cancelled. + CANCELLED = 6; + } + + // Output only. The resource name of the Execution. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // User provided display name of the Execution. + // May be up to 128 Unicode characters. + string display_name = 2; + + // The state of this Execution. This is a property of the Execution, and does + // not imply or capture any ongoing process. This property is managed by + // clients (such as Vertex AI Pipelines) and the system does not prescribe + // or check the validity of state transitions. + State state = 6; + + // An eTag used to perform consistent read-modify-write updates. If not set, a + // blind "overwrite" update happens. + string etag = 9; + + // The labels with user-defined metadata to organize your Executions. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // No more than 64 user labels can be associated with one Execution (System + // labels are excluded). + map labels = 10; + + // Output only. Timestamp when this Execution was created. + google.protobuf.Timestamp create_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this Execution was last updated. + google.protobuf.Timestamp update_time = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The title of the schema describing the metadata. + // + // Schema title and version is expected to be registered in earlier Create + // Schema calls. And both are used together as unique identifiers to identify + // schemas within the local metadata store. + string schema_title = 13; + + // The version of the schema in `schema_title` to use. + // + // Schema title and version is expected to be registered in earlier Create + // Schema calls. And both are used together as unique identifiers to identify + // schemas within the local metadata store. + string schema_version = 14; + + // Properties of the Execution. + // The size of this field should not exceed 200KB. + google.protobuf.Struct metadata = 15; + + // Description of the Execution + string description = 16; +} diff --git a/google/cloud/aiplatform/v1/explanation.proto b/google/cloud/aiplatform/v1/explanation.proto new file mode 100644 index 000000000..100d7061a --- /dev/null +++ b/google/cloud/aiplatform/v1/explanation.proto @@ -0,0 +1,403 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/cloud/aiplatform/v1/explanation_metadata.proto"; +import "google/cloud/aiplatform/v1/io.proto"; +import "google/protobuf/struct.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "ExplanationProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Explanation of a prediction (provided in [PredictResponse.predictions][google.cloud.aiplatform.v1.PredictResponse.predictions]) +// produced by the Model on a given [instance][google.cloud.aiplatform.v1.ExplainRequest.instances]. +message Explanation { + // Output only. Feature attributions grouped by predicted outputs. + // + // For Models that predict only one output, such as regression Models that + // predict only one score, there is only one attibution that explains the + // predicted output. For Models that predict multiple outputs, such as + // multiclass Models that predict multiple classes, each element explains one + // specific item. [Attribution.output_index][google.cloud.aiplatform.v1.Attribution.output_index] can be used to identify which + // output this attribution is explaining. + // + // If users set [ExplanationParameters.top_k][google.cloud.aiplatform.v1.ExplanationParameters.top_k], the attributions are sorted + // by [instance_output_value][Attributions.instance_output_value] in + // descending order. If [ExplanationParameters.output_indices][google.cloud.aiplatform.v1.ExplanationParameters.output_indices] is specified, + // the attributions are stored by [Attribution.output_index][google.cloud.aiplatform.v1.Attribution.output_index] in the same + // order as they appear in the output_indices. + repeated Attribution attributions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Aggregated explanation metrics for a Model over a set of instances. +message ModelExplanation { + // Output only. Aggregated attributions explaining the Model's prediction outputs over the + // set of instances. The attributions are grouped by outputs. + // + // For Models that predict only one output, such as regression Models that + // predict only one score, there is only one attibution that explains the + // predicted output. For Models that predict multiple outputs, such as + // multiclass Models that predict multiple classes, each element explains one + // specific item. [Attribution.output_index][google.cloud.aiplatform.v1.Attribution.output_index] can be used to identify which + // output this attribution is explaining. + // + // The [baselineOutputValue][google.cloud.aiplatform.v1.Attribution.baseline_output_value], + // [instanceOutputValue][google.cloud.aiplatform.v1.Attribution.instance_output_value] and + // [featureAttributions][google.cloud.aiplatform.v1.Attribution.feature_attributions] fields are + // averaged over the test data. + // + // NOTE: Currently AutoML tabular classification Models produce only one + // attribution, which averages attributions over all the classes it predicts. + // [Attribution.approximation_error][google.cloud.aiplatform.v1.Attribution.approximation_error] is not populated. + repeated Attribution mean_attributions = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Attribution that explains a particular prediction output. +message Attribution { + // Output only. Model predicted output if the input instance is constructed from the + // baselines of all the features defined in [ExplanationMetadata.inputs][google.cloud.aiplatform.v1.ExplanationMetadata.inputs]. + // The field name of the output is determined by the key in + // [ExplanationMetadata.outputs][google.cloud.aiplatform.v1.ExplanationMetadata.outputs]. + // + // If the Model's predicted output has multiple dimensions (rank > 1), this is + // the value in the output located by [output_index][google.cloud.aiplatform.v1.Attribution.output_index]. + // + // If there are multiple baselines, their output values are averaged. + double baseline_output_value = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Model predicted output on the corresponding [explanation + // instance][ExplainRequest.instances]. The field name of the output is + // determined by the key in [ExplanationMetadata.outputs][google.cloud.aiplatform.v1.ExplanationMetadata.outputs]. + // + // If the Model predicted output has multiple dimensions, this is the value in + // the output located by [output_index][google.cloud.aiplatform.v1.Attribution.output_index]. + double instance_output_value = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Attributions of each explained feature. Features are extracted from + // the [prediction instances][google.cloud.aiplatform.v1.ExplainRequest.instances] according to + // [explanation metadata for inputs][google.cloud.aiplatform.v1.ExplanationMetadata.inputs]. + // + // The value is a struct, whose keys are the name of the feature. The values + // are how much the feature in the [instance][google.cloud.aiplatform.v1.ExplainRequest.instances] + // contributed to the predicted result. + // + // The format of the value is determined by the feature's input format: + // + // * If the feature is a scalar value, the attribution value is a + // [floating number][google.protobuf.Value.number_value]. + // + // * If the feature is an array of scalar values, the attribution value is + // an [array][google.protobuf.Value.list_value]. + // + // * If the feature is a struct, the attribution value is a + // [struct][google.protobuf.Value.struct_value]. The keys in the + // attribution value struct are the same as the keys in the feature + // struct. The formats of the values in the attribution struct are + // determined by the formats of the values in the feature struct. + // + // The [ExplanationMetadata.feature_attributions_schema_uri][google.cloud.aiplatform.v1.ExplanationMetadata.feature_attributions_schema_uri] field, + // pointed to by the [ExplanationSpec][google.cloud.aiplatform.v1.ExplanationSpec] field of the + // [Endpoint.deployed_models][google.cloud.aiplatform.v1.Endpoint.deployed_models] object, points to the schema file that + // describes the features and their attribution values (if it is populated). + google.protobuf.Value feature_attributions = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The index that locates the explained prediction output. + // + // If the prediction output is a scalar value, output_index is not populated. + // If the prediction output has multiple dimensions, the length of the + // output_index list is the same as the number of dimensions of the output. + // The i-th element in output_index is the element index of the i-th dimension + // of the output vector. Indices start from 0. + repeated int32 output_index = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The display name of the output identified by [output_index][google.cloud.aiplatform.v1.Attribution.output_index]. For example, + // the predicted class name by a multi-classification Model. + // + // This field is only populated iff the Model predicts display names as a + // separate field along with the explained output. The predicted display name + // must has the same shape of the explained output, and can be located using + // output_index. + string output_display_name = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Error of [feature_attributions][google.cloud.aiplatform.v1.Attribution.feature_attributions] caused by approximation used in the + // explanation method. Lower value means more precise attributions. + // + // * For Sampled Shapley + // [attribution][google.cloud.aiplatform.v1.ExplanationParameters.sampled_shapley_attribution], + // increasing [path_count][google.cloud.aiplatform.v1.SampledShapleyAttribution.path_count] might reduce + // the error. + // * For Integrated Gradients + // [attribution][google.cloud.aiplatform.v1.ExplanationParameters.integrated_gradients_attribution], + // increasing [step_count][google.cloud.aiplatform.v1.IntegratedGradientsAttribution.step_count] might + // reduce the error. + // * For [XRAI attribution][google.cloud.aiplatform.v1.ExplanationParameters.xrai_attribution], + // increasing + // [step_count][google.cloud.aiplatform.v1.XraiAttribution.step_count] might reduce the error. + // + // See [this introduction](/vertex-ai/docs/explainable-ai/overview) + // for more information. + double approximation_error = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the explain output. Specified as the key in + // [ExplanationMetadata.outputs][google.cloud.aiplatform.v1.ExplanationMetadata.outputs]. + string output_name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Specification of Model explanation. +message ExplanationSpec { + // Required. Parameters that configure explaining of the Model's predictions. + ExplanationParameters parameters = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Metadata describing the Model's input and output for explanation. + ExplanationMetadata metadata = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Parameters to configure explaining for Model's predictions. +message ExplanationParameters { + oneof method { + // An attribution method that approximates Shapley values for features that + // contribute to the label being predicted. A sampling strategy is used to + // approximate the value rather than considering all subsets of features. + // Refer to this paper for model details: https://arxiv.org/abs/1306.4265. + SampledShapleyAttribution sampled_shapley_attribution = 1; + + // An attribution method that computes Aumann-Shapley values taking + // advantage of the model's fully differentiable structure. Refer to this + // paper for more details: https://arxiv.org/abs/1703.01365 + IntegratedGradientsAttribution integrated_gradients_attribution = 2; + + // An attribution method that redistributes Integrated Gradients + // attribution to segmented regions, taking advantage of the model's fully + // differentiable structure. Refer to this paper for + // more details: https://arxiv.org/abs/1906.02825 + // + // XRAI currently performs better on natural images, like a picture of a + // house or an animal. If the images are taken in artificial environments, + // like a lab or manufacturing line, or from diagnostic equipment, like + // x-rays or quality-control cameras, use Integrated Gradients instead. + XraiAttribution xrai_attribution = 3; + } + + // If populated, returns attributions for top K indices of outputs + // (defaults to 1). Only applies to Models that predicts more than one outputs + // (e,g, multi-class Models). When set to -1, returns explanations for all + // outputs. + int32 top_k = 4; + + // If populated, only returns attributions that have + // [output_index][google.cloud.aiplatform.v1.Attribution.output_index] contained in output_indices. It + // must be an ndarray of integers, with the same shape of the output it's + // explaining. + // + // If not populated, returns attributions for [top_k][google.cloud.aiplatform.v1.ExplanationParameters.top_k] indices of outputs. + // If neither top_k nor output_indeices is populated, returns the argmax + // index of the outputs. + // + // Only applicable to Models that predict multiple outputs (e,g, multi-class + // Models that predict multiple classes). + google.protobuf.ListValue output_indices = 5; +} + +// An attribution method that approximates Shapley values for features that +// contribute to the label being predicted. A sampling strategy is used to +// approximate the value rather than considering all subsets of features. +message SampledShapleyAttribution { + // Required. The number of feature permutations to consider when approximating the + // Shapley values. + // + // Valid range of its value is [1, 50], inclusively. + int32 path_count = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// An attribution method that computes the Aumann-Shapley value taking advantage +// of the model's fully differentiable structure. Refer to this paper for +// more details: https://arxiv.org/abs/1703.01365 +message IntegratedGradientsAttribution { + // Required. The number of steps for approximating the path integral. + // A good value to start is 50 and gradually increase until the + // sum to diff property is within the desired error range. + // + // Valid range of its value is [1, 100], inclusively. + int32 step_count = 1 [(google.api.field_behavior) = REQUIRED]; + + // Config for SmoothGrad approximation of gradients. + // + // When enabled, the gradients are approximated by averaging the gradients + // from noisy samples in the vicinity of the inputs. Adding + // noise can help improve the computed gradients. Refer to this paper for more + // details: https://arxiv.org/pdf/1706.03825.pdf + SmoothGradConfig smooth_grad_config = 2; + + // Config for IG with blur baseline. + // + // When enabled, a linear path from the maximally blurred image to the input + // image is created. Using a blurred baseline instead of zero (black image) is + // motivated by the BlurIG approach explained here: + // https://arxiv.org/abs/2004.03383 + BlurBaselineConfig blur_baseline_config = 3; +} + +// An explanation method that redistributes Integrated Gradients +// attributions to segmented regions, taking advantage of the model's fully +// differentiable structure. Refer to this paper for more details: +// https://arxiv.org/abs/1906.02825 +// +// Supported only by image Models. +message XraiAttribution { + // Required. The number of steps for approximating the path integral. + // A good value to start is 50 and gradually increase until the + // sum to diff property is met within the desired error range. + // + // Valid range of its value is [1, 100], inclusively. + int32 step_count = 1 [(google.api.field_behavior) = REQUIRED]; + + // Config for SmoothGrad approximation of gradients. + // + // When enabled, the gradients are approximated by averaging the gradients + // from noisy samples in the vicinity of the inputs. Adding + // noise can help improve the computed gradients. Refer to this paper for more + // details: https://arxiv.org/pdf/1706.03825.pdf + SmoothGradConfig smooth_grad_config = 2; + + // Config for XRAI with blur baseline. + // + // When enabled, a linear path from the maximally blurred image to the input + // image is created. Using a blurred baseline instead of zero (black image) is + // motivated by the BlurIG approach explained here: + // https://arxiv.org/abs/2004.03383 + BlurBaselineConfig blur_baseline_config = 3; +} + +// Config for SmoothGrad approximation of gradients. +// +// When enabled, the gradients are approximated by averaging the gradients from +// noisy samples in the vicinity of the inputs. Adding noise can help improve +// the computed gradients. Refer to this paper for more details: +// https://arxiv.org/pdf/1706.03825.pdf +message SmoothGradConfig { + // Represents the standard deviation of the gaussian kernel + // that will be used to add noise to the interpolated inputs + // prior to computing gradients. + oneof GradientNoiseSigma { + // This is a single float value and will be used to add noise to all the + // features. Use this field when all features are normalized to have the + // same distribution: scale to range [0, 1], [-1, 1] or z-scoring, where + // features are normalized to have 0-mean and 1-variance. Learn more about + // [normalization](https://developers.google.com/machine-learning/data-prep/transform/normalization). + // + // For best results the recommended value is about 10% - 20% of the standard + // deviation of the input feature. Refer to section 3.2 of the SmoothGrad + // paper: https://arxiv.org/pdf/1706.03825.pdf. Defaults to 0.1. + // + // If the distribution is different per feature, set + // [feature_noise_sigma][google.cloud.aiplatform.v1.SmoothGradConfig.feature_noise_sigma] instead + // for each feature. + float noise_sigma = 1; + + // This is similar to [noise_sigma][google.cloud.aiplatform.v1.SmoothGradConfig.noise_sigma], but + // provides additional flexibility. A separate noise sigma can be provided + // for each feature, which is useful if their distributions are different. + // No noise is added to features that are not set. If this field is unset, + // [noise_sigma][google.cloud.aiplatform.v1.SmoothGradConfig.noise_sigma] will be used for all + // features. + FeatureNoiseSigma feature_noise_sigma = 2; + } + + // The number of gradient samples to use for + // approximation. The higher this number, the more accurate the gradient + // is, but the runtime complexity increases by this factor as well. + // Valid range of its value is [1, 50]. Defaults to 3. + int32 noisy_sample_count = 3; +} + +// Noise sigma by features. Noise sigma represents the standard deviation of the +// gaussian kernel that will be used to add noise to interpolated inputs prior +// to computing gradients. +message FeatureNoiseSigma { + // Noise sigma for a single feature. + message NoiseSigmaForFeature { + // The name of the input feature for which noise sigma is provided. The + // features are defined in + // [explanation metadata inputs][google.cloud.aiplatform.v1.ExplanationMetadata.inputs]. + string name = 1; + + // This represents the standard deviation of the Gaussian kernel that will + // be used to add noise to the feature prior to computing gradients. Similar + // to [noise_sigma][google.cloud.aiplatform.v1.SmoothGradConfig.noise_sigma] but represents the + // noise added to the current feature. Defaults to 0.1. + float sigma = 2; + } + + // Noise sigma per feature. No noise is added to features that are not set. + repeated NoiseSigmaForFeature noise_sigma = 1; +} + +// Config for blur baseline. +// +// When enabled, a linear path from the maximally blurred image to the input +// image is created. Using a blurred baseline instead of zero (black image) is +// motivated by the BlurIG approach explained here: +// https://arxiv.org/abs/2004.03383 +message BlurBaselineConfig { + // The standard deviation of the blur kernel for the blurred baseline. The + // same blurring parameter is used for both the height and the width + // dimension. If not set, the method defaults to the zero (i.e. black for + // images) baseline. + float max_blur_sigma = 1; +} + +// The [ExplanationSpec][google.cloud.aiplatform.v1.ExplanationSpec] entries that can be overridden at +// [online explanation][google.cloud.aiplatform.v1.PredictionService.Explain] time. +message ExplanationSpecOverride { + // The parameters to be overridden. Note that the + // [method][google.cloud.aiplatform.v1.ExplanationParameters.method] cannot be changed. If not specified, + // no parameter is overridden. + ExplanationParameters parameters = 1; + + // The metadata to be overridden. If not specified, no metadata is overridden. + ExplanationMetadataOverride metadata = 2; +} + +// The [ExplanationMetadata][google.cloud.aiplatform.v1.ExplanationMetadata] entries that can be overridden at +// [online explanation][google.cloud.aiplatform.v1.PredictionService.Explain] time. +message ExplanationMetadataOverride { + // The [input metadata][google.cloud.aiplatform.v1.ExplanationMetadata.InputMetadata] entries to be + // overridden. + message InputMetadataOverride { + // Baseline inputs for this feature. + // + // This overrides the `input_baseline` field of the + // [ExplanationMetadata.InputMetadata][google.cloud.aiplatform.v1.ExplanationMetadata.InputMetadata] + // object of the corresponding feature's input metadata. If it's not + // specified, the original baselines are not overridden. + repeated google.protobuf.Value input_baselines = 1; + } + + // Required. Overrides the [input metadata][google.cloud.aiplatform.v1.ExplanationMetadata.inputs] of the features. + // The key is the name of the feature to be overridden. The keys specified + // here must exist in the input metadata to be overridden. If a feature is + // not specified here, the corresponding feature's input metadata is not + // overridden. + map inputs = 1 [(google.api.field_behavior) = REQUIRED]; +} diff --git a/google/cloud/aiplatform/v1/explanation_metadata.proto b/google/cloud/aiplatform/v1/explanation_metadata.proto new file mode 100644 index 000000000..5189330b3 --- /dev/null +++ b/google/cloud/aiplatform/v1/explanation_metadata.proto @@ -0,0 +1,396 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/protobuf/struct.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "ExplanationMetadataProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Metadata describing the Model's input and output for explanation. +message ExplanationMetadata { + // Metadata of the input of a feature. + // + // Fields other than [InputMetadata.input_baselines][google.cloud.aiplatform.v1.ExplanationMetadata.InputMetadata.input_baselines] are applicable only + // for Models that are using Vertex AI-provided images for Tensorflow. + message InputMetadata { + // Domain details of the input feature value. Provides numeric information + // about the feature, such as its range (min, max). If the feature has been + // pre-processed, for example with z-scoring, then it provides information + // about how to recover the original feature. For example, if the input + // feature is an image and it has been pre-processed to obtain 0-mean and + // stddev = 1 values, then original_mean, and original_stddev refer to the + // mean and stddev of the original feature (e.g. image tensor) from which + // input feature (with mean = 0 and stddev = 1) was obtained. + message FeatureValueDomain { + // The minimum permissible value for this feature. + float min_value = 1; + + // The maximum permissible value for this feature. + float max_value = 2; + + // If this input feature has been normalized to a mean value of 0, + // the original_mean specifies the mean value of the domain prior to + // normalization. + float original_mean = 3; + + // If this input feature has been normalized to a standard deviation of + // 1.0, the original_stddev specifies the standard deviation of the domain + // prior to normalization. + float original_stddev = 4; + } + + // Visualization configurations for image explanation. + message Visualization { + // Type of the image visualization. Only applicable to + // [Integrated Gradients attribution][google.cloud.aiplatform.v1.ExplanationParameters.integrated_gradients_attribution]. + enum Type { + // Should not be used. + TYPE_UNSPECIFIED = 0; + + // Shows which pixel contributed to the image prediction. + PIXELS = 1; + + // Shows which region contributed to the image prediction by outlining + // the region. + OUTLINES = 2; + } + + // Whether to only highlight pixels with positive contributions, negative + // or both. Defaults to POSITIVE. + enum Polarity { + // Default value. This is the same as POSITIVE. + POLARITY_UNSPECIFIED = 0; + + // Highlights the pixels/outlines that were most influential to the + // model's prediction. + POSITIVE = 1; + + // Setting polarity to negative highlights areas that does not lead to + // the models's current prediction. + NEGATIVE = 2; + + // Shows both positive and negative attributions. + BOTH = 3; + } + + // The color scheme used for highlighting areas. + enum ColorMap { + // Should not be used. + COLOR_MAP_UNSPECIFIED = 0; + + // Positive: green. Negative: pink. + PINK_GREEN = 1; + + // Viridis color map: A perceptually uniform color mapping which is + // easier to see by those with colorblindness and progresses from yellow + // to green to blue. Positive: yellow. Negative: blue. + VIRIDIS = 2; + + // Positive: red. Negative: red. + RED = 3; + + // Positive: green. Negative: green. + GREEN = 4; + + // Positive: green. Negative: red. + RED_GREEN = 6; + + // PiYG palette. + PINK_WHITE_GREEN = 5; + } + + // How the original image is displayed in the visualization. + enum OverlayType { + // Default value. This is the same as NONE. + OVERLAY_TYPE_UNSPECIFIED = 0; + + // No overlay. + NONE = 1; + + // The attributions are shown on top of the original image. + ORIGINAL = 2; + + // The attributions are shown on top of grayscaled version of the + // original image. + GRAYSCALE = 3; + + // The attributions are used as a mask to reveal predictive parts of + // the image and hide the un-predictive parts. + MASK_BLACK = 4; + } + + // Type of the image visualization. Only applicable to + // [Integrated Gradients attribution][google.cloud.aiplatform.v1.ExplanationParameters.integrated_gradients_attribution]. + // OUTLINES shows regions of attribution, while PIXELS shows per-pixel + // attribution. Defaults to OUTLINES. + Type type = 1; + + // Whether to only highlight pixels with positive contributions, negative + // or both. Defaults to POSITIVE. + Polarity polarity = 2; + + // The color scheme used for the highlighted areas. + // + // Defaults to PINK_GREEN for + // [Integrated Gradients attribution][google.cloud.aiplatform.v1.ExplanationParameters.integrated_gradients_attribution], + // which shows positive attributions in green and negative in pink. + // + // Defaults to VIRIDIS for + // [XRAI attribution][google.cloud.aiplatform.v1.ExplanationParameters.xrai_attribution], which + // highlights the most influential regions in yellow and the least + // influential in blue. + ColorMap color_map = 3; + + // Excludes attributions above the specified percentile from the + // highlighted areas. Using the clip_percent_upperbound and + // clip_percent_lowerbound together can be useful for filtering out noise + // and making it easier to see areas of strong attribution. Defaults to + // 99.9. + float clip_percent_upperbound = 4; + + // Excludes attributions below the specified percentile, from the + // highlighted areas. Defaults to 62. + float clip_percent_lowerbound = 5; + + // How the original image is displayed in the visualization. + // Adjusting the overlay can help increase visual clarity if the original + // image makes it difficult to view the visualization. Defaults to NONE. + OverlayType overlay_type = 6; + } + + // Defines how a feature is encoded. Defaults to IDENTITY. + enum Encoding { + // Default value. This is the same as IDENTITY. + ENCODING_UNSPECIFIED = 0; + + // The tensor represents one feature. + IDENTITY = 1; + + // The tensor represents a bag of features where each index maps to + // a feature. [InputMetadata.index_feature_mapping][google.cloud.aiplatform.v1.ExplanationMetadata.InputMetadata.index_feature_mapping] must be provided for + // this encoding. For example: + // ``` + // input = [27, 6.0, 150] + // index_feature_mapping = ["age", "height", "weight"] + // ``` + BAG_OF_FEATURES = 2; + + // The tensor represents a bag of features where each index maps to a + // feature. Zero values in the tensor indicates feature being + // non-existent. [InputMetadata.index_feature_mapping][google.cloud.aiplatform.v1.ExplanationMetadata.InputMetadata.index_feature_mapping] must be provided + // for this encoding. For example: + // ``` + // input = [2, 0, 5, 0, 1] + // index_feature_mapping = ["a", "b", "c", "d", "e"] + // ``` + BAG_OF_FEATURES_SPARSE = 3; + + // The tensor is a list of binaries representing whether a feature exists + // or not (1 indicates existence). [InputMetadata.index_feature_mapping][google.cloud.aiplatform.v1.ExplanationMetadata.InputMetadata.index_feature_mapping] + // must be provided for this encoding. For example: + // ``` + // input = [1, 0, 1, 0, 1] + // index_feature_mapping = ["a", "b", "c", "d", "e"] + // ``` + INDICATOR = 4; + + // The tensor is encoded into a 1-dimensional array represented by an + // encoded tensor. [InputMetadata.encoded_tensor_name][google.cloud.aiplatform.v1.ExplanationMetadata.InputMetadata.encoded_tensor_name] must be provided + // for this encoding. For example: + // ``` + // input = ["This", "is", "a", "test", "."] + // encoded = [0.1, 0.2, 0.3, 0.4, 0.5] + // ``` + COMBINED_EMBEDDING = 5; + + // Select this encoding when the input tensor is encoded into a + // 2-dimensional array represented by an encoded tensor. + // [InputMetadata.encoded_tensor_name][google.cloud.aiplatform.v1.ExplanationMetadata.InputMetadata.encoded_tensor_name] must be provided for this + // encoding. The first dimension of the encoded tensor's shape is the same + // as the input tensor's shape. For example: + // ``` + // input = ["This", "is", "a", "test", "."] + // encoded = [[0.1, 0.2, 0.3, 0.4, 0.5], + // [0.2, 0.1, 0.4, 0.3, 0.5], + // [0.5, 0.1, 0.3, 0.5, 0.4], + // [0.5, 0.3, 0.1, 0.2, 0.4], + // [0.4, 0.3, 0.2, 0.5, 0.1]] + // ``` + CONCAT_EMBEDDING = 6; + } + + // Baseline inputs for this feature. + // + // If no baseline is specified, Vertex AI chooses the baseline for this + // feature. If multiple baselines are specified, Vertex AI returns the + // average attributions across them in [Attribution.feature_attributions][google.cloud.aiplatform.v1.Attribution.feature_attributions]. + // + // For Vertex AI-provided Tensorflow images (both 1.x and 2.x), the shape + // of each baseline must match the shape of the input tensor. If a scalar is + // provided, we broadcast to the same shape as the input tensor. + // + // For custom images, the element of the baselines must be in the same + // format as the feature's input in the + // [instance][google.cloud.aiplatform.v1.ExplainRequest.instances][]. The schema of any single instance + // may be specified via Endpoint's DeployedModels' + // [Model's][google.cloud.aiplatform.v1.DeployedModel.model] + // [PredictSchemata's][google.cloud.aiplatform.v1.Model.predict_schemata] + // [instance_schema_uri][google.cloud.aiplatform.v1.PredictSchemata.instance_schema_uri]. + repeated google.protobuf.Value input_baselines = 1; + + // Name of the input tensor for this feature. Required and is only + // applicable to Vertex AI-provided images for Tensorflow. + string input_tensor_name = 2; + + // Defines how the feature is encoded into the input tensor. Defaults to + // IDENTITY. + Encoding encoding = 3; + + // Modality of the feature. Valid values are: numeric, image. Defaults to + // numeric. + string modality = 4; + + // The domain details of the input feature value. Like min/max, original + // mean or standard deviation if normalized. + FeatureValueDomain feature_value_domain = 5; + + // Specifies the index of the values of the input tensor. + // Required when the input tensor is a sparse representation. Refer to + // Tensorflow documentation for more details: + // https://www.tensorflow.org/api_docs/python/tf/sparse/SparseTensor. + string indices_tensor_name = 6; + + // Specifies the shape of the values of the input if the input is a sparse + // representation. Refer to Tensorflow documentation for more details: + // https://www.tensorflow.org/api_docs/python/tf/sparse/SparseTensor. + string dense_shape_tensor_name = 7; + + // A list of feature names for each index in the input tensor. + // Required when the input [InputMetadata.encoding][google.cloud.aiplatform.v1.ExplanationMetadata.InputMetadata.encoding] is BAG_OF_FEATURES, + // BAG_OF_FEATURES_SPARSE, INDICATOR. + repeated string index_feature_mapping = 8; + + // Encoded tensor is a transformation of the input tensor. Must be provided + // if choosing + // [Integrated Gradients attribution][google.cloud.aiplatform.v1.ExplanationParameters.integrated_gradients_attribution] + // or [XRAI attribution][google.cloud.aiplatform.v1.ExplanationParameters.xrai_attribution] and the + // input tensor is not differentiable. + // + // An encoded tensor is generated if the input tensor is encoded by a lookup + // table. + string encoded_tensor_name = 9; + + // A list of baselines for the encoded tensor. + // + // The shape of each baseline should match the shape of the encoded tensor. + // If a scalar is provided, Vertex AI broadcasts to the same shape as the + // encoded tensor. + repeated google.protobuf.Value encoded_baselines = 10; + + // Visualization configurations for image explanation. + Visualization visualization = 11; + + // Name of the group that the input belongs to. Features with the same group + // name will be treated as one feature when computing attributions. Features + // grouped together can have different shapes in value. If provided, there + // will be one single attribution generated in + // [Attribution.feature_attributions][google.cloud.aiplatform.v1.Attribution.feature_attributions], keyed by the group name. + string group_name = 12; + } + + // Metadata of the prediction output to be explained. + message OutputMetadata { + // Defines how to map [Attribution.output_index][google.cloud.aiplatform.v1.Attribution.output_index] to + // [Attribution.output_display_name][google.cloud.aiplatform.v1.Attribution.output_display_name]. + // + // If neither of the fields are specified, + // [Attribution.output_display_name][google.cloud.aiplatform.v1.Attribution.output_display_name] will not be populated. + oneof display_name_mapping { + // Static mapping between the index and display name. + // + // Use this if the outputs are a deterministic n-dimensional array, e.g. a + // list of scores of all the classes in a pre-defined order for a + // multi-classification Model. It's not feasible if the outputs are + // non-deterministic, e.g. the Model produces top-k classes or sort the + // outputs by their values. + // + // The shape of the value must be an n-dimensional array of strings. The + // number of dimensions must match that of the outputs to be explained. + // The [Attribution.output_display_name][google.cloud.aiplatform.v1.Attribution.output_display_name] is populated by locating in the + // mapping with [Attribution.output_index][google.cloud.aiplatform.v1.Attribution.output_index]. + google.protobuf.Value index_display_name_mapping = 1; + + // Specify a field name in the prediction to look for the display name. + // + // Use this if the prediction contains the display names for the outputs. + // + // The display names in the prediction must have the same shape of the + // outputs, so that it can be located by [Attribution.output_index][google.cloud.aiplatform.v1.Attribution.output_index] for + // a specific output. + string display_name_mapping_key = 2; + } + + // Name of the output tensor. Required and is only applicable to Vertex + // AI provided images for Tensorflow. + string output_tensor_name = 3; + } + + // Required. Map from feature names to feature input metadata. Keys are the name of the + // features. Values are the specification of the feature. + // + // An empty InputMetadata is valid. It describes a text feature which has the + // name specified as the key in [ExplanationMetadata.inputs][google.cloud.aiplatform.v1.ExplanationMetadata.inputs]. The baseline + // of the empty feature is chosen by Vertex AI. + // + // For Vertex AI-provided Tensorflow images, the key can be any friendly + // name of the feature. Once specified, + // [featureAttributions][google.cloud.aiplatform.v1.Attribution.feature_attributions] are keyed by + // this key (if not grouped with another feature). + // + // For custom images, the key must match with the key in + // [instance][google.cloud.aiplatform.v1.ExplainRequest.instances]. + map inputs = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Map from output names to output metadata. + // + // For Vertex AI-provided Tensorflow images, keys can be any user defined + // string that consists of any UTF-8 characters. + // + // For custom images, keys are the name of the output field in the prediction + // to be explained. + // + // Currently only one key is allowed. + map outputs = 2 [(google.api.field_behavior) = REQUIRED]; + + // Points to a YAML file stored on Google Cloud Storage describing the format + // of the [feature attributions][google.cloud.aiplatform.v1.Attribution.feature_attributions]. + // The schema is defined as an OpenAPI 3.0.2 [Schema + // Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject). + // AutoML tabular Models always have this field populated by Vertex AI. + // Note: The URI given on output may be different, including the URI scheme, + // than the one given on input. The output URI will point to a location where + // the user only has a read access. + string feature_attributions_schema_uri = 3; +} diff --git a/google/cloud/aiplatform/v1/feature.proto b/google/cloud/aiplatform/v1/feature.proto new file mode 100644 index 000000000..6614fb519 --- /dev/null +++ b/google/cloud/aiplatform/v1/feature.proto @@ -0,0 +1,116 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/feature_monitoring_stats.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "FeatureProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Feature Metadata information that describes an attribute of an entity type. +// For example, apple is an entity type, and color is a feature that describes +// apple. +message Feature { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/Feature" + pattern: "projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}/features/{feature}" + }; + + // An enum representing the value type of a feature. + enum ValueType { + // The value type is unspecified. + VALUE_TYPE_UNSPECIFIED = 0; + + // Used for Feature that is a boolean. + BOOL = 1; + + // Used for Feature that is a list of boolean. + BOOL_ARRAY = 2; + + // Used for Feature that is double. + DOUBLE = 3; + + // Used for Feature that is a list of double. + DOUBLE_ARRAY = 4; + + // Used for Feature that is INT64. + INT64 = 9; + + // Used for Feature that is a list of INT64. + INT64_ARRAY = 10; + + // Used for Feature that is string. + STRING = 11; + + // Used for Feature that is a list of String. + STRING_ARRAY = 12; + + // Used for Feature that is bytes. + BYTES = 13; + } + + // Immutable. Name of the Feature. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}/features/{feature}` + // + // The last part feature is assigned by the client. The feature can be up to + // 64 characters long and can consist only of ASCII Latin letters A-Z and a-z, + // underscore(_), and ASCII digits 0-9 starting with a letter. The value will + // be unique given an entity type. + string name = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // Description of the Feature. + string description = 2; + + // Required. Immutable. Type of Feature value. + ValueType value_type = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Output only. Timestamp when this EntityType was created. + google.protobuf.Timestamp create_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this EntityType was most recently updated. + google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The labels with user-defined metadata to organize your Features. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // + // See https://goo.gl/xmQnxf for more information on and examples of labels. + // No more than 64 user labels can be associated with one Feature (System + // labels are excluded)." + // System reserved label keys are prefixed with "aiplatform.googleapis.com/" + // and are immutable. + map labels = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Used to perform a consistent read-modify-write updates. If not set, a blind + // "overwrite" update happens. + string etag = 7; +} diff --git a/google/cloud/aiplatform/v1/feature_monitoring_stats.proto b/google/cloud/aiplatform/v1/feature_monitoring_stats.proto new file mode 100644 index 000000000..4dbba85b9 --- /dev/null +++ b/google/cloud/aiplatform/v1/feature_monitoring_stats.proto @@ -0,0 +1,87 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "FeatureMonitoringStatsProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Stats and Anomaly generated at specific timestamp for specific Feature. +// The start_time and end_time are used to define the time range of the dataset +// that current stats belongs to, e.g. prediction traffic is bucketed into +// prediction datasets by time window. If the Dataset is not defined by time +// window, start_time = end_time. Timestamp of the stats and anomalies always +// refers to end_time. Raw stats and anomalies are stored in stats_uri or +// anomaly_uri in the tensorflow defined protos. Field data_stats contains +// almost identical information with the raw stats in Vertex AI +// defined proto, for UI to display. +message FeatureStatsAnomaly { + // Feature importance score, only populated when cross-feature monitoring is + // enabled. For now only used to represent feature attribution score within + // range [0, 1] for + // [ModelDeploymentMonitoringObjectiveType.FEATURE_ATTRIBUTION_SKEW][google.cloud.aiplatform.v1.ModelDeploymentMonitoringObjectiveType.FEATURE_ATTRIBUTION_SKEW] and + // [ModelDeploymentMonitoringObjectiveType.FEATURE_ATTRIBUTION_DRIFT][google.cloud.aiplatform.v1.ModelDeploymentMonitoringObjectiveType.FEATURE_ATTRIBUTION_DRIFT]. + double score = 1; + + // Path of the stats file for current feature values in Cloud Storage bucket. + // Format: gs:////stats. + // Example: gs://monitoring_bucket/feature_name/stats. + // Stats are stored as binary format with Protobuf message + // [tensorflow.metadata.v0.FeatureNameStatistics](https://github.com/tensorflow/metadata/blob/master/tensorflow_metadata/proto/v0/statistics.proto). + string stats_uri = 3; + + // Path of the anomaly file for current feature values in Cloud Storage + // bucket. + // Format: gs:////anomalies. + // Example: gs://monitoring_bucket/feature_name/anomalies. + // Stats are stored as binary format with Protobuf message + // Anoamlies are stored as binary format with Protobuf message + // [tensorflow.metadata.v0.AnomalyInfo] + // (https://github.com/tensorflow/metadata/blob/master/tensorflow_metadata/proto/v0/anomalies.proto). + string anomaly_uri = 4; + + // Deviation from the current stats to baseline stats. + // 1. For categorical feature, the distribution distance is calculated by + // L-inifinity norm. + // 2. For numerical feature, the distribution distance is calculated by + // Jensen–Shannon divergence. + double distribution_deviation = 5; + + // This is the threshold used when detecting anomalies. + // The threshold can be changed by user, so this one might be different from + // [ThresholdConfig.value][google.cloud.aiplatform.v1.ThresholdConfig.value]. + double anomaly_detection_threshold = 9; + + // The start timestamp of window where stats were generated. + // For objectives where time window doesn't make sense (e.g. Featurestore + // Snapshot Monitoring), start_time is only used to indicate the monitoring + // intervals, so it always equals to (end_time - monitoring_interval). + google.protobuf.Timestamp start_time = 7; + + // The end timestamp of window where stats were generated. + // For objectives where time window doesn't make sense (e.g. Featurestore + // Snapshot Monitoring), end_time indicates the timestamp of the data used to + // generate stats (e.g. timestamp we take snapshots for feature values). + google.protobuf.Timestamp end_time = 8; +} diff --git a/google/cloud/aiplatform/v1/feature_selector.proto b/google/cloud/aiplatform/v1/feature_selector.proto new file mode 100644 index 000000000..5eaa6fc77 --- /dev/null +++ b/google/cloud/aiplatform/v1/feature_selector.proto @@ -0,0 +1,45 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "FeatureSelectorProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Matcher for Features of an EntityType by Feature ID. +message IdMatcher { + // Required. The following are accepted as `ids`: + // + // * A single-element list containing only `*`, which selects all Features + // in the target EntityType, or + // * A list containing only Feature IDs, which selects only Features with + // those IDs in the target EntityType. + repeated string ids = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Selector for Features of an EntityType. +message FeatureSelector { + // Required. Matches Features based on ID. + IdMatcher id_matcher = 1 [(google.api.field_behavior) = REQUIRED]; +} diff --git a/google/cloud/aiplatform/v1/featurestore.proto b/google/cloud/aiplatform/v1/featurestore.proto new file mode 100644 index 000000000..eaee0a4b2 --- /dev/null +++ b/google/cloud/aiplatform/v1/featurestore.proto @@ -0,0 +1,108 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/encryption_spec.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "FeaturestoreProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Vertex AI Feature Store provides a centralized repository for organizing, +// storing, and serving ML features. The Featurestore is a top-level container +// for your features and their values. +message Featurestore { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/Featurestore" + pattern: "projects/{project}/locations/{location}/featurestores/{featurestore}" + }; + + // OnlineServingConfig specifies the details for provisioning online serving + // resources. + message OnlineServingConfig { + // The number of nodes for each cluster. The number of nodes will not + // scale automatically but can be scaled manually by providing different + // values when updating. + int32 fixed_node_count = 2; + } + + // Possible states a Featurestore can have. + enum State { + // Default value. This value is unused. + STATE_UNSPECIFIED = 0; + + // State when the Featurestore configuration is not being updated and the + // fields reflect the current configuration of the Featurestore. The + // Featurestore is usable in this state. + STABLE = 1; + + // State when the Featurestore configuration is being updated and the fields + // reflect the updated configuration of the Featurestore, not the current + // one. For example, `online_serving_config.fixed_node_count` can take + // minutes to update. While the update is in progress, the Featurestore + // will be in the UPDATING state and the value of `fixed_node_count` will be + // the updated value. Until the update completes, the actual number of nodes + // can still be the original value of `fixed_node_count`. The Featurestore + // is still usable in this state. + UPDATING = 2; + } + + // Output only. Name of the Featurestore. Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}` + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this Featurestore was created. + google.protobuf.Timestamp create_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this Featurestore was last updated. + google.protobuf.Timestamp update_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Used to perform consistent read-modify-write updates. If not set, a blind + // "overwrite" update happens. + string etag = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The labels with user-defined metadata to organize your Featurestore. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // + // See https://goo.gl/xmQnxf for more information on and examples of labels. + // No more than 64 user labels can be associated with one Featurestore(System + // labels are excluded)." + // System reserved label keys are prefixed with "aiplatform.googleapis.com/" + // and are immutable. + map labels = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Required. Config for online serving resources. + OnlineServingConfig online_serving_config = 7 [(google.api.field_behavior) = REQUIRED]; + + // Output only. State of the featurestore. + State state = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Customer-managed encryption key spec for data storage. If set, both of the + // online and offline data storage will be secured by this key. + EncryptionSpec encryption_spec = 10 [(google.api.field_behavior) = OPTIONAL]; +} diff --git a/google/cloud/aiplatform/v1/featurestore_online_service.proto b/google/cloud/aiplatform/v1/featurestore_online_service.proto new file mode 100644 index 000000000..285198a3e --- /dev/null +++ b/google/cloud/aiplatform/v1/featurestore_online_service.proto @@ -0,0 +1,225 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/feature_selector.proto"; +import "google/cloud/aiplatform/v1/types.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "FeaturestoreOnlineServiceProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// A service for serving online feature values. +service FeaturestoreOnlineServingService { + option (google.api.default_host) = "aiplatform.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Reads Feature values of a specific entity of an EntityType. For reading + // feature values of multiple entities of an EntityType, please use + // StreamingReadFeatureValues. + rpc ReadFeatureValues(ReadFeatureValuesRequest) returns (ReadFeatureValuesResponse) { + option (google.api.http) = { + post: "/v1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:readFeatureValues" + body: "*" + }; + option (google.api.method_signature) = "entity_type"; + } + + // Reads Feature values for multiple entities. Depending on their size, data + // for different entities may be broken + // up across multiple responses. + rpc StreamingReadFeatureValues(StreamingReadFeatureValuesRequest) returns (stream ReadFeatureValuesResponse) { + option (google.api.http) = { + post: "/v1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:streamingReadFeatureValues" + body: "*" + }; + option (google.api.method_signature) = "entity_type"; + } +} + +// Request message for [FeaturestoreOnlineServingService.ReadFeatureValues][google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.ReadFeatureValues]. +message ReadFeatureValuesRequest { + // Required. The resource name of the EntityType for the entity being read. + // Value format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}`. + // For example, for a machine learning model predicting user clicks on a + // website, an EntityType ID could be `user`. + string entity_type = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/EntityType" + } + ]; + + // Required. ID for a specific entity. For example, + // for a machine learning model predicting user clicks on a website, an entity + // ID could be `user_123`. + string entity_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Selector choosing Features of the target EntityType. + FeatureSelector feature_selector = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [FeaturestoreOnlineServingService.ReadFeatureValues][google.cloud.aiplatform.v1.FeaturestoreOnlineServingService.ReadFeatureValues]. +message ReadFeatureValuesResponse { + // Metadata for requested Features. + message FeatureDescriptor { + // Feature ID. + string id = 1; + } + + // Response header with metadata for the requested + // [ReadFeatureValuesRequest.entity_type][google.cloud.aiplatform.v1.ReadFeatureValuesRequest.entity_type] and Features. + message Header { + // The resource name of the EntityType from the + // [ReadFeatureValuesRequest][google.cloud.aiplatform.v1.ReadFeatureValuesRequest]. Value format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}`. + string entity_type = 1 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/EntityType" + }]; + + // List of Feature metadata corresponding to each piece of + // [ReadFeatureValuesResponse.data][]. + repeated FeatureDescriptor feature_descriptors = 2; + } + + // Entity view with Feature values. + message EntityView { + // Container to hold value(s), successive in time, for one Feature from the + // request. + message Data { + oneof data { + // Feature value if a single value is requested. + FeatureValue value = 1; + + // Feature values list if values, successive in time, are requested. + // If the requested number of values is greater than the number of + // existing Feature values, nonexistent values are omitted instead of + // being returned as empty. + FeatureValueList values = 2; + } + } + + // ID of the requested entity. + string entity_id = 1; + + // Each piece of data holds the k + // requested values for one requested Feature. If no values + // for the requested Feature exist, the corresponding cell will be empty. + // This has the same size and is in the same order as the features from the + // header [ReadFeatureValuesResponse.header][google.cloud.aiplatform.v1.ReadFeatureValuesResponse.header]. + repeated Data data = 2; + } + + // Response header. + Header header = 1; + + // Entity view with Feature values. This may be the entity in the + // Featurestore if values for all Features were requested, or a projection + // of the entity in the Featurestore if values for only some Features were + // requested. + EntityView entity_view = 2; +} + +// Request message for +// [FeaturestoreOnlineServingService.StreamingFeatureValuesRead][]. +message StreamingReadFeatureValuesRequest { + // Required. The resource name of the entities' type. + // Value format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}`. + // For example, + // for a machine learning model predicting user clicks on a website, an + // EntityType ID could be `user`. + string entity_type = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/EntityType" + } + ]; + + // Required. IDs of entities to read Feature values of. The maximum number of IDs is + // 100. For example, for a machine learning model predicting user clicks on a + // website, an entity ID could be `user_123`. + repeated string entity_ids = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Selector choosing Features of the target EntityType. Feature IDs will be + // deduplicated. + FeatureSelector feature_selector = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Value for a feature. +// NEXT ID: 15 +message FeatureValue { + // Metadata of feature value. + message Metadata { + // Feature generation timestamp. Typically, it is provided by user at + // feature ingestion time. If not, feature store + // will use the system timestamp when the data is ingested into feature + // store. For streaming ingestion, the time, aligned by days, must be no + // older than five years (1825 days) and no later than one year (366 days) + // in the future. + google.protobuf.Timestamp generate_time = 1; + } + + // Value for the feature. + oneof value { + // Bool type feature value. + bool bool_value = 1; + + // Double type feature value. + double double_value = 2; + + // Int64 feature value. + int64 int64_value = 5; + + // String feature value. + string string_value = 6; + + // A list of bool type feature value. + BoolArray bool_array_value = 7; + + // A list of double type feature value. + DoubleArray double_array_value = 8; + + // A list of int64 type feature value. + Int64Array int64_array_value = 11; + + // A list of string type feature value. + StringArray string_array_value = 12; + + // Bytes feature value. + bytes bytes_value = 13; + } + + // Metadata of feature value. + Metadata metadata = 14; +} + +// Container for list of values. +message FeatureValueList { + // A list of feature values. All of them should be the same data type. + repeated FeatureValue values = 1; +} diff --git a/google/cloud/aiplatform/v1/featurestore_service.proto b/google/cloud/aiplatform/v1/featurestore_service.proto new file mode 100644 index 000000000..5ce119860 --- /dev/null +++ b/google/cloud/aiplatform/v1/featurestore_service.proto @@ -0,0 +1,1219 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/entity_type.proto"; +import "google/cloud/aiplatform/v1/feature.proto"; +import "google/cloud/aiplatform/v1/feature_monitoring_stats.proto"; +import "google/cloud/aiplatform/v1/feature_selector.proto"; +import "google/cloud/aiplatform/v1/featurestore.proto"; +import "google/cloud/aiplatform/v1/io.proto"; +import "google/cloud/aiplatform/v1/operation.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "FeaturestoreServiceProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// The service that handles CRUD and List for resources for Featurestore. +service FeaturestoreService { + option (google.api.default_host) = "aiplatform.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Creates a new Featurestore in a given project and location. + rpc CreateFeaturestore(CreateFeaturestoreRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/featurestores" + body: "featurestore" + }; + option (google.api.method_signature) = "parent,featurestore"; + option (google.api.method_signature) = "parent,featurestore,featurestore_id"; + option (google.longrunning.operation_info) = { + response_type: "Featurestore" + metadata_type: "CreateFeaturestoreOperationMetadata" + }; + } + + // Gets details of a single Featurestore. + rpc GetFeaturestore(GetFeaturestoreRequest) returns (Featurestore) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/featurestores/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists Featurestores in a given project and location. + rpc ListFeaturestores(ListFeaturestoresRequest) returns (ListFeaturestoresResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/featurestores" + }; + option (google.api.method_signature) = "parent"; + } + + // Updates the parameters of a single Featurestore. + rpc UpdateFeaturestore(UpdateFeaturestoreRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{featurestore.name=projects/*/locations/*/featurestores/*}" + body: "featurestore" + }; + option (google.api.method_signature) = "featurestore,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Featurestore" + metadata_type: "UpdateFeaturestoreOperationMetadata" + }; + } + + // Deletes a single Featurestore. The Featurestore must not contain any + // EntityTypes or `force` must be set to true for the request to succeed. + rpc DeleteFeaturestore(DeleteFeaturestoreRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/featurestores/*}" + }; + option (google.api.method_signature) = "name"; + option (google.api.method_signature) = "name,force"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Creates a new EntityType in a given Featurestore. + rpc CreateEntityType(CreateEntityTypeRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/featurestores/*}/entityTypes" + body: "entity_type" + }; + option (google.api.method_signature) = "parent,entity_type"; + option (google.api.method_signature) = "parent,entity_type,entity_type_id"; + option (google.longrunning.operation_info) = { + response_type: "EntityType" + metadata_type: "CreateEntityTypeOperationMetadata" + }; + } + + // Gets details of a single EntityType. + rpc GetEntityType(GetEntityTypeRequest) returns (EntityType) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists EntityTypes in a given Featurestore. + rpc ListEntityTypes(ListEntityTypesRequest) returns (ListEntityTypesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/featurestores/*}/entityTypes" + }; + option (google.api.method_signature) = "parent"; + } + + // Updates the parameters of a single EntityType. + rpc UpdateEntityType(UpdateEntityTypeRequest) returns (EntityType) { + option (google.api.http) = { + patch: "/v1/{entity_type.name=projects/*/locations/*/featurestores/*/entityTypes/*}" + body: "entity_type" + }; + option (google.api.method_signature) = "entity_type,update_mask"; + } + + // Deletes a single EntityType. The EntityType must not have any Features + // or `force` must be set to true for the request to succeed. + rpc DeleteEntityType(DeleteEntityTypeRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*}" + }; + option (google.api.method_signature) = "name"; + option (google.api.method_signature) = "name,force"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Creates a new Feature in a given EntityType. + rpc CreateFeature(CreateFeatureRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features" + body: "feature" + }; + option (google.api.method_signature) = "parent,feature"; + option (google.api.method_signature) = "parent,feature,feature_id"; + option (google.longrunning.operation_info) = { + response_type: "Feature" + metadata_type: "CreateFeatureOperationMetadata" + }; + } + + // Creates a batch of Features in a given EntityType. + rpc BatchCreateFeatures(BatchCreateFeaturesRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features:batchCreate" + body: "*" + }; + option (google.api.method_signature) = "parent,requests"; + option (google.longrunning.operation_info) = { + response_type: "BatchCreateFeaturesResponse" + metadata_type: "BatchCreateFeaturesOperationMetadata" + }; + } + + // Gets details of a single Feature. + rpc GetFeature(GetFeatureRequest) returns (Feature) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists Features in a given EntityType. + rpc ListFeatures(ListFeaturesRequest) returns (ListFeaturesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/featurestores/*/entityTypes/*}/features" + }; + option (google.api.method_signature) = "parent"; + } + + // Updates the parameters of a single Feature. + rpc UpdateFeature(UpdateFeatureRequest) returns (Feature) { + option (google.api.http) = { + patch: "/v1/{feature.name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" + body: "feature" + }; + option (google.api.method_signature) = "feature,update_mask"; + } + + // Deletes a single Feature. + rpc DeleteFeature(DeleteFeatureRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/features/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Imports Feature values into the Featurestore from a source storage. + // + // The progress of the import is tracked by the returned operation. The + // imported features are guaranteed to be visible to subsequent read + // operations after the operation is marked as successfully done. + // + // If an import operation fails, the Feature values returned from + // reads and exports may be inconsistent. If consistency is + // required, the caller must retry the same import request again and wait till + // the new operation returned is marked as successfully done. + // + // There are also scenarios where the caller can cause inconsistency. + // + // - Source data for import contains multiple distinct Feature values for + // the same entity ID and timestamp. + // - Source is modified during an import. This includes adding, updating, or + // removing source data and/or metadata. Examples of updating metadata + // include but are not limited to changing storage location, storage class, + // or retention policy. + // - Online serving cluster is under-provisioned. + rpc ImportFeatureValues(ImportFeatureValuesRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:importFeatureValues" + body: "*" + }; + option (google.api.method_signature) = "entity_type"; + option (google.longrunning.operation_info) = { + response_type: "ImportFeatureValuesResponse" + metadata_type: "ImportFeatureValuesOperationMetadata" + }; + } + + // Batch reads Feature values from a Featurestore. + // + // This API enables batch reading Feature values, where each read + // instance in the batch may read Feature values of entities from one or + // more EntityTypes. Point-in-time correctness is guaranteed for Feature + // values of each read instance as of each instance's read timestamp. + rpc BatchReadFeatureValues(BatchReadFeatureValuesRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{featurestore=projects/*/locations/*/featurestores/*}:batchReadFeatureValues" + body: "*" + }; + option (google.api.method_signature) = "featurestore"; + option (google.longrunning.operation_info) = { + response_type: "BatchReadFeatureValuesResponse" + metadata_type: "BatchReadFeatureValuesOperationMetadata" + }; + } + + // Exports Feature values from all the entities of a target EntityType. + rpc ExportFeatureValues(ExportFeatureValuesRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{entity_type=projects/*/locations/*/featurestores/*/entityTypes/*}:exportFeatureValues" + body: "*" + }; + option (google.api.method_signature) = "entity_type"; + option (google.longrunning.operation_info) = { + response_type: "ExportFeatureValuesResponse" + metadata_type: "ExportFeatureValuesOperationMetadata" + }; + } + + // Searches Features matching a query in a given project. + rpc SearchFeatures(SearchFeaturesRequest) returns (SearchFeaturesResponse) { + option (google.api.http) = { + get: "/v1/{location=projects/*/locations/*}/featurestores:searchFeatures" + }; + option (google.api.method_signature) = "location"; + option (google.api.method_signature) = "location,query"; + } +} + +// Request message for [FeaturestoreService.CreateFeaturestore][google.cloud.aiplatform.v1.FeaturestoreService.CreateFeaturestore]. +message CreateFeaturestoreRequest { + // Required. The resource name of the Location to create Featurestores. + // Format: + // `projects/{project}/locations/{location}'` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Featurestore" + } + ]; + + // Required. The Featurestore to create. + Featurestore featurestore = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The ID to use for this Featurestore, which will become the final component + // of the Featurestore's resource name. + // + // This value may be up to 60 characters, and valid characters are + // `[a-z0-9_]`. The first character cannot be a number. + // + // The value must be unique within the project and location. + string featurestore_id = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [FeaturestoreService.GetFeaturestore][google.cloud.aiplatform.v1.FeaturestoreService.GetFeaturestore]. +message GetFeaturestoreRequest { + // Required. The name of the Featurestore resource. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Featurestore" + } + ]; +} + +// Request message for [FeaturestoreService.ListFeaturestores][google.cloud.aiplatform.v1.FeaturestoreService.ListFeaturestores]. +message ListFeaturestoresRequest { + // Required. The resource name of the Location to list Featurestores. + // Format: + // `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Featurestore" + } + ]; + + // Lists the featurestores that match the filter expression. The following + // fields are supported: + // + // * `create_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. + // Values must be + // in RFC 3339 format. + // * `update_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. + // Values must be + // in RFC 3339 format. + // * `online_serving_config.fixed_node_count`: Supports `=`, `!=`, `<`, `>`, + // `<=`, and `>=` comparisons. + // * `labels`: Supports key-value equality and key presence. + // + // Examples: + // + // * `create_time > "2020-01-01" OR update_time > "2020-01-01"` + // Featurestores created or updated after 2020-01-01. + // * `labels.env = "prod"` + // Featurestores with label "env" set to "prod". + string filter = 2; + + // The maximum number of Featurestores to return. The service may return fewer + // than this value. If unspecified, at most 100 Featurestores will be + // returned. The maximum value is 100; any value greater than 100 will be + // coerced to 100. + int32 page_size = 3; + + // A page token, received from a previous + // [FeaturestoreService.ListFeaturestores][google.cloud.aiplatform.v1.FeaturestoreService.ListFeaturestores] call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // [FeaturestoreService.ListFeaturestores][google.cloud.aiplatform.v1.FeaturestoreService.ListFeaturestores] must + // match the call that provided the page token. + string page_token = 4; + + // A comma-separated list of fields to order by, sorted in ascending order. + // Use "desc" after a field name for descending. + // Supported Fields: + // + // * `create_time` + // * `update_time` + // * `online_serving_config.fixed_node_count` + string order_by = 5; + + // Mask specifying which fields to read. + google.protobuf.FieldMask read_mask = 6; +} + +// Response message for [FeaturestoreService.ListFeaturestores][google.cloud.aiplatform.v1.FeaturestoreService.ListFeaturestores]. +message ListFeaturestoresResponse { + // The Featurestores matching the request. + repeated Featurestore featurestores = 1; + + // A token, which can be sent as [ListFeaturestoresRequest.page_token][google.cloud.aiplatform.v1.ListFeaturestoresRequest.page_token] to + // retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [FeaturestoreService.UpdateFeaturestore][google.cloud.aiplatform.v1.FeaturestoreService.UpdateFeaturestore]. +message UpdateFeaturestoreRequest { + // Required. The Featurestore's `name` field is used to identify the Featurestore to be + // updated. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}` + Featurestore featurestore = 1 [(google.api.field_behavior) = REQUIRED]; + + // Field mask is used to specify the fields to be overwritten in the + // Featurestore resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then only the non-empty fields present in the + // request will be overwritten. Set the update_mask to `*` to override all + // fields. + // + // Updatable fields: + // + // * `labels` + // * `online_serving_config.fixed_node_count` + google.protobuf.FieldMask update_mask = 2; +} + +// Request message for [FeaturestoreService.DeleteFeaturestore][google.cloud.aiplatform.v1.FeaturestoreService.DeleteFeaturestore]. +message DeleteFeaturestoreRequest { + // Required. The name of the Featurestore to be deleted. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Featurestore" + } + ]; + + // If set to true, any EntityTypes and Features for this Featurestore will + // also be deleted. (Otherwise, the request will only work if the Featurestore + // has no EntityTypes.) + bool force = 2; +} + +// Request message for [FeaturestoreService.ImportFeatureValues][google.cloud.aiplatform.v1.FeaturestoreService.ImportFeatureValues]. +message ImportFeatureValuesRequest { + // Defines the Feature value(s) to import. + message FeatureSpec { + // Required. ID of the Feature to import values of. This Feature must exist in the + // target EntityType, or the request will fail. + string id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Source column to get the Feature values from. If not set, uses the column + // with the same name as the Feature ID. + string source_field = 2; + } + + // Details about the source data, including the location of the storage and + // the format. + oneof source { + AvroSource avro_source = 2; + + BigQuerySource bigquery_source = 3; + + CsvSource csv_source = 4; + } + + // Source of Feature timestamp for all Feature values of each entity. + // Timestamps must be millisecond-aligned. + oneof feature_time_source { + // Source column that holds the Feature timestamp for all Feature + // values in each entity. + string feature_time_field = 6; + + // Single Feature timestamp for all entities being imported. The + // timestamp must not have higher than millisecond precision. + google.protobuf.Timestamp feature_time = 7; + } + + // Required. The resource name of the EntityType grouping the Features for which values + // are being imported. Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}` + string entity_type = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/EntityType" + } + ]; + + // Source column that holds entity IDs. If not provided, entity IDs are + // extracted from the column named `entity_id`. + string entity_id_field = 5; + + // Required. Specifications defining which Feature values to import from the entity. The + // request fails if no feature_specs are provided, and having multiple + // feature_specs for one Feature is not allowed. + repeated FeatureSpec feature_specs = 8 [(google.api.field_behavior) = REQUIRED]; + + // If set, data will not be imported for online serving. This + // is typically used for backfilling, where Feature generation timestamps are + // not in the timestamp range needed for online serving. + bool disable_online_serving = 9; + + // Specifies the number of workers that are used to write data to the + // Featurestore. Consider the online serving capacity that you require to + // achieve the desired import throughput without interfering with online + // serving. The value must be positive, and less than or equal to 100. + // If not set, defaults to using 1 worker. The low count ensures minimal + // impact on online serving performance. + int32 worker_count = 11; +} + +// Response message for [FeaturestoreService.ImportFeatureValues][google.cloud.aiplatform.v1.FeaturestoreService.ImportFeatureValues]. +message ImportFeatureValuesResponse { + // Number of entities that have been imported by the operation. + int64 imported_entity_count = 1; + + // Number of Feature values that have been imported by the operation. + int64 imported_feature_value_count = 2; + + // The number of rows in input source that weren't imported due to either + // * Not having any featureValues. + // * Having a null entityId. + // * Having a null timestamp. + // * Not being parsable (applicable for CSV sources). + int64 invalid_row_count = 6; +} + +// Request message for [FeaturestoreService.BatchReadFeatureValues][google.cloud.aiplatform.v1.FeaturestoreService.BatchReadFeatureValues]. +message BatchReadFeatureValuesRequest { + // Describe pass-through fields in read_instance source. + message PassThroughField { + // Required. The name of the field in the CSV header or the name of the column in + // BigQuery table. The naming restriction is the same as [Feature.name][google.cloud.aiplatform.v1.Feature.name]. + string field_name = 1 [(google.api.field_behavior) = REQUIRED]; + } + + // Selects Features of an EntityType to read values of and specifies read + // settings. + message EntityTypeSpec { + // Required. ID of the EntityType to select Features. The EntityType id is the + // [entity_type_id][google.cloud.aiplatform.v1.CreateEntityTypeRequest.entity_type_id] specified + // during EntityType creation. + string entity_type_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Selectors choosing which Feature values to read from the EntityType. + FeatureSelector feature_selector = 2 [(google.api.field_behavior) = REQUIRED]; + + // Per-Feature settings for the batch read. + repeated DestinationFeatureSetting settings = 3; + } + + oneof read_option { + // Each read instance consists of exactly one read timestamp and one or more + // entity IDs identifying entities of the corresponding EntityTypes whose + // Features are requested. + // + // Each output instance contains Feature values of requested entities + // concatenated together as of the read time. + // + // An example read instance may be `foo_entity_id, bar_entity_id, + // 2020-01-01T10:00:00.123Z`. + // + // An example output instance may be `foo_entity_id, bar_entity_id, + // 2020-01-01T10:00:00.123Z, foo_entity_feature1_value, + // bar_entity_feature2_value`. + // + // Timestamp in each read instance must be millisecond-aligned. + // + // `csv_read_instances` are read instances stored in a plain-text CSV file. + // The header should be: + // [ENTITY_TYPE_ID1], [ENTITY_TYPE_ID2], ..., timestamp + // + // The columns can be in any order. + // + // Values in the timestamp column must use the RFC 3339 format, e.g. + // `2012-07-30T10:43:17.123Z`. + CsvSource csv_read_instances = 3; + + // Similar to csv_read_instances, but from BigQuery source. + BigQuerySource bigquery_read_instances = 5; + } + + // Required. The resource name of the Featurestore from which to query Feature values. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}` + string featurestore = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Featurestore" + } + ]; + + // Required. Specifies output location and format. + FeatureValueDestination destination = 4 [(google.api.field_behavior) = REQUIRED]; + + // When not empty, the specified fields in the *_read_instances source will be + // joined as-is in the output, in addition to those fields from the + // Featurestore Entity. + // + // For BigQuery source, the type of the pass-through values will be + // automatically inferred. For CSV source, the pass-through values will be + // passed as opaque bytes. + repeated PassThroughField pass_through_fields = 8; + + // Required. Specifies EntityType grouping Features to read values of and settings. + // Each EntityType referenced in + // [BatchReadFeatureValuesRequest.entity_type_specs] must have a column + // specifying entity IDs in the EntityType in + // [BatchReadFeatureValuesRequest.request][] . + repeated EntityTypeSpec entity_type_specs = 7 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [FeaturestoreService.ExportFeatureValues][google.cloud.aiplatform.v1.FeaturestoreService.ExportFeatureValues]. +message ExportFeatureValuesRequest { + // Describes exporting the latest Feature values of all entities of the + // EntityType between [start_time, snapshot_time]. + message SnapshotExport { + // Exports Feature values as of this timestamp. If not set, + // retrieve values as of now. Timestamp, if present, must not have higher + // than millisecond precision. + google.protobuf.Timestamp snapshot_time = 1; + + // Excludes Feature values with feature generation timestamp before this + // timestamp. If not set, retrieve oldest values kept in Feature Store. + // Timestamp, if present, must not have higher than millisecond precision. + google.protobuf.Timestamp start_time = 2; + } + + // Describes exporting all historical Feature values of all entities of the + // EntityType between [start_time, end_time]. + message FullExport { + // Excludes Feature values with feature generation timestamp before this + // timestamp. If not set, retrieve oldest values kept in Feature Store. + // Timestamp, if present, must not have higher than millisecond precision. + google.protobuf.Timestamp start_time = 2; + + // Exports Feature values as of this timestamp. If not set, + // retrieve values as of now. Timestamp, if present, must not have higher + // than millisecond precision. + google.protobuf.Timestamp end_time = 1; + } + + // Required. The mode in which Feature values are exported. + oneof mode { + // Exports the latest Feature values of all entities of the EntityType + // within a time range. + SnapshotExport snapshot_export = 3; + + // Exports all historical values of all entities of the EntityType within a + // time range + FullExport full_export = 7; + } + + // Required. The resource name of the EntityType from which to export Feature values. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}` + string entity_type = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/EntityType" + } + ]; + + // Required. Specifies destination location and format. + FeatureValueDestination destination = 4 [(google.api.field_behavior) = REQUIRED]; + + // Required. Selects Features to export values of. + FeatureSelector feature_selector = 5 [(google.api.field_behavior) = REQUIRED]; + + // Per-Feature export settings. + repeated DestinationFeatureSetting settings = 6; +} + +message DestinationFeatureSetting { + // Required. The ID of the Feature to apply the setting to. + string feature_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Specify the field name in the export destination. If not specified, + // Feature ID is used. + string destination_field = 2; +} + +// A destination location for Feature values and format. +message FeatureValueDestination { + oneof destination { + // Output in BigQuery format. + // [BigQueryDestination.output_uri][google.cloud.aiplatform.v1.BigQueryDestination.output_uri] in + // [FeatureValueDestination.bigquery_destination][google.cloud.aiplatform.v1.FeatureValueDestination.bigquery_destination] must refer to a table. + BigQueryDestination bigquery_destination = 1; + + // Output in TFRecord format. + // + // Below are the mapping from Feature value type + // in Featurestore to Feature value type in TFRecord: + // + // Value type in Featurestore | Value type in TFRecord + // DOUBLE, DOUBLE_ARRAY | FLOAT_LIST + // INT64, INT64_ARRAY | INT64_LIST + // STRING, STRING_ARRAY, BYTES | BYTES_LIST + // true -> byte_string("true"), false -> byte_string("false") + // BOOL, BOOL_ARRAY (true, false) | BYTES_LIST + TFRecordDestination tfrecord_destination = 2; + + // Output in CSV format. Array Feature value types are not allowed in CSV + // format. + CsvDestination csv_destination = 3; + } +} + +// Response message for [FeaturestoreService.ExportFeatureValues][google.cloud.aiplatform.v1.FeaturestoreService.ExportFeatureValues]. +message ExportFeatureValuesResponse { + +} + +// Response message for [FeaturestoreService.BatchReadFeatureValues][google.cloud.aiplatform.v1.FeaturestoreService.BatchReadFeatureValues]. +message BatchReadFeatureValuesResponse { + +} + +// Request message for [FeaturestoreService.CreateEntityType][google.cloud.aiplatform.v1.FeaturestoreService.CreateEntityType]. +message CreateEntityTypeRequest { + // Required. The resource name of the Featurestore to create EntityTypes. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Featurestore" + } + ]; + + // The EntityType to create. + EntityType entity_type = 2; + + // Required. The ID to use for the EntityType, which will become the final component of + // the EntityType's resource name. + // + // This value may be up to 60 characters, and valid characters are + // `[a-z0-9_]`. The first character cannot be a number. + // + // The value must be unique within a featurestore. + string entity_type_id = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [FeaturestoreService.GetEntityType][google.cloud.aiplatform.v1.FeaturestoreService.GetEntityType]. +message GetEntityTypeRequest { + // Required. The name of the EntityType resource. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/EntityType" + } + ]; +} + +// Request message for [FeaturestoreService.ListEntityTypes][google.cloud.aiplatform.v1.FeaturestoreService.ListEntityTypes]. +message ListEntityTypesRequest { + // Required. The resource name of the Featurestore to list EntityTypes. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/EntityType" + } + ]; + + // Lists the EntityTypes that match the filter expression. The following + // filters are supported: + // + // * `create_time`: Supports `=`, `!=`, `<`, `>`, `>=`, and `<=` comparisons. + // Values must be in RFC 3339 format. + // * `update_time`: Supports `=`, `!=`, `<`, `>`, `>=`, and `<=` comparisons. + // Values must be in RFC 3339 format. + // * `labels`: Supports key-value equality as well as key presence. + // + // Examples: + // + // * `create_time > \"2020-01-31T15:30:00.000000Z\" OR + // update_time > \"2020-01-31T15:30:00.000000Z\"` --> EntityTypes created + // or updated after 2020-01-31T15:30:00.000000Z. + // * `labels.active = yes AND labels.env = prod` --> EntityTypes having both + // (active: yes) and (env: prod) labels. + // * `labels.env: *` --> Any EntityType which has a label with 'env' as the + // key. + string filter = 2; + + // The maximum number of EntityTypes to return. The service may return fewer + // than this value. If unspecified, at most 1000 EntityTypes will be returned. + // The maximum value is 1000; any value greater than 1000 will be coerced to + // 1000. + int32 page_size = 3; + + // A page token, received from a previous + // [FeaturestoreService.ListEntityTypes][google.cloud.aiplatform.v1.FeaturestoreService.ListEntityTypes] call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // [FeaturestoreService.ListEntityTypes][google.cloud.aiplatform.v1.FeaturestoreService.ListEntityTypes] must + // match the call that provided the page token. + string page_token = 4; + + // A comma-separated list of fields to order by, sorted in ascending order. + // Use "desc" after a field name for descending. + // + // Supported fields: + // + // * `entity_type_id` + // * `create_time` + // * `update_time` + string order_by = 5; + + // Mask specifying which fields to read. + google.protobuf.FieldMask read_mask = 6; +} + +// Response message for [FeaturestoreService.ListEntityTypes][google.cloud.aiplatform.v1.FeaturestoreService.ListEntityTypes]. +message ListEntityTypesResponse { + // The EntityTypes matching the request. + repeated EntityType entity_types = 1; + + // A token, which can be sent as [ListEntityTypesRequest.page_token][google.cloud.aiplatform.v1.ListEntityTypesRequest.page_token] to + // retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [FeaturestoreService.UpdateEntityType][google.cloud.aiplatform.v1.FeaturestoreService.UpdateEntityType]. +message UpdateEntityTypeRequest { + // Required. The EntityType's `name` field is used to identify the EntityType to be + // updated. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}` + EntityType entity_type = 1 [(google.api.field_behavior) = REQUIRED]; + + // Field mask is used to specify the fields to be overwritten in the + // EntityType resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then only the non-empty fields present in the + // request will be overwritten. Set the update_mask to `*` to override all + // fields. + // + // Updatable fields: + // + // * `description` + // * `labels` + // * `monitoring_config.snapshot_analysis.disabled` + // * `monitoring_config.snapshot_analysis.monitoring_interval` + google.protobuf.FieldMask update_mask = 2; +} + +// Request message for [FeaturestoreService.DeleteEntityTypes][]. +message DeleteEntityTypeRequest { + // Required. The name of the EntityType to be deleted. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/EntityType" + } + ]; + + // If set to true, any Features for this EntityType will also be deleted. + // (Otherwise, the request will only work if the EntityType has no Features.) + bool force = 2; +} + +// Request message for [FeaturestoreService.CreateFeature][google.cloud.aiplatform.v1.FeaturestoreService.CreateFeature]. +message CreateFeatureRequest { + // Required. The resource name of the EntityType to create a Feature. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/EntityType" + } + ]; + + // Required. The Feature to create. + Feature feature = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The ID to use for the Feature, which will become the final component of + // the Feature's resource name. + // + // This value may be up to 60 characters, and valid characters are + // `[a-z0-9_]`. The first character cannot be a number. + // + // The value must be unique within an EntityType. + string feature_id = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [FeaturestoreService.BatchCreateFeatures][google.cloud.aiplatform.v1.FeaturestoreService.BatchCreateFeatures]. +message BatchCreateFeaturesRequest { + // Required. The resource name of the EntityType to create the batch of Features under. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/EntityType" + } + ]; + + // Required. The request message specifying the Features to create. All Features must be + // created under the same parent EntityType. The `parent` field in each child + // request message can be omitted. If `parent` is set in a child request, then + // the value must match the `parent` value in this request message. + repeated CreateFeatureRequest requests = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [FeaturestoreService.BatchCreateFeatures][google.cloud.aiplatform.v1.FeaturestoreService.BatchCreateFeatures]. +message BatchCreateFeaturesResponse { + // The Features created. + repeated Feature features = 1; +} + +// Request message for [FeaturestoreService.GetFeature][google.cloud.aiplatform.v1.FeaturestoreService.GetFeature]. +message GetFeatureRequest { + // Required. The name of the Feature resource. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Feature" + } + ]; +} + +// Request message for [FeaturestoreService.ListFeatures][google.cloud.aiplatform.v1.FeaturestoreService.ListFeatures]. +message ListFeaturesRequest { + // Required. The resource name of the Location to list Features. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Feature" + } + ]; + + // Lists the Features that match the filter expression. The following + // filters are supported: + // + // * `value_type`: Supports = and != comparisons. + // * `create_time`: Supports =, !=, <, >, >=, and <= comparisons. Values must + // be in RFC 3339 format. + // * `update_time`: Supports =, !=, <, >, >=, and <= comparisons. Values must + // be in RFC 3339 format. + // * `labels`: Supports key-value equality as well as key presence. + // + // Examples: + // + // * `value_type = DOUBLE` --> Features whose type is DOUBLE. + // * `create_time > \"2020-01-31T15:30:00.000000Z\" OR + // update_time > \"2020-01-31T15:30:00.000000Z\"` --> EntityTypes created + // or updated after 2020-01-31T15:30:00.000000Z. + // * `labels.active = yes AND labels.env = prod` --> Features having both + // (active: yes) and (env: prod) labels. + // * `labels.env: *` --> Any Feature which has a label with 'env' as the + // key. + string filter = 2; + + // The maximum number of Features to return. The service may return fewer + // than this value. If unspecified, at most 1000 Features will be returned. + // The maximum value is 1000; any value greater than 1000 will be coerced to + // 1000. + int32 page_size = 3; + + // A page token, received from a previous + // [FeaturestoreService.ListFeatures][google.cloud.aiplatform.v1.FeaturestoreService.ListFeatures] call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // [FeaturestoreService.ListFeatures][google.cloud.aiplatform.v1.FeaturestoreService.ListFeatures] must + // match the call that provided the page token. + string page_token = 4; + + // A comma-separated list of fields to order by, sorted in ascending order. + // Use "desc" after a field name for descending. + // Supported fields: + // + // * `feature_id` + // * `value_type` + // * `create_time` + // * `update_time` + string order_by = 5; + + // Mask specifying which fields to read. + google.protobuf.FieldMask read_mask = 6; + + // If set, return the most recent [ListFeaturesRequest.latest_stats_count][google.cloud.aiplatform.v1.ListFeaturesRequest.latest_stats_count] + // of stats for each Feature in response. Valid value is [0, 10]. If number of + // stats exists < [ListFeaturesRequest.latest_stats_count][google.cloud.aiplatform.v1.ListFeaturesRequest.latest_stats_count], return all + // existing stats. + int32 latest_stats_count = 7; +} + +// Response message for [FeaturestoreService.ListFeatures][google.cloud.aiplatform.v1.FeaturestoreService.ListFeatures]. +message ListFeaturesResponse { + // The Features matching the request. + repeated Feature features = 1; + + // A token, which can be sent as [ListFeaturesRequest.page_token][google.cloud.aiplatform.v1.ListFeaturesRequest.page_token] to + // retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [FeaturestoreService.SearchFeatures][google.cloud.aiplatform.v1.FeaturestoreService.SearchFeatures]. +message SearchFeaturesRequest { + // Required. The resource name of the Location to search Features. + // Format: + // `projects/{project}/locations/{location}` + string location = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Query string that is a conjunction of field-restricted queries and/or + // field-restricted filters. Field-restricted queries and filters can be + // combined using `AND` to form a conjunction. + // + // A field query is in the form FIELD:QUERY. This implicitly checks if QUERY + // exists as a substring within Feature's FIELD. The QUERY + // and the FIELD are converted to a sequence of words (i.e. tokens) for + // comparison. This is done by: + // + // * Removing leading/trailing whitespace and tokenizing the search value. + // Characters that are not one of alphanumeric `[a-zA-Z0-9]`, underscore + // `_`, or asterisk `*` are treated as delimiters for tokens. `*` is treated + // as a wildcard that matches characters within a token. + // * Ignoring case. + // * Prepending an asterisk to the first and appending an asterisk to the + // last token in QUERY. + // + // A QUERY must be either a singular token or a phrase. A phrase is one or + // multiple words enclosed in double quotation marks ("). With phrases, the + // order of the words is important. Words in the phrase must be matching in + // order and consecutively. + // + // Supported FIELDs for field-restricted queries: + // + // * `feature_id` + // * `description` + // * `entity_type_id` + // + // Examples: + // + // * `feature_id: foo` --> Matches a Feature with ID containing the substring + // `foo` (eg. `foo`, `foofeature`, `barfoo`). + // * `feature_id: foo*feature` --> Matches a Feature with ID containing the + // substring `foo*feature` (eg. `foobarfeature`). + // * `feature_id: foo AND description: bar` --> Matches a Feature with ID + // containing the substring `foo` and description containing the substring + // `bar`. + // + // + // Besides field queries, the following exact-match filters are + // supported. The exact-match filters do not support wildcards. Unlike + // field-restricted queries, exact-match filters are case-sensitive. + // + // * `feature_id`: Supports = comparisons. + // * `description`: Supports = comparisons. Multi-token filters should be + // enclosed in quotes. + // * `entity_type_id`: Supports = comparisons. + // * `value_type`: Supports = and != comparisons. + // * `labels`: Supports key-value equality as well as key presence. + // * `featurestore_id`: Supports = comparisons. + // + // Examples: + // * `description = "foo bar"` --> Any Feature with description exactly equal + // to `foo bar` + // * `value_type = DOUBLE` --> Features whose type is DOUBLE. + // * `labels.active = yes AND labels.env = prod` --> Features having both + // (active: yes) and (env: prod) labels. + // * `labels.env: *` --> Any Feature which has a label with `env` as the + // key. + string query = 3; + + // The maximum number of Features to return. The service may return fewer + // than this value. If unspecified, at most 100 Features will be returned. + // The maximum value is 100; any value greater than 100 will be coerced to + // 100. + int32 page_size = 4; + + // A page token, received from a previous + // [FeaturestoreService.SearchFeatures][google.cloud.aiplatform.v1.FeaturestoreService.SearchFeatures] call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // [FeaturestoreService.SearchFeatures][google.cloud.aiplatform.v1.FeaturestoreService.SearchFeatures], except `page_size`, must + // match the call that provided the page token. + string page_token = 5; +} + +// Response message for [FeaturestoreService.SearchFeatures][google.cloud.aiplatform.v1.FeaturestoreService.SearchFeatures]. +message SearchFeaturesResponse { + // The Features matching the request. + // + // Fields returned: + // + // * `name` + // * `description` + // * `labels` + // * `create_time` + // * `update_time` + repeated Feature features = 1; + + // A token, which can be sent as [SearchFeaturesRequest.page_token][google.cloud.aiplatform.v1.SearchFeaturesRequest.page_token] to + // retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [FeaturestoreService.UpdateFeature][google.cloud.aiplatform.v1.FeaturestoreService.UpdateFeature]. +message UpdateFeatureRequest { + // Required. The Feature's `name` field is used to identify the Feature to be + // updated. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}/features/{feature}` + Feature feature = 1 [(google.api.field_behavior) = REQUIRED]; + + // Field mask is used to specify the fields to be overwritten in the + // Features resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then only the non-empty fields present in the + // request will be overwritten. Set the update_mask to `*` to override all + // fields. + // + // Updatable fields: + // + // * `description` + // * `labels` + // * `monitoring_config.snapshot_analysis.disabled` + // * `monitoring_config.snapshot_analysis.monitoring_interval` + google.protobuf.FieldMask update_mask = 2; +} + +// Request message for [FeaturestoreService.DeleteFeature][google.cloud.aiplatform.v1.FeaturestoreService.DeleteFeature]. +message DeleteFeatureRequest { + // Required. The name of the Features to be deleted. + // Format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entity_type}/features/{feature}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Feature" + } + ]; +} + +// Details of operations that perform create Featurestore. +message CreateFeaturestoreOperationMetadata { + // Operation metadata for Featurestore. + GenericOperationMetadata generic_metadata = 1; +} + +// Details of operations that perform update Featurestore. +message UpdateFeaturestoreOperationMetadata { + // Operation metadata for Featurestore. + GenericOperationMetadata generic_metadata = 1; +} + +// Details of operations that perform import Feature values. +message ImportFeatureValuesOperationMetadata { + // Operation metadata for Featurestore import Feature values. + GenericOperationMetadata generic_metadata = 1; + + // Number of entities that have been imported by the operation. + int64 imported_entity_count = 2; + + // Number of Feature values that have been imported by the operation. + int64 imported_feature_value_count = 3; + + // The number of rows in input source that weren't imported due to either + // * Not having any featureValues. + // * Having a null entityId. + // * Having a null timestamp. + // * Not being parsable (applicable for CSV sources). + int64 invalid_row_count = 6; +} + +// Details of operations that exports Features values. +message ExportFeatureValuesOperationMetadata { + // Operation metadata for Featurestore export Feature values. + GenericOperationMetadata generic_metadata = 1; +} + +// Details of operations that batch reads Feature values. +message BatchReadFeatureValuesOperationMetadata { + // Operation metadata for Featurestore batch read Features values. + GenericOperationMetadata generic_metadata = 1; +} + +// Details of operations that perform create EntityType. +message CreateEntityTypeOperationMetadata { + // Operation metadata for EntityType. + GenericOperationMetadata generic_metadata = 1; +} + +// Details of operations that perform create Feature. +message CreateFeatureOperationMetadata { + // Operation metadata for Feature. + GenericOperationMetadata generic_metadata = 1; +} + +// Details of operations that perform batch create Features. +message BatchCreateFeaturesOperationMetadata { + // Operation metadata for Feature. + GenericOperationMetadata generic_metadata = 1; +} diff --git a/google/cloud/aiplatform/v1/hyperparameter_tuning_job.proto b/google/cloud/aiplatform/v1/hyperparameter_tuning_job.proto index f1c3990b7..9a86ae85a 100644 --- a/google/cloud/aiplatform/v1/hyperparameter_tuning_job.proto +++ b/google/cloud/aiplatform/v1/hyperparameter_tuning_job.proto @@ -26,10 +26,13 @@ import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "HyperparameterTuningJobProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Represents a HyperparameterTuningJob. A HyperparameterTuningJob // has a Study specification and multiple CustomJobs with identical diff --git a/google/cloud/aiplatform/v1/index.proto b/google/cloud/aiplatform/v1/index.proto new file mode 100644 index 000000000..46242e43b --- /dev/null +++ b/google/cloud/aiplatform/v1/index.proto @@ -0,0 +1,98 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/deployed_index_ref.proto"; +import "google/protobuf/duration.proto"; +import "google/protobuf/struct.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "IndexProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// A representation of a collection of database items organized in a way that +// allows for approximate nearest neighbor (a.k.a ANN) algorithms search. +message Index { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/Index" + pattern: "projects/{project}/locations/{location}/indexes/{index}" + }; + + // Output only. The resource name of the Index. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The display name of the Index. + // The name can be up to 128 characters long and can be consist of any UTF-8 + // characters. + string display_name = 2 [(google.api.field_behavior) = REQUIRED]; + + // The description of the Index. + string description = 3; + + // Immutable. Points to a YAML file stored on Google Cloud Storage describing additional + // information about the Index, that is specific to it. Unset if the Index + // does not have any additional information. + // The schema is defined as an OpenAPI 3.0.2 [Schema + // Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject). + // Note: The URI given on output will be immutable and probably different, + // including the URI scheme, than the one given on input. The output URI will + // point to a location where the user only has a read access. + string metadata_schema_uri = 4 [(google.api.field_behavior) = IMMUTABLE]; + + // An additional information about the Index; the schema of the metadata can + // be found in [metadata_schema][google.cloud.aiplatform.v1.Index.metadata_schema_uri]. + google.protobuf.Value metadata = 6; + + // Output only. The pointers to DeployedIndexes created from this Index. + // An Index can be only deleted if all its DeployedIndexes had been undeployed + // first. + repeated DeployedIndexRef deployed_indexes = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Used to perform consistent read-modify-write updates. If not set, a blind + // "overwrite" update happens. + string etag = 8; + + // The labels with user-defined metadata to organize your Indexes. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // + // See https://goo.gl/xmQnxf for more information and examples of labels. + map labels = 9; + + // Output only. Timestamp when this Index was created. + google.protobuf.Timestamp create_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this Index was most recently updated. + // This also includes any update to the contents of the Index. + // Note that Operations working on this Index may have their + // [Operations.metadata.generic_metadata.update_time] + // [google.cloud.aiplatform.v1.GenericOperationMetadata.update_time] a little after the value of this + // timestamp, yet that does not mean their results are not already reflected + // in the Index. Result of any successfully completed Operation on the Index + // is reflected in it. + google.protobuf.Timestamp update_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/cloud/aiplatform/v1/index_endpoint.proto b/google/cloud/aiplatform/v1/index_endpoint.proto new file mode 100644 index 000000000..9dadf5d69 --- /dev/null +++ b/google/cloud/aiplatform/v1/index_endpoint.proto @@ -0,0 +1,232 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/cloud/aiplatform/v1/index.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/machine_resources.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "IndexEndpointProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Indexes are deployed into it. An IndexEndpoint can have multiple +// DeployedIndexes. +message IndexEndpoint { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/IndexEndpoint" + pattern: "projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}" + }; + + // Output only. The resource name of the IndexEndpoint. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The display name of the IndexEndpoint. + // The name can be up to 128 characters long and can consist of any UTF-8 + // characters. + string display_name = 2 [(google.api.field_behavior) = REQUIRED]; + + // The description of the IndexEndpoint. + string description = 3; + + // Output only. The indexes deployed in this endpoint. + repeated DeployedIndex deployed_indexes = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Used to perform consistent read-modify-write updates. If not set, a blind + // "overwrite" update happens. + string etag = 5; + + // The labels with user-defined metadata to organize your IndexEndpoints. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // + // See https://goo.gl/xmQnxf for more information and examples of labels. + map labels = 6; + + // Output only. Timestamp when this IndexEndpoint was created. + google.protobuf.Timestamp create_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this IndexEndpoint was last updated. + // This timestamp is not updated when the endpoint's DeployedIndexes are + // updated, e.g. due to updates of the original Indexes they are the + // deployments of. + google.protobuf.Timestamp update_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The full name of the Google Compute Engine + // [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks) + // to which the IndexEndpoint should be peered. + // + // Private services access must already be configured for the network. If left + // unspecified, the Endpoint is not peered with any network. + // + // Only one of the fields, [network][google.cloud.aiplatform.v1.IndexEndpoint.network] or + // [enable_private_service_connect][google.cloud.aiplatform.v1.IndexEndpoint.enable_private_service_connect], + // can be set. + // + // [Format](https://cloud.google.com/compute/docs/reference/rest/v1/networks/insert): + // projects/{project}/global/networks/{network}. + // Where {project} is a project number, as in '12345', and {network} is + // network name. + string network = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If true, expose the IndexEndpoint via private service connect. + // + // Only one of the fields, [network][google.cloud.aiplatform.v1.IndexEndpoint.network] or + // [enable_private_service_connect][google.cloud.aiplatform.v1.IndexEndpoint.enable_private_service_connect], + // can be set. + bool enable_private_service_connect = 10 [(google.api.field_behavior) = OPTIONAL]; +} + +// A deployment of an Index. IndexEndpoints contain one or more DeployedIndexes. +message DeployedIndex { + // Required. The user specified ID of the DeployedIndex. + // The ID can be up to 128 characters long and must start with a letter and + // only contain letters, numbers, and underscores. + // The ID must be unique within the project it is created in. + string id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The name of the Index this is the deployment of. + // We may refer to this Index as the DeployedIndex's "original" Index. + string index = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Index" + } + ]; + + // The display name of the DeployedIndex. If not provided upon creation, + // the Index's display_name is used. + string display_name = 3; + + // Output only. Timestamp when the DeployedIndex was created. + google.protobuf.Timestamp create_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Provides paths for users to send requests directly to the deployed index + // services running on Cloud via private services access. This field is + // populated if [network][google.cloud.aiplatform.v1.IndexEndpoint.network] is configured. + IndexPrivateEndpoints private_endpoints = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The DeployedIndex may depend on various data on its original Index. + // Additionally when certain changes to the original Index are being done + // (e.g. when what the Index contains is being changed) the DeployedIndex may + // be asynchronously updated in the background to reflect this changes. + // If this timestamp's value is at least the [Index.update_time][google.cloud.aiplatform.v1.Index.update_time] of the + // original Index, it means that this DeployedIndex and the original Index are + // in sync. If this timestamp is older, then to see which updates this + // DeployedIndex already contains (and which not), one must + // [list][Operations.ListOperations] [Operations][Operation] + // [working][Operation.name] on the original Index. Only + // the successfully completed Operations with + // [Operations.metadata.generic_metadata.update_time] + // [google.cloud.aiplatform.v1.GenericOperationMetadata.update_time] + // equal or before this sync time are contained in this DeployedIndex. + google.protobuf.Timestamp index_sync_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. A description of resources that the DeployedIndex uses, which to large + // degree are decided by Vertex AI, and optionally allows only a modest + // additional configuration. + // If min_replica_count is not set, the default value is 2 (we don't provide + // SLA when min_replica_count=1). If max_replica_count is not set, the + // default value is min_replica_count. The max allowed replica count is + // 1000. + AutomaticResources automatic_resources = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If true, private endpoint's access logs are sent to StackDriver Logging. + // + // These logs are like standard server access logs, containing + // information like timestamp and latency for each MatchRequest. + // + // Note that Stackdriver logs may incur a cost, especially if the deployed + // index receives a high queries per second rate (QPS). + // Estimate your costs before enabling this option. + bool enable_access_logging = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set, the authentication is enabled for the private endpoint. + DeployedIndexAuthConfig deployed_index_auth_config = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of reserved ip ranges under the VPC network that can be + // used for this DeployedIndex. + // + // If set, we will deploy the index within the provided ip ranges. Otherwise, + // the index might be deployed to any ip ranges under the provided VPC + // network. + // + // The value sohuld be the name of the address + // (https://cloud.google.com/compute/docs/reference/rest/v1/addresses) + // Example: 'vertex-ai-ip-range'. + repeated string reserved_ip_ranges = 10 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The deployment group can be no longer than 64 characters (eg: + // 'test', 'prod'). If not set, we will use the 'default' deployment group. + // + // Creating `deployment_groups` with `reserved_ip_ranges` is a recommended + // practice when the peered network has multiple peering ranges. This creates + // your deployments from predictable IP spaces for easier traffic + // administration. Also, one deployment_group (except 'default') can only be + // used with the same reserved_ip_ranges which means if the deployment_group + // has been used with reserved_ip_ranges: [a, b, c], using it with [a, b] or + // [d, e] is disallowed. + // + // Note: we only support up to 5 deployment groups(not including 'default'). + string deployment_group = 11 [(google.api.field_behavior) = OPTIONAL]; +} + +// Used to set up the auth on the DeployedIndex's private endpoint. +message DeployedIndexAuthConfig { + // Configuration for an authentication provider, including support for + // [JSON Web Token + // (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32). + message AuthProvider { + // The list of JWT + // [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). + // that are allowed to access. A JWT containing any of these audiences will + // be accepted. + repeated string audiences = 1; + + // A list of allowed JWT issuers. Each entry must be a valid Google + // service account, in the following format: + // + // `service-account-name@project-id.iam.gserviceaccount.com` + repeated string allowed_issuers = 2; + } + + // Defines the authentication provider that the DeployedIndex uses. + AuthProvider auth_provider = 1; +} + +// IndexPrivateEndpoints proto is used to provide paths for users to send +// requests via private endpoints (e.g. private service access, private service +// connect). +// To send request via private service access, use match_grpc_address. +// To send request via private service connect, use service_attachment. +message IndexPrivateEndpoints { + // Output only. The ip address used to send match gRPC requests. + string match_grpc_address = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the service attachment resource. Populated if private service + // connect is enabled. + string service_attachment = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/cloud/aiplatform/v1/index_endpoint_service.proto b/google/cloud/aiplatform/v1/index_endpoint_service.proto new file mode 100644 index 000000000..4aa032aa7 --- /dev/null +++ b/google/cloud/aiplatform/v1/index_endpoint_service.proto @@ -0,0 +1,335 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/index_endpoint.proto"; +import "google/cloud/aiplatform/v1/operation.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "IndexEndpointServiceProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// A service for managing Vertex AI's IndexEndpoints. +service IndexEndpointService { + option (google.api.default_host) = "aiplatform.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Creates an IndexEndpoint. + rpc CreateIndexEndpoint(CreateIndexEndpointRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/indexEndpoints" + body: "index_endpoint" + }; + option (google.api.method_signature) = "parent,index_endpoint"; + option (google.longrunning.operation_info) = { + response_type: "IndexEndpoint" + metadata_type: "CreateIndexEndpointOperationMetadata" + }; + } + + // Gets an IndexEndpoint. + rpc GetIndexEndpoint(GetIndexEndpointRequest) returns (IndexEndpoint) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/indexEndpoints/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists IndexEndpoints in a Location. + rpc ListIndexEndpoints(ListIndexEndpointsRequest) returns (ListIndexEndpointsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/indexEndpoints" + }; + option (google.api.method_signature) = "parent"; + } + + // Updates an IndexEndpoint. + rpc UpdateIndexEndpoint(UpdateIndexEndpointRequest) returns (IndexEndpoint) { + option (google.api.http) = { + patch: "/v1/{index_endpoint.name=projects/*/locations/*/indexEndpoints/*}" + body: "index_endpoint" + }; + option (google.api.method_signature) = "index_endpoint,update_mask"; + } + + // Deletes an IndexEndpoint. + rpc DeleteIndexEndpoint(DeleteIndexEndpointRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/indexEndpoints/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Deploys an Index into this IndexEndpoint, creating a DeployedIndex within + // it. + // Only non-empty Indexes can be deployed. + rpc DeployIndex(DeployIndexRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:deployIndex" + body: "*" + }; + option (google.api.method_signature) = "index_endpoint,deployed_index"; + option (google.longrunning.operation_info) = { + response_type: "DeployIndexResponse" + metadata_type: "DeployIndexOperationMetadata" + }; + } + + // Undeploys an Index from an IndexEndpoint, removing a DeployedIndex from it, + // and freeing all resources it's using. + rpc UndeployIndex(UndeployIndexRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:undeployIndex" + body: "*" + }; + option (google.api.method_signature) = "index_endpoint,deployed_index_id"; + option (google.longrunning.operation_info) = { + response_type: "UndeployIndexResponse" + metadata_type: "UndeployIndexOperationMetadata" + }; + } + + // Update an existing DeployedIndex under an IndexEndpoint. + rpc MutateDeployedIndex(MutateDeployedIndexRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:mutateDeployedIndex" + body: "deployed_index" + }; + option (google.api.method_signature) = "index_endpoint,deployed_index"; + option (google.longrunning.operation_info) = { + response_type: "MutateDeployedIndexResponse" + metadata_type: "MutateDeployedIndexOperationMetadata" + }; + } +} + +// Request message for [IndexEndpointService.CreateIndexEndpoint][google.cloud.aiplatform.v1.IndexEndpointService.CreateIndexEndpoint]. +message CreateIndexEndpointRequest { + // Required. The resource name of the Location to create the IndexEndpoint in. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The IndexEndpoint to create. + IndexEndpoint index_endpoint = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Runtime operation information for +// [IndexEndpointService.CreateIndexEndpoint][google.cloud.aiplatform.v1.IndexEndpointService.CreateIndexEndpoint]. +message CreateIndexEndpointOperationMetadata { + // The operation generic information. + GenericOperationMetadata generic_metadata = 1; +} + +// Request message for [IndexEndpointService.GetIndexEndpoint][google.cloud.aiplatform.v1.IndexEndpointService.GetIndexEndpoint] +message GetIndexEndpointRequest { + // Required. The name of the IndexEndpoint resource. + // Format: + // `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/IndexEndpoint" + } + ]; +} + +// Request message for [IndexEndpointService.ListIndexEndpoints][google.cloud.aiplatform.v1.IndexEndpointService.ListIndexEndpoints]. +message ListIndexEndpointsRequest { + // Required. The resource name of the Location from which to list the IndexEndpoints. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Optional. An expression for filtering the results of the request. For field names + // both snake_case and camelCase are supported. + // + // * `index_endpoint` supports = and !=. `index_endpoint` represents the + // IndexEndpoint ID, ie. the last segment of the IndexEndpoint's + // [resourcename][google.cloud.aiplatform.v1.IndexEndpoint.name]. + // * `display_name` supports =, != and regex() + // (uses [re2](https://github.com/google/re2/wiki/Syntax) syntax) + // * `labels` supports general map functions that is: + // `labels.key=value` - key:value equality + // `labels.key:* or labels:key - key existence + // A key including a space must be quoted. `labels."a key"`. + // + // Some examples: + // * `index_endpoint="1"` + // * `display_name="myDisplayName"` + // * `regex(display_name, "^A") -> The display name starts with an A. + // * `labels.myKey="myValue"` + string filter = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The standard list page size. + int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The standard list page token. + // Typically obtained via + // [ListIndexEndpointsResponse.next_page_token][google.cloud.aiplatform.v1.ListIndexEndpointsResponse.next_page_token] of the previous + // [IndexEndpointService.ListIndexEndpoints][google.cloud.aiplatform.v1.IndexEndpointService.ListIndexEndpoints] call. + string page_token = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Mask specifying which fields to read. + google.protobuf.FieldMask read_mask = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for [IndexEndpointService.ListIndexEndpoints][google.cloud.aiplatform.v1.IndexEndpointService.ListIndexEndpoints]. +message ListIndexEndpointsResponse { + // List of IndexEndpoints in the requested page. + repeated IndexEndpoint index_endpoints = 1; + + // A token to retrieve next page of results. + // Pass to [ListIndexEndpointsRequest.page_token][google.cloud.aiplatform.v1.ListIndexEndpointsRequest.page_token] to obtain that page. + string next_page_token = 2; +} + +// Request message for [IndexEndpointService.UpdateIndexEndpoint][google.cloud.aiplatform.v1.IndexEndpointService.UpdateIndexEndpoint]. +message UpdateIndexEndpointRequest { + // Required. The IndexEndpoint which replaces the resource on the server. + IndexEndpoint index_endpoint = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The update mask applies to the resource. See [google.protobuf.FieldMask][google.protobuf.FieldMask]. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [IndexEndpointService.DeleteIndexEndpoint][google.cloud.aiplatform.v1.IndexEndpointService.DeleteIndexEndpoint]. +message DeleteIndexEndpointRequest { + // Required. The name of the IndexEndpoint resource to be deleted. + // Format: + // `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/IndexEndpoint" + } + ]; +} + +// Request message for [IndexEndpointService.DeployIndex][google.cloud.aiplatform.v1.IndexEndpointService.DeployIndex]. +message DeployIndexRequest { + // Required. The name of the IndexEndpoint resource into which to deploy an Index. + // Format: + // `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}` + string index_endpoint = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/IndexEndpoint" + } + ]; + + // Required. The DeployedIndex to be created within the IndexEndpoint. + DeployedIndex deployed_index = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [IndexEndpointService.DeployIndex][google.cloud.aiplatform.v1.IndexEndpointService.DeployIndex]. +message DeployIndexResponse { + // The DeployedIndex that had been deployed in the IndexEndpoint. + DeployedIndex deployed_index = 1; +} + +// Runtime operation information for [IndexEndpointService.DeployIndex][google.cloud.aiplatform.v1.IndexEndpointService.DeployIndex]. +message DeployIndexOperationMetadata { + // The operation generic information. + GenericOperationMetadata generic_metadata = 1; + + // The unique index id specified by user + string deployed_index_id = 2; +} + +// Request message for [IndexEndpointService.UndeployIndex][google.cloud.aiplatform.v1.IndexEndpointService.UndeployIndex]. +message UndeployIndexRequest { + // Required. The name of the IndexEndpoint resource from which to undeploy an Index. + // Format: + // `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}` + string index_endpoint = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/IndexEndpoint" + } + ]; + + // Required. The ID of the DeployedIndex to be undeployed from the IndexEndpoint. + string deployed_index_id = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [IndexEndpointService.UndeployIndex][google.cloud.aiplatform.v1.IndexEndpointService.UndeployIndex]. +message UndeployIndexResponse { + +} + +// Runtime operation information for [IndexEndpointService.UndeployIndex][google.cloud.aiplatform.v1.IndexEndpointService.UndeployIndex]. +message UndeployIndexOperationMetadata { + // The operation generic information. + GenericOperationMetadata generic_metadata = 1; +} + +// Request message for [IndexEndpointService.MutateDeployedIndex][google.cloud.aiplatform.v1.IndexEndpointService.MutateDeployedIndex]. +message MutateDeployedIndexRequest { + // Required. The name of the IndexEndpoint resource into which to deploy an Index. + // Format: + // `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}` + string index_endpoint = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/IndexEndpoint" + } + ]; + + // Required. The DeployedIndex to be updated within the IndexEndpoint. + // Currently, the updatable fields are [DeployedIndex][automatic_resources] + // and [DeployedIndex][dedicated_resources] + DeployedIndex deployed_index = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [IndexEndpointService.MutateDeployedIndex][google.cloud.aiplatform.v1.IndexEndpointService.MutateDeployedIndex]. +message MutateDeployedIndexResponse { + // The DeployedIndex that had been updated in the IndexEndpoint. + DeployedIndex deployed_index = 1; +} + +// Runtime operation information for +// [IndexEndpointService.MutateDeployedIndex][google.cloud.aiplatform.v1.IndexEndpointService.MutateDeployedIndex]. +message MutateDeployedIndexOperationMetadata { + // The operation generic information. + GenericOperationMetadata generic_metadata = 1; + + // The unique index id specified by user + string deployed_index_id = 2; +} diff --git a/google/cloud/aiplatform/v1/index_service.proto b/google/cloud/aiplatform/v1/index_service.proto new file mode 100644 index 000000000..f7b5c01b3 --- /dev/null +++ b/google/cloud/aiplatform/v1/index_service.proto @@ -0,0 +1,277 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/index.proto"; +import "google/cloud/aiplatform/v1/operation.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "IndexServiceProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// A service for creating and managing Vertex AI's Index resources. +service IndexService { + option (google.api.default_host) = "aiplatform.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Creates an Index. + rpc CreateIndex(CreateIndexRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/indexes" + body: "index" + }; + option (google.api.method_signature) = "parent,index"; + option (google.longrunning.operation_info) = { + response_type: "Index" + metadata_type: "CreateIndexOperationMetadata" + }; + } + + // Gets an Index. + rpc GetIndex(GetIndexRequest) returns (Index) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/indexes/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists Indexes in a Location. + rpc ListIndexes(ListIndexesRequest) returns (ListIndexesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/indexes" + }; + option (google.api.method_signature) = "parent"; + } + + // Updates an Index. + rpc UpdateIndex(UpdateIndexRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{index.name=projects/*/locations/*/indexes/*}" + body: "index" + }; + option (google.api.method_signature) = "index,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Index" + metadata_type: "UpdateIndexOperationMetadata" + }; + } + + // Deletes an Index. + // An Index can only be deleted when all its + // [DeployedIndexes][google.cloud.aiplatform.v1.Index.deployed_indexes] had been undeployed. + rpc DeleteIndex(DeleteIndexRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/indexes/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } +} + +// Request message for [IndexService.CreateIndex][google.cloud.aiplatform.v1.IndexService.CreateIndex]. +message CreateIndexRequest { + // Required. The resource name of the Location to create the Index in. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The Index to create. + Index index = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Runtime operation information for [IndexService.CreateIndex][google.cloud.aiplatform.v1.IndexService.CreateIndex]. +message CreateIndexOperationMetadata { + // The operation generic information. + GenericOperationMetadata generic_metadata = 1; + + // The operation metadata with regard to Matching Engine Index operation. + NearestNeighborSearchOperationMetadata nearest_neighbor_search_operation_metadata = 2; +} + +// Request message for [IndexService.GetIndex][google.cloud.aiplatform.v1.IndexService.GetIndex] +message GetIndexRequest { + // Required. The name of the Index resource. + // Format: + // `projects/{project}/locations/{location}/indexes/{index}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Index" + } + ]; +} + +// Request message for [IndexService.ListIndexes][google.cloud.aiplatform.v1.IndexService.ListIndexes]. +message ListIndexesRequest { + // Required. The resource name of the Location from which to list the Indexes. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // The standard list filter. + string filter = 2; + + // The standard list page size. + int32 page_size = 3; + + // The standard list page token. + // Typically obtained via + // [ListIndexesResponse.next_page_token][google.cloud.aiplatform.v1.ListIndexesResponse.next_page_token] of the previous + // [IndexService.ListIndexes][google.cloud.aiplatform.v1.IndexService.ListIndexes] call. + string page_token = 4; + + // Mask specifying which fields to read. + google.protobuf.FieldMask read_mask = 5; +} + +// Response message for [IndexService.ListIndexes][google.cloud.aiplatform.v1.IndexService.ListIndexes]. +message ListIndexesResponse { + // List of indexes in the requested page. + repeated Index indexes = 1; + + // A token to retrieve next page of results. + // Pass to [ListIndexesRequest.page_token][google.cloud.aiplatform.v1.ListIndexesRequest.page_token] to obtain that page. + string next_page_token = 2; +} + +// Request message for [IndexService.UpdateIndex][google.cloud.aiplatform.v1.IndexService.UpdateIndex]. +message UpdateIndexRequest { + // Required. The Index which updates the resource on the server. + Index index = 1 [(google.api.field_behavior) = REQUIRED]; + + // The update mask applies to the resource. + // For the `FieldMask` definition, see [google.protobuf.FieldMask][google.protobuf.FieldMask]. + google.protobuf.FieldMask update_mask = 2; +} + +// Runtime operation information for [IndexService.UpdateIndex][google.cloud.aiplatform.v1.IndexService.UpdateIndex]. +message UpdateIndexOperationMetadata { + // The operation generic information. + GenericOperationMetadata generic_metadata = 1; + + // The operation metadata with regard to Matching Engine Index operation. + NearestNeighborSearchOperationMetadata nearest_neighbor_search_operation_metadata = 2; +} + +// Request message for [IndexService.DeleteIndex][google.cloud.aiplatform.v1.IndexService.DeleteIndex]. +message DeleteIndexRequest { + // Required. The name of the Index resource to be deleted. + // Format: + // `projects/{project}/locations/{location}/indexes/{index}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Index" + } + ]; +} + +// Runtime operation metadata with regard to Matching Engine Index. +message NearestNeighborSearchOperationMetadata { + message RecordError { + enum RecordErrorType { + // Default, shall not be used. + ERROR_TYPE_UNSPECIFIED = 0; + + // The record is empty. + EMPTY_LINE = 1; + + // Invalid json format. + INVALID_JSON_SYNTAX = 2; + + // Invalid csv format. + INVALID_CSV_SYNTAX = 3; + + // Invalid avro format. + INVALID_AVRO_SYNTAX = 4; + + // The embedding id is not valid. + INVALID_EMBEDDING_ID = 5; + + // The size of the embedding vectors does not match with the specified + // dimension. + EMBEDDING_SIZE_MISMATCH = 6; + + // The `namespace` field is missing. + NAMESPACE_MISSING = 7; + } + + // The error type of this record. + RecordErrorType error_type = 1; + + // A human-readable message that is shown to the user to help them fix the + // error. Note that this message may change from time to time, your code + // should check against error_type as the source of truth. + string error_message = 2; + + // Cloud Storage URI pointing to the original file in user's bucket. + string source_gcs_uri = 3; + + // Empty if the embedding id is failed to parse. + string embedding_id = 4; + + // The original content of this record. + string raw_record = 5; + } + + message ContentValidationStats { + // Cloud Storage URI pointing to the original file in user's bucket. + string source_gcs_uri = 1; + + // Number of records in this file that were successfully processed. + int64 valid_record_count = 2; + + // Number of records in this file we skipped due to validate errors. + int64 invalid_record_count = 3; + + // The detail information of the partial failures encountered for those + // invalid records that couldn't be parsed. + // Up to 50 partial errors will be reported. + repeated RecordError partial_errors = 4; + } + + // The validation stats of the content (per file) to be inserted or + // updated on the Matching Engine Index resource. Populated if + // contentsDeltaUri is provided as part of [Index.metadata][google.cloud.aiplatform.v1.Index.metadata]. Please note + // that, currently for those files that are broken or has unsupported file + // format, we will not have the stats for those files. + repeated ContentValidationStats content_validation_stats = 1; + + // The ingested data size in bytes. + int64 data_bytes_count = 2; +} diff --git a/google/cloud/aiplatform/v1/io.proto b/google/cloud/aiplatform/v1/io.proto index 6df4ac568..766fb56bd 100644 --- a/google/cloud/aiplatform/v1/io.proto +++ b/google/cloud/aiplatform/v1/io.proto @@ -19,10 +19,25 @@ package google.cloud.aiplatform.v1; import "google/api/field_behavior.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "IoProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// The storage details for Avro input content. +message AvroSource { + // Required. Google Cloud Storage location. + GcsSource gcs_source = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// The storage details for CSV input content. +message CsvSource { + // Required. Google Cloud Storage location. + GcsSource gcs_source = 1 [(google.api.field_behavior) = REQUIRED]; +} // The Google Cloud Storage location for the input content. message GcsSource { @@ -60,10 +75,23 @@ message BigQueryDestination { // Accepted forms: // // * BigQuery path. For example: - // `bq://projectId` or `bq://projectId.bqDatasetId.bqTableId`. + // `bq://projectId` or `bq://projectId.bqDatasetId` or + // `bq://projectId.bqDatasetId.bqTableId`. string output_uri = 1 [(google.api.field_behavior) = REQUIRED]; } +// The storage details for CSV output content. +message CsvDestination { + // Required. Google Cloud Storage location. + GcsDestination gcs_destination = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// The storage details for TFRecord output content. +message TFRecordDestination { + // Required. Google Cloud Storage location. + GcsDestination gcs_destination = 1 [(google.api.field_behavior) = REQUIRED]; +} + // The Container Registry location for the container image. message ContainerRegistryDestination { // Required. Container Registry URI of a container image. diff --git a/google/cloud/aiplatform/v1/job_service.proto b/google/cloud/aiplatform/v1/job_service.proto index 0bbee54b8..2b2d449e5 100644 --- a/google/cloud/aiplatform/v1/job_service.proto +++ b/google/cloud/aiplatform/v1/job_service.proto @@ -24,16 +24,20 @@ import "google/cloud/aiplatform/v1/batch_prediction_job.proto"; import "google/cloud/aiplatform/v1/custom_job.proto"; import "google/cloud/aiplatform/v1/data_labeling_job.proto"; import "google/cloud/aiplatform/v1/hyperparameter_tuning_job.proto"; +import "google/cloud/aiplatform/v1/model_deployment_monitoring_job.proto"; import "google/cloud/aiplatform/v1/operation.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; import "google/protobuf/timestamp.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "JobServiceProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A service for creating and managing Vertex AI's jobs. service JobService { @@ -253,6 +257,88 @@ service JobService { }; option (google.api.method_signature) = "name"; } + + // Creates a ModelDeploymentMonitoringJob. It will run periodically on a + // configured interval. + rpc CreateModelDeploymentMonitoringJob(CreateModelDeploymentMonitoringJobRequest) returns (ModelDeploymentMonitoringJob) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/modelDeploymentMonitoringJobs" + body: "model_deployment_monitoring_job" + }; + option (google.api.method_signature) = "parent,model_deployment_monitoring_job"; + } + + // Searches Model Monitoring Statistics generated within a given time window. + rpc SearchModelDeploymentMonitoringStatsAnomalies(SearchModelDeploymentMonitoringStatsAnomaliesRequest) returns (SearchModelDeploymentMonitoringStatsAnomaliesResponse) { + option (google.api.http) = { + post: "/v1/{model_deployment_monitoring_job=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:searchModelDeploymentMonitoringStatsAnomalies" + body: "*" + }; + option (google.api.method_signature) = "model_deployment_monitoring_job,deployed_model_id"; + } + + // Gets a ModelDeploymentMonitoringJob. + rpc GetModelDeploymentMonitoringJob(GetModelDeploymentMonitoringJobRequest) returns (ModelDeploymentMonitoringJob) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists ModelDeploymentMonitoringJobs in a Location. + rpc ListModelDeploymentMonitoringJobs(ListModelDeploymentMonitoringJobsRequest) returns (ListModelDeploymentMonitoringJobsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/modelDeploymentMonitoringJobs" + }; + option (google.api.method_signature) = "parent"; + } + + // Updates a ModelDeploymentMonitoringJob. + rpc UpdateModelDeploymentMonitoringJob(UpdateModelDeploymentMonitoringJobRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{model_deployment_monitoring_job.name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" + body: "model_deployment_monitoring_job" + }; + option (google.api.method_signature) = "model_deployment_monitoring_job,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "ModelDeploymentMonitoringJob" + metadata_type: "UpdateModelDeploymentMonitoringJobOperationMetadata" + }; + } + + // Deletes a ModelDeploymentMonitoringJob. + rpc DeleteModelDeploymentMonitoringJob(DeleteModelDeploymentMonitoringJobRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Pauses a ModelDeploymentMonitoringJob. If the job is running, the server + // makes a best effort to cancel the job. Will mark + // [ModelDeploymentMonitoringJob.state][google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.state] to 'PAUSED'. + rpc PauseModelDeploymentMonitoringJob(PauseModelDeploymentMonitoringJobRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:pause" + body: "*" + }; + option (google.api.method_signature) = "name"; + } + + // Resumes a paused ModelDeploymentMonitoringJob. It will start to run from + // next scheduled time. A deleted ModelDeploymentMonitoringJob can't be + // resumed. + rpc ResumeModelDeploymentMonitoringJob(ResumeModelDeploymentMonitoringJobRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*/modelDeploymentMonitoringJobs/*}:resume" + body: "*" + }; + option (google.api.method_signature) = "name"; + } } // Request message for [JobService.CreateCustomJob][google.cloud.aiplatform.v1.JobService.CreateCustomJob]. @@ -692,3 +778,226 @@ message CancelBatchPredictionJobRequest { } ]; } + +// Request message for +// [JobService.CreateModelDeploymentMonitoringJob][google.cloud.aiplatform.v1.JobService.CreateModelDeploymentMonitoringJob]. +message CreateModelDeploymentMonitoringJobRequest { + // Required. The parent of the ModelDeploymentMonitoringJob. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The ModelDeploymentMonitoringJob to create + ModelDeploymentMonitoringJob model_deployment_monitoring_job = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for +// [JobService.SearchModelDeploymentMonitoringStatsAnomalies][google.cloud.aiplatform.v1.JobService.SearchModelDeploymentMonitoringStatsAnomalies]. +message SearchModelDeploymentMonitoringStatsAnomaliesRequest { + // Stats requested for specific objective. + message StatsAnomaliesObjective { + ModelDeploymentMonitoringObjectiveType type = 1; + + // If set, all attribution scores between + // [SearchModelDeploymentMonitoringStatsAnomaliesRequest.start_time][google.cloud.aiplatform.v1.SearchModelDeploymentMonitoringStatsAnomaliesRequest.start_time] and + // [SearchModelDeploymentMonitoringStatsAnomaliesRequest.end_time][google.cloud.aiplatform.v1.SearchModelDeploymentMonitoringStatsAnomaliesRequest.end_time] are + // fetched, and page token doesn't take affect in this case. + // Only used to retrieve attribution score for the top Features which has + // the highest attribution score in the latest monitoring run. + int32 top_feature_count = 4; + } + + // Required. ModelDeploymentMonitoring Job resource name. + // Format: + // `projects/{project}/locations/{location}/modelDeploymentMonitoringJobs/{model_deployment_monitoring_job} + string model_deployment_monitoring_job = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/ModelDeploymentMonitoringJob" + } + ]; + + // Required. The DeployedModel ID of the + // [ModelDeploymentMonitoringObjectiveConfig.deployed_model_id]. + string deployed_model_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // The feature display name. If specified, only return the stats belonging to + // this feature. Format: + // [ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies.feature_display_name][google.cloud.aiplatform.v1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies.feature_display_name], + // example: "user_destination". + string feature_display_name = 3; + + // Required. Objectives of the stats to retrieve. + repeated StatsAnomaliesObjective objectives = 4 [(google.api.field_behavior) = REQUIRED]; + + // The standard list page size. + int32 page_size = 5; + + // A page token received from a previous + // [JobService.SearchModelDeploymentMonitoringStatsAnomalies][google.cloud.aiplatform.v1.JobService.SearchModelDeploymentMonitoringStatsAnomalies] + // call. + string page_token = 6; + + // The earliest timestamp of stats being generated. + // If not set, indicates fetching stats till the earliest possible one. + google.protobuf.Timestamp start_time = 7; + + // The latest timestamp of stats being generated. + // If not set, indicates feching stats till the latest possible one. + google.protobuf.Timestamp end_time = 8; +} + +// Response message for +// [JobService.SearchModelDeploymentMonitoringStatsAnomalies][google.cloud.aiplatform.v1.JobService.SearchModelDeploymentMonitoringStatsAnomalies]. +message SearchModelDeploymentMonitoringStatsAnomaliesResponse { + // Stats retrieved for requested objectives. + // There are at most 1000 + // [ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies.prediction_stats][google.cloud.aiplatform.v1.ModelMonitoringStatsAnomalies.FeatureHistoricStatsAnomalies.prediction_stats] + // in the response. + repeated ModelMonitoringStatsAnomalies monitoring_stats = 1; + + // The page token that can be used by the next + // [JobService.SearchModelDeploymentMonitoringStatsAnomalies][google.cloud.aiplatform.v1.JobService.SearchModelDeploymentMonitoringStatsAnomalies] + // call. + string next_page_token = 2; +} + +// Request message for +// [JobService.GetModelDeploymentMonitoringJob][google.cloud.aiplatform.v1.JobService.GetModelDeploymentMonitoringJob]. +message GetModelDeploymentMonitoringJobRequest { + // Required. The resource name of the ModelDeploymentMonitoringJob. + // Format: + // `projects/{project}/locations/{location}/modelDeploymentMonitoringJobs/{model_deployment_monitoring_job}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/ModelDeploymentMonitoringJob" + } + ]; +} + +// Request message for +// [JobService.ListModelDeploymentMonitoringJobs][google.cloud.aiplatform.v1.JobService.ListModelDeploymentMonitoringJobs]. +message ListModelDeploymentMonitoringJobsRequest { + // Required. The parent of the ModelDeploymentMonitoringJob. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // The standard list filter. + string filter = 2; + + // The standard list page size. + int32 page_size = 3; + + // The standard list page token. + string page_token = 4; + + // Mask specifying which fields to read + google.protobuf.FieldMask read_mask = 5; +} + +// Response message for +// [JobService.ListModelDeploymentMonitoringJobs][google.cloud.aiplatform.v1.JobService.ListModelDeploymentMonitoringJobs]. +message ListModelDeploymentMonitoringJobsResponse { + // A list of ModelDeploymentMonitoringJobs that matches the specified filter + // in the request. + repeated ModelDeploymentMonitoringJob model_deployment_monitoring_jobs = 1; + + // The standard List next-page token. + string next_page_token = 2; +} + +// Request message for +// [JobService.UpdateModelDeploymentMonitoringJob][google.cloud.aiplatform.v1.JobService.UpdateModelDeploymentMonitoringJob]. +message UpdateModelDeploymentMonitoringJobRequest { + // Required. The model monitoring configuration which replaces the resource on the + // server. + ModelDeploymentMonitoringJob model_deployment_monitoring_job = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The update mask is used to specify the fields to be overwritten in the + // ModelDeploymentMonitoringJob resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then only the non-empty fields present in the + // request will be overwritten. Set the update_mask to `*` to override all + // fields. + // For the objective config, the user can either provide the update mask for + // model_deployment_monitoring_objective_configs or any combination of its + // nested fields, such as: + // model_deployment_monitoring_objective_configs.objective_config.training_dataset. + // + // Updatable fields: + // + // * `display_name` + // * `model_deployment_monitoring_schedule_config` + // * `model_monitoring_alert_config` + // * `logging_sampling_strategy` + // * `labels` + // * `log_ttl` + // * `enable_monitoring_pipeline_logs` + // . and + // * `model_deployment_monitoring_objective_configs` + // . or + // * `model_deployment_monitoring_objective_configs.objective_config.training_dataset` + // * `model_deployment_monitoring_objective_configs.objective_config.training_prediction_skew_detection_config` + // * `model_deployment_monitoring_objective_configs.objective_config.prediction_drift_detection_config` + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for +// [JobService.DeleteModelDeploymentMonitoringJob][google.cloud.aiplatform.v1.JobService.DeleteModelDeploymentMonitoringJob]. +message DeleteModelDeploymentMonitoringJobRequest { + // Required. The resource name of the model monitoring job to delete. + // Format: + // `projects/{project}/locations/{location}/modelDeploymentMonitoringJobs/{model_deployment_monitoring_job}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/ModelDeploymentMonitoringJob" + } + ]; +} + +// Request message for +// [JobService.PauseModelDeploymentMonitoringJob][google.cloud.aiplatform.v1.JobService.PauseModelDeploymentMonitoringJob]. +message PauseModelDeploymentMonitoringJobRequest { + // Required. The resource name of the ModelDeploymentMonitoringJob to pause. + // Format: + // `projects/{project}/locations/{location}/modelDeploymentMonitoringJobs/{model_deployment_monitoring_job}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/ModelDeploymentMonitoringJob" + } + ]; +} + +// Request message for +// [JobService.ResumeModelDeploymentMonitoringJob][google.cloud.aiplatform.v1.JobService.ResumeModelDeploymentMonitoringJob]. +message ResumeModelDeploymentMonitoringJobRequest { + // Required. The resource name of the ModelDeploymentMonitoringJob to resume. + // Format: + // `projects/{project}/locations/{location}/modelDeploymentMonitoringJobs/{model_deployment_monitoring_job}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/ModelDeploymentMonitoringJob" + } + ]; +} + +// Runtime operation information for +// [JobService.UpdateModelDeploymentMonitoringJob][google.cloud.aiplatform.v1.JobService.UpdateModelDeploymentMonitoringJob]. +message UpdateModelDeploymentMonitoringJobOperationMetadata { + // The operation generic information. + GenericOperationMetadata generic_metadata = 1; +} diff --git a/google/cloud/aiplatform/v1/job_state.proto b/google/cloud/aiplatform/v1/job_state.proto index 18504390f..bc8a6139d 100644 --- a/google/cloud/aiplatform/v1/job_state.proto +++ b/google/cloud/aiplatform/v1/job_state.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "JobStateProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Describes the state of a job. enum JobState { @@ -52,4 +55,7 @@ enum JobState { // The job has been stopped, and can be resumed. JOB_STATE_PAUSED = 8; + + // The job has expired. + JOB_STATE_EXPIRED = 9; } diff --git a/google/cloud/aiplatform/v1/lineage_subgraph.proto b/google/cloud/aiplatform/v1/lineage_subgraph.proto new file mode 100644 index 000000000..dc9f62e1f --- /dev/null +++ b/google/cloud/aiplatform/v1/lineage_subgraph.proto @@ -0,0 +1,43 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/cloud/aiplatform/v1/artifact.proto"; +import "google/cloud/aiplatform/v1/event.proto"; +import "google/cloud/aiplatform/v1/execution.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "LineageSubgraphProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// A subgraph of the overall lineage graph. Event edges connect Artifact and +// Execution nodes. +message LineageSubgraph { + // The Artifact nodes in the subgraph. + repeated Artifact artifacts = 1; + + // The Execution nodes in the subgraph. + repeated Execution executions = 2; + + // The Event edges between Artifacts and Executions in the subgraph. + repeated Event events = 3; +} diff --git a/google/cloud/aiplatform/v1/machine_resources.proto b/google/cloud/aiplatform/v1/machine_resources.proto index 4bf84df8e..6d03d2cf4 100644 --- a/google/cloud/aiplatform/v1/machine_resources.proto +++ b/google/cloud/aiplatform/v1/machine_resources.proto @@ -20,10 +20,13 @@ import "google/api/field_behavior.proto"; import "google/cloud/aiplatform/v1/accelerator_type.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "MachineResourcesProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Specification of a single machine. message MachineSpec { @@ -58,12 +61,11 @@ message DedicatedResources { ]; // Required. Immutable. The minimum number of machine replicas this DeployedModel will be always - // deployed on. If traffic against it increases, it may dynamically be + // deployed on. This value must be greater than or equal to 1. + // + // If traffic against the DeployedModel increases, it may dynamically be // deployed onto more replicas, and as traffic decreases, some of these extra // replicas may be freed. - // Note: if [machine_spec.accelerator_count][google.cloud.aiplatform.v1.MachineSpec.accelerator_count] is - // above 0, currently the model will be always deployed precisely on - // [min_replica_count][google.cloud.aiplatform.v1.DedicatedResources.min_replica_count]. int32 min_replica_count = 2 [ (google.api.field_behavior) = REQUIRED, (google.api.field_behavior) = IMMUTABLE @@ -78,6 +80,28 @@ message DedicatedResources { // If this value is not provided, will use [min_replica_count][google.cloud.aiplatform.v1.DedicatedResources.min_replica_count] as the // default value. int32 max_replica_count = 3 [(google.api.field_behavior) = IMMUTABLE]; + + // Immutable. The metric specifications that overrides a resource + // utilization metric (CPU utilization, accelerator's duty cycle, and so on) + // target value (default to 60 if not set). At most one entry is allowed per + // metric. + // + // If [machine_spec.accelerator_count][google.cloud.aiplatform.v1.MachineSpec.accelerator_count] is + // above 0, the autoscaling will be based on both CPU utilization and + // accelerator's duty cycle metrics and scale up when either metrics exceeds + // its target value while scale down if both metrics are under their target + // value. The default target value is 60 for both metrics. + // + // If [machine_spec.accelerator_count][google.cloud.aiplatform.v1.MachineSpec.accelerator_count] is + // 0, the autoscaling will be based on CPU utilization metric only with + // default target value 60 if not explicitly set. + // + // For example, in the case of Online Prediction, if you want to override + // target CPU utilization to 80, you should set + // [autoscaling_metric_specs.metric_name][google.cloud.aiplatform.v1.AutoscalingMetricSpec.metric_name] + // to `aiplatform.googleapis.com/prediction/online/cpu/utilization` and + // [autoscaling_metric_specs.target][google.cloud.aiplatform.v1.AutoscalingMetricSpec.target] to `80`. + repeated AutoscalingMetricSpec autoscaling_metric_specs = 4 [(google.api.field_behavior) = IMMUTABLE]; } // A description of resources that to large degree are decided by Vertex AI, @@ -140,3 +164,22 @@ message DiskSpec { // Size in GB of the boot disk (default is 100GB). int32 boot_disk_size_gb = 2; } + +// The metric specification that defines the target resource utilization +// (CPU utilization, accelerator's duty cycle, and so on) for calculating the +// desired replica count. +message AutoscalingMetricSpec { + // Required. The resource metric name. + // Supported metrics: + // + // * For Online Prediction: + // * `aiplatform.googleapis.com/prediction/online/accelerator/duty_cycle` + // * `aiplatform.googleapis.com/prediction/online/cpu/utilization` + string metric_name = 1 [(google.api.field_behavior) = REQUIRED]; + + // The target resource utilization in percentage (1% - 100%) for the given + // metric; once the real usage deviates from the target by a certain + // percentage, the machine replicas change. The default value is 60 + // (representing 60%) if not provided. + int32 target = 2; +} diff --git a/google/cloud/aiplatform/v1/manual_batch_tuning_parameters.proto b/google/cloud/aiplatform/v1/manual_batch_tuning_parameters.proto index 0266b286e..7bae2c8b4 100644 --- a/google/cloud/aiplatform/v1/manual_batch_tuning_parameters.proto +++ b/google/cloud/aiplatform/v1/manual_batch_tuning_parameters.proto @@ -19,10 +19,13 @@ package google.cloud.aiplatform.v1; import "google/api/field_behavior.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ManualBatchTuningParametersProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Manual batch tuning parameters. message ManualBatchTuningParameters { diff --git a/google/cloud/aiplatform/v1/metadata_schema.proto b/google/cloud/aiplatform/v1/metadata_schema.proto new file mode 100644 index 000000000..ead95579c --- /dev/null +++ b/google/cloud/aiplatform/v1/metadata_schema.proto @@ -0,0 +1,80 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "MetadataSchemaProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Instance of a general MetadataSchema. +message MetadataSchema { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/MetadataSchema" + pattern: "projects/{project}/locations/{location}/metadataStores/{metadata_store}/metadataSchemas/{metadata_schema}" + }; + + // Describes the type of the MetadataSchema. + enum MetadataSchemaType { + // Unspecified type for the MetadataSchema. + METADATA_SCHEMA_TYPE_UNSPECIFIED = 0; + + // A type indicating that the MetadataSchema will be used by Artifacts. + ARTIFACT_TYPE = 1; + + // A typee indicating that the MetadataSchema will be used by Executions. + EXECUTION_TYPE = 2; + + // A state indicating that the MetadataSchema will be used by Contexts. + CONTEXT_TYPE = 3; + } + + // Output only. The resource name of the MetadataSchema. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The version of the MetadataSchema. The version's format must match + // the following regular expression: `^[0-9]+[.][0-9]+[.][0-9]+$`, which would + // allow to order/compare different versions. Example: 1.0.0, 1.0.1, etc. + string schema_version = 2; + + // Required. The raw YAML string representation of the MetadataSchema. The combination + // of [MetadataSchema.version] and the schema name given by `title` in + // [MetadataSchema.schema] must be unique within a MetadataStore. + // + // The schema is defined as an OpenAPI 3.0.2 + // [MetadataSchema + // Object](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#schemaObject) + string schema = 3 [(google.api.field_behavior) = REQUIRED]; + + // The type of the MetadataSchema. This is a property that identifies which + // metadata types will use the MetadataSchema. + MetadataSchemaType schema_type = 4; + + // Output only. Timestamp when this MetadataSchema was created. + google.protobuf.Timestamp create_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Description of the Metadata Schema + string description = 6; +} diff --git a/google/cloud/aiplatform/v1/metadata_service.proto b/google/cloud/aiplatform/v1/metadata_service.proto new file mode 100644 index 000000000..1af4a2912 --- /dev/null +++ b/google/cloud/aiplatform/v1/metadata_service.proto @@ -0,0 +1,1257 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/artifact.proto"; +import "google/cloud/aiplatform/v1/context.proto"; +import "google/cloud/aiplatform/v1/event.proto"; +import "google/cloud/aiplatform/v1/execution.proto"; +import "google/cloud/aiplatform/v1/lineage_subgraph.proto"; +import "google/cloud/aiplatform/v1/metadata_schema.proto"; +import "google/cloud/aiplatform/v1/metadata_store.proto"; +import "google/cloud/aiplatform/v1/operation.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "MetadataServiceProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Service for reading and writing metadata entries. +service MetadataService { + option (google.api.default_host) = "aiplatform.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Initializes a MetadataStore, including allocation of resources. + rpc CreateMetadataStore(CreateMetadataStoreRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/metadataStores" + body: "metadata_store" + }; + option (google.api.method_signature) = "parent,metadata_store,metadata_store_id"; + option (google.longrunning.operation_info) = { + response_type: "MetadataStore" + metadata_type: "CreateMetadataStoreOperationMetadata" + }; + } + + // Retrieves a specific MetadataStore. + rpc GetMetadataStore(GetMetadataStoreRequest) returns (MetadataStore) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/metadataStores/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists MetadataStores for a Location. + rpc ListMetadataStores(ListMetadataStoresRequest) returns (ListMetadataStoresResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/metadataStores" + }; + option (google.api.method_signature) = "parent"; + } + + // Deletes a single MetadataStore and all its child resources (Artifacts, + // Executions, and Contexts). + rpc DeleteMetadataStore(DeleteMetadataStoreRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/metadataStores/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteMetadataStoreOperationMetadata" + }; + } + + // Creates an Artifact associated with a MetadataStore. + rpc CreateArtifact(CreateArtifactRequest) returns (Artifact) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/metadataStores/*}/artifacts" + body: "artifact" + }; + option (google.api.method_signature) = "parent,artifact,artifact_id"; + } + + // Retrieves a specific Artifact. + rpc GetArtifact(GetArtifactRequest) returns (Artifact) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/metadataStores/*/artifacts/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists Artifacts in the MetadataStore. + rpc ListArtifacts(ListArtifactsRequest) returns (ListArtifactsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/metadataStores/*}/artifacts" + }; + option (google.api.method_signature) = "parent"; + } + + // Updates a stored Artifact. + rpc UpdateArtifact(UpdateArtifactRequest) returns (Artifact) { + option (google.api.http) = { + patch: "/v1/{artifact.name=projects/*/locations/*/metadataStores/*/artifacts/*}" + body: "artifact" + }; + option (google.api.method_signature) = "artifact,update_mask"; + } + + // Deletes an Artifact. + rpc DeleteArtifact(DeleteArtifactRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/metadataStores/*/artifacts/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Purges Artifacts. + rpc PurgeArtifacts(PurgeArtifactsRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/metadataStores/*}/artifacts:purge" + body: "*" + }; + option (google.api.method_signature) = "parent"; + option (google.longrunning.operation_info) = { + response_type: "PurgeArtifactsResponse" + metadata_type: "PurgeArtifactsMetadata" + }; + } + + // Creates a Context associated with a MetadataStore. + rpc CreateContext(CreateContextRequest) returns (Context) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/metadataStores/*}/contexts" + body: "context" + }; + option (google.api.method_signature) = "parent,context,context_id"; + } + + // Retrieves a specific Context. + rpc GetContext(GetContextRequest) returns (Context) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/metadataStores/*/contexts/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists Contexts on the MetadataStore. + rpc ListContexts(ListContextsRequest) returns (ListContextsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/metadataStores/*}/contexts" + }; + option (google.api.method_signature) = "parent"; + } + + // Updates a stored Context. + rpc UpdateContext(UpdateContextRequest) returns (Context) { + option (google.api.http) = { + patch: "/v1/{context.name=projects/*/locations/*/metadataStores/*/contexts/*}" + body: "context" + }; + option (google.api.method_signature) = "context,update_mask"; + } + + // Deletes a stored Context. + rpc DeleteContext(DeleteContextRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/metadataStores/*/contexts/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Purges Contexts. + rpc PurgeContexts(PurgeContextsRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/metadataStores/*}/contexts:purge" + body: "*" + }; + option (google.api.method_signature) = "parent"; + option (google.longrunning.operation_info) = { + response_type: "PurgeContextsResponse" + metadata_type: "PurgeContextsMetadata" + }; + } + + // Adds a set of Artifacts and Executions to a Context. If any of the + // Artifacts or Executions have already been added to a Context, they are + // simply skipped. + rpc AddContextArtifactsAndExecutions(AddContextArtifactsAndExecutionsRequest) returns (AddContextArtifactsAndExecutionsResponse) { + option (google.api.http) = { + post: "/v1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:addContextArtifactsAndExecutions" + body: "*" + }; + option (google.api.method_signature) = "context,artifacts,executions"; + } + + // Adds a set of Contexts as children to a parent Context. If any of the + // child Contexts have already been added to the parent Context, they are + // simply skipped. If this call would create a cycle or cause any Context to + // have more than 10 parents, the request will fail with an INVALID_ARGUMENT + // error. + rpc AddContextChildren(AddContextChildrenRequest) returns (AddContextChildrenResponse) { + option (google.api.http) = { + post: "/v1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:addContextChildren" + body: "*" + }; + option (google.api.method_signature) = "context,child_contexts"; + } + + // Retrieves Artifacts and Executions within the specified Context, connected + // by Event edges and returned as a LineageSubgraph. + rpc QueryContextLineageSubgraph(QueryContextLineageSubgraphRequest) returns (LineageSubgraph) { + option (google.api.http) = { + get: "/v1/{context=projects/*/locations/*/metadataStores/*/contexts/*}:queryContextLineageSubgraph" + }; + option (google.api.method_signature) = "context"; + } + + // Creates an Execution associated with a MetadataStore. + rpc CreateExecution(CreateExecutionRequest) returns (Execution) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/metadataStores/*}/executions" + body: "execution" + }; + option (google.api.method_signature) = "parent,execution,execution_id"; + } + + // Retrieves a specific Execution. + rpc GetExecution(GetExecutionRequest) returns (Execution) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/metadataStores/*/executions/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists Executions in the MetadataStore. + rpc ListExecutions(ListExecutionsRequest) returns (ListExecutionsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/metadataStores/*}/executions" + }; + option (google.api.method_signature) = "parent"; + } + + // Updates a stored Execution. + rpc UpdateExecution(UpdateExecutionRequest) returns (Execution) { + option (google.api.http) = { + patch: "/v1/{execution.name=projects/*/locations/*/metadataStores/*/executions/*}" + body: "execution" + }; + option (google.api.method_signature) = "execution,update_mask"; + } + + // Deletes an Execution. + rpc DeleteExecution(DeleteExecutionRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/metadataStores/*/executions/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Purges Executions. + rpc PurgeExecutions(PurgeExecutionsRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/metadataStores/*}/executions:purge" + body: "*" + }; + option (google.api.method_signature) = "parent"; + option (google.longrunning.operation_info) = { + response_type: "PurgeExecutionsResponse" + metadata_type: "PurgeExecutionsMetadata" + }; + } + + // Adds Events to the specified Execution. An Event indicates whether an + // Artifact was used as an input or output for an Execution. If an Event + // already exists between the Execution and the Artifact, the Event is + // skipped. + rpc AddExecutionEvents(AddExecutionEventsRequest) returns (AddExecutionEventsResponse) { + option (google.api.http) = { + post: "/v1/{execution=projects/*/locations/*/metadataStores/*/executions/*}:addExecutionEvents" + body: "*" + }; + option (google.api.method_signature) = "execution,events"; + } + + // Obtains the set of input and output Artifacts for this Execution, in the + // form of LineageSubgraph that also contains the Execution and connecting + // Events. + rpc QueryExecutionInputsAndOutputs(QueryExecutionInputsAndOutputsRequest) returns (LineageSubgraph) { + option (google.api.http) = { + get: "/v1/{execution=projects/*/locations/*/metadataStores/*/executions/*}:queryExecutionInputsAndOutputs" + }; + option (google.api.method_signature) = "execution"; + } + + // Creates a MetadataSchema. + rpc CreateMetadataSchema(CreateMetadataSchemaRequest) returns (MetadataSchema) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/metadataStores/*}/metadataSchemas" + body: "metadata_schema" + }; + option (google.api.method_signature) = "parent,metadata_schema,metadata_schema_id"; + } + + // Retrieves a specific MetadataSchema. + rpc GetMetadataSchema(GetMetadataSchemaRequest) returns (MetadataSchema) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/metadataStores/*/metadataSchemas/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists MetadataSchemas. + rpc ListMetadataSchemas(ListMetadataSchemasRequest) returns (ListMetadataSchemasResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/metadataStores/*}/metadataSchemas" + }; + option (google.api.method_signature) = "parent"; + } + + // Retrieves lineage of an Artifact represented through Artifacts and + // Executions connected by Event edges and returned as a LineageSubgraph. + rpc QueryArtifactLineageSubgraph(QueryArtifactLineageSubgraphRequest) returns (LineageSubgraph) { + option (google.api.http) = { + get: "/v1/{artifact=projects/*/locations/*/metadataStores/*/artifacts/*}:queryArtifactLineageSubgraph" + }; + option (google.api.method_signature) = "artifact"; + } +} + +// Request message for [MetadataService.CreateMetadataStore][google.cloud.aiplatform.v1.MetadataService.CreateMetadataStore]. +message CreateMetadataStoreRequest { + // Required. The resource name of the Location where the MetadataStore should + // be created. + // Format: `projects/{project}/locations/{location}/` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The MetadataStore to create. + MetadataStore metadata_store = 2 [(google.api.field_behavior) = REQUIRED]; + + // The {metadatastore} portion of the resource name with the format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + // If not provided, the MetadataStore's ID will be a UUID generated by the + // service. + // Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`. + // Must be unique across all MetadataStores in the parent Location. + // (Otherwise the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED + // if the caller can't view the preexisting MetadataStore.) + string metadata_store_id = 3; +} + +// Details of operations that perform [MetadataService.CreateMetadataStore][google.cloud.aiplatform.v1.MetadataService.CreateMetadataStore]. +message CreateMetadataStoreOperationMetadata { + // Operation metadata for creating a MetadataStore. + GenericOperationMetadata generic_metadata = 1; +} + +// Request message for [MetadataService.GetMetadataStore][google.cloud.aiplatform.v1.MetadataService.GetMetadataStore]. +message GetMetadataStoreRequest { + // Required. The resource name of the MetadataStore to retrieve. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/MetadataStore" + } + ]; +} + +// Request message for [MetadataService.ListMetadataStores][google.cloud.aiplatform.v1.MetadataService.ListMetadataStores]. +message ListMetadataStoresRequest { + // Required. The Location whose MetadataStores should be listed. + // Format: + // `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // The maximum number of Metadata Stores to return. The service may return + // fewer. + // Must be in range 1-1000, inclusive. Defaults to 100. + int32 page_size = 2; + + // A page token, received from a previous + // [MetadataService.ListMetadataStores][google.cloud.aiplatform.v1.MetadataService.ListMetadataStores] call. Provide this to retrieve the + // subsequent page. + // + // When paginating, all other provided parameters must match the call that + // provided the page token. (Otherwise the request will fail with + // INVALID_ARGUMENT error.) + string page_token = 3; +} + +// Response message for [MetadataService.ListMetadataStores][google.cloud.aiplatform.v1.MetadataService.ListMetadataStores]. +message ListMetadataStoresResponse { + // The MetadataStores found for the Location. + repeated MetadataStore metadata_stores = 1; + + // A token, which can be sent as + // [ListMetadataStoresRequest.page_token][google.cloud.aiplatform.v1.ListMetadataStoresRequest.page_token] to retrieve the next + // page. If this field is not populated, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [MetadataService.DeleteMetadataStore][google.cloud.aiplatform.v1.MetadataService.DeleteMetadataStore]. +message DeleteMetadataStoreRequest { + // Required. The resource name of the MetadataStore to delete. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/MetadataStore" + } + ]; + + // Deprecated: Field is no longer supported. + bool force = 2 [deprecated = true]; +} + +// Details of operations that perform [MetadataService.DeleteMetadataStore][google.cloud.aiplatform.v1.MetadataService.DeleteMetadataStore]. +message DeleteMetadataStoreOperationMetadata { + // Operation metadata for deleting a MetadataStore. + GenericOperationMetadata generic_metadata = 1; +} + +// Request message for [MetadataService.CreateArtifact][google.cloud.aiplatform.v1.MetadataService.CreateArtifact]. +message CreateArtifactRequest { + // Required. The resource name of the MetadataStore where the Artifact should + // be created. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/MetadataStore" + } + ]; + + // Required. The Artifact to create. + Artifact artifact = 2 [(google.api.field_behavior) = REQUIRED]; + + // The {artifact} portion of the resource name with the format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` + // If not provided, the Artifact's ID will be a UUID generated by the service. + // Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`. + // Must be unique across all Artifacts in the parent MetadataStore. (Otherwise + // the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED if the + // caller can't view the preexisting Artifact.) + string artifact_id = 3; +} + +// Request message for [MetadataService.GetArtifact][google.cloud.aiplatform.v1.MetadataService.GetArtifact]. +message GetArtifactRequest { + // Required. The resource name of the Artifact to retrieve. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Artifact" + } + ]; +} + +// Request message for [MetadataService.ListArtifacts][google.cloud.aiplatform.v1.MetadataService.ListArtifacts]. +message ListArtifactsRequest { + // Required. The MetadataStore whose Artifacts should be listed. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Artifact" + } + ]; + + // The maximum number of Artifacts to return. The service may return fewer. + // Must be in range 1-1000, inclusive. Defaults to 100. + int32 page_size = 2; + + // A page token, received from a previous [MetadataService.ListArtifacts][google.cloud.aiplatform.v1.MetadataService.ListArtifacts] + // call. Provide this to retrieve the subsequent page. + // + // When paginating, all other provided parameters must match the call that + // provided the page token. (Otherwise the request will fail with + // INVALID_ARGUMENT error.) + string page_token = 3; + + // Filter specifying the boolean condition for the Artifacts to satisfy in + // order to be part of the result set. + // The syntax to define filter query is based on https://google.aip.dev/160. + // The supported set of filters include the following: + // + // * **Attribute filtering**: + // For example: `display_name = "test"`. + // Supported fields include: `name`, `display_name`, `uri`, `state`, + // `schema_title`, `create_time`, and `update_time`. + // Time fields, such as `create_time` and `update_time`, require values + // specified in RFC-3339 format. + // For example: `create_time = "2020-11-19T11:30:00-04:00"` + // * **Metadata field**: + // To filter on metadata fields use traversal operation as follows: + // `metadata..`. + // For example: `metadata.field_1.number_value = 10.0` + // * **Context based filtering**: + // To filter Artifacts based on the contexts to which they belong, use the + // function operator with the full resource name + // `in_context()`. + // For example: + // `in_context("projects//locations//metadataStores//contexts/")` + // + // Each of the above supported filter types can be combined together using + // logical operators (`AND` & `OR`). + // + // For example: `display_name = "test" AND metadata.field1.bool_value = true`. + string filter = 4; +} + +// Response message for [MetadataService.ListArtifacts][google.cloud.aiplatform.v1.MetadataService.ListArtifacts]. +message ListArtifactsResponse { + // The Artifacts retrieved from the MetadataStore. + repeated Artifact artifacts = 1; + + // A token, which can be sent as [ListArtifactsRequest.page_token][google.cloud.aiplatform.v1.ListArtifactsRequest.page_token] + // to retrieve the next page. + // If this field is not populated, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [MetadataService.UpdateArtifact][google.cloud.aiplatform.v1.MetadataService.UpdateArtifact]. +message UpdateArtifactRequest { + // Required. The Artifact containing updates. + // The Artifact's [Artifact.name][google.cloud.aiplatform.v1.Artifact.name] field is used to identify the Artifact to + // be updated. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` + Artifact artifact = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. A FieldMask indicating which fields should be updated. + // Functionality of this field is not yet supported. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; + + // If set to true, and the [Artifact][google.cloud.aiplatform.v1.Artifact] is not found, a new [Artifact][google.cloud.aiplatform.v1.Artifact] is + // created. + bool allow_missing = 3; +} + +// Request message for [MetadataService.DeleteArtifact][google.cloud.aiplatform.v1.MetadataService.DeleteArtifact]. +message DeleteArtifactRequest { + // Required. The resource name of the Artifact to delete. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Artifact" + } + ]; + + // Optional. The etag of the Artifact to delete. + // If this is provided, it must match the server's etag. Otherwise, the + // request will fail with a FAILED_PRECONDITION. + string etag = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for [MetadataService.PurgeArtifacts][google.cloud.aiplatform.v1.MetadataService.PurgeArtifacts]. +message PurgeArtifactsRequest { + // Required. The metadata store to purge Artifacts from. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Artifact" + } + ]; + + // Required. A required filter matching the Artifacts to be purged. + // E.g., `update_time <= 2020-11-19T11:30:00-04:00`. + string filter = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Flag to indicate to actually perform the purge. + // If `force` is set to false, the method will return a sample of + // Artifact names that would be deleted. + bool force = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for [MetadataService.PurgeArtifacts][google.cloud.aiplatform.v1.MetadataService.PurgeArtifacts]. +message PurgeArtifactsResponse { + // The number of Artifacts that this request deleted (or, if `force` is false, + // the number of Artifacts that will be deleted). This can be an estimate. + int64 purge_count = 1; + + // A sample of the Artifact names that will be deleted. + // Only populated if `force` is set to false. The maximum number of samples is + // 100 (it is possible to return fewer). + repeated string purge_sample = 2 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Artifact" + }]; +} + +// Details of operations that perform [MetadataService.PurgeArtifacts][google.cloud.aiplatform.v1.MetadataService.PurgeArtifacts]. +message PurgeArtifactsMetadata { + // Operation metadata for purging Artifacts. + GenericOperationMetadata generic_metadata = 1; +} + +// Request message for [MetadataService.CreateContext][google.cloud.aiplatform.v1.MetadataService.CreateContext]. +message CreateContextRequest { + // Required. The resource name of the MetadataStore where the Context should be + // created. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/MetadataStore" + } + ]; + + // Required. The Context to create. + Context context = 2 [(google.api.field_behavior) = REQUIRED]; + + // The {context} portion of the resource name with the format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}`. + // If not provided, the Context's ID will be a UUID generated by the service. + // Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`. + // Must be unique across all Contexts in the parent MetadataStore. (Otherwise + // the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED if the + // caller can't view the preexisting Context.) + string context_id = 3; +} + +// Request message for [MetadataService.GetContext][google.cloud.aiplatform.v1.MetadataService.GetContext]. +message GetContextRequest { + // Required. The resource name of the Context to retrieve. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Context" + } + ]; +} + +// Request message for [MetadataService.ListContexts][google.cloud.aiplatform.v1.MetadataService.ListContexts] +message ListContextsRequest { + // Required. The MetadataStore whose Contexts should be listed. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Context" + } + ]; + + // The maximum number of Contexts to return. The service may return fewer. + // Must be in range 1-1000, inclusive. Defaults to 100. + int32 page_size = 2; + + // A page token, received from a previous [MetadataService.ListContexts][google.cloud.aiplatform.v1.MetadataService.ListContexts] + // call. Provide this to retrieve the subsequent page. + // + // When paginating, all other provided parameters must match the call that + // provided the page token. (Otherwise the request will fail with + // INVALID_ARGUMENT error.) + string page_token = 3; + + // Filter specifying the boolean condition for the Contexts to satisfy in + // order to be part of the result set. + // The syntax to define filter query is based on https://google.aip.dev/160. + // Following are the supported set of filters: + // + // * **Attribute filtering**: + // For example: `display_name = "test"`. + // Supported fields include: `name`, `display_name`, `schema_title`, + // `create_time`, and `update_time`. + // Time fields, such as `create_time` and `update_time`, require values + // specified in RFC-3339 format. + // For example: `create_time = "2020-11-19T11:30:00-04:00"`. + // * **Metadata field**: + // To filter on metadata fields use traversal operation as follows: + // `metadata..`. + // For example: `metadata.field_1.number_value = 10.0`. + // * **Parent Child filtering**: + // To filter Contexts based on parent-child relationship use the HAS + // operator as follows: + // + // ``` + // parent_contexts: + // "projects//locations//metadataStores//contexts/" + // child_contexts: + // "projects//locations//metadataStores//contexts/" + // ``` + // + // Each of the above supported filters can be combined together using + // logical operators (`AND` & `OR`). + // + // For example: `display_name = "test" AND metadata.field1.bool_value = true`. + string filter = 4; +} + +// Response message for [MetadataService.ListContexts][google.cloud.aiplatform.v1.MetadataService.ListContexts]. +message ListContextsResponse { + // The Contexts retrieved from the MetadataStore. + repeated Context contexts = 1; + + // A token, which can be sent as [ListContextsRequest.page_token][google.cloud.aiplatform.v1.ListContextsRequest.page_token] + // to retrieve the next page. + // If this field is not populated, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [MetadataService.UpdateContext][google.cloud.aiplatform.v1.MetadataService.UpdateContext]. +message UpdateContextRequest { + // Required. The Context containing updates. + // The Context's [Context.name][google.cloud.aiplatform.v1.Context.name] field is used to identify the Context to be + // updated. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` + Context context = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. A FieldMask indicating which fields should be updated. + // Functionality of this field is not yet supported. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; + + // If set to true, and the [Context][google.cloud.aiplatform.v1.Context] is not found, a new [Context][google.cloud.aiplatform.v1.Context] is + // created. + bool allow_missing = 3; +} + +// Request message for [MetadataService.DeleteContext][google.cloud.aiplatform.v1.MetadataService.DeleteContext]. +message DeleteContextRequest { + // Required. The resource name of the Context to delete. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Context" + } + ]; + + // The force deletion semantics is still undefined. + // Users should not use this field. + bool force = 2; + + // Optional. The etag of the Context to delete. + // If this is provided, it must match the server's etag. Otherwise, the + // request will fail with a FAILED_PRECONDITION. + string etag = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for [MetadataService.PurgeContexts][google.cloud.aiplatform.v1.MetadataService.PurgeContexts]. +message PurgeContextsRequest { + // Required. The metadata store to purge Contexts from. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Context" + } + ]; + + // Required. A required filter matching the Contexts to be purged. + // E.g., `update_time <= 2020-11-19T11:30:00-04:00`. + string filter = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Flag to indicate to actually perform the purge. + // If `force` is set to false, the method will return a sample of + // Context names that would be deleted. + bool force = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for [MetadataService.PurgeContexts][google.cloud.aiplatform.v1.MetadataService.PurgeContexts]. +message PurgeContextsResponse { + // The number of Contexts that this request deleted (or, if `force` is false, + // the number of Contexts that will be deleted). This can be an estimate. + int64 purge_count = 1; + + // A sample of the Context names that will be deleted. + // Only populated if `force` is set to false. The maximum number of samples is + // 100 (it is possible to return fewer). + repeated string purge_sample = 2 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Context" + }]; +} + +// Details of operations that perform [MetadataService.PurgeContexts][google.cloud.aiplatform.v1.MetadataService.PurgeContexts]. +message PurgeContextsMetadata { + // Operation metadata for purging Contexts. + GenericOperationMetadata generic_metadata = 1; +} + +// Request message for [MetadataService.AddContextArtifactsAndExecutions][google.cloud.aiplatform.v1.MetadataService.AddContextArtifactsAndExecutions]. +message AddContextArtifactsAndExecutionsRequest { + // Required. The resource name of the Context that the Artifacts and Executions + // belong to. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` + string context = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Context" + } + ]; + + // The resource names of the Artifacts to attribute to the Context. + // + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` + repeated string artifacts = 2 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Artifact" + }]; + + // The resource names of the Executions to associate with the + // Context. + // + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` + repeated string executions = 3 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Execution" + }]; +} + +// Response message for [MetadataService.AddContextArtifactsAndExecutions][google.cloud.aiplatform.v1.MetadataService.AddContextArtifactsAndExecutions]. +message AddContextArtifactsAndExecutionsResponse { + +} + +// Request message for [MetadataService.AddContextChildren][google.cloud.aiplatform.v1.MetadataService.AddContextChildren]. +message AddContextChildrenRequest { + // Required. The resource name of the parent Context. + // + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` + string context = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Context" + } + ]; + + // The resource names of the child Contexts. + repeated string child_contexts = 2 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Context" + }]; +} + +// Response message for [MetadataService.AddContextChildren][google.cloud.aiplatform.v1.MetadataService.AddContextChildren]. +message AddContextChildrenResponse { + +} + +// Request message for [MetadataService.QueryContextLineageSubgraph][google.cloud.aiplatform.v1.MetadataService.QueryContextLineageSubgraph]. +message QueryContextLineageSubgraphRequest { + // Required. The resource name of the Context whose Artifacts and Executions + // should be retrieved as a LineageSubgraph. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` + // + // The request may error with FAILED_PRECONDITION if the number of Artifacts, + // the number of Executions, or the number of Events that would be returned + // for the Context exceeds 1000. + string context = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Context" + } + ]; +} + +// Request message for [MetadataService.CreateExecution][google.cloud.aiplatform.v1.MetadataService.CreateExecution]. +message CreateExecutionRequest { + // Required. The resource name of the MetadataStore where the Execution should + // be created. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/MetadataStore" + } + ]; + + // Required. The Execution to create. + Execution execution = 2 [(google.api.field_behavior) = REQUIRED]; + + // The {execution} portion of the resource name with the format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` + // If not provided, the Execution's ID will be a UUID generated by the + // service. + // Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`. + // Must be unique across all Executions in the parent MetadataStore. + // (Otherwise the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED + // if the caller can't view the preexisting Execution.) + string execution_id = 3; +} + +// Request message for [MetadataService.GetExecution][google.cloud.aiplatform.v1.MetadataService.GetExecution]. +message GetExecutionRequest { + // Required. The resource name of the Execution to retrieve. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Execution" + } + ]; +} + +// Request message for [MetadataService.ListExecutions][google.cloud.aiplatform.v1.MetadataService.ListExecutions]. +message ListExecutionsRequest { + // Required. The MetadataStore whose Executions should be listed. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Execution" + } + ]; + + // The maximum number of Executions to return. The service may return fewer. + // Must be in range 1-1000, inclusive. Defaults to 100. + int32 page_size = 2; + + // A page token, received from a previous [MetadataService.ListExecutions][google.cloud.aiplatform.v1.MetadataService.ListExecutions] + // call. Provide this to retrieve the subsequent page. + // + // When paginating, all other provided parameters must match the call that + // provided the page token. (Otherwise the request will fail with an + // INVALID_ARGUMENT error.) + string page_token = 3; + + // Filter specifying the boolean condition for the Executions to satisfy in + // order to be part of the result set. + // The syntax to define filter query is based on https://google.aip.dev/160. + // Following are the supported set of filters: + // + // * **Attribute filtering**: + // For example: `display_name = "test"`. + // Supported fields include: `name`, `display_name`, `state`, + // `schema_title`, `create_time`, and `update_time`. + // Time fields, such as `create_time` and `update_time`, require values + // specified in RFC-3339 format. + // For example: `create_time = "2020-11-19T11:30:00-04:00"`. + // * **Metadata field**: + // To filter on metadata fields use traversal operation as follows: + // `metadata..` + // For example: `metadata.field_1.number_value = 10.0` + // * **Context based filtering**: + // To filter Executions based on the contexts to which they belong use + // the function operator with the full resource name: + // `in_context()`. + // For example: + // `in_context("projects//locations//metadataStores//contexts/")` + // + // Each of the above supported filters can be combined together using + // logical operators (`AND` & `OR`). + // For example: `display_name = "test" AND metadata.field1.bool_value = true`. + string filter = 4; +} + +// Response message for [MetadataService.ListExecutions][google.cloud.aiplatform.v1.MetadataService.ListExecutions]. +message ListExecutionsResponse { + // The Executions retrieved from the MetadataStore. + repeated Execution executions = 1; + + // A token, which can be sent as [ListExecutionsRequest.page_token][google.cloud.aiplatform.v1.ListExecutionsRequest.page_token] + // to retrieve the next page. + // If this field is not populated, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [MetadataService.UpdateExecution][google.cloud.aiplatform.v1.MetadataService.UpdateExecution]. +message UpdateExecutionRequest { + // Required. The Execution containing updates. + // The Execution's [Execution.name][google.cloud.aiplatform.v1.Execution.name] field is used to identify the Execution + // to be updated. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` + Execution execution = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. A FieldMask indicating which fields should be updated. + // Functionality of this field is not yet supported. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; + + // If set to true, and the [Execution][google.cloud.aiplatform.v1.Execution] is not found, a new [Execution][google.cloud.aiplatform.v1.Execution] + // is created. + bool allow_missing = 3; +} + +// Request message for [MetadataService.DeleteExecution][google.cloud.aiplatform.v1.MetadataService.DeleteExecution]. +message DeleteExecutionRequest { + // Required. The resource name of the Execution to delete. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Execution" + } + ]; + + // Optional. The etag of the Execution to delete. + // If this is provided, it must match the server's etag. Otherwise, the + // request will fail with a FAILED_PRECONDITION. + string etag = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for [MetadataService.PurgeExecutions][google.cloud.aiplatform.v1.MetadataService.PurgeExecutions]. +message PurgeExecutionsRequest { + // Required. The metadata store to purge Executions from. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Execution" + } + ]; + + // Required. A required filter matching the Executions to be purged. + // E.g., `update_time <= 2020-11-19T11:30:00-04:00`. + string filter = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Flag to indicate to actually perform the purge. + // If `force` is set to false, the method will return a sample of + // Execution names that would be deleted. + bool force = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for [MetadataService.PurgeExecutions][google.cloud.aiplatform.v1.MetadataService.PurgeExecutions]. +message PurgeExecutionsResponse { + // The number of Executions that this request deleted (or, if `force` is + // false, the number of Executions that will be deleted). This can be an + // estimate. + int64 purge_count = 1; + + // A sample of the Execution names that will be deleted. + // Only populated if `force` is set to false. The maximum number of samples is + // 100 (it is possible to return fewer). + repeated string purge_sample = 2 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Execution" + }]; +} + +// Details of operations that perform [MetadataService.PurgeExecutions][google.cloud.aiplatform.v1.MetadataService.PurgeExecutions]. +message PurgeExecutionsMetadata { + // Operation metadata for purging Executions. + GenericOperationMetadata generic_metadata = 1; +} + +// Request message for [MetadataService.AddExecutionEvents][google.cloud.aiplatform.v1.MetadataService.AddExecutionEvents]. +message AddExecutionEventsRequest { + // Required. The resource name of the Execution that the Events connect + // Artifacts with. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` + string execution = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Execution" + } + ]; + + // The Events to create and add. + repeated Event events = 2; +} + +// Response message for [MetadataService.AddExecutionEvents][google.cloud.aiplatform.v1.MetadataService.AddExecutionEvents]. +message AddExecutionEventsResponse { + +} + +// Request message for [MetadataService.QueryExecutionInputsAndOutputs][google.cloud.aiplatform.v1.MetadataService.QueryExecutionInputsAndOutputs]. +message QueryExecutionInputsAndOutputsRequest { + // Required. The resource name of the Execution whose input and output Artifacts should + // be retrieved as a LineageSubgraph. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` + string execution = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Execution" + } + ]; +} + +// Request message for [MetadataService.CreateMetadataSchema][google.cloud.aiplatform.v1.MetadataService.CreateMetadataSchema]. +message CreateMetadataSchemaRequest { + // Required. The resource name of the MetadataStore where the MetadataSchema should + // be created. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/MetadataStore" + } + ]; + + // Required. The MetadataSchema to create. + MetadataSchema metadata_schema = 2 [(google.api.field_behavior) = REQUIRED]; + + // The {metadata_schema} portion of the resource name with the format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/metadataSchemas/{metadataschema}` + // If not provided, the MetadataStore's ID will be a UUID generated by the + // service. + // Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`. + // Must be unique across all MetadataSchemas in the parent Location. + // (Otherwise the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED + // if the caller can't view the preexisting MetadataSchema.) + string metadata_schema_id = 3; +} + +// Request message for [MetadataService.GetMetadataSchema][google.cloud.aiplatform.v1.MetadataService.GetMetadataSchema]. +message GetMetadataSchemaRequest { + // Required. The resource name of the MetadataSchema to retrieve. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/metadataSchemas/{metadataschema}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/MetadataSchema" + } + ]; +} + +// Request message for [MetadataService.ListMetadataSchemas][google.cloud.aiplatform.v1.MetadataService.ListMetadataSchemas]. +message ListMetadataSchemasRequest { + // Required. The MetadataStore whose MetadataSchemas should be listed. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/MetadataSchema" + } + ]; + + // The maximum number of MetadataSchemas to return. The service may return + // fewer. + // Must be in range 1-1000, inclusive. Defaults to 100. + int32 page_size = 2; + + // A page token, received from a previous + // [MetadataService.ListMetadataSchemas][google.cloud.aiplatform.v1.MetadataService.ListMetadataSchemas] call. Provide this to retrieve the + // next page. + // + // When paginating, all other provided parameters must match the call that + // provided the page token. (Otherwise the request will fail with + // INVALID_ARGUMENT error.) + string page_token = 3; + + // A query to filter available MetadataSchemas for matching results. + string filter = 4; +} + +// Response message for [MetadataService.ListMetadataSchemas][google.cloud.aiplatform.v1.MetadataService.ListMetadataSchemas]. +message ListMetadataSchemasResponse { + // The MetadataSchemas found for the MetadataStore. + repeated MetadataSchema metadata_schemas = 1; + + // A token, which can be sent as + // [ListMetadataSchemasRequest.page_token][google.cloud.aiplatform.v1.ListMetadataSchemasRequest.page_token] to retrieve the next + // page. If this field is not populated, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [MetadataService.QueryArtifactLineageSubgraph][google.cloud.aiplatform.v1.MetadataService.QueryArtifactLineageSubgraph]. +message QueryArtifactLineageSubgraphRequest { + // Required. The resource name of the Artifact whose Lineage needs to be retrieved as a + // LineageSubgraph. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` + // + // The request may error with FAILED_PRECONDITION if the number of Artifacts, + // the number of Executions, or the number of Events that would be returned + // for the Context exceeds 1000. + string artifact = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Artifact" + } + ]; + + // Specifies the size of the lineage graph in terms of number of hops from the + // specified artifact. + // Negative Value: INVALID_ARGUMENT error is returned + // 0: Only input artifact is returned. + // No value: Transitive closure is performed to return the complete graph. + int32 max_hops = 2; + + // Filter specifying the boolean condition for the Artifacts to satisfy in + // order to be part of the Lineage Subgraph. + // The syntax to define filter query is based on https://google.aip.dev/160. + // The supported set of filters include the following: + // + // * **Attribute filtering**: + // For example: `display_name = "test"` + // Supported fields include: `name`, `display_name`, `uri`, `state`, + // `schema_title`, `create_time`, and `update_time`. + // Time fields, such as `create_time` and `update_time`, require values + // specified in RFC-3339 format. + // For example: `create_time = "2020-11-19T11:30:00-04:00"` + // * **Metadata field**: + // To filter on metadata fields use traversal operation as follows: + // `metadata..`. + // For example: `metadata.field_1.number_value = 10.0` + // + // Each of the above supported filter types can be combined together using + // logical operators (`AND` & `OR`). + // + // For example: `display_name = "test" AND metadata.field1.bool_value = true`. + string filter = 3; +} diff --git a/google/cloud/aiplatform/v1/metadata_store.proto b/google/cloud/aiplatform/v1/metadata_store.proto new file mode 100644 index 000000000..e1b853de5 --- /dev/null +++ b/google/cloud/aiplatform/v1/metadata_store.proto @@ -0,0 +1,66 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/encryption_spec.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "MetadataProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Instance of a metadata store. Contains a set of metadata that can be +// queried. +message MetadataStore { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/MetadataStore" + pattern: "projects/{project}/locations/{location}/metadataStores/{metadata_store}" + }; + + // Represents state information for a MetadataStore. + message MetadataStoreState { + // The disk utilization of the MetadataStore in bytes. + int64 disk_utilization_bytes = 1; + } + + // Output only. The resource name of the MetadataStore instance. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this MetadataStore was created. + google.protobuf.Timestamp create_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this MetadataStore was last updated. + google.protobuf.Timestamp update_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Customer-managed encryption key spec for a Metadata Store. If set, this + // Metadata Store and all sub-resources of this Metadata Store are secured + // using this key. + EncryptionSpec encryption_spec = 5; + + // Description of the MetadataStore. + string description = 6; + + // Output only. State information of the MetadataStore. + MetadataStoreState state = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/cloud/aiplatform/v1/migratable_resource.proto b/google/cloud/aiplatform/v1/migratable_resource.proto index ca2918cff..09b4a21a0 100644 --- a/google/cloud/aiplatform/v1/migratable_resource.proto +++ b/google/cloud/aiplatform/v1/migratable_resource.proto @@ -21,10 +21,13 @@ import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "MigratableResourceProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; option (google.api.resource_definition) = { type: "ml.googleapis.com/Version" pattern: "projects/{project}/models/{model}/versions/{version}" diff --git a/google/cloud/aiplatform/v1/migration_service.proto b/google/cloud/aiplatform/v1/migration_service.proto index ccdbe39a4..0f87f47b4 100644 --- a/google/cloud/aiplatform/v1/migration_service.proto +++ b/google/cloud/aiplatform/v1/migration_service.proto @@ -27,10 +27,13 @@ import "google/cloud/aiplatform/v1/operation.proto"; import "google/longrunning/operations.proto"; import "google/rpc/status.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "MigrationServiceProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A service that migrates resources from automl.googleapis.com, // datalabeling.googleapis.com and ml.googleapis.com to Vertex AI. @@ -196,8 +199,8 @@ message MigrateResourceRequest { string dataset_display_name = 2 [(google.api.field_behavior) = REQUIRED]; } - // Config for migrating Dataset in datalabeling.googleapis.com to AI - // Platform's Dataset. + // Config for migrating Dataset in datalabeling.googleapis.com to Vertex + // AI's Dataset. message MigrateDataLabelingDatasetConfig { // Config for migrating AnnotatedDataset in datalabeling.googleapis.com to // Vertex AI's SavedQuery. diff --git a/google/cloud/aiplatform/v1/model.proto b/google/cloud/aiplatform/v1/model.proto index 1b8bcf5f9..3bcf0c40a 100644 --- a/google/cloud/aiplatform/v1/model.proto +++ b/google/cloud/aiplatform/v1/model.proto @@ -22,14 +22,19 @@ import "google/cloud/aiplatform/v1/dataset.proto"; import "google/cloud/aiplatform/v1/deployed_model_ref.proto"; import "google/cloud/aiplatform/v1/encryption_spec.proto"; import "google/cloud/aiplatform/v1/env_var.proto"; +import "google/cloud/aiplatform/v1/explanation.proto"; + import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ModelProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A trained machine learning Model. message Model { @@ -111,7 +116,7 @@ message Model { // The schemata that describe formats of the Model's predictions and // explanations as given and returned via - // [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict] and [PredictionService.Explain][]. + // [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict] and [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]. PredictSchemata predict_schemata = 4; // Immutable. Points to a YAML file stored on Google Cloud Storage describing additional @@ -135,7 +140,8 @@ message Model { // not available for export. repeated ExportFormat supported_export_formats = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. The resource name of the TrainingPipeline that uploaded this Model, if any. + // Output only. The resource name of the TrainingPipeline that uploaded this Model, if + // any. string training_pipeline = 7 [ (google.api.field_behavior) = OUTPUT_ONLY, (google.api.resource_reference) = { @@ -162,7 +168,7 @@ message Model { // configuration types are listed, the Model cannot be deployed to an // [Endpoint][google.cloud.aiplatform.v1.Endpoint] and does not support // online predictions ([PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict] or - // [PredictionService.Explain][]). Such a Model can serve predictions by + // [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]). Such a Model can serve predictions by // using a [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob], if it has at least one entry each in // [supported_input_storage_formats][google.cloud.aiplatform.v1.Model.supported_input_storage_formats] and // [supported_output_storage_formats][google.cloud.aiplatform.v1.Model.supported_output_storage_formats]. @@ -206,7 +212,7 @@ message Model { // used with a [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob]. However, if it has // [supported_deployment_resources_types][google.cloud.aiplatform.v1.Model.supported_deployment_resources_types], it could serve online // predictions by using [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict] or - // [PredictionService.Explain][]. + // [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]. repeated string supported_input_storage_formats = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The formats this Model supports in @@ -239,7 +245,7 @@ message Model { // used with a [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob]. However, if it has // [supported_deployment_resources_types][google.cloud.aiplatform.v1.Model.supported_deployment_resources_types], it could serve online // predictions by using [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict] or - // [PredictionService.Explain][]. + // [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]. repeated string supported_output_storage_formats = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Timestamp when this Model was uploaded into Vertex AI. @@ -252,6 +258,30 @@ message Model { // Model could have been deployed to Endpoints in different Locations. repeated DeployedModelRef deployed_models = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; + // The default explanation specification for this Model. + // + // The Model can be used for [requesting + // explanation][PredictionService.Explain] after being + // [deployed][google.cloud.aiplatform.v1.EndpointService.DeployModel] if it is populated. + // The Model can be used for [batch + // explanation][BatchPredictionJob.generate_explanation] if it is populated. + // + // All fields of the explanation_spec can be overridden by + // [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec] of + // [DeployModelRequest.deployed_model][google.cloud.aiplatform.v1.DeployModelRequest.deployed_model], or + // [explanation_spec][google.cloud.aiplatform.v1.BatchPredictionJob.explanation_spec] of + // [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob]. + // + // If the default explanation specification is not set for this Model, this + // Model can still be used for [requesting + // explanation][PredictionService.Explain] by setting + // [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec] of + // [DeployModelRequest.deployed_model][google.cloud.aiplatform.v1.DeployModelRequest.deployed_model] and for [batch + // explanation][BatchPredictionJob.generate_explanation] by setting + // [explanation_spec][google.cloud.aiplatform.v1.BatchPredictionJob.explanation_spec] of + // [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob]. + ExplanationSpec explanation_spec = 23; + // Used to perform consistent read-modify-write updates. If not set, a blind // "overwrite" update happens. string etag = 16; @@ -271,12 +301,12 @@ message Model { } // Contains the schemata used in Model's predictions and explanations via -// [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict], [PredictionService.Explain][] and +// [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict], [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain] and // [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob]. message PredictSchemata { // Immutable. Points to a YAML file stored on Google Cloud Storage describing the format // of a single instance, which are used in [PredictRequest.instances][google.cloud.aiplatform.v1.PredictRequest.instances], - // [ExplainRequest.instances][] and + // [ExplainRequest.instances][google.cloud.aiplatform.v1.ExplainRequest.instances] and // [BatchPredictionJob.input_config][google.cloud.aiplatform.v1.BatchPredictionJob.input_config]. // The schema is defined as an OpenAPI 3.0.2 [Schema // Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject). @@ -288,7 +318,7 @@ message PredictSchemata { // Immutable. Points to a YAML file stored on Google Cloud Storage describing the // parameters of prediction and explanation via - // [PredictRequest.parameters][google.cloud.aiplatform.v1.PredictRequest.parameters], [ExplainRequest.parameters][] and + // [PredictRequest.parameters][google.cloud.aiplatform.v1.PredictRequest.parameters], [ExplainRequest.parameters][google.cloud.aiplatform.v1.ExplainRequest.parameters] and // [BatchPredictionJob.model_parameters][google.cloud.aiplatform.v1.BatchPredictionJob.model_parameters]. // The schema is defined as an OpenAPI 3.0.2 [Schema // Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject). @@ -301,7 +331,7 @@ message PredictSchemata { // Immutable. Points to a YAML file stored on Google Cloud Storage describing the format // of a single prediction produced by this Model, which are returned via - // [PredictResponse.predictions][google.cloud.aiplatform.v1.PredictResponse.predictions], [ExplainResponse.explanations][], and + // [PredictResponse.predictions][google.cloud.aiplatform.v1.PredictResponse.predictions], [ExplainResponse.explanations][google.cloud.aiplatform.v1.ExplainResponse.explanations], and // [BatchPredictionJob.output_config][google.cloud.aiplatform.v1.BatchPredictionJob.output_config]. // The schema is defined as an OpenAPI 3.0.2 [Schema // Object](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.2.md#schemaObject). @@ -320,7 +350,7 @@ message ModelContainerSpec { // predictions. This URI must identify an image in Artifact Registry or // Container Registry. Learn more about the [container publishing // requirements](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#publishing), - // including permissions requirements for the AI Platform Service Agent. + // including permissions requirements for the Vertex AI Service Agent. // // The container image is ingested upon [ModelService.UploadModel][google.cloud.aiplatform.v1.ModelService.UploadModel], stored // internally, and this original path is afterwards not used. @@ -444,8 +474,8 @@ message ModelContainerSpec { repeated EnvVar env = 4 [(google.api.field_behavior) = IMMUTABLE]; // Immutable. List of ports to expose from the container. Vertex AI sends any - // prediction requests that it receives to the first port on this list. AI - // Platform also sends + // prediction requests that it receives to the first port on this list. Vertex + // AI also sends // [liveness and health // checks](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#liveness) // to this port. diff --git a/google/cloud/aiplatform/v1/model_deployment_monitoring_job.proto b/google/cloud/aiplatform/v1/model_deployment_monitoring_job.proto new file mode 100644 index 000000000..cb8db3e66 --- /dev/null +++ b/google/cloud/aiplatform/v1/model_deployment_monitoring_job.proto @@ -0,0 +1,289 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/encryption_spec.proto"; +import "google/cloud/aiplatform/v1/feature_monitoring_stats.proto"; +import "google/cloud/aiplatform/v1/io.proto"; +import "google/cloud/aiplatform/v1/job_state.proto"; +import "google/cloud/aiplatform/v1/model_monitoring.proto"; +import "google/protobuf/duration.proto"; +import "google/protobuf/struct.proto"; +import "google/protobuf/timestamp.proto"; +import "google/rpc/status.proto"; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "ModelDeploymentMonitoringJobProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// The Model Monitoring Objective types. +enum ModelDeploymentMonitoringObjectiveType { + // Default value, should not be set. + MODEL_DEPLOYMENT_MONITORING_OBJECTIVE_TYPE_UNSPECIFIED = 0; + + // Raw feature values' stats to detect skew between Training-Prediction + // datasets. + RAW_FEATURE_SKEW = 1; + + // Raw feature values' stats to detect drift between Serving-Prediction + // datasets. + RAW_FEATURE_DRIFT = 2; + + // Feature attribution scores to detect skew between Training-Prediction + // datasets. + FEATURE_ATTRIBUTION_SKEW = 3; + + // Feature attribution scores to detect skew between Prediction datasets + // collected within different time windows. + FEATURE_ATTRIBUTION_DRIFT = 4; +} + +// Represents a job that runs periodically to monitor the deployed models in an +// endpoint. It will analyze the logged training & prediction data to detect any +// abnormal behaviors. +message ModelDeploymentMonitoringJob { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/ModelDeploymentMonitoringJob" + pattern: "projects/{project}/locations/{location}/modelDeploymentMonitoringJobs/{model_deployment_monitoring_job}" + }; + + // The state to Specify the monitoring pipeline. + enum MonitoringScheduleState { + // Unspecified state. + MONITORING_SCHEDULE_STATE_UNSPECIFIED = 0; + + // The pipeline is picked up and wait to run. + PENDING = 1; + + // The pipeline is offline and will be scheduled for next run. + OFFLINE = 2; + + // The pipeline is running. + RUNNING = 3; + } + + // Output only. Resource name of a ModelDeploymentMonitoringJob. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The user-defined name of the ModelDeploymentMonitoringJob. + // The name can be up to 128 characters long and can be consist of any UTF-8 + // characters. + // Display name of a ModelDeploymentMonitoringJob. + string display_name = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Endpoint resource name. + // Format: `projects/{project}/locations/{location}/endpoints/{endpoint}` + string endpoint = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Endpoint" + } + ]; + + // Output only. The detailed state of the monitoring job. + // When the job is still creating, the state will be 'PENDING'. + // Once the job is successfully created, the state will be 'RUNNING'. + // Pause the job, the state will be 'PAUSED'. + // Resume the job, the state will return to 'RUNNING'. + JobState state = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Schedule state when the monitoring job is in Running state. + MonitoringScheduleState schedule_state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The config for monitoring objectives. This is a per DeployedModel config. + // Each DeployedModel needs to be configured separately. + repeated ModelDeploymentMonitoringObjectiveConfig model_deployment_monitoring_objective_configs = 6 [(google.api.field_behavior) = REQUIRED]; + + // Required. Schedule config for running the monitoring job. + ModelDeploymentMonitoringScheduleConfig model_deployment_monitoring_schedule_config = 7 [(google.api.field_behavior) = REQUIRED]; + + // Required. Sample Strategy for logging. + SamplingStrategy logging_sampling_strategy = 8 [(google.api.field_behavior) = REQUIRED]; + + // Alert config for model monitoring. + ModelMonitoringAlertConfig model_monitoring_alert_config = 15; + + // YAML schema file uri describing the format of a single instance, + // which are given to format this Endpoint's prediction (and explanation). + // If not set, we will generate predict schema from collected predict + // requests. + string predict_instance_schema_uri = 9; + + // Sample Predict instance, same format as [PredictRequest.instances][google.cloud.aiplatform.v1.PredictRequest.instances], + // this can be set as a replacement of + // [ModelDeploymentMonitoringJob.predict_instance_schema_uri][google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.predict_instance_schema_uri]. If not set, + // we will generate predict schema from collected predict requests. + google.protobuf.Value sample_predict_instance = 19; + + // YAML schema file uri describing the format of a single instance that you + // want Tensorflow Data Validation (TFDV) to analyze. + // + // If this field is empty, all the feature data types are inferred from + // [predict_instance_schema_uri][google.cloud.aiplatform.v1.ModelDeploymentMonitoringJob.predict_instance_schema_uri], + // meaning that TFDV will use the data in the exact format(data type) as + // prediction request/response. + // If there are any data type differences between predict instance and TFDV + // instance, this field can be used to override the schema. + // For models trained with Vertex AI, this field must be set as all the + // fields in predict instance formatted as string. + string analysis_instance_schema_uri = 16; + + // Output only. The created bigquery tables for the job under customer project. Customer + // could do their own query & analysis. There could be 4 log tables in + // maximum: + // 1. Training data logging predict request/response + // 2. Serving data logging predict request/response + repeated ModelDeploymentMonitoringBigQueryTable bigquery_tables = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The TTL of BigQuery tables in user projects which stores logs. + // A day is the basic unit of the TTL and we take the ceil of TTL/86400(a + // day). e.g. { second: 3600} indicates ttl = 1 day. + google.protobuf.Duration log_ttl = 17; + + // The labels with user-defined metadata to organize your + // ModelDeploymentMonitoringJob. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // + // See https://goo.gl/xmQnxf for more information and examples of labels. + map labels = 11; + + // Output only. Timestamp when this ModelDeploymentMonitoringJob was created. + google.protobuf.Timestamp create_time = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this ModelDeploymentMonitoringJob was updated most recently. + google.protobuf.Timestamp update_time = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this monitoring pipeline will be scheduled to run for the + // next round. + google.protobuf.Timestamp next_schedule_time = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Stats anomalies base folder path. + GcsDestination stats_anomalies_base_directory = 20; + + // Customer-managed encryption key spec for a ModelDeploymentMonitoringJob. If + // set, this ModelDeploymentMonitoringJob and all sub-resources of this + // ModelDeploymentMonitoringJob will be secured by this key. + EncryptionSpec encryption_spec = 21; + + // If true, the scheduled monitoring pipeline logs are sent to + // Google Cloud Logging, including pipeline status and anomalies detected. + // Please note the logs incur cost, which are subject to [Cloud Logging + // pricing](https://cloud.google.com/logging#pricing). + bool enable_monitoring_pipeline_logs = 22; + + // Output only. Only populated when the job's state is `JOB_STATE_FAILED` or + // `JOB_STATE_CANCELLED`. + google.rpc.Status error = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// ModelDeploymentMonitoringBigQueryTable specifies the BigQuery table name +// as well as some information of the logs stored in this table. +message ModelDeploymentMonitoringBigQueryTable { + // Indicates where does the log come from. + enum LogSource { + // Unspecified source. + LOG_SOURCE_UNSPECIFIED = 0; + + // Logs coming from Training dataset. + TRAINING = 1; + + // Logs coming from Serving traffic. + SERVING = 2; + } + + // Indicates what type of traffic does the log belong to. + enum LogType { + // Unspecified type. + LOG_TYPE_UNSPECIFIED = 0; + + // Predict logs. + PREDICT = 1; + + // Explain logs. + EXPLAIN = 2; + } + + // The source of log. + LogSource log_source = 1; + + // The type of log. + LogType log_type = 2; + + // The created BigQuery table to store logs. Customer could do their own query + // & analysis. Format: + // `bq://.model_deployment_monitoring_._` + string bigquery_table_path = 3; +} + +// ModelDeploymentMonitoringObjectiveConfig contains the pair of +// deployed_model_id to ModelMonitoringObjectiveConfig. +message ModelDeploymentMonitoringObjectiveConfig { + // The DeployedModel ID of the objective config. + string deployed_model_id = 1; + + // The objective config of for the modelmonitoring job of this deployed model. + ModelMonitoringObjectiveConfig objective_config = 2; +} + +// The config for scheduling monitoring job. +message ModelDeploymentMonitoringScheduleConfig { + // Required. The model monitoring job running interval. It will be rounded up to next + // full hour. + google.protobuf.Duration monitor_interval = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Statistics and anomalies generated by Model Monitoring. +message ModelMonitoringStatsAnomalies { + // Historical Stats (and Anomalies) for a specific Feature. + message FeatureHistoricStatsAnomalies { + // Display Name of the Feature. + string feature_display_name = 1; + + // Threshold for anomaly detection. + ThresholdConfig threshold = 3; + + // Stats calculated for the Training Dataset. + FeatureStatsAnomaly training_stats = 4; + + // A list of historical stats generated by different time window's + // Prediction Dataset. + repeated FeatureStatsAnomaly prediction_stats = 5; + } + + // Model Monitoring Objective those stats and anomalies belonging to. + ModelDeploymentMonitoringObjectiveType objective = 1; + + // Deployed Model ID. + string deployed_model_id = 2; + + // Number of anomalies within all stats. + int32 anomaly_count = 3; + + // A list of historical Stats and Anomalies generated for all Features. + repeated FeatureHistoricStatsAnomalies feature_stats = 4; +} diff --git a/google/cloud/aiplatform/v1/model_evaluation.proto b/google/cloud/aiplatform/v1/model_evaluation.proto index 402acd83e..28e4978e3 100644 --- a/google/cloud/aiplatform/v1/model_evaluation.proto +++ b/google/cloud/aiplatform/v1/model_evaluation.proto @@ -18,14 +18,18 @@ package google.cloud.aiplatform.v1; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/explanation.proto"; import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ModelEvaluationProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A collection of metrics calculated by comparing Model's predictions on all of // the test data against annotations from the test data. @@ -56,4 +60,10 @@ message ModelEvaluation { // [ModelService.ListModelEvaluationSlices][google.cloud.aiplatform.v1.ModelService.ListModelEvaluationSlices] request, in the form of // `slice.dimension = `. repeated string slice_dimensions = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Aggregated explanation metrics for the Model's prediction output over the + // data this ModelEvaluation uses. This field is populated only if the Model + // is evaluated with explanations, and only for AutoML tabular Models. + // + ModelExplanation model_explanation = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; } diff --git a/google/cloud/aiplatform/v1/model_evaluation_slice.proto b/google/cloud/aiplatform/v1/model_evaluation_slice.proto index 6fc6f9bdb..e79195e71 100644 --- a/google/cloud/aiplatform/v1/model_evaluation_slice.proto +++ b/google/cloud/aiplatform/v1/model_evaluation_slice.proto @@ -22,10 +22,13 @@ import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ModelEvaluationSliceProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A collection of metrics calculated by comparing Model's predictions on a // slice of the test data against ground truth annotations. diff --git a/google/cloud/aiplatform/v1/model_monitoring.proto b/google/cloud/aiplatform/v1/model_monitoring.proto new file mode 100644 index 000000000..05b456fff --- /dev/null +++ b/google/cloud/aiplatform/v1/model_monitoring.proto @@ -0,0 +1,203 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/io.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "ModelMonitoringProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Next ID: 6 +message ModelMonitoringObjectiveConfig { + // Training Dataset information. + message TrainingDataset { + oneof data_source { + // The resource name of the Dataset used to train this Model. + string dataset = 3 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Dataset" + }]; + + // The Google Cloud Storage uri of the unmanaged Dataset used to train + // this Model. + GcsSource gcs_source = 4; + + // The BigQuery table of the unmanaged Dataset used to train this + // Model. + BigQuerySource bigquery_source = 5; + } + + // Data format of the dataset, only applicable if the input is from + // Google Cloud Storage. + // The possible formats are: + // + // "tf-record" + // The source file is a TFRecord file. + // + // "csv" + // The source file is a CSV file. + string data_format = 2; + + // The target field name the model is to predict. + // This field will be excluded when doing Predict and (or) Explain for the + // training data. + string target_field = 6; + + // Strategy to sample data from Training Dataset. + // If not set, we process the whole dataset. + SamplingStrategy logging_sampling_strategy = 7; + } + + // The config for Training & Prediction data skew detection. It specifies the + // training dataset sources and the skew detection parameters. + message TrainingPredictionSkewDetectionConfig { + // Key is the feature name and value is the threshold. If a feature needs to + // be monitored for skew, a value threshold must be configured for that + // feature. The threshold here is against feature distribution distance + // between the training and prediction feature. + map skew_thresholds = 1; + + // Key is the feature name and value is the threshold. The threshold here is + // against attribution score distance between the training and prediction + // feature. + map attribution_score_skew_thresholds = 2; + } + + // The config for Prediction data drift detection. + message PredictionDriftDetectionConfig { + // Key is the feature name and value is the threshold. If a feature needs to + // be monitored for drift, a value threshold must be configured for that + // feature. The threshold here is against feature distribution distance + // between different time windws. + map drift_thresholds = 1; + + // Key is the feature name and value is the threshold. The threshold here is + // against attribution score distance between different time windows. + map attribution_score_drift_thresholds = 2; + } + + // The config for integrating with Vertex Explainable AI. Only applicable if + // the Model has explanation_spec populated. + message ExplanationConfig { + // Output from [BatchPredictionJob][google.cloud.aiplatform.v1.BatchPredictionJob] for Model Monitoring baseline dataset, + // which can be used to generate baseline attribution scores. + message ExplanationBaseline { + // The storage format of the predictions generated BatchPrediction job. + enum PredictionFormat { + // Should not be set. + PREDICTION_FORMAT_UNSPECIFIED = 0; + + // Predictions are in JSONL files. + JSONL = 2; + + // Predictions are in BigQuery. + BIGQUERY = 3; + } + + // The configuration specifying of BatchExplain job output. This can be + // used to generate the baseline of feature attribution scores. + oneof destination { + // Cloud Storage location for BatchExplain output. + GcsDestination gcs = 2; + + // BigQuery location for BatchExplain output. + BigQueryDestination bigquery = 3; + } + + // The storage format of the predictions generated BatchPrediction job. + PredictionFormat prediction_format = 1; + } + + // If want to analyze the Vertex Explainable AI feature attribute scores or + // not. If set to true, Vertex AI will log the feature attributions from + // explain response and do the skew/drift detection for them. + bool enable_feature_attributes = 1; + + // Predictions generated by the BatchPredictionJob using baseline dataset. + ExplanationBaseline explanation_baseline = 2; + } + + // Training dataset for models. This field has to be set only if + // TrainingPredictionSkewDetectionConfig is specified. + TrainingDataset training_dataset = 1; + + // The config for skew between training data and prediction data. + TrainingPredictionSkewDetectionConfig training_prediction_skew_detection_config = 2; + + // The config for drift of prediction data. + PredictionDriftDetectionConfig prediction_drift_detection_config = 3; + + // The config for integrating with Vertex Explainable AI. + ExplanationConfig explanation_config = 5; +} + +// Next ID: 3 +message ModelMonitoringAlertConfig { + // The config for email alert. + message EmailAlertConfig { + // The email addresses to send the alert. + repeated string user_emails = 1; + } + + oneof alert { + // Email alert config. + EmailAlertConfig email_alert_config = 1; + } + + // Dump the anomalies to Cloud Logging. The anomalies will be put to json + // payload encoded from proto + // [google.cloud.aiplatform.logging.ModelMonitoringAnomaliesLogEntry][]. + // This can be further sinked to Pub/Sub or any other services supported + // by Cloud Logging. + bool enable_logging = 2; +} + +// The config for feature monitoring threshold. +// Next ID: 3 +message ThresholdConfig { + oneof threshold { + // Specify a threshold value that can trigger the alert. + // If this threshold config is for feature distribution distance: + // 1. For categorical feature, the distribution distance is calculated by + // L-inifinity norm. + // 2. For numerical feature, the distribution distance is calculated by + // Jensen–Shannon divergence. + // Each feature must have a non-zero threshold if they need to be monitored. + // Otherwise no alert will be triggered for that feature. + double value = 1; + } +} + +// Sampling Strategy for logging, can be for both training and prediction +// dataset. +// Next ID: 2 +message SamplingStrategy { + // Requests are randomly selected. + message RandomSampleConfig { + // Sample rate (0, 1] + double sample_rate = 1; + } + + // Random sample config. Will support more sampling strategies later. + RandomSampleConfig random_sample_config = 1; +} diff --git a/google/cloud/aiplatform/v1/model_service.proto b/google/cloud/aiplatform/v1/model_service.proto index 93c9b79c0..807619d4f 100644 --- a/google/cloud/aiplatform/v1/model_service.proto +++ b/google/cloud/aiplatform/v1/model_service.proto @@ -28,10 +28,13 @@ import "google/cloud/aiplatform/v1/operation.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ModelServiceProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A service for managing Vertex AI's machine learning Models. service ModelService { @@ -77,8 +80,10 @@ service ModelService { } // Deletes a Model. - // Note: Model can only be deleted if there are no DeployedModels created - // from it. + // + // A model cannot be deleted if any [Endpoint][google.cloud.aiplatform.v1.Endpoint] resource has a + // [DeployedModel][google.cloud.aiplatform.v1.DeployedModel] based on the model in its + // [deployed_models][google.cloud.aiplatform.v1.Endpoint.deployed_models] field. rpc DeleteModel(DeleteModelRequest) returns (google.longrunning.Operation) { option (google.api.http) = { delete: "/v1/{name=projects/*/locations/*/models/*}" @@ -90,7 +95,7 @@ service ModelService { }; } - // Exports a trained, exportable, Model to a location specified by the + // Exports a trained, exportable Model to a location specified by the // user. A Model is considered to be exportable if it has at least one // [supported export format][google.cloud.aiplatform.v1.Model.supported_export_formats]. rpc ExportModel(ExportModelRequest) returns (google.longrunning.Operation) { @@ -291,7 +296,6 @@ message ExportModelRequest { } // Required. The resource name of the Model to export. - // Format: `projects/{project}/locations/{location}/models/{model}` string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { diff --git a/google/cloud/aiplatform/v1/operation.proto b/google/cloud/aiplatform/v1/operation.proto index 0b775ad48..ee33b41aa 100644 --- a/google/cloud/aiplatform/v1/operation.proto +++ b/google/cloud/aiplatform/v1/operation.proto @@ -21,10 +21,13 @@ import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "OperationProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Generic Metadata shared by all operations. message GenericOperationMetadata { diff --git a/google/cloud/aiplatform/v1/pipeline_job.proto b/google/cloud/aiplatform/v1/pipeline_job.proto new file mode 100644 index 000000000..193c829bc --- /dev/null +++ b/google/cloud/aiplatform/v1/pipeline_job.proto @@ -0,0 +1,320 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/artifact.proto"; +import "google/cloud/aiplatform/v1/context.proto"; +import "google/cloud/aiplatform/v1/encryption_spec.proto"; +import "google/cloud/aiplatform/v1/execution.proto"; +import "google/cloud/aiplatform/v1/pipeline_state.proto"; +import "google/cloud/aiplatform/v1/value.proto"; +import "google/protobuf/struct.proto"; +import "google/protobuf/timestamp.proto"; +import "google/rpc/status.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "Pipeline"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; +option (google.api.resource_definition) = { + type: "compute.googleapis.com/Network" + pattern: "projects/{project}/global/networks/{network}" +}; + +// An instance of a machine learning PipelineJob. +message PipelineJob { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/PipelineJob" + pattern: "projects/{project}/locations/{location}/pipelineJobs/{pipeline_job}" + }; + + // The runtime config of a PipelineJob. + message RuntimeConfig { + // Deprecated. Use [RuntimeConfig.parameter_values][google.cloud.aiplatform.v1.PipelineJob.RuntimeConfig.parameter_values] instead. The runtime + // parameters of the PipelineJob. The parameters will be passed into + // [PipelineJob.pipeline_spec][google.cloud.aiplatform.v1.PipelineJob.pipeline_spec] to replace the placeholders at runtime. + // This field is used by pipelines built using + // `PipelineJob.pipeline_spec.schema_version` 2.0.0 or lower, such as + // pipelines built using Kubeflow Pipelines SDK 1.8 or lower. + map parameters = 1 [deprecated = true]; + + // Required. A path in a Cloud Storage bucket, which will be treated as the root + // output directory of the pipeline. It is used by the system to + // generate the paths of output artifacts. The artifact paths are generated + // with a sub-path pattern `{job_id}/{task_id}/{output_key}` under the + // specified output directory. The service account specified in this + // pipeline must have the `storage.objects.get` and `storage.objects.create` + // permissions for this bucket. + string gcs_output_directory = 2 [(google.api.field_behavior) = REQUIRED]; + + // The runtime parameters of the PipelineJob. The parameters will be + // passed into [PipelineJob.pipeline_spec][google.cloud.aiplatform.v1.PipelineJob.pipeline_spec] to replace the placeholders + // at runtime. This field is used by pipelines built using + // `PipelineJob.pipeline_spec.schema_version` 2.1.0, such as pipelines built + // using Kubeflow Pipelines SDK 1.9 or higher and the v2 DSL. + map parameter_values = 3; + } + + // Output only. The resource name of the PipelineJob. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The display name of the Pipeline. + // The name can be up to 128 characters long and can be consist of any UTF-8 + // characters. + string display_name = 2; + + // Output only. Pipeline creation time. + google.protobuf.Timestamp create_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Pipeline start time. + google.protobuf.Timestamp start_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Pipeline end time. + google.protobuf.Timestamp end_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this PipelineJob was most recently updated. + google.protobuf.Timestamp update_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The spec of the pipeline. + google.protobuf.Struct pipeline_spec = 7 [(google.api.field_behavior) = REQUIRED]; + + // Output only. The detailed state of the job. + PipelineState state = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The details of pipeline run. Not available in the list view. + PipelineJobDetail job_detail = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The error that occurred during pipeline execution. + // Only populated when the pipeline's state is FAILED or CANCELLED. + google.rpc.Status error = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The labels with user-defined metadata to organize PipelineJob. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // + // See https://goo.gl/xmQnxf for more information and examples of labels. + map labels = 11; + + // Runtime config of the pipeline. + RuntimeConfig runtime_config = 12; + + // Customer-managed encryption key spec for a pipelineJob. If set, this + // PipelineJob and all of its sub-resources will be secured by this key. + EncryptionSpec encryption_spec = 16; + + // The service account that the pipeline workload runs as. + // If not specified, the Compute Engine default service account in the project + // will be used. + // See + // https://cloud.google.com/compute/docs/access/service-accounts#default_service_account + // + // Users starting the pipeline must have the `iam.serviceAccounts.actAs` + // permission on this service account. + string service_account = 17; + + // The full name of the Compute Engine + // [network](/compute/docs/networks-and-firewalls#networks) to which the + // Pipeline Job's workload should be peered. For example, + // `projects/12345/global/networks/myVPC`. + // [Format](/compute/docs/reference/rest/v1/networks/insert) + // is of the form `projects/{project}/global/networks/{network}`. + // Where {project} is a project number, as in `12345`, and {network} is a + // network name. + // + // Private services access must already be configured for the network. + // Pipeline job will apply the network configuration to the GCP resources + // being launched, if applied, such as Vertex AI + // Training or Dataflow job. If left unspecified, the workload is not peered + // with any network. + string network = 18 [(google.api.resource_reference) = { + type: "compute.googleapis.com/Network" + }]; +} + +// The runtime detail of PipelineJob. +message PipelineJobDetail { + // Output only. The context of the pipeline. + Context pipeline_context = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The context of the current pipeline run. + Context pipeline_run_context = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The runtime details of the tasks under the pipeline. + repeated PipelineTaskDetail task_details = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// The runtime detail of a task execution. +message PipelineTaskDetail { + // A single record of the task status. + message PipelineTaskStatus { + // Output only. Update time of this status. + google.protobuf.Timestamp update_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The state of the task. + State state = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The error that occurred during the state. May be set when the state is + // any of the non-final state (PENDING/RUNNING/CANCELLING) or FAILED state. + // If the state is FAILED, the error here is final and not going to be + // retried. + // If the state is a non-final state, the error indicates a system-error + // being retried. + google.rpc.Status error = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // A list of artifact metadata. + message ArtifactList { + // Output only. A list of artifact metadata. + repeated Artifact artifacts = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Specifies state of TaskExecution + enum State { + // Unspecified. + STATE_UNSPECIFIED = 0; + + // Specifies pending state for the task. + PENDING = 1; + + // Specifies task is being executed. + RUNNING = 2; + + // Specifies task completed successfully. + SUCCEEDED = 3; + + // Specifies Task cancel is in pending state. + CANCEL_PENDING = 4; + + // Specifies task is being cancelled. + CANCELLING = 5; + + // Specifies task was cancelled. + CANCELLED = 6; + + // Specifies task failed. + FAILED = 7; + + // Specifies task was skipped due to cache hit. + SKIPPED = 8; + + // Specifies that the task was not triggered because the task's trigger + // policy is not satisfied. The trigger policy is specified in the + // `condition` field of [PipelineJob.pipeline_spec][google.cloud.aiplatform.v1.PipelineJob.pipeline_spec]. + NOT_TRIGGERED = 9; + } + + // Output only. The system generated ID of the task. + int64 task_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The id of the parent task if the task is within a component scope. + // Empty if the task is at the root level. + int64 parent_task_id = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The user specified name of the task that is defined in + // [PipelineJob.spec][]. + string task_name = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Task create time. + google.protobuf.Timestamp create_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Task start time. + google.protobuf.Timestamp start_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Task end time. + google.protobuf.Timestamp end_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The detailed execution info. + PipelineTaskExecutorDetail executor_detail = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. State of the task. + State state = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The execution metadata of the task. + Execution execution = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The error that occurred during task execution. + // Only populated when the task's state is FAILED or CANCELLED. + google.rpc.Status error = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A list of task status. This field keeps a record of task status evolving + // over time. + repeated PipelineTaskStatus pipeline_task_status = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The runtime input artifacts of the task. + map inputs = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The runtime output artifacts of the task. + map outputs = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// The runtime detail of a pipeline executor. +message PipelineTaskExecutorDetail { + // The detail of a container execution. It contains the job names of the + // lifecycle of a container execution. + message ContainerDetail { + // Output only. The name of the [CustomJob][google.cloud.aiplatform.v1.CustomJob] for the main container execution. + string main_job = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/CustomJob" + } + ]; + + // Output only. The name of the [CustomJob][google.cloud.aiplatform.v1.CustomJob] for the pre-caching-check container + // execution. This job will be available if the + // [PipelineJob.pipeline_spec][google.cloud.aiplatform.v1.PipelineJob.pipeline_spec] specifies the `pre_caching_check` hook in + // the lifecycle events. + string pre_caching_check_job = 2 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/CustomJob" + } + ]; + } + + // The detailed info for a custom job executor. + message CustomJobDetail { + option deprecated = true; + + // Output only. The name of the [CustomJob][google.cloud.aiplatform.v1.CustomJob]. + string job = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/CustomJob" + } + ]; + } + + oneof details { + // Output only. The detailed info for a container executor. + ContainerDetail container_detail = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The detailed info for a custom job executor. + CustomJobDetail custom_job_detail = 2 [ + deprecated = true, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + } +} diff --git a/google/cloud/aiplatform/v1/pipeline_service.proto b/google/cloud/aiplatform/v1/pipeline_service.proto index 33807e82d..24b29edb1 100644 --- a/google/cloud/aiplatform/v1/pipeline_service.proto +++ b/google/cloud/aiplatform/v1/pipeline_service.proto @@ -20,19 +20,23 @@ import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/pipeline_job.proto"; import "google/cloud/aiplatform/v1/training_pipeline.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "PipelineServiceProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A service for creating and managing Vertex AI's pipelines. This includes both // `TrainingPipeline` resources (used for AutoML and custom training) and -// `PipelineJob` resources (used for Vertex Pipelines). +// `PipelineJob` resources (used for Vertex AI Pipelines). service PipelineService { option (google.api.default_host) = "aiplatform.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; @@ -92,6 +96,61 @@ service PipelineService { }; option (google.api.method_signature) = "name"; } + + // Creates a PipelineJob. A PipelineJob will run immediately when created. + rpc CreatePipelineJob(CreatePipelineJobRequest) returns (PipelineJob) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/pipelineJobs" + body: "pipeline_job" + }; + option (google.api.method_signature) = "parent,pipeline_job,pipeline_job_id"; + } + + // Gets a PipelineJob. + rpc GetPipelineJob(GetPipelineJobRequest) returns (PipelineJob) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/pipelineJobs/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists PipelineJobs in a Location. + rpc ListPipelineJobs(ListPipelineJobsRequest) returns (ListPipelineJobsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/pipelineJobs" + }; + option (google.api.method_signature) = "parent"; + } + + // Deletes a PipelineJob. + rpc DeletePipelineJob(DeletePipelineJobRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/pipelineJobs/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Cancels a PipelineJob. + // Starts asynchronous cancellation on the PipelineJob. The server + // makes a best effort to cancel the pipeline, but success is not + // guaranteed. Clients can use [PipelineService.GetPipelineJob][google.cloud.aiplatform.v1.PipelineService.GetPipelineJob] or + // other methods to check whether the cancellation succeeded or whether the + // pipeline completed despite cancellation. On successful cancellation, + // the PipelineJob is not deleted; instead it becomes a pipeline with + // a [PipelineJob.error][google.cloud.aiplatform.v1.PipelineJob.error] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`, and [PipelineJob.state][google.cloud.aiplatform.v1.PipelineJob.state] is set to + // `CANCELLED`. + rpc CancelPipelineJob(CancelPipelineJobRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*/pipelineJobs/*}:cancel" + body: "*" + }; + option (google.api.method_signature) = "name"; + } } // Request message for [PipelineService.CreateTrainingPipeline][google.cloud.aiplatform.v1.PipelineService.CreateTrainingPipeline]. @@ -199,3 +258,143 @@ message CancelTrainingPipelineRequest { } ]; } + +// Request message for [PipelineService.CreatePipelineJob][google.cloud.aiplatform.v1.PipelineService.CreatePipelineJob]. +message CreatePipelineJobRequest { + // Required. The resource name of the Location to create the PipelineJob in. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The PipelineJob to create. + PipelineJob pipeline_job = 2 [(google.api.field_behavior) = REQUIRED]; + + // The ID to use for the PipelineJob, which will become the final component of + // the PipelineJob name. If not provided, an ID will be automatically + // generated. + // + // This value should be less than 128 characters, and valid characters + // are /[a-z][0-9]-/. + string pipeline_job_id = 3; +} + +// Request message for [PipelineService.GetPipelineJob][google.cloud.aiplatform.v1.PipelineService.GetPipelineJob]. +message GetPipelineJobRequest { + // Required. The name of the PipelineJob resource. + // Format: + // `projects/{project}/locations/{location}/pipelineJobs/{pipeline_job}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/PipelineJob" + } + ]; +} + +// Request message for [PipelineService.ListPipelineJobs][google.cloud.aiplatform.v1.PipelineService.ListPipelineJobs]. +message ListPipelineJobsRequest { + // Required. The resource name of the Location to list the PipelineJobs from. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Lists the PipelineJobs that match the filter expression. The following + // fields are supported: + // + // * `pipeline_name`: Supports `=` and `!=` comparisons. + // * `display_name`: Supports `=`, `!=` comparisons, and `:` wildcard. + // * `pipeline_job_user_id`: Supports `=`, `!=` comparisons, and `:` wildcard. + // for example, can check if pipeline's display_name contains *step* by doing + // display_name:\"*step*\" + // * `state`: Supports `=` and `!=` comparisons. + // * `create_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. + // Values must be in RFC 3339 format. + // * `update_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. + // Values must be in RFC 3339 format. + // * `end_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. + // Values must be in RFC 3339 format. + // * `labels`: Supports key-value equality and key presence. + // + // Filter expressions can be combined together using logical operators + // (`AND` & `OR`). + // For example: `pipeline_name="test" AND create_time>"2020-05-18T13:30:00Z"`. + // + // The syntax to define filter expression is based on + // https://google.aip.dev/160. + // + // Examples: + // + // * `create_time>"2021-05-18T00:00:00Z" OR + // update_time>"2020-05-18T00:00:00Z"` PipelineJobs created or updated + // after 2020-05-18 00:00:00 UTC. + // * `labels.env = "prod"` + // PipelineJobs with label "env" set to "prod". + string filter = 2; + + // The standard list page size. + int32 page_size = 3; + + // The standard list page token. + // Typically obtained via + // [ListPipelineJobsResponse.next_page_token][google.cloud.aiplatform.v1.ListPipelineJobsResponse.next_page_token] of the previous + // [PipelineService.ListPipelineJobs][google.cloud.aiplatform.v1.PipelineService.ListPipelineJobs] call. + string page_token = 4; + + // A comma-separated list of fields to order by. The default sort order is in + // ascending order. Use "desc" after a field name for descending. You can have + // multiple order_by fields provided e.g. "create_time desc, end_time", + // "end_time, start_time, update_time" For example, using "create_time desc, + // end_time" will order results by create time in descending order, and if + // there are multiple jobs having the same create time, order them by the end + // time in ascending order. if order_by is not specified, it will order by + // default order is create time in descending order. Supported fields: + // * `create_time` + // * `update_time` + // * `end_time` + // * `start_time` + string order_by = 6; +} + +// Response message for [PipelineService.ListPipelineJobs][google.cloud.aiplatform.v1.PipelineService.ListPipelineJobs] +message ListPipelineJobsResponse { + // List of PipelineJobs in the requested page. + repeated PipelineJob pipeline_jobs = 1; + + // A token to retrieve the next page of results. + // Pass to [ListPipelineJobsRequest.page_token][google.cloud.aiplatform.v1.ListPipelineJobsRequest.page_token] to obtain that page. + string next_page_token = 2; +} + +// Request message for [PipelineService.DeletePipelineJob][google.cloud.aiplatform.v1.PipelineService.DeletePipelineJob]. +message DeletePipelineJobRequest { + // Required. The name of the PipelineJob resource to be deleted. + // Format: + // `projects/{project}/locations/{location}/pipelineJobs/{pipeline_job}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/PipelineJob" + } + ]; +} + +// Request message for [PipelineService.CancelPipelineJob][google.cloud.aiplatform.v1.PipelineService.CancelPipelineJob]. +message CancelPipelineJobRequest { + // Required. The name of the PipelineJob to cancel. + // Format: + // `projects/{project}/locations/{location}/pipelineJobs/{pipeline_job}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/PipelineJob" + } + ]; +} diff --git a/google/cloud/aiplatform/v1/pipeline_state.proto b/google/cloud/aiplatform/v1/pipeline_state.proto index 1f0565acb..71a165d7e 100644 --- a/google/cloud/aiplatform/v1/pipeline_state.proto +++ b/google/cloud/aiplatform/v1/pipeline_state.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "PipelineStateProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // Describes the state of a pipeline. enum PipelineState { diff --git a/google/cloud/aiplatform/v1/prediction_service.proto b/google/cloud/aiplatform/v1/prediction_service.proto index e8cdad763..6c69e3cce 100644 --- a/google/cloud/aiplatform/v1/prediction_service.proto +++ b/google/cloud/aiplatform/v1/prediction_service.proto @@ -19,13 +19,18 @@ package google.cloud.aiplatform.v1; import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; +import "google/api/httpbody.proto"; import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/explanation.proto"; import "google/protobuf/struct.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "PredictionServiceProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A service for online predictions and explanations. service PredictionService { @@ -40,6 +45,41 @@ service PredictionService { }; option (google.api.method_signature) = "endpoint,instances,parameters"; } + + // Perform an online prediction with an arbitrary HTTP payload. + // + // The response includes the following HTTP headers: + // + // * `X-Vertex-AI-Endpoint-Id`: ID of the [Endpoint][google.cloud.aiplatform.v1.Endpoint] that served this + // prediction. + // + // * `X-Vertex-AI-Deployed-Model-Id`: ID of the Endpoint's [DeployedModel][google.cloud.aiplatform.v1.DeployedModel] + // that served this prediction. + rpc RawPredict(RawPredictRequest) returns (google.api.HttpBody) { + option (google.api.http) = { + post: "/v1/{endpoint=projects/*/locations/*/endpoints/*}:rawPredict" + body: "*" + }; + option (google.api.method_signature) = "endpoint,http_body"; + } + + // Perform an online explanation. + // + // If [deployed_model_id][google.cloud.aiplatform.v1.ExplainRequest.deployed_model_id] is specified, + // the corresponding DeployModel must have + // [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec] + // populated. If [deployed_model_id][google.cloud.aiplatform.v1.ExplainRequest.deployed_model_id] + // is not specified, all DeployedModels must have + // [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec] + // populated. Only deployed AutoML tabular Models have + // explanation_spec. + rpc Explain(ExplainRequest) returns (ExplainResponse) { + option (google.api.http) = { + post: "/v1/{endpoint=projects/*/locations/*/endpoints/*}:explain" + body: "*" + }; + option (google.api.method_signature) = "endpoint,instances,parameters,deployed_model_id"; + } } // Request message for [PredictionService.Predict][google.cloud.aiplatform.v1.PredictionService.Predict]. @@ -83,4 +123,105 @@ message PredictResponse { // ID of the Endpoint's DeployedModel that served this prediction. string deployed_model_id = 2; + + // Output only. The resource name of the Model which is deployed as the DeployedModel that + // this prediction hits. + string model = 3 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Model" + } + ]; + + // Output only. The [display name][google.cloud.aiplatform.v1.Model.display_name] of the Model which is deployed as + // the DeployedModel that this prediction hits. + string model_display_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Request message for [PredictionService.RawPredict][google.cloud.aiplatform.v1.PredictionService.RawPredict]. +message RawPredictRequest { + // Required. The name of the Endpoint requested to serve the prediction. + // Format: + // `projects/{project}/locations/{location}/endpoints/{endpoint}` + string endpoint = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Endpoint" + } + ]; + + // The prediction input. Supports HTTP headers and arbitrary data payload. + // + // A [DeployedModel][google.cloud.aiplatform.v1.DeployedModel] may have an upper limit on the number of instances it + // supports per request. When this limit it is exceeded for an AutoML model, + // the [RawPredict][google.cloud.aiplatform.v1.PredictionService.RawPredict] method returns an error. + // When this limit is exceeded for a custom-trained model, the behavior varies + // depending on the model. + // + // You can specify the schema for each instance in the + // [predict_schemata.instance_schema_uri][google.cloud.aiplatform.v1.PredictSchemata.instance_schema_uri] + // field when you create a [Model][google.cloud.aiplatform.v1.Model]. This schema applies when you deploy the + // `Model` as a `DeployedModel` to an [Endpoint][google.cloud.aiplatform.v1.Endpoint] and use the `RawPredict` + // method. + google.api.HttpBody http_body = 2; +} + +// Request message for [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]. +message ExplainRequest { + // Required. The name of the Endpoint requested to serve the explanation. + // Format: + // `projects/{project}/locations/{location}/endpoints/{endpoint}` + string endpoint = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Endpoint" + } + ]; + + // Required. The instances that are the input to the explanation call. + // A DeployedModel may have an upper limit on the number of instances it + // supports per request, and when it is exceeded the explanation call errors + // in case of AutoML Models, or, in case of customer created Models, the + // behaviour is as documented by that Model. + // The schema of any single instance may be specified via Endpoint's + // DeployedModels' [Model's][google.cloud.aiplatform.v1.DeployedModel.model] + // [PredictSchemata's][google.cloud.aiplatform.v1.Model.predict_schemata] + // [instance_schema_uri][google.cloud.aiplatform.v1.PredictSchemata.instance_schema_uri]. + repeated google.protobuf.Value instances = 2 [(google.api.field_behavior) = REQUIRED]; + + // The parameters that govern the prediction. The schema of the parameters may + // be specified via Endpoint's DeployedModels' [Model's ][google.cloud.aiplatform.v1.DeployedModel.model] + // [PredictSchemata's][google.cloud.aiplatform.v1.Model.predict_schemata] + // [parameters_schema_uri][google.cloud.aiplatform.v1.PredictSchemata.parameters_schema_uri]. + google.protobuf.Value parameters = 4; + + // If specified, overrides the + // [explanation_spec][google.cloud.aiplatform.v1.DeployedModel.explanation_spec] of the DeployedModel. + // Can be used for explaining prediction results with different + // configurations, such as: + // - Explaining top-5 predictions results as opposed to top-1; + // - Increasing path count or step count of the attribution methods to reduce + // approximate errors; + // - Using different baselines for explaining the prediction results. + ExplanationSpecOverride explanation_spec_override = 5; + + // If specified, this ExplainRequest will be served by the chosen + // DeployedModel, overriding [Endpoint.traffic_split][google.cloud.aiplatform.v1.Endpoint.traffic_split]. + string deployed_model_id = 3; +} + +// Response message for [PredictionService.Explain][google.cloud.aiplatform.v1.PredictionService.Explain]. +message ExplainResponse { + // The explanations of the Model's [PredictResponse.predictions][google.cloud.aiplatform.v1.PredictResponse.predictions]. + // + // It has the same number of elements as [instances][google.cloud.aiplatform.v1.ExplainRequest.instances] + // to be explained. + repeated Explanation explanations = 1; + + // ID of the Endpoint's DeployedModel that served this explanation. + string deployed_model_id = 2; + + // The predictions that are the output of the predictions call. + // Same as [PredictResponse.predictions][google.cloud.aiplatform.v1.PredictResponse.predictions]. + repeated google.protobuf.Value predictions = 3; } diff --git a/google/cloud/aiplatform/v1/schema/aiplatform_v1.yaml b/google/cloud/aiplatform/v1/schema/aiplatform_v1.yaml index d73d4f58e..0e359c538 100644 --- a/google/cloud/aiplatform/v1/schema/aiplatform_v1.yaml +++ b/google/cloud/aiplatform/v1/schema/aiplatform_v1.yaml @@ -1,7 +1,7 @@ type: google.api.Service config_version: 3 name: aiplatform.googleapis.com -title: Cloud AI Platform API +title: Vertex AI API types: - name: google.cloud.aiplatform.v1.schema.predict.instance.ImageClassificationPredictionInstance @@ -64,10 +64,10 @@ documentation: Train high-quality custom machine learning models with minimal machine learning expertise and effort. overview: |- - AI Platform (Unified) enables data scientists, developers, and AI newcomers - to create custom machine learning models specific to their business needs - by leveraging Google's state-of-the-art transfer learning and innovative - AI research. + Vertex AI enables data scientists, developers, and AI newcomers to create + custom machine learning models specific to their business needs by + leveraging Google's state-of-the-art transfer learning and innovative AI + research. rules: - selector: google.cloud.location.Locations.GetLocation description: Gets information about a location. @@ -115,6 +115,7 @@ http: - post: '/ui/{name=projects/*/locations/*/migratableResources/*/operations/*}:cancel' - post: '/ui/{name=projects/*/locations/*/models/*/operations/*}:cancel' - post: '/ui/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/studies/*/operations/*}:cancel' - post: '/ui/{name=projects/*/locations/*/studies/*/trials/*/operations/*}:cancel' - post: '/ui/{name=projects/*/locations/*/trainingPipelines/*/operations/*}:cancel' - post: '/ui/{name=projects/*/locations/*/pipelineJobs/*/operations/*}:cancel' @@ -142,6 +143,7 @@ http: - post: '/v1/{name=projects/*/locations/*/migratableResources/*/operations/*}:cancel' - post: '/v1/{name=projects/*/locations/*/models/*/operations/*}:cancel' - post: '/v1/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}:cancel' + - post: '/v1/{name=projects/*/locations/*/studies/*/operations/*}:cancel' - post: '/v1/{name=projects/*/locations/*/studies/*/trials/*/operations/*}:cancel' - post: '/v1/{name=projects/*/locations/*/trainingPipelines/*/operations/*}:cancel' - post: '/v1/{name=projects/*/locations/*/pipelineJobs/*/operations/*}:cancel' @@ -171,6 +173,7 @@ http: - delete: '/ui/{name=projects/*/locations/*/migratableResources/*/operations/*}' - delete: '/ui/{name=projects/*/locations/*/models/*/operations/*}' - delete: '/ui/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/studies/*/operations/*}' - delete: '/ui/{name=projects/*/locations/*/studies/*/trials/*/operations/*}' - delete: '/ui/{name=projects/*/locations/*/trainingPipelines/*/operations/*}' - delete: '/ui/{name=projects/*/locations/*/pipelineJobs/*/operations/*}' @@ -198,6 +201,7 @@ http: - delete: '/v1/{name=projects/*/locations/*/migratableResources/*/operations/*}' - delete: '/v1/{name=projects/*/locations/*/models/*/operations/*}' - delete: '/v1/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}' + - delete: '/v1/{name=projects/*/locations/*/studies/*/operations/*}' - delete: '/v1/{name=projects/*/locations/*/studies/*/trials/*/operations/*}' - delete: '/v1/{name=projects/*/locations/*/trainingPipelines/*/operations/*}' - delete: '/v1/{name=projects/*/locations/*/pipelineJobs/*/operations/*}' @@ -227,6 +231,7 @@ http: - get: '/ui/{name=projects/*/locations/*/migratableResources/*/operations/*}' - get: '/ui/{name=projects/*/locations/*/models/*/operations/*}' - get: '/ui/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/studies/*/operations/*}' - get: '/ui/{name=projects/*/locations/*/studies/*/trials/*/operations/*}' - get: '/ui/{name=projects/*/locations/*/trainingPipelines/*/operations/*}' - get: '/ui/{name=projects/*/locations/*/pipelineJobs/*/operations/*}' @@ -254,6 +259,7 @@ http: - get: '/v1/{name=projects/*/locations/*/migratableResources/*/operations/*}' - get: '/v1/{name=projects/*/locations/*/models/*/operations/*}' - get: '/v1/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}' + - get: '/v1/{name=projects/*/locations/*/studies/*/operations/*}' - get: '/v1/{name=projects/*/locations/*/studies/*/trials/*/operations/*}' - get: '/v1/{name=projects/*/locations/*/trainingPipelines/*/operations/*}' - get: '/v1/{name=projects/*/locations/*/pipelineJobs/*/operations/*}' @@ -283,6 +289,7 @@ http: - get: '/ui/{name=projects/*/locations/*/migratableResources/*}/operations' - get: '/ui/{name=projects/*/locations/*/models/*}/operations' - get: '/ui/{name=projects/*/locations/*/models/*/evaluations/*}/operations' + - get: '/ui/{name=projects/*/locations/*/studies/*}/operations' - get: '/ui/{name=projects/*/locations/*/studies/*/trials/*}/operations' - get: '/ui/{name=projects/*/locations/*/trainingPipelines/*}/operations' - get: '/ui/{name=projects/*/locations/*/pipelineJobs/*}/operations' @@ -310,6 +317,7 @@ http: - get: '/v1/{name=projects/*/locations/*/migratableResources/*}/operations' - get: '/v1/{name=projects/*/locations/*/models/*}/operations' - get: '/v1/{name=projects/*/locations/*/models/*/evaluations/*}/operations' + - get: '/v1/{name=projects/*/locations/*/studies/*}/operations' - get: '/v1/{name=projects/*/locations/*/studies/*/trials/*}/operations' - get: '/v1/{name=projects/*/locations/*/trainingPipelines/*}/operations' - get: '/v1/{name=projects/*/locations/*/pipelineJobs/*}/operations' @@ -339,6 +347,7 @@ http: - post: '/ui/{name=projects/*/locations/*/migratableResources/*/operations/*}:wait' - post: '/ui/{name=projects/*/locations/*/models/*/operations/*}:wait' - post: '/ui/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/studies/*/operations/*}:wait' - post: '/ui/{name=projects/*/locations/*/studies/*/trials/*/operations/*}:wait' - post: '/ui/{name=projects/*/locations/*/trainingPipelines/*/operations/*}:wait' - post: '/ui/{name=projects/*/locations/*/pipelineJobs/*/operations/*}:wait' @@ -366,6 +375,7 @@ http: - post: '/v1/{name=projects/*/locations/*/migratableResources/*/operations/*}:wait' - post: '/v1/{name=projects/*/locations/*/models/*/operations/*}:wait' - post: '/v1/{name=projects/*/locations/*/models/*/evaluations/*/operations/*}:wait' + - post: '/v1/{name=projects/*/locations/*/studies/*/operations/*}:wait' - post: '/v1/{name=projects/*/locations/*/studies/*/trials/*/operations/*}:wait' - post: '/v1/{name=projects/*/locations/*/trainingPipelines/*/operations/*}:wait' - post: '/v1/{name=projects/*/locations/*/pipelineJobs/*/operations/*}:wait' diff --git a/google/cloud/aiplatform/v1/schema/predict/instance/BUILD.bazel b/google/cloud/aiplatform/v1/schema/predict/instance/BUILD.bazel index 93e67bb33..0f906d45b 100644 --- a/google/cloud/aiplatform/v1/schema/predict/instance/BUILD.bazel +++ b/google/cloud/aiplatform/v1/schema/predict/instance/BUILD.bazel @@ -86,7 +86,6 @@ moved_proto_library( py_proto_library( name = "instance_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":instance_moved_proto"], ) @@ -115,12 +114,11 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -186,4 +184,20 @@ csharp_grpc_library( ############################################################################## # C++ ############################################################################## -# Put your C++ code here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "instance_cc_proto", + deps = [":instance_proto"], +) + +cc_grpc_library( + name = "instance_cc_grpc", + srcs = [":instance_proto"], + grpc_only = True, + deps = [":instance_cc_proto"], +) diff --git a/google/cloud/aiplatform/v1/schema/predict/instance/image_classification.proto b/google/cloud/aiplatform/v1/schema/predict/instance/image_classification.proto index 6edde6ea9..752227950 100644 --- a/google/cloud/aiplatform/v1/schema/predict/instance/image_classification.proto +++ b/google/cloud/aiplatform/v1/schema/predict/instance/image_classification.proto @@ -18,14 +18,17 @@ package google.cloud.aiplatform.v1.schema.predict.instance; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Instance"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/instance;instance"; option java_multiple_files = true; option java_outer_classname = "ImageClassificationPredictionInstanceProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.instance"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Instance"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Instance"; // Prediction input format for Image Classification. message ImageClassificationPredictionInstance { - // The image bytes or GCS URI to make the prediction on. + // The image bytes or Cloud Storage URI to make the prediction on. string content = 1; // The MIME type of the content of the image. Only the images in below listed diff --git a/google/cloud/aiplatform/v1/schema/predict/instance/image_object_detection.proto b/google/cloud/aiplatform/v1/schema/predict/instance/image_object_detection.proto index 42fc99732..5e5317336 100644 --- a/google/cloud/aiplatform/v1/schema/predict/instance/image_object_detection.proto +++ b/google/cloud/aiplatform/v1/schema/predict/instance/image_object_detection.proto @@ -18,14 +18,17 @@ package google.cloud.aiplatform.v1.schema.predict.instance; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Instance"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/instance;instance"; option java_multiple_files = true; option java_outer_classname = "ImageObjectDetectionPredictionInstanceProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.instance"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Instance"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Instance"; // Prediction input format for Image Object Detection. message ImageObjectDetectionPredictionInstance { - // The image bytes or GCS URI to make the prediction on. + // The image bytes or Cloud Storage URI to make the prediction on. string content = 1; // The MIME type of the content of the image. Only the images in below listed diff --git a/google/cloud/aiplatform/v1/schema/predict/instance/image_segmentation.proto b/google/cloud/aiplatform/v1/schema/predict/instance/image_segmentation.proto index dec18aad8..b4682c035 100644 --- a/google/cloud/aiplatform/v1/schema/predict/instance/image_segmentation.proto +++ b/google/cloud/aiplatform/v1/schema/predict/instance/image_segmentation.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.instance; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Instance"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/instance;instance"; option java_multiple_files = true; option java_outer_classname = "ImageSegmentationPredictionInstanceProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.instance"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Instance"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Instance"; // Prediction input format for Image Segmentation. message ImageSegmentationPredictionInstance { diff --git a/google/cloud/aiplatform/v1/schema/predict/instance/text_classification.proto b/google/cloud/aiplatform/v1/schema/predict/instance/text_classification.proto index bec1d6746..cfd431702 100644 --- a/google/cloud/aiplatform/v1/schema/predict/instance/text_classification.proto +++ b/google/cloud/aiplatform/v1/schema/predict/instance/text_classification.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.instance; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Instance"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/instance;instance"; option java_multiple_files = true; option java_outer_classname = "TextClassificationPredictionInstanceProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.instance"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Instance"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Instance"; // Prediction input format for Text Classification. message TextClassificationPredictionInstance { diff --git a/google/cloud/aiplatform/v1/schema/predict/instance/text_extraction.proto b/google/cloud/aiplatform/v1/schema/predict/instance/text_extraction.proto index 8adb28325..697ee1197 100644 --- a/google/cloud/aiplatform/v1/schema/predict/instance/text_extraction.proto +++ b/google/cloud/aiplatform/v1/schema/predict/instance/text_extraction.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.instance; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Instance"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/instance;instance"; option java_multiple_files = true; option java_outer_classname = "TextExtractionPredictionInstanceProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.instance"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Instance"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Instance"; // Prediction input format for Text Extraction. message TextExtractionPredictionInstance { @@ -35,7 +38,7 @@ message TextExtractionPredictionInstance { // This field is only used for batch prediction. If a key is provided, the // batch prediction result will by mapped to this key. If omitted, then the - // batch prediction result will contain the entire input instance. AI Platform + // batch prediction result will contain the entire input instance. Vertex AI // will not check if keys in the request are duplicates, so it is up to the // caller to ensure the keys are unique. string key = 3; diff --git a/google/cloud/aiplatform/v1/schema/predict/instance/text_sentiment.proto b/google/cloud/aiplatform/v1/schema/predict/instance/text_sentiment.proto index 6a20c75a9..a06c7c2f6 100644 --- a/google/cloud/aiplatform/v1/schema/predict/instance/text_sentiment.proto +++ b/google/cloud/aiplatform/v1/schema/predict/instance/text_sentiment.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.instance; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Instance"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/instance;instance"; option java_multiple_files = true; option java_outer_classname = "TextSentimentPredictionInstanceProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.instance"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Instance"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Instance"; // Prediction input format for Text Sentiment. message TextSentimentPredictionInstance { diff --git a/google/cloud/aiplatform/v1/schema/predict/instance/video_action_recognition.proto b/google/cloud/aiplatform/v1/schema/predict/instance/video_action_recognition.proto index 4ee124384..9ab477e24 100644 --- a/google/cloud/aiplatform/v1/schema/predict/instance/video_action_recognition.proto +++ b/google/cloud/aiplatform/v1/schema/predict/instance/video_action_recognition.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.instance; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Instance"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/instance;instance"; option java_multiple_files = true; option java_outer_classname = "VideoActionRecognitionPredictionInstanceProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.instance"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Instance"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Instance"; // Prediction input format for Video Action Recognition. message VideoActionRecognitionPredictionInstance { diff --git a/google/cloud/aiplatform/v1/schema/predict/instance/video_classification.proto b/google/cloud/aiplatform/v1/schema/predict/instance/video_classification.proto index 74e80068f..68cb3cb35 100644 --- a/google/cloud/aiplatform/v1/schema/predict/instance/video_classification.proto +++ b/google/cloud/aiplatform/v1/schema/predict/instance/video_classification.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.instance; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Instance"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/instance;instance"; option java_multiple_files = true; option java_outer_classname = "VideoClassificationPredictionInstanceProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.instance"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Instance"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Instance"; // Prediction input format for Video Classification. message VideoClassificationPredictionInstance { diff --git a/google/cloud/aiplatform/v1/schema/predict/instance/video_object_tracking.proto b/google/cloud/aiplatform/v1/schema/predict/instance/video_object_tracking.proto index 0a7cbb883..34adc8406 100644 --- a/google/cloud/aiplatform/v1/schema/predict/instance/video_object_tracking.proto +++ b/google/cloud/aiplatform/v1/schema/predict/instance/video_object_tracking.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.instance; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Instance"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/instance;instance"; option java_multiple_files = true; option java_outer_classname = "VideoObjectTrackingPredictionInstanceProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.instance"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Instance"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Instance"; // Prediction input format for Video Object Tracking. message VideoObjectTrackingPredictionInstance { diff --git a/google/cloud/aiplatform/v1/schema/predict/params/BUILD.bazel b/google/cloud/aiplatform/v1/schema/predict/params/BUILD.bazel index 46884403e..9bd697b8e 100644 --- a/google/cloud/aiplatform/v1/schema/predict/params/BUILD.bazel +++ b/google/cloud/aiplatform/v1/schema/predict/params/BUILD.bazel @@ -83,7 +83,6 @@ moved_proto_library( py_proto_library( name = "params_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":params_moved_proto"], ) @@ -112,12 +111,11 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -184,4 +182,20 @@ csharp_grpc_library( ############################################################################## # C++ ############################################################################## -# Put your C++ code here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "params_cc_proto", + deps = [":params_proto"], +) + +cc_grpc_library( + name = "params_cc_grpc", + srcs = [":params_proto"], + grpc_only = True, + deps = [":params_cc_proto"], +) diff --git a/google/cloud/aiplatform/v1/schema/predict/params/image_classification.proto b/google/cloud/aiplatform/v1/schema/predict/params/image_classification.proto index 959ad9494..b3cb7e20f 100644 --- a/google/cloud/aiplatform/v1/schema/predict/params/image_classification.proto +++ b/google/cloud/aiplatform/v1/schema/predict/params/image_classification.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.params; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Params"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/params;params"; option java_multiple_files = true; option java_outer_classname = "ImageClassificationPredictionParamsProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.params"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Params"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Params"; // Prediction model parameters for Image Classification. message ImageClassificationPredictionParams { diff --git a/google/cloud/aiplatform/v1/schema/predict/params/image_object_detection.proto b/google/cloud/aiplatform/v1/schema/predict/params/image_object_detection.proto index d4a9e4b8d..34130f7c6 100644 --- a/google/cloud/aiplatform/v1/schema/predict/params/image_object_detection.proto +++ b/google/cloud/aiplatform/v1/schema/predict/params/image_object_detection.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.params; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Params"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/params;params"; option java_multiple_files = true; option java_outer_classname = "ImageObjectDetectionPredictionParamsProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.params"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Params"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Params"; // Prediction model parameters for Image Object Detection. message ImageObjectDetectionPredictionParams { diff --git a/google/cloud/aiplatform/v1/schema/predict/params/image_segmentation.proto b/google/cloud/aiplatform/v1/schema/predict/params/image_segmentation.proto index 84c604264..50e06ee8d 100644 --- a/google/cloud/aiplatform/v1/schema/predict/params/image_segmentation.proto +++ b/google/cloud/aiplatform/v1/schema/predict/params/image_segmentation.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.params; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Params"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/params;params"; option java_multiple_files = true; option java_outer_classname = "ImageSegmentationPredictionParamsProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.params"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Params"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Params"; // Prediction model parameters for Image Segmentation. message ImageSegmentationPredictionParams { diff --git a/google/cloud/aiplatform/v1/schema/predict/params/video_action_recognition.proto b/google/cloud/aiplatform/v1/schema/predict/params/video_action_recognition.proto index 50775f03c..aa6407226 100644 --- a/google/cloud/aiplatform/v1/schema/predict/params/video_action_recognition.proto +++ b/google/cloud/aiplatform/v1/schema/predict/params/video_action_recognition.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.params; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Params"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/params;params"; option java_multiple_files = true; option java_outer_classname = "VideoActionRecognitionPredictionParamsProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.params"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Params"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Params"; // Prediction model parameters for Video Action Recognition. message VideoActionRecognitionPredictionParams { diff --git a/google/cloud/aiplatform/v1/schema/predict/params/video_classification.proto b/google/cloud/aiplatform/v1/schema/predict/params/video_classification.proto index f1ae51c1e..ec062072f 100644 --- a/google/cloud/aiplatform/v1/schema/predict/params/video_classification.proto +++ b/google/cloud/aiplatform/v1/schema/predict/params/video_classification.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.params; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Params"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/params;params"; option java_multiple_files = true; option java_outer_classname = "VideoClassificationPredictionParamsProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.params"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Params"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Params"; // Prediction model parameters for Video Classification. message VideoClassificationPredictionParams { @@ -34,15 +37,15 @@ message VideoClassificationPredictionParams { // fewer predictions. Default value is 10,000. int32 max_predictions = 2; - // Set to true to request segment-level classification. AI Platform returns + // Set to true to request segment-level classification. Vertex AI returns // labels and their confidence scores for the entire time segment of the // video that user specified in the input instance. // Default value is true bool segment_classification = 3; - // Set to true to request shot-level classification. AI Platform determines + // Set to true to request shot-level classification. Vertex AI determines // the boundaries for each camera shot in the entire time segment of the - // video that user specified in the input instance. AI Platform then + // video that user specified in the input instance. Vertex AI then // returns labels and their confidence scores for each detected shot, along // with the start and end time of the shot. // WARNING: Model evaluation is not done for this classification type, @@ -52,7 +55,7 @@ message VideoClassificationPredictionParams { bool shot_classification = 4; // Set to true to request classification for a video at one-second intervals. - // AI Platform returns labels and their confidence scores for each second of + // Vertex AI returns labels and their confidence scores for each second of // the entire time segment of the video that user specified in the input // WARNING: Model evaluation is not done for this classification type, the // quality of it depends on the training data, but there are no metrics diff --git a/google/cloud/aiplatform/v1/schema/predict/params/video_object_tracking.proto b/google/cloud/aiplatform/v1/schema/predict/params/video_object_tracking.proto index 1c5fb631d..579dc4d4c 100644 --- a/google/cloud/aiplatform/v1/schema/predict/params/video_object_tracking.proto +++ b/google/cloud/aiplatform/v1/schema/predict/params/video_object_tracking.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.params; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Params"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/params;params"; option java_multiple_files = true; option java_outer_classname = "VideoObjectTrackingPredictionParamsProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.params"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Params"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Params"; // Prediction model parameters for Video Object Tracking. message VideoObjectTrackingPredictionParams { diff --git a/google/cloud/aiplatform/v1/schema/predict/prediction/BUILD.bazel b/google/cloud/aiplatform/v1/schema/predict/prediction/BUILD.bazel index 049eafa72..78b507026 100644 --- a/google/cloud/aiplatform/v1/schema/predict/prediction/BUILD.bazel +++ b/google/cloud/aiplatform/v1/schema/predict/prediction/BUILD.bazel @@ -96,7 +96,6 @@ moved_proto_library( py_proto_library( name = "prediction_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":prediction_moved_proto"], ) @@ -124,12 +123,11 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -196,4 +194,20 @@ csharp_grpc_library( ############################################################################## # C++ ############################################################################## -# Put your C++ code here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "prediction_cc_proto", + deps = [":prediction_proto"], +) + +cc_grpc_library( + name = "prediction_cc_grpc", + srcs = [":prediction_proto"], + grpc_only = True, + deps = [":prediction_cc_proto"], +) diff --git a/google/cloud/aiplatform/v1/schema/predict/prediction/classification.proto b/google/cloud/aiplatform/v1/schema/predict/prediction/classification.proto index 76c636ec8..b8e396ab6 100644 --- a/google/cloud/aiplatform/v1/schema/predict/prediction/classification.proto +++ b/google/cloud/aiplatform/v1/schema/predict/prediction/classification.proto @@ -18,15 +18,17 @@ package google.cloud.aiplatform.v1.schema.predict.prediction; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Prediction"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction"; option java_multiple_files = true; option java_outer_classname = "ClassificationPredictionResultProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.prediction"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Prediction"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Prediction"; // Prediction output format for Image and Text Classification. message ClassificationPredictionResult { - // The resource IDs of the AnnotationSpecs that had been identified, ordered - // by the confidence score descendingly. + // The resource IDs of the AnnotationSpecs that had been identified. repeated int64 ids = 1; // The display names of the AnnotationSpecs that had been identified, order diff --git a/google/cloud/aiplatform/v1/schema/predict/prediction/image_object_detection.proto b/google/cloud/aiplatform/v1/schema/predict/prediction/image_object_detection.proto index 235199208..50d76ecc3 100644 --- a/google/cloud/aiplatform/v1/schema/predict/prediction/image_object_detection.proto +++ b/google/cloud/aiplatform/v1/schema/predict/prediction/image_object_detection.proto @@ -19,10 +19,13 @@ package google.cloud.aiplatform.v1.schema.predict.prediction; import "google/protobuf/struct.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Prediction"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction"; option java_multiple_files = true; option java_outer_classname = "ImageObjectDetectionPredictionResultProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.prediction"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Prediction"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Prediction"; // Prediction output format for Image Object Detection. message ImageObjectDetectionPredictionResult { diff --git a/google/cloud/aiplatform/v1/schema/predict/prediction/image_segmentation.proto b/google/cloud/aiplatform/v1/schema/predict/prediction/image_segmentation.proto index d5726b149..f245f1e13 100644 --- a/google/cloud/aiplatform/v1/schema/predict/prediction/image_segmentation.proto +++ b/google/cloud/aiplatform/v1/schema/predict/prediction/image_segmentation.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.prediction; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Prediction"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction"; option java_multiple_files = true; option java_outer_classname = "ImageSegmentationPredictionResultProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.prediction"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Prediction"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Prediction"; // Prediction output format for Image Segmentation. message ImageSegmentationPredictionResult { diff --git a/google/cloud/aiplatform/v1/schema/predict/prediction/tabular_classification.proto b/google/cloud/aiplatform/v1/schema/predict/prediction/tabular_classification.proto index a11739285..25cd6672b 100644 --- a/google/cloud/aiplatform/v1/schema/predict/prediction/tabular_classification.proto +++ b/google/cloud/aiplatform/v1/schema/predict/prediction/tabular_classification.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.prediction; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Prediction"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction"; option java_multiple_files = true; option java_outer_classname = "TabularClassificationPredictionResultProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.prediction"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Prediction"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Prediction"; // Prediction output format for Tabular Classification. message TabularClassificationPredictionResult { diff --git a/google/cloud/aiplatform/v1/schema/predict/prediction/tabular_regression.proto b/google/cloud/aiplatform/v1/schema/predict/prediction/tabular_regression.proto index 28c75b4d8..a26c3cb25 100644 --- a/google/cloud/aiplatform/v1/schema/predict/prediction/tabular_regression.proto +++ b/google/cloud/aiplatform/v1/schema/predict/prediction/tabular_regression.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.prediction; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Prediction"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction"; option java_multiple_files = true; option java_outer_classname = "TabularRegressionPredictionResultProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.prediction"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Prediction"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Prediction"; // Prediction output format for Tabular Regression. message TabularRegressionPredictionResult { diff --git a/google/cloud/aiplatform/v1/schema/predict/prediction/text_extraction.proto b/google/cloud/aiplatform/v1/schema/predict/prediction/text_extraction.proto index 01a119095..00ca76943 100644 --- a/google/cloud/aiplatform/v1/schema/predict/prediction/text_extraction.proto +++ b/google/cloud/aiplatform/v1/schema/predict/prediction/text_extraction.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.prediction; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Prediction"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction"; option java_multiple_files = true; option java_outer_classname = "TextExtractionPredictionResultProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.prediction"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Prediction"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Prediction"; // Prediction output format for Text Extraction. message TextExtractionPredictionResult { diff --git a/google/cloud/aiplatform/v1/schema/predict/prediction/text_sentiment.proto b/google/cloud/aiplatform/v1/schema/predict/prediction/text_sentiment.proto index a2a3c94f8..09d24248d 100644 --- a/google/cloud/aiplatform/v1/schema/predict/prediction/text_sentiment.proto +++ b/google/cloud/aiplatform/v1/schema/predict/prediction/text_sentiment.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.predict.prediction; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Prediction"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction"; option java_multiple_files = true; option java_outer_classname = "TextSentimentPredictionResultProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.prediction"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Prediction"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Prediction"; // Prediction output format for Text Sentiment message TextSentimentPredictionResult { diff --git a/google/cloud/aiplatform/v1/schema/predict/prediction/video_action_recognition.proto b/google/cloud/aiplatform/v1/schema/predict/prediction/video_action_recognition.proto index e45ccef2a..6cd59711c 100644 --- a/google/cloud/aiplatform/v1/schema/predict/prediction/video_action_recognition.proto +++ b/google/cloud/aiplatform/v1/schema/predict/prediction/video_action_recognition.proto @@ -20,10 +20,13 @@ import "google/protobuf/duration.proto"; import "google/protobuf/wrappers.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Prediction"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction"; option java_multiple_files = true; option java_outer_classname = "VideoActionRecognitionPredictionResultProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.prediction"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Prediction"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Prediction"; // Prediction output format for Video Action Recognition. message VideoActionRecognitionPredictionResult { diff --git a/google/cloud/aiplatform/v1/schema/predict/prediction/video_classification.proto b/google/cloud/aiplatform/v1/schema/predict/prediction/video_classification.proto index 873350394..5d33c5aea 100644 --- a/google/cloud/aiplatform/v1/schema/predict/prediction/video_classification.proto +++ b/google/cloud/aiplatform/v1/schema/predict/prediction/video_classification.proto @@ -20,10 +20,13 @@ import "google/protobuf/duration.proto"; import "google/protobuf/wrappers.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Prediction"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction"; option java_multiple_files = true; option java_outer_classname = "VideoClassificationPredictionResultProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.prediction"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Prediction"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Prediction"; // Prediction output format for Video Classification. message VideoClassificationPredictionResult { diff --git a/google/cloud/aiplatform/v1/schema/predict/prediction/video_object_tracking.proto b/google/cloud/aiplatform/v1/schema/predict/prediction/video_object_tracking.proto index 2a39204b7..20ecbb1a7 100644 --- a/google/cloud/aiplatform/v1/schema/predict/prediction/video_object_tracking.proto +++ b/google/cloud/aiplatform/v1/schema/predict/prediction/video_object_tracking.proto @@ -20,10 +20,13 @@ import "google/protobuf/duration.proto"; import "google/protobuf/wrappers.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.Predict.Prediction"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/predict/prediction;prediction"; option java_multiple_files = true; option java_outer_classname = "VideoObjectTrackingPredictionResultProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.predict.prediction"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\Predict\\Prediction"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::Predict::Prediction"; // Prediction output format for Video Object Tracking. message VideoObjectTrackingPredictionResult { diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/BUILD.bazel b/google/cloud/aiplatform/v1/schema/trainingjob/definition/BUILD.bazel index 11bd902c3..d3fa3b4cf 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/BUILD.bazel +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/BUILD.bazel @@ -25,6 +25,7 @@ proto_library( ], deps = [ "//google/api:annotations_proto", + "//google/api:field_behavior_proto", ], ) @@ -63,6 +64,7 @@ go_proto_library( protos = [":definition_proto"], deps = [ "//google/api:annotations_go_proto", + "//google/api:field_behavior_go_proto", ], ) @@ -83,12 +85,12 @@ moved_proto_library( srcs = [":definition_proto"], deps = [ "//google/api:annotations_proto", + "//google/api:field_behavior_proto", ], ) py_proto_library( name = "definition_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":definition_moved_proto"], ) @@ -117,12 +119,11 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -188,4 +189,20 @@ csharp_grpc_library( ############################################################################## # C++ ############################################################################## -# Put your C++ code here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "definition_cc_proto", + deps = [":definition_proto"], +) + +cc_grpc_library( + name = "definition_cc_grpc", + srcs = [":definition_proto"], + grpc_only = True, + deps = [":definition_cc_proto"], +) diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_classification.proto b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_classification.proto index d5f365aef..f51227cfb 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_classification.proto +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_classification.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.trainingjob.definition; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition"; option java_multiple_files = true; option java_outer_classname = "AutoMLImageClassificationProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.trainingjob.definition"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition"; // A TrainingJob that trains and uploads an AutoML Image Classification Model. message AutoMlImageClassification { diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_object_detection.proto b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_object_detection.proto index 5abceb55b..62e7ae2c3 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_object_detection.proto +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_object_detection.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.trainingjob.definition; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition"; option java_multiple_files = true; option java_outer_classname = "AutoMLImageObjectDetectionProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.trainingjob.definition"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition"; // A TrainingJob that trains and uploads an AutoML Image Object Detection Model. message AutoMlImageObjectDetection { diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_segmentation.proto b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_segmentation.proto index 2747b2968..00af43c1c 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_segmentation.proto +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_image_segmentation.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.trainingjob.definition; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition"; option java_multiple_files = true; option java_outer_classname = "AutoMLImageSegmentationProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.trainingjob.definition"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition"; // A TrainingJob that trains and uploads an AutoML Image Segmentation Model. message AutoMlImageSegmentation { diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_tables.proto b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_tables.proto index 09ecd2dd7..0c4ee2d6e 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_tables.proto +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_tables.proto @@ -16,13 +16,17 @@ syntax = "proto3"; package google.cloud.aiplatform.v1.schema.trainingjob.definition; +import "google/api/field_behavior.proto"; import "google/cloud/aiplatform/v1/schema/trainingjob/definition/export_evaluated_data_items_config.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition"; option java_multiple_files = true; option java_outer_classname = "AutoMLTablesProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.trainingjob.definition"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition"; // A TrainingJob that trains and uploads an AutoML Tables Model. message AutoMlTables { @@ -267,6 +271,9 @@ message AutoMlTablesInputs { // Configuration for exporting test set predictions to a BigQuery table. If // this configuration is absent, then the export is not performed. ExportEvaluatedDataItemsConfig export_evaluated_data_items_config = 10; + + // Additional experiment flags for the Tables training pipeline. + repeated string additional_experiments = 11; } // Model metadata specific to AutoML Tables. diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_classification.proto b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_classification.proto index 3f03fcb97..8723af0e8 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_classification.proto +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_classification.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.trainingjob.definition; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition"; option java_multiple_files = true; option java_outer_classname = "AutoMLTextClassificationProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.trainingjob.definition"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition"; // A TrainingJob that trains and uploads an AutoML Text Classification Model. message AutoMlTextClassification { diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_extraction.proto b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_extraction.proto index 9a08edd6e..db33c3f56 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_extraction.proto +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_extraction.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.trainingjob.definition; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition"; option java_multiple_files = true; option java_outer_classname = "AutoMLTextExtractionProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.trainingjob.definition"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition"; // A TrainingJob that trains and uploads an AutoML Text Extraction Model. message AutoMlTextExtraction { diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_sentiment.proto b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_sentiment.proto index 2d9120976..153a57fe5 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_sentiment.proto +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_text_sentiment.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.trainingjob.definition; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition"; option java_multiple_files = true; option java_outer_classname = "AutoMLTextSentimentProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.trainingjob.definition"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition"; // A TrainingJob that trains and uploads an AutoML Text Sentiment Model. message AutoMlTextSentiment { diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_action_recognition.proto b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_action_recognition.proto index 8ed75139a..86f723b7d 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_action_recognition.proto +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_action_recognition.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.trainingjob.definition; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition"; option java_multiple_files = true; option java_outer_classname = "AutoMLVideoActionRecognitionProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.trainingjob.definition"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition"; // A TrainingJob that trains and uploads an AutoML Video Action Recognition // Model. @@ -43,6 +46,16 @@ message AutoMlVideoActionRecognitionInputs { // also be exported (see ModelService.ExportModel) as a TensorFlow or // TensorFlow Lite model and used on a mobile or edge device afterwards. MOBILE_VERSATILE_1 = 2; + + // A model that, in addition to being available within Google Cloud, can + // also be exported (see ModelService.ExportModel) to a Jetson device + // afterwards. + MOBILE_JETSON_VERSATILE_1 = 3; + + // A model that, in addition to being available within Google Cloud, can + // also be exported (see ModelService.ExportModel) as a TensorFlow or + // TensorFlow Lite model and used on a Coral device afterwards. + MOBILE_CORAL_VERSATILE_1 = 4; } ModelType model_type = 1; diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_classification.proto b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_classification.proto index ca94acd18..ff0d78f08 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_classification.proto +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_classification.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.trainingjob.definition; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition"; option java_multiple_files = true; option java_outer_classname = "AutoMLVideoClassificationProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.trainingjob.definition"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition"; // A TrainingJob that trains and uploads an AutoML Video Classification Model. message AutoMlVideoClassification { diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_object_tracking.proto b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_object_tracking.proto index d7a931119..52cba9f38 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_object_tracking.proto +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/automl_video_object_tracking.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.trainingjob.definition; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition"; option java_multiple_files = true; option java_outer_classname = "AutoMLVideoObjectTrackingProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.trainingjob.definition"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition"; // A TrainingJob that trains and uploads an AutoML Video ObjectTracking Model. message AutoMlVideoObjectTracking { diff --git a/google/cloud/aiplatform/v1/schema/trainingjob/definition/export_evaluated_data_items_config.proto b/google/cloud/aiplatform/v1/schema/trainingjob/definition/export_evaluated_data_items_config.proto index a22461df9..ac0d32356 100644 --- a/google/cloud/aiplatform/v1/schema/trainingjob/definition/export_evaluated_data_items_config.proto +++ b/google/cloud/aiplatform/v1/schema/trainingjob/definition/export_evaluated_data_items_config.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1.schema.trainingjob.definition; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1.Schema.TrainingJob.Definition"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1/schema/trainingjob/definition;definition"; option java_multiple_files = true; option java_outer_classname = "ExportEvaluatedDataItemsConfigProto"; option java_package = "com.google.cloud.aiplatform.v1.schema.trainingjob.definition"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1\\Schema\\TrainingJob\\Definition"; +option ruby_package = "Google::Cloud::AIPlatform::V1::Schema::TrainingJob::Definition"; // Configuration for exporting test set predictions to a BigQuery table. message ExportEvaluatedDataItemsConfig { @@ -30,7 +33,6 @@ message ExportEvaluatedDataItemsConfig { // // If not specified, then results are exported to the following auto-created // BigQuery table: - // // :export_evaluated_examples__.evaluated_examples string destination_bigquery_uri = 1; diff --git a/google/cloud/aiplatform/v1/specialist_pool.proto b/google/cloud/aiplatform/v1/specialist_pool.proto index 936363775..7702c6425 100644 --- a/google/cloud/aiplatform/v1/specialist_pool.proto +++ b/google/cloud/aiplatform/v1/specialist_pool.proto @@ -20,17 +20,20 @@ import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "SpecialistPoolProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // SpecialistPool represents customers' own workforce to work on their data -// labeling jobs. It includes a group of specialist managers who are responsible -// for managing the labelers in this pool as well as customers' data labeling -// jobs associated with this pool. -// Customers create specialist pool as well as start data labeling jobs on -// Cloud, managers and labelers work with the jobs using CrowdCompute console. +// labeling jobs. It includes a group of specialist managers and workers. +// Managers are responsible for managing the workers in this pool as well as +// customers' data labeling jobs associated with this pool. Customers create +// specialist pool as well as start data labeling jobs on Cloud, managers and +// workers handle the jobs using CrowdCompute console. message SpecialistPool { option (google.api.resource) = { type: "aiplatform.googleapis.com/SpecialistPool" @@ -46,12 +49,15 @@ message SpecialistPool { // This field should be unique on project-level. string display_name = 2 [(google.api.field_behavior) = REQUIRED]; - // Output only. The number of Specialists in this SpecialistPool. + // Output only. The number of managers in this SpecialistPool. int32 specialist_managers_count = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - // The email addresses of the specialists in the SpecialistPool. + // The email addresses of the managers in the SpecialistPool. repeated string specialist_manager_emails = 4; // Output only. The resource name of the pending data labeling jobs. repeated string pending_data_labeling_jobs = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The email addresses of workers in the SpecialistPool. + repeated string specialist_worker_emails = 7; } diff --git a/google/cloud/aiplatform/v1/specialist_pool_service.proto b/google/cloud/aiplatform/v1/specialist_pool_service.proto index 68fe29397..ad17178f6 100644 --- a/google/cloud/aiplatform/v1/specialist_pool_service.proto +++ b/google/cloud/aiplatform/v1/specialist_pool_service.proto @@ -25,10 +25,13 @@ import "google/cloud/aiplatform/v1/specialist_pool.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "SpecialistPoolServiceProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // A service for creating and managing Customer SpecialistPools. // When customers start Data Labeling jobs, they can reuse/create Specialist diff --git a/google/cloud/aiplatform/v1/study.proto b/google/cloud/aiplatform/v1/study.proto index 1873ba14a..6726b7fad 100644 --- a/google/cloud/aiplatform/v1/study.proto +++ b/google/cloud/aiplatform/v1/study.proto @@ -21,13 +21,60 @@ import "google/api/resource.proto"; import "google/protobuf/duration.proto"; import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; -import "google/protobuf/wrappers.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "StudyProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// LINT.IfChange +// A message representing a Study. +message Study { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/Study" + pattern: "projects/{project}/locations/{location}/studies/{study}" + }; + + // Describes the Study state. + enum State { + // The study state is unspecified. + STATE_UNSPECIFIED = 0; + + // The study is active. + ACTIVE = 1; + + // The study is stopped due to an internal error. + INACTIVE = 2; + + // The study is done when the service exhausts the parameter search space + // or max_trial_count is reached. + COMPLETED = 3; + } + + // Output only. The name of a study. The study's globally unique identifier. + // Format: `projects/{project}/locations/{location}/studies/{study}` + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. Describes the Study, default value is empty string. + string display_name = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Configuration of the Study. + StudySpec study_spec = 3 [(google.api.field_behavior) = REQUIRED]; + + // Output only. The detailed state of a Study. + State state = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Time at which the study was created. + google.protobuf.Timestamp create_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A human readable reason why the Study is inactive. + // This should be empty if a study is ACTIVE or COMPLETED. + string inactive_reason = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; +} // A message representing a Trial. A Trial contains a unique set of Parameters // that has been or will be evaluated, along with the objective metrics got by @@ -76,6 +123,9 @@ message Trial { INFEASIBLE = 5; } + // Output only. Resource name of the Trial assigned by the service. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. The identifier of the Trial assigned by the service. string id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -88,12 +138,31 @@ message Trial { // Output only. The final measurement containing the objective value. Measurement final_measurement = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. A list of measurements that are strictly lexicographically + // ordered by their induced tuples (steps, elapsed_duration). + // These are used for early stopping computations. + repeated Measurement measurements = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. Time when the Trial was started. google.protobuf.Timestamp start_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Time when the Trial's status changed to `SUCCEEDED` or `INFEASIBLE`. google.protobuf.Timestamp end_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. The identifier of the client that originally requested this Trial. + // Each client is identified by a unique client_id. When a client + // asks for a suggestion, Vertex AI Vizier will assign it a Trial. The client + // should evaluate the Trial, complete it, and report back to Vertex AI + // Vizier. If suggestion is asked again by same client_id before the Trial is + // completed, the same Trial will be returned. Multiple clients with + // different client_ids can ask for suggestions simultaneously, each of them + // will get their own Trial. + string client_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A human readable string describing why the Trial is + // infeasible. This is set only if Trial state is `INFEASIBLE`. + string infeasible_reason = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. The CustomJob name linked to the Trial. // It's set for a HyperparameterTuningJob's Trial. string custom_job = 11 [ @@ -102,6 +171,21 @@ message Trial { type: "aiplatform.googleapis.com/CustomJob" } ]; + + // Output only. URIs for accessing [interactive + // shells](https://cloud.google.com/vertex-ai/docs/training/monitor-debug-interactive-shell) + // (one URI for each training node). Only available if this trial is part of + // a [HyperparameterTuningJob][google.cloud.aiplatform.v1.HyperparameterTuningJob] and the job's + // [trial_job_spec.enable_web_access][google.cloud.aiplatform.v1.CustomJobSpec.enable_web_access] field + // is `true`. + // + // The keys are names of each node used for the trial; for example, + // `workerpool0-0` for the primary node, `workerpool1-0` for the first node in + // the second worker pool, and `workerpool1-1` for the second node in the + // second worker pool. + // + // The values are the URIs for each node's interactive shell. + map web_access_uris = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Represents specification of a Study. @@ -137,6 +221,14 @@ message StudySpec { // Required. Inclusive maximum value of the parameter. double max_value = 2 [(google.api.field_behavior) = REQUIRED]; + + // A default value for a `DOUBLE` parameter that is assumed to be a + // relatively good starting point. Unset value signals that there is no + // offered starting point. + // + // Currently only supported by the Vertex AI Vizier service. Not supported + // by HyperparamterTuningJob or TrainingPipeline. + optional double default_value = 4; } // Value specification for a parameter in `INTEGER` type. @@ -146,12 +238,28 @@ message StudySpec { // Required. Inclusive maximum value of the parameter. int64 max_value = 2 [(google.api.field_behavior) = REQUIRED]; + + // A default value for an `INTEGER` parameter that is assumed to be a + // relatively good starting point. Unset value signals that there is no + // offered starting point. + // + // Currently only supported by the Vertex AI Vizier service. Not supported + // by HyperparamterTuningJob or TrainingPipeline. + optional int64 default_value = 4; } // Value specification for a parameter in `CATEGORICAL` type. message CategoricalValueSpec { // Required. The list of possible categories. repeated string values = 1 [(google.api.field_behavior) = REQUIRED]; + + // A default value for a `CATEGORICAL` parameter that is assumed to be a + // relatively good starting point. Unset value signals that there is no + // offered starting point. + // + // Currently only supported by the Vizier service. Not supported by + // HyperparamterTuningJob or TrainingPipeline. + optional string default_value = 3; } // Value specification for a parameter in `DISCRETE` type. @@ -161,6 +269,15 @@ message StudySpec { // For instance, this parameter might have possible settings of 1.5, 2.5, // and 4.0. This list should not contain more than 1,000 values. repeated double values = 1 [(google.api.field_behavior) = REQUIRED]; + + // A default value for a `DISCRETE` parameter that is assumed to be a + // relatively good starting point. Unset value signals that there is no + // offered starting point. It automatically rounds to the + // nearest feasible discrete point. + // + // Currently only supported by the Vizier service. Not supported by + // HyperparamterTuningJob or TrainingPipeline. + optional double default_value = 3; } // Represents a parameter spec with condition from its parent parameter. @@ -258,11 +375,36 @@ message StudySpec { repeated ConditionalParameterSpec conditional_parameter_specs = 10; } + // The decay curve automated stopping rule builds a Gaussian Process + // Regressor to predict the final objective value of a Trial based on the + // already completed Trials and the intermediate measurements of the current + // Trial. Early stopping is requested for the current Trial if there is very + // low probability to exceed the optimal value found so far. + message DecayCurveAutomatedStoppingSpec { + // True if [Measurement.elapsed_duration][google.cloud.aiplatform.v1.Measurement.elapsed_duration] is used as the x-axis of each + // Trials Decay Curve. Otherwise, [Measurement.step_count][google.cloud.aiplatform.v1.Measurement.step_count] will be used + // as the x-axis. + bool use_elapsed_duration = 1; + } + + // The median automated stopping rule stops a pending Trial if the Trial's + // best objective_value is strictly below the median 'performance' of all + // completed Trials reported up to the Trial's last measurement. + // Currently, 'performance' refers to the running average of the objective + // values reported by the Trial in each measurement. + message MedianAutomatedStoppingSpec { + // True if median automated stopping rule applies on + // [Measurement.elapsed_duration][google.cloud.aiplatform.v1.Measurement.elapsed_duration]. It means that elapsed_duration + // field of latest measurement of current Trial is used to compute median + // objective value for each completed Trials. + bool use_elapsed_duration = 1; + } + // The available search algorithms for the Study. enum Algorithm { // The default algorithm used by Vertex AI for [hyperparameter // tuning](https://cloud.google.com/vertex-ai/docs/training/hyperparameter-tuning-overview) - // and [Vertex Vizier](https://cloud.google.com/vertex-ai/docs/vizier). + // and [Vertex AI Vizier](https://cloud.google.com/vertex-ai/docs/vizier). ALGORITHM_UNSPECIFIED = 0; // Simple grid search within the feasible space. To use grid search, @@ -315,6 +457,14 @@ message StudySpec { BEST_MEASUREMENT = 2; } + oneof automated_stopping_spec { + // The automated early stopping spec using decay curve rule. + DecayCurveAutomatedStoppingSpec decay_curve_stopping_spec = 4; + + // The automated early stopping spec using median rule. + MedianAutomatedStoppingSpec median_automated_stopping_spec = 5; + } + // Required. Metric specs for the Study. repeated MetricSpec metrics = 1 [(google.api.field_behavior) = REQUIRED]; @@ -325,7 +475,7 @@ message StudySpec { Algorithm algorithm = 3; // The observation noise level of the study. - // Currently only supported by the Vizier service. Not supported by + // Currently only supported by the Vertex AI Vizier service. Not supported by // HyperparamterTuningJob or TrainingPipeline. ObservationNoise observation_noise = 6; @@ -347,6 +497,9 @@ message Measurement { double value = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } + // Output only. Time that the Trial has been running at the point of this Measurement. + google.protobuf.Duration elapsed_duration = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. The number of steps the machine learning model has been trained for. // Must be non-negative. int64 step_count = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; diff --git a/google/cloud/aiplatform/v1/tensorboard.proto b/google/cloud/aiplatform/v1/tensorboard.proto new file mode 100644 index 000000000..c1a9ba026 --- /dev/null +++ b/google/cloud/aiplatform/v1/tensorboard.proto @@ -0,0 +1,87 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/encryption_spec.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "TensorboardProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Tensorboard is a physical database that stores users' training metrics. +// A default Tensorboard is provided in each region of a GCP project. +// If needed users can also create extra Tensorboards in their projects. +message Tensorboard { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/Tensorboard" + pattern: "projects/{project}/locations/{location}/tensorboards/{tensorboard}" + }; + + // Output only. Name of the Tensorboard. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. User provided name of this Tensorboard. + string display_name = 2 [(google.api.field_behavior) = REQUIRED]; + + // Description of this Tensorboard. + string description = 3; + + // Customer-managed encryption key spec for a Tensorboard. If set, this + // Tensorboard and all sub-resources of this Tensorboard will be secured by + // this key. + EncryptionSpec encryption_spec = 11; + + // Output only. Consumer project Cloud Storage path prefix used to store blob data, which + // can either be a bucket or directory. Does not end with a '/'. + string blob_storage_path_prefix = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of Runs stored in this Tensorboard. + int32 run_count = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this Tensorboard was created. + google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this Tensorboard was last updated. + google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The labels with user-defined metadata to organize your Tensorboards. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // No more than 64 user labels can be associated with one Tensorboard + // (System labels are excluded). + // + // See https://goo.gl/xmQnxf for more information and examples of labels. + // System reserved label keys are prefixed with "aiplatform.googleapis.com/" + // and are immutable. + map labels = 8; + + // Used to perform a consistent read-modify-write updates. If not set, a blind + // "overwrite" update happens. + string etag = 9; +} diff --git a/google/cloud/aiplatform/v1/tensorboard_data.proto b/google/cloud/aiplatform/v1/tensorboard_data.proto new file mode 100644 index 000000000..2cd9d67b3 --- /dev/null +++ b/google/cloud/aiplatform/v1/tensorboard_data.proto @@ -0,0 +1,102 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/cloud/aiplatform/v1/tensorboard_time_series.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "TensorboardDataProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// All the data stored in a TensorboardTimeSeries. +message TimeSeriesData { + // Required. The ID of the TensorboardTimeSeries, which will become the final component + // of the TensorboardTimeSeries' resource name + string tensorboard_time_series_id = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Immutable. The value type of this time series. All the values in this time series data + // must match this value type. + TensorboardTimeSeries.ValueType value_type = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Required. Data points in this time series. + repeated TimeSeriesDataPoint values = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// A TensorboardTimeSeries data point. +message TimeSeriesDataPoint { + // Value of this time series data point. + oneof value { + // A scalar value. + Scalar scalar = 3; + + // A tensor value. + TensorboardTensor tensor = 4; + + // A blob sequence value. + TensorboardBlobSequence blobs = 5; + } + + // Wall clock timestamp when this data point is generated by the end user. + google.protobuf.Timestamp wall_time = 1; + + // Step index of this data point within the run. + int64 step = 2; +} + +// One point viewable on a scalar metric plot. +message Scalar { + // Value of the point at this step / timestamp. + double value = 1; +} + +// One point viewable on a tensor metric plot. +message TensorboardTensor { + // Required. Serialized form of + // https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/framework/tensor.proto + bytes value = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Version number of TensorProto used to serialize [value][google.cloud.aiplatform.v1.TensorboardTensor.value]. + int32 version_number = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// One point viewable on a blob metric plot, but mostly just a wrapper message +// to work around repeated fields can't be used directly within `oneof` fields. +message TensorboardBlobSequence { + // List of blobs contained within the sequence. + repeated TensorboardBlob values = 1; +} + +// One blob (e.g, image, graph) viewable on a blob metric plot. +message TensorboardBlob { + // Output only. A URI safe key uniquely identifying a blob. Can be used to locate the blob + // stored in the Cloud Storage bucket of the consumer project. + string id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The bytes of the blob is not present unless it's returned by the + // ReadTensorboardBlobData endpoint. + bytes data = 2 [(google.api.field_behavior) = OPTIONAL]; +} diff --git a/google/cloud/aiplatform/v1/tensorboard_experiment.proto b/google/cloud/aiplatform/v1/tensorboard_experiment.proto new file mode 100644 index 000000000..3ef9df6e9 --- /dev/null +++ b/google/cloud/aiplatform/v1/tensorboard_experiment.proto @@ -0,0 +1,79 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "TensorboardExperimentProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// A TensorboardExperiment is a group of TensorboardRuns, that are typically the +// results of a training job run, in a Tensorboard. +message TensorboardExperiment { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/TensorboardExperiment" + pattern: "projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}" + }; + + // Output only. Name of the TensorboardExperiment. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // User provided name of this TensorboardExperiment. + string display_name = 2; + + // Description of this TensorboardExperiment. + string description = 3; + + // Output only. Timestamp when this TensorboardExperiment was created. + google.protobuf.Timestamp create_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this TensorboardExperiment was last updated. + google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The labels with user-defined metadata to organize your Datasets. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // No more than 64 user labels can be associated with one Dataset (System + // labels are excluded). + // + // See https://goo.gl/xmQnxf for more information and examples of labels. + // System reserved label keys are prefixed with "aiplatform.googleapis.com/" + // and are immutable. Following system labels exist for each Dataset: + // * "aiplatform.googleapis.com/dataset_metadata_schema": + // - output only, its value is the + // [metadata_schema's][metadata_schema_uri] title. + map labels = 6; + + // Used to perform consistent read-modify-write updates. If not set, a blind + // "overwrite" update happens. + string etag = 7; + + // Immutable. Source of the TensorboardExperiment. Example: a custom training job. + string source = 8 [(google.api.field_behavior) = IMMUTABLE]; +} diff --git a/google/cloud/aiplatform/v1/tensorboard_run.proto b/google/cloud/aiplatform/v1/tensorboard_run.proto new file mode 100644 index 000000000..7986240f5 --- /dev/null +++ b/google/cloud/aiplatform/v1/tensorboard_run.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "TensorboardRunProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// TensorboardRun maps to a specific execution of a training job with a given +// set of hyperparameter values, model definition, dataset, etc +message TensorboardRun { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/TensorboardRun" + pattern: "projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}" + }; + + // Output only. Name of the TensorboardRun. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. User provided name of this TensorboardRun. + // This value must be unique among all TensorboardRuns + // belonging to the same parent TensorboardExperiment. + string display_name = 2 [(google.api.field_behavior) = REQUIRED]; + + // Description of this TensorboardRun. + string description = 3; + + // Output only. Timestamp when this TensorboardRun was created. + google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this TensorboardRun was last updated. + google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The labels with user-defined metadata to organize your TensorboardRuns. + // + // This field will be used to filter and visualize Runs in the Tensorboard UI. + // For example, a Vertex AI training job can set a label + // aiplatform.googleapis.com/training_job_id=xxxxx to all the runs created + // within that job. An end user can set a label experiment_id=xxxxx for all + // the runs produced in a Jupyter notebook. These runs can be grouped by a + // label value and visualized together in the Tensorboard UI. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // No more than 64 user labels can be associated with one TensorboardRun + // (System labels are excluded). + // + // See https://goo.gl/xmQnxf for more information and examples of labels. + // System reserved label keys are prefixed with "aiplatform.googleapis.com/" + // and are immutable. + map labels = 8; + + // Used to perform a consistent read-modify-write updates. If not set, a blind + // "overwrite" update happens. + string etag = 9; +} diff --git a/google/cloud/aiplatform/v1/tensorboard_service.proto b/google/cloud/aiplatform/v1/tensorboard_service.proto new file mode 100644 index 000000000..fc65a78dc --- /dev/null +++ b/google/cloud/aiplatform/v1/tensorboard_service.proto @@ -0,0 +1,1006 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/operation.proto"; +import "google/cloud/aiplatform/v1/tensorboard.proto"; +import "google/cloud/aiplatform/v1/tensorboard_data.proto"; +import "google/cloud/aiplatform/v1/tensorboard_experiment.proto"; +import "google/cloud/aiplatform/v1/tensorboard_run.proto"; +import "google/cloud/aiplatform/v1/tensorboard_time_series.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "TensorboardServiceProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// TensorboardService +service TensorboardService { + option (google.api.default_host) = "aiplatform.googleapis.com"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform," + "https://www.googleapis.com/auth/cloud-platform.read-only"; + + // Creates a Tensorboard. + rpc CreateTensorboard(CreateTensorboardRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/tensorboards" + body: "tensorboard" + }; + option (google.api.method_signature) = "parent,tensorboard"; + option (google.longrunning.operation_info) = { + response_type: "Tensorboard" + metadata_type: "CreateTensorboardOperationMetadata" + }; + } + + // Gets a Tensorboard. + rpc GetTensorboard(GetTensorboardRequest) returns (Tensorboard) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/tensorboards/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Updates a Tensorboard. + rpc UpdateTensorboard(UpdateTensorboardRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{tensorboard.name=projects/*/locations/*/tensorboards/*}" + body: "tensorboard" + }; + option (google.api.method_signature) = "tensorboard,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Tensorboard" + metadata_type: "UpdateTensorboardOperationMetadata" + }; + } + + // Lists Tensorboards in a Location. + rpc ListTensorboards(ListTensorboardsRequest) returns (ListTensorboardsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/tensorboards" + }; + option (google.api.method_signature) = "parent"; + } + + // Deletes a Tensorboard. + rpc DeleteTensorboard(DeleteTensorboardRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/tensorboards/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Creates a TensorboardExperiment. + rpc CreateTensorboardExperiment(CreateTensorboardExperimentRequest) returns (TensorboardExperiment) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/tensorboards/*}/experiments" + body: "tensorboard_experiment" + }; + option (google.api.method_signature) = "parent,tensorboard_experiment,tensorboard_experiment_id"; + } + + // Gets a TensorboardExperiment. + rpc GetTensorboardExperiment(GetTensorboardExperimentRequest) returns (TensorboardExperiment) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Updates a TensorboardExperiment. + rpc UpdateTensorboardExperiment(UpdateTensorboardExperimentRequest) returns (TensorboardExperiment) { + option (google.api.http) = { + patch: "/v1/{tensorboard_experiment.name=projects/*/locations/*/tensorboards/*/experiments/*}" + body: "tensorboard_experiment" + }; + option (google.api.method_signature) = "tensorboard_experiment,update_mask"; + } + + // Lists TensorboardExperiments in a Location. + rpc ListTensorboardExperiments(ListTensorboardExperimentsRequest) returns (ListTensorboardExperimentsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/tensorboards/*}/experiments" + }; + option (google.api.method_signature) = "parent"; + } + + // Deletes a TensorboardExperiment. + rpc DeleteTensorboardExperiment(DeleteTensorboardExperimentRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Creates a TensorboardRun. + rpc CreateTensorboardRun(CreateTensorboardRunRequest) returns (TensorboardRun) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs" + body: "tensorboard_run" + }; + option (google.api.method_signature) = "parent,tensorboard_run,tensorboard_run_id"; + } + + // Batch create TensorboardRuns. + rpc BatchCreateTensorboardRuns(BatchCreateTensorboardRunsRequest) returns (BatchCreateTensorboardRunsResponse) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs:batchCreate" + body: "*" + }; + option (google.api.method_signature) = "parent,requests"; + } + + // Gets a TensorboardRun. + rpc GetTensorboardRun(GetTensorboardRunRequest) returns (TensorboardRun) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Updates a TensorboardRun. + rpc UpdateTensorboardRun(UpdateTensorboardRunRequest) returns (TensorboardRun) { + option (google.api.http) = { + patch: "/v1/{tensorboard_run.name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" + body: "tensorboard_run" + }; + option (google.api.method_signature) = "tensorboard_run,update_mask"; + } + + // Lists TensorboardRuns in a Location. + rpc ListTensorboardRuns(ListTensorboardRunsRequest) returns (ListTensorboardRunsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs" + }; + option (google.api.method_signature) = "parent"; + } + + // Deletes a TensorboardRun. + rpc DeleteTensorboardRun(DeleteTensorboardRunRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Batch create TensorboardTimeSeries that belong to a TensorboardExperiment. + rpc BatchCreateTensorboardTimeSeries(BatchCreateTensorboardTimeSeriesRequest) returns (BatchCreateTensorboardTimeSeriesResponse) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs/*/timeSeries:batchCreate" + body: "*" + }; + option (google.api.method_signature) = "parent,requests"; + } + + // Creates a TensorboardTimeSeries. + rpc CreateTensorboardTimeSeries(CreateTensorboardTimeSeriesRequest) returns (TensorboardTimeSeries) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/timeSeries" + body: "tensorboard_time_series" + }; + option (google.api.method_signature) = "parent,tensorboard_time_series"; + } + + // Gets a TensorboardTimeSeries. + rpc GetTensorboardTimeSeries(GetTensorboardTimeSeriesRequest) returns (TensorboardTimeSeries) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Updates a TensorboardTimeSeries. + rpc UpdateTensorboardTimeSeries(UpdateTensorboardTimeSeriesRequest) returns (TensorboardTimeSeries) { + option (google.api.http) = { + patch: "/v1/{tensorboard_time_series.name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" + body: "tensorboard_time_series" + }; + option (google.api.method_signature) = "tensorboard_time_series,update_mask"; + } + + // Lists TensorboardTimeSeries in a Location. + rpc ListTensorboardTimeSeries(ListTensorboardTimeSeriesRequest) returns (ListTensorboardTimeSeriesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}/timeSeries" + }; + option (google.api.method_signature) = "parent"; + } + + // Deletes a TensorboardTimeSeries. + rpc DeleteTensorboardTimeSeries(DeleteTensorboardTimeSeriesRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Reads multiple TensorboardTimeSeries' data. The data point number limit is + // 1000 for scalars, 100 for tensors and blob references. If the number of + // data points stored is less than the limit, all data will be returned. + // Otherwise, that limit number of data points will be randomly selected from + // this time series and returned. + rpc BatchReadTensorboardTimeSeriesData(BatchReadTensorboardTimeSeriesDataRequest) returns (BatchReadTensorboardTimeSeriesDataResponse) { + option (google.api.http) = { + get: "/v1/{tensorboard=projects/*/locations/*/tensorboards/*}/experiments/*/runs/*/timeSeries:batchRead" + }; + option (google.api.method_signature) = "tensorboard"; + } + + // Reads a TensorboardTimeSeries' data. By default, if the number of data + // points stored is less than 1000, all data will be returned. Otherwise, 1000 + // data points will be randomly selected from this time series and returned. + // This value can be changed by changing max_data_points, which can't be + // greater than 10k. + rpc ReadTensorboardTimeSeriesData(ReadTensorboardTimeSeriesDataRequest) returns (ReadTensorboardTimeSeriesDataResponse) { + option (google.api.http) = { + get: "/v1/{tensorboard_time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:read" + }; + option (google.api.method_signature) = "tensorboard_time_series"; + } + + // Gets bytes of TensorboardBlobs. + // This is to allow reading blob data stored in consumer project's Cloud + // Storage bucket without users having to obtain Cloud Storage access + // permission. + rpc ReadTensorboardBlobData(ReadTensorboardBlobDataRequest) returns (stream ReadTensorboardBlobDataResponse) { + option (google.api.http) = { + get: "/v1/{time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:readBlobData" + }; + option (google.api.method_signature) = "time_series"; + } + + // Write time series data points of multiple TensorboardTimeSeries in multiple + // TensorboardRun's. If any data fail to be ingested, an error will be + // returned. + rpc WriteTensorboardExperimentData(WriteTensorboardExperimentDataRequest) returns (WriteTensorboardExperimentDataResponse) { + option (google.api.http) = { + post: "/v1/{tensorboard_experiment=projects/*/locations/*/tensorboards/*/experiments/*}:write" + body: "*" + }; + option (google.api.method_signature) = "tensorboard_experiment,write_run_data_requests"; + } + + // Write time series data points into multiple TensorboardTimeSeries under + // a TensorboardRun. If any data fail to be ingested, an error will be + // returned. + rpc WriteTensorboardRunData(WriteTensorboardRunDataRequest) returns (WriteTensorboardRunDataResponse) { + option (google.api.http) = { + post: "/v1/{tensorboard_run=projects/*/locations/*/tensorboards/*/experiments/*/runs/*}:write" + body: "*" + }; + option (google.api.method_signature) = "tensorboard_run,time_series_data"; + } + + // Exports a TensorboardTimeSeries' data. Data is returned in paginated + // responses. + rpc ExportTensorboardTimeSeriesData(ExportTensorboardTimeSeriesDataRequest) returns (ExportTensorboardTimeSeriesDataResponse) { + option (google.api.http) = { + post: "/v1/{tensorboard_time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:exportTensorboardTimeSeries" + body: "*" + }; + option (google.api.method_signature) = "tensorboard_time_series"; + } +} + +// Request message for [TensorboardService.CreateTensorboard][google.cloud.aiplatform.v1.TensorboardService.CreateTensorboard]. +message CreateTensorboardRequest { + // Required. The resource name of the Location to create the Tensorboard in. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Tensorboard" + } + ]; + + // Required. The Tensorboard to create. + Tensorboard tensorboard = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [TensorboardService.GetTensorboard][google.cloud.aiplatform.v1.TensorboardService.GetTensorboard]. +message GetTensorboardRequest { + // Required. The name of the Tensorboard resource. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Tensorboard" + } + ]; +} + +// Request message for [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1.TensorboardService.ListTensorboards]. +message ListTensorboardsRequest { + // Required. The resource name of the Location to list Tensorboards. + // Format: + // `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Tensorboard" + } + ]; + + // Lists the Tensorboards that match the filter expression. + string filter = 2; + + // The maximum number of Tensorboards to return. The service may return + // fewer than this value. If unspecified, at most 100 Tensorboards will be + // returned. The maximum value is 100; values above 100 will be coerced to + // 100. + int32 page_size = 3; + + // A page token, received from a previous + // [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1.TensorboardService.ListTensorboards] call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1.TensorboardService.ListTensorboards] must + // match the call that provided the page token. + string page_token = 4; + + // Field to use to sort the list. + string order_by = 5; + + // Mask specifying which fields to read. + google.protobuf.FieldMask read_mask = 6; +} + +// Response message for [TensorboardService.ListTensorboards][google.cloud.aiplatform.v1.TensorboardService.ListTensorboards]. +message ListTensorboardsResponse { + // The Tensorboards mathching the request. + repeated Tensorboard tensorboards = 1; + + // A token, which can be sent as [ListTensorboardsRequest.page_token][google.cloud.aiplatform.v1.ListTensorboardsRequest.page_token] + // to retrieve the next page. If this field is omitted, there are no + // subsequent pages. + string next_page_token = 2; +} + +// Request message for [TensorboardService.UpdateTensorboard][google.cloud.aiplatform.v1.TensorboardService.UpdateTensorboard]. +message UpdateTensorboardRequest { + // Required. Field mask is used to specify the fields to be overwritten in the + // Tensorboard resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then all fields will be overwritten if new + // values are specified. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The Tensorboard's `name` field is used to identify the + // Tensorboard to be updated. Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` + Tensorboard tensorboard = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [TensorboardService.DeleteTensorboard][google.cloud.aiplatform.v1.TensorboardService.DeleteTensorboard]. +message DeleteTensorboardRequest { + // Required. The name of the Tensorboard to be deleted. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Tensorboard" + } + ]; +} + +// Request message for [TensorboardService.CreateTensorboardExperiment][google.cloud.aiplatform.v1.TensorboardService.CreateTensorboardExperiment]. +message CreateTensorboardExperimentRequest { + // Required. The resource name of the Tensorboard to create the TensorboardExperiment + // in. Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardExperiment" + } + ]; + + // The TensorboardExperiment to create. + TensorboardExperiment tensorboard_experiment = 2; + + // Required. The ID to use for the Tensorboard experiment, which will become the final + // component of the Tensorboard experiment's resource name. + // + // This value should be 1-128 characters, and valid characters + // are /[a-z][0-9]-/. + string tensorboard_experiment_id = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [TensorboardService.GetTensorboardExperiment][google.cloud.aiplatform.v1.TensorboardService.GetTensorboardExperiment]. +message GetTensorboardExperimentRequest { + // Required. The name of the TensorboardExperiment resource. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardExperiment" + } + ]; +} + +// Request message for [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardExperiments]. +message ListTensorboardExperimentsRequest { + // Required. The resource name of the Tensorboard to list TensorboardExperiments. + // Format: + // 'projects/{project}/locations/{location}/tensorboards/{tensorboard}' + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/TensorboardExperiment" + } + ]; + + // Lists the TensorboardExperiments that match the filter expression. + string filter = 2; + + // The maximum number of TensorboardExperiments to return. The service may + // return fewer than this value. If unspecified, at most 50 + // TensorboardExperiments will be returned. The maximum value is 1000; values + // above 1000 will be coerced to 1000. + int32 page_size = 3; + + // A page token, received from a previous + // [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardExperiments] call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardExperiments] must + // match the call that provided the page token. + string page_token = 4; + + // Field to use to sort the list. + string order_by = 5; + + // Mask specifying which fields to read. + google.protobuf.FieldMask read_mask = 6; +} + +// Response message for [TensorboardService.ListTensorboardExperiments][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardExperiments]. +message ListTensorboardExperimentsResponse { + // The TensorboardExperiments mathching the request. + repeated TensorboardExperiment tensorboard_experiments = 1; + + // A token, which can be sent as + // [ListTensorboardExperimentsRequest.page_token][google.cloud.aiplatform.v1.ListTensorboardExperimentsRequest.page_token] to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [TensorboardService.UpdateTensorboardExperiment][google.cloud.aiplatform.v1.TensorboardService.UpdateTensorboardExperiment]. +message UpdateTensorboardExperimentRequest { + // Required. Field mask is used to specify the fields to be overwritten in the + // TensorboardExperiment resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then all fields will be overwritten if new + // values are specified. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The TensorboardExperiment's `name` field is used to identify the + // TensorboardExperiment to be updated. Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` + TensorboardExperiment tensorboard_experiment = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [TensorboardService.DeleteTensorboardExperiment][google.cloud.aiplatform.v1.TensorboardService.DeleteTensorboardExperiment]. +message DeleteTensorboardExperimentRequest { + // Required. The name of the TensorboardExperiment to be deleted. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardExperiment" + } + ]; +} + +// Request message for [TensorboardService.BatchCreateTensorboardRuns][google.cloud.aiplatform.v1.TensorboardService.BatchCreateTensorboardRuns]. +message BatchCreateTensorboardRunsRequest { + // Required. The resource name of the TensorboardExperiment to create the + // TensorboardRuns in. Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` + // The parent field in the CreateTensorboardRunRequest messages must match + // this field. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardExperiment" + } + ]; + + // Required. The request message specifying the TensorboardRuns to create. + // A maximum of 1000 TensorboardRuns can be created in a batch. + repeated CreateTensorboardRunRequest requests = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [TensorboardService.BatchCreateTensorboardRuns][google.cloud.aiplatform.v1.TensorboardService.BatchCreateTensorboardRuns]. +message BatchCreateTensorboardRunsResponse { + // The created TensorboardRuns. + repeated TensorboardRun tensorboard_runs = 1; +} + +// Request message for [TensorboardService.CreateTensorboardRun][google.cloud.aiplatform.v1.TensorboardService.CreateTensorboardRun]. +message CreateTensorboardRunRequest { + // Required. The resource name of the TensorboardExperiment to create the TensorboardRun + // in. Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardRun" + } + ]; + + // Required. The TensorboardRun to create. + TensorboardRun tensorboard_run = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The ID to use for the Tensorboard run, which will become the final + // component of the Tensorboard run's resource name. + // + // This value should be 1-128 characters, and valid characters + // are /[a-z][0-9]-/. + string tensorboard_run_id = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [TensorboardService.GetTensorboardRun][google.cloud.aiplatform.v1.TensorboardService.GetTensorboardRun]. +message GetTensorboardRunRequest { + // Required. The name of the TensorboardRun resource. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardRun" + } + ]; +} + +// Request message for [TensorboardService.ReadTensorboardBlobData][google.cloud.aiplatform.v1.TensorboardService.ReadTensorboardBlobData]. +message ReadTensorboardBlobDataRequest { + // Required. The resource name of the TensorboardTimeSeries to list Blobs. + // Format: + // 'projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}' + string time_series = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardTimeSeries" + } + ]; + + // IDs of the blobs to read. + repeated string blob_ids = 2; +} + +// Response message for [TensorboardService.ReadTensorboardBlobData][google.cloud.aiplatform.v1.TensorboardService.ReadTensorboardBlobData]. +message ReadTensorboardBlobDataResponse { + // Blob messages containing blob bytes. + repeated TensorboardBlob blobs = 1; +} + +// Request message for [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardRuns]. +message ListTensorboardRunsRequest { + // Required. The resource name of the TensorboardExperiment to list TensorboardRuns. + // Format: + // 'projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}' + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/TensorboardRun" + } + ]; + + // Lists the TensorboardRuns that match the filter expression. + string filter = 2; + + // The maximum number of TensorboardRuns to return. The service may return + // fewer than this value. If unspecified, at most 50 TensorboardRuns will be + // returned. The maximum value is 1000; values above 1000 will be coerced to + // 1000. + int32 page_size = 3; + + // A page token, received from a previous + // [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardRuns] call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardRuns] must + // match the call that provided the page token. + string page_token = 4; + + // Field to use to sort the list. + string order_by = 5; + + // Mask specifying which fields to read. + google.protobuf.FieldMask read_mask = 6; +} + +// Response message for [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardRuns]. +message ListTensorboardRunsResponse { + // The TensorboardRuns mathching the request. + repeated TensorboardRun tensorboard_runs = 1; + + // A token, which can be sent as [ListTensorboardRunsRequest.page_token][google.cloud.aiplatform.v1.ListTensorboardRunsRequest.page_token] to + // retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [TensorboardService.UpdateTensorboardRun][google.cloud.aiplatform.v1.TensorboardService.UpdateTensorboardRun]. +message UpdateTensorboardRunRequest { + // Required. Field mask is used to specify the fields to be overwritten in the + // TensorboardRun resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then all fields will be overwritten if new + // values are specified. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The TensorboardRun's `name` field is used to identify the TensorboardRun to + // be updated. Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` + TensorboardRun tensorboard_run = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [TensorboardService.DeleteTensorboardRun][google.cloud.aiplatform.v1.TensorboardService.DeleteTensorboardRun]. +message DeleteTensorboardRunRequest { + // Required. The name of the TensorboardRun to be deleted. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardRun" + } + ]; +} + +// Request message for [TensorboardService.BatchCreateTensorboardTimeSeries][google.cloud.aiplatform.v1.TensorboardService.BatchCreateTensorboardTimeSeries]. +message BatchCreateTensorboardTimeSeriesRequest { + // Required. The resource name of the TensorboardExperiment to create the + // TensorboardTimeSeries in. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` + // The TensorboardRuns referenced by the parent fields in the + // CreateTensorboardTimeSeriesRequest messages must be sub resources of this + // TensorboardExperiment. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardExperiment" + } + ]; + + // Required. The request message specifying the TensorboardTimeSeries to create. + // A maximum of 1000 TensorboardTimeSeries can be created in a batch. + repeated CreateTensorboardTimeSeriesRequest requests = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [TensorboardService.BatchCreateTensorboardTimeSeries][google.cloud.aiplatform.v1.TensorboardService.BatchCreateTensorboardTimeSeries]. +message BatchCreateTensorboardTimeSeriesResponse { + // The created TensorboardTimeSeries. + repeated TensorboardTimeSeries tensorboard_time_series = 1; +} + +// Request message for [TensorboardService.CreateTensorboardTimeSeries][google.cloud.aiplatform.v1.TensorboardService.CreateTensorboardTimeSeries]. +message CreateTensorboardTimeSeriesRequest { + // Required. The resource name of the TensorboardRun to create the + // TensorboardTimeSeries in. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardTimeSeries" + } + ]; + + // Optional. The user specified unique ID to use for the TensorboardTimeSeries, which + // will become the final component of the TensorboardTimeSeries's resource + // name. + // This value should match "[a-z0-9][a-z0-9-]{0, 127}" + string tensorboard_time_series_id = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The TensorboardTimeSeries to create. + TensorboardTimeSeries tensorboard_time_series = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [TensorboardService.GetTensorboardTimeSeries][google.cloud.aiplatform.v1.TensorboardService.GetTensorboardTimeSeries]. +message GetTensorboardTimeSeriesRequest { + // Required. The name of the TensorboardTimeSeries resource. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardTimeSeries" + } + ]; +} + +// Request message for [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardTimeSeries]. +message ListTensorboardTimeSeriesRequest { + // Required. The resource name of the TensorboardRun to list TensorboardTimeSeries. + // Format: + // 'projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}' + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/TensorboardTimeSeries" + } + ]; + + // Lists the TensorboardTimeSeries that match the filter expression. + string filter = 2; + + // The maximum number of TensorboardTimeSeries to return. The service may + // return fewer than this value. If unspecified, at most 50 + // TensorboardTimeSeries will be returned. The maximum value is 1000; values + // above 1000 will be coerced to 1000. + int32 page_size = 3; + + // A page token, received from a previous + // [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardTimeSeries] call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardTimeSeries] must + // match the call that provided the page token. + string page_token = 4; + + // Field to use to sort the list. + string order_by = 5; + + // Mask specifying which fields to read. + google.protobuf.FieldMask read_mask = 6; +} + +// Response message for [TensorboardService.ListTensorboardTimeSeries][google.cloud.aiplatform.v1.TensorboardService.ListTensorboardTimeSeries]. +message ListTensorboardTimeSeriesResponse { + // The TensorboardTimeSeries mathching the request. + repeated TensorboardTimeSeries tensorboard_time_series = 1; + + // A token, which can be sent as + // [ListTensorboardTimeSeriesRequest.page_token][google.cloud.aiplatform.v1.ListTensorboardTimeSeriesRequest.page_token] to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [TensorboardService.UpdateTensorboardTimeSeries][google.cloud.aiplatform.v1.TensorboardService.UpdateTensorboardTimeSeries]. +message UpdateTensorboardTimeSeriesRequest { + // Required. Field mask is used to specify the fields to be overwritten in the + // TensorboardTimeSeries resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then all fields will be overwritten if new + // values are specified. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The TensorboardTimeSeries' `name` field is used to identify the + // TensorboardTimeSeries to be updated. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` + TensorboardTimeSeries tensorboard_time_series = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [TensorboardService.DeleteTensorboardTimeSeries][google.cloud.aiplatform.v1.TensorboardService.DeleteTensorboardTimeSeries]. +message DeleteTensorboardTimeSeriesRequest { + // Required. The name of the TensorboardTimeSeries to be deleted. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardTimeSeries" + } + ]; +} + +// Request message for +// [TensorboardService.BatchReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1.TensorboardService.BatchReadTensorboardTimeSeriesData]. +message BatchReadTensorboardTimeSeriesDataRequest { + // Required. The resource name of the Tensorboard containing TensorboardTimeSeries to + // read data from. Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}`. + // The TensorboardTimeSeries referenced by [time_series][google.cloud.aiplatform.v1.BatchReadTensorboardTimeSeriesDataRequest.time_series] must be sub + // resources of this Tensorboard. + string tensorboard = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Tensorboard" + } + ]; + + // Required. The resource names of the TensorboardTimeSeries to read data from. Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` + repeated string time_series = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardTimeSeries" + } + ]; +} + +// Response message for +// [TensorboardService.BatchReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1.TensorboardService.BatchReadTensorboardTimeSeriesData]. +message BatchReadTensorboardTimeSeriesDataResponse { + // The returned time series data. + repeated TimeSeriesData time_series_data = 1; +} + +// Request message for [TensorboardService.ReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1.TensorboardService.ReadTensorboardTimeSeriesData]. +message ReadTensorboardTimeSeriesDataRequest { + // Required. The resource name of the TensorboardTimeSeries to read data from. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` + string tensorboard_time_series = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardTimeSeries" + } + ]; + + // The maximum number of TensorboardTimeSeries' data to return. + // + // This value should be a positive integer. + // This value can be set to -1 to return all data. + int32 max_data_points = 2; + + // Reads the TensorboardTimeSeries' data that match the filter expression. + string filter = 3; +} + +// Response message for [TensorboardService.ReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1.TensorboardService.ReadTensorboardTimeSeriesData]. +message ReadTensorboardTimeSeriesDataResponse { + // The returned time series data. + TimeSeriesData time_series_data = 1; +} + +// Request message for [TensorboardService.WriteTensorboardExperimentData][google.cloud.aiplatform.v1.TensorboardService.WriteTensorboardExperimentData]. +message WriteTensorboardExperimentDataRequest { + // Required. The resource name of the TensorboardExperiment to write data to. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` + string tensorboard_experiment = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardExperiment" + } + ]; + + // Required. Requests containing per-run TensorboardTimeSeries data to write. + repeated WriteTensorboardRunDataRequest write_run_data_requests = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [TensorboardService.WriteTensorboardExperimentData][google.cloud.aiplatform.v1.TensorboardService.WriteTensorboardExperimentData]. +message WriteTensorboardExperimentDataResponse { + +} + +// Request message for [TensorboardService.WriteTensorboardRunData][google.cloud.aiplatform.v1.TensorboardService.WriteTensorboardRunData]. +message WriteTensorboardRunDataRequest { + // Required. The resource name of the TensorboardRun to write data to. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}` + string tensorboard_run = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardRun" + } + ]; + + // Required. The TensorboardTimeSeries data to write. + // Values with in a time series are indexed by their step value. + // Repeated writes to the same step will overwrite the existing value for that + // step. + // The upper limit of data points per write request is 5000. + repeated TimeSeriesData time_series_data = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [TensorboardService.WriteTensorboardRunData][google.cloud.aiplatform.v1.TensorboardService.WriteTensorboardRunData]. +message WriteTensorboardRunDataResponse { + +} + +// Request message for [TensorboardService.ExportTensorboardTimeSeriesData][google.cloud.aiplatform.v1.TensorboardService.ExportTensorboardTimeSeriesData]. +message ExportTensorboardTimeSeriesDataRequest { + // Required. The resource name of the TensorboardTimeSeries to export data from. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` + string tensorboard_time_series = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardTimeSeries" + } + ]; + + // Exports the TensorboardTimeSeries' data that match the filter expression. + string filter = 2; + + // The maximum number of data points to return per page. + // The default page_size will be 1000. Values must be between 1 and 10000. + // Values above 10000 will be coerced to 10000. + int32 page_size = 3; + + // A page token, received from a previous + // [TensorboardService.ExportTensorboardTimeSeries][] call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // [TensorboardService.ExportTensorboardTimeSeries][] must + // match the call that provided the page token. + string page_token = 4; + + // Field to use to sort the TensorboardTimeSeries' data. + // By default, TensorboardTimeSeries' data will be returned in a pseudo random + // order. + string order_by = 5; +} + +// Response message for [TensorboardService.ExportTensorboardTimeSeriesData][google.cloud.aiplatform.v1.TensorboardService.ExportTensorboardTimeSeriesData]. +message ExportTensorboardTimeSeriesDataResponse { + // The returned time series data points. + repeated TimeSeriesDataPoint time_series_data_points = 1; + + // A token, which can be sent as + // [ExportTensorboardTimeSeriesRequest.page_token][] to retrieve the next + // page. If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Details of operations that perform create Tensorboard. +message CreateTensorboardOperationMetadata { + // Operation metadata for Tensorboard. + GenericOperationMetadata generic_metadata = 1; +} + +// Details of operations that perform update Tensorboard. +message UpdateTensorboardOperationMetadata { + // Operation metadata for Tensorboard. + GenericOperationMetadata generic_metadata = 1; +} diff --git a/google/cloud/aiplatform/v1/tensorboard_time_series.proto b/google/cloud/aiplatform/v1/tensorboard_time_series.proto new file mode 100644 index 000000000..801d7883a --- /dev/null +++ b/google/cloud/aiplatform/v1/tensorboard_time_series.proto @@ -0,0 +1,107 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "TensorboardTimeSeriesProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// TensorboardTimeSeries maps to times series produced in training runs +message TensorboardTimeSeries { + option (google.api.resource) = { + type: "aiplatform.googleapis.com/TensorboardTimeSeries" + pattern: "projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}" + }; + + // Describes metadata for a TensorboardTimeSeries. + message Metadata { + // Output only. Max step index of all data points within a TensorboardTimeSeries. + int64 max_step = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Max wall clock timestamp of all data points within a + // TensorboardTimeSeries. + google.protobuf.Timestamp max_wall_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The largest blob sequence length (number of blobs) of all data points in + // this time series, if its ValueType is BLOB_SEQUENCE. + int64 max_blob_sequence_length = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // An enum representing the value type of a TensorboardTimeSeries. + enum ValueType { + // The value type is unspecified. + VALUE_TYPE_UNSPECIFIED = 0; + + // Used for TensorboardTimeSeries that is a list of scalars. + // E.g. accuracy of a model over epochs/time. + SCALAR = 1; + + // Used for TensorboardTimeSeries that is a list of tensors. + // E.g. histograms of weights of layer in a model over epoch/time. + TENSOR = 2; + + // Used for TensorboardTimeSeries that is a list of blob sequences. + // E.g. set of sample images with labels over epochs/time. + BLOB_SEQUENCE = 3; + } + + // Output only. Name of the TensorboardTimeSeries. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. User provided name of this TensorboardTimeSeries. + // This value should be unique among all TensorboardTimeSeries resources + // belonging to the same TensorboardRun resource (parent resource). + string display_name = 2 [(google.api.field_behavior) = REQUIRED]; + + // Description of this TensorboardTimeSeries. + string description = 3; + + // Required. Immutable. Type of TensorboardTimeSeries value. + ValueType value_type = 4 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Output only. Timestamp when this TensorboardTimeSeries was created. + google.protobuf.Timestamp create_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Timestamp when this TensorboardTimeSeries was last updated. + google.protobuf.Timestamp update_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Used to perform a consistent read-modify-write updates. If not set, a blind + // "overwrite" update happens. + string etag = 7; + + // Immutable. Name of the plugin this time series pertain to. Such as Scalar, Tensor, + // Blob + string plugin_name = 8 [(google.api.field_behavior) = IMMUTABLE]; + + // Data of the current plugin, with the size limited to 65KB. + bytes plugin_data = 9; + + // Output only. Scalar, Tensor, or Blob metadata for this TensorboardTimeSeries. + Metadata metadata = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/cloud/aiplatform/v1/training_pipeline.proto b/google/cloud/aiplatform/v1/training_pipeline.proto index 8ac39343c..a2062815b 100644 --- a/google/cloud/aiplatform/v1/training_pipeline.proto +++ b/google/cloud/aiplatform/v1/training_pipeline.proto @@ -29,10 +29,13 @@ import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "TrainingPipelineProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // The TrainingPipeline orchestrates tasks associated with training a Model. It // always executes the training task, and optionally may also @@ -157,6 +160,11 @@ message InputDataConfig { // // Split based on the timestamp of the input data pieces. TimestampSplit timestamp_split = 5; + + // Supported only for tabular Datasets. + // + // Split based on the distribution of the specified column. + StratifiedSplit stratified_split = 12; } // Only applicable to Custom and Hyperparameter Tuning TrainingPipelines. @@ -349,3 +357,35 @@ message TimestampSplit { // present or has an invalid value, that piece is ignored by the pipeline. string key = 4 [(google.api.field_behavior) = REQUIRED]; } + +// Assigns input data to the training, validation, and test sets so that the +// distribution of values found in the categorical column (as specified by the +// `key` field) is mirrored within each split. The fraction values determine +// the relative sizes of the splits. +// +// For example, if the specified column has three values, with 50% of the rows +// having value "A", 25% value "B", and 25% value "C", and the split fractions +// are specified as 80/10/10, then the training set will constitute 80% of the +// training data, with about 50% of the training set rows having the value "A" +// for the specified column, about 25% having the value "B", and about 25% +// having the value "C". +// +// Only the top 500 occurring values are used; any values not in the top +// 500 values are randomly assigned to a split. If less than three rows contain +// a specific value, those rows are randomly assigned. +// +// Supported only for tabular Datasets. +message StratifiedSplit { + // The fraction of the input data that is to be used to train the Model. + double training_fraction = 1; + + // The fraction of the input data that is to be used to validate the Model. + double validation_fraction = 2; + + // The fraction of the input data that is to be used to evaluate the Model. + double test_fraction = 3; + + // Required. The key is a name of one of the Dataset's data columns. + // The key provided must be for a categorical column. + string key = 4 [(google.api.field_behavior) = REQUIRED]; +} diff --git a/google/cloud/aiplatform/v1/types.proto b/google/cloud/aiplatform/v1/types.proto new file mode 100644 index 000000000..34cf10ca7 --- /dev/null +++ b/google/cloud/aiplatform/v1/types.proto @@ -0,0 +1,51 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "TypesProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// A list of boolean values. +message BoolArray { + // A list of bool values. + repeated bool values = 1; +} + +// A list of double values. +message DoubleArray { + // A list of bool values. + repeated double values = 1; +} + +// A list of int64 values. +message Int64Array { + // A list of int64 values. + repeated int64 values = 1; +} + +// A list of string values. +message StringArray { + // A list of string values. + repeated string values = 1; +} diff --git a/google/cloud/aiplatform/v1/unmanaged_container_model.proto b/google/cloud/aiplatform/v1/unmanaged_container_model.proto new file mode 100644 index 000000000..04d13ddb0 --- /dev/null +++ b/google/cloud/aiplatform/v1/unmanaged_container_model.proto @@ -0,0 +1,44 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/field_behavior.proto"; +import "google/cloud/aiplatform/v1/model.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "UnmanagedContainerModelProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Contains model information necessary to perform batch prediction without +// requiring a full model import. +message UnmanagedContainerModel { + // The path to the directory containing the Model artifact and any of its + // supporting files. + string artifact_uri = 1; + + // Contains the schemata used in Model's predictions and explanations + PredictSchemata predict_schemata = 2; + + // Input only. The specification of the container that is to be used when deploying + // this Model. + ModelContainerSpec container_spec = 3 [(google.api.field_behavior) = INPUT_ONLY]; +} diff --git a/google/cloud/aiplatform/v1/user_action_reference.proto b/google/cloud/aiplatform/v1/user_action_reference.proto index 5e804e0d2..ffafed034 100644 --- a/google/cloud/aiplatform/v1/user_action_reference.proto +++ b/google/cloud/aiplatform/v1/user_action_reference.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "UserActionReferenceProto"; option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; // References an API call. It contains more information about long running // operation and Jobs that are triggered by the API call. diff --git a/google/cloud/aiplatform/v1/value.proto b/google/cloud/aiplatform/v1/value.proto new file mode 100644 index 000000000..48607bf95 --- /dev/null +++ b/google/cloud/aiplatform/v1/value.proto @@ -0,0 +1,41 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "ValueProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Value is the value of the field. +message Value { + oneof value { + // An integer value. + int64 int_value = 1; + + // A double value. + double double_value = 2; + + // A string value. + string string_value = 3; + } +} diff --git a/google/cloud/aiplatform/v1/vizier_service.proto b/google/cloud/aiplatform/v1/vizier_service.proto new file mode 100644 index 000000000..7cad3be13 --- /dev/null +++ b/google/cloud/aiplatform/v1/vizier_service.proto @@ -0,0 +1,505 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1/operation.proto"; +import "google/cloud/aiplatform/v1/study.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/empty.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "VizierServiceProto"; +option java_package = "com.google.cloud.aiplatform.v1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1"; +option ruby_package = "Google::Cloud::AIPlatform::V1"; + +// Vertex AI Vizier API. +// +// Vertex AI Vizier is a service to solve blackbox optimization problems, +// such as tuning machine learning hyperparameters and searching over deep +// learning architectures. +service VizierService { + option (google.api.default_host) = "aiplatform.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Creates a Study. A resource name will be generated after creation of the + // Study. + rpc CreateStudy(CreateStudyRequest) returns (Study) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/studies" + body: "study" + }; + option (google.api.method_signature) = "parent,study"; + } + + // Gets a Study by name. + rpc GetStudy(GetStudyRequest) returns (Study) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/studies/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists all the studies in a region for an associated project. + rpc ListStudies(ListStudiesRequest) returns (ListStudiesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/studies" + }; + option (google.api.method_signature) = "parent"; + } + + // Deletes a Study. + rpc DeleteStudy(DeleteStudyRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/studies/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Looks a study up using the user-defined display_name field instead of the + // fully qualified resource name. + rpc LookupStudy(LookupStudyRequest) returns (Study) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/studies:lookup" + body: "*" + }; + option (google.api.method_signature) = "parent"; + } + + // Adds one or more Trials to a Study, with parameter values + // suggested by Vertex AI Vizier. Returns a long-running + // operation associated with the generation of Trial suggestions. + // When this long-running operation succeeds, it will contain + // a [SuggestTrialsResponse][google.cloud.ml.v1.SuggestTrialsResponse]. + rpc SuggestTrials(SuggestTrialsRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/studies/*}/trials:suggest" + body: "*" + }; + option (google.longrunning.operation_info) = { + response_type: "SuggestTrialsResponse" + metadata_type: "SuggestTrialsMetadata" + }; + } + + // Adds a user provided Trial to a Study. + rpc CreateTrial(CreateTrialRequest) returns (Trial) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/studies/*}/trials" + body: "trial" + }; + option (google.api.method_signature) = "parent,trial"; + } + + // Gets a Trial. + rpc GetTrial(GetTrialRequest) returns (Trial) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/studies/*/trials/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists the Trials associated with a Study. + rpc ListTrials(ListTrialsRequest) returns (ListTrialsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/studies/*}/trials" + }; + option (google.api.method_signature) = "parent"; + } + + // Adds a measurement of the objective metrics to a Trial. This measurement + // is assumed to have been taken before the Trial is complete. + rpc AddTrialMeasurement(AddTrialMeasurementRequest) returns (Trial) { + option (google.api.http) = { + post: "/v1/{trial_name=projects/*/locations/*/studies/*/trials/*}:addTrialMeasurement" + body: "*" + }; + } + + // Marks a Trial as complete. + rpc CompleteTrial(CompleteTrialRequest) returns (Trial) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*/studies/*/trials/*}:complete" + body: "*" + }; + } + + // Deletes a Trial. + rpc DeleteTrial(DeleteTrialRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/studies/*/trials/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Checks whether a Trial should stop or not. Returns a + // long-running operation. When the operation is successful, + // it will contain a + // [CheckTrialEarlyStoppingStateResponse][google.cloud.ml.v1.CheckTrialEarlyStoppingStateResponse]. + rpc CheckTrialEarlyStoppingState(CheckTrialEarlyStoppingStateRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{trial_name=projects/*/locations/*/studies/*/trials/*}:checkTrialEarlyStoppingState" + body: "*" + }; + option (google.longrunning.operation_info) = { + response_type: "CheckTrialEarlyStoppingStateResponse" + metadata_type: "CheckTrialEarlyStoppingStateMetatdata" + }; + } + + // Stops a Trial. + rpc StopTrial(StopTrialRequest) returns (Trial) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*/studies/*/trials/*}:stop" + body: "*" + }; + } + + // Lists the pareto-optimal Trials for multi-objective Study or the + // optimal Trials for single-objective Study. The definition of + // pareto-optimal can be checked in wiki page. + // https://en.wikipedia.org/wiki/Pareto_efficiency + rpc ListOptimalTrials(ListOptimalTrialsRequest) returns (ListOptimalTrialsResponse) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/studies/*}/trials:listOptimalTrials" + body: "*" + }; + option (google.api.method_signature) = "parent"; + } +} + +// Request message for [VizierService.GetStudy][google.cloud.aiplatform.v1.VizierService.GetStudy]. +message GetStudyRequest { + // Required. The name of the Study resource. + // Format: `projects/{project}/locations/{location}/studies/{study}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Study" + } + ]; +} + +// Request message for [VizierService.CreateStudy][google.cloud.aiplatform.v1.VizierService.CreateStudy]. +message CreateStudyRequest { + // Required. The resource name of the Location to create the CustomJob in. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The Study configuration used to create the Study. + Study study = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [VizierService.ListStudies][google.cloud.aiplatform.v1.VizierService.ListStudies]. +message ListStudiesRequest { + // Required. The resource name of the Location to list the Study from. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Optional. A page token to request the next page of results. + // If unspecified, there are no subsequent pages. + string page_token = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The maximum number of studies to return per "page" of results. + // If unspecified, service will pick an appropriate default. + int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for [VizierService.ListStudies][google.cloud.aiplatform.v1.VizierService.ListStudies]. +message ListStudiesResponse { + // The studies associated with the project. + repeated Study studies = 1; + + // Passes this token as the `page_token` field of the request for a + // subsequent call. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [VizierService.DeleteStudy][google.cloud.aiplatform.v1.VizierService.DeleteStudy]. +message DeleteStudyRequest { + // Required. The name of the Study resource to be deleted. + // Format: `projects/{project}/locations/{location}/studies/{study}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Study" + } + ]; +} + +// Request message for [VizierService.LookupStudy][google.cloud.aiplatform.v1.VizierService.LookupStudy]. +message LookupStudyRequest { + // Required. The resource name of the Location to get the Study from. + // Format: `projects/{project}/locations/{location}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The user-defined display name of the Study + string display_name = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [VizierService.SuggestTrials][google.cloud.aiplatform.v1.VizierService.SuggestTrials]. +message SuggestTrialsRequest { + // Required. The project and location that the Study belongs to. + // Format: `projects/{project}/locations/{location}/studies/{study}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Study" + } + ]; + + // Required. The number of suggestions requested. + int32 suggestion_count = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The identifier of the client that is requesting the suggestion. + // + // If multiple SuggestTrialsRequests have the same `client_id`, + // the service will return the identical suggested Trial if the Trial is + // pending, and provide a new Trial if the last suggested Trial was completed. + string client_id = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [VizierService.SuggestTrials][google.cloud.aiplatform.v1.VizierService.SuggestTrials]. +message SuggestTrialsResponse { + // A list of Trials. + repeated Trial trials = 1; + + // The state of the Study. + Study.State study_state = 2; + + // The time at which the operation was started. + google.protobuf.Timestamp start_time = 3; + + // The time at which operation processing completed. + google.protobuf.Timestamp end_time = 4; +} + +// Details of operations that perform Trials suggestion. +message SuggestTrialsMetadata { + // Operation metadata for suggesting Trials. + GenericOperationMetadata generic_metadata = 1; + + // The identifier of the client that is requesting the suggestion. + // + // If multiple SuggestTrialsRequests have the same `client_id`, + // the service will return the identical suggested Trial if the Trial is + // pending, and provide a new Trial if the last suggested Trial was completed. + string client_id = 2; +} + +// Request message for [VizierService.CreateTrial][google.cloud.aiplatform.v1.VizierService.CreateTrial]. +message CreateTrialRequest { + // Required. The resource name of the Study to create the Trial in. + // Format: `projects/{project}/locations/{location}/studies/{study}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Study" + } + ]; + + // Required. The Trial to create. + Trial trial = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [VizierService.GetTrial][google.cloud.aiplatform.v1.VizierService.GetTrial]. +message GetTrialRequest { + // Required. The name of the Trial resource. + // Format: + // `projects/{project}/locations/{location}/studies/{study}/trials/{trial}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Trial" + } + ]; +} + +// Request message for [VizierService.ListTrials][google.cloud.aiplatform.v1.VizierService.ListTrials]. +message ListTrialsRequest { + // Required. The resource name of the Study to list the Trial from. + // Format: `projects/{project}/locations/{location}/studies/{study}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Study" + } + ]; + + // Optional. A page token to request the next page of results. + // If unspecified, there are no subsequent pages. + string page_token = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The number of Trials to retrieve per "page" of results. + // If unspecified, the service will pick an appropriate default. + int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for [VizierService.ListTrials][google.cloud.aiplatform.v1.VizierService.ListTrials]. +message ListTrialsResponse { + // The Trials associated with the Study. + repeated Trial trials = 1; + + // Pass this token as the `page_token` field of the request for a + // subsequent call. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for [VizierService.AddTrialMeasurement][google.cloud.aiplatform.v1.VizierService.AddTrialMeasurement]. +message AddTrialMeasurementRequest { + // Required. The name of the trial to add measurement. + // Format: + // `projects/{project}/locations/{location}/studies/{study}/trials/{trial}` + string trial_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Trial" + } + ]; + + // Required. The measurement to be added to a Trial. + Measurement measurement = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [VizierService.CompleteTrial][google.cloud.aiplatform.v1.VizierService.CompleteTrial]. +message CompleteTrialRequest { + // Required. The Trial's name. + // Format: + // `projects/{project}/locations/{location}/studies/{study}/trials/{trial}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Trial" + } + ]; + + // Optional. If provided, it will be used as the completed Trial's + // final_measurement; Otherwise, the service will auto-select a + // previously reported measurement as the final-measurement + Measurement final_measurement = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. True if the Trial cannot be run with the given Parameter, and + // final_measurement will be ignored. + bool trial_infeasible = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A human readable reason why the trial was infeasible. This should + // only be provided if `trial_infeasible` is true. + string infeasible_reason = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for [VizierService.DeleteTrial][google.cloud.aiplatform.v1.VizierService.DeleteTrial]. +message DeleteTrialRequest { + // Required. The Trial's name. + // Format: + // `projects/{project}/locations/{location}/studies/{study}/trials/{trial}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Trial" + } + ]; +} + +// Request message for [VizierService.CheckTrialEarlyStoppingState][google.cloud.aiplatform.v1.VizierService.CheckTrialEarlyStoppingState]. +message CheckTrialEarlyStoppingStateRequest { + // Required. The Trial's name. + // Format: + // `projects/{project}/locations/{location}/studies/{study}/trials/{trial}` + string trial_name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Trial" + } + ]; +} + +// Response message for [VizierService.CheckTrialEarlyStoppingState][google.cloud.aiplatform.v1.VizierService.CheckTrialEarlyStoppingState]. +message CheckTrialEarlyStoppingStateResponse { + // True if the Trial should stop. + bool should_stop = 1; +} + +// This message will be placed in the metadata field of a +// google.longrunning.Operation associated with a CheckTrialEarlyStoppingState +// request. +message CheckTrialEarlyStoppingStateMetatdata { + // Operation metadata for suggesting Trials. + GenericOperationMetadata generic_metadata = 1; + + // The name of the Study that the Trial belongs to. + string study = 2; + + // The Trial name. + string trial = 3; +} + +// Request message for [VizierService.StopTrial][google.cloud.aiplatform.v1.VizierService.StopTrial]. +message StopTrialRequest { + // Required. The Trial's name. + // Format: + // `projects/{project}/locations/{location}/studies/{study}/trials/{trial}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Trial" + } + ]; +} + +// Request message for [VizierService.ListOptimalTrials][google.cloud.aiplatform.v1.VizierService.ListOptimalTrials]. +message ListOptimalTrialsRequest { + // Required. The name of the Study that the optimal Trial belongs to. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Study" + } + ]; +} + +// Response message for [VizierService.ListOptimalTrials][google.cloud.aiplatform.v1.VizierService.ListOptimalTrials]. +message ListOptimalTrialsResponse { + // The pareto-optimal Trials for multiple objective Study or the + // optimal trial for single objective Study. The definition of + // pareto-optimal can be checked in wiki page. + // https://en.wikipedia.org/wiki/Pareto_efficiency + repeated Trial optimal_trials = 1; +} diff --git a/google/cloud/aiplatform/v1beta1/BUILD.bazel b/google/cloud/aiplatform/v1beta1/BUILD.bazel index eff6abf16..86288344e 100644 --- a/google/cloud/aiplatform/v1beta1/BUILD.bazel +++ b/google/cloud/aiplatform/v1beta1/BUILD.bazel @@ -89,6 +89,7 @@ proto_library( "tensorboard_time_series.proto", "training_pipeline.proto", "types.proto", + "unmanaged_container_model.proto", "user_action_reference.proto", "value.proto", "vizier_service.proto", @@ -97,6 +98,7 @@ proto_library( "//google/api:annotations_proto", "//google/api:client_proto", "//google/api:field_behavior_proto", + "//google/api:httpbody_proto", "//google/api:resource_proto", "//google/longrunning:operations_proto", "//google/rpc:status_proto", @@ -164,6 +166,7 @@ java_gapic_library( ] + _JAVA_GRPC_SUBPACKAGE_DEPS, deps = [ ":aiplatform_java_proto", + "//google/api:api_java_proto", ] + _JAVA_PROTO_SUBPACKAGE_DEPS, ) @@ -212,6 +215,7 @@ go_proto_library( protos = [":aiplatform_proto"], deps = [ "//google/api:annotations_go_proto", + "//google/api:httpbody_go_proto", "//google/longrunning:longrunning_go_proto", "//google/rpc:status_go_proto", "//google/type:money_go_proto", @@ -223,9 +227,11 @@ go_gapic_library( srcs = [":aiplatform_proto_with_info"], grpc_service_config = "aiplatform_grpc_service_config.json", importpath = "cloud.google.com/go/aiplatform/apiv1beta1;aiplatform", + metadata = True, service_yaml = "aiplatform_v1beta1.yaml", deps = [ ":aiplatform_go_proto", + "//google/api:httpbody_go_proto", "//google/longrunning:longrunning_go_proto", "@com_google_cloud_go//longrunning:go_default_library", "@com_google_cloud_go//longrunning/autogen:go_default_library", @@ -246,6 +252,7 @@ go_gapic_assembly_pkg( name = "gapi-cloud-aiplatform-v1beta1-go", deps = [ ":aiplatform_go_gapic", + ":aiplatform_go_gapic_srcjar-metadata.srcjar", ":aiplatform_go_gapic_srcjar-test.srcjar", ":aiplatform_go_proto", ], @@ -283,14 +290,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -308,6 +314,7 @@ php_gapic_library( name = "aiplatform_php_gapic", srcs = [":aiplatform_proto_with_info"], grpc_service_config = "aiplatform_grpc_service_config.json", + service_yaml = "aiplatform_v1beta1.yaml", deps = [ ":aiplatform_php_grpc", ":aiplatform_php_proto", @@ -417,7 +424,6 @@ csharp_grpc_library( deps = [":aiplatform_csharp_proto"], ) - ################################ # Keep C# targets commented out through the regeneration, as C# gen has an issue # with the aiplatform v1beta1 protos diff --git a/google/cloud/aiplatform/v1beta1/accelerator_type.proto b/google/cloud/aiplatform/v1beta1/accelerator_type.proto index 612becf55..92b01fae6 100644 --- a/google/cloud/aiplatform/v1beta1/accelerator_type.proto +++ b/google/cloud/aiplatform/v1beta1/accelerator_type.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1beta1; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "AcceleratorTypeProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Represents a hardware accelerator type. enum AcceleratorType { diff --git a/google/cloud/aiplatform/v1beta1/aiplatform_v1beta1.yaml b/google/cloud/aiplatform/v1beta1/aiplatform_v1beta1.yaml index 294166692..655aa9699 100644 --- a/google/cloud/aiplatform/v1beta1/aiplatform_v1beta1.yaml +++ b/google/cloud/aiplatform/v1beta1/aiplatform_v1beta1.yaml @@ -55,6 +55,14 @@ types: - name: google.cloud.aiplatform.v1beta1.ImportDataResponse - name: google.cloud.aiplatform.v1beta1.ImportFeatureValuesOperationMetadata - name: google.cloud.aiplatform.v1beta1.ImportFeatureValuesResponse +- name: google.cloud.aiplatform.v1beta1.MutateDeployedIndexOperationMetadata +- name: google.cloud.aiplatform.v1beta1.MutateDeployedIndexResponse +- name: google.cloud.aiplatform.v1beta1.PurgeArtifactsMetadata +- name: google.cloud.aiplatform.v1beta1.PurgeArtifactsResponse +- name: google.cloud.aiplatform.v1beta1.PurgeContextsMetadata +- name: google.cloud.aiplatform.v1beta1.PurgeContextsResponse +- name: google.cloud.aiplatform.v1beta1.PurgeExecutionsMetadata +- name: google.cloud.aiplatform.v1beta1.PurgeExecutionsResponse - name: google.cloud.aiplatform.v1beta1.SpecialistPool - name: google.cloud.aiplatform.v1beta1.SuggestTrialsMetadata - name: google.cloud.aiplatform.v1beta1.SuggestTrialsResponse @@ -77,11 +85,6 @@ documentation: summary: |- Train high-quality custom machine learning models with minimal machine learning expertise and effort. - overview: |- - Vertex AI enables data scientists, developers, and AI newcomers to create - custom machine learning models specific to their business needs by - leveraging Google's state-of-the-art transfer learning and innovative AI - research. rules: - selector: google.cloud.location.Locations.GetLocation description: Gets information about a location. @@ -89,6 +92,29 @@ documentation: - selector: google.cloud.location.Locations.ListLocations description: Lists information about the supported locations for this service. + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + description: |- + Gets the access control policy for a resource. Returns an empty policy + if the resource exists and does not have a policy set. + + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + description: |- + Sets the access control policy on the specified resource. Replaces + any existing policy. + + Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` + errors. + + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + description: |- + Returns permissions that a caller has on the specified resource. If the + resource does not exist, this will return an empty set of + permissions, not a `NOT_FOUND` error. + + Note: This operation is designed to be used for building + permission-aware UIs and command-line tools, not for authorization + checking. This operation may "fail open" without warning. + backend: rules: - selector: 'google.cloud.aiplatform.v1beta1.DatasetService.*' @@ -117,9 +143,7 @@ backend: deadline: 60.0 - selector: 'google.cloud.aiplatform.v1beta1.PipelineService.*' deadline: 60.0 - - selector: google.cloud.aiplatform.v1beta1.PredictionService.Explain - deadline: 600.0 - - selector: google.cloud.aiplatform.v1beta1.PredictionService.Predict + - selector: 'google.cloud.aiplatform.v1beta1.PredictionService.*' deadline: 600.0 - selector: 'google.cloud.aiplatform.v1beta1.SpecialistPoolService.*' deadline: 60.0 @@ -131,6 +155,8 @@ backend: deadline: 30.0 - selector: google.cloud.location.Locations.ListLocations deadline: 30.0 + - selector: 'google.iam.v1.IAMPolicy.*' + deadline: 60.0 - selector: 'google.longrunning.Operations.*' deadline: 60.0 @@ -144,6 +170,14 @@ http: get: '/ui/{name=projects/*}/locations' additional_bindings: - get: '/v1beta1/{name=projects/*}/locations' + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + get: '/v1beta1/{resource=projects/*/locations/*/**}:getIamPolicy' + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + post: '/v1beta1/{resource=projects/*/locations/*/**}:setIamPolicy' + body: '*' + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + post: '/v1beta1/{resource=projects/*/locations/*/**}:testIamPermissions' + body: '*' - selector: google.longrunning.Operations.CancelOperation post: '/ui/{name=projects/*/locations/*/operations/*}:cancel' additional_bindings: @@ -152,6 +186,7 @@ http: - post: '/ui/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}:cancel' - post: '/ui/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}:cancel' - post: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}:cancel' + - post: '/ui/{name=projects/*/locations/*/edgeDevices/*/operations/*}:cancel' - post: '/ui/{name=projects/*/locations/*/endpoints/*/operations/*}:cancel' - post: '/ui/{name=projects/*/locations/*/featurestores/*/operations/*}:cancel' - post: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}:cancel' @@ -180,6 +215,7 @@ http: - post: '/v1beta1/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}:cancel' - post: '/v1beta1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}:cancel' - post: '/v1beta1/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}:cancel' + - post: '/v1beta1/{name=projects/*/locations/*/edgeDevices/*/operations/*}:cancel' - post: '/v1beta1/{name=projects/*/locations/*/endpoints/*/operations/*}:cancel' - post: '/v1beta1/{name=projects/*/locations/*/featurestores/*/operations/*}:cancel' - post: '/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}:cancel' @@ -210,6 +246,7 @@ http: - delete: '/ui/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}' - delete: '/ui/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}' - delete: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}' + - delete: '/ui/{name=projects/*/locations/*/edgeDevices/*/operations/*}' - delete: '/ui/{name=projects/*/locations/*/endpoints/*/operations/*}' - delete: '/ui/{name=projects/*/locations/*/featurestores/*/operations/*}' - delete: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}' @@ -238,6 +275,7 @@ http: - delete: '/v1beta1/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}' - delete: '/v1beta1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}' - delete: '/v1beta1/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}' + - delete: '/v1beta1/{name=projects/*/locations/*/edgeDevices/*/operations/*}' - delete: '/v1beta1/{name=projects/*/locations/*/endpoints/*/operations/*}' - delete: '/v1beta1/{name=projects/*/locations/*/featurestores/*/operations/*}' - delete: '/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}' @@ -268,6 +306,8 @@ http: - get: '/ui/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}' - get: '/ui/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}' - get: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/edgeDeploymentJobs/*/operations/*}' + - get: '/ui/{name=projects/*/locations/*/edgeDevices/*/operations/*}' - get: '/ui/{name=projects/*/locations/*/endpoints/*/operations/*}' - get: '/ui/{name=projects/*/locations/*/featurestores/*/operations/*}' - get: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}' @@ -296,6 +336,7 @@ http: - get: '/v1beta1/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}' - get: '/v1beta1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}' - get: '/v1beta1/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}' + - get: '/v1beta1/{name=projects/*/locations/*/edgeDevices/*/operations/*}' - get: '/v1beta1/{name=projects/*/locations/*/endpoints/*/operations/*}' - get: '/v1beta1/{name=projects/*/locations/*/featurestores/*/operations/*}' - get: '/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}' @@ -326,6 +367,7 @@ http: - get: '/ui/{name=projects/*/locations/*/datasets/*/savedQueries/*}/operations' - get: '/ui/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}/operations' - get: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*}/operations' + - get: '/ui/{name=projects/*/locations/*/edgeDevices/*}/operations' - get: '/ui/{name=projects/*/locations/*/endpoints/*}/operations' - get: '/ui/{name=projects/*/locations/*/featurestores/*}/operations' - get: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*}/operations' @@ -354,6 +396,7 @@ http: - get: '/v1beta1/{name=projects/*/locations/*/datasets/*/savedQueries/*}/operations' - get: '/v1beta1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*}/operations' - get: '/v1beta1/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*}/operations' + - get: '/v1beta1/{name=projects/*/locations/*/edgeDevices/*}/operations' - get: '/v1beta1/{name=projects/*/locations/*/endpoints/*}/operations' - get: '/v1beta1/{name=projects/*/locations/*/featurestores/*}/operations' - get: '/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*}/operations' @@ -384,6 +427,7 @@ http: - post: '/ui/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}:wait' - post: '/ui/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}:wait' - post: '/ui/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}:wait' + - post: '/ui/{name=projects/*/locations/*/edgeDevices/*/operations/*}:wait' - post: '/ui/{name=projects/*/locations/*/endpoints/*/operations/*}:wait' - post: '/ui/{name=projects/*/locations/*/featurestores/*/operations/*}:wait' - post: '/ui/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}:wait' @@ -412,6 +456,7 @@ http: - post: '/v1beta1/{name=projects/*/locations/*/datasets/*/savedQueries/*/operations/*}:wait' - post: '/v1beta1/{name=projects/*/locations/*/datasets/*/annotationSpecs/*/operations/*}:wait' - post: '/v1beta1/{name=projects/*/locations/*/datasets/*/dataItems/*/annotations/*/operations/*}:wait' + - post: '/v1beta1/{name=projects/*/locations/*/edgeDevices/*/operations/*}:wait' - post: '/v1beta1/{name=projects/*/locations/*/endpoints/*/operations/*}:wait' - post: '/v1beta1/{name=projects/*/locations/*/featurestores/*/operations/*}:wait' - post: '/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*/operations/*}:wait' @@ -489,11 +534,7 @@ authentication: oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform - - selector: google.cloud.aiplatform.v1beta1.PredictionService.Explain - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/cloud-platform - - selector: google.cloud.aiplatform.v1beta1.PredictionService.Predict + - selector: 'google.cloud.aiplatform.v1beta1.PredictionService.*' oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform @@ -517,6 +558,10 @@ authentication: oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform + - selector: 'google.iam.v1.IAMPolicy.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform - selector: 'google.longrunning.Operations.*' oauth: canonical_scopes: |- diff --git a/google/cloud/aiplatform/v1beta1/annotation.proto b/google/cloud/aiplatform/v1beta1/annotation.proto index 9ed339859..1724bfb94 100644 --- a/google/cloud/aiplatform/v1beta1/annotation.proto +++ b/google/cloud/aiplatform/v1beta1/annotation.proto @@ -24,10 +24,13 @@ import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "AnnotationProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Used to assign specific AnnotationSpec to a particular area of a DataItem or // the whole part of the DataItem. diff --git a/google/cloud/aiplatform/v1beta1/annotation_spec.proto b/google/cloud/aiplatform/v1beta1/annotation_spec.proto index 03d535d4f..a23a1ec09 100644 --- a/google/cloud/aiplatform/v1beta1/annotation_spec.proto +++ b/google/cloud/aiplatform/v1beta1/annotation_spec.proto @@ -21,10 +21,13 @@ import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "AnnotationSpecProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Identifies a concept with which DataItems may be annotated with. message AnnotationSpec { diff --git a/google/cloud/aiplatform/v1beta1/artifact.proto b/google/cloud/aiplatform/v1beta1/artifact.proto index 205faecee..2817349e5 100644 --- a/google/cloud/aiplatform/v1beta1/artifact.proto +++ b/google/cloud/aiplatform/v1beta1/artifact.proto @@ -23,10 +23,13 @@ import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ArtifactProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Instance of a general artifact. message Artifact { @@ -40,7 +43,7 @@ message Artifact { // Unspecified state for the Artifact. STATE_UNSPECIFIED = 0; - // A state used by systems like Vertex Pipelines to indicate that the + // A state used by systems like Vertex AI Pipelines to indicate that the // underlying data item represented by this Artifact is being created. PENDING = 1; @@ -81,7 +84,7 @@ message Artifact { // The state of this Artifact. This is a property of the Artifact, and does // not imply or capture any ongoing process. This property is managed by - // clients (such as Vertex Pipelines), and the system does not prescribe + // clients (such as Vertex AI Pipelines), and the system does not prescribe // or check the validity of state transitions. State state = 13; @@ -100,6 +103,7 @@ message Artifact { string schema_version = 15; // Properties of the Artifact. + // The size of this field should not exceed 200KB. google.protobuf.Struct metadata = 16; // Description of the Artifact diff --git a/google/cloud/aiplatform/v1beta1/batch_prediction_job.proto b/google/cloud/aiplatform/v1beta1/batch_prediction_job.proto index ddb7c0ac2..2b7cf5d82 100644 --- a/google/cloud/aiplatform/v1beta1/batch_prediction_job.proto +++ b/google/cloud/aiplatform/v1beta1/batch_prediction_job.proto @@ -26,15 +26,19 @@ import "google/cloud/aiplatform/v1beta1/job_state.proto"; import "google/cloud/aiplatform/v1beta1/machine_resources.proto"; import "google/cloud/aiplatform/v1beta1/manual_batch_tuning_parameters.proto"; import "google/cloud/aiplatform/v1beta1/model_monitoring.proto"; +import "google/cloud/aiplatform/v1beta1/unmanaged_container_model.proto"; import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "BatchPredictionJobProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A job that uses a [Model][google.cloud.aiplatform.v1beta1.BatchPredictionJob.model] to produce predictions // on multiple [input instances][google.cloud.aiplatform.v1beta1.BatchPredictionJob.input_config]. If @@ -93,8 +97,7 @@ message BatchPredictionJob { // `errors_N.` files are created (N depends on total number // of failed predictions). These files contain the failed instances, // as per their schema, followed by an additional `error` field which as - // value has - // [`google.rpc.Status`](Status) + // value has [google.rpc.Status][google.rpc.Status] // containing only `code` and `message` fields. GcsDestination gcs_destination = 2; @@ -114,7 +117,7 @@ message BatchPredictionJob { // prediction schemata. The `errors` table contains rows for which the // prediction has failed, it has instance columns, as per the // instance schema, followed by a single "errors" column, which as values - // has [`google.rpc.Status`](Status) + // has [google.rpc.Status][google.rpc.Status] // represented as a STRUCT, and containing only `code` and `message`. BigQueryDestination bigquery_destination = 3; } @@ -139,6 +142,12 @@ message BatchPredictionJob { // format, into which the prediction output is written. string bigquery_output_dataset = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } + + // Output only. The name of the BigQuery table created, in + // `predictions_` + // format, into which the prediction output is written. + // Can be used by UI to generate the BigQuery output path, for example. + string bigquery_output_table = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Output only. Resource name of the BatchPredictionJob. @@ -147,16 +156,19 @@ message BatchPredictionJob { // Required. The user-defined name of this BatchPredictionJob. string display_name = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. The name of the Model that produces the predictions via this job, + // The name of the Model resoure that produces the predictions via this job, // must share the same ancestor Location. // Starting this job has no impact on any existing deployments of the Model // and their resources. - string model = 3 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "aiplatform.googleapis.com/Model" - } - ]; + // Exactly one of model and unmanaged_container_model must be set. + string model = 3 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Model" + }]; + + // Contains model information necessary to perform batch prediction without + // requiring uploading to model registry. + // Exactly one of model and unmanaged_container_model must be set. + UnmanagedContainerModel unmanaged_container_model = 28; // Required. Input configuration of the instances on which predictions are performed. // The schema of any single instance may be specified via diff --git a/google/cloud/aiplatform/v1beta1/completion_stats.proto b/google/cloud/aiplatform/v1beta1/completion_stats.proto index 9e49dab97..2c54b9612 100644 --- a/google/cloud/aiplatform/v1beta1/completion_stats.proto +++ b/google/cloud/aiplatform/v1beta1/completion_stats.proto @@ -20,10 +20,13 @@ import "google/api/field_behavior.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "CompletionStatsProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Success and error statistics of processing multiple entities // (for example, DataItems or structured data rows) in batch. diff --git a/google/cloud/aiplatform/v1beta1/context.proto b/google/cloud/aiplatform/v1beta1/context.proto index 2b94566fb..64d25ea71 100644 --- a/google/cloud/aiplatform/v1beta1/context.proto +++ b/google/cloud/aiplatform/v1beta1/context.proto @@ -23,10 +23,13 @@ import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ContextProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Instance of a general context. message Context { @@ -85,6 +88,7 @@ message Context { string schema_version = 14; // Properties of the Context. + // The size of this field should not exceed 200KB. google.protobuf.Struct metadata = 15; // Description of the Context diff --git a/google/cloud/aiplatform/v1beta1/custom_job.proto b/google/cloud/aiplatform/v1beta1/custom_job.proto index e179e5ff3..54a4b0be3 100644 --- a/google/cloud/aiplatform/v1beta1/custom_job.proto +++ b/google/cloud/aiplatform/v1beta1/custom_job.proto @@ -28,10 +28,13 @@ import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "CustomJobProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Represents a job that runs custom workloads such as a Docker container or a // Python package. A CustomJob can have multiple worker pools and each worker @@ -88,6 +91,19 @@ message CustomJob { // then all resources created by the CustomJob will be encrypted with the // provided encryption key. EncryptionSpec encryption_spec = 12; + + // Output only. URIs for accessing [interactive + // shells](https://cloud.google.com/vertex-ai/docs/training/monitor-debug-interactive-shell) + // (one URI for each training node). Only available if + // [job_spec.enable_web_access][google.cloud.aiplatform.v1beta1.CustomJobSpec.enable_web_access] is `true`. + // + // The keys are names of each node in the training job; for example, + // `workerpool0-0` for the primary node, `workerpool1-0` for the first node in + // the second worker pool, and `workerpool1-1` for the second node in the + // second worker pool. + // + // The values are the URIs for each node's interactive shell. + map web_access_uris = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Represents the spec of a CustomJob. @@ -102,7 +118,7 @@ message CustomJobSpec { // Specifies the service account for workload run-as account. // Users submitting jobs must have act-as permission on this run-as account. - // If unspecified, the [AI Platform Custom Code Service + // If unspecified, the [Vertex AI Custom Code Service // Agent](https://cloud.google.com/vertex-ai/docs/general/access-control#service-agents) // for the CustomJob's project is used. string service_account = 4; @@ -115,8 +131,11 @@ message CustomJobSpec { // Where {project} is a project number, as in `12345`, and {network} is a // network name. // - // Private services access must already be configured for the network. If left - // unspecified, the job is not peered with any network. + // To specify this field, you must have already [configured VPC Network + // Peering for Vertex + // AI](https://cloud.google.com/vertex-ai/docs/general/vpc-peering). + // + // If this field is left unspecified, the job is not peered with any network. string network = 5 [(google.api.resource_reference) = { type: "compute.googleapis.com/Network" }]; @@ -154,6 +173,15 @@ message CustomJobSpec { type: "aiplatform.googleapis.com/Tensorboard" } ]; + + // Optional. Whether you want Vertex AI to enable [interactive shell + // access](https://cloud.google.com/vertex-ai/docs/training/monitor-debug-interactive-shell) + // to training containers. + // + // If set to `true`, you can access interactive shells at the URIs given + // by [CustomJob.web_access_uris][google.cloud.aiplatform.v1beta1.CustomJob.web_access_uris] or [Trial.web_access_uris][google.cloud.aiplatform.v1beta1.Trial.web_access_uris] (within + // [HyperparameterTuningJob.trials][google.cloud.aiplatform.v1beta1.HyperparameterTuningJob.trials]). + bool enable_web_access = 10 [(google.api.field_behavior) = OPTIONAL]; } // Represents the spec of a worker pool in a job. diff --git a/google/cloud/aiplatform/v1beta1/data_item.proto b/google/cloud/aiplatform/v1beta1/data_item.proto index 0981483d7..2f904487d 100644 --- a/google/cloud/aiplatform/v1beta1/data_item.proto +++ b/google/cloud/aiplatform/v1beta1/data_item.proto @@ -23,10 +23,13 @@ import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "DataItemProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A piece of data in a Dataset. Could be an image, a video, a document or plain // text. diff --git a/google/cloud/aiplatform/v1beta1/data_labeling_job.proto b/google/cloud/aiplatform/v1beta1/data_labeling_job.proto index 6e3a208e1..5c2de6651 100644 --- a/google/cloud/aiplatform/v1beta1/data_labeling_job.proto +++ b/google/cloud/aiplatform/v1beta1/data_labeling_job.proto @@ -28,10 +28,13 @@ import "google/rpc/status.proto"; import "google/type/money.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "DataLabelingJobProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // DataLabelingJob is used to trigger a human labeling job on unlabeled data // from the following Dataset: diff --git a/google/cloud/aiplatform/v1beta1/dataset.proto b/google/cloud/aiplatform/v1beta1/dataset.proto index 244cf121b..23e8626d6 100644 --- a/google/cloud/aiplatform/v1beta1/dataset.proto +++ b/google/cloud/aiplatform/v1beta1/dataset.proto @@ -24,10 +24,13 @@ import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "DatasetProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A collection of DataItems and Annotations on them. message Dataset { @@ -44,6 +47,9 @@ message Dataset { // characters. string display_name = 2 [(google.api.field_behavior) = REQUIRED]; + // Optional. The description of the Dataset. + string description = 16 [(google.api.field_behavior) = OPTIONAL]; + // Required. Points to a YAML file stored on Google Cloud Storage describing additional // information about the Dataset. // The schema is defined as an OpenAPI 3.0.2 Schema Object. diff --git a/google/cloud/aiplatform/v1beta1/dataset_service.proto b/google/cloud/aiplatform/v1beta1/dataset_service.proto index 7e3f83bcb..172859a52 100644 --- a/google/cloud/aiplatform/v1beta1/dataset_service.proto +++ b/google/cloud/aiplatform/v1beta1/dataset_service.proto @@ -29,11 +29,16 @@ import "google/cloud/aiplatform/v1beta1/training_pipeline.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "DatasetServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; +// The service that handles the CRUD of Vertex AI Dataset and its child +// resources. service DatasetService { option (google.api.default_host) = "aiplatform.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; diff --git a/google/cloud/aiplatform/v1beta1/deployed_index_ref.proto b/google/cloud/aiplatform/v1beta1/deployed_index_ref.proto index 22bd38d33..ed7cf7371 100644 --- a/google/cloud/aiplatform/v1beta1/deployed_index_ref.proto +++ b/google/cloud/aiplatform/v1beta1/deployed_index_ref.proto @@ -20,10 +20,13 @@ import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "DeployedIndexRefProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Points to a DeployedIndex. message DeployedIndexRef { diff --git a/google/cloud/aiplatform/v1beta1/deployed_model_ref.proto b/google/cloud/aiplatform/v1beta1/deployed_model_ref.proto index a33a167d2..1c85e8efd 100644 --- a/google/cloud/aiplatform/v1beta1/deployed_model_ref.proto +++ b/google/cloud/aiplatform/v1beta1/deployed_model_ref.proto @@ -20,10 +20,13 @@ import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "DeployedModelNameProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Points to a DeployedModel. message DeployedModelRef { diff --git a/google/cloud/aiplatform/v1beta1/encryption_spec.proto b/google/cloud/aiplatform/v1beta1/encryption_spec.proto index d8fb9399b..d74e3b938 100644 --- a/google/cloud/aiplatform/v1beta1/encryption_spec.proto +++ b/google/cloud/aiplatform/v1beta1/encryption_spec.proto @@ -19,10 +19,13 @@ package google.cloud.aiplatform.v1beta1; import "google/api/field_behavior.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "EncryptionSpecProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Represents a customer-managed encryption key spec that can be applied to // a top-level resource. diff --git a/google/cloud/aiplatform/v1beta1/endpoint.proto b/google/cloud/aiplatform/v1beta1/endpoint.proto index 86d4eb198..3971a35be 100644 --- a/google/cloud/aiplatform/v1beta1/endpoint.proto +++ b/google/cloud/aiplatform/v1beta1/endpoint.proto @@ -20,15 +20,20 @@ import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/cloud/aiplatform/v1beta1/encryption_spec.proto"; import "google/cloud/aiplatform/v1beta1/explanation.proto"; +import "google/cloud/aiplatform/v1beta1/io.proto"; import "google/cloud/aiplatform/v1beta1/machine_resources.proto"; import "google/cloud/aiplatform/v1beta1/model_deployment_monitoring_job.proto"; +import "google/cloud/aiplatform/v1beta1/model_monitoring.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "EndpointProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Models are deployed into it, and afterwards Endpoint is called to obtain // predictions and explanations. @@ -87,6 +92,43 @@ message Endpoint { // Endpoint and all sub-resources of this Endpoint will be secured by // this key. EncryptionSpec encryption_spec = 10; + + // The full name of the Google Compute Engine + // [network](https://cloud.google.com//compute/docs/networks-and-firewalls#networks) + // to which the Endpoint should be peered. + // + // Private services access must already be configured for the network. If left + // unspecified, the Endpoint is not peered with any network. + // + // Only one of the fields, [network][google.cloud.aiplatform.v1beta1.Endpoint.network] or + // [enable_private_service_connect][google.cloud.aiplatform.v1beta1.Endpoint.enable_private_service_connect], + // can be set. + // + // [Format](https://cloud.google.com/compute/docs/reference/rest/v1/networks/insert): + // `projects/{project}/global/networks/{network}`. + // Where `{project}` is a project number, as in `12345`, and `{network}` is + // network name. + string network = 13 [(google.api.resource_reference) = { + type: "compute.googleapis.com/Network" + }]; + + // If true, expose the Endpoint via private service connect. + // + // Only one of the fields, [network][google.cloud.aiplatform.v1beta1.Endpoint.network] or + // [enable_private_service_connect][google.cloud.aiplatform.v1beta1.Endpoint.enable_private_service_connect], + // can be set. + bool enable_private_service_connect = 17; + + // Output only. Resource name of the Model Monitoring job associated with this Endpoint + // if monitoring is enabled by [CreateModelDeploymentMonitoringJob][]. + // Format: + // `projects/{project}/locations/{location}/modelDeploymentMonitoringJobs/{model_deployment_monitoring_job}` + string model_deployment_monitoring_job = 14 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/ModelDeploymentMonitoringJob" + } + ]; } // A deployment of a Model. Endpoints contain one or more DeployedModels. @@ -101,13 +143,16 @@ message DeployedModel { // that need a higher degree of manual configuration. DedicatedResources dedicated_resources = 7; - // A description of resources that to large degree are decided by AI - // Platform, and require only a modest additional configuration. + // A description of resources that to large degree are decided by Vertex + // AI, and require only a modest additional configuration. AutomaticResources automatic_resources = 8; } - // Output only. The ID of the DeployedModel. - string id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Immutable. The ID of the DeployedModel. If not provided upon deployment, Vertex AI + // will generate a value for this ID. + // + // This value should be 1-10 characters, and valid characters are /[0-9]/. + string id = 1 [(google.api.field_behavior) = IMMUTABLE]; // Required. The name of the Model that this is the deployment of. Note that the Model // may be in a different location than the DeployedModel's Endpoint. @@ -158,4 +203,29 @@ message DeployedModel { // receives prediction requests at a high queries per second rate (QPS). // Estimate your costs before enabling this option. bool enable_access_logging = 13; + + // Output only. Provide paths for users to send predict/explain/health requests directly to + // the deployed model services running on Cloud via private services access. + // This field is populated if [network][google.cloud.aiplatform.v1beta1.Endpoint.network] is configured. + PrivateEndpoints private_endpoints = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// PrivateEndpoints proto is used to provide paths for users to send +// requests privately. +// To send request via private service access, use predict_http_uri, +// explain_http_uri or health_http_uri. To send request via private service +// connect, use service_attachment. +message PrivateEndpoints { + // Output only. Http(s) path to send prediction requests. + string predict_http_uri = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Http(s) path to send explain requests. + string explain_http_uri = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Http(s) path to send health check requests. + string health_http_uri = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the service attachment resource. Populated if private service + // connect is enabled. + string service_attachment = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; } diff --git a/google/cloud/aiplatform/v1beta1/endpoint_service.proto b/google/cloud/aiplatform/v1beta1/endpoint_service.proto index f9c5a4bca..9cf261f20 100644 --- a/google/cloud/aiplatform/v1beta1/endpoint_service.proto +++ b/google/cloud/aiplatform/v1beta1/endpoint_service.proto @@ -25,11 +25,15 @@ import "google/cloud/aiplatform/v1beta1/operation.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "EndpointServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; +// A service for managing Vertex AI's Endpoints. service EndpointService { option (google.api.default_host) = "aiplatform.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; @@ -41,6 +45,7 @@ service EndpointService { body: "endpoint" }; option (google.api.method_signature) = "parent,endpoint"; + option (google.api.method_signature) = "parent,endpoint,endpoint_id"; option (google.longrunning.operation_info) = { response_type: "Endpoint" metadata_type: "CreateEndpointOperationMetadata" @@ -125,6 +130,16 @@ message CreateEndpointRequest { // Required. The Endpoint to create. Endpoint endpoint = 2 [(google.api.field_behavior) = REQUIRED]; + + // Immutable. The ID to use for endpoint, which will become the final + // component of the endpoint resource name. + // If not provided, Vertex AI will generate a value for this ID. + // + // This value should be 1-10 characters, and valid characters are /[0-9]/. + // When using HTTP/JSON, this field is populated based on a query string + // argument, such as `?endpoint_id=12345`. This is the fallback for fields + // that are not included in either the URI or the body. + string endpoint_id = 4 [(google.api.field_behavior) = IMMUTABLE]; } // Runtime operation information for [EndpointService.CreateEndpoint][google.cloud.aiplatform.v1beta1.EndpointService.CreateEndpoint]. diff --git a/google/cloud/aiplatform/v1beta1/entity_type.proto b/google/cloud/aiplatform/v1beta1/entity_type.proto index cbd33b061..232b0ec21 100644 --- a/google/cloud/aiplatform/v1beta1/entity_type.proto +++ b/google/cloud/aiplatform/v1beta1/entity_type.proto @@ -23,10 +23,13 @@ import "google/cloud/aiplatform/v1beta1/featurestore_monitoring.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "EntityTypeProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // An entity type is a type of object in a system that needs to be modeled and // have stored information about. For example, driver is an entity type, and @@ -73,7 +76,8 @@ message EntityType { // "overwrite" update happens. string etag = 7 [(google.api.field_behavior) = OPTIONAL]; - // Optional. The default monitoring configuration for all Features under this + // Optional. The default monitoring configuration for all Features with value type + // ([Feature.ValueType][google.cloud.aiplatform.v1beta1.Feature.ValueType]) BOOL, STRING, DOUBLE or INT64 under this // EntityType. // // If this is populated with diff --git a/google/cloud/aiplatform/v1beta1/env_var.proto b/google/cloud/aiplatform/v1beta1/env_var.proto index a110cf47f..e62c594b8 100644 --- a/google/cloud/aiplatform/v1beta1/env_var.proto +++ b/google/cloud/aiplatform/v1beta1/env_var.proto @@ -19,10 +19,13 @@ package google.cloud.aiplatform.v1beta1; import "google/api/field_behavior.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "EnvVarProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Represents an environment variable present in a Container or Python Module. message EnvVar { diff --git a/google/cloud/aiplatform/v1beta1/event.proto b/google/cloud/aiplatform/v1beta1/event.proto index 5b7d27500..c2d7abbd0 100644 --- a/google/cloud/aiplatform/v1beta1/event.proto +++ b/google/cloud/aiplatform/v1beta1/event.proto @@ -21,10 +21,13 @@ import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "EventProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // An edge describing the relationship between an Artifact and an Execution in // a lineage graph. diff --git a/google/cloud/aiplatform/v1beta1/execution.proto b/google/cloud/aiplatform/v1beta1/execution.proto index 4f83cce1e..f26554de5 100644 --- a/google/cloud/aiplatform/v1beta1/execution.proto +++ b/google/cloud/aiplatform/v1beta1/execution.proto @@ -23,10 +23,13 @@ import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ExecutionProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Instance of a general execution. message Execution { @@ -51,6 +54,12 @@ message Execution { // The Execution has failed FAILED = 4; + + // The Execution completed through Cache hit. + CACHED = 5; + + // The Execution was cancelled. + CANCELLED = 6; } // Output only. The resource name of the Execution. @@ -62,7 +71,7 @@ message Execution { // The state of this Execution. This is a property of the Execution, and does // not imply or capture any ongoing process. This property is managed by - // clients (such as Vertex Pipelines) and the system does not prescribe + // clients (such as Vertex AI Pipelines) and the system does not prescribe // or check the validity of state transitions. State state = 6; @@ -100,6 +109,7 @@ message Execution { string schema_version = 14; // Properties of the Execution. + // The size of this field should not exceed 200KB. google.protobuf.Struct metadata = 15; // Description of the Execution diff --git a/google/cloud/aiplatform/v1beta1/explanation.proto b/google/cloud/aiplatform/v1beta1/explanation.proto index 7cb2d9b13..e8c852008 100644 --- a/google/cloud/aiplatform/v1beta1/explanation.proto +++ b/google/cloud/aiplatform/v1beta1/explanation.proto @@ -22,10 +22,13 @@ import "google/cloud/aiplatform/v1beta1/io.proto"; import "google/protobuf/struct.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ExplanationProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Explanation of a prediction (provided in [PredictResponse.predictions][google.cloud.aiplatform.v1beta1.PredictResponse.predictions]) // produced by the Model on a given [instance][google.cloud.aiplatform.v1beta1.ExplainRequest.instances]. @@ -194,6 +197,10 @@ message ExplanationParameters { // like a lab or manufacturing line, or from diagnostic equipment, like // x-rays or quality-control cameras, use Integrated Gradients instead. XraiAttribution xrai_attribution = 3; + + // Similarity explainability that returns the nearest neighbors from the + // provided dataset. + Similarity similarity = 7; } // If populated, returns attributions for top K indices of outputs @@ -245,6 +252,14 @@ message IntegratedGradientsAttribution { // noise can help improve the computed gradients. Refer to this paper for more // details: https://arxiv.org/pdf/1706.03825.pdf SmoothGradConfig smooth_grad_config = 2; + + // Config for IG with blur baseline. + // + // When enabled, a linear path from the maximally blurred image to the input + // image is created. Using a blurred baseline instead of zero (black image) is + // motivated by the BlurIG approach explained here: + // https://arxiv.org/abs/2004.03383 + BlurBaselineConfig blur_baseline_config = 3; } // An explanation method that redistributes Integrated Gradients @@ -268,6 +283,14 @@ message XraiAttribution { // noise can help improve the computed gradients. Refer to this paper for more // details: https://arxiv.org/pdf/1706.03825.pdf SmoothGradConfig smooth_grad_config = 2; + + // Config for XRAI with blur baseline. + // + // When enabled, a linear path from the maximally blurred image to the input + // image is created. Using a blurred baseline instead of zero (black image) is + // motivated by the BlurIG approach explained here: + // https://arxiv.org/abs/2004.03383 + BlurBaselineConfig blur_baseline_config = 3; } // Config for SmoothGrad approximation of gradients. @@ -334,8 +357,33 @@ message FeatureNoiseSigma { repeated NoiseSigmaForFeature noise_sigma = 1; } -// The [ExplanationSpec][google.cloud.aiplatform.v1beta1.ExplanationSpec] entries that can be overridden at [online -// explanation][PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain] time. +// Config for blur baseline. +// +// When enabled, a linear path from the maximally blurred image to the input +// image is created. Using a blurred baseline instead of zero (black image) is +// motivated by the BlurIG approach explained here: +// https://arxiv.org/abs/2004.03383 +message BlurBaselineConfig { + // The standard deviation of the blur kernel for the blurred baseline. The + // same blurring parameter is used for both the height and the width + // dimension. If not set, the method defaults to the zero (i.e. black for + // images) baseline. + float max_blur_sigma = 1; +} + +// Similarity explainability that returns the nearest neighbors from the +// provided dataset. +message Similarity { + // The Cloud Storage location for the input instances. + GcsSource gcs_source = 1; + + // The configuration for the generated index, the semantics are the same as + // [metadata][google.cloud.aiplatform.v1beta1.Index.metadata] and should match NearestNeighborSearchConfig. + google.protobuf.Value nearest_neighbor_search_config = 2; +} + +// The [ExplanationSpec][google.cloud.aiplatform.v1beta1.ExplanationSpec] entries that can be overridden at +// [online explanation][google.cloud.aiplatform.v1beta1.PredictionService.Explain] time. message ExplanationSpecOverride { // The parameters to be overridden. Note that the // [method][google.cloud.aiplatform.v1beta1.ExplanationParameters.method] cannot be changed. If not specified, diff --git a/google/cloud/aiplatform/v1beta1/explanation_metadata.proto b/google/cloud/aiplatform/v1beta1/explanation_metadata.proto index 5d725fb2a..9919dbd88 100644 --- a/google/cloud/aiplatform/v1beta1/explanation_metadata.proto +++ b/google/cloud/aiplatform/v1beta1/explanation_metadata.proto @@ -20,10 +20,13 @@ import "google/api/field_behavior.proto"; import "google/protobuf/struct.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ExplanationMetadataProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Metadata describing the Model's input and output for explanation. message ExplanationMetadata { @@ -60,9 +63,8 @@ message ExplanationMetadata { // Visualization configurations for image explanation. message Visualization { - // Type of the image visualization. Only applicable to [Integrated - // Gradients attribution] - // [ExplanationParameters.integrated_gradients_attribution]. + // Type of the image visualization. Only applicable to + // [Integrated Gradients attribution][google.cloud.aiplatform.v1beta1.ExplanationParameters.integrated_gradients_attribution]. enum Type { // Should not be used. TYPE_UNSPECIFIED = 0; @@ -139,11 +141,10 @@ message ExplanationMetadata { MASK_BLACK = 4; } - // Type of the image visualization. Only applicable to [Integrated - // Gradients attribution] - // [ExplanationParameters.integrated_gradients_attribution]. OUTLINES - // shows regions of attribution, while PIXELS shows per-pixel attribution. - // Defaults to OUTLINES. + // Type of the image visualization. Only applicable to + // [Integrated Gradients attribution][google.cloud.aiplatform.v1beta1.ExplanationParameters.integrated_gradients_attribution]. + // OUTLINES shows regions of attribution, while PIXELS shows per-pixel + // attribution. Defaults to OUTLINES. Type type = 1; // Whether to only highlight pixels with positive contributions, negative @@ -152,8 +153,8 @@ message ExplanationMetadata { // The color scheme used for the highlighted areas. // - // Defaults to PINK_GREEN for [Integrated Gradients - // attribution][ExplanationParameters.integrated_gradients_attribution], + // Defaults to PINK_GREEN for + // [Integrated Gradients attribution][google.cloud.aiplatform.v1beta1.ExplanationParameters.integrated_gradients_attribution], // which shows positive attributions in green and negative in pink. // // Defaults to VIRIDIS for @@ -179,8 +180,7 @@ message ExplanationMetadata { OverlayType overlay_type = 6; } - // Defines how the feature is encoded to [encoded_tensor][]. Defaults to - // IDENTITY. + // Defines how a feature is encoded. Defaults to IDENTITY. enum Encoding { // Default value. This is the same as IDENTITY. ENCODING_UNSPECIFIED = 0; @@ -245,8 +245,7 @@ message ExplanationMetadata { // // If no baseline is specified, Vertex AI chooses the baseline for this // feature. If multiple baselines are specified, Vertex AI returns the - // average attributions across them in - // [Attributions.baseline_attribution][]. + // average attributions across them in [Attribution.feature_attributions][google.cloud.aiplatform.v1beta1.Attribution.feature_attributions]. // // For Vertex AI-provided Tensorflow images (both 1.x and 2.x), the shape // of each baseline must match the shape of the input tensor. If a scalar is @@ -294,10 +293,10 @@ message ExplanationMetadata { repeated string index_feature_mapping = 8; // Encoded tensor is a transformation of the input tensor. Must be provided - // if choosing [Integrated Gradients - // attribution][ExplanationParameters.integrated_gradients_attribution] or - // [XRAI attribution][google.cloud.aiplatform.v1beta1.ExplanationParameters.xrai_attribution] - // and the input tensor is not differentiable. + // if choosing + // [Integrated Gradients attribution][google.cloud.aiplatform.v1beta1.ExplanationParameters.integrated_gradients_attribution] + // or [XRAI attribution][google.cloud.aiplatform.v1beta1.ExplanationParameters.xrai_attribution] and the + // input tensor is not differentiable. // // An encoded tensor is generated if the input tensor is encoded by a lookup // table. @@ -316,9 +315,8 @@ message ExplanationMetadata { // Name of the group that the input belongs to. Features with the same group // name will be treated as one feature when computing attributions. Features // grouped together can have different shapes in value. If provided, there - // will be one single attribution generated in [ - // featureAttributions][Attribution.feature_attributions], keyed by the - // group name. + // will be one single attribution generated in + // [Attribution.feature_attributions][google.cloud.aiplatform.v1beta1.Attribution.feature_attributions], keyed by the group name. string group_name = 12; } @@ -354,8 +352,8 @@ message ExplanationMetadata { string display_name_mapping_key = 2; } - // Name of the output tensor. Required and is only applicable to AI - // Platform provided images for Tensorflow. + // Name of the output tensor. Required and is only applicable to Vertex + // AI provided images for Tensorflow. string output_tensor_name = 3; } diff --git a/google/cloud/aiplatform/v1beta1/feature.proto b/google/cloud/aiplatform/v1beta1/feature.proto index f5a275c9e..a4f8b36c3 100644 --- a/google/cloud/aiplatform/v1beta1/feature.proto +++ b/google/cloud/aiplatform/v1beta1/feature.proto @@ -23,10 +23,13 @@ import "google/cloud/aiplatform/v1beta1/featurestore_monitoring.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "FeatureProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Feature Metadata information that describes an attribute of an entity type. // For example, apple is an entity type, and color is a feature that describes @@ -114,6 +117,8 @@ message Feature { // Optional. The custom monitoring configuration for this Feature, if not set, use the // monitoring_config defined for the EntityType this Feature belongs to. + // Only Features with type ([Feature.ValueType][google.cloud.aiplatform.v1beta1.Feature.ValueType]) BOOL, STRING, DOUBLE or + // INT64 can enable monitoring. // // If this is populated with // [FeaturestoreMonitoringConfig.disabled][] = true, snapshot analysis @@ -124,7 +129,7 @@ message Feature { FeaturestoreMonitoringConfig monitoring_config = 9 [(google.api.field_behavior) = OPTIONAL]; // Output only. A list of historical [Snapshot - // Analysis][google.cloud.aiplatform.master.FeaturestoreMonitoringConfig.SnapshotAnalysis] + // Analysis][FeaturestoreMonitoringConfig.SnapshotAnalysis] // stats requested by user, sorted by [FeatureStatsAnomaly.start_time][google.cloud.aiplatform.v1beta1.FeatureStatsAnomaly.start_time] // descending. repeated FeatureStatsAnomaly monitoring_stats = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; diff --git a/google/cloud/aiplatform/v1beta1/feature_monitoring_stats.proto b/google/cloud/aiplatform/v1beta1/feature_monitoring_stats.proto index 4dd851124..051b93b59 100644 --- a/google/cloud/aiplatform/v1beta1/feature_monitoring_stats.proto +++ b/google/cloud/aiplatform/v1beta1/feature_monitoring_stats.proto @@ -19,10 +19,13 @@ package google.cloud.aiplatform.v1beta1; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "FeatureMonitoringStatsProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Stats and Anomaly generated at specific timestamp for specific Feature. // The start_time and end_time are used to define the time range of the dataset diff --git a/google/cloud/aiplatform/v1beta1/feature_selector.proto b/google/cloud/aiplatform/v1beta1/feature_selector.proto index 935e2c2dc..74d9aa693 100644 --- a/google/cloud/aiplatform/v1beta1/feature_selector.proto +++ b/google/cloud/aiplatform/v1beta1/feature_selector.proto @@ -19,10 +19,13 @@ package google.cloud.aiplatform.v1beta1; import "google/api/field_behavior.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "FeatureSelectorProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Matcher for Features of an EntityType by Feature ID. message IdMatcher { diff --git a/google/cloud/aiplatform/v1beta1/featurestore.proto b/google/cloud/aiplatform/v1beta1/featurestore.proto index c3f527ee5..b48c5d80e 100644 --- a/google/cloud/aiplatform/v1beta1/featurestore.proto +++ b/google/cloud/aiplatform/v1beta1/featurestore.proto @@ -18,15 +18,21 @@ package google.cloud.aiplatform.v1beta1; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1beta1/encryption_spec.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "FeaturestoreProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; -// Featurestore configuration information on how the Featurestore is configured. +// Vertex AI Feature Store provides a centralized repository for organizing, +// storing, and serving ML features. The Featurestore is a top-level container +// for your features and their values. message Featurestore { option (google.api.resource) = { type: "aiplatform.googleapis.com/Featurestore" @@ -36,10 +42,10 @@ message Featurestore { // OnlineServingConfig specifies the details for provisioning online serving // resources. message OnlineServingConfig { - // Required. The number of nodes for each cluster. The number of nodes will not + // The number of nodes for each cluster. The number of nodes will not // scale automatically but can be scaled manually by providing different // values when updating. - int32 fixed_node_count = 2 [(google.api.field_behavior) = REQUIRED]; + int32 fixed_node_count = 2; } // Possible states a Featurestore can have. @@ -95,4 +101,8 @@ message Featurestore { // Output only. State of the featurestore. State state = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Customer-managed encryption key spec for data storage. If set, both of the + // online and offline data storage will be secured by this key. + EncryptionSpec encryption_spec = 10 [(google.api.field_behavior) = OPTIONAL]; } diff --git a/google/cloud/aiplatform/v1beta1/featurestore_monitoring.proto b/google/cloud/aiplatform/v1beta1/featurestore_monitoring.proto index 12c82ad9b..ca1d29c94 100644 --- a/google/cloud/aiplatform/v1beta1/featurestore_monitoring.proto +++ b/google/cloud/aiplatform/v1beta1/featurestore_monitoring.proto @@ -19,10 +19,13 @@ package google.cloud.aiplatform.v1beta1; import "google/protobuf/duration.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "FeaturestoreMonitoringProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Configuration of how features in Featurestore are monitored. message FeaturestoreMonitoringConfig { @@ -44,9 +47,19 @@ message FeaturestoreMonitoringConfig { // Explicitly Disable the snapshot analysis based monitoring. bool disabled = 1; + // Configuration of the snapshot analysis based monitoring pipeline running + // interval. The value is rolled up to full day. + google.protobuf.Duration monitoring_interval = 2 [deprecated = true]; + // Configuration of the snapshot analysis based monitoring pipeline - // running interval. The value is rolled up to full day. - google.protobuf.Duration monitoring_interval = 2; + // running interval. The value indicates number of days. + // If both + // [FeaturestoreMonitoringConfig.SnapshotAnalysis.monitoring_interval_days][google.cloud.aiplatform.v1beta1.FeaturestoreMonitoringConfig.SnapshotAnalysis.monitoring_interval_days] + // and [FeaturestoreMonitoringConfig.SnapshotAnalysis.monitoring_interval][google.cloud.aiplatform.v1beta1.FeaturestoreMonitoringConfig.SnapshotAnalysis.monitoring_interval] + // are set when creating/updating EntityTypes/Features, + // [FeaturestoreMonitoringConfig.SnapshotAnalysis.monitoring_interval_days][google.cloud.aiplatform.v1beta1.FeaturestoreMonitoringConfig.SnapshotAnalysis.monitoring_interval_days] + // will be used. + int32 monitoring_interval_days = 3; } // The config for Snapshot Analysis Based Feature Monitoring. diff --git a/google/cloud/aiplatform/v1beta1/featurestore_online_service.proto b/google/cloud/aiplatform/v1beta1/featurestore_online_service.proto index c0b714417..69722343d 100644 --- a/google/cloud/aiplatform/v1beta1/featurestore_online_service.proto +++ b/google/cloud/aiplatform/v1beta1/featurestore_online_service.proto @@ -24,10 +24,13 @@ import "google/cloud/aiplatform/v1beta1/feature_selector.proto"; import "google/cloud/aiplatform/v1beta1/types.proto"; import "google/protobuf/timestamp.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "FeaturestoreOnlineServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A service for serving online feature values. service FeaturestoreOnlineServingService { @@ -60,10 +63,10 @@ service FeaturestoreOnlineServingService { // Request message for [FeaturestoreOnlineServingService.ReadFeatureValues][google.cloud.aiplatform.v1beta1.FeaturestoreOnlineServingService.ReadFeatureValues]. message ReadFeatureValuesRequest { // Required. The resource name of the EntityType for the entity being read. - // Value format: `projects/{project}/locations/{location}/featurestores/ - // {featurestore}/entityTypes/{entityType}`. For example, - // for a machine learning model predicting user clicks on a website, an - // EntityType ID could be "user". + // Value format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}`. + // For example, for a machine learning model predicting user clicks on a + // website, an EntityType ID could be `user`. string entity_type = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -73,7 +76,7 @@ message ReadFeatureValuesRequest { // Required. ID for a specific entity. For example, // for a machine learning model predicting user clicks on a website, an entity - // ID could be "user_123". + // ID could be `user_123`. string entity_id = 2 [(google.api.field_behavior) = REQUIRED]; // Required. Selector choosing Features of the target EntityType. @@ -93,8 +96,7 @@ message ReadFeatureValuesResponse { message Header { // The resource name of the EntityType from the // [ReadFeatureValuesRequest][google.cloud.aiplatform.v1beta1.ReadFeatureValuesRequest]. Value format: - // `projects/{project}/locations/{location}/featurestores/ - // {featurestore}/entityTypes/{entityType}`. + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}`. string entity_type = 1 [(google.api.resource_reference) = { type: "aiplatform.googleapis.com/EntityType" }]; @@ -146,10 +148,11 @@ message ReadFeatureValuesResponse { // [FeaturestoreOnlineServingService.StreamingFeatureValuesRead][]. message StreamingReadFeatureValuesRequest { // Required. The resource name of the entities' type. - // Value format: `projects/{project}/locations/{location}/featurestores/ - // {featurestore}/entityTypes/{entityType}`. For example, + // Value format: + // `projects/{project}/locations/{location}/featurestores/{featurestore}/entityTypes/{entityType}`. + // For example, // for a machine learning model predicting user clicks on a website, an - // EntityType ID could be "user". + // EntityType ID could be `user`. string entity_type = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -157,12 +160,13 @@ message StreamingReadFeatureValuesRequest { } ]; - // Required. IDs of entities to read Feature values of. For example, - // for a machine learning model predicting user clicks on a website, an - // entity ID could be "user_123". + // Required. IDs of entities to read Feature values of. The maximum number of IDs is + // 100. For example, for a machine learning model predicting user clicks on a + // website, an entity ID could be `user_123`. repeated string entity_ids = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. Selector choosing Features of the target EntityType. + // Required. Selector choosing Features of the target EntityType. Feature IDs will be + // deduplicated. FeatureSelector feature_selector = 3 [(google.api.field_behavior) = REQUIRED]; } @@ -174,7 +178,9 @@ message FeatureValue { // Feature generation timestamp. Typically, it is provided by user at // feature ingestion time. If not, feature store // will use the system timestamp when the data is ingested into feature - // store. + // store. For streaming ingestion, the time, aligned by days, must be no + // older than five years (1825 days) and no later than one year (366 days) + // in the future. google.protobuf.Timestamp generate_time = 1; } @@ -208,8 +214,8 @@ message FeatureValue { bytes bytes_value = 13; } - // Output only. Metadata of feature value. - Metadata metadata = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Metadata of feature value. + Metadata metadata = 14; } // Container for list of values. diff --git a/google/cloud/aiplatform/v1beta1/featurestore_service.proto b/google/cloud/aiplatform/v1beta1/featurestore_service.proto index 6ab91fe04..f4c4bcdec 100644 --- a/google/cloud/aiplatform/v1beta1/featurestore_service.proto +++ b/google/cloud/aiplatform/v1beta1/featurestore_service.proto @@ -31,10 +31,13 @@ import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; import "google/protobuf/timestamp.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "FeaturestoreServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // The service that handles CRUD and List for resources for Featurestore. service FeaturestoreService { @@ -48,6 +51,7 @@ service FeaturestoreService { body: "featurestore" }; option (google.api.method_signature) = "parent,featurestore"; + option (google.api.method_signature) = "parent,featurestore,featurestore_id"; option (google.longrunning.operation_info) = { response_type: "Featurestore" metadata_type: "CreateFeaturestoreOperationMetadata" @@ -90,6 +94,7 @@ service FeaturestoreService { delete: "/v1beta1/{name=projects/*/locations/*/featurestores/*}" }; option (google.api.method_signature) = "name"; + option (google.api.method_signature) = "name,force"; option (google.longrunning.operation_info) = { response_type: "google.protobuf.Empty" metadata_type: "DeleteOperationMetadata" @@ -103,6 +108,7 @@ service FeaturestoreService { body: "entity_type" }; option (google.api.method_signature) = "parent,entity_type"; + option (google.api.method_signature) = "parent,entity_type,entity_type_id"; option (google.longrunning.operation_info) = { response_type: "EntityType" metadata_type: "CreateEntityTypeOperationMetadata" @@ -141,6 +147,7 @@ service FeaturestoreService { delete: "/v1beta1/{name=projects/*/locations/*/featurestores/*/entityTypes/*}" }; option (google.api.method_signature) = "name"; + option (google.api.method_signature) = "name,force"; option (google.longrunning.operation_info) = { response_type: "google.protobuf.Empty" metadata_type: "DeleteOperationMetadata" @@ -154,6 +161,7 @@ service FeaturestoreService { body: "feature" }; option (google.api.method_signature) = "parent,feature"; + option (google.api.method_signature) = "parent,feature,feature_id"; option (google.longrunning.operation_info) = { response_type: "Feature" metadata_type: "CreateFeatureOperationMetadata" @@ -279,6 +287,7 @@ service FeaturestoreService { get: "/v1beta1/{location=projects/*/locations/*}/featurestores:searchFeatures" }; option (google.api.method_signature) = "location"; + option (google.api.method_signature) = "location,query"; } } @@ -333,14 +342,14 @@ message ListFeaturestoresRequest { // Lists the featurestores that match the filter expression. The following // fields are supported: // - // * `create_time`: Supports =, !=, <, >, <=, and >= comparisons. Values must - // be + // * `create_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. + // Values must be // in RFC 3339 format. - // * `update_time`: Supports =, !=, <, >, <=, and >= comparisons. Values must - // be + // * `update_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. + // Values must be // in RFC 3339 format. - // * `online_serving_config.fixed_node_count`: Supports =, !=, <, >, <=, - // and >= comparisons. + // * `online_serving_config.fixed_node_count`: Supports `=`, `!=`, `<`, `>`, + // `<=`, and `>=` comparisons. // * `labels`: Supports key-value equality and key presence. // // Examples: @@ -516,8 +525,14 @@ message ImportFeatureValuesResponse { } // Request message for [FeaturestoreService.BatchReadFeatureValues][google.cloud.aiplatform.v1beta1.FeaturestoreService.BatchReadFeatureValues]. -// (- Next Id: 6 -) message BatchReadFeatureValuesRequest { + // Describe pass-through fields in read_instance source. + message PassThroughField { + // Required. The name of the field in the CSV header or the name of the column in + // BigQuery table. The naming restriction is the same as [Feature.name][google.cloud.aiplatform.v1beta1.Feature.name]. + string field_name = 1 [(google.api.field_behavior) = REQUIRED]; + } + // Selects Features of an EntityType to read values of and specifies read // settings. message EntityTypeSpec { @@ -559,6 +574,9 @@ message BatchReadFeatureValuesRequest { // Values in the timestamp column must use the RFC 3339 format, e.g. // `2012-07-30T10:43:17.123Z`. CsvSource csv_read_instances = 3; + + // Similar to csv_read_instances, but from BigQuery source. + BigQuerySource bigquery_read_instances = 5; } // Required. The resource name of the Featurestore from which to query Feature values. @@ -574,28 +592,62 @@ message BatchReadFeatureValuesRequest { // Required. Specifies output location and format. FeatureValueDestination destination = 4 [(google.api.field_behavior) = REQUIRED]; + // When not empty, the specified fields in the *_read_instances source will be + // joined as-is in the output, in addition to those fields from the + // Featurestore Entity. + // + // For BigQuery source, the type of the pass-through values will be + // automatically inferred. For CSV source, the pass-through values will be + // passed as opaque bytes. + repeated PassThroughField pass_through_fields = 8; + // Required. Specifies EntityType grouping Features to read values of and settings. // Each EntityType referenced in // [BatchReadFeatureValuesRequest.entity_type_specs] must have a column - // specifying entity IDs in tha EntityType in + // specifying entity IDs in the EntityType in // [BatchReadFeatureValuesRequest.request][] . repeated EntityTypeSpec entity_type_specs = 7 [(google.api.field_behavior) = REQUIRED]; } // Request message for [FeaturestoreService.ExportFeatureValues][google.cloud.aiplatform.v1beta1.FeaturestoreService.ExportFeatureValues]. message ExportFeatureValuesRequest { - // Describes exporting Feature values as of the snapshot timestamp. + // Describes exporting the latest Feature values of all entities of the + // EntityType between [start_time, snapshot_time]. message SnapshotExport { // Exports Feature values as of this timestamp. If not set, // retrieve values as of now. Timestamp, if present, must not have higher // than millisecond precision. google.protobuf.Timestamp snapshot_time = 1; + + // Excludes Feature values with feature generation timestamp before this + // timestamp. If not set, retrieve oldest values kept in Feature Store. + // Timestamp, if present, must not have higher than millisecond precision. + google.protobuf.Timestamp start_time = 2; + } + + // Describes exporting all historical Feature values of all entities of the + // EntityType between [start_time, end_time]. + message FullExport { + // Excludes Feature values with feature generation timestamp before this + // timestamp. If not set, retrieve oldest values kept in Feature Store. + // Timestamp, if present, must not have higher than millisecond precision. + google.protobuf.Timestamp start_time = 2; + + // Exports Feature values as of this timestamp. If not set, + // retrieve values as of now. Timestamp, if present, must not have higher + // than millisecond precision. + google.protobuf.Timestamp end_time = 1; } + // Required. The mode in which Feature values are exported. oneof mode { - // Exports Feature values of all entities of the EntityType as of a snapshot - // time. + // Exports the latest Feature values of all entities of the EntityType + // within a time range. SnapshotExport snapshot_export = 3; + + // Exports all historical values of all entities of the EntityType within a + // time range + FullExport full_export = 7; } // Required. The resource name of the EntityType from which to export Feature values. @@ -717,10 +769,10 @@ message ListEntityTypesRequest { // Lists the EntityTypes that match the filter expression. The following // filters are supported: // - // * `create_time`: Supports =, !=, <, >, >=, and <= comparisons. Values must - // be in RFC 3339 format. - // * `update_time`: Supports =, !=, <, >, >=, and <= comparisons. Values must - // be in RFC 3339 format. + // * `create_time`: Supports `=`, `!=`, `<`, `>`, `>=`, and `<=` comparisons. + // Values must be in RFC 3339 format. + // * `update_time`: Supports `=`, `!=`, `<`, `>`, `>=`, and `<=` comparisons. + // Values must be in RFC 3339 format. // * `labels`: Supports key-value equality as well as key presence. // // Examples: @@ -981,9 +1033,9 @@ message SearchFeaturesRequest { // comparison. This is done by: // // * Removing leading/trailing whitespace and tokenizing the search value. - // Characters that are not one of alphanumeric [a-zA-Z0-9], underscore [_], - // or asterisk [*] are treated as delimiters for tokens. (*) is treated as a - // wildcard that matches characters within a token. + // Characters that are not one of alphanumeric `[a-zA-Z0-9]`, underscore + // `_`, or asterisk `*` are treated as delimiters for tokens. `*` is treated + // as a wildcard that matches characters within a token. // * Ignoring case. // * Prepending an asterisk to the first and appending an asterisk to the // last token in QUERY. @@ -1117,15 +1169,15 @@ message UpdateFeaturestoreOperationMetadata { GenericOperationMetadata generic_metadata = 1; } -// Details of operations that perform import feature values. +// Details of operations that perform import Feature values. message ImportFeatureValuesOperationMetadata { - // Operation metadata for Featurestore import feature values. + // Operation metadata for Featurestore import Feature values. GenericOperationMetadata generic_metadata = 1; // Number of entities that have been imported by the operation. int64 imported_entity_count = 2; - // Number of feature values that have been imported by the operation. + // Number of Feature values that have been imported by the operation. int64 imported_feature_value_count = 3; // The number of rows in input source that weren't imported due to either diff --git a/google/cloud/aiplatform/v1beta1/hyperparameter_tuning_job.proto b/google/cloud/aiplatform/v1beta1/hyperparameter_tuning_job.proto index f3fd3d1c9..aa4a633d0 100644 --- a/google/cloud/aiplatform/v1beta1/hyperparameter_tuning_job.proto +++ b/google/cloud/aiplatform/v1beta1/hyperparameter_tuning_job.proto @@ -26,10 +26,13 @@ import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "HyperparameterTuningJobProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Represents a HyperparameterTuningJob. A HyperparameterTuningJob // has a Study specification and multiple CustomJobs with identical diff --git a/google/cloud/aiplatform/v1beta1/index.proto b/google/cloud/aiplatform/v1beta1/index.proto index a730c3c6a..53996f29c 100644 --- a/google/cloud/aiplatform/v1beta1/index.proto +++ b/google/cloud/aiplatform/v1beta1/index.proto @@ -19,14 +19,18 @@ package google.cloud.aiplatform.v1beta1; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/cloud/aiplatform/v1beta1/deployed_index_ref.proto"; + import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "IndexProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A representation of a collection of database items organized in a way that // allows for approximate nearest neighbor (a.k.a ANN) algorithms search. diff --git a/google/cloud/aiplatform/v1beta1/index_endpoint.proto b/google/cloud/aiplatform/v1beta1/index_endpoint.proto index c5d988483..c33f01a2b 100644 --- a/google/cloud/aiplatform/v1beta1/index_endpoint.proto +++ b/google/cloud/aiplatform/v1beta1/index_endpoint.proto @@ -23,10 +23,13 @@ import "google/cloud/aiplatform/v1beta1/machine_resources.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "IndexEndpointProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Indexes are deployed into it. An IndexEndpoint can have multiple // DeployedIndexes. @@ -72,21 +75,29 @@ message IndexEndpoint { // deployments of. google.protobuf.Timestamp update_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Required. Immutable. The full name of the Google Compute Engine + // Optional. The full name of the Google Compute Engine // [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks) // to which the IndexEndpoint should be peered. // // Private services access must already be configured for the network. If left // unspecified, the Endpoint is not peered with any network. // + // Only one of the fields, [network][google.cloud.aiplatform.v1beta1.IndexEndpoint.network] or + // [enable_private_service_connect][google.cloud.aiplatform.v1beta1.IndexEndpoint.enable_private_service_connect], + // can be set. + // // [Format](https://cloud.google.com/compute/docs/reference/rest/v1/networks/insert): // projects/{project}/global/networks/{network}. // Where {project} is a project number, as in '12345', and {network} is // network name. - string network = 9 [ - (google.api.field_behavior) = REQUIRED, - (google.api.field_behavior) = IMMUTABLE - ]; + string network = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If true, expose the IndexEndpoint via private service connect. + // + // Only one of the fields, [network][google.cloud.aiplatform.v1beta1.IndexEndpoint.network] or + // [enable_private_service_connect][google.cloud.aiplatform.v1beta1.IndexEndpoint.enable_private_service_connect], + // can be set. + bool enable_private_service_connect = 10 [(google.api.field_behavior) = OPTIONAL]; } // A deployment of an Index. IndexEndpoints contain one or more DeployedIndexes. @@ -137,12 +148,10 @@ message DeployedIndex { // Optional. A description of resources that the DeployedIndex uses, which to large // degree are decided by Vertex AI, and optionally allows only a modest // additional configuration. - // If min_replica_count is not set, the default value is 1. If - // max_replica_count is not set, the default value is min_replica_count. The - // max allowed replica count is 1000. - // - // The user is billed for the resources (at least their minimal amount) even - // if the DeployedIndex receives no traffic. + // If min_replica_count is not set, the default value is 2 (we don't provide + // SLA when min_replica_count=1). If max_replica_count is not set, the + // default value is min_replica_count. The max allowed replica count is + // 1000. AutomaticResources automatic_resources = 7 [(google.api.field_behavior) = OPTIONAL]; // Optional. If true, private endpoint's access logs are sent to StackDriver Logging. @@ -157,6 +166,32 @@ message DeployedIndex { // Optional. If set, the authentication is enabled for the private endpoint. DeployedIndexAuthConfig deployed_index_auth_config = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of reserved ip ranges under the VPC network that can be + // used for this DeployedIndex. + // + // If set, we will deploy the index within the provided ip ranges. Otherwise, + // the index might be deployed to any ip ranges under the provided VPC + // network. + // + // The value sohuld be the name of the address + // (https://cloud.google.com/compute/docs/reference/rest/v1/addresses) + // Example: 'vertex-ai-ip-range'. + repeated string reserved_ip_ranges = 10 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The deployment group can be no longer than 64 characters (eg: + // 'test', 'prod'). If not set, we will use the 'default' deployment group. + // + // Creating `deployment_groups` with `reserved_ip_ranges` is a recommended + // practice when the peered network has multiple peering ranges. This creates + // your deployments from predictable IP spaces for easier traffic + // administration. Also, one deployment_group (except 'default') can only be + // used with the same reserved_ip_ranges which means if the deployment_group + // has been used with reserved_ip_ranges: [a, b, c], using it with [a, b] or + // [d, e] is disallowed. + // + // Note: we only support up to 5 deployment groups(not including 'default'). + string deployment_group = 11 [(google.api.field_behavior) = OPTIONAL]; } // Used to set up the auth on the DeployedIndex's private endpoint. @@ -183,8 +218,15 @@ message DeployedIndexAuthConfig { } // IndexPrivateEndpoints proto is used to provide paths for users to send -// requests via private services access. +// requests via private endpoints (e.g. private service access, private service +// connect). +// To send request via private service access, use match_grpc_address. +// To send request via private service connect, use service_attachment. message IndexPrivateEndpoints { // Output only. The ip address used to send match gRPC requests. string match_grpc_address = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the service attachment resource. Populated if private service + // connect is enabled. + string service_attachment = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } diff --git a/google/cloud/aiplatform/v1beta1/index_endpoint_service.proto b/google/cloud/aiplatform/v1beta1/index_endpoint_service.proto index e32ddb062..3d106135d 100644 --- a/google/cloud/aiplatform/v1beta1/index_endpoint_service.proto +++ b/google/cloud/aiplatform/v1beta1/index_endpoint_service.proto @@ -25,10 +25,13 @@ import "google/cloud/aiplatform/v1beta1/operation.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "IndexEndpointServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A service for managing Vertex AI's IndexEndpoints. service IndexEndpointService { @@ -113,6 +116,19 @@ service IndexEndpointService { metadata_type: "UndeployIndexOperationMetadata" }; } + + // Update an existing DeployedIndex under an IndexEndpoint. + rpc MutateDeployedIndex(MutateDeployedIndexRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1beta1/{index_endpoint=projects/*/locations/*/indexEndpoints/*}:mutateDeployedIndex" + body: "deployed_index" + }; + option (google.api.method_signature) = "index_endpoint,deployed_index"; + option (google.longrunning.operation_info) = { + response_type: "MutateDeployedIndexResponse" + metadata_type: "MutateDeployedIndexOperationMetadata" + }; + } } // Request message for [IndexEndpointService.CreateIndexEndpoint][google.cloud.aiplatform.v1beta1.IndexEndpointService.CreateIndexEndpoint]. @@ -252,6 +268,9 @@ message DeployIndexResponse { message DeployIndexOperationMetadata { // The operation generic information. GenericOperationMetadata generic_metadata = 1; + + // The unique index id specified by user + string deployed_index_id = 2; } // Request message for [IndexEndpointService.UndeployIndex][google.cloud.aiplatform.v1beta1.IndexEndpointService.UndeployIndex]. @@ -280,3 +299,37 @@ message UndeployIndexOperationMetadata { // The operation generic information. GenericOperationMetadata generic_metadata = 1; } + +// Request message for [IndexEndpointService.MutateDeployedIndex][google.cloud.aiplatform.v1beta1.IndexEndpointService.MutateDeployedIndex]. +message MutateDeployedIndexRequest { + // Required. The name of the IndexEndpoint resource into which to deploy an Index. + // Format: + // `projects/{project}/locations/{location}/indexEndpoints/{index_endpoint}` + string index_endpoint = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/IndexEndpoint" + } + ]; + + // Required. The DeployedIndex to be updated within the IndexEndpoint. + // Currently, the updatable fields are [DeployedIndex][automatic_resources] + // and [DeployedIndex][dedicated_resources] + DeployedIndex deployed_index = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [IndexEndpointService.MutateDeployedIndex][google.cloud.aiplatform.v1beta1.IndexEndpointService.MutateDeployedIndex]. +message MutateDeployedIndexResponse { + // The DeployedIndex that had been updated in the IndexEndpoint. + DeployedIndex deployed_index = 1; +} + +// Runtime operation information for +// [IndexEndpointService.MutateDeployedIndex][google.cloud.aiplatform.v1beta1.IndexEndpointService.MutateDeployedIndex]. +message MutateDeployedIndexOperationMetadata { + // The operation generic information. + GenericOperationMetadata generic_metadata = 1; + + // The unique index id specified by user + string deployed_index_id = 2; +} diff --git a/google/cloud/aiplatform/v1beta1/index_service.proto b/google/cloud/aiplatform/v1beta1/index_service.proto index 00974fd94..6af0465cf 100644 --- a/google/cloud/aiplatform/v1beta1/index_service.proto +++ b/google/cloud/aiplatform/v1beta1/index_service.proto @@ -25,10 +25,13 @@ import "google/cloud/aiplatform/v1beta1/operation.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "IndexServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A service for creating and managing Vertex AI's Index resources. service IndexService { @@ -268,4 +271,7 @@ message NearestNeighborSearchOperationMetadata { // that, currently for those files that are broken or has unsupported file // format, we will not have the stats for those files. repeated ContentValidationStats content_validation_stats = 1; + + // The ingested data size in bytes. + int64 data_bytes_count = 2; } diff --git a/google/cloud/aiplatform/v1beta1/io.proto b/google/cloud/aiplatform/v1beta1/io.proto index 69a773b0f..8027a8e05 100644 --- a/google/cloud/aiplatform/v1beta1/io.proto +++ b/google/cloud/aiplatform/v1beta1/io.proto @@ -19,10 +19,13 @@ package google.cloud.aiplatform.v1beta1; import "google/api/field_behavior.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "IoProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // The storage details for Avro input content. message AvroSource { @@ -72,7 +75,8 @@ message BigQueryDestination { // Accepted forms: // // * BigQuery path. For example: - // `bq://projectId` or `bq://projectId.bqDatasetId.bqTableId`. + // `bq://projectId` or `bq://projectId.bqDatasetId` or + // `bq://projectId.bqDatasetId.bqTableId`. string output_uri = 1 [(google.api.field_behavior) = REQUIRED]; } diff --git a/google/cloud/aiplatform/v1beta1/job_service.proto b/google/cloud/aiplatform/v1beta1/job_service.proto index a5e24a452..06d2daf5c 100644 --- a/google/cloud/aiplatform/v1beta1/job_service.proto +++ b/google/cloud/aiplatform/v1beta1/job_service.proto @@ -31,10 +31,13 @@ import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; import "google/protobuf/timestamp.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "JobServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A service for creating and managing Vertex AI's jobs. service JobService { @@ -819,7 +822,7 @@ message SearchModelDeploymentMonitoringStatsAnomaliesRequest { ]; // Required. The DeployedModel ID of the - // [google.cloud.aiplatform.master.ModelDeploymentMonitoringObjectiveConfig.deployed_model_id]. + // [ModelDeploymentMonitoringObjectiveConfig.deployed_model_id]. string deployed_model_id = 2 [(google.api.field_behavior) = REQUIRED]; // The feature display name. If specified, only return the stats belonging to @@ -920,7 +923,33 @@ message UpdateModelDeploymentMonitoringJobRequest { // server. ModelDeploymentMonitoringJob model_deployment_monitoring_job = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. The update mask applies to the resource. + // Required. The update mask is used to specify the fields to be overwritten in the + // ModelDeploymentMonitoringJob resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then only the non-empty fields present in the + // request will be overwritten. Set the update_mask to `*` to override all + // fields. + // For the objective config, the user can either provide the update mask for + // model_deployment_monitoring_objective_configs or any combination of its + // nested fields, such as: + // model_deployment_monitoring_objective_configs.objective_config.training_dataset. + // + // Updatable fields: + // + // * `display_name` + // * `model_deployment_monitoring_schedule_config` + // * `model_monitoring_alert_config` + // * `logging_sampling_strategy` + // * `labels` + // * `log_ttl` + // * `enable_monitoring_pipeline_logs` + // . and + // * `model_deployment_monitoring_objective_configs` + // . or + // * `model_deployment_monitoring_objective_configs.objective_config.training_dataset` + // * `model_deployment_monitoring_objective_configs.objective_config.training_prediction_skew_detection_config` + // * `model_deployment_monitoring_objective_configs.objective_config.prediction_drift_detection_config` google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; } diff --git a/google/cloud/aiplatform/v1beta1/job_state.proto b/google/cloud/aiplatform/v1beta1/job_state.proto index c2ac30819..9efe88bf8 100644 --- a/google/cloud/aiplatform/v1beta1/job_state.proto +++ b/google/cloud/aiplatform/v1beta1/job_state.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1beta1; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "JobStateProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Describes the state of a job. enum JobState { diff --git a/google/cloud/aiplatform/v1beta1/lineage_subgraph.proto b/google/cloud/aiplatform/v1beta1/lineage_subgraph.proto index 911918e04..24d818918 100644 --- a/google/cloud/aiplatform/v1beta1/lineage_subgraph.proto +++ b/google/cloud/aiplatform/v1beta1/lineage_subgraph.proto @@ -16,29 +16,27 @@ syntax = "proto3"; package google.cloud.aiplatform.v1beta1; -import "google/api/resource.proto"; import "google/cloud/aiplatform/v1beta1/artifact.proto"; import "google/cloud/aiplatform/v1beta1/event.proto"; import "google/cloud/aiplatform/v1beta1/execution.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "LineageSubgraphProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A subgraph of the overall lineage graph. Event edges connect Artifact and // Execution nodes. message LineageSubgraph { // The Artifact nodes in the subgraph. - repeated Artifact artifacts = 1 [(google.api.resource_reference) = { - type: "aiplatform.googleapis.com/Artifact" - }]; + repeated Artifact artifacts = 1; // The Execution nodes in the subgraph. - repeated Execution executions = 2 [(google.api.resource_reference) = { - type: "aiplatform.googleapis.com/Execution" - }]; + repeated Execution executions = 2; // The Event edges between Artifacts and Executions in the subgraph. repeated Event events = 3; diff --git a/google/cloud/aiplatform/v1beta1/machine_resources.proto b/google/cloud/aiplatform/v1beta1/machine_resources.proto index a37bd073f..1a7ef3f23 100644 --- a/google/cloud/aiplatform/v1beta1/machine_resources.proto +++ b/google/cloud/aiplatform/v1beta1/machine_resources.proto @@ -20,10 +20,13 @@ import "google/api/field_behavior.proto"; import "google/cloud/aiplatform/v1beta1/accelerator_type.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "MachineResourcesProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Specification of a single machine. message MachineSpec { @@ -58,12 +61,11 @@ message DedicatedResources { ]; // Required. Immutable. The minimum number of machine replicas this DeployedModel will be always - // deployed on. If traffic against it increases, it may dynamically be + // deployed on. This value must be greater than or equal to 1. + // + // If traffic against the DeployedModel increases, it may dynamically be // deployed onto more replicas, and as traffic decreases, some of these extra // replicas may be freed. - // Note: if [machine_spec.accelerator_count][google.cloud.aiplatform.v1beta1.MachineSpec.accelerator_count] is - // above 0, currently the model will be always deployed precisely on - // [min_replica_count][google.cloud.aiplatform.v1beta1.DedicatedResources.min_replica_count]. int32 min_replica_count = 2 [ (google.api.field_behavior) = REQUIRED, (google.api.field_behavior) = IMMUTABLE diff --git a/google/cloud/aiplatform/v1beta1/manual_batch_tuning_parameters.proto b/google/cloud/aiplatform/v1beta1/manual_batch_tuning_parameters.proto index 67ff72228..4c7594ce4 100644 --- a/google/cloud/aiplatform/v1beta1/manual_batch_tuning_parameters.proto +++ b/google/cloud/aiplatform/v1beta1/manual_batch_tuning_parameters.proto @@ -19,10 +19,13 @@ package google.cloud.aiplatform.v1beta1; import "google/api/field_behavior.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ManualBatchTuningParametersProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Manual batch tuning parameters. message ManualBatchTuningParameters { diff --git a/google/cloud/aiplatform/v1beta1/metadata_schema.proto b/google/cloud/aiplatform/v1beta1/metadata_schema.proto index adbbc878a..e36d1bfc6 100644 --- a/google/cloud/aiplatform/v1beta1/metadata_schema.proto +++ b/google/cloud/aiplatform/v1beta1/metadata_schema.proto @@ -21,10 +21,13 @@ import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "MetadataSchemaProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Instance of a general MetadataSchema. message MetadataSchema { @@ -53,7 +56,7 @@ message MetadataSchema { // The version of the MetadataSchema. The version's format must match // the following regular expression: `^[0-9]+[.][0-9]+[.][0-9]+$`, which would - // allow to order/compare different versions.Example: 1.0.0, 1.0.1, etc. + // allow to order/compare different versions. Example: 1.0.0, 1.0.1, etc. string schema_version = 2; // Required. The raw YAML string representation of the MetadataSchema. The combination diff --git a/google/cloud/aiplatform/v1beta1/metadata_service.proto b/google/cloud/aiplatform/v1beta1/metadata_service.proto index 366bf450e..ba425ceb1 100644 --- a/google/cloud/aiplatform/v1beta1/metadata_service.proto +++ b/google/cloud/aiplatform/v1beta1/metadata_service.proto @@ -31,10 +31,13 @@ import "google/cloud/aiplatform/v1beta1/operation.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "MetadataServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Service for reading and writing metadata entries. service MetadataService { @@ -70,7 +73,8 @@ service MetadataService { option (google.api.method_signature) = "parent"; } - // Deletes a single MetadataStore. + // Deletes a single MetadataStore and all its child resources (Artifacts, + // Executions, and Contexts). rpc DeleteMetadataStore(DeleteMetadataStoreRequest) returns (google.longrunning.Operation) { option (google.api.http) = { delete: "/v1beta1/{name=projects/*/locations/*/metadataStores/*}" @@ -116,6 +120,31 @@ service MetadataService { option (google.api.method_signature) = "artifact,update_mask"; } + // Deletes an Artifact. + rpc DeleteArtifact(DeleteArtifactRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1beta1/{name=projects/*/locations/*/metadataStores/*/artifacts/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Purges Artifacts. + rpc PurgeArtifacts(PurgeArtifactsRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/artifacts:purge" + body: "*" + }; + option (google.api.method_signature) = "parent"; + option (google.longrunning.operation_info) = { + response_type: "PurgeArtifactsResponse" + metadata_type: "PurgeArtifactsMetadata" + }; + } + // Creates a Context associated with a MetadataStore. rpc CreateContext(CreateContextRequest) returns (Context) { option (google.api.http) = { @@ -162,6 +191,19 @@ service MetadataService { }; } + // Purges Contexts. + rpc PurgeContexts(PurgeContextsRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/contexts:purge" + body: "*" + }; + option (google.api.method_signature) = "parent"; + option (google.longrunning.operation_info) = { + response_type: "PurgeContextsResponse" + metadata_type: "PurgeContextsMetadata" + }; + } + // Adds a set of Artifacts and Executions to a Context. If any of the // Artifacts or Executions have already been added to a Context, they are // simply skipped. @@ -229,6 +271,31 @@ service MetadataService { option (google.api.method_signature) = "execution,update_mask"; } + // Deletes an Execution. + rpc DeleteExecution(DeleteExecutionRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1beta1/{name=projects/*/locations/*/metadataStores/*/executions/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteOperationMetadata" + }; + } + + // Purges Executions. + rpc PurgeExecutions(PurgeExecutionsRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1beta1/{parent=projects/*/locations/*/metadataStores/*}/executions:purge" + body: "*" + }; + option (google.api.method_signature) = "parent"; + option (google.longrunning.operation_info) = { + response_type: "PurgeExecutionsResponse" + metadata_type: "PurgeExecutionsMetadata" + }; + } + // Adds Events to the specified Execution. An Event indicates whether an // Artifact was used as an input or output for an Execution. If an Event // already exists between the Execution and the Artifact, the Event is @@ -290,7 +357,7 @@ service MetadataService { message CreateMetadataStoreRequest { // Required. The resource name of the Location where the MetadataStore should // be created. - // Format: projects/{project}/locations/{location}/ + // Format: `projects/{project}/locations/{location}/` string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -302,10 +369,10 @@ message CreateMetadataStoreRequest { MetadataStore metadata_store = 2 [(google.api.field_behavior) = REQUIRED]; // The {metadatastore} portion of the resource name with the format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` // If not provided, the MetadataStore's ID will be a UUID generated by the // service. - // Must be 4-128 characters in length. Valid characters are /[a-z][0-9]-/. + // Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`. // Must be unique across all MetadataStores in the parent Location. // (Otherwise the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED // if the caller can't view the preexisting MetadataStore.) @@ -322,7 +389,7 @@ message CreateMetadataStoreOperationMetadata { message GetMetadataStoreRequest { // Required. The resource name of the MetadataStore to retrieve. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -335,7 +402,7 @@ message GetMetadataStoreRequest { message ListMetadataStoresRequest { // Required. The Location whose MetadataStores should be listed. // Format: - // projects/{project}/locations/{location} + // `projects/{project}/locations/{location}` string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -373,7 +440,7 @@ message ListMetadataStoresResponse { message DeleteMetadataStoreRequest { // Required. The resource name of the MetadataStore to delete. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -381,10 +448,8 @@ message DeleteMetadataStoreRequest { } ]; - // If set to true, any child resources of this MetadataStore will be deleted. - // (Otherwise, the request will fail with a FAILED_PRECONDITION error if the - // MetadataStore has any child resources.) - bool force = 2; + // Deprecated: Field is no longer supported. + bool force = 2 [deprecated = true]; } // Details of operations that perform [MetadataService.DeleteMetadataStore][google.cloud.aiplatform.v1beta1.MetadataService.DeleteMetadataStore]. @@ -398,7 +463,7 @@ message CreateArtifactRequest { // Required. The resource name of the MetadataStore where the Artifact should // be created. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -410,9 +475,9 @@ message CreateArtifactRequest { Artifact artifact = 2 [(google.api.field_behavior) = REQUIRED]; // The {artifact} portion of the resource name with the format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` // If not provided, the Artifact's ID will be a UUID generated by the service. - // Must be 4-128 characters in length. Valid characters are /[a-z][0-9]-/. + // Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`. // Must be unique across all Artifacts in the parent MetadataStore. (Otherwise // the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED if the // caller can't view the preexisting Artifact.) @@ -423,7 +488,7 @@ message CreateArtifactRequest { message GetArtifactRequest { // Required. The resource name of the Artifact to retrieve. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -436,7 +501,7 @@ message GetArtifactRequest { message ListArtifactsRequest { // Required. The MetadataStore whose Artifacts should be listed. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -503,23 +568,84 @@ message UpdateArtifactRequest { // The Artifact's [Artifact.name][google.cloud.aiplatform.v1beta1.Artifact.name] field is used to identify the Artifact to // be updated. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` Artifact artifact = 1 [(google.api.field_behavior) = REQUIRED]; // Required. A FieldMask indicating which fields should be updated. + // Functionality of this field is not yet supported. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; - // If set to true, and the [Artifact][google.cloud.aiplatform.v1beta1.Artifact] is not found, a new [Artifact][google.cloud.aiplatform.v1beta1.Artifact] will - // be created. In this situation, `update_mask` is ignored. + // If set to true, and the [Artifact][google.cloud.aiplatform.v1beta1.Artifact] is not found, a new [Artifact][google.cloud.aiplatform.v1beta1.Artifact] is + // created. bool allow_missing = 3; } +// Request message for [MetadataService.DeleteArtifact][google.cloud.aiplatform.v1beta1.MetadataService.DeleteArtifact]. +message DeleteArtifactRequest { + // Required. The resource name of the Artifact to delete. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Artifact" + } + ]; + + // Optional. The etag of the Artifact to delete. + // If this is provided, it must match the server's etag. Otherwise, the + // request will fail with a FAILED_PRECONDITION. + string etag = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for [MetadataService.PurgeArtifacts][google.cloud.aiplatform.v1beta1.MetadataService.PurgeArtifacts]. +message PurgeArtifactsRequest { + // Required. The metadata store to purge Artifacts from. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Artifact" + } + ]; + + // Required. A required filter matching the Artifacts to be purged. + // E.g., `update_time <= 2020-11-19T11:30:00-04:00`. + string filter = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Flag to indicate to actually perform the purge. + // If `force` is set to false, the method will return a sample of + // Artifact names that would be deleted. + bool force = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for [MetadataService.PurgeArtifacts][google.cloud.aiplatform.v1beta1.MetadataService.PurgeArtifacts]. +message PurgeArtifactsResponse { + // The number of Artifacts that this request deleted (or, if `force` is false, + // the number of Artifacts that will be deleted). This can be an estimate. + int64 purge_count = 1; + + // A sample of the Artifact names that will be deleted. + // Only populated if `force` is set to false. The maximum number of samples is + // 100 (it is possible to return fewer). + repeated string purge_sample = 2 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Artifact" + }]; +} + +// Details of operations that perform [MetadataService.PurgeArtifacts][google.cloud.aiplatform.v1beta1.MetadataService.PurgeArtifacts]. +message PurgeArtifactsMetadata { + // Operation metadata for purging Artifacts. + GenericOperationMetadata generic_metadata = 1; +} + // Request message for [MetadataService.CreateContext][google.cloud.aiplatform.v1beta1.MetadataService.CreateContext]. message CreateContextRequest { // Required. The resource name of the MetadataStore where the Context should be // created. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -531,9 +657,9 @@ message CreateContextRequest { Context context = 2 [(google.api.field_behavior) = REQUIRED]; // The {context} portion of the resource name with the format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}. + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}`. // If not provided, the Context's ID will be a UUID generated by the service. - // Must be 4-128 characters in length. Valid characters are /[a-z][0-9]-/. + // Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`. // Must be unique across all Contexts in the parent MetadataStore. (Otherwise // the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED if the // caller can't view the preexisting Context.) @@ -544,7 +670,7 @@ message CreateContextRequest { message GetContextRequest { // Required. The resource name of the Context to retrieve. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -557,7 +683,7 @@ message GetContextRequest { message ListContextsRequest { // Required. The MetadataStore whose Contexts should be listed. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -628,22 +754,23 @@ message UpdateContextRequest { // The Context's [Context.name][google.cloud.aiplatform.v1beta1.Context.name] field is used to identify the Context to be // updated. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` Context context = 1 [(google.api.field_behavior) = REQUIRED]; // Required. A FieldMask indicating which fields should be updated. + // Functionality of this field is not yet supported. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; - // If set to true, and the [Context][google.cloud.aiplatform.v1beta1.Context] is not found, a new [Context][google.cloud.aiplatform.v1beta1.Context] will be - // created. In this situation, `update_mask` is ignored. + // If set to true, and the [Context][google.cloud.aiplatform.v1beta1.Context] is not found, a new [Context][google.cloud.aiplatform.v1beta1.Context] is + // created. bool allow_missing = 3; } // Request message for [MetadataService.DeleteContext][google.cloud.aiplatform.v1beta1.MetadataService.DeleteContext]. message DeleteContextRequest { - // Required. The resource name of the Context to retrieve. + // Required. The resource name of the Context to delete. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -651,11 +778,56 @@ message DeleteContextRequest { } ]; - // If set to true, any child resources of this Context will be deleted. - // (Otherwise, the request will fail with a FAILED_PRECONDITION error if the - // Context has any child resources, such as another Context, Artifact, or - // Execution). + // The force deletion semantics is still undefined. + // Users should not use this field. bool force = 2; + + // Optional. The etag of the Context to delete. + // If this is provided, it must match the server's etag. Otherwise, the + // request will fail with a FAILED_PRECONDITION. + string etag = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for [MetadataService.PurgeContexts][google.cloud.aiplatform.v1beta1.MetadataService.PurgeContexts]. +message PurgeContextsRequest { + // Required. The metadata store to purge Contexts from. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Context" + } + ]; + + // Required. A required filter matching the Contexts to be purged. + // E.g., `update_time <= 2020-11-19T11:30:00-04:00`. + string filter = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Flag to indicate to actually perform the purge. + // If `force` is set to false, the method will return a sample of + // Context names that would be deleted. + bool force = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for [MetadataService.PurgeContexts][google.cloud.aiplatform.v1beta1.MetadataService.PurgeContexts]. +message PurgeContextsResponse { + // The number of Contexts that this request deleted (or, if `force` is false, + // the number of Contexts that will be deleted). This can be an estimate. + int64 purge_count = 1; + + // A sample of the Context names that will be deleted. + // Only populated if `force` is set to false. The maximum number of samples is + // 100 (it is possible to return fewer). + repeated string purge_sample = 2 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Context" + }]; +} + +// Details of operations that perform [MetadataService.PurgeContexts][google.cloud.aiplatform.v1beta1.MetadataService.PurgeContexts]. +message PurgeContextsMetadata { + // Operation metadata for purging Contexts. + GenericOperationMetadata generic_metadata = 1; } // Request message for [MetadataService.AddContextArtifactsAndExecutions][google.cloud.aiplatform.v1beta1.MetadataService.AddContextArtifactsAndExecutions]. @@ -663,7 +835,7 @@ message AddContextArtifactsAndExecutionsRequest { // Required. The resource name of the Context that the Artifacts and Executions // belong to. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` string context = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -674,7 +846,7 @@ message AddContextArtifactsAndExecutionsRequest { // The resource names of the Artifacts to attribute to the Context. // // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` repeated string artifacts = 2 [(google.api.resource_reference) = { type: "aiplatform.googleapis.com/Artifact" }]; @@ -683,7 +855,7 @@ message AddContextArtifactsAndExecutionsRequest { // Context. // // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` repeated string executions = 3 [(google.api.resource_reference) = { type: "aiplatform.googleapis.com/Execution" }]; @@ -699,7 +871,7 @@ message AddContextChildrenRequest { // Required. The resource name of the parent Context. // // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` string context = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -723,7 +895,7 @@ message QueryContextLineageSubgraphRequest { // Required. The resource name of the Context whose Artifacts and Executions // should be retrieved as a LineageSubgraph. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/contexts/{context}` // // The request may error with FAILED_PRECONDITION if the number of Artifacts, // the number of Executions, or the number of Events that would be returned @@ -741,7 +913,7 @@ message CreateExecutionRequest { // Required. The resource name of the MetadataStore where the Execution should // be created. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -753,10 +925,10 @@ message CreateExecutionRequest { Execution execution = 2 [(google.api.field_behavior) = REQUIRED]; // The {execution} portion of the resource name with the format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` // If not provided, the Execution's ID will be a UUID generated by the // service. - // Must be 4-128 characters in length. Valid characters are /[a-z][0-9]-/. + // Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`. // Must be unique across all Executions in the parent MetadataStore. // (Otherwise the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED // if the caller can't view the preexisting Execution.) @@ -767,7 +939,7 @@ message CreateExecutionRequest { message GetExecutionRequest { // Required. The resource name of the Execution to retrieve. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -780,7 +952,7 @@ message GetExecutionRequest { message ListExecutionsRequest { // Required. The MetadataStore whose Executions should be listed. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -846,23 +1018,85 @@ message UpdateExecutionRequest { // The Execution's [Execution.name][google.cloud.aiplatform.v1beta1.Execution.name] field is used to identify the Execution // to be updated. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` Execution execution = 1 [(google.api.field_behavior) = REQUIRED]; // Required. A FieldMask indicating which fields should be updated. + // Functionality of this field is not yet supported. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; // If set to true, and the [Execution][google.cloud.aiplatform.v1beta1.Execution] is not found, a new [Execution][google.cloud.aiplatform.v1beta1.Execution] - // will be created. In this situation, `update_mask` is ignored. + // is created. bool allow_missing = 3; } +// Request message for [MetadataService.DeleteExecution][google.cloud.aiplatform.v1beta1.MetadataService.DeleteExecution]. +message DeleteExecutionRequest { + // Required. The resource name of the Execution to delete. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Execution" + } + ]; + + // Optional. The etag of the Execution to delete. + // If this is provided, it must match the server's etag. Otherwise, the + // request will fail with a FAILED_PRECONDITION. + string etag = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message for [MetadataService.PurgeExecutions][google.cloud.aiplatform.v1beta1.MetadataService.PurgeExecutions]. +message PurgeExecutionsRequest { + // Required. The metadata store to purge Executions from. + // Format: + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "aiplatform.googleapis.com/Execution" + } + ]; + + // Required. A required filter matching the Executions to be purged. + // E.g., `update_time <= 2020-11-19T11:30:00-04:00`. + string filter = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Flag to indicate to actually perform the purge. + // If `force` is set to false, the method will return a sample of + // Execution names that would be deleted. + bool force = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Response message for [MetadataService.PurgeExecutions][google.cloud.aiplatform.v1beta1.MetadataService.PurgeExecutions]. +message PurgeExecutionsResponse { + // The number of Executions that this request deleted (or, if `force` is + // false, the number of Executions that will be deleted). This can be an + // estimate. + int64 purge_count = 1; + + // A sample of the Execution names that will be deleted. + // Only populated if `force` is set to false. The maximum number of samples is + // 100 (it is possible to return fewer). + repeated string purge_sample = 2 [(google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Execution" + }]; +} + +// Details of operations that perform [MetadataService.PurgeExecutions][google.cloud.aiplatform.v1beta1.MetadataService.PurgeExecutions]. +message PurgeExecutionsMetadata { + // Operation metadata for purging Executions. + GenericOperationMetadata generic_metadata = 1; +} + // Request message for [MetadataService.AddExecutionEvents][google.cloud.aiplatform.v1beta1.MetadataService.AddExecutionEvents]. message AddExecutionEventsRequest { // Required. The resource name of the Execution that the Events connect // Artifacts with. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` string execution = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -884,7 +1118,7 @@ message QueryExecutionInputsAndOutputsRequest { // Required. The resource name of the Execution whose input and output Artifacts should // be retrieved as a LineageSubgraph. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/executions/{execution}` string execution = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -898,7 +1132,7 @@ message CreateMetadataSchemaRequest { // Required. The resource name of the MetadataStore where the MetadataSchema should // be created. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -910,10 +1144,10 @@ message CreateMetadataSchemaRequest { MetadataSchema metadata_schema = 2 [(google.api.field_behavior) = REQUIRED]; // The {metadata_schema} portion of the resource name with the format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/metadataSchemas/{metadataschema} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/metadataSchemas/{metadataschema}` // If not provided, the MetadataStore's ID will be a UUID generated by the // service. - // Must be 4-128 characters in length. Valid characters are /[a-z][0-9]-/. + // Must be 4-128 characters in length. Valid characters are `/[a-z][0-9]-/`. // Must be unique across all MetadataSchemas in the parent Location. // (Otherwise the request will fail with ALREADY_EXISTS, or PERMISSION_DENIED // if the caller can't view the preexisting MetadataSchema.) @@ -924,7 +1158,7 @@ message CreateMetadataSchemaRequest { message GetMetadataSchemaRequest { // Required. The resource name of the MetadataSchema to retrieve. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/metadataSchemas/{metadataschema} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/metadataSchemas/{metadataschema}` string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -937,7 +1171,7 @@ message GetMetadataSchemaRequest { message ListMetadataSchemasRequest { // Required. The MetadataStore whose MetadataSchemas should be listed. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}` string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -979,7 +1213,7 @@ message QueryArtifactLineageSubgraphRequest { // Required. The resource name of the Artifact whose Lineage needs to be retrieved as a // LineageSubgraph. // Format: - // projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact} + // `projects/{project}/locations/{location}/metadataStores/{metadatastore}/artifacts/{artifact}` // // The request may error with FAILED_PRECONDITION if the number of Artifacts, // the number of Executions, or the number of Events that would be returned diff --git a/google/cloud/aiplatform/v1beta1/metadata_store.proto b/google/cloud/aiplatform/v1beta1/metadata_store.proto index 571e8a8a5..a7fc66709 100644 --- a/google/cloud/aiplatform/v1beta1/metadata_store.proto +++ b/google/cloud/aiplatform/v1beta1/metadata_store.proto @@ -22,10 +22,13 @@ import "google/cloud/aiplatform/v1beta1/encryption_spec.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "MetadataProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Instance of a metadata store. Contains a set of metadata that can be // queried. diff --git a/google/cloud/aiplatform/v1beta1/migratable_resource.proto b/google/cloud/aiplatform/v1beta1/migratable_resource.proto index ace0c4736..5e6f5f697 100644 --- a/google/cloud/aiplatform/v1beta1/migratable_resource.proto +++ b/google/cloud/aiplatform/v1beta1/migratable_resource.proto @@ -21,10 +21,13 @@ import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "MigratableResourceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; option (google.api.resource_definition) = { type: "ml.googleapis.com/Version" pattern: "projects/{project}/models/{model}/versions/{version}" diff --git a/google/cloud/aiplatform/v1beta1/migration_service.proto b/google/cloud/aiplatform/v1beta1/migration_service.proto index 76ad14b27..4b843523e 100644 --- a/google/cloud/aiplatform/v1beta1/migration_service.proto +++ b/google/cloud/aiplatform/v1beta1/migration_service.proto @@ -27,10 +27,13 @@ import "google/cloud/aiplatform/v1beta1/operation.proto"; import "google/longrunning/operations.proto"; import "google/rpc/status.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "MigrationServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A service that migrates resources from automl.googleapis.com, // datalabeling.googleapis.com and ml.googleapis.com to Vertex AI. @@ -196,8 +199,8 @@ message MigrateResourceRequest { string dataset_display_name = 2 [(google.api.field_behavior) = REQUIRED]; } - // Config for migrating Dataset in datalabeling.googleapis.com to AI - // Platform's Dataset. + // Config for migrating Dataset in datalabeling.googleapis.com to Vertex + // AI's Dataset. message MigrateDataLabelingDatasetConfig { // Config for migrating AnnotatedDataset in datalabeling.googleapis.com to // Vertex AI's SavedQuery. diff --git a/google/cloud/aiplatform/v1beta1/model.proto b/google/cloud/aiplatform/v1beta1/model.proto index e77f6a94d..aec1b35c9 100644 --- a/google/cloud/aiplatform/v1beta1/model.proto +++ b/google/cloud/aiplatform/v1beta1/model.proto @@ -23,14 +23,18 @@ import "google/cloud/aiplatform/v1beta1/deployed_model_ref.proto"; import "google/cloud/aiplatform/v1beta1/encryption_spec.proto"; import "google/cloud/aiplatform/v1beta1/env_var.proto"; import "google/cloud/aiplatform/v1beta1/explanation.proto"; + import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ModelProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A trained machine learning Model. message Model { @@ -136,7 +140,8 @@ message Model { // not available for export. repeated ExportFormat supported_export_formats = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. The resource name of the TrainingPipeline that uploaded this Model, if any. + // Output only. The resource name of the TrainingPipeline that uploaded this Model, if + // any. string training_pipeline = 7 [ (google.api.field_behavior) = OUTPUT_ONLY, (google.api.resource_reference) = { @@ -345,7 +350,7 @@ message ModelContainerSpec { // predictions. This URI must identify an image in Artifact Registry or // Container Registry. Learn more about the [container publishing // requirements](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#publishing), - // including permissions requirements for the AI Platform Service Agent. + // including permissions requirements for the Vertex AI Service Agent. // // The container image is ingested upon [ModelService.UploadModel][google.cloud.aiplatform.v1beta1.ModelService.UploadModel], stored // internally, and this original path is afterwards not used. @@ -469,8 +474,8 @@ message ModelContainerSpec { repeated EnvVar env = 4 [(google.api.field_behavior) = IMMUTABLE]; // Immutable. List of ports to expose from the container. Vertex AI sends any - // prediction requests that it receives to the first port on this list. AI - // Platform also sends + // prediction requests that it receives to the first port on this list. Vertex + // AI also sends // [liveness and health // checks](https://cloud.google.com/vertex-ai/docs/predictions/custom-container-requirements#liveness) // to this port. diff --git a/google/cloud/aiplatform/v1beta1/model_deployment_monitoring_job.proto b/google/cloud/aiplatform/v1beta1/model_deployment_monitoring_job.proto index 260b20c65..dd8554130 100644 --- a/google/cloud/aiplatform/v1beta1/model_deployment_monitoring_job.proto +++ b/google/cloud/aiplatform/v1beta1/model_deployment_monitoring_job.proto @@ -18,6 +18,7 @@ package google.cloud.aiplatform.v1beta1; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/cloud/aiplatform/v1beta1/encryption_spec.proto"; import "google/cloud/aiplatform/v1beta1/feature_monitoring_stats.proto"; import "google/cloud/aiplatform/v1beta1/io.proto"; import "google/cloud/aiplatform/v1beta1/job_state.proto"; @@ -25,12 +26,17 @@ import "google/cloud/aiplatform/v1beta1/model_monitoring.proto"; import "google/protobuf/duration.proto"; import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; +import "google/rpc/status.proto"; + import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ModelDeploymentMonitoringJobProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // The Model Monitoring Objective types. enum ModelDeploymentMonitoringObjectiveType { @@ -107,7 +113,7 @@ message ModelDeploymentMonitoringJob { MonitoringScheduleState schedule_state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; // Required. The config for monitoring objectives. This is a per DeployedModel config. - // Each DeployedModel needs to be configed separately. + // Each DeployedModel needs to be configured separately. repeated ModelDeploymentMonitoringObjectiveConfig model_deployment_monitoring_objective_configs = 6 [(google.api.field_behavior) = REQUIRED]; // Required. Schedule config for running the monitoring job. @@ -178,6 +184,21 @@ message ModelDeploymentMonitoringJob { // Stats anomalies base folder path. GcsDestination stats_anomalies_base_directory = 20; + + // Customer-managed encryption key spec for a ModelDeploymentMonitoringJob. If + // set, this ModelDeploymentMonitoringJob and all sub-resources of this + // ModelDeploymentMonitoringJob will be secured by this key. + EncryptionSpec encryption_spec = 21; + + // If true, the scheduled monitoring pipeline logs are sent to + // Google Cloud Logging, including pipeline status and anomalies detected. + // Please note the logs incur cost, which are subject to [Cloud Logging + // pricing](https://cloud.google.com/logging#pricing). + bool enable_monitoring_pipeline_logs = 22; + + // Output only. Only populated when the job's state is `JOB_STATE_FAILED` or + // `JOB_STATE_CANCELLED`. + google.rpc.Status error = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; } // ModelDeploymentMonitoringBigQueryTable specifies the BigQuery table name diff --git a/google/cloud/aiplatform/v1beta1/model_evaluation.proto b/google/cloud/aiplatform/v1beta1/model_evaluation.proto index 09e33a824..148458313 100644 --- a/google/cloud/aiplatform/v1beta1/model_evaluation.proto +++ b/google/cloud/aiplatform/v1beta1/model_evaluation.proto @@ -23,10 +23,13 @@ import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ModelEvaluationProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A collection of metrics calculated by comparing Model's predictions on all of // the test data against annotations from the test data. diff --git a/google/cloud/aiplatform/v1beta1/model_evaluation_slice.proto b/google/cloud/aiplatform/v1beta1/model_evaluation_slice.proto index 0ac81cddc..8a882c435 100644 --- a/google/cloud/aiplatform/v1beta1/model_evaluation_slice.proto +++ b/google/cloud/aiplatform/v1beta1/model_evaluation_slice.proto @@ -22,10 +22,13 @@ import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ModelEvaluationSliceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A collection of metrics calculated by comparing Model's predictions on a // slice of the test data against ground truth annotations. diff --git a/google/cloud/aiplatform/v1beta1/model_monitoring.proto b/google/cloud/aiplatform/v1beta1/model_monitoring.proto index a5e8717e7..d1bdc0f57 100644 --- a/google/cloud/aiplatform/v1beta1/model_monitoring.proto +++ b/google/cloud/aiplatform/v1beta1/model_monitoring.proto @@ -20,10 +20,13 @@ import "google/api/resource.proto"; import "google/cloud/aiplatform/v1beta1/io.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ModelMonitoringProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Next ID: 6 message ModelMonitoringObjectiveConfig { @@ -69,19 +72,69 @@ message ModelMonitoringObjectiveConfig { // training dataset sources and the skew detection parameters. message TrainingPredictionSkewDetectionConfig { // Key is the feature name and value is the threshold. If a feature needs to - // be monitored for skew, a value threshold must be configed for that + // be monitored for skew, a value threshold must be configured for that // feature. The threshold here is against feature distribution distance // between the training and prediction feature. map skew_thresholds = 1; + + // Key is the feature name and value is the threshold. The threshold here is + // against attribution score distance between the training and prediction + // feature. + map attribution_score_skew_thresholds = 2; } // The config for Prediction data drift detection. message PredictionDriftDetectionConfig { // Key is the feature name and value is the threshold. If a feature needs to - // be monitored for drift, a value threshold must be configed for that + // be monitored for drift, a value threshold must be configured for that // feature. The threshold here is against feature distribution distance // between different time windws. map drift_thresholds = 1; + + // Key is the feature name and value is the threshold. The threshold here is + // against attribution score distance between different time windows. + map attribution_score_drift_thresholds = 2; + } + + // The config for integrating with Vertex Explainable AI. Only applicable if + // the Model has explanation_spec populated. + message ExplanationConfig { + // Output from [BatchPredictionJob][google.cloud.aiplatform.v1beta1.BatchPredictionJob] for Model Monitoring baseline dataset, + // which can be used to generate baseline attribution scores. + message ExplanationBaseline { + // The storage format of the predictions generated BatchPrediction job. + enum PredictionFormat { + // Should not be set. + PREDICTION_FORMAT_UNSPECIFIED = 0; + + // Predictions are in JSONL files. + JSONL = 2; + + // Predictions are in BigQuery. + BIGQUERY = 3; + } + + // The configuration specifying of BatchExplain job output. This can be + // used to generate the baseline of feature attribution scores. + oneof destination { + // Cloud Storage location for BatchExplain output. + GcsDestination gcs = 2; + + // BigQuery location for BatchExplain output. + BigQueryDestination bigquery = 3; + } + + // The storage format of the predictions generated BatchPrediction job. + PredictionFormat prediction_format = 1; + } + + // If want to analyze the Vertex Explainable AI feature attribute scores or + // not. If set to true, Vertex AI will log the feature attributions from + // explain response and do the skew/drift detection for them. + bool enable_feature_attributes = 1; + + // Predictions generated by the BatchPredictionJob using baseline dataset. + ExplanationBaseline explanation_baseline = 2; } // Training dataset for models. This field has to be set only if @@ -93,9 +146,12 @@ message ModelMonitoringObjectiveConfig { // The config for drift of prediction data. PredictionDriftDetectionConfig prediction_drift_detection_config = 3; + + // The config for integrating with Vertex Explainable AI. + ExplanationConfig explanation_config = 5; } -// Next ID: 2 +// Next ID: 3 message ModelMonitoringAlertConfig { // The config for email alert. message EmailAlertConfig { @@ -107,6 +163,13 @@ message ModelMonitoringAlertConfig { // Email alert config. EmailAlertConfig email_alert_config = 1; } + + // Dump the anomalies to Cloud Logging. The anomalies will be put to json + // payload encoded from proto + // [google.cloud.aiplatform.logging.ModelMonitoringAnomaliesLogEntry][]. + // This can be further sinked to Pub/Sub or any other services supported + // by Cloud Logging. + bool enable_logging = 2; } // The config for feature monitoring threshold. diff --git a/google/cloud/aiplatform/v1beta1/model_service.proto b/google/cloud/aiplatform/v1beta1/model_service.proto index 0e8299363..ac8f22e9f 100644 --- a/google/cloud/aiplatform/v1beta1/model_service.proto +++ b/google/cloud/aiplatform/v1beta1/model_service.proto @@ -28,10 +28,13 @@ import "google/cloud/aiplatform/v1beta1/operation.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ModelServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A service for managing Vertex AI's machine learning Models. service ModelService { @@ -77,8 +80,10 @@ service ModelService { } // Deletes a Model. - // Note: Model can only be deleted if there are no DeployedModels created - // from it. + // + // A model cannot be deleted if any [Endpoint][google.cloud.aiplatform.v1beta1.Endpoint] resource has a + // [DeployedModel][google.cloud.aiplatform.v1beta1.DeployedModel] based on the model in its + // [deployed_models][google.cloud.aiplatform.v1beta1.Endpoint.deployed_models] field. rpc DeleteModel(DeleteModelRequest) returns (google.longrunning.Operation) { option (google.api.http) = { delete: "/v1beta1/{name=projects/*/locations/*/models/*}" @@ -90,7 +95,7 @@ service ModelService { }; } - // Exports a trained, exportable, Model to a location specified by the + // Exports a trained, exportable Model to a location specified by the // user. A Model is considered to be exportable if it has at least one // [supported export format][google.cloud.aiplatform.v1beta1.Model.supported_export_formats]. rpc ExportModel(ExportModelRequest) returns (google.longrunning.Operation) { @@ -281,7 +286,6 @@ message ExportModelRequest { } // Required. The resource name of the Model to export. - // Format: `projects/{project}/locations/{location}/models/{model}` string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { diff --git a/google/cloud/aiplatform/v1beta1/operation.proto b/google/cloud/aiplatform/v1beta1/operation.proto index 89702b868..045f921b7 100644 --- a/google/cloud/aiplatform/v1beta1/operation.proto +++ b/google/cloud/aiplatform/v1beta1/operation.proto @@ -21,10 +21,13 @@ import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "OperationProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Generic Metadata shared by all operations. message GenericOperationMetadata { diff --git a/google/cloud/aiplatform/v1beta1/pipeline_job.proto b/google/cloud/aiplatform/v1beta1/pipeline_job.proto index a17cd2427..999dff9d1 100644 --- a/google/cloud/aiplatform/v1beta1/pipeline_job.proto +++ b/google/cloud/aiplatform/v1beta1/pipeline_job.proto @@ -29,10 +29,13 @@ import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "Pipeline"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; option (google.api.resource_definition) = { type: "compute.googleapis.com/Network" pattern: "projects/{project}/global/networks/{network}" @@ -47,10 +50,13 @@ message PipelineJob { // The runtime config of a PipelineJob. message RuntimeConfig { - // The runtime parameters of the PipelineJob. The parameters will be - // passed into [PipelineJob.pipeline_spec][google.cloud.aiplatform.v1beta1.PipelineJob.pipeline_spec] to replace the placeholders - // at runtime. - map parameters = 1; + // Deprecated. Use [RuntimeConfig.parameter_values][google.cloud.aiplatform.v1beta1.PipelineJob.RuntimeConfig.parameter_values] instead. The runtime + // parameters of the PipelineJob. The parameters will be passed into + // [PipelineJob.pipeline_spec][google.cloud.aiplatform.v1beta1.PipelineJob.pipeline_spec] to replace the placeholders at runtime. + // This field is used by pipelines built using + // `PipelineJob.pipeline_spec.schema_version` 2.0.0 or lower, such as + // pipelines built using Kubeflow Pipelines SDK 1.8 or lower. + map parameters = 1 [deprecated = true]; // Required. A path in a Cloud Storage bucket, which will be treated as the root // output directory of the pipeline. It is used by the system to @@ -60,6 +66,13 @@ message PipelineJob { // pipeline must have the `storage.objects.get` and `storage.objects.create` // permissions for this bucket. string gcs_output_directory = 2 [(google.api.field_behavior) = REQUIRED]; + + // The runtime parameters of the PipelineJob. The parameters will be + // passed into [PipelineJob.pipeline_spec][google.cloud.aiplatform.v1beta1.PipelineJob.pipeline_spec] to replace the placeholders + // at runtime. This field is used by pipelines built using + // `PipelineJob.pipeline_spec.schema_version` 2.1.0, such as pipelines built + // using Kubeflow Pipelines SDK 1.9 or higher and the v2 DSL. + map parameter_values = 3; } // Output only. The resource name of the PipelineJob. @@ -154,6 +167,23 @@ message PipelineJobDetail { // The runtime detail of a task execution. message PipelineTaskDetail { + // A single record of the task status. + message PipelineTaskStatus { + // Output only. Update time of this status. + google.protobuf.Timestamp update_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The state of the task. + State state = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The error that occurred during the state. May be set when the state is + // any of the non-final state (PENDING/RUNNING/CANCELLING) or FAILED state. + // If the state is FAILED, the error here is final and not going to be + // retried. + // If the state is a non-final state, the error indicates a system-error + // being retried. + google.rpc.Status error = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + // A list of artifact metadata. message ArtifactList { // Output only. A list of artifact metadata. @@ -228,6 +258,10 @@ message PipelineTaskDetail { // Only populated when the task's state is FAILED or CANCELLED. google.rpc.Status error = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. A list of task status. This field keeps a record of task status evolving + // over time. + repeated PipelineTaskStatus pipeline_task_status = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. The runtime input artifacts of the task. map inputs = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; diff --git a/google/cloud/aiplatform/v1beta1/pipeline_service.proto b/google/cloud/aiplatform/v1beta1/pipeline_service.proto index a73292b29..7ab9340fa 100644 --- a/google/cloud/aiplatform/v1beta1/pipeline_service.proto +++ b/google/cloud/aiplatform/v1beta1/pipeline_service.proto @@ -26,14 +26,17 @@ import "google/longrunning/operations.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "PipelineServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A service for creating and managing Vertex AI's pipelines. This includes both // `TrainingPipeline` resources (used for AutoML and custom training) and -// `PipelineJob` resources (used for Vertex Pipelines). +// `PipelineJob` resources (used for Vertex AI Pipelines). service PipelineService { option (google.api.default_host) = "aiplatform.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; @@ -303,18 +306,37 @@ message ListPipelineJobsRequest { } ]; - // The standard list filter. - // Supported fields: + // Lists the PipelineJobs that match the filter expression. The following + // fields are supported: + // + // * `pipeline_name`: Supports `=` and `!=` comparisons. + // * `display_name`: Supports `=`, `!=` comparisons, and `:` wildcard. + // * `pipeline_job_user_id`: Supports `=`, `!=` comparisons, and `:` wildcard. + // for example, can check if pipeline's display_name contains *step* by doing + // display_name:\"*step*\" + // * `state`: Supports `=` and `!=` comparisons. + // * `create_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. + // Values must be in RFC 3339 format. + // * `update_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. + // Values must be in RFC 3339 format. + // * `end_time`: Supports `=`, `!=`, `<`, `>`, `<=`, and `>=` comparisons. + // Values must be in RFC 3339 format. + // * `labels`: Supports key-value equality and key presence. // - // * `display_name` supports `=` and `!=`. - // * `state` supports `=` and `!=`. + // Filter expressions can be combined together using logical operators + // (`AND` & `OR`). + // For example: `pipeline_name="test" AND create_time>"2020-05-18T13:30:00Z"`. // - // The following examples demonstrate how to filter the list of PipelineJobs: + // The syntax to define filter expression is based on + // https://google.aip.dev/160. // - // * `state="PIPELINE_STATE_SUCCEEDED" AND display_name="my_pipeline"` - // * `state="PIPELINE_STATE_RUNNING" OR display_name="my_pipeline"` - // * `NOT display_name="my_pipeline"` - // * `state="PIPELINE_STATE_FAILED"` + // Examples: + // + // * `create_time>"2021-05-18T00:00:00Z" OR + // update_time>"2020-05-18T00:00:00Z"` PipelineJobs created or updated + // after 2020-05-18 00:00:00 UTC. + // * `labels.env = "prod"` + // PipelineJobs with label "env" set to "prod". string filter = 2; // The standard list page size. @@ -325,6 +347,20 @@ message ListPipelineJobsRequest { // [ListPipelineJobsResponse.next_page_token][google.cloud.aiplatform.v1beta1.ListPipelineJobsResponse.next_page_token] of the previous // [PipelineService.ListPipelineJobs][google.cloud.aiplatform.v1beta1.PipelineService.ListPipelineJobs] call. string page_token = 4; + + // A comma-separated list of fields to order by. The default sort order is in + // ascending order. Use "desc" after a field name for descending. You can have + // multiple order_by fields provided e.g. "create_time desc, end_time", + // "end_time, start_time, update_time" For example, using "create_time desc, + // end_time" will order results by create time in descending order, and if + // there are multiple jobs having the same create time, order them by the end + // time in ascending order. if order_by is not specified, it will order by + // default order is create time in descending order. Supported fields: + // * `create_time` + // * `update_time` + // * `end_time` + // * `start_time` + string order_by = 6; } // Response message for [PipelineService.ListPipelineJobs][google.cloud.aiplatform.v1beta1.PipelineService.ListPipelineJobs] diff --git a/google/cloud/aiplatform/v1beta1/pipeline_state.proto b/google/cloud/aiplatform/v1beta1/pipeline_state.proto index a94a825f3..1dfb08e5d 100644 --- a/google/cloud/aiplatform/v1beta1/pipeline_state.proto +++ b/google/cloud/aiplatform/v1beta1/pipeline_state.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1beta1; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "PipelineStateProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Describes the state of a pipeline. enum PipelineState { diff --git a/google/cloud/aiplatform/v1beta1/prediction_service.proto b/google/cloud/aiplatform/v1beta1/prediction_service.proto index 29e123d37..e8ee52ce9 100644 --- a/google/cloud/aiplatform/v1beta1/prediction_service.proto +++ b/google/cloud/aiplatform/v1beta1/prediction_service.proto @@ -19,14 +19,18 @@ package google.cloud.aiplatform.v1beta1; import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; +import "google/api/httpbody.proto"; import "google/api/resource.proto"; import "google/cloud/aiplatform/v1beta1/explanation.proto"; import "google/protobuf/struct.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "PredictionServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A service for online predictions and explanations. service PredictionService { @@ -42,6 +46,23 @@ service PredictionService { option (google.api.method_signature) = "endpoint,instances,parameters"; } + // Perform an online prediction with an arbitrary HTTP payload. + // + // The response includes the following HTTP headers: + // + // * `X-Vertex-AI-Endpoint-Id`: ID of the [Endpoint][google.cloud.aiplatform.v1beta1.Endpoint] that served this + // prediction. + // + // * `X-Vertex-AI-Deployed-Model-Id`: ID of the Endpoint's [DeployedModel][google.cloud.aiplatform.v1beta1.DeployedModel] + // that served this prediction. + rpc RawPredict(RawPredictRequest) returns (google.api.HttpBody) { + option (google.api.http) = { + post: "/v1beta1/{endpoint=projects/*/locations/*/endpoints/*}:rawPredict" + body: "*" + }; + option (google.api.method_signature) = "endpoint,http_body"; + } + // Perform an online explanation. // // If [deployed_model_id][google.cloud.aiplatform.v1beta1.ExplainRequest.deployed_model_id] is specified, @@ -102,6 +123,47 @@ message PredictResponse { // ID of the Endpoint's DeployedModel that served this prediction. string deployed_model_id = 2; + + // Output only. The resource name of the Model which is deployed as the DeployedModel that + // this prediction hits. + string model = 3 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Model" + } + ]; + + // Output only. The [display name][google.cloud.aiplatform.v1beta1.Model.display_name] of the Model which is deployed as + // the DeployedModel that this prediction hits. + string model_display_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Request message for [PredictionService.RawPredict][google.cloud.aiplatform.v1beta1.PredictionService.RawPredict]. +message RawPredictRequest { + // Required. The name of the Endpoint requested to serve the prediction. + // Format: + // `projects/{project}/locations/{location}/endpoints/{endpoint}` + string endpoint = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Endpoint" + } + ]; + + // The prediction input. Supports HTTP headers and arbitrary data payload. + // + // A [DeployedModel][google.cloud.aiplatform.v1beta1.DeployedModel] may have an upper limit on the number of instances it + // supports per request. When this limit it is exceeded for an AutoML model, + // the [RawPredict][google.cloud.aiplatform.v1beta1.PredictionService.RawPredict] method returns an error. + // When this limit is exceeded for a custom-trained model, the behavior varies + // depending on the model. + // + // You can specify the schema for each instance in the + // [predict_schemata.instance_schema_uri][google.cloud.aiplatform.v1beta1.PredictSchemata.instance_schema_uri] + // field when you create a [Model][google.cloud.aiplatform.v1beta1.Model]. This schema applies when you deploy the + // `Model` as a `DeployedModel` to an [Endpoint][google.cloud.aiplatform.v1beta1.Endpoint] and use the `RawPredict` + // method. + google.api.HttpBody http_body = 2; } // Request message for [PredictionService.Explain][google.cloud.aiplatform.v1beta1.PredictionService.Explain]. diff --git a/google/cloud/aiplatform/v1beta1/schema/BUILD.bazel b/google/cloud/aiplatform/v1beta1/schema/BUILD.bazel index 1a7868c9f..39b3ec311 100644 --- a/google/cloud/aiplatform/v1beta1/schema/BUILD.bazel +++ b/google/cloud/aiplatform/v1beta1/schema/BUILD.bazel @@ -91,7 +91,6 @@ moved_proto_library( py_proto_library( name = "schema_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":schema_moved_proto"], ) @@ -103,12 +102,11 @@ py_grpc_library( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/aiplatform/v1beta1/schema/aiplatform_v1beta1.yaml b/google/cloud/aiplatform/v1beta1/schema/aiplatform_v1beta1.yaml index 21a3e0e92..a2c3995c4 100644 --- a/google/cloud/aiplatform/v1beta1/schema/aiplatform_v1beta1.yaml +++ b/google/cloud/aiplatform/v1beta1/schema/aiplatform_v1beta1.yaml @@ -1,7 +1,7 @@ type: google.api.Service config_version: 3 name: aiplatform.googleapis.com -title: Cloud AI Platform API +title: Vertex AI API types: - name: google.cloud.aiplatform.v1beta1.schema.ImageBoundingBoxAnnotation @@ -87,10 +87,10 @@ documentation: Train high-quality custom machine learning models with minimal machine learning expertise and effort. overview: |- - AI Platform (Unified) enables data scientists, developers, and AI newcomers - to create custom machine learning models specific to their business needs - by leveraging Google's state-of-the-art transfer learning and innovative - AI research. + Vertex AI enables data scientists, developers, and AI newcomers to create + custom machine learning models specific to their business needs by + leveraging Google's state-of-the-art transfer learning and innovative AI + research. rules: - selector: google.cloud.location.Locations.GetLocation description: Gets information about a location. diff --git a/google/cloud/aiplatform/v1beta1/schema/io_format.proto b/google/cloud/aiplatform/v1beta1/schema/io_format.proto new file mode 100644 index 000000000..210ecf8d5 --- /dev/null +++ b/google/cloud/aiplatform/v1beta1/schema/io_format.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1beta1.schema; + +import "google/cloud/aiplatform/v1beta1/schema/annotation_spec_color.proto"; +import "google/cloud/aiplatform/v1beta1/schema/geometry.proto"; +import "google/cloud/aiplatform/v1beta1/schema/predict/instance/text_sentiment.proto"; +import "google/protobuf/duration.proto"; +import "google/protobuf/struct.proto"; +import "google/rpc/code.proto"; +import "google/api/annotations.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1/schema;schema"; +option java_multiple_files = true; +option java_outer_classname = "IoFormatProto"; +option java_package = "com.google.cloud.aiplatform.v1beta1.schema"; + +// Represents a line of JSONL in the batch prediction output file. +message PredictionResult { + message Error { + // Error status. This will be serialized into the enum name e.g. + // "NOT_FOUND". + google.rpc.Code status = 1; + + // Error message with additional details. + string message = 2; + } + + // Some identifier from the input so that the prediction can be mapped back to + // the input instance. + oneof input { + // User's input instance. + // Struct is used here instead of Any so that JsonFormat does not append an + // extra "@type" field when we convert the proto to JSON. + google.protobuf.Struct instance = 1; + + // Optional user-provided key from the input instance. + string key = 2; + } + + // The prediction result. + // Value is used here instead of Any so that JsonFormat does not append an + // extra "@type" field when we convert the proto to JSON and so we can + // represent array of objects. + // Do not set error if this is set. + google.protobuf.Value prediction = 3; + + // The error result. + // Do not set prediction if this is set. + Error error = 4; +} diff --git a/google/cloud/aiplatform/v1beta1/schema/predict/instance/BUILD.bazel b/google/cloud/aiplatform/v1beta1/schema/predict/instance/BUILD.bazel index 13c111626..ad8a3bf07 100644 --- a/google/cloud/aiplatform/v1beta1/schema/predict/instance/BUILD.bazel +++ b/google/cloud/aiplatform/v1beta1/schema/predict/instance/BUILD.bazel @@ -86,7 +86,6 @@ moved_proto_library( py_proto_library( name = "instance_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":instance_moved_proto"], ) @@ -115,12 +114,11 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/aiplatform/v1beta1/schema/predict/instance/image_classification.proto b/google/cloud/aiplatform/v1beta1/schema/predict/instance/image_classification.proto index 619b33324..f68044623 100644 --- a/google/cloud/aiplatform/v1beta1/schema/predict/instance/image_classification.proto +++ b/google/cloud/aiplatform/v1beta1/schema/predict/instance/image_classification.proto @@ -25,7 +25,7 @@ option java_package = "com.google.cloud.aiplatform.v1beta1.schema.predict.instan // Prediction input format for Image Classification. message ImageClassificationPredictionInstance { - // The image bytes or GCS URI to make the prediction on. + // The image bytes or Cloud Storage URI to make the prediction on. string content = 1; // The MIME type of the content of the image. Only the images in below listed diff --git a/google/cloud/aiplatform/v1beta1/schema/predict/instance/image_object_detection.proto b/google/cloud/aiplatform/v1beta1/schema/predict/instance/image_object_detection.proto index 3c0cc3fec..1765f464d 100644 --- a/google/cloud/aiplatform/v1beta1/schema/predict/instance/image_object_detection.proto +++ b/google/cloud/aiplatform/v1beta1/schema/predict/instance/image_object_detection.proto @@ -25,7 +25,7 @@ option java_package = "com.google.cloud.aiplatform.v1beta1.schema.predict.instan // Prediction input format for Image Object Detection. message ImageObjectDetectionPredictionInstance { - // The image bytes or GCS URI to make the prediction on. + // The image bytes or Cloud Storage URI to make the prediction on. string content = 1; // The MIME type of the content of the image. Only the images in below listed diff --git a/google/cloud/aiplatform/v1beta1/schema/predict/instance/text_extraction.proto b/google/cloud/aiplatform/v1beta1/schema/predict/instance/text_extraction.proto index 4f0f994d1..f547c36b2 100644 --- a/google/cloud/aiplatform/v1beta1/schema/predict/instance/text_extraction.proto +++ b/google/cloud/aiplatform/v1beta1/schema/predict/instance/text_extraction.proto @@ -35,7 +35,7 @@ message TextExtractionPredictionInstance { // This field is only used for batch prediction. If a key is provided, the // batch prediction result will by mapped to this key. If omitted, then the - // batch prediction result will contain the entire input instance. AI Platform + // batch prediction result will contain the entire input instance. Vertex AI // will not check if keys in the request are duplicates, so it is up to the // caller to ensure the keys are unique. string key = 3; diff --git a/google/cloud/aiplatform/v1beta1/schema/predict/params/BUILD.bazel b/google/cloud/aiplatform/v1beta1/schema/predict/params/BUILD.bazel index 1e817b065..26f5c5562 100644 --- a/google/cloud/aiplatform/v1beta1/schema/predict/params/BUILD.bazel +++ b/google/cloud/aiplatform/v1beta1/schema/predict/params/BUILD.bazel @@ -83,7 +83,6 @@ moved_proto_library( py_proto_library( name = "params_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":params_moved_proto"], ) @@ -112,12 +111,11 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/aiplatform/v1beta1/schema/predict/params/video_classification.proto b/google/cloud/aiplatform/v1beta1/schema/predict/params/video_classification.proto index 142ffad68..ee99e65c0 100644 --- a/google/cloud/aiplatform/v1beta1/schema/predict/params/video_classification.proto +++ b/google/cloud/aiplatform/v1beta1/schema/predict/params/video_classification.proto @@ -34,15 +34,15 @@ message VideoClassificationPredictionParams { // fewer predictions. Default value is 10,000. int32 max_predictions = 2; - // Set to true to request segment-level classification. AI Platform returns + // Set to true to request segment-level classification. Vertex AI returns // labels and their confidence scores for the entire time segment of the // video that user specified in the input instance. // Default value is true bool segment_classification = 3; - // Set to true to request shot-level classification. AI Platform determines + // Set to true to request shot-level classification. Vertex AI determines // the boundaries for each camera shot in the entire time segment of the - // video that user specified in the input instance. AI Platform then + // video that user specified in the input instance. Vertex AI then // returns labels and their confidence scores for each detected shot, along // with the start and end time of the shot. // WARNING: Model evaluation is not done for this classification type, @@ -52,7 +52,7 @@ message VideoClassificationPredictionParams { bool shot_classification = 4; // Set to true to request classification for a video at one-second intervals. - // AI Platform returns labels and their confidence scores for each second of + // Vertex AI returns labels and their confidence scores for each second of // the entire time segment of the video that user specified in the input // WARNING: Model evaluation is not done for this classification type, the // quality of it depends on the training data, but there are no metrics diff --git a/google/cloud/aiplatform/v1beta1/schema/predict/prediction/BUILD.bazel b/google/cloud/aiplatform/v1beta1/schema/predict/prediction/BUILD.bazel index e6ff08e83..e9e7fb22f 100644 --- a/google/cloud/aiplatform/v1beta1/schema/predict/prediction/BUILD.bazel +++ b/google/cloud/aiplatform/v1beta1/schema/predict/prediction/BUILD.bazel @@ -97,7 +97,6 @@ moved_proto_library( py_proto_library( name = "prediction_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":prediction_moved_proto"], ) @@ -126,12 +125,11 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/aiplatform/v1beta1/schema/predict/prediction/classification.proto b/google/cloud/aiplatform/v1beta1/schema/predict/prediction/classification.proto index 07a0e3416..f2c683f16 100644 --- a/google/cloud/aiplatform/v1beta1/schema/predict/prediction/classification.proto +++ b/google/cloud/aiplatform/v1beta1/schema/predict/prediction/classification.proto @@ -25,8 +25,7 @@ option java_package = "com.google.cloud.aiplatform.v1beta1.schema.predict.predic // Prediction output format for Image and Text Classification. message ClassificationPredictionResult { - // The resource IDs of the AnnotationSpecs that had been identified, ordered - // by the confidence score descendingly. + // The resource IDs of the AnnotationSpecs that had been identified. repeated int64 ids = 1; // The display names of the AnnotationSpecs that had been identified, order diff --git a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/BUILD.bazel b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/BUILD.bazel index f2c20804a..2ff210f0a 100644 --- a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/BUILD.bazel +++ b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/BUILD.bazel @@ -26,6 +26,7 @@ proto_library( ], deps = [ "//google/api:annotations_proto", + "//google/api:field_behavior_proto", ], ) @@ -64,6 +65,7 @@ go_proto_library( protos = [":definition_proto"], deps = [ "//google/api:annotations_go_proto", + "//google/api:field_behavior_go_proto", ], ) @@ -84,12 +86,12 @@ moved_proto_library( srcs = [":definition_proto"], deps = [ "//google/api:annotations_proto", + "//google/api:field_behavior_proto", ], ) py_proto_library( name = "definition_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":definition_moved_proto"], ) @@ -118,12 +120,11 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_image_classification.proto b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_image_classification.proto index 024cfef7a..f9f7420e8 100644 --- a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_image_classification.proto +++ b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_image_classification.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_tables.proto b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_tables.proto index 03650b2f9..134f2701f 100644 --- a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_tables.proto +++ b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_tables.proto @@ -267,6 +267,9 @@ message AutoMlTablesInputs { // Configuration for exporting test set predictions to a BigQuery table. If // this configuration is absent, then the export is not performed. ExportEvaluatedDataItemsConfig export_evaluated_data_items_config = 10; + + // Additional experiment flags for the Tables training pipeline. + repeated string additional_experiments = 11; } // Model metadata specific to AutoML Tables. diff --git a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_time_series_forecasting.proto b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_time_series_forecasting.proto index d5d9304ab..50d10bdcf 100644 --- a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_time_series_forecasting.proto +++ b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_time_series_forecasting.proto @@ -270,6 +270,9 @@ message AutoMlForecastingInputs { // // * "ignore-validation" - ignore the results of the validation and continue string validation_options = 17; + + // Additional experiment flags for the time series forcasting training. + repeated string additional_experiments = 25; } // Model metadata specific to AutoML Forecasting. diff --git a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_video_action_recognition.proto b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_video_action_recognition.proto index e63ea704d..fe7ce7e79 100644 --- a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_video_action_recognition.proto +++ b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/automl_video_action_recognition.proto @@ -43,6 +43,16 @@ message AutoMlVideoActionRecognitionInputs { // also be exported (see ModelService.ExportModel) as a TensorFlow or // TensorFlow Lite model and used on a mobile or edge device afterwards. MOBILE_VERSATILE_1 = 2; + + // A model that, in addition to being available within Google Cloud, can + // also be exported (see ModelService.ExportModel) to a Jetson device + // afterwards. + MOBILE_JETSON_VERSATILE_1 = 3; + + // A model that, in addition to being available within Google Cloud, can + // also be exported (see ModelService.ExportModel) as a TensorFlow or + // TensorFlow Lite model and used on a Coral device afterwards. + MOBILE_CORAL_VERSATILE_1 = 4; } ModelType model_type = 1; diff --git a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/export_evaluated_data_items_config.proto b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/export_evaluated_data_items_config.proto index 087dfa142..48bf3ca09 100644 --- a/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/export_evaluated_data_items_config.proto +++ b/google/cloud/aiplatform/v1beta1/schema/trainingjob/definition/export_evaluated_data_items_config.proto @@ -30,7 +30,6 @@ message ExportEvaluatedDataItemsConfig { // // If not specified, then results are exported to the following auto-created // BigQuery table: - // // :export_evaluated_examples__.evaluated_examples string destination_bigquery_uri = 1; diff --git a/google/cloud/aiplatform/v1beta1/specialist_pool.proto b/google/cloud/aiplatform/v1beta1/specialist_pool.proto index 10863d09c..ab536bca7 100644 --- a/google/cloud/aiplatform/v1beta1/specialist_pool.proto +++ b/google/cloud/aiplatform/v1beta1/specialist_pool.proto @@ -20,17 +20,20 @@ import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "SpecialistPoolProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // SpecialistPool represents customers' own workforce to work on their data -// labeling jobs. It includes a group of specialist managers who are responsible -// for managing the labelers in this pool as well as customers' data labeling -// jobs associated with this pool. -// Customers create specialist pool as well as start data labeling jobs on -// Cloud, managers and labelers work with the jobs using CrowdCompute console. +// labeling jobs. It includes a group of specialist managers and workers. +// Managers are responsible for managing the workers in this pool as well as +// customers' data labeling jobs associated with this pool. Customers create +// specialist pool as well as start data labeling jobs on Cloud, managers and +// workers handle the jobs using CrowdCompute console. message SpecialistPool { option (google.api.resource) = { type: "aiplatform.googleapis.com/SpecialistPool" @@ -46,12 +49,15 @@ message SpecialistPool { // This field should be unique on project-level. string display_name = 2 [(google.api.field_behavior) = REQUIRED]; - // Output only. The number of Specialists in this SpecialistPool. + // Output only. The number of managers in this SpecialistPool. int32 specialist_managers_count = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - // The email addresses of the specialists in the SpecialistPool. + // The email addresses of the managers in the SpecialistPool. repeated string specialist_manager_emails = 4; // Output only. The resource name of the pending data labeling jobs. repeated string pending_data_labeling_jobs = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The email addresses of workers in the SpecialistPool. + repeated string specialist_worker_emails = 7; } diff --git a/google/cloud/aiplatform/v1beta1/specialist_pool_service.proto b/google/cloud/aiplatform/v1beta1/specialist_pool_service.proto index e6d95210c..2687d2dfb 100644 --- a/google/cloud/aiplatform/v1beta1/specialist_pool_service.proto +++ b/google/cloud/aiplatform/v1beta1/specialist_pool_service.proto @@ -25,10 +25,13 @@ import "google/cloud/aiplatform/v1beta1/specialist_pool.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "SpecialistPoolServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A service for creating and managing Customer SpecialistPools. // When customers start Data Labeling jobs, they can reuse/create Specialist diff --git a/google/cloud/aiplatform/v1beta1/study.proto b/google/cloud/aiplatform/v1beta1/study.proto index f4a997f39..9d123a948 100644 --- a/google/cloud/aiplatform/v1beta1/study.proto +++ b/google/cloud/aiplatform/v1beta1/study.proto @@ -21,14 +21,17 @@ import "google/api/resource.proto"; import "google/protobuf/duration.proto"; import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; -import "google/protobuf/wrappers.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "StudyProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; +// LINT.IfChange // A message representing a Study. message Study { option (google.api.resource) = { @@ -148,9 +151,9 @@ message Trial { // Output only. The identifier of the client that originally requested this Trial. // Each client is identified by a unique client_id. When a client - // asks for a suggestion, Vizier will assign it a Trial. The client should - // evaluate the Trial, complete it, and report back to Vizier. - // If suggestion is asked again by same client_id before the Trial is + // asks for a suggestion, Vertex AI Vizier will assign it a Trial. The client + // should evaluate the Trial, complete it, and report back to Vertex AI + // Vizier. If suggestion is asked again by same client_id before the Trial is // completed, the same Trial will be returned. Multiple clients with // different client_ids can ask for suggestions simultaneously, each of them // will get their own Trial. @@ -168,6 +171,21 @@ message Trial { type: "aiplatform.googleapis.com/CustomJob" } ]; + + // Output only. URIs for accessing [interactive + // shells](https://cloud.google.com/vertex-ai/docs/training/monitor-debug-interactive-shell) + // (one URI for each training node). Only available if this trial is part of + // a [HyperparameterTuningJob][google.cloud.aiplatform.v1beta1.HyperparameterTuningJob] and the job's + // [trial_job_spec.enable_web_access][google.cloud.aiplatform.v1beta1.CustomJobSpec.enable_web_access] field + // is `true`. + // + // The keys are names of each node used for the trial; for example, + // `workerpool0-0` for the primary node, `workerpool1-0` for the first node in + // the second worker pool, and `workerpool1-1` for the second node in the + // second worker pool. + // + // The values are the URIs for each node's interactive shell. + map web_access_uris = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Represents specification of a Study. @@ -203,6 +221,14 @@ message StudySpec { // Required. Inclusive maximum value of the parameter. double max_value = 2 [(google.api.field_behavior) = REQUIRED]; + + // A default value for a `DOUBLE` parameter that is assumed to be a + // relatively good starting point. Unset value signals that there is no + // offered starting point. + // + // Currently only supported by the Vertex AI Vizier service. Not supported + // by HyperparamterTuningJob or TrainingPipeline. + optional double default_value = 4; } // Value specification for a parameter in `INTEGER` type. @@ -212,12 +238,28 @@ message StudySpec { // Required. Inclusive maximum value of the parameter. int64 max_value = 2 [(google.api.field_behavior) = REQUIRED]; + + // A default value for an `INTEGER` parameter that is assumed to be a + // relatively good starting point. Unset value signals that there is no + // offered starting point. + // + // Currently only supported by the Vertex AI Vizier service. Not supported + // by HyperparamterTuningJob or TrainingPipeline. + optional int64 default_value = 4; } // Value specification for a parameter in `CATEGORICAL` type. message CategoricalValueSpec { // Required. The list of possible categories. repeated string values = 1 [(google.api.field_behavior) = REQUIRED]; + + // A default value for a `CATEGORICAL` parameter that is assumed to be a + // relatively good starting point. Unset value signals that there is no + // offered starting point. + // + // Currently only supported by the Vizier service. Not supported by + // HyperparamterTuningJob or TrainingPipeline. + optional string default_value = 3; } // Value specification for a parameter in `DISCRETE` type. @@ -227,6 +269,15 @@ message StudySpec { // For instance, this parameter might have possible settings of 1.5, 2.5, // and 4.0. This list should not contain more than 1,000 values. repeated double values = 1 [(google.api.field_behavior) = REQUIRED]; + + // A default value for a `DISCRETE` parameter that is assumed to be a + // relatively good starting point. Unset value signals that there is no + // offered starting point. It automatically rounds to the + // nearest feasible discrete point. + // + // Currently only supported by the Vizier service. Not supported by + // HyperparamterTuningJob or TrainingPipeline. + optional double default_value = 3; } // Represents a parameter spec with condition from its parent parameter. @@ -351,6 +402,8 @@ message StudySpec { // Configuration for ConvexStopPolicy. message ConvexStopConfig { + option deprecated = true; + // Steps used in predicting the final objective for early stopped trials. In // general, it's set to be the same as the defined steps in training / // tuning. When use_steps is false, this field is set to the maximum elapsed @@ -390,7 +443,7 @@ message StudySpec { enum Algorithm { // The default algorithm used by Vertex AI for [hyperparameter // tuning](https://cloud.google.com/vertex-ai/docs/training/hyperparameter-tuning-overview) - // and [Vertex Vizier](https://cloud.google.com/vertex-ai/docs/vizier). + // and [Vertex AI Vizier](https://cloud.google.com/vertex-ai/docs/vizier). ALGORITHM_UNSPECIFIED = 0; // Simple grid search within the feasible space. To use grid search, @@ -450,8 +503,9 @@ message StudySpec { // The automated early stopping spec using median rule. MedianAutomatedStoppingSpec median_automated_stopping_spec = 5; + // Deprecated. // The automated early stopping using convex stopping rule. - ConvexStopConfig convex_stop_config = 8; + ConvexStopConfig convex_stop_config = 8 [deprecated = true]; } // Required. Metric specs for the Study. @@ -464,7 +518,7 @@ message StudySpec { Algorithm algorithm = 3; // The observation noise level of the study. - // Currently only supported by the Vizier service. Not supported by + // Currently only supported by the Vertex AI Vizier service. Not supported by // HyperparamterTuningJob or TrainingPipeline. ObservationNoise observation_noise = 6; diff --git a/google/cloud/aiplatform/v1beta1/tensorboard.proto b/google/cloud/aiplatform/v1beta1/tensorboard.proto index d19d280fd..dda3557da 100644 --- a/google/cloud/aiplatform/v1beta1/tensorboard.proto +++ b/google/cloud/aiplatform/v1beta1/tensorboard.proto @@ -22,10 +22,13 @@ import "google/cloud/aiplatform/v1beta1/encryption_spec.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "TensorboardProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Tensorboard is a physical database that stores users' training metrics. // A default Tensorboard is provided in each region of a GCP project. diff --git a/google/cloud/aiplatform/v1beta1/tensorboard_data.proto b/google/cloud/aiplatform/v1beta1/tensorboard_data.proto index 793ce91d2..1e7e0f2a9 100644 --- a/google/cloud/aiplatform/v1beta1/tensorboard_data.proto +++ b/google/cloud/aiplatform/v1beta1/tensorboard_data.proto @@ -21,10 +21,13 @@ import "google/cloud/aiplatform/v1beta1/tensorboard_time_series.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "TensorboardDataProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // All the data stored in a TensorboardTimeSeries. message TimeSeriesData { diff --git a/google/cloud/aiplatform/v1beta1/tensorboard_experiment.proto b/google/cloud/aiplatform/v1beta1/tensorboard_experiment.proto index 6d8b330fd..1895d848d 100644 --- a/google/cloud/aiplatform/v1beta1/tensorboard_experiment.proto +++ b/google/cloud/aiplatform/v1beta1/tensorboard_experiment.proto @@ -21,10 +21,13 @@ import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "TensorboardExperimentProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A TensorboardExperiment is a group of TensorboardRuns, that are typically the // results of a training job run, in a Tensorboard. diff --git a/google/cloud/aiplatform/v1beta1/tensorboard_run.proto b/google/cloud/aiplatform/v1beta1/tensorboard_run.proto index db946ecd7..e06b565f9 100644 --- a/google/cloud/aiplatform/v1beta1/tensorboard_run.proto +++ b/google/cloud/aiplatform/v1beta1/tensorboard_run.proto @@ -21,10 +21,13 @@ import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "TensorboardRunProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // TensorboardRun maps to a specific execution of a training job with a given // set of hyperparameter values, model definition, dataset, etc @@ -53,6 +56,24 @@ message TensorboardRun { // Output only. Timestamp when this TensorboardRun was last updated. google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + // The labels with user-defined metadata to organize your TensorboardRuns. + // + // This field will be used to filter and visualize Runs in the Tensorboard UI. + // For example, a Vertex AI training job can set a label + // aiplatform.googleapis.com/training_job_id=xxxxx to all the runs created + // within that job. An end user can set a label experiment_id=xxxxx for all + // the runs produced in a Jupyter notebook. These runs can be grouped by a + // label value and visualized together in the Tensorboard UI. + // + // Label keys and values can be no longer than 64 characters + // (Unicode codepoints), can only contain lowercase letters, numeric + // characters, underscores and dashes. International characters are allowed. + // No more than 64 user labels can be associated with one TensorboardRun + // (System labels are excluded). + // + // See https://goo.gl/xmQnxf for more information and examples of labels. + // System reserved label keys are prefixed with "aiplatform.googleapis.com/" + // and are immutable. map labels = 8; // Used to perform a consistent read-modify-write updates. If not set, a blind diff --git a/google/cloud/aiplatform/v1beta1/tensorboard_service.proto b/google/cloud/aiplatform/v1beta1/tensorboard_service.proto index 3046133f5..d8a063bff 100644 --- a/google/cloud/aiplatform/v1beta1/tensorboard_service.proto +++ b/google/cloud/aiplatform/v1beta1/tensorboard_service.proto @@ -29,10 +29,13 @@ import "google/cloud/aiplatform/v1beta1/tensorboard_time_series.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "TensorboardServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // TensorboardService service TensorboardService { @@ -148,6 +151,15 @@ service TensorboardService { option (google.api.method_signature) = "parent,tensorboard_run,tensorboard_run_id"; } + // Batch create TensorboardRuns. + rpc BatchCreateTensorboardRuns(BatchCreateTensorboardRunsRequest) returns (BatchCreateTensorboardRunsResponse) { + option (google.api.http) = { + post: "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs:batchCreate" + body: "*" + }; + option (google.api.method_signature) = "parent,requests"; + } + // Gets a TensorboardRun. rpc GetTensorboardRun(GetTensorboardRunRequest) returns (TensorboardRun) { option (google.api.http) = { @@ -185,6 +197,15 @@ service TensorboardService { }; } + // Batch create TensorboardTimeSeries that belong to a TensorboardExperiment. + rpc BatchCreateTensorboardTimeSeries(BatchCreateTensorboardTimeSeriesRequest) returns (BatchCreateTensorboardTimeSeriesResponse) { + option (google.api.http) = { + post: "/v1beta1/{parent=projects/*/locations/*/tensorboards/*/experiments/*}/runs/*/timeSeries:batchCreate" + body: "*" + }; + option (google.api.method_signature) = "parent,requests"; + } + // Creates a TensorboardTimeSeries. rpc CreateTensorboardTimeSeries(CreateTensorboardTimeSeriesRequest) returns (TensorboardTimeSeries) { option (google.api.http) = { @@ -231,11 +252,23 @@ service TensorboardService { }; } - // Reads a TensorboardTimeSeries' data. Data is returned in paginated - // responses. By default, if the number of data points stored is less than - // 1000, all data will be returned. Otherwise, 1000 data points will be - // randomly selected from this time series and returned. This value can be - // changed by changing max_data_points. + // Reads multiple TensorboardTimeSeries' data. The data point number limit is + // 1000 for scalars, 100 for tensors and blob references. If the number of + // data points stored is less than the limit, all data will be returned. + // Otherwise, that limit number of data points will be randomly selected from + // this time series and returned. + rpc BatchReadTensorboardTimeSeriesData(BatchReadTensorboardTimeSeriesDataRequest) returns (BatchReadTensorboardTimeSeriesDataResponse) { + option (google.api.http) = { + get: "/v1beta1/{tensorboard=projects/*/locations/*/tensorboards/*}/experiments/*/runs/*/timeSeries:batchRead" + }; + option (google.api.method_signature) = "tensorboard"; + } + + // Reads a TensorboardTimeSeries' data. By default, if the number of data + // points stored is less than 1000, all data will be returned. Otherwise, 1000 + // data points will be randomly selected from this time series and returned. + // This value can be changed by changing max_data_points, which can't be + // greater than 10k. rpc ReadTensorboardTimeSeriesData(ReadTensorboardTimeSeriesDataRequest) returns (ReadTensorboardTimeSeriesDataResponse) { option (google.api.http) = { get: "/v1beta1/{tensorboard_time_series=projects/*/locations/*/tensorboards/*/experiments/*/runs/*/timeSeries/*}:read" @@ -254,6 +287,17 @@ service TensorboardService { option (google.api.method_signature) = "time_series"; } + // Write time series data points of multiple TensorboardTimeSeries in multiple + // TensorboardRun's. If any data fail to be ingested, an error will be + // returned. + rpc WriteTensorboardExperimentData(WriteTensorboardExperimentDataRequest) returns (WriteTensorboardExperimentDataResponse) { + option (google.api.http) = { + post: "/v1beta1/{tensorboard_experiment=projects/*/locations/*/tensorboards/*/experiments/*}:write" + body: "*" + }; + option (google.api.method_signature) = "tensorboard_experiment,write_run_data_requests"; + } + // Write time series data points into multiple TensorboardTimeSeries under // a TensorboardRun. If any data fail to be ingested, an error will be // returned. @@ -308,7 +352,7 @@ message GetTensorboardRequest { message ListTensorboardsRequest { // Required. The resource name of the Location to list Tensorboards. // Format: - // 'projects/{project}/locations/{location}' + // `projects/{project}/locations/{location}` string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -494,10 +538,35 @@ message DeleteTensorboardExperimentRequest { ]; } +// Request message for [TensorboardService.BatchCreateTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardRuns]. +message BatchCreateTensorboardRunsRequest { + // Required. The resource name of the TensorboardExperiment to create the + // TensorboardRuns in. Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` + // The parent field in the CreateTensorboardRunRequest messages must match + // this field. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardExperiment" + } + ]; + + // Required. The request message specifying the TensorboardRuns to create. + // A maximum of 1000 TensorboardRuns can be created in a batch. + repeated CreateTensorboardRunRequest requests = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [TensorboardService.BatchCreateTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardRuns]. +message BatchCreateTensorboardRunsResponse { + // The created TensorboardRuns. + repeated TensorboardRun tensorboard_runs = 1; +} + // Request message for [TensorboardService.CreateTensorboardRun][google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardRun]. message CreateTensorboardRunRequest { - // Required. The resource name of the Tensorboard to create the TensorboardRun in. - // Format: + // Required. The resource name of the TensorboardExperiment to create the TensorboardRun + // in. Format: // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` string parent = 1 [ (google.api.field_behavior) = REQUIRED, @@ -554,7 +623,7 @@ message ReadTensorboardBlobDataResponse { // Request message for [TensorboardService.ListTensorboardRuns][google.cloud.aiplatform.v1beta1.TensorboardService.ListTensorboardRuns]. message ListTensorboardRunsRequest { - // Required. The resource name of the Tensorboard to list TensorboardRuns. + // Required. The resource name of the TensorboardExperiment to list TensorboardRuns. // Format: // 'projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}' string parent = 1 [ @@ -629,6 +698,33 @@ message DeleteTensorboardRunRequest { ]; } +// Request message for [TensorboardService.BatchCreateTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardTimeSeries]. +message BatchCreateTensorboardTimeSeriesRequest { + // Required. The resource name of the TensorboardExperiment to create the + // TensorboardTimeSeries in. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` + // The TensorboardRuns referenced by the parent fields in the + // CreateTensorboardTimeSeriesRequest messages must be sub resources of this + // TensorboardExperiment. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardExperiment" + } + ]; + + // Required. The request message specifying the TensorboardTimeSeries to create. + // A maximum of 1000 TensorboardTimeSeries can be created in a batch. + repeated CreateTensorboardTimeSeriesRequest requests = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [TensorboardService.BatchCreateTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.BatchCreateTensorboardTimeSeries]. +message BatchCreateTensorboardTimeSeriesResponse { + // The created TensorboardTimeSeries. + repeated TensorboardTimeSeries tensorboard_time_series = 1; +} + // Request message for [TensorboardService.CreateTensorboardTimeSeries][google.cloud.aiplatform.v1beta1.TensorboardService.CreateTensorboardTimeSeries]. message CreateTensorboardTimeSeriesRequest { // Required. The resource name of the TensorboardRun to create the @@ -644,8 +740,7 @@ message CreateTensorboardTimeSeriesRequest { // Optional. The user specified unique ID to use for the TensorboardTimeSeries, which // will become the final component of the TensorboardTimeSeries's resource - // name. Ref: go/ucaip-user-specified-id - // + // name. // This value should match "[a-z0-9][a-z0-9-]{0, 127}" string tensorboard_time_series_id = 3 [(google.api.field_behavior) = OPTIONAL]; @@ -744,6 +839,38 @@ message DeleteTensorboardTimeSeriesRequest { ]; } +// Request message for +// [TensorboardService.BatchReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.BatchReadTensorboardTimeSeriesData]. +message BatchReadTensorboardTimeSeriesDataRequest { + // Required. The resource name of the Tensorboard containing TensorboardTimeSeries to + // read data from. Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}`. + // The TensorboardTimeSeries referenced by [time_series][google.cloud.aiplatform.v1beta1.BatchReadTensorboardTimeSeriesDataRequest.time_series] must be sub + // resources of this Tensorboard. + string tensorboard = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/Tensorboard" + } + ]; + + // Required. The resource names of the TensorboardTimeSeries to read data from. Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}/runs/{run}/timeSeries/{time_series}` + repeated string time_series = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardTimeSeries" + } + ]; +} + +// Response message for +// [TensorboardService.BatchReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.BatchReadTensorboardTimeSeriesData]. +message BatchReadTensorboardTimeSeriesDataResponse { + // The returned time series data. + repeated TimeSeriesData time_series_data = 1; +} + // Request message for [TensorboardService.ReadTensorboardTimeSeriesData][google.cloud.aiplatform.v1beta1.TensorboardService.ReadTensorboardTimeSeriesData]. message ReadTensorboardTimeSeriesDataRequest { // Required. The resource name of the TensorboardTimeSeries to read data from. @@ -772,6 +899,27 @@ message ReadTensorboardTimeSeriesDataResponse { TimeSeriesData time_series_data = 1; } +// Request message for [TensorboardService.WriteTensorboardExperimentData][google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardExperimentData]. +message WriteTensorboardExperimentDataRequest { + // Required. The resource name of the TensorboardExperiment to write data to. + // Format: + // `projects/{project}/locations/{location}/tensorboards/{tensorboard}/experiments/{experiment}` + string tensorboard_experiment = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "aiplatform.googleapis.com/TensorboardExperiment" + } + ]; + + // Required. Requests containing per-run TensorboardTimeSeries data to write. + repeated WriteTensorboardRunDataRequest write_run_data_requests = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for [TensorboardService.WriteTensorboardExperimentData][google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardExperimentData]. +message WriteTensorboardExperimentDataResponse { + +} + // Request message for [TensorboardService.WriteTensorboardRunData][google.cloud.aiplatform.v1beta1.TensorboardService.WriteTensorboardRunData]. message WriteTensorboardRunDataRequest { // Required. The resource name of the TensorboardRun to write data to. diff --git a/google/cloud/aiplatform/v1beta1/tensorboard_time_series.proto b/google/cloud/aiplatform/v1beta1/tensorboard_time_series.proto index 1a37dd96c..e99b51c1b 100644 --- a/google/cloud/aiplatform/v1beta1/tensorboard_time_series.proto +++ b/google/cloud/aiplatform/v1beta1/tensorboard_time_series.proto @@ -21,10 +21,13 @@ import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "TensorboardTimeSeriesProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // TensorboardTimeSeries maps to times series produced in training runs message TensorboardTimeSeries { diff --git a/google/cloud/aiplatform/v1beta1/training_pipeline.proto b/google/cloud/aiplatform/v1beta1/training_pipeline.proto index 6495149d9..316c066ea 100644 --- a/google/cloud/aiplatform/v1beta1/training_pipeline.proto +++ b/google/cloud/aiplatform/v1beta1/training_pipeline.proto @@ -29,10 +29,13 @@ import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "TrainingPipelineProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // The TrainingPipeline orchestrates tasks associated with training a Model. It // always executes the training task, and optionally may also @@ -157,6 +160,11 @@ message InputDataConfig { // // Split based on the timestamp of the input data pieces. TimestampSplit timestamp_split = 5; + + // Supported only for tabular Datasets. + // + // Split based on the distribution of the specified column. + StratifiedSplit stratified_split = 12; } // Only applicable to Custom and Hyperparameter Tuning TrainingPipelines. @@ -349,3 +357,35 @@ message TimestampSplit { // present or has an invalid value, that piece is ignored by the pipeline. string key = 4 [(google.api.field_behavior) = REQUIRED]; } + +// Assigns input data to the training, validation, and test sets so that the +// distribution of values found in the categorical column (as specified by the +// `key` field) is mirrored within each split. The fraction values determine +// the relative sizes of the splits. +// +// For example, if the specified column has three values, with 50% of the rows +// having value "A", 25% value "B", and 25% value "C", and the split fractions +// are specified as 80/10/10, then the training set will constitute 80% of the +// training data, with about 50% of the training set rows having the value "A" +// for the specified column, about 25% having the value "B", and about 25% +// having the value "C". +// +// Only the top 500 occurring values are used; any values not in the top +// 500 values are randomly assigned to a split. If less than three rows contain +// a specific value, those rows are randomly assigned. +// +// Supported only for tabular Datasets. +message StratifiedSplit { + // The fraction of the input data that is to be used to train the Model. + double training_fraction = 1; + + // The fraction of the input data that is to be used to validate the Model. + double validation_fraction = 2; + + // The fraction of the input data that is to be used to evaluate the Model. + double test_fraction = 3; + + // Required. The key is a name of one of the Dataset's data columns. + // The key provided must be for a categorical column. + string key = 4 [(google.api.field_behavior) = REQUIRED]; +} diff --git a/google/cloud/aiplatform/v1beta1/types.proto b/google/cloud/aiplatform/v1beta1/types.proto index 365206e97..bc4016e24 100644 --- a/google/cloud/aiplatform/v1beta1/types.proto +++ b/google/cloud/aiplatform/v1beta1/types.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1beta1; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "TypesProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // A list of boolean values. message BoolArray { diff --git a/google/cloud/aiplatform/v1beta1/unmanaged_container_model.proto b/google/cloud/aiplatform/v1beta1/unmanaged_container_model.proto new file mode 100644 index 000000000..d9337bca1 --- /dev/null +++ b/google/cloud/aiplatform/v1beta1/unmanaged_container_model.proto @@ -0,0 +1,44 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.aiplatform.v1beta1; + +import "google/api/field_behavior.proto"; +import "google/cloud/aiplatform/v1beta1/model.proto"; +import "google/api/annotations.proto"; + +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; +option java_multiple_files = true; +option java_outer_classname = "UnmanagedContainerModelProto"; +option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; + +// Contains model information necessary to perform batch prediction without +// requiring a full model import. +message UnmanagedContainerModel { + // The path to the directory containing the Model artifact and any of its + // supporting files. + string artifact_uri = 1; + + // Contains the schemata used in Model's predictions and explanations + PredictSchemata predict_schemata = 2; + + // Input only. The specification of the container that is to be used when deploying + // this Model. + ModelContainerSpec container_spec = 3 [(google.api.field_behavior) = INPUT_ONLY]; +} diff --git a/google/cloud/aiplatform/v1beta1/user_action_reference.proto b/google/cloud/aiplatform/v1beta1/user_action_reference.proto index f0e363612..cd17de284 100644 --- a/google/cloud/aiplatform/v1beta1/user_action_reference.proto +++ b/google/cloud/aiplatform/v1beta1/user_action_reference.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1beta1; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "UserActionReferenceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // References an API call. It contains more information about long running // operation and Jobs that are triggered by the API call. diff --git a/google/cloud/aiplatform/v1beta1/value.proto b/google/cloud/aiplatform/v1beta1/value.proto index ecf4c720b..699c10400 100644 --- a/google/cloud/aiplatform/v1beta1/value.proto +++ b/google/cloud/aiplatform/v1beta1/value.proto @@ -18,10 +18,13 @@ package google.cloud.aiplatform.v1beta1; import "google/api/annotations.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "ValueProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; // Value is the value of the field. message Value { diff --git a/google/cloud/aiplatform/v1beta1/vizier_service.proto b/google/cloud/aiplatform/v1beta1/vizier_service.proto index fb8422fa3..3ca9143be 100644 --- a/google/cloud/aiplatform/v1beta1/vizier_service.proto +++ b/google/cloud/aiplatform/v1beta1/vizier_service.proto @@ -26,14 +26,17 @@ import "google/longrunning/operations.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/timestamp.proto"; +option csharp_namespace = "Google.Cloud.AIPlatform.V1Beta1"; option go_package = "google.golang.org/genproto/googleapis/cloud/aiplatform/v1beta1;aiplatform"; option java_multiple_files = true; option java_outer_classname = "VizierServiceProto"; option java_package = "com.google.cloud.aiplatform.v1beta1"; +option php_namespace = "Google\\Cloud\\AIPlatform\\V1beta1"; +option ruby_package = "Google::Cloud::AIPlatform::V1beta1"; -// Vertex Vizier API. +// Vertex AI Vizier API. // -// Vizier service is a GCP service to solve blackbox optimization problems, +// Vertex AI Vizier is a service to solve blackbox optimization problems, // such as tuning machine learning hyperparameters and searching over deep // learning architectures. service VizierService { @@ -85,7 +88,7 @@ service VizierService { } // Adds one or more Trials to a Study, with parameter values - // suggested by Vertex Vizier. Returns a long-running + // suggested by Vertex AI Vizier. Returns a long-running // operation associated with the generation of Trial suggestions. // When this long-running operation succeeds, it will contain // a [SuggestTrialsResponse][google.cloud.ml.v1.SuggestTrialsResponse]. diff --git a/google/cloud/apigateway/BUILD.bazel b/google/cloud/apigateway/BUILD.bazel new file mode 100644 index 000000000..835255afb --- /dev/null +++ b/google/cloud/apigateway/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-api_gateway. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for apigateway. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "apigateway_ruby_wrapper", + srcs = ["//google/cloud/apigateway/v1:apigateway_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-api_gateway", + "ruby-cloud-env-prefix=API_GATEWAY", + "ruby-cloud-wrapper-of=v1:0.1", + "ruby-cloud-product-url=https://cloud.google.com/api-gateway/", + "ruby-cloud-api-id=apigateway.googleapis.com", + "ruby-cloud-api-shortname=apigateway", + ], + ruby_cloud_description = "API Gateway enables you to provide secure access to your backend services through a well-defined REST API that is consistent across all of your services, regardless of the service implementation. Clients consume your REST APIS to implement standalone apps for a mobile device or tablet, through apps running in a browser, or through any other type of app that can make a request to an HTTP endpoint.", + ruby_cloud_title = "API Gateway", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-apigateway-ruby", + deps = [ + ":apigateway_ruby_wrapper", + ], +) diff --git a/google/cloud/apigateway/v1/BUILD.bazel b/google/cloud/apigateway/v1/BUILD.bazel index 55ac4d3cb..f509f47d1 100644 --- a/google/cloud/apigateway/v1/BUILD.bazel +++ b/google/cloud/apigateway/v1/BUILD.bazel @@ -178,14 +178,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -345,4 +344,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "apigateway_cc_proto", + deps = [":apigateway_proto"], +) + +cc_grpc_library( + name = "apigateway_cc_grpc", + srcs = [":apigateway_proto"], + grpc_only = True, + deps = [":apigateway_cc_proto"], +) diff --git a/google/cloud/apigateway/v1/apigateway_v1.yaml b/google/cloud/apigateway/v1/apigateway_v1.yaml index 9dfb70984..5e0cc80a7 100644 --- a/google/cloud/apigateway/v1/apigateway_v1.yaml +++ b/google/cloud/apigateway/v1/apigateway_v1.yaml @@ -11,6 +11,12 @@ types: documentation: rules: + - selector: google.cloud.location.Locations.GetLocation + description: Gets information about a location. + + - selector: google.cloud.location.Locations.ListLocations + description: Lists information about the supported locations for this service. + - selector: google.iam.v1.IAMPolicy.GetIamPolicy description: |- Gets the access control policy for a resource. Returns an empty policy @@ -38,6 +44,10 @@ backend: rules: - selector: 'google.cloud.apigateway.v1.ApiGatewayService.*' deadline: 60.0 + - selector: google.cloud.location.Locations.GetLocation + deadline: 60.0 + - selector: google.cloud.location.Locations.ListLocations + deadline: 60.0 - selector: 'google.iam.v1.IAMPolicy.*' deadline: 60.0 - selector: 'google.longrunning.Operations.*' @@ -45,12 +55,57 @@ backend: - selector: google.longrunning.Operations.GetOperation deadline: 5.0 +http: + rules: + - selector: google.cloud.location.Locations.GetLocation + get: '/v1/{name=projects/*/locations/*}' + - selector: google.cloud.location.Locations.ListLocations + get: '/v1/{name=projects/*}/locations' + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + get: '/v1/{resource=projects/*/locations/*/gateways/*}:getIamPolicy' + additional_bindings: + - get: '/v1/{resource=projects/*/locations/*/apis/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/locations/*/apis/*/configs/*}:getIamPolicy' + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + post: '/v1/{resource=projects/*/locations/*/gateways/*}:setIamPolicy' + body: '*' + additional_bindings: + - post: '/v1/{resource=projects/*/locations/*/apis/*}:setIamPolicy' + body: '*' + - post: '/v1/{resource=projects/*/locations/*/apis/*/configs/*}:setIamPolicy' + body: '*' + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + post: '/v1/{resource=projects/*/locations/*/gateways/*}:testIamPermissions' + body: '*' + additional_bindings: + - post: '/v1/{resource=projects/*/locations/*/apis/*}:testIamPermissions' + body: '*' + - post: '/v1/{resource=projects/*/locations/*/apis/*/configs/*}:testIamPermissions' + body: '*' + - selector: google.longrunning.Operations.CancelOperation + post: '/v1/{name=projects/*/locations/*/operations/*}:cancel' + body: '*' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/v1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/v1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v1/{name=projects/*/locations/*}/operations' + authentication: rules: - selector: 'google.cloud.apigateway.v1.ApiGatewayService.*' oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.GetLocation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.ListLocations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform - selector: 'google.iam.v1.IAMPolicy.*' oauth: canonical_scopes: |- diff --git a/google/cloud/apigeeconnect/BUILD.bazel b/google/cloud/apigeeconnect/BUILD.bazel new file mode 100644 index 000000000..b61287641 --- /dev/null +++ b/google/cloud/apigeeconnect/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-apigee_connect. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for apigeeconnect. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "apigeeconnect_ruby_wrapper", + srcs = ["//google/cloud/apigeeconnect/v1:apigeeconnect_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-apigee_connect", + "ruby-cloud-env-prefix=APIGEE_CONNECT", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/apigee/docs/hybrid/v1.4/apigee-connect", + "ruby-cloud-api-id=apigeeconnect.googleapis.com", + "ruby-cloud-api-shortname=apigeeconnect", + ], + ruby_cloud_description = "Apigee Connect allows the Apigee hybrid management plane to connect securely to the MART service in the runtime plane without requiring you to expose the MART endpoint on the internet. If you use Apigee Connect, you do not need to configure the MART ingress gateway with a host alias and an authorized DNS certificate.", + ruby_cloud_title = "Apigee Connect", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-apigeeconnect-ruby", + deps = [ + ":apigeeconnect_ruby_wrapper", + ], +) diff --git a/google/cloud/apigeeconnect/v1/BUILD.bazel b/google/cloud/apigeeconnect/v1/BUILD.bazel index 65a909f79..a00ecd592 100644 --- a/google/cloud/apigeeconnect/v1/BUILD.bazel +++ b/google/cloud/apigeeconnect/v1/BUILD.bazel @@ -163,6 +163,7 @@ py_gapic_library( name = "apigeeconnect_py_gapic", srcs = [":apigeeconnect_proto"], grpc_service_config = "connection_grpc_service_config.json", + opt_args = ["warehouse-package-name=google-cloud-apigee-connect"] ) # Open Source Packages @@ -175,14 +176,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -228,7 +228,7 @@ load( nodejs_gapic_library( name = "apigeeconnect_nodejs_gapic", - package_name = "@google-cloud/apigeeconnect", + package_name = "@google-cloud/apigee-connect", src = ":apigeeconnect_proto_with_info", extra_protoc_parameters = ["metadata"], grpc_service_config = "connection_grpc_service_config.json", @@ -272,8 +272,14 @@ ruby_cloud_gapic_library( srcs = [":apigeeconnect_proto_with_info"], extra_protoc_parameters = [ "ruby-cloud-gem-name=google-cloud-apigee_connect-v1", + "ruby-cloud-env-prefix=APIGEE_CONNECT", + "ruby-cloud-product-url=https://cloud.google.com/apigee/docs/hybrid/v1.4/apigee-connect", + "ruby-cloud-api-id=apigeeconnect.googleapis.com", + "ruby-cloud-api-shortname=apigeeconnect", ], grpc_service_config = "connection_grpc_service_config.json", + ruby_cloud_description = "Apigee Connect allows the Apigee hybrid management plane to connect securely to the MART service in the runtime plane without requiring you to expose the MART endpoint on the internet. If you use Apigee Connect, you do not need to configure the MART ingress gateway with a host alias and an authorized DNS certificate.", + ruby_cloud_title = "Apigee Connect V1", deps = [ ":apigeeconnect_ruby_grpc", ":apigeeconnect_ruby_proto", @@ -336,4 +342,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "apigeeconnect_cc_proto", + deps = [":apigeeconnect_proto"], +) + +cc_grpc_library( + name = "apigeeconnect_cc_grpc", + srcs = [":apigeeconnect_proto"], + grpc_only = True, + deps = [":apigeeconnect_cc_proto"], +) diff --git a/google/cloud/apigeeconnect/v1/connection.proto b/google/cloud/apigeeconnect/v1/connection.proto index f922e1fca..021ae3b26 100644 --- a/google/cloud/apigeeconnect/v1/connection.proto +++ b/google/cloud/apigeeconnect/v1/connection.proto @@ -21,10 +21,13 @@ import "google/api/client.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +option csharp_namespace = "Google.Cloud.ApigeeConnect.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/apigeeconnect/v1;apigeeconnect"; option java_multiple_files = true; option java_outer_classname = "ConnectionProto"; option java_package = "com.google.cloud.apigeeconnect.v1"; +option php_namespace = "Google\\Cloud\\ApigeeConnect\\V1"; +option ruby_package = "Google::Cloud::ApigeeConnect::V1"; option (google.api.resource_definition) = { type: "apigeeconnect.googleapis.com/Endpoint" pattern: "projects/{project}/endpoints/{endpoint}" diff --git a/google/cloud/apigeeconnect/v1/tether.proto b/google/cloud/apigeeconnect/v1/tether.proto index 32de09018..8cd4eccb8 100644 --- a/google/cloud/apigeeconnect/v1/tether.proto +++ b/google/cloud/apigeeconnect/v1/tether.proto @@ -20,10 +20,13 @@ import "google/protobuf/duration.proto"; import "google/rpc/status.proto"; import "google/api/client.proto"; +option csharp_namespace = "Google.Cloud.ApigeeConnect.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/apigeeconnect/v1;apigeeconnect"; option java_multiple_files = true; option java_outer_classname = "TetherProto"; option java_package = "com.google.cloud.apigeeconnect.v1"; +option php_namespace = "Google\\Cloud\\ApigeeConnect\\V1"; +option ruby_package = "Google::Cloud::ApigeeConnect::V1"; // Tether provides a way for the control plane to send HTTP API requests to // services in data planes that runs in a remote datacenter without diff --git a/google/cloud/asset/BUILD.bazel b/google/cloud/asset/BUILD.bazel index a87c57fec..242ca6e28 100644 --- a/google/cloud/asset/BUILD.bazel +++ b/google/cloud/asset/BUILD.bazel @@ -1 +1,41 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-asset. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for cloudasset. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "cloudasset_ruby_wrapper", + srcs = ["//google/cloud/asset/v1:asset_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-asset", + "ruby-cloud-env-prefix=ASSET", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/asset-inventory/", + "ruby-cloud-api-id=cloudasset.googleapis.com", + "ruby-cloud-api-shortname=cloudasset", + "ruby-cloud-migration-version=1.0", + ], + ruby_cloud_description = "A metadata inventory service that allows you to view, monitor, and analyze all your GCP and Anthos assets across projects and services.", + ruby_cloud_title = "Cloud Asset", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-asset-ruby", + deps = [ + ":cloudasset_ruby_wrapper", + ], +) diff --git a/google/cloud/asset/v1/BUILD.bazel b/google/cloud/asset/v1/BUILD.bazel index e8693b0ce..da4fd1b76 100644 --- a/google/cloud/asset/v1/BUILD.bazel +++ b/google/cloud/asset/v1/BUILD.bazel @@ -33,6 +33,7 @@ proto_library( "@com_google_protobuf//:field_mask_proto", "@com_google_protobuf//:struct_proto", "@com_google_protobuf//:timestamp_proto", + "//google/rpc:status_proto" ], ) @@ -125,6 +126,7 @@ go_proto_library( "//google/longrunning:longrunning_go_proto", "//google/rpc:code_go_proto", "//google/type:expr_go_proto", + "//google/rpc:status_go_proto" ], ) @@ -187,14 +189,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -212,6 +213,7 @@ php_gapic_library( name = "asset_php_gapic", srcs = [":asset_proto_with_info"], grpc_service_config = "cloudasset_grpc_service_config.json", + service_yaml = "cloudasset_v1.yaml", deps = [ ":asset_php_grpc", ":asset_php_proto", @@ -270,7 +272,10 @@ load( ruby_proto_library( name = "asset_ruby_proto", - deps = [":asset_proto"], + deps = [ + ":asset_proto", + "//google/cloud/orgpolicy/v1:orgpolicy_proto", + ], ) ruby_grpc_library( @@ -288,6 +293,7 @@ ruby_cloud_gapic_library( "ruby-cloud-product-url=https://cloud.google.com/asset-inventory/", "ruby-cloud-api-id=cloudasset.googleapis.com", "ruby-cloud-api-shortname=cloudasset", + "ruby-cloud-extra-dependencies=google-identity-access_context_manager-v1=> 0.0|< 2.a;google-cloud-os_config-v1=> 0.0|< 2.a", ], grpc_service_config = "cloudasset_grpc_service_config.json", ruby_cloud_description = "A metadata inventory service that allows you to view, monitor, and analyze all your GCP and Anthos assets across projects and services.", @@ -354,4 +360,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "asset_cc_proto", + deps = [":asset_proto"], +) + +cc_grpc_library( + name = "asset_cc_grpc", + srcs = [":asset_proto"], + grpc_only = True, + deps = [":asset_cc_proto"], +) diff --git a/google/cloud/asset/v1/asset_service.proto b/google/cloud/asset/v1/asset_service.proto index eadaef285..80a3da247 100644 --- a/google/cloud/asset/v1/asset_service.proto +++ b/google/cloud/asset/v1/asset_service.proto @@ -27,6 +27,7 @@ import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; +import "google/rpc/status.proto"; import "google/type/expr.proto"; option csharp_namespace = "Google.Cloud.Asset.V1"; @@ -165,7 +166,7 @@ service AssetService { // [google.longrunning.Operation][google.longrunning.Operation], which allows you to track the operation // status. We recommend intervals of at least 2 seconds with exponential // backoff retry to poll the operation result. The metadata contains the - // request to help callers to map responses to requests. + // metadata for the long-running operation. rpc AnalyzeIamPolicyLongrunning(AnalyzeIamPolicyLongrunningRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1/{analysis_query.scope=*/*}:analyzeIamPolicyLongrunning" @@ -173,11 +174,29 @@ service AssetService { }; option (google.longrunning.operation_info) = { response_type: "google.cloud.asset.v1.AnalyzeIamPolicyLongrunningResponse" - metadata_type: "google.cloud.asset.v1.AnalyzeIamPolicyLongrunningRequest" + metadata_type: "google.cloud.asset.v1.AnalyzeIamPolicyLongrunningMetadata" + }; + } + + // Analyze moving a resource to a specified destination without kicking off + // the actual move. The analysis is best effort depending on the user's + // permissions of viewing different hierarchical policies and configurations. + // The policies and configuration are subject to change before the actual + // resource migration takes place. + rpc AnalyzeMove(AnalyzeMoveRequest) returns (AnalyzeMoveResponse) { + option (google.api.http) = { + get: "/v1/{resource=*/*}:analyzeMove" }; } } +// Represents the metadata of the longrunning operation for the +// AnalyzeIamPolicyLongrunning rpc. +message AnalyzeIamPolicyLongrunningMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + // Export asset request. message ExportAssetsRequest { // Required. The relative name of the root asset. This can only be an @@ -224,6 +243,23 @@ message ExportAssetsRequest { // Required. Output configuration indicating where the results will be output to. OutputConfig output_config = 5 [(google.api.field_behavior) = REQUIRED]; + + // A list of relationship types to export, for example: + // `INSTANCE_TO_INSTANCEGROUP`. This field should only be specified if + // content_type=RELATIONSHIP. + // * If specified: + // it snapshots specified relationships. It returns an error if + // any of the [relationship_types] doesn't belong to the supported + // relationship types of the [asset_types] or if any of the [asset_types] + // doesn't belong to the source types of the [relationship_types]. + // * Otherwise: + // it snapshots the supported relationships for all [asset_types] or returns + // an error if any of the [asset_types] has no relationship support. + // An unspecified asset types field means all supported asset_types. + // See [Introduction to Cloud Asset + // Inventory](https://cloud.google.com/asset-inventory/docs/overview) for all + // supported asset types and relationship types. + repeated string relationship_types = 6; } // The export asset response. This message is returned by the @@ -296,6 +332,23 @@ message ListAssetsRequest { // unspecified for the first `ListAssetsRequest`. It is a continuation of a // prior `ListAssets` call, and the API should return the next page of assets. string page_token = 6; + + // A list of relationship types to output, for example: + // `INSTANCE_TO_INSTANCEGROUP`. This field should only be specified if + // content_type=RELATIONSHIP. + // * If specified: + // it snapshots specified relationships. It returns an error if + // any of the [relationship_types] doesn't belong to the supported + // relationship types of the [asset_types] or if any of the [asset_types] + // doesn't belong to the source types of the [relationship_types]. + // * Otherwise: + // it snapshots the supported relationships for all [asset_types] or returns + // an error if any of the [asset_types] has no relationship support. + // An unspecified asset types field means all supported asset_types. + // See [Introduction to Cloud Asset + // Inventory](https://cloud.google.com/asset-inventory/docs/overview) + // for all supported asset types and relationship types. + repeated string relationship_types = 7; } // ListAssets response. @@ -344,6 +397,24 @@ message BatchGetAssetsHistoryRequest { // returned. The returned results contain all temporal assets whose time // window overlap with read_time_window. TimeWindow read_time_window = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of relationship types to output, for example: + // `INSTANCE_TO_INSTANCEGROUP`. This field should only be specified if + // content_type=RELATIONSHIP. + // * If specified: + // it outputs specified relationships' history on the [asset_names]. It + // returns an error if any of the [relationship_types] doesn't belong to the + // supported relationship types of the [asset_names] or if any of the + // [asset_names]'s types doesn't belong to the source types of the + // [relationship_types]. + // * Otherwise: + // it outputs the supported relationships' history on the [asset_names] or + // returns an error if any of the [asset_names]'s types has no relationship + // support. + // See [Introduction to Cloud Asset + // Inventory](https://cloud.google.com/asset-inventory/docs/overview) for all + // supported asset types and relationship types. + repeated string relationship_types = 5 [(google.api.field_behavior) = OPTIONAL]; } // Batch get assets history response. @@ -659,9 +730,27 @@ message Feed { // optional. // // See our [user - // guide](https://cloud.google.com/asset-inventory/docs/monitoring-asset-changes#feed_with_condition) + // guide](https://cloud.google.com/asset-inventory/docs/monitoring-asset-changes-with-condition) // for detailed instructions. google.type.Expr condition = 6; + + // A list of relationship types to output, for example: + // `INSTANCE_TO_INSTANCEGROUP`. This field should only be specified if + // content_type=RELATIONSHIP. + // * If specified: + // it outputs specified relationship updates on the [asset_names] or the + // [asset_types]. It returns an error if any of the [relationship_types] + // doesn't belong to the supported relationship types of the [asset_names] or + // [asset_types], or any of the [asset_names] or the [asset_types] doesn't + // belong to the source types of the [relationship_types]. + // * Otherwise: + // it outputs the supported relationships of the types of [asset_names] and + // [asset_types] or returns an error if any of the [asset_names] or the + // [asset_types] has no replationship support. + // See [Introduction to Cloud Asset + // Inventory](https://cloud.google.com/asset-inventory/docs/overview) + // for all supported asset types and relationship types. + repeated string relationship_types = 7; } // Search all resources request. @@ -703,8 +792,8 @@ message SearchAllResourcesRequest { // encryption key whose name contains the word "key". // * `state:ACTIVE` to find Cloud resources whose state contains "ACTIVE" as a // word. - // * `NOT state:ACTIVE` to find {{gcp_name}} resources whose state - // doesn't contain "ACTIVE" as a word. + // * `NOT state:ACTIVE` to find Cloud resources whose state doesn't contain + // "ACTIVE" as a word. // * `createTime<1609459200` to find Cloud resources that were created before // "2021-01-01 00:00:00 UTC". 1609459200 is the epoch timestamp of // "2021-01-01 00:00:00 UTC" in seconds. @@ -754,6 +843,7 @@ message SearchAllResourcesRequest { // to indicate descending order. Redundant space characters are ignored. // Example: "location DESC, name". // Only singular primitive fields in the response are sortable: + // // * name // * assetType // * project @@ -766,10 +856,41 @@ message SearchAllResourcesRequest { // * state // * parentFullResourceName // * parentAssetType + // // All the other fields such as repeated fields (e.g., `networkTags`), map // fields (e.g., `labels`) and struct fields (e.g., `additionalAttributes`) // are not supported. string order_by = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A comma-separated list of fields specifying which fields to be returned in + // ResourceSearchResult. Only '*' or combination of top level fields can be + // specified. Field names of both snake_case and camelCase are supported. + // Examples: `"*"`, `"name,location"`, `"name,versionedResources"`. + // + // The read_mask paths must be valid field paths listed but not limited to + // (both snake_case and camelCase are supported): + // + // * name + // * assetType + // * project + // * displayName + // * description + // * location + // * labels + // * networkTags + // * kmsKey + // * createTime + // * updateTime + // * state + // * additionalAttributes + // * versionedResources + // + // If read_mask is not specified, all fields except versionedResources will + // be returned. + // If only '*' is specified, all fields including versionedResources will be + // returned. + // Any invalid field path will trigger INVALID_ARGUMENT error. + google.protobuf.FieldMask read_mask = 8 [(google.api.field_behavior) = OPTIONAL]; } // Search all resources response. @@ -838,6 +959,10 @@ message SearchAllIamPoliciesRequest { // * `resource:(instance1 OR instance2) policy:amy` to find // IAM policy bindings that are set on resources "instance1" or // "instance2" and also specify user "amy". + // * `roles:roles/compute.admin` to find IAM policy bindings that specify the + // Compute Admin role. + // * `memberTypes:user` to find IAM policy bindings that contain the "user" + // member type. string query = 2 [(google.api.field_behavior) = OPTIONAL]; // Optional. The page size for search result pagination. Page size is capped at 500 even @@ -851,6 +976,36 @@ message SearchAllIamPoliciesRequest { // previous response. The values of all other method parameters must be // identical to those in the previous call. string page_token = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of asset types that the IAM policies are attached to. If empty, it + // will search the IAM policies that are attached to all the [searchable asset + // types](https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types). + // + // Regular expressions are also supported. For example: + // + // * "compute.googleapis.com.*" snapshots IAM policies attached to asset type + // starts with "compute.googleapis.com". + // * ".*Instance" snapshots IAM policies attached to asset type ends with + // "Instance". + // * ".*Instance.*" snapshots IAM policies attached to asset type contains + // "Instance". + // + // See [RE2](https://github.com/google/re2/wiki/Syntax) for all supported + // regular expression syntax. If the regular expression does not match any + // supported asset type, an INVALID_ARGUMENT error will be returned. + repeated string asset_types = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A comma-separated list of fields specifying the sorting order of the + // results. The default order is ascending. Add " DESC" after the field name + // to indicate descending order. Redundant space characters are ignored. + // Example: "assetType DESC, resource". + // Only singular primitive fields in the response are sortable: + // * resource + // * assetType + // * project + // All the other fields such as repeated fields (e.g., `folders`) and + // non-primitive fields (e.g., `policy`) are not supported. + string order_by = 7 [(google.api.field_behavior) = OPTIONAL]; } // Search all IAM policies response. @@ -1169,7 +1324,84 @@ message AnalyzeIamPolicyLongrunningRequest { } // A response message for [AssetService.AnalyzeIamPolicyLongrunning][google.cloud.asset.v1.AssetService.AnalyzeIamPolicyLongrunning]. -message AnalyzeIamPolicyLongrunningResponse {} +message AnalyzeIamPolicyLongrunningResponse { + +} + +// The request message for performing resource move analysis. +message AnalyzeMoveRequest { + // View enum for supporting partial analysis responses. + enum AnalysisView { + // The default/unset value. + // The API will default to the FULL view. + ANALYSIS_VIEW_UNSPECIFIED = 0; + + // Full analysis including all level of impacts of the specified resource + // move. + FULL = 1; + + // Basic analysis only including blockers which will prevent the specified + // resource move at runtime. + BASIC = 2; + } + + // Required. Name of the resource to perform the analysis against. + // Only GCP Project are supported as of today. Hence, this can only be Project + // ID (such as "projects/my-project-id") or a Project Number (such as + // "projects/12345"). + string resource = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Name of the GCP Folder or Organization to reparent the target + // resource. The analysis will be performed against hypothetically moving the + // resource to this specified desitination parent. This can only be a Folder + // number (such as "folders/123") or an Organization number (such as + // "organizations/123"). + string destination_parent = 2 [(google.api.field_behavior) = REQUIRED]; + + // Analysis view indicating what information should be included in the + // analysis response. If unspecified, the default view is FULL. + AnalysisView view = 3; +} + +// The response message for resource move analysis. +message AnalyzeMoveResponse { + // The list of analyses returned from performing the intended resource move + // analysis. The analysis is grouped by different Cloud services. + repeated MoveAnalysis move_analysis = 1; +} + +// A message to group the analysis information. +message MoveAnalysis { + // The user friendly display name of the analysis. E.g. IAM, Organization + // Policy etc. + string display_name = 1; + + oneof result { + // Analysis result of moving the target resource. + MoveAnalysisResult analysis = 2; + + // Description of error encountered when performing the analysis. + google.rpc.Status error = 3; + } +} + +// An analysis result including blockers and warnings. +message MoveAnalysisResult { + // Blocking information that would prevent the target resource from moving + // to the specified destination at runtime. + repeated MoveImpact blockers = 1; + + // Warning information indicating that moving the target resource to the + // specified destination might be unsafe. This can include important policy + // information and configuration changes, but will not block moves at runtime. + repeated MoveImpact warnings = 2; +} + +// A message to group impacts of moving the target resource. +message MoveImpact { + // User friendly impact detail in a free form message. + string detail = 1; +} // Asset content type. enum ContentType { @@ -1190,4 +1422,7 @@ enum ContentType { // The runtime OS Inventory information. OS_INVENTORY = 6; + + // The related resources. + RELATIONSHIP = 7; } diff --git a/google/cloud/asset/v1/assets.proto b/google/cloud/asset/v1/assets.proto index 572ed739a..3d433b8f3 100644 --- a/google/cloud/asset/v1/assets.proto +++ b/google/cloud/asset/v1/assets.proto @@ -160,6 +160,10 @@ message Asset { // for more information. google.cloud.osconfig.v1.Inventory os_inventory = 12; + // The related assets of the asset of one relationship type. + // One asset only represents one type of relationship. + RelatedAssets related_assets = 13; + // The ancestry path of an asset in Google Cloud [resource // hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy), // represented as a list of relative resource names. An ancestry path starts @@ -221,6 +225,67 @@ message Resource { string location = 8; } +// The detailed related assets with the `relationship_type`. +message RelatedAssets { + // The detailed relationship attributes. + RelationshipAttributes relationship_attributes = 1; + + // The peer resources of the relationship. + repeated RelatedAsset assets = 2; +} + +// The relationship attributes which include `type`, `source_resource_type`, +// `target_resource_type` and `action`. +message RelationshipAttributes { + // The unique identifier of the relationship type. Example: + // `INSTANCE_TO_INSTANCEGROUP` + string type = 4; + + // The source asset type. Example: `compute.googleapis.com/Instance` + string source_resource_type = 1; + + // The target asset type. Example: `compute.googleapis.com/Disk` + string target_resource_type = 2; + + // The detail of the relationship, e.g. `contains`, `attaches` + string action = 3; +} + +// An asset identify in Google Cloud which contains its name, type and +// ancestors. An asset can be any resource in the Google Cloud [resource +// hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy), +// a resource outside the Google Cloud resource hierarchy (such as Google +// Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy). +// See [Supported asset +// types](https://cloud.google.com/asset-inventory/docs/supported-asset-types) +// for more information. +message RelatedAsset { + // The full name of the asset. Example: + // `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1` + // + // See [Resource + // names](https://cloud.google.com/apis/design/resource_names#full_resource_name) + // for more information. + string asset = 1 [(google.api.resource_reference) = { + type: "cloudasset.googleapis.com/Asset" + }]; + + // The type of the asset. Example: `compute.googleapis.com/Disk` + // + // See [Supported asset + // types](https://cloud.google.com/asset-inventory/docs/supported-asset-types) + // for more information. + string asset_type = 2; + + // The ancestors of an asset in Google Cloud [resource + // hierarchy](https://cloud.google.com/resource-manager/docs/cloud-platform-resource-hierarchy), + // represented as a list of relative resource names. An ancestry path starts + // with the closest ancestor in the hierarchy and ends at root. + // + // Example: `["projects/123456789", "folders/5432", "organizations/1234"]` + repeated string ancestors = 3; +} + // A result of Resource Search, containing information of a cloud resource. message ResourceSearchResult { // The full resource name of this resource. Example: @@ -420,6 +485,32 @@ message ResourceSearchResult { // `project-name` string parent_full_resource_name = 19; + // Versioned resource representations of this resource. This is repeated + // because there could be multiple versions of resource representations during + // version migration. + // + // This `versioned_resources` field is not searchable. Some attributes of the + // resource representations are exposed in `additional_attributes` field, so + // as to allow users to search on them. + repeated VersionedResource versioned_resources = 16; + + // Attached resources of this resource. For example, an OSConfig + // Inventory is an attached resource of a Compute Instance. This field is + // repeated because a resource could have multiple attached resources. + // + // This `attached_resources` field is not searchable. Some attributes + // of the attached resources are exposed in `additional_attributes` field, so + // as to allow users to search on them. + repeated AttachedResource attached_resources = 20; + + // A map of related resources of this resource, keyed by the + // relationship type. A relationship type is in the format of + // {SourceType}_{ACTION}_{DestType}. Example: `DISK_TO_INSTANCE`, + // `DISK_TO_NETWORK`, `INSTANCE_TO_INSTANCEGROUP`. + // See [supported relationship + // types](https://cloud.google.com/asset-inventory/docs/supported-asset-types#supported_relationship_types). + map relationships = 21; + // The type of this resource's immediate parent, if there is one. // // To search against the `parent_asset_type`: @@ -431,6 +522,66 @@ message ResourceSearchResult { string parent_asset_type = 103; } +// Resource representation as defined by the corresponding service providing the +// resource for a given API version. +message VersionedResource { + // API version of the resource. + // + // Example: + // If the resource is an instance provided by Compute Engine v1 API as defined + // in `https://cloud.google.com/compute/docs/reference/rest/v1/instances`, + // version will be "v1". + string version = 1; + + // JSON representation of the resource as defined by the corresponding + // service providing this resource. + // + // Example: + // If the resource is an instance provided by Compute Engine, this field will + // contain the JSON representation of the instance as defined by Compute + // Engine: + // `https://cloud.google.com/compute/docs/reference/rest/v1/instances`. + // + // You can find the resource definition for each supported resource type in + // this table: + // `https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types` + google.protobuf.Struct resource = 2; +} + +// Attached resource representation, which is defined by the corresponding +// service provider. It represents an attached resource's payload. +message AttachedResource { + // The type of this attached resource. + // + // Example: `osconfig.googleapis.com/Inventory` + // + // You can find the supported attached asset types of each resource in this + // table: + // `https://cloud.google.com/asset-inventory/docs/supported-asset-types#searchable_asset_types` + string asset_type = 1; + + // Versioned resource representations of this attached resource. This is + // repeated because there could be multiple versions of the attached resource + // representations during version migration. + repeated VersionedResource versioned_resources = 3; +} + +// The related resources of the primary resource. +message RelatedResources { + // The detailed related resources of the primary resource. + repeated RelatedResource related_resources = 1; +} + +// The detailed related resource. +message RelatedResource { + // The type of the asset. Example: `compute.googleapis.com/Instance` + string asset_type = 1; + + // The full resource name of the related resource. Example: + // `//compute.googleapis.com/projects/my_proj_123/zones/instance/instance123` + string full_resource_name = 2; +} + // A result of IAM Policy search, containing information of an IAM policy. message IamPolicySearchResult { // Explanation about the IAM policy search result. @@ -463,6 +614,14 @@ message IamPolicySearchResult { // * use a field query. Example: `resource:organizations/123` string resource = 1; + // The type of the resource associated with this IAM policy. Example: + // `compute.googleapis.com/Disk`. + // + // To search against the `asset_type`: + // + // * specify the `asset_types` field in your search request. + string asset_type = 5; + // The project that the associated GCP resource belongs to, in the form of // projects/{PROJECT_NUMBER}. If an IAM policy is set on a resource (like VM // instance, Cloud Storage bucket), the project field will indicate the @@ -474,6 +633,28 @@ message IamPolicySearchResult { // * specify the `scope` field as this project in your search request. string project = 2; + // The folder(s) that the IAM policy belongs to, in the form of + // folders/{FOLDER_NUMBER}. This field is available when the IAM policy + // belongs to one or more folders. + // + // To search against `folders`: + // + // * use a field query. Example: `folders:(123 OR 456)` + // * use a free text query. Example: `123` + // * specify the `scope` field as this folder in your search request. + repeated string folders = 6; + + // The organization that the IAM policy belongs to, in the form + // of organizations/{ORGANIZATION_NUMBER}. This field is available when the + // IAM policy belongs to an organization. + // + // To search against `organization`: + // + // * use a field query. Example: `organization:123` + // * use a free text query. Example: `123` + // * specify the `scope` field as this organization in your search request. + string organization = 7; + // The IAM policy directly set on the given resource. Note that the original // IAM policy can contain multiple bindings. This only contains the bindings // that match the given query. For queries that don't contain a constrain on diff --git a/google/cloud/asset/v1/cloudasset_grpc_service_config.json b/google/cloud/asset/v1/cloudasset_grpc_service_config.json index 98da8b5d5..3d5fb8a91 100755 --- a/google/cloud/asset/v1/cloudasset_grpc_service_config.json +++ b/google/cloud/asset/v1/cloudasset_grpc_service_config.json @@ -66,14 +66,12 @@ "method": "SearchAllIamPolicies" } ], - "timeout": "15s", + "timeout": "30s", "retryPolicy": { - "maxAttempts": 5, "initialBackoff": "0.100s", "maxBackoff": "60s", "backoffMultiplier": 1.3, "retryableStatusCodes": [ - "DEADLINE_EXCEEDED", "UNAVAILABLE" ] } @@ -94,6 +92,40 @@ "UNAVAILABLE" ] } + }, + { + "name": [ + { + "service": "google.cloud.asset.v1.AssetService", + "method": "QueryAssets" + } + ], + "timeout": "200s", + "retryPolicy": { + "initialBackoff": "0.100s", + "maxBackoff": "60s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": [ + "UNAVAILABLE" + ] + } + }, + { + "name": [ + { + "service": "google.cloud.asset.v1.AssetService", + "method": "QueryAssetTypes" + } + ], + "timeout": "10s", + "retryPolicy": { + "initialBackoff": "0.100s", + "maxBackoff": "60s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": [ + "UNAVAILABLE" + ] + } } ] } diff --git a/google/cloud/asset/v1/cloudasset_v1.yaml b/google/cloud/asset/v1/cloudasset_v1.yaml index 829f18fd1..e4196fa9d 100644 --- a/google/cloud/asset/v1/cloudasset_v1.yaml +++ b/google/cloud/asset/v1/cloudasset_v1.yaml @@ -7,6 +7,7 @@ apis: - name: google.cloud.asset.v1.AssetService types: +- name: google.cloud.asset.v1.AnalyzeIamPolicyLongrunningMetadata - name: google.cloud.asset.v1.AnalyzeIamPolicyLongrunningResponse documentation: diff --git a/google/cloud/asset/v1p1beta1/BUILD.bazel b/google/cloud/asset/v1p1beta1/BUILD.bazel index cd5729d85..78e6d8750 100644 --- a/google/cloud/asset/v1p1beta1/BUILD.bazel +++ b/google/cloud/asset/v1p1beta1/BUILD.bazel @@ -162,14 +162,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/asset/v1p2beta1/BUILD.bazel b/google/cloud/asset/v1p2beta1/BUILD.bazel index b610c5861..c3c8dd13a 100644 --- a/google/cloud/asset/v1p2beta1/BUILD.bazel +++ b/google/cloud/asset/v1p2beta1/BUILD.bazel @@ -175,14 +175,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/asset/v1p4beta1/BUILD.bazel b/google/cloud/asset/v1p4beta1/BUILD.bazel index 5a1b82553..cc33d2683 100644 --- a/google/cloud/asset/v1p4beta1/BUILD.bazel +++ b/google/cloud/asset/v1p4beta1/BUILD.bazel @@ -172,14 +172,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/asset/v1p5beta1/BUILD.bazel b/google/cloud/asset/v1p5beta1/BUILD.bazel index 7212758cd..01ca61a38 100644 --- a/google/cloud/asset/v1p5beta1/BUILD.bazel +++ b/google/cloud/asset/v1p5beta1/BUILD.bazel @@ -170,14 +170,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/asset/v1p7beta1/BUILD.bazel b/google/cloud/asset/v1p7beta1/BUILD.bazel index 3ad3812b2..db84fe5b6 100644 --- a/google/cloud/asset/v1p7beta1/BUILD.bazel +++ b/google/cloud/asset/v1p7beta1/BUILD.bazel @@ -193,14 +193,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/assuredworkloads/BUILD.bazel b/google/cloud/assuredworkloads/BUILD.bazel new file mode 100644 index 000000000..be51065ad --- /dev/null +++ b/google/cloud/assuredworkloads/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-assured_workloads. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for assuredworkloads. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "assuredworkloads_ruby_wrapper", + srcs = ["//google/cloud/assuredworkloads/v1:assuredworkloads_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-assured_workloads", + "ruby-cloud-env-prefix=ASSURED_WORKLOADS", + "ruby-cloud-wrapper-of=v1:0.0;v1beta1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/assured-workloads/", + "ruby-cloud-api-id=assuredworkloads.googleapis.com", + "ruby-cloud-api-shortname=assuredworkloads", + ], + ruby_cloud_description = "Assured Workloads for Government secures government workloads and accelerates the path to running compliant workloads on Google Cloud.", + ruby_cloud_title = "Assured Workloads for Government", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-assuredworkloads-ruby", + deps = [ + ":assuredworkloads_ruby_wrapper", + ], +) diff --git a/google/cloud/assuredworkloads/v1/BUILD.bazel b/google/cloud/assuredworkloads/v1/BUILD.bazel new file mode 100644 index 000000000..ffe56f208 --- /dev/null +++ b/google/cloud/assuredworkloads/v1/BUILD.bazel @@ -0,0 +1,367 @@ +# This file was automatically generated by BuildFileGenerator +# https://github.com/googleapis/rules_gapic/tree/master/bazel + +# Most of the manual changes to this file will be overwritten. +# It's **only** allowed to change the following rule attribute values: +# - names of *_gapic_assembly_* rules +# - certain parameters of *_gapic_library rules, including but not limited to: +# * extra_protoc_parameters +# * extra_protoc_file_parameters +# The complete list of preserved parameters can be found in the source code. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "assuredworkloads_proto", + srcs = [ + "assuredworkloads.proto", + ], + deps = [ + "//google/api:annotations_proto", + "//google/api:client_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "//google/longrunning:operations_proto", + "@com_google_protobuf//:duration_proto", + "@com_google_protobuf//:empty_proto", + "@com_google_protobuf//:field_mask_proto", + "@com_google_protobuf//:timestamp_proto", + ], +) + +proto_library_with_info( + name = "assuredworkloads_proto_with_info", + deps = [ + ":assuredworkloads_proto", + "//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "assuredworkloads_java_proto", + deps = [":assuredworkloads_proto"], +) + +java_grpc_library( + name = "assuredworkloads_java_grpc", + srcs = [":assuredworkloads_proto"], + deps = [":assuredworkloads_java_proto"], +) + +java_gapic_library( + name = "assuredworkloads_java_gapic", + srcs = [":assuredworkloads_proto_with_info"], + gapic_yaml = None, + grpc_service_config = "assuredworkloads_grpc_service_config.json", + service_yaml = "assuredworkloads_v1.yaml", + test_deps = [ + ":assuredworkloads_java_grpc", + ], + deps = [ + ":assuredworkloads_java_proto", + "//google/api:api_java_proto", + ], +) + +java_gapic_test( + name = "assuredworkloads_java_gapic_test_suite", + test_classes = [ + "com.google.cloud.assuredworkloads.v1.AssuredWorkloadsServiceClientTest", + ], + runtime_deps = [":assuredworkloads_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-assuredworkloads-v1-java", + deps = [ + ":assuredworkloads_java_gapic", + ":assuredworkloads_java_grpc", + ":assuredworkloads_java_proto", + ":assuredworkloads_proto", + ], +) + +############################################################################## +# Go +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_gapic_assembly_pkg", + "go_gapic_library", + "go_proto_library", + "go_test", +) + +go_proto_library( + name = "assuredworkloads_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/cloud/assuredworkloads/v1", + protos = [":assuredworkloads_proto"], + deps = [ + "//google/api:annotations_go_proto", + "//google/longrunning:longrunning_go_proto", + ], +) + +go_gapic_library( + name = "assuredworkloads_go_gapic", + srcs = [":assuredworkloads_proto_with_info"], + grpc_service_config = "assuredworkloads_grpc_service_config.json", + importpath = "cloud.google.com/go/assuredworkloads/apiv1;assuredworkloads", + metadata = True, + service_yaml = "assuredworkloads_v1.yaml", + deps = [ + ":assuredworkloads_go_proto", + "//google/longrunning:longrunning_go_proto", + "@com_google_cloud_go//longrunning:go_default_library", + "@com_google_cloud_go//longrunning/autogen:go_default_library", + "@io_bazel_rules_go//proto/wkt:duration_go_proto", + ], +) + +go_test( + name = "assuredworkloads_go_gapic_test", + srcs = [":assuredworkloads_go_gapic_srcjar_test"], + embed = [":assuredworkloads_go_gapic"], + importpath = "cloud.google.com/go/assuredworkloads/apiv1", +) + +# Open Source Packages +go_gapic_assembly_pkg( + name = "gapi-cloud-assuredworkloads-v1-go", + deps = [ + ":assuredworkloads_go_gapic", + ":assuredworkloads_go_gapic_srcjar-metadata.srcjar", + ":assuredworkloads_go_gapic_srcjar-test.srcjar", + ":assuredworkloads_go_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "assuredworkloads_py_gapic", + srcs = [":assuredworkloads_proto"], + grpc_service_config = "assuredworkloads_grpc_service_config.json", +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "assuredworkloads-v1-py", + deps = [ + ":assuredworkloads_py_gapic", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "assuredworkloads_php_proto", + deps = [":assuredworkloads_proto"], +) + +php_grpc_library( + name = "assuredworkloads_php_grpc", + srcs = [":assuredworkloads_proto"], + deps = [":assuredworkloads_php_proto"], +) + +php_gapic_library( + name = "assuredworkloads_php_gapic", + srcs = [":assuredworkloads_proto_with_info"], + grpc_service_config = "assuredworkloads_grpc_service_config.json", + service_yaml = "assuredworkloads_v1.yaml", + deps = [ + ":assuredworkloads_php_grpc", + ":assuredworkloads_php_proto", + ], +) + +# Open Source Packages +php_gapic_assembly_pkg( + name = "google-cloud-assuredworkloads-v1-php", + deps = [ + ":assuredworkloads_php_gapic", + ":assuredworkloads_php_grpc", + ":assuredworkloads_php_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "assuredworkloads_nodejs_gapic", + package_name = "@google-cloud/assured-workloads", + src = ":assuredworkloads_proto_with_info", + extra_protoc_parameters = ["metadata"], + grpc_service_config = "assuredworkloads_grpc_service_config.json", + package = "google.cloud.assuredworkloads.v1", + service_yaml = "assuredworkloads_v1.yaml", + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "assuredworkloads-v1-nodejs", + deps = [ + ":assuredworkloads_nodejs_gapic", + ":assuredworkloads_proto", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "assuredworkloads_ruby_proto", + deps = [":assuredworkloads_proto"], +) + +ruby_grpc_library( + name = "assuredworkloads_ruby_grpc", + srcs = [":assuredworkloads_proto"], + deps = [":assuredworkloads_ruby_proto"], +) + +ruby_cloud_gapic_library( + name = "assuredworkloads_ruby_gapic", + srcs = [":assuredworkloads_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-api-id=assuredworkloads.googleapis.com", + "ruby-cloud-api-shortname=assuredworkloads", + "ruby-cloud-env-prefix=ASSURED_WORKLOADS", + "ruby-cloud-gem-name=google-cloud-assured_workloads-v1", + "ruby-cloud-product-url=https://cloud.google.com/assured-workloads/", + ], + grpc_service_config = "assuredworkloads_grpc_service_config.json", + ruby_cloud_description = "Assured Workloads for Government secures government workloads and accelerates the path to running compliant workloads on Google Cloud.", + ruby_cloud_title = "Assured Workloads for Government V1", + deps = [ + ":assuredworkloads_ruby_grpc", + ":assuredworkloads_ruby_proto", + ], +) + +# Open Source Packages +ruby_gapic_assembly_pkg( + name = "google-cloud-assuredworkloads-v1-ruby", + deps = [ + ":assuredworkloads_ruby_gapic", + ":assuredworkloads_ruby_grpc", + ":assuredworkloads_ruby_proto", + ], +) + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", + "csharp_gapic_library", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "assuredworkloads_csharp_proto", + deps = [":assuredworkloads_proto"], +) + +csharp_grpc_library( + name = "assuredworkloads_csharp_grpc", + srcs = [":assuredworkloads_proto"], + deps = [":assuredworkloads_csharp_proto"], +) + +csharp_gapic_library( + name = "assuredworkloads_csharp_gapic", + srcs = [":assuredworkloads_proto_with_info"], + common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", + grpc_service_config = "assuredworkloads_grpc_service_config.json", + deps = [ + ":assuredworkloads_csharp_grpc", + ":assuredworkloads_csharp_proto", + ], +) + +# Open Source Packages +csharp_gapic_assembly_pkg( + name = "google-cloud-assuredworkloads-v1-csharp", + deps = [ + ":assuredworkloads_csharp_gapic", + ":assuredworkloads_csharp_grpc", + ":assuredworkloads_csharp_proto", + ], +) + +############################################################################## +# C++ +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "assuredworkloads_cc_proto", + deps = [":assuredworkloads_proto"], +) + +cc_grpc_library( + name = "assuredworkloads_cc_grpc", + srcs = [":assuredworkloads_proto"], + grpc_only = True, + deps = [":assuredworkloads_cc_proto"], +) diff --git a/google/cloud/assuredworkloads/v1/assuredworkloads.proto b/google/cloud/assuredworkloads/v1/assuredworkloads.proto new file mode 100644 index 000000000..43cab1f99 --- /dev/null +++ b/google/cloud/assuredworkloads/v1/assuredworkloads.proto @@ -0,0 +1,463 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.assuredworkloads.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/duration.proto"; +import "google/protobuf/empty.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Cloud.AssuredWorkloads.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/assuredworkloads/v1;assuredworkloads"; +option java_multiple_files = true; +option java_outer_classname = "AssuredworkloadsProto"; +option java_package = "com.google.cloud.assuredworkloads.v1"; +option php_namespace = "Google\\Cloud\\AssuredWorkloads\\V1"; +option ruby_package = "Google::Cloud::AssuredWorkloads::V1"; +option (google.api.resource_definition) = { + type: "assuredworkloads.googleapis.com/Location" + pattern: "organizations/{organization}/locations/{location}" +}; + +// Service to manage AssuredWorkloads. +service AssuredWorkloadsService { + option (google.api.default_host) = "assuredworkloads.googleapis.com"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform"; + + // Creates Assured Workload. + rpc CreateWorkload(CreateWorkloadRequest) + returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=organizations/*/locations/*}/workloads" + body: "workload" + }; + option (google.api.method_signature) = "parent,workload"; + option (google.longrunning.operation_info) = { + response_type: "Workload" + metadata_type: "CreateWorkloadOperationMetadata" + }; + } + + // Updates an existing workload. + // Currently allows updating of workload display_name and labels. + // For force updates don't set etag field in the Workload. + // Only one update operation per workload can be in progress. + rpc UpdateWorkload(UpdateWorkloadRequest) returns (Workload) { + option (google.api.http) = { + patch: "/v1/{workload.name=organizations/*/locations/*/workloads/*}" + body: "workload" + }; + option (google.api.method_signature) = "workload,update_mask"; + } + + // Deletes the workload. Make sure that workload's direct children are already + // in a deleted state, otherwise the request will fail with a + // FAILED_PRECONDITION error. + rpc DeleteWorkload(DeleteWorkloadRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1/{name=organizations/*/locations/*/workloads/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Gets Assured Workload associated with a CRM Node + rpc GetWorkload(GetWorkloadRequest) returns (Workload) { + option (google.api.http) = { + get: "/v1/{name=organizations/*/locations/*/workloads/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists Assured Workloads under a CRM Node. + rpc ListWorkloads(ListWorkloadsRequest) returns (ListWorkloadsResponse) { + option (google.api.http) = { + get: "/v1/{parent=organizations/*/locations/*}/workloads" + }; + option (google.api.method_signature) = "parent"; + } +} + +// Request for creating a workload. +message CreateWorkloadRequest { + // Required. The resource name of the new Workload's parent. + // Must be of the form `organizations/{org_id}/locations/{location_id}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "assuredworkloads.googleapis.com/Workload" + } + ]; + + // Required. Assured Workload to create + Workload workload = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A identifier associated with the workload and underlying projects + // which allows for the break down of billing costs for a workload. The value + // provided for the identifier will add a label to the workload and contained + // projects with the identifier as the value. + string external_id = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request for Updating a workload. +message UpdateWorkloadRequest { + // Required. The workload to update. + // The workload’s `name` field is used to identify the workload to be updated. + // Format: + // organizations/{org_id}/locations/{location_id}/workloads/{workload_id} + Workload workload = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of fields to be updated. + google.protobuf.FieldMask update_mask = 2 + [(google.api.field_behavior) = REQUIRED]; +} + +// Request for deleting a Workload. +message DeleteWorkloadRequest { + // Required. The `name` field is used to identify the workload. + // Format: + // organizations/{org_id}/locations/{location_id}/workloads/{workload_id} + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "assuredworkloads.googleapis.com/Workload" + } + ]; + + // Optional. The etag of the workload. + // If this is provided, it must match the server's etag. + string etag = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request for fetching a workload. +message GetWorkloadRequest { + // Required. The resource name of the Workload to fetch. This is the + // workloads's relative path in the API, formatted as + // "organizations/{organization_id}/locations/{location_id}/workloads/{workload_id}". + // For example, + // "organizations/123/locations/us-east1/workloads/assured-workload-1". + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "assuredworkloads.googleapis.com/Workload" + } + ]; +} + +// Request for fetching workloads in an organization. +message ListWorkloadsRequest { + // Required. Parent Resource to list workloads from. + // Must be of the form `organizations/{org_id}/locations/{location}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "assuredworkloads.googleapis.com/Workload" + } + ]; + + // Page size. + int32 page_size = 2; + + // Page token returned from previous request. Page token contains context from + // previous request. Page token needs to be passed in the second and following + // requests. + string page_token = 3; + + // A custom filter for filtering by properties of a workload. At this time, + // only filtering by labels is supported. + string filter = 4; +} + +// Response of ListWorkloads endpoint. +message ListWorkloadsResponse { + // List of Workloads under a given parent. + repeated Workload workloads = 1; + + // The next page token. Return empty if reached the last page. + string next_page_token = 2; +} + +// An Workload object for managing highly regulated workloads of cloud +// customers. +message Workload { + option (google.api.resource) = { + type: "assuredworkloads.googleapis.com/Workload" + pattern: "organizations/{organization}/locations/{location}/workloads/{workload}" + }; + + // Represent the resources that are children of this Workload. + message ResourceInfo { + // The type of resource. + enum ResourceType { + // Unknown resource type. + RESOURCE_TYPE_UNSPECIFIED = 0; + + // Consumer project. + CONSUMER_PROJECT = 1; + + // Consumer project containing encryption keys. + ENCRYPTION_KEYS_PROJECT = 2; + + // Keyring resource that hosts encryption keys. + KEYRING = 3; + } + + // Resource identifier. + // For a project this represents project_number. + int64 resource_id = 1; + + // Indicates the type of resource. + ResourceType resource_type = 2; + } + + // Settings specific to the Key Management Service. + message KMSSettings { + // Required. Input only. Immutable. The time at which the Key Management + // Service will automatically create a new version of the crypto key and + // mark it as the primary. + google.protobuf.Timestamp next_rotation_time = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = INPUT_ONLY, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Required. Input only. Immutable. [next_rotation_time] will be advanced by + // this period when the Key Management Service automatically rotates a key. + // Must be at least 24 hours and at most 876,000 hours. + google.protobuf.Duration rotation_period = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = INPUT_ONLY, + (google.api.field_behavior) = IMMUTABLE + ]; + } + + // Represent the custom settings for the resources to be created. + message ResourceSettings { + // Resource identifier. + // For a project this represents project_id. If the project is already + // taken, the workload creation will fail. + string resource_id = 1; + + // Indicates the type of resource. This field should be specified to + // correspond the id to the right project type (CONSUMER_PROJECT or + // ENCRYPTION_KEYS_PROJECT) + ResourceInfo.ResourceType resource_type = 2; + + // User-assigned resource display name. + // If not empty it will be used to create a resource with the specified + // name. + string display_name = 3; + } + + // Signed Access Approvals (SAA) enrollment response. + message SaaEnrollmentResponse { + // Setup state of SAA enrollment. + enum SetupState { + // Unspecified. + SETUP_STATE_UNSPECIFIED = 0; + + // SAA enrollment pending. + STATUS_PENDING = 1; + + // SAA enrollment comopleted. + STATUS_COMPLETE = 2; + } + + // Setup error of SAA enrollment. + enum SetupError { + // Unspecified. + SETUP_ERROR_UNSPECIFIED = 0; + + // Invalid states for all customers, to be redirected to AA UI for + // additional details. + ERROR_INVALID_BASE_SETUP = 1; + + // Returned when there is not an EKM key configured. + ERROR_MISSING_EXTERNAL_SIGNING_KEY = 2; + + // Returned when there are no enrolled services or the customer is + // enrolled in CAA only for a subset of services. + ERROR_NOT_ALL_SERVICES_ENROLLED = 3; + + // Returned when exception was encountered during evaluation of other + // criteria. + ERROR_SETUP_CHECK_FAILED = 4; + } + + // Indicates SAA enrollment status of a given workload. + optional SetupState setup_status = 1; + + // Indicates SAA enrollment setup error if any. + repeated SetupError setup_errors = 2; + } + + // Supported Compliance Regimes. + enum ComplianceRegime { + // Unknown compliance regime. + COMPLIANCE_REGIME_UNSPECIFIED = 0; + + // Information protection as per DoD IL4 requirements. + IL4 = 1; + + // Criminal Justice Information Services (CJIS) Security policies. + CJIS = 2; + + // FedRAMP High data protection controls + FEDRAMP_HIGH = 3; + + // FedRAMP Moderate data protection controls + FEDRAMP_MODERATE = 4; + + // Assured Workloads For US Regions data protection controls + US_REGIONAL_ACCESS = 5; + + // Health Insurance Portability and Accountability Act controls + HIPAA = 6; + + // Health Information Trust Alliance controls + HITRUST = 7; + + // Assured Workloads For EU Regions and Support controls + EU_REGIONS_AND_SUPPORT = 8; + + // Assured Workloads For Canada Regions and Support controls + CA_REGIONS_AND_SUPPORT = 9; + } + + // Key Access Justifications(KAJ) Enrollment State. + enum KajEnrollmentState { + // Default State for KAJ Enrollment. + KAJ_ENROLLMENT_STATE_UNSPECIFIED = 0; + + // Pending State for KAJ Enrollment. + KAJ_ENROLLMENT_STATE_PENDING = 1; + + // Complete State for KAJ Enrollment. + KAJ_ENROLLMENT_STATE_COMPLETE = 2; + } + + // Optional. The resource name of the workload. + // Format: + // organizations/{organization}/locations/{location}/workloads/{workload} + // + // Read-only. + string name = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The user-assigned display name of the Workload. + // When present it must be between 4 to 30 characters. + // Allowed characters are: lowercase and uppercase letters, numbers, + // hyphen, and spaces. + // + // Example: My Workload + string display_name = 2 [(google.api.field_behavior) = REQUIRED]; + + // Output only. The resources associated with this workload. + // These resources will be created when creating the workload. + // If any of the projects already exist, the workload creation will fail. + // Always read only. + repeated ResourceInfo resources = 3 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. Immutable. Compliance Regime associated with this workload. + ComplianceRegime compliance_regime = 4 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Output only. Immutable. The Workload creation timestamp. + google.protobuf.Timestamp create_time = 5 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Required. Input only. The billing account used for the resources which are + // direct children of workload. This billing account is initially associated + // with the resources created as part of Workload creation. + // After the initial creation of these resources, the customer can change + // the assigned billing account. + // The resource name has the form + // `billingAccounts/{billing_account_id}`. For example, + // `billingAccounts/012345-567890-ABCDEF`. + string billing_account = 6 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = INPUT_ONLY + ]; + + // Optional. ETag of the workload, it is calculated on the basis + // of the Workload contents. It will be used in Update & Delete operations. + string etag = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Labels applied to the workload. + map labels = 10 [(google.api.field_behavior) = OPTIONAL]; + + // Input only. The parent resource for the resources managed by this Assured + // Workload. May be either empty or a folder resource which is a child of the + // Workload parent. If not specified all resources are created under the + // parent organization. + // Format: + // folders/{folder_id} + string provisioned_resources_parent = 13 + [(google.api.field_behavior) = INPUT_ONLY]; + + // Input only. Settings used to create a CMEK crypto key. When set a project + // with a KMS CMEK key is provisioned. This field is mandatory for a subset of + // Compliance Regimes. + KMSSettings kms_settings = 14 [(google.api.field_behavior) = INPUT_ONLY]; + + // Input only. Resource properties that are used to customize workload + // resources. These properties (such as custom project id) will be used to + // create workload resources if possible. This field is optional. + repeated ResourceSettings resource_settings = 15 + [(google.api.field_behavior) = INPUT_ONLY]; + + // Output only. Represents the KAJ enrollment state of the given workload. + KajEnrollmentState kaj_enrollment_state = 17 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Indicates the sovereignty status of the given workload. + // Currently meant to be used by Europe/Canada customers. + bool enable_sovereign_controls = 18 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Represents the SAA enrollment response of the given workload. + // SAA enrollment response is queried during GetWorkload call. + // In failure cases, user friendly error message is shown in SAA details page. + SaaEnrollmentResponse saa_enrollment_response = 20 + [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Operation metadata to give request details of CreateWorkload. +message CreateWorkloadOperationMetadata { + // Optional. Time when the operation was created. + google.protobuf.Timestamp create_time = 1 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The display name of the workload. + string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The parent of the workload. + string parent = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Compliance controls that should be applied to the resources + // managed by the workload. + Workload.ComplianceRegime compliance_regime = 4 + [(google.api.field_behavior) = OPTIONAL]; +} diff --git a/google/cloud/assuredworkloads/v1/assuredworkloads_grpc_service_config.json b/google/cloud/assuredworkloads/v1/assuredworkloads_grpc_service_config.json new file mode 100644 index 000000000..828ac04de --- /dev/null +++ b/google/cloud/assuredworkloads/v1/assuredworkloads_grpc_service_config.json @@ -0,0 +1,12 @@ +{ + "methodConfig": [ + { + "name": [ + { + "service": "google.cloud.assuredworkloads.v1.AssuredWorkloadsService" + } + ], + "timeout": "60s" + } + ] +} diff --git a/google/cloud/assuredworkloads/v1/assuredworkloads_v1.yaml b/google/cloud/assuredworkloads/v1/assuredworkloads_v1.yaml new file mode 100644 index 000000000..5c6d73b32 --- /dev/null +++ b/google/cloud/assuredworkloads/v1/assuredworkloads_v1.yaml @@ -0,0 +1,42 @@ +type: google.api.Service +config_version: 3 +name: assuredworkloads.googleapis.com +title: Assured Workloads API + +apis: +- name: google.cloud.assuredworkloads.v1.AssuredWorkloadsService + +types: +- name: google.cloud.assuredworkloads.v1.CreateWorkloadOperationMetadata +- name: google.cloud.assuredworkloads.v1.Workload + +backend: + rules: + - selector: 'google.cloud.assuredworkloads.v1.AssuredWorkloadsService.*' + deadline: 15.0 + - selector: google.longrunning.Operations.GetOperation + deadline: 60.0 + - selector: google.longrunning.Operations.ListOperations + deadline: 60.0 + +http: + rules: + - selector: google.longrunning.Operations.GetOperation + get: '/v1/{name=organizations/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v1/{name=organizations/*/locations/*}/operations' + +authentication: + rules: + - selector: 'google.cloud.assuredworkloads.v1.AssuredWorkloadsService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.longrunning.Operations.GetOperation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.longrunning.Operations.ListOperations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/assuredworkloads/v1beta1/BUILD.bazel b/google/cloud/assuredworkloads/v1beta1/BUILD.bazel index e0b92cec1..26cb259ea 100644 --- a/google/cloud/assuredworkloads/v1beta1/BUILD.bazel +++ b/google/cloud/assuredworkloads/v1beta1/BUILD.bazel @@ -70,12 +70,15 @@ java_grpc_library( java_gapic_library( name = "assuredworkloads_java_gapic", srcs = [":assuredworkloads_proto_with_info"], + gapic_yaml = None, grpc_service_config = "assuredworkloads_grpc_service_config.json", + service_yaml = "assuredworkloads_v1beta1.yaml", test_deps = [ ":assuredworkloads_java_grpc", ], deps = [ ":assuredworkloads_java_proto", + "//google/api:api_java_proto", ], ) @@ -179,14 +182,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -346,4 +348,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "assuredworkloads_cc_proto", + deps = [":assuredworkloads_proto"], +) + +cc_grpc_library( + name = "assuredworkloads_cc_grpc", + srcs = [":assuredworkloads_proto"], + grpc_only = True, + deps = [":assuredworkloads_cc_proto"], +) diff --git a/google/cloud/assuredworkloads/v1beta1/assuredworkloads_v1beta1.proto b/google/cloud/assuredworkloads/v1beta1/assuredworkloads_v1beta1.proto index 5467fbad1..2845b2ec0 100644 --- a/google/cloud/assuredworkloads/v1beta1/assuredworkloads_v1beta1.proto +++ b/google/cloud/assuredworkloads/v1beta1/assuredworkloads_v1beta1.proto @@ -41,10 +41,12 @@ option (google.api.resource_definition) = { // Service to manage AssuredWorkloads. service AssuredWorkloadsService { option (google.api.default_host) = "assuredworkloads.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform"; // Creates Assured Workload. - rpc CreateWorkload(CreateWorkloadRequest) returns (google.longrunning.Operation) { + rpc CreateWorkload(CreateWorkloadRequest) + returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1beta1/{parent=organizations/*/locations/*}/workloads" body: "workload" @@ -109,8 +111,8 @@ message CreateWorkloadRequest { // Required. Assured Workload to create Workload workload = 2 [(google.api.field_behavior) = REQUIRED]; - // Optional. A identifier associated with the workload and underlying projects which - // allows for the break down of billing costs for a workload. The value + // Optional. A identifier associated with the workload and underlying projects + // which allows for the break down of billing costs for a workload. The value // provided for the identifier will add a label to the workload and contained // projects with the identifier as the value. string external_id = 3 [(google.api.field_behavior) = OPTIONAL]; @@ -125,7 +127,8 @@ message UpdateWorkloadRequest { Workload workload = 1 [(google.api.field_behavior) = REQUIRED]; // Required. The list of fields to be updated. - google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; + google.protobuf.FieldMask update_mask = 2 + [(google.api.field_behavior) = REQUIRED]; } // Request for deleting a Workload. @@ -147,8 +150,8 @@ message DeleteWorkloadRequest { // Request for fetching a workload. message GetWorkloadRequest { - // Required. The resource name of the Workload to fetch. This is the workloads's - // relative path in the API, formatted as + // Required. The resource name of the Workload to fetch. This is the + // workloads's relative path in the API, formatted as // "organizations/{organization_id}/locations/{location_id}/workloads/{workload_id}". // For example, // "organizations/123/locations/us-east1/workloads/assured-workload-1". @@ -208,11 +211,18 @@ message Workload { // Unknown resource type. RESOURCE_TYPE_UNSPECIFIED = 0; - // Consumer project. - CONSUMER_PROJECT = 1; + // Deprecated. Existing workloads will continue to support this, but new + // CreateWorkloadRequests should not specify this as an input value. + CONSUMER_PROJECT = 1 [deprecated = true]; + + // Consumer Folder. + CONSUMER_FOLDER = 4; // Consumer project containing encryption keys. ENCRYPTION_KEYS_PROJECT = 2; + + // Keyring resource that hosts encryption keys. + KEYRING = 3; } // Resource identifier. @@ -225,17 +235,18 @@ message Workload { // Settings specific to the Key Management Service. message KMSSettings { - // Required. Input only. Immutable. The time at which the Key Management Service will automatically create a - // new version of the crypto key and mark it as the primary. + // Required. Input only. Immutable. The time at which the Key Management + // Service will automatically create a new version of the crypto key and + // mark it as the primary. google.protobuf.Timestamp next_rotation_time = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.field_behavior) = INPUT_ONLY, (google.api.field_behavior) = IMMUTABLE ]; - // Required. Input only. Immutable. [next_rotation_time] will be advanced by this period when the Key - // Management Service automatically rotates a key. Must be at least 24 hours - // and at most 876,000 hours. + // Required. Input only. Immutable. [next_rotation_time] will be advanced by + // this period when the Key Management Service automatically rotates a key. + // Must be at least 24 hours and at most 876,000 hours. google.protobuf.Duration rotation_period = 2 [ (google.api.field_behavior) = REQUIRED, (google.api.field_behavior) = INPUT_ONLY, @@ -247,7 +258,8 @@ message Workload { message IL4Settings { option deprecated = true; - // Required. Input only. Immutable. Settings used to create a CMEK crypto key. + // Required. Input only. Immutable. Settings used to create a CMEK crypto + // key. KMSSettings kms_settings = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.field_behavior) = INPUT_ONLY, @@ -259,7 +271,8 @@ message Workload { message CJISSettings { option deprecated = true; - // Required. Input only. Immutable. Settings used to create a CMEK crypto key. + // Required. Input only. Immutable. Settings used to create a CMEK crypto + // key. KMSSettings kms_settings = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.field_behavior) = INPUT_ONLY, @@ -271,7 +284,8 @@ message Workload { message FedrampHighSettings { option deprecated = true; - // Required. Input only. Immutable. Settings used to create a CMEK crypto key. + // Required. Input only. Immutable. Settings used to create a CMEK crypto + // key. KMSSettings kms_settings = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.field_behavior) = INPUT_ONLY, @@ -283,7 +297,8 @@ message Workload { message FedrampModerateSettings { option deprecated = true; - // Required. Input only. Immutable. Settings used to create a CMEK crypto key. + // Required. Input only. Immutable. Settings used to create a CMEK crypto + // key. KMSSettings kms_settings = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.field_behavior) = INPUT_ONLY, @@ -302,6 +317,47 @@ message Workload { // correspond the id to the right project type (CONSUMER_PROJECT or // ENCRYPTION_KEYS_PROJECT) ResourceInfo.ResourceType resource_type = 2; + + // User-assigned resource display name. + // If not empty it will be used to create a resource with the specified + // name. + string display_name = 3; + } + + // Signed Access Approvals (SAA) enrollment response. + message SaaEnrollmentResponse { + // Setup state of SAA enrollment. + enum SetupState { + // Unspecified. + SETUP_STATE_UNSPECIFIED = 0; + // SAA enrollment pending. + STATUS_PENDING = 1; + // SAA enrollment comopleted. + STATUS_COMPLETE = 2; + } + + // Setup error of SAA enrollment. + enum SetupError { + // Unspecified. + SETUP_ERROR_UNSPECIFIED = 0; + // Invalid states for all customers, to be redirected to AA UI for + // additional details. + ERROR_INVALID_BASE_SETUP = 1; + // Returned when there is not an EKM key configured. + ERROR_MISSING_EXTERNAL_SIGNING_KEY = 2; + // Returned when there are no enrolled services or the customer is + // enrolled in CAA only for a subset of services. + ERROR_NOT_ALL_SERVICES_ENROLLED = 3; + // Returned when exception was encountered during evaluation of other + // criteria. + ERROR_SETUP_CHECK_FAILED = 4; + } + + // Indicates SAA enrollment status of a given workload. + optional SetupState setup_status = 1; + + // Indicates SAA enrollment setup error if any. + repeated SetupError setup_errors = 2; } // Supported Compliance Regimes. @@ -329,6 +385,24 @@ message Workload { // Health Information Trust Alliance controls HITRUST = 7; + + // Assured Workloads For EU Regions and Support controls + EU_REGIONS_AND_SUPPORT = 8; + + // Assured Workloads For Canada Regions and Support controls + CA_REGIONS_AND_SUPPORT = 9; + } + + // Key Access Justifications(KAJ) Enrollment State. + enum KajEnrollmentState { + // Default State for KAJ Enrollment. + KAJ_ENROLLMENT_STATE_UNSPECIFIED = 0; + + // Pending State for KAJ Enrollment. + KAJ_ENROLLMENT_STATE_PENDING = 1; + + // Complete State for KAJ Enrollment. + KAJ_ENROLLMENT_STATE_COMPLETE = 2; } // Optional. The resource name of the workload. @@ -350,7 +424,8 @@ message Workload { // These resources will be created when creating the workload. // If any of the projects already exist, the workload creation will fail. // Always read only. - repeated ResourceInfo resources = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + repeated ResourceInfo resources = 3 + [(google.api.field_behavior) = OUTPUT_ONLY]; // Required. Immutable. Compliance Regime associated with this workload. ComplianceRegime compliance_regime = 4 [ @@ -364,7 +439,7 @@ message Workload { (google.api.field_behavior) = IMMUTABLE ]; - // Required. Input only. The billing account used for the resources which are + // Input only. The billing account used for the resources which are // direct children of workload. This billing account is initially associated // with the resources created as part of Workload creation. // After the initial creation of these resources, the customer can change @@ -372,14 +447,12 @@ message Workload { // The resource name has the form // `billingAccounts/{billing_account_id}`. For example, // `billingAccounts/012345-567890-ABCDEF`. - string billing_account = 6 [ - (google.api.field_behavior) = REQUIRED, - (google.api.field_behavior) = INPUT_ONLY - ]; + string billing_account = 6 [(google.api.field_behavior) = INPUT_ONLY]; // Settings specific to the selected [compliance_regime] oneof compliance_regime_settings { - // Required. Input only. Immutable. Settings specific to resources needed for IL4. + // Required. Input only. Immutable. Settings specific to resources needed + // for IL4. IL4Settings il4_settings = 7 [ deprecated = true, (google.api.field_behavior) = REQUIRED, @@ -387,7 +460,8 @@ message Workload { (google.api.field_behavior) = IMMUTABLE ]; - // Required. Input only. Immutable. Settings specific to resources needed for CJIS. + // Required. Input only. Immutable. Settings specific to resources needed + // for CJIS. CJISSettings cjis_settings = 8 [ deprecated = true, (google.api.field_behavior) = REQUIRED, @@ -395,7 +469,8 @@ message Workload { (google.api.field_behavior) = IMMUTABLE ]; - // Required. Input only. Immutable. Settings specific to resources needed for FedRAMP High. + // Required. Input only. Immutable. Settings specific to resources needed + // for FedRAMP High. FedrampHighSettings fedramp_high_settings = 11 [ deprecated = true, (google.api.field_behavior) = REQUIRED, @@ -403,7 +478,8 @@ message Workload { (google.api.field_behavior) = IMMUTABLE ]; - // Required. Input only. Immutable. Settings specific to resources needed for FedRAMP Moderate. + // Required. Input only. Immutable. Settings specific to resources needed + // for FedRAMP Moderate. FedrampModerateSettings fedramp_moderate_settings = 12 [ deprecated = true, (google.api.field_behavior) = REQUIRED, @@ -419,30 +495,46 @@ message Workload { // Optional. Labels applied to the workload. map labels = 10 [(google.api.field_behavior) = OPTIONAL]; - // Input only. The parent resource for the resources managed by this Assured Workload. May - // be either an organization or a folder. Must be the same or a child of the + // Input only. The parent resource for the resources managed by this Assured + // Workload. May be either empty or a folder resource which is a child of the // Workload parent. If not specified all resources are created under the - // Workload parent. - // Formats: + // parent organization. + // Format: // folders/{folder_id} - // organizations/{organization_id} - string provisioned_resources_parent = 13 [(google.api.field_behavior) = INPUT_ONLY]; + string provisioned_resources_parent = 13 + [(google.api.field_behavior) = INPUT_ONLY]; - // Input only. Settings used to create a CMEK crypto key. When set a project with a KMS - // CMEK key is provisioned. This field is mandatory for a subset of Compliance - // Regimes. + // Input only. Settings used to create a CMEK crypto key. When set a project + // with a KMS CMEK key is provisioned. This field is mandatory for a subset of + // Compliance Regimes. KMSSettings kms_settings = 14 [(google.api.field_behavior) = INPUT_ONLY]; - // Input only. Resource properties that are used to customize workload resources. - // These properties (such as custom project id) will be used to create - // workload resources if possible. This field is optional. - repeated ResourceSettings resource_settings = 15 [(google.api.field_behavior) = INPUT_ONLY]; + // Input only. Resource properties that are used to customize workload + // resources. These properties (such as custom project id) will be used to + // create workload resources if possible. This field is optional. + repeated ResourceSettings resource_settings = 15 + [(google.api.field_behavior) = INPUT_ONLY]; + + // Output only. Represents the KAJ enrollment state of the given workload. + KajEnrollmentState kaj_enrollment_state = 17 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Indicates the sovereignty status of the given workload. + // Currently meant to be used by Europe/Canada customers. + bool enable_sovereign_controls = 18 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Represents the SAA enrollment response of the given workload. + // SAA enrollment response is queried during GetWorkload call. + // In failure cases, user friendly error message is shown in SAA details page. + SaaEnrollmentResponse saa_enrollment_response = 20 + [(google.api.field_behavior) = OUTPUT_ONLY]; } // Operation metadata to give request details of CreateWorkload. message CreateWorkloadOperationMetadata { // Optional. Time when the operation was created. - google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OPTIONAL]; + google.protobuf.Timestamp create_time = 1 + [(google.api.field_behavior) = OPTIONAL]; // Optional. The display name of the workload. string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; @@ -450,7 +542,13 @@ message CreateWorkloadOperationMetadata { // Optional. The parent of the workload. string parent = 3 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Compliance controls that should be applied to the resources managed by - // the workload. - Workload.ComplianceRegime compliance_regime = 4 [(google.api.field_behavior) = OPTIONAL]; + // Optional. Compliance controls that should be applied to the resources + // managed by the workload. + Workload.ComplianceRegime compliance_regime = 4 + [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Resource properties in the input that are used for + // creating/customizing workload resources. + repeated Workload.ResourceSettings resource_settings = 5 + [(google.api.field_behavior) = OPTIONAL]; } diff --git a/google/cloud/audit/BUILD.bazel b/google/cloud/audit/BUILD.bazel index 2bac6fe0e..66543cd58 100644 --- a/google/cloud/audit/BUILD.bazel +++ b/google/cloud/audit/BUILD.bazel @@ -21,6 +21,19 @@ proto_library( ], ) +proto_library( + name = "bigquery_audit_metadata_proto", + srcs = [ + "bigquery_audit_metadata.proto", + ], + deps = [ + "//google/iam/v1:policy_proto", + "//google/rpc:status_proto", + "@com_google_protobuf//:duration_proto", + "@com_google_protobuf//:timestamp_proto", + ], +) + ############################################################################## # Java ############################################################################## @@ -28,11 +41,14 @@ load( "@com_google_googleapis_imports//:imports.bzl", "java_grpc_library", "java_proto_library", + "java_gapic_assembly_gradle_pkg" ) java_proto_library( name = "audit_java_proto", - deps = [":audit_proto"], + deps = [":audit_proto", + ":bigquery_audit_metadata_proto", + ], ) java_grpc_library( @@ -41,6 +57,18 @@ java_grpc_library( deps = [":audit_java_proto"], ) +# Please DO-NOT-REMOVE this section. +# This is required to generate java files for these protos. +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-audit-java", + deps = [ + ":audit_java_proto", + ":audit_java_grpc", + ":audit_proto", + ], +) + ############################################################################## # Go ############################################################################## @@ -94,12 +122,11 @@ py_grpc_library( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -148,6 +175,7 @@ ruby_grpc_library( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", "csharp_grpc_library", "csharp_proto_library", ) @@ -163,7 +191,33 @@ csharp_grpc_library( deps = [":audit_csharp_proto"], ) +csharp_gapic_assembly_pkg( + name = "google-cloud-audit-csharp", + package_name = "Google.Cloud.Audit", + generate_nongapic_package = True, + deps = [ + ":audit_csharp_grpc", + ":audit_csharp_proto", + ], +) + ############################################################################## # C++ ############################################################################## -# Put your C++ code here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "audit_cc_proto", + deps = [":audit_proto"], +) + +cc_grpc_library( + name = "audit_cc_grpc", + srcs = [":audit_proto"], + grpc_only = True, + deps = [":audit_cc_proto"], +) diff --git a/google/cloud/audit/audit_log.proto b/google/cloud/audit/audit_log.proto index 66ea02146..33d500830 100644 --- a/google/cloud/audit/audit_log.proto +++ b/google/cloud/audit/audit_log.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -30,23 +30,23 @@ option java_package = "com.google.cloud.audit"; // Common audit log format for Google Cloud Platform API operations. message AuditLog { // The name of the API service performing the operation. For example, - // `"datastore.googleapis.com"`. + // `"compute.googleapis.com"`. string service_name = 7; // The name of the service method or operation. // For API calls, this should be the name of the API method. // For example, // - // "google.datastore.v1.Datastore.RunQuery" - // "google.logging.v1.LoggingService.DeleteLog" + // "google.cloud.bigquery.v2.TableService.InsertTable" + // "google.logging.v2.ConfigServiceV2.CreateSink" string method_name = 8; // The resource or collection that is the target of the operation. // The name is a scheme-less URI, not including the API service name. // For example: // - // "shelves/SHELF_ID/books" - // "shelves/SHELF_ID/books/BOOK_ID" + // "projects/PROJECT_ID/zones/us-central1-a/instances" + // "projects/PROJECT_ID/datasets/DATASET_ID" string resource_name = 11; // The resource location information. @@ -99,18 +99,20 @@ message AuditLog { // information associated with the current audited event. google.protobuf.Struct metadata = 18; - // Deprecated, use `metadata` field instead. + // Deprecated. Use the `metadata` field instead. // Other service-specific data about the request, response, and other // activities. - google.protobuf.Any service_data = 15; + google.protobuf.Any service_data = 15 [deprecated = true]; } // Authentication information for the operation. message AuthenticationInfo { // The email address of the authenticated user (or service account on behalf - // of third party principal) making the request. For privacy reasons, the - // principal email address is redacted for all read-only operations that fail - // with a "permission denied" error. + // of third party principal) making the request. For third party identity + // callers, the `principal_subject` field is populated instead of this field. + // For privacy reasons, the principal email address is sometimes redacted. + // For more information, see + // https://cloud.google.com/logging/docs/audit#user-id. string principal_email = 1; // The authority selector specified by the requestor, if any. @@ -144,9 +146,12 @@ message AuthenticationInfo { // Authorization information for the operation. message AuthorizationInfo { - // The resource being accessed, as a REST-style string. For example: + // The resource being accessed, as a REST-style or cloud resource string. + // For example: // // bigquery.googleapis.com/projects/PROJECTID/datasets/DATASETID + // or + // projects/PROJECTID/datasets/DATASETID string resource = 1; // The required IAM permission. @@ -258,6 +263,14 @@ message ServiceAccountDelegationInfo { google.protobuf.Struct third_party_claims = 1; } + // A string representing the principal_subject associated with the identity. + // For most identities, the format will be + // `principal://iam.googleapis.com/{identity pool name}/subject/{subject)` + // except for some GKE identities (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) + // that are still in the legacy format `serviceAccount:{identity pool + // name}[{subject}]` + string principal_subject = 3; + // Entity that creates credentials for service account and assumes its // identity for authentication. oneof Authority { diff --git a/google/cloud/audit/bigquery_audit_metadata.proto b/google/cloud/audit/bigquery_audit_metadata.proto new file mode 100644 index 000000000..f3a87ac53 --- /dev/null +++ b/google/cloud/audit/bigquery_audit_metadata.proto @@ -0,0 +1,1184 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.audit; + +import "google/iam/v1/policy.proto"; +import "google/protobuf/duration.proto"; +import "google/protobuf/timestamp.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Cloud.Audit"; +option go_package = "google.golang.org/genproto/googleapis/cloud/audit;audit"; +option java_multiple_files = true; +option java_outer_classname = "BigQueryAuditMetadataProto"; +option java_package = "com.google.cloud.audit"; +option objc_class_prefix = "GCA"; +option php_namespace = "Google\\Cloud\\Audit"; + +// Audit log format for BigQuery cloud audit logs metadata. +// +message BigQueryAuditMetadata { + // Job insertion event. + message JobInsertion { + // Describes how the job was inserted. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Job was inserted using the jobs.insert API. + JOB_INSERT_REQUEST = 1; + + // Job was inserted using the jobs.query RPC. + QUERY_REQUEST = 2; + } + + // Job metadata. + Job job = 1; + + // Describes how the job was inserted. + Reason reason = 2; + } + + // Job state change event. + message JobChange { + // Job state before the job state change. + JobState before = 1; + + // Job state after the job state change. + JobState after = 2; + + // Job metadata. + Job job = 3; + } + + // Dataset creation event. + message DatasetCreation { + // Describes how the dataset was created. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Dataset was created using the datasets.create API. + CREATE = 1; + + // Dataset was created using a query job, e.g., CREATE SCHEMA statement. + QUERY = 2; + } + + // Dataset metadata. + Dataset dataset = 1; + + // Describes how the dataset was created. + Reason reason = 2; + + // The URI of the job that created the dataset. + // Present if the reason is QUERY. + // + // Format: `projects//jobs/`. + string job_name = 3; + } + + // Dataset change event. + message DatasetChange { + // Describes how the dataset was changed. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Dataset was changed using the datasets.update or datasets.patch API. + UPDATE = 1; + + // Dataset was changed using the SetIamPolicy API. + SET_IAM_POLICY = 2; + + // Dataset was changed using a query job, e.g., ALTER SCHEMA statement. + QUERY = 3; + } + + // Dataset metadata after the change. + Dataset dataset = 1; + + // Describes how the dataset was changed. + Reason reason = 2; + + // The URI of the job that updated the dataset. + // Present if the reason is QUERY. + // + // Format: `projects//jobs/`. + string job_name = 3; + } + + // Dataset deletion event. + message DatasetDeletion { + // Describes how the dataset was deleted. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Dataset was deleted using the datasets.delete API. + DELETE = 1; + + // Dataset was deleted using a query job, e.g., DROP SCHEMA statement. + QUERY = 2; + } + + // Describes how the dataset was deleted. + Reason reason = 1; + + // The URI of the job that deleted the dataset. + // Present if the reason is QUERY. + // + // Format: `projects//jobs/`. + string job_name = 2; + } + + // Table creation event. + message TableCreation { + // Describes how the table was created. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Table was created as a destination table during a query, load or copy + // job. + JOB = 1; + + // Table was created using a DDL query. + QUERY = 2; + + // Table was created using the tables.create API. + TABLE_INSERT_REQUEST = 3; + } + + // Table metadata. + Table table = 1; + + // Describes how the table was created. + Reason reason = 3; + + // The URI of the job that created a table. + // Present if the reason is JOB or QUERY. + // + // Format: `projects//jobs/`. + string job_name = 4; + } + + // Model creation event. + message ModelCreation { + // Describes how the model was created. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Model was created using a DDL query. + QUERY = 2; + } + + // Model metadata. + Model model = 1; + + // Describes how the model was created. + Reason reason = 3; + + // The URI of the job that created the model. + // + // Format: `projects//jobs/`. + string job_name = 4; + } + + // Routine creation event. + message RoutineCreation { + // Describes how the routine was created. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Routine was created using a DDL query. + QUERY = 1; + + // Routine was created using the routines.create API. + ROUTINE_INSERT_REQUEST = 2; + } + + // Created routine. + Routine routine = 1; + + // Describes how the routine was created. + Reason reason = 3; + + // The URI of the job that created the routine. + // + // Format: `projects//jobs/`. + string job_name = 4; + } + + // Table data read event. + message TableDataRead { + // Describes how the table data was read. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Table was used as a source table during a BigQuery job. + JOB = 1; + + // Table data was accessed using the tabledata.list API. + TABLEDATA_LIST_REQUEST = 2; + + // Table data was accessed using the jobs.getQueryResults API. + GET_QUERY_RESULTS_REQUEST = 3; + + // Table data was accessed using the jobs.query RPC. + QUERY_REQUEST = 4; + + // Table data was accessed using storage.CreateReadSession API. + CREATE_READ_SESSION = 5; + + // Table data was accessed during a materialized view refresh. + MATERIALIZED_VIEW_REFRESH = 6; + } + + // List of the accessed fields. Entire list is truncated if the record size + // exceeds 100K. + repeated string fields = 2; + + // True if the fields list was truncated. + bool fields_truncated = 8; + + // List of the referenced policy tags. That is, policy tags attached to the + // accessed fields or their ancestors. + // Policy tag resource name is a string of the format: + // `projects//locations//taxonomies//policyTags/` + repeated string policy_tags = 9; + + // True if the policy tag list was truncated. At most 100 policy tags can be + // saved. + bool policy_tags_truncated = 10; + + // Describes how the table data was read. + Reason reason = 3; + + // The URI of the job that read a table. + // Present if the reason is JOB but can be redacted for privacy reasons. + // + // Format: `projects//jobs/`. + string job_name = 4; + + // The URI of the read session that read a table. + // Present if the reason is CREATE_READ_SESSION. + // + // Format: + // `projects//locations//sessions/`. + string session_name = 5; + } + + // Table metadata change event. + message TableChange { + // Describes how the table metadata was changed. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Table metadata was updated using the tables.update or tables.patch API. + TABLE_UPDATE_REQUEST = 1; + + // Table was used as a job destination table. + JOB = 2; + + // Table metadata was updated using a DML or DDL query. + QUERY = 3; + } + + // Updated table metadata. + Table table = 1; + + // True if the table was truncated. + bool truncated = 4; + + // Describes how the table metadata was changed. + Reason reason = 5; + + // The URI of the job that changed a table. + // Present if the reason is JOB or QUERY. + // + // Format: `projects//jobs/`. + string job_name = 6; + } + + // Model metadata change event. + message ModelMetadataChange { + // Describes how the model metadata was changed. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Model metadata was updated using the models.patch API. + MODEL_PATCH_REQUEST = 1; + + // Model metadata was updated using a DDL query. + QUERY = 2; + } + + // Updated model. + Model model = 1; + + // Describes how the model metadata was changed. + Reason reason = 2; + + // The URI of the job that changed the model metadata. + // Present if and only if the reason is QUERY. + // + // Format: `projects//jobs/`. + string job_name = 3; + } + + // Routine change event. + message RoutineChange { + // Describes how the routine was updated. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Routine was updated using a DDL query. + QUERY = 1; + + // Routine was updated using the routines.update or routines.patch API. + ROUTINE_UPDATE_REQUEST = 2; + } + + // Updated routine. + Routine routine = 1; + + // Describes how the routine was updated. + Reason reason = 3; + + // The URI of the job that updated the routine. + // + // Format: `projects//jobs/`. + string job_name = 4; + } + + // Table data change event. + message TableDataChange { + // Describes how the table data was changed. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Table was used as a job destination table. + JOB = 1; + + // Table data was updated using a DML or DDL query. + QUERY = 2; + + // Table data was updated during a materialized view refresh. + MATERIALIZED_VIEW_REFRESH = 3; + + // Table data was added using the Write API. + WRITE_API = 4; + } + + // Number of deleted rows. + int64 deleted_rows_count = 1; + + // Number of inserted rows. + int64 inserted_rows_count = 2; + + // True if the table was truncated. + bool truncated = 3; + + // Describes how the table data was changed. + Reason reason = 4; + + // The URI of the job that changed a table. + // + // Format: `projects//jobs/`. + string job_name = 5; + + // If written from WRITE_API, the name of the stream. + // + // Format: + // `projects//datasets//tables//streams/` + string stream_name = 6; + } + + // Model data change event. + message ModelDataChange { + // Describes how the model data was changed. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Model data was changed using a DDL query. + QUERY = 1; + } + + // Describes how the model data was changed. + Reason reason = 1; + + // The URI of the job that changed the model data. + // + // Format: `projects//jobs/`. + string job_name = 2; + } + + // Model data read event. + message ModelDataRead { + // Describes how the model data was read. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Model was used as a source model during a BigQuery job. + JOB = 1; + } + + // Describes how the model data was read. + Reason reason = 1; + + // The URI of the job that read the model data. + // + // Format: `projects//jobs/`. + string job_name = 2; + } + + // BigQuery dataset. + message Dataset { + // Dataset URI. + // + // Format: `projects//datasets/`. + string dataset_name = 1; + + // Dataset creation time. + google.protobuf.Timestamp create_time = 3; + + // Dataset metadata last update time. + google.protobuf.Timestamp update_time = 4; + + // The access control list for the dataset. + BigQueryAcl acl = 5; + + // Default expiration time for tables in the dataset. + google.protobuf.Duration default_table_expire_duration = 6; + + // User-provided metadata for the dataset. + EntityInfo dataset_info = 7; + + // Default encryption for tables in the dataset. + EncryptionInfo default_encryption = 8; + } + + // Table deletion event. + message TableDeletion { + // Describes how the table was deleted. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Table was deleted using the tables.delete API. + TABLE_DELETE_REQUEST = 2; + + // Table expired. + EXPIRED = 3; + + // Table deleted using a DDL query. + QUERY = 4; + } + + // Describes how the table was deleted. + Reason reason = 1; + + // The URI of the job that deleted a table. + // Present if the reason is QUERY. + // + // Format: `projects//jobs/`. + string job_name = 2; + } + + // Model deletion event. + message ModelDeletion { + // Describes how the model was deleted. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Model was deleted using the models.delete API. + MODEL_DELETE_REQUEST = 1; + + // Model expired. + EXPIRED = 2; + + // Model was deleted using DDL query. + QUERY = 3; + } + + // Describes how the model was deleted. + Reason reason = 1; + + // The URI of the job that deleted a model. + // Present if the reason is QUERY. + // + // Format: `projects//jobs/`. + string job_name = 2; + } + + // Trained BigQuery ML model. + message Model { + // Model URI. + // + // Format: `projects//datasets//models/`. + string model_name = 1; + + // User-provided metadata for the model. + EntityInfo model_info = 2; + + // Model expiration time. + google.protobuf.Timestamp expire_time = 5; + + // Model creation time. + google.protobuf.Timestamp create_time = 6; + + // Model last update time. + google.protobuf.Timestamp update_time = 7; + + // Model encryption information. Set when non-default encryption is used. + EncryptionInfo encryption = 8; + } + + // Routine deletion event. + message RoutineDeletion { + // Describes how the routine was deleted. + enum Reason { + // Unknown. + REASON_UNSPECIFIED = 0; + + // Routine was deleted using DDL query. + QUERY = 1; + + // Routine was deleted using the API. + ROUTINE_DELETE_REQUEST = 2; + } + + // Deleted routine. + Routine routine = 1; + + // Describes how the routine was deleted. + Reason reason = 3; + + // The URI of the job that deleted the routine. + // Present if the reason is QUERY. + // + // Format: `projects//jobs/`. + string job_name = 4; + } + + // BigQuery job. + message Job { + // Job URI. + // + // Format: `projects//jobs/`. + string job_name = 1; + + // Job configuration. + JobConfig job_config = 2; + + // Job status. + JobStatus job_status = 3; + + // Job statistics. + JobStats job_stats = 4; + } + + // Job configuration. + // See the [Jobs](https://cloud.google.com/bigquery/docs/reference/v2/jobs) + // API resource for more details on individual fields. + message JobConfig { + // Query job configuration. + message Query { + // Priority given to the query. + enum Priority { + // Unknown. + PRIORITY_UNSPECIFIED = 0; + + // Interactive query. + QUERY_INTERACTIVE = 1; + + // Batch query. + QUERY_BATCH = 2; + } + + // The SQL query to run. Truncated if exceeds 50K. + string query = 1; + + // True if the query field was truncated. + bool query_truncated = 10; + + // The destination table for the query results. + string destination_table = 2; + + // Destination table create disposition. + CreateDisposition create_disposition = 3; + + // Destination table write disposition. + WriteDisposition write_disposition = 4; + + // Default dataset for the query. + string default_dataset = 5; + + // External data sources used in the query. + repeated TableDefinition table_definitions = 6; + + // Priority given to the query. + Priority priority = 7; + + // Result table encryption information. Set when non-default encryption is + // used. + EncryptionInfo destination_table_encryption = 8; + + // Type of the query. + QueryStatementType statement_type = 9; + } + + // Load job configuration. + message Load { + // URIs for the data to be imported. Entire list is truncated if exceeds + // 40K. + repeated string source_uris = 1; + + // True if the source_URIs field was truncated. + bool source_uris_truncated = 7; + + // The table schema in JSON format. Entire field is truncated if exceeds + // 40K. + string schema_json = 2; + + // True if the schema_json field was truncated. + bool schema_json_truncated = 8; + + // The destination table for the import. + string destination_table = 3; + + // Destination table create disposition. + CreateDisposition create_disposition = 4; + + // Destination table write disposition. + WriteDisposition write_disposition = 5; + + // Result table encryption information. Set when non-default encryption is + // used. + EncryptionInfo destination_table_encryption = 6; + } + + // Extract job configuration. + message Extract { + // URIs where extracted data should be written. Entire list is truncated + // if exceeds 50K. + repeated string destination_uris = 1; + + // True if the destination_URIs field was truncated. + bool destination_uris_truncated = 3; + + oneof source { + // The source table. + string source_table = 2; + + // The source model. + string source_model = 4; + } + } + + // Table copy job configuration. + message TableCopy { + // Source tables. Entire list is truncated if exceeds 50K. + repeated string source_tables = 1; + + // True if the source_tables field was truncated. + bool source_tables_truncated = 6; + + // Destination table. + string destination_table = 2; + + // Destination table create disposition. + CreateDisposition create_disposition = 3; + + // Destination table write disposition. + WriteDisposition write_disposition = 4; + + // Result table encryption information. Set when non-default encryption is + // used. + EncryptionInfo destination_table_encryption = 5; + + // Supported operation types in the table copy job. + OperationType operation_type = 7; + + // Expiration time set on the destination table. Expired tables will be + // deleted and their storage reclaimed. + google.protobuf.Timestamp destination_expiration_time = 8; + } + + // Job type. + enum Type { + // Unknown. + TYPE_UNSPECIFIED = 0; + + // Query job. + QUERY = 1; + + // Table copy job. + COPY = 2; + + // Export (extract) job. + EXPORT = 3; + + // Import (load) job. + IMPORT = 4; + } + + // Job type. + Type type = 1; + + // Job configuration information. + oneof config { + // Query job information. + Query query_config = 2; + + // Load job information. + Load load_config = 3; + + // Extract job information. + Extract extract_config = 4; + + // TableCopy job information. + TableCopy table_copy_config = 5; + } + + // Labels provided for the job. + map labels = 6; + } + + // Definition of an external data source used in a query. + message TableDefinition { + // Name of the table, used in queries. + string name = 1; + + // URIs for the data. + repeated string source_uris = 2; + } + + // Status of a job. + message JobStatus { + // State of the job. + JobState job_state = 1; + + // Job error, if the job failed. + google.rpc.Status error_result = 2; + + // Errors encountered during the running of the job. Does not necessarily + // mean that the job has completed or was unsuccessful. + repeated google.rpc.Status errors = 3; + } + + // Job statistics. + message JobStats { + // Query job statistics. + message Query { + // Total bytes processed by the query job. + int64 total_processed_bytes = 1; + + // Total bytes billed by the query job. + int64 total_billed_bytes = 2; + + // The tier assigned by the CPU-based billing. + int32 billing_tier = 3; + + // Tables accessed by the query job. + repeated string referenced_tables = 6; + + // Views accessed by the query job. + repeated string referenced_views = 7; + + // Routines accessed by the query job. + repeated string referenced_routines = 10; + + // Number of output rows produced by the query job. + int64 output_row_count = 8; + + // True if the query job results were read from the query cache. + bool cache_hit = 9; + } + + // Load job statistics. + message Load { + // Total bytes loaded by the import job. + int64 total_output_bytes = 1; + } + + // Extract job statistics. + message Extract { + // Total bytes exported by the extract job. + int64 total_input_bytes = 1; + } + + // Job resource usage breakdown by reservation. + message ReservationResourceUsage { + // Reservation name or "unreserved" for on-demand resources usage. + string name = 1; + + // Total slot milliseconds used by the reservation for a particular job. + int64 slot_ms = 2; + } + + // Job creation time. + google.protobuf.Timestamp create_time = 1; + + // Job execution start time. + google.protobuf.Timestamp start_time = 2; + + // Job completion time. + google.protobuf.Timestamp end_time = 3; + + // Statistics specific to the job type. + oneof extended { + // Query job statistics. + Query query_stats = 8; + + // Load job statistics. + Load load_stats = 9; + + // Extract job statistics. + Extract extract_stats = 13; + } + + // The total number of slot-ms consumed by the query job. + int64 total_slot_ms = 10; + + // Reservation usage attributed from each tier of a reservation hierarchy. + repeated ReservationResourceUsage reservation_usage = 11; + + // Parent job name. Only present for child jobs. + string parent_job_name = 12; + } + + // Describes whether a job should overwrite or append the existing destination + // table if it already exists. + enum WriteDisposition { + // Unknown. + WRITE_DISPOSITION_UNSPECIFIED = 0; + + // This job should only be writing to empty tables. + WRITE_EMPTY = 1; + + // This job will truncate the existing table data. + WRITE_TRUNCATE = 2; + + // This job will append to the table. + WRITE_APPEND = 3; + } + + // BigQuery table. + message Table { + // Table URI. + // + // Format: `projects//datasets//tables/`. + string table_name = 1; + + // A JSON representation of the table's schema. Entire field is truncated + // if exceeds 40K. + string schema_json = 3; + + // True if the schema_json field was truncated. + bool schema_json_truncated = 11; + + // View metadata. Only present for views. + TableViewDefinition view = 4; + + // Table expiration time. + google.protobuf.Timestamp expire_time = 5; + + // The table creation time. + google.protobuf.Timestamp create_time = 6; + + // The last time metadata update time. + google.protobuf.Timestamp update_time = 7; + + // The last table truncation time. + google.protobuf.Timestamp truncate_time = 8; + + // Table encryption information. Set when non-default encryption is used. + EncryptionInfo encryption = 9; + + // User-provided metadata for the table. + EntityInfo table_info = 10; + } + + // User Defined Function (UDF) or Stored Procedure. + message Routine { + // Routine URI. + // + // Format: + // `projects//datasets//routines/`. + string routine_name = 1; + + // Routine creation time. + google.protobuf.Timestamp create_time = 5; + + // Routine last update time. + google.protobuf.Timestamp update_time = 6; + } + + // Table copy job operation type. + enum OperationType { + // Unspecified operation type. + OPERATION_TYPE_UNSPECIFIED = 0; + + // The source and the destination table have the same table type. + COPY = 1; + + // The source table type is TABLE and + // the destination table type is SNAPSHOT. + SNAPSHOT = 2; + + // The source table type is SNAPSHOT and + // the destination table type is TABLE. + RESTORE = 3; + } + + // User-provided metadata for an entity, for e.g. dataset, table or model. + message EntityInfo { + // A short name for the entity. + string friendly_name = 1; + + // A long description for the entity. + string description = 2; + + // Labels provided for the entity. + map labels = 3; + } + + // View definition. + message TableViewDefinition { + // SQL query defining the view. Truncated if exceeds 40K. + string query = 1; + + // True if the schema_json field was truncated. + bool query_truncated = 2; + } + + // An access control list. + message BigQueryAcl { + // IAM policy for the resource. + google.iam.v1.Policy policy = 1; + + // List of authorized views for a dataset. + // + // Format: `projects//datasets//tables/`. + repeated string authorized_views = 2; + } + + // Encryption properties for a table or a job + message EncryptionInfo { + // Cloud kms key identifier. + // + // Format: + // `projects//locations//keyRings//cryptoKeys/` + string kms_key_name = 1; + } + + // Describes whether a job should create a destination table if it doesn't + // exist. + enum CreateDisposition { + // Unknown. + CREATE_DISPOSITION_UNSPECIFIED = 0; + + // This job should never create tables. + CREATE_NEVER = 1; + + // This job should create a table if it doesn't already exist. + CREATE_IF_NEEDED = 2; + } + + // State of a job. + enum JobState { + // State unknown. + JOB_STATE_UNSPECIFIED = 0; + + // Job is waiting for the resources. + PENDING = 1; + + // Job is running. + RUNNING = 2; + + // Job is done. + DONE = 3; + } + + // Type of the statement (e.g. SELECT, INSERT, CREATE_TABLE, CREATE_MODEL..) + enum QueryStatementType { + // Unknown. + QUERY_STATEMENT_TYPE_UNSPECIFIED = 0; + + // SELECT ... FROM <Table list> ... + SELECT = 1; + + // ASSERT <condition> AS 'description' + ASSERT = 23; + + // INSERT INTO <Table> .... + INSERT = 2; + + // UPDATE <Table> SET ... + UPDATE = 3; + + // DELETE <Table> ... + DELETE = 4; + + // MERGE INTO <Table> .... + MERGE = 5; + + // CREATE TABLE <Table> <column list> + CREATE_TABLE = 6; + + // CREATE TABLE <Table> AS SELECT + CREATE_TABLE_AS_SELECT = 7; + + // CREATE VIEW <View> + CREATE_VIEW = 8; + + // CREATE MODEL <Model> AS <Query> + CREATE_MODEL = 9; + + // CREATE MATERIALIZED VIEW <View> AS ... + CREATE_MATERIALIZED_VIEW = 13; + + // CREATE FUNCTION <Function>(<Signature>) AS ... + CREATE_FUNCTION = 14; + + // CREATE PROCEDURE <Procedure> + CREATE_PROCEDURE = 20; + + // CREATE SCHEMA <Schema> + CREATE_SCHEMA = 53; + + // DROP TABLE <Table> + DROP_TABLE = 10; + + // DROP EXTERNAL TABLE <Table> + DROP_EXTERNAL_TABLE = 33; + + // DROP VIEW <View> + DROP_VIEW = 11; + + // DROP MODEL <Model> + DROP_MODEL = 12; + + // DROP MATERIALIZED VIEW <View> + DROP_MATERIALIZED_VIEW = 15; + + // DROP FUNCTION <Function> + DROP_FUNCTION = 16; + + // DROP PROCEDURE <Procedure> + DROP_PROCEDURE = 21; + + // DROP SCHEMA <Schema> + DROP_SCHEMA = 54; + + // ALTER TABLE <Table> + ALTER_TABLE = 17; + + // ALTER VIEW <View> + ALTER_VIEW = 18; + + // ALTER MATERIALIZED_VIEW <view> + ALTER_MATERIALIZED_VIEW = 22; + + // ALTER SCHEMA <Schema> + ALTER_SCHEMA = 55; + + // Script + SCRIPT = 19; + + // TRUNCATE TABLE <Table> + TRUNCATE_TABLE = 26; + + // CREATE EXTERNAL TABLE <TABLE> + CREATE_EXTERNAL_TABLE = 27; + + // EXPORT DATA; + EXPORT_DATA = 28; + + // CALL <stored procedure> + CALL = 29; + } + + // BigQuery event information. + oneof event { + // Job insertion event. + JobInsertion job_insertion = 1; + + // Job state change event. + JobChange job_change = 2; + + // Dataset creation event. + DatasetCreation dataset_creation = 3; + + // Dataset change event. + DatasetChange dataset_change = 4; + + // Dataset deletion event. + DatasetDeletion dataset_deletion = 5; + + // Table creation event. + TableCreation table_creation = 6; + + // Table metadata change event. + TableChange table_change = 8; + + // Table deletion event. + TableDeletion table_deletion = 9; + + // Table data read event. + TableDataRead table_data_read = 10; + + // Table data change event. + TableDataChange table_data_change = 11; + + // Model deletion event. + ModelDeletion model_deletion = 12; + + // Model creation event. + ModelCreation model_creation = 13; + + // Model metadata change event. + ModelMetadataChange model_metadata_change = 14; + + // Model data change event. + ModelDataChange model_data_change = 15; + + // Model data read event. + ModelDataRead model_data_read = 19; + + // Routine creation event. + RoutineCreation routine_creation = 16; + + // Routine change event. + RoutineChange routine_change = 17; + + // Routine deletion event. + RoutineDeletion routine_deletion = 18; + } +} diff --git a/google/cloud/audit/cloudaudit.yaml b/google/cloud/audit/cloudaudit.yaml index 0e5fef6c1..cc9bb5a95 100644 --- a/google/cloud/audit/cloudaudit.yaml +++ b/google/cloud/audit/cloudaudit.yaml @@ -1,7 +1,8 @@ type: google.api.Service -config_version: 2 +config_version: 3 name: cloudaudit.googleapis.com title: Audit Log types: - name: google.cloud.audit.AuditLog +- name: google.cloud.audit.BigQueryAuditMetadata diff --git a/google/cloud/automl/BUILD.bazel b/google/cloud/automl/BUILD.bazel index a87c57fec..f776d8224 100644 --- a/google/cloud/automl/BUILD.bazel +++ b/google/cloud/automl/BUILD.bazel @@ -1 +1,44 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-automl. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for automl. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "automl_ruby_wrapper", + srcs = ["//google/cloud/automl/v1:automl_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-automl", + "ruby-cloud-gem-namespace=Google::Cloud::AutoML", + "ruby-cloud-env-prefix=AUTOML", + "ruby-cloud-wrapper-of=v1:0.0;v1beta1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/automl", + "ruby-cloud-api-id=automl.googleapis.com", + "ruby-cloud-api-shortname=automl", + "ruby-cloud-migration-version=1.0", + "ruby-cloud-path-override=auto_ml=automl", + "ruby-cloud-namespace-override=AutoMl=AutoML", + ], + ruby_cloud_description = "AutoML makes the power of machine learning available to you even if you have limited knowledge of machine learning. You can use AutoML to build on Google's machine learning capabilities to create your own custom machine learning models that are tailored to your business needs, and then integrate those models into your applications and web sites.", + ruby_cloud_title = "Cloud AutoML", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-automl-ruby", + deps = [ + ":automl_ruby_wrapper", + ], +) diff --git a/google/cloud/automl/v1/BUILD.bazel b/google/cloud/automl/v1/BUILD.bazel index c3a76d855..1916c71f3 100644 --- a/google/cloud/automl/v1/BUILD.bazel +++ b/google/cloud/automl/v1/BUILD.bazel @@ -193,14 +193,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -364,4 +363,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "automl_cc_proto", + deps = [":automl_proto"], +) + +cc_grpc_library( + name = "automl_cc_grpc", + srcs = [":automl_proto"], + grpc_only = True, + deps = [":automl_cc_proto"], +) diff --git a/google/cloud/automl/v1/annotation_payload.proto b/google/cloud/automl/v1/annotation_payload.proto index a81feaf10..e33102690 100644 --- a/google/cloud/automl/v1/annotation_payload.proto +++ b/google/cloud/automl/v1/annotation_payload.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,13 +16,13 @@ syntax = "proto3"; package google.cloud.automl.v1; +import "google/api/annotations.proto"; import "google/cloud/automl/v1/classification.proto"; import "google/cloud/automl/v1/detection.proto"; import "google/cloud/automl/v1/text_extraction.proto"; import "google/cloud/automl/v1/text_sentiment.proto"; import "google/cloud/automl/v1/translation.proto"; import "google/protobuf/any.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; diff --git a/google/cloud/automl/v1/annotation_spec.proto b/google/cloud/automl/v1/annotation_spec.proto index 9eb61579e..d750e24d7 100644 --- a/google/cloud/automl/v1/annotation_spec.proto +++ b/google/cloud/automl/v1/annotation_spec.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,8 +16,8 @@ syntax = "proto3"; package google.cloud.automl.v1; -import "google/api/resource.proto"; import "google/api/annotations.proto"; +import "google/api/resource.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; @@ -35,7 +35,6 @@ message AnnotationSpec { // Output only. Resource name of the annotation spec. // Form: - // // 'projects/{project_id}/locations/{location_id}/datasets/{dataset_id}/annotationSpecs/{annotation_spec_id}' string name = 1; diff --git a/google/cloud/automl/v1/automl_v1.yaml b/google/cloud/automl/v1/automl_v1.yaml index bc75483c3..c7dd7c0fd 100644 --- a/google/cloud/automl/v1/automl_v1.yaml +++ b/google/cloud/automl/v1/automl_v1.yaml @@ -22,6 +22,12 @@ documentation: state-of-the-art transfer learning, and Neural Architecture Search technology. rules: + - selector: google.cloud.location.Locations.GetLocation + description: Gets information about a location. + + - selector: google.cloud.location.Locations.ListLocations + description: Lists information about the supported locations for this service. + - selector: google.iam.v1.IAMPolicy.GetIamPolicy description: |- Gets the access control policy for a resource. Returns an empty policy @@ -32,14 +38,14 @@ documentation: Sets the access control policy on the specified resource. Replaces any existing policy. - Can return Public Errors: NOT_FOUND, INVALID_ARGUMENT and - PERMISSION_DENIED + Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` + errors. - selector: google.iam.v1.IAMPolicy.TestIamPermissions description: |- Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of - permissions, not a NOT_FOUND error. + permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization @@ -51,6 +57,10 @@ backend: deadline: 5.0 - selector: google.cloud.automl.v1.AutoMl.CreateModel deadline: 20.0 + - selector: google.cloud.automl.v1.AutoMl.DeployModel + deadline: 20.0 + - selector: google.cloud.automl.v1.AutoMl.ExportData + deadline: 20.0 - selector: google.cloud.automl.v1.AutoMl.ImportData deadline: 20.0 - selector: google.cloud.automl.v1.AutoMl.ListDatasets @@ -63,6 +73,10 @@ backend: deadline: 20.0 - selector: google.cloud.automl.v1.PredictionService.Predict deadline: 60.0 + - selector: google.cloud.location.Locations.GetLocation + deadline: 5.0 + - selector: google.cloud.location.Locations.ListLocations + deadline: 5.0 - selector: 'google.iam.v1.IAMPolicy.*' deadline: 5.0 - selector: 'google.longrunning.Operations.*' @@ -74,34 +88,38 @@ backend: http: rules: - - selector: google.longrunning.Operations.ListOperations - get: '/v1/{name=projects/*/locations/*}/operations' - - - selector: google.longrunning.Operations.GetOperation - get: '/v1/{name=projects/*/locations/*/operations/*}' - - - selector: google.longrunning.Operations.DeleteOperation - delete: '/v1/{name=projects/*/locations/*/operations/*}' - - - selector: google.longrunning.Operations.CancelOperation - post: '/v1/{name=projects/*/locations/*/operations/*}:cancel' - body: '*' - + - selector: google.cloud.location.Locations.GetLocation + get: '/v1/{name=projects/*/locations/*}' + - selector: google.cloud.location.Locations.ListLocations + get: '/v1/{name=projects/*}/locations' + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + get: '/v1/{resource=projects/*/locations/*}:getIamPolicy' + additional_bindings: + - get: '/v1/{resource=projects/*/locations/*/datasets/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/locations/*/models/*}:getIamPolicy' - selector: google.iam.v1.IAMPolicy.SetIamPolicy - post: '/v1/{resource=projects/*/locations/*/datasets/*}:setIamPolicy' + post: '/v1/{resource=projects/*/locations/*}:setIamPolicy' body: '*' additional_bindings: + - post: '/v1/{resource=projects/*/locations/*/datasets/*}:setIamPolicy' + body: '*' - post: '/v1/{resource=projects/*/locations/*/models/*}:setIamPolicy' body: '*' - - - selector: google.iam.v1.IAMPolicy.GetIamPolicy - get: '/v1/{resource=projects/*/locations/*/datasets/*}:getIamPolicy' - additional_bindings: - - get: '/v1/{resource=projects/*/locations/*/models/*}:getIamPolicy' - - selector: google.iam.v1.IAMPolicy.TestIamPermissions post: '/v1/{resource=projects/*/locations/*/**}:testIamPermissions' body: '*' + - selector: google.longrunning.Operations.CancelOperation + post: '/v1/{name=projects/*/locations/*/operations/*}:cancel' + body: '*' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/v1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/v1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v1/{name=projects/*/locations/*}/operations' + - selector: google.longrunning.Operations.WaitOperation + post: '/v1/{name=projects/*/locations/*/operations/*}:wait' + body: '*' authentication: rules: @@ -117,6 +135,14 @@ authentication: oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.GetLocation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.ListLocations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform - selector: 'google.iam.v1.IAMPolicy.*' oauth: canonical_scopes: |- diff --git a/google/cloud/automl/v1/classification.proto b/google/cloud/automl/v1/classification.proto index 9213bfde8..48bea525f 100644 --- a/google/cloud/automl/v1/classification.proto +++ b/google/cloud/automl/v1/classification.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -124,7 +124,6 @@ message ClassificationEvaluationMetrics { // Output only. IDs of the annotation specs used in the confusion matrix. // For Tables CLASSIFICATION - // // [prediction_type][google.cloud.automl.v1p1beta.TablesModelMetadata.prediction_type] // only list of [annotation_spec_display_name-s][] is populated. repeated string annotation_spec_id = 1; @@ -132,7 +131,6 @@ message ClassificationEvaluationMetrics { // Output only. Display name of the annotation specs used in the confusion // matrix, as they were at the moment of the evaluation. For Tables // CLASSIFICATION - // // [prediction_type-s][google.cloud.automl.v1p1beta.TablesModelMetadata.prediction_type], // distinct values of the target column at the moment of the model // evaluation are populated here. diff --git a/google/cloud/automl/v1/data_items.proto b/google/cloud/automl/v1/data_items.proto index 63896ba92..c0a60b24d 100644 --- a/google/cloud/automl/v1/data_items.proto +++ b/google/cloud/automl/v1/data_items.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,13 +16,13 @@ syntax = "proto3"; package google.cloud.automl.v1; +import "google/api/annotations.proto"; import "google/cloud/automl/v1/geometry.proto"; import "google/cloud/automl/v1/io.proto"; import "google/cloud/automl/v1/text_segment.proto"; import "google/protobuf/any.proto"; import "google/protobuf/duration.proto"; import "google/protobuf/struct.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; @@ -146,7 +146,6 @@ message Document { // The position of the [text_segment][google.cloud.automl.v1.Document.Layout.text_segment] in the page. // Contains exactly 4 - // // [normalized_vertices][google.cloud.automl.v1p1beta.BoundingPoly.normalized_vertices] // and they are connected by edges in the order provided, which will // represent a rectangle parallel to the frame. The diff --git a/google/cloud/automl/v1/dataset.proto b/google/cloud/automl/v1/dataset.proto index 2040ec96a..776e3a387 100644 --- a/google/cloud/automl/v1/dataset.proto +++ b/google/cloud/automl/v1/dataset.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,12 +16,12 @@ syntax = "proto3"; package google.cloud.automl.v1; +import "google/api/annotations.proto"; import "google/api/resource.proto"; import "google/cloud/automl/v1/image.proto"; import "google/cloud/automl/v1/text.proto"; import "google/cloud/automl/v1/translation.proto"; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; diff --git a/google/cloud/automl/v1/detection.proto b/google/cloud/automl/v1/detection.proto index 13fe5935f..d85728e7e 100644 --- a/google/cloud/automl/v1/detection.proto +++ b/google/cloud/automl/v1/detection.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,9 +16,9 @@ syntax = "proto3"; package google.cloud.automl.v1; +import "google/api/annotations.proto"; import "google/cloud/automl/v1/geometry.proto"; import "google/protobuf/duration.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; diff --git a/google/cloud/automl/v1/geometry.proto b/google/cloud/automl/v1/geometry.proto index a6d97e805..95cd2e379 100644 --- a/google/cloud/automl/v1/geometry.proto +++ b/google/cloud/automl/v1/geometry.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/google/cloud/automl/v1/image.proto b/google/cloud/automl/v1/image.proto index 5269d22c0..99be2da1e 100644 --- a/google/cloud/automl/v1/image.proto +++ b/google/cloud/automl/v1/image.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,11 +16,12 @@ syntax = "proto3"; package google.cloud.automl.v1; +import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/cloud/automl/v1/annotation_spec.proto"; import "google/cloud/automl/v1/classification.proto"; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; @@ -33,7 +34,7 @@ option ruby_package = "Google::Cloud::AutoML::V1"; // Dataset metadata that is specific to image classification. message ImageClassificationDatasetMetadata { // Required. Type of the classification problem. - ClassificationType classification_type = 1; + ClassificationType classification_type = 1 [(google.api.field_behavior) = REQUIRED]; } // Dataset metadata specific to image object detection. @@ -48,9 +49,9 @@ message ImageClassificationModelMetadata { // created from scratch. The `base` model must be in the same // `project` and `location` as the new model to create, and have the same // `model_type`. - string base_model_id = 1; + string base_model_id = 1 [(google.api.field_behavior) = OPTIONAL]; - // The train budget of creating this model, expressed in milli node + // Optional. The train budget of creating this model, expressed in milli node // hours i.e. 1,000 value in this field means 1 node hour. The actual // `train_cost` will be equal or less than this value. If further model // training ceases to provide any improvements, it will stop without using @@ -64,16 +65,16 @@ message ImageClassificationModelMetadata { // `mobile-core-ml-high-accuracy-1`, the train budget must be between 1,000 // and 100,000 milli node hours, inclusive. The default value is 24, 000 which // represents one day in wall time. - int64 train_budget_milli_node_hours = 16; + int64 train_budget_milli_node_hours = 16 [(google.api.field_behavior) = OPTIONAL]; // Output only. The actual train cost of creating this model, expressed in // milli node hours, i.e. 1,000 value in this field means 1 node hour. // Guaranteed to not exceed the train budget. - int64 train_cost_milli_node_hours = 17; + int64 train_cost_milli_node_hours = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The reason that this create model operation stopped, // e.g. `BUDGET_REACHED`, `MODEL_CONVERGED`. - string stop_reason = 5; + string stop_reason = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. Type of the model. The available values are: // * `cloud` - Model to be used via prediction calls to AutoML API. @@ -108,16 +109,16 @@ message ImageClassificationModelMetadata { // Core ML afterwards. Expected to have a higher latency, but // should also have a higher prediction quality than other // models. - string model_type = 7; + string model_type = 7 [(google.api.field_behavior) = OPTIONAL]; // Output only. An approximate number of online prediction QPS that can // be supported by this model per each node on which it is deployed. - double node_qps = 13; + double node_qps = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The number of nodes this model is deployed on. A node is an // abstraction of a machine resource, which can handle online prediction QPS // as given in the node_qps field. - int64 node_count = 14; + int64 node_count = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Model metadata specific to image object detection. @@ -145,22 +146,22 @@ message ImageObjectDetectionModelMetadata { // with TensorFlow afterwards. Expected to have a higher // latency, but should also have a higher prediction quality // than other models. - string model_type = 1; + string model_type = 1 [(google.api.field_behavior) = OPTIONAL]; // Output only. The number of nodes this model is deployed on. A node is an // abstraction of a machine resource, which can handle online prediction QPS // as given in the qps_per_node field. - int64 node_count = 3; + int64 node_count = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. An approximate number of online prediction QPS that can // be supported by this model per each node on which it is deployed. - double node_qps = 4; + double node_qps = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The reason that this create model operation stopped, // e.g. `BUDGET_REACHED`, `MODEL_CONVERGED`. - string stop_reason = 5; + string stop_reason = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - // The train budget of creating this model, expressed in milli node + // Optional. The train budget of creating this model, expressed in milli node // hours i.e. 1,000 value in this field means 1 node hour. The actual // `train_cost` will be equal or less than this value. If further model // training ceases to provide any improvements, it will stop without using @@ -175,12 +176,12 @@ message ImageObjectDetectionModelMetadata { // `mobile-core-ml-versatile-1`, `mobile-core-ml-high-accuracy-1`, the train // budget must be between 1,000 and 100,000 milli node hours, inclusive. // The default value is 24, 000 which represents one day in wall time. - int64 train_budget_milli_node_hours = 6; + int64 train_budget_milli_node_hours = 6 [(google.api.field_behavior) = OPTIONAL]; // Output only. The actual train cost of creating this model, expressed in // milli node hours, i.e. 1,000 value in this field means 1 node hour. // Guaranteed to not exceed the train budget. - int64 train_cost_milli_node_hours = 7; + int64 train_cost_milli_node_hours = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Model deployment metadata specific to Image Classification. @@ -188,10 +189,9 @@ message ImageClassificationModelDeploymentMetadata { // Input only. The number of nodes to deploy the model on. A node is an // abstraction of a machine resource, which can handle online prediction QPS // as given in the model's - // // [node_qps][google.cloud.automl.v1.ImageClassificationModelMetadata.node_qps]. // Must be between 1 and 100, inclusive on both ends. - int64 node_count = 1; + int64 node_count = 1 [(google.api.field_behavior) = INPUT_ONLY]; } // Model deployment metadata specific to Image Object Detection. @@ -199,8 +199,7 @@ message ImageObjectDetectionModelDeploymentMetadata { // Input only. The number of nodes to deploy the model on. A node is an // abstraction of a machine resource, which can handle online prediction QPS // as given in the model's - // // [qps_per_node][google.cloud.automl.v1.ImageObjectDetectionModelMetadata.qps_per_node]. // Must be between 1 and 100, inclusive on both ends. - int64 node_count = 1; + int64 node_count = 1 [(google.api.field_behavior) = INPUT_ONLY]; } diff --git a/google/cloud/automl/v1/io.proto b/google/cloud/automl/v1/io.proto index c6ac8a35b..0b713d696 100644 --- a/google/cloud/automl/v1/io.proto +++ b/google/cloud/automl/v1/io.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,8 +16,8 @@ syntax = "proto3"; package google.cloud.automl.v1; -import "google/api/field_behavior.proto"; import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; @@ -532,7 +532,6 @@ option ruby_package = "Google::Cloud::AutoML::V1"; // [bigquery_source][google.cloud.automl.v1.InputConfig.bigquery_source]. // All input is concatenated into a // single -// // [primary_table_spec_id][google.cloud.automl.v1.TablesDatasetMetadata.primary_table_spec_id] // // **For gcs_source:** @@ -549,9 +548,7 @@ option ruby_package = "Google::Cloud::AutoML::V1"; // First three sample rows of a CSV file: //
 // "Id","First Name","Last Name","Dob","Addresses"
-//
 // "1","John","Doe","1968-01-22","[{"status":"current","address":"123_First_Avenue","city":"Seattle","state":"WA","zip":"11111","numberOfYears":"1"},{"status":"previous","address":"456_Main_Street","city":"Portland","state":"OR","zip":"22222","numberOfYears":"5"}]"
-//
 // "2","Jane","Doe","1980-10-16","[{"status":"current","address":"789_Any_Avenue","city":"Albany","state":"NY","zip":"33333","numberOfYears":"2"},{"status":"previous","address":"321_Main_Street","city":"Hoboken","state":"NJ","zip":"44444","numberOfYears":"3"}]}
 // 
// **For bigquery_source:** @@ -879,7 +876,6 @@ message InputConfig { // contain values for the corresponding columns. // // The column names must contain the model's -// // [input_feature_column_specs'][google.cloud.automl.v1.TablesModelMetadata.input_feature_column_specs] // [display_name-s][google.cloud.automl.v1.ColumnSpec.display_name] // (order doesn't matter). The columns corresponding to the model's @@ -891,9 +887,7 @@ message InputConfig { // Sample rows from a CSV file: //
 // "First Name","Last Name","Dob","Addresses"
-//
 // "John","Doe","1968-01-22","[{"status":"current","address":"123_First_Avenue","city":"Seattle","state":"WA","zip":"11111","numberOfYears":"1"},{"status":"previous","address":"456_Main_Street","city":"Portland","state":"OR","zip":"22222","numberOfYears":"5"}]"
-//
 // "Jane","Doe","1980-10-16","[{"status":"current","address":"789_Any_Avenue","city":"Albany","state":"NY","zip":"33333","numberOfYears":"2"},{"status":"previous","address":"321_Main_Street","city":"Hoboken","state":"NJ","zip":"44444","numberOfYears":"3"}]}
 // 
// **For bigquery_source:** @@ -902,7 +896,6 @@ message InputConfig { // table must be 100GB or smaller. // // The column names must contain the model's -// // [input_feature_column_specs'][google.cloud.automl.v1.TablesModelMetadata.input_feature_column_specs] // [display_name-s][google.cloud.automl.v1.ColumnSpec.display_name] // (order doesn't matter). The columns corresponding to the model's @@ -973,19 +966,16 @@ message DocumentInputConfig { // Output depends on whether the dataset was imported from Google Cloud // Storage or BigQuery. // Google Cloud Storage case: -// -// [gcs_destination][google.cloud.automl.v1p1beta.OutputConfig.gcs_destination] +// [gcs_destination][google.cloud.automl.v1p1beta.OutputConfig.gcs_destination] // must be set. Exported are CSV file(s) `tables_1.csv`, // `tables_2.csv`,...,`tables_N.csv` with each having as header line // the table's column names, and all other lines contain values for // the header columns. // BigQuery case: -// -// [bigquery_destination][google.cloud.automl.v1p1beta.OutputConfig.bigquery_destination] +// [bigquery_destination][google.cloud.automl.v1p1beta.OutputConfig.bigquery_destination] // pointing to a BigQuery project must be set. In the given project a // new dataset will be created with name -// -// `export_data__` +// `export_data__` // where will be made // BigQuery-dataset-name compatible (e.g. most special characters will // become underscores), and timestamp will be in @@ -1008,7 +998,6 @@ message OutputConfig { // Output configuration for BatchPredict Action. // // As destination the -// // [gcs_destination][google.cloud.automl.v1.BatchPredictOutputConfig.gcs_destination] // must be set unless specified otherwise for a domain. If gcs_destination is // set then in the given directory a new directory is created. Its name @@ -1034,9 +1023,7 @@ message OutputConfig { // predictions). These files will have a JSON representation of a proto // that wraps the same "ID" : "" but here followed by // exactly one -// -// [`google.rpc.Status`](https: -// //github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) +// [`google.rpc.Status`](https://github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) // containing only `code` and `message`fields. // // * For Image Object Detection: @@ -1056,9 +1043,7 @@ message OutputConfig { // predictions). These files will have a JSON representation of a proto // that wraps the same "ID" : "" but here followed by // exactly one -// -// [`google.rpc.Status`](https: -// //github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) +// [`google.rpc.Status`](https://github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) // containing only `code` and `message`fields. // * For Video Classification: // In the created directory a video_classification.csv file, and a .JSON @@ -1066,8 +1051,7 @@ message OutputConfig { // line in given CSV(s)), will be created. // // The format of video_classification.csv is: -// -// GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END,JSON_FILE_NAME,STATUS +// GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END,JSON_FILE_NAME,STATUS // where: // GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END = matches 1 to 1 // the prediction input lines (i.e. video_classification.csv has @@ -1095,8 +1079,7 @@ message OutputConfig { // lines in given CSV(s)). // // The format of video_object_tracking.csv is: -// -// GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END,JSON_FILE_NAME,STATUS +// GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END,JSON_FILE_NAME,STATUS // where: // GCS_FILE_PATH,TIME_SEGMENT_START,TIME_SEGMENT_END = matches 1 to 1 // the prediction input lines (i.e. video_object_tracking.csv has @@ -1131,9 +1114,7 @@ message OutputConfig { // `errors_N.jsonl` files will be created (N depends on total number of // failed predictions). These files will have a JSON representation of a // proto that wraps input file followed by exactly one -// -// [`google.rpc.Status`](https: -// //github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) +// [`google.rpc.Status`](https://github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) // containing only `code` and `message`. // // * For Text Sentiment: @@ -1155,9 +1136,7 @@ message OutputConfig { // `errors_N.jsonl` files will be created (N depends on total number of // failed predictions). These files will have a JSON representation of a // proto that wraps input file followed by exactly one -// -// [`google.rpc.Status`](https: -// //github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) +// [`google.rpc.Status`](https://github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) // containing only `code` and `message`. // // * For Text Extraction: @@ -1191,34 +1170,26 @@ message OutputConfig { // proto that wraps either the "id" : "" (in case of inline) // or the document proto (in case of document) but here followed by // exactly one -// -// [`google.rpc.Status`](https: -// //github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) +// [`google.rpc.Status`](https://github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) // containing only `code` and `message`. // // * For Tables: // Output depends on whether -// -// [gcs_destination][google.cloud.automl.v1p1beta.BatchPredictOutputConfig.gcs_destination] +// [gcs_destination][google.cloud.automl.v1p1beta.BatchPredictOutputConfig.gcs_destination] // or -// -// [bigquery_destination][google.cloud.automl.v1p1beta.BatchPredictOutputConfig.bigquery_destination] +// [bigquery_destination][google.cloud.automl.v1p1beta.BatchPredictOutputConfig.bigquery_destination] // is set (either is allowed). // Google Cloud Storage case: // In the created directory files `tables_1.csv`, `tables_2.csv`,..., // `tables_N.csv` will be created, where N may be 1, and depends on // the total number of the successfully predicted rows. // For all CLASSIFICATION -// -// [prediction_type-s][google.cloud.automl.v1p1beta.TablesModelMetadata.prediction_type]: +// [prediction_type-s][google.cloud.automl.v1p1beta.TablesModelMetadata.prediction_type]: // Each .csv file will contain a header, listing all columns' -// -// [display_name-s][google.cloud.automl.v1p1beta.ColumnSpec.display_name] +// [display_name-s][google.cloud.automl.v1p1beta.ColumnSpec.display_name] // given on input followed by M target column names in the format of -// -// "<[target_column_specs][google.cloud.automl.v1p1beta.TablesModelMetadata.target_column_spec] -// -// [display_name][google.cloud.automl.v1p1beta.ColumnSpec.display_name]>___score" where M is the number of distinct target values, // i.e. number of distinct values in the target column of the table // used to train the model. Subsequent lines will contain the @@ -1226,16 +1197,13 @@ message OutputConfig { // i.e. the target, columns having the corresponding prediction // [scores][google.cloud.automl.v1p1beta.TablesAnnotation.score]. // For REGRESSION and FORECASTING -// -// [prediction_type-s][google.cloud.automl.v1p1beta.TablesModelMetadata.prediction_type]: +// [prediction_type-s][google.cloud.automl.v1p1beta.TablesModelMetadata.prediction_type]: // Each .csv file will contain a header, listing all columns' // [display_name-s][google.cloud.automl.v1p1beta.display_name] // given on input followed by the predicted target column with name // in the format of -// -// "predicted_<[target_column_specs][google.cloud.automl.v1p1beta.TablesModelMetadata.target_column_spec] -// -// [display_name][google.cloud.automl.v1p1beta.ColumnSpec.display_name]>" +// "predicted_<[target_column_specs][google.cloud.automl.v1p1beta.TablesModelMetadata.target_column_spec] +// [display_name][google.cloud.automl.v1p1beta.ColumnSpec.display_name]>" // Subsequent lines will contain the respective values of // successfully predicted rows, with the last, i.e. the target, // column having the predicted target value. @@ -1244,14 +1212,11 @@ message OutputConfig { // created (N depends on total number of failed rows). These files // will have analogous format as `tables_*.csv`, but always with a // single target column having -// -// [`google.rpc.Status`](https: -// //github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) +// [`google.rpc.Status`](https://github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) // represented as a JSON string, and containing only `code` and // `message`. // BigQuery case: -// -// [bigquery_destination][google.cloud.automl.v1p1beta.OutputConfig.bigquery_destination] +// [bigquery_destination][google.cloud.automl.v1p1beta.OutputConfig.bigquery_destination] // pointing to a BigQuery project must be set. In the given project a // new dataset will be created with name // `prediction__` @@ -1261,31 +1226,23 @@ message OutputConfig { // YYYY_MM_DDThh_mm_ss_sssZ "based on ISO-8601" format. In the dataset // two tables will be created, `predictions`, and `errors`. // The `predictions` table's column names will be the input columns' -// -// [display_name-s][google.cloud.automl.v1p1beta.ColumnSpec.display_name] +// [display_name-s][google.cloud.automl.v1p1beta.ColumnSpec.display_name] // followed by the target column with name in the format of -// -// "predicted_<[target_column_specs][google.cloud.automl.v1p1beta.TablesModelMetadata.target_column_spec] -// -// [display_name][google.cloud.automl.v1p1beta.ColumnSpec.display_name]>" +// "predicted_<[target_column_specs][google.cloud.automl.v1p1beta.TablesModelMetadata.target_column_spec] +// [display_name][google.cloud.automl.v1p1beta.ColumnSpec.display_name]>" // The input feature columns will contain the respective values of // successfully predicted rows, with the target column having an // ARRAY of -// -// [AnnotationPayloads][google.cloud.automl.v1p1beta.AnnotationPayload], +// [AnnotationPayloads][google.cloud.automl.v1p1beta.AnnotationPayload], // represented as STRUCT-s, containing // [TablesAnnotation][google.cloud.automl.v1p1beta.TablesAnnotation]. // The `errors` table contains rows for which the prediction has // failed, it has analogous input columns while the target column name // is in the format of -// -// "errors_<[target_column_specs][google.cloud.automl.v1p1beta.TablesModelMetadata.target_column_spec] -// -// [display_name][google.cloud.automl.v1p1beta.ColumnSpec.display_name]>", +// "errors_<[target_column_specs][google.cloud.automl.v1p1beta.TablesModelMetadata.target_column_spec] +// [display_name][google.cloud.automl.v1p1beta.ColumnSpec.display_name]>", // and as a value has -// -// [`google.rpc.Status`](https: -// //github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) +// [`google.rpc.Status`](https://github.com/googleapis/googleapis/blob/master/google/rpc/status.proto) // represented as a STRUCT, and containing only `code` and `message`. message BatchPredictOutputConfig { // The destination of the output. @@ -1341,9 +1298,7 @@ message ModelExportOutputConfig { // the container. The container is verified to work correctly on // ubuntu 16.04 operating system. See more at // [containers - // - // quickstart](https: - // //cloud.google.com/vision/automl/docs/containers-gcs-quickstart) + // quickstart](https://cloud.google.com/vision/automl/docs/containers-gcs-quickstart) // * core_ml - Used for iOS mobile devices. string model_format = 4; diff --git a/google/cloud/automl/v1/model.proto b/google/cloud/automl/v1/model.proto index f53689377..2bc3c3e74 100644 --- a/google/cloud/automl/v1/model.proto +++ b/google/cloud/automl/v1/model.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,12 +16,12 @@ syntax = "proto3"; package google.cloud.automl.v1; +import "google/api/annotations.proto"; import "google/api/resource.proto"; import "google/cloud/automl/v1/image.proto"; import "google/cloud/automl/v1/text.proto"; import "google/cloud/automl/v1/translation.proto"; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; diff --git a/google/cloud/automl/v1/model_evaluation.proto b/google/cloud/automl/v1/model_evaluation.proto index 601389f7a..10fb2f540 100644 --- a/google/cloud/automl/v1/model_evaluation.proto +++ b/google/cloud/automl/v1/model_evaluation.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,6 +16,7 @@ syntax = "proto3"; package google.cloud.automl.v1; +import "google/api/annotations.proto"; import "google/api/resource.proto"; import "google/cloud/automl/v1/classification.proto"; import "google/cloud/automl/v1/detection.proto"; @@ -23,7 +24,6 @@ import "google/cloud/automl/v1/text_extraction.proto"; import "google/cloud/automl/v1/text_sentiment.proto"; import "google/cloud/automl/v1/translation.proto"; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; @@ -62,7 +62,6 @@ message ModelEvaluation { // Output only. Resource name of the model evaluation. // Format: - // // `projects/{project_id}/locations/{location_id}/models/{model_id}/modelEvaluations/{model_evaluation_id}` string name = 1; @@ -70,7 +69,6 @@ message ModelEvaluation { // The ID is empty for the overall model evaluation. // For Tables annotation specs in the dataset do not exist and this ID is // always not set, but for CLASSIFICATION - // // [prediction_type-s][google.cloud.automl.v1.TablesModelMetadata.prediction_type] // the // [display_name][google.cloud.automl.v1.ModelEvaluation.display_name] @@ -83,7 +81,6 @@ message ModelEvaluation { // value at model training time, for different models trained from the same // dataset, the values may differ, since display names could had been changed // between the two model's trainings. For Tables CLASSIFICATION - // // [prediction_type-s][google.cloud.automl.v1.TablesModelMetadata.prediction_type] // distinct values of the target column at the moment of the model evaluation // are populated here. @@ -100,7 +97,6 @@ message ModelEvaluation { // the total number of all examples used for evaluation. // Otherwise, this is the count of examples that according to the ground // truth were annotated by the - // // [annotation_spec_id][google.cloud.automl.v1.ModelEvaluation.annotation_spec_id]. int32 evaluated_example_count = 6; } diff --git a/google/cloud/automl/v1/operations.proto b/google/cloud/automl/v1/operations.proto index d6a998708..bd2256d02 100644 --- a/google/cloud/automl/v1/operations.proto +++ b/google/cloud/automl/v1/operations.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,11 +16,16 @@ syntax = "proto3"; package google.cloud.automl.v1; +import "google/api/annotations.proto"; import "google/cloud/automl/v1/dataset.proto"; import "google/cloud/automl/v1/io.proto"; +import "google/cloud/automl/v1/model.proto"; +import "google/cloud/automl/v1/model_evaluation.proto"; +import "google/cloud/automl/v1/prediction_service.proto"; +import "google/cloud/automl/v1/service.proto"; +import "google/protobuf/empty.proto"; import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; @@ -131,7 +136,6 @@ message ExportDataOperationMetadata { message BatchPredictOperationMetadata { // Further describes this batch predict's output. // Supplements - // // [BatchPredictOutputConfig][google.cloud.automl.v1.BatchPredictOutputConfig]. message BatchPredictOutputInfo { // The output location into which prediction output is written. diff --git a/google/cloud/automl/v1/prediction_service.proto b/google/cloud/automl/v1/prediction_service.proto index b7b69cc2b..9db95024f 100644 --- a/google/cloud/automl/v1/prediction_service.proto +++ b/google/cloud/automl/v1/prediction_service.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -23,7 +23,6 @@ import "google/api/resource.proto"; import "google/cloud/automl/v1/annotation_payload.proto"; import "google/cloud/automl/v1/data_items.proto"; import "google/cloud/automl/v1/io.proto"; -import "google/cloud/automl/v1/operations.proto"; import "google/longrunning/operations.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; @@ -37,7 +36,7 @@ option ruby_package = "Google::Cloud::AutoML::V1"; // AutoML Prediction API. // // On any input that is documented to expect a string parameter in -// snake_case or kebab-case, either of those cases is accepted. +// snake_case or dash-case, either of those cases is accepted. service PredictionService { option (google.api.default_host) = "automl.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; @@ -154,7 +153,6 @@ message PredictRequest { // // `feature_importance` // : (boolean) Whether - // // [feature_importance][google.cloud.automl.v1.TablesModelColumnInfo.feature_importance] // is populated in the returned list of // [TablesAnnotation][google.cloud.automl.v1.TablesAnnotation] diff --git a/google/cloud/automl/v1/service.proto b/google/cloud/automl/v1/service.proto index 7c73243cc..f72ebdb5c 100644 --- a/google/cloud/automl/v1/service.proto +++ b/google/cloud/automl/v1/service.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -27,7 +27,6 @@ import "google/cloud/automl/v1/image.proto"; import "google/cloud/automl/v1/io.proto"; import "google/cloud/automl/v1/model.proto"; import "google/cloud/automl/v1/model_evaluation.proto"; -import "google/cloud/automl/v1/operations.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/field_mask.proto"; @@ -52,7 +51,7 @@ option ruby_package = "Google::Cloud::AutoML::V1"; // Currently the only supported `location_id` is "us-central1". // // On any input that is documented to expect a string parameter in -// snake_case or kebab-case, either of those cases is accepted. +// snake_case or dash-case, either of those cases is accepted. service AutoMl { option (google.api.default_host) = "automl.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; @@ -216,7 +215,6 @@ service AutoMl { // Deploys a model. If a model is already deployed, deploying it with the // same parameters has no effect. Deploying with different parametrs // (as e.g. changing - // // [node_number][google.cloud.automl.v1p1beta.ImageObjectDetectionModelDeploymentMetadata.node_number]) // will reset the deployment state without pausing the model's availability. // @@ -330,10 +328,10 @@ message ListDatasetsRequest { // An expression for filtering the results of the request. // // * `dataset_metadata` - for existence of the case (e.g. - // image_classification_dataset_metadata:*). Some examples of using the filter are: + // `image_classification_dataset_metadata:*`). Some examples of using the filter are: // // * `translation_dataset_metadata:*` --> The dataset has - // translation_dataset_metadata. + // `translation_dataset_metadata`. string filter = 3; // Requested page size. Server may return fewer results than requested. @@ -456,11 +454,11 @@ message ListModelsRequest { // An expression for filtering the results of the request. // // * `model_metadata` - for existence of the case (e.g. - // video_classification_model_metadata:*). + // `video_classification_model_metadata:*`). // * `dataset_id` - for = or !=. Some examples of using the filter are: // // * `image_classification_model_metadata:*` --> The model has - // image_classification_model_metadata. + // `image_classification_model_metadata`. // * `dataset_id=5` --> The model was created from a dataset with ID 5. string filter = 3; diff --git a/google/cloud/automl/v1/text.proto b/google/cloud/automl/v1/text.proto index 667031b87..d4eb764ff 100644 --- a/google/cloud/automl/v1/text.proto +++ b/google/cloud/automl/v1/text.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,8 +16,9 @@ syntax = "proto3"; package google.cloud.automl.v1; -import "google/cloud/automl/v1/classification.proto"; import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; +import "google/cloud/automl/v1/classification.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; diff --git a/google/cloud/automl/v1/text_extraction.proto b/google/cloud/automl/v1/text_extraction.proto index 37a31e715..e28fa4bb8 100644 --- a/google/cloud/automl/v1/text_extraction.proto +++ b/google/cloud/automl/v1/text_extraction.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,8 +16,8 @@ syntax = "proto3"; package google.cloud.automl.v1; -import "google/cloud/automl/v1/text_segment.proto"; import "google/api/annotations.proto"; +import "google/cloud/automl/v1/text_segment.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; diff --git a/google/cloud/automl/v1/text_segment.proto b/google/cloud/automl/v1/text_segment.proto index be7eb1543..c3c28b1d6 100644 --- a/google/cloud/automl/v1/text_segment.proto +++ b/google/cloud/automl/v1/text_segment.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/google/cloud/automl/v1/text_sentiment.proto b/google/cloud/automl/v1/text_sentiment.proto index c68b9ed3d..8541bfa17 100644 --- a/google/cloud/automl/v1/text_sentiment.proto +++ b/google/cloud/automl/v1/text_sentiment.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,8 +16,8 @@ syntax = "proto3"; package google.cloud.automl.v1; -import "google/cloud/automl/v1/classification.proto"; import "google/api/annotations.proto"; +import "google/cloud/automl/v1/classification.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; diff --git a/google/cloud/automl/v1/translation.proto b/google/cloud/automl/v1/translation.proto index 642894e85..aa0466727 100644 --- a/google/cloud/automl/v1/translation.proto +++ b/google/cloud/automl/v1/translation.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,9 +16,9 @@ syntax = "proto3"; package google.cloud.automl.v1; +import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; import "google/cloud/automl/v1/data_items.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.AutoML.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/automl/v1;automl"; diff --git a/google/cloud/automl/v1beta1/BUILD.bazel b/google/cloud/automl/v1beta1/BUILD.bazel index 6f74973f0..324f758cd 100644 --- a/google/cloud/automl/v1beta1/BUILD.bazel +++ b/google/cloud/automl/v1beta1/BUILD.bazel @@ -202,14 +202,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/automl/v1beta1/service.proto b/google/cloud/automl/v1beta1/service.proto index a421ece14..9a572dd2a 100644 --- a/google/cloud/automl/v1beta1/service.proto +++ b/google/cloud/automl/v1beta1/service.proto @@ -395,10 +395,11 @@ message ListDatasetsRequest { // An expression for filtering the results of the request. // // * `dataset_metadata` - for existence of the case (e.g. - // image_classification_dataset_metadata:*). Some examples of using the filter are: + // `image_classification_dataset_metadata:*`). Some examples of + // using the filter are: // // * `translation_dataset_metadata:*` --> The dataset has - // translation_dataset_metadata. + // `translation_dataset_metadata`. string filter = 3; // Requested page size. Server may return fewer results than requested. @@ -641,11 +642,11 @@ message ListModelsRequest { // An expression for filtering the results of the request. // // * `model_metadata` - for existence of the case (e.g. - // video_classification_model_metadata:*). + // `video_classification_model_metadata:*`). // * `dataset_id` - for = or !=. Some examples of using the filter are: // // * `image_classification_model_metadata:*` --> The model has - // image_classification_model_metadata. + // `image_classification_model_metadata`. // * `dataset_id=5` --> The model was created from a dataset with ID 5. string filter = 3; diff --git a/google/cloud/baremetalsolution/v2/BUILD.bazel b/google/cloud/baremetalsolution/v2/BUILD.bazel new file mode 100644 index 000000000..48ec6596d --- /dev/null +++ b/google/cloud/baremetalsolution/v2/BUILD.bazel @@ -0,0 +1,357 @@ +# This file was automatically generated by BuildFileGenerator +# https://github.com/googleapis/rules_gapic/tree/master/bazel + +# Most of the manual changes to this file will be overwritten. +# It's **only** allowed to change the following rule attribute values: +# - names of *_gapic_assembly_* rules +# - certain parameters of *_gapic_library rules, including but not limited to: +# * extra_protoc_parameters +# * extra_protoc_file_parameters +# The complete list of preserved parameters can be found in the source code. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "baremetalsolution_proto", + srcs = [ + "baremetalsolution.proto", + ], + deps = [ + "//google/api:annotations_proto", + "//google/api:client_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "//google/longrunning:operations_proto", + "@com_google_protobuf//:empty_proto", + "@com_google_protobuf//:field_mask_proto", + "@com_google_protobuf//:timestamp_proto", + ], +) + +proto_library_with_info( + name = "baremetalsolution_proto_with_info", + deps = [ + ":baremetalsolution_proto", + "//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "baremetalsolution_java_proto", + deps = [":baremetalsolution_proto"], +) + +java_grpc_library( + name = "baremetalsolution_java_grpc", + srcs = [":baremetalsolution_proto"], + deps = [":baremetalsolution_java_proto"], +) + +java_gapic_library( + name = "baremetalsolution_java_gapic", + srcs = [":baremetalsolution_proto_with_info"], + gapic_yaml = None, + grpc_service_config = "baremetalsolution_grpc_service_config.json", + service_yaml = "baremetalsolution_v2.yaml", + test_deps = [ + ":baremetalsolution_java_grpc", + ], + deps = [ + ":baremetalsolution_java_proto", + "//google/api:api_java_proto", + ], +) + +java_gapic_test( + name = "baremetalsolution_java_gapic_test_suite", + test_classes = [ + "com.google.cloud.baremetalsolution.v2.BareMetalSolutionClientTest", + ], + runtime_deps = [":baremetalsolution_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-baremetalsolution-v2-java", + deps = [ + ":baremetalsolution_java_gapic", + ":baremetalsolution_java_grpc", + ":baremetalsolution_java_proto", + ":baremetalsolution_proto", + ], +) + +############################################################################## +# Go +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_gapic_assembly_pkg", + "go_gapic_library", + "go_proto_library", + "go_test", +) + +go_proto_library( + name = "baremetalsolution_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/cloud/baremetalsolution/v2", + protos = [":baremetalsolution_proto"], + deps = [ + "//google/api:annotations_go_proto", + "//google/longrunning:longrunning_go_proto", + ], +) + +go_gapic_library( + name = "baremetalsolution_go_gapic", + srcs = [":baremetalsolution_proto_with_info"], + grpc_service_config = "baremetalsolution_grpc_service_config.json", + importpath = "cloud.google.com/go/baremetalsolution/apiv2;baremetalsolution", + metadata = True, + service_yaml = "baremetalsolution_v2.yaml", + deps = [ + ":baremetalsolution_go_proto", + "//google/longrunning:longrunning_go_proto", + "@com_google_cloud_go//longrunning:go_default_library", + "@com_google_cloud_go//longrunning/autogen:go_default_library", + ], +) + +go_test( + name = "baremetalsolution_go_gapic_test", + srcs = [":baremetalsolution_go_gapic_srcjar_test"], + embed = [":baremetalsolution_go_gapic"], + importpath = "cloud.google.com/go/baremetalsolution/apiv2", +) + +# Open Source Packages +go_gapic_assembly_pkg( + name = "gapi-cloud-baremetalsolution-v2-go", + deps = [ + ":baremetalsolution_go_gapic", + ":baremetalsolution_go_gapic_srcjar-metadata.srcjar", + ":baremetalsolution_go_gapic_srcjar-test.srcjar", + ":baremetalsolution_go_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "baremetalsolution_py_gapic", + srcs = [":baremetalsolution_proto"], + grpc_service_config = "baremetalsolution_grpc_service_config.json", +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "baremetalsolution-v2-py", + deps = [ + ":baremetalsolution_py_gapic", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "baremetalsolution_php_proto", + deps = [":baremetalsolution_proto"], +) + +php_grpc_library( + name = "baremetalsolution_php_grpc", + srcs = [":baremetalsolution_proto"], + deps = [":baremetalsolution_php_proto"], +) + +php_gapic_library( + name = "baremetalsolution_php_gapic", + srcs = [":baremetalsolution_proto_with_info"], + grpc_service_config = "baremetalsolution_grpc_service_config.json", + service_yaml = "baremetalsolution_v2.yaml", + deps = [ + ":baremetalsolution_php_grpc", + ":baremetalsolution_php_proto", + ], +) + +# Open Source Packages +php_gapic_assembly_pkg( + name = "google-cloud-baremetalsolution-v2-php", + deps = [ + ":baremetalsolution_php_gapic", + ":baremetalsolution_php_grpc", + ":baremetalsolution_php_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "baremetalsolution_nodejs_gapic", + package_name = "@google-cloud/baremetalsolution", + src = ":baremetalsolution_proto_with_info", + extra_protoc_parameters = ["metadata"], + grpc_service_config = "baremetalsolution_grpc_service_config.json", + package = "google.cloud.baremetalsolution.v2", + service_yaml = "baremetalsolution_v2.yaml", + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "baremetalsolution-v2-nodejs", + deps = [ + ":baremetalsolution_nodejs_gapic", + ":baremetalsolution_proto", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "baremetalsolution_ruby_proto", + deps = [":baremetalsolution_proto"], +) + +ruby_grpc_library( + name = "baremetalsolution_ruby_grpc", + srcs = [":baremetalsolution_proto"], + deps = [":baremetalsolution_ruby_proto"], +) + +ruby_cloud_gapic_library( + name = "baremetalsolution_ruby_gapic", + srcs = [":baremetalsolution_proto_with_info"], + extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-baremetalsolution-v2"], + grpc_service_config = "baremetalsolution_grpc_service_config.json", + deps = [ + ":baremetalsolution_ruby_grpc", + ":baremetalsolution_ruby_proto", + ], +) + +# Open Source Packages +ruby_gapic_assembly_pkg( + name = "google-cloud-baremetalsolution-v2-ruby", + deps = [ + ":baremetalsolution_ruby_gapic", + ":baremetalsolution_ruby_grpc", + ":baremetalsolution_ruby_proto", + ], +) + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", + "csharp_gapic_library", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "baremetalsolution_csharp_proto", + deps = [":baremetalsolution_proto"], +) + +csharp_grpc_library( + name = "baremetalsolution_csharp_grpc", + srcs = [":baremetalsolution_proto"], + deps = [":baremetalsolution_csharp_proto"], +) + +csharp_gapic_library( + name = "baremetalsolution_csharp_gapic", + srcs = [":baremetalsolution_proto_with_info"], + common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", + grpc_service_config = "baremetalsolution_grpc_service_config.json", + deps = [ + ":baremetalsolution_csharp_grpc", + ":baremetalsolution_csharp_proto", + ], +) + +# Open Source Packages +csharp_gapic_assembly_pkg( + name = "google-cloud-baremetalsolution-v2-csharp", + deps = [ + ":baremetalsolution_csharp_gapic", + ":baremetalsolution_csharp_grpc", + ":baremetalsolution_csharp_proto", + ], +) + +############################################################################## +# C++ +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "baremetalsolution_cc_proto", + deps = [":baremetalsolution_proto"], +) + +cc_grpc_library( + name = "baremetalsolution_cc_grpc", + srcs = [":baremetalsolution_proto"], + grpc_only = True, + deps = [":baremetalsolution_cc_proto"], +) diff --git a/google/cloud/baremetalsolution/v2/baremetalsolution.proto b/google/cloud/baremetalsolution/v2/baremetalsolution.proto new file mode 100644 index 000000000..5516eaadb --- /dev/null +++ b/google/cloud/baremetalsolution/v2/baremetalsolution.proto @@ -0,0 +1,1020 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.baremetalsolution.v2; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/empty.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Cloud.BaremetalSolution.V2"; +option go_package = "google.golang.org/genproto/googleapis/cloud/baremetalsolution/v2;baremetalsolution"; +option java_multiple_files = true; +option java_outer_classname = "BaremetalsolutionProto"; +option java_package = "com.google.cloud.baremetalsolution.v2"; +option php_namespace = "Google\\Cloud\\BaremetalSolution\\V2"; +option ruby_package = "Google::Cloud::BaremetalSolution::V2"; + +// Performs management operations on Bare Metal Solution servers. +// +// The `baremetalsolution.googleapis.com` service provides management +// capabilities for Bare Metal Solution servers. To access the API methods, you +// must assign Bare Metal Solution IAM roles containing the desired permissions +// to your staff in your Google Cloud project. You must also enable the Bare +// Metal Solution API. Once enabled, the methods act +// upon specific servers in your Bare Metal Solution environment. +service BareMetalSolution { + option (google.api.default_host) = "baremetalsolution.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // List servers in a given project and location. + rpc ListInstances(ListInstancesRequest) returns (ListInstancesResponse) { + option (google.api.http) = { + get: "/v2/{parent=projects/*/locations/*}/instances" + }; + option (google.api.method_signature) = "parent"; + } + + // Get details about a single server. + rpc GetInstance(GetInstanceRequest) returns (Instance) { + option (google.api.http) = { + get: "/v2/{name=projects/*/locations/*/instances/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Perform an ungraceful, hard reset on a server. Equivalent to shutting the + // power off and then turning it back on. + rpc ResetInstance(ResetInstanceRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v2/{name=projects/*/locations/*/instances/*}:reset" + body: "*" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "ResetInstanceResponse" + metadata_type: "OperationMetadata" + }; + } + + // List storage volumes in a given project and location. + rpc ListVolumes(ListVolumesRequest) returns (ListVolumesResponse) { + option (google.api.http) = { + get: "/v2/{parent=projects/*/locations/*}/volumes" + }; + option (google.api.method_signature) = "parent"; + } + + // Get details of a single storage volume. + rpc GetVolume(GetVolumeRequest) returns (Volume) { + option (google.api.http) = { + get: "/v2/{name=projects/*/locations/*/volumes/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Update details of a single storage volume. + rpc UpdateVolume(UpdateVolumeRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v2/{volume.name=projects/*/locations/*/volumes/*}" + body: "volume" + }; + option (google.api.method_signature) = "volume,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Volume" + metadata_type: "OperationMetadata" + }; + } + + // List network in a given project and location. + rpc ListNetworks(ListNetworksRequest) returns (ListNetworksResponse) { + option (google.api.http) = { + get: "/v2/{parent=projects/*/locations/*}/networks" + }; + option (google.api.method_signature) = "parent"; + } + + // Get details of a single network. + rpc GetNetwork(GetNetworkRequest) returns (Network) { + option (google.api.http) = { + get: "/v2/{name=projects/*/locations/*/networks/*}" + }; + option (google.api.method_signature) = "name"; + } + + // List snapshot schedule policies in a given project and location. + rpc ListSnapshotSchedulePolicies(ListSnapshotSchedulePoliciesRequest) returns (ListSnapshotSchedulePoliciesResponse) { + option (google.api.http) = { + get: "/v2/{parent=projects/*/locations/*}/snapshotSchedulePolicies" + }; + option (google.api.method_signature) = "parent"; + } + + // Get details of a single snapshot schedule policy. + rpc GetSnapshotSchedulePolicy(GetSnapshotSchedulePolicyRequest) returns (SnapshotSchedulePolicy) { + option (google.api.http) = { + get: "/v2/{name=projects/*/locations/*/snapshotSchedulePolicies/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Create a snapshot schedule policy in the specified project. + rpc CreateSnapshotSchedulePolicy(CreateSnapshotSchedulePolicyRequest) returns (SnapshotSchedulePolicy) { + option (google.api.http) = { + post: "/v2/{parent=projects/*/locations/*}/snapshotSchedulePolicies" + body: "snapshot_schedule_policy" + }; + option (google.api.method_signature) = "parent,snapshot_schedule_policy,snapshot_schedule_policy_id"; + } + + // Update a snapshot schedule policy in the specified project. + rpc UpdateSnapshotSchedulePolicy(UpdateSnapshotSchedulePolicyRequest) returns (SnapshotSchedulePolicy) { + option (google.api.http) = { + patch: "/v2/{snapshot_schedule_policy.name=projects/*/locations/*/snapshotSchedulePolicies/*}" + body: "snapshot_schedule_policy" + }; + option (google.api.method_signature) = "snapshot_schedule_policy,update_mask"; + } + + // Delete a named snapshot schedule policy. + rpc DeleteSnapshotSchedulePolicy(DeleteSnapshotSchedulePolicyRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v2/{name=projects/*/locations/*/snapshotSchedulePolicies/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Create a storage volume snapshot in a containing volume. + rpc CreateVolumeSnapshot(CreateVolumeSnapshotRequest) returns (VolumeSnapshot) { + option (google.api.http) = { + post: "/v2/{parent=projects/*/locations/*/volumes/*}/snapshots" + body: "volume_snapshot" + }; + option (google.api.method_signature) = "parent,volume_snapshot"; + } + + // Restore a storage volume snapshot to its containing volume. + rpc RestoreVolumeSnapshot(RestoreVolumeSnapshotRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v2/{volume_snapshot=projects/*/locations/*/volumes/*/snapshots/*}:restoreVolumeSnapshot" + body: "*" + }; + option (google.api.method_signature) = "volume_snapshot"; + option (google.longrunning.operation_info) = { + response_type: "VolumeSnapshot" + metadata_type: "OperationMetadata" + }; + } + + // Deletes a storage volume snapshot for a given volume. + rpc DeleteVolumeSnapshot(DeleteVolumeSnapshotRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v2/{name=projects/*/locations/*/volumes/*/snapshots/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Get details of a single storage volume snapshot. + rpc GetVolumeSnapshot(GetVolumeSnapshotRequest) returns (VolumeSnapshot) { + option (google.api.http) = { + get: "/v2/{name=projects/*/locations/*/volumes/*/snapshots/*}" + }; + option (google.api.method_signature) = "name"; + } + + // List storage volume snapshots for given storage volume. + rpc ListVolumeSnapshots(ListVolumeSnapshotsRequest) returns (ListVolumeSnapshotsResponse) { + option (google.api.http) = { + get: "/v2/{parent=projects/*/locations/*/volumes/*}/snapshots" + }; + option (google.api.method_signature) = "parent"; + } + + // Get details of a single storage logical unit number(LUN). + rpc GetLun(GetLunRequest) returns (Lun) { + option (google.api.http) = { + get: "/v2/{name=projects/*/locations/*/volumes/*/luns/*}" + }; + option (google.api.method_signature) = "name"; + } + + // List storage volume luns for given storage volume. + rpc ListLuns(ListLunsRequest) returns (ListLunsResponse) { + option (google.api.http) = { + get: "/v2/{parent=projects/*/locations/*/volumes/*}/luns" + }; + option (google.api.method_signature) = "parent"; + } +} + +// A storage volume. +message Volume { + option (google.api.resource) = { + type: "baremetalsolution.googleapis.com/Volume" + pattern: "projects/{project}/locations/{location}/volumes/{volume}" + }; + + // Details about snapshot space reservation and usage on the storage volume. + message SnapshotReservationDetail { + // The space on this storage volume reserved for snapshots, shown in GiB. + int64 reserved_space_gib = 1; + + // The percent of snapshot space on this storage volume actually being used + // by the snapshot copies. This value might be higher than 100% if the + // snapshot copies have overflowed into the data portion of the storage + // volume. + int32 reserved_space_used_percent = 2; + + // The amount, in GiB, of available space in this storage volume's reserved + // snapshot space. + int64 reserved_space_remaining_gib = 3; + } + + // The storage type for a volume. + enum StorageType { + // The storage type for this volume is unknown. + STORAGE_TYPE_UNSPECIFIED = 0; + + // The storage type for this volume is SSD. + SSD = 1; + + // This storage type for this volume is HDD. + HDD = 2; + } + + // The possible states for a storage volume. + enum State { + // The storage volume is in an unknown state. + STATE_UNSPECIFIED = 0; + + // The storage volume is being created. + CREATING = 1; + + // The storage volume is ready for use. + READY = 2; + + // The storage volume has been requested to be deleted. + DELETING = 3; + } + + // The kinds of auto delete behavior to use when snapshot reserved space is + // full. + enum SnapshotAutoDeleteBehavior { + // The unspecified behavior. + SNAPSHOT_AUTO_DELETE_BEHAVIOR_UNSPECIFIED = 0; + + // Don't delete any snapshots. This disables new snapshot creation, as + // long as the snapshot reserved space is full. + DISABLED = 1; + + // Delete the oldest snapshots first. + OLDEST_FIRST = 2; + + // Delete the newest snapshots first. + NEWEST_FIRST = 3; + } + + // Output only. The resource name of this `Volume`. + // Resource names are schemeless URIs that follow the conventions in + // https://cloud.google.com/apis/design/resource_names. + // Format: + // `projects/{project}/locations/{location}/volumes/{volume}` + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The storage type for this volume. + StorageType storage_type = 2; + + // The state of this storage volume. + State state = 3; + + // The requested size of this storage volume, in GiB. + int64 requested_size_gib = 4; + + // The current size of this storage volume, in GiB, including space reserved + // for snapshots. This size might be different than the requested size if the + // storage volume has been configured with auto grow or auto shrink. + int64 current_size_gib = 5; + + // The size, in GiB, that this storage volume has expanded as a result of an + // auto grow policy. In the absence of auto-grow, the value is 0. + int64 auto_grown_size_gib = 6; + + // The space remaining in the storage volume for new LUNs, in GiB, excluding + // space reserved for snapshots. + int64 remaining_space_gib = 7; + + // Details about snapshot space reservation and usage on the storage volume. + SnapshotReservationDetail snapshot_reservation_detail = 8; + + // The behavior to use when snapshot reserved space is full. + SnapshotAutoDeleteBehavior snapshot_auto_delete_behavior = 9; + + // The name of the snapshot schedule policy in use for this volume, if any. + string snapshot_schedule_policy = 10 [(google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/SnapshotSchedulePolicy" + }]; +} + +// Message for requesting a list of storage volumes. +message ListVolumesRequest { + // Required. Parent value for ListVolumesRequest. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Requested page size. The server might return fewer items than requested. + // If unspecified, server will pick an appropriate default. + int32 page_size = 2; + + // A token identifying a page of results from the server. + string page_token = 3; +} + +// Response message containing the list of storage volumes. +message ListVolumesResponse { + // The list of storage volumes. + repeated Volume volumes = 1; + + // A token identifying a page of results from the server. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// Message for requesting storage volume information. +message GetVolumeRequest { + // Required. Name of the resource. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/Volume" + } + ]; +} + +// A storage volume logical unit number (LUN). +message Lun { + option (google.api.resource) = { + type: "baremetalsolution.googleapis.com/Lun" + pattern: "projects/{project}/locations/{location}/volumes/{volume}/luns/{lun}" + }; + + // The possible states for the LUN. + enum State { + // The LUN is in an unknown state. + STATE_UNSPECIFIED = 0; + + // The LUN is being created. + CREATING = 1; + + // The LUN is being updated. + UPDATING = 2; + + // The LUN is ready for use. + READY = 3; + + // The LUN has been requested to be deleted. + DELETING = 4; + } + + // Display the operating systems present for the LUN multiprotocol type. + enum MultiprotocolType { + // Server has no OS specified. + MULTIPROTOCOL_TYPE_UNSPECIFIED = 0; + + // Server with Linux OS. + LINUX = 1; + } + + // The storage types for a LUN. + enum StorageType { + // The storage type for this LUN is unknown. + STORAGE_TYPE_UNSPECIFIED = 0; + + // This storage type for this LUN is SSD. + SSD = 1; + + // This storage type for this LUN is HDD. + HDD = 2; + } + + // Output only. The name of the LUN. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The state of this storage volume. + State state = 2; + + // The size of this LUN, in gigabytes. + int64 size_gb = 3; + + // The LUN multiprotocol type ensures the characteristics of the LUN are + // optimized for each operating system. + MultiprotocolType multiprotocol_type = 4; + + // Display the storage volume for this LUN. + string storage_volume = 5 [(google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/Volume" + }]; + + // Display if this LUN can be shared between multiple physical servers. + bool shareable = 6; + + // Display if this LUN is a boot LUN. + bool boot_lun = 7; + + // The storage type for this LUN. + StorageType storage_type = 8; + + // The WWID for this LUN. + string wwid = 9; +} + +// A Network. +message Network { + option (google.api.resource) = { + type: "baremetalsolution.googleapis.com/Network" + pattern: "projects/{project}/locations/{location}/networks/{network}" + }; + + // Network type. + enum Type { + // Unspecified value. + TYPE_UNSPECIFIED = 0; + + // Client network, a network peered to a Google Cloud VPC. + CLIENT = 1; + + // Private network, a network local to the Bare Metal Solution environment. + PRIVATE = 2; + } + + // The possible states for this Network. + enum State { + // The Network is in an unknown state. + STATE_UNSPECIFIED = 0; + + // The Network is provisioning. + PROVISIONING = 1; + + // The Network has been provisioned. + PROVISIONED = 2; + } + + // Output only. The resource name of this `Network`. + // Resource names are schemeless URIs that follow the conventions in + // https://cloud.google.com/apis/design/resource_names. + // Format: + // `projects/{project}/locations/{location}/networks/{network}` + // This field will contain the same value as field "network", which will soon + // be deprecated. Please use this field to reference the name of the network + // resource. + string name = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Name of the network. + string network = 1; + + // The type of this network. + Type type = 2; + + // IP address configured. + string ip_address = 3; + + // List of physical interfaces. + repeated string mac_address = 4; + + // The Network state. + State state = 6; + + // The vlan id of the Network. + string vlan_id = 7; + + // The cidr of the Network. + string cidr = 8; + + // The vrf for the Network. + VRF vrf = 9; +} + +// A network VRF. +message VRF { + // QOS policy parameters. + message QosPolicy { + // The bandwidth permitted by the QOS policy, in gbps. + double bandwidth_gbps = 1; + } + + // VLAN attachment details. + message VlanAttachment { + // The peer vlan ID of the attachment. + int64 peer_vlan_id = 1; + + // The peer IP of the attachment. + string peer_ip = 2; + + // The router IP of the attachment. + string router_ip = 3; + } + + // The possible states for this VRF. + enum State { + // The unspecified state. + STATE_UNSPECIFIED = 0; + + // The vrf is provisioning. + PROVISIONING = 1; + + // The vrf is provisioned. + PROVISIONED = 2; + } + + // The name of the VRF. + string name = 1; + + // The possible state of VRF. + State state = 5; + + // The QOS policy applied to this VRF. + QosPolicy qos_policy = 6; + + // The list of VLAN attachments for the VRF. + repeated VlanAttachment vlan_attachments = 7; +} + +// Message for requesting a list of networks. +message ListNetworksRequest { + // Required. Parent value for ListNetworksRequest. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Requested page size. The server might return fewer items than requested. + // If unspecified, server will pick an appropriate default. + int32 page_size = 2; + + // A token identifying a page of results from the server. + string page_token = 3; +} + +// Response message containing the list of networks. +message ListNetworksResponse { + // The list of networks. + repeated Network networks = 1; + + // A token identifying a page of results from the server. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// Message for requesting network information. +message GetNetworkRequest { + // Required. Name of the resource. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/Network" + } + ]; +} + +// Message for requesting snapshot schedule policy information. +message GetSnapshotSchedulePolicyRequest { + // Required. Name of the resource. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/SnapshotSchedulePolicy" + } + ]; +} + +// A server. +message Instance { + option (google.api.resource) = { + type: "baremetalsolution.googleapis.com/Instance" + pattern: "projects/{project}/locations/{location}/instances/{instance}" + }; + + // The possible states for this server. + enum State { + // The server is in an unknown state. + STATE_UNSPECIFIED = 0; + + // The server is being provisioned. + PROVISIONING = 1; + + // The server is running. + RUNNING = 2; + + // The server has been deleted. + DELETED = 3; + } + + // Output only. The resource name of this `Instance`. + // Resource names are schemeless URIs that follow the conventions in + // https://cloud.google.com/apis/design/resource_names. + // Format: + // `projects/{project}/locations/{location}/instances/{instance}` + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Create a time stamp. + google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Update a time stamp. + google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The server type. + // [Available server + // types](https://cloud.google.com/bare-metal/docs/bms-planning#server_configurations) + string machine_type = 4; + + // The state of the server. + State state = 5; + + // True if you enable hyperthreading for the server, otherwise false. + // The default value is false. + bool hyperthreading_enabled = 6; + + // Labels as key value pairs. + map labels = 7; + + // List of LUNs associated with this server. + repeated Lun luns = 8; + + // List of networks associated with this server. + repeated Network networks = 9; + + // True if the interactive serial console feature is enabled for the instance, + // false otherwise. + // The default value is false. + bool interactive_serial_console_enabled = 10; +} + +// Message for requesting the list of servers. +message ListInstancesRequest { + // Required. Parent value for ListInstancesRequest. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Requested page size. Server may return fewer items than requested. + // If unspecified, the server will pick an appropriate default. + int32 page_size = 2; + + // A token identifying a page of results from the server. + string page_token = 3; +} + +// Response message for the list of servers. +message ListInstancesResponse { + // The list of servers. + repeated Instance instances = 1; + + // A token identifying a page of results from the server. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// Message for requesting server information. +message GetInstanceRequest { + // Required. Name of the resource. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/Instance" + } + ]; +} + +// Message requesting to reset a server. +message ResetInstanceRequest { + // Required. Name of the resource. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/Instance" + } + ]; +} + +// Response message from resetting a server. +message ResetInstanceResponse { + +} + +// Message for requesting storage volume snapshot information. +message GetVolumeSnapshotRequest { + // Required. Name of the resource. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/VolumeSnapshot" + } + ]; +} + +// Message for requesting a list of storage volume snapshots. +message ListVolumeSnapshotsRequest { + // Required. Parent value for ListVolumesRequest. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/Volume" + } + ]; + + // Requested page size. The server might return fewer items than requested. + // If unspecified, server will pick an appropriate default. + int32 page_size = 2; + + // A token identifying a page of results from the server. + string page_token = 3; +} + +// Response message containing the list of storage volume snapshots. +message ListVolumeSnapshotsResponse { + // The list of storage volumes. + repeated VolumeSnapshot volume_snapshots = 1; + + // A token identifying a page of results from the server. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// Message for deleting named Volume snapshot. +message DeleteVolumeSnapshotRequest { + // Required. The name of the snapshot to delete. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/VolumeSnapshot" + } + ]; +} + +// Represents the metadata from a long-running operation. +message OperationMetadata { + // The time the operation was created. + google.protobuf.Timestamp create_time = 1 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The time the operation finished running. + google.protobuf.Timestamp end_time = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Server-defined resource path for the target of the operation. + string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Name of the action executed by the operation. + string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Human-readable status of the operation, if any. + string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Identifies whether the user requested the cancellation + // of the operation. Operations that have been successfully cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][] of 1, + // corresponding to `Code.CANCELLED`. + bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // API version used with the operation. + string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Snapshot registered for a given storage volume. +message VolumeSnapshot { + option (google.api.resource) = { + type: "baremetalsolution.googleapis.com/VolumeSnapshot" + pattern: "projects/{project}/locations/{location}/volumes/{volume}/snapshots/{snapshot}" + }; + + // Output only. The name of the storage volume snapshot. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The description of the storage volume snapshot. + string description = 2; + + // The size of the storage volume snapshot, in bytes. + int64 size_bytes = 3; + + // Optional. The creation time of the storage volume snapshot. + google.protobuf.Timestamp create_time = 4 [(google.api.field_behavior) = OPTIONAL]; + + // The storage volume this snapshot belongs to. + string storage_volume = 5 [(google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/Volume" + }]; +} + +// A snapshot schedule policy. +message SnapshotSchedulePolicy { + option (google.api.resource) = { + type: "baremetalsolution.googleapis.com/SnapshotSchedulePolicy" + pattern: "projects/{project}/locations/{location}/snapshotSchedulePolicies/{snapshot_schedule_policy}" + }; + + // A snapshot schedule. + message Schedule { + // A crontab-like specification that the schedule uses to take + // snapshots. + string crontab_spec = 1; + + // The maximum number of snapshots to retain in this schedule. + int32 retention_count = 2; + + // A list of snapshot names created in this schedule. + string prefix = 3; + } + + // Output only. The name of the snapshot schedule policy. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The description of the snapshot schedule policy. + string description = 2; + + // The snapshot schedules contained in this policy. You can specify a maximum + // of 5 schedules. + repeated Schedule schedules = 3; +} + +// Message for requesting a list of snapshot schedule policies. +message ListSnapshotSchedulePoliciesRequest { + // Required. The parent project containing the Snapshot Schedule Policies. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // The maximum number of items to return. + int32 page_size = 2; + + // The next_page_token value returned from a previous List request, if any. + string page_token = 3; +} + +// Response message containing the list of snapshot schedule policies. +message ListSnapshotSchedulePoliciesResponse { + // The snapshot schedule policies registered in this project. + repeated SnapshotSchedulePolicy snapshot_schedule_policies = 1; + + // Token to retrieve the next page of results, or empty if there are no more + // results in the list. + string next_page_token = 2; +} + +// Message for creating a snapshot schedule policy in a project. +message CreateSnapshotSchedulePolicyRequest { + // Required. The parent project and location containing the SnapshotSchedulePolicy. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The SnapshotSchedulePolicy to create. + SnapshotSchedulePolicy snapshot_schedule_policy = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Snapshot policy ID + string snapshot_schedule_policy_id = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Message for updating a snapshot schedule policy in a project. +message UpdateSnapshotSchedulePolicyRequest { + // Required. The snapshot schedule policy to update. + // + // The `name` field is used to identify the snapshot schedule policy to + // update. Format: + // projects/{project}/locations/global/snapshotSchedulePolicies/{policy} + SnapshotSchedulePolicy snapshot_schedule_policy = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The list of fields to update. + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Message for deleting a snapshot schedule policy in a project. +message DeleteSnapshotSchedulePolicyRequest { + // Required. The name of the snapshot schedule policy to delete. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/SnapshotSchedulePolicy" + } + ]; +} + +// Message for updating a volume. +message UpdateVolumeRequest { + // Required. The volume to update. + // + // The `name` field is used to identify the volume to update. + // Format: projects/{project}/locations/{location}/volumes/{volume} + Volume volume = 1 [(google.api.field_behavior) = REQUIRED]; + + // The list of fields to update. + // The only currently supported fields are: + // `snapshot_auto_delete_behavior` + // `snapshot_schedule_policy_name` + google.protobuf.FieldMask update_mask = 2; +} + +// Message for requesting storage lun information. +message GetLunRequest { + // Required. Name of the resource. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/Lun" + } + ]; +} + +// Message for requesting a list of storage volume luns. +message ListLunsRequest { + // Required. Parent value for ListLunsRequest. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/Volume" + } + ]; + + // Requested page size. The server might return fewer items than requested. + // If unspecified, server will pick an appropriate default. + int32 page_size = 2; + + // A token identifying a page of results from the server. + string page_token = 3; +} + +// Response message containing the list of storage volume luns. +message ListLunsResponse { + // The list of luns. + repeated Lun luns = 1; + + // A token identifying a page of results from the server. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// Message for creating a volume snapshot. +message CreateVolumeSnapshotRequest { + // Required. The volume to snapshot. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/Volume" + } + ]; + + // Required. The volume snapshot to create. Only the description field may be specified. + VolumeSnapshot volume_snapshot = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Message for restoring a volume snapshot. +message RestoreVolumeSnapshotRequest { + // Required. Name of the resource. + string volume_snapshot = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "baremetalsolution.googleapis.com/VolumeSnapshot" + } + ]; +} diff --git a/google/cloud/baremetalsolution/v2/baremetalsolution_grpc_service_config.json b/google/cloud/baremetalsolution/v2/baremetalsolution_grpc_service_config.json new file mode 100644 index 000000000..fc47af2c1 --- /dev/null +++ b/google/cloud/baremetalsolution/v2/baremetalsolution_grpc_service_config.json @@ -0,0 +1,12 @@ +{ + "methodConfig": [ + { + "name": [ + { + "service": "google.cloud.baremetalsolution.v2.BareMetalSolution" + } + ], + "timeout": "60s" + } + ] +} diff --git a/google/cloud/baremetalsolution/v2/baremetalsolution_v2.yaml b/google/cloud/baremetalsolution/v2/baremetalsolution_v2.yaml new file mode 100644 index 000000000..1e3b07f1e --- /dev/null +++ b/google/cloud/baremetalsolution/v2/baremetalsolution_v2.yaml @@ -0,0 +1,68 @@ +type: google.api.Service +config_version: 3 +name: baremetalsolution.googleapis.com +title: Bare Metal Solution API + +apis: +- name: google.cloud.baremetalsolution.v2.BareMetalSolution + +types: +- name: google.cloud.baremetalsolution.v2.OperationMetadata +- name: google.cloud.baremetalsolution.v2.ResetInstanceResponse + +documentation: + summary: |- + Provides ways to manage Bare Metal Solution hardware installed in a + regional extension located near a Google Cloud data center. + rules: + - selector: google.cloud.location.Locations.GetLocation + description: Gets information about a location. + + - selector: google.cloud.location.Locations.ListLocations + description: Lists information about the supported locations for this service. + +backend: + rules: + - selector: 'google.cloud.baremetalsolution.v2.BareMetalSolution.*' + deadline: 60.0 + - selector: google.cloud.location.Locations.GetLocation + deadline: 60.0 + - selector: google.cloud.location.Locations.ListLocations + deadline: 60.0 + - selector: 'google.longrunning.Operations.*' + deadline: 60.0 + +http: + rules: + - selector: google.cloud.location.Locations.GetLocation + get: '/v2/{name=projects/*/locations/*}' + - selector: google.cloud.location.Locations.ListLocations + get: '/v2/{name=projects/*}/locations' + - selector: google.longrunning.Operations.CancelOperation + post: '/v2/{name=projects/*/locations/*/operations/*}:cancel' + body: '*' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/v2/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/v2/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v2/{name=projects/*/locations/*}/operations' + +authentication: + rules: + - selector: 'google.cloud.baremetalsolution.v2.BareMetalSolution.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.GetLocation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.ListLocations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.longrunning.Operations.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/bigquery/connection/BUILD.bazel b/google/cloud/bigquery/connection/BUILD.bazel new file mode 100644 index 000000000..c9d0ec742 --- /dev/null +++ b/google/cloud/bigquery/connection/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-bigquery-connection. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for bigqueryconnection. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "bigqueryconnection_ruby_wrapper", + srcs = ["//google/cloud/bigquery/connection/v1:connection_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-bigquery-connection", + "ruby-cloud-env-prefix=BIGQUERY_CONNECTION", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/bigquery/docs/reference/bigqueryconnection", + "ruby-cloud-api-id=bigqueryconnection.googleapis.com", + "ruby-cloud-api-shortname=bigqueryconnection", + ], + ruby_cloud_description = "The BigQuery Connection API allows users to manage BigQuery connections to external data sources.", + ruby_cloud_title = "BigQuery Connection", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-bigquery-connection-ruby", + deps = [ + ":bigqueryconnection_ruby_wrapper", + ], +) diff --git a/google/cloud/bigquery/connection/v1/BUILD.bazel b/google/cloud/bigquery/connection/v1/BUILD.bazel index 6e56cc9df..4fab2a6f8 100644 --- a/google/cloud/bigquery/connection/v1/BUILD.bazel +++ b/google/cloud/bigquery/connection/v1/BUILD.bazel @@ -172,14 +172,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -339,4 +338,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "connection_cc_proto", + deps = [":connection_proto"], +) + +cc_grpc_library( + name = "connection_cc_grpc", + srcs = [":connection_proto"], + grpc_only = True, + deps = [":connection_cc_proto"], +) diff --git a/google/cloud/bigquery/connection/v1/connection.proto b/google/cloud/bigquery/connection/v1/connection.proto index 3db05ef19..697b0b8f3 100644 --- a/google/cloud/bigquery/connection/v1/connection.proto +++ b/google/cloud/bigquery/connection/v1/connection.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -233,6 +233,9 @@ message Connection { // Amazon Web Services (AWS) properties. AwsProperties aws = 8; + + // Cloud Spanner properties. + CloudSpannerProperties cloud_spanner = 21; } // Output only. The creation timestamp of the connection. @@ -281,6 +284,15 @@ message CloudSqlCredential { string password = 2; } +// Connection properties specific to Cloud Spanner. +message CloudSpannerProperties { + // Cloud Spanner database in the form `project/instance/database' + string database = 1; + + // If parallelism should be used when reading from Cloud Spanner + bool use_parallelism = 2; +} + // Connection properties specific to Amazon Web Services (AWS). message AwsProperties { // Authentication method chosen at connection creation. @@ -288,6 +300,10 @@ message AwsProperties { // Authentication using Google owned AWS IAM user's access key to assume // into customer's AWS IAM Role. AwsCrossAccountRole cross_account_role = 2; + + // Authentication using Google owned service account to assume into + // customer's AWS IAM Role. + AwsAccessRole access_role = 3; } } @@ -306,3 +322,15 @@ message AwsCrossAccountRole { // https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html string external_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; } + +// Authentication method for Amazon Web Services (AWS) that uses Google owned +// Google service account to assume into customer's AWS IAM Role. +message AwsAccessRole { + // The user’s AWS IAM Role that trusts the Google-owned AWS IAM user + // Connection. + string iam_role_id = 1; + + // A unique Google-owned and Google-generated identity for the Connection. + // This identity will be used to access the user's AWS IAM Role. + string identity = 2; +} diff --git a/google/cloud/bigquery/connection/v1beta1/BUILD.bazel b/google/cloud/bigquery/connection/v1beta1/BUILD.bazel index c8cb4428d..0eb9726b6 100644 --- a/google/cloud/bigquery/connection/v1beta1/BUILD.bazel +++ b/google/cloud/bigquery/connection/v1beta1/BUILD.bazel @@ -167,14 +167,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/bigquery/datatransfer/BUILD.bazel b/google/cloud/bigquery/datatransfer/BUILD.bazel index a87c57fec..911042b26 100644 --- a/google/cloud/bigquery/datatransfer/BUILD.bazel +++ b/google/cloud/bigquery/datatransfer/BUILD.bazel @@ -1 +1,41 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-bigquery-data_transfer. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for bigquerydatatransfer. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "bigquerydatatransfer_ruby_wrapper", + srcs = ["//google/cloud/bigquery/datatransfer/v1:datatransfer_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-bigquery-data_transfer", + "ruby-cloud-env-prefix=DATA_TRANSFER", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/bigquery/transfer", + "ruby-cloud-api-id=bigquerydatatransfer.googleapis.com", + "ruby-cloud-api-shortname=bigquerydatatransfer", + "ruby-cloud-migration-version=1.0", + ], + ruby_cloud_description = "Schedules queries and transfers external data from SaaS applications to Google BigQuery on a regular basis.", + ruby_cloud_title = "BigQuery Data Transfer Service", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-bigquery-datatransfer-ruby", + deps = [ + ":bigquerydatatransfer_ruby_wrapper", + ], +) diff --git a/google/cloud/bigquery/datatransfer/v1/BUILD.bazel b/google/cloud/bigquery/datatransfer/v1/BUILD.bazel index 50cc99a88..f1c0a5a22 100644 --- a/google/cloud/bigquery/datatransfer/v1/BUILD.bazel +++ b/google/cloud/bigquery/datatransfer/v1/BUILD.bazel @@ -172,14 +172,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -339,4 +338,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "datatransfer_cc_proto", + deps = [":datatransfer_proto"], +) + +cc_grpc_library( + name = "datatransfer_cc_grpc", + srcs = [":datatransfer_proto"], + grpc_only = True, + deps = [":datatransfer_cc_proto"], +) diff --git a/google/cloud/bigquery/datatransfer/v1/bigquerydatatransfer_v1.yaml b/google/cloud/bigquery/datatransfer/v1/bigquerydatatransfer_v1.yaml index 886f5e7e3..276f3cdf9 100644 --- a/google/cloud/bigquery/datatransfer/v1/bigquerydatatransfer_v1.yaml +++ b/google/cloud/bigquery/datatransfer/v1/bigquerydatatransfer_v1.yaml @@ -10,6 +10,12 @@ documentation: summary: |- Schedule queries or transfer external data from SaaS applications to Google BigQuery on a regular basis. + rules: + - selector: google.cloud.location.Locations.GetLocation + description: Gets information about a location. + + - selector: google.cloud.location.Locations.ListLocations + description: Lists information about the supported locations for this service. authentication: rules: @@ -17,3 +23,11 @@ authentication: oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.GetLocation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.ListLocations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/bigquery/datatransfer/v1/datatransfer.proto b/google/cloud/bigquery/datatransfer/v1/datatransfer.proto index a401c15c3..28dd2d8e3 100644 --- a/google/cloud/bigquery/datatransfer/v1/datatransfer.proto +++ b/google/cloud/bigquery/datatransfer/v1/datatransfer.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -35,16 +35,12 @@ option java_package = "com.google.cloud.bigquery.datatransfer.v1"; option php_namespace = "Google\\Cloud\\BigQuery\\DataTransfer\\V1"; option ruby_package = "Google::Cloud::Bigquery::DataTransfer::V1"; -// The Google BigQuery Data Transfer Service API enables BigQuery users to -// configure the transfer of their data from other Google Products into -// BigQuery. This service contains methods that are end user exposed. It backs -// up the frontend. +// This API allows users to manage their data transfers into BigQuery. service DataTransferService { option (google.api.default_host) = "bigquerydatatransfer.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; - // Retrieves a supported data source and returns its settings, - // which can be used for UI rendering. + // Retrieves a supported data source and returns its settings. rpc GetDataSource(GetDataSourceRequest) returns (DataSource) { option (google.api.http) = { get: "/v1/{name=projects/*/locations/*/dataSources/*}" @@ -55,8 +51,7 @@ service DataTransferService { option (google.api.method_signature) = "name"; } - // Lists supported data sources and returns their settings, - // which can be used for UI rendering. + // Lists supported data sources and returns their settings. rpc ListDataSources(ListDataSourcesRequest) returns (ListDataSourcesResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*}/dataSources" @@ -94,8 +89,8 @@ service DataTransferService { option (google.api.method_signature) = "transfer_config,update_mask"; } - // Deletes a data transfer configuration, - // including any associated transfer runs and logs. + // Deletes a data transfer configuration, including any associated transfer + // runs and logs. rpc DeleteTransferConfig(DeleteTransferConfigRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v1/{name=projects/*/locations/*/transferConfigs/*}" @@ -117,7 +112,8 @@ service DataTransferService { option (google.api.method_signature) = "name"; } - // Returns information about all data transfers in the project. + // Returns information about all transfer configs owned by a project in the + // specified location. rpc ListTransferConfigs(ListTransferConfigsRequest) returns (ListTransferConfigsResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*}/transferConfigs" @@ -183,7 +179,7 @@ service DataTransferService { option (google.api.method_signature) = "name"; } - // Returns information about running and completed jobs. + // Returns information about running and completed transfer runs. rpc ListTransferRuns(ListTransferRunsRequest) returns (ListTransferRunsResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*/transferConfigs/*}/runs" @@ -194,7 +190,7 @@ service DataTransferService { option (google.api.method_signature) = "parent"; } - // Returns user facing log messages for the data transfer run. + // Returns log messages for the transfer run. rpc ListTransferLogs(ListTransferLogsRequest) returns (ListTransferLogsResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*/transferConfigs/*/runs/*}/transferLogs" @@ -207,10 +203,6 @@ service DataTransferService { // Returns true if valid credentials exist for the given data source and // requesting user. - // Some data sources doesn't support service account, so we need to talk to - // them on behalf of the end user. This API just checks whether we have OAuth - // token for the particular user, which is a pre-requisite before user can - // create a transfer config. rpc CheckValidCreds(CheckValidCredsRequest) returns (CheckValidCredsResponse) { option (google.api.http) = { post: "/v1/{name=projects/*/locations/*/dataSources/*}:checkValidCreds" @@ -222,14 +214,26 @@ service DataTransferService { }; option (google.api.method_signature) = "name"; } + + // Enroll data sources in a user project. This allows users to create transfer + // configurations for these data sources. They will also appear in the + // ListDataSources RPC and as such, will appear in the BigQuery UI + // 'https://bigquery.cloud.google.com' (and the documents can be found at + // https://cloud.google.com/bigquery/bigquery-web-ui and + // https://cloud.google.com/bigquery/docs/working-with-transfers). + rpc EnrollDataSources(EnrollDataSourcesRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*}:enrollDataSources" + body: "*" + additional_bindings { + post: "/v1/{name=projects/*}:enrollDataSources" + body: "*" + } + }; + } } -// Represents a data source parameter with validation rules, so that -// parameters can be rendered in the UI. These parameters are given to us by -// supported data sources, and include all needed information for rendering -// and validation. -// Thus, whoever uses this api can decide to generate either generic ui, -// or custom data source specific forms. +// A parameter used to define custom fields in a data source definition. message DataSourceParameter { // Parameter type. enum Type { @@ -307,8 +311,7 @@ message DataSourceParameter { bool deprecated = 20; } -// Represents data source metadata. Metadata is sufficient to -// render UI and request proper OAuth tokens. +// Defines the properties and custom parameters for a data source. message DataSource { option (google.api.resource) = { type: "bigquerydatatransfer.googleapis.com/DataSource" @@ -329,9 +332,7 @@ message DataSource { // exchanged for a refresh token on the backend. GOOGLE_PLUS_AUTHORIZATION_CODE = 2; - // Use First Party Client OAuth. First Party Client OAuth doesn't require a - // refresh token to get an offline access token. Instead, it uses a - // client-signed JWT assertion to retrieve an access token. + // Use First Party OAuth. FIRST_PARTY_OAUTH = 3; } @@ -471,9 +472,9 @@ message ListDataSourcesResponse { // A request to create a data transfer configuration. If new credentials are // needed for this transfer configuration, an authorization code must be // provided. If an authorization code is provided, the transfer configuration -// will be associated with the user id corresponding to the -// authorization code. Otherwise, the transfer configuration will be associated -// with the calling user. +// will be associated with the user id corresponding to the authorization code. +// Otherwise, the transfer configuration will be associated with the calling +// user. message CreateTransferConfigRequest { // Required. The BigQuery project id where the transfer configuration should be created. // Must be in the format projects/{project_id}/locations/{location_id} or @@ -656,9 +657,7 @@ message ListTransferConfigsResponse { string next_page_token = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } -// A request to list data transfer runs. UI can use this method to show/filter -// specific data transfer runs. The data source can use this method to request -// all scheduled transfer runs. +// A request to list data transfer runs. message ListTransferRunsRequest { // Represents which runs should be pulled. enum RunAttempt { @@ -806,14 +805,14 @@ message StartManualTransferRunsRequest { message TimeRange { // Start time of the range of transfer runs. For example, // `"2017-05-25T00:00:00+00:00"`. The start_time must be strictly less than - // the end_time. Creates transfer runs where run_time is in the range betwen - // start_time (inclusive) and end_time (exlusive). + // the end_time. Creates transfer runs where run_time is in the range + // between start_time (inclusive) and end_time (exclusive). google.protobuf.Timestamp start_time = 1; // End time of the range of transfer runs. For example, // `"2017-05-30T00:00:00+00:00"`. The end_time must not be in the future. - // Creates transfer runs where run_time is in the range betwen start_time - // (inclusive) and end_time (exlusive). + // Creates transfer runs where run_time is in the range between start_time + // (inclusive) and end_time (exclusive). google.protobuf.Timestamp end_time = 2; } @@ -841,3 +840,15 @@ message StartManualTransferRunsResponse { // The transfer runs that were created. repeated TransferRun runs = 1; } + +// A request to enroll a set of data sources so they are visible in the +// BigQuery UI's `Transfer` tab. +message EnrollDataSourcesRequest { + // The name of the project resource in the form: + // `projects/{project_id}` + string name = 1; + + // Data sources that are enrolled. It is required to provide at least one + // data source id. + repeated string data_source_ids = 2; +} diff --git a/google/cloud/bigquery/datatransfer/v1/transfer.proto b/google/cloud/bigquery/datatransfer/v1/transfer.proto index 5985f0969..1928e0657 100644 --- a/google/cloud/bigquery/datatransfer/v1/transfer.proto +++ b/google/cloud/bigquery/datatransfer/v1/transfer.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -18,6 +18,7 @@ package google.cloud.bigquery.datatransfer.v1; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/protobuf/duration.proto"; import "google/protobuf/struct.proto"; import "google/protobuf/timestamp.proto"; import "google/rpc/status.proto"; @@ -48,23 +49,23 @@ enum TransferType { // Represents data transfer run state. enum TransferState { - // State placeholder. + // State placeholder (0). TRANSFER_STATE_UNSPECIFIED = 0; // Data transfer is scheduled and is waiting to be picked up by - // data transfer backend. + // data transfer backend (2). PENDING = 2; - // Data transfer is in progress. + // Data transfer is in progress (3). RUNNING = 3; - // Data transfer completed successfully. + // Data transfer completed successfully (4). SUCCEEDED = 4; - // Data transfer failed. + // Data transfer failed (5). FAILED = 5; - // Data transfer is cancelled. + // Data transfer is cancelled (6). CANCELLED = 6; } @@ -97,6 +98,12 @@ message ScheduleOptions { google.protobuf.Timestamp end_time = 2; } +// Information about a user. +message UserInfo { + // E-mail address of the user. + optional string email = 1; +} + // Represents a data transfer configuration. A transfer configuration // contains all metadata needed to perform a data transfer. For example, // `destination_dataset_id` specifies where data should be stored. @@ -111,12 +118,11 @@ message TransferConfig { }; // The resource name of the transfer config. - // Transfer config names have the form of + // Transfer config names have the form // `projects/{project_id}/locations/{region}/transferConfigs/{config_id}`. - // The name is automatically generated based on the config_id specified in - // CreateTransferConfigRequest along with project_id and region. If config_id - // is not provided, usually a uuid, even though it is not guaranteed or - // required, will be generated for config_id. + // Where `config_id` is usually a uuid, even though it is not + // guaranteed or required. The name is ignored when creating a transfer + // config. string name = 1; // The desination of the transfer config. @@ -131,7 +137,10 @@ message TransferConfig { // Data source id. Cannot be changed once data transfer is created. string data_source_id = 5; - // Data transfer specific parameters. + // Parameters specific to each data source. For more information see the + // bq tab in the 'Setting up a data transfer' section for each data source. + // For example the parameters for Cloud Storage transfers are listed here: + // https://cloud.google.com/bigquery-transfer/docs/cloud-storage-transfer#bq google.protobuf.Struct params = 9; // Data transfer schedule. @@ -145,7 +154,9 @@ message TransferConfig { // `first sunday of quarter 00:00`. // See more explanation about the format here: // https://cloud.google.com/appengine/docs/flexible/python/scheduling-jobs-with-cron-yaml#the_schedule_format - // NOTE: the granularity should be at least 8 hours, or less frequent. + // + // NOTE: The minimum interval time between recurring transfers depends on the + // data source; refer to the documentation for your data source. string schedule = 7; // Options customizing the data transfer schedule. @@ -180,11 +191,19 @@ message TransferConfig { // Pub/Sub topic where notifications will be sent after transfer runs // associated with this transfer config finish. + // + // The format for specifying a pubsub topic is: + // `projects/{project}/topics/{topic}` string notification_pubsub_topic = 15; // Email notifications will be sent according to these preferences // to the email address of the user who owns this transfer config. EmailPreferences email_preferences = 18; + + // Output only. Information about the user whose credentials are used to transfer data. + // Populated only for `transferConfigs.get` requests. In case the user + // information is not available, this field will not be populated. + optional UserInfo owner_info = 27 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Represents a data transfer run. @@ -222,7 +241,10 @@ message TransferRun { // Output only. Last time the data transfer run state was updated. google.protobuf.Timestamp update_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. Data transfer specific parameters. + // Output only. Parameters specific to each data source. For more information see the + // bq tab in the 'Setting up a data transfer' section for each data source. + // For example the parameters for Cloud Storage transfers are listed here: + // https://cloud.google.com/bigquery-transfer/docs/cloud-storage-transfer#bq google.protobuf.Struct params = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; // Data transfer destination. @@ -248,7 +270,10 @@ message TransferRun { string schedule = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Pub/Sub topic where a notification will be sent after this - // transfer run finishes + // transfer run finishes. + // + // The format for specifying a pubsub topic is: + // `projects/{project}/topics/{topic}` string notification_pubsub_topic = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Email notifications will be sent according to these diff --git a/google/cloud/bigquery/logging/v1/BUILD.bazel b/google/cloud/bigquery/logging/v1/BUILD.bazel index 44a2b2afa..1b0812f56 100644 --- a/google/cloud/bigquery/logging/v1/BUILD.bazel +++ b/google/cloud/bigquery/logging/v1/BUILD.bazel @@ -90,12 +90,11 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -162,4 +161,20 @@ csharp_grpc_library( ############################################################################## # C++ ############################################################################## -# Put your C++ code here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "logging_cc_proto", + deps = [":logging_proto"], +) + +cc_grpc_library( + name = "logging_cc_grpc", + srcs = [":logging_proto"], + grpc_only = True, + deps = [":logging_cc_proto"], +) diff --git a/google/cloud/bigquery/migration/v2alpha/BUILD.bazel b/google/cloud/bigquery/migration/v2alpha/BUILD.bazel index 96b0cdf49..6eb3b1e3c 100644 --- a/google/cloud/bigquery/migration/v2alpha/BUILD.bazel +++ b/google/cloud/bigquery/migration/v2alpha/BUILD.bazel @@ -21,10 +21,12 @@ load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") proto_library( name = "migration_proto", srcs = [ + "assessment_task.proto", "migration_entities.proto", "migration_error_details.proto", "migration_metrics.proto", "migration_service.proto", + "translation_task.proto", ], deps = [ "//google/api:annotations_proto", @@ -170,6 +172,10 @@ py_gapic_library( name = "migration_py_gapic", srcs = [":migration_proto"], grpc_service_config = "bigquerymigration_grpc_service_config.json", + opt_args = [ + "python-gapic-name=bigquery_migration", + "python-gapic-namespace=google.cloud", + ], ) # Open Source Packages @@ -185,10 +191,10 @@ py_gapic_assembly_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/bigquery/migration/v2alpha/assessment_task.proto b/google/cloud/bigquery/migration/v2alpha/assessment_task.proto new file mode 100644 index 000000000..0c6ea13eb --- /dev/null +++ b/google/cloud/bigquery/migration/v2alpha/assessment_task.proto @@ -0,0 +1,49 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.bigquery.migration.v2alpha; + +import "google/api/field_behavior.proto"; + +option csharp_namespace = "Google.Cloud.BigQuery.Migration.V2Alpha"; +option go_package = "google.golang.org/genproto/googleapis/cloud/bigquery/migration/v2alpha;migration"; +option java_multiple_files = true; +option java_outer_classname = "AssessmentTaskProto"; +option java_package = "com.google.cloud.bigquery.migration.v2alpha"; +option php_namespace = "Google\\Cloud\\BigQuery\\Migration\\V2alpha"; + +// Assessment task config. +message AssessmentTaskDetails { + // Required. The Cloud Storage path for assessment input files. + string input_path = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The BigQuery dataset for output. + string output_dataset = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. An optional Cloud Storage path to write the query logs (which is + // then used as an input path on the translation task) + string querylogs_path = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The data source or data warehouse type (eg: TERADATA/REDSHIFT) + // from which the input data is extracted. + string data_source = 4 [(google.api.field_behavior) = REQUIRED]; +} + +// Details for an assessment task orchestration result. +message AssessmentOrchestrationResultDetails { + // Optional. The version used for the output table schemas. + string output_tables_schema_version = 1 [(google.api.field_behavior) = OPTIONAL]; +} diff --git a/google/cloud/bigquery/migration/v2alpha/bigquerymigration_v2alpha.yaml b/google/cloud/bigquery/migration/v2alpha/bigquerymigration_v2alpha.yaml index ca7978076..58dfb0d1b 100644 --- a/google/cloud/bigquery/migration/v2alpha/bigquerymigration_v2alpha.yaml +++ b/google/cloud/bigquery/migration/v2alpha/bigquerymigration_v2alpha.yaml @@ -5,16 +5,19 @@ title: BigQuery Migration API apis: - name: google.cloud.bigquery.migration.v2alpha.MigrationService +- name: google.cloud.bigquery.migration.v2alpha.SqlTranslationService documentation: summary: |- - The BigQuery migration service, exposing apis for migration jobs operations, and + The migration service, exposing apis for migration jobs operations, and agent management. backend: rules: - selector: 'google.cloud.bigquery.migration.v2alpha.MigrationService.*' deadline: 60.0 + - selector: google.cloud.bigquery.migration.v2alpha.SqlTranslationService.TranslateQuery + deadline: 60.0 authentication: rules: @@ -22,3 +25,7 @@ authentication: oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.bigquery.migration.v2alpha.SqlTranslationService.TranslateQuery + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/bigquery/migration/v2alpha/migration_entities.proto b/google/cloud/bigquery/migration/v2alpha/migration_entities.proto index b430c6880..50d4c7570 100644 --- a/google/cloud/bigquery/migration/v2alpha/migration_entities.proto +++ b/google/cloud/bigquery/migration/v2alpha/migration_entities.proto @@ -18,16 +18,20 @@ package google.cloud.bigquery.migration.v2alpha; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/cloud/bigquery/migration/v2alpha/assessment_task.proto"; import "google/cloud/bigquery/migration/v2alpha/migration_error_details.proto"; import "google/cloud/bigquery/migration/v2alpha/migration_metrics.proto"; +import "google/cloud/bigquery/migration/v2alpha/translation_task.proto"; import "google/protobuf/any.proto"; import "google/protobuf/timestamp.proto"; import "google/rpc/error_details.proto"; +option csharp_namespace = "Google.Cloud.BigQuery.Migration.V2Alpha"; option go_package = "google.golang.org/genproto/googleapis/cloud/bigquery/migration/v2alpha;migration"; option java_multiple_files = true; option java_outer_classname = "MigrationEntitiesProto"; option java_package = "com.google.cloud.bigquery.migration.v2alpha"; +option php_namespace = "Google\\Cloud\\BigQuery\\Migration\\V2alpha"; // A migration workflow which specifies what needs to be done for an EDW // migration. @@ -115,6 +119,15 @@ message MigrationTask { FAILED = 6; } + // The details of the task. + oneof task_details { + // Task configuration for Assessment. + AssessmentTaskDetails assessment_task_details = 12; + + // Task configuration for Batch/Offline SQL Translation. + TranslationTaskDetails translation_task_details = 13; + } + // Output only. Immutable. The unique identifier for the migration task. The ID is server-generated. string id = 1 [ (google.api.field_behavior) = OUTPUT_ONLY, @@ -124,6 +137,7 @@ message MigrationTask { // The type of the task. This must be a supported task type. string type = 2; + // DEPRECATED! Use one of the task_details below. // The details of the task. The type URL must be one of the supported task // details messages and correspond to the Task's type. google.protobuf.Any details = 3; @@ -139,6 +153,9 @@ message MigrationTask { // Time when the task was last updated. google.protobuf.Timestamp last_update_time = 7; + + // Output only. Additional information about the orchestration. + MigrationTaskOrchestrationResult orchestration_result = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; } // A subtask for a migration which carries details about the configuration of @@ -166,6 +183,10 @@ message MigrationSubtask { // The subtask finished unsuccessfully. FAILED = 4; + + // The subtask is paused, i.e., it will not be scheduled. If it was already + // assigned,it might still finish but no new lease renewals will be granted. + PAUSED = 5; } // Output only. Immutable. The resource name for the migration subtask. The ID is @@ -211,3 +232,13 @@ message MigrationSubtask { // The metrics for the subtask. repeated TimeSeries metrics = 11; } + +// Additional information from the orchestrator when it is done with the +// task orchestration. +message MigrationTaskOrchestrationResult { + // Details specific to the task type. + oneof details { + // Details specific to assessment task types. + AssessmentOrchestrationResultDetails assessment_details = 1; + } +} diff --git a/google/cloud/bigquery/migration/v2alpha/migration_error_details.proto b/google/cloud/bigquery/migration/v2alpha/migration_error_details.proto index 86ba131ab..89dac5e62 100644 --- a/google/cloud/bigquery/migration/v2alpha/migration_error_details.proto +++ b/google/cloud/bigquery/migration/v2alpha/migration_error_details.proto @@ -19,10 +19,12 @@ package google.cloud.bigquery.migration.v2alpha; import "google/api/field_behavior.proto"; import "google/rpc/error_details.proto"; +option csharp_namespace = "Google.Cloud.BigQuery.Migration.V2Alpha"; option go_package = "google.golang.org/genproto/googleapis/cloud/bigquery/migration/v2alpha;migration"; option java_multiple_files = true; option java_outer_classname = "MigrationErrorDetailsProto"; option java_package = "com.google.cloud.bigquery.migration.v2alpha"; +option php_namespace = "Google\\Cloud\\BigQuery\\Migration\\V2alpha"; // Provides details for errors and the corresponding resources. message ResourceErrorDetail { diff --git a/google/cloud/bigquery/migration/v2alpha/migration_metrics.proto b/google/cloud/bigquery/migration/v2alpha/migration_metrics.proto index cd7c6c0bb..ce60dd277 100644 --- a/google/cloud/bigquery/migration/v2alpha/migration_metrics.proto +++ b/google/cloud/bigquery/migration/v2alpha/migration_metrics.proto @@ -21,10 +21,12 @@ import "google/api/field_behavior.proto"; import "google/api/metric.proto"; import "google/protobuf/timestamp.proto"; +option csharp_namespace = "Google.Cloud.BigQuery.Migration.V2Alpha"; option go_package = "google.golang.org/genproto/googleapis/cloud/bigquery/migration/v2alpha;migration"; option java_multiple_files = true; option java_outer_classname = "MigrationMetricsProto"; option java_package = "com.google.cloud.bigquery.migration.v2alpha"; +option php_namespace = "Google\\Cloud\\BigQuery\\Migration\\V2alpha"; // The metrics object for a SubTask. message TimeSeries { diff --git a/google/cloud/bigquery/migration/v2alpha/migration_service.proto b/google/cloud/bigquery/migration/v2alpha/migration_service.proto index 00208036e..b5e9014b3 100644 --- a/google/cloud/bigquery/migration/v2alpha/migration_service.proto +++ b/google/cloud/bigquery/migration/v2alpha/migration_service.proto @@ -27,10 +27,12 @@ import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; import "google/rpc/error_details.proto"; +option csharp_namespace = "Google.Cloud.BigQuery.Migration.V2Alpha"; option go_package = "google.golang.org/genproto/googleapis/cloud/bigquery/migration/v2alpha;migration"; option java_multiple_files = true; option java_outer_classname = "MigrationServiceProto"; option java_package = "com.google.cloud.bigquery.migration.v2alpha"; +option php_namespace = "Google\\Cloud\\BigQuery\\Migration\\V2alpha"; // Service to handle EDW migrations. service MigrationService { diff --git a/google/cloud/bigquery/migration/v2alpha/translation_service.proto b/google/cloud/bigquery/migration/v2alpha/translation_service.proto new file mode 100644 index 000000000..e81296608 --- /dev/null +++ b/google/cloud/bigquery/migration/v2alpha/translation_service.proto @@ -0,0 +1,135 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.bigquery.migration.v2alpha; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; + +option csharp_namespace = "Google.Cloud.BigQuery.Migration.V2Alpha"; +option go_package = "google.golang.org/genproto/googleapis/cloud/bigquery/migration/v2alpha;migration"; +option java_multiple_files = true; +option java_outer_classname = "TranslationServiceProto"; +option java_package = "com.google.cloud.bigquery.migration.v2alpha"; +option php_namespace = "Google\\Cloud\\BigQuery\\Migration\\V2alpha"; + +// Provides other SQL dialects to GoogleSQL translation operations. +service SqlTranslationService { + option (google.api.default_host) = "bigquerymigration.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Translates input queries from source dialects to GoogleSQL. + rpc TranslateQuery(TranslateQueryRequest) returns (TranslateQueryResponse) { + option (google.api.http) = { + post: "/v2alpha/{parent=projects/*/locations/*}:translateQuery" + body: "*" + }; + option (google.api.method_signature) = "parent,source_dialect,query"; + } +} + +// The request of translating a SQL query to Standard SQL. +message TranslateQueryRequest { + // Supported SQL translation source dialects. + enum SqlTranslationSourceDialect { + // SqlTranslationSourceDialect not specified. + SQL_TRANSLATION_SOURCE_DIALECT_UNSPECIFIED = 0; + + // Teradata SQL. + TERADATA = 1; + } + + // Required. The name of the project to which this translation request belongs. + // Example: `projects/foo/locations/bar` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The source SQL dialect of `queries`. + SqlTranslationSourceDialect source_dialect = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The query to be translated. + string query = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// The response of translating a SQL query to Standard SQL. +message TranslateQueryResponse { + // Output only. Immutable. The unique identifier for the SQL translation job. + // Example: `projects/123/locations/us/translation/1234` + string translation_job = 4 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.field_behavior) = IMMUTABLE + ]; + + // The translated result. This will be empty if the translation fails. + string translated_query = 1; + + // The list of errors encountered during the translation, if present. + repeated SqlTranslationError errors = 2; + + // The list of warnings encountered during the translation, if present, + // indicates non-semantically correct translation. + repeated SqlTranslationWarning warnings = 3; +} + +// Structured error object capturing the error message and the location in the +// source text where the error occurs. +message SqlTranslationErrorDetail { + // Specifies the row from the source text where the error occurred. + int64 row = 1; + + // Specifie the column from the source texts where the error occurred. + int64 column = 2; + + // A human-readable description of the error. + string message = 3; +} + +// The detailed error object if the SQL translation job fails. +message SqlTranslationError { + // The error type of the SQL translation job. + enum SqlTranslationErrorType { + // SqlTranslationErrorType not specified. + SQL_TRANSLATION_ERROR_TYPE_UNSPECIFIED = 0; + + // Failed to parse the input text as a SQL query. + SQL_PARSE_ERROR = 1; + + // Found unsupported functions in the input SQL query that are not able to + // translate. + UNSUPPORTED_SQL_FUNCTION = 2; + } + + // The type of SQL translation error. + SqlTranslationErrorType error_type = 1; + + // Specifies the details of the error, including the error message and + // location from the source text. + SqlTranslationErrorDetail error_detail = 2; +} + +// The detailed warning object if the SQL translation job is completed but not +// semantically correct. +message SqlTranslationWarning { + // Specifies the details of the warning, including the warning message and + // location from the source text. + SqlTranslationErrorDetail warning_detail = 1; +} diff --git a/google/cloud/bigquery/migration/v2alpha/translation_task.proto b/google/cloud/bigquery/migration/v2alpha/translation_task.proto new file mode 100644 index 000000000..bf4b27ef5 --- /dev/null +++ b/google/cloud/bigquery/migration/v2alpha/translation_task.proto @@ -0,0 +1,207 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.bigquery.migration.v2alpha; + +option csharp_namespace = "Google.Cloud.BigQuery.Migration.V2Alpha"; +option go_package = "google.golang.org/genproto/googleapis/cloud/bigquery/migration/v2alpha;migration"; +option java_multiple_files = true; +option java_outer_classname = "TranslationTaskProto"; +option java_package = "com.google.cloud.bigquery.migration.v2alpha"; +option php_namespace = "Google\\Cloud\\BigQuery\\Migration\\V2alpha"; + +// Mapping between an input and output file to be translated in a subtask. +message TranslationFileMapping { + // The Cloud Storage path for a file to translation in a subtask. + string input_path = 1; + + // The Cloud Storage path to write back the corresponding input file to. + string output_path = 2; +} + +// The translation task config to capture necessary settings for a translation +// task and subtask. +message TranslationTaskDetails { + // The file encoding types. + enum FileEncoding { + // File encoding setting is not specified. + FILE_ENCODING_UNSPECIFIED = 0; + + // File encoding is UTF_8. + UTF_8 = 1; + + // File encoding is ISO_8859_1. + ISO_8859_1 = 2; + + // File encoding is US_ASCII. + US_ASCII = 3; + + // File encoding is UTF_16. + UTF_16 = 4; + + // File encoding is UTF_16LE. + UTF_16LE = 5; + + // File encoding is UTF_16BE. + UTF_16BE = 6; + } + + // The special token data type. + enum TokenType { + // Token type is not specified. + TOKEN_TYPE_UNSPECIFIED = 0; + + // Token type as string. + STRING = 1; + + // Token type as integer. + INT64 = 2; + + // Token type as numeric. + NUMERIC = 3; + + // Token type as boolean. + BOOL = 4; + + // Token type as float. + FLOAT64 = 5; + + // Token type as date. + DATE = 6; + + // Token type as timestamp. + TIMESTAMP = 7; + } + + // The language specific settings for the translation task. + oneof language_options { + // The Teradata SQL specific settings for the translation task. + TeradataOptions teradata_options = 10; + + // The BTEQ specific settings for the translation task. + BteqOptions bteq_options = 11; + } + + // The Cloud Storage path for translation input files. + string input_path = 1; + + // The Cloud Storage path for translation output files. + string output_path = 2; + + // Cloud Storage files to be processed for translation. + repeated TranslationFileMapping file_paths = 12; + + // The Cloud Storage path to DDL files as table schema to assist semantic + // translation. + string schema_path = 3; + + // The file encoding type. + FileEncoding file_encoding = 4; + + // The settings for SQL identifiers. + IdentifierSettings identifier_settings = 5; + + // The map capturing special tokens to be replaced during translation. The key + // is special token in string. The value is the token data type. This is used + // to translate SQL query template which contains special token as place + // holder. The special token makes a query invalid to parse. This map will be + // applied to annotate those special token with types to let parser understand + // how to parse them into proper structure with type information. + map special_token_map = 6; + + // The filter applied to translation details. + Filter filter = 7; + + // Specifies the exact name of the bigquery table ("dataset.table") to be used + // for surfacing raw translation errors. If the table does not exist, we will + // create it. If it already exists and the schema is the same, we will re-use. + // If the table exists and the schema is different, we will throw an error. + string translation_exception_table = 13; +} + +// The filter applied to fields of translation details. +message Filter { + // The list of prefixes used to exclude processing for input files. + repeated string input_file_exclusion_prefixes = 1; +} + +// Settings related to SQL identifiers. +message IdentifierSettings { + // The identifier case type. + enum IdentifierCase { + // The identifier case is not specified. + IDENTIFIER_CASE_UNSPECIFIED = 0; + + // Identifiers' cases will be kept as the original cases. + ORIGINAL = 1; + + // Identifiers will be in upper cases. + UPPER = 2; + + // Identifiers will be in lower cases. + LOWER = 3; + } + + // The SQL identifier rewrite mode. + enum IdentifierRewriteMode { + // SQL Identifier rewrite mode is unspecified. + IDENTIFIER_REWRITE_MODE_UNSPECIFIED = 0; + + // SQL identifiers won't be rewrite. + NONE = 1; + + // All SQL identifiers will be rewrite. + REWRITE_ALL = 2; + } + + // The setting to control output queries' identifier case. + IdentifierCase output_identifier_case = 1; + + // Specifies the rewrite mode for SQL identifiers. + IdentifierRewriteMode identifier_rewrite_mode = 2; +} + +// Teradata SQL specific translation task related settings. +message TeradataOptions { + +} + +// BTEQ translation task related settings. +message BteqOptions { + // Specifies the project and dataset in BigQuery that will be used for + // external table creation during the translation. + DatasetReference project_dataset = 1; + + // The Cloud Storage location to be used as the default path for files that + // are not otherwise specified in the file replacement map. + string default_path_uri = 2; + + // Maps the local paths that are used in BTEQ scripts (the keys) to the paths + // in Cloud Storage that should be used in their stead in the translation (the + // value). + map file_replacement_map = 3; +} + +// Reference to a BigQuery dataset. +message DatasetReference { + // A unique ID for this dataset, without the project name. The ID + // must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). + // The maximum length is 1,024 characters. + string dataset_id = 1; + + // The ID of the project containing this dataset. + string project_id = 2; +} diff --git a/google/cloud/bigquery/reservation/BUILD.bazel b/google/cloud/bigquery/reservation/BUILD.bazel new file mode 100644 index 000000000..f06075737 --- /dev/null +++ b/google/cloud/bigquery/reservation/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-bigquery-reservation. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for bigqueryreservation. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "bigqueryreservation_ruby_wrapper", + srcs = ["//google/cloud/bigquery/reservation/v1:reservation_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-bigquery-reservation", + "ruby-cloud-env-prefix=BIGQUERY_RESERVATION", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/bigquery/docs/reference/reservations", + "ruby-cloud-api-id=bigqueryreservation.googleapis.com", + "ruby-cloud-api-shortname=bigqueryreservation", + ], + ruby_cloud_description = "The BigQuery Reservation API provides the mechanisms by which enterprise users can provision and manage dedicated resources such as slots and BigQuery BI Engine memory allocations.", + ruby_cloud_title = "BigQuery Reservation", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-bigquery-reservation-ruby", + deps = [ + ":bigqueryreservation_ruby_wrapper", + ], +) diff --git a/google/cloud/bigquery/reservation/v1/BUILD.bazel b/google/cloud/bigquery/reservation/v1/BUILD.bazel index 5bc446e1f..a4bd58d48 100644 --- a/google/cloud/bigquery/reservation/v1/BUILD.bazel +++ b/google/cloud/bigquery/reservation/v1/BUILD.bazel @@ -1,4 +1,13 @@ # This file was automatically generated by BuildFileGenerator +# https://github.com/googleapis/rules_gapic/tree/master/bazel + +# Most of the manual changes to this file will be overwritten. +# It's **only** allowed to change the following rule attribute values: +# - names of *_gapic_assembly_* rules +# - certain parameters of *_gapic_library rules, including but not limited to: +# * extra_protoc_parameters +# * extra_protoc_file_parameters +# The complete list of preserved parameters can be found in the source code. # This is an API workspace, having public visibility by default makes perfect sense. package(default_visibility = ["//visibility:public"]) @@ -60,12 +69,15 @@ java_grpc_library( java_gapic_library( name = "reservation_java_gapic", srcs = [":reservation_proto_with_info"], + gapic_yaml = None, grpc_service_config = "bigqueryreservation_grpc_service_config.json", + service_yaml = "bigqueryreservation_v1.yaml", test_deps = [ ":reservation_java_grpc", ], deps = [ ":reservation_java_proto", + "//google/api:api_java_proto", ], ) @@ -115,6 +127,7 @@ go_gapic_library( srcs = [":reservation_proto_with_info"], grpc_service_config = "bigqueryreservation_grpc_service_config.json", importpath = "cloud.google.com/go/bigquery/reservation/apiv1;reservation", + metadata = True, service_yaml = "bigqueryreservation_v1.yaml", deps = [ ":reservation_go_proto", @@ -133,6 +146,7 @@ go_gapic_assembly_pkg( name = "gapi-cloud-bigquery-reservation-v1-go", deps = [ ":reservation_go_gapic", + ":reservation_go_gapic_srcjar-metadata.srcjar", ":reservation_go_gapic_srcjar-test.srcjar", ":reservation_go_proto", ], @@ -152,8 +166,8 @@ py_gapic_library( srcs = [":reservation_proto"], grpc_service_config = "bigqueryreservation_grpc_service_config.json", opt_args = [ - "python-gapic-namespace=google.cloud", "python-gapic-name=bigquery_reservation", + "python-gapic-namespace=google.cloud", ], ) @@ -167,14 +181,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -192,6 +205,7 @@ php_gapic_library( name = "reservation_php_gapic", srcs = [":reservation_proto_with_info"], grpc_service_config = "bigqueryreservation_grpc_service_config.json", + service_yaml = "bigqueryreservation_v1.yaml", deps = [ ":reservation_php_grpc", ":reservation_php_proto", @@ -262,11 +276,11 @@ ruby_cloud_gapic_library( name = "reservation_ruby_gapic", srcs = [":reservation_proto_with_info"], extra_protoc_parameters = [ - "ruby-cloud-gem-name=google-cloud-bigquery-reservation-v1", - "ruby-cloud-env-prefix=BIGQUERY_RESERVATION", - "ruby-cloud-product-url=https://cloud.google.com/bigquery/docs/reference/reservations", "ruby-cloud-api-id=bigqueryreservation.googleapis.com", "ruby-cloud-api-shortname=bigqueryreservation", + "ruby-cloud-env-prefix=BIGQUERY_RESERVATION", + "ruby-cloud-gem-name=google-cloud-bigquery-reservation-v1", + "ruby-cloud-product-url=https://cloud.google.com/bigquery/docs/reference/reservations", ], grpc_service_config = "bigqueryreservation_grpc_service_config.json", ruby_cloud_description = "The BigQuery Reservation API provides the mechanisms by which enterprise users can provision and manage dedicated resources such as slots and BigQuery BI Engine memory allocations.", @@ -333,4 +347,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "reservation_cc_proto", + deps = [":reservation_proto"], +) + +cc_grpc_library( + name = "reservation_cc_grpc", + srcs = [":reservation_proto"], + grpc_only = True, + deps = [":reservation_cc_proto"], +) diff --git a/google/cloud/bigquery/reservation/v1/bigqueryreservation_grpc_service_config.json b/google/cloud/bigquery/reservation/v1/bigqueryreservation_grpc_service_config.json index a32cd2b6e..57f5592ae 100755 --- a/google/cloud/bigquery/reservation/v1/bigqueryreservation_grpc_service_config.json +++ b/google/cloud/bigquery/reservation/v1/bigqueryreservation_grpc_service_config.json @@ -39,7 +39,7 @@ "method": "UpdateBiReservation" } ], - "timeout": "60s" + "timeout": "300s" }, { "name": [ @@ -84,7 +84,7 @@ "method": "GetBiReservation" } ], - "timeout": "60s", + "timeout": "300s", "retryPolicy": { "maxAttempts": 5, "initialBackoff": "0.100s", diff --git a/google/cloud/bigquery/reservation/v1/bigqueryreservation_v1.yaml b/google/cloud/bigquery/reservation/v1/bigqueryreservation_v1.yaml index ab278cf32..ebb2e983f 100644 --- a/google/cloud/bigquery/reservation/v1/bigqueryreservation_v1.yaml +++ b/google/cloud/bigquery/reservation/v1/bigqueryreservation_v1.yaml @@ -13,8 +13,10 @@ backend: rules: - selector: 'google.cloud.bigquery.reservation.v1.ReservationService.*' deadline: 30.0 - - selector: 'google.longrunning.Operations.*' - deadline: 30.0 + - selector: google.cloud.bigquery.reservation.v1.ReservationService.CreateCapacityCommitment + deadline: 300.0 + - selector: google.cloud.bigquery.reservation.v1.ReservationService.DeleteCapacityCommitment + deadline: 300.0 authentication: rules: @@ -23,8 +25,3 @@ authentication: canonical_scopes: |- https://www.googleapis.com/auth/bigquery, https://www.googleapis.com/auth/cloud-platform - - selector: 'google.longrunning.Operations.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/bigquery, - https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/bigquery/reservation/v1/reservation.proto b/google/cloud/bigquery/reservation/v1/reservation.proto index 4b90ffdda..d631978f7 100644 --- a/google/cloud/bigquery/reservation/v1/reservation.proto +++ b/google/cloud/bigquery/reservation/v1/reservation.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -202,6 +202,11 @@ service ReservationService { // `project2`) could all be created and mapped to the same or different // reservations. // + // "None" assignments represent an absence of the assignment. Projects + // assigned to None use on-demand pricing. To create a "None" assignment, use + // "none" as a reservation_id in the parent. Example parent: + // `projects/myproject/locations/US/reservations/none`. + // // Returns `google.rpc.Code.PERMISSION_DENIED` if user does not have // 'bigquery.admin' permissions on the project using the reservation // and the project that owns this reservation. @@ -266,7 +271,7 @@ service ReservationService { option (google.api.method_signature) = "name"; } - // Looks up assignments for a specified resource for a particular region. + // Deprecated: Looks up assignments for a specified resource for a particular region. // If the request is about a project: // // 1. Assignments created on the project will be returned if they exist. @@ -290,12 +295,40 @@ service ReservationService { // **Note** "-" cannot be used for projects // nor locations. rpc SearchAssignments(SearchAssignmentsRequest) returns (SearchAssignmentsResponse) { + option deprecated = true; option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*}:searchAssignments" }; option (google.api.method_signature) = "parent,query"; } + // Looks up assignments for a specified resource for a particular region. + // If the request is about a project: + // + // 1. Assignments created on the project will be returned if they exist. + // 2. Otherwise assignments created on the closest ancestor will be + // returned. + // 3. Assignments for different JobTypes will all be returned. + // + // The same logic applies if the request is about a folder. + // + // If the request is about an organization, then assignments created on the + // organization will be returned (organization doesn't have ancestors). + // + // Comparing to ListAssignments, there are some behavior + // differences: + // + // 1. permission on the assignee will be verified in this API. + // 2. Hierarchy lookup (project->folder->organization) happens in this API. + // 3. Parent here is `projects/*/locations/*`, instead of + // `projects/*/locations/*reservations/*`. + rpc SearchAllAssignments(SearchAllAssignmentsRequest) returns (SearchAllAssignmentsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}:searchAllAssignments" + }; + option (google.api.method_signature) = "parent,query"; + } + // Moves an assignment under a new reservation. // // This differs from removing an existing assignment and recreating a new one @@ -357,10 +390,17 @@ message Reservation { // `google.rpc.Code.RESOURCE_EXHAUSTED`. int64 slot_capacity = 2; - // If false, any query using this reservation will use idle slots from other - // reservations within the same admin project. If true, a query using this - // reservation will execute with the slot capacity specified above at most. + // If false, any query or pipeline job using this reservation will use idle + // slots from other reservations within the same admin project. If true, a + // query or pipeline job using this reservation will execute with the slot + // capacity specified in the slot_capacity field at most. bool ignore_idle_slots = 4; + + // Output only. Creation time of the reservation. + google.protobuf.Timestamp creation_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Last update time of the reservation. + google.protobuf.Timestamp update_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Capacity commitment is a way to purchase compute capacity for BigQuery jobs @@ -439,6 +479,10 @@ message CapacityCommitment { // Output only. State of the commitment. State state = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. The start of the current commitment period. It is applicable only for + // ACTIVE capacity commitments. + google.protobuf.Timestamp commitment_start_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Output only. The end of the current commitment period. It is applicable only for ACTIVE // capacity commitments. google.protobuf.Timestamp commitment_end_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -549,6 +593,13 @@ message CreateCapacityCommitmentRequest { // If true, fail the request if another project in the organization has a // capacity commitment. bool enforce_single_admin_project_per_org = 4; + + // The optional capacity commitment ID. Capacity commitment name will be + // generated automatically if this field is empty. + // This field must only contain lower case alphanumeric characters or dash. + // Max length is 64 characters. + // NOTE: this ID won't be kept if the capacity commitment is split or merged. + string capacity_commitment_id = 5; } // The request for [ReservationService.ListCapacityCommitments][google.cloud.bigquery.reservation.v1.ReservationService.ListCapacityCommitments]. @@ -601,6 +652,11 @@ message DeleteCapacityCommitmentRequest { type: "bigqueryreservation.googleapis.com/CapacityCommitment" } ]; + + // Can be used to force delete commitments even if assignments exist. Deleting + // commitments with assignments may cause queries to fail if they no longer + // have access to slots. + bool force = 3; } // The request for [ReservationService.UpdateCapacityCommitment][google.cloud.bigquery.reservation.v1.ReservationService.UpdateCapacityCommitment]. @@ -671,6 +727,10 @@ message Assignment { // Query jobs from the project will use the reservation. QUERY = 2; + + // BigQuery ML jobs that use services external to BigQuery for model + // training. These jobs will not utilize idle slots from other reservations. + ML_EXTERNAL = 3; } // Assignment will remain in PENDING state if no active capacity commitment is @@ -718,6 +778,12 @@ message CreateAssignmentRequest { // Assignment resource to create. Assignment assignment = 2; + + // The optional assignment ID. Assignment name will be generated automatically + // if this field is empty. + // This field must only contain lower case alphanumeric characters or dash. + // Max length is 64 characters. + string assignment_id = 4; } // The request for [ReservationService.ListAssignments][google.cloud.bigquery.reservation.v1.ReservationService.ListAssignments]. @@ -798,6 +864,37 @@ message SearchAssignmentsRequest { string page_token = 4; } +// The request for +// [ReservationService.SearchAllAssignments][google.cloud.bigquery.reservation.v1.ReservationService.SearchAllAssignments]. +// Note: "bigquery.reservationAssignments.search" permission is required on the +// related assignee. +message SearchAllAssignmentsRequest { + // Required. The resource name with location (project name could be the wildcard '-'), + // e.g.: + // `projects/-/locations/US`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Please specify resource name as assignee in the query. + // + // Examples: + // + // * `assignee=projects/myproject` + // * `assignee=folders/123` + // * `assignee=organizations/456` + string query = 2; + + // The maximum number of items to return per page. + int32 page_size = 3; + + // The next_page_token value returned from a previous List request, if any. + string page_token = 4; +} + // The response for [ReservationService.SearchAssignments][google.cloud.bigquery.reservation.v1.ReservationService.SearchAssignments]. message SearchAssignmentsResponse { // List of assignments visible to the user. @@ -808,6 +905,16 @@ message SearchAssignmentsResponse { string next_page_token = 2; } +// The response for [ReservationService.SearchAllAssignments][google.cloud.bigquery.reservation.v1.ReservationService.SearchAllAssignments]. +message SearchAllAssignmentsResponse { + // List of assignments visible to the user. + repeated Assignment assignments = 1; + + // Token to retrieve the next page of results, or empty if there are no + // more results in the list. + string next_page_token = 2; +} + // The request for // [ReservationService.MoveAssignment][google.cloud.bigquery.reservation.v1.ReservationService.MoveAssignment]. // @@ -839,12 +946,12 @@ message MoveAssignmentRequest { message BiReservation { option (google.api.resource) = { type: "bigqueryreservation.googleapis.com/BiReservation" - pattern: "projects/{project}/locations/{location}/bireservation" + pattern: "projects/{project}/locations/{location}/biReservation" }; // The resource name of the singleton BI reservation. // Reservation names have the form - // `projects/{project_id}/locations/{location_id}/bireservation`. + // `projects/{project_id}/locations/{location_id}/biReservation`. string name = 1; // Output only. The last update timestamp of a reservation. @@ -857,7 +964,7 @@ message BiReservation { // A request to get a singleton BI reservation. message GetBiReservationRequest { // Required. Name of the requested reservation, for example: - // `projects/{project_id}/locations/{location_id}/bireservation` + // `projects/{project_id}/locations/{location_id}/biReservation` string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { diff --git a/google/cloud/bigquery/reservation/v1beta1/BUILD.bazel b/google/cloud/bigquery/reservation/v1beta1/BUILD.bazel index f39f568a0..ee12f2d6e 100644 --- a/google/cloud/bigquery/reservation/v1beta1/BUILD.bazel +++ b/google/cloud/bigquery/reservation/v1beta1/BUILD.bazel @@ -172,14 +172,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/bigquery/storage/BUILD.bazel b/google/cloud/bigquery/storage/BUILD.bazel index a87c57fec..3fa480868 100644 --- a/google/cloud/bigquery/storage/BUILD.bazel +++ b/google/cloud/bigquery/storage/BUILD.bazel @@ -1 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-bigquery-storage. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for bigquerystorage. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "bigquerystorage_ruby_wrapper", + srcs = ["//google/cloud/bigquery/storage/v1:storage_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-bigquery-storage", + "ruby-cloud-env-prefix=BIGQUERY_STORAGE", + "ruby-cloud-wrapper-of=v1:0.8", + "ruby-cloud-product-url=https://cloud.google.com/bigquery/docs/reference/storage", + "ruby-cloud-api-id=bigquerystorage.googleapis.com", + "ruby-cloud-api-shortname=bigquerystorage", + ], + ruby_cloud_description = "The BigQuery Storage API provides fast access to BigQuery managed storage.", + ruby_cloud_title = "BigQuery Storage", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-bigquery-storage-ruby", + deps = [ + ":bigquerystorage_ruby_wrapper", + ], +) diff --git a/google/cloud/bigquery/storage/v1/BUILD.bazel b/google/cloud/bigquery/storage/v1/BUILD.bazel index aa2af86ae..2750eed09 100644 --- a/google/cloud/bigquery/storage/v1/BUILD.bazel +++ b/google/cloud/bigquery/storage/v1/BUILD.bazel @@ -12,15 +12,21 @@ proto_library( srcs = [ "arrow.proto", "avro.proto", + "protobuf.proto", "storage.proto", "stream.proto", + "table.proto", ], deps = [ "//google/api:annotations_proto", "//google/api:client_proto", "//google/api:field_behavior_proto", "//google/api:resource_proto", + "//google/rpc:status_proto", + "@com_google_protobuf//:descriptor_proto", + "@com_google_protobuf//:empty_proto", "@com_google_protobuf//:timestamp_proto", + "@com_google_protobuf//:wrappers_proto", ], ) @@ -105,6 +111,7 @@ go_proto_library( protos = [":storage_proto"], deps = [ "//google/api:annotations_go_proto", + "//google/rpc:status_go_proto", ], ) @@ -165,14 +172,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -237,6 +243,7 @@ nodejs_gapic_assembly_pkg( ############################################################################## # Ruby ############################################################################## + load( "@com_google_googleapis_imports//:imports.bzl", "ruby_cloud_gapic_library", diff --git a/google/cloud/bigquery/storage/v1/bigquerystorage_grpc_service_config.json b/google/cloud/bigquery/storage/v1/bigquerystorage_grpc_service_config.json index 2efc373b1..5253af032 100644 --- a/google/cloud/bigquery/storage/v1/bigquerystorage_grpc_service_config.json +++ b/google/cloud/bigquery/storage/v1/bigquerystorage_grpc_service_config.json @@ -5,6 +5,10 @@ { "service": "google.cloud.bigquery.storage.v1.BigQueryRead", "method": "CreateReadSession" + }, + { + "service": "google.cloud.bigquery.storage.v1.BigQueryRead", + "method": "SplitReadStream" } ], "timeout": "600s", @@ -34,12 +38,27 @@ "UNAVAILABLE" ] } - }, - { + }, { "name": [ { - "service": "google.cloud.bigquery.storage.v1.BigQueryRead", - "method": "SplitReadStream" + "service": "google.cloud.bigquery.storage.v1.BigQueryWrite", + "method": "CreateWriteStream" + }, + { + "service": "google.cloud.bigquery.storage.v1.BigQueryWrite", + "method": "BatchCommitWriteStreams" + }, + { + "service": "google.cloud.bigquery.storage.v1.BigQueryWrite", + "method": "FinalizeWriteStream" + }, + { + "service": "google.cloud.bigquery.storage.v1.BigQueryWrite", + "method": "GetWriteStream" + }, + { + "service": "google.cloud.bigquery.storage.v1.BigQueryWrite", + "method": "FlushRows" } ], "timeout": "600s", @@ -52,6 +71,22 @@ "UNAVAILABLE" ] } + }, { + "name": [ + { + "service": "google.cloud.bigquery.storage.v1.BigQueryWrite", + "method": "AppendRows" + } + ], + "timeout": "86400s", + "retryPolicy": { + "initialBackoff": "0.100s", + "maxBackoff": "60s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": [ + "UNAVAILABLE" + ] + } } ] } diff --git a/google/cloud/bigquery/storage/v1/bigquerystorage_v1.yaml b/google/cloud/bigquery/storage/v1/bigquerystorage_v1.yaml index f671c4a51..1c35a13dc 100644 --- a/google/cloud/bigquery/storage/v1/bigquerystorage_v1.yaml +++ b/google/cloud/bigquery/storage/v1/bigquerystorage_v1.yaml @@ -5,6 +5,7 @@ title: BigQuery Storage API apis: - name: google.cloud.bigquery.storage.v1.BigQueryRead +- name: google.cloud.bigquery.storage.v1.BigQueryWrite backend: rules: @@ -14,6 +15,18 @@ backend: deadline: 21600.0 - selector: google.cloud.bigquery.storage.v1.BigQueryRead.SplitReadStream deadline: 120.0 + - selector: google.cloud.bigquery.storage.v1.BigQueryWrite.CreateWriteStram + deadline: 120.0 + - selector: google.cloud.bigquery.storage.v1.BigQueryWrite.FinalizeWriteStream + deadline: 120.0 + - selector: google.cloud.bigquery.storage.v1.BigQueryWrite.BatchCommitWriteStreams + deadline: 120.0 + - selector: google.cloud.bigquery.storage.v1.BigQueryWrite.GetWriteStream + deadline: 120.0 + - selector: google.cloud.bigquery.storage.v1.BigQueryWrite.FlushRows + deadline: 120.0 + - selector: google.cloud.bigquery.storage.v1.BigQueryWrite.AppendRows + deadline: 86400.0 authentication: rules: @@ -21,5 +34,10 @@ authentication: oauth: canonical_scopes: |- https://www.googleapis.com/auth/bigquery, - https://www.googleapis.com/auth/bigquery.readonly, + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.cloud.bigquery.storage.v1.BigQueryWrite.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/bigquery, + https://www.googleapis.com/auth/bigquery.insertdata, https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/bigquery/storage/v1/protobuf.proto b/google/cloud/bigquery/storage/v1/protobuf.proto new file mode 100644 index 000000000..f987467dd --- /dev/null +++ b/google/cloud/bigquery/storage/v1/protobuf.proto @@ -0,0 +1,48 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.bigquery.storage.v1; + +import "google/protobuf/descriptor.proto"; + +option csharp_namespace = "Google.Cloud.BigQuery.Storage.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/bigquery/storage/v1;storage"; +option java_multiple_files = true; +option java_outer_classname = "ProtoBufProto"; +option java_package = "com.google.cloud.bigquery.storage.v1"; +option php_namespace = "Google\\Cloud\\BigQuery\\Storage\\V1"; + +// ProtoSchema describes the schema of the serialized protocol buffer data rows. +message ProtoSchema { + // Descriptor for input message. The provided descriptor must be self + // contained, such that data rows sent can be fully decoded using only the + // single descriptor. For data rows that are compositions of multiple + // independent messages, this means the descriptor may need to be transformed + // to only use nested types: + // https://developers.google.com/protocol-buffers/docs/proto#nested + // + // For additional information for how proto types and values map onto BigQuery + // see: https://cloud.google.com/bigquery/docs/write-api#data_type_conversions + google.protobuf.DescriptorProto proto_descriptor = 1; +} + +message ProtoRows { + // A sequence of rows serialized as a Protocol Buffer. + // + // See https://developers.google.com/protocol-buffers/docs/overview for more + // information on deserializing this field. + repeated bytes serialized_rows = 1; +} diff --git a/google/cloud/bigquery/storage/v1/storage.proto b/google/cloud/bigquery/storage/v1/storage.proto index 8ac563750..ab5a46cf1 100644 --- a/google/cloud/bigquery/storage/v1/storage.proto +++ b/google/cloud/bigquery/storage/v1/storage.proto @@ -22,7 +22,12 @@ import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/cloud/bigquery/storage/v1/arrow.proto"; import "google/cloud/bigquery/storage/v1/avro.proto"; +import "google/cloud/bigquery/storage/v1/protobuf.proto"; import "google/cloud/bigquery/storage/v1/stream.proto"; +import "google/cloud/bigquery/storage/v1/table.proto"; +import "google/protobuf/timestamp.proto"; +import "google/protobuf/wrappers.proto"; +import "google/rpc/status.proto"; option csharp_namespace = "Google.Cloud.BigQuery.Storage.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/bigquery/storage/v1;storage"; @@ -62,7 +67,7 @@ service BigQueryRead { // limits are enforced based on the number of pre-filtered rows, so some // filters can lead to lopsided assignments. // - // Read sessions automatically expire 24 hours after they are created and do + // Read sessions automatically expire 6 hours after they are created and do // not require manual clean-up by the caller. rpc CreateReadSession(CreateReadSessionRequest) returns (ReadSession) { option (google.api.http) = { @@ -105,6 +110,121 @@ service BigQueryRead { } } +// BigQuery Write API. +// +// The Write API can be used to write data to BigQuery. +// +// For supplementary information about the Write API, see: +// https://cloud.google.com/bigquery/docs/write-api +service BigQueryWrite { + option (google.api.default_host) = "bigquerystorage.googleapis.com"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/bigquery," + "https://www.googleapis.com/auth/bigquery.insertdata," + "https://www.googleapis.com/auth/cloud-platform"; + + // Creates a write stream to the given table. + // Additionally, every table has a special stream named '_default' + // to which data can be written. This stream doesn't need to be created using + // CreateWriteStream. It is a stream that can be used simultaneously by any + // number of clients. Data written to this stream is considered committed as + // soon as an acknowledgement is received. + rpc CreateWriteStream(CreateWriteStreamRequest) returns (WriteStream) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/datasets/*/tables/*}" + body: "write_stream" + }; + option (google.api.method_signature) = "parent,write_stream"; + } + + // Appends data to the given stream. + // + // If `offset` is specified, the `offset` is checked against the end of + // stream. The server returns `OUT_OF_RANGE` in `AppendRowsResponse` if an + // attempt is made to append to an offset beyond the current end of the stream + // or `ALREADY_EXISTS` if user provides an `offset` that has already been + // written to. User can retry with adjusted offset within the same RPC + // connection. If `offset` is not specified, append happens at the end of the + // stream. + // + // The response contains an optional offset at which the append + // happened. No offset information will be returned for appends to a + // default stream. + // + // Responses are received in the same order in which requests are sent. + // There will be one response for each successful inserted request. Responses + // may optionally embed error information if the originating AppendRequest was + // not successfully processed. + // + // The specifics of when successfully appended data is made visible to the + // table are governed by the type of stream: + // + // * For COMMITTED streams (which includes the default stream), data is + // visible immediately upon successful append. + // + // * For BUFFERED streams, data is made visible via a subsequent `FlushRows` + // rpc which advances a cursor to a newer offset in the stream. + // + // * For PENDING streams, data is not made visible until the stream itself is + // finalized (via the `FinalizeWriteStream` rpc), and the stream is explicitly + // committed via the `BatchCommitWriteStreams` rpc. + rpc AppendRows(stream AppendRowsRequest) returns (stream AppendRowsResponse) { + option (google.api.http) = { + post: "/v1/{write_stream=projects/*/datasets/*/tables/*/streams/*}" + body: "*" + }; + option (google.api.method_signature) = "write_stream"; + } + + // Gets information about a write stream. + rpc GetWriteStream(GetWriteStreamRequest) returns (WriteStream) { + option (google.api.http) = { + post: "/v1/{name=projects/*/datasets/*/tables/*/streams/*}" + body: "*" + }; + option (google.api.method_signature) = "name"; + } + + // Finalize a write stream so that no new data can be appended to the + // stream. Finalize is not supported on the '_default' stream. + rpc FinalizeWriteStream(FinalizeWriteStreamRequest) returns (FinalizeWriteStreamResponse) { + option (google.api.http) = { + post: "/v1/{name=projects/*/datasets/*/tables/*/streams/*}" + body: "*" + }; + option (google.api.method_signature) = "name"; + } + + // Atomically commits a group of `PENDING` streams that belong to the same + // `parent` table. + // + // Streams must be finalized before commit and cannot be committed multiple + // times. Once a stream is committed, data in the stream becomes available + // for read operations. + rpc BatchCommitWriteStreams(BatchCommitWriteStreamsRequest) returns (BatchCommitWriteStreamsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/datasets/*/tables/*}" + }; + option (google.api.method_signature) = "parent"; + } + + // Flushes rows to a BUFFERED stream. + // + // If users are appending rows to BUFFERED stream, flush operation is + // required in order for the rows to become available for reading. A + // Flush operation flushes up to any previously flushed offset in a BUFFERED + // stream, to the offset specified in the request. + // + // Flush is not supported on the _default stream, since it is not BUFFERED. + rpc FlushRows(FlushRowsRequest) returns (FlushRowsResponse) { + option (google.api.http) = { + post: "/v1/{write_stream=projects/*/datasets/*/tables/*/streams/*}" + body: "*" + }; + option (google.api.method_signature) = "write_stream"; + } +} + // Request message for `CreateReadSession`. message CreateReadSessionRequest { // Required. The request project that owns the session, in the form of @@ -153,7 +273,7 @@ message ThrottleState { int32 throttle_percent = 1; } -// Estimated stream statistics for a given Stream. +// Estimated stream statistics for a given read Stream. message StreamStats { message Progress { // The fraction of rows assigned to the stream that have been processed by @@ -246,3 +366,242 @@ message SplitReadStreamResponse { // value indicates that the original stream can no longer be split. ReadStream remainder_stream = 2; } + +// Request message for `CreateWriteStream`. +message CreateWriteStreamRequest { + // Required. Reference to the table to which the stream belongs, in the format + // of `projects/{project}/datasets/{dataset}/tables/{table}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "bigquery.googleapis.com/Table" + } + ]; + + // Required. Stream to be created. + WriteStream write_stream = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for `AppendRows`. +// +// Due to the nature of AppendRows being a bidirectional streaming RPC, certain +// parts of the AppendRowsRequest need only be specified for the first request +// sent each time the gRPC network connection is opened/reopened. +message AppendRowsRequest { + // ProtoData contains the data rows and schema when constructing append + // requests. + message ProtoData { + // Proto schema used to serialize the data. This value only needs to be + // provided as part of the first request on a gRPC network connection, + // and will be ignored for subsequent requests on the connection. + ProtoSchema writer_schema = 1; + + // Serialized row data in protobuf message format. + // Currently, the backend expects the serialized rows to adhere to + // proto2 semantics when appending rows, particularly with respect to + // how default values are encoded. + ProtoRows rows = 2; + } + + // Required. The write_stream identifies the target of the append operation, and only + // needs to be specified as part of the first request on the gRPC connection. + // If provided for subsequent requests, it must match the value of the first + // request. + // + // For explicitly created write streams, the format is: + // `projects/{project}/datasets/{dataset}/tables/{table}/streams/{id}` + // + // For the special default stream, the format is: + // `projects/{project}/datasets/{dataset}/tables/{table}/_default`. + string write_stream = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "bigquerystorage.googleapis.com/WriteStream" + } + ]; + + // If present, the write is only performed if the next append offset is same + // as the provided value. If not present, the write is performed at the + // current end of stream. Specifying a value for this field is not allowed + // when calling AppendRows for the '_default' stream. + google.protobuf.Int64Value offset = 2; + + // Input rows. The `writer_schema` field must be specified at the initial + // request and currently, it will be ignored if specified in following + // requests. Following requests must have data in the same format as the + // initial request. + oneof rows { + // Rows in proto format. + ProtoData proto_rows = 4; + } + + // Id set by client to annotate its identity. Only initial request setting is + // respected. + string trace_id = 6; +} + +// Response message for `AppendRows`. +message AppendRowsResponse { + // AppendResult is returned for successful append requests. + message AppendResult { + // The row offset at which the last append occurred. The offset will not be + // set if appending using default streams. + google.protobuf.Int64Value offset = 1; + } + + oneof response { + // Result if the append is successful. + AppendResult append_result = 1; + + // Error returned when problems were encountered. If present, + // it indicates rows were not accepted into the system. + // Users can retry or continue with other append requests within the + // same connection. + // + // Additional information about error signalling: + // + // ALREADY_EXISTS: Happens when an append specified an offset, and the + // backend already has received data at this offset. Typically encountered + // in retry scenarios, and can be ignored. + // + // OUT_OF_RANGE: Returned when the specified offset in the stream is beyond + // the current end of the stream. + // + // INVALID_ARGUMENT: Indicates a malformed request or data. + // + // ABORTED: Request processing is aborted because of prior failures. The + // request can be retried if previous failure is addressed. + // + // INTERNAL: Indicates server side error(s) that can be retried. + google.rpc.Status error = 2; + } + + // If backend detects a schema update, pass it to user so that user can + // use it to input new type of message. It will be empty when no schema + // updates have occurred. + TableSchema updated_schema = 3; +} + +// Request message for `GetWriteStreamRequest`. +message GetWriteStreamRequest { + // Required. Name of the stream to get, in the form of + // `projects/{project}/datasets/{dataset}/tables/{table}/streams/{stream}`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "bigquerystorage.googleapis.com/WriteStream" + } + ]; +} + +// Request message for `BatchCommitWriteStreams`. +message BatchCommitWriteStreamsRequest { + // Required. Parent table that all the streams should belong to, in the form of + // `projects/{project}/datasets/{dataset}/tables/{table}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED + ]; + + // Required. The group of streams that will be committed atomically. + repeated string write_streams = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for `BatchCommitWriteStreams`. +message BatchCommitWriteStreamsResponse { + // The time at which streams were committed in microseconds granularity. + // This field will only exist when there are no stream errors. + // **Note** if this field is not set, it means the commit was not successful. + google.protobuf.Timestamp commit_time = 1; + + // Stream level error if commit failed. Only streams with error will be in + // the list. + // If empty, there is no error and all streams are committed successfully. + // If non empty, certain streams have errors and ZERO stream is committed due + // to atomicity guarantee. + repeated StorageError stream_errors = 2; +} + +// Request message for invoking `FinalizeWriteStream`. +message FinalizeWriteStreamRequest { + // Required. Name of the stream to finalize, in the form of + // `projects/{project}/datasets/{dataset}/tables/{table}/streams/{stream}`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "bigquerystorage.googleapis.com/WriteStream" + } + ]; +} + +// Response message for `FinalizeWriteStream`. +message FinalizeWriteStreamResponse { + // Number of rows in the finalized stream. + int64 row_count = 1; +} + +// Request message for `FlushRows`. +message FlushRowsRequest { + // Required. The stream that is the target of the flush operation. + string write_stream = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "bigquerystorage.googleapis.com/WriteStream" + } + ]; + + // Ending offset of the flush operation. Rows before this offset(including + // this offset) will be flushed. + google.protobuf.Int64Value offset = 2; +} + +// Respond message for `FlushRows`. +message FlushRowsResponse { + // The rows before this offset (including this offset) are flushed. + int64 offset = 1; +} + +// Structured custom BigQuery Storage error message. The error can be attached +// as error details in the returned rpc Status. In particular, the use of error +// codes allows more structured error handling, and reduces the need to evaluate +// unstructured error text strings. +message StorageError { + // Error code for `StorageError`. + enum StorageErrorCode { + // Default error. + STORAGE_ERROR_CODE_UNSPECIFIED = 0; + + // Table is not found in the system. + TABLE_NOT_FOUND = 1; + + // Stream is already committed. + STREAM_ALREADY_COMMITTED = 2; + + // Stream is not found. + STREAM_NOT_FOUND = 3; + + // Invalid Stream type. + // For example, you try to commit a stream that is not pending. + INVALID_STREAM_TYPE = 4; + + // Invalid Stream state. + // For example, you try to commit a stream that is not finalized or is + // garbaged. + INVALID_STREAM_STATE = 5; + + // Stream is finalized. + STREAM_FINALIZED = 6; + + // There is a schema mismatch and it is caused by user schema has extra + // field than bigquery schema. + SCHEMA_MISMATCH_EXTRA_FIELDS = 7; + } + + // BigQuery Storage specific error code. + StorageErrorCode code = 1; + + // Name of the failed entity. + string entity = 2; + + // Message that describes the error. + string error_message = 3; +} diff --git a/google/cloud/bigquery/storage/v1/stream.proto b/google/cloud/bigquery/storage/v1/stream.proto index 291cf4115..0b0bc1ad0 100644 --- a/google/cloud/bigquery/storage/v1/stream.proto +++ b/google/cloud/bigquery/storage/v1/stream.proto @@ -20,6 +20,7 @@ import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/cloud/bigquery/storage/v1/arrow.proto"; import "google/cloud/bigquery/storage/v1/avro.proto"; +import "google/cloud/bigquery/storage/v1/table.proto"; import "google/protobuf/timestamp.proto"; option csharp_namespace = "Google.Cloud.BigQuery.Storage.V1"; @@ -126,6 +127,11 @@ message ReadSession { // in that case, the user will need to use a List method to get the streams // instead, which is not yet available. repeated ReadStream streams = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. An estimate on the number of bytes this session will scan when + // all streams are completely consumed. This estimate is based on + // metadata from the table which might be incomplete or stale. + int64 estimated_total_bytes_scanned = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; } // Information about a single stream that gets data out of the storage system. @@ -141,3 +147,63 @@ message ReadStream { // `projects/{project_id}/locations/{location}/sessions/{session_id}/streams/{stream_id}`. string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; } + +// Information about a single stream that gets data inside the storage system. +message WriteStream { + option (google.api.resource) = { + type: "bigquerystorage.googleapis.com/WriteStream" + pattern: "projects/{project}/datasets/{dataset}/tables/{table}/streams/{stream}" + }; + + // Type enum of the stream. + enum Type { + // Unknown type. + TYPE_UNSPECIFIED = 0; + + // Data will commit automatically and appear as soon as the write is + // acknowledged. + COMMITTED = 1; + + // Data is invisible until the stream is committed. + PENDING = 2; + + // Data is only visible up to the offset to which it was flushed. + BUFFERED = 3; + } + + // Mode enum of the stream. + enum WriteMode { + // Unknown type. + WRITE_MODE_UNSPECIFIED = 0; + + // Insert new records into the table. + // It is the default value if customers do not specify it. + INSERT = 1; + } + + // Output only. Name of the stream, in the form + // `projects/{project}/datasets/{dataset}/tables/{table}/streams/{stream}`. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Type of the stream. + Type type = 2 [(google.api.field_behavior) = IMMUTABLE]; + + // Output only. Create time of the stream. For the _default stream, this is the + // creation_time of the table. + google.protobuf.Timestamp create_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Commit time of the stream. + // If a stream is of `COMMITTED` type, then it will have a commit_time same as + // `create_time`. If the stream is of `PENDING` type, empty commit_time + // means it is not committed. + google.protobuf.Timestamp commit_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The schema of the destination table. It is only returned in + // `CreateWriteStream` response. Caller should generate data that's + // compatible with this schema to send in initial `AppendRowsRequest`. + // The table schema could go out of date during the life time of the stream. + TableSchema table_schema = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Immutable. Mode of the stream. + WriteMode write_mode = 7 [(google.api.field_behavior) = IMMUTABLE]; +} diff --git a/google/cloud/bigquery/storage/v1/table.proto b/google/cloud/bigquery/storage/v1/table.proto new file mode 100644 index 000000000..a8c6f844d --- /dev/null +++ b/google/cloud/bigquery/storage/v1/table.proto @@ -0,0 +1,164 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.bigquery.storage.v1; + +import "google/api/field_behavior.proto"; + +option csharp_namespace = "Google.Cloud.BigQuery.Storage.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/bigquery/storage/v1;storage"; +option java_multiple_files = true; +option java_outer_classname = "TableProto"; +option java_package = "com.google.cloud.bigquery.storage.v1"; +option php_namespace = "Google\\Cloud\\BigQuery\\Storage\\V1"; + +// Schema of a table. +message TableSchema { + // Describes the fields in a table. + repeated TableFieldSchema fields = 1; +} + +// TableFieldSchema defines a single field/column within a table schema. +message TableFieldSchema { + enum Type { + // Illegal value + TYPE_UNSPECIFIED = 0; + + // 64K, UTF8 + STRING = 1; + + // 64-bit signed + INT64 = 2; + + // 64-bit IEEE floating point + DOUBLE = 3; + + // Aggregate type + STRUCT = 4; + + // 64K, Binary + BYTES = 5; + + // 2-valued + BOOL = 6; + + // 64-bit signed usec since UTC epoch + TIMESTAMP = 7; + + // Civil date - Year, Month, Day + DATE = 8; + + // Civil time - Hour, Minute, Second, Microseconds + TIME = 9; + + // Combination of civil date and civil time + DATETIME = 10; + + // Geography object + GEOGRAPHY = 11; + + // Numeric value + NUMERIC = 12; + + // BigNumeric value + BIGNUMERIC = 13; + + // Interval + INTERVAL = 14; + + // JSON, String + JSON = 15; + } + + enum Mode { + // Illegal value + MODE_UNSPECIFIED = 0; + + NULLABLE = 1; + + REQUIRED = 2; + + REPEATED = 3; + } + + // Required. The field name. The name must contain only letters (a-z, A-Z), + // numbers (0-9), or underscores (_), and must start with a letter or + // underscore. The maximum length is 128 characters. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The field data type. + Type type = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The field mode. The default value is NULLABLE. + Mode mode = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Describes the nested schema fields if the type property is set to STRUCT. + repeated TableFieldSchema fields = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The field description. The maximum length is 1,024 characters. + string description = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Maximum length of values of this field for STRINGS or BYTES. + // + // If max_length is not specified, no maximum length constraint is imposed + // on this field. + // + // If type = "STRING", then max_length represents the maximum UTF-8 + // length of strings in this field. + // + // If type = "BYTES", then max_length represents the maximum number of + // bytes in this field. + // + // It is invalid to set this field if type is not "STRING" or "BYTES". + int64 max_length = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Precision (maximum number of total digits in base 10) and scale + // (maximum number of digits in the fractional part in base 10) constraints + // for values of this field for NUMERIC or BIGNUMERIC. + // + // It is invalid to set precision or scale if type is not "NUMERIC" or + // "BIGNUMERIC". + // + // If precision and scale are not specified, no value range constraint is + // imposed on this field insofar as values are permitted by the type. + // + // Values of this NUMERIC or BIGNUMERIC field must be in this range when: + // + // * Precision (P) and scale (S) are specified: + // [-10^(P-S) + 10^(-S), 10^(P-S) - 10^(-S)] + // * Precision (P) is specified but not scale (and thus scale is + // interpreted to be equal to zero): + // [-10^P + 1, 10^P - 1]. + // + // Acceptable values for precision and scale if both are specified: + // + // * If type = "NUMERIC": + // 1 <= precision - scale <= 29 and 0 <= scale <= 9. + // * If type = "BIGNUMERIC": + // 1 <= precision - scale <= 38 and 0 <= scale <= 38. + // + // Acceptable values for precision if only precision is specified but not + // scale (and thus scale is interpreted to be equal to zero): + // + // * If type = "NUMERIC": 1 <= precision <= 29. + // * If type = "BIGNUMERIC": 1 <= precision <= 38. + // + // If scale is specified but not precision, then it is invalid. + int64 precision = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. See documentation for precision. + int64 scale = 9 [(google.api.field_behavior) = OPTIONAL]; +} diff --git a/google/cloud/bigquery/storage/v1beta1/BUILD.bazel b/google/cloud/bigquery/storage/v1beta1/BUILD.bazel index 997d11623..d53101f9d 100644 --- a/google/cloud/bigquery/storage/v1beta1/BUILD.bazel +++ b/google/cloud/bigquery/storage/v1beta1/BUILD.bazel @@ -164,14 +164,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -258,7 +257,7 @@ ruby_grpc_library( ruby_cloud_gapic_library( name = "storage_ruby_gapic", srcs = [":storage_proto_with_info",], - extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-storage-v1beta1"], + extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-bigquery-storage-v1beta1"], deps = [ ":storage_ruby_grpc", ":storage_ruby_proto", diff --git a/google/cloud/bigquery/storage/v1beta2/BUILD.bazel b/google/cloud/bigquery/storage/v1beta2/BUILD.bazel index a08f3a23b..bdc2a0cf7 100644 --- a/google/cloud/bigquery/storage/v1beta2/BUILD.bazel +++ b/google/cloud/bigquery/storage/v1beta2/BUILD.bazel @@ -172,14 +172,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -246,7 +245,7 @@ nodejs_gapic_assembly_pkg( # load( # "@com_google_googleapis_imports//:imports.bzl", # "ruby_gapic_assembly_pkg", -# "ruby_gapic_library", +# "ruby_cloud_gapic_library", # "ruby_grpc_library", # "ruby_proto_library", # ) @@ -262,12 +261,10 @@ nodejs_gapic_assembly_pkg( # deps = [":storage_ruby_proto"], # ) -# ruby_gapic_library( +# ruby_cloud_gapic_library( # name = "storage_ruby_gapic", -# src = ":storage_proto_with_info", -# gapic_yaml = "bigquerystorage_gapic.yaml", -# package = "google.cloud.bigquery.storage.v1beta2", -# service_yaml = "bigquerystorage_v1beta2.yaml", +# srcs = [":storage_proto_with_info",], +# extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-bigquery-storage-v1beta2"], # deps = [ # ":storage_ruby_grpc", # ":storage_ruby_proto", diff --git a/google/cloud/bigquery/storage/v1beta2/bigquerystorage_grpc_service_config.json b/google/cloud/bigquery/storage/v1beta2/bigquerystorage_grpc_service_config.json index 33c6e8870..640db50c7 100644 --- a/google/cloud/bigquery/storage/v1beta2/bigquerystorage_grpc_service_config.json +++ b/google/cloud/bigquery/storage/v1beta2/bigquerystorage_grpc_service_config.json @@ -79,6 +79,7 @@ "method": "AppendRows" } ], + "timeout": "86400s", "retryPolicy": { "initialBackoff": "0.100s", "maxBackoff": "60s", diff --git a/google/cloud/bigquery/storage/v1beta2/storage.proto b/google/cloud/bigquery/storage/v1beta2/storage.proto index 8c25b8461..32d931013 100644 --- a/google/cloud/bigquery/storage/v1beta2/storage.proto +++ b/google/cloud/bigquery/storage/v1beta2/storage.proto @@ -64,7 +64,7 @@ service BigQueryRead { // limits are enforced based on the number of pre-filtered rows, so some // filters can lead to lopsided assignments. // - // Read sessions automatically expire 24 hours after they are created and do + // Read sessions automatically expire 6 hours after they are created and do // not require manual clean-up by the caller. rpc CreateReadSession(CreateReadSessionRequest) returns (ReadSession) { option (google.api.http) = { diff --git a/google/cloud/bigquery/v2/BUILD.bazel b/google/cloud/bigquery/v2/BUILD.bazel index f957f002b..fb79a3f26 100644 --- a/google/cloud/bigquery/v2/BUILD.bazel +++ b/google/cloud/bigquery/v2/BUILD.bazel @@ -163,14 +163,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -322,4 +321,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "bigquery_cc_proto", + deps = [":bigquery_proto"], +) + +cc_grpc_library( + name = "bigquery_cc_grpc", + srcs = [":bigquery_proto"], + grpc_only = True, + deps = [":bigquery_cc_proto"], +) diff --git a/google/cloud/bigquery/v2/bigquery_v2.yaml b/google/cloud/bigquery/v2/bigquery_v2.yaml index 43b662e6e..8f9e6ced5 100644 --- a/google/cloud/bigquery/v2/bigquery_v2.yaml +++ b/google/cloud/bigquery/v2/bigquery_v2.yaml @@ -1,5 +1,5 @@ type: google.api.Service -config_version: 2 +config_version: 3 name: bigquery.googleapis.com title: BigQuery API @@ -40,6 +40,8 @@ http: additional_bindings: - post: '/bigquery/v2/{resource=projects/*/datasets/*/tables/*}:getIamPolicy' body: '*' + - post: '/bigquery/v2/{resource=projects/*/datasets/*/tables/*/rowAccessPolicies/*}:getIamPolicy' + body: '*' - selector: google.iam.v1.IAMPolicy.SetIamPolicy post: '/bigquery/v2/{resource=projects/*/datasets/*}:setIamPolicy' body: '*' @@ -52,6 +54,8 @@ http: additional_bindings: - post: '/bigquery/v2/{resource=projects/*/datasets/*/tables/*}:testIamPermissions' body: '*' + - post: '/bigquery/v2/{resource=projects/*/datasets/*/tables/*/rowAccessPolicies/*}:testIamPermissions' + body: '*' authentication: rules: diff --git a/google/cloud/bigquery/v2/encryption_config.proto b/google/cloud/bigquery/v2/encryption_config.proto index 1c0512a17..f241eb5f9 100644 --- a/google/cloud/bigquery/v2/encryption_config.proto +++ b/google/cloud/bigquery/v2/encryption_config.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/google/cloud/bigquery/v2/model.proto b/google/cloud/bigquery/v2/model.proto index 2d400dddd..27f50f04c 100644 --- a/google/cloud/bigquery/v2/model.proto +++ b/google/cloud/bigquery/v2/model.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -41,22 +41,36 @@ service ModelService { // Gets the specified model resource by model ID. rpc GetModel(GetModelRequest) returns (Model) { + option (google.api.http) = { + get: "/bigquery/v2/projects/{project_id=*}/datasets/{dataset_id=*}/models/{model_id=*}" + }; option (google.api.method_signature) = "project_id,dataset_id,model_id"; } // Lists all models in the specified dataset. Requires the READER dataset - // role. + // role. After retrieving the list of models, you can get information about a + // particular model by calling the models.get method. rpc ListModels(ListModelsRequest) returns (ListModelsResponse) { + option (google.api.http) = { + get: "/bigquery/v2/projects/{project_id=*}/datasets/{dataset_id=*}/models" + }; option (google.api.method_signature) = "project_id,dataset_id,max_results"; } // Patch specific fields in the specified model. rpc PatchModel(PatchModelRequest) returns (Model) { + option (google.api.http) = { + patch: "/bigquery/v2/projects/{project_id=*}/datasets/{dataset_id=*}/models/{model_id=*}" + body: "model" + }; option (google.api.method_signature) = "project_id,dataset_id,model_id,model"; } // Deletes the model specified by modelId from the dataset. rpc DeleteModel(DeleteModelRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/bigquery/v2/projects/{project_id=*}/datasets/{dataset_id=*}/models/{model_id=*}" + }; option (google.api.method_signature) = "project_id,dataset_id,model_id"; } } @@ -92,6 +106,7 @@ message Model { // Indicates the method used to initialize the centroids for KMeans // clustering algorithm. enum KmeansInitializationMethod { + // Unspecified initialization method. KMEANS_INITIALIZATION_METHOD_UNSPECIFIED = 0; // Initializes the centroids randomly. @@ -123,7 +138,7 @@ message Model { // Median absolute error. google.protobuf.DoubleValue median_absolute_error = 4; - // R^2 score. + // R^2 score. This corresponds to r2_score in ML.EVALUATE. google.protobuf.DoubleValue r_squared = 5; } @@ -305,7 +320,7 @@ message Model { // Mean of squared distances between each sample to its cluster centroid. google.protobuf.DoubleValue mean_squared_distance = 2; - // [Beta] Information for all clusters. + // Information for all clusters. repeated Cluster clusters = 3; } @@ -346,30 +361,50 @@ message Model { // is not 1. bool has_drift = 3; - // The id to indicate different time series. + // The time_series_id value for this time series. It will be one of + // the unique values from the time_series_id_column specified during + // ARIMA model training. Only present when time_series_id_column + // training option was used. string time_series_id = 4; + // The tuple of time_series_ids identifying this time series. It will + // be one of the unique tuples of values present in the + // time_series_id_columns specified during ARIMA model training. Only + // present when time_series_id_columns training option was used and + // the order of values here are same as the order of + // time_series_id_columns. + repeated string time_series_ids = 9; + // Seasonal periods. Repeated because multiple periods are supported // for one time series. repeated SeasonalPeriod.SeasonalPeriodType seasonal_periods = 5; + + // If true, holiday_effect is a part of time series decomposition result. + google.protobuf.BoolValue has_holiday_effect = 6; + + // If true, spikes_and_dips is a part of time series decomposition result. + google.protobuf.BoolValue has_spikes_and_dips = 7; + + // If true, step_changes is a part of time series decomposition result. + google.protobuf.BoolValue has_step_changes = 8; } // Non-seasonal order. - repeated ArimaOrder non_seasonal_order = 1; + repeated ArimaOrder non_seasonal_order = 1 [deprecated = true]; // Arima model fitting metrics. - repeated ArimaFittingMetrics arima_fitting_metrics = 2; + repeated ArimaFittingMetrics arima_fitting_metrics = 2 [deprecated = true]; // Seasonal periods. Repeated because multiple periods are supported for one // time series. - repeated SeasonalPeriod.SeasonalPeriodType seasonal_periods = 3; + repeated SeasonalPeriod.SeasonalPeriodType seasonal_periods = 3 [deprecated = true]; // Whether Arima model fitted with drift or not. It is always false when d // is not 1. - repeated bool has_drift = 4; + repeated bool has_drift = 4 [deprecated = true]; // Id to differentiate different time series for the large-scale case. - repeated string time_series_id = 5; + repeated string time_series_id = 5 [deprecated = true]; // Repeated as there can be many metric sets (one for each model) in // auto-arima and the large-scale case. @@ -462,6 +497,7 @@ message Model { // Information about a single training query run for the model. message TrainingRun { + // Options used in model training. message TrainingOptions { // The maximum number of iterations in training. Used only for iterative // training algorithms. @@ -539,7 +575,7 @@ message Model { // Number of clusters for clustering models. int64 num_clusters = 21; - // [Beta] Google Cloud Storage URI from which the model was imported. Only + // Google Cloud Storage URI from which the model was imported. Only // applicable for imported models. string model_uri = 22; @@ -608,10 +644,12 @@ message Model { // effects modeling is enabled. HolidayRegion holiday_region = 42; - // The id column that will be used to indicate different time series to - // forecast in parallel. + // The time series id column that was used during ARIMA model training. string time_series_id_column = 43; + // The time series id columns that were used during ARIMA model training. + repeated string time_series_id_columns = 51; + // The number of periods ahead that need to be forecasted. int64 horizon = 44; @@ -623,6 +661,16 @@ message Model { // The max value of non-seasonal p and q. int64 auto_arima_max_order = 46; + + // If true, perform decompose time series and save the results. + google.protobuf.BoolValue decompose_time_series = 50; + + // If true, clean spikes and dips in the input time series. + google.protobuf.BoolValue clean_spikes_and_dips = 52; + + // If true, detect step changes and make data adjustment in the input time + // series. + google.protobuf.BoolValue adjust_step_changes = 53; } // Information about a single iteration of the training run. @@ -670,12 +718,35 @@ message Model { // when d is not 1. bool has_drift = 4; - // The id to indicate different time series. + // The time_series_id value for this time series. It will be one of + // the unique values from the time_series_id_column specified during + // ARIMA model training. Only present when time_series_id_column + // training option was used. string time_series_id = 5; + // The tuple of time_series_ids identifying this time series. It will + // be one of the unique tuples of values present in the + // time_series_id_columns specified during ARIMA model training. Only + // present when time_series_id_columns training option was used and + // the order of values here are same as the order of + // time_series_id_columns. + repeated string time_series_ids = 10; + // Seasonal periods. Repeated because multiple periods are supported // for one time series. repeated SeasonalPeriod.SeasonalPeriodType seasonal_periods = 6; + + // If true, holiday_effect is a part of time series decomposition + // result. + google.protobuf.BoolValue has_holiday_effect = 7; + + // If true, spikes_and_dips is a part of time series decomposition + // result. + google.protobuf.BoolValue has_spikes_and_dips = 8; + + // If true, step_changes is a part of time series decomposition + // result. + google.protobuf.BoolValue has_step_changes = 9; } // This message is repeated because there are multiple arima models @@ -748,22 +819,22 @@ message Model { // Matrix factorization model. MATRIX_FACTORIZATION = 4; - // [Beta] DNN classifier model. + // DNN classifier model. DNN_CLASSIFIER = 5; - // [Beta] An imported TensorFlow model. + // An imported TensorFlow model. TENSORFLOW = 6; - // [Beta] DNN regressor model. + // DNN regressor model. DNN_REGRESSOR = 7; - // [Beta] Boosted tree regressor model. + // Boosted tree regressor model. BOOSTED_TREE_REGRESSOR = 9; - // [Beta] Boosted tree classifier model. + // Boosted tree classifier model. BOOSTED_TREE_CLASSIFIER = 10; - // [Beta] ARIMA model. + // ARIMA model. ARIMA = 11; // [Beta] AutoML Tables regression model. @@ -771,6 +842,9 @@ message Model { // [Beta] AutoML Tables classification model. AUTOML_CLASSIFIER = 13; + + // New name for the ARIMA model. + ARIMA_PLUS = 19; } // Loss metric to evaluate model training performance. @@ -840,6 +914,9 @@ message Model { // Hourly data. HOURLY = 7; + + // Per-minute data. + PER_MINUTE = 8; } // Type of supported holiday regions for time series forecasting models. @@ -1141,6 +1218,9 @@ message Model { // Output only. Label columns that were used to train this model. // The output of the model will have a "predicted_" prefix to these columns. repeated StandardSqlField label_columns = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The best trial_id across all training runs. + int64 best_trial_id = 19 [deprecated = true]; } message GetModelRequest { diff --git a/google/cloud/bigquery/v2/model_reference.proto b/google/cloud/bigquery/v2/model_reference.proto index c3d1a49a8..d0b6039d3 100644 --- a/google/cloud/bigquery/v2/model_reference.proto +++ b/google/cloud/bigquery/v2/model_reference.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/google/cloud/bigquery/v2/standard_sql.proto b/google/cloud/bigquery/v2/standard_sql.proto index 1514eccbb..321290c71 100644 --- a/google/cloud/bigquery/v2/standard_sql.proto +++ b/google/cloud/bigquery/v2/standard_sql.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -66,6 +66,9 @@ message StandardSqlDataType { // Encoded as RFC 3339 full-date "T" partial-time: 1985-04-12T23:20:50.52 DATETIME = 21; + // Encoded as fully qualified 3 part: 0-5 15 2:30:45.6 + INTERVAL = 26; + // Encoded as WKT GEOGRAPHY = 22; @@ -75,6 +78,9 @@ message StandardSqlDataType { // Encoded as a decimal string. BIGNUMERIC = 24; + // Encoded as a string. + JSON = 25; + // Encoded as a list with types matching Type.array_type. ARRAY = 16; @@ -110,3 +116,9 @@ message StandardSqlField { message StandardSqlStructType { repeated StandardSqlField fields = 1; } + +// A table type +message StandardSqlTableType { + // The columns in this table type + repeated StandardSqlField columns = 1; +} diff --git a/google/cloud/bigquery/v2/table_reference.proto b/google/cloud/bigquery/v2/table_reference.proto index ba02f80c4..ae99460e9 100644 --- a/google/cloud/bigquery/v2/table_reference.proto +++ b/google/cloud/bigquery/v2/table_reference.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -36,4 +36,16 @@ message TableReference { // suffixing of the table ID with a partition decorator, such as // `sample_table$20190123`. string table_id = 3 [(google.api.field_behavior) = REQUIRED]; + + // The alternative field that will be used when ESF is not able to translate + // the received data to the project_id field. + repeated string project_id_alternative = 4; + + // The alternative field that will be used when ESF is not able to translate + // the received data to the project_id field. + repeated string dataset_id_alternative = 5; + + // The alternative field that will be used when ESF is not able to translate + // the received data to the project_id field. + repeated string table_id_alternative = 6; } diff --git a/google/cloud/bigquerymigration/v2alpha/bigquerymigration_grpc_service_config.json b/google/cloud/bigquerymigration/v2alpha/bigquerymigration_grpc_service_config.json new file mode 100644 index 000000000..84644c69c --- /dev/null +++ b/google/cloud/bigquerymigration/v2alpha/bigquerymigration_grpc_service_config.json @@ -0,0 +1,63 @@ +{ + "methodConfig": [{ + "name": [ + { + "service": "google.cloud.bigquery.migration.v2alpha.MigrationService", + "method": "GetMigrationWorkflow" + }, + { + "service": "google.cloud.bigquery.migration.v2alpha.MigrationService", + "method": "ListMigrationWorkflows" + }, + { + "service": "google.cloud.bigquery.migration.v2alpha.MigrationService", + "method": "StartMigrationWorkflow" + }, + { + "service": "google.cloud.bigquery.migration.v2alpha.MigrationService", + "method": "GetMigrationSubtask" + }, + { + "service": "google.cloud.bigquery.migration.v2alpha.MigrationService", + "method": "ListMigrationSubtasks" + } + ], + "timeout": "120s", + "retryPolicy": { + "maxAttempts": 5, + "initialBackoff": "1s", + "maxBackoff": "10s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": ["UNAVAILABLE"] + } + }, + { + "name": [ + { + "service": "google.cloud.bigquery.migration.v2alpha.MigrationService", + "method": "CreateMigrationWorkflow" + }, + { + "service": "google.cloud.bigquery.migration.v2alpha.MigrationService", + "method": "DeleteMigrationWorkflow" + } + ], + "timeout": "60s" + }, + { + "name": [ + { + "service": "google.cloud.bigquery.migration.v2alpha.SqlTranslationService", + "method": "Translate" + } + ], + "timeout": "30s", + "retryPolicy": { + "maxAttempts": 3, + "initialBackoff": "0.100s", + "maxBackoff": "1s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": ["UNAVAILABLE"] + } + }] +} diff --git a/google/cloud/billing/BUILD.bazel b/google/cloud/billing/BUILD.bazel new file mode 100644 index 000000000..6b01e1a26 --- /dev/null +++ b/google/cloud/billing/BUILD.bazel @@ -0,0 +1,41 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-billing. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for cloudbilling. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "cloudbilling_ruby_wrapper", + srcs = ["//google/cloud/billing/v1:billing_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-billing", + "ruby-cloud-env-prefix=BILLING", + "ruby-cloud-wrapper-of=v1:0.1", + "ruby-cloud-product-url=https://cloud.google.com/billing", + "ruby-cloud-api-id=cloudbilling.googleapis.com", + "ruby-cloud-api-shortname=cloudbilling", + "ruby-cloud-factory-method-suffix=_service", + ], + ruby_cloud_description = "Allows developers to manage billing for their Google Cloud Platform projects programmatically.", + ruby_cloud_title = "Billing", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-billing-ruby", + deps = [ + ":cloudbilling_ruby_wrapper", + ], +) diff --git a/google/cloud/billing/budgets/BUILD.bazel b/google/cloud/billing/budgets/BUILD.bazel new file mode 100644 index 000000000..04f98744d --- /dev/null +++ b/google/cloud/billing/budgets/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-billing-budgets. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for billingbudgets. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "billingbudgets_ruby_wrapper", + srcs = ["//google/cloud/billing/budgets/v1:budgets_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-billing-budgets", + "ruby-cloud-env-prefix=BILLING_BUDGETS", + "ruby-cloud-wrapper-of=v1:0.0;v1beta1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/billing/docs/how-to/budget-api-overview", + "ruby-cloud-api-id=billingbudgets.googleapis.com", + "ruby-cloud-api-shortname=billingbudgets", + ], + ruby_cloud_description = "Provides methods to view, create, and manage Cloud Billing budgets programmatically at scale.", + ruby_cloud_title = "Billing Budgets", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-billing-budgets-ruby", + deps = [ + ":billingbudgets_ruby_wrapper", + ], +) diff --git a/google/cloud/billing/budgets/v1/BUILD.bazel b/google/cloud/billing/budgets/v1/BUILD.bazel index c0c78851d..36c3acfc8 100644 --- a/google/cloud/billing/budgets/v1/BUILD.bazel +++ b/google/cloud/billing/budgets/v1/BUILD.bazel @@ -37,10 +37,10 @@ load( "ruby_gapic_assembly_pkg", "ruby_grpc_library", "ruby_proto_library", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) # This is an API workspace, having public visibility by default makes perfect sense. @@ -236,8 +236,16 @@ ruby_grpc_library( ruby_cloud_gapic_library( name = "budgets_ruby_gapic", srcs = [":budgets_proto_with_info"], - extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-billing-budgets-v1"], + extra_protoc_parameters = [ + "ruby-cloud-api-id=billingbudgets.googleapis.com", + "ruby-cloud-api-shortname=billingbudgets", + "ruby-cloud-env-prefix=BILLING_BUDGETS", + "ruby-cloud-gem-name=google-cloud-billing-budgets-v1", + "ruby-cloud-product-url=https://cloud.google.com/billing/docs/how-to/budget-api-overview", + ], grpc_service_config = "billingbudgets_grpc_service_config.json", + ruby_cloud_description = "Provides methods to view, create, and manage Cloud Billing budgets programmatically at scale.", + ruby_cloud_title = "Billing Budgets V1", deps = [ ":budgets_ruby_grpc", ":budgets_ruby_proto", @@ -289,4 +297,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "budgets_cc_proto", + deps = [":budgets_proto"], +) + +cc_grpc_library( + name = "budgets_cc_grpc", + srcs = [":budgets_proto"], + grpc_only = True, + deps = [":budgets_cc_proto"], +) diff --git a/google/cloud/billing/budgets/v1beta1/BUILD.bazel b/google/cloud/billing/budgets/v1beta1/BUILD.bazel index 9e43ee441..2c90a2fa3 100644 --- a/google/cloud/billing/budgets/v1beta1/BUILD.bazel +++ b/google/cloud/billing/budgets/v1beta1/BUILD.bazel @@ -177,14 +177,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/billing/v1/BUILD.bazel b/google/cloud/billing/v1/BUILD.bazel index 03d7398f5..14fa78321 100644 --- a/google/cloud/billing/v1/BUILD.bazel +++ b/google/cloud/billing/v1/BUILD.bazel @@ -170,14 +170,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -336,4 +335,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "billing_cc_proto", + deps = [":billing_proto"], +) + +cc_grpc_library( + name = "billing_cc_grpc", + srcs = [":billing_proto"], + grpc_only = True, + deps = [":billing_cc_proto"], +) diff --git a/google/cloud/binaryauthorization/BUILD.bazel b/google/cloud/binaryauthorization/BUILD.bazel new file mode 100644 index 000000000..43bc81548 --- /dev/null +++ b/google/cloud/binaryauthorization/BUILD.bazel @@ -0,0 +1,41 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-binary_authorization. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for binaryauthorization. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "binaryauthorization_ruby_wrapper", + srcs = ["//google/cloud/binaryauthorization/v1:binaryauthorization_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-binary_authorization", + "ruby-cloud-env-prefix=BINARY_AUTHORIZATION", + "ruby-cloud-wrapper-of=v1:0.0;v1beta1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/binary-authorization/", + "ruby-cloud-api-id=binaryauthorization.googleapis.com", + "ruby-cloud-api-shortname=binaryauthorization", + "ruby-cloud-service-override=BinauthzManagementServiceV1=BinauthzManagementService;SystemPolicyV1=SystemPolicy;ValidationHelperV1=ValidationHelper", + ], + ruby_cloud_description = "Binary Authorization is a service on Google Cloud that provides centralized software supply-chain security for applications that run on Google Kubernetes Engine (GKE) and GKE on-prem.", + ruby_cloud_title = "Binary Authorization", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-binaryauthorization-ruby", + deps = [ + ":binaryauthorization_ruby_wrapper", + ], +) diff --git a/google/cloud/binaryauthorization/v1/BUILD.bazel b/google/cloud/binaryauthorization/v1/BUILD.bazel new file mode 100644 index 000000000..839562826 --- /dev/null +++ b/google/cloud/binaryauthorization/v1/BUILD.bazel @@ -0,0 +1,369 @@ +# This file was automatically generated by BuildFileGenerator +# https://github.com/googleapis/rules_gapic/tree/master/bazel + +# Most of the manual changes to this file will be overwritten. +# It's **only** allowed to change the following rule attribute values: +# - names of *_gapic_assembly_* rules +# - certain parameters of *_gapic_library rules, including but not limited to: +# * extra_protoc_parameters +# * extra_protoc_file_parameters +# The complete list of preserved parameters can be found in the source code. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "binaryauthorization_proto", + srcs = [ + "resources.proto", + "service.proto", + ], + deps = [ + "//google/api:annotations_proto", + "//google/api:client_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "//grafeas/v1:grafeas_proto", + "@com_google_protobuf//:empty_proto", + "@com_google_protobuf//:timestamp_proto", + ], +) + +proto_library_with_info( + name = "binaryauthorization_proto_with_info", + deps = [ + ":binaryauthorization_proto", + "//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "binaryauthorization_java_proto", + deps = [":binaryauthorization_proto"], +) + +java_grpc_library( + name = "binaryauthorization_java_grpc", + srcs = [":binaryauthorization_proto"], + deps = [":binaryauthorization_java_proto"], +) + +java_gapic_library( + name = "binaryauthorization_java_gapic", + srcs = [":binaryauthorization_proto_with_info"], + gapic_yaml = None, + grpc_service_config = "binaryauthorization_grpc_service_config.json", + service_yaml = "binaryauthorization_v1.yaml", + test_deps = [ + ":binaryauthorization_java_grpc", + ], + deps = [ + ":binaryauthorization_java_proto", + "//google/api:api_java_proto", + "//grafeas/v1:grafeas_java_proto", + ], +) + +java_gapic_test( + name = "binaryauthorization_java_gapic_test_suite", + test_classes = [ + "com.google.protos.google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1ClientTest", + "com.google.protos.google.cloud.binaryauthorization.v1.SystemPolicyV1ClientTest", + "com.google.protos.google.cloud.binaryauthorization.v1.ValidationHelperV1ClientTest", + ], + runtime_deps = [":binaryauthorization_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-binaryauthorization-v1-java", + deps = [ + ":binaryauthorization_java_gapic", + ":binaryauthorization_java_grpc", + ":binaryauthorization_java_proto", + ":binaryauthorization_proto", + ], +) + +############################################################################## +# Go +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_gapic_assembly_pkg", + "go_gapic_library", + "go_proto_library", + "go_test", +) + +go_proto_library( + name = "binaryauthorization_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/cloud/binaryauthorization/v1", + protos = [":binaryauthorization_proto"], + deps = [ + "//google/api:annotations_go_proto", + "//grafeas/v1:grafeas_go_proto", + ], +) + +go_gapic_library( + name = "binaryauthorization_go_gapic", + srcs = [":binaryauthorization_proto_with_info"], + grpc_service_config = "binaryauthorization_grpc_service_config.json", + importpath = "cloud.google.com/go/binaryauthorization/apiv1;binaryauthorization", + service_yaml = "binaryauthorization_v1.yaml", + metadata = True, + deps = [ + ":binaryauthorization_go_proto", + ], +) + +go_test( + name = "binaryauthorization_go_gapic_test", + srcs = [":binaryauthorization_go_gapic_srcjar_test"], + embed = [":binaryauthorization_go_gapic"], + importpath = "cloud.google.com/go/binaryauthorization/apiv1", +) + +# Open Source Packages +go_gapic_assembly_pkg( + name = "gapi-cloud-binaryauthorization-v1-go", + deps = [ + ":binaryauthorization_go_gapic", + ":binaryauthorization_go_gapic_srcjar-test.srcjar", + ":binaryauthorization_go_gapic_srcjar-metadata.srcjar", + ":binaryauthorization_go_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "binaryauthorization_py_gapic", + srcs = [":binaryauthorization_proto"], + grpc_service_config = "binaryauthorization_grpc_service_config.json", +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "binaryauthorization-v1-py", + deps = [ + ":binaryauthorization_py_gapic", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "binaryauthorization_php_proto", + deps = [":binaryauthorization_proto"], +) + +php_grpc_library( + name = "binaryauthorization_php_grpc", + srcs = [":binaryauthorization_proto"], + deps = [":binaryauthorization_php_proto"], +) + +php_gapic_library( + name = "binaryauthorization_php_gapic", + srcs = [":binaryauthorization_proto_with_info"], + grpc_service_config = "binaryauthorization_grpc_service_config.json", + service_yaml = "binaryauthorization_v1.yaml", + deps = [ + ":binaryauthorization_php_grpc", + ":binaryauthorization_php_proto", + ], +) + +# Open Source Packages +php_gapic_assembly_pkg( + name = "google-cloud-binaryauthorization-v1-php", + deps = [ + ":binaryauthorization_php_gapic", + ":binaryauthorization_php_grpc", + ":binaryauthorization_php_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "binaryauthorization_nodejs_gapic", + package_name = "@google-cloud/binary-authorization", + src = ":binaryauthorization_proto_with_info", + extra_protoc_parameters = ["metadata"], + grpc_service_config = "binaryauthorization_grpc_service_config.json", + package = "google.cloud.binaryauthorization.v1", + service_yaml = "binaryauthorization_v1.yaml", + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "binaryauthorization-v1-nodejs", + deps = [ + ":binaryauthorization_nodejs_gapic", + ":binaryauthorization_proto", + "//grafeas/v1:grafeas_proto", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_gapic_assembly_pkg", + "ruby_cloud_gapic_library", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "binaryauthorization_ruby_proto", + deps = [":binaryauthorization_proto"], +) + +ruby_grpc_library( + name = "binaryauthorization_ruby_grpc", + srcs = [":binaryauthorization_proto"], + deps = [":binaryauthorization_ruby_proto"], +) + +ruby_cloud_gapic_library( + name = "binaryauthorization_ruby_gapic", + srcs = [":binaryauthorization_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-api-id=binaryauthorization.googleapis.com", + "ruby-cloud-api-shortname=binaryauthorization", + "ruby-cloud-env-prefix=BINARY_AUTHORIZATION", + "ruby-cloud-gem-name=google-cloud-binary_authorization-v1", + "ruby-cloud-product-url=https://cloud.google.com/binary-authorization/", + "ruby-cloud-service-override=BinauthzManagementServiceV1=BinauthzManagementService;SystemPolicyV1=SystemPolicy;ValidationHelperV1=ValidationHelper", + "ruby-cloud-extra-dependencies=grafeas-v1=> 0.0|< 2.a", + "ruby-cloud-yard-strict=false", + ], + grpc_service_config = "binaryauthorization_grpc_service_config.json", + ruby_cloud_description = "Binary Authorization is a service on Google Cloud that provides centralized software supply-chain security for applications that run on Google Kubernetes Engine (GKE) and GKE on-prem.", + ruby_cloud_title = "Binary Authorization V1", + deps = [ + ":binaryauthorization_ruby_grpc", + ":binaryauthorization_ruby_proto", + ], +) + +# Open Source Packages +ruby_gapic_assembly_pkg( + name = "google-cloud-binaryauthorization-v1-ruby", + deps = [ + ":binaryauthorization_ruby_gapic", + ":binaryauthorization_ruby_grpc", + ":binaryauthorization_ruby_proto", + ], +) + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", + "csharp_gapic_library", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "binaryauthorization_csharp_proto", + deps = [":binaryauthorization_proto"], +) + +csharp_grpc_library( + name = "binaryauthorization_csharp_grpc", + srcs = [":binaryauthorization_proto"], + deps = [":binaryauthorization_csharp_proto"], +) + +csharp_gapic_library( + name = "binaryauthorization_csharp_gapic", + srcs = [":binaryauthorization_proto_with_info"], + common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", + grpc_service_config = "binaryauthorization_grpc_service_config.json", + deps = [ + ":binaryauthorization_csharp_grpc", + ":binaryauthorization_csharp_proto", + ], +) + +# Open Source Packages +csharp_gapic_assembly_pkg( + name = "google-cloud-binaryauthorization-v1-csharp", + deps = [ + ":binaryauthorization_csharp_gapic", + ":binaryauthorization_csharp_grpc", + ":binaryauthorization_csharp_proto", + ], +) + +############################################################################## +# C++ +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "binaryauthorization_cc_proto", + deps = [":binaryauthorization_proto"], +) + +cc_grpc_library( + name = "binaryauthorization_cc_grpc", + srcs = [":binaryauthorization_proto"], + grpc_only = True, + deps = [":binaryauthorization_cc_proto"], +) diff --git a/google/cloud/binaryauthorization/v1/binaryauthorization_grpc_service_config.json b/google/cloud/binaryauthorization/v1/binaryauthorization_grpc_service_config.json new file mode 100644 index 000000000..9532a4394 --- /dev/null +++ b/google/cloud/binaryauthorization/v1/binaryauthorization_grpc_service_config.json @@ -0,0 +1,51 @@ +{ + "methodConfig": [ + { + "name": [ + { + "service": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1", + "method": "GetPolicy" + }, + { + "service": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1", + "method": "UpdatePolicy" + }, + { + "service": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1", + "method": "GetAttestor" + }, + { + "service": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1", + "method": "UpdateAttestor" + }, + { + "service": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1", + "method": "ListAttestors" + }, + { + "service": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1", + "method": "DeleteAttestor" + } + ], + "timeout": "600s", + "retryPolicy": { + "initialBackoff": "0.100s", + "maxBackoff": "60s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": [ + "DEADLINE_EXCEEDED", + "UNAVAILABLE" + ] + } + }, + { + "name": [ + { + "service": "google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1", + "method": "CreateAttestor" + } + ], + "timeout": "600s" + } + ] +} diff --git a/google/cloud/binaryauthorization/v1/binaryauthorization_v1.yaml b/google/cloud/binaryauthorization/v1/binaryauthorization_v1.yaml new file mode 100644 index 000000000..42d357731 --- /dev/null +++ b/google/cloud/binaryauthorization/v1/binaryauthorization_v1.yaml @@ -0,0 +1,75 @@ +type: google.api.Service +config_version: 3 +name: binaryauthorization.googleapis.com +title: Binary Authorization API + +apis: +- name: google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1 +- name: google.cloud.binaryauthorization.v1.SystemPolicyV1 +- name: google.cloud.binaryauthorization.v1.ValidationHelperV1 + +documentation: + summary: |- + The management interface for Binary Authorization, a system providing + policy control for images deployed to Kubernetes Engine clusters. + rules: + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + description: |- + Gets the access control policy for a resource. Returns an empty policy + if the resource exists and does not have a policy set. + + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + description: |- + Sets the access control policy on the specified resource. Replaces + any existing policy. + + Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` + errors. + + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + description: |- + Returns permissions that a caller has on the specified resource. If the + resource does not exist, this will return an empty set of + permissions, not a `NOT_FOUND` error. + + Note: This operation is designed to be used for building + permission-aware UIs and command-line tools, not for authorization + checking. This operation may "fail open" without warning. + +http: + rules: + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + get: '/v1/{resource=projects/*/policy}:getIamPolicy' + additional_bindings: + - get: '/v1/{resource=projects/*/attestors/*}:getIamPolicy' + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + post: '/v1/{resource=projects/*/policy}:setIamPolicy' + body: '*' + additional_bindings: + - post: '/v1/{resource=projects/*/attestors/*}:setIamPolicy' + body: '*' + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + post: '/v1/{resource=projects/*/policy}:testIamPermissions' + body: '*' + additional_bindings: + - post: '/v1/{resource=projects/*/attestors/*}:testIamPermissions' + body: '*' + +authentication: + rules: + - selector: 'google.cloud.binaryauthorization.v1.BinauthzManagementServiceV1.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.binaryauthorization.v1.SystemPolicyV1.GetSystemPolicy + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.binaryauthorization.v1.ValidationHelperV1.ValidateAttestationOccurrence + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.iam.v1.IAMPolicy.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/binaryauthorization/v1/resources.proto b/google/cloud/binaryauthorization/v1/resources.proto new file mode 100644 index 000000000..9d72a9f0d --- /dev/null +++ b/google/cloud/binaryauthorization/v1/resources.proto @@ -0,0 +1,334 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.binaryauthorization.v1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option cc_enable_arenas = true; +option csharp_namespace = "Google.Cloud.BinaryAuthorization.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/binaryauthorization/v1;binaryauthorization"; +option java_multiple_files = false; +option java_package = "com.google.protos.google.cloud.binaryauthorization.v1"; +option php_namespace = "Google\\Cloud\\BinaryAuthorization\\V1"; +option ruby_package = "Google::Cloud::BinaryAuthorization::V1"; + +// A [policy][google.cloud.binaryauthorization.v1.Policy] for container image binary authorization. +message Policy { + option (google.api.resource) = { + type: "binaryauthorization.googleapis.com/Policy" + pattern: "projects/{project}/policy" + pattern: "locations/{location}/policy" + }; + + enum GlobalPolicyEvaluationMode { + // Not specified: DISABLE is assumed. + GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED = 0; + + // Enables system policy evaluation. + ENABLE = 1; + + // Disables system policy evaluation. + DISABLE = 2; + } + + // Output only. The resource name, in the format `projects/*/policy`. There is + // at most one policy per project. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. A descriptive comment. + string description = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Controls the evaluation of a Google-maintained global admission + // policy for common system-level images. Images not covered by the global + // policy will be subject to the project admission policy. This setting + // has no effect when specified inside a global admission policy. + GlobalPolicyEvaluationMode global_policy_evaluation_mode = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Admission policy allowlisting. A matching admission request will + // always be permitted. This feature is typically used to exclude Google or + // third-party infrastructure images from Binary Authorization policies. + repeated AdmissionWhitelistPattern admission_whitelist_patterns = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Per-cluster admission rules. Cluster spec format: + // `location.clusterId`. There can be at most one admission rule per cluster + // spec. + // A `location` is either a compute zone (e.g. us-central1-a) or a region + // (e.g. us-central1). + // For `clusterId` syntax restrictions see + // https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters. + map cluster_admission_rules = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Per-kubernetes-namespace admission rules. K8s namespace spec format: + // [a-z.-]+, e.g. 'some-namespace' + map kubernetes_namespace_admission_rules = 10 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Per-kubernetes-service-account admission rules. Service account + // spec format: `namespace:serviceaccount`. e.g. 'test-ns:default' + map kubernetes_service_account_admission_rules = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Per-istio-service-identity admission rules. Istio service + // identity spec format: + // spiffe:///ns//sa/ or + // /ns//sa/ + // e.g. spiffe://example.com/ns/test-ns/sa/default + map istio_service_identity_admission_rules = 9 [(google.api.field_behavior) = OPTIONAL]; + + // Required. Default admission rule for a cluster without a per-cluster, per- + // kubernetes-service-account, or per-istio-service-identity admission rule. + AdmissionRule default_admission_rule = 4 [(google.api.field_behavior) = REQUIRED]; + + // Output only. Time when the policy was last updated. + google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// An [admission allowlist pattern][google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern] exempts images +// from checks by [admission rules][google.cloud.binaryauthorization.v1.AdmissionRule]. +message AdmissionWhitelistPattern { + // An image name pattern to allowlist, in the form `registry/path/to/image`. + // This supports a trailing `*` wildcard, but this is allowed only in + // text after the `registry/` part. This also supports a trailing `**` + // wildcard which matches subdirectories of a given entry. + string name_pattern = 1; +} + +// An [admission rule][google.cloud.binaryauthorization.v1.AdmissionRule] specifies either that all container images +// used in a pod creation request must be attested to by one or more +// [attestors][google.cloud.binaryauthorization.v1.Attestor], that all pod creations will be allowed, or that all +// pod creations will be denied. +// +// Images matching an [admission allowlist pattern][google.cloud.binaryauthorization.v1.AdmissionWhitelistPattern] +// are exempted from admission rules and will never block a pod creation. +message AdmissionRule { + enum EvaluationMode { + // Do not use. + EVALUATION_MODE_UNSPECIFIED = 0; + + // This rule allows all all pod creations. + ALWAYS_ALLOW = 1; + + // This rule allows a pod creation if all the attestors listed in + // 'require_attestations_by' have valid attestations for all of the + // images in the pod spec. + REQUIRE_ATTESTATION = 2; + + // This rule denies all pod creations. + ALWAYS_DENY = 3; + } + + // Defines the possible actions when a pod creation is denied by an admission + // rule. + enum EnforcementMode { + // Do not use. + ENFORCEMENT_MODE_UNSPECIFIED = 0; + + // Enforce the admission rule by blocking the pod creation. + ENFORCED_BLOCK_AND_AUDIT_LOG = 1; + + // Dryrun mode: Audit logging only. This will allow the pod creation as if + // the admission request had specified break-glass. + DRYRUN_AUDIT_LOG_ONLY = 2; + } + + // Required. How this admission rule will be evaluated. + EvaluationMode evaluation_mode = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The resource names of the attestors that must attest to + // a container image, in the format `projects/*/attestors/*`. Each + // attestor must exist before a policy can reference it. To add an attestor + // to a policy the principal issuing the policy change request must be able + // to read the attestor resource. + // + // Note: this field must be non-empty when the evaluation_mode field specifies + // REQUIRE_ATTESTATION, otherwise it must be empty. + repeated string require_attestations_by = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The action when a pod creation is denied by the admission rule. + EnforcementMode enforcement_mode = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// An [attestor][google.cloud.binaryauthorization.v1.Attestor] that attests to container image +// artifacts. An existing attestor cannot be modified except where +// indicated. +message Attestor { + option (google.api.resource) = { + type: "binaryauthorization.googleapis.com/Attestor" + pattern: "projects/{project}/attestors/{attestor}" + }; + + // Required. The resource name, in the format: + // `projects/*/attestors/*`. This field may not be updated. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A descriptive comment. This field may be updated. + // The field may be displayed in chooser dialogs. + string description = 6 [(google.api.field_behavior) = OPTIONAL]; + + oneof attestor_type { + // This specifies how an attestation will be read, and how it will be used + // during policy enforcement. + UserOwnedGrafeasNote user_owned_grafeas_note = 3; + } + + // Output only. Time when the attestor was last updated. + google.protobuf.Timestamp update_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// An [user owned Grafeas note][google.cloud.binaryauthorization.v1.UserOwnedGrafeasNote] references a Grafeas +// Attestation.Authority Note created by the user. +message UserOwnedGrafeasNote { + // Required. The Grafeas resource name of a Attestation.Authority Note, + // created by the user, in the format: `projects/*/notes/*`. This field may + // not be updated. + // + // An attestation by this attestor is stored as a Grafeas + // Attestation.Authority Occurrence that names a container image and that + // links to this Note. Grafeas is an external dependency. + string note_reference = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Public keys that verify attestations signed by this + // attestor. This field may be updated. + // + // If this field is non-empty, one of the specified public keys must + // verify that an attestation was signed by this attestor for the + // image specified in the admission request. + // + // If this field is empty, this attestor always returns that no + // valid attestations exist. + repeated AttestorPublicKey public_keys = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. This field will contain the service account email address + // that this Attestor will use as the principal when querying Container + // Analysis. Attestor administrators must grant this service account the + // IAM role needed to read attestations from the [note_reference][Note] in + // Container Analysis (`containeranalysis.notes.occurrences.viewer`). + // + // This email address is fixed for the lifetime of the Attestor, but callers + // should not make any other assumptions about the service account email; + // future versions may use an email based on a different naming pattern. + string delegation_service_account_email = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// A public key in the PkixPublicKey format (see +// https://tools.ietf.org/html/rfc5280#section-4.1.2.7 for details). +// Public keys of this type are typically textually encoded using the PEM +// format. +message PkixPublicKey { + // Represents a signature algorithm and other information necessary to verify + // signatures with a given public key. + // This is based primarily on the public key types supported by Tink's + // PemKeyType, which is in turn based on KMS's supported signing algorithms. + // See https://cloud.google.com/kms/docs/algorithms. In the future, BinAuthz + // might support additional public key types independently of Tink and/or KMS. + enum SignatureAlgorithm { + option allow_alias = true; + + // Not specified. + SIGNATURE_ALGORITHM_UNSPECIFIED = 0; + + // RSASSA-PSS 2048 bit key with a SHA256 digest. + RSA_PSS_2048_SHA256 = 1; + + // RSASSA-PSS 3072 bit key with a SHA256 digest. + RSA_PSS_3072_SHA256 = 2; + + // RSASSA-PSS 4096 bit key with a SHA256 digest. + RSA_PSS_4096_SHA256 = 3; + + // RSASSA-PSS 4096 bit key with a SHA512 digest. + RSA_PSS_4096_SHA512 = 4; + + // RSASSA-PKCS1-v1_5 with a 2048 bit key and a SHA256 digest. + RSA_SIGN_PKCS1_2048_SHA256 = 5; + + // RSASSA-PKCS1-v1_5 with a 3072 bit key and a SHA256 digest. + RSA_SIGN_PKCS1_3072_SHA256 = 6; + + // RSASSA-PKCS1-v1_5 with a 4096 bit key and a SHA256 digest. + RSA_SIGN_PKCS1_4096_SHA256 = 7; + + // RSASSA-PKCS1-v1_5 with a 4096 bit key and a SHA512 digest. + RSA_SIGN_PKCS1_4096_SHA512 = 8; + + // ECDSA on the NIST P-256 curve with a SHA256 digest. + ECDSA_P256_SHA256 = 9; + + // ECDSA on the NIST P-256 curve with a SHA256 digest. + EC_SIGN_P256_SHA256 = 9; + + // ECDSA on the NIST P-384 curve with a SHA384 digest. + ECDSA_P384_SHA384 = 10; + + // ECDSA on the NIST P-384 curve with a SHA384 digest. + EC_SIGN_P384_SHA384 = 10; + + // ECDSA on the NIST P-521 curve with a SHA512 digest. + ECDSA_P521_SHA512 = 11; + + // ECDSA on the NIST P-521 curve with a SHA512 digest. + EC_SIGN_P521_SHA512 = 11; + } + + // A PEM-encoded public key, as described in + // https://tools.ietf.org/html/rfc7468#section-13 + string public_key_pem = 1; + + // The signature algorithm used to verify a message against a signature using + // this key. + // These signature algorithm must match the structure and any object + // identifiers encoded in `public_key_pem` (i.e. this algorithm must match + // that of the public key). + SignatureAlgorithm signature_algorithm = 2; +} + +// An [attestor public key][google.cloud.binaryauthorization.v1.AttestorPublicKey] that will be used to verify +// attestations signed by this attestor. +message AttestorPublicKey { + // Optional. A descriptive comment. This field may be updated. + string comment = 1 [(google.api.field_behavior) = OPTIONAL]; + + // The ID of this public key. + // Signatures verified by BinAuthz must include the ID of the public key that + // can be used to verify them, and that ID must match the contents of this + // field exactly. + // Additional restrictions on this field can be imposed based on which public + // key type is encapsulated. See the documentation on `public_key` cases below + // for details. + string id = 2; + + oneof public_key { + // ASCII-armored representation of a PGP public key, as the entire output by + // the command `gpg --export --armor foo@example.com` (either LF or CRLF + // line endings). + // When using this field, `id` should be left blank. The BinAuthz API + // handlers will calculate the ID and fill it in automatically. BinAuthz + // computes this ID as the OpenPGP RFC4880 V4 fingerprint, represented as + // upper-case hex. If `id` is provided by the caller, it will be + // overwritten by the API-calculated ID. + string ascii_armored_pgp_public_key = 3; + + // A raw PKIX SubjectPublicKeyInfo format public key. + // + // NOTE: `id` may be explicitly provided by the caller when using this + // type of public key, but it MUST be a valid RFC3986 URI. If `id` is left + // blank, a default one will be computed based on the digest of the DER + // encoding of the public key. + PkixPublicKey pkix_public_key = 5; + } +} diff --git a/google/cloud/binaryauthorization/v1/service.proto b/google/cloud/binaryauthorization/v1/service.proto new file mode 100644 index 000000000..e063aacc0 --- /dev/null +++ b/google/cloud/binaryauthorization/v1/service.proto @@ -0,0 +1,312 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.binaryauthorization.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/binaryauthorization/v1/resources.proto"; +import "google/protobuf/empty.proto"; +import "grafeas/v1/attestation.proto"; + +option cc_enable_arenas = true; +option csharp_namespace = "Google.Cloud.BinaryAuthorization.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/binaryauthorization/v1;binaryauthorization"; +option java_multiple_files = false; +option java_package = "com.google.protos.google.cloud.binaryauthorization.v1"; +option php_namespace = "Google\\Cloud\\BinaryAuthorization\\V1"; +option ruby_package = "Google::Cloud::BinaryAuthorization::V1"; + +// Customer-facing API for Cloud Binary Authorization. + +// Google Cloud Management Service for Binary Authorization admission policies +// and attestation authorities. +// +// This API implements a REST model with the following objects: +// +// * [Policy][google.cloud.binaryauthorization.v1.Policy] +// * [Attestor][google.cloud.binaryauthorization.v1.Attestor] +service BinauthzManagementServiceV1 { + option (google.api.default_host) = "binaryauthorization.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // A [policy][google.cloud.binaryauthorization.v1.Policy] specifies the [attestors][google.cloud.binaryauthorization.v1.Attestor] that must attest to + // a container image, before the project is allowed to deploy that + // image. There is at most one policy per project. All image admission + // requests are permitted if a project has no policy. + // + // Gets the [policy][google.cloud.binaryauthorization.v1.Policy] for this project. Returns a default + // [policy][google.cloud.binaryauthorization.v1.Policy] if the project does not have one. + rpc GetPolicy(GetPolicyRequest) returns (Policy) { + option (google.api.http) = { + get: "/v1/{name=projects/*/policy}" + }; + option (google.api.method_signature) = "name"; + } + + // Creates or updates a project's [policy][google.cloud.binaryauthorization.v1.Policy], and returns a copy of the + // new [policy][google.cloud.binaryauthorization.v1.Policy]. A policy is always updated as a whole, to avoid race + // conditions with concurrent policy enforcement (or management!) + // requests. Returns NOT_FOUND if the project does not exist, INVALID_ARGUMENT + // if the request is malformed. + rpc UpdatePolicy(UpdatePolicyRequest) returns (Policy) { + option (google.api.http) = { + put: "/v1/{policy.name=projects/*/policy}" + body: "policy" + }; + option (google.api.method_signature) = "policy"; + } + + // Creates an [attestor][google.cloud.binaryauthorization.v1.Attestor], and returns a copy of the new + // [attestor][google.cloud.binaryauthorization.v1.Attestor]. Returns NOT_FOUND if the project does not exist, + // INVALID_ARGUMENT if the request is malformed, ALREADY_EXISTS if the + // [attestor][google.cloud.binaryauthorization.v1.Attestor] already exists. + rpc CreateAttestor(CreateAttestorRequest) returns (Attestor) { + option (google.api.http) = { + post: "/v1/{parent=projects/*}/attestors" + body: "attestor" + }; + option (google.api.method_signature) = "parent,attestor_id,attestor"; + } + + // Gets an [attestor][google.cloud.binaryauthorization.v1.Attestor]. + // Returns NOT_FOUND if the [attestor][google.cloud.binaryauthorization.v1.Attestor] does not exist. + rpc GetAttestor(GetAttestorRequest) returns (Attestor) { + option (google.api.http) = { + get: "/v1/{name=projects/*/attestors/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Updates an [attestor][google.cloud.binaryauthorization.v1.Attestor]. + // Returns NOT_FOUND if the [attestor][google.cloud.binaryauthorization.v1.Attestor] does not exist. + rpc UpdateAttestor(UpdateAttestorRequest) returns (Attestor) { + option (google.api.http) = { + put: "/v1/{attestor.name=projects/*/attestors/*}" + body: "attestor" + }; + option (google.api.method_signature) = "attestor"; + } + + // Lists [attestors][google.cloud.binaryauthorization.v1.Attestor]. + // Returns INVALID_ARGUMENT if the project does not exist. + rpc ListAttestors(ListAttestorsRequest) returns (ListAttestorsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*}/attestors" + }; + option (google.api.method_signature) = "parent"; + } + + // Deletes an [attestor][google.cloud.binaryauthorization.v1.Attestor]. Returns NOT_FOUND if the + // [attestor][google.cloud.binaryauthorization.v1.Attestor] does not exist. + rpc DeleteAttestor(DeleteAttestorRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/attestors/*}" + }; + option (google.api.method_signature) = "name"; + } +} + +// API for working with the system policy. +service SystemPolicyV1 { + option (google.api.default_host) = "binaryauthorization.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Gets the current system policy in the specified location. + rpc GetSystemPolicy(GetSystemPolicyRequest) returns (Policy) { + option (google.api.http) = { + get: "/v1/{name=locations/*/policy}" + }; + option (google.api.method_signature) = "name"; + } +} + +// BinAuthz Attestor verification +service ValidationHelperV1 { + option (google.api.default_host) = "binaryauthorization.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Returns whether the given Attestation for the given image URI + // was signed by the given Attestor + rpc ValidateAttestationOccurrence(ValidateAttestationOccurrenceRequest) returns (ValidateAttestationOccurrenceResponse) { + option (google.api.http) = { + post: "/v1/{attestor=projects/*/attestors/*}:validateAttestationOccurrence" + body: "*" + }; + } +} + +// Request message for [BinauthzManagementService.GetPolicy][]. +message GetPolicyRequest { + // Required. The resource name of the [policy][google.cloud.binaryauthorization.v1.Policy] to retrieve, + // in the format `projects/*/policy`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "binaryauthorization.googleapis.com/Policy" + } + ]; +} + +// Request message for [BinauthzManagementService.UpdatePolicy][]. +message UpdatePolicyRequest { + // Required. A new or updated [policy][google.cloud.binaryauthorization.v1.Policy] value. The service will + // overwrite the [policy name][google.cloud.binaryauthorization.v1.Policy.name] field with the resource name in + // the request URL, in the format `projects/*/policy`. + Policy policy = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [BinauthzManagementService.CreateAttestor][]. +message CreateAttestorRequest { + // Required. The parent of this [attestor][google.cloud.binaryauthorization.v1.Attestor]. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "cloudresourcemanager.googleapis.com/Project" + } + ]; + + // Required. The [attestors][google.cloud.binaryauthorization.v1.Attestor] ID. + string attestor_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The initial [attestor][google.cloud.binaryauthorization.v1.Attestor] value. The service will + // overwrite the [attestor name][google.cloud.binaryauthorization.v1.Attestor.name] field with the resource name, + // in the format `projects/*/attestors/*`. + Attestor attestor = 3 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [BinauthzManagementService.GetAttestor][]. +message GetAttestorRequest { + // Required. The name of the [attestor][google.cloud.binaryauthorization.v1.Attestor] to retrieve, in the format + // `projects/*/attestors/*`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "binaryauthorization.googleapis.com/Attestor" + } + ]; +} + +// Request message for [BinauthzManagementService.UpdateAttestor][]. +message UpdateAttestorRequest { + // Required. The updated [attestor][google.cloud.binaryauthorization.v1.Attestor] value. The service will + // overwrite the [attestor name][google.cloud.binaryauthorization.v1.Attestor.name] field with the resource name + // in the request URL, in the format `projects/*/attestors/*`. + Attestor attestor = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Request message for [BinauthzManagementService.ListAttestors][]. +message ListAttestorsRequest { + // Required. The resource name of the project associated with the + // [attestors][google.cloud.binaryauthorization.v1.Attestor], in the format `projects/*`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "cloudresourcemanager.googleapis.com/Project" + } + ]; + + // Requested page size. The server may return fewer results than requested. If + // unspecified, the server will pick an appropriate default. + int32 page_size = 2; + + // A token identifying a page of results the server should return. Typically, + // this is the value of [ListAttestorsResponse.next_page_token][google.cloud.binaryauthorization.v1.ListAttestorsResponse.next_page_token] returned + // from the previous call to the `ListAttestors` method. + string page_token = 3; +} + +// Response message for [BinauthzManagementService.ListAttestors][]. +message ListAttestorsResponse { + // The list of [attestors][google.cloud.binaryauthorization.v1.Attestor]. + repeated Attestor attestors = 1; + + // A token to retrieve the next page of results. Pass this value in the + // [ListAttestorsRequest.page_token][google.cloud.binaryauthorization.v1.ListAttestorsRequest.page_token] field in the subsequent call to the + // `ListAttestors` method to retrieve the next page of results. + string next_page_token = 2; +} + +// Request message for [BinauthzManagementService.DeleteAttestor][]. +message DeleteAttestorRequest { + // Required. The name of the [attestors][google.cloud.binaryauthorization.v1.Attestor] to delete, in the format + // `projects/*/attestors/*`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "binaryauthorization.googleapis.com/Attestor" + } + ]; +} + +// Request to read the current system policy. +message GetSystemPolicyRequest { + // Required. The resource name, in the format `locations/*/policy`. + // Note that the system policy is not associated with a project. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "binaryauthorization.googleapis.com/Policy" + } + ]; +} + +// Request message for +// [ValidationHelperV1.ValidateAttestationOccurrence][google.cloud.binaryauthorization.v1.ValidationHelperV1.ValidateAttestationOccurrence]. +message ValidateAttestationOccurrenceRequest { + // Required. The resource name of the [Attestor][google.cloud.binaryauthorization.v1.Attestor] of the + // [occurrence][grafeas.v1.Occurrence], in the format + // `projects/*/attestors/*`. + string attestor = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. An [AttestationOccurrence][grafeas.v1.AttestationOccurrence] to + // be checked that it can be verified by the Attestor. It does not have to be + // an existing entity in Container Analysis. It must otherwise be a valid + // AttestationOccurrence. + grafeas.v1.AttestationOccurrence attestation = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The resource name of the [Note][grafeas.v1.Note] to which the + // containing [Occurrence][grafeas.v1.Occurrence] is associated. + string occurrence_note = 3 [(google.api.field_behavior) = REQUIRED]; + + // Required. The URI of the artifact (e.g. container image) that is the + // subject of the containing [Occurrence][grafeas.v1.Occurrence]. + string occurrence_resource_uri = 4 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for +// [ValidationHelperV1.ValidateAttestationOccurrence][google.cloud.binaryauthorization.v1.ValidationHelperV1.ValidateAttestationOccurrence]. +message ValidateAttestationOccurrenceResponse { + // The enum returned in the "result" field. + enum Result { + // Unspecified. + RESULT_UNSPECIFIED = 0; + + // The Attestation was able to verified by the Attestor. + VERIFIED = 1; + + // The Attestation was not able to verified by the Attestor. + ATTESTATION_NOT_VERIFIABLE = 2; + } + + // The result of the Attestation validation. + Result result = 1; + + // The reason for denial if the Attestation couldn't be validated. + string denial_reason = 2; +} diff --git a/google/cloud/binaryauthorization/v1beta1/BUILD.bazel b/google/cloud/binaryauthorization/v1beta1/BUILD.bazel index 23242124a..23dd381a1 100644 --- a/google/cloud/binaryauthorization/v1beta1/BUILD.bazel +++ b/google/cloud/binaryauthorization/v1beta1/BUILD.bazel @@ -176,10 +176,10 @@ py_gapic_assembly_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -273,7 +273,7 @@ ruby_cloud_gapic_library( "ruby-cloud-env-prefix=BINARY_AUTHORIZATION", "ruby-cloud-gem-name=google-cloud-binary_authorization-v1beta1", "ruby-cloud-product-url=https://cloud.google.com/binary-authorization/", - "ruby-cloud-service-override=BinauthzManagementServiceV1Beta1=BinauthzManagementService", + "ruby-cloud-service-override=BinauthzManagementServiceV1Beta1=BinauthzManagementService;SystemPolicyV1Beta1=SystemPolicy", ], grpc_service_config = "binaryauthorization_grpc_service_config.json", ruby_cloud_description = "Binary Authorization is a service on Google Cloud that provides centralized software supply-chain security for applications that run on Google Kubernetes Engine (GKE) and GKE on-prem.", diff --git a/google/cloud/binaryauthorization/v1beta1/binaryauthorization_v1beta1.yaml b/google/cloud/binaryauthorization/v1beta1/binaryauthorization_v1beta1.yaml index 4405518b0..bfdab20d3 100644 --- a/google/cloud/binaryauthorization/v1beta1/binaryauthorization_v1beta1.yaml +++ b/google/cloud/binaryauthorization/v1beta1/binaryauthorization_v1beta1.yaml @@ -5,6 +5,7 @@ title: Binary Authorization API apis: - name: google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1 +- name: google.cloud.binaryauthorization.v1beta1.SystemPolicyV1Beta1 documentation: summary: |- @@ -21,25 +22,48 @@ documentation: Sets the access control policy on the specified resource. Replaces any existing policy. - Can return Public Errors: NOT_FOUND, INVALID_ARGUMENT and - PERMISSION_DENIED + Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` + errors. - selector: google.iam.v1.IAMPolicy.TestIamPermissions description: |- Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of - permissions, not a NOT_FOUND error. + permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning. +http: + rules: + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + get: '/v1beta1/{resource=projects/*/policy}:getIamPolicy' + additional_bindings: + - get: '/v1beta1/{resource=projects/*/attestors/*}:getIamPolicy' + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + post: '/v1beta1/{resource=projects/*/policy}:setIamPolicy' + body: '*' + additional_bindings: + - post: '/v1beta1/{resource=projects/*/attestors/*}:setIamPolicy' + body: '*' + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + post: '/v1beta1/{resource=projects/*/policy}:testIamPermissions' + body: '*' + additional_bindings: + - post: '/v1beta1/{resource=projects/*/attestors/*}:testIamPermissions' + body: '*' + authentication: rules: - selector: 'google.cloud.binaryauthorization.v1beta1.BinauthzManagementServiceV1Beta1.*' oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.binaryauthorization.v1beta1.SystemPolicyV1Beta1.GetSystemPolicy + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform - selector: 'google.iam.v1.IAMPolicy.*' oauth: canonical_scopes: |- diff --git a/google/cloud/binaryauthorization/v1beta1/resources.proto b/google/cloud/binaryauthorization/v1beta1/resources.proto index ea674a7c1..3e5b638ff 100644 --- a/google/cloud/binaryauthorization/v1beta1/resources.proto +++ b/google/cloud/binaryauthorization/v1beta1/resources.proto @@ -1,4 +1,4 @@ -// Copyright 2021 Google LLC. +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,16 +11,15 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -// syntax = "proto3"; package google.cloud.binaryauthorization.v1beta1; -import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; option cc_enable_arenas = true; option csharp_namespace = "Google.Cloud.BinaryAuthorization.V1Beta1"; @@ -31,22 +30,22 @@ option java_package = "com.google.cloud.binaryauthorization.v1beta1"; option php_namespace = "Google\\Cloud\\BinaryAuthorization\\V1beta1"; option ruby_package = "Google::Cloud::BinaryAuthorization::V1beta1"; -// A [policy][google.cloud.binaryauthorization.v1beta1.Policy] for container -// image binary authorization. +// A [policy][google.cloud.binaryauthorization.v1beta1.Policy] for Binary Authorization. message Policy { option (google.api.resource) = { type: "binaryauthorization.googleapis.com/Policy" pattern: "projects/{project}/policy" + pattern: "locations/{location}/policy" }; enum GlobalPolicyEvaluationMode { // Not specified: DISABLE is assumed. GLOBAL_POLICY_EVALUATION_MODE_UNSPECIFIED = 0; - // Enables global policy evaluation. + // Enables system policy evaluation. ENABLE = 1; - // Disables global policy evaluation. + // Disables system policy evaluation. DISABLE = 2; } @@ -61,14 +60,12 @@ message Policy { // policy for common system-level images. Images not covered by the global // policy will be subject to the project admission policy. This setting // has no effect when specified inside a global admission policy. - GlobalPolicyEvaluationMode global_policy_evaluation_mode = 7 - [(google.api.field_behavior) = OPTIONAL]; + GlobalPolicyEvaluationMode global_policy_evaluation_mode = 7 [(google.api.field_behavior) = OPTIONAL]; // Optional. Admission policy allowlisting. A matching admission request will // always be permitted. This feature is typically used to exclude Google or // third-party infrastructure images from Binary Authorization policies. - repeated AdmissionWhitelistPattern admission_whitelist_patterns = 2 - [(google.api.field_behavior) = OPTIONAL]; + repeated AdmissionWhitelistPattern admission_whitelist_patterns = 2 [(google.api.field_behavior) = OPTIONAL]; // Optional. Per-cluster admission rules. Cluster spec format: // `location.clusterId`. There can be at most one admission rule per cluster @@ -77,38 +74,50 @@ message Policy { // (e.g. us-central1). // For `clusterId` syntax restrictions see // https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters. - map cluster_admission_rules = 3 - [(google.api.field_behavior) = OPTIONAL]; + map cluster_admission_rules = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Per-kubernetes-namespace admission rules. K8s namespace spec format: + // `[a-z.-]+`, e.g. `some-namespace` + map kubernetes_namespace_admission_rules = 10 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Per-kubernetes-service-account admission rules. Service account + // spec format: `namespace:serviceaccount`. e.g. `test-ns:default` + map kubernetes_service_account_admission_rules = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Per-istio-service-identity admission rules. Istio service + // identity spec format: + // `spiffe:///ns//sa/` or + // `/ns//sa/` + // e.g. `spiffe://example.com/ns/test-ns/sa/default` + map istio_service_identity_admission_rules = 9 [(google.api.field_behavior) = OPTIONAL]; // Required. Default admission rule for a cluster without a per-cluster, per- // kubernetes-service-account, or per-istio-service-identity admission rule. - AdmissionRule default_admission_rule = 4 - [(google.api.field_behavior) = REQUIRED]; + AdmissionRule default_admission_rule = 4 [(google.api.field_behavior) = REQUIRED]; // Output only. Time when the policy was last updated. - google.protobuf.Timestamp update_time = 5 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; } -// An [admission allowlist -// pattern][google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern] -// exempts images from checks by [admission -// rules][google.cloud.binaryauthorization.v1beta1.AdmissionRule]. +// An [admission allowlist pattern][google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern] exempts images +// from checks by [admission rules][google.cloud.binaryauthorization.v1beta1.AdmissionRule]. message AdmissionWhitelistPattern { - // An image name pattern to allow, in the form `registry/path/to/image`. + // An image name pattern to allowlist, in the form `registry/path/to/image`. // This supports a trailing `*` as a wildcard, but this is allowed only in - // text after the `registry/` part. + // text after the `registry/` part. `*` wildcard does not match `/`, i.e., + // `gcr.io/nginx*` matches `gcr.io/nginx@latest`, but it does not match + // `gcr.io/nginx/image`. This also supports a trailing `**` wildcard which + // matches subdirectories, i.e., `gcr.io/nginx**` matches + // `gcr.io/nginx/image`. string name_pattern = 1; } -// An [admission rule][google.cloud.binaryauthorization.v1beta1.AdmissionRule] -// specifies either that all container images used in a pod creation request -// must be attested to by one or more -// [attestors][google.cloud.binaryauthorization.v1beta1.Attestor], that all pod -// creations will be allowed, or that all pod creations will be denied. +// An [admission rule][google.cloud.binaryauthorization.v1beta1.AdmissionRule] specifies either that all container images +// used in a pod creation request must be attested to by one or more +// [attestors][google.cloud.binaryauthorization.v1beta1.Attestor], that all pod creations will be allowed, or that all +// pod creations will be denied. // -// Images matching an [admission allowlist -// pattern][google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern] +// Images matching an [admission allowlist pattern][google.cloud.binaryauthorization.v1beta1.AdmissionWhitelistPattern] // are exempted from admission rules and will never block a pod creation. message AdmissionRule { enum EvaluationMode { @@ -119,7 +128,7 @@ message AdmissionRule { ALWAYS_ALLOW = 1; // This rule allows a pod creation if all the attestors listed in - // 'require_attestations_by' have valid attestations for all of the + // `require_attestations_by` have valid attestations for all of the // images in the pod spec. REQUIRE_ATTESTATION = 2; @@ -152,16 +161,15 @@ message AdmissionRule { // // Note: this field must be non-empty when the evaluation_mode field specifies // REQUIRE_ATTESTATION, otherwise it must be empty. - repeated string require_attestations_by = 2 - [(google.api.field_behavior) = OPTIONAL]; + repeated string require_attestations_by = 2 [(google.api.field_behavior) = OPTIONAL]; // Required. The action when a pod creation is denied by the admission rule. EnforcementMode enforcement_mode = 3 [(google.api.field_behavior) = REQUIRED]; } -// An [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] that attests -// to container image artifacts. An existing attestor cannot be modified except -// where indicated. +// An [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] that attests to container image +// artifacts. An existing attestor cannot be modified except where +// indicated. message Attestor { option (google.api.resource) = { type: "binaryauthorization.googleapis.com/Attestor" @@ -176,24 +184,22 @@ message Attestor { // The field may be displayed in chooser dialogs. string description = 6 [(google.api.field_behavior) = OPTIONAL]; - // Required. Identifies an - // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] that attests - // to a container image artifact. This determines how an attestation will be - // stored, and how it will be used during policy enforcement. Updates may not - // change the attestor type, but individual attestor fields may be updated + // Required. Identifies an [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] that attests to a + // container image artifact. This determines how an attestation will + // be stored, and how it will be used during policy + // enforcement. Updates may not change the attestor type, but individual + // attestor fields may be updated. oneof attestor_type { // A Drydock ATTESTATION_AUTHORITY Note, created by the user. UserOwnedDrydockNote user_owned_drydock_note = 3; } // Output only. Time when the attestor was last updated. - google.protobuf.Timestamp update_time = 4 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp update_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; } -// An [user owned drydock -// note][google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote] -// references a Drydock ATTESTATION_AUTHORITY Note created by the user. +// An [user owned drydock note][google.cloud.binaryauthorization.v1beta1.UserOwnedDrydockNote] references a Drydock +// ATTESTATION_AUTHORITY Note created by the user. message UserOwnedDrydockNote { // Required. The Drydock resource name of a ATTESTATION_AUTHORITY Note, // created by the user, in the format: `projects/*/notes/*` (or the legacy @@ -213,8 +219,7 @@ message UserOwnedDrydockNote { // // If this field is empty, this attestor always returns that no // valid attestations exist. - repeated AttestorPublicKey public_keys = 2 - [(google.api.field_behavior) = OPTIONAL]; + repeated AttestorPublicKey public_keys = 2 [(google.api.field_behavior) = OPTIONAL]; // Output only. This field will contain the service account email address // that this Attestor will use as the principal when querying Container @@ -225,8 +230,7 @@ message UserOwnedDrydockNote { // This email address is fixed for the lifetime of the Attestor, but callers // should not make any other assumptions about the service account email; // future versions may use an email based on a different naming pattern. - string delegation_service_account_email = 3 - [(google.api.field_behavior) = OUTPUT_ONLY]; + string delegation_service_account_email = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; } // A public key in the PkixPublicKey format (see @@ -241,6 +245,8 @@ message PkixPublicKey { // See https://cloud.google.com/kms/docs/algorithms. In the future, BinAuthz // might support additional public key types independently of Tink and/or KMS. enum SignatureAlgorithm { + option allow_alias = true; + // Not specified. SIGNATURE_ALGORITHM_UNSPECIFIED = 0; @@ -271,11 +277,20 @@ message PkixPublicKey { // ECDSA on the NIST P-256 curve with a SHA256 digest. ECDSA_P256_SHA256 = 9; + // ECDSA on the NIST P-256 curve with a SHA256 digest. + EC_SIGN_P256_SHA256 = 9; + // ECDSA on the NIST P-384 curve with a SHA384 digest. ECDSA_P384_SHA384 = 10; + // ECDSA on the NIST P-384 curve with a SHA384 digest. + EC_SIGN_P384_SHA384 = 10; + // ECDSA on the NIST P-521 curve with a SHA512 digest. ECDSA_P521_SHA512 = 11; + + // ECDSA on the NIST P-521 curve with a SHA512 digest. + EC_SIGN_P521_SHA512 = 11; } // A PEM-encoded public key, as described in @@ -290,9 +305,8 @@ message PkixPublicKey { SignatureAlgorithm signature_algorithm = 2; } -// An [attestor public -// key][google.cloud.binaryauthorization.v1beta1.AttestorPublicKey] that will be -// used to verify attestations signed by this attestor. +// An [attestor public key][google.cloud.binaryauthorization.v1beta1.AttestorPublicKey] that will be used to verify +// attestations signed by this attestor. message AttestorPublicKey { // Optional. A descriptive comment. This field may be updated. string comment = 1 [(google.api.field_behavior) = OPTIONAL]; diff --git a/google/cloud/binaryauthorization/v1beta1/service.proto b/google/cloud/binaryauthorization/v1beta1/service.proto index 3f6c5abbc..90e63b4d4 100644 --- a/google/cloud/binaryauthorization/v1beta1/service.proto +++ b/google/cloud/binaryauthorization/v1beta1/service.proto @@ -1,4 +1,4 @@ -// Copyright 2019 Google LLC. +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,7 +11,6 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. -// syntax = "proto3"; @@ -44,19 +43,15 @@ option ruby_package = "Google::Cloud::BinaryAuthorization::V1beta1"; // * [Attestor][google.cloud.binaryauthorization.v1beta1.Attestor] service BinauthzManagementServiceV1Beta1 { option (google.api.default_host) = "binaryauthorization.googleapis.com"; - option (google.api.oauth_scopes) = - "https://www.googleapis.com/auth/cloud-platform"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; - // A [policy][google.cloud.binaryauthorization.v1beta1.Policy] specifies the - // [attestors][google.cloud.binaryauthorization.v1beta1.Attestor] that must - // attest to a container image, before the project is allowed to deploy that + // A [policy][google.cloud.binaryauthorization.v1beta1.Policy] specifies the [attestors][google.cloud.binaryauthorization.v1beta1.Attestor] that must attest to + // a container image, before the project is allowed to deploy that // image. There is at most one policy per project. All image admission // requests are permitted if a project has no policy. // - // Gets the [policy][google.cloud.binaryauthorization.v1beta1.Policy] for this - // project. Returns a default - // [policy][google.cloud.binaryauthorization.v1beta1.Policy] if the project - // does not have one. + // Gets the [policy][google.cloud.binaryauthorization.v1beta1.Policy] for this project. Returns a default + // [policy][google.cloud.binaryauthorization.v1beta1.Policy] if the project does not have one. rpc GetPolicy(GetPolicyRequest) returns (Policy) { option (google.api.http) = { get: "/v1beta1/{name=projects/*/policy}" @@ -64,13 +59,11 @@ service BinauthzManagementServiceV1Beta1 { option (google.api.method_signature) = "name"; } - // Creates or updates a project's - // [policy][google.cloud.binaryauthorization.v1beta1.Policy], and returns a - // copy of the new [policy][google.cloud.binaryauthorization.v1beta1.Policy]. - // A policy is always updated as a whole, to avoid race conditions with - // concurrent policy enforcement (or management!) requests. Returns NOT_FOUND - // if the project does not exist, INVALID_ARGUMENT if the request is - // malformed. + // Creates or updates a project's [policy][google.cloud.binaryauthorization.v1beta1.Policy], and returns a copy of the + // new [policy][google.cloud.binaryauthorization.v1beta1.Policy]. A policy is always updated as a whole, to avoid race + // conditions with concurrent policy enforcement (or management!) + // requests. Returns NOT_FOUND if the project does not exist, INVALID_ARGUMENT + // if the request is malformed. rpc UpdatePolicy(UpdatePolicyRequest) returns (Policy) { option (google.api.http) = { put: "/v1beta1/{policy.name=projects/*/policy}" @@ -79,13 +72,10 @@ service BinauthzManagementServiceV1Beta1 { option (google.api.method_signature) = "policy"; } - // Creates an [attestor][google.cloud.binaryauthorization.v1beta1.Attestor], - // and returns a copy of the new - // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor]. Returns - // NOT_FOUND if the project does not exist, INVALID_ARGUMENT if the request is - // malformed, ALREADY_EXISTS if the - // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] already - // exists. + // Creates an [attestor][google.cloud.binaryauthorization.v1beta1.Attestor], and returns a copy of the new + // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor]. Returns NOT_FOUND if the project does not exist, + // INVALID_ARGUMENT if the request is malformed, ALREADY_EXISTS if the + // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] already exists. rpc CreateAttestor(CreateAttestorRequest) returns (Attestor) { option (google.api.http) = { post: "/v1beta1/{parent=projects/*}/attestors" @@ -95,9 +85,7 @@ service BinauthzManagementServiceV1Beta1 { } // Gets an [attestor][google.cloud.binaryauthorization.v1beta1.Attestor]. - // Returns NOT_FOUND if the - // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] does not - // exist. + // Returns NOT_FOUND if the [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] does not exist. rpc GetAttestor(GetAttestorRequest) returns (Attestor) { option (google.api.http) = { get: "/v1beta1/{name=projects/*/attestors/*}" @@ -106,9 +94,7 @@ service BinauthzManagementServiceV1Beta1 { } // Updates an [attestor][google.cloud.binaryauthorization.v1beta1.Attestor]. - // Returns NOT_FOUND if the - // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] does not - // exist. + // Returns NOT_FOUND if the [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] does not exist. rpc UpdateAttestor(UpdateAttestorRequest) returns (Attestor) { option (google.api.http) = { put: "/v1beta1/{attestor.name=projects/*/attestors/*}" @@ -126,10 +112,8 @@ service BinauthzManagementServiceV1Beta1 { option (google.api.method_signature) = "parent"; } - // Deletes an [attestor][google.cloud.binaryauthorization.v1beta1.Attestor]. - // Returns NOT_FOUND if the - // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] does not - // exist. + // Deletes an [attestor][google.cloud.binaryauthorization.v1beta1.Attestor]. Returns NOT_FOUND if the + // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] does not exist. rpc DeleteAttestor(DeleteAttestorRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v1beta1/{name=projects/*/attestors/*}" @@ -140,9 +124,8 @@ service BinauthzManagementServiceV1Beta1 { // Request message for [BinauthzManagementService.GetPolicy][]. message GetPolicyRequest { - // Required. The resource name of the - // [policy][google.cloud.binaryauthorization.v1beta1.Policy] to retrieve, in - // the format `projects/*/policy`. + // Required. The resource name of the [policy][google.cloud.binaryauthorization.v1beta1.Policy] to retrieve, + // in the format `projects/*/policy`. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -151,20 +134,31 @@ message GetPolicyRequest { ]; } +// API for working with the system policy. +service SystemPolicyV1Beta1 { + option (google.api.default_host) = "binaryauthorization.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Gets the current system policy in the specified location. + rpc GetSystemPolicy(GetSystemPolicyRequest) returns (Policy) { + option (google.api.http) = { + get: "/v1beta1/{name=locations/*/policy}" + }; + option (google.api.method_signature) = "name"; + } +} + // Request message for [BinauthzManagementService.UpdatePolicy][]. message UpdatePolicyRequest { - // Required. A new or updated - // [policy][google.cloud.binaryauthorization.v1beta1.Policy] value. The - // service will overwrite the [policy - // name][google.cloud.binaryauthorization.v1beta1.Policy.name] field with the - // resource name in the request URL, in the format `projects/*/policy`. + // Required. A new or updated [policy][google.cloud.binaryauthorization.v1beta1.Policy] value. The service will + // overwrite the [policy name][google.cloud.binaryauthorization.v1beta1.Policy.name] field with the resource name in + // the request URL, in the format `projects/*/policy`. Policy policy = 1 [(google.api.field_behavior) = REQUIRED]; } // Request message for [BinauthzManagementService.CreateAttestor][]. message CreateAttestorRequest { - // Required. The parent of this - // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor]. + // Required. The parent of this [attestor][google.cloud.binaryauthorization.v1beta1.Attestor]. string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -172,23 +166,19 @@ message CreateAttestorRequest { } ]; - // Required. The - // [attestors][google.cloud.binaryauthorization.v1beta1.Attestor] ID. + // Required. The [attestors][google.cloud.binaryauthorization.v1beta1.Attestor] ID. string attestor_id = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. The initial - // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] value. The - // service will overwrite the [attestor - // name][google.cloud.binaryauthorization.v1beta1.Attestor.name] field with - // the resource name, in the format `projects/*/attestors/*`. + // Required. The initial [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] value. The service will + // overwrite the [attestor name][google.cloud.binaryauthorization.v1beta1.Attestor.name] field with the resource name, + // in the format `projects/*/attestors/*`. Attestor attestor = 3 [(google.api.field_behavior) = REQUIRED]; } // Request message for [BinauthzManagementService.GetAttestor][]. message GetAttestorRequest { - // Required. The name of the - // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] to retrieve, - // in the format `projects/*/attestors/*`. + // Required. The name of the [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] to retrieve, in the format + // `projects/*/attestors/*`. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -199,20 +189,16 @@ message GetAttestorRequest { // Request message for [BinauthzManagementService.UpdateAttestor][]. message UpdateAttestorRequest { - // Required. The updated - // [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] value. The - // service will overwrite the [attestor - // name][google.cloud.binaryauthorization.v1beta1.Attestor.name] field with - // the resource name in the request URL, in the format - // `projects/*/attestors/*`. + // Required. The updated [attestor][google.cloud.binaryauthorization.v1beta1.Attestor] value. The service will + // overwrite the [attestor name][google.cloud.binaryauthorization.v1beta1.Attestor.name] field with the resource name + // in the request URL, in the format `projects/*/attestors/*`. Attestor attestor = 1 [(google.api.field_behavior) = REQUIRED]; } // Request message for [BinauthzManagementService.ListAttestors][]. message ListAttestorsRequest { // Required. The resource name of the project associated with the - // [attestors][google.cloud.binaryauthorization.v1beta1.Attestor], in the - // format `projects/*`. + // [attestors][google.cloud.binaryauthorization.v1beta1.Attestor], in the format `projects/*`. string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -225,9 +211,8 @@ message ListAttestorsRequest { int32 page_size = 2; // A token identifying a page of results the server should return. Typically, - // this is the value of - // [ListAttestorsResponse.next_page_token][google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.next_page_token] - // returned from the previous call to the `ListAttestors` method. + // this is the value of [ListAttestorsResponse.next_page_token][google.cloud.binaryauthorization.v1beta1.ListAttestorsResponse.next_page_token] returned + // from the previous call to the `ListAttestors` method. string page_token = 3; } @@ -237,17 +222,15 @@ message ListAttestorsResponse { repeated Attestor attestors = 1; // A token to retrieve the next page of results. Pass this value in the - // [ListAttestorsRequest.page_token][google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest.page_token] - // field in the subsequent call to the `ListAttestors` method to retrieve the - // next page of results. + // [ListAttestorsRequest.page_token][google.cloud.binaryauthorization.v1beta1.ListAttestorsRequest.page_token] field in the subsequent call to the + // `ListAttestors` method to retrieve the next page of results. string next_page_token = 2; } // Request message for [BinauthzManagementService.DeleteAttestor][]. message DeleteAttestorRequest { - // Required. The name of the - // [attestors][google.cloud.binaryauthorization.v1beta1.Attestor] to delete, - // in the format `projects/*/attestors/*`. + // Required. The name of the [attestors][google.cloud.binaryauthorization.v1beta1.Attestor] to delete, in the format + // `projects/*/attestors/*`. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -255,3 +238,15 @@ message DeleteAttestorRequest { } ]; } + +// Request to read the current system policy. +message GetSystemPolicyRequest { + // Required. The resource name, in the format `locations/*/policy`. + // Note that the system policy is not associated with a project. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "binaryauthorization.googleapis.com/Policy" + } + ]; +} diff --git a/google/cloud/channel/BUILD.bazel b/google/cloud/channel/BUILD.bazel new file mode 100644 index 000000000..4f0f35a3c --- /dev/null +++ b/google/cloud/channel/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-channel. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for cloudchannel. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "cloudchannel_ruby_wrapper", + srcs = ["//google/cloud/channel/v1:channel_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-channel", + "ruby-cloud-env-prefix=CHANNEL", + "ruby-cloud-wrapper-of=v1:0.5", + "ruby-cloud-product-url=https://cloud.google.com/channel", + "ruby-cloud-api-id=cloudchannel.googleapis.com", + "ruby-cloud-api-shortname=cloudchannel", + ], + ruby_cloud_description = "You can use Channel Services to manage your relationships with your partners and your customers. Channel Services include a console and APIs to view and provision links between distributors and resellers, customers and entitlements.", + ruby_cloud_title = "Cloud Channel", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-channel-ruby", + deps = [ + ":cloudchannel_ruby_wrapper", + ], +) diff --git a/google/cloud/channel/v1/BUILD.bazel b/google/cloud/channel/v1/BUILD.bazel index e1ff69b0d..dbc6ada2c 100644 --- a/google/cloud/channel/v1/BUILD.bazel +++ b/google/cloud/channel/v1/BUILD.bazel @@ -189,14 +189,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -356,4 +355,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "channel_cc_proto", + deps = [":channel_proto"], +) + +cc_grpc_library( + name = "channel_cc_grpc", + srcs = [":channel_proto"], + grpc_only = True, + deps = [":channel_cc_proto"], +) diff --git a/google/cloud/channel/v1/channel_partner_links.proto b/google/cloud/channel/v1/channel_partner_links.proto index 0b5fc76be..87b05c854 100644 --- a/google/cloud/channel/v1/channel_partner_links.proto +++ b/google/cloud/channel/v1/channel_partner_links.proto @@ -16,10 +16,11 @@ syntax = "proto3"; package google.cloud.channel.v1; +import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; import "google/cloud/channel/v1/common.proto"; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option go_package = "google.golang.org/genproto/googleapis/cloud/channel/v1;channel"; option java_multiple_files = true; @@ -42,7 +43,7 @@ enum ChannelPartnerLinkView { // ChannelPartnerLinkState represents state of a channel partner link. enum ChannelPartnerLinkState { - // The state is not specified. + // Not used. CHANNEL_PARTNER_LINK_STATE_UNSPECIFIED = 0; // An invitation has been sent to the reseller to create a channel partner @@ -62,6 +63,11 @@ enum ChannelPartnerLinkState { // Entity representing a link between distributors and their indirect // resellers in an n-tier resale channel. message ChannelPartnerLink { + option (google.api.resource) = { + type: "cloudchannel.googleapis.com/ChannelPartnerLink" + pattern: "accounts/{account}/channelPartnerLinks/{channel_partner_link}" + }; + // Output only. Resource name for the channel partner link, in the format // accounts/{account_id}/channelPartnerLinks/{id}. string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; diff --git a/google/cloud/channel/v1/cloudchannel_v1.yaml b/google/cloud/channel/v1/cloudchannel_v1.yaml index f8874c5bc..84697af0d 100644 --- a/google/cloud/channel/v1/cloudchannel_v1.yaml +++ b/google/cloud/channel/v1/cloudchannel_v1.yaml @@ -13,6 +13,12 @@ types: - name: google.cloud.channel.v1.SubscriberEvent - name: google.cloud.channel.v1.TransferEntitlementsResponse +documentation: + summary: |- + The Cloud Channel API enables Google Cloud partners to have a single + unified resale platform and APIs across all of Google Cloud including GCP, + Workspace, Maps and Chrome. + http: rules: - selector: google.longrunning.Operations.CancelOperation diff --git a/google/cloud/channel/v1/common.proto b/google/cloud/channel/v1/common.proto index 9f9e697a2..94548abe2 100644 --- a/google/cloud/channel/v1/common.proto +++ b/google/cloud/channel/v1/common.proto @@ -16,9 +16,9 @@ syntax = "proto3"; package google.cloud.channel.v1; +import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; import "google/protobuf/any.proto"; -import "google/api/annotations.proto"; option go_package = "google.golang.org/genproto/googleapis/cloud/channel/v1;channel"; option java_multiple_files = true; @@ -29,7 +29,7 @@ option java_package = "com.google.cloud.channel.v1"; message EduData { // Enum to specify the institute type. enum InstituteType { - // Default value. This state doesn't show unless an error occurs. + // Not used. INSTITUTE_TYPE_UNSPECIFIED = 0; // Elementary/Secondary Schools & Districts @@ -41,7 +41,7 @@ message EduData { // Number of students and staff the institute has. enum InstituteSize { - // Default value. This state doesn't show unless an error occurs. + // Not used. INSTITUTE_SIZE_UNSPECIFIED = 0; // 1 - 100 @@ -80,7 +80,7 @@ message EduData { message CloudIdentityInfo { // CustomerType of the customer enum CustomerType { - // Default value. This state doesn't show unless an error occurs. + // Not used. CUSTOMER_TYPE_UNSPECIFIED = 0; // Domain-owning customer which needs domain verification to use services. diff --git a/google/cloud/channel/v1/customers.proto b/google/cloud/channel/v1/customers.proto index f41d7e0b9..bd0b80f5b 100644 --- a/google/cloud/channel/v1/customers.proto +++ b/google/cloud/channel/v1/customers.proto @@ -16,12 +16,12 @@ syntax = "proto3"; package google.cloud.channel.v1; +import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/cloud/channel/v1/common.proto"; import "google/protobuf/timestamp.proto"; import "google/type/postal_address.proto"; -import "google/api/annotations.proto"; option go_package = "google.golang.org/genproto/googleapis/cloud/channel/v1;channel"; option java_multiple_files = true; @@ -42,36 +42,34 @@ message Customer { // Required. Name of the organization that the customer entity represents. string org_display_name = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. Address of the organization of the customer entity. - // Region and zip codes are required to enforce US laws and embargoes. - // Valid address lines are required for all customers. - // Language code is discarded. Use the Customer-level language code to set the - // customer's language. + // Required. The organization address for the customer. To enforce US laws and + // embargoes, we require a region and zip code. You must provide valid + // addresses for every customer. To set the customer's language, use the + // Customer-level language code. google.type.PostalAddress org_postal_address = 3 [(google.api.field_behavior) = REQUIRED]; // Primary contact info. ContactInfo primary_contact_info = 4; - // Secondary contact email. - // Alternate email and primary contact email are required to have different - // domains if primary contact email is present. - // When creating admin.google.com accounts, users get notified credentials at - // this email. This email address is also used as a recovery email. + // Secondary contact email. You need to provide an alternate email to create + // different domains if a primary contact email already exists. Users will + // receive a notification with credentials when you create an admin.google.com + // account. Secondary emails are also recovery email addresses. Alternate + // emails are optional when you create Team customers. string alternate_email = 5; - // Required. Primary domain used by the customer. - // Domain of primary contact email is required to be same as the provided - // domain. + // Required. The customer's primary domain. Must match the primary contact + // email's domain. string domain = 6 [(google.api.field_behavior) = REQUIRED]; - // Output only. The time at which the customer is created. + // Output only. Time when the customer was created. google.protobuf.Timestamp create_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. The time at which the customer is updated. + // Output only. Time when the customer was updated. google.protobuf.Timestamp update_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. Customer's cloud_identity_id. - // Populated only if a Cloud Identity resource exists for this customer. + // Output only. The customer's Cloud Identity ID if the customer has a Cloud + // Identity resource. string cloud_identity_id = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. The BCP-47 language code, such as "en-US" or "sr-Latn". For more @@ -90,25 +88,24 @@ message Customer { // Contact information for a customer account. message ContactInfo { - // First name of the contact in the customer account. + // The customer account contact's first name. Optional for Team customers. string first_name = 1; - // Last name of the contact in the customer account. + // The customer account contact's last name. Optional for Team customers. string last_name = 2; - // Output only. Display name of the contact in the customer account. - // Populated by combining customer first name and last name. + // Output only. The customer account contact's display name, formatted as a + // combination of the customer's first and last name. string display_name = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Email of the contact in the customer account. - // Email is required for entitlements that need creation of admin.google.com - // accounts. The email will be the username used in credentials to access the - // admin.google.com account. + // The customer account's contact email. Required for entitlements that create + // admin.google.com accounts, and serves as the customer's username for those + // accounts. Use this email to invite Team customers. string email = 5; - // Optional. Job title of the contact in the customer account. + // Optional. The customer account contact's job title. string title = 6 [(google.api.field_behavior) = OPTIONAL]; - // Phone number of the contact in the customer account. + // The customer account's contact phone number. string phone = 7; } diff --git a/google/cloud/channel/v1/entitlements.proto b/google/cloud/channel/v1/entitlements.proto index d241722e2..271e4b000 100644 --- a/google/cloud/channel/v1/entitlements.proto +++ b/google/cloud/channel/v1/entitlements.proto @@ -16,6 +16,7 @@ syntax = "proto3"; package google.cloud.channel.v1; +import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/cloud/channel/v1/common.proto"; @@ -23,7 +24,6 @@ import "google/cloud/channel/v1/offers.proto"; import "google/cloud/channel/v1/products.proto"; import "google/protobuf/timestamp.proto"; import "google/protobuf/wrappers.proto"; -import "google/api/annotations.proto"; option go_package = "google.golang.org/genproto/googleapis/cloud/channel/v1;channel"; option java_multiple_files = true; @@ -39,7 +39,7 @@ message Entitlement { // Indicates the current provisioning state of the entitlement. enum ProvisioningState { - // Default value. This state doesn't show unless an error occurs. + // Not used. PROVISIONING_STATE_UNSPECIFIED = 0; // The entitlement is currently active. @@ -51,7 +51,7 @@ message Entitlement { // Suspension reason for an entitlement if [provisioning_state][google.cloud.channel.v1.Entitlement.provisioning_state] = SUSPENDED. enum SuspensionReason { - // Default value. This state doesn't show unless an error occurs. + // Not used. SUSPENSION_REASON_UNSPECIFIED = 0; // Entitlement was manually suspended by the Reseller. @@ -116,8 +116,16 @@ message Entitlement { AssociationInfo association_info = 23; // Extended entitlement parameters. When creating an entitlement, valid - // parameters' names and values are defined in the offer's parameter - // definitions. + // parameter names and values are defined in the + // [Offer.parameter_definitions][google.cloud.channel.v1.Offer.parameter_definitions]. + // + // The response may include the following output-only Parameters: + // + // - assigned_units: The number of licenses assigned to users. + // + // - max_units: The maximum assignable units for a flexible offer. + // + // - num_units: The total commitment for commitment-based offers. repeated Parameter parameters = 26; } @@ -218,7 +226,7 @@ message TransferableSku { message TransferEligibility { // Reason of ineligibility. enum Reason { - // Reason is not available. + // Not used. REASON_UNSPECIFIED = 0; // Reseller needs to accept TOS before transferring the SKU. diff --git a/google/cloud/channel/v1/offers.proto b/google/cloud/channel/v1/offers.proto index b566e8c6a..42c8c16f4 100644 --- a/google/cloud/channel/v1/offers.proto +++ b/google/cloud/channel/v1/offers.proto @@ -16,13 +16,13 @@ syntax = "proto3"; package google.cloud.channel.v1; +import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/cloud/channel/v1/common.proto"; import "google/cloud/channel/v1/products.proto"; import "google/protobuf/timestamp.proto"; import "google/type/money.proto"; -import "google/api/annotations.proto"; option go_package = "google.golang.org/genproto/googleapis/cloud/channel/v1;channel"; option java_multiple_files = true; diff --git a/google/cloud/channel/v1/operations.proto b/google/cloud/channel/v1/operations.proto index 1d66d502e..72e332164 100644 --- a/google/cloud/channel/v1/operations.proto +++ b/google/cloud/channel/v1/operations.proto @@ -27,7 +27,7 @@ option java_package = "com.google.cloud.channel.v1"; message OperationMetadata { // RPCs that return a Long Running Operation. enum OperationType { - // Default value. This state doesn't show unless an error occurs. + // Not used. OPERATION_TYPE_UNSPECIFIED = 0; // Long Running Operation was triggered by CreateEntitlement. diff --git a/google/cloud/channel/v1/products.proto b/google/cloud/channel/v1/products.proto index ee37f85de..6be7c0bbf 100644 --- a/google/cloud/channel/v1/products.proto +++ b/google/cloud/channel/v1/products.proto @@ -16,8 +16,8 @@ syntax = "proto3"; package google.cloud.channel.v1; -import "google/api/resource.proto"; import "google/api/annotations.proto"; +import "google/api/resource.proto"; option go_package = "google.golang.org/genproto/googleapis/cloud/channel/v1;channel"; option java_multiple_files = true; diff --git a/google/cloud/channel/v1/service.proto b/google/cloud/channel/v1/service.proto index d8954ee77..cf10b165a 100644 --- a/google/cloud/channel/v1/service.proto +++ b/google/cloud/channel/v1/service.proto @@ -71,10 +71,13 @@ service CloudChannelService { rpc ListCustomers(ListCustomersRequest) returns (ListCustomersResponse) { option (google.api.http) = { get: "/v1/{parent=accounts/*}/customers" + additional_bindings { + get: "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers" + } }; } - // Returns a requested [Customer][google.cloud.channel.v1.Customer] resource. + // Returns the requested [Customer][google.cloud.channel.v1.Customer] resource. // // Possible error codes: // @@ -89,6 +92,9 @@ service CloudChannelService { rpc GetCustomer(GetCustomerRequest) returns (Customer) { option (google.api.http) = { get: "/v1/{name=accounts/*/customers/*}" + additional_bindings { + get: "/v1/{name=accounts/*/channelPartnerLinks/*/customers/*}" + } }; option (google.api.method_signature) = "name"; } @@ -133,6 +139,10 @@ service CloudChannelService { option (google.api.http) = { post: "/v1/{parent=accounts/*}/customers" body: "customer" + additional_bindings { + post: "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers" + body: "customer" + } }; } @@ -152,10 +162,14 @@ service CloudChannelService { option (google.api.http) = { patch: "/v1/{customer.name=accounts/*/customers/*}" body: "customer" + additional_bindings { + patch: "/v1/{customer.name=accounts/*/channelPartnerLinks/*/customers/*}" + body: "customer" + } }; } - // Deletes the given [Customer][google.cloud.channel.v1.Customer] permanently and irreversibly. + // Deletes the given [Customer][google.cloud.channel.v1.Customer] permanently. // // Possible error codes: // @@ -167,10 +181,41 @@ service CloudChannelService { rpc DeleteCustomer(DeleteCustomerRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v1/{name=accounts/*/customers/*}" + additional_bindings { + delete: "/v1/{name=accounts/*/channelPartnerLinks/*/customers/*}" + } }; option (google.api.method_signature) = "name"; } + // Imports a [Customer][google.cloud.channel.v1.Customer] from the Cloud Identity associated with the provided + // Cloud Identity ID or domain before a TransferEntitlements call. If a + // linked Customer already exists and overwrite_if_exists is true, it will + // update that Customer's data. + // + // Possible error codes: + // + // * PERMISSION_DENIED: The reseller account making the request is different + // from the reseller account in the API request. + // * NOT_FOUND: Cloud Identity doesn't exist or was deleted. + // * INVALID_ARGUMENT: Required parameters are missing, or the auth_token is + // expired or invalid. + // * ALREADY_EXISTS: A customer already exists and has conflicting critical + // fields. Requires an overwrite. + // + // Return value: + // The [Customer][google.cloud.channel.v1.Customer]. + rpc ImportCustomer(ImportCustomerRequest) returns (Customer) { + option (google.api.http) = { + post: "/v1/{parent=accounts/*}/customers:import" + body: "*" + additional_bindings { + post: "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers:import" + body: "*" + } + }; + } + // Creates a Cloud Identity for the given customer using the customer's // information, or the information provided here. // @@ -268,7 +313,7 @@ service CloudChannelService { }; } - // Returns a requested [Entitlement][google.cloud.channel.v1.Entitlement] resource. + // Returns the requested [Entitlement][google.cloud.channel.v1.Entitlement] resource. // // Possible error codes: // @@ -670,7 +715,7 @@ service CloudChannelService { }; } - // Returns a requested [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource. + // Returns the requested [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource. // You must be a distributor to call this method. // // Possible error codes: @@ -746,6 +791,22 @@ service CloudChannelService { }; } + // Returns the requested [Offer][google.cloud.channel.v1.Offer] resource. + // + // Possible error codes: + // + // * PERMISSION_DENIED: The entitlement doesn't belong to the reseller. + // * INVALID_ARGUMENT: Required request parameters are missing or invalid. + // * NOT_FOUND: Entitlement or offer was not found. + // + // Return value: + // The [Offer][google.cloud.channel.v1.Offer] resource. + rpc LookupOffer(LookupOfferRequest) returns (Offer) { + option (google.api.http) = { + get: "/v1/{entitlement=accounts/*/customers/*/entitlements/*}:lookupOffer" + }; + } + // Lists the Products the reseller is authorized to sell. // // Possible error codes: @@ -993,6 +1054,52 @@ message DeleteCustomerRequest { ]; } +// Request message for [CloudChannelService.ImportCustomer][google.cloud.channel.v1.CloudChannelService.ImportCustomer] +message ImportCustomerRequest { + // Specifies the identity of the transfer customer. + // A customer's cloud_identity_id or domain is required to look up the + // customer's Cloud Identity. For Team customers, only the cloud_identity_id + // option is valid. + oneof customer_identity { + // Required. Customer domain. + string domain = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Customer's Cloud Identity ID + string cloud_identity_id = 3 [(google.api.field_behavior) = REQUIRED]; + } + + // Required. The resource name of the reseller's account. + // Parent takes the format: accounts/{account_id} or + // accounts/{account_id}/channelPartnerLinks/{channel_partner_id} + string parent = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The super admin of the resold customer generates this token to + // authorize a reseller to access their Cloud Identity and purchase + // entitlements on their behalf. You can omit this token after authorization. + // See https://support.google.com/a/answer/7643790 for more details. + string auth_token = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Required. Choose to overwrite an existing customer if found. + // This must be set to true if there is an existing customer with a + // conflicting region code or domain. + bool overwrite_if_exists = 5 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Cloud Identity ID of a channel partner who will be the direct reseller for + // the customer's order. This field is required for 2-tier transfer scenarios + // and can be provided via the request Parent binding as well. + string channel_partner_id = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Specifies the customer that will receive imported Cloud Identity + // information. + // Format: accounts/{account_id}/customers/{customer_id} + string customer = 7 [ + (google.api.field_behavior) = OPTIONAL, + (google.api.resource_reference) = { + type: "cloudchannel.googleapis.com/Customer" + } + ]; +} + // Request message for [CloudChannelService.ProvisionCloudIdentity][google.cloud.channel.v1.CloudChannelService.ProvisionCloudIdentity] message ProvisionCloudIdentityRequest { // Required. Resource name of the customer. @@ -1345,6 +1452,9 @@ message ChangeParametersRequest { string name = 1 [(google.api.field_behavior) = REQUIRED]; // Required. Entitlement parameters to update. You can only change editable parameters. + // + // To view the available Parameters for a request, refer to the + // [Offer.parameter_definitions][google.cloud.channel.v1.Offer.parameter_definitions] from the desired offer. repeated Parameter parameters = 2 [(google.api.field_behavior) = REQUIRED]; // Optional. You can specify an optional unique request ID, and if you need to retry @@ -1404,7 +1514,8 @@ message ChangeOfferRequest { } ]; - // Optional. Parameters needed to purchase the Offer. + // Optional. Parameters needed to purchase the Offer. To view the available Parameters + // refer to the [Offer.parameter_definitions][google.cloud.channel.v1.Offer.parameter_definitions] from the desired offer. repeated Parameter parameters = 3 [(google.api.field_behavior) = OPTIONAL]; // Optional. Purchase order id provided by the reseller. @@ -1508,6 +1619,19 @@ message ActivateEntitlementRequest { string request_id = 3 [(google.api.field_behavior) = OPTIONAL]; } +// Request message for LookupOffer. +message LookupOfferRequest { + // Required. The resource name of the entitlement to retrieve the Offer. + // Entitlement uses the format: + // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id} + string entitlement = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "cloudchannel.googleapis.com/Entitlement" + } + ]; +} + // Request message for ListProducts. message ListProductsRequest { // Required. The resource name of the reseller account. diff --git a/google/cloud/channel/v1/subscriber_event.proto b/google/cloud/channel/v1/subscriber_event.proto index a45c47e7d..df7f07aa0 100644 --- a/google/cloud/channel/v1/subscriber_event.proto +++ b/google/cloud/channel/v1/subscriber_event.proto @@ -16,8 +16,8 @@ syntax = "proto3"; package google.cloud.channel.v1; -import "google/api/resource.proto"; import "google/api/annotations.proto"; +import "google/api/resource.proto"; option go_package = "google.golang.org/genproto/googleapis/cloud/channel/v1;channel"; option java_multiple_files = true; @@ -28,7 +28,7 @@ option java_package = "com.google.cloud.channel.v1"; message CustomerEvent { // Type of customer event. enum Type { - // Default value. This state doesn't show unless an error occurs. + // Not used. TYPE_UNSPECIFIED = 0; // Primary domain for customer was changed. @@ -52,7 +52,7 @@ message CustomerEvent { message EntitlementEvent { // Type of entitlement event. enum Type { - // Default value. This state doesn't show unless an error occurs. + // Not used. TYPE_UNSPECIFIED = 0; // A new entitlement was created. @@ -90,6 +90,9 @@ message EntitlementEvent { // License was assigned to or revoked from a user. LICENSE_ASSIGNMENT_CHANGED = 12; + + // License cap was changed for the entitlement. + LICENSE_CAP_CHANGED = 13; } // Resource name of an entitlement of the form: diff --git a/google/cloud/clouddms/BUILD.bazel b/google/cloud/clouddms/BUILD.bazel index e69de29bb..31de45a5c 100644 --- a/google/cloud/clouddms/BUILD.bazel +++ b/google/cloud/clouddms/BUILD.bazel @@ -0,0 +1,41 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-cloud_dms. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for datamigration. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "datamigration_ruby_wrapper", + srcs = ["//google/cloud/clouddms/v1:clouddms_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-cloud_dms", + "ruby-cloud-env-prefix=DATABASE_MIGRATION", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/database-migration/", + "ruby-cloud-api-id=datamigration.googleapis.com", + "ruby-cloud-api-shortname=datamigration", + "ruby-cloud-namespace-override=CloudDms=CloudDMS", + ], + ruby_cloud_description = "Database Migration Service makes it easier for you to migrate your data to Google Cloud. Database Migration Service helps you lift and shift your MySQL and PostgreSQL workloads into Cloud SQL. Database Migration Service streamlines networking workflow, manages the initial snapshot and ongoing replication, and provides a status of the migration operation.", + ruby_cloud_title = "Cloud Database Migration Service", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-clouddms-ruby", + deps = [ + ":datamigration_ruby_wrapper", + ], +) diff --git a/google/cloud/clouddms/logging/v1/BUILD.bazel b/google/cloud/clouddms/logging/v1/BUILD.bazel index 93768bc80..13ec60c46 100644 --- a/google/cloud/clouddms/logging/v1/BUILD.bazel +++ b/google/cloud/clouddms/logging/v1/BUILD.bazel @@ -83,7 +83,6 @@ moved_proto_library( py_proto_library( name = "logging_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":logging_moved_proto"], ) @@ -95,12 +94,11 @@ py_grpc_library( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -166,4 +164,20 @@ csharp_grpc_library( ############################################################################## # C++ ############################################################################## -# Put your C++ code here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "logging_cc_proto", + deps = [":logging_proto"], +) + +cc_grpc_library( + name = "logging_cc_grpc", + srcs = [":logging_proto"], + grpc_only = True, + deps = [":logging_cc_proto"], +) diff --git a/google/cloud/clouddms/logging/v1/clouddms_platform_logs.proto b/google/cloud/clouddms/logging/v1/clouddms_platform_logs.proto index 4a2496d7e..ebefd3010 100644 --- a/google/cloud/clouddms/logging/v1/clouddms_platform_logs.proto +++ b/google/cloud/clouddms/logging/v1/clouddms_platform_logs.proto @@ -82,7 +82,7 @@ message LoggedMigrationJob { // The migration job is being created. CREATING = 3; - // The migration job is created, not started and is fully editable. + // The migration job is created and not started. NOT_STARTED = 4; // The migration job is running diff --git a/google/cloud/clouddms/v1/BUILD.bazel b/google/cloud/clouddms/v1/BUILD.bazel index ff19ebd3d..380004828 100644 --- a/google/cloud/clouddms/v1/BUILD.bazel +++ b/google/cloud/clouddms/v1/BUILD.bazel @@ -170,16 +170,12 @@ py_gapic_library( name = "clouddms_py_gapic", srcs = [":clouddms_proto"], grpc_service_config = "library_grpc_service_config.json", - opt_args = [ - "warehouse-package-name=google-cloud-database-migration", - "python-gapic-namespace=google.cloud", - "python-gapic-name=database_migration", - ], + opt_args = ["warehouse-package-name=google-cloud-dms"] ) # Open Source Packages py_gapic_assembly_pkg( - name = "google-cloud-database-migration-v1-py", + name = "clouddms-v1-py", deps = [ ":clouddms_py_gapic", ], @@ -209,10 +205,8 @@ php_grpc_library( php_gapic_library( name = "clouddms_php_gapic", - src = ":clouddms_proto_with_info", - gapic_yaml = "datamigration_gapic.yaml", + srcs = [":clouddms_proto_with_info"], grpc_service_config = "library_grpc_service_config.json", - package = "google.cloud.clouddms.v1", service_yaml = "datamigration_v1.yaml", deps = [ ":clouddms_php_grpc", @@ -241,7 +235,7 @@ load( nodejs_gapic_library( name = "clouddms_nodejs_gapic", - package_name = "@google-cloud/clouddms", + package_name = "@google-cloud/dms", src = ":clouddms_proto_with_info", extra_protoc_parameters = ["metadata"], grpc_service_config = "library_grpc_service_config.json", @@ -283,8 +277,18 @@ ruby_grpc_library( ruby_cloud_gapic_library( name = "clouddms_ruby_gapic", srcs = [":clouddms_proto_with_info"], - extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-clouddms-v1"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-cloud_dms-v1", + "ruby-cloud-gem-namespace=Google::Cloud::CloudDMS::V1", + "ruby-cloud-env-prefix=DATABASE_MIGRATION", + "ruby-cloud-product-url=https://cloud.google.com/database-migration/", + "ruby-cloud-api-id=datamigration.googleapis.com", + "ruby-cloud-api-shortname=datamigration", + "ruby-cloud-namespace-override=CloudDms=CloudDMS", + ], grpc_service_config = "library_grpc_service_config.json", + ruby_cloud_description = "Database Migration Service makes it easier for you to migrate your data to Google Cloud. Database Migration Service helps you lift and shift your MySQL and PostgreSQL workloads into Cloud SQL. Database Migration Service streamlines networking workflow, manages the initial snapshot and ongoing replication, and provides a status of the migration operation.", + ruby_cloud_title = "Cloud Database Migration Service V1", deps = [ ":clouddms_ruby_grpc", ":clouddms_ruby_proto", @@ -347,4 +351,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "clouddms_cc_proto", + deps = [":clouddms_proto"], +) + +cc_grpc_library( + name = "clouddms_cc_grpc", + srcs = [":clouddms_proto"], + grpc_only = True, + deps = [":clouddms_cc_proto"], +) diff --git a/google/cloud/clouddms/v1/clouddms.proto b/google/cloud/clouddms/v1/clouddms.proto index 44281b62f..a8e3e74c6 100644 --- a/google/cloud/clouddms/v1/clouddms.proto +++ b/google/cloud/clouddms/v1/clouddms.proto @@ -313,7 +313,7 @@ message CreateMigrationJobRequest { string migration_job_id = 2 [(google.api.field_behavior) = REQUIRED]; // Required. Represents a [migration - // job](https://cloud.google.com/database-migration/reference/rest/v1/projects.locations.migrationJobs) + // job](https://cloud.google.com/database-migration/docs/reference/rest/v1/projects.locations.migrationJobs) // object. MigrationJob migration_job = 3 [(google.api.field_behavior) = REQUIRED]; diff --git a/google/cloud/clouddms/v1/clouddms_resources.proto b/google/cloud/clouddms/v1/clouddms_resources.proto index 9095a02dc..1032e18ab 100644 --- a/google/cloud/clouddms/v1/clouddms_resources.proto +++ b/google/cloud/clouddms/v1/clouddms_resources.proto @@ -390,7 +390,7 @@ message MigrationJob { // The migration job is being created. CREATING = 3; - // The migration job is created, not started and is fully editable. + // The migration job is created and not started. NOT_STARTED = 4; // The migration job is running. diff --git a/google/cloud/clouddms/v1/datamigration_gapic.yaml b/google/cloud/clouddms/v1/datamigration_gapic.yaml deleted file mode 100644 index dbfdb9dec..000000000 --- a/google/cloud/clouddms/v1/datamigration_gapic.yaml +++ /dev/null @@ -1,18 +0,0 @@ -type: com.google.api.codegen.ConfigProto -config_schema_version: 2.0.0 -language_settings: - java: - package_name: com.google.cloud.clouddms.v1 - python: - package_name: google.cloud.clouddms_v1.gapic - go: - package_name: cloud.google.com/go/clouddms/apiv1 - csharp: - package_name: Google.Cloud.CloudDms.V1 - ruby: - package_name: Google::Cloud::CloudDMS::V1 - php: - package_name: Google\Cloud\CloudDms\V1 - nodejs: - package_name: clouddms.v1 - domain_layer_location: google-cloud diff --git a/google/cloud/common/BUILD.bazel b/google/cloud/common/BUILD.bazel new file mode 100644 index 000000000..860f46421 --- /dev/null +++ b/google/cloud/common/BUILD.bazel @@ -0,0 +1,179 @@ +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "common_proto", + srcs = [ + "operation_metadata.proto", + ], + deps = [ + "//google/api:field_behavior_proto", + "@com_google_protobuf//:timestamp_proto", + ], +) + +proto_library_with_info( + name = "common_proto_with_info", + deps = [ + ":common_proto", + "//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "common_java_proto", + deps = [":common_proto"], +) + +java_grpc_library( + name = "common_java_grpc", + srcs = [":common_proto"], + deps = [":common_java_proto"], +) + +############################################################################## +# Go +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_proto_library", +) + +go_proto_library( + name = "common_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/cloud/common", + protos = [":common_proto"], + deps = [ + "//google/api:annotations_go_proto", + ], +) + + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "common_php_proto", + deps = [":common_proto"], +) + +php_grpc_library( + name = "common_php_grpc", + srcs = [":common_proto"], + deps = [":common_php_proto"], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "common_py_gapic", + srcs = [":common_proto"], +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "common-py", + deps = [ + ":common_py_gapic", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "common_ruby_proto", + deps = [":common_proto"], +) + +ruby_grpc_library( + name = "common_ruby_grpc", + srcs = [":common_proto"], + deps = [":common_ruby_proto"], +) + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "common_csharp_proto", + deps = [":common_proto"], +) + +csharp_grpc_library( + name = "common_csharp_grpc", + srcs = [":common_proto"], + deps = [":common_csharp_proto"], +) + +csharp_gapic_assembly_pkg( + name = "google-cloud-common-csharp", + package_name = "Google.Cloud.Common", + generate_nongapic_package = True, + deps = [ + ":common_csharp_grpc", + ":common_csharp_proto", + ], +) + +############################################################################## +# C++ +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "common_cc_proto", + deps = [":common_proto"], +) + +cc_grpc_library( + name = "common_cc_grpc", + srcs = [":common_proto"], + grpc_only = True, + deps = [":common_cc_proto"], +) diff --git a/google/cloud/common/common.yaml b/google/cloud/common/common.yaml new file mode 100644 index 000000000..606d7f65e --- /dev/null +++ b/google/cloud/common/common.yaml @@ -0,0 +1,7 @@ +type: google.api.Service +config_version: 3 +name: common.googleapis.com +title: Common Operation Metadata type + +types: +- name: google.cloud.common.OperationMetadata diff --git a/google/cloud/common/operation_metadata.proto b/google/cloud/common/operation_metadata.proto new file mode 100644 index 000000000..24300e36f --- /dev/null +++ b/google/cloud/common/operation_metadata.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.common; + +import "google/api/field_behavior.proto"; +import "google/protobuf/timestamp.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/common;common"; +option java_multiple_files = true; +option java_package = "com.google.cloud.common"; + +// Represents the metadata of the long-running operation. +message OperationMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 + [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Server-defined resource path for the target of the operation. + string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the verb executed by the operation. + string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Human-readable status of the operation, if any. + string status_detail = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies whether the user has requested cancellation + // of the operation. Operations that have successfully been cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][] of 1, + // corresponding to `Code.CANCELLED`. + bool cancel_requested = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. API version used to start the operation. + string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/cloud/compute/BUILD.bazel b/google/cloud/compute/BUILD.bazel new file mode 100644 index 000000000..33a48dc30 --- /dev/null +++ b/google/cloud/compute/BUILD.bazel @@ -0,0 +1,41 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-compute. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for compute. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "compute_ruby_wrapper", + srcs = ["//google/cloud/compute/v1:compute_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-compute", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/compute/", + "ruby-cloud-api-id=compute.googleapis.com", + "ruby-cloud-api-shortname=compute", + "ruby-cloud-generate-transports=rest", + "ruby-cloud-env-prefix=COMPUTE", + ], + ruby_cloud_description = "google-cloud-compute is the official client library for the Google Cloud Compute API.", + ruby_cloud_title = "Google Cloud Compute", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-compute-ruby", + deps = [ + ":compute_ruby_wrapper", + ], +) diff --git a/google/cloud/compute/v1/BUILD.bazel b/google/cloud/compute/v1/BUILD.bazel new file mode 100644 index 000000000..608e75b4d --- /dev/null +++ b/google/cloud/compute/v1/BUILD.bazel @@ -0,0 +1,395 @@ +# This file was automatically generated by BuildFileGenerator + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +exports_files(glob(include = ["*grpc_service_config.json"])) + +############################################################################## +# Discovery +############################################################################## +load( + "@com_google_disco_to_proto3_converter//rules_gapic:disco_to_proto.bzl", + "gapic_yaml_from_disco", + "grpc_service_config_from_disco", + "proto_from_disco", +) + +_MESSAGE_IGNORE_LIST = [ + "HttpHealthCheck", + "HttpsHealthCheck", + "HttpHealthCheckList", + "HttpsHealthCheckList", + "GetHttpHealthCheckRequest", + "GetHttpsHealthCheckRequest", + "PatchHttpHealthCheckRequest", + "PatchHttpsHealthCheckRequest", + "UpdateHttpHealthCheckRequest", + "UpdateHttpsHealthCheckRequest", + "InsertHttpHealthCheckRequest", + "InsertHttpsHealthCheckRequest", + "ListHttpHealthChecksRequest", + "ListHttpsHealthChecksRequest", + "DeleteHttpHealthCheckRequest", + "DeleteHttpsHealthCheckRequest", +] + +_SERVICE_IGNORELIST = [ + "HttpHealthChecks", + "HttpsHealthChecks", +] + +proto_from_disco( + name = "compute_gen", + src = "compute.v1.json", + enums_as_strings = True, + message_ignorelist = _MESSAGE_IGNORE_LIST, + service_ignorelist = _SERVICE_IGNORELIST, +) + +grpc_service_config_from_disco( + name = "compute_grpc_service_config_gen", + src = "compute.v1.json", + message_ignorelist = _MESSAGE_IGNORE_LIST, + service_ignorelist = _SERVICE_IGNORELIST, +) + +gapic_yaml_from_disco( + name = "compute_gapic_gen", + src = "compute.v1.json", + message_ignorelist = _MESSAGE_IGNORE_LIST, + service_ignorelist = _SERVICE_IGNORELIST, +) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "compute_proto", + srcs = [ + "compute.proto", + ], + deps = [ + "@com_google_googleapis//google/api:annotations_proto", + "@com_google_googleapis//google/api:client_proto", + "@com_google_googleapis//google/api:field_behavior_proto", + "@com_google_googleapis//google/api:resource_proto", + "@com_google_googleapis//google/cloud:extended_operations_proto", + "@com_google_protobuf//:descriptor_proto", + ], +) + +proto_library_with_info( + name = "compute_proto_with_info", + deps = [ + ":compute_proto", + "@com_google_googleapis//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "compute_java_proto", + deps = [":compute_proto"], +) + +java_gapic_library( + name = "compute_java_gapic", + srcs = [":compute_proto_with_info"], + gapic_yaml = "compute_gapic.yaml", + grpc_service_config = ":compute_grpc_service_config.json", + test_deps = [], + transport = "rest", + deps = [ + ":compute_java_proto", + ], +) + +java_gapic_test( + name = "compute_java_gapic_test_suite", + test_classes = [ + "com.google.cloud.compute.v1.AcceleratorTypesClientTest", + "com.google.cloud.compute.v1.AddressesClientTest", + "com.google.cloud.compute.v1.AutoscalersClientTest", + "com.google.cloud.compute.v1.BackendBucketsClientTest", + "com.google.cloud.compute.v1.BackendServicesClientTest", + "com.google.cloud.compute.v1.DiskTypesClientTest", + "com.google.cloud.compute.v1.DisksClientTest", + "com.google.cloud.compute.v1.ExternalVpnGatewaysClientTest", + "com.google.cloud.compute.v1.FirewallPoliciesClientTest", + "com.google.cloud.compute.v1.FirewallsClientTest", + "com.google.cloud.compute.v1.ForwardingRulesClientTest", + "com.google.cloud.compute.v1.GlobalAddressesClientTest", + "com.google.cloud.compute.v1.GlobalForwardingRulesClientTest", + "com.google.cloud.compute.v1.GlobalNetworkEndpointGroupsClientTest", + "com.google.cloud.compute.v1.GlobalOperationsClientTest", + "com.google.cloud.compute.v1.GlobalOrganizationOperationsClientTest", + "com.google.cloud.compute.v1.GlobalPublicDelegatedPrefixesClientTest", + "com.google.cloud.compute.v1.HealthChecksClientTest", + "com.google.cloud.compute.v1.ImageFamilyViewsClientTest", + "com.google.cloud.compute.v1.ImagesClientTest", + "com.google.cloud.compute.v1.InstanceGroupManagersClientTest", + "com.google.cloud.compute.v1.InstanceGroupsClientTest", + "com.google.cloud.compute.v1.InstanceTemplatesClientTest", + "com.google.cloud.compute.v1.InstancesClientTest", + "com.google.cloud.compute.v1.InterconnectAttachmentsClientTest", + "com.google.cloud.compute.v1.InterconnectLocationsClientTest", + "com.google.cloud.compute.v1.InterconnectsClientTest", + "com.google.cloud.compute.v1.LicenseCodesClientTest", + "com.google.cloud.compute.v1.LicensesClientTest", + "com.google.cloud.compute.v1.MachineTypesClientTest", + "com.google.cloud.compute.v1.NetworkEndpointGroupsClientTest", + "com.google.cloud.compute.v1.NetworksClientTest", + "com.google.cloud.compute.v1.NodeGroupsClientTest", + "com.google.cloud.compute.v1.NodeTemplatesClientTest", + "com.google.cloud.compute.v1.NodeTypesClientTest", + "com.google.cloud.compute.v1.PacketMirroringsClientTest", + "com.google.cloud.compute.v1.ProjectsClientTest", + "com.google.cloud.compute.v1.PublicAdvertisedPrefixesClientTest", + "com.google.cloud.compute.v1.PublicDelegatedPrefixesClientTest", + "com.google.cloud.compute.v1.RegionAutoscalersClientTest", + "com.google.cloud.compute.v1.RegionBackendServicesClientTest", + "com.google.cloud.compute.v1.RegionCommitmentsClientTest", + "com.google.cloud.compute.v1.RegionDiskTypesClientTest", + "com.google.cloud.compute.v1.RegionDisksClientTest", + "com.google.cloud.compute.v1.RegionHealthCheckServicesClientTest", + "com.google.cloud.compute.v1.RegionHealthChecksClientTest", + "com.google.cloud.compute.v1.RegionInstanceGroupManagersClientTest", + "com.google.cloud.compute.v1.RegionInstanceGroupsClientTest", + "com.google.cloud.compute.v1.RegionInstancesClientTest", + "com.google.cloud.compute.v1.RegionNetworkEndpointGroupsClientTest", + "com.google.cloud.compute.v1.RegionNotificationEndpointsClientTest", + "com.google.cloud.compute.v1.RegionOperationsClientTest", + "com.google.cloud.compute.v1.RegionSslCertificatesClientTest", + "com.google.cloud.compute.v1.RegionTargetHttpProxiesClientTest", + "com.google.cloud.compute.v1.RegionTargetHttpsProxiesClientTest", + "com.google.cloud.compute.v1.RegionUrlMapsClientTest", + "com.google.cloud.compute.v1.RegionsClientTest", + "com.google.cloud.compute.v1.ReservationsClientTest", + "com.google.cloud.compute.v1.ResourcePoliciesClientTest", + "com.google.cloud.compute.v1.RoutersClientTest", + "com.google.cloud.compute.v1.RoutesClientTest", + "com.google.cloud.compute.v1.SecurityPoliciesClientTest", + "com.google.cloud.compute.v1.ServiceAttachmentsClientTest", + "com.google.cloud.compute.v1.SnapshotsClientTest", + "com.google.cloud.compute.v1.SslCertificatesClientTest", + "com.google.cloud.compute.v1.SslPoliciesClientTest", + "com.google.cloud.compute.v1.SubnetworksClientTest", + "com.google.cloud.compute.v1.TargetGrpcProxiesClientTest", + "com.google.cloud.compute.v1.TargetHttpProxiesClientTest", + "com.google.cloud.compute.v1.TargetHttpsProxiesClientTest", + "com.google.cloud.compute.v1.TargetInstancesClientTest", + "com.google.cloud.compute.v1.TargetPoolsClientTest", + "com.google.cloud.compute.v1.TargetSslProxiesClientTest", + "com.google.cloud.compute.v1.TargetTcpProxiesClientTest", + "com.google.cloud.compute.v1.TargetVpnGatewaysClientTest", + "com.google.cloud.compute.v1.UrlMapsClientTest", + "com.google.cloud.compute.v1.VpnGatewaysClientTest", + "com.google.cloud.compute.v1.VpnTunnelsClientTest", + "com.google.cloud.compute.v1.ZoneOperationsClientTest", + "com.google.cloud.compute.v1.ZonesClientTest", + ], + runtime_deps = [":compute_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-compute-v1-java", + transport = "rest", + deps = [ + ":compute_java_gapic", + ":compute_java_proto", + ":compute_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "compute_py_gapic", + srcs = [ + ":compute_proto", + ], + opt_args = [ + "transport=rest", + ], +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "compute-v1-py", + deps = [ + ":compute_py_gapic", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_proto_library", +) + +php_proto_library( + name = "compute_php_proto", + deps = [":compute_proto"], +) + +php_gapic_library( + name = "compute_php_gapic", + srcs = [":compute_proto_with_info"], + grpc_service_config = "compute_grpc_service_config.json", + service_yaml = "compute_v1.yaml", + transport = "rest", + deps = [ + ":compute_php_proto", + ], +) + +# Open Source Packages +php_gapic_assembly_pkg( + name = "google-cloud-compute-v1-php", + deps = [ + ":compute_php_gapic", + ":compute_php_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "compute_nodejs_gapic", + package_name = "@google-cloud/compute", + src = ":compute_proto_with_info", + extra_protoc_parameters = ["metadata"], + diregapic = True, + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "compute-v1-nodejs", + deps = [ + ":compute_nodejs_gapic", + ":compute_proto", + ], +) + +############################################################################### +# Ruby +############################################################################### +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", + "ruby_proto_library", +) + +ruby_proto_library( + name = "compute_ruby_proto", + deps = [":compute_proto"], +) + +ruby_cloud_gapic_library( + name = "compute_ruby_gapic", + srcs = [":compute_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-api-id=compute.googleapis.com", + "ruby-cloud-api-shortname=compute", + "ruby-cloud-gem-name=google-cloud-compute-v1", + "ruby-cloud-generate-metadata=false", + "ruby-cloud-generate-transports=rest", + "ruby-cloud-env-prefix=COMPUTE", + "ruby-cloud-product-url=https://cloud.google.com/compute/", + "ruby-cloud-wrapper-gem-override=", + "ruby-cloud-extra-dependencies=google-cloud-common=~> 1.0", + ], + grpc_service_config = ":compute_grpc_service_config.json", + ruby_cloud_description = "google-cloud-compute-v1 is the official client library for the Google Cloud Compute V1 API.", + ruby_cloud_title = "Google Cloud Compute V1", + deps = [ + ":compute_ruby_proto", + ], +) + +ruby_gapic_assembly_pkg( + name = "google-cloud-compute-v1-ruby", + deps = [ + ":compute_ruby_gapic", + ":compute_ruby_proto", + ], +) + + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", + "csharp_gapic_library", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "compute_csharp_proto", + deps = [":compute_proto"], +) + +csharp_grpc_library( + name = "compute_csharp_grpc", + srcs = [":compute_proto"], + deps = [":compute_csharp_proto"], +) + +csharp_gapic_library( + name = "compute_csharp_gapic", + srcs = [":compute_proto_with_info"], + common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", + grpc_service_config = ":compute_grpc_service_config.json", + deps = [ + ":compute_csharp_grpc", + ":compute_csharp_proto", + ], +) + +# Open Source Packages +csharp_gapic_assembly_pkg( + name = "google-cloud-compute-v1-csharp", + deps = [ + ":compute_csharp_gapic", + ":compute_csharp_grpc", + ":compute_csharp_proto", + ], +) diff --git a/google/cloud/compute/v1/compute.proto b/google/cloud/compute/v1/compute.proto new file mode 100644 index 000000000..dc4c200b2 --- /dev/null +++ b/google/cloud/compute/v1/compute.proto @@ -0,0 +1,32086 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Generated by the disco-to-proto3-converter. DO NOT EDIT! +// Source Discovery file: compute.v1.json +// Source file revision: 20211004 +// API name: compute +// API version: v1 + +syntax = "proto3"; + +package google.cloud.compute.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/extended_operations.proto"; + +// +// File Options +// +option csharp_namespace = "Google.Cloud.Compute.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/compute/v1;compute"; +option java_multiple_files = true; +option java_package = "com.google.cloud.compute.v1"; +option php_namespace = "Google\\Cloud\\Compute\\V1"; +option ruby_package = "Google::Cloud::Compute::V1"; + +// +// Messages +// +// A request message for InstanceGroupManagers.AbandonInstances. See the method description for details. +message AbandonInstancesInstanceGroupManagerRequest { + // The name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManagersAbandonInstancesRequest instance_group_managers_abandon_instances_request_resource = 320929016 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the managed instance group is located. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionInstanceGroupManagers.AbandonInstances. See the method description for details. +message AbandonInstancesRegionInstanceGroupManagerRequest { + // Name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionInstanceGroupManagersAbandonInstancesRequest region_instance_group_managers_abandon_instances_request_resource = 488499491 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A specification of the type and number of accelerator cards attached to the instance. +message AcceleratorConfig { + // The number of the guest accelerator cards exposed to this instance. + optional int32 accelerator_count = 504879675; + + // Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types. + optional string accelerator_type = 138031246; + +} + +// Represents an Accelerator Type resource. Google Cloud Platform provides graphics processing units (accelerators) that you can add to VM instances to improve or accelerate performance when working with intensive workloads. For more information, read GPUs on Compute Engine. +message AcceleratorType { + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // [Output Only] The deprecation status associated with this accelerator type. + optional DeprecationStatus deprecated = 515138995; + + // [Output Only] An optional textual description of the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] The type of the resource. Always compute#acceleratorType for accelerator types. + optional string kind = 3292052; + + // [Output Only] Maximum number of accelerator cards allowed per instance. + optional int32 maximum_cards_per_instance = 263814482; + + // [Output Only] Name of the resource. + optional string name = 3373707; + + // [Output Only] Server-defined, fully qualified URL for this resource. + optional string self_link = 456214797; + + // [Output Only] The name of the zone where the accelerator type resides, such as us-central1-a. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string zone = 3744684; + +} + +// +message AcceleratorTypeAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of AcceleratorTypesScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#acceleratorTypeAggregatedList for aggregated lists of accelerator types. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of accelerator types. +message AcceleratorTypeList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of AcceleratorType resources. + repeated AcceleratorType items = 100526016; + + // [Output Only] Type of resource. Always compute#acceleratorTypeList for lists of accelerator types. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message AcceleratorTypesScopedList { + // [Output Only] A list of accelerator types contained in this scope. + repeated AcceleratorType accelerator_types = 520872357; + + // [Output Only] An informational warning that appears when the accelerator types list is empty. + optional Warning warning = 50704284; + +} + +// +message Accelerators { + // Number of accelerator cards exposed to the guest. + optional int32 guest_accelerator_count = 479079316; + + // The accelerator type resource name, not a full URL, e.g. 'nvidia-tesla-k80'. + optional string guest_accelerator_type = 293064725; + +} + +// An access configuration attached to an instance's network interface. Only one access config per instance is supported. +message AccessConfig { + // This signifies the networking tier used for configuring this access configuration and can only take the following values: PREMIUM, STANDARD. If an AccessConfig is specified without a valid external IP address, an ephemeral IP will be created with this networkTier. If an AccessConfig with a valid external IP address is specified, it must match that of the networkTier associated with the Address resource owning that IP. + enum NetworkTier { + // A value indicating that the enum field is not set. + UNDEFINED_NETWORK_TIER = 0; + + // High quality, Google-grade network tier, support for all networking products. + PREMIUM = 399530551; + + // Public internet quality, only limited support for other networking products. + STANDARD = 484642493; + + } + + // The type of configuration. The default and only option is ONE_TO_ONE_NAT. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + DIRECT_IPV6 = 4397213; + + ONE_TO_ONE_NAT = 84090205; + + } + + // [Output Only] The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork associated with the instance will be allocated dynamically. + optional string external_ipv6 = 532703707; + + // [Output Only] The prefix length of the external IPv6 range. + optional int32 external_ipv6_prefix_length = 425672143; + + // [Output Only] Type of the resource. Always compute#accessConfig for access configs. + optional string kind = 3292052; + + // The name of this access configuration. The default and recommended name is External NAT, but you can use any arbitrary string, such as My external IP or Network Access. + optional string name = 3373707; + + // An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance. + optional string nat_i_p = 117634556; + + // This signifies the networking tier used for configuring this access configuration and can only take the following values: PREMIUM, STANDARD. If an AccessConfig is specified without a valid external IP address, an ephemeral IP will be created with this networkTier. If an AccessConfig with a valid external IP address is specified, it must match that of the networkTier associated with the Address resource owning that IP. + // Check the NetworkTier enum for the list of possible values. + optional string network_tier = 517397843; + + // The DNS domain name for the public PTR record. You can set this field only if the `setPublicPtr` field is enabled. + optional string public_ptr_domain_name = 316599167; + + // Specifies whether a public DNS 'PTR' record should be created to map the external IP address of the instance to a DNS domain name. + optional bool set_public_ptr = 523870229; + + // The type of configuration. The default and only option is ONE_TO_ONE_NAT. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// A request message for Instances.AddAccessConfig. See the method description for details. +message AddAccessConfigInstanceRequest { + // The body resource for this request + AccessConfig access_config_resource = 387825552 [(google.api.field_behavior) = REQUIRED]; + + // The instance name for this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The name of the network interface to add to this instance. + string network_interface = 365387880 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for FirewallPolicies.AddAssociation. See the method description for details. +message AddAssociationFirewallPolicyRequest { + // Name of the firewall policy to update. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + FirewallPolicyAssociation firewall_policy_association_resource = 259546170 [(google.api.field_behavior) = REQUIRED]; + + // Indicates whether or not to replace it if an association of the attachment already exists. This is false by default, in which case an error will be returned if an association already exists. + optional bool replace_existing_association = 209541240; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for TargetPools.AddHealthCheck. See the method description for details. +message AddHealthCheckTargetPoolRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the target pool to add a health check to. + string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TargetPoolsAddHealthCheckRequest target_pools_add_health_check_request_resource = 269573412 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetPools.AddInstance. See the method description for details. +message AddInstanceTargetPoolRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetPool resource to add instances to. + string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TargetPoolsAddInstanceRequest target_pools_add_instance_request_resource = 428796404 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceGroups.AddInstances. See the method description for details. +message AddInstancesInstanceGroupRequest { + // The name of the instance group where you are adding instances. + string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupsAddInstancesRequest instance_groups_add_instances_request_resource = 453713246 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the instance group is located. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for NodeGroups.AddNodes. See the method description for details. +message AddNodesNodeGroupRequest { + // Name of the NodeGroup resource. + string node_group = 469958146 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NodeGroupsAddNodesRequest node_groups_add_nodes_request_resource = 131263288 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Networks.AddPeering. See the method description for details. +message AddPeeringNetworkRequest { + // Name of the network resource to add peering to. + string network = 232872494 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NetworksAddPeeringRequest networks_add_peering_request_resource = 388810421 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Disks.AddResourcePolicies. See the method description for details. +message AddResourcePoliciesDiskRequest { + // The disk name for this request. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + DisksAddResourcePoliciesRequest disks_add_resource_policies_request_resource = 496483363 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Instances.AddResourcePolicies. See the method description for details. +message AddResourcePoliciesInstanceRequest { + // The instance name for this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstancesAddResourcePoliciesRequest instances_add_resource_policies_request_resource = 489351963 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionDisks.AddResourcePolicies. See the method description for details. +message AddResourcePoliciesRegionDiskRequest { + // The disk name for this request. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionDisksAddResourcePoliciesRequest region_disks_add_resource_policies_request_resource = 284196750 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for FirewallPolicies.AddRule. See the method description for details. +message AddRuleFirewallPolicyRequest { + // Name of the firewall policy to update. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + FirewallPolicyRule firewall_policy_rule_resource = 250523523 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for SecurityPolicies.AddRule. See the method description for details. +message AddRuleSecurityPolicyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the security policy to update. + string security_policy = 171082513 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + SecurityPolicyRule security_policy_rule_resource = 402693443 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for BackendBuckets.AddSignedUrlKey. See the method description for details. +message AddSignedUrlKeyBackendBucketRequest { + // Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035. + string backend_bucket = 91714037 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + SignedUrlKey signed_url_key_resource = 457625985 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for BackendServices.AddSignedUrlKey. See the method description for details. +message AddSignedUrlKeyBackendServiceRequest { + // Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + SignedUrlKey signed_url_key_resource = 457625985 [(google.api.field_behavior) = REQUIRED]; + +} + +// Represents an IP Address resource. Google Compute Engine has two IP Address resources: * [Global (external and internal)](https://cloud.google.com/compute/docs/reference/rest/v1/globalAddresses) * [Regional (external and internal)](https://cloud.google.com/compute/docs/reference/rest/v1/addresses) For more information, see Reserving a static external IP address. +message Address { + // The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL. + enum AddressType { + // A value indicating that the enum field is not set. + UNDEFINED_ADDRESS_TYPE = 0; + + // A publicly visible external IP address. + EXTERNAL = 35607499; + + // A private network IP address, for use with an Instance or Internal Load Balancer forwarding rule. + INTERNAL = 279295677; + + UNSPECIFIED_TYPE = 53933922; + + } + + // The IP version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address. + enum IpVersion { + // A value indicating that the enum field is not set. + UNDEFINED_IP_VERSION = 0; + + IPV4 = 2254341; + + IPV6 = 2254343; + + UNSPECIFIED_VERSION = 21850000; + + } + + // This signifies the networking tier used for configuring this address and can only take the following values: PREMIUM or STANDARD. Internal IP addresses are always Premium Tier; global external IP addresses are always Premium Tier; regional external IP addresses can be either Standard or Premium Tier. If this field is not specified, it is assumed to be PREMIUM. + enum NetworkTier { + // A value indicating that the enum field is not set. + UNDEFINED_NETWORK_TIER = 0; + + // High quality, Google-grade network tier, support for all networking products. + PREMIUM = 399530551; + + // Public internet quality, only limited support for other networking products. + STANDARD = 484642493; + + } + + // The purpose of this resource, which can be one of the following values: - GCE_ENDPOINT for addresses that are used by VM instances, alias IP ranges, load balancers, and similar resources. - DNS_RESOLVER for a DNS resolver address in a subnetwork for a Cloud DNS inbound forwarder IP addresses (regional internal IP address in a subnet of a VPC network) - VPC_PEERING for global internal IP addresses used for private services access allocated ranges. - NAT_AUTO for the regional external IP addresses used by Cloud NAT when allocating addresses using . - IPSEC_INTERCONNECT for addresses created from a private IP range that are reserved for a VLAN attachment in an *IPsec-encrypted Cloud Interconnect* configuration. These addresses are regional resources. Not currently available publicly. - `SHARED_LOADBALANCER_VIP` for an internal IP address that is assigned to multiple internal forwarding rules. - `PRIVATE_SERVICE_CONNECT` for a private network address that is used to configure Private Service Connect. Only global internal addresses can use this purpose. + enum Purpose { + // A value indicating that the enum field is not set. + UNDEFINED_PURPOSE = 0; + + // DNS resolver address in the subnetwork. + DNS_RESOLVER = 476114556; + + // VM internal/alias IP, Internal LB service IP, etc. + GCE_ENDPOINT = 230515243; + + // A regional internal IP address range reserved for the VLAN attachment that is used in IPsec-encrypted Cloud Interconnect. This regional internal IP address range must not overlap with any IP address range of subnet/route in the VPC network and its peering networks. After the VLAN attachment is created with the reserved IP address range, when creating a new VPN gateway, its interface IP address is allocated from the associated VLAN attachment’s IP address range. + IPSEC_INTERCONNECT = 340437251; + + // External IP automatically reserved for Cloud NAT. + NAT_AUTO = 163666477; + + // A private network IP address that can be used to configure Private Service Connect. This purpose can be specified only for GLOBAL addresses of Type INTERNAL + PRIVATE_SERVICE_CONNECT = 48134724; + + // A private network IP address that can be shared by multiple Internal Load Balancer forwarding rules. + SHARED_LOADBALANCER_VIP = 294447572; + + // IP range for peer networks. + VPC_PEERING = 400800170; + + } + + // [Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // Address is being used by another resource and is not available. + IN_USE = 17393485; + + // Address is reserved and available to use. + RESERVED = 432241448; + + // Address is being reserved. + RESERVING = 514587225; + + } + + // The static IP address represented by this resource. + optional string address = 462920692; + + // The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL. + // Check the AddressType enum for the list of possible values. + optional string address_type = 264307877; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this field when you create the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // The IP version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address. + // Check the IpVersion enum for the list of possible values. + optional string ip_version = 294959552; + + // [Output Only] Type of the resource. Always compute#address for addresses. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all following characters (except for the last character) must be a dash, lowercase letter, or digit. The last character must be a lowercase letter or digit. + optional string name = 3373707; + + // The URL of the network in which to reserve the address. This field can only be used with INTERNAL type with the VPC_PEERING purpose. + optional string network = 232872494; + + // This signifies the networking tier used for configuring this address and can only take the following values: PREMIUM or STANDARD. Internal IP addresses are always Premium Tier; global external IP addresses are always Premium Tier; regional external IP addresses can be either Standard or Premium Tier. If this field is not specified, it is assumed to be PREMIUM. + // Check the NetworkTier enum for the list of possible values. + optional string network_tier = 517397843; + + // The prefix length if the resource represents an IP range. + optional int32 prefix_length = 453565747; + + // The purpose of this resource, which can be one of the following values: - GCE_ENDPOINT for addresses that are used by VM instances, alias IP ranges, load balancers, and similar resources. - DNS_RESOLVER for a DNS resolver address in a subnetwork for a Cloud DNS inbound forwarder IP addresses (regional internal IP address in a subnet of a VPC network) - VPC_PEERING for global internal IP addresses used for private services access allocated ranges. - NAT_AUTO for the regional external IP addresses used by Cloud NAT when allocating addresses using . - IPSEC_INTERCONNECT for addresses created from a private IP range that are reserved for a VLAN attachment in an *IPsec-encrypted Cloud Interconnect* configuration. These addresses are regional resources. Not currently available publicly. - `SHARED_LOADBALANCER_VIP` for an internal IP address that is assigned to multiple internal forwarding rules. - `PRIVATE_SERVICE_CONNECT` for a private network address that is used to configure Private Service Connect. Only global internal addresses can use this purpose. + // Check the Purpose enum for the list of possible values. + optional string purpose = 316407070; + + // [Output Only] The URL of the region where a regional address resides. For regional addresses, you must specify the region as a path parameter in the HTTP request URL. *This field is not applicable to global addresses.* + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with a GCE_ENDPOINT or DNS_RESOLVER purpose. + optional string subnetwork = 307827694; + + // [Output Only] The URLs of the resources that are using this address. + repeated string users = 111578632; + +} + +// +message AddressAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of AddressesScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#addressAggregatedList for aggregated lists of addresses. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of addresses. +message AddressList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Address resources. + repeated Address items = 100526016; + + // [Output Only] Type of resource. Always compute#addressList for lists of addresses. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message AddressesScopedList { + // [Output Only] A list of addresses contained in this scope. + repeated Address addresses = 337673122; + + // [Output Only] Informational warning which replaces the list of addresses when the list is empty. + optional Warning warning = 50704284; + +} + +// Specifies options for controlling advanced machine features. Options that would traditionally be configured in a BIOS belong here. Features that require operating system support may have corresponding entries in the GuestOsFeatures of an Image (e.g., whether or not the OS in the Image supports nested virtualization being enabled or disabled). +message AdvancedMachineFeatures { + // Whether to enable nested virtualization or not (default is false). + optional bool enable_nested_virtualization = 16639365; + + // The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed. + optional int32 threads_per_core = 352611671; + +} + +// A request message for AcceleratorTypes.AggregatedList. See the method description for details. +message AggregatedListAcceleratorTypesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Addresses.AggregatedList. See the method description for details. +message AggregatedListAddressesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Autoscalers.AggregatedList. See the method description for details. +message AggregatedListAutoscalersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for BackendServices.AggregatedList. See the method description for details. +message AggregatedListBackendServicesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Name of the project scoping this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for DiskTypes.AggregatedList. See the method description for details. +message AggregatedListDiskTypesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Disks.AggregatedList. See the method description for details. +message AggregatedListDisksRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for ForwardingRules.AggregatedList. See the method description for details. +message AggregatedListForwardingRulesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for GlobalOperations.AggregatedList. See the method description for details. +message AggregatedListGlobalOperationsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for HealthChecks.AggregatedList. See the method description for details. +message AggregatedListHealthChecksRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Name of the project scoping this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for InstanceGroupManagers.AggregatedList. See the method description for details. +message AggregatedListInstanceGroupManagersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for InstanceGroups.AggregatedList. See the method description for details. +message AggregatedListInstanceGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Instances.AggregatedList. See the method description for details. +message AggregatedListInstancesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for InterconnectAttachments.AggregatedList. See the method description for details. +message AggregatedListInterconnectAttachmentsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for MachineTypes.AggregatedList. See the method description for details. +message AggregatedListMachineTypesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for NetworkEndpointGroups.AggregatedList. See the method description for details. +message AggregatedListNetworkEndpointGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for NodeGroups.AggregatedList. See the method description for details. +message AggregatedListNodeGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for NodeTemplates.AggregatedList. See the method description for details. +message AggregatedListNodeTemplatesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for NodeTypes.AggregatedList. See the method description for details. +message AggregatedListNodeTypesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for PacketMirrorings.AggregatedList. See the method description for details. +message AggregatedListPacketMirroringsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for PublicDelegatedPrefixes.AggregatedList. See the method description for details. +message AggregatedListPublicDelegatedPrefixesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Name of the project scoping this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionCommitments.AggregatedList. See the method description for details. +message AggregatedListRegionCommitmentsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Reservations.AggregatedList. See the method description for details. +message AggregatedListReservationsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for ResourcePolicies.AggregatedList. See the method description for details. +message AggregatedListResourcePoliciesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Routers.AggregatedList. See the method description for details. +message AggregatedListRoutersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for ServiceAttachments.AggregatedList. See the method description for details. +message AggregatedListServiceAttachmentsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Name of the project scoping this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for SslCertificates.AggregatedList. See the method description for details. +message AggregatedListSslCertificatesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Name of the project scoping this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Subnetworks.AggregatedList. See the method description for details. +message AggregatedListSubnetworksRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetHttpProxies.AggregatedList. See the method description for details. +message AggregatedListTargetHttpProxiesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Name of the project scoping this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetHttpsProxies.AggregatedList. See the method description for details. +message AggregatedListTargetHttpsProxiesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Name of the project scoping this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetInstances.AggregatedList. See the method description for details. +message AggregatedListTargetInstancesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetPools.AggregatedList. See the method description for details. +message AggregatedListTargetPoolsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetVpnGateways.AggregatedList. See the method description for details. +message AggregatedListTargetVpnGatewaysRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for UrlMaps.AggregatedList. See the method description for details. +message AggregatedListUrlMapsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Name of the project scoping this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for VpnGateways.AggregatedList. See the method description for details. +message AggregatedListVpnGatewaysRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for VpnTunnels.AggregatedList. See the method description for details. +message AggregatedListVpnTunnelsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// An alias IP range attached to an instance's network interface. +message AliasIpRange { + // The IP alias ranges to allocate for this interface. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (such as 10.2.3.4), a netmask (such as /24) or a CIDR-formatted string (such as 10.1.2.0/24). + optional string ip_cidr_range = 98117322; + + // The name of a subnetwork secondary IP range from which to allocate an IP alias range. If not specified, the primary range of the subnetwork is used. + optional string subnetwork_range_name = 387995966; + +} + +// +message AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk { + // Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance. + enum Interface { + // A value indicating that the enum field is not set. + UNDEFINED_INTERFACE = 0; + + NVME = 2408800; + + SCSI = 2539686; + + } + + // Specifies the size of the disk in base-2 GB. + optional int64 disk_size_gb = 316263735; + + // Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance. + // Check the Interface enum for the list of possible values. + optional string interface = 502623545; + +} + +// Properties of the SKU instances being reserved. Next ID: 9 +message AllocationSpecificSKUAllocationReservedInstanceProperties { + // Specifies accelerator type and count. + repeated AcceleratorConfig guest_accelerators = 463595119; + + // Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd. + repeated AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk local_ssds = 229951299; + + // An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API. + optional string location_hint = 350519505; + + // Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern. + optional string machine_type = 227711026; + + // Minimum cpu platform the reservation. + optional string min_cpu_platform = 242912759; + +} + +// This reservation type allows to pre allocate specific instance configuration. Next ID: 5 +message AllocationSpecificSKUReservation { + // Specifies the number of resources that are allocated. + optional int64 count = 94851343; + + // [Output Only] Indicates how many instances are in use. + optional int64 in_use_count = 493458877; + + // The instance properties for the reservation. + optional AllocationSpecificSKUAllocationReservedInstanceProperties instance_properties = 215355165; + +} + +// +message Allowed { + // The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp) or the IP protocol number. + optional string I_p_protocol = 488094525; + + // An optional list of ports to which this rule applies. This field is only applicable for the UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: ["22"], ["80","443"], and ["12345-12349"]. + repeated string ports = 106854418; + +} + +// A request message for InstanceGroupManagers.ApplyUpdatesToInstances. See the method description for details. +message ApplyUpdatesToInstancesInstanceGroupManagerRequest { + // The name of the managed instance group, should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManagersApplyUpdatesRequest instance_group_managers_apply_updates_request_resource = 259242835 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The name of the zone where the managed instance group is located. Should conform to RFC1035. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionInstanceGroupManagers.ApplyUpdatesToInstances. See the method description for details. +message ApplyUpdatesToInstancesRegionInstanceGroupManagerRequest { + // The name of the managed instance group, should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request, should conform to RFC1035. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionInstanceGroupManagersApplyUpdatesRequest region_instance_group_managers_apply_updates_request_resource = 76248318 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.AttachDisk. See the method description for details. +message AttachDiskInstanceRequest { + // The body resource for this request + AttachedDisk attached_disk_resource = 90605845 [(google.api.field_behavior) = REQUIRED]; + + // Whether to force attach the regional disk even if it's currently attached to another instance. If you try to force attach a zonal disk to an instance, you will receive an error. + optional bool force_attach = 142758425; + + // The instance name for this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for GlobalNetworkEndpointGroups.AttachNetworkEndpoints. See the method description for details. +message AttachNetworkEndpointsGlobalNetworkEndpointGroupRequest { + // The body resource for this request + GlobalNetworkEndpointGroupsAttachEndpointsRequest global_network_endpoint_groups_attach_endpoints_request_resource = 30691563 [(google.api.field_behavior) = REQUIRED]; + + // The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for NetworkEndpointGroups.AttachNetworkEndpoints. See the method description for details. +message AttachNetworkEndpointsNetworkEndpointGroupRequest { + // The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NetworkEndpointGroupsAttachEndpointsRequest network_endpoint_groups_attach_endpoints_request_resource = 531079 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the network endpoint group is located. It should comply with RFC1035. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// An instance-attached disk resource. +message AttachedDisk { + // Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance. + enum Interface { + // A value indicating that the enum field is not set. + UNDEFINED_INTERFACE = 0; + + NVME = 2408800; + + SCSI = 2539686; + + } + + // The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode. + enum Mode { + // A value indicating that the enum field is not set. + UNDEFINED_MODE = 0; + + // Attaches this disk in read-only mode. Multiple virtual machines can use a disk in read-only mode at a time. + READ_ONLY = 91950261; + + // *[Default]* Attaches this disk in read-write mode. Only one virtual machine at a time can be attached to a disk in read-write mode. + READ_WRITE = 173607894; + + } + + // Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + PERSISTENT = 460683927; + + SCRATCH = 496778970; + + } + + // Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance). + optional bool auto_delete = 464761403; + + // Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem. + optional bool boot = 3029746; + + // Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks. + optional string device_name = 67541716; + + // Encrypts or decrypts a disk using a customer-supplied encryption key. If you are creating a new disk, this field encrypts the new disk using an encryption key that you provide. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key. If you encrypt a disk using a customer-supplied key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance. If you do not provide an encryption key, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later. Instance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt disks in a managed instance group. + optional CustomerEncryptionKey disk_encryption_key = 271660677; + + // The size of the disk in GB. + optional int64 disk_size_gb = 316263735; + + // A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options. + repeated GuestOsFeature guest_os_features = 79294545; + + // [Output Only] A zero-based index to this disk, where 0 is reserved for the boot disk. If you have many disks attached to an instance, each disk would have a unique index number. + optional int32 index = 100346066; + + // [Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance. This property is mutually exclusive with the source property; you can only define one or the other, but not both. + optional AttachedDiskInitializeParams initialize_params = 17697045; + + // Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance. + // Check the Interface enum for the list of possible values. + optional string interface = 502623545; + + // [Output Only] Type of the resource. Always compute#attachedDisk for attached disks. + optional string kind = 3292052; + + // [Output Only] Any valid publicly visible licenses. + repeated string licenses = 337642578; + + // The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode. + // Check the Mode enum for the list of possible values. + optional string mode = 3357091; + + // [Output Only] shielded vm initial state stored on disk + optional InitialStateConfig shielded_instance_initial_state = 192356867; + + // Specifies a valid partial or full URL to an existing Persistent Disk resource. When creating a new instance, one of initializeParams.sourceImage or initializeParams.sourceSnapshot or disks.source is required except for local SSD. If desired, you can also attach existing non-root persistent disks using this property. This field is only applicable for persistent disks. Note that for InstanceTemplate, specify the disk name, not the URL for the disk. + optional string source = 177235995; + + // Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// [Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance. This property is mutually exclusive with the source property; you can only define one or the other, but not both. +message AttachedDiskInitializeParams { + // Specifies which action to take on instance update with this disk. Default is to use the existing disk. + enum OnUpdateAction { + // A value indicating that the enum field is not set. + UNDEFINED_ON_UPDATE_ACTION = 0; + + // Always recreate the disk. + RECREATE_DISK = 494767853; + + // Recreate the disk if source (image, snapshot) of this disk is different from source of existing disk. + RECREATE_DISK_IF_SOURCE_CHANGED = 398099712; + + // Use the existing disk, this is the default behaviour. + USE_EXISTING_DISK = 232682233; + + } + + // An optional description. Provide this property when creating the disk. + optional string description = 422937596; + + // Specifies the disk name. If not specified, the default is to use the name of the instance. If a disk with the same name already exists in the given region, the existing disk is attached to the new instance and the new disk is not created. + optional string disk_name = 92807149; + + // Specifies the size of the disk in base-2 GB. The size must be at least 10 GB. If you specify a sourceImage, which is required for boot disks, the default size is the size of the sourceImage. If you do not specify a sourceImage, the default disk size is 500 GB. + optional int64 disk_size_gb = 316263735; + + // Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard For a full list of acceptable values, see Persistent disk types. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL. + optional string disk_type = 93009052; + + // Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks. + map labels = 500195327; + + // Specifies which action to take on instance update with this disk. Default is to use the existing disk. + // Check the OnUpdateAction enum for the list of possible values. + optional string on_update_action = 202451980; + + // Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation. + optional int64 provisioned_iops = 186769108; + + // Resource policies applied to this disk for automatic snapshot creations. Specified using the full or partial URL. For instance template, specify only the resource policy name. + repeated string resource_policies = 22220385; + + // The source image to create this disk. When creating a new instance, one of initializeParams.sourceImage or initializeParams.sourceSnapshot or disks.source is required except for local SSD. To create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-9 to use the latest Debian 9 image: projects/debian-cloud/global/images/family/debian-9 Alternatively, use a specific version of a public operating system image: projects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD To create a disk with a custom image that you created, specify the image name in the following format: global/images/my-custom-image You can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name: global/images/family/my-image-family If the source image is deleted later, this field will not be set. + optional string source_image = 50443319; + + // The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key. Instance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys. + optional CustomerEncryptionKey source_image_encryption_key = 381503659; + + // The source snapshot to create this disk. When creating a new instance, one of initializeParams.sourceSnapshot or initializeParams.sourceImage or disks.source is required except for local SSD. To create a disk with a snapshot that you created, specify the snapshot name in the following format: global/snapshots/my-backup If the source snapshot is deleted later, this field will not be set. + optional string source_snapshot = 126061928; + + // The customer-supplied encryption key of the source snapshot. + optional CustomerEncryptionKey source_snapshot_encryption_key = 303679322; + +} + +// Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { "audit_configs": [ { "service": "allServices", "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, { "log_type": "ADMIN_READ" } ] }, { "service": "sampleservice.googleapis.com", "audit_log_configs": [ { "log_type": "DATA_READ" }, { "log_type": "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts jose@example.com from DATA_READ logging, and aliya@example.com from DATA_WRITE logging. +message AuditConfig { + // The configuration for logging of each type of permission. + repeated AuditLogConfig audit_log_configs = 488420626; + + // This is deprecated and has no effect. Do not use. + repeated string exempted_members = 232615576; + + // Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services. + optional string service = 373540533; + +} + +// Provides the configuration for logging a type of permissions. Example: { "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging. +message AuditLogConfig { + // The log type that this config enables. + enum LogType { + // A value indicating that the enum field is not set. + UNDEFINED_LOG_TYPE = 0; + + // Admin reads. Example: CloudIAM getIamPolicy + ADMIN_READ = 128951462; + + // Data reads. Example: CloudSQL Users list + DATA_READ = 305224971; + + // Data writes. Example: CloudSQL Users create + DATA_WRITE = 340181738; + + // Default case. Should never be this. + LOG_TYPE_UNSPECIFIED = 154527053; + + } + + // Specifies the identities that do not cause logging for this type of permission. Follows the same format of Binding.members. + repeated string exempted_members = 232615576; + + // This is deprecated and has no effect. Do not use. + optional bool ignore_child_exemptions = 70141850; + + // The log type that this config enables. + // Check the LogType enum for the list of possible values. + optional string log_type = 403115861; + +} + +// This is deprecated and has no effect. Do not use. +message AuthorizationLoggingOptions { + // This is deprecated and has no effect. Do not use. + enum PermissionType { + // A value indicating that the enum field is not set. + UNDEFINED_PERMISSION_TYPE = 0; + + // This is deprecated and has no effect. Do not use. + ADMIN_READ = 128951462; + + // This is deprecated and has no effect. Do not use. + ADMIN_WRITE = 244412079; + + // This is deprecated and has no effect. Do not use. + DATA_READ = 305224971; + + // This is deprecated and has no effect. Do not use. + DATA_WRITE = 340181738; + + // This is deprecated and has no effect. Do not use. + PERMISSION_TYPE_UNSPECIFIED = 440313346; + + } + + // This is deprecated and has no effect. Do not use. + // Check the PermissionType enum for the list of possible values. + optional string permission_type = 525978538; + +} + +// Represents an Autoscaler resource. Google Compute Engine has two Autoscaler resources: * [Zonal](/compute/docs/reference/rest/v1/autoscalers) * [Regional](/compute/docs/reference/rest/v1/regionAutoscalers) Use autoscalers to automatically add or delete instances from a managed instance group according to your defined autoscaling policy. For more information, read Autoscaling Groups of Instances. For zonal managed instance groups resource, use the autoscaler resource. For regional managed instance groups, use the regionAutoscalers resource. +message Autoscaler { + // [Output Only] The status of the autoscaler configuration. Current set of possible values: - PENDING: Autoscaler backend hasn't read new/updated configuration. - DELETING: Configuration is being deleted. - ACTIVE: Configuration is acknowledged to be effective. Some warnings might be present in the statusDetails field. - ERROR: Configuration has errors. Actionable for users. Details are present in the statusDetails field. New values might be added in the future. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // Configuration is acknowledged to be effective + ACTIVE = 314733318; + + // Configuration is being deleted + DELETING = 528602024; + + // Configuration has errors. Actionable for users. + ERROR = 66247144; + + // Autoscaler backend hasn't read new/updated configuration + PENDING = 35394935; + + } + + // The configuration parameters for the autoscaling algorithm. You can define one or more signals for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization. If none of these are specified, the default will be to autoscale based on cpuUtilization to 0.6 or 60%. + optional AutoscalingPolicy autoscaling_policy = 221950041; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#autoscaler for autoscalers. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // [Output Only] Target recommended MIG size (number of instances) computed by autoscaler. Autoscaler calculates the recommended MIG size even when the autoscaling policy mode is different from ON. This field is empty when autoscaler is not connected to an existing managed instance group or autoscaler did not generate its prediction. + optional int32 recommended_size = 257915749; + + // [Output Only] URL of the region where the instance group resides (for autoscalers living in regional scope). + optional string region = 138946292; + + // [Output Only] Status information of existing scaling schedules. + map scaling_schedule_status = 465950178; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The status of the autoscaler configuration. Current set of possible values: - PENDING: Autoscaler backend hasn't read new/updated configuration. - DELETING: Configuration is being deleted. - ACTIVE: Configuration is acknowledged to be effective. Some warnings might be present in the statusDetails field. - ERROR: Configuration has errors. Actionable for users. Details are present in the statusDetails field. New values might be added in the future. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // [Output Only] Human-readable details about the current state of the autoscaler. Read the documentation for Commonly returned status messages for examples of status messages you might encounter. + repeated AutoscalerStatusDetails status_details = 363353845; + + // URL of the managed instance group that this autoscaler will scale. This field is required when creating an autoscaler. + optional string target = 192835985; + + // [Output Only] URL of the zone where the instance group resides (for autoscalers living in zonal scope). + optional string zone = 3744684; + +} + +// +message AutoscalerAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of AutoscalersScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#autoscalerAggregatedList for aggregated lists of autoscalers. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. end_interface: MixerListResponseWithEtagBuilder + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of Autoscaler resources. +message AutoscalerList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Autoscaler resources. + repeated Autoscaler items = 100526016; + + // [Output Only] Type of resource. Always compute#autoscalerList for lists of autoscalers. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message AutoscalerStatusDetails { + // The type of error, warning, or notice returned. Current set of possible values: - ALL_INSTANCES_UNHEALTHY (WARNING): All instances in the instance group are unhealthy (not in RUNNING state). - BACKEND_SERVICE_DOES_NOT_EXIST (ERROR): There is no backend service attached to the instance group. - CAPPED_AT_MAX_NUM_REPLICAS (WARNING): Autoscaler recommends a size greater than maxNumReplicas. - CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING): The custom metric samples are not exported often enough to be a credible base for autoscaling. - CUSTOM_METRIC_INVALID (ERROR): The custom metric that was specified does not exist or does not have the necessary labels. - MIN_EQUALS_MAX (WARNING): The minNumReplicas is equal to maxNumReplicas. This means the autoscaler cannot add or remove instances from the instance group. - MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING): The autoscaler did not receive any data from the custom metric configured for autoscaling. - MISSING_LOAD_BALANCING_DATA_POINTS (WARNING): The autoscaler is configured to scale based on a load balancing signal but the instance group has not received any requests from the load balancer. - MODE_OFF (WARNING): Autoscaling is turned off. The number of instances in the group won't change automatically. The autoscaling configuration is preserved. - MODE_ONLY_UP (WARNING): Autoscaling is in the "Autoscale only out" mode. The autoscaler can add instances but not remove any. - MORE_THAN_ONE_BACKEND_SERVICE (ERROR): The instance group cannot be autoscaled because it has more than one backend service attached to it. - NOT_ENOUGH_QUOTA_AVAILABLE (ERROR): There is insufficient quota for the necessary resources, such as CPU or number of instances. - REGION_RESOURCE_STOCKOUT (ERROR): Shown only for regional autoscalers: there is a resource stockout in the chosen region. - SCALING_TARGET_DOES_NOT_EXIST (ERROR): The target to be scaled does not exist. - UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION (ERROR): Autoscaling does not work with an HTTP/S load balancer that has been configured for maxRate. - ZONE_RESOURCE_STOCKOUT (ERROR): For zonal autoscalers: there is a resource stockout in the chosen zone. For regional autoscalers: in at least one of the zones you're using there is a resource stockout. New values might be added in the future. Some of the values might not be available in all API versions. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + // All instances in the instance group are unhealthy (not in RUNNING state). + ALL_INSTANCES_UNHEALTHY = 404965477; + + // There is no backend service attached to the instance group. + BACKEND_SERVICE_DOES_NOT_EXIST = 191417626; + + // Autoscaler recommends a size greater than maxNumReplicas. + CAPPED_AT_MAX_NUM_REPLICAS = 518617; + + // The custom metric samples are not exported often enough to be a credible base for autoscaling. + CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE = 328964659; + + // The custom metric that was specified does not exist or does not have the necessary labels. + CUSTOM_METRIC_INVALID = 204430550; + + // The minNumReplicas is equal to maxNumReplicas. This means the autoscaler cannot add or remove instances from the instance group. + MIN_EQUALS_MAX = 2821361; + + // The autoscaler did not receive any data from the custom metric configured for autoscaling. + MISSING_CUSTOM_METRIC_DATA_POINTS = 94885086; + + // The autoscaler is configured to scale based on a load balancing signal but the instance group has not received any requests from the load balancer. + MISSING_LOAD_BALANCING_DATA_POINTS = 509858898; + + // Autoscaling is turned off. The number of instances in the group won't change automatically. The autoscaling configuration is preserved. + MODE_OFF = 164169907; + + // Autoscaling is in the "Autoscale only scale out" mode. Instances in the group will be only added. + MODE_ONLY_SCALE_OUT = 3840994; + + // Autoscaling is in the "Autoscale only out" mode. Instances in the group will be only added. + MODE_ONLY_UP = 100969842; + + // The instance group cannot be autoscaled because it has more than one backend service attached to it. + MORE_THAN_ONE_BACKEND_SERVICE = 151922141; + + // There is insufficient quota for the necessary resources, such as CPU or number of instances. + NOT_ENOUGH_QUOTA_AVAILABLE = 403101631; + + // Showed only for regional autoscalers: there is a resource stockout in the chosen region. + REGION_RESOURCE_STOCKOUT = 528622846; + + // The target to be scaled does not exist. + SCALING_TARGET_DOES_NOT_EXIST = 122636699; + + // For some scaling schedules minRequiredReplicas is greater than maxNumReplicas. Autoscaler always recommends at most maxNumReplicas instances. + SCHEDULED_INSTANCES_GREATER_THAN_AUTOSCALER_MAX = 29275586; + + // For some scaling schedules minRequiredReplicas is less than minNumReplicas. Autoscaler always recommends at least minNumReplicas instances. + SCHEDULED_INSTANCES_LESS_THAN_AUTOSCALER_MIN = 398287669; + + UNKNOWN = 433141802; + + // Autoscaling does not work with an HTTP/S load balancer that has been configured for maxRate. + UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION = 330845009; + + // For zonal autoscalers: there is a resource stockout in the chosen zone. For regional autoscalers: in at least one of the zones you're using there is a resource stockout. + ZONE_RESOURCE_STOCKOUT = 210200502; + + } + + // The status message. + optional string message = 418054151; + + // The type of error, warning, or notice returned. Current set of possible values: - ALL_INSTANCES_UNHEALTHY (WARNING): All instances in the instance group are unhealthy (not in RUNNING state). - BACKEND_SERVICE_DOES_NOT_EXIST (ERROR): There is no backend service attached to the instance group. - CAPPED_AT_MAX_NUM_REPLICAS (WARNING): Autoscaler recommends a size greater than maxNumReplicas. - CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING): The custom metric samples are not exported often enough to be a credible base for autoscaling. - CUSTOM_METRIC_INVALID (ERROR): The custom metric that was specified does not exist or does not have the necessary labels. - MIN_EQUALS_MAX (WARNING): The minNumReplicas is equal to maxNumReplicas. This means the autoscaler cannot add or remove instances from the instance group. - MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING): The autoscaler did not receive any data from the custom metric configured for autoscaling. - MISSING_LOAD_BALANCING_DATA_POINTS (WARNING): The autoscaler is configured to scale based on a load balancing signal but the instance group has not received any requests from the load balancer. - MODE_OFF (WARNING): Autoscaling is turned off. The number of instances in the group won't change automatically. The autoscaling configuration is preserved. - MODE_ONLY_UP (WARNING): Autoscaling is in the "Autoscale only out" mode. The autoscaler can add instances but not remove any. - MORE_THAN_ONE_BACKEND_SERVICE (ERROR): The instance group cannot be autoscaled because it has more than one backend service attached to it. - NOT_ENOUGH_QUOTA_AVAILABLE (ERROR): There is insufficient quota for the necessary resources, such as CPU or number of instances. - REGION_RESOURCE_STOCKOUT (ERROR): Shown only for regional autoscalers: there is a resource stockout in the chosen region. - SCALING_TARGET_DOES_NOT_EXIST (ERROR): The target to be scaled does not exist. - UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION (ERROR): Autoscaling does not work with an HTTP/S load balancer that has been configured for maxRate. - ZONE_RESOURCE_STOCKOUT (ERROR): For zonal autoscalers: there is a resource stockout in the chosen zone. For regional autoscalers: in at least one of the zones you're using there is a resource stockout. New values might be added in the future. Some of the values might not be available in all API versions. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// +message AutoscalersScopedList { + // [Output Only] A list of autoscalers contained in this scope. + repeated Autoscaler autoscalers = 465771644; + + // [Output Only] Informational warning which replaces the list of autoscalers when the list is empty. + optional Warning warning = 50704284; + +} + +// Cloud Autoscaler policy. +message AutoscalingPolicy { + // Defines operating mode for this policy. + enum Mode { + // A value indicating that the enum field is not set. + UNDEFINED_MODE = 0; + + // Do not automatically scale the MIG in or out. The recommended_size field contains the size of MIG that would be set if the actuation mode was enabled. + OFF = 78159; + + // Automatically scale the MIG in and out according to the policy. + ON = 2527; + + // Automatically create VMs according to the policy, but do not scale the MIG in. + ONLY_SCALE_OUT = 152713670; + + // Automatically create VMs according to the policy, but do not scale the MIG in. + ONLY_UP = 478095374; + + } + + // The number of seconds that the autoscaler waits before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds. Virtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process. + optional int32 cool_down_period_sec = 107692954; + + // Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group. + optional AutoscalingPolicyCpuUtilization cpu_utilization = 381211147; + + // Configuration parameters of autoscaling based on a custom metric. + repeated AutoscalingPolicyCustomMetricUtilization custom_metric_utilizations = 131972850; + + // Configuration parameters of autoscaling based on load balancer. + optional AutoscalingPolicyLoadBalancingUtilization load_balancing_utilization = 429746403; + + // The maximum number of instances that the autoscaler can scale out to. This is required when creating or updating an autoscaler. The maximum number of replicas must not be lower than minimal number of replicas. + optional int32 max_num_replicas = 62327375; + + // The minimum number of replicas that the autoscaler can scale in to. This cannot be less than 0. If not provided, autoscaler chooses a default value depending on maximum number of instances allowed. + optional int32 min_num_replicas = 535329825; + + // Defines operating mode for this policy. + // Check the Mode enum for the list of possible values. + optional string mode = 3357091; + + optional AutoscalingPolicyScaleInControl scale_in_control = 527670872; + + // Scaling schedules defined for an autoscaler. Multiple schedules can be set on an autoscaler, and they can overlap. During overlapping periods the greatest min_required_replicas of all scaling schedules is applied. Up to 128 scaling schedules are allowed. + map scaling_schedules = 355416580; + +} + +// CPU utilization policy. +message AutoscalingPolicyCpuUtilization { + // Indicates whether predictive autoscaling based on CPU metric is enabled. Valid values are: * NONE (default). No predictive method is used. The autoscaler scales the group to meet current demand based on real-time metrics. * OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by monitoring daily and weekly load patterns and scaling out ahead of anticipated demand. + enum PredictiveMethod { + // A value indicating that the enum field is not set. + UNDEFINED_PREDICTIVE_METHOD = 0; + + // No predictive method is used. The autoscaler scales the group to meet current demand based on real-time metrics + NONE = 2402104; + + // Predictive autoscaling improves availability by monitoring daily and weekly load patterns and scaling out ahead of anticipated demand. + OPTIMIZE_AVAILABILITY = 11629437; + + } + + // Indicates whether predictive autoscaling based on CPU metric is enabled. Valid values are: * NONE (default). No predictive method is used. The autoscaler scales the group to meet current demand based on real-time metrics. * OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by monitoring daily and weekly load patterns and scaling out ahead of anticipated demand. + // Check the PredictiveMethod enum for the list of possible values. + optional string predictive_method = 390220737; + + // The target CPU utilization that the autoscaler maintains. Must be a float value in the range (0, 1]. If not specified, the default is 0.6. If the CPU level is below the target utilization, the autoscaler scales in the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization. If the average CPU is above the target utilization, the autoscaler scales out until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization. + optional double utilization_target = 215905870; + +} + +// Custom utilization metric policy. +message AutoscalingPolicyCustomMetricUtilization { + // Defines how target utilization value is expressed for a Stackdriver Monitoring metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. + enum UtilizationTargetType { + // A value indicating that the enum field is not set. + UNDEFINED_UTILIZATION_TARGET_TYPE = 0; + + // Sets the utilization target value for a cumulative or delta metric, expressed as the rate of growth per minute. + DELTA_PER_MINUTE = 87432861; + + // Sets the utilization target value for a cumulative or delta metric, expressed as the rate of growth per second. + DELTA_PER_SECOND = 255180029; + + // Sets the utilization target value for a gauge metric. The autoscaler will collect the average utilization of the virtual machines from the last couple of minutes, and compare the value to the utilization target value to perform autoscaling. + GAUGE = 67590361; + + } + + // A filter string, compatible with a Stackdriver Monitoring filter string for TimeSeries.list API call. This filter is used to select a specific TimeSeries for the purpose of autoscaling and to determine whether the metric is exporting per-instance or per-group data. For the filter to be valid for autoscaling purposes, the following rules apply: - You can only use the AND operator for joining selectors. - You can only use direct equality comparison operator (=) without any functions for each selector. - You can specify the metric in both the filter string and in the metric field. However, if specified in both places, the metric must be identical. - The monitored resource type determines what kind of values are expected for the metric. If it is a gce_instance, the autoscaler expects the metric to include a separate TimeSeries for each instance in a group. In such a case, you cannot filter on resource labels. If the resource type is any other value, the autoscaler expects this metric to contain values that apply to the entire autoscaled instance group and resource label filtering can be performed to point autoscaler at the correct TimeSeries to scale upon. This is called a *per-group metric* for the purpose of autoscaling. If not specified, the type defaults to gce_instance. Try to provide a filter that is selective enough to pick just one TimeSeries for the autoscaled group or for each of the instances (if you are using gce_instance resource type). If multiple TimeSeries are returned upon the query execution, the autoscaler will sum their respective values to obtain its scaling value. + optional string filter = 336120696; + + // The identifier (type) of the Stackdriver Monitoring metric. The metric cannot have negative values. The metric must have a value type of INT64 or DOUBLE. + optional string metric = 533067184; + + // If scaling is based on a per-group metric value that represents the total amount of work to be done or resource usage, set this value to an amount assigned for a single instance of the scaled group. Autoscaler keeps the number of instances proportional to the value of this metric. The metric itself does not change value due to group resizing. A good metric to use with the target is for example pubsub.googleapis.com/subscription/num_undelivered_messages or a custom metric exporting the total number of requests coming to your instances. A bad example would be a metric exporting an average or median latency, since this value can't include a chunk assignable to a single instance, it could be better used with utilization_target instead. + optional double single_instance_assignment = 504768064; + + // The target value of the metric that autoscaler maintains. This must be a positive value. A utilization metric scales number of virtual machines handling requests to increase or decrease proportionally to the metric. For example, a good metric to use as a utilization_target is https://www.googleapis.com/compute/v1/instance/network/received_bytes_count. The autoscaler works to keep this value constant for each of the instances. + optional double utilization_target = 215905870; + + // Defines how target utilization value is expressed for a Stackdriver Monitoring metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. + // Check the UtilizationTargetType enum for the list of possible values. + optional string utilization_target_type = 340169355; + +} + +// Configuration parameters of autoscaling based on load balancing. +message AutoscalingPolicyLoadBalancingUtilization { + // Fraction of backend capacity utilization (set in HTTP(S) load balancing configuration) that the autoscaler maintains. Must be a positive float value. If not defined, the default is 0.8. + optional double utilization_target = 215905870; + +} + +// Configuration that allows for slower scale in so that even if Autoscaler recommends an abrupt scale in of a MIG, it will be throttled as specified by the parameters below. +message AutoscalingPolicyScaleInControl { + // Maximum allowed number (or %) of VMs that can be deducted from the peak recommendation during the window autoscaler looks at when computing recommendations. Possibly all these VMs can be deleted at once so user service needs to be prepared to lose that many VMs in one step. + optional FixedOrPercent max_scaled_in_replicas = 180710123; + + // How far back autoscaling looks when computing recommendations to include directives regarding slower scale in, as described above. + optional int32 time_window_sec = 36405300; + +} + +// Scaling based on user-defined schedule. The message describes a single scaling schedule. A scaling schedule changes the minimum number of VM instances an autoscaler can recommend, which can trigger scaling out. +message AutoscalingPolicyScalingSchedule { + // A description of a scaling schedule. + optional string description = 422937596; + + // A boolean value that specifies whether a scaling schedule can influence autoscaler recommendations. If set to true, then a scaling schedule has no effect. This field is optional, and its value is false by default. + optional bool disabled = 270940796; + + // The duration of time intervals, in seconds, for which this scaling schedule is to run. The minimum allowed value is 300. This field is required. + optional int32 duration_sec = 212356902; + + // The minimum number of VM instances that the autoscaler will recommend in time intervals starting according to schedule. This field is required. + optional int32 min_required_replicas = 365514414; + + // The start timestamps of time intervals when this scaling schedule is to provide a scaling signal. This field uses the extended cron format (with an optional year field). The expression can describe a single timestamp if the optional year is set, in which case the scaling schedule runs once. The schedule is interpreted with respect to time_zone. This field is required. Note: These timestamps only describe when autoscaler starts providing the scaling signal. The VMs need additional time to become serving. + optional string schedule = 375820951; + + // The time zone to use when interpreting the schedule. The value of this field must be a time zone name from the tz database: http://en.wikipedia.org/wiki/Tz_database. This field is assigned a default value of “UTC” if left empty. + optional string time_zone = 36848094; + +} + +// Message containing information of one individual backend. +message Backend { + // Specifies how to determine whether the backend of a load balancer can handle additional traffic or is fully loaded. For usage guidelines, see Connection balancing mode. Backends must use compatible balancing modes. For more information, see Supported balancing modes and target capacity settings and Restrictions and guidance for instance groups. Note: Currently, if you use the API to configure incompatible balancing modes, the configuration might be accepted even though it has no impact and is ignored. Specifically, Backend.maxUtilization is ignored when Backend.balancingMode is RATE. In the future, this incompatible combination will be rejected. + enum BalancingMode { + // A value indicating that the enum field is not set. + UNDEFINED_BALANCING_MODE = 0; + + // Balance based on the number of simultaneous connections. + CONNECTION = 246311646; + + // Balance based on requests per second (RPS). + RATE = 2508000; + + // Balance based on the backend utilization. + UTILIZATION = 157008386; + + } + + // Specifies how to determine whether the backend of a load balancer can handle additional traffic or is fully loaded. For usage guidelines, see Connection balancing mode. Backends must use compatible balancing modes. For more information, see Supported balancing modes and target capacity settings and Restrictions and guidance for instance groups. Note: Currently, if you use the API to configure incompatible balancing modes, the configuration might be accepted even though it has no impact and is ignored. Specifically, Backend.maxUtilization is ignored when Backend.balancingMode is RATE. In the future, this incompatible combination will be rejected. + // Check the BalancingMode enum for the list of possible values. + optional string balancing_mode = 430286217; + + // A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service. + optional float capacity_scaler = 315958157; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // This field designates whether this is a failover backend. More than one failover backend can be configured for a given BackendService. + optional bool failover = 138892530; + + // The fully-qualified URL of an instance group or network endpoint group (NEG) resource. To determine what types of backends a load balancer supports, see the [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service#backends). You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported. + optional string group = 98629247; + + // Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. + optional int32 max_connections = 110652154; + + // Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. + optional int32 max_connections_per_endpoint = 216904604; + + // Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE. + optional int32 max_connections_per_instance = 104671900; + + // Defines a maximum number of HTTP requests per second (RPS). For usage guidelines, see Rate balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is CONNECTION. + optional int32 max_rate = 408035035; + + // Defines a maximum target for requests per second (RPS). For usage guidelines, see Rate balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is CONNECTION. + optional float max_rate_per_endpoint = 129832283; + + // Defines a maximum target for requests per second (RPS). For usage guidelines, see Rate balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is CONNECTION. + optional float max_rate_per_instance = 17599579; + + // Optional parameter to define a target capacity for the UTILIZATIONbalancing mode. The valid range is [0.0, 1.0]. For usage guidelines, see Utilization balancing mode. + optional float max_utilization = 148192199; + +} + +// Represents a Cloud Storage Bucket resource. This Cloud Storage bucket resource is referenced by a URL map of a load balancer. For more information, read Backend Buckets. +message BackendBucket { + // Cloud Storage bucket name. + optional string bucket_name = 283610048; + + // Cloud CDN configuration for this BackendBucket. + optional BackendBucketCdnPolicy cdn_policy = 213976452; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // Headers that the HTTP/S load balancer should add to proxied responses. + repeated string custom_response_headers = 387539094; + + // An optional textual description of the resource; provided by the client when the resource is created. + optional string description = 422937596; + + // If true, enable Cloud CDN for this BackendBucket. + optional bool enable_cdn = 282942321; + + // [Output Only] Unique identifier for the resource; defined by the server. + optional uint64 id = 3355; + + // Type of the resource. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + +} + +// Message containing Cloud CDN configuration for a backend bucket. +message BackendBucketCdnPolicy { + // Specifies the cache setting for all responses from this backend. The possible values are: USE_ORIGIN_HEADERS Requires the origin to set valid caching headers to cache content. Responses without these headers will not be cached at Google's edge, and will require a full trip to the origin on every request, potentially impacting performance and increasing load on the origin server. FORCE_CACHE_ALL Cache all content, ignoring any "private", "no-store" or "no-cache" directives in Cache-Control response headers. Warning: this may result in Cloud CDN caching private, per-user (user identifiable) content. CACHE_ALL_STATIC Automatically cache static content, including common image formats, media (video and audio), and web assets (JavaScript and CSS). Requests and responses that are marked as uncacheable, as well as dynamic content (including HTML), will not be cached. + enum CacheMode { + // A value indicating that the enum field is not set. + UNDEFINED_CACHE_MODE = 0; + + // Automatically cache static content, including common image formats, media (video and audio), and web assets (JavaScript and CSS). Requests and responses that are marked as uncacheable, as well as dynamic content (including HTML), will not be cached. + CACHE_ALL_STATIC = 355027945; + + // Cache all content, ignoring any "private", "no-store" or "no-cache" directives in Cache-Control response headers. Warning: this may result in Cloud CDN caching private, per-user (user identifiable) content. + FORCE_CACHE_ALL = 486026928; + + INVALID_CACHE_MODE = 381295560; + + // Requires the origin to set valid caching headers to cache content. Responses without these headers will not be cached at Google's edge, and will require a full trip to the origin on every request, potentially impacting performance and increasing load on the origin server. + USE_ORIGIN_HEADERS = 55380261; + + } + + // Bypass the cache when the specified request headers are matched - e.g. Pragma or Authorization headers. Up to 5 headers can be specified. The cache is bypassed for all cdnPolicy.cacheMode settings. + repeated BackendBucketCdnPolicyBypassCacheOnRequestHeader bypass_cache_on_request_headers = 486203082; + + // Specifies the cache setting for all responses from this backend. The possible values are: USE_ORIGIN_HEADERS Requires the origin to set valid caching headers to cache content. Responses without these headers will not be cached at Google's edge, and will require a full trip to the origin on every request, potentially impacting performance and increasing load on the origin server. FORCE_CACHE_ALL Cache all content, ignoring any "private", "no-store" or "no-cache" directives in Cache-Control response headers. Warning: this may result in Cloud CDN caching private, per-user (user identifiable) content. CACHE_ALL_STATIC Automatically cache static content, including common image formats, media (video and audio), and web assets (JavaScript and CSS). Requests and responses that are marked as uncacheable, as well as dynamic content (including HTML), will not be cached. + // Check the CacheMode enum for the list of possible values. + optional string cache_mode = 28877888; + + // Specifies a separate client (e.g. browser client) maximum TTL. This is used to clamp the max-age (or Expires) value sent to the client. With FORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the response max-age directive, along with a "public" directive. For cacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age from the origin (if specified), or else sets the response max-age directive to the lesser of the client_ttl and default_ttl, and also ensures a "public" cache-control directive is present. If a client TTL is not specified, a default value (1 hour) will be used. The maximum allowed value is 86400s (1 day). + optional int32 client_ttl = 29034360; + + // Specifies the default TTL for cached content served by this origin for responses that do not have an existing valid TTL (max-age or s-max-age). Setting a TTL of "0" means "always revalidate". The value of defaultTTL cannot be set to a value greater than that of maxTTL, but can be equal. When the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set in all responses. The maximum allowed value is 31,622,400s (1 year), noting that infrequently accessed objects may be evicted from the cache before the defined TTL. + optional int32 default_ttl = 100253422; + + // Specifies the maximum allowed TTL for cached content served by this origin. Cache directives that attempt to set a max-age or s-maxage higher than this, or an Expires header more than maxTTL seconds in the future will be capped at the value of maxTTL, as if it were the value of an s-maxage Cache-Control directive. Headers sent to the client will not be modified. Setting a TTL of "0" means "always revalidate". The maximum allowed value is 31,622,400s (1 year), noting that infrequently accessed objects may be evicted from the cache before the defined TTL. + optional int32 max_ttl = 307578001; + + // Negative caching allows per-status code TTLs to be set, in order to apply fine-grained caching for common errors or redirects. This can reduce the load on your origin and improve end-user experience by reducing response latency. When the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS, negative caching applies to responses with the specified response code that lack any Cache-Control, Expires, or Pragma: no-cache directives. When the cache mode is set to FORCE_CACHE_ALL, negative caching applies to all responses with the specified response code, and override any caching headers. By default, Cloud CDN will apply the following default TTLs to these status codes: HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method Not Found), 421 (Misdirected Request), 501 (Not Implemented): 60s. These defaults can be overridden in negative_caching_policy. + optional bool negative_caching = 336110005; + + // Sets a cache TTL for the specified HTTP status code. negative_caching must be enabled to configure negative_caching_policy. Omitting the policy and leaving negative_caching enabled will use Cloud CDN's default cache TTLs. Note that when specifying an explicit negative_caching_policy, you should take care to specify a cache TTL for all response codes that you wish to cache. Cloud CDN will not apply any default negative caching when a policy exists. + repeated BackendBucketCdnPolicyNegativeCachingPolicy negative_caching_policy = 155359996; + + // If true then Cloud CDN will combine multiple concurrent cache fill requests into a small number of requests to the origin. + optional bool request_coalescing = 532808276; + + // Serve existing content from the cache (if available) when revalidating content with the origin, or when an error is encountered when refreshing the cache. This setting defines the default "max-stale" duration for any cached responses that do not specify a max-stale directive. Stale responses that exceed the TTL configured here will not be served. The default limit (max-stale) is 86400s (1 day), which will allow stale content to be served up to this limit beyond the max-age (or s-max-age) of a cached response. The maximum allowed value is 604800 (1 week). Set this to zero (0) to disable serve-while-stale. + optional int32 serve_while_stale = 236682203; + + // Maximum number of seconds the response to a signed URL request will be considered fresh. After this time period, the response will be revalidated before being served. Defaults to 1hr (3600s). When serving responses to signed URL requests, Cloud CDN will internally behave as though all responses from this backend had a "Cache-Control: public, max-age=[TTL]" header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered. + optional int64 signed_url_cache_max_age_sec = 269374534; + + // [Output Only] Names of the keys for signing request URLs. + repeated string signed_url_key_names = 371848885; + +} + +// Bypass the cache when the specified request headers are present, e.g. Pragma or Authorization headers. Values are case insensitive. The presence of such a header overrides the cache_mode setting. +message BackendBucketCdnPolicyBypassCacheOnRequestHeader { + // The header field name to match on when bypassing cache. Values are case-insensitive. + optional string header_name = 110223613; + +} + +// Specify CDN TTLs for response error codes. +message BackendBucketCdnPolicyNegativeCachingPolicy { + // The HTTP status code to define a TTL against. Only HTTP status codes 300, 301, 302, 307, 308, 404, 405, 410, 421, 451 and 501 are can be specified as values, and you cannot specify a status code more than once. + optional int32 code = 3059181; + + // The TTL (in seconds) for which to cache responses with the corresponding status code. The maximum allowed value is 1800s (30 minutes), noting that infrequently accessed objects may be evicted from the cache before the defined TTL. + optional int32 ttl = 115180; + +} + +// Contains a list of BackendBucket resources. +message BackendBucketList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of BackendBucket resources. + repeated BackendBucket items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/regionBackendServices) For more information, see Backend Services. +message BackendService { + // Specifies the load balancer type. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer. + enum LoadBalancingScheme { + // A value indicating that the enum field is not set. + UNDEFINED_LOAD_BALANCING_SCHEME = 0; + + // Signifies that this will be used for external HTTP(S), SSL Proxy, TCP Proxy, or Network Load Balancing + EXTERNAL = 35607499; + + // Signifies that this will be used for Internal TCP/UDP Load Balancing. + INTERNAL = 279295677; + + // Signifies that this will be used for Internal HTTP(S) Load Balancing. + INTERNAL_MANAGED = 37350397; + + // Signifies that this will be used by Traffic Director. + INTERNAL_SELF_MANAGED = 236211150; + + INVALID_LOAD_BALANCING_SCHEME = 275352060; + + } + + // The load balancing algorithm used within the scope of the locality. The possible values are: - ROUND_ROBIN: This is a simple policy in which each healthy backend is selected in round robin order. This is the default. - LEAST_REQUEST: An O(1) algorithm which selects two random healthy hosts and picks the host which has fewer active requests. - RING_HASH: The ring/modulo hash load balancer implements consistent hashing to backends. The algorithm has the property that the addition/removal of a host from a set of N hosts only affects 1/N of the requests. - RANDOM: The load balancer selects a random healthy host. - ORIGINAL_DESTINATION: Backend host is selected based on the client connection metadata, i.e., connections are opened to the same address as the destination address of the incoming connection before the connection was redirected to the load balancer. - MAGLEV: used as a drop in replacement for the ring hash load balancer. Maglev is not as stable as ring hash but has faster table lookup build times and host selection times. For more information about Maglev, see https://ai.google/research/pubs/pub44824 This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. If sessionAffinity is not NONE, and this field is not set to MAGLEV or RING_HASH, session affinity settings will not take effect. Only the default ROUND_ROBIN policy is supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + enum LocalityLbPolicy { + // A value indicating that the enum field is not set. + UNDEFINED_LOCALITY_LB_POLICY = 0; + + INVALID_LB_POLICY = 323318707; + + // An O(1) algorithm which selects two random healthy hosts and picks the host which has fewer active requests. + LEAST_REQUEST = 46604921; + + // This algorithm implements consistent hashing to backends. Maglev can be used as a drop in replacement for the ring hash load balancer. Maglev is not as stable as ring hash but has faster table lookup build times and host selection times. For more information about Maglev, see https://ai.google/research/pubs/pub44824 + MAGLEV = 119180266; + + // Backend host is selected based on the client connection metadata, i.e., connections are opened to the same address as the destination address of the incoming connection before the connection was redirected to the load balancer. + ORIGINAL_DESTINATION = 166297216; + + // The load balancer selects a random healthy host. + RANDOM = 262527171; + + // The ring/modulo hash load balancer implements consistent hashing to backends. The algorithm has the property that the addition/removal of a host from a set of N hosts only affects 1/N of the requests. + RING_HASH = 432795069; + + // This is a simple policy in which each healthy backend is selected in round robin order. This is the default. + ROUND_ROBIN = 153895801; + + } + + // The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancers or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy. + enum Protocol { + // A value indicating that the enum field is not set. + UNDEFINED_PROTOCOL = 0; + + // gRPC (available for Traffic Director). + GRPC = 2196510; + + HTTP = 2228360; + + // HTTP/2 with SSL. + HTTP2 = 69079210; + + HTTPS = 69079243; + + // TCP proxying with SSL. + SSL = 82412; + + // TCP proxying or TCP pass-through. + TCP = 82881; + + // UDP. + UDP = 83873; + + } + + // Type of session affinity to use. The default is NONE. For a detailed description of session affinity options, see: [Session affinity](https://cloud.google.com/load-balancing/docs/backend-service#session_affinity). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + enum SessionAffinity { + // A value indicating that the enum field is not set. + UNDEFINED_SESSION_AFFINITY = 0; + + // 2-tuple hash on packet's source and destination IP addresses. Connections from the same source IP address to the same destination IP address will be served by the same backend VM while that VM remains healthy. + CLIENT_IP = 345665051; + + // 1-tuple hash only on packet's source IP address. Connections from the same source IP address will be served by the same backend VM while that VM remains healthy. This option can only be used for Internal TCP/UDP Load Balancing. + CLIENT_IP_NO_DESTINATION = 106122516; + + // 5-tuple hash on packet's source and destination IP addresses, IP protocol, and source and destination ports. Connections for the same IP protocol from the same source IP address and port to the same destination IP address and port will be served by the same backend VM while that VM remains healthy. This option cannot be used for HTTP(S) load balancing. + CLIENT_IP_PORT_PROTO = 221722926; + + // 3-tuple hash on packet's source and destination IP addresses, and IP protocol. Connections for the same IP protocol from the same source IP address to the same destination IP address will be served by the same backend VM while that VM remains healthy. This option cannot be used for HTTP(S) load balancing. + CLIENT_IP_PROTO = 25322148; + + // Hash based on a cookie generated by the L7 loadbalancer. Only valid for HTTP(S) load balancing. + GENERATED_COOKIE = 370321204; + + // The hash is based on a user specified header field. + HEADER_FIELD = 200737960; + + // The hash is based on a user provided cookie. + HTTP_COOKIE = 494981627; + + // No session affinity. Connections from the same client IP may go to any instance in the pool. + NONE = 2402104; + + } + + // Lifetime of cookies in seconds. This setting is applicable to external and internal HTTP(S) load balancers and Traffic Director and requires GENERATED_COOKIE or HTTP_COOKIE session affinity. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day (86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + optional int32 affinity_cookie_ttl_sec = 369996954; + + // The list of backends that serve this BackendService. + repeated Backend backends = 510839903; + + // Cloud CDN configuration for this BackendService. Only available for specified load balancer types. + optional BackendServiceCdnPolicy cdn_policy = 213976452; + + optional CircuitBreakers circuit_breakers = 421340061; + + optional ConnectionDraining connection_draining = 461096747; + + // Consistent Hash-based load balancing can be used to provide soft session affinity based on HTTP headers, cookies or other properties. This load balancing policy is applicable only for HTTP connections. The affinity to a particular destination host will be lost when one or more hosts are added/removed from the destination service. This field specifies parameters that control consistent hashing. This field is only applicable when localityLbPolicy is set to MAGLEV or RING_HASH. This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + optional ConsistentHashLoadBalancerSettings consistent_hash = 905883; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // Headers that the load balancer adds to proxied requests. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers). + repeated string custom_request_headers = 27977992; + + // Headers that the load balancer adds to proxied responses. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers). + repeated string custom_response_headers = 387539094; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // If true, enables Cloud CDN for the backend service of an external HTTP(S) load balancer. + optional bool enable_c_d_n = 250733499; + + // Requires at least one backend instance group to be defined as a backup (failover) backend. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). + optional BackendServiceFailoverPolicy failover_policy = 105658655; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a BackendService. + optional string fingerprint = 234678500; + + // The list of URLs to the healthChecks, httpHealthChecks (legacy), or httpsHealthChecks (legacy) resource for health checking this backend service. Not all backend services support legacy health checks. See Load balancer guide. Currently, at most one health check can be specified for each backend service. Backend services with instance group or zonal NEG backends must have a health check. Backend services with internet or serverless NEG backends must not have a health check. + repeated string health_checks = 448370606; + + // The configurations for Identity-Aware Proxy on this resource. Not available for Internal TCP/UDP Load Balancing and Network Load Balancing. + optional BackendServiceIAP iap = 104024; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of resource. Always compute#backendService for backend services. + optional string kind = 3292052; + + // Specifies the load balancer type. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer. + // Check the LoadBalancingScheme enum for the list of possible values. + optional string load_balancing_scheme = 363890244; + + // The load balancing algorithm used within the scope of the locality. The possible values are: - ROUND_ROBIN: This is a simple policy in which each healthy backend is selected in round robin order. This is the default. - LEAST_REQUEST: An O(1) algorithm which selects two random healthy hosts and picks the host which has fewer active requests. - RING_HASH: The ring/modulo hash load balancer implements consistent hashing to backends. The algorithm has the property that the addition/removal of a host from a set of N hosts only affects 1/N of the requests. - RANDOM: The load balancer selects a random healthy host. - ORIGINAL_DESTINATION: Backend host is selected based on the client connection metadata, i.e., connections are opened to the same address as the destination address of the incoming connection before the connection was redirected to the load balancer. - MAGLEV: used as a drop in replacement for the ring hash load balancer. Maglev is not as stable as ring hash but has faster table lookup build times and host selection times. For more information about Maglev, see https://ai.google/research/pubs/pub44824 This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. If sessionAffinity is not NONE, and this field is not set to MAGLEV or RING_HASH, session affinity settings will not take effect. Only the default ROUND_ROBIN policy is supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + // Check the LocalityLbPolicy enum for the list of possible values. + optional string locality_lb_policy = 131431487; + + // This field denotes the logging options for the load balancer traffic served by this backend service. If logging is enabled, logs will be exported to Stackdriver. + optional BackendServiceLogConfig log_config = 351299741; + + // Specifies the default maximum duration (timeout) for streams to this service. Duration is computed from the beginning of the stream until the response has been completely processed, including all retries. A stream that does not complete in this duration is closed. If not specified, there will be no timeout limit, i.e. the maximum duration is infinite. This value can be overridden in the PathMatcher configuration of the UrlMap that references this backend service. This field is only allowed when the loadBalancingScheme of the backend service is INTERNAL_SELF_MANAGED. + optional Duration max_stream_duration = 61428376; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // The URL of the network to which this backend service belongs. This field can only be specified when the load balancing scheme is set to INTERNAL. + optional string network = 232872494; + + // Settings controlling the eviction of unhealthy hosts from the load balancing pool for the backend service. If not set, this feature is considered disabled. This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + optional OutlierDetection outlier_detection = 354625086; + + // Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port. + optional int32 port = 3446913; + + // A named port on a backend instance group representing the port for communication to the backend VMs in that group. The named port must be [defined on each backend instance group](https://cloud.google.com/load-balancing/docs/backend-service#named_ports). This parameter has no meaning if the backends are NEGs. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port_name. + optional string port_name = 41534345; + + // The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancers or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy. + // Check the Protocol enum for the list of possible values. + optional string protocol = 84577944; + + // [Output Only] URL of the region where the regional backend service resides. This field is not applicable to global backend services. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // [Output Only] The resource URL for the security policy associated with this backend service. + optional string security_policy = 171082513; + + // This field specifies the security policy that applies to this backend service. This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. + optional SecuritySettings security_settings = 478649922; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // Type of session affinity to use. The default is NONE. For a detailed description of session affinity options, see: [Session affinity](https://cloud.google.com/load-balancing/docs/backend-service#session_affinity). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + // Check the SessionAffinity enum for the list of possible values. + optional string session_affinity = 463888561; + + optional Subsetting subsetting = 450283536; + + // Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. Instead, use maxStreamDuration. + optional int32 timeout_sec = 79994995; + +} + +// Contains a list of BackendServicesScopedList. +message BackendServiceAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of BackendServicesScopedList resources. + map items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Message containing Cloud CDN configuration for a backend service. +message BackendServiceCdnPolicy { + // Specifies the cache setting for all responses from this backend. The possible values are: USE_ORIGIN_HEADERS Requires the origin to set valid caching headers to cache content. Responses without these headers will not be cached at Google's edge, and will require a full trip to the origin on every request, potentially impacting performance and increasing load on the origin server. FORCE_CACHE_ALL Cache all content, ignoring any "private", "no-store" or "no-cache" directives in Cache-Control response headers. Warning: this may result in Cloud CDN caching private, per-user (user identifiable) content. CACHE_ALL_STATIC Automatically cache static content, including common image formats, media (video and audio), and web assets (JavaScript and CSS). Requests and responses that are marked as uncacheable, as well as dynamic content (including HTML), will not be cached. + enum CacheMode { + // A value indicating that the enum field is not set. + UNDEFINED_CACHE_MODE = 0; + + // Automatically cache static content, including common image formats, media (video and audio), and web assets (JavaScript and CSS). Requests and responses that are marked as uncacheable, as well as dynamic content (including HTML), will not be cached. + CACHE_ALL_STATIC = 355027945; + + // Cache all content, ignoring any "private", "no-store" or "no-cache" directives in Cache-Control response headers. Warning: this may result in Cloud CDN caching private, per-user (user identifiable) content. + FORCE_CACHE_ALL = 486026928; + + INVALID_CACHE_MODE = 381295560; + + // Requires the origin to set valid caching headers to cache content. Responses without these headers will not be cached at Google's edge, and will require a full trip to the origin on every request, potentially impacting performance and increasing load on the origin server. + USE_ORIGIN_HEADERS = 55380261; + + } + + // Bypass the cache when the specified request headers are matched - e.g. Pragma or Authorization headers. Up to 5 headers can be specified. The cache is bypassed for all cdnPolicy.cacheMode settings. + repeated BackendServiceCdnPolicyBypassCacheOnRequestHeader bypass_cache_on_request_headers = 486203082; + + // The CacheKeyPolicy for this CdnPolicy. + optional CacheKeyPolicy cache_key_policy = 159263727; + + // Specifies the cache setting for all responses from this backend. The possible values are: USE_ORIGIN_HEADERS Requires the origin to set valid caching headers to cache content. Responses without these headers will not be cached at Google's edge, and will require a full trip to the origin on every request, potentially impacting performance and increasing load on the origin server. FORCE_CACHE_ALL Cache all content, ignoring any "private", "no-store" or "no-cache" directives in Cache-Control response headers. Warning: this may result in Cloud CDN caching private, per-user (user identifiable) content. CACHE_ALL_STATIC Automatically cache static content, including common image formats, media (video and audio), and web assets (JavaScript and CSS). Requests and responses that are marked as uncacheable, as well as dynamic content (including HTML), will not be cached. + // Check the CacheMode enum for the list of possible values. + optional string cache_mode = 28877888; + + // Specifies a separate client (e.g. browser client) maximum TTL. This is used to clamp the max-age (or Expires) value sent to the client. With FORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the response max-age directive, along with a "public" directive. For cacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age from the origin (if specified), or else sets the response max-age directive to the lesser of the client_ttl and default_ttl, and also ensures a "public" cache-control directive is present. If a client TTL is not specified, a default value (1 hour) will be used. The maximum allowed value is 86400s (1 day). + optional int32 client_ttl = 29034360; + + // Specifies the default TTL for cached content served by this origin for responses that do not have an existing valid TTL (max-age or s-max-age). Setting a TTL of "0" means "always revalidate". The value of defaultTTL cannot be set to a value greater than that of maxTTL, but can be equal. When the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set in all responses. The maximum allowed value is 31,622,400s (1 year), noting that infrequently accessed objects may be evicted from the cache before the defined TTL. + optional int32 default_ttl = 100253422; + + // Specifies the maximum allowed TTL for cached content served by this origin. Cache directives that attempt to set a max-age or s-maxage higher than this, or an Expires header more than maxTTL seconds in the future will be capped at the value of maxTTL, as if it were the value of an s-maxage Cache-Control directive. Headers sent to the client will not be modified. Setting a TTL of "0" means "always revalidate". The maximum allowed value is 31,622,400s (1 year), noting that infrequently accessed objects may be evicted from the cache before the defined TTL. + optional int32 max_ttl = 307578001; + + // Negative caching allows per-status code TTLs to be set, in order to apply fine-grained caching for common errors or redirects. This can reduce the load on your origin and improve end-user experience by reducing response latency. When the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS, negative caching applies to responses with the specified response code that lack any Cache-Control, Expires, or Pragma: no-cache directives. When the cache mode is set to FORCE_CACHE_ALL, negative caching applies to all responses with the specified response code, and override any caching headers. By default, Cloud CDN will apply the following default TTLs to these status codes: HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method Not Found), 421 (Misdirected Request), 501 (Not Implemented): 60s. These defaults can be overridden in negative_caching_policy. + optional bool negative_caching = 336110005; + + // Sets a cache TTL for the specified HTTP status code. negative_caching must be enabled to configure negative_caching_policy. Omitting the policy and leaving negative_caching enabled will use Cloud CDN's default cache TTLs. Note that when specifying an explicit negative_caching_policy, you should take care to specify a cache TTL for all response codes that you wish to cache. Cloud CDN will not apply any default negative caching when a policy exists. + repeated BackendServiceCdnPolicyNegativeCachingPolicy negative_caching_policy = 155359996; + + // If true then Cloud CDN will combine multiple concurrent cache fill requests into a small number of requests to the origin. + optional bool request_coalescing = 532808276; + + // Serve existing content from the cache (if available) when revalidating content with the origin, or when an error is encountered when refreshing the cache. This setting defines the default "max-stale" duration for any cached responses that do not specify a max-stale directive. Stale responses that exceed the TTL configured here will not be served. The default limit (max-stale) is 86400s (1 day), which will allow stale content to be served up to this limit beyond the max-age (or s-max-age) of a cached response. The maximum allowed value is 604800 (1 week). Set this to zero (0) to disable serve-while-stale. + optional int32 serve_while_stale = 236682203; + + // Maximum number of seconds the response to a signed URL request will be considered fresh. After this time period, the response will be revalidated before being served. Defaults to 1hr (3600s). When serving responses to signed URL requests, Cloud CDN will internally behave as though all responses from this backend had a "Cache-Control: public, max-age=[TTL]" header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered. + optional int64 signed_url_cache_max_age_sec = 269374534; + + // [Output Only] Names of the keys for signing request URLs. + repeated string signed_url_key_names = 371848885; + +} + +// Bypass the cache when the specified request headers are present, e.g. Pragma or Authorization headers. Values are case insensitive. The presence of such a header overrides the cache_mode setting. +message BackendServiceCdnPolicyBypassCacheOnRequestHeader { + // The header field name to match on when bypassing cache. Values are case-insensitive. + optional string header_name = 110223613; + +} + +// Specify CDN TTLs for response error codes. +message BackendServiceCdnPolicyNegativeCachingPolicy { + // The HTTP status code to define a TTL against. Only HTTP status codes 300, 301, 302, 307, 308, 404, 405, 410, 421, 451 and 501 are can be specified as values, and you cannot specify a status code more than once. + optional int32 code = 3059181; + + // The TTL (in seconds) for which to cache responses with the corresponding status code. The maximum allowed value is 1800s (30 minutes), noting that infrequently accessed objects may be evicted from the cache before the defined TTL. + optional int32 ttl = 115180; + +} + +// For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). On failover or failback, this field indicates whether connection draining will be honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes). +message BackendServiceFailoverPolicy { + // This can be set to true only if the protocol is TCP. The default is false. + optional bool disable_connection_drain_on_failover = 182150753; + + // If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). The default is false. + optional bool drop_traffic_if_unhealthy = 112289428; + + // The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). + optional float failover_ratio = 212667006; + +} + +// +message BackendServiceGroupHealth { + // Metadata defined as annotations on the network endpoint group. + map annotations = 112032548; + + // Health state of the backend instances or endpoints in requested instance or network endpoint group, determined based on configured health checks. + repeated HealthStatus health_status = 380545845; + + // [Output Only] Type of resource. Always compute#backendServiceGroupHealth for the health of backend services. + optional string kind = 3292052; + +} + +// Identity-Aware Proxy +message BackendServiceIAP { + // Whether the serving infrastructure will authenticate and authorize all incoming requests. If true, the oauth2ClientId and oauth2ClientSecret fields must be non-empty. + optional bool enabled = 1018689; + + // OAuth2 client ID to use for the authentication flow. + optional string oauth2_client_id = 314017611; + + // OAuth2 client secret to use for the authentication flow. For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2ClientSecretSha256 field. @InputOnly + optional string oauth2_client_secret = 50999520; + + // [Output Only] SHA256 hash value for the field oauth2_client_secret above. + optional string oauth2_client_secret_sha256 = 112903782; + +} + +// Contains a list of BackendService resources. +message BackendServiceList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of BackendService resources. + repeated BackendService items = 100526016; + + // [Output Only] Type of resource. Always compute#backendServiceList for lists of backend services. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// The available logging options for the load balancer traffic served by this backend service. +message BackendServiceLogConfig { + // This field denotes whether to enable logging for the load balancer traffic served by this backend service. + optional bool enable = 311764355; + + // This field can only be specified if logging is enabled for this backend service. The value of the field must be in [0, 1]. This configures the sampling rate of requests to the load balancer where 1.0 means all logged requests are reported and 0.0 means no logged requests are reported. The default value is 1.0. + optional float sample_rate = 153193045; + +} + +// +message BackendServiceReference { + optional string backend_service = 306946058; + +} + +// +message BackendServicesScopedList { + // A list of BackendServices contained in this scope. + repeated BackendService backend_services = 388522409; + + // Informational warning which replaces the list of backend services when the list is empty. + optional Warning warning = 50704284; + +} + +// Associates `members` with a `role`. +message Binding { + // This is deprecated and has no effect. Do not use. + optional string binding_id = 441088277; + + // The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the members in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + optional Expr condition = 212430107; + + // Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. + repeated string members = 412010777; + + // Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + optional string role = 3506294; + +} + +// A request message for Instances.BulkInsert. See the method description for details. +message BulkInsertInstanceRequest { + // The body resource for this request + BulkInsertInstanceResource bulk_insert_instance_resource_resource = 41427278 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert . This resource is not persisted anywhere, it is used only for processing the requests. +message BulkInsertInstanceResource { + // The maximum number of instances to create. + optional int64 count = 94851343; + + // The instance properties defining the VM instances to be created. Required if sourceInstanceTemplate is not provided. + optional InstanceProperties instance_properties = 215355165; + + // Policy for chosing target zone. + optional LocationPolicy location_policy = 465689852; + + // The minimum number of instances to create. If no min_count is specified then count is used as the default value. If min_count instances cannot be created, then no instances will be created and instances already created will be deleted. + optional int64 min_count = 523228386; + + // The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern must contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: a name_pattern of inst-#### generates instance names such as inst-0001 and inst-0002. If existing instances in the same project and zone have names that match the name pattern then the generated instance numbers start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### begin with inst-0051. The name pattern placeholder #...# can contain up to 18 characters. + optional string name_pattern = 413815260; + + // Per-instance properties to be set on individual instances. Keys of this map specify requested instance names. Can be empty if name_pattern is used. + map per_instance_properties = 108502267; + + // Specifies the instance template from which to create instances. You may combine sourceInstanceTemplate with instanceProperties to override specific values from an existing instance template. Bulk API follows the semantics of JSON Merge Patch described by RFC 7396. It can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate This field is optional. + optional string source_instance_template = 332423616; + +} + +// Per-instance properties to be set on individual instances. To be extended in the future. +message BulkInsertInstanceResourcePerInstanceProperties { + // This field is only temporary. It will be removed. Do not use it. + optional string name = 3373707; + +} + +// A request message for RegionInstances.BulkInsert. See the method description for details. +message BulkInsertRegionInstanceRequest { + // The body resource for this request + BulkInsertInstanceResource bulk_insert_instance_resource_resource = 41427278 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// +message CacheInvalidationRule { + // If set, this invalidation rule will only apply to requests with a Host header matching host. + optional string host = 3208616; + + optional string path = 3433509; + +} + +// Message containing what to include in the cache key for a request for Cloud CDN. +message CacheKeyPolicy { + // If true, requests to different hosts will be cached separately. + optional bool include_host = 486867679; + + // If true, http and https requests will be cached separately. + optional bool include_protocol = 303507535; + + // If true, include query string parameters in the cache key according to query_string_whitelist and query_string_blacklist. If neither is set, the entire query string will be included. If false, the query string will be excluded from the cache key entirely. + optional bool include_query_string = 474036639; + + // Names of query string parameters to exclude in cache keys. All other parameters will be included. Either specify query_string_whitelist or query_string_blacklist, not both. '&' and '=' will be percent encoded and not treated as delimiters. + repeated string query_string_blacklist = 354964742; + + // Names of query string parameters to include in cache keys. All other parameters will be excluded. Either specify query_string_whitelist or query_string_blacklist, not both. '&' and '=' will be percent encoded and not treated as delimiters. + repeated string query_string_whitelist = 52456496; + +} + +// Settings controlling the volume of requests, connections and retries to this backend service. +message CircuitBreakers { + // Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + optional int32 max_connections = 110652154; + + // Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + optional int32 max_pending_requests = 375558887; + + // The maximum number of parallel requests that allowed to the backend service. If not specified, there is no limit. + optional int32 max_requests = 28097599; + + // Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + optional int32 max_requests_per_connection = 361630528; + + // Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. + optional int32 max_retries = 55546219; + +} + +// A request message for FirewallPolicies.CloneRules. See the method description for details. +message CloneRulesFirewallPolicyRequest { + // Name of the firewall policy to update. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The firewall policy from which to copy rules. + optional string source_firewall_policy = 25013549; + +} + +// Represents a regional Commitment resource. Creating a commitment resource means that you are purchasing a committed use contract with an explicit start and end time. You can create commitments based on vCPUs and memory usage and receive discounted rates. For full details, read Signing Up for Committed Use Discounts. +message Commitment { + // The category of the commitment. Category MACHINE specifies commitments composed of machine resources such as VCPU or MEMORY, listed in resources. Category LICENSE specifies commitments composed of software licenses, listed in licenseResources. Note that only MACHINE commitments should have a Type specified. + enum Category { + // A value indicating that the enum field is not set. + UNDEFINED_CATEGORY = 0; + + CATEGORY_UNSPECIFIED = 509189462; + + LICENSE = 347869217; + + MACHINE = 469553191; + + } + + // The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years). + enum Plan { + // A value indicating that the enum field is not set. + UNDEFINED_PLAN = 0; + + INVALID = 530283991; + + THIRTY_SIX_MONTH = 266295942; + + TWELVE_MONTH = 173083962; + + } + + // [Output Only] Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + ACTIVE = 314733318; + + CREATING = 455564985; + + EXPIRED = 482489093; + + NOT_YET_ACTIVE = 20607337; + + } + + // The type of commitment, which affects the discount rate and the eligible resources. Type MEMORY_OPTIMIZED specifies a commitment that will only apply to memory optimized machines. Type ACCELERATOR_OPTIMIZED specifies a commitment that will only apply to accelerator optimized machines. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + ACCELERATOR_OPTIMIZED = 280848403; + + COMPUTE_OPTIMIZED = 158349023; + + GENERAL_PURPOSE = 299793543; + + GENERAL_PURPOSE_E2 = 301911877; + + GENERAL_PURPOSE_N2 = 301912156; + + GENERAL_PURPOSE_N2D = 232471400; + + MEMORY_OPTIMIZED = 281753417; + + TYPE_UNSPECIFIED = 437714322; + + } + + // The category of the commitment. Category MACHINE specifies commitments composed of machine resources such as VCPU or MEMORY, listed in resources. Category LICENSE specifies commitments composed of software licenses, listed in licenseResources. Note that only MACHINE commitments should have a Type specified. + // Check the Category enum for the list of possible values. + optional string category = 50511102; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] Commitment end time in RFC3339 text format. + optional string end_timestamp = 468096690; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#commitment for commitments. + optional string kind = 3292052; + + // The license specification required as part of a license commitment. + optional LicenseResourceCommitment license_resource = 437955148; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years). + // Check the Plan enum for the list of possible values. + optional string plan = 3443497; + + // [Output Only] URL of the region where this commitment may be used. + optional string region = 138946292; + + // List of reservations in this commitment. + repeated Reservation reservations = 399717927; + + // A list of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together. + repeated ResourceCommitment resources = 164412965; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] Commitment start time in RFC3339 text format. + optional string start_timestamp = 83645817; + + // [Output Only] Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // [Output Only] An optional, human-readable explanation of the status. + optional string status_message = 297428154; + + // The type of commitment, which affects the discount rate and the eligible resources. Type MEMORY_OPTIMIZED specifies a commitment that will only apply to memory optimized machines. Type ACCELERATOR_OPTIMIZED specifies a commitment that will only apply to accelerator optimized machines. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// +message CommitmentAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of CommitmentsScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#commitmentAggregatedList for aggregated lists of commitments. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of Commitment resources. +message CommitmentList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Commitment resources. + repeated Commitment items = 100526016; + + // [Output Only] Type of resource. Always compute#commitmentList for lists of commitments. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message CommitmentsScopedList { + // [Output Only] A list of commitments contained in this scope. + repeated Commitment commitments = 450664446; + + // [Output Only] Informational warning which replaces the list of commitments when the list is empty. + optional Warning warning = 50704284; + +} + +// This is deprecated and has no effect. Do not use. +message Condition { + // This is deprecated and has no effect. Do not use. + optional string iam = 104021; + + // This is deprecated and has no effect. Do not use. + optional string op = 3553; + + // This is deprecated and has no effect. Do not use. + optional string svc = 114272; + + // This is deprecated and has no effect. Do not use. + optional string sys = 114381; + + // This is deprecated and has no effect. Do not use. + repeated string values = 249928994; + +} + +// A set of Confidential Instance options. +message ConfidentialInstanceConfig { + // Defines whether the instance should have confidential compute enabled. + optional bool enable_confidential_compute = 102135228; + +} + +// Message containing connection draining configuration. +message ConnectionDraining { + // Configures a duration timeout for existing requests on a removed backend instance. For supported load balancers and protocols, as described in Enabling connection draining. + optional int32 draining_timeout_sec = 225127070; + +} + +// This message defines settings for a consistent hash style load balancer. +message ConsistentHashLoadBalancerSettings { + // Hash is based on HTTP Cookie. This field describes a HTTP cookie that will be used as the hash key for the consistent hash load balancer. If the cookie is not present, it will be generated. This field is applicable if the sessionAffinity is set to HTTP_COOKIE. + optional ConsistentHashLoadBalancerSettingsHttpCookie http_cookie = 6673915; + + // The hash based on the value of the specified header field. This field is applicable if the sessionAffinity is set to HEADER_FIELD. + optional string http_header_name = 234798022; + + // The minimum number of virtual nodes to use for the hash ring. Defaults to 1024. Larger ring sizes result in more granular load distributions. If the number of hosts in the load balancing pool is larger than the ring size, each host will be assigned a single virtual node. + optional int64 minimum_ring_size = 234380735; + +} + +// The information about the HTTP Cookie on which the hash function is based for load balancing policies that use a consistent hash. +message ConsistentHashLoadBalancerSettingsHttpCookie { + // Name of the cookie. + optional string name = 3373707; + + // Path to set for the cookie. + optional string path = 3433509; + + // Lifetime of the cookie. + optional Duration ttl = 115180; + +} + +// The specification for allowing client side cross-origin requests. Please see W3C Recommendation for Cross Origin Resource Sharing +message CorsPolicy { + // In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This translates to the Access-Control-Allow-Credentials header. Default is false. + optional bool allow_credentials = 481263366; + + // Specifies the content for the Access-Control-Allow-Headers header. + repeated string allow_headers = 45179024; + + // Specifies the content for the Access-Control-Allow-Methods header. + repeated string allow_methods = 205405372; + + // Specifies the regualar expression patterns that match allowed origins. For regular expression grammar please see github.com/google/re2/wiki/Syntax An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. + repeated string allow_origin_regexes = 215385810; + + // Specifies the list of origins that will be allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes. + repeated string allow_origins = 194914071; + + // If true, specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect. + optional bool disabled = 270940796; + + // Specifies the content for the Access-Control-Expose-Headers header. + repeated string expose_headers = 247604747; + + // Specifies how long results of a preflight request can be cached in seconds. This translates to the Access-Control-Max-Age header. + optional int32 max_age = 307559332; + +} + +// A request message for InstanceGroupManagers.CreateInstances. See the method description for details. +message CreateInstancesInstanceGroupManagerRequest { + // The name of the managed instance group. It should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManagersCreateInstancesRequest instance_group_managers_create_instances_request_resource = 24558867 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the managed instance group is located. It should conform to RFC1035. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionInstanceGroupManagers.CreateInstances. See the method description for details. +message CreateInstancesRegionInstanceGroupManagerRequest { + // The name of the managed instance group. It should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The name of the region where the managed instance group is located. It should conform to RFC1035. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionInstanceGroupManagersCreateInstancesRequest region_instance_group_managers_create_instances_request_resource = 359014280 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Disks.CreateSnapshot. See the method description for details. +message CreateSnapshotDiskRequest { + // Name of the persistent disk to snapshot. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // [Input Only] Whether to attempt an application consistent snapshot by informing the OS to prepare for the snapshot process. Currently only supported on Windows instances using the Volume Shadow Copy Service (VSS). + optional bool guest_flush = 385550813; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + Snapshot snapshot_resource = 481319977 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionDisks.CreateSnapshot. See the method description for details. +message CreateSnapshotRegionDiskRequest { + // Name of the regional persistent disk to snapshot. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + Snapshot snapshot_resource = 481319977 [(google.api.field_behavior) = REQUIRED]; + +} + +// +message CustomerEncryptionKey { + // The name of the encryption key that is stored in Google Cloud KMS. For example: "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/ key_region/cryptoKeys/key + optional string kms_key_name = 484373913; + + // The service account being used for the encryption request for the given KMS key. If absent, the Compute Engine default service account is used. For example: "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/ + optional string kms_key_service_account = 209986261; + + // Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource. You can provide either the rawKey or the rsaEncryptedKey. For example: "rawKey": "SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0=" + optional string raw_key = 449196488; + + // Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource. You can provide either the rawKey or the rsaEncryptedKey. For example: "rsaEncryptedKey": "ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe==" The key must meet the following requirements before you can provide it to Compute Engine: 1. The key is wrapped using a RSA public key certificate provided by Google. 2. After being wrapped, the key must be encoded in RFC 4648 base64 encoding. Gets the RSA public key certificate provided by Google at: https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem + optional string rsa_encrypted_key = 335487397; + + // [Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource. + optional string sha256 = 170112551; + +} + +// +message CustomerEncryptionKeyProtectedDisk { + // Decrypts data associated with the disk with a customer-supplied encryption key. + optional CustomerEncryptionKey disk_encryption_key = 271660677; + + // Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks. For example: "source": "/compute/v1/projects/project_id/zones/zone/disks/ disk_name + optional string source = 177235995; + +} + +// +message Data { + // [Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding). + optional string key = 106079; + + // [Output Only] A warning data value corresponding to the key. + optional string value = 111972721; + +} + +// A request message for Instances.DeleteAccessConfig. See the method description for details. +message DeleteAccessConfigInstanceRequest { + // The name of the access config to delete. + string access_config = 72856189 [(google.api.field_behavior) = REQUIRED]; + + // The instance name for this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The name of the network interface. + string network_interface = 365387880 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Addresses.Delete. See the method description for details. +message DeleteAddressRequest { + // Name of the address resource to delete. + string address = 462920692 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Autoscalers.Delete. See the method description for details. +message DeleteAutoscalerRequest { + // Name of the autoscaler to delete. + string autoscaler = 517258967 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for BackendBuckets.Delete. See the method description for details. +message DeleteBackendBucketRequest { + // Name of the BackendBucket resource to delete. + string backend_bucket = 91714037 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for BackendServices.Delete. See the method description for details. +message DeleteBackendServiceRequest { + // Name of the BackendService resource to delete. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Disks.Delete. See the method description for details. +message DeleteDiskRequest { + // Name of the persistent disk to delete. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for ExternalVpnGateways.Delete. See the method description for details. +message DeleteExternalVpnGatewayRequest { + // Name of the externalVpnGateways to delete. + string external_vpn_gateway = 109898629 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for FirewallPolicies.Delete. See the method description for details. +message DeleteFirewallPolicyRequest { + // Name of the firewall policy to delete. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Firewalls.Delete. See the method description for details. +message DeleteFirewallRequest { + // Name of the firewall rule to delete. + string firewall = 511016192 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for ForwardingRules.Delete. See the method description for details. +message DeleteForwardingRuleRequest { + // Name of the ForwardingRule resource to delete. + string forwarding_rule = 269964030 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for GlobalAddresses.Delete. See the method description for details. +message DeleteGlobalAddressRequest { + // Name of the address resource to delete. + string address = 462920692 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for GlobalForwardingRules.Delete. See the method description for details. +message DeleteGlobalForwardingRuleRequest { + // Name of the ForwardingRule resource to delete. + string forwarding_rule = 269964030 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for GlobalNetworkEndpointGroups.Delete. See the method description for details. +message DeleteGlobalNetworkEndpointGroupRequest { + // The name of the network endpoint group to delete. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for GlobalOperations.Delete. See the method description for details. +message DeleteGlobalOperationRequest { + // Name of the Operations resource to delete. + string operation = 52090215 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A response message for GlobalOperations.Delete. See the method description for details. +message DeleteGlobalOperationResponse { +} + +// A request message for GlobalOrganizationOperations.Delete. See the method description for details. +message DeleteGlobalOrganizationOperationRequest { + // Name of the Operations resource to delete. + string operation = 52090215 [(google.api.field_behavior) = REQUIRED]; + + // Parent ID for this request. + optional string parent_id = 459714768; + +} + +// A response message for GlobalOrganizationOperations.Delete. See the method description for details. +message DeleteGlobalOrganizationOperationResponse { +} + +// A request message for GlobalPublicDelegatedPrefixes.Delete. See the method description for details. +message DeleteGlobalPublicDelegatedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the PublicDelegatedPrefix resource to delete. + string public_delegated_prefix = 204238440 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + +} + +// A request message for HealthChecks.Delete. See the method description for details. +message DeleteHealthCheckRequest { + // Name of the HealthCheck resource to delete. + string health_check = 308876645 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Images.Delete. See the method description for details. +message DeleteImageRequest { + // Name of the image resource to delete. + string image = 100313435 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for InstanceGroupManagers.Delete. See the method description for details. +message DeleteInstanceGroupManagerRequest { + // The name of the managed instance group to delete. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the managed instance group is located. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for InstanceGroups.Delete. See the method description for details. +message DeleteInstanceGroupRequest { + // The name of the instance group to delete. + string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the instance group is located. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Instances.Delete. See the method description for details. +message DeleteInstanceRequest { + // Name of the instance resource to delete. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for InstanceTemplates.Delete. See the method description for details. +message DeleteInstanceTemplateRequest { + // The name of the instance template to delete. + string instance_template = 309248228 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for InstanceGroupManagers.DeleteInstances. See the method description for details. +message DeleteInstancesInstanceGroupManagerRequest { + // The name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManagersDeleteInstancesRequest instance_group_managers_delete_instances_request_resource = 166421252 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the managed instance group is located. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionInstanceGroupManagers.DeleteInstances. See the method description for details. +message DeleteInstancesRegionInstanceGroupManagerRequest { + // Name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionInstanceGroupManagersDeleteInstancesRequest region_instance_group_managers_delete_instances_request_resource = 500876665 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for InterconnectAttachments.Delete. See the method description for details. +message DeleteInterconnectAttachmentRequest { + // Name of the interconnect attachment to delete. + string interconnect_attachment = 308135284 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Interconnects.Delete. See the method description for details. +message DeleteInterconnectRequest { + // Name of the interconnect to delete. + string interconnect = 224601230 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Licenses.Delete. See the method description for details. +message DeleteLicenseRequest { + // Name of the license resource to delete. + string license = 166757441 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for NetworkEndpointGroups.Delete. See the method description for details. +message DeleteNetworkEndpointGroupRequest { + // The name of the network endpoint group to delete. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the network endpoint group is located. It should comply with RFC1035. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Networks.Delete. See the method description for details. +message DeleteNetworkRequest { + // Name of the network to delete. + string network = 232872494 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for NodeGroups.Delete. See the method description for details. +message DeleteNodeGroupRequest { + // Name of the NodeGroup resource to delete. + string node_group = 469958146 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for NodeTemplates.Delete. See the method description for details. +message DeleteNodeTemplateRequest { + // Name of the NodeTemplate resource to delete. + string node_template = 323154455 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for NodeGroups.DeleteNodes. See the method description for details. +message DeleteNodesNodeGroupRequest { + // Name of the NodeGroup resource whose nodes will be deleted. + string node_group = 469958146 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NodeGroupsDeleteNodesRequest node_groups_delete_nodes_request_resource = 183298962 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for PacketMirrorings.Delete. See the method description for details. +message DeletePacketMirroringRequest { + // Name of the PacketMirroring resource to delete. + string packet_mirroring = 22305996 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for InstanceGroupManagers.DeletePerInstanceConfigs. See the method description for details. +message DeletePerInstanceConfigsInstanceGroupManagerRequest { + // The name of the managed instance group. It should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManagersDeletePerInstanceConfigsReq instance_group_managers_delete_per_instance_configs_req_resource = 362427680 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The name of the zone where the managed instance group is located. It should conform to RFC1035. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionInstanceGroupManagers.DeletePerInstanceConfigs. See the method description for details. +message DeletePerInstanceConfigsRegionInstanceGroupManagerRequest { + // The name of the managed instance group. It should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request, should conform to RFC1035. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionInstanceGroupManagerDeleteInstanceConfigReq region_instance_group_manager_delete_instance_config_req_resource = 740741 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for PublicAdvertisedPrefixes.Delete. See the method description for details. +message DeletePublicAdvertisedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the PublicAdvertisedPrefix resource to delete. + string public_advertised_prefix = 101874590 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + +} + +// A request message for PublicDelegatedPrefixes.Delete. See the method description for details. +message DeletePublicDelegatedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the PublicDelegatedPrefix resource to delete. + string public_delegated_prefix = 204238440 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region of this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + +} + +// A request message for RegionAutoscalers.Delete. See the method description for details. +message DeleteRegionAutoscalerRequest { + // Name of the autoscaler to delete. + string autoscaler = 517258967 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionBackendServices.Delete. See the method description for details. +message DeleteRegionBackendServiceRequest { + // Name of the BackendService resource to delete. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionDisks.Delete. See the method description for details. +message DeleteRegionDiskRequest { + // Name of the regional persistent disk to delete. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionHealthChecks.Delete. See the method description for details. +message DeleteRegionHealthCheckRequest { + // Name of the HealthCheck resource to delete. + string health_check = 308876645 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionHealthCheckServices.Delete. See the method description for details. +message DeleteRegionHealthCheckServiceRequest { + // Name of the HealthCheckService to delete. The name must be 1-63 characters long, and comply with RFC1035. + string health_check_service = 408374747 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionInstanceGroupManagers.Delete. See the method description for details. +message DeleteRegionInstanceGroupManagerRequest { + // Name of the managed instance group to delete. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionNetworkEndpointGroups.Delete. See the method description for details. +message DeleteRegionNetworkEndpointGroupRequest { + // The name of the network endpoint group to delete. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The name of the region where the network endpoint group is located. It should comply with RFC1035. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionNotificationEndpoints.Delete. See the method description for details. +message DeleteRegionNotificationEndpointRequest { + // Name of the NotificationEndpoint resource to delete. + string notification_endpoint = 376807017 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + +} + +// A request message for RegionOperations.Delete. See the method description for details. +message DeleteRegionOperationRequest { + // Name of the Operations resource to delete. + string operation = 52090215 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A response message for RegionOperations.Delete. See the method description for details. +message DeleteRegionOperationResponse { +} + +// A request message for RegionSslCertificates.Delete. See the method description for details. +message DeleteRegionSslCertificateRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // Name of the SslCertificate resource to delete. + string ssl_certificate = 46443492 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionTargetHttpProxies.Delete. See the method description for details. +message DeleteRegionTargetHttpProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetHttpProxy resource to delete. + string target_http_proxy = 206872421 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionTargetHttpsProxies.Delete. See the method description for details. +message DeleteRegionTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // Name of the TargetHttpsProxy resource to delete. + string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionUrlMaps.Delete. See the method description for details. +message DeleteRegionUrlMapRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // begin_interface: MixerMutationRequestBuilder Request ID to support idempotency. + optional string request_id = 37109963; + + // Name of the UrlMap resource to delete. + string url_map = 367020684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Reservations.Delete. See the method description for details. +message DeleteReservationRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the reservation to delete. + string reservation = 47530956 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for ResourcePolicies.Delete. See the method description for details. +message DeleteResourcePolicyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the resource policy to delete. + string resource_policy = 159240835 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Routes.Delete. See the method description for details. +message DeleteRouteRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the Route resource to delete. + string route = 108704329 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Routers.Delete. See the method description for details. +message DeleteRouterRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the Router resource to delete. + string router = 148608841 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SecurityPolicies.Delete. See the method description for details. +message DeleteSecurityPolicyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the security policy to delete. + string security_policy = 171082513 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ServiceAttachments.Delete. See the method description for details. +message DeleteServiceAttachmentRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region of this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // Name of the ServiceAttachment resource to delete. + string service_attachment = 338957549 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for BackendBuckets.DeleteSignedUrlKey. See the method description for details. +message DeleteSignedUrlKeyBackendBucketRequest { + // Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035. + string backend_bucket = 91714037 [(google.api.field_behavior) = REQUIRED]; + + // The name of the Signed URL Key to delete. + string key_name = 500938859 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for BackendServices.DeleteSignedUrlKey. See the method description for details. +message DeleteSignedUrlKeyBackendServiceRequest { + // Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + // The name of the Signed URL Key to delete. + string key_name = 500938859 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Snapshots.Delete. See the method description for details. +message DeleteSnapshotRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the Snapshot resource to delete. + string snapshot = 284874180 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SslCertificates.Delete. See the method description for details. +message DeleteSslCertificateRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // Name of the SslCertificate resource to delete. + string ssl_certificate = 46443492 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SslPolicies.Delete. See the method description for details. +message DeleteSslPolicyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the SSL policy to delete. The name must be 1-63 characters long, and comply with RFC1035. + string ssl_policy = 295190213 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Subnetworks.Delete. See the method description for details. +message DeleteSubnetworkRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the Subnetwork resource to delete. + string subnetwork = 307827694 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetGrpcProxies.Delete. See the method description for details. +message DeleteTargetGrpcProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // Name of the TargetGrpcProxy resource to delete. + string target_grpc_proxy = 5020283 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpProxies.Delete. See the method description for details. +message DeleteTargetHttpProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetHttpProxy resource to delete. + string target_http_proxy = 206872421 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpsProxies.Delete. See the method description for details. +message DeleteTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetHttpsProxy resource to delete. + string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetInstances.Delete. See the method description for details. +message DeleteTargetInstanceRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetInstance resource to delete. + string target_instance = 289769347 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone scoping this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for TargetPools.Delete. See the method description for details. +message DeleteTargetPoolRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetPool resource to delete. + string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetSslProxies.Delete. See the method description for details. +message DeleteTargetSslProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetSslProxy resource to delete. + string target_ssl_proxy = 338795853 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetTcpProxies.Delete. See the method description for details. +message DeleteTargetTcpProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetTcpProxy resource to delete. + string target_tcp_proxy = 503065442 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetVpnGateways.Delete. See the method description for details. +message DeleteTargetVpnGatewayRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the target VPN gateway to delete. + string target_vpn_gateway = 532512843 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for UrlMaps.Delete. See the method description for details. +message DeleteUrlMapRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the UrlMap resource to delete. + string url_map = 367020684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for VpnGateways.Delete. See the method description for details. +message DeleteVpnGatewayRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the VPN gateway to delete. + string vpn_gateway = 406684153 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for VpnTunnels.Delete. See the method description for details. +message DeleteVpnTunnelRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the VpnTunnel resource to delete. + string vpn_tunnel = 143821331 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ZoneOperations.Delete. See the method description for details. +message DeleteZoneOperationRequest { + // Name of the Operations resource to delete. + string operation = 52090215 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A response message for ZoneOperations.Delete. See the method description for details. +message DeleteZoneOperationResponse { +} + +// +message Denied { + // The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp) or the IP protocol number. + optional string I_p_protocol = 488094525; + + // An optional list of ports to which this rule applies. This field is only applicable for the UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: ["22"], ["80","443"], and ["12345-12349"]. + repeated string ports = 106854418; + +} + +// A request message for Images.Deprecate. See the method description for details. +message DeprecateImageRequest { + // The body resource for this request + DeprecationStatus deprecation_status_resource = 333006064 [(google.api.field_behavior) = REQUIRED]; + + // Image name. + string image = 100313435 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// Deprecation status for a public resource. +message DeprecationStatus { + // The deprecation state of this resource. This can be ACTIVE, DEPRECATED, OBSOLETE, or DELETED. Operations which communicate the end of life date for an image, can use ACTIVE. Operations which create a new resource using a DEPRECATED resource will return successfully, but with a warning indicating the deprecated resource and recommending its replacement. Operations which use OBSOLETE or DELETED resources will be rejected and result in an error. + enum State { + // A value indicating that the enum field is not set. + UNDEFINED_STATE = 0; + + ACTIVE = 314733318; + + DELETED = 120962041; + + DEPRECATED = 463360435; + + OBSOLETE = 66532761; + + } + + // An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DELETED. This is only informational and the status will not change unless the client explicitly changes it. + optional string deleted = 476721177; + + // An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DEPRECATED. This is only informational and the status will not change unless the client explicitly changes it. + optional string deprecated = 515138995; + + // An optional RFC3339 timestamp on or after which the state of this resource is intended to change to OBSOLETE. This is only informational and the status will not change unless the client explicitly changes it. + optional string obsolete = 357647769; + + // The URL of the suggested replacement for a deprecated resource. The suggested replacement resource must be the same kind of resource as the deprecated resource. + optional string replacement = 430919186; + + // The deprecation state of this resource. This can be ACTIVE, DEPRECATED, OBSOLETE, or DELETED. Operations which communicate the end of life date for an image, can use ACTIVE. Operations which create a new resource using a DEPRECATED resource will return successfully, but with a warning indicating the deprecated resource and recommending its replacement. Operations which use OBSOLETE or DELETED resources will be rejected and result in an error. + // Check the State enum for the list of possible values. + optional string state = 109757585; + +} + +// A request message for Instances.DetachDisk. See the method description for details. +message DetachDiskInstanceRequest { + // The device name of the disk to detach. Make a get() request on the instance to view currently attached disks and device names. + string device_name = 67541716 [(google.api.field_behavior) = REQUIRED]; + + // Instance name for this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for GlobalNetworkEndpointGroups.DetachNetworkEndpoints. See the method description for details. +message DetachNetworkEndpointsGlobalNetworkEndpointGroupRequest { + // The body resource for this request + GlobalNetworkEndpointGroupsDetachEndpointsRequest global_network_endpoint_groups_detach_endpoints_request_resource = 8898269 [(google.api.field_behavior) = REQUIRED]; + + // The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for NetworkEndpointGroups.DetachNetworkEndpoints. See the method description for details. +message DetachNetworkEndpointsNetworkEndpointGroupRequest { + // The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NetworkEndpointGroupsDetachEndpointsRequest network_endpoint_groups_detach_endpoints_request_resource = 515608697 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the network endpoint group is located. It should comply with RFC1035. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Projects.DisableXpnHost. See the method description for details. +message DisableXpnHostProjectRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Projects.DisableXpnResource. See the method description for details. +message DisableXpnResourceProjectRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The body resource for this request + ProjectsDisableXpnResourceRequest projects_disable_xpn_resource_request_resource = 209136170 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// Represents a Persistent Disk resource. Google Compute Engine has two Disk resources: * [Zonal](/compute/docs/reference/rest/v1/disks) * [Regional](/compute/docs/reference/rest/v1/regionDisks) Persistent disks are required for running your VM instances. Create both boot and non-boot (data) persistent disks. For more information, read Persistent Disks. For more storage options, read Storage options. The disks resource represents a zonal persistent disk. For more information, read Zonal persistent disks. The regionDisks resource represents a regional persistent disk. For more information, read Regional resources. +message Disk { + // [Output Only] The status of disk creation. - CREATING: Disk is provisioning. - RESTORING: Source data is being copied into the disk. - FAILED: Disk creation failed. - READY: Disk is ready for use. - DELETING: Disk is deleting. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // Disk is provisioning + CREATING = 455564985; + + // Disk is deleting. + DELETING = 528602024; + + // Disk creation failed. + FAILED = 455706685; + + // Disk is ready for use. + READY = 77848963; + + // Source data is being copied into the disk. + RESTORING = 404263851; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Encrypts the disk using a customer-supplied encryption key or a customer-managed encryption key. Encryption keys do not protect access to metadata of the disk. After you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later. For example, to create a disk snapshot, to create a disk image, to create a machine image, or to attach the disk to a virtual machine. After you encrypt a disk with a customer-managed key, the diskEncryptionKey.kmsKeyName is set to a key *version* name once the disk is created. The disk is encrypted with this version of the key. In the response, diskEncryptionKey.kmsKeyName appears in the following format: "diskEncryptionKey.kmsKeyName": "projects/kms_project_id/locations/region/keyRings/ key_region/cryptoKeys/key /cryptoKeysVersions/version If you do not provide an encryption key when creating the disk, then the disk is encrypted using an automatically generated key and you don't need to provide a key to use the disk later. + optional CustomerEncryptionKey disk_encryption_key = 271660677; + + // A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options. + repeated GuestOsFeature guest_os_features = 79294545; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#disk for disks. + optional string kind = 3292052; + + // A fingerprint for the labels being applied to this disk, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a disk. + optional string label_fingerprint = 178124825; + + // Labels to apply to this disk. These can be later modified by the setLabels method. + map labels = 500195327; + + // [Output Only] Last attach timestamp in RFC3339 text format. + optional string last_attach_timestamp = 42159653; + + // [Output Only] Last detach timestamp in RFC3339 text format. + optional string last_detach_timestamp = 56471027; + + // Integer license codes indicating which licenses are attached to this disk. + repeated int64 license_codes = 45482664; + + // A list of publicly visible licenses. Reserved for Google's use. + repeated string licenses = 337642578; + + // An opaque location hint used to place the disk close to other resources. This field is for use by internal tools that use the public API. + optional string location_hint = 350519505; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // Internal use only. + optional string options = 361137822; + + // Physical block size of the persistent disk, in bytes. If not present in a request, a default value is used. The currently supported size is 4096, other sizes may be added in the future. If an unsupported value is requested, the error message will list the supported values for the caller's project. + optional int64 physical_block_size_bytes = 420007943; + + // Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation. + optional int64 provisioned_iops = 186769108; + + // [Output Only] URL of the region where the disk resides. Only applicable for regional resources. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // URLs of the zones where the disk should be replicated to. Only applicable for regional resources. + repeated string replica_zones = 48438272; + + // Resource policies applied to this disk for automatic snapshot creations. + repeated string resource_policies = 22220385; + + // [Output Only] Reserved for future use. + optional bool satisfies_pzs = 480964267; + + // [Output Only] Server-defined fully-qualified URL for this resource. + optional string self_link = 456214797; + + // Size, in GB, of the persistent disk. You can specify this field when creating a persistent disk using the sourceImage, sourceSnapshot, or sourceDisk parameter, or specify it alone to create an empty persistent disk. If you specify this field along with a source, the value of sizeGb must not be less than the size of the source. Acceptable values are 1 to 65536, inclusive. + optional int64 size_gb = 494929369; + + // The source disk used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /disks/disk - https://www.googleapis.com/compute/v1/projects/project/regions/region /disks/disk - projects/project/zones/zone/disks/disk - projects/project/regions/region/disks/disk - zones/zone/disks/disk - regions/region/disks/disk + optional string source_disk = 451753793; + + // [Output Only] The unique ID of the disk used to create this disk. This value identifies the exact disk that was used to create this persistent disk. For example, if you created the persistent disk from a disk that was later deleted and recreated under the same name, the source disk ID would identify the exact version of the disk that was used. + optional string source_disk_id = 454190809; + + // The source image used to create this disk. If the source image is deleted, this field will not be set. To create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-9 to use the latest Debian 9 image: projects/debian-cloud/global/images/family/debian-9 Alternatively, use a specific version of a public operating system image: projects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD To create a disk with a custom image that you created, specify the image name in the following format: global/images/my-custom-image You can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name: global/images/family/my-image-family + optional string source_image = 50443319; + + // The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key. + optional CustomerEncryptionKey source_image_encryption_key = 381503659; + + // [Output Only] The ID value of the image used to create this disk. This value identifies the exact image that was used to create this persistent disk. For example, if you created the persistent disk from an image that was later deleted and recreated under the same name, the source image ID would identify the exact version of the image that was used. + optional string source_image_id = 55328291; + + // The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project /global/snapshots/snapshot - projects/project/global/snapshots/snapshot - global/snapshots/snapshot + optional string source_snapshot = 126061928; + + // The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key. + optional CustomerEncryptionKey source_snapshot_encryption_key = 303679322; + + // [Output Only] The unique ID of the snapshot used to create this disk. This value identifies the exact snapshot that was used to create this persistent disk. For example, if you created the persistent disk from a snapshot that was later deleted and recreated under the same name, the source snapshot ID would identify the exact version of the snapshot that was used. + optional string source_snapshot_id = 98962258; + + // The full Google Cloud Storage URI where the disk image is stored. This file must be a gzip-compressed tarball whose name ends in .tar.gz or virtual machine disk whose name ends in vmdk. Valid URIs may start with gs:// or https://storage.googleapis.com/. This flag is not optimized for creating multiple disks from a source storage object. To create many disks from a source storage object, use gcloud compute images import instead. + optional string source_storage_object = 233052711; + + // [Output Only] The status of disk creation. - CREATING: Disk is provisioning. - RESTORING: Source data is being copied into the disk. - FAILED: Disk creation failed. - READY: Disk is ready for use. - DELETING: Disk is deleting. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-ssd . See Persistent disk types. + optional string type = 3575610; + + // [Output Only] Links to the users of the disk (attached instances) in form: projects/project/zones/zone/instances/instance + repeated string users = 111578632; + + // [Output Only] URL of the zone where the disk resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string zone = 3744684; + +} + +// +message DiskAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of DisksScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#diskAggregatedList for aggregated lists of persistent disks. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// A specification of the desired way to instantiate a disk in the instance template when its created from a source instance. +message DiskInstantiationConfig { + // Specifies whether to include the disk and what image to use. Possible values are: - source-image: to use the same image that was used to create the source instance's corresponding disk. Applicable to the boot disk and additional read-write disks. - source-image-family: to use the same image family that was used to create the source instance's corresponding disk. Applicable to the boot disk and additional read-write disks. - custom-image: to use a user-provided image url for disk creation. Applicable to the boot disk and additional read-write disks. - attach-read-only: to attach a read-only disk. Applicable to read-only disks. - do-not-include: to exclude a disk from the template. Applicable to additional read-write disks, local SSDs, and read-only disks. + enum InstantiateFrom { + // A value indicating that the enum field is not set. + UNDEFINED_INSTANTIATE_FROM = 0; + + // Attach the existing disk in read-only mode. The request will fail if the disk was attached in read-write mode on the source instance. Applicable to: read-only disks. + ATTACH_READ_ONLY = 513775419; + + // Create a blank disk. The disk will be created unformatted. Applicable to: additional read-write disks, local SSDs. + BLANK = 63281460; + + // Use the custom image specified in the custom_image field. Applicable to: boot disk, additional read-write disks. + CUSTOM_IMAGE = 196311789; + + // Use the default instantiation option for the corresponding type of disk. For boot disk and any other R/W disks, new custom images will be created from each disk. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes. + DEFAULT = 115302945; + + // Do not include the disk in the instance template. Applicable to: additional read-write disks, local SSDs, read-only disks. + DO_NOT_INCLUDE = 104218952; + + // Use the same source image used for creation of the source instance's corresponding disk. The request will fail if the source VM's disk was created from a snapshot. Applicable to: boot disk, additional read-write disks. + SOURCE_IMAGE = 62631959; + + // Use the same source image family used for creation of the source instance's corresponding disk. The request will fail if the source image of the source disk does not belong to any image family. Applicable to: boot disk, additional read-write disks. + SOURCE_IMAGE_FAMILY = 76850316; + + } + + // Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance). + optional bool auto_delete = 464761403; + + // The custom source image to be used to restore this disk when instantiating this instance template. + optional string custom_image = 184123149; + + // Specifies the device name of the disk to which the configurations apply to. + optional string device_name = 67541716; + + // Specifies whether to include the disk and what image to use. Possible values are: - source-image: to use the same image that was used to create the source instance's corresponding disk. Applicable to the boot disk and additional read-write disks. - source-image-family: to use the same image family that was used to create the source instance's corresponding disk. Applicable to the boot disk and additional read-write disks. - custom-image: to use a user-provided image url for disk creation. Applicable to the boot disk and additional read-write disks. - attach-read-only: to attach a read-only disk. Applicable to read-only disks. - do-not-include: to exclude a disk from the template. Applicable to additional read-write disks, local SSDs, and read-only disks. + // Check the InstantiateFrom enum for the list of possible values. + optional string instantiate_from = 393383903; + +} + +// A list of Disk resources. +message DiskList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Disk resources. + repeated Disk items = 100526016; + + // [Output Only] Type of resource. Always compute#diskList for lists of disks. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message DiskMoveRequest { + // The URL of the destination zone to move the disk. This can be a full or partial URL. For example, the following are all valid URLs to a zone: - https://www.googleapis.com/compute/v1/projects/project/zones/zone - projects/project/zones/zone - zones/zone + optional string destination_zone = 131854653; + + // The URL of the target disk to move. This can be a full or partial URL. For example, the following are all valid URLs to a disk: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /disks/disk - projects/project/zones/zone/disks/disk - zones/zone/disks/disk + optional string target_disk = 62433163; + +} + +// Represents a Disk Type resource. Google Compute Engine has two Disk Type resources: * [Regional](/compute/docs/reference/rest/v1/regionDiskTypes) * [Zonal](/compute/docs/reference/rest/v1/diskTypes) You can choose from a variety of disk types based on your needs. For more information, read Storage options. The diskTypes resource represents disk types for a zonal persistent disk. For more information, read Zonal persistent disks. The regionDiskTypes resource represents disk types for a regional persistent disk. For more information, read Regional persistent disks. +message DiskType { + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // [Output Only] Server-defined default disk size in GB. + optional int64 default_disk_size_gb = 270619253; + + // [Output Only] The deprecation status associated with this disk type. + optional DeprecationStatus deprecated = 515138995; + + // [Output Only] An optional description of this resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#diskType for disk types. + optional string kind = 3292052; + + // [Output Only] Name of the resource. + optional string name = 3373707; + + // [Output Only] URL of the region where the disk type resides. Only applicable for regional resources. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] An optional textual description of the valid disk size, such as "10GB-10TB". + optional string valid_disk_size = 493962464; + + // [Output Only] URL of the zone where the disk type resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string zone = 3744684; + +} + +// +message DiskTypeAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of DiskTypesScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#diskTypeAggregatedList. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of disk types. +message DiskTypeList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of DiskType resources. + repeated DiskType items = 100526016; + + // [Output Only] Type of resource. Always compute#diskTypeList for disk types. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message DiskTypesScopedList { + // [Output Only] A list of disk types contained in this scope. + repeated DiskType disk_types = 198926167; + + // [Output Only] Informational warning which replaces the list of disk types when the list is empty. + optional Warning warning = 50704284; + +} + +// +message DisksAddResourcePoliciesRequest { + // Full or relative path to the resource policy to be added to this disk. You can only specify one resource policy. + repeated string resource_policies = 22220385; + +} + +// +message DisksRemoveResourcePoliciesRequest { + // Resource policies to be removed from this disk. + repeated string resource_policies = 22220385; + +} + +// +message DisksResizeRequest { + // The new size of the persistent disk, which is specified in GB. + optional int64 size_gb = 494929369; + +} + +// +message DisksScopedList { + // [Output Only] A list of disks contained in this scope. + repeated Disk disks = 95594102; + + // [Output Only] Informational warning which replaces the list of disks when the list is empty. + optional Warning warning = 50704284; + +} + +// A set of Display Device options +message DisplayDevice { + // Defines whether the instance has Display enabled. + optional bool enable_display = 14266886; + +} + +// +message DistributionPolicy { + // The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType). + enum TargetShape { + // A value indicating that the enum field is not set. + UNDEFINED_TARGET_SHAPE = 0; + + // The group picks zones for creating VM instances to fulfill the requested number of VMs within present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads that do not require high availability. + ANY = 64972; + + // The group prioritizes acquisition of resources, scheduling VMs in zones where resources are available while distributing VMs as evenly as possible across selected zones to minimize the impact of zonal failure. Recommended for highly available serving workloads. + BALANCED = 468409608; + + // The group schedules VM instance creation and deletion to achieve and maintain an even number of managed instances across the selected zones. The distribution is even when the number of managed instances does not differ by more than 1 between any two zones. Recommended for highly available serving workloads. + EVEN = 2140442; + + } + + // The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType). + // Check the TargetShape enum for the list of possible values. + optional string target_shape = 338621299; + + // Zones where the regional managed instance group will create and manage its instances. + repeated DistributionPolicyZoneConfiguration zones = 116085319; + +} + +// +message DistributionPolicyZoneConfiguration { + // The URL of the zone. The zone must exist in the region where the managed instance group is located. + optional string zone = 3744684; + +} + +// A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like "day" or "month". Range is approximately 10,000 years. +message Duration { + // Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 `seconds` field and a positive `nanos` field. Must be from 0 to 999,999,999 inclusive. + optional int32 nanos = 104586303; + + // Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years + optional int64 seconds = 359484031; + +} + +// A request message for Projects.EnableXpnHost. See the method description for details. +message EnableXpnHostProjectRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Projects.EnableXpnResource. See the method description for details. +message EnableXpnResourceProjectRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The body resource for this request + ProjectsEnableXpnResourceRequest projects_enable_xpn_resource_request_resource = 421980207 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// [Output Only] If errors are generated during processing of the operation, this field will be populated. +message Error { + // [Output Only] The array of errors encountered while processing this operation. + repeated Errors errors = 315977579; + +} + +// +message Errors { + // [Output Only] The error type identifier for this error. + optional string code = 3059181; + + // [Output Only] Indicates the field in the request that caused the error. This property is optional. + optional string location = 290430901; + + // [Output Only] An optional, human-readable error message. + optional string message = 418054151; + +} + +// +message ExchangedPeeringRoute { + // The type of the peering route. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + // For routes exported from local network. + DYNAMIC_PEERING_ROUTE = 469794858; + + // The peering route. + STATIC_PEERING_ROUTE = 473407545; + + // The peering route corresponding to subnetwork range. + SUBNET_PEERING_ROUTE = 465782504; + + } + + // The destination range of the route. + optional string dest_range = 381327712; + + // True if the peering route has been imported from a peer. The actual import happens if the field networkPeering.importCustomRoutes is true for this network, and networkPeering.exportCustomRoutes is true for the peer network, and the import does not result in a route conflict. + optional bool imported = 114502404; + + // The region of peering route next hop, only applies to dynamic routes. + optional string next_hop_region = 122577014; + + // The priority of the peering route. + optional uint32 priority = 445151652; + + // The type of the peering route. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// +message ExchangedPeeringRoutesList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of ExchangedPeeringRoute resources. + repeated ExchangedPeeringRoute items = 100526016; + + // [Output Only] Type of resource. Always compute#exchangedPeeringRoutesList for exchanged peering routes lists. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// A request message for Subnetworks.ExpandIpCidrRange. See the method description for details. +message ExpandIpCidrRangeSubnetworkRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the Subnetwork resource to update. + string subnetwork = 307827694 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + SubnetworksExpandIpCidrRangeRequest subnetworks_expand_ip_cidr_range_request_resource = 477014110 [(google.api.field_behavior) = REQUIRED]; + +} + +// Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: "Summary size limit" description: "Determines if a summary is less than 100 chars" expression: "document.summary.size() < 100" Example (Equality): title: "Requestor is owner" description: "Determines if requestor is the document owner" expression: "document.owner == request.auth.claims.email" Example (Logic): title: "Public documents" description: "Determine whether the document should be publicly visible" expression: "document.type != 'private' && document.type != 'internal'" Example (Data Manipulation): title: "Notification string" description: "Create a notification string with a timestamp." expression: "'New message received at ' + string(document.create_time)" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information. +message Expr { + // Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI. + optional string description = 422937596; + + // Textual representation of an expression in Common Expression Language syntax. + optional string expression = 352031384; + + // Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file. + optional string location = 290430901; + + // Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression. + optional string title = 110371416; + +} + +// Represents an external VPN gateway. External VPN gateway is the on-premises VPN gateway(s) or another cloud provider's VPN gateway that connects to your Google Cloud VPN gateway. To create a highly available VPN from Google Cloud Platform to your VPN gateway or another cloud provider's VPN gateway, you must create a external VPN gateway resource with information about the other gateway. For more information about using external VPN gateways, see Creating an HA VPN gateway and tunnel pair to a peer VPN. +message ExternalVpnGateway { + // Indicates the user-supplied redundancy type of this external VPN gateway. + enum RedundancyType { + // A value indicating that the enum field is not set. + UNDEFINED_REDUNDANCY_TYPE = 0; + + // The external VPN gateway has four public IP addresses; at the time of writing this API, the AWS virtual private gateway is an example which has four public IP addresses for high availability connections; there should be two VPN connections in the AWS virtual private gateway , each AWS VPN connection has two public IP addresses; please make sure to put two public IP addresses from one AWS VPN connection into interfaces 0 and 1 of this external VPN gateway, and put the other two public IP addresses from another AWS VPN connection into interfaces 2 and 3 of this external VPN gateway. When displaying highly available configuration status for the VPN tunnels connected to FOUR_IPS_REDUNDANCY external VPN gateway, Google will always detect whether interfaces 0 and 1 are connected on one interface of HA Cloud VPN gateway, and detect whether interfaces 2 and 3 are connected to another interface of the HA Cloud VPN gateway. + FOUR_IPS_REDUNDANCY = 520087913; + + // The external VPN gateway has only one public IP address which internally provide redundancy or failover. + SINGLE_IP_INTERNALLY_REDUNDANT = 133914873; + + // The external VPN gateway has two public IP addresses which are redundant with each other, the following two types of setup on your on-premises side would have this type of redundancy: (1) Two separate on-premises gateways, each with one public IP address, the two on-premises gateways are redundant with each other. (2) A single on-premise gateway with two public IP addresses that are redundant with eatch other. + TWO_IPS_REDUNDANCY = 367049635; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // A list of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers' gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway. + repeated ExternalVpnGatewayInterface interfaces = 12073562; + + // [Output Only] Type of the resource. Always compute#externalVpnGateway for externalVpnGateways. + optional string kind = 3292052; + + // A fingerprint for the labels being applied to this ExternalVpnGateway, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an ExternalVpnGateway. + optional string label_fingerprint = 178124825; + + // Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty. + map labels = 500195327; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // Indicates the user-supplied redundancy type of this external VPN gateway. + // Check the RedundancyType enum for the list of possible values. + optional string redundancy_type = 271443740; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + +} + +// The interface for the external VPN gateway. +message ExternalVpnGatewayInterface { + // The numeric ID of this interface. The allowed input values for this id for different redundancy types of external VPN gateway: - SINGLE_IP_INTERNALLY_REDUNDANT - 0 - TWO_IPS_REDUNDANCY - 0, 1 - FOUR_IPS_REDUNDANCY - 0, 1, 2, 3 + optional uint32 id = 3355; + + // IP address of the interface in the external VPN gateway. Only IPv4 is supported. This IP address can be either from your on-premise gateway or another Cloud provider's VPN gateway, it cannot be an IP address from Google Compute Engine. + optional string ip_address = 406272220; + +} + +// Response to the list request, and contains a list of externalVpnGateways. +message ExternalVpnGatewayList { + optional string etag = 3123477; + + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of ExternalVpnGateway resources. + repeated ExternalVpnGateway items = 100526016; + + // [Output Only] Type of resource. Always compute#externalVpnGatewayList for lists of externalVpnGateways. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message FileContentBuffer { + // The file type of source file. + enum FileType { + // A value indicating that the enum field is not set. + UNDEFINED_FILE_TYPE = 0; + + BIN = 65767; + + UNDEFINED = 137851184; + + X509 = 2674086; + + } + + // The raw content in the secure keys file. + optional string content = 414659705; + + // The file type of source file. + // Check the FileType enum for the list of possible values. + optional string file_type = 294346781; + +} + +// Represents a Firewall Rule resource. Firewall rules allow or deny ingress traffic to, and egress traffic from your instances. For more information, read Firewall rules. +message Firewall { + // Direction of traffic to which this firewall applies, either `INGRESS` or `EGRESS`. The default is `INGRESS`. For `INGRESS` traffic, you cannot specify the destinationRanges field, and for `EGRESS` traffic, you cannot specify the sourceRanges or sourceTags fields. + enum Direction { + // A value indicating that the enum field is not set. + UNDEFINED_DIRECTION = 0; + + // Indicates that firewall should apply to outgoing traffic. + EGRESS = 432880501; + + // Indicates that firewall should apply to incoming traffic. + INGRESS = 516931221; + + } + + // The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection. + repeated Allowed allowed = 162398632; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // The list of DENY rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a denied connection. + repeated Denied denied = 275217307; + + // An optional description of this resource. Provide this field when you create the resource. + optional string description = 422937596; + + // If destination ranges are specified, the firewall rule applies only to traffic that has destination IP address in these ranges. These ranges must be expressed in CIDR format. Both IPv4 and IPv6 are supported. + repeated string destination_ranges = 305699879; + + // Direction of traffic to which this firewall applies, either `INGRESS` or `EGRESS`. The default is `INGRESS`. For `INGRESS` traffic, you cannot specify the destinationRanges field, and for `EGRESS` traffic, you cannot specify the sourceRanges or sourceTags fields. + // Check the Direction enum for the list of possible values. + optional string direction = 111150975; + + // Denotes whether the firewall rule is disabled. When set to true, the firewall rule is not enforced and the network behaves as if it did not exist. If this is unspecified, the firewall rule will be enabled. + optional bool disabled = 270940796; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#firewall for firewall rules. + optional string kind = 3292052; + + // This field denotes the logging options for a particular firewall rule. If logging is enabled, logs will be exported to Cloud Logging. + optional FirewallLogConfig log_config = 351299741; + + // Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?. The first character must be a lowercase letter, and all following characters (except for the last character) must be a dash, lowercase letter, or digit. The last character must be a lowercase letter or digit. + optional string name = 3373707; + + // URL of the network resource for this firewall rule. If not specified when creating a firewall rule, the default network is used: global/networks/default If you choose to specify this field, you can specify the network as a full or partial URL. For example, the following are all valid URLs: - https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network - projects/myproject/global/networks/my-network - global/networks/default + optional string network = 232872494; + + // Priority for this rule. This is an integer between `0` and `65535`, both inclusive. The default value is `1000`. Relative priorities determine which rule takes effect if multiple rules apply. Lower values indicate higher priority. For example, a rule with priority `0` has higher precedence than a rule with priority `1`. DENY rules take precedence over ALLOW rules if they have equal priority. Note that VPC networks have implied rules with a priority of `65535`. To avoid conflicts with the implied rules, use a priority number less than `65535`. + optional int32 priority = 445151652; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // If source ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. One or both of sourceRanges and sourceTags may be set. If both fields are set, the rule applies to traffic that has a source IP address within sourceRanges OR a source IP from a resource with a matching tag listed in the sourceTags field. The connection does not need to match both fields for the rule to apply. Both IPv4 and IPv6 are supported. + repeated string source_ranges = 200097658; + + // If source service accounts are specified, the firewall rules apply only to traffic originating from an instance with a service account in this list. Source service accounts cannot be used to control traffic to an instance's external IP address because service accounts are associated with an instance, not an IP address. sourceRanges can be set at the same time as sourceServiceAccounts. If both are set, the firewall applies to traffic that has a source IP address within the sourceRanges OR a source IP that belongs to an instance with service account listed in sourceServiceAccount. The connection does not need to match both fields for the firewall to apply. sourceServiceAccounts cannot be used at the same time as sourceTags or targetTags. + repeated string source_service_accounts = 105100756; + + // If source tags are specified, the firewall rule applies only to traffic with source IPs that match the primary network interfaces of VM instances that have the tag and are in the same VPC network. Source tags cannot be used to control traffic to an instance's external IP address, it only applies to traffic between instances in the same virtual network. Because tags are associated with instances, not IP addresses. One or both of sourceRanges and sourceTags may be set. If both fields are set, the firewall applies to traffic that has a source IP address within sourceRanges OR a source IP from a resource with a matching tag listed in the sourceTags field. The connection does not need to match both fields for the firewall to apply. + repeated string source_tags = 452222397; + + // A list of service accounts indicating sets of instances located in the network that may make network connections as specified in allowed[]. targetServiceAccounts cannot be used at the same time as targetTags or sourceTags. If neither targetServiceAccounts nor targetTags are specified, the firewall rule applies to all instances on the specified network. + repeated string target_service_accounts = 457639710; + + // A list of tags that controls which instances the firewall rule applies to. If targetTags are specified, then the firewall rule applies only to instances in the VPC network that have one of those tags. If no targetTags are specified, the firewall rule applies to all instances on the specified network. + repeated string target_tags = 62901767; + +} + +// Contains a list of firewalls. +message FirewallList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Firewall resources. + repeated Firewall items = 100526016; + + // [Output Only] Type of resource. Always compute#firewallList for lists of firewalls. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// The available logging options for a firewall rule. +message FirewallLogConfig { + // This field can only be specified for a particular firewall rule if logging is enabled for that rule. This field denotes whether to include or exclude metadata for firewall logs. + enum Metadata { + // A value indicating that the enum field is not set. + UNDEFINED_METADATA = 0; + + EXCLUDE_ALL_METADATA = 334519954; + + INCLUDE_ALL_METADATA = 164619908; + + } + + // This field denotes whether to enable logging for a particular firewall rule. + optional bool enable = 311764355; + + // This field can only be specified for a particular firewall rule if logging is enabled for that rule. This field denotes whether to include or exclude metadata for firewall logs. + // Check the Metadata enum for the list of possible values. + optional string metadata = 86866735; + +} + +// +message FirewallPoliciesListAssociationsResponse { + // A list of associations. + repeated FirewallPolicyAssociation associations = 508736530; + + // [Output Only] Type of firewallPolicy associations. Always compute#FirewallPoliciesListAssociations for lists of firewallPolicy associations. + optional string kind = 3292052; + +} + +// Represents a Firewall Policy resource. +message FirewallPolicy { + // A list of associations that belong to this firewall policy. + repeated FirewallPolicyAssociation associations = 508736530; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Deprecated, please use short name instead. User-provided name of the Organization firewall policy. The name should be unique in the organization in which the firewall policy is created. This name must be set on creation and cannot be changed. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string display_name = 4473832; + + // Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make get() request to the firewall policy. + optional string fingerprint = 234678500; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output only] Type of the resource. Always compute#firewallPolicyfor firewall policies + optional string kind = 3292052; + + // [Output Only] Name of the resource. It is a numeric ID allocated by GCP which uniquely identifies the Firewall Policy. + optional string name = 3373707; + + // [Output Only] The parent of the firewall policy. + optional string parent = 78317738; + + // [Output Only] Total count of all firewall policy rule tuples. A firewall policy can not exceed a set number of tuples. + optional int32 rule_tuple_count = 388342037; + + // A list of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match "*"). If no rules are provided when creating a firewall policy, a default rule with action "allow" will be added. + repeated FirewallPolicyRule rules = 108873975; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] Server-defined URL for this resource with the resource id. + optional string self_link_with_id = 44520962; + + // User-provided name of the Organization firewall plicy. The name should be unique in the organization in which the firewall policy is created. This name must be set on creation and cannot be changed. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string short_name = 492051566; + +} + +// +message FirewallPolicyAssociation { + // The target that the firewall policy is attached to. + optional string attachment_target = 175773741; + + // [Output Only] Deprecated, please use short name instead. The display name of the firewall policy of the association. + optional string display_name = 4473832; + + // [Output Only] The firewall policy ID of the association. + optional string firewall_policy_id = 357211849; + + // The name for an association. + optional string name = 3373707; + + // [Output Only] The short name of the firewall policy of the association. + optional string short_name = 492051566; + +} + +// +message FirewallPolicyList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of FirewallPolicy resources. + repeated FirewallPolicy items = 100526016; + + // [Output Only] Type of resource. Always compute#firewallPolicyList for listsof FirewallPolicies + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents a rule that describes one or more match conditions along with the action to be taken when traffic matches this condition (allow or deny). +message FirewallPolicyRule { + // The direction in which this rule applies. + enum Direction { + // A value indicating that the enum field is not set. + UNDEFINED_DIRECTION = 0; + + EGRESS = 432880501; + + INGRESS = 516931221; + + } + + // The Action to perform when the client connection triggers the rule. Can currently be either "allow" or "deny()" where valid values for status are 403, 404, and 502. + optional string action = 187661878; + + // An optional description for this resource. + optional string description = 422937596; + + // The direction in which this rule applies. + // Check the Direction enum for the list of possible values. + optional string direction = 111150975; + + // Denotes whether the firewall policy rule is disabled. When set to true, the firewall policy rule is not enforced and traffic behaves as if it did not exist. If this is unspecified, the firewall policy rule will be enabled. + optional bool disabled = 270940796; + + // Denotes whether to enable logging for a particular rule. If logging is enabled, logs will be exported to the configured export destination in Stackdriver. Logs may be exported to BigQuery or Pub/Sub. Note: you cannot enable logging on "goto_next" rules. + optional bool enable_logging = 295396515; + + // [Output only] Type of the resource. Always compute#firewallPolicyRule for firewall policy rules + optional string kind = 3292052; + + // A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced. + optional FirewallPolicyRuleMatcher match = 103668165; + + // An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest prority. + optional int32 priority = 445151652; + + // [Output Only] Calculation of the complexity of a single firewall policy rule. + optional int32 rule_tuple_count = 388342037; + + // A list of network resource URLs to which this rule applies. This field allows you to control which network's VMs get this rule. If this field is left blank, all VMs within the organization will receive the rule. + repeated string target_resources = 528230647; + + // A list of service accounts indicating the sets of instances that are applied with this rule. + repeated string target_service_accounts = 457639710; + +} + +// Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified. +message FirewallPolicyRuleMatcher { + // CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 5000. + repeated string dest_ip_ranges = 337357713; + + // Pairs of IP protocols and ports that the rule should match. + repeated FirewallPolicyRuleMatcherLayer4Config layer4_configs = 373534261; + + // CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 5000. + repeated string src_ip_ranges = 432128083; + +} + +// +message FirewallPolicyRuleMatcherLayer4Config { + // The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number. + optional string ip_protocol = 475958960; + + // An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: ["22"], ["80","443"], and ["12345-12349"]. + repeated string ports = 106854418; + +} + +// Encapsulates numeric value that can be either absolute or relative. +message FixedOrPercent { + // [Output Only] Absolute value of VM instances calculated based on the specific mode. - If the value is fixed, then the calculated value is equal to the fixed value. - If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded. + optional int32 calculated = 472082878; + + // Specifies a fixed number of VM instances. This must be a positive integer. + optional int32 fixed = 97445748; + + // Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%. + optional int32 percent = 394814533; + +} + +// Represents a Forwarding Rule resource. Forwarding rule resources in Google Cloud can be either regional or global in scope: * [Global](https://cloud.google.com/compute/docs/reference/rest/v1/globalForwardingRules) * [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/forwardingRules) A forwarding rule and its corresponding IP address represent the frontend configuration of a Google Cloud Platform load balancer. Forwarding rules can also reference target instances and Cloud VPN Classic gateways (targetVpnGateway). For more information, read Forwarding rule concepts and Using protocol forwarding. +message ForwardingRule { + // The IP protocol to which this rule applies. For protocol forwarding, valid options are TCP, UDP, ESP, AH, SCTP, ICMP and L3_DEFAULT. The valid IP protocols are different for different load balancing products as described in [Load balancing features](https://cloud.google.com/load-balancing/docs/features#protocols_from_the_load_balancer_to_the_backends). + enum IPProtocolEnum { + // A value indicating that the enum field is not set. + UNDEFINED_I_P_PROTOCOL_ENUM = 0; + + AH = 2087; + + ESP = 68962; + + ICMP = 2241597; + + SCTP = 2539724; + + TCP = 82881; + + UDP = 83873; + + } + + // The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6. This can only be specified for an external global forwarding rule. + enum IpVersion { + // A value indicating that the enum field is not set. + UNDEFINED_IP_VERSION = 0; + + IPV4 = 2254341; + + IPV6 = 2254343; + + UNSPECIFIED_VERSION = 21850000; + + } + + // Specifies the forwarding rule type. For more information about forwarding rules, refer to Forwarding rule concepts. + enum LoadBalancingScheme { + // A value indicating that the enum field is not set. + UNDEFINED_LOAD_BALANCING_SCHEME = 0; + + EXTERNAL = 35607499; + + INTERNAL = 279295677; + + INTERNAL_MANAGED = 37350397; + + INTERNAL_SELF_MANAGED = 236211150; + + INVALID = 530283991; + + } + + // This signifies the networking tier used for configuring this load balancer and can only take the following values: PREMIUM, STANDARD. For regional ForwardingRule, the valid values are PREMIUM and STANDARD. For GlobalForwardingRule, the valid value is PREMIUM. If this field is not specified, it is assumed to be PREMIUM. If IPAddress is specified, this value must be equal to the networkTier of the Address. + enum NetworkTier { + // A value indicating that the enum field is not set. + UNDEFINED_NETWORK_TIER = 0; + + // High quality, Google-grade network tier, support for all networking products. + PREMIUM = 399530551; + + // Public internet quality, only limited support for other networking products. + STANDARD = 484642493; + + } + + // + enum PscConnectionStatus { + // A value indicating that the enum field is not set. + UNDEFINED_PSC_CONNECTION_STATUS = 0; + + // The connection has been accepted by the producer. + ACCEPTED = 246714279; + + // The connection has been closed by the producer and will not serve traffic going forward. + CLOSED = 380163436; + + // The connection is pending acceptance by the producer. + PENDING = 35394935; + + // The connection has been rejected by the producer. + REJECTED = 174130302; + + STATUS_UNSPECIFIED = 42133066; + + } + + // IP address that this forwarding rule serves. When a client sends traffic to this IP address, the forwarding rule directs the traffic to the target that you specify in the forwarding rule. If you don't specify a reserved IP address, an ephemeral IP address is assigned. Methods for specifying an IP address: * IPv4 dotted decimal, as in `100.1.2.3` * Full URL, as in https://www.googleapis.com/compute/v1/projects/project_id/regions/region /addresses/address-name * Partial URL or by name, as in: - projects/project_id/regions/region/addresses/address-name - regions/region/addresses/address-name - global/addresses/address-name - address-name The loadBalancingScheme and the forwarding rule's target determine the type of IP address that you can use. For detailed information, see [IP address specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications). Must be set to `0.0.0.0` when the target is targetGrpcProxy that has validateForProxyless field set to true. For Private Service Connect forwarding rules that forward traffic to Google APIs, IP address must be provided. + optional string I_p_address = 42976943; + + // The IP protocol to which this rule applies. For protocol forwarding, valid options are TCP, UDP, ESP, AH, SCTP, ICMP and L3_DEFAULT. The valid IP protocols are different for different load balancing products as described in [Load balancing features](https://cloud.google.com/load-balancing/docs/features#protocols_from_the_load_balancer_to_the_backends). + // Check the IPProtocolEnum enum for the list of possible values. + optional string I_p_protocol = 488094525; + + // This field is used along with the backend_service field for Internal TCP/UDP Load Balancing or Network Load Balancing, or with the target field for internal and external TargetInstance. You can only use one of ports and port_range, or allPorts. The three are mutually exclusive. For TCP, UDP and SCTP traffic, packets addressed to any ports will be forwarded to the target or backendService. + optional bool all_ports = 445175796; + + // This field is used along with the backend_service field for internal load balancing or with the target field for internal TargetInstance. If the field is set to TRUE, clients can access ILB from all regions. Otherwise only allows access from clients in the same region as the internal load balancer. + optional bool allow_global_access = 499409674; + + // Identifies the backend service to which the forwarding rule sends traffic. Required for Internal TCP/UDP Load Balancing and Network Load Balancing; must be omitted for all other load balancer types. + optional string backend_service = 306946058; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a ForwardingRule. Include the fingerprint in patch request to ensure that you do not overwrite changes that were applied from another concurrent request. To see the latest fingerprint, make a get() request to retrieve a ForwardingRule. + optional string fingerprint = 234678500; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6. This can only be specified for an external global forwarding rule. + // Check the IpVersion enum for the list of possible values. + optional string ip_version = 294959552; + + // Indicates whether or not this load balancer can be used as a collector for packet mirroring. To prevent mirroring loops, instances behind this load balancer will not have their traffic mirrored even if a PacketMirroring rule applies to them. This can only be set to true for load balancers that have their loadBalancingScheme set to INTERNAL. + optional bool is_mirroring_collector = 119255164; + + // [Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources. + optional string kind = 3292052; + + // A fingerprint for the labels being applied to this resource, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a ForwardingRule. + optional string label_fingerprint = 178124825; + + // Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty. + map labels = 500195327; + + // Specifies the forwarding rule type. For more information about forwarding rules, refer to Forwarding rule concepts. + // Check the LoadBalancingScheme enum for the list of possible values. + optional string load_balancing_scheme = 363890244; + + // Opaque filter criteria used by load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to load balancer, xDS clients present node metadata. When there is a match, the relevant configuration is made available to those proxies. Otherwise, all the resources (e.g. TargetHttpProxy, UrlMap) referenced by the ForwardingRule are not visible to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadataFilters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here will be applifed before those specified in the UrlMap that this ForwardingRule references. metadataFilters only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED. + repeated MetadataFilter metadata_filters = 464725739; + + // Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For Private Service Connect forwarding rules that forward traffic to Google APIs, the forwarding rule name must be a 1-20 characters string with lowercase letters and numbers and must start with a letter. + optional string name = 3373707; + + // This field is not used for external load balancing. For Internal TCP/UDP Load Balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used. For Private Service Connect forwarding rules that forward traffic to Google APIs, a network must be provided. + optional string network = 232872494; + + // This signifies the networking tier used for configuring this load balancer and can only take the following values: PREMIUM, STANDARD. For regional ForwardingRule, the valid values are PREMIUM and STANDARD. For GlobalForwardingRule, the valid value is PREMIUM. If this field is not specified, it is assumed to be PREMIUM. If IPAddress is specified, this value must be equal to the networkTier of the Address. + // Check the NetworkTier enum for the list of possible values. + optional string network_tier = 517397843; + + // This field can be used only if: - Load balancing scheme is one of EXTERNAL, INTERNAL_SELF_MANAGED or INTERNAL_MANAGED - IPProtocol is one of TCP, UDP, or SCTP. Packets addressed to ports in the specified range will be forwarded to target or backend_service. You can only use one of ports, port_range, or allPorts. The three are mutually exclusive. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint ports. Some types of forwarding target have constraints on the acceptable ports. For more information, see [Port specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#port_specifications). @pattern: \\d+(?:-\\d+)? + optional string port_range = 217518079; + + // The ports field is only supported when the forwarding rule references a backend_service directly. Only packets addressed to the [specified list of ports]((https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#port_specifications)) are forwarded to backends. You can only use one of ports and port_range, or allPorts. The three are mutually exclusive. You can specify a list of up to five ports, which can be non-contiguous. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint ports. @pattern: \\d+(?:-\\d+)? + repeated string ports = 106854418; + + // [Output Only] The PSC connection id of the PSC Forwarding Rule. + optional uint64 psc_connection_id = 292082397; + + // + // Check the PscConnectionStatus enum for the list of possible values. + optional string psc_connection_status = 184149172; + + // [Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // Service Directory resources to register this forwarding rule with. Currently, only supports a single Service Directory resource. It is only supported for internal load balancing. + repeated ForwardingRuleServiceDirectoryRegistration service_directory_registrations = 223549694; + + // An optional prefix to the service name for this Forwarding Rule. If specified, the prefix is the first label of the fully qualified service name. The label must be 1-63 characters long, and comply with RFC1035. Specifically, the label must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. This field is only used for internal load balancing. + optional string service_label = 417008874; + + // [Output Only] The internal fully qualified service name for this Forwarding Rule. This field is only used for internal load balancing. + optional string service_name = 359880149; + + // This field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule, used in internal load balancing and network load balancing with IPv6. If the network specified is in auto subnet mode, this field is optional. However, a subnetwork must be specified if the network is in custom subnet mode or when creating external forwarding rule with IPv6. + optional string subnetwork = 307827694; + + optional string target = 192835985; + +} + +// +message ForwardingRuleAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of ForwardingRulesScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#forwardingRuleAggregatedList for lists of forwarding rules. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of ForwardingRule resources. +message ForwardingRuleList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of ForwardingRule resources. + repeated ForwardingRule items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message ForwardingRuleReference { + optional string forwarding_rule = 269964030; + +} + +// Describes the auto-registration of the Forwarding Rule to Service Directory. The region and project of the Service Directory resource generated from this registration will be the same as this Forwarding Rule. +message ForwardingRuleServiceDirectoryRegistration { + // Service Directory namespace to register the forwarding rule under. + optional string namespace = 178476379; + + // Service Directory service to register the forwarding rule under. + optional string service = 373540533; + + // [Optional] Service Directory region to register this global forwarding rule under. Default to "us-central1". Only used for PSC for Google APIs. All PSC for Google APIs Forwarding Rules on the same network should use the same Service Directory region. + optional string service_directory_region = 74030416; + +} + +// +message ForwardingRulesScopedList { + // A list of forwarding rules contained in this scope. + repeated ForwardingRule forwarding_rules = 315821365; + + // Informational warning which replaces the list of forwarding rules when the list is empty. + optional Warning warning = 50704284; + +} + +// +message GRPCHealthCheck { + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, gRPC health check follows behavior specified in port and portName fields. + enum PortSpecification { + // A value indicating that the enum field is not set. + UNDEFINED_PORT_SPECIFICATION = 0; + + // The port number in port is used for health checking. + USE_FIXED_PORT = 190235748; + + // The portName is used for health checking. + USE_NAMED_PORT = 349300671; + + // For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. + USE_SERVING_PORT = 362637516; + + } + + // The gRPC service name for the health check. This field is optional. The value of grpc_service_name has the following meanings by convention: - Empty service_name means the overall status of all services at the backend. - Non-empty service_name means the health of that gRPC service, as defined by the owner of the service. The grpc_service_name can only be ASCII. + optional string grpc_service_name = 136533078; + + // The port number for the health check request. Must be specified if port_name and port_specification are not set or if port_specification is USE_FIXED_PORT. Valid values are 1 through 65535. + optional int32 port = 3446913; + + // Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. The port_name should conform to RFC1035. + optional string port_name = 41534345; + + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, gRPC health check follows behavior specified in port and portName fields. + // Check the PortSpecification enum for the list of possible values. + optional string port_specification = 51590597; + +} + +// A request message for AcceleratorTypes.Get. See the method description for details. +message GetAcceleratorTypeRequest { + // Name of the accelerator type to return. + string accelerator_type = 138031246 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Addresses.Get. See the method description for details. +message GetAddressRequest { + // Name of the address resource to return. + string address = 462920692 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for FirewallPolicies.GetAssociation. See the method description for details. +message GetAssociationFirewallPolicyRequest { + // Name of the firewall policy to which the queried rule belongs. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + + // The name of the association to get from the firewall policy. + optional string name = 3373707; + +} + +// A request message for Autoscalers.Get. See the method description for details. +message GetAutoscalerRequest { + // Name of the autoscaler to return. + string autoscaler = 517258967 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for BackendBuckets.Get. See the method description for details. +message GetBackendBucketRequest { + // Name of the BackendBucket resource to return. + string backend_bucket = 91714037 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for BackendServices.Get. See the method description for details. +message GetBackendServiceRequest { + // Name of the BackendService resource to return. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Interconnects.GetDiagnostics. See the method description for details. +message GetDiagnosticsInterconnectRequest { + // Name of the interconnect resource to query. + string interconnect = 224601230 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Disks.Get. See the method description for details. +message GetDiskRequest { + // Name of the persistent disk to return. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for DiskTypes.Get. See the method description for details. +message GetDiskTypeRequest { + // Name of the disk type to return. + string disk_type = 93009052 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.GetEffectiveFirewalls. See the method description for details. +message GetEffectiveFirewallsInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The name of the network interface to get the effective firewalls. + string network_interface = 365387880 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Networks.GetEffectiveFirewalls. See the method description for details. +message GetEffectiveFirewallsNetworkRequest { + // Name of the network for this request. + string network = 232872494 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ExternalVpnGateways.Get. See the method description for details. +message GetExternalVpnGatewayRequest { + // Name of the externalVpnGateway to return. + string external_vpn_gateway = 109898629 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for FirewallPolicies.Get. See the method description for details. +message GetFirewallPolicyRequest { + // Name of the firewall policy to get. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Firewalls.Get. See the method description for details. +message GetFirewallRequest { + // Name of the firewall rule to return. + string firewall = 511016192 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ForwardingRules.Get. See the method description for details. +message GetForwardingRuleRequest { + // Name of the ForwardingRule resource to return. + string forwarding_rule = 269964030 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Images.GetFromFamily. See the method description for details. +message GetFromFamilyImageRequest { + // Name of the image family to search for. + string family = 328751972 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for GlobalAddresses.Get. See the method description for details. +message GetGlobalAddressRequest { + // Name of the address resource to return. + string address = 462920692 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for GlobalForwardingRules.Get. See the method description for details. +message GetGlobalForwardingRuleRequest { + // Name of the ForwardingRule resource to return. + string forwarding_rule = 269964030 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for GlobalNetworkEndpointGroups.Get. See the method description for details. +message GetGlobalNetworkEndpointGroupRequest { + // The name of the network endpoint group. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for GlobalOperations.Get. See the method description for details. +message GetGlobalOperationRequest { + // Name of the Operations resource to return. + string operation = 52090215 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_response_field) = "name" + ]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for GlobalOrganizationOperations.Get. See the method description for details. +message GetGlobalOrganizationOperationRequest { + // Name of the Operations resource to return. + string operation = 52090215 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_response_field) = "name" + ]; + + // Parent ID for this request. + optional string parent_id = 459714768; + +} + +// A request message for GlobalPublicDelegatedPrefixes.Get. See the method description for details. +message GetGlobalPublicDelegatedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the PublicDelegatedPrefix resource to return. + string public_delegated_prefix = 204238440 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.GetGuestAttributes. See the method description for details. +message GetGuestAttributesInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Specifies the guest attributes path to be queried. + optional string query_path = 368591164; + + // Specifies the key for the guest attributes entry. + optional string variable_key = 164364828; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for BackendServices.GetHealth. See the method description for details. +message GetHealthBackendServiceRequest { + // Name of the BackendService resource to which the queried instance belongs. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + ResourceGroupReference resource_group_reference_resource = 112951123 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for HealthChecks.Get. See the method description for details. +message GetHealthCheckRequest { + // Name of the HealthCheck resource to return. + string health_check = 308876645 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionBackendServices.GetHealth. See the method description for details. +message GetHealthRegionBackendServiceRequest { + // Name of the BackendService resource for which to get health. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + ResourceGroupReference resource_group_reference_resource = 112951123 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetPools.GetHealth. See the method description for details. +message GetHealthTargetPoolRequest { + // The body resource for this request + InstanceReference instance_reference_resource = 292926060 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetPool resource to which the queried instance belongs. + string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Disks.GetIamPolicy. See the method description for details. +message GetIamPolicyDiskRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for FirewallPolicies.GetIamPolicy. See the method description for details. +message GetIamPolicyFirewallPolicyRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Images.GetIamPolicy. See the method description for details. +message GetIamPolicyImageRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.GetIamPolicy. See the method description for details. +message GetIamPolicyInstanceRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceTemplates.GetIamPolicy. See the method description for details. +message GetIamPolicyInstanceTemplateRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Licenses.GetIamPolicy. See the method description for details. +message GetIamPolicyLicenseRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NodeGroups.GetIamPolicy. See the method description for details. +message GetIamPolicyNodeGroupRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NodeTemplates.GetIamPolicy. See the method description for details. +message GetIamPolicyNodeTemplateRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionDisks.GetIamPolicy. See the method description for details. +message GetIamPolicyRegionDiskRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Reservations.GetIamPolicy. See the method description for details. +message GetIamPolicyReservationRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ResourcePolicies.GetIamPolicy. See the method description for details. +message GetIamPolicyResourcePolicyRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ServiceAttachments.GetIamPolicy. See the method description for details. +message GetIamPolicyServiceAttachmentRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Snapshots.GetIamPolicy. See the method description for details. +message GetIamPolicySnapshotRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Subnetworks.GetIamPolicy. See the method description for details. +message GetIamPolicySubnetworkRequest { + // Requested IAM Policy version. + optional int32 options_requested_policy_version = 499220029; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ImageFamilyViews.Get. See the method description for details. +message GetImageFamilyViewRequest { + // Name of the image family to search for. + string family = 328751972 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Images.Get. See the method description for details. +message GetImageRequest { + // Name of the image resource to return. + string image = 100313435 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceGroupManagers.Get. See the method description for details. +message GetInstanceGroupManagerRequest { + // The name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone where the managed instance group is located. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceGroups.Get. See the method description for details. +message GetInstanceGroupRequest { + // The name of the instance group. + string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone where the instance group is located. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.Get. See the method description for details. +message GetInstanceRequest { + // Name of the instance resource to return. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceTemplates.Get. See the method description for details. +message GetInstanceTemplateRequest { + // The name of the instance template. + string instance_template = 309248228 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InterconnectAttachments.Get. See the method description for details. +message GetInterconnectAttachmentRequest { + // Name of the interconnect attachment to return. + string interconnect_attachment = 308135284 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InterconnectLocations.Get. See the method description for details. +message GetInterconnectLocationRequest { + // Name of the interconnect location to return. + string interconnect_location = 492235846 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Interconnects.Get. See the method description for details. +message GetInterconnectRequest { + // Name of the interconnect to return. + string interconnect = 224601230 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for LicenseCodes.Get. See the method description for details. +message GetLicenseCodeRequest { + // Number corresponding to the License code resource to return. + string license_code = 1467179 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Licenses.Get. See the method description for details. +message GetLicenseRequest { + // Name of the License resource to return. + string license = 166757441 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for MachineTypes.Get. See the method description for details. +message GetMachineTypeRequest { + // Name of the machine type to return. + string machine_type = 227711026 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Routers.GetNatMappingInfo. See the method description for details. +message GetNatMappingInfoRoutersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // Name of the Router resource to query for Nat Mapping information of VM endpoints. + string router = 148608841 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NetworkEndpointGroups.Get. See the method description for details. +message GetNetworkEndpointGroupRequest { + // The name of the network endpoint group. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone where the network endpoint group is located. It should comply with RFC1035. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Networks.Get. See the method description for details. +message GetNetworkRequest { + // Name of the network to return. + string network = 232872494 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NodeGroups.Get. See the method description for details. +message GetNodeGroupRequest { + // Name of the node group to return. + string node_group = 469958146 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NodeTemplates.Get. See the method description for details. +message GetNodeTemplateRequest { + // Name of the node template to return. + string node_template = 323154455 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NodeTypes.Get. See the method description for details. +message GetNodeTypeRequest { + // Name of the node type to return. + string node_type = 465832791 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for PacketMirrorings.Get. See the method description for details. +message GetPacketMirroringRequest { + // Name of the PacketMirroring resource to return. + string packet_mirroring = 22305996 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Projects.Get. See the method description for details. +message GetProjectRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for PublicAdvertisedPrefixes.Get. See the method description for details. +message GetPublicAdvertisedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the PublicAdvertisedPrefix resource to return. + string public_advertised_prefix = 101874590 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for PublicDelegatedPrefixes.Get. See the method description for details. +message GetPublicDelegatedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the PublicDelegatedPrefix resource to return. + string public_delegated_prefix = 204238440 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region of this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionAutoscalers.Get. See the method description for details. +message GetRegionAutoscalerRequest { + // Name of the autoscaler to return. + string autoscaler = 517258967 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionBackendServices.Get. See the method description for details. +message GetRegionBackendServiceRequest { + // Name of the BackendService resource to return. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionCommitments.Get. See the method description for details. +message GetRegionCommitmentRequest { + // Name of the commitment to return. + string commitment = 482134805 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionDisks.Get. See the method description for details. +message GetRegionDiskRequest { + // Name of the regional persistent disk to return. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionDiskTypes.Get. See the method description for details. +message GetRegionDiskTypeRequest { + // Name of the disk type to return. + string disk_type = 93009052 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionHealthChecks.Get. See the method description for details. +message GetRegionHealthCheckRequest { + // Name of the HealthCheck resource to return. + string health_check = 308876645 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionHealthCheckServices.Get. See the method description for details. +message GetRegionHealthCheckServiceRequest { + // Name of the HealthCheckService to update. The name must be 1-63 characters long, and comply with RFC1035. + string health_check_service = 408374747 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionInstanceGroupManagers.Get. See the method description for details. +message GetRegionInstanceGroupManagerRequest { + // Name of the managed instance group to return. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionInstanceGroups.Get. See the method description for details. +message GetRegionInstanceGroupRequest { + // Name of the instance group resource to return. + string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionNetworkEndpointGroups.Get. See the method description for details. +message GetRegionNetworkEndpointGroupRequest { + // The name of the network endpoint group. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region where the network endpoint group is located. It should comply with RFC1035. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionNotificationEndpoints.Get. See the method description for details. +message GetRegionNotificationEndpointRequest { + // Name of the NotificationEndpoint resource to return. + string notification_endpoint = 376807017 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionOperations.Get. See the method description for details. +message GetRegionOperationRequest { + // Name of the Operations resource to return. + string operation = 52090215 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_response_field) = "name" + ]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Regions.Get. See the method description for details. +message GetRegionRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region resource to return. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionSslCertificates.Get. See the method description for details. +message GetRegionSslCertificateRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the SslCertificate resource to return. + string ssl_certificate = 46443492 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionTargetHttpProxies.Get. See the method description for details. +message GetRegionTargetHttpProxyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetHttpProxy resource to return. + string target_http_proxy = 206872421 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionTargetHttpsProxies.Get. See the method description for details. +message GetRegionTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetHttpsProxy resource to return. + string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionUrlMaps.Get. See the method description for details. +message GetRegionUrlMapRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the UrlMap resource to return. + string url_map = 367020684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Reservations.Get. See the method description for details. +message GetReservationRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the reservation to retrieve. + string reservation = 47530956 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ResourcePolicies.Get. See the method description for details. +message GetResourcePolicyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the resource policy to retrieve. + string resource_policy = 159240835 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Routes.Get. See the method description for details. +message GetRouteRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the Route resource to return. + string route = 108704329 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Routers.Get. See the method description for details. +message GetRouterRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the Router resource to return. + string router = 148608841 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Routers.GetRouterStatus. See the method description for details. +message GetRouterStatusRouterRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the Router resource to query. + string router = 148608841 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for FirewallPolicies.GetRule. See the method description for details. +message GetRuleFirewallPolicyRequest { + // Name of the firewall policy to which the queried rule belongs. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + + // The priority of the rule to get from the firewall policy. + optional int32 priority = 445151652; + +} + +// A request message for SecurityPolicies.GetRule. See the method description for details. +message GetRuleSecurityPolicyRequest { + // The priority of the rule to get from the security policy. + optional int32 priority = 445151652; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the security policy to which the queried rule belongs. + string security_policy = 171082513 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.GetScreenshot. See the method description for details. +message GetScreenshotInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SecurityPolicies.Get. See the method description for details. +message GetSecurityPolicyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the security policy to get. + string security_policy = 171082513 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.GetSerialPortOutput. See the method description for details. +message GetSerialPortOutputInstanceRequest { + // Name of the instance for this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Specifies which COM or serial port to retrieve data from. + optional int32 port = 3446913; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Specifies the starting byte position of the output to return. To start with the first byte of output to the specified port, omit this field or set it to `0`. If the output for that byte position is available, this field matches the `start` parameter sent with the request. If the amount of serial console output exceeds the size of the buffer (1 MB), the oldest output is discarded and is no longer available. If the requested start position refers to discarded output, the start position is adjusted to the oldest output still available, and the adjusted start position is returned as the `start` property value. You can also provide a negative start position, which translates to the most recent number of bytes written to the serial port. For example, -3 is interpreted as the most recent 3 bytes written to the serial console. + optional int64 start = 109757538; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ServiceAttachments.Get. See the method description for details. +message GetServiceAttachmentRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region of this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the ServiceAttachment resource to return. + string service_attachment = 338957549 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.GetShieldedInstanceIdentity. See the method description for details. +message GetShieldedInstanceIdentityInstanceRequest { + // Name or id of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Snapshots.Get. See the method description for details. +message GetSnapshotRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the Snapshot resource to return. + string snapshot = 284874180 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SslCertificates.Get. See the method description for details. +message GetSslCertificateRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the SslCertificate resource to return. + string ssl_certificate = 46443492 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SslPolicies.Get. See the method description for details. +message GetSslPolicyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035. + string ssl_policy = 295190213 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for VpnGateways.GetStatus. See the method description for details. +message GetStatusVpnGatewayRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the VPN gateway to return. + string vpn_gateway = 406684153 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Subnetworks.Get. See the method description for details. +message GetSubnetworkRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the Subnetwork resource to return. + string subnetwork = 307827694 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetGrpcProxies.Get. See the method description for details. +message GetTargetGrpcProxyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetGrpcProxy resource to return. + string target_grpc_proxy = 5020283 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpProxies.Get. See the method description for details. +message GetTargetHttpProxyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetHttpProxy resource to return. + string target_http_proxy = 206872421 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpsProxies.Get. See the method description for details. +message GetTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetHttpsProxy resource to return. + string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetInstances.Get. See the method description for details. +message GetTargetInstanceRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetInstance resource to return. + string target_instance = 289769347 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone scoping this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetPools.Get. See the method description for details. +message GetTargetPoolRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetPool resource to return. + string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetSslProxies.Get. See the method description for details. +message GetTargetSslProxyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetSslProxy resource to return. + string target_ssl_proxy = 338795853 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetTcpProxies.Get. See the method description for details. +message GetTargetTcpProxyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetTcpProxy resource to return. + string target_tcp_proxy = 503065442 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetVpnGateways.Get. See the method description for details. +message GetTargetVpnGatewayRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the target VPN gateway to return. + string target_vpn_gateway = 532512843 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for UrlMaps.Get. See the method description for details. +message GetUrlMapRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the UrlMap resource to return. + string url_map = 367020684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for VpnGateways.Get. See the method description for details. +message GetVpnGatewayRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the VPN gateway to return. + string vpn_gateway = 406684153 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for VpnTunnels.Get. See the method description for details. +message GetVpnTunnelRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the VpnTunnel resource to return. + string vpn_tunnel = 143821331 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Projects.GetXpnHost. See the method description for details. +message GetXpnHostProjectRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Projects.GetXpnResources. See the method description for details. +message GetXpnResourcesProjectsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for ZoneOperations.Get. See the method description for details. +message GetZoneOperationRequest { + // Name of the Operations resource to return. + string operation = 52090215 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_response_field) = "name" + ]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Zones.Get. See the method description for details. +message GetZoneRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone resource to return. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// +message GlobalNetworkEndpointGroupsAttachEndpointsRequest { + // The list of network endpoints to be attached. + repeated NetworkEndpoint network_endpoints = 149850285; + +} + +// +message GlobalNetworkEndpointGroupsDetachEndpointsRequest { + // The list of network endpoints to be detached. + repeated NetworkEndpoint network_endpoints = 149850285; + +} + +// +message GlobalOrganizationSetPolicyRequest { + // Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify bindings. + repeated Binding bindings = 403251854; + + // Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify the etag. + optional string etag = 3123477; + + // REQUIRED: The complete policy to be applied to the 'resource'. The size of the policy is limited to a few 10s of KB. An empty policy is in general a valid policy but certain services (like Projects) might reject them. + optional Policy policy = 91071794; + +} + +// +message GlobalSetLabelsRequest { + // The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash when updating or changing labels, otherwise the request will fail with error 412 conditionNotMet. Make a get() request to the resource to get the latest fingerprint. + optional string label_fingerprint = 178124825; + + // A list of labels to apply for this resource. Each label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, "webserver-frontend": "images". A label value can also be empty (e.g. "my-label": ""). + map labels = 500195327; + +} + +// +message GlobalSetPolicyRequest { + // Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify bindings. + repeated Binding bindings = 403251854; + + // Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify the etag. + optional string etag = 3123477; + + // REQUIRED: The complete policy to be applied to the 'resource'. The size of the policy is limited to a few 10s of KB. An empty policy is in general a valid policy but certain services (like Projects) might reject them. + optional Policy policy = 91071794; + +} + +// A guest attributes entry. +message GuestAttributes { + // [Output Only] Type of the resource. Always compute#guestAttributes for guest attributes entry. + optional string kind = 3292052; + + // The path to be queried. This can be the default namespace ('') or a nested namespace ('\/') or a specified key ('\/\'). + optional string query_path = 368591164; + + // [Output Only] The value of the requested queried path. + optional GuestAttributesValue query_value = 157570874; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // The key to search for. + optional string variable_key = 164364828; + + // [Output Only] The value found for the requested key. + optional string variable_value = 124582382; + +} + +// A guest attributes namespace/key/value entry. +message GuestAttributesEntry { + // Key for the guest attribute entry. + optional string key = 106079; + + // Namespace for the guest attribute entry. + optional string namespace = 178476379; + + // Value for the guest attribute entry. + optional string value = 111972721; + +} + +// Array of guest attribute namespace/key/value tuples. +message GuestAttributesValue { + repeated GuestAttributesEntry items = 100526016; + +} + +// Guest OS features. +message GuestOsFeature { + // The ID of a supported feature. Read Enabling guest operating system features to see a list of available options. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + FEATURE_TYPE_UNSPECIFIED = 531767259; + + GVNIC = 68209305; + + MULTI_IP_SUBNET = 151776719; + + SECURE_BOOT = 376811194; + + SEV_CAPABLE = 87083793; + + UEFI_COMPATIBLE = 195865408; + + VIRTIO_SCSI_MULTIQUEUE = 201597069; + + WINDOWS = 456863331; + + } + + // The ID of a supported feature. Read Enabling guest operating system features to see a list of available options. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// +message HTTP2HealthCheck { + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields. + enum PortSpecification { + // A value indicating that the enum field is not set. + UNDEFINED_PORT_SPECIFICATION = 0; + + // The port number in port is used for health checking. + USE_FIXED_PORT = 190235748; + + // The portName is used for health checking. + USE_NAMED_PORT = 349300671; + + // For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. + USE_SERVING_PORT = 362637516; + + } + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + enum ProxyHeader { + // A value indicating that the enum field is not set. + UNDEFINED_PROXY_HEADER = 0; + + NONE = 2402104; + + PROXY_V1 = 334352940; + + } + + // The value of the host header in the HTTP/2 health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used. + optional string host = 3208616; + + // The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535. + optional int32 port = 3446913; + + // Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. + optional string port_name = 41534345; + + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields. + // Check the PortSpecification enum for the list of possible values. + optional string port_specification = 51590597; + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + // Check the ProxyHeader enum for the list of possible values. + optional string proxy_header = 160374142; + + // The request path of the HTTP/2 health check request. The default value is /. + optional string request_path = 229403605; + + // The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII. + optional string response = 196547649; + +} + +// +message HTTPHealthCheck { + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP health check follows behavior specified in port and portName fields. + enum PortSpecification { + // A value indicating that the enum field is not set. + UNDEFINED_PORT_SPECIFICATION = 0; + + // The port number in port is used for health checking. + USE_FIXED_PORT = 190235748; + + // The portName is used for health checking. + USE_NAMED_PORT = 349300671; + + // For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. + USE_SERVING_PORT = 362637516; + + } + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + enum ProxyHeader { + // A value indicating that the enum field is not set. + UNDEFINED_PROXY_HEADER = 0; + + NONE = 2402104; + + PROXY_V1 = 334352940; + + } + + // The value of the host header in the HTTP health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used. + optional string host = 3208616; + + // The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535. + optional int32 port = 3446913; + + // Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. + optional string port_name = 41534345; + + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP health check follows behavior specified in port and portName fields. + // Check the PortSpecification enum for the list of possible values. + optional string port_specification = 51590597; + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + // Check the ProxyHeader enum for the list of possible values. + optional string proxy_header = 160374142; + + // The request path of the HTTP health check request. The default value is /. + optional string request_path = 229403605; + + // The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII. + optional string response = 196547649; + +} + +// +message HTTPSHealthCheck { + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTPS health check follows behavior specified in port and portName fields. + enum PortSpecification { + // A value indicating that the enum field is not set. + UNDEFINED_PORT_SPECIFICATION = 0; + + // The port number in port is used for health checking. + USE_FIXED_PORT = 190235748; + + // The portName is used for health checking. + USE_NAMED_PORT = 349300671; + + // For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. + USE_SERVING_PORT = 362637516; + + } + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + enum ProxyHeader { + // A value indicating that the enum field is not set. + UNDEFINED_PROXY_HEADER = 0; + + NONE = 2402104; + + PROXY_V1 = 334352940; + + } + + // The value of the host header in the HTTPS health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used. + optional string host = 3208616; + + // The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535. + optional int32 port = 3446913; + + // Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. + optional string port_name = 41534345; + + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTPS health check follows behavior specified in port and portName fields. + // Check the PortSpecification enum for the list of possible values. + optional string port_specification = 51590597; + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + // Check the ProxyHeader enum for the list of possible values. + optional string proxy_header = 160374142; + + // The request path of the HTTPS health check request. The default value is /. + optional string request_path = 229403605; + + // The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII. + optional string response = 196547649; + +} + +// Represents a Health Check resource. Google Compute Engine has two Health Check resources: * [Global](/compute/docs/reference/rest/v1/healthChecks) * [Regional](/compute/docs/reference/rest/v1/regionHealthChecks) Internal HTTP(S) load balancers must use regional health checks (`compute.v1.regionHealthChecks`). Traffic Director must use global health checks (`compute.v1.HealthChecks`). Internal TCP/UDP load balancers can use either regional or global health checks (`compute.v1.regionHealthChecks` or `compute.v1.HealthChecks`). External HTTP(S), TCP proxy, and SSL proxy load balancers as well as managed instance group auto-healing must use global health checks (`compute.v1.HealthChecks`). Backend service-based network load balancers must use regional health checks (`compute.v1.regionHealthChecks`). Target pool-based network load balancers must use legacy HTTP health checks (`compute.v1.httpHealthChecks`). For more information, see Health checks overview. +message HealthCheck { + // Specifies the type of the healthCheck, either TCP, SSL, HTTP, HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + GRPC = 2196510; + + HTTP = 2228360; + + HTTP2 = 69079210; + + HTTPS = 69079243; + + INVALID = 530283991; + + SSL = 82412; + + TCP = 82881; + + } + + // How often (in seconds) to send a health check. The default value is 5 seconds. + optional int32 check_interval_sec = 345561006; + + // [Output Only] Creation timestamp in 3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + optional GRPCHealthCheck grpc_health_check = 85529574; + + // A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2. + optional int32 healthy_threshold = 403212361; + + optional HTTP2HealthCheck http2_health_check = 11360986; + + optional HTTPHealthCheck http_health_check = 412586940; + + optional HTTPSHealthCheck https_health_check = 436046905; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // Type of the resource. + optional string kind = 3292052; + + // Configure logging on this health check. + optional HealthCheckLogConfig log_config = 351299741; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. For example, a name that is 1-63 characters long, matches the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`, and otherwise complies with RFC1035. This regular expression describes a name where the first character is a lowercase letter, and all following characters are a dash, lowercase letter, or digit, except the last character, which isn't a dash. + optional string name = 3373707; + + // [Output Only] Region where the health check resides. Not applicable to global health checks. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + optional SSLHealthCheck ssl_health_check = 280032440; + + optional TCPHealthCheck tcp_health_check = 469980419; + + // How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec. + optional int32 timeout_sec = 79994995; + + // Specifies the type of the healthCheck, either TCP, SSL, HTTP, HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + + // A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2. + optional int32 unhealthy_threshold = 227958480; + +} + +// Contains a list of HealthCheck resources. +message HealthCheckList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of HealthCheck resources. + repeated HealthCheck items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Configuration of logging on a health check. If logging is enabled, logs will be exported to Stackdriver. +message HealthCheckLogConfig { + // Indicates whether or not to export logs. This is false by default, which means no health check logging will be done. + optional bool enable = 311764355; + +} + +// A full or valid partial URL to a health check. For example, the following are valid URLs: - https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check - projects/project-id/global/httpHealthChecks/health-check - global/httpHealthChecks/health-check +message HealthCheckReference { + optional string health_check = 308876645; + +} + +// Represents a Health-Check as a Service resource. +message HealthCheckService { + // Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each pair in the health check service. - AND. If any health check of an endpoint reports UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health checks report HEALTHY, the HealthState of the endpoint is HEALTHY. . + enum HealthStatusAggregationPolicy { + // A value indicating that the enum field is not set. + UNDEFINED_HEALTH_STATUS_AGGREGATION_POLICY = 0; + + // If any backend's health check reports UNHEALTHY, then UNHEALTHY is the HealthState of the entire health check service. If all backend's are healthy, the HealthState of the health check service is HEALTHY. + AND = 64951; + + // An EndpointHealth message is returned for each backend in the health check service. + NO_AGGREGATION = 426445124; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a HealthCheckService. An up-to-date fingerprint must be provided in order to patch/update the HealthCheckService; Otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the HealthCheckService. + optional string fingerprint = 234678500; + + // A list of URLs to the HealthCheck resources. Must have at least one HealthCheck, and not more than 10. HealthCheck resources must have portSpecification=USE_SERVING_PORT or portSpecification=USE_FIXED_PORT. For regional HealthCheckService, the HealthCheck must be regional and in the same region. For global HealthCheckService, HealthCheck must be global. Mix of regional and global HealthChecks is not supported. Multiple regional HealthChecks must belong to the same region. Regional HealthChecks must belong to the same region as zones of NEGs. + repeated string health_checks = 448370606; + + // Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each pair in the health check service. - AND. If any health check of an endpoint reports UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health checks report HEALTHY, the HealthState of the endpoint is HEALTHY. . + // Check the HealthStatusAggregationPolicy enum for the list of possible values. + optional string health_status_aggregation_policy = 253163129; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output only] Type of the resource. Always compute#healthCheckServicefor health check services. + optional string kind = 3292052; + + // Name of the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // A list of URLs to the NetworkEndpointGroup resources. Must not have more than 100. For regional HealthCheckService, NEGs must be in zones in the region of the HealthCheckService. + repeated string network_endpoint_groups = 29346733; + + // A list of URLs to the NotificationEndpoint resources. Must not have more than 10. A list of endpoints for receiving notifications of change in health status. For regional HealthCheckService, NotificationEndpoint must be regional and in the same region. For global HealthCheckService, NotificationEndpoint must be global. + repeated string notification_endpoints = 406728490; + + // [Output Only] URL of the region where the health check service resides. This field is not applicable to global health check services. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + +} + +// A full or valid partial URL to a health check service. For example, the following are valid URLs: - https://www.googleapis.com/compute/beta/projects/project-id/regions/us-west1/healthCheckServices/health-check-service - projects/project-id/regions/us-west1/healthCheckServices/health-check-service - regions/us-west1/healthCheckServices/health-check-service +message HealthCheckServiceReference { + optional string health_check_service = 408374747; + +} + +// +message HealthCheckServicesList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of HealthCheckService resources. + repeated HealthCheckService items = 100526016; + + // [Output Only] Type of the resource. Always compute#healthCheckServicesList for lists of HealthCheckServices. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message HealthChecksAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of HealthChecksScopedList resources. + map items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message HealthChecksScopedList { + // A list of HealthChecks contained in this scope. + repeated HealthCheck health_checks = 448370606; + + // Informational warning which replaces the list of backend services when the list is empty. + optional Warning warning = 50704284; + +} + +// +message HealthStatus { + // Health state of the instance. + enum HealthState { + // A value indicating that the enum field is not set. + UNDEFINED_HEALTH_STATE = 0; + + HEALTHY = 439801213; + + UNHEALTHY = 462118084; + + } + + // + enum WeightError { + // A value indicating that the enum field is not set. + UNDEFINED_WEIGHT_ERROR = 0; + + // The response to a Health Check probe had the HTTP response header field X-Load-Balancing-Endpoint-Weight, but its content was invalid (i.e., not a non-negative single-precision floating-point number in decimal string representation). + INVALID_WEIGHT = 383698400; + + // The response to a Health Check probe did not have the HTTP response header field X-Load-Balancing-Endpoint-Weight. + MISSING_WEIGHT = 384027537; + + // This is the value when the accompanied health status is either TIMEOUT (i.e.,the Health Check probe was not able to get a response in time) or UNKNOWN. For the latter, it should be typically because there has not been sufficient time to parse and report the weight for a new backend (which is with 0.0.0.0 ip address). However, it can be also due to an outage case for which the health status is explicitly reset to UNKNOWN. + UNAVAILABLE_WEIGHT = 439464295; + + // This is the default value when WeightReportMode is DISABLE, and is also the initial value when WeightReportMode has just updated to ENABLE or DRY_RUN and there has not been sufficient time to parse and report the backend weight. + WEIGHT_NONE = 502428831; + + } + + // Metadata defined as annotations for network endpoint. + map annotations = 112032548; + + // URL of the forwarding rule associated with the health status of the instance. + optional string forwarding_rule = 269964030; + + // A forwarding rule IP address assigned to this instance. + optional string forwarding_rule_ip = 172250632; + + // Health state of the instance. + // Check the HealthState enum for the list of possible values. + optional string health_state = 324007150; + + // URL of the instance resource. + optional string instance = 18257045; + + // For target pool based Network Load Balancing, it indicates the forwarding rule's IP address assigned to this instance. For other types of load balancing, the field indicates VM internal ip. + optional string ip_address = 406272220; + + // The named port of the instance group, not necessarily the port that is health-checked. + optional int32 port = 3446913; + + optional string weight = 282149496; + + // + // Check the WeightError enum for the list of possible values. + optional string weight_error = 522501505; + +} + +// +message HealthStatusForNetworkEndpoint { + // Health state of the network endpoint determined based on the health checks configured. + enum HealthState { + // A value indicating that the enum field is not set. + UNDEFINED_HEALTH_STATE = 0; + + DRAINING = 480455402; + + HEALTHY = 439801213; + + UNHEALTHY = 462118084; + + UNKNOWN = 433141802; + + } + + // URL of the backend service associated with the health state of the network endpoint. + optional BackendServiceReference backend_service = 306946058; + + // URL of the forwarding rule associated with the health state of the network endpoint. + optional ForwardingRuleReference forwarding_rule = 269964030; + + // URL of the health check associated with the health state of the network endpoint. + optional HealthCheckReference health_check = 308876645; + + // URL of the health check service associated with the health state of the network endpoint. + optional HealthCheckServiceReference health_check_service = 408374747; + + // Health state of the network endpoint determined based on the health checks configured. + // Check the HealthState enum for the list of possible values. + optional string health_state = 324007150; + +} + +// UrlMaps A host-matching rule for a URL. If matched, will use the named PathMatcher to select the BackendService. +message HostRule { + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or .. * based matching is not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + repeated string hosts = 99467211; + + // The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion. + optional string path_matcher = 337813272; + +} + +// Specification for how requests are aborted as part of fault injection. +message HttpFaultAbort { + // The HTTP status code used to abort the request. The value must be between 200 and 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director. + optional uint32 http_status = 468949897; + + // The percentage of traffic (connections/operations/requests) which will be aborted as part of fault injection. The value must be between 0.0 and 100.0 inclusive. + optional double percentage = 151909018; + +} + +// Specifies the delay introduced by Loadbalancer before forwarding the request to the backend service as part of fault injection. +message HttpFaultDelay { + // Specifies the value of the fixed delay interval. + optional Duration fixed_delay = 317037816; + + // The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection. The value must be between 0.0 and 100.0 inclusive. + optional double percentage = 151909018; + +} + +// The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by Loadbalancer on a percentage of requests before sending those request to the backend service. Similarly requests from clients can be aborted by the Loadbalancer for a percentage of requests. +message HttpFaultInjection { + // The specification for how client requests are aborted as part of fault injection. + optional HttpFaultAbort abort = 92611376; + + // The specification for how client requests are delayed as part of fault injection, before being sent to a backend service. + optional HttpFaultDelay delay = 95467907; + +} + +// The request and response header transformations that take effect before the request is passed along to the selected backendService. +message HttpHeaderAction { + // Headers to add to a matching request prior to forwarding the request to the backendService. + repeated HttpHeaderOption request_headers_to_add = 72111974; + + // A list of header names for headers that need to be removed from the request prior to forwarding the request to the backendService. + repeated string request_headers_to_remove = 218425247; + + // Headers to add the response prior to sending the response back to the client. + repeated HttpHeaderOption response_headers_to_add = 32136052; + + // A list of header names for headers that need to be removed from the response prior to sending the response back to the client. + repeated string response_headers_to_remove = 75415761; + +} + +// matchRule criteria for request header matches. +message HttpHeaderMatch { + // The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. + optional string exact_match = 457641093; + + // The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name ":authority". For matching a request's method, use the headerName ":method". When the URL map is bound to target gRPC proxy that has validateForProxyless field set to true, only non-binary user-specified custom metadata and the `content-type` header are supported. The following transport-level headers cannot be used in header matching rules: `:authority`, `:method`, `:path`, `:scheme`, `user-agent`, `accept-encoding`, `content-encoding`, `grpc-accept-encoding`, `grpc-encoding`, `grpc-previous-rpc-attempts`, `grpc-tags-bin`, `grpc-timeout` and `grpc-trace-bin. + optional string header_name = 110223613; + + // If set to false, the headerMatch is considered a match if the match criteria above are met. If set to true, the headerMatch is considered a match if the match criteria above are NOT met. The default setting is false. + optional bool invert_match = 501130268; + + // The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. + optional string prefix_match = 257898968; + + // A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. + optional bool present_match = 67435841; + + // The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Note that rangeMatch is not supported for Loadbalancers that have their loadBalancingScheme set to EXTERNAL. + optional Int64RangeMatch range_match = 97244227; + + // The value of the header must match the regular expression specified in regexMatch. For regular expression grammar, please see: github.com/google/re2/wiki/Syntax For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Note that regexMatch only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED. + optional string regex_match = 107387853; + + // The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. + optional string suffix_match = 426488663; + +} + +// Specification determining how headers are added to requests or responses. +message HttpHeaderOption { + // The name of the header. + optional string header_name = 110223613; + + // The value of the header to add. + optional string header_value = 203094335; + + // If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false. + optional bool replace = 20755124; + +} + +// HttpRouteRuleMatch criteria for a request's query parameter. +message HttpQueryParameterMatch { + // The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch or regexMatch must be set. + optional string exact_match = 457641093; + + // The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails. + optional string name = 3373707; + + // Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch or regexMatch must be set. + optional bool present_match = 67435841; + + // The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For the regular expression grammar, please see github.com/google/re2/wiki/Syntax Only one of presentMatch, exactMatch or regexMatch must be set. Note that regexMatch only applies when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED. + optional string regex_match = 107387853; + +} + +// Specifies settings for an HTTP redirect. +message HttpRedirectAction { + // The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained. + enum RedirectResponseCode { + // A value indicating that the enum field is not set. + UNDEFINED_REDIRECT_RESPONSE_CODE = 0; + + // Http Status Code 302 - Found. + FOUND = 67084130; + + // Http Status Code 301 - Moved Permanently. + MOVED_PERMANENTLY_DEFAULT = 386698449; + + // Http Status Code 308 - Permanent Redirect maintaining HTTP method. + PERMANENT_REDIRECT = 382006381; + + // Http Status Code 303 - See Other. + SEE_OTHER = 445380580; + + // Http Status Code 307 - Temporary Redirect maintaining HTTP method. + TEMPORARY_REDIRECT = 489550378; + + } + + // The host that will be used in the redirect response instead of the one that was supplied in the request. The value must be between 1 and 255 characters. + optional string host_redirect = 107417747; + + // If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false. + optional bool https_redirect = 170260656; + + // The path that will be used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters. + optional string path_redirect = 272342710; + + // The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters. + optional string prefix_redirect = 446184169; + + // The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained. + // Check the RedirectResponseCode enum for the list of possible values. + optional string redirect_response_code = 436710408; + + // If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false. + optional bool strip_query = 52284641; + +} + +// The retry policy associates with HttpRouteRule +message HttpRetryPolicy { + // Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1. + optional uint32 num_retries = 251680141; + + // Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in HttpRouteAction. If timeout in HttpRouteAction is not set, will use the largest timeout among all backend services associated with the route. + optional Duration per_try_timeout = 280041147; + + // Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: Retry will be attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: A retry will be attempted on failures connecting to the instance or endpoint, for example due to connection timeouts. - retriable-4xx: A retry will be attempted if the instance or endpoint responds with a retriable 4xx response code. Currently the only retriable error supported is 409. - refused-stream: A retry will be attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: A retry will be attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: A retry will be attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: A retry will be attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: A retry will be attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: A retry will be attempted if the gRPC status code in the response header is set to unavailable. + repeated string retry_conditions = 28815535; + +} + +// +message HttpRouteAction { + // The specification for allowing client side cross-origin requests. Please see W3C Recommendation for Cross Origin Resource Sharing Not supported when the URL map is bound to target gRPC proxy. + optional CorsPolicy cors_policy = 398943748; + + // The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by Loadbalancer on a percentage of requests before sending those request to the backend service. Similarly requests from clients can be aborted by the Loadbalancer for a percentage of requests. For the requests impacted by fault injection, timeout and retry_policy will be ignored by clients that are configured with a fault_injection_policy. + optional HttpFaultInjection fault_injection_policy = 412781079; + + // Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (i.e. end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been completely processed, including all retries. A stream that does not complete in this duration is closed. If not specified, will use the largest maxStreamDuration among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED. + optional Duration max_stream_duration = 61428376; + + // Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. Loadbalancer does not wait for responses from the shadow service. Prior to sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + optional RequestMirrorPolicy request_mirror_policy = 220196866; + + // Specifies the retry policy associated with this route. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + optional HttpRetryPolicy retry_policy = 56799913; + + // Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (i.e. end-of-stream) up until the response has been completely processed. Timeout includes all retries. If not specified, will use the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + optional Duration timeout = 296701281; + + // The spec to modify the URL of the request, prior to forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for external HTTP(S) load balancers. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + optional UrlRewrite url_rewrite = 273333948; + + // A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. Once a backendService is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction. + repeated WeightedBackendService weighted_backend_services = 337028049; + +} + +// An HttpRouteRule specifies how to match an HTTP request and the corresponding routing action that load balancing proxies will perform. +message HttpRouteRule { + // The short description conveying the intent of this routeRule. The description can have a maximum length of 1024 characters. + optional string description = 422937596; + + // Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction specified here are applied before the matching pathMatchers[].headerAction and after pathMatchers[].routeRules[].routeAction.weightedBackendService.backendServiceWeightAction[].headerAction Note that headerAction is not supported for Loadbalancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + optional HttpHeaderAction header_action = 328077352; + + // The list of criteria for matching attributes of a request to this routeRule. This list has OR semantics: the request matches this routeRule when any of the matchRules are satisfied. However predicates within a given matchRule have AND semantics. All predicates within a matchRule must match for the request to match the rule. + repeated HttpRouteRuleMatch match_rules = 376200701; + + // For routeRules within a given pathMatcher, priority determines the order in which load balancer will interpret routeRules. RouteRules are evaluated in order of priority, from the lowest to highest number. The priority of a rule decreases as its number increases (1, 2, 3, N+1). The first rule that matches the request is applied. You cannot configure two or more routeRules with the same priority. Priority for each rule must be set to a number between 0 and 2147483647 inclusive. Priority numbers can have gaps, which enable you to add or remove rules in the future without affecting the rest of the rules. For example, 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers to which you could add rules numbered from 6 to 8, 10 to 11, and 13 to 15 in the future without any impact on existing rules. + optional int32 priority = 445151652; + + // In response to a matching matchRule, the load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If routeAction specifies any weightedBackendServices, service must not be set. Conversely if service is set, routeAction cannot contain any weightedBackendServices. Only one of urlRedirect, service or routeAction.weightedBackendService must be set. UrlMaps for external HTTP(S) load balancers support only the urlRewrite action within a routeRule's routeAction. + optional HttpRouteAction route_action = 424563948; + + // The full or partial URL of the backend service resource to which traffic is directed if this rule is matched. If routeAction is additionally specified, advanced routing actions like URL Rewrites, etc. take effect prior to sending the request to the backend. However, if service is specified, routeAction cannot contain any weightedBackendService s. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of urlRedirect, service or routeAction.weightedBackendService must be set. + optional string service = 373540533; + + // When this rule is matched, the request is redirected to a URL specified by urlRedirect. If urlRedirect is specified, service or routeAction must not be set. Not supported when the URL map is bound to target gRPC proxy. + optional HttpRedirectAction url_redirect = 405147820; + +} + +// HttpRouteRuleMatch specifies a set of criteria for matching requests to an HttpRouteRule. All specified criteria must be satisfied for a match to occur. +message HttpRouteRuleMatch { + // For satisfying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL. fullPathMatch must be between 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. + optional string full_path_match = 214598875; + + // Specifies a list of header match criteria, all of which must match corresponding headers in the request. + repeated HttpHeaderMatch header_matches = 361903489; + + // Specifies that prefixMatch and fullPathMatch matches are case sensitive. The default value is false. ignoreCase must not be used with regexMatch. Not supported when the URL map is bound to target gRPC proxy. + optional bool ignore_case = 464324989; + + // Opaque filter criteria used by Loadbalancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to Loadbalancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadataFilters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here will be applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + repeated MetadataFilter metadata_filters = 464725739; + + // For satisfying the matchRule condition, the request's path must begin with the specified prefixMatch. prefixMatch must begin with a /. The value must be between 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. + optional string prefix_match = 257898968; + + // Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to target gRPC proxy. + repeated HttpQueryParameterMatch query_parameter_matches = 286231270; + + // For satisfying the matchRule condition, the path of the request must satisfy the regular expression specified in regexMatch after removing any query parameters and anchor supplied with the original URL. For regular expression grammar please see github.com/google/re2/wiki/Syntax Only one of prefixMatch, fullPathMatch or regexMatch must be specified. Note that regexMatch only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED. + optional string regex_match = 107387853; + +} + +// Represents an Image resource. You can use images to create boot disks for your VM instances. For more information, read Images. +message Image { + // The type of the image used to create this disk. The default and only value is RAW + enum SourceType { + // A value indicating that the enum field is not set. + UNDEFINED_SOURCE_TYPE = 0; + + RAW = 80904; + + } + + // [Output Only] The status of the image. An image can be used to create other resources, such as instances, only after the image has been successfully created and the status is set to READY. Possible values are FAILED, PENDING, or READY. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // Image is deleting. + DELETING = 528602024; + + // Image creation failed due to an error. + FAILED = 455706685; + + // Image hasn't been created as yet. + PENDING = 35394935; + + // Image has been successfully created. + READY = 77848963; + + } + + // Size of the image tar.gz archive stored in Google Cloud Storage (in bytes). + optional int64 archive_size_bytes = 381093450; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // The deprecation status associated with this image. + optional DeprecationStatus deprecated = 515138995; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Size of the image when restored onto a persistent disk (in GB). + optional int64 disk_size_gb = 316263735; + + // The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035. + optional string family = 328751972; + + // A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options. + repeated GuestOsFeature guest_os_features = 79294545; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // Encrypts the image using a customer-supplied encryption key. After you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image). Customer-supplied encryption keys do not protect access to metadata of the disk. If you do not provide an encryption key when creating the image, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later. + optional CustomerEncryptionKey image_encryption_key = 379512583; + + // [Output Only] Type of the resource. Always compute#image for images. + optional string kind = 3292052; + + // A fingerprint for the labels being applied to this image, which is essentially a hash of the labels used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an image. + optional string label_fingerprint = 178124825; + + // Labels to apply to this image. These can be later modified by the setLabels method. + map labels = 500195327; + + // Integer license codes indicating which licenses are attached to this image. + repeated int64 license_codes = 45482664; + + // Any applicable license URI. + repeated string licenses = 337642578; + + // Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // The parameters of the raw disk image. + optional RawDisk raw_disk = 503113556; + + // [Output Only] Reserved for future use. + optional bool satisfies_pzs = 480964267; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // Set the secure boot keys of shielded instance. + optional InitialStateConfig shielded_instance_initial_state = 192356867; + + // URL of the source disk used to create this image. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /disks/disk - projects/project/zones/zone/disks/disk - zones/zone/disks/disk In order to create an image, you must provide the full or partial URL of one of the following: - The rawDisk.source URL - The sourceDisk URL - The sourceImage URL - The sourceSnapshot URL + optional string source_disk = 451753793; + + // The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key. + optional CustomerEncryptionKey source_disk_encryption_key = 531501153; + + // [Output Only] The ID value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name. + optional string source_disk_id = 454190809; + + // URL of the source image used to create this image. The following are valid formats for the URL: - https://www.googleapis.com/compute/v1/projects/project_id/global/ images/image_name - projects/project_id/global/images/image_name In order to create an image, you must provide the full or partial URL of one of the following: - The rawDisk.source URL - The sourceDisk URL - The sourceImage URL - The sourceSnapshot URL + optional string source_image = 50443319; + + // The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key. + optional CustomerEncryptionKey source_image_encryption_key = 381503659; + + // [Output Only] The ID value of the image used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given image name. + optional string source_image_id = 55328291; + + // URL of the source snapshot used to create this image. The following are valid formats for the URL: - https://www.googleapis.com/compute/v1/projects/project_id/global/ snapshots/snapshot_name - projects/project_id/global/snapshots/snapshot_name In order to create an image, you must provide the full or partial URL of one of the following: - The rawDisk.source URL - The sourceDisk URL - The sourceImage URL - The sourceSnapshot URL + optional string source_snapshot = 126061928; + + // The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key. + optional CustomerEncryptionKey source_snapshot_encryption_key = 303679322; + + // [Output Only] The ID value of the snapshot used to create this image. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given snapshot name. + optional string source_snapshot_id = 98962258; + + // The type of the image used to create this disk. The default and only value is RAW + // Check the SourceType enum for the list of possible values. + optional string source_type = 452245726; + + // [Output Only] The status of the image. An image can be used to create other resources, such as instances, only after the image has been successfully created and the status is set to READY. Possible values are FAILED, PENDING, or READY. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // Cloud Storage bucket storage location of the image (regional or multi-regional). + repeated string storage_locations = 328005274; + +} + +// +message ImageFamilyView { + // The latest image that is part of the specified image family in the requested location, and that is not deprecated. + optional Image image = 100313435; + +} + +// Contains a list of images. +message ImageList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Image resources. + repeated Image items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Initial State for shielded instance, these are public keys which are safe to store in public +message InitialStateConfig { + // The Key Database (db). + repeated FileContentBuffer dbs = 99253; + + // The forbidden key database (dbx). + repeated FileContentBuffer dbxs = 3077113; + + // The Key Exchange Key (KEK). + repeated FileContentBuffer keks = 3288130; + + // The Platform Key (PK). + optional FileContentBuffer pk = 3579; + +} + +// A request message for Addresses.Insert. See the method description for details. +message InsertAddressRequest { + // The body resource for this request + Address address_resource = 483888121 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Autoscalers.Insert. See the method description for details. +message InsertAutoscalerRequest { + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for BackendBuckets.Insert. See the method description for details. +message InsertBackendBucketRequest { + // The body resource for this request + BackendBucket backend_bucket_resource = 380757784 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for BackendServices.Insert. See the method description for details. +message InsertBackendServiceRequest { + // The body resource for this request + BackendService backend_service_resource = 347586723 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Disks.Insert. See the method description for details. +message InsertDiskRequest { + // The body resource for this request + Disk disk_resource = 25880688 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Source image to restore onto a disk. This field is optional. + optional string source_image = 50443319; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for ExternalVpnGateways.Insert. See the method description for details. +message InsertExternalVpnGatewayRequest { + // The body resource for this request + ExternalVpnGateway external_vpn_gateway_resource = 486813576 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for FirewallPolicies.Insert. See the method description for details. +message InsertFirewallPolicyRequest { + // The body resource for this request + FirewallPolicy firewall_policy_resource = 495049532 [(google.api.field_behavior) = REQUIRED]; + + // Parent ID for this request. The ID can be either be "folders/[FOLDER_ID]" if the parent is a folder or "organizations/[ORGANIZATION_ID]" if the parent is an organization. + string parent_id = 459714768 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "parent_id" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Firewalls.Insert. See the method description for details. +message InsertFirewallRequest { + // The body resource for this request + Firewall firewall_resource = 41425005 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for ForwardingRules.Insert. See the method description for details. +message InsertForwardingRuleRequest { + // The body resource for this request + ForwardingRule forwarding_rule_resource = 301211695 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for GlobalAddresses.Insert. See the method description for details. +message InsertGlobalAddressRequest { + // The body resource for this request + Address address_resource = 483888121 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for GlobalForwardingRules.Insert. See the method description for details. +message InsertGlobalForwardingRuleRequest { + // The body resource for this request + ForwardingRule forwarding_rule_resource = 301211695 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for GlobalNetworkEndpointGroups.Insert. See the method description for details. +message InsertGlobalNetworkEndpointGroupRequest { + // The body resource for this request + NetworkEndpointGroup network_endpoint_group_resource = 525788839 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for GlobalPublicDelegatedPrefixes.Insert. See the method description for details. +message InsertGlobalPublicDelegatedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The body resource for this request + PublicDelegatedPrefix public_delegated_prefix_resource = 47594501 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + +} + +// A request message for HealthChecks.Insert. See the method description for details. +message InsertHealthCheckRequest { + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Images.Insert. See the method description for details. +message InsertImageRequest { + // Force image creation if true. + optional bool force_create = 197723344; + + // The body resource for this request + Image image_resource = 371171954 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for InstanceGroupManagers.Insert. See the method description for details. +message InsertInstanceGroupManagerRequest { + // The body resource for this request + InstanceGroupManager instance_group_manager_resource = 261063946 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where you want to create the managed instance group. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for InstanceGroups.Insert. See the method description for details. +message InsertInstanceGroupRequest { + // The body resource for this request + InstanceGroup instance_group_resource = 286612152 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where you want to create the instance group. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Instances.Insert. See the method description for details. +message InsertInstanceRequest { + // The body resource for this request + Instance instance_resource = 215988344 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Specifies instance template to create the instance. This field is optional. It can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate + optional string source_instance_template = 332423616; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for InstanceTemplates.Insert. See the method description for details. +message InsertInstanceTemplateRequest { + // The body resource for this request + InstanceTemplate instance_template_resource = 10679561 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for InterconnectAttachments.Insert. See the method description for details. +message InsertInterconnectAttachmentRequest { + // The body resource for this request + InterconnectAttachment interconnect_attachment_resource = 212341369 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // If true, the request will not be committed. + optional bool validate_only = 242744629; + +} + +// A request message for Interconnects.Insert. See the method description for details. +message InsertInterconnectRequest { + // The body resource for this request + Interconnect interconnect_resource = 397611167 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Licenses.Insert. See the method description for details. +message InsertLicenseRequest { + // The body resource for this request + License license_resource = 437955148 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for NetworkEndpointGroups.Insert. See the method description for details. +message InsertNetworkEndpointGroupRequest { + // The body resource for this request + NetworkEndpointGroup network_endpoint_group_resource = 525788839 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where you want to create the network endpoint group. It should comply with RFC1035. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Networks.Insert. See the method description for details. +message InsertNetworkRequest { + // The body resource for this request + Network network_resource = 122105599 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for NodeGroups.Insert. See the method description for details. +message InsertNodeGroupRequest { + // Initial count of nodes in the node group. + int32 initial_node_count = 71951469 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NodeGroup node_group_resource = 505321899 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for NodeTemplates.Insert. See the method description for details. +message InsertNodeTemplateRequest { + // The body resource for this request + NodeTemplate node_template_resource = 127364406 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for PacketMirrorings.Insert. See the method description for details. +message InsertPacketMirroringRequest { + // The body resource for this request + PacketMirroring packet_mirroring_resource = 493501985 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for PublicAdvertisedPrefixes.Insert. See the method description for details. +message InsertPublicAdvertisedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The body resource for this request + PublicAdvertisedPrefix public_advertised_prefix_resource = 233614223 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + +} + +// A request message for PublicDelegatedPrefixes.Insert. See the method description for details. +message InsertPublicDelegatedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The body resource for this request + PublicDelegatedPrefix public_delegated_prefix_resource = 47594501 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region of this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + +} + +// A request message for RegionAutoscalers.Insert. See the method description for details. +message InsertRegionAutoscalerRequest { + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionBackendServices.Insert. See the method description for details. +message InsertRegionBackendServiceRequest { + // The body resource for this request + BackendService backend_service_resource = 347586723 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionCommitments.Insert. See the method description for details. +message InsertRegionCommitmentRequest { + // The body resource for this request + Commitment commitment_resource = 244240888 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionDisks.Insert. See the method description for details. +message InsertRegionDiskRequest { + // The body resource for this request + Disk disk_resource = 25880688 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Source image to restore onto a disk. This field is optional. + optional string source_image = 50443319; + +} + +// A request message for RegionHealthChecks.Insert. See the method description for details. +message InsertRegionHealthCheckRequest { + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionHealthCheckServices.Insert. See the method description for details. +message InsertRegionHealthCheckServiceRequest { + // The body resource for this request + HealthCheckService health_check_service_resource = 477367794 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionInstanceGroupManagers.Insert. See the method description for details. +message InsertRegionInstanceGroupManagerRequest { + // The body resource for this request + InstanceGroupManager instance_group_manager_resource = 261063946 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionNetworkEndpointGroups.Insert. See the method description for details. +message InsertRegionNetworkEndpointGroupRequest { + // The body resource for this request + NetworkEndpointGroup network_endpoint_group_resource = 525788839 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The name of the region where you want to create the network endpoint group. It should comply with RFC1035. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionNotificationEndpoints.Insert. See the method description for details. +message InsertRegionNotificationEndpointRequest { + // The body resource for this request + NotificationEndpoint notification_endpoint_resource = 338459940 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + +} + +// A request message for RegionSslCertificates.Insert. See the method description for details. +message InsertRegionSslCertificateRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // The body resource for this request + SslCertificate ssl_certificate_resource = 180709897 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionTargetHttpProxies.Insert. See the method description for details. +message InsertRegionTargetHttpProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetHttpProxy target_http_proxy_resource = 24696744 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionTargetHttpsProxies.Insert. See the method description for details. +message InsertRegionTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // The body resource for this request + TargetHttpsProxy target_https_proxy_resource = 433657473 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionUrlMaps.Insert. See the method description for details. +message InsertRegionUrlMapRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // begin_interface: MixerMutationRequestBuilder Request ID to support idempotency. + optional string request_id = 37109963; + + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Reservations.Insert. See the method description for details. +message InsertReservationRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + Reservation reservation_resource = 285030177 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for ResourcePolicies.Insert. See the method description for details. +message InsertResourcePolicyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + ResourcePolicy resource_policy_resource = 76826186 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Routes.Insert. See the method description for details. +message InsertRouteRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + Route route_resource = 225428804 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Routers.Insert. See the method description for details. +message InsertRouterRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + Router router_resource = 155222084 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SecurityPolicies.Insert. See the method description for details. +message InsertSecurityPolicyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + SecurityPolicy security_policy_resource = 216159612 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ServiceAttachments.Insert. See the method description for details. +message InsertServiceAttachmentRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region of this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // The body resource for this request + ServiceAttachment service_attachment_resource = 472980256 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SslCertificates.Insert. See the method description for details. +message InsertSslCertificateRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // The body resource for this request + SslCertificate ssl_certificate_resource = 180709897 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SslPolicies.Insert. See the method description for details. +message InsertSslPolicyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + SslPolicy ssl_policy_resource = 274891848 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Subnetworks.Insert. See the method description for details. +message InsertSubnetworkRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + Subnetwork subnetwork_resource = 42233151 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetGrpcProxies.Insert. See the method description for details. +message InsertTargetGrpcProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // The body resource for this request + TargetGrpcProxy target_grpc_proxy_resource = 328922450 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpProxies.Insert. See the method description for details. +message InsertTargetHttpProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetHttpProxy target_http_proxy_resource = 24696744 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpsProxies.Insert. See the method description for details. +message InsertTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetHttpsProxy target_https_proxy_resource = 433657473 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetInstances.Insert. See the method description for details. +message InsertTargetInstanceRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetInstance target_instance_resource = 430453066 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone scoping this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for TargetPools.Insert. See the method description for details. +message InsertTargetPoolRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetPool target_pool_resource = 101281443 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetSslProxies.Insert. See the method description for details. +message InsertTargetSslProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetSslProxy target_ssl_proxy_resource = 142016192 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetTcpProxies.Insert. See the method description for details. +message InsertTargetTcpProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetTcpProxy target_tcp_proxy_resource = 145913931 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetVpnGateways.Insert. See the method description for details. +message InsertTargetVpnGatewayRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetVpnGateway target_vpn_gateway_resource = 498050 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for UrlMaps.Insert. See the method description for details. +message InsertUrlMapRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for VpnGateways.Insert. See the method description for details. +message InsertVpnGatewayRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + VpnGateway vpn_gateway_resource = 182688660 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for VpnTunnels.Insert. See the method description for details. +message InsertVpnTunnelRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + VpnTunnel vpn_tunnel_resource = 86839482 [(google.api.field_behavior) = REQUIRED]; + +} + +// Represents an Instance resource. An instance is a virtual machine that is hosted on Google Cloud Platform. For more information, read Virtual Machine Instances. +message Instance { + // The private IPv6 google access type for the VM. If not specified, use INHERIT_FROM_SUBNETWORK as default. + enum PrivateIpv6GoogleAccess { + // A value indicating that the enum field is not set. + UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0; + + // Bidirectional private IPv6 access to/from Google services. If specified, the subnetwork who is attached to the instance's default network interface will be assigned an internal IPv6 prefix if it doesn't have before. + ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427975994; + + // Outbound private IPv6 access from VMs in this subnet to Google services. If specified, the subnetwork who is attached to the instance's default network interface will be assigned an internal IPv6 prefix if it doesn't have before. + ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288210263; + + // Each network interface inherits PrivateIpv6GoogleAccess from its subnetwork. + INHERIT_FROM_SUBNETWORK = 530256959; + + } + + // [Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // The Nanny is halted and we are performing tear down tasks like network deprogramming, releasing quota, IP, tearing down disks etc. + DEPROVISIONING = 428935662; + + // Resources are being allocated for the instance. + PROVISIONING = 290896621; + + // The instance is in repair. + REPAIRING = 413483285; + + // The instance is running. + RUNNING = 121282975; + + // All required resources have been allocated and the instance is being started. + STAGING = 431072283; + + // The instance has stopped successfully. + STOPPED = 444276141; + + // The instance is currently stopping (either being deleted or killed). + STOPPING = 350791796; + + // The instance has suspended. + SUSPENDED = 51223995; + + // The instance is suspending. + SUSPENDING = 514206246; + + // The instance has stopped (either by explicit action or underlying failure). + TERMINATED = 250018339; + + } + + // Controls for advanced machine-related behavior features. + optional AdvancedMachineFeatures advanced_machine_features = 409646002; + + // Allows this instance to send and receive packets with non-matching destination or source IPs. This is required if you plan to use this instance to forward routes. For more information, see Enabling IP Forwarding . + optional bool can_ip_forward = 467731324; + + optional ConfidentialInstanceConfig confidential_instance_config = 490637685; + + // [Output Only] The CPU platform used by this instance. + optional string cpu_platform = 410285354; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // Whether the resource should be protected against deletion. + optional bool deletion_protection = 458014698; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Array of disks associated with this instance. Persistent disks must be created before you can assign them. + repeated AttachedDisk disks = 95594102; + + // Enables display device for the instance. + optional DisplayDevice display_device = 258933875; + + // Specifies a fingerprint for this resource, which is essentially a hash of the instance's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update the instance. You must always provide an up-to-date fingerprint hash in order to update the instance. To see the latest fingerprint, make get() request to the instance. + optional string fingerprint = 234678500; + + // A list of the type and count of accelerator cards attached to the instance. + repeated AcceleratorConfig guest_accelerators = 463595119; + + // Specifies the hostname of the instance. The specified hostname must be RFC1035 compliant. If hostname is not specified, the default hostname is [INSTANCE_NAME].c.[PROJECT_ID].internal when using the global DNS, and [INSTANCE_NAME].[ZONE].c.[PROJECT_ID].internal when using zonal DNS. + optional string hostname = 237067315; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#instance for instances. + optional string kind = 3292052; + + // A fingerprint for this request, which is essentially a hash of the label's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. To see the latest fingerprint, make get() request to the instance. + optional string label_fingerprint = 178124825; + + // Labels to apply to this instance. These can be later modified by the setLabels method. + map labels = 500195327; + + // [Output Only] Last start timestamp in RFC3339 text format. + optional string last_start_timestamp = 443830736; + + // [Output Only] Last stop timestamp in RFC3339 text format. + optional string last_stop_timestamp = 412823010; + + // [Output Only] Last suspended timestamp in RFC3339 text format. + optional string last_suspended_timestamp = 356275337; + + // Full or partial URL of the machine type resource to use for this instance, in the format: zones/zone/machineTypes/machine-type. This is provided by the client when the instance is created. For example, the following is a valid partial url to a predefined machine type: zones/us-central1-f/machineTypes/n1-standard-1 To create a custom machine type, provide a URL to a machine type in the following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. Memory must be a multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is 5120 MB): zones/zone/machineTypes/custom-CPUS-MEMORY For example: zones/us-central1-f/machineTypes/custom-4-5120 For a full list of restrictions, read the Specifications for custom machine types. + optional string machine_type = 227711026; + + // The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys. + optional Metadata metadata = 86866735; + + // Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: "Intel Haswell" or minCpuPlatform: "Intel Sandy Bridge". + optional string min_cpu_platform = 242912759; + + // The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance. + repeated NetworkInterface network_interfaces = 52735243; + + // The private IPv6 google access type for the VM. If not specified, use INHERIT_FROM_SUBNETWORK as default. + // Check the PrivateIpv6GoogleAccess enum for the list of possible values. + optional string private_ipv6_google_access = 48277006; + + // Specifies the reservations that this instance can consume from. + optional ReservationAffinity reservation_affinity = 157850683; + + // Resource policies applied to this instance. + repeated string resource_policies = 22220385; + + // [Output Only] Reserved for future use. + optional bool satisfies_pzs = 480964267; + + // Sets the scheduling options for this instance. + optional Scheduling scheduling = 386688404; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported. Service accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Service Accounts for more information. + repeated ServiceAccount service_accounts = 277537328; + + optional ShieldedInstanceConfig shielded_instance_config = 12862901; + + optional ShieldedInstanceIntegrityPolicy shielded_instance_integrity_policy = 163696919; + + // [Output Only] Whether a VM has been restricted for start because Compute Engine has detected suspicious activity. + optional bool start_restricted = 123693144; + + // [Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // [Output Only] An optional, human-readable explanation of the status. + optional string status_message = 297428154; + + // Tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035. Multiple tags can be specified via the 'tags.items' field. + optional Tags tags = 3552281; + + // [Output Only] URL of the zone where the instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string zone = 3744684; + +} + +// +message InstanceAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // An object that contains a list of instances scoped by zone. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#instanceAggregatedList for aggregated lists of Instance resources. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents an Instance Group resource. Instance Groups can be used to configure a target for load balancing. Instance groups can either be managed or unmanaged. To create managed instance groups, use the instanceGroupManager or regionInstanceGroupManager resource instead. Use zonal unmanaged instance groups if you need to apply load balancing to groups of heterogeneous instances or if you need to manage the instances yourself. You cannot create regional unmanaged instance groups. For more information, read Instance groups. +message InstanceGroup { + // [Output Only] The creation timestamp for this instance group in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] The fingerprint of the named ports. The system uses this fingerprint to detect conflicts when multiple users change the named ports concurrently. + optional string fingerprint = 234678500; + + // [Output Only] A unique identifier for this instance group, generated by the server. + optional uint64 id = 3355; + + // [Output Only] The resource type, which is always compute#instanceGroup for instance groups. + optional string kind = 3292052; + + // The name of the instance group. The name must be 1-63 characters long, and comply with RFC1035. + optional string name = 3373707; + + // Assigns a name to a port number. For example: {name: "http", port: 80} This allows the system to reference ports by the assigned name instead of a port number. Named ports can also contain multiple ports. For example: [{name: "http", port: 80},{name: "http", port: 8080}] Named ports apply to all instances in this instance group. + repeated NamedPort named_ports = 427598732; + + // [Output Only] The URL of the network to which all instances in the instance group belong. If your instance has multiple network interfaces, then the network and subnetwork fields only refer to the network and subnet used by your primary interface (nic0). + optional string network = 232872494; + + // [Output Only] The URL of the region where the instance group is located (for regional resources). + optional string region = 138946292; + + // [Output Only] The URL for this instance group. The server generates this URL. + optional string self_link = 456214797; + + // [Output Only] The total number of instances in the instance group. + optional int32 size = 3530753; + + // [Output Only] The URL of the subnetwork to which all instances in the instance group belong. If your instance has multiple network interfaces, then the network and subnetwork fields only refer to the network and subnet used by your primary interface (nic0). + optional string subnetwork = 307827694; + + // [Output Only] The URL of the zone where the instance group is located (for zonal resources). + optional string zone = 3744684; + +} + +// +message InstanceGroupAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InstanceGroupsScopedList resources. + map items = 100526016; + + // [Output Only] The resource type, which is always compute#instanceGroupAggregatedList for aggregated lists of instance groups. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// A list of InstanceGroup resources. +message InstanceGroupList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InstanceGroup resources. + repeated InstanceGroup items = 100526016; + + // [Output Only] The resource type, which is always compute#instanceGroupList for instance group lists. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource. +message InstanceGroupManager { + // The autohealing policy for this managed instance group. You can specify only one value. + repeated InstanceGroupManagerAutoHealingPolicy auto_healing_policies = 456799109; + + // The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035. + optional string base_instance_name = 389106439; + + // [Output Only] The creation timestamp for this managed instance group in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // [Output Only] The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions. + optional InstanceGroupManagerActionsSummary current_actions = 164045879; + + // An optional description of this resource. + optional string description = 422937596; + + // Policy specifying the intended distribution of managed instances across zones in a regional managed instance group. + optional DistributionPolicy distribution_policy = 534558541; + + // Fingerprint of this resource. This field may be used in optimistic locking. It will be ignored when inserting an InstanceGroupManager. An up-to-date fingerprint must be provided in order to update the InstanceGroupManager, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an InstanceGroupManager. + optional string fingerprint = 234678500; + + // [Output Only] A unique identifier for this resource type. The server generates this identifier. + optional uint64 id = 3355; + + // [Output Only] The URL of the Instance Group resource. + optional string instance_group = 81095253; + + // The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE. + optional string instance_template = 309248228; + + // [Output Only] The resource type, which is always compute#instanceGroupManager for managed instance groups. + optional string kind = 3292052; + + // The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035. + optional string name = 3373707; + + // Named ports configured for the Instance Groups complementary to this Instance Group Manager. + repeated NamedPort named_ports = 427598732; + + // [Output Only] The URL of the region where the managed instance group resides (for regional resources). + optional string region = 138946292; + + // [Output Only] The URL for this managed instance group. The server defines this URL. + optional string self_link = 456214797; + + // Stateful configuration for this Instanced Group Manager + optional StatefulPolicy stateful_policy = 47538565; + + // [Output Only] The status of this managed instance group. + optional InstanceGroupManagerStatus status = 181260274; + + // The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group. + repeated string target_pools = 336072617; + + // The target number of running instances for this managed instance group. You can reduce this number by using the instanceGroupManager deleteInstances or abandonInstances methods. Resizing the group also changes this number. + optional int32 target_size = 62880239; + + // The update policy for this managed instance group. + optional InstanceGroupManagerUpdatePolicy update_policy = 175809896; + + // Specifies the instance templates used by this managed instance group to create instances. Each version is defined by an instanceTemplate and a name. Every version can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates. + repeated InstanceGroupManagerVersion versions = 162430619; + + // [Output Only] The URL of a zone where the managed instance group is located (for zonal resources). + optional string zone = 3744684; + +} + +// +message InstanceGroupManagerActionsSummary { + // [Output Only] The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it. + optional int32 abandoning = 440023373; + + // [Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully. If you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated. + optional int32 creating = 209809081; + + // [Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly. + optional int32 creating_without_retries = 369916745; + + // [Output Only] The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted. + optional int32 deleting = 282846120; + + // [Output Only] The number of instances in the managed instance group that are running and have no scheduled actions. + optional int32 none = 3387192; + + // [Output Only] The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template. + optional int32 recreating = 339057132; + + // [Output Only] The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance. + optional int32 refreshing = 215044903; + + // [Output Only] The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted. + optional int32 restarting = 372312947; + + // [Output Only] The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation. + optional int32 verifying = 451612873; + +} + +// +message InstanceGroupManagerAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InstanceGroupManagersScopedList resources. + map items = 100526016; + + // [Output Only] The resource type, which is always compute#instanceGroupManagerAggregatedList for an aggregated list of managed instance groups. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message InstanceGroupManagerAutoHealingPolicy { + // The URL for the health check that signals autohealing. + optional string health_check = 308876645; + + // The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. This initial delay allows instances to initialize and run their startup scripts before the instance group determines that they are UNHEALTHY. This prevents the managed instance group from recreating its instances prematurely. This value must be from range [0, 3600]. + optional int32 initial_delay_sec = 263207002; + +} + +// [Output Only] A list of managed instance groups. +message InstanceGroupManagerList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InstanceGroupManager resources. + repeated InstanceGroupManager items = 100526016; + + // [Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message InstanceGroupManagerStatus { + // [Output Only] The URL of the Autoscaler that targets this instance group manager. + optional string autoscaler = 517258967; + + // [Output Only] A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified. + optional bool is_stable = 108410864; + + // [Output Only] Stateful status of the given Instance Group Manager. + optional InstanceGroupManagerStatusStateful stateful = 244462412; + + // [Output Only] A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager. + optional InstanceGroupManagerStatusVersionTarget version_target = 289386200; + +} + +// +message InstanceGroupManagerStatusStateful { + // [Output Only] A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful config even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions. + optional bool has_stateful_config = 110474224; + + // [Output Only] Status of per-instance configs on the instance. + optional InstanceGroupManagerStatusStatefulPerInstanceConfigs per_instance_configs = 526265001; + +} + +// +message InstanceGroupManagerStatusStatefulPerInstanceConfigs { + // A bit indicating if all of the group's per-instance configs (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs. + optional bool all_effective = 516540553; + +} + +// +message InstanceGroupManagerStatusVersionTarget { + // [Output Only] A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager. + optional bool is_reached = 433209149; + +} + +// +message InstanceGroupManagerUpdatePolicy { + // The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled. + optional string instance_redistribution_type = 292630424; + + // The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge. + optional FixedOrPercent max_surge = 302572691; + + // The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable. + optional FixedOrPercent max_unavailable = 404940277; + + // Minimal action to be taken on an instance. You can specify either RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a RESTART, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action. + optional string minimal_action = 270567060; + + // What action should be used to replace instances. See minimal_action.REPLACE + optional string replacement_method = 505931694; + + // The type of update process. You can specify either PROACTIVE so that the instance group manager proactively executes actions in order to bring instances to their target versions or OPPORTUNISTIC so that no action is proactively executed but the update will be performed as part of other actions (for example, resizes or recreateInstances calls). + optional string type = 3575610; + +} + +// +message InstanceGroupManagerVersion { + // The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the `targetSize` for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the `targetSize` for this version is reached. + optional string instance_template = 309248228; + + // Name of the version. Unique among all versions in the scope of this managed instance group. + optional string name = 3373707; + + // Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information. + optional FixedOrPercent target_size = 62880239; + +} + +// +message InstanceGroupManagersAbandonInstancesRequest { + // The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + repeated string instances = 29097598; + +} + +// InstanceGroupManagers.applyUpdatesToInstances +message InstanceGroupManagersApplyUpdatesRequest { + // Flag to update all instances instead of specified list of “instances”. If the flag is set to true then the instances may not be specified in the request. + optional bool all_instances = 403676512; + + // The list of URLs of one or more instances for which you want to apply updates. Each URL can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + repeated string instances = 29097598; + + // The minimal action that you want to perform on each instance during the update: - REPLACE: At minimum, delete the instance and create it again. - RESTART: Stop the instance and start it again. - REFRESH: Do not stop the instance. - NONE: Do not disrupt the instance at all. By default, the minimum action is NONE. If your update requires a more disruptive action than you set with this flag, the necessary action is performed to execute the update. + optional string minimal_action = 270567060; + + // The most disruptive action that you want to perform on each instance during the update: - REPLACE: Delete the instance and create it again. - RESTART: Stop the instance and start it again. - REFRESH: Do not stop the instance. - NONE: Do not disrupt the instance at all. By default, the most disruptive allowed action is REPLACE. If your update requires a more disruptive action than you set with this flag, the update request will fail. + optional string most_disruptive_allowed_action = 66103053; + +} + +// InstanceGroupManagers.createInstances +message InstanceGroupManagersCreateInstancesRequest { + // [Required] List of specifications of per-instance configs. + repeated PerInstanceConfig instances = 29097598; + +} + +// +message InstanceGroupManagersDeleteInstancesRequest { + // The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + repeated string instances = 29097598; + + // Specifies whether the request should proceed despite the inclusion of instances that are not members of the group or that are already in the process of being deleted or abandoned. If this field is set to `false` and such an instance is specified in the request, the operation fails. The operation always fails if the request contains a malformed instance URL or a reference to an instance that exists in a zone or region other than the group's zone or region. + optional bool skip_instances_on_validation_error = 40631073; + +} + +// InstanceGroupManagers.deletePerInstanceConfigs +message InstanceGroupManagersDeletePerInstanceConfigsReq { + // The list of instance names for which we want to delete per-instance configs on this managed instance group. + repeated string names = 104585032; + +} + +// +message InstanceGroupManagersListErrorsResponse { + // [Output Only] The list of errors of the managed instance group. + repeated InstanceManagedByIgmError items = 100526016; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + +} + +// +message InstanceGroupManagersListManagedInstancesResponse { + // [Output Only] The list of instances in the managed instance group. + repeated ManagedInstance managed_instances = 336219614; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + +} + +// +message InstanceGroupManagersListPerInstanceConfigsResp { + // [Output Only] The list of PerInstanceConfig. + repeated PerInstanceConfig items = 100526016; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// InstanceGroupManagers.patchPerInstanceConfigs +message InstanceGroupManagersPatchPerInstanceConfigsReq { + // The list of per-instance configs to insert or patch on this managed instance group. + repeated PerInstanceConfig per_instance_configs = 526265001; + +} + +// +message InstanceGroupManagersRecreateInstancesRequest { + // The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + repeated string instances = 29097598; + +} + +// +message InstanceGroupManagersScopedList { + // [Output Only] The list of managed instance groups that are contained in the specified project and zone. + repeated InstanceGroupManager instance_group_managers = 214072592; + + // [Output Only] The warning that replaces the list of managed instance groups when the list is empty. + optional Warning warning = 50704284; + +} + +// +message InstanceGroupManagersSetInstanceTemplateRequest { + // The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE. + optional string instance_template = 309248228; + +} + +// +message InstanceGroupManagersSetTargetPoolsRequest { + // The fingerprint of the target pools information. Use this optional property to prevent conflicts when multiple users change the target pools settings concurrently. Obtain the fingerprint with the instanceGroupManagers.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request. + optional string fingerprint = 234678500; + + // The list of target pool URLs that instances in this managed instance group belong to. The managed instance group applies these target pools to all of the instances in the group. Existing instances and new instances in the group all receive these target pool settings. + repeated string target_pools = 336072617; + +} + +// InstanceGroupManagers.updatePerInstanceConfigs +message InstanceGroupManagersUpdatePerInstanceConfigsReq { + // The list of per-instance configs to insert or patch on this managed instance group. + repeated PerInstanceConfig per_instance_configs = 526265001; + +} + +// +message InstanceGroupsAddInstancesRequest { + // The list of instances to add to the instance group. + repeated InstanceReference instances = 29097598; + +} + +// +message InstanceGroupsListInstances { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InstanceWithNamedPorts resources. + repeated InstanceWithNamedPorts items = 100526016; + + // [Output Only] The resource type, which is always compute#instanceGroupsListInstances for the list of instances in the specified instance group. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message InstanceGroupsListInstancesRequest { + // A filter for the state of the instances in the instance group. Valid options are ALL or RUNNING. If you do not specify this parameter the list includes all instances regardless of their state. + enum InstanceState { + // A value indicating that the enum field is not set. + UNDEFINED_INSTANCE_STATE = 0; + + // Includes all instances in the generated list regardless of their state. + ALL = 64897; + + // Includes instances in the generated list only if they have a RUNNING state. + RUNNING = 121282975; + + } + + // A filter for the state of the instances in the instance group. Valid options are ALL or RUNNING. If you do not specify this parameter the list includes all instances regardless of their state. + // Check the InstanceState enum for the list of possible values. + optional string instance_state = 92223591; + +} + +// +message InstanceGroupsRemoveInstancesRequest { + // The list of instances to remove from the instance group. + repeated InstanceReference instances = 29097598; + +} + +// +message InstanceGroupsScopedList { + // [Output Only] The list of instance groups that are contained in this scope. + repeated InstanceGroup instance_groups = 366469310; + + // [Output Only] An informational warning that replaces the list of instance groups when the list is empty. + optional Warning warning = 50704284; + +} + +// +message InstanceGroupsSetNamedPortsRequest { + // The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request. A request with an incorrect fingerprint will fail with error 412 conditionNotMet. + optional string fingerprint = 234678500; + + // The list of named ports to set for this instance group. + repeated NamedPort named_ports = 427598732; + +} + +// Contains a list of instances. +message InstanceList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Instance resources. + repeated Instance items = 100526016; + + // [Output Only] Type of resource. Always compute#instanceList for lists of Instance resources. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of instance referrers. +message InstanceListReferrers { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Reference resources. + repeated Reference items = 100526016; + + // [Output Only] Type of resource. Always compute#instanceListReferrers for lists of Instance referrers. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message InstanceManagedByIgmError { + // [Output Only] Contents of the error. + optional InstanceManagedByIgmErrorManagedInstanceError error = 96784904; + + // [Output Only] Details of the instance action that triggered this error. May be null, if the error was not caused by an action on an instance. This field is optional. + optional InstanceManagedByIgmErrorInstanceActionDetails instance_action_details = 292224547; + + // [Output Only] The time that this error occurred. This value is in RFC3339 text format. + optional string timestamp = 55126294; + +} + +// +message InstanceManagedByIgmErrorInstanceActionDetails { + // [Output Only] Action that managed instance group was executing on the instance when the error occurred. Possible values: + enum Action { + // A value indicating that the enum field is not set. + UNDEFINED_ACTION = 0; + + // The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. + ABANDONING = 388244813; + + // The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. + CREATING = 455564985; + + // The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased. + CREATING_WITHOUT_RETRIES = 428843785; + + // The managed instance group is permanently deleting this instance. + DELETING = 528602024; + + // The managed instance group has not scheduled any actions for this instance. + NONE = 2402104; + + // The managed instance group is recreating this instance. + RECREATING = 287278572; + + // The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance. + REFRESHING = 163266343; + + // The managed instance group is restarting this instance. + RESTARTING = 320534387; + + // The managed instance group is verifying this already created instance. Verification happens every time the instance is (re)created or restarted and consists of: 1. Waiting until health check specified as part of this managed instance group's autohealing policy reports HEALTHY. Note: Applies only if autohealing policy has a health check specified 2. Waiting for addition verification steps performed as post-instance creation (subject to future extensions). + VERIFYING = 16982185; + + } + + // [Output Only] Action that managed instance group was executing on the instance when the error occurred. Possible values: + // Check the Action enum for the list of possible values. + optional string action = 187661878; + + // [Output Only] The URL of the instance. The URL can be set even if the instance has not yet been created. + optional string instance = 18257045; + + // [Output Only] Version this instance was created from, or was being created from, but the creation failed. Corresponds to one of the versions that were set on the Instance Group Manager resource at the time this instance was being created. + optional ManagedInstanceVersion version = 351608024; + +} + +// +message InstanceManagedByIgmErrorManagedInstanceError { + // [Output Only] Error code. + optional string code = 3059181; + + // [Output Only] Error message. + optional string message = 418054151; + +} + +// +message InstanceMoveRequest { + // The URL of the destination zone to move the instance. This can be a full or partial URL. For example, the following are all valid URLs to a zone: - https://www.googleapis.com/compute/v1/projects/project/zones/zone - projects/project/zones/zone - zones/zone + optional string destination_zone = 131854653; + + // The URL of the target instance to move. This can be a full or partial URL. For example, the following are all valid URLs to an instance: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /instances/instance - projects/project/zones/zone/instances/instance - zones/zone/instances/instance + optional string target_instance = 289769347; + +} + +// +message InstanceProperties { + // The private IPv6 google access type for VMs. If not specified, use INHERIT_FROM_SUBNETWORK as default. + enum PrivateIpv6GoogleAccess { + // A value indicating that the enum field is not set. + UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0; + + // Bidirectional private IPv6 access to/from Google services. If specified, the subnetwork who is attached to the instance's default network interface will be assigned an internal IPv6 prefix if it doesn't have before. + ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427975994; + + // Outbound private IPv6 access from VMs in this subnet to Google services. If specified, the subnetwork who is attached to the instance's default network interface will be assigned an internal IPv6 prefix if it doesn't have before. + ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288210263; + + // Each network interface inherits PrivateIpv6GoogleAccess from its subnetwork. + INHERIT_FROM_SUBNETWORK = 530256959; + + } + + // Controls for advanced machine-related behavior features. + optional AdvancedMachineFeatures advanced_machine_features = 409646002; + + // Enables instances created based on these properties to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the Enable IP forwarding documentation for more information. + optional bool can_ip_forward = 467731324; + + // Specifies the Confidential Instance options. + optional ConfidentialInstanceConfig confidential_instance_config = 490637685; + + // An optional text description for the instances that are created from these properties. + optional string description = 422937596; + + // An array of disks that are associated with the instances that are created from these properties. + repeated AttachedDisk disks = 95594102; + + // A list of guest accelerator cards' type and count to use for instances created from these properties. + repeated AcceleratorConfig guest_accelerators = 463595119; + + // Labels to apply to instances that are created from these properties. + map labels = 500195327; + + // The machine type to use for instances that are created from these properties. + optional string machine_type = 227711026; + + // The metadata key/value pairs to assign to instances that are created from these properties. These pairs can consist of custom metadata or predefined keys. See Project and instance metadata for more information. + optional Metadata metadata = 86866735; + + // Minimum cpu/platform to be used by instances. The instance may be scheduled on the specified or newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: "Intel Haswell" or minCpuPlatform: "Intel Sandy Bridge". For more information, read Specifying a Minimum CPU Platform. + optional string min_cpu_platform = 242912759; + + // An array of network access configurations for this interface. + repeated NetworkInterface network_interfaces = 52735243; + + // The private IPv6 google access type for VMs. If not specified, use INHERIT_FROM_SUBNETWORK as default. + // Check the PrivateIpv6GoogleAccess enum for the list of possible values. + optional string private_ipv6_google_access = 48277006; + + // Specifies the reservations that instances can consume from. + optional ReservationAffinity reservation_affinity = 157850683; + + // Resource policies (names, not ULRs) applied to instances created from these properties. + repeated string resource_policies = 22220385; + + // Specifies the scheduling options for the instances that are created from these properties. + optional Scheduling scheduling = 386688404; + + // A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from these properties. Use metadata queries to obtain the access tokens for these instances. + repeated ServiceAccount service_accounts = 277537328; + + optional ShieldedInstanceConfig shielded_instance_config = 12862901; + + // A list of tags to apply to the instances that are created from these properties. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035. + optional Tags tags = 3552281; + +} + +// +message InstanceReference { + // The URL for a specific instance. @required compute.instancegroups.addInstances/removeInstances + optional string instance = 18257045; + +} + +// Represents an Instance Template resource. You can use instance templates to create VM instances and managed instance groups. For more information, read Instance Templates. +message InstanceTemplate { + // [Output Only] The creation timestamp for this instance template in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] A unique identifier for this instance template. The server defines this identifier. + optional uint64 id = 3355; + + // [Output Only] The resource type, which is always compute#instanceTemplate for instance templates. + optional string kind = 3292052; + + // Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // The instance properties for this instance template. + optional InstanceProperties properties = 147688755; + + // [Output Only] The URL for this instance template. The server defines this URL. + optional string self_link = 456214797; + + // The source instance used to create the template. You can provide this as a partial or full URL to the resource. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /instances/instance - projects/project/zones/zone/instances/instance + optional string source_instance = 396315705; + + // The source instance params to use to create this instance template. + optional SourceInstanceParams source_instance_params = 135342156; + +} + +// A list of instance templates. +message InstanceTemplateList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InstanceTemplate resources. + repeated InstanceTemplate items = 100526016; + + // [Output Only] The resource type, which is always compute#instanceTemplatesListResponse for instance template lists. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message InstanceWithNamedPorts { + // [Output Only] The status of the instance. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // The Nanny is halted and we are performing tear down tasks like network deprogramming, releasing quota, IP, tearing down disks etc. + DEPROVISIONING = 428935662; + + // Resources are being allocated for the instance. + PROVISIONING = 290896621; + + // The instance is in repair. + REPAIRING = 413483285; + + // The instance is running. + RUNNING = 121282975; + + // All required resources have been allocated and the instance is being started. + STAGING = 431072283; + + // The instance has stopped successfully. + STOPPED = 444276141; + + // The instance is currently stopping (either being deleted or killed). + STOPPING = 350791796; + + // The instance has suspended. + SUSPENDED = 51223995; + + // The instance is suspending. + SUSPENDING = 514206246; + + // The instance has stopped (either by explicit action or underlying failure). + TERMINATED = 250018339; + + } + + // [Output Only] The URL of the instance. + optional string instance = 18257045; + + // [Output Only] The named ports that belong to this instance group. + repeated NamedPort named_ports = 427598732; + + // [Output Only] The status of the instance. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + +} + +// +message InstancesAddResourcePoliciesRequest { + // Resource policies to be added to this instance. + repeated string resource_policies = 22220385; + +} + +// +message InstancesGetEffectiveFirewallsResponse { + // Effective firewalls from firewall policies. + repeated InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy firewall_policys = 410985794; + + // Effective firewalls on the instance. + repeated Firewall firewalls = 272245619; + +} + +// +message InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy { + // [Output Only] The type of the firewall policy. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + HIERARCHY = 69902869; + + UNSPECIFIED = 526786327; + + } + + // [Output Only] Deprecated, please use short name instead. The display name of the firewall policy. + optional string display_name = 4473832; + + // [Output Only] The name of the firewall policy. + optional string name = 3373707; + + // The rules that apply to the network. + repeated FirewallPolicyRule rules = 108873975; + + // [Output Only] The short name of the firewall policy. + optional string short_name = 492051566; + + // [Output Only] The type of the firewall policy. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// +message InstancesRemoveResourcePoliciesRequest { + // Resource policies to be removed from this instance. + repeated string resource_policies = 22220385; + +} + +// +message InstancesScopedList { + // [Output Only] A list of instances contained in this scope. + repeated Instance instances = 29097598; + + // [Output Only] Informational warning which replaces the list of instances when the list is empty. + optional Warning warning = 50704284; + +} + +// +message InstancesSetLabelsRequest { + // Fingerprint of the previous set of labels for this resource, used to prevent conflicts. Provide the latest fingerprint value when making a request to add or change labels. + optional string label_fingerprint = 178124825; + + map labels = 500195327; + +} + +// +message InstancesSetMachineResourcesRequest { + // A list of the type and count of accelerator cards attached to the instance. + repeated AcceleratorConfig guest_accelerators = 463595119; + +} + +// +message InstancesSetMachineTypeRequest { + // Full or partial URL of the machine type resource. See Machine Types for a full list of machine types. For example: zones/us-central1-f/machineTypes/n1-standard-1 + optional string machine_type = 227711026; + +} + +// +message InstancesSetMinCpuPlatformRequest { + // Minimum cpu/platform this instance should be started at. + optional string min_cpu_platform = 242912759; + +} + +// +message InstancesSetServiceAccountRequest { + // Email address of the service account. + optional string email = 96619420; + + // The list of scopes to be made available for this service account. + repeated string scopes = 165973151; + +} + +// +message InstancesStartWithEncryptionKeyRequest { + // Array of disks associated with this instance that are protected with a customer-supplied encryption key. In order to start the instance, the disk url and its corresponding key must be provided. If the disk is not protected with a customer-supplied encryption key it should not be specified. + repeated CustomerEncryptionKeyProtectedDisk disks = 95594102; + +} + +// HttpRouteRuleMatch criteria for field values that must stay within the specified integer range. +message Int64RangeMatch { + // The end of the range (exclusive) in signed long integer format. + optional int64 range_end = 322439897; + + // The start of the range (inclusive) in signed long integer format. + optional int64 range_start = 103333600; + +} + +// Represents an Interconnect resource. An Interconnect resource is a dedicated connection between the GCP network and your on-premises network. For more information, read the Dedicated Interconnect Overview. +message Interconnect { + // Type of interconnect, which can take one of the following values: - PARTNER: A partner-managed interconnection shared between customers though a partner. - DEDICATED: A dedicated physical interconnection with the customer. Note that a value IT_PRIVATE has been deprecated in favor of DEDICATED. + enum InterconnectType { + // A value indicating that the enum field is not set. + UNDEFINED_INTERCONNECT_TYPE = 0; + + // A dedicated physical interconnection with the customer. + DEDICATED = 258411983; + + // [Deprecated] A private, physical interconnection with the customer. + IT_PRIVATE = 335677007; + + // A partner-managed interconnection shared between customers via partner. + PARTNER = 461924520; + + } + + // Type of link requested, which can take one of the following values: - LINK_TYPE_ETHERNET_10G_LR: A 10G Ethernet with LR optics - LINK_TYPE_ETHERNET_100G_LR: A 100G Ethernet with LR optics. Note that this field indicates the speed of each of the links in the bundle, not the speed of the entire bundle. + enum LinkType { + // A value indicating that the enum field is not set. + UNDEFINED_LINK_TYPE = 0; + + // 100G Ethernet, LR Optics. + LINK_TYPE_ETHERNET_100G_LR = 337672551; + + // 10G Ethernet, LR Optics. [(rate_bps) = 10000000000]; + LINK_TYPE_ETHERNET_10G_LR = 236739749; + + } + + // [Output Only] The current status of this Interconnect's functionality, which can take one of the following values: - OS_ACTIVE: A valid Interconnect, which is turned up and is ready to use. Attachments may be provisioned on this Interconnect. - OS_UNPROVISIONED: An Interconnect that has not completed turnup. No attachments may be provisioned on this Interconnect. - OS_UNDER_MAINTENANCE: An Interconnect that is undergoing internal maintenance. No attachments may be provisioned or updated on this Interconnect. + enum OperationalStatus { + // A value indicating that the enum field is not set. + UNDEFINED_OPERATIONAL_STATUS = 0; + + // The interconnect is valid, turned up, and ready to use. Attachments may be provisioned on this interconnect. + OS_ACTIVE = 55721409; + + // The interconnect has not completed turnup. No attachments may be provisioned on this interconnect. + OS_UNPROVISIONED = 239771840; + + } + + // [Output Only] The current state of Interconnect functionality, which can take one of the following values: - ACTIVE: The Interconnect is valid, turned up and ready to use. Attachments may be provisioned on this Interconnect. - UNPROVISIONED: The Interconnect has not completed turnup. No attachments may be provisioned on this Interconnect. - UNDER_MAINTENANCE: The Interconnect is undergoing internal maintenance. No attachments may be provisioned or updated on this Interconnect. + enum State { + // A value indicating that the enum field is not set. + UNDEFINED_STATE = 0; + + // The interconnect is valid, turned up, and ready to use. Attachments may be provisioned on this interconnect. + ACTIVE = 314733318; + + // The interconnect has not completed turnup. No attachments may be provisioned on this interconnect. + UNPROVISIONED = 517333979; + + } + + // Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are exchanged over it. By default, the status is set to true. + optional bool admin_enabled = 445675089; + + // [Output Only] A list of CircuitInfo objects, that describe the individual circuits in this LAG. + repeated InterconnectCircuitInfo circuit_infos = 164839855; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // Customer name, to put in the Letter of Authorization as the party authorized to request a crossconnect. + optional string customer_name = 3665484; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] A list of outages expected for this Interconnect. + repeated InterconnectOutageNotification expected_outages = 264484123; + + // [Output Only] IP address configured on the Google side of the Interconnect link. This can be used only for ping tests. + optional string google_ip_address = 443105954; + + // [Output Only] Google reference ID to be used when raising support tickets with Google or otherwise to debug backend connectivity issues. + optional string google_reference_id = 534944469; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] A list of the URLs of all InterconnectAttachments configured to use this Interconnect. + repeated string interconnect_attachments = 425388415; + + // Type of interconnect, which can take one of the following values: - PARTNER: A partner-managed interconnection shared between customers though a partner. - DEDICATED: A dedicated physical interconnection with the customer. Note that a value IT_PRIVATE has been deprecated in favor of DEDICATED. + // Check the InterconnectType enum for the list of possible values. + optional string interconnect_type = 515165259; + + // [Output Only] Type of the resource. Always compute#interconnect for interconnects. + optional string kind = 3292052; + + // Type of link requested, which can take one of the following values: - LINK_TYPE_ETHERNET_10G_LR: A 10G Ethernet with LR optics - LINK_TYPE_ETHERNET_100G_LR: A 100G Ethernet with LR optics. Note that this field indicates the speed of each of the links in the bundle, not the speed of the entire bundle. + // Check the LinkType enum for the list of possible values. + optional string link_type = 523207775; + + // URL of the InterconnectLocation object that represents where this connection is to be provisioned. + optional string location = 290430901; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // Email address to contact the customer NOC for operations and maintenance notifications regarding this Interconnect. If specified, this will be used for notifications in addition to all other forms described, such as Stackdriver logs alerting and Cloud Notifications. + optional string noc_contact_email = 14072832; + + // [Output Only] The current status of this Interconnect's functionality, which can take one of the following values: - OS_ACTIVE: A valid Interconnect, which is turned up and is ready to use. Attachments may be provisioned on this Interconnect. - OS_UNPROVISIONED: An Interconnect that has not completed turnup. No attachments may be provisioned on this Interconnect. - OS_UNDER_MAINTENANCE: An Interconnect that is undergoing internal maintenance. No attachments may be provisioned or updated on this Interconnect. + // Check the OperationalStatus enum for the list of possible values. + optional string operational_status = 201070847; + + // [Output Only] IP address configured on the customer side of the Interconnect link. The customer should configure this IP address during turnup when prompted by Google NOC. This can be used only for ping tests. + optional string peer_ip_address = 207735769; + + // [Output Only] Number of links actually provisioned in this interconnect. + optional int32 provisioned_link_count = 410888565; + + // Target number of physical links in the link bundle, as requested by the customer. + optional int32 requested_link_count = 45051387; + + // [Output Only] Set to true if the resource satisfies the zone separation organization policy constraints and false otherwise. Defaults to false if the field is not present. + optional bool satisfies_pzs = 480964267; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The current state of Interconnect functionality, which can take one of the following values: - ACTIVE: The Interconnect is valid, turned up and ready to use. Attachments may be provisioned on this Interconnect. - UNPROVISIONED: The Interconnect has not completed turnup. No attachments may be provisioned on this Interconnect. - UNDER_MAINTENANCE: The Interconnect is undergoing internal maintenance. No attachments may be provisioned or updated on this Interconnect. + // Check the State enum for the list of possible values. + optional string state = 109757585; + +} + +// Represents an Interconnect Attachment (VLAN) resource. You can use Interconnect attachments (VLANS) to connect your Virtual Private Cloud networks to your on-premises networks through an Interconnect. For more information, read Creating VLAN Attachments. +message InterconnectAttachment { + // Provisioned bandwidth capacity for the interconnect attachment. For attachments of type DEDICATED, the user can set the bandwidth. For attachments of type PARTNER, the Google Partner that is operating the interconnect must set the bandwidth. Output only for PARTNER type, mutable for PARTNER_PROVIDER and DEDICATED, and can take one of the following values: - BPS_50M: 50 Mbit/s - BPS_100M: 100 Mbit/s - BPS_200M: 200 Mbit/s - BPS_300M: 300 Mbit/s - BPS_400M: 400 Mbit/s - BPS_500M: 500 Mbit/s - BPS_1G: 1 Gbit/s - BPS_2G: 2 Gbit/s - BPS_5G: 5 Gbit/s - BPS_10G: 10 Gbit/s - BPS_20G: 20 Gbit/s - BPS_50G: 50 Gbit/s + enum Bandwidth { + // A value indicating that the enum field is not set. + UNDEFINED_BANDWIDTH = 0; + + // 100 Mbit/s + BPS_100M = 49547958; + + // 10 Gbit/s + BPS_10G = 278693006; + + // 1 Gbit/s + BPS_1G = 355358448; + + // 200 Mbit/s + BPS_200M = 49577749; + + // 20 Gbit/s + BPS_20G = 278693967; + + // 2 Gbit/s + BPS_2G = 355358479; + + // 300 Mbit/s + BPS_300M = 49607540; + + // 400 Mbit/s + BPS_400M = 49637331; + + // 500 Mbit/s + BPS_500M = 49667122; + + // 50 Gbit/s + BPS_50G = 278696850; + + // 50 Mbit/s + BPS_50M = 278696856; + + // 5 Gbit/s + BPS_5G = 355358572; + + } + + // Desired availability domain for the attachment. Only available for type PARTNER, at creation time, and can take one of the following values: - AVAILABILITY_DOMAIN_ANY - AVAILABILITY_DOMAIN_1 - AVAILABILITY_DOMAIN_2 For improved reliability, customers should configure a pair of attachments, one per availability domain. The selected availability domain will be provided to the Partner via the pairing key, so that the provisioned circuit will lie in the specified domain. If not specified, the value will default to AVAILABILITY_DOMAIN_ANY. + enum EdgeAvailabilityDomain { + // A value indicating that the enum field is not set. + UNDEFINED_EDGE_AVAILABILITY_DOMAIN = 0; + + AVAILABILITY_DOMAIN_1 = 349552090; + + AVAILABILITY_DOMAIN_2 = 349552091; + + AVAILABILITY_DOMAIN_ANY = 375256373; + + } + + // Indicates the user-supplied encryption option of this VLAN attachment (interconnectAttachment). Can only be specified at attachment creation for PARTNER or DEDICATED attachments. Possible values are: - NONE - This is the default value, which means that the VLAN attachment carries unencrypted traffic. VMs are able to send traffic to, or receive traffic from, such a VLAN attachment. - IPSEC - The VLAN attachment carries only encrypted traffic that is encrypted by an IPsec device, such as an HA VPN gateway or third-party IPsec VPN. VMs cannot directly send traffic to, or receive traffic from, such a VLAN attachment. To use *IPsec-encrypted Cloud Interconnect*, the VLAN attachment must be created with this option. Not currently available publicly. + enum Encryption { + // A value indicating that the enum field is not set. + UNDEFINED_ENCRYPTION = 0; + + // The interconnect attachment will carry only encrypted traffic that is encrypted by an IPsec device such as HA VPN gateway; VMs cannot directly send traffic to or receive traffic from such an interconnect attachment. To use IPsec-encrypted Cloud Interconnect, the interconnect attachment must be created with this option. + IPSEC = 69882282; + + // This is the default value, which means the Interconnect Attachment will carry unencrypted traffic. VMs will be able to send traffic to or receive traffic from such interconnect attachment. + NONE = 2402104; + + } + + // [Output Only] The current status of whether or not this interconnect attachment is functional, which can take one of the following values: - OS_ACTIVE: The attachment has been turned up and is ready to use. - OS_UNPROVISIONED: The attachment is not ready to use yet, because turnup is not complete. + enum OperationalStatus { + // A value indicating that the enum field is not set. + UNDEFINED_OPERATIONAL_STATUS = 0; + + // Indicates that attachment has been turned up and is ready to use. + OS_ACTIVE = 55721409; + + // Indicates that attachment is not ready to use yet, because turnup is not complete. + OS_UNPROVISIONED = 239771840; + + } + + // [Output Only] The current state of this attachment's functionality. Enum values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, PARTNER, and PARTNER_PROVIDER interconnect attachments, while enum values PENDING_PARTNER, PARTNER_REQUEST_RECEIVED, and PENDING_CUSTOMER are used for only PARTNER and PARTNER_PROVIDER interconnect attachments. This state can take one of the following values: - ACTIVE: The attachment has been turned up and is ready to use. - UNPROVISIONED: The attachment is not ready to use yet, because turnup is not complete. - PENDING_PARTNER: A newly-created PARTNER attachment that has not yet been configured on the Partner side. - PARTNER_REQUEST_RECEIVED: A PARTNER attachment is in the process of provisioning after a PARTNER_PROVIDER attachment was created that references it. - PENDING_CUSTOMER: A PARTNER or PARTNER_PROVIDER attachment that is waiting for a customer to activate it. - DEFUNCT: The attachment was deleted externally and is no longer functional. This could be because the associated Interconnect was removed, or because the other side of a Partner attachment was deleted. + enum State { + // A value indicating that the enum field is not set. + UNDEFINED_STATE = 0; + + // Indicates that attachment has been turned up and is ready to use. + ACTIVE = 314733318; + + // The attachment was deleted externally and is no longer functional. This could be because the associated Interconnect was wiped out, or because the other side of a Partner attachment was deleted. + DEFUNCT = 115891759; + + // A PARTNER attachment is in the process of provisioning after a PARTNER_PROVIDER attachment was created that references it. + PARTNER_REQUEST_RECEIVED = 513587304; + + // PARTNER or PARTNER_PROVIDER attachment that is waiting for the customer to activate. + PENDING_CUSTOMER = 167494054; + + // A newly created PARTNER attachment that has not yet been configured on the Partner side. + PENDING_PARTNER = 387890656; + + STATE_UNSPECIFIED = 470755401; + + // Indicates that attachment is not ready to use yet, because turnup is not complete. + UNPROVISIONED = 517333979; + + } + + // The type of interconnect attachment this is, which can take one of the following values: - DEDICATED: an attachment to a Dedicated Interconnect. - PARTNER: an attachment to a Partner Interconnect, created by the customer. - PARTNER_PROVIDER: an attachment to a Partner Interconnect, created by the partner. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + // Attachment to a dedicated interconnect. + DEDICATED = 258411983; + + // Attachment to a partner interconnect, created by the customer. + PARTNER = 461924520; + + // Attachment to a partner interconnect, created by the partner. + PARTNER_PROVIDER = 483261352; + + } + + // Determines whether this Attachment will carry packets. Not present for PARTNER_PROVIDER. + optional bool admin_enabled = 445675089; + + // Provisioned bandwidth capacity for the interconnect attachment. For attachments of type DEDICATED, the user can set the bandwidth. For attachments of type PARTNER, the Google Partner that is operating the interconnect must set the bandwidth. Output only for PARTNER type, mutable for PARTNER_PROVIDER and DEDICATED, and can take one of the following values: - BPS_50M: 50 Mbit/s - BPS_100M: 100 Mbit/s - BPS_200M: 200 Mbit/s - BPS_300M: 300 Mbit/s - BPS_400M: 400 Mbit/s - BPS_500M: 500 Mbit/s - BPS_1G: 1 Gbit/s - BPS_2G: 2 Gbit/s - BPS_5G: 5 Gbit/s - BPS_10G: 10 Gbit/s - BPS_20G: 20 Gbit/s - BPS_50G: 50 Gbit/s + // Check the Bandwidth enum for the list of possible values. + optional string bandwidth = 181715121; + + // Up to 16 candidate prefixes that can be used to restrict the allocation of cloudRouterIpAddress and customerRouterIpAddress for this attachment. All prefixes must be within link-local address space (169.254.0.0/16) and must be /29 or shorter (/28, /27, etc). Google will attempt to select an unused /29 from the supplied candidate prefix(es). The request will fail if all possible /29s are in use on Google's edge. If not supplied, Google will randomly select an unused /29 from all of link-local space. + repeated string candidate_subnets = 237842938; + + // [Output Only] IPv4 address + prefix length to be configured on Cloud Router Interface for this interconnect attachment. + optional string cloud_router_ip_address = 287392776; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // [Output Only] IPv4 address + prefix length to be configured on the customer router subinterface for this interconnect attachment. + optional string customer_router_ip_address = 332475761; + + // [Output Only] Dataplane version for this InterconnectAttachment. + optional int32 dataplane_version = 34920075; + + // An optional description of this resource. + optional string description = 422937596; + + // Desired availability domain for the attachment. Only available for type PARTNER, at creation time, and can take one of the following values: - AVAILABILITY_DOMAIN_ANY - AVAILABILITY_DOMAIN_1 - AVAILABILITY_DOMAIN_2 For improved reliability, customers should configure a pair of attachments, one per availability domain. The selected availability domain will be provided to the Partner via the pairing key, so that the provisioned circuit will lie in the specified domain. If not specified, the value will default to AVAILABILITY_DOMAIN_ANY. + // Check the EdgeAvailabilityDomain enum for the list of possible values. + optional string edge_availability_domain = 71289510; + + // Indicates the user-supplied encryption option of this VLAN attachment (interconnectAttachment). Can only be specified at attachment creation for PARTNER or DEDICATED attachments. Possible values are: - NONE - This is the default value, which means that the VLAN attachment carries unencrypted traffic. VMs are able to send traffic to, or receive traffic from, such a VLAN attachment. - IPSEC - The VLAN attachment carries only encrypted traffic that is encrypted by an IPsec device, such as an HA VPN gateway or third-party IPsec VPN. VMs cannot directly send traffic to, or receive traffic from, such a VLAN attachment. To use *IPsec-encrypted Cloud Interconnect*, the VLAN attachment must be created with this option. Not currently available publicly. + // Check the Encryption enum for the list of possible values. + optional string encryption = 97980291; + + // [Output Only] Google reference ID, to be used when raising support tickets with Google or otherwise to debug backend connectivity issues. [Deprecated] This field is not used. + optional string google_reference_id = 534944469; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // URL of the underlying Interconnect object that this attachment's traffic will traverse through. + optional string interconnect = 224601230; + + // A list of URLs of addresses that have been reserved for the VLAN attachment. Used only for the VLAN attachment that has the encryption option as IPSEC. The addresses must be regional internal IP address ranges. When creating an HA VPN gateway over the VLAN attachment, if the attachment is configured to use a regional internal IP address, then the VPN gateway's IP address is allocated from the IP address range specified here. For example, if the HA VPN gateway's interface 0 is paired to this VLAN attachment, then a regional internal IP address for the VPN gateway interface 0 will be allocated from the IP address specified for this VLAN attachment. If this field is not specified when creating the VLAN attachment, then later on when creating an HA VPN gateway on this VLAN attachment, the HA VPN gateway's IP address is allocated from the regional external IP address pool. Not currently available publicly. + repeated string ipsec_internal_addresses = 407648565; + + // [Output Only] Type of the resource. Always compute#interconnectAttachment for interconnect attachments. + optional string kind = 3292052; + + // Maximum Transmission Unit (MTU), in bytes, of packets passing through this interconnect attachment. Only 1440 and 1500 are allowed. If not specified, the value will default to 1440. + optional int32 mtu = 108462; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // [Output Only] The current status of whether or not this interconnect attachment is functional, which can take one of the following values: - OS_ACTIVE: The attachment has been turned up and is ready to use. - OS_UNPROVISIONED: The attachment is not ready to use yet, because turnup is not complete. + // Check the OperationalStatus enum for the list of possible values. + optional string operational_status = 201070847; + + // [Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present for DEDICATED]. The opaque identifier of an PARTNER attachment used to initiate provisioning with a selected partner. Of the form "XXXXX/region/domain" + optional string pairing_key = 439695464; + + // Optional BGP ASN for the router supplied by a Layer 3 Partner if they configured BGP on behalf of the customer. Output only for PARTNER type, input only for PARTNER_PROVIDER, not available for DEDICATED. + optional int64 partner_asn = 438166149; + + // Informational metadata about Partner attachments from Partners to display to customers. Output only for for PARTNER type, mutable for PARTNER_PROVIDER, not available for DEDICATED. + optional InterconnectAttachmentPartnerMetadata partner_metadata = 65908934; + + // [Output Only] Information specific to an InterconnectAttachment. This property is populated if the interconnect that this is attached to is of type DEDICATED. + optional InterconnectAttachmentPrivateInfo private_interconnect_info = 237270531; + + // [Output Only] URL of the region where the regional interconnect attachment resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // URL of the Cloud Router to be used for dynamic routing. This router must be in the same region as this InterconnectAttachment. The InterconnectAttachment will automatically connect the Interconnect to the network & region within which the Cloud Router is configured. + optional string router = 148608841; + + // [Output Only] Set to true if the resource satisfies the zone separation organization policy constraints and false otherwise. Defaults to false if the field is not present. + optional bool satisfies_pzs = 480964267; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The current state of this attachment's functionality. Enum values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, PARTNER, and PARTNER_PROVIDER interconnect attachments, while enum values PENDING_PARTNER, PARTNER_REQUEST_RECEIVED, and PENDING_CUSTOMER are used for only PARTNER and PARTNER_PROVIDER interconnect attachments. This state can take one of the following values: - ACTIVE: The attachment has been turned up and is ready to use. - UNPROVISIONED: The attachment is not ready to use yet, because turnup is not complete. - PENDING_PARTNER: A newly-created PARTNER attachment that has not yet been configured on the Partner side. - PARTNER_REQUEST_RECEIVED: A PARTNER attachment is in the process of provisioning after a PARTNER_PROVIDER attachment was created that references it. - PENDING_CUSTOMER: A PARTNER or PARTNER_PROVIDER attachment that is waiting for a customer to activate it. - DEFUNCT: The attachment was deleted externally and is no longer functional. This could be because the associated Interconnect was removed, or because the other side of a Partner attachment was deleted. + // Check the State enum for the list of possible values. + optional string state = 109757585; + + // The type of interconnect attachment this is, which can take one of the following values: - DEDICATED: an attachment to a Dedicated Interconnect. - PARTNER: an attachment to a Partner Interconnect, created by the customer. - PARTNER_PROVIDER: an attachment to a Partner Interconnect, created by the partner. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + + // The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4094. Only specified at creation time. + optional int32 vlan_tag8021q = 119927836; + +} + +// +message InterconnectAttachmentAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InterconnectAttachmentsScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#interconnectAttachmentAggregatedList for aggregated lists of interconnect attachments. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Response to the list request, and contains a list of interconnect attachments. +message InterconnectAttachmentList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InterconnectAttachment resources. + repeated InterconnectAttachment items = 100526016; + + // [Output Only] Type of resource. Always compute#interconnectAttachmentList for lists of interconnect attachments. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Informational metadata about Partner attachments from Partners to display to customers. These fields are propagated from PARTNER_PROVIDER attachments to their corresponding PARTNER attachments. +message InterconnectAttachmentPartnerMetadata { + // Plain text name of the Interconnect this attachment is connected to, as displayed in the Partner's portal. For instance "Chicago 1". This value may be validated to match approved Partner values. + optional string interconnect_name = 514963356; + + // Plain text name of the Partner providing this attachment. This value may be validated to match approved Partner values. + optional string partner_name = 161747874; + + // URL of the Partner's portal for this Attachment. Partners may customise this to be a deep link to the specific resource on the Partner portal. This value may be validated to match approved Partner values. + optional string portal_url = 269182748; + +} + +// Information for an interconnect attachment when this belongs to an interconnect of type DEDICATED. +message InterconnectAttachmentPrivateInfo { + // [Output Only] 802.1q encapsulation tag to be used for traffic between Google and the customer, going to and from this network and region. + optional uint32 tag8021q = 271820992; + +} + +// +message InterconnectAttachmentsScopedList { + // A list of interconnect attachments contained in this scope. + repeated InterconnectAttachment interconnect_attachments = 425388415; + + // Informational warning which replaces the list of addresses when the list is empty. + optional Warning warning = 50704284; + +} + +// Describes a single physical circuit between the Customer and Google. CircuitInfo objects are created by Google, so all fields are output only. +message InterconnectCircuitInfo { + // Customer-side demarc ID for this circuit. + optional string customer_demarc_id = 28771859; + + // Google-assigned unique ID for this circuit. Assigned at circuit turn-up. + optional string google_circuit_id = 262014711; + + // Google-side demarc ID for this circuit. Assigned at circuit turn-up and provided by Google to the customer in the LOA. + optional string google_demarc_id = 448196270; + +} + +// Diagnostics information about interconnect, contains detailed and current technical information about Google's side of the connection. +message InterconnectDiagnostics { + // A list of InterconnectDiagnostics.ARPEntry objects, describing individual neighbors currently seen by the Google router in the ARP cache for the Interconnect. This will be empty when the Interconnect is not bundled. + repeated InterconnectDiagnosticsARPEntry arp_caches = 414591761; + + // A list of InterconnectDiagnostics.LinkStatus objects, describing the status for each link on the Interconnect. + repeated InterconnectDiagnosticsLinkStatus links = 102977465; + + // The MAC address of the Interconnect's bundle interface. + optional string mac_address = 332540164; + +} + +// Describing the ARP neighbor entries seen on this link +message InterconnectDiagnosticsARPEntry { + // The IP address of this ARP neighbor. + optional string ip_address = 406272220; + + // The MAC address of this ARP neighbor. + optional string mac_address = 332540164; + +} + +// +message InterconnectDiagnosticsLinkLACPStatus { + // The state of a LACP link, which can take one of the following values: - ACTIVE: The link is configured and active within the bundle. - DETACHED: The link is not configured within the bundle. This means that the rest of the object should be empty. + enum State { + // A value indicating that the enum field is not set. + UNDEFINED_STATE = 0; + + // The link is configured and active within the bundle. + ACTIVE = 314733318; + + // The link is not configured within the bundle, this means the rest of the object should be empty. + DETACHED = 216562546; + + } + + // System ID of the port on Google's side of the LACP exchange. + optional string google_system_id = 91210405; + + // System ID of the port on the neighbor's side of the LACP exchange. + optional string neighbor_system_id = 343821342; + + // The state of a LACP link, which can take one of the following values: - ACTIVE: The link is configured and active within the bundle. - DETACHED: The link is not configured within the bundle. This means that the rest of the object should be empty. + // Check the State enum for the list of possible values. + optional string state = 109757585; + +} + +// +message InterconnectDiagnosticsLinkOpticalPower { + // The status of the current value when compared to the warning and alarm levels for the receiving or transmitting transceiver. Possible states include: - OK: The value has not crossed a warning threshold. - LOW_WARNING: The value has crossed below the low warning threshold. - HIGH_WARNING: The value has crossed above the high warning threshold. - LOW_ALARM: The value has crossed below the low alarm threshold. - HIGH_ALARM: The value has crossed above the high alarm threshold. + enum State { + // A value indicating that the enum field is not set. + UNDEFINED_STATE = 0; + + // The value has crossed above the high alarm threshold. + HIGH_ALARM = 305363284; + + // The value of the current optical power has crossed above the high warning threshold. + HIGH_WARNING = 220984799; + + // The value of the current optical power has crossed below the low alarm threshold. + LOW_ALARM = 316659046; + + // The value of the current optical power has crossed below the low warning threshold. + LOW_WARNING = 338793841; + + // The value of the current optical power has not crossed a warning threshold. + OK = 2524; + + } + + // The status of the current value when compared to the warning and alarm levels for the receiving or transmitting transceiver. Possible states include: - OK: The value has not crossed a warning threshold. - LOW_WARNING: The value has crossed below the low warning threshold. - HIGH_WARNING: The value has crossed above the high warning threshold. - LOW_ALARM: The value has crossed below the low alarm threshold. - HIGH_ALARM: The value has crossed above the high alarm threshold. + // Check the State enum for the list of possible values. + optional string state = 109757585; + + // Value of the current receiving or transmitting optical power, read in dBm. Take a known good optical value, give it a 10% margin and trigger warnings relative to that value. In general, a -7dBm warning and a -11dBm alarm are good optical value estimates for most links. + optional float value = 111972721; + +} + +// +message InterconnectDiagnosticsLinkStatus { + // A list of InterconnectDiagnostics.ARPEntry objects, describing the ARP neighbor entries seen on this link. This will be empty if the link is bundled + repeated InterconnectDiagnosticsARPEntry arp_caches = 414591761; + + // The unique ID for this link assigned during turn up by Google. + optional string circuit_id = 225180977; + + // The Demarc address assigned by Google and provided in the LoA. + optional string google_demarc = 51084; + + optional InterconnectDiagnosticsLinkLACPStatus lacp_status = 361210415; + + // An InterconnectDiagnostics.LinkOpticalPower object, describing the current value and status of the received light level. + optional InterconnectDiagnosticsLinkOpticalPower receiving_optical_power = 244717279; + + // An InterconnectDiagnostics.LinkOpticalPower object, describing the current value and status of the transmitted light level. + optional InterconnectDiagnosticsLinkOpticalPower transmitting_optical_power = 459431197; + +} + +// Response to the list request, and contains a list of interconnects. +message InterconnectList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Interconnect resources. + repeated Interconnect items = 100526016; + + // [Output Only] Type of resource. Always compute#interconnectList for lists of interconnects. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents an Interconnect Attachment (VLAN) Location resource. You can use this resource to find location details about an Interconnect attachment (VLAN). For more information about interconnect attachments, read Creating VLAN Attachments. +message InterconnectLocation { + // [Output Only] Continent for this location, which can take one of the following values: - AFRICA - ASIA_PAC - EUROPE - NORTH_AMERICA - SOUTH_AMERICA + enum Continent { + // A value indicating that the enum field is not set. + UNDEFINED_CONTINENT = 0; + + AFRICA = 317443706; + + ASIA_PAC = 119782269; + + C_AFRICA = 71993846; + + C_ASIA_PAC = 465668089; + + C_EUROPE = 200369438; + + C_NORTH_AMERICA = 275697048; + + C_SOUTH_AMERICA = 397149792; + + EUROPE = 445819298; + + NORTH_AMERICA = 448015508; + + SOUTH_AMERICA = 32597340; + + } + + // [Output Only] The status of this InterconnectLocation, which can take one of the following values: - CLOSED: The InterconnectLocation is closed and is unavailable for provisioning new Interconnects. - AVAILABLE: The InterconnectLocation is available for provisioning new Interconnects. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // The InterconnectLocation is available for provisioning new Interconnects. + AVAILABLE = 442079913; + + // The InterconnectLocation is closed for provisioning new Interconnects. + CLOSED = 380163436; + + } + + // [Output Only] The postal address of the Point of Presence, each line in the address is separated by a newline character. + optional string address = 462920692; + + // [Output Only] Availability zone for this InterconnectLocation. Within a metropolitan area (metro), maintenance will not be simultaneously scheduled in more than one availability zone. Example: "zone1" or "zone2". + optional string availability_zone = 158459920; + + // [Output Only] Metropolitan area designator that indicates which city an interconnect is located. For example: "Chicago, IL", "Amsterdam, Netherlands". + optional string city = 3053931; + + // [Output Only] Continent for this location, which can take one of the following values: - AFRICA - ASIA_PAC - EUROPE - NORTH_AMERICA - SOUTH_AMERICA + // Check the Continent enum for the list of possible values. + optional string continent = 133442996; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // [Output Only] An optional description of the resource. + optional string description = 422937596; + + // [Output Only] The name of the provider for this facility (e.g., EQUINIX). + optional string facility_provider = 533303309; + + // [Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn-DC1). + optional string facility_provider_facility_id = 87269125; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#interconnectLocation for interconnect locations. + optional string kind = 3292052; + + // [Output Only] Name of the resource. + optional string name = 3373707; + + // [Output Only] The peeringdb identifier for this facility (corresponding with a netfac type in peeringdb). + optional string peeringdb_facility_id = 536567094; + + // [Output Only] A list of InterconnectLocation.RegionInfo objects, that describe parameters pertaining to the relation between this InterconnectLocation and various Google Cloud regions. + repeated InterconnectLocationRegionInfo region_infos = 312194170; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The status of this InterconnectLocation, which can take one of the following values: - CLOSED: The InterconnectLocation is closed and is unavailable for provisioning new Interconnects. - AVAILABLE: The InterconnectLocation is available for provisioning new Interconnects. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // [Output Only] Set to true for locations that support physical zone separation. Defaults to false if the field is not present. + optional bool supports_pzs = 83983214; + +} + +// Response to the list request, and contains a list of interconnect locations. +message InterconnectLocationList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InterconnectLocation resources. + repeated InterconnectLocation items = 100526016; + + // [Output Only] Type of resource. Always compute#interconnectLocationList for lists of interconnect locations. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Information about any potential InterconnectAttachments between an Interconnect at a specific InterconnectLocation, and a specific Cloud Region. +message InterconnectLocationRegionInfo { + // Identifies the network presence of this location. + enum LocationPresence { + // A value indicating that the enum field is not set. + UNDEFINED_LOCATION_PRESENCE = 0; + + // This region is not in any common network presence with this InterconnectLocation. + GLOBAL = 494663587; + + // This region shares the same regional network presence as this InterconnectLocation. + LOCAL_REGION = 403535464; + + // [Deprecated] This region is not in any common network presence with this InterconnectLocation. + LP_GLOBAL = 429584062; + + // [Deprecated] This region shares the same regional network presence as this InterconnectLocation. + LP_LOCAL_REGION = 488598851; + + } + + // Expected round-trip time in milliseconds, from this InterconnectLocation to a VM in this region. + optional int64 expected_rtt_ms = 422543866; + + // Identifies the network presence of this location. + // Check the LocationPresence enum for the list of possible values. + optional string location_presence = 101517893; + + // URL for the region of this location. + optional string region = 138946292; + +} + +// Description of a planned outage on this Interconnect. +message InterconnectOutageNotification { + // Form this outage is expected to take, which can take one of the following values: - OUTAGE: The Interconnect may be completely out of service for some or all of the specified window. - PARTIAL_OUTAGE: Some circuits comprising the Interconnect as a whole should remain up, but with reduced bandwidth. Note that the versions of this enum prefixed with "IT_" have been deprecated in favor of the unprefixed values. + enum IssueType { + // A value indicating that the enum field is not set. + UNDEFINED_ISSUE_TYPE = 0; + + // [Deprecated] The Interconnect may be completely out of service for some or all of the specified window. + IT_OUTAGE = 175779973; + + // [Deprecated] Some circuits comprising the Interconnect will be out of service during the expected window. The interconnect as a whole should remain up, albeit with reduced bandwidth. + IT_PARTIAL_OUTAGE = 92103971; + + // The Interconnect may be completely out of service for some or all of the specified window. + OUTAGE = 195285745; + + // Some circuits comprising the Interconnect will be out of service during the expected window. The interconnect as a whole should remain up, albeit with reduced bandwidth. + PARTIAL_OUTAGE = 147053455; + + } + + // The party that generated this notification, which can take the following value: - GOOGLE: this notification as generated by Google. Note that the value of NSRC_GOOGLE has been deprecated in favor of GOOGLE. + enum Source { + // A value indicating that the enum field is not set. + UNDEFINED_SOURCE = 0; + + // This notification was generated by Google. + GOOGLE = 497439289; + + // [Deprecated] This notification was generated by Google. + NSRC_GOOGLE = 510574562; + + } + + // State of this notification, which can take one of the following values: - ACTIVE: This outage notification is active. The event could be in the past, present, or future. See start_time and end_time for scheduling. - CANCELLED: The outage associated with this notification was cancelled before the outage was due to start. - COMPLETED: The outage associated with this notification is complete. Note that the versions of this enum prefixed with "NS_" have been deprecated in favor of the unprefixed values. + enum State { + // A value indicating that the enum field is not set. + UNDEFINED_STATE = 0; + + // This outage notification is active. The event could be in the future, present, or past. See start_time and end_time for scheduling. + ACTIVE = 314733318; + + // The outage associated with this notification was cancelled before the outage was due to start. + CANCELLED = 41957681; + + // The outage associated with this notification is complete. + COMPLETED = 309921323; + + // [Deprecated] This outage notification is active. The event could be in the future, present, or past. See start_time and end_time for scheduling. + NS_ACTIVE = 252563136; + + // [Deprecated] The outage associated with this notification was canceled before the outage was due to start. + NS_CANCELED = 506579411; + + } + + // If issue_type is IT_PARTIAL_OUTAGE, a list of the Google-side circuit IDs that will be affected. + repeated string affected_circuits = 177717013; + + // A description about the purpose of the outage. + optional string description = 422937596; + + // Scheduled end time for the outage (milliseconds since Unix epoch). + optional int64 end_time = 114938801; + + // Form this outage is expected to take, which can take one of the following values: - OUTAGE: The Interconnect may be completely out of service for some or all of the specified window. - PARTIAL_OUTAGE: Some circuits comprising the Interconnect as a whole should remain up, but with reduced bandwidth. Note that the versions of this enum prefixed with "IT_" have been deprecated in favor of the unprefixed values. + // Check the IssueType enum for the list of possible values. + optional string issue_type = 369639136; + + // Unique identifier for this outage notification. + optional string name = 3373707; + + // The party that generated this notification, which can take the following value: - GOOGLE: this notification as generated by Google. Note that the value of NSRC_GOOGLE has been deprecated in favor of GOOGLE. + // Check the Source enum for the list of possible values. + optional string source = 177235995; + + // Scheduled start time for the outage (milliseconds since Unix epoch). + optional int64 start_time = 37467274; + + // State of this notification, which can take one of the following values: - ACTIVE: This outage notification is active. The event could be in the past, present, or future. See start_time and end_time for scheduling. - CANCELLED: The outage associated with this notification was cancelled before the outage was due to start. - COMPLETED: The outage associated with this notification is complete. Note that the versions of this enum prefixed with "NS_" have been deprecated in favor of the unprefixed values. + // Check the State enum for the list of possible values. + optional string state = 109757585; + +} + +// Response for the InterconnectsGetDiagnosticsRequest. +message InterconnectsGetDiagnosticsResponse { + optional InterconnectDiagnostics result = 139315229; + +} + +// A request message for UrlMaps.InvalidateCache. See the method description for details. +message InvalidateCacheUrlMapRequest { + // The body resource for this request + CacheInvalidationRule cache_invalidation_rule_resource = 312795565 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the UrlMap scoping this request. + string url_map = 367020684 [(google.api.field_behavior) = REQUIRED]; + +} + +// Metadata +message Items { + // Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project. + optional string key = 106079; + + // Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 262144 bytes (256 KiB). + optional string value = 111972721; + +} + +// Represents a License resource. A License represents billing and aggregate usage data for public and marketplace images. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. +message License { + // [Output Only] Deprecated. This field no longer reflects whether a license charges a usage fee. + optional bool charges_use_fee = 372412622; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional textual description of the resource; provided by the client when the resource is created. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of resource. Always compute#license for licenses. + optional string kind = 3292052; + + // [Output Only] The unique code used to attach this license to images, snapshots, and disks. + optional uint64 license_code = 1467179; + + // Name of the resource. The name must be 1-63 characters long and comply with RFC1035. + optional string name = 3373707; + + optional LicenseResourceRequirements resource_requirements = 214292769; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // If false, licenses will not be copied from the source resource when creating an image from a disk, disk from snapshot, or snapshot from disk. + optional bool transferable = 4349893; + +} + +// Represents a License Code resource. A License Code is a unique identifier used to represent a license resource. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. +message LicenseCode { + // [Output Only] Current state of this License Code. + enum State { + // A value indicating that the enum field is not set. + UNDEFINED_STATE = 0; + + // Machines are not allowed to attach boot disks with this License Code. Requests to create new resources with this license will be rejected. + DISABLED = 516696700; + + // Use is allowed for anyone with USE_READ_ONLY access to this License Code. + ENABLED = 182130465; + + // Use of this license is limited to a project whitelist. + RESTRICTED = 261551195; + + STATE_UNSPECIFIED = 470755401; + + // Reserved state. + TERMINATED = 250018339; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // [Output Only] Description of this License Code. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of resource. Always compute#licenseCode for licenses. + optional string kind = 3292052; + + // [Output Only] URL and description aliases of Licenses with the same License Code. + repeated LicenseCodeLicenseAlias license_alias = 43550930; + + // [Output Only] Name of the resource. The name is 1-20 characters long and must be a valid 64 bit integer. + optional string name = 3373707; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] Current state of this License Code. + // Check the State enum for the list of possible values. + optional string state = 109757585; + + // [Output Only] If true, the license will remain attached when creating images or snapshots from disks. Otherwise, the license is not transferred. + optional bool transferable = 4349893; + +} + +// +message LicenseCodeLicenseAlias { + // [Output Only] Description of this License Code. + optional string description = 422937596; + + // [Output Only] URL of license corresponding to this License Code. + optional string self_link = 456214797; + +} + +// Commitment for a particular license resource. +message LicenseResourceCommitment { + // The number of licenses purchased. + optional int64 amount = 196759640; + + // Specifies the core range of the instance for which this license applies. + optional string cores_per_license = 32482324; + + // Any applicable license URI. + optional string license = 166757441; + +} + +// +message LicenseResourceRequirements { + // Minimum number of guest cpus required to use the Instance. Enforced at Instance creation and Instance start. + optional int32 min_guest_cpu_count = 477964836; + + // Minimum memory required to use the Instance. Enforced at Instance creation and Instance start. + optional int32 min_memory_mb = 504785894; + +} + +// +message LicensesListResponse { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of License resources. + repeated License items = 100526016; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// A request message for AcceleratorTypes.List. See the method description for details. +message ListAcceleratorTypesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Addresses.List. See the method description for details. +message ListAddressesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for FirewallPolicies.ListAssociations. See the method description for details. +message ListAssociationsFirewallPolicyRequest { + // The target resource to list associations. It is an organization, or a folder. + optional string target_resource = 467318524; + +} + +// A request message for Autoscalers.List. See the method description for details. +message ListAutoscalersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // Name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SslPolicies.ListAvailableFeatures. See the method description for details. +message ListAvailableFeaturesSslPoliciesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for BackendBuckets.List. See the method description for details. +message ListBackendBucketsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for BackendServices.List. See the method description for details. +message ListBackendServicesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for DiskTypes.List. See the method description for details. +message ListDiskTypesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Disks.List. See the method description for details. +message ListDisksRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceGroupManagers.ListErrors. See the method description for details. +message ListErrorsInstanceGroupManagersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The name of the managed instance group. It must be a string that meets the requirements in RFC1035, or an unsigned long integer: must match regexp pattern: (?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)|1-9{0,19}. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone where the managed instance group is located. It should conform to RFC1035. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionInstanceGroupManagers.ListErrors. See the method description for details. +message ListErrorsRegionInstanceGroupManagersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The name of the managed instance group. It must be a string that meets the requirements in RFC1035, or an unsigned long integer: must match regexp pattern: (?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)|1-9{0,19}. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. This should conform to RFC1035. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for ExternalVpnGateways.List. See the method description for details. +message ListExternalVpnGatewaysRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for FirewallPolicies.List. See the method description for details. +message ListFirewallPoliciesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Parent ID for this request. + optional string parent_id = 459714768; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Firewalls.List. See the method description for details. +message ListFirewallsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for ForwardingRules.List. See the method description for details. +message ListForwardingRulesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for GlobalAddresses.List. See the method description for details. +message ListGlobalAddressesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for GlobalForwardingRules.List. See the method description for details. +message ListGlobalForwardingRulesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for GlobalNetworkEndpointGroups.List. See the method description for details. +message ListGlobalNetworkEndpointGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for GlobalOperations.List. See the method description for details. +message ListGlobalOperationsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for GlobalOrganizationOperations.List. See the method description for details. +message ListGlobalOrganizationOperationsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Parent ID for this request. + optional string parent_id = 459714768; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for GlobalPublicDelegatedPrefixes.List. See the method description for details. +message ListGlobalPublicDelegatedPrefixesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for HealthChecks.List. See the method description for details. +message ListHealthChecksRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Images.List. See the method description for details. +message ListImagesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for InstanceGroupManagers.List. See the method description for details. +message ListInstanceGroupManagersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone where the managed instance group is located. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceGroups.List. See the method description for details. +message ListInstanceGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone where the instance group is located. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceTemplates.List. See the method description for details. +message ListInstanceTemplatesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for InstanceGroups.ListInstances. See the method description for details. +message ListInstancesInstanceGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The name of the instance group from which you want to generate a list of included instances. + string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupsListInstancesRequest instance_groups_list_instances_request_resource = 476255263 [(google.api.field_behavior) = REQUIRED]; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone where the instance group is located. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionInstanceGroups.ListInstances. See the method description for details. +message ListInstancesRegionInstanceGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Name of the regional instance group for which we want to list the instances. + string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + RegionInstanceGroupsListInstancesRequest region_instance_groups_list_instances_request_resource = 48239828 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Instances.List. See the method description for details. +message ListInstancesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InterconnectAttachments.List. See the method description for details. +message ListInterconnectAttachmentsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for InterconnectLocations.List. See the method description for details. +message ListInterconnectLocationsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Interconnects.List. See the method description for details. +message ListInterconnectsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Licenses.List. See the method description for details. +message ListLicensesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for MachineTypes.List. See the method description for details. +message ListMachineTypesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceGroupManagers.ListManagedInstances. See the method description for details. +message ListManagedInstancesInstanceGroupManagersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone where the managed instance group is located. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionInstanceGroupManagers.ListManagedInstances. See the method description for details. +message ListManagedInstancesRegionInstanceGroupManagersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for NetworkEndpointGroups.List. See the method description for details. +message ListNetworkEndpointGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone where the network endpoint group is located. It should comply with RFC1035. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for GlobalNetworkEndpointGroups.ListNetworkEndpoints. See the method description for details. +message ListNetworkEndpointsGlobalNetworkEndpointGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // The name of the network endpoint group from which you want to generate a list of included network endpoints. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for NetworkEndpointGroups.ListNetworkEndpoints. See the method description for details. +message ListNetworkEndpointsNetworkEndpointGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // The name of the network endpoint group from which you want to generate a list of included network endpoints. It should comply with RFC1035. + string network_endpoint_group = 433907078 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NetworkEndpointGroupsListEndpointsRequest network_endpoint_groups_list_endpoints_request_resource = 59493390 [(google.api.field_behavior) = REQUIRED]; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone where the network endpoint group is located. It should comply with RFC1035. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Networks.List. See the method description for details. +message ListNetworksRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for NodeGroups.List. See the method description for details. +message ListNodeGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NodeTemplates.List. See the method description for details. +message ListNodeTemplatesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for NodeTypes.List. See the method description for details. +message ListNodeTypesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NodeGroups.ListNodes. See the method description for details. +message ListNodesNodeGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Name of the NodeGroup resource whose nodes you want to list. + string node_group = 469958146 [(google.api.field_behavior) = REQUIRED]; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for PacketMirrorings.List. See the method description for details. +message ListPacketMirroringsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Networks.ListPeeringRoutes. See the method description for details. +message ListPeeringRoutesNetworksRequest { + // The direction of the exchanged routes. + enum Direction { + // A value indicating that the enum field is not set. + UNDEFINED_DIRECTION = 0; + + // For routes exported from peer network. + INCOMING = 338552870; + + // For routes exported from local network. + OUTGOING = 307438444; + + } + + // The direction of the exchanged routes. + // Check the Direction enum for the list of possible values. + optional string direction = 111150975; + + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Name of the network for this request. + string network = 232872494 [(google.api.field_behavior) = REQUIRED]; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // The response will show routes exchanged over the given peering connection. + optional string peering_name = 249571370; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The region of the request. The response will include all subnet routes, static routes and dynamic routes in the region. + optional string region = 138946292; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for InstanceGroupManagers.ListPerInstanceConfigs. See the method description for details. +message ListPerInstanceConfigsInstanceGroupManagersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The name of the managed instance group. It should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone where the managed instance group is located. It should conform to RFC1035. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionInstanceGroupManagers.ListPerInstanceConfigs. See the method description for details. +message ListPerInstanceConfigsRegionInstanceGroupManagersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The name of the managed instance group. It should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request, should conform to RFC1035. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for SecurityPolicies.ListPreconfiguredExpressionSets. See the method description for details. +message ListPreconfiguredExpressionSetsSecurityPoliciesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for PublicAdvertisedPrefixes.List. See the method description for details. +message ListPublicAdvertisedPrefixesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for PublicDelegatedPrefixes.List. See the method description for details. +message ListPublicDelegatedPrefixesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region of this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Instances.ListReferrers. See the method description for details. +message ListReferrersInstancesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Name of the target instance scoping this request, or '-' if the request should span over all instances in the container. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionAutoscalers.List. See the method description for details. +message ListRegionAutoscalersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionBackendServices.List. See the method description for details. +message ListRegionBackendServicesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionCommitments.List. See the method description for details. +message ListRegionCommitmentsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionDiskTypes.List. See the method description for details. +message ListRegionDiskTypesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionDisks.List. See the method description for details. +message ListRegionDisksRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionHealthCheckServices.List. See the method description for details. +message ListRegionHealthCheckServicesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionHealthChecks.List. See the method description for details. +message ListRegionHealthChecksRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionInstanceGroupManagers.List. See the method description for details. +message ListRegionInstanceGroupManagersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionInstanceGroups.List. See the method description for details. +message ListRegionInstanceGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionNetworkEndpointGroups.List. See the method description for details. +message ListRegionNetworkEndpointGroupsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region where the network endpoint group is located. It should comply with RFC1035. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionNotificationEndpoints.List. See the method description for details. +message ListRegionNotificationEndpointsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionOperations.List. See the method description for details. +message ListRegionOperationsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionSslCertificates.List. See the method description for details. +message ListRegionSslCertificatesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionTargetHttpProxies.List. See the method description for details. +message ListRegionTargetHttpProxiesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionTargetHttpsProxies.List. See the method description for details. +message ListRegionTargetHttpsProxiesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for RegionUrlMaps.List. See the method description for details. +message ListRegionUrlMapsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Regions.List. See the method description for details. +message ListRegionsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Reservations.List. See the method description for details. +message ListReservationsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // Name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ResourcePolicies.List. See the method description for details. +message ListResourcePoliciesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Routers.List. See the method description for details. +message ListRoutersRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Routes.List. See the method description for details. +message ListRoutesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for SecurityPolicies.List. See the method description for details. +message ListSecurityPoliciesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for ServiceAttachments.List. See the method description for details. +message ListServiceAttachmentsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region of this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Snapshots.List. See the method description for details. +message ListSnapshotsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for SslCertificates.List. See the method description for details. +message ListSslCertificatesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for SslPolicies.List. See the method description for details. +message ListSslPoliciesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Subnetworks.List. See the method description for details. +message ListSubnetworksRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetGrpcProxies.List. See the method description for details. +message ListTargetGrpcProxiesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetHttpProxies.List. See the method description for details. +message ListTargetHttpProxiesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetHttpsProxies.List. See the method description for details. +message ListTargetHttpsProxiesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetInstances.List. See the method description for details. +message ListTargetInstancesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // Name of the zone scoping this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetPools.List. See the method description for details. +message ListTargetPoolsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetSslProxies.List. See the method description for details. +message ListTargetSslProxiesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetTcpProxies.List. See the method description for details. +message ListTargetTcpProxiesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for TargetVpnGateways.List. See the method description for details. +message ListTargetVpnGatewaysRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for UrlMaps.List. See the method description for details. +message ListUrlMapsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Subnetworks.ListUsable. See the method description for details. +message ListUsableSubnetworksRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for VpnGateways.List. See the method description for details. +message ListVpnGatewaysRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for VpnTunnels.List. See the method description for details. +message ListVpnTunnelsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for Projects.ListXpnHosts. See the method description for details. +message ListXpnHostsProjectsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + ProjectsListXpnHostsRequest projects_list_xpn_hosts_request_resource = 238266391 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// A request message for ZoneOperations.List. See the method description for details. +message ListZoneOperationsRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + + // Name of the zone for request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Zones.List. See the method description for details. +message ListZonesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Opt-in for partial success behavior which provides partial results in case of failure. The default value is false. + optional bool return_partial_success = 517198390; + +} + +// +message LocalDisk { + // Specifies the number of such disks. + optional int32 disk_count = 182933485; + + // Specifies the size of the disk in base-2 GB. + optional int32 disk_size_gb = 316263735; + + // Specifies the desired disk type on the node. This disk type must be a local storage type (e.g.: local-ssd). Note that for nodeTemplates, this should be the name of the disk type and not its URL. + optional string disk_type = 93009052; + +} + +// Configuration for location policy among multiple possible locations (e.g. preferences for zone selection among zones in a single region). +message LocationPolicy { + // Location configurations mapped by location name. Currently only zone names are supported and must be represented as valid internal URLs, such as zones/us-central1-a. + map locations = 413423454; + +} + +// +message LocationPolicyLocation { + // Preference for a given location: ALLOW or DENY. + enum Preference { + // A value indicating that the enum field is not set. + UNDEFINED_PREFERENCE = 0; + + // Location is allowed for use. + ALLOW = 62368553; + + // Location is prohibited. + DENY = 2094604; + + // Default value, unused. + PREFERENCE_UNSPECIFIED = 496219571; + + } + + // Preference for a given location: ALLOW or DENY. + // Check the Preference enum for the list of possible values. + optional string preference = 150781147; + +} + +// This is deprecated and has no effect. Do not use. +message LogConfig { + // This is deprecated and has no effect. Do not use. + optional LogConfigCloudAuditOptions cloud_audit = 412852561; + + // This is deprecated and has no effect. Do not use. + optional LogConfigCounterOptions counter = 420959740; + + // This is deprecated and has no effect. Do not use. + optional LogConfigDataAccessOptions data_access = 286633881; + +} + +// This is deprecated and has no effect. Do not use. +message LogConfigCloudAuditOptions { + // This is deprecated and has no effect. Do not use. + enum LogName { + // A value indicating that the enum field is not set. + UNDEFINED_LOG_NAME = 0; + + // This is deprecated and has no effect. Do not use. + ADMIN_ACTIVITY = 427503135; + + // This is deprecated and has no effect. Do not use. + DATA_ACCESS = 238070681; + + // This is deprecated and has no effect. Do not use. + UNSPECIFIED_LOG_NAME = 410515182; + + } + + // This is deprecated and has no effect. Do not use. + optional AuthorizationLoggingOptions authorization_logging_options = 217861624; + + // This is deprecated and has no effect. Do not use. + // Check the LogName enum for the list of possible values. + optional string log_name = 402913958; + +} + +// This is deprecated and has no effect. Do not use. +message LogConfigCounterOptions { + // This is deprecated and has no effect. Do not use. + repeated LogConfigCounterOptionsCustomField custom_fields = 249651015; + + // This is deprecated and has no effect. Do not use. + optional string field = 97427706; + + // This is deprecated and has no effect. Do not use. + optional string metric = 533067184; + +} + +// This is deprecated and has no effect. Do not use. +message LogConfigCounterOptionsCustomField { + // This is deprecated and has no effect. Do not use. + optional string name = 3373707; + + // This is deprecated and has no effect. Do not use. + optional string value = 111972721; + +} + +// This is deprecated and has no effect. Do not use. +message LogConfigDataAccessOptions { + // This is deprecated and has no effect. Do not use. + enum LogMode { + // A value indicating that the enum field is not set. + UNDEFINED_LOG_MODE = 0; + + // This is deprecated and has no effect. Do not use. + LOG_FAIL_CLOSED = 360469778; + + // This is deprecated and has no effect. Do not use. + LOG_MODE_UNSPECIFIED = 88160822; + + } + + // This is deprecated and has no effect. Do not use. + // Check the LogMode enum for the list of possible values. + optional string log_mode = 402897342; + +} + +// Represents a Machine Type resource. You can use specific machine types for your VM instances based on performance and pricing requirements. For more information, read Machine Types. +message MachineType { + // [Output Only] A list of accelerator configurations assigned to this machine type. + repeated Accelerators accelerators = 269577064; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // [Output Only] The deprecation status associated with this machine type. Only applicable if the machine type is unavailable. + optional DeprecationStatus deprecated = 515138995; + + // [Output Only] An optional textual description of the resource. + optional string description = 422937596; + + // [Output Only] The number of virtual CPUs that are available to the instance. + optional int32 guest_cpus = 393356754; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Deprecated] This property is deprecated and will never be populated with any relevant values. + optional int32 image_space_gb = 75331864; + + // [Output Only] Whether this machine type has a shared CPU. See Shared-core machine types for more information. + optional bool is_shared_cpu = 521399555; + + // [Output Only] The type of the resource. Always compute#machineType for machine types. + optional string kind = 3292052; + + // [Output Only] Maximum persistent disks allowed. + optional int32 maximum_persistent_disks = 496220941; + + // [Output Only] Maximum total persistent disks size (GB) allowed. + optional int64 maximum_persistent_disks_size_gb = 154274471; + + // [Output Only] The amount of physical memory available to the instance, defined in MB. + optional int32 memory_mb = 116001171; + + // [Output Only] Name of the resource. + optional string name = 3373707; + + // [Output Only] A list of extended scratch disks assigned to the instance. + repeated ScratchDisks scratch_disks = 480778481; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The name of the zone where the machine type resides, such as us-central1-a. + optional string zone = 3744684; + +} + +// +message MachineTypeAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of MachineTypesScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#machineTypeAggregatedList for aggregated lists of machine types. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of machine types. +message MachineTypeList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of MachineType resources. + repeated MachineType items = 100526016; + + // [Output Only] Type of resource. Always compute#machineTypeList for lists of machine types. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message MachineTypesScopedList { + // [Output Only] A list of machine types contained in this scope. + repeated MachineType machine_types = 79720065; + + // [Output Only] An informational warning that appears when the machine types list is empty. + optional Warning warning = 50704284; + +} + +// A Managed Instance resource. +message ManagedInstance { + // [Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: - NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. - CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. - CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. - RECREATING The managed instance group is recreating this instance. - DELETING The managed instance group is permanently deleting this instance. - ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. - RESTARTING The managed instance group is restarting the instance. - REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance. - VERIFYING The managed instance group has created the instance and it is in the process of being verified. + enum CurrentAction { + // A value indicating that the enum field is not set. + UNDEFINED_CURRENT_ACTION = 0; + + // The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. + ABANDONING = 388244813; + + // The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. + CREATING = 455564985; + + // The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased. + CREATING_WITHOUT_RETRIES = 428843785; + + // The managed instance group is permanently deleting this instance. + DELETING = 528602024; + + // The managed instance group has not scheduled any actions for this instance. + NONE = 2402104; + + // The managed instance group is recreating this instance. + RECREATING = 287278572; + + // The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance. + REFRESHING = 163266343; + + // The managed instance group is restarting this instance. + RESTARTING = 320534387; + + // The managed instance group is verifying this already created instance. Verification happens every time the instance is (re)created or restarted and consists of: 1. Waiting until health check specified as part of this managed instance group's autohealing policy reports HEALTHY. Note: Applies only if autohealing policy has a health check specified 2. Waiting for addition verification steps performed as post-instance creation (subject to future extensions). + VERIFYING = 16982185; + + } + + // [Output Only] The status of the instance. This field is empty when the instance does not exist. + enum InstanceStatus { + // A value indicating that the enum field is not set. + UNDEFINED_INSTANCE_STATUS = 0; + + // The Nanny is halted and we are performing tear down tasks like network deprogramming, releasing quota, IP, tearing down disks etc. + DEPROVISIONING = 428935662; + + // Resources are being allocated for the instance. + PROVISIONING = 290896621; + + // The instance is in repair. + REPAIRING = 413483285; + + // The instance is running. + RUNNING = 121282975; + + // All required resources have been allocated and the instance is being started. + STAGING = 431072283; + + // The instance has stopped successfully. + STOPPED = 444276141; + + // The instance is currently stopping (either being deleted or killed). + STOPPING = 350791796; + + // The instance has suspended. + SUSPENDED = 51223995; + + // The instance is suspending. + SUSPENDING = 514206246; + + // The instance has stopped (either by explicit action or underlying failure). + TERMINATED = 250018339; + + } + + // [Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: - NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. - CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. - CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. - RECREATING The managed instance group is recreating this instance. - DELETING The managed instance group is permanently deleting this instance. - ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. - RESTARTING The managed instance group is restarting the instance. - REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance. - VERIFYING The managed instance group has created the instance and it is in the process of being verified. + // Check the CurrentAction enum for the list of possible values. + optional string current_action = 178475964; + + // [Output only] The unique identifier for this resource. This field is empty when instance does not exist. + optional uint64 id = 3355; + + // [Output Only] The URL of the instance. The URL can exist even if the instance has not yet been created. + optional string instance = 18257045; + + // [Output Only] Health state of the instance per health-check. + repeated ManagedInstanceInstanceHealth instance_health = 382667078; + + // [Output Only] The status of the instance. This field is empty when the instance does not exist. + // Check the InstanceStatus enum for the list of possible values. + optional string instance_status = 174577372; + + // [Output Only] Information about the last attempt to create or delete the instance. + optional ManagedInstanceLastAttempt last_attempt = 434771492; + + // [Output Only] Preserved state applied from per-instance config for this instance. + optional PreservedState preserved_state_from_config = 98661858; + + // [Output Only] Preserved state generated based on stateful policy for this instance. + optional PreservedState preserved_state_from_policy = 470783954; + + // [Output Only] Intended version of this instance. + optional ManagedInstanceVersion version = 351608024; + +} + +// +message ManagedInstanceInstanceHealth { + // [Output Only] The current detailed instance health state. + enum DetailedHealthState { + // A value indicating that the enum field is not set. + UNDEFINED_DETAILED_HEALTH_STATE = 0; + + // The instance is being drained. The existing connections to the instance have time to complete, but the new ones are being refused. + DRAINING = 480455402; + + // The instance is reachable i.e. a connection to the application health checking endpoint can be established, and conforms to the requirements defined by the health check. + HEALTHY = 439801213; + + // The instance is unreachable i.e. a connection to the application health checking endpoint cannot be established, or the server does not respond within the specified timeout. + TIMEOUT = 477813057; + + // The instance is reachable, but does not conform to the requirements defined by the health check. + UNHEALTHY = 462118084; + + // The health checking system is aware of the instance but its health is not known at the moment. + UNKNOWN = 433141802; + + } + + // [Output Only] The current detailed instance health state. + // Check the DetailedHealthState enum for the list of possible values. + optional string detailed_health_state = 510470173; + + // [Output Only] The URL for the health check that verifies whether the instance is healthy. + optional string health_check = 308876645; + +} + +// +message ManagedInstanceLastAttempt { + // [Output Only] Encountered errors during the last attempt to create or delete the instance. + optional Errors errors = 315977579; + +} + +// +message ManagedInstanceVersion { + // [Output Only] The intended template of the instance. This field is empty when current_action is one of { DELETING, ABANDONING }. + optional string instance_template = 309248228; + + // [Output Only] Name of the version. + optional string name = 3373707; + +} + +// A metadata key/value entry. +message Metadata { + // Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the resource. + optional string fingerprint = 234678500; + + // Array of key/value pairs. The total size of all keys and values must be less than 512 KB. + repeated Items items = 100526016; + + // [Output Only] Type of the resource. Always compute#metadata for metadata. + optional string kind = 3292052; + +} + +// Opaque filter criteria used by loadbalancers to restrict routing configuration to a limited set of loadbalancing proxies. Proxies and sidecars involved in loadbalancing would typically present metadata to the loadbalancers which need to match criteria specified here. If a match takes place, the relevant configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. An example for using metadataFilters would be: if loadbalancing involves Envoys, they will only receive routing configuration when values in metadataFilters match values supplied in of their XDS requests to loadbalancers. +message MetadataFilter { + // Specifies how individual filterLabel matches within the list of filterLabels contribute towards the overall metadataFilter match. Supported values are: - MATCH_ANY: At least one of the filterLabels must have a matching label in the provided metadata. - MATCH_ALL: All filterLabels must have matching labels in the provided metadata. + enum FilterMatchCriteria { + // A value indicating that the enum field is not set. + UNDEFINED_FILTER_MATCH_CRITERIA = 0; + + // Specifies that all filterLabels must match for the metadataFilter to be considered a match. + MATCH_ALL = 180663271; + + // Specifies that any filterLabel must match for the metadataFilter to be considered a match. + MATCH_ANY = 180663346; + + // Indicates that the match criteria was not set. A metadataFilter must never be created with this value. + NOT_SET = 163646646; + + } + + // The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list must not be empty and can have at the most 64 entries. + repeated MetadataFilterLabelMatch filter_labels = 307903142; + + // Specifies how individual filterLabel matches within the list of filterLabels contribute towards the overall metadataFilter match. Supported values are: - MATCH_ANY: At least one of the filterLabels must have a matching label in the provided metadata. - MATCH_ALL: All filterLabels must have matching labels in the provided metadata. + // Check the FilterMatchCriteria enum for the list of possible values. + optional string filter_match_criteria = 239970368; + +} + +// MetadataFilter label name value pairs that are expected to match corresponding labels presented as metadata to the loadbalancer. +message MetadataFilterLabelMatch { + // Name of metadata label. The name can have a maximum length of 1024 characters and must be at least 1 character long. + optional string name = 3373707; + + // The value of the label must match the specified value. value can have a maximum length of 1024 characters. + optional string value = 111972721; + +} + +// A request message for Projects.MoveDisk. See the method description for details. +message MoveDiskProjectRequest { + // The body resource for this request + DiskMoveRequest disk_move_request_resource = 313008458 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for FirewallPolicies.Move. See the method description for details. +message MoveFirewallPolicyRequest { + // Name of the firewall policy to update. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + + // The new parent of the firewall policy. + string parent_id = 459714768 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "parent_id" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Projects.MoveInstance. See the method description for details. +message MoveInstanceProjectRequest { + // The body resource for this request + InstanceMoveRequest instance_move_request_resource = 311664194 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// The named port. For example: <"http", 80>. +message NamedPort { + // The name for this named port. The name must be 1-63 characters long, and comply with RFC1035. + optional string name = 3373707; + + // The port number, which can be a value between 1 and 65535. + optional int32 port = 3446913; + +} + +// Represents a VPC Network resource. Networks connect resources to each other and to the internet. For more information, read Virtual Private Cloud (VPC) Network. +message Network { + // Deprecated in favor of subnet mode networks. The range of internal addresses that are legal on this network. This range is a CIDR specification, for example: 192.168.0.0/16. Provided by the client when the network is created. + optional string I_pv4_range = 59234358; + + // Must be set to create a VPC network. If not set, a legacy network is created. When set to true, the VPC network is created in auto mode. When set to false, the VPC network is created in custom mode. An auto mode VPC network starts with one subnet per region. Each subnet has a predetermined range as described in Auto mode VPC network IP ranges. For custom mode VPC networks, you can add subnets using the subnetworks insert method. + optional bool auto_create_subnetworks = 256156690; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this field when you create the resource. + optional string description = 422937596; + + // [Output Only] The gateway address for default routing out of the network, selected by GCP. + optional string gateway_i_pv4 = 178678877; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#network for networks. + optional string kind = 3292052; + + // Maximum Transmission Unit in bytes. The minimum value for this field is 1460 and the maximum value is 1500 bytes. If unspecified, defaults to 1460. + optional int32 mtu = 108462; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all following characters (except for the last character) must be a dash, lowercase letter, or digit. The last character must be a lowercase letter or digit. + optional string name = 3373707; + + // [Output Only] A list of network peerings for the resource. + repeated NetworkPeering peerings = 69883187; + + // The network-level routing configuration for this network. Used by Cloud Router to determine what type of network-wide routing behavior to enforce. + optional NetworkRoutingConfig routing_config = 523556059; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] Server-defined fully-qualified URLs for all subnetworks in this VPC network. + repeated string subnetworks = 415853125; + +} + +// The network endpoint. +message NetworkEndpoint { + // Metadata defined as annotations on the network endpoint. + map annotations = 112032548; + + // Optional fully qualified domain name of network endpoint. This can only be specified when NetworkEndpointGroup.network_endpoint_type is NON_GCP_FQDN_PORT. + optional string fqdn = 3150485; + + // The name for a specific VM instance that the IP address belongs to. This is required for network endpoints of type GCE_VM_IP_PORT. The instance must be in the same zone of network endpoint group. The name must be 1-63 characters long, and comply with RFC1035. + optional string instance = 18257045; + + // Optional IPv4 address of network endpoint. The IP address must belong to a VM in Compute Engine (either the primary IP or as part of an aliased IP range). If the IP address is not specified, then the primary IP address for the VM instance in the network that the network endpoint group belongs to will be used. + optional string ip_address = 406272220; + + // Optional port number of network endpoint. If not specified, the defaultPort for the network endpoint group will be used. + optional int32 port = 3446913; + +} + +// Represents a collection of network endpoints. A network endpoint group (NEG) defines how a set of endpoints should be reached, whether they are reachable, and where they are located. For more information about using NEGs, see Setting up external HTTP(S) Load Balancing with internet NEGs, Setting up zonal NEGs, or Setting up external HTTP(S) Load Balancing with serverless NEGs. +message NetworkEndpointGroup { + // Type of network endpoints in this network endpoint group. Can be one of GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT, SERVERLESS, PRIVATE_SERVICE_CONNECT. + enum NetworkEndpointType { + // A value indicating that the enum field is not set. + UNDEFINED_NETWORK_ENDPOINT_TYPE = 0; + + // The network endpoint is represented by an IP address. + GCE_VM_IP = 401880793; + + // The network endpoint is represented by IP address and port pair. + GCE_VM_IP_PORT = 501838375; + + // The network endpoint is represented by fully qualified domain name and port. + INTERNET_FQDN_PORT = 404154477; + + // The network endpoint is represented by an internet IP address and port. + INTERNET_IP_PORT = 477719963; + + // The network endpoint is represented by an IP address and port. The endpoint belongs to a VM or pod running in a customer's on-premises. + NON_GCP_PRIVATE_IP_PORT = 336447968; + + // The network endpoint is handled by specified serverless infrastructure. + SERVERLESS = 270492508; + + } + + // Metadata defined as annotations on the network endpoint group. + map annotations = 112032548; + + // Only valid when networkEndpointType is "SERVERLESS". Only one of cloudRun, appEngine or cloudFunction may be set. + optional NetworkEndpointGroupAppEngine app_engine = 340788768; + + // Only valid when networkEndpointType is "SERVERLESS". Only one of cloudRun, appEngine or cloudFunction may be set. + optional NetworkEndpointGroupCloudFunction cloud_function = 519893666; + + // Only valid when networkEndpointType is "SERVERLESS". Only one of cloudRun, appEngine or cloudFunction may be set. + optional NetworkEndpointGroupCloudRun cloud_run = 111060353; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // The default port used if the port number is not specified in the network endpoint. + optional int32 default_port = 423377855; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#networkEndpointGroup for network endpoint group. + optional string kind = 3292052; + + // Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // The URL of the network to which all network endpoints in the NEG belong. Uses "default" project network if unspecified. + optional string network = 232872494; + + // Type of network endpoints in this network endpoint group. Can be one of GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT, SERVERLESS, PRIVATE_SERVICE_CONNECT. + // Check the NetworkEndpointType enum for the list of possible values. + optional string network_endpoint_type = 118301523; + + // [Output Only] The URL of the region where the network endpoint group is located. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output only] Number of network endpoints in the network endpoint group. + optional int32 size = 3530753; + + // Optional URL of the subnetwork to which all network endpoints in the NEG belong. + optional string subnetwork = 307827694; + + // [Output Only] The URL of the zone where the network endpoint group is located. + optional string zone = 3744684; + +} + +// +message NetworkEndpointGroupAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of NetworkEndpointGroupsScopedList resources. + map items = 100526016; + + // [Output Only] The resource type, which is always compute#networkEndpointGroupAggregatedList for aggregated lists of network endpoint groups. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Configuration for an App Engine network endpoint group (NEG). The service is optional, may be provided explicitly or in the URL mask. The version is optional and can only be provided explicitly or in the URL mask when service is present. Note: App Engine service must be in the same project and located in the same region as the Serverless NEG. +message NetworkEndpointGroupAppEngine { + // Optional serving service. The service name is case-sensitive and must be 1-63 characters long. Example value: "default", "my-service". + optional string service = 373540533; + + // A template to parse service and version fields from a request URL. URL mask allows for routing to multiple App Engine services without having to create multiple Network Endpoint Groups and backend services. For example, the request URLs "foo1-dot-appname.appspot.com/v1" and "foo1-dot-appname.appspot.com/v2" can be backed by the same Serverless NEG with URL mask "-dot-appname.appspot.com/". The URL mask will parse them to { service = "foo1", version = "v1" } and { service = "foo1", version = "v2" } respectively. + optional string url_mask = 103352252; + + // Optional serving version. The version name is case-sensitive and must be 1-100 characters long. Example value: "v1", "v2". + optional string version = 351608024; + +} + +// Configuration for a Cloud Function network endpoint group (NEG). The function must be provided explicitly or in the URL mask. Note: Cloud Function must be in the same project and located in the same region as the Serverless NEG. +message NetworkEndpointGroupCloudFunction { + // A user-defined name of the Cloud Function. The function name is case-sensitive and must be 1-63 characters long. Example value: "func1". + optional string function = 307196888; + + // A template to parse function field from a request URL. URL mask allows for routing to multiple Cloud Functions without having to create multiple Network Endpoint Groups and backend services. For example, request URLs " mydomain.com/function1" and "mydomain.com/function2" can be backed by the same Serverless NEG with URL mask "/". The URL mask will parse them to { function = "function1" } and { function = "function2" } respectively. + optional string url_mask = 103352252; + +} + +// Configuration for a Cloud Run network endpoint group (NEG). The service must be provided explicitly or in the URL mask. The tag is optional, may be provided explicitly or in the URL mask. Note: Cloud Run service must be in the same project and located in the same region as the Serverless NEG. +message NetworkEndpointGroupCloudRun { + // Cloud Run service is the main resource of Cloud Run. The service must be 1-63 characters long, and comply with RFC1035. Example value: "run-service". + optional string service = 373540533; + + // Optional Cloud Run tag represents the "named-revision" to provide additional fine-grained traffic routing information. The tag must be 1-63 characters long, and comply with RFC1035. Example value: "revision-0010". + optional string tag = 114586; + + // A template to parse service and tag fields from a request URL. URL mask allows for routing to multiple Run services without having to create multiple network endpoint groups and backend services. For example, request URLs "foo1.domain.com/bar1" and "foo1.domain.com/bar2" can be backed by the same Serverless Network Endpoint Group (NEG) with URL mask ".domain.com/". The URL mask will parse them to { service="bar1", tag="foo1" } and { service="bar2", tag="foo2" } respectively. + optional string url_mask = 103352252; + +} + +// +message NetworkEndpointGroupList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of NetworkEndpointGroup resources. + repeated NetworkEndpointGroup items = 100526016; + + // [Output Only] The resource type, which is always compute#networkEndpointGroupList for network endpoint group lists. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message NetworkEndpointGroupsAttachEndpointsRequest { + // The list of network endpoints to be attached. + repeated NetworkEndpoint network_endpoints = 149850285; + +} + +// +message NetworkEndpointGroupsDetachEndpointsRequest { + // The list of network endpoints to be detached. + repeated NetworkEndpoint network_endpoints = 149850285; + +} + +// +message NetworkEndpointGroupsListEndpointsRequest { + // Optional query parameter for showing the health status of each network endpoint. Valid options are SKIP or SHOW. If you don't specify this parameter, the health status of network endpoints will not be provided. + enum HealthStatus { + // A value indicating that the enum field is not set. + UNDEFINED_HEALTH_STATUS = 0; + + // Show the health status for each network endpoint. Impacts latency of the call. + SHOW = 2544381; + + // Health status for network endpoints will not be provided. + SKIP = 2547071; + + } + + // Optional query parameter for showing the health status of each network endpoint. Valid options are SKIP or SHOW. If you don't specify this parameter, the health status of network endpoints will not be provided. + // Check the HealthStatus enum for the list of possible values. + optional string health_status = 380545845; + +} + +// +message NetworkEndpointGroupsListNetworkEndpoints { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of NetworkEndpointWithHealthStatus resources. + repeated NetworkEndpointWithHealthStatus items = 100526016; + + // [Output Only] The resource type, which is always compute#networkEndpointGroupsListNetworkEndpoints for the list of network endpoints in the specified network endpoint group. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message NetworkEndpointGroupsScopedList { + // [Output Only] The list of network endpoint groups that are contained in this scope. + repeated NetworkEndpointGroup network_endpoint_groups = 29346733; + + // [Output Only] An informational warning that replaces the list of network endpoint groups when the list is empty. + optional Warning warning = 50704284; + +} + +// +message NetworkEndpointWithHealthStatus { + // [Output only] The health status of network endpoint; + repeated HealthStatusForNetworkEndpoint healths = 258689431; + + // [Output only] The network endpoint; + optional NetworkEndpoint network_endpoint = 56789126; + +} + +// A network interface resource attached to an instance. +message NetworkInterface { + // [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork. Valid only if stackType is IPV4_IPV6. + enum Ipv6AccessType { + // A value indicating that the enum field is not set. + UNDEFINED_IPV6_ACCESS_TYPE = 0; + + // This network interface can have external IPv6. + EXTERNAL = 35607499; + + // IPv6 access type not set. Means this network interface hasn't been turned on IPv6 yet. + UNSPECIFIED_IPV6_ACCESS_TYPE = 313080613; + + } + + // The type of vNIC to be used on this interface. This may be gVNIC or VirtioNet. + enum NicType { + // A value indicating that the enum field is not set. + UNDEFINED_NIC_TYPE = 0; + + // GVNIC + GVNIC = 68209305; + + // No type specified. + UNSPECIFIED_NIC_TYPE = 67411801; + + // VIRTIO + VIRTIO_NET = 452123481; + + } + + // The stack type for this network interface to identify whether the IPv6 feature is enabled or not. If not specified, IPV4_ONLY will be used. This field can be both set at instance creation and update network interface operations. + enum StackType { + // A value indicating that the enum field is not set. + UNDEFINED_STACK_TYPE = 0; + + // The network interface can have both IPv4 and IPv6 addresses. + IPV4_IPV6 = 22197249; + + // The network interface will be assigned IPv4 address. + IPV4_ONLY = 22373798; + + UNSPECIFIED_STACK_TYPE = 298084569; + + } + + // An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access. + repeated AccessConfig access_configs = 111058326; + + // An array of alias IP ranges for this network interface. You can only specify this field for network interfaces in VPC networks. + repeated AliasIpRange alias_ip_ranges = 165085631; + + // Fingerprint hash of contents stored in this network interface. This field will be ignored when inserting an Instance or adding a NetworkInterface. An up-to-date fingerprint must be provided in order to update the NetworkInterface. The request will fail with error 400 Bad Request if the fingerprint is not provided, or 412 Precondition Failed if the fingerprint is out of date. + optional string fingerprint = 234678500; + + // An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access. + repeated AccessConfig ipv6_access_configs = 483472110; + + // [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork. Valid only if stackType is IPV4_IPV6. + // Check the Ipv6AccessType enum for the list of possible values. + optional string ipv6_access_type = 504658653; + + // [Output Only] An IPv6 internal network address for this network interface. + optional string ipv6_address = 341563804; + + // [Output Only] Type of the resource. Always compute#networkInterface for network interfaces. + optional string kind = 3292052; + + // [Output Only] The name of the network interface, which is generated by the server. For network devices, these are eth0, eth1, etc. + optional string name = 3373707; + + // URL of the network resource for this instance. When creating an instance, if neither the network nor the subnetwork is specified, the default network global/networks/default is used; if the network is not specified but the subnetwork is specified, the network is inferred. If you specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: - https://www.googleapis.com/compute/v1/projects/project/global/networks/ network - projects/project/global/networks/network - global/networks/default + optional string network = 232872494; + + // An IPv4 internal IP address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system. + optional string network_i_p = 207181961; + + // The type of vNIC to be used on this interface. This may be gVNIC or VirtioNet. + // Check the NicType enum for the list of possible values. + optional string nic_type = 59810577; + + // The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It'll be empty if not specified by the users. + optional int32 queue_count = 503708769; + + // The stack type for this network interface to identify whether the IPv6 feature is enabled or not. If not specified, IPV4_ONLY will be used. This field can be both set at instance creation and update network interface operations. + // Check the StackType enum for the list of possible values. + optional string stack_type = 425908881; + + // The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not specify this field. If the network is in auto subnet mode, specifying the subnetwork is optional. If the network is in custom subnet mode, specifying the subnetwork is required. If you specify this field, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: - https://www.googleapis.com/compute/v1/projects/project/regions/region /subnetworks/subnetwork - regions/region/subnetworks/subnetwork + optional string subnetwork = 307827694; + +} + +// Contains a list of networks. +message NetworkList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Network resources. + repeated Network items = 100526016; + + // [Output Only] Type of resource. Always compute#networkList for lists of networks. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// A network peering attached to a network resource. The message includes the peering name, peer network, peering state, and a flag indicating whether Google Compute Engine should automatically create routes for the peering. +message NetworkPeering { + // [Output Only] State for the peering, either `ACTIVE` or `INACTIVE`. The peering is `ACTIVE` when there's a matching configuration in the peer network. + enum State { + // A value indicating that the enum field is not set. + UNDEFINED_STATE = 0; + + // Matching configuration exists on the peer. + ACTIVE = 314733318; + + // There is no matching configuration on the peer, including the case when peer does not exist. + INACTIVE = 270421099; + + } + + // This field will be deprecated soon. Use the exchange_subnet_routes field instead. Indicates whether full mesh connectivity is created and managed automatically between peered networks. Currently this field should always be true since Google Compute Engine will automatically create and manage subnetwork routes between two networks when peering state is ACTIVE. + optional bool auto_create_routes = 57454941; + + // Indicates whether full mesh connectivity is created and managed automatically between peered networks. Currently this field should always be true since Google Compute Engine will automatically create and manage subnetwork routes between two networks when peering state is ACTIVE. + optional bool exchange_subnet_routes = 26322256; + + // Whether to export the custom routes to peer network. + optional bool export_custom_routes = 60281485; + + // Whether subnet routes with public IP range are exported. The default value is true, all subnet routes are exported. IPv4 special-use ranges are always exported to peers and are not controlled by this field. + optional bool export_subnet_routes_with_public_ip = 97940834; + + // Whether to import the custom routes from peer network. + optional bool import_custom_routes = 197982398; + + // Whether subnet routes with public IP range are imported. The default value is false. IPv4 special-use ranges are always imported from peers and are not controlled by this field. + optional bool import_subnet_routes_with_public_ip = 14419729; + + // Name of this peering. Provided by the client when the peering is created. The name must comply with RFC1035. Specifically, the name must be 1-63 characters long and match regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all the following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // The URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network. + optional string network = 232872494; + + // Maximum Transmission Unit in bytes. + optional int32 peer_mtu = 69584721; + + // [Output Only] State for the peering, either `ACTIVE` or `INACTIVE`. The peering is `ACTIVE` when there's a matching configuration in the peer network. + // Check the State enum for the list of possible values. + optional string state = 109757585; + + // [Output Only] Details about the current state of the peering. + optional string state_details = 95566996; + +} + +// A routing configuration attached to a network resource. The message includes the list of routers associated with the network, and a flag indicating the type of routing behavior to enforce network-wide. +message NetworkRoutingConfig { + // The network-wide routing mode to use. If set to REGIONAL, this network's Cloud Routers will only advertise routes with subnets of this network in the same region as the router. If set to GLOBAL, this network's Cloud Routers will advertise routes with all subnets of this network, across regions. + enum RoutingMode { + // A value indicating that the enum field is not set. + UNDEFINED_ROUTING_MODE = 0; + + GLOBAL = 494663587; + + REGIONAL = 92288543; + + } + + // The network-wide routing mode to use. If set to REGIONAL, this network's Cloud Routers will only advertise routes with subnets of this network in the same region as the router. If set to GLOBAL, this network's Cloud Routers will advertise routes with all subnets of this network, across regions. + // Check the RoutingMode enum for the list of possible values. + optional string routing_mode = 475143548; + +} + +// +message NetworksAddPeeringRequest { + // This field will be deprecated soon. Use exchange_subnet_routes in network_peering instead. Indicates whether full mesh connectivity is created and managed automatically between peered networks. Currently this field should always be true since Google Compute Engine will automatically create and manage subnetwork routes between two networks when peering state is ACTIVE. + optional bool auto_create_routes = 57454941; + + // Name of the peering, which should conform to RFC1035. + optional string name = 3373707; + + // Network peering parameters. In order to specify route policies for peering using import and export custom routes, you must specify all peering related parameters (name, peer network, exchange_subnet_routes) in the network_peering field. The corresponding fields in NetworksAddPeeringRequest will be deprecated soon. + optional NetworkPeering network_peering = 328926767; + + // URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network. + optional string peer_network = 500625489; + +} + +// +message NetworksGetEffectiveFirewallsResponse { + // Effective firewalls from firewall policy. + repeated NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy firewall_policys = 410985794; + + // Effective firewalls on the network. + repeated Firewall firewalls = 272245619; + +} + +// +message NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy { + // [Output Only] The type of the firewall policy. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + HIERARCHY = 69902869; + + NETWORK = 413984270; + + UNSPECIFIED = 526786327; + + } + + // [Output Only] Deprecated, please use short name instead. The display name of the firewall policy. + optional string display_name = 4473832; + + // [Output Only] The name of the firewall policy. + optional string name = 3373707; + + // The rules that apply to the network. + repeated FirewallPolicyRule rules = 108873975; + + // [Output Only] The short name of the firewall policy. + optional string short_name = 492051566; + + // [Output Only] The type of the firewall policy. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// +message NetworksRemovePeeringRequest { + // Name of the peering, which should conform to RFC1035. + optional string name = 3373707; + +} + +// +message NetworksUpdatePeeringRequest { + optional NetworkPeering network_peering = 328926767; + +} + +// Represents a sole-tenant Node Group resource. A sole-tenant node is a physical server that is dedicated to hosting VM instances only for your specific project. Use sole-tenant nodes to keep your instances physically separated from instances in other projects, or to group your instances together on the same host hardware. For more information, read Sole-tenant nodes. +message NodeGroup { + // Specifies how to handle instances when a node in the group undergoes maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information, see Maintenance policies. + enum MaintenancePolicy { + // A value indicating that the enum field is not set. + UNDEFINED_MAINTENANCE_POLICY = 0; + + // Allow the node and corresponding instances to retain default maintenance behavior. + DEFAULT = 115302945; + + MAINTENANCE_POLICY_UNSPECIFIED = 72964182; + + // When maintenance must be done on a node, the instances on that node will be moved to other nodes in the group. Instances with onHostMaintenance = MIGRATE will live migrate to their destinations while instances with onHostMaintenance = TERMINATE will terminate and then restart on their destination nodes if automaticRestart = true. + MIGRATE_WITHIN_NODE_GROUP = 153483394; + + // Instances in this group will restart on the same node when maintenance has completed. Instances must have onHostMaintenance = TERMINATE, and they will only restart if automaticRestart = true. + RESTART_IN_PLACE = 228647325; + + } + + // + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + CREATING = 455564985; + + DELETING = 528602024; + + INVALID = 530283991; + + READY = 77848963; + + } + + // Specifies how autoscaling should behave. + optional NodeGroupAutoscalingPolicy autoscaling_policy = 221950041; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + optional string fingerprint = 234678500; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] The type of the resource. Always compute#nodeGroup for node group. + optional string kind = 3292052; + + // An opaque location hint used to place the Node close to other resources. This field is for use by internal tools that use the public API. The location hint here on the NodeGroup overrides any location_hint present in the NodeTemplate. + optional string location_hint = 350519505; + + // Specifies how to handle instances when a node in the group undergoes maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information, see Maintenance policies. + // Check the MaintenancePolicy enum for the list of possible values. + optional string maintenance_policy = 528327646; + + optional NodeGroupMaintenanceWindow maintenance_window = 186374812; + + // The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // URL of the node template to create the node group from. + optional string node_template = 323154455; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The total number of nodes in the node group. + optional int32 size = 3530753; + + // + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // [Output Only] The name of the zone where the node group resides, such as us-central1-a. + optional string zone = 3744684; + +} + +// +message NodeGroupAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of NodeGroupsScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource.Always compute#nodeGroupAggregatedList for aggregated lists of node groups. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message NodeGroupAutoscalingPolicy { + // The autoscaling mode. Set to one of: ON, OFF, or ONLY_SCALE_OUT. For more information, see Autoscaler modes. + enum Mode { + // A value indicating that the enum field is not set. + UNDEFINED_MODE = 0; + + MODE_UNSPECIFIED = 371348091; + + // Autoscaling is disabled. + OFF = 78159; + + // Autocaling is fully enabled. + ON = 2527; + + // Autoscaling will only scale out and will not remove nodes. + ONLY_SCALE_OUT = 152713670; + + } + + // The maximum number of nodes that the group should have. Must be set if autoscaling is enabled. Maximum value allowed is 100. + optional int32 max_nodes = 297762838; + + // The minimum number of nodes that the group should have. + optional int32 min_nodes = 533370500; + + // The autoscaling mode. Set to one of: ON, OFF, or ONLY_SCALE_OUT. For more information, see Autoscaler modes. + // Check the Mode enum for the list of possible values. + optional string mode = 3357091; + +} + +// Contains a list of nodeGroups. +message NodeGroupList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of NodeGroup resources. + repeated NodeGroup items = 100526016; + + // [Output Only] Type of resource.Always compute#nodeGroupList for lists of node groups. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Time window specified for daily maintenance operations. GCE's internal maintenance will be performed within this window. +message NodeGroupMaintenanceWindow { + // [Output only] A predetermined duration for the window, automatically chosen to be the smallest possible in the given scenario. + optional Duration maintenance_duration = 525291840; + + // Start time of the window. This must be in UTC format that resolves to one of 00:00, 04:00, 08:00, 12:00, 16:00, or 20:00. For example, both 13:00-5 and 08:00 are valid. + optional string start_time = 37467274; + +} + +// +message NodeGroupNode { + // CPU overcommit. + enum CpuOvercommitType { + // A value indicating that the enum field is not set. + UNDEFINED_CPU_OVERCOMMIT_TYPE = 0; + + CPU_OVERCOMMIT_TYPE_UNSPECIFIED = 520665615; + + ENABLED = 182130465; + + NONE = 2402104; + + } + + // + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + CREATING = 455564985; + + DELETING = 528602024; + + INVALID = 530283991; + + READY = 77848963; + + REPAIRING = 413483285; + + } + + // Accelerators for this node. + repeated AcceleratorConfig accelerators = 269577064; + + // CPU overcommit. + // Check the CpuOvercommitType enum for the list of possible values. + optional string cpu_overcommit_type = 247727959; + + // Local disk configurations. + repeated LocalDisk disks = 95594102; + + // Instances scheduled on this node. + repeated string instances = 29097598; + + // The name of the node. + optional string name = 3373707; + + // The type of this node. + optional string node_type = 465832791; + + // [Output Only] Reserved for future use. + optional bool satisfies_pzs = 480964267; + + // Binding properties for the physical server. + optional ServerBinding server_binding = 208179593; + + // Server ID associated with this node. + optional string server_id = 339433367; + + // + // Check the Status enum for the list of possible values. + optional string status = 181260274; + +} + +// +message NodeGroupsAddNodesRequest { + // Count of additional nodes to be added to the node group. + optional int32 additional_node_count = 134997930; + +} + +// +message NodeGroupsDeleteNodesRequest { + // Names of the nodes to delete. + repeated string nodes = 104993457; + +} + +// +message NodeGroupsListNodes { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Node resources. + repeated NodeGroupNode items = 100526016; + + // [Output Only] The resource type, which is always compute.nodeGroupsListNodes for the list of nodes in the specified node group. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message NodeGroupsScopedList { + // [Output Only] A list of node groups contained in this scope. + repeated NodeGroup node_groups = 73188017; + + // [Output Only] An informational warning that appears when the nodeGroup list is empty. + optional Warning warning = 50704284; + +} + +// +message NodeGroupsSetNodeTemplateRequest { + // Full or partial URL of the node template resource to be updated for this node group. + optional string node_template = 323154455; + +} + +// Represent a sole-tenant Node Template resource. You can use a template to define properties for nodes in a node group. For more information, read Creating node groups and instances. +message NodeTemplate { + // CPU overcommit. + enum CpuOvercommitType { + // A value indicating that the enum field is not set. + UNDEFINED_CPU_OVERCOMMIT_TYPE = 0; + + CPU_OVERCOMMIT_TYPE_UNSPECIFIED = 520665615; + + ENABLED = 182130465; + + NONE = 2402104; + + } + + // [Output Only] The status of the node template. One of the following values: CREATING, READY, and DELETING. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // Resources are being allocated. + CREATING = 455564985; + + // The node template is currently being deleted. + DELETING = 528602024; + + // Invalid status. + INVALID = 530283991; + + // The node template is ready. + READY = 77848963; + + } + + repeated AcceleratorConfig accelerators = 269577064; + + // CPU overcommit. + // Check the CpuOvercommitType enum for the list of possible values. + optional string cpu_overcommit_type = 247727959; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + repeated LocalDisk disks = 95594102; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] The type of the resource. Always compute#nodeTemplate for node templates. + optional string kind = 3292052; + + // The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // Labels to use for node affinity, which will be used in instance scheduling. + map node_affinity_labels = 339007161; + + // The node type to use for nodes group that are created from this template. + optional string node_type = 465832791; + + // The flexible properties of the desired node type. Node groups that use this node template will create nodes of a type that matches these properties. This field is mutually exclusive with the node_type property; you can only define one or the other, but not both. + optional NodeTemplateNodeTypeFlexibility node_type_flexibility = 315257905; + + // [Output Only] The name of the region where the node template resides, such as us-central1. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // Sets the binding properties for the physical server. Valid values include: - *[Default]* RESTART_NODE_ON_ANY_SERVER: Restarts VMs on any available physical server - RESTART_NODE_ON_MINIMAL_SERVER: Restarts VMs on the same physical server whenever possible See Sole-tenant node options for more information. + optional ServerBinding server_binding = 208179593; + + // [Output Only] The status of the node template. One of the following values: CREATING, READY, and DELETING. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // [Output Only] An optional, human-readable explanation of the status. + optional string status_message = 297428154; + +} + +// +message NodeTemplateAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of NodeTemplatesScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource.Always compute#nodeTemplateAggregatedList for aggregated lists of node templates. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of node templates. +message NodeTemplateList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of NodeTemplate resources. + repeated NodeTemplate items = 100526016; + + // [Output Only] Type of resource.Always compute#nodeTemplateList for lists of node templates. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message NodeTemplateNodeTypeFlexibility { + optional string cpus = 3060683; + + optional string local_ssd = 405741360; + + optional string memory = 532856065; + +} + +// +message NodeTemplatesScopedList { + // [Output Only] A list of node templates contained in this scope. + repeated NodeTemplate node_templates = 354111804; + + // [Output Only] An informational warning that appears when the node templates list is empty. + optional Warning warning = 50704284; + +} + +// Represent a sole-tenant Node Type resource. Each node within a node group must have a node type. A node type specifies the total amount of cores and memory for that node. Currently, the only available node type is n1-node-96-624 node type that has 96 vCPUs and 624 GB of memory, available in multiple zones. For more information read Node types. +message NodeType { + // [Output Only] The CPU platform used by this node type. + optional string cpu_platform = 410285354; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // [Output Only] The deprecation status associated with this node type. + optional DeprecationStatus deprecated = 515138995; + + // [Output Only] An optional textual description of the resource. + optional string description = 422937596; + + // [Output Only] The number of virtual CPUs that are available to the node type. + optional int32 guest_cpus = 393356754; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] The type of the resource. Always compute#nodeType for node types. + optional string kind = 3292052; + + // [Output Only] Local SSD available to the node type, defined in GB. + optional int32 local_ssd_gb = 329237578; + + // [Output Only] The amount of physical memory available to the node type, defined in MB. + optional int32 memory_mb = 116001171; + + // [Output Only] Name of the resource. + optional string name = 3373707; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The name of the zone where the node type resides, such as us-central1-a. + optional string zone = 3744684; + +} + +// +message NodeTypeAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of NodeTypesScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource.Always compute#nodeTypeAggregatedList for aggregated lists of node types. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of node types. +message NodeTypeList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of NodeType resources. + repeated NodeType items = 100526016; + + // [Output Only] Type of resource.Always compute#nodeTypeList for lists of node types. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message NodeTypesScopedList { + // [Output Only] A list of node types contained in this scope. + repeated NodeType node_types = 482172924; + + // [Output Only] An informational warning that appears when the node types list is empty. + optional Warning warning = 50704284; + +} + +// Represents a notification endpoint. A notification endpoint resource defines an endpoint to receive notifications when there are status changes detected by the associated health check service. For more information, see Health checks overview. +message NotificationEndpoint { + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Settings of the gRPC notification endpoint including the endpoint URL and the retry duration. + optional NotificationEndpointGrpcSettings grpc_settings = 456139556; + + // [Output Only] A unique identifier for this resource type. The server generates this identifier. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#notificationEndpoint for notification endpoints. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // [Output Only] URL of the region where the notification endpoint resides. This field applies only to the regional resource. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + +} + +// Represents a gRPC setting that describes one gRPC notification endpoint and the retry duration attempting to send notification to this endpoint. +message NotificationEndpointGrpcSettings { + // Optional. If specified, this field is used to set the authority header by the sender of notifications. See https://tools.ietf.org/html/rfc7540#section-8.1.2.3 + optional string authority = 401868611; + + // Endpoint to which gRPC notifications are sent. This must be a valid gRPCLB DNS name. + optional string endpoint = 130489749; + + // Optional. If specified, this field is used to populate the "name" field in gRPC requests. + optional string payload_name = 300358300; + + // Optional. This field is used to configure how often to send a full update of all non-healthy backends. If unspecified, full updates are not sent. If specified, must be in the range between 600 seconds to 3600 seconds. Nanos are disallowed. + optional Duration resend_interval = 478288969; + + // How much time (in seconds) is spent attempting notification retries until a successful response is received. Default is 30s. Limit is 20m (1200s). Must be a positive number. + optional uint32 retry_duration_sec = 115681117; + +} + +// +message NotificationEndpointList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of NotificationEndpoint resources. + repeated NotificationEndpoint items = 100526016; + + // [Output Only] Type of the resource. Always compute#notificationEndpoint for notification endpoints. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents an Operation resource. Google Compute Engine has three Operation resources: * [Global](/compute/docs/reference/rest/v1/globalOperations) * [Regional](/compute/docs/reference/rest/v1/regionOperations) * [Zonal](/compute/docs/reference/rest/v1/zoneOperations) You can use an operation resource to manage asynchronous API requests. For more information, read Handling API responses. Operations can be global, regional or zonal. - For global operations, use the `globalOperations` resource. - For regional operations, use the `regionOperations` resource. - For zonal operations, use the `zonalOperations` resource. For more information, read Global, Regional, and Zonal Resources. +message Operation { + // [Output Only] The status of the operation, which can be one of the following: `PENDING`, `RUNNING`, or `DONE`. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + DONE = 2104194; + + PENDING = 35394935; + + RUNNING = 121282975; + + } + + // [Output Only] The value of `requestId` if you provided it in the request. Not present otherwise. + optional string client_operation_id = 297240295; + + // [Deprecated] This field is deprecated. + optional string creation_timestamp = 30525366; + + // [Output Only] A textual description of the operation, which is set when the operation is created. + optional string description = 422937596; + + // [Output Only] The time that this operation was completed. This value is in RFC3339 text format. + optional string end_time = 114938801; + + // [Output Only] If errors are generated during processing of the operation, this field will be populated. + optional Error error = 96784904; + + // [Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as `NOT FOUND`. + optional string http_error_message = 202521945 [(google.cloud.operation_field) = ERROR_MESSAGE]; + + // [Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a `404` means the resource was not found. + optional int32 http_error_status_code = 312345196 [(google.cloud.operation_field) = ERROR_CODE]; + + // [Output Only] The unique identifier for the operation. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] The time that this operation was requested. This value is in RFC3339 text format. + optional string insert_time = 433722515; + + // [Output Only] Type of the resource. Always `compute#operation` for Operation resources. + optional string kind = 3292052; + + // [Output Only] Name of the operation. + optional string name = 3373707 [(google.cloud.operation_field) = NAME]; + + // [Output Only] An ID that represents a group of operations, such as when a group of operations results from a `bulkInsert` API request. + optional string operation_group_id = 40171187; + + // [Output Only] The type of operation, such as `insert`, `update`, or `delete`, and so on. + optional string operation_type = 177650450; + + // [Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses. + optional int32 progress = 72663597; + + // [Output Only] The URL of the region where the operation resides. Only applicable when performing regional operations. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The time that this operation was started by the server. This value is in RFC3339 text format. + optional string start_time = 37467274; + + // [Output Only] The status of the operation, which can be one of the following: `PENDING`, `RUNNING`, or `DONE`. + optional Status status = 181260274 [(google.cloud.operation_field) = STATUS]; + + // [Output Only] An optional textual description of the current status of the operation. + optional string status_message = 297428154; + + // [Output Only] The unique target ID, which identifies a specific incarnation of the target resource. + optional uint64 target_id = 258165385; + + // [Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from. + optional string target_link = 62671336; + + // [Output Only] User who requested the operation, for example: `user@example.com`. + optional string user = 3599307; + + // [Output Only] If warning messages are generated during processing of the operation, this field will be populated. + repeated Warnings warnings = 498091095; + + // [Output Only] The URL of the zone where the operation resides. Only applicable when performing per-zone operations. + optional string zone = 3744684; + +} + +// +message OperationAggregatedList { + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional string id = 3355; + + // [Output Only] A map of scoped operation lists. + map items = 100526016; + + // [Output Only] Type of resource. Always `compute#operationAggregatedList` for aggregated lists of operations. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than `maxResults`, use the `nextPageToken` as a value for the query parameter `pageToken` in the next list request. Subsequent list requests will have their own `nextPageToken` to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of Operation resources. +message OperationList { + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional string id = 3355; + + // [Output Only] A list of Operation resources. + repeated Operation items = 100526016; + + // [Output Only] Type of resource. Always `compute#operations` for Operations resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than `maxResults`, use the `nextPageToken` as a value for the query parameter `pageToken` in the next list request. Subsequent list requests will have their own `nextPageToken` to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message OperationsScopedList { + // [Output Only] A list of operations contained in this scope. + repeated Operation operations = 4184044; + + // [Output Only] Informational warning which replaces the list of operations when the list is empty. + optional Warning warning = 50704284; + +} + +// Settings controlling the eviction of unhealthy hosts from the load balancing pool for the backend service. +message OutlierDetection { + // The base time that a host is ejected for. The real ejection time is equal to the base ejection time multiplied by the number of times the host has been ejected. Defaults to 30000ms or 30s. + optional Duration base_ejection_time = 80997255; + + // Number of errors before a host is ejected from the connection pool. When the backend host is accessed over HTTP, a 5xx return code qualifies as an error. Defaults to 5. + optional int32 consecutive_errors = 387193248; + + // The number of consecutive gateway failures (502, 503, 504 status or connection errors that are mapped to one of those status codes) before a consecutive gateway failure ejection occurs. Defaults to 3. + optional int32 consecutive_gateway_failure = 417504250; + + // The percentage chance that a host will be actually ejected when an outlier status is detected through consecutive 5xx. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 0. + optional int32 enforcing_consecutive_errors = 213133760; + + // The percentage chance that a host will be actually ejected when an outlier status is detected through consecutive gateway failures. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100. + optional int32 enforcing_consecutive_gateway_failure = 394440666; + + // The percentage chance that a host will be actually ejected when an outlier status is detected through success rate statistics. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100. + optional int32 enforcing_success_rate = 194508732; + + // Time interval between ejection analysis sweeps. This can result in both new ejections as well as hosts being returned to service. Defaults to 1 second. + optional Duration interval = 33547461; + + // Maximum percentage of hosts in the load balancing pool for the backend service that can be ejected. Defaults to 50%. + optional int32 max_ejection_percent = 18436888; + + // The number of hosts in a cluster that must have enough request volume to detect success rate outliers. If the number of hosts is less than this setting, outlier detection via success rate statistics is not performed for any host in the cluster. Defaults to 5. + optional int32 success_rate_minimum_hosts = 525766903; + + // The minimum number of total requests that must be collected in one interval (as defined by the interval duration above) to include this host in success rate based outlier detection. If the volume is lower than this setting, outlier detection via success rate statistics is not performed for that host. Defaults to 100. + optional int32 success_rate_request_volume = 281425357; + + // This factor is used to determine the ejection threshold for success rate outlier ejection. The ejection threshold is the difference between the mean success rate, and the product of this factor and the standard deviation of the mean success rate: mean - (stdev * success_rate_stdev_factor). This factor is divided by a thousand to get a double. That is, if the desired factor is 1.9, the runtime value should be 1900. Defaults to 1900. + optional int32 success_rate_stdev_factor = 174735773; + +} + +// Represents a Packet Mirroring resource. Packet Mirroring clones the traffic of specified instances in your Virtual Private Cloud (VPC) network and forwards it to a collector destination, such as an instance group of an internal TCP/UDP load balancer, for analysis or examination. For more information about setting up Packet Mirroring, see Using Packet Mirroring. +message PacketMirroring { + // Indicates whether or not this packet mirroring takes effect. If set to FALSE, this packet mirroring policy will not be enforced on the network. The default is TRUE. + enum Enable { + // A value indicating that the enum field is not set. + UNDEFINED_ENABLE = 0; + + FALSE = 66658563; + + TRUE = 2583950; + + } + + // The Forwarding Rule resource of type loadBalancingScheme=INTERNAL that will be used as collector for mirrored traffic. The specified forwarding rule must have isMirroringCollector set to true. + optional PacketMirroringForwardingRuleInfo collector_ilb = 426607853; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Indicates whether or not this packet mirroring takes effect. If set to FALSE, this packet mirroring policy will not be enforced on the network. The default is TRUE. + // Check the Enable enum for the list of possible values. + optional string enable = 311764355; + + // Filter for mirrored traffic. If unspecified, all traffic is mirrored. + optional PacketMirroringFilter filter = 336120696; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#packetMirroring for packet mirrorings. + optional string kind = 3292052; + + // PacketMirroring mirroredResourceInfos. MirroredResourceInfo specifies a set of mirrored VM instances, subnetworks and/or tags for which traffic from/to all VM instances will be mirrored. + optional PacketMirroringMirroredResourceInfo mirrored_resources = 124817348; + + // Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // Specifies the mirrored VPC network. Only packets in this network will be mirrored. All mirrored VMs should have a NIC in the given network. All mirrored subnetworks should belong to the given network. + optional PacketMirroringNetworkInfo network = 232872494; + + // The priority of applying this configuration. Priority is used to break ties in cases where there is more than one matching rule. In the case of two rules that apply for a given Instance, the one with the lowest-numbered priority value wins. Default value is 1000. Valid range is 0 through 65535. + optional uint32 priority = 445151652; + + // [Output Only] URI of the region where the packetMirroring resides. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + +} + +// Contains a list of packetMirrorings. +message PacketMirroringAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of PacketMirroring resources. + map items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message PacketMirroringFilter { + // Direction of traffic to mirror, either INGRESS, EGRESS, or BOTH. The default is BOTH. + enum Direction { + // A value indicating that the enum field is not set. + UNDEFINED_DIRECTION = 0; + + // Default, both directions are mirrored. + BOTH = 2044801; + + // Only egress traffic is mirrored. + EGRESS = 432880501; + + // Only ingress traffic is mirrored. + INGRESS = 516931221; + + } + + // Protocols that apply as filter on mirrored traffic. If no protocols are specified, all traffic that matches the specified CIDR ranges is mirrored. If neither cidrRanges nor IPProtocols is specified, all traffic is mirrored. + repeated string I_p_protocols = 98544854; + + // IP CIDR ranges that apply as filter on the source (ingress) or destination (egress) IP in the IP header. Only IPv4 is supported. If no ranges are specified, all traffic that matches the specified IPProtocols is mirrored. If neither cidrRanges nor IPProtocols is specified, all traffic is mirrored. + repeated string cidr_ranges = 487901697; + + // Direction of traffic to mirror, either INGRESS, EGRESS, or BOTH. The default is BOTH. + // Check the Direction enum for the list of possible values. + optional string direction = 111150975; + +} + +// +message PacketMirroringForwardingRuleInfo { + // [Output Only] Unique identifier for the forwarding rule; defined by the server. + optional string canonical_url = 512294820; + + // Resource URL to the forwarding rule representing the ILB configured as destination of the mirrored traffic. + optional string url = 116079; + +} + +// Contains a list of PacketMirroring resources. +message PacketMirroringList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of PacketMirroring resources. + repeated PacketMirroring items = 100526016; + + // [Output Only] Type of resource. Always compute#packetMirroring for packetMirrorings. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message PacketMirroringMirroredResourceInfo { + // A set of virtual machine instances that are being mirrored. They must live in zones contained in the same region as this packetMirroring. Note that this config will apply only to those network interfaces of the Instances that belong to the network specified in this packetMirroring. You may specify a maximum of 50 Instances. + repeated PacketMirroringMirroredResourceInfoInstanceInfo instances = 29097598; + + // A set of subnetworks for which traffic from/to all VM instances will be mirrored. They must live in the same region as this packetMirroring. You may specify a maximum of 5 subnetworks. + repeated PacketMirroringMirroredResourceInfoSubnetInfo subnetworks = 415853125; + + // A set of mirrored tags. Traffic from/to all VM instances that have one or more of these tags will be mirrored. + repeated string tags = 3552281; + +} + +// +message PacketMirroringMirroredResourceInfoInstanceInfo { + // [Output Only] Unique identifier for the instance; defined by the server. + optional string canonical_url = 512294820; + + // Resource URL to the virtual machine instance which is being mirrored. + optional string url = 116079; + +} + +// +message PacketMirroringMirroredResourceInfoSubnetInfo { + // [Output Only] Unique identifier for the subnetwork; defined by the server. + optional string canonical_url = 512294820; + + // Resource URL to the subnetwork for which traffic from/to all VM instances will be mirrored. + optional string url = 116079; + +} + +// +message PacketMirroringNetworkInfo { + // [Output Only] Unique identifier for the network; defined by the server. + optional string canonical_url = 512294820; + + // URL of the network resource. + optional string url = 116079; + +} + +// +message PacketMirroringsScopedList { + // A list of packetMirrorings contained in this scope. + repeated PacketMirroring packet_mirrorings = 154615079; + + // Informational warning which replaces the list of packetMirrorings when the list is empty. + optional Warning warning = 50704284; + +} + +// A request message for Autoscalers.Patch. See the method description for details. +message PatchAutoscalerRequest { + // Name of the autoscaler to patch. + optional string autoscaler = 517258967; + + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for BackendBuckets.Patch. See the method description for details. +message PatchBackendBucketRequest { + // Name of the BackendBucket resource to patch. + string backend_bucket = 91714037 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + BackendBucket backend_bucket_resource = 380757784 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for BackendServices.Patch. See the method description for details. +message PatchBackendServiceRequest { + // Name of the BackendService resource to patch. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + BackendService backend_service_resource = 347586723 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for FirewallPolicies.Patch. See the method description for details. +message PatchFirewallPolicyRequest { + // Name of the firewall policy to update. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + FirewallPolicy firewall_policy_resource = 495049532 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Firewalls.Patch. See the method description for details. +message PatchFirewallRequest { + // Name of the firewall rule to patch. + string firewall = 511016192 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + Firewall firewall_resource = 41425005 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for ForwardingRules.Patch. See the method description for details. +message PatchForwardingRuleRequest { + // Name of the ForwardingRule resource to patch. + string forwarding_rule = 269964030 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + ForwardingRule forwarding_rule_resource = 301211695 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for GlobalForwardingRules.Patch. See the method description for details. +message PatchGlobalForwardingRuleRequest { + // Name of the ForwardingRule resource to patch. + string forwarding_rule = 269964030 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + ForwardingRule forwarding_rule_resource = 301211695 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for GlobalPublicDelegatedPrefixes.Patch. See the method description for details. +message PatchGlobalPublicDelegatedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the PublicDelegatedPrefix resource to patch. + string public_delegated_prefix = 204238440 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + PublicDelegatedPrefix public_delegated_prefix_resource = 47594501 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + +} + +// A request message for HealthChecks.Patch. See the method description for details. +message PatchHealthCheckRequest { + // Name of the HealthCheck resource to patch. + string health_check = 308876645 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Images.Patch. See the method description for details. +message PatchImageRequest { + // Name of the image resource to patch. + string image = 100313435 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + Image image_resource = 371171954 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for InstanceGroupManagers.Patch. See the method description for details. +message PatchInstanceGroupManagerRequest { + // The name of the instance group manager. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManager instance_group_manager_resource = 261063946 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where you want to create the managed instance group. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for InterconnectAttachments.Patch. See the method description for details. +message PatchInterconnectAttachmentRequest { + // Name of the interconnect attachment to patch. + string interconnect_attachment = 308135284 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InterconnectAttachment interconnect_attachment_resource = 212341369 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Interconnects.Patch. See the method description for details. +message PatchInterconnectRequest { + // Name of the interconnect to update. + string interconnect = 224601230 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + Interconnect interconnect_resource = 397611167 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Networks.Patch. See the method description for details. +message PatchNetworkRequest { + // Name of the network to update. + string network = 232872494 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + Network network_resource = 122105599 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for NodeGroups.Patch. See the method description for details. +message PatchNodeGroupRequest { + // Name of the NodeGroup resource to update. + string node_group = 469958146 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NodeGroup node_group_resource = 505321899 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for PacketMirrorings.Patch. See the method description for details. +message PatchPacketMirroringRequest { + // Name of the PacketMirroring resource to patch. + string packet_mirroring = 22305996 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + PacketMirroring packet_mirroring_resource = 493501985 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for InstanceGroupManagers.PatchPerInstanceConfigs. See the method description for details. +message PatchPerInstanceConfigsInstanceGroupManagerRequest { + // The name of the managed instance group. It should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManagersPatchPerInstanceConfigsReq instance_group_managers_patch_per_instance_configs_req_resource = 356650495 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the managed instance group is located. It should conform to RFC1035. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionInstanceGroupManagers.PatchPerInstanceConfigs. See the method description for details. +message PatchPerInstanceConfigsRegionInstanceGroupManagerRequest { + // The name of the managed instance group. It should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request, should conform to RFC1035. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionInstanceGroupManagerPatchInstanceConfigReq region_instance_group_manager_patch_instance_config_req_resource = 197682890 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for PublicAdvertisedPrefixes.Patch. See the method description for details. +message PatchPublicAdvertisedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the PublicAdvertisedPrefix resource to patch. + string public_advertised_prefix = 101874590 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + PublicAdvertisedPrefix public_advertised_prefix_resource = 233614223 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + +} + +// A request message for PublicDelegatedPrefixes.Patch. See the method description for details. +message PatchPublicDelegatedPrefixeRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the PublicDelegatedPrefix resource to patch. + string public_delegated_prefix = 204238440 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + PublicDelegatedPrefix public_delegated_prefix_resource = 47594501 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + +} + +// A request message for RegionAutoscalers.Patch. See the method description for details. +message PatchRegionAutoscalerRequest { + // Name of the autoscaler to patch. + optional string autoscaler = 517258967; + + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionBackendServices.Patch. See the method description for details. +message PatchRegionBackendServiceRequest { + // Name of the BackendService resource to patch. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + BackendService backend_service_resource = 347586723 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionHealthChecks.Patch. See the method description for details. +message PatchRegionHealthCheckRequest { + // Name of the HealthCheck resource to patch. + string health_check = 308876645 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionHealthCheckServices.Patch. See the method description for details. +message PatchRegionHealthCheckServiceRequest { + // Name of the HealthCheckService to update. The name must be 1-63 characters long, and comply with RFC1035. + string health_check_service = 408374747 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + HealthCheckService health_check_service_resource = 477367794 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionInstanceGroupManagers.Patch. See the method description for details. +message PatchRegionInstanceGroupManagerRequest { + // The name of the instance group manager. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManager instance_group_manager_resource = 261063946 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionUrlMaps.Patch. See the method description for details. +message PatchRegionUrlMapRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // begin_interface: MixerMutationRequestBuilder Request ID to support idempotency. + optional string request_id = 37109963; + + // Name of the UrlMap resource to patch. + string url_map = 367020684 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Routers.Patch. See the method description for details. +message PatchRouterRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the Router resource to patch. + string router = 148608841 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + Router router_resource = 155222084 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for FirewallPolicies.PatchRule. See the method description for details. +message PatchRuleFirewallPolicyRequest { + // Name of the firewall policy to update. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + FirewallPolicyRule firewall_policy_rule_resource = 250523523 [(google.api.field_behavior) = REQUIRED]; + + // The priority of the rule to patch. + optional int32 priority = 445151652; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for SecurityPolicies.PatchRule. See the method description for details. +message PatchRuleSecurityPolicyRequest { + // The priority of the rule to patch. + optional int32 priority = 445151652; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the security policy to update. + string security_policy = 171082513 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + SecurityPolicyRule security_policy_rule_resource = 402693443 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SecurityPolicies.Patch. See the method description for details. +message PatchSecurityPolicyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the security policy to update. + string security_policy = 171082513 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + SecurityPolicy security_policy_resource = 216159612 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ServiceAttachments.Patch. See the method description for details. +message PatchServiceAttachmentRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The region scoping this request and should conform to RFC1035. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // The resource id of the ServiceAttachment to patch. It should conform to RFC1035 resource name or be a string form on an unsigned long number. + string service_attachment = 338957549 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + ServiceAttachment service_attachment_resource = 472980256 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for SslPolicies.Patch. See the method description for details. +message PatchSslPolicyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035. + string ssl_policy = 295190213 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + SslPolicy ssl_policy_resource = 274891848 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Subnetworks.Patch. See the method description for details. +message PatchSubnetworkRequest { + // The drain timeout specifies the upper bound in seconds on the amount of time allowed to drain connections from the current ACTIVE subnetwork to the current BACKUP subnetwork. The drain timeout is only applicable when the following conditions are true: - the subnetwork being patched has purpose = INTERNAL_HTTPS_LOAD_BALANCER - the subnetwork being patched has role = BACKUP - the patch request is setting the role to ACTIVE. Note that after this patch operation the roles of the ACTIVE and BACKUP subnetworks will be swapped. + optional int32 drain_timeout_seconds = 357707098; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the Subnetwork resource to patch. + string subnetwork = 307827694 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + Subnetwork subnetwork_resource = 42233151 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetGrpcProxies.Patch. See the method description for details. +message PatchTargetGrpcProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // Name of the TargetGrpcProxy resource to patch. + string target_grpc_proxy = 5020283 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TargetGrpcProxy target_grpc_proxy_resource = 328922450 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpProxies.Patch. See the method description for details. +message PatchTargetHttpProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // Name of the TargetHttpProxy resource to patch. + string target_http_proxy = 206872421 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TargetHttpProxy target_http_proxy_resource = 24696744 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpsProxies.Patch. See the method description for details. +message PatchTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // Name of the TargetHttpsProxy resource to patch. + string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TargetHttpsProxy target_https_proxy_resource = 433657473 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for UrlMaps.Patch. See the method description for details. +message PatchUrlMapRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the UrlMap resource to patch. + string url_map = 367020684 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; + +} + +// A matcher for the path portion of the URL. The BackendService from the longest-matched rule will serve the URL. If no rule was matched, the default service will be used. +message PathMatcher { + // defaultRouteAction takes effect when none of the pathRules or routeRules match. The load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices. Only one of defaultRouteAction or defaultUrlRedirect must be set. UrlMaps for external HTTP(S) load balancers support only the urlRewrite action within a pathMatcher's defaultRouteAction. + optional HttpRouteAction default_route_action = 378919466; + + // The full or partial URL to the BackendService resource. This will be used if none of the pathRules or routeRules defined by this PathMatcher are matched. For example, the following are all valid URLs to a BackendService resource: - https://www.googleapis.com/compute/v1/projects/project /global/backendServices/backendService - compute/v1/projects/project/global/backendServices/backendService - global/backendServices/backendService If defaultRouteAction is additionally specified, advanced routing actions like URL Rewrites, etc. take effect prior to sending the request to the backend. However, if defaultService is specified, defaultRouteAction cannot contain any weightedBackendServices. Conversely, if defaultRouteAction specifies any weightedBackendServices, defaultService must not be specified. Only one of defaultService, defaultUrlRedirect or defaultRouteAction.weightedBackendService must be set. Authorization requires one or more of the following Google IAM permissions on the specified resource default_service: - compute.backendBuckets.use - compute.backendServices.use + optional string default_service = 370242231; + + // When none of the specified pathRules or routeRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Not supported when the URL map is bound to target gRPC proxy. + optional HttpRedirectAction default_url_redirect = 359503338; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Specifies changes to request and response headers that need to take effect for the selected backendService. HeaderAction specified here are applied after the matching HttpRouteRule HeaderAction and before the HeaderAction in the UrlMap Note that headerAction is not supported for Loadbalancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + optional HttpHeaderAction header_action = 328077352; + + // The name to which this PathMatcher is referred by the HostRule. + optional string name = 3373707; + + // The list of path rules. Use this list instead of routeRules when routing based on simple path matching is all that's required. The order by which path rules are specified does not matter. Matches are always done on the longest-path-first basis. For example: a pathRule with a path /a/b/c/* will match before /a/b/* irrespective of the order in which those paths appear in this list. Within a given pathMatcher, only one of pathRules or routeRules must be set. + repeated PathRule path_rules = 104439901; + + // The list of HTTP route rules. Use this list instead of pathRules when advanced route matching and routing actions are desired. routeRules are evaluated in order of priority, from the lowest to highest number. Within a given pathMatcher, you can set only one of pathRules or routeRules. + repeated HttpRouteRule route_rules = 376292225; + +} + +// A path-matching rule for a URL. If matched, will use the specified BackendService to handle the traffic arriving at this URL. +message PathRule { + // The list of path patterns to match. Each must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or #, and those chars are not allowed here. + repeated string paths = 106438894; + + // In response to a matching path, the load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If routeAction specifies any weightedBackendServices, service must not be set. Conversely if service is set, routeAction cannot contain any weightedBackendServices. Only one of routeAction or urlRedirect must be set. UrlMaps for external HTTP(S) load balancers support only the urlRewrite action within a pathRule's routeAction. + optional HttpRouteAction route_action = 424563948; + + // The full or partial URL of the backend service resource to which traffic is directed if this rule is matched. If routeAction is additionally specified, advanced routing actions like URL Rewrites, etc. take effect prior to sending the request to the backend. However, if service is specified, routeAction cannot contain any weightedBackendService s. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of urlRedirect, service or routeAction.weightedBackendService must be set. + optional string service = 373540533; + + // When a path pattern is matched, the request is redirected to a URL specified by urlRedirect. If urlRedirect is specified, service or routeAction must not be set. Not supported when the URL map is bound to target gRPC proxy. + optional HttpRedirectAction url_redirect = 405147820; + +} + +// +message PerInstanceConfig { + // The status of applying this per-instance config on the corresponding managed instance. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // The per-instance config is being applied to the instance, but is not yet effective, possibly waiting for the instance to, for example, REFRESH. + APPLYING = 352003508; + + // The per-instance config deletion is being applied on the instance, possibly waiting for the instance to, for example, REFRESH. + DELETING = 528602024; + + // The per-instance config is effective on the instance, meaning that all disks, ips and metadata specified in this config are attached or set on the instance. + EFFECTIVE = 244201863; + + // *[Default]* The default status, when no per-instance config exists. + NONE = 2402104; + + // The per-instance config is set on an instance but not been applied yet. + UNAPPLIED = 483935140; + + // The per-instance config has been deleted, but the deletion is not yet applied. + UNAPPLIED_DELETION = 313956873; + + } + + // Fingerprint of this per-instance config. This field can be used in optimistic locking. It is ignored when inserting a per-instance config. An up-to-date fingerprint must be provided in order to update an existing per-instance config or the field needs to be unset. + optional string fingerprint = 234678500; + + // The name of a per-instance config and its corresponding instance. Serves as a merge key during UpdatePerInstanceConfigs operations, that is, if a per-instance config with the same name exists then it will be updated, otherwise a new one will be created for the VM instance with the same name. An attempt to create a per-instance config for a VM instance that either doesn't exist or is not part of the group will result in an error. + optional string name = 3373707; + + // The intended preserved state for the given instance. Does not contain preserved state generated from a stateful policy. + optional PreservedState preserved_state = 2634026; + + // The status of applying this per-instance config on the corresponding managed instance. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + +} + +// An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members` to a single `role`. Members can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": "BwWWja0YfJA=", "version": 3 } **YAML example:** bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/). +message Policy { + // Specifies cloud audit logging configuration for this policy. + repeated AuditConfig audit_configs = 328080653; + + // Associates a list of `members` to a `role`. Optionally, may specify a `condition` that determines how and when the `bindings` are applied. Each of the `bindings` must contain at least one member. + repeated Binding bindings = 403251854; + + // `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy. **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. + optional string etag = 3123477; + + // This is deprecated and has no effect. Do not use. + optional bool iam_owned = 450566203; + + // This is deprecated and has no effect. Do not use. + repeated Rule rules = 108873975; + + // Specifies the format of the policy. Valid values are `0`, `1`, and `3`. Requests that specify an invalid value are rejected. Any operation that affects conditional role bindings must specify version `3`. This requirement applies to the following operations: * Getting a policy that includes a conditional role binding * Adding a conditional role binding to a policy * Changing a conditional role binding in a policy * Removing any role binding, with or without a condition, from a policy that includes conditions **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). + optional int32 version = 351608024; + +} + +// +message PreconfiguredWafSet { + // List of entities that are currently supported for WAF rules. + repeated WafExpressionSet expression_sets = 474011032; + +} + +// Preserved state for a given instance. +message PreservedState { + // Preserved disks defined for this instance. This map is keyed with the device names of the disks. + map disks = 95594102; + + // Preserved metadata defined for this instance. + map metadata = 86866735; + +} + +// +message PreservedStatePreservedDisk { + // These stateful disks will never be deleted during autohealing, update, instance recreate operations. This flag is used to configure if the disk should be deleted after it is no longer used by the group, e.g. when the given instance or the whole MIG is deleted. Note: disks attached in READ_ONLY mode cannot be auto-deleted. + enum AutoDelete { + // A value indicating that the enum field is not set. + UNDEFINED_AUTO_DELETE = 0; + + NEVER = 74175084; + + ON_PERMANENT_INSTANCE_DELETION = 95727719; + + } + + // The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode. + enum Mode { + // A value indicating that the enum field is not set. + UNDEFINED_MODE = 0; + + // Attaches this disk in read-only mode. Multiple VM instances can use a disk in READ_ONLY mode at a time. + READ_ONLY = 91950261; + + // *[Default]* Attaches this disk in READ_WRITE mode. Only one VM instance at a time can be attached to a disk in READ_WRITE mode. + READ_WRITE = 173607894; + + } + + // These stateful disks will never be deleted during autohealing, update, instance recreate operations. This flag is used to configure if the disk should be deleted after it is no longer used by the group, e.g. when the given instance or the whole MIG is deleted. Note: disks attached in READ_ONLY mode cannot be auto-deleted. + // Check the AutoDelete enum for the list of possible values. + optional string auto_delete = 464761403; + + // The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode. + // Check the Mode enum for the list of possible values. + optional string mode = 3357091; + + // The URL of the disk resource that is stateful and should be attached to the VM instance. + optional string source = 177235995; + +} + +// A request message for Routers.Preview. See the method description for details. +message PreviewRouterRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name of the Router resource to query. + string router = 148608841 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + Router router_resource = 155222084 [(google.api.field_behavior) = REQUIRED]; + +} + +// Represents a Project resource. A project is used to organize resources in a Google Cloud Platform environment. For more information, read about the Resource Hierarchy. +message Project { + // This signifies the default network tier used for configuring resources of the project and can only take the following values: PREMIUM, STANDARD. Initially the default network tier is PREMIUM. + enum DefaultNetworkTier { + // A value indicating that the enum field is not set. + UNDEFINED_DEFAULT_NETWORK_TIER = 0; + + // High quality, Google-grade network tier, support for all networking products. + PREMIUM = 399530551; + + // Public internet quality, only limited support for other networking products. + STANDARD = 484642493; + + } + + // [Output Only] The role this project has in a shared VPC configuration. Currently, only projects with the host role, which is specified by the value HOST, are differentiated. + enum XpnProjectStatus { + // A value indicating that the enum field is not set. + UNDEFINED_XPN_PROJECT_STATUS = 0; + + HOST = 2223528; + + UNSPECIFIED_XPN_PROJECT_STATUS = 340393257; + + } + + // Metadata key/value pairs available to all instances contained in this project. See Custom metadata for more information. + optional Metadata common_instance_metadata = 185794117; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // This signifies the default network tier used for configuring resources of the project and can only take the following values: PREMIUM, STANDARD. Initially the default network tier is PREMIUM. + // Check the DefaultNetworkTier enum for the list of possible values. + optional string default_network_tier = 471753361; + + // [Output Only] Default service account used by VMs running in this project. + optional string default_service_account = 298712229; + + // An optional textual description of the resource. + optional string description = 422937596; + + // Restricted features enabled for use on this project. + repeated string enabled_features = 469017467; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. This is *not* the project ID, and is just a unique ID used by Compute Engine to identify resources. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#project for projects. + optional string kind = 3292052; + + // The project ID. For example: my-example-project. Use the project ID to make requests to Compute Engine. + optional string name = 3373707; + + // [Output Only] Quotas assigned to this project. + repeated Quota quotas = 125341947; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // The naming prefix for daily usage reports and the Google Cloud Storage bucket where they are stored. + optional UsageExportLocation usage_export_location = 347543874; + + // [Output Only] The role this project has in a shared VPC configuration. Currently, only projects with the host role, which is specified by the value HOST, are differentiated. + // Check the XpnProjectStatus enum for the list of possible values. + optional string xpn_project_status = 228419265; + +} + +// +message ProjectsDisableXpnResourceRequest { + // Service resource (a.k.a service project) ID. + optional XpnResourceId xpn_resource = 133384631; + +} + +// +message ProjectsEnableXpnResourceRequest { + // Service resource (a.k.a service project) ID. + optional XpnResourceId xpn_resource = 133384631; + +} + +// +message ProjectsGetXpnResources { + // [Output Only] Type of resource. Always compute#projectsGetXpnResources for lists of service resources (a.k.a service projects) + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // Service resources (a.k.a service projects) attached to this project as their shared VPC host. + repeated XpnResourceId resources = 164412965; + +} + +// +message ProjectsListXpnHostsRequest { + // Optional organization ID managed by Cloud Resource Manager, for which to list shared VPC host projects. If not specified, the organization will be inferred from the project. + optional string organization = 105180467; + +} + +// +message ProjectsSetDefaultNetworkTierRequest { + // Default network tier to be set. + enum NetworkTier { + // A value indicating that the enum field is not set. + UNDEFINED_NETWORK_TIER = 0; + + // High quality, Google-grade network tier, support for all networking products. + PREMIUM = 399530551; + + // Public internet quality, only limited support for other networking products. + STANDARD = 484642493; + + } + + // Default network tier to be set. + // Check the NetworkTier enum for the list of possible values. + optional string network_tier = 517397843; + +} + +// A public advertised prefix represents an aggregated IP prefix or netblock which customers bring to cloud. The IP prefix is a single unit of route advertisement and is announced globally to the internet. +message PublicAdvertisedPrefix { + // The status of the public advertised prefix. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + INITIAL = 518841124; + + PREFIX_CONFIGURATION_COMPLETE = 480889551; + + PREFIX_CONFIGURATION_IN_PROGRESS = 378550961; + + PREFIX_REMOVAL_IN_PROGRESS = 284375783; + + PTR_CONFIGURED = 513497167; + + REVERSE_DNS_LOOKUP_FAILED = 295755183; + + VALIDATED = 66197998; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // The IPv4 address to be used for reverse DNS verification. + optional string dns_verification_ip = 241011381; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a new PublicAdvertisedPrefix. An up-to-date fingerprint must be provided in order to update the PublicAdvertisedPrefix, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a PublicAdvertisedPrefix. + optional string fingerprint = 234678500; + + // [Output Only] The unique identifier for the resource type. The server generates this identifier. + optional uint64 id = 3355; + + // The IPv4 address range, in CIDR format, represented by this public advertised prefix. + optional string ip_cidr_range = 98117322; + + // [Output Only] Type of the resource. Always compute#publicAdvertisedPrefix for public advertised prefixes. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // [Output Only] The list of public delegated prefixes that exist for this public advertised prefix. + repeated PublicAdvertisedPrefixPublicDelegatedPrefix public_delegated_prefixs = 425811723; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The shared secret to be used for reverse DNS verification. + optional string shared_secret = 381932490; + + // The status of the public advertised prefix. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + +} + +// +message PublicAdvertisedPrefixList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of PublicAdvertisedPrefix resources. + repeated PublicAdvertisedPrefix items = 100526016; + + // [Output Only] Type of the resource. Always compute#publicAdvertisedPrefix for public advertised prefixes. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents a CIDR range which can be used to assign addresses. +message PublicAdvertisedPrefixPublicDelegatedPrefix { + // The IP address range of the public delegated prefix + optional string ip_range = 145092645; + + // The name of the public delegated prefix + optional string name = 3373707; + + // The project number of the public delegated prefix + optional string project = 227560217; + + // The region of the public delegated prefix if it is regional. If absent, the prefix is global. + optional string region = 138946292; + + // The status of the public delegated prefix. Possible values are: INITIALIZING: The public delegated prefix is being initialized and addresses cannot be created yet. ANNOUNCED: The public delegated prefix is active. + optional string status = 181260274; + +} + +// A PublicDelegatedPrefix resource represents an IP block within a PublicAdvertisedPrefix that is configured within a single cloud scope (global or region). IPs in the block can be allocated to resources within that scope. Public delegated prefixes may be further broken up into smaller IP blocks in the same scope as the parent block. +message PublicDelegatedPrefix { + // [Output Only] The status of the public delegated prefix. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + ANNOUNCED = 365103355; + + DELETING = 528602024; + + INITIALIZING = 306588749; + + READY_TO_ANNOUNCE = 64641265; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a new PublicDelegatedPrefix. An up-to-date fingerprint must be provided in order to update the PublicDelegatedPrefix, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a PublicDelegatedPrefix. + optional string fingerprint = 234678500; + + // [Output Only] The unique identifier for the resource type. The server generates this identifier. + optional uint64 id = 3355; + + // The IPv4 address range, in CIDR format, represented by this public delegated prefix. + optional string ip_cidr_range = 98117322; + + // If true, the prefix will be live migrated. + optional bool is_live_migration = 511823856; + + // [Output Only] Type of the resource. Always compute#publicDelegatedPrefix for public delegated prefixes. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // The URL of parent prefix. Either PublicAdvertisedPrefix or PublicDelegatedPrefix. + optional string parent_prefix = 15233991; + + // The list of sub public delegated prefixes that exist for this public delegated prefix. + repeated PublicDelegatedPrefixPublicDelegatedSubPrefix public_delegated_sub_prefixs = 188940044; + + // [Output Only] URL of the region where the public delegated prefix resides. This field applies only to the region resource. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The status of the public delegated prefix. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + +} + +// +message PublicDelegatedPrefixAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of PublicDelegatedPrefixesScopedList resources. + map items = 100526016; + + // [Output Only] Type of the resource. Always compute#publicDelegatedPrefixAggregatedList for aggregated lists of public delegated prefixes. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message PublicDelegatedPrefixList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of PublicDelegatedPrefix resources. + repeated PublicDelegatedPrefix items = 100526016; + + // [Output Only] Type of the resource. Always compute#publicDelegatedPrefixList for public delegated prefixes. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents a sub PublicDelegatedPrefix. +message PublicDelegatedPrefixPublicDelegatedSubPrefix { + // [Output Only] The status of the sub public delegated prefix. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + ACTIVE = 314733318; + + INACTIVE = 270421099; + + } + + // Name of the project scoping this PublicDelegatedSubPrefix. + optional string delegatee_project = 414860634; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // The IPv4 address range, in CIDR format, represented by this sub public delegated prefix. + optional string ip_cidr_range = 98117322; + + // Whether the sub prefix is delegated to create Address resources in the delegatee project. + optional bool is_address = 352617951; + + // The name of the sub public delegated prefix. + optional string name = 3373707; + + // [Output Only] The region of the sub public delegated prefix if it is regional. If absent, the sub prefix is global. + optional string region = 138946292; + + // [Output Only] The status of the sub public delegated prefix. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + +} + +// +message PublicDelegatedPrefixesScopedList { + // [Output Only] A list of PublicDelegatedPrefixes contained in this scope. + repeated PublicDelegatedPrefix public_delegated_prefixes = 315261206; + + // [Output Only] Informational warning which replaces the list of public delegated prefixes when the list is empty. + optional Warning warning = 50704284; + +} + +// A quotas entry. +message Quota { + // [Output Only] Name of the quota metric. + enum Metric { + // A value indicating that the enum field is not set. + UNDEFINED_METRIC = 0; + + A2_CPUS = 153206585; + + AFFINITY_GROUPS = 108303563; + + AUTOSCALERS = 471248988; + + BACKEND_BUCKETS = 137626846; + + BACKEND_SERVICES = 269623753; + + C2D_CPUS = 508182517; + + C2_CPUS = 317601211; + + C3_CPUS = 346230362; + + COMMITMENTS = 456141790; + + COMMITTED_A2_CPUS = 59330902; + + COMMITTED_C2D_CPUS = 282390904; + + COMMITTED_C2_CPUS = 223725528; + + COMMITTED_C3_CPUS = 252354679; + + COMMITTED_CPUS = 292394702; + + COMMITTED_E2_CPUS = 388120154; + + COMMITTED_LICENSES = 357606869; + + COMMITTED_LOCAL_SSD_TOTAL_GB = 308393480; + + COMMITTED_MEMORY_OPTIMIZED_CPUS = 489057886; + + COMMITTED_N2A_CPUS = 40064304; + + COMMITTED_N2D_CPUS = 125951757; + + COMMITTED_N2_CPUS = 322589603; + + COMMITTED_NVIDIA_A100_GPUS = 375799445; + + COMMITTED_NVIDIA_K80_GPUS = 3857188; + + COMMITTED_NVIDIA_P100_GPUS = 107528100; + + COMMITTED_NVIDIA_P4_GPUS = 347952897; + + COMMITTED_NVIDIA_T4_GPUS = 139871237; + + COMMITTED_NVIDIA_V100_GPUS = 219562; + + COMMITTED_T2D_CPUS = 382266439; + + // Guest CPUs + CPUS = 2075595; + + CPUS_ALL_REGIONS = 470911149; + + DISKS_TOTAL_GB = 353520543; + + E2_CPUS = 481995837; + + EXTERNAL_NETWORK_LB_FORWARDING_RULES = 374298265; + + EXTERNAL_PROTOCOL_FORWARDING_RULES = 63478888; + + EXTERNAL_VPN_GATEWAYS = 272457134; + + FIREWALLS = 374485843; + + FORWARDING_RULES = 432668949; + + GLOBAL_INTERNAL_ADDRESSES = 42738332; + + GPUS_ALL_REGIONS = 39387177; + + HEALTH_CHECKS = 289347502; + + IMAGES = 15562360; + + INSTANCES = 131337822; + + INSTANCE_GROUPS = 355919038; + + INSTANCE_GROUP_MANAGERS = 101798192; + + INSTANCE_TEMPLATES = 226188271; + + INTERCONNECTS = 415204741; + + INTERCONNECT_ATTACHMENTS_PER_REGION = 159968086; + + INTERCONNECT_ATTACHMENTS_TOTAL_MBPS = 425090419; + + INTERCONNECT_TOTAL_GBPS = 285341866; + + INTERNAL_ADDRESSES = 197899392; + + INTERNAL_TRAFFIC_DIRECTOR_FORWARDING_RULES = 266433668; + + IN_PLACE_SNAPSHOTS = 151359133; + + IN_USE_ADDRESSES = 402125072; + + IN_USE_BACKUP_SCHEDULES = 32786705; + + IN_USE_SNAPSHOT_SCHEDULES = 462104083; + + LOCAL_SSD_TOTAL_GB = 330878021; + + M1_CPUS = 37203366; + + M2_CPUS = 65832517; + + MACHINE_IMAGES = 446986640; + + N2A_CPUS = 265855917; + + N2D_CPUS = 351743370; + + N2_CPUS = 416465286; + + NETWORKS = 485481477; + + NETWORK_ENDPOINT_GROUPS = 102144909; + + NETWORK_FIREWALL_POLICIES = 101117374; + + NODE_GROUPS = 24624817; + + NODE_TEMPLATES = 474896668; + + NVIDIA_A100_GPUS = 504872978; + + NVIDIA_K80_GPUS = 163886599; + + NVIDIA_P100_GPUS = 236601633; + + NVIDIA_P100_VWS_GPUS = 213970574; + + NVIDIA_P4_GPUS = 283841470; + + NVIDIA_P4_VWS_GPUS = 528296619; + + NVIDIA_T4_GPUS = 75759810; + + NVIDIA_T4_VWS_GPUS = 319813039; + + NVIDIA_V100_GPUS = 129293095; + + PACKET_MIRRORINGS = 15578407; + + PD_EXTREME_TOTAL_PROVISIONED_IOPS = 69593965; + + PREEMPTIBLE_CPUS = 251184841; + + PREEMPTIBLE_LOCAL_SSD_GB = 260819336; + + PREEMPTIBLE_NVIDIA_A100_GPUS = 68832784; + + PREEMPTIBLE_NVIDIA_K80_GPUS = 374960201; + + PREEMPTIBLE_NVIDIA_P100_GPUS = 337432351; + + PREEMPTIBLE_NVIDIA_P100_VWS_GPUS = 313544076; + + PREEMPTIBLE_NVIDIA_P4_GPUS = 429197628; + + PREEMPTIBLE_NVIDIA_P4_VWS_GPUS = 252981545; + + PREEMPTIBLE_NVIDIA_T4_GPUS = 221115968; + + PREEMPTIBLE_NVIDIA_T4_VWS_GPUS = 44497965; + + PREEMPTIBLE_NVIDIA_V100_GPUS = 230123813; + + PSC_ILB_CONSUMER_FORWARDING_RULES_PER_PRODUCER_NETWORK = 231164291; + + PSC_INTERNAL_LB_FORWARDING_RULES = 169005435; + + PUBLIC_ADVERTISED_PREFIXES = 471371980; + + PUBLIC_DELEGATED_PREFIXES = 532465974; + + REGIONAL_AUTOSCALERS = 29363772; + + REGIONAL_INSTANCE_GROUP_MANAGERS = 37543696; + + RESERVATIONS = 32644647; + + RESOURCE_POLICIES = 83955297; + + ROUTERS = 493018666; + + ROUTES = 275680074; + + SECURITY_POLICIES = 189518703; + + SECURITY_POLICIES_PER_REGION = 249041734; + + SECURITY_POLICY_CEVAL_RULES = 470815689; + + SECURITY_POLICY_RULES = 203549225; + + SECURITY_POLICY_RULES_PER_REGION = 126510156; + + SERVICE_ATTACHMENTS = 471521510; + + // The total number of snapshots allowed for a single project. + SNAPSHOTS = 343405327; + + SSD_TOTAL_GB = 161732561; + + SSL_CERTIFICATES = 378372399; + + STATIC_ADDRESSES = 93624049; + + STATIC_BYOIP_ADDRESSES = 275809649; + + SUBNETWORKS = 421330469; + + T2D_CPUS = 71187140; + + TARGET_HTTPS_PROXIES = 219522506; + + TARGET_HTTP_PROXIES = 164117155; + + TARGET_INSTANCES = 284519728; + + TARGET_POOLS = 348261257; + + TARGET_SSL_PROXIES = 159216235; + + TARGET_TCP_PROXIES = 182243136; + + TARGET_VPN_GATEWAYS = 75029928; + + URL_MAPS = 378660743; + + VPN_GATEWAYS = 35620282; + + VPN_TUNNELS = 104327296; + + XPN_SERVICE_PROJECTS = 95191981; + + } + + // [Output Only] Quota limit for this metric. + optional double limit = 102976443; + + // [Output Only] Name of the quota metric. + // Check the Metric enum for the list of possible values. + optional string metric = 533067184; + + // [Output Only] Owning resource. This is the resource on which this quota is applied. + optional string owner = 106164915; + + // [Output Only] Current usage of this metric. + optional double usage = 111574433; + +} + +// The parameters of the raw disk image. +message RawDisk { + // The format used to encode and transmit the block device, which should be TAR. This is just a container and transmission format and not a runtime format. Provided by the client when the disk image is created. + enum ContainerType { + // A value indicating that the enum field is not set. + UNDEFINED_CONTAINER_TYPE = 0; + + TAR = 82821; + + } + + // The format used to encode and transmit the block device, which should be TAR. This is just a container and transmission format and not a runtime format. Provided by the client when the disk image is created. + // Check the ContainerType enum for the list of possible values. + optional string container_type = 318809144; + + // [Deprecated] This field is deprecated. An optional SHA1 checksum of the disk image before unpackaging provided by the client when the disk image is created. + optional string sha1_checksum = 314444349; + + // The full Google Cloud Storage URL where the raw disk image archive is stored. The following are valid formats for the URL: - https://storage.googleapis.com/bucket_name/image_archive_name - https://storage.googleapis.com/bucket_name/folder_name/ image_archive_name In order to create an image, you must provide the full or partial URL of one of the following: - The rawDisk.source URL - The sourceDisk URL - The sourceImage URL - The sourceSnapshot URL + optional string source = 177235995; + +} + +// A request message for InstanceGroupManagers.RecreateInstances. See the method description for details. +message RecreateInstancesInstanceGroupManagerRequest { + // The name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManagersRecreateInstancesRequest instance_group_managers_recreate_instances_request_resource = 21405952 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the managed instance group is located. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionInstanceGroupManagers.RecreateInstances. See the method description for details. +message RecreateInstancesRegionInstanceGroupManagerRequest { + // Name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionInstanceGroupManagersRecreateRequest region_instance_group_managers_recreate_request_resource = 170999316 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// Represents a reference to a resource. +message Reference { + // [Output Only] Type of the resource. Always compute#reference for references. + optional string kind = 3292052; + + // A description of the reference type with no implied semantics. Possible values include: 1. MEMBER_OF + optional string reference_type = 247521198; + + // URL of the resource which refers to the target. + optional string referrer = 351173663; + + // URL of the resource to which this reference points. + optional string target = 192835985; + +} + +// Represents a Region resource. A region is a geographical area where a resource is located. For more information, read Regions and Zones. +message Region { + // [Output Only] Status of the region, either UP or DOWN. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + DOWN = 2104482; + + UP = 2715; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // [Output Only] The deprecation status associated with this region. + optional DeprecationStatus deprecated = 515138995; + + // [Output Only] Textual description of the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#region for regions. + optional string kind = 3292052; + + // [Output Only] Name of the resource. + optional string name = 3373707; + + // [Output Only] Quotas assigned to this region. + repeated Quota quotas = 125341947; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] Status of the region, either UP or DOWN. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // [Output Only] Reserved for future use. + optional bool supports_pzs = 83983214; + + // [Output Only] A list of zones available in this region, in the form of resource URLs. + repeated string zones = 116085319; + +} + +// Contains a list of autoscalers. +message RegionAutoscalerList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Autoscaler resources. + repeated Autoscaler items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message RegionDiskTypeList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of DiskType resources. + repeated DiskType items = 100526016; + + // [Output Only] Type of resource. Always compute#regionDiskTypeList for region disk types. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message RegionDisksAddResourcePoliciesRequest { + // Resource policies to be added to this disk. + repeated string resource_policies = 22220385; + +} + +// +message RegionDisksRemoveResourcePoliciesRequest { + // Resource policies to be removed from this disk. + repeated string resource_policies = 22220385; + +} + +// +message RegionDisksResizeRequest { + // The new size of the regional persistent disk, which is specified in GB. + optional int64 size_gb = 494929369; + +} + +// Contains a list of InstanceGroup resources. +message RegionInstanceGroupList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InstanceGroup resources. + repeated InstanceGroup items = 100526016; + + // The resource type. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// RegionInstanceGroupManagers.deletePerInstanceConfigs +message RegionInstanceGroupManagerDeleteInstanceConfigReq { + // The list of instance names for which we want to delete per-instance configs on this managed instance group. + repeated string names = 104585032; + +} + +// Contains a list of managed instance groups. +message RegionInstanceGroupManagerList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InstanceGroupManager resources. + repeated InstanceGroupManager items = 100526016; + + // [Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups that exist in th regional scope. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// RegionInstanceGroupManagers.patchPerInstanceConfigs +message RegionInstanceGroupManagerPatchInstanceConfigReq { + // The list of per-instance configs to insert or patch on this managed instance group. + repeated PerInstanceConfig per_instance_configs = 526265001; + +} + +// RegionInstanceGroupManagers.updatePerInstanceConfigs +message RegionInstanceGroupManagerUpdateInstanceConfigReq { + // The list of per-instance configs to insert or patch on this managed instance group. + repeated PerInstanceConfig per_instance_configs = 526265001; + +} + +// +message RegionInstanceGroupManagersAbandonInstancesRequest { + // The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + repeated string instances = 29097598; + +} + +// RegionInstanceGroupManagers.applyUpdatesToInstances +message RegionInstanceGroupManagersApplyUpdatesRequest { + // Flag to update all instances instead of specified list of “instances”. If the flag is set to true then the instances may not be specified in the request. + optional bool all_instances = 403676512; + + // The list of URLs of one or more instances for which you want to apply updates. Each URL can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + repeated string instances = 29097598; + + // The minimal action that you want to perform on each instance during the update: - REPLACE: At minimum, delete the instance and create it again. - RESTART: Stop the instance and start it again. - REFRESH: Do not stop the instance. - NONE: Do not disrupt the instance at all. By default, the minimum action is NONE. If your update requires a more disruptive action than you set with this flag, the necessary action is performed to execute the update. + optional string minimal_action = 270567060; + + // The most disruptive action that you want to perform on each instance during the update: - REPLACE: Delete the instance and create it again. - RESTART: Stop the instance and start it again. - REFRESH: Do not stop the instance. - NONE: Do not disrupt the instance at all. By default, the most disruptive allowed action is REPLACE. If your update requires a more disruptive action than you set with this flag, the update request will fail. + optional string most_disruptive_allowed_action = 66103053; + +} + +// RegionInstanceGroupManagers.createInstances +message RegionInstanceGroupManagersCreateInstancesRequest { + // [Required] List of specifications of per-instance configs. + repeated PerInstanceConfig instances = 29097598; + +} + +// +message RegionInstanceGroupManagersDeleteInstancesRequest { + // The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + repeated string instances = 29097598; + + // Specifies whether the request should proceed despite the inclusion of instances that are not members of the group or that are already in the process of being deleted or abandoned. If this field is set to `false` and such an instance is specified in the request, the operation fails. The operation always fails if the request contains a malformed instance URL or a reference to an instance that exists in a zone or region other than the group's zone or region. + optional bool skip_instances_on_validation_error = 40631073; + +} + +// +message RegionInstanceGroupManagersListErrorsResponse { + // [Output Only] The list of errors of the managed instance group. + repeated InstanceManagedByIgmError items = 100526016; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + +} + +// +message RegionInstanceGroupManagersListInstanceConfigsResp { + // [Output Only] The list of PerInstanceConfig. + repeated PerInstanceConfig items = 100526016; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message RegionInstanceGroupManagersListInstancesResponse { + // A list of managed instances. + repeated ManagedInstance managed_instances = 336219614; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + +} + +// +message RegionInstanceGroupManagersRecreateRequest { + // The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]. + repeated string instances = 29097598; + +} + +// +message RegionInstanceGroupManagersSetTargetPoolsRequest { + // Fingerprint of the target pools information, which is a hash of the contents. This field is used for optimistic locking when you update the target pool entries. This field is optional. + optional string fingerprint = 234678500; + + // The URL of all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group. + repeated string target_pools = 336072617; + +} + +// +message RegionInstanceGroupManagersSetTemplateRequest { + // URL of the InstanceTemplate resource from which all new instances will be created. + optional string instance_template = 309248228; + +} + +// +message RegionInstanceGroupsListInstances { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of InstanceWithNamedPorts resources. + repeated InstanceWithNamedPorts items = 100526016; + + // The resource type. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message RegionInstanceGroupsListInstancesRequest { + // Instances in which state should be returned. Valid options are: 'ALL', 'RUNNING'. By default, it lists all instances. + enum InstanceState { + // A value indicating that the enum field is not set. + UNDEFINED_INSTANCE_STATE = 0; + + // Matches any status of the instances, running, non-running and others. + ALL = 64897; + + // Instance is in RUNNING state if it is running. + RUNNING = 121282975; + + } + + // Instances in which state should be returned. Valid options are: 'ALL', 'RUNNING'. By default, it lists all instances. + // Check the InstanceState enum for the list of possible values. + optional string instance_state = 92223591; + + // Name of port user is interested in. It is optional. If it is set, only information about this ports will be returned. If it is not set, all the named ports will be returned. Always lists all instances. + optional string port_name = 41534345; + +} + +// +message RegionInstanceGroupsSetNamedPortsRequest { + // The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request. + optional string fingerprint = 234678500; + + // The list of named ports to set for this instance group. + repeated NamedPort named_ports = 427598732; + +} + +// Contains a list of region resources. +message RegionList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Region resources. + repeated Region items = 100526016; + + // [Output Only] Type of resource. Always compute#regionList for lists of regions. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message RegionSetLabelsRequest { + // The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint. + optional string label_fingerprint = 178124825; + + // The labels to set for this resource. + map labels = 500195327; + +} + +// +message RegionSetPolicyRequest { + // Flatten Policy to create a backwacd compatible wire-format. Deprecated. Use 'policy' to specify bindings. + repeated Binding bindings = 403251854; + + // Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify the etag. + optional string etag = 3123477; + + // REQUIRED: The complete policy to be applied to the 'resource'. The size of the policy is limited to a few 10s of KB. An empty policy is in general a valid policy but certain services (like Projects) might reject them. + optional Policy policy = 91071794; + +} + +// +message RegionTargetHttpsProxiesSetSslCertificatesRequest { + // New set of SslCertificate resources to associate with this TargetHttpsProxy resource. Currently exactly one SslCertificate resource must be specified. + repeated string ssl_certificates = 366006543; + +} + +// +message RegionUrlMapsValidateRequest { + // Content of the UrlMap to be validated. + optional UrlMap resource = 195806222; + +} + +// A request message for FirewallPolicies.RemoveAssociation. See the method description for details. +message RemoveAssociationFirewallPolicyRequest { + // Name of the firewall policy to update. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + + // Name for the attachment that will be removed. + optional string name = 3373707; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for TargetPools.RemoveHealthCheck. See the method description for details. +message RemoveHealthCheckTargetPoolRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the target pool to remove health checks from. + string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TargetPoolsRemoveHealthCheckRequest target_pools_remove_health_check_request_resource = 304985011 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetPools.RemoveInstance. See the method description for details. +message RemoveInstanceTargetPoolRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetPool resource to remove instances from. + string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TargetPoolsRemoveInstanceRequest target_pools_remove_instance_request_resource = 29548547 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceGroups.RemoveInstances. See the method description for details. +message RemoveInstancesInstanceGroupRequest { + // The name of the instance group where the specified instances will be removed. + string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupsRemoveInstancesRequest instance_groups_remove_instances_request_resource = 390981817 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the instance group is located. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Networks.RemovePeering. See the method description for details. +message RemovePeeringNetworkRequest { + // Name of the network resource to remove peering from. + string network = 232872494 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NetworksRemovePeeringRequest networks_remove_peering_request_resource = 421162494 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Disks.RemoveResourcePolicies. See the method description for details. +message RemoveResourcePoliciesDiskRequest { + // The disk name for this request. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + DisksRemoveResourcePoliciesRequest disks_remove_resource_policies_request_resource = 436756718 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Instances.RemoveResourcePolicies. See the method description for details. +message RemoveResourcePoliciesInstanceRequest { + // The instance name for this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstancesRemoveResourcePoliciesRequest instances_remove_resource_policies_request_resource = 49229558 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionDisks.RemoveResourcePolicies. See the method description for details. +message RemoveResourcePoliciesRegionDiskRequest { + // The disk name for this request. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionDisksRemoveResourcePoliciesRequest region_disks_remove_resource_policies_request_resource = 8741283 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for FirewallPolicies.RemoveRule. See the method description for details. +message RemoveRuleFirewallPolicyRequest { + // Name of the firewall policy to update. + string firewall_policy = 498173265 [(google.api.field_behavior) = REQUIRED]; + + // The priority of the rule to remove from the firewall policy. + optional int32 priority = 445151652; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for SecurityPolicies.RemoveRule. See the method description for details. +message RemoveRuleSecurityPolicyRequest { + // The priority of the rule to remove from the security policy. + optional int32 priority = 445151652; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the security policy to update. + string security_policy = 171082513 [(google.api.field_behavior) = REQUIRED]; + +} + +// A policy that specifies how requests intended for the route's backends are shadowed to a separate mirrored backend service. Loadbalancer does not wait for responses from the shadow service. Prior to sending traffic to the shadow service, the host / authority header is suffixed with -shadow. +message RequestMirrorPolicy { + // The full or partial URL to the BackendService resource being mirrored to. + optional string backend_service = 306946058; + +} + +// Represents a reservation resource. A reservation ensures that capacity is held in a specific zone even if the reserved VMs are not running. For more information, read Reserving zonal resources. +message Reservation { + // [Output Only] The status of the reservation. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // Resources are being allocated for the reservation. + CREATING = 455564985; + + // Reservation is currently being deleted. + DELETING = 528602024; + + INVALID = 530283991; + + // Reservation has allocated all its resources. + READY = 77848963; + + // Reservation is currently being resized. + UPDATING = 494614342; + + } + + // [Output Only] Full or partial URL to a parent commitment. This field displays for reservations that are tied to a commitment. + optional string commitment = 482134805; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#reservations for reservations. + optional string kind = 3292052; + + // The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // [Output Only] Reserved for future use. + optional bool satisfies_pzs = 480964267; + + // [Output Only] Server-defined fully-qualified URL for this resource. + optional string self_link = 456214797; + + // Reservation for instances with specific machine shapes. + optional AllocationSpecificSKUReservation specific_reservation = 404901951; + + // Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation. + optional bool specific_reservation_required = 226550687; + + // [Output Only] The status of the reservation. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment. + optional string zone = 3744684; + +} + +// Specifies the reservations that this instance can consume from. +message ReservationAffinity { + // Specifies the type of reservation from which this instance can consume resources: ANY_RESERVATION (default), SPECIFIC_RESERVATION, or NO_RESERVATION. See Consuming reserved instances for examples. + enum ConsumeReservationType { + // A value indicating that the enum field is not set. + UNDEFINED_CONSUME_RESERVATION_TYPE = 0; + + // Consume any allocation available. + ANY_RESERVATION = 200008121; + + // Do not consume from any allocated capacity. + NO_RESERVATION = 169322030; + + // Must consume from a specific reservation. Must specify key value fields for specifying the reservations. + SPECIFIC_RESERVATION = 229889055; + + UNSPECIFIED = 526786327; + + } + + // Specifies the type of reservation from which this instance can consume resources: ANY_RESERVATION (default), SPECIFIC_RESERVATION, or NO_RESERVATION. See Consuming reserved instances for examples. + // Check the ConsumeReservationType enum for the list of possible values. + optional string consume_reservation_type = 300736944; + + // Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify googleapis.com/reservation-name as the key and specify the name of your reservation as its value. + optional string key = 106079; + + // Corresponds to the label values of a reservation resource. This can be either a name to a reservation in the same project or "projects/different-project/reservations/some-reservation-name" to target a shared reservation in the same zone but in a different project. + repeated string values = 249928994; + +} + +// Contains a list of reservations. +message ReservationAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Allocation resources. + map items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message ReservationList { + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional string id = 3355; + + // [Output Only] A list of Allocation resources. + repeated Reservation items = 100526016; + + // [Output Only] Type of resource.Always compute#reservationsList for listsof reservations + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message ReservationsResizeRequest { + // Number of allocated resources can be resized with minimum = 1 and maximum = 1000. + optional int64 specific_sku_count = 13890720; + +} + +// +message ReservationsScopedList { + // A list of reservations contained in this scope. + repeated Reservation reservations = 399717927; + + // Informational warning which replaces the list of reservations when the list is empty. + optional Warning warning = 50704284; + +} + +// A request message for Instances.Reset. See the method description for details. +message ResetInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Disks.Resize. See the method description for details. +message ResizeDiskRequest { + // The name of the persistent disk. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + DisksResizeRequest disks_resize_request_resource = 78307616 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for InstanceGroupManagers.Resize. See the method description for details. +message ResizeInstanceGroupManagerRequest { + // The name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter. + int32 size = 3530753 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone where the managed instance group is located. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionDisks.Resize. See the method description for details. +message ResizeRegionDiskRequest { + // Name of the regional persistent disk. + string disk = 3083677 [(google.api.field_behavior) = REQUIRED]; + + // The project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionDisksResizeRequest region_disks_resize_request_resource = 446633237 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionInstanceGroupManagers.Resize. See the method description for details. +message ResizeRegionInstanceGroupManagerRequest { + // Name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Number of instances that should exist in this instance group manager. + int32 size = 3530753 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Reservations.Resize. See the method description for details. +message ResizeReservationRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the reservation to update. + string reservation = 47530956 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + ReservationsResizeRequest reservations_resize_request_resource = 389262801 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// Commitment for a particular resource (a Commitment is composed of one or more of these). +message ResourceCommitment { + // Type of resource for which this commitment applies. Possible values are VCPU and MEMORY + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + ACCELERATOR = 429815371; + + LOCAL_SSD = 508934896; + + MEMORY = 123056385; + + UNSPECIFIED = 526786327; + + VCPU = 2628978; + + } + + // Name of the accelerator type resource. Applicable only when the type is ACCELERATOR. + optional string accelerator_type = 138031246; + + // The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU. + optional int64 amount = 196759640; + + // Type of resource for which this commitment applies. Possible values are VCPU and MEMORY + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// +message ResourceGroupReference { + // A URI referencing one of the instance groups or network endpoint groups listed in the backend service. + optional string group = 98629247; + +} + +// +message ResourcePoliciesScopedList { + // A list of resourcePolicies contained in this scope. + repeated ResourcePolicy resource_policies = 22220385; + + // Informational warning which replaces the list of resourcePolicies when the list is empty. + optional Warning warning = 50704284; + +} + +// Represents a Resource Policy resource. You can use resource policies to schedule actions for some Compute Engine resources. For example, you can use them to schedule persistent disk snapshots. +message ResourcePolicy { + // [Output Only] The status of resource policy creation. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // Resource policy is being created. + CREATING = 455564985; + + // Resource policy is being deleted. + DELETING = 528602024; + + // Resource policy is expired and will not run again. + EXPIRED = 482489093; + + INVALID = 530283991; + + // Resource policy is ready to be used. + READY = 77848963; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + optional string description = 422937596; + + // Resource policy for instances for placement configuration. + optional ResourcePolicyGroupPlacementPolicy group_placement_policy = 10931596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // Resource policy for scheduling instance operations. + optional ResourcePolicyInstanceSchedulePolicy instance_schedule_policy = 344877104; + + // [Output Only] Type of the resource. Always compute#resource_policies for resource policies. + optional string kind = 3292052; + + // The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + optional string region = 138946292; + + // [Output Only] The system status of the resource policy. + optional ResourcePolicyResourceStatus resource_status = 249429315; + + // [Output Only] Server-defined fully-qualified URL for this resource. + optional string self_link = 456214797; + + // Resource policy for persistent disks for creating snapshots. + optional ResourcePolicySnapshotSchedulePolicy snapshot_schedule_policy = 218131295; + + // [Output Only] The status of resource policy creation. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + +} + +// Contains a list of resourcePolicies. +message ResourcePolicyAggregatedList { + optional string etag = 3123477; + + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of ResourcePolicy resources. + map items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Time window specified for daily operations. +message ResourcePolicyDailyCycle { + // Defines a schedule with units measured in months. The value determines how many months pass between the start of each cycle. + optional int32 days_in_cycle = 369790004; + + // [Output only] A predetermined duration for the window, automatically chosen to be the smallest possible in the given scenario. + optional string duration = 155471252; + + // Start time of the window. This must be in UTC format that resolves to one of 00:00, 04:00, 08:00, 12:00, 16:00, or 20:00. For example, both 13:00-5 and 08:00 are valid. + optional string start_time = 37467274; + +} + +// A GroupPlacementPolicy specifies resource placement configuration. It specifies the failure bucket separation as well as network locality +message ResourcePolicyGroupPlacementPolicy { + // Specifies network collocation + enum Collocation { + // A value indicating that the enum field is not set. + UNDEFINED_COLLOCATION = 0; + + COLLOCATED = 103257554; + + UNSPECIFIED_COLLOCATION = 464308205; + + } + + // The number of availability domains instances will be spread across. If two instances are in different availability domain, they will not be put in the same low latency network + optional int32 availability_domain_count = 12453432; + + // Specifies network collocation + // Check the Collocation enum for the list of possible values. + optional string collocation = 511156533; + + // Number of vms in this placement group + optional int32 vm_count = 261463431; + +} + +// Time window specified for hourly operations. +message ResourcePolicyHourlyCycle { + // [Output only] Duration of the time window, automatically chosen to be smallest possible in the given scenario. + optional string duration = 155471252; + + // Defines a schedule with units measured in hours. The value determines how many hours pass between the start of each cycle. + optional int32 hours_in_cycle = 526763132; + + // Time within the window to start the operations. It must be in format "HH:MM", where HH : [00-23] and MM : [00-00] GMT. + optional string start_time = 37467274; + +} + +// An InstanceSchedulePolicy specifies when and how frequent certain operations are performed on the instance. +message ResourcePolicyInstanceSchedulePolicy { + // The expiration time of the schedule. The timestamp is an RFC3339 string. + optional string expiration_time = 230299229; + + // The start time of the schedule. The timestamp is an RFC3339 string. + optional string start_time = 37467274; + + // Specifies the time zone to be used in interpreting Schedule.schedule. The value of this field must be a time zone name from the tz database: http://en.wikipedia.org/wiki/Tz_database. + optional string time_zone = 36848094; + + // Specifies the schedule for starting instances. + optional ResourcePolicyInstanceSchedulePolicySchedule vm_start_schedule = 17762396; + + // Specifies the schedule for stopping instances. + optional ResourcePolicyInstanceSchedulePolicySchedule vm_stop_schedule = 426242732; + +} + +// Schedule for an instance operation. +message ResourcePolicyInstanceSchedulePolicySchedule { + // Specifies the frequency for the operation, using the unix-cron format. + optional string schedule = 375820951; + +} + +// +message ResourcePolicyList { + optional string etag = 3123477; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional string id = 3355; + + // [Output Only] A list of ResourcePolicy resources. + repeated ResourcePolicy items = 100526016; + + // [Output Only] Type of resource.Always compute#resourcePoliciesList for listsof resourcePolicies + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains output only fields. Use this sub-message for all output fields set on ResourcePolicy. The internal structure of this "status" field should mimic the structure of ResourcePolicy proto specification. +message ResourcePolicyResourceStatus { + // [Output Only] Specifies a set of output values reffering to the instance_schedule_policy system status. This field should have the same name as corresponding policy field. + optional ResourcePolicyResourceStatusInstanceSchedulePolicyStatus instance_schedule_policy = 344877104; + +} + +// +message ResourcePolicyResourceStatusInstanceSchedulePolicyStatus { + // [Output Only] The last time the schedule successfully ran. The timestamp is an RFC3339 string. + optional string last_run_start_time = 303069063; + + // [Output Only] The next time the schedule is planned to run. The actual time might be slightly different. The timestamp is an RFC3339 string. + optional string next_run_start_time = 318642570; + +} + +// A snapshot schedule policy specifies when and how frequently snapshots are to be created for the target disk. Also specifies how many and how long these scheduled snapshots should be retained. +message ResourcePolicySnapshotSchedulePolicy { + // Retention policy applied to snapshots created by this resource policy. + optional ResourcePolicySnapshotSchedulePolicyRetentionPolicy retention_policy = 68625779; + + // A Vm Maintenance Policy specifies what kind of infrastructure maintenance we are allowed to perform on this VM and when. Schedule that is applied to disks covered by this policy. + optional ResourcePolicySnapshotSchedulePolicySchedule schedule = 375820951; + + // Properties with which snapshots are created such as labels, encryption keys. + optional ResourcePolicySnapshotSchedulePolicySnapshotProperties snapshot_properties = 185371278; + +} + +// Policy for retention of scheduled snapshots. +message ResourcePolicySnapshotSchedulePolicyRetentionPolicy { + // Specifies the behavior to apply to scheduled snapshots when the source disk is deleted. + enum OnSourceDiskDelete { + // A value indicating that the enum field is not set. + UNDEFINED_ON_SOURCE_DISK_DELETE = 0; + + APPLY_RETENTION_POLICY = 535071332; + + KEEP_AUTO_SNAPSHOTS = 258925689; + + UNSPECIFIED_ON_SOURCE_DISK_DELETE = 239140769; + + } + + // Maximum age of the snapshot that is allowed to be kept. + optional int32 max_retention_days = 324296979; + + // Specifies the behavior to apply to scheduled snapshots when the source disk is deleted. + // Check the OnSourceDiskDelete enum for the list of possible values. + optional string on_source_disk_delete = 321955529; + +} + +// A schedule for disks where the schedueled operations are performed. +message ResourcePolicySnapshotSchedulePolicySchedule { + optional ResourcePolicyDailyCycle daily_schedule = 86159869; + + optional ResourcePolicyHourlyCycle hourly_schedule = 38328485; + + optional ResourcePolicyWeeklyCycle weekly_schedule = 359548053; + +} + +// Specified snapshot properties for scheduled snapshots created by this policy. +message ResourcePolicySnapshotSchedulePolicySnapshotProperties { + // Chain name that the snapshot is created in. + optional string chain_name = 68644169; + + // Indication to perform a 'guest aware' snapshot. + optional bool guest_flush = 385550813; + + // Labels to apply to scheduled snapshots. These can be later modified by the setLabels method. Label values may be empty. + map labels = 500195327; + + // Cloud Storage bucket storage location of the auto snapshot (regional or multi-regional). + repeated string storage_locations = 328005274; + +} + +// Time window specified for weekly operations. +message ResourcePolicyWeeklyCycle { + // Up to 7 intervals/windows, one for each day of the week. + repeated ResourcePolicyWeeklyCycleDayOfWeek day_of_weeks = 257871834; + +} + +// +message ResourcePolicyWeeklyCycleDayOfWeek { + // Defines a schedule that runs on specific days of the week. Specify one or more days. The following options are available: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY. + enum Day { + // A value indicating that the enum field is not set. + UNDEFINED_DAY = 0; + + FRIDAY = 471398751; + + INVALID = 530283991; + + MONDAY = 132310288; + + SATURDAY = 279037881; + + SUNDAY = 309626320; + + THURSDAY = 207198682; + + TUESDAY = 277509677; + + WEDNESDAY = 422029110; + + } + + // Defines a schedule that runs on specific days of the week. Specify one or more days. The following options are available: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY. + // Check the Day enum for the list of possible values. + optional string day = 99228; + + // [Output only] Duration of the time window, automatically chosen to be smallest possible in the given scenario. + optional string duration = 155471252; + + // Time within the window to start the operations. It must be in format "HH:MM", where HH : [00-23] and MM : [00-00] GMT. + optional string start_time = 37467274; + +} + +// Represents a Route resource. A route defines a path from VM instances in the VPC network to a specific destination. This destination can be inside or outside the VPC network. For more information, read the Routes overview. +message Route { + // [Output Only] The type of this route, which can be one of the following values: - 'TRANSIT' for a transit route that this router learned from another Cloud Router and will readvertise to one of its BGP peers - 'SUBNET' for a route from a subnet of the VPC - 'BGP' for a route learned from a BGP peer of this router - 'STATIC' for a static route + enum RouteType { + // A value indicating that the enum field is not set. + UNDEFINED_ROUTE_TYPE = 0; + + BGP = 65707; + + STATIC = 308331118; + + SUBNET = 309278557; + + TRANSIT = 187793843; + + } + + // [Output Only] AS path. + repeated RouteAsPath as_paths = 137568929; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this field when you create the resource. + optional string description = 422937596; + + // The destination range of outgoing packets that this route applies to. Both IPv4 and IPv6 are supported. + optional string dest_range = 381327712; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of this resource. Always compute#routes for Route resources. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all following characters (except for the last character) must be a dash, lowercase letter, or digit. The last character must be a lowercase letter or digit. + optional string name = 3373707; + + // Fully-qualified URL of the network that this route applies to. + optional string network = 232872494; + + // The URL to a gateway that should handle matching packets. You can only specify the internet gateway using a full or partial valid URL: projects/ project/global/gateways/default-internet-gateway + optional string next_hop_gateway = 377175298; + + // The URL to a forwarding rule of type loadBalancingScheme=INTERNAL that should handle matching packets or the IP address of the forwarding Rule. For example, the following are all valid URLs: - 10.128.0.56 - https://www.googleapis.com/compute/v1/projects/project/regions/region /forwardingRules/forwardingRule - regions/region/forwardingRules/forwardingRule + optional string next_hop_ilb = 198679901; + + // The URL to an instance that should handle matching packets. You can specify this as a full or partial URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/ + optional string next_hop_instance = 393508247; + + // The network IP address of an instance that should handle matching packets. Only IPv4 is supported. + optional string next_hop_ip = 110319529; + + // The URL of the local network if it should handle matching packets. + optional string next_hop_network = 262295788; + + // [Output Only] The network peering name that should handle matching packets, which should conform to RFC1035. + optional string next_hop_peering = 412682750; + + // The URL to a VpnTunnel that should handle matching packets. + optional string next_hop_vpn_tunnel = 519844501; + + // The priority of this route. Priority is used to break ties in cases where there is more than one matching route of equal prefix length. In cases where multiple routes have equal prefix length, the one with the lowest-numbered priority value wins. The default value is `1000`. The priority value must be from `0` to `65535`, inclusive. + optional uint32 priority = 445151652; + + // [Output Only] The type of this route, which can be one of the following values: - 'TRANSIT' for a transit route that this router learned from another Cloud Router and will readvertise to one of its BGP peers - 'SUBNET' for a route from a subnet of the VPC - 'BGP' for a route learned from a BGP peer of this router - 'STATIC' for a static route + // Check the RouteType enum for the list of possible values. + optional string route_type = 375888752; + + // [Output Only] Server-defined fully-qualified URL for this resource. + optional string self_link = 456214797; + + // A list of instance tags to which this route applies. + repeated string tags = 3552281; + + // [Output Only] If potential misconfigurations are detected for this route, this field will be populated with warning messages. + repeated Warnings warnings = 498091095; + +} + +// +message RouteAsPath { + // [Output Only] The type of the AS Path, which can be one of the following values: - 'AS_SET': unordered set of autonomous systems that the route in has traversed - 'AS_SEQUENCE': ordered set of autonomous systems that the route has traversed - 'AS_CONFED_SEQUENCE': ordered set of Member Autonomous Systems in the local confederation that the route has traversed - 'AS_CONFED_SET': unordered set of Member Autonomous Systems in the local confederation that the route has traversed + enum PathSegmentType { + // A value indicating that the enum field is not set. + UNDEFINED_PATH_SEGMENT_TYPE = 0; + + AS_CONFED_SEQUENCE = 222152624; + + AS_CONFED_SET = 374040307; + + AS_SEQUENCE = 106735918; + + AS_SET = 329846453; + + } + + // [Output Only] The AS numbers of the AS Path. + repeated uint32 as_lists = 134112584; + + // [Output Only] The type of the AS Path, which can be one of the following values: - 'AS_SET': unordered set of autonomous systems that the route in has traversed - 'AS_SEQUENCE': ordered set of autonomous systems that the route has traversed - 'AS_CONFED_SEQUENCE': ordered set of Member Autonomous Systems in the local confederation that the route has traversed - 'AS_CONFED_SET': unordered set of Member Autonomous Systems in the local confederation that the route has traversed + // Check the PathSegmentType enum for the list of possible values. + optional string path_segment_type = 513464992; + +} + +// Contains a list of Route resources. +message RouteList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Route resources. + repeated Route items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents a Cloud Router resource. For more information about Cloud Router, read the Cloud Router overview. +message Router { + // BGP information specific to this router. + optional RouterBgp bgp = 97483; + + // BGP information that must be configured into the routing stack to establish BGP peering. This information must specify the peer ASN and either the interface name, IP address, or peer IP address. Please refer to RFC4273. + repeated RouterBgpPeer bgp_peers = 452695773; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Indicates if a router is dedicated for use with encrypted VLAN attachments (interconnectAttachments). Not currently available publicly. + optional bool encrypted_interconnect_router = 297996575; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // Router interfaces. Each interface requires either one linked resource, (for example, linkedVpnTunnel), or IP address and IP address range (for example, ipRange), or both. + repeated RouterInterface interfaces = 12073562; + + // [Output Only] Type of resource. Always compute#router for routers. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // A list of NAT services created in this router. + repeated RouterNat nats = 3373938; + + // URI of the network to which this router belongs. + optional string network = 232872494; + + // [Output Only] URI of the region where the router resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + +} + +// Description-tagged IP ranges for the router to advertise. +message RouterAdvertisedIpRange { + // User-specified description for the IP range. + optional string description = 422937596; + + // The IP range to advertise. The value must be a CIDR-formatted string. + optional string range = 108280125; + +} + +// Contains a list of routers. +message RouterAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Router resources. + map items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message RouterBgp { + // User-specified flag to indicate which mode to use for advertisement. The options are DEFAULT or CUSTOM. + enum AdvertiseMode { + // A value indicating that the enum field is not set. + UNDEFINED_ADVERTISE_MODE = 0; + + CUSTOM = 388595569; + + DEFAULT = 115302945; + + } + + // + enum AdvertisedGroups { + // A value indicating that the enum field is not set. + UNDEFINED_ADVERTISED_GROUPS = 0; + + // Advertise all available subnets (including peer VPC subnets). + ALL_SUBNETS = 3622872; + + } + + // User-specified flag to indicate which mode to use for advertisement. The options are DEFAULT or CUSTOM. + // Check the AdvertiseMode enum for the list of possible values. + optional string advertise_mode = 312134331; + + // User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups. + // Check the AdvertisedGroups enum for the list of possible values. + repeated string advertised_groups = 21065526; + + // User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges. + repeated RouterAdvertisedIpRange advertised_ip_ranges = 35449932; + + // Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN. + optional uint32 asn = 96892; + + // The interval in seconds between BGP keepalive messages that are sent to the peer. Hold time is three times the interval at which keepalive messages are sent, and the hold time is the maximum number of seconds allowed to elapse between successive keepalive messages that BGP receives from a peer. BGP will use the smaller of either the local hold time value or the peer's hold time value as the hold time for the BGP connection between the two peers. If set, this value must be between 20 and 60. The default is 20. + optional uint32 keepalive_interval = 276771516; + +} + +// +message RouterBgpPeer { + // User-specified flag to indicate which mode to use for advertisement. + enum AdvertiseMode { + // A value indicating that the enum field is not set. + UNDEFINED_ADVERTISE_MODE = 0; + + CUSTOM = 388595569; + + DEFAULT = 115302945; + + } + + // + enum AdvertisedGroups { + // A value indicating that the enum field is not set. + UNDEFINED_ADVERTISED_GROUPS = 0; + + // Advertise all available subnets (including peer VPC subnets). + ALL_SUBNETS = 3622872; + + } + + // The status of the BGP peer connection. If set to FALSE, any active session with the peer is terminated and all associated routing information is removed. If set to TRUE, the peer connection can be established with routing information. The default is TRUE. + enum Enable { + // A value indicating that the enum field is not set. + UNDEFINED_ENABLE = 0; + + FALSE = 66658563; + + TRUE = 2583950; + + } + + // [Output Only] The resource that configures and manages this BGP peer. - MANAGED_BY_USER is the default value and can be managed by you or other users - MANAGED_BY_ATTACHMENT is a BGP peer that is configured and managed by Cloud Interconnect, specifically by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of BGP peer when the PARTNER InterconnectAttachment is created, updated, or deleted. + enum ManagementType { + // A value indicating that the enum field is not set. + UNDEFINED_MANAGEMENT_TYPE = 0; + + // The BGP peer is automatically created for PARTNER type InterconnectAttachment; Google will automatically create/delete this BGP peer when the PARTNER InterconnectAttachment is created/deleted, and Google will update the ipAddress and peerIpAddress when the PARTNER InterconnectAttachment is provisioned. This type of BGP peer cannot be created or deleted, but can be modified for all fields except for name, ipAddress and peerIpAddress. + MANAGED_BY_ATTACHMENT = 458926411; + + // Default value, the BGP peer is manually created and managed by user. + MANAGED_BY_USER = 317294067; + + } + + // User-specified flag to indicate which mode to use for advertisement. + // Check the AdvertiseMode enum for the list of possible values. + optional string advertise_mode = 312134331; + + // User-specified list of prefix groups to advertise in custom mode, which can take one of the following options: - ALL_SUBNETS: Advertises all available subnets, including peer VPC subnets. - ALL_VPC_SUBNETS: Advertises the router's own VPC subnets. Note that this field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in the "bgp" message). These groups are advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups. + // Check the AdvertisedGroups enum for the list of possible values. + repeated string advertised_groups = 21065526; + + // User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in the "bgp" message). These IP ranges are advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges. + repeated RouterAdvertisedIpRange advertised_ip_ranges = 35449932; + + // The priority of routes advertised to this BGP peer. Where there is more than one matching route of maximum length, the routes with the lowest priority value win. + optional uint32 advertised_route_priority = 186486332; + + // BFD configuration for the BGP peering. + optional RouterBgpPeerBfd bfd = 97440; + + // The status of the BGP peer connection. If set to FALSE, any active session with the peer is terminated and all associated routing information is removed. If set to TRUE, the peer connection can be established with routing information. The default is TRUE. + // Check the Enable enum for the list of possible values. + optional string enable = 311764355; + + // Name of the interface the BGP peer is associated with. + optional string interface_name = 437854673; + + // IP address of the interface inside Google Cloud Platform. Only IPv4 is supported. + optional string ip_address = 406272220; + + // [Output Only] The resource that configures and manages this BGP peer. - MANAGED_BY_USER is the default value and can be managed by you or other users - MANAGED_BY_ATTACHMENT is a BGP peer that is configured and managed by Cloud Interconnect, specifically by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of BGP peer when the PARTNER InterconnectAttachment is created, updated, or deleted. + // Check the ManagementType enum for the list of possible values. + optional string management_type = 173703606; + + // Name of this BGP peer. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // Peer BGP Autonomous System Number (ASN). Each BGP interface may use a different value. + optional uint32 peer_asn = 69573151; + + // IP address of the BGP interface outside Google Cloud Platform. Only IPv4 is supported. + optional string peer_ip_address = 207735769; + + // URI of the VM instance that is used as third-party router appliances such as Next Gen Firewalls, Virtual Routers, or Router Appliances. The VM instance must be located in zones contained in the same region as this Cloud Router. The VM instance is the peer side of the BGP session. + optional string router_appliance_instance = 468312989; + +} + +// +message RouterBgpPeerBfd { + // The BFD session initialization mode for this BGP peer. If set to ACTIVE, the Cloud Router will initiate the BFD session for this BGP peer. If set to PASSIVE, the Cloud Router will wait for the peer router to initiate the BFD session for this BGP peer. If set to DISABLED, BFD is disabled for this BGP peer. The default is PASSIVE. + enum SessionInitializationMode { + // A value indicating that the enum field is not set. + UNDEFINED_SESSION_INITIALIZATION_MODE = 0; + + ACTIVE = 314733318; + + DISABLED = 516696700; + + PASSIVE = 462813959; + + } + + // The minimum interval, in milliseconds, between BFD control packets received from the peer router. The actual value is negotiated between the two routers and is equal to the greater of this value and the transmit interval of the other router. If set, this value must be between 1000 and 30000. The default is 1000. + optional uint32 min_receive_interval = 186981614; + + // The minimum interval, in milliseconds, between BFD control packets transmitted to the peer router. The actual value is negotiated between the two routers and is equal to the greater of this value and the corresponding receive interval of the other router. If set, this value must be between 1000 and 30000. The default is 1000. + optional uint32 min_transmit_interval = 523282631; + + // The number of consecutive BFD packets that must be missed before BFD declares that a peer is unavailable. If set, the value must be a value between 5 and 16. The default is 5. + optional uint32 multiplier = 191331777; + + // The BFD session initialization mode for this BGP peer. If set to ACTIVE, the Cloud Router will initiate the BFD session for this BGP peer. If set to PASSIVE, the Cloud Router will wait for the peer router to initiate the BFD session for this BGP peer. If set to DISABLED, BFD is disabled for this BGP peer. The default is PASSIVE. + // Check the SessionInitializationMode enum for the list of possible values. + optional string session_initialization_mode = 105957049; + +} + +// +message RouterInterface { + // [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted. + enum ManagementType { + // A value indicating that the enum field is not set. + UNDEFINED_MANAGEMENT_TYPE = 0; + + // The interface is automatically created for PARTNER type InterconnectAttachment, Google will automatically create/update/delete this interface when the PARTNER InterconnectAttachment is created/provisioned/deleted. This type of interface cannot be manually managed by user. + MANAGED_BY_ATTACHMENT = 458926411; + + // Default value, the interface is manually created and managed by user. + MANAGED_BY_USER = 317294067; + + } + + // IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface. + optional string ip_range = 145092645; + + // URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance. + optional string linked_interconnect_attachment = 501085518; + + // URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance. + optional string linked_vpn_tunnel = 352296953; + + // [Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted. + // Check the ManagementType enum for the list of possible values. + optional string management_type = 173703606; + + // Name of this interface entry. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM. + optional string private_ip_address = 100854040; + + // Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string redundant_interface = 523187303; + + // The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here. + optional string subnetwork = 307827694; + +} + +// Contains a list of Router resources. +message RouterList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Router resources. + repeated Router items = 100526016; + + // [Output Only] Type of resource. Always compute#router for routers. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents a Nat resource. It enables the VMs within the specified subnetworks to access Internet without external IP addresses. It specifies a list of subnetworks (and the ranges within) that want to use NAT. Customers can also provide the external IPs that would be used for NAT. GCP would auto-allocate ephemeral IPs if no external IPs are provided. +message RouterNat { + // Specify the NatIpAllocateOption, which can take one of the following values: - MANUAL_ONLY: Uses only Nat IP addresses provided by customers. When there are not enough specified Nat IPs, the Nat service fails for new VMs. - AUTO_ONLY: Nat IPs are allocated by Google Cloud Platform; customers can't specify any Nat IPs. When choosing AUTO_ONLY, then nat_ip should be empty. + enum NatIpAllocateOption { + // A value indicating that the enum field is not set. + UNDEFINED_NAT_IP_ALLOCATE_OPTION = 0; + + // Nat IPs are allocated by GCP; customers can not specify any Nat IPs. + AUTO_ONLY = 182333500; + + // Only use Nat IPs provided by customers. When specified Nat IPs are not enough then the Nat service fails for new VMs. + MANUAL_ONLY = 261251205; + + } + + // Specify the Nat option, which can take one of the following values: - ALL_SUBNETWORKS_ALL_IP_RANGES: All of the IP ranges in every Subnetwork are allowed to Nat. - ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES: All of the primary IP ranges in every Subnetwork are allowed to Nat. - LIST_OF_SUBNETWORKS: A list of Subnetworks are allowed to Nat (specified in the field subnetwork below) The default is SUBNETWORK_IP_RANGE_TO_NAT_OPTION_UNSPECIFIED. Note that if this field contains ALL_SUBNETWORKS_ALL_IP_RANGES or ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any other Router.Nat section in any Router for this network in this region. + enum SourceSubnetworkIpRangesToNat { + // A value indicating that the enum field is not set. + UNDEFINED_SOURCE_SUBNETWORK_IP_RANGES_TO_NAT = 0; + + // All the IP ranges in every Subnetwork are allowed to Nat. + ALL_SUBNETWORKS_ALL_IP_RANGES = 179964376; + + // All the primary IP ranges in every Subnetwork are allowed to Nat. + ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES = 185573819; + + // A list of Subnetworks are allowed to Nat (specified in the field subnetwork below) + LIST_OF_SUBNETWORKS = 517542270; + + } + + // A list of URLs of the IP resources to be drained. These IPs must be valid static external IPs that have been assigned to the NAT. These IPs should be used for updating/patching a NAT only. + repeated string drain_nat_ips = 504078535; + + optional bool enable_endpoint_independent_mapping = 259441819; + + // Timeout (in seconds) for ICMP connections. Defaults to 30s if not set. + optional int32 icmp_idle_timeout_sec = 3647562; + + // Configure logging on this NAT. + optional RouterNatLogConfig log_config = 351299741; + + // Minimum number of ports allocated to a VM from this NAT config. If not set, a default number of ports is allocated to a VM. This is rounded up to the nearest power of 2. For example, if the value of this field is 50, at least 64 ports are allocated to a VM. + optional int32 min_ports_per_vm = 186193587; + + // Unique name of this Nat service. The name must be 1-63 characters long and comply with RFC1035. + optional string name = 3373707; + + // Specify the NatIpAllocateOption, which can take one of the following values: - MANUAL_ONLY: Uses only Nat IP addresses provided by customers. When there are not enough specified Nat IPs, the Nat service fails for new VMs. - AUTO_ONLY: Nat IPs are allocated by Google Cloud Platform; customers can't specify any Nat IPs. When choosing AUTO_ONLY, then nat_ip should be empty. + // Check the NatIpAllocateOption enum for the list of possible values. + optional string nat_ip_allocate_option = 429726845; + + // A list of URLs of the IP resources used for this Nat service. These IP addresses must be valid static external IP addresses assigned to the project. + repeated string nat_ips = 117635086; + + // A list of rules associated with this NAT. + repeated RouterNatRule rules = 108873975; + + // Specify the Nat option, which can take one of the following values: - ALL_SUBNETWORKS_ALL_IP_RANGES: All of the IP ranges in every Subnetwork are allowed to Nat. - ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES: All of the primary IP ranges in every Subnetwork are allowed to Nat. - LIST_OF_SUBNETWORKS: A list of Subnetworks are allowed to Nat (specified in the field subnetwork below) The default is SUBNETWORK_IP_RANGE_TO_NAT_OPTION_UNSPECIFIED. Note that if this field contains ALL_SUBNETWORKS_ALL_IP_RANGES or ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any other Router.Nat section in any Router for this network in this region. + // Check the SourceSubnetworkIpRangesToNat enum for the list of possible values. + optional string source_subnetwork_ip_ranges_to_nat = 252213211; + + // A list of Subnetwork resources whose traffic should be translated by NAT Gateway. It is used only when LIST_OF_SUBNETWORKS is selected for the SubnetworkIpRangeToNatOption above. + repeated RouterNatSubnetworkToNat subnetworks = 415853125; + + // Timeout (in seconds) for TCP established connections. Defaults to 1200s if not set. + optional int32 tcp_established_idle_timeout_sec = 223098349; + + // Timeout (in seconds) for TCP connections that are in TIME_WAIT state. Defaults to 120s if not set. + optional int32 tcp_time_wait_timeout_sec = 513596925; + + // Timeout (in seconds) for TCP transitory connections. Defaults to 30s if not set. + optional int32 tcp_transitory_idle_timeout_sec = 205028774; + + // Timeout (in seconds) for UDP connections. Defaults to 30s if not set. + optional int32 udp_idle_timeout_sec = 64919878; + +} + +// Configuration of logging on a NAT. +message RouterNatLogConfig { + // Specify the desired filtering of logs on this NAT. If unspecified, logs are exported for all connections handled by this NAT. This option can take one of the following values: - ERRORS_ONLY: Export logs only for connection failures. - TRANSLATIONS_ONLY: Export logs only for successful connections. - ALL: Export logs for all connections, successful and unsuccessful. + enum Filter { + // A value indicating that the enum field is not set. + UNDEFINED_FILTER = 0; + + // Export logs for all (successful and unsuccessful) connections. + ALL = 64897; + + // Export logs for connection failures only. + ERRORS_ONLY = 307484672; + + // Export logs for successful connections only. + TRANSLATIONS_ONLY = 357212649; + + } + + // Indicates whether or not to export logs. This is false by default. + optional bool enable = 311764355; + + // Specify the desired filtering of logs on this NAT. If unspecified, logs are exported for all connections handled by this NAT. This option can take one of the following values: - ERRORS_ONLY: Export logs only for connection failures. - TRANSLATIONS_ONLY: Export logs only for successful connections. - ALL: Export logs for all connections, successful and unsuccessful. + // Check the Filter enum for the list of possible values. + optional string filter = 336120696; + +} + +// +message RouterNatRule { + // The action to be enforced for traffic that matches this rule. + optional RouterNatRuleAction action = 187661878; + + // An optional description of this rule. + optional string description = 422937596; + + // CEL expression that specifies the match condition that egress traffic from a VM is evaluated against. If it evaluates to true, the corresponding `action` is enforced. The following examples are valid match expressions for public NAT: "inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.0/16')" "destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'" The following example is a valid match expression for private NAT: "nexthop.hub == '/projects/my-project/global/hub/hub-1'" + optional string match = 103668165; + + // An integer uniquely identifying a rule in the list. The rule number must be a positive value between 0 and 65000, and must be unique among rules within a NAT. + optional uint32 rule_number = 535211500; + +} + +// +message RouterNatRuleAction { + // A list of URLs of the IP resources used for this NAT rule. These IP addresses must be valid static external IP addresses assigned to the project. This field is used for public NAT. + repeated string source_nat_active_ips = 210378229; + + // A list of URLs of the IP resources to be drained. These IPs must be valid static external IPs that have been assigned to the NAT. These IPs should be used for updating/patching a NAT rule only. This field is used for public NAT. + repeated string source_nat_drain_ips = 340812451; + +} + +// Defines the IP ranges that want to use NAT for a subnetwork. +message RouterNatSubnetworkToNat { + // + enum SourceIpRangesToNat { + // A value indicating that the enum field is not set. + UNDEFINED_SOURCE_IP_RANGES_TO_NAT = 0; + + // The primary and all the secondary ranges are allowed to Nat. + ALL_IP_RANGES = 35608496; + + // A list of secondary ranges are allowed to Nat. + LIST_OF_SECONDARY_IP_RANGES = 192289308; + + // The primary range is allowed to Nat. + PRIMARY_IP_RANGE = 297109954; + + } + + // URL for the subnetwork resource that will use NAT. + optional string name = 3373707; + + // A list of the secondary ranges of the Subnetwork that are allowed to use NAT. This can be populated only if "LIST_OF_SECONDARY_IP_RANGES" is one of the values in source_ip_ranges_to_nat. + repeated string secondary_ip_range_names = 264315097; + + // Specify the options for NAT ranges in the Subnetwork. All options of a single value are valid except NAT_IP_RANGE_OPTION_UNSPECIFIED. The only valid option with multiple values is: ["PRIMARY_IP_RANGE", "LIST_OF_SECONDARY_IP_RANGES"] Default: [ALL_IP_RANGES] + // Check the SourceIpRangesToNat enum for the list of possible values. + repeated string source_ip_ranges_to_nat = 388310386; + +} + +// +message RouterStatus { + // Best routes for this router's network. + repeated Route best_routes = 395826693; + + // Best routes learned by this router. + repeated Route best_routes_for_router = 119389689; + + repeated RouterStatusBgpPeerStatus bgp_peer_status = 218459131; + + repeated RouterStatusNatStatus nat_status = 63098064; + + // URI of the network to which this router belongs. + optional string network = 232872494; + +} + +// +message RouterStatusBgpPeerStatus { + // Status of the BGP peer: {UP, DOWN} + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + DOWN = 2104482; + + UNKNOWN = 433141802; + + UP = 2715; + + } + + // Routes that were advertised to the remote BGP peer + repeated Route advertised_routes = 333393068; + + // IP address of the local BGP interface. + optional string ip_address = 406272220; + + // URL of the VPN tunnel that this BGP peer controls. + optional string linked_vpn_tunnel = 352296953; + + // Name of this BGP peer. Unique within the Routers resource. + optional string name = 3373707; + + // Number of routes learned from the remote BGP Peer. + optional uint32 num_learned_routes = 135457535; + + // IP address of the remote BGP interface. + optional string peer_ip_address = 207735769; + + // [Output only] URI of the VM instance that is used as third-party router appliances such as Next Gen Firewalls, Virtual Routers, or Router Appliances. The VM instance is the peer side of the BGP session. + optional string router_appliance_instance = 468312989; + + // BGP state as specified in RFC1771. + optional string state = 109757585; + + // Status of the BGP peer: {UP, DOWN} + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds + optional string uptime = 235379688; + + // Time this session has been up, in seconds. Format: 145 + optional string uptime_seconds = 104736040; + +} + +// Status of a NAT contained in this router. +message RouterStatusNatStatus { + // A list of IPs auto-allocated for NAT. Example: ["1.1.1.1", "129.2.16.89"] + repeated string auto_allocated_nat_ips = 510794246; + + // A list of IPs auto-allocated for NAT that are in drain mode. Example: ["1.1.1.1", "179.12.26.133"]. + repeated string drain_auto_allocated_nat_ips = 309184557; + + // A list of IPs user-allocated for NAT that are in drain mode. Example: ["1.1.1.1", "179.12.26.133"]. + repeated string drain_user_allocated_nat_ips = 305268553; + + // The number of extra IPs to allocate. This will be greater than 0 only if user-specified IPs are NOT enough to allow all configured VMs to use NAT. This value is meaningful only when auto-allocation of NAT IPs is *not* used. + optional int32 min_extra_nat_ips_needed = 365786338; + + // Unique name of this NAT. + optional string name = 3373707; + + // Number of VM endpoints (i.e., Nics) that can use NAT. + optional int32 num_vm_endpoints_with_nat_mappings = 512367468; + + // Status of rules in this NAT. + repeated RouterStatusNatStatusNatRuleStatus rule_status = 140223125; + + // A list of fully qualified URLs of reserved IP address resources. + repeated string user_allocated_nat_ip_resources = 212776151; + + // A list of IPs user-allocated for NAT. They will be raw IP strings like "179.12.26.133". + repeated string user_allocated_nat_ips = 506878242; + +} + +// Status of a NAT Rule contained in this NAT. +message RouterStatusNatStatusNatRuleStatus { + // A list of active IPs for NAT. Example: ["1.1.1.1", "179.12.26.133"]. + repeated string active_nat_ips = 208517077; + + // A list of IPs for NAT that are in drain mode. Example: ["1.1.1.1", "179.12.26.133"]. + repeated string drain_nat_ips = 504078535; + + // The number of extra IPs to allocate. This will be greater than 0 only if the existing IPs in this NAT Rule are NOT enough to allow all configured VMs to use NAT. + optional int32 min_extra_ips_needed = 353002756; + + // Number of VM endpoints (i.e., NICs) that have NAT Mappings from this NAT Rule. + optional int32 num_vm_endpoints_with_nat_mappings = 512367468; + + // Rule number of the rule. + optional int32 rule_number = 535211500; + +} + +// +message RouterStatusResponse { + // Type of resource. + optional string kind = 3292052; + + optional RouterStatus result = 139315229; + +} + +// +message RoutersPreviewResponse { + // Preview of given router. + optional Router resource = 195806222; + +} + +// +message RoutersScopedList { + // A list of routers contained in this scope. + repeated Router routers = 311906890; + + // Informational warning which replaces the list of routers when the list is empty. + optional Warning warning = 50704284; + +} + +// This is deprecated and has no effect. Do not use. +message Rule { + // This is deprecated and has no effect. Do not use. + enum Action { + // A value indicating that the enum field is not set. + UNDEFINED_ACTION = 0; + + // This is deprecated and has no effect. Do not use. + ALLOW = 62368553; + + // This is deprecated and has no effect. Do not use. + ALLOW_WITH_LOG = 76034177; + + // This is deprecated and has no effect. Do not use. + DENY = 2094604; + + // This is deprecated and has no effect. Do not use. + DENY_WITH_LOG = 351433982; + + // This is deprecated and has no effect. Do not use. + LOG = 75556; + + // This is deprecated and has no effect. Do not use. + NO_ACTION = 260643444; + + } + + // This is deprecated and has no effect. Do not use. + // Check the Action enum for the list of possible values. + optional string action = 187661878; + + // This is deprecated and has no effect. Do not use. + repeated Condition conditions = 142882488; + + // This is deprecated and has no effect. Do not use. + optional string description = 422937596; + + // This is deprecated and has no effect. Do not use. + repeated string ins = 104430; + + // This is deprecated and has no effect. Do not use. + repeated LogConfig log_configs = 152873846; + + // This is deprecated and has no effect. Do not use. + repeated string not_ins = 518443138; + + // This is deprecated and has no effect. Do not use. + repeated string permissions = 59962500; + +} + +// +message SSLHealthCheck { + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, SSL health check follows behavior specified in port and portName fields. + enum PortSpecification { + // A value indicating that the enum field is not set. + UNDEFINED_PORT_SPECIFICATION = 0; + + // The port number in port is used for health checking. + USE_FIXED_PORT = 190235748; + + // The portName is used for health checking. + USE_NAMED_PORT = 349300671; + + // For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. + USE_SERVING_PORT = 362637516; + + } + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + enum ProxyHeader { + // A value indicating that the enum field is not set. + UNDEFINED_PROXY_HEADER = 0; + + NONE = 2402104; + + PROXY_V1 = 334352940; + + } + + // The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535. + optional int32 port = 3446913; + + // Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. + optional string port_name = 41534345; + + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, SSL health check follows behavior specified in port and portName fields. + // Check the PortSpecification enum for the list of possible values. + optional string port_specification = 51590597; + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + // Check the ProxyHeader enum for the list of possible values. + optional string proxy_header = 160374142; + + // The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII. + optional string request = 21951119; + + // The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII. + optional string response = 196547649; + +} + +// +message ScalingScheduleStatus { + // [Output Only] The current state of a scaling schedule. + enum State { + // A value indicating that the enum field is not set. + UNDEFINED_STATE = 0; + + // The current autoscaling recommendation is influenced by this scaling schedule. + ACTIVE = 314733318; + + // This scaling schedule has been disabled by the user. + DISABLED = 516696700; + + // This scaling schedule will never become active again. + OBSOLETE = 66532761; + + // The current autoscaling recommendation is not influenced by this scaling schedule. + READY = 77848963; + + } + + // [Output Only] The last time the scaling schedule became active. Note: this is a timestamp when a schedule actually became active, not when it was planned to do so. The timestamp is in RFC3339 text format. + optional string last_start_time = 34545107; + + // [Output Only] The next time the scaling schedule is to become active. Note: this is a timestamp when a schedule is planned to run, but the actual time might be slightly different. The timestamp is in RFC3339 text format. + optional string next_start_time = 97270102; + + // [Output Only] The current state of a scaling schedule. + // Check the State enum for the list of possible values. + optional string state = 109757585; + +} + +// Sets the scheduling options for an Instance. NextID: 21 +message Scheduling { + // Defines the maintenance behavior for this instance. For standard instances, the default behavior is MIGRATE. For preemptible instances, the default and only possible behavior is TERMINATE. For more information, see Setting Instance Scheduling Options. + enum OnHostMaintenance { + // A value indicating that the enum field is not set. + UNDEFINED_ON_HOST_MAINTENANCE = 0; + + // *[Default]* Allows Compute Engine to automatically migrate instances out of the way of maintenance events. + MIGRATE = 165699979; + + // Tells Compute Engine to terminate and (optionally) restart the instance away from the maintenance activity. If you would like your instance to be restarted, set the automaticRestart flag to true. Your instance may be restarted more than once, and it may be restarted outside the window of maintenance events. + TERMINATE = 527617601; + + } + + // Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). You can only set the automatic restart option for standard instances. Preemptible instances cannot be automatically restarted. By default, this is set to true so an instance is automatically restarted if it is terminated by Compute Engine. + optional bool automatic_restart = 350821371; + + // An opaque location hint used to place the instance close to other resources. This field is for use by internal tools that use the public API. + optional string location_hint = 350519505; + + // The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node. + optional int32 min_node_cpus = 317231675; + + // A set of node affinity and anti-affinity configurations. Refer to Configuring node affinity for more information. Overrides reservationAffinity. + repeated SchedulingNodeAffinity node_affinities = 461799971; + + // Defines the maintenance behavior for this instance. For standard instances, the default behavior is MIGRATE. For preemptible instances, the default and only possible behavior is TERMINATE. For more information, see Setting Instance Scheduling Options. + // Check the OnHostMaintenance enum for the list of possible values. + optional string on_host_maintenance = 64616796; + + // Defines whether the instance is preemptible. This can only be set during instance creation or while the instance is stopped and therefore, in a `TERMINATED` state. See Instance Life Cycle for more information on the possible instance states. + optional bool preemptible = 324203169; + +} + +// Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled. +message SchedulingNodeAffinity { + // Defines the operation of node selection. Valid operators are IN for affinity and NOT_IN for anti-affinity. + enum Operator { + // A value indicating that the enum field is not set. + UNDEFINED_OPERATOR = 0; + + // Requires Compute Engine to seek for matched nodes. + IN = 2341; + + // Requires Compute Engine to avoid certain nodes. + NOT_IN = 161144369; + + OPERATOR_UNSPECIFIED = 128892924; + + } + + // Corresponds to the label key of Node resource. + optional string key = 106079; + + // Defines the operation of node selection. Valid operators are IN for affinity and NOT_IN for anti-affinity. + // Check the Operator enum for the list of possible values. + optional string operator = 36317348; + + // Corresponds to the label values of Node resource. + repeated string values = 249928994; + +} + +// +message ScratchDisks { + // Size of the scratch disk, defined in GB. + optional int32 disk_gb = 60990141; + +} + +// An instance's screenshot. +message Screenshot { + // [Output Only] The Base64-encoded screenshot data. + optional string contents = 506419994; + + // [Output Only] Type of the resource. Always compute#screenshot for the screenshots. + optional string kind = 3292052; + +} + +// +message SecurityPoliciesListPreconfiguredExpressionSetsResponse { + optional SecurityPoliciesWafConfig preconfigured_expression_sets = 536200826; + +} + +// +message SecurityPoliciesWafConfig { + optional PreconfiguredWafSet waf_rules = 74899924; + +} + +// Represents a Google Cloud Armor security policy resource. Only external backend services that use load balancers can reference a security policy. For more information, see Google Cloud Armor security policy overview. +message SecurityPolicy { + optional SecurityPolicyAdaptiveProtectionConfig adaptive_protection_config = 150240735; + + optional SecurityPolicyAdvancedOptionsConfig advanced_options_config = 449276352; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make get() request to the security policy. + optional string fingerprint = 234678500; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output only] Type of the resource. Always compute#securityPolicyfor security policies + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // A list of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match "*"). If no rules are provided when creating a security policy, a default rule with action "allow" will be added. + repeated SecurityPolicyRule rules = 108873975; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + +} + +// Configuration options for Cloud Armor Adaptive Protection (CAAP). +message SecurityPolicyAdaptiveProtectionConfig { + // If set to true, enables Cloud Armor Machine Learning. + optional SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig layer7_ddos_defense_config = 437316771; + +} + +// Configuration options for L7 DDoS detection. +message SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig { + // Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. + enum RuleVisibility { + // A value indicating that the enum field is not set. + UNDEFINED_RULE_VISIBILITY = 0; + + PREMIUM = 399530551; + + STANDARD = 484642493; + + } + + // If set to true, enables CAAP for L7 DDoS detection. + optional bool enable = 311764355; + + // Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. + // Check the RuleVisibility enum for the list of possible values. + optional string rule_visibility = 453258293; + +} + +// +message SecurityPolicyAdvancedOptionsConfig { + // + enum JsonParsing { + // A value indicating that the enum field is not set. + UNDEFINED_JSON_PARSING = 0; + + DISABLED = 516696700; + + STANDARD = 484642493; + + } + + // + enum LogLevel { + // A value indicating that the enum field is not set. + UNDEFINED_LOG_LEVEL = 0; + + NORMAL = 161067239; + + VERBOSE = 532219234; + + } + + // + // Check the JsonParsing enum for the list of possible values. + optional string json_parsing = 282493529; + + // + // Check the LogLevel enum for the list of possible values. + optional string log_level = 140582601; + +} + +// +message SecurityPolicyList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of SecurityPolicy resources. + repeated SecurityPolicy items = 100526016; + + // [Output Only] Type of resource. Always compute#securityPolicyList for listsof securityPolicies + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message SecurityPolicyReference { + optional string security_policy = 171082513; + +} + +// Represents a rule that describes one or more match conditions along with the action to be taken when traffic matches this condition (allow or deny). +message SecurityPolicyRule { + // The Action to perform when the client connection triggers the rule. Can currently be either "allow" or "deny()" where valid values for status are 403, 404, and 502. + optional string action = 187661878; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules + optional string kind = 3292052; + + // A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced. + optional SecurityPolicyRuleMatcher match = 103668165; + + // If set to true, the specified action is not enforced. + optional bool preview = 218686408; + + // An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority. + optional int32 priority = 445151652; + +} + +// Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified. +message SecurityPolicyRuleMatcher { + // Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config. + enum VersionedExpr { + // A value indicating that the enum field is not set. + UNDEFINED_VERSIONED_EXPR = 0; + + // Matches the source IP address of a request to the IP ranges supplied in config. + SRC_IPS_V1 = 70925961; + + } + + // The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified. + optional SecurityPolicyRuleMatcherConfig config = 255820610; + + // User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. + optional Expr expr = 3127797; + + // Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config. + // Check the VersionedExpr enum for the list of possible values. + optional string versioned_expr = 322286013; + +} + +// +message SecurityPolicyRuleMatcherConfig { + // CIDR IP address range. Maximum number of src_ip_ranges allowed is 10. + repeated string src_ip_ranges = 432128083; + +} + +// The authentication and authorization settings for a BackendService. +message SecuritySettings { + // Optional. A URL referring to a networksecurity.ClientTlsPolicy resource that describes how clients should authenticate with this service's backends. clientTlsPolicy only applies to a global BackendService with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. If left blank, communications are not encrypted. Note: This field currently has no impact. + optional string client_tls_policy = 462325226; + + // Optional. A list of Subject Alternative Names (SANs) that the client verifies during a mutual TLS handshake with an server/endpoint for this BackendService. When the server presents its X.509 certificate to the client, the client inspects the certificate's subjectAltName field. If the field contains one of the specified values, the communication continues. Otherwise, it fails. This additional check enables the client to verify that the server is authorized to run the requested service. Note that the contents of the server certificate's subjectAltName field are configured by the Public Key Infrastructure which provisions server identities. Only applies to a global BackendService with loadBalancingScheme set to INTERNAL_SELF_MANAGED. Only applies when BackendService has an attached clientTlsPolicy with clientCertificate (mTLS mode). Note: This field currently has no impact. + repeated string subject_alt_names = 330029535; + +} + +// A request message for Instances.SendDiagnosticInterrupt. See the method description for details. +message SendDiagnosticInterruptInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A response message for Instances.SendDiagnosticInterrupt. See the method description for details. +message SendDiagnosticInterruptInstanceResponse { +} + +// An instance serial console output. +message SerialPortOutput { + // [Output Only] The contents of the console output. + optional string contents = 506419994; + + // [Output Only] Type of the resource. Always compute#serialPortOutput for serial port output. + optional string kind = 3292052; + + // [Output Only] The position of the next byte of content, regardless of whether the content exists, following the output returned in the `contents` property. Use this value in the next request as the start parameter. + optional int64 next = 3377907; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // The starting byte position of the output that was returned. This should match the start parameter sent with the request. If the serial console output exceeds the size of the buffer (1 MB), older output is overwritten by newer content. The output start value will indicate the byte position of the output that was returned, which might be different than the `start` value that was specified in the request. + optional int64 start = 109757538; + +} + +// +message ServerBinding { + // + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + // Node may associate with any physical server over its lifetime. + RESTART_NODE_ON_ANY_SERVER = 502950985; + + // Node may associate with minimal physical servers over its lifetime. + RESTART_NODE_ON_MINIMAL_SERVERS = 204166495; + + SERVER_BINDING_TYPE_UNSPECIFIED = 180825512; + + } + + // + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// A service account. +message ServiceAccount { + // Email address of the service account. + optional string email = 96619420; + + // The list of scopes to be made available for this service account. + repeated string scopes = 165973151; + +} + +// Represents a ServiceAttachment resource. A service attachment represents a service that a producer has exposed. It encapsulates the load balancer which fronts the service runs and a list of NAT IP ranges that the producers uses to represent the consumers connecting to the service. next tag = 20 +message ServiceAttachment { + // The connection preference of service attachment. The value can be set to ACCEPT_AUTOMATIC. An ACCEPT_AUTOMATIC service attachment is one that always accepts the connection from consumer forwarding rules. + enum ConnectionPreference { + // A value indicating that the enum field is not set. + UNDEFINED_CONNECTION_PREFERENCE = 0; + + ACCEPT_AUTOMATIC = 75250580; + + ACCEPT_MANUAL = 373061341; + + CONNECTION_PREFERENCE_UNSPECIFIED = 34590772; + + } + + // [Output Only] An array of connections for all the consumers connected to this service attachment. + repeated ServiceAttachmentConnectedEndpoint connected_endpoints = 72223688; + + // The connection preference of service attachment. The value can be set to ACCEPT_AUTOMATIC. An ACCEPT_AUTOMATIC service attachment is one that always accepts the connection from consumer forwarding rules. + // Check the ConnectionPreference enum for the list of possible values. + optional string connection_preference = 285818076; + + // Projects that are allowed to connect to this service attachment. + repeated ServiceAttachmentConsumerProjectLimit consumer_accept_lists = 402725703; + + // Projects that are not allowed to connect to this service attachment. The project can be specified using its id or number. + repeated string consumer_reject_lists = 204033182; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // If true, enable the proxy protocol which is for supplying client TCP/IP address data in TCP connections that traverse proxies on their way to destination servers. + optional bool enable_proxy_protocol = 363791237; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a ServiceAttachment. An up-to-date fingerprint must be provided in order to patch/update the ServiceAttachment; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the ServiceAttachment. + optional string fingerprint = 234678500; + + // [Output Only] The unique identifier for the resource type. The server generates this identifier. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#serviceAttachment for service attachments. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // An array of URLs where each entry is the URL of a subnet provided by the service producer to use for NAT in this service attachment. + repeated string nat_subnets = 374785944; + + // The URL of a forwarding rule with loadBalancingScheme INTERNAL* that is serving the endpoint identified by this service attachment. + optional string producer_forwarding_rule = 247927889; + + // [Output Only] An 128-bit global unique ID of the PSC service attachment. + optional Uint128 psc_service_attachment_id = 527695214; + + // [Output Only] URL of the region where the service attachment resides. This field applies only to the region resource. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // The URL of a service serving the endpoint identified by this service attachment. + optional string target_service = 1293831; + +} + +// Contains a list of ServiceAttachmentsScopedList. +message ServiceAttachmentAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of ServiceAttachmentsScopedList resources. + map items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// [Output Only] A connection connected to this service attachment. +message ServiceAttachmentConnectedEndpoint { + // The status of a connected endpoint to this service attachment. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // The connection has been accepted by the producer. + ACCEPTED = 246714279; + + // The connection has been closed by the producer. + CLOSED = 380163436; + + // The connection is pending acceptance by the producer. + PENDING = 35394935; + + // The consumer is still connected but not using the connection. + REJECTED = 174130302; + + STATUS_UNSPECIFIED = 42133066; + + } + + // The url of a connected endpoint. + optional string endpoint = 130489749; + + // The PSC connection id of the connected endpoint. + optional uint64 psc_connection_id = 292082397; + + // The status of a connected endpoint to this service attachment. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + +} + +// +message ServiceAttachmentConsumerProjectLimit { + // The value of the limit to set. + optional uint32 connection_limit = 131403546; + + // The project id or number for the project to set the limit for. + optional string project_id_or_num = 349783336; + +} + +// +message ServiceAttachmentList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of ServiceAttachment resources. + repeated ServiceAttachment items = 100526016; + + // [Output Only] Type of the resource. Always compute#serviceAttachment for service attachments. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message ServiceAttachmentsScopedList { + // A list of ServiceAttachments contained in this scope. + repeated ServiceAttachment service_attachments = 307136806; + + // Informational warning which replaces the list of service attachments when the list is empty. + optional Warning warning = 50704284; + +} + +// A request message for TargetSslProxies.SetBackendService. See the method description for details. +message SetBackendServiceTargetSslProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetSslProxiesSetBackendServiceRequest target_ssl_proxies_set_backend_service_request_resource = 139080868 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetSslProxy resource whose BackendService resource is to be set. + string target_ssl_proxy = 338795853 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetTcpProxies.SetBackendService. See the method description for details. +message SetBackendServiceTargetTcpProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetTcpProxiesSetBackendServiceRequest target_tcp_proxies_set_backend_service_request_resource = 273721583 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetTcpProxy resource whose BackendService resource is to be set. + string target_tcp_proxy = 503065442 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetPools.SetBackup. See the method description for details. +message SetBackupTargetPoolRequest { + // New failoverRatio value for the target pool. + optional float failover_ratio = 212667006; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetPool resource to set a backup pool for. + string target_pool = 62796298 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TargetReference target_reference_resource = 523721712 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Projects.SetCommonInstanceMetadata. See the method description for details. +message SetCommonInstanceMetadataProjectRequest { + // The body resource for this request + Metadata metadata_resource = 291086110 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Projects.SetDefaultNetworkTier. See the method description for details. +message SetDefaultNetworkTierProjectRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The body resource for this request + ProjectsSetDefaultNetworkTierRequest projects_set_default_network_tier_request_resource = 126410762 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Instances.SetDeletionProtection. See the method description for details. +message SetDeletionProtectionInstanceRequest { + // Whether the resource should be protected against deletion. + optional bool deletion_protection = 458014698; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Instances.SetDiskAutoDelete. See the method description for details. +message SetDiskAutoDeleteInstanceRequest { + // Whether to auto-delete the disk when the instance is deleted. + bool auto_delete = 464761403 [(google.api.field_behavior) = REQUIRED]; + + // The device name of the disk to modify. Make a get() request on the instance to view currently attached disks and device names. + string device_name = 67541716 [(google.api.field_behavior) = REQUIRED]; + + // The instance name for this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Disks.SetIamPolicy. See the method description for details. +message SetIamPolicyDiskRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + ZoneSetPolicyRequest zone_set_policy_request_resource = 382082107 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for FirewallPolicies.SetIamPolicy. See the method description for details. +message SetIamPolicyFirewallPolicyRequest { + // The body resource for this request + GlobalOrganizationSetPolicyRequest global_organization_set_policy_request_resource = 177408606 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Images.SetIamPolicy. See the method description for details. +message SetIamPolicyImageRequest { + // The body resource for this request + GlobalSetPolicyRequest global_set_policy_request_resource = 337048498 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.SetIamPolicy. See the method description for details. +message SetIamPolicyInstanceRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + ZoneSetPolicyRequest zone_set_policy_request_resource = 382082107 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceTemplates.SetIamPolicy. See the method description for details. +message SetIamPolicyInstanceTemplateRequest { + // The body resource for this request + GlobalSetPolicyRequest global_set_policy_request_resource = 337048498 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Licenses.SetIamPolicy. See the method description for details. +message SetIamPolicyLicenseRequest { + // The body resource for this request + GlobalSetPolicyRequest global_set_policy_request_resource = 337048498 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NodeGroups.SetIamPolicy. See the method description for details. +message SetIamPolicyNodeGroupRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + ZoneSetPolicyRequest zone_set_policy_request_resource = 382082107 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NodeTemplates.SetIamPolicy. See the method description for details. +message SetIamPolicyNodeTemplateRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + RegionSetPolicyRequest region_set_policy_request_resource = 276489091 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionDisks.SetIamPolicy. See the method description for details. +message SetIamPolicyRegionDiskRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + RegionSetPolicyRequest region_set_policy_request_resource = 276489091 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Reservations.SetIamPolicy. See the method description for details. +message SetIamPolicyReservationRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + ZoneSetPolicyRequest zone_set_policy_request_resource = 382082107 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ResourcePolicies.SetIamPolicy. See the method description for details. +message SetIamPolicyResourcePolicyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + RegionSetPolicyRequest region_set_policy_request_resource = 276489091 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ServiceAttachments.SetIamPolicy. See the method description for details. +message SetIamPolicyServiceAttachmentRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + RegionSetPolicyRequest region_set_policy_request_resource = 276489091 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Snapshots.SetIamPolicy. See the method description for details. +message SetIamPolicySnapshotRequest { + // The body resource for this request + GlobalSetPolicyRequest global_set_policy_request_resource = 337048498 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Subnetworks.SetIamPolicy. See the method description for details. +message SetIamPolicySubnetworkRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + RegionSetPolicyRequest region_set_policy_request_resource = 276489091 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceGroupManagers.SetInstanceTemplate. See the method description for details. +message SetInstanceTemplateInstanceGroupManagerRequest { + // The name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManagersSetInstanceTemplateRequest instance_group_managers_set_instance_template_request_resource = 9809093 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the managed instance group is located. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionInstanceGroupManagers.SetInstanceTemplate. See the method description for details. +message SetInstanceTemplateRegionInstanceGroupManagerRequest { + // The name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionInstanceGroupManagersSetTemplateRequest region_instance_group_managers_set_template_request_resource = 187310412 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Disks.SetLabels. See the method description for details. +message SetLabelsDiskRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + + // The body resource for this request + ZoneSetLabelsRequest zone_set_labels_request_resource = 364950798 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ExternalVpnGateways.SetLabels. See the method description for details. +message SetLabelsExternalVpnGatewayRequest { + // The body resource for this request + GlobalSetLabelsRequest global_set_labels_request_resource = 319917189 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ForwardingRules.SetLabels. See the method description for details. +message SetLabelsForwardingRuleRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionSetLabelsRequest region_set_labels_request_resource = 259357782 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for GlobalForwardingRules.SetLabels. See the method description for details. +message SetLabelsGlobalForwardingRuleRequest { + // The body resource for this request + GlobalSetLabelsRequest global_set_labels_request_resource = 319917189 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Images.SetLabels. See the method description for details. +message SetLabelsImageRequest { + // The body resource for this request + GlobalSetLabelsRequest global_set_labels_request_resource = 319917189 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.SetLabels. See the method description for details. +message SetLabelsInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstancesSetLabelsRequest instances_set_labels_request_resource = 207749344 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionDisks.SetLabels. See the method description for details. +message SetLabelsRegionDiskRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionSetLabelsRequest region_set_labels_request_resource = 259357782 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Snapshots.SetLabels. See the method description for details. +message SetLabelsSnapshotRequest { + // The body resource for this request + GlobalSetLabelsRequest global_set_labels_request_resource = 319917189 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for VpnGateways.SetLabels. See the method description for details. +message SetLabelsVpnGatewayRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionSetLabelsRequest region_set_labels_request_resource = 259357782 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.SetMachineResources. See the method description for details. +message SetMachineResourcesInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstancesSetMachineResourcesRequest instances_set_machine_resources_request_resource = 196286318 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Instances.SetMachineType. See the method description for details. +message SetMachineTypeInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstancesSetMachineTypeRequest instances_set_machine_type_request_resource = 254157709 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Instances.SetMetadata. See the method description for details. +message SetMetadataInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + Metadata metadata_resource = 291086110 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Instances.SetMinCpuPlatform. See the method description for details. +message SetMinCpuPlatformInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstancesSetMinCpuPlatformRequest instances_set_min_cpu_platform_request_resource = 148459368 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for InstanceGroups.SetNamedPorts. See the method description for details. +message SetNamedPortsInstanceGroupRequest { + // The name of the instance group where the named ports are updated. + string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupsSetNamedPortsRequest instance_groups_set_named_ports_request_resource = 385151535 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the instance group is located. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionInstanceGroups.SetNamedPorts. See the method description for details. +message SetNamedPortsRegionInstanceGroupRequest { + // The name of the regional instance group where the named ports are updated. + string instance_group = 81095253 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionInstanceGroupsSetNamedPortsRequest region_instance_groups_set_named_ports_request_resource = 1574938 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for NodeGroups.SetNodeTemplate. See the method description for details. +message SetNodeTemplateNodeGroupRequest { + // Name of the NodeGroup resource to update. + string node_group = 469958146 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NodeGroupsSetNodeTemplateRequest node_groups_set_node_template_request_resource = 117382321 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Subnetworks.SetPrivateIpGoogleAccess. See the method description for details. +message SetPrivateIpGoogleAccessSubnetworkRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the Subnetwork resource. + string subnetwork = 307827694 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + SubnetworksSetPrivateIpGoogleAccessRequest subnetworks_set_private_ip_google_access_request_resource = 268920696 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetSslProxies.SetProxyHeader. See the method description for details. +message SetProxyHeaderTargetSslProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetSslProxiesSetProxyHeaderRequest target_ssl_proxies_set_proxy_header_request_resource = 205284526 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetSslProxy resource whose ProxyHeader is to be set. + string target_ssl_proxy = 338795853 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetTcpProxies.SetProxyHeader. See the method description for details. +message SetProxyHeaderTargetTcpProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetTcpProxiesSetProxyHeaderRequest target_tcp_proxies_set_proxy_header_request_resource = 219958339 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetTcpProxy resource whose ProxyHeader is to be set. + string target_tcp_proxy = 503065442 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpsProxies.SetQuicOverride. See the method description for details. +message SetQuicOverrideTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetHttpsProxiesSetQuicOverrideRequest target_https_proxies_set_quic_override_request_resource = 72940258 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetHttpsProxy resource to set the QUIC override policy for. The name should conform to RFC1035. + string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.SetScheduling. See the method description for details. +message SetSchedulingInstanceRequest { + // Instance name for this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + Scheduling scheduling_resource = 463181401 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for BackendServices.SetSecurityPolicy. See the method description for details. +message SetSecurityPolicyBackendServiceRequest { + // Name of the BackendService resource to which the security policy should be set. The name should conform to RFC1035. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + SecurityPolicyReference security_policy_reference_resource = 204135024 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.SetServiceAccount. See the method description for details. +message SetServiceAccountInstanceRequest { + // Name of the instance resource to start. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstancesSetServiceAccountRequest instances_set_service_account_request_resource = 275550008 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Instances.SetShieldedInstanceIntegrityPolicy. See the method description for details. +message SetShieldedInstanceIntegrityPolicyInstanceRequest { + // Name or id of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + ShieldedInstanceIntegrityPolicy shielded_instance_integrity_policy_resource = 409169462 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionTargetHttpsProxies.SetSslCertificates. See the method description for details. +message SetSslCertificatesRegionTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionTargetHttpsProxiesSetSslCertificatesRequest region_target_https_proxies_set_ssl_certificates_request_resource = 390693383 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // Name of the TargetHttpsProxy resource to set an SslCertificates resource for. + string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpsProxies.SetSslCertificates. See the method description for details. +message SetSslCertificatesTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetHttpsProxiesSetSslCertificatesRequest target_https_proxies_set_ssl_certificates_request_resource = 223122908 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetHttpsProxy resource to set an SslCertificates resource for. + string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetSslProxies.SetSslCertificates. See the method description for details. +message SetSslCertificatesTargetSslProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetSslProxiesSetSslCertificatesRequest target_ssl_proxies_set_ssl_certificates_request_resource = 147940797 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetSslProxy resource whose SslCertificate resource is to be set. + string target_ssl_proxy = 338795853 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpsProxies.SetSslPolicy. See the method description for details. +message SetSslPolicyTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + SslPolicyReference ssl_policy_reference_resource = 235403836 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetHttpsProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035. + string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetSslProxies.SetSslPolicy. See the method description for details. +message SetSslPolicyTargetSslProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + SslPolicyReference ssl_policy_reference_resource = 235403836 [(google.api.field_behavior) = REQUIRED]; + + // Name of the TargetSslProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035. + string target_ssl_proxy = 338795853 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.SetTags. See the method description for details. +message SetTagsInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + Tags tags_resource = 331435380 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for ForwardingRules.SetTarget. See the method description for details. +message SetTargetForwardingRuleRequest { + // Name of the ForwardingRule resource in which target is to be set. + string forwarding_rule = 269964030 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetReference target_reference_resource = 523721712 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for GlobalForwardingRules.SetTarget. See the method description for details. +message SetTargetGlobalForwardingRuleRequest { + // Name of the ForwardingRule resource in which target is to be set. + string forwarding_rule = 269964030 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + TargetReference target_reference_resource = 523721712 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceGroupManagers.SetTargetPools. See the method description for details. +message SetTargetPoolsInstanceGroupManagerRequest { + // The name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManagersSetTargetPoolsRequest instance_group_managers_set_target_pools_request_resource = 281150216 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the managed instance group is located. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionInstanceGroupManagers.SetTargetPools. See the method description for details. +message SetTargetPoolsRegionInstanceGroupManagerRequest { + // Name of the managed instance group. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionInstanceGroupManagersSetTargetPoolsRequest region_instance_group_managers_set_target_pools_request_resource = 78734717 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionTargetHttpProxies.SetUrlMap. See the method description for details. +message SetUrlMapRegionTargetHttpProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetHttpProxy to set a URL map for. + string target_http_proxy = 206872421 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + UrlMapReference url_map_reference_resource = 398701333 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionTargetHttpsProxies.SetUrlMap. See the method description for details. +message SetUrlMapRegionTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder + optional string request_id = 37109963; + + // Name of the TargetHttpsProxy to set a URL map for. + string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + UrlMapReference url_map_reference_resource = 398701333 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpProxies.SetUrlMap. See the method description for details. +message SetUrlMapTargetHttpProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetHttpProxy to set a URL map for. + string target_http_proxy = 206872421 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + UrlMapReference url_map_reference_resource = 398701333 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for TargetHttpsProxies.SetUrlMap. See the method description for details. +message SetUrlMapTargetHttpsProxyRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the TargetHttpsProxy resource whose URL map is to be set. + string target_https_proxy = 52336748 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + UrlMapReference url_map_reference_resource = 398701333 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Projects.SetUsageExportBucket. See the method description for details. +message SetUsageExportBucketProjectRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + UsageExportLocation usage_export_location_resource = 20260459 [(google.api.field_behavior) = REQUIRED]; + +} + +// A set of Shielded Instance options. +message ShieldedInstanceConfig { + // Defines whether the instance has integrity monitoring enabled. Enabled by default. + optional bool enable_integrity_monitoring = 409071030; + + // Defines whether the instance has Secure Boot enabled. Disabled by default. + optional bool enable_secure_boot = 123568638; + + // Defines whether the instance has the vTPM enabled. Enabled by default. + optional bool enable_vtpm = 181858935; + +} + +// A Shielded Instance Identity. +message ShieldedInstanceIdentity { + // An Endorsement Key (EK) made by the RSA 2048 algorithm issued to the Shielded Instance's vTPM. + optional ShieldedInstanceIdentityEntry encryption_key = 488268707; + + // [Output Only] Type of the resource. Always compute#shieldedInstanceIdentity for shielded Instance identity entry. + optional string kind = 3292052; + + // An Attestation Key (AK) made by the RSA 2048 algorithm issued to the Shielded Instance's vTPM. + optional ShieldedInstanceIdentityEntry signing_key = 320948261; + +} + +// A Shielded Instance Identity Entry. +message ShieldedInstanceIdentityEntry { + // A PEM-encoded X.509 certificate. This field can be empty. + optional string ek_cert = 450178589; + + // A PEM-encoded public key. + optional string ek_pub = 308947940; + +} + +// The policy describes the baseline against which Instance boot integrity is measured. +message ShieldedInstanceIntegrityPolicy { + // Updates the integrity policy baseline using the measurements from the VM instance's most recent boot. + optional bool update_auto_learn_policy = 245490215; + +} + +// Represents a customer-supplied Signing Key used by Cloud CDN Signed URLs +message SignedUrlKey { + // Name of the key. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string key_name = 500938859; + + // 128-bit key value used for signing the URL. The key value must be a valid RFC 4648 Section 5 base64url encoded string. + optional string key_value = 504106897; + +} + +// A request message for Instances.SimulateMaintenanceEvent. See the method description for details. +message SimulateMaintenanceEventInstanceRequest { + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// Represents a Persistent Disk Snapshot resource. You can use snapshots to back up data on a regular interval. For more information, read Creating persistent disk snapshots. +message Snapshot { + // [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // Snapshot creation is in progress. + CREATING = 455564985; + + // Snapshot is currently being deleted. + DELETING = 528602024; + + // Snapshot creation failed. + FAILED = 455706685; + + // Snapshot has been created successfully. + READY = 77848963; + + // Snapshot is being uploaded. + UPLOADING = 267603489; + + } + + // [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date. + enum StorageBytesStatus { + // A value indicating that the enum field is not set. + UNDEFINED_STORAGE_BYTES_STATUS = 0; + + UPDATING = 494614342; + + UP_TO_DATE = 101306702; + + } + + // [Output Only] Set to true if snapshots are automatically created by applying resource policy on the target disk. + optional bool auto_created = 463922264; + + // Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value. + optional string chain_name = 68644169; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] Size of the source disk, specified in GB. + optional int64 disk_size_gb = 316263735; + + // [Output Only] Number of bytes downloaded to restore a snapshot to a disk. + optional int64 download_bytes = 435054068; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#snapshot for Snapshot resources. + optional string kind = 3292052; + + // A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot. + optional string label_fingerprint = 178124825; + + // Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty. + map labels = 500195327; + + // [Output Only] Integer license codes indicating which licenses are attached to this snapshot. + repeated int64 license_codes = 45482664; + + // [Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image). + repeated string licenses = 337642578; + + // An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API. + optional string location_hint = 350519505; + + // Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // [Output Only] Reserved for future use. + optional bool satisfies_pzs = 480964267; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later. + optional CustomerEncryptionKey snapshot_encryption_key = 43334526; + + // The source disk used to create this snapshot. + optional string source_disk = 451753793; + + // The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key. + optional CustomerEncryptionKey source_disk_encryption_key = 531501153; + + // [Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name. + optional string source_disk_id = 454190809; + + // [Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // [Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion. + optional int64 storage_bytes = 424631719; + + // [Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date. + // Check the StorageBytesStatus enum for the list of possible values. + optional string storage_bytes_status = 490739082; + + // Cloud Storage bucket storage location of the snapshot (regional or multi-regional). + repeated string storage_locations = 328005274; + +} + +// Contains a list of Snapshot resources. +message SnapshotList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Snapshot resources. + repeated Snapshot items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// A specification of the parameters to use when creating the instance template from a source instance. +message SourceInstanceParams { + // Attached disks configuration. If not provided, defaults are applied: For boot disk and any other R/W disks, new custom images will be created from each disk. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes. + repeated DiskInstantiationConfig disk_configs = 235580623; + +} + +// Represents an SSL Certificate resource. Google Compute Engine has two SSL Certificate resources: * [Global](/compute/docs/reference/rest/v1/sslCertificates) * [Regional](/compute/docs/reference/rest/v1/regionSslCertificates) The sslCertificates are used by: - external HTTPS load balancers - SSL proxy load balancers The regionSslCertificates are used by internal HTTPS load balancers. Optionally, certificate file contents that you upload can contain a set of up to five PEM-encoded certificates. The API call creates an object (sslCertificate) that holds this data. You can use SSL keys and certificates to secure connections to a load balancer. For more information, read Creating and using SSL certificates, SSL certificates quotas and limits, and Troubleshooting SSL certificates. +message SslCertificate { + // (Optional) Specifies the type of SSL certificate, either "SELF_MANAGED" or "MANAGED". If not specified, the certificate is self-managed and the fields certificate and private_key are used. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + // Google-managed SSLCertificate. + MANAGED = 479501183; + + // Certificate uploaded by user. + SELF_MANAGED = 434437516; + + TYPE_UNSPECIFIED = 437714322; + + } + + // A value read into memory from a certificate file. The certificate file must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert. + optional string certificate = 341787031; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] Expire time of the certificate. RFC3339 + optional string expire_time = 440691181; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#sslCertificate for SSL certificates. + optional string kind = 3292052; + + // Configuration and status of a managed SSL certificate. + optional SslCertificateManagedSslCertificate managed = 298389407; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // A value read into memory from a write-only private key file. The private key file must be in PEM format. For security, only insert requests include this field. + optional string private_key = 361331107; + + // [Output Only] URL of the region where the regional SSL Certificate resides. This field is not applicable to global SSL Certificate. + optional string region = 138946292; + + // [Output only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // Configuration and status of a self-managed SSL certificate. + optional SslCertificateSelfManagedSslCertificate self_managed = 329284012; + + // [Output Only] Domains associated with the certificate via Subject Alternative Name. + repeated string subject_alternative_names = 528807907; + + // (Optional) Specifies the type of SSL certificate, either "SELF_MANAGED" or "MANAGED". If not specified, the certificate is self-managed and the fields certificate and private_key are used. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// +message SslCertificateAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of SslCertificatesScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#sslCertificateAggregatedList for lists of SSL Certificates. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of SslCertificate resources. +message SslCertificateList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of SslCertificate resources. + repeated SslCertificate items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Configuration and status of a managed SSL certificate. +message SslCertificateManagedSslCertificate { + // [Output only] Status of the managed certificate resource. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // The certificate management is working, and a certificate has been provisioned. + ACTIVE = 314733318; + + MANAGED_CERTIFICATE_STATUS_UNSPECIFIED = 474800850; + + // The certificate management is working. GCP will attempt to provision the first certificate. + PROVISIONING = 290896621; + + // Certificate provisioning failed due to an issue with the DNS or load balancing configuration. For details of which domain failed, consult domain_status field. + PROVISIONING_FAILED = 76813775; + + // Certificate provisioning failed due to an issue with the DNS or load balancing configuration. It won't be retried. To try again delete and create a new managed SslCertificate resource. For details of which domain failed, consult domain_status field. + PROVISIONING_FAILED_PERMANENTLY = 275036203; + + // Renewal of the certificate has failed due to an issue with the DNS or load balancing configuration. The existing cert is still serving; however, it will expire shortly. To provision a renewed certificate, delete and create a new managed SslCertificate resource. For details on which domain failed, consult domain_status field. + RENEWAL_FAILED = 434659076; + + } + + // [Output only] Detailed statuses of the domains specified for managed certificate resource. + map domain_status = 360305613; + + // The domains for which a managed SSL certificate will be generated. Each Google-managed SSL certificate supports up to the [maximum number of domains per Google-managed SSL certificate](/load-balancing/docs/quotas#ssl_certificates). + repeated string domains = 226935855; + + // [Output only] Status of the managed certificate resource. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + +} + +// Configuration and status of a self-managed SSL certificate. +message SslCertificateSelfManagedSslCertificate { + // A local certificate file. The certificate must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert. + optional string certificate = 341787031; + + // A write-only private key in PEM format. Only insert requests will include this field. + optional string private_key = 361331107; + +} + +// +message SslCertificatesScopedList { + // List of SslCertificates contained in this scope. + repeated SslCertificate ssl_certificates = 366006543; + + // Informational warning which replaces the list of backend services when the list is empty. + optional Warning warning = 50704284; + +} + +// +message SslPoliciesList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of SslPolicy resources. + repeated SslPolicy items = 100526016; + + // [Output Only] Type of the resource. Always compute#sslPoliciesList for lists of sslPolicies. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message SslPoliciesListAvailableFeaturesResponse { + repeated string features = 246211645; + +} + +// Represents an SSL Policy resource. Use SSL policies to control the SSL features, such as versions and cipher suites, offered by an HTTPS or SSL Proxy load balancer. For more information, read SSL Policy Concepts. +message SslPolicy { + // The minimum version of SSL protocol that can be used by the clients to establish a connection with the load balancer. This can be one of TLS_1_0, TLS_1_1, TLS_1_2. + enum MinTlsVersion { + // A value indicating that the enum field is not set. + UNDEFINED_MIN_TLS_VERSION = 0; + + // TLS 1.0 + TLS_1_0 = 33116734; + + // TLS 1.1 + TLS_1_1 = 33116735; + + // TLS 1.2 + TLS_1_2 = 33116736; + + } + + // Profile specifies the set of SSL features that can be used by the load balancer when negotiating SSL with clients. This can be one of COMPATIBLE, MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to enable must be specified in the customFeatures field. + enum Profile { + // A value indicating that the enum field is not set. + UNDEFINED_PROFILE = 0; + + // Compatible profile. Allows the broadset set of clients, even those which support only out-of-date SSL features to negotiate with the load balancer. + COMPATIBLE = 179357396; + + // Custom profile. Allow only the set of allowed SSL features specified in the customFeatures field. + CUSTOM = 388595569; + + // Modern profile. Supports a wide set of SSL features, allowing modern clients to negotiate SSL with the load balancer. + MODERN = 132013855; + + // Restricted profile. Supports a reduced set of SSL features, intended to meet stricter compliance requirements. + RESTRICTED = 261551195; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // A list of features enabled when the selected profile is CUSTOM. The method returns the set of features that can be specified in this list. This field must be empty if the profile is not CUSTOM. + repeated string custom_features = 34789707; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] The list of features enabled in the SSL policy. + repeated string enabled_features = 469017467; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a SslPolicy. An up-to-date fingerprint must be provided in order to update the SslPolicy, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an SslPolicy. + optional string fingerprint = 234678500; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output only] Type of the resource. Always compute#sslPolicyfor SSL policies. + optional string kind = 3292052; + + // The minimum version of SSL protocol that can be used by the clients to establish a connection with the load balancer. This can be one of TLS_1_0, TLS_1_1, TLS_1_2. + // Check the MinTlsVersion enum for the list of possible values. + optional string min_tls_version = 8155943; + + // Name of the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // Profile specifies the set of SSL features that can be used by the load balancer when negotiating SSL with clients. This can be one of COMPATIBLE, MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to enable must be specified in the customFeatures field. + // Check the Profile enum for the list of possible values. + optional string profile = 227445161; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] If potential misconfigurations are detected for this SSL policy, this field will be populated with warning messages. + repeated Warnings warnings = 498091095; + +} + +// +message SslPolicyReference { + // URL of the SSL policy resource. Set this to empty string to clear any existing SSL policy associated with the target proxy resource. + optional string ssl_policy = 295190213; + +} + +// A request message for Instances.Start. See the method description for details. +message StartInstanceRequest { + // Name of the instance resource to start. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Instances.StartWithEncryptionKey. See the method description for details. +message StartWithEncryptionKeyInstanceRequest { + // Name of the instance resource to start. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstancesStartWithEncryptionKeyRequest instances_start_with_encryption_key_request_resource = 441712511 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// +message StatefulPolicy { + optional StatefulPolicyPreservedState preserved_state = 2634026; + +} + +// Configuration of preserved resources. +message StatefulPolicyPreservedState { + // Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks. + map disks = 95594102; + +} + +// +message StatefulPolicyPreservedStateDiskDevice { + // These stateful disks will never be deleted during autohealing, update or VM instance recreate operations. This flag is used to configure if the disk should be deleted after it is no longer used by the group, e.g. when the given instance or the whole group is deleted. Note: disks attached in READ_ONLY mode cannot be auto-deleted. + enum AutoDelete { + // A value indicating that the enum field is not set. + UNDEFINED_AUTO_DELETE = 0; + + NEVER = 74175084; + + ON_PERMANENT_INSTANCE_DELETION = 95727719; + + } + + // These stateful disks will never be deleted during autohealing, update or VM instance recreate operations. This flag is used to configure if the disk should be deleted after it is no longer used by the group, e.g. when the given instance or the whole group is deleted. Note: disks attached in READ_ONLY mode cannot be auto-deleted. + // Check the AutoDelete enum for the list of possible values. + optional string auto_delete = 464761403; + +} + +// A request message for Instances.Stop. See the method description for details. +message StopInstanceRequest { + // Name of the instance resource to stop. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// Represents a Subnetwork resource. A subnetwork (also known as a subnet) is a logical partition of a Virtual Private Cloud network with one primary IP range and zero or more secondary IP ranges. For more information, read Virtual Private Cloud (VPC) Network. +message Subnetwork { + // The access type of IPv6 address this subnet holds. It's immutable and can only be specified during creation or the first time the subnet is updated into IPV4_IPV6 dual stack. If the ipv6_type is EXTERNAL then this subnet cannot enable direct path. + enum Ipv6AccessType { + // A value indicating that the enum field is not set. + UNDEFINED_IPV6_ACCESS_TYPE = 0; + + // VMs on this subnet will be assigned IPv6 addresses that are accesible via the Internet, as well as the VPC network. + EXTERNAL = 35607499; + + // IPv6 access type not set. Means this subnet hasn't been turned on IPv6 yet. + UNSPECIFIED_IPV6_ACCESS_TYPE = 313080613; + + } + + // The private IPv6 google access type for the VMs in this subnet. This is an expanded field of enablePrivateV6Access. If both fields are set, privateIpv6GoogleAccess will take priority. This field can be both set at resource creation time and updated using patch. + enum PrivateIpv6GoogleAccess { + // A value indicating that the enum field is not set. + UNDEFINED_PRIVATE_IPV6_GOOGLE_ACCESS = 0; + + // Disable private IPv6 access to/from Google services. + DISABLE_GOOGLE_ACCESS = 450958579; + + // Bidirectional private IPv6 access to/from Google services. + ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE = 427975994; + + // Outbound private IPv6 access from VMs in this subnet to Google services. + ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE = 288210263; + + } + + // The purpose of the resource. This field can be either PRIVATE_RFC_1918 or INTERNAL_HTTPS_LOAD_BALANCER. A subnetwork with purpose set to INTERNAL_HTTPS_LOAD_BALANCER is a user-created subnetwork that is reserved for Internal HTTP(S) Load Balancing. If unspecified, the purpose defaults to PRIVATE_RFC_1918. The enableFlowLogs field isn't supported with the purpose field set to INTERNAL_HTTPS_LOAD_BALANCER. + enum Purpose { + // A value indicating that the enum field is not set. + UNDEFINED_PURPOSE = 0; + + // Subnet reserved for Internal HTTP(S) Load Balancing. + INTERNAL_HTTPS_LOAD_BALANCER = 248748889; + + // Regular user created or automatically created subnet. + PRIVATE = 403485027; + + // Regular user created or automatically created subnet. + PRIVATE_RFC_1918 = 254902107; + + // Subnetworks created for Private Service Connect in the producer network. + PRIVATE_SERVICE_CONNECT = 48134724; + + } + + // The role of subnetwork. Currently, this field is only used when purpose = INTERNAL_HTTPS_LOAD_BALANCER. The value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for Internal HTTP(S) Load Balancing. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE or is currently draining. This field can be updated with a patch request. + enum Role { + // A value indicating that the enum field is not set. + UNDEFINED_ROLE = 0; + + // The ACTIVE subnet that is currently used. + ACTIVE = 314733318; + + // The BACKUP subnet that could be promoted to ACTIVE. + BACKUP = 341010882; + + } + + // The stack type for this subnet to identify whether the IPv6 feature is enabled or not. If not specified IPV4_ONLY will be used. This field can be both set at resource creation time and updated using patch. + enum StackType { + // A value indicating that the enum field is not set. + UNDEFINED_STACK_TYPE = 0; + + // New VMs in this subnet can have both IPv4 and IPv6 addresses. + IPV4_IPV6 = 22197249; + + // New VMs in this subnet will only be assigned IPv4 addresses. + IPV4_ONLY = 22373798; + + UNSPECIFIED_STACK_TYPE = 298084569; + + } + + // [Output Only] The state of the subnetwork, which can be one of the following values: READY: Subnetwork is created and ready to use DRAINING: only applicable to subnetworks that have the purpose set to INTERNAL_HTTPS_LOAD_BALANCER and indicates that connections to the load balancer are being drained. A subnetwork that is draining cannot be used or modified until it reaches a status of READY + enum State { + // A value indicating that the enum field is not set. + UNDEFINED_STATE = 0; + + // Subnetwork is being drained. + DRAINING = 480455402; + + // Subnetwork is ready for use. + READY = 77848963; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. This field can be set only at resource creation time. + optional string description = 422937596; + + // Whether to enable flow logging for this subnetwork. If this field is not explicitly set, it will not appear in get listings. If not set the default behavior is to disable flow logging. This field isn't supported with the purpose field set to INTERNAL_HTTPS_LOAD_BALANCER. + optional bool enable_flow_logs = 151544420; + + // [Output Only] The range of external IPv6 addresses that are owned by this subnetwork. + optional string external_ipv6_prefix = 139299190; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a Subnetwork. An up-to-date fingerprint must be provided in order to update the Subnetwork, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a Subnetwork. + optional string fingerprint = 234678500; + + // [Output Only] The gateway address for default routes to reach destination addresses outside this subnetwork. + optional string gateway_address = 459867385; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // The range of internal addresses that are owned by this subnetwork. Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 100.64.0.0/10. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. This field is set at resource creation time. The range can be any range listed in the Valid ranges list. The range can be expanded after creation using expandIpCidrRange. + optional string ip_cidr_range = 98117322; + + // The access type of IPv6 address this subnet holds. It's immutable and can only be specified during creation or the first time the subnet is updated into IPV4_IPV6 dual stack. If the ipv6_type is EXTERNAL then this subnet cannot enable direct path. + // Check the Ipv6AccessType enum for the list of possible values. + optional string ipv6_access_type = 504658653; + + // [Output Only] The range of internal IPv6 addresses that are owned by this subnetwork. + optional string ipv6_cidr_range = 273141258; + + // [Output Only] Type of the resource. Always compute#subnetwork for Subnetwork resources. + optional string kind = 3292052; + + // This field denotes the VPC flow logging options for this subnetwork. If logging is enabled, logs are exported to Cloud Logging. + optional SubnetworkLogConfig log_config = 351299741; + + // The name of the resource, provided by the client when initially creating the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // The URL of the network to which this subnetwork belongs, provided by the client when initially creating the subnetwork. This field can be set only at resource creation time. + optional string network = 232872494; + + // Whether the VMs in this subnet can access Google services without assigned external IP addresses. This field can be both set at resource creation time and updated using setPrivateIpGoogleAccess. + optional bool private_ip_google_access = 421491790; + + // The private IPv6 google access type for the VMs in this subnet. This is an expanded field of enablePrivateV6Access. If both fields are set, privateIpv6GoogleAccess will take priority. This field can be both set at resource creation time and updated using patch. + // Check the PrivateIpv6GoogleAccess enum for the list of possible values. + optional string private_ipv6_google_access = 48277006; + + // The purpose of the resource. This field can be either PRIVATE_RFC_1918 or INTERNAL_HTTPS_LOAD_BALANCER. A subnetwork with purpose set to INTERNAL_HTTPS_LOAD_BALANCER is a user-created subnetwork that is reserved for Internal HTTP(S) Load Balancing. If unspecified, the purpose defaults to PRIVATE_RFC_1918. The enableFlowLogs field isn't supported with the purpose field set to INTERNAL_HTTPS_LOAD_BALANCER. + // Check the Purpose enum for the list of possible values. + optional string purpose = 316407070; + + // URL of the region where the Subnetwork resides. This field can be set only at resource creation time. + optional string region = 138946292; + + // The role of subnetwork. Currently, this field is only used when purpose = INTERNAL_HTTPS_LOAD_BALANCER. The value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for Internal HTTP(S) Load Balancing. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE or is currently draining. This field can be updated with a patch request. + // Check the Role enum for the list of possible values. + optional string role = 3506294; + + // An array of configurations for secondary IP ranges for VM instances contained in this subnetwork. The primary IP of such VM must belong to the primary ipCidrRange of the subnetwork. The alias IPs may belong to either primary or secondary ranges. This field can be updated with a patch request. + repeated SubnetworkSecondaryRange secondary_ip_ranges = 136658915; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // The stack type for this subnet to identify whether the IPv6 feature is enabled or not. If not specified IPV4_ONLY will be used. This field can be both set at resource creation time and updated using patch. + // Check the StackType enum for the list of possible values. + optional string stack_type = 425908881; + + // [Output Only] The state of the subnetwork, which can be one of the following values: READY: Subnetwork is created and ready to use DRAINING: only applicable to subnetworks that have the purpose set to INTERNAL_HTTPS_LOAD_BALANCER and indicates that connections to the load balancer are being drained. A subnetwork that is draining cannot be used or modified until it reaches a status of READY + // Check the State enum for the list of possible values. + optional string state = 109757585; + +} + +// +message SubnetworkAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of SubnetworksScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#subnetworkAggregatedList for aggregated lists of subnetworks. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of Subnetwork resources. +message SubnetworkList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Subnetwork resources. + repeated Subnetwork items = 100526016; + + // [Output Only] Type of resource. Always compute#subnetworkList for lists of subnetworks. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// The available logging options for this subnetwork. +message SubnetworkLogConfig { + // Can only be specified if VPC flow logging for this subnetwork is enabled. Toggles the aggregation interval for collecting flow logs. Increasing the interval time will reduce the amount of generated flow logs for long lasting connections. Default is an interval of 5 seconds per connection. + enum AggregationInterval { + // A value indicating that the enum field is not set. + UNDEFINED_AGGREGATION_INTERVAL = 0; + + INTERVAL_10_MIN = 487155916; + + INTERVAL_15_MIN = 491773521; + + INTERVAL_1_MIN = 69052714; + + INTERVAL_30_SEC = 7548937; + + INTERVAL_5_MIN = 72746798; + + INTERVAL_5_SEC = 72752429; + + } + + // Can only be specified if VPC flow logs for this subnetwork is enabled. Configures whether all, none or a subset of metadata fields should be added to the reported VPC flow logs. Default is EXCLUDE_ALL_METADATA. + enum Metadata { + // A value indicating that the enum field is not set. + UNDEFINED_METADATA = 0; + + CUSTOM_METADATA = 62450749; + + EXCLUDE_ALL_METADATA = 334519954; + + INCLUDE_ALL_METADATA = 164619908; + + } + + // Can only be specified if VPC flow logging for this subnetwork is enabled. Toggles the aggregation interval for collecting flow logs. Increasing the interval time will reduce the amount of generated flow logs for long lasting connections. Default is an interval of 5 seconds per connection. + // Check the AggregationInterval enum for the list of possible values. + optional string aggregation_interval = 174919042; + + // Whether to enable flow logging for this subnetwork. If this field is not explicitly set, it will not appear in get listings. If not set the default behavior is to disable flow logging. + optional bool enable = 311764355; + + // Can only be specified if VPC flow logs for this subnetwork is enabled. Export filter used to define which VPC flow logs should be logged. + optional string filter_expr = 183374428; + + // Can only be specified if VPC flow logging for this subnetwork is enabled. The value of the field must be in [0, 1]. Set the sampling rate of VPC flow logs within the subnetwork where 1.0 means all collected logs are reported and 0.0 means no logs are reported. Default is 0.5, which means half of all collected logs are reported. + optional float flow_sampling = 530150360; + + // Can only be specified if VPC flow logs for this subnetwork is enabled. Configures whether all, none or a subset of metadata fields should be added to the reported VPC flow logs. Default is EXCLUDE_ALL_METADATA. + // Check the Metadata enum for the list of possible values. + optional string metadata = 86866735; + + // Can only be specified if VPC flow logs for this subnetwork is enabled and "metadata" was set to CUSTOM_METADATA. + repeated string metadata_fields = 378461641; + +} + +// Represents a secondary IP range of a subnetwork. +message SubnetworkSecondaryRange { + // The range of IP addresses belonging to this subnetwork secondary range. Provide this property when you create the subnetwork. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Only IPv4 is supported. The range can be any range listed in the Valid ranges list. + optional string ip_cidr_range = 98117322; + + // The name associated with this subnetwork secondary range, used when adding an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork. + optional string range_name = 332216397; + +} + +// +message SubnetworksExpandIpCidrRangeRequest { + // The IP (in CIDR format or netmask) of internal addresses that are legal on this Subnetwork. This range should be disjoint from other subnetworks within this network. This range can only be larger than (i.e. a superset of) the range previously defined before the update. + optional string ip_cidr_range = 98117322; + +} + +// +message SubnetworksScopedList { + // A list of subnetworks contained in this scope. + repeated Subnetwork subnetworks = 415853125; + + // An informational warning that appears when the list of addresses is empty. + optional Warning warning = 50704284; + +} + +// +message SubnetworksSetPrivateIpGoogleAccessRequest { + optional bool private_ip_google_access = 421491790; + +} + +// Subsetting configuration for this BackendService. Currently this is applicable only for Internal TCP/UDP load balancing, Internal HTTP(S) load balancing and Traffic Director. +message Subsetting { + // + enum Policy { + // A value indicating that the enum field is not set. + UNDEFINED_POLICY = 0; + + // Subsetting based on consistent hashing. For Traffic Director, the number of backends per backend group (the subset size) is based on the `subset_size` parameter. For Internal HTTP(S) load balancing, the number of backends per backend group (the subset size) is dynamically adjusted in two cases: - As the number of proxy instances participating in Internal HTTP(S) load balancing increases, the subset size decreases. - When the total number of backends in a network exceeds the capacity of a single proxy instance, subset sizes are reduced automatically for each service that has backend subsetting enabled. + CONSISTENT_HASH_SUBSETTING = 108989492; + + // No Subsetting. Clients may open connections and send traffic to all backends of this backend service. This can lead to performance issues if there is substantial imbalance in the count of clients and backends. + NONE = 2402104; + + } + + // + // Check the Policy enum for the list of possible values. + optional string policy = 91071794; + +} + +// A request message for Networks.SwitchToCustomMode. See the method description for details. +message SwitchToCustomModeNetworkRequest { + // Name of the network to be updated. + string network = 232872494 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// +message TCPHealthCheck { + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, TCP health check follows behavior specified in port and portName fields. + enum PortSpecification { + // A value indicating that the enum field is not set. + UNDEFINED_PORT_SPECIFICATION = 0; + + // The port number in port is used for health checking. + USE_FIXED_PORT = 190235748; + + // The portName is used for health checking. + USE_NAMED_PORT = 349300671; + + // For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. + USE_SERVING_PORT = 362637516; + + } + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + enum ProxyHeader { + // A value indicating that the enum field is not set. + UNDEFINED_PROXY_HEADER = 0; + + NONE = 2402104; + + PROXY_V1 = 334352940; + + } + + // The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535. + optional int32 port = 3446913; + + // Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. + optional string port_name = 41534345; + + // Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, TCP health check follows behavior specified in port and portName fields. + // Check the PortSpecification enum for the list of possible values. + optional string port_specification = 51590597; + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + // Check the ProxyHeader enum for the list of possible values. + optional string proxy_header = 160374142; + + // The application data to send once the TCP connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII. + optional string request = 21951119; + + // The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII. + optional string response = 196547649; + +} + +// A set of instance tags. +message Tags { + // Specifies a fingerprint for this request, which is essentially a hash of the tags' contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update tags. You must always provide an up-to-date fingerprint hash in order to update or change tags. To see the latest fingerprint, make get() request to the instance. + optional string fingerprint = 234678500; + + // An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035. + repeated string items = 100526016; + +} + +// Represents a Target gRPC Proxy resource. A target gRPC proxy is a component of load balancers intended for load balancing gRPC traffic. Only global forwarding rules with load balancing scheme INTERNAL_SELF_MANAGED can reference a target gRPC proxy. The target gRPC Proxy references a URL map that specifies how traffic is routed to gRPC backend services. +message TargetGrpcProxy { + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a TargetGrpcProxy. An up-to-date fingerprint must be provided in order to patch/update the TargetGrpcProxy; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the TargetGrpcProxy. + optional string fingerprint = 234678500; + + // [Output Only] The unique identifier for the resource type. The server generates this identifier. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#targetGrpcProxy for target grpc proxies. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] Server-defined URL with id for the resource. + optional string self_link_with_id = 44520962; + + // URL to the UrlMap resource that defines the mapping from URL to the BackendService. The protocol field in the BackendService must be set to GRPC. + optional string url_map = 367020684; + + // If true, indicates that the BackendServices referenced by the urlMap may be accessed by gRPC applications without using a sidecar proxy. This will enable configuration checks on urlMap and its referenced BackendServices to not allow unsupported features. A gRPC application must use "xds:///" scheme in the target URI of the service it is connecting to. If false, indicates that the BackendServices referenced by the urlMap will be accessed by gRPC applications via a sidecar proxy. In this case, a gRPC application must not use "xds:///" scheme in the target URI of the service it is connecting to + optional bool validate_for_proxyless = 101822888; + +} + +// +message TargetGrpcProxyList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetGrpcProxy resources. + repeated TargetGrpcProxy items = 100526016; + + // [Output Only] Type of the resource. Always compute#targetGrpcProxy for target grpc proxies. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message TargetHttpProxiesScopedList { + // A list of TargetHttpProxies contained in this scope. + repeated TargetHttpProxy target_http_proxies = 162147011; + + // Informational warning which replaces the list of backend services when the list is empty. + optional Warning warning = 50704284; + +} + +// Represents a Target HTTP Proxy resource. Google Compute Engine has two Target HTTP Proxy resources: * [Global](/compute/docs/reference/rest/v1/targetHttpProxies) * [Regional](/compute/docs/reference/rest/v1/regionTargetHttpProxies) A target HTTP proxy is a component of GCP HTTP load balancers. * targetHttpProxies are used by external HTTP load balancers and Traffic Director. * regionTargetHttpProxies are used by internal HTTP load balancers. Forwarding rules reference a target HTTP proxy, and the target proxy then references a URL map. For more information, read Using Target Proxies and Forwarding rule concepts. +message TargetHttpProxy { + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a TargetHttpProxy. An up-to-date fingerprint must be provided in order to patch/update the TargetHttpProxy; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the TargetHttpProxy. + optional string fingerprint = 234678500; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. When this field is set to true, Envoy proxies set up inbound traffic interception and bind to the IP address and port specified in the forwarding rule. This is generally useful when using Traffic Director to configure Envoy as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy proxy listens for inbound requests and handles requests when it receives them. The default is false. + optional bool proxy_bind = 286025582; + + // [Output Only] URL of the region where the regional Target HTTP Proxy resides. This field is not applicable to global Target HTTP Proxies. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // URL to the UrlMap resource that defines the mapping from URL to the BackendService. + optional string url_map = 367020684; + +} + +// +message TargetHttpProxyAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetHttpProxiesScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#targetHttpProxyAggregatedList for lists of Target HTTP Proxies. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + +} + +// A list of TargetHttpProxy resources. +message TargetHttpProxyList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetHttpProxy resources. + repeated TargetHttpProxy items = 100526016; + + // Type of resource. Always compute#targetHttpProxyList for lists of target HTTP proxies. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message TargetHttpsProxiesScopedList { + // A list of TargetHttpsProxies contained in this scope. + repeated TargetHttpsProxy target_https_proxies = 366607882; + + // Informational warning which replaces the list of backend services when the list is empty. + optional Warning warning = 50704284; + +} + +// +message TargetHttpsProxiesSetQuicOverrideRequest { + // QUIC policy for the TargetHttpsProxy resource. + enum QuicOverride { + // A value indicating that the enum field is not set. + UNDEFINED_QUIC_OVERRIDE = 0; + + // The load balancer will not attempt to negotiate QUIC with clients. + DISABLE = 241807048; + + // The load balancer will attempt to negotiate QUIC with clients. + ENABLE = 438835587; + + // No overrides to the default QUIC policy. This option is implicit if no QUIC override has been specified in the request. + NONE = 2402104; + + } + + // QUIC policy for the TargetHttpsProxy resource. + // Check the QuicOverride enum for the list of possible values. + optional string quic_override = 456577197; + +} + +// +message TargetHttpsProxiesSetSslCertificatesRequest { + // New set of SslCertificate resources to associate with this TargetHttpsProxy resource. At least one SSL certificate must be specified. Currently, you may specify up to 15 SSL certificates. + repeated string ssl_certificates = 366006543; + +} + +// Represents a Target HTTPS Proxy resource. Google Compute Engine has two Target HTTPS Proxy resources: * [Global](/compute/docs/reference/rest/v1/targetHttpsProxies) * [Regional](/compute/docs/reference/rest/v1/regionTargetHttpsProxies) A target HTTPS proxy is a component of GCP HTTPS load balancers. * targetHttpsProxies are used by external HTTPS load balancers. * regionTargetHttpsProxies are used by internal HTTPS load balancers. Forwarding rules reference a target HTTPS proxy, and the target proxy then references a URL map. For more information, read Using Target Proxies and Forwarding rule concepts. +message TargetHttpsProxy { + // Specifies the QUIC override policy for this TargetHttpsProxy resource. This setting determines whether the load balancer attempts to negotiate QUIC with clients. You can specify NONE, ENABLE, or DISABLE. - When quic-override is set to NONE, Google manages whether QUIC is used. - When quic-override is set to ENABLE, the load balancer uses QUIC when possible. - When quic-override is set to DISABLE, the load balancer doesn't use QUIC. - If the quic-override flag is not specified, NONE is implied. + enum QuicOverride { + // A value indicating that the enum field is not set. + UNDEFINED_QUIC_OVERRIDE = 0; + + // The load balancer will not attempt to negotiate QUIC with clients. + DISABLE = 241807048; + + // The load balancer will attempt to negotiate QUIC with clients. + ENABLE = 438835587; + + // No overrides to the default QUIC policy. This option is implicit if no QUIC override has been specified in the request. + NONE = 2402104; + + } + + // Optional. A URL referring to a networksecurity.AuthorizationPolicy resource that describes how the proxy should authorize inbound traffic. If left blank, access will not be restricted by an authorization policy. Refer to the AuthorizationPolicy resource for additional details. authorizationPolicy only applies to a global TargetHttpsProxy attached to globalForwardingRules with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. Note: This field currently has no impact. + optional string authorization_policy = 33945528; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a TargetHttpsProxy. An up-to-date fingerprint must be provided in order to patch the TargetHttpsProxy; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the TargetHttpsProxy. + optional string fingerprint = 234678500; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of resource. Always compute#targetHttpsProxy for target HTTPS proxies. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. When this field is set to true, Envoy proxies set up inbound traffic interception and bind to the IP address and port specified in the forwarding rule. This is generally useful when using Traffic Director to configure Envoy as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy proxy listens for inbound requests and handles requests when it receives them. The default is false. + optional bool proxy_bind = 286025582; + + // Specifies the QUIC override policy for this TargetHttpsProxy resource. This setting determines whether the load balancer attempts to negotiate QUIC with clients. You can specify NONE, ENABLE, or DISABLE. - When quic-override is set to NONE, Google manages whether QUIC is used. - When quic-override is set to ENABLE, the load balancer uses QUIC when possible. - When quic-override is set to DISABLE, the load balancer doesn't use QUIC. - If the quic-override flag is not specified, NONE is implied. + // Check the QuicOverride enum for the list of possible values. + optional string quic_override = 456577197; + + // [Output Only] URL of the region where the regional TargetHttpsProxy resides. This field is not applicable to global TargetHttpsProxies. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // Optional. A URL referring to a networksecurity.ServerTlsPolicy resource that describes how the proxy should authenticate inbound traffic. serverTlsPolicy only applies to a global TargetHttpsProxy attached to globalForwardingRules with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. If left blank, communications are not encrypted. Note: This field currently has no impact. + optional string server_tls_policy = 295825266; + + // URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer. At least one SSL certificate must be specified. Currently, you may specify up to 15 SSL certificates. sslCertificates do not apply when the load balancing scheme is set to INTERNAL_SELF_MANAGED. + repeated string ssl_certificates = 366006543; + + // URL of SslPolicy resource that will be associated with the TargetHttpsProxy resource. If not set, the TargetHttpsProxy resource has no SSL policy configured. + optional string ssl_policy = 295190213; + + // A fully-qualified or valid partial URL to the UrlMap resource that defines the mapping from URL to the BackendService. For example, the following are all valid URLs for specifying a URL map: - https://www.googleapis.compute/v1/projects/project/global/urlMaps/ url-map - projects/project/global/urlMaps/url-map - global/urlMaps/url-map + optional string url_map = 367020684; + +} + +// +message TargetHttpsProxyAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetHttpsProxiesScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#targetHttpsProxyAggregatedList for lists of Target HTTP Proxies. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of TargetHttpsProxy resources. +message TargetHttpsProxyList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetHttpsProxy resources. + repeated TargetHttpsProxy items = 100526016; + + // Type of resource. Always compute#targetHttpsProxyList for lists of target HTTPS proxies. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents a Target Instance resource. You can use a target instance to handle traffic for one or more forwarding rules, which is ideal for forwarding protocol traffic that is managed by a single source. For example, ESP, AH, TCP, or UDP. For more information, read Target instances. +message TargetInstance { + // NAT option controlling how IPs are NAT'ed to the instance. Currently only NO_NAT (default value) is supported. + enum NatPolicy { + // A value indicating that the enum field is not set. + UNDEFINED_NAT_POLICY = 0; + + // No NAT performed. + NO_NAT = 161455491; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /instances/instance - projects/project/zones/zone/instances/instance - zones/zone/instances/instance + optional string instance = 18257045; + + // [Output Only] The type of the resource. Always compute#targetInstance for target instances. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // NAT option controlling how IPs are NAT'ed to the instance. Currently only NO_NAT (default value) is supported. + // Check the NatPolicy enum for the list of possible values. + optional string nat_policy = 509780496; + + // The URL of the network this target instance uses to forward traffic. If not specified, the traffic will be forwarded to the network that the default network interface belongs to. + optional string network = 232872494; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] URL of the zone where the target instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string zone = 3744684; + +} + +// +message TargetInstanceAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetInstance resources. + map items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of TargetInstance resources. +message TargetInstanceList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetInstance resources. + repeated TargetInstance items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message TargetInstancesScopedList { + // A list of target instances contained in this scope. + repeated TargetInstance target_instances = 392915280; + + // Informational warning which replaces the list of addresses when the list is empty. + optional Warning warning = 50704284; + +} + +// Represents a Target Pool resource. Target pools are used for network TCP/UDP load balancing. A target pool references member instances, an associated legacy HttpHealthCheck resource, and, optionally, a backup target pool. For more information, read Using target pools. +message TargetPool { + // Session affinity option, must be one of the following values: NONE: Connections from the same client IP may go to any instance in the pool. CLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy. CLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy. + enum SessionAffinity { + // A value indicating that the enum field is not set. + UNDEFINED_SESSION_AFFINITY = 0; + + // 2-tuple hash on packet's source and destination IP addresses. Connections from the same source IP address to the same destination IP address will be served by the same backend VM while that VM remains healthy. + CLIENT_IP = 345665051; + + // 1-tuple hash only on packet's source IP address. Connections from the same source IP address will be served by the same backend VM while that VM remains healthy. This option can only be used for Internal TCP/UDP Load Balancing. + CLIENT_IP_NO_DESTINATION = 106122516; + + // 5-tuple hash on packet's source and destination IP addresses, IP protocol, and source and destination ports. Connections for the same IP protocol from the same source IP address and port to the same destination IP address and port will be served by the same backend VM while that VM remains healthy. This option cannot be used for HTTP(S) load balancing. + CLIENT_IP_PORT_PROTO = 221722926; + + // 3-tuple hash on packet's source and destination IP addresses, and IP protocol. Connections for the same IP protocol from the same source IP address to the same destination IP address will be served by the same backend VM while that VM remains healthy. This option cannot be used for HTTP(S) load balancing. + CLIENT_IP_PROTO = 25322148; + + // Hash based on a cookie generated by the L7 loadbalancer. Only valid for HTTP(S) load balancing. + GENERATED_COOKIE = 370321204; + + // The hash is based on a user specified header field. + HEADER_FIELD = 200737960; + + // The hash is based on a user provided cookie. + HTTP_COOKIE = 494981627; + + // No session affinity. Connections from the same client IP may go to any instance in the pool. + NONE = 2402104; + + } + + // The server-defined URL for the resource. This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool, and its failoverRatio field is properly set to a value between [0, 1]. backupPool and failoverRatio together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below failoverRatio, traffic arriving at the load-balanced IP will be directed to the backup pool. In case where failoverRatio and backupPool are not set, or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the "force" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy. + optional string backup_pool = 45884537; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool (i.e., not as a backup pool to some other target pool). The value of the field must be in [0, 1]. If set, backupPool must also be set. They together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below this number, traffic arriving at the load-balanced IP will be directed to the backup pool. In case where failoverRatio is not set or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the "force" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy. + optional float failover_ratio = 212667006; + + // The URL of the HttpHealthCheck resource. A member instance in this pool is considered healthy if and only if the health checks pass. Only legacy HttpHealthChecks are supported. Only one health check may be specified. + repeated string health_checks = 448370606; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // A list of resource URLs to the virtual machine instances serving this pool. They must live in zones contained in the same region as this pool. + repeated string instances = 29097598; + + // [Output Only] Type of the resource. Always compute#targetPool for target pools. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // [Output Only] URL of the region where the target pool resides. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // Session affinity option, must be one of the following values: NONE: Connections from the same client IP may go to any instance in the pool. CLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy. CLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy. + // Check the SessionAffinity enum for the list of possible values. + optional string session_affinity = 463888561; + +} + +// +message TargetPoolAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetPool resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#targetPoolAggregatedList for aggregated lists of target pools. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message TargetPoolInstanceHealth { + repeated HealthStatus health_status = 380545845; + + // [Output Only] Type of resource. Always compute#targetPoolInstanceHealth when checking the health of an instance. + optional string kind = 3292052; + +} + +// Contains a list of TargetPool resources. +message TargetPoolList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetPool resources. + repeated TargetPool items = 100526016; + + // [Output Only] Type of resource. Always compute#targetPoolList for lists of target pools. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message TargetPoolsAddHealthCheckRequest { + // The HttpHealthCheck to add to the target pool. + repeated HealthCheckReference health_checks = 448370606; + +} + +// +message TargetPoolsAddInstanceRequest { + // A full or partial URL to an instance to add to this target pool. This can be a full or partial URL. For example, the following are valid URLs: - https://www.googleapis.com/compute/v1/projects/project-id/zones/zone /instances/instance-name - projects/project-id/zones/zone/instances/instance-name - zones/zone/instances/instance-name + repeated InstanceReference instances = 29097598; + +} + +// +message TargetPoolsRemoveHealthCheckRequest { + // Health check URL to be removed. This can be a full or valid partial URL. For example, the following are valid URLs: - https://www.googleapis.com/compute/beta/projects/project /global/httpHealthChecks/health-check - projects/project/global/httpHealthChecks/health-check - global/httpHealthChecks/health-check + repeated HealthCheckReference health_checks = 448370606; + +} + +// +message TargetPoolsRemoveInstanceRequest { + // URLs of the instances to be removed from target pool. + repeated InstanceReference instances = 29097598; + +} + +// +message TargetPoolsScopedList { + // A list of target pools contained in this scope. + repeated TargetPool target_pools = 336072617; + + // Informational warning which replaces the list of addresses when the list is empty. + optional Warning warning = 50704284; + +} + +// +message TargetReference { + optional string target = 192835985; + +} + +// +message TargetSslProxiesSetBackendServiceRequest { + // The URL of the new BackendService resource for the targetSslProxy. + optional string service = 373540533; + +} + +// +message TargetSslProxiesSetProxyHeaderRequest { + // The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed. + enum ProxyHeader { + // A value indicating that the enum field is not set. + UNDEFINED_PROXY_HEADER = 0; + + NONE = 2402104; + + PROXY_V1 = 334352940; + + } + + // The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed. + // Check the ProxyHeader enum for the list of possible values. + optional string proxy_header = 160374142; + +} + +// +message TargetSslProxiesSetSslCertificatesRequest { + // New set of URLs to SslCertificate resources to associate with this TargetSslProxy. At least one SSL certificate must be specified. Currently, you may specify up to 15 SSL certificates. + repeated string ssl_certificates = 366006543; + +} + +// Represents a Target SSL Proxy resource. A target SSL proxy is a component of a SSL Proxy load balancer. Global forwarding rules reference a target SSL proxy, and the target proxy then references an external backend service. For more information, read Using Target Proxies. +message TargetSslProxy { + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + enum ProxyHeader { + // A value indicating that the enum field is not set. + UNDEFINED_PROXY_HEADER = 0; + + NONE = 2402104; + + PROXY_V1 = 334352940; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#targetSslProxy for target SSL proxies. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + // Check the ProxyHeader enum for the list of possible values. + optional string proxy_header = 160374142; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // URL to the BackendService resource. + optional string service = 373540533; + + // URLs to SslCertificate resources that are used to authenticate connections to Backends. At least one SSL certificate must be specified. Currently, you may specify up to 15 SSL certificates. sslCertificates do not apply when the load balancing scheme is set to INTERNAL_SELF_MANAGED. + repeated string ssl_certificates = 366006543; + + // URL of SslPolicy resource that will be associated with the TargetSslProxy resource. If not set, the TargetSslProxy resource will not have any SSL policy configured. + optional string ssl_policy = 295190213; + +} + +// Contains a list of TargetSslProxy resources. +message TargetSslProxyList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetSslProxy resources. + repeated TargetSslProxy items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message TargetTcpProxiesSetBackendServiceRequest { + // The URL of the new BackendService resource for the targetTcpProxy. + optional string service = 373540533; + +} + +// +message TargetTcpProxiesSetProxyHeaderRequest { + // The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed. + enum ProxyHeader { + // A value indicating that the enum field is not set. + UNDEFINED_PROXY_HEADER = 0; + + NONE = 2402104; + + PROXY_V1 = 334352940; + + } + + // The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed. + // Check the ProxyHeader enum for the list of possible values. + optional string proxy_header = 160374142; + +} + +// Represents a Target TCP Proxy resource. A target TCP proxy is a component of a TCP Proxy load balancer. Global forwarding rules reference target TCP proxy, and the target proxy then references an external backend service. For more information, read TCP Proxy Load Balancing overview. +message TargetTcpProxy { + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + enum ProxyHeader { + // A value indicating that the enum field is not set. + UNDEFINED_PROXY_HEADER = 0; + + NONE = 2402104; + + PROXY_V1 = 334352940; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#targetTcpProxy for target TCP proxies. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. When this field is set to true, Envoy proxies set up inbound traffic interception and bind to the IP address and port specified in the forwarding rule. This is generally useful when using Traffic Director to configure Envoy as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy proxy listens for inbound requests and handles requests when it receives them. The default is false. + optional bool proxy_bind = 286025582; + + // Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE. + // Check the ProxyHeader enum for the list of possible values. + optional string proxy_header = 160374142; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // URL to the BackendService resource. + optional string service = 373540533; + +} + +// Contains a list of TargetTcpProxy resources. +message TargetTcpProxyList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetTcpProxy resources. + repeated TargetTcpProxy items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents a Target VPN Gateway resource. The target VPN gateway resource represents a Classic Cloud VPN gateway. For more information, read the the Cloud VPN Overview. +message TargetVpnGateway { + // [Output Only] The status of the VPN gateway, which can be one of the following: CREATING, READY, FAILED, or DELETING. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + CREATING = 455564985; + + DELETING = 528602024; + + FAILED = 455706685; + + READY = 77848963; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules are created using compute.forwardingRules.insert and associated with a VPN gateway. + repeated string forwarding_rules = 315821365; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created. + optional string network = 232872494; + + // [Output Only] URL of the region where the target VPN gateway resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The status of the VPN gateway, which can be one of the following: CREATING, READY, FAILED, or DELETING. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // [Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created using the compute.vpntunnels.insert method and associated with a VPN gateway. + repeated string tunnels = 104561931; + +} + +// +message TargetVpnGatewayAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetVpnGateway resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of TargetVpnGateway resources. +message TargetVpnGatewayList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of TargetVpnGateway resources. + repeated TargetVpnGateway items = 100526016; + + // [Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message TargetVpnGatewaysScopedList { + // [Output Only] A list of target VPN gateways contained in this scope. + repeated TargetVpnGateway target_vpn_gateways = 401770888; + + // [Output Only] Informational warning which replaces the list of addresses when the list is empty. + optional Warning warning = 50704284; + +} + +// +message TestFailure { + // The actual output URL evaluated by load balancer containing the scheme, host, path and query parameters. + optional string actual_output_url = 287075458; + + // Actual HTTP status code for rule with `urlRedirect` calculated by load balancer + optional int32 actual_redirect_response_code = 42926553; + + // BackendService or BackendBucket returned by load balancer. + optional string actual_service = 440379652; + + // The expected output URL evaluated by load balancer containing the scheme, host, path and query parameters. + optional string expected_output_url = 433967384; + + // Expected HTTP status code for rule with `urlRedirect` calculated by load balancer + optional int32 expected_redirect_response_code = 18888047; + + // Expected BackendService or BackendBucket resource the given URL should be mapped to. + optional string expected_service = 133987374; + + // HTTP headers of the request. + repeated UrlMapTestHeader headers = 258436998; + + // Host portion of the URL. + optional string host = 3208616; + + // Path portion including query parameters in the URL. + optional string path = 3433509; + +} + +// A request message for Disks.TestIamPermissions. See the method description for details. +message TestIamPermissionsDiskRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ExternalVpnGateways.TestIamPermissions. See the method description for details. +message TestIamPermissionsExternalVpnGatewayRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for FirewallPolicies.TestIamPermissions. See the method description for details. +message TestIamPermissionsFirewallPolicyRequest { + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Images.TestIamPermissions. See the method description for details. +message TestIamPermissionsImageRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.TestIamPermissions. See the method description for details. +message TestIamPermissionsInstanceRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for InstanceTemplates.TestIamPermissions. See the method description for details. +message TestIamPermissionsInstanceTemplateRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for LicenseCodes.TestIamPermissions. See the method description for details. +message TestIamPermissionsLicenseCodeRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Licenses.TestIamPermissions. See the method description for details. +message TestIamPermissionsLicenseRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NetworkEndpointGroups.TestIamPermissions. See the method description for details. +message TestIamPermissionsNetworkEndpointGroupRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NodeGroups.TestIamPermissions. See the method description for details. +message TestIamPermissionsNodeGroupRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for NodeTemplates.TestIamPermissions. See the method description for details. +message TestIamPermissionsNodeTemplateRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for PacketMirrorings.TestIamPermissions. See the method description for details. +message TestIamPermissionsPacketMirroringRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionDisks.TestIamPermissions. See the method description for details. +message TestIamPermissionsRegionDiskRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Reservations.TestIamPermissions. See the method description for details. +message TestIamPermissionsReservationRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ResourcePolicies.TestIamPermissions. See the method description for details. +message TestIamPermissionsResourcePolicyRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ServiceAttachments.TestIamPermissions. See the method description for details. +message TestIamPermissionsServiceAttachmentRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Snapshots.TestIamPermissions. See the method description for details. +message TestIamPermissionsSnapshotRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Subnetworks.TestIamPermissions. See the method description for details. +message TestIamPermissionsSubnetworkRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for VpnGateways.TestIamPermissions. See the method description for details. +message TestIamPermissionsVpnGatewayRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // The name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // Name or id of the resource for this request. + string resource = 195806222 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + TestPermissionsRequest test_permissions_request_resource = 439214758 [(google.api.field_behavior) = REQUIRED]; + +} + +// +message TestPermissionsRequest { + // The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed. + repeated string permissions = 59962500; + +} + +// +message TestPermissionsResponse { + // A subset of `TestPermissionsRequest.permissions` that the caller is allowed. + repeated string permissions = 59962500; + +} + +// +message Uint128 { + optional uint64 high = 3202466; + + optional uint64 low = 107348; + +} + +// A request message for Instances.UpdateAccessConfig. See the method description for details. +message UpdateAccessConfigInstanceRequest { + // The body resource for this request + AccessConfig access_config_resource = 387825552 [(google.api.field_behavior) = REQUIRED]; + + // The instance name for this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The name of the network interface where the access config is attached. + string network_interface = 365387880 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Autoscalers.Update. See the method description for details. +message UpdateAutoscalerRequest { + // Name of the autoscaler to update. + optional string autoscaler = 517258967; + + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for BackendBuckets.Update. See the method description for details. +message UpdateBackendBucketRequest { + // Name of the BackendBucket resource to update. + string backend_bucket = 91714037 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + BackendBucket backend_bucket_resource = 380757784 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for BackendServices.Update. See the method description for details. +message UpdateBackendServiceRequest { + // Name of the BackendService resource to update. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + BackendService backend_service_resource = 347586723 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Instances.UpdateDisplayDevice. See the method description for details. +message UpdateDisplayDeviceInstanceRequest { + // The body resource for this request + DisplayDevice display_device_resource = 289686106 [(google.api.field_behavior) = REQUIRED]; + + // Name of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Firewalls.Update. See the method description for details. +message UpdateFirewallRequest { + // Name of the firewall rule to update. + string firewall = 511016192 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + Firewall firewall_resource = 41425005 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for HealthChecks.Update. See the method description for details. +message UpdateHealthCheckRequest { + // Name of the HealthCheck resource to update. + string health_check = 308876645 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Instances.Update. See the method description for details. +message UpdateInstanceRequest { + // Name of the instance resource to update. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + Instance instance_resource = 215988344 [(google.api.field_behavior) = REQUIRED]; + + // Specifies the action to take when updating an instance even if the updated properties do not require it. If not specified, then Compute Engine acts based on the minimum action that the updated properties require. + optional string minimal_action = 270567060; + + // Specifies the most disruptive action that can be taken on the instance as part of the update. Compute Engine returns an error if the instance properties require a more disruptive action as part of the instance update. Valid options from lowest to highest are NO_EFFECT, REFRESH, and RESTART. + optional string most_disruptive_allowed_action = 66103053; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Instances.UpdateNetworkInterface. See the method description for details. +message UpdateNetworkInterfaceInstanceRequest { + // The instance name for this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // The name of the network interface to update. + string network_interface = 365387880 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NetworkInterface network_interface_resource = 325814789 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for Networks.UpdatePeering. See the method description for details. +message UpdatePeeringNetworkRequest { + // Name of the network resource which the updated peering is belonging to. + string network = 232872494 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + NetworksUpdatePeeringRequest networks_update_peering_request_resource = 224433497 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for InstanceGroupManagers.UpdatePerInstanceConfigs. See the method description for details. +message UpdatePerInstanceConfigsInstanceGroupManagerRequest { + // The name of the managed instance group. It should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + InstanceGroupManagersUpdatePerInstanceConfigsReq instance_group_managers_update_per_instance_configs_req_resource = 141402302 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The name of the zone where the managed instance group is located. It should conform to RFC1035. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for RegionInstanceGroupManagers.UpdatePerInstanceConfigs. See the method description for details. +message UpdatePerInstanceConfigsRegionInstanceGroupManagerRequest { + // The name of the managed instance group. It should conform to RFC1035. + string instance_group_manager = 249363395 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request, should conform to RFC1035. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // The body resource for this request + RegionInstanceGroupManagerUpdateInstanceConfigReq region_instance_group_manager_update_instance_config_req_resource = 89036583 [(google.api.field_behavior) = REQUIRED]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionAutoscalers.Update. See the method description for details. +message UpdateRegionAutoscalerRequest { + // Name of the autoscaler to update. + optional string autoscaler = 517258967; + + // The body resource for this request + Autoscaler autoscaler_resource = 207616118 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionBackendServices.Update. See the method description for details. +message UpdateRegionBackendServiceRequest { + // Name of the BackendService resource to update. + string backend_service = 306946058 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + BackendService backend_service_resource = 347586723 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionHealthChecks.Update. See the method description for details. +message UpdateRegionHealthCheckRequest { + // Name of the HealthCheck resource to update. + string health_check = 308876645 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + HealthCheck health_check_resource = 201925032 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for RegionUrlMaps.Update. See the method description for details. +message UpdateRegionUrlMapRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region scoping this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // begin_interface: MixerMutationRequestBuilder Request ID to support idempotency. + optional string request_id = 37109963; + + // Name of the UrlMap resource to update. + string url_map = 367020684 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Routers.Update. See the method description for details. +message UpdateRouterRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the Router resource to update. + string router = 148608841 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + Router router_resource = 155222084 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Instances.UpdateShieldedInstanceConfig. See the method description for details. +message UpdateShieldedInstanceConfigInstanceRequest { + // Name or id of the instance scoping this request. + string instance = 18257045 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // The body resource for this request + ShieldedInstanceConfig shielded_instance_config_resource = 272059224 [(google.api.field_behavior) = REQUIRED]; + + // The name of the zone for this request. + string zone = 3744684 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "zone" + ]; + +} + +// A request message for UrlMaps.Update. See the method description for details. +message UpdateUrlMapRequest { + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + + // Name of the UrlMap resource to update. + string url_map = 367020684 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + UrlMap url_map_resource = 168675425 [(google.api.field_behavior) = REQUIRED]; + +} + +// Represents a URL Map resource. Google Compute Engine has two URL Map resources: * [Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain types of GCP load balancers and Traffic Director. * urlMaps are used by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are used by internal HTTP(S) load balancers. For a list of supported URL map features by load balancer type, see the Load balancing features: Routing and traffic management table. For a list of supported URL map features for Traffic Director, see the Traffic Director features: Routing and traffic management table. This resource defines mappings from host names and URL paths to either a backend service or a backend bucket. To use the global urlMaps resource, the backend service must have a loadBalancingScheme of either EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more information, read URL Map Concepts. +message UrlMap { + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices. Only one of defaultRouteAction or defaultUrlRedirect must be set. UrlMaps for external HTTP(S) load balancers support only the urlRewrite action within defaultRouteAction. defaultRouteAction has no effect when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + optional HttpRouteAction default_route_action = 378919466; + + // The full or partial URL of the defaultService resource to which traffic is directed if none of the hostRules match. If defaultRouteAction is additionally specified, advanced routing actions like URL Rewrites, etc. take effect prior to sending the request to the backend. However, if defaultService is specified, defaultRouteAction cannot contain any weightedBackendServices. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of defaultService, defaultUrlRedirect or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + optional string default_service = 370242231; + + // When none of the specified hostRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Not supported when the URL map is bound to target gRPC proxy. + optional HttpRedirectAction default_url_redirect = 359503338; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a UrlMap. + optional string fingerprint = 234678500; + + // Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction specified here take effect after headerAction specified under pathMatcher. Note that headerAction is not supported for Loadbalancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + optional HttpHeaderAction header_action = 328077352; + + // The list of HostRules to use against the URL. + repeated HostRule host_rules = 311804832; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#urlMaps for url maps. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // The list of named PathMatchers to use against the URL. + repeated PathMatcher path_matchers = 271664219; + + // [Output Only] URL of the region where the regional URL map resides. This field is not applicable to global URL maps. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // The list of expected URL mapping tests. Request to update this UrlMap will succeed only if all of the test cases pass. You can specify a maximum of 100 tests per UrlMap. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + repeated UrlMapTest tests = 110251553; + +} + +// Contains a list of UrlMap resources. +message UrlMapList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of UrlMap resources. + repeated UrlMap items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message UrlMapReference { + optional string url_map = 367020684; + +} + +// Message for the expected URL mappings. +message UrlMapTest { + // Description of this test case. + optional string description = 422937596; + + // The expected output URL evaluated by load balancer containing the scheme, host, path and query parameters. For rules that forward requests to backends, the test passes only when expectedOutputUrl matches the request forwarded by load balancer to backends. For rules with urlRewrite, the test verifies that the forwarded request matches hostRewrite and pathPrefixRewrite in the urlRewrite action. When service is specified, expectedOutputUrl`s scheme is ignored. For rules with urlRedirect, the test passes only if expectedOutputUrl matches the URL in the load balancer's redirect response. If urlRedirect specifies https_redirect, the test passes only if the scheme in expectedOutputUrl is also set to https. If urlRedirect specifies strip_query, the test passes only if expectedOutputUrl does not contain any query parameters. expectedOutputUrl is optional when service is specified. + optional string expected_output_url = 433967384; + + // For rules with urlRedirect, the test passes only if expectedRedirectResponseCode matches the HTTP status code in load balancer's redirect response. expectedRedirectResponseCode cannot be set when service is set. + optional int32 expected_redirect_response_code = 18888047; + + // HTTP headers for this request. If headers contains a host header, then host must also match the header value. + repeated UrlMapTestHeader headers = 258436998; + + // Host portion of the URL. If headers contains a host header, then host must also match the header value. + optional string host = 3208616; + + // Path portion of the URL. + optional string path = 3433509; + + // Expected BackendService or BackendBucket resource the given URL should be mapped to. service cannot be set if expectedRedirectResponseCode is set. + optional string service = 373540533; + +} + +// HTTP headers used in UrlMapTests. +message UrlMapTestHeader { + // Header name. + optional string name = 3373707; + + // Header value. + optional string value = 111972721; + +} + +// Message representing the validation result for a UrlMap. +message UrlMapValidationResult { + repeated string load_errors = 310147300; + + // Whether the given UrlMap can be successfully loaded. If false, 'loadErrors' indicates the reasons. + optional bool load_succeeded = 128326216; + + repeated TestFailure test_failures = 505934134; + + // If successfully loaded, this field indicates whether the test passed. If false, 'testFailures's indicate the reason of failure. + optional bool test_passed = 192708797; + +} + +// +message UrlMapsAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of UrlMapsScopedList resources. + map items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message UrlMapsScopedList { + // A list of UrlMaps contained in this scope. + repeated UrlMap url_maps = 103352167; + + // Informational warning which replaces the list of backend services when the list is empty. + optional Warning warning = 50704284; + +} + +// +message UrlMapsValidateRequest { + // Content of the UrlMap to be validated. + optional UrlMap resource = 195806222; + +} + +// +message UrlMapsValidateResponse { + optional UrlMapValidationResult result = 139315229; + +} + +// The spec for modifying the path before sending the request to the matched backend service. +message UrlRewrite { + // Prior to forwarding the request to the selected service, the request's host header is replaced with contents of hostRewrite. The value must be between 1 and 255 characters. + optional string host_rewrite = 159819253; + + // Prior to forwarding the request to the selected backend service, the matching portion of the request's path is replaced by pathPrefixRewrite. The value must be between 1 and 1024 characters. + optional string path_prefix_rewrite = 41186361; + +} + +// Subnetwork which the current user has compute.subnetworks.use permission on. +message UsableSubnetwork { + // The range of internal addresses that are owned by this subnetwork. + optional string ip_cidr_range = 98117322; + + // Network URL. + optional string network = 232872494; + + // Secondary IP ranges. + repeated UsableSubnetworkSecondaryRange secondary_ip_ranges = 136658915; + + // Subnetwork URL. + optional string subnetwork = 307827694; + +} + +// Secondary IP range of a usable subnetwork. +message UsableSubnetworkSecondaryRange { + // The range of IP addresses belonging to this subnetwork secondary range. + optional string ip_cidr_range = 98117322; + + // The name associated with this subnetwork secondary range, used when adding an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork. + optional string range_name = 332216397; + +} + +// +message UsableSubnetworksAggregatedList { + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional string id = 3355; + + // [Output] A list of usable subnetwork URLs. + repeated UsableSubnetwork items = 100526016; + + // [Output Only] Type of resource. Always compute#usableSubnetworksAggregatedList for aggregated lists of usable subnetworks. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. In special cases listUsable may return 0 subnetworks and nextPageToken which still should be used to get the next page of results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// The location in Cloud Storage and naming method of the daily usage report. Contains bucket_name and report_name prefix. +message UsageExportLocation { + // The name of an existing bucket in Cloud Storage where the usage report object is stored. The Google Service Account is granted write access to this bucket. This can either be the bucket name by itself, such as example-bucket, or the bucket name with gs:// or https://storage.googleapis.com/ in front of it, such as gs://example-bucket. + optional string bucket_name = 283610048; + + // An optional prefix for the name of the usage report object stored in bucketName. If not supplied, defaults to usage_gce. The report is stored as a CSV file named report_name_prefix_gce_YYYYMMDD.csv where YYYYMMDD is the day of the usage according to Pacific Time. If you supply a prefix, it should conform to Cloud Storage object naming conventions. + optional string report_name_prefix = 320198715; + +} + +// A request message for RegionUrlMaps.Validate. See the method description for details. +message ValidateRegionUrlMapRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region scoping this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + RegionUrlMapsValidateRequest region_url_maps_validate_request_resource = 56632858 [(google.api.field_behavior) = REQUIRED]; + + // Name of the UrlMap resource to be validated as. + string url_map = 367020684 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for UrlMaps.Validate. See the method description for details. +message ValidateUrlMapRequest { + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the UrlMap resource to be validated as. + string url_map = 367020684 [(google.api.field_behavior) = REQUIRED]; + + // The body resource for this request + UrlMapsValidateRequest url_maps_validate_request_resource = 395913455 [(google.api.field_behavior) = REQUIRED]; + +} + +// Contain information of Nat mapping for a VM endpoint (i.e., NIC). +message VmEndpointNatMappings { + // Name of the VM instance which the endpoint belongs to + optional string instance_name = 227947509; + + repeated VmEndpointNatMappingsInterfaceNatMappings interface_nat_mappings = 256196617; + +} + +// Contain information of Nat mapping for an interface of this endpoint. +message VmEndpointNatMappingsInterfaceNatMappings { + // List of all drain IP:port-range mappings assigned to this interface. These ranges are inclusive, that is, both the first and the last ports can be used for NAT. Example: ["2.2.2.2:12345-12355", "1.1.1.1:2234-2234"]. + repeated string drain_nat_ip_port_ranges = 395440577; + + // A list of all IP:port-range mappings assigned to this interface. These ranges are inclusive, that is, both the first and the last ports can be used for NAT. Example: ["2.2.2.2:12345-12355", "1.1.1.1:2234-2234"]. + repeated string nat_ip_port_ranges = 531830810; + + // Total number of drain ports across all NAT IPs allocated to this interface. It equals to the aggregated port number in the field drain_nat_ip_port_ranges. + optional int32 num_total_drain_nat_ports = 335532793; + + // Total number of ports across all NAT IPs allocated to this interface. It equals to the aggregated port number in the field nat_ip_port_ranges. + optional int32 num_total_nat_ports = 299904384; + + // Alias IP range for this interface endpoint. It will be a private (RFC 1918) IP range. Examples: "10.33.4.55/32", or "192.168.5.0/24". + optional string source_alias_ip_range = 440340952; + + // Primary IP of the VM for this NIC. + optional string source_virtual_ip = 149836159; + +} + +// Contains a list of VmEndpointNatMappings. +message VmEndpointNatMappingsList { + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional string id = 3355; + + // [Output Only] Type of resource. Always compute#vmEndpointNatMappingsList for lists of Nat mappings of VM endpoints. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] A list of Nat mapping information of VM endpoints. + repeated VmEndpointNatMappings result = 139315229; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Represents a HA VPN gateway. HA VPN is a high-availability (HA) Cloud VPN solution that lets you securely connect your on-premises network to your Google Cloud Virtual Private Cloud network through an IPsec VPN connection in a single region. For more information about Cloud HA VPN solutions, see Cloud VPN topologies . +message VpnGateway { + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of resource. Always compute#vpnGateway for VPN gateways. + optional string kind = 3292052; + + // A fingerprint for the labels being applied to this VpnGateway, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an VpnGateway. + optional string label_fingerprint = 178124825; + + // Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty. + map labels = 500195327; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created. + optional string network = 232872494; + + // [Output Only] URL of the region where the VPN gateway resides. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // The list of VPN interfaces associated with this VPN gateway. + repeated VpnGatewayVpnGatewayInterface vpn_interfaces = 91842181; + +} + +// +message VpnGatewayAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of VpnGateway resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#vpnGateway for VPN gateways. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of VpnGateway resources. +message VpnGatewayList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of VpnGateway resources. + repeated VpnGateway items = 100526016; + + // [Output Only] Type of resource. Always compute#vpnGateway for VPN gateways. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message VpnGatewayStatus { + // List of VPN connection for this VpnGateway. + repeated VpnGatewayStatusVpnConnection vpn_connections = 439334538; + +} + +// Describes the high availability requirement state for the VPN connection between this Cloud VPN gateway and a peer gateway. +message VpnGatewayStatusHighAvailabilityRequirementState { + // Indicates the high availability requirement state for the VPN connection. Valid values are CONNECTION_REDUNDANCY_MET, CONNECTION_REDUNDANCY_NOT_MET. + enum State { + // A value indicating that the enum field is not set. + UNDEFINED_STATE = 0; + + // VPN tunnels are configured with adequate redundancy from Cloud VPN gateway to the peer VPN gateway. For both GCP-to-non-GCP and GCP-to-GCP connections, the adequate redundancy is a pre-requirement for users to get 99.99% availability on GCP side; please note that for any connection, end-to-end 99.99% availability is subject to proper configuration on the peer VPN gateway. + CONNECTION_REDUNDANCY_MET = 505242907; + + // VPN tunnels are not configured with adequate redundancy from the Cloud VPN gateway to the peer gateway + CONNECTION_REDUNDANCY_NOT_MET = 511863311; + + } + + // Indicates the reason why the VPN connection does not meet the high availability redundancy criteria/requirement. Valid values is INCOMPLETE_TUNNELS_COVERAGE. + enum UnsatisfiedReason { + // A value indicating that the enum field is not set. + UNDEFINED_UNSATISFIED_REASON = 0; + + INCOMPLETE_TUNNELS_COVERAGE = 55917437; + + } + + // Indicates the high availability requirement state for the VPN connection. Valid values are CONNECTION_REDUNDANCY_MET, CONNECTION_REDUNDANCY_NOT_MET. + // Check the State enum for the list of possible values. + optional string state = 109757585; + + // Indicates the reason why the VPN connection does not meet the high availability redundancy criteria/requirement. Valid values is INCOMPLETE_TUNNELS_COVERAGE. + // Check the UnsatisfiedReason enum for the list of possible values. + optional string unsatisfied_reason = 55016330; + +} + +// Contains some information about a VPN tunnel. +message VpnGatewayStatusTunnel { + // The VPN gateway interface this VPN tunnel is associated with. + optional uint32 local_gateway_interface = 158764330; + + // The peer gateway interface this VPN tunnel is connected to, the peer gateway could either be an external VPN gateway or GCP VPN gateway. + optional uint32 peer_gateway_interface = 214380385; + + // URL reference to the VPN tunnel. + optional string tunnel_url = 78975256; + +} + +// A VPN connection contains all VPN tunnels connected from this VpnGateway to the same peer gateway. The peer gateway could either be a external VPN gateway or GCP VPN gateway. +message VpnGatewayStatusVpnConnection { + // URL reference to the peer external VPN gateways to which the VPN tunnels in this VPN connection are connected. This field is mutually exclusive with peer_gcp_gateway. + optional string peer_external_gateway = 384956173; + + // URL reference to the peer side VPN gateways to which the VPN tunnels in this VPN connection are connected. This field is mutually exclusive with peer_gcp_gateway. + optional string peer_gcp_gateway = 281867452; + + // HighAvailabilityRequirementState for the VPN connection. + optional VpnGatewayStatusHighAvailabilityRequirementState state = 109757585; + + // List of VPN tunnels that are in this VPN connection. + repeated VpnGatewayStatusTunnel tunnels = 104561931; + +} + +// A VPN gateway interface. +message VpnGatewayVpnGatewayInterface { + // [Output Only] Numeric identifier for this VPN interface associated with the VPN gateway. + optional uint32 id = 3355; + + // URL of the VLAN attachment (interconnectAttachment) resource for this VPN gateway interface. When the value of this field is present, the VPN gateway is used for IPsec-encrypted Cloud Interconnect; all egress or ingress traffic for this VPN gateway interface goes through the specified VLAN attachment resource. Not currently available publicly. + optional string interconnect_attachment = 308135284; + + // [Output Only] IP address for this VPN interface associated with the VPN gateway. The IP address could be either a regional external IP address or a regional internal IP address. The two IP addresses for a VPN gateway must be all regional external or regional internal IP addresses. There cannot be a mix of regional external IP addresses and regional internal IP addresses. For IPsec-encrypted Cloud Interconnect, the IP addresses for both interfaces could either be regional internal IP addresses or regional external IP addresses. For regular (non IPsec-encrypted Cloud Interconnect) HA VPN tunnels, the IP address must be a regional external IP address. + optional string ip_address = 406272220; + +} + +// +message VpnGatewaysGetStatusResponse { + optional VpnGatewayStatus result = 139315229; + +} + +// +message VpnGatewaysScopedList { + // [Output Only] A list of VPN gateways contained in this scope. + repeated VpnGateway vpn_gateways = 259177882; + + // [Output Only] Informational warning which replaces the list of addresses when the list is empty. + optional Warning warning = 50704284; + +} + +// Represents a Cloud VPN Tunnel resource. For more information about VPN, read the the Cloud VPN Overview. +message VpnTunnel { + // [Output Only] The status of the VPN tunnel, which can be one of the following: - PROVISIONING: Resource is being allocated for the VPN tunnel. - WAITING_FOR_FULL_CONFIG: Waiting to receive all VPN-related configs from the user. Network, TargetVpnGateway, VpnTunnel, ForwardingRule, and Route resources are needed to setup the VPN tunnel. - FIRST_HANDSHAKE: Successful first handshake with the peer VPN. - ESTABLISHED: Secure session is successfully established with the peer VPN. - NETWORK_ERROR: Deprecated, replaced by NO_INCOMING_PACKETS - AUTHORIZATION_ERROR: Auth error (for example, bad shared secret). - NEGOTIATION_FAILURE: Handshake failed. - DEPROVISIONING: Resources are being deallocated for the VPN tunnel. - FAILED: Tunnel creation has failed and the tunnel is not ready to be used. - NO_INCOMING_PACKETS: No incoming packets from peer. - REJECTED: Tunnel configuration was rejected, can be result of being denied access. - ALLOCATING_RESOURCES: Cloud VPN is in the process of allocating all required resources. - STOPPED: Tunnel is stopped due to its Forwarding Rules being deleted for Classic VPN tunnels or the project is in frozen state. - PEER_IDENTITY_MISMATCH: Peer identity does not match peer IP, probably behind NAT. - TS_NARROWING_NOT_ALLOWED: Traffic selector narrowing not allowed for an HA-VPN tunnel. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + // Cloud VPN is in the process of allocating all required resources (specifically, a borg task). + ALLOCATING_RESOURCES = 320922816; + + // Auth error (e.g. bad shared secret). + AUTHORIZATION_ERROR = 23580290; + + // Resources is being deallocated for the VPN tunnel. + DEPROVISIONING = 428935662; + + // Secure session is successfully established with peer VPN. + ESTABLISHED = 88852344; + + // Tunnel creation has failed and the tunnel is not ready to be used. + FAILED = 455706685; + + // Successful first handshake with peer VPN. + FIRST_HANDSHAKE = 191393000; + + // Handshake failed. + NEGOTIATION_FAILURE = 360325868; + + // Deprecated, replaced by NO_INCOMING_PACKETS + NETWORK_ERROR = 193912951; + + // No incoming packets from peer + NO_INCOMING_PACKETS = 119983216; + + // Resource is being allocated for the VPN tunnel. + PROVISIONING = 290896621; + + // Tunnel configuration was rejected, can be result of being denylisted. + REJECTED = 174130302; + + // Tunnel is stopped due to its Forwarding Rules being deleted. + STOPPED = 444276141; + + // Waiting to receive all VPN-related configs from user. Network, TargetVpnGateway, VpnTunnel, ForwardingRule and Route resources are needed to setup VPN tunnel. + WAITING_FOR_FULL_CONFIG = 41640522; + + } + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this property when you create the resource. + optional string description = 422937596; + + // [Output Only] Detailed status message for the VPN tunnel. + optional string detailed_status = 333501025; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // IKE protocol version to use when establishing the VPN tunnel with the peer VPN gateway. Acceptable IKE versions are 1 or 2. The default version is 2. + optional int32 ike_version = 218376220; + + // [Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels. + optional string kind = 3292052; + + // Local traffic selector to use when establishing the VPN tunnel with the peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges must be disjoint. Only IPv4 is supported. + repeated string local_traffic_selector = 317314613; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. + optional string name = 3373707; + + // URL of the peer side external VPN gateway to which this VPN tunnel is connected. Provided by the client when the VPN tunnel is created. This field is exclusive with the field peerGcpGateway. + optional string peer_external_gateway = 384956173; + + // The interface ID of the external VPN gateway to which this VPN tunnel is connected. Provided by the client when the VPN tunnel is created. + optional int32 peer_external_gateway_interface = 452768391; + + // URL of the peer side HA GCP VPN gateway to which this VPN tunnel is connected. Provided by the client when the VPN tunnel is created. This field can be used when creating highly available VPN from VPC network to VPC network, the field is exclusive with the field peerExternalGateway. If provided, the VPN tunnel will automatically use the same vpnGatewayInterface ID in the peer GCP VPN gateway. + optional string peer_gcp_gateway = 281867452; + + // IP address of the peer VPN gateway. Only IPv4 is supported. + optional string peer_ip = 383249700; + + // [Output Only] URL of the region where the VPN tunnel resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. + optional string region = 138946292; + + // Remote traffic selectors to use when establishing the VPN tunnel with the peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported. + repeated string remote_traffic_selector = 358887098; + + // URL of the router resource to be used for dynamic routing. + optional string router = 148608841; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway. + optional string shared_secret = 381932490; + + // Hash of the shared secret. + optional string shared_secret_hash = 398881891; + + // [Output Only] The status of the VPN tunnel, which can be one of the following: - PROVISIONING: Resource is being allocated for the VPN tunnel. - WAITING_FOR_FULL_CONFIG: Waiting to receive all VPN-related configs from the user. Network, TargetVpnGateway, VpnTunnel, ForwardingRule, and Route resources are needed to setup the VPN tunnel. - FIRST_HANDSHAKE: Successful first handshake with the peer VPN. - ESTABLISHED: Secure session is successfully established with the peer VPN. - NETWORK_ERROR: Deprecated, replaced by NO_INCOMING_PACKETS - AUTHORIZATION_ERROR: Auth error (for example, bad shared secret). - NEGOTIATION_FAILURE: Handshake failed. - DEPROVISIONING: Resources are being deallocated for the VPN tunnel. - FAILED: Tunnel creation has failed and the tunnel is not ready to be used. - NO_INCOMING_PACKETS: No incoming packets from peer. - REJECTED: Tunnel configuration was rejected, can be result of being denied access. - ALLOCATING_RESOURCES: Cloud VPN is in the process of allocating all required resources. - STOPPED: Tunnel is stopped due to its Forwarding Rules being deleted for Classic VPN tunnels or the project is in frozen state. - PEER_IDENTITY_MISMATCH: Peer identity does not match peer IP, probably behind NAT. - TS_NARROWING_NOT_ALLOWED: Traffic selector narrowing not allowed for an HA-VPN tunnel. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // URL of the Target VPN gateway with which this VPN tunnel is associated. Provided by the client when the VPN tunnel is created. + optional string target_vpn_gateway = 532512843; + + // URL of the VPN gateway with which this VPN tunnel is associated. Provided by the client when the VPN tunnel is created. This must be used (instead of target_vpn_gateway) if a High Availability VPN gateway resource is created. + optional string vpn_gateway = 406684153; + + // The interface ID of the VPN gateway with which this VPN tunnel is associated. + optional int32 vpn_gateway_interface = 95979123; + +} + +// +message VpnTunnelAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of VpnTunnelsScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Unreachable resources. + repeated string unreachables = 243372063; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of VpnTunnel resources. +message VpnTunnelList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of VpnTunnel resources. + repeated VpnTunnel items = 100526016; + + // [Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message VpnTunnelsScopedList { + // A list of VPN tunnels contained in this scope. + repeated VpnTunnel vpn_tunnels = 163494080; + + // Informational warning which replaces the list of addresses when the list is empty. + optional Warning warning = 50704284; + +} + +// +message WafExpressionSet { + // A list of alternate IDs. The format should be: - E.g. XSS-stable Generic suffix like "stable" is particularly useful if a policy likes to avail newer set of expressions without having to change the policy. A given alias name can't be used for more than one entity set. + repeated string aliases = 159207166; + + // List of available expressions. + repeated WafExpressionSetExpression expressions = 175554779; + + // Google specified expression set ID. The format should be: - E.g. XSS-20170329 required + optional string id = 3355; + +} + +// +message WafExpressionSetExpression { + // Expression ID should uniquely identify the origin of the expression. E.g. owasp-crs-v020901-id973337 identifies Owasp core rule set version 2.9.1 rule id 973337. The ID could be used to determine the individual attack definition that has been detected. It could also be used to exclude it from the policy in case of false positive. required + optional string id = 3355; + +} + +// A request message for GlobalOperations.Wait. See the method description for details. +message WaitGlobalOperationRequest { + // Name of the Operations resource to return. + string operation = 52090215 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for RegionOperations.Wait. See the method description for details. +message WaitRegionOperationRequest { + // Name of the Operations resource to return. + string operation = 52090215 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for ZoneOperations.Wait. See the method description for details. +message WaitZoneOperationRequest { + // Name of the Operations resource to return. + string operation = 52090215 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the zone for this request. + string zone = 3744684 [(google.api.field_behavior) = REQUIRED]; + +} + +// [Output Only] Informational warning message. +message Warning { + // [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response. + enum Code { + // A value indicating that the enum field is not set. + UNDEFINED_CODE = 0; + + // Warning about failed cleanup of transient changes made by a failed operation. + CLEANUP_FAILED = 150308440; + + // A link to a deprecated resource was created. + DEPRECATED_RESOURCE_USED = 391835586; + + // When deploying and at least one of the resources has a type marked as deprecated + DEPRECATED_TYPE_USED = 346526230; + + // The user created a boot disk that is larger than image size. + DISK_SIZE_LARGER_THAN_IMAGE_SIZE = 369442967; + + // When deploying and at least one of the resources has a type marked as experimental + EXPERIMENTAL_TYPE_USED = 451954443; + + // Warning that is present in an external api call + EXTERNAL_API_WARNING = 175546307; + + // Warning that value of a field has been overridden. Deprecated unused field. + FIELD_VALUE_OVERRIDEN = 329669423; + + // The operation involved use of an injected kernel, which is deprecated. + INJECTED_KERNELS_DEPRECATED = 417377419; + + // When deploying a deployment with a exceedingly large number of resources + LARGE_DEPLOYMENT_WARNING = 481440678; + + // A resource depends on a missing type + MISSING_TYPE_DEPENDENCY = 344505463; + + // The route's nextHopIp address is not assigned to an instance on the network. + NEXT_HOP_ADDRESS_NOT_ASSIGNED = 324964999; + + // The route's next hop instance cannot ip forward. + NEXT_HOP_CANNOT_IP_FORWARD = 383382887; + + // The route's nextHopInstance URL refers to an instance that does not exist. + NEXT_HOP_INSTANCE_NOT_FOUND = 464250446; + + // The route's nextHopInstance URL refers to an instance that is not on the same network as the route. + NEXT_HOP_INSTANCE_NOT_ON_NETWORK = 243758146; + + // The route's next hop instance does not have a status of RUNNING. + NEXT_HOP_NOT_RUNNING = 417081265; + + // Error which is not critical. We decided to continue the process despite the mentioned error. + NOT_CRITICAL_ERROR = 105763924; + + // No results are present on a particular list page. + NO_RESULTS_ON_PAGE = 30036744; + + // Success is reported, but some results may be missing due to errors + PARTIAL_SUCCESS = 39966469; + + // The user attempted to use a resource that requires a TOS they have not accepted. + REQUIRED_TOS_AGREEMENT = 3745539; + + // Warning that a resource is in use. + RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING = 496728641; + + // One or more of the resources set to auto-delete could not be deleted because they were in use. + RESOURCE_NOT_DELETED = 168598460; + + // When a resource schema validation is ignored. + SCHEMA_VALIDATION_IGNORED = 275245642; + + // Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group. + SINGLE_INSTANCE_PROPERTY_TEMPLATE = 268305617; + + // When undeclared properties in the schema are present + UNDECLARED_PROPERTIES = 390513439; + + // A given scope cannot be reached. + UNREACHABLE = 13328052; + + } + + // [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response. + // Check the Code enum for the list of possible values. + optional string code = 3059181; + + // [Output Only] Metadata about this warning in key: value format. For example: "data": [ { "key": "scope", "value": "zones/us-east1-d" } + repeated Data data = 3076010; + + // [Output Only] A human-readable description of the warning code. + optional string message = 418054151; + +} + +// +message Warnings { + // [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response. + enum Code { + // A value indicating that the enum field is not set. + UNDEFINED_CODE = 0; + + // Warning about failed cleanup of transient changes made by a failed operation. + CLEANUP_FAILED = 150308440; + + // A link to a deprecated resource was created. + DEPRECATED_RESOURCE_USED = 391835586; + + // When deploying and at least one of the resources has a type marked as deprecated + DEPRECATED_TYPE_USED = 346526230; + + // The user created a boot disk that is larger than image size. + DISK_SIZE_LARGER_THAN_IMAGE_SIZE = 369442967; + + // When deploying and at least one of the resources has a type marked as experimental + EXPERIMENTAL_TYPE_USED = 451954443; + + // Warning that is present in an external api call + EXTERNAL_API_WARNING = 175546307; + + // Warning that value of a field has been overridden. Deprecated unused field. + FIELD_VALUE_OVERRIDEN = 329669423; + + // The operation involved use of an injected kernel, which is deprecated. + INJECTED_KERNELS_DEPRECATED = 417377419; + + // When deploying a deployment with a exceedingly large number of resources + LARGE_DEPLOYMENT_WARNING = 481440678; + + // A resource depends on a missing type + MISSING_TYPE_DEPENDENCY = 344505463; + + // The route's nextHopIp address is not assigned to an instance on the network. + NEXT_HOP_ADDRESS_NOT_ASSIGNED = 324964999; + + // The route's next hop instance cannot ip forward. + NEXT_HOP_CANNOT_IP_FORWARD = 383382887; + + // The route's nextHopInstance URL refers to an instance that does not exist. + NEXT_HOP_INSTANCE_NOT_FOUND = 464250446; + + // The route's nextHopInstance URL refers to an instance that is not on the same network as the route. + NEXT_HOP_INSTANCE_NOT_ON_NETWORK = 243758146; + + // The route's next hop instance does not have a status of RUNNING. + NEXT_HOP_NOT_RUNNING = 417081265; + + // Error which is not critical. We decided to continue the process despite the mentioned error. + NOT_CRITICAL_ERROR = 105763924; + + // No results are present on a particular list page. + NO_RESULTS_ON_PAGE = 30036744; + + // Success is reported, but some results may be missing due to errors + PARTIAL_SUCCESS = 39966469; + + // The user attempted to use a resource that requires a TOS they have not accepted. + REQUIRED_TOS_AGREEMENT = 3745539; + + // Warning that a resource is in use. + RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING = 496728641; + + // One or more of the resources set to auto-delete could not be deleted because they were in use. + RESOURCE_NOT_DELETED = 168598460; + + // When a resource schema validation is ignored. + SCHEMA_VALIDATION_IGNORED = 275245642; + + // Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group. + SINGLE_INSTANCE_PROPERTY_TEMPLATE = 268305617; + + // When undeclared properties in the schema are present + UNDECLARED_PROPERTIES = 390513439; + + // A given scope cannot be reached. + UNREACHABLE = 13328052; + + } + + // [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response. + // Check the Code enum for the list of possible values. + optional string code = 3059181; + + // [Output Only] Metadata about this warning in key: value format. For example: "data": [ { "key": "scope", "value": "zones/us-east1-d" } + repeated Data data = 3076010; + + // [Output Only] A human-readable description of the warning code. + optional string message = 418054151; + +} + +// In contrast to a single BackendService in HttpRouteAction to which all matching traffic is directed to, WeightedBackendService allows traffic to be split across multiple BackendServices. The volume of traffic for each BackendService is proportional to the weight specified in each WeightedBackendService +message WeightedBackendService { + // The full or partial URL to the default BackendService resource. Before forwarding the request to backendService, the loadbalancer applies any relevant headerActions specified as part of this backendServiceWeight. + optional string backend_service = 306946058; + + // Specifies changes to request and response headers that need to take effect for the selected backendService. headerAction specified here take effect before headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap. Note that headerAction is not supported for Loadbalancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true. + optional HttpHeaderAction header_action = 328077352; + + // Specifies the fraction of traffic sent to backendService, computed as weight / (sum of all weightedBackendService weights in routeAction) . The selection of a backend service is determined only for new traffic. Once a user's request has been directed to a backendService, subsequent requests will be sent to the same backendService as determined by the BackendService's session affinity policy. The value must be between 0 and 1000 + optional uint32 weight = 282149496; + +} + +// +message XpnHostList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // [Output Only] A list of shared VPC host project URLs. + repeated Project items = 100526016; + + // [Output Only] Type of resource. Always compute#xpnHostList for lists of shared VPC hosts. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Service resource (a.k.a service project) ID. +message XpnResourceId { + // The type of the service resource. + enum Type { + // A value indicating that the enum field is not set. + UNDEFINED_TYPE = 0; + + PROJECT = 408671993; + + XPN_RESOURCE_TYPE_UNSPECIFIED = 151607034; + + } + + // The ID of the service resource. In the case of projects, this field supports project id (e.g., my-project-123) and project number (e.g. 12345678). + optional string id = 3355; + + // The type of the service resource. + // Check the Type enum for the list of possible values. + optional string type = 3575610; + +} + +// Represents a Zone resource. A zone is a deployment area. These deployment areas are subsets of a region. For example the zone us-east1-a is located in the us-east1 region. For more information, read Regions and Zones. +message Zone { + // [Output Only] Status of the zone, either UP or DOWN. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + DOWN = 2104482; + + UP = 2715; + + } + + // [Output Only] Available cpu/platform selections for the zone. + repeated string available_cpu_platforms = 175536531; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // [Output Only] The deprecation status associated with this zone. + optional DeprecationStatus deprecated = 515138995; + + // [Output Only] Textual description of the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] Type of the resource. Always compute#zone for zones. + optional string kind = 3292052; + + // [Output Only] Name of the resource. + optional string name = 3373707; + + // [Output Only] Full URL reference to the region which hosts the zone. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] Status of the zone, either UP or DOWN. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // [Output Only] Reserved for future use. + optional bool supports_pzs = 83983214; + +} + +// Contains a list of zone resources. +message ZoneList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Zone resources. + repeated Zone items = 100526016; + + // Type of resource. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message ZoneSetLabelsRequest { + // The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint. + optional string label_fingerprint = 178124825; + + // The labels to set for this resource. + map labels = 500195327; + +} + +// +message ZoneSetPolicyRequest { + // Flatten Policy to create a backwacd compatible wire-format. Deprecated. Use 'policy' to specify bindings. + repeated Binding bindings = 403251854; + + // Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify the etag. + optional string etag = 3123477; + + // REQUIRED: The complete policy to be applied to the 'resource'. The size of the policy is limited to a few 10s of KB. An empty policy is in general a valid policy but certain services (like Projects) might reject them. + optional Policy policy = 91071794; + +} + +// +// Services +// +// The AcceleratorTypes API. +service AcceleratorTypes { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute.readonly," + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of accelerator types. + rpc AggregatedList(AggregatedListAcceleratorTypesRequest) returns (AcceleratorTypeAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/acceleratorTypes" + }; + option (google.api.method_signature) = "project"; + } + + // Returns the specified accelerator type. + rpc Get(GetAcceleratorTypeRequest) returns (AcceleratorType) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/acceleratorTypes/{accelerator_type}" + }; + option (google.api.method_signature) = "project,zone,accelerator_type"; + } + + // Retrieves a list of accelerator types that are available to the specified project. + rpc List(ListAcceleratorTypesRequest) returns (AcceleratorTypeList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/acceleratorTypes" + }; + option (google.api.method_signature) = "project,zone"; + } + +} + +// The Addresses API. +service Addresses { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of addresses. + rpc AggregatedList(AggregatedListAddressesRequest) returns (AddressAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/addresses" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified address resource. + rpc Delete(DeleteAddressRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/addresses/{address}" + }; + option (google.api.method_signature) = "project,region,address"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified address resource. + rpc Get(GetAddressRequest) returns (Address) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/addresses/{address}" + }; + option (google.api.method_signature) = "project,region,address"; + } + + // Creates an address resource in the specified project by using the data included in the request. + rpc Insert(InsertAddressRequest) returns (Operation) { + option (google.api.http) = { + body: "address_resource" + post: "/compute/v1/projects/{project}/regions/{region}/addresses" + }; + option (google.api.method_signature) = "project,region,address_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of addresses contained within the specified region. + rpc List(ListAddressesRequest) returns (AddressList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/addresses" + }; + option (google.api.method_signature) = "project,region"; + } + +} + +// The Autoscalers API. +service Autoscalers { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of autoscalers. + rpc AggregatedList(AggregatedListAutoscalersRequest) returns (AutoscalerAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/autoscalers" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified autoscaler. + rpc Delete(DeleteAutoscalerRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/zones/{zone}/autoscalers/{autoscaler}" + }; + option (google.api.method_signature) = "project,zone,autoscaler"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Returns the specified autoscaler resource. Gets a list of available autoscalers by making a list() request. + rpc Get(GetAutoscalerRequest) returns (Autoscaler) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/autoscalers/{autoscaler}" + }; + option (google.api.method_signature) = "project,zone,autoscaler"; + } + + // Creates an autoscaler in the specified project using the data included in the request. + rpc Insert(InsertAutoscalerRequest) returns (Operation) { + option (google.api.http) = { + body: "autoscaler_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/autoscalers" + }; + option (google.api.method_signature) = "project,zone,autoscaler_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves a list of autoscalers contained within the specified zone. + rpc List(ListAutoscalersRequest) returns (AutoscalerList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/autoscalers" + }; + option (google.api.method_signature) = "project,zone"; + } + + // Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchAutoscalerRequest) returns (Operation) { + option (google.api.http) = { + body: "autoscaler_resource" + patch: "/compute/v1/projects/{project}/zones/{zone}/autoscalers" + }; + option (google.api.method_signature) = "project,zone,autoscaler_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Updates an autoscaler in the specified project using the data included in the request. + rpc Update(UpdateAutoscalerRequest) returns (Operation) { + option (google.api.http) = { + body: "autoscaler_resource" + put: "/compute/v1/projects/{project}/zones/{zone}/autoscalers" + }; + option (google.api.method_signature) = "project,zone,autoscaler_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + +} + +// The BackendBuckets API. +service BackendBuckets { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Adds a key for validating requests with signed URLs for this backend bucket. + rpc AddSignedUrlKey(AddSignedUrlKeyBackendBucketRequest) returns (Operation) { + option (google.api.http) = { + body: "signed_url_key_resource" + post: "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}/addSignedUrlKey" + }; + option (google.api.method_signature) = "project,backend_bucket,signed_url_key_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Deletes the specified BackendBucket resource. + rpc Delete(DeleteBackendBucketRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}" + }; + option (google.api.method_signature) = "project,backend_bucket"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Deletes a key for validating requests with signed URLs for this backend bucket. + rpc DeleteSignedUrlKey(DeleteSignedUrlKeyBackendBucketRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}/deleteSignedUrlKey" + }; + option (google.api.method_signature) = "project,backend_bucket,key_name"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified BackendBucket resource. Gets a list of available backend buckets by making a list() request. + rpc Get(GetBackendBucketRequest) returns (BackendBucket) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}" + }; + option (google.api.method_signature) = "project,backend_bucket"; + } + + // Creates a BackendBucket resource in the specified project using the data included in the request. + rpc Insert(InsertBackendBucketRequest) returns (Operation) { + option (google.api.http) = { + body: "backend_bucket_resource" + post: "/compute/v1/projects/{project}/global/backendBuckets" + }; + option (google.api.method_signature) = "project,backend_bucket_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of BackendBucket resources available to the specified project. + rpc List(ListBackendBucketsRequest) returns (BackendBucketList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/backendBuckets" + }; + option (google.api.method_signature) = "project"; + } + + // Updates the specified BackendBucket resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchBackendBucketRequest) returns (Operation) { + option (google.api.http) = { + body: "backend_bucket_resource" + patch: "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}" + }; + option (google.api.method_signature) = "project,backend_bucket,backend_bucket_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Updates the specified BackendBucket resource with the data included in the request. + rpc Update(UpdateBackendBucketRequest) returns (Operation) { + option (google.api.http) = { + body: "backend_bucket_resource" + put: "/compute/v1/projects/{project}/global/backendBuckets/{backend_bucket}" + }; + option (google.api.method_signature) = "project,backend_bucket,backend_bucket_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The BackendServices API. +service BackendServices { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Adds a key for validating requests with signed URLs for this backend service. + rpc AddSignedUrlKey(AddSignedUrlKeyBackendServiceRequest) returns (Operation) { + option (google.api.http) = { + body: "signed_url_key_resource" + post: "/compute/v1/projects/{project}/global/backendServices/{backend_service}/addSignedUrlKey" + }; + option (google.api.method_signature) = "project,backend_service,signed_url_key_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of all BackendService resources, regional and global, available to the specified project. + rpc AggregatedList(AggregatedListBackendServicesRequest) returns (BackendServiceAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/backendServices" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified BackendService resource. + rpc Delete(DeleteBackendServiceRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/backendServices/{backend_service}" + }; + option (google.api.method_signature) = "project,backend_service"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Deletes a key for validating requests with signed URLs for this backend service. + rpc DeleteSignedUrlKey(DeleteSignedUrlKeyBackendServiceRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/global/backendServices/{backend_service}/deleteSignedUrlKey" + }; + option (google.api.method_signature) = "project,backend_service,key_name"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified BackendService resource. Gets a list of available backend services. + rpc Get(GetBackendServiceRequest) returns (BackendService) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/backendServices/{backend_service}" + }; + option (google.api.method_signature) = "project,backend_service"; + } + + // Gets the most recent health check results for this BackendService. Example request body: { "group": "/zones/us-east1-b/instanceGroups/lb-backend-example" } + rpc GetHealth(GetHealthBackendServiceRequest) returns (BackendServiceGroupHealth) { + option (google.api.http) = { + body: "resource_group_reference_resource" + post: "/compute/v1/projects/{project}/global/backendServices/{backend_service}/getHealth" + }; + option (google.api.method_signature) = "project,backend_service,resource_group_reference_resource"; + } + + // Creates a BackendService resource in the specified project using the data included in the request. For more information, see Backend services overview . + rpc Insert(InsertBackendServiceRequest) returns (Operation) { + option (google.api.http) = { + body: "backend_service_resource" + post: "/compute/v1/projects/{project}/global/backendServices" + }; + option (google.api.method_signature) = "project,backend_service_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of BackendService resources available to the specified project. + rpc List(ListBackendServicesRequest) returns (BackendServiceList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/backendServices" + }; + option (google.api.method_signature) = "project"; + } + + // Patches the specified BackendService resource with the data included in the request. For more information, see Backend services overview. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchBackendServiceRequest) returns (Operation) { + option (google.api.http) = { + body: "backend_service_resource" + patch: "/compute/v1/projects/{project}/global/backendServices/{backend_service}" + }; + option (google.api.method_signature) = "project,backend_service,backend_service_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Sets the Google Cloud Armor security policy for the specified backend service. For more information, see Google Cloud Armor Overview + rpc SetSecurityPolicy(SetSecurityPolicyBackendServiceRequest) returns (Operation) { + option (google.api.http) = { + body: "security_policy_reference_resource" + post: "/compute/v1/projects/{project}/global/backendServices/{backend_service}/setSecurityPolicy" + }; + option (google.api.method_signature) = "project,backend_service,security_policy_reference_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Updates the specified BackendService resource with the data included in the request. For more information, see Backend services overview. + rpc Update(UpdateBackendServiceRequest) returns (Operation) { + option (google.api.http) = { + body: "backend_service_resource" + put: "/compute/v1/projects/{project}/global/backendServices/{backend_service}" + }; + option (google.api.method_signature) = "project,backend_service,backend_service_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The DiskTypes API. +service DiskTypes { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute.readonly," + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of disk types. + rpc AggregatedList(AggregatedListDiskTypesRequest) returns (DiskTypeAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/diskTypes" + }; + option (google.api.method_signature) = "project"; + } + + // Returns the specified disk type. Gets a list of available disk types by making a list() request. + rpc Get(GetDiskTypeRequest) returns (DiskType) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/diskTypes/{disk_type}" + }; + option (google.api.method_signature) = "project,zone,disk_type"; + } + + // Retrieves a list of disk types available to the specified project. + rpc List(ListDiskTypesRequest) returns (DiskTypeList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/diskTypes" + }; + option (google.api.method_signature) = "project,zone"; + } + +} + +// The Disks API. +service Disks { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Adds existing resource policies to a disk. You can only add one policy which will be applied to this disk for scheduling snapshot creation. + rpc AddResourcePolicies(AddResourcePoliciesDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "disks_add_resource_policies_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/addResourcePolicies" + }; + option (google.api.method_signature) = "project,zone,disk,disks_add_resource_policies_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves an aggregated list of persistent disks. + rpc AggregatedList(AggregatedListDisksRequest) returns (DiskAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/disks" + }; + option (google.api.method_signature) = "project"; + } + + // Creates a snapshot of a specified persistent disk. + rpc CreateSnapshot(CreateSnapshotDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "snapshot_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/createSnapshot" + }; + option (google.api.method_signature) = "project,zone,disk,snapshot_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Deletes the specified persistent disk. Deleting a disk removes its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots. + rpc Delete(DeleteDiskRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}" + }; + option (google.api.method_signature) = "project,zone,disk"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Returns a specified persistent disk. Gets a list of available persistent disks by making a list() request. + rpc Get(GetDiskRequest) returns (Disk) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}" + }; + option (google.api.method_signature) = "project,zone,disk"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicyDiskRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/disks/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,zone,resource"; + } + + // Creates a persistent disk in the specified project using the data in the request. You can create a disk from a source (sourceImage, sourceSnapshot, or sourceDisk) or create an empty 500 GB data disk by omitting all properties. You can also create a disk that is larger than the default size by specifying the sizeGb property. + rpc Insert(InsertDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "disk_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/disks" + }; + option (google.api.method_signature) = "project,zone,disk_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves a list of persistent disks contained within the specified zone. + rpc List(ListDisksRequest) returns (DiskList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/disks" + }; + option (google.api.method_signature) = "project,zone"; + } + + // Removes resource policies from a disk. + rpc RemoveResourcePolicies(RemoveResourcePoliciesDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "disks_remove_resource_policies_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/removeResourcePolicies" + }; + option (google.api.method_signature) = "project,zone,disk,disks_remove_resource_policies_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Resizes the specified persistent disk. You can only increase the size of the disk. + rpc Resize(ResizeDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "disks_resize_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/disks/{disk}/resize" + }; + option (google.api.method_signature) = "project,zone,disk,disks_resize_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicyDiskRequest) returns (Policy) { + option (google.api.http) = { + body: "zone_set_policy_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/disks/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,zone,resource,zone_set_policy_request_resource"; + } + + // Sets the labels on a disk. To learn more about labels, read the Labeling Resources documentation. + rpc SetLabels(SetLabelsDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "zone_set_labels_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/disks/{resource}/setLabels" + }; + option (google.api.method_signature) = "project,zone,resource,zone_set_labels_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsDiskRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/disks/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,zone,resource,test_permissions_request_resource"; + } + +} + +// The ExternalVpnGateways API. +service ExternalVpnGateways { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified externalVpnGateway. + rpc Delete(DeleteExternalVpnGatewayRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/externalVpnGateways/{external_vpn_gateway}" + }; + option (google.api.method_signature) = "project,external_vpn_gateway"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified externalVpnGateway. Get a list of available externalVpnGateways by making a list() request. + rpc Get(GetExternalVpnGatewayRequest) returns (ExternalVpnGateway) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/externalVpnGateways/{external_vpn_gateway}" + }; + option (google.api.method_signature) = "project,external_vpn_gateway"; + } + + // Creates a ExternalVpnGateway in the specified project using the data included in the request. + rpc Insert(InsertExternalVpnGatewayRequest) returns (Operation) { + option (google.api.http) = { + body: "external_vpn_gateway_resource" + post: "/compute/v1/projects/{project}/global/externalVpnGateways" + }; + option (google.api.method_signature) = "project,external_vpn_gateway_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of ExternalVpnGateway available to the specified project. + rpc List(ListExternalVpnGatewaysRequest) returns (ExternalVpnGatewayList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/externalVpnGateways" + }; + option (google.api.method_signature) = "project"; + } + + // Sets the labels on an ExternalVpnGateway. To learn more about labels, read the Labeling Resources documentation. + rpc SetLabels(SetLabelsExternalVpnGatewayRequest) returns (Operation) { + option (google.api.http) = { + body: "global_set_labels_request_resource" + post: "/compute/v1/projects/{project}/global/externalVpnGateways/{resource}/setLabels" + }; + option (google.api.method_signature) = "project,resource,global_set_labels_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsExternalVpnGatewayRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/global/externalVpnGateways/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,resource,test_permissions_request_resource"; + } + +} + +// The FirewallPolicies API. +service FirewallPolicies { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Inserts an association for the specified firewall policy. + rpc AddAssociation(AddAssociationFirewallPolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "firewall_policy_association_resource" + post: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/addAssociation" + }; + option (google.api.method_signature) = "firewall_policy,firewall_policy_association_resource"; + option (google.cloud.operation_service) = "GlobalOrganizationOperations"; + } + + // Inserts a rule into a firewall policy. + rpc AddRule(AddRuleFirewallPolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "firewall_policy_rule_resource" + post: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/addRule" + }; + option (google.api.method_signature) = "firewall_policy,firewall_policy_rule_resource"; + option (google.cloud.operation_service) = "GlobalOrganizationOperations"; + } + + // Copies rules to the specified firewall policy. + rpc CloneRules(CloneRulesFirewallPolicyRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/cloneRules" + }; + option (google.api.method_signature) = "firewall_policy"; + option (google.cloud.operation_service) = "GlobalOrganizationOperations"; + } + + // Deletes the specified policy. + rpc Delete(DeleteFirewallPolicyRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}" + }; + option (google.api.method_signature) = "firewall_policy"; + option (google.cloud.operation_service) = "GlobalOrganizationOperations"; + } + + // Returns the specified firewall policy. + rpc Get(GetFirewallPolicyRequest) returns (FirewallPolicy) { + option (google.api.http) = { + get: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}" + }; + option (google.api.method_signature) = "firewall_policy"; + } + + // Gets an association with the specified name. + rpc GetAssociation(GetAssociationFirewallPolicyRequest) returns (FirewallPolicyAssociation) { + option (google.api.http) = { + get: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/getAssociation" + }; + option (google.api.method_signature) = "firewall_policy"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicyFirewallPolicyRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/locations/global/firewallPolicies/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "resource"; + } + + // Gets a rule of the specified priority. + rpc GetRule(GetRuleFirewallPolicyRequest) returns (FirewallPolicyRule) { + option (google.api.http) = { + get: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/getRule" + }; + option (google.api.method_signature) = "firewall_policy"; + } + + // Creates a new policy in the specified project using the data included in the request. + rpc Insert(InsertFirewallPolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "firewall_policy_resource" + post: "/compute/v1/locations/global/firewallPolicies" + }; + option (google.api.method_signature) = "parent_id,firewall_policy_resource"; + option (google.cloud.operation_service) = "GlobalOrganizationOperations"; + } + + // Lists all the policies that have been configured for the specified folder or organization. + rpc List(ListFirewallPoliciesRequest) returns (FirewallPolicyList) { + option (google.api.http) = { + get: "/compute/v1/locations/global/firewallPolicies" + }; + option (google.api.method_signature) = ""; + } + + // Lists associations of a specified target, i.e., organization or folder. + rpc ListAssociations(ListAssociationsFirewallPolicyRequest) returns (FirewallPoliciesListAssociationsResponse) { + option (google.api.http) = { + get: "/compute/v1/locations/global/firewallPolicies/listAssociations" + }; + option (google.api.method_signature) = ""; + } + + // Moves the specified firewall policy. + rpc Move(MoveFirewallPolicyRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/move" + }; + option (google.api.method_signature) = "firewall_policy,parent_id"; + option (google.cloud.operation_service) = "GlobalOrganizationOperations"; + } + + // Patches the specified policy with the data included in the request. + rpc Patch(PatchFirewallPolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "firewall_policy_resource" + patch: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}" + }; + option (google.api.method_signature) = "firewall_policy,firewall_policy_resource"; + option (google.cloud.operation_service) = "GlobalOrganizationOperations"; + } + + // Patches a rule of the specified priority. + rpc PatchRule(PatchRuleFirewallPolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "firewall_policy_rule_resource" + post: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/patchRule" + }; + option (google.api.method_signature) = "firewall_policy,firewall_policy_rule_resource"; + option (google.cloud.operation_service) = "GlobalOrganizationOperations"; + } + + // Removes an association for the specified firewall policy. + rpc RemoveAssociation(RemoveAssociationFirewallPolicyRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/removeAssociation" + }; + option (google.api.method_signature) = "firewall_policy"; + option (google.cloud.operation_service) = "GlobalOrganizationOperations"; + } + + // Deletes a rule of the specified priority. + rpc RemoveRule(RemoveRuleFirewallPolicyRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/locations/global/firewallPolicies/{firewall_policy}/removeRule" + }; + option (google.api.method_signature) = "firewall_policy"; + option (google.cloud.operation_service) = "GlobalOrganizationOperations"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicyFirewallPolicyRequest) returns (Policy) { + option (google.api.http) = { + body: "global_organization_set_policy_request_resource" + post: "/compute/v1/locations/global/firewallPolicies/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "resource,global_organization_set_policy_request_resource"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsFirewallPolicyRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/locations/global/firewallPolicies/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "resource,test_permissions_request_resource"; + } + +} + +// The Firewalls API. +service Firewalls { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified firewall. + rpc Delete(DeleteFirewallRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/firewalls/{firewall}" + }; + option (google.api.method_signature) = "project,firewall"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified firewall. + rpc Get(GetFirewallRequest) returns (Firewall) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/firewalls/{firewall}" + }; + option (google.api.method_signature) = "project,firewall"; + } + + // Creates a firewall rule in the specified project using the data included in the request. + rpc Insert(InsertFirewallRequest) returns (Operation) { + option (google.api.http) = { + body: "firewall_resource" + post: "/compute/v1/projects/{project}/global/firewalls" + }; + option (google.api.method_signature) = "project,firewall_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of firewall rules available to the specified project. + rpc List(ListFirewallsRequest) returns (FirewallList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/firewalls" + }; + option (google.api.method_signature) = "project"; + } + + // Updates the specified firewall rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchFirewallRequest) returns (Operation) { + option (google.api.http) = { + body: "firewall_resource" + patch: "/compute/v1/projects/{project}/global/firewalls/{firewall}" + }; + option (google.api.method_signature) = "project,firewall,firewall_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Updates the specified firewall rule with the data included in the request. Note that all fields will be updated if using PUT, even fields that are not specified. To update individual fields, please use PATCH instead. + rpc Update(UpdateFirewallRequest) returns (Operation) { + option (google.api.http) = { + body: "firewall_resource" + put: "/compute/v1/projects/{project}/global/firewalls/{firewall}" + }; + option (google.api.method_signature) = "project,firewall,firewall_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The ForwardingRules API. +service ForwardingRules { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of forwarding rules. + rpc AggregatedList(AggregatedListForwardingRulesRequest) returns (ForwardingRuleAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/forwardingRules" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified ForwardingRule resource. + rpc Delete(DeleteForwardingRuleRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}" + }; + option (google.api.method_signature) = "project,region,forwarding_rule"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified ForwardingRule resource. + rpc Get(GetForwardingRuleRequest) returns (ForwardingRule) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}" + }; + option (google.api.method_signature) = "project,region,forwarding_rule"; + } + + // Creates a ForwardingRule resource in the specified project and region using the data included in the request. + rpc Insert(InsertForwardingRuleRequest) returns (Operation) { + option (google.api.http) = { + body: "forwarding_rule_resource" + post: "/compute/v1/projects/{project}/regions/{region}/forwardingRules" + }; + option (google.api.method_signature) = "project,region,forwarding_rule_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of ForwardingRule resources available to the specified project and region. + rpc List(ListForwardingRulesRequest) returns (ForwardingRuleList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/forwardingRules" + }; + option (google.api.method_signature) = "project,region"; + } + + // Updates the specified forwarding rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. Currently, you can only patch the network_tier field. + rpc Patch(PatchForwardingRuleRequest) returns (Operation) { + option (google.api.http) = { + body: "forwarding_rule_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}" + }; + option (google.api.method_signature) = "project,region,forwarding_rule,forwarding_rule_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Sets the labels on the specified resource. To learn more about labels, read the Labeling Resources documentation. + rpc SetLabels(SetLabelsForwardingRuleRequest) returns (Operation) { + option (google.api.http) = { + body: "region_set_labels_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/forwardingRules/{resource}/setLabels" + }; + option (google.api.method_signature) = "project,region,resource,region_set_labels_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Changes target URL for forwarding rule. The new target should be of the same type as the old target. + rpc SetTarget(SetTargetForwardingRuleRequest) returns (Operation) { + option (google.api.http) = { + body: "target_reference_resource" + post: "/compute/v1/projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}/setTarget" + }; + option (google.api.method_signature) = "project,region,forwarding_rule,target_reference_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The GlobalAddresses API. +service GlobalAddresses { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified address resource. + rpc Delete(DeleteGlobalAddressRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/addresses/{address}" + }; + option (google.api.method_signature) = "project,address"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified address resource. Gets a list of available addresses by making a list() request. + rpc Get(GetGlobalAddressRequest) returns (Address) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/addresses/{address}" + }; + option (google.api.method_signature) = "project,address"; + } + + // Creates an address resource in the specified project by using the data included in the request. + rpc Insert(InsertGlobalAddressRequest) returns (Operation) { + option (google.api.http) = { + body: "address_resource" + post: "/compute/v1/projects/{project}/global/addresses" + }; + option (google.api.method_signature) = "project,address_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves a list of global addresses. + rpc List(ListGlobalAddressesRequest) returns (AddressList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/addresses" + }; + option (google.api.method_signature) = "project"; + } + +} + +// The GlobalForwardingRules API. +service GlobalForwardingRules { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified GlobalForwardingRule resource. + rpc Delete(DeleteGlobalForwardingRuleRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}" + }; + option (google.api.method_signature) = "project,forwarding_rule"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified GlobalForwardingRule resource. Gets a list of available forwarding rules by making a list() request. + rpc Get(GetGlobalForwardingRuleRequest) returns (ForwardingRule) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}" + }; + option (google.api.method_signature) = "project,forwarding_rule"; + } + + // Creates a GlobalForwardingRule resource in the specified project using the data included in the request. + rpc Insert(InsertGlobalForwardingRuleRequest) returns (Operation) { + option (google.api.http) = { + body: "forwarding_rule_resource" + post: "/compute/v1/projects/{project}/global/forwardingRules" + }; + option (google.api.method_signature) = "project,forwarding_rule_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves a list of GlobalForwardingRule resources available to the specified project. + rpc List(ListGlobalForwardingRulesRequest) returns (ForwardingRuleList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/forwardingRules" + }; + option (google.api.method_signature) = "project"; + } + + // Updates the specified forwarding rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. Currently, you can only patch the network_tier field. + rpc Patch(PatchGlobalForwardingRuleRequest) returns (Operation) { + option (google.api.http) = { + body: "forwarding_rule_resource" + patch: "/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}" + }; + option (google.api.method_signature) = "project,forwarding_rule,forwarding_rule_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Sets the labels on the specified resource. To learn more about labels, read the Labeling resources documentation. + rpc SetLabels(SetLabelsGlobalForwardingRuleRequest) returns (Operation) { + option (google.api.http) = { + body: "global_set_labels_request_resource" + post: "/compute/v1/projects/{project}/global/forwardingRules/{resource}/setLabels" + }; + option (google.api.method_signature) = "project,resource,global_set_labels_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Changes target URL for the GlobalForwardingRule resource. The new target should be of the same type as the old target. + rpc SetTarget(SetTargetGlobalForwardingRuleRequest) returns (Operation) { + option (google.api.http) = { + body: "target_reference_resource" + post: "/compute/v1/projects/{project}/global/forwardingRules/{forwarding_rule}/setTarget" + }; + option (google.api.method_signature) = "project,forwarding_rule,target_reference_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The GlobalNetworkEndpointGroups API. +service GlobalNetworkEndpointGroups { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Attach a network endpoint to the specified network endpoint group. + rpc AttachNetworkEndpoints(AttachNetworkEndpointsGlobalNetworkEndpointGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "global_network_endpoint_groups_attach_endpoints_request_resource" + post: "/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/attachNetworkEndpoints" + }; + option (google.api.method_signature) = "project,network_endpoint_group,global_network_endpoint_groups_attach_endpoints_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Deletes the specified network endpoint group.Note that the NEG cannot be deleted if there are backend services referencing it. + rpc Delete(DeleteGlobalNetworkEndpointGroupRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}" + }; + option (google.api.method_signature) = "project,network_endpoint_group"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Detach the network endpoint from the specified network endpoint group. + rpc DetachNetworkEndpoints(DetachNetworkEndpointsGlobalNetworkEndpointGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "global_network_endpoint_groups_detach_endpoints_request_resource" + post: "/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/detachNetworkEndpoints" + }; + option (google.api.method_signature) = "project,network_endpoint_group,global_network_endpoint_groups_detach_endpoints_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified network endpoint group. Gets a list of available network endpoint groups by making a list() request. + rpc Get(GetGlobalNetworkEndpointGroupRequest) returns (NetworkEndpointGroup) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}" + }; + option (google.api.method_signature) = "project,network_endpoint_group"; + } + + // Creates a network endpoint group in the specified project using the parameters that are included in the request. + rpc Insert(InsertGlobalNetworkEndpointGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "network_endpoint_group_resource" + post: "/compute/v1/projects/{project}/global/networkEndpointGroups" + }; + option (google.api.method_signature) = "project,network_endpoint_group_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of network endpoint groups that are located in the specified project. + rpc List(ListGlobalNetworkEndpointGroupsRequest) returns (NetworkEndpointGroupList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/networkEndpointGroups" + }; + option (google.api.method_signature) = "project"; + } + + // Lists the network endpoints in the specified network endpoint group. + rpc ListNetworkEndpoints(ListNetworkEndpointsGlobalNetworkEndpointGroupsRequest) returns (NetworkEndpointGroupsListNetworkEndpoints) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/global/networkEndpointGroups/{network_endpoint_group}/listNetworkEndpoints" + }; + option (google.api.method_signature) = "project,network_endpoint_group"; + } + +} + +// The GlobalOperations API. +service GlobalOperations { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of all operations. + rpc AggregatedList(AggregatedListGlobalOperationsRequest) returns (OperationAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/operations" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified Operations resource. + rpc Delete(DeleteGlobalOperationRequest) returns (DeleteGlobalOperationResponse) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/operations/{operation}" + }; + option (google.api.method_signature) = "project,operation"; + } + + // Retrieves the specified Operations resource. + rpc Get(GetGlobalOperationRequest) returns (Operation) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/operations/{operation}" + }; + option (google.api.method_signature) = "project,operation"; + option (google.cloud.operation_polling_method) = true; + } + + // Retrieves a list of Operation resources contained within the specified project. + rpc List(ListGlobalOperationsRequest) returns (OperationList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/operations" + }; + option (google.api.method_signature) = "project"; + } + + // Waits for the specified Operation resource to return as `DONE` or for the request to approach the 2 minute deadline, and retrieves the specified Operation resource. This method differs from the `GET` method in that it waits for no more than the default deadline (2 minutes) and then returns the current state of the operation, which might be `DONE` or still in progress. This method is called on a best-effort basis. Specifically: - In uncommon cases, when the server is overloaded, the request might return before the default deadline is reached, or might return after zero seconds. - If the default deadline is reached, there is no guarantee that the operation is actually done when the method returns. Be prepared to retry if the operation is not `DONE`. + rpc Wait(WaitGlobalOperationRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/global/operations/{operation}/wait" + }; + option (google.api.method_signature) = "project,operation"; + } + +} + +// The GlobalOrganizationOperations API. +service GlobalOrganizationOperations { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified Operations resource. + rpc Delete(DeleteGlobalOrganizationOperationRequest) returns (DeleteGlobalOrganizationOperationResponse) { + option (google.api.http) = { + delete: "/compute/v1/locations/global/operations/{operation}" + }; + option (google.api.method_signature) = "operation"; + } + + // Retrieves the specified Operations resource. Gets a list of operations by making a `list()` request. + rpc Get(GetGlobalOrganizationOperationRequest) returns (Operation) { + option (google.api.http) = { + get: "/compute/v1/locations/global/operations/{operation}" + }; + option (google.api.method_signature) = "operation"; + option (google.cloud.operation_polling_method) = true; + } + + // Retrieves a list of Operation resources contained within the specified organization. + rpc List(ListGlobalOrganizationOperationsRequest) returns (OperationList) { + option (google.api.http) = { + get: "/compute/v1/locations/global/operations" + }; + option (google.api.method_signature) = ""; + } + +} + +// The GlobalPublicDelegatedPrefixes API. +service GlobalPublicDelegatedPrefixes { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified global PublicDelegatedPrefix. + rpc Delete(DeleteGlobalPublicDelegatedPrefixeRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}" + }; + option (google.api.method_signature) = "project,public_delegated_prefix"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified global PublicDelegatedPrefix resource. + rpc Get(GetGlobalPublicDelegatedPrefixeRequest) returns (PublicDelegatedPrefix) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}" + }; + option (google.api.method_signature) = "project,public_delegated_prefix"; + } + + // Creates a global PublicDelegatedPrefix in the specified project using the parameters that are included in the request. + rpc Insert(InsertGlobalPublicDelegatedPrefixeRequest) returns (Operation) { + option (google.api.http) = { + body: "public_delegated_prefix_resource" + post: "/compute/v1/projects/{project}/global/publicDelegatedPrefixes" + }; + option (google.api.method_signature) = "project,public_delegated_prefix_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Lists the global PublicDelegatedPrefixes for a project. + rpc List(ListGlobalPublicDelegatedPrefixesRequest) returns (PublicDelegatedPrefixList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/publicDelegatedPrefixes" + }; + option (google.api.method_signature) = "project"; + } + + // Patches the specified global PublicDelegatedPrefix resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules. + rpc Patch(PatchGlobalPublicDelegatedPrefixeRequest) returns (Operation) { + option (google.api.http) = { + body: "public_delegated_prefix_resource" + patch: "/compute/v1/projects/{project}/global/publicDelegatedPrefixes/{public_delegated_prefix}" + }; + option (google.api.method_signature) = "project,public_delegated_prefix,public_delegated_prefix_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The HealthChecks API. +service HealthChecks { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves the list of all HealthCheck resources, regional and global, available to the specified project. + rpc AggregatedList(AggregatedListHealthChecksRequest) returns (HealthChecksAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/healthChecks" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified HealthCheck resource. + rpc Delete(DeleteHealthCheckRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/healthChecks/{health_check}" + }; + option (google.api.method_signature) = "project,health_check"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified HealthCheck resource. Gets a list of available health checks by making a list() request. + rpc Get(GetHealthCheckRequest) returns (HealthCheck) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/healthChecks/{health_check}" + }; + option (google.api.method_signature) = "project,health_check"; + } + + // Creates a HealthCheck resource in the specified project using the data included in the request. + rpc Insert(InsertHealthCheckRequest) returns (Operation) { + option (google.api.http) = { + body: "health_check_resource" + post: "/compute/v1/projects/{project}/global/healthChecks" + }; + option (google.api.method_signature) = "project,health_check_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of HealthCheck resources available to the specified project. + rpc List(ListHealthChecksRequest) returns (HealthCheckList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/healthChecks" + }; + option (google.api.method_signature) = "project"; + } + + // Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchHealthCheckRequest) returns (Operation) { + option (google.api.http) = { + body: "health_check_resource" + patch: "/compute/v1/projects/{project}/global/healthChecks/{health_check}" + }; + option (google.api.method_signature) = "project,health_check,health_check_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Updates a HealthCheck resource in the specified project using the data included in the request. + rpc Update(UpdateHealthCheckRequest) returns (Operation) { + option (google.api.http) = { + body: "health_check_resource" + put: "/compute/v1/projects/{project}/global/healthChecks/{health_check}" + }; + option (google.api.method_signature) = "project,health_check,health_check_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The ImageFamilyViews API. +service ImageFamilyViews { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute.readonly," + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Returns the latest image that is part of an image family, is not deprecated and is rolled out in the specified zone. + rpc Get(GetImageFamilyViewRequest) returns (ImageFamilyView) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/imageFamilyViews/{family}" + }; + option (google.api.method_signature) = "project,zone,family"; + } + +} + +// The Images API. +service Images { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified image. + rpc Delete(DeleteImageRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/images/{image}" + }; + option (google.api.method_signature) = "project,image"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Sets the deprecation status of an image. If an empty request body is given, clears the deprecation status instead. + rpc Deprecate(DeprecateImageRequest) returns (Operation) { + option (google.api.http) = { + body: "deprecation_status_resource" + post: "/compute/v1/projects/{project}/global/images/{image}/deprecate" + }; + option (google.api.method_signature) = "project,image,deprecation_status_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified image. Gets a list of available images by making a list() request. + rpc Get(GetImageRequest) returns (Image) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/images/{image}" + }; + option (google.api.method_signature) = "project,image"; + } + + // Returns the latest image that is part of an image family and is not deprecated. + rpc GetFromFamily(GetFromFamilyImageRequest) returns (Image) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/images/family/{family}" + }; + option (google.api.method_signature) = "project,family"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicyImageRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/images/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,resource"; + } + + // Creates an image in the specified project using the data included in the request. + rpc Insert(InsertImageRequest) returns (Operation) { + option (google.api.http) = { + body: "image_resource" + post: "/compute/v1/projects/{project}/global/images" + }; + option (google.api.method_signature) = "project,image_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of custom images available to the specified project. Custom images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 8. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud. + rpc List(ListImagesRequest) returns (ImageList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/images" + }; + option (google.api.method_signature) = "project"; + } + + // Patches the specified image with the data included in the request. Only the following fields can be modified: family, description, deprecation status. + rpc Patch(PatchImageRequest) returns (Operation) { + option (google.api.http) = { + body: "image_resource" + patch: "/compute/v1/projects/{project}/global/images/{image}" + }; + option (google.api.method_signature) = "project,image,image_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicyImageRequest) returns (Policy) { + option (google.api.http) = { + body: "global_set_policy_request_resource" + post: "/compute/v1/projects/{project}/global/images/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,resource,global_set_policy_request_resource"; + } + + // Sets the labels on an image. To learn more about labels, read the Labeling Resources documentation. + rpc SetLabels(SetLabelsImageRequest) returns (Operation) { + option (google.api.http) = { + body: "global_set_labels_request_resource" + post: "/compute/v1/projects/{project}/global/images/{resource}/setLabels" + }; + option (google.api.method_signature) = "project,resource,global_set_labels_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsImageRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/global/images/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,resource,test_permissions_request_resource"; + } + +} + +// The InstanceGroupManagers API. +service InstanceGroupManagers { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Flags the specified instances to be removed from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request. + rpc AbandonInstances(AbandonInstancesInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_managers_abandon_instances_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/abandonInstances" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,instance_group_managers_abandon_instances_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves the list of managed instance groups and groups them by zone. + rpc AggregatedList(AggregatedListInstanceGroupManagersRequest) returns (InstanceGroupManagerAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/instanceGroupManagers" + }; + option (google.api.method_signature) = "project"; + } + + // Applies changes to selected instances on the managed instance group. This method can be used to apply new overrides and/or new versions. + rpc ApplyUpdatesToInstances(ApplyUpdatesToInstancesInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_managers_apply_updates_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/applyUpdatesToInstances" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,instance_group_managers_apply_updates_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Creates instances with per-instance configs in this managed instance group. Instances are created using the current instance template. The create instances operation is marked DONE if the createInstances request is successful. The underlying actions take additional time. You must separately verify the status of the creating or actions with the listmanagedinstances method. + rpc CreateInstances(CreateInstancesInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_managers_create_instances_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/createInstances" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,instance_group_managers_create_instances_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Deletes the specified managed instance group and all of the instances in that group. Note that the instance group must not belong to a backend service. Read Deleting an instance group for more information. + rpc Delete(DeleteInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Flags the specified instances in the managed instance group for immediate deletion. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request. + rpc DeleteInstances(DeleteInstancesInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_managers_delete_instances_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/deleteInstances" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,instance_group_managers_delete_instances_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Deletes selected per-instance configs for the managed instance group. + rpc DeletePerInstanceConfigs(DeletePerInstanceConfigsInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_managers_delete_per_instance_configs_req_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/deletePerInstanceConfigs" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,instance_group_managers_delete_per_instance_configs_req_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Returns all of the details about the specified managed instance group. Gets a list of available managed instance groups by making a list() request. + rpc Get(GetInstanceGroupManagerRequest) returns (InstanceGroupManager) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager"; + } + + // Creates a managed instance group using the information that you specify in the request. After the group is created, instances in the group are created using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method. A managed instance group can have up to 1000 VM instances per group. Please contact Cloud Support if you need an increase in this limit. + rpc Insert(InsertInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_manager_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves a list of managed instance groups that are contained within the specified project and zone. + rpc List(ListInstanceGroupManagersRequest) returns (InstanceGroupManagerList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers" + }; + option (google.api.method_signature) = "project,zone"; + } + + // Lists all errors thrown by actions on instances for a given managed instance group. The filter and orderBy query parameters are not supported. + rpc ListErrors(ListErrorsInstanceGroupManagersRequest) returns (InstanceGroupManagersListErrorsResponse) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listErrors" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager"; + } + + // Lists all of the instances in the managed instance group. Each instance in the list has a currentAction, which indicates the action that the managed instance group is performing on the instance. For example, if the group is still creating an instance, the currentAction is CREATING. If a previous action failed, the list displays the errors for that failed action. The orderBy query parameter is not supported. + rpc ListManagedInstances(ListManagedInstancesInstanceGroupManagersRequest) returns (InstanceGroupManagersListManagedInstancesResponse) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listManagedInstances" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager"; + } + + // Lists all of the per-instance configs defined for the managed instance group. The orderBy query parameter is not supported. + rpc ListPerInstanceConfigs(ListPerInstanceConfigsInstanceGroupManagersRequest) returns (InstanceGroupManagersListPerInstanceConfigsResp) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/listPerInstanceConfigs" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager"; + } + + // Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listManagedInstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. If you update your group to specify a new template or instance configuration, it's possible that your intended specification for each VM in the group is different from the current state of that VM. To learn how to apply an updated configuration to the VMs in a MIG, see Updating instances in a MIG. + rpc Patch(PatchInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_manager_resource" + patch: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,instance_group_manager_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Inserts or patches per-instance configs for the managed instance group. perInstanceConfig.name serves as a key used to distinguish whether to perform insert or patch. + rpc PatchPerInstanceConfigs(PatchPerInstanceConfigsInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_managers_patch_per_instance_configs_req_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/patchPerInstanceConfigs" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,instance_group_managers_patch_per_instance_configs_req_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Flags the specified VM instances in the managed instance group to be immediately recreated. Each instance is recreated using the group's current configuration. This operation is marked as DONE when the flag is set even if the instances have not yet been recreated. You must separately verify the status of each instance by checking its currentAction field; for more information, see Checking the status of managed instances. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request. + rpc RecreateInstances(RecreateInstancesInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_managers_recreate_instances_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/recreateInstances" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,instance_group_managers_recreate_instances_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Resizes the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method. When resizing down, the instance group arbitrarily chooses the order in which VMs are deleted. The group takes into account some VM attributes when making the selection including: + The status of the VM instance. + The health of the VM instance. + The instance template version the VM is based on. + For regional managed instance groups, the location of the VM instance. This list is subject to change. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. + rpc Resize(ResizeInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/resize" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,size"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Specifies the instance template to use when creating new instances in this group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE. + rpc SetInstanceTemplate(SetInstanceTemplateInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_managers_set_instance_template_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/setInstanceTemplate" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,instance_group_managers_set_instance_template_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Modifies the target pools to which all instances in this managed instance group are assigned. The target pools automatically apply to all of the instances in the managed instance group. This operation is marked DONE when you make the request even if the instances have not yet been added to their target pools. The change might take some time to apply to all of the instances in the group depending on the size of the group. + rpc SetTargetPools(SetTargetPoolsInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_managers_set_target_pools_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/setTargetPools" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,instance_group_managers_set_target_pools_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Inserts or updates per-instance configs for the managed instance group. perInstanceConfig.name serves as a key used to distinguish whether to perform insert or patch. + rpc UpdatePerInstanceConfigs(UpdatePerInstanceConfigsInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_managers_update_per_instance_configs_req_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroupManagers/{instance_group_manager}/updatePerInstanceConfigs" + }; + option (google.api.method_signature) = "project,zone,instance_group_manager,instance_group_managers_update_per_instance_configs_req_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + +} + +// The InstanceGroups API. +service InstanceGroups { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Adds a list of instances to the specified instance group. All of the instances in the instance group must be in the same network/subnetwork. Read Adding instances for more information. + rpc AddInstances(AddInstancesInstanceGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_groups_add_instances_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/addInstances" + }; + option (google.api.method_signature) = "project,zone,instance_group,instance_groups_add_instances_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves the list of instance groups and sorts them by zone. + rpc AggregatedList(AggregatedListInstanceGroupsRequest) returns (InstanceGroupAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/instanceGroups" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified instance group. The instances in the group are not deleted. Note that instance group must not belong to a backend service. Read Deleting an instance group for more information. + rpc Delete(DeleteInstanceGroupRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}" + }; + option (google.api.method_signature) = "project,zone,instance_group"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Returns the specified zonal instance group. Get a list of available zonal instance groups by making a list() request. For managed instance groups, use the instanceGroupManagers or regionInstanceGroupManagers methods instead. + rpc Get(GetInstanceGroupRequest) returns (InstanceGroup) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}" + }; + option (google.api.method_signature) = "project,zone,instance_group"; + } + + // Creates an instance group in the specified project using the parameters that are included in the request. + rpc Insert(InsertInstanceGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroups" + }; + option (google.api.method_signature) = "project,zone,instance_group_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves the list of zonal instance group resources contained within the specified zone. For managed instance groups, use the instanceGroupManagers or regionInstanceGroupManagers methods instead. + rpc List(ListInstanceGroupsRequest) returns (InstanceGroupList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instanceGroups" + }; + option (google.api.method_signature) = "project,zone"; + } + + // Lists the instances in the specified instance group. The orderBy query parameter is not supported. + rpc ListInstances(ListInstancesInstanceGroupsRequest) returns (InstanceGroupsListInstances) { + option (google.api.http) = { + body: "instance_groups_list_instances_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/listInstances" + }; + option (google.api.method_signature) = "project,zone,instance_group,instance_groups_list_instances_request_resource"; + } + + // Removes one or more instances from the specified instance group, but does not delete those instances. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration before the VM instance is removed or deleted. + rpc RemoveInstances(RemoveInstancesInstanceGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_groups_remove_instances_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/removeInstances" + }; + option (google.api.method_signature) = "project,zone,instance_group,instance_groups_remove_instances_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sets the named ports for the specified instance group. + rpc SetNamedPorts(SetNamedPortsInstanceGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_groups_set_named_ports_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instanceGroups/{instance_group}/setNamedPorts" + }; + option (google.api.method_signature) = "project,zone,instance_group,instance_groups_set_named_ports_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + +} + +// The InstanceTemplates API. +service InstanceTemplates { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified instance template. Deleting an instance template is permanent and cannot be undone. It is not possible to delete templates that are already in use by a managed instance group. + rpc Delete(DeleteInstanceTemplateRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/instanceTemplates/{instance_template}" + }; + option (google.api.method_signature) = "project,instance_template"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified instance template. Gets a list of available instance templates by making a list() request. + rpc Get(GetInstanceTemplateRequest) returns (InstanceTemplate) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/instanceTemplates/{instance_template}" + }; + option (google.api.method_signature) = "project,instance_template"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicyInstanceTemplateRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/instanceTemplates/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,resource"; + } + + // Creates an instance template in the specified project using the data that is included in the request. If you are creating a new template to update an existing instance group, your new instance template must use the same network or, if applicable, the same subnetwork as the original template. + rpc Insert(InsertInstanceTemplateRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_template_resource" + post: "/compute/v1/projects/{project}/global/instanceTemplates" + }; + option (google.api.method_signature) = "project,instance_template_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves a list of instance templates that are contained within the specified project. + rpc List(ListInstanceTemplatesRequest) returns (InstanceTemplateList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/instanceTemplates" + }; + option (google.api.method_signature) = "project"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicyInstanceTemplateRequest) returns (Policy) { + option (google.api.http) = { + body: "global_set_policy_request_resource" + post: "/compute/v1/projects/{project}/global/instanceTemplates/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,resource,global_set_policy_request_resource"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsInstanceTemplateRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/global/instanceTemplates/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,resource,test_permissions_request_resource"; + } + +} + +// The Instances API. +service Instances { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Adds an access config to an instance's network interface. + rpc AddAccessConfig(AddAccessConfigInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "access_config_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addAccessConfig" + }; + option (google.api.method_signature) = "project,zone,instance,network_interface,access_config_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Adds existing resource policies to an instance. You can only add one policy right now which will be applied to this instance for scheduling live migrations. + rpc AddResourcePolicies(AddResourcePoliciesInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "instances_add_resource_policies_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/addResourcePolicies" + }; + option (google.api.method_signature) = "project,zone,instance,instances_add_resource_policies_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves an aggregated list of all of the instances in your project across all regions and zones. The performance of this method degrades when a filter is specified on a project that has a very large number of instances. + rpc AggregatedList(AggregatedListInstancesRequest) returns (InstanceAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/instances" + }; + option (google.api.method_signature) = "project"; + } + + // Attaches an existing Disk resource to an instance. You must first create the disk before you can attach it. It is not possible to create and attach a disk at the same time. For more information, read Adding a persistent disk to your instance. + rpc AttachDisk(AttachDiskInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "attached_disk_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/attachDisk" + }; + option (google.api.method_signature) = "project,zone,instance,attached_disk_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Creates multiple instances. Count specifies the number of instances to create. + rpc BulkInsert(BulkInsertInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "bulk_insert_instance_resource_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/bulkInsert" + }; + option (google.api.method_signature) = "project,zone,bulk_insert_instance_resource_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Deletes the specified Instance resource. For more information, see Deleting an instance. + rpc Delete(DeleteInstanceRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}" + }; + option (google.api.method_signature) = "project,zone,instance"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Deletes an access config from an instance's network interface. + rpc DeleteAccessConfig(DeleteAccessConfigInstanceRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/deleteAccessConfig" + }; + option (google.api.method_signature) = "project,zone,instance,access_config,network_interface"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Detaches a disk from an instance. + rpc DetachDisk(DetachDiskInstanceRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/detachDisk" + }; + option (google.api.method_signature) = "project,zone,instance,device_name"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Returns the specified Instance resource. Gets a list of available instances by making a list() request. + rpc Get(GetInstanceRequest) returns (Instance) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}" + }; + option (google.api.method_signature) = "project,zone,instance"; + } + + // Returns effective firewalls applied to an interface of the instance. + rpc GetEffectiveFirewalls(GetEffectiveFirewallsInstanceRequest) returns (InstancesGetEffectiveFirewallsResponse) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls" + }; + option (google.api.method_signature) = "project,zone,instance,network_interface"; + } + + // Returns the specified guest attributes entry. + rpc GetGuestAttributes(GetGuestAttributesInstanceRequest) returns (GuestAttributes) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getGuestAttributes" + }; + option (google.api.method_signature) = "project,zone,instance"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicyInstanceRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,zone,resource"; + } + + // Returns the screenshot from the specified instance. + rpc GetScreenshot(GetScreenshotInstanceRequest) returns (Screenshot) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/screenshot" + }; + option (google.api.method_signature) = "project,zone,instance"; + } + + // Returns the last 1 MB of serial port output from the specified instance. + rpc GetSerialPortOutput(GetSerialPortOutputInstanceRequest) returns (SerialPortOutput) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/serialPort" + }; + option (google.api.method_signature) = "project,zone,instance"; + } + + // Returns the Shielded Instance Identity of an instance + rpc GetShieldedInstanceIdentity(GetShieldedInstanceIdentityInstanceRequest) returns (ShieldedInstanceIdentity) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/getShieldedInstanceIdentity" + }; + option (google.api.method_signature) = "project,zone,instance"; + } + + // Creates an instance resource in the specified project using the data included in the request. + rpc Insert(InsertInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances" + }; + option (google.api.method_signature) = "project,zone,instance_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves the list of instances contained within the specified zone. + rpc List(ListInstancesRequest) returns (InstanceList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instances" + }; + option (google.api.method_signature) = "project,zone"; + } + + // Retrieves a list of resources that refer to the VM instance specified in the request. For example, if the VM instance is part of a managed or unmanaged instance group, the referrers list includes the instance group. For more information, read Viewing referrers to VM instances. + rpc ListReferrers(ListReferrersInstancesRequest) returns (InstanceListReferrers) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/referrers" + }; + option (google.api.method_signature) = "project,zone,instance"; + } + + // Removes resource policies from an instance. + rpc RemoveResourcePolicies(RemoveResourcePoliciesInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "instances_remove_resource_policies_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/removeResourcePolicies" + }; + option (google.api.method_signature) = "project,zone,instance,instances_remove_resource_policies_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Performs a reset on the instance. This is a hard reset the VM does not do a graceful shutdown. For more information, see Resetting an instance. + rpc Reset(ResetInstanceRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/reset" + }; + option (google.api.method_signature) = "project,zone,instance"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sends diagnostic interrupt to the instance. + rpc SendDiagnosticInterrupt(SendDiagnosticInterruptInstanceRequest) returns (SendDiagnosticInterruptInstanceResponse) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/sendDiagnosticInterrupt" + }; + option (google.api.method_signature) = "project,zone,instance"; + } + + // Sets deletion protection on the instance. + rpc SetDeletionProtection(SetDeletionProtectionInstanceRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setDeletionProtection" + }; + option (google.api.method_signature) = "project,zone,resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sets the auto-delete flag for a disk attached to an instance. + rpc SetDiskAutoDelete(SetDiskAutoDeleteInstanceRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete" + }; + option (google.api.method_signature) = "project,zone,instance,auto_delete,device_name"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicyInstanceRequest) returns (Policy) { + option (google.api.http) = { + body: "zone_set_policy_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,zone,resource,zone_set_policy_request_resource"; + } + + // Sets labels on an instance. To learn more about labels, read the Labeling Resources documentation. + rpc SetLabels(SetLabelsInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "instances_set_labels_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setLabels" + }; + option (google.api.method_signature) = "project,zone,instance,instances_set_labels_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Changes the number and/or type of accelerator for a stopped instance to the values specified in the request. + rpc SetMachineResources(SetMachineResourcesInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "instances_set_machine_resources_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineResources" + }; + option (google.api.method_signature) = "project,zone,instance,instances_set_machine_resources_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Changes the machine type for a stopped instance to the machine type specified in the request. + rpc SetMachineType(SetMachineTypeInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "instances_set_machine_type_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMachineType" + }; + option (google.api.method_signature) = "project,zone,instance,instances_set_machine_type_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sets metadata for the specified instance to the data included in the request. + rpc SetMetadata(SetMetadataInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "metadata_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMetadata" + }; + option (google.api.method_signature) = "project,zone,instance,metadata_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Changes the minimum CPU platform that this instance should use. This method can only be called on a stopped instance. For more information, read Specifying a Minimum CPU Platform. + rpc SetMinCpuPlatform(SetMinCpuPlatformInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "instances_set_min_cpu_platform_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform" + }; + option (google.api.method_signature) = "project,zone,instance,instances_set_min_cpu_platform_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sets an instance's scheduling options. You can only call this method on a stopped instance, that is, a VM instance that is in a `TERMINATED` state. See Instance Life Cycle for more information on the possible instance states. + rpc SetScheduling(SetSchedulingInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "scheduling_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setScheduling" + }; + option (google.api.method_signature) = "project,zone,instance,scheduling_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sets the service account on the instance. For more information, read Changing the service account and access scopes for an instance. + rpc SetServiceAccount(SetServiceAccountInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "instances_set_service_account_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setServiceAccount" + }; + option (google.api.method_signature) = "project,zone,instance,instances_set_service_account_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sets the Shielded Instance integrity policy for an instance. You can only use this method on a running instance. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc SetShieldedInstanceIntegrityPolicy(SetShieldedInstanceIntegrityPolicyInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "shielded_instance_integrity_policy_resource" + patch: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy" + }; + option (google.api.method_signature) = "project,zone,instance,shielded_instance_integrity_policy_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sets network tags for the specified instance to the data included in the request. + rpc SetTags(SetTagsInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "tags_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/setTags" + }; + option (google.api.method_signature) = "project,zone,instance,tags_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Simulates a maintenance event on the instance. + rpc SimulateMaintenanceEvent(SimulateMaintenanceEventInstanceRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent" + }; + option (google.api.method_signature) = "project,zone,instance"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Starts an instance that was stopped using the instances().stop method. For more information, see Restart an instance. + rpc Start(StartInstanceRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/start" + }; + option (google.api.method_signature) = "project,zone,instance"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Starts an instance that was stopped using the instances().stop method. For more information, see Restart an instance. + rpc StartWithEncryptionKey(StartWithEncryptionKeyInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "instances_start_with_encryption_key_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey" + }; + option (google.api.method_signature) = "project,zone,instance,instances_start_with_encryption_key_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Stops a running instance, shutting it down cleanly, and allows you to restart the instance at a later time. Stopped instances do not incur VM usage charges while they are stopped. However, resources that the VM is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted. For more information, see Stopping an instance. + rpc Stop(StopInstanceRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/stop" + }; + option (google.api.method_signature) = "project,zone,instance"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsInstanceRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,zone,resource,test_permissions_request_resource"; + } + + // Updates an instance only if the necessary resources are available. This method can update only a specific set of instance properties. See Updating a running instance for a list of updatable instance properties. + rpc Update(UpdateInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_resource" + put: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}" + }; + option (google.api.method_signature) = "project,zone,instance,instance_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Updates the specified access config from an instance's network interface with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc UpdateAccessConfig(UpdateAccessConfigInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "access_config_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateAccessConfig" + }; + option (google.api.method_signature) = "project,zone,instance,network_interface,access_config_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Updates the Display config for a VM instance. You can only use this method on a stopped VM instance. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc UpdateDisplayDevice(UpdateDisplayDeviceInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "display_device_resource" + patch: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateDisplayDevice" + }; + option (google.api.method_signature) = "project,zone,instance,display_device_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Updates an instance's network interface. This method can only update an interface's alias IP range and attached network. See Modifying alias IP ranges for an existing instance for instructions on changing alias IP ranges. See Migrating a VM between networks for instructions on migrating an interface. This method follows PATCH semantics. + rpc UpdateNetworkInterface(UpdateNetworkInterfaceInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "network_interface_resource" + patch: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateNetworkInterface" + }; + option (google.api.method_signature) = "project,zone,instance,network_interface,network_interface_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Updates the Shielded Instance config for an instance. You can only use this method on a stopped instance. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc UpdateShieldedInstanceConfig(UpdateShieldedInstanceConfigInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "shielded_instance_config_resource" + patch: "/compute/v1/projects/{project}/zones/{zone}/instances/{instance}/updateShieldedInstanceConfig" + }; + option (google.api.method_signature) = "project,zone,instance,shielded_instance_config_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + +} + +// The InterconnectAttachments API. +service InterconnectAttachments { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of interconnect attachments. + rpc AggregatedList(AggregatedListInterconnectAttachmentsRequest) returns (InterconnectAttachmentAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/interconnectAttachments" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified interconnect attachment. + rpc Delete(DeleteInterconnectAttachmentRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}" + }; + option (google.api.method_signature) = "project,region,interconnect_attachment"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified interconnect attachment. + rpc Get(GetInterconnectAttachmentRequest) returns (InterconnectAttachment) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}" + }; + option (google.api.method_signature) = "project,region,interconnect_attachment"; + } + + // Creates an InterconnectAttachment in the specified project using the data included in the request. + rpc Insert(InsertInterconnectAttachmentRequest) returns (Operation) { + option (google.api.http) = { + body: "interconnect_attachment_resource" + post: "/compute/v1/projects/{project}/regions/{region}/interconnectAttachments" + }; + option (google.api.method_signature) = "project,region,interconnect_attachment_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves the list of interconnect attachments contained within the specified region. + rpc List(ListInterconnectAttachmentsRequest) returns (InterconnectAttachmentList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/interconnectAttachments" + }; + option (google.api.method_signature) = "project,region"; + } + + // Updates the specified interconnect attachment with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchInterconnectAttachmentRequest) returns (Operation) { + option (google.api.http) = { + body: "interconnect_attachment_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/interconnectAttachments/{interconnect_attachment}" + }; + option (google.api.method_signature) = "project,region,interconnect_attachment,interconnect_attachment_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The InterconnectLocations API. +service InterconnectLocations { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute.readonly," + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Returns the details for the specified interconnect location. Gets a list of available interconnect locations by making a list() request. + rpc Get(GetInterconnectLocationRequest) returns (InterconnectLocation) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/interconnectLocations/{interconnect_location}" + }; + option (google.api.method_signature) = "project,interconnect_location"; + } + + // Retrieves the list of interconnect locations available to the specified project. + rpc List(ListInterconnectLocationsRequest) returns (InterconnectLocationList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/interconnectLocations" + }; + option (google.api.method_signature) = "project"; + } + +} + +// The Interconnects API. +service Interconnects { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified interconnect. + rpc Delete(DeleteInterconnectRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/interconnects/{interconnect}" + }; + option (google.api.method_signature) = "project,interconnect"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified interconnect. Get a list of available interconnects by making a list() request. + rpc Get(GetInterconnectRequest) returns (Interconnect) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/interconnects/{interconnect}" + }; + option (google.api.method_signature) = "project,interconnect"; + } + + // Returns the interconnectDiagnostics for the specified interconnect. + rpc GetDiagnostics(GetDiagnosticsInterconnectRequest) returns (InterconnectsGetDiagnosticsResponse) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/interconnects/{interconnect}/getDiagnostics" + }; + option (google.api.method_signature) = "project,interconnect"; + } + + // Creates a Interconnect in the specified project using the data included in the request. + rpc Insert(InsertInterconnectRequest) returns (Operation) { + option (google.api.http) = { + body: "interconnect_resource" + post: "/compute/v1/projects/{project}/global/interconnects" + }; + option (google.api.method_signature) = "project,interconnect_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of interconnect available to the specified project. + rpc List(ListInterconnectsRequest) returns (InterconnectList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/interconnects" + }; + option (google.api.method_signature) = "project"; + } + + // Updates the specified interconnect with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchInterconnectRequest) returns (Operation) { + option (google.api.http) = { + body: "interconnect_resource" + patch: "/compute/v1/projects/{project}/global/interconnects/{interconnect}" + }; + option (google.api.method_signature) = "project,interconnect,interconnect_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The LicenseCodes API. +service LicenseCodes { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute.readonly," + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Return a specified license code. License codes are mirrored across all projects that have permissions to read the License Code. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. + rpc Get(GetLicenseCodeRequest) returns (LicenseCode) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/licenseCodes/{license_code}" + }; + option (google.api.method_signature) = "project,license_code"; + } + + // Returns permissions that a caller has on the specified resource. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. + rpc TestIamPermissions(TestIamPermissionsLicenseCodeRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/global/licenseCodes/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,resource,test_permissions_request_resource"; + } + +} + +// The Licenses API. +service Licenses { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified license. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. + rpc Delete(DeleteLicenseRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/licenses/{license}" + }; + option (google.api.method_signature) = "project,license"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified License resource. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. + rpc Get(GetLicenseRequest) returns (License) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/licenses/{license}" + }; + option (google.api.method_signature) = "project,license"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. + rpc GetIamPolicy(GetIamPolicyLicenseRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/licenses/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,resource"; + } + + // Create a License resource in the specified project. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. + rpc Insert(InsertLicenseRequest) returns (Operation) { + option (google.api.http) = { + body: "license_resource" + post: "/compute/v1/projects/{project}/global/licenses" + }; + option (google.api.method_signature) = "project,license_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of licenses available in the specified project. This method does not get any licenses that belong to other projects, including licenses attached to publicly-available images, like Debian 9. If you want to get a list of publicly-available licenses, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. + rpc List(ListLicensesRequest) returns (LicensesListResponse) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/licenses" + }; + option (google.api.method_signature) = "project"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. + rpc SetIamPolicy(SetIamPolicyLicenseRequest) returns (Policy) { + option (google.api.http) = { + body: "global_set_policy_request_resource" + post: "/compute/v1/projects/{project}/global/licenses/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,resource,global_set_policy_request_resource"; + } + + // Returns permissions that a caller has on the specified resource. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. + rpc TestIamPermissions(TestIamPermissionsLicenseRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/global/licenses/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,resource,test_permissions_request_resource"; + } + +} + +// The MachineTypes API. +service MachineTypes { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute.readonly," + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of machine types. + rpc AggregatedList(AggregatedListMachineTypesRequest) returns (MachineTypeAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/machineTypes" + }; + option (google.api.method_signature) = "project"; + } + + // Returns the specified machine type. Gets a list of available machine types by making a list() request. + rpc Get(GetMachineTypeRequest) returns (MachineType) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/machineTypes/{machine_type}" + }; + option (google.api.method_signature) = "project,zone,machine_type"; + } + + // Retrieves a list of machine types available to the specified project. + rpc List(ListMachineTypesRequest) returns (MachineTypeList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/machineTypes" + }; + option (google.api.method_signature) = "project,zone"; + } + +} + +// The NetworkEndpointGroups API. +service NetworkEndpointGroups { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves the list of network endpoint groups and sorts them by zone. + rpc AggregatedList(AggregatedListNetworkEndpointGroupsRequest) returns (NetworkEndpointGroupAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/networkEndpointGroups" + }; + option (google.api.method_signature) = "project"; + } + + // Attach a list of network endpoints to the specified network endpoint group. + rpc AttachNetworkEndpoints(AttachNetworkEndpointsNetworkEndpointGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "network_endpoint_groups_attach_endpoints_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{network_endpoint_group}/attachNetworkEndpoints" + }; + option (google.api.method_signature) = "project,zone,network_endpoint_group,network_endpoint_groups_attach_endpoints_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Deletes the specified network endpoint group. The network endpoints in the NEG and the VM instances they belong to are not terminated when the NEG is deleted. Note that the NEG cannot be deleted if there are backend services referencing it. + rpc Delete(DeleteNetworkEndpointGroupRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{network_endpoint_group}" + }; + option (google.api.method_signature) = "project,zone,network_endpoint_group"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Detach a list of network endpoints from the specified network endpoint group. + rpc DetachNetworkEndpoints(DetachNetworkEndpointsNetworkEndpointGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "network_endpoint_groups_detach_endpoints_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{network_endpoint_group}/detachNetworkEndpoints" + }; + option (google.api.method_signature) = "project,zone,network_endpoint_group,network_endpoint_groups_detach_endpoints_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Returns the specified network endpoint group. Gets a list of available network endpoint groups by making a list() request. + rpc Get(GetNetworkEndpointGroupRequest) returns (NetworkEndpointGroup) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{network_endpoint_group}" + }; + option (google.api.method_signature) = "project,zone,network_endpoint_group"; + } + + // Creates a network endpoint group in the specified project using the parameters that are included in the request. + rpc Insert(InsertNetworkEndpointGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "network_endpoint_group_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups" + }; + option (google.api.method_signature) = "project,zone,network_endpoint_group_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves the list of network endpoint groups that are located in the specified project and zone. + rpc List(ListNetworkEndpointGroupsRequest) returns (NetworkEndpointGroupList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups" + }; + option (google.api.method_signature) = "project,zone"; + } + + // Lists the network endpoints in the specified network endpoint group. + rpc ListNetworkEndpoints(ListNetworkEndpointsNetworkEndpointGroupsRequest) returns (NetworkEndpointGroupsListNetworkEndpoints) { + option (google.api.http) = { + body: "network_endpoint_groups_list_endpoints_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{network_endpoint_group}/listNetworkEndpoints" + }; + option (google.api.method_signature) = "project,zone,network_endpoint_group,network_endpoint_groups_list_endpoints_request_resource"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsNetworkEndpointGroupRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/networkEndpointGroups/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,zone,resource,test_permissions_request_resource"; + } + +} + +// The Networks API. +service Networks { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Adds a peering to the specified network. + rpc AddPeering(AddPeeringNetworkRequest) returns (Operation) { + option (google.api.http) = { + body: "networks_add_peering_request_resource" + post: "/compute/v1/projects/{project}/global/networks/{network}/addPeering" + }; + option (google.api.method_signature) = "project,network,networks_add_peering_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Deletes the specified network. + rpc Delete(DeleteNetworkRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/networks/{network}" + }; + option (google.api.method_signature) = "project,network"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified network. Gets a list of available networks by making a list() request. + rpc Get(GetNetworkRequest) returns (Network) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/networks/{network}" + }; + option (google.api.method_signature) = "project,network"; + } + + // Returns the effective firewalls on a given network. + rpc GetEffectiveFirewalls(GetEffectiveFirewallsNetworkRequest) returns (NetworksGetEffectiveFirewallsResponse) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/networks/{network}/getEffectiveFirewalls" + }; + option (google.api.method_signature) = "project,network"; + } + + // Creates a network in the specified project using the data included in the request. + rpc Insert(InsertNetworkRequest) returns (Operation) { + option (google.api.http) = { + body: "network_resource" + post: "/compute/v1/projects/{project}/global/networks" + }; + option (google.api.method_signature) = "project,network_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of networks available to the specified project. + rpc List(ListNetworksRequest) returns (NetworkList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/networks" + }; + option (google.api.method_signature) = "project"; + } + + // Lists the peering routes exchanged over peering connection. + rpc ListPeeringRoutes(ListPeeringRoutesNetworksRequest) returns (ExchangedPeeringRoutesList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/networks/{network}/listPeeringRoutes" + }; + option (google.api.method_signature) = "project,network"; + } + + // Patches the specified network with the data included in the request. Only the following fields can be modified: routingConfig.routingMode. + rpc Patch(PatchNetworkRequest) returns (Operation) { + option (google.api.http) = { + body: "network_resource" + patch: "/compute/v1/projects/{project}/global/networks/{network}" + }; + option (google.api.method_signature) = "project,network,network_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Removes a peering from the specified network. + rpc RemovePeering(RemovePeeringNetworkRequest) returns (Operation) { + option (google.api.http) = { + body: "networks_remove_peering_request_resource" + post: "/compute/v1/projects/{project}/global/networks/{network}/removePeering" + }; + option (google.api.method_signature) = "project,network,networks_remove_peering_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Switches the network mode from auto subnet mode to custom subnet mode. + rpc SwitchToCustomMode(SwitchToCustomModeNetworkRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/global/networks/{network}/switchToCustomMode" + }; + option (google.api.method_signature) = "project,network"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Updates the specified network peering with the data included in the request. You can only modify the NetworkPeering.export_custom_routes field and the NetworkPeering.import_custom_routes field. + rpc UpdatePeering(UpdatePeeringNetworkRequest) returns (Operation) { + option (google.api.http) = { + body: "networks_update_peering_request_resource" + patch: "/compute/v1/projects/{project}/global/networks/{network}/updatePeering" + }; + option (google.api.method_signature) = "project,network,networks_update_peering_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The NodeGroups API. +service NodeGroups { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Adds specified number of nodes to the node group. + rpc AddNodes(AddNodesNodeGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "node_groups_add_nodes_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/addNodes" + }; + option (google.api.method_signature) = "project,zone,node_group,node_groups_add_nodes_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves an aggregated list of node groups. Note: use nodeGroups.listNodes for more details about each group. + rpc AggregatedList(AggregatedListNodeGroupsRequest) returns (NodeGroupAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/nodeGroups" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified NodeGroup resource. + rpc Delete(DeleteNodeGroupRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}" + }; + option (google.api.method_signature) = "project,zone,node_group"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Deletes specified nodes from the node group. + rpc DeleteNodes(DeleteNodesNodeGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "node_groups_delete_nodes_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/deleteNodes" + }; + option (google.api.method_signature) = "project,zone,node_group,node_groups_delete_nodes_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Returns the specified NodeGroup. Get a list of available NodeGroups by making a list() request. Note: the "nodes" field should not be used. Use nodeGroups.listNodes instead. + rpc Get(GetNodeGroupRequest) returns (NodeGroup) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}" + }; + option (google.api.method_signature) = "project,zone,node_group"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicyNodeGroupRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,zone,resource"; + } + + // Creates a NodeGroup resource in the specified project using the data included in the request. + rpc Insert(InsertNodeGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "node_group_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups" + }; + option (google.api.method_signature) = "project,zone,initial_node_count,node_group_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves a list of node groups available to the specified project. Note: use nodeGroups.listNodes for more details about each group. + rpc List(ListNodeGroupsRequest) returns (NodeGroupList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups" + }; + option (google.api.method_signature) = "project,zone"; + } + + // Lists nodes in the node group. + rpc ListNodes(ListNodesNodeGroupsRequest) returns (NodeGroupsListNodes) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/listNodes" + }; + option (google.api.method_signature) = "project,zone,node_group"; + } + + // Updates the specified node group. + rpc Patch(PatchNodeGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "node_group_resource" + patch: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}" + }; + option (google.api.method_signature) = "project,zone,node_group,node_group_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicyNodeGroupRequest) returns (Policy) { + option (google.api.http) = { + body: "zone_set_policy_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,zone,resource,zone_set_policy_request_resource"; + } + + // Updates the node template of the node group. + rpc SetNodeTemplate(SetNodeTemplateNodeGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "node_groups_set_node_template_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{node_group}/setNodeTemplate" + }; + option (google.api.method_signature) = "project,zone,node_group,node_groups_set_node_template_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsNodeGroupRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,zone,resource,test_permissions_request_resource"; + } + +} + +// The NodeTemplates API. +service NodeTemplates { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of node templates. + rpc AggregatedList(AggregatedListNodeTemplatesRequest) returns (NodeTemplateAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/nodeTemplates" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified NodeTemplate resource. + rpc Delete(DeleteNodeTemplateRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{node_template}" + }; + option (google.api.method_signature) = "project,region,node_template"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified node template. Gets a list of available node templates by making a list() request. + rpc Get(GetNodeTemplateRequest) returns (NodeTemplate) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{node_template}" + }; + option (google.api.method_signature) = "project,region,node_template"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicyNodeTemplateRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,region,resource"; + } + + // Creates a NodeTemplate resource in the specified project using the data included in the request. + rpc Insert(InsertNodeTemplateRequest) returns (Operation) { + option (google.api.http) = { + body: "node_template_resource" + post: "/compute/v1/projects/{project}/regions/{region}/nodeTemplates" + }; + option (google.api.method_signature) = "project,region,node_template_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of node templates available to the specified project. + rpc List(ListNodeTemplatesRequest) returns (NodeTemplateList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/nodeTemplates" + }; + option (google.api.method_signature) = "project,region"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicyNodeTemplateRequest) returns (Policy) { + option (google.api.http) = { + body: "region_set_policy_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,region,resource,region_set_policy_request_resource"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsNodeTemplateRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,region,resource,test_permissions_request_resource"; + } + +} + +// The NodeTypes API. +service NodeTypes { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute.readonly," + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of node types. + rpc AggregatedList(AggregatedListNodeTypesRequest) returns (NodeTypeAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/nodeTypes" + }; + option (google.api.method_signature) = "project"; + } + + // Returns the specified node type. Gets a list of available node types by making a list() request. + rpc Get(GetNodeTypeRequest) returns (NodeType) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/nodeTypes/{node_type}" + }; + option (google.api.method_signature) = "project,zone,node_type"; + } + + // Retrieves a list of node types available to the specified project. + rpc List(ListNodeTypesRequest) returns (NodeTypeList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/nodeTypes" + }; + option (google.api.method_signature) = "project,zone"; + } + +} + +// The PacketMirrorings API. +service PacketMirrorings { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of packetMirrorings. + rpc AggregatedList(AggregatedListPacketMirroringsRequest) returns (PacketMirroringAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/packetMirrorings" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified PacketMirroring resource. + rpc Delete(DeletePacketMirroringRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}" + }; + option (google.api.method_signature) = "project,region,packet_mirroring"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified PacketMirroring resource. + rpc Get(GetPacketMirroringRequest) returns (PacketMirroring) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}" + }; + option (google.api.method_signature) = "project,region,packet_mirroring"; + } + + // Creates a PacketMirroring resource in the specified project and region using the data included in the request. + rpc Insert(InsertPacketMirroringRequest) returns (Operation) { + option (google.api.http) = { + body: "packet_mirroring_resource" + post: "/compute/v1/projects/{project}/regions/{region}/packetMirrorings" + }; + option (google.api.method_signature) = "project,region,packet_mirroring_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of PacketMirroring resources available to the specified project and region. + rpc List(ListPacketMirroringsRequest) returns (PacketMirroringList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/packetMirrorings" + }; + option (google.api.method_signature) = "project,region"; + } + + // Patches the specified PacketMirroring resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules. + rpc Patch(PatchPacketMirroringRequest) returns (Operation) { + option (google.api.http) = { + body: "packet_mirroring_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{packet_mirroring}" + }; + option (google.api.method_signature) = "project,region,packet_mirroring,packet_mirroring_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsPacketMirroringRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/packetMirrorings/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,region,resource,test_permissions_request_resource"; + } + +} + +// The Projects API. +service Projects { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Disable this project as a shared VPC host project. + rpc DisableXpnHost(DisableXpnHostProjectRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/disableXpnHost" + }; + option (google.api.method_signature) = "project"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Disable a service resource (also known as service project) associated with this host project. + rpc DisableXpnResource(DisableXpnResourceProjectRequest) returns (Operation) { + option (google.api.http) = { + body: "projects_disable_xpn_resource_request_resource" + post: "/compute/v1/projects/{project}/disableXpnResource" + }; + option (google.api.method_signature) = "project,projects_disable_xpn_resource_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Enable this project as a shared VPC host project. + rpc EnableXpnHost(EnableXpnHostProjectRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/enableXpnHost" + }; + option (google.api.method_signature) = "project"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Enable service resource (a.k.a service project) for a host project, so that subnets in the host project can be used by instances in the service project. + rpc EnableXpnResource(EnableXpnResourceProjectRequest) returns (Operation) { + option (google.api.http) = { + body: "projects_enable_xpn_resource_request_resource" + post: "/compute/v1/projects/{project}/enableXpnResource" + }; + option (google.api.method_signature) = "project,projects_enable_xpn_resource_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified Project resource. + rpc Get(GetProjectRequest) returns (Project) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}" + }; + option (google.api.method_signature) = "project"; + } + + // Gets the shared VPC host project that this project links to. May be empty if no link exists. + rpc GetXpnHost(GetXpnHostProjectRequest) returns (Project) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/getXpnHost" + }; + option (google.api.method_signature) = "project"; + } + + // Gets service resources (a.k.a service project) associated with this host project. + rpc GetXpnResources(GetXpnResourcesProjectsRequest) returns (ProjectsGetXpnResources) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/getXpnResources" + }; + option (google.api.method_signature) = "project"; + } + + // Lists all shared VPC host projects visible to the user in an organization. + rpc ListXpnHosts(ListXpnHostsProjectsRequest) returns (XpnHostList) { + option (google.api.http) = { + body: "projects_list_xpn_hosts_request_resource" + post: "/compute/v1/projects/{project}/listXpnHosts" + }; + option (google.api.method_signature) = "project,projects_list_xpn_hosts_request_resource"; + } + + // Moves a persistent disk from one zone to another. + rpc MoveDisk(MoveDiskProjectRequest) returns (Operation) { + option (google.api.http) = { + body: "disk_move_request_resource" + post: "/compute/v1/projects/{project}/moveDisk" + }; + option (google.api.method_signature) = "project,disk_move_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Moves an instance and its attached persistent disks from one zone to another. + rpc MoveInstance(MoveInstanceProjectRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_move_request_resource" + post: "/compute/v1/projects/{project}/moveInstance" + }; + option (google.api.method_signature) = "project,instance_move_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Sets metadata common to all instances within the specified project using the data included in the request. + rpc SetCommonInstanceMetadata(SetCommonInstanceMetadataProjectRequest) returns (Operation) { + option (google.api.http) = { + body: "metadata_resource" + post: "/compute/v1/projects/{project}/setCommonInstanceMetadata" + }; + option (google.api.method_signature) = "project,metadata_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Sets the default network tier of the project. The default network tier is used when an address/forwardingRule/instance is created without specifying the network tier field. + rpc SetDefaultNetworkTier(SetDefaultNetworkTierProjectRequest) returns (Operation) { + option (google.api.http) = { + body: "projects_set_default_network_tier_request_resource" + post: "/compute/v1/projects/{project}/setDefaultNetworkTier" + }; + option (google.api.method_signature) = "project,projects_set_default_network_tier_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Enables the usage export feature and sets the usage export bucket where reports are stored. If you provide an empty request body using this method, the usage export feature will be disabled. + rpc SetUsageExportBucket(SetUsageExportBucketProjectRequest) returns (Operation) { + option (google.api.http) = { + body: "usage_export_location_resource" + post: "/compute/v1/projects/{project}/setUsageExportBucket" + }; + option (google.api.method_signature) = "project,usage_export_location_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The PublicAdvertisedPrefixes API. +service PublicAdvertisedPrefixes { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified PublicAdvertisedPrefix + rpc Delete(DeletePublicAdvertisedPrefixeRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}" + }; + option (google.api.method_signature) = "project,public_advertised_prefix"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified PublicAdvertisedPrefix resource. + rpc Get(GetPublicAdvertisedPrefixeRequest) returns (PublicAdvertisedPrefix) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}" + }; + option (google.api.method_signature) = "project,public_advertised_prefix"; + } + + // Creates a PublicAdvertisedPrefix in the specified project using the parameters that are included in the request. + rpc Insert(InsertPublicAdvertisedPrefixeRequest) returns (Operation) { + option (google.api.http) = { + body: "public_advertised_prefix_resource" + post: "/compute/v1/projects/{project}/global/publicAdvertisedPrefixes" + }; + option (google.api.method_signature) = "project,public_advertised_prefix_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Lists the PublicAdvertisedPrefixes for a project. + rpc List(ListPublicAdvertisedPrefixesRequest) returns (PublicAdvertisedPrefixList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/publicAdvertisedPrefixes" + }; + option (google.api.method_signature) = "project"; + } + + // Patches the specified Router resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules. + rpc Patch(PatchPublicAdvertisedPrefixeRequest) returns (Operation) { + option (google.api.http) = { + body: "public_advertised_prefix_resource" + patch: "/compute/v1/projects/{project}/global/publicAdvertisedPrefixes/{public_advertised_prefix}" + }; + option (google.api.method_signature) = "project,public_advertised_prefix,public_advertised_prefix_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The PublicDelegatedPrefixes API. +service PublicDelegatedPrefixes { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Lists all PublicDelegatedPrefix resources owned by the specific project across all scopes. + rpc AggregatedList(AggregatedListPublicDelegatedPrefixesRequest) returns (PublicDelegatedPrefixAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/publicDelegatedPrefixes" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified PublicDelegatedPrefix in the given region. + rpc Delete(DeletePublicDelegatedPrefixeRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}" + }; + option (google.api.method_signature) = "project,region,public_delegated_prefix"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified PublicDelegatedPrefix resource in the given region. + rpc Get(GetPublicDelegatedPrefixeRequest) returns (PublicDelegatedPrefix) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}" + }; + option (google.api.method_signature) = "project,region,public_delegated_prefix"; + } + + // Creates a PublicDelegatedPrefix in the specified project in the given region using the parameters that are included in the request. + rpc Insert(InsertPublicDelegatedPrefixeRequest) returns (Operation) { + option (google.api.http) = { + body: "public_delegated_prefix_resource" + post: "/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes" + }; + option (google.api.method_signature) = "project,region,public_delegated_prefix_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Lists the PublicDelegatedPrefixes for a project in the given region. + rpc List(ListPublicDelegatedPrefixesRequest) returns (PublicDelegatedPrefixList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes" + }; + option (google.api.method_signature) = "project,region"; + } + + // Patches the specified PublicDelegatedPrefix resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules. + rpc Patch(PatchPublicDelegatedPrefixeRequest) returns (Operation) { + option (google.api.http) = { + body: "public_delegated_prefix_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/publicDelegatedPrefixes/{public_delegated_prefix}" + }; + option (google.api.method_signature) = "project,region,public_delegated_prefix,public_delegated_prefix_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The RegionAutoscalers API. +service RegionAutoscalers { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified autoscaler. + rpc Delete(DeleteRegionAutoscalerRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/autoscalers/{autoscaler}" + }; + option (google.api.method_signature) = "project,region,autoscaler"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified autoscaler. + rpc Get(GetRegionAutoscalerRequest) returns (Autoscaler) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/autoscalers/{autoscaler}" + }; + option (google.api.method_signature) = "project,region,autoscaler"; + } + + // Creates an autoscaler in the specified project using the data included in the request. + rpc Insert(InsertRegionAutoscalerRequest) returns (Operation) { + option (google.api.http) = { + body: "autoscaler_resource" + post: "/compute/v1/projects/{project}/regions/{region}/autoscalers" + }; + option (google.api.method_signature) = "project,region,autoscaler_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of autoscalers contained within the specified region. + rpc List(ListRegionAutoscalersRequest) returns (RegionAutoscalerList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/autoscalers" + }; + option (google.api.method_signature) = "project,region"; + } + + // Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchRegionAutoscalerRequest) returns (Operation) { + option (google.api.http) = { + body: "autoscaler_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/autoscalers" + }; + option (google.api.method_signature) = "project,region,autoscaler_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Updates an autoscaler in the specified project using the data included in the request. + rpc Update(UpdateRegionAutoscalerRequest) returns (Operation) { + option (google.api.http) = { + body: "autoscaler_resource" + put: "/compute/v1/projects/{project}/regions/{region}/autoscalers" + }; + option (google.api.method_signature) = "project,region,autoscaler_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The RegionBackendServices API. +service RegionBackendServices { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified regional BackendService resource. + rpc Delete(DeleteRegionBackendServiceRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}" + }; + option (google.api.method_signature) = "project,region,backend_service"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified regional BackendService resource. + rpc Get(GetRegionBackendServiceRequest) returns (BackendService) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}" + }; + option (google.api.method_signature) = "project,region,backend_service"; + } + + // Gets the most recent health check results for this regional BackendService. + rpc GetHealth(GetHealthRegionBackendServiceRequest) returns (BackendServiceGroupHealth) { + option (google.api.http) = { + body: "resource_group_reference_resource" + post: "/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}/getHealth" + }; + option (google.api.method_signature) = "project,region,backend_service,resource_group_reference_resource"; + } + + // Creates a regional BackendService resource in the specified project using the data included in the request. For more information, see Backend services overview. + rpc Insert(InsertRegionBackendServiceRequest) returns (Operation) { + option (google.api.http) = { + body: "backend_service_resource" + post: "/compute/v1/projects/{project}/regions/{region}/backendServices" + }; + option (google.api.method_signature) = "project,region,backend_service_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves the list of regional BackendService resources available to the specified project in the given region. + rpc List(ListRegionBackendServicesRequest) returns (BackendServiceList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/backendServices" + }; + option (google.api.method_signature) = "project,region"; + } + + // Updates the specified regional BackendService resource with the data included in the request. For more information, see Understanding backend services This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchRegionBackendServiceRequest) returns (Operation) { + option (google.api.http) = { + body: "backend_service_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}" + }; + option (google.api.method_signature) = "project,region,backend_service,backend_service_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Updates the specified regional BackendService resource with the data included in the request. For more information, see Backend services overview . + rpc Update(UpdateRegionBackendServiceRequest) returns (Operation) { + option (google.api.http) = { + body: "backend_service_resource" + put: "/compute/v1/projects/{project}/regions/{region}/backendServices/{backend_service}" + }; + option (google.api.method_signature) = "project,region,backend_service,backend_service_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The RegionCommitments API. +service RegionCommitments { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of commitments by region. + rpc AggregatedList(AggregatedListRegionCommitmentsRequest) returns (CommitmentAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/commitments" + }; + option (google.api.method_signature) = "project"; + } + + // Returns the specified commitment resource. Gets a list of available commitments by making a list() request. + rpc Get(GetRegionCommitmentRequest) returns (Commitment) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/commitments/{commitment}" + }; + option (google.api.method_signature) = "project,region,commitment"; + } + + // Creates a commitment in the specified project using the data included in the request. + rpc Insert(InsertRegionCommitmentRequest) returns (Operation) { + option (google.api.http) = { + body: "commitment_resource" + post: "/compute/v1/projects/{project}/regions/{region}/commitments" + }; + option (google.api.method_signature) = "project,region,commitment_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of commitments contained within the specified region. + rpc List(ListRegionCommitmentsRequest) returns (CommitmentList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/commitments" + }; + option (google.api.method_signature) = "project,region"; + } + +} + +// The RegionDiskTypes API. +service RegionDiskTypes { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute.readonly," + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Returns the specified regional disk type. Gets a list of available disk types by making a list() request. + rpc Get(GetRegionDiskTypeRequest) returns (DiskType) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/diskTypes/{disk_type}" + }; + option (google.api.method_signature) = "project,region,disk_type"; + } + + // Retrieves a list of regional disk types available to the specified project. + rpc List(ListRegionDiskTypesRequest) returns (RegionDiskTypeList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/diskTypes" + }; + option (google.api.method_signature) = "project,region"; + } + +} + +// The RegionDisks API. +service RegionDisks { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Adds existing resource policies to a regional disk. You can only add one policy which will be applied to this disk for scheduling snapshot creation. + rpc AddResourcePolicies(AddResourcePoliciesRegionDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "region_disks_add_resource_policies_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies" + }; + option (google.api.method_signature) = "project,region,disk,region_disks_add_resource_policies_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Creates a snapshot of this regional disk. + rpc CreateSnapshot(CreateSnapshotRegionDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "snapshot_resource" + post: "/compute/v1/projects/{project}/regions/{region}/disks/{disk}/createSnapshot" + }; + option (google.api.method_signature) = "project,region,disk,snapshot_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Deletes the specified regional persistent disk. Deleting a regional disk removes all the replicas of its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots. + rpc Delete(DeleteRegionDiskRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/disks/{disk}" + }; + option (google.api.method_signature) = "project,region,disk"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns a specified regional persistent disk. + rpc Get(GetRegionDiskRequest) returns (Disk) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/disks/{disk}" + }; + option (google.api.method_signature) = "project,region,disk"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicyRegionDiskRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/disks/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,region,resource"; + } + + // Creates a persistent regional disk in the specified project using the data included in the request. + rpc Insert(InsertRegionDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "disk_resource" + post: "/compute/v1/projects/{project}/regions/{region}/disks" + }; + option (google.api.method_signature) = "project,region,disk_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves the list of persistent disks contained within the specified region. + rpc List(ListRegionDisksRequest) returns (DiskList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/disks" + }; + option (google.api.method_signature) = "project,region"; + } + + // Removes resource policies from a regional disk. + rpc RemoveResourcePolicies(RemoveResourcePoliciesRegionDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "region_disks_remove_resource_policies_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/disks/{disk}/removeResourcePolicies" + }; + option (google.api.method_signature) = "project,region,disk,region_disks_remove_resource_policies_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Resizes the specified regional persistent disk. + rpc Resize(ResizeRegionDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "region_disks_resize_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/disks/{disk}/resize" + }; + option (google.api.method_signature) = "project,region,disk,region_disks_resize_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicyRegionDiskRequest) returns (Policy) { + option (google.api.http) = { + body: "region_set_policy_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/disks/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,region,resource,region_set_policy_request_resource"; + } + + // Sets the labels on the target regional disk. + rpc SetLabels(SetLabelsRegionDiskRequest) returns (Operation) { + option (google.api.http) = { + body: "region_set_labels_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/disks/{resource}/setLabels" + }; + option (google.api.method_signature) = "project,region,resource,region_set_labels_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsRegionDiskRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/disks/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,region,resource,test_permissions_request_resource"; + } + +} + +// The RegionHealthCheckServices API. +service RegionHealthCheckServices { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified regional HealthCheckService. + rpc Delete(DeleteRegionHealthCheckServiceRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}" + }; + option (google.api.method_signature) = "project,region,health_check_service"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified regional HealthCheckService resource. + rpc Get(GetRegionHealthCheckServiceRequest) returns (HealthCheckService) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}" + }; + option (google.api.method_signature) = "project,region,health_check_service"; + } + + // Creates a regional HealthCheckService resource in the specified project and region using the data included in the request. + rpc Insert(InsertRegionHealthCheckServiceRequest) returns (Operation) { + option (google.api.http) = { + body: "health_check_service_resource" + post: "/compute/v1/projects/{project}/regions/{region}/healthCheckServices" + }; + option (google.api.method_signature) = "project,region,health_check_service_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Lists all the HealthCheckService resources that have been configured for the specified project in the given region. + rpc List(ListRegionHealthCheckServicesRequest) returns (HealthCheckServicesList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/healthCheckServices" + }; + option (google.api.method_signature) = "project,region"; + } + + // Updates the specified regional HealthCheckService resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchRegionHealthCheckServiceRequest) returns (Operation) { + option (google.api.http) = { + body: "health_check_service_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/healthCheckServices/{health_check_service}" + }; + option (google.api.method_signature) = "project,region,health_check_service,health_check_service_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The RegionHealthChecks API. +service RegionHealthChecks { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified HealthCheck resource. + rpc Delete(DeleteRegionHealthCheckRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}" + }; + option (google.api.method_signature) = "project,region,health_check"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified HealthCheck resource. Gets a list of available health checks by making a list() request. + rpc Get(GetRegionHealthCheckRequest) returns (HealthCheck) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}" + }; + option (google.api.method_signature) = "project,region,health_check"; + } + + // Creates a HealthCheck resource in the specified project using the data included in the request. + rpc Insert(InsertRegionHealthCheckRequest) returns (Operation) { + option (google.api.http) = { + body: "health_check_resource" + post: "/compute/v1/projects/{project}/regions/{region}/healthChecks" + }; + option (google.api.method_signature) = "project,region,health_check_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves the list of HealthCheck resources available to the specified project. + rpc List(ListRegionHealthChecksRequest) returns (HealthCheckList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/healthChecks" + }; + option (google.api.method_signature) = "project,region"; + } + + // Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchRegionHealthCheckRequest) returns (Operation) { + option (google.api.http) = { + body: "health_check_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}" + }; + option (google.api.method_signature) = "project,region,health_check,health_check_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Updates a HealthCheck resource in the specified project using the data included in the request. + rpc Update(UpdateRegionHealthCheckRequest) returns (Operation) { + option (google.api.http) = { + body: "health_check_resource" + put: "/compute/v1/projects/{project}/regions/{region}/healthChecks/{health_check}" + }; + option (google.api.method_signature) = "project,region,health_check,health_check_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The RegionInstanceGroupManagers API. +service RegionInstanceGroupManagers { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Flags the specified instances to be immediately removed from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request. + rpc AbandonInstances(AbandonInstancesRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "region_instance_group_managers_abandon_instances_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/abandonInstances" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,region_instance_group_managers_abandon_instances_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Apply updates to selected instances the managed instance group. + rpc ApplyUpdatesToInstances(ApplyUpdatesToInstancesRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "region_instance_group_managers_apply_updates_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/applyUpdatesToInstances" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,region_instance_group_managers_apply_updates_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Creates instances with per-instance configs in this regional managed instance group. Instances are created using the current instance template. The create instances operation is marked DONE if the createInstances request is successful. The underlying actions take additional time. You must separately verify the status of the creating or actions with the listmanagedinstances method. + rpc CreateInstances(CreateInstancesRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "region_instance_group_managers_create_instances_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/createInstances" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,region_instance_group_managers_create_instances_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Deletes the specified managed instance group and all of the instances in that group. + rpc Delete(DeleteRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}" + }; + option (google.api.method_signature) = "project,region,instance_group_manager"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Flags the specified instances in the managed instance group to be immediately deleted. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. The deleteInstances operation is marked DONE if the deleteInstances request is successful. The underlying actions take additional time. You must separately verify the status of the deleting action with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request. + rpc DeleteInstances(DeleteInstancesRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "region_instance_group_managers_delete_instances_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/deleteInstances" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,region_instance_group_managers_delete_instances_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Deletes selected per-instance configs for the managed instance group. + rpc DeletePerInstanceConfigs(DeletePerInstanceConfigsRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "region_instance_group_manager_delete_instance_config_req_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/deletePerInstanceConfigs" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,region_instance_group_manager_delete_instance_config_req_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns all of the details about the specified managed instance group. + rpc Get(GetRegionInstanceGroupManagerRequest) returns (InstanceGroupManager) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}" + }; + option (google.api.method_signature) = "project,region,instance_group_manager"; + } + + // Creates a managed instance group using the information that you specify in the request. After the group is created, instances in the group are created using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method. A regional managed instance group can contain up to 2000 instances. + rpc Insert(InsertRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_manager_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers" + }; + option (google.api.method_signature) = "project,region,instance_group_manager_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves the list of managed instance groups that are contained within the specified region. + rpc List(ListRegionInstanceGroupManagersRequest) returns (RegionInstanceGroupManagerList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers" + }; + option (google.api.method_signature) = "project,region"; + } + + // Lists all errors thrown by actions on instances for a given regional managed instance group. The filter and orderBy query parameters are not supported. + rpc ListErrors(ListErrorsRegionInstanceGroupManagersRequest) returns (RegionInstanceGroupManagersListErrorsResponse) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/listErrors" + }; + option (google.api.method_signature) = "project,region,instance_group_manager"; + } + + // Lists the instances in the managed instance group and instances that are scheduled to be created. The list includes any current actions that the group has scheduled for its instances. The orderBy query parameter is not supported. + rpc ListManagedInstances(ListManagedInstancesRegionInstanceGroupManagersRequest) returns (RegionInstanceGroupManagersListInstancesResponse) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/listManagedInstances" + }; + option (google.api.method_signature) = "project,region,instance_group_manager"; + } + + // Lists all of the per-instance configs defined for the managed instance group. The orderBy query parameter is not supported. + rpc ListPerInstanceConfigs(ListPerInstanceConfigsRegionInstanceGroupManagersRequest) returns (RegionInstanceGroupManagersListInstanceConfigsResp) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/listPerInstanceConfigs" + }; + option (google.api.method_signature) = "project,region,instance_group_manager"; + } + + // Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listmanagedinstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. If you update your group to specify a new template or instance configuration, it's possible that your intended specification for each VM in the group is different from the current state of that VM. To learn how to apply an updated configuration to the VMs in a MIG, see Updating instances in a MIG. + rpc Patch(PatchRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "instance_group_manager_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,instance_group_manager_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Inserts or patches per-instance configs for the managed instance group. perInstanceConfig.name serves as a key used to distinguish whether to perform insert or patch. + rpc PatchPerInstanceConfigs(PatchPerInstanceConfigsRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "region_instance_group_manager_patch_instance_config_req_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/patchPerInstanceConfigs" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,region_instance_group_manager_patch_instance_config_req_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Flags the specified VM instances in the managed instance group to be immediately recreated. Each instance is recreated using the group's current configuration. This operation is marked as DONE when the flag is set even if the instances have not yet been recreated. You must separately verify the status of each instance by checking its currentAction field; for more information, see Checking the status of managed instances. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request. + rpc RecreateInstances(RecreateInstancesRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "region_instance_group_managers_recreate_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/recreateInstances" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,region_instance_group_managers_recreate_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Changes the intended size of the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes one or more instances. The resize operation is marked DONE if the resize request is successful. The underlying actions take additional time. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. + rpc Resize(ResizeRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/resize" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,size"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Sets the instance template to use when creating new instances or recreating instances in this group. Existing instances are not affected. + rpc SetInstanceTemplate(SetInstanceTemplateRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "region_instance_group_managers_set_template_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/setInstanceTemplate" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,region_instance_group_managers_set_template_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected. + rpc SetTargetPools(SetTargetPoolsRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "region_instance_group_managers_set_target_pools_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/setTargetPools" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,region_instance_group_managers_set_target_pools_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Inserts or updates per-instance configs for the managed instance group. perInstanceConfig.name serves as a key used to distinguish whether to perform insert or patch. + rpc UpdatePerInstanceConfigs(UpdatePerInstanceConfigsRegionInstanceGroupManagerRequest) returns (Operation) { + option (google.api.http) = { + body: "region_instance_group_manager_update_instance_config_req_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroupManagers/{instance_group_manager}/updatePerInstanceConfigs" + }; + option (google.api.method_signature) = "project,region,instance_group_manager,region_instance_group_manager_update_instance_config_req_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The RegionInstanceGroups API. +service RegionInstanceGroups { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Returns the specified instance group resource. + rpc Get(GetRegionInstanceGroupRequest) returns (InstanceGroup) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}" + }; + option (google.api.method_signature) = "project,region,instance_group"; + } + + // Retrieves the list of instance group resources contained within the specified region. + rpc List(ListRegionInstanceGroupsRequest) returns (RegionInstanceGroupList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/instanceGroups" + }; + option (google.api.method_signature) = "project,region"; + } + + // Lists the instances in the specified instance group and displays information about the named ports. Depending on the specified options, this method can list all instances or only the instances that are running. The orderBy query parameter is not supported. + rpc ListInstances(ListInstancesRegionInstanceGroupsRequest) returns (RegionInstanceGroupsListInstances) { + option (google.api.http) = { + body: "region_instance_groups_list_instances_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}/listInstances" + }; + option (google.api.method_signature) = "project,region,instance_group,region_instance_groups_list_instances_request_resource"; + } + + // Sets the named ports for the specified regional instance group. + rpc SetNamedPorts(SetNamedPortsRegionInstanceGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "region_instance_groups_set_named_ports_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instanceGroups/{instance_group}/setNamedPorts" + }; + option (google.api.method_signature) = "project,region,instance_group,region_instance_groups_set_named_ports_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The RegionInstances API. +service RegionInstances { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Creates multiple instances in a given region. Count specifies the number of instances to create. + rpc BulkInsert(BulkInsertRegionInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "bulk_insert_instance_resource_resource" + post: "/compute/v1/projects/{project}/regions/{region}/instances/bulkInsert" + }; + option (google.api.method_signature) = "project,region,bulk_insert_instance_resource_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The RegionNetworkEndpointGroups API. +service RegionNetworkEndpointGroups { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified network endpoint group. Note that the NEG cannot be deleted if it is configured as a backend of a backend service. + rpc Delete(DeleteRegionNetworkEndpointGroupRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}" + }; + option (google.api.method_signature) = "project,region,network_endpoint_group"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified network endpoint group. Gets a list of available network endpoint groups by making a list() request. + rpc Get(GetRegionNetworkEndpointGroupRequest) returns (NetworkEndpointGroup) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups/{network_endpoint_group}" + }; + option (google.api.method_signature) = "project,region,network_endpoint_group"; + } + + // Creates a network endpoint group in the specified project using the parameters that are included in the request. + rpc Insert(InsertRegionNetworkEndpointGroupRequest) returns (Operation) { + option (google.api.http) = { + body: "network_endpoint_group_resource" + post: "/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups" + }; + option (google.api.method_signature) = "project,region,network_endpoint_group_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves the list of regional network endpoint groups available to the specified project in the given region. + rpc List(ListRegionNetworkEndpointGroupsRequest) returns (NetworkEndpointGroupList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/networkEndpointGroups" + }; + option (google.api.method_signature) = "project,region"; + } + +} + +// The RegionNotificationEndpoints API. +service RegionNotificationEndpoints { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified NotificationEndpoint in the given region + rpc Delete(DeleteRegionNotificationEndpointRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/notificationEndpoints/{notification_endpoint}" + }; + option (google.api.method_signature) = "project,region,notification_endpoint"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified NotificationEndpoint resource in the given region. + rpc Get(GetRegionNotificationEndpointRequest) returns (NotificationEndpoint) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/notificationEndpoints/{notification_endpoint}" + }; + option (google.api.method_signature) = "project,region,notification_endpoint"; + } + + // Create a NotificationEndpoint in the specified project in the given region using the parameters that are included in the request. + rpc Insert(InsertRegionNotificationEndpointRequest) returns (Operation) { + option (google.api.http) = { + body: "notification_endpoint_resource" + post: "/compute/v1/projects/{project}/regions/{region}/notificationEndpoints" + }; + option (google.api.method_signature) = "project,region,notification_endpoint_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Lists the NotificationEndpoints for a project in the given region. + rpc List(ListRegionNotificationEndpointsRequest) returns (NotificationEndpointList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/notificationEndpoints" + }; + option (google.api.method_signature) = "project,region"; + } + +} + +// The RegionOperations API. +service RegionOperations { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified region-specific Operations resource. + rpc Delete(DeleteRegionOperationRequest) returns (DeleteRegionOperationResponse) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/operations/{operation}" + }; + option (google.api.method_signature) = "project,region,operation"; + } + + // Retrieves the specified region-specific Operations resource. + rpc Get(GetRegionOperationRequest) returns (Operation) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/operations/{operation}" + }; + option (google.api.method_signature) = "project,region,operation"; + option (google.cloud.operation_polling_method) = true; + } + + // Retrieves a list of Operation resources contained within the specified region. + rpc List(ListRegionOperationsRequest) returns (OperationList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/operations" + }; + option (google.api.method_signature) = "project,region"; + } + + // Waits for the specified Operation resource to return as `DONE` or for the request to approach the 2 minute deadline, and retrieves the specified Operation resource. This method differs from the `GET` method in that it waits for no more than the default deadline (2 minutes) and then returns the current state of the operation, which might be `DONE` or still in progress. This method is called on a best-effort basis. Specifically: - In uncommon cases, when the server is overloaded, the request might return before the default deadline is reached, or might return after zero seconds. - If the default deadline is reached, there is no guarantee that the operation is actually done when the method returns. Be prepared to retry if the operation is not `DONE`. + rpc Wait(WaitRegionOperationRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/regions/{region}/operations/{operation}/wait" + }; + option (google.api.method_signature) = "project,region,operation"; + } + +} + +// The RegionSslCertificates API. +service RegionSslCertificates { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified SslCertificate resource in the region. + rpc Delete(DeleteRegionSslCertificateRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/sslCertificates/{ssl_certificate}" + }; + option (google.api.method_signature) = "project,region,ssl_certificate"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified SslCertificate resource in the specified region. Get a list of available SSL certificates by making a list() request. + rpc Get(GetRegionSslCertificateRequest) returns (SslCertificate) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/sslCertificates/{ssl_certificate}" + }; + option (google.api.method_signature) = "project,region,ssl_certificate"; + } + + // Creates a SslCertificate resource in the specified project and region using the data included in the request + rpc Insert(InsertRegionSslCertificateRequest) returns (Operation) { + option (google.api.http) = { + body: "ssl_certificate_resource" + post: "/compute/v1/projects/{project}/regions/{region}/sslCertificates" + }; + option (google.api.method_signature) = "project,region,ssl_certificate_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves the list of SslCertificate resources available to the specified project in the specified region. + rpc List(ListRegionSslCertificatesRequest) returns (SslCertificateList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/sslCertificates" + }; + option (google.api.method_signature) = "project,region"; + } + +} + +// The RegionTargetHttpProxies API. +service RegionTargetHttpProxies { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified TargetHttpProxy resource. + rpc Delete(DeleteRegionTargetHttpProxyRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}" + }; + option (google.api.method_signature) = "project,region,target_http_proxy"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified TargetHttpProxy resource in the specified region. Gets a list of available target HTTP proxies by making a list() request. + rpc Get(GetRegionTargetHttpProxyRequest) returns (TargetHttpProxy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}" + }; + option (google.api.method_signature) = "project,region,target_http_proxy"; + } + + // Creates a TargetHttpProxy resource in the specified project and region using the data included in the request. + rpc Insert(InsertRegionTargetHttpProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_http_proxy_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetHttpProxies" + }; + option (google.api.method_signature) = "project,region,target_http_proxy_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves the list of TargetHttpProxy resources available to the specified project in the specified region. + rpc List(ListRegionTargetHttpProxiesRequest) returns (TargetHttpProxyList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/targetHttpProxies" + }; + option (google.api.method_signature) = "project,region"; + } + + // Changes the URL map for TargetHttpProxy. + rpc SetUrlMap(SetUrlMapRegionTargetHttpProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "url_map_reference_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetHttpProxies/{target_http_proxy}/setUrlMap" + }; + option (google.api.method_signature) = "project,region,target_http_proxy,url_map_reference_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The RegionTargetHttpsProxies API. +service RegionTargetHttpsProxies { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified TargetHttpsProxy resource. + rpc Delete(DeleteRegionTargetHttpsProxyRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}" + }; + option (google.api.method_signature) = "project,region,target_https_proxy"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified TargetHttpsProxy resource in the specified region. Gets a list of available target HTTP proxies by making a list() request. + rpc Get(GetRegionTargetHttpsProxyRequest) returns (TargetHttpsProxy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}" + }; + option (google.api.method_signature) = "project,region,target_https_proxy"; + } + + // Creates a TargetHttpsProxy resource in the specified project and region using the data included in the request. + rpc Insert(InsertRegionTargetHttpsProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_https_proxy_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies" + }; + option (google.api.method_signature) = "project,region,target_https_proxy_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves the list of TargetHttpsProxy resources available to the specified project in the specified region. + rpc List(ListRegionTargetHttpsProxiesRequest) returns (TargetHttpsProxyList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies" + }; + option (google.api.method_signature) = "project,region"; + } + + // Replaces SslCertificates for TargetHttpsProxy. + rpc SetSslCertificates(SetSslCertificatesRegionTargetHttpsProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "region_target_https_proxies_set_ssl_certificates_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}/setSslCertificates" + }; + option (google.api.method_signature) = "project,region,target_https_proxy,region_target_https_proxies_set_ssl_certificates_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Changes the URL map for TargetHttpsProxy. + rpc SetUrlMap(SetUrlMapRegionTargetHttpsProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "url_map_reference_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetHttpsProxies/{target_https_proxy}/setUrlMap" + }; + option (google.api.method_signature) = "project,region,target_https_proxy,url_map_reference_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The RegionUrlMaps API. +service RegionUrlMaps { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified UrlMap resource. + rpc Delete(DeleteRegionUrlMapRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/urlMaps/{url_map}" + }; + option (google.api.method_signature) = "project,region,url_map"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified UrlMap resource. Gets a list of available URL maps by making a list() request. + rpc Get(GetRegionUrlMapRequest) returns (UrlMap) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/urlMaps/{url_map}" + }; + option (google.api.method_signature) = "project,region,url_map"; + } + + // Creates a UrlMap resource in the specified project using the data included in the request. + rpc Insert(InsertRegionUrlMapRequest) returns (Operation) { + option (google.api.http) = { + body: "url_map_resource" + post: "/compute/v1/projects/{project}/regions/{region}/urlMaps" + }; + option (google.api.method_signature) = "project,region,url_map_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves the list of UrlMap resources available to the specified project in the specified region. + rpc List(ListRegionUrlMapsRequest) returns (UrlMapList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/urlMaps" + }; + option (google.api.method_signature) = "project,region"; + } + + // Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules. + rpc Patch(PatchRegionUrlMapRequest) returns (Operation) { + option (google.api.http) = { + body: "url_map_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/urlMaps/{url_map}" + }; + option (google.api.method_signature) = "project,region,url_map,url_map_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Updates the specified UrlMap resource with the data included in the request. + rpc Update(UpdateRegionUrlMapRequest) returns (Operation) { + option (google.api.http) = { + body: "url_map_resource" + put: "/compute/v1/projects/{project}/regions/{region}/urlMaps/{url_map}" + }; + option (google.api.method_signature) = "project,region,url_map,url_map_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap. + rpc Validate(ValidateRegionUrlMapRequest) returns (UrlMapsValidateResponse) { + option (google.api.http) = { + body: "region_url_maps_validate_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/urlMaps/{url_map}/validate" + }; + option (google.api.method_signature) = "project,region,url_map,region_url_maps_validate_request_resource"; + } + +} + +// The Regions API. +service Regions { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute.readonly," + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Returns the specified Region resource. Gets a list of available regions by making a list() request. + rpc Get(GetRegionRequest) returns (Region) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}" + }; + option (google.api.method_signature) = "project,region"; + } + + // Retrieves the list of region resources available to the specified project. + rpc List(ListRegionsRequest) returns (RegionList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions" + }; + option (google.api.method_signature) = "project"; + } + +} + +// The Reservations API. +service Reservations { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of reservations. + rpc AggregatedList(AggregatedListReservationsRequest) returns (ReservationAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/reservations" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified reservation. + rpc Delete(DeleteReservationRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}" + }; + option (google.api.method_signature) = "project,zone,reservation"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves information about the specified reservation. + rpc Get(GetReservationRequest) returns (Reservation) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}" + }; + option (google.api.method_signature) = "project,zone,reservation"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicyReservationRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,zone,resource"; + } + + // Creates a new reservation. For more information, read Reserving zonal resources. + rpc Insert(InsertReservationRequest) returns (Operation) { + option (google.api.http) = { + body: "reservation_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/reservations" + }; + option (google.api.method_signature) = "project,zone,reservation_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // A list of all the reservations that have been configured for the specified project in specified zone. + rpc List(ListReservationsRequest) returns (ReservationList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/reservations" + }; + option (google.api.method_signature) = "project,zone"; + } + + // Resizes the reservation (applicable to standalone reservations only). For more information, read Modifying reservations. + rpc Resize(ResizeReservationRequest) returns (Operation) { + option (google.api.http) = { + body: "reservations_resize_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/reservations/{reservation}/resize" + }; + option (google.api.method_signature) = "project,zone,reservation,reservations_resize_request_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicyReservationRequest) returns (Policy) { + option (google.api.http) = { + body: "zone_set_policy_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,zone,resource,zone_set_policy_request_resource"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsReservationRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/reservations/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,zone,resource,test_permissions_request_resource"; + } + +} + +// The ResourcePolicies API. +service ResourcePolicies { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of resource policies. + rpc AggregatedList(AggregatedListResourcePoliciesRequest) returns (ResourcePolicyAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/resourcePolicies" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified resource policy. + rpc Delete(DeleteResourcePolicyRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource_policy}" + }; + option (google.api.method_signature) = "project,region,resource_policy"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves all information of the specified resource policy. + rpc Get(GetResourcePolicyRequest) returns (ResourcePolicy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource_policy}" + }; + option (google.api.method_signature) = "project,region,resource_policy"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicyResourcePolicyRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,region,resource"; + } + + // Creates a new resource policy. + rpc Insert(InsertResourcePolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "resource_policy_resource" + post: "/compute/v1/projects/{project}/regions/{region}/resourcePolicies" + }; + option (google.api.method_signature) = "project,region,resource_policy_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // A list all the resource policies that have been configured for the specified project in specified region. + rpc List(ListResourcePoliciesRequest) returns (ResourcePolicyList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/resourcePolicies" + }; + option (google.api.method_signature) = "project,region"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicyResourcePolicyRequest) returns (Policy) { + option (google.api.http) = { + body: "region_set_policy_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,region,resource,region_set_policy_request_resource"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsResourcePolicyRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,region,resource,test_permissions_request_resource"; + } + +} + +// The Routers API. +service Routers { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of routers. + rpc AggregatedList(AggregatedListRoutersRequest) returns (RouterAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/routers" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified Router resource. + rpc Delete(DeleteRouterRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/routers/{router}" + }; + option (google.api.method_signature) = "project,region,router"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified Router resource. Gets a list of available routers by making a list() request. + rpc Get(GetRouterRequest) returns (Router) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/routers/{router}" + }; + option (google.api.method_signature) = "project,region,router"; + } + + // Retrieves runtime Nat mapping information of VM endpoints. + rpc GetNatMappingInfo(GetNatMappingInfoRoutersRequest) returns (VmEndpointNatMappingsList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/routers/{router}/getNatMappingInfo" + }; + option (google.api.method_signature) = "project,region,router"; + } + + // Retrieves runtime information of the specified router. + rpc GetRouterStatus(GetRouterStatusRouterRequest) returns (RouterStatusResponse) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/routers/{router}/getRouterStatus" + }; + option (google.api.method_signature) = "project,region,router"; + } + + // Creates a Router resource in the specified project and region using the data included in the request. + rpc Insert(InsertRouterRequest) returns (Operation) { + option (google.api.http) = { + body: "router_resource" + post: "/compute/v1/projects/{project}/regions/{region}/routers" + }; + option (google.api.method_signature) = "project,region,router_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of Router resources available to the specified project. + rpc List(ListRoutersRequest) returns (RouterList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/routers" + }; + option (google.api.method_signature) = "project,region"; + } + + // Patches the specified Router resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules. + rpc Patch(PatchRouterRequest) returns (Operation) { + option (google.api.http) = { + body: "router_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/routers/{router}" + }; + option (google.api.method_signature) = "project,region,router,router_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router. + rpc Preview(PreviewRouterRequest) returns (RoutersPreviewResponse) { + option (google.api.http) = { + body: "router_resource" + post: "/compute/v1/projects/{project}/regions/{region}/routers/{router}/preview" + }; + option (google.api.method_signature) = "project,region,router,router_resource"; + } + + // Updates the specified Router resource with the data included in the request. This method conforms to PUT semantics, which requests that the state of the target resource be created or replaced with the state defined by the representation enclosed in the request message payload. + rpc Update(UpdateRouterRequest) returns (Operation) { + option (google.api.http) = { + body: "router_resource" + put: "/compute/v1/projects/{project}/regions/{region}/routers/{router}" + }; + option (google.api.method_signature) = "project,region,router,router_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The Routes API. +service Routes { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified Route resource. + rpc Delete(DeleteRouteRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/routes/{route}" + }; + option (google.api.method_signature) = "project,route"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified Route resource. Gets a list of available routes by making a list() request. + rpc Get(GetRouteRequest) returns (Route) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/routes/{route}" + }; + option (google.api.method_signature) = "project,route"; + } + + // Creates a Route resource in the specified project using the data included in the request. + rpc Insert(InsertRouteRequest) returns (Operation) { + option (google.api.http) = { + body: "route_resource" + post: "/compute/v1/projects/{project}/global/routes" + }; + option (google.api.method_signature) = "project,route_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of Route resources available to the specified project. + rpc List(ListRoutesRequest) returns (RouteList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/routes" + }; + option (google.api.method_signature) = "project"; + } + +} + +// The SecurityPolicies API. +service SecurityPolicies { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Inserts a rule into a security policy. + rpc AddRule(AddRuleSecurityPolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "security_policy_rule_resource" + post: "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/addRule" + }; + option (google.api.method_signature) = "project,security_policy,security_policy_rule_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Deletes the specified policy. + rpc Delete(DeleteSecurityPolicyRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}" + }; + option (google.api.method_signature) = "project,security_policy"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // List all of the ordered rules present in a single specified policy. + rpc Get(GetSecurityPolicyRequest) returns (SecurityPolicy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}" + }; + option (google.api.method_signature) = "project,security_policy"; + } + + // Gets a rule at the specified priority. + rpc GetRule(GetRuleSecurityPolicyRequest) returns (SecurityPolicyRule) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/getRule" + }; + option (google.api.method_signature) = "project,security_policy"; + } + + // Creates a new policy in the specified project using the data included in the request. + rpc Insert(InsertSecurityPolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "security_policy_resource" + post: "/compute/v1/projects/{project}/global/securityPolicies" + }; + option (google.api.method_signature) = "project,security_policy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // List all the policies that have been configured for the specified project. + rpc List(ListSecurityPoliciesRequest) returns (SecurityPolicyList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/securityPolicies" + }; + option (google.api.method_signature) = "project"; + } + + // Gets the current list of preconfigured Web Application Firewall (WAF) expressions. + rpc ListPreconfiguredExpressionSets(ListPreconfiguredExpressionSetsSecurityPoliciesRequest) returns (SecurityPoliciesListPreconfiguredExpressionSetsResponse) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/securityPolicies/listPreconfiguredExpressionSets" + }; + option (google.api.method_signature) = "project"; + } + + // Patches the specified policy with the data included in the request. This cannot be used to be update the rules in the policy. Please use the per rule methods like addRule, patchRule, and removeRule instead. + rpc Patch(PatchSecurityPolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "security_policy_resource" + patch: "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}" + }; + option (google.api.method_signature) = "project,security_policy,security_policy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Patches a rule at the specified priority. + rpc PatchRule(PatchRuleSecurityPolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "security_policy_rule_resource" + post: "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/patchRule" + }; + option (google.api.method_signature) = "project,security_policy,security_policy_rule_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Deletes a rule at the specified priority. + rpc RemoveRule(RemoveRuleSecurityPolicyRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/global/securityPolicies/{security_policy}/removeRule" + }; + option (google.api.method_signature) = "project,security_policy"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The ServiceAttachments API. +service ServiceAttachments { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves the list of all ServiceAttachment resources, regional and global, available to the specified project. + rpc AggregatedList(AggregatedListServiceAttachmentsRequest) returns (ServiceAttachmentAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/serviceAttachments" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified ServiceAttachment in the given scope + rpc Delete(DeleteServiceAttachmentRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{service_attachment}" + }; + option (google.api.method_signature) = "project,region,service_attachment"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified ServiceAttachment resource in the given scope. + rpc Get(GetServiceAttachmentRequest) returns (ServiceAttachment) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{service_attachment}" + }; + option (google.api.method_signature) = "project,region,service_attachment"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicyServiceAttachmentRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,region,resource"; + } + + // Creates a ServiceAttachment in the specified project in the given scope using the parameters that are included in the request. + rpc Insert(InsertServiceAttachmentRequest) returns (Operation) { + option (google.api.http) = { + body: "service_attachment_resource" + post: "/compute/v1/projects/{project}/regions/{region}/serviceAttachments" + }; + option (google.api.method_signature) = "project,region,service_attachment_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Lists the ServiceAttachments for a project in the given scope. + rpc List(ListServiceAttachmentsRequest) returns (ServiceAttachmentList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/serviceAttachments" + }; + option (google.api.method_signature) = "project,region"; + } + + // Patches the specified ServiceAttachment resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules. + rpc Patch(PatchServiceAttachmentRequest) returns (Operation) { + option (google.api.http) = { + body: "service_attachment_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{service_attachment}" + }; + option (google.api.method_signature) = "project,region,service_attachment,service_attachment_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicyServiceAttachmentRequest) returns (Policy) { + option (google.api.http) = { + body: "region_set_policy_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,region,resource,region_set_policy_request_resource"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsServiceAttachmentRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/serviceAttachments/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,region,resource,test_permissions_request_resource"; + } + +} + +// The Snapshots API. +service Snapshots { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified Snapshot resource. Keep in mind that deleting a single snapshot might not necessarily delete all the data on that snapshot. If any data on the snapshot that is marked for deletion is needed for subsequent snapshots, the data will be moved to the next corresponding snapshot. For more information, see Deleting snapshots. + rpc Delete(DeleteSnapshotRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/snapshots/{snapshot}" + }; + option (google.api.method_signature) = "project,snapshot"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified Snapshot resource. Gets a list of available snapshots by making a list() request. + rpc Get(GetSnapshotRequest) returns (Snapshot) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/snapshots/{snapshot}" + }; + option (google.api.method_signature) = "project,snapshot"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicySnapshotRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/snapshots/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,resource"; + } + + // Retrieves the list of Snapshot resources contained within the specified project. + rpc List(ListSnapshotsRequest) returns (SnapshotList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/snapshots" + }; + option (google.api.method_signature) = "project"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicySnapshotRequest) returns (Policy) { + option (google.api.http) = { + body: "global_set_policy_request_resource" + post: "/compute/v1/projects/{project}/global/snapshots/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,resource,global_set_policy_request_resource"; + } + + // Sets the labels on a snapshot. To learn more about labels, read the Labeling Resources documentation. + rpc SetLabels(SetLabelsSnapshotRequest) returns (Operation) { + option (google.api.http) = { + body: "global_set_labels_request_resource" + post: "/compute/v1/projects/{project}/global/snapshots/{resource}/setLabels" + }; + option (google.api.method_signature) = "project,resource,global_set_labels_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsSnapshotRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/global/snapshots/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,resource,test_permissions_request_resource"; + } + +} + +// The SslCertificates API. +service SslCertificates { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves the list of all SslCertificate resources, regional and global, available to the specified project. + rpc AggregatedList(AggregatedListSslCertificatesRequest) returns (SslCertificateAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/sslCertificates" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified SslCertificate resource. + rpc Delete(DeleteSslCertificateRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/sslCertificates/{ssl_certificate}" + }; + option (google.api.method_signature) = "project,ssl_certificate"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified SslCertificate resource. Gets a list of available SSL certificates by making a list() request. + rpc Get(GetSslCertificateRequest) returns (SslCertificate) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/sslCertificates/{ssl_certificate}" + }; + option (google.api.method_signature) = "project,ssl_certificate"; + } + + // Creates a SslCertificate resource in the specified project using the data included in the request. + rpc Insert(InsertSslCertificateRequest) returns (Operation) { + option (google.api.http) = { + body: "ssl_certificate_resource" + post: "/compute/v1/projects/{project}/global/sslCertificates" + }; + option (google.api.method_signature) = "project,ssl_certificate_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of SslCertificate resources available to the specified project. + rpc List(ListSslCertificatesRequest) returns (SslCertificateList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/sslCertificates" + }; + option (google.api.method_signature) = "project"; + } + +} + +// The SslPolicies API. +service SslPolicies { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified SSL policy. The SSL policy resource can be deleted only if it is not in use by any TargetHttpsProxy or TargetSslProxy resources. + rpc Delete(DeleteSslPolicyRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}" + }; + option (google.api.method_signature) = "project,ssl_policy"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Lists all of the ordered rules present in a single specified policy. + rpc Get(GetSslPolicyRequest) returns (SslPolicy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}" + }; + option (google.api.method_signature) = "project,ssl_policy"; + } + + // Returns the specified SSL policy resource. Gets a list of available SSL policies by making a list() request. + rpc Insert(InsertSslPolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "ssl_policy_resource" + post: "/compute/v1/projects/{project}/global/sslPolicies" + }; + option (google.api.method_signature) = "project,ssl_policy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Lists all the SSL policies that have been configured for the specified project. + rpc List(ListSslPoliciesRequest) returns (SslPoliciesList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/sslPolicies" + }; + option (google.api.method_signature) = "project"; + } + + // Lists all features that can be specified in the SSL policy when using custom profile. + rpc ListAvailableFeatures(ListAvailableFeaturesSslPoliciesRequest) returns (SslPoliciesListAvailableFeaturesResponse) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/sslPolicies/listAvailableFeatures" + }; + option (google.api.method_signature) = "project"; + } + + // Patches the specified SSL policy with the data included in the request. + rpc Patch(PatchSslPolicyRequest) returns (Operation) { + option (google.api.http) = { + body: "ssl_policy_resource" + patch: "/compute/v1/projects/{project}/global/sslPolicies/{ssl_policy}" + }; + option (google.api.method_signature) = "project,ssl_policy,ssl_policy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The Subnetworks API. +service Subnetworks { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of subnetworks. + rpc AggregatedList(AggregatedListSubnetworksRequest) returns (SubnetworkAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/subnetworks" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified subnetwork. + rpc Delete(DeleteSubnetworkRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetwork}" + }; + option (google.api.method_signature) = "project,region,subnetwork"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Expands the IP CIDR range of the subnetwork to a specified value. + rpc ExpandIpCidrRange(ExpandIpCidrRangeSubnetworkRequest) returns (Operation) { + option (google.api.http) = { + body: "subnetworks_expand_ip_cidr_range_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange" + }; + option (google.api.method_signature) = "project,region,subnetwork,subnetworks_expand_ip_cidr_range_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified subnetwork. Gets a list of available subnetworks list() request. + rpc Get(GetSubnetworkRequest) returns (Subnetwork) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetwork}" + }; + option (google.api.method_signature) = "project,region,subnetwork"; + } + + // Gets the access control policy for a resource. May be empty if no such policy or resource exists. + rpc GetIamPolicy(GetIamPolicySubnetworkRequest) returns (Policy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/subnetworks/{resource}/getIamPolicy" + }; + option (google.api.method_signature) = "project,region,resource"; + } + + // Creates a subnetwork in the specified project using the data included in the request. + rpc Insert(InsertSubnetworkRequest) returns (Operation) { + option (google.api.http) = { + body: "subnetwork_resource" + post: "/compute/v1/projects/{project}/regions/{region}/subnetworks" + }; + option (google.api.method_signature) = "project,region,subnetwork_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of subnetworks available to the specified project. + rpc List(ListSubnetworksRequest) returns (SubnetworkList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/subnetworks" + }; + option (google.api.method_signature) = "project,region"; + } + + // Retrieves an aggregated list of all usable subnetworks in the project. + rpc ListUsable(ListUsableSubnetworksRequest) returns (UsableSubnetworksAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/subnetworks/listUsable" + }; + option (google.api.method_signature) = "project"; + } + + // Patches the specified subnetwork with the data included in the request. Only certain fields can be updated with a patch request as indicated in the field descriptions. You must specify the current fingerprint of the subnetwork resource being patched. + rpc Patch(PatchSubnetworkRequest) returns (Operation) { + option (google.api.http) = { + body: "subnetwork_resource" + patch: "/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetwork}" + }; + option (google.api.method_signature) = "project,region,subnetwork,subnetwork_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Sets the access control policy on the specified resource. Replaces any existing policy. + rpc SetIamPolicy(SetIamPolicySubnetworkRequest) returns (Policy) { + option (google.api.http) = { + body: "region_set_policy_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/subnetworks/{resource}/setIamPolicy" + }; + option (google.api.method_signature) = "project,region,resource,region_set_policy_request_resource"; + } + + // Set whether VMs in this subnet can access Google services without assigning external IP addresses through Private Google Access. + rpc SetPrivateIpGoogleAccess(SetPrivateIpGoogleAccessSubnetworkRequest) returns (Operation) { + option (google.api.http) = { + body: "subnetworks_set_private_ip_google_access_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess" + }; + option (google.api.method_signature) = "project,region,subnetwork,subnetworks_set_private_ip_google_access_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsSubnetworkRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/subnetworks/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,region,resource,test_permissions_request_resource"; + } + +} + +// The TargetGrpcProxies API. +service TargetGrpcProxies { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified TargetGrpcProxy in the given scope + rpc Delete(DeleteTargetGrpcProxyRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/targetGrpcProxies/{target_grpc_proxy}" + }; + option (google.api.method_signature) = "project,target_grpc_proxy"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified TargetGrpcProxy resource in the given scope. + rpc Get(GetTargetGrpcProxyRequest) returns (TargetGrpcProxy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/targetGrpcProxies/{target_grpc_proxy}" + }; + option (google.api.method_signature) = "project,target_grpc_proxy"; + } + + // Creates a TargetGrpcProxy in the specified project in the given scope using the parameters that are included in the request. + rpc Insert(InsertTargetGrpcProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_grpc_proxy_resource" + post: "/compute/v1/projects/{project}/global/targetGrpcProxies" + }; + option (google.api.method_signature) = "project,target_grpc_proxy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Lists the TargetGrpcProxies for a project in the given scope. + rpc List(ListTargetGrpcProxiesRequest) returns (TargetGrpcProxyList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/targetGrpcProxies" + }; + option (google.api.method_signature) = "project"; + } + + // Patches the specified TargetGrpcProxy resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules. + rpc Patch(PatchTargetGrpcProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_grpc_proxy_resource" + patch: "/compute/v1/projects/{project}/global/targetGrpcProxies/{target_grpc_proxy}" + }; + option (google.api.method_signature) = "project,target_grpc_proxy,target_grpc_proxy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The TargetHttpProxies API. +service TargetHttpProxies { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves the list of all TargetHttpProxy resources, regional and global, available to the specified project. + rpc AggregatedList(AggregatedListTargetHttpProxiesRequest) returns (TargetHttpProxyAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/targetHttpProxies" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified TargetHttpProxy resource. + rpc Delete(DeleteTargetHttpProxyRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/targetHttpProxies/{target_http_proxy}" + }; + option (google.api.method_signature) = "project,target_http_proxy"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified TargetHttpProxy resource. Gets a list of available target HTTP proxies by making a list() request. + rpc Get(GetTargetHttpProxyRequest) returns (TargetHttpProxy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/targetHttpProxies/{target_http_proxy}" + }; + option (google.api.method_signature) = "project,target_http_proxy"; + } + + // Creates a TargetHttpProxy resource in the specified project using the data included in the request. + rpc Insert(InsertTargetHttpProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_http_proxy_resource" + post: "/compute/v1/projects/{project}/global/targetHttpProxies" + }; + option (google.api.method_signature) = "project,target_http_proxy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of TargetHttpProxy resources available to the specified project. + rpc List(ListTargetHttpProxiesRequest) returns (TargetHttpProxyList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/targetHttpProxies" + }; + option (google.api.method_signature) = "project"; + } + + // Patches the specified TargetHttpProxy resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules. + rpc Patch(PatchTargetHttpProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_http_proxy_resource" + patch: "/compute/v1/projects/{project}/global/targetHttpProxies/{target_http_proxy}" + }; + option (google.api.method_signature) = "project,target_http_proxy,target_http_proxy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Changes the URL map for TargetHttpProxy. + rpc SetUrlMap(SetUrlMapTargetHttpProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "url_map_reference_resource" + post: "/compute/v1/projects/{project}/targetHttpProxies/{target_http_proxy}/setUrlMap" + }; + option (google.api.method_signature) = "project,target_http_proxy,url_map_reference_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The TargetHttpsProxies API. +service TargetHttpsProxies { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves the list of all TargetHttpsProxy resources, regional and global, available to the specified project. + rpc AggregatedList(AggregatedListTargetHttpsProxiesRequest) returns (TargetHttpsProxyAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/targetHttpsProxies" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified TargetHttpsProxy resource. + rpc Delete(DeleteTargetHttpsProxyRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/targetHttpsProxies/{target_https_proxy}" + }; + option (google.api.method_signature) = "project,target_https_proxy"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified TargetHttpsProxy resource. Gets a list of available target HTTPS proxies by making a list() request. + rpc Get(GetTargetHttpsProxyRequest) returns (TargetHttpsProxy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/targetHttpsProxies/{target_https_proxy}" + }; + option (google.api.method_signature) = "project,target_https_proxy"; + } + + // Creates a TargetHttpsProxy resource in the specified project using the data included in the request. + rpc Insert(InsertTargetHttpsProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_https_proxy_resource" + post: "/compute/v1/projects/{project}/global/targetHttpsProxies" + }; + option (google.api.method_signature) = "project,target_https_proxy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of TargetHttpsProxy resources available to the specified project. + rpc List(ListTargetHttpsProxiesRequest) returns (TargetHttpsProxyList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/targetHttpsProxies" + }; + option (google.api.method_signature) = "project"; + } + + // Patches the specified TargetHttpsProxy resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules. + rpc Patch(PatchTargetHttpsProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_https_proxy_resource" + patch: "/compute/v1/projects/{project}/global/targetHttpsProxies/{target_https_proxy}" + }; + option (google.api.method_signature) = "project,target_https_proxy,target_https_proxy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Sets the QUIC override policy for TargetHttpsProxy. + rpc SetQuicOverride(SetQuicOverrideTargetHttpsProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_https_proxies_set_quic_override_request_resource" + post: "/compute/v1/projects/{project}/global/targetHttpsProxies/{target_https_proxy}/setQuicOverride" + }; + option (google.api.method_signature) = "project,target_https_proxy,target_https_proxies_set_quic_override_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Replaces SslCertificates for TargetHttpsProxy. + rpc SetSslCertificates(SetSslCertificatesTargetHttpsProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_https_proxies_set_ssl_certificates_request_resource" + post: "/compute/v1/projects/{project}/targetHttpsProxies/{target_https_proxy}/setSslCertificates" + }; + option (google.api.method_signature) = "project,target_https_proxy,target_https_proxies_set_ssl_certificates_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Sets the SSL policy for TargetHttpsProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the HTTPS proxy load balancer. They do not affect the connection between the load balancer and the backends. + rpc SetSslPolicy(SetSslPolicyTargetHttpsProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "ssl_policy_reference_resource" + post: "/compute/v1/projects/{project}/global/targetHttpsProxies/{target_https_proxy}/setSslPolicy" + }; + option (google.api.method_signature) = "project,target_https_proxy,ssl_policy_reference_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Changes the URL map for TargetHttpsProxy. + rpc SetUrlMap(SetUrlMapTargetHttpsProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "url_map_reference_resource" + post: "/compute/v1/projects/{project}/targetHttpsProxies/{target_https_proxy}/setUrlMap" + }; + option (google.api.method_signature) = "project,target_https_proxy,url_map_reference_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The TargetInstances API. +service TargetInstances { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of target instances. + rpc AggregatedList(AggregatedListTargetInstancesRequest) returns (TargetInstanceAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/targetInstances" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified TargetInstance resource. + rpc Delete(DeleteTargetInstanceRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/zones/{zone}/targetInstances/{target_instance}" + }; + option (google.api.method_signature) = "project,zone,target_instance"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Returns the specified TargetInstance resource. Gets a list of available target instances by making a list() request. + rpc Get(GetTargetInstanceRequest) returns (TargetInstance) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/targetInstances/{target_instance}" + }; + option (google.api.method_signature) = "project,zone,target_instance"; + } + + // Creates a TargetInstance resource in the specified project and zone using the data included in the request. + rpc Insert(InsertTargetInstanceRequest) returns (Operation) { + option (google.api.http) = { + body: "target_instance_resource" + post: "/compute/v1/projects/{project}/zones/{zone}/targetInstances" + }; + option (google.api.method_signature) = "project,zone,target_instance_resource"; + option (google.cloud.operation_service) = "ZoneOperations"; + } + + // Retrieves a list of TargetInstance resources available to the specified project and zone. + rpc List(ListTargetInstancesRequest) returns (TargetInstanceList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/targetInstances" + }; + option (google.api.method_signature) = "project,zone"; + } + +} + +// The TargetPools API. +service TargetPools { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Adds health check URLs to a target pool. + rpc AddHealthCheck(AddHealthCheckTargetPoolRequest) returns (Operation) { + option (google.api.http) = { + body: "target_pools_add_health_check_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/addHealthCheck" + }; + option (google.api.method_signature) = "project,region,target_pool,target_pools_add_health_check_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Adds an instance to a target pool. + rpc AddInstance(AddInstanceTargetPoolRequest) returns (Operation) { + option (google.api.http) = { + body: "target_pools_add_instance_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/addInstance" + }; + option (google.api.method_signature) = "project,region,target_pool,target_pools_add_instance_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves an aggregated list of target pools. + rpc AggregatedList(AggregatedListTargetPoolsRequest) returns (TargetPoolAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/targetPools" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified target pool. + rpc Delete(DeleteTargetPoolRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}" + }; + option (google.api.method_signature) = "project,region,target_pool"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified target pool. Gets a list of available target pools by making a list() request. + rpc Get(GetTargetPoolRequest) returns (TargetPool) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}" + }; + option (google.api.method_signature) = "project,region,target_pool"; + } + + // Gets the most recent health check results for each IP for the instance that is referenced by the given target pool. + rpc GetHealth(GetHealthTargetPoolRequest) returns (TargetPoolInstanceHealth) { + option (google.api.http) = { + body: "instance_reference_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/getHealth" + }; + option (google.api.method_signature) = "project,region,target_pool,instance_reference_resource"; + } + + // Creates a target pool in the specified project and region using the data included in the request. + rpc Insert(InsertTargetPoolRequest) returns (Operation) { + option (google.api.http) = { + body: "target_pool_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetPools" + }; + option (google.api.method_signature) = "project,region,target_pool_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of target pools available to the specified project and region. + rpc List(ListTargetPoolsRequest) returns (TargetPoolList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/targetPools" + }; + option (google.api.method_signature) = "project,region"; + } + + // Removes health check URL from a target pool. + rpc RemoveHealthCheck(RemoveHealthCheckTargetPoolRequest) returns (Operation) { + option (google.api.http) = { + body: "target_pools_remove_health_check_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/removeHealthCheck" + }; + option (google.api.method_signature) = "project,region,target_pool,target_pools_remove_health_check_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Removes instance URL from a target pool. + rpc RemoveInstance(RemoveInstanceTargetPoolRequest) returns (Operation) { + option (google.api.http) = { + body: "target_pools_remove_instance_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/removeInstance" + }; + option (google.api.method_signature) = "project,region,target_pool,target_pools_remove_instance_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Changes a backup target pool's configurations. + rpc SetBackup(SetBackupTargetPoolRequest) returns (Operation) { + option (google.api.http) = { + body: "target_reference_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetPools/{target_pool}/setBackup" + }; + option (google.api.method_signature) = "project,region,target_pool,target_reference_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + +} + +// The TargetSslProxies API. +service TargetSslProxies { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified TargetSslProxy resource. + rpc Delete(DeleteTargetSslProxyRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}" + }; + option (google.api.method_signature) = "project,target_ssl_proxy"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified TargetSslProxy resource. Gets a list of available target SSL proxies by making a list() request. + rpc Get(GetTargetSslProxyRequest) returns (TargetSslProxy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}" + }; + option (google.api.method_signature) = "project,target_ssl_proxy"; + } + + // Creates a TargetSslProxy resource in the specified project using the data included in the request. + rpc Insert(InsertTargetSslProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_ssl_proxy_resource" + post: "/compute/v1/projects/{project}/global/targetSslProxies" + }; + option (google.api.method_signature) = "project,target_ssl_proxy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of TargetSslProxy resources available to the specified project. + rpc List(ListTargetSslProxiesRequest) returns (TargetSslProxyList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/targetSslProxies" + }; + option (google.api.method_signature) = "project"; + } + + // Changes the BackendService for TargetSslProxy. + rpc SetBackendService(SetBackendServiceTargetSslProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_ssl_proxies_set_backend_service_request_resource" + post: "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}/setBackendService" + }; + option (google.api.method_signature) = "project,target_ssl_proxy,target_ssl_proxies_set_backend_service_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Changes the ProxyHeaderType for TargetSslProxy. + rpc SetProxyHeader(SetProxyHeaderTargetSslProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_ssl_proxies_set_proxy_header_request_resource" + post: "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}/setProxyHeader" + }; + option (google.api.method_signature) = "project,target_ssl_proxy,target_ssl_proxies_set_proxy_header_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Changes SslCertificates for TargetSslProxy. + rpc SetSslCertificates(SetSslCertificatesTargetSslProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_ssl_proxies_set_ssl_certificates_request_resource" + post: "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}/setSslCertificates" + }; + option (google.api.method_signature) = "project,target_ssl_proxy,target_ssl_proxies_set_ssl_certificates_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Sets the SSL policy for TargetSslProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the SSL proxy load balancer. They do not affect the connection between the load balancer and the backends. + rpc SetSslPolicy(SetSslPolicyTargetSslProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "ssl_policy_reference_resource" + post: "/compute/v1/projects/{project}/global/targetSslProxies/{target_ssl_proxy}/setSslPolicy" + }; + option (google.api.method_signature) = "project,target_ssl_proxy,ssl_policy_reference_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The TargetTcpProxies API. +service TargetTcpProxies { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified TargetTcpProxy resource. + rpc Delete(DeleteTargetTcpProxyRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}" + }; + option (google.api.method_signature) = "project,target_tcp_proxy"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified TargetTcpProxy resource. Gets a list of available target TCP proxies by making a list() request. + rpc Get(GetTargetTcpProxyRequest) returns (TargetTcpProxy) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}" + }; + option (google.api.method_signature) = "project,target_tcp_proxy"; + } + + // Creates a TargetTcpProxy resource in the specified project using the data included in the request. + rpc Insert(InsertTargetTcpProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_tcp_proxy_resource" + post: "/compute/v1/projects/{project}/global/targetTcpProxies" + }; + option (google.api.method_signature) = "project,target_tcp_proxy_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of TargetTcpProxy resources available to the specified project. + rpc List(ListTargetTcpProxiesRequest) returns (TargetTcpProxyList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/targetTcpProxies" + }; + option (google.api.method_signature) = "project"; + } + + // Changes the BackendService for TargetTcpProxy. + rpc SetBackendService(SetBackendServiceTargetTcpProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_tcp_proxies_set_backend_service_request_resource" + post: "/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}/setBackendService" + }; + option (google.api.method_signature) = "project,target_tcp_proxy,target_tcp_proxies_set_backend_service_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Changes the ProxyHeaderType for TargetTcpProxy. + rpc SetProxyHeader(SetProxyHeaderTargetTcpProxyRequest) returns (Operation) { + option (google.api.http) = { + body: "target_tcp_proxies_set_proxy_header_request_resource" + post: "/compute/v1/projects/{project}/global/targetTcpProxies/{target_tcp_proxy}/setProxyHeader" + }; + option (google.api.method_signature) = "project,target_tcp_proxy,target_tcp_proxies_set_proxy_header_request_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + +} + +// The TargetVpnGateways API. +service TargetVpnGateways { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of target VPN gateways. + rpc AggregatedList(AggregatedListTargetVpnGatewaysRequest) returns (TargetVpnGatewayAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/targetVpnGateways" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified target VPN gateway. + rpc Delete(DeleteTargetVpnGatewayRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/targetVpnGateways/{target_vpn_gateway}" + }; + option (google.api.method_signature) = "project,region,target_vpn_gateway"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified target VPN gateway. Gets a list of available target VPN gateways by making a list() request. + rpc Get(GetTargetVpnGatewayRequest) returns (TargetVpnGateway) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/targetVpnGateways/{target_vpn_gateway}" + }; + option (google.api.method_signature) = "project,region,target_vpn_gateway"; + } + + // Creates a target VPN gateway in the specified project and region using the data included in the request. + rpc Insert(InsertTargetVpnGatewayRequest) returns (Operation) { + option (google.api.http) = { + body: "target_vpn_gateway_resource" + post: "/compute/v1/projects/{project}/regions/{region}/targetVpnGateways" + }; + option (google.api.method_signature) = "project,region,target_vpn_gateway_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of target VPN gateways available to the specified project and region. + rpc List(ListTargetVpnGatewaysRequest) returns (TargetVpnGatewayList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/targetVpnGateways" + }; + option (google.api.method_signature) = "project,region"; + } + +} + +// The UrlMaps API. +service UrlMaps { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves the list of all UrlMap resources, regional and global, available to the specified project. + rpc AggregatedList(AggregatedListUrlMapsRequest) returns (UrlMapsAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/urlMaps" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified UrlMap resource. + rpc Delete(DeleteUrlMapRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/global/urlMaps/{url_map}" + }; + option (google.api.method_signature) = "project,url_map"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Returns the specified UrlMap resource. Gets a list of available URL maps by making a list() request. + rpc Get(GetUrlMapRequest) returns (UrlMap) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/urlMaps/{url_map}" + }; + option (google.api.method_signature) = "project,url_map"; + } + + // Creates a UrlMap resource in the specified project using the data included in the request. + rpc Insert(InsertUrlMapRequest) returns (Operation) { + option (google.api.http) = { + body: "url_map_resource" + post: "/compute/v1/projects/{project}/global/urlMaps" + }; + option (google.api.method_signature) = "project,url_map_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Initiates a cache invalidation operation, invalidating the specified path, scoped to the specified UrlMap. For more information, see [Invalidating cached content](/cdn/docs/invalidating-cached-content). + rpc InvalidateCache(InvalidateCacheUrlMapRequest) returns (Operation) { + option (google.api.http) = { + body: "cache_invalidation_rule_resource" + post: "/compute/v1/projects/{project}/global/urlMaps/{url_map}/invalidateCache" + }; + option (google.api.method_signature) = "project,url_map,cache_invalidation_rule_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Retrieves the list of UrlMap resources available to the specified project. + rpc List(ListUrlMapsRequest) returns (UrlMapList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/global/urlMaps" + }; + option (google.api.method_signature) = "project"; + } + + // Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. + rpc Patch(PatchUrlMapRequest) returns (Operation) { + option (google.api.http) = { + body: "url_map_resource" + patch: "/compute/v1/projects/{project}/global/urlMaps/{url_map}" + }; + option (google.api.method_signature) = "project,url_map,url_map_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Updates the specified UrlMap resource with the data included in the request. + rpc Update(UpdateUrlMapRequest) returns (Operation) { + option (google.api.http) = { + body: "url_map_resource" + put: "/compute/v1/projects/{project}/global/urlMaps/{url_map}" + }; + option (google.api.method_signature) = "project,url_map,url_map_resource"; + option (google.cloud.operation_service) = "GlobalOperations"; + } + + // Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap. + rpc Validate(ValidateUrlMapRequest) returns (UrlMapsValidateResponse) { + option (google.api.http) = { + body: "url_maps_validate_request_resource" + post: "/compute/v1/projects/{project}/global/urlMaps/{url_map}/validate" + }; + option (google.api.method_signature) = "project,url_map,url_maps_validate_request_resource"; + } + +} + +// The VpnGateways API. +service VpnGateways { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of VPN gateways. + rpc AggregatedList(AggregatedListVpnGatewaysRequest) returns (VpnGatewayAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/vpnGateways" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified VPN gateway. + rpc Delete(DeleteVpnGatewayRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}" + }; + option (google.api.method_signature) = "project,region,vpn_gateway"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified VPN gateway. Gets a list of available VPN gateways by making a list() request. + rpc Get(GetVpnGatewayRequest) returns (VpnGateway) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}" + }; + option (google.api.method_signature) = "project,region,vpn_gateway"; + } + + // Returns the status for the specified VPN gateway. + rpc GetStatus(GetStatusVpnGatewayRequest) returns (VpnGatewaysGetStatusResponse) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/vpnGateways/{vpn_gateway}/getStatus" + }; + option (google.api.method_signature) = "project,region,vpn_gateway"; + } + + // Creates a VPN gateway in the specified project and region using the data included in the request. + rpc Insert(InsertVpnGatewayRequest) returns (Operation) { + option (google.api.http) = { + body: "vpn_gateway_resource" + post: "/compute/v1/projects/{project}/regions/{region}/vpnGateways" + }; + option (google.api.method_signature) = "project,region,vpn_gateway_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of VPN gateways available to the specified project and region. + rpc List(ListVpnGatewaysRequest) returns (VpnGatewayList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/vpnGateways" + }; + option (google.api.method_signature) = "project,region"; + } + + // Sets the labels on a VpnGateway. To learn more about labels, read the Labeling Resources documentation. + rpc SetLabels(SetLabelsVpnGatewayRequest) returns (Operation) { + option (google.api.http) = { + body: "region_set_labels_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels" + }; + option (google.api.method_signature) = "project,region,resource,region_set_labels_request_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns permissions that a caller has on the specified resource. + rpc TestIamPermissions(TestIamPermissionsVpnGatewayRequest) returns (TestPermissionsResponse) { + option (google.api.http) = { + body: "test_permissions_request_resource" + post: "/compute/v1/projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions" + }; + option (google.api.method_signature) = "project,region,resource,test_permissions_request_resource"; + } + +} + +// The VpnTunnels API. +service VpnTunnels { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of VPN tunnels. + rpc AggregatedList(AggregatedListVpnTunnelsRequest) returns (VpnTunnelAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/vpnTunnels" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified VpnTunnel resource. + rpc Delete(DeleteVpnTunnelRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/vpnTunnels/{vpn_tunnel}" + }; + option (google.api.method_signature) = "project,region,vpn_tunnel"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Returns the specified VpnTunnel resource. Gets a list of available VPN tunnels by making a list() request. + rpc Get(GetVpnTunnelRequest) returns (VpnTunnel) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/vpnTunnels/{vpn_tunnel}" + }; + option (google.api.method_signature) = "project,region,vpn_tunnel"; + } + + // Creates a VpnTunnel resource in the specified project and region using the data included in the request. + rpc Insert(InsertVpnTunnelRequest) returns (Operation) { + option (google.api.http) = { + body: "vpn_tunnel_resource" + post: "/compute/v1/projects/{project}/regions/{region}/vpnTunnels" + }; + option (google.api.method_signature) = "project,region,vpn_tunnel_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of VpnTunnel resources contained in the specified project and region. + rpc List(ListVpnTunnelsRequest) returns (VpnTunnelList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/vpnTunnels" + }; + option (google.api.method_signature) = "project,region"; + } + +} + +// The ZoneOperations API. +service ZoneOperations { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Deletes the specified zone-specific Operations resource. + rpc Delete(DeleteZoneOperationRequest) returns (DeleteZoneOperationResponse) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/zones/{zone}/operations/{operation}" + }; + option (google.api.method_signature) = "project,zone,operation"; + } + + // Retrieves the specified zone-specific Operations resource. + rpc Get(GetZoneOperationRequest) returns (Operation) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/operations/{operation}" + }; + option (google.api.method_signature) = "project,zone,operation"; + option (google.cloud.operation_polling_method) = true; + } + + // Retrieves a list of Operation resources contained within the specified zone. + rpc List(ListZoneOperationsRequest) returns (OperationList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}/operations" + }; + option (google.api.method_signature) = "project,zone"; + } + + // Waits for the specified Operation resource to return as `DONE` or for the request to approach the 2 minute deadline, and retrieves the specified Operation resource. This method waits for no more than the 2 minutes and then returns the current state of the operation, which might be `DONE` or still in progress. This method is called on a best-effort basis. Specifically: - In uncommon cases, when the server is overloaded, the request might return before the default deadline is reached, or might return after zero seconds. - If the default deadline is reached, there is no guarantee that the operation is actually done when the method returns. Be prepared to retry if the operation is not `DONE`. + rpc Wait(WaitZoneOperationRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/{project}/zones/{zone}/operations/{operation}/wait" + }; + option (google.api.method_signature) = "project,zone,operation"; + } + +} + +// The Zones API. +service Zones { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute.readonly," + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Returns the specified Zone resource. Gets a list of available zones by making a list() request. + rpc Get(GetZoneRequest) returns (Zone) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones/{zone}" + }; + option (google.api.method_signature) = "project,zone"; + } + + // Retrieves the list of Zone resources available to the specified project. + rpc List(ListZonesRequest) returns (ZoneList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/zones" + }; + option (google.api.method_signature) = "project"; + } + +} + diff --git a/google/cloud/compute/v1/compute.v1.json b/google/cloud/compute/v1/compute.v1.json new file mode 100644 index 000000000..8ca2c2b54 --- /dev/null +++ b/google/cloud/compute/v1/compute.v1.json @@ -0,0 +1,59972 @@ +{ + "version": "v1", + "ownerName": "Google", + "description": "Creates and runs virtual machines on Google Cloud Platform. ", + "revision": "20211004", + "resources": { + "networks": { + "methods": { + "updatePeering": { + "request": { + "$ref": "NetworksUpdatePeeringRequest" + }, + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/networks/{network}/updatePeering", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request." + }, + "network": { + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the network resource which the updated peering is belonging to." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "description": "Updates the specified network peering with the data included in the request. You can only modify the NetworkPeering.export_custom_routes field and the NetworkPeering.import_custom_routes field.", + "httpMethod": "PATCH", + "parameterOrder": [ + "project", + "network" + ], + "id": "compute.networks.updatePeering", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/networks/{network}/updatePeering" + }, + "switchToCustomMode": { + "parameters": { + "project": { + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "network": { + "required": true, + "description": "Name of the network to be updated.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + } + }, + "parameterOrder": [ + "project", + "network" + ], + "id": "compute.networks.switchToCustomMode", + "path": "projects/{project}/global/networks/{network}/switchToCustomMode", + "flatPath": "projects/{project}/global/networks/{network}/switchToCustomMode", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Switches the network mode from auto subnet mode to custom subnet mode.", + "httpMethod": "POST", + "response": { + "$ref": "Operation" + } + }, + "patch": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/networks/{network}", + "id": "compute.networks.patch", + "httpMethod": "PATCH", + "description": "Patches the specified network with the data included in the request. Only the following fields can be modified: routingConfig.routingMode.", + "path": "projects/{project}/global/networks/{network}", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "network" + ], + "request": { + "$ref": "Network" + }, + "parameters": { + "network": { + "type": "string", + "required": true, + "description": "Name of the network to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "description": "Project ID for this request.", + "type": "string" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + } + }, + "delete": { + "id": "compute.networks.delete", + "httpMethod": "DELETE", + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "network": { + "type": "string", + "required": true, + "description": "Name of the network to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "type": "string" + } + }, + "flatPath": "projects/{project}/global/networks/{network}", + "parameterOrder": [ + "project", + "network" + ], + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/networks/{network}", + "description": "Deletes the specified network.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "removePeering": { + "parameterOrder": [ + "project", + "network" + ], + "request": { + "$ref": "NetworksRemovePeeringRequest" + }, + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "flatPath": "projects/{project}/global/networks/{network}/removePeering", + "id": "compute.networks.removePeering", + "description": "Removes a peering from the specified network.", + "path": "projects/{project}/global/networks/{network}/removePeering", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "network": { + "required": true, + "description": "Name of the network resource to remove peering from.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request." + } + } + }, + "list": { + "path": "projects/{project}/global/networks", + "httpMethod": "GET", + "flatPath": "projects/{project}/global/networks", + "id": "compute.networks.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "type": "integer", + "minimum": "0" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + } + }, + "response": { + "$ref": "NetworkList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves the list of networks available to the specified project." + }, + "insert": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "Network" + }, + "httpMethod": "POST", + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "location": "path" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "flatPath": "projects/{project}/global/networks", + "id": "compute.networks.insert", + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/global/networks", + "description": "Creates a network in the specified project using the data included in the request." + }, + "listPeeringRoutes": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Lists the peering routes exchanged over peering connection.", + "path": "projects/{project}/global/networks/{network}/listPeeringRoutes", + "parameters": { + "peeringName": { + "type": "string", + "description": "The response will show routes exchanged over the given peering connection.", + "location": "query" + }, + "maxResults": { + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "type": "integer", + "location": "query", + "default": "500" + }, + "region": { + "type": "string", + "location": "query", + "description": "The region of the request. The response will include all subnet routes, static routes and dynamic routes in the region." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "network": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "description": "Name of the network for this request." + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "direction": { + "location": "query", + "type": "string", + "enum": [ + "INCOMING", + "OUTGOING" + ], + "description": "The direction of the exchanged routes.", + "enumDescriptions": [ + "For routes exported from peer network.", + "For routes exported from local network." + ] + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + } + }, + "flatPath": "projects/{project}/global/networks/{network}/listPeeringRoutes", + "id": "compute.networks.listPeeringRoutes", + "parameterOrder": [ + "project", + "network" + ], + "httpMethod": "GET", + "response": { + "$ref": "ExchangedPeeringRoutesList" + } + }, + "addPeering": { + "response": { + "$ref": "Operation" + }, + "id": "compute.networks.addPeering", + "path": "projects/{project}/global/networks/{network}/addPeering", + "request": { + "$ref": "NetworksAddPeeringRequest" + }, + "flatPath": "projects/{project}/global/networks/{network}/addPeering", + "parameterOrder": [ + "project", + "network" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "description": "Adds a peering to the specified network.", + "parameters": { + "network": { + "type": "string", + "description": "Name of the network resource to add peering to.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "required": true + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + } + }, + "get": { + "id": "compute.networks.get", + "flatPath": "projects/{project}/global/networks/{network}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "network" + ], + "httpMethod": "GET", + "response": { + "$ref": "Network" + }, + "parameters": { + "network": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the network to return.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path" + } + }, + "path": "projects/{project}/global/networks/{network}", + "description": "Returns the specified network. Gets a list of available networks by making a list() request." + }, + "getEffectiveFirewalls": { + "flatPath": "projects/{project}/global/networks/{network}/getEffectiveFirewalls", + "id": "compute.networks.getEffectiveFirewalls", + "response": { + "$ref": "NetworksGetEffectiveFirewallsResponse" + }, + "parameters": { + "network": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the network for this request.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "required": true + } + }, + "path": "projects/{project}/global/networks/{network}/getEffectiveFirewalls", + "description": "Returns the effective firewalls on a given network.", + "parameterOrder": [ + "project", + "network" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "nodeTemplates": { + "methods": { + "delete": { + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}", + "httpMethod": "DELETE", + "id": "compute.nodeTemplates.delete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region", + "nodeTemplate" + ], + "parameters": { + "region": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "description": "The name of the region for this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "nodeTemplate": { + "description": "Name of the NodeTemplate resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path", + "required": true + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "required": true + } + }, + "path": "projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}", + "description": "Deletes the specified NodeTemplate resource." + }, + "aggregatedList": { + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "NodeTemplateAggregatedList" + }, + "parameters": { + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query", + "type": "boolean" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "project": { + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500", + "format": "uint32", + "location": "query" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + } + }, + "flatPath": "projects/{project}/aggregated/nodeTemplates", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/aggregated/nodeTemplates", + "description": "Retrieves an aggregated list of node templates.", + "id": "compute.nodeTemplates.aggregatedList" + }, + "testIamPermissions": { + "response": { + "$ref": "TestPermissionsResponse" + }, + "httpMethod": "POST", + "request": { + "$ref": "TestPermissionsRequest" + }, + "parameters": { + "resource": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name or id of the resource for this request.", + "type": "string", + "required": true + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the region for this request.", + "type": "string", + "location": "path", + "required": true + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Project ID for this request." + } + }, + "id": "compute.nodeTemplates.testIamPermissions", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "flatPath": "projects/{project}/regions/{region}/nodeTemplates/{resource}/testIamPermissions", + "description": "Returns permissions that a caller has on the specified resource." + }, + "list": { + "response": { + "$ref": "NodeTemplateList" + }, + "parameterOrder": [ + "project", + "region" + ], + "flatPath": "projects/{project}/regions/{region}/nodeTemplates", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "description": "Retrieves a list of node templates available to the specified project.", + "path": "projects/{project}/regions/{region}/nodeTemplates", + "id": "compute.nodeTemplates.list", + "parameters": { + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request." + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "required": true, + "description": "The name of the region for this request." + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "maxResults": { + "location": "query", + "type": "integer", + "format": "uint32", + "minimum": "0", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + } + } + }, + "setIamPolicy": { + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "description": "Project ID for this request." + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "description": "The name of the region for this request.", + "type": "string", + "required": true + }, + "resource": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true, + "description": "Name or id of the resource for this request." + } + }, + "request": { + "$ref": "RegionSetPolicyRequest" + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "httpMethod": "POST", + "id": "compute.nodeTemplates.setIamPolicy", + "path": "projects/{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/nodeTemplates/{resource}/setIamPolicy", + "response": { + "$ref": "Policy" + }, + "description": "Sets the access control policy on the specified resource. Replaces any existing policy." + }, + "getIamPolicy": { + "parameters": { + "region": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the region for this request.", + "location": "path", + "required": true + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request.", + "required": true, + "location": "path" + }, + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "location": "query", + "type": "integer" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + } + }, + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "Policy" + }, + "path": "projects/{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy", + "id": "compute.nodeTemplates.getIamPolicy", + "flatPath": "projects/{project}/regions/{region}/nodeTemplates/{resource}/getIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ] + }, + "insert": { + "id": "compute.nodeTemplates.insert", + "response": { + "$ref": "Operation" + }, + "description": "Creates a NodeTemplate resource in the specified project using the data included in the request.", + "path": "projects/{project}/regions/{region}/nodeTemplates", + "parameterOrder": [ + "project", + "region" + ], + "flatPath": "projects/{project}/regions/{region}/nodeTemplates", + "parameters": { + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "description": "The name of the region for this request." + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string" + } + }, + "request": { + "$ref": "NodeTemplate" + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified node template. Gets a list of available node templates by making a list() request.", + "response": { + "$ref": "NodeTemplate" + }, + "path": "projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}", + "id": "compute.nodeTemplates.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/regions/{region}/nodeTemplates/{nodeTemplate}", + "parameters": { + "nodeTemplate": { + "required": true, + "description": "Name of the node template to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path" + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the region for this request.", + "type": "string", + "location": "path", + "required": true + } + }, + "httpMethod": "GET", + "parameterOrder": [ + "project", + "region", + "nodeTemplate" + ] + } + } + }, + "resourcePolicies": { + "methods": { + "setIamPolicy": { + "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy", + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "parameters": { + "resource": { + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "type": "string" + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "description": "The name of the region for this request.", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "id": "compute.resourcePolicies.setIamPolicy", + "httpMethod": "POST", + "path": "projects/{project}/regions/{region}/resourcePolicies/{resource}/setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "request": { + "$ref": "RegionSetPolicyRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "parameterOrder": [ + "project", + "region", + "resource" + ], + "description": "Returns permissions that a caller has on the specified resource.", + "httpMethod": "POST", + "path": "projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "id": "compute.resourcePolicies.testIamPermissions", + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resource}/testIamPermissions", + "parameters": { + "region": { + "location": "path", + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "resource": { + "required": true, + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path" + } + } + }, + "getIamPolicy": { + "path": "projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "response": { + "$ref": "Policy" + }, + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "optionsRequestedPolicyVersion": { + "location": "query", + "description": "Requested IAM Policy version.", + "type": "integer", + "format": "int32" + }, + "resource": { + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name or id of the resource for this request." + }, + "region": { + "location": "path", + "description": "The name of the region for this request.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "id": "compute.resourcePolicies.getIamPolicy", + "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resource}/getIamPolicy", + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists." + }, + "insert": { + "httpMethod": "POST", + "parameters": { + "region": { + "required": true, + "type": "string", + "location": "path", + "description": "Name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "flatPath": "projects/{project}/regions/{region}/resourcePolicies", + "request": { + "$ref": "ResourcePolicy" + }, + "description": "Creates a new resource policy.", + "response": { + "$ref": "Operation" + }, + "id": "compute.resourcePolicies.insert", + "path": "projects/{project}/regions/{region}/resourcePolicies", + "parameterOrder": [ + "project", + "region" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "parameterOrder": [ + "project", + "region", + "resourcePolicy" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", + "description": "Retrieves all information of the specified resource policy.", + "id": "compute.resourcePolicies.get", + "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", + "response": { + "$ref": "ResourcePolicy" + }, + "httpMethod": "GET", + "parameters": { + "resourcePolicy": { + "type": "string", + "required": true, + "description": "Name of the resource policy to retrieve.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "location": "path" + }, + "region": { + "type": "string", + "required": true, + "description": "Name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + } + }, + "delete": { + "id": "compute.resourcePolicies.delete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Deletes the specified resource policy.", + "flatPath": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", + "parameterOrder": [ + "project", + "region", + "resourcePolicy" + ], + "httpMethod": "DELETE", + "path": "projects/{project}/regions/{region}/resourcePolicies/{resourcePolicy}", + "response": { + "$ref": "Operation" + }, + "parameters": { + "region": { + "description": "Name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path", + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string" + }, + "resourcePolicy": { + "description": "Name of the resource policy to delete.", + "required": true, + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + } + }, + "list": { + "flatPath": "projects/{project}/regions/{region}/resourcePolicies", + "httpMethod": "GET", + "path": "projects/{project}/regions/{region}/resourcePolicies", + "description": "A list all the resource policies that have been configured for the specified project in specified region.", + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "ResourcePolicyList" + }, + "id": "compute.resourcePolicies.list", + "parameters": { + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "location": "query", + "default": "500", + "type": "integer", + "format": "uint32", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "region": { + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request.", + "location": "path" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "aggregatedList": { + "path": "projects/{project}/aggregated/resourcePolicies", + "response": { + "$ref": "ResourcePolicyAggregatedList" + }, + "description": "Retrieves an aggregated list of resource policies.", + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "includeAllScopes": { + "location": "query", + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "maxResults": { + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "minimum": "0", + "type": "integer", + "default": "500" + } + }, + "flatPath": "projects/{project}/aggregated/resourcePolicies", + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.resourcePolicies.aggregatedList", + "httpMethod": "GET" + } + } + }, + "healthChecks": { + "methods": { + "aggregatedList": { + "parameters": { + "maxResults": { + "minimum": "0", + "format": "uint32", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "type": "integer" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "project": { + "description": "Name of the project scoping this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "includeAllScopes": { + "type": "boolean", + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + } + }, + "flatPath": "projects/{project}/aggregated/healthChecks", + "httpMethod": "GET", + "parameterOrder": [ + "project" + ], + "description": "Retrieves the list of all HealthCheck resources, regional and global, available to the specified project.", + "id": "compute.healthChecks.aggregatedList", + "path": "projects/{project}/aggregated/healthChecks", + "response": { + "$ref": "HealthChecksAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.healthChecks.insert", + "parameterOrder": [ + "project" + ], + "httpMethod": "POST", + "request": { + "$ref": "HealthCheck" + }, + "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", + "flatPath": "projects/{project}/global/healthChecks", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/healthChecks", + "parameters": { + "project": { + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + } + }, + "get": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "healthCheck" + ], + "path": "projects/{project}/global/healthChecks/{healthCheck}", + "description": "Returns the specified HealthCheck resource. Gets a list of available health checks by making a list() request.", + "flatPath": "projects/{project}/global/healthChecks/{healthCheck}", + "response": { + "$ref": "HealthCheck" + }, + "id": "compute.healthChecks.get", + "httpMethod": "GET", + "parameters": { + "healthCheck": { + "required": true, + "location": "path", + "description": "Name of the HealthCheck resource to return.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true + } + } + }, + "list": { + "id": "compute.healthChecks.list", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/global/healthChecks", + "parameters": { + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "maxResults": { + "location": "query", + "type": "integer", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path" + } + }, + "httpMethod": "GET", + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "HealthCheckList" + }, + "path": "projects/{project}/global/healthChecks", + "description": "Retrieves the list of HealthCheck resources available to the specified project." + }, + "patch": { + "parameters": { + "healthCheck": { + "location": "path", + "description": "Name of the HealthCheck resource to patch.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + } + }, + "path": "projects/{project}/global/healthChecks/{healthCheck}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/healthChecks/{healthCheck}", + "response": { + "$ref": "Operation" + }, + "id": "compute.healthChecks.patch", + "request": { + "$ref": "HealthCheck" + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "httpMethod": "PATCH", + "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules." + }, + "update": { + "request": { + "$ref": "HealthCheck" + }, + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request." + }, + "healthCheck": { + "required": true, + "type": "string", + "location": "path", + "description": "Name of the HealthCheck resource to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "PUT", + "path": "projects/{project}/global/healthChecks/{healthCheck}", + "id": "compute.healthChecks.update", + "flatPath": "projects/{project}/global/healthChecks/{healthCheck}" + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/healthChecks/{healthCheck}", + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "required": true + }, + "healthCheck": { + "description": "Name of the HealthCheck resource to delete.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "description": "Deletes the specified HealthCheck resource.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/healthChecks/{healthCheck}", + "httpMethod": "DELETE", + "id": "compute.healthChecks.delete", + "parameterOrder": [ + "project", + "healthCheck" + ] + } + } + }, + "regionNetworkEndpointGroups": { + "methods": { + "delete": { + "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", + "parameters": { + "region": { + "type": "string", + "required": true, + "description": "The name of the region where the network endpoint group is located. It should comply with RFC1035.", + "location": "path" + }, + "networkEndpointGroup": { + "required": true, + "description": "The name of the network endpoint group to delete. It should comply with RFC1035.", + "location": "path", + "type": "string" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "project": { + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", + "httpMethod": "DELETE", + "description": "Deletes the specified network endpoint group. Note that the NEG cannot be deleted if it is configured as a backend of a backend service.", + "response": { + "$ref": "Operation" + }, + "id": "compute.regionNetworkEndpointGroups.delete", + "parameterOrder": [ + "project", + "region", + "networkEndpointGroup" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "description": "Retrieves the list of regional network endpoint groups available to the specified project in the given region.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "NetworkEndpointGroupList" + }, + "parameters": { + "project": { + "location": "path", + "description": "Project ID for this request.", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "maxResults": { + "location": "query", + "minimum": "0", + "default": "500", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "region": { + "location": "path", + "required": true, + "type": "string", + "description": "The name of the region where the network endpoint group is located. It should comply with RFC1035." + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "httpMethod": "GET", + "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups", + "path": "projects/{project}/regions/{region}/networkEndpointGroups", + "id": "compute.regionNetworkEndpointGroups.list" + }, + "insert": { + "parameterOrder": [ + "project", + "region" + ], + "id": "compute.regionNetworkEndpointGroups.insert", + "path": "projects/{project}/regions/{region}/networkEndpointGroups", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "description": "Creates a network endpoint group in the specified project using the parameters that are included in the request.", + "request": { + "$ref": "NetworkEndpointGroup" + }, + "parameters": { + "region": { + "type": "string", + "location": "path", + "description": "The name of the region where you want to create the network endpoint group. It should comply with RFC1035.", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "type": "string", + "required": true, + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups" + }, + "get": { + "flatPath": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/regions/{region}/networkEndpointGroups/{networkEndpointGroup}", + "parameterOrder": [ + "project", + "region", + "networkEndpointGroup" + ], + "parameters": { + "region": { + "description": "The name of the region where the network endpoint group is located. It should comply with RFC1035.", + "required": true, + "location": "path", + "type": "string" + }, + "networkEndpointGroup": { + "type": "string", + "location": "path", + "description": "The name of the network endpoint group. It should comply with RFC1035.", + "required": true + }, + "project": { + "required": true, + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + } + }, + "id": "compute.regionNetworkEndpointGroups.get", + "description": "Returns the specified network endpoint group. Gets a list of available network endpoint groups by making a list() request.", + "httpMethod": "GET", + "response": { + "$ref": "NetworkEndpointGroup" + } + } + } + }, + "imageFamilyViews": { + "methods": { + "get": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "family": { + "type": "string", + "description": "Name of the image family to search for.", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "zone": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "description": "The name of the zone for this request." + } + }, + "response": { + "$ref": "ImageFamilyView" + }, + "flatPath": "projects/{project}/zones/{zone}/imageFamilyViews/{family}", + "path": "projects/{project}/zones/{zone}/imageFamilyViews/{family}", + "id": "compute.imageFamilyViews.get", + "httpMethod": "GET", + "parameterOrder": [ + "project", + "zone", + "family" + ], + "description": "Returns the latest image that is part of an image family, is not deprecated and is rolled out in the specified zone." + } + } + }, + "projects": { + "methods": { + "getXpnHost": { + "description": "Gets the shared VPC host project that this project links to. May be empty if no link exists.", + "response": { + "$ref": "Project" + }, + "path": "projects/{project}/getXpnHost", + "flatPath": "projects/{project}/getXpnHost", + "httpMethod": "GET", + "parameters": { + "project": { + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string" + } + }, + "id": "compute.projects.getXpnHost", + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "disableXpnHost": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project" + ], + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "project": { + "location": "path", + "required": true, + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "httpMethod": "POST", + "path": "projects/{project}/disableXpnHost", + "response": { + "$ref": "Operation" + }, + "id": "compute.projects.disableXpnHost", + "description": "Disable this project as a shared VPC host project.", + "flatPath": "projects/{project}/disableXpnHost" + }, + "setCommonInstanceMetadata": { + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/setCommonInstanceMetadata", + "parameterOrder": [ + "project" + ], + "httpMethod": "POST", + "id": "compute.projects.setCommonInstanceMetadata", + "parameters": { + "project": { + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "description": "Sets metadata common to all instances within the specified project using the data included in the request.", + "flatPath": "projects/{project}/setCommonInstanceMetadata", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "Metadata" + } + }, + "get": { + "httpMethod": "GET", + "description": "Returns the specified Project resource.", + "response": { + "$ref": "Project" + }, + "parameters": { + "project": { + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "flatPath": "projects/{project}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}", + "id": "compute.projects.get" + }, + "getXpnResources": { + "parameters": { + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "maxResults": { + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500", + "type": "integer", + "location": "query" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "response": { + "$ref": "ProjectsGetXpnResources" + }, + "flatPath": "projects/{project}/getXpnResources", + "id": "compute.projects.getXpnResources", + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/getXpnResources", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "GET", + "description": "Gets service resources (a.k.a service project) associated with this host project." + }, + "disableXpnResource": { + "description": "Disable a service resource (also known as service project) associated with this host project.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/disableXpnResource", + "id": "compute.projects.disableXpnResource", + "httpMethod": "POST", + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "ProjectsDisableXpnResourceRequest" + }, + "path": "projects/{project}/disableXpnResource", + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Project ID for this request." + } + } + }, + "moveInstance": { + "path": "projects/{project}/moveInstance", + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "InstanceMoveRequest" + }, + "parameters": { + "project": { + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "description": "Moves an instance and its attached persistent disks from one zone to another.", + "id": "compute.projects.moveInstance", + "httpMethod": "POST", + "flatPath": "projects/{project}/moveInstance", + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "enableXpnResource": { + "description": "Enable service resource (a.k.a service project) for a host project, so that subnets in the host project can be used by instances in the service project.", + "flatPath": "projects/{project}/enableXpnResource", + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "request": { + "$ref": "ProjectsEnableXpnResourceRequest" + }, + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "path": "projects/{project}/enableXpnResource", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.projects.enableXpnResource" + }, + "setDefaultNetworkTier": { + "description": "Sets the default network tier of the project. The default network tier is used when an address/forwardingRule/instance is created without specifying the network tier field.", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + } + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/setDefaultNetworkTier", + "id": "compute.projects.setDefaultNetworkTier", + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "ProjectsSetDefaultNetworkTierRequest" + }, + "path": "projects/{project}/setDefaultNetworkTier" + }, + "moveDisk": { + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/moveDisk", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "path": "projects/{project}/moveDisk", + "description": "Moves a persistent disk from one zone to another.", + "request": { + "$ref": "DiskMoveRequest" + }, + "id": "compute.projects.moveDisk", + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST" + }, + "setUsageExportBucket": { + "id": "compute.projects.setUsageExportBucket", + "description": "Enables the usage export feature and sets the usage export bucket where reports are stored. If you provide an empty request body using this method, the usage export feature will be disabled.", + "flatPath": "projects/{project}/setUsageExportBucket", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/setUsageExportBucket", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "request": { + "$ref": "UsageExportLocation" + }, + "parameterOrder": [ + "project" + ], + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "required": true + } + } + }, + "listXpnHosts": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/listXpnHosts", + "description": "Lists all shared VPC host projects visible to the user in an organization.", + "flatPath": "projects/{project}/listXpnHosts", + "response": { + "$ref": "XpnHostList" + }, + "parameters": { + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "minimum": "0", + "format": "uint32", + "default": "500", + "type": "integer" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + } + }, + "parameterOrder": [ + "project" + ], + "httpMethod": "POST", + "request": { + "$ref": "ProjectsListXpnHostsRequest" + }, + "id": "compute.projects.listXpnHosts" + }, + "enableXpnHost": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project" + ], + "httpMethod": "POST", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/enableXpnHost", + "description": "Enable this project as a shared VPC host project.", + "path": "projects/{project}/enableXpnHost", + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true + } + }, + "id": "compute.projects.enableXpnHost" + } + } + }, + "targetTcpProxies": { + "methods": { + "setBackendService": { + "request": { + "$ref": "TargetTcpProxiesSetBackendServiceRequest" + }, + "description": "Changes the BackendService for TargetTcpProxy.", + "httpMethod": "POST", + "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", + "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setBackendService", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "type": "string", + "location": "path" + }, + "targetTcpProxy": { + "type": "string", + "description": "Name of the TargetTcpProxy resource whose BackendService resource is to be set.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + } + }, + "id": "compute.targetTcpProxies.setBackendService" + }, + "list": { + "flatPath": "projects/{project}/global/targetTcpProxies", + "parameterOrder": [ + "project" + ], + "description": "Retrieves the list of TargetTcpProxy resources available to the specified project.", + "path": "projects/{project}/global/targetTcpProxies", + "parameters": { + "project": { + "location": "path", + "type": "string", + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "location": "query", + "minimum": "0", + "default": "500", + "type": "integer", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + } + }, + "id": "compute.targetTcpProxies.list", + "response": { + "$ref": "TargetTcpProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET" + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "targetTcpProxy": { + "location": "path", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the TargetTcpProxy resource to delete." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "required": true + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "httpMethod": "DELETE", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "description": "Deletes the specified TargetTcpProxy resource.", + "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", + "id": "compute.targetTcpProxies.delete" + }, + "insert": { + "path": "projects/{project}/global/targetTcpProxies", + "parameters": { + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + }, + "httpMethod": "POST", + "flatPath": "projects/{project}/global/targetTcpProxies", + "request": { + "$ref": "TargetTcpProxy" + }, + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "description": "Creates a TargetTcpProxy resource in the specified project using the data included in the request.", + "id": "compute.targetTcpProxies.insert" + }, + "setProxyHeader": { + "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", + "description": "Changes the ProxyHeaderType for TargetTcpProxy.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "TargetTcpProxiesSetProxyHeaderRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}/setProxyHeader", + "id": "compute.targetTcpProxies.setProxyHeader", + "response": { + "$ref": "Operation" + }, + "parameters": { + "project": { + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "targetTcpProxy": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the TargetTcpProxy resource whose ProxyHeader is to be set.", + "location": "path", + "required": true + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + } + }, + "get": { + "parameterOrder": [ + "project", + "targetTcpProxy" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "TargetTcpProxy" + }, + "id": "compute.targetTcpProxies.get", + "description": "Returns the specified TargetTcpProxy resource. Gets a list of available target TCP proxies by making a list() request.", + "parameters": { + "targetTcpProxy": { + "description": "Name of the TargetTcpProxy resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path", + "required": true + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "path": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", + "flatPath": "projects/{project}/global/targetTcpProxies/{targetTcpProxy}", + "httpMethod": "GET" + } + } + }, + "disks": { + "methods": { + "get": { + "flatPath": "projects/{project}/zones/{zone}/disks/{disk}", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "id": "compute.disks.get", + "parameters": { + "disk": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "type": "string", + "description": "Name of the persistent disk to return." + }, + "zone": { + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "description": "The name of the zone for this request." + }, + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string" + } + }, + "response": { + "$ref": "Disk" + }, + "description": "Returns a specified persistent disk. Gets a list of available persistent disks by making a list() request.", + "path": "projects/{project}/zones/{zone}/disks/{disk}" + }, + "testIamPermissions": { + "path": "projects/{project}/zones/{zone}/disks/{resource}/testIamPermissions", + "parameters": { + "zone": { + "location": "path", + "required": true, + "description": "The name of the zone for this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "resource": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "description": "Name or id of the resource for this request.", + "required": true, + "location": "path" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "description": "Project ID for this request." + } + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "response": { + "$ref": "TestPermissionsResponse" + }, + "flatPath": "projects/{project}/zones/{zone}/disks/{resource}/testIamPermissions", + "id": "compute.disks.testIamPermissions", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "request": { + "$ref": "TestPermissionsRequest" + } + }, + "resize": { + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "description": "Resizes the specified persistent disk. You can only increase the size of the disk.", + "request": { + "$ref": "DisksResizeRequest" + }, + "id": "compute.disks.resize", + "parameters": { + "disk": { + "type": "string", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "The name of the persistent disk." + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string", + "description": "The name of the zone for this request.", + "location": "path" + }, + "project": { + "required": true, + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "flatPath": "projects/{project}/zones/{zone}/disks/{disk}/resize", + "path": "projects/{project}/zones/{zone}/disks/{disk}/resize" + }, + "list": { + "path": "projects/{project}/zones/{zone}/disks", + "response": { + "$ref": "DiskList" + }, + "parameterOrder": [ + "project", + "zone" + ], + "description": "Retrieves a list of persistent disks contained within the specified zone.", + "id": "compute.disks.list", + "flatPath": "projects/{project}/zones/{zone}/disks", + "parameters": { + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "maxResults": { + "type": "integer", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500", + "format": "uint32" + }, + "zone": { + "description": "The name of the zone for this request.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET" + }, + "getIamPolicy": { + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "path": "projects/{project}/zones/{zone}/disks/{resource}/getIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "Policy" + }, + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "id": "compute.disks.getIamPolicy", + "flatPath": "projects/{project}/zones/{zone}/disks/{resource}/getIamPolicy", + "parameters": { + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "zone": { + "description": "The name of the zone for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "type": "string", + "description": "Project ID for this request." + }, + "resource": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true, + "description": "Name or id of the resource for this request." + } + } + }, + "setLabels": { + "path": "projects/{project}/zones/{zone}/disks/{resource}/setLabels", + "description": "Sets the labels on a disk. To learn more about labels, read the Labeling Resources documentation.", + "flatPath": "projects/{project}/zones/{zone}/disks/{resource}/setLabels", + "request": { + "$ref": "ZoneSetLabelsRequest" + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + }, + "project": { + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + } + }, + "response": { + "$ref": "Operation" + }, + "id": "compute.disks.setLabels" + }, + "addResourcePolicies": { + "request": { + "$ref": "DisksAddResourcePoliciesRequest" + }, + "httpMethod": "POST", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "parameters": { + "zone": { + "required": true, + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request." + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request." + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "disk": { + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "The disk name for this request.", + "type": "string" + } + }, + "id": "compute.disks.addResourcePolicies", + "path": "projects/{project}/zones/{zone}/disks/{disk}/addResourcePolicies", + "description": "Adds existing resource policies to a disk. You can only add one policy which will be applied to this disk for scheduling snapshot creation.", + "flatPath": "projects/{project}/zones/{zone}/disks/{disk}/addResourcePolicies", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "createSnapshot": { + "description": "Creates a snapshot of a specified persistent disk.", + "path": "projects/{project}/zones/{zone}/disks/{disk}/createSnapshot", + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "flatPath": "projects/{project}/zones/{zone}/disks/{disk}/createSnapshot", + "parameters": { + "disk": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the persistent disk to snapshot.", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request.", + "location": "path" + }, + "zone": { + "description": "The name of the zone for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "type": "string" + }, + "guestFlush": { + "type": "boolean", + "description": "[Input Only] Whether to attempt an application consistent snapshot by informing the OS to prepare for the snapshot process. Currently only supported on Windows instances using the Volume Shadow Copy Service (VSS).", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "request": { + "$ref": "Snapshot" + }, + "id": "compute.disks.createSnapshot" + }, + "aggregatedList": { + "response": { + "$ref": "DiskAggregatedList" + }, + "path": "projects/{project}/aggregated/disks", + "id": "compute.disks.aggregatedList", + "description": "Retrieves an aggregated list of persistent disks.", + "flatPath": "projects/{project}/aggregated/disks", + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "parameters": { + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500", + "location": "query", + "format": "uint32" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "includeAllScopes": { + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "type": "string" + } + } + }, + "delete": { + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request." + }, + "disk": { + "description": "Name of the persistent disk to delete.", + "required": true, + "location": "path", + "type": "string" + }, + "zone": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "location": "path", + "required": true + } + }, + "flatPath": "projects/{project}/zones/{zone}/disks/{disk}", + "path": "projects/{project}/zones/{zone}/disks/{disk}", + "description": "Deletes the specified persistent disk. Deleting a disk removes its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", + "id": "compute.disks.delete", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "DELETE" + }, + "removeResourcePolicies": { + "flatPath": "projects/{project}/zones/{zone}/disks/{disk}/removeResourcePolicies", + "id": "compute.disks.removeResourcePolicies", + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "description": "Removes resource policies from a disk.", + "path": "projects/{project}/zones/{zone}/disks/{disk}/removeResourcePolicies", + "httpMethod": "POST", + "request": { + "$ref": "DisksRemoveResourcePoliciesRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "project": { + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path" + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path", + "type": "string", + "description": "The name of the zone for this request." + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "disk": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true, + "description": "The disk name for this request." + } + }, + "response": { + "$ref": "Operation" + } + }, + "setIamPolicy": { + "request": { + "$ref": "ZoneSetPolicyRequest" + }, + "parameters": { + "zone": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "description": "The name of the zone for this request." + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request.", + "location": "path" + }, + "resource": { + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name or id of the resource for this request.", + "location": "path" + } + }, + "id": "compute.disks.setIamPolicy", + "path": "projects/{project}/zones/{zone}/disks/{resource}/setIamPolicy", + "httpMethod": "POST", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "flatPath": "projects/{project}/zones/{zone}/disks/{resource}/setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Policy" + } + }, + "insert": { + "flatPath": "projects/{project}/zones/{zone}/disks", + "response": { + "$ref": "Operation" + }, + "id": "compute.disks.insert", + "parameterOrder": [ + "project", + "zone" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/zones/{zone}/disks", + "description": "Creates a persistent disk in the specified project using the data in the request. You can create a disk from a source (sourceImage, sourceSnapshot, or sourceDisk) or create an empty 500 GB data disk by omitting all properties. You can also create a disk that is larger than the default size by specifying the sizeGb property.", + "parameters": { + "sourceImage": { + "type": "string", + "description": "Source image to restore onto a disk. This field is optional.", + "location": "query" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path", + "type": "string", + "description": "The name of the zone for this request." + }, + "project": { + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request." + } + }, + "httpMethod": "POST", + "request": { + "$ref": "Disk" + } + } + } + }, + "sslCertificates": { + "methods": { + "aggregatedList": { + "httpMethod": "GET", + "description": "Retrieves the list of all SslCertificate resources, regional and global, available to the specified project.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/aggregated/sslCertificates", + "path": "projects/{project}/aggregated/sslCertificates", + "id": "compute.sslCertificates.aggregatedList", + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "SslCertificateAggregatedList" + }, + "parameters": { + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Name of the project scoping this request." + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "includeAllScopes": { + "location": "query", + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "maxResults": { + "default": "500", + "location": "query", + "minimum": "0", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + } + } + }, + "delete": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "DELETE", + "path": "projects/{project}/global/sslCertificates/{sslCertificate}", + "description": "Deletes the specified SslCertificate resource.", + "parameters": { + "sslCertificate": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the SslCertificate resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query" + } + }, + "parameterOrder": [ + "project", + "sslCertificate" + ], + "id": "compute.sslCertificates.delete", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/sslCertificates/{sslCertificate}" + }, + "insert": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/sslCertificates", + "id": "compute.sslCertificates.insert", + "path": "projects/{project}/global/sslCertificates", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true, + "description": "Project ID for this request." + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "type": "string" + } + }, + "description": "Creates a SslCertificate resource in the specified project using the data included in the request.", + "parameterOrder": [ + "project" + ], + "httpMethod": "POST", + "request": { + "$ref": "SslCertificate" + }, + "response": { + "$ref": "Operation" + } + }, + "list": { + "id": "compute.sslCertificates.list", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves the list of SslCertificate resources available to the specified project.", + "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "minimum": "0", + "format": "uint32", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query" + }, + "project": { + "type": "string", + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + } + }, + "response": { + "$ref": "SslCertificateList" + }, + "path": "projects/{project}/global/sslCertificates", + "httpMethod": "GET", + "flatPath": "projects/{project}/global/sslCertificates", + "parameterOrder": [ + "project" + ] + }, + "get": { + "parameters": { + "sslCertificate": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path", + "description": "Name of the SslCertificate resource to return." + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "response": { + "$ref": "SslCertificate" + }, + "parameterOrder": [ + "project", + "sslCertificate" + ], + "flatPath": "projects/{project}/global/sslCertificates/{sslCertificate}", + "id": "compute.sslCertificates.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Returns the specified SslCertificate resource. Gets a list of available SSL certificates by making a list() request.", + "httpMethod": "GET", + "path": "projects/{project}/global/sslCertificates/{sslCertificate}" + } + } + }, + "externalVpnGateways": { + "methods": { + "testIamPermissions": { + "path": "projects/{project}/global/externalVpnGateways/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/global/externalVpnGateways/{resource}/testIamPermissions", + "response": { + "$ref": "TestPermissionsResponse" + }, + "description": "Returns permissions that a caller has on the specified resource.", + "id": "compute.externalVpnGateways.testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "resource": { + "description": "Name or id of the resource for this request.", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + } + } + }, + "delete": { + "description": "Deletes the specified externalVpnGateway.", + "path": "projects/{project}/global/externalVpnGateways/{externalVpnGateway}", + "parameterOrder": [ + "project", + "externalVpnGateway" + ], + "flatPath": "projects/{project}/global/externalVpnGateways/{externalVpnGateway}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "externalVpnGateway": { + "description": "Name of the externalVpnGateways to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "required": true + }, + "project": { + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true + } + }, + "httpMethod": "DELETE", + "response": { + "$ref": "Operation" + }, + "id": "compute.externalVpnGateways.delete" + }, + "get": { + "response": { + "$ref": "ExternalVpnGateway" + }, + "parameters": { + "project": { + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "externalVpnGateway": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "description": "Name of the externalVpnGateway to return.", + "location": "path", + "type": "string" + } + }, + "httpMethod": "GET", + "parameterOrder": [ + "project", + "externalVpnGateway" + ], + "description": "Returns the specified externalVpnGateway. Get a list of available externalVpnGateways by making a list() request.", + "id": "compute.externalVpnGateways.get", + "flatPath": "projects/{project}/global/externalVpnGateways/{externalVpnGateway}", + "path": "projects/{project}/global/externalVpnGateways/{externalVpnGateway}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "id": "compute.externalVpnGateways.setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/global/externalVpnGateways/{resource}/setLabels", + "description": "Sets the labels on an ExternalVpnGateway. To learn more about labels, read the Labeling Resources documentation.", + "parameters": { + "resource": { + "required": true, + "type": "string", + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true, + "description": "Project ID for this request." + } + }, + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/externalVpnGateways/{resource}/setLabels", + "parameterOrder": [ + "project", + "resource" + ], + "httpMethod": "POST" + }, + "list": { + "id": "compute.externalVpnGateways.list", + "parameterOrder": [ + "project" + ], + "description": "Retrieves the list of ExternalVpnGateway available to the specified project.", + "path": "projects/{project}/global/externalVpnGateways", + "httpMethod": "GET", + "parameters": { + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "maxResults": { + "default": "500", + "format": "uint32", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "location": "query" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "ExternalVpnGatewayList" + }, + "flatPath": "projects/{project}/global/externalVpnGateways" + }, + "insert": { + "id": "compute.externalVpnGateways.insert", + "httpMethod": "POST", + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "description": "Project ID for this request.", + "location": "path" + } + }, + "path": "projects/{project}/global/externalVpnGateways", + "response": { + "$ref": "Operation" + }, + "description": "Creates a ExternalVpnGateway in the specified project using the data included in the request.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "ExternalVpnGateway" + }, + "parameterOrder": [ + "project" + ], + "flatPath": "projects/{project}/global/externalVpnGateways" + } + } + }, + "addresses": { + "methods": { + "get": { + "description": "Returns the specified address resource.", + "parameterOrder": [ + "project", + "region", + "address" + ], + "response": { + "$ref": "Address" + }, + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "address": { + "location": "path", + "required": true, + "type": "string", + "description": "Name of the address resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "region": { + "location": "path", + "type": "string", + "description": "Name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/regions/{region}/addresses/{address}", + "flatPath": "projects/{project}/regions/{region}/addresses/{address}", + "httpMethod": "GET", + "id": "compute.addresses.get" + }, + "list": { + "flatPath": "projects/{project}/regions/{region}/addresses", + "path": "projects/{project}/regions/{region}/addresses", + "httpMethod": "GET", + "description": "Retrieves a list of addresses contained within the specified region.", + "response": { + "$ref": "AddressList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "maxResults": { + "minimum": "0", + "type": "integer", + "location": "query", + "default": "500", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "project": { + "type": "string", + "location": "path", + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "region": { + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "description": "Name of the region for this request." + } + }, + "parameterOrder": [ + "project", + "region" + ], + "id": "compute.addresses.list" + }, + "aggregatedList": { + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "response": { + "$ref": "AddressAggregatedList" + }, + "path": "projects/{project}/aggregated/addresses", + "id": "compute.addresses.aggregatedList", + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "required": true + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "maxResults": { + "type": "integer", + "format": "uint32", + "location": "query", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500" + }, + "includeAllScopes": { + "location": "query", + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + } + }, + "description": "Retrieves an aggregated list of addresses.", + "flatPath": "projects/{project}/aggregated/addresses" + }, + "insert": { + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/regions/{region}/addresses", + "request": { + "$ref": "Address" + }, + "httpMethod": "POST", + "id": "compute.addresses.insert", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "region": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request.", + "location": "path" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "path": "projects/{project}/regions/{region}/addresses", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Creates an address resource in the specified project by using the data included in the request." + }, + "delete": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Deletes the specified address resource.", + "parameters": { + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path" + }, + "region": { + "required": true, + "type": "string", + "location": "path", + "description": "Name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "address": { + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the address resource to delete.", + "required": true + } + }, + "response": { + "$ref": "Operation" + }, + "id": "compute.addresses.delete", + "flatPath": "projects/{project}/regions/{region}/addresses/{address}", + "parameterOrder": [ + "project", + "region", + "address" + ], + "path": "projects/{project}/regions/{region}/addresses/{address}", + "httpMethod": "DELETE" + } + } + }, + "snapshots": { + "methods": { + "delete": { + "parameterOrder": [ + "project", + "snapshot" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/global/snapshots/{snapshot}", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/snapshots/{snapshot}", + "id": "compute.snapshots.delete", + "description": "Deletes the specified Snapshot resource. Keep in mind that deleting a single snapshot might not necessarily delete all the data on that snapshot. If any data on the snapshot that is marked for deletion is needed for subsequent snapshots, the data will be moved to the next corresponding snapshot. For more information, see Deleting snapshots.", + "parameters": { + "snapshot": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "required": true, + "description": "Name of the Snapshot resource to delete.", + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string" + } + }, + "httpMethod": "DELETE" + }, + "setLabels": { + "httpMethod": "POST", + "flatPath": "projects/{project}/global/snapshots/{resource}/setLabels", + "description": "Sets the labels on a snapshot. To learn more about labels, read the Labeling Resources documentation.", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "resource" + ], + "path": "projects/{project}/global/snapshots/{resource}/setLabels", + "id": "compute.snapshots.setLabels", + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "resource": { + "location": "path", + "required": true, + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + } + } + }, + "list": { + "response": { + "$ref": "SnapshotList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "flatPath": "projects/{project}/global/snapshots", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "maxResults": { + "minimum": "0", + "default": "500", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer", + "format": "uint32" + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + } + }, + "id": "compute.snapshots.list", + "parameterOrder": [ + "project" + ], + "description": "Retrieves the list of Snapshot resources contained within the specified project.", + "path": "projects/{project}/global/snapshots" + }, + "setIamPolicy": { + "id": "compute.snapshots.setIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "resource" + ], + "path": "projects/{project}/global/snapshots/{resource}/setIamPolicy", + "parameters": { + "resource": { + "location": "path", + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "response": { + "$ref": "Policy" + }, + "request": { + "$ref": "GlobalSetPolicyRequest" + }, + "flatPath": "projects/{project}/global/snapshots/{resource}/setIamPolicy", + "httpMethod": "POST" + }, + "testIamPermissions": { + "flatPath": "projects/{project}/global/snapshots/{resource}/testIamPermissions", + "id": "compute.snapshots.testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "path": "projects/{project}/global/snapshots/{resource}/testIamPermissions", + "response": { + "$ref": "TestPermissionsResponse" + }, + "parameterOrder": [ + "project", + "resource" + ], + "httpMethod": "POST", + "parameters": { + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "resource": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true, + "description": "Name or id of the resource for this request." + } + }, + "description": "Returns permissions that a caller has on the specified resource.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "response": { + "$ref": "Policy" + }, + "parameterOrder": [ + "project", + "resource" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/global/snapshots/{resource}/getIamPolicy", + "httpMethod": "GET", + "flatPath": "projects/{project}/global/snapshots/{resource}/getIamPolicy", + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path" + }, + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "format": "int32", + "type": "integer", + "location": "query" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + } + }, + "id": "compute.snapshots.getIamPolicy", + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists." + }, + "get": { + "description": "Returns the specified Snapshot resource. Gets a list of available snapshots by making a list() request.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "parameterOrder": [ + "project", + "snapshot" + ], + "response": { + "$ref": "Snapshot" + }, + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true, + "description": "Project ID for this request." + }, + "snapshot": { + "required": true, + "type": "string", + "location": "path", + "description": "Name of the Snapshot resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "flatPath": "projects/{project}/global/snapshots/{snapshot}", + "id": "compute.snapshots.get", + "path": "projects/{project}/global/snapshots/{snapshot}" + } + } + }, + "subnetworks": { + "methods": { + "get": { + "response": { + "$ref": "Subnetwork" + }, + "id": "compute.subnetworks.get", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "subnetwork": { + "type": "string", + "required": true, + "location": "path", + "description": "Name of the Subnetwork resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "description": "Project ID for this request." + }, + "region": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "type": "string", + "required": true + } + }, + "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "description": "Returns the specified subnetwork. Gets a list of available subnetworks list() request." + }, + "setIamPolicy": { + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "httpMethod": "POST", + "path": "projects/{project}/regions/{region}/subnetworks/{resource}/setIamPolicy", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{resource}/setIamPolicy", + "id": "compute.subnetworks.setIamPolicy", + "request": { + "$ref": "RegionSetPolicyRequest" + }, + "parameters": { + "region": { + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "The name of the region for this request." + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "resource": { + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name or id of the resource for this request.", + "required": true + } + } + }, + "getIamPolicy": { + "id": "compute.subnetworks.getIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "Policy" + }, + "path": "projects/{project}/regions/{region}/subnetworks/{resource}/getIamPolicy", + "httpMethod": "GET", + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{resource}/getIamPolicy", + "parameters": { + "resource": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name or id of the resource for this request.", + "required": true, + "location": "path", + "type": "string" + }, + "project": { + "required": true, + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "optionsRequestedPolicyVersion": { + "description": "Requested IAM Policy version.", + "location": "query", + "format": "int32", + "type": "integer" + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string", + "location": "path", + "description": "The name of the region for this request." + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ] + }, + "testIamPermissions": { + "httpMethod": "POST", + "parameters": { + "region": { + "required": true, + "description": "The name of the region for this request.", + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "project": { + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "resource": { + "required": true, + "location": "path", + "type": "string", + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/regions/{region}/subnetworks/{resource}/testIamPermissions", + "path": "projects/{project}/regions/{region}/subnetworks/{resource}/testIamPermissions", + "description": "Returns permissions that a caller has on the specified resource.", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "id": "compute.subnetworks.testIamPermissions", + "response": { + "$ref": "TestPermissionsResponse" + } + }, + "insert": { + "path": "projects/{project}/regions/{region}/subnetworks", + "parameterOrder": [ + "project", + "region" + ], + "flatPath": "projects/{project}/regions/{region}/subnetworks", + "description": "Creates a subnetwork in the specified project using the data included in the request.", + "id": "compute.subnetworks.insert", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "region": { + "description": "Name of the region scoping this request.", + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + }, + "project": { + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "request": { + "$ref": "Subnetwork" + } + }, + "setPrivateIpGoogleAccess": { + "httpMethod": "POST", + "parameters": { + "project": { + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true + }, + "subnetwork": { + "description": "Name of the Subnetwork resource.", + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + } + }, + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "SubnetworksSetPrivateIpGoogleAccessRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/setPrivateIpGoogleAccess", + "description": "Set whether VMs in this subnet can access Google services without assigning external IP addresses through Private Google Access.", + "id": "compute.subnetworks.setPrivateIpGoogleAccess" + }, + "patch": { + "id": "compute.subnetworks.patch", + "description": "Patches the specified subnetwork with the data included in the request. Only certain fields can be updated with a patch request as indicated in the field descriptions. You must specify the current fingerprint of the subnetwork resource being patched.", + "httpMethod": "PATCH", + "request": { + "$ref": "Subnetwork" + }, + "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "parameters": { + "region": { + "required": true, + "type": "string", + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "subnetwork": { + "type": "string", + "required": true, + "description": "Name of the Subnetwork resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "drainTimeoutSeconds": { + "type": "integer", + "description": "The drain timeout specifies the upper bound in seconds on the amount of time allowed to drain connections from the current ACTIVE subnetwork to the current BACKUP subnetwork. The drain timeout is only applicable when the following conditions are true: - the subnetwork being patched has purpose = INTERNAL_HTTPS_LOAD_BALANCER - the subnetwork being patched has role = BACKUP - the patch request is setting the role to ACTIVE. Note that after this patch operation the roles of the ACTIVE and BACKUP subnetworks will be swapped.", + "format": "int32", + "location": "query" + }, + "project": { + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "region", + "subnetwork" + ] + }, + "listUsable": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "UsableSubnetworksAggregatedList" + }, + "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "default": "500", + "minimum": "0", + "format": "uint32", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Project ID for this request." + } + }, + "flatPath": "projects/{project}/aggregated/subnetworks/listUsable", + "description": "Retrieves an aggregated list of all usable subnetworks in the project.", + "httpMethod": "GET", + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/aggregated/subnetworks/listUsable", + "id": "compute.subnetworks.listUsable" + }, + "expandIpCidrRange": { + "description": "Expands the IP CIDR range of the subnetwork to a specified value.", + "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "SubnetworksExpandIpCidrRangeRequest" + }, + "httpMethod": "POST", + "id": "compute.subnetworks.expandIpCidrRange", + "parameters": { + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "region": { + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request." + }, + "subnetwork": { + "type": "string", + "description": "Name of the Subnetwork resource to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path" + } + } + }, + "delete": { + "path": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "flatPath": "projects/{project}/regions/{region}/subnetworks/{subnetwork}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "DELETE", + "parameters": { + "subnetwork": { + "description": "Name of the Subnetwork resource to delete.", + "required": true, + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "location": "path" + }, + "region": { + "required": true, + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request." + } + }, + "id": "compute.subnetworks.delete", + "description": "Deletes the specified subnetwork.", + "parameterOrder": [ + "project", + "region", + "subnetwork" + ] + }, + "list": { + "parameterOrder": [ + "project", + "region" + ], + "path": "projects/{project}/regions/{region}/subnetworks", + "id": "compute.subnetworks.list", + "parameters": { + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "description": "Name of the region scoping this request." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "maxResults": { + "format": "uint32", + "minimum": "0", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "type": "integer" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/regions/{region}/subnetworks", + "httpMethod": "GET", + "response": { + "$ref": "SubnetworkList" + }, + "description": "Retrieves a list of subnetworks available to the specified project." + }, + "aggregatedList": { + "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "project": { + "location": "path", + "required": true, + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "maxResults": { + "type": "integer", + "location": "query", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500" + }, + "includeAllScopes": { + "type": "boolean", + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + } + }, + "httpMethod": "GET", + "id": "compute.subnetworks.aggregatedList", + "flatPath": "projects/{project}/aggregated/subnetworks", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/aggregated/subnetworks", + "response": { + "$ref": "SubnetworkAggregatedList" + }, + "description": "Retrieves an aggregated list of subnetworks." + } + } + }, + "regionInstanceGroups": { + "methods": { + "get": { + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "flatPath": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}", + "path": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}", + "id": "compute.regionInstanceGroups.get", + "response": { + "$ref": "InstanceGroup" + }, + "description": "Returns the specified instance group resource.", + "httpMethod": "GET", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true, + "description": "Project ID for this request." + }, + "region": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the region scoping this request." + }, + "instanceGroup": { + "location": "path", + "description": "Name of the instance group resource to return.", + "type": "string", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setNamedPorts": { + "request": { + "$ref": "RegionInstanceGroupsSetNamedPortsRequest" + }, + "httpMethod": "POST", + "id": "compute.regionInstanceGroups.setNamedPorts", + "path": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", + "flatPath": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Sets the named ports for the specified regional instance group.", + "parameters": { + "project": { + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path" + }, + "instanceGroup": { + "type": "string", + "location": "path", + "required": true, + "description": "The name of the regional instance group where the named ports are updated." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "type": "string", + "required": true + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "response": { + "$ref": "Operation" + } + }, + "list": { + "path": "projects/{project}/regions/{region}/instanceGroups", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "region": { + "required": true, + "type": "string", + "description": "Name of the region scoping this request.", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer", + "minimum": "0" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "RegionInstanceGroupList" + }, + "flatPath": "projects/{project}/regions/{region}/instanceGroups", + "id": "compute.regionInstanceGroups.list", + "httpMethod": "GET", + "description": "Retrieves the list of instance group resources contained within the specified region." + }, + "listInstances": { + "id": "compute.regionInstanceGroups.listInstances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "POST", + "request": { + "$ref": "RegionInstanceGroupsListInstancesRequest" + }, + "description": "Lists the instances in the specified instance group and displays information about the named ports. Depending on the specified options, this method can list all instances or only the instances that are running. The orderBy query parameter is not supported.", + "response": { + "$ref": "RegionInstanceGroupsListInstances" + }, + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "path": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", + "parameters": { + "region": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the region scoping this request." + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true + }, + "instanceGroup": { + "location": "path", + "description": "Name of the regional instance group for which we want to list the instances.", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "maxResults": { + "default": "500", + "type": "integer", + "format": "uint32", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + } + }, + "flatPath": "projects/{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances" + } + } + }, + "instanceGroupManagers": { + "methods": { + "recreateInstances": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "httpMethod": "POST", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "id": "compute.instanceGroupManagers.recreateInstances", + "description": "Flags the specified VM instances in the managed instance group to be immediately recreated. Each instance is recreated using the group's current configuration. This operation is marked as DONE when the flag is set even if the instances have not yet been recreated. You must separately verify the status of each instance by checking its currentAction field; for more information, see Checking the status of managed instances. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request.", + "request": { + "$ref": "InstanceGroupManagersRecreateInstancesRequest" + }, + "parameters": { + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "type": "string", + "location": "path", + "required": true + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "instanceGroupManager": { + "type": "string", + "required": true, + "description": "The name of the managed instance group.", + "location": "path" + }, + "project": { + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + } + }, + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances" + }, + "setTargetPools": { + "parameters": { + "instanceGroupManager": { + "required": true, + "type": "string", + "description": "The name of the managed instance group.", + "location": "path" + }, + "zone": { + "required": true, + "type": "string", + "location": "path", + "description": "The name of the zone where the managed instance group is located." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "id": "compute.instanceGroupManagers.setTargetPools", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "httpMethod": "POST", + "request": { + "$ref": "InstanceGroupManagersSetTargetPoolsRequest" + }, + "description": "Modifies the target pools to which all instances in this managed instance group are assigned. The target pools automatically apply to all of the instances in the managed instance group. This operation is marked DONE when you make the request even if the instances have not yet been added to their target pools. The change might take some time to apply to all of the instances in the group depending on the size of the group.", + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "response": { + "$ref": "Operation" + } + }, + "listPerInstanceConfigs": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", + "response": { + "$ref": "InstanceGroupManagersListPerInstanceConfigsResp" + }, + "description": "Lists all of the per-instance configs defined for the managed instance group. The orderBy query parameter is not supported.", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "httpMethod": "POST", + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "zone": { + "required": true, + "location": "path", + "type": "string", + "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035." + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer", + "default": "500", + "location": "query", + "minimum": "0", + "format": "uint32" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "instanceGroupManager": { + "location": "path", + "type": "string", + "description": "The name of the managed instance group. It should conform to RFC1035.", + "required": true + } + }, + "id": "compute.instanceGroupManagers.listPerInstanceConfigs" + }, + "abandonInstances": { + "request": { + "$ref": "InstanceGroupManagersAbandonInstancesRequest" + }, + "httpMethod": "POST", + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "description": "Flags the specified instances to be removed from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request.", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "location": "path" + }, + "zone": { + "type": "string", + "location": "path", + "required": true, + "description": "The name of the zone where the managed instance group is located." + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "instanceGroupManager": { + "required": true, + "location": "path", + "description": "The name of the managed instance group.", + "type": "string" + } + }, + "id": "compute.instanceGroupManagers.abandonInstances" + }, + "patchPerInstanceConfigs": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.instanceGroupManagers.patchPerInstanceConfigs", + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs", + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "zone": { + "required": true, + "location": "path", + "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035.", + "type": "string" + }, + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group. It should conform to RFC1035.", + "required": true, + "location": "path" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "type": "string", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "httpMethod": "POST", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs", + "description": "Inserts or patches per-instance configs for the managed instance group. perInstanceConfig.name serves as a key used to distinguish whether to perform insert or patch.", + "request": { + "$ref": "InstanceGroupManagersPatchPerInstanceConfigsReq" + } + }, + "get": { + "httpMethod": "GET", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "id": "compute.instanceGroupManagers.get", + "response": { + "$ref": "InstanceGroupManager" + }, + "description": "Returns all of the details about the specified managed instance group. Gets a list of available managed instance groups by making a list() request.", + "parameters": { + "instanceGroupManager": { + "location": "path", + "type": "string", + "required": true, + "description": "The name of the managed instance group." + }, + "zone": { + "required": true, + "type": "string", + "location": "path", + "description": "The name of the zone where the managed instance group is located." + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + } + }, + "patch": { + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "instanceGroupManager": { + "location": "path", + "required": true, + "type": "string", + "description": "The name of the instance group manager." + }, + "project": { + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + }, + "zone": { + "required": true, + "location": "path", + "description": "The name of the zone where you want to create the managed instance group.", + "type": "string" + } + }, + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listManagedInstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. If you update your group to specify a new template or instance configuration, it's possible that your intended specification for each VM in the group is different from the current state of that VM. To learn how to apply an updated configuration to the VMs in a MIG, see Updating instances in a MIG.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.instanceGroupManagers.patch", + "httpMethod": "PATCH", + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ] + }, + "setInstanceTemplate": { + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.setInstanceTemplate", + "request": { + "$ref": "InstanceGroupManagersSetInstanceTemplateRequest" + }, + "parameters": { + "zone": { + "location": "path", + "required": true, + "type": "string", + "description": "The name of the zone where the managed instance group is located." + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true + }, + "instanceGroupManager": { + "required": true, + "type": "string", + "description": "The name of the managed instance group.", + "location": "path" + } + }, + "description": "Specifies the instance template to use when creating new instances in this group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE.", + "response": { + "$ref": "Operation" + } + }, + "updatePerInstanceConfigs": { + "id": "compute.instanceGroupManagers.updatePerInstanceConfigs", + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", + "request": { + "$ref": "InstanceGroupManagersUpdatePerInstanceConfigsReq" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group. It should conform to RFC1035.", + "required": true, + "type": "string", + "location": "path" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "zone": { + "required": true, + "location": "path", + "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035.", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request." + } + }, + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", + "httpMethod": "POST", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "description": "Inserts or updates per-instance configs for the managed instance group. perInstanceConfig.name serves as a key used to distinguish whether to perform insert or patch." + }, + "createInstances": { + "id": "compute.instanceGroupManagers.createInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/createInstances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "zone": { + "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group. It should conform to RFC1035.", + "required": true, + "type": "string", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request." + } + }, + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/createInstances", + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "request": { + "$ref": "InstanceGroupManagersCreateInstancesRequest" + }, + "description": "Creates instances with per-instance configs in this managed instance group. Instances are created using the current instance template. The create instances operation is marked DONE if the createInstances request is successful. The underlying actions take additional time. You must separately verify the status of the creating or actions with the listmanagedinstances method." + }, + "resize": { + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.instanceGroupManagers.resize", + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize", + "httpMethod": "POST", + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "instanceGroupManager": { + "required": true, + "location": "path", + "type": "string", + "description": "The name of the managed instance group." + }, + "project": { + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "zone": { + "location": "path", + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true + }, + "size": { + "location": "query", + "required": true, + "format": "int32", + "type": "integer", + "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter." + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager", + "size" + ], + "description": "Resizes the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method. When resizing down, the instance group arbitrarily chooses the order in which VMs are deleted. The group takes into account some VM attributes when making the selection including: + The status of the VM instance. + The health of the VM instance. + The instance template version the VM is based on. + For regional managed instance groups, the location of the VM instance. This list is subject to change. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", + "response": { + "$ref": "Operation" + } + }, + "listErrors": { + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "maxResults": { + "format": "uint32", + "default": "500", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer", + "location": "query" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "required": true + }, + "instanceGroupManager": { + "location": "path", + "required": true, + "type": "string", + "description": "The name of the managed instance group. It must be a string that meets the requirements in RFC1035, or an unsigned long integer: must match regexp pattern: (?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)|1-9{0,19}." + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035.", + "required": true, + "location": "path" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + } + }, + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "InstanceGroupManagersListErrorsResponse" + }, + "id": "compute.instanceGroupManagers.listErrors", + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listErrors", + "description": "Lists all errors thrown by actions on instances for a given managed instance group. The filter and orderBy query parameters are not supported.", + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listErrors" + }, + "deletePerInstanceConfigs": { + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManagersDeletePerInstanceConfigsReq" + }, + "response": { + "$ref": "Operation" + }, + "description": "Deletes selected per-instance configs for the managed instance group.", + "parameters": { + "zone": { + "location": "path", + "type": "string", + "required": true, + "description": "The name of the zone where the managed instance group is located. It should conform to RFC1035." + }, + "instanceGroupManager": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the managed instance group. It should conform to RFC1035." + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path" + } + }, + "httpMethod": "POST", + "id": "compute.instanceGroupManagers.deletePerInstanceConfigs", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs" + }, + "applyUpdatesToInstances": { + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "description": "Applies changes to selected instances on the managed instance group. This method can be used to apply new overrides and/or new versions.", + "id": "compute.instanceGroupManagers.applyUpdatesToInstances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances", + "request": { + "$ref": "InstanceGroupManagersApplyUpdatesRequest" + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances", + "parameters": { + "zone": { + "description": "The name of the zone where the managed instance group is located. Should conform to RFC1035.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "instanceGroupManager": { + "location": "path", + "type": "string", + "description": "The name of the managed instance group, should conform to RFC1035.", + "required": true + } + } + }, + "aggregatedList": { + "description": "Retrieves the list of managed instance groups and groups them by zone.", + "parameters": { + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "maxResults": { + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer", + "default": "500", + "format": "uint32", + "location": "query" + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "includeAllScopes": { + "type": "boolean", + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/aggregated/instanceGroupManagers", + "response": { + "$ref": "InstanceGroupManagerAggregatedList" + }, + "httpMethod": "GET", + "path": "projects/{project}/aggregated/instanceGroupManagers", + "id": "compute.instanceGroupManagers.aggregatedList", + "parameterOrder": [ + "project" + ] + }, + "deleteInstances": { + "request": { + "$ref": "InstanceGroupManagersDeleteInstancesRequest" + }, + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.instanceGroupManagers.deleteInstances", + "httpMethod": "POST", + "parameters": { + "instanceGroupManager": { + "type": "string", + "location": "path", + "required": true, + "description": "The name of the managed instance group." + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "zone": { + "required": true, + "description": "The name of the zone where the managed instance group is located.", + "type": "string", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "description": "Flags the specified instances in the managed instance group for immediate deletion. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request.", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances" + }, + "insert": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "zone": { + "required": true, + "location": "path", + "description": "The name of the zone where you want to create the managed instance group.", + "type": "string" + } + }, + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers", + "id": "compute.instanceGroupManagers.insert", + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "parameterOrder": [ + "project", + "zone" + ], + "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, instances in the group are created using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method. A managed instance group can have up to 1000 VM instances per group. Please contact Cloud Support if you need an increase in this limit.", + "request": { + "$ref": "InstanceGroupManager" + }, + "path": "projects/{project}/zones/{zone}/instanceGroupManagers" + }, + "delete": { + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "type": "string", + "location": "path", + "required": true + }, + "instanceGroupManager": { + "location": "path", + "description": "The name of the managed instance group to delete.", + "type": "string", + "required": true + } + }, + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "description": "Deletes the specified managed instance group and all of the instances in that group. Note that the instance group must not belong to a backend service. Read Deleting an instance group for more information.", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.instanceGroupManagers.delete", + "httpMethod": "DELETE" + }, + "listManagedInstances": { + "httpMethod": "POST", + "parameters": { + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "required": true + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "default": "500" + }, + "zone": { + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "required": true, + "location": "path", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + } + }, + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "path": "projects/{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "description": "Lists all of the instances in the managed instance group. Each instance in the list has a currentAction, which indicates the action that the managed instance group is performing on the instance. For example, if the group is still creating an instance, the currentAction is CREATING. If a previous action failed, the list displays the errors for that failed action. The orderBy query parameter is not supported.", + "response": { + "$ref": "InstanceGroupManagersListManagedInstancesResponse" + }, + "id": "compute.instanceGroupManagers.listManagedInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "parameters": { + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "maxResults": { + "minimum": "0", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "format": "uint32", + "default": "500" + }, + "zone": { + "required": true, + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "location": "path" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + } + }, + "id": "compute.instanceGroupManagers.list", + "flatPath": "projects/{project}/zones/{zone}/instanceGroupManagers", + "description": "Retrieves a list of managed instance groups that are contained within the specified project and zone.", + "path": "projects/{project}/zones/{zone}/instanceGroupManagers", + "httpMethod": "GET", + "response": { + "$ref": "InstanceGroupManagerList" + }, + "parameterOrder": [ + "project", + "zone" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "serviceAttachments": { + "methods": { + "patch": { + "id": "compute.serviceAttachments.patch", + "httpMethod": "PATCH", + "request": { + "$ref": "ServiceAttachment" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "description": "Patches the specified ServiceAttachment resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "parameterOrder": [ + "project", + "region", + "serviceAttachment" + ], + "parameters": { + "region": { + "required": true, + "location": "path", + "type": "string", + "description": "The region scoping this request and should conform to RFC1035." + }, + "serviceAttachment": { + "type": "string", + "description": "The resource id of the ServiceAttachment to patch. It should conform to RFC1035 resource name or be a string form on an unsigned long number.", + "required": true, + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "type": "string", + "location": "query" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "type": "string" + } + }, + "response": { + "$ref": "Operation" + } + }, + "aggregatedList": { + "id": "compute.serviceAttachments.aggregatedList", + "parameters": { + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Name of the project scoping this request.", + "location": "path" + }, + "maxResults": { + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "location": "query", + "type": "integer", + "format": "uint32" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "includeAllScopes": { + "location": "query", + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + } + }, + "path": "projects/{project}/aggregated/serviceAttachments", + "httpMethod": "GET", + "flatPath": "projects/{project}/aggregated/serviceAttachments", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project" + ], + "description": "Retrieves the list of all ServiceAttachment resources, regional and global, available to the specified project.", + "response": { + "$ref": "ServiceAttachmentAggregatedList" + } + }, + "list": { + "response": { + "$ref": "ServiceAttachmentList" + }, + "description": "Lists the ServiceAttachments for a project in the given scope.", + "parameterOrder": [ + "project", + "region" + ], + "id": "compute.serviceAttachments.list", + "parameters": { + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "maxResults": { + "type": "integer", + "location": "query", + "minimum": "0", + "format": "uint32", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "region": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "description": "Name of the region of this request.", + "location": "path" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + } + }, + "httpMethod": "GET", + "path": "projects/{project}/regions/{region}/serviceAttachments", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/regions/{region}/serviceAttachments" + }, + "get": { + "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "parameters": { + "serviceAttachment": { + "required": true, + "location": "path", + "type": "string", + "description": "Name of the ServiceAttachment resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "region": { + "description": "Name of the region of this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "parameterOrder": [ + "project", + "region", + "serviceAttachment" + ], + "description": "Returns the specified ServiceAttachment resource in the given scope.", + "response": { + "$ref": "ServiceAttachment" + }, + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "httpMethod": "GET", + "id": "compute.serviceAttachments.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/testIamPermissions", + "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/testIamPermissions", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.serviceAttachments.testIamPermissions", + "description": "Returns permissions that a caller has on the specified resource.", + "response": { + "$ref": "TestPermissionsResponse" + }, + "httpMethod": "POST", + "parameters": { + "region": { + "type": "string", + "description": "The name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true + }, + "resource": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name or id of the resource for this request.", + "location": "path", + "type": "string", + "required": true + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true + } + } + }, + "setIamPolicy": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/setIamPolicy", + "httpMethod": "POST", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/setIamPolicy", + "parameters": { + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request." + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the region for this request.", + "required": true, + "location": "path", + "type": "string" + }, + "resource": { + "required": true, + "description": "Name or id of the resource for this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + } + }, + "request": { + "$ref": "RegionSetPolicyRequest" + }, + "id": "compute.serviceAttachments.setIamPolicy", + "response": { + "$ref": "Policy" + }, + "description": "Sets the access control policy on the specified resource. Replaces any existing policy." + }, + "insert": { + "flatPath": "projects/{project}/regions/{region}/serviceAttachments", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "id": "compute.serviceAttachments.insert", + "path": "projects/{project}/regions/{region}/serviceAttachments", + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "ServiceAttachment" + }, + "httpMethod": "POST", + "description": "Creates a ServiceAttachment in the specified project in the given scope using the parameters that are included in the request.", + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region of this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true + } + } + }, + "delete": { + "parameters": { + "region": { + "location": "path", + "required": true, + "description": "Name of the region of this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "serviceAttachment": { + "type": "string", + "required": true, + "description": "Name of the ServiceAttachment resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "type": "string", + "description": "Project ID for this request." + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder" + } + }, + "path": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "DELETE", + "description": "Deletes the specified ServiceAttachment in the given scope", + "parameterOrder": [ + "project", + "region", + "serviceAttachment" + ], + "id": "compute.serviceAttachments.delete", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{serviceAttachment}" + }, + "getIamPolicy": { + "response": { + "$ref": "Policy" + }, + "parameters": { + "region": { + "type": "string", + "location": "path", + "required": true, + "description": "The name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "resource": { + "location": "path", + "required": true, + "description": "Name or id of the resource for this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "optionsRequestedPolicyVersion": { + "format": "int32", + "type": "integer", + "description": "Requested IAM Policy version.", + "location": "query" + }, + "project": { + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "path": "projects/{project}/regions/{region}/serviceAttachments/{resource}/getIamPolicy", + "flatPath": "projects/{project}/regions/{region}/serviceAttachments/{resource}/getIamPolicy", + "httpMethod": "GET", + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "id": "compute.serviceAttachments.getIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "targetInstances": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true + }, + "zone": { + "description": "Name of the zone scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "required": true + }, + "targetInstance": { + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "description": "Name of the TargetInstance resource to delete." + } + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "zone", + "targetInstance" + ], + "flatPath": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", + "id": "compute.targetInstances.delete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", + "description": "Deletes the specified TargetInstance resource." + }, + "get": { + "id": "compute.targetInstances.get", + "httpMethod": "GET", + "parameterOrder": [ + "project", + "zone", + "targetInstance" + ], + "path": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", + "description": "Returns the specified TargetInstance resource. Gets a list of available target instances by making a list() request.", + "parameters": { + "targetInstance": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the TargetInstance resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "required": true, + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "flatPath": "projects/{project}/zones/{zone}/targetInstances/{targetInstance}", + "response": { + "$ref": "TargetInstance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "parameterOrder": [ + "project", + "zone" + ], + "request": { + "$ref": "TargetInstance" + }, + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/zones/{zone}/targetInstances", + "flatPath": "projects/{project}/zones/{zone}/targetInstances", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path", + "type": "string" + } + }, + "httpMethod": "POST", + "id": "compute.targetInstances.insert", + "description": "Creates a TargetInstance resource in the specified project and zone using the data included in the request.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.targetInstances.aggregatedList", + "flatPath": "projects/{project}/aggregated/targetInstances", + "description": "Retrieves an aggregated list of target instances.", + "parameterOrder": [ + "project" + ], + "httpMethod": "GET", + "parameters": { + "includeAllScopes": { + "location": "query", + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "format": "uint32", + "type": "integer", + "minimum": "0", + "default": "500" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/aggregated/targetInstances", + "response": { + "$ref": "TargetInstanceAggregatedList" + } + }, + "list": { + "id": "compute.targetInstances.list", + "response": { + "$ref": "TargetInstanceList" + }, + "parameters": { + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "type": "integer", + "location": "query", + "format": "uint32", + "minimum": "0" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "type": "string" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "zone": { + "description": "Name of the zone scoping this request.", + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + } + }, + "description": "Retrieves a list of TargetInstance resources available to the specified project and zone.", + "path": "projects/{project}/zones/{zone}/targetInstances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "zone" + ], + "httpMethod": "GET", + "flatPath": "projects/{project}/zones/{zone}/targetInstances" + } + } + }, + "regionDiskTypes": { + "methods": { + "get": { + "description": "Returns the specified regional disk type. Gets a list of available disk types by making a list() request.", + "response": { + "$ref": "DiskType" + }, + "flatPath": "projects/{project}/regions/{region}/diskTypes/{diskType}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "diskType": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the disk type to return.", + "type": "string" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "type": "string" + }, + "region": { + "type": "string", + "location": "path", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "path": "projects/{project}/regions/{region}/diskTypes/{diskType}", + "httpMethod": "GET", + "parameterOrder": [ + "project", + "region", + "diskType" + ], + "id": "compute.regionDiskTypes.get" + }, + "list": { + "parameterOrder": [ + "project", + "region" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves a list of regional disk types available to the specified project.", + "flatPath": "projects/{project}/regions/{region}/diskTypes", + "response": { + "$ref": "RegionDiskTypeList" + }, + "path": "projects/{project}/regions/{region}/diskTypes", + "id": "compute.regionDiskTypes.list", + "httpMethod": "GET", + "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "required": true + }, + "maxResults": { + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "format": "uint32", + "type": "integer", + "default": "500" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + } + } + } + } + }, + "firewalls": { + "methods": { + "list": { + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "FirewallList" + }, + "description": "Retrieves the list of firewall rules available to the specified project.", + "id": "compute.firewalls.list", + "httpMethod": "GET", + "flatPath": "projects/{project}/global/firewalls", + "path": "projects/{project}/global/firewalls", + "parameters": { + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "maxResults": { + "location": "query", + "minimum": "0", + "default": "500", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "firewall": { + "description": "Name of the firewall rule to update.", + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + }, + "project": { + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + } + }, + "httpMethod": "PUT", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/firewalls/{firewall}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "Firewall" + }, + "id": "compute.firewalls.update", + "parameterOrder": [ + "project", + "firewall" + ], + "flatPath": "projects/{project}/global/firewalls/{firewall}", + "description": "Updates the specified firewall rule with the data included in the request. Note that all fields will be updated if using PUT, even fields that are not specified. To update individual fields, please use PATCH instead." + }, + "get": { + "flatPath": "projects/{project}/global/firewalls/{firewall}", + "description": "Returns the specified firewall.", + "httpMethod": "GET", + "id": "compute.firewalls.get", + "response": { + "$ref": "Firewall" + }, + "parameterOrder": [ + "project", + "firewall" + ], + "path": "projects/{project}/global/firewalls/{firewall}", + "parameters": { + "project": { + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request." + }, + "firewall": { + "type": "string", + "location": "path", + "description": "Name of the firewall rule to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/firewalls", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "request": { + "$ref": "Firewall" + }, + "description": "Creates a firewall rule in the specified project using the data included in the request.", + "flatPath": "projects/{project}/global/firewalls", + "id": "compute.firewalls.insert", + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + } + }, + "patch": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/firewalls/{firewall}", + "id": "compute.firewalls.patch", + "path": "projects/{project}/global/firewalls/{firewall}", + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "firewall": { + "type": "string", + "required": true, + "location": "path", + "description": "Name of the firewall rule to patch.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "project", + "firewall" + ], + "description": "Updates the specified firewall rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "Firewall" + } + }, + "delete": { + "description": "Deletes the specified firewall.", + "flatPath": "projects/{project}/global/firewalls/{firewall}", + "path": "projects/{project}/global/firewalls/{firewall}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "firewall": { + "description": "Name of the firewall rule to delete.", + "type": "string", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "httpMethod": "DELETE", + "id": "compute.firewalls.delete", + "parameterOrder": [ + "project", + "firewall" + ] + } + } + }, + "reservations": { + "methods": { + "testIamPermissions": { + "flatPath": "projects/{project}/zones/{zone}/reservations/{resource}/testIamPermissions", + "response": { + "$ref": "TestPermissionsResponse" + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/zones/{zone}/reservations/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "description": "Returns permissions that a caller has on the specified resource.", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "id": "compute.reservations.testIamPermissions", + "parameters": { + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "required": true, + "location": "path", + "type": "string" + }, + "resource": { + "type": "string", + "description": "Name or id of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "type": "string", + "required": true, + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + } + }, + "aggregatedList": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "id": "compute.reservations.aggregatedList", + "path": "projects/{project}/aggregated/reservations", + "description": "Retrieves an aggregated list of reservations.", + "response": { + "$ref": "ReservationAggregatedList" + }, + "parameterOrder": [ + "project" + ], + "parameters": { + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "default": "500", + "minimum": "0", + "format": "uint32", + "type": "integer" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query", + "type": "boolean" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "project": { + "required": true, + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + } + }, + "flatPath": "projects/{project}/aggregated/reservations" + }, + "list": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "id": "compute.reservations.list", + "parameters": { + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request." + }, + "maxResults": { + "type": "integer", + "minimum": "0", + "location": "query", + "format": "uint32", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "zone": { + "description": "Name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path" + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + } + }, + "flatPath": "projects/{project}/zones/{zone}/reservations", + "path": "projects/{project}/zones/{zone}/reservations", + "parameterOrder": [ + "project", + "zone" + ], + "description": "A list of all the reservations that have been configured for the specified project in specified zone.", + "response": { + "$ref": "ReservationList" + } + }, + "setIamPolicy": { + "request": { + "$ref": "ZoneSetPolicyRequest" + }, + "parameters": { + "project": { + "location": "path", + "type": "string", + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "resource": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "description": "Name or id of the resource for this request.", + "type": "string" + }, + "zone": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "type": "string", + "location": "path" + } + }, + "flatPath": "projects/{project}/zones/{zone}/reservations/{resource}/setIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "httpMethod": "POST", + "response": { + "$ref": "Policy" + }, + "path": "projects/{project}/zones/{zone}/reservations/{resource}/setIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "id": "compute.reservations.setIamPolicy" + }, + "resize": { + "path": "projects/{project}/zones/{zone}/reservations/{reservation}/resize", + "id": "compute.reservations.resize", + "httpMethod": "POST", + "parameterOrder": [ + "project", + "zone", + "reservation" + ], + "description": "Resizes the reservation (applicable to standalone reservations only). For more information, read Modifying reservations.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "required": true + }, + "reservation": { + "type": "string", + "required": true, + "description": "Name of the reservation to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string", + "location": "path", + "description": "Name of the zone for this request." + } + }, + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}/resize", + "request": { + "$ref": "ReservationsResizeRequest" + }, + "response": { + "$ref": "Operation" + } + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.reservations.getIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "resource": { + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string", + "location": "path" + }, + "optionsRequestedPolicyVersion": { + "type": "integer", + "description": "Requested IAM Policy version.", + "location": "query", + "format": "int32" + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "type": "string", + "location": "path", + "required": true + }, + "project": { + "required": true, + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "flatPath": "projects/{project}/zones/{zone}/reservations/{resource}/getIamPolicy", + "path": "projects/{project}/zones/{zone}/reservations/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + } + }, + "insert": { + "httpMethod": "POST", + "description": "Creates a new reservation. For more information, read Reserving zonal resources.", + "request": { + "$ref": "Reservation" + }, + "parameterOrder": [ + "project", + "zone" + ], + "path": "projects/{project}/zones/{zone}/reservations", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/zones/{zone}/reservations", + "id": "compute.reservations.insert", + "parameters": { + "zone": { + "type": "string", + "description": "Name of the zone for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "description": "Project ID for this request." + }, + "reservation": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the reservation to retrieve.", + "location": "path" + }, + "zone": { + "required": true, + "location": "path", + "description": "Name of the zone for this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "response": { + "$ref": "Reservation" + }, + "id": "compute.reservations.get", + "httpMethod": "GET", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}", + "parameterOrder": [ + "project", + "zone", + "reservation" + ], + "path": "projects/{project}/zones/{zone}/reservations/{reservation}", + "description": "Retrieves information about the specified reservation." + }, + "delete": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "required": true, + "description": "Name of the zone for this request.", + "location": "path" + }, + "reservation": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path", + "description": "Name of the reservation to delete.", + "required": true + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true + } + }, + "parameterOrder": [ + "project", + "zone", + "reservation" + ], + "response": { + "$ref": "Operation" + }, + "id": "compute.reservations.delete", + "description": "Deletes the specified reservation.", + "httpMethod": "DELETE", + "path": "projects/{project}/zones/{zone}/reservations/{reservation}", + "flatPath": "projects/{project}/zones/{zone}/reservations/{reservation}" + } + } + }, + "publicDelegatedPrefixes": { + "methods": { + "insert": { + "flatPath": "projects/{project}/regions/{region}/publicDelegatedPrefixes", + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request." + }, + "region": { + "location": "path", + "required": true, + "description": "Name of the region of this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "request": { + "$ref": "PublicDelegatedPrefix" + }, + "description": "Creates a PublicDelegatedPrefix in the specified project in the given region using the parameters that are included in the request.", + "path": "projects/{project}/regions/{region}/publicDelegatedPrefixes", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "id": "compute.publicDelegatedPrefixes.insert" + }, + "list": { + "response": { + "$ref": "PublicDelegatedPrefixList" + }, + "httpMethod": "GET", + "parameterOrder": [ + "project", + "region" + ], + "description": "Lists the PublicDelegatedPrefixes for a project in the given region.", + "flatPath": "projects/{project}/regions/{region}/publicDelegatedPrefixes", + "id": "compute.publicDelegatedPrefixes.list", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/regions/{region}/publicDelegatedPrefixes", + "parameters": { + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "location": "query", + "type": "integer", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "default": "500" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "required": true + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "region": { + "description": "Name of the region of this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "type": "string" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + } + } + }, + "patch": { + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/publicDelegatedPrefixes/{publicDelegatedPrefix}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.publicDelegatedPrefixes.patch", + "description": "Patches the specified PublicDelegatedPrefix resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "parameterOrder": [ + "project", + "region", + "publicDelegatedPrefix" + ], + "request": { + "$ref": "PublicDelegatedPrefix" + }, + "flatPath": "projects/{project}/regions/{region}/publicDelegatedPrefixes/{publicDelegatedPrefix}", + "parameters": { + "publicDelegatedPrefix": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string", + "description": "Name of the PublicDelegatedPrefix resource to patch." + }, + "project": { + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder" + }, + "region": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string", + "description": "Name of the region for this request." + } + }, + "httpMethod": "PATCH" + }, + "delete": { + "path": "projects/{project}/regions/{region}/publicDelegatedPrefixes/{publicDelegatedPrefix}", + "id": "compute.publicDelegatedPrefixes.delete", + "description": "Deletes the specified PublicDelegatedPrefix in the given region.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "DELETE", + "parameterOrder": [ + "project", + "region", + "publicDelegatedPrefix" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path" + }, + "publicDelegatedPrefix": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string", + "description": "Name of the PublicDelegatedPrefix resource to delete." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "type": "string", + "location": "query" + }, + "region": { + "location": "path", + "description": "Name of the region of this request.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/regions/{region}/publicDelegatedPrefixes/{publicDelegatedPrefix}" + }, + "get": { + "path": "projects/{project}/regions/{region}/publicDelegatedPrefixes/{publicDelegatedPrefix}", + "httpMethod": "GET", + "description": "Returns the specified PublicDelegatedPrefix resource in the given region.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/regions/{region}/publicDelegatedPrefixes/{publicDelegatedPrefix}", + "response": { + "$ref": "PublicDelegatedPrefix" + }, + "id": "compute.publicDelegatedPrefixes.get", + "parameters": { + "publicDelegatedPrefix": { + "required": true, + "type": "string", + "description": "Name of the PublicDelegatedPrefix resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string" + }, + "region": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the region of this request.", + "required": true + } + }, + "parameterOrder": [ + "project", + "region", + "publicDelegatedPrefix" + ] + }, + "aggregatedList": { + "description": "Lists all PublicDelegatedPrefix resources owned by the specific project across all scopes.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/aggregated/publicDelegatedPrefixes", + "parameters": { + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "type": "boolean", + "location": "query" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "maxResults": { + "default": "500", + "minimum": "0", + "location": "query", + "format": "uint32", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "project": { + "location": "path", + "description": "Name of the project scoping this request.", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "response": { + "$ref": "PublicDelegatedPrefixAggregatedList" + }, + "path": "projects/{project}/aggregated/publicDelegatedPrefixes", + "id": "compute.publicDelegatedPrefixes.aggregatedList", + "httpMethod": "GET", + "parameterOrder": [ + "project" + ] + } + } + }, + "images": { + "methods": { + "list": { + "response": { + "$ref": "ImageList" + }, + "flatPath": "projects/{project}/global/images", + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/global/images", + "parameters": { + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "maxResults": { + "location": "query", + "type": "integer", + "minimum": "0", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500" + } + }, + "id": "compute.images.list", + "description": "Retrieves the list of custom images available to the specified project. Custom images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 8. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "response": { + "$ref": "Policy" + }, + "parameters": { + "optionsRequestedPolicyVersion": { + "location": "query", + "type": "integer", + "format": "int32", + "description": "Requested IAM Policy version." + }, + "resource": { + "required": true, + "type": "string", + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "type": "string", + "description": "Project ID for this request." + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "path": "projects/{project}/global/images/{resource}/getIamPolicy", + "flatPath": "projects/{project}/global/images/{resource}/getIamPolicy", + "id": "compute.images.getIamPolicy", + "httpMethod": "GET" + }, + "setIamPolicy": { + "flatPath": "projects/{project}/global/images/{resource}/setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "parameterOrder": [ + "project", + "resource" + ], + "httpMethod": "POST", + "response": { + "$ref": "Policy" + }, + "id": "compute.images.setIamPolicy", + "request": { + "$ref": "GlobalSetPolicyRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/global/images/{resource}/setIamPolicy", + "parameters": { + "resource": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name or id of the resource for this request.", + "type": "string", + "required": true + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + } + } + }, + "getFromFamily": { + "path": "projects/{project}/global/images/family/{family}", + "description": "Returns the latest image that is part of an image family and is not deprecated.", + "httpMethod": "GET", + "response": { + "$ref": "Image" + }, + "parameters": { + "project": { + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "family": { + "required": true, + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the image family to search for." + } + }, + "parameterOrder": [ + "project", + "family" + ], + "id": "compute.images.getFromFamily", + "flatPath": "projects/{project}/global/images/family/{family}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "deprecate": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/global/images/{image}/deprecate", + "request": { + "$ref": "DeprecationStatus" + }, + "parameters": { + "image": { + "required": true, + "description": "Image name.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "location": "path" + } + }, + "id": "compute.images.deprecate", + "httpMethod": "POST", + "description": "Sets the deprecation status of an image. If an empty request body is given, clears the deprecation status instead.", + "parameterOrder": [ + "project", + "image" + ], + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/images/{image}/deprecate" + }, + "insert": { + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request." + }, + "forceCreate": { + "description": "Force image creation if true.", + "location": "query", + "type": "boolean" + } + }, + "id": "compute.images.insert", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "path": "projects/{project}/global/images", + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "flatPath": "projects/{project}/global/images", + "request": { + "$ref": "Image" + }, + "description": "Creates an image in the specified project using the data included in the request." + }, + "delete": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/images/{image}", + "id": "compute.images.delete", + "httpMethod": "DELETE", + "parameters": { + "image": { + "description": "Name of the image resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "required": true, + "type": "string" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true + } + }, + "parameterOrder": [ + "project", + "image" + ], + "path": "projects/{project}/global/images/{image}", + "response": { + "$ref": "Operation" + }, + "description": "Deletes the specified image." + }, + "get": { + "parameterOrder": [ + "project", + "image" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/global/images/{image}", + "description": "Returns the specified image. Gets a list of available images by making a list() request.", + "flatPath": "projects/{project}/global/images/{image}", + "parameters": { + "image": { + "description": "Name of the image resource to return.", + "location": "path", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "id": "compute.images.get", + "httpMethod": "GET", + "response": { + "$ref": "Image" + } + }, + "testIamPermissions": { + "id": "compute.images.testIamPermissions", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/global/images/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "description": "Returns permissions that a caller has on the specified resource.", + "response": { + "$ref": "TestPermissionsResponse" + }, + "flatPath": "projects/{project}/global/images/{resource}/testIamPermissions", + "httpMethod": "POST", + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "resource": { + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name or id of the resource for this request.", + "location": "path", + "type": "string" + }, + "project": { + "location": "path", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + } + } + }, + "patch": { + "flatPath": "projects/{project}/global/images/{image}", + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "image": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "description": "Name of the image resource to patch.", + "type": "string" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "description": "Project ID for this request." + } + }, + "parameterOrder": [ + "project", + "image" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "PATCH", + "path": "projects/{project}/global/images/{image}", + "request": { + "$ref": "Image" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.images.patch", + "description": "Patches the specified image with the data included in the request. Only the following fields can be modified: family, description, deprecation status." + }, + "setLabels": { + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "flatPath": "projects/{project}/global/images/{resource}/setLabels", + "path": "projects/{project}/global/images/{resource}/setLabels", + "description": "Sets the labels on an image. To learn more about labels, read the Labeling Resources documentation.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "resource": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "description": "Name or id of the resource for this request.", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "type": "string" + } + }, + "httpMethod": "POST", + "id": "compute.images.setLabels" + } + } + }, + "regionAutoscalers": { + "methods": { + "delete": { + "id": "compute.regionAutoscalers.delete", + "flatPath": "projects/{project}/regions/{region}/autoscalers/{autoscaler}", + "httpMethod": "DELETE", + "path": "projects/{project}/regions/{region}/autoscalers/{autoscaler}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "description": "Name of the region scoping this request." + }, + "autoscaler": { + "description": "Name of the autoscaler to delete.", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + } + }, + "description": "Deletes the specified autoscaler." + }, + "update": { + "description": "Updates an autoscaler in the specified project using the data included in the request.", + "flatPath": "projects/{project}/regions/{region}/autoscalers", + "response": { + "$ref": "Operation" + }, + "id": "compute.regionAutoscalers.update", + "parameterOrder": [ + "project", + "region" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/regions/{region}/autoscalers", + "parameters": { + "region": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "description": "Name of the region scoping this request." + }, + "project": { + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "autoscaler": { + "description": "Name of the autoscaler to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "query" + } + }, + "httpMethod": "PUT", + "request": { + "$ref": "Autoscaler" + } + }, + "list": { + "response": { + "$ref": "RegionAutoscalerList" + }, + "path": "projects/{project}/regions/{region}/autoscalers", + "id": "compute.regionAutoscalers.list", + "parameters": { + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "type": "string", + "location": "path", + "required": true + }, + "maxResults": { + "type": "integer", + "minimum": "0", + "location": "query", + "format": "uint32", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "location": "path" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + } + }, + "flatPath": "projects/{project}/regions/{region}/autoscalers", + "description": "Retrieves a list of autoscalers contained within the specified region.", + "parameterOrder": [ + "project", + "region" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET" + }, + "insert": { + "flatPath": "projects/{project}/regions/{region}/autoscalers", + "description": "Creates an autoscaler in the specified project using the data included in the request.", + "path": "projects/{project}/regions/{region}/autoscalers", + "parameters": { + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "required": true, + "description": "Name of the region scoping this request.", + "location": "path" + }, + "project": { + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "Autoscaler" + }, + "id": "compute.regionAutoscalers.insert", + "httpMethod": "POST", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "region" + ] + }, + "patch": { + "request": { + "$ref": "Autoscaler" + }, + "parameterOrder": [ + "project", + "region" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "PATCH", + "flatPath": "projects/{project}/regions/{region}/autoscalers", + "path": "projects/{project}/regions/{region}/autoscalers", + "response": { + "$ref": "Operation" + }, + "id": "compute.regionAutoscalers.patch", + "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "parameters": { + "autoscaler": { + "description": "Name of the autoscaler to patch.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "query", + "type": "string" + }, + "region": { + "required": true, + "location": "path", + "description": "Name of the region scoping this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request." + } + } + }, + "get": { + "response": { + "$ref": "Autoscaler" + }, + "id": "compute.regionAutoscalers.get", + "path": "projects/{project}/regions/{region}/autoscalers/{autoscaler}", + "description": "Returns the specified autoscaler.", + "parameters": { + "project": { + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string" + }, + "region": { + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "type": "string" + }, + "autoscaler": { + "type": "string", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the autoscaler to return." + } + }, + "flatPath": "projects/{project}/regions/{region}/autoscalers/{autoscaler}", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "region", + "autoscaler" + ] + } + } + }, + "targetHttpProxies": { + "methods": { + "aggregatedList": { + "id": "compute.targetHttpProxies.aggregatedList", + "flatPath": "projects/{project}/aggregated/targetHttpProxies", + "path": "projects/{project}/aggregated/targetHttpProxies", + "description": "Retrieves the list of all TargetHttpProxy resources, regional and global, available to the specified project.", + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "description": "Name of the project scoping this request." + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "type": "integer", + "location": "query", + "format": "uint32", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0" + } + }, + "response": { + "$ref": "TargetHttpProxyAggregatedList" + } + }, + "get": { + "flatPath": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", + "parameters": { + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to return.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "id": "compute.targetHttpProxies.get", + "response": { + "$ref": "TargetHttpProxy" + }, + "httpMethod": "GET", + "description": "Returns the specified TargetHttpProxy resource. Gets a list of available target HTTP proxies by making a list() request.", + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "path": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", + "path": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "targetHttpProxy": { + "type": "string", + "required": true, + "description": "Name of the TargetHttpProxy resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "id": "compute.targetHttpProxies.delete", + "description": "Deletes the specified TargetHttpProxy resource." + }, + "setUrlMap": { + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "httpMethod": "POST", + "id": "compute.targetHttpProxies.setUrlMap", + "description": "Changes the URL map for TargetHttpProxy.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "type": "string" + }, + "targetHttpProxy": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "required": true, + "description": "Name of the TargetHttpProxy to set a URL map for." + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "path": "projects/{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "request": { + "$ref": "UrlMapReference" + } + }, + "insert": { + "parameterOrder": [ + "project" + ], + "description": "Creates a TargetHttpProxy resource in the specified project using the data included in the request.", + "request": { + "$ref": "TargetHttpProxy" + }, + "id": "compute.targetHttpProxies.insert", + "parameters": { + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "flatPath": "projects/{project}/global/targetHttpProxies", + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "path": "projects/{project}/global/targetHttpProxies", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/global/targetHttpProxies", + "id": "compute.targetHttpProxies.list", + "httpMethod": "GET", + "description": "Retrieves the list of TargetHttpProxy resources available to the specified project.", + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/global/targetHttpProxies", + "parameters": { + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "type": "integer", + "minimum": "0", + "location": "query", + "format": "uint32" + } + }, + "response": { + "$ref": "TargetHttpProxyList" + } + }, + "patch": { + "httpMethod": "PATCH", + "response": { + "$ref": "Operation" + }, + "description": "Patches the specified TargetHttpProxy resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "parameters": { + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to patch.", + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + } + }, + "flatPath": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", + "request": { + "$ref": "TargetHttpProxy" + }, + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "path": "projects/{project}/global/targetHttpProxies/{targetHttpProxy}", + "id": "compute.targetHttpProxies.patch", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "globalNetworkEndpointGroups": { + "methods": { + "listNetworkEndpoints": { + "path": "projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints", + "flatPath": "projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints", + "parameters": { + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "type": "string", + "location": "path" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "format": "uint32", + "minimum": "0", + "location": "query", + "type": "integer" + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "networkEndpointGroup": { + "type": "string", + "location": "path", + "required": true, + "description": "The name of the network endpoint group from which you want to generate a list of included network endpoints. It should comply with RFC1035." + } + }, + "httpMethod": "POST", + "parameterOrder": [ + "project", + "networkEndpointGroup" + ], + "description": "Lists the network endpoints in the specified network endpoint group.", + "id": "compute.globalNetworkEndpointGroups.listNetworkEndpoints", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "NetworkEndpointGroupsListNetworkEndpoints" + } + }, + "insert": { + "request": { + "$ref": "NetworkEndpointGroup" + }, + "description": "Creates a network endpoint group in the specified project using the parameters that are included in the request.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project" + ], + "flatPath": "projects/{project}/global/networkEndpointGroups", + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "path": "projects/{project}/global/networkEndpointGroups", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "id": "compute.globalNetworkEndpointGroups.insert" + }, + "list": { + "description": "Retrieves the list of network endpoint groups that are located in the specified project.", + "path": "projects/{project}/global/networkEndpointGroups", + "response": { + "$ref": "NetworkEndpointGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "flatPath": "projects/{project}/global/networkEndpointGroups", + "parameterOrder": [ + "project" + ], + "id": "compute.globalNetworkEndpointGroups.list", + "parameters": { + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "project": { + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "maxResults": { + "location": "query", + "default": "500", + "minimum": "0", + "type": "integer", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + } + } + }, + "detachNetworkEndpoints": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints", + "parameterOrder": [ + "project", + "networkEndpointGroup" + ], + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "GlobalNetworkEndpointGroupsDetachEndpointsRequest" + }, + "id": "compute.globalNetworkEndpointGroups.detachNetworkEndpoints", + "httpMethod": "POST", + "parameters": { + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "type": "string" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "networkEndpointGroup": { + "required": true, + "location": "path", + "description": "The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035.", + "type": "string" + } + }, + "description": "Detach the network endpoint from the specified network endpoint group.", + "flatPath": "projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints" + }, + "delete": { + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "networkEndpointGroup": { + "type": "string", + "location": "path", + "required": true, + "description": "The name of the network endpoint group to delete. It should comply with RFC1035." + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "response": { + "$ref": "Operation" + }, + "httpMethod": "DELETE", + "parameterOrder": [ + "project", + "networkEndpointGroup" + ], + "path": "projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.globalNetworkEndpointGroups.delete", + "flatPath": "projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}", + "description": "Deletes the specified network endpoint group.Note that the NEG cannot be deleted if there are backend services referencing it." + }, + "get": { + "description": "Returns the specified network endpoint group. Gets a list of available network endpoint groups by making a list() request.", + "id": "compute.globalNetworkEndpointGroups.get", + "parameterOrder": [ + "project", + "networkEndpointGroup" + ], + "response": { + "$ref": "NetworkEndpointGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "parameters": { + "project": { + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "networkEndpointGroup": { + "required": true, + "location": "path", + "type": "string", + "description": "The name of the network endpoint group. It should comply with RFC1035." + } + }, + "flatPath": "projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}", + "path": "projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}" + }, + "attachNetworkEndpoints": { + "response": { + "$ref": "Operation" + }, + "description": "Attach a network endpoint to the specified network endpoint group.", + "flatPath": "projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "networkEndpointGroup" + ], + "parameters": { + "networkEndpointGroup": { + "description": "The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035.", + "location": "path", + "type": "string", + "required": true + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "path": "projects/{project}/global/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints", + "request": { + "$ref": "GlobalNetworkEndpointGroupsAttachEndpointsRequest" + }, + "httpMethod": "POST", + "id": "compute.globalNetworkEndpointGroups.attachNetworkEndpoints" + } + } + }, + "regionInstances": { + "methods": { + "bulkInsert": { + "flatPath": "projects/{project}/regions/{region}/instances/bulkInsert", + "path": "projects/{project}/regions/{region}/instances/bulkInsert", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region" + ], + "description": "Creates multiple instances in a given region. Count specifies the number of instances to create.", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "region": { + "location": "path", + "type": "string", + "required": true, + "description": "The name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "project": { + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + } + }, + "response": { + "$ref": "Operation" + }, + "id": "compute.regionInstances.bulkInsert", + "request": { + "$ref": "BulkInsertInstanceResource" + }, + "httpMethod": "POST" + } + } + }, + "regionDisks": { + "methods": { + "resize": { + "id": "compute.regionDisks.resize", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "region": { + "required": true, + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request." + }, + "disk": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path", + "description": "Name of the regional persistent disk." + }, + "project": { + "type": "string", + "required": true, + "location": "path", + "description": "The project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "RegionDisksResizeRequest" + }, + "parameterOrder": [ + "project", + "region", + "disk" + ], + "response": { + "$ref": "Operation" + }, + "description": "Resizes the specified regional persistent disk.", + "path": "projects/{project}/regions/{region}/disks/{disk}/resize", + "flatPath": "projects/{project}/regions/{region}/disks/{disk}/resize" + }, + "testIamPermissions": { + "flatPath": "projects/{project}/regions/{region}/disks/{resource}/testIamPermissions", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "type": "string", + "location": "path" + }, + "resource": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path", + "description": "Name or id of the resource for this request." + }, + "region": { + "description": "The name of the region for this request.", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/disks/{resource}/testIamPermissions", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "description": "Returns permissions that a caller has on the specified resource.", + "response": { + "$ref": "TestPermissionsResponse" + }, + "request": { + "$ref": "TestPermissionsRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "POST", + "id": "compute.regionDisks.testIamPermissions" + }, + "setIamPolicy": { + "parameterOrder": [ + "project", + "region", + "resource" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "flatPath": "projects/{project}/regions/{region}/disks/{resource}/setIamPolicy", + "parameters": { + "region": { + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "description": "The name of the region for this request." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request.", + "required": true, + "location": "path" + }, + "resource": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "required": true, + "type": "string", + "description": "Name or id of the resource for this request." + } + }, + "id": "compute.regionDisks.setIamPolicy", + "response": { + "$ref": "Policy" + }, + "request": { + "$ref": "RegionSetPolicyRequest" + }, + "path": "projects/{project}/regions/{region}/disks/{resource}/setIamPolicy", + "httpMethod": "POST" + }, + "list": { + "parameterOrder": [ + "project", + "region" + ], + "flatPath": "projects/{project}/regions/{region}/disks", + "description": "Retrieves the list of persistent disks contained within the specified region.", + "id": "compute.regionDisks.list", + "path": "projects/{project}/regions/{region}/disks", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "DiskList" + }, + "httpMethod": "GET", + "parameters": { + "project": { + "required": true, + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "maxResults": { + "format": "uint32", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer", + "minimum": "0", + "default": "500" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "region": { + "location": "path", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + } + } + }, + "insert": { + "path": "projects/{project}/regions/{region}/disks", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "flatPath": "projects/{project}/regions/{region}/disks", + "parameterOrder": [ + "project", + "region" + ], + "id": "compute.regionDisks.insert", + "response": { + "$ref": "Operation" + }, + "parameters": { + "sourceImage": { + "location": "query", + "type": "string", + "description": "Source image to restore onto a disk. This field is optional." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "required": true + } + }, + "request": { + "$ref": "Disk" + }, + "description": "Creates a persistent regional disk in the specified project using the data included in the request." + }, + "setLabels": { + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "flatPath": "projects/{project}/regions/{region}/disks/{resource}/setLabels", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "id": "compute.regionDisks.setLabels", + "parameters": { + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "The region for this request.", + "location": "path" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "location": "path" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "resource": { + "description": "Name or id of the resource for this request.", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "description": "Sets the labels on the target regional disk.", + "path": "projects/{project}/regions/{region}/disks/{resource}/setLabels", + "response": { + "$ref": "Operation" + } + }, + "addResourcePolicies": { + "parameters": { + "project": { + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path", + "type": "string", + "description": "The name of the region for this request." + }, + "disk": { + "type": "string", + "location": "path", + "required": true, + "description": "The disk name for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "request": { + "$ref": "RegionDisksAddResourcePoliciesRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies", + "path": "projects/{project}/regions/{region}/disks/{disk}/addResourcePolicies", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "response": { + "$ref": "Operation" + }, + "description": "Adds existing resource policies to a regional disk. You can only add one policy which will be applied to this disk for scheduling snapshot creation.", + "httpMethod": "POST", + "id": "compute.regionDisks.addResourcePolicies" + }, + "removeResourcePolicies": { + "path": "projects/{project}/regions/{region}/disks/{disk}/removeResourcePolicies", + "description": "Removes resource policies from a regional disk.", + "flatPath": "projects/{project}/regions/{region}/disks/{disk}/removeResourcePolicies", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "id": "compute.regionDisks.removeResourcePolicies", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "request": { + "$ref": "RegionDisksRemoveResourcePoliciesRequest" + }, + "response": { + "$ref": "Operation" + }, + "parameters": { + "disk": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "The disk name for this request.", + "required": true, + "location": "path" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "region": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the region for this request.", + "location": "path" + } + } + }, + "get": { + "description": "Returns a specified regional persistent disk.", + "path": "projects/{project}/regions/{region}/disks/{disk}", + "flatPath": "projects/{project}/regions/{region}/disks/{disk}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "response": { + "$ref": "Disk" + }, + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "type": "string", + "description": "Project ID for this request." + }, + "disk": { + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the regional persistent disk to return.", + "type": "string" + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "description": "Name of the region for this request.", + "type": "string" + } + }, + "id": "compute.regionDisks.get", + "parameterOrder": [ + "project", + "region", + "disk" + ] + }, + "getIamPolicy": { + "parameters": { + "optionsRequestedPolicyVersion": { + "format": "int32", + "description": "Requested IAM Policy version.", + "location": "query", + "type": "integer" + }, + "resource": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "description": "Name or id of the resource for this request.", + "location": "path" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true + }, + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path", + "description": "The name of the region for this request." + } + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.regionDisks.getIamPolicy", + "flatPath": "projects/{project}/regions/{region}/disks/{resource}/getIamPolicy", + "path": "projects/{project}/regions/{region}/disks/{resource}/getIamPolicy", + "httpMethod": "GET", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists." + }, + "delete": { + "id": "compute.regionDisks.delete", + "path": "projects/{project}/regions/{region}/disks/{disk}", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "region", + "disk" + ], + "description": "Deletes the specified regional persistent disk. Deleting a regional disk removes all the replicas of its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/disks/{disk}", + "parameters": { + "disk": { + "description": "Name of the regional persistent disk to delete.", + "required": true, + "type": "string", + "location": "path" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "region": { + "location": "path", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path" + } + }, + "httpMethod": "DELETE" + }, + "createSnapshot": { + "path": "projects/{project}/regions/{region}/disks/{disk}/createSnapshot", + "parameterOrder": [ + "project", + "region", + "disk" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.regionDisks.createSnapshot", + "flatPath": "projects/{project}/regions/{region}/disks/{disk}/createSnapshot", + "request": { + "$ref": "Snapshot" + }, + "httpMethod": "POST", + "description": "Creates a snapshot of this regional disk.", + "response": { + "$ref": "Operation" + }, + "parameters": { + "region": { + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request." + }, + "disk": { + "location": "path", + "type": "string", + "description": "Name of the regional persistent disk to snapshot.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + } + } + } + }, + "globalPublicDelegatedPrefixes": { + "methods": { + "insert": { + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/publicDelegatedPrefixes", + "id": "compute.globalPublicDelegatedPrefixes.insert", + "request": { + "$ref": "PublicDelegatedPrefix" + }, + "description": "Creates a global PublicDelegatedPrefix in the specified project using the parameters that are included in the request.", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "project": { + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request." + } + }, + "httpMethod": "POST", + "path": "projects/{project}/global/publicDelegatedPrefixes", + "response": { + "$ref": "Operation" + } + }, + "patch": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "publicDelegatedPrefix" + ], + "flatPath": "projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}", + "path": "projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}", + "id": "compute.globalPublicDelegatedPrefixes.patch", + "parameters": { + "publicDelegatedPrefix": { + "required": true, + "type": "string", + "description": "Name of the PublicDelegatedPrefix resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + } + }, + "description": "Patches the specified global PublicDelegatedPrefix resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "request": { + "$ref": "PublicDelegatedPrefix" + }, + "httpMethod": "PATCH" + }, + "list": { + "parameterOrder": [ + "project" + ], + "parameters": { + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "maxResults": { + "format": "uint32", + "type": "integer", + "location": "query", + "minimum": "0", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + } + }, + "httpMethod": "GET", + "path": "projects/{project}/global/publicDelegatedPrefixes", + "description": "Lists the global PublicDelegatedPrefixes for a project.", + "flatPath": "projects/{project}/global/publicDelegatedPrefixes", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.globalPublicDelegatedPrefixes.list", + "response": { + "$ref": "PublicDelegatedPrefixList" + } + }, + "get": { + "path": "projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}", + "parameters": { + "publicDelegatedPrefix": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "description": "Name of the PublicDelegatedPrefix resource to return.", + "required": true, + "location": "path" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path" + } + }, + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "publicDelegatedPrefix" + ], + "id": "compute.globalPublicDelegatedPrefixes.get", + "flatPath": "projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}", + "response": { + "$ref": "PublicDelegatedPrefix" + }, + "description": "Returns the specified global PublicDelegatedPrefix resource." + }, + "delete": { + "path": "projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}", + "flatPath": "projects/{project}/global/publicDelegatedPrefixes/{publicDelegatedPrefix}", + "id": "compute.globalPublicDelegatedPrefixes.delete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "publicDelegatedPrefix" + ], + "parameters": { + "publicDelegatedPrefix": { + "description": "Name of the PublicDelegatedPrefix resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path", + "required": true + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request." + } + }, + "description": "Deletes the specified global PublicDelegatedPrefix.", + "response": { + "$ref": "Operation" + }, + "httpMethod": "DELETE" + } + } + }, + "packetMirrorings": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "description": "Deletes the specified PacketMirroring resource.", + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request.", + "location": "path", + "required": true, + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "description": "Project ID for this request." + }, + "packetMirroring": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string", + "location": "path", + "description": "Name of the PacketMirroring resource to delete." + } + }, + "path": "projects/{project}/regions/{region}/packetMirrorings/{packetMirroring}", + "flatPath": "projects/{project}/regions/{region}/packetMirrorings/{packetMirroring}", + "parameterOrder": [ + "project", + "region", + "packetMirroring" + ], + "id": "compute.packetMirrorings.delete", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "description": "Returns permissions that a caller has on the specified resource.", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.packetMirrorings.testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "resource": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "type": "string", + "required": true, + "description": "Name or id of the resource for this request." + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the region for this request.", + "type": "string", + "location": "path", + "required": true + } + }, + "path": "projects/{project}/regions/{region}/packetMirrorings/{resource}/testIamPermissions", + "flatPath": "projects/{project}/regions/{region}/packetMirrorings/{resource}/testIamPermissions", + "response": { + "$ref": "TestPermissionsResponse" + } + }, + "patch": { + "id": "compute.packetMirrorings.patch", + "parameterOrder": [ + "project", + "region", + "packetMirroring" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "region": { + "location": "path", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "packetMirroring": { + "required": true, + "description": "Name of the PacketMirroring resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + } + }, + "flatPath": "projects/{project}/regions/{region}/packetMirrorings/{packetMirroring}", + "request": { + "$ref": "PacketMirroring" + }, + "httpMethod": "PATCH", + "path": "projects/{project}/regions/{region}/packetMirrorings/{packetMirroring}", + "description": "Patches the specified PacketMirroring resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "path": "projects/{project}/aggregated/packetMirrorings", + "flatPath": "projects/{project}/aggregated/packetMirrorings", + "id": "compute.packetMirrorings.aggregatedList", + "parameters": { + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "location": "query", + "minimum": "0", + "type": "integer", + "format": "uint32" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path", + "description": "Project ID for this request." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "type": "boolean", + "location": "query" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "PacketMirroringAggregatedList" + }, + "description": "Retrieves an aggregated list of packetMirrorings." + }, + "list": { + "parameterOrder": [ + "project", + "region" + ], + "flatPath": "projects/{project}/regions/{region}/packetMirrorings", + "id": "compute.packetMirrorings.list", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "PacketMirroringList" + }, + "httpMethod": "GET", + "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string" + }, + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request.", + "type": "string", + "location": "path" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "location": "query", + "minimum": "0", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + } + }, + "path": "projects/{project}/regions/{region}/packetMirrorings", + "description": "Retrieves a list of PacketMirroring resources available to the specified project and region." + }, + "get": { + "response": { + "$ref": "PacketMirroring" + }, + "flatPath": "projects/{project}/regions/{region}/packetMirrorings/{packetMirroring}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "id": "compute.packetMirrorings.get", + "parameterOrder": [ + "project", + "region", + "packetMirroring" + ], + "description": "Returns the specified PacketMirroring resource.", + "path": "projects/{project}/regions/{region}/packetMirrorings/{packetMirroring}", + "parameters": { + "region": { + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request.", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "type": "string", + "description": "Project ID for this request." + }, + "packetMirroring": { + "type": "string", + "description": "Name of the PacketMirroring resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path" + } + } + }, + "insert": { + "httpMethod": "POST", + "path": "projects/{project}/regions/{region}/packetMirrorings", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true + }, + "region": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "description": "Name of the region for this request.", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "flatPath": "projects/{project}/regions/{region}/packetMirrorings", + "request": { + "$ref": "PacketMirroring" + }, + "description": "Creates a PacketMirroring resource in the specified project and region using the data included in the request.", + "response": { + "$ref": "Operation" + }, + "id": "compute.packetMirrorings.insert" + } + } + }, + "globalOperations": { + "methods": { + "wait": { + "description": "Waits for the specified Operation resource to return as `DONE` or for the request to approach the 2 minute deadline, and retrieves the specified Operation resource. This method differs from the `GET` method in that it waits for no more than the default deadline (2 minutes) and then returns the current state of the operation, which might be `DONE` or still in progress. This method is called on a best-effort basis. Specifically: - In uncommon cases, when the server is overloaded, the request might return before the default deadline is reached, or might return after zero seconds. - If the default deadline is reached, there is no guarantee that the operation is actually done when the method returns. Be prepared to retry if the operation is not `DONE`. ", + "httpMethod": "POST", + "parameterOrder": [ + "project", + "operation" + ], + "path": "projects/{project}/global/operations/{operation}/wait", + "id": "compute.globalOperations.wait", + "parameters": { + "operation": { + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "description": "Name of the Operations resource to return." + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "location": "path" + } + }, + "flatPath": "projects/{project}/global/operations/{operation}/wait", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "Operation" + } + }, + "delete": { + "flatPath": "projects/{project}/global/operations/{operation}", + "parameterOrder": [ + "project", + "operation" + ], + "id": "compute.globalOperations.delete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "operation": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the Operations resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "required": true + } + }, + "path": "projects/{project}/global/operations/{operation}", + "httpMethod": "DELETE", + "description": "Deletes the specified Operations resource." + }, + "aggregatedList": { + "response": { + "$ref": "OperationAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves an aggregated list of all operations.", + "path": "projects/{project}/aggregated/operations", + "parameterOrder": [ + "project" + ], + "flatPath": "projects/{project}/aggregated/operations", + "parameters": { + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "type": "integer", + "location": "query", + "minimum": "0", + "format": "uint32" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true + }, + "includeAllScopes": { + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query" + } + }, + "httpMethod": "GET", + "id": "compute.globalOperations.aggregatedList" + }, + "list": { + "id": "compute.globalOperations.list", + "description": "Retrieves a list of Operation resources contained within the specified project.", + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "OperationList" + }, + "path": "projects/{project}/global/operations", + "parameters": { + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "type": "integer", + "default": "500", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "format": "uint32" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "project": { + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + } + }, + "flatPath": "projects/{project}/global/operations", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET" + }, + "get": { + "path": "projects/{project}/global/operations/{operation}", + "flatPath": "projects/{project}/global/operations/{operation}", + "id": "compute.globalOperations.get", + "description": "Retrieves the specified Operations resource.", + "parameters": { + "project": { + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string" + }, + "operation": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the Operations resource to return.", + "type": "string", + "location": "path", + "required": true + } + }, + "parameterOrder": [ + "project", + "operation" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "GET" + } + } + }, + "interconnectLocations": { + "methods": { + "get": { + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/global/interconnectLocations/{interconnectLocation}", + "path": "projects/{project}/global/interconnectLocations/{interconnectLocation}", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path" + }, + "interconnectLocation": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the interconnect location to return.", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "interconnectLocation" + ], + "response": { + "$ref": "InterconnectLocation" + }, + "id": "compute.interconnectLocations.get", + "description": "Returns the details for the specified interconnect location. Gets a list of available interconnect locations by making a list() request." + }, + "list": { + "flatPath": "projects/{project}/global/interconnectLocations", + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "InterconnectLocationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.interconnectLocations.list", + "httpMethod": "GET", + "path": "projects/{project}/global/interconnectLocations", + "parameters": { + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "maxResults": { + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "minimum": "0", + "type": "integer", + "default": "500" + } + }, + "description": "Retrieves the list of interconnect locations available to the specified project." + } + } + }, + "regionTargetHttpsProxies": { + "methods": { + "list": { + "path": "projects/{project}/regions/{region}/targetHttpsProxies", + "id": "compute.regionTargetHttpsProxies.list", + "httpMethod": "GET", + "description": "Retrieves the list of TargetHttpsProxy resources available to the specified project in the specified region.", + "response": { + "$ref": "TargetHttpsProxyList" + }, + "parameterOrder": [ + "project", + "region" + ], + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "project": { + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request." + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "region": { + "description": "Name of the region scoping this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "maxResults": { + "type": "integer", + "default": "500", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "format": "uint32" + } + } + }, + "setUrlMap": { + "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "region": { + "type": "string", + "required": true, + "description": "Name of the region scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "type": "string" + }, + "targetHttpsProxy": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the TargetHttpsProxy to set a URL map for.", + "type": "string", + "required": true, + "location": "path" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request.", + "required": true, + "location": "path" + } + }, + "id": "compute.regionTargetHttpsProxies.setUrlMap", + "description": "Changes the URL map for TargetHttpsProxy.", + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", + "request": { + "$ref": "UrlMapReference" + }, + "parameterOrder": [ + "project", + "region", + "targetHttpsProxy" + ], + "httpMethod": "POST" + }, + "get": { + "parameterOrder": [ + "project", + "region", + "targetHttpsProxy" + ], + "response": { + "$ref": "TargetHttpsProxy" + }, + "parameters": { + "project": { + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to return.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path" + }, + "region": { + "location": "path", + "description": "Name of the region scoping this request.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "id": "compute.regionTargetHttpsProxies.get", + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "description": "Returns the specified TargetHttpsProxy resource in the specified region. Gets a list of available target HTTP proxies by making a list() request.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "httpMethod": "GET" + }, + "insert": { + "httpMethod": "POST", + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "TargetHttpsProxy" + }, + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/targetHttpsProxies", + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies", + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true + }, + "region": { + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the region scoping this request." + } + }, + "id": "compute.regionTargetHttpsProxies.insert", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Creates a TargetHttpsProxy resource in the specified project and region using the data included in the request." + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "description": "Deletes the specified TargetHttpsProxy resource.", + "parameterOrder": [ + "project", + "region", + "targetHttpsProxy" + ], + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}", + "httpMethod": "DELETE", + "id": "compute.regionTargetHttpsProxies.delete", + "parameters": { + "targetHttpsProxy": { + "description": "Name of the TargetHttpsProxy resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string", + "location": "path" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true, + "description": "Project ID for this request." + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "location": "path", + "type": "string", + "required": true + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query" + } + } + }, + "setSslCertificates": { + "request": { + "$ref": "RegionTargetHttpsProxiesSetSslCertificatesRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "flatPath": "projects/{project}/regions/{region}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "parameterOrder": [ + "project", + "region", + "targetHttpsProxy" + ], + "description": "Replaces SslCertificates for TargetHttpsProxy.", + "httpMethod": "POST", + "id": "compute.regionTargetHttpsProxies.setSslCertificates", + "parameters": { + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query" + }, + "targetHttpsProxy": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "type": "string", + "required": true, + "description": "Name of the TargetHttpsProxy resource to set an SslCertificates resource for." + }, + "region": { + "required": true, + "location": "path", + "description": "Name of the region scoping this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "response": { + "$ref": "Operation" + } + } + } + }, + "forwardingRules": { + "methods": { + "get": { + "flatPath": "projects/{project}/regions/{region}/forwardingRules/{forwardingRule}", + "response": { + "$ref": "ForwardingRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "type": "string" + }, + "forwardingRule": { + "description": "Name of the ForwardingRule resource to return.", + "type": "string", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "region": { + "required": true, + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "httpMethod": "GET", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "id": "compute.forwardingRules.get", + "description": "Returns the specified ForwardingRule resource.", + "path": "projects/{project}/regions/{region}/forwardingRules/{forwardingRule}" + }, + "list": { + "parameters": { + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "region": { + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the region scoping this request." + }, + "maxResults": { + "format": "uint32", + "default": "500", + "minimum": "0", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + } + }, + "httpMethod": "GET", + "description": "Retrieves a list of ForwardingRule resources available to the specified project and region.", + "flatPath": "projects/{project}/regions/{region}/forwardingRules", + "id": "compute.forwardingRules.list", + "path": "projects/{project}/regions/{region}/forwardingRules", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "ForwardingRuleList" + }, + "parameterOrder": [ + "project", + "region" + ] + }, + "insert": { + "request": { + "$ref": "ForwardingRule" + }, + "flatPath": "projects/{project}/regions/{region}/forwardingRules", + "parameterOrder": [ + "project", + "region" + ], + "path": "projects/{project}/regions/{region}/forwardingRules", + "id": "compute.forwardingRules.insert", + "parameters": { + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "region": { + "description": "Name of the region scoping this request.", + "type": "string", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "httpMethod": "POST", + "response": { + "$ref": "Operation" + }, + "description": "Creates a ForwardingRule resource in the specified project and region using the data included in the request.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTarget": { + "httpMethod": "POST", + "description": "Changes target URL for forwarding rule. The new target should be of the same type as the old target.", + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "region": { + "location": "path", + "description": "Name of the region scoping this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + }, + "forwardingRule": { + "location": "path", + "description": "Name of the ForwardingRule resource in which target is to be set.", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "flatPath": "projects/{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget", + "id": "compute.forwardingRules.setTarget", + "request": { + "$ref": "TargetReference" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget", + "response": { + "$ref": "Operation" + } + }, + "setLabels": { + "flatPath": "projects/{project}/regions/{region}/forwardingRules/{resource}/setLabels", + "response": { + "$ref": "Operation" + }, + "id": "compute.forwardingRules.setLabels", + "path": "projects/{project}/regions/{region}/forwardingRules/{resource}/setLabels", + "description": "Sets the labels on the specified resource. To learn more about labels, read the Labeling Resources documentation.", + "parameters": { + "project": { + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "resource": { + "required": true, + "description": "Name or id of the resource for this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "region": { + "type": "string", + "required": true, + "description": "The region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "RegionSetLabelsRequest" + } + }, + "patch": { + "response": { + "$ref": "Operation" + }, + "parameters": { + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "required": true, + "description": "Name of the region scoping this request." + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "forwardingRule": { + "description": "Name of the ForwardingRule resource to patch.", + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + } + }, + "request": { + "$ref": "ForwardingRule" + }, + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "flatPath": "projects/{project}/regions/{region}/forwardingRules/{forwardingRule}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Updates the specified forwarding rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. Currently, you can only patch the network_tier field.", + "httpMethod": "PATCH", + "id": "compute.forwardingRules.patch", + "path": "projects/{project}/regions/{region}/forwardingRules/{forwardingRule}" + }, + "aggregatedList": { + "path": "projects/{project}/aggregated/forwardingRules", + "description": "Retrieves an aggregated list of forwarding rules.", + "flatPath": "projects/{project}/aggregated/forwardingRules", + "httpMethod": "GET", + "parameterOrder": [ + "project" + ], + "parameters": { + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "type": "integer", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "minimum": "0", + "default": "500" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request.", + "type": "string" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "type": "boolean", + "location": "query" + } + }, + "response": { + "$ref": "ForwardingRuleAggregatedList" + }, + "id": "compute.forwardingRules.aggregatedList", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "path": "projects/{project}/regions/{region}/forwardingRules/{forwardingRule}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "DELETE", + "flatPath": "projects/{project}/regions/{region}/forwardingRules/{forwardingRule}", + "parameters": { + "forwardingRule": { + "description": "Name of the ForwardingRule resource to delete.", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + }, + "project": { + "type": "string", + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the region scoping this request.", + "location": "path" + } + }, + "id": "compute.forwardingRules.delete", + "description": "Deletes the specified ForwardingRule resource." + } + } + }, + "targetSslProxies": { + "methods": { + "insert": { + "description": "Creates a TargetSslProxy resource in the specified project using the data included in the request.", + "parameterOrder": [ + "project" + ], + "flatPath": "projects/{project}/global/targetSslProxies", + "id": "compute.targetSslProxies.insert", + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "type": "string" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "path": "projects/{project}/global/targetSslProxies", + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "TargetSslProxy" + } + }, + "setBackendService": { + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "parameters": { + "targetSslProxy": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "description": "Name of the TargetSslProxy resource whose BackendService resource is to be set.", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", + "id": "compute.targetSslProxies.setBackendService", + "response": { + "$ref": "Operation" + }, + "description": "Changes the BackendService for TargetSslProxy.", + "request": { + "$ref": "TargetSslProxiesSetBackendServiceRequest" + } + }, + "setSslPolicy": { + "httpMethod": "POST", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy", + "id": "compute.targetSslProxies.setSslPolicy", + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetSslProxy": { + "location": "path", + "description": "Name of the TargetSslProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", + "type": "string", + "required": true + } + }, + "request": { + "$ref": "SslPolicyReference" + }, + "description": "Sets the SSL policy for TargetSslProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the SSL proxy load balancer. They do not affect the connection between the load balancer and the backends.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslPolicy" + }, + "delete": { + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "type": "string", + "location": "path" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "targetSslProxy": { + "description": "Name of the TargetSslProxy resource to delete.", + "required": true, + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}", + "httpMethod": "DELETE", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}", + "description": "Deletes the specified TargetSslProxy resource.", + "id": "compute.targetSslProxies.delete" + }, + "setSslCertificates": { + "description": "Changes SslCertificates for TargetSslProxy.", + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.targetSslProxies.setSslCertificates", + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", + "response": { + "$ref": "Operation" + }, + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "type": "string", + "required": true, + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "targetSslProxy": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the TargetSslProxy resource whose SslCertificate resource is to be set.", + "location": "path", + "required": true, + "type": "string" + } + }, + "request": { + "$ref": "TargetSslProxiesSetSslCertificatesRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "project", + "targetSslProxy" + ] + }, + "get": { + "id": "compute.targetSslProxies.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Returns the specified TargetSslProxy resource. Gets a list of available target SSL proxies by making a list() request.", + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}", + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}", + "parameters": { + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource to return.", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "response": { + "$ref": "TargetSslProxy" + }, + "httpMethod": "GET" + }, + "setProxyHeader": { + "flatPath": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", + "request": { + "$ref": "TargetSslProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "description": "Changes the ProxyHeaderType for TargetSslProxy.", + "id": "compute.targetSslProxies.setProxyHeader", + "path": "projects/{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", + "parameters": { + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "description": "Project ID for this request." + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "targetSslProxy": { + "location": "path", + "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "httpMethod": "POST" + }, + "list": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "maxResults": { + "format": "uint32", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "type": "integer", + "location": "query" + }, + "project": { + "type": "string", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + } + }, + "response": { + "$ref": "TargetSslProxyList" + }, + "description": "Retrieves the list of TargetSslProxy resources available to the specified project.", + "path": "projects/{project}/global/targetSslProxies", + "id": "compute.targetSslProxies.list", + "httpMethod": "GET", + "parameterOrder": [ + "project" + ], + "flatPath": "projects/{project}/global/targetSslProxies" + } + } + }, + "targetHttpsProxies": { + "methods": { + "aggregatedList": { + "response": { + "$ref": "TargetHttpsProxyAggregatedList" + }, + "parameters": { + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "maxResults": { + "default": "500", + "minimum": "0", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "type": "integer" + }, + "includeAllScopes": { + "type": "boolean", + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path", + "description": "Name of the project scoping this request." + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + } + }, + "id": "compute.targetHttpsProxies.aggregatedList", + "description": "Retrieves the list of all TargetHttpsProxy resources, regional and global, available to the specified project.", + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/aggregated/targetHttpsProxies", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "flatPath": "projects/{project}/aggregated/targetHttpsProxies" + }, + "setUrlMap": { + "flatPath": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", + "path": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", + "id": "compute.targetHttpsProxies.setUrlMap", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "request": { + "$ref": "UrlMapReference" + }, + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "targetHttpsProxy": { + "location": "path", + "description": "Name of the TargetHttpsProxy resource whose URL map is to be set.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "required": true, + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + } + }, + "description": "Changes the URL map for TargetHttpsProxy.", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.targetHttpsProxies.get", + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true + }, + "targetHttpsProxy": { + "location": "path", + "required": true, + "description": "Name of the TargetHttpsProxy resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "response": { + "$ref": "TargetHttpsProxy" + }, + "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "httpMethod": "GET", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "description": "Returns the specified TargetHttpsProxy resource. Gets a list of available target HTTPS proxies by making a list() request." + }, + "list": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.targetHttpsProxies.list", + "description": "Retrieves the list of TargetHttpsProxy resources available to the specified project.", + "httpMethod": "GET", + "parameters": { + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "maxResults": { + "location": "query", + "format": "uint32", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "required": true + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + } + }, + "flatPath": "projects/{project}/global/targetHttpsProxies", + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/global/targetHttpsProxies", + "response": { + "$ref": "TargetHttpsProxyList" + } + }, + "setSslPolicy": { + "description": "Sets the SSL policy for TargetHttpsProxy. The SSL policy specifies the server-side support for SSL features. This affects connections between clients and the HTTPS proxy load balancer. They do not affect the connection between the load balancer and the backends.", + "id": "compute.targetHttpsProxies.setSslPolicy", + "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "required": true + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "targetHttpsProxy": { + "location": "path", + "description": "Name of the TargetHttpsProxy resource whose SSL policy is to be set. The name must be 1-63 characters long, and comply with RFC1035.", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setSslPolicy", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "request": { + "$ref": "SslPolicyReference" + }, + "httpMethod": "POST" + }, + "insert": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.targetHttpsProxies.insert", + "description": "Creates a TargetHttpsProxy resource in the specified project using the data included in the request.", + "request": { + "$ref": "TargetHttpsProxy" + }, + "parameterOrder": [ + "project" + ], + "flatPath": "projects/{project}/global/targetHttpsProxies", + "path": "projects/{project}/global/targetHttpsProxies", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + } + }, + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST" + }, + "delete": { + "description": "Deletes the specified TargetHttpsProxy resource.", + "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "targetHttpsProxy": { + "location": "path", + "required": true, + "description": "Name of the TargetHttpsProxy resource to delete.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "location": "path" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "id": "compute.targetHttpsProxies.delete", + "httpMethod": "DELETE" + }, + "setSslCertificates": { + "description": "Replaces SslCertificates for TargetHttpsProxy.", + "path": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "response": { + "$ref": "Operation" + }, + "id": "compute.targetHttpsProxies.setSslCertificates", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "request": { + "$ref": "TargetHttpsProxiesSetSslCertificatesRequest" + }, + "flatPath": "projects/{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "parameters": { + "targetHttpsProxy": { + "required": true, + "description": "Name of the TargetHttpsProxy resource to set an SslCertificates resource for.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string" + } + } + }, + "setQuicOverride": { + "parameters": { + "targetHttpsProxy": { + "location": "path", + "type": "string", + "required": true, + "description": "Name of the TargetHttpsProxy resource to set the QUIC override policy for. The name should conform to RFC1035." + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Sets the QUIC override policy for TargetHttpsProxy.", + "id": "compute.targetHttpsProxies.setQuicOverride", + "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setQuicOverride", + "request": { + "$ref": "TargetHttpsProxiesSetQuicOverrideRequest" + }, + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}/setQuicOverride", + "response": { + "$ref": "Operation" + } + }, + "patch": { + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "type": "string", + "location": "query" + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "targetHttpsProxy": { + "type": "string", + "required": true, + "location": "path", + "description": "Name of the TargetHttpsProxy resource to patch.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "request": { + "$ref": "TargetHttpsProxy" + }, + "id": "compute.targetHttpsProxies.patch", + "path": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "description": "Patches the specified TargetHttpsProxy resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "response": { + "$ref": "Operation" + } + } + } + }, + "regionUrlMaps": { + "methods": { + "validate": { + "description": "Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.", + "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}/validate", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "required": true, + "type": "string" + }, + "urlMap": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the UrlMap resource to be validated as.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "location": "path", + "type": "string" + } + }, + "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}/validate", + "parameterOrder": [ + "project", + "region", + "urlMap" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.regionUrlMaps.validate", + "response": { + "$ref": "UrlMapsValidateResponse" + }, + "request": { + "$ref": "RegionUrlMapsValidateRequest" + }, + "httpMethod": "POST" + }, + "list": { + "id": "compute.regionUrlMaps.list", + "response": { + "$ref": "UrlMapList" + }, + "path": "projects/{project}/regions/{region}/urlMaps", + "flatPath": "projects/{project}/regions/{region}/urlMaps", + "description": "Retrieves the list of UrlMap resources available to the specified project in the specified region.", + "httpMethod": "GET", + "parameters": { + "maxResults": { + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "region": { + "description": "Name of the region scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path", + "required": true + } + }, + "parameterOrder": [ + "project", + "region" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "request": { + "$ref": "UrlMap" + }, + "parameterOrder": [ + "project", + "region", + "urlMap" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "project": { + "description": "Project ID for this request.", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + }, + "urlMap": { + "required": true, + "description": "Name of the UrlMap resource to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request.", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "requestId": { + "type": "string", + "description": "begin_interface: MixerMutationRequestBuilder Request ID to support idempotency.", + "location": "query" + } + }, + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "id": "compute.regionUrlMaps.update", + "description": "Updates the specified UrlMap resource with the data included in the request.", + "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}" + }, + "get": { + "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "response": { + "$ref": "UrlMap" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "region", + "urlMap" + ], + "description": "Returns the specified UrlMap resource. Gets a list of available URL maps by making a list() request.", + "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "parameters": { + "urlMap": { + "location": "path", + "required": true, + "description": "Name of the UrlMap resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + }, + "project": { + "required": true, + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "required": true, + "description": "Name of the region scoping this request.", + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "httpMethod": "GET", + "id": "compute.regionUrlMaps.get" + }, + "patch": { + "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "id": "compute.regionUrlMaps.patch", + "parameterOrder": [ + "project", + "region", + "urlMap" + ], + "description": "Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "request": { + "$ref": "UrlMap" + }, + "parameters": { + "region": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string", + "description": "Name of the region scoping this request." + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path" + }, + "requestId": { + "type": "string", + "description": "begin_interface: MixerMutationRequestBuilder Request ID to support idempotency.", + "location": "query" + }, + "urlMap": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "description": "Name of the UrlMap resource to patch.", + "required": true + } + }, + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "insert": { + "flatPath": "projects/{project}/regions/{region}/urlMaps", + "id": "compute.regionUrlMaps.insert", + "parameters": { + "requestId": { + "location": "query", + "description": "begin_interface: MixerMutationRequestBuilder Request ID to support idempotency.", + "type": "string" + }, + "region": { + "required": true, + "type": "string", + "location": "path", + "description": "Name of the region scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "httpMethod": "POST", + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/regions/{region}/urlMaps", + "description": "Creates a UrlMap resource in the specified project using the data included in the request.", + "request": { + "$ref": "UrlMap" + } + }, + "delete": { + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "location": "path", + "type": "string" + }, + "urlMap": { + "description": "Name of the UrlMap resource to delete.", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "begin_interface: MixerMutationRequestBuilder Request ID to support idempotency." + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "description": "Deletes the specified UrlMap resource.", + "id": "compute.regionUrlMaps.delete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/regions/{region}/urlMaps/{urlMap}", + "parameterOrder": [ + "project", + "region", + "urlMap" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "DELETE" + } + } + }, + "diskTypes": { + "methods": { + "get": { + "path": "projects/{project}/zones/{zone}/diskTypes/{diskType}", + "parameterOrder": [ + "project", + "zone", + "diskType" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "project": { + "location": "path", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "diskType": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string", + "description": "Name of the disk type to return." + }, + "zone": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "required": true, + "description": "The name of the zone for this request." + } + }, + "id": "compute.diskTypes.get", + "httpMethod": "GET", + "response": { + "$ref": "DiskType" + }, + "description": "Returns the specified disk type. Gets a list of available disk types by making a list() request.", + "flatPath": "projects/{project}/zones/{zone}/diskTypes/{diskType}" + }, + "aggregatedList": { + "flatPath": "projects/{project}/aggregated/diskTypes", + "httpMethod": "GET", + "id": "compute.diskTypes.aggregatedList", + "parameterOrder": [ + "project" + ], + "description": "Retrieves an aggregated list of disk types.", + "path": "projects/{project}/aggregated/diskTypes", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "DiskTypeAggregatedList" + }, + "parameters": { + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "maxResults": { + "minimum": "0", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "type": "integer", + "format": "uint32" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "includeAllScopes": { + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "type": "boolean" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true + } + } + }, + "list": { + "path": "projects/{project}/zones/{zone}/diskTypes", + "parameterOrder": [ + "project", + "zone" + ], + "httpMethod": "GET", + "parameters": { + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "type": "string", + "required": true, + "location": "path" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "type": "integer", + "location": "query", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request." + } + }, + "description": "Retrieves a list of disk types available to the specified project.", + "id": "compute.diskTypes.list", + "flatPath": "projects/{project}/zones/{zone}/diskTypes", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "DiskTypeList" + } + } + } + }, + "globalForwardingRules": { + "methods": { + "setLabels": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Sets the labels on the specified resource. To learn more about labels, read the Labeling resources documentation.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "resource" + ], + "parameters": { + "resource": { + "type": "string", + "description": "Name or id of the resource for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true + } + }, + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "id": "compute.globalForwardingRules.setLabels", + "flatPath": "projects/{project}/global/forwardingRules/{resource}/setLabels", + "path": "projects/{project}/global/forwardingRules/{resource}/setLabels", + "httpMethod": "POST" + }, + "get": { + "id": "compute.globalForwardingRules.get", + "response": { + "$ref": "ForwardingRule" + }, + "httpMethod": "GET", + "flatPath": "projects/{project}/global/forwardingRules/{forwardingRule}", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "parameters": { + "project": { + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path" + }, + "forwardingRule": { + "type": "string", + "required": true, + "location": "path", + "description": "Name of the ForwardingRule resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "description": "Returns the specified GlobalForwardingRule resource. Gets a list of available forwarding rules by making a list() request.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/global/forwardingRules/{forwardingRule}" + }, + "insert": { + "request": { + "$ref": "ForwardingRule" + }, + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + } + }, + "flatPath": "projects/{project}/global/forwardingRules", + "path": "projects/{project}/global/forwardingRules", + "id": "compute.globalForwardingRules.insert", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project" + ], + "description": "Creates a GlobalForwardingRule resource in the specified project using the data included in the request.", + "httpMethod": "POST" + }, + "list": { + "description": "Retrieves a list of GlobalForwardingRule resources available to the specified project.", + "flatPath": "projects/{project}/global/forwardingRules", + "response": { + "$ref": "ForwardingRuleList" + }, + "path": "projects/{project}/global/forwardingRules", + "id": "compute.globalForwardingRules.list", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "maxResults": { + "default": "500", + "type": "integer", + "location": "query", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0" + } + }, + "parameterOrder": [ + "project" + ] + }, + "patch": { + "id": "compute.globalForwardingRules.patch", + "description": "Updates the specified forwarding rule with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. Currently, you can only patch the network_tier field.", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "forwardingRule": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the ForwardingRule resource to patch.", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "ForwardingRule" + }, + "flatPath": "projects/{project}/global/forwardingRules/{forwardingRule}", + "path": "projects/{project}/global/forwardingRules/{forwardingRule}", + "httpMethod": "PATCH", + "parameterOrder": [ + "project", + "forwardingRule" + ], + "response": { + "$ref": "Operation" + } + }, + "setTarget": { + "path": "projects/{project}/global/forwardingRules/{forwardingRule}/setTarget", + "id": "compute.globalForwardingRules.setTarget", + "description": "Changes target URL for the GlobalForwardingRule resource. The new target should be of the same type as the old target.", + "flatPath": "projects/{project}/global/forwardingRules/{forwardingRule}/setTarget", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "forwardingRule" + ], + "request": { + "$ref": "TargetReference" + }, + "httpMethod": "POST", + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "forwardingRule": { + "required": true, + "location": "path", + "description": "Name of the ForwardingRule resource in which target is to be set.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "parameterOrder": [ + "project", + "forwardingRule" + ], + "id": "compute.globalForwardingRules.delete", + "path": "projects/{project}/global/forwardingRules/{forwardingRule}", + "flatPath": "projects/{project}/global/forwardingRules/{forwardingRule}", + "response": { + "$ref": "Operation" + }, + "description": "Deletes the specified GlobalForwardingRule resource.", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "forwardingRule": { + "type": "string", + "required": true, + "description": "Name of the ForwardingRule resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + } + }, + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "globalAddresses": { + "methods": { + "insert": { + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "Address" + }, + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/global/addresses", + "flatPath": "projects/{project}/global/addresses", + "httpMethod": "POST", + "id": "compute.globalAddresses.insert", + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path" + } + }, + "description": "Creates an address resource in the specified project by using the data included in the request." + }, + "get": { + "path": "projects/{project}/global/addresses/{address}", + "httpMethod": "GET", + "id": "compute.globalAddresses.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "address" + ], + "description": "Returns the specified address resource. Gets a list of available addresses by making a list() request.", + "parameters": { + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true + }, + "address": { + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the address resource to return." + } + }, + "response": { + "$ref": "Address" + }, + "flatPath": "projects/{project}/global/addresses/{address}" + }, + "list": { + "response": { + "$ref": "AddressList" + }, + "flatPath": "projects/{project}/global/addresses", + "parameters": { + "project": { + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "maxResults": { + "location": "query", + "format": "uint32", + "type": "integer", + "minimum": "0", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + } + }, + "httpMethod": "GET", + "id": "compute.globalAddresses.list", + "path": "projects/{project}/global/addresses", + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves a list of global addresses." + }, + "delete": { + "description": "Deletes the specified address resource.", + "parameters": { + "address": { + "type": "string", + "description": "Name of the address resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "required": true, + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/addresses/{address}", + "parameterOrder": [ + "project", + "address" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/addresses/{address}", + "httpMethod": "DELETE", + "id": "compute.globalAddresses.delete" + } + } + }, + "targetGrpcProxies": { + "methods": { + "get": { + "id": "compute.targetGrpcProxies.get", + "response": { + "$ref": "TargetGrpcProxy" + }, + "description": "Returns the specified TargetGrpcProxy resource in the given scope.", + "parameterOrder": [ + "project", + "targetGrpcProxy" + ], + "httpMethod": "GET", + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request." + }, + "targetGrpcProxy": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string", + "description": "Name of the TargetGrpcProxy resource to return." + } + }, + "path": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", + "flatPath": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", + "path": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", + "description": "Deletes the specified TargetGrpcProxy in the given scope", + "httpMethod": "DELETE", + "parameters": { + "targetGrpcProxy": { + "required": true, + "description": "Name of the TargetGrpcProxy resource to delete.", + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query" + }, + "project": { + "type": "string", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + } + }, + "id": "compute.targetGrpcProxies.delete", + "parameterOrder": [ + "project", + "targetGrpcProxy" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "insert": { + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "type": "string", + "location": "query" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "required": true + } + }, + "description": "Creates a TargetGrpcProxy in the specified project in the given scope using the parameters that are included in the request.", + "id": "compute.targetGrpcProxies.insert", + "httpMethod": "POST", + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/global/targetGrpcProxies", + "flatPath": "projects/{project}/global/targetGrpcProxies", + "request": { + "$ref": "TargetGrpcProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "id": "compute.targetGrpcProxies.list", + "path": "projects/{project}/global/targetGrpcProxies", + "flatPath": "projects/{project}/global/targetGrpcProxies", + "response": { + "$ref": "TargetGrpcProxyList" + }, + "description": "Lists the TargetGrpcProxies for a project in the given scope.", + "parameterOrder": [ + "project" + ], + "parameters": { + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "maxResults": { + "type": "integer", + "minimum": "0", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "location": "query" + } + } + }, + "patch": { + "parameterOrder": [ + "project", + "targetGrpcProxy" + ], + "id": "compute.targetGrpcProxies.patch", + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", + "request": { + "$ref": "TargetGrpcProxy" + }, + "path": "projects/{project}/global/targetGrpcProxies/{targetGrpcProxy}", + "response": { + "$ref": "Operation" + }, + "description": "Patches the specified TargetGrpcProxy resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "targetGrpcProxy": { + "description": "Name of the TargetGrpcProxy resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request." + } + } + } + } + }, + "licenses": { + "methods": { + "list": { + "parameters": { + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "maxResults": { + "minimum": "0", + "type": "integer", + "location": "query", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500" + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "project": { + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + } + }, + "flatPath": "projects/{project}/global/licenses", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.licenses.list", + "httpMethod": "GET", + "description": "Retrieves the list of licenses available in the specified project. This method does not get any licenses that belong to other projects, including licenses attached to publicly-available images, like Debian 9. If you want to get a list of publicly-available licenses, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. ", + "response": { + "$ref": "LicensesListResponse" + }, + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/global/licenses" + }, + "insert": { + "flatPath": "projects/{project}/global/licenses", + "description": "Create a License resource in the specified project. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. ", + "parameters": { + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ], + "id": "compute.licenses.insert", + "request": { + "$ref": "License" + }, + "httpMethod": "POST", + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/global/licenses" + }, + "delete": { + "parameterOrder": [ + "project", + "license" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "description": "Deletes the specified license. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. ", + "parameters": { + "license": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the license resource to delete.", + "location": "path" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "flatPath": "projects/{project}/global/licenses/{license}", + "id": "compute.licenses.delete", + "path": "projects/{project}/global/licenses/{license}" + }, + "get": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request.", + "type": "string" + }, + "license": { + "required": true, + "description": "Name of the License resource to return.", + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "parameterOrder": [ + "project", + "license" + ], + "path": "projects/{project}/global/licenses/{license}", + "response": { + "$ref": "License" + }, + "httpMethod": "GET", + "flatPath": "projects/{project}/global/licenses/{license}", + "description": "Returns the specified License resource. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. ", + "id": "compute.licenses.get" + }, + "testIamPermissions": { + "request": { + "$ref": "TestPermissionsRequest" + }, + "parameters": { + "project": { + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "resource": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name or id of the resource for this request.", + "required": true, + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.licenses.testIamPermissions", + "description": "Returns permissions that a caller has on the specified resource. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. ", + "parameterOrder": [ + "project", + "resource" + ], + "response": { + "$ref": "TestPermissionsResponse" + }, + "flatPath": "projects/{project}/global/licenses/{resource}/testIamPermissions", + "httpMethod": "POST", + "path": "projects/{project}/global/licenses/{resource}/testIamPermissions" + }, + "setIamPolicy": { + "description": "Sets the access control policy on the specified resource. Replaces any existing policy. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. ", + "parameterOrder": [ + "project", + "resource" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Policy" + }, + "id": "compute.licenses.setIamPolicy", + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true + }, + "resource": { + "description": "Name or id of the resource for this request.", + "required": true, + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "httpMethod": "POST", + "flatPath": "projects/{project}/global/licenses/{resource}/setIamPolicy", + "request": { + "$ref": "GlobalSetPolicyRequest" + }, + "path": "projects/{project}/global/licenses/{resource}/setIamPolicy" + }, + "getIamPolicy": { + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. ", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "project": { + "required": true, + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "optionsRequestedPolicyVersion": { + "location": "query", + "type": "integer", + "format": "int32", + "description": "Requested IAM Policy version." + }, + "resource": { + "required": true, + "location": "path", + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "flatPath": "projects/{project}/global/licenses/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "httpMethod": "GET", + "id": "compute.licenses.getIamPolicy", + "path": "projects/{project}/global/licenses/{resource}/getIamPolicy" + } + } + }, + "machineTypes": { + "methods": { + "get": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "project": { + "required": true, + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "machineType": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the machine type to return.", + "type": "string", + "location": "path", + "required": true + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "description": "The name of the zone for this request.", + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/machineTypes/{machineType}", + "id": "compute.machineTypes.get", + "flatPath": "projects/{project}/zones/{zone}/machineTypes/{machineType}", + "response": { + "$ref": "MachineType" + }, + "httpMethod": "GET", + "description": "Returns the specified machine type. Gets a list of available machine types by making a list() request.", + "parameterOrder": [ + "project", + "zone", + "machineType" + ] + }, + "list": { + "description": "Retrieves a list of machine types available to the specified project.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/zones/{zone}/machineTypes", + "httpMethod": "GET", + "flatPath": "projects/{project}/zones/{zone}/machineTypes", + "parameterOrder": [ + "project", + "zone" + ], + "id": "compute.machineTypes.list", + "parameters": { + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "zone": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "location": "path" + }, + "maxResults": { + "location": "query", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "format": "uint32", + "minimum": "0" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "project": { + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request." + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + } + }, + "response": { + "$ref": "MachineTypeList" + } + }, + "aggregatedList": { + "httpMethod": "GET", + "parameterOrder": [ + "project" + ], + "id": "compute.machineTypes.aggregatedList", + "description": "Retrieves an aggregated list of machine types.", + "response": { + "$ref": "MachineTypeAggregatedList" + }, + "parameters": { + "project": { + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "type": "boolean", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "maxResults": { + "type": "integer", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "default": "500", + "format": "uint32" + } + }, + "flatPath": "projects/{project}/aggregated/machineTypes", + "path": "projects/{project}/aggregated/machineTypes", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "httpsHealthChecks": { + "methods": { + "get": { + "description": "Returns the specified HttpsHealthCheck resource. Gets a list of available HTTPS health checks by making a list() request.", + "id": "compute.httpsHealthChecks.get", + "response": { + "$ref": "HttpsHealthCheck" + }, + "path": "projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "parameters": { + "project": { + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true + }, + "httpsHealthCheck": { + "description": "Name of the HttpsHealthCheck resource to return.", + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "flatPath": "projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ] + }, + "update": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request.", + "flatPath": "projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "parameters": { + "httpsHealthCheck": { + "required": true, + "type": "string", + "location": "path", + "description": "Name of the HttpsHealthCheck resource to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "location": "path" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "response": { + "$ref": "Operation" + }, + "id": "compute.httpsHealthChecks.update", + "httpMethod": "PUT", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "request": { + "$ref": "HttpsHealthCheck" + }, + "path": "projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}" + }, + "patch": { + "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "flatPath": "projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "httpMethod": "PATCH", + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "httpsHealthCheck": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the HttpsHealthCheck resource to patch.", + "type": "string", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + }, + "path": "projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "HttpsHealthCheck" + }, + "id": "compute.httpsHealthChecks.patch" + }, + "delete": { + "id": "compute.httpsHealthChecks.delete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "DELETE", + "parameters": { + "project": { + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "httpsHealthCheck": { + "required": true, + "description": "Name of the HttpsHealthCheck resource to delete.", + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "flatPath": "projects/{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "description": "Deletes the specified HttpsHealthCheck resource.", + "response": { + "$ref": "Operation" + } + }, + "insert": { + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "location": "path" + } + }, + "httpMethod": "POST", + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/httpsHealthChecks", + "request": { + "$ref": "HttpsHealthCheck" + }, + "path": "projects/{project}/global/httpsHealthChecks", + "description": "Creates a HttpsHealthCheck resource in the specified project using the data included in the request.", + "id": "compute.httpsHealthChecks.insert", + "response": { + "$ref": "Operation" + } + }, + "list": { + "path": "projects/{project}/global/httpsHealthChecks", + "parameters": { + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "location": "path" + }, + "maxResults": { + "minimum": "0", + "default": "500", + "type": "integer", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + } + }, + "response": { + "$ref": "HttpsHealthCheckList" + }, + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/global/httpsHealthChecks", + "id": "compute.httpsHealthChecks.list", + "httpMethod": "GET", + "description": "Retrieves the list of HttpsHealthCheck resources available to the specified project." + } + } + }, + "licenseCodes": { + "methods": { + "testIamPermissions": { + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "description": "Returns permissions that a caller has on the specified resource. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. ", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "required": true + }, + "resource": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "description": "Name or id of the resource for this request." + } + }, + "httpMethod": "POST", + "flatPath": "projects/{project}/global/licenseCodes/{resource}/testIamPermissions", + "response": { + "$ref": "TestPermissionsResponse" + }, + "id": "compute.licenseCodes.testIamPermissions", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/global/licenseCodes/{resource}/testIamPermissions" + }, + "get": { + "httpMethod": "GET", + "response": { + "$ref": "LicenseCode" + }, + "path": "projects/{project}/global/licenseCodes/{licenseCode}", + "id": "compute.licenseCodes.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Return a specified license code. License codes are mirrored across all projects that have permissions to read the License Code. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. ", + "parameters": { + "licenseCode": { + "pattern": "[0-9]{0,61}?", + "required": true, + "location": "path", + "type": "string", + "description": "Number corresponding to the License code resource to return." + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "parameterOrder": [ + "project", + "licenseCode" + ], + "flatPath": "projects/{project}/global/licenseCodes/{licenseCode}" + } + } + }, + "instanceTemplates": { + "methods": { + "get": { + "parameterOrder": [ + "project", + "instanceTemplate" + ], + "path": "projects/{project}/global/instanceTemplates/{instanceTemplate}", + "description": "Returns the specified instance template. Gets a list of available instance templates by making a list() request.", + "id": "compute.instanceTemplates.get", + "parameters": { + "instanceTemplate": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "description": "The name of the instance template.", + "required": true, + "location": "path" + }, + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request." + } + }, + "httpMethod": "GET", + "response": { + "$ref": "InstanceTemplate" + }, + "flatPath": "projects/{project}/global/instanceTemplates/{instanceTemplate}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.instanceTemplates.delete", + "flatPath": "projects/{project}/global/instanceTemplates/{instanceTemplate}", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "instanceTemplate": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true, + "description": "The name of the instance template to delete." + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + } + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "instanceTemplate" + ], + "description": "Deletes the specified instance template. Deleting an instance template is permanent and cannot be undone. It is not possible to delete templates that are already in use by a managed instance group.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/global/instanceTemplates/{instanceTemplate}", + "httpMethod": "DELETE" + }, + "testIamPermissions": { + "response": { + "$ref": "TestPermissionsResponse" + }, + "description": "Returns permissions that a caller has on the specified resource.", + "flatPath": "projects/{project}/global/instanceTemplates/{resource}/testIamPermissions", + "httpMethod": "POST", + "request": { + "$ref": "TestPermissionsRequest" + }, + "parameters": { + "project": { + "type": "string", + "required": true, + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "resource": { + "type": "string", + "location": "path", + "required": true, + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.instanceTemplates.testIamPermissions", + "path": "projects/{project}/global/instanceTemplates/{resource}/testIamPermissions", + "parameterOrder": [ + "project", + "resource" + ] + }, + "setIamPolicy": { + "httpMethod": "POST", + "parameterOrder": [ + "project", + "resource" + ], + "flatPath": "projects/{project}/global/instanceTemplates/{resource}/setIamPolicy", + "id": "compute.instanceTemplates.setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "parameters": { + "resource": { + "location": "path", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name or id of the resource for this request." + }, + "project": { + "location": "path", + "type": "string", + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "path": "projects/{project}/global/instanceTemplates/{resource}/setIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Policy" + }, + "request": { + "$ref": "GlobalSetPolicyRequest" + } + }, + "getIamPolicy": { + "parameterOrder": [ + "project", + "resource" + ], + "httpMethod": "GET", + "path": "projects/{project}/global/instanceTemplates/{resource}/getIamPolicy", + "response": { + "$ref": "Policy" + }, + "id": "compute.instanceTemplates.getIamPolicy", + "parameters": { + "resource": { + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "description": "Name or id of the resource for this request." + }, + "project": { + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "optionsRequestedPolicyVersion": { + "type": "integer", + "location": "query", + "description": "Requested IAM Policy version.", + "format": "int32" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "flatPath": "projects/{project}/global/instanceTemplates/{resource}/getIamPolicy" + }, + "list": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves a list of instance templates that are contained within the specified project.", + "id": "compute.instanceTemplates.list", + "response": { + "$ref": "InstanceTemplateList" + }, + "parameters": { + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "maxResults": { + "default": "500", + "type": "integer", + "format": "uint32", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "project": { + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + } + }, + "flatPath": "projects/{project}/global/instanceTemplates", + "parameterOrder": [ + "project" + ], + "httpMethod": "GET", + "path": "projects/{project}/global/instanceTemplates" + }, + "insert": { + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/instanceTemplates", + "description": "Creates an instance template in the specified project using the data that is included in the request. If you are creating a new template to update an existing instance group, your new instance template must use the same network or, if applicable, the same subnetwork as the original template.", + "httpMethod": "POST", + "id": "compute.instanceTemplates.insert", + "flatPath": "projects/{project}/global/instanceTemplates", + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "request": { + "$ref": "InstanceTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "nodeGroups": { + "methods": { + "delete": { + "flatPath": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}", + "parameterOrder": [ + "project", + "zone", + "nodeGroup" + ], + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "nodeGroup": { + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the NodeGroup resource to delete.", + "required": true + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "description": "The name of the zone for this request.", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "location": "path", + "type": "string" + } + }, + "id": "compute.nodeGroups.delete", + "path": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}", + "description": "Deletes the specified NodeGroup resource.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "DELETE" + }, + "insert": { + "flatPath": "projects/{project}/zones/{zone}/nodeGroups", + "parameters": { + "initialNodeCount": { + "format": "int32", + "location": "query", + "type": "integer", + "description": "Initial count of nodes in the node group.", + "required": true + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "zone": { + "location": "path", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path" + } + }, + "request": { + "$ref": "NodeGroup" + }, + "id": "compute.nodeGroups.insert", + "httpMethod": "POST", + "parameterOrder": [ + "project", + "zone", + "initialNodeCount" + ], + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/zones/{zone}/nodeGroups", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Creates a NodeGroup resource in the specified project using the data included in the request." + }, + "testIamPermissions": { + "flatPath": "projects/{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "response": { + "$ref": "TestPermissionsResponse" + }, + "description": "Returns permissions that a caller has on the specified resource.", + "id": "compute.nodeGroups.testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "parameters": { + "zone": { + "description": "The name of the zone for this request.", + "required": true, + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "resource": { + "location": "path", + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/zones/{zone}/nodeGroups/{resource}/testIamPermissions" + }, + "deleteNodes": { + "flatPath": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/deleteNodes", + "path": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/deleteNodes", + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "NodeGroupsDeleteNodesRequest" + }, + "parameterOrder": [ + "project", + "zone", + "nodeGroup" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "description": "Deletes specified nodes from the node group.", + "parameters": { + "nodeGroup": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the NodeGroup resource whose nodes will be deleted.", + "location": "path", + "type": "string", + "required": true + }, + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request." + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "zone": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "required": true, + "description": "The name of the zone for this request." + } + }, + "id": "compute.nodeGroups.deleteNodes" + }, + "addNodes": { + "request": { + "$ref": "NodeGroupsAddNodesRequest" + }, + "parameters": { + "nodeGroup": { + "description": "Name of the NodeGroup resource.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + }, + "zone": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "location": "path", + "required": true + }, + "project": { + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "httpMethod": "POST", + "flatPath": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/addNodes", + "description": "Adds specified number of nodes to the node group.", + "path": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/addNodes", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "zone", + "nodeGroup" + ], + "id": "compute.nodeGroups.addNodes" + }, + "getIamPolicy": { + "path": "projects/{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "flatPath": "projects/{project}/zones/{zone}/nodeGroups/{resource}/getIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "parameters": { + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true + }, + "optionsRequestedPolicyVersion": { + "location": "query", + "type": "integer", + "format": "int32", + "description": "Requested IAM Policy version." + }, + "resource": { + "type": "string", + "description": "Name or id of the resource for this request.", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "zone": { + "description": "The name of the zone for this request.", + "required": true, + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "response": { + "$ref": "Policy" + }, + "httpMethod": "GET", + "id": "compute.nodeGroups.getIamPolicy" + }, + "listNodes": { + "description": "Lists nodes in the node group.", + "response": { + "$ref": "NodeGroupsListNodes" + }, + "id": "compute.nodeGroups.listNodes", + "parameterOrder": [ + "project", + "zone", + "nodeGroup" + ], + "path": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/listNodes", + "flatPath": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/listNodes", + "parameters": { + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path" + }, + "maxResults": { + "minimum": "0", + "format": "uint32", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer", + "location": "query" + }, + "nodeGroup": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the NodeGroup resource whose nodes you want to list.", + "location": "path", + "required": true, + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "description": "The name of the zone for this request.", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "POST" + }, + "get": { + "httpMethod": "GET", + "description": "Returns the specified NodeGroup. Get a list of available NodeGroups by making a list() request. Note: the \"nodes\" field should not be used. Use nodeGroups.listNodes instead.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "zone", + "nodeGroup" + ], + "parameters": { + "nodeGroup": { + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the node group to return." + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request.", + "location": "path" + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "type": "string", + "description": "The name of the zone for this request." + } + }, + "id": "compute.nodeGroups.get", + "flatPath": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}", + "path": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}", + "response": { + "$ref": "NodeGroup" + } + }, + "setNodeTemplate": { + "request": { + "$ref": "NodeGroupsSetNodeTemplateRequest" + }, + "flatPath": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/setNodeTemplate", + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "zone": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "description": "The name of the zone for this request.", + "type": "string" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "nodeGroup": { + "type": "string", + "location": "path", + "description": "Name of the NodeGroup resource to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + } + }, + "path": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}/setNodeTemplate", + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.nodeGroups.setNodeTemplate", + "description": "Updates the node template of the node group.", + "parameterOrder": [ + "project", + "zone", + "nodeGroup" + ] + }, + "aggregatedList": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "format": "uint32", + "minimum": "0", + "type": "integer", + "location": "query" + }, + "includeAllScopes": { + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query" + }, + "project": { + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request." + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + } + }, + "path": "projects/{project}/aggregated/nodeGroups", + "response": { + "$ref": "NodeGroupAggregatedList" + }, + "id": "compute.nodeGroups.aggregatedList", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of node groups. Note: use nodeGroups.listNodes for more details about each group.", + "flatPath": "projects/{project}/aggregated/nodeGroups", + "parameterOrder": [ + "project" + ] + }, + "list": { + "flatPath": "projects/{project}/zones/{zone}/nodeGroups", + "httpMethod": "GET", + "parameterOrder": [ + "project", + "zone" + ], + "response": { + "$ref": "NodeGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.nodeGroups.list", + "path": "projects/{project}/zones/{zone}/nodeGroups", + "parameters": { + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "maxResults": { + "format": "uint32", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500", + "type": "integer" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + } + }, + "description": "Retrieves a list of node groups available to the specified project. Note: use nodeGroups.listNodes for more details about each group." + }, + "setIamPolicy": { + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "id": "compute.nodeGroups.setIamPolicy", + "httpMethod": "POST", + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true + }, + "resource": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "description": "Name or id of the resource for this request." + }, + "zone": { + "description": "The name of the zone for this request.", + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + } + }, + "flatPath": "projects/{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy", + "request": { + "$ref": "ZoneSetPolicyRequest" + }, + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "path": "projects/{project}/zones/{zone}/nodeGroups/{resource}/setIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Policy" + } + }, + "patch": { + "httpMethod": "PATCH", + "path": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}", + "request": { + "$ref": "NodeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "project": { + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true + }, + "nodeGroup": { + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the NodeGroup resource to update." + }, + "zone": { + "required": true, + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request." + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/zones/{zone}/nodeGroups/{nodeGroup}", + "parameterOrder": [ + "project", + "zone", + "nodeGroup" + ], + "description": "Updates the specified node group.", + "id": "compute.nodeGroups.patch" + } + } + }, + "regionHealthCheckServices": { + "methods": { + "list": { + "flatPath": "projects/{project}/regions/{region}/healthCheckServices", + "parameters": { + "project": { + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "format": "uint32", + "minimum": "0", + "type": "integer", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "region": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string", + "description": "Name of the region scoping this request." + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + } + }, + "description": "Lists all the HealthCheckService resources that have been configured for the specified project in the given region.", + "path": "projects/{project}/regions/{region}/healthCheckServices", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "HealthCheckServicesList" + }, + "parameterOrder": [ + "project", + "region" + ], + "id": "compute.regionHealthCheckServices.list", + "httpMethod": "GET" + }, + "patch": { + "request": { + "$ref": "HealthCheckService" + }, + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "region": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the region scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "healthCheckService": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the HealthCheckService to update. The name must be 1-63 characters long, and comply with RFC1035." + } + }, + "id": "compute.regionHealthCheckServices.patch", + "flatPath": "projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}", + "parameterOrder": [ + "project", + "region", + "healthCheckService" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Updates the specified regional HealthCheckService resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "path": "projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}", + "httpMethod": "PATCH", + "response": { + "$ref": "Operation" + } + }, + "delete": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Deletes the specified regional HealthCheckService.", + "flatPath": "projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}", + "parameterOrder": [ + "project", + "region", + "healthCheckService" + ], + "id": "compute.regionHealthCheckServices.delete", + "response": { + "$ref": "Operation" + }, + "parameters": { + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true + }, + "region": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + }, + "healthCheckService": { + "required": true, + "description": "Name of the HealthCheckService to delete. The name must be 1-63 characters long, and comply with RFC1035.", + "location": "path", + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}", + "httpMethod": "DELETE" + }, + "get": { + "parameterOrder": [ + "project", + "region", + "healthCheckService" + ], + "path": "projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "id": "compute.regionHealthCheckServices.get", + "response": { + "$ref": "HealthCheckService" + }, + "description": "Returns the specified regional HealthCheckService resource.", + "parameters": { + "region": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the region scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "healthCheckService": { + "type": "string", + "location": "path", + "description": "Name of the HealthCheckService to update. The name must be 1-63 characters long, and comply with RFC1035.", + "required": true + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + } + }, + "flatPath": "projects/{project}/regions/{region}/healthCheckServices/{healthCheckService}" + }, + "insert": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region" + ], + "flatPath": "projects/{project}/regions/{region}/healthCheckServices", + "description": "Creates a regional HealthCheckService resource in the specified project and region using the data included in the request.", + "request": { + "$ref": "HealthCheckService" + }, + "id": "compute.regionHealthCheckServices.insert", + "httpMethod": "POST", + "path": "projects/{project}/regions/{region}/healthCheckServices", + "response": { + "$ref": "Operation" + }, + "parameters": { + "project": { + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "description": "Name of the region scoping this request." + } + } + } + } + }, + "httpHealthChecks": { + "methods": { + "list": { + "flatPath": "projects/{project}/global/httpHealthChecks", + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "maxResults": { + "type": "integer", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "default": "500", + "format": "uint32" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + } + }, + "path": "projects/{project}/global/httpHealthChecks", + "httpMethod": "GET", + "id": "compute.httpHealthChecks.list", + "response": { + "$ref": "HttpHealthCheckList" + }, + "description": "Retrieves the list of HttpHealthCheck resources available to the specified project." + }, + "get": { + "httpMethod": "GET", + "id": "compute.httpHealthChecks.get", + "path": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "parameters": { + "httpHealthCheck": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the HttpHealthCheck resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path", + "description": "Project ID for this request." + } + }, + "flatPath": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "description": "Returns the specified HttpHealthCheck resource. Gets a list of available HTTP health checks by making a list() request.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "HttpHealthCheck" + } + }, + "insert": { + "response": { + "$ref": "Operation" + }, + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request." + } + }, + "httpMethod": "POST", + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "HttpHealthCheck" + }, + "flatPath": "projects/{project}/global/httpHealthChecks", + "description": "Creates a HttpHealthCheck resource in the specified project using the data included in the request.", + "path": "projects/{project}/global/httpHealthChecks", + "id": "compute.httpHealthChecks.insert", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "DELETE", + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "description": "Deletes the specified HttpHealthCheck resource.", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "id": "compute.httpHealthChecks.delete", + "parameters": { + "httpHealthCheck": { + "location": "path", + "description": "Name of the HttpHealthCheck resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "flatPath": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}" + }, + "patch": { + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "httpHealthCheck": { + "required": true, + "type": "string", + "location": "path", + "description": "Name of the HttpHealthCheck resource to patch.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "path": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "httpMethod": "PATCH", + "request": { + "$ref": "HttpHealthCheck" + }, + "id": "compute.httpHealthChecks.patch", + "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules." + }, + "update": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "id": "compute.httpHealthChecks.update", + "httpMethod": "PUT", + "path": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request.", + "response": { + "$ref": "Operation" + }, + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "httpHealthCheck": { + "location": "path", + "type": "string", + "description": "Name of the HttpHealthCheck resource to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + } + }, + "flatPath": "projects/{project}/global/httpHealthChecks/{httpHealthCheck}", + "request": { + "$ref": "HttpHealthCheck" + } + } + } + }, + "regionInstanceGroupManagers": { + "methods": { + "setTargetPools": { + "id": "compute.regionInstanceGroupManagers.setTargetPools", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "parameters": { + "instanceGroupManager": { + "location": "path", + "required": true, + "description": "Name of the managed instance group.", + "type": "string" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "region": { + "required": true, + "type": "string", + "location": "path", + "description": "Name of the region scoping this request." + } + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "description": "Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.", + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "RegionInstanceGroupManagersSetTargetPoolsRequest" + }, + "httpMethod": "POST" + }, + "applyUpdatesToInstances": { + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances", + "description": "Apply updates to selected instances the managed instance group.", + "id": "compute.regionInstanceGroupManagers.applyUpdatesToInstances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "region": { + "description": "Name of the region scoping this request, should conform to RFC1035.", + "location": "path", + "type": "string", + "required": true + }, + "instanceGroupManager": { + "type": "string", + "required": true, + "description": "The name of the managed instance group, should conform to RFC1035.", + "location": "path" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "request": { + "$ref": "RegionInstanceGroupManagersApplyUpdatesRequest" + }, + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/applyUpdatesToInstances" + }, + "list": { + "parameters": { + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "maxResults": { + "default": "500", + "type": "integer", + "minimum": "0", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string" + }, + "region": { + "type": "string", + "required": true, + "location": "path", + "description": "Name of the region scoping this request." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "RegionInstanceGroupManagerList" + }, + "httpMethod": "GET", + "description": "Retrieves the list of managed instance groups that are contained within the specified region.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers", + "id": "compute.regionInstanceGroupManagers.list", + "path": "projects/{project}/regions/{region}/instanceGroupManagers", + "parameterOrder": [ + "project", + "region" + ] + }, + "abandonInstances": { + "httpMethod": "POST", + "request": { + "$ref": "RegionInstanceGroupManagersAbandonInstancesRequest" + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "type": "string", + "required": true + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "response": { + "$ref": "Operation" + }, + "id": "compute.regionInstanceGroupManagers.abandonInstances", + "description": "Flags the specified instances to be immediately removed from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ] + }, + "createInstances": { + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances", + "id": "compute.regionInstanceGroupManagers.createInstances", + "httpMethod": "POST", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "region": { + "type": "string", + "description": "The name of the region where the managed instance group is located. It should conform to RFC1035.", + "required": true, + "location": "path" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "instanceGroupManager": { + "required": true, + "location": "path", + "type": "string", + "description": "The name of the managed instance group. It should conform to RFC1035." + } + }, + "request": { + "$ref": "RegionInstanceGroupManagersCreateInstancesRequest" + }, + "description": "Creates instances with per-instance configs in this regional managed instance group. Instances are created using the current instance template. The create instances operation is marked DONE if the createInstances request is successful. The underlying actions take additional time. You must separately verify the status of the creating or actions with the listmanagedinstances method.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "listPerInstanceConfigs": { + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", + "description": "Lists all of the per-instance configs defined for the managed instance group. The orderBy query parameter is not supported.", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listPerInstanceConfigs", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "RegionInstanceGroupManagersListInstanceConfigsResp" + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "httpMethod": "POST", + "parameters": { + "maxResults": { + "default": "500", + "location": "query", + "format": "uint32", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "region": { + "description": "Name of the region scoping this request, should conform to RFC1035.", + "location": "path", + "type": "string", + "required": true + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "project": { + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "instanceGroupManager": { + "required": true, + "location": "path", + "description": "The name of the managed instance group. It should conform to RFC1035.", + "type": "string" + } + }, + "id": "compute.regionInstanceGroupManagers.listPerInstanceConfigs" + }, + "setInstanceTemplate": { + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "type": "string", + "required": true + }, + "region": { + "description": "Name of the region scoping this request.", + "type": "string", + "location": "path", + "required": true + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "id": "compute.regionInstanceGroupManagers.setInstanceTemplate", + "description": "Sets the instance template to use when creating new instances or recreating instances in this group. Existing instances are not affected.", + "request": { + "$ref": "RegionInstanceGroupManagersSetTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "httpMethod": "POST" + }, + "patchPerInstanceConfigs": { + "description": "Inserts or patches per-instance configs for the managed instance group. perInstanceConfig.name serves as a key used to distinguish whether to perform insert or patch.", + "httpMethod": "POST", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/patchPerInstanceConfigs", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "id": "compute.regionInstanceGroupManagers.patchPerInstanceConfigs", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "location": "path", + "description": "The name of the managed instance group. It should conform to RFC1035.", + "required": true, + "type": "string" + }, + "region": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the region scoping this request, should conform to RFC1035." + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string" + } + }, + "request": { + "$ref": "RegionInstanceGroupManagerPatchInstanceConfigReq" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "description": "Returns all of the details about the specified managed instance group.", + "id": "compute.regionInstanceGroupManagers.get", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "GET", + "parameters": { + "region": { + "required": true, + "location": "path", + "description": "Name of the region scoping this request.", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "instanceGroupManager": { + "location": "path", + "required": true, + "description": "Name of the managed instance group to return.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "InstanceGroupManager" + } + }, + "updatePerInstanceConfigs": { + "request": { + "$ref": "RegionInstanceGroupManagerUpdateInstanceConfigReq" + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/updatePerInstanceConfigs", + "description": "Inserts or updates per-instance configs for the managed instance group. perInstanceConfig.name serves as a key used to distinguish whether to perform insert or patch.", + "id": "compute.regionInstanceGroupManagers.updatePerInstanceConfigs", + "response": { + "$ref": "Operation" + }, + "parameters": { + "instanceGroupManager": { + "type": "string", + "required": true, + "location": "path", + "description": "The name of the managed instance group. It should conform to RFC1035." + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request, should conform to RFC1035.", + "location": "path", + "required": true + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request.", + "type": "string" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ] + }, + "delete": { + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "description": "Deletes the specified managed instance group and all of the instances in that group.", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "response": { + "$ref": "Operation" + }, + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group to delete.", + "location": "path", + "required": true + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true, + "description": "Project ID for this request." + }, + "region": { + "required": true, + "location": "path", + "description": "Name of the region scoping this request.", + "type": "string" + } + }, + "id": "compute.regionInstanceGroupManagers.delete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "httpMethod": "DELETE" + }, + "patch": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the instance group manager.", + "location": "path", + "required": true + }, + "region": { + "location": "path", + "description": "Name of the region scoping this request.", + "type": "string", + "required": true + }, + "project": { + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + }, + "id": "compute.regionInstanceGroupManagers.patch", + "request": { + "$ref": "InstanceGroupManager" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "PATCH", + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is patched even if the instances in the group are still in the process of being patched. You must separately verify the status of the individual instances with the listmanagedinstances method. This method supports PATCH semantics and uses the JSON merge patch format and processing rules. If you update your group to specify a new template or instance configuration, it's possible that your intended specification for each VM in the group is different from the current state of that VM. To learn how to apply an updated configuration to the VMs in a MIG, see Updating instances in a MIG.", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}" + }, + "recreateInstances": { + "httpMethod": "POST", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "parameters": { + "region": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the region scoping this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "location": "path", + "description": "Name of the managed instance group.", + "type": "string", + "required": true + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "RegionInstanceGroupManagersRecreateRequest" + }, + "id": "compute.regionInstanceGroupManagers.recreateInstances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Flags the specified VM instances in the managed instance group to be immediately recreated. Each instance is recreated using the group's current configuration. This operation is marked as DONE when the flag is set even if the instances have not yet been recreated. You must separately verify the status of each instance by checking its currentAction field; for more information, see Checking the status of managed instances. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request.", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances" + }, + "deleteInstances": { + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "httpMethod": "POST", + "description": "Flags the specified instances in the managed instance group to be immediately deleted. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. The deleteInstances operation is marked DONE if the deleteInstances request is successful. The underlying actions take additional time. You must separately verify the status of the deleting action with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted. You can specify a maximum of 1000 instances with this method per request.", + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path", + "description": "Project ID for this request." + }, + "instanceGroupManager": { + "description": "Name of the managed instance group.", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.regionInstanceGroupManagers.deleteInstances", + "request": { + "$ref": "RegionInstanceGroupManagersDeleteInstancesRequest" + } + }, + "listErrors": { + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listErrors", + "response": { + "$ref": "RegionInstanceGroupManagersListErrorsResponse" + }, + "id": "compute.regionInstanceGroupManagers.listErrors", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group. It must be a string that meets the requirements in RFC1035, or an unsigned long integer: must match regexp pattern: (?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)|1-9{0,19}.", + "required": true, + "location": "path", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "region": { + "description": "Name of the region scoping this request. This should conform to RFC1035.", + "type": "string", + "location": "path", + "required": true + }, + "maxResults": { + "minimum": "0", + "location": "query", + "default": "500", + "type": "integer", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + } + }, + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listErrors", + "description": "Lists all errors thrown by actions on instances for a given regional managed instance group. The filter and orderBy query parameters are not supported.", + "httpMethod": "GET" + }, + "listManagedInstances": { + "httpMethod": "POST", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "response": { + "$ref": "RegionInstanceGroupManagersListInstancesResponse" + }, + "parameters": { + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "maxResults": { + "location": "query", + "type": "integer", + "default": "500", + "format": "uint32", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "project": { + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "region": { + "required": true, + "type": "string", + "description": "Name of the region scoping this request.", + "location": "path" + }, + "instanceGroupManager": { + "description": "The name of the managed instance group.", + "location": "path", + "type": "string", + "required": true + } + }, + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "id": "compute.regionInstanceGroupManagers.listManagedInstances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "description": "Lists the instances in the managed instance group and instances that are scheduled to be created. The list includes any current actions that the group has scheduled for its instances. The orderBy query parameter is not supported." + }, + "insert": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, instances in the group are created using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method. A regional managed instance group can contain up to 2000 instances.", + "httpMethod": "POST", + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers", + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers", + "id": "compute.regionInstanceGroupManagers.insert", + "request": { + "$ref": "InstanceGroupManager" + }, + "parameters": { + "project": { + "required": true, + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "region": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the region scoping this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + } + }, + "resize": { + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", + "id": "compute.regionInstanceGroupManagers.resize", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", + "parameters": { + "size": { + "location": "query", + "description": "Number of instances that should exist in this instance group manager.", + "required": true, + "type": "integer", + "format": "int32", + "minimum": "0" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "instanceGroupManager": { + "location": "path", + "type": "string", + "description": "Name of the managed instance group.", + "required": true + }, + "region": { + "location": "path", + "description": "Name of the region scoping this request.", + "type": "string", + "required": true + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string" + } + }, + "description": "Changes the intended size of the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes one or more instances. The resize operation is marked DONE if the resize request is successful. The underlying actions take additional time. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration has elapsed before the VM instance is removed or deleted.", + "httpMethod": "POST", + "parameterOrder": [ + "project", + "region", + "instanceGroupManager", + "size" + ] + }, + "deletePerInstanceConfigs": { + "request": { + "$ref": "RegionInstanceGroupManagerDeleteInstanceConfigReq" + }, + "path": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.regionInstanceGroupManagers.deletePerInstanceConfigs", + "parameters": { + "instanceGroupManager": { + "description": "The name of the managed instance group. It should conform to RFC1035.", + "type": "string", + "location": "path", + "required": true + }, + "region": { + "required": true, + "type": "string", + "description": "Name of the region scoping this request, should conform to RFC1035.", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "flatPath": "projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deletePerInstanceConfigs", + "response": { + "$ref": "Operation" + }, + "description": "Deletes selected per-instance configs for the managed instance group.", + "httpMethod": "POST" + } + } + }, + "firewallPolicies": { + "methods": { + "getAssociation": { + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}/getAssociation", + "response": { + "$ref": "FirewallPolicyAssociation" + }, + "description": "Gets an association with the specified name.", + "id": "compute.firewallPolicies.getAssociation", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "locations/global/firewallPolicies/{firewallPolicy}/getAssociation", + "parameters": { + "firewallPolicy": { + "type": "string", + "description": "Name of the firewall policy to which the queried rule belongs.", + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "required": true, + "location": "path" + }, + "name": { + "location": "query", + "description": "The name of the association to get from the firewall policy.", + "type": "string" + } + }, + "httpMethod": "GET", + "parameterOrder": [ + "firewallPolicy" + ] + }, + "testIamPermissions": { + "parameters": { + "resource": { + "required": true, + "location": "path", + "description": "Name or id of the resource for this request.", + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "type": "string" + } + }, + "flatPath": "locations/global/firewallPolicies/{resource}/testIamPermissions", + "path": "locations/global/firewallPolicies/{resource}/testIamPermissions", + "parameterOrder": [ + "resource" + ], + "response": { + "$ref": "TestPermissionsResponse" + }, + "description": "Returns permissions that a caller has on the specified resource.", + "request": { + "$ref": "TestPermissionsRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.firewallPolicies.testIamPermissions", + "httpMethod": "POST" + }, + "removeAssociation": { + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}/removeAssociation", + "id": "compute.firewallPolicies.removeAssociation", + "path": "locations/global/firewallPolicies/{firewallPolicy}/removeAssociation", + "description": "Removes an association for the specified firewall policy.", + "parameterOrder": [ + "firewallPolicy" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "name": { + "description": "Name for the attachment that will be removed.", + "location": "query", + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "firewallPolicy": { + "required": true, + "location": "path", + "description": "Name of the firewall policy to update.", + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "type": "string" + } + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "getRule": { + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}/getRule", + "path": "locations/global/firewallPolicies/{firewallPolicy}/getRule", + "description": "Gets a rule of the specified priority.", + "httpMethod": "GET", + "id": "compute.firewallPolicies.getRule", + "response": { + "$ref": "FirewallPolicyRule" + }, + "parameters": { + "firewallPolicy": { + "description": "Name of the firewall policy to which the queried rule belongs.", + "type": "string", + "location": "path", + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "required": true + }, + "priority": { + "type": "integer", + "format": "int32", + "location": "query", + "description": "The priority of the rule to get from the firewall policy." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "firewallPolicy" + ] + }, + "patchRule": { + "id": "compute.firewallPolicies.patchRule", + "response": { + "$ref": "Operation" + }, + "description": "Patches a rule of the specified priority.", + "path": "locations/global/firewallPolicies/{firewallPolicy}/patchRule", + "httpMethod": "POST", + "parameterOrder": [ + "firewallPolicy" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "priority": { + "location": "query", + "type": "integer", + "description": "The priority of the rule to patch.", + "format": "int32" + }, + "firewallPolicy": { + "type": "string", + "description": "Name of the firewall policy to update.", + "location": "path", + "required": true, + "pattern": "(firewallPolicies/)?[0-9]{0,20}" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "request": { + "$ref": "FirewallPolicyRule" + }, + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}/patchRule" + }, + "getIamPolicy": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.firewallPolicies.getIamPolicy", + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "httpMethod": "GET", + "parameters": { + "resource": { + "required": true, + "type": "string", + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "location": "path", + "description": "Name or id of the resource for this request." + }, + "optionsRequestedPolicyVersion": { + "type": "integer", + "description": "Requested IAM Policy version.", + "location": "query", + "format": "int32" + } + }, + "response": { + "$ref": "Policy" + }, + "flatPath": "locations/global/firewallPolicies/{resource}/getIamPolicy", + "parameterOrder": [ + "resource" + ], + "path": "locations/global/firewallPolicies/{resource}/getIamPolicy" + }, + "move": { + "parameterOrder": [ + "firewallPolicy", + "parentId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}/move", + "description": "Moves the specified firewall policy.", + "parameters": { + "firewallPolicy": { + "description": "Name of the firewall policy to update.", + "type": "string", + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "required": true, + "location": "path" + }, + "parentId": { + "type": "string", + "description": "The new parent of the firewall policy.", + "location": "query", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "locations/global/firewallPolicies/{firewallPolicy}/move", + "id": "compute.firewallPolicies.move" + }, + "setIamPolicy": { + "response": { + "$ref": "Policy" + }, + "httpMethod": "POST", + "request": { + "$ref": "GlobalOrganizationSetPolicyRequest" + }, + "parameters": { + "resource": { + "description": "Name or id of the resource for this request.", + "type": "string", + "required": true, + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "location": "path" + } + }, + "id": "compute.firewallPolicies.setIamPolicy", + "parameterOrder": [ + "resource" + ], + "path": "locations/global/firewallPolicies/{resource}/setIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "locations/global/firewallPolicies/{resource}/setIamPolicy", + "description": "Sets the access control policy on the specified resource. Replaces any existing policy." + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "firewallPolicy" + ], + "httpMethod": "DELETE", + "id": "compute.firewallPolicies.delete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "firewallPolicy": { + "type": "string", + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "location": "path", + "description": "Name of the firewall policy to delete.", + "required": true + } + }, + "description": "Deletes the specified policy.", + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}", + "path": "locations/global/firewallPolicies/{firewallPolicy}" + }, + "cloneRules": { + "parameterOrder": [ + "firewallPolicy" + ], + "path": "locations/global/firewallPolicies/{firewallPolicy}/cloneRules", + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}/cloneRules", + "httpMethod": "POST", + "parameters": { + "firewallPolicy": { + "required": true, + "location": "path", + "description": "Name of the firewall policy to update.", + "type": "string", + "pattern": "(firewallPolicies/)?[0-9]{0,20}" + }, + "sourceFirewallPolicy": { + "location": "query", + "type": "string", + "description": "The firewall policy from which to copy rules." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + }, + "description": "Copies rules to the specified firewall policy.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.firewallPolicies.cloneRules", + "response": { + "$ref": "Operation" + } + }, + "get": { + "path": "locations/global/firewallPolicies/{firewallPolicy}", + "parameters": { + "firewallPolicy": { + "location": "path", + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "required": true, + "description": "Name of the firewall policy to get.", + "type": "string" + } + }, + "response": { + "$ref": "FirewallPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "firewallPolicy" + ], + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}", + "description": "Returns the specified firewall policy.", + "httpMethod": "GET", + "id": "compute.firewallPolicies.get" + }, + "list": { + "response": { + "$ref": "FirewallPolicyList" + }, + "description": "Lists all the policies that have been configured for the specified folder or organization.", + "flatPath": "locations/global/firewallPolicies", + "path": "locations/global/firewallPolicies", + "parameters": { + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "default": "500", + "type": "integer", + "location": "query", + "minimum": "0" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "parentId": { + "location": "query", + "description": "Parent ID for this request.", + "type": "string" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + } + }, + "id": "compute.firewallPolicies.list", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET" + }, + "addAssociation": { + "path": "locations/global/firewallPolicies/{firewallPolicy}/addAssociation", + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}/addAssociation", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "firewallPolicy" + ], + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "FirewallPolicyAssociation" + }, + "id": "compute.firewallPolicies.addAssociation", + "description": "Inserts an association for the specified firewall policy.", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "firewallPolicy": { + "description": "Name of the firewall policy to update.", + "type": "string", + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "location": "path", + "required": true + }, + "replaceExistingAssociation": { + "description": "Indicates whether or not to replace it if an association of the attachment already exists. This is false by default, in which case an error will be returned if an association already exists.", + "type": "boolean", + "location": "query" + } + }, + "httpMethod": "POST" + }, + "removeRule": { + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}/removeRule", + "id": "compute.firewallPolicies.removeRule", + "httpMethod": "POST", + "parameterOrder": [ + "firewallPolicy" + ], + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "firewallPolicy": { + "type": "string", + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "description": "Name of the firewall policy to update.", + "location": "path", + "required": true + }, + "priority": { + "description": "The priority of the rule to remove from the firewall policy.", + "location": "query", + "type": "integer", + "format": "int32" + } + }, + "path": "locations/global/firewallPolicies/{firewallPolicy}/removeRule", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Deletes a rule of the specified priority.", + "response": { + "$ref": "Operation" + } + }, + "addRule": { + "id": "compute.firewallPolicies.addRule", + "parameterOrder": [ + "firewallPolicy" + ], + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}/addRule", + "response": { + "$ref": "Operation" + }, + "description": "Inserts a rule into a firewall policy.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "FirewallPolicyRule" + }, + "httpMethod": "POST", + "parameters": { + "firewallPolicy": { + "required": true, + "type": "string", + "description": "Name of the firewall policy to update.", + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "location": "path" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "path": "locations/global/firewallPolicies/{firewallPolicy}/addRule" + }, + "patch": { + "path": "locations/global/firewallPolicies/{firewallPolicy}", + "parameterOrder": [ + "firewallPolicy" + ], + "id": "compute.firewallPolicies.patch", + "request": { + "$ref": "FirewallPolicy" + }, + "description": "Patches the specified policy with the data included in the request.", + "flatPath": "locations/global/firewallPolicies/{firewallPolicy}", + "httpMethod": "PATCH", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "firewallPolicy": { + "location": "path", + "description": "Name of the firewall policy to update.", + "required": true, + "pattern": "(firewallPolicies/)?[0-9]{0,20}", + "type": "string" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "response": { + "$ref": "Operation" + } + }, + "listAssociations": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "FirewallPoliciesListAssociationsResponse" + }, + "httpMethod": "GET", + "path": "locations/global/firewallPolicies/listAssociations", + "id": "compute.firewallPolicies.listAssociations", + "description": "Lists associations of a specified target, i.e., organization or folder.", + "flatPath": "locations/global/firewallPolicies/listAssociations", + "parameters": { + "targetResource": { + "location": "query", + "type": "string", + "description": "The target resource to list associations. It is an organization, or a folder." + } + } + }, + "insert": { + "parameterOrder": [ + "parentId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "locations/global/firewallPolicies", + "id": "compute.firewallPolicies.insert", + "description": "Creates a new policy in the specified project using the data included in the request.", + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "parentId": { + "location": "query", + "description": "Parent ID for this request. The ID can be either be \"folders/[FOLDER_ID]\" if the parent is a folder or \"organizations/[ORGANIZATION_ID]\" if the parent is an organization.", + "type": "string", + "required": true + } + }, + "request": { + "$ref": "FirewallPolicy" + }, + "flatPath": "locations/global/firewallPolicies", + "httpMethod": "POST" + } + } + }, + "globalOrganizationOperations": { + "methods": { + "delete": { + "path": "locations/global/operations/{operation}", + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Deletes the specified Operations resource.", + "parameterOrder": [ + "operation" + ], + "parameters": { + "parentId": { + "location": "query", + "description": "Parent ID for this request.", + "type": "string" + }, + "operation": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the Operations resource to delete.", + "type": "string" + } + }, + "flatPath": "locations/global/operations/{operation}", + "id": "compute.globalOrganizationOperations.delete" + }, + "get": { + "parameterOrder": [ + "operation" + ], + "parameters": { + "parentId": { + "description": "Parent ID for this request.", + "location": "query", + "type": "string" + }, + "operation": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the Operations resource to return.", + "type": "string", + "location": "path" + } + }, + "description": "Retrieves the specified Operations resource. Gets a list of operations by making a `list()` request.", + "response": { + "$ref": "Operation" + }, + "path": "locations/global/operations/{operation}", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.globalOrganizationOperations.get", + "flatPath": "locations/global/operations/{operation}" + }, + "list": { + "description": "Retrieves a list of Operation resources contained within the specified organization.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "locations/global/operations", + "parameters": { + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "parentId": { + "location": "query", + "type": "string", + "description": "Parent ID for this request." + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "maxResults": { + "format": "uint32", + "type": "integer", + "default": "500", + "location": "query", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + } + }, + "id": "compute.globalOrganizationOperations.list", + "path": "locations/global/operations", + "response": { + "$ref": "OperationList" + }, + "httpMethod": "GET" + } + } + }, + "securityPolicies": { + "methods": { + "list": { + "flatPath": "projects/{project}/global/securityPolicies", + "id": "compute.securityPolicies.list", + "response": { + "$ref": "SecurityPolicyList" + }, + "parameters": { + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "location": "query", + "type": "integer", + "default": "500", + "format": "uint32" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "project": { + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + } + }, + "httpMethod": "GET", + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/global/securityPolicies", + "description": "List all the policies that have been configured for the specified project.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getRule": { + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/getRule", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Gets a rule at the specified priority.", + "parameters": { + "priority": { + "type": "integer", + "location": "query", + "description": "The priority of the rule to get from the security policy.", + "format": "int32" + }, + "securityPolicy": { + "location": "path", + "description": "Name of the security policy to which the queried rule belongs.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request." + } + }, + "id": "compute.securityPolicies.getRule", + "httpMethod": "GET", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "path": "projects/{project}/global/securityPolicies/{securityPolicy}/getRule", + "response": { + "$ref": "SecurityPolicyRule" + } + }, + "listPreconfiguredExpressionSets": { + "description": "Gets the current list of preconfigured Web Application Firewall (WAF) expressions.", + "parameterOrder": [ + "project" + ], + "parameters": { + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "description": "Project ID for this request." + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "maxResults": { + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500", + "type": "integer", + "location": "query" + } + }, + "id": "compute.securityPolicies.listPreconfiguredExpressionSets", + "flatPath": "projects/{project}/global/securityPolicies/listPreconfiguredExpressionSets", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "SecurityPoliciesListPreconfiguredExpressionSetsResponse" + }, + "path": "projects/{project}/global/securityPolicies/listPreconfiguredExpressionSets" + }, + "insert": { + "httpMethod": "POST", + "flatPath": "projects/{project}/global/securityPolicies", + "response": { + "$ref": "Operation" + }, + "id": "compute.securityPolicies.insert", + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "SecurityPolicy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/global/securityPolicies", + "description": "Creates a new policy in the specified project using the data included in the request.", + "parameters": { + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + } + }, + "patchRule": { + "id": "compute.securityPolicies.patchRule", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Patches a rule at the specified priority.", + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/patchRule", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "parameters": { + "priority": { + "format": "int32", + "location": "query", + "type": "integer", + "description": "The priority of the rule to patch." + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true + }, + "securityPolicy": { + "required": true, + "description": "Name of the security policy to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path" + } + }, + "path": "projects/{project}/global/securityPolicies/{securityPolicy}/patchRule", + "httpMethod": "POST", + "request": { + "$ref": "SecurityPolicyRule" + }, + "response": { + "$ref": "Operation" + } + }, + "addRule": { + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/addRule", + "description": "Inserts a rule into a security policy.", + "path": "projects/{project}/global/securityPolicies/{securityPolicy}/addRule", + "request": { + "$ref": "SecurityPolicyRule" + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "securityPolicy": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the security policy to update.", + "location": "path", + "type": "string" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request." + } + }, + "parameterOrder": [ + "project", + "securityPolicy" + ], + "id": "compute.securityPolicies.addRule", + "response": { + "$ref": "Operation" + } + }, + "removeRule": { + "id": "compute.securityPolicies.removeRule", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "response": { + "$ref": "Operation" + }, + "description": "Deletes a rule at the specified priority.", + "parameters": { + "priority": { + "type": "integer", + "description": "The priority of the rule to remove from the security policy.", + "format": "int32", + "location": "query" + }, + "securityPolicy": { + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "description": "Name of the security policy to update." + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true + } + }, + "httpMethod": "POST", + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}/removeRule", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/global/securityPolicies/{securityPolicy}/removeRule" + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "httpMethod": "DELETE", + "path": "projects/{project}/global/securityPolicies/{securityPolicy}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "securityPolicy" + ], + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}", + "id": "compute.securityPolicies.delete", + "parameters": { + "securityPolicy": { + "description": "Name of the security policy to delete.", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path", + "description": "Project ID for this request." + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "description": "Deletes the specified policy." + }, + "patch": { + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}", + "parameters": { + "securityPolicy": { + "required": true, + "type": "string", + "description": "Name of the security policy to update.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "path": "projects/{project}/global/securityPolicies/{securityPolicy}", + "parameterOrder": [ + "project", + "securityPolicy" + ], + "description": "Patches the specified policy with the data included in the request. This cannot be used to be update the rules in the policy. Please use the per rule methods like addRule, patchRule, and removeRule instead.", + "request": { + "$ref": "SecurityPolicy" + }, + "id": "compute.securityPolicies.patch", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "PATCH" + }, + "get": { + "parameterOrder": [ + "project", + "securityPolicy" + ], + "id": "compute.securityPolicies.get", + "flatPath": "projects/{project}/global/securityPolicies/{securityPolicy}", + "response": { + "$ref": "SecurityPolicy" + }, + "parameters": { + "securityPolicy": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the security policy to get.", + "location": "path", + "type": "string", + "required": true + }, + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string" + } + }, + "description": "List all of the ordered rules present in a single specified policy.", + "path": "projects/{project}/global/securityPolicies/{securityPolicy}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET" + } + } + }, + "backendBuckets": { + "methods": { + "deleteSignedUrlKey": { + "id": "compute.backendBuckets.deleteSignedUrlKey", + "path": "projects/{project}/global/backendBuckets/{backendBucket}/deleteSignedUrlKey", + "parameterOrder": [ + "project", + "backendBucket", + "keyName" + ], + "description": "Deletes a key for validating requests with signed URLs for this backend bucket.", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/backendBuckets/{backendBucket}/deleteSignedUrlKey", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "location": "path", + "required": true, + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "backendBucket": { + "description": "Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035.", + "required": true, + "type": "string", + "location": "path" + }, + "keyName": { + "location": "query", + "description": "The name of the Signed URL Key to delete.", + "type": "string", + "required": true + } + }, + "httpMethod": "POST" + }, + "patch": { + "flatPath": "projects/{project}/global/backendBuckets/{backendBucket}", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "backendBucket" + ], + "httpMethod": "PATCH", + "path": "projects/{project}/global/backendBuckets/{backendBucket}", + "description": "Updates the specified BackendBucket resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "BackendBucket" + }, + "id": "compute.backendBuckets.patch", + "parameters": { + "backendBucket": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the BackendBucket resource to patch.", + "type": "string", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "location": "path" + } + } + }, + "delete": { + "httpMethod": "DELETE", + "flatPath": "projects/{project}/global/backendBuckets/{backendBucket}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "backendBucket": { + "type": "string", + "required": true, + "location": "path", + "description": "Name of the BackendBucket resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "parameterOrder": [ + "project", + "backendBucket" + ], + "id": "compute.backendBuckets.delete", + "path": "projects/{project}/global/backendBuckets/{backendBucket}", + "description": "Deletes the specified BackendBucket resource." + }, + "get": { + "description": "Returns the specified BackendBucket resource. Gets a list of available backend buckets by making a list() request.", + "flatPath": "projects/{project}/global/backendBuckets/{backendBucket}", + "parameterOrder": [ + "project", + "backendBucket" + ], + "httpMethod": "GET", + "path": "projects/{project}/global/backendBuckets/{backendBucket}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "BackendBucket" + }, + "id": "compute.backendBuckets.get", + "parameters": { + "backendBucket": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string", + "description": "Name of the BackendBucket resource to return." + }, + "project": { + "location": "path", + "required": true, + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + } + }, + "update": { + "description": "Updates the specified BackendBucket resource with the data included in the request.", + "parameterOrder": [ + "project", + "backendBucket" + ], + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "backendBucket": { + "type": "string", + "location": "path", + "description": "Name of the BackendBucket resource to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + } + }, + "request": { + "$ref": "BackendBucket" + }, + "path": "projects/{project}/global/backendBuckets/{backendBucket}", + "flatPath": "projects/{project}/global/backendBuckets/{backendBucket}", + "id": "compute.backendBuckets.update", + "response": { + "$ref": "Operation" + } + }, + "addSignedUrlKey": { + "description": "Adds a key for validating requests with signed URLs for this backend bucket.", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/backendBuckets/{backendBucket}/addSignedUrlKey", + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "backendBucket": { + "location": "path", + "description": "Name of the BackendBucket resource to which the Signed URL Key should be added. The name should conform to RFC1035.", + "type": "string", + "required": true + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "path": "projects/{project}/global/backendBuckets/{backendBucket}/addSignedUrlKey", + "httpMethod": "POST", + "id": "compute.backendBuckets.addSignedUrlKey", + "parameterOrder": [ + "project", + "backendBucket" + ], + "request": { + "$ref": "SignedUrlKey" + } + }, + "insert": { + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/backendBuckets", + "description": "Creates a BackendBucket resource in the specified project using the data included in the request.", + "request": { + "$ref": "BackendBucket" + }, + "httpMethod": "POST", + "flatPath": "projects/{project}/global/backendBuckets", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "location": "path" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "id": "compute.backendBuckets.insert" + }, + "list": { + "parameters": { + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "type": "integer", + "minimum": "0", + "location": "query" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path", + "description": "Project ID for this request." + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + } + }, + "path": "projects/{project}/global/backendBuckets", + "description": "Retrieves the list of BackendBucket resources available to the specified project.", + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "BackendBucketList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.backendBuckets.list", + "httpMethod": "GET", + "flatPath": "projects/{project}/global/backendBuckets" + } + } + }, + "nodeTypes": { + "methods": { + "get": { + "flatPath": "projects/{project}/zones/{zone}/nodeTypes/{nodeType}", + "response": { + "$ref": "NodeType" + }, + "id": "compute.nodeTypes.get", + "description": "Returns the specified node type. Gets a list of available node types by making a list() request.", + "parameters": { + "nodeType": { + "type": "string", + "location": "path", + "description": "Name of the node type to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path", + "type": "string", + "description": "The name of the zone for this request." + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true + } + }, + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "zone", + "nodeType" + ], + "path": "projects/{project}/zones/{zone}/nodeTypes/{nodeType}" + }, + "list": { + "id": "compute.nodeTypes.list", + "flatPath": "projects/{project}/zones/{zone}/nodeTypes", + "parameters": { + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "zone": { + "required": true, + "description": "The name of the zone for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "maxResults": { + "minimum": "0", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "format": "uint32", + "location": "query" + }, + "project": { + "type": "string", + "required": true, + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + } + }, + "path": "projects/{project}/zones/{zone}/nodeTypes", + "description": "Retrieves a list of node types available to the specified project.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "response": { + "$ref": "NodeTypeList" + }, + "parameterOrder": [ + "project", + "zone" + ] + }, + "aggregatedList": { + "path": "projects/{project}/aggregated/nodeTypes", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/aggregated/nodeTypes", + "response": { + "$ref": "NodeTypeAggregatedList" + }, + "id": "compute.nodeTypes.aggregatedList", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of node types.", + "parameters": { + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500", + "type": "integer", + "format": "uint32", + "location": "query" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query", + "type": "boolean" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + } + }, + "parameterOrder": [ + "project" + ] + } + } + }, + "regionNotificationEndpoints": { + "methods": { + "delete": { + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request.", + "required": true, + "location": "path" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "type": "string" + }, + "region": { + "required": true, + "type": "string", + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "notificationEndpoint": { + "required": true, + "description": "Name of the NotificationEndpoint resource to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + } + }, + "path": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", + "description": "Deletes the specified NotificationEndpoint in the given region", + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", + "parameterOrder": [ + "project", + "region", + "notificationEndpoint" + ], + "response": { + "$ref": "Operation" + }, + "id": "compute.regionNotificationEndpoints.delete" + }, + "insert": { + "id": "compute.regionNotificationEndpoints.insert", + "httpMethod": "POST", + "path": "projects/{project}/regions/{region}/notificationEndpoints", + "description": "Create a NotificationEndpoint in the specified project in the given region using the parameters that are included in the request.", + "flatPath": "projects/{project}/regions/{region}/notificationEndpoints", + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "NotificationEndpoint" + }, + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "region": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "httpMethod": "GET", + "response": { + "$ref": "NotificationEndpoint" + }, + "parameterOrder": [ + "project", + "region", + "notificationEndpoint" + ], + "description": "Returns the specified NotificationEndpoint resource in the given region.", + "path": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}", + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true + }, + "region": { + "location": "path", + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "notificationEndpoint": { + "type": "string", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the NotificationEndpoint resource to return." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.regionNotificationEndpoints.get", + "flatPath": "projects/{project}/regions/{region}/notificationEndpoints/{notificationEndpoint}" + }, + "list": { + "parameters": { + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "description": "Name of the region scoping this request.", + "type": "string" + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "maxResults": { + "location": "query", + "type": "integer", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "format": "uint32" + } + }, + "id": "compute.regionNotificationEndpoints.list", + "description": "Lists the NotificationEndpoints for a project in the given region.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "NotificationEndpointList" + }, + "flatPath": "projects/{project}/regions/{region}/notificationEndpoints", + "httpMethod": "GET", + "parameterOrder": [ + "project", + "region" + ], + "path": "projects/{project}/regions/{region}/notificationEndpoints" + } + } + }, + "autoscalers": { + "methods": { + "patch": { + "parameterOrder": [ + "project", + "zone" + ], + "path": "projects/{project}/zones/{zone}/autoscalers", + "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "id": "compute.autoscalers.patch", + "flatPath": "projects/{project}/zones/{zone}/autoscalers", + "httpMethod": "PATCH", + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "zone": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "description": "Name of the zone for this request.", + "type": "string" + }, + "autoscaler": { + "location": "query", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the autoscaler to patch.", + "type": "string" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "location": "path" + } + }, + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "flatPath": "projects/{project}/zones/{zone}/autoscalers/{autoscaler}", + "path": "projects/{project}/zones/{zone}/autoscalers/{autoscaler}", + "description": "Returns the specified autoscaler resource. Gets a list of available autoscalers by making a list() request.", + "response": { + "$ref": "Autoscaler" + }, + "httpMethod": "GET", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true, + "description": "Project ID for this request." + }, + "autoscaler": { + "location": "path", + "description": "Name of the autoscaler to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true + }, + "zone": { + "location": "path", + "description": "Name of the zone for this request.", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "id": "compute.autoscalers.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "zone", + "autoscaler" + ] + }, + "update": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/zones/{zone}/autoscalers", + "httpMethod": "PUT", + "path": "projects/{project}/zones/{zone}/autoscalers", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "autoscaler": { + "location": "query", + "type": "string", + "description": "Name of the autoscaler to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true + } + }, + "id": "compute.autoscalers.update", + "request": { + "$ref": "Autoscaler" + }, + "description": "Updates an autoscaler in the specified project using the data included in the request.", + "response": { + "$ref": "Operation" + } + }, + "insert": { + "flatPath": "projects/{project}/zones/{zone}/autoscalers", + "httpMethod": "POST", + "path": "projects/{project}/zones/{zone}/autoscalers", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "project": { + "location": "path", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the zone for this request.", + "required": true, + "location": "path" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "response": { + "$ref": "Operation" + }, + "description": "Creates an autoscaler in the specified project using the data included in the request.", + "request": { + "$ref": "Autoscaler" + }, + "parameterOrder": [ + "project", + "zone" + ], + "id": "compute.autoscalers.insert" + }, + "aggregatedList": { + "id": "compute.autoscalers.aggregatedList", + "flatPath": "projects/{project}/aggregated/autoscalers", + "response": { + "$ref": "AutoscalerAggregatedList" + }, + "description": "Retrieves an aggregated list of autoscalers.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "maxResults": { + "minimum": "0", + "format": "uint32", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "default": "500" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "includeAllScopes": { + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query" + }, + "project": { + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + } + }, + "parameterOrder": [ + "project" + ], + "httpMethod": "GET", + "path": "projects/{project}/aggregated/autoscalers" + }, + "list": { + "parameterOrder": [ + "project", + "zone" + ], + "httpMethod": "GET", + "response": { + "$ref": "AutoscalerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves a list of autoscalers contained within the specified zone.", + "id": "compute.autoscalers.list", + "parameters": { + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "format": "uint32", + "location": "query", + "default": "500", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "zone": { + "description": "Name of the zone for this request.", + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + } + }, + "flatPath": "projects/{project}/zones/{zone}/autoscalers", + "path": "projects/{project}/zones/{zone}/autoscalers" + }, + "delete": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/zones/{zone}/autoscalers/{autoscaler}", + "flatPath": "projects/{project}/zones/{zone}/autoscalers/{autoscaler}", + "parameterOrder": [ + "project", + "zone", + "autoscaler" + ], + "parameters": { + "zone": { + "type": "string", + "description": "Name of the zone for this request.", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "autoscaler": { + "required": true, + "description": "Name of the autoscaler to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "httpMethod": "DELETE", + "response": { + "$ref": "Operation" + }, + "id": "compute.autoscalers.delete", + "description": "Deletes the specified autoscaler." + } + } + }, + "sslPolicies": { + "methods": { + "listAvailableFeatures": { + "description": "Lists all features that can be specified in the SSL policy when using custom profile.", + "parameters": { + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "maxResults": { + "type": "integer", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "format": "uint32", + "default": "500" + }, + "project": { + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + } + }, + "parameterOrder": [ + "project" + ], + "httpMethod": "GET", + "id": "compute.sslPolicies.listAvailableFeatures", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "SslPoliciesListAvailableFeaturesResponse" + }, + "flatPath": "projects/{project}/global/sslPolicies/listAvailableFeatures", + "path": "projects/{project}/global/sslPolicies/listAvailableFeatures" + }, + "insert": { + "path": "projects/{project}/global/sslPolicies", + "httpMethod": "POST", + "id": "compute.sslPolicies.insert", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "SslPolicy" + }, + "description": "Returns the specified SSL policy resource. Gets a list of available SSL policies by making a list() request.", + "parameters": { + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "flatPath": "projects/{project}/global/sslPolicies" + }, + "list": { + "response": { + "$ref": "SslPoliciesList" + }, + "path": "projects/{project}/global/sslPolicies", + "httpMethod": "GET", + "id": "compute.sslPolicies.list", + "flatPath": "projects/{project}/global/sslPolicies", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project" + ], + "description": "Lists all the SSL policies that have been configured for the specified project.", + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "maxResults": { + "location": "query", + "default": "500", + "type": "integer", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + } + } + }, + "patch": { + "request": { + "$ref": "SslPolicy" + }, + "httpMethod": "PATCH", + "parameters": { + "sslPolicy": { + "type": "string", + "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", + "required": true, + "location": "path" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "flatPath": "projects/{project}/global/sslPolicies/{sslPolicy}", + "parameterOrder": [ + "project", + "sslPolicy" + ], + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/sslPolicies/{sslPolicy}", + "description": "Patches the specified SSL policy with the data included in the request.", + "id": "compute.sslPolicies.patch", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "parameterOrder": [ + "project", + "sslPolicy" + ], + "flatPath": "projects/{project}/global/sslPolicies/{sslPolicy}", + "description": "Lists all of the ordered rules present in a single specified policy.", + "parameters": { + "sslPolicy": { + "description": "Name of the SSL policy to update. The name must be 1-63 characters long, and comply with RFC1035.", + "required": true, + "location": "path", + "type": "string" + }, + "project": { + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true + } + }, + "id": "compute.sslPolicies.get", + "response": { + "$ref": "SslPolicy" + }, + "path": "projects/{project}/global/sslPolicies/{sslPolicy}", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/sslPolicies/{sslPolicy}", + "description": "Deletes the specified SSL policy. The SSL policy resource can be deleted only if it is not in use by any TargetHttpsProxy or TargetSslProxy resources.", + "parameters": { + "project": { + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request." + }, + "sslPolicy": { + "type": "string", + "location": "path", + "description": "Name of the SSL policy to delete. The name must be 1-63 characters long, and comply with RFC1035.", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + }, + "id": "compute.sslPolicies.delete", + "path": "projects/{project}/global/sslPolicies/{sslPolicy}", + "httpMethod": "DELETE", + "parameterOrder": [ + "project", + "sslPolicy" + ] + } + } + }, + "regionHealthChecks": { + "methods": { + "get": { + "path": "projects/{project}/regions/{region}/healthChecks/{healthCheck}", + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "required": true + }, + "healthCheck": { + "required": true, + "type": "string", + "location": "path", + "description": "Name of the HealthCheck resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "required": true, + "location": "path", + "description": "Name of the region scoping this request." + } + }, + "description": "Returns the specified HealthCheck resource. Gets a list of available health checks by making a list() request.", + "parameterOrder": [ + "project", + "region", + "healthCheck" + ], + "response": { + "$ref": "HealthCheck" + }, + "httpMethod": "GET", + "flatPath": "projects/{project}/regions/{region}/healthChecks/{healthCheck}", + "id": "compute.regionHealthChecks.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/healthChecks/{healthCheck}", + "httpMethod": "PATCH", + "parameters": { + "healthCheck": { + "location": "path", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the HealthCheck resource to patch." + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "required": true, + "description": "Name of the region scoping this request." + } + }, + "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "path": "projects/{project}/regions/{region}/healthChecks/{healthCheck}", + "request": { + "$ref": "HealthCheck" + }, + "id": "compute.regionHealthChecks.patch", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "region", + "healthCheck" + ] + }, + "list": { + "description": "Retrieves the list of HealthCheck resources available to the specified project.", + "parameters": { + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "region": { + "description": "Name of the region scoping this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path" + }, + "maxResults": { + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "format": "uint32", + "minimum": "0", + "type": "integer" + } + }, + "httpMethod": "GET", + "id": "compute.regionHealthChecks.list", + "response": { + "$ref": "HealthCheckList" + }, + "path": "projects/{project}/regions/{region}/healthChecks", + "parameterOrder": [ + "project", + "region" + ], + "flatPath": "projects/{project}/regions/{region}/healthChecks", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.regionHealthChecks.update", + "httpMethod": "PUT", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "HealthCheck" + }, + "path": "projects/{project}/regions/{region}/healthChecks/{healthCheck}", + "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "region": { + "type": "string", + "required": true, + "description": "Name of the region scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "healthCheck": { + "location": "path", + "description": "Name of the HealthCheck resource to update.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + } + }, + "flatPath": "projects/{project}/regions/{region}/healthChecks/{healthCheck}", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "region", + "healthCheck" + ] + }, + "insert": { + "path": "projects/{project}/regions/{region}/healthChecks", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "description": "Name of the region scoping this request.", + "type": "string" + } + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "HealthCheck" + }, + "parameterOrder": [ + "project", + "region" + ], + "id": "compute.regionHealthChecks.insert", + "flatPath": "projects/{project}/regions/{region}/healthChecks", + "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", + "httpMethod": "POST" + }, + "delete": { + "description": "Deletes the specified HealthCheck resource.", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.regionHealthChecks.delete", + "parameterOrder": [ + "project", + "region", + "healthCheck" + ], + "flatPath": "projects/{project}/regions/{region}/healthChecks/{healthCheck}", + "httpMethod": "DELETE", + "path": "projects/{project}/regions/{region}/healthChecks/{healthCheck}", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "required": true + }, + "healthCheck": { + "description": "Name of the HealthCheck resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "required": true, + "type": "string" + }, + "region": { + "location": "path", + "description": "Name of the region scoping this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + } + } + } + } + }, + "interconnectAttachments": { + "methods": { + "delete": { + "id": "compute.interconnectAttachments.delete", + "httpMethod": "DELETE", + "parameterOrder": [ + "project", + "region", + "interconnectAttachment" + ], + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "flatPath": "projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "interconnectAttachment": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the interconnect attachment to delete.", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "region": { + "location": "path", + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true, + "description": "Project ID for this request." + } + }, + "description": "Deletes the specified interconnect attachment." + }, + "get": { + "parameterOrder": [ + "project", + "region", + "interconnectAttachment" + ], + "id": "compute.interconnectAttachments.get", + "httpMethod": "GET", + "path": "projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "description": "Returns the specified interconnect attachment.", + "parameters": { + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path" + }, + "interconnectAttachment": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "required": true, + "type": "string", + "description": "Name of the interconnect attachment to return." + }, + "region": { + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request." + } + }, + "response": { + "$ref": "InterconnectAttachment" + }, + "flatPath": "projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "aggregatedList": { + "id": "compute.interconnectAttachments.aggregatedList", + "httpMethod": "GET", + "path": "projects/{project}/aggregated/interconnectAttachments", + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "InterconnectAttachmentAggregatedList" + }, + "parameters": { + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "location": "query", + "default": "500", + "type": "integer", + "format": "uint32" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "includeAllScopes": { + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "type": "boolean" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + } + }, + "flatPath": "projects/{project}/aggregated/interconnectAttachments", + "description": "Retrieves an aggregated list of interconnect attachments." + }, + "patch": { + "request": { + "$ref": "InterconnectAttachment" + }, + "flatPath": "projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "description": "Updates the specified interconnect attachment with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/interconnectAttachments/{interconnectAttachment}", + "id": "compute.interconnectAttachments.patch", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region", + "interconnectAttachment" + ], + "httpMethod": "PATCH", + "parameters": { + "region": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "description": "Name of the region scoping this request.", + "type": "string" + }, + "interconnectAttachment": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "description": "Name of the interconnect attachment to patch." + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + } + }, + "list": { + "flatPath": "projects/{project}/regions/{region}/interconnectAttachments", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "InterconnectAttachmentList" + }, + "parameters": { + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "project": { + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + }, + "maxResults": { + "default": "500", + "location": "query", + "type": "integer", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32" + } + }, + "id": "compute.interconnectAttachments.list", + "httpMethod": "GET", + "description": "Retrieves the list of interconnect attachments contained within the specified region.", + "parameterOrder": [ + "project", + "region" + ], + "path": "projects/{project}/regions/{region}/interconnectAttachments" + }, + "insert": { + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region" + ], + "path": "projects/{project}/regions/{region}/interconnectAttachments", + "flatPath": "projects/{project}/regions/{region}/interconnectAttachments", + "description": "Creates an InterconnectAttachment in the specified project using the data included in the request.", + "request": { + "$ref": "InterconnectAttachment" + }, + "id": "compute.interconnectAttachments.insert", + "parameters": { + "region": { + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request.", + "type": "string" + }, + "validateOnly": { + "description": "If true, the request will not be committed.", + "type": "boolean", + "location": "query" + } + }, + "httpMethod": "POST" + } + } + }, + "vpnGateways": { + "methods": { + "list": { + "id": "compute.vpnGateways.list", + "flatPath": "projects/{project}/regions/{region}/vpnGateways", + "parameterOrder": [ + "project", + "region" + ], + "path": "projects/{project}/regions/{region}/vpnGateways", + "description": "Retrieves a list of VPN gateways available to the specified project and region.", + "httpMethod": "GET", + "response": { + "$ref": "VpnGatewayList" + }, + "parameters": { + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "region": { + "type": "string", + "required": true, + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "maxResults": { + "default": "500", + "location": "query", + "minimum": "0", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "project": { + "required": true, + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "parameterOrder": [ + "project", + "region", + "vpnGateway" + ], + "httpMethod": "DELETE", + "parameters": { + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request.", + "required": true, + "location": "path", + "type": "string" + }, + "vpnGateway": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the VPN gateway to delete.", + "required": true, + "location": "path" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "description": "Deletes the specified VPN gateway.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}", + "response": { + "$ref": "Operation" + }, + "id": "compute.vpnGateways.delete", + "flatPath": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}" + }, + "getStatus": { + "parameters": { + "project": { + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "vpnGateway": { + "required": true, + "type": "string", + "description": "Name of the VPN gateway to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "region": { + "location": "path", + "description": "Name of the region for this request.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "path": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}/getStatus", + "id": "compute.vpnGateways.getStatus", + "httpMethod": "GET", + "flatPath": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}/getStatus", + "parameterOrder": [ + "project", + "region", + "vpnGateway" + ], + "description": "Returns the status for the specified VPN gateway.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "VpnGatewaysGetStatusResponse" + } + }, + "insert": { + "description": "Creates a VPN gateway in the specified project and region using the data included in the request.", + "id": "compute.vpnGateways.insert", + "httpMethod": "POST", + "flatPath": "projects/{project}/regions/{region}/vpnGateways", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path" + }, + "region": { + "location": "path", + "description": "Name of the region for this request.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "VpnGateway" + }, + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/vpnGateways", + "parameterOrder": [ + "project", + "region" + ] + }, + "get": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "region", + "vpnGateway" + ], + "description": "Returns the specified VPN gateway. Gets a list of available VPN gateways by making a list() request.", + "response": { + "$ref": "VpnGateway" + }, + "path": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}", + "parameters": { + "region": { + "description": "Name of the region for this request.", + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true + }, + "vpnGateway": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "type": "string", + "required": true, + "description": "Name of the VPN gateway to return." + } + }, + "id": "compute.vpnGateways.get", + "httpMethod": "GET", + "flatPath": "projects/{project}/regions/{region}/vpnGateways/{vpnGateway}" + }, + "aggregatedList": { + "id": "compute.vpnGateways.aggregatedList", + "httpMethod": "GET", + "response": { + "$ref": "VpnGatewayAggregatedList" + }, + "parameters": { + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "maxResults": { + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "type": "integer", + "minimum": "0", + "default": "500" + }, + "includeAllScopes": { + "type": "boolean", + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string" + } + }, + "parameterOrder": [ + "project" + ], + "description": "Retrieves an aggregated list of VPN gateways.", + "flatPath": "projects/{project}/aggregated/vpnGateways", + "path": "projects/{project}/aggregated/vpnGateways", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "path": "projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels", + "id": "compute.vpnGateways.setLabels", + "parameterOrder": [ + "project", + "region", + "resource" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "parameters": { + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "location": "path" + }, + "region": { + "description": "The region for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "resource": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name or id of the resource for this request.", + "location": "path" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "description": "Sets the labels on a VpnGateway. To learn more about labels, read the Labeling Resources documentation.", + "flatPath": "projects/{project}/regions/{region}/vpnGateways/{resource}/setLabels", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.vpnGateways.testIamPermissions", + "flatPath": "projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions", + "response": { + "$ref": "TestPermissionsResponse" + }, + "path": "projects/{project}/regions/{region}/vpnGateways/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path" + }, + "resource": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string", + "location": "path", + "description": "Name or id of the resource for this request." + }, + "region": { + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the region for this request.", + "location": "path" + } + } + } + } + }, + "regionTargetHttpProxies": { + "methods": { + "insert": { + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path", + "description": "Name of the region scoping this request." + }, + "project": { + "required": true, + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/regions/{region}/targetHttpProxies", + "description": "Creates a TargetHttpProxy resource in the specified project and region using the data included in the request.", + "path": "projects/{project}/regions/{region}/targetHttpProxies", + "request": { + "$ref": "TargetHttpProxy" + }, + "id": "compute.regionTargetHttpProxies.insert", + "httpMethod": "POST" + }, + "delete": { + "flatPath": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + "path": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + "description": "Deletes the specified TargetHttpProxy resource.", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "region": { + "location": "path", + "description": "Name of the region scoping this request.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + }, + "targetHttpProxy": { + "description": "Name of the TargetHttpProxy resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path", + "required": true + } + }, + "id": "compute.regionTargetHttpProxies.delete", + "parameterOrder": [ + "project", + "region", + "targetHttpProxy" + ], + "httpMethod": "DELETE" + }, + "get": { + "response": { + "$ref": "TargetHttpProxy" + }, + "description": "Returns the specified TargetHttpProxy resource in the specified region. Gets a list of available target HTTP proxies by making a list() request.", + "parameters": { + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the region scoping this request.", + "location": "path", + "required": true + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "required": true + }, + "targetHttpProxy": { + "required": true, + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the TargetHttpProxy resource to return." + } + }, + "id": "compute.regionTargetHttpProxies.get", + "parameterOrder": [ + "project", + "region", + "targetHttpProxy" + ], + "path": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + "flatPath": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET" + }, + "list": { + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "maxResults": { + "type": "integer", + "default": "500", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "format": "uint32" + } + }, + "id": "compute.regionTargetHttpProxies.list", + "path": "projects/{project}/regions/{region}/targetHttpProxies", + "response": { + "$ref": "TargetHttpProxyList" + }, + "description": "Retrieves the list of TargetHttpProxy resources available to the specified project in the specified region.", + "httpMethod": "GET", + "flatPath": "projects/{project}/regions/{region}/targetHttpProxies", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setUrlMap": { + "flatPath": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "path": "projects/{project}/regions/{region}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "description": "Changes the URL map for TargetHttpProxy.", + "request": { + "$ref": "UrlMapReference" + }, + "id": "compute.regionTargetHttpProxies.setUrlMap", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "region", + "targetHttpProxy" + ], + "parameters": { + "region": { + "required": true, + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request." + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetHttpProxy": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the TargetHttpProxy to set a URL map for.", + "location": "path" + } + } + } + } + }, + "regionSslCertificates": { + "methods": { + "delete": { + "path": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", + "description": "Deletes the specified SslCertificate resource in the region.", + "httpMethod": "DELETE", + "flatPath": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", + "parameterOrder": [ + "project", + "region", + "sslCertificate" + ], + "id": "compute.regionSslCertificates.delete", + "parameters": { + "region": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "location": "query", + "type": "string" + }, + "sslCertificate": { + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the SslCertificate resource to delete." + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "type": "string" + } + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "flatPath": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.regionSslCertificates.get", + "description": "Returns the specified SslCertificate resource in the specified region. Get a list of available SSL certificates by making a list() request.", + "parameterOrder": [ + "project", + "region", + "sslCertificate" + ], + "httpMethod": "GET", + "path": "projects/{project}/regions/{region}/sslCertificates/{sslCertificate}", + "response": { + "$ref": "SslCertificate" + }, + "parameters": { + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "location": "path", + "type": "string", + "required": true + }, + "sslCertificate": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "type": "string", + "description": "Name of the SslCertificate resource to return." + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request." + } + } + }, + "list": { + "path": "projects/{project}/regions/{region}/sslCertificates", + "response": { + "$ref": "SslCertificateList" + }, + "flatPath": "projects/{project}/regions/{region}/sslCertificates", + "parameterOrder": [ + "project", + "region" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "location": "path", + "type": "string" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "type": "string", + "location": "path", + "required": true + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "maxResults": { + "minimum": "0", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "type": "integer", + "default": "500" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + } + }, + "httpMethod": "GET", + "id": "compute.regionSslCertificates.list", + "description": "Retrieves the list of SslCertificate resources available to the specified project in the specified region." + }, + "insert": { + "request": { + "$ref": "SslCertificate" + }, + "response": { + "$ref": "Operation" + }, + "parameters": { + "region": { + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string" + }, + "project": { + "location": "path", + "required": true, + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "type": "string", + "location": "query" + } + }, + "description": "Creates a SslCertificate resource in the specified project and region using the data included in the request", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.regionSslCertificates.insert", + "parameterOrder": [ + "project", + "region" + ], + "path": "projects/{project}/regions/{region}/sslCertificates", + "flatPath": "projects/{project}/regions/{region}/sslCertificates", + "httpMethod": "POST" + } + } + }, + "regionOperations": { + "methods": { + "list": { + "httpMethod": "GET", + "parameterOrder": [ + "project", + "region" + ], + "path": "projects/{project}/regions/{region}/operations", + "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "region": { + "location": "path", + "required": true, + "description": "Name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "location": "query", + "format": "uint32", + "type": "integer", + "minimum": "0" + }, + "project": { + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + } + }, + "response": { + "$ref": "OperationList" + }, + "id": "compute.regionOperations.list", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves a list of Operation resources contained within the specified region.", + "flatPath": "projects/{project}/regions/{region}/operations" + }, + "wait": { + "httpMethod": "POST", + "description": "Waits for the specified Operation resource to return as `DONE` or for the request to approach the 2 minute deadline, and retrieves the specified Operation resource. This method differs from the `GET` method in that it waits for no more than the default deadline (2 minutes) and then returns the current state of the operation, which might be `DONE` or still in progress. This method is called on a best-effort basis. Specifically: - In uncommon cases, when the server is overloaded, the request might return before the default deadline is reached, or might return after zero seconds. - If the default deadline is reached, there is no guarantee that the operation is actually done when the method returns. Be prepared to retry if the operation is not `DONE`. ", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "operation": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path", + "description": "Name of the Operations resource to return." + }, + "region": { + "location": "path", + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "flatPath": "projects/{project}/regions/{region}/operations/{operation}/wait", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/operations/{operation}/wait", + "id": "compute.regionOperations.wait", + "parameterOrder": [ + "project", + "region", + "operation" + ] + }, + "get": { + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/operations/{operation}", + "id": "compute.regionOperations.get", + "flatPath": "projects/{project}/regions/{region}/operations/{operation}", + "description": "Retrieves the specified region-specific Operations resource.", + "parameters": { + "operation": { + "required": true, + "description": "Name of the Operations resource to return.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "location": "path", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + } + }, + "httpMethod": "GET", + "parameterOrder": [ + "project", + "region", + "operation" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "flatPath": "projects/{project}/regions/{region}/operations/{operation}", + "parameters": { + "region": { + "type": "string", + "description": "Name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path" + }, + "project": { + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "operation": { + "type": "string", + "required": true, + "location": "path", + "description": "Name of the Operations resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "DELETE", + "description": "Deletes the specified region-specific Operations resource.", + "parameterOrder": [ + "project", + "region", + "operation" + ], + "id": "compute.regionOperations.delete", + "path": "projects/{project}/regions/{region}/operations/{operation}" + } + } + }, + "targetVpnGateways": { + "methods": { + "aggregatedList": { + "response": { + "$ref": "TargetVpnGatewayAggregatedList" + }, + "parameterOrder": [ + "project" + ], + "flatPath": "projects/{project}/aggregated/targetVpnGateways", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "includeAllScopes": { + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "type": "boolean" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "maxResults": { + "format": "uint32", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer", + "location": "query", + "default": "500" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + } + }, + "path": "projects/{project}/aggregated/targetVpnGateways", + "id": "compute.targetVpnGateways.aggregatedList", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of target VPN gateways." + }, + "delete": { + "response": { + "$ref": "Operation" + }, + "description": "Deletes the specified target VPN gateway.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "httpMethod": "DELETE", + "parameters": { + "region": { + "description": "Name of the region for this request.", + "required": true, + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "targetVpnGateway": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the target VPN gateway to delete.", + "location": "path", + "type": "string" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "id": "compute.targetVpnGateways.delete", + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "path": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}" + }, + "get": { + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "flatPath": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "parameters": { + "targetVpnGateway": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the target VPN gateway to return.", + "required": true, + "location": "path", + "type": "string" + }, + "region": { + "location": "path", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "httpMethod": "GET", + "path": "projects/{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "response": { + "$ref": "TargetVpnGateway" + }, + "id": "compute.targetVpnGateways.get", + "description": "Returns the specified target VPN gateway. Gets a list of available target VPN gateways by making a list() request.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/targetVpnGateways", + "parameters": { + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path", + "description": "Name of the region for this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request." + } + }, + "id": "compute.targetVpnGateways.insert", + "parameterOrder": [ + "project", + "region" + ], + "description": "Creates a target VPN gateway in the specified project and region using the data included in the request.", + "path": "projects/{project}/regions/{region}/targetVpnGateways", + "httpMethod": "POST", + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "TargetVpnGateway" + } + }, + "list": { + "path": "projects/{project}/regions/{region}/targetVpnGateways", + "response": { + "$ref": "TargetVpnGatewayList" + }, + "id": "compute.targetVpnGateways.list", + "parameterOrder": [ + "project", + "region" + ], + "httpMethod": "GET", + "parameters": { + "maxResults": { + "default": "500", + "format": "uint32", + "type": "integer", + "minimum": "0", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "location": "path", + "description": "Name of the region for this request.", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + } + }, + "description": "Retrieves a list of target VPN gateways available to the specified project and region.", + "flatPath": "projects/{project}/regions/{region}/targetVpnGateways", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "instances": { + "methods": { + "bulkInsert": { + "response": { + "$ref": "Operation" + }, + "parameters": { + "project": { + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + }, + "zone": { + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request." + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/zones/{zone}/instances/bulkInsert", + "httpMethod": "POST", + "request": { + "$ref": "BulkInsertInstanceResource" + }, + "description": "Creates multiple instances. Count specifies the number of instances to create.", + "parameterOrder": [ + "project", + "zone" + ], + "path": "projects/{project}/zones/{zone}/instances/bulkInsert", + "id": "compute.instances.bulkInsert" + }, + "insert": { + "parameters": { + "project": { + "type": "string", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "sourceInstanceTemplate": { + "location": "query", + "type": "string", + "description": "Specifies instance template to create the instance. This field is optional. It can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate " + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "zone": { + "required": true, + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request." + } + }, + "id": "compute.instances.insert", + "path": "projects/{project}/zones/{zone}/instances", + "request": { + "$ref": "Instance" + }, + "description": "Creates an instance resource in the specified project using the data included in the request.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "zone" + ], + "flatPath": "projects/{project}/zones/{zone}/instances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST" + }, + "getScreenshot": { + "parameters": { + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "description": "The name of the zone for this request.", + "required": true + }, + "instance": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "description": "Name of the instance scoping this request.", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path" + } + }, + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/screenshot", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "description": "Returns the screenshot from the specified instance.", + "response": { + "$ref": "Screenshot" + }, + "id": "compute.instances.getScreenshot", + "path": "projects/{project}/zones/{zone}/instances/{instance}/screenshot" + }, + "reset": { + "response": { + "$ref": "Operation" + }, + "id": "compute.instances.reset", + "parameters": { + "instance": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "description": "Name of the instance scoping this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "location": "path", + "required": true, + "type": "string" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "description": "Performs a reset on the instance. This is a hard reset the VM does not do a graceful shutdown. For more information, see Resetting an instance.", + "path": "projects/{project}/zones/{zone}/instances/{instance}/reset", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/reset", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setServiceAccount": { + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setServiceAccount", + "id": "compute.instances.setServiceAccount", + "path": "projects/{project}/zones/{zone}/instances/{instance}/setServiceAccount", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "instance": { + "description": "Name of the instance resource to start.", + "required": true, + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "description": "The name of the zone for this request.", + "type": "string", + "required": true + } + }, + "request": { + "$ref": "InstancesSetServiceAccountRequest" + }, + "description": "Sets the service account on the instance. For more information, read Changing the service account and access scopes for an instance.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "response": { + "$ref": "Operation" + } + }, + "update": { + "request": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}", + "id": "compute.instances.update", + "path": "projects/{project}/zones/{zone}/instances/{instance}", + "parameters": { + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "type": "string", + "description": "The name of the zone for this request." + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "instance": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the instance resource to update.", + "required": true, + "type": "string" + }, + "minimalAction": { + "location": "query", + "enumDescriptions": [ + "", + "No changes can be made to the instance.", + "The instance will not restart.", + "The instance will restart." + ], + "description": "Specifies the action to take when updating an instance even if the updated properties do not require it. If not specified, then Compute Engine acts based on the minimum action that the updated properties require.", + "enum": [ + "INVALID", + "NO_EFFECT", + "REFRESH", + "RESTART" + ], + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true, + "description": "Project ID for this request." + }, + "mostDisruptiveAllowedAction": { + "location": "query", + "enumDescriptions": [ + "", + "No changes can be made to the instance.", + "The instance will not restart.", + "The instance will restart." + ], + "type": "string", + "enum": [ + "INVALID", + "NO_EFFECT", + "REFRESH", + "RESTART" + ], + "description": "Specifies the most disruptive action that can be taken on the instance as part of the update. Compute Engine returns an error if the instance properties require a more disruptive action as part of the instance update. Valid options from lowest to highest are NO_EFFECT, REFRESH, and RESTART." + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "description": "Updates an instance only if the necessary resources are available. This method can update only a specific set of instance properties. See Updating a running instance for a list of updatable instance properties.", + "httpMethod": "PUT" + }, + "setDiskAutoDelete": { + "parameterOrder": [ + "project", + "zone", + "instance", + "autoDelete", + "deviceName" + ], + "id": "compute.instances.setDiskAutoDelete", + "parameters": { + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "description": "The name of the zone for this request.", + "type": "string" + }, + "deviceName": { + "description": "The device name of the disk to modify. Make a get() request on the instance to view currently attached disks and device names.", + "location": "query", + "type": "string", + "pattern": "\\w[\\w.-]{0,254}", + "required": true + }, + "autoDelete": { + "location": "query", + "required": true, + "description": "Whether to auto-delete the disk when the instance is deleted.", + "type": "boolean" + }, + "instance": { + "type": "string", + "description": "The instance name for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete", + "description": "Sets the auto-delete flag for a disk attached to an instance.", + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "path": "projects/{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "startWithEncryptionKey": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "httpMethod": "POST", + "id": "compute.instances.startWithEncryptionKey", + "path": "projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", + "parameters": { + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "required": true, + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "project": { + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true + }, + "instance": { + "location": "path", + "type": "string", + "description": "Name of the instance resource to start.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + } + }, + "request": { + "$ref": "InstancesStartWithEncryptionKeyRequest" + }, + "description": "Starts an instance that was stopped using the instances().stop method. For more information, see Restart an instance.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey" + }, + "addResourcePolicies": { + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/addResourcePolicies", + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "request": { + "$ref": "InstancesAddResourcePoliciesRequest" + }, + "parameters": { + "instance": { + "type": "string", + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "location": "path", + "type": "string" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "zone": { + "required": true, + "description": "The name of the zone for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path" + } + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}/addResourcePolicies", + "description": "Adds existing resource policies to an instance. You can only add one policy right now which will be applied to this instance for scheduling live migrations.", + "id": "compute.instances.addResourcePolicies", + "parameterOrder": [ + "project", + "zone", + "instance" + ] + }, + "setScheduling": { + "parameters": { + "project": { + "required": true, + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "instance": { + "type": "string", + "required": true, + "location": "path", + "description": "Instance name for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "zone": { + "description": "The name of the zone for this request.", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "request": { + "$ref": "Scheduling" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/zones/{zone}/instances/{instance}/setScheduling", + "description": "Sets an instance's scheduling options. You can only call this method on a stopped instance, that is, a VM instance that is in a `TERMINATED` state. See Instance Life Cycle for more information on the possible instance states.", + "id": "compute.instances.setScheduling", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setScheduling", + "httpMethod": "POST", + "parameterOrder": [ + "project", + "zone", + "instance" + ] + }, + "delete": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "zone": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "description": "The name of the zone for this request." + }, + "instance": { + "location": "path", + "description": "Name of the instance resource to delete.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + } + }, + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}", + "id": "compute.instances.delete", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}", + "description": "Deletes the specified Instance resource. For more information, see Deleting an instance.", + "httpMethod": "DELETE" + }, + "getEffectiveFirewalls": { + "parameters": { + "project": { + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true + }, + "zone": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "location": "path" + }, + "networkInterface": { + "description": "The name of the network interface to get the effective firewalls.", + "type": "string", + "required": true, + "location": "query" + }, + "instance": { + "location": "path", + "description": "Name of the instance scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "required": true + } + }, + "httpMethod": "GET", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "id": "compute.instances.getEffectiveFirewalls", + "description": "Returns effective firewalls applied to an interface of the instance.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "InstancesGetEffectiveFirewallsResponse" + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/getEffectiveFirewalls" + }, + "listReferrers": { + "httpMethod": "GET", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/referrers", + "response": { + "$ref": "InstanceListReferrers" + }, + "id": "compute.instances.listReferrers", + "description": "Retrieves a list of resources that refer to the VM instance specified in the request. For example, if the VM instance is part of a managed or unmanaged instance group, the referrers list includes the instance group. For more information, read Viewing referrers to VM instances.", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "parameters": { + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "maxResults": { + "minimum": "0", + "default": "500", + "location": "query", + "format": "uint32", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request." + }, + "instance": { + "required": true, + "type": "string", + "description": "Name of the target instance scoping this request, or '-' if the request should span over all instances in the container.", + "location": "path", + "pattern": "-|[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/zones/{zone}/instances/{instance}/referrers" + }, + "getSerialPortOutput": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "SerialPortOutput" + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}/serialPort", + "parameters": { + "port": { + "format": "int32", + "type": "integer", + "maximum": "4", + "description": "Specifies which COM or serial port to retrieve data from.", + "default": "1", + "minimum": "1", + "location": "query" + }, + "zone": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path", + "description": "The name of the zone for this request." + }, + "start": { + "location": "query", + "format": "int64", + "description": "Specifies the starting byte position of the output to return. To start with the first byte of output to the specified port, omit this field or set it to `0`. If the output for that byte position is available, this field matches the `start` parameter sent with the request. If the amount of serial console output exceeds the size of the buffer (1 MB), the oldest output is discarded and is no longer available. If the requested start position refers to discarded output, the start position is adjusted to the oldest output still available, and the adjusted start position is returned as the `start` property value. You can also provide a negative start position, which translates to the most recent number of bytes written to the serial port. For example, -3 is interpreted as the most recent 3 bytes written to the serial console.", + "type": "string" + }, + "project": { + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request." + }, + "instance": { + "location": "path", + "description": "Name of the instance for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + } + }, + "id": "compute.instances.getSerialPortOutput", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/serialPort", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "description": "Returns the last 1 MB of serial port output from the specified instance.", + "httpMethod": "GET" + }, + "detachDisk": { + "description": "Detaches a disk from an instance.", + "path": "projects/{project}/zones/{zone}/instances/{instance}/detachDisk", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/detachDisk", + "parameterOrder": [ + "project", + "zone", + "instance", + "deviceName" + ], + "response": { + "$ref": "Operation" + }, + "id": "compute.instances.detachDisk", + "parameters": { + "deviceName": { + "type": "string", + "location": "query", + "description": "The device name of the disk to detach. Make a get() request on the instance to view currently attached disks and device names.", + "required": true + }, + "instance": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Instance name for this request.", + "location": "path", + "type": "string", + "required": true + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "zone": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "description": "The name of the zone for this request." + }, + "project": { + "required": true, + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST" + }, + "get": { + "response": { + "$ref": "Instance" + }, + "parameters": { + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "instance": { + "location": "path", + "required": true, + "description": "Name of the instance resource to return.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "zone": { + "description": "The name of the zone for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}", + "id": "compute.instances.get", + "httpMethod": "GET", + "description": "Returns the specified Instance resource. Gets a list of available instances by making a list() request.", + "parameterOrder": [ + "project", + "zone", + "instance" + ] + }, + "removeResourcePolicies": { + "httpMethod": "POST", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/removeResourcePolicies", + "path": "projects/{project}/zones/{zone}/instances/{instance}/removeResourcePolicies", + "response": { + "$ref": "Operation" + }, + "description": "Removes resource policies from an instance.", + "request": { + "$ref": "InstancesRemoveResourcePoliciesRequest" + }, + "parameters": { + "instance": { + "location": "path", + "type": "string", + "description": "The instance name for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "required": true, + "location": "path", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "id": "compute.instances.removeResourcePolicies", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "getGuestAttributes": { + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "zone": { + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "type": "string" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "queryPath": { + "description": "Specifies the guest attributes path to be queried.", + "type": "string", + "location": "query" + }, + "variableKey": { + "location": "query", + "description": "Specifies the key for the guest attributes entry.", + "type": "string" + } + }, + "description": "Returns the specified guest attributes entry.", + "id": "compute.instances.getGuestAttributes", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/getGuestAttributes", + "path": "projects/{project}/zones/{zone}/instances/{instance}/getGuestAttributes", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "response": { + "$ref": "GuestAttributes" + } + }, + "updateShieldedInstanceConfig": { + "path": "projects/{project}/zones/{zone}/instances/{instance}/updateShieldedInstanceConfig", + "httpMethod": "PATCH", + "id": "compute.instances.updateShieldedInstanceConfig", + "description": "Updates the Shielded Instance config for an instance. You can only use this method on a stopped instance. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/updateShieldedInstanceConfig", + "parameters": { + "instance": { + "required": true, + "location": "path", + "type": "string", + "description": "Name or id of the instance scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "location": "path", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "zone": { + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "ShieldedInstanceConfig" + } + }, + "getShieldedInstanceIdentity": { + "parameters": { + "instance": { + "type": "string", + "required": true, + "location": "path", + "description": "Name or id of the instance scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "zone": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "location": "path", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Returns the Shielded Instance Identity of an instance", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/getShieldedInstanceIdentity", + "id": "compute.instances.getShieldedInstanceIdentity", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "response": { + "$ref": "ShieldedInstanceIdentity" + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}/getShieldedInstanceIdentity", + "httpMethod": "GET" + }, + "updateAccessConfig": { + "path": "projects/{project}/zones/{zone}/instances/{instance}/updateAccessConfig", + "request": { + "$ref": "AccessConfig" + }, + "httpMethod": "POST", + "description": "Updates the specified access config from an instance's network interface with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/updateAccessConfig", + "response": { + "$ref": "Operation" + }, + "id": "compute.instances.updateAccessConfig", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "parameters": { + "networkInterface": { + "description": "The name of the network interface where the access config is attached.", + "required": true, + "location": "query", + "type": "string" + }, + "instance": { + "type": "string", + "location": "path", + "required": true, + "description": "The instance name for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "path": "projects/{project}/zones/{zone}/instances", + "id": "compute.instances.list", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "InstanceList" + }, + "description": "Retrieves the list of instances contained within the specified zone.", + "parameterOrder": [ + "project", + "zone" + ], + "httpMethod": "GET", + "parameters": { + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "type": "string", + "required": true, + "location": "path" + }, + "maxResults": { + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "format": "uint32", + "default": "500", + "type": "integer" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + } + }, + "flatPath": "projects/{project}/zones/{zone}/instances" + }, + "testIamPermissions": { + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Returns permissions that a caller has on the specified resource.", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "path": "projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions", + "request": { + "$ref": "TestPermissionsRequest" + }, + "httpMethod": "POST", + "flatPath": "projects/{project}/zones/{zone}/instances/{resource}/testIamPermissions", + "parameters": { + "resource": { + "description": "Name or id of the resource for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path", + "required": true + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request." + }, + "zone": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "The name of the zone for this request.", + "location": "path" + } + }, + "id": "compute.instances.testIamPermissions" + }, + "setShieldedInstanceIntegrityPolicy": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Sets the Shielded Instance integrity policy for an instance. You can only use this method on a running instance. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH", + "path": "projects/{project}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "id": "compute.instances.setShieldedInstanceIntegrityPolicy", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setShieldedInstanceIntegrityPolicy", + "parameters": { + "project": { + "type": "string", + "required": true, + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "zone": { + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "The name of the zone for this request." + }, + "instance": { + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name or id of the instance scoping this request." + } + }, + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "ShieldedInstanceIntegrityPolicy" + } + }, + "setMachineResources": { + "parameters": { + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request.", + "required": true, + "type": "string", + "location": "path" + }, + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "InstancesSetMachineResourcesRequest" + }, + "response": { + "$ref": "Operation" + }, + "id": "compute.instances.setMachineResources", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setMachineResources", + "httpMethod": "POST", + "description": "Changes the number and/or type of accelerator for a stopped instance to the values specified in the request.", + "path": "projects/{project}/zones/{zone}/instances/{instance}/setMachineResources" + }, + "aggregatedList": { + "parameterOrder": [ + "project" + ], + "flatPath": "projects/{project}/aggregated/instances", + "description": "Retrieves an aggregated list of all of the instances in your project across all regions and zones. The performance of this method degrades when a filter is specified on a project that has a very large number of instances.", + "parameters": { + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "includeAllScopes": { + "location": "query", + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "maxResults": { + "format": "uint32", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500", + "type": "integer" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string" + } + }, + "httpMethod": "GET", + "id": "compute.instances.aggregatedList", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "InstanceAggregatedList" + }, + "path": "projects/{project}/aggregated/instances" + }, + "deleteAccessConfig": { + "path": "projects/{project}/zones/{zone}/instances/{instance}/deleteAccessConfig", + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/deleteAccessConfig", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "accessConfig": { + "description": "The name of the access config to delete.", + "type": "string", + "location": "query", + "required": true + }, + "instance": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "The instance name for this request.", + "location": "path", + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "required": true + }, + "networkInterface": { + "type": "string", + "description": "The name of the network interface.", + "required": true, + "location": "query" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "description": "Deletes an access config from an instance's network interface.", + "parameterOrder": [ + "project", + "zone", + "instance", + "accessConfig", + "networkInterface" + ], + "id": "compute.instances.deleteAccessConfig" + }, + "simulateMaintenanceEvent": { + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent", + "parameters": { + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "type": "string" + }, + "instance": { + "required": true, + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the instance scoping this request." + }, + "zone": { + "description": "The name of the zone for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "type": "string" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "id": "compute.instances.simulateMaintenanceEvent", + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "description": "Simulates a maintenance event on the instance.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/zones/{zone}/instances/{instance}/simulateMaintenanceEvent" + }, + "setTags": { + "httpMethod": "POST", + "request": { + "$ref": "Tags" + }, + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setTags", + "response": { + "$ref": "Operation" + }, + "description": "Sets network tags for the specified instance to the data included in the request.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.instances.setTags", + "parameters": { + "zone": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "description": "The name of the zone for this request." + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "instance": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "type": "string", + "description": "Name of the instance scoping this request." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "path": "projects/{project}/zones/{zone}/instances/{instance}/setTags" + }, + "addAccessConfig": { + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/addAccessConfig", + "path": "projects/{project}/zones/{zone}/instances/{instance}/addAccessConfig", + "description": "Adds an access config to an instance's network interface.", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.instances.addAccessConfig", + "parameters": { + "networkInterface": { + "location": "query", + "type": "string", + "description": "The name of the network interface to add to this instance.", + "required": true + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "required": true, + "type": "string" + }, + "instance": { + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "The instance name for this request.", + "required": true + }, + "zone": { + "location": "path", + "description": "The name of the zone for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "type": "string" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "request": { + "$ref": "AccessConfig" + } + }, + "setDeletionProtection": { + "flatPath": "projects/{project}/zones/{zone}/instances/{resource}/setDeletionProtection", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "id": "compute.instances.setDeletionProtection", + "parameters": { + "deletionProtection": { + "default": "true", + "location": "query", + "description": "Whether the resource should be protected against deletion.", + "type": "boolean" + }, + "zone": { + "description": "The name of the zone for this request.", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "resource": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "required": true, + "description": "Name or id of the resource for this request." + } + }, + "description": "Sets deletion protection on the instance.", + "path": "projects/{project}/zones/{zone}/instances/{resource}/setDeletionProtection", + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "response": { + "$ref": "Policy" + }, + "parameters": { + "zone": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "The name of the zone for this request.", + "location": "path" + }, + "resource": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name or id of the resource for this request.", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "path": "projects/{project}/zones/{zone}/instances/{resource}/setIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "request": { + "$ref": "ZoneSetPolicyRequest" + }, + "id": "compute.instances.setIamPolicy", + "flatPath": "projects/{project}/zones/{zone}/instances/{resource}/setIamPolicy", + "httpMethod": "POST" + }, + "stop": { + "path": "projects/{project}/zones/{zone}/instances/{instance}/stop", + "httpMethod": "POST", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/stop", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.instances.stop", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "description": "Stops a running instance, shutting it down cleanly, and allows you to restart the instance at a later time. Stopped instances do not incur VM usage charges while they are stopped. However, resources that the VM is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted. For more information, see Stopping an instance.", + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "zone": { + "description": "The name of the zone for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path", + "required": true + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "type": "string" + }, + "instance": { + "type": "string", + "description": "Name of the instance resource to stop.", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "response": { + "$ref": "Operation" + } + }, + "updateNetworkInterface": { + "path": "projects/{project}/zones/{zone}/instances/{instance}/updateNetworkInterface", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.instances.updateNetworkInterface", + "request": { + "$ref": "NetworkInterface" + }, + "parameters": { + "instance": { + "type": "string", + "required": true, + "description": "The instance name for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "location": "path", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "zone": { + "required": true, + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request." + }, + "networkInterface": { + "description": "The name of the network interface to update.", + "type": "string", + "required": true, + "location": "query" + } + }, + "httpMethod": "PATCH", + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "description": "Updates an instance's network interface. This method can only update an interface's alias IP range and attached network. See Modifying alias IP ranges for an existing instance for instructions on changing alias IP ranges. See Migrating a VM between networks for instructions on migrating an interface. This method follows PATCH semantics.", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/updateNetworkInterface", + "response": { + "$ref": "Operation" + } + }, + "setMinCpuPlatform": { + "httpMethod": "POST", + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "description": "Project ID for this request." + }, + "instance": { + "location": "path", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the instance scoping this request." + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Changes the minimum CPU platform that this instance should use. This method can only be called on a stopped instance. For more information, read Specifying a Minimum CPU Platform.", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform", + "id": "compute.instances.setMinCpuPlatform", + "request": { + "$ref": "InstancesSetMinCpuPlatformRequest" + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}/setMinCpuPlatform", + "parameterOrder": [ + "project", + "zone", + "instance" + ] + }, + "updateDisplayDevice": { + "path": "projects/{project}/zones/{zone}/instances/{instance}/updateDisplayDevice", + "id": "compute.instances.updateDisplayDevice", + "response": { + "$ref": "Operation" + }, + "parameters": { + "zone": { + "description": "The name of the zone for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "instance": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "type": "string", + "description": "Name of the instance scoping this request." + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/updateDisplayDevice", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "DisplayDevice" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Updates the Display config for a VM instance. You can only use this method on a stopped VM instance. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "httpMethod": "PATCH" + }, + "attachDisk": { + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "AttachedDisk" + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}/attachDisk", + "description": "Attaches an existing Disk resource to an instance. You must first create the disk before you can attach it. It is not possible to create and attach a disk at the same time. For more information, read Adding a persistent disk to your instance.", + "httpMethod": "POST", + "response": { + "$ref": "Operation" + }, + "id": "compute.instances.attachDisk", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/attachDisk", + "parameters": { + "project": { + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path" + }, + "instance": { + "location": "path", + "description": "The instance name for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "zone": { + "required": true, + "description": "The name of the zone for this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "forceAttach": { + "description": "Whether to force attach the regional disk even if it's currently attached to another instance. If you try to force attach a zonal disk to an instance, you will receive an error.", + "type": "boolean", + "location": "query" + } + } + }, + "start": { + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/start", + "description": "Starts an instance that was stopped using the instances().stop method. For more information, see Restart an instance.", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/zones/{zone}/instances/{instance}/start", + "id": "compute.instances.start", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "description": "The name of the zone for this request.", + "type": "string", + "location": "path" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "instance": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "description": "Name of the instance resource to start.", + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "type": "string" + } + }, + "httpMethod": "POST" + }, + "setMetadata": { + "description": "Sets metadata for the specified instance to the data included in the request.", + "parameters": { + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "instance": { + "description": "Name of the instance scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "type": "string" + }, + "zone": { + "description": "The name of the zone for this request.", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "id": "compute.instances.setMetadata", + "path": "projects/{project}/zones/{zone}/instances/{instance}/setMetadata", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setMetadata", + "request": { + "$ref": "Metadata" + }, + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "id": "compute.instances.setLabels", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "description": "Sets labels on an instance. To learn more about labels, read the Labeling Resources documentation.", + "httpMethod": "POST", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setLabels", + "path": "projects/{project}/zones/{zone}/instances/{instance}/setLabels", + "parameters": { + "instance": { + "description": "Name of the instance scoping this request.", + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "zone": { + "description": "The name of the zone for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path", + "required": true + } + }, + "request": { + "$ref": "InstancesSetLabelsRequest" + } + }, + "sendDiagnosticInterrupt": { + "parameters": { + "instance": { + "required": true, + "location": "path", + "type": "string", + "description": "Name of the instance scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true + }, + "zone": { + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string" + } + }, + "id": "compute.instances.sendDiagnosticInterrupt", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Sends diagnostic interrupt to the instance.", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "path": "projects/{project}/zones/{zone}/instances/{instance}/sendDiagnosticInterrupt", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/sendDiagnosticInterrupt" + }, + "setMachineType": { + "httpMethod": "POST", + "flatPath": "projects/{project}/zones/{zone}/instances/{instance}/setMachineType", + "description": "Changes the machine type for a stopped instance to the machine type specified in the request.", + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/zones/{zone}/instances/{instance}/setMachineType", + "response": { + "$ref": "Operation" + }, + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "instance": { + "type": "string", + "required": true, + "description": "Name of the instance scoping this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path", + "description": "The name of the zone for this request.", + "required": true + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "type": "string", + "description": "Project ID for this request." + } + }, + "id": "compute.instances.setMachineType", + "request": { + "$ref": "InstancesSetMachineTypeRequest" + } + }, + "getIamPolicy": { + "httpMethod": "GET", + "response": { + "$ref": "Policy" + }, + "flatPath": "projects/{project}/zones/{zone}/instances/{resource}/getIamPolicy", + "path": "projects/{project}/zones/{zone}/instances/{resource}/getIamPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.instances.getIamPolicy", + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "required": true + }, + "zone": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "type": "string", + "description": "The name of the zone for this request." + }, + "optionsRequestedPolicyVersion": { + "format": "int32", + "location": "query", + "type": "integer", + "description": "Requested IAM Policy version." + }, + "resource": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "type": "string", + "description": "Name or id of the resource for this request.", + "required": true + } + }, + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists." + } + } + }, + "interconnects": { + "methods": { + "delete": { + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "interconnect": { + "type": "string", + "description": "Name of the interconnect to delete.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true + } + }, + "httpMethod": "DELETE", + "id": "compute.interconnects.delete", + "parameterOrder": [ + "project", + "interconnect" + ], + "description": "Deletes the specified interconnect.", + "path": "projects/{project}/global/interconnects/{interconnect}", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/interconnects/{interconnect}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "patch": { + "path": "projects/{project}/global/interconnects/{interconnect}", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "interconnect": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true, + "description": "Name of the interconnect to update." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true, + "description": "Project ID for this request." + } + }, + "flatPath": "projects/{project}/global/interconnects/{interconnect}", + "httpMethod": "PATCH", + "response": { + "$ref": "Operation" + }, + "description": "Updates the specified interconnect with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "id": "compute.interconnects.patch", + "parameterOrder": [ + "project", + "interconnect" + ], + "request": { + "$ref": "Interconnect" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "insert": { + "request": { + "$ref": "Interconnect" + }, + "parameters": { + "project": { + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "id": "compute.interconnects.insert", + "description": "Creates a Interconnect in the specified project using the data included in the request.", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/interconnects", + "path": "projects/{project}/global/interconnects", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project" + ] + }, + "list": { + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "required": true + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "maxResults": { + "default": "500", + "format": "uint32", + "minimum": "0", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query" + } + }, + "description": "Retrieves the list of interconnect available to the specified project.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/global/interconnects", + "flatPath": "projects/{project}/global/interconnects", + "httpMethod": "GET", + "id": "compute.interconnects.list", + "response": { + "$ref": "InterconnectList" + }, + "parameterOrder": [ + "project" + ] + }, + "get": { + "response": { + "$ref": "Interconnect" + }, + "path": "projects/{project}/global/interconnects/{interconnect}", + "id": "compute.interconnects.get", + "parameterOrder": [ + "project", + "interconnect" + ], + "flatPath": "projects/{project}/global/interconnects/{interconnect}", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "interconnect": { + "type": "string", + "location": "path", + "required": true, + "description": "Name of the interconnect to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + } + }, + "description": "Returns the specified interconnect. Get a list of available interconnects by making a list() request." + }, + "getDiagnostics": { + "response": { + "$ref": "InterconnectsGetDiagnosticsResponse" + }, + "id": "compute.interconnects.getDiagnostics", + "parameters": { + "interconnect": { + "required": true, + "description": "Name of the interconnect resource to query.", + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "parameterOrder": [ + "project", + "interconnect" + ], + "path": "projects/{project}/global/interconnects/{interconnect}/getDiagnostics", + "flatPath": "projects/{project}/global/interconnects/{interconnect}/getDiagnostics", + "description": "Returns the interconnectDiagnostics for the specified interconnect." + } + } + }, + "targetPools": { + "methods": { + "list": { + "flatPath": "projects/{project}/regions/{region}/targetPools", + "path": "projects/{project}/regions/{region}/targetPools", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves a list of target pools available to the specified project and region.", + "parameters": { + "maxResults": { + "format": "uint32", + "type": "integer", + "default": "500", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the region scoping this request.", + "location": "path" + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request." + } + }, + "parameterOrder": [ + "project", + "region" + ], + "httpMethod": "GET", + "id": "compute.targetPools.list", + "response": { + "$ref": "TargetPoolList" + } + }, + "addHealthCheck": { + "request": { + "$ref": "TargetPoolsAddHealthCheckRequest" + }, + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "region": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path", + "description": "Name of the region scoping this request." + }, + "targetPool": { + "description": "Name of the target pool to add a health check to.", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + } + }, + "httpMethod": "POST", + "description": "Adds health check URLs to a target pool.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.targetPools.addHealthCheck", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck" + }, + "insert": { + "id": "compute.targetPools.insert", + "httpMethod": "POST", + "path": "projects/{project}/regions/{region}/targetPools", + "flatPath": "projects/{project}/regions/{region}/targetPools", + "request": { + "$ref": "TargetPool" + }, + "parameters": { + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "location": "path", + "required": true, + "description": "Name of the region scoping this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region" + ], + "description": "Creates a target pool in the specified project and region using the data included in the request." + }, + "getHealth": { + "description": "Gets the most recent health check results for each IP for the instance that is referenced by the given target pool.", + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/getHealth", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/getHealth", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "response": { + "$ref": "TargetPoolInstanceHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.targetPools.getHealth", + "parameters": { + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path", + "type": "string" + }, + "targetPool": { + "required": true, + "description": "Name of the TargetPool resource to which the queried instance belongs.", + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "type": "string", + "description": "Project ID for this request." + } + }, + "request": { + "$ref": "InstanceReference" + }, + "httpMethod": "POST" + }, + "aggregatedList": { + "httpMethod": "GET", + "description": "Retrieves an aggregated list of target pools.", + "path": "projects/{project}/aggregated/targetPools", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/aggregated/targetPools", + "id": "compute.targetPools.aggregatedList", + "response": { + "$ref": "TargetPoolAggregatedList" + }, + "parameterOrder": [ + "project" + ], + "parameters": { + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "required": true + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "includeAllScopes": { + "type": "boolean", + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "format": "uint32", + "type": "integer", + "default": "500", + "location": "query", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + } + } + }, + "get": { + "response": { + "$ref": "TargetPool" + }, + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Returns the specified target pool. Gets a list of available target pools by making a list() request.", + "id": "compute.targetPools.get", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "httpMethod": "GET", + "parameters": { + "region": { + "description": "Name of the region scoping this request.", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true + }, + "targetPool": { + "required": true, + "type": "string", + "description": "Name of the TargetPool resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}" + }, + "removeHealthCheck": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Removes health check URL from a target pool.", + "request": { + "$ref": "TargetPoolsRemoveHealthCheckRequest" + }, + "parameters": { + "targetPool": { + "description": "Name of the target pool to remove health checks from.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "type": "string", + "required": true + }, + "region": { + "required": true, + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + } + }, + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", + "id": "compute.targetPools.removeHealthCheck" + }, + "removeInstance": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "description": "Removes instance URL from a target pool.", + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeInstance", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/removeInstance", + "request": { + "$ref": "TargetPoolsRemoveInstanceRequest" + }, + "httpMethod": "POST", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "id": "compute.targetPools.removeInstance", + "parameters": { + "region": { + "type": "string", + "location": "path", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "targetPool": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "description": "Name of the TargetPool resource to remove instances from.", + "type": "string" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path", + "description": "Project ID for this request." + } + } + }, + "addInstance": { + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/addInstance", + "description": "Adds an instance to a target pool.", + "id": "compute.targetPools.addInstance", + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/addInstance", + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "TargetPoolsAddInstanceRequest" + }, + "parameters": { + "project": { + "location": "path", + "required": true, + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "targetPool": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the TargetPool resource to add instances to.", + "type": "string", + "location": "path" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "region": { + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "required": true + } + } + }, + "setBackup": { + "request": { + "$ref": "TargetReference" + }, + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}/setBackup", + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "description": "Changes a backup target pool's configurations.", + "id": "compute.targetPools.setBackup", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}/setBackup", + "parameters": { + "failoverRatio": { + "format": "float", + "description": "New failoverRatio value for the target pool.", + "location": "query", + "type": "number" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "targetPool": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the TargetPool resource to set a backup pool for.", + "type": "string", + "required": true, + "location": "path" + }, + "project": { + "required": true, + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "location": "path", + "description": "Name of the region scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "required": true + } + } + }, + "delete": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "response": { + "$ref": "Operation" + }, + "id": "compute.targetPools.delete", + "flatPath": "projects/{project}/regions/{region}/targetPools/{targetPool}", + "path": "projects/{project}/regions/{region}/targetPools/{targetPool}", + "description": "Deletes the specified target pool.", + "parameters": { + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request.", + "required": true + }, + "targetPool": { + "location": "path", + "description": "Name of the TargetPool resource to delete.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + }, + "region": { + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + }, + "httpMethod": "DELETE" + } + } + }, + "publicAdvertisedPrefixes": { + "methods": { + "insert": { + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.publicAdvertisedPrefixes.insert", + "description": "Creates a PublicAdvertisedPrefix in the specified project using the parameters that are included in the request.", + "flatPath": "projects/{project}/global/publicAdvertisedPrefixes", + "parameters": { + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder" + } + }, + "path": "projects/{project}/global/publicAdvertisedPrefixes", + "request": { + "$ref": "PublicAdvertisedPrefix" + }, + "httpMethod": "POST" + }, + "delete": { + "id": "compute.publicAdvertisedPrefixes.delete", + "description": "Deletes the specified PublicAdvertisedPrefix", + "flatPath": "projects/{project}/global/publicAdvertisedPrefixes/{publicAdvertisedPrefix}", + "path": "projects/{project}/global/publicAdvertisedPrefixes/{publicAdvertisedPrefix}", + "parameters": { + "publicAdvertisedPrefix": { + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the PublicAdvertisedPrefix resource to delete.", + "type": "string" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder", + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + } + }, + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "publicAdvertisedPrefix" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "DELETE" + }, + "get": { + "path": "projects/{project}/global/publicAdvertisedPrefixes/{publicAdvertisedPrefix}", + "parameters": { + "publicAdvertisedPrefix": { + "location": "path", + "type": "string", + "description": "Name of the PublicAdvertisedPrefix resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "publicAdvertisedPrefix" + ], + "flatPath": "projects/{project}/global/publicAdvertisedPrefixes/{publicAdvertisedPrefix}", + "description": "Returns the specified PublicAdvertisedPrefix resource.", + "response": { + "$ref": "PublicAdvertisedPrefix" + }, + "id": "compute.publicAdvertisedPrefixes.get" + }, + "patch": { + "id": "compute.publicAdvertisedPrefixes.patch", + "description": "Patches the specified Router resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/global/publicAdvertisedPrefixes/{publicAdvertisedPrefix}", + "parameters": { + "publicAdvertisedPrefix": { + "required": true, + "type": "string", + "description": "Name of the PublicAdvertisedPrefix resource to patch.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000). end_interface: MixerMutationRequestBuilder" + } + }, + "parameterOrder": [ + "project", + "publicAdvertisedPrefix" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "PATCH", + "request": { + "$ref": "PublicAdvertisedPrefix" + }, + "flatPath": "projects/{project}/global/publicAdvertisedPrefixes/{publicAdvertisedPrefix}" + }, + "list": { + "parameters": { + "maxResults": { + "type": "integer", + "default": "500", + "minimum": "0", + "location": "query", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + } + }, + "response": { + "$ref": "PublicAdvertisedPrefixList" + }, + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/global/publicAdvertisedPrefixes", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Lists the PublicAdvertisedPrefixes for a project.", + "id": "compute.publicAdvertisedPrefixes.list", + "flatPath": "projects/{project}/global/publicAdvertisedPrefixes" + } + } + }, + "acceleratorTypes": { + "methods": { + "list": { + "id": "compute.acceleratorTypes.list", + "parameterOrder": [ + "project", + "zone" + ], + "httpMethod": "GET", + "description": "Retrieves a list of accelerator types that are available to the specified project.", + "parameters": { + "project": { + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "maxResults": { + "location": "query", + "format": "uint32", + "type": "integer", + "default": "500", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "zone": { + "location": "path", + "required": true, + "type": "string", + "description": "The name of the zone for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + } + }, + "flatPath": "projects/{project}/zones/{zone}/acceleratorTypes", + "path": "projects/{project}/zones/{zone}/acceleratorTypes", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "AcceleratorTypeList" + } + }, + "get": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.acceleratorTypes.get", + "description": "Returns the specified accelerator type.", + "response": { + "$ref": "AcceleratorType" + }, + "httpMethod": "GET", + "parameterOrder": [ + "project", + "zone", + "acceleratorType" + ], + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "required": true, + "type": "string" + }, + "zone": { + "required": true, + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the zone for this request." + }, + "acceleratorType": { + "type": "string", + "description": "Name of the accelerator type to return.", + "required": true, + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "path": "projects/{project}/zones/{zone}/acceleratorTypes/{acceleratorType}", + "flatPath": "projects/{project}/zones/{zone}/acceleratorTypes/{acceleratorType}" + }, + "aggregatedList": { + "id": "compute.acceleratorTypes.aggregatedList", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/aggregated/acceleratorTypes", + "description": "Retrieves an aggregated list of accelerator types.", + "parameters": { + "maxResults": { + "minimum": "0", + "location": "query", + "type": "integer", + "default": "500", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query", + "type": "boolean" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "required": true + } + }, + "flatPath": "projects/{project}/aggregated/acceleratorTypes", + "httpMethod": "GET", + "response": { + "$ref": "AcceleratorTypeAggregatedList" + } + } + } + }, + "routers": { + "methods": { + "get": { + "response": { + "$ref": "Router" + }, + "id": "compute.routers.get", + "parameters": { + "router": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "description": "Name of the Router resource to return.", + "required": true, + "type": "string" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "region": { + "description": "Name of the region for this request.", + "type": "string", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "flatPath": "projects/{project}/regions/{region}/routers/{router}", + "description": "Returns the specified Router resource. Gets a list of available routers by making a list() request.", + "parameterOrder": [ + "project", + "region", + "router" + ], + "path": "projects/{project}/regions/{region}/routers/{router}" + }, + "list": { + "description": "Retrieves a list of Router resources available to the specified project.", + "flatPath": "projects/{project}/regions/{region}/routers", + "response": { + "$ref": "RouterList" + }, + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "region": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request.", + "required": true, + "location": "path" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "maxResults": { + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer", + "format": "uint32", + "minimum": "0", + "default": "500" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "project": { + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "path": "projects/{project}/regions/{region}/routers", + "id": "compute.routers.list", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getNatMappingInfo": { + "description": "Retrieves runtime Nat mapping information of VM endpoints.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/getNatMappingInfo", + "response": { + "$ref": "VmEndpointNatMappingsList" + }, + "path": "projects/{project}/regions/{region}/routers/{router}/getNatMappingInfo", + "parameters": { + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "type": "string" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "router": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "type": "string", + "description": "Name of the Router resource to query for Nat Mapping information of VM endpoints." + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path", + "description": "Name of the region for this request.", + "type": "string" + }, + "maxResults": { + "format": "uint32", + "location": "query", + "type": "integer", + "default": "500", + "minimum": "0", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + } + }, + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.routers.getNatMappingInfo", + "parameterOrder": [ + "project", + "region", + "router" + ] + }, + "insert": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "location": "path" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/regions/{region}/routers", + "flatPath": "projects/{project}/regions/{region}/routers", + "request": { + "$ref": "Router" + }, + "parameterOrder": [ + "project", + "region" + ], + "httpMethod": "POST", + "id": "compute.routers.insert", + "description": "Creates a Router resource in the specified project and region using the data included in the request." + }, + "patch": { + "path": "projects/{project}/regions/{region}/routers/{router}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/routers/{router}", + "response": { + "$ref": "Operation" + }, + "description": "Patches the specified Router resource with the data included in the request. This method supports PATCH semantics and uses JSON merge patch format and processing rules.", + "parameters": { + "region": { + "location": "path", + "description": "Name of the region for this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "project": { + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "router": { + "location": "path", + "required": true, + "description": "Name of the Router resource to patch.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string" + } + }, + "request": { + "$ref": "Router" + }, + "id": "compute.routers.patch", + "httpMethod": "PATCH", + "parameterOrder": [ + "project", + "region", + "router" + ] + }, + "update": { + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "description": "Updates the specified Router resource with the data included in the request. This method conforms to PUT semantics, which requests that the state of the target resource be created or replaced with the state defined by the representation enclosed in the request message payload.", + "parameterOrder": [ + "project", + "region", + "router" + ], + "path": "projects/{project}/regions/{region}/routers/{router}", + "id": "compute.routers.update", + "flatPath": "projects/{project}/regions/{region}/routers/{router}", + "parameters": { + "router": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the Router resource to update.", + "required": true, + "location": "path", + "type": "string" + }, + "project": { + "required": true, + "type": "string", + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "PUT" + }, + "aggregatedList": { + "httpMethod": "GET", + "path": "projects/{project}/aggregated/routers", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "RouterAggregatedList" + }, + "parameterOrder": [ + "project" + ], + "flatPath": "projects/{project}/aggregated/routers", + "description": "Retrieves an aggregated list of routers.", + "id": "compute.routers.aggregatedList", + "parameters": { + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "includeAllScopes": { + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "type": "boolean" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string" + }, + "maxResults": { + "type": "integer", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500", + "location": "query" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + } + } + }, + "getRouterStatus": { + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "required": true, + "description": "Project ID for this request." + }, + "region": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "description": "Name of the region for this request." + }, + "router": { + "description": "Name of the Router resource to query.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "httpMethod": "GET", + "description": "Retrieves runtime information of the specified router.", + "path": "projects/{project}/regions/{region}/routers/{router}/getRouterStatus", + "flatPath": "projects/{project}/regions/{region}/routers/{router}/getRouterStatus", + "parameterOrder": [ + "project", + "region", + "router" + ], + "response": { + "$ref": "RouterStatusResponse" + }, + "id": "compute.routers.getRouterStatus" + }, + "delete": { + "httpMethod": "DELETE", + "path": "projects/{project}/regions/{region}/routers/{router}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "required": true, + "description": "Project ID for this request.", + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "router": { + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "description": "Name of the Router resource to delete.", + "location": "path" + }, + "region": { + "location": "path", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "id": "compute.routers.delete", + "description": "Deletes the specified Router resource.", + "flatPath": "projects/{project}/regions/{region}/routers/{router}" + }, + "preview": { + "response": { + "$ref": "RoutersPreviewResponse" + }, + "parameters": { + "region": { + "location": "path", + "required": true, + "description": "Name of the region for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string" + }, + "router": { + "location": "path", + "required": true, + "description": "Name of the Router resource to query.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "flatPath": "projects/{project}/regions/{region}/routers/{router}/preview", + "httpMethod": "POST", + "request": { + "$ref": "Router" + }, + "id": "compute.routers.preview", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "region", + "router" + ], + "path": "projects/{project}/regions/{region}/routers/{router}/preview", + "description": "Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router." + } + } + }, + "networkEndpointGroups": { + "methods": { + "detachNetworkEndpoints": { + "path": "projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints", + "request": { + "$ref": "NetworkEndpointGroupsDetachEndpointsRequest" + }, + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/detachNetworkEndpoints", + "parameters": { + "networkEndpointGroup": { + "type": "string", + "description": "The name of the network endpoint group where you are removing network endpoints. It should comply with RFC1035.", + "location": "path", + "required": true + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "zone": { + "location": "path", + "required": true, + "type": "string", + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035." + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request." + } + }, + "description": "Detach a list of network endpoints from the specified network endpoint group.", + "httpMethod": "POST", + "id": "compute.networkEndpointGroups.detachNetworkEndpoints", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "zone", + "networkEndpointGroup" + ] + }, + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "project", + "zone", + "networkEndpointGroup" + ], + "flatPath": "projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Deletes the specified network endpoint group. The network endpoints in the NEG and the VM instances they belong to are not terminated when the NEG is deleted. Note that the NEG cannot be deleted if there are backend services referencing it.", + "path": "projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}", + "id": "compute.networkEndpointGroups.delete", + "parameters": { + "zone": { + "required": true, + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", + "location": "path", + "type": "string" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "description": "Project ID for this request." + }, + "networkEndpointGroup": { + "type": "string", + "location": "path", + "required": true, + "description": "The name of the network endpoint group to delete. It should comply with RFC1035." + } + } + }, + "aggregatedList": { + "id": "compute.networkEndpointGroups.aggregatedList", + "parameterOrder": [ + "project" + ], + "flatPath": "projects/{project}/aggregated/networkEndpointGroups", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "NetworkEndpointGroupAggregatedList" + }, + "path": "projects/{project}/aggregated/networkEndpointGroups", + "description": "Retrieves the list of network endpoint groups and sorts them by zone.", + "parameters": { + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "description": "Project ID for this request." + }, + "maxResults": { + "default": "500", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "minimum": "0", + "format": "uint32" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "includeAllScopes": { + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query" + } + } + }, + "listNetworkEndpoints": { + "request": { + "$ref": "NetworkEndpointGroupsListEndpointsRequest" + }, + "id": "compute.networkEndpointGroups.listNetworkEndpoints", + "description": "Lists the network endpoints in the specified network endpoint group.", + "response": { + "$ref": "NetworkEndpointGroupsListNetworkEndpoints" + }, + "parameters": { + "zone": { + "type": "string", + "required": true, + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", + "location": "path" + }, + "returnPartialSuccess": { + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query" + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "maxResults": { + "type": "integer", + "format": "uint32", + "location": "query", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0" + }, + "networkEndpointGroup": { + "description": "The name of the network endpoint group from which you want to generate a list of included network endpoints. It should comply with RFC1035.", + "location": "path", + "type": "string", + "required": true + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "project": { + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "description": "Project ID for this request." + } + }, + "path": "projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "zone", + "networkEndpointGroup" + ], + "httpMethod": "POST", + "flatPath": "projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/listNetworkEndpoints" + }, + "get": { + "parameters": { + "networkEndpointGroup": { + "location": "path", + "description": "The name of the network endpoint group. It should comply with RFC1035.", + "required": true, + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "required": true + }, + "zone": { + "required": true, + "location": "path", + "type": "string", + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035." + } + }, + "response": { + "$ref": "NetworkEndpointGroup" + }, + "path": "projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}", + "id": "compute.networkEndpointGroups.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Returns the specified network endpoint group. Gets a list of available network endpoint groups by making a list() request.", + "parameterOrder": [ + "project", + "zone", + "networkEndpointGroup" + ], + "flatPath": "projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}", + "httpMethod": "GET" + }, + "list": { + "flatPath": "projects/{project}/zones/{zone}/networkEndpointGroups", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.networkEndpointGroups.list", + "path": "projects/{project}/zones/{zone}/networkEndpointGroups", + "parameterOrder": [ + "project", + "zone" + ], + "parameters": { + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "description": "Project ID for this request." + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "location": "query", + "default": "500", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "minimum": "0" + }, + "zone": { + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", + "location": "path", + "type": "string", + "required": true + } + }, + "response": { + "$ref": "NetworkEndpointGroupList" + }, + "description": "Retrieves the list of network endpoint groups that are located in the specified project and zone.", + "httpMethod": "GET" + }, + "attachNetworkEndpoints": { + "path": "projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints", + "parameterOrder": [ + "project", + "zone", + "networkEndpointGroup" + ], + "description": "Attach a list of network endpoints to the specified network endpoint group.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "id": "compute.networkEndpointGroups.attachNetworkEndpoints", + "flatPath": "projects/{project}/zones/{zone}/networkEndpointGroups/{networkEndpointGroup}/attachNetworkEndpoints", + "parameters": { + "zone": { + "type": "string", + "location": "path", + "description": "The name of the zone where the network endpoint group is located. It should comply with RFC1035.", + "required": true + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "type": "string", + "description": "Project ID for this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "networkEndpointGroup": { + "type": "string", + "location": "path", + "required": true, + "description": "The name of the network endpoint group where you are attaching network endpoints to. It should comply with RFC1035." + } + }, + "request": { + "$ref": "NetworkEndpointGroupsAttachEndpointsRequest" + }, + "httpMethod": "POST" + }, + "testIamPermissions": { + "parameters": { + "zone": { + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "description": "The name of the zone for this request." + }, + "resource": { + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "description": "Name or id of the resource for this request." + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request.", + "required": true + } + }, + "flatPath": "projects/{project}/zones/{zone}/networkEndpointGroups/{resource}/testIamPermissions", + "httpMethod": "POST", + "response": { + "$ref": "TestPermissionsResponse" + }, + "id": "compute.networkEndpointGroups.testIamPermissions", + "description": "Returns permissions that a caller has on the specified resource.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "path": "projects/{project}/zones/{zone}/networkEndpointGroups/{resource}/testIamPermissions" + }, + "insert": { + "parameterOrder": [ + "project", + "zone" + ], + "flatPath": "projects/{project}/zones/{zone}/networkEndpointGroups", + "response": { + "$ref": "Operation" + }, + "id": "compute.networkEndpointGroups.insert", + "path": "projects/{project}/zones/{zone}/networkEndpointGroups", + "description": "Creates a network endpoint group in the specified project using the parameters that are included in the request.", + "parameters": { + "zone": { + "required": true, + "location": "path", + "type": "string", + "description": "The name of the zone where you want to create the network endpoint group. It should comply with RFC1035." + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request.", + "required": true + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "request": { + "$ref": "NetworkEndpointGroup" + } + } + } + }, + "regionBackendServices": { + "methods": { + "list": { + "httpMethod": "GET", + "description": "Retrieves the list of regional BackendService resources available to the specified project in the given region.", + "response": { + "$ref": "BackendServiceList" + }, + "parameterOrder": [ + "project", + "region" + ], + "parameters": { + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "region": { + "location": "path", + "required": true, + "description": "Name of the region scoping this request.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true + }, + "maxResults": { + "minimum": "0", + "location": "query", + "type": "integer", + "format": "uint32", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/regions/{region}/backendServices", + "id": "compute.regionBackendServices.list", + "path": "projects/{project}/regions/{region}/backendServices" + }, + "insert": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/regions/{region}/backendServices", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "region": { + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request.", + "required": true + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "BackendService" + }, + "description": "Creates a regional BackendService resource in the specified project using the data included in the request. For more information, see Backend services overview.", + "path": "projects/{project}/regions/{region}/backendServices", + "httpMethod": "POST", + "id": "compute.regionBackendServices.insert" + }, + "get": { + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "response": { + "$ref": "BackendService" + }, + "parameters": { + "project": { + "required": true, + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "region": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "description": "Name of the region scoping this request.", + "required": true + }, + "backendService": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string", + "description": "Name of the BackendService resource to return." + } + }, + "path": "projects/{project}/regions/{region}/backendServices/{backendService}", + "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.regionBackendServices.get", + "description": "Returns the specified regional BackendService resource." + }, + "update": { + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "httpMethod": "PUT", + "description": "Updates the specified regional BackendService resource with the data included in the request. For more information, see Backend services overview .", + "path": "projects/{project}/regions/{region}/backendServices/{backendService}", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "id": "compute.regionBackendServices.update", + "parameters": { + "region": { + "required": true, + "location": "path", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region scoping this request." + }, + "backendService": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true, + "location": "path", + "description": "Name of the BackendService resource to update." + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "type": "string" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "patch": { + "path": "projects/{project}/regions/{region}/backendServices/{backendService}", + "request": { + "$ref": "BackendService" + }, + "description": "Updates the specified regional BackendService resource with the data included in the request. For more information, see Understanding backend services This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "id": "compute.regionBackendServices.patch", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path" + }, + "backendService": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the BackendService resource to patch.", + "type": "string", + "required": true + }, + "project": { + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request." + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + } + }, + "httpMethod": "PATCH", + "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}" + }, + "delete": { + "path": "projects/{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "DELETE", + "id": "compute.regionBackendServices.delete", + "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "description": "Deletes the specified regional BackendService resource.", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "backendService": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the BackendService resource to delete.", + "type": "string", + "required": true + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request." + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path", + "required": true, + "type": "string", + "description": "Name of the region scoping this request." + } + } + }, + "getHealth": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/regions/{region}/backendServices/{backendService}/getHealth", + "description": "Gets the most recent health check results for this regional BackendService.", + "request": { + "$ref": "ResourceGroupReference" + }, + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "httpMethod": "POST", + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "type": "string" + }, + "backendService": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "required": true, + "type": "string", + "description": "Name of the BackendService resource for which to get health." + }, + "region": { + "required": true, + "type": "string", + "location": "path", + "description": "Name of the region scoping this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "id": "compute.regionBackendServices.getHealth", + "path": "projects/{project}/regions/{region}/backendServices/{backendService}/getHealth" + } + } + }, + "instanceGroups": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "response": { + "$ref": "Operation" + }, + "description": "Deletes the specified instance group. The instances in the group are not deleted. Note that instance group must not belong to a backend service. Read Deleting an instance group for more information.", + "flatPath": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "project": { + "type": "string", + "required": true, + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the instance group is located.", + "required": true, + "location": "path" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "instanceGroup": { + "type": "string", + "location": "path", + "required": true, + "description": "The name of the instance group to delete." + } + }, + "id": "compute.instanceGroups.delete", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "path": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}" + }, + "aggregatedList": { + "path": "projects/{project}/aggregated/instanceGroups", + "parameterOrder": [ + "project" + ], + "httpMethod": "GET", + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "includeAllScopes": { + "type": "boolean", + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "maxResults": { + "minimum": "0", + "default": "500", + "format": "uint32", + "type": "integer", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + } + }, + "flatPath": "projects/{project}/aggregated/instanceGroups", + "response": { + "$ref": "InstanceGroupAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves the list of instance groups and sorts them by zone.", + "id": "compute.instanceGroups.aggregatedList" + }, + "listInstances": { + "path": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances", + "request": { + "$ref": "InstanceGroupsListInstancesRequest" + }, + "flatPath": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances", + "id": "compute.instanceGroups.listInstances", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "httpMethod": "POST", + "parameters": { + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string" + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "instanceGroup": { + "location": "path", + "required": true, + "description": "The name of the instance group from which you want to generate a list of included instances.", + "type": "string" + }, + "maxResults": { + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "minimum": "0", + "type": "integer" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "location": "path", + "type": "string", + "required": true + } + }, + "description": "Lists the instances in the specified instance group. The orderBy query parameter is not supported.", + "response": { + "$ref": "InstanceGroupsListInstances" + } + }, + "get": { + "id": "compute.instanceGroups.get", + "description": "Returns the specified zonal instance group. Get a list of available zonal instance groups by making a list() request. For managed instance groups, use the instanceGroupManagers or regionInstanceGroupManagers methods instead.", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "httpMethod": "GET", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "zone": { + "location": "path", + "required": true, + "type": "string", + "description": "The name of the zone where the instance group is located." + }, + "instanceGroup": { + "required": true, + "location": "path", + "description": "The name of the instance group.", + "type": "string" + }, + "project": { + "location": "path", + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + } + }, + "path": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}", + "response": { + "$ref": "InstanceGroup" + }, + "flatPath": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}" + }, + "removeInstances": { + "httpMethod": "POST", + "parameters": { + "instanceGroup": { + "location": "path", + "type": "string", + "required": true, + "description": "The name of the instance group where the specified instances will be removed." + }, + "zone": { + "location": "path", + "type": "string", + "description": "The name of the zone where the instance group is located.", + "required": true + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "response": { + "$ref": "Operation" + }, + "description": "Removes one or more instances from the specified instance group, but does not delete those instances. If the group is part of a backend service that has enabled connection draining, it can take up to 60 seconds after the connection draining duration before the VM instance is removed or deleted.", + "id": "compute.instanceGroups.removeInstances", + "flatPath": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances", + "request": { + "$ref": "InstanceGroupsRemoveInstancesRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "path": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances" + }, + "insert": { + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "zone": { + "description": "The name of the zone where you want to create the instance group.", + "required": true, + "location": "path", + "type": "string" + }, + "project": { + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path" + } + }, + "flatPath": "projects/{project}/zones/{zone}/instanceGroups", + "request": { + "$ref": "InstanceGroup" + }, + "path": "projects/{project}/zones/{zone}/instanceGroups", + "httpMethod": "POST", + "description": "Creates an instance group in the specified project using the parameters that are included in the request.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "zone" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.instanceGroups.insert" + }, + "addInstances": { + "id": "compute.instanceGroups.addInstances", + "httpMethod": "POST", + "request": { + "$ref": "InstanceGroupsAddInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "description": "Adds a list of instances to the specified instance group. All of the instances in the instance group must be in the same network/subnetwork. Read Adding instances for more information.", + "flatPath": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances", + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "zone": { + "type": "string", + "location": "path", + "required": true, + "description": "The name of the zone where the instance group is located." + }, + "instanceGroup": { + "required": true, + "description": "The name of the instance group where you are adding instances.", + "type": "string", + "location": "path" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "type": "string", + "location": "path" + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "path": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances" + }, + "setNamedPorts": { + "description": "Sets the named ports for the specified instance group.", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "instanceGroup": { + "description": "The name of the instance group where the named ports are updated.", + "required": true, + "type": "string", + "location": "path" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "type": "string" + }, + "zone": { + "description": "The name of the zone where the instance group is located.", + "required": true, + "type": "string", + "location": "path" + } + }, + "flatPath": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts", + "id": "compute.instanceGroups.setNamedPorts", + "path": "projects/{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts", + "httpMethod": "POST", + "request": { + "$ref": "InstanceGroupsSetNamedPortsRequest" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "flatPath": "projects/{project}/zones/{zone}/instanceGroups", + "parameterOrder": [ + "project", + "zone" + ], + "httpMethod": "GET", + "description": "Retrieves the list of zonal instance group resources contained within the specified zone. For managed instance groups, use the instanceGroupManagers or regionInstanceGroupManagers methods instead.", + "response": { + "$ref": "InstanceGroupList" + }, + "path": "projects/{project}/zones/{zone}/instanceGroups", + "id": "compute.instanceGroups.list", + "parameters": { + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "location": "path" + }, + "zone": { + "type": "string", + "location": "path", + "required": true, + "description": "The name of the zone where the instance group is located." + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "maxResults": { + "type": "integer", + "minimum": "0", + "location": "query", + "default": "500", + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "urlMaps": { + "methods": { + "list": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.urlMaps.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query", + "type": "string" + }, + "maxResults": { + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "minimum": "0", + "format": "uint32", + "type": "integer" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/urlMaps", + "description": "Retrieves the list of UrlMap resources available to the specified project.", + "flatPath": "projects/{project}/global/urlMaps", + "response": { + "$ref": "UrlMapList" + }, + "httpMethod": "GET" + }, + "aggregatedList": { + "description": "Retrieves the list of all UrlMap resources, regional and global, available to the specified project.", + "parameters": { + "project": { + "location": "path", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Name of the project scoping this request." + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "includeAllScopes": { + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "type": "boolean", + "location": "query" + }, + "maxResults": { + "format": "uint32", + "minimum": "0", + "default": "500", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query" + } + }, + "id": "compute.urlMaps.aggregatedList", + "flatPath": "projects/{project}/aggregated/urlMaps", + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/aggregated/urlMaps", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "UrlMapsAggregatedList" + }, + "httpMethod": "GET" + }, + "patch": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "urlMap": { + "type": "string", + "location": "path", + "description": "Name of the UrlMap resource to patch.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request." + } + }, + "request": { + "$ref": "UrlMap" + }, + "httpMethod": "PATCH", + "id": "compute.urlMaps.patch", + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/urlMaps/{urlMap}", + "flatPath": "projects/{project}/global/urlMaps/{urlMap}", + "description": "Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "parameterOrder": [ + "project", + "urlMap" + ] + }, + "delete": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/urlMaps/{urlMap}", + "httpMethod": "DELETE", + "parameters": { + "project": { + "description": "Project ID for this request.", + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string" + }, + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "urlMap": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "location": "path", + "description": "Name of the UrlMap resource to delete.", + "type": "string" + } + }, + "parameterOrder": [ + "project", + "urlMap" + ], + "description": "Deletes the specified UrlMap resource.", + "id": "compute.urlMaps.delete", + "path": "projects/{project}/global/urlMaps/{urlMap}" + }, + "update": { + "response": { + "$ref": "Operation" + }, + "httpMethod": "PUT", + "id": "compute.urlMaps.update", + "description": "Updates the specified UrlMap resource with the data included in the request.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "type": "string", + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "urlMap": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the UrlMap resource to update.", + "type": "string", + "location": "path" + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true + } + }, + "request": { + "$ref": "UrlMap" + }, + "path": "projects/{project}/global/urlMaps/{urlMap}", + "parameterOrder": [ + "project", + "urlMap" + ], + "flatPath": "projects/{project}/global/urlMaps/{urlMap}" + }, + "get": { + "id": "compute.urlMaps.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/global/urlMaps/{urlMap}", + "response": { + "$ref": "UrlMap" + }, + "parameters": { + "urlMap": { + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the UrlMap resource to return.", + "location": "path" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request.", + "type": "string" + } + }, + "httpMethod": "GET", + "path": "projects/{project}/global/urlMaps/{urlMap}", + "description": "Returns the specified UrlMap resource. Gets a list of available URL maps by making a list() request.", + "parameterOrder": [ + "project", + "urlMap" + ] + }, + "validate": { + "response": { + "$ref": "UrlMapsValidateResponse" + }, + "id": "compute.urlMaps.validate", + "parameters": { + "urlMap": { + "description": "Name of the UrlMap resource to be validated as.", + "location": "path", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/urlMaps/{urlMap}/validate", + "description": "Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.", + "path": "projects/{project}/global/urlMaps/{urlMap}/validate", + "parameterOrder": [ + "project", + "urlMap" + ], + "httpMethod": "POST", + "request": { + "$ref": "UrlMapsValidateRequest" + } + }, + "invalidateCache": { + "flatPath": "projects/{project}/global/urlMaps/{urlMap}/invalidateCache", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "urlMap": { + "type": "string", + "description": "Name of the UrlMap scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + } + }, + "request": { + "$ref": "CacheInvalidationRule" + }, + "description": "Initiates a cache invalidation operation, invalidating the specified path, scoped to the specified UrlMap. For more information, see [Invalidating cached content](/cdn/docs/invalidating-cached-content).", + "parameterOrder": [ + "project", + "urlMap" + ], + "httpMethod": "POST", + "path": "projects/{project}/global/urlMaps/{urlMap}/invalidateCache", + "response": { + "$ref": "Operation" + }, + "id": "compute.urlMaps.invalidateCache" + }, + "insert": { + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "Operation" + }, + "httpMethod": "POST", + "id": "compute.urlMaps.insert", + "path": "projects/{project}/global/urlMaps", + "parameters": { + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "flatPath": "projects/{project}/global/urlMaps", + "request": { + "$ref": "UrlMap" + }, + "description": "Creates a UrlMap resource in the specified project using the data included in the request." + } + } + }, + "zoneOperations": { + "methods": { + "delete": { + "httpMethod": "DELETE", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.zoneOperations.delete", + "path": "projects/{project}/zones/{zone}/operations/{operation}", + "parameters": { + "project": { + "description": "Project ID for this request.", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path" + }, + "zone": { + "type": "string", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the zone for this request." + }, + "operation": { + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string", + "description": "Name of the Operations resource to delete." + } + }, + "description": "Deletes the specified zone-specific Operations resource.", + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}" + }, + "get": { + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "description": "Retrieves the specified zone-specific Operations resource.", + "path": "projects/{project}/zones/{zone}/operations/{operation}", + "httpMethod": "GET", + "parameters": { + "zone": { + "required": true, + "location": "path", + "type": "string", + "description": "Name of the zone for this request.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "operation": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "description": "Name of the Operations resource to return.", + "location": "path", + "type": "string", + "required": true + }, + "project": { + "location": "path", + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}", + "response": { + "$ref": "Operation" + }, + "id": "compute.zoneOperations.get", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "wait": { + "httpMethod": "POST", + "flatPath": "projects/{project}/zones/{zone}/operations/{operation}/wait", + "description": "Waits for the specified Operation resource to return as `DONE` or for the request to approach the 2 minute deadline, and retrieves the specified Operation resource. This method waits for no more than the 2 minutes and then returns the current state of the operation, which might be `DONE` or still in progress. This method is called on a best-effort basis. Specifically: - In uncommon cases, when the server is overloaded, the request might return before the default deadline is reached, or might return after zero seconds. - If the default deadline is reached, there is no guarantee that the operation is actually done when the method returns. Be prepared to retry if the operation is not `DONE`. ", + "response": { + "$ref": "Operation" + }, + "parameters": { + "project": { + "location": "path", + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "description": "Name of the zone for this request.", + "location": "path", + "type": "string" + }, + "operation": { + "type": "string", + "description": "Name of the Operations resource to return.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + } + }, + "id": "compute.zoneOperations.wait", + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "path": "projects/{project}/zones/{zone}/operations/{operation}/wait", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "parameters": { + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "zone": { + "location": "path", + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the zone for request." + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "format": "uint32", + "location": "query", + "default": "500", + "minimum": "0" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "description": "Project ID for this request.", + "location": "path", + "type": "string" + }, + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string", + "location": "query" + }, + "returnPartialSuccess": { + "location": "query", + "type": "boolean", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + } + }, + "httpMethod": "GET", + "description": "Retrieves a list of Operation resources contained within the specified zone.", + "parameterOrder": [ + "project", + "zone" + ], + "flatPath": "projects/{project}/zones/{zone}/operations", + "response": { + "$ref": "OperationList" + }, + "id": "compute.zoneOperations.list", + "path": "projects/{project}/zones/{zone}/operations", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regions": { + "methods": { + "list": { + "description": "Retrieves the list of region resources available to the specified project.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "description": "Project ID for this request.", + "type": "string" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer", + "default": "500", + "format": "uint32", + "location": "query", + "minimum": "0" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + } + }, + "response": { + "$ref": "RegionList" + }, + "path": "projects/{project}/regions", + "flatPath": "projects/{project}/regions", + "id": "compute.regions.list", + "parameterOrder": [ + "project" + ], + "httpMethod": "GET" + }, + "get": { + "parameters": { + "region": { + "description": "Name of the region resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true, + "location": "path" + }, + "project": { + "description": "Project ID for this request.", + "type": "string", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "response": { + "$ref": "Region" + }, + "flatPath": "projects/{project}/regions/{region}", + "path": "projects/{project}/regions/{region}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameterOrder": [ + "project", + "region" + ], + "description": "Returns the specified Region resource. Gets a list of available regions by making a list() request.", + "id": "compute.regions.get", + "httpMethod": "GET" + } + } + }, + "backendServices": { + "methods": { + "addSignedUrlKey": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "path": "projects/{project}/global/backendServices/{backendService}/addSignedUrlKey", + "response": { + "$ref": "Operation" + }, + "id": "compute.backendServices.addSignedUrlKey", + "description": "Adds a key for validating requests with signed URLs for this backend service.", + "request": { + "$ref": "SignedUrlKey" + }, + "parameters": { + "project": { + "location": "path", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "description": "Project ID for this request." + }, + "backendService": { + "description": "Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035.", + "location": "path", + "type": "string", + "required": true + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + } + }, + "flatPath": "projects/{project}/global/backendServices/{backendService}/addSignedUrlKey", + "parameterOrder": [ + "project", + "backendService" + ] + }, + "setSecurityPolicy": { + "request": { + "$ref": "SecurityPolicyReference" + }, + "flatPath": "projects/{project}/global/backendServices/{backendService}/setSecurityPolicy", + "httpMethod": "POST", + "id": "compute.backendServices.setSecurityPolicy", + "description": "Sets the Google Cloud Armor security policy for the specified backend service. For more information, see Google Cloud Armor Overview", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + }, + "project": { + "type": "string", + "required": true, + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "backendService": { + "location": "path", + "required": true, + "description": "Name of the BackendService resource to which the security policy should be set. The name should conform to RFC1035.", + "type": "string" + } + }, + "response": { + "$ref": "Operation" + }, + "path": "projects/{project}/global/backendServices/{backendService}/setSecurityPolicy", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "description": "Returns the specified BackendService resource. Gets a list of available backend services.", + "parameterOrder": [ + "project", + "backendService" + ], + "parameters": { + "backendService": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the BackendService resource to return.", + "location": "path" + }, + "project": { + "type": "string", + "location": "path", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "flatPath": "projects/{project}/global/backendServices/{backendService}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "BackendService" + }, + "path": "projects/{project}/global/backendServices/{backendService}", + "id": "compute.backendServices.get", + "httpMethod": "GET" + }, + "patch": { + "flatPath": "projects/{project}/global/backendServices/{backendService}", + "parameterOrder": [ + "project", + "backendService" + ], + "id": "compute.backendServices.patch", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "PATCH", + "request": { + "$ref": "BackendService" + }, + "parameters": { + "backendService": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the BackendService resource to patch.", + "location": "path" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string", + "description": "Project ID for this request." + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + }, + "path": "projects/{project}/global/backendServices/{backendService}", + "description": "Patches the specified BackendService resource with the data included in the request. For more information, see Backend services overview. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.", + "response": { + "$ref": "Operation" + } + }, + "getHealth": { + "httpMethod": "POST", + "path": "projects/{project}/global/backendServices/{backendService}/getHealth", + "flatPath": "projects/{project}/global/backendServices/{backendService}/getHealth", + "request": { + "$ref": "ResourceGroupReference" + }, + "id": "compute.backendServices.getHealth", + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "description": "Gets the most recent health check results for this BackendService. Example request body: { \"group\": \"/zones/us-east1-b/instanceGroups/lb-backend-example\" }", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "parameters": { + "backendService": { + "location": "path", + "type": "string", + "required": true, + "description": "Name of the BackendService resource to which the queried instance belongs.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "backendService" + ] + }, + "update": { + "id": "compute.backendServices.update", + "httpMethod": "PUT", + "parameterOrder": [ + "project", + "backendService" + ], + "request": { + "$ref": "BackendService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "description": "Updates the specified BackendService resource with the data included in the request. For more information, see Backend services overview.", + "parameters": { + "backendService": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "location": "path", + "required": true, + "description": "Name of the BackendService resource to update." + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string", + "location": "query" + } + }, + "path": "projects/{project}/global/backendServices/{backendService}", + "flatPath": "projects/{project}/global/backendServices/{backendService}" + }, + "insert": { + "id": "compute.backendServices.insert", + "description": "Creates a BackendService resource in the specified project using the data included in the request. For more information, see Backend services overview .", + "flatPath": "projects/{project}/global/backendServices", + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project" + ], + "path": "projects/{project}/global/backendServices", + "httpMethod": "POST", + "parameters": { + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "required": true, + "location": "path" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + } + } + }, + "deleteSignedUrlKey": { + "id": "compute.backendServices.deleteSignedUrlKey", + "path": "projects/{project}/global/backendServices/{backendService}/deleteSignedUrlKey", + "parameters": { + "keyName": { + "required": true, + "location": "query", + "type": "string", + "description": "The name of the Signed URL Key to delete." + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "location": "path", + "description": "Project ID for this request.", + "required": true, + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "backendService": { + "type": "string", + "required": true, + "location": "path", + "description": "Name of the BackendService resource to which the Signed URL Key should be added. The name should conform to RFC1035." + } + }, + "parameterOrder": [ + "project", + "backendService", + "keyName" + ], + "httpMethod": "POST", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/backendServices/{backendService}/deleteSignedUrlKey", + "description": "Deletes a key for validating requests with signed URLs for this backend service." + }, + "aggregatedList": { + "parameterOrder": [ + "project" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves the list of all BackendService resources, regional and global, available to the specified project.", + "id": "compute.backendServices.aggregatedList", + "parameters": { + "maxResults": { + "format": "uint32", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query", + "minimum": "0", + "default": "500", + "type": "integer" + }, + "project": { + "description": "Name of the project scoping this request.", + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string", + "location": "query" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "includeAllScopes": { + "location": "query", + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + } + }, + "httpMethod": "GET", + "path": "projects/{project}/aggregated/backendServices", + "flatPath": "projects/{project}/aggregated/backendServices", + "response": { + "$ref": "BackendServiceAggregatedList" + } + }, + "list": { + "description": "Retrieves the list of BackendService resources available to the specified project.", + "httpMethod": "GET", + "id": "compute.backendServices.list", + "parameterOrder": [ + "project" + ], + "parameters": { + "maxResults": { + "minimum": "0", + "location": "query", + "format": "uint32", + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "description": "Project ID for this request." + }, + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + } + }, + "response": { + "$ref": "BackendServiceList" + }, + "flatPath": "projects/{project}/global/backendServices", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/global/backendServices" + }, + "delete": { + "id": "compute.backendServices.delete", + "response": { + "$ref": "Operation" + }, + "parameterOrder": [ + "project", + "backendService" + ], + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameters": { + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string", + "location": "path" + }, + "backendService": { + "type": "string", + "required": true, + "description": "Name of the BackendService resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + } + }, + "path": "projects/{project}/global/backendServices/{backendService}", + "flatPath": "projects/{project}/global/backendServices/{backendService}", + "description": "Deletes the specified BackendService resource." + } + } + }, + "regionCommitments": { + "methods": { + "insert": { + "response": { + "$ref": "Operation" + }, + "request": { + "$ref": "Commitment" + }, + "parameters": { + "project": { + "required": true, + "location": "path", + "type": "string", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request." + }, + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "region": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "required": true, + "location": "path", + "type": "string", + "description": "Name of the region for this request." + } + }, + "id": "compute.regionCommitments.insert", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "httpMethod": "POST", + "parameterOrder": [ + "project", + "region" + ], + "path": "projects/{project}/regions/{region}/commitments", + "flatPath": "projects/{project}/regions/{region}/commitments", + "description": "Creates a commitment in the specified project using the data included in the request." + }, + "list": { + "flatPath": "projects/{project}/regions/{region}/commitments", + "parameterOrder": [ + "project", + "region" + ], + "id": "compute.regionCommitments.list", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves a list of commitments contained within the specified region.", + "response": { + "$ref": "CommitmentList" + }, + "httpMethod": "GET", + "parameters": { + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "location": "path", + "type": "string", + "description": "Project ID for this request." + }, + "region": { + "location": "path", + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "pageToken": { + "location": "query", + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "type": "integer", + "format": "uint32", + "minimum": "0", + "location": "query" + } + }, + "path": "projects/{project}/regions/{region}/commitments" + }, + "get": { + "path": "projects/{project}/regions/{region}/commitments/{commitment}", + "response": { + "$ref": "Commitment" + }, + "parameterOrder": [ + "project", + "region", + "commitment" + ], + "httpMethod": "GET", + "id": "compute.regionCommitments.get", + "parameters": { + "region": { + "type": "string", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request.", + "location": "path" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "description": "Project ID for this request.", + "type": "string" + }, + "commitment": { + "description": "Name of the commitment to return.", + "location": "path", + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}" + } + }, + "description": "Returns the specified commitment resource. Gets a list of available commitments by making a list() request.", + "flatPath": "projects/{project}/regions/{region}/commitments/{commitment}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "aggregatedList": { + "parameterOrder": [ + "project" + ], + "httpMethod": "GET", + "flatPath": "projects/{project}/aggregated/commitments", + "response": { + "$ref": "CommitmentAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "path": "projects/{project}/aggregated/commitments", + "description": "Retrieves an aggregated list of commitments by region.", + "parameters": { + "orderBy": { + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query", + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "maxResults": { + "location": "query", + "format": "uint32", + "type": "integer", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0" + }, + "filter": { + "type": "string", + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "returnPartialSuccess": { + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean" + }, + "includeAllScopes": { + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "type": "boolean" + }, + "project": { + "type": "string", + "required": true, + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "id": "compute.regionCommitments.aggregatedList" + } + } + }, + "zones": { + "methods": { + "list": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "description": "Retrieves the list of Zone resources available to the specified project.", + "flatPath": "projects/{project}/zones", + "parameterOrder": [ + "project" + ], + "httpMethod": "GET", + "id": "compute.zones.list", + "response": { + "$ref": "ZoneList" + }, + "path": "projects/{project}/zones", + "parameters": { + "maxResults": { + "minimum": "0", + "type": "integer", + "format": "uint32", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "location": "query" + }, + "filter": { + "location": "query", + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```" + }, + "project": { + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "type": "string" + }, + "pageToken": { + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string", + "location": "query" + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + } + } + }, + "get": { + "description": "Returns the specified Zone resource. Gets a list of available zones by making a list() request.", + "httpMethod": "GET", + "flatPath": "projects/{project}/zones/{zone}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "Zone" + }, + "id": "compute.zones.get", + "parameters": { + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true, + "description": "Project ID for this request." + }, + "zone": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the zone resource to return.", + "type": "string", + "location": "path" + } + }, + "path": "projects/{project}/zones/{zone}", + "parameterOrder": [ + "project", + "zone" + ] + } + } + }, + "vpnTunnels": { + "methods": { + "get": { + "id": "compute.vpnTunnels.get", + "parameters": { + "project": { + "location": "path", + "description": "Project ID for this request.", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "region": { + "description": "Name of the region for this request.", + "location": "path", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "vpnTunnel": { + "description": "Name of the VpnTunnel resource to return.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "type": "string", + "required": true, + "location": "path" + } + }, + "response": { + "$ref": "VpnTunnel" + }, + "path": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "description": "Returns the specified VpnTunnel resource. Gets a list of available VPN tunnels by making a list() request.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "httpMethod": "GET" + }, + "list": { + "description": "Retrieves a list of VpnTunnel resources contained in the specified project and region.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.vpnTunnels.list", + "path": "projects/{project}/regions/{region}/vpnTunnels", + "parameterOrder": [ + "project", + "region" + ], + "httpMethod": "GET", + "parameters": { + "filter": { + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query", + "type": "string" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "location": "path", + "type": "string" + }, + "orderBy": { + "type": "string", + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "returnPartialSuccess": { + "type": "boolean", + "location": "query", + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false." + }, + "region": { + "required": true, + "description": "Name of the region for this request.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "maxResults": { + "type": "integer", + "default": "500", + "minimum": "0", + "format": "uint32", + "location": "query", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)" + } + }, + "flatPath": "projects/{project}/regions/{region}/vpnTunnels", + "response": { + "$ref": "VpnTunnelList" + } + }, + "delete": { + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "description": "Deletes the specified VpnTunnel resource.", + "parameters": { + "project": { + "type": "string", + "required": true, + "description": "Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "requestId": { + "location": "query", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "type": "string" + }, + "region": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request.", + "location": "path", + "required": true + }, + "vpnTunnel": { + "type": "string", + "location": "path", + "description": "Name of the VpnTunnel resource to delete.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true + } + }, + "path": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "id": "compute.vpnTunnels.delete", + "flatPath": "projects/{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "response": { + "$ref": "Operation" + } + }, + "insert": { + "path": "projects/{project}/regions/{region}/vpnTunnels", + "flatPath": "projects/{project}/regions/{region}/vpnTunnels", + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "VpnTunnel" + }, + "id": "compute.vpnTunnels.insert", + "response": { + "$ref": "Operation" + }, + "description": "Creates a VpnTunnel resource in the specified project and region using the data included in the request.", + "httpMethod": "POST", + "parameters": { + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "project": { + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "required": true, + "type": "string" + }, + "region": { + "required": true, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the region for this request.", + "location": "path" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "parameters": { + "includeAllScopes": { + "type": "boolean", + "location": "query", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included." + }, + "orderBy": { + "location": "query", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported.", + "type": "string" + }, + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "type": "boolean", + "location": "query" + }, + "pageToken": { + "type": "string", + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results." + }, + "maxResults": { + "minimum": "0", + "location": "query", + "default": "500", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "type": "integer", + "format": "uint32" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + } + }, + "path": "projects/{project}/aggregated/vpnTunnels", + "response": { + "$ref": "VpnTunnelAggregatedList" + }, + "description": "Retrieves an aggregated list of VPN tunnels.", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "flatPath": "projects/{project}/aggregated/vpnTunnels", + "parameterOrder": [ + "project" + ], + "httpMethod": "GET", + "id": "compute.vpnTunnels.aggregatedList" + } + } + }, + "routes": { + "methods": { + "insert": { + "httpMethod": "POST", + "path": "projects/{project}/global/routes", + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "Route" + }, + "flatPath": "projects/{project}/global/routes", + "description": "Creates a Route resource in the specified project using the data included in the request.", + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "required": true, + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "description": "Project ID for this request.", + "type": "string" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "response": { + "$ref": "Operation" + }, + "id": "compute.routes.insert" + }, + "get": { + "parameters": { + "route": { + "type": "string", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "description": "Name of the Route resource to return." + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "type": "string", + "location": "path", + "required": true, + "description": "Project ID for this request." + } + }, + "id": "compute.routes.get", + "description": "Returns the specified Route resource. Gets a list of available routes by making a list() request.", + "path": "projects/{project}/global/routes/{route}", + "httpMethod": "GET", + "flatPath": "projects/{project}/global/routes/{route}", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "response": { + "$ref": "Route" + }, + "parameterOrder": [ + "project", + "route" + ] + }, + "delete": { + "description": "Deletes the specified Route resource.", + "httpMethod": "DELETE", + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ], + "id": "compute.routes.delete", + "response": { + "$ref": "Operation" + }, + "flatPath": "projects/{project}/global/routes/{route}", + "path": "projects/{project}/global/routes/{route}", + "parameters": { + "requestId": { + "location": "query", + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000)." + }, + "project": { + "description": "Project ID for this request.", + "required": true, + "type": "string", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))" + }, + "route": { + "description": "Name of the Route resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path", + "type": "string" + } + }, + "parameterOrder": [ + "project", + "route" + ] + }, + "list": { + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ], + "id": "compute.routes.list", + "response": { + "$ref": "RouteList" + }, + "flatPath": "projects/{project}/global/routes", + "parameters": { + "filter": { + "location": "query", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`. For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "type": "string" + }, + "project": { + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path", + "required": true, + "description": "Project ID for this request.", + "type": "string" + }, + "orderBy": { + "location": "query", + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. You can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. Currently, only sorting by `name` or `creationTimestamp desc` is supported." + }, + "pageToken": { + "location": "query", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "type": "string" + }, + "maxResults": { + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "minimum": "0", + "default": "500", + "location": "query", + "format": "uint32", + "type": "integer" + }, + "returnPartialSuccess": { + "description": "Opt-in for partial success behavior which provides partial results in case of failure. The default value is false.", + "location": "query", + "type": "boolean" + } + }, + "path": "projects/{project}/global/routes", + "description": "Retrieves the list of Route resources available to the specified project.", + "httpMethod": "GET", + "parameterOrder": [ + "project" + ] + } + } + } + }, + "discoveryVersion": "v1", + "title": "Compute Engine API", + "batchPath": "batch/compute/v1", + "mtlsRootUrl": "https://compute.mtls.googleapis.com/", + "basePath": "/compute/v1/", + "baseUrl": "https://compute.googleapis.com/compute/v1/", + "documentationLink": "https://cloud.google.com/compute/", + "parameters": { + "prettyPrint": { + "type": "boolean", + "location": "query", + "description": "Returns response with indentations and line breaks.", + "default": "true" + }, + "upload_protocol": { + "type": "string", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query" + }, + "$.xgafv": { + "type": "string", + "location": "query", + "description": "V1 error format.", + "enum": [ + "1", + "2" + ], + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ] + }, + "uploadType": { + "location": "query", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "type": "string" + }, + "fields": { + "type": "string", + "location": "query", + "description": "Selector specifying which fields to include in a partial response." + }, + "alt": { + "location": "query", + "enum": [ + "json", + "media", + "proto" + ], + "type": "string", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "description": "Data format for response.", + "default": "json" + }, + "oauth_token": { + "type": "string", + "description": "OAuth 2.0 token for the current user.", + "location": "query" + }, + "callback": { + "description": "JSONP", + "type": "string", + "location": "query" + }, + "key": { + "location": "query", + "type": "string", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token." + }, + "userIp": { + "location": "query", + "description": "Legacy name for parameter that has been superseded by `quotaUser`.", + "type": "string" + }, + "access_token": { + "location": "query", + "type": "string", + "description": "OAuth access token." + }, + "quotaUser": { + "location": "query", + "type": "string", + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters." + } + }, + "protocol": "rest", + "kind": "discovery#restDescription", + "rootUrl": "https://compute.googleapis.com/", + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Cloud Storage and see the email address for your Google Account" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Cloud Storage and see the email address of your Google Account" + }, + "https://www.googleapis.com/auth/cloud-platform": { + "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account." + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + } + } + } + }, + "id": "compute:v1", + "name": "compute", + "schemas": { + "InstanceGroupManagersSetTargetPoolsRequest": { + "id": "InstanceGroupManagersSetTargetPoolsRequest", + "properties": { + "targetPools": { + "items": { + "type": "string" + }, + "type": "array", + "description": "The list of target pool URLs that instances in this managed instance group belong to. The managed instance group applies these target pools to all of the instances in the group. Existing instances and new instances in the group all receive these target pool settings." + }, + "fingerprint": { + "type": "string", + "format": "byte", + "description": "The fingerprint of the target pools information. Use this optional property to prevent conflicts when multiple users change the target pools settings concurrently. Obtain the fingerprint with the instanceGroupManagers.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request." + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersDeleteInstancesRequest": { + "type": "object", + "properties": { + "skipInstancesOnValidationError": { + "description": "Specifies whether the request should proceed despite the inclusion of instances that are not members of the group or that are already in the process of being deleted or abandoned. If this field is set to `false` and such an instance is specified in the request, the operation fails. The operation always fails if the request contains a malformed instance URL or a reference to an instance that exists in a zone or region other than the group's zone or region.", + "type": "boolean" + }, + "instances": { + "type": "array", + "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + } + } + }, + "id": "RegionInstanceGroupManagersDeleteInstancesRequest" + }, + "LogConfig": { + "type": "object", + "properties": { + "counter": { + "description": "This is deprecated and has no effect. Do not use.", + "$ref": "LogConfigCounterOptions" + }, + "cloudAudit": { + "$ref": "LogConfigCloudAuditOptions", + "description": "This is deprecated and has no effect. Do not use." + }, + "dataAccess": { + "description": "This is deprecated and has no effect. Do not use.", + "$ref": "LogConfigDataAccessOptions" + } + }, + "description": "This is deprecated and has no effect. Do not use.", + "id": "LogConfig" + }, + "ZoneSetLabelsRequest": { + "type": "object", + "properties": { + "labels": { + "description": "The labels to set for this resource.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "labelFingerprint": { + "type": "string", + "format": "byte", + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint." + } + }, + "id": "ZoneSetLabelsRequest" + }, + "BulkInsertInstanceResourcePerInstanceProperties": { + "properties": { + "name": { + "description": "This field is only temporary. It will be removed. Do not use it.", + "type": "string" + } + }, + "type": "object", + "id": "BulkInsertInstanceResourcePerInstanceProperties", + "description": "Per-instance properties to be set on individual instances. To be extended in the future." + }, + "HealthCheckServiceReference": { + "type": "object", + "properties": { + "healthCheckService": { + "type": "string" + } + }, + "id": "HealthCheckServiceReference", + "description": "A full or valid partial URL to a health check service. For example, the following are valid URLs: - https://www.googleapis.com/compute/beta/projects/project-id/regions/us-west1/healthCheckServices/health-check-service - projects/project-id/regions/us-west1/healthCheckServices/health-check-service - regions/us-west1/healthCheckServices/health-check-service " + }, + "NetworkPeering": { + "id": "NetworkPeering", + "type": "object", + "description": "A network peering attached to a network resource. The message includes the peering name, peer network, peering state, and a flag indicating whether Google Compute Engine should automatically create routes for the peering.", + "properties": { + "name": { + "type": "string", + "description": "Name of this peering. Provided by the client when the peering is created. The name must comply with RFC1035. Specifically, the name must be 1-63 characters long and match regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all the following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "autoCreateRoutes": { + "type": "boolean", + "description": "This field will be deprecated soon. Use the exchange_subnet_routes field instead. Indicates whether full mesh connectivity is created and managed automatically between peered networks. Currently this field should always be true since Google Compute Engine will automatically create and manage subnetwork routes between two networks when peering state is ACTIVE." + }, + "state": { + "type": "string", + "enum": [ + "ACTIVE", + "INACTIVE" + ], + "description": "[Output Only] State for the peering, either `ACTIVE` or `INACTIVE`. The peering is `ACTIVE` when there's a matching configuration in the peer network.", + "enumDescriptions": [ + "Matching configuration exists on the peer.", + "There is no matching configuration on the peer, including the case when peer does not exist." + ] + }, + "exportSubnetRoutesWithPublicIp": { + "type": "boolean", + "description": "Whether subnet routes with public IP range are exported. The default value is true, all subnet routes are exported. IPv4 special-use ranges are always exported to peers and are not controlled by this field." + }, + "exportCustomRoutes": { + "description": "Whether to export the custom routes to peer network.", + "type": "boolean" + }, + "importSubnetRoutesWithPublicIp": { + "description": "Whether subnet routes with public IP range are imported. The default value is false. IPv4 special-use ranges are always imported from peers and are not controlled by this field.", + "type": "boolean" + }, + "exchangeSubnetRoutes": { + "type": "boolean", + "description": "Indicates whether full mesh connectivity is created and managed automatically between peered networks. Currently this field should always be true since Google Compute Engine will automatically create and manage subnetwork routes between two networks when peering state is ACTIVE." + }, + "importCustomRoutes": { + "description": "Whether to import the custom routes from peer network.", + "type": "boolean" + }, + "network": { + "type": "string", + "description": "The URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network." + }, + "stateDetails": { + "type": "string", + "description": "[Output Only] Details about the current state of the peering." + }, + "peerMtu": { + "format": "int32", + "type": "integer", + "description": "Maximum Transmission Unit in bytes." + } + } + }, + "ShieldedInstanceIdentityEntry": { + "type": "object", + "id": "ShieldedInstanceIdentityEntry", + "description": "A Shielded Instance Identity Entry.", + "properties": { + "ekCert": { + "description": "A PEM-encoded X.509 certificate. This field can be empty.", + "type": "string" + }, + "ekPub": { + "description": "A PEM-encoded public key.", + "type": "string" + } + } + }, + "InstanceGroupManagersSetInstanceTemplateRequest": { + "id": "InstanceGroupManagersSetInstanceTemplateRequest", + "type": "object", + "properties": { + "instanceTemplate": { + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE.", + "type": "string" + } + } + }, + "RouterInterface": { + "type": "object", + "properties": { + "managementType": { + "type": "string", + "description": "[Output Only] The resource that configures and manages this interface. - MANAGED_BY_USER is the default value and can be managed directly by users. - MANAGED_BY_ATTACHMENT is an interface that is configured and managed by Cloud Interconnect, specifically, by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of interface when the PARTNER InterconnectAttachment is created, updated, or deleted. ", + "enumDescriptions": [ + "The interface is automatically created for PARTNER type InterconnectAttachment, Google will automatically create/update/delete this interface when the PARTNER InterconnectAttachment is created/provisioned/deleted. This type of interface cannot be manually managed by user.", + "Default value, the interface is manually created and managed by user." + ], + "enum": [ + "MANAGED_BY_ATTACHMENT", + "MANAGED_BY_USER" + ] + }, + "linkedVpnTunnel": { + "description": "URI of the linked VPN tunnel, which must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.", + "type": "string" + }, + "redundantInterface": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the interface that will be redundant with the current interface you are creating. The redundantInterface must belong to the same Cloud Router as the interface here. To establish the BGP session to a Router Appliance VM, you must create two BGP peers. The two BGP peers must be attached to two separate interfaces that are redundant with each other. The redundant_interface must be 1-63 characters long, and comply with RFC1035. Specifically, the redundant_interface must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "privateIpAddress": { + "type": "string", + "description": "The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance, such as a Next Gen Firewall, a Virtual Router, or an SD-WAN VM." + }, + "ipRange": { + "type": "string", + "description": "IP address and range of the interface. The IP range must be in the RFC3927 link-local IP address space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface." + }, + "name": { + "type": "string", + "annotations": { + "required": [ + "compute.routers.insert" + ] + }, + "description": "Name of this interface entry. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "subnetwork": { + "type": "string", + "description": "The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router. When you establish a BGP session to a VM instance using this interface, the VM instance must belong to the same subnetwork as the subnetwork specified here." + }, + "linkedInterconnectAttachment": { + "description": "URI of the linked Interconnect attachment. It must be in the same region as the router. Each interface can have one linked resource, which can be a VPN tunnel, an Interconnect attachment, or a virtual machine instance.", + "type": "string" + } + }, + "id": "RouterInterface" + }, + "TestPermissionsResponse": { + "properties": { + "permissions": { + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "TestPermissionsResponse", + "type": "object" + }, + "HttpHeaderMatch": { + "properties": { + "invertMatch": { + "description": "If set to false, the headerMatch is considered a match if the match criteria above are met. If set to true, the headerMatch is considered a match if the match criteria above are NOT met. The default setting is false.", + "type": "boolean" + }, + "exactMatch": { + "description": "The value should exactly match contents of exactMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.", + "type": "string" + }, + "suffixMatch": { + "description": "The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.", + "type": "string" + }, + "headerName": { + "description": "The name of the HTTP header to match. For matching against the HTTP request's authority, use a headerMatch with the header name \":authority\". For matching a request's method, use the headerName \":method\". When the URL map is bound to target gRPC proxy that has validateForProxyless field set to true, only non-binary user-specified custom metadata and the `content-type` header are supported. The following transport-level headers cannot be used in header matching rules: `:authority`, `:method`, `:path`, `:scheme`, `user-agent`, `accept-encoding`, `content-encoding`, `grpc-accept-encoding`, `grpc-encoding`, `grpc-previous-rpc-attempts`, `grpc-tags-bin`, `grpc-timeout` and `grpc-trace-bin.", + "type": "string" + }, + "rangeMatch": { + "description": "The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Note that rangeMatch is not supported for Loadbalancers that have their loadBalancingScheme set to EXTERNAL.", + "$ref": "Int64RangeMatch" + }, + "presentMatch": { + "description": "A header with the contents of headerName must exist. The match takes place whether or not the request's header has a value. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.", + "type": "boolean" + }, + "prefixMatch": { + "description": "The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.", + "type": "string" + }, + "regexMatch": { + "type": "string", + "description": "The value of the header must match the regular expression specified in regexMatch. For regular expression grammar, please see: github.com/google/re2/wiki/Syntax For matching against a port specified in the HTTP request, use a headerMatch with headerName set to PORT and a regular expression that satisfies the RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Note that regexMatch only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED." + } + }, + "id": "HttpHeaderMatch", + "type": "object", + "description": "matchRule criteria for request header matches." + }, + "SignedUrlKey": { + "type": "object", + "id": "SignedUrlKey", + "properties": { + "keyValue": { + "description": "128-bit key value used for signing the URL. The key value must be a valid RFC 4648 Section 5 base64url encoded string.", + "type": "string" + }, + "keyName": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the key. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + } + }, + "description": "Represents a customer-supplied Signing Key used by Cloud CDN Signed URLs" + }, + "InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy": { + "properties": { + "type": { + "type": "string", + "enum": [ + "HIERARCHY", + "UNSPECIFIED" + ], + "description": "[Output Only] The type of the firewall policy.", + "enumDescriptions": [ + "", + "" + ] + }, + "rules": { + "type": "array", + "description": "The rules that apply to the network.", + "items": { + "$ref": "FirewallPolicyRule" + } + }, + "shortName": { + "type": "string", + "description": "[Output Only] The short name of the firewall policy." + }, + "displayName": { + "description": "[Output Only] Deprecated, please use short name instead. The display name of the firewall policy.", + "type": "string" + }, + "name": { + "type": "string", + "description": "[Output Only] The name of the firewall policy." + } + }, + "id": "InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy", + "type": "object" + }, + "SubnetworksExpandIpCidrRangeRequest": { + "id": "SubnetworksExpandIpCidrRangeRequest", + "type": "object", + "properties": { + "ipCidrRange": { + "description": "The IP (in CIDR format or netmask) of internal addresses that are legal on this Subnetwork. This range should be disjoint from other subnetworks within this network. This range can only be larger than (i.e. a superset of) the range previously defined before the update.", + "type": "string" + } + } + }, + "TargetInstanceList": { + "type": "object", + "id": "TargetInstanceList", + "description": "Contains a list of TargetInstance resources.", + "properties": { + "items": { + "items": { + "$ref": "TargetInstance" + }, + "type": "array", + "description": "A list of TargetInstance resources." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "properties": { + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "default": "compute#targetInstanceList", + "description": "Type of resource.", + "type": "string" + } + } + }, + "InterconnectAttachment": { + "description": "Represents an Interconnect Attachment (VLAN) resource. You can use Interconnect attachments (VLANS) to connect your Virtual Private Cloud networks to your on-premises networks through an Interconnect. For more information, read Creating VLAN Attachments.", + "properties": { + "googleReferenceId": { + "type": "string", + "description": "[Output Only] Google reference ID, to be used when raising support tickets with Google or otherwise to debug backend connectivity issues. [Deprecated] This field is not used." + }, + "mtu": { + "type": "integer", + "description": "Maximum Transmission Unit (MTU), in bytes, of packets passing through this interconnect attachment. Only 1440 and 1500 are allowed. If not specified, the value will default to 1440.", + "format": "int32" + }, + "operationalStatus": { + "enum": [ + "OS_ACTIVE", + "OS_UNPROVISIONED" + ], + "description": "[Output Only] The current status of whether or not this interconnect attachment is functional, which can take one of the following values: - OS_ACTIVE: The attachment has been turned up and is ready to use. - OS_UNPROVISIONED: The attachment is not ready to use yet, because turnup is not complete. ", + "enumDescriptions": [ + "Indicates that attachment has been turned up and is ready to use.", + "Indicates that attachment is not ready to use yet, because turnup is not complete." + ], + "type": "string" + }, + "router": { + "description": "URL of the Cloud Router to be used for dynamic routing. This router must be in the same region as this InterconnectAttachment. The InterconnectAttachment will automatically connect the Interconnect to the network & region within which the Cloud Router is configured.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "state": { + "enum": [ + "ACTIVE", + "DEFUNCT", + "PARTNER_REQUEST_RECEIVED", + "PENDING_CUSTOMER", + "PENDING_PARTNER", + "STATE_UNSPECIFIED", + "UNPROVISIONED" + ], + "description": "[Output Only] The current state of this attachment's functionality. Enum values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, PARTNER, and PARTNER_PROVIDER interconnect attachments, while enum values PENDING_PARTNER, PARTNER_REQUEST_RECEIVED, and PENDING_CUSTOMER are used for only PARTNER and PARTNER_PROVIDER interconnect attachments. This state can take one of the following values: - ACTIVE: The attachment has been turned up and is ready to use. - UNPROVISIONED: The attachment is not ready to use yet, because turnup is not complete. - PENDING_PARTNER: A newly-created PARTNER attachment that has not yet been configured on the Partner side. - PARTNER_REQUEST_RECEIVED: A PARTNER attachment is in the process of provisioning after a PARTNER_PROVIDER attachment was created that references it. - PENDING_CUSTOMER: A PARTNER or PARTNER_PROVIDER attachment that is waiting for a customer to activate it. - DEFUNCT: The attachment was deleted externally and is no longer functional. This could be because the associated Interconnect was removed, or because the other side of a Partner attachment was deleted. ", + "enumDescriptions": [ + "Indicates that attachment has been turned up and is ready to use.", + "The attachment was deleted externally and is no longer functional. This could be because the associated Interconnect was wiped out, or because the other side of a Partner attachment was deleted.", + "A PARTNER attachment is in the process of provisioning after a PARTNER_PROVIDER attachment was created that references it.", + "PARTNER or PARTNER_PROVIDER attachment that is waiting for the customer to activate.", + "A newly created PARTNER attachment that has not yet been configured on the Partner side.", + "", + "Indicates that attachment is not ready to use yet, because turnup is not complete." + ], + "type": "string" + }, + "edgeAvailabilityDomain": { + "description": "Desired availability domain for the attachment. Only available for type PARTNER, at creation time, and can take one of the following values: - AVAILABILITY_DOMAIN_ANY - AVAILABILITY_DOMAIN_1 - AVAILABILITY_DOMAIN_2 For improved reliability, customers should configure a pair of attachments, one per availability domain. The selected availability domain will be provided to the Partner via the pairing key, so that the provisioned circuit will lie in the specified domain. If not specified, the value will default to AVAILABILITY_DOMAIN_ANY.", + "type": "string", + "enum": [ + "AVAILABILITY_DOMAIN_1", + "AVAILABILITY_DOMAIN_2", + "AVAILABILITY_DOMAIN_ANY" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "interconnect": { + "type": "string", + "description": "URL of the underlying Interconnect object that this attachment's traffic will traverse through." + }, + "region": { + "description": "[Output Only] URL of the region where the regional interconnect attachment resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource.", + "type": "string" + }, + "cloudRouterIpAddress": { + "description": "[Output Only] IPv4 address + prefix length to be configured on Cloud Router Interface for this interconnect attachment.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "customerRouterIpAddress": { + "type": "string", + "description": "[Output Only] IPv4 address + prefix length to be configured on the customer router subinterface for this interconnect attachment." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "dataplaneVersion": { + "format": "int32", + "description": "[Output Only] Dataplane version for this InterconnectAttachment.", + "type": "integer" + }, + "satisfiesPzs": { + "description": "[Output Only] Set to true if the resource satisfies the zone separation organization policy constraints and false otherwise. Defaults to false if the field is not present.", + "type": "boolean" + }, + "candidateSubnets": { + "items": { + "type": "string" + }, + "description": "Up to 16 candidate prefixes that can be used to restrict the allocation of cloudRouterIpAddress and customerRouterIpAddress for this attachment. All prefixes must be within link-local address space (169.254.0.0/16) and must be /29 or shorter (/28, /27, etc). Google will attempt to select an unused /29 from the supplied candidate prefix(es). The request will fail if all possible /29s are in use on Google's edge. If not supplied, Google will randomly select an unused /29 from all of link-local space.", + "type": "array" + }, + "type": { + "enumDescriptions": [ + "Attachment to a dedicated interconnect.", + "Attachment to a partner interconnect, created by the customer.", + "Attachment to a partner interconnect, created by the partner." + ], + "description": "The type of interconnect attachment this is, which can take one of the following values: - DEDICATED: an attachment to a Dedicated Interconnect. - PARTNER: an attachment to a Partner Interconnect, created by the customer. - PARTNER_PROVIDER: an attachment to a Partner Interconnect, created by the partner. ", + "enum": [ + "DEDICATED", + "PARTNER", + "PARTNER_PROVIDER" + ], + "type": "string" + }, + "bandwidth": { + "description": "Provisioned bandwidth capacity for the interconnect attachment. For attachments of type DEDICATED, the user can set the bandwidth. For attachments of type PARTNER, the Google Partner that is operating the interconnect must set the bandwidth. Output only for PARTNER type, mutable for PARTNER_PROVIDER and DEDICATED, and can take one of the following values: - BPS_50M: 50 Mbit/s - BPS_100M: 100 Mbit/s - BPS_200M: 200 Mbit/s - BPS_300M: 300 Mbit/s - BPS_400M: 400 Mbit/s - BPS_500M: 500 Mbit/s - BPS_1G: 1 Gbit/s - BPS_2G: 2 Gbit/s - BPS_5G: 5 Gbit/s - BPS_10G: 10 Gbit/s - BPS_20G: 20 Gbit/s - BPS_50G: 50 Gbit/s ", + "enumDescriptions": [ + "100 Mbit/s", + "10 Gbit/s", + "1 Gbit/s", + "200 Mbit/s", + "20 Gbit/s", + "2 Gbit/s", + "300 Mbit/s", + "400 Mbit/s", + "500 Mbit/s", + "50 Gbit/s", + "50 Mbit/s", + "5 Gbit/s" + ], + "enum": [ + "BPS_100M", + "BPS_10G", + "BPS_1G", + "BPS_200M", + "BPS_20G", + "BPS_2G", + "BPS_300M", + "BPS_400M", + "BPS_500M", + "BPS_50G", + "BPS_50M", + "BPS_5G" + ], + "type": "string" + }, + "pairingKey": { + "type": "string", + "description": "[Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present for DEDICATED]. The opaque identifier of an PARTNER attachment used to initiate provisioning with a selected partner. Of the form \"XXXXX/region/domain\"" + }, + "name": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "vlanTag8021q": { + "type": "integer", + "format": "int32", + "description": "The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4094. Only specified at creation time." + }, + "encryption": { + "description": "Indicates the user-supplied encryption option of this VLAN attachment (interconnectAttachment). Can only be specified at attachment creation for PARTNER or DEDICATED attachments. Possible values are: - NONE - This is the default value, which means that the VLAN attachment carries unencrypted traffic. VMs are able to send traffic to, or receive traffic from, such a VLAN attachment. - IPSEC - The VLAN attachment carries only encrypted traffic that is encrypted by an IPsec device, such as an HA VPN gateway or third-party IPsec VPN. VMs cannot directly send traffic to, or receive traffic from, such a VLAN attachment. To use *IPsec-encrypted Cloud Interconnect*, the VLAN attachment must be created with this option. Not currently available publicly. ", + "type": "string", + "enumDescriptions": [ + "The interconnect attachment will carry only encrypted traffic that is encrypted by an IPsec device such as HA VPN gateway; VMs cannot directly send traffic to or receive traffic from such an interconnect attachment. To use IPsec-encrypted Cloud Interconnect, the interconnect attachment must be created with this option.", + "This is the default value, which means the Interconnect Attachment will carry unencrypted traffic. VMs will be able to send traffic to or receive traffic from such interconnect attachment." + ], + "enum": [ + "IPSEC", + "NONE" + ] + }, + "adminEnabled": { + "type": "boolean", + "description": "Determines whether this Attachment will carry packets. Not present for PARTNER_PROVIDER." + }, + "privateInterconnectInfo": { + "$ref": "InterconnectAttachmentPrivateInfo", + "description": "[Output Only] Information specific to an InterconnectAttachment. This property is populated if the interconnect that this is attached to is of type DEDICATED." + }, + "partnerAsn": { + "format": "int64", + "description": "Optional BGP ASN for the router supplied by a Layer 3 Partner if they configured BGP on behalf of the customer. Output only for PARTNER type, input only for PARTNER_PROVIDER, not available for DEDICATED.", + "type": "string" + }, + "partnerMetadata": { + "$ref": "InterconnectAttachmentPartnerMetadata", + "description": "Informational metadata about Partner attachments from Partners to display to customers. Output only for for PARTNER type, mutable for PARTNER_PROVIDER, not available for DEDICATED." + }, + "ipsecInternalAddresses": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of URLs of addresses that have been reserved for the VLAN attachment. Used only for the VLAN attachment that has the encryption option as IPSEC. The addresses must be regional internal IP address ranges. When creating an HA VPN gateway over the VLAN attachment, if the attachment is configured to use a regional internal IP address, then the VPN gateway's IP address is allocated from the IP address range specified here. For example, if the HA VPN gateway's interface 0 is paired to this VLAN attachment, then a regional internal IP address for the VPN gateway interface 0 will be allocated from the IP address specified for this VLAN attachment. If this field is not specified when creating the VLAN attachment, then later on when creating an HA VPN gateway on this VLAN attachment, the HA VPN gateway's IP address is allocated from the regional external IP address pool. Not currently available publicly. " + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#interconnectAttachment for interconnect attachments.", + "default": "compute#interconnectAttachment", + "type": "string" + } + }, + "type": "object", + "id": "InterconnectAttachment" + }, + "AcceleratorType": { + "type": "object", + "id": "AcceleratorType", + "description": "Represents an Accelerator Type resource. Google Cloud Platform provides graphics processing units (accelerators) that you can add to VM instances to improve or accelerate performance when working with intensive workloads. For more information, read GPUs on Compute Engine.", + "properties": { + "id": { + "type": "string", + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "kind": { + "description": "[Output Only] The type of the resource. Always compute#acceleratorType for accelerator types.", + "default": "compute#acceleratorType", + "type": "string" + }, + "zone": { + "type": "string", + "description": "[Output Only] The name of the zone where the accelerator type resides, such as us-central1-a. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined, fully qualified URL for this resource." + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this accelerator type." + }, + "description": { + "type": "string", + "description": "[Output Only] An optional textual description of the resource." + }, + "maximumCardsPerInstance": { + "format": "int32", + "type": "integer", + "description": "[Output Only] Maximum number of accelerator cards allowed per instance." + } + } + }, + "XpnHostList": { + "id": "XpnHostList", + "type": "object", + "properties": { + "items": { + "items": { + "$ref": "Project" + }, + "description": "[Output Only] A list of shared VPC host project URLs.", + "type": "array" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#xpnHostList for lists of shared VPC hosts.", + "default": "compute#xpnHostList" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + } + }, + "type": "object" + } + } + }, + "ResourcePolicyWeeklyCycleDayOfWeek": { + "id": "ResourcePolicyWeeklyCycleDayOfWeek", + "type": "object", + "properties": { + "startTime": { + "type": "string", + "description": "Time within the window to start the operations. It must be in format \"HH:MM\", where HH : [00-23] and MM : [00-00] GMT." + }, + "duration": { + "type": "string", + "description": "[Output only] Duration of the time window, automatically chosen to be smallest possible in the given scenario." + }, + "day": { + "type": "string", + "enum": [ + "FRIDAY", + "INVALID", + "MONDAY", + "SATURDAY", + "SUNDAY", + "THURSDAY", + "TUESDAY", + "WEDNESDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "description": "Defines a schedule that runs on specific days of the week. Specify one or more days. The following options are available: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY." + } + } + }, + "HttpQueryParameterMatch": { + "id": "HttpQueryParameterMatch", + "type": "object", + "description": "HttpRouteRuleMatch criteria for a request's query parameter.", + "properties": { + "exactMatch": { + "type": "string", + "description": "The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch or regexMatch must be set." + }, + "name": { + "type": "string", + "description": "The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails." + }, + "regexMatch": { + "description": "The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For the regular expression grammar, please see github.com/google/re2/wiki/Syntax Only one of presentMatch, exactMatch or regexMatch must be set. Note that regexMatch only applies when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.", + "type": "string" + }, + "presentMatch": { + "type": "boolean", + "description": "Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch or regexMatch must be set." + } + } + }, + "InstanceList": { + "id": "InstanceList", + "description": "Contains a list of instances.", + "type": "object", + "properties": { + "kind": { + "description": "[Output Only] Type of resource. Always compute#instanceList for lists of Instance resources.", + "type": "string", + "default": "compute#instanceList" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "warning": { + "properties": { + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "items": { + "description": "A list of Instance resources.", + "items": { + "$ref": "Instance" + }, + "type": "array" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "ProjectsEnableXpnResourceRequest": { + "properties": { + "xpnResource": { + "$ref": "XpnResourceId", + "description": "Service resource (a.k.a service project) ID." + } + }, + "type": "object", + "id": "ProjectsEnableXpnResourceRequest" + }, + "ResourcePolicyAggregatedList": { + "type": "object", + "description": "Contains a list of resourcePolicies.", + "id": "ResourcePolicyAggregatedList", + "properties": { + "warning": { + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "etag": { + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "unreachables": { + "type": "array", + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#resourcePolicyAggregatedList" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "type": "object", + "description": "A list of ResourcePolicy resources.", + "additionalProperties": { + "$ref": "ResourcePoliciesScopedList", + "description": "Name of the scope containing this set of resourcePolicies." + } + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + } + }, + "RouterBgpPeer": { + "properties": { + "advertisedRoutePriority": { + "description": "The priority of routes advertised to this BGP peer. Where there is more than one matching route of maximum length, the routes with the lowest priority value win.", + "type": "integer", + "format": "uint32" + }, + "advertisedIpRanges": { + "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in the \"bgp\" message). These IP ranges are advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.", + "items": { + "$ref": "RouterAdvertisedIpRange" + }, + "type": "array" + }, + "name": { + "annotations": { + "required": [ + "compute.routers.insert" + ] + }, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of this BGP peer. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "enable": { + "enum": [ + "FALSE", + "TRUE" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "description": "The status of the BGP peer connection. If set to FALSE, any active session with the peer is terminated and all associated routing information is removed. If set to TRUE, the peer connection can be established with routing information. The default is TRUE." + }, + "ipAddress": { + "type": "string", + "description": "IP address of the interface inside Google Cloud Platform. Only IPv4 is supported." + }, + "peerAsn": { + "type": "integer", + "description": "Peer BGP Autonomous System Number (ASN). Each BGP interface may use a different value.", + "annotations": { + "required": [ + "compute.routers.insert" + ] + }, + "format": "uint32" + }, + "peerIpAddress": { + "description": "IP address of the BGP interface outside Google Cloud Platform. Only IPv4 is supported.", + "type": "string" + }, + "managementType": { + "type": "string", + "enumDescriptions": [ + "The BGP peer is automatically created for PARTNER type InterconnectAttachment; Google will automatically create/delete this BGP peer when the PARTNER InterconnectAttachment is created/deleted, and Google will update the ipAddress and peerIpAddress when the PARTNER InterconnectAttachment is provisioned. This type of BGP peer cannot be created or deleted, but can be modified for all fields except for name, ipAddress and peerIpAddress.", + "Default value, the BGP peer is manually created and managed by user." + ], + "description": "[Output Only] The resource that configures and manages this BGP peer. - MANAGED_BY_USER is the default value and can be managed by you or other users - MANAGED_BY_ATTACHMENT is a BGP peer that is configured and managed by Cloud Interconnect, specifically by an InterconnectAttachment of type PARTNER. Google automatically creates, updates, and deletes this type of BGP peer when the PARTNER InterconnectAttachment is created, updated, or deleted. ", + "enum": [ + "MANAGED_BY_ATTACHMENT", + "MANAGED_BY_USER" + ] + }, + "advertiseMode": { + "type": "string", + "description": "User-specified flag to indicate which mode to use for advertisement.", + "enum": [ + "CUSTOM", + "DEFAULT" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "advertisedGroups": { + "description": "User-specified list of prefix groups to advertise in custom mode, which can take one of the following options: - ALL_SUBNETS: Advertises all available subnets, including peer VPC subnets. - ALL_VPC_SUBNETS: Advertises the router's own VPC subnets. Note that this field can only be populated if advertise_mode is CUSTOM and overrides the list defined for the router (in the \"bgp\" message). These groups are advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", + "type": "array", + "items": { + "type": "string", + "enum": [ + "ALL_SUBNETS" + ], + "enumDescriptions": [ + "Advertise all available subnets (including peer VPC subnets)." + ] + } + }, + "routerApplianceInstance": { + "description": "URI of the VM instance that is used as third-party router appliances such as Next Gen Firewalls, Virtual Routers, or Router Appliances. The VM instance must be located in zones contained in the same region as this Cloud Router. The VM instance is the peer side of the BGP session.", + "type": "string" + }, + "bfd": { + "$ref": "RouterBgpPeerBfd", + "description": "BFD configuration for the BGP peering." + }, + "interfaceName": { + "type": "string", + "description": "Name of the interface the BGP peer is associated with." + } + }, + "id": "RouterBgpPeer", + "type": "object" + }, + "Operation": { + "properties": { + "region": { + "description": "[Output Only] The URL of the region where the operation resides. Only applicable when performing regional operations.", + "type": "string" + }, + "startTime": { + "type": "string", + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." + }, + "creationTimestamp": { + "type": "string", + "description": "[Deprecated] This field is deprecated." + }, + "progress": { + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32", + "type": "integer" + }, + "kind": { + "default": "compute#operation", + "description": "[Output Only] Type of the resource. Always `compute#operation` for Operation resources.", + "type": "string" + }, + "description": { + "description": "[Output Only] A textual description of the operation, which is set when the operation is created.", + "type": "string" + }, + "httpErrorStatusCode": { + "format": "int32", + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a `404` means the resource was not found.", + "type": "integer" + }, + "insertTime": { + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "type": "array", + "items": { + "type": "object", + "properties": { + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + } + } + } + }, + "targetLink": { + "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from.", + "type": "string" + }, + "name": { + "type": "string", + "description": "[Output Only] Name of the operation." + }, + "error": { + "type": "object", + "properties": { + "errors": { + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] The error type identifier for this error." + }, + "message": { + "type": "string", + "description": "[Output Only] An optional, human-readable error message." + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + } + } + }, + "type": "array", + "description": "[Output Only] The array of errors encountered while processing this operation." + } + }, + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated." + }, + "operationGroupId": { + "type": "string", + "description": "[Output Only] An ID that represents a group of operations, such as when a group of operations results from a `bulkInsert` API request." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the operation. This identifier is defined by the server.", + "format": "uint64" + }, + "clientOperationId": { + "description": "[Output Only] The value of `requestId` if you provided it in the request. Not present otherwise.", + "type": "string" + }, + "operationType": { + "description": "[Output Only] The type of operation, such as `insert`, `update`, or `delete`, and so on.", + "type": "string" + }, + "targetId": { + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "type": "string", + "format": "uint64" + }, + "status": { + "enumDescriptions": [ + "", + "", + "" + ], + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "type": "string", + "description": "[Output Only] The status of the operation, which can be one of the following: `PENDING`, `RUNNING`, or `DONE`." + }, + "user": { + "description": "[Output Only] User who requested the operation, for example: `user@example.com`.", + "type": "string" + }, + "endTime": { + "type": "string", + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." + }, + "zone": { + "description": "[Output Only] The URL of the zone where the operation resides. Only applicable when performing per-zone operations.", + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional textual description of the current status of the operation.", + "type": "string" + }, + "httpErrorMessage": { + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as `NOT FOUND`.", + "type": "string" + } + }, + "type": "object", + "id": "Operation", + "description": "Represents an Operation resource. Google Compute Engine has three Operation resources: * [Global](/compute/docs/reference/rest/v1/globalOperations) * [Regional](/compute/docs/reference/rest/v1/regionOperations) * [Zonal](/compute/docs/reference/rest/v1/zoneOperations) You can use an operation resource to manage asynchronous API requests. For more information, read Handling API responses. Operations can be global, regional or zonal. - For global operations, use the `globalOperations` resource. - For regional operations, use the `regionOperations` resource. - For zonal operations, use the `zonalOperations` resource. For more information, read Global, Regional, and Zonal Resources." + }, + "PublicAdvertisedPrefixList": { + "type": "object", + "properties": { + "kind": { + "default": "compute#publicAdvertisedPrefixList", + "description": "[Output Only] Type of the resource. Always compute#publicAdvertisedPrefix for public advertised prefixes.", + "type": "string" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "warning": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + } + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + } + }, + "description": "[Output Only] Informational warning message." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "type": "array", + "items": { + "$ref": "PublicAdvertisedPrefix" + }, + "description": "A list of PublicAdvertisedPrefix resources." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "id": "PublicAdvertisedPrefixList" + }, + "RegionDisksRemoveResourcePoliciesRequest": { + "properties": { + "resourcePolicies": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Resource policies to be removed from this disk." + } + }, + "id": "RegionDisksRemoveResourcePoliciesRequest", + "type": "object" + }, + "NotificationEndpoint": { + "description": "Represents a notification endpoint. A notification endpoint resource defines an endpoint to receive notifications when there are status changes detected by the associated health check service. For more information, see Health checks overview.", + "type": "object", + "properties": { + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#notificationEndpoint for notification endpoints.", + "default": "compute#notificationEndpoint" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "id": { + "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier.", + "type": "string", + "format": "uint64" + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the notification endpoint resides. This field applies only to the regional resource. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body." + }, + "grpcSettings": { + "description": "Settings of the gRPC notification endpoint including the endpoint URL and the retry duration.", + "$ref": "NotificationEndpointGrpcSettings" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + }, + "id": "NotificationEndpoint" + }, + "PublicAdvertisedPrefix": { + "type": "object", + "id": "PublicAdvertisedPrefix", + "description": "A public advertised prefix represents an aggregated IP prefix or netblock which customers bring to cloud. The IP prefix is a single unit of route advertisement and is announced globally to the internet.", + "properties": { + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a new PublicAdvertisedPrefix. An up-to-date fingerprint must be provided in order to update the PublicAdvertisedPrefix, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a PublicAdvertisedPrefix.", + "format": "byte", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "status": { + "enum": [ + "INITIAL", + "PREFIX_CONFIGURATION_COMPLETE", + "PREFIX_CONFIGURATION_IN_PROGRESS", + "PREFIX_REMOVAL_IN_PROGRESS", + "PTR_CONFIGURED", + "REVERSE_DNS_LOOKUP_FAILED", + "VALIDATED" + ], + "description": "The status of the public advertised prefix.", + "type": "string", + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ] + }, + "publicDelegatedPrefixs": { + "description": "[Output Only] The list of public delegated prefixes that exist for this public advertised prefix.", + "items": { + "$ref": "PublicAdvertisedPrefixPublicDelegatedPrefix" + }, + "type": "array" + }, + "ipCidrRange": { + "description": "The IPv4 address range, in CIDR format, represented by this public advertised prefix.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.publicAdvertisedPrefixes.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "dnsVerificationIp": { + "description": "The IPv4 address to be used for reverse DNS verification.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#publicAdvertisedPrefix for public advertised prefixes.", + "type": "string", + "default": "compute#publicAdvertisedPrefix" + }, + "id": { + "type": "string", + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource type. The server generates this identifier." + }, + "sharedSecret": { + "description": "[Output Only] The shared secret to be used for reverse DNS verification.", + "type": "string" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + } + } + }, + "InstanceGroupsAddInstancesRequest": { + "type": "object", + "id": "InstanceGroupsAddInstancesRequest", + "properties": { + "instances": { + "items": { + "$ref": "InstanceReference" + }, + "type": "array", + "description": "The list of instances to add to the instance group." + } + } + }, + "TargetSslProxy": { + "type": "object", + "description": "Represents a Target SSL Proxy resource. A target SSL proxy is a component of a SSL Proxy load balancer. Global forwarding rules reference a target SSL proxy, and the target proxy then references an external backend service. For more information, read Using Target Proxies.", + "properties": { + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "id": { + "type": "string", + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "service": { + "description": "URL to the BackendService resource.", + "type": "string" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string" + }, + "sslPolicy": { + "description": "URL of SslPolicy resource that will be associated with the TargetSslProxy resource. If not set, the TargetSslProxy resource will not have any SSL policy configured.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#targetSslProxy for target SSL proxies.", + "default": "compute#targetSslProxy", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "sslCertificates": { + "items": { + "type": "string" + }, + "type": "array", + "description": "URLs to SslCertificate resources that are used to authenticate connections to Backends. At least one SSL certificate must be specified. Currently, you may specify up to 15 SSL certificates. sslCertificates do not apply when the load balancing scheme is set to INTERNAL_SELF_MANAGED." + } + }, + "id": "TargetSslProxy" + }, + "NetworkEndpointGroupsListNetworkEndpoints": { + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "kind": { + "default": "compute#networkEndpointGroupsListNetworkEndpoints", + "description": "[Output Only] The resource type, which is always compute#networkEndpointGroupsListNetworkEndpoints for the list of network endpoints in the specified network endpoint group.", + "type": "string" + }, + "items": { + "description": "A list of NetworkEndpointWithHealthStatus resources.", + "type": "array", + "items": { + "$ref": "NetworkEndpointWithHealthStatus" + } + }, + "warning": { + "type": "object", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + }, + "type": "array" + } + }, + "description": "[Output Only] Informational warning message." + } + }, + "id": "NetworkEndpointGroupsListNetworkEndpoints", + "type": "object" + }, + "InstanceGroupManagerActionsSummary": { + "type": "object", + "properties": { + "recreating": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.", + "format": "int32", + "type": "integer" + }, + "restarting": { + "format": "int32", + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.", + "type": "integer" + }, + "creating": { + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully. If you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.", + "type": "integer", + "format": "int32" + }, + "refreshing": { + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.", + "format": "int32" + }, + "creatingWithoutRetries": { + "format": "int32", + "type": "integer", + "description": "[Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly." + }, + "verifying": { + "format": "int32", + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation." + }, + "deleting": { + "type": "integer", + "format": "int32", + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted." + }, + "none": { + "type": "integer", + "format": "int32", + "description": "[Output Only] The number of instances in the managed instance group that are running and have no scheduled actions." + }, + "abandoning": { + "description": "[Output Only] The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.", + "type": "integer", + "format": "int32" + } + }, + "id": "InstanceGroupManagerActionsSummary" + }, + "RegionInstanceGroupManagerUpdateInstanceConfigReq": { + "id": "RegionInstanceGroupManagerUpdateInstanceConfigReq", + "description": "RegionInstanceGroupManagers.updatePerInstanceConfigs", + "properties": { + "perInstanceConfigs": { + "type": "array", + "items": { + "$ref": "PerInstanceConfig" + }, + "description": "The list of per-instance configs to insert or patch on this managed instance group." + } + }, + "type": "object" + }, + "InstanceGroupList": { + "type": "object", + "description": "A list of InstanceGroup resources.", + "id": "InstanceGroupList", + "properties": { + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "default": "compute#instanceGroupList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupList for instance group lists.", + "type": "string" + }, + "warning": { + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + } + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "items": { + "description": "A list of InstanceGroup resources.", + "type": "array", + "items": { + "$ref": "InstanceGroup" + } + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + } + }, + "HealthChecksAggregatedList": { + "id": "HealthChecksAggregatedList", + "type": "object", + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#healthChecksAggregatedList" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warning": { + "type": "object", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + } + }, + "description": "[Output Only] Informational warning message." + }, + "items": { + "description": "A list of HealthChecksScopedList resources.", + "type": "object", + "additionalProperties": { + "description": "Name of the scope containing this set of HealthChecks.", + "$ref": "HealthChecksScopedList" + } + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + } + }, + "Subnetwork": { + "properties": { + "enableFlowLogs": { + "type": "boolean", + "description": "Whether to enable flow logging for this subnetwork. If this field is not explicitly set, it will not appear in get listings. If not set the default behavior is to disable flow logging. This field isn't supported with the purpose field set to INTERNAL_HTTPS_LOAD_BALANCER." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#subnetwork for Subnetwork resources.", + "type": "string", + "default": "compute#subnetwork" + }, + "ipv6AccessType": { + "description": "The access type of IPv6 address this subnet holds. It's immutable and can only be specified during creation or the first time the subnet is updated into IPV4_IPV6 dual stack. If the ipv6_type is EXTERNAL then this subnet cannot enable direct path.", + "enum": [ + "EXTERNAL", + "UNSPECIFIED_IPV6_ACCESS_TYPE" + ], + "type": "string", + "enumDescriptions": [ + "VMs on this subnet will be assigned IPv6 addresses that are accesible via the Internet, as well as the VPC network.", + "IPv6 access type not set. Means this subnet hasn't been turned on IPv6 yet." + ] + }, + "fingerprint": { + "type": "string", + "format": "byte", + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a Subnetwork. An up-to-date fingerprint must be provided in order to update the Subnetwork, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a Subnetwork." + }, + "stackType": { + "description": "The stack type for this subnet to identify whether the IPv6 feature is enabled or not. If not specified IPV4_ONLY will be used. This field can be both set at resource creation time and updated using patch.", + "enumDescriptions": [ + "New VMs in this subnet can have both IPv4 and IPv6 addresses.", + "New VMs in this subnet will only be assigned IPv4 addresses.", + "" + ], + "type": "string", + "enum": [ + "IPV4_IPV6", + "IPV4_ONLY", + "UNSPECIFIED_STACK_TYPE" + ] + }, + "externalIpv6Prefix": { + "type": "string", + "description": "[Output Only] The range of external IPv6 addresses that are owned by this subnetwork." + }, + "ipCidrRange": { + "type": "string", + "description": "The range of internal addresses that are owned by this subnetwork. Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 100.64.0.0/10. Ranges must be unique and non-overlapping within a network. Only IPv4 is supported. This field is set at resource creation time. The range can be any range listed in the Valid ranges list. The range can be expanded after creation using expandIpCidrRange." + }, + "name": { + "description": "The name of the resource, provided by the client when initially creating the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "purpose": { + "enum": [ + "INTERNAL_HTTPS_LOAD_BALANCER", + "PRIVATE", + "PRIVATE_RFC_1918", + "PRIVATE_SERVICE_CONNECT" + ], + "description": "The purpose of the resource. This field can be either PRIVATE_RFC_1918 or INTERNAL_HTTPS_LOAD_BALANCER. A subnetwork with purpose set to INTERNAL_HTTPS_LOAD_BALANCER is a user-created subnetwork that is reserved for Internal HTTP(S) Load Balancing. If unspecified, the purpose defaults to PRIVATE_RFC_1918. The enableFlowLogs field isn't supported with the purpose field set to INTERNAL_HTTPS_LOAD_BALANCER.", + "type": "string", + "enumDescriptions": [ + "Subnet reserved for Internal HTTP(S) Load Balancing.", + "Regular user created or automatically created subnet.", + "Regular user created or automatically created subnet.", + "Subnetworks created for Private Service Connect in the producer network." + ] + }, + "logConfig": { + "description": "This field denotes the VPC flow logging options for this subnetwork. If logging is enabled, logs are exported to Cloud Logging.", + "$ref": "SubnetworkLogConfig" + }, + "secondaryIpRanges": { + "type": "array", + "items": { + "$ref": "SubnetworkSecondaryRange" + }, + "description": "An array of configurations for secondary IP ranges for VM instances contained in this subnetwork. The primary IP of such VM must belong to the primary ipCidrRange of the subnetwork. The alias IPs may belong to either primary or secondary ranges. This field can be updated with a patch request." + }, + "privateIpGoogleAccess": { + "description": "Whether the VMs in this subnet can access Google services without assigned external IP addresses. This field can be both set at resource creation time and updated using setPrivateIpGoogleAccess.", + "type": "boolean" + }, + "privateIpv6GoogleAccess": { + "type": "string", + "enumDescriptions": [ + "Disable private IPv6 access to/from Google services.", + "Bidirectional private IPv6 access to/from Google services.", + "Outbound private IPv6 access from VMs in this subnet to Google services." + ], + "enum": [ + "DISABLE_GOOGLE_ACCESS", + "ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE", + "ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE" + ], + "description": "The private IPv6 google access type for the VMs in this subnet. This is an expanded field of enablePrivateV6Access. If both fields are set, privateIpv6GoogleAccess will take priority. This field can be both set at resource creation time and updated using patch." + }, + "region": { + "description": "URL of the region where the Subnetwork resides. This field can be set only at resource creation time.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource. This field can be set only at resource creation time.", + "type": "string" + }, + "role": { + "description": "The role of subnetwork. Currently, this field is only used when purpose = INTERNAL_HTTPS_LOAD_BALANCER. The value can be set to ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for Internal HTTP(S) Load Balancing. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE or is currently draining. This field can be updated with a patch request.", + "enumDescriptions": [ + "The ACTIVE subnet that is currently used.", + "The BACKUP subnet that could be promoted to ACTIVE." + ], + "type": "string", + "enum": [ + "ACTIVE", + "BACKUP" + ] + }, + "state": { + "description": "[Output Only] The state of the subnetwork, which can be one of the following values: READY: Subnetwork is created and ready to use DRAINING: only applicable to subnetworks that have the purpose set to INTERNAL_HTTPS_LOAD_BALANCER and indicates that connections to the load balancer are being drained. A subnetwork that is draining cannot be used or modified until it reaches a status of READY", + "enum": [ + "DRAINING", + "READY" + ], + "type": "string", + "enumDescriptions": [ + "Subnetwork is being drained.", + "Subnetwork is ready for use." + ] + }, + "gatewayAddress": { + "description": "[Output Only] The gateway address for default routes to reach destination addresses outside this subnetwork.", + "type": "string" + }, + "id": { + "type": "string", + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "ipv6CidrRange": { + "description": "[Output Only] The range of internal IPv6 addresses that are owned by this subnetwork.", + "type": "string" + }, + "network": { + "description": "The URL of the network to which this subnetwork belongs, provided by the client when initially creating the subnetwork. This field can be set only at resource creation time.", + "type": "string" + } + }, + "description": "Represents a Subnetwork resource. A subnetwork (also known as a subnet) is a logical partition of a Virtual Private Cloud network with one primary IP range and zero or more secondary IP ranges. For more information, read Virtual Private Cloud (VPC) Network.", + "id": "Subnetwork", + "type": "object" + }, + "GuestAttributesEntry": { + "description": "A guest attributes namespace/key/value entry.", + "type": "object", + "id": "GuestAttributesEntry", + "properties": { + "value": { + "type": "string", + "description": "Value for the guest attribute entry." + }, + "namespace": { + "description": "Namespace for the guest attribute entry.", + "type": "string" + }, + "key": { + "description": "Key for the guest attribute entry.", + "type": "string" + } + } + }, + "NodeTypeList": { + "description": "Contains a list of node types.", + "properties": { + "warning": { + "type": "object", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + } + }, + "description": "[Output Only] Informational warning message." + }, + "items": { + "items": { + "$ref": "NodeType" + }, + "description": "A list of NodeType resources.", + "type": "array" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "kind": { + "default": "compute#nodeTypeList", + "type": "string", + "description": "[Output Only] Type of resource.Always compute#nodeTypeList for lists of node types." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + } + }, + "id": "NodeTypeList", + "type": "object" + }, + "RegionInstanceGroupManagersRecreateRequest": { + "properties": { + "instances": { + "type": "array", + "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + } + } + }, + "type": "object", + "id": "RegionInstanceGroupManagersRecreateRequest" + }, + "SslPolicyReference": { + "id": "SslPolicyReference", + "properties": { + "sslPolicy": { + "description": "URL of the SSL policy resource. Set this to empty string to clear any existing SSL policy associated with the target proxy resource.", + "type": "string" + } + }, + "type": "object" + }, + "Rule": { + "type": "object", + "id": "Rule", + "properties": { + "logConfigs": { + "items": { + "$ref": "LogConfig" + }, + "description": "This is deprecated and has no effect. Do not use.", + "type": "array" + }, + "conditions": { + "items": { + "$ref": "Condition" + }, + "type": "array", + "description": "This is deprecated and has no effect. Do not use." + }, + "permissions": { + "items": { + "type": "string" + }, + "description": "This is deprecated and has no effect. Do not use.", + "type": "array" + }, + "description": { + "type": "string", + "description": "This is deprecated and has no effect. Do not use." + }, + "notIns": { + "description": "This is deprecated and has no effect. Do not use.", + "items": { + "type": "string" + }, + "type": "array" + }, + "ins": { + "items": { + "type": "string" + }, + "description": "This is deprecated and has no effect. Do not use.", + "type": "array" + }, + "action": { + "enumDescriptions": [ + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use." + ], + "description": "This is deprecated and has no effect. Do not use.", + "enum": [ + "ALLOW", + "ALLOW_WITH_LOG", + "DENY", + "DENY_WITH_LOG", + "LOG", + "NO_ACTION" + ], + "type": "string" + } + }, + "description": "This is deprecated and has no effect. Do not use." + }, + "HttpsHealthCheckList": { + "description": "Contains a list of HttpsHealthCheck resources.", + "type": "object", + "properties": { + "warning": { + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#httpsHealthCheckList" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "description": "A list of HttpsHealthCheck resources.", + "items": { + "$ref": "HttpsHealthCheck" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "id": "HttpsHealthCheckList" + }, + "UrlMapValidationResult": { + "type": "object", + "properties": { + "testPassed": { + "type": "boolean", + "description": "If successfully loaded, this field indicates whether the test passed. If false, 'testFailures's indicate the reason of failure." + }, + "loadErrors": { + "type": "array", + "items": { + "type": "string" + } + }, + "loadSucceeded": { + "description": "Whether the given UrlMap can be successfully loaded. If false, 'loadErrors' indicates the reasons.", + "type": "boolean" + }, + "testFailures": { + "type": "array", + "items": { + "$ref": "TestFailure" + } + } + }, + "description": "Message representing the validation result for a UrlMap.", + "id": "UrlMapValidationResult" + }, + "AuthorizationLoggingOptions": { + "type": "object", + "id": "AuthorizationLoggingOptions", + "properties": { + "permissionType": { + "enumDescriptions": [ + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use." + ], + "description": "This is deprecated and has no effect. Do not use.", + "enum": [ + "ADMIN_READ", + "ADMIN_WRITE", + "DATA_READ", + "DATA_WRITE", + "PERMISSION_TYPE_UNSPECIFIED" + ], + "type": "string" + } + }, + "description": "This is deprecated and has no effect. Do not use." + }, + "PreconfiguredWafSet": { + "properties": { + "expressionSets": { + "description": "List of entities that are currently supported for WAF rules.", + "items": { + "$ref": "WafExpressionSet" + }, + "type": "array" + } + }, + "type": "object", + "id": "PreconfiguredWafSet" + }, + "RouterNat": { + "properties": { + "natIps": { + "type": "array", + "description": "A list of URLs of the IP resources used for this Nat service. These IP addresses must be valid static external IP addresses assigned to the project.", + "items": { + "type": "string" + } + }, + "subnetworks": { + "items": { + "$ref": "RouterNatSubnetworkToNat" + }, + "description": "A list of Subnetwork resources whose traffic should be translated by NAT Gateway. It is used only when LIST_OF_SUBNETWORKS is selected for the SubnetworkIpRangeToNatOption above.", + "type": "array" + }, + "enableEndpointIndependentMapping": { + "type": "boolean" + }, + "tcpEstablishedIdleTimeoutSec": { + "format": "int32", + "type": "integer", + "description": "Timeout (in seconds) for TCP established connections. Defaults to 1200s if not set." + }, + "udpIdleTimeoutSec": { + "type": "integer", + "format": "int32", + "description": "Timeout (in seconds) for UDP connections. Defaults to 30s if not set." + }, + "rules": { + "type": "array", + "description": "A list of rules associated with this NAT.", + "items": { + "$ref": "RouterNatRule" + } + }, + "logConfig": { + "description": "Configure logging on this NAT.", + "$ref": "RouterNatLogConfig" + }, + "icmpIdleTimeoutSec": { + "type": "integer", + "format": "int32", + "description": "Timeout (in seconds) for ICMP connections. Defaults to 30s if not set." + }, + "drainNatIps": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of URLs of the IP resources to be drained. These IPs must be valid static external IPs that have been assigned to the NAT. These IPs should be used for updating/patching a NAT only." + }, + "sourceSubnetworkIpRangesToNat": { + "enum": [ + "ALL_SUBNETWORKS_ALL_IP_RANGES", + "ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES", + "LIST_OF_SUBNETWORKS" + ], + "type": "string", + "enumDescriptions": [ + "All the IP ranges in every Subnetwork are allowed to Nat.", + "All the primary IP ranges in every Subnetwork are allowed to Nat.", + "A list of Subnetworks are allowed to Nat (specified in the field subnetwork below)" + ], + "description": "Specify the Nat option, which can take one of the following values: - ALL_SUBNETWORKS_ALL_IP_RANGES: All of the IP ranges in every Subnetwork are allowed to Nat. - ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES: All of the primary IP ranges in every Subnetwork are allowed to Nat. - LIST_OF_SUBNETWORKS: A list of Subnetworks are allowed to Nat (specified in the field subnetwork below) The default is SUBNETWORK_IP_RANGE_TO_NAT_OPTION_UNSPECIFIED. Note that if this field contains ALL_SUBNETWORKS_ALL_IP_RANGES or ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any other Router.Nat section in any Router for this network in this region." + }, + "name": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Unique name of this Nat service. The name must be 1-63 characters long and comply with RFC1035." + }, + "minPortsPerVm": { + "format": "int32", + "description": "Minimum number of ports allocated to a VM from this NAT config. If not set, a default number of ports is allocated to a VM. This is rounded up to the nearest power of 2. For example, if the value of this field is 50, at least 64 ports are allocated to a VM.", + "type": "integer" + }, + "natIpAllocateOption": { + "enumDescriptions": [ + "Nat IPs are allocated by GCP; customers can not specify any Nat IPs.", + "Only use Nat IPs provided by customers. When specified Nat IPs are not enough then the Nat service fails for new VMs." + ], + "enum": [ + "AUTO_ONLY", + "MANUAL_ONLY" + ], + "description": "Specify the NatIpAllocateOption, which can take one of the following values: - MANUAL_ONLY: Uses only Nat IP addresses provided by customers. When there are not enough specified Nat IPs, the Nat service fails for new VMs. - AUTO_ONLY: Nat IPs are allocated by Google Cloud Platform; customers can't specify any Nat IPs. When choosing AUTO_ONLY, then nat_ip should be empty. ", + "type": "string" + }, + "tcpTransitoryIdleTimeoutSec": { + "format": "int32", + "description": "Timeout (in seconds) for TCP transitory connections. Defaults to 30s if not set.", + "type": "integer" + }, + "tcpTimeWaitTimeoutSec": { + "description": "Timeout (in seconds) for TCP connections that are in TIME_WAIT state. Defaults to 120s if not set.", + "format": "int32", + "type": "integer" + } + }, + "description": "Represents a Nat resource. It enables the VMs within the specified subnetworks to access Internet without external IP addresses. It specifies a list of subnetworks (and the ranges within) that want to use NAT. Customers can also provide the external IPs that would be used for NAT. GCP would auto-allocate ephemeral IPs if no external IPs are provided.", + "id": "RouterNat", + "type": "object" + }, + "Screenshot": { + "type": "object", + "properties": { + "contents": { + "description": "[Output Only] The Base64-encoded screenshot data.", + "type": "string" + }, + "kind": { + "default": "compute#screenshot", + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#screenshot for the screenshots." + } + }, + "id": "Screenshot", + "description": "An instance's screenshot." + }, + "Policy": { + "properties": { + "etag": { + "format": "byte", + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy. **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost.", + "type": "string" + }, + "rules": { + "items": { + "$ref": "Rule" + }, + "type": "array", + "description": "This is deprecated and has no effect. Do not use." + }, + "auditConfigs": { + "type": "array", + "description": "Specifies cloud audit logging configuration for this policy.", + "items": { + "$ref": "AuditConfig" + } + }, + "bindings": { + "type": "array", + "items": { + "$ref": "Binding" + }, + "description": "Associates a list of `members` to a `role`. Optionally, may specify a `condition` that determines how and when the `bindings` are applied. Each of the `bindings` must contain at least one member." + }, + "iamOwned": { + "description": "This is deprecated and has no effect. Do not use.", + "type": "boolean" + }, + "version": { + "description": "Specifies the format of the policy. Valid values are `0`, `1`, and `3`. Requests that specify an invalid value are rejected. Any operation that affects conditional role bindings must specify version `3`. This requirement applies to the following operations: * Getting a policy that includes a conditional role binding * Adding a conditional role binding to a policy * Changing a conditional role binding in a policy * Removing any role binding, with or without a condition, from a policy that includes conditions **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "type": "integer", + "format": "int32" + } + }, + "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members` to a single `role`. Members can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\", } } ], \"etag\": \"BwWWja0YfJA=\", \"version\": 3 } **YAML example:** bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time \u003c timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/).", + "id": "Policy", + "type": "object" + }, + "NodeGroupsScopedList": { + "id": "NodeGroupsScopedList", + "properties": { + "nodeGroups": { + "type": "array", + "description": "[Output Only] A list of node groups contained in this scope.", + "items": { + "$ref": "NodeGroup" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] An informational warning that appears when the nodeGroup list is empty.", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + } + } + }, + "type": "object" + }, + "TargetPoolInstanceHealth": { + "type": "object", + "properties": { + "healthStatus": { + "items": { + "$ref": "HealthStatus" + }, + "type": "array" + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#targetPoolInstanceHealth when checking the health of an instance.", + "type": "string", + "default": "compute#targetPoolInstanceHealth" + } + }, + "id": "TargetPoolInstanceHealth" + }, + "NetworkEndpoint": { + "properties": { + "ipAddress": { + "description": "Optional IPv4 address of network endpoint. The IP address must belong to a VM in Compute Engine (either the primary IP or as part of an aliased IP range). If the IP address is not specified, then the primary IP address for the VM instance in the network that the network endpoint group belongs to will be used.", + "type": "string" + }, + "fqdn": { + "type": "string", + "description": "Optional fully qualified domain name of network endpoint. This can only be specified when NetworkEndpointGroup.network_endpoint_type is NON_GCP_FQDN_PORT." + }, + "port": { + "description": "Optional port number of network endpoint. If not specified, the defaultPort for the network endpoint group will be used.", + "type": "integer", + "format": "int32" + }, + "instance": { + "type": "string", + "description": "The name for a specific VM instance that the IP address belongs to. This is required for network endpoints of type GCE_VM_IP_PORT. The instance must be in the same zone of network endpoint group. The name must be 1-63 characters long, and comply with RFC1035." + }, + "annotations": { + "description": "Metadata defined as annotations on the network endpoint.", + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + }, + "description": "The network endpoint.", + "type": "object", + "id": "NetworkEndpoint" + }, + "AddressesScopedList": { + "type": "object", + "id": "AddressesScopedList", + "properties": { + "addresses": { + "items": { + "$ref": "Address" + }, + "type": "array", + "description": "[Output Only] A list of addresses contained in this scope." + }, + "warning": { + "properties": { + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "type": "array", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "type": "object" + } + } + }, + "BulkInsertInstanceResource": { + "type": "object", + "description": "A transient resource used in compute.instances.bulkInsert and compute.regionInstances.bulkInsert . This resource is not persisted anywhere, it is used only for processing the requests.", + "id": "BulkInsertInstanceResource", + "properties": { + "instanceProperties": { + "$ref": "InstanceProperties", + "description": "The instance properties defining the VM instances to be created. Required if sourceInstanceTemplate is not provided." + }, + "locationPolicy": { + "$ref": "LocationPolicy", + "description": "Policy for chosing target zone." + }, + "minCount": { + "type": "string", + "description": "The minimum number of instances to create. If no min_count is specified then count is used as the default value. If min_count instances cannot be created, then no instances will be created and instances already created will be deleted.", + "format": "int64" + }, + "sourceInstanceTemplate": { + "description": "Specifies the instance template from which to create instances. You may combine sourceInstanceTemplate with instanceProperties to override specific values from an existing instance template. Bulk API follows the semantics of JSON Merge Patch described by RFC 7396. It can be a full or partial URL. For example, the following are all valid URLs to an instance template: - https://www.googleapis.com/compute/v1/projects/project /global/instanceTemplates/instanceTemplate - projects/project/global/instanceTemplates/instanceTemplate - global/instanceTemplates/instanceTemplate This field is optional.", + "type": "string" + }, + "perInstanceProperties": { + "description": "Per-instance properties to be set on individual instances. Keys of this map specify requested instance names. Can be empty if name_pattern is used.", + "type": "object", + "additionalProperties": { + "$ref": "BulkInsertInstanceResourcePerInstanceProperties" + } + }, + "count": { + "type": "string", + "format": "int64", + "description": "The maximum number of instances to create." + }, + "namePattern": { + "type": "string", + "description": "The string pattern used for the names of the VMs. Either name_pattern or per_instance_properties must be set. The pattern must contain one continuous sequence of placeholder hash characters (#) with each character corresponding to one digit of the generated instance name. Example: a name_pattern of inst-#### generates instance names such as inst-0001 and inst-0002. If existing instances in the same project and zone have names that match the name pattern then the generated instance numbers start after the biggest existing number. For example, if there exists an instance with name inst-0050, then instance names generated using the pattern inst-#### begin with inst-0051. The name pattern placeholder #...# can contain up to 18 characters." + } + } + }, + "StatefulPolicy": { + "type": "object", + "id": "StatefulPolicy", + "properties": { + "preservedState": { + "$ref": "StatefulPolicyPreservedState" + } + } + }, + "SecurityPolicyRule": { + "type": "object", + "properties": { + "preview": { + "description": "If set to true, the specified action is not enforced.", + "type": "boolean" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "action": { + "type": "string", + "description": "The Action to perform when the client connection triggers the rule. Can currently be either \"allow\" or \"deny()\" where valid values for status are 403, 404, and 502." + }, + "priority": { + "format": "int32", + "type": "integer", + "description": "An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest priority." + }, + "kind": { + "description": "[Output only] Type of the resource. Always compute#securityPolicyRule for security policy rules", + "type": "string", + "default": "compute#securityPolicyRule" + }, + "match": { + "description": "A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.", + "$ref": "SecurityPolicyRuleMatcher" + } + }, + "id": "SecurityPolicyRule", + "description": "Represents a rule that describes one or more match conditions along with the action to be taken when traffic matches this condition (allow or deny)." + }, + "ReservationAggregatedList": { + "type": "object", + "properties": { + "items": { + "description": "A list of Allocation resources.", + "additionalProperties": { + "description": "Name of the scope containing this set of reservations.", + "$ref": "ReservationsScopedList" + }, + "type": "object" + }, + "kind": { + "description": "Type of resource.", + "default": "compute#reservationAggregatedList", + "type": "string" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "warning": { + "type": "object", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + } + }, + "description": "[Output Only] Informational warning message." + } + }, + "description": "Contains a list of reservations.", + "id": "ReservationAggregatedList" + }, + "RouterStatus": { + "properties": { + "network": { + "type": "string", + "description": "URI of the network to which this router belongs." + }, + "bestRoutes": { + "items": { + "$ref": "Route" + }, + "type": "array", + "description": "Best routes for this router's network." + }, + "bestRoutesForRouter": { + "description": "Best routes learned by this router.", + "type": "array", + "items": { + "$ref": "Route" + } + }, + "bgpPeerStatus": { + "items": { + "$ref": "RouterStatusBgpPeerStatus" + }, + "type": "array" + }, + "natStatus": { + "items": { + "$ref": "RouterStatusNatStatus" + }, + "type": "array" + } + }, + "id": "RouterStatus", + "type": "object" + }, + "ForwardingRuleReference": { + "type": "object", + "properties": { + "forwardingRule": { + "type": "string" + } + }, + "id": "ForwardingRuleReference" + }, + "RegionInstanceGroupsSetNamedPortsRequest": { + "id": "RegionInstanceGroupsSetNamedPortsRequest", + "properties": { + "fingerprint": { + "type": "string", + "format": "byte", + "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request." + }, + "namedPorts": { + "items": { + "$ref": "NamedPort" + }, + "description": "The list of named ports to set for this instance group.", + "type": "array" + } + }, + "type": "object" + }, + "ZoneSetPolicyRequest": { + "type": "object", + "properties": { + "bindings": { + "items": { + "$ref": "Binding" + }, + "type": "array", + "description": "Flatten Policy to create a backwacd compatible wire-format. Deprecated. Use 'policy' to specify bindings." + }, + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the 'resource'. The size of the policy is limited to a few 10s of KB. An empty policy is in general a valid policy but certain services (like Projects) might reject them." + }, + "etag": { + "description": "Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify the etag.", + "format": "byte", + "type": "string" + } + }, + "id": "ZoneSetPolicyRequest" + }, + "CommitmentsScopedList": { + "id": "CommitmentsScopedList", + "properties": { + "warning": { + "properties": { + "data": { + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + } + }, + "description": "[Output Only] Informational warning which replaces the list of commitments when the list is empty.", + "type": "object" + }, + "commitments": { + "items": { + "$ref": "Commitment" + }, + "type": "array", + "description": "[Output Only] A list of commitments contained in this scope." + } + }, + "type": "object" + }, + "BackendServiceFailoverPolicy": { + "description": "For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). On failover or failback, this field indicates whether connection draining will be honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A setting of true terminates existing TCP connections to the active pool during failover and failback, immediately draining traffic. A setting of false allows existing TCP connections to persist, even on VMs no longer in the active pool, for up to the duration of the connection draining timeout (10 minutes).", + "properties": { + "disableConnectionDrainOnFailover": { + "description": "This can be set to true only if the protocol is TCP. The default is false.", + "type": "boolean" + }, + "failoverRatio": { + "type": "number", + "description": "The value of the field must be in the range [0, 1]. If the value is 0, the load balancer performs a failover when the number of healthy primary VMs equals zero. For all other values, the load balancer performs a failover when the total number of healthy primary VMs is less than this ratio. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview).", + "format": "float" + }, + "dropTrafficIfUnhealthy": { + "description": "If set to true, connections to the load balancer are dropped when all primary and all backup backend VMs are unhealthy.If set to false, connections are distributed among all primary VMs when all primary and all backup backend VMs are unhealthy. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview). The default is false.", + "type": "boolean" + } + }, + "type": "object", + "id": "BackendServiceFailoverPolicy" + }, + "AuditLogConfig": { + "type": "object", + "id": "AuditLogConfig", + "properties": { + "logType": { + "type": "string", + "description": "The log type that this config enables.", + "enum": [ + "ADMIN_READ", + "DATA_READ", + "DATA_WRITE", + "LOG_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Admin reads. Example: CloudIAM getIamPolicy", + "Data reads. Example: CloudSQL Users list", + "Data writes. Example: CloudSQL Users create", + "Default case. Should never be this." + ] + }, + "ignoreChildExemptions": { + "type": "boolean", + "description": "This is deprecated and has no effect. Do not use." + }, + "exemptedMembers": { + "items": { + "type": "string" + }, + "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of Binding.members.", + "type": "array" + } + }, + "description": "Provides the configuration for logging a type of permissions. Example: { \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging." + }, + "CustomerEncryptionKey": { + "type": "object", + "properties": { + "rsaEncryptedKey": { + "type": "string", + "description": "Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource. You can provide either the rawKey or the rsaEncryptedKey. For example: \"rsaEncryptedKey\": \"ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe==\" The key must meet the following requirements before you can provide it to Compute Engine: 1. The key is wrapped using a RSA public key certificate provided by Google. 2. After being wrapped, the key must be encoded in RFC 4648 base64 encoding. Gets the RSA public key certificate provided by Google at: https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem " + }, + "sha256": { + "type": "string", + "description": "[Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource." + }, + "kmsKeyName": { + "type": "string", + "description": "The name of the encryption key that is stored in Google Cloud KMS. For example: \"kmsKeyName\": \"projects/kms_project_id/locations/region/keyRings/ key_region/cryptoKeys/key " + }, + "rawKey": { + "type": "string", + "description": "Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource. You can provide either the rawKey or the rsaEncryptedKey. For example: \"rawKey\": \"SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0=\" " + }, + "kmsKeyServiceAccount": { + "description": "The service account being used for the encryption request for the given KMS key. If absent, the Compute Engine default service account is used. For example: \"kmsKeyServiceAccount\": \"name@project_id.iam.gserviceaccount.com/ ", + "type": "string" + } + }, + "id": "CustomerEncryptionKey" + }, + "MetadataFilterLabelMatch": { + "properties": { + "value": { + "type": "string", + "description": "The value of the label must match the specified value. value can have a maximum length of 1024 characters." + }, + "name": { + "description": "Name of metadata label. The name can have a maximum length of 1024 characters and must be at least 1 character long.", + "type": "string" + } + }, + "description": "MetadataFilter label name value pairs that are expected to match corresponding labels presented as metadata to the loadbalancer.", + "id": "MetadataFilterLabelMatch", + "type": "object" + }, + "ImageList": { + "description": "Contains a list of images.", + "properties": { + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "items": { + "description": "A list of Image resources.", + "items": { + "$ref": "Image" + }, + "type": "array" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "kind": { + "description": "Type of resource.", + "default": "compute#imageList", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "type": "object", + "id": "ImageList" + }, + "Route": { + "type": "object", + "description": "Represents a Route resource. A route defines a path from VM instances in the VPC network to a specific destination. This destination can be inside or outside the VPC network. For more information, read the Routes overview.", + "id": "Route", + "properties": { + "nextHopVpnTunnel": { + "description": "The URL to a VpnTunnel that should handle matching packets.", + "type": "string" + }, + "nextHopIlb": { + "type": "string", + "description": "The URL to a forwarding rule of type loadBalancingScheme=INTERNAL that should handle matching packets or the IP address of the forwarding Rule. For example, the following are all valid URLs: - 10.128.0.56 - https://www.googleapis.com/compute/v1/projects/project/regions/region /forwardingRules/forwardingRule - regions/region/forwardingRules/forwardingRule " + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "network": { + "description": "Fully-qualified URL of the network that this route applies to.", + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "type": "string" + }, + "priority": { + "format": "uint32", + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "The priority of this route. Priority is used to break ties in cases where there is more than one matching route of equal prefix length. In cases where multiple routes have equal prefix length, the one with the lowest-numbered priority value wins. The default value is `1000`. The priority value must be from `0` to `65535`, inclusive.", + "type": "integer" + }, + "nextHopGateway": { + "type": "string", + "description": "The URL to a gateway that should handle matching packets. You can only specify the internet gateway using a full or partial valid URL: projects/ project/global/gateways/default-internet-gateway" + }, + "routeType": { + "description": "[Output Only] The type of this route, which can be one of the following values: - 'TRANSIT' for a transit route that this router learned from another Cloud Router and will readvertise to one of its BGP peers - 'SUBNET' for a route from a subnet of the VPC - 'BGP' for a route learned from a BGP peer of this router - 'STATIC' for a static route", + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string", + "enum": [ + "BGP", + "STATIC", + "SUBNET", + "TRANSIT" + ] + }, + "nextHopInstance": { + "description": "The URL to an instance that should handle matching packets. You can specify this as a full or partial URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/", + "type": "string" + }, + "nextHopPeering": { + "type": "string", + "description": "[Output Only] The network peering name that should handle matching packets, which should conform to RFC1035." + }, + "name": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all following characters (except for the last character) must be a dash, lowercase letter, or digit. The last character must be a lowercase letter or digit.", + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "type": "string" + }, + "nextHopIp": { + "description": "The network IP address of an instance that should handle matching packets. Only IPv4 is supported.", + "type": "string" + }, + "tags": { + "description": "A list of instance tags to which this route applies.", + "items": { + "type": "string" + }, + "type": "array", + "annotations": { + "required": [ + "compute.routes.insert" + ] + } + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "warnings": { + "description": "[Output Only] If potential misconfigurations are detected for this route, this field will be populated with warning messages.", + "items": { + "type": "object", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + } + } + } + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "destRange": { + "type": "string", + "annotations": { + "required": [ + "compute.routes.insert" + ] + }, + "description": "The destination range of outgoing packets that this route applies to. Both IPv4 and IPv6 are supported." + }, + "nextHopNetwork": { + "description": "The URL of the local network if it should handle matching packets.", + "type": "string" + }, + "asPaths": { + "description": "[Output Only] AS path.", + "items": { + "$ref": "RouteAsPath" + }, + "type": "array" + }, + "kind": { + "default": "compute#route", + "description": "[Output Only] Type of this resource. Always compute#routes for Route resources.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this field when you create the resource.", + "type": "string" + } + } + }, + "GuestAttributesValue": { + "description": "Array of guest attribute namespace/key/value tuples.", + "id": "GuestAttributesValue", + "type": "object", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "GuestAttributesEntry" + } + } + } + }, + "InstanceGroupManagersPatchPerInstanceConfigsReq": { + "properties": { + "perInstanceConfigs": { + "items": { + "$ref": "PerInstanceConfig" + }, + "description": "The list of per-instance configs to insert or patch on this managed instance group.", + "type": "array" + } + }, + "type": "object", + "id": "InstanceGroupManagersPatchPerInstanceConfigsReq", + "description": "InstanceGroupManagers.patchPerInstanceConfigs" + }, + "SslCertificateList": { + "description": "Contains a list of SslCertificate resources.", + "type": "object", + "properties": { + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "kind": { + "default": "compute#sslCertificateList", + "description": "Type of resource.", + "type": "string" + }, + "items": { + "type": "array", + "items": { + "$ref": "SslCertificate" + }, + "description": "A list of SslCertificate resources." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + } + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + } + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + }, + "id": "SslCertificateList" + }, + "AccessConfig": { + "properties": { + "externalIpv6": { + "type": "string", + "description": "[Output Only] The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork associated with the instance will be allocated dynamically." + }, + "externalIpv6PrefixLength": { + "format": "int32", + "description": "[Output Only] The prefix length of the external IPv6 range.", + "type": "integer" + }, + "name": { + "type": "string", + "description": "The name of this access configuration. The default and recommended name is External NAT, but you can use any arbitrary string, such as My external IP or Network Access." + }, + "networkTier": { + "type": "string", + "enumDescriptions": [ + "High quality, Google-grade network tier, support for all networking products.", + "Public internet quality, only limited support for other networking products." + ], + "enum": [ + "PREMIUM", + "STANDARD" + ], + "description": "This signifies the networking tier used for configuring this access configuration and can only take the following values: PREMIUM, STANDARD. If an AccessConfig is specified without a valid external IP address, an ephemeral IP will be created with this networkTier. If an AccessConfig with a valid external IP address is specified, it must match that of the networkTier associated with the Address resource owning that IP." + }, + "setPublicPtr": { + "type": "boolean", + "description": "Specifies whether a public DNS 'PTR' record should be created to map the external IP address of the instance to a DNS domain name." + }, + "type": { + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "enum": [ + "DIRECT_IPV6", + "ONE_TO_ONE_NAT" + ], + "description": "The type of configuration. The default and only option is ONE_TO_ONE_NAT.", + "default": "ONE_TO_ONE_NAT" + }, + "natIP": { + "type": "string", + "description": "An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance." + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#accessConfig for access configs.", + "default": "compute#accessConfig", + "type": "string" + }, + "publicPtrDomainName": { + "description": "The DNS domain name for the public PTR record. You can set this field only if the `setPublicPtr` field is enabled.", + "type": "string" + } + }, + "type": "object", + "id": "AccessConfig", + "description": "An access configuration attached to an instance's network interface. Only one access config per instance is supported." + }, + "ForwardingRuleServiceDirectoryRegistration": { + "description": "Describes the auto-registration of the Forwarding Rule to Service Directory. The region and project of the Service Directory resource generated from this registration will be the same as this Forwarding Rule.", + "id": "ForwardingRuleServiceDirectoryRegistration", + "properties": { + "serviceDirectoryRegion": { + "type": "string", + "description": "[Optional] Service Directory region to register this global forwarding rule under. Default to \"us-central1\". Only used for PSC for Google APIs. All PSC for Google APIs Forwarding Rules on the same network should use the same Service Directory region." + }, + "namespace": { + "type": "string", + "description": "Service Directory namespace to register the forwarding rule under." + }, + "service": { + "description": "Service Directory service to register the forwarding rule under.", + "type": "string" + } + }, + "type": "object" + }, + "Network": { + "description": "Represents a VPC Network resource. Networks connect resources to each other and to the internet. For more information, read Virtual Private Cloud (VPC) Network.", + "properties": { + "routingConfig": { + "$ref": "NetworkRoutingConfig", + "description": "The network-level routing configuration for this network. Used by Cloud Router to determine what type of network-wide routing behavior to enforce." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#network for networks.", + "type": "string", + "default": "compute#network" + }, + "IPv4Range": { + "description": "Deprecated in favor of subnet mode networks. The range of internal addresses that are legal on this network. This range is a CIDR specification, for example: 192.168.0.0/16. Provided by the client when the network is created.", + "type": "string", + "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}/[0-9]{1,2}" + }, + "description": { + "description": "An optional description of this resource. Provide this field when you create the resource.", + "type": "string" + }, + "autoCreateSubnetworks": { + "type": "boolean", + "description": "Must be set to create a VPC network. If not set, a legacy network is created. When set to true, the VPC network is created in auto mode. When set to false, the VPC network is created in custom mode. An auto mode VPC network starts with one subnet per region. Each subnet has a predetermined range as described in Auto mode VPC network IP ranges. For custom mode VPC networks, you can add subnets using the subnetworks insert method." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "gatewayIPv4": { + "description": "[Output Only] The gateway address for default routing out of the network, selected by GCP.", + "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}", + "type": "string" + }, + "mtu": { + "format": "int32", + "description": "Maximum Transmission Unit in bytes. The minimum value for this field is 1460 and the maximum value is 1500 bytes. If unspecified, defaults to 1460.", + "type": "integer" + }, + "peerings": { + "type": "array", + "description": "[Output Only] A list of network peerings for the resource.", + "items": { + "$ref": "NetworkPeering" + } + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all following characters (except for the last character) must be a dash, lowercase letter, or digit. The last character must be a lowercase letter or digit.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.networks.insert" + ] + }, + "type": "string" + }, + "subnetworks": { + "description": "[Output Only] Server-defined fully-qualified URLs for all subnetworks in this VPC network.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + } + }, + "id": "Network", + "type": "object" + }, + "VpnGatewayAggregatedList": { + "id": "VpnGatewayAggregatedList", + "type": "object", + "properties": { + "kind": { + "description": "[Output Only] Type of resource. Always compute#vpnGateway for VPN gateways.", + "default": "compute#vpnGatewayAggregatedList", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "VpnGatewaysScopedList", + "description": "[Output Only] Name of the scope containing this set of VPN gateways." + }, + "description": "A list of VpnGateway resources.", + "type": "object" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "type": "array", + "items": { + "type": "string" + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "warning": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + } + } + }, + "description": "[Output Only] Informational warning message." + } + } + }, + "RegionInstanceGroupManagersSetTemplateRequest": { + "type": "object", + "id": "RegionInstanceGroupManagersSetTemplateRequest", + "properties": { + "instanceTemplate": { + "type": "string", + "description": "URL of the InstanceTemplate resource from which all new instances will be created." + } + } + }, + "RegionInstanceGroupsListInstances": { + "id": "RegionInstanceGroupsListInstances", + "type": "object", + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "items": { + "items": { + "$ref": "InstanceWithNamedPorts" + }, + "description": "A list of InstanceWithNamedPorts resources.", + "type": "array" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "kind": { + "description": "The resource type.", + "type": "string", + "default": "compute#regionInstanceGroupsListInstances" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "type": "object" + } + } + }, + "RegionInstanceGroupManagersListErrorsResponse": { + "properties": { + "items": { + "items": { + "$ref": "InstanceManagedByIgmError" + }, + "description": "[Output Only] The list of errors of the managed instance group.", + "type": "array" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + }, + "id": "RegionInstanceGroupManagersListErrorsResponse", + "type": "object" + }, + "FirewallPolicyRule": { + "properties": { + "description": { + "type": "string", + "description": "An optional description for this resource." + }, + "direction": { + "description": "The direction in which this rule applies.", + "enumDescriptions": [ + "", + "" + ], + "enum": [ + "EGRESS", + "INGRESS" + ], + "type": "string" + }, + "enableLogging": { + "description": "Denotes whether to enable logging for a particular rule. If logging is enabled, logs will be exported to the configured export destination in Stackdriver. Logs may be exported to BigQuery or Pub/Sub. Note: you cannot enable logging on \"goto_next\" rules.", + "type": "boolean" + }, + "priority": { + "type": "integer", + "description": "An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest prority.", + "format": "int32" + }, + "targetResources": { + "description": "A list of network resource URLs to which this rule applies. This field allows you to control which network's VMs get this rule. If this field is left blank, all VMs within the organization will receive the rule.", + "items": { + "type": "string" + }, + "type": "array" + }, + "kind": { + "type": "string", + "description": "[Output only] Type of the resource. Always compute#firewallPolicyRule for firewall policy rules", + "default": "compute#firewallPolicyRule" + }, + "action": { + "description": "The Action to perform when the client connection triggers the rule. Can currently be either \"allow\" or \"deny()\" where valid values for status are 403, 404, and 502.", + "type": "string" + }, + "match": { + "description": "A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.", + "$ref": "FirewallPolicyRuleMatcher" + }, + "ruleTupleCount": { + "format": "int32", + "type": "integer", + "description": "[Output Only] Calculation of the complexity of a single firewall policy rule." + }, + "targetServiceAccounts": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of service accounts indicating the sets of instances that are applied with this rule." + }, + "disabled": { + "description": "Denotes whether the firewall policy rule is disabled. When set to true, the firewall policy rule is not enforced and traffic behaves as if it did not exist. If this is unspecified, the firewall policy rule will be enabled.", + "type": "boolean" + } + }, + "id": "FirewallPolicyRule", + "description": "Represents a rule that describes one or more match conditions along with the action to be taken when traffic matches this condition (allow or deny).", + "type": "object" + }, + "HttpFaultAbort": { + "description": "Specification for how requests are aborted as part of fault injection.", + "type": "object", + "id": "HttpFaultAbort", + "properties": { + "httpStatus": { + "format": "uint32", + "description": "The HTTP status code used to abort the request. The value must be between 200 and 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP status code according to this mapping table. HTTP status 200 is mapped to gRPC status UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.", + "type": "integer" + }, + "percentage": { + "description": "The percentage of traffic (connections/operations/requests) which will be aborted as part of fault injection. The value must be between 0.0 and 100.0 inclusive.", + "type": "number", + "format": "double" + } + } + }, + "LocationPolicyLocation": { + "id": "LocationPolicyLocation", + "properties": { + "preference": { + "enumDescriptions": [ + "Location is allowed for use.", + "Location is prohibited.", + "Default value, unused." + ], + "description": "Preference for a given location: ALLOW or DENY.", + "type": "string", + "enum": [ + "ALLOW", + "DENY", + "PREFERENCE_UNSPECIFIED" + ] + } + }, + "type": "object" + }, + "UsableSubnetworkSecondaryRange": { + "properties": { + "ipCidrRange": { + "description": "The range of IP addresses belonging to this subnetwork secondary range.", + "type": "string" + }, + "rangeName": { + "description": "The name associated with this subnetwork secondary range, used when adding an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork.", + "type": "string" + } + }, + "id": "UsableSubnetworkSecondaryRange", + "description": "Secondary IP range of a usable subnetwork.", + "type": "object" + }, + "InstanceTemplateList": { + "id": "InstanceTemplateList", + "description": "A list of instance templates.", + "properties": { + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "warning": { + "type": "object", + "properties": { + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + } + }, + "description": "[Output Only] Informational warning message." + }, + "kind": { + "description": "[Output Only] The resource type, which is always compute#instanceTemplatesListResponse for instance template lists.", + "type": "string", + "default": "compute#instanceTemplateList" + }, + "items": { + "items": { + "$ref": "InstanceTemplate" + }, + "description": "A list of InstanceTemplate resources.", + "type": "array" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + } + }, + "type": "object" + }, + "VpnTunnelAggregatedList": { + "id": "VpnTunnelAggregatedList", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "description": "A list of VpnTunnelsScopedList resources.", + "type": "object", + "additionalProperties": { + "description": "Name of the scope containing this set of VPN tunnels.", + "$ref": "VpnTunnelsScopedList" + } + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "warning": { + "type": "object", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + } + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + } + }, + "description": "[Output Only] Informational warning message." + }, + "kind": { + "type": "string", + "default": "compute#vpnTunnelAggregatedList", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + }, + "type": "object" + }, + "RegionInstanceGroupManagerPatchInstanceConfigReq": { + "id": "RegionInstanceGroupManagerPatchInstanceConfigReq", + "type": "object", + "description": "RegionInstanceGroupManagers.patchPerInstanceConfigs", + "properties": { + "perInstanceConfigs": { + "type": "array", + "description": "The list of per-instance configs to insert or patch on this managed instance group.", + "items": { + "$ref": "PerInstanceConfig" + } + } + } + }, + "NodeTemplateAggregatedList": { + "id": "NodeTemplateAggregatedList", + "type": "object", + "properties": { + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "description": "A list of NodeTemplatesScopedList resources.", + "type": "object", + "additionalProperties": { + "$ref": "NodeTemplatesScopedList", + "description": "[Output Only] Name of the scope containing this set of node templates." + } + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "type": "array", + "items": { + "type": "string" + } + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource.Always compute#nodeTemplateAggregatedList for aggregated lists of node templates.", + "default": "compute#nodeTemplateAggregatedList" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + } + } + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + } + } + }, + "UrlRewrite": { + "description": "The spec for modifying the path before sending the request to the matched backend service.", + "type": "object", + "properties": { + "hostRewrite": { + "description": "Prior to forwarding the request to the selected service, the request's host header is replaced with contents of hostRewrite. The value must be between 1 and 255 characters.", + "type": "string" + }, + "pathPrefixRewrite": { + "description": "Prior to forwarding the request to the selected backend service, the matching portion of the request's path is replaced by pathPrefixRewrite. The value must be between 1 and 1024 characters.", + "type": "string" + } + }, + "id": "UrlRewrite" + }, + "SubnetworkLogConfig": { + "type": "object", + "id": "SubnetworkLogConfig", + "description": "The available logging options for this subnetwork.", + "properties": { + "enable": { + "type": "boolean", + "description": "Whether to enable flow logging for this subnetwork. If this field is not explicitly set, it will not appear in get listings. If not set the default behavior is to disable flow logging." + }, + "filterExpr": { + "description": "Can only be specified if VPC flow logs for this subnetwork is enabled. Export filter used to define which VPC flow logs should be logged.", + "type": "string" + }, + "metadataFields": { + "description": "Can only be specified if VPC flow logs for this subnetwork is enabled and \"metadata\" was set to CUSTOM_METADATA.", + "type": "array", + "items": { + "type": "string" + } + }, + "aggregationInterval": { + "type": "string", + "enum": [ + "INTERVAL_10_MIN", + "INTERVAL_15_MIN", + "INTERVAL_1_MIN", + "INTERVAL_30_SEC", + "INTERVAL_5_MIN", + "INTERVAL_5_SEC" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "description": "Can only be specified if VPC flow logging for this subnetwork is enabled. Toggles the aggregation interval for collecting flow logs. Increasing the interval time will reduce the amount of generated flow logs for long lasting connections. Default is an interval of 5 seconds per connection." + }, + "metadata": { + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string", + "enum": [ + "CUSTOM_METADATA", + "EXCLUDE_ALL_METADATA", + "INCLUDE_ALL_METADATA" + ], + "description": "Can only be specified if VPC flow logs for this subnetwork is enabled. Configures whether all, none or a subset of metadata fields should be added to the reported VPC flow logs. Default is EXCLUDE_ALL_METADATA." + }, + "flowSampling": { + "format": "float", + "type": "number", + "description": "Can only be specified if VPC flow logging for this subnetwork is enabled. The value of the field must be in [0, 1]. Set the sampling rate of VPC flow logs within the subnetwork where 1.0 means all collected logs are reported and 0.0 means no logs are reported. Default is 0.5, which means half of all collected logs are reported." + } + } + }, + "LocationPolicy": { + "properties": { + "locations": { + "description": "Location configurations mapped by location name. Currently only zone names are supported and must be represented as valid internal URLs, such as zones/us-central1-a.", + "type": "object", + "additionalProperties": { + "$ref": "LocationPolicyLocation" + } + } + }, + "type": "object", + "description": "Configuration for location policy among multiple possible locations (e.g. preferences for zone selection among zones in a single region).", + "id": "LocationPolicy" + }, + "FirewallPolicyRuleMatcherLayer4Config": { + "id": "FirewallPolicyRuleMatcherLayer4Config", + "type": "object", + "properties": { + "ports": { + "type": "array", + "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", + "items": { + "type": "string" + } + }, + "ipProtocol": { + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp), or the IP protocol number.", + "type": "string" + } + } + }, + "AddressAggregatedList": { + "id": "AddressAggregatedList", + "properties": { + "unreachables": { + "type": "array", + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#addressAggregatedList for aggregated lists of addresses.", + "default": "compute#addressAggregatedList" + }, + "warning": { + "properties": { + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "items": { + "type": "object", + "additionalProperties": { + "$ref": "AddressesScopedList", + "description": "[Output Only] Name of the scope containing this set of addresses." + }, + "description": "A list of AddressesScopedList resources." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + }, + "type": "object" + }, + "VpnTunnel": { + "id": "VpnTunnel", + "properties": { + "vpnGatewayInterface": { + "description": "The interface ID of the VPN gateway with which this VPN tunnel is associated.", + "format": "int32", + "type": "integer" + }, + "vpnGateway": { + "type": "string", + "description": "URL of the VPN gateway with which this VPN tunnel is associated. Provided by the client when the VPN tunnel is created. This must be used (instead of target_vpn_gateway) if a High Availability VPN gateway resource is created." + }, + "peerIp": { + "type": "string", + "description": "IP address of the peer VPN gateway. Only IPv4 is supported." + }, + "region": { + "description": "[Output Only] URL of the region where the VPN tunnel resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "sharedSecretHash": { + "type": "string", + "description": "Hash of the shared secret." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "default": "compute#vpnTunnel" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "ikeVersion": { + "type": "integer", + "description": "IKE protocol version to use when establishing the VPN tunnel with the peer VPN gateway. Acceptable IKE versions are 1 or 2. The default version is 2.", + "format": "int32" + }, + "router": { + "type": "string", + "description": "URL of the router resource to be used for dynamic routing." + }, + "name": { + "type": "string", + "annotations": { + "required": [ + "compute.vpnTunnels.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "detailedStatus": { + "type": "string", + "description": "[Output Only] Detailed status message for the VPN tunnel." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "peerGcpGateway": { + "type": "string", + "description": "URL of the peer side HA GCP VPN gateway to which this VPN tunnel is connected. Provided by the client when the VPN tunnel is created. This field can be used when creating highly available VPN from VPC network to VPC network, the field is exclusive with the field peerExternalGateway. If provided, the VPN tunnel will automatically use the same vpnGatewayInterface ID in the peer GCP VPN gateway." + }, + "targetVpnGateway": { + "type": "string", + "description": "URL of the Target VPN gateway with which this VPN tunnel is associated. Provided by the client when the VPN tunnel is created." + }, + "sharedSecret": { + "description": "Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway.", + "type": "string" + }, + "remoteTrafficSelector": { + "type": "array", + "description": "Remote traffic selectors to use when establishing the VPN tunnel with the peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint. Only IPv4 is supported.", + "items": { + "type": "string" + } + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string", + "format": "uint64" + }, + "peerExternalGatewayInterface": { + "description": "The interface ID of the external VPN gateway to which this VPN tunnel is connected. Provided by the client when the VPN tunnel is created.", + "format": "int32", + "type": "integer" + }, + "peerExternalGateway": { + "description": "URL of the peer side external VPN gateway to which this VPN tunnel is connected. Provided by the client when the VPN tunnel is created. This field is exclusive with the field peerGcpGateway.", + "type": "string" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "status": { + "description": "[Output Only] The status of the VPN tunnel, which can be one of the following: - PROVISIONING: Resource is being allocated for the VPN tunnel. - WAITING_FOR_FULL_CONFIG: Waiting to receive all VPN-related configs from the user. Network, TargetVpnGateway, VpnTunnel, ForwardingRule, and Route resources are needed to setup the VPN tunnel. - FIRST_HANDSHAKE: Successful first handshake with the peer VPN. - ESTABLISHED: Secure session is successfully established with the peer VPN. - NETWORK_ERROR: Deprecated, replaced by NO_INCOMING_PACKETS - AUTHORIZATION_ERROR: Auth error (for example, bad shared secret). - NEGOTIATION_FAILURE: Handshake failed. - DEPROVISIONING: Resources are being deallocated for the VPN tunnel. - FAILED: Tunnel creation has failed and the tunnel is not ready to be used. - NO_INCOMING_PACKETS: No incoming packets from peer. - REJECTED: Tunnel configuration was rejected, can be result of being denied access. - ALLOCATING_RESOURCES: Cloud VPN is in the process of allocating all required resources. - STOPPED: Tunnel is stopped due to its Forwarding Rules being deleted for Classic VPN tunnels or the project is in frozen state. - PEER_IDENTITY_MISMATCH: Peer identity does not match peer IP, probably behind NAT. - TS_NARROWING_NOT_ALLOWED: Traffic selector narrowing not allowed for an HA-VPN tunnel. ", + "enumDescriptions": [ + "Cloud VPN is in the process of allocating all required resources (specifically, a borg task).", + "Auth error (e.g. bad shared secret).", + "Resources is being deallocated for the VPN tunnel.", + "Secure session is successfully established with peer VPN.", + "Tunnel creation has failed and the tunnel is not ready to be used.", + "Successful first handshake with peer VPN.", + "Handshake failed.", + "Deprecated, replaced by NO_INCOMING_PACKETS", + "No incoming packets from peer", + "Resource is being allocated for the VPN tunnel.", + "Tunnel configuration was rejected, can be result of being denylisted.", + "Tunnel is stopped due to its Forwarding Rules being deleted.", + "Waiting to receive all VPN-related configs from user. Network, TargetVpnGateway, VpnTunnel, ForwardingRule and Route resources are needed to setup VPN tunnel." + ], + "enum": [ + "ALLOCATING_RESOURCES", + "AUTHORIZATION_ERROR", + "DEPROVISIONING", + "ESTABLISHED", + "FAILED", + "FIRST_HANDSHAKE", + "NEGOTIATION_FAILURE", + "NETWORK_ERROR", + "NO_INCOMING_PACKETS", + "PROVISIONING", + "REJECTED", + "STOPPED", + "WAITING_FOR_FULL_CONFIG" + ], + "type": "string" + }, + "localTrafficSelector": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Local traffic selector to use when establishing the VPN tunnel with the peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges must be disjoint. Only IPv4 is supported." + } + }, + "description": "Represents a Cloud VPN Tunnel resource. For more information about VPN, read the the Cloud VPN Overview.", + "type": "object" + }, + "DisksRemoveResourcePoliciesRequest": { + "properties": { + "resourcePolicies": { + "items": { + "type": "string" + }, + "type": "array", + "description": "Resource policies to be removed from this disk." + } + }, + "id": "DisksRemoveResourcePoliciesRequest", + "type": "object" + }, + "GlobalSetPolicyRequest": { + "id": "GlobalSetPolicyRequest", + "properties": { + "bindings": { + "items": { + "$ref": "Binding" + }, + "type": "array", + "description": "Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify bindings." + }, + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the 'resource'. The size of the policy is limited to a few 10s of KB. An empty policy is in general a valid policy but certain services (like Projects) might reject them." + }, + "etag": { + "format": "byte", + "description": "Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify the etag.", + "type": "string" + } + }, + "type": "object" + }, + "AcceleratorTypeList": { + "type": "object", + "id": "AcceleratorTypeList", + "description": "Contains a list of accelerator types.", + "properties": { + "items": { + "description": "A list of AcceleratorType resources.", + "type": "array", + "items": { + "$ref": "AcceleratorType" + } + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "kind": { + "type": "string", + "default": "compute#acceleratorTypeList", + "description": "[Output Only] Type of resource. Always compute#acceleratorTypeList for lists of accelerator types." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + } + } + } + } + } + }, + "InterconnectAttachmentsScopedList": { + "type": "object", + "id": "InterconnectAttachmentsScopedList", + "properties": { + "interconnectAttachments": { + "items": { + "$ref": "InterconnectAttachment" + }, + "description": "A list of interconnect attachments contained in this scope.", + "type": "array" + }, + "warning": { + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "type": "object" + } + } + }, + "HTTPHealthCheck": { + "properties": { + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "enum": [ + "NONE", + "PROXY_V1" + ] + }, + "response": { + "type": "string", + "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII." + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "portSpecification": { + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "enumDescriptions": [ + "The port number in port is used for health checking.", + "The portName is used for health checking.", + "For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking." + ], + "type": "string", + "description": "Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP health check follows behavior specified in port and portName fields." + }, + "requestPath": { + "description": "The request path of the HTTP health check request. The default value is /.", + "type": "string" + }, + "host": { + "type": "string", + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535." + } + }, + "id": "HTTPHealthCheck", + "type": "object" + }, + "TargetTcpProxyList": { + "type": "object", + "description": "Contains a list of TargetTcpProxy resources.", + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "items": { + "description": "A list of TargetTcpProxy resources.", + "items": { + "$ref": "TargetTcpProxy" + }, + "type": "array" + }, + "kind": { + "description": "Type of resource.", + "default": "compute#targetTcpProxyList", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + } + } + }, + "id": "TargetTcpProxyList" + }, + "Interconnect": { + "type": "object", + "description": "Represents an Interconnect resource. An Interconnect resource is a dedicated connection between the GCP network and your on-premises network. For more information, read the Dedicated Interconnect Overview.", + "id": "Interconnect", + "properties": { + "circuitInfos": { + "items": { + "$ref": "InterconnectCircuitInfo" + }, + "description": "[Output Only] A list of CircuitInfo objects, that describe the individual circuits in this LAG.", + "type": "array" + }, + "customerName": { + "description": "Customer name, to put in the Letter of Authorization as the party authorized to request a crossconnect.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "adminEnabled": { + "description": "Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are exchanged over it. By default, the status is set to true.", + "type": "boolean" + }, + "provisionedLinkCount": { + "format": "int32", + "description": "[Output Only] Number of links actually provisioned in this interconnect.", + "type": "integer" + }, + "interconnectAttachments": { + "type": "array", + "items": { + "type": "string" + }, + "description": "[Output Only] A list of the URLs of all InterconnectAttachments configured to use this Interconnect." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "requestedLinkCount": { + "type": "integer", + "description": "Target number of physical links in the link bundle, as requested by the customer.", + "format": "int32" + }, + "satisfiesPzs": { + "type": "boolean", + "description": "[Output Only] Set to true if the resource satisfies the zone separation organization policy constraints and false otherwise. Defaults to false if the field is not present." + }, + "name": { + "annotations": { + "required": [ + "compute.interconnects.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "nocContactEmail": { + "type": "string", + "description": "Email address to contact the customer NOC for operations and maintenance notifications regarding this Interconnect. If specified, this will be used for notifications in addition to all other forms described, such as Stackdriver logs alerting and Cloud Notifications." + }, + "peerIpAddress": { + "type": "string", + "description": "[Output Only] IP address configured on the customer side of the Interconnect link. The customer should configure this IP address during turnup when prompted by Google NOC. This can be used only for ping tests." + }, + "linkType": { + "description": "Type of link requested, which can take one of the following values: - LINK_TYPE_ETHERNET_10G_LR: A 10G Ethernet with LR optics - LINK_TYPE_ETHERNET_100G_LR: A 100G Ethernet with LR optics. Note that this field indicates the speed of each of the links in the bundle, not the speed of the entire bundle.", + "enum": [ + "LINK_TYPE_ETHERNET_100G_LR", + "LINK_TYPE_ETHERNET_10G_LR" + ], + "type": "string", + "enumDescriptions": [ + "100G Ethernet, LR Optics.", + "10G Ethernet, LR Optics. [(rate_bps) = 10000000000];" + ] + }, + "state": { + "type": "string", + "description": "[Output Only] The current state of Interconnect functionality, which can take one of the following values: - ACTIVE: The Interconnect is valid, turned up and ready to use. Attachments may be provisioned on this Interconnect. - UNPROVISIONED: The Interconnect has not completed turnup. No attachments may be provisioned on this Interconnect. - UNDER_MAINTENANCE: The Interconnect is undergoing internal maintenance. No attachments may be provisioned or updated on this Interconnect. ", + "enum": [ + "ACTIVE", + "UNPROVISIONED" + ], + "enumDescriptions": [ + "The interconnect is valid, turned up, and ready to use. Attachments may be provisioned on this interconnect.", + "The interconnect has not completed turnup. No attachments may be provisioned on this interconnect." + ] + }, + "googleReferenceId": { + "type": "string", + "description": "[Output Only] Google reference ID to be used when raising support tickets with Google or otherwise to debug backend connectivity issues." + }, + "googleIpAddress": { + "type": "string", + "description": "[Output Only] IP address configured on the Google side of the Interconnect link. This can be used only for ping tests." + }, + "expectedOutages": { + "type": "array", + "items": { + "$ref": "InterconnectOutageNotification" + }, + "description": "[Output Only] A list of outages expected for this Interconnect." + }, + "operationalStatus": { + "type": "string", + "enumDescriptions": [ + "The interconnect is valid, turned up, and ready to use. Attachments may be provisioned on this interconnect.", + "The interconnect has not completed turnup. No attachments may be provisioned on this interconnect." + ], + "description": "[Output Only] The current status of this Interconnect's functionality, which can take one of the following values: - OS_ACTIVE: A valid Interconnect, which is turned up and is ready to use. Attachments may be provisioned on this Interconnect. - OS_UNPROVISIONED: An Interconnect that has not completed turnup. No attachments may be provisioned on this Interconnect. - OS_UNDER_MAINTENANCE: An Interconnect that is undergoing internal maintenance. No attachments may be provisioned or updated on this Interconnect. ", + "enum": [ + "OS_ACTIVE", + "OS_UNPROVISIONED" + ] + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#interconnect for interconnects.", + "default": "compute#interconnect", + "type": "string" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "location": { + "description": "URL of the InterconnectLocation object that represents where this connection is to be provisioned.", + "type": "string" + }, + "interconnectType": { + "enumDescriptions": [ + "A dedicated physical interconnection with the customer.", + "[Deprecated] A private, physical interconnection with the customer.", + "A partner-managed interconnection shared between customers via partner." + ], + "description": "Type of interconnect, which can take one of the following values: - PARTNER: A partner-managed interconnection shared between customers though a partner. - DEDICATED: A dedicated physical interconnection with the customer. Note that a value IT_PRIVATE has been deprecated in favor of DEDICATED.", + "enum": [ + "DEDICATED", + "IT_PRIVATE", + "PARTNER" + ], + "type": "string" + } + } + }, + "InstanceGroupAggregatedList": { + "type": "object", + "properties": { + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + }, + "type": "array" + } + }, + "type": "object" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "kind": { + "type": "string", + "default": "compute#instanceGroupAggregatedList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupAggregatedList for aggregated lists of instance groups." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "object", + "additionalProperties": { + "$ref": "InstanceGroupsScopedList", + "description": "The name of the scope that contains this set of instance groups." + }, + "description": "A list of InstanceGroupsScopedList resources." + }, + "unreachables": { + "items": { + "type": "string" + }, + "description": "[Output Only] Unreachable resources.", + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "id": "InstanceGroupAggregatedList" + }, + "BackendService": { + "id": "BackendService", + "description": "Represents a Backend Service resource. A backend service defines how Google Cloud load balancers distribute traffic. The backend service configuration contains a set of values, such as the protocol used to connect to backends, various distribution and session settings, health checks, and timeouts. These settings provide fine-grained control over how your load balancer behaves. Most of the settings have default values that allow for easy configuration if you need to get started quickly. Backend services in Google Compute Engine can be either regionally or globally scoped. * [Global](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices) * [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/regionBackendServices) For more information, see Backend Services.", + "properties": { + "customRequestHeaders": { + "items": { + "type": "string" + }, + "description": "Headers that the load balancer adds to proxied requests. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers).", + "type": "array" + }, + "healthChecks": { + "description": "The list of URLs to the healthChecks, httpHealthChecks (legacy), or httpsHealthChecks (legacy) resource for health checking this backend service. Not all backend services support legacy health checks. See Load balancer guide. Currently, at most one health check can be specified for each backend service. Backend services with instance group or zonal NEG backends must have a health check. Backend services with internet or serverless NEG backends must not have a health check.", + "type": "array", + "items": { + "type": "string" + } + }, + "circuitBreakers": { + "$ref": "CircuitBreakers" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "loadBalancingScheme": { + "description": "Specifies the load balancer type. A backend service created for one type of load balancer cannot be used with another. For more information, refer to Choosing a load balancer.", + "type": "string", + "enum": [ + "EXTERNAL", + "INTERNAL", + "INTERNAL_MANAGED", + "INTERNAL_SELF_MANAGED", + "INVALID_LOAD_BALANCING_SCHEME" + ], + "enumDescriptions": [ + "Signifies that this will be used for external HTTP(S), SSL Proxy, TCP Proxy, or Network Load Balancing", + "Signifies that this will be used for Internal TCP/UDP Load Balancing.", + "Signifies that this will be used for Internal HTTP(S) Load Balancing.", + "Signifies that this will be used by Traffic Director.", + "" + ] + }, + "enableCDN": { + "description": "If true, enables Cloud CDN for the backend service of an external HTTP(S) load balancer.", + "type": "boolean" + }, + "connectionDraining": { + "$ref": "ConnectionDraining" + }, + "subsetting": { + "$ref": "Subsetting" + }, + "failoverPolicy": { + "description": "Requires at least one backend instance group to be defined as a backup (failover) backend. For load balancers that have configurable failover: [Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [external TCP/UDP Load Balancing](/network/networklb-failover-overview).", + "$ref": "BackendServiceFailoverPolicy" + }, + "timeoutSec": { + "format": "int32", + "type": "integer", + "description": "Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true. Instead, use maxStreamDuration." + }, + "localityLbPolicy": { + "enum": [ + "INVALID_LB_POLICY", + "LEAST_REQUEST", + "MAGLEV", + "ORIGINAL_DESTINATION", + "RANDOM", + "RING_HASH", + "ROUND_ROBIN" + ], + "enumDescriptions": [ + "", + "An O(1) algorithm which selects two random healthy hosts and picks the host which has fewer active requests.", + "This algorithm implements consistent hashing to backends. Maglev can be used as a drop in replacement for the ring hash load balancer. Maglev is not as stable as ring hash but has faster table lookup build times and host selection times. For more information about Maglev, see https://ai.google/research/pubs/pub44824", + "Backend host is selected based on the client connection metadata, i.e., connections are opened to the same address as the destination address of the incoming connection before the connection was redirected to the load balancer.", + "The load balancer selects a random healthy host.", + "The ring/modulo hash load balancer implements consistent hashing to backends. The algorithm has the property that the addition/removal of a host from a set of N hosts only affects 1/N of the requests.", + "This is a simple policy in which each healthy backend is selected in round robin order. This is the default." + ], + "description": "The load balancing algorithm used within the scope of the locality. The possible values are: - ROUND_ROBIN: This is a simple policy in which each healthy backend is selected in round robin order. This is the default. - LEAST_REQUEST: An O(1) algorithm which selects two random healthy hosts and picks the host which has fewer active requests. - RING_HASH: The ring/modulo hash load balancer implements consistent hashing to backends. The algorithm has the property that the addition/removal of a host from a set of N hosts only affects 1/N of the requests. - RANDOM: The load balancer selects a random healthy host. - ORIGINAL_DESTINATION: Backend host is selected based on the client connection metadata, i.e., connections are opened to the same address as the destination address of the incoming connection before the connection was redirected to the load balancer. - MAGLEV: used as a drop in replacement for the ring hash load balancer. Maglev is not as stable as ring hash but has faster table lookup build times and host selection times. For more information about Maglev, see https://ai.google/research/pubs/pub44824 This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. If sessionAffinity is not NONE, and this field is not set to MAGLEV or RING_HASH, session affinity settings will not take effect. Only the default ROUND_ROBIN policy is supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "type": "string" + }, + "customResponseHeaders": { + "items": { + "type": "string" + }, + "description": "Headers that the load balancer adds to proxied responses. See [Creating custom headers](https://cloud.google.com/load-balancing/docs/custom-headers).", + "type": "array" + }, + "outlierDetection": { + "$ref": "OutlierDetection", + "description": "Settings controlling the eviction of unhealthy hosts from the load balancing pool for the backend service. If not set, this feature is considered disabled. This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true." + }, + "sessionAffinity": { + "type": "string", + "enumDescriptions": [ + "2-tuple hash on packet's source and destination IP addresses. Connections from the same source IP address to the same destination IP address will be served by the same backend VM while that VM remains healthy.", + "1-tuple hash only on packet's source IP address. Connections from the same source IP address will be served by the same backend VM while that VM remains healthy. This option can only be used for Internal TCP/UDP Load Balancing.", + "5-tuple hash on packet's source and destination IP addresses, IP protocol, and source and destination ports. Connections for the same IP protocol from the same source IP address and port to the same destination IP address and port will be served by the same backend VM while that VM remains healthy. This option cannot be used for HTTP(S) load balancing.", + "3-tuple hash on packet's source and destination IP addresses, and IP protocol. Connections for the same IP protocol from the same source IP address to the same destination IP address will be served by the same backend VM while that VM remains healthy. This option cannot be used for HTTP(S) load balancing.", + "Hash based on a cookie generated by the L7 loadbalancer. Only valid for HTTP(S) load balancing.", + "The hash is based on a user specified header field.", + "The hash is based on a user provided cookie.", + "No session affinity. Connections from the same client IP may go to any instance in the pool." + ], + "description": "Type of session affinity to use. The default is NONE. For a detailed description of session affinity options, see: [Session affinity](https://cloud.google.com/load-balancing/docs/backend-service#session_affinity). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_NO_DESTINATION", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "HEADER_FIELD", + "HTTP_COOKIE", + "NONE" + ] + }, + "port": { + "format": "int32", + "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port.", + "type": "integer" + }, + "logConfig": { + "description": "This field denotes the logging options for the load balancer traffic served by this backend service. If logging is enabled, logs will be exported to Stackdriver.", + "$ref": "BackendServiceLogConfig" + }, + "consistentHash": { + "$ref": "ConsistentHashLoadBalancerSettings", + "description": "Consistent Hash-based load balancing can be used to provide soft session affinity based on HTTP headers, cookies or other properties. This load balancing policy is applicable only for HTTP connections. The affinity to a particular destination host will be lost when one or more hosts are added/removed from the destination service. This field specifies parameters that control consistent hashing. This field is only applicable when localityLbPolicy is set to MAGLEV or RING_HASH. This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true." + }, + "backends": { + "items": { + "$ref": "Backend" + }, + "type": "array", + "description": "The list of backends that serve this BackendService." + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string", + "format": "uint64" + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the regional backend service resides. This field is not applicable to global backend services. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body." + }, + "affinityCookieTtlSec": { + "format": "int32", + "type": "integer", + "description": "Lifetime of cookies in seconds. This setting is applicable to external and internal HTTP(S) load balancers and Traffic Director and requires GENERATED_COOKIE or HTTP_COOKIE session affinity. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value is one day (86,400). Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true." + }, + "protocol": { + "enumDescriptions": [ + "gRPC (available for Traffic Director).", + "", + "HTTP/2 with SSL.", + "", + "TCP proxying with SSL.", + "TCP proxying or TCP pass-through.", + "UDP." + ], + "description": "The protocol this BackendService uses to communicate with backends. Possible values are HTTP, HTTPS, HTTP2, TCP, SSL, UDP or GRPC. depending on the chosen load balancer or Traffic Director configuration. Refer to the documentation for the load balancers or for Traffic Director for more information. Must be set to GRPC when the backend service is referenced by a URL map that is bound to target gRPC proxy.", + "enum": [ + "GRPC", + "HTTP", + "HTTP2", + "HTTPS", + "SSL", + "TCP", + "UDP" + ], + "type": "string" + }, + "cdnPolicy": { + "$ref": "BackendServiceCdnPolicy", + "description": "Cloud CDN configuration for this BackendService. Only available for specified load balancer types." + }, + "network": { + "type": "string", + "description": "The URL of the network to which this backend service belongs. This field can only be specified when the load balancing scheme is set to INTERNAL." + }, + "securitySettings": { + "$ref": "SecuritySettings", + "description": "This field specifies the security policy that applies to this backend service. This field is applicable to either: - A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and load_balancing_scheme set to INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED. " + }, + "securityPolicy": { + "description": "[Output Only] The resource URL for the security policy associated with this backend service.", + "type": "string" + }, + "iap": { + "description": "The configurations for Identity-Aware Proxy on this resource. Not available for Internal TCP/UDP Load Balancing and Network Load Balancing.", + "$ref": "BackendServiceIAP" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "name": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "maxStreamDuration": { + "description": "Specifies the default maximum duration (timeout) for streams to this service. Duration is computed from the beginning of the stream until the response has been completely processed, including all retries. A stream that does not complete in this duration is closed. If not specified, there will be no timeout limit, i.e. the maximum duration is infinite. This value can be overridden in the PathMatcher configuration of the UrlMap that references this backend service. This field is only allowed when the loadBalancingScheme of the backend service is INTERNAL_SELF_MANAGED.", + "$ref": "Duration" + }, + "portName": { + "type": "string", + "description": "A named port on a backend instance group representing the port for communication to the backend VMs in that group. The named port must be [defined on each backend instance group](https://cloud.google.com/load-balancing/docs/backend-service#named_ports). This parameter has no meaning if the backends are NEGs. For Internal TCP/UDP Load Balancing and Network Load Balancing, omit port_name." + }, + "kind": { + "default": "compute#backendService", + "type": "string", + "description": "[Output Only] Type of resource. Always compute#backendService for backend services." + }, + "fingerprint": { + "type": "string", + "format": "byte", + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a BackendService." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + } + }, + "type": "object" + }, + "NodeGroupsListNodes": { + "type": "object", + "id": "NodeGroupsListNodes", + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "type": "object", + "properties": { + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + } + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "description": "[Output Only] Informational warning message." + }, + "items": { + "description": "A list of Node resources.", + "type": "array", + "items": { + "$ref": "NodeGroupNode" + } + }, + "kind": { + "description": "[Output Only] The resource type, which is always compute.nodeGroupsListNodes for the list of nodes in the specified node group.", + "type": "string", + "default": "compute#nodeGroupsListNodes" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + } + } + }, + "ZoneList": { + "id": "ZoneList", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "items": { + "description": "A list of Zone resources.", + "items": { + "$ref": "Zone" + }, + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "kind": { + "default": "compute#zoneList", + "type": "string", + "description": "Type of resource." + }, + "warning": { + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + } + }, + "description": "Contains a list of zone resources.", + "type": "object" + }, + "Image": { + "type": "object", + "description": "Represents an Image resource. You can use images to create boot disks for your VM instances. For more information, read Images.", + "properties": { + "sourceImageEncryptionKey": { + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.", + "$ref": "CustomerEncryptionKey" + }, + "sourceSnapshotId": { + "type": "string", + "description": "[Output Only] The ID value of the snapshot used to create this image. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given snapshot name." + }, + "family": { + "description": "The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035.", + "type": "string" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this image. These can be later modified by the setLabels method.", + "type": "object" + }, + "id": { + "format": "uint64", + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "imageEncryptionKey": { + "description": "Encrypts the image using a customer-supplied encryption key. After you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image). Customer-supplied encryption keys do not protect access to metadata of the disk. If you do not provide an encryption key when creating the image, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later.", + "$ref": "CustomerEncryptionKey" + }, + "kind": { + "default": "compute#image", + "description": "[Output Only] Type of the resource. Always compute#image for images.", + "type": "string" + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "shieldedInstanceInitialState": { + "description": "Set the secure boot keys of shielded instance.", + "$ref": "InitialStateConfig" + }, + "sourceDisk": { + "type": "string", + "description": "URL of the source disk used to create this image. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /disks/disk - projects/project/zones/zone/disks/disk - zones/zone/disks/disk In order to create an image, you must provide the full or partial URL of one of the following: - The rawDisk.source URL - The sourceDisk URL - The sourceImage URL - The sourceSnapshot URL " + }, + "rawDisk": { + "type": "object", + "properties": { + "sha1Checksum": { + "pattern": "[a-f0-9]{40}", + "type": "string", + "description": "[Deprecated] This field is deprecated. An optional SHA1 checksum of the disk image before unpackaging provided by the client when the disk image is created." + }, + "source": { + "description": "The full Google Cloud Storage URL where the raw disk image archive is stored. The following are valid formats for the URL: - https://storage.googleapis.com/bucket_name/image_archive_name - https://storage.googleapis.com/bucket_name/folder_name/ image_archive_name In order to create an image, you must provide the full or partial URL of one of the following: - The rawDisk.source URL - The sourceDisk URL - The sourceImage URL - The sourceSnapshot URL ", + "type": "string" + }, + "containerType": { + "type": "string", + "enumDescriptions": [ + "" + ], + "description": "The format used to encode and transmit the block device, which should be TAR. This is just a container and transmission format and not a runtime format. Provided by the client when the disk image is created.", + "enum": [ + "TAR" + ] + } + }, + "description": "The parameters of the raw disk image." + }, + "licenses": { + "description": "Any applicable license URI.", + "items": { + "type": "string" + }, + "type": "array" + }, + "diskSizeGb": { + "format": "int64", + "description": "Size of the image when restored onto a persistent disk (in GB).", + "type": "string" + }, + "sourceDiskEncryptionKey": { + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.", + "$ref": "CustomerEncryptionKey" + }, + "licenseCodes": { + "description": "Integer license codes indicating which licenses are attached to this image.", + "type": "array", + "items": { + "type": "string", + "format": "int64" + } + }, + "sourceSnapshot": { + "type": "string", + "description": "URL of the source snapshot used to create this image. The following are valid formats for the URL: - https://www.googleapis.com/compute/v1/projects/project_id/global/ snapshots/snapshot_name - projects/project_id/global/snapshots/snapshot_name In order to create an image, you must provide the full or partial URL of one of the following: - The rawDisk.source URL - The sourceDisk URL - The sourceImage URL - The sourceSnapshot URL " + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "labelFingerprint": { + "format": "byte", + "type": "string", + "description": "A fingerprint for the labels being applied to this image, which is essentially a hash of the labels used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an image." + }, + "status": { + "enumDescriptions": [ + "Image is deleting.", + "Image creation failed due to an error.", + "Image hasn't been created as yet.", + "Image has been successfully created." + ], + "type": "string", + "description": "[Output Only] The status of the image. An image can be used to create other resources, such as instances, only after the image has been successfully created and the status is set to READY. Possible values are FAILED, PENDING, or READY.", + "enum": [ + "DELETING", + "FAILED", + "PENDING", + "READY" + ] + }, + "storageLocations": { + "description": "Cloud Storage bucket storage location of the image (regional or multi-regional).", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceImageId": { + "description": "[Output Only] The ID value of the image used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given image name.", + "type": "string" + }, + "sourceDiskId": { + "description": "[Output Only] The ID value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name.", + "type": "string" + }, + "sourceImage": { + "description": "URL of the source image used to create this image. The following are valid formats for the URL: - https://www.googleapis.com/compute/v1/projects/project_id/global/ images/image_name - projects/project_id/global/images/image_name In order to create an image, you must provide the full or partial URL of one of the following: - The rawDisk.source URL - The sourceDisk URL - The sourceImage URL - The sourceSnapshot URL ", + "type": "string" + }, + "deprecated": { + "description": "The deprecation status associated with this image.", + "$ref": "DeprecationStatus" + }, + "satisfiesPzs": { + "description": "[Output Only] Reserved for future use.", + "type": "boolean" + }, + "name": { + "annotations": { + "required": [ + "compute.images.insert" + ] + }, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "sourceType": { + "enumDescriptions": [ + "" + ], + "description": "The type of the image used to create this disk. The default and only value is RAW", + "type": "string", + "enum": [ + "RAW" + ], + "default": "RAW" + }, + "archiveSizeBytes": { + "description": "Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).", + "format": "int64", + "type": "string" + }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." + } + }, + "id": "Image" + }, + "RegionSetLabelsRequest": { + "properties": { + "labelFingerprint": { + "type": "string", + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte" + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "The labels to set for this resource." + } + }, + "type": "object", + "id": "RegionSetLabelsRequest" + }, + "NetworksAddPeeringRequest": { + "id": "NetworksAddPeeringRequest", + "type": "object", + "properties": { + "peerNetwork": { + "type": "string", + "description": "URL of the peer network. It can be either full URL or partial URL. The peer network may belong to a different project. If the partial URL does not contain project, it is assumed that the peer network is in the same project as the current network." + }, + "autoCreateRoutes": { + "type": "boolean", + "description": "This field will be deprecated soon. Use exchange_subnet_routes in network_peering instead. Indicates whether full mesh connectivity is created and managed automatically between peered networks. Currently this field should always be true since Google Compute Engine will automatically create and manage subnetwork routes between two networks when peering state is ACTIVE." + }, + "networkPeering": { + "$ref": "NetworkPeering", + "description": "Network peering parameters. In order to specify route policies for peering using import and export custom routes, you must specify all peering related parameters (name, peer network, exchange_subnet_routes) in the network_peering field. The corresponding fields in NetworksAddPeeringRequest will be deprecated soon." + }, + "name": { + "description": "Name of the peering, which should conform to RFC1035.", + "type": "string", + "annotations": { + "required": [ + "compute.networks.addPeering" + ] + } + } + } + }, + "VmEndpointNatMappingsInterfaceNatMappings": { + "id": "VmEndpointNatMappingsInterfaceNatMappings", + "properties": { + "numTotalNatPorts": { + "type": "integer", + "format": "int32", + "description": "Total number of ports across all NAT IPs allocated to this interface. It equals to the aggregated port number in the field nat_ip_port_ranges." + }, + "numTotalDrainNatPorts": { + "format": "int32", + "description": "Total number of drain ports across all NAT IPs allocated to this interface. It equals to the aggregated port number in the field drain_nat_ip_port_ranges.", + "type": "integer" + }, + "sourceVirtualIp": { + "type": "string", + "description": "Primary IP of the VM for this NIC." + }, + "natIpPortRanges": { + "type": "array", + "description": "A list of all IP:port-range mappings assigned to this interface. These ranges are inclusive, that is, both the first and the last ports can be used for NAT. Example: [\"2.2.2.2:12345-12355\", \"1.1.1.1:2234-2234\"].", + "items": { + "type": "string" + } + }, + "sourceAliasIpRange": { + "description": "Alias IP range for this interface endpoint. It will be a private (RFC 1918) IP range. Examples: \"10.33.4.55/32\", or \"192.168.5.0/24\".", + "type": "string" + }, + "drainNatIpPortRanges": { + "items": { + "type": "string" + }, + "type": "array", + "description": "List of all drain IP:port-range mappings assigned to this interface. These ranges are inclusive, that is, both the first and the last ports can be used for NAT. Example: [\"2.2.2.2:12345-12355\", \"1.1.1.1:2234-2234\"]." + } + }, + "type": "object", + "description": "Contain information of Nat mapping for an interface of this endpoint." + }, + "InstancesAddResourcePoliciesRequest": { + "properties": { + "resourcePolicies": { + "description": "Resource policies to be added to this instance.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "id": "InstancesAddResourcePoliciesRequest" + }, + "RouterStatusBgpPeerStatus": { + "properties": { + "state": { + "description": "BGP state as specified in RFC1771.", + "type": "string" + }, + "uptime": { + "type": "string", + "description": "Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds" + }, + "uptimeSeconds": { + "type": "string", + "description": "Time this session has been up, in seconds. Format: 145" + }, + "status": { + "enum": [ + "DOWN", + "UNKNOWN", + "UP" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "description": "Status of the BGP peer: {UP, DOWN}", + "type": "string" + }, + "linkedVpnTunnel": { + "type": "string", + "description": "URL of the VPN tunnel that this BGP peer controls." + }, + "name": { + "description": "Name of this BGP peer. Unique within the Routers resource.", + "type": "string" + }, + "routerApplianceInstance": { + "description": "[Output only] URI of the VM instance that is used as third-party router appliances such as Next Gen Firewalls, Virtual Routers, or Router Appliances. The VM instance is the peer side of the BGP session.", + "type": "string" + }, + "numLearnedRoutes": { + "description": "Number of routes learned from the remote BGP Peer.", + "format": "uint32", + "type": "integer" + }, + "advertisedRoutes": { + "description": "Routes that were advertised to the remote BGP peer", + "items": { + "$ref": "Route" + }, + "type": "array" + }, + "peerIpAddress": { + "description": "IP address of the remote BGP interface.", + "type": "string" + }, + "ipAddress": { + "type": "string", + "description": "IP address of the local BGP interface." + } + }, + "id": "RouterStatusBgpPeerStatus", + "type": "object" + }, + "BackendServiceList": { + "properties": { + "warning": { + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "items": { + "description": "A list of BackendService resources.", + "type": "array", + "items": { + "$ref": "BackendService" + } + }, + "kind": { + "type": "string", + "default": "compute#backendServiceList", + "description": "[Output Only] Type of resource. Always compute#backendServiceList for lists of backend services." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + } + }, + "description": "Contains a list of BackendService resources.", + "id": "BackendServiceList", + "type": "object" + }, + "DiskMoveRequest": { + "id": "DiskMoveRequest", + "type": "object", + "properties": { + "targetDisk": { + "description": "The URL of the target disk to move. This can be a full or partial URL. For example, the following are all valid URLs to a disk: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /disks/disk - projects/project/zones/zone/disks/disk - zones/zone/disks/disk ", + "type": "string" + }, + "destinationZone": { + "type": "string", + "description": "The URL of the destination zone to move the disk. This can be a full or partial URL. For example, the following are all valid URLs to a zone: - https://www.googleapis.com/compute/v1/projects/project/zones/zone - projects/project/zones/zone - zones/zone " + } + } + }, + "RegionInstanceGroupManagersSetTargetPoolsRequest": { + "properties": { + "fingerprint": { + "format": "byte", + "type": "string", + "description": "Fingerprint of the target pools information, which is a hash of the contents. This field is used for optimistic locking when you update the target pool entries. This field is optional." + }, + "targetPools": { + "items": { + "type": "string" + }, + "type": "array", + "description": "The URL of all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group." + } + }, + "type": "object", + "id": "RegionInstanceGroupManagersSetTargetPoolsRequest" + }, + "AcceleratorConfig": { + "type": "object", + "id": "AcceleratorConfig", + "properties": { + "acceleratorType": { + "type": "string", + "description": "Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine for a full list of accelerator types." + }, + "acceleratorCount": { + "format": "int32", + "type": "integer", + "description": "The number of the guest accelerator cards exposed to this instance." + } + }, + "description": "A specification of the type and number of accelerator cards attached to the instance." + }, + "NodeGroupList": { + "description": "Contains a list of nodeGroups.", + "type": "object", + "id": "NodeGroupList", + "properties": { + "kind": { + "default": "compute#nodeGroupList", + "type": "string", + "description": "[Output Only] Type of resource.Always compute#nodeGroupList for lists of node groups." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "items": { + "type": "array", + "items": { + "$ref": "NodeGroup" + }, + "description": "A list of NodeGroup resources." + }, + "warning": { + "type": "object", + "properties": { + "data": { + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "description": "[Output Only] Informational warning message." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "InstanceGroupManagersUpdatePerInstanceConfigsReq": { + "type": "object", + "description": "InstanceGroupManagers.updatePerInstanceConfigs", + "id": "InstanceGroupManagersUpdatePerInstanceConfigsReq", + "properties": { + "perInstanceConfigs": { + "description": "The list of per-instance configs to insert or patch on this managed instance group.", + "items": { + "$ref": "PerInstanceConfig" + }, + "type": "array" + } + } + }, + "MachineTypeList": { + "description": "Contains a list of machine types.", + "type": "object", + "properties": { + "items": { + "items": { + "$ref": "MachineType" + }, + "type": "array", + "description": "A list of MachineType resources." + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#machineTypeList for lists of machine types.", + "type": "string", + "default": "compute#machineTypeList" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "properties": { + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + }, + "id": "MachineTypeList" + }, + "UrlMapsAggregatedList": { + "id": "UrlMapsAggregatedList", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "type": "string", + "default": "compute#urlMapsAggregatedList", + "description": "Type of resource." + }, + "items": { + "type": "object", + "additionalProperties": { + "description": "Name of the scope containing this set of UrlMaps.", + "$ref": "UrlMapsScopedList" + }, + "description": "A list of UrlMapsScopedList resources." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + }, + "unreachables": { + "items": { + "type": "string" + }, + "type": "array", + "description": "[Output Only] Unreachable resources." + } + }, + "type": "object" + }, + "SecurityPoliciesListPreconfiguredExpressionSetsResponse": { + "id": "SecurityPoliciesListPreconfiguredExpressionSetsResponse", + "properties": { + "preconfiguredExpressionSets": { + "$ref": "SecurityPoliciesWafConfig" + } + }, + "type": "object" + }, + "ServiceAttachment": { + "description": "Represents a ServiceAttachment resource. A service attachment represents a service that a producer has exposed. It encapsulates the load balancer which fronts the service runs and a list of NAT IP ranges that the producers uses to represent the consumers connecting to the service. next tag = 20", + "properties": { + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the service attachment resides. This field applies only to the region resource. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "targetService": { + "description": "The URL of a service serving the endpoint identified by this service attachment.", + "type": "string" + }, + "connectedEndpoints": { + "items": { + "$ref": "ServiceAttachmentConnectedEndpoint" + }, + "type": "array", + "description": "[Output Only] An array of connections for all the consumers connected to this service attachment." + }, + "producerForwardingRule": { + "description": "The URL of a forwarding rule with loadBalancingScheme INTERNAL* that is serving the endpoint identified by this service attachment.", + "type": "string" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "name": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.serviceAttachments.insert" + ] + }, + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "enableProxyProtocol": { + "description": "If true, enable the proxy protocol which is for supplying client TCP/IP address data in TCP connections that traverse proxies on their way to destination servers.", + "type": "boolean" + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#serviceAttachment for service attachments.", + "default": "compute#serviceAttachment", + "type": "string" + }, + "consumerRejectLists": { + "items": { + "type": "string" + }, + "type": "array", + "description": "Projects that are not allowed to connect to this service attachment. The project can be specified using its id or number." + }, + "fingerprint": { + "type": "string", + "format": "byte", + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a ServiceAttachment. An up-to-date fingerprint must be provided in order to patch/update the ServiceAttachment; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the ServiceAttachment." + }, + "natSubnets": { + "type": "array", + "description": "An array of URLs where each entry is the URL of a subnet provided by the service producer to use for NAT in this service attachment.", + "items": { + "type": "string" + } + }, + "id": { + "description": "[Output Only] The unique identifier for the resource type. The server generates this identifier.", + "type": "string", + "format": "uint64" + }, + "consumerAcceptLists": { + "type": "array", + "description": "Projects that are allowed to connect to this service attachment.", + "items": { + "$ref": "ServiceAttachmentConsumerProjectLimit" + } + }, + "connectionPreference": { + "enum": [ + "ACCEPT_AUTOMATIC", + "ACCEPT_MANUAL", + "CONNECTION_PREFERENCE_UNSPECIFIED" + ], + "description": "The connection preference of service attachment. The value can be set to ACCEPT_AUTOMATIC. An ACCEPT_AUTOMATIC service attachment is one that always accepts the connection from consumer forwarding rules.", + "type": "string", + "enumDescriptions": [ + "", + "", + "" + ] + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "pscServiceAttachmentId": { + "description": "[Output Only] An 128-bit global unique ID of the PSC service attachment.", + "$ref": "Uint128" + } + }, + "id": "ServiceAttachment", + "type": "object" + }, + "BackendServiceCdnPolicyBypassCacheOnRequestHeader": { + "id": "BackendServiceCdnPolicyBypassCacheOnRequestHeader", + "description": "Bypass the cache when the specified request headers are present, e.g. Pragma or Authorization headers. Values are case insensitive. The presence of such a header overrides the cache_mode setting.", + "properties": { + "headerName": { + "description": "The header field name to match on when bypassing cache. Values are case-insensitive.", + "type": "string" + } + }, + "type": "object" + }, + "CorsPolicy": { + "properties": { + "allowOriginRegexes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Specifies the regualar expression patterns that match allowed origins. For regular expression grammar please see github.com/google/re2/wiki/Syntax An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes." + }, + "allowMethods": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Specifies the content for the Access-Control-Allow-Methods header." + }, + "allowHeaders": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Specifies the content for the Access-Control-Allow-Headers header." + }, + "maxAge": { + "description": "Specifies how long results of a preflight request can be cached in seconds. This translates to the Access-Control-Max-Age header.", + "type": "integer", + "format": "int32" + }, + "allowCredentials": { + "description": "In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This translates to the Access-Control-Allow-Credentials header. Default is false.", + "type": "boolean" + }, + "allowOrigins": { + "items": { + "type": "string" + }, + "type": "array", + "description": "Specifies the list of origins that will be allowed to do CORS requests. An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes." + }, + "exposeHeaders": { + "description": "Specifies the content for the Access-Control-Expose-Headers header.", + "type": "array", + "items": { + "type": "string" + } + }, + "disabled": { + "description": "If true, specifies the CORS policy is disabled. The default value of false, which indicates that the CORS policy is in effect.", + "type": "boolean" + } + }, + "type": "object", + "id": "CorsPolicy", + "description": "The specification for allowing client side cross-origin requests. Please see W3C Recommendation for Cross Origin Resource Sharing" + }, + "SslCertificate": { + "properties": { + "kind": { + "description": "[Output Only] Type of the resource. Always compute#sslCertificate for SSL certificates.", + "default": "compute#sslCertificate", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "expireTime": { + "type": "string", + "description": "[Output Only] Expire time of the certificate. RFC3339" + }, + "certificate": { + "description": "A value read into memory from a certificate file. The certificate file must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "privateKey": { + "description": "A value read into memory from a write-only private key file. The private key file must be in PEM format. For security, only insert requests include this field.", + "type": "string" + }, + "managed": { + "description": "Configuration and status of a managed SSL certificate.", + "$ref": "SslCertificateManagedSslCertificate" + }, + "subjectAlternativeNames": { + "description": "[Output Only] Domains associated with the certificate via Subject Alternative Name.", + "items": { + "type": "string" + }, + "type": "array" + }, + "region": { + "description": "[Output Only] URL of the region where the regional SSL Certificate resides. This field is not applicable to global SSL Certificate.", + "type": "string" + }, + "selfManaged": { + "$ref": "SslCertificateSelfManagedSslCertificate", + "description": "Configuration and status of a self-managed SSL certificate." + }, + "selfLink": { + "type": "string", + "description": "[Output only] Server-defined URL for the resource." + }, + "name": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "type": { + "type": "string", + "description": "(Optional) Specifies the type of SSL certificate, either \"SELF_MANAGED\" or \"MANAGED\". If not specified, the certificate is self-managed and the fields certificate and private_key are used.", + "enum": [ + "MANAGED", + "SELF_MANAGED", + "TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Google-managed SSLCertificate.", + "Certificate uploaded by user.", + "" + ] + } + }, + "type": "object", + "id": "SslCertificate", + "description": "Represents an SSL Certificate resource. Google Compute Engine has two SSL Certificate resources: * [Global](/compute/docs/reference/rest/v1/sslCertificates) * [Regional](/compute/docs/reference/rest/v1/regionSslCertificates) The sslCertificates are used by: - external HTTPS load balancers - SSL proxy load balancers The regionSslCertificates are used by internal HTTPS load balancers. Optionally, certificate file contents that you upload can contain a set of up to five PEM-encoded certificates. The API call creates an object (sslCertificate) that holds this data. You can use SSL keys and certificates to secure connections to a load balancer. For more information, read Creating and using SSL certificates, SSL certificates quotas and limits, and Troubleshooting SSL certificates." + }, + "LicensesListResponse": { + "properties": { + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + } + } + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "items": { + "description": "A list of License resources.", + "type": "array", + "items": { + "$ref": "License" + } + } + }, + "type": "object", + "id": "LicensesListResponse" + }, + "VmEndpointNatMappings": { + "id": "VmEndpointNatMappings", + "properties": { + "instanceName": { + "type": "string", + "description": "Name of the VM instance which the endpoint belongs to" + }, + "interfaceNatMappings": { + "type": "array", + "items": { + "$ref": "VmEndpointNatMappingsInterfaceNatMappings" + } + } + }, + "description": "Contain information of Nat mapping for a VM endpoint (i.e., NIC).", + "type": "object" + }, + "Metadata": { + "description": "A metadata key/value entry.", + "type": "object", + "id": "Metadata", + "properties": { + "kind": { + "type": "string", + "default": "compute#metadata", + "description": "[Output Only] Type of the resource. Always compute#metadata for metadata." + }, + "fingerprint": { + "type": "string", + "format": "byte", + "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the resource." + }, + "items": { + "items": { + "properties": { + "value": { + "description": "Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 262144 bytes (256 KiB).", + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + }, + "type": "string" + }, + "key": { + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + }, + "type": "string", + "description": "Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.", + "pattern": "[a-zA-Z0-9-_]{1,128}" + } + }, + "description": "Metadata", + "type": "object" + }, + "description": "Array of key/value pairs. The total size of all keys and values must be less than 512 KB.", + "type": "array" + } + } + }, + "BackendBucketCdnPolicyBypassCacheOnRequestHeader": { + "id": "BackendBucketCdnPolicyBypassCacheOnRequestHeader", + "properties": { + "headerName": { + "type": "string", + "description": "The header field name to match on when bypassing cache. Values are case-insensitive." + } + }, + "description": "Bypass the cache when the specified request headers are present, e.g. Pragma or Authorization headers. Values are case insensitive. The presence of such a header overrides the cache_mode setting.", + "type": "object" + }, + "HealthCheckLogConfig": { + "description": "Configuration of logging on a health check. If logging is enabled, logs will be exported to Stackdriver.", + "type": "object", + "id": "HealthCheckLogConfig", + "properties": { + "enable": { + "type": "boolean", + "description": "Indicates whether or not to export logs. This is false by default, which means no health check logging will be done." + } + } + }, + "BackendBucketList": { + "type": "object", + "id": "BackendBucketList", + "description": "Contains a list of BackendBucket resources.", + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "items": { + "$ref": "BackendBucket" + }, + "type": "array", + "description": "A list of BackendBucket resources." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#backendBucketList" + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + } + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "SecurityPolicyRuleMatcher": { + "type": "object", + "id": "SecurityPolicyRuleMatcher", + "description": "Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified.", + "properties": { + "expr": { + "description": "User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header.", + "$ref": "Expr" + }, + "config": { + "$ref": "SecurityPolicyRuleMatcherConfig", + "description": "The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified." + }, + "versionedExpr": { + "description": "Preconfigured versioned expression. If this field is specified, config must also be specified. Available preconfigured expressions along with their requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range field in config.", + "enumDescriptions": [ + "Matches the source IP address of a request to the IP ranges supplied in config." + ], + "type": "string", + "enum": [ + "SRC_IPS_V1" + ] + } + } + }, + "CircuitBreakers": { + "description": "Settings controlling the volume of requests, connections and retries to this backend service.", + "type": "object", + "properties": { + "maxRequestsPerConnection": { + "description": "Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "type": "integer", + "format": "int32" + }, + "maxPendingRequests": { + "description": "Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "type": "integer", + "format": "int32" + }, + "maxRequests": { + "format": "int32", + "description": "The maximum number of parallel requests that allowed to the backend service. If not specified, there is no limit.", + "type": "integer" + }, + "maxConnections": { + "description": "Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "format": "int32", + "type": "integer" + }, + "maxRetries": { + "type": "integer", + "description": "Not supported when the backend service is referenced by a URL map that is bound to target gRPC proxy that has validateForProxyless field set to true.", + "format": "int32" + } + }, + "id": "CircuitBreakers" + }, + "AutoscalerStatusDetails": { + "properties": { + "type": { + "type": "string", + "enum": [ + "ALL_INSTANCES_UNHEALTHY", + "BACKEND_SERVICE_DOES_NOT_EXIST", + "CAPPED_AT_MAX_NUM_REPLICAS", + "CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE", + "CUSTOM_METRIC_INVALID", + "MIN_EQUALS_MAX", + "MISSING_CUSTOM_METRIC_DATA_POINTS", + "MISSING_LOAD_BALANCING_DATA_POINTS", + "MODE_OFF", + "MODE_ONLY_SCALE_OUT", + "MODE_ONLY_UP", + "MORE_THAN_ONE_BACKEND_SERVICE", + "NOT_ENOUGH_QUOTA_AVAILABLE", + "REGION_RESOURCE_STOCKOUT", + "SCALING_TARGET_DOES_NOT_EXIST", + "SCHEDULED_INSTANCES_GREATER_THAN_AUTOSCALER_MAX", + "SCHEDULED_INSTANCES_LESS_THAN_AUTOSCALER_MIN", + "UNKNOWN", + "UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION", + "ZONE_RESOURCE_STOCKOUT" + ], + "enumDescriptions": [ + "All instances in the instance group are unhealthy (not in RUNNING state).", + "There is no backend service attached to the instance group.", + "Autoscaler recommends a size greater than maxNumReplicas.", + "The custom metric samples are not exported often enough to be a credible base for autoscaling.", + "The custom metric that was specified does not exist or does not have the necessary labels.", + "The minNumReplicas is equal to maxNumReplicas. This means the autoscaler cannot add or remove instances from the instance group.", + "The autoscaler did not receive any data from the custom metric configured for autoscaling.", + "The autoscaler is configured to scale based on a load balancing signal but the instance group has not received any requests from the load balancer.", + "Autoscaling is turned off. The number of instances in the group won't change automatically. The autoscaling configuration is preserved.", + "Autoscaling is in the \"Autoscale only scale out\" mode. Instances in the group will be only added.", + "Autoscaling is in the \"Autoscale only out\" mode. Instances in the group will be only added.", + "The instance group cannot be autoscaled because it has more than one backend service attached to it.", + "There is insufficient quota for the necessary resources, such as CPU or number of instances.", + "Showed only for regional autoscalers: there is a resource stockout in the chosen region.", + "The target to be scaled does not exist.", + "For some scaling schedules minRequiredReplicas is greater than maxNumReplicas. Autoscaler always recommends at most maxNumReplicas instances.", + "For some scaling schedules minRequiredReplicas is less than minNumReplicas. Autoscaler always recommends at least minNumReplicas instances.", + "", + "Autoscaling does not work with an HTTP/S load balancer that has been configured for maxRate.", + "For zonal autoscalers: there is a resource stockout in the chosen zone. For regional autoscalers: in at least one of the zones you're using there is a resource stockout." + ], + "description": "The type of error, warning, or notice returned. Current set of possible values: - ALL_INSTANCES_UNHEALTHY (WARNING): All instances in the instance group are unhealthy (not in RUNNING state). - BACKEND_SERVICE_DOES_NOT_EXIST (ERROR): There is no backend service attached to the instance group. - CAPPED_AT_MAX_NUM_REPLICAS (WARNING): Autoscaler recommends a size greater than maxNumReplicas. - CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE (WARNING): The custom metric samples are not exported often enough to be a credible base for autoscaling. - CUSTOM_METRIC_INVALID (ERROR): The custom metric that was specified does not exist or does not have the necessary labels. - MIN_EQUALS_MAX (WARNING): The minNumReplicas is equal to maxNumReplicas. This means the autoscaler cannot add or remove instances from the instance group. - MISSING_CUSTOM_METRIC_DATA_POINTS (WARNING): The autoscaler did not receive any data from the custom metric configured for autoscaling. - MISSING_LOAD_BALANCING_DATA_POINTS (WARNING): The autoscaler is configured to scale based on a load balancing signal but the instance group has not received any requests from the load balancer. - MODE_OFF (WARNING): Autoscaling is turned off. The number of instances in the group won't change automatically. The autoscaling configuration is preserved. - MODE_ONLY_UP (WARNING): Autoscaling is in the \"Autoscale only out\" mode. The autoscaler can add instances but not remove any. - MORE_THAN_ONE_BACKEND_SERVICE (ERROR): The instance group cannot be autoscaled because it has more than one backend service attached to it. - NOT_ENOUGH_QUOTA_AVAILABLE (ERROR): There is insufficient quota for the necessary resources, such as CPU or number of instances. - REGION_RESOURCE_STOCKOUT (ERROR): Shown only for regional autoscalers: there is a resource stockout in the chosen region. - SCALING_TARGET_DOES_NOT_EXIST (ERROR): The target to be scaled does not exist. - UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION (ERROR): Autoscaling does not work with an HTTP/S load balancer that has been configured for maxRate. - ZONE_RESOURCE_STOCKOUT (ERROR): For zonal autoscalers: there is a resource stockout in the chosen zone. For regional autoscalers: in at least one of the zones you're using there is a resource stockout. New values might be added in the future. Some of the values might not be available in all API versions." + }, + "message": { + "type": "string", + "description": "The status message." + } + }, + "id": "AutoscalerStatusDetails", + "type": "object" + }, + "ServiceAttachmentConsumerProjectLimit": { + "id": "ServiceAttachmentConsumerProjectLimit", + "properties": { + "projectIdOrNum": { + "type": "string", + "description": "The project id or number for the project to set the limit for." + }, + "connectionLimit": { + "format": "uint32", + "description": "The value of the limit to set.", + "type": "integer" + } + }, + "type": "object" + }, + "RouterStatusResponse": { + "properties": { + "result": { + "$ref": "RouterStatus" + }, + "kind": { + "default": "compute#routerStatusResponse", + "description": "Type of resource.", + "type": "string" + } + }, + "type": "object", + "id": "RouterStatusResponse" + }, + "AutoscalingPolicyScalingSchedule": { + "type": "object", + "id": "AutoscalingPolicyScalingSchedule", + "properties": { + "timeZone": { + "description": "The time zone to use when interpreting the schedule. The value of this field must be a time zone name from the tz database: http://en.wikipedia.org/wiki/Tz_database. This field is assigned a default value of “UTC” if left empty.", + "type": "string" + }, + "disabled": { + "description": "A boolean value that specifies whether a scaling schedule can influence autoscaler recommendations. If set to true, then a scaling schedule has no effect. This field is optional, and its value is false by default.", + "type": "boolean" + }, + "schedule": { + "type": "string", + "description": "The start timestamps of time intervals when this scaling schedule is to provide a scaling signal. This field uses the extended cron format (with an optional year field). The expression can describe a single timestamp if the optional year is set, in which case the scaling schedule runs once. The schedule is interpreted with respect to time_zone. This field is required. Note: These timestamps only describe when autoscaler starts providing the scaling signal. The VMs need additional time to become serving." + }, + "description": { + "type": "string", + "description": "A description of a scaling schedule." + }, + "durationSec": { + "type": "integer", + "description": "The duration of time intervals, in seconds, for which this scaling schedule is to run. The minimum allowed value is 300. This field is required.", + "format": "int32" + }, + "minRequiredReplicas": { + "description": "The minimum number of VM instances that the autoscaler will recommend in time intervals starting according to schedule. This field is required.", + "type": "integer", + "format": "int32" + } + }, + "description": "Scaling based on user-defined schedule. The message describes a single scaling schedule. A scaling schedule changes the minimum number of VM instances an autoscaler can recommend, which can trigger scaling out." + }, + "DisksResizeRequest": { + "type": "object", + "id": "DisksResizeRequest", + "properties": { + "sizeGb": { + "type": "string", + "description": "The new size of the persistent disk, which is specified in GB.", + "format": "int64" + } + } + }, + "ResourcePolicyResourceStatus": { + "description": "Contains output only fields. Use this sub-message for all output fields set on ResourcePolicy. The internal structure of this \"status\" field should mimic the structure of ResourcePolicy proto specification.", + "properties": { + "instanceSchedulePolicy": { + "description": "[Output Only] Specifies a set of output values reffering to the instance_schedule_policy system status. This field should have the same name as corresponding policy field.", + "$ref": "ResourcePolicyResourceStatusInstanceSchedulePolicyStatus" + } + }, + "id": "ResourcePolicyResourceStatus", + "type": "object" + }, + "FirewallPolicyList": { + "properties": { + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#firewallPolicyList for listsof FirewallPolicies", + "default": "compute#firewallPolicyList" + }, + "items": { + "description": "A list of FirewallPolicy resources.", + "items": { + "$ref": "FirewallPolicy" + }, + "type": "array" + } + }, + "type": "object", + "id": "FirewallPolicyList" + }, + "TargetHttpProxyAggregatedList": { + "type": "object", + "id": "TargetHttpProxyAggregatedList", + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "unreachables": { + "type": "array", + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + } + }, + "kind": { + "type": "string", + "default": "compute#targetHttpProxyAggregatedList", + "description": "[Output Only] Type of resource. Always compute#targetHttpProxyAggregatedList for lists of Target HTTP Proxies." + }, + "items": { + "type": "object", + "additionalProperties": { + "$ref": "TargetHttpProxiesScopedList", + "description": "Name of the scope containing this set of TargetHttpProxies." + }, + "description": "A list of TargetHttpProxiesScopedList resources." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + } + }, + "RegionUrlMapsValidateRequest": { + "properties": { + "resource": { + "$ref": "UrlMap", + "description": "Content of the UrlMap to be validated." + } + }, + "id": "RegionUrlMapsValidateRequest", + "type": "object" + }, + "ProjectsSetDefaultNetworkTierRequest": { + "properties": { + "networkTier": { + "description": "Default network tier to be set.", + "enumDescriptions": [ + "High quality, Google-grade network tier, support for all networking products.", + "Public internet quality, only limited support for other networking products." + ], + "type": "string", + "enum": [ + "PREMIUM", + "STANDARD" + ] + } + }, + "id": "ProjectsSetDefaultNetworkTierRequest", + "type": "object" + }, + "NamedPort": { + "type": "object", + "id": "NamedPort", + "properties": { + "port": { + "format": "int32", + "type": "integer", + "description": "The port number, which can be a value between 1 and 65535." + }, + "name": { + "description": "The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.", + "type": "string" + } + }, + "description": "The named port. For example: \u003c\"http\", 80\u003e." + }, + "ReservationAffinity": { + "type": "object", + "description": "Specifies the reservations that this instance can consume from.", + "properties": { + "consumeReservationType": { + "type": "string", + "enum": [ + "ANY_RESERVATION", + "NO_RESERVATION", + "SPECIFIC_RESERVATION", + "UNSPECIFIED" + ], + "enumDescriptions": [ + "Consume any allocation available.", + "Do not consume from any allocated capacity.", + "Must consume from a specific reservation. Must specify key value fields for specifying the reservations.", + "" + ], + "description": "Specifies the type of reservation from which this instance can consume resources: ANY_RESERVATION (default), SPECIFIC_RESERVATION, or NO_RESERVATION. See Consuming reserved instances for examples." + }, + "values": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Corresponds to the label values of a reservation resource. This can be either a name to a reservation in the same project or \"projects/different-project/reservations/some-reservation-name\" to target a shared reservation in the same zone but in a different project." + }, + "key": { + "description": "Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify googleapis.com/reservation-name as the key and specify the name of your reservation as its value.", + "type": "string" + } + }, + "id": "ReservationAffinity" + }, + "NodeTypesScopedList": { + "type": "object", + "id": "NodeTypesScopedList", + "properties": { + "nodeTypes": { + "type": "array", + "description": "[Output Only] A list of node types contained in this scope.", + "items": { + "$ref": "NodeType" + } + }, + "warning": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "description": "[Output Only] An informational warning that appears when the node types list is empty.", + "type": "object" + } + } + }, + "AllocationSpecificSKUAllocationReservedInstanceProperties": { + "type": "object", + "id": "AllocationSpecificSKUAllocationReservedInstanceProperties", + "description": "Properties of the SKU instances being reserved. Next ID: 9", + "properties": { + "guestAccelerators": { + "items": { + "$ref": "AcceleratorConfig" + }, + "description": "Specifies accelerator type and count.", + "type": "array" + }, + "locationHint": { + "type": "string", + "description": "An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API." + }, + "localSsds": { + "type": "array", + "description": "Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.", + "items": { + "$ref": "AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk" + } + }, + "machineType": { + "type": "string", + "description": "Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern." + }, + "minCpuPlatform": { + "description": "Minimum cpu platform the reservation.", + "type": "string" + } + } + }, + "TargetPoolsScopedList": { + "type": "object", + "id": "TargetPoolsScopedList", + "properties": { + "targetPools": { + "items": { + "$ref": "TargetPool" + }, + "description": "A list of target pools contained in this scope.", + "type": "array" + }, + "warning": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "description": "Informational warning which replaces the list of addresses when the list is empty." + } + } + }, + "Condition": { + "description": "This is deprecated and has no effect. Do not use.", + "type": "object", + "properties": { + "sys": { + "enumDescriptions": [ + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use." + ], + "description": "This is deprecated and has no effect. Do not use.", + "enum": [ + "IP", + "NAME", + "NO_ATTR", + "REGION", + "SERVICE" + ], + "type": "string" + }, + "iam": { + "enum": [ + "APPROVER", + "ATTRIBUTION", + "AUTHORITY", + "CREDENTIALS_TYPE", + "CREDS_ASSERTION", + "JUSTIFICATION_TYPE", + "NO_ATTR", + "SECURITY_REALM" + ], + "enumDescriptions": [ + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use." + ], + "description": "This is deprecated and has no effect. Do not use.", + "type": "string" + }, + "op": { + "enum": [ + "DISCHARGED", + "EQUALS", + "IN", + "NOT_EQUALS", + "NOT_IN", + "NO_OP" + ], + "description": "This is deprecated and has no effect. Do not use.", + "type": "string", + "enumDescriptions": [ + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use." + ] + }, + "svc": { + "description": "This is deprecated and has no effect. Do not use.", + "type": "string" + }, + "values": { + "items": { + "type": "string" + }, + "description": "This is deprecated and has no effect. Do not use.", + "type": "array" + } + }, + "id": "Condition" + }, + "NodeTemplatesScopedList": { + "type": "object", + "id": "NodeTemplatesScopedList", + "properties": { + "warning": { + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + } + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object", + "description": "[Output Only] An informational warning that appears when the node templates list is empty." + }, + "nodeTemplates": { + "items": { + "$ref": "NodeTemplate" + }, + "type": "array", + "description": "[Output Only] A list of node templates contained in this scope." + } + } + }, + "InstanceProperties": { + "type": "object", + "properties": { + "shieldedInstanceConfig": { + "$ref": "ShieldedInstanceConfig" + }, + "metadata": { + "$ref": "Metadata", + "description": "The metadata key/value pairs to assign to instances that are created from these properties. These pairs can consist of custom metadata or predefined keys. See Project and instance metadata for more information." + }, + "networkInterfaces": { + "items": { + "$ref": "NetworkInterface" + }, + "type": "array", + "description": "An array of network access configurations for this interface." + }, + "guestAccelerators": { + "items": { + "$ref": "AcceleratorConfig" + }, + "description": "A list of guest accelerator cards' type and count to use for instances created from these properties.", + "type": "array" + }, + "resourcePolicies": { + "items": { + "type": "string" + }, + "description": "Resource policies (names, not ULRs) applied to instances created from these properties.", + "type": "array" + }, + "reservationAffinity": { + "$ref": "ReservationAffinity", + "description": "Specifies the reservations that instances can consume from." + }, + "serviceAccounts": { + "items": { + "$ref": "ServiceAccount" + }, + "description": "A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from these properties. Use metadata queries to obtain the access tokens for these instances.", + "type": "array" + }, + "scheduling": { + "$ref": "Scheduling", + "description": "Specifies the scheduling options for the instances that are created from these properties." + }, + "confidentialInstanceConfig": { + "description": "Specifies the Confidential Instance options.", + "$ref": "ConfidentialInstanceConfig" + }, + "privateIpv6GoogleAccess": { + "description": "The private IPv6 google access type for VMs. If not specified, use INHERIT_FROM_SUBNETWORK as default.", + "type": "string", + "enum": [ + "ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE", + "ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE", + "INHERIT_FROM_SUBNETWORK" + ], + "enumDescriptions": [ + "Bidirectional private IPv6 access to/from Google services. If specified, the subnetwork who is attached to the instance's default network interface will be assigned an internal IPv6 prefix if it doesn't have before.", + "Outbound private IPv6 access from VMs in this subnet to Google services. If specified, the subnetwork who is attached to the instance's default network interface will be assigned an internal IPv6 prefix if it doesn't have before.", + "Each network interface inherits PrivateIpv6GoogleAccess from its subnetwork." + ] + }, + "machineType": { + "type": "string", + "description": "The machine type to use for instances that are created from these properties.", + "annotations": { + "required": [ + "compute.instanceTemplates.insert" + ] + } + }, + "advancedMachineFeatures": { + "description": "Controls for advanced machine-related behavior features.", + "$ref": "AdvancedMachineFeatures" + }, + "disks": { + "type": "array", + "description": "An array of disks that are associated with the instances that are created from these properties.", + "items": { + "$ref": "AttachedDisk" + } + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to instances that are created from these properties." + }, + "minCpuPlatform": { + "type": "string", + "description": "Minimum cpu/platform to be used by instances. The instance may be scheduled on the specified or newer cpu/platform. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\". For more information, read Specifying a Minimum CPU Platform." + }, + "canIpForward": { + "type": "boolean", + "description": "Enables instances created based on these properties to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the Enable IP forwarding documentation for more information." + }, + "tags": { + "$ref": "Tags", + "description": "A list of tags to apply to the instances that are created from these properties. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035." + }, + "description": { + "description": "An optional text description for the instances that are created from these properties.", + "type": "string" + } + }, + "id": "InstanceProperties" + }, + "FirewallPolicy": { + "id": "FirewallPolicy", + "properties": { + "associations": { + "description": "A list of associations that belong to this firewall policy.", + "type": "array", + "items": { + "$ref": "FirewallPolicyAssociation" + } + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "selfLinkWithId": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource with the resource id." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "name": { + "type": "string", + "description": "[Output Only] Name of the resource. It is a numeric ID allocated by GCP which uniquely identifies the Firewall Policy." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "parent": { + "type": "string", + "description": "[Output Only] The parent of the firewall policy." + }, + "kind": { + "default": "compute#firewallPolicy", + "type": "string", + "description": "[Output only] Type of the resource. Always compute#firewallPolicyfor firewall policies" + }, + "rules": { + "description": "A list of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match \"*\"). If no rules are provided when creating a firewall policy, a default rule with action \"allow\" will be added.", + "type": "array", + "items": { + "$ref": "FirewallPolicyRule" + } + }, + "shortName": { + "type": "string", + "description": "User-provided name of the Organization firewall plicy. The name should be unique in the organization in which the firewall policy is created. This name must be set on creation and cannot be changed. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "fingerprint": { + "type": "string", + "description": "Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make get() request to the firewall policy.", + "format": "byte" + }, + "ruleTupleCount": { + "format": "int32", + "description": "[Output Only] Total count of all firewall policy rule tuples. A firewall policy can not exceed a set number of tuples.", + "type": "integer" + }, + "id": { + "type": "string", + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "displayName": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "description": "Deprecated, please use short name instead. User-provided name of the Organization firewall policy. The name should be unique in the organization in which the firewall policy is created. This name must be set on creation and cannot be changed. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + } + }, + "type": "object", + "description": "Represents a Firewall Policy resource." + }, + "ExternalVpnGatewayInterface": { + "type": "object", + "id": "ExternalVpnGatewayInterface", + "description": "The interface for the external VPN gateway.", + "properties": { + "ipAddress": { + "description": "IP address of the interface in the external VPN gateway. Only IPv4 is supported. This IP address can be either from your on-premise gateway or another Cloud provider's VPN gateway, it cannot be an IP address from Google Compute Engine.", + "type": "string" + }, + "id": { + "format": "uint32", + "description": "The numeric ID of this interface. The allowed input values for this id for different redundancy types of external VPN gateway: - SINGLE_IP_INTERNALLY_REDUNDANT - 0 - TWO_IPS_REDUNDANCY - 0, 1 - FOUR_IPS_REDUNDANCY - 0, 1, 2, 3 ", + "type": "integer" + } + } + }, + "ServiceAccount": { + "type": "object", + "properties": { + "email": { + "description": "Email address of the service account.", + "type": "string" + }, + "scopes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of scopes to be made available for this service account." + } + }, + "description": "A service account.", + "id": "ServiceAccount" + }, + "TargetReference": { + "properties": { + "target": { + "type": "string" + } + }, + "id": "TargetReference", + "type": "object" + }, + "InterconnectDiagnosticsLinkStatus": { + "id": "InterconnectDiagnosticsLinkStatus", + "properties": { + "googleDemarc": { + "description": "The Demarc address assigned by Google and provided in the LoA.", + "type": "string" + }, + "transmittingOpticalPower": { + "description": "An InterconnectDiagnostics.LinkOpticalPower object, describing the current value and status of the transmitted light level.", + "$ref": "InterconnectDiagnosticsLinkOpticalPower" + }, + "receivingOpticalPower": { + "description": "An InterconnectDiagnostics.LinkOpticalPower object, describing the current value and status of the received light level.", + "$ref": "InterconnectDiagnosticsLinkOpticalPower" + }, + "circuitId": { + "description": "The unique ID for this link assigned during turn up by Google.", + "type": "string" + }, + "arpCaches": { + "type": "array", + "items": { + "$ref": "InterconnectDiagnosticsARPEntry" + }, + "description": "A list of InterconnectDiagnostics.ARPEntry objects, describing the ARP neighbor entries seen on this link. This will be empty if the link is bundled" + }, + "lacpStatus": { + "$ref": "InterconnectDiagnosticsLinkLACPStatus" + } + }, + "type": "object" + }, + "RegionInstanceGroupManagersApplyUpdatesRequest": { + "id": "RegionInstanceGroupManagersApplyUpdatesRequest", + "description": "RegionInstanceGroupManagers.applyUpdatesToInstances", + "properties": { + "allInstances": { + "description": "Flag to update all instances instead of specified list of “instances”. If the flag is set to true then the instances may not be specified in the request.", + "type": "boolean" + }, + "minimalAction": { + "enumDescriptions": [ + "Do not perform any action.", + "Updates applied in runtime, instances will not be disrupted.", + "Old instances will be deleted. New instances will be created from the target template.", + "Every instance will be restarted." + ], + "type": "string", + "description": "The minimal action that you want to perform on each instance during the update: - REPLACE: At minimum, delete the instance and create it again. - RESTART: Stop the instance and start it again. - REFRESH: Do not stop the instance. - NONE: Do not disrupt the instance at all. By default, the minimum action is NONE. If your update requires a more disruptive action than you set with this flag, the necessary action is performed to execute the update.", + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ] + }, + "mostDisruptiveAllowedAction": { + "type": "string", + "description": "The most disruptive action that you want to perform on each instance during the update: - REPLACE: Delete the instance and create it again. - RESTART: Stop the instance and start it again. - REFRESH: Do not stop the instance. - NONE: Do not disrupt the instance at all. By default, the most disruptive allowed action is REPLACE. If your update requires a more disruptive action than you set with this flag, the update request will fail.", + "enumDescriptions": [ + "Do not perform any action.", + "Updates applied in runtime, instances will not be disrupted.", + "Old instances will be deleted. New instances will be created from the target template.", + "Every instance will be restarted." + ], + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ] + }, + "instances": { + "items": { + "type": "string" + }, + "description": "The list of URLs of one or more instances for which you want to apply updates. Each URL can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "type": "array" + } + }, + "type": "object" + }, + "InstanceGroupManagerStatusStatefulPerInstanceConfigs": { + "id": "InstanceGroupManagerStatusStatefulPerInstanceConfigs", + "type": "object", + "properties": { + "allEffective": { + "description": "A bit indicating if all of the group's per-instance configs (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs.", + "type": "boolean" + } + } + }, + "NodeTemplateList": { + "id": "NodeTemplateList", + "description": "Contains a list of node templates.", + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "description": "A list of NodeTemplate resources.", + "items": { + "$ref": "NodeTemplate" + }, + "type": "array" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource.Always compute#nodeTemplateList for lists of node templates.", + "default": "compute#nodeTemplateList" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "warning": { + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + } + }, + "type": "object" + }, + "InterconnectList": { + "properties": { + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + } + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#interconnectList for lists of interconnects.", + "default": "compute#interconnectList", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "items": { + "items": { + "$ref": "Interconnect" + }, + "description": "A list of Interconnect resources.", + "type": "array" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + }, + "description": "Response to the list request, and contains a list of interconnects.", + "type": "object", + "id": "InterconnectList" + }, + "InstancesRemoveResourcePoliciesRequest": { + "id": "InstancesRemoveResourcePoliciesRequest", + "type": "object", + "properties": { + "resourcePolicies": { + "items": { + "type": "string" + }, + "description": "Resource policies to be removed from this instance.", + "type": "array" + } + } + }, + "TargetVpnGateway": { + "id": "TargetVpnGateway", + "type": "object", + "properties": { + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "default": "compute#targetVpnGateway", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string", + "format": "uint64" + }, + "network": { + "type": "string", + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + }, + "description": "URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "forwardingRules": { + "description": "[Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules are created using compute.forwardingRules.insert and associated with a VPN gateway.", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + } + }, + "status": { + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY" + ], + "description": "[Output Only] The status of the VPN gateway, which can be one of the following: CREATING, READY, FAILED, or DELETING.", + "type": "string", + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "tunnels": { + "type": "array", + "description": "[Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created using the compute.vpntunnels.insert method and associated with a VPN gateway.", + "items": { + "type": "string" + } + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the target VPN gateway resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body." + } + }, + "description": "Represents a Target VPN Gateway resource. The target VPN gateway resource represents a Classic Cloud VPN gateway. For more information, read the the Cloud VPN Overview." + }, + "NetworkInterface": { + "properties": { + "queueCount": { + "type": "integer", + "description": "The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It'll be empty if not specified by the users.", + "format": "int32" + }, + "ipv6AccessType": { + "enumDescriptions": [ + "This network interface can have external IPv6.", + "IPv6 access type not set. Means this network interface hasn't been turned on IPv6 yet." + ], + "description": "[Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork. Valid only if stackType is IPV4_IPV6.", + "enum": [ + "EXTERNAL", + "UNSPECIFIED_IPV6_ACCESS_TYPE" + ], + "type": "string" + }, + "ipv6Address": { + "type": "string", + "description": "[Output Only] An IPv6 internal network address for this network interface." + }, + "stackType": { + "enum": [ + "IPV4_IPV6", + "IPV4_ONLY", + "UNSPECIFIED_STACK_TYPE" + ], + "type": "string", + "description": "The stack type for this network interface to identify whether the IPv6 feature is enabled or not. If not specified, IPV4_ONLY will be used. This field can be both set at instance creation and update network interface operations.", + "enumDescriptions": [ + "The network interface can have both IPv4 and IPv6 addresses.", + "The network interface will be assigned IPv4 address.", + "" + ] + }, + "network": { + "description": "URL of the network resource for this instance. When creating an instance, if neither the network nor the subnetwork is specified, the default network global/networks/default is used; if the network is not specified but the subnetwork is specified, the network is inferred. If you specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: - https://www.googleapis.com/compute/v1/projects/project/global/networks/ network - projects/project/global/networks/network - global/networks/default ", + "type": "string" + }, + "networkIP": { + "description": "An IPv4 internal IP address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system.", + "type": "string" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#networkInterface for network interfaces.", + "default": "compute#networkInterface" + }, + "ipv6AccessConfigs": { + "description": "An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access.", + "items": { + "$ref": "AccessConfig" + }, + "type": "array" + }, + "accessConfigs": { + "type": "array", + "description": "An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access.", + "items": { + "$ref": "AccessConfig" + } + }, + "aliasIpRanges": { + "items": { + "$ref": "AliasIpRange" + }, + "type": "array", + "description": "An array of alias IP ranges for this network interface. You can only specify this field for network interfaces in VPC networks." + }, + "name": { + "description": "[Output Only] The name of the network interface, which is generated by the server. For network devices, these are eth0, eth1, etc.", + "type": "string" + }, + "subnetwork": { + "type": "string", + "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not specify this field. If the network is in auto subnet mode, specifying the subnetwork is optional. If the network is in custom subnet mode, specifying the subnetwork is required. If you specify this field, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: - https://www.googleapis.com/compute/v1/projects/project/regions/region /subnetworks/subnetwork - regions/region/subnetworks/subnetwork " + }, + "nicType": { + "enum": [ + "GVNIC", + "UNSPECIFIED_NIC_TYPE", + "VIRTIO_NET" + ], + "type": "string", + "enumDescriptions": [ + "GVNIC", + "No type specified.", + "VIRTIO" + ], + "description": "The type of vNIC to be used on this interface. This may be gVNIC or VirtioNet." + }, + "fingerprint": { + "format": "byte", + "description": "Fingerprint hash of contents stored in this network interface. This field will be ignored when inserting an Instance or adding a NetworkInterface. An up-to-date fingerprint must be provided in order to update the NetworkInterface. The request will fail with error 400 Bad Request if the fingerprint is not provided, or 412 Precondition Failed if the fingerprint is out of date.", + "type": "string" + } + }, + "type": "object", + "id": "NetworkInterface", + "description": "A network interface resource attached to an instance." + }, + "PacketMirroringForwardingRuleInfo": { + "properties": { + "url": { + "type": "string", + "description": "Resource URL to the forwarding rule representing the ILB configured as destination of the mirrored traffic." + }, + "canonicalUrl": { + "description": "[Output Only] Unique identifier for the forwarding rule; defined by the server.", + "type": "string" + } + }, + "type": "object", + "id": "PacketMirroringForwardingRuleInfo" + }, + "SslCertificateManagedSslCertificate": { + "type": "object", + "properties": { + "domainStatus": { + "description": "[Output only] Detailed statuses of the domains specified for managed certificate resource.", + "additionalProperties": { + "type": "string", + "enumDescriptions": [ + "A managed certificate can be provisioned, no issues for this domain.", + "", + "Failed to check CAA records for the domain.", + "Certificate issuance forbidden by an explicit CAA record for the domain.", + "There seems to be problem with the user's DNS or load balancer configuration for this domain.", + "Reached rate-limit for certificates per top-level private domain.", + "Certificate provisioning for this domain is under way. GCP will attempt to provision the first certificate." + ], + "enum": [ + "ACTIVE", + "DOMAIN_STATUS_UNSPECIFIED", + "FAILED_CAA_CHECKING", + "FAILED_CAA_FORBIDDEN", + "FAILED_NOT_VISIBLE", + "FAILED_RATE_LIMITED", + "PROVISIONING" + ] + }, + "type": "object" + }, + "status": { + "type": "string", + "enum": [ + "ACTIVE", + "MANAGED_CERTIFICATE_STATUS_UNSPECIFIED", + "PROVISIONING", + "PROVISIONING_FAILED", + "PROVISIONING_FAILED_PERMANENTLY", + "RENEWAL_FAILED" + ], + "enumDescriptions": [ + "The certificate management is working, and a certificate has been provisioned.", + "", + "The certificate management is working. GCP will attempt to provision the first certificate.", + "Certificate provisioning failed due to an issue with the DNS or load balancing configuration. For details of which domain failed, consult domain_status field.", + "Certificate provisioning failed due to an issue with the DNS or load balancing configuration. It won't be retried. To try again delete and create a new managed SslCertificate resource. For details of which domain failed, consult domain_status field.", + "Renewal of the certificate has failed due to an issue with the DNS or load balancing configuration. The existing cert is still serving; however, it will expire shortly. To provision a renewed certificate, delete and create a new managed SslCertificate resource. For details on which domain failed, consult domain_status field." + ], + "description": "[Output only] Status of the managed certificate resource." + }, + "domains": { + "items": { + "type": "string" + }, + "description": "The domains for which a managed SSL certificate will be generated. Each Google-managed SSL certificate supports up to the [maximum number of domains per Google-managed SSL certificate](/load-balancing/docs/quotas#ssl_certificates).", + "type": "array" + } + }, + "id": "SslCertificateManagedSslCertificate", + "description": "Configuration and status of a managed SSL certificate." + }, + "RouterStatusNatStatus": { + "properties": { + "userAllocatedNatIps": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of IPs user-allocated for NAT. They will be raw IP strings like \"179.12.26.133\"." + }, + "drainUserAllocatedNatIps": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of IPs user-allocated for NAT that are in drain mode. Example: [\"1.1.1.1\", \"179.12.26.133\"]." + }, + "name": { + "type": "string", + "description": "Unique name of this NAT." + }, + "userAllocatedNatIpResources": { + "items": { + "type": "string" + }, + "description": "A list of fully qualified URLs of reserved IP address resources.", + "type": "array" + }, + "minExtraNatIpsNeeded": { + "description": "The number of extra IPs to allocate. This will be greater than 0 only if user-specified IPs are NOT enough to allow all configured VMs to use NAT. This value is meaningful only when auto-allocation of NAT IPs is *not* used.", + "type": "integer", + "format": "int32" + }, + "ruleStatus": { + "type": "array", + "description": "Status of rules in this NAT.", + "items": { + "$ref": "RouterStatusNatStatusNatRuleStatus" + } + }, + "drainAutoAllocatedNatIps": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of IPs auto-allocated for NAT that are in drain mode. Example: [\"1.1.1.1\", \"179.12.26.133\"]." + }, + "numVmEndpointsWithNatMappings": { + "type": "integer", + "description": "Number of VM endpoints (i.e., Nics) that can use NAT.", + "format": "int32" + }, + "autoAllocatedNatIps": { + "items": { + "type": "string" + }, + "description": "A list of IPs auto-allocated for NAT. Example: [\"1.1.1.1\", \"129.2.16.89\"]", + "type": "array" + } + }, + "description": "Status of a NAT contained in this router.", + "id": "RouterStatusNatStatus", + "type": "object" + }, + "SecurityPolicyList": { + "type": "object", + "properties": { + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + } + }, + "type": "object" + }, + "items": { + "type": "array", + "description": "A list of SecurityPolicy resources.", + "items": { + "$ref": "SecurityPolicy" + } + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#securityPolicyList for listsof securityPolicies", + "type": "string", + "default": "compute#securityPolicyList" + } + }, + "id": "SecurityPolicyList" + }, + "LogConfigCloudAuditOptions": { + "description": "This is deprecated and has no effect. Do not use.", + "id": "LogConfigCloudAuditOptions", + "properties": { + "logName": { + "enumDescriptions": [ + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use." + ], + "enum": [ + "ADMIN_ACTIVITY", + "DATA_ACCESS", + "UNSPECIFIED_LOG_NAME" + ], + "type": "string", + "description": "This is deprecated and has no effect. Do not use." + }, + "authorizationLoggingOptions": { + "$ref": "AuthorizationLoggingOptions", + "description": "This is deprecated and has no effect. Do not use." + } + }, + "type": "object" + }, + "NodeGroupMaintenanceWindow": { + "description": "Time window specified for daily maintenance operations. GCE's internal maintenance will be performed within this window.", + "type": "object", + "id": "NodeGroupMaintenanceWindow", + "properties": { + "maintenanceDuration": { + "$ref": "Duration", + "description": "[Output only] A predetermined duration for the window, automatically chosen to be the smallest possible in the given scenario." + }, + "startTime": { + "description": "Start time of the window. This must be in UTC format that resolves to one of 00:00, 04:00, 08:00, 12:00, 16:00, or 20:00. For example, both 13:00-5 and 08:00 are valid.", + "type": "string" + } + } + }, + "DiskTypeList": { + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "DiskType" + }, + "description": "A list of DiskType resources." + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#diskTypeList for disk types.", + "default": "compute#diskTypeList", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + } + } + } + }, + "type": "object", + "description": "Contains a list of disk types.", + "id": "DiskTypeList" + }, + "UrlMapReference": { + "properties": { + "urlMap": { + "type": "string" + } + }, + "id": "UrlMapReference", + "type": "object" + }, + "ServiceAttachmentAggregatedList": { + "id": "ServiceAttachmentAggregatedList", + "type": "object", + "properties": { + "kind": { + "type": "string", + "default": "compute#serviceAttachmentAggregatedList", + "description": "Type of resource." + }, + "unreachables": { + "items": { + "type": "string" + }, + "type": "array", + "description": "[Output Only] Unreachable resources." + }, + "items": { + "type": "object", + "description": "A list of ServiceAttachmentsScopedList resources.", + "additionalProperties": { + "description": "Name of the scope containing this set of ServiceAttachments.", + "$ref": "ServiceAttachmentsScopedList" + } + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "data": { + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + } + } + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + }, + "description": "Contains a list of ServiceAttachmentsScopedList." + }, + "TargetHttpsProxiesScopedList": { + "properties": { + "targetHttpsProxies": { + "type": "array", + "items": { + "$ref": "TargetHttpsProxy" + }, + "description": "A list of TargetHttpsProxies contained in this scope." + }, + "warning": { + "description": "Informational warning which replaces the list of backend services when the list is empty.", + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + } + } + } + }, + "id": "TargetHttpsProxiesScopedList", + "type": "object" + }, + "VpnGatewayStatusVpnConnection": { + "description": "A VPN connection contains all VPN tunnels connected from this VpnGateway to the same peer gateway. The peer gateway could either be a external VPN gateway or GCP VPN gateway.", + "properties": { + "peerGcpGateway": { + "description": "URL reference to the peer side VPN gateways to which the VPN tunnels in this VPN connection are connected. This field is mutually exclusive with peer_gcp_gateway.", + "type": "string" + }, + "peerExternalGateway": { + "description": "URL reference to the peer external VPN gateways to which the VPN tunnels in this VPN connection are connected. This field is mutually exclusive with peer_gcp_gateway.", + "type": "string" + }, + "state": { + "$ref": "VpnGatewayStatusHighAvailabilityRequirementState", + "description": "HighAvailabilityRequirementState for the VPN connection." + }, + "tunnels": { + "items": { + "$ref": "VpnGatewayStatusTunnel" + }, + "description": "List of VPN tunnels that are in this VPN connection.", + "type": "array" + } + }, + "id": "VpnGatewayStatusVpnConnection", + "type": "object" + }, + "ScalingScheduleStatus": { + "type": "object", + "properties": { + "nextStartTime": { + "description": "[Output Only] The next time the scaling schedule is to become active. Note: this is a timestamp when a schedule is planned to run, but the actual time might be slightly different. The timestamp is in RFC3339 text format.", + "type": "string" + }, + "state": { + "description": "[Output Only] The current state of a scaling schedule.", + "type": "string", + "enum": [ + "ACTIVE", + "DISABLED", + "OBSOLETE", + "READY" + ], + "enumDescriptions": [ + "The current autoscaling recommendation is influenced by this scaling schedule.", + "This scaling schedule has been disabled by the user.", + "This scaling schedule will never become active again.", + "The current autoscaling recommendation is not influenced by this scaling schedule." + ] + }, + "lastStartTime": { + "description": "[Output Only] The last time the scaling schedule became active. Note: this is a timestamp when a schedule actually became active, not when it was planned to do so. The timestamp is in RFC3339 text format.", + "type": "string" + } + }, + "id": "ScalingScheduleStatus" + }, + "PathRule": { + "properties": { + "routeAction": { + "description": "In response to a matching path, the load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If routeAction specifies any weightedBackendServices, service must not be set. Conversely if service is set, routeAction cannot contain any weightedBackendServices. Only one of routeAction or urlRedirect must be set. UrlMaps for external HTTP(S) load balancers support only the urlRewrite action within a pathRule's routeAction.", + "$ref": "HttpRouteAction" + }, + "paths": { + "description": "The list of path patterns to match. Each must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or #, and those chars are not allowed here.", + "items": { + "type": "string" + }, + "type": "array" + }, + "urlRedirect": { + "description": "When a path pattern is matched, the request is redirected to a URL specified by urlRedirect. If urlRedirect is specified, service or routeAction must not be set. Not supported when the URL map is bound to target gRPC proxy.", + "$ref": "HttpRedirectAction" + }, + "service": { + "description": "The full or partial URL of the backend service resource to which traffic is directed if this rule is matched. If routeAction is additionally specified, advanced routing actions like URL Rewrites, etc. take effect prior to sending the request to the backend. However, if service is specified, routeAction cannot contain any weightedBackendService s. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of urlRedirect, service or routeAction.weightedBackendService must be set.", + "type": "string" + } + }, + "id": "PathRule", + "type": "object", + "description": "A path-matching rule for a URL. If matched, will use the specified BackendService to handle the traffic arriving at this URL." + }, + "InstancesSetServiceAccountRequest": { + "id": "InstancesSetServiceAccountRequest", + "type": "object", + "properties": { + "scopes": { + "items": { + "type": "string" + }, + "type": "array", + "description": "The list of scopes to be made available for this service account." + }, + "email": { + "type": "string", + "description": "Email address of the service account." + } + } + }, + "ServiceAttachmentList": { + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#serviceAttachment for service attachments.", + "default": "compute#serviceAttachmentList" + }, + "items": { + "type": "array", + "items": { + "$ref": "ServiceAttachment" + }, + "description": "A list of ServiceAttachment resources." + }, + "warning": { + "properties": { + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + } + }, + "type": "object", + "id": "ServiceAttachmentList" + }, + "BackendServiceCdnPolicyNegativeCachingPolicy": { + "properties": { + "ttl": { + "type": "integer", + "description": "The TTL (in seconds) for which to cache responses with the corresponding status code. The maximum allowed value is 1800s (30 minutes), noting that infrequently accessed objects may be evicted from the cache before the defined TTL.", + "format": "int32" + }, + "code": { + "type": "integer", + "description": "The HTTP status code to define a TTL against. Only HTTP status codes 300, 301, 302, 307, 308, 404, 405, 410, 421, 451 and 501 are can be specified as values, and you cannot specify a status code more than once.", + "format": "int32" + } + }, + "id": "BackendServiceCdnPolicyNegativeCachingPolicy", + "type": "object", + "description": "Specify CDN TTLs for response error codes." + }, + "RouterBgpPeerBfd": { + "properties": { + "minTransmitInterval": { + "description": "The minimum interval, in milliseconds, between BFD control packets transmitted to the peer router. The actual value is negotiated between the two routers and is equal to the greater of this value and the corresponding receive interval of the other router. If set, this value must be between 1000 and 30000. The default is 1000.", + "type": "integer", + "format": "uint32" + }, + "sessionInitializationMode": { + "type": "string", + "description": "The BFD session initialization mode for this BGP peer. If set to ACTIVE, the Cloud Router will initiate the BFD session for this BGP peer. If set to PASSIVE, the Cloud Router will wait for the peer router to initiate the BFD session for this BGP peer. If set to DISABLED, BFD is disabled for this BGP peer. The default is PASSIVE.", + "enumDescriptions": [ + "", + "", + "" + ], + "enum": [ + "ACTIVE", + "DISABLED", + "PASSIVE" + ] + }, + "multiplier": { + "description": "The number of consecutive BFD packets that must be missed before BFD declares that a peer is unavailable. If set, the value must be a value between 5 and 16. The default is 5.", + "type": "integer", + "format": "uint32" + }, + "minReceiveInterval": { + "type": "integer", + "description": "The minimum interval, in milliseconds, between BFD control packets received from the peer router. The actual value is negotiated between the two routers and is equal to the greater of this value and the transmit interval of the other router. If set, this value must be between 1000 and 30000. The default is 1000.", + "format": "uint32" + } + }, + "id": "RouterBgpPeerBfd", + "type": "object" + }, + "NetworkEndpointGroupAggregatedList": { + "properties": { + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "kind": { + "type": "string", + "default": "compute#networkEndpointGroupAggregatedList", + "description": "[Output Only] The resource type, which is always compute#networkEndpointGroupAggregatedList for aggregated lists of network endpoint groups." + }, + "warning": { + "type": "object", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + } + } + }, + "description": "[Output Only] Informational warning message." + }, + "items": { + "description": "A list of NetworkEndpointGroupsScopedList resources.", + "additionalProperties": { + "description": "The name of the scope that contains this set of network endpoint groups.", + "$ref": "NetworkEndpointGroupsScopedList" + }, + "type": "object" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "type": "array", + "items": { + "type": "string" + }, + "description": "[Output Only] Unreachable resources." + } + }, + "type": "object", + "id": "NetworkEndpointGroupAggregatedList" + }, + "HTTP2HealthCheck": { + "properties": { + "portSpecification": { + "description": "Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields.", + "type": "string", + "enumDescriptions": [ + "The port number in port is used for health checking.", + "The portName is used for health checking.", + "For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking." + ], + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ] + }, + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", + "format": "int32" + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + }, + "response": { + "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII.", + "type": "string" + }, + "proxyHeader": { + "type": "string", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ], + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE." + }, + "host": { + "description": "The value of the host header in the HTTP/2 health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "requestPath": { + "description": "The request path of the HTTP/2 health check request. The default value is /.", + "type": "string" + } + }, + "type": "object", + "id": "HTTP2HealthCheck" + }, + "SecurityPolicyAdaptiveProtectionConfig": { + "id": "SecurityPolicyAdaptiveProtectionConfig", + "type": "object", + "properties": { + "layer7DdosDefenseConfig": { + "description": "If set to true, enables Cloud Armor Machine Learning.", + "$ref": "SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig" + } + }, + "description": "Configuration options for Cloud Armor Adaptive Protection (CAAP)." + }, + "RegionInstanceGroupsListInstancesRequest": { + "id": "RegionInstanceGroupsListInstancesRequest", + "type": "object", + "properties": { + "portName": { + "description": "Name of port user is interested in. It is optional. If it is set, only information about this ports will be returned. If it is not set, all the named ports will be returned. Always lists all instances.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "instanceState": { + "description": "Instances in which state should be returned. Valid options are: 'ALL', 'RUNNING'. By default, it lists all instances.", + "enum": [ + "ALL", + "RUNNING" + ], + "type": "string", + "enumDescriptions": [ + "Matches any status of the instances, running, non-running and others.", + "Instance is in RUNNING state if it is running." + ] + } + } + }, + "FirewallPolicyAssociation": { + "type": "object", + "id": "FirewallPolicyAssociation", + "properties": { + "shortName": { + "type": "string", + "description": "[Output Only] The short name of the firewall policy of the association." + }, + "name": { + "type": "string", + "description": "The name for an association." + }, + "displayName": { + "description": "[Output Only] Deprecated, please use short name instead. The display name of the firewall policy of the association.", + "type": "string" + }, + "attachmentTarget": { + "type": "string", + "description": "The target that the firewall policy is attached to." + }, + "firewallPolicyId": { + "description": "[Output Only] The firewall policy ID of the association.", + "type": "string" + } + } + }, + "GlobalOrganizationSetPolicyRequest": { + "properties": { + "etag": { + "type": "string", + "format": "byte", + "description": "Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify the etag." + }, + "bindings": { + "type": "array", + "items": { + "$ref": "Binding" + }, + "description": "Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify bindings." + }, + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the 'resource'. The size of the policy is limited to a few 10s of KB. An empty policy is in general a valid policy but certain services (like Projects) might reject them." + } + }, + "id": "GlobalOrganizationSetPolicyRequest", + "type": "object" + }, + "GuestOsFeature": { + "description": "Guest OS features.", + "properties": { + "type": { + "description": "The ID of a supported feature. Read Enabling guest operating system features to see a list of available options.", + "enum": [ + "FEATURE_TYPE_UNSPECIFIED", + "GVNIC", + "MULTI_IP_SUBNET", + "SECURE_BOOT", + "SEV_CAPABLE", + "UEFI_COMPATIBLE", + "VIRTIO_SCSI_MULTIQUEUE", + "WINDOWS" + ], + "type": "string", + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "type": "object", + "id": "GuestOsFeature" + }, + "TargetVpnGatewayAggregatedList": { + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "type": "object", + "additionalProperties": { + "description": "[Output Only] Name of the scope containing this set of target VPN gateways.", + "$ref": "TargetVpnGatewaysScopedList" + }, + "description": "A list of TargetVpnGateway resources." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "default": "compute#targetVpnGatewayAggregatedList", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + } + } + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object", + "id": "TargetVpnGatewayAggregatedList" + }, + "PublicDelegatedPrefixList": { + "properties": { + "warning": { + "properties": { + "data": { + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "default": "compute#publicDelegatedPrefixList", + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#publicDelegatedPrefixList for public delegated prefixes." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "items": { + "description": "A list of PublicDelegatedPrefix resources.", + "items": { + "$ref": "PublicDelegatedPrefix" + }, + "type": "array" + } + }, + "id": "PublicDelegatedPrefixList", + "type": "object" + }, + "NodeTemplate": { + "properties": { + "accelerators": { + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "serverBinding": { + "$ref": "ServerBinding", + "description": "Sets the binding properties for the physical server. Valid values include: - *[Default]* RESTART_NODE_ON_ANY_SERVER: Restarts VMs on any available physical server - RESTART_NODE_ON_MINIMAL_SERVER: Restarts VMs on the same physical server whenever possible See Sole-tenant node options for more information." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "disks": { + "type": "array", + "items": { + "$ref": "LocalDisk" + } + }, + "statusMessage": { + "type": "string", + "description": "[Output Only] An optional, human-readable explanation of the status." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "name": { + "type": "string", + "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "kind": { + "type": "string", + "default": "compute#nodeTemplate", + "description": "[Output Only] The type of the resource. Always compute#nodeTemplate for node templates." + }, + "nodeType": { + "type": "string", + "description": "The node type to use for nodes group that are created from this template." + }, + "id": { + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "nodeTypeFlexibility": { + "$ref": "NodeTemplateNodeTypeFlexibility", + "description": "The flexible properties of the desired node type. Node groups that use this node template will create nodes of a type that matches these properties. This field is mutually exclusive with the node_type property; you can only define one or the other, but not both." + }, + "region": { + "description": "[Output Only] The name of the region where the node template resides, such as us-central1.", + "type": "string" + }, + "nodeAffinityLabels": { + "description": "Labels to use for node affinity, which will be used in instance scheduling.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "cpuOvercommitType": { + "type": "string", + "enum": [ + "CPU_OVERCOMMIT_TYPE_UNSPECIFIED", + "ENABLED", + "NONE" + ], + "description": "CPU overcommit.", + "enumDescriptions": [ + "", + "", + "" + ] + }, + "status": { + "description": "[Output Only] The status of the node template. One of the following values: CREATING, READY, and DELETING.", + "enum": [ + "CREATING", + "DELETING", + "INVALID", + "READY" + ], + "enumDescriptions": [ + "Resources are being allocated.", + "The node template is currently being deleted.", + "Invalid status.", + "The node template is ready." + ], + "type": "string" + } + }, + "id": "NodeTemplate", + "description": "Represent a sole-tenant Node Template resource. You can use a template to define properties for nodes in a node group. For more information, read Creating node groups and instances.", + "type": "object" + }, + "InterconnectCircuitInfo": { + "description": "Describes a single physical circuit between the Customer and Google. CircuitInfo objects are created by Google, so all fields are output only.", + "type": "object", + "id": "InterconnectCircuitInfo", + "properties": { + "googleCircuitId": { + "type": "string", + "description": "Google-assigned unique ID for this circuit. Assigned at circuit turn-up." + }, + "googleDemarcId": { + "description": "Google-side demarc ID for this circuit. Assigned at circuit turn-up and provided by Google to the customer in the LOA.", + "type": "string" + }, + "customerDemarcId": { + "description": "Customer-side demarc ID for this circuit.", + "type": "string" + } + } + }, + "ForwardingRuleList": { + "id": "ForwardingRuleList", + "type": "object", + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "description": "Type of resource.", + "default": "compute#forwardingRuleList", + "type": "string" + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "items": { + "$ref": "ForwardingRule" + }, + "description": "A list of ForwardingRule resources.", + "type": "array" + } + }, + "description": "Contains a list of ForwardingRule resources." + }, + "HttpRouteAction": { + "properties": { + "faultInjectionPolicy": { + "description": "The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by Loadbalancer on a percentage of requests before sending those request to the backend service. Similarly requests from clients can be aborted by the Loadbalancer for a percentage of requests. For the requests impacted by fault injection, timeout and retry_policy will be ignored by clients that are configured with a fault_injection_policy.", + "$ref": "HttpFaultInjection" + }, + "retryPolicy": { + "description": "Specifies the retry policy associated with this route. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true.", + "$ref": "HttpRetryPolicy" + }, + "weightedBackendServices": { + "description": "A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non-zero number. Once a backendService is identified and before forwarding the request to the backend service, advanced routing actions such as URL rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction.", + "type": "array", + "items": { + "$ref": "WeightedBackendService" + } + }, + "requestMirrorPolicy": { + "description": "Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service. Loadbalancer does not wait for responses from the shadow service. Prior to sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true.", + "$ref": "RequestMirrorPolicy" + }, + "urlRewrite": { + "description": "The spec to modify the URL of the request, prior to forwarding the request to the matched service. urlRewrite is the only action supported in UrlMaps for external HTTP(S) load balancers. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true.", + "$ref": "UrlRewrite" + }, + "timeout": { + "$ref": "Duration", + "description": "Specifies the timeout for the selected route. Timeout is computed from the time the request has been fully processed (i.e. end-of-stream) up until the response has been completely processed. Timeout includes all retries. If not specified, will use the largest timeout among all backend services associated with the route. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true." + }, + "corsPolicy": { + "$ref": "CorsPolicy", + "description": "The specification for allowing client side cross-origin requests. Please see W3C Recommendation for Cross Origin Resource Sharing Not supported when the URL map is bound to target gRPC proxy." + }, + "maxStreamDuration": { + "description": "Specifies the maximum duration (timeout) for streams on the selected route. Unlike the timeout field where the timeout duration starts from the time the request has been fully processed (i.e. end-of-stream), the duration in this field is computed from the beginning of the stream until the response has been completely processed, including all retries. A stream that does not complete in this duration is closed. If not specified, will use the largest maxStreamDuration among all backend services associated with the route. This field is only allowed if the Url map is used with backend services with loadBalancingScheme set to INTERNAL_SELF_MANAGED.", + "$ref": "Duration" + } + }, + "type": "object", + "id": "HttpRouteAction" + }, + "TargetSslProxiesSetSslCertificatesRequest": { + "properties": { + "sslCertificates": { + "items": { + "type": "string" + }, + "type": "array", + "description": "New set of URLs to SslCertificate resources to associate with this TargetSslProxy. At least one SSL certificate must be specified. Currently, you may specify up to 15 SSL certificates." + } + }, + "id": "TargetSslProxiesSetSslCertificatesRequest", + "type": "object" + }, + "PacketMirroring": { + "type": "object", + "properties": { + "filter": { + "$ref": "PacketMirroringFilter", + "description": "Filter for mirrored traffic. If unspecified, all traffic is mirrored." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "collectorIlb": { + "$ref": "PacketMirroringForwardingRuleInfo", + "description": "The Forwarding Rule resource of type loadBalancingScheme=INTERNAL that will be used as collector for mirrored traffic. The specified forwarding rule must have isMirroringCollector set to true." + }, + "network": { + "description": "Specifies the mirrored VPC network. Only packets in this network will be mirrored. All mirrored VMs should have a NIC in the given network. All mirrored subnetworks should belong to the given network.", + "$ref": "PacketMirroringNetworkInfo", + "annotations": { + "required": [ + "compute.packetMirrorings.insert" + ] + } + }, + "region": { + "type": "string", + "description": "[Output Only] URI of the region where the packetMirroring resides." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "kind": { + "default": "compute#packetMirroring", + "description": "[Output Only] Type of the resource. Always compute#packetMirroring for packet mirrorings.", + "type": "string" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.packetMirrorings.insert" + ] + }, + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "mirroredResources": { + "$ref": "PacketMirroringMirroredResourceInfo", + "description": "PacketMirroring mirroredResourceInfos. MirroredResourceInfo specifies a set of mirrored VM instances, subnetworks and/or tags for which traffic from/to all VM instances will be mirrored." + }, + "priority": { + "description": "The priority of applying this configuration. Priority is used to break ties in cases where there is more than one matching rule. In the case of two rules that apply for a given Instance, the one with the lowest-numbered priority value wins. Default value is 1000. Valid range is 0 through 65535.", + "type": "integer", + "format": "uint32" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "enable": { + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "description": "Indicates whether or not this packet mirroring takes effect. If set to FALSE, this packet mirroring policy will not be enforced on the network. The default is TRUE.", + "enum": [ + "FALSE", + "TRUE" + ] + } + }, + "id": "PacketMirroring", + "description": "Represents a Packet Mirroring resource. Packet Mirroring clones the traffic of specified instances in your Virtual Private Cloud (VPC) network and forwards it to a collector destination, such as an instance group of an internal TCP/UDP load balancer, for analysis or examination. For more information about setting up Packet Mirroring, see Using Packet Mirroring." + }, + "AutoscalerAggregatedList": { + "type": "object", + "id": "AutoscalerAggregatedList", + "properties": { + "unreachables": { + "type": "array", + "items": { + "type": "string" + }, + "description": "[Output Only] Unreachable resources. end_interface: MixerListResponseWithEtagBuilder" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#autoscalerAggregatedList for aggregated lists of autoscalers.", + "default": "compute#autoscalerAggregatedList" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + } + }, + "type": "object" + }, + "items": { + "type": "object", + "description": "A list of AutoscalersScopedList resources.", + "additionalProperties": { + "description": "[Output Only] Name of the scope containing this set of autoscalers.", + "$ref": "AutoscalersScopedList" + } + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + } + } + }, + "InstanceMoveRequest": { + "properties": { + "targetInstance": { + "description": "The URL of the target instance to move. This can be a full or partial URL. For example, the following are all valid URLs to an instance: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /instances/instance - projects/project/zones/zone/instances/instance - zones/zone/instances/instance ", + "type": "string" + }, + "destinationZone": { + "type": "string", + "description": "The URL of the destination zone to move the instance. This can be a full or partial URL. For example, the following are all valid URLs to a zone: - https://www.googleapis.com/compute/v1/projects/project/zones/zone - projects/project/zones/zone - zones/zone " + } + }, + "id": "InstanceMoveRequest", + "type": "object" + }, + "ExchangedPeeringRoutesList": { + "type": "object", + "properties": { + "items": { + "type": "array", + "description": "A list of ExchangedPeeringRoute resources.", + "items": { + "$ref": "ExchangedPeeringRoute" + } + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "warning": { + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "kind": { + "default": "compute#exchangedPeeringRoutesList", + "type": "string", + "description": "[Output Only] Type of resource. Always compute#exchangedPeeringRoutesList for exchanged peering routes lists." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + }, + "id": "ExchangedPeeringRoutesList" + }, + "NetworkEndpointGroupCloudFunction": { + "properties": { + "function": { + "type": "string", + "description": "A user-defined name of the Cloud Function. The function name is case-sensitive and must be 1-63 characters long. Example value: \"func1\"." + }, + "urlMask": { + "description": "A template to parse function field from a request URL. URL mask allows for routing to multiple Cloud Functions without having to create multiple Network Endpoint Groups and backend services. For example, request URLs \" mydomain.com/function1\" and \"mydomain.com/function2\" can be backed by the same Serverless NEG with URL mask \"/\". The URL mask will parse them to { function = \"function1\" } and { function = \"function2\" } respectively.", + "type": "string" + } + }, + "type": "object", + "id": "NetworkEndpointGroupCloudFunction", + "description": "Configuration for a Cloud Function network endpoint group (NEG). The function must be provided explicitly or in the URL mask. Note: Cloud Function must be in the same project and located in the same region as the Serverless NEG." + }, + "RouteAsPath": { + "id": "RouteAsPath", + "type": "object", + "properties": { + "asLists": { + "items": { + "type": "integer", + "format": "uint32" + }, + "description": "[Output Only] The AS numbers of the AS Path.", + "type": "array" + }, + "pathSegmentType": { + "type": "string", + "enum": [ + "AS_CONFED_SEQUENCE", + "AS_CONFED_SET", + "AS_SEQUENCE", + "AS_SET" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "description": "[Output Only] The type of the AS Path, which can be one of the following values: - 'AS_SET': unordered set of autonomous systems that the route in has traversed - 'AS_SEQUENCE': ordered set of autonomous systems that the route has traversed - 'AS_CONFED_SEQUENCE': ordered set of Member Autonomous Systems in the local confederation that the route has traversed - 'AS_CONFED_SET': unordered set of Member Autonomous Systems in the local confederation that the route has traversed " + } + } + }, + "Scheduling": { + "id": "Scheduling", + "description": "Sets the scheduling options for an Instance. NextID: 21", + "properties": { + "preemptible": { + "type": "boolean", + "description": "Defines whether the instance is preemptible. This can only be set during instance creation or while the instance is stopped and therefore, in a `TERMINATED` state. See Instance Life Cycle for more information on the possible instance states." + }, + "locationHint": { + "description": "An opaque location hint used to place the instance close to other resources. This field is for use by internal tools that use the public API.", + "type": "string" + }, + "minNodeCpus": { + "format": "int32", + "type": "integer", + "description": "The minimum number of virtual CPUs this instance will consume when running on a sole-tenant node." + }, + "automaticRestart": { + "description": "Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). You can only set the automatic restart option for standard instances. Preemptible instances cannot be automatically restarted. By default, this is set to true so an instance is automatically restarted if it is terminated by Compute Engine.", + "type": "boolean" + }, + "nodeAffinities": { + "items": { + "$ref": "SchedulingNodeAffinity" + }, + "description": "A set of node affinity and anti-affinity configurations. Refer to Configuring node affinity for more information. Overrides reservationAffinity.", + "type": "array" + }, + "onHostMaintenance": { + "enumDescriptions": [ + "*[Default]* Allows Compute Engine to automatically migrate instances out of the way of maintenance events.", + "Tells Compute Engine to terminate and (optionally) restart the instance away from the maintenance activity. If you would like your instance to be restarted, set the automaticRestart flag to true. Your instance may be restarted more than once, and it may be restarted outside the window of maintenance events." + ], + "type": "string", + "enum": [ + "MIGRATE", + "TERMINATE" + ], + "description": "Defines the maintenance behavior for this instance. For standard instances, the default behavior is MIGRATE. For preemptible instances, the default and only possible behavior is TERMINATE. For more information, see Setting Instance Scheduling Options." + } + }, + "type": "object" + }, + "LicenseCodeLicenseAlias": { + "properties": { + "selfLink": { + "description": "[Output Only] URL of license corresponding to this License Code.", + "type": "string" + }, + "description": { + "type": "string", + "description": "[Output Only] Description of this License Code." + } + }, + "type": "object", + "id": "LicenseCodeLicenseAlias" + }, + "TargetPoolsAddHealthCheckRequest": { + "properties": { + "healthChecks": { + "items": { + "$ref": "HealthCheckReference" + }, + "type": "array", + "description": "The HttpHealthCheck to add to the target pool." + } + }, + "id": "TargetPoolsAddHealthCheckRequest", + "type": "object" + }, + "NetworksGetEffectiveFirewallsResponse": { + "id": "NetworksGetEffectiveFirewallsResponse", + "type": "object", + "properties": { + "firewalls": { + "description": "Effective firewalls on the network.", + "items": { + "$ref": "Firewall" + }, + "type": "array" + }, + "firewallPolicys": { + "items": { + "$ref": "NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy" + }, + "type": "array", + "description": "Effective firewalls from firewall policy." + } + } + }, + "InstanceGroupsRemoveInstancesRequest": { + "properties": { + "instances": { + "type": "array", + "description": "The list of instances to remove from the instance group.", + "items": { + "$ref": "InstanceReference" + } + } + }, + "id": "InstanceGroupsRemoveInstancesRequest", + "type": "object" + }, + "RouterNatRuleAction": { + "type": "object", + "id": "RouterNatRuleAction", + "properties": { + "sourceNatDrainIps": { + "type": "array", + "description": "A list of URLs of the IP resources to be drained. These IPs must be valid static external IPs that have been assigned to the NAT. These IPs should be used for updating/patching a NAT rule only. This field is used for public NAT.", + "items": { + "type": "string" + } + }, + "sourceNatActiveIps": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of URLs of the IP resources used for this NAT rule. These IP addresses must be valid static external IP addresses assigned to the project. This field is used for public NAT." + } + } + }, + "CacheKeyPolicy": { + "type": "object", + "properties": { + "queryStringWhitelist": { + "description": "Names of query string parameters to include in cache keys. All other parameters will be excluded. Either specify query_string_whitelist or query_string_blacklist, not both. '&' and '=' will be percent encoded and not treated as delimiters.", + "items": { + "type": "string" + }, + "type": "array" + }, + "includeProtocol": { + "description": "If true, http and https requests will be cached separately.", + "type": "boolean" + }, + "queryStringBlacklist": { + "type": "array", + "description": "Names of query string parameters to exclude in cache keys. All other parameters will be included. Either specify query_string_whitelist or query_string_blacklist, not both. '&' and '=' will be percent encoded and not treated as delimiters.", + "items": { + "type": "string" + } + }, + "includeHost": { + "description": "If true, requests to different hosts will be cached separately.", + "type": "boolean" + }, + "includeQueryString": { + "description": "If true, include query string parameters in the cache key according to query_string_whitelist and query_string_blacklist. If neither is set, the entire query string will be included. If false, the query string will be excluded from the cache key entirely.", + "type": "boolean" + } + }, + "id": "CacheKeyPolicy", + "description": "Message containing what to include in the cache key for a request for Cloud CDN." + }, + "NotificationEndpointGrpcSettings": { + "id": "NotificationEndpointGrpcSettings", + "properties": { + "endpoint": { + "type": "string", + "description": "Endpoint to which gRPC notifications are sent. This must be a valid gRPCLB DNS name." + }, + "authority": { + "description": "Optional. If specified, this field is used to set the authority header by the sender of notifications. See https://tools.ietf.org/html/rfc7540#section-8.1.2.3", + "type": "string" + }, + "payloadName": { + "type": "string", + "description": "Optional. If specified, this field is used to populate the \"name\" field in gRPC requests." + }, + "resendInterval": { + "description": "Optional. This field is used to configure how often to send a full update of all non-healthy backends. If unspecified, full updates are not sent. If specified, must be in the range between 600 seconds to 3600 seconds. Nanos are disallowed.", + "$ref": "Duration" + }, + "retryDurationSec": { + "format": "uint32", + "type": "integer", + "description": "How much time (in seconds) is spent attempting notification retries until a successful response is received. Default is 30s. Limit is 20m (1200s). Must be a positive number." + } + }, + "type": "object", + "description": "Represents a gRPC setting that describes one gRPC notification endpoint and the retry duration attempting to send notification to this endpoint." + }, + "TCPHealthCheck": { + "type": "object", + "properties": { + "portSpecification": { + "enumDescriptions": [ + "The port number in port is used for health checking.", + "The portName is used for health checking.", + "For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking." + ], + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "type": "string", + "description": "Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, TCP health check follows behavior specified in port and portName fields." + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enumDescriptions": [ + "", + "" + ], + "enum": [ + "NONE", + "PROXY_V1" + ], + "type": "string" + }, + "request": { + "type": "string", + "description": "The application data to send once the TCP connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." + }, + "port": { + "format": "int32", + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 80. Valid values are 1 through 65535." + }, + "response": { + "type": "string", + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + } + }, + "id": "TCPHealthCheck" + }, + "PublicDelegatedPrefixesScopedList": { + "properties": { + "warning": { + "properties": { + "data": { + "type": "array", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "description": "[Output Only] Informational warning which replaces the list of public delegated prefixes when the list is empty.", + "type": "object" + }, + "publicDelegatedPrefixes": { + "items": { + "$ref": "PublicDelegatedPrefix" + }, + "type": "array", + "description": "[Output Only] A list of PublicDelegatedPrefixes contained in this scope." + } + }, + "id": "PublicDelegatedPrefixesScopedList", + "type": "object" + }, + "SubnetworksScopedList": { + "id": "SubnetworksScopedList", + "type": "object", + "properties": { + "warning": { + "type": "object", + "properties": { + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + } + }, + "description": "An informational warning that appears when the list of addresses is empty." + }, + "subnetworks": { + "description": "A list of subnetworks contained in this scope.", + "items": { + "$ref": "Subnetwork" + }, + "type": "array" + } + } + }, + "InstancesSetLabelsRequest": { + "id": "InstancesSetLabelsRequest", + "type": "object", + "properties": { + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "labelFingerprint": { + "type": "string", + "format": "byte", + "description": "Fingerprint of the previous set of labels for this resource, used to prevent conflicts. Provide the latest fingerprint value when making a request to add or change labels." + } + } + }, + "ResourcePolicyGroupPlacementPolicy": { + "description": "A GroupPlacementPolicy specifies resource placement configuration. It specifies the failure bucket separation as well as network locality", + "properties": { + "collocation": { + "description": "Specifies network collocation", + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "enum": [ + "COLLOCATED", + "UNSPECIFIED_COLLOCATION" + ] + }, + "vmCount": { + "type": "integer", + "format": "int32", + "description": "Number of vms in this placement group" + }, + "availabilityDomainCount": { + "type": "integer", + "description": "The number of availability domains instances will be spread across. If two instances are in different availability domain, they will not be put in the same low latency network", + "format": "int32" + } + }, + "id": "ResourcePolicyGroupPlacementPolicy", + "type": "object" + }, + "ForwardingRuleAggregatedList": { + "type": "object", + "properties": { + "unreachables": { + "type": "array", + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + } + } + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#forwardingRuleAggregatedList for lists of forwarding rules.", + "type": "string", + "default": "compute#forwardingRuleAggregatedList" + }, + "items": { + "additionalProperties": { + "description": "Name of the scope containing this set of addresses.", + "$ref": "ForwardingRulesScopedList" + }, + "type": "object", + "description": "A list of ForwardingRulesScopedList resources." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + } + }, + "id": "ForwardingRuleAggregatedList" + }, + "AutoscalingPolicyLoadBalancingUtilization": { + "properties": { + "utilizationTarget": { + "format": "double", + "type": "number", + "description": "Fraction of backend capacity utilization (set in HTTP(S) load balancing configuration) that the autoscaler maintains. Must be a positive float value. If not defined, the default is 0.8." + } + }, + "description": "Configuration parameters of autoscaling based on load balancing.", + "id": "AutoscalingPolicyLoadBalancingUtilization", + "type": "object" + }, + "PacketMirroringMirroredResourceInfoSubnetInfo": { + "id": "PacketMirroringMirroredResourceInfoSubnetInfo", + "properties": { + "canonicalUrl": { + "type": "string", + "description": "[Output Only] Unique identifier for the subnetwork; defined by the server." + }, + "url": { + "description": "Resource URL to the subnetwork for which traffic from/to all VM instances will be mirrored.", + "type": "string" + } + }, + "type": "object" + }, + "NodeTypeAggregatedList": { + "id": "NodeTypeAggregatedList", + "type": "object", + "properties": { + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "warning": { + "type": "object", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "description": "[Output Only] Informational warning message." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "type": "object", + "description": "A list of NodeTypesScopedList resources.", + "additionalProperties": { + "description": "[Output Only] Name of the scope containing this set of node types.", + "$ref": "NodeTypesScopedList" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource.Always compute#nodeTypeAggregatedList for aggregated lists of node types.", + "default": "compute#nodeTypeAggregatedList" + } + } + }, + "ResourcePolicyList": { + "properties": { + "etag": { + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "properties": { + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "items": { + "description": "[Output Only] A list of ResourcePolicy resources.", + "type": "array", + "items": { + "$ref": "ResourcePolicy" + } + }, + "kind": { + "default": "compute#resourcePolicyList", + "type": "string", + "description": "[Output Only] Type of resource.Always compute#resourcePoliciesList for listsof resourcePolicies" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + }, + "type": "object", + "id": "ResourcePolicyList" + }, + "FirewallLogConfig": { + "description": "The available logging options for a firewall rule.", + "type": "object", + "properties": { + "metadata": { + "description": "This field can only be specified for a particular firewall rule if logging is enabled for that rule. This field denotes whether to include or exclude metadata for firewall logs.", + "type": "string", + "enumDescriptions": [ + "", + "" + ], + "enum": [ + "EXCLUDE_ALL_METADATA", + "INCLUDE_ALL_METADATA" + ] + }, + "enable": { + "type": "boolean", + "description": "This field denotes whether to enable logging for a particular firewall rule." + } + }, + "id": "FirewallLogConfig" + }, + "TargetGrpcProxy": { + "type": "object", + "description": "Represents a Target gRPC Proxy resource. A target gRPC proxy is a component of load balancers intended for load balancing gRPC traffic. Only global forwarding rules with load balancing scheme INTERNAL_SELF_MANAGED can reference a target gRPC proxy. The target gRPC Proxy references a URL map that specifies how traffic is routed to gRPC backend services.", + "properties": { + "urlMap": { + "description": "URL to the UrlMap resource that defines the mapping from URL to the BackendService. The protocol field in the BackendService must be set to GRPC.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "fingerprint": { + "type": "string", + "format": "byte", + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a TargetGrpcProxy. An up-to-date fingerprint must be provided in order to patch/update the TargetGrpcProxy; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the TargetGrpcProxy." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#targetGrpcProxy for target grpc proxies.", + "default": "compute#targetGrpcProxy" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string", + "annotations": { + "required": [ + "compute.targetGrpcProxies.insert" + ] + }, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "selfLinkWithId": { + "type": "string", + "description": "[Output Only] Server-defined URL with id for the resource." + }, + "id": { + "description": "[Output Only] The unique identifier for the resource type. The server generates this identifier.", + "type": "string", + "format": "uint64" + }, + "validateForProxyless": { + "description": "If true, indicates that the BackendServices referenced by the urlMap may be accessed by gRPC applications without using a sidecar proxy. This will enable configuration checks on urlMap and its referenced BackendServices to not allow unsupported features. A gRPC application must use \"xds:///\" scheme in the target URI of the service it is connecting to. If false, indicates that the BackendServices referenced by the urlMap will be accessed by gRPC applications via a sidecar proxy. In this case, a gRPC application must not use \"xds:///\" scheme in the target URI of the service it is connecting to", + "type": "boolean" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + } + }, + "id": "TargetGrpcProxy" + }, + "ServiceAttachmentConnectedEndpoint": { + "type": "object", + "description": "[Output Only] A connection connected to this service attachment.", + "properties": { + "status": { + "enumDescriptions": [ + "The connection has been accepted by the producer.", + "The connection has been closed by the producer.", + "The connection is pending acceptance by the producer.", + "The consumer is still connected but not using the connection.", + "" + ], + "description": "The status of a connected endpoint to this service attachment.", + "type": "string", + "enum": [ + "ACCEPTED", + "CLOSED", + "PENDING", + "REJECTED", + "STATUS_UNSPECIFIED" + ] + }, + "endpoint": { + "type": "string", + "description": "The url of a connected endpoint." + }, + "pscConnectionId": { + "type": "string", + "format": "uint64", + "description": "The PSC connection id of the connected endpoint." + } + }, + "id": "ServiceAttachmentConnectedEndpoint" + }, + "NotificationEndpointList": { + "type": "object", + "id": "NotificationEndpointList", + "properties": { + "items": { + "items": { + "$ref": "NotificationEndpoint" + }, + "type": "array", + "description": "A list of NotificationEndpoint resources." + }, + "kind": { + "default": "compute#notificationEndpointList", + "description": "[Output Only] Type of the resource. Always compute#notificationEndpoint for notification endpoints.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "warning": { + "type": "object", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + } + }, + "description": "[Output Only] Informational warning message." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + } + }, + "HttpFaultInjection": { + "properties": { + "delay": { + "$ref": "HttpFaultDelay", + "description": "The specification for how client requests are delayed as part of fault injection, before being sent to a backend service." + }, + "abort": { + "description": "The specification for how client requests are aborted as part of fault injection.", + "$ref": "HttpFaultAbort" + } + }, + "id": "HttpFaultInjection", + "description": "The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by Loadbalancer on a percentage of requests before sending those request to the backend service. Similarly requests from clients can be aborted by the Loadbalancer for a percentage of requests.", + "type": "object" + }, + "InterconnectLocationList": { + "description": "Response to the list request, and contains a list of interconnect locations.", + "type": "object", + "id": "InterconnectLocationList", + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + } + }, + "kind": { + "default": "compute#interconnectLocationList", + "type": "string", + "description": "[Output Only] Type of resource. Always compute#interconnectLocationList for lists of interconnect locations." + }, + "items": { + "type": "array", + "description": "A list of InterconnectLocation resources.", + "items": { + "$ref": "InterconnectLocation" + } + } + } + }, + "RouterList": { + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "items": { + "$ref": "Router" + }, + "type": "array", + "description": "A list of Router resources." + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#router for routers.", + "default": "compute#routerList", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + } + } + }, + "description": "Contains a list of Router resources.", + "id": "RouterList", + "type": "object" + }, + "InstanceGroupManagersDeleteInstancesRequest": { + "type": "object", + "id": "InstanceGroupManagersDeleteInstancesRequest", + "properties": { + "instances": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The URLs of one or more instances to delete. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]." + }, + "skipInstancesOnValidationError": { + "type": "boolean", + "description": "Specifies whether the request should proceed despite the inclusion of instances that are not members of the group or that are already in the process of being deleted or abandoned. If this field is set to `false` and such an instance is specified in the request, the operation fails. The operation always fails if the request contains a malformed instance URL or a reference to an instance that exists in a zone or region other than the group's zone or region." + } + } + }, + "DisplayDevice": { + "type": "object", + "properties": { + "enableDisplay": { + "description": "Defines whether the instance has Display enabled.", + "type": "boolean" + } + }, + "id": "DisplayDevice", + "description": "A set of Display Device options" + }, + "UsableSubnetwork": { + "description": "Subnetwork which the current user has compute.subnetworks.use permission on.", + "type": "object", + "properties": { + "ipCidrRange": { + "description": "The range of internal addresses that are owned by this subnetwork.", + "type": "string" + }, + "secondaryIpRanges": { + "items": { + "$ref": "UsableSubnetworkSecondaryRange" + }, + "description": "Secondary IP ranges.", + "type": "array" + }, + "network": { + "description": "Network URL.", + "type": "string" + }, + "subnetwork": { + "description": "Subnetwork URL.", + "type": "string" + } + }, + "id": "UsableSubnetwork" + }, + "XpnResourceId": { + "description": "Service resource (a.k.a service project) ID.", + "properties": { + "type": { + "enumDescriptions": [ + "", + "" + ], + "enum": [ + "PROJECT", + "XPN_RESOURCE_TYPE_UNSPECIFIED" + ], + "description": "The type of the service resource.", + "type": "string" + }, + "id": { + "description": "The ID of the service resource. In the case of projects, this field supports project id (e.g., my-project-123) and project number (e.g. 12345678).", + "type": "string" + } + }, + "type": "object", + "id": "XpnResourceId" + }, + "VpnGatewayStatus": { + "id": "VpnGatewayStatus", + "type": "object", + "properties": { + "vpnConnections": { + "items": { + "$ref": "VpnGatewayStatusVpnConnection" + }, + "description": "List of VPN connection for this VpnGateway.", + "type": "array" + } + } + }, + "SubnetworkSecondaryRange": { + "properties": { + "rangeName": { + "type": "string", + "description": "The name associated with this subnetwork secondary range, used when adding an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork." + }, + "ipCidrRange": { + "description": "The range of IP addresses belonging to this subnetwork secondary range. Provide this property when you create the subnetwork. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Only IPv4 is supported. The range can be any range listed in the Valid ranges list.", + "type": "string" + } + }, + "description": "Represents a secondary IP range of a subnetwork.", + "type": "object", + "id": "SubnetworkSecondaryRange" + }, + "BackendServiceGroupHealth": { + "id": "BackendServiceGroupHealth", + "properties": { + "kind": { + "description": "[Output Only] Type of resource. Always compute#backendServiceGroupHealth for the health of backend services.", + "type": "string", + "default": "compute#backendServiceGroupHealth" + }, + "healthStatus": { + "description": "Health state of the backend instances or endpoints in requested instance or network endpoint group, determined based on configured health checks.", + "type": "array", + "items": { + "$ref": "HealthStatus" + } + }, + "annotations": { + "description": "Metadata defined as annotations on the network endpoint group.", + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + }, + "type": "object" + }, + "OperationList": { + "description": "Contains a list of Operation resources.", + "type": "object", + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than `maxResults`, use the `nextPageToken` as a value for the query parameter `pageToken` in the next list request. Subsequent list requests will have their own `nextPageToken` to continue paging through the results." + }, + "kind": { + "type": "string", + "default": "compute#operationList", + "description": "[Output Only] Type of resource. Always `compute#operations` for Operations resource." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Operation resources.", + "items": { + "$ref": "Operation" + } + }, + "warning": { + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + } + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + } + }, + "id": "OperationList" + }, + "Int64RangeMatch": { + "properties": { + "rangeStart": { + "description": "The start of the range (inclusive) in signed long integer format.", + "format": "int64", + "type": "string" + }, + "rangeEnd": { + "format": "int64", + "type": "string", + "description": "The end of the range (exclusive) in signed long integer format." + } + }, + "type": "object", + "id": "Int64RangeMatch", + "description": "HttpRouteRuleMatch criteria for field values that must stay within the specified integer range." + }, + "ConsistentHashLoadBalancerSettings": { + "properties": { + "minimumRingSize": { + "description": "The minimum number of virtual nodes to use for the hash ring. Defaults to 1024. Larger ring sizes result in more granular load distributions. If the number of hosts in the load balancing pool is larger than the ring size, each host will be assigned a single virtual node.", + "type": "string", + "format": "int64" + }, + "httpCookie": { + "description": "Hash is based on HTTP Cookie. This field describes a HTTP cookie that will be used as the hash key for the consistent hash load balancer. If the cookie is not present, it will be generated. This field is applicable if the sessionAffinity is set to HTTP_COOKIE.", + "$ref": "ConsistentHashLoadBalancerSettingsHttpCookie" + }, + "httpHeaderName": { + "description": "The hash based on the value of the specified header field. This field is applicable if the sessionAffinity is set to HEADER_FIELD.", + "type": "string" + } + }, + "description": "This message defines settings for a consistent hash style load balancer.", + "id": "ConsistentHashLoadBalancerSettings", + "type": "object" + }, + "ResourcePolicyResourceStatusInstanceSchedulePolicyStatus": { + "type": "object", + "properties": { + "nextRunStartTime": { + "type": "string", + "description": "[Output Only] The next time the schedule is planned to run. The actual time might be slightly different. The timestamp is an RFC3339 string." + }, + "lastRunStartTime": { + "type": "string", + "description": "[Output Only] The last time the schedule successfully ran. The timestamp is an RFC3339 string." + } + }, + "id": "ResourcePolicyResourceStatusInstanceSchedulePolicyStatus" + }, + "InstanceGroupManagersListManagedInstancesResponse": { + "type": "object", + "id": "InstanceGroupManagersListManagedInstancesResponse", + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "managedInstances": { + "items": { + "$ref": "ManagedInstance" + }, + "type": "array", + "description": "[Output Only] The list of instances in the managed instance group." + } + } + }, + "AutoscalingPolicyScaleInControl": { + "description": "Configuration that allows for slower scale in so that even if Autoscaler recommends an abrupt scale in of a MIG, it will be throttled as specified by the parameters below.", + "type": "object", + "properties": { + "maxScaledInReplicas": { + "description": "Maximum allowed number (or %) of VMs that can be deducted from the peak recommendation during the window autoscaler looks at when computing recommendations. Possibly all these VMs can be deleted at once so user service needs to be prepared to lose that many VMs in one step.", + "$ref": "FixedOrPercent" + }, + "timeWindowSec": { + "description": "How far back autoscaling looks when computing recommendations to include directives regarding slower scale in, as described above.", + "format": "int32", + "type": "integer" + } + }, + "id": "AutoscalingPolicyScaleInControl" + }, + "RegionDisksResizeRequest": { + "type": "object", + "properties": { + "sizeGb": { + "format": "int64", + "type": "string", + "description": "The new size of the regional persistent disk, which is specified in GB." + } + }, + "id": "RegionDisksResizeRequest" + }, + "ProjectsListXpnHostsRequest": { + "type": "object", + "id": "ProjectsListXpnHostsRequest", + "properties": { + "organization": { + "type": "string", + "description": "Optional organization ID managed by Cloud Resource Manager, for which to list shared VPC host projects. If not specified, the organization will be inferred from the project." + } + } + }, + "DiskList": { + "description": "A list of Disk resources.", + "type": "object", + "id": "DiskList", + "properties": { + "items": { + "type": "array", + "description": "A list of Disk resources.", + "items": { + "$ref": "Disk" + } + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "kind": { + "default": "compute#diskList", + "type": "string", + "description": "[Output Only] Type of resource. Always compute#diskList for lists of disks." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "properties": { + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + } + }, + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + } + }, + "CustomerEncryptionKeyProtectedDisk": { + "properties": { + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Decrypts data associated with the disk with a customer-supplied encryption key." + }, + "source": { + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks. For example: \"source\": \"/compute/v1/projects/project_id/zones/zone/disks/ disk_name ", + "type": "string" + } + }, + "type": "object", + "id": "CustomerEncryptionKeyProtectedDisk" + }, + "AllocationSpecificSKUReservation": { + "type": "object", + "description": "This reservation type allows to pre allocate specific instance configuration. Next ID: 5", + "id": "AllocationSpecificSKUReservation", + "properties": { + "instanceProperties": { + "description": "The instance properties for the reservation.", + "$ref": "AllocationSpecificSKUAllocationReservedInstanceProperties" + }, + "count": { + "description": "Specifies the number of resources that are allocated.", + "type": "string", + "format": "int64" + }, + "inUseCount": { + "format": "int64", + "description": "[Output Only] Indicates how many instances are in use.", + "type": "string" + } + } + }, + "RegionInstanceGroupManagerDeleteInstanceConfigReq": { + "type": "object", + "properties": { + "names": { + "description": "The list of instance names for which we want to delete per-instance configs on this managed instance group.", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "RegionInstanceGroupManagerDeleteInstanceConfigReq", + "description": "RegionInstanceGroupManagers.deletePerInstanceConfigs" + }, + "NodeGroupsAddNodesRequest": { + "id": "NodeGroupsAddNodesRequest", + "properties": { + "additionalNodeCount": { + "type": "integer", + "description": "Count of additional nodes to be added to the node group.", + "format": "int32" + } + }, + "type": "object" + }, + "AutoscalersScopedList": { + "properties": { + "warning": { + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + } + } + }, + "type": "object", + "description": "[Output Only] Informational warning which replaces the list of autoscalers when the list is empty." + }, + "autoscalers": { + "items": { + "$ref": "Autoscaler" + }, + "description": "[Output Only] A list of autoscalers contained in this scope.", + "type": "array" + } + }, + "id": "AutoscalersScopedList", + "type": "object" + }, + "InstanceManagedByIgmErrorInstanceActionDetails": { + "properties": { + "version": { + "$ref": "ManagedInstanceVersion", + "description": "[Output Only] Version this instance was created from, or was being created from, but the creation failed. Corresponds to one of the versions that were set on the Instance Group Manager resource at the time this instance was being created." + }, + "action": { + "description": "[Output Only] Action that managed instance group was executing on the instance when the error occurred. Possible values:", + "type": "string", + "enum": [ + "ABANDONING", + "CREATING", + "CREATING_WITHOUT_RETRIES", + "DELETING", + "NONE", + "RECREATING", + "REFRESHING", + "RESTARTING", + "VERIFYING" + ], + "enumDescriptions": [ + "The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group.", + "The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful.", + "The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased.", + "The managed instance group is permanently deleting this instance.", + "The managed instance group has not scheduled any actions for this instance.", + "The managed instance group is recreating this instance.", + "The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance.", + "The managed instance group is restarting this instance.", + "The managed instance group is verifying this already created instance. Verification happens every time the instance is (re)created or restarted and consists of: 1. Waiting until health check specified as part of this managed instance group's autohealing policy reports HEALTHY. Note: Applies only if autohealing policy has a health check specified 2. Waiting for addition verification steps performed as post-instance creation (subject to future extensions)." + ] + }, + "instance": { + "type": "string", + "description": "[Output Only] The URL of the instance. The URL can be set even if the instance has not yet been created." + } + }, + "id": "InstanceManagedByIgmErrorInstanceActionDetails", + "type": "object" + }, + "BackendServiceReference": { + "properties": { + "backendService": { + "type": "string" + } + }, + "type": "object", + "id": "BackendServiceReference" + }, + "SecurityPolicyRuleMatcherConfig": { + "id": "SecurityPolicyRuleMatcherConfig", + "type": "object", + "properties": { + "srcIpRanges": { + "description": "CIDR IP address range. Maximum number of src_ip_ranges allowed is 10.", + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "ExternalVpnGateway": { + "type": "object", + "properties": { + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "id": { + "format": "uint64", + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "labelFingerprint": { + "type": "string", + "format": "byte", + "description": "A fingerprint for the labels being applied to this ExternalVpnGateway, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an ExternalVpnGateway." + }, + "name": { + "annotations": { + "required": [ + "compute.externalVpnGateways.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#externalVpnGateway for externalVpnGateways.", + "default": "compute#externalVpnGateway" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "interfaces": { + "description": "A list of interfaces for this external VPN gateway. If your peer-side gateway is an on-premises gateway and non-AWS cloud providers' gateway, at most two interfaces can be provided for an external VPN gateway. If your peer side is an AWS virtual private gateway, four interfaces should be provided for an external VPN gateway.", + "items": { + "$ref": "ExternalVpnGatewayInterface" + }, + "type": "array" + }, + "labels": { + "description": "Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + "redundancyType": { + "enumDescriptions": [ + "The external VPN gateway has four public IP addresses; at the time of writing this API, the AWS virtual private gateway is an example which has four public IP addresses for high availability connections; there should be two VPN connections in the AWS virtual private gateway , each AWS VPN connection has two public IP addresses; please make sure to put two public IP addresses from one AWS VPN connection into interfaces 0 and 1 of this external VPN gateway, and put the other two public IP addresses from another AWS VPN connection into interfaces 2 and 3 of this external VPN gateway. When displaying highly available configuration status for the VPN tunnels connected to FOUR_IPS_REDUNDANCY external VPN gateway, Google will always detect whether interfaces 0 and 1 are connected on one interface of HA Cloud VPN gateway, and detect whether interfaces 2 and 3 are connected to another interface of the HA Cloud VPN gateway.", + "The external VPN gateway has only one public IP address which internally provide redundancy or failover.", + "The external VPN gateway has two public IP addresses which are redundant with each other, the following two types of setup on your on-premises side would have this type of redundancy: (1) Two separate on-premises gateways, each with one public IP address, the two on-premises gateways are redundant with each other. (2) A single on-premise gateway with two public IP addresses that are redundant with eatch other." + ], + "description": "Indicates the user-supplied redundancy type of this external VPN gateway.", + "type": "string", + "enum": [ + "FOUR_IPS_REDUNDANCY", + "SINGLE_IP_INTERNALLY_REDUNDANT", + "TWO_IPS_REDUNDANCY" + ] + } + }, + "description": "Represents an external VPN gateway. External VPN gateway is the on-premises VPN gateway(s) or another cloud provider's VPN gateway that connects to your Google Cloud VPN gateway. To create a highly available VPN from Google Cloud Platform to your VPN gateway or another cloud provider's VPN gateway, you must create a external VPN gateway resource with information about the other gateway. For more information about using external VPN gateways, see Creating an HA VPN gateway and tunnel pair to a peer VPN.", + "id": "ExternalVpnGateway" + }, + "RequestMirrorPolicy": { + "description": "A policy that specifies how requests intended for the route's backends are shadowed to a separate mirrored backend service. Loadbalancer does not wait for responses from the shadow service. Prior to sending traffic to the shadow service, the host / authority header is suffixed with -shadow.", + "type": "object", + "id": "RequestMirrorPolicy", + "properties": { + "backendService": { + "description": "The full or partial URL to the BackendService resource being mirrored to.", + "type": "string" + } + } + }, + "HttpHeaderAction": { + "id": "HttpHeaderAction", + "description": "The request and response header transformations that take effect before the request is passed along to the selected backendService.", + "type": "object", + "properties": { + "requestHeadersToAdd": { + "type": "array", + "description": "Headers to add to a matching request prior to forwarding the request to the backendService.", + "items": { + "$ref": "HttpHeaderOption" + } + }, + "requestHeadersToRemove": { + "type": "array", + "description": "A list of header names for headers that need to be removed from the request prior to forwarding the request to the backendService.", + "items": { + "type": "string" + } + }, + "responseHeadersToAdd": { + "description": "Headers to add the response prior to sending the response back to the client.", + "items": { + "$ref": "HttpHeaderOption" + }, + "type": "array" + }, + "responseHeadersToRemove": { + "items": { + "type": "string" + }, + "description": "A list of header names for headers that need to be removed from the response prior to sending the response back to the client.", + "type": "array" + } + } + }, + "Region": { + "type": "object", + "description": "Represents a Region resource. A region is a geographical area where a resource is located. For more information, read Regions and Zones.", + "properties": { + "deprecated": { + "description": "[Output Only] The deprecation status associated with this region.", + "$ref": "DeprecationStatus" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "quotas": { + "items": { + "$ref": "Quota" + }, + "description": "[Output Only] Quotas assigned to this region.", + "type": "array" + }, + "status": { + "enum": [ + "DOWN", + "UP" + ], + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "description": "[Output Only] Status of the region, either UP or DOWN." + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "description": { + "description": "[Output Only] Textual description of the resource.", + "type": "string" + }, + "id": { + "type": "string", + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "zones": { + "items": { + "type": "string" + }, + "type": "array", + "description": "[Output Only] A list of zones available in this region, in the form of resource URLs." + }, + "supportsPzs": { + "type": "boolean", + "description": "[Output Only] Reserved for future use." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "kind": { + "type": "string", + "default": "compute#region", + "description": "[Output Only] Type of the resource. Always compute#region for regions." + } + }, + "id": "Region" + }, + "DiskType": { + "description": "Represents a Disk Type resource. Google Compute Engine has two Disk Type resources: * [Regional](/compute/docs/reference/rest/v1/regionDiskTypes) * [Zonal](/compute/docs/reference/rest/v1/diskTypes) You can choose from a variety of disk types based on your needs. For more information, read Storage options. The diskTypes resource represents disk types for a zonal persistent disk. For more information, read Zonal persistent disks. The regionDiskTypes resource represents disk types for a regional persistent disk. For more information, read Regional persistent disks.", + "id": "DiskType", + "type": "object", + "properties": { + "validDiskSize": { + "type": "string", + "description": "[Output Only] An optional textual description of the valid disk size, such as \"10GB-10TB\"." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this disk type." + }, + "description": { + "type": "string", + "description": "[Output Only] An optional description of this resource." + }, + "region": { + "description": "[Output Only] URL of the region where the disk type resides. Only applicable for regional resources. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#diskType for disk types.", + "type": "string", + "default": "compute#diskType" + }, + "defaultDiskSizeGb": { + "type": "string", + "format": "int64", + "description": "[Output Only] Server-defined default disk size in GB." + }, + "name": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "[Output Only] Name of the resource." + }, + "zone": { + "description": "[Output Only] URL of the zone where the disk type resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + } + } + }, + "InterconnectDiagnosticsLinkOpticalPower": { + "properties": { + "state": { + "description": "The status of the current value when compared to the warning and alarm levels for the receiving or transmitting transceiver. Possible states include: - OK: The value has not crossed a warning threshold. - LOW_WARNING: The value has crossed below the low warning threshold. - HIGH_WARNING: The value has crossed above the high warning threshold. - LOW_ALARM: The value has crossed below the low alarm threshold. - HIGH_ALARM: The value has crossed above the high alarm threshold. ", + "enum": [ + "HIGH_ALARM", + "HIGH_WARNING", + "LOW_ALARM", + "LOW_WARNING", + "OK" + ], + "type": "string", + "enumDescriptions": [ + "The value has crossed above the high alarm threshold.", + "The value of the current optical power has crossed above the high warning threshold.", + "The value of the current optical power has crossed below the low alarm threshold.", + "The value of the current optical power has crossed below the low warning threshold.", + "The value of the current optical power has not crossed a warning threshold." + ] + }, + "value": { + "type": "number", + "description": "Value of the current receiving or transmitting optical power, read in dBm. Take a known good optical value, give it a 10% margin and trigger warnings relative to that value. In general, a -7dBm warning and a -11dBm alarm are good optical value estimates for most links.", + "format": "float" + } + }, + "type": "object", + "id": "InterconnectDiagnosticsLinkOpticalPower" + }, + "FirewallPolicyRuleMatcher": { + "id": "FirewallPolicyRuleMatcher", + "properties": { + "layer4Configs": { + "type": "array", + "description": "Pairs of IP protocols and ports that the rule should match.", + "items": { + "$ref": "FirewallPolicyRuleMatcherLayer4Config" + } + }, + "destIpRanges": { + "description": "CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 5000.", + "items": { + "type": "string" + }, + "type": "array" + }, + "srcIpRanges": { + "items": { + "type": "string" + }, + "type": "array", + "description": "CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 5000." + } + }, + "description": "Represents a match condition that incoming traffic is evaluated against. Exactly one field must be specified.", + "type": "object" + }, + "NodeGroupAutoscalingPolicy": { + "id": "NodeGroupAutoscalingPolicy", + "properties": { + "mode": { + "type": "string", + "enum": [ + "MODE_UNSPECIFIED", + "OFF", + "ON", + "ONLY_SCALE_OUT" + ], + "description": "The autoscaling mode. Set to one of: ON, OFF, or ONLY_SCALE_OUT. For more information, see Autoscaler modes.", + "enumDescriptions": [ + "", + "Autoscaling is disabled.", + "Autocaling is fully enabled.", + "Autoscaling will only scale out and will not remove nodes." + ] + }, + "minNodes": { + "format": "int32", + "type": "integer", + "description": "The minimum number of nodes that the group should have." + }, + "maxNodes": { + "type": "integer", + "description": "The maximum number of nodes that the group should have. Must be set if autoscaling is enabled. Maximum value allowed is 100.", + "format": "int32" + } + }, + "type": "object" + }, + "NodeGroupNode": { + "properties": { + "name": { + "type": "string", + "description": "The name of the node." + }, + "cpuOvercommitType": { + "enum": [ + "CPU_OVERCOMMIT_TYPE_UNSPECIFIED", + "ENABLED", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "description": "CPU overcommit.", + "type": "string" + }, + "status": { + "type": "string", + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "enum": [ + "CREATING", + "DELETING", + "INVALID", + "READY", + "REPAIRING" + ] + }, + "nodeType": { + "type": "string", + "description": "The type of this node." + }, + "satisfiesPzs": { + "description": "[Output Only] Reserved for future use.", + "type": "boolean" + }, + "instances": { + "description": "Instances scheduled on this node.", + "type": "array", + "items": { + "type": "string" + } + }, + "disks": { + "type": "array", + "items": { + "$ref": "LocalDisk" + }, + "description": "Local disk configurations." + }, + "serverBinding": { + "$ref": "ServerBinding", + "description": "Binding properties for the physical server." + }, + "serverId": { + "description": "Server ID associated with this node.", + "type": "string" + }, + "accelerators": { + "type": "array", + "items": { + "$ref": "AcceleratorConfig" + }, + "description": "Accelerators for this node." + } + }, + "type": "object", + "id": "NodeGroupNode" + }, + "TargetHttpsProxiesSetQuicOverrideRequest": { + "type": "object", + "properties": { + "quicOverride": { + "enum": [ + "DISABLE", + "ENABLE", + "NONE" + ], + "enumDescriptions": [ + "The load balancer will not attempt to negotiate QUIC with clients.", + "The load balancer will attempt to negotiate QUIC with clients.", + "No overrides to the default QUIC policy. This option is implicit if no QUIC override has been specified in the request." + ], + "type": "string", + "description": "QUIC policy for the TargetHttpsProxy resource." + } + }, + "id": "TargetHttpsProxiesSetQuicOverrideRequest" + }, + "ForwardingRule": { + "type": "object", + "id": "ForwardingRule", + "description": "Represents a Forwarding Rule resource. Forwarding rule resources in Google Cloud can be either regional or global in scope: * [Global](https://cloud.google.com/compute/docs/reference/rest/v1/globalForwardingRules) * [Regional](https://cloud.google.com/compute/docs/reference/rest/v1/forwardingRules) A forwarding rule and its corresponding IP address represent the frontend configuration of a Google Cloud Platform load balancer. Forwarding rules can also reference target instances and Cloud VPN Classic gateways (targetVpnGateway). For more information, read Forwarding rule concepts and Using protocol forwarding.", + "properties": { + "subnetwork": { + "description": "This field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule, used in internal load balancing and network load balancing with IPv6. If the network specified is in auto subnet mode, this field is optional. However, a subnetwork must be specified if the network is in custom subnet mode or when creating external forwarding rule with IPv6.", + "type": "string" + }, + "networkTier": { + "type": "string", + "enum": [ + "PREMIUM", + "STANDARD" + ], + "description": "This signifies the networking tier used for configuring this load balancer and can only take the following values: PREMIUM, STANDARD. For regional ForwardingRule, the valid values are PREMIUM and STANDARD. For GlobalForwardingRule, the valid value is PREMIUM. If this field is not specified, it is assumed to be PREMIUM. If IPAddress is specified, this value must be equal to the networkTier of the Address.", + "enumDescriptions": [ + "High quality, Google-grade network tier, support for all networking products.", + "Public internet quality, only limited support for other networking products." + ] + }, + "loadBalancingScheme": { + "description": "Specifies the forwarding rule type. For more information about forwarding rules, refer to Forwarding rule concepts.", + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "enum": [ + "EXTERNAL", + "INTERNAL", + "INTERNAL_MANAGED", + "INTERNAL_SELF_MANAGED", + "INVALID" + ], + "type": "string" + }, + "ports": { + "description": "The ports field is only supported when the forwarding rule references a backend_service directly. Only packets addressed to the [specified list of ports]((https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#port_specifications)) are forwarded to backends. You can only use one of ports and port_range, or allPorts. The three are mutually exclusive. You can specify a list of up to five ports, which can be non-contiguous. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint ports. @pattern: \\\\d+(?:-\\\\d+)?", + "items": { + "type": "string" + }, + "type": "array" + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body." + }, + "ipVersion": { + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string", + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_VERSION" + ], + "description": "The IP Version that will be used by this forwarding rule. Valid options are IPV4 or IPV6. This can only be specified for an external global forwarding rule." + }, + "allowGlobalAccess": { + "description": "This field is used along with the backend_service field for internal load balancing or with the target field for internal TargetInstance. If the field is set to TRUE, clients can access ILB from all regions. Otherwise only allows access from clients in the same region as the internal load balancer.", + "type": "boolean" + }, + "target": { + "type": "string" + }, + "serviceDirectoryRegistrations": { + "description": "Service Directory resources to register this forwarding rule with. Currently, only supports a single Service Directory resource. It is only supported for internal load balancing.", + "items": { + "$ref": "ForwardingRuleServiceDirectoryRegistration" + }, + "type": "array" + }, + "network": { + "description": "This field is not used for external load balancing. For Internal TCP/UDP Load Balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used. For Private Service Connect forwarding rules that forward traffic to Google APIs, a network must be provided.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.", + "default": "compute#forwardingRule", + "type": "string" + }, + "IPAddress": { + "description": "IP address that this forwarding rule serves. When a client sends traffic to this IP address, the forwarding rule directs the traffic to the target that you specify in the forwarding rule. If you don't specify a reserved IP address, an ephemeral IP address is assigned. Methods for specifying an IP address: * IPv4 dotted decimal, as in `100.1.2.3` * Full URL, as in https://www.googleapis.com/compute/v1/projects/project_id/regions/region /addresses/address-name * Partial URL or by name, as in: - projects/project_id/regions/region/addresses/address-name - regions/region/addresses/address-name - global/addresses/address-name - address-name The loadBalancingScheme and the forwarding rule's target determine the type of IP address that you can use. For detailed information, see [IP address specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications). Must be set to `0.0.0.0` when the target is targetGrpcProxy that has validateForProxyless field set to true. For Private Service Connect forwarding rules that forward traffic to Google APIs, IP address must be provided.", + "type": "string" + }, + "IPProtocol": { + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "enum": [ + "AH", + "ESP", + "ICMP", + "SCTP", + "TCP", + "UDP" + ], + "description": "The IP protocol to which this rule applies. For protocol forwarding, valid options are TCP, UDP, ESP, AH, SCTP, ICMP and L3_DEFAULT. The valid IP protocols are different for different load balancing products as described in [Load balancing features](https://cloud.google.com/load-balancing/docs/features#protocols_from_the_load_balancer_to_the_backends).", + "type": "string" + }, + "metadataFilters": { + "type": "array", + "items": { + "$ref": "MetadataFilter" + }, + "description": "Opaque filter criteria used by load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to load balancer, xDS clients present node metadata. When there is a match, the relevant configuration is made available to those proxies. Otherwise, all the resources (e.g. TargetHttpProxy, UrlMap) referenced by the ForwardingRule are not visible to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadataFilters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here will be applifed before those specified in the UrlMap that this ForwardingRule references. metadataFilters only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED." + }, + "pscConnectionStatus": { + "enum": [ + "ACCEPTED", + "CLOSED", + "PENDING", + "REJECTED", + "STATUS_UNSPECIFIED" + ], + "enumDescriptions": [ + "The connection has been accepted by the producer.", + "The connection has been closed by the producer and will not serve traffic going forward.", + "The connection is pending acceptance by the producer.", + "The connection has been rejected by the producer.", + "" + ], + "type": "string" + }, + "serviceLabel": { + "description": "An optional prefix to the service name for this Forwarding Rule. If specified, the prefix is the first label of the fully qualified service name. The label must be 1-63 characters long, and comply with RFC1035. Specifically, the label must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. This field is only used for internal load balancing.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "backendService": { + "description": "Identifies the backend service to which the forwarding rule sends traffic. Required for Internal TCP/UDP Load Balancing and Network Load Balancing; must be omitted for all other load balancer types.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "pscConnectionId": { + "format": "uint64", + "type": "string", + "description": "[Output Only] The PSC connection id of the PSC Forwarding Rule." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "description": "Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "type": "object" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For Private Service Connect forwarding rules that forward traffic to Google APIs, the forwarding rule name must be a 1-20 characters string with lowercase letters and numbers and must start with a letter.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "fingerprint": { + "format": "byte", + "type": "string", + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a ForwardingRule. Include the fingerprint in patch request to ensure that you do not overwrite changes that were applied from another concurrent request. To see the latest fingerprint, make a get() request to retrieve a ForwardingRule." + }, + "allPorts": { + "type": "boolean", + "description": "This field is used along with the backend_service field for Internal TCP/UDP Load Balancing or Network Load Balancing, or with the target field for internal and external TargetInstance. You can only use one of ports and port_range, or allPorts. The three are mutually exclusive. For TCP, UDP and SCTP traffic, packets addressed to any ports will be forwarded to the target or backendService." + }, + "labelFingerprint": { + "type": "string", + "description": "A fingerprint for the labels being applied to this resource, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a ForwardingRule.", + "format": "byte" + }, + "serviceName": { + "type": "string", + "description": "[Output Only] The internal fully qualified service name for this Forwarding Rule. This field is only used for internal load balancing." + }, + "portRange": { + "description": "This field can be used only if: - Load balancing scheme is one of EXTERNAL, INTERNAL_SELF_MANAGED or INTERNAL_MANAGED - IPProtocol is one of TCP, UDP, or SCTP. Packets addressed to ports in the specified range will be forwarded to target or backend_service. You can only use one of ports, port_range, or allPorts. The three are mutually exclusive. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint ports. Some types of forwarding target have constraints on the acceptable ports. For more information, see [Port specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#port_specifications). @pattern: \\\\d+(?:-\\\\d+)?", + "type": "string" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "isMirroringCollector": { + "type": "boolean", + "description": "Indicates whether or not this load balancer can be used as a collector for packet mirroring. To prevent mirroring loops, instances behind this load balancer will not have their traffic mirrored even if a PacketMirroring rule applies to them. This can only be set to true for load balancers that have their loadBalancingScheme set to INTERNAL." + } + } + }, + "InterconnectLocation": { + "description": "Represents an Interconnect Attachment (VLAN) Location resource. You can use this resource to find location details about an Interconnect attachment (VLAN). For more information about interconnect attachments, read Creating VLAN Attachments.", + "type": "object", + "id": "InterconnectLocation", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "peeringdbFacilityId": { + "type": "string", + "description": "[Output Only] The peeringdb identifier for this facility (corresponding with a netfac type in peeringdb)." + }, + "city": { + "type": "string", + "description": "[Output Only] Metropolitan area designator that indicates which city an interconnect is located. For example: \"Chicago, IL\", \"Amsterdam, Netherlands\"." + }, + "continent": { + "type": "string", + "enum": [ + "AFRICA", + "ASIA_PAC", + "C_AFRICA", + "C_ASIA_PAC", + "C_EUROPE", + "C_NORTH_AMERICA", + "C_SOUTH_AMERICA", + "EUROPE", + "NORTH_AMERICA", + "SOUTH_AMERICA" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "description": "[Output Only] Continent for this location, which can take one of the following values: - AFRICA - ASIA_PAC - EUROPE - NORTH_AMERICA - SOUTH_AMERICA " + }, + "facilityProvider": { + "description": "[Output Only] The name of the provider for this facility (e.g., EQUINIX).", + "type": "string" + }, + "facilityProviderFacilityId": { + "type": "string", + "description": "[Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn-DC1)." + }, + "availabilityZone": { + "type": "string", + "description": "[Output Only] Availability zone for this InterconnectLocation. Within a metropolitan area (metro), maintenance will not be simultaneously scheduled in more than one availability zone. Example: \"zone1\" or \"zone2\"." + }, + "status": { + "type": "string", + "description": "[Output Only] The status of this InterconnectLocation, which can take one of the following values: - CLOSED: The InterconnectLocation is closed and is unavailable for provisioning new Interconnects. - AVAILABLE: The InterconnectLocation is available for provisioning new Interconnects. ", + "enumDescriptions": [ + "The InterconnectLocation is available for provisioning new Interconnects.", + "The InterconnectLocation is closed for provisioning new Interconnects." + ], + "enum": [ + "AVAILABLE", + "CLOSED" + ] + }, + "regionInfos": { + "type": "array", + "items": { + "$ref": "InterconnectLocationRegionInfo" + }, + "description": "[Output Only] A list of InterconnectLocation.RegionInfo objects, that describe parameters pertaining to the relation between this InterconnectLocation and various Google Cloud regions." + }, + "supportsPzs": { + "description": "[Output Only] Set to true for locations that support physical zone separation. Defaults to false if the field is not present.", + "type": "boolean" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "description": { + "description": "[Output Only] An optional description of the resource.", + "type": "string" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#interconnectLocation for interconnect locations.", + "default": "compute#interconnectLocation" + }, + "address": { + "type": "string", + "description": "[Output Only] The postal address of the Point of Presence, each line in the address is separated by a newline character." + } + } + }, + "HttpHealthCheck": { + "description": "Represents a legacy HTTP Health Check resource. Legacy HTTP health checks are now only required by target pool-based network load balancers. For all other load balancers, including backend service-based network load balancers, and for managed instance group auto-healing, you must use modern (non-legacy) health checks. For more information, see Health checks overview .", + "properties": { + "unhealthyThreshold": { + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "requestPath": { + "description": "The request path of the HTTP health check request. The default value is /. This field does not support query parameters.", + "type": "string" + }, + "timeoutSec": { + "format": "int32", + "type": "integer", + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "type": "integer", + "format": "int32" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "host": { + "type": "string", + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used." + }, + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32", + "type": "integer" + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#httpHealthCheck for HTTP health checks.", + "type": "string", + "default": "compute#httpHealthCheck" + }, + "port": { + "description": "The TCP port number for the HTTP health check request. The default value is 80.", + "format": "int32", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + }, + "id": "HttpHealthCheck", + "type": "object" + }, + "BackendBucketCdnPolicyNegativeCachingPolicy": { + "type": "object", + "properties": { + "code": { + "description": "The HTTP status code to define a TTL against. Only HTTP status codes 300, 301, 302, 307, 308, 404, 405, 410, 421, 451 and 501 are can be specified as values, and you cannot specify a status code more than once.", + "format": "int32", + "type": "integer" + }, + "ttl": { + "format": "int32", + "description": "The TTL (in seconds) for which to cache responses with the corresponding status code. The maximum allowed value is 1800s (30 minutes), noting that infrequently accessed objects may be evicted from the cache before the defined TTL.", + "type": "integer" + } + }, + "description": "Specify CDN TTLs for response error codes.", + "id": "BackendBucketCdnPolicyNegativeCachingPolicy" + }, + "NetworkEndpointGroupsScopedList": { + "properties": { + "warning": { + "type": "object", + "properties": { + "data": { + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + } + }, + "description": "[Output Only] An informational warning that replaces the list of network endpoint groups when the list is empty." + }, + "networkEndpointGroups": { + "description": "[Output Only] The list of network endpoint groups that are contained in this scope.", + "type": "array", + "items": { + "$ref": "NetworkEndpointGroup" + } + } + }, + "id": "NetworkEndpointGroupsScopedList", + "type": "object" + }, + "InitialStateConfig": { + "properties": { + "dbxs": { + "items": { + "$ref": "FileContentBuffer" + }, + "type": "array", + "description": "The forbidden key database (dbx)." + }, + "keks": { + "description": "The Key Exchange Key (KEK).", + "items": { + "$ref": "FileContentBuffer" + }, + "type": "array" + }, + "pk": { + "description": "The Platform Key (PK).", + "$ref": "FileContentBuffer" + }, + "dbs": { + "type": "array", + "items": { + "$ref": "FileContentBuffer" + }, + "description": "The Key Database (db)." + } + }, + "id": "InitialStateConfig", + "type": "object", + "description": "Initial State for shielded instance, these are public keys which are safe to store in public" + }, + "InterconnectAttachmentAggregatedList": { + "type": "object", + "id": "InterconnectAttachmentAggregatedList", + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "type": "array", + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + }, + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + } + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "object", + "description": "A list of InterconnectAttachmentsScopedList resources.", + "additionalProperties": { + "$ref": "InterconnectAttachmentsScopedList", + "description": "Name of the scope containing this set of interconnect attachments." + } + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentAggregatedList for aggregated lists of interconnect attachments.", + "type": "string", + "default": "compute#interconnectAttachmentAggregatedList" + } + } + }, + "TargetInstance": { + "type": "object", + "id": "TargetInstance", + "properties": { + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "id": { + "format": "uint64", + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "instance": { + "description": "A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /instances/instance - projects/project/zones/zone/instances/instance - zones/zone/instances/instance ", + "type": "string" + }, + "network": { + "description": "The URL of the network this target instance uses to forward traffic. If not specified, the traffic will be forwarded to the network that the default network interface belongs to.", + "type": "string" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "natPolicy": { + "enum": [ + "NO_NAT" + ], + "description": "NAT option controlling how IPs are NAT'ed to the instance. Currently only NO_NAT (default value) is supported.", + "enumDescriptions": [ + "No NAT performed." + ], + "type": "string" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "zone": { + "type": "string", + "description": "[Output Only] URL of the zone where the target instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "kind": { + "default": "compute#targetInstance", + "description": "[Output Only] The type of the resource. Always compute#targetInstance for target instances.", + "type": "string" + } + }, + "description": "Represents a Target Instance resource. You can use a target instance to handle traffic for one or more forwarding rules, which is ideal for forwarding protocol traffic that is managed by a single source. For example, ESP, AH, TCP, or UDP. For more information, read Target instances." + }, + "GuestAttributes": { + "description": "A guest attributes entry.", + "properties": { + "variableKey": { + "description": "The key to search for.", + "type": "string" + }, + "queryValue": { + "$ref": "GuestAttributesValue", + "description": "[Output Only] The value of the requested queried path." + }, + "queryPath": { + "type": "string", + "description": "The path to be queried. This can be the default namespace ('') or a nested namespace ('\\/') or a specified key ('\\/\\')." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "kind": { + "type": "string", + "default": "compute#guestAttributes", + "description": "[Output Only] Type of the resource. Always compute#guestAttributes for guest attributes entry." + }, + "variableValue": { + "type": "string", + "description": "[Output Only] The value found for the requested key." + } + }, + "id": "GuestAttributes", + "type": "object" + }, + "Duration": { + "description": "A Duration represents a fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like \"day\" or \"month\". Range is approximately 10,000 years.", + "properties": { + "nanos": { + "type": "integer", + "description": "Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 `seconds` field and a positive `nanos` field. Must be from 0 to 999,999,999 inclusive.", + "format": "int32" + }, + "seconds": { + "description": "Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years", + "type": "string", + "format": "int64" + } + }, + "id": "Duration", + "type": "object" + }, + "ForwardingRulesScopedList": { + "id": "ForwardingRulesScopedList", + "properties": { + "forwardingRules": { + "description": "A list of forwarding rules contained in this scope.", + "type": "array", + "items": { + "$ref": "ForwardingRule" + } + }, + "warning": { + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "description": "Informational warning which replaces the list of forwarding rules when the list is empty.", + "type": "object" + } + }, + "type": "object" + }, + "ProjectsDisableXpnResourceRequest": { + "type": "object", + "id": "ProjectsDisableXpnResourceRequest", + "properties": { + "xpnResource": { + "$ref": "XpnResourceId", + "description": "Service resource (a.k.a service project) ID." + } + } + }, + "AttachedDisk": { + "properties": { + "licenses": { + "items": { + "type": "string" + }, + "type": "array", + "description": "[Output Only] Any valid publicly visible licenses." + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts or decrypts a disk using a customer-supplied encryption key. If you are creating a new disk, this field encrypts the new disk using an encryption key that you provide. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key. If you encrypt a disk using a customer-supplied key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance. If you do not provide an encryption key, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later. Instance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt disks in a managed instance group." + }, + "initializeParams": { + "$ref": "AttachedDiskInitializeParams", + "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance. This property is mutually exclusive with the source property; you can only define one or the other, but not both." + }, + "autoDelete": { + "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).", + "type": "boolean" + }, + "source": { + "type": "string", + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. When creating a new instance, one of initializeParams.sourceImage or initializeParams.sourceSnapshot or disks.source is required except for local SSD. If desired, you can also attach existing non-root persistent disks using this property. This field is only applicable for persistent disks. Note that for InstanceTemplate, specify the disk name, not the URL for the disk." + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "type": "array", + "items": { + "$ref": "GuestOsFeature" + } + }, + "type": { + "enumDescriptions": [ + "", + "" + ], + "enum": [ + "PERSISTENT", + "SCRATCH" + ], + "type": "string", + "description": "Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT." + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#attachedDisk for attached disks.", + "type": "string", + "default": "compute#attachedDisk" + }, + "mode": { + "enum": [ + "READ_ONLY", + "READ_WRITE" + ], + "enumDescriptions": [ + "Attaches this disk in read-only mode. Multiple virtual machines can use a disk in read-only mode at a time.", + "*[Default]* Attaches this disk in read-write mode. Only one virtual machine at a time can be attached to a disk in read-write mode." + ], + "type": "string", + "description": "The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode." + }, + "shieldedInstanceInitialState": { + "$ref": "InitialStateConfig", + "description": "[Output Only] shielded vm initial state stored on disk" + }, + "deviceName": { + "type": "string", + "description": "Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks." + }, + "boot": { + "description": "Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.", + "type": "boolean" + }, + "diskSizeGb": { + "format": "int64", + "type": "string", + "description": "The size of the disk in GB." + }, + "interface": { + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "enum": [ + "NVME", + "SCSI" + ], + "description": "Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance." + }, + "index": { + "format": "int32", + "description": "[Output Only] A zero-based index to this disk, where 0 is reserved for the boot disk. If you have many disks attached to an instance, each disk would have a unique index number.", + "type": "integer" + } + }, + "type": "object", + "id": "AttachedDisk", + "description": "An instance-attached disk resource." + }, + "SnapshotList": { + "description": "Contains a list of Snapshot resources.", + "id": "SnapshotList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#snapshotList" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "data": { + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "items": { + "items": { + "$ref": "Snapshot" + }, + "description": "A list of Snapshot resources.", + "type": "array" + } + } + }, + "HealthStatus": { + "type": "object", + "id": "HealthStatus", + "properties": { + "ipAddress": { + "type": "string", + "description": "For target pool based Network Load Balancing, it indicates the forwarding rule's IP address assigned to this instance. For other types of load balancing, the field indicates VM internal ip." + }, + "healthState": { + "description": "Health state of the instance.", + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "enum": [ + "HEALTHY", + "UNHEALTHY" + ] + }, + "port": { + "format": "int32", + "type": "integer", + "description": "The named port of the instance group, not necessarily the port that is health-checked." + }, + "instance": { + "type": "string", + "description": "URL of the instance resource." + }, + "annotations": { + "type": "object", + "description": "Metadata defined as annotations for network endpoint.", + "additionalProperties": { + "type": "string" + } + }, + "forwardingRule": { + "type": "string", + "description": "URL of the forwarding rule associated with the health status of the instance." + }, + "forwardingRuleIp": { + "description": "A forwarding rule IP address assigned to this instance.", + "type": "string" + }, + "weightError": { + "enum": [ + "INVALID_WEIGHT", + "MISSING_WEIGHT", + "UNAVAILABLE_WEIGHT", + "WEIGHT_NONE" + ], + "enumDescriptions": [ + "The response to a Health Check probe had the HTTP response header field X-Load-Balancing-Endpoint-Weight, but its content was invalid (i.e., not a non-negative single-precision floating-point number in decimal string representation).", + "The response to a Health Check probe did not have the HTTP response header field X-Load-Balancing-Endpoint-Weight.", + "This is the value when the accompanied health status is either TIMEOUT (i.e.,the Health Check probe was not able to get a response in time) or UNKNOWN. For the latter, it should be typically because there has not been sufficient time to parse and report the weight for a new backend (which is with 0.0.0.0 ip address). However, it can be also due to an outage case for which the health status is explicitly reset to UNKNOWN.", + "This is the default value when WeightReportMode is DISABLE, and is also the initial value when WeightReportMode has just updated to ENABLE or DRY_RUN and there has not been sufficient time to parse and report the backend weight." + ], + "type": "string" + }, + "weight": { + "type": "string" + } + } + }, + "TargetPoolAggregatedList": { + "properties": { + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "type": "array", + "items": { + "type": "string" + } + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "type": "object", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "description": "[Output Only] Informational warning message." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "kind": { + "default": "compute#targetPoolAggregatedList", + "type": "string", + "description": "[Output Only] Type of resource. Always compute#targetPoolAggregatedList for aggregated lists of target pools." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "items": { + "type": "object", + "description": "A list of TargetPool resources.", + "additionalProperties": { + "description": "Name of the scope containing this set of target pools.", + "$ref": "TargetPoolsScopedList" + } + } + }, + "id": "TargetPoolAggregatedList", + "type": "object" + }, + "NodeGroupAggregatedList": { + "properties": { + "unreachables": { + "type": "array", + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + } + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + } + } + } + }, + "kind": { + "description": "[Output Only] Type of resource.Always compute#nodeGroupAggregatedList for aggregated lists of node groups.", + "default": "compute#nodeGroupAggregatedList", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "object", + "description": "A list of NodeGroupsScopedList resources.", + "additionalProperties": { + "$ref": "NodeGroupsScopedList", + "description": "[Output Only] Name of the scope containing this set of node groups." + } + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + }, + "id": "NodeGroupAggregatedList", + "type": "object" + }, + "NodeGroupsSetNodeTemplateRequest": { + "properties": { + "nodeTemplate": { + "type": "string", + "description": "Full or partial URL of the node template resource to be updated for this node group." + } + }, + "id": "NodeGroupsSetNodeTemplateRequest", + "type": "object" + }, + "NetworkRoutingConfig": { + "id": "NetworkRoutingConfig", + "type": "object", + "description": "A routing configuration attached to a network resource. The message includes the list of routers associated with the network, and a flag indicating the type of routing behavior to enforce network-wide.", + "properties": { + "routingMode": { + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "enum": [ + "GLOBAL", + "REGIONAL" + ], + "description": "The network-wide routing mode to use. If set to REGIONAL, this network's Cloud Routers will only advertise routes with subnets of this network in the same region as the router. If set to GLOBAL, this network's Cloud Routers will advertise routes with all subnets of this network, across regions." + } + } + }, + "InterconnectLocationRegionInfo": { + "properties": { + "locationPresence": { + "description": "Identifies the network presence of this location.", + "enum": [ + "GLOBAL", + "LOCAL_REGION", + "LP_GLOBAL", + "LP_LOCAL_REGION" + ], + "enumDescriptions": [ + "This region is not in any common network presence with this InterconnectLocation.", + "This region shares the same regional network presence as this InterconnectLocation.", + "[Deprecated] This region is not in any common network presence with this InterconnectLocation.", + "[Deprecated] This region shares the same regional network presence as this InterconnectLocation." + ], + "type": "string" + }, + "expectedRttMs": { + "format": "int64", + "type": "string", + "description": "Expected round-trip time in milliseconds, from this InterconnectLocation to a VM in this region." + }, + "region": { + "description": "URL for the region of this location.", + "type": "string" + } + }, + "id": "InterconnectLocationRegionInfo", + "description": "Information about any potential InterconnectAttachments between an Interconnect at a specific InterconnectLocation, and a specific Cloud Region.", + "type": "object" + }, + "InterconnectsGetDiagnosticsResponse": { + "type": "object", + "description": "Response for the InterconnectsGetDiagnosticsRequest.", + "properties": { + "result": { + "$ref": "InterconnectDiagnostics" + } + }, + "id": "InterconnectsGetDiagnosticsResponse" + }, + "ReservationsResizeRequest": { + "type": "object", + "id": "ReservationsResizeRequest", + "properties": { + "specificSkuCount": { + "description": "Number of allocated resources can be resized with minimum = 1 and maximum = 1000.", + "type": "string", + "format": "int64" + } + } + }, + "LocalDisk": { + "type": "object", + "id": "LocalDisk", + "properties": { + "diskSizeGb": { + "format": "int32", + "type": "integer", + "description": "Specifies the size of the disk in base-2 GB." + }, + "diskCount": { + "description": "Specifies the number of such disks.", + "type": "integer", + "format": "int32" + }, + "diskType": { + "type": "string", + "description": "Specifies the desired disk type on the node. This disk type must be a local storage type (e.g.: local-ssd). Note that for nodeTemplates, this should be the name of the disk type and not its URL." + } + } + }, + "TargetTcpProxiesSetBackendServiceRequest": { + "id": "TargetTcpProxiesSetBackendServiceRequest", + "type": "object", + "properties": { + "service": { + "description": "The URL of the new BackendService resource for the targetTcpProxy.", + "type": "string" + } + } + }, + "SubnetworkList": { + "id": "SubnetworkList", + "description": "Contains a list of Subnetwork resources.", + "type": "object", + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "warning": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "type": "array", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "description": "[Output Only] Informational warning message." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#subnetworkList for lists of subnetworks.", + "default": "compute#subnetworkList" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "items": { + "$ref": "Subnetwork" + }, + "type": "array", + "description": "A list of Subnetwork resources." + } + } + }, + "InstanceReference": { + "type": "object", + "id": "InstanceReference", + "properties": { + "instance": { + "type": "string", + "description": "The URL for a specific instance. @required compute.instancegroups.addInstances/removeInstances" + } + } + }, + "TargetTcpProxy": { + "id": "TargetTcpProxy", + "properties": { + "service": { + "type": "string", + "description": "URL to the BackendService resource." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "id": { + "format": "uint64", + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "name": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "proxyBind": { + "type": "boolean", + "description": "This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. When this field is set to true, Envoy proxies set up inbound traffic interception and bind to the IP address and port specified in the forwarding rule. This is generally useful when using Traffic Director to configure Envoy as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy proxy listens for inbound requests and handles requests when it receives them. The default is false." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "proxyHeader": { + "type": "string", + "enumDescriptions": [ + "", + "" + ], + "enum": [ + "NONE", + "PROXY_V1" + ], + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE." + }, + "kind": { + "default": "compute#targetTcpProxy", + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#targetTcpProxy for target TCP proxies." + } + }, + "description": "Represents a Target TCP Proxy resource. A target TCP proxy is a component of a TCP Proxy load balancer. Global forwarding rules reference target TCP proxy, and the target proxy then references an external backend service. For more information, read TCP Proxy Load Balancing overview.", + "type": "object" + }, + "Disk": { + "id": "Disk", + "type": "object", + "description": "Represents a Persistent Disk resource. Google Compute Engine has two Disk resources: * [Zonal](/compute/docs/reference/rest/v1/disks) * [Regional](/compute/docs/reference/rest/v1/regionDisks) Persistent disks are required for running your VM instances. Create both boot and non-boot (data) persistent disks. For more information, read Persistent Disks. For more storage options, read Storage options. The disks resource represents a zonal persistent disk. For more information, read Zonal persistent disks. The regionDisks resource represents a regional persistent disk. For more information, read Regional resources.", + "properties": { + "resourcePolicies": { + "type": "array", + "description": "Resource policies applied to this disk for automatic snapshot creations.", + "items": { + "type": "string" + } + }, + "sourceSnapshot": { + "type": "string", + "description": "The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project /global/snapshots/snapshot - projects/project/global/snapshots/snapshot - global/snapshots/snapshot " + }, + "sourceDiskId": { + "type": "string", + "description": "[Output Only] The unique ID of the disk used to create this disk. This value identifies the exact disk that was used to create this persistent disk. For example, if you created the persistent disk from a disk that was later deleted and recreated under the same name, the source disk ID would identify the exact version of the disk that was used." + }, + "status": { + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY", + "RESTORING" + ], + "type": "string", + "enumDescriptions": [ + "Disk is provisioning", + "Disk is deleting.", + "Disk creation failed.", + "Disk is ready for use.", + "Source data is being copied into the disk." + ], + "description": "[Output Only] The status of disk creation. - CREATING: Disk is provisioning. - RESTORING: Source data is being copied into the disk. - FAILED: Disk creation failed. - READY: Disk is ready for use. - DELETING: Disk is deleting. " + }, + "sizeGb": { + "type": "string", + "format": "int64", + "description": "Size, in GB, of the persistent disk. You can specify this field when creating a persistent disk using the sourceImage, sourceSnapshot, or sourceDisk parameter, or specify it alone to create an empty persistent disk. If you specify this field along with a source, the value of sizeGb must not be less than the size of the source. Acceptable values are 1 to 65536, inclusive." + }, + "users": { + "items": { + "type": "string" + }, + "type": "array", + "description": "[Output Only] Links to the users of the disk (attached instances) in form: projects/project/zones/zone/instances/instance" + }, + "locationHint": { + "description": "An opaque location hint used to place the disk close to other resources. This field is for use by internal tools that use the public API.", + "type": "string" + }, + "sourceSnapshotId": { + "description": "[Output Only] The unique ID of the snapshot used to create this disk. This value identifies the exact snapshot that was used to create this persistent disk. For example, if you created the persistent disk from a snapshot that was later deleted and recreated under the same name, the source snapshot ID would identify the exact version of the snapshot that was used.", + "type": "string" + }, + "licenses": { + "description": "A list of publicly visible licenses. Reserved for Google's use.", + "items": { + "type": "string" + }, + "type": "array" + }, + "type": { + "type": "string", + "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk. For example: projects/project /zones/zone/diskTypes/pd-ssd . See Persistent disk types." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#disk for disks.", + "default": "compute#disk" + }, + "guestOsFeatures": { + "description": "A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.", + "items": { + "$ref": "GuestOsFeature" + }, + "type": "array" + }, + "sourceImageEncryptionKey": { + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.", + "$ref": "CustomerEncryptionKey" + }, + "region": { + "description": "[Output Only] URL of the region where the disk resides. Only applicable for regional resources. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "sourceImageId": { + "description": "[Output Only] The ID value of the image used to create this disk. This value identifies the exact image that was used to create this persistent disk. For example, if you created the persistent disk from an image that was later deleted and recreated under the same name, the source image ID would identify the exact version of the image that was used.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "satisfiesPzs": { + "description": "[Output Only] Reserved for future use.", + "type": "boolean" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "annotations": { + "required": [ + "compute.disks.insert" + ] + } + }, + "labelFingerprint": { + "type": "string", + "description": "A fingerprint for the labels being applied to this disk, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a disk.", + "format": "byte" + }, + "sourceStorageObject": { + "type": "string", + "description": "The full Google Cloud Storage URI where the disk image is stored. This file must be a gzip-compressed tarball whose name ends in .tar.gz or virtual machine disk whose name ends in vmdk. Valid URIs may start with gs:// or https://storage.googleapis.com/. This flag is not optimized for creating multiple disks from a source storage object. To create many disks from a source storage object, use gcloud compute images import instead." + }, + "zone": { + "description": "[Output Only] URL of the zone where the disk resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "labels": { + "description": "Labels to apply to this disk. These can be later modified by the setLabels method.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." + }, + "provisionedIops": { + "format": "int64", + "type": "string", + "description": "Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation." + }, + "lastDetachTimestamp": { + "type": "string", + "description": "[Output Only] Last detach timestamp in RFC3339 text format." + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the disk using a customer-supplied encryption key or a customer-managed encryption key. Encryption keys do not protect access to metadata of the disk. After you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later. For example, to create a disk snapshot, to create a disk image, to create a machine image, or to attach the disk to a virtual machine. After you encrypt a disk with a customer-managed key, the diskEncryptionKey.kmsKeyName is set to a key *version* name once the disk is created. The disk is encrypted with this version of the key. In the response, diskEncryptionKey.kmsKeyName appears in the following format: \"diskEncryptionKey.kmsKeyName\": \"projects/kms_project_id/locations/region/keyRings/ key_region/cryptoKeys/key /cryptoKeysVersions/version If you do not provide an encryption key when creating the disk, then the disk is encrypted using an automatically generated key and you don't need to provide a key to use the disk later." + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "physicalBlockSizeBytes": { + "type": "string", + "description": "Physical block size of the persistent disk, in bytes. If not present in a request, a default value is used. The currently supported size is 4096, other sizes may be added in the future. If an unsupported value is requested, the error message will list the supported values for the caller's project.", + "format": "int64" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "sourceImage": { + "description": "The source image used to create this disk. If the source image is deleted, this field will not be set. To create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-9 to use the latest Debian 9 image: projects/debian-cloud/global/images/family/debian-9 Alternatively, use a specific version of a public operating system image: projects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD To create a disk with a custom image that you created, specify the image name in the following format: global/images/my-custom-image You can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name: global/images/family/my-image-family ", + "type": "string" + }, + "options": { + "type": "string", + "description": "Internal use only." + }, + "replicaZones": { + "description": "URLs of the zones where the disk should be replicated to. Only applicable for regional resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "lastAttachTimestamp": { + "type": "string", + "description": "[Output Only] Last attach timestamp in RFC3339 text format." + }, + "sourceDisk": { + "description": "The source disk used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /disks/disk - https://www.googleapis.com/compute/v1/projects/project/regions/region /disks/disk - projects/project/zones/zone/disks/disk - projects/project/regions/region/disks/disk - zones/zone/disks/disk - regions/region/disks/disk ", + "type": "string" + }, + "licenseCodes": { + "type": "array", + "description": "Integer license codes indicating which licenses are attached to this disk.", + "items": { + "format": "int64", + "type": "string" + } + } + } + }, + "VpnGatewayVpnGatewayInterface": { + "id": "VpnGatewayVpnGatewayInterface", + "type": "object", + "description": "A VPN gateway interface.", + "properties": { + "interconnectAttachment": { + "description": "URL of the VLAN attachment (interconnectAttachment) resource for this VPN gateway interface. When the value of this field is present, the VPN gateway is used for IPsec-encrypted Cloud Interconnect; all egress or ingress traffic for this VPN gateway interface goes through the specified VLAN attachment resource. Not currently available publicly. ", + "type": "string" + }, + "ipAddress": { + "description": "[Output Only] IP address for this VPN interface associated with the VPN gateway. The IP address could be either a regional external IP address or a regional internal IP address. The two IP addresses for a VPN gateway must be all regional external or regional internal IP addresses. There cannot be a mix of regional external IP addresses and regional internal IP addresses. For IPsec-encrypted Cloud Interconnect, the IP addresses for both interfaces could either be regional internal IP addresses or regional external IP addresses. For regular (non IPsec-encrypted Cloud Interconnect) HA VPN tunnels, the IP address must be a regional external IP address.", + "type": "string" + }, + "id": { + "type": "integer", + "format": "uint32", + "description": "[Output Only] Numeric identifier for this VPN interface associated with the VPN gateway." + } + } + }, + "UrlMapList": { + "properties": { + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + } + } + }, + "items": { + "type": "array", + "items": { + "$ref": "UrlMap" + }, + "description": "A list of UrlMap resources." + }, + "kind": { + "type": "string", + "default": "compute#urlMapList", + "description": "Type of resource." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + }, + "description": "Contains a list of UrlMap resources.", + "id": "UrlMapList", + "type": "object" + }, + "VpnTunnelsScopedList": { + "type": "object", + "properties": { + "vpnTunnels": { + "description": "A list of VPN tunnels contained in this scope.", + "items": { + "$ref": "VpnTunnel" + }, + "type": "array" + }, + "warning": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + } + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "description": "Informational warning which replaces the list of addresses when the list is empty." + } + }, + "id": "VpnTunnelsScopedList" + }, + "SchedulingNodeAffinity": { + "type": "object", + "properties": { + "operator": { + "type": "string", + "enumDescriptions": [ + "Requires Compute Engine to seek for matched nodes.", + "Requires Compute Engine to avoid certain nodes.", + "" + ], + "description": "Defines the operation of node selection. Valid operators are IN for affinity and NOT_IN for anti-affinity.", + "enum": [ + "IN", + "NOT_IN", + "OPERATOR_UNSPECIFIED" + ] + }, + "key": { + "description": "Corresponds to the label key of Node resource.", + "type": "string" + }, + "values": { + "description": "Corresponds to the label values of Node resource.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "description": "Node Affinity: the configuration of desired nodes onto which this Instance could be scheduled.", + "id": "SchedulingNodeAffinity" + }, + "RoutersPreviewResponse": { + "type": "object", + "id": "RoutersPreviewResponse", + "properties": { + "resource": { + "$ref": "Router", + "description": "Preview of given router." + } + } + }, + "HealthCheckReference": { + "type": "object", + "description": "A full or valid partial URL to a health check. For example, the following are valid URLs: - https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check - projects/project-id/global/httpHealthChecks/health-check - global/httpHealthChecks/health-check ", + "properties": { + "healthCheck": { + "type": "string" + } + }, + "id": "HealthCheckReference" + }, + "BackendServicesScopedList": { + "id": "BackendServicesScopedList", + "type": "object", + "properties": { + "backendServices": { + "type": "array", + "items": { + "$ref": "BackendService" + }, + "description": "A list of BackendServices contained in this scope." + }, + "warning": { + "type": "object", + "description": "Informational warning which replaces the list of backend services when the list is empty.", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + } + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + } + } + } + } + }, + "MetadataFilter": { + "properties": { + "filterLabels": { + "description": "The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list must not be empty and can have at the most 64 entries.", + "items": { + "$ref": "MetadataFilterLabelMatch" + }, + "type": "array" + }, + "filterMatchCriteria": { + "enum": [ + "MATCH_ALL", + "MATCH_ANY", + "NOT_SET" + ], + "description": "Specifies how individual filterLabel matches within the list of filterLabels contribute towards the overall metadataFilter match. Supported values are: - MATCH_ANY: At least one of the filterLabels must have a matching label in the provided metadata. - MATCH_ALL: All filterLabels must have matching labels in the provided metadata. ", + "enumDescriptions": [ + "Specifies that all filterLabels must match for the metadataFilter to be considered a match.", + "Specifies that any filterLabel must match for the metadataFilter to be considered a match.", + "Indicates that the match criteria was not set. A metadataFilter must never be created with this value." + ], + "type": "string" + } + }, + "type": "object", + "description": "Opaque filter criteria used by loadbalancers to restrict routing configuration to a limited set of loadbalancing proxies. Proxies and sidecars involved in loadbalancing would typically present metadata to the loadbalancers which need to match criteria specified here. If a match takes place, the relevant configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. An example for using metadataFilters would be: if loadbalancing involves Envoys, they will only receive routing configuration when values in metadataFilters match values supplied in of their XDS requests to loadbalancers.", + "id": "MetadataFilter" + }, + "InstanceManagedByIgmError": { + "id": "InstanceManagedByIgmError", + "type": "object", + "properties": { + "error": { + "description": "[Output Only] Contents of the error.", + "$ref": "InstanceManagedByIgmErrorManagedInstanceError" + }, + "instanceActionDetails": { + "$ref": "InstanceManagedByIgmErrorInstanceActionDetails", + "description": "[Output Only] Details of the instance action that triggered this error. May be null, if the error was not caused by an action on an instance. This field is optional." + }, + "timestamp": { + "type": "string", + "description": "[Output Only] The time that this error occurred. This value is in RFC3339 text format." + } + } + }, + "AuditConfig": { + "type": "object", + "id": "AuditConfig", + "properties": { + "auditLogConfigs": { + "items": { + "$ref": "AuditLogConfig" + }, + "type": "array", + "description": "The configuration for logging of each type of permission." + }, + "exemptedMembers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "This is deprecated and has no effect. Do not use." + }, + "service": { + "type": "string", + "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services." + } + }, + "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts jose@example.com from DATA_READ logging, and aliya@example.com from DATA_WRITE logging." + }, + "UrlMapsValidateRequest": { + "id": "UrlMapsValidateRequest", + "type": "object", + "properties": { + "resource": { + "description": "Content of the UrlMap to be validated.", + "$ref": "UrlMap" + } + } + }, + "RouteList": { + "id": "RouteList", + "type": "object", + "properties": { + "warning": { + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "items": { + "description": "A list of Route resources.", + "type": "array", + "items": { + "$ref": "Route" + } + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "kind": { + "description": "Type of resource.", + "default": "compute#routeList", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "description": "Contains a list of Route resources." + }, + "ResourcePolicySnapshotSchedulePolicyRetentionPolicy": { + "description": "Policy for retention of scheduled snapshots.", + "type": "object", + "id": "ResourcePolicySnapshotSchedulePolicyRetentionPolicy", + "properties": { + "maxRetentionDays": { + "type": "integer", + "description": "Maximum age of the snapshot that is allowed to be kept.", + "format": "int32" + }, + "onSourceDiskDelete": { + "enum": [ + "APPLY_RETENTION_POLICY", + "KEEP_AUTO_SNAPSHOTS", + "UNSPECIFIED_ON_SOURCE_DISK_DELETE" + ], + "type": "string", + "enumDescriptions": [ + "", + "", + "" + ], + "description": "Specifies the behavior to apply to scheduled snapshots when the source disk is deleted." + } + } + }, + "BackendBucketCdnPolicy": { + "description": "Message containing Cloud CDN configuration for a backend bucket.", + "properties": { + "negativeCachingPolicy": { + "items": { + "$ref": "BackendBucketCdnPolicyNegativeCachingPolicy" + }, + "description": "Sets a cache TTL for the specified HTTP status code. negative_caching must be enabled to configure negative_caching_policy. Omitting the policy and leaving negative_caching enabled will use Cloud CDN's default cache TTLs. Note that when specifying an explicit negative_caching_policy, you should take care to specify a cache TTL for all response codes that you wish to cache. Cloud CDN will not apply any default negative caching when a policy exists.", + "type": "array" + }, + "clientTtl": { + "format": "int32", + "type": "integer", + "description": "Specifies a separate client (e.g. browser client) maximum TTL. This is used to clamp the max-age (or Expires) value sent to the client. With FORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the response max-age directive, along with a \"public\" directive. For cacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age from the origin (if specified), or else sets the response max-age directive to the lesser of the client_ttl and default_ttl, and also ensures a \"public\" cache-control directive is present. If a client TTL is not specified, a default value (1 hour) will be used. The maximum allowed value is 86400s (1 day)." + }, + "maxTtl": { + "description": "Specifies the maximum allowed TTL for cached content served by this origin. Cache directives that attempt to set a max-age or s-maxage higher than this, or an Expires header more than maxTTL seconds in the future will be capped at the value of maxTTL, as if it were the value of an s-maxage Cache-Control directive. Headers sent to the client will not be modified. Setting a TTL of \"0\" means \"always revalidate\". The maximum allowed value is 31,622,400s (1 year), noting that infrequently accessed objects may be evicted from the cache before the defined TTL.", + "format": "int32", + "type": "integer" + }, + "bypassCacheOnRequestHeaders": { + "items": { + "$ref": "BackendBucketCdnPolicyBypassCacheOnRequestHeader" + }, + "type": "array", + "description": "Bypass the cache when the specified request headers are matched - e.g. Pragma or Authorization headers. Up to 5 headers can be specified. The cache is bypassed for all cdnPolicy.cacheMode settings." + }, + "negativeCaching": { + "type": "boolean", + "description": "Negative caching allows per-status code TTLs to be set, in order to apply fine-grained caching for common errors or redirects. This can reduce the load on your origin and improve end-user experience by reducing response latency. When the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS, negative caching applies to responses with the specified response code that lack any Cache-Control, Expires, or Pragma: no-cache directives. When the cache mode is set to FORCE_CACHE_ALL, negative caching applies to all responses with the specified response code, and override any caching headers. By default, Cloud CDN will apply the following default TTLs to these status codes: HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method Not Found), 421 (Misdirected Request), 501 (Not Implemented): 60s. These defaults can be overridden in negative_caching_policy." + }, + "requestCoalescing": { + "description": "If true then Cloud CDN will combine multiple concurrent cache fill requests into a small number of requests to the origin.", + "type": "boolean" + }, + "signedUrlCacheMaxAgeSec": { + "description": "Maximum number of seconds the response to a signed URL request will be considered fresh. After this time period, the response will be revalidated before being served. Defaults to 1hr (3600s). When serving responses to signed URL requests, Cloud CDN will internally behave as though all responses from this backend had a \"Cache-Control: public, max-age=[TTL]\" header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered.", + "type": "string", + "format": "int64" + }, + "signedUrlKeyNames": { + "type": "array", + "description": "[Output Only] Names of the keys for signing request URLs.", + "items": { + "type": "string" + } + }, + "serveWhileStale": { + "description": "Serve existing content from the cache (if available) when revalidating content with the origin, or when an error is encountered when refreshing the cache. This setting defines the default \"max-stale\" duration for any cached responses that do not specify a max-stale directive. Stale responses that exceed the TTL configured here will not be served. The default limit (max-stale) is 86400s (1 day), which will allow stale content to be served up to this limit beyond the max-age (or s-max-age) of a cached response. The maximum allowed value is 604800 (1 week). Set this to zero (0) to disable serve-while-stale.", + "type": "integer", + "format": "int32" + }, + "defaultTtl": { + "type": "integer", + "description": "Specifies the default TTL for cached content served by this origin for responses that do not have an existing valid TTL (max-age or s-max-age). Setting a TTL of \"0\" means \"always revalidate\". The value of defaultTTL cannot be set to a value greater than that of maxTTL, but can be equal. When the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set in all responses. The maximum allowed value is 31,622,400s (1 year), noting that infrequently accessed objects may be evicted from the cache before the defined TTL.", + "format": "int32" + }, + "cacheMode": { + "enumDescriptions": [ + "Automatically cache static content, including common image formats, media (video and audio), and web assets (JavaScript and CSS). Requests and responses that are marked as uncacheable, as well as dynamic content (including HTML), will not be cached.", + "Cache all content, ignoring any \"private\", \"no-store\" or \"no-cache\" directives in Cache-Control response headers. Warning: this may result in Cloud CDN caching private, per-user (user identifiable) content.", + "", + "Requires the origin to set valid caching headers to cache content. Responses without these headers will not be cached at Google's edge, and will require a full trip to the origin on every request, potentially impacting performance and increasing load on the origin server." + ], + "description": "Specifies the cache setting for all responses from this backend. The possible values are: USE_ORIGIN_HEADERS Requires the origin to set valid caching headers to cache content. Responses without these headers will not be cached at Google's edge, and will require a full trip to the origin on every request, potentially impacting performance and increasing load on the origin server. FORCE_CACHE_ALL Cache all content, ignoring any \"private\", \"no-store\" or \"no-cache\" directives in Cache-Control response headers. Warning: this may result in Cloud CDN caching private, per-user (user identifiable) content. CACHE_ALL_STATIC Automatically cache static content, including common image formats, media (video and audio), and web assets (JavaScript and CSS). Requests and responses that are marked as uncacheable, as well as dynamic content (including HTML), will not be cached.", + "enum": [ + "CACHE_ALL_STATIC", + "FORCE_CACHE_ALL", + "INVALID_CACHE_MODE", + "USE_ORIGIN_HEADERS" + ], + "type": "string" + } + }, + "type": "object", + "id": "BackendBucketCdnPolicy" + }, + "InterconnectDiagnosticsARPEntry": { + "properties": { + "ipAddress": { + "type": "string", + "description": "The IP address of this ARP neighbor." + }, + "macAddress": { + "type": "string", + "description": "The MAC address of this ARP neighbor." + } + }, + "type": "object", + "id": "InterconnectDiagnosticsARPEntry", + "description": "Describing the ARP neighbor entries seen on this link" + }, + "InstanceGroupsSetNamedPortsRequest": { + "id": "InstanceGroupsSetNamedPortsRequest", + "type": "object", + "properties": { + "namedPorts": { + "description": "The list of named ports to set for this instance group.", + "type": "array", + "items": { + "$ref": "NamedPort" + } + }, + "fingerprint": { + "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request. A request with an incorrect fingerprint will fail with error 412 conditionNotMet.", + "type": "string", + "format": "byte" + } + } + }, + "AttachedDiskInitializeParams": { + "id": "AttachedDiskInitializeParams", + "type": "object", + "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance. This property is mutually exclusive with the source property; you can only define one or the other, but not both.", + "properties": { + "sourceSnapshot": { + "type": "string", + "description": "The source snapshot to create this disk. When creating a new instance, one of initializeParams.sourceSnapshot or initializeParams.sourceImage or disks.source is required except for local SSD. To create a disk with a snapshot that you created, specify the snapshot name in the following format: global/snapshots/my-backup If the source snapshot is deleted later, this field will not be set." + }, + "labels": { + "description": "Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "diskType": { + "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example: https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard For a full list of acceptable values, see Persistent disk types. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL.", + "type": "string" + }, + "resourcePolicies": { + "description": "Resource policies applied to this disk for automatic snapshot creations. Specified using the full or partial URL. For instance template, specify only the resource policy name.", + "items": { + "type": "string" + }, + "type": "array" + }, + "sourceImage": { + "type": "string", + "description": "The source image to create this disk. When creating a new instance, one of initializeParams.sourceImage or initializeParams.sourceSnapshot or disks.source is required except for local SSD. To create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-9 to use the latest Debian 9 image: projects/debian-cloud/global/images/family/debian-9 Alternatively, use a specific version of a public operating system image: projects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD To create a disk with a custom image that you created, specify the image name in the following format: global/images/my-custom-image You can also specify a custom image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name: global/images/family/my-image-family If the source image is deleted later, this field will not be set." + }, + "sourceImageEncryptionKey": { + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key. Instance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys.", + "$ref": "CustomerEncryptionKey" + }, + "onUpdateAction": { + "type": "string", + "enum": [ + "RECREATE_DISK", + "RECREATE_DISK_IF_SOURCE_CHANGED", + "USE_EXISTING_DISK" + ], + "enumDescriptions": [ + "Always recreate the disk.", + "Recreate the disk if source (image, snapshot) of this disk is different from source of existing disk.", + "Use the existing disk, this is the default behaviour." + ], + "description": "Specifies which action to take on instance update with this disk. Default is to use the existing disk." + }, + "sourceSnapshotEncryptionKey": { + "description": "The customer-supplied encryption key of the source snapshot.", + "$ref": "CustomerEncryptionKey" + }, + "description": { + "description": "An optional description. Provide this property when creating the disk.", + "type": "string" + }, + "diskName": { + "description": "Specifies the disk name. If not specified, the default is to use the name of the instance. If a disk with the same name already exists in the given region, the existing disk is attached to the new instance and the new disk is not created.", + "type": "string" + }, + "provisionedIops": { + "type": "string", + "format": "int64", + "description": "Indicates how many IOPS to provision for the disk. This sets the number of I/O operations per second that the disk can handle. Values must be between 10,000 and 120,000. For more details, see the Extreme persistent disk documentation." + }, + "diskSizeGb": { + "format": "int64", + "type": "string", + "description": "Specifies the size of the disk in base-2 GB. The size must be at least 10 GB. If you specify a sourceImage, which is required for boot disks, the default size is the size of the sourceImage. If you do not specify a sourceImage, the default disk size is 500 GB." + } + } + }, + "SecurityPolicy": { + "properties": { + "advancedOptionsConfig": { + "$ref": "SecurityPolicyAdvancedOptionsConfig" + }, + "id": { + "format": "uint64", + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "rules": { + "description": "A list of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match \"*\"). If no rules are provided when creating a security policy, a default rule with action \"allow\" will be added.", + "items": { + "$ref": "SecurityPolicyRule" + }, + "type": "array" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "kind": { + "type": "string", + "description": "[Output only] Type of the resource. Always compute#securityPolicyfor security policies", + "default": "compute#securityPolicy" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "fingerprint": { + "type": "string", + "format": "byte", + "description": "Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make get() request to the security policy." + }, + "adaptiveProtectionConfig": { + "$ref": "SecurityPolicyAdaptiveProtectionConfig" + } + }, + "description": "Represents a Google Cloud Armor security policy resource. Only external backend services that use load balancers can reference a security policy. For more information, see Google Cloud Armor security policy overview.", + "type": "object", + "id": "SecurityPolicy" + }, + "VpnGatewaysScopedList": { + "id": "VpnGatewaysScopedList", + "properties": { + "warning": { + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + } + } + }, + "vpnGateways": { + "description": "[Output Only] A list of VPN gateways contained in this scope.", + "items": { + "$ref": "VpnGateway" + }, + "type": "array" + } + }, + "type": "object" + }, + "ManagedInstanceLastAttempt": { + "id": "ManagedInstanceLastAttempt", + "properties": { + "errors": { + "type": "object", + "description": "[Output Only] Encountered errors during the last attempt to create or delete the instance.", + "properties": { + "errors": { + "items": { + "properties": { + "message": { + "description": "[Output Only] An optional, human-readable error message.", + "type": "string" + }, + "code": { + "type": "string", + "description": "[Output Only] The error type identifier for this error." + }, + "location": { + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional.", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] The array of errors encountered while processing this operation.", + "type": "array" + } + } + } + }, + "type": "object" + }, + "CommitmentAggregatedList": { + "id": "CommitmentAggregatedList", + "type": "object", + "properties": { + "unreachables": { + "items": { + "type": "string" + }, + "type": "array", + "description": "[Output Only] Unreachable resources." + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#commitmentAggregatedList for aggregated lists of commitments.", + "default": "compute#commitmentAggregatedList", + "type": "string" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "items": { + "type": "object", + "description": "A list of CommitmentsScopedList resources.", + "additionalProperties": { + "$ref": "CommitmentsScopedList", + "description": "[Output Only] Name of the scope containing this set of commitments." + } + }, + "warning": { + "properties": { + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "data": { + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "LicenseCode": { + "description": "Represents a License Code resource. A License Code is a unique identifier used to represent a license resource. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. ", + "type": "object", + "id": "LicenseCode", + "properties": { + "description": { + "description": "[Output Only] Description of this License Code.", + "type": "string" + }, + "state": { + "type": "string", + "enum": [ + "DISABLED", + "ENABLED", + "RESTRICTED", + "STATE_UNSPECIFIED", + "TERMINATED" + ], + "enumDescriptions": [ + "Machines are not allowed to attach boot disks with this License Code. Requests to create new resources with this license will be rejected.", + "Use is allowed for anyone with USE_READ_ONLY access to this License Code.", + "Use of this license is limited to a project whitelist.", + "", + "Reserved state." + ], + "description": "[Output Only] Current state of this License Code." + }, + "name": { + "annotations": { + "required": [ + "compute.licenses.insert" + ] + }, + "pattern": "[0-9]{0,20}?", + "description": "[Output Only] Name of the resource. The name is 1-20 characters long and must be a valid 64 bit integer.", + "type": "string" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64", + "type": "string" + }, + "licenseAlias": { + "type": "array", + "items": { + "$ref": "LicenseCodeLicenseAlias" + }, + "description": "[Output Only] URL and description aliases of Licenses with the same License Code." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#licenseCode for licenses.", + "default": "compute#licenseCode" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "transferable": { + "type": "boolean", + "description": "[Output Only] If true, the license will remain attached when creating images or snapshots from disks. Otherwise, the license is not transferred." + } + } + }, + "InterconnectOutageNotification": { + "description": "Description of a planned outage on this Interconnect.", + "properties": { + "endTime": { + "format": "int64", + "type": "string", + "description": "Scheduled end time for the outage (milliseconds since Unix epoch)." + }, + "source": { + "type": "string", + "description": "The party that generated this notification, which can take the following value: - GOOGLE: this notification as generated by Google. Note that the value of NSRC_GOOGLE has been deprecated in favor of GOOGLE.", + "enum": [ + "GOOGLE", + "NSRC_GOOGLE" + ], + "enumDescriptions": [ + "This notification was generated by Google.", + "[Deprecated] This notification was generated by Google." + ] + }, + "name": { + "description": "Unique identifier for this outage notification.", + "type": "string" + }, + "description": { + "type": "string", + "description": "A description about the purpose of the outage." + }, + "affectedCircuits": { + "items": { + "type": "string" + }, + "description": "If issue_type is IT_PARTIAL_OUTAGE, a list of the Google-side circuit IDs that will be affected.", + "type": "array" + }, + "startTime": { + "description": "Scheduled start time for the outage (milliseconds since Unix epoch).", + "format": "int64", + "type": "string" + }, + "issueType": { + "enum": [ + "IT_OUTAGE", + "IT_PARTIAL_OUTAGE", + "OUTAGE", + "PARTIAL_OUTAGE" + ], + "enumDescriptions": [ + "[Deprecated] The Interconnect may be completely out of service for some or all of the specified window.", + "[Deprecated] Some circuits comprising the Interconnect will be out of service during the expected window. The interconnect as a whole should remain up, albeit with reduced bandwidth.", + "The Interconnect may be completely out of service for some or all of the specified window.", + "Some circuits comprising the Interconnect will be out of service during the expected window. The interconnect as a whole should remain up, albeit with reduced bandwidth." + ], + "description": "Form this outage is expected to take, which can take one of the following values: - OUTAGE: The Interconnect may be completely out of service for some or all of the specified window. - PARTIAL_OUTAGE: Some circuits comprising the Interconnect as a whole should remain up, but with reduced bandwidth. Note that the versions of this enum prefixed with \"IT_\" have been deprecated in favor of the unprefixed values.", + "type": "string" + }, + "state": { + "type": "string", + "description": "State of this notification, which can take one of the following values: - ACTIVE: This outage notification is active. The event could be in the past, present, or future. See start_time and end_time for scheduling. - CANCELLED: The outage associated with this notification was cancelled before the outage was due to start. - COMPLETED: The outage associated with this notification is complete. Note that the versions of this enum prefixed with \"NS_\" have been deprecated in favor of the unprefixed values.", + "enum": [ + "ACTIVE", + "CANCELLED", + "COMPLETED", + "NS_ACTIVE", + "NS_CANCELED" + ], + "enumDescriptions": [ + "This outage notification is active. The event could be in the future, present, or past. See start_time and end_time for scheduling.", + "The outage associated with this notification was cancelled before the outage was due to start.", + "The outage associated with this notification is complete.", + "[Deprecated] This outage notification is active. The event could be in the future, present, or past. See start_time and end_time for scheduling.", + "[Deprecated] The outage associated with this notification was canceled before the outage was due to start." + ] + } + }, + "id": "InterconnectOutageNotification", + "type": "object" + }, + "TargetSslProxiesSetProxyHeaderRequest": { + "properties": { + "proxyHeader": { + "enum": [ + "NONE", + "PROXY_V1" + ], + "type": "string", + "enumDescriptions": [ + "", + "" + ], + "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed." + } + }, + "type": "object", + "id": "TargetSslProxiesSetProxyHeaderRequest" + }, + "MachineTypeAggregatedList": { + "type": "object", + "id": "MachineTypeAggregatedList", + "properties": { + "items": { + "additionalProperties": { + "$ref": "MachineTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of machine types." + }, + "type": "object", + "description": "A list of MachineTypesScopedList resources." + }, + "warning": { + "properties": { + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + }, + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "type": "array", + "items": { + "type": "string" + } + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "kind": { + "default": "compute#machineTypeAggregatedList", + "type": "string", + "description": "[Output Only] Type of resource. Always compute#machineTypeAggregatedList for aggregated lists of machine types." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + } + }, + "VpnGatewaysGetStatusResponse": { + "type": "object", + "id": "VpnGatewaysGetStatusResponse", + "properties": { + "result": { + "$ref": "VpnGatewayStatus" + } + } + }, + "ResourcePolicyInstanceSchedulePolicySchedule": { + "id": "ResourcePolicyInstanceSchedulePolicySchedule", + "type": "object", + "properties": { + "schedule": { + "description": "Specifies the frequency for the operation, using the unix-cron format.", + "type": "string" + } + }, + "description": "Schedule for an instance operation." + }, + "VmEndpointNatMappingsList": { + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "type": "object" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "kind": { + "default": "compute#vmEndpointNatMappingsList", + "type": "string", + "description": "[Output Only] Type of resource. Always compute#vmEndpointNatMappingsList for lists of Nat mappings of VM endpoints." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "result": { + "type": "array", + "items": { + "$ref": "VmEndpointNatMappings" + }, + "description": "[Output Only] A list of Nat mapping information of VM endpoints." + } + }, + "description": "Contains a list of VmEndpointNatMappings.", + "id": "VmEndpointNatMappingsList", + "type": "object" + }, + "TargetPoolsRemoveHealthCheckRequest": { + "properties": { + "healthChecks": { + "items": { + "$ref": "HealthCheckReference" + }, + "type": "array", + "description": "Health check URL to be removed. This can be a full or valid partial URL. For example, the following are valid URLs: - https://www.googleapis.com/compute/beta/projects/project /global/httpHealthChecks/health-check - projects/project/global/httpHealthChecks/health-check - global/httpHealthChecks/health-check " + } + }, + "type": "object", + "id": "TargetPoolsRemoveHealthCheckRequest" + }, + "AdvancedMachineFeatures": { + "properties": { + "threadsPerCore": { + "description": "The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed.", + "format": "int32", + "type": "integer" + }, + "enableNestedVirtualization": { + "description": "Whether to enable nested virtualization or not (default is false).", + "type": "boolean" + } + }, + "description": "Specifies options for controlling advanced machine features. Options that would traditionally be configured in a BIOS belong here. Features that require operating system support may have corresponding entries in the GuestOsFeatures of an Image (e.g., whether or not the OS in the Image supports nested virtualization being enabled or disabled).", + "type": "object", + "id": "AdvancedMachineFeatures" + }, + "TargetSslProxyList": { + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "kind": { + "description": "Type of resource.", + "type": "string", + "default": "compute#targetSslProxyList" + }, + "warning": { + "properties": { + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "items": { + "items": { + "$ref": "TargetSslProxy" + }, + "description": "A list of TargetSslProxy resources.", + "type": "array" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + } + }, + "type": "object", + "description": "Contains a list of TargetSslProxy resources.", + "id": "TargetSslProxyList" + }, + "SubnetworksSetPrivateIpGoogleAccessRequest": { + "id": "SubnetworksSetPrivateIpGoogleAccessRequest", + "properties": { + "privateIpGoogleAccess": { + "type": "boolean" + } + }, + "type": "object" + }, + "NetworkEndpointGroupsDetachEndpointsRequest": { + "type": "object", + "properties": { + "networkEndpoints": { + "items": { + "$ref": "NetworkEndpoint" + }, + "type": "array", + "description": "The list of network endpoints to be detached." + } + }, + "id": "NetworkEndpointGroupsDetachEndpointsRequest" + }, + "HttpRouteRuleMatch": { + "id": "HttpRouteRuleMatch", + "description": "HttpRouteRuleMatch specifies a set of criteria for matching requests to an HttpRouteRule. All specified criteria must be satisfied for a match to occur.", + "type": "object", + "properties": { + "prefixMatch": { + "description": "For satisfying the matchRule condition, the request's path must begin with the specified prefixMatch. prefixMatch must begin with a /. The value must be between 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified.", + "type": "string" + }, + "queryParameterMatches": { + "items": { + "$ref": "HttpQueryParameterMatch" + }, + "type": "array", + "description": "Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to target gRPC proxy." + }, + "ignoreCase": { + "description": "Specifies that prefixMatch and fullPathMatch matches are case sensitive. The default value is false. ignoreCase must not be used with regexMatch. Not supported when the URL map is bound to target gRPC proxy.", + "type": "boolean" + }, + "headerMatches": { + "description": "Specifies a list of header match criteria, all of which must match corresponding headers in the request.", + "type": "array", + "items": { + "$ref": "HttpHeaderMatch" + } + }, + "fullPathMatch": { + "type": "string", + "description": "For satisfying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL. fullPathMatch must be between 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified." + }, + "metadataFilters": { + "description": "Opaque filter criteria used by Loadbalancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to Loadbalancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadataFilters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here will be applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true.", + "type": "array", + "items": { + "$ref": "MetadataFilter" + } + }, + "regexMatch": { + "description": "For satisfying the matchRule condition, the path of the request must satisfy the regular expression specified in regexMatch after removing any query parameters and anchor supplied with the original URL. For regular expression grammar please see github.com/google/re2/wiki/Syntax Only one of prefixMatch, fullPathMatch or regexMatch must be specified. Note that regexMatch only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED.", + "type": "string" + } + } + }, + "NetworkEndpointGroupCloudRun": { + "properties": { + "urlMask": { + "type": "string", + "description": "A template to parse service and tag fields from a request URL. URL mask allows for routing to multiple Run services without having to create multiple network endpoint groups and backend services. For example, request URLs \"foo1.domain.com/bar1\" and \"foo1.domain.com/bar2\" can be backed by the same Serverless Network Endpoint Group (NEG) with URL mask \".domain.com/\". The URL mask will parse them to { service=\"bar1\", tag=\"foo1\" } and { service=\"bar2\", tag=\"foo2\" } respectively." + }, + "tag": { + "description": "Optional Cloud Run tag represents the \"named-revision\" to provide additional fine-grained traffic routing information. The tag must be 1-63 characters long, and comply with RFC1035. Example value: \"revision-0010\".", + "type": "string" + }, + "service": { + "description": "Cloud Run service is the main resource of Cloud Run. The service must be 1-63 characters long, and comply with RFC1035. Example value: \"run-service\".", + "type": "string" + } + }, + "id": "NetworkEndpointGroupCloudRun", + "description": "Configuration for a Cloud Run network endpoint group (NEG). The service must be provided explicitly or in the URL mask. The tag is optional, may be provided explicitly or in the URL mask. Note: Cloud Run service must be in the same project and located in the same region as the Serverless NEG.", + "type": "object" + }, + "RegionSetPolicyRequest": { + "properties": { + "policy": { + "$ref": "Policy", + "description": "REQUIRED: The complete policy to be applied to the 'resource'. The size of the policy is limited to a few 10s of KB. An empty policy is in general a valid policy but certain services (like Projects) might reject them." + }, + "etag": { + "description": "Flatten Policy to create a backward compatible wire-format. Deprecated. Use 'policy' to specify the etag.", + "type": "string", + "format": "byte" + }, + "bindings": { + "description": "Flatten Policy to create a backwacd compatible wire-format. Deprecated. Use 'policy' to specify bindings.", + "items": { + "$ref": "Binding" + }, + "type": "array" + } + }, + "type": "object", + "id": "RegionSetPolicyRequest" + }, + "ResourcePolicyHourlyCycle": { + "id": "ResourcePolicyHourlyCycle", + "description": "Time window specified for hourly operations.", + "type": "object", + "properties": { + "hoursInCycle": { + "format": "int32", + "description": "Defines a schedule with units measured in hours. The value determines how many hours pass between the start of each cycle.", + "type": "integer" + }, + "duration": { + "description": "[Output only] Duration of the time window, automatically chosen to be smallest possible in the given scenario.", + "type": "string" + }, + "startTime": { + "type": "string", + "description": "Time within the window to start the operations. It must be in format \"HH:MM\", where HH : [00-23] and MM : [00-00] GMT." + } + } + }, + "BackendBucket": { + "description": "Represents a Cloud Storage Bucket resource. This Cloud Storage bucket resource is referenced by a URL map of a load balancer. For more information, read Backend Buckets.", + "properties": { + "customResponseHeaders": { + "description": "Headers that the HTTP/S load balancer should add to proxied responses.", + "items": { + "type": "string" + }, + "type": "array" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "name": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "id": { + "format": "uint64", + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "enableCdn": { + "description": "If true, enable Cloud CDN for this BackendBucket.", + "type": "boolean" + }, + "description": { + "description": "An optional textual description of the resource; provided by the client when the resource is created.", + "type": "string" + }, + "bucketName": { + "description": "Cloud Storage bucket name.", + "type": "string" + }, + "kind": { + "type": "string", + "default": "compute#backendBucket", + "description": "Type of the resource." + }, + "cdnPolicy": { + "description": "Cloud CDN configuration for this BackendBucket.", + "$ref": "BackendBucketCdnPolicy" + } + }, + "id": "BackendBucket", + "type": "object" + }, + "UsableSubnetworksAggregatedList": { + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "UsableSubnetwork" + }, + "description": "[Output] A list of usable subnetwork URLs." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#usableSubnetworksAggregatedList for aggregated lists of usable subnetworks.", + "default": "compute#usableSubnetworksAggregatedList" + }, + "warning": { + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. In special cases listUsable may return 0 subnetworks and nextPageToken which still should be used to get the next page of results.", + "type": "string" + } + }, + "id": "UsableSubnetworksAggregatedList", + "type": "object" + }, + "WeightedBackendService": { + "id": "WeightedBackendService", + "properties": { + "backendService": { + "description": "The full or partial URL to the default BackendService resource. Before forwarding the request to backendService, the loadbalancer applies any relevant headerActions specified as part of this backendServiceWeight.", + "type": "string" + }, + "headerAction": { + "$ref": "HttpHeaderAction", + "description": "Specifies changes to request and response headers that need to take effect for the selected backendService. headerAction specified here take effect before headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap. Note that headerAction is not supported for Loadbalancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true." + }, + "weight": { + "type": "integer", + "description": "Specifies the fraction of traffic sent to backendService, computed as weight / (sum of all weightedBackendService weights in routeAction) . The selection of a backend service is determined only for new traffic. Once a user's request has been directed to a backendService, subsequent requests will be sent to the same backendService as determined by the BackendService's session affinity policy. The value must be between 0 and 1000", + "format": "uint32" + } + }, + "type": "object", + "description": "In contrast to a single BackendService in HttpRouteAction to which all matching traffic is directed to, WeightedBackendService allows traffic to be split across multiple BackendServices. The volume of traffic for each BackendService is proportional to the weight specified in each WeightedBackendService" + }, + "Router": { + "description": "Represents a Cloud Router resource. For more information about Cloud Router, read the Cloud Router overview.", + "type": "object", + "properties": { + "bgp": { + "$ref": "RouterBgp", + "description": "BGP information specific to this router." + }, + "nats": { + "items": { + "$ref": "RouterNat" + }, + "description": "A list of NAT services created in this router.", + "type": "array" + }, + "encryptedInterconnectRouter": { + "description": "Indicates if a router is dedicated for use with encrypted VLAN attachments (interconnectAttachments). Not currently available publicly. ", + "type": "boolean" + }, + "interfaces": { + "type": "array", + "items": { + "$ref": "RouterInterface" + }, + "description": "Router interfaces. Each interface requires either one linked resource, (for example, linkedVpnTunnel), or IP address and IP address range (for example, ipRange), or both." + }, + "network": { + "description": "URI of the network to which this router belongs.", + "annotations": { + "required": [ + "compute.routers.insert", + "compute.routers.update" + ] + }, + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.routers.insert" + ] + } + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "bgpPeers": { + "type": "array", + "items": { + "$ref": "RouterBgpPeer" + }, + "description": "BGP information that must be configured into the routing stack to establish BGP peering. This information must specify the peer ASN and either the interface name, IP address, or peer IP address. Please refer to RFC4273." + }, + "kind": { + "type": "string", + "default": "compute#router", + "description": "[Output Only] Type of resource. Always compute#router for routers." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "region": { + "type": "string", + "description": "[Output Only] URI of the region where the router resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body." + } + }, + "id": "Router" + }, + "Address": { + "id": "Address", + "type": "object", + "properties": { + "networkTier": { + "enum": [ + "PREMIUM", + "STANDARD" + ], + "type": "string", + "description": "This signifies the networking tier used for configuring this address and can only take the following values: PREMIUM or STANDARD. Internal IP addresses are always Premium Tier; global external IP addresses are always Premium Tier; regional external IP addresses can be either Standard or Premium Tier. If this field is not specified, it is assumed to be PREMIUM.", + "enumDescriptions": [ + "High quality, Google-grade network tier, support for all networking products.", + "Public internet quality, only limited support for other networking products." + ] + }, + "region": { + "description": "[Output Only] The URL of the region where a regional address resides. For regional addresses, you must specify the region as a path parameter in the HTTP request URL. *This field is not applicable to global addresses.*", + "type": "string" + }, + "ipVersion": { + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_VERSION" + ], + "type": "string", + "enumDescriptions": [ + "", + "", + "" + ], + "description": "The IP version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address." + }, + "kind": { + "type": "string", + "default": "compute#address", + "description": "[Output Only] Type of the resource. Always compute#address for addresses." + }, + "status": { + "enum": [ + "IN_USE", + "RESERVED", + "RESERVING" + ], + "enumDescriptions": [ + "Address is being used by another resource and is not available.", + "Address is reserved and available to use.", + "Address is being reserved." + ], + "description": "[Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this field when you create the resource.", + "type": "string" + }, + "users": { + "description": "[Output Only] The URLs of the resources that are using this address.", + "type": "array", + "items": { + "type": "string" + } + }, + "network": { + "type": "string", + "description": "The URL of the network in which to reserve the address. This field can only be used with INTERNAL type with the VPC_PEERING purpose." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.addresses.insert" + ] + }, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all following characters (except for the last character) must be a dash, lowercase letter, or digit. The last character must be a lowercase letter or digit." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "address": { + "description": "The static IP address represented by this resource.", + "type": "string" + }, + "addressType": { + "enum": [ + "EXTERNAL", + "INTERNAL", + "UNSPECIFIED_TYPE" + ], + "description": "The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL.", + "enumDescriptions": [ + "A publicly visible external IP address.", + "A private network IP address, for use with an Instance or Internal Load Balancer forwarding rule.", + "" + ], + "type": "string" + }, + "subnetwork": { + "description": "The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with a GCE_ENDPOINT or DNS_RESOLVER purpose.", + "type": "string" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string", + "format": "uint64" + }, + "purpose": { + "type": "string", + "description": "The purpose of this resource, which can be one of the following values: - GCE_ENDPOINT for addresses that are used by VM instances, alias IP ranges, load balancers, and similar resources. - DNS_RESOLVER for a DNS resolver address in a subnetwork for a Cloud DNS inbound forwarder IP addresses (regional internal IP address in a subnet of a VPC network) - VPC_PEERING for global internal IP addresses used for private services access allocated ranges. - NAT_AUTO for the regional external IP addresses used by Cloud NAT when allocating addresses using . - IPSEC_INTERCONNECT for addresses created from a private IP range that are reserved for a VLAN attachment in an *IPsec-encrypted Cloud Interconnect* configuration. These addresses are regional resources. Not currently available publicly. - `SHARED_LOADBALANCER_VIP` for an internal IP address that is assigned to multiple internal forwarding rules. - `PRIVATE_SERVICE_CONNECT` for a private network address that is used to configure Private Service Connect. Only global internal addresses can use this purpose. ", + "enum": [ + "DNS_RESOLVER", + "GCE_ENDPOINT", + "IPSEC_INTERCONNECT", + "NAT_AUTO", + "PRIVATE_SERVICE_CONNECT", + "SHARED_LOADBALANCER_VIP", + "VPC_PEERING" + ], + "enumDescriptions": [ + "DNS resolver address in the subnetwork.", + "VM internal/alias IP, Internal LB service IP, etc.", + "A regional internal IP address range reserved for the VLAN attachment that is used in IPsec-encrypted Cloud Interconnect. This regional internal IP address range must not overlap with any IP address range of subnet/route in the VPC network and its peering networks. After the VLAN attachment is created with the reserved IP address range, when creating a new VPN gateway, its interface IP address is allocated from the associated VLAN attachment’s IP address range.", + "External IP automatically reserved for Cloud NAT.", + "A private network IP address that can be used to configure Private Service Connect. This purpose can be specified only for GLOBAL addresses of Type INTERNAL", + "A private network IP address that can be shared by multiple Internal Load Balancer forwarding rules.", + "IP range for peer networks." + ] + }, + "prefixLength": { + "format": "int32", + "description": "The prefix length if the resource represents an IP range.", + "type": "integer" + } + }, + "description": "Represents an IP Address resource. Google Compute Engine has two IP Address resources: * [Global (external and internal)](https://cloud.google.com/compute/docs/reference/rest/v1/globalAddresses) * [Regional (external and internal)](https://cloud.google.com/compute/docs/reference/rest/v1/addresses) For more information, see Reserving a static external IP address." + }, + "PacketMirroringMirroredResourceInfo": { + "id": "PacketMirroringMirroredResourceInfo", + "properties": { + "tags": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A set of mirrored tags. Traffic from/to all VM instances that have one or more of these tags will be mirrored." + }, + "instances": { + "items": { + "$ref": "PacketMirroringMirroredResourceInfoInstanceInfo" + }, + "type": "array", + "description": "A set of virtual machine instances that are being mirrored. They must live in zones contained in the same region as this packetMirroring. Note that this config will apply only to those network interfaces of the Instances that belong to the network specified in this packetMirroring. You may specify a maximum of 50 Instances." + }, + "subnetworks": { + "type": "array", + "items": { + "$ref": "PacketMirroringMirroredResourceInfoSubnetInfo" + }, + "description": "A set of subnetworks for which traffic from/to all VM instances will be mirrored. They must live in the same region as this packetMirroring. You may specify a maximum of 5 subnetworks." + } + }, + "type": "object" + }, + "ResourceCommitment": { + "description": "Commitment for a particular resource (a Commitment is composed of one or more of these).", + "type": "object", + "properties": { + "amount": { + "type": "string", + "format": "int64", + "description": "The amount of the resource purchased (in a type-dependent unit, such as bytes). For vCPUs, this can just be an integer. For memory, this must be provided in MB. Memory must be a multiple of 256 MB, with up to 6.5GB of memory per every vCPU." + }, + "type": { + "type": "string", + "description": "Type of resource for which this commitment applies. Possible values are VCPU and MEMORY", + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "enum": [ + "ACCELERATOR", + "LOCAL_SSD", + "MEMORY", + "UNSPECIFIED", + "VCPU" + ] + }, + "acceleratorType": { + "description": "Name of the accelerator type resource. Applicable only when the type is ACCELERATOR.", + "type": "string" + } + }, + "id": "ResourceCommitment" + }, + "UrlMapTestHeader": { + "id": "UrlMapTestHeader", + "properties": { + "name": { + "description": "Header name.", + "type": "string" + }, + "value": { + "description": "Header value.", + "type": "string" + } + }, + "type": "object", + "description": "HTTP headers used in UrlMapTests." + }, + "HealthCheck": { + "type": "object", + "properties": { + "http2HealthCheck": { + "$ref": "HTTP2HealthCheck" + }, + "region": { + "description": "[Output Only] Region where the health check resides. Not applicable to global health checks.", + "type": "string" + }, + "sslHealthCheck": { + "$ref": "SSLHealthCheck" + }, + "httpHealthCheck": { + "$ref": "HTTPHealthCheck" + }, + "logConfig": { + "$ref": "HealthCheckLogConfig", + "description": "Configure logging on this health check." + }, + "tcpHealthCheck": { + "$ref": "TCPHealthCheck" + }, + "timeoutSec": { + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", + "format": "int32", + "type": "integer" + }, + "type": { + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ], + "enum": [ + "GRPC", + "HTTP", + "HTTP2", + "HTTPS", + "INVALID", + "SSL", + "TCP" + ], + "type": "string", + "description": "Specifies the type of the healthCheck, either TCP, SSL, HTTP, HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "grpcHealthCheck": { + "$ref": "GRPCHealthCheck" + }, + "checkIntervalSec": { + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "type": "integer", + "format": "int32" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. For example, a name that is 1-63 characters long, matches the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`, and otherwise complies with RFC1035. This regular expression describes a name where the first character is a lowercase letter, and all following characters are a dash, lowercase letter, or digit, except the last character, which isn't a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in 3339 text format.", + "type": "string" + }, + "httpsHealthCheck": { + "$ref": "HTTPSHealthCheck" + }, + "unhealthyThreshold": { + "format": "int32", + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "type": "integer" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string", + "format": "uint64" + }, + "healthyThreshold": { + "type": "integer", + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "kind": { + "type": "string", + "default": "compute#healthCheck", + "description": "Type of the resource." + } + }, + "description": "Represents a Health Check resource. Google Compute Engine has two Health Check resources: * [Global](/compute/docs/reference/rest/v1/healthChecks) * [Regional](/compute/docs/reference/rest/v1/regionHealthChecks) Internal HTTP(S) load balancers must use regional health checks (`compute.v1.regionHealthChecks`). Traffic Director must use global health checks (`compute.v1.HealthChecks`). Internal TCP/UDP load balancers can use either regional or global health checks (`compute.v1.regionHealthChecks` or `compute.v1.HealthChecks`). External HTTP(S), TCP proxy, and SSL proxy load balancers as well as managed instance group auto-healing must use global health checks (`compute.v1.HealthChecks`). Backend service-based network load balancers must use regional health checks (`compute.v1.regionHealthChecks`). Target pool-based network load balancers must use legacy HTTP health checks (`compute.v1.httpHealthChecks`). For more information, see Health checks overview.", + "id": "HealthCheck" + }, + "ShieldedInstanceConfig": { + "type": "object", + "description": "A set of Shielded Instance options.", + "id": "ShieldedInstanceConfig", + "properties": { + "enableVtpm": { + "description": "Defines whether the instance has the vTPM enabled. Enabled by default.", + "type": "boolean" + }, + "enableSecureBoot": { + "type": "boolean", + "description": "Defines whether the instance has Secure Boot enabled. Disabled by default." + }, + "enableIntegrityMonitoring": { + "type": "boolean", + "description": "Defines whether the instance has integrity monitoring enabled. Enabled by default." + } + } + }, + "Backend": { + "type": "object", + "properties": { + "balancingMode": { + "type": "string", + "enum": [ + "CONNECTION", + "RATE", + "UTILIZATION" + ], + "enumDescriptions": [ + "Balance based on the number of simultaneous connections.", + "Balance based on requests per second (RPS).", + "Balance based on the backend utilization." + ], + "description": "Specifies how to determine whether the backend of a load balancer can handle additional traffic or is fully loaded. For usage guidelines, see Connection balancing mode. Backends must use compatible balancing modes. For more information, see Supported balancing modes and target capacity settings and Restrictions and guidance for instance groups. Note: Currently, if you use the API to configure incompatible balancing modes, the configuration might be accepted even though it has no impact and is ignored. Specifically, Backend.maxUtilization is ignored when Backend.balancingMode is RATE. In the future, this incompatible combination will be rejected." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "maxRatePerInstance": { + "format": "float", + "type": "number", + "description": "Defines a maximum target for requests per second (RPS). For usage guidelines, see Rate balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is CONNECTION." + }, + "capacityScaler": { + "type": "number", + "description": "A multiplier applied to the backend's target capacity of its balancing mode. The default value is 1, which means the group serves up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available capacity. The valid ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and smaller than 0.1. You cannot configure a setting of 0 when there is only one backend attached to the backend service.", + "format": "float" + }, + "failover": { + "type": "boolean", + "description": "This field designates whether this is a failover backend. More than one failover backend can be configured for a given BackendService." + }, + "maxRatePerEndpoint": { + "format": "float", + "description": "Defines a maximum target for requests per second (RPS). For usage guidelines, see Rate balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is CONNECTION.", + "type": "number" + }, + "maxConnectionsPerInstance": { + "format": "int32", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE.", + "type": "integer" + }, + "group": { + "description": "The fully-qualified URL of an instance group or network endpoint group (NEG) resource. To determine what types of backends a load balancer supports, see the [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service#backends). You must use the *fully-qualified* URL (starting with https://www.googleapis.com/) to specify the instance group or NEG. Partial URLs are not supported.", + "type": "string" + }, + "maxRate": { + "description": "Defines a maximum number of HTTP requests per second (RPS). For usage guidelines, see Rate balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is CONNECTION.", + "type": "integer", + "format": "int32" + }, + "maxConnections": { + "type": "integer", + "format": "int32", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE." + }, + "maxConnectionsPerEndpoint": { + "type": "integer", + "format": "int32", + "description": "Defines a target maximum number of simultaneous connections. For usage guidelines, see Connection balancing mode and Utilization balancing mode. Not available if the backend's balancingMode is RATE." + }, + "maxUtilization": { + "format": "float", + "type": "number", + "description": "Optional parameter to define a target capacity for the UTILIZATIONbalancing mode. The valid range is [0.0, 1.0]. For usage guidelines, see Utilization balancing mode." + } + }, + "description": "Message containing information of one individual backend.", + "id": "Backend" + }, + "TargetPoolsAddInstanceRequest": { + "id": "TargetPoolsAddInstanceRequest", + "properties": { + "instances": { + "description": "A full or partial URL to an instance to add to this target pool. This can be a full or partial URL. For example, the following are valid URLs: - https://www.googleapis.com/compute/v1/projects/project-id/zones/zone /instances/instance-name - projects/project-id/zones/zone/instances/instance-name - zones/zone/instances/instance-name ", + "items": { + "$ref": "InstanceReference" + }, + "type": "array" + } + }, + "type": "object" + }, + "VpnGateway": { + "properties": { + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#vpnGateway for VPN gateways.", + "default": "compute#vpnGateway" + }, + "labels": { + "additionalProperties": { + "type": "string" + }, + "type": "object", + "description": "Labels for this resource. These can only be added or modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty." + }, + "name": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string", + "annotations": { + "required": [ + "compute.vpnGateways.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "labelFingerprint": { + "type": "string", + "description": "A fingerprint for the labels being applied to this VpnGateway, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an VpnGateway.", + "format": "byte" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "network": { + "annotations": { + "required": [ + "compute.vpnGateways.insert" + ] + }, + "type": "string", + "description": "URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created." + }, + "vpnInterfaces": { + "description": "The list of VPN interfaces associated with this VPN gateway.", + "type": "array", + "items": { + "$ref": "VpnGatewayVpnGatewayInterface" + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "id": { + "type": "string", + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the VPN gateway resides." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + } + }, + "description": "Represents a HA VPN gateway. HA VPN is a high-availability (HA) Cloud VPN solution that lets you securely connect your on-premises network to your Google Cloud Virtual Private Cloud network through an IPsec VPN connection in a single region. For more information about Cloud HA VPN solutions, see Cloud VPN topologies .", + "id": "VpnGateway", + "type": "object" + }, + "ManagedInstanceVersion": { + "id": "ManagedInstanceVersion", + "properties": { + "name": { + "type": "string", + "description": "[Output Only] Name of the version." + }, + "instanceTemplate": { + "type": "string", + "description": "[Output Only] The intended template of the instance. This field is empty when current_action is one of { DELETING, ABANDONING }." + } + }, + "type": "object" + }, + "MachineTypesScopedList": { + "properties": { + "warning": { + "properties": { + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + } + }, + "description": "[Output Only] An informational warning that appears when the machine types list is empty.", + "type": "object" + }, + "machineTypes": { + "description": "[Output Only] A list of machine types contained in this scope.", + "items": { + "$ref": "MachineType" + }, + "type": "array" + } + }, + "id": "MachineTypesScopedList", + "type": "object" + }, + "ConfidentialInstanceConfig": { + "properties": { + "enableConfidentialCompute": { + "description": "Defines whether the instance should have confidential compute enabled.", + "type": "boolean" + } + }, + "type": "object", + "id": "ConfidentialInstanceConfig", + "description": "A set of Confidential Instance options." + }, + "PublicDelegatedPrefixPublicDelegatedSubPrefix": { + "properties": { + "ipCidrRange": { + "type": "string", + "description": "The IPv4 address range, in CIDR format, represented by this sub public delegated prefix." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "name": { + "type": "string", + "description": "The name of the sub public delegated prefix." + }, + "region": { + "type": "string", + "description": "[Output Only] The region of the sub public delegated prefix if it is regional. If absent, the sub prefix is global." + }, + "status": { + "description": "[Output Only] The status of the sub public delegated prefix.", + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "enum": [ + "ACTIVE", + "INACTIVE" + ] + }, + "delegateeProject": { + "description": "Name of the project scoping this PublicDelegatedSubPrefix.", + "type": "string" + }, + "isAddress": { + "description": "Whether the sub prefix is delegated to create Address resources in the delegatee project.", + "type": "boolean" + } + }, + "type": "object", + "id": "PublicDelegatedPrefixPublicDelegatedSubPrefix", + "description": "Represents a sub PublicDelegatedPrefix." + }, + "Zone": { + "id": "Zone", + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "supportsPzs": { + "description": "[Output Only] Reserved for future use.", + "type": "boolean" + }, + "availableCpuPlatforms": { + "items": { + "type": "string" + }, + "description": "[Output Only] Available cpu/platform selections for the zone.", + "type": "array" + }, + "region": { + "type": "string", + "description": "[Output Only] Full URL reference to the region which hosts the zone." + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#zone for zones.", + "default": "compute#zone", + "type": "string" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this zone." + }, + "name": { + "description": "[Output Only] Name of the resource.", + "type": "string" + }, + "description": { + "type": "string", + "description": "[Output Only] Textual description of the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "status": { + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "enum": [ + "DOWN", + "UP" + ], + "description": "[Output Only] Status of the zone, either UP or DOWN." + } + }, + "type": "object", + "description": "Represents a Zone resource. A zone is a deployment area. These deployment areas are subsets of a region. For example the zone us-east1-a is located in the us-east1 region. For more information, read Regions and Zones." + }, + "SslPoliciesList": { + "id": "SslPoliciesList", + "type": "object", + "properties": { + "warning": { + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "kind": { + "type": "string", + "default": "compute#sslPoliciesList", + "description": "[Output Only] Type of the resource. Always compute#sslPoliciesList for lists of sslPolicies." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "items": { + "$ref": "SslPolicy" + }, + "type": "array", + "description": "A list of SslPolicy resources." + } + } + }, + "InstanceGroupManagersCreateInstancesRequest": { + "properties": { + "instances": { + "items": { + "$ref": "PerInstanceConfig" + }, + "description": "[Required] List of specifications of per-instance configs.", + "type": "array" + } + }, + "description": "InstanceGroupManagers.createInstances", + "type": "object", + "id": "InstanceGroupManagersCreateInstancesRequest" + }, + "RegionInstanceGroupManagerList": { + "properties": { + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "items": { + "items": { + "$ref": "InstanceGroupManager" + }, + "type": "array", + "description": "A list of InstanceGroupManager resources." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + } + } + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "kind": { + "type": "string", + "default": "compute#regionInstanceGroupManagerList", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups that exist in th regional scope." + } + }, + "description": "Contains a list of managed instance groups.", + "id": "RegionInstanceGroupManagerList", + "type": "object" + }, + "HealthCheckService": { + "id": "HealthCheckService", + "description": "Represents a Health-Check as a Service resource.", + "type": "object", + "properties": { + "notificationEndpoints": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of URLs to the NotificationEndpoint resources. Must not have more than 10. A list of endpoints for receiving notifications of change in health status. For regional HealthCheckService, NotificationEndpoint must be regional and in the same region. For global HealthCheckService, NotificationEndpoint must be global." + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the health check service resides. This field is not applicable to global health check services. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body." + }, + "healthStatusAggregationPolicy": { + "description": "Optional. Policy for how the results from multiple health checks for the same endpoint are aggregated. Defaults to NO_AGGREGATION if unspecified. - NO_AGGREGATION. An EndpointHealth message is returned for each pair in the health check service. - AND. If any health check of an endpoint reports UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health checks report HEALTHY, the HealthState of the endpoint is HEALTHY. .", + "enum": [ + "AND", + "NO_AGGREGATION" + ], + "type": "string", + "enumDescriptions": [ + "If any backend's health check reports UNHEALTHY, then UNHEALTHY is the HealthState of the entire health check service. If all backend's are healthy, the HealthState of the health check service is HEALTHY.", + "An EndpointHealth message is returned for each backend in the health check service." + ] + }, + "healthChecks": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of URLs to the HealthCheck resources. Must have at least one HealthCheck, and not more than 10. HealthCheck resources must have portSpecification=USE_SERVING_PORT or portSpecification=USE_FIXED_PORT. For regional HealthCheckService, the HealthCheck must be regional and in the same region. For global HealthCheckService, HealthCheck must be global. Mix of regional and global HealthChecks is not supported. Multiple regional HealthChecks must belong to the same region. Regional HealthChecks must belong to the same region as zones of NEGs." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "networkEndpointGroups": { + "items": { + "type": "string" + }, + "description": "A list of URLs to the NetworkEndpointGroup resources. Must not have more than 100. For regional HealthCheckService, NEGs must be in zones in the region of the HealthCheckService.", + "type": "array" + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a HealthCheckService. An up-to-date fingerprint must be provided in order to patch/update the HealthCheckService; Otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the HealthCheckService.", + "type": "string", + "format": "byte" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "kind": { + "type": "string", + "description": "[Output only] Type of the resource. Always compute#healthCheckServicefor health check services.", + "default": "compute#healthCheckService" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "name": { + "type": "string", + "description": "Name of the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + } + } + }, + "SSLHealthCheck": { + "id": "SSLHealthCheck", + "properties": { + "port": { + "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", + "format": "int32", + "type": "integer" + }, + "proxyHeader": { + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "enum": [ + "NONE", + "PROXY_V1" + ] + }, + "portSpecification": { + "enumDescriptions": [ + "The port number in port is used for health checking.", + "The portName is used for health checking.", + "For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking." + ], + "type": "string", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "description": "Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, SSL health check follows behavior specified in port and portName fields." + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "request": { + "description": "The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII.", + "type": "string" + }, + "response": { + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.", + "type": "string" + } + }, + "type": "object" + }, + "Tags": { + "id": "Tags", + "properties": { + "items": { + "description": "An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "items": { + "type": "string" + }, + "type": "array" + }, + "fingerprint": { + "format": "byte", + "description": "Specifies a fingerprint for this request, which is essentially a hash of the tags' contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update tags. You must always provide an up-to-date fingerprint hash in order to update or change tags. To see the latest fingerprint, make get() request to the instance.", + "type": "string" + } + }, + "type": "object", + "description": "A set of instance tags." + }, + "InstanceGroupManagerStatusVersionTarget": { + "type": "object", + "properties": { + "isReached": { + "description": "[Output Only] A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager.", + "type": "boolean" + } + }, + "id": "InstanceGroupManagerStatusVersionTarget" + }, + "AutoscalerList": { + "id": "AutoscalerList", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "Autoscaler" + }, + "description": "A list of Autoscaler resources." + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + } + } + } + }, + "kind": { + "default": "compute#autoscalerList", + "description": "[Output Only] Type of resource. Always compute#autoscalerList for lists of autoscalers.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + }, + "description": "Contains a list of Autoscaler resources.", + "type": "object" + }, + "InstanceGroupManagerUpdatePolicy": { + "properties": { + "instanceRedistributionType": { + "description": "The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled. ", + "enumDescriptions": [ + "No action is being proactively performed in order to bring this IGM to its target instance distribution.", + "This IGM will actively converge to its target instance distribution." + ], + "enum": [ + "NONE", + "PROACTIVE" + ], + "type": "string" + }, + "maxSurge": { + "description": "The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.", + "$ref": "FixedOrPercent" + }, + "maxUnavailable": { + "description": "The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.", + "$ref": "FixedOrPercent" + }, + "type": { + "type": "string", + "enumDescriptions": [ + "No action is being proactively performed in order to bring this IGM to its target version distribution (regardless of whether this distribution is expressed using instanceTemplate or versions field).", + "This IGM will actively converge to its target version distribution (regardless of whether this distribution is expressed using instanceTemplate or versions field)." + ], + "description": "The type of update process. You can specify either PROACTIVE so that the instance group manager proactively executes actions in order to bring instances to their target versions or OPPORTUNISTIC so that no action is proactively executed but the update will be performed as part of other actions (for example, resizes or recreateInstances calls).", + "enum": [ + "OPPORTUNISTIC", + "PROACTIVE" + ] + }, + "minimalAction": { + "type": "string", + "description": "Minimal action to be taken on an instance. You can specify either RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a RESTART, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.", + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ], + "enumDescriptions": [ + "Do not perform any action.", + "Updates applied in runtime, instances will not be disrupted.", + "Old instances will be deleted. New instances will be created from the target template.", + "Every instance will be restarted." + ] + }, + "replacementMethod": { + "enumDescriptions": [ + "Instances will be recreated (with the same name)", + "Default option: instances will be deleted and created (with a new name)" + ], + "description": "What action should be used to replace instances. See minimal_action.REPLACE", + "type": "string", + "enum": [ + "RECREATE", + "SUBSTITUTE" + ] + } + }, + "id": "InstanceGroupManagerUpdatePolicy", + "type": "object" + }, + "HttpRedirectAction": { + "properties": { + "pathRedirect": { + "type": "string", + "description": "The path that will be used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters." + }, + "redirectResponseCode": { + "type": "string", + "enum": [ + "FOUND", + "MOVED_PERMANENTLY_DEFAULT", + "PERMANENT_REDIRECT", + "SEE_OTHER", + "TEMPORARY_REDIRECT" + ], + "description": "The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained. ", + "enumDescriptions": [ + "Http Status Code 302 - Found.", + "Http Status Code 301 - Moved Permanently.", + "Http Status Code 308 - Permanent Redirect maintaining HTTP method.", + "Http Status Code 303 - See Other.", + "Http Status Code 307 - Temporary Redirect maintaining HTTP method." + ] + }, + "hostRedirect": { + "description": "The host that will be used in the redirect response instead of the one that was supplied in the request. The value must be between 1 and 255 characters.", + "type": "string" + }, + "stripQuery": { + "type": "boolean", + "description": "If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false." + }, + "prefixRedirect": { + "type": "string", + "description": "The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters." + }, + "httpsRedirect": { + "description": "If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.", + "type": "boolean" + } + }, + "id": "HttpRedirectAction", + "description": "Specifies settings for an HTTP redirect.", + "type": "object" + }, + "TargetHttpProxy": { + "description": "Represents a Target HTTP Proxy resource. Google Compute Engine has two Target HTTP Proxy resources: * [Global](/compute/docs/reference/rest/v1/targetHttpProxies) * [Regional](/compute/docs/reference/rest/v1/regionTargetHttpProxies) A target HTTP proxy is a component of GCP HTTP load balancers. * targetHttpProxies are used by external HTTP load balancers and Traffic Director. * regionTargetHttpProxies are used by internal HTTP load balancers. Forwarding rules reference a target HTTP proxy, and the target proxy then references a URL map. For more information, read Using Target Proxies and Forwarding rule concepts.", + "id": "TargetHttpProxy", + "properties": { + "fingerprint": { + "type": "string", + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a TargetHttpProxy. An up-to-date fingerprint must be provided in order to patch/update the TargetHttpProxy; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the TargetHttpProxy.", + "format": "byte" + }, + "urlMap": { + "description": "URL to the UrlMap resource that defines the mapping from URL to the BackendService.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.", + "default": "compute#targetHttpProxy", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "proxyBind": { + "type": "boolean", + "description": "This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. When this field is set to true, Envoy proxies set up inbound traffic interception and bind to the IP address and port specified in the forwarding rule. This is generally useful when using Traffic Director to configure Envoy as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy proxy listens for inbound requests and handles requests when it receives them. The default is false." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the regional Target HTTP Proxy resides. This field is not applicable to global Target HTTP Proxies." + } + }, + "type": "object" + }, + "HttpRouteRule": { + "id": "HttpRouteRule", + "description": "An HttpRouteRule specifies how to match an HTTP request and the corresponding routing action that load balancing proxies will perform.", + "properties": { + "headerAction": { + "description": "Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction specified here are applied before the matching pathMatchers[].headerAction and after pathMatchers[].routeRules[].routeAction.weightedBackendService.backendServiceWeightAction[].headerAction Note that headerAction is not supported for Loadbalancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true.", + "$ref": "HttpHeaderAction" + }, + "priority": { + "description": "For routeRules within a given pathMatcher, priority determines the order in which load balancer will interpret routeRules. RouteRules are evaluated in order of priority, from the lowest to highest number. The priority of a rule decreases as its number increases (1, 2, 3, N+1). The first rule that matches the request is applied. You cannot configure two or more routeRules with the same priority. Priority for each rule must be set to a number between 0 and 2147483647 inclusive. Priority numbers can have gaps, which enable you to add or remove rules in the future without affecting the rest of the rules. For example, 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers to which you could add rules numbered from 6 to 8, 10 to 11, and 13 to 15 in the future without any impact on existing rules.", + "format": "int32", + "type": "integer" + }, + "service": { + "type": "string", + "description": "The full or partial URL of the backend service resource to which traffic is directed if this rule is matched. If routeAction is additionally specified, advanced routing actions like URL Rewrites, etc. take effect prior to sending the request to the backend. However, if service is specified, routeAction cannot contain any weightedBackendService s. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of urlRedirect, service or routeAction.weightedBackendService must be set." + }, + "matchRules": { + "items": { + "$ref": "HttpRouteRuleMatch" + }, + "description": "The list of criteria for matching attributes of a request to this routeRule. This list has OR semantics: the request matches this routeRule when any of the matchRules are satisfied. However predicates within a given matchRule have AND semantics. All predicates within a matchRule must match for the request to match the rule.", + "type": "array" + }, + "urlRedirect": { + "$ref": "HttpRedirectAction", + "description": "When this rule is matched, the request is redirected to a URL specified by urlRedirect. If urlRedirect is specified, service or routeAction must not be set. Not supported when the URL map is bound to target gRPC proxy." + }, + "description": { + "description": "The short description conveying the intent of this routeRule. The description can have a maximum length of 1024 characters.", + "type": "string" + }, + "routeAction": { + "description": "In response to a matching matchRule, the load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If routeAction specifies any weightedBackendServices, service must not be set. Conversely if service is set, routeAction cannot contain any weightedBackendServices. Only one of urlRedirect, service or routeAction.weightedBackendService must be set. UrlMaps for external HTTP(S) load balancers support only the urlRewrite action within a routeRule's routeAction.", + "$ref": "HttpRouteAction" + } + }, + "type": "object" + }, + "RegionDiskTypeList": { + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "kind": { + "default": "compute#regionDiskTypeList", + "description": "[Output Only] Type of resource. Always compute#regionDiskTypeList for region disk types.", + "type": "string" + }, + "items": { + "description": "A list of DiskType resources.", + "items": { + "$ref": "DiskType" + }, + "type": "array" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "data": { + "items": { + "type": "object", + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + }, + "id": "RegionDiskTypeList", + "type": "object" + }, + "SecurityPoliciesWafConfig": { + "type": "object", + "id": "SecurityPoliciesWafConfig", + "properties": { + "wafRules": { + "$ref": "PreconfiguredWafSet" + } + } + }, + "PerInstanceConfig": { + "properties": { + "fingerprint": { + "type": "string", + "description": "Fingerprint of this per-instance config. This field can be used in optimistic locking. It is ignored when inserting a per-instance config. An up-to-date fingerprint must be provided in order to update an existing per-instance config or the field needs to be unset.", + "format": "byte" + }, + "status": { + "type": "string", + "description": "The status of applying this per-instance config on the corresponding managed instance.", + "enumDescriptions": [ + "The per-instance config is being applied to the instance, but is not yet effective, possibly waiting for the instance to, for example, REFRESH.", + "The per-instance config deletion is being applied on the instance, possibly waiting for the instance to, for example, REFRESH.", + "The per-instance config is effective on the instance, meaning that all disks, ips and metadata specified in this config are attached or set on the instance.", + "*[Default]* The default status, when no per-instance config exists.", + "The per-instance config is set on an instance but not been applied yet.", + "The per-instance config has been deleted, but the deletion is not yet applied." + ], + "enum": [ + "APPLYING", + "DELETING", + "EFFECTIVE", + "NONE", + "UNAPPLIED", + "UNAPPLIED_DELETION" + ] + }, + "name": { + "description": "The name of a per-instance config and its corresponding instance. Serves as a merge key during UpdatePerInstanceConfigs operations, that is, if a per-instance config with the same name exists then it will be updated, otherwise a new one will be created for the VM instance with the same name. An attempt to create a per-instance config for a VM instance that either doesn't exist or is not part of the group will result in an error.", + "type": "string" + }, + "preservedState": { + "$ref": "PreservedState", + "description": "The intended preserved state for the given instance. Does not contain preserved state generated from a stateful policy." + } + }, + "id": "PerInstanceConfig", + "type": "object" + }, + "InterconnectDiagnostics": { + "id": "InterconnectDiagnostics", + "description": "Diagnostics information about interconnect, contains detailed and current technical information about Google's side of the connection.", + "type": "object", + "properties": { + "links": { + "items": { + "$ref": "InterconnectDiagnosticsLinkStatus" + }, + "description": "A list of InterconnectDiagnostics.LinkStatus objects, describing the status for each link on the Interconnect.", + "type": "array" + }, + "macAddress": { + "description": "The MAC address of the Interconnect's bundle interface.", + "type": "string" + }, + "arpCaches": { + "items": { + "$ref": "InterconnectDiagnosticsARPEntry" + }, + "description": "A list of InterconnectDiagnostics.ARPEntry objects, describing individual neighbors currently seen by the Google router in the ARP cache for the Interconnect. This will be empty when the Interconnect is not bundled.", + "type": "array" + } + } + }, + "NodeTemplateNodeTypeFlexibility": { + "properties": { + "memory": { + "type": "string" + }, + "localSsd": { + "type": "string" + }, + "cpus": { + "type": "string" + } + }, + "id": "NodeTemplateNodeTypeFlexibility", + "type": "object" + }, + "TargetInstancesScopedList": { + "properties": { + "targetInstances": { + "items": { + "$ref": "TargetInstance" + }, + "description": "A list of target instances contained in this scope.", + "type": "array" + }, + "warning": { + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + } + }, + "type": "object" + } + }, + "type": "object", + "id": "TargetInstancesScopedList" + }, + "UrlMapsScopedList": { + "properties": { + "warning": { + "type": "object", + "description": "Informational warning which replaces the list of backend services when the list is empty.", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + } + }, + "urlMaps": { + "description": "A list of UrlMaps contained in this scope.", + "items": { + "$ref": "UrlMap" + }, + "type": "array" + } + }, + "type": "object", + "id": "UrlMapsScopedList" + }, + "SecuritySettings": { + "id": "SecuritySettings", + "properties": { + "clientTlsPolicy": { + "description": "Optional. A URL referring to a networksecurity.ClientTlsPolicy resource that describes how clients should authenticate with this service's backends. clientTlsPolicy only applies to a global BackendService with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. If left blank, communications are not encrypted. Note: This field currently has no impact.", + "type": "string" + }, + "subjectAltNames": { + "items": { + "type": "string" + }, + "type": "array", + "description": "Optional. A list of Subject Alternative Names (SANs) that the client verifies during a mutual TLS handshake with an server/endpoint for this BackendService. When the server presents its X.509 certificate to the client, the client inspects the certificate's subjectAltName field. If the field contains one of the specified values, the communication continues. Otherwise, it fails. This additional check enables the client to verify that the server is authorized to run the requested service. Note that the contents of the server certificate's subjectAltName field are configured by the Public Key Infrastructure which provisions server identities. Only applies to a global BackendService with loadBalancingScheme set to INTERNAL_SELF_MANAGED. Only applies when BackendService has an attached clientTlsPolicy with clientCertificate (mTLS mode). Note: This field currently has no impact." + } + }, + "type": "object", + "description": "The authentication and authorization settings for a BackendService." + }, + "InstanceGroupManagerStatusStateful": { + "properties": { + "hasStatefulConfig": { + "type": "boolean", + "description": "[Output Only] A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful config even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions." + }, + "perInstanceConfigs": { + "description": "[Output Only] Status of per-instance configs on the instance.", + "$ref": "InstanceGroupManagerStatusStatefulPerInstanceConfigs" + } + }, + "id": "InstanceGroupManagerStatusStateful", + "type": "object" + }, + "InstanceGroupManagersRecreateInstancesRequest": { + "properties": { + "instances": { + "description": "The URLs of one or more instances to recreate. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "items": { + "type": "string" + }, + "type": "array" + } + }, + "id": "InstanceGroupManagersRecreateInstancesRequest", + "type": "object" + }, + "ExchangedPeeringRoute": { + "id": "ExchangedPeeringRoute", + "type": "object", + "properties": { + "imported": { + "description": "True if the peering route has been imported from a peer. The actual import happens if the field networkPeering.importCustomRoutes is true for this network, and networkPeering.exportCustomRoutes is true for the peer network, and the import does not result in a route conflict.", + "type": "boolean" + }, + "destRange": { + "description": "The destination range of the route.", + "type": "string" + }, + "type": { + "description": "The type of the peering route.", + "type": "string", + "enumDescriptions": [ + "For routes exported from local network.", + "The peering route.", + "The peering route corresponding to subnetwork range." + ], + "enum": [ + "DYNAMIC_PEERING_ROUTE", + "STATIC_PEERING_ROUTE", + "SUBNET_PEERING_ROUTE" + ] + }, + "priority": { + "type": "integer", + "format": "uint32", + "description": "The priority of the peering route." + }, + "nextHopRegion": { + "description": "The region of peering route next hop, only applies to dynamic routes.", + "type": "string" + } + } + }, + "Snapshot": { + "description": "Represents a Persistent Disk Snapshot resource. You can use snapshots to back up data on a regular interval. For more information, read Creating persistent disk snapshots.", + "type": "object", + "properties": { + "labels": { + "description": "Labels to apply to this snapshot. These can be later modified by the setLabels method. Label values may be empty.", + "additionalProperties": { + "type": "string" + }, + "type": "object" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "autoCreated": { + "type": "boolean", + "description": "[Output Only] Set to true if snapshots are automatically created by applying resource policy on the target disk." + }, + "storageBytesStatus": { + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "enum": [ + "UPDATING", + "UP_TO_DATE" + ], + "description": "[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date." + }, + "downloadBytes": { + "type": "string", + "description": "[Output Only] Number of bytes downloaded to restore a snapshot to a disk.", + "format": "int64" + }, + "sourceDisk": { + "description": "The source disk used to create this snapshot.", + "type": "string" + }, + "locationHint": { + "description": "An opaque location hint used to place the snapshot close to other resources. This field is for use by internal tools that use the public API.", + "type": "string" + }, + "kind": { + "default": "compute#snapshot", + "description": "[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.", + "type": "string" + }, + "satisfiesPzs": { + "description": "[Output Only] Reserved for future use.", + "type": "boolean" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "storageLocations": { + "description": "Cloud Storage bucket storage location of the snapshot (regional or multi-regional).", + "items": { + "type": "string" + }, + "type": "array" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "licenses": { + "type": "array", + "description": "[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).", + "items": { + "type": "string" + } + }, + "name": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "chainName": { + "description": "Creates the new snapshot in the snapshot chain labeled with the specified name. The chain name must be 1-63 characters long and comply with RFC1035. This is an uncommon option only for advanced service owners who needs to create separate snapshot chains, for example, for chargeback tracking. When you describe your snapshot resource, this field is visible only if it has a non-empty value.", + "type": "string" + }, + "diskSizeGb": { + "type": "string", + "description": "[Output Only] Size of the source disk, specified in GB.", + "format": "int64" + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.", + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY", + "UPLOADING" + ], + "enumDescriptions": [ + "Snapshot creation is in progress.", + "Snapshot is currently being deleted.", + "Snapshot creation failed.", + "Snapshot has been created successfully.", + "Snapshot is being uploaded." + ] + }, + "snapshotEncryptionKey": { + "description": "Encrypts the snapshot using a customer-supplied encryption key. After you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the snapshot later. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. Customer-supplied encryption keys do not protect access to metadata of the snapshot. If you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later.", + "$ref": "CustomerEncryptionKey" + }, + "licenseCodes": { + "type": "array", + "description": "[Output Only] Integer license codes indicating which licenses are attached to this snapshot.", + "items": { + "type": "string", + "format": "int64" + } + }, + "sourceDiskId": { + "type": "string", + "description": "[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name." + }, + "storageBytes": { + "description": "[Output Only] A size of the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.", + "type": "string", + "format": "int64" + }, + "sourceDiskEncryptionKey": { + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key.", + "$ref": "CustomerEncryptionKey" + }, + "id": { + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "labelFingerprint": { + "format": "byte", + "description": "A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a snapshot.", + "type": "string" + } + }, + "id": "Snapshot" + }, + "PacketMirroringList": { + "description": "Contains a list of PacketMirroring resources.", + "id": "PacketMirroringList", + "type": "object", + "properties": { + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + } + } + } + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "items": { + "description": "A list of PacketMirroring resources.", + "items": { + "$ref": "PacketMirroring" + }, + "type": "array" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#packetMirroring for packetMirrorings.", + "type": "string", + "default": "compute#packetMirroringList" + } + } + }, + "InstanceGroupsScopedList": { + "properties": { + "warning": { + "description": "[Output Only] An informational warning that replaces the list of instance groups when the list is empty.", + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + } + } + }, + "instanceGroups": { + "type": "array", + "description": "[Output Only] The list of instance groups that are contained in this scope.", + "items": { + "$ref": "InstanceGroup" + } + } + }, + "id": "InstanceGroupsScopedList", + "type": "object" + }, + "StatefulPolicyPreservedStateDiskDevice": { + "type": "object", + "properties": { + "autoDelete": { + "description": "These stateful disks will never be deleted during autohealing, update or VM instance recreate operations. This flag is used to configure if the disk should be deleted after it is no longer used by the group, e.g. when the given instance or the whole group is deleted. Note: disks attached in READ_ONLY mode cannot be auto-deleted.", + "type": "string", + "enum": [ + "NEVER", + "ON_PERMANENT_INSTANCE_DELETION" + ], + "enumDescriptions": [ + "", + "" + ] + } + }, + "id": "StatefulPolicyPreservedStateDiskDevice" + }, + "DistributionPolicyZoneConfiguration": { + "id": "DistributionPolicyZoneConfiguration", + "properties": { + "zone": { + "annotations": { + "required": [ + "compute.regionInstanceGroupManagers.insert" + ] + }, + "description": "The URL of the zone. The zone must exist in the region where the managed instance group is located.", + "type": "string" + } + }, + "type": "object" + }, + "SecurityPolicyReference": { + "id": "SecurityPolicyReference", + "type": "object", + "properties": { + "securityPolicy": { + "type": "string" + } + } + }, + "ServiceAttachmentsScopedList": { + "id": "ServiceAttachmentsScopedList", + "type": "object", + "properties": { + "warning": { + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "type": "object", + "description": "Informational warning which replaces the list of service attachments when the list is empty." + }, + "serviceAttachments": { + "items": { + "$ref": "ServiceAttachment" + }, + "description": "A list of ServiceAttachments contained in this scope.", + "type": "array" + } + } + }, + "InstanceGroupManagersListPerInstanceConfigsResp": { + "id": "InstanceGroupManagersListPerInstanceConfigsResp", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "PerInstanceConfig" + }, + "description": "[Output Only] The list of PerInstanceConfig." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + } + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + } + }, + "type": "object" + }, + "GlobalNetworkEndpointGroupsAttachEndpointsRequest": { + "id": "GlobalNetworkEndpointGroupsAttachEndpointsRequest", + "properties": { + "networkEndpoints": { + "description": "The list of network endpoints to be attached.", + "items": { + "$ref": "NetworkEndpoint" + }, + "type": "array" + } + }, + "type": "object" + }, + "InstanceManagedByIgmErrorManagedInstanceError": { + "id": "InstanceManagedByIgmErrorManagedInstanceError", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] Error message." + }, + "code": { + "description": "[Output Only] Error code.", + "type": "string" + } + }, + "type": "object" + }, + "OperationsScopedList": { + "properties": { + "operations": { + "description": "[Output Only] A list of operations contained in this scope.", + "type": "array", + "items": { + "$ref": "Operation" + } + }, + "warning": { + "description": "[Output Only] Informational warning which replaces the list of operations when the list is empty.", + "type": "object", + "properties": { + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + } + } + } + } + }, + "type": "object", + "id": "OperationsScopedList" + }, + "RouterNatLogConfig": { + "id": "RouterNatLogConfig", + "properties": { + "enable": { + "type": "boolean", + "description": "Indicates whether or not to export logs. This is false by default." + }, + "filter": { + "enum": [ + "ALL", + "ERRORS_ONLY", + "TRANSLATIONS_ONLY" + ], + "enumDescriptions": [ + "Export logs for all (successful and unsuccessful) connections.", + "Export logs for connection failures only.", + "Export logs for successful connections only." + ], + "description": "Specify the desired filtering of logs on this NAT. If unspecified, logs are exported for all connections handled by this NAT. This option can take one of the following values: - ERRORS_ONLY: Export logs only for connection failures. - TRANSLATIONS_ONLY: Export logs only for successful connections. - ALL: Export logs for all connections, successful and unsuccessful. ", + "type": "string" + } + }, + "type": "object", + "description": "Configuration of logging on a NAT." + }, + "DisksAddResourcePoliciesRequest": { + "id": "DisksAddResourcePoliciesRequest", + "type": "object", + "properties": { + "resourcePolicies": { + "items": { + "type": "string" + }, + "description": "Full or relative path to the resource policy to be added to this disk. You can only specify one resource policy.", + "type": "array" + } + } + }, + "RouterAggregatedList": { + "properties": { + "kind": { + "type": "string", + "default": "compute#routerAggregatedList", + "description": "Type of resource." + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "type": "array", + "items": { + "type": "string" + } + }, + "items": { + "type": "object", + "additionalProperties": { + "$ref": "RoutersScopedList", + "description": "Name of the scope containing this set of routers." + }, + "description": "A list of Router resources." + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "type": "array" + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + } + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + }, + "id": "RouterAggregatedList", + "type": "object", + "description": "Contains a list of routers." + }, + "Reference": { + "description": "Represents a reference to a resource.", + "properties": { + "referenceType": { + "description": "A description of the reference type with no implied semantics. Possible values include: 1. MEMBER_OF ", + "type": "string" + }, + "referrer": { + "description": "URL of the resource which refers to the target.", + "type": "string" + }, + "target": { + "type": "string", + "description": "URL of the resource to which this reference points." + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#reference for references.", + "default": "compute#reference", + "type": "string" + } + }, + "id": "Reference", + "type": "object" + }, + "DisksScopedList": { + "id": "DisksScopedList", + "properties": { + "disks": { + "description": "[Output Only] A list of disks contained in this scope.", + "items": { + "$ref": "Disk" + }, + "type": "array" + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning which replaces the list of disks when the list is empty.", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "data": { + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + }, + "type": "object" + }, + "SslCertificateAggregatedList": { + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + } + } + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "items": { + "type": "object", + "description": "A list of SslCertificatesScopedList resources.", + "additionalProperties": { + "$ref": "SslCertificatesScopedList", + "description": "Name of the scope containing this set of SslCertificates." + } + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "kind": { + "default": "compute#sslCertificateAggregatedList", + "type": "string", + "description": "[Output Only] Type of resource. Always compute#sslCertificateAggregatedList for lists of SSL Certificates." + } + }, + "id": "SslCertificateAggregatedList", + "type": "object" + }, + "PacketMirroringNetworkInfo": { + "id": "PacketMirroringNetworkInfo", + "type": "object", + "properties": { + "canonicalUrl": { + "type": "string", + "description": "[Output Only] Unique identifier for the network; defined by the server." + }, + "url": { + "type": "string", + "description": "URL of the network resource." + } + } + }, + "Subsetting": { + "id": "Subsetting", + "properties": { + "policy": { + "type": "string", + "enum": [ + "CONSISTENT_HASH_SUBSETTING", + "NONE" + ], + "enumDescriptions": [ + "Subsetting based on consistent hashing. For Traffic Director, the number of backends per backend group (the subset size) is based on the `subset_size` parameter. For Internal HTTP(S) load balancing, the number of backends per backend group (the subset size) is dynamically adjusted in two cases: - As the number of proxy instances participating in Internal HTTP(S) load balancing increases, the subset size decreases. - When the total number of backends in a network exceeds the capacity of a single proxy instance, subset sizes are reduced automatically for each service that has backend subsetting enabled.", + "No Subsetting. Clients may open connections and send traffic to all backends of this backend service. This can lead to performance issues if there is substantial imbalance in the count of clients and backends." + ] + } + }, + "description": "Subsetting configuration for this BackendService. Currently this is applicable only for Internal TCP/UDP load balancing, Internal HTTP(S) load balancing and Traffic Director.", + "type": "object" + }, + "ExternalVpnGatewayList": { + "type": "object", + "properties": { + "etag": { + "type": "string" + }, + "kind": { + "type": "string", + "default": "compute#externalVpnGatewayList", + "description": "[Output Only] Type of resource. Always compute#externalVpnGatewayList for lists of externalVpnGateways." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "description": "A list of ExternalVpnGateway resources.", + "items": { + "$ref": "ExternalVpnGateway" + }, + "type": "array" + }, + "warning": { + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + } + }, + "description": "Response to the list request, and contains a list of externalVpnGateways.", + "id": "ExternalVpnGatewayList" + }, + "RouterNatRule": { + "type": "object", + "properties": { + "ruleNumber": { + "type": "integer", + "description": "An integer uniquely identifying a rule in the list. The rule number must be a positive value between 0 and 65000, and must be unique among rules within a NAT.", + "format": "uint32" + }, + "action": { + "$ref": "RouterNatRuleAction", + "description": "The action to be enforced for traffic that matches this rule." + }, + "description": { + "type": "string", + "description": "An optional description of this rule." + }, + "match": { + "type": "string", + "description": "CEL expression that specifies the match condition that egress traffic from a VM is evaluated against. If it evaluates to true, the corresponding `action` is enforced. The following examples are valid match expressions for public NAT: \"inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.0/16')\" \"destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'\" The following example is a valid match expression for private NAT: \"nexthop.hub == '/projects/my-project/global/hub/hub-1'\"" + } + }, + "id": "RouterNatRule" + }, + "InstancesGetEffectiveFirewallsResponse": { + "id": "InstancesGetEffectiveFirewallsResponse", + "properties": { + "firewallPolicys": { + "description": "Effective firewalls from firewall policies.", + "type": "array", + "items": { + "$ref": "InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy" + } + }, + "firewalls": { + "items": { + "$ref": "Firewall" + }, + "type": "array", + "description": "Effective firewalls on the instance." + } + }, + "type": "object" + }, + "TargetVpnGatewayList": { + "id": "TargetVpnGatewayList", + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "type": "object", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "data": { + "items": { + "type": "object", + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "description": "[Output Only] Informational warning message." + }, + "kind": { + "default": "compute#targetVpnGatewayList", + "type": "string", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways." + }, + "items": { + "type": "array", + "items": { + "$ref": "TargetVpnGateway" + }, + "description": "A list of TargetVpnGateway resources." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + } + }, + "description": "Contains a list of TargetVpnGateway resources.", + "type": "object" + }, + "DiskTypesScopedList": { + "properties": { + "warning": { + "description": "[Output Only] Informational warning which replaces the list of disk types when the list is empty.", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, + "diskTypes": { + "type": "array", + "description": "[Output Only] A list of disk types contained in this scope.", + "items": { + "$ref": "DiskType" + } + } + }, + "id": "DiskTypesScopedList", + "type": "object" + }, + "PacketMirroringFilter": { + "properties": { + "direction": { + "type": "string", + "description": "Direction of traffic to mirror, either INGRESS, EGRESS, or BOTH. The default is BOTH.", + "enumDescriptions": [ + "Default, both directions are mirrored.", + "Only egress traffic is mirrored.", + "Only ingress traffic is mirrored." + ], + "enum": [ + "BOTH", + "EGRESS", + "INGRESS" + ] + }, + "cidrRanges": { + "type": "array", + "description": "IP CIDR ranges that apply as filter on the source (ingress) or destination (egress) IP in the IP header. Only IPv4 is supported. If no ranges are specified, all traffic that matches the specified IPProtocols is mirrored. If neither cidrRanges nor IPProtocols is specified, all traffic is mirrored.", + "items": { + "type": "string" + } + }, + "IPProtocols": { + "items": { + "type": "string" + }, + "description": "Protocols that apply as filter on mirrored traffic. If no protocols are specified, all traffic that matches the specified CIDR ranges is mirrored. If neither cidrRanges nor IPProtocols is specified, all traffic is mirrored.", + "type": "array" + } + }, + "type": "object", + "id": "PacketMirroringFilter" + }, + "NetworkEndpointGroupList": { + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "kind": { + "default": "compute#networkEndpointGroupList", + "type": "string", + "description": "[Output Only] The resource type, which is always compute#networkEndpointGroupList for network endpoint group lists." + }, + "items": { + "type": "array", + "description": "A list of NetworkEndpointGroup resources.", + "items": { + "$ref": "NetworkEndpointGroup" + } + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + } + } + }, + "type": "object" + } + }, + "id": "NetworkEndpointGroupList", + "type": "object" + }, + "ResourcePolicySnapshotSchedulePolicySnapshotProperties": { + "type": "object", + "description": "Specified snapshot properties for scheduled snapshots created by this policy.", + "id": "ResourcePolicySnapshotSchedulePolicySnapshotProperties", + "properties": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "type": "object", + "description": "Labels to apply to scheduled snapshots. These can be later modified by the setLabels method. Label values may be empty." + }, + "guestFlush": { + "type": "boolean", + "description": "Indication to perform a 'guest aware' snapshot." + }, + "chainName": { + "type": "string", + "description": "Chain name that the snapshot is created in." + }, + "storageLocations": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Cloud Storage bucket storage location of the auto snapshot (regional or multi-regional)." + } + } + }, + "NodeGroupsDeleteNodesRequest": { + "id": "NodeGroupsDeleteNodesRequest", + "type": "object", + "properties": { + "nodes": { + "type": "array", + "description": "Names of the nodes to delete.", + "items": { + "type": "string" + } + } + } + }, + "HttpsHealthCheck": { + "description": "Represents a legacy HTTPS Health Check resource. Legacy HTTPS health checks have been deprecated. If you are using a target pool-based network load balancer, you must use a legacy HTTP (not HTTPS) health check. For all other load balancers, including backend service-based network load balancers, and for managed instance group auto-healing, you must use modern (non-legacy) health checks. For more information, see Health checks overview .", + "type": "object", + "properties": { + "healthyThreshold": { + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32", + "type": "integer" + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTPS health check request. The default value is \"/\"." + }, + "name": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "checkIntervalSec": { + "type": "integer", + "format": "int32", + "description": "How often (in seconds) to send a health check. The default value is 5 seconds." + }, + "kind": { + "default": "compute#httpsHealthCheck", + "description": "Type of the resource.", + "type": "string" + }, + "id": { + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "port": { + "description": "The TCP port number for the HTTPS health check request. The default value is 443.", + "type": "integer", + "format": "int32" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "host": { + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.", + "type": "string" + }, + "unhealthyThreshold": { + "format": "int32", + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "type": "integer" + }, + "timeoutSec": { + "format": "int32", + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have a greater value than checkIntervalSec.", + "type": "integer" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + } + }, + "id": "HttpsHealthCheck" + }, + "RegionTargetHttpsProxiesSetSslCertificatesRequest": { + "properties": { + "sslCertificates": { + "items": { + "type": "string" + }, + "description": "New set of SslCertificate resources to associate with this TargetHttpsProxy resource. Currently exactly one SslCertificate resource must be specified.", + "type": "array" + } + }, + "id": "RegionTargetHttpsProxiesSetSslCertificatesRequest", + "type": "object" + }, + "RegionInstanceGroupManagersAbandonInstancesRequest": { + "properties": { + "instances": { + "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "RegionInstanceGroupManagersAbandonInstancesRequest", + "type": "object" + }, + "TargetPoolList": { + "description": "Contains a list of TargetPool resources.", + "properties": { + "items": { + "type": "array", + "description": "A list of TargetPool resources.", + "items": { + "$ref": "TargetPool" + } + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "type": "array" + } + }, + "type": "object" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "kind": { + "default": "compute#targetPoolList", + "description": "[Output Only] Type of resource. Always compute#targetPoolList for lists of target pools.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + } + }, + "type": "object", + "id": "TargetPoolList" + }, + "ReservationList": { + "type": "object", + "id": "ReservationList", + "properties": { + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "kind": { + "default": "compute#reservationList", + "description": "[Output Only] Type of resource.Always compute#reservationsList for listsof reservations", + "type": "string" + }, + "items": { + "description": "[Output Only] A list of Allocation resources.", + "items": { + "$ref": "Reservation" + }, + "type": "array" + }, + "warning": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + } + }, + "code": { + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + } + }, + "description": "[Output Only] Informational warning message." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "OperationAggregatedList": { + "id": "OperationAggregatedList", + "type": "object", + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than `maxResults`, use the `nextPageToken` as a value for the query parameter `pageToken` in the next list request. Subsequent list requests will have their own `nextPageToken` to continue paging through the results.", + "type": "string" + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + } + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + } + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "items": { + "type": "object", + "description": "[Output Only] A map of scoped operation lists.", + "additionalProperties": { + "description": "[Output Only] Name of the scope containing this set of operations.", + "$ref": "OperationsScopedList" + } + }, + "kind": { + "description": "[Output Only] Type of resource. Always `compute#operationAggregatedList` for aggregated lists of operations.", + "type": "string", + "default": "compute#operationAggregatedList" + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + } + } + }, + "TargetVpnGatewaysScopedList": { + "id": "TargetVpnGatewaysScopedList", + "properties": { + "warning": { + "properties": { + "data": { + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "type": "object" + }, + "targetVpnGateways": { + "description": "[Output Only] A list of target VPN gateways contained in this scope.", + "type": "array", + "items": { + "$ref": "TargetVpnGateway" + } + } + }, + "type": "object" + }, + "TargetGrpcProxyList": { + "id": "TargetGrpcProxyList", + "type": "object", + "properties": { + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + }, + "type": "object" + }, + "items": { + "description": "A list of TargetGrpcProxy resources.", + "items": { + "$ref": "TargetGrpcProxy" + }, + "type": "array" + }, + "kind": { + "default": "compute#targetGrpcProxyList", + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#targetGrpcProxy for target grpc proxies." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "SslPoliciesListAvailableFeaturesResponse": { + "properties": { + "features": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "id": "SslPoliciesListAvailableFeaturesResponse" + }, + "NetworkEndpointGroup": { + "properties": { + "zone": { + "type": "string", + "description": "[Output Only] The URL of the zone where the network endpoint group is located." + }, + "cloudFunction": { + "$ref": "NetworkEndpointGroupCloudFunction", + "description": "Only valid when networkEndpointType is \"SERVERLESS\". Only one of cloudRun, appEngine or cloudFunction may be set." + }, + "annotations": { + "additionalProperties": { + "type": "string" + }, + "type": "object", + "description": "Metadata defined as annotations on the network endpoint group." + }, + "subnetwork": { + "description": "Optional URL of the subnetwork to which all network endpoints in the NEG belong.", + "type": "string" + }, + "cloudRun": { + "description": "Only valid when networkEndpointType is \"SERVERLESS\". Only one of cloudRun, appEngine or cloudFunction may be set.", + "$ref": "NetworkEndpointGroupCloudRun" + }, + "size": { + "type": "integer", + "format": "int32", + "description": "[Output only] Number of network endpoints in the network endpoint group." + }, + "network": { + "type": "string", + "description": "The URL of the network to which all network endpoints in the NEG belong. Uses \"default\" project network if unspecified." + }, + "id": { + "format": "uint64", + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "appEngine": { + "description": "Only valid when networkEndpointType is \"SERVERLESS\". Only one of cloudRun, appEngine or cloudFunction may be set.", + "$ref": "NetworkEndpointGroupAppEngine" + }, + "defaultPort": { + "format": "int32", + "type": "integer", + "description": "The default port used if the port number is not specified in the network endpoint." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#networkEndpointGroup for network endpoint group.", + "default": "compute#networkEndpointGroup" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "region": { + "type": "string", + "description": "[Output Only] The URL of the region where the network endpoint group is located." + }, + "networkEndpointType": { + "type": "string", + "enum": [ + "GCE_VM_IP", + "GCE_VM_IP_PORT", + "INTERNET_FQDN_PORT", + "INTERNET_IP_PORT", + "NON_GCP_PRIVATE_IP_PORT", + "SERVERLESS" + ], + "enumDescriptions": [ + "The network endpoint is represented by an IP address.", + "The network endpoint is represented by IP address and port pair.", + "The network endpoint is represented by fully qualified domain name and port.", + "The network endpoint is represented by an internet IP address and port.", + "The network endpoint is represented by an IP address and port. The endpoint belongs to a VM or pod running in a customer's on-premises.", + "The network endpoint is handled by specified serverless infrastructure." + ], + "description": "Type of network endpoints in this network endpoint group. Can be one of GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT, SERVERLESS, PRIVATE_SERVICE_CONNECT." + } + }, + "type": "object", + "description": "Represents a collection of network endpoints. A network endpoint group (NEG) defines how a set of endpoints should be reached, whether they are reachable, and where they are located. For more information about using NEGs, see Setting up external HTTP(S) Load Balancing with internet NEGs, Setting up zonal NEGs, or Setting up external HTTP(S) Load Balancing with serverless NEGs.", + "id": "NetworkEndpointGroup" + }, + "NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy": { + "type": "object", + "id": "NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy", + "properties": { + "name": { + "type": "string", + "description": "[Output Only] The name of the firewall policy." + }, + "rules": { + "type": "array", + "description": "The rules that apply to the network.", + "items": { + "$ref": "FirewallPolicyRule" + } + }, + "displayName": { + "description": "[Output Only] Deprecated, please use short name instead. The display name of the firewall policy.", + "type": "string" + }, + "shortName": { + "type": "string", + "description": "[Output Only] The short name of the firewall policy." + }, + "type": { + "enumDescriptions": [ + "", + "", + "" + ], + "description": "[Output Only] The type of the firewall policy.", + "type": "string", + "enum": [ + "HIERARCHY", + "NETWORK", + "UNSPECIFIED" + ] + } + } + }, + "CacheInvalidationRule": { + "id": "CacheInvalidationRule", + "properties": { + "path": { + "type": "string" + }, + "host": { + "type": "string", + "description": "If set, this invalidation rule will only apply to requests with a Host header matching host." + } + }, + "type": "object" + }, + "TargetHttpsProxyAggregatedList": { + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "unreachables": { + "type": "array", + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + } + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "kind": { + "type": "string", + "default": "compute#targetHttpsProxyAggregatedList", + "description": "[Output Only] Type of resource. Always compute#targetHttpsProxyAggregatedList for lists of Target HTTP Proxies." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "data": { + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "type": "object" + }, + "items": { + "additionalProperties": { + "$ref": "TargetHttpsProxiesScopedList", + "description": "Name of the scope containing this set of TargetHttpsProxies." + }, + "description": "A list of TargetHttpsProxiesScopedList resources.", + "type": "object" + } + }, + "id": "TargetHttpsProxyAggregatedList", + "type": "object" + }, + "License": { + "properties": { + "licenseCode": { + "description": "[Output Only] The unique code used to attach this license to images, snapshots, and disks.", + "format": "uint64", + "type": "string" + }, + "transferable": { + "type": "boolean", + "description": "If false, licenses will not be copied from the source resource when creating an image from a disk, disk from snapshot, or snapshot from disk." + }, + "id": { + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string", + "format": "uint64" + }, + "resourceRequirements": { + "$ref": "LicenseResourceRequirements" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "type": "string", + "description": "An optional textual description of the resource; provided by the client when the resource is created." + }, + "kind": { + "default": "compute#license", + "description": "[Output Only] Type of resource. Always compute#license for licenses.", + "type": "string" + }, + "name": { + "annotations": { + "required": [ + "compute.images.insert" + ] + }, + "description": "Name of the resource. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "chargesUseFee": { + "type": "boolean", + "description": "[Output Only] Deprecated. This field no longer reflects whether a license charges a usage fee." + } + }, + "description": "Represents a License resource. A License represents billing and aggregate usage data for public and marketplace images. *Caution* This resource is intended for use only by third-party partners who are creating Cloud Marketplace images. ", + "id": "License", + "type": "object" + }, + "InstanceGroupManagersScopedList": { + "id": "InstanceGroupManagersScopedList", + "properties": { + "instanceGroupManagers": { + "items": { + "$ref": "InstanceGroupManager" + }, + "description": "[Output Only] The list of managed instance groups that are contained in the specified project and zone.", + "type": "array" + }, + "warning": { + "properties": { + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "type": "object", + "description": "[Output Only] The warning that replaces the list of managed instance groups when the list is empty." + } + }, + "type": "object" + }, + "Instance": { + "id": "Instance", + "type": "object", + "description": "Represents an Instance resource. An instance is a virtual machine that is hosted on Google Cloud Platform. For more information, read Virtual Machine Instances.", + "properties": { + "lastStopTimestamp": { + "type": "string", + "description": "[Output Only] Last stop timestamp in RFC3339 text format." + }, + "serviceAccounts": { + "items": { + "$ref": "ServiceAccount" + }, + "type": "array", + "description": "A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported. Service accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Service Accounts for more information." + }, + "minCpuPlatform": { + "description": "Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as minCpuPlatform: \"Intel Haswell\" or minCpuPlatform: \"Intel Sandy Bridge\".", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "confidentialInstanceConfig": { + "$ref": "ConfidentialInstanceConfig" + }, + "deletionProtection": { + "type": "boolean", + "description": "Whether the resource should be protected against deletion." + }, + "scheduling": { + "$ref": "Scheduling", + "description": "Sets the scheduling options for this instance." + }, + "zone": { + "type": "string", + "description": "[Output Only] URL of the zone where the instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body." + }, + "guestAccelerators": { + "description": "A list of the type and count of accelerator cards attached to the instance.", + "items": { + "$ref": "AcceleratorConfig" + }, + "type": "array" + }, + "fingerprint": { + "description": "Specifies a fingerprint for this resource, which is essentially a hash of the instance's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update the instance. You must always provide an up-to-date fingerprint hash in order to update the instance. To see the latest fingerprint, make get() request to the instance.", + "format": "byte", + "type": "string" + }, + "cpuPlatform": { + "type": "string", + "description": "[Output Only] The CPU platform used by this instance." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "displayDevice": { + "$ref": "DisplayDevice", + "description": "Enables display device for the instance." + }, + "disks": { + "items": { + "$ref": "AttachedDisk" + }, + "description": "Array of disks associated with this instance. Persistent disks must be created before you can assign them.", + "type": "array" + }, + "advancedMachineFeatures": { + "$ref": "AdvancedMachineFeatures", + "description": "Controls for advanced machine-related behavior features." + }, + "metadata": { + "description": "The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys.", + "$ref": "Metadata" + }, + "shieldedInstanceIntegrityPolicy": { + "$ref": "ShieldedInstanceIntegrityPolicy" + }, + "reservationAffinity": { + "description": "Specifies the reservations that this instance can consume from.", + "$ref": "ReservationAffinity" + }, + "statusMessage": { + "type": "string", + "description": "[Output Only] An optional, human-readable explanation of the status." + }, + "resourcePolicies": { + "items": { + "type": "string" + }, + "description": "Resource policies applied to this instance.", + "type": "array" + }, + "tags": { + "$ref": "Tags", + "description": "Tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035. Multiple tags can be specified via the 'tags.items' field." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#instance for instances.", + "default": "compute#instance" + }, + "hostname": { + "type": "string", + "description": "Specifies the hostname of the instance. The specified hostname must be RFC1035 compliant. If hostname is not specified, the default hostname is [INSTANCE_NAME].c.[PROJECT_ID].internal when using the global DNS, and [INSTANCE_NAME].[ZONE].c.[PROJECT_ID].internal when using zonal DNS." + }, + "name": { + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "satisfiesPzs": { + "description": "[Output Only] Reserved for future use.", + "type": "boolean" + }, + "status": { + "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, and TERMINATED. For more information about the status of the instance, see Instance life cycle.", + "type": "string", + "enumDescriptions": [ + "The Nanny is halted and we are performing tear down tasks like network deprogramming, releasing quota, IP, tearing down disks etc.", + "Resources are being allocated for the instance.", + "The instance is in repair.", + "The instance is running.", + "All required resources have been allocated and the instance is being started.", + "The instance has stopped successfully.", + "The instance is currently stopping (either being deleted or killed).", + "The instance has suspended.", + "The instance is suspending.", + "The instance has stopped (either by explicit action or underlying failure)." + ], + "enum": [ + "DEPROVISIONING", + "PROVISIONING", + "REPAIRING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ] + }, + "labels": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "description": "Labels to apply to this instance. These can be later modified by the setLabels method." + }, + "startRestricted": { + "type": "boolean", + "description": "[Output Only] Whether a VM has been restricted for start because Compute Engine has detected suspicious activity." + }, + "lastSuspendedTimestamp": { + "description": "[Output Only] Last suspended timestamp in RFC3339 text format.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "lastStartTimestamp": { + "description": "[Output Only] Last start timestamp in RFC3339 text format.", + "type": "string" + }, + "networkInterfaces": { + "description": "An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance.", + "type": "array", + "items": { + "$ref": "NetworkInterface" + } + }, + "privateIpv6GoogleAccess": { + "description": "The private IPv6 google access type for the VM. If not specified, use INHERIT_FROM_SUBNETWORK as default.", + "type": "string", + "enumDescriptions": [ + "Bidirectional private IPv6 access to/from Google services. If specified, the subnetwork who is attached to the instance's default network interface will be assigned an internal IPv6 prefix if it doesn't have before.", + "Outbound private IPv6 access from VMs in this subnet to Google services. If specified, the subnetwork who is attached to the instance's default network interface will be assigned an internal IPv6 prefix if it doesn't have before.", + "Each network interface inherits PrivateIpv6GoogleAccess from its subnetwork." + ], + "enum": [ + "ENABLE_BIDIRECTIONAL_ACCESS_TO_GOOGLE", + "ENABLE_OUTBOUND_VM_ACCESS_TO_GOOGLE", + "INHERIT_FROM_SUBNETWORK" + ] + }, + "labelFingerprint": { + "description": "A fingerprint for this request, which is essentially a hash of the label's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. To see the latest fingerprint, make get() request to the instance.", + "format": "byte", + "type": "string" + }, + "machineType": { + "description": "Full or partial URL of the machine type resource to use for this instance, in the format: zones/zone/machineTypes/machine-type. This is provided by the client when the instance is created. For example, the following is a valid partial url to a predefined machine type: zones/us-central1-f/machineTypes/n1-standard-1 To create a custom machine type, provide a URL to a machine type in the following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. Memory must be a multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is 5120 MB): zones/zone/machineTypes/custom-CPUS-MEMORY For example: zones/us-central1-f/machineTypes/custom-4-5120 For a full list of restrictions, read the Specifications for custom machine types.", + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "type": "string" + }, + "canIpForward": { + "description": "Allows this instance to send and receive packets with non-matching destination or source IPs. This is required if you plan to use this instance to forward routes. For more information, see Enabling IP Forwarding .", + "type": "boolean" + }, + "shieldedInstanceConfig": { + "$ref": "ShieldedInstanceConfig" + } + } + }, + "ConsistentHashLoadBalancerSettingsHttpCookie": { + "description": "The information about the HTTP Cookie on which the hash function is based for load balancing policies that use a consistent hash.", + "properties": { + "path": { + "type": "string", + "description": "Path to set for the cookie." + }, + "name": { + "description": "Name of the cookie.", + "type": "string" + }, + "ttl": { + "$ref": "Duration", + "description": "Lifetime of the cookie." + } + }, + "id": "ConsistentHashLoadBalancerSettingsHttpCookie", + "type": "object" + }, + "InstanceGroupsListInstancesRequest": { + "type": "object", + "properties": { + "instanceState": { + "type": "string", + "enumDescriptions": [ + "Includes all instances in the generated list regardless of their state.", + "Includes instances in the generated list only if they have a RUNNING state." + ], + "enum": [ + "ALL", + "RUNNING" + ], + "description": "A filter for the state of the instances in the instance group. Valid options are ALL or RUNNING. If you do not specify this parameter the list includes all instances regardless of their state." + } + }, + "id": "InstanceGroupsListInstancesRequest" + }, + "ResourcePolicyInstanceSchedulePolicy": { + "description": "An InstanceSchedulePolicy specifies when and how frequent certain operations are performed on the instance.", + "properties": { + "vmStopSchedule": { + "description": "Specifies the schedule for stopping instances.", + "$ref": "ResourcePolicyInstanceSchedulePolicySchedule" + }, + "timeZone": { + "type": "string", + "description": "Specifies the time zone to be used in interpreting Schedule.schedule. The value of this field must be a time zone name from the tz database: http://en.wikipedia.org/wiki/Tz_database." + }, + "expirationTime": { + "description": "The expiration time of the schedule. The timestamp is an RFC3339 string.", + "type": "string" + }, + "vmStartSchedule": { + "description": "Specifies the schedule for starting instances.", + "$ref": "ResourcePolicyInstanceSchedulePolicySchedule" + }, + "startTime": { + "type": "string", + "description": "The start time of the schedule. The timestamp is an RFC3339 string." + } + }, + "type": "object", + "id": "ResourcePolicyInstanceSchedulePolicy" + }, + "PreservedStatePreservedDisk": { + "type": "object", + "id": "PreservedStatePreservedDisk", + "properties": { + "autoDelete": { + "enum": [ + "NEVER", + "ON_PERMANENT_INSTANCE_DELETION" + ], + "type": "string", + "description": "These stateful disks will never be deleted during autohealing, update, instance recreate operations. This flag is used to configure if the disk should be deleted after it is no longer used by the group, e.g. when the given instance or the whole MIG is deleted. Note: disks attached in READ_ONLY mode cannot be auto-deleted.", + "enumDescriptions": [ + "", + "" + ] + }, + "mode": { + "enum": [ + "READ_ONLY", + "READ_WRITE" + ], + "type": "string", + "enumDescriptions": [ + "Attaches this disk in read-only mode. Multiple VM instances can use a disk in READ_ONLY mode at a time.", + "*[Default]* Attaches this disk in READ_WRITE mode. Only one VM instance at a time can be attached to a disk in READ_WRITE mode." + ], + "description": "The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode." + }, + "source": { + "type": "string", + "description": "The URL of the disk resource that is stateful and should be attached to the VM instance." + } + } + }, + "NodeType": { + "id": "NodeType", + "properties": { + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "zone": { + "type": "string", + "description": "[Output Only] The name of the zone where the node type resides, such as us-central1-a." + }, + "guestCpus": { + "type": "integer", + "description": "[Output Only] The number of virtual CPUs that are available to the node type.", + "format": "int32" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this node type." + }, + "memoryMb": { + "format": "int32", + "type": "integer", + "description": "[Output Only] The amount of physical memory available to the node type, defined in MB." + }, + "kind": { + "description": "[Output Only] The type of the resource. Always compute#nodeType for node types.", + "type": "string", + "default": "compute#nodeType" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "localSsdGb": { + "description": "[Output Only] Local SSD available to the node type, defined in GB.", + "format": "int32", + "type": "integer" + }, + "cpuPlatform": { + "type": "string", + "description": "[Output Only] The CPU platform used by this node type." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + } + }, + "type": "object", + "description": "Represent a sole-tenant Node Type resource. Each node within a node group must have a node type. A node type specifies the total amount of cores and memory for that node. Currently, the only available node type is n1-node-96-624 node type that has 96 vCPUs and 624 GB of memory, available in multiple zones. For more information read Node types." + }, + "ResourcePoliciesScopedList": { + "id": "ResourcePoliciesScopedList", + "type": "object", + "properties": { + "resourcePolicies": { + "items": { + "$ref": "ResourcePolicy" + }, + "description": "A list of resourcePolicies contained in this scope.", + "type": "array" + }, + "warning": { + "type": "object", + "properties": { + "code": { + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "description": "Informational warning which replaces the list of resourcePolicies when the list is empty." + } + } + }, + "DiskTypeAggregatedList": { + "type": "object", + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "unreachables": { + "items": { + "type": "string" + }, + "description": "[Output Only] Unreachable resources.", + "type": "array" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "type": "object", + "additionalProperties": { + "$ref": "DiskTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of disk types." + }, + "description": "A list of DiskTypesScopedList resources." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + } + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "type": "object" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#diskTypeAggregatedList.", + "default": "compute#diskTypeAggregatedList" + } + }, + "id": "DiskTypeAggregatedList" + }, + "LicenseResourceRequirements": { + "properties": { + "minMemoryMb": { + "description": "Minimum memory required to use the Instance. Enforced at Instance creation and Instance start.", + "format": "int32", + "type": "integer" + }, + "minGuestCpuCount": { + "type": "integer", + "description": "Minimum number of guest cpus required to use the Instance. Enforced at Instance creation and Instance start.", + "format": "int32" + } + }, + "id": "LicenseResourceRequirements", + "type": "object" + }, + "SslCertificateSelfManagedSslCertificate": { + "description": "Configuration and status of a self-managed SSL certificate.", + "id": "SslCertificateSelfManagedSslCertificate", + "properties": { + "certificate": { + "description": "A local certificate file. The certificate must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert.", + "type": "string" + }, + "privateKey": { + "type": "string", + "description": "A write-only private key in PEM format. Only insert requests will include this field." + } + }, + "type": "object" + }, + "FixedOrPercent": { + "id": "FixedOrPercent", + "properties": { + "fixed": { + "format": "int32", + "description": "Specifies a fixed number of VM instances. This must be a positive integer.", + "type": "integer" + }, + "calculated": { + "description": "[Output Only] Absolute value of VM instances calculated based on the specific mode. - If the value is fixed, then the calculated value is equal to the fixed value. - If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded. ", + "format": "int32", + "type": "integer" + }, + "percent": { + "type": "integer", + "description": "Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.", + "format": "int32" + } + }, + "type": "object", + "description": "Encapsulates numeric value that can be either absolute or relative." + }, + "RegionInstanceGroupManagersListInstancesResponse": { + "type": "object", + "id": "RegionInstanceGroupManagersListInstancesResponse", + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "managedInstances": { + "type": "array", + "description": "A list of managed instances.", + "items": { + "$ref": "ManagedInstance" + } + } + } + }, + "InstanceGroupManagersAbandonInstancesRequest": { + "id": "InstanceGroupManagersAbandonInstancesRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The URLs of one or more instances to abandon. This can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME]." + } + } + }, + "SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig": { + "type": "object", + "id": "SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig", + "properties": { + "enable": { + "description": "If set to true, enables CAAP for L7 DDoS detection.", + "type": "boolean" + }, + "ruleVisibility": { + "enum": [ + "PREMIUM", + "STANDARD" + ], + "type": "string", + "enumDescriptions": [ + "", + "" + ], + "description": "Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules." + } + }, + "description": "Configuration options for L7 DDoS detection." + }, + "TestPermissionsRequest": { + "id": "TestPermissionsRequest", + "type": "object", + "properties": { + "permissions": { + "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", + "items": { + "type": "string" + }, + "type": "array" + } + } + }, + "SslCertificatesScopedList": { + "id": "SslCertificatesScopedList", + "properties": { + "sslCertificates": { + "items": { + "$ref": "SslCertificate" + }, + "description": "List of SslCertificates contained in this scope.", + "type": "array" + }, + "warning": { + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + } + }, + "type": "object", + "description": "Informational warning which replaces the list of backend services when the list is empty." + } + }, + "type": "object" + }, + "ResourcePolicySnapshotSchedulePolicySchedule": { + "properties": { + "dailySchedule": { + "$ref": "ResourcePolicyDailyCycle" + }, + "weeklySchedule": { + "$ref": "ResourcePolicyWeeklyCycle" + }, + "hourlySchedule": { + "$ref": "ResourcePolicyHourlyCycle" + } + }, + "type": "object", + "description": "A schedule for disks where the schedueled operations are performed.", + "id": "ResourcePolicySnapshotSchedulePolicySchedule" + }, + "RegionDisksAddResourcePoliciesRequest": { + "type": "object", + "properties": { + "resourcePolicies": { + "items": { + "type": "string" + }, + "description": "Resource policies to be added to this disk.", + "type": "array" + } + }, + "id": "RegionDisksAddResourcePoliciesRequest" + }, + "StatefulPolicyPreservedState": { + "description": "Configuration of preserved resources.", + "properties": { + "disks": { + "description": "Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.", + "additionalProperties": { + "$ref": "StatefulPolicyPreservedStateDiskDevice" + }, + "type": "object" + } + }, + "id": "StatefulPolicyPreservedState", + "type": "object" + }, + "InstancesSetMachineResourcesRequest": { + "type": "object", + "properties": { + "guestAccelerators": { + "type": "array", + "description": "A list of the type and count of accelerator cards attached to the instance.", + "items": { + "$ref": "AcceleratorConfig" + } + } + }, + "id": "InstancesSetMachineResourcesRequest" + }, + "DiskInstantiationConfig": { + "description": "A specification of the desired way to instantiate a disk in the instance template when its created from a source instance.", + "properties": { + "instantiateFrom": { + "enum": [ + "ATTACH_READ_ONLY", + "BLANK", + "CUSTOM_IMAGE", + "DEFAULT", + "DO_NOT_INCLUDE", + "SOURCE_IMAGE", + "SOURCE_IMAGE_FAMILY" + ], + "type": "string", + "enumDescriptions": [ + "Attach the existing disk in read-only mode. The request will fail if the disk was attached in read-write mode on the source instance. Applicable to: read-only disks.", + "Create a blank disk. The disk will be created unformatted. Applicable to: additional read-write disks, local SSDs.", + "Use the custom image specified in the custom_image field. Applicable to: boot disk, additional read-write disks.", + "Use the default instantiation option for the corresponding type of disk. For boot disk and any other R/W disks, new custom images will be created from each disk. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes.", + "Do not include the disk in the instance template. Applicable to: additional read-write disks, local SSDs, read-only disks.", + "Use the same source image used for creation of the source instance's corresponding disk. The request will fail if the source VM's disk was created from a snapshot. Applicable to: boot disk, additional read-write disks.", + "Use the same source image family used for creation of the source instance's corresponding disk. The request will fail if the source image of the source disk does not belong to any image family. Applicable to: boot disk, additional read-write disks." + ], + "description": "Specifies whether to include the disk and what image to use. Possible values are: - source-image: to use the same image that was used to create the source instance's corresponding disk. Applicable to the boot disk and additional read-write disks. - source-image-family: to use the same image family that was used to create the source instance's corresponding disk. Applicable to the boot disk and additional read-write disks. - custom-image: to use a user-provided image url for disk creation. Applicable to the boot disk and additional read-write disks. - attach-read-only: to attach a read-only disk. Applicable to read-only disks. - do-not-include: to exclude a disk from the template. Applicable to additional read-write disks, local SSDs, and read-only disks. " + }, + "deviceName": { + "description": "Specifies the device name of the disk to which the configurations apply to.", + "type": "string" + }, + "customImage": { + "type": "string", + "description": "The custom source image to be used to restore this disk when instantiating this instance template." + }, + "autoDelete": { + "type": "boolean", + "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance)." + } + }, + "type": "object", + "id": "DiskInstantiationConfig" + }, + "ServerBinding": { + "type": "object", + "id": "ServerBinding", + "properties": { + "type": { + "type": "string", + "enum": [ + "RESTART_NODE_ON_ANY_SERVER", + "RESTART_NODE_ON_MINIMAL_SERVERS", + "SERVER_BINDING_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "Node may associate with any physical server over its lifetime.", + "Node may associate with minimal physical servers over its lifetime.", + "" + ] + } + } + }, + "HealthCheckServicesList": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "description": "A list of HealthCheckService resources.", + "items": { + "$ref": "HealthCheckService" + }, + "type": "array" + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#healthCheckServicesList for lists of HealthCheckServices.", + "type": "string", + "default": "compute#healthCheckServicesList" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "type": "array" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + } + } + }, + "id": "HealthCheckServicesList" + }, + "InstanceGroupManagerAutoHealingPolicy": { + "properties": { + "healthCheck": { + "description": "The URL for the health check that signals autohealing.", + "type": "string" + }, + "initialDelaySec": { + "format": "int32", + "description": "The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. This initial delay allows instances to initialize and run their startup scripts before the instance group determines that they are UNHEALTHY. This prevents the managed instance group from recreating its instances prematurely. This value must be from range [0, 3600].", + "type": "integer" + } + }, + "id": "InstanceGroupManagerAutoHealingPolicy", + "type": "object" + }, + "RouterAdvertisedIpRange": { + "type": "object", + "id": "RouterAdvertisedIpRange", + "properties": { + "range": { + "description": "The IP range to advertise. The value must be a CIDR-formatted string.", + "type": "string" + }, + "description": { + "description": "User-specified description for the IP range.", + "type": "string" + } + }, + "description": "Description-tagged IP ranges for the router to advertise." + }, + "ShieldedInstanceIntegrityPolicy": { + "description": "The policy describes the baseline against which Instance boot integrity is measured.", + "properties": { + "updateAutoLearnPolicy": { + "description": "Updates the integrity policy baseline using the measurements from the VM instance's most recent boot.", + "type": "boolean" + } + }, + "id": "ShieldedInstanceIntegrityPolicy", + "type": "object" + }, + "InstanceAggregatedList": { + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "additionalProperties": { + "$ref": "InstancesScopedList", + "description": "[Output Only] Name of the scope containing this set of instances." + }, + "description": "An object that contains a list of instances scoped by zone.", + "type": "object" + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#instanceAggregatedList for aggregated lists of Instance resources.", + "default": "compute#instanceAggregatedList", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + } + }, + "type": "object" + }, + "unreachables": { + "type": "array", + "items": { + "type": "string" + }, + "description": "[Output Only] Unreachable resources." + } + }, + "id": "InstanceAggregatedList", + "type": "object" + }, + "RegionInstanceGroupList": { + "id": "RegionInstanceGroupList", + "type": "object", + "description": "Contains a list of InstanceGroup resources.", + "properties": { + "items": { + "description": "A list of InstanceGroup resources.", + "items": { + "$ref": "InstanceGroup" + }, + "type": "array" + }, + "warning": { + "properties": { + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "kind": { + "type": "string", + "default": "compute#regionInstanceGroupList", + "description": "The resource type." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + } + }, + "NetworksRemovePeeringRequest": { + "id": "NetworksRemovePeeringRequest", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the peering, which should conform to RFC1035." + } + } + }, + "InstanceGroupManagersListErrorsResponse": { + "id": "InstanceGroupManagersListErrorsResponse", + "properties": { + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "items": { + "type": "array", + "items": { + "$ref": "InstanceManagedByIgmError" + }, + "description": "[Output Only] The list of errors of the managed instance group." + } + }, + "type": "object" + }, + "InstanceGroupManager": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier.", + "format": "uint64" + }, + "currentActions": { + "$ref": "InstanceGroupManagerActionsSummary", + "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions." + }, + "kind": { + "description": "[Output Only] The resource type, which is always compute#instanceGroupManager for managed instance groups.", + "type": "string", + "default": "compute#instanceGroupManager" + }, + "creationTimestamp": { + "description": "[Output Only] The creation timestamp for this managed instance group in RFC3339 text format.", + "type": "string" + }, + "autoHealingPolicies": { + "description": "The autohealing policy for this managed instance group. You can specify only one value.", + "items": { + "$ref": "InstanceGroupManagerAutoHealingPolicy" + }, + "type": "array" + }, + "region": { + "description": "[Output Only] The URL of the region where the managed instance group resides (for regional resources).", + "type": "string" + }, + "namedPorts": { + "type": "array", + "items": { + "$ref": "NamedPort" + }, + "description": "Named ports configured for the Instance Groups complementary to this Instance Group Manager." + }, + "versions": { + "items": { + "$ref": "InstanceGroupManagerVersion" + }, + "description": "Specifies the instance templates used by this managed instance group to create instances. Each version is defined by an instanceTemplate and a name. Every version can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.", + "type": "array" + }, + "targetPools": { + "items": { + "type": "string" + }, + "description": "The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", + "type": "array" + }, + "statefulPolicy": { + "$ref": "StatefulPolicy", + "description": "Stateful configuration for this Instanced Group Manager" + }, + "distributionPolicy": { + "description": "Policy specifying the intended distribution of managed instances across zones in a regional managed instance group.", + "$ref": "DistributionPolicy" + }, + "updatePolicy": { + "description": "The update policy for this managed instance group.", + "$ref": "InstanceGroupManagerUpdatePolicy" + }, + "name": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert", + "compute.regionInstanceGroupManagers.insert" + ] + }, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.", + "type": "string" + }, + "instanceTemplate": { + "type": "string", + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE." + }, + "fingerprint": { + "description": "Fingerprint of this resource. This field may be used in optimistic locking. It will be ignored when inserting an InstanceGroupManager. An up-to-date fingerprint must be provided in order to update the InstanceGroupManager, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an InstanceGroupManager.", + "type": "string", + "format": "byte" + }, + "instanceGroup": { + "description": "[Output Only] The URL of the Instance Group resource.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] The URL for this managed instance group. The server defines this URL.", + "type": "string" + }, + "status": { + "$ref": "InstanceGroupManagerStatus", + "description": "[Output Only] The status of this managed instance group." + }, + "baseInstanceName": { + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert" + ] + }, + "pattern": "[a-z][-a-z0-9]{0,57}", + "type": "string", + "description": "The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035." + }, + "targetSize": { + "format": "int32", + "description": "The target number of running instances for this managed instance group. You can reduce this number by using the instanceGroupManager deleteInstances or abandonInstances methods. Resizing the group also changes this number.", + "type": "integer", + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert", + "compute.regionInstanceGroupManagers.insert" + ] + } + }, + "zone": { + "description": "[Output Only] The URL of a zone where the managed instance group is located (for zonal resources).", + "type": "string" + }, + "description": { + "description": "An optional description of this resource.", + "type": "string" + } + }, + "id": "InstanceGroupManager", + "description": "Represents a Managed Instance Group resource. An instance group is a collection of VM instances that you can manage as a single entity. For more information, read Instance groups. For zonal Managed Instance Group, use the instanceGroupManagers resource. For regional Managed Instance Group, use the regionInstanceGroupManagers resource." + }, + "RouterBgp": { + "type": "object", + "properties": { + "advertiseMode": { + "enumDescriptions": [ + "", + "" + ], + "enum": [ + "CUSTOM", + "DEFAULT" + ], + "type": "string", + "description": "User-specified flag to indicate which mode to use for advertisement. The options are DEFAULT or CUSTOM." + }, + "asn": { + "format": "uint32", + "description": "Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN.", + "type": "integer" + }, + "keepaliveInterval": { + "type": "integer", + "format": "uint32", + "description": "The interval in seconds between BGP keepalive messages that are sent to the peer. Hold time is three times the interval at which keepalive messages are sent, and the hold time is the maximum number of seconds allowed to elapse between successive keepalive messages that BGP receives from a peer. BGP will use the smaller of either the local hold time value or the peer's hold time value as the hold time for the BGP connection between the two peers. If set, this value must be between 20 and 60. The default is 20." + }, + "advertisedGroups": { + "type": "array", + "description": "User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups.", + "items": { + "enum": [ + "ALL_SUBNETS" + ], + "type": "string", + "enumDescriptions": [ + "Advertise all available subnets (including peer VPC subnets)." + ] + } + }, + "advertisedIpRanges": { + "items": { + "$ref": "RouterAdvertisedIpRange" + }, + "type": "array", + "description": "User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertise_mode is CUSTOM and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges." + } + }, + "id": "RouterBgp" + }, + "Expr": { + "id": "Expr", + "type": "object", + "description": "Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \"Summary size limit\" description: \"Determines if a summary is less than 100 chars\" expression: \"document.summary.size() \u003c 100\" Example (Equality): title: \"Requestor is owner\" description: \"Determines if requestor is the document owner\" expression: \"document.owner == request.auth.claims.email\" Example (Logic): title: \"Public documents\" description: \"Determine whether the document should be publicly visible\" expression: \"document.type != 'private' && document.type != 'internal'\" Example (Data Manipulation): title: \"Notification string\" description: \"Create a notification string with a timestamp.\" expression: \"'New message received at ' + string(document.create_time)\" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information.", + "properties": { + "title": { + "type": "string", + "description": "Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression." + }, + "description": { + "type": "string", + "description": "Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI." + }, + "location": { + "description": "Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.", + "type": "string" + }, + "expression": { + "type": "string", + "description": "Textual representation of an expression in Common Expression Language syntax." + } + } + }, + "MachineType": { + "id": "MachineType", + "properties": { + "memoryMb": { + "format": "int32", + "description": "[Output Only] The amount of physical memory available to the instance, defined in MB.", + "type": "integer" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "maximumPersistentDisks": { + "format": "int32", + "description": "[Output Only] Maximum persistent disks allowed.", + "type": "integer" + }, + "accelerators": { + "items": { + "properties": { + "guestAcceleratorType": { + "description": "The accelerator type resource name, not a full URL, e.g. 'nvidia-tesla-k80'.", + "type": "string" + }, + "guestAcceleratorCount": { + "format": "int32", + "type": "integer", + "description": "Number of accelerator cards exposed to the guest." + } + }, + "type": "object" + }, + "type": "array", + "description": "[Output Only] A list of accelerator configurations assigned to this machine type." + }, + "name": { + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "kind": { + "type": "string", + "default": "compute#machineType", + "description": "[Output Only] The type of the resource. Always compute#machineType for machine types." + }, + "isSharedCpu": { + "description": "[Output Only] Whether this machine type has a shared CPU. See Shared-core machine types for more information.", + "type": "boolean" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "scratchDisks": { + "items": { + "type": "object", + "properties": { + "diskGb": { + "type": "integer", + "description": "Size of the scratch disk, defined in GB.", + "format": "int32" + } + } + }, + "description": "[Output Only] A list of extended scratch disks assigned to the instance.", + "type": "array" + }, + "guestCpus": { + "format": "int32", + "description": "[Output Only] The number of virtual CPUs that are available to the instance.", + "type": "integer" + }, + "description": { + "description": "[Output Only] An optional textual description of the resource.", + "type": "string" + }, + "maximumPersistentDisksSizeGb": { + "description": "[Output Only] Maximum total persistent disks size (GB) allowed.", + "type": "string", + "format": "int64" + }, + "imageSpaceGb": { + "format": "int32", + "description": "[Deprecated] This property is deprecated and will never be populated with any relevant values.", + "type": "integer" + }, + "zone": { + "description": "[Output Only] The name of the zone where the machine type resides, such as us-central1-a.", + "type": "string" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this machine type. Only applicable if the machine type is unavailable." + } + }, + "description": "Represents a Machine Type resource. You can use specific machine types for your VM instances based on performance and pricing requirements. For more information, read Machine Types.", + "type": "object" + }, + "InstanceGroupManagersDeletePerInstanceConfigsReq": { + "id": "InstanceGroupManagersDeletePerInstanceConfigsReq", + "properties": { + "names": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The list of instance names for which we want to delete per-instance configs on this managed instance group." + } + }, + "type": "object", + "description": "InstanceGroupManagers.deletePerInstanceConfigs" + }, + "LogConfigDataAccessOptions": { + "id": "LogConfigDataAccessOptions", + "description": "This is deprecated and has no effect. Do not use.", + "type": "object", + "properties": { + "logMode": { + "description": "This is deprecated and has no effect. Do not use.", + "enum": [ + "LOG_FAIL_CLOSED", + "LOG_MODE_UNSPECIFIED" + ], + "enumDescriptions": [ + "This is deprecated and has no effect. Do not use.", + "This is deprecated and has no effect. Do not use." + ], + "type": "string" + } + } + }, + "RoutersScopedList": { + "id": "RoutersScopedList", + "type": "object", + "properties": { + "routers": { + "items": { + "$ref": "Router" + }, + "description": "A list of routers contained in this scope.", + "type": "array" + }, + "warning": { + "properties": { + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + } + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + } + }, + "type": "object", + "description": "Informational warning which replaces the list of routers when the list is empty." + } + } + }, + "InstancesSetMachineTypeRequest": { + "properties": { + "machineType": { + "type": "string", + "description": "Full or partial URL of the machine type resource. See Machine Types for a full list of machine types. For example: zones/us-central1-f/machineTypes/n1-standard-1" + } + }, + "type": "object", + "id": "InstancesSetMachineTypeRequest" + }, + "TargetInstanceAggregatedList": { + "properties": { + "items": { + "description": "A list of TargetInstance resources.", + "type": "object", + "additionalProperties": { + "description": "Name of the scope containing this set of target instances.", + "$ref": "TargetInstancesScopedList" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#targetInstanceAggregatedList" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "warning": { + "type": "object", + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + } + } + }, + "description": "[Output Only] Informational warning message." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "unreachables": { + "items": { + "type": "string" + }, + "type": "array", + "description": "[Output Only] Unreachable resources." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "type": "object", + "id": "TargetInstanceAggregatedList" + }, + "DiskAggregatedList": { + "type": "object", + "id": "DiskAggregatedList", + "properties": { + "warning": { + "type": "object", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + } + } + }, + "description": "[Output Only] Informational warning message." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "additionalProperties": { + "$ref": "DisksScopedList", + "description": "[Output Only] Name of the scope containing this set of disks." + }, + "description": "A list of DisksScopedList resources.", + "type": "object" + }, + "unreachables": { + "items": { + "type": "string" + }, + "description": "[Output Only] Unreachable resources.", + "type": "array" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#diskAggregatedList for aggregated lists of persistent disks.", + "type": "string", + "default": "compute#diskAggregatedList" + } + } + }, + "VpnGatewayStatusTunnel": { + "properties": { + "tunnelUrl": { + "description": "URL reference to the VPN tunnel.", + "type": "string" + }, + "localGatewayInterface": { + "description": "The VPN gateway interface this VPN tunnel is associated with.", + "type": "integer", + "format": "uint32" + }, + "peerGatewayInterface": { + "description": "The peer gateway interface this VPN tunnel is connected to, the peer gateway could either be an external VPN gateway or GCP VPN gateway.", + "type": "integer", + "format": "uint32" + } + }, + "id": "VpnGatewayStatusTunnel", + "type": "object", + "description": "Contains some information about a VPN tunnel." + }, + "HostRule": { + "properties": { + "pathMatcher": { + "description": "The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion.", + "type": "string" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "hosts": { + "items": { + "type": "string" + }, + "description": "The list of host patterns to match. They must be valid hostnames with optional port numbers in the format host:port. * matches any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or .. * based matching is not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true.", + "type": "array" + } + }, + "id": "HostRule", + "description": "UrlMaps A host-matching rule for a URL. If matched, will use the named PathMatcher to select the BackendService.", + "type": "object" + }, + "AutoscalingPolicy": { + "description": "Cloud Autoscaler policy.", + "type": "object", + "properties": { + "mode": { + "enumDescriptions": [ + "Do not automatically scale the MIG in or out. The recommended_size field contains the size of MIG that would be set if the actuation mode was enabled.", + "Automatically scale the MIG in and out according to the policy.", + "Automatically create VMs according to the policy, but do not scale the MIG in.", + "Automatically create VMs according to the policy, but do not scale the MIG in." + ], + "type": "string", + "enum": [ + "OFF", + "ON", + "ONLY_SCALE_OUT", + "ONLY_UP" + ], + "description": "Defines operating mode for this policy." + }, + "coolDownPeriodSec": { + "type": "integer", + "description": "The number of seconds that the autoscaler waits before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds. Virtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process.", + "format": "int32" + }, + "maxNumReplicas": { + "description": "The maximum number of instances that the autoscaler can scale out to. This is required when creating or updating an autoscaler. The maximum number of replicas must not be lower than minimal number of replicas.", + "format": "int32", + "type": "integer" + }, + "customMetricUtilizations": { + "description": "Configuration parameters of autoscaling based on a custom metric.", + "type": "array", + "items": { + "$ref": "AutoscalingPolicyCustomMetricUtilization" + } + }, + "scaleInControl": { + "$ref": "AutoscalingPolicyScaleInControl" + }, + "scalingSchedules": { + "type": "object", + "description": "Scaling schedules defined for an autoscaler. Multiple schedules can be set on an autoscaler, and they can overlap. During overlapping periods the greatest min_required_replicas of all scaling schedules is applied. Up to 128 scaling schedules are allowed.", + "additionalProperties": { + "$ref": "AutoscalingPolicyScalingSchedule" + } + }, + "loadBalancingUtilization": { + "$ref": "AutoscalingPolicyLoadBalancingUtilization", + "description": "Configuration parameters of autoscaling based on load balancer." + }, + "minNumReplicas": { + "format": "int32", + "description": "The minimum number of replicas that the autoscaler can scale in to. This cannot be less than 0. If not provided, autoscaler chooses a default value depending on maximum number of instances allowed.", + "type": "integer" + }, + "cpuUtilization": { + "$ref": "AutoscalingPolicyCpuUtilization", + "description": "Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group." + } + }, + "id": "AutoscalingPolicy" + }, + "GlobalNetworkEndpointGroupsDetachEndpointsRequest": { + "id": "GlobalNetworkEndpointGroupsDetachEndpointsRequest", + "properties": { + "networkEndpoints": { + "description": "The list of network endpoints to be detached.", + "type": "array", + "items": { + "$ref": "NetworkEndpoint" + } + } + }, + "type": "object" + }, + "PacketMirroringMirroredResourceInfoInstanceInfo": { + "properties": { + "canonicalUrl": { + "description": "[Output Only] Unique identifier for the instance; defined by the server.", + "type": "string" + }, + "url": { + "type": "string", + "description": "Resource URL to the virtual machine instance which is being mirrored." + } + }, + "id": "PacketMirroringMirroredResourceInfoInstanceInfo", + "type": "object" + }, + "GRPCHealthCheck": { + "type": "object", + "properties": { + "grpcServiceName": { + "type": "string", + "description": "The gRPC service name for the health check. This field is optional. The value of grpc_service_name has the following meanings by convention: - Empty service_name means the overall status of all services at the backend. - Non-empty service_name means the health of that gRPC service, as defined by the owner of the service. The grpc_service_name can only be ASCII." + }, + "port": { + "type": "integer", + "format": "int32", + "description": "The port number for the health check request. Must be specified if port_name and port_specification are not set or if port_specification is USE_FIXED_PORT. Valid values are 1 through 65535." + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence. The port_name should conform to RFC1035.", + "type": "string" + }, + "portSpecification": { + "type": "string", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "description": "Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, gRPC health check follows behavior specified in port and portName fields.", + "enumDescriptions": [ + "The port number in port is used for health checking.", + "The portName is used for health checking.", + "For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking." + ] + } + }, + "id": "GRPCHealthCheck" + }, + "ReservationsScopedList": { + "type": "object", + "properties": { + "reservations": { + "description": "A list of reservations contained in this scope.", + "type": "array", + "items": { + "$ref": "Reservation" + } + }, + "warning": { + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "items": { + "type": "object", + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + } + }, + "description": "Informational warning which replaces the list of reservations when the list is empty.", + "type": "object" + } + }, + "id": "ReservationsScopedList" + }, + "TestFailure": { + "id": "TestFailure", + "properties": { + "host": { + "type": "string", + "description": "Host portion of the URL." + }, + "path": { + "type": "string", + "description": "Path portion including query parameters in the URL." + }, + "actualService": { + "type": "string", + "description": "BackendService or BackendBucket returned by load balancer." + }, + "actualOutputUrl": { + "description": "The actual output URL evaluated by load balancer containing the scheme, host, path and query parameters.", + "type": "string" + }, + "headers": { + "items": { + "$ref": "UrlMapTestHeader" + }, + "description": "HTTP headers of the request.", + "type": "array" + }, + "expectedRedirectResponseCode": { + "description": "Expected HTTP status code for rule with `urlRedirect` calculated by load balancer", + "type": "integer", + "format": "int32" + }, + "expectedOutputUrl": { + "type": "string", + "description": "The expected output URL evaluated by load balancer containing the scheme, host, path and query parameters." + }, + "expectedService": { + "type": "string", + "description": "Expected BackendService or BackendBucket resource the given URL should be mapped to." + }, + "actualRedirectResponseCode": { + "type": "integer", + "format": "int32", + "description": "Actual HTTP status code for rule with `urlRedirect` calculated by load balancer" + } + }, + "type": "object" + }, + "TargetPool": { + "properties": { + "id": { + "type": "string", + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "backupPool": { + "description": "The server-defined URL for the resource. This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool, and its failoverRatio field is properly set to a value between [0, 1]. backupPool and failoverRatio together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below failoverRatio, traffic arriving at the load-balanced IP will be directed to the backup pool. In case where failoverRatio and backupPool are not set, or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy.", + "type": "string" + }, + "sessionAffinity": { + "description": "Session affinity option, must be one of the following values: NONE: Connections from the same client IP may go to any instance in the pool. CLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy. CLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy.", + "enumDescriptions": [ + "2-tuple hash on packet's source and destination IP addresses. Connections from the same source IP address to the same destination IP address will be served by the same backend VM while that VM remains healthy.", + "1-tuple hash only on packet's source IP address. Connections from the same source IP address will be served by the same backend VM while that VM remains healthy. This option can only be used for Internal TCP/UDP Load Balancing.", + "5-tuple hash on packet's source and destination IP addresses, IP protocol, and source and destination ports. Connections for the same IP protocol from the same source IP address and port to the same destination IP address and port will be served by the same backend VM while that VM remains healthy. This option cannot be used for HTTP(S) load balancing.", + "3-tuple hash on packet's source and destination IP addresses, and IP protocol. Connections for the same IP protocol from the same source IP address to the same destination IP address will be served by the same backend VM while that VM remains healthy. This option cannot be used for HTTP(S) load balancing.", + "Hash based on a cookie generated by the L7 loadbalancer. Only valid for HTTP(S) load balancing.", + "The hash is based on a user specified header field.", + "The hash is based on a user provided cookie.", + "No session affinity. Connections from the same client IP may go to any instance in the pool." + ], + "enum": [ + "CLIENT_IP", + "CLIENT_IP_NO_DESTINATION", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "HEADER_FIELD", + "HTTP_COOKIE", + "NONE" + ], + "type": "string" + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the target pool resides." + }, + "failoverRatio": { + "format": "float", + "type": "number", + "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool (i.e., not as a backup pool to some other target pool). The value of the field must be in [0, 1]. If set, backupPool must also be set. They together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below this number, traffic arriving at the load-balanced IP will be directed to the backup pool. In case where failoverRatio is not set or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy." + }, + "healthChecks": { + "description": "The URL of the HttpHealthCheck resource. A member instance in this pool is considered healthy if and only if the health checks pass. Only legacy HttpHealthChecks are supported. Only one health check may be specified.", + "type": "array", + "items": { + "type": "string" + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "name": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "kind": { + "default": "compute#targetPool", + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#targetPool for target pools." + }, + "instances": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of resource URLs to the virtual machine instances serving this pool. They must live in zones contained in the same region as this pool." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + } + }, + "description": "Represents a Target Pool resource. Target pools are used for network TCP/UDP load balancing. A target pool references member instances, an associated legacy HttpHealthCheck resource, and, optionally, a backup target pool. For more information, read Using target pools.", + "type": "object", + "id": "TargetPool" + }, + "HttpHeaderOption": { + "id": "HttpHeaderOption", + "type": "object", + "description": "Specification determining how headers are added to requests or responses.", + "properties": { + "replace": { + "type": "boolean", + "description": "If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header. The default value is false." + }, + "headerValue": { + "type": "string", + "description": "The value of the header to add." + }, + "headerName": { + "description": "The name of the header.", + "type": "string" + } + } + }, + "NodeGroup": { + "type": "object", + "id": "NodeGroup", + "description": "Represents a sole-tenant Node Group resource. A sole-tenant node is a physical server that is dedicated to hosting VM instances only for your specific project. Use sole-tenant nodes to keep your instances physically separated from instances in other projects, or to group your instances together on the same host hardware. For more information, read Sole-tenant nodes.", + "properties": { + "status": { + "enum": [ + "CREATING", + "DELETING", + "INVALID", + "READY" + ], + "type": "string", + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "size": { + "format": "int32", + "type": "integer", + "description": "[Output Only] The total number of nodes in the node group." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "fingerprint": { + "type": "string", + "format": "byte" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "maintenancePolicy": { + "enumDescriptions": [ + "Allow the node and corresponding instances to retain default maintenance behavior.", + "", + "When maintenance must be done on a node, the instances on that node will be moved to other nodes in the group. Instances with onHostMaintenance = MIGRATE will live migrate to their destinations while instances with onHostMaintenance = TERMINATE will terminate and then restart on their destination nodes if automaticRestart = true.", + "Instances in this group will restart on the same node when maintenance has completed. Instances must have onHostMaintenance = TERMINATE, and they will only restart if automaticRestart = true." + ], + "description": "Specifies how to handle instances when a node in the group undergoes maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT. For more information, see Maintenance policies.", + "enum": [ + "DEFAULT", + "MAINTENANCE_POLICY_UNSPECIFIED", + "MIGRATE_WITHIN_NODE_GROUP", + "RESTART_IN_PLACE" + ], + "type": "string" + }, + "id": { + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "autoscalingPolicy": { + "description": "Specifies how autoscaling should behave.", + "$ref": "NodeGroupAutoscalingPolicy" + }, + "zone": { + "type": "string", + "description": "[Output Only] The name of the zone where the node group resides, such as us-central1-a." + }, + "locationHint": { + "type": "string", + "description": "An opaque location hint used to place the Node close to other resources. This field is for use by internal tools that use the public API. The location hint here on the NodeGroup overrides any location_hint present in the NodeTemplate." + }, + "kind": { + "type": "string", + "description": "[Output Only] The type of the resource. Always compute#nodeGroup for node group.", + "default": "compute#nodeGroup" + }, + "nodeTemplate": { + "type": "string", + "description": "URL of the node template to create the node group from." + }, + "name": { + "type": "string", + "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "maintenanceWindow": { + "$ref": "NodeGroupMaintenanceWindow" + } + } + }, + "AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk": { + "properties": { + "diskSizeGb": { + "description": "Specifies the size of the disk in base-2 GB.", + "type": "string", + "format": "int64" + }, + "interface": { + "type": "string", + "enum": [ + "NVME", + "SCSI" + ], + "enumDescriptions": [ + "", + "" + ], + "description": "Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance." + } + }, + "id": "AllocationSpecificSKUAllocationAllocatedInstancePropertiesReservedDisk", + "type": "object" + }, + "Project": { + "properties": { + "description": { + "description": "An optional textual description of the resource.", + "type": "string" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "kind": { + "default": "compute#project", + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#project for projects." + }, + "usageExportLocation": { + "description": "The naming prefix for daily usage reports and the Google Cloud Storage bucket where they are stored.", + "$ref": "UsageExportLocation" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "commonInstanceMetadata": { + "$ref": "Metadata", + "description": "Metadata key/value pairs available to all instances contained in this project. See Custom metadata for more information." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server. This is *not* the project ID, and is just a unique ID used by Compute Engine to identify resources.", + "format": "uint64" + }, + "xpnProjectStatus": { + "description": "[Output Only] The role this project has in a shared VPC configuration. Currently, only projects with the host role, which is specified by the value HOST, are differentiated.", + "enumDescriptions": [ + "", + "" + ], + "enum": [ + "HOST", + "UNSPECIFIED_XPN_PROJECT_STATUS" + ], + "type": "string" + }, + "enabledFeatures": { + "description": "Restricted features enabled for use on this project.", + "items": { + "type": "string" + }, + "type": "array" + }, + "quotas": { + "type": "array", + "description": "[Output Only] Quotas assigned to this project.", + "items": { + "$ref": "Quota" + } + }, + "defaultNetworkTier": { + "enum": [ + "PREMIUM", + "STANDARD" + ], + "type": "string", + "description": "This signifies the default network tier used for configuring resources of the project and can only take the following values: PREMIUM, STANDARD. Initially the default network tier is PREMIUM.", + "enumDescriptions": [ + "High quality, Google-grade network tier, support for all networking products.", + "Public internet quality, only limited support for other networking products." + ] + }, + "name": { + "description": "The project ID. For example: my-example-project. Use the project ID to make requests to Compute Engine.", + "type": "string" + }, + "defaultServiceAccount": { + "description": "[Output Only] Default service account used by VMs running in this project.", + "type": "string" + } + }, + "type": "object", + "id": "Project", + "description": "Represents a Project resource. A project is used to organize resources in a Google Cloud Platform environment. For more information, read about the Resource Hierarchy." + }, + "PublicDelegatedPrefix": { + "id": "PublicDelegatedPrefix", + "type": "object", + "properties": { + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "status": { + "enum": [ + "ANNOUNCED", + "DELETING", + "INITIALIZING", + "READY_TO_ANNOUNCE" + ], + "description": "[Output Only] The status of the public delegated prefix.", + "type": "string", + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "parentPrefix": { + "description": "The URL of parent prefix. Either PublicAdvertisedPrefix or PublicDelegatedPrefix.", + "type": "string" + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the public delegated prefix resides. This field applies only to the region resource. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body." + }, + "ipCidrRange": { + "description": "The IPv4 address range, in CIDR format, represented by this public delegated prefix.", + "type": "string" + }, + "name": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string", + "annotations": { + "required": [ + "compute.publicDelegatedPrefixes.insert" + ] + } + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "id": { + "description": "[Output Only] The unique identifier for the resource type. The server generates this identifier.", + "format": "uint64", + "type": "string" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#publicDelegatedPrefix for public delegated prefixes.", + "default": "compute#publicDelegatedPrefix" + }, + "isLiveMigration": { + "type": "boolean", + "description": "If true, the prefix will be live migrated." + }, + "fingerprint": { + "type": "string", + "format": "byte", + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a new PublicDelegatedPrefix. An up-to-date fingerprint must be provided in order to update the PublicDelegatedPrefix, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a PublicDelegatedPrefix." + }, + "publicDelegatedSubPrefixs": { + "items": { + "$ref": "PublicDelegatedPrefixPublicDelegatedSubPrefix" + }, + "type": "array", + "description": "The list of sub public delegated prefixes that exist for this public delegated prefix." + } + }, + "description": "A PublicDelegatedPrefix resource represents an IP block within a PublicAdvertisedPrefix that is configured within a single cloud scope (global or region). IPs in the block can be allocated to resources within that scope. Public delegated prefixes may be further broken up into smaller IP blocks in the same scope as the parent block." + }, + "InstanceGroupManagersApplyUpdatesRequest": { + "id": "InstanceGroupManagersApplyUpdatesRequest", + "properties": { + "instances": { + "description": "The list of URLs of one or more instances for which you want to apply updates. Each URL can be a full URL or a partial URL, such as zones/[ZONE]/instances/[INSTANCE_NAME].", + "type": "array", + "items": { + "type": "string" + } + }, + "allInstances": { + "type": "boolean", + "description": "Flag to update all instances instead of specified list of “instances”. If the flag is set to true then the instances may not be specified in the request." + }, + "mostDisruptiveAllowedAction": { + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ], + "enumDescriptions": [ + "Do not perform any action.", + "Updates applied in runtime, instances will not be disrupted.", + "Old instances will be deleted. New instances will be created from the target template.", + "Every instance will be restarted." + ], + "type": "string", + "description": "The most disruptive action that you want to perform on each instance during the update: - REPLACE: Delete the instance and create it again. - RESTART: Stop the instance and start it again. - REFRESH: Do not stop the instance. - NONE: Do not disrupt the instance at all. By default, the most disruptive allowed action is REPLACE. If your update requires a more disruptive action than you set with this flag, the update request will fail." + }, + "minimalAction": { + "description": "The minimal action that you want to perform on each instance during the update: - REPLACE: At minimum, delete the instance and create it again. - RESTART: Stop the instance and start it again. - REFRESH: Do not stop the instance. - NONE: Do not disrupt the instance at all. By default, the minimum action is NONE. If your update requires a more disruptive action than you set with this flag, the necessary action is performed to execute the update.", + "type": "string", + "enumDescriptions": [ + "Do not perform any action.", + "Updates applied in runtime, instances will not be disrupted.", + "Old instances will be deleted. New instances will be created from the target template.", + "Every instance will be restarted." + ], + "enum": [ + "NONE", + "REFRESH", + "REPLACE", + "RESTART" + ] + } + }, + "type": "object", + "description": "InstanceGroupManagers.applyUpdatesToInstances" + }, + "BackendServiceLogConfig": { + "description": "The available logging options for the load balancer traffic served by this backend service.", + "id": "BackendServiceLogConfig", + "properties": { + "sampleRate": { + "format": "float", + "description": "This field can only be specified if logging is enabled for this backend service. The value of the field must be in [0, 1]. This configures the sampling rate of requests to the load balancer where 1.0 means all logged requests are reported and 0.0 means no logged requests are reported. The default value is 1.0.", + "type": "number" + }, + "enable": { + "type": "boolean", + "description": "This field denotes whether to enable logging for the load balancer traffic served by this backend service." + } + }, + "type": "object" + }, + "DistributionPolicy": { + "properties": { + "zones": { + "items": { + "$ref": "DistributionPolicyZoneConfiguration" + }, + "description": "Zones where the regional managed instance group will create and manage its instances.", + "type": "array" + }, + "targetShape": { + "enum": [ + "ANY", + "BALANCED", + "EVEN" + ], + "type": "string", + "enumDescriptions": [ + "The group picks zones for creating VM instances to fulfill the requested number of VMs within present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads that do not require high availability.", + "The group prioritizes acquisition of resources, scheduling VMs in zones where resources are available while distributing VMs as evenly as possible across selected zones to minimize the impact of zonal failure. Recommended for highly available serving workloads.", + "The group schedules VM instance creation and deletion to achieve and maintain an even number of managed instances across the selected zones. The distribution is even when the number of managed instances does not differ by more than 1 between any two zones. Recommended for highly available serving workloads." + ], + "description": "The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType)." + } + }, + "id": "DistributionPolicy", + "type": "object" + }, + "VpnTunnelList": { + "description": "Contains a list of VpnTunnel resources.", + "properties": { + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "default": "compute#vpnTunnelList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + } + }, + "type": "object" + }, + "items": { + "description": "A list of VpnTunnel resources.", + "items": { + "$ref": "VpnTunnel" + }, + "type": "array" + } + }, + "type": "object", + "id": "VpnTunnelList" + }, + "SecurityPolicyAdvancedOptionsConfig": { + "type": "object", + "properties": { + "logLevel": { + "type": "string", + "enumDescriptions": [ + "", + "" + ], + "enum": [ + "NORMAL", + "VERBOSE" + ] + }, + "jsonParsing": { + "type": "string", + "enum": [ + "DISABLED", + "STANDARD" + ], + "enumDescriptions": [ + "", + "" + ] + } + }, + "id": "SecurityPolicyAdvancedOptionsConfig" + }, + "Binding": { + "properties": { + "members": { + "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. ", + "type": "array", + "items": { + "type": "string" + } + }, + "bindingId": { + "type": "string", + "description": "This is deprecated and has no effect. Do not use." + }, + "role": { + "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.", + "type": "string" + }, + "condition": { + "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the members in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).", + "$ref": "Expr" + } + }, + "type": "object", + "id": "Binding", + "description": "Associates `members` with a `role`." + }, + "ResourcePolicyDailyCycle": { + "properties": { + "daysInCycle": { + "type": "integer", + "description": "Defines a schedule with units measured in months. The value determines how many months pass between the start of each cycle.", + "format": "int32" + }, + "duration": { + "description": "[Output only] A predetermined duration for the window, automatically chosen to be the smallest possible in the given scenario.", + "type": "string" + }, + "startTime": { + "type": "string", + "description": "Start time of the window. This must be in UTC format that resolves to one of 00:00, 04:00, 08:00, 12:00, 16:00, or 20:00. For example, both 13:00-5 and 08:00 are valid." + } + }, + "type": "object", + "description": "Time window specified for daily operations.", + "id": "ResourcePolicyDailyCycle" + }, + "InstanceListReferrers": { + "type": "object", + "description": "Contains a list of instance referrers.", + "id": "InstanceListReferrers", + "properties": { + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "data": { + "type": "array", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + } + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#instanceListReferrers for lists of Instance referrers.", + "default": "compute#instanceListReferrers" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "type": "array", + "description": "A list of Reference resources.", + "items": { + "$ref": "Reference" + } + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + } + }, + "AcceleratorTypeAggregatedList": { + "id": "AcceleratorTypeAggregatedList", + "type": "object", + "properties": { + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "type": "object", + "properties": { + "data": { + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + }, + "description": "[Output Only] Informational warning message." + }, + "items": { + "description": "A list of AcceleratorTypesScopedList resources.", + "additionalProperties": { + "description": "[Output Only] Name of the scope containing this set of accelerator types.", + "$ref": "AcceleratorTypesScopedList" + }, + "type": "object" + }, + "unreachables": { + "items": { + "type": "string" + }, + "description": "[Output Only] Unreachable resources.", + "type": "array" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#acceleratorTypeAggregatedList for aggregated lists of accelerator types.", + "type": "string", + "default": "compute#acceleratorTypeAggregatedList" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "HealthCheckList": { + "id": "HealthCheckList", + "description": "Contains a list of HealthCheck resources.", + "type": "object", + "properties": { + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "kind": { + "description": "Type of resource.", + "default": "compute#healthCheckList", + "type": "string" + }, + "items": { + "description": "A list of HealthCheck resources.", + "type": "array", + "items": { + "$ref": "HealthCheck" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "data": { + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + } + } + } + }, + "InstanceGroupManagerAggregatedList": { + "properties": { + "warning": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + }, + "description": "[Output Only] Informational warning message." + }, + "kind": { + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerAggregatedList for an aggregated list of managed instance groups.", + "default": "compute#instanceGroupManagerAggregatedList", + "type": "string" + }, + "items": { + "additionalProperties": { + "description": "[Output Only] The name of the scope that contains this set of managed instance groups.", + "$ref": "InstanceGroupManagersScopedList" + }, + "type": "object", + "description": "A list of InstanceGroupManagersScopedList resources." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "type": "array", + "items": { + "type": "string" + } + } + }, + "id": "InstanceGroupManagerAggregatedList", + "type": "object" + }, + "BackendServiceCdnPolicy": { + "properties": { + "cacheKeyPolicy": { + "$ref": "CacheKeyPolicy", + "description": "The CacheKeyPolicy for this CdnPolicy." + }, + "signedUrlKeyNames": { + "description": "[Output Only] Names of the keys for signing request URLs.", + "items": { + "type": "string" + }, + "type": "array" + }, + "negativeCaching": { + "type": "boolean", + "description": "Negative caching allows per-status code TTLs to be set, in order to apply fine-grained caching for common errors or redirects. This can reduce the load on your origin and improve end-user experience by reducing response latency. When the cache mode is set to CACHE_ALL_STATIC or USE_ORIGIN_HEADERS, negative caching applies to responses with the specified response code that lack any Cache-Control, Expires, or Pragma: no-cache directives. When the cache mode is set to FORCE_CACHE_ALL, negative caching applies to all responses with the specified response code, and override any caching headers. By default, Cloud CDN will apply the following default TTLs to these status codes: HTTP 300 (Multiple Choice), 301, 308 (Permanent Redirects): 10m HTTP 404 (Not Found), 410 (Gone), 451 (Unavailable For Legal Reasons): 120s HTTP 405 (Method Not Found), 421 (Misdirected Request), 501 (Not Implemented): 60s. These defaults can be overridden in negative_caching_policy." + }, + "defaultTtl": { + "format": "int32", + "description": "Specifies the default TTL for cached content served by this origin for responses that do not have an existing valid TTL (max-age or s-max-age). Setting a TTL of \"0\" means \"always revalidate\". The value of defaultTTL cannot be set to a value greater than that of maxTTL, but can be equal. When the cacheMode is set to FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set in all responses. The maximum allowed value is 31,622,400s (1 year), noting that infrequently accessed objects may be evicted from the cache before the defined TTL.", + "type": "integer" + }, + "serveWhileStale": { + "format": "int32", + "type": "integer", + "description": "Serve existing content from the cache (if available) when revalidating content with the origin, or when an error is encountered when refreshing the cache. This setting defines the default \"max-stale\" duration for any cached responses that do not specify a max-stale directive. Stale responses that exceed the TTL configured here will not be served. The default limit (max-stale) is 86400s (1 day), which will allow stale content to be served up to this limit beyond the max-age (or s-max-age) of a cached response. The maximum allowed value is 604800 (1 week). Set this to zero (0) to disable serve-while-stale." + }, + "bypassCacheOnRequestHeaders": { + "description": "Bypass the cache when the specified request headers are matched - e.g. Pragma or Authorization headers. Up to 5 headers can be specified. The cache is bypassed for all cdnPolicy.cacheMode settings.", + "type": "array", + "items": { + "$ref": "BackendServiceCdnPolicyBypassCacheOnRequestHeader" + } + }, + "signedUrlCacheMaxAgeSec": { + "format": "int64", + "type": "string", + "description": "Maximum number of seconds the response to a signed URL request will be considered fresh. After this time period, the response will be revalidated before being served. Defaults to 1hr (3600s). When serving responses to signed URL requests, Cloud CDN will internally behave as though all responses from this backend had a \"Cache-Control: public, max-age=[TTL]\" header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered." + }, + "maxTtl": { + "description": "Specifies the maximum allowed TTL for cached content served by this origin. Cache directives that attempt to set a max-age or s-maxage higher than this, or an Expires header more than maxTTL seconds in the future will be capped at the value of maxTTL, as if it were the value of an s-maxage Cache-Control directive. Headers sent to the client will not be modified. Setting a TTL of \"0\" means \"always revalidate\". The maximum allowed value is 31,622,400s (1 year), noting that infrequently accessed objects may be evicted from the cache before the defined TTL.", + "type": "integer", + "format": "int32" + }, + "clientTtl": { + "description": "Specifies a separate client (e.g. browser client) maximum TTL. This is used to clamp the max-age (or Expires) value sent to the client. With FORCE_CACHE_ALL, the lesser of client_ttl and default_ttl is used for the response max-age directive, along with a \"public\" directive. For cacheable content in CACHE_ALL_STATIC mode, client_ttl clamps the max-age from the origin (if specified), or else sets the response max-age directive to the lesser of the client_ttl and default_ttl, and also ensures a \"public\" cache-control directive is present. If a client TTL is not specified, a default value (1 hour) will be used. The maximum allowed value is 86400s (1 day).", + "type": "integer", + "format": "int32" + }, + "cacheMode": { + "type": "string", + "description": "Specifies the cache setting for all responses from this backend. The possible values are: USE_ORIGIN_HEADERS Requires the origin to set valid caching headers to cache content. Responses without these headers will not be cached at Google's edge, and will require a full trip to the origin on every request, potentially impacting performance and increasing load on the origin server. FORCE_CACHE_ALL Cache all content, ignoring any \"private\", \"no-store\" or \"no-cache\" directives in Cache-Control response headers. Warning: this may result in Cloud CDN caching private, per-user (user identifiable) content. CACHE_ALL_STATIC Automatically cache static content, including common image formats, media (video and audio), and web assets (JavaScript and CSS). Requests and responses that are marked as uncacheable, as well as dynamic content (including HTML), will not be cached.", + "enum": [ + "CACHE_ALL_STATIC", + "FORCE_CACHE_ALL", + "INVALID_CACHE_MODE", + "USE_ORIGIN_HEADERS" + ], + "enumDescriptions": [ + "Automatically cache static content, including common image formats, media (video and audio), and web assets (JavaScript and CSS). Requests and responses that are marked as uncacheable, as well as dynamic content (including HTML), will not be cached.", + "Cache all content, ignoring any \"private\", \"no-store\" or \"no-cache\" directives in Cache-Control response headers. Warning: this may result in Cloud CDN caching private, per-user (user identifiable) content.", + "", + "Requires the origin to set valid caching headers to cache content. Responses without these headers will not be cached at Google's edge, and will require a full trip to the origin on every request, potentially impacting performance and increasing load on the origin server." + ] + }, + "negativeCachingPolicy": { + "type": "array", + "description": "Sets a cache TTL for the specified HTTP status code. negative_caching must be enabled to configure negative_caching_policy. Omitting the policy and leaving negative_caching enabled will use Cloud CDN's default cache TTLs. Note that when specifying an explicit negative_caching_policy, you should take care to specify a cache TTL for all response codes that you wish to cache. Cloud CDN will not apply any default negative caching when a policy exists.", + "items": { + "$ref": "BackendServiceCdnPolicyNegativeCachingPolicy" + } + }, + "requestCoalescing": { + "type": "boolean", + "description": "If true then Cloud CDN will combine multiple concurrent cache fill requests into a small number of requests to the origin." + } + }, + "type": "object", + "id": "BackendServiceCdnPolicy", + "description": "Message containing Cloud CDN configuration for a backend service." + }, + "NetworkEndpointWithHealthStatus": { + "properties": { + "networkEndpoint": { + "$ref": "NetworkEndpoint", + "description": "[Output only] The network endpoint;" + }, + "healths": { + "description": "[Output only] The health status of network endpoint;", + "items": { + "$ref": "HealthStatusForNetworkEndpoint" + }, + "type": "array" + } + }, + "id": "NetworkEndpointWithHealthStatus", + "type": "object" + }, + "SerialPortOutput": { + "type": "object", + "id": "SerialPortOutput", + "description": "An instance serial console output.", + "properties": { + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#serialPortOutput for serial port output.", + "default": "compute#serialPortOutput" + }, + "contents": { + "type": "string", + "description": "[Output Only] The contents of the console output." + }, + "start": { + "type": "string", + "format": "int64", + "description": "The starting byte position of the output that was returned. This should match the start parameter sent with the request. If the serial console output exceeds the size of the buffer (1 MB), older output is overwritten by newer content. The output start value will indicate the byte position of the output that was returned, which might be different than the `start` value that was specified in the request." + }, + "next": { + "format": "int64", + "description": "[Output Only] The position of the next byte of content, regardless of whether the content exists, following the output returned in the `contents` property. Use this value in the next request as the start parameter.", + "type": "string" + } + } + }, + "ResourcePolicySnapshotSchedulePolicy": { + "type": "object", + "id": "ResourcePolicySnapshotSchedulePolicy", + "properties": { + "retentionPolicy": { + "$ref": "ResourcePolicySnapshotSchedulePolicyRetentionPolicy", + "description": "Retention policy applied to snapshots created by this resource policy." + }, + "snapshotProperties": { + "description": "Properties with which snapshots are created such as labels, encryption keys.", + "$ref": "ResourcePolicySnapshotSchedulePolicySnapshotProperties" + }, + "schedule": { + "$ref": "ResourcePolicySnapshotSchedulePolicySchedule", + "description": "A Vm Maintenance Policy specifies what kind of infrastructure maintenance we are allowed to perform on this VM and when. Schedule that is applied to disks covered by this policy." + } + }, + "description": "A snapshot schedule policy specifies when and how frequently snapshots are to be created for the target disk. Also specifies how many and how long these scheduled snapshots should be retained." + }, + "HealthStatusForNetworkEndpoint": { + "type": "object", + "id": "HealthStatusForNetworkEndpoint", + "properties": { + "forwardingRule": { + "$ref": "ForwardingRuleReference", + "description": "URL of the forwarding rule associated with the health state of the network endpoint." + }, + "backendService": { + "$ref": "BackendServiceReference", + "description": "URL of the backend service associated with the health state of the network endpoint." + }, + "healthCheck": { + "$ref": "HealthCheckReference", + "description": "URL of the health check associated with the health state of the network endpoint." + }, + "healthCheckService": { + "description": "URL of the health check service associated with the health state of the network endpoint.", + "$ref": "HealthCheckServiceReference" + }, + "healthState": { + "enumDescriptions": [ + "", + "", + "", + "" + ], + "enum": [ + "DRAINING", + "HEALTHY", + "UNHEALTHY", + "UNKNOWN" + ], + "type": "string", + "description": "Health state of the network endpoint determined based on the health checks configured." + } + } + }, + "Quota": { + "type": "object", + "description": "A quotas entry.", + "properties": { + "owner": { + "type": "string", + "description": "[Output Only] Owning resource. This is the resource on which this quota is applied." + }, + "metric": { + "type": "string", + "enum": [ + "A2_CPUS", + "AFFINITY_GROUPS", + "AUTOSCALERS", + "BACKEND_BUCKETS", + "BACKEND_SERVICES", + "C2D_CPUS", + "C2_CPUS", + "C3_CPUS", + "COMMITMENTS", + "COMMITTED_A2_CPUS", + "COMMITTED_C2D_CPUS", + "COMMITTED_C2_CPUS", + "COMMITTED_C3_CPUS", + "COMMITTED_CPUS", + "COMMITTED_E2_CPUS", + "COMMITTED_LICENSES", + "COMMITTED_LOCAL_SSD_TOTAL_GB", + "COMMITTED_MEMORY_OPTIMIZED_CPUS", + "COMMITTED_N2A_CPUS", + "COMMITTED_N2D_CPUS", + "COMMITTED_N2_CPUS", + "COMMITTED_NVIDIA_A100_GPUS", + "COMMITTED_NVIDIA_K80_GPUS", + "COMMITTED_NVIDIA_P100_GPUS", + "COMMITTED_NVIDIA_P4_GPUS", + "COMMITTED_NVIDIA_T4_GPUS", + "COMMITTED_NVIDIA_V100_GPUS", + "COMMITTED_T2D_CPUS", + "CPUS", + "CPUS_ALL_REGIONS", + "DISKS_TOTAL_GB", + "E2_CPUS", + "EXTERNAL_NETWORK_LB_FORWARDING_RULES", + "EXTERNAL_PROTOCOL_FORWARDING_RULES", + "EXTERNAL_VPN_GATEWAYS", + "FIREWALLS", + "FORWARDING_RULES", + "GLOBAL_INTERNAL_ADDRESSES", + "GPUS_ALL_REGIONS", + "HEALTH_CHECKS", + "IMAGES", + "INSTANCES", + "INSTANCE_GROUPS", + "INSTANCE_GROUP_MANAGERS", + "INSTANCE_TEMPLATES", + "INTERCONNECTS", + "INTERCONNECT_ATTACHMENTS_PER_REGION", + "INTERCONNECT_ATTACHMENTS_TOTAL_MBPS", + "INTERCONNECT_TOTAL_GBPS", + "INTERNAL_ADDRESSES", + "INTERNAL_TRAFFIC_DIRECTOR_FORWARDING_RULES", + "IN_PLACE_SNAPSHOTS", + "IN_USE_ADDRESSES", + "IN_USE_BACKUP_SCHEDULES", + "IN_USE_SNAPSHOT_SCHEDULES", + "LOCAL_SSD_TOTAL_GB", + "M1_CPUS", + "M2_CPUS", + "MACHINE_IMAGES", + "N2A_CPUS", + "N2D_CPUS", + "N2_CPUS", + "NETWORKS", + "NETWORK_ENDPOINT_GROUPS", + "NETWORK_FIREWALL_POLICIES", + "NODE_GROUPS", + "NODE_TEMPLATES", + "NVIDIA_A100_GPUS", + "NVIDIA_K80_GPUS", + "NVIDIA_P100_GPUS", + "NVIDIA_P100_VWS_GPUS", + "NVIDIA_P4_GPUS", + "NVIDIA_P4_VWS_GPUS", + "NVIDIA_T4_GPUS", + "NVIDIA_T4_VWS_GPUS", + "NVIDIA_V100_GPUS", + "PACKET_MIRRORINGS", + "PD_EXTREME_TOTAL_PROVISIONED_IOPS", + "PREEMPTIBLE_CPUS", + "PREEMPTIBLE_LOCAL_SSD_GB", + "PREEMPTIBLE_NVIDIA_A100_GPUS", + "PREEMPTIBLE_NVIDIA_K80_GPUS", + "PREEMPTIBLE_NVIDIA_P100_GPUS", + "PREEMPTIBLE_NVIDIA_P100_VWS_GPUS", + "PREEMPTIBLE_NVIDIA_P4_GPUS", + "PREEMPTIBLE_NVIDIA_P4_VWS_GPUS", + "PREEMPTIBLE_NVIDIA_T4_GPUS", + "PREEMPTIBLE_NVIDIA_T4_VWS_GPUS", + "PREEMPTIBLE_NVIDIA_V100_GPUS", + "PSC_ILB_CONSUMER_FORWARDING_RULES_PER_PRODUCER_NETWORK", + "PSC_INTERNAL_LB_FORWARDING_RULES", + "PUBLIC_ADVERTISED_PREFIXES", + "PUBLIC_DELEGATED_PREFIXES", + "REGIONAL_AUTOSCALERS", + "REGIONAL_INSTANCE_GROUP_MANAGERS", + "RESERVATIONS", + "RESOURCE_POLICIES", + "ROUTERS", + "ROUTES", + "SECURITY_POLICIES", + "SECURITY_POLICIES_PER_REGION", + "SECURITY_POLICY_CEVAL_RULES", + "SECURITY_POLICY_RULES", + "SECURITY_POLICY_RULES_PER_REGION", + "SERVICE_ATTACHMENTS", + "SNAPSHOTS", + "SSD_TOTAL_GB", + "SSL_CERTIFICATES", + "STATIC_ADDRESSES", + "STATIC_BYOIP_ADDRESSES", + "SUBNETWORKS", + "T2D_CPUS", + "TARGET_HTTPS_PROXIES", + "TARGET_HTTP_PROXIES", + "TARGET_INSTANCES", + "TARGET_POOLS", + "TARGET_SSL_PROXIES", + "TARGET_TCP_PROXIES", + "TARGET_VPN_GATEWAYS", + "URL_MAPS", + "VPN_GATEWAYS", + "VPN_TUNNELS", + "XPN_SERVICE_PROJECTS" + ], + "description": "[Output Only] Name of the quota metric.", + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "Guest CPUs", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "The total number of snapshots allowed for a single project.", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "usage": { + "description": "[Output Only] Current usage of this metric.", + "format": "double", + "type": "number" + }, + "limit": { + "format": "double", + "type": "number", + "description": "[Output Only] Quota limit for this metric." + } + }, + "id": "Quota" + }, + "AutoscalingPolicyCustomMetricUtilization": { + "type": "object", + "properties": { + "singleInstanceAssignment": { + "format": "double", + "description": "If scaling is based on a per-group metric value that represents the total amount of work to be done or resource usage, set this value to an amount assigned for a single instance of the scaled group. Autoscaler keeps the number of instances proportional to the value of this metric. The metric itself does not change value due to group resizing. A good metric to use with the target is for example pubsub.googleapis.com/subscription/num_undelivered_messages or a custom metric exporting the total number of requests coming to your instances. A bad example would be a metric exporting an average or median latency, since this value can't include a chunk assignable to a single instance, it could be better used with utilization_target instead.", + "type": "number" + }, + "filter": { + "type": "string", + "description": "A filter string, compatible with a Stackdriver Monitoring filter string for TimeSeries.list API call. This filter is used to select a specific TimeSeries for the purpose of autoscaling and to determine whether the metric is exporting per-instance or per-group data. For the filter to be valid for autoscaling purposes, the following rules apply: - You can only use the AND operator for joining selectors. - You can only use direct equality comparison operator (=) without any functions for each selector. - You can specify the metric in both the filter string and in the metric field. However, if specified in both places, the metric must be identical. - The monitored resource type determines what kind of values are expected for the metric. If it is a gce_instance, the autoscaler expects the metric to include a separate TimeSeries for each instance in a group. In such a case, you cannot filter on resource labels. If the resource type is any other value, the autoscaler expects this metric to contain values that apply to the entire autoscaled instance group and resource label filtering can be performed to point autoscaler at the correct TimeSeries to scale upon. This is called a *per-group metric* for the purpose of autoscaling. If not specified, the type defaults to gce_instance. Try to provide a filter that is selective enough to pick just one TimeSeries for the autoscaled group or for each of the instances (if you are using gce_instance resource type). If multiple TimeSeries are returned upon the query execution, the autoscaler will sum their respective values to obtain its scaling value." + }, + "utilizationTarget": { + "type": "number", + "format": "double", + "description": "The target value of the metric that autoscaler maintains. This must be a positive value. A utilization metric scales number of virtual machines handling requests to increase or decrease proportionally to the metric. For example, a good metric to use as a utilization_target is https://www.googleapis.com/compute/v1/instance/network/received_bytes_count. The autoscaler works to keep this value constant for each of the instances." + }, + "metric": { + "type": "string", + "description": "The identifier (type) of the Stackdriver Monitoring metric. The metric cannot have negative values. The metric must have a value type of INT64 or DOUBLE." + }, + "utilizationTargetType": { + "description": "Defines how target utilization value is expressed for a Stackdriver Monitoring metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE.", + "type": "string", + "enum": [ + "DELTA_PER_MINUTE", + "DELTA_PER_SECOND", + "GAUGE" + ], + "enumDescriptions": [ + "Sets the utilization target value for a cumulative or delta metric, expressed as the rate of growth per minute.", + "Sets the utilization target value for a cumulative or delta metric, expressed as the rate of growth per second.", + "Sets the utilization target value for a gauge metric. The autoscaler will collect the average utilization of the virtual machines from the last couple of minutes, and compare the value to the utilization target value to perform autoscaling." + ] + } + }, + "description": "Custom utilization metric policy.", + "id": "AutoscalingPolicyCustomMetricUtilization" + }, + "BackendServiceIAP": { + "properties": { + "oauth2ClientSecret": { + "type": "string", + "description": "OAuth2 client secret to use for the authentication flow. For security reasons, this value cannot be retrieved via the API. Instead, the SHA-256 hash of the value is returned in the oauth2ClientSecretSha256 field. @InputOnly" + }, + "oauth2ClientId": { + "type": "string", + "description": "OAuth2 client ID to use for the authentication flow." + }, + "oauth2ClientSecretSha256": { + "type": "string", + "description": "[Output Only] SHA256 hash value for the field oauth2_client_secret above." + }, + "enabled": { + "description": "Whether the serving infrastructure will authenticate and authorize all incoming requests. If true, the oauth2ClientId and oauth2ClientSecret fields must be non-empty.", + "type": "boolean" + } + }, + "id": "BackendServiceIAP", + "type": "object", + "description": "Identity-Aware Proxy" + }, + "RegionAutoscalerList": { + "properties": { + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "type": "array", + "description": "A list of Autoscaler resources.", + "items": { + "$ref": "Autoscaler" + } + }, + "kind": { + "default": "compute#regionAutoscalerList", + "description": "Type of resource.", + "type": "string" + }, + "warning": { + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + } + }, + "type": "object", + "description": "[Output Only] Informational warning message." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + } + }, + "description": "Contains a list of autoscalers.", + "id": "RegionAutoscalerList", + "type": "object" + }, + "VpnGatewayStatusHighAvailabilityRequirementState": { + "properties": { + "unsatisfiedReason": { + "enum": [ + "INCOMPLETE_TUNNELS_COVERAGE" + ], + "type": "string", + "enumDescriptions": [ + "" + ], + "description": "Indicates the reason why the VPN connection does not meet the high availability redundancy criteria/requirement. Valid values is INCOMPLETE_TUNNELS_COVERAGE." + }, + "state": { + "enumDescriptions": [ + "VPN tunnels are configured with adequate redundancy from Cloud VPN gateway to the peer VPN gateway. For both GCP-to-non-GCP and GCP-to-GCP connections, the adequate redundancy is a pre-requirement for users to get 99.99% availability on GCP side; please note that for any connection, end-to-end 99.99% availability is subject to proper configuration on the peer VPN gateway.", + "VPN tunnels are not configured with adequate redundancy from the Cloud VPN gateway to the peer gateway" + ], + "description": "Indicates the high availability requirement state for the VPN connection. Valid values are CONNECTION_REDUNDANCY_MET, CONNECTION_REDUNDANCY_NOT_MET.", + "enum": [ + "CONNECTION_REDUNDANCY_MET", + "CONNECTION_REDUNDANCY_NOT_MET" + ], + "type": "string" + } + }, + "type": "object", + "description": "Describes the high availability requirement state for the VPN connection between this Cloud VPN gateway and a peer gateway.", + "id": "VpnGatewayStatusHighAvailabilityRequirementState" + }, + "InstanceGroupManagerStatus": { + "type": "object", + "properties": { + "isStable": { + "type": "boolean", + "description": "[Output Only] A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified." + }, + "versionTarget": { + "$ref": "InstanceGroupManagerStatusVersionTarget", + "description": "[Output Only] A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager." + }, + "stateful": { + "description": "[Output Only] Stateful status of the given Instance Group Manager.", + "$ref": "InstanceGroupManagerStatusStateful" + }, + "autoscaler": { + "description": "[Output Only] The URL of the Autoscaler that targets this instance group manager.", + "type": "string" + } + }, + "id": "InstanceGroupManagerStatus" + }, + "UrlMapsValidateResponse": { + "type": "object", + "id": "UrlMapsValidateResponse", + "properties": { + "result": { + "$ref": "UrlMapValidationResult" + } + } + }, + "RegionInstanceGroupManagersCreateInstancesRequest": { + "properties": { + "instances": { + "type": "array", + "description": "[Required] List of specifications of per-instance configs.", + "items": { + "$ref": "PerInstanceConfig" + } + } + }, + "type": "object", + "description": "RegionInstanceGroupManagers.createInstances", + "id": "RegionInstanceGroupManagersCreateInstancesRequest" + }, + "PacketMirroringsScopedList": { + "properties": { + "packetMirrorings": { + "description": "A list of packetMirrorings contained in this scope.", + "items": { + "$ref": "PacketMirroring" + }, + "type": "array" + }, + "warning": { + "type": "object", + "description": "Informational warning which replaces the list of packetMirrorings when the list is empty.", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + } + } + } + }, + "type": "object", + "id": "PacketMirroringsScopedList" + }, + "UrlMapTest": { + "description": "Message for the expected URL mappings.", + "type": "object", + "properties": { + "service": { + "type": "string", + "description": "Expected BackendService or BackendBucket resource the given URL should be mapped to. service cannot be set if expectedRedirectResponseCode is set." + }, + "description": { + "type": "string", + "description": "Description of this test case." + }, + "host": { + "description": "Host portion of the URL. If headers contains a host header, then host must also match the header value.", + "type": "string" + }, + "expectedOutputUrl": { + "description": "The expected output URL evaluated by load balancer containing the scheme, host, path and query parameters. For rules that forward requests to backends, the test passes only when expectedOutputUrl matches the request forwarded by load balancer to backends. For rules with urlRewrite, the test verifies that the forwarded request matches hostRewrite and pathPrefixRewrite in the urlRewrite action. When service is specified, expectedOutputUrl`s scheme is ignored. For rules with urlRedirect, the test passes only if expectedOutputUrl matches the URL in the load balancer's redirect response. If urlRedirect specifies https_redirect, the test passes only if the scheme in expectedOutputUrl is also set to https. If urlRedirect specifies strip_query, the test passes only if expectedOutputUrl does not contain any query parameters. expectedOutputUrl is optional when service is specified.", + "type": "string" + }, + "path": { + "type": "string", + "description": "Path portion of the URL." + }, + "headers": { + "type": "array", + "items": { + "$ref": "UrlMapTestHeader" + }, + "description": "HTTP headers for this request. If headers contains a host header, then host must also match the header value." + }, + "expectedRedirectResponseCode": { + "type": "integer", + "format": "int32", + "description": "For rules with urlRedirect, the test passes only if expectedRedirectResponseCode matches the HTTP status code in load balancer's redirect response. expectedRedirectResponseCode cannot be set when service is set." + } + }, + "id": "UrlMapTest" + }, + "Reservation": { + "description": "Represents a reservation resource. A reservation ensures that capacity is held in a specific zone even if the reserved VMs are not running. For more information, read Reserving zonal resources.", + "type": "object", + "id": "Reservation", + "properties": { + "commitment": { + "type": "string", + "description": "[Output Only] Full or partial URL to a parent commitment. This field displays for reservations that are tied to a commitment." + }, + "zone": { + "type": "string", + "description": "Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment." + }, + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "status": { + "enum": [ + "CREATING", + "DELETING", + "INVALID", + "READY", + "UPDATING" + ], + "type": "string", + "description": "[Output Only] The status of the reservation.", + "enumDescriptions": [ + "Resources are being allocated for the reservation.", + "Reservation is currently being deleted.", + "", + "Reservation has allocated all its resources.", + "Reservation is currently being resized." + ] + }, + "name": { + "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "specificReservation": { + "description": "Reservation for instances with specific machine shapes.", + "$ref": "AllocationSpecificSKUReservation" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "specificReservationRequired": { + "type": "boolean", + "description": "Indicates whether the reservation can be consumed by VMs with affinity for \"any\" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation." + }, + "id": { + "type": "string", + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#reservations for reservations.", + "default": "compute#reservation", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "satisfiesPzs": { + "description": "[Output Only] Reserved for future use.", + "type": "boolean" + } + } + }, + "PathMatcher": { + "description": "A matcher for the path portion of the URL. The BackendService from the longest-matched rule will serve the URL. If no rule was matched, the default service will be used.", + "id": "PathMatcher", + "properties": { + "pathRules": { + "type": "array", + "description": "The list of path rules. Use this list instead of routeRules when routing based on simple path matching is all that's required. The order by which path rules are specified does not matter. Matches are always done on the longest-path-first basis. For example: a pathRule with a path /a/b/c/* will match before /a/b/* irrespective of the order in which those paths appear in this list. Within a given pathMatcher, only one of pathRules or routeRules must be set.", + "items": { + "$ref": "PathRule" + } + }, + "headerAction": { + "$ref": "HttpHeaderAction", + "description": "Specifies changes to request and response headers that need to take effect for the selected backendService. HeaderAction specified here are applied after the matching HttpRouteRule HeaderAction and before the HeaderAction in the UrlMap Note that headerAction is not supported for Loadbalancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true." + }, + "defaultRouteAction": { + "description": "defaultRouteAction takes effect when none of the pathRules or routeRules match. The load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices. Only one of defaultRouteAction or defaultUrlRedirect must be set. UrlMaps for external HTTP(S) load balancers support only the urlRewrite action within a pathMatcher's defaultRouteAction.", + "$ref": "HttpRouteAction" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "defaultUrlRedirect": { + "description": "When none of the specified pathRules or routeRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Not supported when the URL map is bound to target gRPC proxy.", + "$ref": "HttpRedirectAction" + }, + "routeRules": { + "type": "array", + "items": { + "$ref": "HttpRouteRule" + }, + "description": "The list of HTTP route rules. Use this list instead of pathRules when advanced route matching and routing actions are desired. routeRules are evaluated in order of priority, from the lowest to highest number. Within a given pathMatcher, you can set only one of pathRules or routeRules." + }, + "name": { + "type": "string", + "description": "The name to which this PathMatcher is referred by the HostRule." + }, + "defaultService": { + "description": "The full or partial URL to the BackendService resource. This will be used if none of the pathRules or routeRules defined by this PathMatcher are matched. For example, the following are all valid URLs to a BackendService resource: - https://www.googleapis.com/compute/v1/projects/project /global/backendServices/backendService - compute/v1/projects/project/global/backendServices/backendService - global/backendServices/backendService If defaultRouteAction is additionally specified, advanced routing actions like URL Rewrites, etc. take effect prior to sending the request to the backend. However, if defaultService is specified, defaultRouteAction cannot contain any weightedBackendServices. Conversely, if defaultRouteAction specifies any weightedBackendServices, defaultService must not be specified. Only one of defaultService, defaultUrlRedirect or defaultRouteAction.weightedBackendService must be set. Authorization requires one or more of the following Google IAM permissions on the specified resource default_service: - compute.backendBuckets.use - compute.backendServices.use ", + "type": "string" + } + }, + "type": "object" + }, + "NetworkEndpointGroupAppEngine": { + "type": "object", + "properties": { + "urlMask": { + "description": "A template to parse service and version fields from a request URL. URL mask allows for routing to multiple App Engine services without having to create multiple Network Endpoint Groups and backend services. For example, the request URLs \"foo1-dot-appname.appspot.com/v1\" and \"foo1-dot-appname.appspot.com/v2\" can be backed by the same Serverless NEG with URL mask \"-dot-appname.appspot.com/\". The URL mask will parse them to { service = \"foo1\", version = \"v1\" } and { service = \"foo1\", version = \"v2\" } respectively.", + "type": "string" + }, + "version": { + "type": "string", + "description": "Optional serving version. The version name is case-sensitive and must be 1-100 characters long. Example value: \"v1\", \"v2\"." + }, + "service": { + "type": "string", + "description": "Optional serving service. The service name is case-sensitive and must be 1-63 characters long. Example value: \"default\", \"my-service\"." + } + }, + "description": "Configuration for an App Engine network endpoint group (NEG). The service is optional, may be provided explicitly or in the URL mask. The version is optional and can only be provided explicitly or in the URL mask when service is present. Note: App Engine service must be in the same project and located in the same region as the Serverless NEG.", + "id": "NetworkEndpointGroupAppEngine" + }, + "InterconnectAttachmentPrivateInfo": { + "type": "object", + "properties": { + "tag8021q": { + "type": "integer", + "format": "uint32", + "description": "[Output Only] 802.1q encapsulation tag to be used for traffic between Google and the customer, going to and from this network and region." + } + }, + "id": "InterconnectAttachmentPrivateInfo", + "description": "Information for an interconnect attachment when this belongs to an interconnect of type DEDICATED." + }, + "AddressList": { + "description": "Contains a list of addresses.", + "id": "AddressList", + "type": "object", + "properties": { + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "description": "A list of Address resources.", + "type": "array", + "items": { + "$ref": "Address" + } + }, + "warning": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + } + }, + "description": "[Output Only] Informational warning message." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "kind": { + "type": "string", + "default": "compute#addressList", + "description": "[Output Only] Type of resource. Always compute#addressList for lists of addresses." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + } + } + }, + "Autoscaler": { + "description": "Represents an Autoscaler resource. Google Compute Engine has two Autoscaler resources: * [Zonal](/compute/docs/reference/rest/v1/autoscalers) * [Regional](/compute/docs/reference/rest/v1/regionAutoscalers) Use autoscalers to automatically add or delete instances from a managed instance group according to your defined autoscaling policy. For more information, read Autoscaling Groups of Instances. For zonal managed instance groups resource, use the autoscaler resource. For regional managed instance groups, use the regionAutoscalers resource.", + "type": "object", + "id": "Autoscaler", + "properties": { + "id": { + "type": "string", + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "zone": { + "description": "[Output Only] URL of the zone where the instance group resides (for autoscalers living in zonal scope).", + "type": "string" + }, + "target": { + "description": "URL of the managed instance group that this autoscaler will scale. This field is required when creating an autoscaler.", + "type": "string" + }, + "kind": { + "default": "compute#autoscaler", + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#autoscaler for autoscalers." + }, + "name": { + "annotations": { + "required": [ + "compute.autoscalers.insert" + ] + }, + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "status": { + "enum": [ + "ACTIVE", + "DELETING", + "ERROR", + "PENDING" + ], + "description": "[Output Only] The status of the autoscaler configuration. Current set of possible values: - PENDING: Autoscaler backend hasn't read new/updated configuration. - DELETING: Configuration is being deleted. - ACTIVE: Configuration is acknowledged to be effective. Some warnings might be present in the statusDetails field. - ERROR: Configuration has errors. Actionable for users. Details are present in the statusDetails field. New values might be added in the future.", + "type": "string", + "enumDescriptions": [ + "Configuration is acknowledged to be effective", + "Configuration is being deleted", + "Configuration has errors. Actionable for users.", + "Autoscaler backend hasn't read new/updated configuration" + ] + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the instance group resides (for autoscalers living in regional scope)." + }, + "recommendedSize": { + "description": "[Output Only] Target recommended MIG size (number of instances) computed by autoscaler. Autoscaler calculates the recommended MIG size even when the autoscaling policy mode is different from ON. This field is empty when autoscaler is not connected to an existing managed instance group or autoscaler did not generate its prediction.", + "type": "integer", + "format": "int32" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "autoscalingPolicy": { + "description": "The configuration parameters for the autoscaling algorithm. You can define one or more signals for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization. If none of these are specified, the default will be to autoscale based on cpuUtilization to 0.6 or 60%.", + "$ref": "AutoscalingPolicy" + }, + "statusDetails": { + "items": { + "$ref": "AutoscalerStatusDetails" + }, + "description": "[Output Only] Human-readable details about the current state of the autoscaler. Read the documentation for Commonly returned status messages for examples of status messages you might encounter.", + "type": "array" + }, + "scalingScheduleStatus": { + "additionalProperties": { + "$ref": "ScalingScheduleStatus" + }, + "type": "object", + "description": "[Output Only] Status information of existing scaling schedules." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + } + } + }, + "TargetHttpsProxy": { + "type": "object", + "description": "Represents a Target HTTPS Proxy resource. Google Compute Engine has two Target HTTPS Proxy resources: * [Global](/compute/docs/reference/rest/v1/targetHttpsProxies) * [Regional](/compute/docs/reference/rest/v1/regionTargetHttpsProxies) A target HTTPS proxy is a component of GCP HTTPS load balancers. * targetHttpsProxies are used by external HTTPS load balancers. * regionTargetHttpsProxies are used by internal HTTPS load balancers. Forwarding rules reference a target HTTPS proxy, and the target proxy then references a URL map. For more information, read Using Target Proxies and Forwarding rule concepts.", + "id": "TargetHttpsProxy", + "properties": { + "sslCertificates": { + "items": { + "type": "string" + }, + "type": "array", + "description": "URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer. At least one SSL certificate must be specified. Currently, you may specify up to 15 SSL certificates. sslCertificates do not apply when the load balancing scheme is set to INTERNAL_SELF_MANAGED." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#targetHttpsProxy for target HTTPS proxies.", + "default": "compute#targetHttpsProxy" + }, + "sslPolicy": { + "description": "URL of SslPolicy resource that will be associated with the TargetHttpsProxy resource. If not set, the TargetHttpsProxy resource has no SSL policy configured.", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "authorizationPolicy": { + "description": "Optional. A URL referring to a networksecurity.AuthorizationPolicy resource that describes how the proxy should authorize inbound traffic. If left blank, access will not be restricted by an authorization policy. Refer to the AuthorizationPolicy resource for additional details. authorizationPolicy only applies to a global TargetHttpsProxy attached to globalForwardingRules with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. Note: This field currently has no impact.", + "type": "string" + }, + "quicOverride": { + "description": "Specifies the QUIC override policy for this TargetHttpsProxy resource. This setting determines whether the load balancer attempts to negotiate QUIC with clients. You can specify NONE, ENABLE, or DISABLE. - When quic-override is set to NONE, Google manages whether QUIC is used. - When quic-override is set to ENABLE, the load balancer uses QUIC when possible. - When quic-override is set to DISABLE, the load balancer doesn't use QUIC. - If the quic-override flag is not specified, NONE is implied. ", + "type": "string", + "enum": [ + "DISABLE", + "ENABLE", + "NONE" + ], + "enumDescriptions": [ + "The load balancer will not attempt to negotiate QUIC with clients.", + "The load balancer will attempt to negotiate QUIC with clients.", + "No overrides to the default QUIC policy. This option is implicit if no QUIC override has been specified in the request." + ] + }, + "name": { + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "serverTlsPolicy": { + "type": "string", + "description": "Optional. A URL referring to a networksecurity.ServerTlsPolicy resource that describes how the proxy should authenticate inbound traffic. serverTlsPolicy only applies to a global TargetHttpsProxy attached to globalForwardingRules with the loadBalancingScheme set to INTERNAL_SELF_MANAGED. If left blank, communications are not encrypted. Note: This field currently has no impact." + }, + "fingerprint": { + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a TargetHttpsProxy. An up-to-date fingerprint must be provided in order to patch the TargetHttpsProxy; otherwise, the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve the TargetHttpsProxy.", + "format": "byte", + "type": "string" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "proxyBind": { + "description": "This field only applies when the forwarding rule that references this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED. When this field is set to true, Envoy proxies set up inbound traffic interception and bind to the IP address and port specified in the forwarding rule. This is generally useful when using Traffic Director to configure Envoy as a gateway or middle proxy (in other words, not a sidecar proxy). The Envoy proxy listens for inbound requests and handles requests when it receives them. The default is false.", + "type": "boolean" + }, + "urlMap": { + "type": "string", + "description": "A fully-qualified or valid partial URL to the UrlMap resource that defines the mapping from URL to the BackendService. For example, the following are all valid URLs for specifying a URL map: - https://www.googleapis.compute/v1/projects/project/global/urlMaps/ url-map - projects/project/global/urlMaps/url-map - global/urlMaps/url-map " + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the regional TargetHttpsProxy resides. This field is not applicable to global TargetHttpsProxies." + } + } + }, + "InstanceGroup": { + "id": "InstanceGroup", + "properties": { + "selfLink": { + "description": "[Output Only] The URL for this instance group. The server generates this URL.", + "type": "string" + }, + "network": { + "type": "string", + "description": "[Output Only] The URL of the network to which all instances in the instance group belong. If your instance has multiple network interfaces, then the network and subnetwork fields only refer to the network and subnet used by your primary interface (nic0)." + }, + "region": { + "type": "string", + "description": "[Output Only] The URL of the region where the instance group is located (for regional resources)." + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceGroup for instance groups.", + "default": "compute#instanceGroup" + }, + "name": { + "description": "The name of the instance group. The name must be 1-63 characters long, and comply with RFC1035.", + "annotations": { + "required": [ + "compute.instanceGroups.insert" + ] + }, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "zone": { + "type": "string", + "description": "[Output Only] The URL of the zone where the instance group is located (for zonal resources)." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] The creation timestamp for this instance group in RFC3339 text format." + }, + "size": { + "type": "integer", + "format": "int32", + "description": "[Output Only] The total number of instances in the instance group." + }, + "subnetwork": { + "description": "[Output Only] The URL of the subnetwork to which all instances in the instance group belong. If your instance has multiple network interfaces, then the network and subnetwork fields only refer to the network and subnet used by your primary interface (nic0).", + "type": "string" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] A unique identifier for this instance group, generated by the server.", + "format": "uint64" + }, + "namedPorts": { + "items": { + "$ref": "NamedPort" + }, + "description": " Assigns a name to a port number. For example: {name: \"http\", port: 80} This allows the system to reference ports by the assigned name instead of a port number. Named ports can also contain multiple ports. For example: [{name: \"http\", port: 80},{name: \"http\", port: 8080}] Named ports apply to all instances in this instance group. ", + "type": "array" + }, + "fingerprint": { + "type": "string", + "description": "[Output Only] The fingerprint of the named ports. The system uses this fingerprint to detect conflicts when multiple users change the named ports concurrently.", + "format": "byte" + } + }, + "type": "object", + "description": "Represents an Instance Group resource. Instance Groups can be used to configure a target for load balancing. Instance groups can either be managed or unmanaged. To create managed instance groups, use the instanceGroupManager or regionInstanceGroupManager resource instead. Use zonal unmanaged instance groups if you need to apply load balancing to groups of heterogeneous instances or if you need to manage the instances yourself. You cannot create regional unmanaged instance groups. For more information, read Instance groups." + }, + "WafExpressionSet": { + "id": "WafExpressionSet", + "properties": { + "expressions": { + "type": "array", + "description": "List of available expressions.", + "items": { + "$ref": "WafExpressionSetExpression" + } + }, + "aliases": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of alternate IDs. The format should be: - E.g. XSS-stable Generic suffix like \"stable\" is particularly useful if a policy likes to avail newer set of expressions without having to change the policy. A given alias name can't be used for more than one entity set." + }, + "id": { + "description": "Google specified expression set ID. The format should be: - E.g. XSS-20170329 required", + "type": "string" + } + }, + "type": "object" + }, + "NetworkList": { + "properties": { + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "type": "array", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + } + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "kind": { + "default": "compute#networkList", + "type": "string", + "description": "[Output Only] Type of resource. Always compute#networkList for lists of networks." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "items": { + "items": { + "$ref": "Network" + }, + "type": "array", + "description": "A list of Network resources." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "description": "Contains a list of networks.", + "id": "NetworkList", + "type": "object" + }, + "InstancesSetMinCpuPlatformRequest": { + "type": "object", + "id": "InstancesSetMinCpuPlatformRequest", + "properties": { + "minCpuPlatform": { + "type": "string", + "description": "Minimum cpu/platform this instance should be started at." + } + } + }, + "LogConfigCounterOptions": { + "description": "This is deprecated and has no effect. Do not use.", + "properties": { + "customFields": { + "items": { + "$ref": "LogConfigCounterOptionsCustomField" + }, + "type": "array", + "description": "This is deprecated and has no effect. Do not use." + }, + "field": { + "type": "string", + "description": "This is deprecated and has no effect. Do not use." + }, + "metric": { + "type": "string", + "description": "This is deprecated and has no effect. Do not use." + } + }, + "id": "LogConfigCounterOptions", + "type": "object" + }, + "ConnectionDraining": { + "description": "Message containing connection draining configuration.", + "type": "object", + "id": "ConnectionDraining", + "properties": { + "drainingTimeoutSec": { + "description": "Configures a duration timeout for existing requests on a removed backend instance. For supported load balancers and protocols, as described in Enabling connection draining.", + "format": "int32", + "type": "integer" + } + } + }, + "PublicAdvertisedPrefixPublicDelegatedPrefix": { + "type": "object", + "properties": { + "ipRange": { + "description": "The IP address range of the public delegated prefix", + "type": "string" + }, + "name": { + "type": "string", + "description": "The name of the public delegated prefix" + }, + "project": { + "type": "string", + "description": "The project number of the public delegated prefix" + }, + "region": { + "type": "string", + "description": "The region of the public delegated prefix if it is regional. If absent, the prefix is global." + }, + "status": { + "type": "string", + "description": "The status of the public delegated prefix. Possible values are: INITIALIZING: The public delegated prefix is being initialized and addresses cannot be created yet. ANNOUNCED: The public delegated prefix is active." + } + }, + "id": "PublicAdvertisedPrefixPublicDelegatedPrefix", + "description": "Represents a CIDR range which can be used to assign addresses." + }, + "InstanceTemplate": { + "properties": { + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "sourceInstance": { + "description": "The source instance used to create the template. You can provide this as a partial or full URL to the resource. For example, the following are valid values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /instances/instance - projects/project/zones/zone/instances/instance ", + "type": "string" + }, + "id": { + "description": "[Output Only] A unique identifier for this instance template. The server defines this identifier.", + "type": "string", + "format": "uint64" + }, + "properties": { + "description": "The instance properties for this instance template.", + "$ref": "InstanceProperties" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] The creation timestamp for this instance template in RFC3339 text format." + }, + "name": { + "type": "string", + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.instanceTemplates.insert" + ] + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this instance template. The server defines this URL." + }, + "kind": { + "default": "compute#instanceTemplate", + "description": "[Output Only] The resource type, which is always compute#instanceTemplate for instance templates.", + "type": "string" + }, + "sourceInstanceParams": { + "description": "The source instance params to use to create this instance template.", + "$ref": "SourceInstanceParams" + } + }, + "type": "object", + "id": "InstanceTemplate", + "description": "Represents an Instance Template resource. You can use instance templates to create VM instances and managed instance groups. For more information, read Instance Templates." + }, + "HealthChecksScopedList": { + "type": "object", + "properties": { + "warning": { + "description": "Informational warning which replaces the list of backend services when the list is empty.", + "type": "object", + "properties": { + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + }, + "healthChecks": { + "type": "array", + "description": "A list of HealthChecks contained in this scope.", + "items": { + "$ref": "HealthCheck" + } + } + }, + "id": "HealthChecksScopedList" + }, + "PacketMirroringAggregatedList": { + "properties": { + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "type": "string", + "default": "compute#packetMirroringAggregatedList", + "description": "Type of resource." + }, + "unreachables": { + "items": { + "type": "string" + }, + "type": "array", + "description": "[Output Only] Unreachable resources." + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + } + }, + "items": { + "additionalProperties": { + "description": "Name of the scope containing this set of packetMirrorings.", + "$ref": "PacketMirroringsScopedList" + }, + "description": "A list of PacketMirroring resources.", + "type": "object" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + }, + "id": "PacketMirroringAggregatedList", + "type": "object", + "description": "Contains a list of packetMirrorings." + }, + "WafExpressionSetExpression": { + "type": "object", + "id": "WafExpressionSetExpression", + "properties": { + "id": { + "type": "string", + "description": "Expression ID should uniquely identify the origin of the expression. E.g. owasp-crs-v020901-id973337 identifies Owasp core rule set version 2.9.1 rule id 973337. The ID could be used to determine the individual attack definition that has been detected. It could also be used to exclude it from the policy in case of false positive. required" + } + } + }, + "ImageFamilyView": { + "id": "ImageFamilyView", + "properties": { + "image": { + "description": "The latest image that is part of the specified image family in the requested location, and that is not deprecated.", + "$ref": "Image" + } + }, + "type": "object" + }, + "TargetTcpProxiesSetProxyHeaderRequest": { + "id": "TargetTcpProxiesSetProxyHeaderRequest", + "type": "object", + "properties": { + "proxyHeader": { + "enumDescriptions": [ + "", + "" + ], + "enum": [ + "NONE", + "PROXY_V1" + ], + "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", + "type": "string" + } + } + }, + "BackendServiceAggregatedList": { + "type": "object", + "properties": { + "unreachables": { + "type": "array", + "items": { + "type": "string" + }, + "description": "[Output Only] Unreachable resources." + }, + "kind": { + "default": "compute#backendServiceAggregatedList", + "description": "Type of resource.", + "type": "string" + }, + "items": { + "type": "object", + "description": "A list of BackendServicesScopedList resources.", + "additionalProperties": { + "description": "Name of the scope containing this set of BackendServices.", + "$ref": "BackendServicesScopedList" + } + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "warning": { + "type": "object", + "properties": { + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + } + }, + "description": "[Output Only] Informational warning message." + } + }, + "description": "Contains a list of BackendServicesScopedList.", + "id": "BackendServiceAggregatedList" + }, + "GlobalSetLabelsRequest": { + "id": "GlobalSetLabelsRequest", + "properties": { + "labels": { + "additionalProperties": { + "type": "string" + }, + "type": "object", + "description": "A list of labels to apply for this resource. Each label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\")." + }, + "labelFingerprint": { + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash when updating or changing labels, otherwise the request will fail with error 412 conditionNotMet. Make a get() request to the resource to get the latest fingerprint.", + "type": "string", + "format": "byte" + } + }, + "type": "object" + }, + "UsageExportLocation": { + "type": "object", + "id": "UsageExportLocation", + "properties": { + "reportNamePrefix": { + "description": "An optional prefix for the name of the usage report object stored in bucketName. If not supplied, defaults to usage_gce. The report is stored as a CSV file named report_name_prefix_gce_YYYYMMDD.csv where YYYYMMDD is the day of the usage according to Pacific Time. If you supply a prefix, it should conform to Cloud Storage object naming conventions.", + "type": "string" + }, + "bucketName": { + "type": "string", + "description": "The name of an existing bucket in Cloud Storage where the usage report object is stored. The Google Service Account is granted write access to this bucket. This can either be the bucket name by itself, such as example-bucket, or the bucket name with gs:// or https://storage.googleapis.com/ in front of it, such as gs://example-bucket." + } + }, + "description": "The location in Cloud Storage and naming method of the daily usage report. Contains bucket_name and report_name prefix." + }, + "AliasIpRange": { + "type": "object", + "id": "AliasIpRange", + "properties": { + "ipCidrRange": { + "type": "string", + "description": "The IP alias ranges to allocate for this interface. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (such as 10.2.3.4), a netmask (such as /24) or a CIDR-formatted string (such as 10.1.2.0/24)." + }, + "subnetworkRangeName": { + "description": "The name of a subnetwork secondary IP range from which to allocate an IP alias range. If not specified, the primary range of the subnetwork is used.", + "type": "string" + } + }, + "description": "An alias IP range attached to an instance's network interface." + }, + "CommitmentList": { + "type": "object", + "properties": { + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "type": "array", + "description": "A list of Commitment resources.", + "items": { + "$ref": "Commitment" + } + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#commitmentList for lists of commitments.", + "default": "compute#commitmentList", + "type": "string" + }, + "warning": { + "type": "object", + "properties": { + "data": { + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + }, + "description": "[Output Only] Informational warning message." + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + }, + "id": "CommitmentList", + "description": "Contains a list of Commitment resources." + }, + "FirewallList": { + "type": "object", + "properties": { + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "type": "object" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#firewallList for lists of firewalls.", + "type": "string", + "default": "compute#firewallList" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "items": { + "items": { + "$ref": "Firewall" + }, + "type": "array", + "description": "A list of Firewall resources." + } + }, + "id": "FirewallList", + "description": "Contains a list of firewalls." + }, + "ManagedInstance": { + "properties": { + "id": { + "format": "uint64", + "description": "[Output only] The unique identifier for this resource. This field is empty when instance does not exist.", + "type": "string" + }, + "instance": { + "type": "string", + "description": "[Output Only] The URL of the instance. The URL can exist even if the instance has not yet been created." + }, + "preservedStateFromPolicy": { + "description": "[Output Only] Preserved state generated based on stateful policy for this instance.", + "$ref": "PreservedState" + }, + "lastAttempt": { + "description": "[Output Only] Information about the last attempt to create or delete the instance.", + "$ref": "ManagedInstanceLastAttempt" + }, + "version": { + "description": "[Output Only] Intended version of this instance.", + "$ref": "ManagedInstanceVersion" + }, + "preservedStateFromConfig": { + "$ref": "PreservedState", + "description": "[Output Only] Preserved state applied from per-instance config for this instance." + }, + "instanceStatus": { + "enumDescriptions": [ + "The Nanny is halted and we are performing tear down tasks like network deprogramming, releasing quota, IP, tearing down disks etc.", + "Resources are being allocated for the instance.", + "The instance is in repair.", + "The instance is running.", + "All required resources have been allocated and the instance is being started.", + "The instance has stopped successfully.", + "The instance is currently stopping (either being deleted or killed).", + "The instance has suspended.", + "The instance is suspending.", + "The instance has stopped (either by explicit action or underlying failure)." + ], + "type": "string", + "description": "[Output Only] The status of the instance. This field is empty when the instance does not exist.", + "enum": [ + "DEPROVISIONING", + "PROVISIONING", + "REPAIRING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ] + }, + "instanceHealth": { + "type": "array", + "description": "[Output Only] Health state of the instance per health-check.", + "items": { + "$ref": "ManagedInstanceInstanceHealth" + } + }, + "currentAction": { + "enum": [ + "ABANDONING", + "CREATING", + "CREATING_WITHOUT_RETRIES", + "DELETING", + "NONE", + "RECREATING", + "REFRESHING", + "RESTARTING", + "VERIFYING" + ], + "type": "string", + "enumDescriptions": [ + "The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group.", + "The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful.", + "The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased.", + "The managed instance group is permanently deleting this instance.", + "The managed instance group has not scheduled any actions for this instance.", + "The managed instance group is recreating this instance.", + "The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance.", + "The managed instance group is restarting this instance.", + "The managed instance group is verifying this already created instance. Verification happens every time the instance is (re)created or restarted and consists of: 1. Waiting until health check specified as part of this managed instance group's autohealing policy reports HEALTHY. Note: Applies only if autohealing policy has a health check specified 2. Waiting for addition verification steps performed as post-instance creation (subject to future extensions)." + ], + "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: - NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. - CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. - CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. - RECREATING The managed instance group is recreating this instance. - DELETING The managed instance group is permanently deleting this instance. - ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. - RESTARTING The managed instance group is restarting the instance. - REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance. - VERIFYING The managed instance group has created the instance and it is in the process of being verified. " + } + }, + "description": "A Managed Instance resource.", + "id": "ManagedInstance", + "type": "object" + }, + "PublicDelegatedPrefixAggregatedList": { + "properties": { + "unreachables": { + "items": { + "type": "string" + }, + "description": "[Output Only] Unreachable resources.", + "type": "array" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "warning": { + "type": "object", + "properties": { + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "description": "[Output Only] Informational warning message." + }, + "kind": { + "type": "string", + "default": "compute#publicDelegatedPrefixAggregatedList", + "description": "[Output Only] Type of the resource. Always compute#publicDelegatedPrefixAggregatedList for aggregated lists of public delegated prefixes." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "items": { + "additionalProperties": { + "$ref": "PublicDelegatedPrefixesScopedList", + "description": "[Output Only] Name of the scope containing this set of PublicDelegatedPrefixes." + }, + "description": "A list of PublicDelegatedPrefixesScopedList resources.", + "type": "object" + } + }, + "type": "object", + "id": "PublicDelegatedPrefixAggregatedList" + }, + "Uint128": { + "id": "Uint128", + "type": "object", + "properties": { + "high": { + "format": "uint64", + "type": "string" + }, + "low": { + "format": "uint64", + "type": "string" + } + } + }, + "FileContentBuffer": { + "properties": { + "fileType": { + "enum": [ + "BIN", + "UNDEFINED", + "X509" + ], + "description": "The file type of source file.", + "enumDescriptions": [ + "", + "", + "" + ], + "type": "string" + }, + "content": { + "description": "The raw content in the secure keys file.", + "type": "string", + "format": "byte" + } + }, + "id": "FileContentBuffer", + "type": "object" + }, + "ResourcePolicyWeeklyCycle": { + "type": "object", + "description": "Time window specified for weekly operations.", + "id": "ResourcePolicyWeeklyCycle", + "properties": { + "dayOfWeeks": { + "type": "array", + "description": "Up to 7 intervals/windows, one for each day of the week.", + "items": { + "$ref": "ResourcePolicyWeeklyCycleDayOfWeek" + } + } + } + }, + "ShieldedInstanceIdentity": { + "description": "A Shielded Instance Identity.", + "properties": { + "signingKey": { + "description": "An Attestation Key (AK) made by the RSA 2048 algorithm issued to the Shielded Instance's vTPM.", + "$ref": "ShieldedInstanceIdentityEntry" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#shieldedInstanceIdentity for shielded Instance identity entry.", + "default": "compute#shieldedInstanceIdentity" + }, + "encryptionKey": { + "description": "An Endorsement Key (EK) made by the RSA 2048 algorithm issued to the Shielded Instance's vTPM.", + "$ref": "ShieldedInstanceIdentityEntry" + } + }, + "type": "object", + "id": "ShieldedInstanceIdentity" + }, + "TargetPoolsRemoveInstanceRequest": { + "properties": { + "instances": { + "type": "array", + "items": { + "$ref": "InstanceReference" + }, + "description": "URLs of the instances to be removed from target pool." + } + }, + "id": "TargetPoolsRemoveInstanceRequest", + "type": "object" + }, + "HTTPSHealthCheck": { + "id": "HTTPSHealthCheck", + "properties": { + "response": { + "type": "string", + "description": "The string to match anywhere in the first 1024 bytes of the response body. If left empty (the default value), the status code determines health. The response data can only be ASCII." + }, + "port": { + "description": "The TCP port number for the health check request. The default value is 443. Valid values are 1 through 65535.", + "type": "integer", + "format": "int32" + }, + "proxyHeader": { + "enumDescriptions": [ + "", + "" + ], + "type": "string", + "enum": [ + "NONE", + "PROXY_V1" + ], + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE." + }, + "host": { + "type": "string", + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." + }, + "requestPath": { + "description": "The request path of the HTTPS health check request. The default value is /.", + "type": "string" + }, + "portSpecification": { + "type": "string", + "enum": [ + "USE_FIXED_PORT", + "USE_NAMED_PORT", + "USE_SERVING_PORT" + ], + "enumDescriptions": [ + "The port number in port is used for health checking.", + "The portName is used for health checking.", + "For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking." + ], + "description": "Specifies how port is selected for health checking, can be one of following values: USE_FIXED_PORT: The port number in port is used for health checking. USE_NAMED_PORT: The portName is used for health checking. USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTPS health check follows behavior specified in port and portName fields." + }, + "portName": { + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence.", + "type": "string" + } + }, + "type": "object" + }, + "SourceInstanceParams": { + "type": "object", + "properties": { + "diskConfigs": { + "description": "Attached disks configuration. If not provided, defaults are applied: For boot disk and any other R/W disks, new custom images will be created from each disk. For read-only disks, they will be attached in read-only mode. Local SSD disks will be created as blank volumes.", + "items": { + "$ref": "DiskInstantiationConfig" + }, + "type": "array" + } + }, + "description": "A specification of the parameters to use when creating the instance template from a source instance.", + "id": "SourceInstanceParams" + }, + "InterconnectAttachmentList": { + "id": "InterconnectAttachmentList", + "properties": { + "warning": { + "type": "object", + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + } + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string" + } + }, + "description": "[Output Only] Informational warning message." + }, + "items": { + "type": "array", + "description": "A list of InterconnectAttachment resources.", + "items": { + "$ref": "InterconnectAttachment" + } + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#interconnectAttachmentList for lists of interconnect attachments.", + "default": "compute#interconnectAttachmentList", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + } + }, + "description": "Response to the list request, and contains a list of interconnect attachments.", + "type": "object" + }, + "AutoscalingPolicyCpuUtilization": { + "type": "object", + "id": "AutoscalingPolicyCpuUtilization", + "properties": { + "predictiveMethod": { + "enumDescriptions": [ + "No predictive method is used. The autoscaler scales the group to meet current demand based on real-time metrics", + "Predictive autoscaling improves availability by monitoring daily and weekly load patterns and scaling out ahead of anticipated demand." + ], + "type": "string", + "enum": [ + "NONE", + "OPTIMIZE_AVAILABILITY" + ], + "description": "Indicates whether predictive autoscaling based on CPU metric is enabled. Valid values are: * NONE (default). No predictive method is used. The autoscaler scales the group to meet current demand based on real-time metrics. * OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by monitoring daily and weekly load patterns and scaling out ahead of anticipated demand." + }, + "utilizationTarget": { + "type": "number", + "format": "double", + "description": "The target CPU utilization that the autoscaler maintains. Must be a float value in the range (0, 1]. If not specified, the default is 0.6. If the CPU level is below the target utilization, the autoscaler scales in the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization. If the average CPU is above the target utilization, the autoscaler scales out until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization." + } + }, + "description": "CPU utilization policy." + }, + "TargetHttpsProxiesSetSslCertificatesRequest": { + "id": "TargetHttpsProxiesSetSslCertificatesRequest", + "type": "object", + "properties": { + "sslCertificates": { + "description": "New set of SslCertificate resources to associate with this TargetHttpsProxy resource. At least one SSL certificate must be specified. Currently, you may specify up to 15 SSL certificates.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "InstancesScopedList": { + "id": "InstancesScopedList", + "properties": { + "warning": { + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + } + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + } + }, + "type": "object", + "description": "[Output Only] Informational warning which replaces the list of instances when the list is empty." + }, + "instances": { + "description": "[Output Only] A list of instances contained in this scope.", + "type": "array", + "items": { + "$ref": "Instance" + } + } + }, + "type": "object" + }, + "HttpFaultDelay": { + "id": "HttpFaultDelay", + "description": "Specifies the delay introduced by Loadbalancer before forwarding the request to the backend service as part of fault injection.", + "type": "object", + "properties": { + "fixedDelay": { + "description": "Specifies the value of the fixed delay interval.", + "$ref": "Duration" + }, + "percentage": { + "format": "double", + "type": "number", + "description": "The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection. The value must be between 0.0 and 100.0 inclusive." + } + } + }, + "InstanceWithNamedPorts": { + "type": "object", + "id": "InstanceWithNamedPorts", + "properties": { + "namedPorts": { + "type": "array", + "description": "[Output Only] The named ports that belong to this instance group.", + "items": { + "$ref": "NamedPort" + } + }, + "instance": { + "type": "string", + "description": "[Output Only] The URL of the instance." + }, + "status": { + "enum": [ + "DEPROVISIONING", + "PROVISIONING", + "REPAIRING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "type": "string", + "description": "[Output Only] The status of the instance.", + "enumDescriptions": [ + "The Nanny is halted and we are performing tear down tasks like network deprogramming, releasing quota, IP, tearing down disks etc.", + "Resources are being allocated for the instance.", + "The instance is in repair.", + "The instance is running.", + "All required resources have been allocated and the instance is being started.", + "The instance has stopped successfully.", + "The instance is currently stopping (either being deleted or killed).", + "The instance has suspended.", + "The instance is suspending.", + "The instance has stopped (either by explicit action or underlying failure)." + ] + } + } + }, + "ManagedInstanceInstanceHealth": { + "type": "object", + "id": "ManagedInstanceInstanceHealth", + "properties": { + "detailedHealthState": { + "enumDescriptions": [ + "The instance is being drained. The existing connections to the instance have time to complete, but the new ones are being refused.", + "The instance is reachable i.e. a connection to the application health checking endpoint can be established, and conforms to the requirements defined by the health check.", + "The instance is unreachable i.e. a connection to the application health checking endpoint cannot be established, or the server does not respond within the specified timeout.", + "The instance is reachable, but does not conform to the requirements defined by the health check.", + "The health checking system is aware of the instance but its health is not known at the moment." + ], + "enum": [ + "DRAINING", + "HEALTHY", + "TIMEOUT", + "UNHEALTHY", + "UNKNOWN" + ], + "type": "string", + "description": "[Output Only] The current detailed instance health state." + }, + "healthCheck": { + "type": "string", + "description": "[Output Only] The URL for the health check that verifies whether the instance is healthy." + } + } + }, + "TargetHttpProxyList": { + "id": "TargetHttpProxyList", + "properties": { + "kind": { + "description": "Type of resource. Always compute#targetHttpProxyList for lists of target HTTP proxies.", + "default": "compute#targetHttpProxyList", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "warning": { + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + }, + "data": { + "type": "array", + "items": { + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "items": { + "items": { + "$ref": "TargetHttpProxy" + }, + "description": "A list of TargetHttpProxy resources.", + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + }, + "type": "object", + "description": "A list of TargetHttpProxy resources." + }, + "NetworksUpdatePeeringRequest": { + "properties": { + "networkPeering": { + "$ref": "NetworkPeering" + } + }, + "id": "NetworksUpdatePeeringRequest", + "type": "object" + }, + "InstanceGroupManagerList": { + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "type": "object", + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + } + } + }, + "items": { + "description": "A list of InstanceGroupManager resources.", + "type": "array", + "items": { + "$ref": "InstanceGroupManager" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups.", + "default": "compute#instanceGroupManagerList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + } + }, + "description": "[Output Only] A list of managed instance groups.", + "id": "InstanceGroupManagerList", + "type": "object" + }, + "InstanceGroupsListInstances": { + "properties": { + "kind": { + "type": "string", + "default": "compute#instanceGroupsListInstances", + "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for the list of instances in the specified instance group." + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "items": { + "type": "array", + "items": { + "$ref": "InstanceWithNamedPorts" + }, + "description": "A list of InstanceWithNamedPorts resources." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "type": "object", + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + }, + "type": "object" + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ] + } + } + } + }, + "id": "InstanceGroupsListInstances", + "type": "object" + }, + "HttpHealthCheckList": { + "id": "HttpHealthCheckList", + "description": "Contains a list of HttpHealthCheck resources.", + "type": "object", + "properties": { + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "warning": { + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "items": { + "type": "object", + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array" + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "items": { + "items": { + "$ref": "HttpHealthCheck" + }, + "description": "A list of HttpHealthCheck resources.", + "type": "array" + }, + "kind": { + "description": "Type of resource.", + "default": "compute#httpHealthCheckList", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + } + } + }, + "NetworkEndpointGroupsListEndpointsRequest": { + "properties": { + "healthStatus": { + "enum": [ + "SHOW", + "SKIP" + ], + "enumDescriptions": [ + "Show the health status for each network endpoint. Impacts latency of the call.", + "Health status for network endpoints will not be provided." + ], + "type": "string", + "description": "Optional query parameter for showing the health status of each network endpoint. Valid options are SKIP or SHOW. If you don't specify this parameter, the health status of network endpoints will not be provided." + } + }, + "type": "object", + "id": "NetworkEndpointGroupsListEndpointsRequest" + }, + "FirewallPoliciesListAssociationsResponse": { + "properties": { + "associations": { + "description": "A list of associations.", + "items": { + "$ref": "FirewallPolicyAssociation" + }, + "type": "array" + }, + "kind": { + "default": "compute#firewallPoliciesListAssociationsResponse", + "description": "[Output Only] Type of firewallPolicy associations. Always compute#FirewallPoliciesListAssociations for lists of firewallPolicy associations.", + "type": "string" + } + }, + "type": "object", + "id": "FirewallPoliciesListAssociationsResponse" + }, + "InterconnectAttachmentPartnerMetadata": { + "type": "object", + "properties": { + "partnerName": { + "type": "string", + "description": "Plain text name of the Partner providing this attachment. This value may be validated to match approved Partner values." + }, + "interconnectName": { + "type": "string", + "description": "Plain text name of the Interconnect this attachment is connected to, as displayed in the Partner's portal. For instance \"Chicago 1\". This value may be validated to match approved Partner values." + }, + "portalUrl": { + "type": "string", + "description": "URL of the Partner's portal for this Attachment. Partners may customise this to be a deep link to the specific resource on the Partner portal. This value may be validated to match approved Partner values." + } + }, + "id": "InterconnectAttachmentPartnerMetadata", + "description": "Informational metadata about Partner attachments from Partners to display to customers. These fields are propagated from PARTNER_PROVIDER attachments to their corresponding PARTNER attachments." + }, + "TargetHttpsProxyList": { + "description": "Contains a list of TargetHttpsProxy resources.", + "properties": { + "items": { + "description": "A list of TargetHttpsProxy resources.", + "type": "array", + "items": { + "$ref": "TargetHttpsProxy" + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "type": "array" + }, + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + } + } + }, + "kind": { + "type": "string", + "description": "Type of resource. Always compute#targetHttpsProxyList for lists of target HTTPS proxies.", + "default": "compute#targetHttpsProxyList" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + } + }, + "type": "object", + "id": "TargetHttpsProxyList" + }, + "TargetHttpProxiesScopedList": { + "type": "object", + "properties": { + "warning": { + "properties": { + "code": { + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "type": "array", + "items": { + "properties": { + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + }, + "type": "object" + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "type": "object", + "description": "Informational warning which replaces the list of backend services when the list is empty." + }, + "targetHttpProxies": { + "items": { + "$ref": "TargetHttpProxy" + }, + "description": "A list of TargetHttpProxies contained in this scope.", + "type": "array" + } + }, + "id": "TargetHttpProxiesScopedList" + }, + "LicenseResourceCommitment": { + "properties": { + "license": { + "description": "Any applicable license URI.", + "type": "string" + }, + "amount": { + "format": "int64", + "description": "The number of licenses purchased.", + "type": "string" + }, + "coresPerLicense": { + "type": "string", + "description": "Specifies the core range of the instance for which this license applies." + } + }, + "type": "object", + "description": "Commitment for a particular license resource.", + "id": "LicenseResourceCommitment" + }, + "RouterStatusNatStatusNatRuleStatus": { + "id": "RouterStatusNatStatusNatRuleStatus", + "properties": { + "drainNatIps": { + "items": { + "type": "string" + }, + "description": "A list of IPs for NAT that are in drain mode. Example: [\"1.1.1.1\", \"179.12.26.133\"].", + "type": "array" + }, + "minExtraIpsNeeded": { + "type": "integer", + "format": "int32", + "description": "The number of extra IPs to allocate. This will be greater than 0 only if the existing IPs in this NAT Rule are NOT enough to allow all configured VMs to use NAT." + }, + "numVmEndpointsWithNatMappings": { + "type": "integer", + "format": "int32", + "description": "Number of VM endpoints (i.e., NICs) that have NAT Mappings from this NAT Rule." + }, + "activeNatIps": { + "description": "A list of active IPs for NAT. Example: [\"1.1.1.1\", \"179.12.26.133\"].", + "type": "array", + "items": { + "type": "string" + } + }, + "ruleNumber": { + "description": "Rule number of the rule.", + "type": "integer", + "format": "int32" + } + }, + "description": "Status of a NAT Rule contained in this NAT.", + "type": "object" + }, + "LogConfigCounterOptionsCustomField": { + "id": "LogConfigCounterOptionsCustomField", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "This is deprecated and has no effect. Do not use." + }, + "value": { + "description": "This is deprecated and has no effect. Do not use.", + "type": "string" + } + }, + "description": "This is deprecated and has no effect. Do not use." + }, + "RouterNatSubnetworkToNat": { + "type": "object", + "id": "RouterNatSubnetworkToNat", + "properties": { + "secondaryIpRangeNames": { + "description": "A list of the secondary ranges of the Subnetwork that are allowed to use NAT. This can be populated only if \"LIST_OF_SECONDARY_IP_RANGES\" is one of the values in source_ip_ranges_to_nat.", + "type": "array", + "items": { + "type": "string" + } + }, + "name": { + "description": "URL for the subnetwork resource that will use NAT.", + "type": "string" + }, + "sourceIpRangesToNat": { + "items": { + "type": "string", + "enum": [ + "ALL_IP_RANGES", + "LIST_OF_SECONDARY_IP_RANGES", + "PRIMARY_IP_RANGE" + ], + "enumDescriptions": [ + "The primary and all the secondary ranges are allowed to Nat.", + "A list of secondary ranges are allowed to Nat.", + "The primary range is allowed to Nat." + ] + }, + "type": "array", + "description": "Specify the options for NAT ranges in the Subnetwork. All options of a single value are valid except NAT_IP_RANGE_OPTION_UNSPECIFIED. The only valid option with multiple values is: [\"PRIMARY_IP_RANGE\", \"LIST_OF_SECONDARY_IP_RANGES\"] Default: [ALL_IP_RANGES]" + } + }, + "description": "Defines the IP ranges that want to use NAT for a subnetwork." + }, + "VpnGatewayList": { + "description": "Contains a list of VpnGateway resources.", + "properties": { + "items": { + "type": "array", + "items": { + "$ref": "VpnGateway" + }, + "description": "A list of VpnGateway resources." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of resource. Always compute#vpnGateway for VPN gateways.", + "type": "string", + "default": "compute#vpnGatewayList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "warning": { + "properties": { + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + }, + "data": { + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + }, + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + } + }, + "type": "object", + "id": "VpnGatewayList" + }, + "DeprecationStatus": { + "description": "Deprecation status for a public resource.", + "properties": { + "obsolete": { + "type": "string", + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to OBSOLETE. This is only informational and the status will not change unless the client explicitly changes it." + }, + "state": { + "type": "string", + "enumDescriptions": [ + "", + "", + "", + "" + ], + "enum": [ + "ACTIVE", + "DELETED", + "DEPRECATED", + "OBSOLETE" + ], + "description": "The deprecation state of this resource. This can be ACTIVE, DEPRECATED, OBSOLETE, or DELETED. Operations which communicate the end of life date for an image, can use ACTIVE. Operations which create a new resource using a DEPRECATED resource will return successfully, but with a warning indicating the deprecated resource and recommending its replacement. Operations which use OBSOLETE or DELETED resources will be rejected and result in an error." + }, + "replacement": { + "description": "The URL of the suggested replacement for a deprecated resource. The suggested replacement resource must be the same kind of resource as the deprecated resource.", + "type": "string" + }, + "deprecated": { + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DEPRECATED. This is only informational and the status will not change unless the client explicitly changes it.", + "type": "string" + }, + "deleted": { + "type": "string", + "description": "An optional RFC3339 timestamp on or after which the state of this resource is intended to change to DELETED. This is only informational and the status will not change unless the client explicitly changes it." + } + }, + "type": "object", + "id": "DeprecationStatus" + }, + "ResourceGroupReference": { + "type": "object", + "properties": { + "group": { + "description": "A URI referencing one of the instance groups or network endpoint groups listed in the backend service.", + "type": "string" + } + }, + "id": "ResourceGroupReference" + }, + "UrlMap": { + "type": "object", + "description": "Represents a URL Map resource. Google Compute Engine has two URL Map resources: * [Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain types of GCP load balancers and Traffic Director. * urlMaps are used by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are used by internal HTTP(S) load balancers. For a list of supported URL map features by load balancer type, see the Load balancing features: Routing and traffic management table. For a list of supported URL map features for Traffic Director, see the Traffic Director features: Routing and traffic management table. This resource defines mappings from host names and URL paths to either a backend service or a backend bucket. To use the global urlMaps resource, the backend service must have a loadBalancingScheme of either EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more information, read URL Map Concepts.", + "properties": { + "defaultUrlRedirect": { + "description": "When none of the specified hostRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Not supported when the URL map is bound to target gRPC proxy.", + "$ref": "HttpRedirectAction" + }, + "pathMatchers": { + "type": "array", + "items": { + "$ref": "PathMatcher" + }, + "description": "The list of named PathMatchers to use against the URL." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "defaultRouteAction": { + "description": "defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices. Only one of defaultRouteAction or defaultUrlRedirect must be set. UrlMaps for external HTTP(S) load balancers support only the urlRewrite action within defaultRouteAction. defaultRouteAction has no effect when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true.", + "$ref": "HttpRouteAction" + }, + "id": { + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "fingerprint": { + "type": "string", + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve a UrlMap.", + "format": "byte" + }, + "defaultService": { + "description": "The full or partial URL of the defaultService resource to which traffic is directed if none of the hostRules match. If defaultRouteAction is additionally specified, advanced routing actions like URL Rewrites, etc. take effect prior to sending the request to the backend. However, if defaultService is specified, defaultRouteAction cannot contain any weightedBackendServices. Conversely, if routeAction specifies any weightedBackendServices, service must not be specified. Only one of defaultService, defaultUrlRedirect or defaultRouteAction.weightedBackendService must be set. defaultService has no effect when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true.", + "type": "string" + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#urlMaps for url maps.", + "type": "string", + "default": "compute#urlMap" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "region": { + "description": "[Output Only] URL of the region where the regional URL map resides. This field is not applicable to global URL maps. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.", + "type": "string" + }, + "name": { + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "type": "string" + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "hostRules": { + "items": { + "$ref": "HostRule" + }, + "type": "array", + "description": "The list of HostRules to use against the URL." + }, + "headerAction": { + "description": "Specifies changes to request and response headers that need to take effect for the selected backendService. The headerAction specified here take effect after headerAction specified under pathMatcher. Note that headerAction is not supported for Loadbalancers that have their loadBalancingScheme set to EXTERNAL. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true.", + "$ref": "HttpHeaderAction" + }, + "tests": { + "items": { + "$ref": "UrlMapTest" + }, + "type": "array", + "description": "The list of expected URL mapping tests. Request to update this UrlMap will succeed only if all of the test cases pass. You can specify a maximum of 100 tests per UrlMap. Not supported when the URL map is bound to target gRPC proxy that has validateForProxyless field set to true." + } + }, + "id": "UrlMap" + }, + "Commitment": { + "id": "Commitment", + "properties": { + "description": { + "description": "An optional description of this resource. Provide this property when you create the resource.", + "type": "string" + }, + "id": { + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "type": { + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ], + "description": "The type of commitment, which affects the discount rate and the eligible resources. Type MEMORY_OPTIMIZED specifies a commitment that will only apply to memory optimized machines. Type ACCELERATOR_OPTIMIZED specifies a commitment that will only apply to accelerator optimized machines.", + "enum": [ + "ACCELERATOR_OPTIMIZED", + "COMPUTE_OPTIMIZED", + "GENERAL_PURPOSE", + "GENERAL_PURPOSE_E2", + "GENERAL_PURPOSE_N2", + "GENERAL_PURPOSE_N2D", + "MEMORY_OPTIMIZED", + "TYPE_UNSPECIFIED" + ], + "type": "string" + }, + "reservations": { + "type": "array", + "items": { + "$ref": "Reservation" + }, + "description": "List of reservations in this commitment." + }, + "kind": { + "type": "string", + "default": "compute#commitment", + "description": "[Output Only] Type of the resource. Always compute#commitment for commitments." + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "resources": { + "description": "A list of commitment amounts for particular resources. Note that VCPU and MEMORY resource commitments must occur together.", + "items": { + "$ref": "ResourceCommitment" + }, + "type": "array" + }, + "endTimestamp": { + "type": "string", + "description": "[Output Only] Commitment end time in RFC3339 text format." + }, + "licenseResource": { + "$ref": "LicenseResourceCommitment", + "description": "The license specification required as part of a license commitment." + }, + "creationTimestamp": { + "description": "[Output Only] Creation timestamp in RFC3339 text format.", + "type": "string" + }, + "statusMessage": { + "description": "[Output Only] An optional, human-readable explanation of the status.", + "type": "string" + }, + "startTimestamp": { + "description": "[Output Only] Commitment start time in RFC3339 text format.", + "type": "string" + }, + "plan": { + "type": "string", + "enum": [ + "INVALID", + "THIRTY_SIX_MONTH", + "TWELVE_MONTH" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "description": "The plan for this commitment, which determines duration and discount rate. The currently supported plans are TWELVE_MONTH (1 year), and THIRTY_SIX_MONTH (3 years)." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "status": { + "enum": [ + "ACTIVE", + "CREATING", + "EXPIRED", + "NOT_YET_ACTIVE" + ], + "description": "[Output Only] Status of the commitment with regards to eventual expiration (each commitment has an end date defined). One of the following values: NOT_YET_ACTIVE, ACTIVE, EXPIRED.", + "type": "string", + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where this commitment may be used." + }, + "category": { + "type": "string", + "enum": [ + "CATEGORY_UNSPECIFIED", + "LICENSE", + "MACHINE" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "description": "The category of the commitment. Category MACHINE specifies commitments composed of machine resources such as VCPU or MEMORY, listed in resources. Category LICENSE specifies commitments composed of software licenses, listed in licenseResources. Note that only MACHINE commitments should have a Type specified." + } + }, + "description": "Represents a regional Commitment resource. Creating a commitment resource means that you are purchasing a committed use contract with an explicit start and end time. You can create commitments based on vCPUs and memory usage and receive discounted rates. For full details, read Signing Up for Committed Use Discounts.", + "type": "object" + }, + "Firewall": { + "type": "object", + "description": "Represents a Firewall Rule resource. Firewall rules allow or deny ingress traffic to, and egress traffic from your instances. For more information, read Firewall rules.", + "properties": { + "kind": { + "description": "[Output Only] Type of the resource. Always compute#firewall for firewall rules.", + "type": "string", + "default": "compute#firewall" + }, + "description": { + "description": "An optional description of this resource. Provide this field when you create the resource.", + "type": "string" + }, + "sourceRanges": { + "items": { + "type": "string" + }, + "description": "If source ranges are specified, the firewall rule applies only to traffic that has a source IP address in these ranges. These ranges must be expressed in CIDR format. One or both of sourceRanges and sourceTags may be set. If both fields are set, the rule applies to traffic that has a source IP address within sourceRanges OR a source IP from a resource with a matching tag listed in the sourceTags field. The connection does not need to match both fields for the rule to apply. Both IPv4 and IPv6 are supported.", + "type": "array" + }, + "targetServiceAccounts": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of service accounts indicating sets of instances located in the network that may make network connections as specified in allowed[]. targetServiceAccounts cannot be used at the same time as targetTags or sourceTags. If neither targetServiceAccounts nor targetTags are specified, the firewall rule applies to all instances on the specified network." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "allowed": { + "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", + "items": { + "properties": { + "ports": { + "description": "An optional list of ports to which this rule applies. This field is only applicable for the UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", + "items": { + "type": "string" + }, + "type": "array" + }, + "IPProtocol": { + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp) or the IP protocol number.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + }, + "name": { + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?. The first character must be a lowercase letter, and all following characters (except for the last character) must be a dash, lowercase letter, or digit. The last character must be a lowercase letter or digit.", + "type": "string", + "annotations": { + "required": [ + "compute.firewalls.insert", + "compute.firewalls.patch" + ] + }, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "targetTags": { + "description": "A list of tags that controls which instances the firewall rule applies to. If targetTags are specified, then the firewall rule applies only to instances in the VPC network that have one of those tags. If no targetTags are specified, the firewall rule applies to all instances on the specified network.", + "items": { + "type": "string" + }, + "type": "array" + }, + "denied": { + "type": "array", + "items": { + "type": "object", + "properties": { + "IPProtocol": { + "type": "string", + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, ipip, sctp) or the IP protocol number." + }, + "ports": { + "type": "array", + "items": { + "type": "string" + }, + "description": "An optional list of ports to which this rule applies. This field is only applicable for the UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"]." + } + } + }, + "description": "The list of DENY rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a denied connection." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "id": { + "format": "uint64", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "type": "string" + }, + "direction": { + "description": "Direction of traffic to which this firewall applies, either `INGRESS` or `EGRESS`. The default is `INGRESS`. For `INGRESS` traffic, you cannot specify the destinationRanges field, and for `EGRESS` traffic, you cannot specify the sourceRanges or sourceTags fields.", + "enumDescriptions": [ + "Indicates that firewall should apply to outgoing traffic.", + "Indicates that firewall should apply to incoming traffic." + ], + "type": "string", + "enum": [ + "EGRESS", + "INGRESS" + ] + }, + "destinationRanges": { + "items": { + "type": "string" + }, + "type": "array", + "description": "If destination ranges are specified, the firewall rule applies only to traffic that has destination IP address in these ranges. These ranges must be expressed in CIDR format. Both IPv4 and IPv6 are supported." + }, + "sourceTags": { + "type": "array", + "items": { + "type": "string" + }, + "description": "If source tags are specified, the firewall rule applies only to traffic with source IPs that match the primary network interfaces of VM instances that have the tag and are in the same VPC network. Source tags cannot be used to control traffic to an instance's external IP address, it only applies to traffic between instances in the same virtual network. Because tags are associated with instances, not IP addresses. One or both of sourceRanges and sourceTags may be set. If both fields are set, the firewall applies to traffic that has a source IP address within sourceRanges OR a source IP from a resource with a matching tag listed in the sourceTags field. The connection does not need to match both fields for the firewall to apply." + }, + "network": { + "description": "URL of the network resource for this firewall rule. If not specified when creating a firewall rule, the default network is used: global/networks/default If you choose to specify this field, you can specify the network as a full or partial URL. For example, the following are all valid URLs: - https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network - projects/myproject/global/networks/my-network - global/networks/default ", + "type": "string" + }, + "sourceServiceAccounts": { + "description": "If source service accounts are specified, the firewall rules apply only to traffic originating from an instance with a service account in this list. Source service accounts cannot be used to control traffic to an instance's external IP address because service accounts are associated with an instance, not an IP address. sourceRanges can be set at the same time as sourceServiceAccounts. If both are set, the firewall applies to traffic that has a source IP address within the sourceRanges OR a source IP that belongs to an instance with service account listed in sourceServiceAccount. The connection does not need to match both fields for the firewall to apply. sourceServiceAccounts cannot be used at the same time as sourceTags or targetTags.", + "type": "array", + "items": { + "type": "string" + } + }, + "disabled": { + "type": "boolean", + "description": "Denotes whether the firewall rule is disabled. When set to true, the firewall rule is not enforced and the network behaves as if it did not exist. If this is unspecified, the firewall rule will be enabled." + }, + "logConfig": { + "$ref": "FirewallLogConfig", + "description": "This field denotes the logging options for a particular firewall rule. If logging is enabled, logs will be exported to Cloud Logging." + }, + "priority": { + "description": "Priority for this rule. This is an integer between `0` and `65535`, both inclusive. The default value is `1000`. Relative priorities determine which rule takes effect if multiple rules apply. Lower values indicate higher priority. For example, a rule with priority `0` has higher precedence than a rule with priority `1`. DENY rules take precedence over ALLOW rules if they have equal priority. Note that VPC networks have implied rules with a priority of `65535`. To avoid conflicts with the implied rules, use a priority number less than `65535`.", + "format": "int32", + "type": "integer" + } + }, + "id": "Firewall" + }, + "PreservedState": { + "id": "PreservedState", + "properties": { + "metadata": { + "additionalProperties": { + "type": "string" + }, + "description": "Preserved metadata defined for this instance.", + "type": "object" + }, + "disks": { + "description": "Preserved disks defined for this instance. This map is keyed with the device names of the disks.", + "additionalProperties": { + "$ref": "PreservedStatePreservedDisk" + }, + "type": "object" + } + }, + "description": "Preserved state for a given instance.", + "type": "object" + }, + "AcceleratorTypesScopedList": { + "id": "AcceleratorTypesScopedList", + "properties": { + "warning": { + "properties": { + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + } + } + } + }, + "description": "[Output Only] An informational warning that appears when the accelerator types list is empty.", + "type": "object" + }, + "acceleratorTypes": { + "description": "[Output Only] A list of accelerator types contained in this scope.", + "type": "array", + "items": { + "$ref": "AcceleratorType" + } + } + }, + "type": "object" + }, + "HttpRetryPolicy": { + "description": "The retry policy associates with HttpRouteRule", + "properties": { + "retryConditions": { + "description": "Specifies one or more conditions when this retry policy applies. Valid values are: - 5xx: Retry will be attempted if the instance or endpoint responds with any 5xx response code, or if the instance or endpoint does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - - connect-failure: A retry will be attempted on failures connecting to the instance or endpoint, for example due to connection timeouts. - retriable-4xx: A retry will be attempted if the instance or endpoint responds with a retriable 4xx response code. Currently the only retriable error supported is 409. - refused-stream: A retry will be attempted if the instance or endpoint resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: A retry will be attempted if the gRPC status code in the response header is set to cancelled. - deadline-exceeded: A retry will be attempted if the gRPC status code in the response header is set to deadline-exceeded. - internal: A retry will be attempted if the gRPC status code in the response header is set to internal. - resource-exhausted: A retry will be attempted if the gRPC status code in the response header is set to resource-exhausted. - unavailable: A retry will be attempted if the gRPC status code in the response header is set to unavailable. ", + "type": "array", + "items": { + "type": "string" + } + }, + "perTryTimeout": { + "$ref": "Duration", + "description": "Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in HttpRouteAction. If timeout in HttpRouteAction is not set, will use the largest timeout among all backend services associated with the route." + }, + "numRetries": { + "type": "integer", + "format": "uint32", + "description": "Specifies the allowed number retries. This number must be \u003e 0. If not specified, defaults to 1." + } + }, + "type": "object", + "id": "HttpRetryPolicy" + }, + "InstancesStartWithEncryptionKeyRequest": { + "id": "InstancesStartWithEncryptionKeyRequest", + "properties": { + "disks": { + "items": { + "$ref": "CustomerEncryptionKeyProtectedDisk" + }, + "type": "array", + "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key. In order to start the instance, the disk url and its corresponding key must be provided. If the disk is not protected with a customer-supplied encryption key it should not be specified." + } + }, + "type": "object" + }, + "OutlierDetection": { + "properties": { + "maxEjectionPercent": { + "type": "integer", + "description": "Maximum percentage of hosts in the load balancing pool for the backend service that can be ejected. Defaults to 50%.", + "format": "int32" + }, + "baseEjectionTime": { + "description": "The base time that a host is ejected for. The real ejection time is equal to the base ejection time multiplied by the number of times the host has been ejected. Defaults to 30000ms or 30s.", + "$ref": "Duration" + }, + "consecutiveErrors": { + "type": "integer", + "format": "int32", + "description": "Number of errors before a host is ejected from the connection pool. When the backend host is accessed over HTTP, a 5xx return code qualifies as an error. Defaults to 5." + }, + "enforcingConsecutiveErrors": { + "type": "integer", + "format": "int32", + "description": "The percentage chance that a host will be actually ejected when an outlier status is detected through consecutive 5xx. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 0." + }, + "successRateRequestVolume": { + "format": "int32", + "description": "The minimum number of total requests that must be collected in one interval (as defined by the interval duration above) to include this host in success rate based outlier detection. If the volume is lower than this setting, outlier detection via success rate statistics is not performed for that host. Defaults to 100.", + "type": "integer" + }, + "enforcingConsecutiveGatewayFailure": { + "description": "The percentage chance that a host will be actually ejected when an outlier status is detected through consecutive gateway failures. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100.", + "format": "int32", + "type": "integer" + }, + "interval": { + "description": "Time interval between ejection analysis sweeps. This can result in both new ejections as well as hosts being returned to service. Defaults to 1 second.", + "$ref": "Duration" + }, + "successRateStdevFactor": { + "description": "This factor is used to determine the ejection threshold for success rate outlier ejection. The ejection threshold is the difference between the mean success rate, and the product of this factor and the standard deviation of the mean success rate: mean - (stdev * success_rate_stdev_factor). This factor is divided by a thousand to get a double. That is, if the desired factor is 1.9, the runtime value should be 1900. Defaults to 1900.", + "format": "int32", + "type": "integer" + }, + "consecutiveGatewayFailure": { + "format": "int32", + "description": "The number of consecutive gateway failures (502, 503, 504 status or connection errors that are mapped to one of those status codes) before a consecutive gateway failure ejection occurs. Defaults to 3.", + "type": "integer" + }, + "successRateMinimumHosts": { + "type": "integer", + "description": "The number of hosts in a cluster that must have enough request volume to detect success rate outliers. If the number of hosts is less than this setting, outlier detection via success rate statistics is not performed for any host in the cluster. Defaults to 5.", + "format": "int32" + }, + "enforcingSuccessRate": { + "type": "integer", + "description": "The percentage chance that a host will be actually ejected when an outlier status is detected through success rate statistics. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100.", + "format": "int32" + } + }, + "description": "Settings controlling the eviction of unhealthy hosts from the load balancing pool for the backend service.", + "type": "object", + "id": "OutlierDetection" + }, + "ResourcePolicy": { + "description": "Represents a Resource Policy resource. You can use resource policies to schedule actions for some Compute Engine resources. For example, you can use them to schedule persistent disk snapshots.", + "type": "object", + "id": "ResourcePolicy", + "properties": { + "description": { + "type": "string" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "resourceStatus": { + "$ref": "ResourcePolicyResourceStatus", + "description": "[Output Only] The system status of the resource policy." + }, + "snapshotSchedulePolicy": { + "$ref": "ResourcePolicySnapshotSchedulePolicy", + "description": "Resource policy for persistent disks for creating snapshots." + }, + "instanceSchedulePolicy": { + "description": "Resource policy for scheduling instance operations.", + "$ref": "ResourcePolicyInstanceSchedulePolicy" + }, + "kind": { + "description": "[Output Only] Type of the resource. Always compute#resource_policies for resource policies.", + "type": "string", + "default": "compute#resourcePolicy" + }, + "name": { + "type": "string", + "annotations": { + "required": [ + "compute.instances.insert" + ] + }, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "status": { + "enum": [ + "CREATING", + "DELETING", + "EXPIRED", + "INVALID", + "READY" + ], + "description": "[Output Only] The status of resource policy creation.", + "type": "string", + "enumDescriptions": [ + "Resource policy is being created.", + "Resource policy is being deleted.", + "Resource policy is expired and will not run again.", + "", + "Resource policy is ready to be used." + ] + }, + "selfLink": { + "description": "[Output Only] Server-defined fully-qualified URL for this resource.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "region": { + "type": "string" + }, + "groupPlacementPolicy": { + "description": "Resource policy for instances for placement configuration.", + "$ref": "ResourcePolicyGroupPlacementPolicy" + } + } + }, + "InstanceGroupManagerVersion": { + "id": "InstanceGroupManagerVersion", + "properties": { + "instanceTemplate": { + "type": "string", + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the `targetSize` for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the `targetSize` for this version is reached." + }, + "targetSize": { + "$ref": "FixedOrPercent", + "description": "Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information." + }, + "name": { + "description": "Name of the version. Unique among all versions in the scope of this managed instance group.", + "type": "string" + } + }, + "type": "object" + }, + "RegionList": { + "type": "object", + "description": "Contains a list of region resources.", + "id": "RegionList", + "properties": { + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#regionList for lists of regions.", + "default": "compute#regionList" + }, + "items": { + "description": "A list of Region resources.", + "type": "array", + "items": { + "$ref": "Region" + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "warning": { + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "type": "string", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + }, + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } " + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "type": "object" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + } + } + }, + "TargetSslProxiesSetBackendServiceRequest": { + "properties": { + "service": { + "type": "string", + "description": "The URL of the new BackendService resource for the targetSslProxy." + } + }, + "id": "TargetSslProxiesSetBackendServiceRequest", + "type": "object" + }, + "ProjectsGetXpnResources": { + "type": "object", + "properties": { + "resources": { + "items": { + "$ref": "XpnResourceId" + }, + "description": "Service resources (a.k.a service projects) attached to this project as their shared VPC host.", + "type": "array" + }, + "kind": { + "default": "compute#projectsGetXpnResources", + "type": "string", + "description": "[Output Only] Type of resource. Always compute#projectsGetXpnResources for lists of service resources (a.k.a service projects)" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + }, + "id": "ProjectsGetXpnResources" + }, + "SubnetworkAggregatedList": { + "properties": { + "items": { + "additionalProperties": { + "$ref": "SubnetworksScopedList", + "description": "Name of the scope containing this set of Subnetworks." + }, + "description": "A list of SubnetworksScopedList resources.", + "type": "object" + }, + "id": { + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "type": "string" + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for this resource.", + "type": "string" + }, + "kind": { + "default": "compute#subnetworkAggregatedList", + "description": "[Output Only] Type of resource. Always compute#subnetworkAggregatedList for aggregated lists of subnetworks.", + "type": "string" + }, + "warning": { + "properties": { + "code": { + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response." + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + } + }, + "type": "object" + } + } + }, + "description": "[Output Only] Informational warning message.", + "type": "object" + }, + "unreachables": { + "description": "[Output Only] Unreachable resources.", + "items": { + "type": "string" + }, + "type": "array" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + } + }, + "type": "object", + "id": "SubnetworkAggregatedList" + }, + "InterconnectDiagnosticsLinkLACPStatus": { + "id": "InterconnectDiagnosticsLinkLACPStatus", + "type": "object", + "properties": { + "neighborSystemId": { + "description": "System ID of the port on the neighbor's side of the LACP exchange.", + "type": "string" + }, + "googleSystemId": { + "type": "string", + "description": "System ID of the port on Google's side of the LACP exchange." + }, + "state": { + "enumDescriptions": [ + "The link is configured and active within the bundle.", + "The link is not configured within the bundle, this means the rest of the object should be empty." + ], + "type": "string", + "enum": [ + "ACTIVE", + "DETACHED" + ], + "description": "The state of a LACP link, which can take one of the following values: - ACTIVE: The link is configured and active within the bundle. - DETACHED: The link is not configured within the bundle. This means that the rest of the object should be empty. " + } + } + }, + "RegionInstanceGroupManagersListInstanceConfigsResp": { + "type": "object", + "id": "RegionInstanceGroupManagersListInstanceConfigsResp", + "properties": { + "items": { + "description": "[Output Only] The list of PerInstanceConfig.", + "items": { + "$ref": "PerInstanceConfig" + }, + "type": "array" + }, + "nextPageToken": { + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results.", + "type": "string" + }, + "warning": { + "type": "object", + "properties": { + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + }, + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + } + } + } + }, + "code": { + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "type": "string" + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + }, + "description": "[Output Only] Informational warning message." + } + } + }, + "NetworkEndpointGroupsAttachEndpointsRequest": { + "type": "object", + "properties": { + "networkEndpoints": { + "type": "array", + "description": "The list of network endpoints to be attached.", + "items": { + "$ref": "NetworkEndpoint" + } + } + }, + "id": "NetworkEndpointGroupsAttachEndpointsRequest" + }, + "SslPolicy": { + "id": "SslPolicy", + "description": "Represents an SSL Policy resource. Use SSL policies to control the SSL features, such as versions and cipher suites, offered by an HTTPS or SSL Proxy load balancer. For more information, read SSL Policy Concepts.", + "type": "object", + "properties": { + "kind": { + "description": "[Output only] Type of the resource. Always compute#sslPolicyfor SSL policies.", + "type": "string", + "default": "compute#sslPolicy" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "selfLink": { + "description": "[Output Only] Server-defined URL for the resource.", + "type": "string" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "warnings": { + "type": "array", + "description": "[Output Only] If potential misconfigurations are detected for this SSL policy, this field will be populated with warning messages.", + "items": { + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enumDescriptions": [ + "Warning about failed cleanup of transient changes made by a failed operation.", + "A link to a deprecated resource was created.", + "When deploying and at least one of the resources has a type marked as deprecated", + "The user created a boot disk that is larger than image size.", + "When deploying and at least one of the resources has a type marked as experimental", + "Warning that is present in an external api call", + "Warning that value of a field has been overridden. Deprecated unused field.", + "The operation involved use of an injected kernel, which is deprecated.", + "When deploying a deployment with a exceedingly large number of resources", + "A resource depends on a missing type", + "The route's nextHopIp address is not assigned to an instance on the network.", + "The route's next hop instance cannot ip forward.", + "The route's nextHopInstance URL refers to an instance that does not exist.", + "The route's nextHopInstance URL refers to an instance that is not on the same network as the route.", + "The route's next hop instance does not have a status of RUNNING.", + "Error which is not critical. We decided to continue the process despite the mentioned error.", + "No results are present on a particular list page.", + "Success is reported, but some results may be missing due to errors", + "The user attempted to use a resource that requires a TOS they have not accepted.", + "Warning that a resource is in use.", + "One or more of the resources set to auto-delete could not be deleted because they were in use.", + "When a resource schema validation is ignored.", + "Instance template used in instance group manager is valid as such, but its application does not make a lot of sense, because it allows only single instance in instance group.", + "When undeclared properties in the schema are present", + "A given scope cannot be reached." + ], + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "LARGE_DEPLOYMENT_WARNING", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "PARTIAL_SUCCESS", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ] + }, + "message": { + "description": "[Output Only] A human-readable description of the warning code.", + "type": "string" + }, + "data": { + "description": "[Output Only] Metadata about this warning in key: value format. For example: \"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" } ", + "items": { + "properties": { + "key": { + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding).", + "type": "string" + }, + "value": { + "description": "[Output Only] A warning data value corresponding to the key.", + "type": "string" + } + }, + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "profile": { + "enumDescriptions": [ + "Compatible profile. Allows the broadset set of clients, even those which support only out-of-date SSL features to negotiate with the load balancer.", + "Custom profile. Allow only the set of allowed SSL features specified in the customFeatures field.", + "Modern profile. Supports a wide set of SSL features, allowing modern clients to negotiate SSL with the load balancer.", + "Restricted profile. Supports a reduced set of SSL features, intended to meet stricter compliance requirements." + ], + "enum": [ + "COMPATIBLE", + "CUSTOM", + "MODERN", + "RESTRICTED" + ], + "description": "Profile specifies the set of SSL features that can be used by the load balancer when negotiating SSL with clients. This can be one of COMPATIBLE, MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to enable must be specified in the customFeatures field.", + "type": "string" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "minTlsVersion": { + "type": "string", + "enumDescriptions": [ + "TLS 1.0", + "TLS 1.1", + "TLS 1.2" + ], + "enum": [ + "TLS_1_0", + "TLS_1_1", + "TLS_1_2" + ], + "description": "The minimum version of SSL protocol that can be used by the clients to establish a connection with the load balancer. This can be one of TLS_1_0, TLS_1_1, TLS_1_2." + }, + "fingerprint": { + "type": "string", + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a SslPolicy. An up-to-date fingerprint must be provided in order to update the SslPolicy, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an SslPolicy.", + "format": "byte" + }, + "customFeatures": { + "items": { + "type": "string" + }, + "type": "array", + "description": "A list of features enabled when the selected profile is CUSTOM. The method returns the set of features that can be specified in this list. This field must be empty if the profile is not CUSTOM." + }, + "name": { + "type": "string", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "description": "Name of the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "enabledFeatures": { + "type": "array", + "items": { + "type": "string" + }, + "description": "[Output Only] The list of features enabled in the SSL policy." + } + } + } + }, + "servicePath": "compute/v1/", + "icons": { + "x32": "https://www.google.com/images/icons/product/compute_engine-32.png", + "x16": "https://www.google.com/images/icons/product/compute_engine-16.png" + }, + "ownerDomain": "google.com" +} \ No newline at end of file diff --git a/google/cloud/compute/v1/compute_gapic.yaml b/google/cloud/compute/v1/compute_gapic.yaml new file mode 100755 index 000000000..9d968e667 --- /dev/null +++ b/google/cloud/compute/v1/compute_gapic.yaml @@ -0,0 +1,1958 @@ +# Copyright 2021 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http:#www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Generated by the disco-to-proto3-converter. DO NOT EDIT! +# Source Discovery file: compute.v1.json +# Source file revision: 20211004 +# API name: compute +# API version: v1 + +type: com.google.api.codegen.ConfigProto +config_schema_version: 2.0.0 +language_settings: + java: + package_name: com.google.cloud.compute.v1 +interfaces: +- name: google.cloud.compute.v1.Addresses + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Autoscalers + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.BackendBuckets + methods: + - name: AddSignedUrlKey + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DeleteSignedUrlKey + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.BackendServices + methods: + - name: AddSignedUrlKey + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DeleteSignedUrlKey + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetSecurityPolicy + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Disks + methods: + - name: AddResourcePolicies + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: CreateSnapshot + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RemoveResourcePolicies + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Resize + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetLabels + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.ExternalVpnGateways + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetLabels + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.FirewallPolicies + methods: + - name: AddAssociation + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: AddRule + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: CloneRules + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Move + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: PatchRule + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RemoveAssociation + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RemoveRule + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Firewalls + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.ForwardingRules + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetLabels + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetTarget + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.GlobalAddresses + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.GlobalForwardingRules + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetLabels + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetTarget + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.GlobalNetworkEndpointGroups + methods: + - name: AttachNetworkEndpoints + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DetachNetworkEndpoints + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.GlobalPublicDelegatedPrefixes + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.HealthChecks + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Images + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Deprecate + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetLabels + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.InstanceGroupManagers + methods: + - name: AbandonInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: ApplyUpdatesToInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: CreateInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DeleteInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DeletePerInstanceConfigs + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: PatchPerInstanceConfigs + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RecreateInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Resize + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetInstanceTemplate + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetTargetPools + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: UpdatePerInstanceConfigs + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.InstanceGroups + methods: + - name: AddInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RemoveInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetNamedPorts + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.InstanceTemplates + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Instances + methods: + - name: AddAccessConfig + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: AddResourcePolicies + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: AttachDisk + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: BulkInsert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DeleteAccessConfig + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DetachDisk + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RemoveResourcePolicies + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Reset + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetDeletionProtection + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetDiskAutoDelete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetLabels + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetMachineResources + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetMachineType + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetMetadata + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetMinCpuPlatform + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetScheduling + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetServiceAccount + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetShieldedInstanceIntegrityPolicy + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetTags + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SimulateMaintenanceEvent + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Start + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: StartWithEncryptionKey + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Stop + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: UpdateAccessConfig + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: UpdateDisplayDevice + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: UpdateNetworkInterface + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: UpdateShieldedInstanceConfig + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.InterconnectAttachments + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Interconnects + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Licenses + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.NetworkEndpointGroups + methods: + - name: AttachNetworkEndpoints + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DetachNetworkEndpoints + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Networks + methods: + - name: AddPeering + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RemovePeering + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SwitchToCustomMode + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: UpdatePeering + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.NodeGroups + methods: + - name: AddNodes + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DeleteNodes + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetNodeTemplate + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.NodeTemplates + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.PacketMirrorings + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Projects + methods: + - name: DisableXpnHost + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DisableXpnResource + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: EnableXpnHost + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: EnableXpnResource + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: MoveDisk + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: MoveInstance + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetCommonInstanceMetadata + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetDefaultNetworkTier + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetUsageExportBucket + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.PublicAdvertisedPrefixes + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.PublicDelegatedPrefixes + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionAutoscalers + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionBackendServices + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionCommitments + methods: + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionDisks + methods: + - name: AddResourcePolicies + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: CreateSnapshot + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RemoveResourcePolicies + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Resize + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetLabels + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionHealthCheckServices + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionHealthChecks + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionInstanceGroupManagers + methods: + - name: AbandonInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: ApplyUpdatesToInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: CreateInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DeleteInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: DeletePerInstanceConfigs + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: PatchPerInstanceConfigs + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RecreateInstances + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Resize + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetInstanceTemplate + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetTargetPools + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: UpdatePerInstanceConfigs + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionInstanceGroups + methods: + - name: SetNamedPorts + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionInstances + methods: + - name: BulkInsert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionNetworkEndpointGroups + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionNotificationEndpoints + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionSslCertificates + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionTargetHttpProxies + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetUrlMap + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionTargetHttpsProxies + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetSslCertificates + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetUrlMap + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.RegionUrlMaps + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Reservations + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Resize + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.ResourcePolicies + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Routers + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Routes + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.SecurityPolicies + methods: + - name: AddRule + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: PatchRule + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RemoveRule + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.ServiceAttachments + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Snapshots + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetLabels + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.SslCertificates + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.SslPolicies + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.Subnetworks + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: ExpandIpCidrRange + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetPrivateIpGoogleAccess + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.TargetGrpcProxies + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.TargetHttpProxies + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetUrlMap + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.TargetHttpsProxies + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetQuicOverride + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetSslCertificates + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetSslPolicy + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetUrlMap + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.TargetInstances + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.TargetPools + methods: + - name: AddHealthCheck + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: AddInstance + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RemoveHealthCheck + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: RemoveInstance + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetBackup + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.TargetSslProxies + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetBackendService + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetProxyHeader + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetSslCertificates + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetSslPolicy + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.TargetTcpProxies + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetBackendService + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetProxyHeader + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.TargetVpnGateways + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.UrlMaps + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: InvalidateCache + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Patch + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Update + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.VpnGateways + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: SetLabels + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 +- name: google.cloud.compute.v1.VpnTunnels + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 diff --git a/google/cloud/compute/v1/compute_grpc_service_config.json b/google/cloud/compute/v1/compute_grpc_service_config.json new file mode 100755 index 000000000..5f7ec9d39 --- /dev/null +++ b/google/cloud/compute/v1/compute_grpc_service_config.json @@ -0,0 +1,1770 @@ +{ + "methodConfig" : [ { + "name" : [ { + "service" : "google.cloud.compute.v1.AcceleratorTypes", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.AcceleratorTypes", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.AcceleratorTypes", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Addresses", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.Addresses", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Addresses", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Autoscalers", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.Autoscalers", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Autoscalers", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.BackendBuckets", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.BackendBuckets", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.BackendServices", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.BackendServices", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.BackendServices", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.DiskTypes", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.DiskTypes", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.DiskTypes", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.ExternalVpnGateways", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.ExternalVpnGateways", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "GetAssociation" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "GetRule" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "ListAssociations" + }, { + "service" : "google.cloud.compute.v1.Firewalls", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Firewalls", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.ForwardingRules", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.ForwardingRules", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.ForwardingRules", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.GlobalAddresses", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.GlobalAddresses", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.GlobalForwardingRules", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.GlobalForwardingRules", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.GlobalNetworkEndpointGroups", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.GlobalNetworkEndpointGroups", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.GlobalOperations", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.GlobalOperations", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.GlobalOperations", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.GlobalOrganizationOperations", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.GlobalOrganizationOperations", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.GlobalPublicDelegatedPrefixes", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.GlobalPublicDelegatedPrefixes", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.HealthChecks", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.HealthChecks", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.HealthChecks", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.ImageFamilyViews", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Images", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Images", + "method" : "GetFromFamily" + }, { + "service" : "google.cloud.compute.v1.Images", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Images", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "ListErrors" + }, { + "service" : "google.cloud.compute.v1.InstanceGroups", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.InstanceGroups", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.InstanceGroups", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.InstanceTemplates", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.InstanceTemplates", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.InstanceTemplates", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "GetEffectiveFirewalls" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "GetGuestAttributes" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "GetScreenshot" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "GetSerialPortOutput" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "GetShieldedInstanceIdentity" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "ListReferrers" + }, { + "service" : "google.cloud.compute.v1.InterconnectAttachments", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.InterconnectAttachments", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.InterconnectAttachments", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.InterconnectLocations", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.InterconnectLocations", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Interconnects", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Interconnects", + "method" : "GetDiagnostics" + }, { + "service" : "google.cloud.compute.v1.Interconnects", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.LicenseCodes", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Licenses", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Licenses", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Licenses", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.MachineTypes", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.MachineTypes", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.MachineTypes", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.NetworkEndpointGroups", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.NetworkEndpointGroups", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.NetworkEndpointGroups", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Networks", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Networks", + "method" : "GetEffectiveFirewalls" + }, { + "service" : "google.cloud.compute.v1.Networks", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Networks", + "method" : "ListPeeringRoutes" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.NodeTemplates", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.NodeTemplates", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.NodeTemplates", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.NodeTemplates", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.NodeTypes", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.NodeTypes", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.NodeTypes", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.PacketMirrorings", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.PacketMirrorings", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.PacketMirrorings", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "GetXpnHost" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "GetXpnResources" + }, { + "service" : "google.cloud.compute.v1.PublicAdvertisedPrefixes", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.PublicAdvertisedPrefixes", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.PublicDelegatedPrefixes", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.PublicDelegatedPrefixes", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.PublicDelegatedPrefixes", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionAutoscalers", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionAutoscalers", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionBackendServices", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionBackendServices", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionCommitments", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.RegionCommitments", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionCommitments", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionDiskTypes", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionDiskTypes", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionHealthCheckServices", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionHealthCheckServices", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionHealthChecks", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionHealthChecks", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "ListErrors" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroups", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroups", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionNetworkEndpointGroups", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionNetworkEndpointGroups", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionNotificationEndpoints", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionNotificationEndpoints", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionOperations", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionOperations", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionSslCertificates", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionSslCertificates", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionTargetHttpProxies", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionTargetHttpProxies", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionTargetHttpsProxies", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionTargetHttpsProxies", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.RegionUrlMaps", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.RegionUrlMaps", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Regions", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Regions", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Reservations", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.Reservations", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Reservations", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Reservations", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.ResourcePolicies", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.ResourcePolicies", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.ResourcePolicies", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.ResourcePolicies", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Routers", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.Routers", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Routers", + "method" : "GetNatMappingInfo" + }, { + "service" : "google.cloud.compute.v1.Routers", + "method" : "GetRouterStatus" + }, { + "service" : "google.cloud.compute.v1.Routers", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Routes", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Routes", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.SecurityPolicies", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.SecurityPolicies", + "method" : "GetRule" + }, { + "service" : "google.cloud.compute.v1.SecurityPolicies", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.SecurityPolicies", + "method" : "ListPreconfiguredExpressionSets" + }, { + "service" : "google.cloud.compute.v1.ServiceAttachments", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.ServiceAttachments", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.ServiceAttachments", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.ServiceAttachments", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Snapshots", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Snapshots", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Snapshots", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.SslCertificates", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.SslCertificates", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.SslCertificates", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.SslPolicies", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.SslPolicies", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.SslPolicies", + "method" : "ListAvailableFeatures" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "GetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "ListUsable" + }, { + "service" : "google.cloud.compute.v1.TargetGrpcProxies", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.TargetGrpcProxies", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.TargetHttpProxies", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.TargetHttpProxies", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.TargetHttpProxies", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.TargetHttpsProxies", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.TargetHttpsProxies", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.TargetHttpsProxies", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.TargetInstances", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.TargetInstances", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.TargetInstances", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.TargetPools", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.TargetPools", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.TargetPools", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.TargetSslProxies", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.TargetSslProxies", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.TargetTcpProxies", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.TargetTcpProxies", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.TargetVpnGateways", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.TargetVpnGateways", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.TargetVpnGateways", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.UrlMaps", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.UrlMaps", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.UrlMaps", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.VpnGateways", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.VpnGateways", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.VpnGateways", + "method" : "GetStatus" + }, { + "service" : "google.cloud.compute.v1.VpnGateways", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.VpnTunnels", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1.VpnTunnels", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.VpnTunnels", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.ZoneOperations", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.ZoneOperations", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1.Zones", + "method" : "Get" + }, { + "service" : "google.cloud.compute.v1.Zones", + "method" : "List" + } ], + "timeout" : "600s", + "retryPolicy" : { + "initialBackoff" : "0.100s", + "maxBackoff" : "60s", + "backoffMultiplier" : 1.3, + "retryableStatusCodes" : [ "DEADLINE_EXCEEDED", "UNAVAILABLE" ] + } + }, { + "name" : [ { + "service" : "google.cloud.compute.v1.Addresses", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Addresses", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Autoscalers", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Autoscalers", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Autoscalers", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.Autoscalers", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.BackendBuckets", + "method" : "AddSignedUrlKey" + }, { + "service" : "google.cloud.compute.v1.BackendBuckets", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.BackendBuckets", + "method" : "DeleteSignedUrlKey" + }, { + "service" : "google.cloud.compute.v1.BackendBuckets", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.BackendBuckets", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.BackendBuckets", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.BackendServices", + "method" : "AddSignedUrlKey" + }, { + "service" : "google.cloud.compute.v1.BackendServices", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.BackendServices", + "method" : "DeleteSignedUrlKey" + }, { + "service" : "google.cloud.compute.v1.BackendServices", + "method" : "GetHealth" + }, { + "service" : "google.cloud.compute.v1.BackendServices", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.BackendServices", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.BackendServices", + "method" : "SetSecurityPolicy" + }, { + "service" : "google.cloud.compute.v1.BackendServices", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "AddResourcePolicies" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "CreateSnapshot" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "RemoveResourcePolicies" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "Resize" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "SetLabels" + }, { + "service" : "google.cloud.compute.v1.Disks", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.ExternalVpnGateways", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.ExternalVpnGateways", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.ExternalVpnGateways", + "method" : "SetLabels" + }, { + "service" : "google.cloud.compute.v1.ExternalVpnGateways", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "AddAssociation" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "AddRule" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "CloneRules" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "Move" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "PatchRule" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "RemoveAssociation" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "RemoveRule" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.FirewallPolicies", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.Firewalls", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Firewalls", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Firewalls", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.Firewalls", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.ForwardingRules", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.ForwardingRules", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.ForwardingRules", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.ForwardingRules", + "method" : "SetLabels" + }, { + "service" : "google.cloud.compute.v1.ForwardingRules", + "method" : "SetTarget" + }, { + "service" : "google.cloud.compute.v1.GlobalAddresses", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.GlobalAddresses", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.GlobalForwardingRules", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.GlobalForwardingRules", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.GlobalForwardingRules", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.GlobalForwardingRules", + "method" : "SetLabels" + }, { + "service" : "google.cloud.compute.v1.GlobalForwardingRules", + "method" : "SetTarget" + }, { + "service" : "google.cloud.compute.v1.GlobalNetworkEndpointGroups", + "method" : "AttachNetworkEndpoints" + }, { + "service" : "google.cloud.compute.v1.GlobalNetworkEndpointGroups", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.GlobalNetworkEndpointGroups", + "method" : "DetachNetworkEndpoints" + }, { + "service" : "google.cloud.compute.v1.GlobalNetworkEndpointGroups", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.GlobalNetworkEndpointGroups", + "method" : "ListNetworkEndpoints" + }, { + "service" : "google.cloud.compute.v1.GlobalOperations", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.GlobalOperations", + "method" : "Wait" + }, { + "service" : "google.cloud.compute.v1.GlobalOrganizationOperations", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.GlobalPublicDelegatedPrefixes", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.GlobalPublicDelegatedPrefixes", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.GlobalPublicDelegatedPrefixes", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.HealthChecks", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.HealthChecks", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.HealthChecks", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.HealthChecks", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.Images", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Images", + "method" : "Deprecate" + }, { + "service" : "google.cloud.compute.v1.Images", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Images", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.Images", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Images", + "method" : "SetLabels" + }, { + "service" : "google.cloud.compute.v1.Images", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "AbandonInstances" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "ApplyUpdatesToInstances" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "CreateInstances" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "DeleteInstances" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "DeletePerInstanceConfigs" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "ListManagedInstances" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "ListPerInstanceConfigs" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "PatchPerInstanceConfigs" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "RecreateInstances" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "Resize" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "SetInstanceTemplate" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "SetTargetPools" + }, { + "service" : "google.cloud.compute.v1.InstanceGroupManagers", + "method" : "UpdatePerInstanceConfigs" + }, { + "service" : "google.cloud.compute.v1.InstanceGroups", + "method" : "AddInstances" + }, { + "service" : "google.cloud.compute.v1.InstanceGroups", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.InstanceGroups", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.InstanceGroups", + "method" : "ListInstances" + }, { + "service" : "google.cloud.compute.v1.InstanceGroups", + "method" : "RemoveInstances" + }, { + "service" : "google.cloud.compute.v1.InstanceGroups", + "method" : "SetNamedPorts" + }, { + "service" : "google.cloud.compute.v1.InstanceTemplates", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.InstanceTemplates", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.InstanceTemplates", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.InstanceTemplates", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "AddAccessConfig" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "AddResourcePolicies" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "AttachDisk" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "BulkInsert" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "DeleteAccessConfig" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "DetachDisk" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "RemoveResourcePolicies" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "Reset" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SendDiagnosticInterrupt" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetDeletionProtection" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetDiskAutoDelete" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetLabels" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetMachineResources" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetMachineType" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetMetadata" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetMinCpuPlatform" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetScheduling" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetServiceAccount" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetShieldedInstanceIntegrityPolicy" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SetTags" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "SimulateMaintenanceEvent" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "Start" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "StartWithEncryptionKey" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "Stop" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "UpdateAccessConfig" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "UpdateDisplayDevice" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "UpdateNetworkInterface" + }, { + "service" : "google.cloud.compute.v1.Instances", + "method" : "UpdateShieldedInstanceConfig" + }, { + "service" : "google.cloud.compute.v1.InterconnectAttachments", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.InterconnectAttachments", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.InterconnectAttachments", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.Interconnects", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Interconnects", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Interconnects", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.LicenseCodes", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.Licenses", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Licenses", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Licenses", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Licenses", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.NetworkEndpointGroups", + "method" : "AttachNetworkEndpoints" + }, { + "service" : "google.cloud.compute.v1.NetworkEndpointGroups", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.NetworkEndpointGroups", + "method" : "DetachNetworkEndpoints" + }, { + "service" : "google.cloud.compute.v1.NetworkEndpointGroups", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.NetworkEndpointGroups", + "method" : "ListNetworkEndpoints" + }, { + "service" : "google.cloud.compute.v1.NetworkEndpointGroups", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.Networks", + "method" : "AddPeering" + }, { + "service" : "google.cloud.compute.v1.Networks", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Networks", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Networks", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.Networks", + "method" : "RemovePeering" + }, { + "service" : "google.cloud.compute.v1.Networks", + "method" : "SwitchToCustomMode" + }, { + "service" : "google.cloud.compute.v1.Networks", + "method" : "UpdatePeering" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "AddNodes" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "DeleteNodes" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "ListNodes" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "SetNodeTemplate" + }, { + "service" : "google.cloud.compute.v1.NodeGroups", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.NodeTemplates", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.NodeTemplates", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.NodeTemplates", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.NodeTemplates", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.PacketMirrorings", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.PacketMirrorings", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.PacketMirrorings", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.PacketMirrorings", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "DisableXpnHost" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "DisableXpnResource" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "EnableXpnHost" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "EnableXpnResource" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "ListXpnHosts" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "MoveDisk" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "MoveInstance" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "SetCommonInstanceMetadata" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "SetDefaultNetworkTier" + }, { + "service" : "google.cloud.compute.v1.Projects", + "method" : "SetUsageExportBucket" + }, { + "service" : "google.cloud.compute.v1.PublicAdvertisedPrefixes", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.PublicAdvertisedPrefixes", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.PublicAdvertisedPrefixes", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.PublicDelegatedPrefixes", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.PublicDelegatedPrefixes", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.PublicDelegatedPrefixes", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.RegionAutoscalers", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionAutoscalers", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionAutoscalers", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.RegionAutoscalers", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.RegionBackendServices", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionBackendServices", + "method" : "GetHealth" + }, { + "service" : "google.cloud.compute.v1.RegionBackendServices", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionBackendServices", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.RegionBackendServices", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.RegionCommitments", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "AddResourcePolicies" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "CreateSnapshot" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "RemoveResourcePolicies" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "Resize" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "SetLabels" + }, { + "service" : "google.cloud.compute.v1.RegionDisks", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.RegionHealthCheckServices", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionHealthCheckServices", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionHealthCheckServices", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.RegionHealthChecks", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionHealthChecks", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionHealthChecks", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.RegionHealthChecks", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "AbandonInstances" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "ApplyUpdatesToInstances" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "CreateInstances" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "DeleteInstances" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "DeletePerInstanceConfigs" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "ListManagedInstances" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "ListPerInstanceConfigs" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "PatchPerInstanceConfigs" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "RecreateInstances" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "Resize" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "SetInstanceTemplate" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "SetTargetPools" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroupManagers", + "method" : "UpdatePerInstanceConfigs" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroups", + "method" : "ListInstances" + }, { + "service" : "google.cloud.compute.v1.RegionInstanceGroups", + "method" : "SetNamedPorts" + }, { + "service" : "google.cloud.compute.v1.RegionInstances", + "method" : "BulkInsert" + }, { + "service" : "google.cloud.compute.v1.RegionNetworkEndpointGroups", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionNetworkEndpointGroups", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionNotificationEndpoints", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionNotificationEndpoints", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionOperations", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionOperations", + "method" : "Wait" + }, { + "service" : "google.cloud.compute.v1.RegionSslCertificates", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionSslCertificates", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionTargetHttpProxies", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionTargetHttpProxies", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionTargetHttpProxies", + "method" : "SetUrlMap" + }, { + "service" : "google.cloud.compute.v1.RegionTargetHttpsProxies", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionTargetHttpsProxies", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionTargetHttpsProxies", + "method" : "SetSslCertificates" + }, { + "service" : "google.cloud.compute.v1.RegionTargetHttpsProxies", + "method" : "SetUrlMap" + }, { + "service" : "google.cloud.compute.v1.RegionUrlMaps", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.RegionUrlMaps", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.RegionUrlMaps", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.RegionUrlMaps", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.RegionUrlMaps", + "method" : "Validate" + }, { + "service" : "google.cloud.compute.v1.Reservations", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Reservations", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Reservations", + "method" : "Resize" + }, { + "service" : "google.cloud.compute.v1.Reservations", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Reservations", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.ResourcePolicies", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.ResourcePolicies", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.ResourcePolicies", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.ResourcePolicies", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.Routers", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Routers", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Routers", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.Routers", + "method" : "Preview" + }, { + "service" : "google.cloud.compute.v1.Routers", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.Routes", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Routes", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.SecurityPolicies", + "method" : "AddRule" + }, { + "service" : "google.cloud.compute.v1.SecurityPolicies", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.SecurityPolicies", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.SecurityPolicies", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.SecurityPolicies", + "method" : "PatchRule" + }, { + "service" : "google.cloud.compute.v1.SecurityPolicies", + "method" : "RemoveRule" + }, { + "service" : "google.cloud.compute.v1.ServiceAttachments", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.ServiceAttachments", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.ServiceAttachments", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.ServiceAttachments", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.ServiceAttachments", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.Snapshots", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Snapshots", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Snapshots", + "method" : "SetLabels" + }, { + "service" : "google.cloud.compute.v1.Snapshots", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.SslCertificates", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.SslCertificates", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.SslPolicies", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.SslPolicies", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.SslPolicies", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "ExpandIpCidrRange" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "SetIamPolicy" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "SetPrivateIpGoogleAccess" + }, { + "service" : "google.cloud.compute.v1.Subnetworks", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.TargetGrpcProxies", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.TargetGrpcProxies", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.TargetGrpcProxies", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.TargetHttpProxies", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.TargetHttpProxies", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.TargetHttpProxies", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.TargetHttpProxies", + "method" : "SetUrlMap" + }, { + "service" : "google.cloud.compute.v1.TargetHttpsProxies", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.TargetHttpsProxies", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.TargetHttpsProxies", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.TargetHttpsProxies", + "method" : "SetQuicOverride" + }, { + "service" : "google.cloud.compute.v1.TargetHttpsProxies", + "method" : "SetSslCertificates" + }, { + "service" : "google.cloud.compute.v1.TargetHttpsProxies", + "method" : "SetSslPolicy" + }, { + "service" : "google.cloud.compute.v1.TargetHttpsProxies", + "method" : "SetUrlMap" + }, { + "service" : "google.cloud.compute.v1.TargetInstances", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.TargetInstances", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.TargetPools", + "method" : "AddHealthCheck" + }, { + "service" : "google.cloud.compute.v1.TargetPools", + "method" : "AddInstance" + }, { + "service" : "google.cloud.compute.v1.TargetPools", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.TargetPools", + "method" : "GetHealth" + }, { + "service" : "google.cloud.compute.v1.TargetPools", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.TargetPools", + "method" : "RemoveHealthCheck" + }, { + "service" : "google.cloud.compute.v1.TargetPools", + "method" : "RemoveInstance" + }, { + "service" : "google.cloud.compute.v1.TargetPools", + "method" : "SetBackup" + }, { + "service" : "google.cloud.compute.v1.TargetSslProxies", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.TargetSslProxies", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.TargetSslProxies", + "method" : "SetBackendService" + }, { + "service" : "google.cloud.compute.v1.TargetSslProxies", + "method" : "SetProxyHeader" + }, { + "service" : "google.cloud.compute.v1.TargetSslProxies", + "method" : "SetSslCertificates" + }, { + "service" : "google.cloud.compute.v1.TargetSslProxies", + "method" : "SetSslPolicy" + }, { + "service" : "google.cloud.compute.v1.TargetTcpProxies", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.TargetTcpProxies", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.TargetTcpProxies", + "method" : "SetBackendService" + }, { + "service" : "google.cloud.compute.v1.TargetTcpProxies", + "method" : "SetProxyHeader" + }, { + "service" : "google.cloud.compute.v1.TargetVpnGateways", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.TargetVpnGateways", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.UrlMaps", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.UrlMaps", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.UrlMaps", + "method" : "InvalidateCache" + }, { + "service" : "google.cloud.compute.v1.UrlMaps", + "method" : "Patch" + }, { + "service" : "google.cloud.compute.v1.UrlMaps", + "method" : "Update" + }, { + "service" : "google.cloud.compute.v1.UrlMaps", + "method" : "Validate" + }, { + "service" : "google.cloud.compute.v1.VpnGateways", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.VpnGateways", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.VpnGateways", + "method" : "SetLabels" + }, { + "service" : "google.cloud.compute.v1.VpnGateways", + "method" : "TestIamPermissions" + }, { + "service" : "google.cloud.compute.v1.VpnTunnels", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.VpnTunnels", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1.ZoneOperations", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1.ZoneOperations", + "method" : "Wait" + } ], + "timeout" : "600s" + } ] +} diff --git a/google/cloud/compute/v1/compute_v1.yaml b/google/cloud/compute/v1/compute_v1.yaml new file mode 100644 index 000000000..da654bc74 --- /dev/null +++ b/google/cloud/compute/v1/compute_v1.yaml @@ -0,0 +1,108 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +type: google.api.Service +config_version: 3 +name: compute.googleapis.com +title: Google Compute Engine API + +apis: +- name: google.cloud.compute.v1.AcceleratorTypes +- name: google.cloud.compute.v1.Addresses +- name: google.cloud.compute.v1.Autoscalers +- name: google.cloud.compute.v1.BackendBuckets +- name: google.cloud.compute.v1.BackendServices +- name: google.cloud.compute.v1.DiskTypes +- name: google.cloud.compute.v1.Disks +- name: google.cloud.compute.v1.ExternalVpnGateways +- name: google.cloud.compute.v1.FirewallPolicies +- name: google.cloud.compute.v1.Firewalls +- name: google.cloud.compute.v1.ForwardingRules +- name: google.cloud.compute.v1.GlobalAddresses +- name: google.cloud.compute.v1.GlobalForwardingRules +- name: google.cloud.compute.v1.GlobalNetworkEndpointGroups +- name: google.cloud.compute.v1.GlobalOperations +- name: google.cloud.compute.v1.GlobalOrganizationOperations +- name: google.cloud.compute.v1.GlobalPublicDelegatedPrefixes +- name: google.cloud.compute.v1.HealthChecks +- name: google.cloud.compute.v1.ImageFamilyViews +- name: google.cloud.compute.v1.Images +- name: google.cloud.compute.v1.InstanceGroupManagers +- name: google.cloud.compute.v1.InstanceGroups +- name: google.cloud.compute.v1.InstanceTemplates +- name: google.cloud.compute.v1.Instances +- name: google.cloud.compute.v1.InterconnectAttachments +- name: google.cloud.compute.v1.InterconnectLocations +- name: google.cloud.compute.v1.Interconnects +- name: google.cloud.compute.v1.LicenseCodes +- name: google.cloud.compute.v1.Licenses +- name: google.cloud.compute.v1.MachineTypes +- name: google.cloud.compute.v1.NetworkEndpointGroups +- name: google.cloud.compute.v1.Networks +- name: google.cloud.compute.v1.NodeGroups +- name: google.cloud.compute.v1.NodeTemplates +- name: google.cloud.compute.v1.NodeTypes +- name: google.cloud.compute.v1.PacketMirrorings +- name: google.cloud.compute.v1.Projects +- name: google.cloud.compute.v1.PublicAdvertisedPrefixes +- name: google.cloud.compute.v1.PublicDelegatedPrefixes +- name: google.cloud.compute.v1.RegionAutoscalers +- name: google.cloud.compute.v1.RegionBackendServices +- name: google.cloud.compute.v1.RegionCommitments +- name: google.cloud.compute.v1.RegionDiskTypes +- name: google.cloud.compute.v1.RegionDisks +- name: google.cloud.compute.v1.RegionHealthCheckServices +- name: google.cloud.compute.v1.RegionHealthChecks +- name: google.cloud.compute.v1.RegionInstanceGroupManagers +- name: google.cloud.compute.v1.RegionInstanceGroups +- name: google.cloud.compute.v1.RegionInstances +- name: google.cloud.compute.v1.RegionNetworkEndpointGroups +- name: google.cloud.compute.v1.RegionNotificationEndpoints +- name: google.cloud.compute.v1.RegionOperations +- name: google.cloud.compute.v1.RegionSslCertificates +- name: google.cloud.compute.v1.RegionTargetHttpProxies +- name: google.cloud.compute.v1.RegionTargetHttpsProxies +- name: google.cloud.compute.v1.RegionUrlMaps +- name: google.cloud.compute.v1.Regions +- name: google.cloud.compute.v1.Reservations +- name: google.cloud.compute.v1.ResourcePolicies +- name: google.cloud.compute.v1.Routers +- name: google.cloud.compute.v1.Routes +- name: google.cloud.compute.v1.SecurityPolicies +- name: google.cloud.compute.v1.ServiceAttachments +- name: google.cloud.compute.v1.Snapshots +- name: google.cloud.compute.v1.SslCertificates +- name: google.cloud.compute.v1.SslPolicies +- name: google.cloud.compute.v1.Subnetworks +- name: google.cloud.compute.v1.TargetGrpcProxies +- name: google.cloud.compute.v1.TargetHttpProxies +- name: google.cloud.compute.v1.TargetHttpsProxies +- name: google.cloud.compute.v1.TargetInstances +- name: google.cloud.compute.v1.TargetPools +- name: google.cloud.compute.v1.TargetSslProxies +- name: google.cloud.compute.v1.TargetTcpProxies +- name: google.cloud.compute.v1.TargetVpnGateways +- name: google.cloud.compute.v1.UrlMaps +- name: google.cloud.compute.v1.VpnGateways +- name: google.cloud.compute.v1.VpnTunnels +- name: google.cloud.compute.v1.ZoneOperations +- name: google.cloud.compute.v1.Zones + +authentication: + rules: + - selector: '*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/compute, + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/compute/v1small/BUILD.bazel b/google/cloud/compute/v1small/BUILD.bazel new file mode 100644 index 000000000..9f6490dad --- /dev/null +++ b/google/cloud/compute/v1small/BUILD.bazel @@ -0,0 +1,182 @@ +# This file was automatically generated by BuildFileGenerator + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +exports_files(glob(include = ["*grpc_service_config.json"])) + +############################################################################## +# Discovery +############################################################################## +load( + "@com_google_disco_to_proto3_converter//rules_gapic:disco_to_proto.bzl", + "gapic_yaml_from_disco", + "grpc_service_config_from_disco", + "proto_from_disco", +) + +proto_from_disco( + name = "compute_small_gen", + src = "compute.v1small.json", + enums_as_strings = True, +) + +grpc_service_config_from_disco( + name = "compute_small_grpc_service_config_gen", + src = "compute.v1small.json", +) + +gapic_yaml_from_disco( + name = "compute_small_gapic_gen", + src = "compute.v1small.json", +) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "compute_small_proto", + srcs = [ + "compute_small.proto", + ], + deps = [ + "@com_google_googleapis//google/api:annotations_proto", + "@com_google_googleapis//google/api:client_proto", + "@com_google_googleapis//google/api:field_behavior_proto", + "@com_google_googleapis//google/api:resource_proto", + "@com_google_googleapis//google/cloud:extended_operations_proto", + "@com_google_googleapis//google/longrunning:operations_proto", + "@com_google_protobuf//:descriptor_proto", + ], +) + +proto_library_with_info( + name = "compute_small_proto_with_info", + deps = [ + ":compute_small_proto", + "@com_google_googleapis//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +# Java Compute Small (for testing and prototyping purposes) +java_proto_library( + name = "compute_small_java_proto", + deps = [":compute_small_proto"], +) + +# Used for integration tests +java_gapic_library( + name = "compute_small_java_gapic", + srcs = [":compute_small_proto_with_info"], + gapic_yaml = "compute_small_gapic.yaml", + grpc_service_config = ":compute_small_grpc_service_config.json", + test_deps = [], + transport = "rest", + deps = [ + ":compute_small_java_proto", + ], +) + +java_gapic_test( + name = "compute_small_java_gapic_test_suite", + test_classes = [ + "com.google.cloud.compute.v1small.AddressesClientTest", + ], + runtime_deps = [":compute_small_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-compute-small-v1-java", + transport = "rest", + deps = [ + ":compute_small_java_gapic", + ":compute_small_java_proto", + ":compute_small_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +# Python Compute Small (for testing and prototyping purposes) +py_gapic_library( + name = "compute_small_py_gapic", + srcs = [ + ":compute_small_proto", + ], + opt_args = [ + "transport=rest", + ], +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "compute-small-v1-py", + deps = [ + ":compute_small_py_gapic", + ], +) + +############################################################################## +# PHP +############################################################################## +# Put your PHP rules here + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +# Node.js Compute Small (for testing and prototyping purposes) +nodejs_gapic_library( + name = "compute_small_nodejs_gapic", + package_name = "@google-cloud/compute-small", + src = ":compute_small_proto_with_info", + extra_protoc_parameters = ["metadata"], + diregapic = True, + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "compute-small-v1-nodejs", + deps = [ + ":compute_small_nodejs_gapic", + ":compute_small_proto", + ], +) + +############################################################################### +# Ruby +############################################################################### +# Put your Ruby rules here + +############################################################################## +# C# +############################################################################## +# Put your C# rules here diff --git a/google/cloud/compute/v1small/README.md b/google/cloud/compute/v1small/README.md new file mode 100644 index 000000000..ef47a40f7 --- /dev/null +++ b/google/cloud/compute/v1small/README.md @@ -0,0 +1,8 @@ +# Google Compute Engine Minimal API (for Testing Purposes Only) + +Minimal viable set of API methods from [Google Compute Engine](https://cloud.google.com/error-reporting/reference/). + +These API definitions exist only for testing and to simplify development of +client libraries for GCE. Please do not depend on or use any of the files from +this directory in your projects. + diff --git a/google/cloud/compute/v1small/compute.v1small.json b/google/cloud/compute/v1small/compute.v1small.json new file mode 100644 index 000000000..8bddd0dc6 --- /dev/null +++ b/google/cloud/compute/v1small/compute.v1small.json @@ -0,0 +1,1062 @@ +{ + "kind": "discovery#restDescription", + "etag": "\"u9GIe6H63LSGq-9_t39K2Zx_EAc/FxLyjO3NNw-MCcpaZiOfen7ZKXY\"", + "discoveryVersion": "v1", + "id": "compute:v1", + "name": "compute", + "version": "v1small", + "revision": "20200302", + "title": "Compute Engine API", + "description": "Creates and runs virtual machines on Google Cloud Platform.", + "ownerDomain": "google.com", + "ownerName": "Google", + "icons": { + "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", + "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" + }, + "documentationLink": "https://developers.google.com/compute/docs/reference/latest/", + "protocol": "rest", + "baseUrl": "https://compute.googleapis.com/compute/v1/projects/", + "basePath": "/compute/v1/projects/", + "rootUrl": "https://compute.googleapis.com/", + "servicePath": "compute/v1/projects/", + "batchPath": "batch/compute/v1", + "parameters": { + "alt": { + "type": "string", + "description": "Data format for the response.", + "default": "json", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query" + }, + "fields": { + "type": "string", + "description": "Selector specifying which fields to include in a partial response.", + "location": "query" + }, + "key": { + "type": "string", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query" + }, + "oauth_token": { + "type": "string", + "description": "OAuth 2.0 token for the current user.", + "location": "query" + }, + "prettyPrint": { + "type": "boolean", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "location": "query" + }, + "quotaUser": { + "type": "string", + "description": "An opaque string that represents a user for quota purposes. Must not exceed 40 characters.", + "location": "query" + }, + "userIp": { + "type": "string", + "description": "Deprecated. Please use quotaUser instead.", + "location": "query" + } + }, + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" + } + } + } + }, + "schemas": { + "Operation": { + "id": "Operation", + "type": "object", + "description": "Represents an Operation resource.\n\nGoogle Compute Engine has three Operation resources:\n\n* [Global](/compute/docs/reference/rest/{$api_version}/globalOperations) * [Regional](/compute/docs/reference/rest/{$api_version}/regionOperations) * [Zonal](/compute/docs/reference/rest/{$api_version}/zoneOperations)\n\nYou can use an operation resource to manage asynchronous API requests. For more information, read Handling API responses.\n\nOperations can be global, regional or zonal. \n- For global operations, use the globalOperations resource. \n- For regional operations, use the regionOperations resource. \n- For zonal operations, use the zoneOperations resource. \n\nFor more information, read Global, Regional, and Zonal Resources. (== resource_for {$api_version}.globalOperations ==) (== resource_for {$api_version}.regionOperations ==) (== resource_for {$api_version}.zoneOperations ==)", + "properties": { + "clientOperationId": { + "type": "string", + "description": "[Output Only] The value of `requestId` if you provided it in the request. Not present otherwise." + }, + "creationTimestamp": { + "type": "string", + "description": "[Deprecated] This field is deprecated." + }, + "description": { + "type": "string", + "description": "[Output Only] A textual description of the operation, which is set when the operation is created." + }, + "endTime": { + "type": "string", + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." + }, + "error": { + "type": "object", + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "type": "array", + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] The error type identifier for this error." + }, + "location": { + "type": "string", + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." + }, + "message": { + "type": "string", + "description": "[Output Only] An optional, human-readable error message." + } + } + } + } + } + }, + "httpErrorMessage": { + "type": "string", + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." + }, + "httpErrorStatusCode": { + "type": "integer", + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the operation. This identifier is defined by the server.", + "format": "uint64" + }, + "insertTime": { + "type": "string", + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "default": "compute#operation" + }, + "name": { + "type": "string", + "description": "[Output Only] Name of the operation." + }, + "operationType": { + "type": "string", + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." + }, + "progress": { + "type": "integer", + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32" + }, + "region": { + "type": "string", + "description": "[Output Only] The URL of the region where the operation resides. Only applicable when performing regional operations." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "startTime": { + "type": "string", + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "statusMessage": { + "type": "string", + "description": "[Output Only] An optional textual description of the current status of the operation." + }, + "targetId": { + "type": "string", + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64" + }, + "targetLink": { + "type": "string", + "description": "[Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from." + }, + "user": { + "type": "string", + "description": "[Output Only] User who requested the operation, for example: user@example.com." + }, + "warnings": { + "type": "array", + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + }, + "zone": { + "type": "string", + "description": "[Output Only] The URL of the zone where the operation resides. Only applicable when performing per-zone operations." + } + } + }, + "Address": { + "id": "Address", + "type": "object", + "description": "Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier.\n\nUse global internal addresses for reserved peering network range.\n\nUse regional external addresses for the following resources:\n\n- External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA)\n\nUse regional internal IP addresses for subnet IP ranges (primary and secondary). This includes:\n\n- Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses\n\nFor more information, read reserved IP address.\n\n(== resource_for {$api_version}.addresses ==) (== resource_for {$api_version}.globalAddresses ==)", + "properties": { + "address": { + "type": "string", + "description": "The static IP address represented by this resource." + }, + "addressType": { + "type": "string", + "description": "The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL.", + "enum": [ + "EXTERNAL", + "INTERNAL", + "UNSPECIFIED_TYPE" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this field when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "ipVersion": { + "type": "string", + "description": "The IP version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address.", + "enum": [ + "IPV4", + "IPV6", + "UNSPECIFIED_VERSION" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#address for addresses.", + "default": "compute#address" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all following characters (except for the last character) must be a dash, lowercase letter, or digit. The last character must be a lowercase letter or digit.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.addresses.insert" + ] + } + }, + "network": { + "type": "string", + "description": "The URL of the network in which to reserve the address. This field can only be used with INTERNAL type with the VPC_PEERING purpose." + }, + "networkTier": { + "type": "string", + "description": "This signifies the networking tier used for configuring this address and can only take the following values: PREMIUM or STANDARD. Global forwarding rules can only be Premium Tier. Regional forwarding rules can be either Premium or Standard Tier. Standard Tier addresses applied to regional forwarding rules can be used with any external load balancer. Regional forwarding rules in Premium Tier can only be used with a network load balancer.\n\nIf this field is not specified, it is assumed to be PREMIUM.", + "enum": [ + "PREMIUM", + "STANDARD" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "prefixLength": { + "type": "integer", + "description": "The prefix length if the resource reprensents an IP range.", + "format": "int32" + }, + "purpose": { + "type": "string", + "description": "The purpose of this resource, which can be one of the following values: \n- `GCE_ENDPOINT` for addresses that are used by VM instances, alias IP ranges, internal load balancers, and similar resources. \n- `DNS_RESOLVER` for a DNS resolver address in a subnetwork \n- `VPC_PEERING` for addresses that are reserved for VPC peer networks. \n- `NAT_AUTO` for addresses that are external IP addresses automatically reserved for Cloud NAT.", + "enum": [ + "DNS_RESOLVER", + "GCE_ENDPOINT", + "NAT_AUTO", + "VPC_PEERING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "region": { + "type": "string", + "description": "[Output Only] The URL of the region where the regional address resides. This field is not applicable to global addresses. You must specify this field as part of the HTTP request URL." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available.", + "enum": [ + "IN_USE", + "RESERVED", + "RESERVING" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "subnetwork": { + "type": "string", + "description": "The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with a GCE_ENDPOINT or DNS_RESOLVER purpose." + }, + "users": { + "type": "array", + "description": "[Output Only] The URLs of the resources that are using this address.", + "items": { + "type": "string" + } + } + } + }, + "AddressAggregatedList": { + "id": "AddressAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "object", + "description": "A list of AddressesScopedList resources.", + "additionalProperties": { + "$ref": "AddressesScopedList", + "description": "[Output Only] Name of the scope containing this set of addresses." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#addressAggregatedList for aggregated lists of addresses.", + "default": "compute#addressAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "AddressList": { + "id": "AddressList", + "type": "object", + "description": "Contains a list of addresses.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "array", + "description": "A list of Address resources.", + "items": { + "$ref": "Address" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#addressList for lists of addresses.", + "default": "compute#addressList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning message.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "AddressesScopedList": { + "id": "AddressesScopedList", + "type": "object", + "properties": { + "addresses": { + "type": "array", + "description": "[Output Only] A list of addresses contained in this scope.", + "items": { + "$ref": "Address" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DEPRECATED_TYPE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "EXPERIMENTAL_TYPE_USED", + "EXTERNAL_API_WARNING", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "MISSING_TYPE_DEPENDENCY", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING", + "RESOURCE_NOT_DELETED", + "SCHEMA_VALIDATION_IGNORED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNDECLARED_PROPERTIES", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + } + }, + "resources": { + "addresses": { + "methods": { + "aggregatedList": { + "id": "compute.addresses.aggregatedList", + "path": "{project}/aggregated/addresses", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of addresses.", + "parameters": { + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `\u003e`, or `\u003c`.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`.\n\nYou can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true) ```", + "location": "query" + }, + "includeAllScopes": { + "type": "boolean", + "description": "Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`)", + "default": "500", + "format": "uint32", + "minimum": "0", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using `orderBy=\"creationTimestamp desc\"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by `name` or `creationTimestamp desc` is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "AddressAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.addresses.delete", + "path": "{project}/regions/{region}/addresses/{address}", + "httpMethod": "DELETE", + "description": "Deletes the specified address resource.", + "parameters": { + "address": { + "type": "string", + "description": "Name of the address resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "parameterOrder": [ + "project", + "region", + "address" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "insert": { + "id": "compute.addresses.insert", + "path": "{project}/regions/{region}/addresses", + "httpMethod": "POST", + "description": "Creates an address resource in the specified project by using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "requestId": { + "type": "string", + "description": "An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.\n\nFor example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).", + "location": "query" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "Address" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.addresses.list", + "path": "{project}/regions/{region}/addresses", + "httpMethod": "GET", + "description": "Retrieves a list of addresses contained within the specified region.", + "parameters": { + "filter": { + "type": "string", + "description": "A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, \u003e, or \u003c.\n\nFor example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance.\n\nYou can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = \"Intel Skylake\"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = \"Intel Skylake\") OR (cpuPlatform = \"Intel Broadwell\") AND (scheduling.automaticRestart = true).", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500)", + "default": "500", + "format": "uint32", + "minimum": "0", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query", + "required": true + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "orderBy" + ], + "response": { + "$ref": "AddressList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionOperations": { + "methods": { + "get": { + "id": "compute.regionOperations.get", + "path": "{project}/regions/{region}/operations/{operation}", + "httpMethod": "GET", + "description": "Retrieves the specified region-specific Operations resource.", + "parameters": { + "operation": { + "type": "string", + "description": "Name of the Operations resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "operation" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "wait": { + "id": "compute.regionOperations.wait", + "path": "projects/{project}/regions/{region}/operations/{operation}/wait", + "httpMethod": "POST", + "description": "Waits for the specified Operation resource to return as `DONE` or for the request to approach the 2 minute deadline, and retrieves the specified Operation resource. This method differs from the `GET` method in that it waits for no more than the default deadline (2 minutes) and then returns the current state of the operation, which might be `DONE` or still in progress.\n\nThis method is called on a best-effort basis. Specifically: \n- In uncommon cases, when the server is overloaded, the request might return before the default deadline is reached, or might return after zero seconds. \n- If the default deadline is reached, there is no guarantee that the operation is actually done when the method returns. Be prepared to retry if the operation is not `DONE`.", + "parameters": { + "operation": { + "type": "string", + "description": "Name of the Operations resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "operation" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + } + } +} + diff --git a/google/cloud/compute/v1small/compute_small.proto b/google/cloud/compute/v1small/compute_small.proto new file mode 100644 index 000000000..a7fbb4d6b --- /dev/null +++ b/google/cloud/compute/v1small/compute_small.proto @@ -0,0 +1,740 @@ +// Copyright 2020 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Generated by the disco-to-proto3-converter. DO NOT EDIT! +// Source Discovery file: compute.v1small.json +// Source file revision: 20200302 +// API name: compute +// API version: v1small + +syntax = "proto3"; + +package google.cloud.compute.v1small; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/extended_operations.proto"; + +// +// File Options +// +option csharp_namespace = "Google.Cloud.Compute.V1Small"; +option go_package = "google.golang.org/genproto/googleapis/cloud/compute/v1small;compute"; +option java_multiple_files = true; +option java_package = "com.google.cloud.compute.v1small"; +option php_namespace = "Google\\Cloud\\Compute\\V1small"; +option ruby_package = "Google::Cloud::Compute::V1small"; + +// +// Messages +// +// Use global external addresses for GFE-based external HTTP(S) load balancers in Premium Tier. +// +// Use global internal addresses for reserved peering network range. +// +// Use regional external addresses for the following resources: +// +// - External IP addresses for VM instances - Regional external forwarding rules - Cloud NAT external IP addresses - GFE based LBs in Standard Tier - Network LBs in Premium or Standard Tier - Cloud VPN gateways (both Classic and HA) +// +// Use regional internal IP addresses for subnet IP ranges (primary and secondary). This includes: +// +// - Internal IP addresses for VM instances - Alias IP ranges of VM instances (/32 only) - Regional internal forwarding rules - Internal TCP/UDP load balancer addresses - Internal HTTP(S) load balancer addresses - Cloud DNS inbound forwarding IP addresses +// +// For more information, read reserved IP address. +// +// (== resource_for {$api_version}.addresses ==) (== resource_for {$api_version}.globalAddresses ==) +message Address { + // The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL. + enum AddressType { + // A value indicating that the enum field is not set. + UNDEFINED_ADDRESS_TYPE = 0; + + EXTERNAL = 35607499; + + INTERNAL = 279295677; + + UNSPECIFIED_TYPE = 53933922; + + } + + // The IP version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address. + enum IpVersion { + // A value indicating that the enum field is not set. + UNDEFINED_IP_VERSION = 0; + + IPV4 = 2254341; + + IPV6 = 2254343; + + UNSPECIFIED_VERSION = 21850000; + + } + + // This signifies the networking tier used for configuring this address and can only take the following values: PREMIUM or STANDARD. Global forwarding rules can only be Premium Tier. Regional forwarding rules can be either Premium or Standard Tier. Standard Tier addresses applied to regional forwarding rules can be used with any external load balancer. Regional forwarding rules in Premium Tier can only be used with a network load balancer. + // + // If this field is not specified, it is assumed to be PREMIUM. + enum NetworkTier { + // A value indicating that the enum field is not set. + UNDEFINED_NETWORK_TIER = 0; + + PREMIUM = 399530551; + + STANDARD = 484642493; + + } + + // The purpose of this resource, which can be one of the following values: + // - `GCE_ENDPOINT` for addresses that are used by VM instances, alias IP ranges, internal load balancers, and similar resources. + // - `DNS_RESOLVER` for a DNS resolver address in a subnetwork + // - `VPC_PEERING` for addresses that are reserved for VPC peer networks. + // - `NAT_AUTO` for addresses that are external IP addresses automatically reserved for Cloud NAT. + enum Purpose { + // A value indicating that the enum field is not set. + UNDEFINED_PURPOSE = 0; + + DNS_RESOLVER = 476114556; + + GCE_ENDPOINT = 230515243; + + NAT_AUTO = 163666477; + + VPC_PEERING = 400800170; + + } + + // [Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + IN_USE = 17393485; + + RESERVED = 432241448; + + RESERVING = 514587225; + + } + + // The static IP address represented by this resource. + optional string address = 462920692; + + // The type of address to reserve, either INTERNAL or EXTERNAL. If unspecified, defaults to EXTERNAL. + // Check the AddressType enum for the list of possible values. + optional string address_type = 264307877; + + // [Output Only] Creation timestamp in RFC3339 text format. + optional string creation_timestamp = 30525366; + + // An optional description of this resource. Provide this field when you create the resource. + optional string description = 422937596; + + // [Output Only] The unique identifier for the resource. This identifier is defined by the server. + optional uint64 id = 3355; + + // The IP version that will be used by this address. Valid options are IPV4 or IPV6. This can only be specified for a global address. + // Check the IpVersion enum for the list of possible values. + optional string ip_version = 294959552; + + // [Output Only] Type of the resource. Always compute#address for addresses. + optional string kind = 3292052; + + // Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all following characters (except for the last character) must be a dash, lowercase letter, or digit. The last character must be a lowercase letter or digit. + optional string name = 3373707; + + // The URL of the network in which to reserve the address. This field can only be used with INTERNAL type with the VPC_PEERING purpose. + optional string network = 232872494; + + // This signifies the networking tier used for configuring this address and can only take the following values: PREMIUM or STANDARD. Global forwarding rules can only be Premium Tier. Regional forwarding rules can be either Premium or Standard Tier. Standard Tier addresses applied to regional forwarding rules can be used with any external load balancer. Regional forwarding rules in Premium Tier can only be used with a network load balancer. + // + // If this field is not specified, it is assumed to be PREMIUM. + // Check the NetworkTier enum for the list of possible values. + optional string network_tier = 517397843; + + // The prefix length if the resource reprensents an IP range. + optional int32 prefix_length = 453565747; + + // The purpose of this resource, which can be one of the following values: + // - `GCE_ENDPOINT` for addresses that are used by VM instances, alias IP ranges, internal load balancers, and similar resources. + // - `DNS_RESOLVER` for a DNS resolver address in a subnetwork + // - `VPC_PEERING` for addresses that are reserved for VPC peer networks. + // - `NAT_AUTO` for addresses that are external IP addresses automatically reserved for Cloud NAT. + // Check the Purpose enum for the list of possible values. + optional string purpose = 316407070; + + // [Output Only] The URL of the region where the regional address resides. This field is not applicable to global addresses. You must specify this field as part of the HTTP request URL. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The status of the address, which can be one of RESERVING, RESERVED, or IN_USE. An address that is RESERVING is currently in the process of being reserved. A RESERVED address is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available. + // Check the Status enum for the list of possible values. + optional string status = 181260274; + + // The URL of the subnetwork in which to reserve the address. If an IP address is specified, it must be within the subnetwork's IP range. This field can only be used with INTERNAL type with a GCE_ENDPOINT or DNS_RESOLVER purpose. + optional string subnetwork = 307827694; + + // [Output Only] The URLs of the resources that are using this address. + repeated string users = 111578632; + +} + +// +message AddressAggregatedList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of AddressesScopedList resources. + map items = 100526016; + + // [Output Only] Type of resource. Always compute#addressAggregatedList for aggregated lists of addresses. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// Contains a list of addresses. +message AddressList { + // [Output Only] Unique identifier for the resource; defined by the server. + optional string id = 3355; + + // A list of Address resources. + repeated Address items = 100526016; + + // [Output Only] Type of resource. Always compute#addressList for lists of addresses. + optional string kind = 3292052; + + // [Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results. + optional string next_page_token = 79797525; + + // [Output Only] Server-defined URL for this resource. + optional string self_link = 456214797; + + // [Output Only] Informational warning message. + optional Warning warning = 50704284; + +} + +// +message AddressesScopedList { + // [Output Only] A list of addresses contained in this scope. + repeated Address addresses = 337673122; + + // [Output Only] Informational warning which replaces the list of addresses when the list is empty. + optional Warning warning = 50704284; + +} + +// A request message for Addresses.AggregatedList. See the method description for details. +message AggregatedListAddressesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either `=`, `!=`, `>`, or `<`. + // + // For example, if you are filtering Compute Engine instances, you can exclude instances named `example-instance` by specifying `name != example-instance`. + // + // You can also filter nested fields. For example, you could specify `scheduling.automaticRestart = false` to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. + // + // To filter on multiple expressions, provide each separate expression within parentheses. For example: ``` (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake") ``` By default, each expression is an `AND` expression. However, you can include `AND` and `OR` expressions explicitly. For example: ``` (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true) ``` + optional string filter = 336120696; + + // Indicates whether every visible scope for each scope type (zone, region, global) should be included in the response. For new resource types added after this field, the flag has no effect as new resource types will always include every visible scope for each scope type in response. For resource types which predate this field, if this flag is omitted or false, only scopes of the scope types where the resource type is expected to be found will be included. + optional bool include_all_scopes = 391327988; + + // The maximum number of results per page that should be returned. If the number of available results is larger than `maxResults`, Compute Engine returns a `nextPageToken` that can be used to get the next page of results in subsequent list requests. Acceptable values are `0` to `500`, inclusive. (Default: `500`) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. + // + // You can also sort results in descending order based on the creation timestamp using `orderBy="creationTimestamp desc"`. This sorts results based on the `creationTimestamp` field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. + // + // Currently, only sorting by `name` or `creationTimestamp desc` is supported. + optional string order_by = 160562920; + + // Specifies a page token to use. Set `pageToken` to the `nextPageToken` returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + +} + +// +message Data { + // [Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding). + optional string key = 106079; + + // [Output Only] A warning data value corresponding to the key. + optional string value = 111972721; + +} + +// A request message for Addresses.Delete. See the method description for details. +message DeleteAddressRequest { + // Name of the address resource to delete. + string address = 462920692 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. + // + // For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// [Output Only] If errors are generated during processing of the operation, this field will be populated. +message Error { + // [Output Only] The array of errors encountered while processing this operation. + repeated Errors errors = 315977579; + +} + +// +message Errors { + // [Output Only] The error type identifier for this error. + optional string code = 3059181; + + // [Output Only] Indicates the field in the request that caused the error. This property is optional. + optional string location = 290430901; + + // [Output Only] An optional, human-readable error message. + optional string message = 418054151; + +} + +// A request message for RegionOperations.Get. See the method description for details. +message GetRegionOperationRequest { + // Name of the Operations resource to return. + string operation = 52090215 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_response_field) = "name" + ]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// A request message for Addresses.Insert. See the method description for details. +message InsertAddressRequest { + // The body resource for this request + Address address_resource = 483888121 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "project" + ]; + + // Name of the region for this request. + string region = 138946292 [ + (google.api.field_behavior) = REQUIRED, + (google.cloud.operation_request_field) = "region" + ]; + + // An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. + // + // For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + optional string request_id = 37109963; + +} + +// A request message for Addresses.List. See the method description for details. +message ListAddressesRequest { + // A filter expression that filters resources listed in the response. The expression must specify the field name, a comparison operator, and the value that you want to use for filtering. The value must be a string, a number, or a boolean. The comparison operator must be either =, !=, >, or <. + // + // For example, if you are filtering Compute Engine instances, you can exclude instances named example-instance by specifying name != example-instance. + // + // You can also filter nested fields. For example, you could specify scheduling.automaticRestart = false to include instances only if they are not scheduled for automatic restarts. You can use filtering on nested fields to filter based on resource labels. + // + // To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart = true) (cpuPlatform = "Intel Skylake"). By default, each expression is an AND expression. However, you can include AND and OR expressions explicitly. For example, (cpuPlatform = "Intel Skylake") OR (cpuPlatform = "Intel Broadwell") AND (scheduling.automaticRestart = true). + optional string filter = 336120696; + + // The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) + optional uint32 max_results = 54715419; + + // Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. + // + // You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first. + // + // Currently, only sorting by name or creationTimestamp desc is supported. + string order_by = 160562920 [(google.api.field_behavior) = REQUIRED]; + + // Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results. + optional string page_token = 19994697; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// Represents an Operation resource. +// +// Google Compute Engine has three Operation resources: +// +// * [Global](/compute/docs/reference/rest/{$api_version}/globalOperations) * [Regional](/compute/docs/reference/rest/{$api_version}/regionOperations) * [Zonal](/compute/docs/reference/rest/{$api_version}/zoneOperations) +// +// You can use an operation resource to manage asynchronous API requests. For more information, read Handling API responses. +// +// Operations can be global, regional or zonal. +// - For global operations, use the globalOperations resource. +// - For regional operations, use the regionOperations resource. +// - For zonal operations, use the zoneOperations resource. +// +// For more information, read Global, Regional, and Zonal Resources. (== resource_for {$api_version}.globalOperations ==) (== resource_for {$api_version}.regionOperations ==) (== resource_for {$api_version}.zoneOperations ==) +message Operation { + // [Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE. + enum Status { + // A value indicating that the enum field is not set. + UNDEFINED_STATUS = 0; + + DONE = 2104194; + + PENDING = 35394935; + + RUNNING = 121282975; + + } + + // [Output Only] The value of `requestId` if you provided it in the request. Not present otherwise. + optional string client_operation_id = 297240295; + + // [Deprecated] This field is deprecated. + optional string creation_timestamp = 30525366; + + // [Output Only] A textual description of the operation, which is set when the operation is created. + optional string description = 422937596; + + // [Output Only] The time that this operation was completed. This value is in RFC3339 text format. + optional string end_time = 114938801; + + // [Output Only] If errors are generated during processing of the operation, this field will be populated. + optional Error error = 96784904; + + // [Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND. + optional string http_error_message = 202521945 [(google.cloud.operation_field) = ERROR_MESSAGE]; + + // [Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found. + optional int32 http_error_status_code = 312345196 [(google.cloud.operation_field) = ERROR_CODE]; + + // [Output Only] The unique identifier for the operation. This identifier is defined by the server. + optional uint64 id = 3355; + + // [Output Only] The time that this operation was requested. This value is in RFC3339 text format. + optional string insert_time = 433722515; + + // [Output Only] Type of the resource. Always compute#operation for Operation resources. + optional string kind = 3292052; + + // [Output Only] Name of the operation. + optional string name = 3373707 [(google.cloud.operation_field) = NAME]; + + // [Output Only] The type of operation, such as insert, update, or delete, and so on. + optional string operation_type = 177650450; + + // [Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses. + optional int32 progress = 72663597; + + // [Output Only] The URL of the region where the operation resides. Only applicable when performing regional operations. + optional string region = 138946292; + + // [Output Only] Server-defined URL for the resource. + optional string self_link = 456214797; + + // [Output Only] The time that this operation was started by the server. This value is in RFC3339 text format. + optional string start_time = 37467274; + + // [Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE. + optional Status status = 181260274 [(google.cloud.operation_field) = STATUS]; + + // [Output Only] An optional textual description of the current status of the operation. + optional string status_message = 297428154; + + // [Output Only] The unique target ID, which identifies a specific incarnation of the target resource. + optional uint64 target_id = 258165385; + + // [Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk that the snapshot was created from. + optional string target_link = 62671336; + + // [Output Only] User who requested the operation, for example: user@example.com. + optional string user = 3599307; + + // [Output Only] If warning messages are generated during processing of the operation, this field will be populated. + repeated Warnings warnings = 498091095; + + // [Output Only] The URL of the zone where the operation resides. Only applicable when performing per-zone operations. + optional string zone = 3744684; + +} + +// A request message for RegionOperations.Wait. See the method description for details. +message WaitRegionOperationRequest { + // Name of the Operations resource to return. + string operation = 52090215 [(google.api.field_behavior) = REQUIRED]; + + // Project ID for this request. + string project = 227560217 [(google.api.field_behavior) = REQUIRED]; + + // Name of the region for this request. + string region = 138946292 [(google.api.field_behavior) = REQUIRED]; + +} + +// [Output Only] Informational warning message. +message Warning { + // [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response. + enum Code { + // A value indicating that the enum field is not set. + UNDEFINED_CODE = 0; + + CLEANUP_FAILED = 150308440; + + DEPRECATED_RESOURCE_USED = 391835586; + + DEPRECATED_TYPE_USED = 346526230; + + DISK_SIZE_LARGER_THAN_IMAGE_SIZE = 369442967; + + EXPERIMENTAL_TYPE_USED = 451954443; + + EXTERNAL_API_WARNING = 175546307; + + FIELD_VALUE_OVERRIDEN = 329669423; + + INJECTED_KERNELS_DEPRECATED = 417377419; + + MISSING_TYPE_DEPENDENCY = 344505463; + + NEXT_HOP_ADDRESS_NOT_ASSIGNED = 324964999; + + NEXT_HOP_CANNOT_IP_FORWARD = 383382887; + + NEXT_HOP_INSTANCE_NOT_FOUND = 464250446; + + NEXT_HOP_INSTANCE_NOT_ON_NETWORK = 243758146; + + NEXT_HOP_NOT_RUNNING = 417081265; + + NOT_CRITICAL_ERROR = 105763924; + + NO_RESULTS_ON_PAGE = 30036744; + + REQUIRED_TOS_AGREEMENT = 3745539; + + RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING = 496728641; + + RESOURCE_NOT_DELETED = 168598460; + + SCHEMA_VALIDATION_IGNORED = 275245642; + + SINGLE_INSTANCE_PROPERTY_TEMPLATE = 268305617; + + UNDECLARED_PROPERTIES = 390513439; + + UNREACHABLE = 13328052; + + } + + // [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response. + // Check the Code enum for the list of possible values. + optional string code = 3059181; + + // [Output Only] Metadata about this warning in key: value format. For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + repeated Data data = 3076010; + + // [Output Only] A human-readable description of the warning code. + optional string message = 418054151; + +} + +// +message Warnings { + // [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response. + enum Code { + // A value indicating that the enum field is not set. + UNDEFINED_CODE = 0; + + CLEANUP_FAILED = 150308440; + + DEPRECATED_RESOURCE_USED = 391835586; + + DEPRECATED_TYPE_USED = 346526230; + + DISK_SIZE_LARGER_THAN_IMAGE_SIZE = 369442967; + + EXPERIMENTAL_TYPE_USED = 451954443; + + EXTERNAL_API_WARNING = 175546307; + + FIELD_VALUE_OVERRIDEN = 329669423; + + INJECTED_KERNELS_DEPRECATED = 417377419; + + MISSING_TYPE_DEPENDENCY = 344505463; + + NEXT_HOP_ADDRESS_NOT_ASSIGNED = 324964999; + + NEXT_HOP_CANNOT_IP_FORWARD = 383382887; + + NEXT_HOP_INSTANCE_NOT_FOUND = 464250446; + + NEXT_HOP_INSTANCE_NOT_ON_NETWORK = 243758146; + + NEXT_HOP_NOT_RUNNING = 417081265; + + NOT_CRITICAL_ERROR = 105763924; + + NO_RESULTS_ON_PAGE = 30036744; + + REQUIRED_TOS_AGREEMENT = 3745539; + + RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING = 496728641; + + RESOURCE_NOT_DELETED = 168598460; + + SCHEMA_VALIDATION_IGNORED = 275245642; + + SINGLE_INSTANCE_PROPERTY_TEMPLATE = 268305617; + + UNDECLARED_PROPERTIES = 390513439; + + UNREACHABLE = 13328052; + + } + + // [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response. + // Check the Code enum for the list of possible values. + optional string code = 3059181; + + // [Output Only] Metadata about this warning in key: value format. For example: + // "data": [ { "key": "scope", "value": "zones/us-east1-d" } + repeated Data data = 3076010; + + // [Output Only] A human-readable description of the warning code. + optional string message = 418054151; + +} + +// +// Services +// +// The Addresses API. +service Addresses { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves an aggregated list of addresses. + rpc AggregatedList(AggregatedListAddressesRequest) returns (AddressAggregatedList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/aggregated/addresses" + }; + option (google.api.method_signature) = "project"; + } + + // Deletes the specified address resource. + rpc Delete(DeleteAddressRequest) returns (Operation) { + option (google.api.http) = { + delete: "/compute/v1/projects/{project}/regions/{region}/addresses/{address}" + }; + option (google.api.method_signature) = "project,region,address"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Creates an address resource in the specified project by using the data included in the request. + rpc Insert(InsertAddressRequest) returns (Operation) { + option (google.api.http) = { + body: "address_resource" + post: "/compute/v1/projects/{project}/regions/{region}/addresses" + }; + option (google.api.method_signature) = "project,region,address_resource"; + option (google.cloud.operation_service) = "RegionOperations"; + } + + // Retrieves a list of addresses contained within the specified region. + rpc List(ListAddressesRequest) returns (AddressList) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/addresses" + }; + option (google.api.method_signature) = "project,region,order_by"; + } + +} + +// The RegionOperations API. +service RegionOperations { + option (google.api.default_host) = + "compute.googleapis.com"; + + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/compute.readonly," + "https://www.googleapis.com/auth/compute," + "https://www.googleapis.com/auth/cloud-platform"; + + // Retrieves the specified region-specific Operations resource. + rpc Get(GetRegionOperationRequest) returns (Operation) { + option (google.api.http) = { + get: "/compute/v1/projects/{project}/regions/{region}/operations/{operation}" + }; + option (google.api.method_signature) = "project,region,operation"; + option (google.cloud.operation_polling_method) = true; + } + + // Waits for the specified Operation resource to return as `DONE` or for the request to approach the 2 minute deadline, and retrieves the specified Operation resource. This method differs from the `GET` method in that it waits for no more than the default deadline (2 minutes) and then returns the current state of the operation, which might be `DONE` or still in progress. + // + // This method is called on a best-effort basis. Specifically: + // - In uncommon cases, when the server is overloaded, the request might return before the default deadline is reached, or might return after zero seconds. + // - If the default deadline is reached, there is no guarantee that the operation is actually done when the method returns. Be prepared to retry if the operation is not `DONE`. + rpc Wait(WaitRegionOperationRequest) returns (Operation) { + option (google.api.http) = { + post: "/compute/v1/projects/projects/{project}/regions/{region}/operations/{operation}/wait" + }; + option (google.api.method_signature) = "project,region,operation"; + } + +} + diff --git a/google/cloud/compute/v1small/compute_small_gapic.yaml b/google/cloud/compute/v1small/compute_small_gapic.yaml new file mode 100755 index 000000000..47bb045d5 --- /dev/null +++ b/google/cloud/compute/v1small/compute_small_gapic.yaml @@ -0,0 +1,40 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http:#www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Generated by the disco-to-proto3-converter. DO NOT EDIT! +# Source Discovery file: compute.v1small.json +# Source file revision: 20200302 +# API name: compute +# API version: v1small + +type: com.google.api.codegen.ConfigProto +config_schema_version: 2.0.0 +language_settings: + java: + package_name: com.google.cloud.compute.v1small +interfaces: +- name: google.cloud.compute.v1small.Addresses + methods: + - name: Delete + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 + - name: Insert + long_running: + initial_poll_delay_millis: 500 + poll_delay_multiplier: 1.5 + max_poll_delay_millis: 20000 + total_poll_timeout_millis: 600000 diff --git a/google/cloud/compute/v1small/compute_small_grpc_service_config.json b/google/cloud/compute/v1small/compute_small_grpc_service_config.json new file mode 100755 index 000000000..c606316e9 --- /dev/null +++ b/google/cloud/compute/v1small/compute_small_grpc_service_config.json @@ -0,0 +1,33 @@ +{ + "methodConfig" : [ { + "name" : [ { + "service" : "google.cloud.compute.v1small.Addresses", + "method" : "AggregatedList" + }, { + "service" : "google.cloud.compute.v1small.Addresses", + "method" : "List" + }, { + "service" : "google.cloud.compute.v1small.RegionOperations", + "method" : "Get" + } ], + "timeout" : "600s", + "retryPolicy" : { + "initialBackoff" : "0.100s", + "maxBackoff" : "60s", + "backoffMultiplier" : 1.3, + "retryableStatusCodes" : [ "DEADLINE_EXCEEDED", "UNAVAILABLE" ] + } + }, { + "name" : [ { + "service" : "google.cloud.compute.v1small.Addresses", + "method" : "Delete" + }, { + "service" : "google.cloud.compute.v1small.Addresses", + "method" : "Insert" + }, { + "service" : "google.cloud.compute.v1small.RegionOperations", + "method" : "Wait" + } ], + "timeout" : "600s" + } ] +} diff --git a/google/cloud/compute/v1small/compute_small_v1.yaml b/google/cloud/compute/v1small/compute_small_v1.yaml new file mode 100644 index 000000000..ac7dcde0a --- /dev/null +++ b/google/cloud/compute/v1small/compute_small_v1.yaml @@ -0,0 +1,30 @@ +# Copyright 2020 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +type: google.api.Service +config_version: 3 +name: compute.googleapis.com +title: Google Compute Engine API + +apis: +- name: google.cloud.compute.v1small.Addresses +- name: google.cloud.compute.v1small.RegionOperations + +authentication: + rules: + - selector: '*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/compute, + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/contactcenterinsights/BUILD.bazel b/google/cloud/contactcenterinsights/BUILD.bazel new file mode 100644 index 000000000..d57718e1f --- /dev/null +++ b/google/cloud/contactcenterinsights/BUILD.bazel @@ -0,0 +1,39 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-contact_center_insights. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for contactcenterinsights. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "contactcenterinsights_ruby_wrapper", + srcs = ["//google/cloud/contactcenterinsights/v1:contactcenterinsights_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-contact_center_insights", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/contact-center/insights/docs", + "ruby-cloud-api-id=contactcenterinsights.googleapis.com", + "ruby-cloud-api-shortname=contactcenterinsights", + ], + ruby_cloud_description = "Contact Center AI Insights helps users detect and visualize patterns in their contact center data. Understanding conversational data drives business value, improves operational efficiency, and provides a voice for customer feedback.", + ruby_cloud_title = "Contact Center AI Insights", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-contactcenterinsights-ruby", + deps = [ + ":contactcenterinsights_ruby_wrapper", + ], +) diff --git a/google/cloud/contactcenterinsights/v1/BUILD.bazel b/google/cloud/contactcenterinsights/v1/BUILD.bazel index 211162646..7c943da93 100644 --- a/google/cloud/contactcenterinsights/v1/BUILD.bazel +++ b/google/cloud/contactcenterinsights/v1/BUILD.bazel @@ -170,6 +170,11 @@ py_gapic_library( name = "contactcenterinsights_py_gapic", srcs = [":contactcenterinsights_proto"], grpc_service_config = "contactcenterinsights_grpc_service_config.json", + opt_args = [ + "warehouse-package-name=google-cloud-contact-center-insights", + "python-gapic-namespace=google.cloud", + "python-gapic-name=contact_center_insights", + ], ) # Open Source Packages @@ -185,10 +190,10 @@ py_gapic_assembly_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -234,7 +239,7 @@ load( nodejs_gapic_library( name = "contactcenterinsights_nodejs_gapic", - package_name = "@google-cloud/contactcenterinsights", + package_name = "@google-cloud/contact-center-insights", src = ":contactcenterinsights_proto_with_info", extra_protoc_parameters = ["metadata"], grpc_service_config = "contactcenterinsights_grpc_service_config.json", @@ -276,8 +281,15 @@ ruby_grpc_library( ruby_cloud_gapic_library( name = "contactcenterinsights_ruby_gapic", srcs = [":contactcenterinsights_proto_with_info"], - extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-contactcenterinsights-v1"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-contact_center_insights-v1", + "ruby-cloud-product-url=https://cloud.google.com/contact-center/insights/docs", + "ruby-cloud-api-id=contactcenterinsights.googleapis.com", + "ruby-cloud-api-shortname=contactcenterinsights", + ], grpc_service_config = "contactcenterinsights_grpc_service_config.json", + ruby_cloud_description = "Contact Center AI Insights helps users detect and visualize patterns in their contact center data. Understanding conversational data drives business value, improves operational efficiency, and provides a voice for customer feedback.", + ruby_cloud_title = "Contact Center AI Insights V1", deps = [ ":contactcenterinsights_ruby_grpc", ":contactcenterinsights_ruby_proto", @@ -340,4 +352,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "contactcenterinsights_cc_proto", + deps = [":contactcenterinsights_proto"], +) + +cc_grpc_library( + name = "contactcenterinsights_cc_grpc", + srcs = [":contactcenterinsights_proto"], + grpc_only = True, + deps = [":contactcenterinsights_cc_proto"], +) diff --git a/google/cloud/contactcenterinsights/v1/contact_center_insights.proto b/google/cloud/contactcenterinsights/v1/contact_center_insights.proto index 56c254523..8f7e7b9f9 100644 --- a/google/cloud/contactcenterinsights/v1/contact_center_insights.proto +++ b/google/cloud/contactcenterinsights/v1/contact_center_insights.proto @@ -134,6 +134,28 @@ service ContactCenterInsights { }; } + // Creates an issue model. + rpc CreateIssueModel(CreateIssueModelRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/issueModels" + body: "issue_model" + }; + option (google.api.method_signature) = "parent,issue_model"; + option (google.longrunning.operation_info) = { + response_type: "IssueModel" + metadata_type: "CreateIssueModelMetadata" + }; + } + + // Updates an issue model. + rpc UpdateIssueModel(UpdateIssueModelRequest) returns (IssueModel) { + option (google.api.http) = { + patch: "/v1/{issue_model.name=projects/*/locations/*/issueModels/*}" + body: "issue_model" + }; + option (google.api.method_signature) = "issue_model,update_mask"; + } + // Gets an issue model. rpc GetIssueModel(GetIssueModelRequest) returns (IssueModel) { option (google.api.http) = { @@ -150,6 +172,46 @@ service ContactCenterInsights { option (google.api.method_signature) = "parent"; } + // Deletes an issue model. + rpc DeleteIssueModel(DeleteIssueModelRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/issueModels/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "DeleteIssueModelMetadata" + }; + } + + // Deploys an issue model. Returns an error if a model is already deployed. + // An issue model can only be used in analysis after it has been deployed. + rpc DeployIssueModel(DeployIssueModelRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*/issueModels/*}:deploy" + body: "*" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "DeployIssueModelResponse" + metadata_type: "DeployIssueModelMetadata" + }; + } + + // Undeploys an issue model. + // An issue model can not be used in analysis after it has been undeployed. + rpc UndeployIssueModel(UndeployIssueModelRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*/issueModels/*}:undeploy" + body: "*" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "UndeployIssueModelResponse" + metadata_type: "UndeployIssueModelMetadata" + }; + } + // Gets an issue. rpc GetIssue(GetIssueRequest) returns (Issue) { option (google.api.http) = { @@ -166,6 +228,15 @@ service ContactCenterInsights { option (google.api.method_signature) = "parent"; } + // Updates an issue. + rpc UpdateIssue(UpdateIssueRequest) returns (Issue) { + option (google.api.http) = { + patch: "/v1/{issue.name=projects/*/locations/*/issueModels/*/issues/*}" + body: "issue" + }; + option (google.api.method_signature) = "issue,update_mask"; + } + // Gets an issue model's statistics. rpc CalculateIssueModelStats(CalculateIssueModelStatsRequest) returns (CalculateIssueModelStatsResponse) { option (google.api.http) = { @@ -207,6 +278,15 @@ service ContactCenterInsights { option (google.api.method_signature) = "name"; } + // Updates a phrase matcher. + rpc UpdatePhraseMatcher(UpdatePhraseMatcherRequest) returns (PhraseMatcher) { + option (google.api.http) = { + patch: "/v1/{phrase_matcher.name=projects/*/locations/*/phraseMatchers/*}" + body: "phrase_matcher" + }; + option (google.api.method_signature) = "phrase_matcher,update_mask"; + } + // Gets conversation statistics. rpc CalculateStats(CalculateStatsRequest) returns (CalculateStatsResponse) { option (google.api.http) = { @@ -231,6 +311,63 @@ service ContactCenterInsights { }; option (google.api.method_signature) = "settings,update_mask"; } + + // Creates a view. + rpc CreateView(CreateViewRequest) returns (View) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/views" + body: "view" + }; + option (google.api.method_signature) = "parent,view"; + } + + // Gets a view. + rpc GetView(GetViewRequest) returns (View) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/views/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists views. + rpc ListViews(ListViewsRequest) returns (ListViewsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/views" + }; + option (google.api.method_signature) = "parent"; + } + + // Updates a view. + rpc UpdateView(UpdateViewRequest) returns (View) { + option (google.api.http) = { + patch: "/v1/{view.name=projects/*/locations/*/views/*}" + body: "view" + }; + option (google.api.method_signature) = "view,update_mask"; + } + + // Deletes a view. + rpc DeleteView(DeleteViewRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/views/*}" + }; + option (google.api.method_signature) = "name"; + } +} + +// Represents the options for viewing a conversation. +enum ConversationView { + // The conversation view is not specified. + // + // * Defaults to `FULL` in `GetConversationRequest`. + // * Defaults to `BASIC` in `ListConversationsRequest`. + CONVERSATION_VIEW_UNSPECIFIED = 0; + + // Populates all fields in the conversation. + FULL = 2; + + // Populates all fields in the conversation except the transcript. + BASIC = 1; } // The request for calculating conversation statistics. @@ -248,21 +385,28 @@ message CalculateStatsRequest { string filter = 2; } -// Represents the options for views of a conversation. -enum ConversationView { - // Not specified. Defaults to FULL on GetConversationRequest and BASIC for - // ListConversationsRequest. - CONVERSATION_VIEW_UNSPECIFIED = 0; +// The response for calculating conversation statistics. +message CalculateStatsResponse { + // A time series representing conversations over time. + message TimeSeries { + // A single interval in a time series. + message Interval { + // The start time of this interval. + google.protobuf.Timestamp start_time = 1; + + // The number of conversations created in this interval. + int32 conversation_count = 2; + } - // Transcript field is not populated in the response. - BASIC = 1; + // The duration of each interval. + google.protobuf.Duration interval_duration = 1; - // All fields are populated. - FULL = 2; -} + // An ordered list of intervals from earliest to latest, where each interval + // represents the number of conversations that transpired during the time + // window. + repeated Interval points = 2; + } -// The response for calculating conversation statistics. -message CalculateStatsResponse { // The average duration of all conversations. The average is calculated using // only conversations that have a time duration. google.protobuf.Duration average_duration = 1; @@ -283,9 +427,18 @@ message CalculateStatsResponse { // A map associating each issue resource name with its respective number of // matches in the set of conversations. Key has the format: - // `projects//locations//issueModels//issues/` - map issue_matches = 6; + // `projects//locations//issueModels//issues/` + // Deprecated, use `issue_matches_stats` field instead. + map issue_matches = 6 [deprecated = true]; + + // A map associating each issue resource name with its respective number of + // matches in the set of conversations. Key has the format: + // `projects//locations//issueModels//issues/` + map issue_matches_stats = 8; + + // A time series representing the count of conversations created over time + // that match that requested filter criteria. + TimeSeries conversation_count_time_series = 7; } // Metadata for a create analysis operation. @@ -322,8 +475,8 @@ message CreateConversationRequest { // component of the conversation's resource name. If no ID is specified, a // server-generated ID will be used. // - // This value should be 4-32 characters and must match the regular - // expression /^[a-z0-9-]{4,32}$/. Valid characters are /[a-z][0-9]-/ + // This value should be 4-64 characters and must match the regular + // expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-` string conversation_id = 3; } @@ -337,10 +490,10 @@ message ListConversationsRequest { } ]; - // The maximum number of conversations to return in the response. If this - // value is zero, the service will select a default size. A call might return - // fewer objects than requested. A non-empty `next_page_token` in the response - // indicates that more data is available. + // The maximum number of conversations to return in the response. A valid page + // size ranges from 0 to 1,000 inclusive. If the page size is zero or + // unspecified, a default page size of 100 will be chosen. Note that a call + // might return fewer results than the requested page size. int32 page_size = 2; // The value returned by the last `ListConversationsResponse`. This value @@ -361,8 +514,9 @@ message ListConversationsResponse { // The conversations that match the request. repeated Conversation conversations = 1; - // A token, which can be sent as `page_token` to retrieve the next page. - // If this field is omitted, there are no subsequent pages. + // A token which can be sent as `page_token` to retrieve the next page. If + // this field is set, it means there is another page available. If it is not + // set, it means no other pages are available. string next_page_token = 2; } @@ -481,6 +635,11 @@ message DeleteAnalysisRequest { message ExportInsightsDataRequest { // A BigQuery Table Reference. message BigQueryDestination { + // A project ID or number. If specified, then export will attempt to + // write data to this project instead of the resource project. Otherwise, + // the resource project will be used. + string project_id = 3; + // Required. The name of the BigQuery dataset that the snapshot result should be // exported to. If this dataset does not exist, the export call returns an // INVALID_ARGUMENT error. @@ -492,6 +651,19 @@ message ExportInsightsDataRequest { string table = 2; } + // Specifies the action that occurs if the destination table already exists. + enum WriteDisposition { + // Write disposition is not specified. Defaults to WRITE_TRUNCATE. + WRITE_DISPOSITION_UNSPECIFIED = 0; + + // If the table already exists, BigQuery will overwrite the table data and + // use the schema from the load. + WRITE_TRUNCATE = 1; + + // If the table already exists, BigQuery will append data to the table. + WRITE_APPEND = 2; + } + // Exporter destination. oneof destination { // Specified if sink is a BigQuery table. @@ -514,6 +686,9 @@ message ExportInsightsDataRequest { // Format: // projects/{project}/locations/{location}/keyRings/{keyring}/cryptoKeys/{key}/cryptoKeyVersions/{version} string kms_key = 4; + + // Options for what to do if the destination table already exists. + WriteDisposition write_disposition = 5; } // Metadata for an export insights operation. @@ -537,6 +712,41 @@ message ExportInsightsDataResponse { } +// The request to create an issue model. +message CreateIssueModelRequest { + // Required. The parent resource of the issue model. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The issue model to create. + IssueModel issue_model = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Metadata for creating an issue model. +message CreateIssueModelMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The original request for creation. + CreateIssueModelRequest request = 3; +} + +// The request to update an issue model. +message UpdateIssueModelRequest { + // Required. The new values for the issue model. + IssueModel issue_model = 1 [(google.api.field_behavior) = REQUIRED]; + + // The list of fields to be updated. + google.protobuf.FieldMask update_mask = 2; +} + // Request to list issue models. message ListIssueModelsRequest { // Required. The parent resource of the issue model. @@ -565,6 +775,85 @@ message GetIssueModelRequest { ]; } +// The request to delete an issue model. +message DeleteIssueModelRequest { + // Required. The name of the issue model to delete. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "contactcenterinsights.googleapis.com/IssueModel" + } + ]; +} + +// Metadata for deleting an issue model. +message DeleteIssueModelMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The original request for deletion. + DeleteIssueModelRequest request = 3; +} + +// The request to deploy an issue model. +message DeployIssueModelRequest { + // Required. The issue model to deploy. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "contactcenterinsights.googleapis.com/IssueModel" + } + ]; +} + +// The response to deploy an issue model. +message DeployIssueModelResponse { + +} + +// Metadata for deploying an issue model. +message DeployIssueModelMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The original request for deployment. + DeployIssueModelRequest request = 3; +} + +// The request to undeploy an issue model. +message UndeployIssueModelRequest { + // Required. The issue model to undeploy. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "contactcenterinsights.googleapis.com/IssueModel" + } + ]; +} + +// The response to undeploy an issue model. +message UndeployIssueModelResponse { + +} + +// Metadata for undeploying an issue model. +message UndeployIssueModelMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The original request for undeployment. + UndeployIssueModelRequest request = 3; +} + // The request to get an issue. message GetIssueRequest { // Required. The name of the issue to get. @@ -593,6 +882,15 @@ message ListIssuesResponse { repeated Issue issues = 1; } +// The request to update an issue. +message UpdateIssueRequest { + // Required. The new values for the issue. + Issue issue = 1 [(google.api.field_behavior) = REQUIRED]; + + // The list of fields to be updated. + google.protobuf.FieldMask update_mask = 2; +} + // Request to get statistics of an issue model. message CalculateIssueModelStatsRequest { // Required. The resource name of the issue model to query against. @@ -686,6 +984,15 @@ message DeletePhraseMatcherRequest { ]; } +// The request to update a phrase matcher. +message UpdatePhraseMatcherRequest { + // Required. The new values for the phrase matcher. + PhraseMatcher phrase_matcher = 1 [(google.api.field_behavior) = REQUIRED]; + + // The list of fields to be updated. + google.protobuf.FieldMask update_mask = 2; +} + // The request to get project-level settings. message GetSettingsRequest { // Required. The name of the settings resource to get. @@ -699,9 +1006,89 @@ message GetSettingsRequest { // The request to update project-level settings. message UpdateSettingsRequest { - // Required. The new values for the conversation. + // Required. The new settings values. Settings settings = 1 [(google.api.field_behavior) = REQUIRED]; // Required. The list of fields to be updated. google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; } + +// The request to create a view. +message CreateViewRequest { + // Required. The parent resource of the view. Required. The location to create + // a view for. + // Format: `projects//locations/` or + // `projects//locations/` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The view resource to create. + View view = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// The request to get a view. +message GetViewRequest { + // Required. The name of the view to get. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "contactcenterinsights.googleapis.com/View" + } + ]; +} + +// The request to list views. +message ListViewsRequest { + // Required. The parent resource of the views. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // The maximum number of views to return in the response. If this + // value is zero, the service will select a default size. A call may return + // fewer objects than requested. A non-empty `next_page_token` in the response + // indicates that more data is available. + int32 page_size = 2; + + // The value returned by the last `ListViewsResponse`; indicates + // that this is a continuation of a prior `ListViews` call and + // the system should return the next page of data. + string page_token = 3; +} + +// The response of listing views. +message ListViewsResponse { + // The views that match the request. + repeated View views = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// The request to update a view. +message UpdateViewRequest { + // Required. The new view. + View view = 1 [(google.api.field_behavior) = REQUIRED]; + + // The list of fields to be updated. + google.protobuf.FieldMask update_mask = 2; +} + +// The request to delete a view. +message DeleteViewRequest { + // Required. The name of the view to delete. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "contactcenterinsights.googleapis.com/View" + } + ]; +} diff --git a/google/cloud/contactcenterinsights/v1/contactcenterinsights_v1.yaml b/google/cloud/contactcenterinsights/v1/contactcenterinsights_v1.yaml index c3f1637bc..e1d41770f 100644 --- a/google/cloud/contactcenterinsights/v1/contactcenterinsights_v1.yaml +++ b/google/cloud/contactcenterinsights/v1/contactcenterinsights_v1.yaml @@ -8,8 +8,14 @@ apis: types: - name: google.cloud.contactcenterinsights.v1.CreateAnalysisOperationMetadata +- name: google.cloud.contactcenterinsights.v1.CreateIssueModelMetadata +- name: google.cloud.contactcenterinsights.v1.DeleteIssueModelMetadata +- name: google.cloud.contactcenterinsights.v1.DeployIssueModelMetadata +- name: google.cloud.contactcenterinsights.v1.DeployIssueModelResponse - name: google.cloud.contactcenterinsights.v1.ExportInsightsDataMetadata - name: google.cloud.contactcenterinsights.v1.ExportInsightsDataResponse +- name: google.cloud.contactcenterinsights.v1.UndeployIssueModelMetadata +- name: google.cloud.contactcenterinsights.v1.UndeployIssueModelResponse http: rules: diff --git a/google/cloud/contactcenterinsights/v1/resources.proto b/google/cloud/contactcenterinsights/v1/resources.proto index 368a50cb4..1ac8c4c2f 100644 --- a/google/cloud/contactcenterinsights/v1/resources.proto +++ b/google/cloud/contactcenterinsights/v1/resources.proto @@ -20,7 +20,6 @@ import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/protobuf/duration.proto"; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option csharp_namespace = "Google.Cloud.ContactCenterInsights.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/contactcenterinsights/v1;contactcenterinsights"; @@ -29,6 +28,11 @@ option java_outer_classname = "ResourcesProto"; option java_package = "com.google.cloud.contactcenterinsights.v1"; option php_namespace = "Google\\Cloud\\ContactCenterInsights\\V1"; option ruby_package = "Google::Cloud::ContactCenterInsights::V1"; +option (google.api.resource_definition) = { + type: "dialogflow.googleapis.com/Participant" + pattern: "projects/{project}/conversations/{conversation}/participants/{participant}" + pattern: "projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}" +}; // The conversation resource. message Conversation { @@ -68,31 +72,16 @@ message Conversation { float confidence = 4; } - // The participant of the transcript segment. - message Participant { - // The role of the participant. - enum Role { - // Participant's role is not set. - ROLE_UNSPECIFIED = 0; - - // Participant is a human agent. - HUMAN_AGENT = 1; - - // Participant is an automated agent. - AUTOMATED_AGENT = 2; - - // Participant is an end user who conversed with the contact center. - END_USER = 3; - } - - // The name of the Dialogflow participant. Format: - // projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant} - string dialogflow_participant = 1; - - // The role of the participant. - Role role = 2; + // Metadata from Dialogflow relating to the current transcript segment. + message DialogflowSegmentMetadata { + // Whether the transcript segment was covered under the configured smart + // reply allowlist in Agent Assist. + bool smart_reply_allowlist_covered = 1; } + // The time that the message occurred, if provided. + google.protobuf.Timestamp message_time = 6; + // The text of this segment. string text = 1; @@ -115,7 +104,13 @@ message Conversation { int32 channel_tag = 5; // The participant of this segment. - Participant participant = 8; + ConversationParticipant segment_participant = 9; + + // CCAI metadata relating to the current transcript segment. + DialogflowSegmentMetadata dialogflow_segment_metadata = 10; + + // The sentiment for this transcript segment. + SentimentData sentiment = 11; } // A list of sequential transcript segments that comprise the conversation. @@ -124,7 +119,7 @@ message Conversation { // Possible media for the conversation. enum Medium { - // Default value. + // Default value, if unspecified will default to PHONE_CALL. MEDIUM_UNSPECIFIED = 0; // The format for conversations that took place over the phone. @@ -185,7 +180,7 @@ message Conversation { // Output only. The conversation transcript. Transcript transcript = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Immutable. The conversation medium. + // Immutable. The conversation medium, if unspecified will default to PHONE_CALL. Medium medium = 9 [(google.api.field_behavior) = IMMUTABLE]; // Output only. The duration of the conversation. @@ -205,6 +200,9 @@ message Conversation { // Dialogflow intent, format: // projects/{project}/agent/{agent}/intents/{intent} map dialogflow_intents = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Obfuscated user ID which the customer sent to us. + string obfuscated_user_id = 21; } // The analysis resource. @@ -302,7 +300,10 @@ message AnalysisResult { // Issue Modeling result on a conversation. message IssueModelResult { // Issue model that generates the result. - string issue_model = 1; + // Format: projects/{project}/locations/{location}/issueModels/{issue_model} + string issue_model = 1 [(google.api.resource_reference) = { + type: "contactcenterinsights.googleapis.com/IssueModel" + }]; // All the matched issues. repeated IssueAssignment issues = 2; @@ -325,6 +326,10 @@ message IssueAssignment { // Score indicating the likelihood of the issue assignment. // currently bounded on [0,1]. double score = 2; + + // Immutable. Display name of the assigned issue. This field is set at time of analyis + // and immutable since then. + string display_name = 3 [(google.api.field_behavior) = IMMUTABLE]; } // A piece of metadata that applies to a window of a call. @@ -368,11 +373,6 @@ message CallAnnotation { message AnnotationBoundary { // A detailed boundary, which describes a more specific point. oneof detailed_boundary { - // Deprecated: Use `word_index` for the detailed boundary. - // The time offset of this boundary with respect to the start time of the - // first word in the transcript piece. - google.protobuf.Duration time_offset = 2 [deprecated = true]; - // The word index of this boundary with respect to the first word in the // transcript piece. This index starts at zero. int32 word_index = 3; @@ -586,6 +586,21 @@ message IssueModel { pattern: "projects/{project}/locations/{location}/issueModels/{issue_model}" }; + // Configs for the input data used to create the issue model. + message InputDataConfig { + // Medium of conversations used in training data. This field is being + // deprecated. To specify the medium to be used in training a new issue + // model, set the `medium` field on `filter`. + Conversation.Medium medium = 1 [deprecated = true]; + + // Output only. Number of conversations used in training. Output only. + int64 training_conversations_count = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // A filter to reduce the conversations used for training the model to a + // specific subset. + string filter = 3; + } + // State of the model. enum State { // Unspecified. @@ -625,6 +640,9 @@ message IssueModel { // Output only. State of the model. State state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + // Configs for the input data that used to create the issue model. + InputDataConfig input_data_config = 6; + // Output only. Immutable. The issue model's label statistics on its training data. IssueModelLabelStats training_stats = 7 [ (google.api.field_behavior) = OUTPUT_ONLY, @@ -665,6 +683,9 @@ message IssueModelLabelStats { // Number of conversations attached to the issue at this point in time. int64 labeled_conversations_count = 2; + + // Display name of the issue. + string display_name = 3; } // Number of conversations the issue model has analyzed at this point in time. @@ -734,6 +755,14 @@ message PhraseMatcher { // Output only. The most recent time at which the activation status was updated. google.protobuf.Timestamp activation_update_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The role whose utterances the phrase matcher should be matched + // against. If the role is ROLE_UNSPECIFIED it will be matched against any + // utterances in the transcript. + ConversationParticipant.Role role_match = 10; + + // Output only. The most recent time at which the phrase matcher was updated. + google.protobuf.Timestamp update_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; } // A message representing a rule in the phrase matcher. @@ -833,6 +862,8 @@ message Settings { // * "create-analysis": Notify each time an analysis is created. // * "create-conversation": Notify each time a conversation is created. // * "export-insights-data": Notify each time an export is complete. + // * "update-conversation": Notify each time a conversation is updated via + // UpdateConversation. // // Values are Pub/Sub topics. The format of each Pub/Sub topic is: // projects/{project}/topics/{topic} @@ -1015,3 +1046,71 @@ message DialogflowInteractionData { // (completely certain). float confidence = 2; } + +// The call participant speaking for a given utterance. +message ConversationParticipant { + // The role of the participant. + enum Role { + // Participant's role is not set. + ROLE_UNSPECIFIED = 0; + + // Participant is a human agent. + HUMAN_AGENT = 1; + + // Participant is an automated agent. + AUTOMATED_AGENT = 2; + + // Participant is an end user who conversed with the contact center. + END_USER = 3; + + // Participant is either a human or automated agent. + ANY_AGENT = 4; + } + + oneof participant { + // The name of the participant provided by Dialogflow. Format: + // projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant} + string dialogflow_participant_name = 5 [(google.api.resource_reference) = { + type: "dialogflow.googleapis.com/Participant" + }]; + + // A user-specified ID representing the participant. + string user_id = 6; + } + + // Deprecated. Use `dialogflow_participant_name` instead. + // The name of the Dialogflow participant. Format: + // projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant} + string dialogflow_participant = 1 [deprecated = true]; + + // Obfuscated user ID from Dialogflow. + string obfuscated_external_user_id = 3; + + // The role of the participant. + Role role = 2; +} + +// The View resource. +message View { + option (google.api.resource) = { + type: "contactcenterinsights.googleapis.com/View" + pattern: "projects/{project}/locations/{location}/views/{view}" + }; + + // Immutable. The resource name of the view. + // Format: + // projects/{project}/locations/{location}/views/{view} + string name = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // The human-readable display name of the view. + string display_name = 2; + + // Output only. The time at which this view was created. + google.protobuf.Timestamp create_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The most recent time at which the view was updated. + google.protobuf.Timestamp update_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // String with specific view properties. + string value = 5; +} diff --git a/google/cloud/datacatalog/BUILD.bazel b/google/cloud/datacatalog/BUILD.bazel new file mode 100644 index 000000000..b704a4115 --- /dev/null +++ b/google/cloud/datacatalog/BUILD.bazel @@ -0,0 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-data_catalog. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for datacatalog. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "datacatalog_ruby_wrapper", + srcs = ["//google/cloud/datacatalog/v1:datacatalog_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-data_catalog", + "ruby-cloud-env-prefix=DATA_CATALOG", + "ruby-cloud-wrapper-of=v1:0.7", + "ruby-cloud-product-url=https://cloud.google.com/data-catalog", + "ruby-cloud-api-id=datacatalog.googleapis.com", + "ruby-cloud-api-shortname=datacatalog", + ], + ruby_cloud_description = "Data Catalog is a centralized and unified data catalog service for all your Cloud resources, where users and systems can discover data, explore and curate its semantics, understand how to act on it, and help govern its usage.", + ruby_cloud_title = "Data Catalog", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-datacatalog-ruby", + deps = [ + ":datacatalog_ruby_wrapper", + ], +) diff --git a/google/cloud/datacatalog/v1/BUILD.bazel b/google/cloud/datacatalog/v1/BUILD.bazel index aaa2fca1f..649c9f30e 100644 --- a/google/cloud/datacatalog/v1/BUILD.bazel +++ b/google/cloud/datacatalog/v1/BUILD.bazel @@ -21,6 +21,7 @@ load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") proto_library( name = "datacatalog_proto", srcs = [ + "bigquery.proto", "common.proto", "data_source.proto", "datacatalog.proto", @@ -32,6 +33,7 @@ proto_library( "table_spec.proto", "tags.proto", "timestamps.proto", + "usage.proto", ], deps = [ "//google/api:annotations_proto", @@ -190,14 +192,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -357,4 +358,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "datacatalog_cc_proto", + deps = [":datacatalog_proto"], +) + +cc_grpc_library( + name = "datacatalog_cc_grpc", + srcs = [":datacatalog_proto"], + grpc_only = True, + deps = [":datacatalog_cc_proto"], +) diff --git a/google/cloud/datacatalog/v1/bigquery.proto b/google/cloud/datacatalog/v1/bigquery.proto new file mode 100644 index 000000000..8fff4ebd4 --- /dev/null +++ b/google/cloud/datacatalog/v1/bigquery.proto @@ -0,0 +1,82 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.datacatalog.v1; + +import "google/api/field_behavior.proto"; + +option cc_enable_arenas = true; +option csharp_namespace = "Google.Cloud.DataCatalog.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/datacatalog/v1;datacatalog"; +option java_multiple_files = true; +option java_outer_classname = "BigQueryProto"; +option java_package = "com.google.cloud.datacatalog.v1"; +option php_namespace = "Google\\Cloud\\DataCatalog\\V1"; +option ruby_package = "Google::Cloud::DataCatalog::V1"; + +// Specification for the BigQuery connection. +message BigQueryConnectionSpec { + // The type of the BigQuery connection. + enum ConnectionType { + // Unspecified type. + CONNECTION_TYPE_UNSPECIFIED = 0; + + // Cloud SQL connection. + CLOUD_SQL = 1; + } + + // The type of the BigQuery connection. + ConnectionType connection_type = 1; + + oneof connection_spec { + // Specification for the BigQuery connection to a Cloud SQL instance. + CloudSqlBigQueryConnectionSpec cloud_sql = 2; + } + + // True if there are credentials attached to the BigQuery connection; false + // otherwise. + bool has_credential = 3; +} + +// Specification for the BigQuery connection to a Cloud SQL instance. +message CloudSqlBigQueryConnectionSpec { + // Supported Cloud SQL database types. + enum DatabaseType { + // Unspecified database type. + DATABASE_TYPE_UNSPECIFIED = 0; + + // Cloud SQL for PostgreSQL. + POSTGRES = 1; + + // Cloud SQL for MySQL. + MYSQL = 2; + } + + // Cloud SQL instance ID in the format of `project:location:instance`. + string instance_id = 1; + + // Database name. + string database = 2; + + // Type of the Cloud SQL database. + DatabaseType type = 3; +} + +// Fields specific for BigQuery routines. +message BigQueryRoutineSpec { + // Paths of the imported libraries. + repeated string imported_libraries = 1; +} diff --git a/google/cloud/datacatalog/v1/common.proto b/google/cloud/datacatalog/v1/common.proto index f8d4817cf..2856643d1 100644 --- a/google/cloud/datacatalog/v1/common.proto +++ b/google/cloud/datacatalog/v1/common.proto @@ -16,6 +16,8 @@ syntax = "proto3"; package google.cloud.datacatalog.v1; +import "google/protobuf/timestamp.proto"; + option cc_enable_arenas = true; option csharp_namespace = "Google.Cloud.DataCatalog.V1"; option go_package = "google.golang.org/genproto/googleapis/cloud/datacatalog/v1;datacatalog"; @@ -24,8 +26,7 @@ option java_package = "com.google.cloud.datacatalog.v1"; option php_namespace = "Google\\Cloud\\DataCatalog\\V1"; option ruby_package = "Google::Cloud::DataCatalog::V1"; -// This enum describes all the possible systems that Data Catalog integrates -// with. +// This enum lists all the systems that Data Catalog integrates with. enum IntegratedSystem { // Default unknown system. INTEGRATED_SYSTEM_UNSPECIFIED = 0; diff --git a/google/cloud/datacatalog/v1/data_source.proto b/google/cloud/datacatalog/v1/data_source.proto index a4696a019..3abec0929 100644 --- a/google/cloud/datacatalog/v1/data_source.proto +++ b/google/cloud/datacatalog/v1/data_source.proto @@ -27,9 +27,9 @@ option java_package = "com.google.cloud.datacatalog.v1"; option php_namespace = "Google\\Cloud\\DataCatalog\\V1"; option ruby_package = "Google::Cloud::DataCatalog::V1"; -// Describes the physical location of an entry. +// Physical location of an entry. message DataSource { - // Service name where the data is stored. + // Name of a service that stores the data. enum Service { // Default unknown service. SERVICE_UNSPECIFIED = 0; @@ -41,10 +41,11 @@ message DataSource { BIGQUERY = 2; } - // Service in which the data is physically stored. + // Service that physically stores the data. Service service = 1; - // Full name of the resource as defined by the service, e.g. - // //bigquery.googleapis.com/projects/{project_id}/locations/{location}/datasets/{dataset_id}/tables/{table_id} + // Full name of a resource as defined by the service. For example: + // + // `//bigquery.googleapis.com/projects/{PROJECT_ID}/locations/{LOCATION}/datasets/{DATASET_ID}/tables/{TABLE_ID}` string resource = 2; } diff --git a/google/cloud/datacatalog/v1/datacatalog.proto b/google/cloud/datacatalog/v1/datacatalog.proto index 3f356587e..2b2ebb2e3 100644 --- a/google/cloud/datacatalog/v1/datacatalog.proto +++ b/google/cloud/datacatalog/v1/datacatalog.proto @@ -20,6 +20,7 @@ import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/cloud/datacatalog/v1/bigquery.proto"; import "google/cloud/datacatalog/v1/common.proto"; import "google/cloud/datacatalog/v1/data_source.proto"; import "google/cloud/datacatalog/v1/gcs_fileset_spec.proto"; @@ -28,6 +29,7 @@ import "google/cloud/datacatalog/v1/search.proto"; import "google/cloud/datacatalog/v1/table_spec.proto"; import "google/cloud/datacatalog/v1/tags.proto"; import "google/cloud/datacatalog/v1/timestamps.proto"; +import "google/cloud/datacatalog/v1/usage.proto"; import "google/iam/v1/iam_policy.proto"; import "google/iam/v1/policy.proto"; import "google/protobuf/empty.proto"; @@ -46,28 +48,27 @@ option (google.api.resource_definition) = { pattern: "projects/{project}/locations/{location}/tagTemplates/{tag_template}/fields/{tag_template_field_id}/enumValues/{enum_value_display_name}" }; -// Data Catalog API service allows clients to discover, understand, and manage -// their data. +// Data Catalog API service allows you to discover, understand, and manage +// your data. service DataCatalog { option (google.api.default_host) = "datacatalog.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; - // Searches Data Catalog for multiple resources like entries, tags that + // Searches Data Catalog for multiple resources like entries and tags that // match a query. // - // This is a custom method - // (https://cloud.google.com/apis/design/custom_methods) and does not return - // the complete resource, only the resource identifier and high level - // fields. Clients can subsequently call `Get` methods. + // This is a [Custom Method] + // (https://cloud.google.com/apis/design/custom_methods) that doesn't return + // all information on a resource, only its ID and high level fields. To get + // more information, you can subsequently call specific get methods. // - // Note that Data Catalog search queries do not guarantee full recall. Query - // results that match your query may not be returned, even in subsequent - // result pages. Also note that results returned (and not returned) can vary - // across repeated search queries. + // Note: Data Catalog search queries don't guarantee full recall. Results + // that match your query might not be returned, even in subsequent + // result pages. Additionally, returned (and not returned) results can vary + // if you repeat search queries. // - // See [Data Catalog Search - // Syntax](https://cloud.google.com/data-catalog/docs/how-to/search-reference) - // for more information. + // For more information, see [Data Catalog search syntax] + // (https://cloud.google.com/data-catalog/docs/how-to/search-reference). rpc SearchCatalog(SearchCatalogRequest) returns (SearchCatalogResponse) { option (google.api.http) = { post: "/v1/catalog:search" @@ -76,25 +77,33 @@ service DataCatalog { option (google.api.method_signature) = "scope,query"; } - // Creates an EntryGroup. + // Creates an entry group. // - // An entry group contains logically related entries together with Cloud - // Identity and Access Management policies that specify the users who can - // create, edit, and view entries within the entry group. + // An entry group contains logically related entries together with [Cloud + // Identity and Access Management](/data-catalog/docs/concepts/iam) policies. + // These policies specify users who can create, edit, and view entries + // within entry groups. // - // Data Catalog automatically creates an entry group for BigQuery entries - // ("@bigquery") and Pub/Sub topics ("@pubsub"). Users create their own entry - // group to contain Cloud Storage fileset entries or custom type entries, - // and the IAM policies associated with those entries. Entry groups, like - // entries, can be searched. + // Data Catalog automatically creates entry groups with names that start with + // the `@` symbol for the following resources: + // + // * BigQuery entries (`@bigquery`) + // * Pub/Sub topics (`@pubsub`) + // * Dataproc Metastore services (`@dataproc_metastore_{SERVICE_NAME_HASH}`) + // + // You can create your own entry groups for Cloud Storage fileset entries + // and custom entries together with the corresponding IAM policies. + // User-created entry groups can't contain the `@` symbol, it is reserved + // for automatically created groups. + // + // Entry groups, like entries, can be searched. // // A maximum of 10,000 entry groups may be created per organization across all // locations. // - // Users should enable the Data Catalog API in the project identified by - // the `parent` parameter (see [Data Catalog Resource Project] - // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for - // more information). + // You must enable the Data Catalog API in the project identified by + // the `parent` parameter. For more information, see [Data Catalog resource + // project](https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc CreateEntryGroup(CreateEntryGroupRequest) returns (EntryGroup) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*}/entryGroups" @@ -103,7 +112,7 @@ service DataCatalog { option (google.api.method_signature) = "parent,entry_group_id,entry_group"; } - // Gets an EntryGroup. + // Gets an entry group. rpc GetEntryGroup(GetEntryGroupRequest) returns (EntryGroup) { option (google.api.http) = { get: "/v1/{name=projects/*/locations/*/entryGroups/*}" @@ -112,11 +121,12 @@ service DataCatalog { option (google.api.method_signature) = "name,read_mask"; } - // Updates an EntryGroup. The user should enable the Data Catalog API in the - // project identified by the `entry_group.name` parameter (see [Data Catalog - // Resource Project] - // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for - // more information). + // Updates an entry group. + // + // You must enable the Data Catalog API in the project identified by + // the `entry_group.name` parameter. For more information, see [Data Catalog + // resource + // project](https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc UpdateEntryGroup(UpdateEntryGroupRequest) returns (EntryGroup) { option (google.api.http) = { patch: "/v1/{entry_group.name=projects/*/locations/*/entryGroups/*}" @@ -126,11 +136,12 @@ service DataCatalog { option (google.api.method_signature) = "entry_group,update_mask"; } - // Deletes an EntryGroup. Only entry groups that do not contain entries can be - // deleted. Users should enable the Data Catalog API in the project - // identified by the `name` parameter (see [Data Catalog Resource Project] - // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for - // more information). + // Deletes an entry group. + // + // You must enable the Data Catalog API in the project + // identified by the `name` parameter. For more information, see [Data Catalog + // resource + // project](https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc DeleteEntryGroup(DeleteEntryGroupRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v1/{name=projects/*/locations/*/entryGroups/*}" @@ -146,15 +157,17 @@ service DataCatalog { option (google.api.method_signature) = "parent"; } - // Creates an entry. Only entries of types 'FILESET', 'CLUSTER', 'DATA_STREAM' - // or with a user-specified type can be created. + // Creates an entry. + // + // You can create entries only with 'FILESET', 'CLUSTER', 'DATA_STREAM', + // or custom types. Data Catalog automatically creates entries with other + // types during metadata ingestion from integrated systems. // - // Users should enable the Data Catalog API in the project identified by - // the `parent` parameter (see [Data Catalog Resource Project] - // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for - // more information). + // You must enable the Data Catalog API in the project identified by + // the `parent` parameter. For more information, see [Data Catalog resource + // project](https://cloud.google.com/data-catalog/docs/concepts/resource-project). // - // A maximum of 100,000 entries may be created per entry group. + // An entry group can have a maximum of 100,000 entries. rpc CreateEntry(CreateEntryRequest) returns (Entry) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*/entryGroups/*}/entries" @@ -164,10 +177,11 @@ service DataCatalog { } // Updates an existing entry. - // Users should enable the Data Catalog API in the project identified by - // the `entry.name` parameter (see [Data Catalog Resource Project] - // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for - // more information). + // + // You must enable the Data Catalog API in the project identified by + // the `entry.name` parameter. For more information, see [Data Catalog + // resource + // project](https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc UpdateEntry(UpdateEntryRequest) returns (Entry) { option (google.api.http) = { patch: "/v1/{entry.name=projects/*/locations/*/entryGroups/*/entries/*}" @@ -177,13 +191,16 @@ service DataCatalog { option (google.api.method_signature) = "entry,update_mask"; } - // Deletes an existing entry. Only entries created through + // Deletes an existing entry. + // + // You can delete only the entries created by the // [CreateEntry][google.cloud.datacatalog.v1.DataCatalog.CreateEntry] - // method can be deleted. - // Users should enable the Data Catalog API in the project identified by - // the `name` parameter (see [Data Catalog Resource Project] - // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for - // more information). + // method. + // + // You must enable the Data Catalog API in the project identified by + // the `name` parameter. For more information, see [Data Catalog + // resource + // project](https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc DeleteEntry(DeleteEntryRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v1/{name=projects/*/locations/*/entryGroups/*/entries/*}" @@ -199,9 +216,9 @@ service DataCatalog { option (google.api.method_signature) = "name"; } - // Get an entry by target resource name. This method allows clients to use - // the resource name from the source Google Cloud Platform service to get the - // Data Catalog Entry. + // Gets an entry by its target resource name. + // + // The resource name comes from the source Google Cloud Platform service. rpc LookupEntry(LookupEntryRequest) returns (Entry) { option (google.api.http) = { get: "/v1/entries:lookup" @@ -209,6 +226,10 @@ service DataCatalog { } // Lists entries. + // + // Note: Currently, this method can list only custom entries. + // To get a list of both custom and automatically created entries, use + // [SearchCatalog][google.cloud.datacatalog.v1.DataCatalog.SearchCatalog]. rpc ListEntries(ListEntriesRequest) returns (ListEntriesResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*/entryGroups/*}/entries" @@ -216,11 +237,12 @@ service DataCatalog { option (google.api.method_signature) = "parent"; } - // Creates a tag template. The user should enable the Data Catalog API in - // the project identified by the `parent` parameter (see [Data Catalog - // Resource - // Project](https://cloud.google.com/data-catalog/docs/concepts/resource-project) - // for more information). + // Creates a tag template. + // + // You must enable the Data Catalog API in the project identified by the + // `parent` parameter. + // For more information, see [Data Catalog resource project] + // (https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc CreateTagTemplate(CreateTagTemplateRequest) returns (TagTemplate) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*}/tagTemplates" @@ -237,13 +259,15 @@ service DataCatalog { option (google.api.method_signature) = "name"; } - // Updates a tag template. This method cannot be used to update the fields of - // a template. The tag template fields are represented as separate resources - // and should be updated using their own create/update/delete methods. - // Users should enable the Data Catalog API in the project identified by - // the `tag_template.name` parameter (see [Data Catalog Resource Project] - // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for - // more information). + // Updates a tag template. + // + // You can't update template fields with this method. These fields are + // separate resources with their own create, update, and delete methods. + // + // You must enable the Data Catalog API in the project identified by + // the `tag_template.name` parameter. For more information, see [Data Catalog + // resource + // project](https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc UpdateTagTemplate(UpdateTagTemplateRequest) returns (TagTemplate) { option (google.api.http) = { patch: "/v1/{tag_template.name=projects/*/locations/*/tagTemplates/*}" @@ -253,11 +277,11 @@ service DataCatalog { option (google.api.method_signature) = "tag_template,update_mask"; } - // Deletes a tag template and all tags using the template. - // Users should enable the Data Catalog API in the project identified by - // the `name` parameter (see [Data Catalog Resource Project] - // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for - // more information). + // Deletes a tag template and all tags that use it. + // + // You must enable the Data Catalog API in the project identified by + // the `name` parameter. For more information, see [Data Catalog resource + // project](https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc DeleteTagTemplate(DeleteTagTemplateRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v1/{name=projects/*/locations/*/tagTemplates/*}" @@ -265,11 +289,11 @@ service DataCatalog { option (google.api.method_signature) = "name,force"; } - // Creates a field in a tag template. The user should enable the Data Catalog - // API in the project identified by the `parent` parameter (see - // [Data Catalog Resource - // Project](https://cloud.google.com/data-catalog/docs/concepts/resource-project) - // for more information). + // Creates a field in a tag template. + // + // You must enable the Data Catalog API in the project identified by + // the `parent` parameter. For more information, see [Data Catalog resource + // project](https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc CreateTagTemplateField(CreateTagTemplateFieldRequest) returns (TagTemplateField) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*/tagTemplates/*}/fields" @@ -278,11 +302,14 @@ service DataCatalog { option (google.api.method_signature) = "parent,tag_template_field_id,tag_template_field"; } - // Updates a field in a tag template. This method cannot be used to update the - // field type. Users should enable the Data Catalog API in the project - // identified by the `name` parameter (see [Data Catalog Resource Project] - // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for - // more information). + // Updates a field in a tag template. + // + // You can't update the field type with this method. + // + // You must enable the Data Catalog API in the project + // identified by the `name` parameter. For more information, see [Data Catalog + // resource + // project](https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc UpdateTagTemplateField(UpdateTagTemplateFieldRequest) returns (TagTemplateField) { option (google.api.http) = { patch: "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*}" @@ -292,11 +319,11 @@ service DataCatalog { option (google.api.method_signature) = "name,tag_template_field,update_mask"; } - // Renames a field in a tag template. The user should enable the Data Catalog - // API in the project identified by the `name` parameter (see [Data Catalog - // Resource - // Project](https://cloud.google.com/data-catalog/docs/concepts/resource-project) - // for more information). + // Renames a field in a tag template. + // + // You must enable the Data Catalog API in the project identified by the + // `name` parameter. For more information, see [Data Catalog resource project] + // (https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc RenameTagTemplateField(RenameTagTemplateFieldRequest) returns (TagTemplateField) { option (google.api.http) = { post: "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*}:rename" @@ -305,8 +332,9 @@ service DataCatalog { option (google.api.method_signature) = "name,new_tag_template_field_id"; } - // Renames an enum value in a tag template. The enum values have to be unique - // within one enum field. + // Renames an enum value in a tag template. + // + // Within a single enum field, enum values must be unique. rpc RenameTagTemplateFieldEnumValue(RenameTagTemplateFieldEnumValueRequest) returns (TagTemplateField) { option (google.api.http) = { post: "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*/enumValues/*}:rename" @@ -315,11 +343,12 @@ service DataCatalog { option (google.api.method_signature) = "name,new_enum_value_display_name"; } - // Deletes a field in a tag template and all uses of that field. - // Users should enable the Data Catalog API in the project identified by - // the `name` parameter (see [Data Catalog Resource Project] - // (https://cloud.google.com/data-catalog/docs/concepts/resource-project) for - // more information). + // Deletes a field in a tag template and all uses of this field from the tags + // based on this template. + // + // You must enable the Data Catalog API in the project identified by + // the `name` parameter. For more information, see [Data Catalog resource + // project](https://cloud.google.com/data-catalog/docs/concepts/resource-project). rpc DeleteTagTemplateField(DeleteTagTemplateFieldRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v1/{name=projects/*/locations/*/tagTemplates/*/fields/*}" @@ -327,13 +356,18 @@ service DataCatalog { option (google.api.method_signature) = "name,force"; } - // Creates a tag on an [Entry][google.cloud.datacatalog.v1.Entry]. - // Note: The project identified by the `parent` parameter for the - // [tag](https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.entryGroups.entries.tags/create#path-parameters) - // and the - // [tag - // template](https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.tagTemplates/create#path-parameters) - // used to create the tag must be from the same organization. + // Creates a tag and assigns it to: + // + // * An [Entry][google.cloud.datacatalog.v1.Entry] if the method name is + // `projects.locations.entryGroups.entries.tags.create`. + // * Or [EntryGroup][google.cloud.datacatalog.v1.EntryGroup]if the method + // name is `projects.locations.entryGroups.tags.create`. + // + // Note: The project identified by the `parent` parameter for the [tag] + // (https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.entryGroups.entries.tags/create#path-parameters) + // and the [tag template] + // (https://cloud.google.com/data-catalog/docs/reference/rest/v1/projects.locations.tagTemplates/create#path-parameters) + // used to create the tag must be in the same organization. rpc CreateTag(CreateTagRequest) returns (Tag) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*/entryGroups/*/entries/*}/tags" @@ -371,7 +405,7 @@ service DataCatalog { option (google.api.method_signature) = "name"; } - // Lists the tags on an [Entry][google.cloud.datacatalog.v1.Entry]. + // Lists tags assigned to an [Entry][google.cloud.datacatalog.v1.Entry]. rpc ListTags(ListTagsRequest) returns (ListTagsResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*/entryGroups/*/entries/*}/tags" @@ -382,20 +416,23 @@ service DataCatalog { option (google.api.method_signature) = "parent"; } - // Sets the access control policy for a resource. Replaces any existing + // Sets an access control policy for a resource. Replaces any existing // policy. + // // Supported resources are: - // - Tag templates. - // - Entries. - // - Entry groups. - // Note, this method cannot be used to manage policies for BigQuery, Pub/Sub - // and any external Google Cloud Platform resources synced to Data Catalog. - // - // Callers must have following Google IAM permission - // - `datacatalog.tagTemplates.setIamPolicy` to set policies on tag - // templates. - // - `datacatalog.entries.setIamPolicy` to set policies on entries. - // - `datacatalog.entryGroups.setIamPolicy` to set policies on entry groups. + // + // - Tag templates + // - Entry groups + // + // Note: This method sets policies only within Data Catalog and can't be + // used to manage policies in BigQuery, Pub/Sub, Dataproc Metastore, and any + // external Google Cloud Platform resources synced with the Data Catalog. + // + // To call this method, you must have the following Google IAM permissions: + // + // - `datacatalog.tagTemplates.setIamPolicy` to set policies on tag + // templates. + // - `datacatalog.entryGroups.setIamPolicy` to set policies on entry groups. rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) returns (google.iam.v1.Policy) { option (google.api.http) = { post: "/v1/{resource=projects/*/locations/*/tagTemplates/*}:setIamPolicy" @@ -408,22 +445,27 @@ service DataCatalog { option (google.api.method_signature) = "resource,policy"; } - // Gets the access control policy for a resource. A `NOT_FOUND` error - // is returned if the resource does not exist. An empty policy is returned - // if the resource exists but does not have a policy set on it. + // Gets the access control policy for a resource. + // + // May return: + // + // * A`NOT_FOUND` error if the resource doesn't exist or you don't have the + // permission to view it. + // * An empty policy if the resource exists but doesn't have a set policy. // // Supported resources are: - // - Tag templates. - // - Entries. - // - Entry groups. - // Note, this method cannot be used to manage policies for BigQuery, Pub/Sub - // and any external Google Cloud Platform resources synced to Data Catalog. - // - // Callers must have following Google IAM permission - // - `datacatalog.tagTemplates.getIamPolicy` to get policies on tag - // templates. - // - `datacatalog.entries.getIamPolicy` to get policies on entries. - // - `datacatalog.entryGroups.getIamPolicy` to get policies on entry groups. + // + // - Tag templates + // - Entry groups + // + // Note: This method doesn't get policies from Google Cloud Platform + // resources ingested into Data Catalog. + // + // To call this method, you must have the following Google IAM permissions: + // + // - `datacatalog.tagTemplates.getIamPolicy` to get policies on tag + // templates. + // - `datacatalog.entryGroups.getIamPolicy` to get policies on entry groups. rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) returns (google.iam.v1.Policy) { option (google.api.http) = { post: "/v1/{resource=projects/*/locations/*/tagTemplates/*}:getIamPolicy" @@ -440,19 +482,20 @@ service DataCatalog { option (google.api.method_signature) = "resource"; } - // Returns the caller's permissions on a resource. - // If the resource does not exist, an empty set of permissions is returned - // (We don't return a `NOT_FOUND` error). + // Gets your permissions on a resource. + // + // Returns an empty set of permissions if the resource doesn't exist. // // Supported resources are: - // - Tag templates. - // - Entries. - // - Entry groups. - // Note, this method cannot be used to manage policies for BigQuery, Pub/Sub - // and any external Google Cloud Platform resources synced to Data Catalog. - // - // A caller is not required to have Google IAM permission to make this - // request. + // + // - Tag templates + // - Entry groups + // + // Note: This method gets policies only within Data Catalog and can't be + // used to get policies from BigQuery, Pub/Sub, Dataproc Metastore, and any + // external Google Cloud Platform resources ingested into Data Catalog. + // + // No Google IAM permissions are required to call this method. rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) returns (google.iam.v1.TestIamPermissionsResponse) { option (google.api.http) = { post: "/v1/{resource=projects/*/locations/*/tagTemplates/*}:testIamPermissions" @@ -474,76 +517,96 @@ service DataCatalog { message SearchCatalogRequest { // The criteria that select the subspace used for query matching. message Scope { - // The list of organization IDs to search within. To find your organization - // ID, follow instructions in - // https://cloud.google.com/resource-manager/docs/creating-managing-organization. + // The list of organization IDs to search within. + // + // To find your organization ID, follow the steps from + // [Creating and managing organizations] + // (/resource-manager/docs/creating-managing-organization). repeated string include_org_ids = 2; - // The list of project IDs to search within. To learn more about the - // distinction between project names/IDs/numbers, go to - // https://cloud.google.com/docs/overview/#projects. + // The list of project IDs to search within. + // + // For more information on the distinction between project names, IDs, and + // numbers, see [Projects](/docs/overview/#projects). repeated string include_project_ids = 3; - // If `true`, include Google Cloud Platform (GCP) public datasets in the - // search results. Info on GCP public datasets is available at - // https://cloud.google.com/public-datasets/. By default, GCP public - // datasets are excluded. + // If `true`, include Google Cloud Platform (GCP) public datasets in + // search results. By default, they are excluded. + // + // See [Google Cloud Public Datasets](/public-datasets) for more + // information. bool include_gcp_public_datasets = 7; - // Optional. The list of locations to search within. - // 1. If empty, search will be performed in all locations; - // 2. If any of the locations are NOT [supported - // regions](https://cloud.google.com/data-catalog/docs/concepts/regions#supported_regions), - // error will be returned; - // 3. Otherwise, search only the given locations for matching results. - // Typical usage is to leave this field empty. When a location is - // unreachable as returned in the `SearchCatalogResponse.unreachable` field, - // users can repeat the search request with this parameter set to get - // additional information on the error. + // Optional. The list of locations to search within. If empty, all locations are + // searched. + // + // Returns an error if any location in the list isn't one of the [Supported + // regions](https://cloud.google.com/data-catalog/docs/concepts/regions#supported_regions). + // + // If a location is unreachable, its name is returned in the + // `SearchCatalogResponse.unreachable` field. To get additional information + // on the error, repeat the search request and set the location name as the + // value of this parameter. repeated string restricted_locations = 16 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If `true`, include [public tag + // templates][google.cloud.datacatalog.v1.TagTemplate.is_publicly_readable] + // in the search results. By default, they are included only if you have + // explicit permissions on them to view them. For example, if you are the + // owner. + // + // Other scope fields, for example, `include_org_ids`, + // still restrict the returned public tag templates and at least one of + // them is required. + bool include_public_tag_templates = 19 [(google.api.field_behavior) = OPTIONAL]; } - // Required. The scope of this search request. A `scope` that has empty - // `include_org_ids`, `include_project_ids` AND false - // `include_gcp_public_datasets` is considered invalid. Data Catalog will - // return an error in such a case. + // Required. The scope of this search request. + // + // The `scope` is invalid if `include_org_ids`, `include_project_ids` are + // empty AND `include_gcp_public_datasets` is set to `false`. In this case, + // the request returns an error. Scope scope = 6 [(google.api.field_behavior) = REQUIRED]; - // Optional. The query string in search query syntax. An empty query string will result - // in all data assets (in the specified scope) that the user has access to. + // Optional. The query string with a minimum of 3 characters and specific syntax. + // For more information, see + // [Data Catalog search + // syntax](https://cloud.google.com/data-catalog/docs/how-to/search-reference). // - // Query strings can be simple as "x" or more qualified as: + // An empty query string returns all data assets (in the specified scope) + // that you have access to. // - // * name:x - // * column:x - // * description:y + // A query string can be a simple `xyz` or qualified by predicates: // - // Note: Query tokens need to have a minimum of 3 characters for substring - // matching to work correctly. See [Data Catalog Search - // Syntax](https://cloud.google.com/data-catalog/docs/how-to/search-reference) - // for more information. + // * `name:x` + // * `column:y` + // * `description:z` string query = 1 [(google.api.field_behavior) = OPTIONAL]; - // Number of results in the search page. If <=0 then defaults to 10. Max limit - // for page_size is 1000. Throws an invalid argument for page_size > 1000. + // Number of results to return in a single search page. + // + // Can't be negative or 0, defaults to 10 in this case. + // The maximum number is 1000. If exceeded, throws an "invalid argument" + // exception. int32 page_size = 2; - // Optional. Pagination token returned in an earlier - // [SearchCatalogResponse.next_page_token][google.cloud.datacatalog.v1.SearchCatalogResponse.next_page_token], which - // indicates that this is a continuation of a prior + // Optional. Pagination token that, if specified, returns the next page of search + // results. If empty, returns the first page. + // + // This token is returned in the [SearchCatalogResponse.next_page_token][google.cloud.datacatalog.v1.SearchCatalogResponse.next_page_token] + // field of the response to a previous // [SearchCatalogRequest][google.cloud.datacatalog.v1.DataCatalog.SearchCatalog] - // call, and that the system should return the next page of data. If empty, - // the first page is returned. + // call. string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; - // Specifies the ordering of results, currently supported case-sensitive - // choices are: + // Specifies the order of results. // - // * `relevance`, only supports descending - // * `last_modified_timestamp [asc|desc]`, defaults to descending if not - // specified + // Currently supported case-sensitive values are: // - // If not specified, defaults to `relevance` descending. + // * `relevance` that can only be descending + // * `last_modified_timestamp [asc|desc]` with descending (`desc`) as default + // + // If this parameter is omitted, it defaults to the descending `relevance`. string order_by = 5; } @@ -553,22 +616,23 @@ message SearchCatalogResponse { // Search results. repeated SearchCatalogResult results = 1; - // The token that can be used to retrieve the next page of results. + // Pagination token that can be used in subsequent calls to retrieve the next + // page of results. string next_page_token = 3; - // Unreachable locations. Search result does not include data from those - // locations. Users can get additional information on the error by repeating - // the search request with a more restrictive parameter -- setting the value - // for `SearchDataCatalogRequest.scope.restricted_locations`. + // Unreachable locations. Search results don't include data from those + // locations. + // + // To get additional information on an error, repeat the search request and + // restrict it to specific locations by setting the + // `SearchCatalogRequest.scope.restricted_locations` parameter. repeated string unreachable = 6; } // Request message for // [CreateEntryGroup][google.cloud.datacatalog.v1.DataCatalog.CreateEntryGroup]. message CreateEntryGroupRequest { - // Required. The name of the project this entry group belongs to. Example: - // - // `projects/{project_id}/locations/{location}` + // Required. The names of the project and location that the new entry group belongs to. // // Note: The entry group itself and its child resources might not be // stored in the location specified in its name. @@ -586,14 +650,14 @@ message CreateEntryGroupRequest { // The maximum size is 64 bytes when encoded in UTF-8. string entry_group_id = 3 [(google.api.field_behavior) = REQUIRED]; - // The entry group to create. Defaults to an empty entry group. + // The entry group to create. Defaults to empty. EntryGroup entry_group = 2; } // Request message for // [UpdateEntryGroup][google.cloud.datacatalog.v1.DataCatalog.UpdateEntryGroup]. message UpdateEntryGroupRequest { - // Required. The updated entry group. "name" field must be set. + // Required. Updates for the entry group. The `name` field must be set. EntryGroup entry_group = 1 [(google.api.field_behavior) = REQUIRED]; // Names of fields whose values to overwrite on an entry group. @@ -607,8 +671,7 @@ message UpdateEntryGroupRequest { // Request message for // [GetEntryGroup][google.cloud.datacatalog.v1.DataCatalog.GetEntryGroup]. message GetEntryGroupRequest { - // Required. The name of the entry group. For example, - // `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`. + // Required. The name of the entry group to get. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -616,15 +679,14 @@ message GetEntryGroupRequest { } ]; - // The fields to return. If not set or empty, all fields are returned. + // The fields to return. If empty or omitted, all fields are returned. google.protobuf.FieldMask read_mask = 2; } // Request message for // [DeleteEntryGroup][google.cloud.datacatalog.v1.DataCatalog.DeleteEntryGroup]. message DeleteEntryGroupRequest { - // Required. The name of the entry group. For example, - // `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}`. + // Required. The name of the entry group to delete. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -639,10 +701,9 @@ message DeleteEntryGroupRequest { // Request message for // [ListEntryGroups][google.cloud.datacatalog.v1.DataCatalog.ListEntryGroups]. message ListEntryGroupsRequest { - // Required. The name of the location that contains the entry groups, which can be - // provided in URL format. Example: + // Required. The name of the location that contains the entry groups to list. // - // * projects/{project_id}/locations/{location} + // Can be provided as a URL. string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -650,32 +711,32 @@ message ListEntryGroupsRequest { } ]; - // Optional. The maximum number of items to return. Default is 10. Max limit is 1000. - // Throws an invalid argument for `page_size > 1000`. + // Optional. The maximum number of items to return. + // + // Default is 10. Maximum limit is 1000. + // Throws an invalid argument if `page_size` is greater than 1000. int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Token that specifies which page is requested. If empty, the first page is - // returned. + // Optional. Pagination token that specifies the next page to return. + // If empty, returns the first page. string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; } // Response message for // [ListEntryGroups][google.cloud.datacatalog.v1.DataCatalog.ListEntryGroups]. message ListEntryGroupsResponse { - // EntryGroup details. + // Entry group details. repeated EntryGroup entry_groups = 1; - // Token to retrieve the next page of results. It is set to empty if no items - // remain in results. + // Pagination token to specify in the next call to retrieve the next page of + // results. Empty if there are no more items. string next_page_token = 2; } // Request message for // [CreateEntry][google.cloud.datacatalog.v1.DataCatalog.CreateEntry]. message CreateEntryRequest { - // Required. The name of the entry group this entry belongs to. Example: - // - // `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}` + // Required. The name of the entry group this entry belongs to. // // Note: The entry itself and its child resources might not be stored in // the location specified in its name. @@ -700,7 +761,7 @@ message CreateEntryRequest { // Request message for // [UpdateEntry][google.cloud.datacatalog.v1.DataCatalog.UpdateEntry]. message UpdateEntryRequest { - // Required. The updated entry. The "name" field must be set. + // Required. Updates for the entry. The `name` field must be set. Entry entry = 1 [(google.api.field_behavior) = REQUIRED]; // Names of fields whose values to overwrite on an entry. @@ -709,33 +770,36 @@ message UpdateEntryRequest { // are overwritten. If such fields are non-required and omitted in the // request body, their values are emptied. // - // The following fields are modifiable: - // - // * For entries with type `DATA_STREAM`: - // * `schema` - // * For entries with type `FILESET`: - // * `schema` - // * `display_name` - // * `description` - // * `gcs_fileset_spec` - // * `gcs_fileset_spec.file_patterns` - // * For entries with `user_specified_type`: - // * `schema` - // * `display_name` - // * `description` - // * `user_specified_type` - // * `user_specified_system` - // * `linked_resource` - // * `source_system_timestamps` + // You can modify only the fields listed below. + // + // For entries with type `DATA_STREAM`: + // + // * `schema` + // + // For entries with type `FILESET`: + // + // * `schema` + // * `display_name` + // * `description` + // * `gcs_fileset_spec` + // * `gcs_fileset_spec.file_patterns` + // + // For entries with `user_specified_type`: + // + // * `schema` + // * `display_name` + // * `description` + // * `user_specified_type` + // * `user_specified_system` + // * `linked_resource` + // * `source_system_timestamps` google.protobuf.FieldMask update_mask = 2; } // Request message for // [DeleteEntry][google.cloud.datacatalog.v1.DataCatalog.DeleteEntry]. message DeleteEntryRequest { - // Required. The name of the entry. Example: - // - // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id} + // Required. The name of the entry to delete. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -747,9 +811,7 @@ message DeleteEntryRequest { // Request message for // [GetEntry][google.cloud.datacatalog.v1.DataCatalog.GetEntry]. message GetEntryRequest { - // Required. The name of the entry. Example: - // - // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id} + // Required. The name of the entry to get. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -761,32 +823,32 @@ message GetEntryRequest { // Request message for // [LookupEntry][google.cloud.datacatalog.v1.DataCatalog.LookupEntry]. message LookupEntryRequest { - // Required. Represents either the Google Cloud Platform resource or SQL name - // for a Google Cloud Platform resource. + // Required. A full name, SQL name, or a fully qualified name of a + // Google Cloud Platform resource. oneof target_name { // The full name of the Google Cloud Platform resource the Data Catalog - // entry represents. See: - // https://cloud.google.com/apis/design/resource_names#full_resource_name. - // Full names are case-sensitive. + // entry represents. For more information, see [Full Resource Name] + // (https://cloud.google.com/apis/design/resource_names#full_resource_name). // - // Examples: + // Full names are case-sensitive. For example: // - // * //bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId - // * //pubsub.googleapis.com/projects/projectId/topics/topicId + // * `//bigquery.googleapis.com/projects/{PROJECT_ID}/datasets/{DATASET_ID}/tables/{TABLE_ID}` + // * `//pubsub.googleapis.com/projects/{PROJECT_ID}/topics/{TOPIC_ID}` string linked_resource = 1; // The SQL name of the entry. SQL names are case-sensitive. // // Examples: // - // * `pubsub.project_id.topic_id` - // * ``pubsub.project_id.`topic.id.with.dots` `` - // * `bigquery.table.project_id.dataset_id.table_id` - // * `bigquery.dataset.project_id.dataset_id` - // * `datacatalog.entry.project_id.location_id.entry_group_id.entry_id` + // * `pubsub.topic.{PROJECT_ID}.{TOPIC_ID}` + // * `pubsub.topic.{PROJECT_ID}.`\``{TOPIC.ID.SEPARATED.WITH.DOTS}`\` + // * `bigquery.table.{PROJECT_ID}.{DATASET_ID}.{TABLE_ID}` + // * `bigquery.dataset.{PROJECT_ID}.{DATASET_ID}` + // * `datacatalog.entry.{PROJECT_ID}.{LOCATION_ID}.{ENTRY_GROUP_ID}.{ENTRY_ID}` // - // `*_id`s should satisfy the standard SQL rules for identifiers. - // https://cloud.google.com/bigquery/docs/reference/standard-sql/lexical. + // Identifiers (`*_ID`) should comply with the + // [Lexical structure in Standard SQL] + // (https://cloud.google.com/bigquery/docs/reference/standard-sql/lexical). string sql_resource = 3; // Fully qualified name (FQN) of the resource. @@ -803,20 +865,20 @@ message LookupEntryRequest { // // Example for a DPMS table: // - // `dataproc_metastore:project_id.location_id.instance_id.database_id.table_id` + // `dataproc_metastore:{PROJECT_ID}.{LOCATION_ID}.{INSTANCE_ID}.{DATABASE_ID}.{TABLE_ID}` string fully_qualified_name = 5; } } -// Entry Metadata. -// A Data Catalog Entry resource represents another resource in Google +// Entry metadata. +// A Data Catalog entry represents another resource in Google // Cloud Platform (such as a BigQuery dataset or a Pub/Sub topic) or -// outside of Google Cloud Platform. Clients can use the `linked_resource` field -// in the Entry resource to refer to the original resource ID of the source +// outside of it. You can use the `linked_resource` field +// in the entry resource to refer to the original resource ID of the source // system. // -// An Entry resource contains resource details, such as its schema. An Entry can -// also be used to attach flexible metadata, such as a +// An entry resource contains resource details, for example, its schema. +// Additionally, you can attach flexible metadata to an entry in the form of a // [Tag][google.cloud.datacatalog.v1.Tag]. message Entry { option (google.api.resource) = { @@ -825,9 +887,6 @@ message Entry { }; // Output only. The resource name of an entry in URL format. - // Example: - // - // `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}` // // Note: The entry itself and its child resources might not be // stored in the location specified in its name. @@ -840,14 +899,14 @@ message Entry { // The resource this metadata entry refers to. // - // For Google Cloud Platform resources, `linked_resource` is the [full name of - // the - // resource](https://cloud.google.com/apis/design/resource_names#full_resource_name). + // For Google Cloud Platform resources, `linked_resource` is the + // [Full Resource Name] + // (https://cloud.google.com/apis/design/resource_names#full_resource_name). // For example, the `linked_resource` for a table resource from BigQuery is: // - // `//bigquery.googleapis.com/projects/{projectId}/datasets/{datasetId}/tables/{tableId}` + // `//bigquery.googleapis.com/projects/{PROJECT_ID}/datasets/{DATASET_ID}/tables/{TABLE_ID}` // - // Output only when entry is one of the types in the `EntryType` enum. + // Output only when the entry is one of the types in the `EntryType` enum. // // For entries with a `user_specified_type`, this field is optional and // defaults to an empty string. @@ -863,6 +922,7 @@ message Entry { // and read-only afterwards. Can be used for search and lookup of the entries. // // + // // FQNs take two forms: // // * For non-regionalized resources: @@ -875,67 +935,88 @@ message Entry { // // Example for a DPMS table: // - // `dataproc_metastore:project_id.location_id.instance_id.database_id.table_id` + // `dataproc_metastore:{PROJECT_ID}.{LOCATION_ID}.{INSTANCE_ID}.{DATABASE_ID}.{TABLE_ID}` string fully_qualified_name = 29; // Required. Entry type. oneof entry_type { // The type of the entry. - // Only used for Entries with types in the EntryType enum. + // Only used for entries with types listed in the `EntryType` enum. + // + // Currently, only `FILESET` enum value is allowed. All other entries + // created in Data Catalog must use the `user_specified_type`. EntryType type = 2; - // Entry type if it does not fit any of the input-allowed values listed in - // `EntryType` enum above. When creating an entry, users should check the - // enum values first, if nothing matches the entry to be created, then - // provide a custom value, for example "my_special_type". - // `user_specified_type` strings must begin with a letter or underscore and - // can only contain letters, numbers, and underscores; are case insensitive; - // must be at least 1 character and at most 64 characters long. + // Custom entry type that doesn't match any of the values allowed for input + // and listed in the `EntryType` enum. + // + // When creating an entry, first check the type values in the enum. + // If there are no appropriate types for the new entry, + // provide a custom value, for example, `my_special_type`. + // + // The `user_specified_type` string has the following limitations: // - // Currently, only FILESET enum value is allowed. All other entries created - // through Data Catalog must use `user_specified_type`. + // * Is case insensitive. + // * Must begin with a letter or underscore. + // * Can only contain letters, numbers, and underscores. + // * Must be at least 1 character and at most 64 characters long. string user_specified_type = 16; } // The source system of the entry. oneof system { - // Output only. This field indicates the entry's source system that Data Catalog - // integrates with, such as BigQuery or Pub/Sub. + // Output only. Indicates the entry's source system that Data Catalog + // integrates with, such as BigQuery, Pub/Sub, or Dataproc Metastore. IntegratedSystem integrated_system = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - // This field indicates the entry's source system that Data Catalog does not - // integrate with. `user_specified_system` strings must begin with a letter - // or underscore and can only contain letters, numbers, and underscores; are - // case insensitive; must be at least 1 character and at most 64 characters - // long. + // Indicates the entry's source system that Data Catalog doesn't + // automatically integrate with. + // + // The `user_specified_system` string has the following limitations: + // + // * Is case insensitive. + // * Must begin with a letter or underscore. + // * Can only contain letters, numbers, and underscores. + // * Must be at least 1 character and at most 64 characters long. string user_specified_system = 18; } - // Type specification information. + // Type specification. oneof type_spec { - // Specification that applies to a Cloud Storage fileset. This is only valid - // on entries of type FILESET. + // Specification that applies to a Cloud Storage fileset. Valid only + // for entries with the `FILESET` type. GcsFilesetSpec gcs_fileset_spec = 6; - // Specification that applies to a BigQuery table. This is only valid on - // entries of type `TABLE`. + // Specification that applies to a BigQuery table. Valid only for + // entries with the `TABLE` type. BigQueryTableSpec bigquery_table_spec = 12; - // Specification for a group of BigQuery tables with name pattern - // `[prefix]YYYYMMDD`. Context: - // https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding. + // Specification for a group of BigQuery tables with the `[prefix]YYYYMMDD` + // name pattern. + // + // For more information, see [Introduction to partitioned tables] + // (https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding). BigQueryDateShardedSpec bigquery_date_sharded_spec = 15; } - // Type- and system- specific information. Specifications for types contain - // fields common to all entries of a given type, and sub-specs with fields - // specific to a given source system. - // When extending the API with new types and systems please use this instead - // of legacy type_spec field. + // Type- and system-specific information. Specifications for types contain + // fields common to all entries of a given type, and sub-specifications with + // fields specific to a given source system. + // + // When extending the API with new types and systems, use this field instead + // of the legacy `type_spec`. oneof spec { - // Specification that applies to a table resource. Only valid - // for entries of `TABLE` type. + // Specification that applies to a table resource. Valid only + // for entries with the `TABLE` type. DatabaseTableSpec database_table_spec = 24; + + // Specification that applies to a data source connection. Valid only + // for entries with the `DATA_SOURCE_CONNECTION` type. + DataSourceConnectionSpec data_source_connection_spec = 27; + + // Specification that applies to a user-defined function or procedure. Valid + // only for entries with the `ROUTINE` type. + RoutineSpec routine_spec = 28; } // Display name of an entry. @@ -959,18 +1040,30 @@ message Entry { // Schema of the entry. An entry might not have any schema attached to it. Schema schema = 5; - // Timestamps about the underlying resource, not about this Data Catalog - // entry. Output only when Entry is of type in the EntryType enum. For entries - // with user_specified_type, this field is optional and defaults to an empty - // timestamp. + // Timestamps from the underlying resource, not from the Data Catalog + // entry. + // + // Output only when the entry has a type listed in the `EntryType` enum. + // For entries with `user_specified_type`, this field is optional and defaults + // to an empty timestamp. SystemTimestamps source_system_timestamps = 7; + // Output only. Resource usage statistics. + UsageSignal usage_signal = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Cloud labels attached to the entry. + // + // In Data Catalog, you can create and modify labels attached only to custom + // entries. Synced entries have unmodifiable labels that come from the source + // system. + map labels = 14; + // Output only. Physical location of the entry. DataSource data_source = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; } -// Specification that applies to a table resource. Only valid -// for entries of `TABLE` type. +// Specification that applies to a table resource. Valid only +// for entries with the `TABLE` type. message DatabaseTableSpec { // Type of the table. enum TableType { @@ -988,8 +1081,87 @@ message DatabaseTableSpec { TableType type = 1; } -// EntryGroup Metadata. -// An EntryGroup resource represents a logical grouping of zero or more +// Specification that applies to a data source connection. Valid only for +// entries with the `DATA_SOURCE_CONNECTION` type. +message DataSourceConnectionSpec { + // Fields specific to BigQuery connections. + BigQueryConnectionSpec bigquery_connection_spec = 1; +} + +// Specification that applies to a routine. Valid only for +// entries with the `ROUTINE` type. +message RoutineSpec { + // Input or output argument of a function or stored procedure. + message Argument { + // The input or output mode of the argument. + enum Mode { + // Unspecified mode. + MODE_UNSPECIFIED = 0; + + // The argument is input-only. + IN = 1; + + // The argument is output-only. + OUT = 2; + + // The argument is both an input and an output. + INOUT = 3; + } + + // The name of the argument. A return argument of a function might not have + // a name. + string name = 1; + + // Specifies whether the argument is input or output. + Mode mode = 2; + + // Type of the argument. The exact value depends on the source system and + // the language. + string type = 3; + } + + // The fine-grained type of the routine. + enum RoutineType { + // Unspecified type. + ROUTINE_TYPE_UNSPECIFIED = 0; + + // Non-builtin permanent scalar function. + SCALAR_FUNCTION = 1; + + // Stored procedure. + PROCEDURE = 2; + } + + // The type of the routine. + RoutineType routine_type = 1; + + // The language the routine is written in. The exact value depends on the + // source system. For BigQuery routines, possible values are: + // + // * `SQL` + // * `JAVASCRIPT` + string language = 2; + + // Arguments of the routine. + repeated Argument routine_arguments = 3; + + // Return type of the argument. The exact value depends on the source system + // and the language. + string return_type = 4; + + // The body of the routine. + string definition_body = 5; + + // Contains fields specific to the source system. + oneof system_spec { + // Fields specific for BigQuery routines. + BigQueryRoutineSpec bigquery_routine_spec = 6; + } +} + +// Entry group metadata. +// +// An `EntryGroup` resource represents a logical grouping of zero or more // Data Catalog [Entry][google.cloud.datacatalog.v1.Entry] resources. message EntryGroup { option (google.api.resource) = { @@ -997,9 +1169,7 @@ message EntryGroup { pattern: "projects/{project}/locations/{location}/entryGroups/{entry_group}" }; - // The resource name of the entry group in URL format. Example: - // - // `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}` + // The resource name of the entry group in URL format. // // Note: The entry group itself and its child resources might not be // stored in the location specified in its name. @@ -1009,12 +1179,12 @@ message EntryGroup { // "analytics data - jan 2011". Default value is an empty string. string display_name = 2; - // Entry group description, which can consist of several sentences or - // paragraphs that describe entry group contents. Default value is an empty - // string. + // Entry group description. Can consist of several sentences or + // paragraphs that describe the entry group contents. + // Default value is an empty string. string description = 3; - // Output only. Timestamps about this EntryGroup. Default value is empty timestamps. + // Output only. Timestamps of the entry group. Default value is empty. SystemTimestamps data_catalog_timestamps = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; } @@ -1023,10 +1193,6 @@ message EntryGroup { message CreateTagTemplateRequest { // Required. The name of the project and the template location // [region](https://cloud.google.com/data-catalog/docs/concepts/regions). - // - // Example: - // - // * projects/{project_id}/locations/us-central1 string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1048,9 +1214,7 @@ message CreateTagTemplateRequest { // Request message for // [GetTagTemplate][google.cloud.datacatalog.v1.DataCatalog.GetTagTemplate]. message GetTagTemplateRequest { - // Required. The name of the tag template. Example: - // - // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id} + // Required. The name of the tag template to get. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1062,24 +1226,27 @@ message GetTagTemplateRequest { // Request message for // [UpdateTagTemplate][google.cloud.datacatalog.v1.DataCatalog.UpdateTagTemplate]. message UpdateTagTemplateRequest { - // Required. The template to update. The "name" field must be set. + // Required. The template to update. The `name` field must be set. TagTemplate tag_template = 1 [(google.api.field_behavior) = REQUIRED]; // Names of fields whose values to overwrite on a tag template. Currently, - // only `display_name` can be overwritten. + // only `display_name` and `is_publicly_readable` can be overwritten. // - // In general, if this parameter is absent or empty, all modifiable fields + // If this parameter is absent or empty, all modifiable fields // are overwritten. If such fields are non-required and omitted in the // request body, their values are emptied. + // + // Note: Updating the `is_publicly_readable` field may require up to 12 + // hours to take effect in search results. Additionally, it also requires + // the `tagTemplates.getIamPolicy` and `tagTemplates.setIamPolicy` + // permissions. google.protobuf.FieldMask update_mask = 2; } // Request message for // [DeleteTagTemplate][google.cloud.datacatalog.v1.DataCatalog.DeleteTagTemplate]. message DeleteTagTemplateRequest { - // Required. The name of the tag template to delete. Example: - // - // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id} + // Required. The name of the tag template to delete. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1087,19 +1254,19 @@ message DeleteTagTemplateRequest { } ]; - // Required. Currently, this field must always be set to `true`. - // This confirms the deletion of any possible tags using this template. - // `force = false` will be supported in the future. + // Required. If true, deletes all tags that use this template. + // + // Currently, `true` is the only supported value. bool force = 2 [(google.api.field_behavior) = REQUIRED]; } // Request message for // [CreateTag][google.cloud.datacatalog.v1.DataCatalog.CreateTag]. message CreateTagRequest { - // Required. The name of the resource to attach this tag to. Tags can be attached to - // entries. An entry can have up to 1000 attached tags. Example: + // Required. The name of the resource to attach this tag to. // - // `projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}` + // Tags can be attached to entries or entry groups. An entry can have up to + // 1000 attached tags. // // Note: The tag and its child resources might not be stored in // the location specified in its name. @@ -1132,9 +1299,7 @@ message UpdateTagRequest { // Request message for // [DeleteTag][google.cloud.datacatalog.v1.DataCatalog.DeleteTag]. message DeleteTagRequest { - // Required. The name of the tag to delete. Example: - // - // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}/tags/{tag_id} + // Required. The name of the tag to delete. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1148,10 +1313,6 @@ message DeleteTagRequest { message CreateTagTemplateFieldRequest { // Required. The name of the project and the template location // [region](https://cloud.google.com/data-catalog/docs/concepts/regions). - // - // Example: - // - // * projects/{project_id}/locations/us-central1/tagTemplates/{tag_template_id} string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1176,9 +1337,7 @@ message CreateTagTemplateFieldRequest { // Request message for // [UpdateTagTemplateField][google.cloud.datacatalog.v1.DataCatalog.UpdateTagTemplateField]. message UpdateTagTemplateFieldRequest { - // Required. The name of the tag template field. Example: - // - // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id} + // Required. The name of the tag template field. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1192,9 +1351,9 @@ message UpdateTagTemplateFieldRequest { // Optional. Names of fields whose values to overwrite on an individual field of a tag // template. The following fields are modifiable: // - // * `display_name` - // * `type.enum_type` - // * `is_required` + // * `display_name` + // * `type.enum_type` + // * `is_required` // // If this parameter is absent or empty, all modifiable fields // are overwritten. If such fields are non-required and omitted in the request @@ -1211,9 +1370,7 @@ message UpdateTagTemplateFieldRequest { // Request message for // [RenameTagTemplateField][google.cloud.datacatalog.v1.DataCatalog.RenameTagTemplateField]. message RenameTagTemplateFieldRequest { - // Required. The name of the tag template. Example: - // - // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id} + // Required. The name of the tag template field. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1228,9 +1385,7 @@ message RenameTagTemplateFieldRequest { // Request message for // [RenameTagTemplateFieldEnumValue][google.cloud.datacatalog.v1.DataCatalog.RenameTagTemplateFieldEnumValue]. message RenameTagTemplateFieldEnumValueRequest { - // Required. The name of the enum field value. Example: - // - // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id}/enumValues/{enum_value_display_name} + // Required. The name of the enum field value. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1245,9 +1400,7 @@ message RenameTagTemplateFieldEnumValueRequest { // Request message for // [DeleteTagTemplateField][google.cloud.datacatalog.v1.DataCatalog.DeleteTagTemplateField]. message DeleteTagTemplateFieldRequest { - // Required. The name of the tag template field to delete. Example: - // - // * projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id} + // Required. The name of the tag template field to delete. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1255,23 +1408,20 @@ message DeleteTagTemplateFieldRequest { } ]; - // Required. Currently, this field must always be set to `true`. - // This confirms the deletion of this field from any tags using this field. - // `force = false` will be supported in the future. + // Required. If true, deletes this field from any tags that use it. + // + // Currently, `true` is the only supported value. bool force = 2 [(google.api.field_behavior) = REQUIRED]; } // Request message for // [ListTags][google.cloud.datacatalog.v1.DataCatalog.ListTags]. message ListTagsRequest { - // Required. The name of the Data Catalog resource to list the tags of. The resource - // could be an [Entry][google.cloud.datacatalog.v1.Entry] or an - // [EntryGroup][google.cloud.datacatalog.v1.EntryGroup]. - // - // Examples: + // Required. The name of the Data Catalog resource to list the tags of. // - // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id} - // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id} + // The resource can be an [Entry][google.cloud.datacatalog.v1.Entry] + // or an [EntryGroup][google.cloud.datacatalog.v1.EntryGroup] + // (without `/entries/{entries}` at the end). string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1279,11 +1429,11 @@ message ListTagsRequest { } ]; - // The maximum number of tags to return. Default is 10. Max limit is 1000. + // The maximum number of tags to return. Default is 10. Maximum limit is 1000. int32 page_size = 2; - // Token that specifies which page is requested. If empty, the first page is - // returned. + // Pagination token that specifies the next page to return. If empty, the + // first page is returned. string page_token = 3; } @@ -1293,18 +1443,17 @@ message ListTagsResponse { // [Tag][google.cloud.datacatalog.v1.Tag] details. repeated Tag tags = 1; - // Token to retrieve the next page of results. It is set to empty if no items - // remain in results. + // Pagination token of the next results page. Empty if there are + // no more items in results. string next_page_token = 2; } // Request message for // [ListEntries][google.cloud.datacatalog.v1.DataCatalog.ListEntries]. message ListEntriesRequest { - // Required. The name of the entry group that contains the entries, which can - // be provided in URL format. Example: + // Required. The name of the entry group that contains the entries to list. // - // * projects/{project_id}/locations/{location}/entryGroups/{entry_group_id} + // Can be provided in URL format. string parent = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -1312,18 +1461,19 @@ message ListEntriesRequest { } ]; - // The maximum number of items to return. Default is 10. Max limit is 1000. - // Throws an invalid argument for `page_size > 1000`. + // The maximum number of items to return. Default is 10. Maximum limit is + // 1000. Throws an invalid argument if `page_size` is more than 1000. int32 page_size = 2; - // Token that specifies which page is requested. If empty, the first page is - // returned. + // Pagination token that specifies the next page to return. If empty, the + // first page is returned. string page_token = 3; - // The fields to return for each Entry. If not set or empty, all + // The fields to return for each entry. If empty or omitted, all // fields are returned. - // For example, setting read_mask to contain only one path "name" will cause - // ListEntries to return a list of Entries with only "name" field. + // + // For example, to return a list of entries with only the `name` field, + // set `read_mask` to only one path with the `name` value. google.protobuf.FieldMask read_mask = 4; } @@ -1333,37 +1483,47 @@ message ListEntriesResponse { // Entry details. repeated Entry entries = 1; - // Token to retrieve the next page of results. It is set to empty if no items - // remain in results. + // Pagination token of the next results page. Empty if there are no more items + // in results. string next_page_token = 2; } -// Entry resources in Data Catalog can be of different types e.g. a BigQuery -// Table entry is of type `TABLE`. This enum describes all the possible types -// Data Catalog contains. +// The enum field that lists all the types of entry resources in Data +// Catalog. For example, a BigQuery table entry has the `TABLE` type. enum EntryType { // Default unknown type. ENTRY_TYPE_UNSPECIFIED = 0; - // Output only. The type of entry that has a GoogleSQL schema, including + // Output only. The entry type that has a GoogleSQL schema, including // logical views. TABLE = 2; - // Output only. The type of models, examples include - // https://cloud.google.com/bigquery-ml/docs/bigqueryml-intro + // Output only. The type of models. + // + // For more information, see [Supported models in BigQuery ML] + // (https://cloud.google.com/bigquery-ml/docs/introduction#supported_models_in). MODEL = 5; - // An entry type which is used for streaming entries. Example: - // Pub/Sub topic. + // An entry type for streaming entries. For example, a Pub/Sub topic. DATA_STREAM = 3; - // An entry type which is a set of files or objects. Example: + // An entry type for a set of files or objects. For example, a // Cloud Storage fileset. FILESET = 4; + // A group of servers that work together. For example, a Kafka cluster. + CLUSTER = 6; + // A database. DATABASE = 7; + // Output only. Connection to a data source. For example, a BigQuery + // connection. + DATA_SOURCE_CONNECTION = 8; + + // Output only. Routine, for example, a BigQuery routine. + ROUTINE = 9; + // A service, for example, a Dataproc Metastore service. SERVICE = 14; } diff --git a/google/cloud/datacatalog/v1/datacatalog_v1.yaml b/google/cloud/datacatalog/v1/datacatalog_v1.yaml index 5e780736b..f7ba1df05 100644 --- a/google/cloud/datacatalog/v1/datacatalog_v1.yaml +++ b/google/cloud/datacatalog/v1/datacatalog_v1.yaml @@ -51,11 +51,7 @@ authentication: oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform - - selector: google.cloud.datacatalog.v1.PolicyTagManagerSerialization.ExportTaxonomies - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/cloud-platform - - selector: google.cloud.datacatalog.v1.PolicyTagManagerSerialization.ImportTaxonomies + - selector: 'google.cloud.datacatalog.v1.PolicyTagManagerSerialization.*' oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/datacatalog/v1/gcs_fileset_spec.proto b/google/cloud/datacatalog/v1/gcs_fileset_spec.proto index 014364292..67627b45c 100644 --- a/google/cloud/datacatalog/v1/gcs_fileset_spec.proto +++ b/google/cloud/datacatalog/v1/gcs_fileset_spec.proto @@ -30,17 +30,18 @@ option ruby_package = "Google::Cloud::DataCatalog::V1"; // Describes a Cloud Storage fileset entry. message GcsFilesetSpec { // Required. Patterns to identify a set of files in Google Cloud Storage. - // See [Cloud Storage - // documentation](https://cloud.google.com/storage/docs/gsutil/addlhelp/WildcardNames) - // for more information. Note that bucket wildcards are currently not - // supported. // - // Examples of valid file_patterns: + // For more information, see [Wildcard Names] + // (https://cloud.google.com/storage/docs/gsutil/addlhelp/WildcardNames). // - // * `gs://bucket_name/dir/*`: matches all files within `bucket_name/dir` - // directory. + // Note: Currently, bucket wildcards are not supported. + // + // Examples of valid `file_patterns`: + // + // * `gs://bucket_name/dir/*`: matches all files in `bucket_name/dir` + // directory // * `gs://bucket_name/dir/**`: matches all files in `bucket_name/dir` - // spanning all subdirectories. + // and all subdirectories // * `gs://bucket_name/file*`: matches files prefixed by `file` in // `bucket_name` // * `gs://bucket_name/??.txt`: matches files with two characters followed by @@ -51,12 +52,12 @@ message GcsFilesetSpec { // * `gs://bucket_name/[a-m].txt`: matches files that contain `a`, `b`, ... // or `m` followed by `.txt` in `bucket_name` // * `gs://bucket_name/a/*/b`: matches all files in `bucket_name` that match - // `a/*/b` pattern, such as `a/c/b`, `a/d/b` + // the `a/*/b` pattern, such as `a/c/b`, `a/d/b` // * `gs://another_bucket/a.txt`: matches `gs://another_bucket/a.txt` // - // You can combine wildcards to provide more powerful matches, for example: + // You can combine wildcards to match complex sets of files, for example: // - // * `gs://bucket_name/[a-m]??.j*g` + // `gs://bucket_name/[a-m]??.j*g` repeated string file_patterns = 1 [(google.api.field_behavior) = REQUIRED]; // Output only. Sample files contained in this fileset, not all files @@ -64,14 +65,14 @@ message GcsFilesetSpec { repeated GcsFileSpec sample_gcs_file_specs = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; } -// Specifications of a single file in Cloud Storage. +// Specification of a single file in Cloud Storage. message GcsFileSpec { - // Required. The full file path. Example: `gs://bucket_name/a/b.txt`. + // Required. Full file path. Example: `gs://bucket_name/a/b.txt`. string file_path = 1 [(google.api.field_behavior) = REQUIRED]; - // Output only. Timestamps about the Cloud Storage file. + // Output only. Creation, modification, and expiration timestamps of a Cloud Storage file. SystemTimestamps gcs_timestamps = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. The size of the file, in bytes. + // Output only. File size in bytes. int64 size_bytes = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; } diff --git a/google/cloud/datacatalog/v1/policytagmanager.proto b/google/cloud/datacatalog/v1/policytagmanager.proto index 0412acc98..7cabb8748 100644 --- a/google/cloud/datacatalog/v1/policytagmanager.proto +++ b/google/cloud/datacatalog/v1/policytagmanager.proto @@ -35,7 +35,7 @@ option java_package = "com.google.cloud.datacatalog.v1"; option php_namespace = "Google\\Cloud\\DataCatalog\\V1"; option ruby_package = "Google::Cloud::DataCatalog::V1"; -// Policy Tag Manager API service allows clients to manage their policy tags and +// Policy Tag Manager API service allows you to manage your policy tags and // taxonomies. // // Policy tags are used to tag BigQuery columns and apply additional access @@ -45,8 +45,9 @@ service PolicyTagManager { option (google.api.default_host) = "datacatalog.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; - // Creates a taxonomy in a specified project. The taxonomy is initially empty, - // i.e., does not contain policy tags. + // Creates a taxonomy in a specified project. + // + // The taxonomy is initially empty, that is, it doesn't contain policy tags. rpc CreateTaxonomy(CreateTaxonomyRequest) returns (Taxonomy) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*}/taxonomies" @@ -55,7 +56,7 @@ service PolicyTagManager { option (google.api.method_signature) = "parent,taxonomy"; } - // Deletes a taxonomy. This method will also delete all policy tags in this + // Deletes a taxonomy, including all policy tags in this // taxonomy, their associated policies, and the policy tags references from // BigQuery columns. rpc DeleteTaxonomy(DeleteTaxonomyRequest) returns (google.protobuf.Empty) { @@ -65,7 +66,7 @@ service PolicyTagManager { option (google.api.method_signature) = "name"; } - // Updates a taxonomy. This method can update the taxonomy's display name, + // Updates a taxonomy, including its display name, // description, and activated policy types. rpc UpdateTaxonomy(UpdateTaxonomyRequest) returns (Taxonomy) { option (google.api.http) = { @@ -75,8 +76,8 @@ service PolicyTagManager { option (google.api.method_signature) = "taxonomy"; } - // Lists all taxonomies in a project in a particular location that the caller - // has permission to view. + // Lists all taxonomies in a project in a particular location that you + // have a permission to view. rpc ListTaxonomies(ListTaxonomiesRequest) returns (ListTaxonomiesResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*}/taxonomies" @@ -101,12 +102,12 @@ service PolicyTagManager { option (google.api.method_signature) = "parent,policy_tag"; } - // Deletes a policy tag. This method also deletes: + // Deletes a policy tag together with the following: // - // * all of its descendant policy tags, if any - // * the policies associated with the policy tag and its descendants - // * references from BigQuery table schema of the policy tag and its - // descendants. + // * All of its descendant policy tags, if any + // * Policies associated with the policy tag and its descendants + // * References from BigQuery table schema of the policy tag and its + // descendants rpc DeletePolicyTag(DeletePolicyTagRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v1/{name=projects/*/locations/*/taxonomies/*/policyTags/*}" @@ -114,7 +115,7 @@ service PolicyTagManager { option (google.api.method_signature) = "name"; } - // Updates a policy tag. This method can update the policy tag's display + // Updates a policy tag, including its display // name, description, and parent policy tag. rpc UpdatePolicyTag(UpdatePolicyTagRequest) returns (PolicyTag) { option (google.api.http) = { @@ -164,7 +165,7 @@ service PolicyTagManager { }; } - // Returns the permissions that a caller has on a specified policy tag or + // Returns your permissions on a specified policy tag or // taxonomy. rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) returns (google.iam.v1.TestIamPermissionsResponse) { option (google.api.http) = { @@ -179,8 +180,10 @@ service PolicyTagManager { } // A taxonomy is a collection of hierarchical policy tags that classify data -// along a common axis. For instance a "data sensitivity" taxonomy could contain -// the following policy tags: +// along a common axis. +// +// For example, a "data sensitivity" taxonomy might contain the following policy +// tags: // // ``` // + PII @@ -192,7 +195,7 @@ service PolicyTagManager { // + Revenue // ``` // -// A "data origin" taxonomy could contain the following policy tags: +// A "data origin" taxonomy might contain the following policy tags: // // ``` // + User data @@ -211,30 +214,34 @@ message Taxonomy { // Unspecified policy type. POLICY_TYPE_UNSPECIFIED = 0; - // Fine-grained access control policy, which enables access control on + // Fine-grained access control policy that enables access control on // tagged sub-resources. FINE_GRAINED_ACCESS_CONTROL = 1; } - // Output only. Resource name of this taxonomy in format: - // "projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}". - // Note that taxonomy_id's are unique and generated by Policy Tag Manager. + // Output only. Resource name of this taxonomy in URL format. + // + // Note: Policy tag manager generates unique taxonomy IDs. string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Required. User-defined name of this taxonomy. It must: contain only unicode letters, - // numbers, underscores, dashes and spaces; not start or end with spaces; and - // be at most 200 bytes long when encoded in UTF-8. + // Required. User-defined name of this taxonomy. + // + // The name can't start or end with spaces, must contain only Unicode letters, + // numbers, underscores, dashes, and spaces, and be at most 200 bytes long + // when encoded in UTF-8. string display_name = 2 [(google.api.field_behavior) = REQUIRED]; - // Optional. Description of this taxonomy. It must: contain only unicode characters, - // tabs, newlines, carriage returns and page breaks; and be at most 2000 bytes - // long when encoded in UTF-8. If not set, defaults to an empty description. + // Optional. Description of this taxonomy. If not set, defaults to empty. + // + // The description must contain only Unicode characters, tabs, newlines, + // carriage returns, and page breaks, and be at most 2000 bytes long when + // encoded in UTF-8. string description = 3 [(google.api.field_behavior) = OPTIONAL]; - // Output only. Number of policy tags contained in this taxonomy. + // Output only. Number of policy tags in this taxonomy. int32 policy_tag_count = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. Timestamps about this taxonomy. Only create_time and update_time are used. + // Output only. Creation and modification timestamps of this taxonomy. SystemTimestamps taxonomy_timestamps = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. A list of policy types that are activated for this taxonomy. If not set, @@ -242,8 +249,9 @@ message Taxonomy { repeated PolicyType activated_policy_types = 6 [(google.api.field_behavior) = OPTIONAL]; } -// Denotes one policy tag in a taxonomy (e.g. ssn). Policy tags can be defined -// in a hierarchy. For example, consider the following hierarchy: +// Denotes one policy tag in a taxonomy, for example, SSN. +// +// Policy tags can be defined in a hierarchy. For example: // // ``` // + Geolocation @@ -252,38 +260,38 @@ message Taxonomy { // + ZipCode // ``` // -// Policy tag "Geolocation" contains 3 child policy tags: "LatLong", "City", and -// "ZipCode". +// Where the "Geolocation" policy tag contains three children. message PolicyTag { option (google.api.resource) = { type: "datacatalog.googleapis.com/PolicyTag" pattern: "projects/{project}/locations/{location}/taxonomies/{taxonomy}/policyTags/{policy_tag}" }; - // Output only. Resource name of this policy tag in format: - // "projects/{project_number}/locations/{location_id}/taxonomies/{taxonomy_id}/policyTags/{policy_tag_id}". - // Both taxonomy_ids and policy_tag_ids are unique and generated by Policy Tag - // Manager. + // Output only. Resource name of this policy tag in the URL format. + // + // The policy tag manager generates unique taxonomy IDs and policy tag IDs. string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Required. User-defined name of this policy tag. It must: be unique within the parent - // taxonomy; contain only unicode letters, numbers, underscores, dashes and - // spaces; not start or end with spaces; and be at most 200 bytes long when - // encoded in UTF-8. + // Required. User-defined name of this policy tag. + // + // The name can't start or end with spaces and must be unique within the + // parent taxonomy, contain only Unicode letters, numbers, underscores, dashes + // and spaces, and be at most 200 bytes long when encoded in UTF-8. string display_name = 2 [(google.api.field_behavior) = REQUIRED]; - // Description of this policy tag. It must: contain only unicode characters, - // tabs, newlines, carriage returns and page breaks; and be at most 2000 bytes - // long when encoded in UTF-8. If not set, defaults to an empty description. - // If not set, defaults to an empty description. + // Description of this policy tag. If not set, defaults to empty. + // + // The description must contain only Unicode characters, + // tabs, newlines, carriage returns and page breaks, and be at most 2000 bytes + // long when encoded in UTF-8. string description = 3; - // Resource name of this policy tag's parent policy tag (e.g. for the - // "LatLong" policy tag in the example above, this field contains the - // resource name of the "Geolocation" policy tag). If empty, it means this - // policy tag is a top level policy tag (e.g. this field is empty for the - // "Geolocation" policy tag in the example above). If not set, defaults to an - // empty string. + // Resource name of this policy tag's parent policy tag. If empty, this is a + // top level tag. If not set, defaults to an empty string. + // + // For example, for the "LatLong" policy tag in the example above, this field + // contains the resource name of the "Geolocation" policy tag, and, for + // "Geolocation", this field is empty. string parent_policy_tag = 4; // Output only. Resource names of child policy tags of this policy tag. @@ -301,15 +309,16 @@ message CreateTaxonomyRequest { } ]; - // The taxonomy to be created. + // The taxonomy to create. Taxonomy taxonomy = 2; } // Request message for // [DeleteTaxonomy][google.cloud.datacatalog.v1.PolicyTagManager.DeleteTaxonomy]. message DeleteTaxonomyRequest { - // Required. Resource name of the taxonomy to be deleted. All policy tags in - // this taxonomy will also be deleted. + // Required. Resource name of the taxonomy to delete. + // + // Note: All policy tags in this taxonomy are also deleted. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -321,14 +330,15 @@ message DeleteTaxonomyRequest { // Request message for // [UpdateTaxonomy][google.cloud.datacatalog.v1.PolicyTagManager.UpdateTaxonomy]. message UpdateTaxonomyRequest { - // The taxonomy to update. Only description, display_name, and activated - // policy types can be updated. + // The taxonomy to update. You can update only its description, display name, + // and activated policy types. Taxonomy taxonomy = 1; - // The update mask applies to the resource. For the `FieldMask` definition, - // see - // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask - // If not set, defaults to all of the fields that are allowed to update. + // Specifies fields to update. If not set, defaults to all fields you can + // update. + // + // For more information, see [FieldMask] + // (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask). google.protobuf.FieldMask update_mask = 2; } @@ -343,12 +353,14 @@ message ListTaxonomiesRequest { } ]; - // The maximum number of items to return. Must be a value between 1 and 1000. - // If not set, defaults to 50. + // The maximum number of items to return. Must be a value between 1 and 1000 + // inclusively. If not set, defaults to 50. int32 page_size = 2; - // The next_page_token value returned from a previous list request, if any. If - // not set, defaults to an empty string. + // The pagination token of the next results page. If not set, + // the first page is returned. + // + // The token is returned in the response to a previous list request. string page_token = 3; } @@ -358,7 +370,7 @@ message ListTaxonomiesResponse { // Taxonomies that the project contains. repeated Taxonomy taxonomies = 1; - // Token used to retrieve the next page of results, or empty if there are no + // Pagination token of the next results page. Empty if there are no // more results in the list. string next_page_token = 2; } @@ -366,7 +378,7 @@ message ListTaxonomiesResponse { // Request message for // [GetTaxonomy][google.cloud.datacatalog.v1.PolicyTagManager.GetTaxonomy]. message GetTaxonomyRequest { - // Required. Resource name of the requested taxonomy. + // Required. Resource name of the taxonomy to get. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -386,15 +398,16 @@ message CreatePolicyTagRequest { } ]; - // The policy tag to be created. + // The policy tag to create. PolicyTag policy_tag = 2; } // Request message for // [DeletePolicyTag][google.cloud.datacatalog.v1.PolicyTagManager.DeletePolicyTag]. message DeletePolicyTagRequest { - // Required. Resource name of the policy tag to be deleted. All of its descendant - // policy tags will also be deleted. + // Required. Resource name of the policy tag to delete. + // + // Note: All of its descendant policy tags are also deleted. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -406,17 +419,16 @@ message DeletePolicyTagRequest { // Request message for // [UpdatePolicyTag][google.cloud.datacatalog.v1.PolicyTagManager.UpdatePolicyTag]. message UpdatePolicyTagRequest { - // The policy tag to update. Only the description, display_name, and - // parent_policy_tag fields can be updated. + // The policy tag to update. You can update only its description, display + // name, and parent policy tag fields. PolicyTag policy_tag = 1; - // The update mask applies to the resource. Only display_name, description and - // parent_policy_tag can be updated and thus can be listed in the mask. If - // update_mask is not provided, all allowed fields (i.e. display_name, - // description and parent) will be updated. For more information including the - // `FieldMask` definition, see - // https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask - // If not set, defaults to all of the fields that are allowed to update. + // Specifies the fields to update. + // + // You can update only display name, description, and parent policy tag. + // If not set, defaults to all updatable fields. + // For more information, see [FieldMask] + // (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask). google.protobuf.FieldMask update_mask = 2; } @@ -431,22 +443,25 @@ message ListPolicyTagsRequest { } ]; - // The maximum number of items to return. Must be a value between 1 and 1000. + // The maximum number of items to return. Must be a value between 1 and 1000 + // inclusively. // If not set, defaults to 50. int32 page_size = 2; - // The next_page_token value returned from a previous List request, if any. If - // not set, defaults to an empty string. + // The pagination token of the next results page. If not set, returns the + // first page. + // + // The token is returned in the response to a previous list request. string page_token = 3; } // Response message for // [ListPolicyTags][google.cloud.datacatalog.v1.PolicyTagManager.ListPolicyTags]. message ListPolicyTagsResponse { - // The policy tags that are in the requested taxonomy. + // The policy tags that belong to the taxonomy. repeated PolicyTag policy_tags = 1; - // Token used to retrieve the next page of results, or empty if there are no + // Pagination token of the next results page. Empty if there are no // more results in the list. string next_page_token = 2; } @@ -454,7 +469,7 @@ message ListPolicyTagsResponse { // Request message for // [GetPolicyTag][google.cloud.datacatalog.v1.PolicyTagManager.GetPolicyTag]. message GetPolicyTagRequest { - // Required. Resource name of the requested policy tag. + // Required. Resource name of the policy tag. string name = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { diff --git a/google/cloud/datacatalog/v1/policytagmanagerserialization.proto b/google/cloud/datacatalog/v1/policytagmanagerserialization.proto index 29b1d3df7..834acd0aa 100644 --- a/google/cloud/datacatalog/v1/policytagmanagerserialization.proto +++ b/google/cloud/datacatalog/v1/policytagmanagerserialization.proto @@ -32,22 +32,42 @@ option java_package = "com.google.cloud.datacatalog.v1"; option php_namespace = "Google\\Cloud\\DataCatalog\\V1"; option ruby_package = "Google::Cloud::DataCatalog::V1"; -// Policy Tag Manager serialization API service allows clients to manipulate -// their policy tags and taxonomies in serialized format, where taxonomy is a -// hierarchical group of policy tags. +// Policy Tag Manager Serialization API service allows you to manipulate +// your policy tags and taxonomies in a serialized format. +// +// Taxonomy is a hierarchical group of policy tags. service PolicyTagManagerSerialization { option (google.api.default_host) = "datacatalog.googleapis.com"; option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; - // Creates new taxonomies (including their policy tags) by importing from - // inlined source or cross-regional source. New taxonomies will be created in - // a given parent project. + // Replaces (updates) a taxonomy and all its policy tags. + // + // The taxonomy and its entire hierarchy of policy tags must be + // represented literally by `SerializedTaxonomy` and the nested + // `SerializedPolicyTag` messages. + // + // This operation automatically does the following: + // + // - Deletes the existing policy tags that are missing from the + // `SerializedPolicyTag`. + // - Creates policy tags that don't have resource names. They are considered + // new. + // - Updates policy tags with valid resources names accordingly. + rpc ReplaceTaxonomy(ReplaceTaxonomyRequest) returns (Taxonomy) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*/taxonomies/*}:replace" + body: "*" + }; + } + + // Creates new taxonomies (including their policy tags) in a given project + // by importing from inlined or cross-regional sources. // - // If using the cross-regional source, a new taxonomy is created by copying + // For a cross-regional source, new taxonomies are created by copying // from a source in another region. // - // If using the inlined source, this method provides a way to bulk create - // taxonomies and policy tags using nested proto structure. + // For an inlined source, taxonomies and policy tags are created in bulk using + // nested protocol buffer structures. rpc ImportTaxonomies(ImportTaxonomiesRequest) returns (ImportTaxonomiesResponse) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*}/taxonomies:import" @@ -55,12 +75,12 @@ service PolicyTagManagerSerialization { }; } - // Exports taxonomies as the requested type and returns the taxonomies - // including their policy tags. The requested taxonomies must belong to one - // project. + // Exports taxonomies in the requested type and returns them, + // including their policy tags. The requested taxonomies must belong to the + // same project. // - // SerializedTaxonomy protos with nested policy tags that are generated by - // this method can be used as input for future ImportTaxonomies calls. + // This method generates `SerializedTaxonomy` protocol buffers with nested + // policy tags that can be used as input for `ImportTaxonomies` calls. rpc ExportTaxonomies(ExportTaxonomiesRequest) returns (ExportTaxonomiesResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*}/taxonomies:export" @@ -68,14 +88,15 @@ service PolicyTagManagerSerialization { } } -// Message representing a taxonomy, including its policy tags in hierarchy, as a -// nested proto. Used for taxonomy replacement, import, and export. +// A nested protocol buffer that represents a taxonomy and the hierarchy of its +// policy tags. Used for taxonomy replacement, import, and +// export. message SerializedTaxonomy { // Required. Display name of the taxonomy. At most 200 bytes when encoded in UTF-8. string display_name = 1 [(google.api.field_behavior) = REQUIRED]; - // Description of the serialized taxonomy. At most 2000 bytes when encoded in - // UTF-8. If not set, defaults to an empty description. + // Description of the serialized taxonomy. At most 2000 bytes when + // encoded in UTF-8. If not set, defaults to an empty description. string description = 2; // Top level policy tags associated with the taxonomy, if any. @@ -85,19 +106,20 @@ message SerializedTaxonomy { repeated Taxonomy.PolicyType activated_policy_types = 4; } -// Message representing one policy tag, including all its descendant policy -// tags, as a nested proto. +// A nested protocol buffer that represents a policy tag and all its +// descendants. message SerializedPolicyTag { // Resource name of the policy tag. // - // This field will be ignored when calling ImportTaxonomies. + // This field is ignored when calling `ImportTaxonomies`. string policy_tag = 1; - // Required. Display name of the policy tag. At most 200 bytes when encoded in UTF-8. + // Required. Display name of the policy tag. At most 200 bytes when encoded + // in UTF-8. string display_name = 2 [(google.api.field_behavior) = REQUIRED]; - // Description of the serialized policy tag. The length of the description is - // limited to 2000 bytes when encoded in UTF-8. If not set, defaults to an + // Description of the serialized policy tag. At most + // 2000 bytes when encoded in UTF-8. If not set, defaults to an // empty description. string description = 3; @@ -105,6 +127,21 @@ message SerializedPolicyTag { repeated SerializedPolicyTag child_policy_tags = 4; } +// Request message for +// [ReplaceTaxonomy][google.cloud.datacatalog.v1.PolicyTagManagerSerialization.ReplaceTaxonomy]. +message ReplaceTaxonomyRequest { + // Required. Resource name of the taxonomy to update. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datacatalog.googleapis.com/Taxonomy" + } + ]; + + // Required. Taxonomy to update along with its child policy tags. + SerializedTaxonomy serialized_taxonomy = 2 [(google.api.field_behavior) = REQUIRED]; +} + // Request message for // [ImportTaxonomies][google.cloud.datacatalog.v1.PolicyTagManagerSerialization.ImportTaxonomies]. message ImportTaxonomiesRequest { @@ -116,26 +153,26 @@ message ImportTaxonomiesRequest { } ]; - // Source taxonomies to be imported. + // Source taxonomies to import. oneof source { - // Inline source used for taxonomies import. + // Inline source taxonomy to import. InlineSource inline_source = 2; - // Cross-regional source taxonomy to be imported. + // Cross-regional source taxonomy to import. CrossRegionalSource cross_regional_source = 3; } } // Inline source containing taxonomies to import. message InlineSource { - // Required. Taxonomies to be imported. + // Required. Taxonomies to import. repeated SerializedTaxonomy taxonomies = 1 [(google.api.field_behavior) = REQUIRED]; } // Cross-regional source used to import an existing taxonomy into a different // region. message CrossRegionalSource { - // Required. The resource name of the source taxonomy to be imported. + // Required. The resource name of the source taxonomy to import. string taxonomy = 1 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -147,7 +184,7 @@ message CrossRegionalSource { // Response message for // [ImportTaxonomies][google.cloud.datacatalog.v1.PolicyTagManagerSerialization.ImportTaxonomies]. message ImportTaxonomiesResponse { - // Taxonomies that were imported. + // Imported taxonomies. repeated Taxonomy taxonomies = 1; } @@ -162,7 +199,7 @@ message ExportTaxonomiesRequest { } ]; - // Required. Resource names of the taxonomies to be exported. + // Required. Resource names of the taxonomies to export. repeated string taxonomies = 2 [ (google.api.field_behavior) = REQUIRED, (google.api.resource_reference) = { @@ -170,10 +207,10 @@ message ExportTaxonomiesRequest { } ]; - // Required. Taxonomies export destination. + // Required. Export destination for taxonomies. oneof destination { - // Export taxonomies as serialized taxonomies, which contain all the policy - // tags as nested protos. + // Serialized export taxonomies that contain all the policy + // tags as nested protocol buffers. bool serialized_taxonomies = 3; } } @@ -181,6 +218,6 @@ message ExportTaxonomiesRequest { // Response message for // [ExportTaxonomies][google.cloud.datacatalog.v1.PolicyTagManagerSerialization.ExportTaxonomies]. message ExportTaxonomiesResponse { - // List of taxonomies and policy tags as nested protos. + // List of taxonomies and policy tags as nested protocol buffers. repeated SerializedTaxonomy taxonomies = 1; } diff --git a/google/cloud/datacatalog/v1/schema.proto b/google/cloud/datacatalog/v1/schema.proto index 24f7fb887..bafc5d038 100644 --- a/google/cloud/datacatalog/v1/schema.proto +++ b/google/cloud/datacatalog/v1/schema.proto @@ -26,7 +26,7 @@ option java_package = "com.google.cloud.datacatalog.v1"; option php_namespace = "Google\\Cloud\\DataCatalog\\V1"; option ruby_package = "Google::Cloud::DataCatalog::V1"; -// Represents a schema (e.g. BigQuery, GoogleSQL, Avro schema). +// Represents a schema, for example, a BigQuery, GoogleSQL, or Avro schema. message Schema { // The unified GoogleSQL-like schema of columns. // @@ -35,7 +35,7 @@ message Schema { repeated ColumnSchema columns = 2; } -// Representation of a column within a schema. Columns could be nested inside +// A column within a schema. Columns can be nested inside // other columns. message ColumnSchema { // Required. Name of the column. @@ -55,7 +55,7 @@ message ColumnSchema { // bytes. string description = 2 [(google.api.field_behavior) = OPTIONAL]; - // Optional. A column's mode indicates if values in this column are required, + // Optional. A column's mode indicates whether values in this column are required, // nullable, or repeated. // // Only `NULLABLE`, `REQUIRED`, and `REPEATED` values are supported. diff --git a/google/cloud/datacatalog/v1/search.proto b/google/cloud/datacatalog/v1/search.proto index 093739236..2194c6f85 100644 --- a/google/cloud/datacatalog/v1/search.proto +++ b/google/cloud/datacatalog/v1/search.proto @@ -28,61 +28,82 @@ option java_package = "com.google.cloud.datacatalog.v1"; option php_namespace = "Google\\Cloud\\DataCatalog\\V1"; option ruby_package = "Google::Cloud::DataCatalog::V1"; -// A result that appears in the response of a search request. Each result -// captures details of one entry that matches the search. +// Result in the response to a search request. +// +// Each result captures details of one entry that matches the search. message SearchCatalogResult { - // Type of the search result. This field can be used to determine which Get - // method to call to fetch the full resource. + // Type of the search result. + // + // You can use this field to determine which get method to call to fetch the + // full resource. SearchResultType search_result_type = 1; - // Sub-type of the search result. This is a dot-delimited description of the - // resource's full type, and is the same as the value callers would provide in - // the "type" search facet. Examples: `entry.table`, `entry.dataStream`, - // `tagTemplate`. + // Sub-type of the search result. + // + // A dot-delimited full type of the resource. The same type you + // specify in the `type` search predicate. + // + // Examples: `entry.table`, `entry.dataStream`, `tagTemplate`. string search_result_subtype = 2; - // The relative resource name of the resource in URL format. + // The relative name of the resource in URL format. + // // Examples: // - // * `projects/{project_id}/locations/{location_id}/entryGroups/{entry_group_id}/entries/{entry_id}` - // * `projects/{project_id}/tagTemplates/{tag_template_id}` + // * `projects/{PROJECT_ID}/locations/{LOCATION_ID}/entryGroups/{ENTRY_GROUP_ID}/entries/{ENTRY_ID}` + // * `projects/{PROJECT_ID}/tagTemplates/{TAG_TEMPLATE_ID}` string relative_resource_name = 3; - // The full name of the cloud resource the entry belongs to. See: - // https://cloud.google.com/apis/design/resource_names#full_resource_name. + // The full name of the Google Cloud resource the entry belongs to. + // + // For more information, see [Full Resource Name] + // (/apis/design/resource_names#full_resource_name). + // // Example: // - // * `//bigquery.googleapis.com/projects/projectId/datasets/datasetId/tables/tableId` + // `//bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID` string linked_resource = 4; - // Last-modified timestamp of the entry from the managing system. + // The last modification timestamp of the entry in the source system. google.protobuf.Timestamp modify_time = 7; - // The source system of the entry. Only applicable when `search_result_type` - // is ENTRY. + // The source system of the entry. Applicable only when the + // `search_result_type` is `ENTRY`. oneof system { - // Output only. This field indicates the entry's source system that Data Catalog - // integrates with, such as BigQuery or Cloud Pub/Sub. + // Output only. The source system that Data Catalog automatically integrates with, such + // as BigQuery, Cloud Pub/Sub, or Dataproc Metastore. IntegratedSystem integrated_system = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - // This field indicates the entry's source system that Data Catalog does not - // integrate with. + // Custom source system that you can manually integrate Data Catalog with. string user_specified_system = 9; } - // Fully Qualified Name of the resource. - // There are two main forms of FQNs: - // {system}:{project}.{dot-separated path to resource} - // for non-regionalized resources - // {system}:{project}.{location id}.{dot-separated path to resource} - // for regionalized resources - // Examples: - // * dataproc_metastore:projectId.locationId.instanceId.databaseId.tableId - // * bigquery:table.project_id.dataset_id.table_id + // Fully qualified name (FQN) of the resource. + // + // FQNs take two forms: + // + // * For non-regionalized resources: + // + // `{SYSTEM}:{PROJECT}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}` + // + // * For regionalized resources: + // + // `{SYSTEM}:{PROJECT}.{LOCATION_ID}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}` + // + // Example for a DPMS table: + // + // `dataproc_metastore:PROJECT_ID.LOCATION_ID.INSTANCE_ID.DATABASE_ID.TABLE_ID` string fully_qualified_name = 10; + + // The display name of the result. + string display_name = 12; + + // Entry description that can consist of several sentences or paragraphs that + // describe entry contents. + string description = 13; } -// The different types of resources that can be returned in search. +// The resource types that can be returned in search results. enum SearchResultType { // Default unknown type. SEARCH_RESULT_TYPE_UNSPECIFIED = 0; diff --git a/google/cloud/datacatalog/v1/table_spec.proto b/google/cloud/datacatalog/v1/table_spec.proto index 43ce0df19..c8da40420 100644 --- a/google/cloud/datacatalog/v1/table_spec.proto +++ b/google/cloud/datacatalog/v1/table_spec.proto @@ -34,12 +34,12 @@ message BigQueryTableSpec { // Output only. oneof type_spec { - // Table view specification. This field should only be populated if - // `table_source_type` is `BIGQUERY_VIEW`. + // Table view specification. Populated only if + // the `table_source_type` is `BIGQUERY_VIEW`. ViewSpec view_spec = 2; - // Spec of a BigQuery table. This field should only be populated if - // `table_source_type` is `BIGQUERY_TABLE`. + // Specification of a BigQuery table. Populated only if + // the `table_source_type` is `BIGQUERY_TABLE`. TableSpec table_spec = 3; } } @@ -65,12 +65,14 @@ message ViewSpec { string view_query = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; } -// Normal BigQuery table spec. +// Normal BigQuery table specification. message TableSpec { - // Output only. If the table is a dated shard, i.e., with name pattern `[prefix]YYYYMMDD`, - // `grouped_entry` is the Data Catalog resource name of the date sharded - // grouped entry, for example, - // `projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entries/{entry_id}`. + // Output only. If the table is date-sharded, that is, it matches the `[prefix]YYYYMMDD` + // name pattern, this field is the Data Catalog resource name of the + // date-sharded grouped entry. For example: + // + // `projects/{PROJECT_ID}/locations/{LOCATION}/entrygroups/{ENTRY_GROUP_ID}/entries/{ENTRY_ID}`. + // // Otherwise, `grouped_entry` is empty. string grouped_entry = 1 [ (google.api.field_behavior) = OUTPUT_ONLY, @@ -80,13 +82,16 @@ message TableSpec { ]; } -// Spec for a group of BigQuery tables with name pattern `[prefix]YYYYMMDD`. -// Context: -// https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding +// Specification for a group of BigQuery tables with the `[prefix]YYYYMMDD` name +// pattern. +// +// For more information, see [Introduction to partitioned tables] +// (https://cloud.google.com/bigquery/docs/partitioned-tables#partitioning_versus_sharding). message BigQueryDateShardedSpec { // Output only. The Data Catalog resource name of the dataset entry the current table - // belongs to, for example, - // `projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entries/{entry_id}`. + // belongs to. For example: + // + // `projects/{PROJECT_ID}/locations/{LOCATION}/entrygroups/{ENTRY_GROUP_ID}/entries/{ENTRY_ID}`. string dataset = 1 [ (google.api.field_behavior) = OUTPUT_ONLY, (google.api.resource_reference) = { @@ -94,11 +99,16 @@ message BigQueryDateShardedSpec { } ]; - // Output only. The table name prefix of the shards. The name of any given shard is - // `[table_prefix]YYYYMMDD`, for example, for shard `MyTable20180101`, the + // Output only. The table name prefix of the shards. + // + // The name of any given shard is `[table_prefix]YYYYMMDD`. + // For example, for the `MyTable20180101` shard, the // `table_prefix` is `MyTable`. string table_prefix = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Total number of shards. int64 shard_count = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. BigQuery resource name of the latest shard. + string latest_shard_resource = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; } diff --git a/google/cloud/datacatalog/v1/tags.proto b/google/cloud/datacatalog/v1/tags.proto index 9ef2e4528..eab54abba 100644 --- a/google/cloud/datacatalog/v1/tags.proto +++ b/google/cloud/datacatalog/v1/tags.proto @@ -28,8 +28,8 @@ option java_package = "com.google.cloud.datacatalog.v1"; option php_namespace = "Google\\Cloud\\DataCatalog\\V1"; option ruby_package = "Google::Cloud::DataCatalog::V1"; -// Tags are used to attach custom metadata to Data Catalog resources. Tags -// conform to the specifications within their tag template. +// Tags contain custom metadata and are attached to Data Catalog resources. Tags +// conform with the specification of their tag template. // // See [Data Catalog // IAM](https://cloud.google.com/data-catalog/docs/concepts/iam) for information @@ -40,19 +40,16 @@ message Tag { pattern: "projects/{project}/locations/{location}/entryGroups/{entry_group}/entries/{entry}/tags/{tag}" }; - // The resource name of the tag in URL format. Example: - // - // `projects/{project_id}/locations/{location}/entrygroups/{entry_group_id}/entries/{entry_id}/tags/{tag_id}` - // - // where `tag_id` is a system-generated identifier. + // The resource name of the tag in URL format where tag ID is a + // system-generated identifier. // // Note: The tag itself might not be stored in the location specified in its // name. string name = 1; - // Required. The resource name of the tag template that this tag uses. Example: + // Required. The resource name of the tag template this tag uses. Example: // - // `projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}` + // `projects/{PROJECT_ID}/locations/{LOCATION}/tagTemplates/{TAG_TEMPLATE_ID}` // // This field cannot be modified after creation. string template = 2 [(google.api.field_behavior) = REQUIRED]; @@ -62,27 +59,32 @@ message Tag { // The scope within the parent resource that this tag is attached to. If not // provided, the tag is attached to the parent resource itself. - // Deleting the scope from the parent resource will delete all tags attached - // to that scope. These fields cannot be updated after creation. + // + // Deleting the scope from the parent resource deletes all tags attached + // to that scope. + // + // These fields cannot be updated after creation. oneof scope { // Resources like entry can have schemas associated with them. This scope - // allows users to attach tags to an individual column based on that schema. + // allows you to attach tags to an individual column based on that schema. // // To attach a tag to a nested column, separate column names with a dot // (`.`). Example: `column.nested_column`. string column = 4; } - // Required. This maps the ID of a tag field to the value of and additional information - // about that field. Valid field IDs are defined by the tag's template. A tag + // Required. Maps the ID of a tag field to its value and additional information + // about that field. + // + // Tag template defines valid field IDs. A tag // must have at least 1 field and at most 500 fields. map fields = 3 [(google.api.field_behavior) = REQUIRED]; } -// Contains the value and supporting information for a field within +// Contains the value and additional information on a field within // a [Tag][google.cloud.datacatalog.v1.Tag]. message TagField { - // Holds an enum value. + // An enum value. message EnumValue { // The display name of the enum value. string display_name = 1; @@ -93,49 +95,58 @@ message TagField { // Required. The value of this field. oneof kind { - // Holds the value for a tag field with double type. + // The value of a tag field with a double type. double double_value = 2; - // Holds the value for a tag field with string type. + // The value of a tag field with a string type. + // // The maximum length is 2000 UTF-8 characters. string string_value = 3; - // Holds the value for a tag field with boolean type. + // The value of a tag field with a boolean type. bool bool_value = 4; - // Holds the value for a tag field with timestamp type. + // The value of a tag field with a timestamp type. google.protobuf.Timestamp timestamp_value = 5; - // Holds the value for a tag field with enum type. This value must be - // one of the allowed values in the definition of this enum. + // The value of a tag field with an enum type. + // + // This value must be one of the allowed values listed in this enum. EnumValue enum_value = 6; + + // The value of a tag field with a rich text type. + // + // The maximum length is 10 MiB as this value holds HTML descriptions + // including encoded images. The maximum length of the text without images + // is 100 KiB. + string richtext_value = 8; } - // Output only. The order of this field with respect to other fields in this tag. It can be - // set in [Tag][google.cloud.datacatalog.v1.TagTemplateField.order]. For - // example, a higher value can indicate a more important field. The value can - // be negative. Multiple fields can have the same order, and field orders - // within a tag do not have to be sequential. + // Output only. The order of this field with respect to other fields in this tag. Can be + // set by [Tag][google.cloud.datacatalog.v1.TagTemplateField.order]. + // + // For example, a higher value can indicate a more important field. + // The value can be negative. Multiple fields can have the same order, and + // field orders within a tag don't have to be sequential. int32 order = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; } -// A tag template defines a tag, which can have one or more typed fields. -// The template is used to create and attach the tag to GCP resources. -// [Tag template -// roles](https://cloud.google.com/iam/docs/understanding-roles#data-catalog-roles) -// provide permissions to create, edit, and use the template. See, for example, -// the [TagTemplate -// User](https://cloud.google.com/data-catalog/docs/how-to/template-user) role, -// which includes permission to use the tag template to tag resources. +// A tag template defines a tag that can have one or more typed fields. +// +// The template is used to create tags that are attached to GCP resources. +// [Tag template roles] +// (https://cloud.google.com/iam/docs/understanding-roles#data-catalog-roles) +// provide permissions to create, edit, and use the template. For example, +// see the [TagTemplate User] +// (https://cloud.google.com/data-catalog/docs/how-to/template-user) role +// that includes a permission to use the tag template to tag resources. message TagTemplate { option (google.api.resource) = { type: "datacatalog.googleapis.com/TagTemplate" pattern: "projects/{project}/locations/{location}/tagTemplates/{tag_template}" }; - // The resource name of the tag template in URL format. Example: - // - // `projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}` + // The resource name of the tag template in URL format. // // Note: The tag template itself and its child resources might not be // stored in the location specified in its name. @@ -148,14 +159,46 @@ message TagTemplate { // The maximum length is 200 characters. string display_name = 2; + // Indicates whether this is a public tag template. + // + // Every user has view access to a *public* tag template by default. + // This means that: + // + // * Every user can use this tag template to tag an entry. + // * If an entry is tagged using the tag template, the tag is always + // shown in the response to ``ListTags`` called on the entry. + // * To get the template using the GetTagTemplate method, you + // need view access either on the project or the organization the tag + // template resides in but no other permission is needed. + // * Operations on the tag template other than viewing (for example, + // editing IAM policies) follow standard IAM structures. + // + // Tags created with a public tag template are referred to as public tags. + // + // You can search for a public tag by value with a + // simple search query instead of using a ``tag:`` predicate. + // + // Public tag templates may not appear in search results depending on scope, + // see: + // [include_public_tag_templates][google.cloud.datacatalog.v1.SearchCatalogRequest.Scope.include_public_tag_templates] + // + // Note: If an [IAM domain + // restriction](https://cloud.google.com/resource-manager/docs/organization-policy/restricting-domains) + // is configured in the tag template's location, the public access will not be + // enabled but the simple search for tag values will still work. + bool is_publicly_readable = 5; + // Required. Map of tag template field IDs to the settings for the field. - // This map is an exhaustive list of the allowed fields. This map must contain + // This map is an exhaustive list of the allowed fields. The map must contain // at least one field and at most 500 fields. // - // The keys to this map are tag template field IDs. Field IDs can contain - // letters (both uppercase and lowercase), numbers (0-9) and underscores (_). - // Field IDs must be at least 1 character long and at most - // 64 characters long. Field IDs must start with a letter or underscore. + // The keys to this map are tag template field IDs. The IDs have the + // following limitations: + // + // * Can contain uppercase and lowercase letters, numbers (0-9) and + // underscores (_). + // * Must be at least 1 character and at most 64 characters long. + // * Must start with a letter or underscore. map fields = 3 [(google.api.field_behavior) = REQUIRED]; } @@ -168,9 +211,9 @@ message TagTemplateField { // Output only. The resource name of the tag template field in URL format. Example: // - // `projects/{project_id}/locations/{location}/tagTemplates/{tag_template}/fields/{field}` + // `projects/{PROJECT_ID}/locations/{LOCATION}/tagTemplates/{TAG_TEMPLATE}/fields/{FIELD}` // - // Note: The `TagTemplateField` itself might not be stored in the location + // Note: The tag template field itself might not be stored in the location // specified in its name. // // The name must contain only letters (a-z, A-Z), numbers (0-9), @@ -188,16 +231,18 @@ message TagTemplateField { // Required. The type of value this tag field can contain. FieldType type = 2 [(google.api.field_behavior) = REQUIRED]; - // Whether this is a required field. Defaults to false. + // If true, this field is required. Defaults to false. bool is_required = 3; // The description for this field. Defaults to an empty string. string description = 4; // The order of this field with respect to other fields in this tag - // template. For example, a higher value can indicate a more important field. - // The value can be negative. Multiple fields can have the same order, and - // field orders within a tag do not have to be sequential. + // template. + // + // For example, a higher value can indicate a more important field. + // The value can be negative. Multiple fields can have the same order and + // field orders within a tag don't have to be sequential. int32 order = 5; } @@ -219,13 +264,13 @@ message FieldType { // be case-insensitively unique within this set. // // The order of items in this set is preserved. This field can be used to - // create, remove and reorder enum values. To rename enum values, use the + // create, remove, and reorder enum values. To rename enum values, use the // `RenameTagTemplateFieldEnumValue` method. repeated EnumValue allowed_values = 1; } enum PrimitiveType { - // This is the default invalid value for a type. + // The default invalid value for a type. PRIMITIVE_TYPE_UNSPECIFIED = 0; // A double precision number. @@ -239,14 +284,17 @@ message FieldType { // A timestamp. TIMESTAMP = 4; + + // A Richtext description. + RICHTEXT = 5; } // Required. oneof type_decl { - // Represents primitive types - string, bool etc. + // Primitive types, such as string, boolean, etc. PrimitiveType primitive_type = 1; - // Represents an enum type. + // An enum type. EnumType enum_type = 2; } } diff --git a/google/cloud/datacatalog/v1/timestamps.proto b/google/cloud/datacatalog/v1/timestamps.proto index 6566ce688..2311caf5f 100644 --- a/google/cloud/datacatalog/v1/timestamps.proto +++ b/google/cloud/datacatalog/v1/timestamps.proto @@ -27,15 +27,22 @@ option java_package = "com.google.cloud.datacatalog.v1"; option php_namespace = "Google\\Cloud\\DataCatalog\\V1"; option ruby_package = "Google::Cloud::DataCatalog::V1"; -// Timestamps about this resource according to a particular system. +// Timestamps associated with this resource in a particular system. message SystemTimestamps { - // The creation time of the resource within the given system. + // Creation timestamp of the resource within the given system. google.protobuf.Timestamp create_time = 1; - // The last-modified time of the resource within the given system. + // Timestamp of the last modification of the resource or its metadata within + // a given system. + // + // Note: Depending on the source system, not every modification updates this + // timestamp. + // For example, BigQuery timestamps every metadata modification but not data + // or permission changes. google.protobuf.Timestamp update_time = 2; - // Output only. The expiration time of the resource within the given system. - // Currently only apllicable to BigQuery resources. + // Output only. Expiration timestamp of the resource within the given system. + // + // Currently only applicable to BigQuery resources. google.protobuf.Timestamp expire_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; } diff --git a/google/cloud/datacatalog/v1/usage.proto b/google/cloud/datacatalog/v1/usage.proto new file mode 100644 index 000000000..aa36d37d5 --- /dev/null +++ b/google/cloud/datacatalog/v1/usage.proto @@ -0,0 +1,65 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.datacatalog.v1; + +import "google/protobuf/timestamp.proto"; + +option cc_enable_arenas = true; +option csharp_namespace = "Google.Cloud.DataCatalog.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/datacatalog/v1;datacatalog"; +option java_multiple_files = true; +option java_package = "com.google.cloud.datacatalog.v1"; +option php_namespace = "Google\\Cloud\\DataCatalog\\V1"; +option ruby_package = "Google::Cloud::DataCatalog::V1"; + +// Detailed statistics on the entry's usage. +// +// Usage statistics have the following limitations: +// +// - Only BigQuery tables have them. +// - They only include BigQuery query jobs. +// - They might be underestimated because wildcard table references +// are not yet counted. For more information, see +// [Querying multiple tables using a wildcard table] +// (https://cloud.google.com/bigquery/docs/querying-wildcard-tables) +message UsageStats { + // The number of successful uses of the underlying entry. + float total_completions = 1; + + // The number of failed attempts to use the underlying entry. + float total_failures = 2; + + // The number of cancelled attempts to use the underlying entry. + float total_cancellations = 3; + + // Total time spent only on successful uses, in milliseconds. + float total_execution_time_for_completions_millis = 4; +} + +// The set of all usage signals that Data Catalog stores. +// +// Note: Usually, these signals are updated daily. In rare cases, an update may +// fail but will be performed again on the next day. +message UsageSignal { + // The end timestamp of the duration of usage statistics. + google.protobuf.Timestamp update_time = 1; + + // Usage statistics over each of the predefined time ranges. + // + // Supported time ranges are `{"24H", "7D", "30D"}`. + map usage_within_time_range = 2; +} diff --git a/google/cloud/datacatalog/v1beta1/BUILD.bazel b/google/cloud/datacatalog/v1beta1/BUILD.bazel index b6ddffb17..29c7dbff7 100644 --- a/google/cloud/datacatalog/v1beta1/BUILD.bazel +++ b/google/cloud/datacatalog/v1beta1/BUILD.bazel @@ -178,14 +178,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( diff --git a/google/cloud/datafusion/BUILD.bazel b/google/cloud/datafusion/BUILD.bazel new file mode 100644 index 000000000..994307b48 --- /dev/null +++ b/google/cloud/datafusion/BUILD.bazel @@ -0,0 +1,39 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-data_fusion. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for datafusion. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "datafusion_ruby_wrapper", + srcs = ["//google/cloud/datafusion/v1:datafusion_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-data_fusion", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/data-fusion", + "ruby-cloud-api-id=datafusion.googleapis.com", + "ruby-cloud-api-shortname=datafusion", + ], + ruby_cloud_description = "Cloud Data Fusion is a fully managed, cloud-native, enterprise data integration service for quickly building and managing data pipelines.", + ruby_cloud_title = "Cloud Data Fusion", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-datafusion-ruby", + deps = [ + ":datafusion_ruby_wrapper", + ], +) diff --git a/google/cloud/datafusion/v1/BUILD.bazel b/google/cloud/datafusion/v1/BUILD.bazel new file mode 100644 index 000000000..70b255b5d --- /dev/null +++ b/google/cloud/datafusion/v1/BUILD.bazel @@ -0,0 +1,365 @@ +# This file was automatically generated by BuildFileGenerator +# https://github.com/googleapis/rules_gapic/tree/master/bazel + +# Most of the manual changes to this file will be overwritten. +# It's **only** allowed to change the following rule attribute values: +# - names of *_gapic_assembly_* rules +# - certain parameters of *_gapic_library rules, including but not limited to: +# * extra_protoc_parameters +# * extra_protoc_file_parameters +# The complete list of preserved parameters can be found in the source code. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "datafusion_proto", + srcs = [ + "datafusion.proto", + ], + deps = [ + "//google/api:annotations_proto", + "//google/api:client_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "//google/longrunning:operations_proto", + "@com_google_protobuf//:field_mask_proto", + "@com_google_protobuf//:timestamp_proto", + ], +) + +proto_library_with_info( + name = "datafusion_proto_with_info", + deps = [ + ":datafusion_proto", + "//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "datafusion_java_proto", + deps = [":datafusion_proto"], +) + +java_grpc_library( + name = "datafusion_java_grpc", + srcs = [":datafusion_proto"], + deps = [":datafusion_java_proto"], +) + +java_gapic_library( + name = "datafusion_java_gapic", + srcs = [":datafusion_proto_with_info"], + grpc_service_config = "datafusion_grpc_service_config.json", + test_deps = [ + ":datafusion_java_grpc", + ], + deps = [ + ":datafusion_java_proto", + ], +) + +java_gapic_test( + name = "datafusion_java_gapic_test_suite", + test_classes = [ + "com.google.cloud.datafusion.v1.DataFusionClientTest", + ], + runtime_deps = [":datafusion_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-datafusion-v1-java", + deps = [ + ":datafusion_java_gapic", + ":datafusion_java_grpc", + ":datafusion_java_proto", + ":datafusion_proto", + ], +) + +############################################################################## +# Go +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_gapic_assembly_pkg", + "go_gapic_library", + "go_proto_library", + "go_test", +) + +go_proto_library( + name = "datafusion_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/cloud/datafusion/v1", + protos = [":datafusion_proto"], + deps = [ + "//google/api:annotations_go_proto", + "//google/longrunning:longrunning_go_proto", + ], +) + +go_gapic_library( + name = "datafusion_go_gapic", + srcs = [":datafusion_proto_with_info"], + grpc_service_config = "datafusion_grpc_service_config.json", + importpath = "cloud.google.com/go/datafusion/apiv1;datafusion", + metadata = True, + service_yaml = "datafusion_v1.yaml", + deps = [ + ":datafusion_go_proto", + "//google/longrunning:longrunning_go_proto", + "@com_google_cloud_go//longrunning:go_default_library", + "@com_google_cloud_go//longrunning/autogen:go_default_library", + ], +) + +go_test( + name = "datafusion_go_gapic_test", + srcs = [":datafusion_go_gapic_srcjar_test"], + embed = [":datafusion_go_gapic"], + importpath = "cloud.google.com/go/datafusion/apiv1", +) + +# Open Source Packages +go_gapic_assembly_pkg( + name = "gapi-cloud-datafusion-v1-go", + deps = [ + ":datafusion_go_gapic", + ":datafusion_go_gapic_srcjar-metadata.srcjar", + ":datafusion_go_gapic_srcjar-test.srcjar", + ":datafusion_go_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "datafusion_py_gapic", + srcs = [":datafusion_proto"], + grpc_service_config = "datafusion_grpc_service_config.json", + opt_args = [ + "warehouse-package-name=google-cloud-data-fusion", + "python-gapic-namespace=google.cloud", + "python-gapic-name=data_fusion", + ], +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "datafusion-v1-py", + deps = [ + ":datafusion_py_gapic", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "datafusion_php_proto", + deps = [":datafusion_proto"], +) + +php_grpc_library( + name = "datafusion_php_grpc", + srcs = [":datafusion_proto"], + deps = [":datafusion_php_proto"], +) + +php_gapic_library( + name = "datafusion_php_gapic", + srcs = [":datafusion_proto_with_info"], + grpc_service_config = "datafusion_grpc_service_config.json", + service_yaml = "datafusion_v1.yaml", + deps = [ + ":datafusion_php_grpc", + ":datafusion_php_proto", + ], +) + +# Open Source Packages +php_gapic_assembly_pkg( + name = "google-cloud-datafusion-v1-php", + deps = [ + ":datafusion_php_gapic", + ":datafusion_php_grpc", + ":datafusion_php_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "datafusion_nodejs_gapic", + package_name = "@google-cloud/data-fusion", + src = ":datafusion_proto_with_info", + extra_protoc_parameters = ["metadata"], + grpc_service_config = "datafusion_grpc_service_config.json", + package = "google.cloud.datafusion.v1", + service_yaml = "datafusion_v1.yaml", + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "datafusion-v1-nodejs", + deps = [ + ":datafusion_nodejs_gapic", + ":datafusion_proto", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "datafusion_ruby_proto", + deps = [":datafusion_proto"], +) + +ruby_grpc_library( + name = "datafusion_ruby_grpc", + srcs = [":datafusion_proto"], + deps = [":datafusion_ruby_proto"], +) + +ruby_cloud_gapic_library( + name = "datafusion_ruby_gapic", + srcs = [":datafusion_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-data_fusion-v1", + "ruby-cloud-api-shortname=datafusion", + "ruby-cloud-api-id=datafusion.googleapis.com", + "ruby-cloud-product-url=https://cloud.google.com/data-fusion", + ], + grpc_service_config = "datafusion_grpc_service_config.json", + ruby_cloud_description = "Cloud Data Fusion is a fully managed, cloud-native, enterprise data integration service for quickly building and managing data pipelines.", + ruby_cloud_title = "Cloud Data Fusion V1", + deps = [ + ":datafusion_ruby_grpc", + ":datafusion_ruby_proto", + ], +) + +# Open Source Packages +ruby_gapic_assembly_pkg( + name = "google-cloud-datafusion-v1-ruby", + deps = [ + ":datafusion_ruby_gapic", + ":datafusion_ruby_grpc", + ":datafusion_ruby_proto", + ], +) + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", + "csharp_gapic_library", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "datafusion_csharp_proto", + deps = [":datafusion_proto"], +) + +csharp_grpc_library( + name = "datafusion_csharp_grpc", + srcs = [":datafusion_proto"], + deps = [":datafusion_csharp_proto"], +) + +csharp_gapic_library( + name = "datafusion_csharp_gapic", + srcs = [":datafusion_proto_with_info"], + common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", + grpc_service_config = "datafusion_grpc_service_config.json", + deps = [ + ":datafusion_csharp_grpc", + ":datafusion_csharp_proto", + ], +) + +# Open Source Packages +csharp_gapic_assembly_pkg( + name = "google-cloud-datafusion-v1-csharp", + deps = [ + ":datafusion_csharp_gapic", + ":datafusion_csharp_grpc", + ":datafusion_csharp_proto", + ], +) + +############################################################################## +# C++ +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "datafusion_cc_proto", + deps = [":datafusion_proto"], +) + +cc_grpc_library( + name = "datafusion_cc_grpc", + srcs = [":datafusion_proto"], + grpc_only = True, + deps = [":datafusion_cc_proto"], +) diff --git a/google/cloud/datafusion/v1/datafusion.proto b/google/cloud/datafusion/v1/datafusion.proto new file mode 100644 index 000000000..615105093 --- /dev/null +++ b/google/cloud/datafusion/v1/datafusion.proto @@ -0,0 +1,584 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.datafusion.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Cloud.DataFusion.V1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/datafusion/v1;datafusion"; +option java_multiple_files = true; +option java_package = "com.google.cloud.datafusion.v1"; +option php_namespace = "Google\\Cloud\\DataFusion\\V1"; +option ruby_package = "Google::Cloud::DataFusion::V1"; +option (google.api.resource_definition) = { + type: "cloudkms.googleapis.com/CryptoKey" + pattern: "projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}" +}; + +// Service for creating and managing Data Fusion instances. +// Data Fusion enables ETL developers to build code-free, data integration +// pipelines via a point-and-click UI. +service DataFusion { + option (google.api.default_host) = "datafusion.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Lists possible versions for Data Fusion instances in the specified project + // and location. + rpc ListAvailableVersions(ListAvailableVersionsRequest) returns (ListAvailableVersionsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/versions" + }; + option (google.api.method_signature) = "parent"; + } + + // Lists Data Fusion instances in the specified project and location. + rpc ListInstances(ListInstancesRequest) returns (ListInstancesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/instances" + }; + } + + // Gets details of a single Data Fusion instance. + rpc GetInstance(GetInstanceRequest) returns (Instance) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/instances/*}" + }; + } + + // Creates a new Data Fusion instance in the specified project and location. + rpc CreateInstance(CreateInstanceRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/instances" + body: "instance" + }; + option (google.api.method_signature) = "parent,instance,instance_id"; + option (google.longrunning.operation_info) = { + response_type: "Instance" + metadata_type: "OperationMetadata" + }; + } + + // Deletes a single Date Fusion instance. + rpc DeleteInstance(DeleteInstanceRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/instances/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Updates a single Data Fusion instance. + rpc UpdateInstance(UpdateInstanceRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{instance.name=projects/*/locations/*/instances/*}" + body: "instance" + }; + option (google.api.method_signature) = "instance,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Instance" + metadata_type: "OperationMetadata" + }; + } + + // Restart a single Data Fusion instance. + // At the end of an operation instance is fully restarted. + rpc RestartInstance(RestartInstanceRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*/instances/*}:restart" + body: "*" + }; + option (google.longrunning.operation_info) = { + response_type: "Instance" + metadata_type: "OperationMetadata" + }; + } +} + +// Network configuration for a Data Fusion instance. These configurations +// are used for peering with the customer network. Configurations are optional +// when a public Data Fusion instance is to be created. However, providing +// these configurations allows several benefits, such as reduced network latency +// while accessing the customer resources from managed Data Fusion instance +// nodes, as well as access to the customer on-prem resources. +message NetworkConfig { + // Name of the network in the customer project with which the Tenant Project + // will be peered for executing pipelines. In case of shared VPC where the + // network resides in another host project the network should specified in + // the form of projects/{host-project-id}/global/networks/{network} + string network = 1; + + // The IP range in CIDR notation to use for the managed Data Fusion instance + // nodes. This range must not overlap with any other ranges used in the + // customer network. + string ip_allocation = 2; +} + +// The Data Fusion version. This proto message stores information about certain +// Data Fusion version, which is used for Data Fusion version upgrade. +message Version { + // Each type represents the release availability of a CDF version + enum Type { + // Version does not have availability yet + TYPE_UNSPECIFIED = 0; + + // Version is under development and not considered stable + TYPE_PREVIEW = 1; + + // Version is available for public use + TYPE_GENERAL_AVAILABILITY = 2; + } + + // The version number of the Data Fusion instance, such as '6.0.1.0'. + string version_number = 1; + + // Whether this is currently the default version for Cloud Data Fusion + bool default_version = 2; + + // Represents a list of available feature names for a given version. + repeated string available_features = 3; + + // Type represents the release availability of the version + Type type = 4; +} + +// Identifies Data Fusion accelerators for an instance. +message Accelerator { + // Each type represents an Accelerator (Add-On) supported by Cloud Data Fusion + // service. + enum AcceleratorType { + // Default value, if unspecified. + ACCELERATOR_TYPE_UNSPECIFIED = 0; + + // Change Data Capture accelerator for CDF. + CDC = 1; + + // Cloud Healthcare accelerator for CDF. This accelerator is to enable Cloud + // Healthcare specific CDF plugins developed by Healthcare team. + HEALTHCARE = 2; + + // Contact Center AI Insights + // This accelerator is used to enable import and export pipelines + // custom built to streamline CCAI Insights processing. + CCAI_INSIGHTS = 3; + } + + // Different values possible for the state of an accelerator + enum State { + // Default value, do not use + STATE_UNSPECIFIED = 0; + + // Indicates that the accelerator is enabled and available to use + ENABLED = 1; + + // Indicates that the accelerator is disabled and not available to use + DISABLED = 2; + + // Indicates that accelerator state is currently unknown. + // Requests for enable, disable could be retried while in this state + UNKNOWN = 3; + } + + // The type of an accelator for a CDF instance. + AcceleratorType accelerator_type = 1; + + // The state of the accelerator + State state = 2; +} + +// The crypto key configuration. This field is used by the Customer-managed +// encryption keys (CMEK) feature. +message CryptoKeyConfig { + // The name of the key which is used to encrypt/decrypt customer data. For key + // in Cloud KMS, the key should be in the format of + // `projects/*/locations/*/keyRings/*/cryptoKeys/*`. + string key_reference = 1 [(google.api.resource_reference) = { + type: "cloudkms.googleapis.com/CryptoKey" + }]; +} + +// Represents a Data Fusion instance. +message Instance { + option (google.api.resource) = { + type: "datafusion.googleapis.com/Instance" + pattern: "projects/{project}/locations/{location}/instances/{instance}" + }; + + // Represents the type of Data Fusion instance. Each type is configured with + // the default settings for processing and memory. + enum Type { + // No type specified. The instance creation will fail. + TYPE_UNSPECIFIED = 0; + + // Basic Data Fusion instance. In Basic type, the user will be able to + // create data pipelines using point and click UI. However, there are + // certain limitations, such as fewer number of concurrent pipelines, no + // support for streaming pipelines, etc. + BASIC = 1; + + // Enterprise Data Fusion instance. In Enterprise type, the user will have + // all features available, such as support for streaming pipelines, higher + // number of concurrent pipelines, etc. + ENTERPRISE = 2; + + // Developer Data Fusion instance. In Developer type, the user will have all + // features available but with restrictive capabilities. This is to help + // enterprises design and develop their data ingestion and integration + // pipelines at low cost. + DEVELOPER = 3; + } + + // Represents the state of a Data Fusion instance + enum State { + // Instance does not have a state yet + STATE_UNSPECIFIED = 0; + + // Instance is being created + CREATING = 1; + + // Instance is active and ready for requests. This corresponds to 'RUNNING' + // in datafusion.v1beta1. + ACTIVE = 2; + + // Instance creation failed + FAILED = 3; + + // Instance is being deleted + DELETING = 4; + + // Instance is being upgraded + UPGRADING = 5; + + // Instance is being restarted + RESTARTING = 6; + + // Instance is being updated on customer request + UPDATING = 7; + + // Instance is being auto-updated + AUTO_UPDATING = 8; + + // Instance is being auto-upgraded + AUTO_UPGRADING = 9; + + // Instance is disabled + DISABLED = 10; + } + + // The reason for disabling the instance if the state is DISABLED. + enum DisabledReason { + // This is an unknown reason for disabling. + DISABLED_REASON_UNSPECIFIED = 0; + + // The KMS key used by the instance is either revoked or denied access to + KMS_KEY_ISSUE = 1; + } + + // Output only. The name of this instance is in the form of + // projects/{project}/locations/{location}/instances/{instance}. + string name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; + + // A description of this instance. + string description = 2; + + // Required. Instance type. + Type type = 3 [(google.api.field_behavior) = REQUIRED]; + + // Option to enable Stackdriver Logging. + bool enable_stackdriver_logging = 4; + + // Option to enable Stackdriver Monitoring. + bool enable_stackdriver_monitoring = 5; + + // Specifies whether the Data Fusion instance should be private. If set to + // true, all Data Fusion nodes will have private IP addresses and will not be + // able to access the public internet. + bool private_instance = 6; + + // Network configuration options. These are required when a private Data + // Fusion instance is to be created. + NetworkConfig network_config = 7; + + // The resource labels for instance to use to annotate any related underlying + // resources such as Compute Engine VMs. The character '=' is not allowed to + // be used within the labels. + map labels = 8; + + // Map of additional options used to configure the behavior of + // Data Fusion instance. + map options = 9; + + // Output only. The time the instance was created. + google.protobuf.Timestamp create_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the instance was last updated. + google.protobuf.Timestamp update_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The current state of this Data Fusion instance. + State state = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Additional information about the current state of this Data + // Fusion instance if available. + string state_message = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Endpoint on which the Data Fusion UI is accessible. + string service_endpoint = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Name of the zone in which the Data Fusion instance will be created. Only + // DEVELOPER instances use this field. + string zone = 15; + + // Current version of the Data Fusion. Only specifiable in Update. + string version = 16; + + // Output only. Deprecated. Use tenant_project_id instead to extract the tenant project ID. + string service_account = 17 [ + deprecated = true, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + + // Display name for an instance. + string display_name = 18; + + // Available versions that the instance can be upgraded to using + // UpdateInstanceRequest. + repeated Version available_version = 19; + + // Output only. Endpoint on which the REST APIs is accessible. + string api_endpoint = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Cloud Storage bucket generated by Data Fusion in the customer project. + string gcs_bucket = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of accelerators enabled for this CDF instance. + repeated Accelerator accelerators = 22; + + // Output only. P4 service account for the customer project. + string p4_service_account = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the tenant project. + string tenant_project_id = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // User-managed service account to set on Dataproc when Cloud Data Fusion + // creates Dataproc to run data processing pipelines. + // + // This allows users to have fine-grained access control on Dataproc's + // accesses to cloud resources. + string dataproc_service_account = 25; + + // Option to enable granular role-based access control. + bool enable_rbac = 27; + + // The crypto key configuration. This field is used by the Customer-Managed + // Encryption Keys (CMEK) feature. + CryptoKeyConfig crypto_key_config = 28; + + // Output only. If the instance state is DISABLED, the reason for disabling the instance. + repeated DisabledReason disabled_reason = 29 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Request message for listing Data Fusion instances. +message ListInstancesRequest { + // Required. The project and location for which to retrieve instance information + // in the format projects/{project}/locations/{location}. If the location is + // specified as '-' (wildcard), then all regions available to the project + // are queried, and the results are aggregated. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // The maximum number of items to return. + int32 page_size = 2; + + // The next_page_token value to use if there are additional + // results to retrieve for this list request. + string page_token = 3; + + // List filter. + string filter = 4; + + // Sort results. Supported values are "name", "name desc", or "" (unsorted). + string order_by = 5; +} + +// Response message for the list instance request. +message ListInstancesResponse { + // Represents a list of Data Fusion instances. + repeated Instance instances = 1; + + // Token to retrieve the next page of results or empty if there are no more + // results in the list. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// Request message for the list available versions request. +message ListAvailableVersionsRequest { + // Required. The project and location for which to retrieve instance information + // in the format projects/{project}/locations/{location}. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // The maximum number of items to return. + int32 page_size = 2; + + // The next_page_token value to use if there are additional + // results to retrieve for this list request. + string page_token = 3; + + // Whether or not to return the latest patch of every available minor version. + // If true, only the latest patch will be returned. Ex. if allowed versions is + // [6.1.1, 6.1.2, 6.2.0] then response will be [6.1.2, 6.2.0] + bool latest_patch_only = 4; +} + +// Response message for the list available versions request. +message ListAvailableVersionsResponse { + // Represents a list of versions that are supported. + repeated Version available_versions = 1; + + // Token to retrieve the next page of results or empty if there are no more + // results in the list. + string next_page_token = 2; +} + +// Request message for getting details about a Data Fusion instance. +message GetInstanceRequest { + // Required. The instance resource name in the format + // projects/{project}/locations/{location}/instances/{instance}. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; +} + +// Request message for creating a Data Fusion instance. +message CreateInstanceRequest { + // Required. The instance's project and location in the format + // projects/{project}/locations/{location}. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The name of the instance to create. + string instance_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // An instance resource. + Instance instance = 3; +} + +// Request message for deleting a Data Fusion instance. +message DeleteInstanceRequest { + // Required. The instance resource name in the format + // projects/{project}/locations/{location}/instances/{instance} + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; +} + +// Request message for updating a Data Fusion instance. +// Data Fusion allows updating the labels, options, and stack driver settings. +// This is also used for CDF version upgrade. +message UpdateInstanceRequest { + // Required. The instance resource that replaces the resource on the server. Currently, + // Data Fusion only allows replacing labels, options, and stack driver + // settings. All other fields will be ignored. + Instance instance = 1 [(google.api.field_behavior) = REQUIRED]; + + // Field mask is used to specify the fields that the update will overwrite + // in an instance resource. The fields specified in the update_mask are + // relative to the resource, not the full request. + // A field will be overwritten if it is in the mask. + // If the user does not provide a mask, all the supported fields (labels, + // options, and version currently) will be overwritten. + google.protobuf.FieldMask update_mask = 2; +} + +// Request message for restarting a Data Fusion instance. +message RestartInstanceRequest { + // Required. Name of the Data Fusion instance which need to be restarted in the form of + // projects/{project}/locations/{location}/instances/{instance} + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; +} + +// Represents the metadata of a long-running operation. +message OperationMetadata { + // The time the operation was created. + google.protobuf.Timestamp create_time = 1; + + // The time the operation finished running. + google.protobuf.Timestamp end_time = 2; + + // Server-defined resource path for the target of the operation. + string target = 3; + + // Name of the verb executed by the operation. + string verb = 4; + + // Human-readable status of the operation if any. + string status_detail = 5; + + // Identifies whether the user has requested cancellation + // of the operation. Operations that have successfully been cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`. + bool requested_cancellation = 6; + + // API version used to start the operation. + string api_version = 7; + + // Map to hold any additional status info for the operation + // If there is an accelerator being enabled/disabled/deleted, this will be + // populated with accelerator name as key and status as + // ENABLING, DISABLING or DELETING + map additional_status = 8; +} diff --git a/google/cloud/datafusion/v1/datafusion_grpc_service_config.json b/google/cloud/datafusion/v1/datafusion_grpc_service_config.json new file mode 100644 index 000000000..14284b4a0 --- /dev/null +++ b/google/cloud/datafusion/v1/datafusion_grpc_service_config.json @@ -0,0 +1,12 @@ +{ + "methodConfig": [ + { + "name": [ + { + "service": "google.cloud.datafusion.v1.DataFusion" + } + ], + "timeout": "60s" + } + ] +} diff --git a/google/cloud/datafusion/v1/datafusion_v1.yaml b/google/cloud/datafusion/v1/datafusion_v1.yaml new file mode 100644 index 000000000..71610155e --- /dev/null +++ b/google/cloud/datafusion/v1/datafusion_v1.yaml @@ -0,0 +1,111 @@ +type: google.api.Service +config_version: 3 +name: datafusion.googleapis.com +title: Cloud Data Fusion API + +apis: +- name: google.cloud.datafusion.v1.DataFusion + +types: +- name: google.cloud.datafusion.v1.OperationMetadata + +documentation: + summary: |- + Cloud Data Fusion is a fully-managed, cloud native, enterprise data + integration service for quickly building and managing data pipelines. + It provides a graphical interface to increase time efficiency and + reduce complexity, and allows business users, developers, and data + scientists to easily and reliably build scalable data integration + solutions to cleanse, prepare, blend, transfer and transform data + without having to wrestle with infrastructure. + rules: + - selector: google.cloud.location.Locations.GetLocation + description: Gets information about a location. + + - selector: google.cloud.location.Locations.ListLocations + description: Lists information about the supported locations for this service. + + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + description: |- + Gets the access control policy for a resource. Returns an empty policy + if the resource exists and does not have a policy set. + + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + description: |- + Sets the access control policy on the specified resource. Replaces + any existing policy. + + Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` + errors. + + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + description: |- + Returns permissions that a caller has on the specified resource. If the + resource does not exist, this will return an empty set of + permissions, not a `NOT_FOUND` error. + + Note: This operation is designed to be used for building + permission-aware UIs and command-line tools, not for authorization + checking. This operation may "fail open" without warning. + +backend: + rules: + - selector: 'google.cloud.datafusion.v1.DataFusion.*' + deadline: 60.0 + - selector: google.cloud.location.Locations.GetLocation + deadline: 60.0 + - selector: google.cloud.location.Locations.ListLocations + deadline: 60.0 + - selector: 'google.iam.v1.IAMPolicy.*' + deadline: 60.0 + - selector: 'google.longrunning.Operations.*' + deadline: 60.0 + - selector: google.longrunning.Operations.GetOperation + deadline: 5.0 + +http: + rules: + - selector: google.cloud.location.Locations.GetLocation + get: '/v1/{name=projects/*/locations/*}' + - selector: google.cloud.location.Locations.ListLocations + get: '/v1/{name=projects/*}/locations' + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + get: '/v1/{resource=projects/*/locations/*/instances/*}:getIamPolicy' + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + post: '/v1/{resource=projects/*/locations/*/instances/*}:setIamPolicy' + body: '*' + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + post: '/v1/{resource=projects/*/locations/*/instances/*}:testIamPermissions' + body: '*' + - selector: google.longrunning.Operations.CancelOperation + post: '/v1/{name=projects/*/locations/*/operations/*}:cancel' + body: '*' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/v1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/v1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v1/{name=projects/*/locations/*}/operations' + +authentication: + rules: + - selector: 'google.cloud.datafusion.v1.DataFusion.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.GetLocation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.ListLocations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.iam.v1.IAMPolicy.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.longrunning.Operations.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/datafusion/v1beta1/BUILD.bazel b/google/cloud/datafusion/v1beta1/BUILD.bazel new file mode 100644 index 000000000..c3eb88692 --- /dev/null +++ b/google/cloud/datafusion/v1beta1/BUILD.bazel @@ -0,0 +1,351 @@ +# This file was automatically generated by BuildFileGenerator +# https://github.com/googleapis/rules_gapic/tree/master/bazel + +# Most of the manual changes to this file will be overwritten. +# It's **only** allowed to change the following rule attribute values: +# - names of *_gapic_assembly_* rules +# - certain parameters of *_gapic_library rules, including but not limited to: +# * extra_protoc_parameters +# * extra_protoc_file_parameters +# The complete list of preserved parameters can be found in the source code. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "datafusion_proto", + srcs = [ + "v1beta1.proto", + ], + deps = [ + "//google/api:annotations_proto", + "//google/api:client_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "//google/iam/v1:policy_proto", + "//google/longrunning:operations_proto", + "//google/rpc:status_proto", + "@com_google_protobuf//:field_mask_proto", + "@com_google_protobuf//:timestamp_proto", + ], +) + +proto_library_with_info( + name = "datafusion_proto_with_info", + deps = [ + ":datafusion_proto", + "//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "datafusion_java_proto", + deps = [":datafusion_proto"], +) + +java_grpc_library( + name = "datafusion_java_grpc", + srcs = [":datafusion_proto"], + deps = [":datafusion_java_proto"], +) + +java_gapic_library( + name = "datafusion_java_gapic", + srcs = [":datafusion_proto_with_info"], + grpc_service_config = "datafusion_grpc_service_config.json", + test_deps = [ + ":datafusion_java_grpc", + "//google/iam/v1:iam_java_grpc", + ], + deps = [ + ":datafusion_java_proto", + "//google/iam/v1:iam_java_proto", + ], +) + +java_gapic_test( + name = "datafusion_java_gapic_test_suite", + test_classes = [ + "com.google.cloud.datafusion.v1beta1.DataFusionClientTest", + ], + runtime_deps = [":datafusion_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-datafusion-v1beta1-java", + deps = [ + ":datafusion_java_gapic", + ":datafusion_java_grpc", + ":datafusion_java_proto", + ":datafusion_proto", + ], +) + +############################################################################## +# Go +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_gapic_assembly_pkg", + "go_gapic_library", + "go_proto_library", + "go_test", +) + +go_proto_library( + name = "datafusion_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/cloud/datafusion/v1beta1", + protos = [":datafusion_proto"], + deps = [ + "//google/api:annotations_go_proto", + "//google/iam/v1:iam_go_proto", + "//google/longrunning:longrunning_go_proto", + "//google/rpc:status_go_proto", + ], +) + +go_gapic_library( + name = "datafusion_go_gapic", + srcs = [":datafusion_proto_with_info"], + grpc_service_config = "datafusion_grpc_service_config.json", + importpath = "cloud.google.com/go/datafusion/apiv1beta1;datafusion", + metadata = True, + service_yaml = "datafusion_v1beta1.yaml", + deps = [ + ":datafusion_go_proto", + "//google/iam/v1:iam_go_proto", + "//google/longrunning:longrunning_go_proto", + "@com_google_cloud_go//longrunning:go_default_library", + "@com_google_cloud_go//longrunning/autogen:go_default_library", + ], +) + +go_test( + name = "datafusion_go_gapic_test", + srcs = [":datafusion_go_gapic_srcjar_test"], + embed = [":datafusion_go_gapic"], + importpath = "cloud.google.com/go/datafusion/apiv1beta1", +) + +# Open Source Packages +go_gapic_assembly_pkg( + name = "gapi-cloud-datafusion-v1beta1-go", + deps = [ + ":datafusion_go_gapic", + ":datafusion_go_gapic_srcjar-metadata.srcjar", + ":datafusion_go_gapic_srcjar-test.srcjar", + ":datafusion_go_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "datafusion_py_gapic", + srcs = [":datafusion_proto"], + grpc_service_config = "datafusion_grpc_service_config.json", +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "datafusion-v1beta1-py", + deps = [ + ":datafusion_py_gapic", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "datafusion_php_proto", + deps = [":datafusion_proto"], +) + +php_grpc_library( + name = "datafusion_php_grpc", + srcs = [":datafusion_proto"], + deps = [":datafusion_php_proto"], +) + +php_gapic_library( + name = "datafusion_php_gapic", + srcs = [":datafusion_proto_with_info"], + grpc_service_config = "datafusion_grpc_service_config.json", + service_yaml = "datafusion_v1beta1.yaml", + deps = [ + ":datafusion_php_grpc", + ":datafusion_php_proto", + ], +) + +# Open Source Packages +php_gapic_assembly_pkg( + name = "google-cloud-datafusion-v1beta1-php", + deps = [ + ":datafusion_php_gapic", + ":datafusion_php_grpc", + ":datafusion_php_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "datafusion_nodejs_gapic", + package_name = "@google-cloud/data-fusion", + src = ":datafusion_proto_with_info", + extra_protoc_parameters = ["metadata"], + grpc_service_config = "datafusion_grpc_service_config.json", + package = "google.cloud.datafusion.v1beta1", + service_yaml = "datafusion_v1beta1.yaml", + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "datafusion-v1beta1-nodejs", + deps = [ + ":datafusion_nodejs_gapic", + ":datafusion_proto", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "datafusion_ruby_proto", + deps = [":datafusion_proto"], +) + +ruby_grpc_library( + name = "datafusion_ruby_grpc", + srcs = [":datafusion_proto"], + deps = [":datafusion_ruby_proto"], +) + +ruby_cloud_gapic_library( + name = "datafusion_ruby_gapic", + srcs = [":datafusion_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-data_fusion-v1beta1", + "ruby-cloud-api-shortname=datafusion", + "ruby-cloud-api-id=datafusion.googleapis.com", + "ruby-cloud-product-url=https://cloud.google.com/data-fusion", + ], + grpc_service_config = "datafusion_grpc_service_config.json", + ruby_cloud_description = "Cloud Data Fusion is a fully managed, cloud-native, enterprise data integration service for quickly building and managing data pipelines.", + ruby_cloud_title = "Cloud Data Fusion V1beta1", + deps = [ + ":datafusion_ruby_grpc", + ":datafusion_ruby_proto", + ], +) + +# Open Source Packages +ruby_gapic_assembly_pkg( + name = "google-cloud-datafusion-v1beta1-ruby", + deps = [ + ":datafusion_ruby_gapic", + ":datafusion_ruby_grpc", + ":datafusion_ruby_proto", + ], +) + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", + "csharp_gapic_library", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "datafusion_csharp_proto", + deps = [":datafusion_proto"], +) + +csharp_grpc_library( + name = "datafusion_csharp_grpc", + srcs = [":datafusion_proto"], + deps = [":datafusion_csharp_proto"], +) + +csharp_gapic_library( + name = "datafusion_csharp_gapic", + srcs = [":datafusion_proto_with_info"], + common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", + grpc_service_config = "datafusion_grpc_service_config.json", + deps = [ + ":datafusion_csharp_grpc", + ":datafusion_csharp_proto", + ], +) + +# Open Source Packages +csharp_gapic_assembly_pkg( + name = "google-cloud-datafusion-v1beta1-csharp", + deps = [ + ":datafusion_csharp_gapic", + ":datafusion_csharp_grpc", + ":datafusion_csharp_proto", + ], +) + +############################################################################## +# C++ +############################################################################## +# Put your C++ rules here diff --git a/google/cloud/datafusion/v1beta1/datafusion_grpc_service_config.json b/google/cloud/datafusion/v1beta1/datafusion_grpc_service_config.json new file mode 100644 index 000000000..b97f400d0 --- /dev/null +++ b/google/cloud/datafusion/v1beta1/datafusion_grpc_service_config.json @@ -0,0 +1,12 @@ +{ + "methodConfig": [ + { + "name": [ + { + "service": "google.cloud.datafusion.v1beta1.DataFusion" + } + ], + "timeout": "60s" + } + ] +} diff --git a/google/cloud/datafusion/v1beta1/datafusion_v1beta1.yaml b/google/cloud/datafusion/v1beta1/datafusion_v1beta1.yaml new file mode 100644 index 000000000..d3f79be15 --- /dev/null +++ b/google/cloud/datafusion/v1beta1/datafusion_v1beta1.yaml @@ -0,0 +1,119 @@ +type: google.api.Service +config_version: 3 +name: datafusion.googleapis.com +title: Cloud Data Fusion API + +apis: +- name: google.cloud.datafusion.v1beta1.DataFusion + +types: +- name: google.cloud.datafusion.v1beta1.OperationMetadata + +documentation: + summary: |- + Cloud Data Fusion is a fully-managed, cloud native, enterprise data + integration service for quickly building and managing data pipelines. + It provides a graphical interface to increase time efficiency and + reduce complexity, and allows business users, developers, and data + scientists to easily and reliably build scalable data integration + solutions to cleanse, prepare, blend, transfer and transform data + without having to wrestle with infrastructure. + rules: + - selector: google.cloud.location.Locations.GetLocation + description: Gets information about a location. + + - selector: google.cloud.location.Locations.ListLocations + description: Lists information about the supported locations for this service. + + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + description: |- + Gets the access control policy for a resource. Returns an empty policy + if the resource exists and does not have a policy set. + + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + description: |- + Sets the access control policy on the specified resource. Replaces + any existing policy. + + Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` + errors. + + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + description: |- + Returns permissions that a caller has on the specified resource. If the + resource does not exist, this will return an empty set of + permissions, not a `NOT_FOUND` error. + + Note: This operation is designed to be used for building + permission-aware UIs and command-line tools, not for authorization + checking. This operation may "fail open" without warning. + +backend: + rules: + - selector: 'google.cloud.datafusion.v1beta1.DataFusion.*' + deadline: 60.0 + - selector: google.cloud.location.Locations.GetLocation + deadline: 60.0 + - selector: google.cloud.location.Locations.ListLocations + deadline: 60.0 + - selector: 'google.iam.v1.IAMPolicy.*' + deadline: 60.0 + - selector: 'google.longrunning.Operations.*' + deadline: 60.0 + - selector: google.longrunning.Operations.GetOperation + deadline: 5.0 + +http: + rules: + - selector: google.cloud.location.Locations.GetLocation + get: '/v1beta1/{name=projects/*/locations/*}' + - selector: google.cloud.location.Locations.ListLocations + get: '/v1beta1/{name=projects/*}/locations' + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + get: '/v1beta1/{resource=projects/*/locations/*/instances/*}:getIamPolicy' + additional_bindings: + - get: '/v1beta1/{resource=projects/*/locations/*/instances/*/namespaces/*}:getIamPolicy' + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + post: '/v1beta1/{resource=projects/*/locations/*/instances/*}:setIamPolicy' + body: '*' + additional_bindings: + - post: '/v1beta1/{resource=projects/*/locations/*/instances/*/namespaces/*}:setIamPolicy' + body: '*' + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + post: '/v1beta1/{resource=projects/*/locations/*/instances/*}:testIamPermissions' + body: '*' + additional_bindings: + - post: '/v1beta1/{resource=projects/*/locations/*/instances/*/namespaces/*}:testIamPermissions' + body: '*' + - selector: google.longrunning.Operations.CancelOperation + post: '/v1beta1/{name=projects/*/locations/*/operations/*}:cancel' + body: '*' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/v1beta1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/v1beta1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v1beta1/{name=projects/*/locations/*}/operations' + +authentication: + rules: + - selector: 'google.cloud.datafusion.v1beta1.DataFusion.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.GetLocation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.ListLocations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.iam.v1.IAMPolicy.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.longrunning.Operations.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/datafusion/v1beta1/v1beta1.proto b/google/cloud/datafusion/v1beta1/v1beta1.proto new file mode 100644 index 000000000..ac3f309c1 --- /dev/null +++ b/google/cloud/datafusion/v1beta1/v1beta1.proto @@ -0,0 +1,791 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.datafusion.v1beta1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/iam/v1/policy.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; +import "google/rpc/status.proto"; + +option csharp_namespace = "Google.Cloud.DataFusion.V1Beta1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/datafusion/v1beta1;datafusion"; +option java_multiple_files = true; +option java_package = "com.google.cloud.datafusion.v1beta1"; +option php_namespace = "Google\\Cloud\\DataFusion\\V1beta1"; +option ruby_package = "Google::Cloud::DataFusion::V1beta1"; +option (google.api.resource_definition) = { + type: "cloudkms.googleapis.com/CryptoKey" + pattern: "projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}" +}; + +// Service for creating and managing Data Fusion instances. +// Data Fusion enables ETL developers to build code-free, data integration +// pipelines via a point-and-click UI. +service DataFusion { + option (google.api.default_host) = "datafusion.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Lists possible versions for Data Fusion instances in the specified project + // and location. + rpc ListAvailableVersions(ListAvailableVersionsRequest) returns (ListAvailableVersionsResponse) { + option (google.api.http) = { + get: "/v1beta1/{parent=projects/*/locations/*}/versions" + }; + option (google.api.method_signature) = "parent"; + } + + // Lists Data Fusion instances in the specified project and location. + rpc ListInstances(ListInstancesRequest) returns (ListInstancesResponse) { + option (google.api.http) = { + get: "/v1beta1/{parent=projects/*/locations/*}/instances" + }; + } + + // Gets details of a single Data Fusion instance. + rpc GetInstance(GetInstanceRequest) returns (Instance) { + option (google.api.http) = { + get: "/v1beta1/{name=projects/*/locations/*/instances/*}" + }; + } + + // Creates a new Data Fusion instance in the specified project and location. + rpc CreateInstance(CreateInstanceRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1beta1/{parent=projects/*/locations/*}/instances" + body: "instance" + }; + option (google.api.method_signature) = "parent,instance,instance_id"; + option (google.longrunning.operation_info) = { + response_type: "Instance" + metadata_type: "OperationMetadata" + }; + } + + // Deletes a single Data Fusion instance. + rpc DeleteInstance(DeleteInstanceRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1beta1/{name=projects/*/locations/*/instances/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Updates a single Data Fusion instance. + rpc UpdateInstance(UpdateInstanceRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1beta1/{instance.name=projects/*/locations/*/instances/*}" + body: "instance" + }; + option (google.api.method_signature) = "instance,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Instance" + metadata_type: "OperationMetadata" + }; + } + + // Restart a single Data Fusion instance. + // At the end of an operation instance is fully restarted. + rpc RestartInstance(RestartInstanceRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1beta1/{name=projects/*/locations/*/instances/*}:restart" + body: "*" + }; + option (google.longrunning.operation_info) = { + response_type: "Instance" + metadata_type: "OperationMetadata" + }; + } + + // Upgrade a single Data Fusion instance. + // At the end of an operation instance is fully upgraded. + rpc UpgradeInstance(UpgradeInstanceRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1beta1/{name=projects/*/locations/*/instances/*}:upgrade" + body: "*" + }; + option (google.longrunning.operation_info) = { + response_type: "Instance" + metadata_type: "OperationMetadata" + }; + } + + // Remove IAM policy that is currently set on the given resource. + rpc RemoveIamPolicy(RemoveIamPolicyRequest) returns (RemoveIamPolicyResponse) { + option (google.api.http) = { + post: "/v1beta1/{resource=projects/*/locations/*/**}:removeIamPolicy" + body: "*" + }; + } + + // List namespaces in a given instance + rpc ListNamespaces(ListNamespacesRequest) returns (ListNamespacesResponse) { + option (google.api.http) = { + get: "/v1beta1/{parent=projects/*/locations/*/instances/*}/namespaces" + }; + option (google.api.method_signature) = "parent"; + } + + // Add DNS peering on the given resource. + rpc AddDnsPeering(AddDnsPeeringRequest) returns (AddDnsPeeringResponse) { + option (google.api.http) = { + post: "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:add" + body: "*" + }; + option (google.api.method_signature) = "parent"; + } + + // Remove DNS peering on the given resource. + rpc RemoveDnsPeering(RemoveDnsPeeringRequest) returns (RemoveDnsPeeringResponse) { + option (google.api.http) = { + post: "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:remove" + body: "*" + }; + option (google.api.method_signature) = "parent"; + } + + // List DNS peering for a given resource. + rpc ListDnsPeerings(ListDnsPeeringsRequest) returns (ListDnsPeeringsResponse) { + option (google.api.http) = { + get: "/v1beta1/{parent=projects/*/locations/*/instances/*}/dnsPeerings:list" + }; + option (google.api.method_signature) = "parent"; + } +} + +// Network configuration for a Data Fusion instance. These configurations +// are used for peering with the customer network. Configurations are optional +// when a public Data Fusion instance is to be created. However, providing +// these configurations allows several benefits, such as reduced network latency +// while accessing the customer resources from managed Data Fusion instance +// nodes, as well as access to the customer on-prem resources. +message NetworkConfig { + // Name of the network in the customer project with which the Tenant Project + // will be peered for executing pipelines. In case of shared VPC where the + // network resides in another host project the network should specified in + // the form of projects/{host-project-id}/global/networks/{network} + string network = 1; + + // The IP range in CIDR notation to use for the managed Data Fusion instance + // nodes. This range must not overlap with any other ranges used in the Data + // Fusion instance network. + string ip_allocation = 2; +} + +// The Data Fusion version. +message Version { + // Each type represents the release availability of a CDF version + enum Type { + // Version does not have availability yet + TYPE_UNSPECIFIED = 0; + + // Version is under development and not considered stable + TYPE_PREVIEW = 1; + + // Version is available for public use + TYPE_GENERAL_AVAILABILITY = 2; + } + + // The version number of the Data Fusion instance, such as '6.0.1.0'. + string version_number = 1; + + // Whether this is currently the default version for Cloud Data Fusion + bool default_version = 2; + + // Represents a list of available feature names for a given version. + repeated string available_features = 3; + + // Type represents the release availability of the version + Type type = 4; +} + +// Identifies Data Fusion accelerators for an instance. +message Accelerator { + // Each type represents an Accelerator (Add-On) supported by Cloud Data Fusion + // service. + enum AcceleratorType { + // Default value, if unspecified. + ACCELERATOR_TYPE_UNSPECIFIED = 0; + + // Change Data Capture accelerator for CDF. + CDC = 1; + + // Cloud Healthcare accelerator for CDF. This accelerator is to enable Cloud + // Healthcare specific CDF plugins developed by Healthcare team. + HEALTHCARE = 2; + } + + // The type of an accelator for a CDF instance. + AcceleratorType accelerator_type = 1; +} + +// The crypto key configuration. This field is used by the Customer-managed +// encryption keys (CMEK) feature. +message CryptoKeyConfig { + // The name of the key which is used to encrypt/decrypt customer data. For key + // in Cloud KMS, the key should be in the format of + // `projects/*/locations/*/keyRings/*/cryptoKeys/*`. + string key_reference = 1 [(google.api.resource_reference) = { + type: "cloudkms.googleapis.com/CryptoKey" + }]; +} + +// Represents a Data Fusion instance. +message Instance { + option (google.api.resource) = { + type: "datafusion.googleapis.com/Instance" + pattern: "projects/{project}/locations/{location}/instances/{instance}" + }; + + // Represents the type of Data Fusion instance. Each type is configured with + // the default settings for processing and memory. + enum Type { + // No type specified. The instance creation will fail. + TYPE_UNSPECIFIED = 0; + + // Basic Data Fusion instance. In Basic type, the user will be able to + // create data pipelines using point and click UI. However, there are + // certain limitations, such as fewer number of concurrent pipelines, no + // support for streaming pipelines, etc. + BASIC = 1; + + // Enterprise Data Fusion instance. In Enterprise type, the user will have + // all features available, such as support for streaming pipelines, + // unlimited number of concurrent pipelines, etc. + ENTERPRISE = 2; + + // Developer Data Fusion instance. In Developer type, the user will have all + // features available but with restrictive capabilities. This is to help + // enterprises design and develop their data ingestion and integration + // pipelines at low cost. + DEVELOPER = 3; + } + + // Represents the state of a Data Fusion instance + enum State { + // Instance does not have a state yet + STATE_UNSPECIFIED = 0; + + // Instance is being created + CREATING = 1; + + // Instance is running and ready for requests + RUNNING = 2; + + // Instance creation failed + FAILED = 3; + + // Instance is being deleted + DELETING = 4; + + // Instance is being upgraded + UPGRADING = 5; + + // Instance is being restarted + RESTARTING = 6; + + // Instance is being updated on customer request + UPDATING = 7; + + // Instance is being auto-updated + AUTO_UPDATING = 8; + + // Instance is being auto-upgraded + AUTO_UPGRADING = 9; + + // Instance is disabled + DISABLED = 10; + } + + // The reason for disabling the instance if the state is DISABLED. + enum DisabledReason { + // This is an unknown reason for disabling. + DISABLED_REASON_UNSPECIFIED = 0; + + // The KMS key used by the instance is either revoked or denied access to + KMS_KEY_ISSUE = 1; + } + + // Output only. The name of this instance is in the form of + // projects/{project}/locations/{location}/instances/{instance}. + string name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; + + // A description of this instance. + string description = 2; + + // Required. Instance type. + Type type = 3 [(google.api.field_behavior) = REQUIRED]; + + // Option to enable Stackdriver Logging. + bool enable_stackdriver_logging = 4; + + // Option to enable Stackdriver Monitoring. + bool enable_stackdriver_monitoring = 5; + + // Specifies whether the Data Fusion instance should be private. If set to + // true, all Data Fusion nodes will have private IP addresses and will not be + // able to access the public internet. + bool private_instance = 6; + + // Network configuration options. These are required when a private Data + // Fusion instance is to be created. + NetworkConfig network_config = 7; + + // The resource labels for instance to use to annotate any related underlying + // resources such as Compute Engine VMs. The character '=' is not allowed to + // be used within the labels. + map labels = 8; + + // Map of additional options used to configure the behavior of + // Data Fusion instance. + map options = 9; + + // Output only. The time the instance was created. + google.protobuf.Timestamp create_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the instance was last updated. + google.protobuf.Timestamp update_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The current state of this Data Fusion instance. + State state = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Additional information about the current state of this Data + // Fusion instance if available. + string state_message = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Endpoint on which the Data Fusion UI is accessible. + string service_endpoint = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Name of the zone in which the Data Fusion instance will be created. Only + // DEVELOPER instances use this field. + string zone = 15; + + // Current version of Data Fusion. + string version = 16; + + // Output only. Deprecated. Use tenant_project_id instead to extract the tenant project ID. + string service_account = 17 [ + deprecated = true, + (google.api.field_behavior) = OUTPUT_ONLY + ]; + + // Display name for an instance. + string display_name = 18; + + // Available versions that the instance can be upgraded to using + // UpdateInstanceRequest. + repeated Version available_version = 19; + + // Output only. Endpoint on which the REST APIs is accessible. + string api_endpoint = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Cloud Storage bucket generated by Data Fusion in the customer project. + string gcs_bucket = 21 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // List of accelerators enabled for this CDF instance. + repeated Accelerator accelerators = 22; + + // Output only. P4 service account for the customer project. + string p4_service_account = 23 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The name of the tenant project. + string tenant_project_id = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // User-managed service account to set on Dataproc when Cloud Data Fusion + // creates Dataproc to run data processing pipelines. + // + // This allows users to have fine-grained access control on Dataproc's + // accesses to cloud resources. + string dataproc_service_account = 25; + + // Option to enable granular role-based access control. + bool enable_rbac = 26; + + // The crypto key configuration. This field is used by the Customer-Managed + // Encryption Keys (CMEK) feature. + CryptoKeyConfig crypto_key_config = 27; + + // Output only. If the instance state is DISABLED, the reason for disabling the instance. + repeated DisabledReason disabled_reason = 28 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Request message for listing Data Fusion instances. +message ListInstancesRequest { + // Required. The project and location for which to retrieve instance information + // in the format projects/{project}/locations/{location}. If the location is + // specified as '-' (wildcard), then all regions available to the project + // are queried, and the results are aggregated. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // The maximum number of items to return. + int32 page_size = 2; + + // The next_page_token value to use if there are additional + // results to retrieve for this list request. + string page_token = 3; + + // List filter. + string filter = 4; + + // Sort results. Supported values are "name", "name desc", or "" (unsorted). + string order_by = 5; +} + +// Response message for the list instance request. +message ListInstancesResponse { + // Represents a list of Data Fusion instances. + repeated Instance instances = 1; + + // Token to retrieve the next page of results or empty if there are no more + // results in the list. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// Request message for the list available versions request. +message ListAvailableVersionsRequest { + // Required. The project and location for which to retrieve instance information + // in the format projects/{project}/locations/{location}. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // The maximum number of items to return. + int32 page_size = 2; + + // The next_page_token value to use if there are additional + // results to retrieve for this list request. + string page_token = 3; + + // Whether or not to return the latest patch of every available minor version. + // If true, only the latest patch will be returned. Ex. if allowed versions is + // [6.1.1, 6.1.2, 6.2.0] then response will be [6.1.2, 6.2.0] + bool latest_patch_only = 4; +} + +// Response message for the list available versions request. +message ListAvailableVersionsResponse { + // Represents a list of versions that are supported. + repeated Version available_versions = 1; + + // Token to retrieve the next page of results or empty if there are no more + // results in the list. + string next_page_token = 2; +} + +// Request message for getting details about a Data Fusion instance. +message GetInstanceRequest { + // Required. The instance resource name in the format + // projects/{project}/locations/{location}/instances/{instance}. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; +} + +// Request message for creating a Data Fusion instance. +message CreateInstanceRequest { + // Required. The instance's project and location in the format + // projects/{project}/locations/{location}. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. The name of the instance to create. + string instance_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // An instance resource. + Instance instance = 3; +} + +// Request message for deleting a Data Fusion instance. +message DeleteInstanceRequest { + // Required. The instance resource name in the format + // projects/{project}/locations/{location}/instances/{instance} + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; +} + +// Request message for updating a Data Fusion instance. +// Data Fusion only allows updating the labels, options, and stack driver +// settings. +message UpdateInstanceRequest { + // Required. The instance resource that replaces the resource on the server. Currently, + // Data Fusion only allows replacing labels, options, and stack driver + // settings. All other fields will be ignored. + Instance instance = 1 [(google.api.field_behavior) = REQUIRED]; + + // Field mask is used to specify the fields that the update will overwrite + // in an instance resource. The fields specified in the update_mask are + // relative to the resource, not the full request. + // A field will be overwritten if it is in the mask. + // If the user does not provide a mask, all the supported fields (labels and + // options currently) will be overwritten. + google.protobuf.FieldMask update_mask = 2; +} + +// Request message for restarting a Data Fusion instance. +message RestartInstanceRequest { + // Required. Name of the Data Fusion instance which need to be restarted in the form of + // projects/{project}/locations/{location}/instances/{instance} + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; +} + +// Request message for upgrading a Data Fusion instance. +// To change the instance properties, instance update should be used. +message UpgradeInstanceRequest { + // Required. Name of the Data Fusion instance which need to be upgraded in the form of + // projects/{project}/locations/{location}/instances/{instance} + // Instance will be upgraded with the latest stable version of the Data + // Fusion. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; +} + +// Represents the metadata of a long-running operation. +message OperationMetadata { + // The time the operation was created. + google.protobuf.Timestamp create_time = 1; + + // The time the operation finished running. + google.protobuf.Timestamp end_time = 2; + + // Server-defined resource path for the target of the operation. + string target = 3; + + // Name of the verb executed by the operation. + string verb = 4; + + // Human-readable status of the operation if any. + string status_detail = 5; + + // Identifies whether the user has requested cancellation + // of the operation. Operations that have successfully been cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`. + bool requested_cancellation = 6; + + // API version used to start the operation. + string api_version = 7; +} + +// Request message for RemoveIamPolicy method. +message RemoveIamPolicyRequest { + // Required. The resource on which IAM policy to be removed is attached to. + string resource = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for RemoveIamPolicy method. +message RemoveIamPolicyResponse { + +} + +// List namespaces request. +message ListNamespacesRequest { + // Required. The instance to list its namespaces. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; + + // The maximum number of items to return. + int32 page_size = 2; + + // The next_page_token value to use if there are additional + // results to retrieve for this list request. + string page_token = 3; + + // By default, only basic information about a namespace is returned + // (e.g. name). When `NAMESPACE_VIEW_FULL` is specified, additional + // information associated with a namespace gets returned + // (e.g. IAM policy set on the namespace) + NamespaceView view = 4; +} + +// IAMPolicy encapsulates the IAM policy name, definition and status of +// policy fetching. +message IAMPolicy { + // Policy definition if IAM policy fetching is successful, + // otherwise empty. + google.iam.v1.Policy policy = 1; + + // Status of iam policy fetching. + google.rpc.Status status = 2; +} + +// Represents the information of a namespace +message Namespace { + option (google.api.resource) = { + type: "datafusion.googleapis.com/Namespace" + pattern: "projects/{project}/locations/{location}/instances/{instance}/namespaces/{namespace}" + }; + + // Name of the given namespace. + string name = 1; + + // IAM policy associated with this namespace. + IAMPolicy iam_policy = 2; +} + +// List namespaces response. +message ListNamespacesResponse { + // List of namespaces + repeated Namespace namespaces = 1; + + // Token to retrieve the next page of results or empty if there are no more + // results in the list. + string next_page_token = 2; +} + +// DNS peering configuration. These configurations are used to create +// DNS peering with the customer Cloud DNS. +message DnsPeering { + // Required. Name of the zone. + string zone = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Name of the dns. + string domain = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Optional description of the dns zone. + string description = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Optional target project to which dns peering should happen. + string target_project = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Optional target network to which dns peering should happen. + string target_network = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// Request message to create dns peering. +message AddDnsPeeringRequest { + // Required. The resource on which DNS peering will be created. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; + + // Dns peering config. + DnsPeering dns_peering = 2; +} + +// Response message for set dns peering method. +message AddDnsPeeringResponse { + +} + +// A view for Namespace +enum NamespaceView { + // Default/unset value, which will use BASIC view. + NAMESPACE_VIEW_UNSPECIFIED = 0; + + // Show the most basic metadata of a namespace + NAMESPACE_VIEW_BASIC = 1; + + // Returns all metadata of a namespace + NAMESPACE_VIEW_FULL = 2; +} + +// Request message to remove dns peering. +message RemoveDnsPeeringRequest { + // Required. The resource on which DNS peering will be removed. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; + + // Required. The zone to be removed. + string zone = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// Response message for set dns peering method. +message RemoveDnsPeeringResponse { + +} + +// List dns peering request. +message ListDnsPeeringsRequest { + // Required. The resource on which dns peering will be listed. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datafusion.googleapis.com/Instance" + } + ]; + + // The maximum number of items to return. + int32 page_size = 2; + + // The next_page_token value to use if there are additional + // results to retrieve for this list request. + string page_token = 3; +} + +// List dns peering response. +message ListDnsPeeringsResponse { + // List of dns peering configs. + repeated DnsPeering dns_peerings = 1; + + // Token to retrieve the next page of results or empty if there are no more + // results in the list. + string next_page_token = 2; +} diff --git a/google/cloud/datalabeling/BUILD.bazel b/google/cloud/datalabeling/BUILD.bazel index a87c57fec..768c48c18 100644 --- a/google/cloud/datalabeling/BUILD.bazel +++ b/google/cloud/datalabeling/BUILD.bazel @@ -1 +1,40 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-data_labeling. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for datalabeling. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1beta1 in this case. +ruby_cloud_gapic_library( + name = "datalabeling_ruby_wrapper", + srcs = ["//google/cloud/datalabeling/v1beta1:datalabeling_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-data_labeling", + "ruby-cloud-env-prefix=DATA_LABELING", + "ruby-cloud-wrapper-of=v1beta1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/ai-platform/data-labeling/docs", + "ruby-cloud-api-id=datalabeling.googleapis.com", + "ruby-cloud-api-shortname=datalabeling", + ], + ruby_cloud_description = "AI Platform Data Labeling Service lets you work with human labelers to generate highly accurate labels for a collection of data that you can use in machine learning models.", + ruby_cloud_title = "AI Platform Data Labeling Service", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-datalabeling-ruby", + deps = [ + ":datalabeling_ruby_wrapper", + ], +) diff --git a/google/cloud/datalabeling/v1beta1/BUILD.bazel b/google/cloud/datalabeling/v1beta1/BUILD.bazel index 41e90cd41..f12943857 100644 --- a/google/cloud/datalabeling/v1beta1/BUILD.bazel +++ b/google/cloud/datalabeling/v1beta1/BUILD.bazel @@ -178,14 +178,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -203,6 +202,7 @@ php_gapic_library( name = "datalabeling_php_gapic", srcs = [":datalabeling_proto_with_info"], grpc_service_config = "datalabeling_grpc_service_config.json", + service_yaml = "datalabeling_v1beta1.yaml", deps = [ ":datalabeling_php_grpc", ":datalabeling_php_proto", diff --git a/google/cloud/datalabeling/v1beta1/datalabeling_v1beta1.yaml b/google/cloud/datalabeling/v1beta1/datalabeling_v1beta1.yaml index 3814b2388..c921ad9d7 100644 --- a/google/cloud/datalabeling/v1beta1/datalabeling_v1beta1.yaml +++ b/google/cloud/datalabeling/v1beta1/datalabeling_v1beta1.yaml @@ -39,14 +39,14 @@ documentation: Sets the access control policy on the specified resource. Replaces any existing policy. - Can return Public Errors: NOT_FOUND, INVALID_ARGUMENT and - PERMISSION_DENIED + Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` + errors. - selector: google.iam.v1.IAMPolicy.TestIamPermissions description: |- Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of - permissions, not a NOT_FOUND error. + permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization @@ -61,6 +61,17 @@ backend: - selector: 'google.longrunning.Operations.*' deadline: 60.0 +http: + rules: + - selector: google.longrunning.Operations.CancelOperation + get: '/v1beta1/{name=projects/*/operations/*}:cancel' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/v1beta1/{name=projects/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/v1beta1/{name=projects/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v1beta1/{name=projects/*}/operations' + authentication: rules: - selector: 'google.cloud.datalabeling.v1beta1.DataLabelingService.*' diff --git a/google/cloud/dataplex/v1/BUILD.bazel b/google/cloud/dataplex/v1/BUILD.bazel new file mode 100644 index 000000000..c8ec17499 --- /dev/null +++ b/google/cloud/dataplex/v1/BUILD.bazel @@ -0,0 +1,366 @@ +# This file was automatically generated by BuildFileGenerator +# https://github.com/googleapis/rules_gapic/tree/master/bazel + +# Most of the manual changes to this file will be overwritten. +# It's **only** allowed to change the following rule attribute values: +# - names of *_gapic_assembly_* rules +# - certain parameters of *_gapic_library rules, including but not limited to: +# * extra_protoc_parameters +# * extra_protoc_file_parameters +# The complete list of preserved parameters can be found in the source code. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "dataplex_proto", + srcs = [ + "logs.proto", + "metadata.proto", + "resources.proto", + "service.proto", + "tasks.proto", + ], + deps = [ + "//google/api:annotations_proto", + "//google/api:client_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "//google/longrunning:operations_proto", + "@com_google_protobuf//:duration_proto", + "@com_google_protobuf//:empty_proto", + "@com_google_protobuf//:field_mask_proto", + "@com_google_protobuf//:timestamp_proto", + ], +) + +proto_library_with_info( + name = "dataplex_proto_with_info", + deps = [ + ":dataplex_proto", + "//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "dataplex_java_proto", + deps = [":dataplex_proto"], +) + +java_grpc_library( + name = "dataplex_java_grpc", + srcs = [":dataplex_proto"], + deps = [":dataplex_java_proto"], +) + +java_gapic_library( + name = "dataplex_java_gapic", + srcs = [":dataplex_proto_with_info"], + gapic_yaml = None, + grpc_service_config = "dataplex_grpc_service_config.json", + service_yaml = "dataplex_v1.yaml", + test_deps = [ + ":dataplex_java_grpc", + ], + deps = [ + ":dataplex_java_proto", + "//google/api:api_java_proto", + ], +) + +java_gapic_test( + name = "dataplex_java_gapic_test_suite", + test_classes = [ + "com.google.cloud.dataplex.v1.DataplexServiceClientTest", + "com.google.cloud.dataplex.v1.MetadataServiceClientTest", + ], + runtime_deps = [":dataplex_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-dataplex-v1-java", + deps = [ + ":dataplex_java_gapic", + ":dataplex_java_grpc", + ":dataplex_java_proto", + ":dataplex_proto", + ], +) + +############################################################################## +# Go +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_gapic_assembly_pkg", + "go_gapic_library", + "go_proto_library", + "go_test", +) + +go_proto_library( + name = "dataplex_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/cloud/dataplex/v1", + protos = [":dataplex_proto"], + deps = [ + "//google/api:annotations_go_proto", + "//google/longrunning:longrunning_go_proto", + ], +) + +go_gapic_library( + name = "dataplex_go_gapic", + srcs = [":dataplex_proto_with_info"], + grpc_service_config = "dataplex_grpc_service_config.json", + importpath = "cloud.google.com/go/dataplex/apiv1;dataplex", + service_yaml = "dataplex_v1.yaml", + metadata = True, + deps = [ + ":dataplex_go_proto", + "//google/longrunning:longrunning_go_proto", + "@com_google_cloud_go//longrunning/autogen:go_default_library", + "@com_google_cloud_go//longrunning:go_default_library", + "@io_bazel_rules_go//proto/wkt:duration_go_proto", + ], +) + +go_test( + name = "dataplex_go_gapic_test", + srcs = [":dataplex_go_gapic_srcjar_test"], + embed = [":dataplex_go_gapic"], + importpath = "cloud.google.com/go/dataplex/apiv1", +) + +# Open Source Packages +go_gapic_assembly_pkg( + name = "gapi-cloud-dataplex-v1-go", + deps = [ + ":dataplex_go_gapic", + ":dataplex_go_gapic_srcjar-test.srcjar", + ":dataplex_go_gapic_srcjar-metadata.srcjar", + ":dataplex_go_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "dataplex_py_gapic", + srcs = [":dataplex_proto"], + grpc_service_config = "dataplex_grpc_service_config.json", +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "dataplex-v1-py", + deps = [ + ":dataplex_py_gapic", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "dataplex_php_proto", + deps = [":dataplex_proto"], +) + +php_grpc_library( + name = "dataplex_php_grpc", + srcs = [":dataplex_proto"], + deps = [":dataplex_php_proto"], +) + +php_gapic_library( + name = "dataplex_php_gapic", + srcs = [":dataplex_proto_with_info"], + grpc_service_config = "dataplex_grpc_service_config.json", + service_yaml = "dataplex_v1.yaml", + deps = [ + ":dataplex_php_grpc", + ":dataplex_php_proto", + ], +) + +# Open Source Packages +php_gapic_assembly_pkg( + name = "google-cloud-dataplex-v1-php", + deps = [ + ":dataplex_php_gapic", + ":dataplex_php_grpc", + ":dataplex_php_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "dataplex_nodejs_gapic", + package_name = "@google-cloud/dataplex", + src = ":dataplex_proto_with_info", + extra_protoc_parameters = ["metadata"], + grpc_service_config = "dataplex_grpc_service_config.json", + package = "google.cloud.dataplex.v1", + service_yaml = "dataplex_v1.yaml", + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "dataplex-v1-nodejs", + deps = [ + ":dataplex_nodejs_gapic", + ":dataplex_proto", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_gapic_assembly_pkg", + "ruby_cloud_gapic_library", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "dataplex_ruby_proto", + deps = [":dataplex_proto"], +) + +ruby_grpc_library( + name = "dataplex_ruby_grpc", + srcs = [":dataplex_proto"], + deps = [":dataplex_ruby_proto"], +) + +ruby_cloud_gapic_library( + name = "dataplex_ruby_gapic", + srcs = [":dataplex_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-dataplex-v1", + ], + grpc_service_config = "dataplex_grpc_service_config.json", + deps = [ + ":dataplex_ruby_grpc", + ":dataplex_ruby_proto", + ], +) + +# Open Source Packages +ruby_gapic_assembly_pkg( + name = "google-cloud-dataplex-v1-ruby", + deps = [ + ":dataplex_ruby_gapic", + ":dataplex_ruby_grpc", + ":dataplex_ruby_proto", + ], +) + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", + "csharp_gapic_library", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "dataplex_csharp_proto", + deps = [":dataplex_proto"], +) + +csharp_grpc_library( + name = "dataplex_csharp_grpc", + srcs = [":dataplex_proto"], + deps = [":dataplex_csharp_proto"], +) + +csharp_gapic_library( + name = "dataplex_csharp_gapic", + srcs = [":dataplex_proto_with_info"], + common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", + grpc_service_config = "dataplex_grpc_service_config.json", + deps = [ + ":dataplex_csharp_grpc", + ":dataplex_csharp_proto", + ], +) + +# Open Source Packages +csharp_gapic_assembly_pkg( + name = "google-cloud-dataplex-v1-csharp", + deps = [ + ":dataplex_csharp_gapic", + ":dataplex_csharp_grpc", + ":dataplex_csharp_proto", + ], +) + +############################################################################## +# C++ +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "dataplex_cc_proto", + deps = [":dataplex_proto"], +) + +cc_grpc_library( + name = "dataplex_cc_grpc", + srcs = [":dataplex_proto"], + grpc_only = True, + deps = [":dataplex_cc_proto"], +) diff --git a/google/cloud/dataplex/v1/dataplex_grpc_service_config.json b/google/cloud/dataplex/v1/dataplex_grpc_service_config.json new file mode 100644 index 000000000..f50e51877 --- /dev/null +++ b/google/cloud/dataplex/v1/dataplex_grpc_service_config.json @@ -0,0 +1,206 @@ +{ + "methodConfig": [ + { + "name": [ + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "GetLake" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "GetZone" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "GetAsset" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "GetTask" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "GetJob" + } + ], + "timeout": "60s", + "retryPolicy": { + "maxAttempts": 5, + "initialBackoff": "1s", + "maxBackoff": "10s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": ["UNAVAILABLE"] + } + }, + { + "name": [ + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "ListLakes" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "ListLakeActions" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "ListZones" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "ListZoneActions" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "ListAssets" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "ListAssetActions" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "ListTasks" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "ListJobs" + } + ], + "timeout": "60s", + "retryPolicy": { + "maxAttempts": 5, + "initialBackoff": "1s", + "maxBackoff": "10s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": ["UNAVAILABLE"] + } + }, + { + "name": [ + { + "service": "google.cloud.dataplex.v1.MetadataService", + "method": "GetEntity" + }, + { + "service": "google.cloud.dataplex.v1.MetadataService", + "method": "GetPartition" + } + ], + "timeout": "60s", + "retryPolicy": { + "maxAttempts": 5, + "initialBackoff": "1s", + "maxBackoff": "10s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": ["UNAVAILABLE"] + } + }, + { + "name": [ + { + "service": "google.cloud.dataplex.v1.MetadataService", + "method": "ListEntities" + }, + { + "service": "google.cloud.dataplex.v1.MetadataService", + "method": "ListPartitions" + } + ], + "timeout": "60s", + "retryPolicy": { + "maxAttempts": 5, + "initialBackoff": "1s", + "maxBackoff": "10s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": ["UNAVAILABLE"] + } + }, + { + "name": [ + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "CreateLake" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "UpdateLake" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "DeleteLake" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "CreateZone" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "UpdateZone" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "DeleteZone" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "CreateAsset" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "UpdateAsset" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "DeleteAsset" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "CreateTask" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "UpdateTask" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "DeleteTask" + }, + { + "service": "google.cloud.dataplex.v1.DataplexService", + "method": "CancelJob" + } + ], + "timeout": "60s" + }, + { + "name": [ + { + "service": "google.cloud.dataplex.v1.MetadataService", + "method": "CreateEntity" + }, + { + "service": "google.cloud.dataplex.v1.MetadataService", + "method": "DeleteEntity" + }, + { + "service": "google.cloud.dataplex.v1.MetadataService", + "method": "UpdateEntity" + }, + { + "service": "google.cloud.dataplex.v1.MetadataService", + "method": "CreatePartition" + }, + { + "service": "google.cloud.dataplex.v1.MetadataService", + "method": "DeletePartition" + }, + { + "service": "google.cloud.dataplex.v1.MetadataService", + "method": "UpdatePartition" + } + ], + "timeout": "60s" + } + ] +} diff --git a/google/cloud/dataplex/v1/dataplex_v1.yaml b/google/cloud/dataplex/v1/dataplex_v1.yaml new file mode 100644 index 000000000..411822930 --- /dev/null +++ b/google/cloud/dataplex/v1/dataplex_v1.yaml @@ -0,0 +1,140 @@ +type: google.api.Service +config_version: 3 +name: dataplex.googleapis.com +title: Cloud Dataplex API + +apis: +- name: google.cloud.dataplex.v1.DataplexService +- name: google.cloud.dataplex.v1.MetadataService + +types: +- name: google.cloud.dataplex.v1.DiscoveryEvent +- name: google.cloud.dataplex.v1.JobEvent +- name: google.cloud.dataplex.v1.OperationMetadata +- name: google.cloud.dataplex.v1.SessionEvent + +documentation: + summary: Dataplex API is used to manage the lifecycle of data lakes. + rules: + - selector: google.cloud.location.Locations.GetLocation + description: Gets information about a location. + + - selector: google.cloud.location.Locations.ListLocations + description: Lists information about the supported locations for this service. + + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + description: |- + Gets the access control policy for a resource. Returns an empty policy + if the resource exists and does not have a policy set. + + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + description: |- + Sets the access control policy on the specified resource. Replaces + any existing policy. + + Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` + errors. + + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + description: |- + Returns permissions that a caller has on the specified resource. If the + resource does not exist, this will return an empty set of + permissions, not a `NOT_FOUND` error. + + Note: This operation is designed to be used for building + permission-aware UIs and command-line tools, not for authorization + checking. This operation may "fail open" without warning. + +backend: + rules: + - selector: 'google.cloud.dataplex.v1.DataplexService.*' + deadline: 60.0 + - selector: 'google.cloud.dataplex.v1.MetadataService.*' + deadline: 60.0 + - selector: google.cloud.location.Locations.GetLocation + deadline: 60.0 + - selector: google.cloud.location.Locations.ListLocations + deadline: 60.0 + - selector: 'google.iam.v1.IAMPolicy.*' + deadline: 60.0 + - selector: 'google.longrunning.Operations.*' + deadline: 60.0 + +http: + rules: + - selector: google.cloud.location.Locations.GetLocation + get: '/v1/{name=projects/*/locations/*}' + - selector: google.cloud.location.Locations.ListLocations + get: '/v1/{name=projects/*}/locations' + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + get: '/v1/{resource=projects/*/locations/*/lakes/*}:getIamPolicy' + additional_bindings: + - get: '/v1/{resource=projects/*/locations/*/lakes/*/zones/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/locations/*/lakes/*/zones/*/assets/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/locations/*/lakes/*/tasks/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/locations/*/lakes/*/environments/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/locations/*/lakes/*/content/*}:getIamPolicy' + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + post: '/v1/{resource=projects/*/locations/*/lakes/*}:setIamPolicy' + body: '*' + additional_bindings: + - post: '/v1/{resource=projects/*/locations/*/lakes/*/zones/*}:setIamPolicy' + body: '*' + - post: '/v1/{resource=projects/*/locations/*/lakes/*/zones/*/assets/*}:setIamPolicy' + body: '*' + - post: '/v1/{resource=projects/*/locations/*/lakes/*/tasks/*}:setIamPolicy' + body: '*' + - post: '/v1/{resource=projects/*/locations/*/lakes/*/environments/*}:setIamPolicy' + body: '*' + - post: '/v1/{resource=projects/*/locations/*/lakes/*/content/*}:setIamPolicy' + body: '*' + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + post: '/v1/{resource=projects/*/locations/*/lakes/*}:testIamPermissions' + body: '*' + additional_bindings: + - post: '/v1/{resource=projects/*/locations/*/lakes/*/zones/*}:testIamPermissions' + body: '*' + - post: '/v1/{resource=projects/*/locations/*/lakes/*/zones/*/assets/*}:testIamPermissions' + body: '*' + - post: '/v1/{resource=projects/*/locations/*/lakes/*/tasks/*}:testIamPermissions' + body: '*' + - post: '/v1/{resource=projects/*/locations/*/lakes/*/environments/*}:testIamPermissions' + body: '*' + - post: '/v1/{resource=projects/*/locations/*/lakes/*/content/*}:testIamPermissions' + body: '*' + - selector: google.longrunning.Operations.CancelOperation + post: '/v1/{name=projects/*/locations/*/operations/*}:cancel' + body: '*' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/v1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/v1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v1/{name=projects/*/locations/*}/operations' + +authentication: + rules: + - selector: 'google.cloud.dataplex.v1.DataplexService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.cloud.dataplex.v1.MetadataService.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.GetLocation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.ListLocations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.iam.v1.IAMPolicy.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.longrunning.Operations.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/dataplex/v1/logs.proto b/google/cloud/dataplex/v1/logs.proto new file mode 100644 index 000000000..7539b3530 --- /dev/null +++ b/google/cloud/dataplex/v1/logs.proto @@ -0,0 +1,281 @@ +// Copyright 2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.dataplex.v1; + +import "google/api/annotations.proto"; +import "google/protobuf/duration.proto"; +import "google/protobuf/timestamp.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/dataplex/v1;dataplex"; +option java_multiple_files = true; +option java_outer_classname = "LogsProto"; +option java_package = "com.google.cloud.dataplex.v1"; + +// The payload associated with Discovery data processing. +message DiscoveryEvent { + // The type of the event. + enum EventType { + // An unspecified event type. + EVENT_TYPE_UNSPECIFIED = 0; + + // An event representing discovery configuration in effect. + CONFIG = 1; + + // An event representing a metadata entity being created. + ENTITY_CREATED = 2; + + // An event representing a metadata entity being updated. + ENTITY_UPDATED = 3; + + // An event representing a metadata entity being deleted. + ENTITY_DELETED = 4; + + // An event representing a partition being created. + PARTITION_CREATED = 5; + + // An event representing a partition being updated. + PARTITION_UPDATED = 6; + + // An event representing a partition being deleted. + PARTITION_DELETED = 7; + } + + // The type of the entity. + enum EntityType { + // An unspecified event type. + ENTITY_TYPE_UNSPECIFIED = 0; + + // Entities representing structured data. + TABLE = 1; + + // Entities representing unstructured data. + FILESET = 2; + } + + // Details about configuration events. + message ConfigDetails { + // A list of discovery configuration parameters in effect. + // The keys are the field paths within DiscoverySpec. + // Eg. includePatterns, excludePatterns, csvOptions.disableTypeInference, + // etc. + map parameters = 1; + } + + // Details about the entity. + message EntityDetails { + // The name of the entity resource. + // The name is the fully-qualified resource name. + string entity = 1; + + // The type of the entity resource. + EntityType type = 2; + } + + // Details about the partition. + message PartitionDetails { + // The name to the partition resource. + // The name is the fully-qualified resource name. + string partition = 1; + + // The name to the containing entity resource. + // The name is the fully-qualified resource name. + string entity = 2; + + // The type of the containing entity resource. + EntityType type = 3; + } + + // Details about the action. + message ActionDetails { + // The type of action. + // Eg. IncompatibleDataSchema, InvalidDataFormat + string type = 1; + } + + // The log message. + string message = 1; + + // The id of the associated lake. + string lake_id = 2; + + // The id of the associated zone. + string zone_id = 3; + + // The id of the associated asset. + string asset_id = 4; + + // The data location associated with the event. + string data_location = 5; + + // The type of the event being logged. + EventType type = 10; + + // Additional details about the event. + oneof details { + // Details about discovery configuration in effect. + ConfigDetails config = 20; + + // Details about the entity associated with the event. + EntityDetails entity = 21; + + // Details about the partition associated with the event. + PartitionDetails partition = 22; + + // Details about the action associated with the event. + ActionDetails action = 23; + } +} + +// The payload associated with Job logs that contains events describing jobs +// that have run within a Lake. +message JobEvent { + // The type of the job. + enum Type { + // Unspecified job type. + TYPE_UNSPECIFIED = 0; + + // Spark jobs. + SPARK = 1; + + // Notebook jobs. + NOTEBOOK = 2; + } + + // The completion status of the job. + enum State { + // Unspecified job state. + STATE_UNSPECIFIED = 0; + + // Job successfully completed. + SUCCEEDED = 1; + + // Job was unsuccessful. + FAILED = 2; + + // Job was cancelled by the user. + CANCELLED = 3; + + // Job was cancelled or aborted via the service executing the job. + ABORTED = 4; + } + + // The service used to execute the job. + enum Service { + // Unspecified service. + SERVICE_UNSPECIFIED = 0; + + // Cloud Dataproc. + DATAPROC = 1; + } + + // The log message. + string message = 1; + + // The unique id identifying the job. + string job_id = 2; + + // The time when the job started running. + google.protobuf.Timestamp start_time = 3; + + // The time when the job ended running. + google.protobuf.Timestamp end_time = 4; + + // The job state on completion. + State state = 5; + + // The number of retries. + int32 retries = 6; + + // The type of the job. + Type type = 7; + + // The service used to execute the job. + Service service = 8; + + // The reference to the job within the service. + string service_job = 9; +} + +// These messages contain information about sessions within an environment. +// The monitored resource is 'Environment'. +message SessionEvent { + // The type of the event. + enum EventType { + // An unspecified event type. + EVENT_TYPE_UNSPECIFIED = 0; + + // Event for start of a session. + START = 1; + + // Event for stop of a session. + STOP = 2; + + // Query events in the session. + QUERY = 3; + } + + // Execution details of the query. + message QueryDetail { + // Query Execution engine. + enum Engine { + // An unspecified Engine type. + ENGINE_UNSPECIFIED = 0; + + // Spark-sql engine is specified in Query. + SPARK_SQL = 1; + + // BigQuery engine is specified in Query. + BIGQUERY = 2; + } + + // The unique Query id identifying the query. + string query_id = 1; + + // The query text executed. + string query_text = 2; + + // Query Execution engine. + Engine engine = 3; + + // Time taken for execution of the query. + google.protobuf.Duration duration = 4; + + // The size of results the query produced. + int64 result_size_bytes = 5; + + // The data processed by the query. + int64 data_processed_bytes = 6; + } + + // The log message. + string message = 1; + + // The information about the user that created the session. + string user_id = 2; + + // Unique identifier for the session. + string session_id = 3; + + // The type of the event. + EventType type = 4; + + // Additional information about the Query metadata. + oneof detail { + // The execution details of the query. + QueryDetail query = 5; + } +} diff --git a/google/cloud/dataplex/v1/metadata.proto b/google/cloud/dataplex/v1/metadata.proto new file mode 100644 index 000000000..5320013ec --- /dev/null +++ b/google/cloud/dataplex/v1/metadata.proto @@ -0,0 +1,580 @@ +// Copyright 2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.dataplex.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/empty.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/dataplex/v1;dataplex"; +option java_multiple_files = true; +option java_outer_classname = "MetadataProto"; +option java_package = "com.google.cloud.dataplex.v1"; + +// Metadata service manages metadata resources such as tables, filesets and +// partitions. +service MetadataService { + option (google.api.default_host) = "dataplex.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Get a metadata entity. + rpc GetEntity(GetEntityRequest) returns (Entity) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/lakes/*/zones/*/entities/*}" + }; + option (google.api.method_signature) = "name"; + } + + // List metadata entities in a zone. + rpc ListEntities(ListEntitiesRequest) returns (ListEntitiesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/lakes/*/zones/*}/entities" + }; + option (google.api.method_signature) = "parent"; + } + + // Get a metadata partition of an entity. + rpc GetPartition(GetPartitionRequest) returns (Partition) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/lakes/*/zones/*/entities/*/partitions/**}" + }; + option (google.api.method_signature) = "name"; + } + + // List metadata partitions of an entity. + rpc ListPartitions(ListPartitionsRequest) returns (ListPartitionsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/lakes/*/zones/*/entities/*}/partitions" + }; + option (google.api.method_signature) = "parent"; + } +} + +// List metadata entities request. +message ListEntitiesRequest { + // Entity views. + enum EntityView { + // The default unset value. The API will default to the FULL view. + ENTITY_VIEW_UNSPECIFIED = 0; + + // Only list table entities. + TABLES = 1; + + // Only list fileset entities. + FILESETS = 2; + } + + // Required. The resource name of the parent zone: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Zone" + } + ]; + + // Required. Specify the entity view to make a partial list request. + EntityView view = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Maximum number of entities to return. The service may return fewer than + // this value. If unspecified, at most 10 entities will be returned. The + // maximum value is 1000; values above 1000 are set to 1000. + int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Page token received from a previous `ListEntities` call. Provide + // this to retrieve the subsequent page. When paginating, all other parameters + // provided to `ListEntities` must match the call that provided the + // page token. + string page_token = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter request by name prefix. + string filter = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// List metadata entities response. +message ListEntitiesResponse { + // Entities in the specified parent zone. + repeated Entity entities = 1; + + // Token to retrieve the next page of results, or empty if there are no + // remaining results in the list. + string next_page_token = 2; +} + +// Get metadata entity request. +message GetEntityRequest { + // Entity views for get entity partial result. + enum EntityView { + // The API will default to the `BASIC` view. + ENTITY_VIEW_UNSPECIFIED = 0; + + // Minimal view that does not include the schema. + BASIC = 1; + + // Include basic information and schema. + SCHEMA = 2; + + // Include everything. + FULL = 4; + } + + // Required. The resource name of the entity: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}/entities/{entity_id}.` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Entity" + } + ]; + + // Optional. Used to select the subset of entity information to return. + // Defaults to `BASIC`. + EntityView view = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// List metadata partitions request. +message ListPartitionsRequest { + // Required. The resource name of the parent entity: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}/entities/{entity_id}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Entity" + } + ]; + + // Optional. Maximum number of partitions to return. The service may return fewer than + // this value. If unspecified, at most 10 partitions will be returned. The + // maximum value is 1000; values above 1000 will be coerced to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Page token received from a previous `ListPartitions` call. Provide + // this to retrieve the subsequent page. When paginating, all other parameters + // provided to `ListPartitions` must match the call that provided the + // page token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter request. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// List metadata partitions response. +message ListPartitionsResponse { + // Partitions under the specified parent entity. + repeated Partition partitions = 1; + + // Token to retrieve the next page of results, or empty if there are no + // remaining results in the list. + string next_page_token = 2; +} + +// Get metadata partition request. +message GetPartitionRequest { + // Required. The resource name of the partition: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}/entities/{entity_id}/partitions/{partition_id}`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Partition" + } + ]; +} + +// Represents tables and fileset metadata contained within a zone. +message Entity { + option (google.api.resource) = { + type: "dataplex.googleapis.com/Entity" + pattern: "projects/{project}/locations/{location}/lakes/{lake}/zones/{zone}/entities/{entity}" + }; + + // The type of entity. + enum Type { + // Type unspecified. + TYPE_UNSPECIFIED = 0; + + // Structured and semi-structured data. + TABLE = 1; + + // Unstructured data. + FILESET = 2; + } + + // Provides compatibility information for various metadata stores. + message CompatibilityStatus { + // Provides compatibility information for a specific metadata store. + message Compatibility { + // Output only. Whether the entity is compatible and can be represented in the metadata + // store. + bool compatible = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Provides additional detail if the entity is incompatible with the + // metadata store. + string reason = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. Whether this entity is compatible with Hive Metastore. + Compatibility hive_metastore = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Whether this entity is compatible with BigQuery. + Compatibility bigquery = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. The resource name of the entity, of the form: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}/entities/{id}`. + string name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Entity" + } + ]; + + // Optional. User friendly display name. + string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. User friendly longer description text. + string description = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. The time when the entity was created. + google.protobuf.Timestamp create_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the entity was last updated. + google.protobuf.Timestamp update_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. A user-provided entity ID. It is mutable, and will be used as the + // published table name. Specifying a new ID in an update entity + // request will override the existing value. + string id = 7 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The etag for this entity. + // Required for update requests. It must match the server's etag. + string etag = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The type of entity. + Type type = 10 [(google.api.field_behavior) = REQUIRED]; + + // Required. The name of the asset associated with the storage location containing the + // entity data. + string asset = 11 [(google.api.field_behavior) = REQUIRED]; + + // Required. Immutable. The storage path of the entity data. + // For Cloud Storage data, this is the fully-qualified path to the entity, + // such as `gs://bucket/path/to/data`. For BigQuery data, this is the name of + // the table resource, such as + // `projects/project_id/datasets/dataset_id/tables/table_id`. + string data_path = 12 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Optional. The set of items within the data path constituting the data in the entity, + // represented as a glob path. + // Example: `gs://bucket/path/to/data/**/*.csv`. + string data_path_pattern = 13 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. The name of the associated Data Catalog entry. + string catalog_entry = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. Identifies the storage system of the entity data. + StorageSystem system = 15 [(google.api.field_behavior) = REQUIRED]; + + // Required. Identifies the storage format of the entity data. + // It does not apply to entities with data stored in BigQuery. + StorageFormat format = 16 [(google.api.field_behavior) = REQUIRED]; + + // Output only. Metadata stores that the entity is compatible with. + CompatibilityStatus compatibility = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The description of the data structure and layout. + // The schema is not included in list responses. It is only included in + // `SCHEMA` and `FULL` entity views of a `GetEntity` response. + Schema schema = 50 [(google.api.field_behavior) = REQUIRED]; +} + +// Represents partition metadata contained within entity instances. +message Partition { + option (google.api.resource) = { + type: "dataplex.googleapis.com/Partition" + pattern: "projects/{project}/locations/{location}/lakes/{lake}/zones/{zone}/entities/{entity}/partitions/{partition}" + }; + + // Output only. The resource name of the partition, of the form: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}/entities/{entity_id}/partitions/{partition_id}`. + // {partition_id} is a generated unique ID. + string name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Partition" + } + ]; + + // Required. Immutable. The set of values representing the partition, which correspond to the + // partition schema defined in the parent entity. + repeated string values = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Required. Immutable. The location of the entity data within the partition, for example, + // `gs://bucket/path/to/entity/key1=value1/key2=value2`. + string location = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Optional. The etag for this partition. + // Required for update requests. It must match the server's etag. + string etag = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Schema information describing the structure and layout of the data. +message Schema { + // Type information for fields in schemas and partition schemas. + enum Type { + // SchemaType unspecified. + TYPE_UNSPECIFIED = 0; + + // Boolean field. + BOOLEAN = 1; + + // Single byte numeric field. + BYTE = 2; + + // 16-bit numeric field. + INT16 = 3; + + // 32-bit numeric field. + INT32 = 4; + + // 64-bit numeric field. + INT64 = 5; + + // Floating point numeric field. + FLOAT = 6; + + // Double precision numeric field. + DOUBLE = 7; + + // Real value numeric field. + DECIMAL = 8; + + // Sequence of characters field. + STRING = 9; + + // Sequence of bytes field. + BINARY = 10; + + // Date and time field. + TIMESTAMP = 11; + + // Date field. + DATE = 12; + + // Time field. + TIME = 13; + + // Structured field. Nested fields that define the structure of the map. + // If all nested fields are nullable, this field represents a union. + RECORD = 14; + + // Null field that does not have values. + NULL = 100; + } + + // Additional qualifiers to define field semantics. + enum Mode { + // Mode unspecified. + MODE_UNSPECIFIED = 0; + + // The field has required semantics. + REQUIRED = 1; + + // The field has optional semantics, and may be null. + NULLABLE = 2; + + // The field has repeated (0 or more) semantics, and is a list of values. + REPEATED = 3; + } + + // Represents a column field within a table schema. + message SchemaField { + // Required. The name of the field. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. User friendly field description. + string description = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The type of field. + Type type = 3 [(google.api.field_behavior) = REQUIRED]; + + // Required. Additional field semantics. + Mode mode = 4 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Any nested field for complex types. + repeated SchemaField fields = 10 [(google.api.field_behavior) = OPTIONAL]; + } + + // Represents a key field within the entity's partition structure. + message PartitionField { + // Required. The name of the field. + string name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The type of field. + Type type = 2 [(google.api.field_behavior) = REQUIRED]; + } + + // The structure of paths within the entity, which represent partitions. + enum PartitionStyle { + // PartitionStyle unspecified + PARTITION_STYLE_UNSPECIFIED = 0; + + // Partitions are hive-compatible. + // Examples: `gs://bucket/path/to/table/dt=2019-10-31/lang=en`, + // `gs://bucket/path/to/table/dt=2019-10-31/lang=en/late`. + HIVE_COMPATIBLE = 1; + } + + // Required. Whether the schema is user-managed or managed by the service. User-managed + // schemas are not automatically updated by discovery jobs. + bool user_managed = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The sequence of fields describing data in table entities. + repeated SchemaField fields = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The sequence of fields describing the partition structure in entities. + // If this field is empty, there are no partitions within the data. + repeated PartitionField partition_fields = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The structure of paths containing partition data within the entity. + PartitionStyle partition_style = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Describes the format of the data within its storage location. +message StorageFormat { + // Describes CSV and similar semi-structured data formats. + message CsvOptions { + // Optional. The character encoding of the data. The default is UTF-8. + string encoding = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The number of rows to interpret as header rows that should be skipped + // when reading data rows. + int32 header_rows = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The delimiter used to separate values. Defaults to ','. + string delimiter = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The character used to quote column values. Defaults to empty, + // implying unquoted data. + string quote = 4 [(google.api.field_behavior) = OPTIONAL]; + } + + // Describes JSON data format. + message JsonOptions { + // Optional. The character encoding of the data. The default is UTF-8. + string encoding = 1 [(google.api.field_behavior) = OPTIONAL]; + } + + // The specific file format of the data. + enum Format { + // Format unspecified. + FORMAT_UNSPECIFIED = 0; + + // Parquet-formatted structured data. + PARQUET = 1; + + // Avro-formatted structured data. + AVRO = 2; + + // Orc-formatted structured data. + ORC = 3; + + // Csv-formatted semi-structured data. + CSV = 100; + + // Json-formatted semi-structured data. + JSON = 101; + + // Image data formats (such as jpg and png). + IMAGE = 200; + + // Audio data formats (such as mp3 and wav). + AUDIO = 201; + + // Video data formats (such as mp4 and mpg). + VIDEO = 202; + + // Textual data formats (such as txt and xml). + TEXT = 203; + + // TensorFlow record format. + TFRECORD = 204; + + // Data that doesn't match a specific format. + OTHER = 1000; + + // Data of an unknown format. + UNKNOWN = 1001; + } + + // The specific compressed file format of the data. + enum CompressionFormat { + // CompressionFormat unspecified. Implies uncompressed data. + COMPRESSION_FORMAT_UNSPECIFIED = 0; + + // GZip compressed set of files. + GZIP = 2; + + // BZip2 compressed set of files. + BZIP2 = 3; + } + + // Output only. The data format associated with the stored data, which represents + // content type values. + Format format = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The compression type associated with the stored data. + // If unspecified, the data is uncompressed. + CompressionFormat compression_format = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The mime type descriptor for the data. This field is valid for formats + // other than `UNKNOWN` and `MIXED`. + string mime_type = 3 [(google.api.field_behavior) = REQUIRED]; + + // Additional format-specific options. + oneof options { + // Optional. Additional information about CSV formatted data. + CsvOptions csv = 10 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Additional information about CSV formatted data. + JsonOptions json = 11 [(google.api.field_behavior) = OPTIONAL]; + } +} + +// Identifies the cloud system that manages the data storage. +enum StorageSystem { + // Storage system unspecified. + STORAGE_SYSTEM_UNSPECIFIED = 0; + + // The entity data is contained within a Cloud Storage bucket. + CLOUD_STORAGE = 1; + + // The entity data is contained within a BigQuery dataset. + BIGQUERY = 2; +} diff --git a/google/cloud/dataplex/v1/resources.proto b/google/cloud/dataplex/v1/resources.proto new file mode 100644 index 000000000..5c71a9bb5 --- /dev/null +++ b/google/cloud/dataplex/v1/resources.proto @@ -0,0 +1,798 @@ +// Copyright 2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.dataplex.v1; + +import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/duration.proto"; +import "google/protobuf/timestamp.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/dataplex/v1;dataplex"; +option java_multiple_files = true; +option java_outer_classname = "ResourcesProto"; +option java_package = "com.google.cloud.dataplex.v1"; + +// A lake is a centralized repository for managing enterprise data across the +// organization distributed across many cloud projects, and stored in a variety +// of storage services such as Google Cloud Storage and BigQuery. The resources +// attached to a lake are referred to as managed resources. Data within these +// managed resources can be structured or unstructured. A lake provides data +// admins with tools to organize, secure and manage their data at scale, and +// provides data scientists and data engineers an integrated experience to +// easily search, discover, analyze and transform data and associated metadata. +message Lake { + option (google.api.resource) = { + type: "dataplex.googleapis.com/Lake" + pattern: "projects/{project}/locations/{location}/lakes/{lake}" + }; + + // Settings to manage association of Dataproc Metastore with a lake. + message Metastore { + // Optional. A relative reference to the Dataproc Metastore + // (https://cloud.google.com/dataproc-metastore/docs) service associated + // with the lake: + // `projects/{project_id}/locations/{location_id}/services/{service_id}` + string service = 1 [(google.api.field_behavior) = OPTIONAL]; + } + + // Status of Lake and Dataproc Metastore service instance association. + message MetastoreStatus { + // Current state of association. + enum State { + // Unspecified. + STATE_UNSPECIFIED = 0; + + // A Metastore service instance is not associated with the lake. + NONE = 1; + + // A Metastore service instance is attached to the lake. + READY = 2; + + // Attach/detach is in progress. + UPDATING = 3; + + // Attach/detach could not be done due to errors. + ERROR = 4; + } + + // Current state of association. + State state = 1; + + // Additional information about the current status. + string message = 2; + + // Last update time of the metastore status of the lake. + google.protobuf.Timestamp update_time = 3; + + // The URI of the endpoint used to access the Metastore service. + string endpoint = 4; + } + + // Output only. The relative resource name of the lake, of the form: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}`. + string name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Lake" + } + ]; + + // Optional. User friendly display name. + string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. System generated globally unique ID for the lake. This ID will be + // different if the lake is deleted and re-created with the same name. + string uid = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the lake was created. + google.protobuf.Timestamp create_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the lake was last updated. + google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. User-defined labels for the lake. + map labels = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Description of the lake. + string description = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Current state of the lake. + State state = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Service account associated with this lake. This service account must be + // authorized to access or operate on resources managed by the lake. + string service_account = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Settings to manage lake and Dataproc Metastore service instance + // association. + Metastore metastore = 102 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Aggregated status of the underlying assets of the lake. + AssetStatus asset_status = 103 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Metastore status of the lake. + MetastoreStatus metastore_status = 104 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Aggregated status of the underlying assets of a lake or zone. +message AssetStatus { + // Last update time of the status. + google.protobuf.Timestamp update_time = 1; + + // Number of active assets. + int32 active_assets = 2; + + // Number of assets that are in process of updating the security policy on + // attached resources. + int32 security_policy_applying_assets = 3; +} + +// A zone represents a logical group of related assets within a lake. A zone can +// be used to map to organizational structure or represent stages of data +// readiness from raw to curated. It provides managing behavior that is shared +// or inherited by all contained assets. +message Zone { + option (google.api.resource) = { + type: "dataplex.googleapis.com/Zone" + pattern: "projects/{project}/locations/{location}/lakes/{lake}/zones/{zone}" + }; + + // Type of zone. + enum Type { + // Zone type not specified. + TYPE_UNSPECIFIED = 0; + + // A zone that contains data that needs further processing before it is + // considered generally ready for consumption and analytics workloads. + RAW = 1; + + // A zone that contains data that is considered to be ready for broader + // consumption and analytics workloads. Curated structured data stored in + // Cloud Storage must conform to certain file formats (parquet, avro and + // orc) and organized in a hive-compatible directory layout. + CURATED = 2; + } + + // Settings for resources attached as assets within a zone. + message ResourceSpec { + // Location type of the resources attached to a zone. + enum LocationType { + // Unspecified location type. + LOCATION_TYPE_UNSPECIFIED = 0; + + // Resources that are associated with a single region. + SINGLE_REGION = 1; + + // Resources that are associated with a multi-region location. + MULTI_REGION = 2; + } + + // Required. Immutable. The location type of the resources that are allowed to be attached to the + // assets within this zone. + LocationType location_type = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + } + + // Settings to manage the metadata discovery and publishing in a zone. + message DiscoverySpec { + // Describe CSV and similar semi-structured data formats. + message CsvOptions { + // Optional. The number of rows to interpret as header rows that should be skipped + // when reading data rows. + int32 header_rows = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The delimiter being used to separate values. This defaults to ','. + string delimiter = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The character encoding of the data. The default is UTF-8. + string encoding = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether to disable the inference of data type for CSV data. + // If true, all columns will be registered as strings. + bool disable_type_inference = 4 [(google.api.field_behavior) = OPTIONAL]; + } + + // Describe JSON data format. + message JsonOptions { + // Optional. The character encoding of the data. The default is UTF-8. + string encoding = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether to disable the inference of data type for Json data. + // If true, all columns will be registered as their primitive types + // (strings, number or boolean). + bool disable_type_inference = 2 [(google.api.field_behavior) = OPTIONAL]; + } + + // Required. Whether discovery is enabled. + bool enabled = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The list of patterns to apply for selecting data to include during + // discovery if only a subset of the data should considered. For Cloud + // Storage bucket assets, these are interpreted as glob patterns used to + // match object names. For BigQuery dataset assets, these are + // interpreted as patterns to match table names. + repeated string include_patterns = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The list of patterns to apply for selecting data to exclude during + // discovery. For Cloud Storage bucket assets, these are interpreted as + // glob patterns used to match object names. For BigQuery dataset assets, + // these are interpreted as patterns to match table names. + repeated string exclude_patterns = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Configuration for CSV data. + CsvOptions csv_options = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Configuration for Json data. + JsonOptions json_options = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Determines when discovery is triggered. + oneof trigger { + // Optional. Cron schedule (https://en.wikipedia.org/wiki/Cron) for running + // discovery periodically. Successive discovery runs must be scheduled at + // least 60 minutes apart. + // The default value is to run discovery every 60 minutes. + // To explicitly set a timezone to the cron tab, apply a prefix in the + // cron tab: "CRON_TZ=${IANA_TIME_ZONE}" or TZ=${IANA_TIME_ZONE}". + // The ${IANA_TIME_ZONE} may only be a valid string from IANA time zone + // database. For example, "CRON_TZ=America/New_York 1 * * * *", or + // "TZ=America/New_York 1 * * * *". + string schedule = 10 [(google.api.field_behavior) = OPTIONAL]; + } + } + + // Output only. The relative resource name of the zone, of the form: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}` + string name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Zone" + } + ]; + + // Optional. User friendly display name. + string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. System generated globally unique ID for the zone. This ID will be + // different if the zone is deleted and re-created with the same name. + string uid = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the zone was created. + google.protobuf.Timestamp create_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the zone was last updated. + google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. User defined labels for the zone. + map labels = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Description of the zone. + string description = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Current state of the zone. + State state = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. Immutable. The type of the zone. + Type type = 9 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Optional. Specification of the discovery feature applied to data in this zone. + DiscoverySpec discovery_spec = 103 [(google.api.field_behavior) = OPTIONAL]; + + // Required. Specification of the resources that are referenced by the assets within + // this zone. + ResourceSpec resource_spec = 104 [(google.api.field_behavior) = REQUIRED]; + + // Output only. Aggregated status of the underlying assets of the zone. + AssetStatus asset_status = 105 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Action represents an issue requiring administrator action for resolution. +message Action { + option (google.api.resource) = { + type: "dataplex.googleapis.com/Action" + pattern: "projects/{project}/locations/{location}/lakes/{lake}/actions/{action}" + pattern: "projects/{project}/locations/{location}/lakes/{lake}/zones/{zone}/actions/{action}" + pattern: "projects/{project}/locations/{location}/lakes/{lake}/zones/{zone}/assets/{asset}/actions/{action}" + }; + + // The category of issues. + enum Category { + // Unspecified category. + CATEGORY_UNSPECIFIED = 0; + + // Resource management related issues. + RESOURCE_MANAGEMENT = 1; + + // Security policy related issues. + SECURITY_POLICY = 2; + + // Data and discovery related issues. + DATA_DISCOVERY = 3; + } + + // Action details for resource references in assets that cannot be located. + message MissingResource { + + } + + // Action details for unauthorized resource issues raised to indicate that the + // service account associated with the lake instance is not authorized to + // access or manage the resource associated with an asset. + message UnauthorizedResource { + + } + + // Failed to apply security policy to the managed resource(s) under a + // lake, zone or an asset. For a lake or zone resource, one or more underlying + // assets has a failure applying security policy to the associated managed + // resource. + message FailedSecurityPolicyApply { + // Resource name of one of the assets with failing security policy + // application. Populated for a lake or zone resource only. + string asset = 1; + } + + // Action details for invalid or unsupported data files detected by discovery. + message InvalidDataFormat { + // The list of data locations sampled and used for format/schema + // inference. + repeated string sampled_data_locations = 1; + + // The expected data format of the entity. + string expected_format = 2; + + // The new unexpected data format within the entity. + string new_format = 3; + } + + // Action details for incompatible schemas detected by discovery. + message IncompatibleDataSchema { + // Whether the action relates to a schema that is incompatible or modified. + enum SchemaChange { + // Schema change unspecified. + SCHEMA_CHANGE_UNSPECIFIED = 0; + + // Newly discovered schema is incompatible with existing schema. + INCOMPATIBLE = 1; + + // Newly discovered schema has changed from existing schema for data in a + // curated zone. + MODIFIED = 2; + } + + // The name of the table containing invalid data. + string table = 1; + + // The existing and expected schema of the table. The schema is provided as + // a JSON formatted structure listing columns and data types. + string existing_schema = 2; + + // The new and incompatible schema within the table. The schema is provided + // as a JSON formatted structured listing columns and data types. + string new_schema = 3; + + // The list of data locations sampled and used for format/schema + // inference. + repeated string sampled_data_locations = 4; + + // Whether the action relates to a schema that is incompatible or modified. + SchemaChange schema_change = 5; + } + + // Action details for invalid or unsupported partitions detected by discovery. + message InvalidDataPartition { + // The expected partition structure. + enum PartitionStructure { + // PartitionStructure unspecified. + PARTITION_STRUCTURE_UNSPECIFIED = 0; + + // Consistent hive-style partition definition (both raw and curated zone). + CONSISTENT_KEYS = 1; + + // Hive style partition definition (curated zone only). + HIVE_STYLE_KEYS = 2; + } + + // The issue type of InvalidDataPartition. + PartitionStructure expected_structure = 1; + } + + // Action details for absence of data detected by discovery. + message MissingData { + + } + + // Action details for invalid data arrangement. + message InvalidDataOrganization { + + } + + // The category of issue associated with the action. + Category category = 1; + + // Detailed description of the issue requiring action. + string issue = 2; + + // The time that the issue was detected. + google.protobuf.Timestamp detect_time = 4; + + // Output only. The relative resource name of the action, of the form: + // `projects/{project}/locations/{location}/lakes/{lake}/actions/{action}` + // `projects/{project}/locations/{location}/lakes/{lake}/zones/{zone}/actions/{action}` + // `projects/{project}/locations/{location}/lakes/{lake}/zones/{zone}/assets/{asset}/actions/{action}`. + string name = 5 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Action" + } + ]; + + // Output only. The relative resource name of the lake, of the form: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}`. + string lake = 6 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Lake" + } + ]; + + // Output only. The relative resource name of the zone, of the form: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}`. + string zone = 7 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Zone" + } + ]; + + // Output only. The relative resource name of the asset, of the form: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}/assets/{asset_id}`. + string asset = 8 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Asset" + } + ]; + + // The list of data locations associated with this action. Cloud Storage + // locations are represented as URI paths(E.g. + // `gs://bucket/table1/year=2020/month=Jan/`). BigQuery locations refer to + // resource names(E.g. + // `bigquery.googleapis.com/projects/project-id/datasets/dataset-id`). + repeated string data_locations = 9; + + // Additional details about the action based on the action category. + oneof details { + // Details for issues related to invalid or unsupported data formats. + InvalidDataFormat invalid_data_format = 10; + + // Details for issues related to incompatible schemas detected within data. + IncompatibleDataSchema incompatible_data_schema = 11; + + // Details for issues related to invalid or unsupported data partition + // structure. + InvalidDataPartition invalid_data_partition = 12; + + // Details for issues related to absence of data within managed resources. + MissingData missing_data = 13; + + // Details for issues related to absence of a managed resource. + MissingResource missing_resource = 14; + + // Details for issues related to lack of permissions to access data + // resources. + UnauthorizedResource unauthorized_resource = 15; + + // Details for issues related to applying security policy. + FailedSecurityPolicyApply failed_security_policy_apply = 21; + + // Details for issues related to invalid data arrangement. + InvalidDataOrganization invalid_data_organization = 22; + } +} + +// An asset represents a cloud resource that is being managed within a lake as a +// member of a zone. +message Asset { + option (google.api.resource) = { + type: "dataplex.googleapis.com/Asset" + pattern: "projects/{project}/locations/{location}/lakes/{lake}/zones/{zone}/assets/{asset}" + }; + + // Security policy status of the asset. Data security policy, i.e., readers, + // writers & owners, should be specified in the lake/zone/asset IAM policy. + message SecurityStatus { + // The state of the security policy. + enum State { + // State unspecified. + STATE_UNSPECIFIED = 0; + + // Security policy has been successfully applied to the attached resource. + READY = 1; + + // Security policy is in the process of being applied to the attached + // resource. + APPLYING = 2; + + // Security policy could not be applied to the attached resource due to + // errors. + ERROR = 3; + } + + // The current state of the security policy applied to the attached + // resource. + State state = 1; + + // Additional information about the current state. + string message = 2; + + // Last update time of the status. + google.protobuf.Timestamp update_time = 3; + } + + // Settings to manage the metadata discovery and publishing for an asset. + message DiscoverySpec { + // Describe CSV and similar semi-structured data formats. + message CsvOptions { + // Optional. The number of rows to interpret as header rows that should be skipped + // when reading data rows. + int32 header_rows = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The delimiter being used to separate values. This defaults to ','. + string delimiter = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The character encoding of the data. The default is UTF-8. + string encoding = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether to disable the inference of data type for CSV data. + // If true, all columns will be registered as strings. + bool disable_type_inference = 4 [(google.api.field_behavior) = OPTIONAL]; + } + + // Describe JSON data format. + message JsonOptions { + // Optional. The character encoding of the data. The default is UTF-8. + string encoding = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether to disable the inference of data type for Json data. + // If true, all columns will be registered as their primitive types + // (strings, number or boolean). + bool disable_type_inference = 2 [(google.api.field_behavior) = OPTIONAL]; + } + + // Optional. Whether discovery is enabled. + bool enabled = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The list of patterns to apply for selecting data to include during + // discovery if only a subset of the data should considered. For Cloud + // Storage bucket assets, these are interpreted as glob patterns used to + // match object names. For BigQuery dataset assets, these are interpreted as + // patterns to match table names. + repeated string include_patterns = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The list of patterns to apply for selecting data to exclude during + // discovery. For Cloud Storage bucket assets, these are interpreted as + // glob patterns used to match object names. For BigQuery dataset assets, + // these are interpreted as patterns to match table names. + repeated string exclude_patterns = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Configuration for CSV data. + CsvOptions csv_options = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Configuration for Json data. + JsonOptions json_options = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Determines when discovery is triggered. + oneof trigger { + // Optional. Cron schedule (https://en.wikipedia.org/wiki/Cron) for running + // discovery periodically. Successive discovery runs must be scheduled at + // least 60 minutes apart. + // The default value is to run discovery every 60 minutes. + // To explicitly set a timezone to the cron tab, apply a prefix in the + // cron tab: "CRON_TZ=${IANA_TIME_ZONE}" or TZ=${IANA_TIME_ZONE}". + // The ${IANA_TIME_ZONE} may only be a valid string from IANA time zone + // database. For example, "CRON_TZ=America/New_York 1 * * * *", or + // "TZ=America/New_York 1 * * * *". + string schedule = 10 [(google.api.field_behavior) = OPTIONAL]; + } + } + + // Identifies the cloud resource that is referenced by this asset. + message ResourceSpec { + // Type of resource. + enum Type { + // Type not specified. + TYPE_UNSPECIFIED = 0; + + // Cloud Storage bucket. + STORAGE_BUCKET = 1; + + // BigQuery dataset. + BIGQUERY_DATASET = 2; + } + + // Immutable. Relative name of the cloud resource that contains the data that is + // being managed within a lake. For example: + // `projects/{project_number}/buckets/{bucket_id}` + // `projects/{project_number}/datasets/{dataset_id}` + // If the creation policy indicates ATTACH behavior, then an existing + // resource must be provided. + // If the policy indicates CREATE behavior, new resource will be created + // with the given name.However if it is empty, then the resource will be + // created using {asset_id}-{UUID} template for name. + // The location of the referenced resource must always match that of the + // asset. + string name = 1 [(google.api.field_behavior) = IMMUTABLE]; + + // Required. Immutable. Type of resource. + Type type = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + } + + // Status of the resource referenced by an asset. + message ResourceStatus { + // The state of a resource. + enum State { + // State unspecified. + STATE_UNSPECIFIED = 0; + + // Resource does not have any errors. + READY = 1; + + // Resource has errors. + ERROR = 2; + } + + // The current state of the managed resource. + State state = 1; + + // Additional information about the current state. + string message = 2; + + // Last update time of the status. + google.protobuf.Timestamp update_time = 3; + } + + // Status of discovery for an asset. + message DiscoveryStatus { + // Current state of discovery. + enum State { + // State is unspecified. + STATE_UNSPECIFIED = 0; + + // Discovery for the asset is scheduled. + SCHEDULED = 1; + + // Discovery for the asset is running. + IN_PROGRESS = 2; + + // Discovery for the asset is currently paused (e.g. due to a lack + // of available resources). It will be automatically resumed. + PAUSED = 3; + + // Discovery for the asset is disabled. + DISABLED = 5; + } + + // The aggregated data statistics for the asset reported by discovery. + message Stats { + // The count of data items within the referenced resource. + int64 data_items = 1; + + // The number of stored data bytes within the referenced resource. + int64 data_size = 2; + + // The count of table entities within the referenced resource. + int64 tables = 3; + + // The count of fileset entities within the referenced resource. + int64 filesets = 4; + } + + // The current status of the discovery feature. + State state = 1; + + // Additional information about the current state. + string message = 2; + + // Last update time of the status. + google.protobuf.Timestamp update_time = 3; + + // The start time of the last discovery run. + google.protobuf.Timestamp last_run_time = 4; + + // Data Stats of the asset reported by discovery. + Stats stats = 6; + + // The duration of the last discovery run. + google.protobuf.Duration last_run_duration = 7; + } + + // Output only. The relative resource name of the asset, of the form: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}/assets/{asset_id}`. + string name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Asset" + } + ]; + + // Optional. User friendly display name. + string display_name = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. System generated globally unique ID for the asset. This ID will be + // different if the asset is deleted and re-created with the same name. + string uid = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the asset was created. + google.protobuf.Timestamp create_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the asset was last updated. + google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. User defined labels for the asset. + map labels = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Description of the asset. + string description = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Current state of the asset. + State state = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. Specification of the resource that is referenced by this asset. + ResourceSpec resource_spec = 100 [(google.api.field_behavior) = REQUIRED]; + + // Output only. Status of the resource referenced by this asset. + ResourceStatus resource_status = 101 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Status of the security policy applied to resource referenced by this asset. + SecurityStatus security_status = 103 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Specification of the discovery feature applied to data referenced by this + // asset. + // When this spec is left unset, the asset will use the spec set on the parent + // zone. + DiscoverySpec discovery_spec = 106 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Status of the discovery feature applied to data referenced by this asset. + DiscoveryStatus discovery_status = 107 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// State of a resource. +enum State { + // State is not specified. + STATE_UNSPECIFIED = 0; + + // Resource is active, i.e., ready to use. + ACTIVE = 1; + + // Resource is under creation. + CREATING = 2; + + // Resource is under deletion. + DELETING = 3; + + // Resource is active but has unresolved actions. + ACTION_REQUIRED = 4; +} diff --git a/google/cloud/dataplex/v1/service.proto b/google/cloud/dataplex/v1/service.proto new file mode 100644 index 000000000..401cb9a83 --- /dev/null +++ b/google/cloud/dataplex/v1/service.proto @@ -0,0 +1,897 @@ +// Copyright 2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.dataplex.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/dataplex/v1/resources.proto"; +import "google/cloud/dataplex/v1/tasks.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/empty.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/dataplex/v1;dataplex"; +option java_multiple_files = true; +option java_outer_classname = "ServiceProto"; +option java_package = "com.google.cloud.dataplex.v1"; + +// Dataplex service provides data lakes as a service. The primary resources +// offered by this service are Lakes, Zones and Assets which collectively allow +// a data adminstrator to organize, manage, secure and catalog data across their +// organization located across cloud projects in a variety of storage systems +// including Cloud Storage and BigQuery. +service DataplexService { + option (google.api.default_host) = "dataplex.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Creates a lake resource. + rpc CreateLake(CreateLakeRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/lakes" + body: "lake" + }; + option (google.api.method_signature) = "parent,lake,lake_id"; + option (google.longrunning.operation_info) = { + response_type: "Lake" + metadata_type: "OperationMetadata" + }; + } + + // Updates a lake resource. + rpc UpdateLake(UpdateLakeRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{lake.name=projects/*/locations/*/lakes/*}" + body: "lake" + }; + option (google.api.method_signature) = "lake,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Lake" + metadata_type: "OperationMetadata" + }; + } + + // Deletes a lake resource. All zones within the lake must be deleted before + // the lake can be deleted. + rpc DeleteLake(DeleteLakeRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/lakes/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Lists lake resources in a project and location. + rpc ListLakes(ListLakesRequest) returns (ListLakesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/lakes" + }; + option (google.api.method_signature) = "parent"; + } + + // Retrieves a lake resource. + rpc GetLake(GetLakeRequest) returns (Lake) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/lakes/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists action resources in a lake. + rpc ListLakeActions(ListLakeActionsRequest) returns (ListActionsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/lakes/*}/actions" + }; + option (google.api.method_signature) = "parent"; + } + + // Creates a zone resource within a lake. + rpc CreateZone(CreateZoneRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/lakes/*}/zones" + body: "zone" + }; + option (google.api.method_signature) = "parent,zone,zone_id"; + option (google.longrunning.operation_info) = { + response_type: "Zone" + metadata_type: "OperationMetadata" + }; + } + + // Updates a zone resource. + rpc UpdateZone(UpdateZoneRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{zone.name=projects/*/locations/*/lakes/*/zones/*}" + body: "zone" + }; + option (google.api.method_signature) = "zone,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Zone" + metadata_type: "OperationMetadata" + }; + } + + // Deletes a zone resource. All assets within a zone must be deleted before + // the zone can be deleted. + rpc DeleteZone(DeleteZoneRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/lakes/*/zones/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Lists zone resources in a lake. + rpc ListZones(ListZonesRequest) returns (ListZonesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/lakes/*}/zones" + }; + option (google.api.method_signature) = "parent"; + } + + // Retrieves a zone resource. + rpc GetZone(GetZoneRequest) returns (Zone) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/lakes/*/zones/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists action resources in a zone. + rpc ListZoneActions(ListZoneActionsRequest) returns (ListActionsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/lakes/*/zones/*}/actions" + }; + option (google.api.method_signature) = "parent"; + } + + // Creates an asset resource. + rpc CreateAsset(CreateAssetRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/lakes/*/zones/*}/assets" + body: "asset" + }; + option (google.api.method_signature) = "parent,asset,asset_id"; + option (google.longrunning.operation_info) = { + response_type: "Asset" + metadata_type: "OperationMetadata" + }; + } + + // Updates an asset resource. + rpc UpdateAsset(UpdateAssetRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{asset.name=projects/*/locations/*/lakes/*/zones/*/assets/*}" + body: "asset" + }; + option (google.api.method_signature) = "asset,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Asset" + metadata_type: "OperationMetadata" + }; + } + + // Deletes an asset resource. The referenced storage resource is detached + // (default) or deleted based on the associated Lifecycle policy. + rpc DeleteAsset(DeleteAssetRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/lakes/*/zones/*/assets/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Lists asset resources in a zone. + rpc ListAssets(ListAssetsRequest) returns (ListAssetsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/lakes/*/zones/*}/assets" + }; + option (google.api.method_signature) = "parent"; + } + + // Retrieves an asset resource. + rpc GetAsset(GetAssetRequest) returns (Asset) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/lakes/*/zones/*/assets/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists action resources in an asset. + rpc ListAssetActions(ListAssetActionsRequest) returns (ListActionsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/lakes/*/zones/*/assets/*}/actions" + }; + option (google.api.method_signature) = "parent"; + } + + // Creates a task resource within a lake. + rpc CreateTask(CreateTaskRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/lakes/*}/tasks" + body: "task" + }; + option (google.api.method_signature) = "parent,task,task_id"; + option (google.longrunning.operation_info) = { + response_type: "Task" + metadata_type: "OperationMetadata" + }; + } + + // Update the task resource. + rpc UpdateTask(UpdateTaskRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{task.name=projects/*/locations/*/lakes/*/tasks/*}" + body: "task" + }; + option (google.api.method_signature) = "task,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Task" + metadata_type: "OperationMetadata" + }; + } + + // Delete the task resource. + rpc DeleteTask(DeleteTaskRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/lakes/*/tasks/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Lists tasks under the given lake. + rpc ListTasks(ListTasksRequest) returns (ListTasksResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/lakes/*}/tasks" + }; + option (google.api.method_signature) = "parent"; + } + + // Get task resource. + rpc GetTask(GetTaskRequest) returns (Task) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/lakes/*/tasks/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists Jobs under the given task. + rpc ListJobs(ListJobsRequest) returns (ListJobsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/lakes/*/tasks/*}/jobs" + }; + option (google.api.method_signature) = "parent"; + } + + // Get job resource. + rpc GetJob(GetJobRequest) returns (Job) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/lakes/*/tasks/*/jobs/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Cancel jobs running for the task resource. + rpc CancelJob(CancelJobRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*/lakes/*/tasks/*/jobs/*}:cancel" + body: "*" + }; + option (google.api.method_signature) = "name"; + } +} + +// Create lake request. +message CreateLakeRequest { + // Required. The resource name of the lake location, of the form: + // `projects/{project_number}/locations/{location_id}` + // where `location_id` refers to a GCP region. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Required. Lake identifier. + // This ID will be used to generate names such as database and dataset names + // when publishing metadata to Hive Metastore and BigQuery. + // * Must contain only lowercase letters, numbers and hyphens. + // * Must start with a letter. + // * Must end with a number or a letter. + // * Must be between 1-63 characters. + // * Must be unique within the customer project / location. + string lake_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Lake resource + Lake lake = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Only validate the request, but do not perform mutations. + // The default is false. + bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Update lake request. +message UpdateLakeRequest { + // Required. Mask of fields to update. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Update description. + // Only fields specified in `update_mask` are updated. + Lake lake = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Only validate the request, but do not perform mutations. + // The default is false. + bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Delete lake request. +message DeleteLakeRequest { + // Required. The resource name of the lake: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Lake" + } + ]; +} + +// List lakes request. +message ListLakesRequest { + // Required. The resource name of the lake location, of the form: + // `projects/{project_number}/locations/{location_id}` + // where `location_id` refers to a GCP region. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Optional. Maximum number of Lakes to return. The service may return fewer than this + // value. If unspecified, at most 10 lakes will be returned. The maximum + // value is 1000; values above 1000 will be coerced to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Page token received from a previous `ListLakes` call. Provide this to + // retrieve the subsequent page. When paginating, all other parameters + // provided to `ListLakes` must match the call that provided the page token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter request. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Order by fields for the result. + string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// List lakes response. +message ListLakesResponse { + // Lakes under the given parent location. + repeated Lake lakes = 1; + + // Token to retrieve the next page of results, or empty if there are no more + // results in the list. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable_locations = 3; +} + +// List lake actions request. +message ListLakeActionsRequest { + // Required. The resource name of the parent lake: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Lake" + } + ]; + + // Optional. Maximum number of actions to return. The service may return fewer than this + // value. If unspecified, at most 10 actions will be returned. The maximum + // value is 1000; values above 1000 will be coerced to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Page token received from a previous `ListLakeActions` call. Provide this to + // retrieve the subsequent page. When paginating, all other parameters + // provided to `ListLakeActions` must match the call that provided the page + // token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// List actions response. +message ListActionsResponse { + // Actions under the given parent lake/zone/asset. + repeated Action actions = 1; + + // Token to retrieve the next page of results, or empty if there are no more + // results in the list. + string next_page_token = 2; +} + +// Get lake request. +message GetLakeRequest { + // Required. The resource name of the lake: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Lake" + } + ]; +} + +// Create zone request. +message CreateZoneRequest { + // Required. The resource name of the parent lake: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Lake" + } + ]; + + // Required. Zone identifier. + // This ID will be used to generate names such as database and dataset names + // when publishing metadata to Hive Metastore and BigQuery. + // * Must contain only lowercase letters, numbers and hyphens. + // * Must start with a letter. + // * Must end with a number or a letter. + // * Must be between 1-63 characters. + // * Must be unique across all lakes from all locations in a project. + // * Must not be one of the reserved IDs (i.e. "default", "global-temp") + string zone_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Zone resource. + Zone zone = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Only validate the request, but do not perform mutations. + // The default is false. + bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Update zone request. +message UpdateZoneRequest { + // Required. Mask of fields to update. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Update description. + // Only fields specified in `update_mask` are updated. + Zone zone = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Only validate the request, but do not perform mutations. + // The default is false. + bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Delete zone request. +message DeleteZoneRequest { + // Required. The resource name of the zone: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Zone" + } + ]; +} + +// List zones request. +message ListZonesRequest { + // Required. The resource name of the parent lake: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Lake" + } + ]; + + // Optional. Maximum number of zones to return. The service may return fewer than this + // value. If unspecified, at most 10 zones will be returned. The maximum + // value is 1000; values above 1000 will be coerced to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Page token received from a previous `ListZones` call. Provide this to + // retrieve the subsequent page. When paginating, all other parameters + // provided to `ListZones` must match the call that provided the page token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter request. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Order by fields for the result. + string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// List zones response. +message ListZonesResponse { + // Zones under the given parent lake. + repeated Zone zones = 1; + + // Token to retrieve the next page of results, or empty if there are no more + // results in the list. + string next_page_token = 2; +} + +// List zone actions request. +message ListZoneActionsRequest { + // Required. The resource name of the parent zone: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Zone" + } + ]; + + // Optional. Maximum number of actions to return. The service may return fewer than this + // value. If unspecified, at most 10 actions will be returned. The maximum + // value is 1000; values above 1000 will be coerced to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Page token received from a previous `ListZoneActions` call. Provide this to + // retrieve the subsequent page. When paginating, all other parameters + // provided to `ListZoneActions` must match the call that provided the page + // token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Get zone request. +message GetZoneRequest { + // Required. The resource name of the zone: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Zone" + } + ]; +} + +// Create asset request. +message CreateAssetRequest { + // Required. The resource name of the parent zone: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}` + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Zone" + } + ]; + + // Required. Asset identifier. + // This ID will be used to generate names such as table names when publishing + // metadata to Hive Metastore and BigQuery. + // * Must contain only lowercase letters, numbers and hyphens. + // * Must start with a letter. + // * Must end with a number or a letter. + // * Must be between 1-63 characters. + // * Must be unique within the zone. + string asset_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Asset resource. + Asset asset = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Only validate the request, but do not perform mutations. + // The default is false. + bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Update asset request. +message UpdateAssetRequest { + // Required. Mask of fields to update. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Update description. + // Only fields specified in `update_mask` are updated. + Asset asset = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Only validate the request, but do not perform mutations. + // The default is false. + bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Delete asset request. +message DeleteAssetRequest { + // Required. The resource name of the asset: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}/assets/{asset_id}`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Asset" + } + ]; +} + +// List assets request. +message ListAssetsRequest { + // Required. The resource name of the parent zone: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Zone" + } + ]; + + // Optional. Maximum number of asset to return. The service may return fewer than + // this value. If unspecified, at most 10 assets will be returned. The + // maximum value is 1000; values above 1000 will be coerced to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Page token received from a previous `ListAssets` call. Provide this to + // retrieve the subsequent page. When paginating, all other parameters + // provided to `ListAssets` must match the call that provided the page + // token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter request. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Order by fields for the result. + string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// List assets response. +message ListAssetsResponse { + // Asset under the given parent zone. + repeated Asset assets = 1; + + // Token to retrieve the next page of results, or empty if there are no more + // results in the list. + string next_page_token = 2; +} + +// List asset actions request. +message ListAssetActionsRequest { + // Required. The resource name of the parent asset: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}/assets/{asset_id}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Asset" + } + ]; + + // Optional. Maximum number of actions to return. The service may return fewer than this + // value. If unspecified, at most 10 actions will be returned. The maximum + // value is 1000; values above 1000 will be coerced to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Page token received from a previous `ListAssetActions` call. Provide this + // to retrieve the subsequent page. When paginating, all other parameters + // provided to `ListAssetActions` must match the call that provided the page + // token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Get asset request. +message GetAssetRequest { + // Required. The resource name of the asset: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/zones/{zone_id}/assets/{asset_id}`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Asset" + } + ]; +} + +// Represents the metadata of a long-running operation. +message OperationMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Server-defined resource path for the target of the operation. + string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the verb executed by the operation. + string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Human-readable status of the operation, if any. + string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies whether the user has requested cancellation + // of the operation. Operations that have successfully been cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`. + bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. API version used to start the operation. + string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Create task request. +message CreateTaskRequest { + // Required. The resource name of the parent lake: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Lake" + } + ]; + + // Required. Task identifier. + string task_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. Task resource. + Task task = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Only validate the request, but do not perform mutations. + // The default is false. + bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// Update task request. +message UpdateTaskRequest { + // Required. Mask of fields to update. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Update description. + // Only fields specified in `update_mask` are updated. + Task task = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Only validate the request, but do not perform mutations. + // The default is false. + bool validate_only = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Delete task request. +message DeleteTaskRequest { + // Required. The resource name of the task: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/task/{task_id}`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Task" + } + ]; +} + +// List tasks request. +message ListTasksRequest { + // Required. The resource name of the parent lake: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Lake" + } + ]; + + // Optional. Maximum number of tasks to return. The service may return fewer than this + // value. If unspecified, at most 10 tasks will be returned. The maximum + // value is 1000; values above 1000 will be coerced to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Page token received from a previous `ListZones` call. Provide this to + // retrieve the subsequent page. When paginating, all other parameters + // provided to `ListZones` must match the call that provided the page token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter request. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Order by fields for the result. + string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// List tasks response. +message ListTasksResponse { + // Tasks under the given parent lake. + repeated Task tasks = 1; + + // Token to retrieve the next page of results, or empty if there are no more + // results in the list. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable_locations = 3; +} + +// Get task request. +message GetTaskRequest { + // Required. The resource name of the task: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/tasks/{tasks_id}` + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Task" + } + ]; +} + +// Get job request. +message GetJobRequest { + // Required. The resource name of the job: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/tasks/{task_id}/jobs/{job_id}`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Job" + } + ]; +} + +// List jobs request. +message ListJobsRequest { + // Required. The resource name of the parent environment: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/tasks/{task_id}`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Task" + } + ]; + + // Optional. Maximum number of jobs to return. The service may return fewer than + // this value. If unspecified, at most 10 jobs will be returned. The + // maximum value is 1000; values above 1000 will be coerced to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Page token received from a previous `ListJobs` call. Provide this to + // retrieve the subsequent page. When paginating, all other parameters + // provided to `ListJobs` must match the call that provided the page + // token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// List jobs response. +message ListJobsResponse { + // Jobs under a given task. + repeated Job jobs = 1; + + // Token to retrieve the next page of results, or empty if there are no more + // results in the list. + string next_page_token = 2; +} + +// Cancel task jobs. +message CancelJobRequest { + // Required. The resource name of the job: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/task/{task_id}/job/{job_id}`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Job" + } + ]; +} diff --git a/google/cloud/dataplex/v1/tasks.proto b/google/cloud/dataplex/v1/tasks.proto new file mode 100644 index 000000000..c716944c6 --- /dev/null +++ b/google/cloud/dataplex/v1/tasks.proto @@ -0,0 +1,344 @@ +// Copyright 2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.dataplex.v1; + +import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/dataplex/v1/resources.proto"; +import "google/protobuf/duration.proto"; +import "google/protobuf/timestamp.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/dataplex/v1;dataplex"; +option java_multiple_files = true; +option java_outer_classname = "TasksProto"; +option java_package = "com.google.cloud.dataplex.v1"; + +// A task represents a user-visible job. +message Task { + option (google.api.resource) = { + type: "dataplex.googleapis.com/Task" + pattern: "projects/{project}/locations/{location}/lakes/{lake}/tasks/{task}" + }; + + // Configuration for the underlying infrastructure used to run workloads. + message InfrastructureSpec { + // Batch compute resources associated with the task. + message BatchComputeResources { + // Optional. Total number of job executors. + int32 executors_count = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Max configurable executors. + // If max_executors_count > executors_count, then auto-scaling is enabled. + int32 max_executors_count = 2 [(google.api.field_behavior) = OPTIONAL]; + } + + // Container Image Runtime Configuration used with Batch execution. + message ContainerImageRuntime { + // Optional. A list of Java JARS to add to the classpath. + // Valid input includes Cloud Storage URIs to Jar binaries. + // For example, `gs://bucket-name/my/path/to/file.jar`. + repeated string java_jars = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A list of python packages to be installed. + // Valid formats include Cloud Storage URI to a PIP installable library. + // For example, `gs://bucket-name/my/path/to/lib.tar.gz`. + repeated string python_packages = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Override to common configuration of open source components installed on + // the Dataproc cluster. + // The properties to set on daemon config files. + // Property keys are specified in `prefix:property` format, for example + // `core:hadoop.tmp.dir`. + // For more information, see [Cluster + // properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties). + map properties = 4 [(google.api.field_behavior) = OPTIONAL]; + } + + // Cloud VPC Network used to run the infrastructure. + message VpcNetwork { + // The Cloud VPC network identifier. + oneof network_name { + // Optional. The Cloud VPC network in which the job is run. By default, the Cloud + // VPC network named Default within the project is used. + string network = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The Cloud VPC sub-network in which the job is run. + string sub_network = 2 [(google.api.field_behavior) = OPTIONAL]; + } + + // Optional. List of network tags to apply to the job. + repeated string network_tags = 3 [(google.api.field_behavior) = OPTIONAL]; + } + + // Hardware config. + oneof resources { + // Compute resources needed for a Task when using Dataproc Serverless. + BatchComputeResources batch = 52; + } + + // Software config. + oneof runtime { + // Container Image Runtime Configuration. + ContainerImageRuntime container_image = 101; + } + + // Networking config. + oneof network { + // Vpc network. + VpcNetwork vpc_network = 150; + } + } + + // Task scheduling and trigger settings. + message TriggerSpec { + // Determines how often and when the job will run. + enum Type { + // Unspecified trigger type. + TYPE_UNSPECIFIED = 0; + + // The task runs one-time shortly after Task Creation. + ON_DEMAND = 1; + + // The task is scheduled to run periodically. + RECURRING = 2; + } + + // Required. Immutable. Trigger type of the user-specified Task. + Type type = 5 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; + + // Optional. The first run of the task will be after this time. + // If not specified, the task will run shortly after being submitted if + // ON_DEMAND and based on the schedule if RECURRING. + google.protobuf.Timestamp start_time = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Prevent the task from executing. + // This does not cancel already running tasks. It is intended to temporarily + // disable RECURRING tasks. + bool disabled = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Number of retry attempts before aborting. + // Set to zero to never attempt to retry a failed task. + int32 max_retries = 7 [(google.api.field_behavior) = OPTIONAL]; + + // Trigger only applies for `RECURRING` tasks. + oneof trigger { + // Optional. Cron schedule (https://en.wikipedia.org/wiki/Cron) for running + // tasks periodically. + // To explicitly set a timezone to the cron tab, apply a prefix in the + // cron tab: "CRON_TZ=${IANA_TIME_ZONE}" or "TZ=${IANA_TIME_ZONE}". + // The ${IANA_TIME_ZONE} may only be a valid string from IANA time zone + // database. For example, "CRON_TZ=America/New_York 1 * * * *", or + // "TZ=America/New_York 1 * * * *". + // This field is required for RECURRING tasks. + string schedule = 100 [(google.api.field_behavior) = OPTIONAL]; + } + } + + // Execution related settings, like retry and service_account. + message ExecutionSpec { + // Optional. The arguments to pass to the task. + // The args can use placeholders of the format ${placeholder} as + // part of key/value string. These will be interpolated before passing the + // args to the driver. Currently supported placeholders: + // - ${task_id} + // - ${job_time} + // To pass positional args, set the key as TASK_ARGS. The value should be a + // comma-separated string of all the positional arguments. To use a + // delimiter other than comma, refer to + // https://cloud.google.com/sdk/gcloud/reference/topic/escaping. In case of + // other keys being present in the args, then TASK_ARGS will be passed as + // the last argument. + map args = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Required. Service account to use to execute a task. + // If not provided, the default Compute service account for the project is + // used. + string service_account = 5 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The maximum duration after which the job execution is expired. + google.protobuf.Duration max_job_execution_lifetime = 8 [(google.api.field_behavior) = OPTIONAL]; + } + + // User-specified config for running a Spark task. + message SparkTaskConfig { + // Required. The specification of the main method to call to drive the + // job. Specify either the jar file that contains the main class or the + // main class name. + oneof driver { + // The Cloud Storage URI of the jar file that contains the main class. + // The execution args are passed in as a sequence of named process + // arguments (`--key=value`). + string main_jar_file_uri = 100; + + // The name of the driver's main class. The jar file that contains the + // class must be in the default CLASSPATH or specified in + // `jar_file_uris`. + // The execution args are passed in as a sequence of named process + // arguments (`--key=value`). + string main_class = 101; + + // The Gcloud Storage URI of the main Python file to use as the driver. + // Must be a .py file. The execution args are passed in as a sequence of + // named process arguments (`--key=value`). + string python_script_file = 102; + + // A reference to a query file. This can be the Cloud Storage URI of the + // query file or it can the path to a SqlScript Content. The execution + // args are used to declare a set of script variables + // (`set key="value";`). + string sql_script_file = 104; + + // The query text. + // The execution args are used to declare a set of script variables + // (`set key="value";`). + string sql_script = 105; + } + + // Optional. Cloud Storage URIs of files to be placed in the working directory of each + // executor. + repeated string file_uris = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Cloud Storage URIs of archives to be extracted into the working directory + // of each executor. Supported file types: .jar, .tar, .tar.gz, .tgz, and + // .zip. + repeated string archive_uris = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Infrastructure specification for the execution. + InfrastructureSpec infrastructure_spec = 6 [(google.api.field_behavior) = OPTIONAL]; + } + + // Output only. The relative resource name of the task, of the form: + // projects/{project_number}/locations/{location_id}/lakes/{lake_id}/ + // tasks/{task_id}. + string name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Task" + } + ]; + + // Output only. System generated globally unique ID for the task. This ID will be + // different if the task is deleted and re-created with the same name. + string uid = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the task was created. + google.protobuf.Timestamp create_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the task was last updated. + google.protobuf.Timestamp update_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Description of the task. + string description = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. User friendly display name. + string display_name = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Current state of the task. + State state = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. User-defined labels for the task. + map labels = 8 [(google.api.field_behavior) = OPTIONAL]; + + // Required. Spec related to how often and when a task should be triggered. + TriggerSpec trigger_spec = 100 [(google.api.field_behavior) = REQUIRED]; + + // Required. Spec related to how a task is executed. + ExecutionSpec execution_spec = 101 [(google.api.field_behavior) = REQUIRED]; + + // Task template specific user-specified config. + oneof config { + // Config related to running custom Spark tasks. + SparkTaskConfig spark = 300; + } +} + +// A job represents an instance of a task. +message Job { + option (google.api.resource) = { + type: "dataplex.googleapis.com/Job" + pattern: "projects/{project}/locations/{location}/lakes/{lake}/tasks/{task}/jobs/{job}" + }; + + enum Service { + // Service used to run the job is unspecified. + SERVICE_UNSPECIFIED = 0; + + // Dataproc service is used to run this job. + DATAPROC = 1; + } + + enum State { + // The job state is unknown. + STATE_UNSPECIFIED = 0; + + // The job is running. + RUNNING = 1; + + // The job is cancelling. + CANCELLING = 2; + + // The job cancellation was successful. + CANCELLED = 3; + + // The job completed successfully. + SUCCEEDED = 4; + + // The job is no longer running due to an error. + FAILED = 5; + + // The job was cancelled outside of Dataplex. + ABORTED = 6; + } + + // Output only. The relative resource name of the job, of the form: + // `projects/{project_number}/locations/{location_id}/lakes/{lake_id}/tasks/{task_id}/jobs/{job_id}`. + string name = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "dataplex.googleapis.com/Job" + } + ]; + + // Output only. System generated globally unique ID for the job. + string uid = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the job was started. + google.protobuf.Timestamp start_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the job ended. + google.protobuf.Timestamp end_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Execution state for the job. + State state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The number of times the job has been retried (excluding the + // initial attempt). + uint32 retry_count = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The underlying service running a job. + Service service = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The full resource name for the job run under a particular service. + string service_job = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Additional information about the current state. + string message = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} diff --git a/google/cloud/dataproc/BUILD.bazel b/google/cloud/dataproc/BUILD.bazel index e69de29bb..2691942f2 100644 --- a/google/cloud/dataproc/BUILD.bazel +++ b/google/cloud/dataproc/BUILD.bazel @@ -0,0 +1,41 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-dataproc. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for dataproc. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "dataproc_ruby_wrapper", + srcs = ["//google/cloud/dataproc/v1:dataproc_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-dataproc", + "ruby-cloud-env-prefix=DATAPROC", + "ruby-cloud-wrapper-of=v1:0.7;v1beta2:0.6", + "ruby-cloud-product-url=https://cloud.google.com/dataproc", + "ruby-cloud-api-id=dataproc.googleapis.com", + "ruby-cloud-api-shortname=dataproc", + "ruby-cloud-migration-version=1.0", + ], + ruby_cloud_description = "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", + ruby_cloud_title = "Cloud Dataproc", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-dataproc-ruby", + deps = [ + ":dataproc_ruby_wrapper", + ], +) diff --git a/google/cloud/dataproc/dataproc.yaml b/google/cloud/dataproc/dataproc.yaml index 86831d635..4d1ca2d03 100644 --- a/google/cloud/dataproc/dataproc.yaml +++ b/google/cloud/dataproc/dataproc.yaml @@ -4,21 +4,15 @@ name: dataproc.googleapis.com title: Cloud Dataproc API apis: +- name: google.cloud.dataproc.v1.AutoscalingPolicyService - name: google.cloud.dataproc.v1.ClusterController - name: google.cloud.dataproc.v1.JobController - name: google.cloud.dataproc.v1.WorkflowTemplateService -- name: google.cloud.dataproc.v1beta2.AutoscalingPolicyService -- name: google.cloud.dataproc.v1beta2.ClusterController -- name: google.cloud.dataproc.v1beta2.JobController -- name: google.cloud.dataproc.v1beta2.WorkflowTemplateService types: - name: google.cloud.dataproc.v1.ClusterOperationMetadata - name: google.cloud.dataproc.v1.DiagnoseClusterResults - name: google.cloud.dataproc.v1.WorkflowMetadata -- name: google.cloud.dataproc.v1beta2.DiagnoseClusterResults -- name: google.cloud.dataproc.v1beta2.ClusterOperationMetadata -- name: google.cloud.dataproc.v1beta2.WorkflowMetadata documentation: summary: 'Manages Hadoop-based clusters and jobs on Google Cloud Platform.' @@ -61,27 +55,13 @@ http: body: '*' - post: '/v1/{resource=projects/*/locations/*/autoscalingPolicies/*}:getIamPolicy' body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/clusters/*}:getIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/jobs/*}:getIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/operations/*}:getIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/workflowTemplates/*}:getIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/locations/*/workflowTemplates/*}:getIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/autoscalingPolicies/*}:getIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/locations/*/autoscalingPolicies/*}:getIamPolicy' - body: '*' - - get: '/v1beta2/{resource=projects/*/regions/*/clusters/*}:getIamPolicy' - - get: '/v1beta2/{resource=projects/*/regions/*/jobs/*}:getIamPolicy' - - get: '/v1beta2/{resource=projects/*/regions/*/operations/*}:getIamPolicy' - - get: '/v1beta2/{resource=projects/*/regions/*/workflowTemplates/*}:getIamPolicy' - - get: '/v1beta2/{resource=projects/*/regions/*/autoscalingPolicies/*}:getIamPolicy' - - get: '/v1beta2/{resource=projects/*/locations/*/workflowTemplates/*}:getIamPolicy' - - get: '/v1beta2/{resource=projects/*/locations/*/autoscalingPolicies/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/regions/*/clusters/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/regions/*/jobs/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/regions/*/operations/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/regions/*/workflowTemplates/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/regions/*/autoscalingPolicies/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/locations/*/workflowTemplates/*}:getIamPolicy' + - get: '/v1/{resource=projects/*/locations/*/autoscalingPolicies/*}:getIamPolicy' - selector: google.iam.v1.IAMPolicy.SetIamPolicy post: '/v1/{resource=projects/*/regions/*/clusters/*}:setIamPolicy' body: '*' @@ -98,20 +78,6 @@ http: body: '*' - post: '/v1/{resource=projects/*/locations/*/autoscalingPolicies/*}:setIamPolicy' body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/clusters/*}:setIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/jobs/*}:setIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/operations/*}:setIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/workflowTemplates/*}:setIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/locations/*/workflowTemplates/*}:setIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/autoscalingPolicies/*}:setIamPolicy' - body: '*' - - post: '/v1beta2/{resource=projects/*/locations/*/autoscalingPolicies/*}:setIamPolicy' - body: '*' - selector: google.iam.v1.IAMPolicy.TestIamPermissions post: '/v1/{resource=projects/*/regions/*/clusters/*}:testIamPermissions' body: '*' @@ -128,36 +94,14 @@ http: body: '*' - post: '/v1/{resource=projects/*/locations/*/autoscalingPolicies/*}:testIamPermissions' body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/clusters/*}:testIamPermissions' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/jobs/*}:testIamPermissions' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/operations/*}:testIamPermissions' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/workflowTemplates/*}:testIamPermissions' - body: '*' - - post: '/v1beta2/{resource=projects/*/locations/*/workflowTemplates/*}:testIamPermissions' - body: '*' - - post: '/v1beta2/{resource=projects/*/regions/*/autoscalingPolicies/*}:testIamPermissions' - body: '*' - - post: '/v1beta2/{resource=projects/*/locations/*/autoscalingPolicies/*}:testIamPermissions' - body: '*' - selector: google.longrunning.Operations.CancelOperation post: '/v1/{name=projects/*/regions/*/operations/*}:cancel' - additional_bindings: - - post: '/v1beta2/{name=projects/*/regions/*/operations/*}:cancel' - selector: google.longrunning.Operations.DeleteOperation delete: '/v1/{name=projects/*/regions/*/operations/*}' - additional_bindings: - - delete: '/v1beta2/{name=projects/*/regions/*/operations/*}' - selector: google.longrunning.Operations.GetOperation get: '/v1/{name=projects/*/regions/*/operations/*}' - additional_bindings: - - get: '/v1beta2/{name=projects/*/regions/*/operations/*}' - selector: google.longrunning.Operations.ListOperations get: '/v1/{name=projects/*/regions/*/operations}' - additional_bindings: - - get: '/v1beta2/{name=projects/*/regions/*/operations}' authentication: rules: diff --git a/google/cloud/dataproc/logging/BUILD.bazel b/google/cloud/dataproc/logging/BUILD.bazel index 5fbf52904..88780e4de 100644 --- a/google/cloud/dataproc/logging/BUILD.bazel +++ b/google/cloud/dataproc/logging/BUILD.bazel @@ -75,7 +75,6 @@ moved_proto_library( py_proto_library( name = "logging_py_proto", - plugin = "@protoc_docs_plugin//:docs_plugin", deps = [":logging_moved_proto"], ) @@ -87,12 +86,11 @@ py_grpc_library( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -159,4 +157,20 @@ csharp_grpc_library( ############################################################################## # C++ ############################################################################## -# Put your C++ code here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "logging_cc_proto", + deps = [":logging_proto"], +) + +cc_grpc_library( + name = "logging_cc_grpc", + srcs = [":logging_proto"], + grpc_only = True, + deps = [":logging_cc_proto"], +) diff --git a/google/cloud/dataproc/v1/BUILD.bazel b/google/cloud/dataproc/v1/BUILD.bazel index ef705a2b3..ffd5ce7f8 100644 --- a/google/cloud/dataproc/v1/BUILD.bazel +++ b/google/cloud/dataproc/v1/BUILD.bazel @@ -13,6 +13,7 @@ proto_library( name = "dataproc_proto", srcs = [ "autoscaling_policies.proto", + "batches.proto", "clusters.proto", "jobs.proto", "operations.proto", @@ -177,14 +178,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -346,4 +346,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "dataproc_cc_proto", + deps = [":dataproc_proto"], +) + +cc_grpc_library( + name = "dataproc_cc_grpc", + srcs = [":dataproc_proto"], + grpc_only = True, + deps = [":dataproc_cc_proto"], +) diff --git a/google/cloud/dataproc/v1/autoscaling_policies.proto b/google/cloud/dataproc/v1/autoscaling_policies.proto index bec577e47..94b225a47 100644 --- a/google/cloud/dataproc/v1/autoscaling_policies.proto +++ b/google/cloud/dataproc/v1/autoscaling_policies.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -140,6 +140,15 @@ message AutoscalingPolicy { // Optional. Describes how the autoscaler will operate for secondary workers. InstanceGroupAutoscalingPolicyConfig secondary_worker_config = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The labels to associate with this autoscaling policy. + // Label **keys** must contain 1 to 63 characters, and must conform to + // [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). + // Label **values** may be empty, but, if present, must contain 1 to 63 + // characters, and must conform to [RFC + // 1035](https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be + // associated with an autoscaling policy. + map labels = 6 [(google.api.field_behavior) = OPTIONAL]; } // Basic algorithm for autoscaling. diff --git a/google/cloud/dataproc/v1/batches.proto b/google/cloud/dataproc/v1/batches.proto new file mode 100644 index 000000000..eafb4e354 --- /dev/null +++ b/google/cloud/dataproc/v1/batches.proto @@ -0,0 +1,372 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.dataproc.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/dataproc/v1/shared.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/empty.proto"; +import "google/protobuf/timestamp.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/dataproc/v1;dataproc"; +option java_multiple_files = true; +option java_outer_classname = "BatchesProto"; +option java_package = "com.google.cloud.dataproc.v1"; + +// The BatchController provides methods to manage batch workloads. +service BatchController { + option (google.api.default_host) = "dataproc.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Creates a batch workload that executes asynchronously. + rpc CreateBatch(CreateBatchRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/batches" + body: "batch" + }; + option (google.api.method_signature) = "parent,batch,batch_id"; + option (google.longrunning.operation_info) = { + response_type: "Batch" + metadata_type: "google.cloud.dataproc.v1.BatchOperationMetadata" + }; + } + + // Gets the batch workload resource representation. + rpc GetBatch(GetBatchRequest) returns (Batch) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/batches/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Lists batch workloads. + rpc ListBatches(ListBatchesRequest) returns (ListBatchesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/batches" + }; + option (google.api.method_signature) = "parent"; + } + + // Deletes the batch workload resource. If the batch is not in terminal state, + // the delete fails and the response returns `FAILED_PRECONDITION`. + rpc DeleteBatch(DeleteBatchRequest) returns (google.protobuf.Empty) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/batches/*}" + }; + option (google.api.method_signature) = "name"; + } +} + +// A request to create a batch workload. +message CreateBatchRequest { + // Required. The parent resource where this batch will be created. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "dataproc.googleapis.com/Batch" + } + ]; + + // Required. The batch to create. + Batch batch = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The ID to use for the batch, which will become the final component of + // the batch's resource name. + // + // This value must be 4-63 characters. Valid characters are `/[a-z][0-9]-/`. + string batch_id = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A unique ID used to identify the request. If the service + // receives two + // [CreateBatchRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.CreateBatchRequest)s + // with the same request_id, the second request is ignored and the + // Operation that corresponds to the first Batch created and stored + // in the backend is returned. + // + // Recommendation: Set this value to a + // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). + // + // The value must contain only letters (a-z, A-Z), numbers (0-9), + // underscores (_), and hyphens (-). The maximum length is 40 characters. + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// A request to get the resource representation for a batch workload. +message GetBatchRequest { + // Required. The name of the batch to retrieve. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataproc.googleapis.com/Batch" + } + ]; +} + +// A request to list batch workloads in a project. +message ListBatchesRequest { + // Required. The parent, which owns this collection of batches. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "dataproc.googleapis.com/Batch" + } + ]; + + // Optional. The maximum number of batches to return in each response. + // The service may return fewer than this value. + // The default page size is 20; the maximum page size is 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A page token received from a previous `ListBatches` call. + // Provide this token to retrieve the subsequent page. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// A list of batch workloads. +message ListBatchesResponse { + // The batches from the specified collection. + repeated Batch batches = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// A request to delete a batch workload. +message DeleteBatchRequest { + // Required. The name of the batch resource to delete. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dataproc.googleapis.com/Batch" + } + ]; +} + +// A representation of a batch workload in the service. +message Batch { + option (google.api.resource) = { + type: "dataproc.googleapis.com/Batch" + pattern: "projects/{project}/locations/{location}/batches/{batch}" + }; + + // Historical state information. + message StateHistory { + // Output only. The state of the batch at this point in history. + State state = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Details about the state at this point in history. + string state_message = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the batch entered the historical state. + google.protobuf.Timestamp state_start_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // The batch state. + enum State { + // The batch state is unknown. + STATE_UNSPECIFIED = 0; + + // The batch is created before running. + PENDING = 1; + + // The batch is running. + RUNNING = 2; + + // The batch is cancelling. + CANCELLING = 3; + + // The batch cancellation was successful. + CANCELLED = 4; + + // The batch completed successfully. + SUCCEEDED = 5; + + // The batch is no longer running due to an error. + FAILED = 6; + } + + // Output only. The resource name of the batch. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A batch UUID (Unique Universal Identifier). The service + // generates this value when it creates the batch. + string uuid = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the batch was created. + google.protobuf.Timestamp create_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The application/framework-specific portion of the batch configuration. + oneof batch_config { + // Optional. PySpark batch config. + PySparkBatch pyspark_batch = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Spark batch config. + SparkBatch spark_batch = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. SparkR batch config. + SparkRBatch spark_r_batch = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. SparkSql batch config. + SparkSqlBatch spark_sql_batch = 7 [(google.api.field_behavior) = OPTIONAL]; + } + + // Output only. Runtime information about batch execution. + RuntimeInfo runtime_info = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The state of the batch. + State state = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Batch state details, such as a failure + // description if the state is `FAILED`. + string state_message = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time when the batch entered a current state. + google.protobuf.Timestamp state_time = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The email address of the user who created the batch. + string creator = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. The labels to associate with this batch. + // Label **keys** must contain 1 to 63 characters, and must conform to + // [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). + // Label **values** may be empty, but, if present, must contain 1 to 63 + // characters, and must conform to [RFC + // 1035](https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be + // associated with a batch. + map labels = 13 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Runtime configuration for the batch execution. + RuntimeConfig runtime_config = 14 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Environment configuration for the batch execution. + EnvironmentConfig environment_config = 15 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. The resource name of the operation associated with this batch. + string operation = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Historical state information for the batch. + repeated StateHistory state_history = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// A configuration for running an +// [Apache +// PySpark](https://spark.apache.org/docs/latest/api/python/getting_started/quickstart.html) +// batch workload. +message PySparkBatch { + // Required. The HCFS URI of the main Python file to use as the Spark driver. Must + // be a .py file. + string main_python_file_uri = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The arguments to pass to the driver. Do not include arguments + // that can be set as batch properties, such as `--conf`, since a collision + // can occur that causes an incorrect batch submission. + repeated string args = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. HCFS file URIs of Python files to pass to the PySpark + // framework. Supported file types: `.py`, `.egg`, and `.zip`. + repeated string python_file_uris = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. HCFS URIs of jar files to add to the classpath of the + // Spark driver and tasks. + repeated string jar_file_uris = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. HCFS URIs of files to be placed in the working directory of + // each executor. + repeated string file_uris = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. HCFS URIs of archives to be extracted into the working directory + // of each executor. Supported file types: + // `.jar`, `.tar`, `.tar.gz`, `.tgz`, and `.zip`. + repeated string archive_uris = 6 [(google.api.field_behavior) = OPTIONAL]; +} + +// A configuration for running an [Apache Spark](http://spark.apache.org/) +// batch workload. +message SparkBatch { + // The specification of the main method to call to drive the Spark + // workload. Specify either the jar file that contains the main class or the + // main class name. To pass both a main jar and a main class in that jar, add + // the jar to `jar_file_uris`, and then specify the main class + // name in `main_class`. + oneof driver { + // Optional. The HCFS URI of the jar file that contains the main class. + string main_jar_file_uri = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The name of the driver main class. The jar file that contains the class + // must be in the classpath or specified in `jar_file_uris`. + string main_class = 2 [(google.api.field_behavior) = OPTIONAL]; + } + + // Optional. The arguments to pass to the driver. Do not include arguments + // that can be set as batch properties, such as `--conf`, since a collision + // can occur that causes an incorrect batch submission. + repeated string args = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. HCFS URIs of jar files to add to the classpath of the + // Spark driver and tasks. + repeated string jar_file_uris = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. HCFS URIs of files to be placed in the working directory of + // each executor. + repeated string file_uris = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. HCFS URIs of archives to be extracted into the working directory + // of each executor. Supported file types: + // `.jar`, `.tar`, `.tar.gz`, `.tgz`, and `.zip`. + repeated string archive_uris = 6 [(google.api.field_behavior) = OPTIONAL]; +} + +// A configuration for running an +// [Apache SparkR](https://spark.apache.org/docs/latest/sparkr.html) +// batch workload. +message SparkRBatch { + // Required. The HCFS URI of the main R file to use as the driver. + // Must be a `.R` or `.r` file. + string main_r_file_uri = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The arguments to pass to the Spark driver. Do not include arguments + // that can be set as batch properties, such as `--conf`, since a collision + // can occur that causes an incorrect batch submission. + repeated string args = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. HCFS URIs of files to be placed in the working directory of + // each executor. + repeated string file_uris = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. HCFS URIs of archives to be extracted into the working directory + // of each executor. Supported file types: + // `.jar`, `.tar`, `.tar.gz`, `.tgz`, and `.zip`. + repeated string archive_uris = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// A configuration for running +// [Apache Spark SQL](http://spark.apache.org/sql/) queries as a batch workload. +message SparkSqlBatch { + // Required. The HCFS URI of the script that contains Spark SQL queries to execute. + string query_file_uri = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. Mapping of query variable names to values (equivalent to the + // Spark SQL command: `SET name="value";`). + map query_variables = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH. + repeated string jar_file_uris = 3 [(google.api.field_behavior) = OPTIONAL]; +} diff --git a/google/cloud/dataproc/v1/clusters.proto b/google/cloud/dataproc/v1/clusters.proto index 147c95b7c..0bb1aaef1 100644 --- a/google/cloud/dataproc/v1/clusters.proto +++ b/google/cloud/dataproc/v1/clusters.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -63,6 +63,8 @@ service ClusterController { // Updates a cluster in a project. The returned // [Operation.metadata][google.longrunning.Operation.metadata] will be // [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata). + // The cluster must be in a [`RUNNING`][google.cloud.dataproc.v1.ClusterStatus.State] state or an error + // is returned. rpc UpdateCluster(UpdateClusterRequest) returns (google.longrunning.Operation) { option (google.api.http) = { patch: "/v1/projects/{project_id}/regions/{region}/clusters/{cluster_name}" @@ -151,7 +153,7 @@ service ClusterController { } // Describes the identifying information, config, and status of -// a cluster of Compute Engine instances. +// a Dataproc cluster message Cluster { // Required. The Google Cloud Platform project ID that the cluster belongs to. string project_id = 1 [(google.api.field_behavior) = REQUIRED]; @@ -160,9 +162,10 @@ message Cluster { // unique. Names of deleted clusters can be reused. string cluster_name = 2 [(google.api.field_behavior) = REQUIRED]; - // Required. The cluster config. Note that Dataproc may set - // default values, and values may change when clusters are updated. - ClusterConfig config = 3 [(google.api.field_behavior) = REQUIRED]; + // Optional. The cluster config for a cluster of Compute Engine Instances. + // Note that Dataproc may set default values, and values may change + // when clusters are updated. + ClusterConfig config = 3 [(google.api.field_behavior) = OPTIONAL]; // Optional. The labels to associate with this cluster. // Label **keys** must contain 1 to 63 characters, and must conform to @@ -199,10 +202,10 @@ message ClusterConfig { // ASIA, or EU) for your cluster's staging bucket according to the // Compute Engine zone where your cluster is deployed, and then create // and manage this project-level, per-location bucket (see - // [Dataproc staging - // bucket](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging-bucket)). - // **This field requires a Cloud Storage bucket name, not a URI to a Cloud - // Storage bucket.** + // [Dataproc staging and temp + // buckets](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging-bucket)). + // **This field requires a Cloud Storage bucket name, not a `gs://...` URI to + // a Cloud Storage bucket.** string config_bucket = 1 [(google.api.field_behavior) = OPTIONAL]; // Optional. A Cloud Storage bucket used to store ephemeral cluster and jobs data, @@ -213,9 +216,11 @@ message ClusterConfig { // Compute Engine zone where your cluster is deployed, and then create // and manage this project-level, per-location bucket. The default bucket has // a TTL of 90 days, but you can use any TTL (or none) if you specify a - // bucket. - // **This field requires a Cloud Storage bucket name, not a URI to a Cloud - // Storage bucket.** + // bucket (see + // [Dataproc staging and temp + // buckets](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging-bucket)). + // **This field requires a Cloud Storage bucket name, not a `gs://...` URI to + // a Cloud Storage bucket.** string temp_bucket = 2 [(google.api.field_behavior) = OPTIONAL]; // Optional. The shared Compute Engine config settings for @@ -223,18 +228,18 @@ message ClusterConfig { GceClusterConfig gce_cluster_config = 8 [(google.api.field_behavior) = OPTIONAL]; // Optional. The Compute Engine config settings for - // the master instance in a cluster. + // the cluster's master instance. InstanceGroupConfig master_config = 9 [(google.api.field_behavior) = OPTIONAL]; // Optional. The Compute Engine config settings for - // worker instances in a cluster. + // the cluster's worker instances. InstanceGroupConfig worker_config = 10 [(google.api.field_behavior) = OPTIONAL]; // Optional. The Compute Engine config settings for - // additional worker instances in a cluster. + // a cluster's secondary worker instances InstanceGroupConfig secondary_worker_config = 12 [(google.api.field_behavior) = OPTIONAL]; - // Optional. The config settings for software inside the cluster. + // Optional. The config settings for cluster software. SoftwareConfig software_config = 13 [(google.api.field_behavior) = OPTIONAL]; // Optional. Commands to execute on each node after config is @@ -453,6 +458,10 @@ message GceClusterConfig { // Optional. Shielded Instance Config for clusters using [Compute Engine Shielded // VMs](https://cloud.google.com/security/shielded-cloud/shielded-vm). ShieldedInstanceConfig shielded_instance_config = 14 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Confidential Instance Config for clusters using [Confidential + // VMs](https://cloud.google.com/compute/confidential-vm/docs). + ConfidentialInstanceConfig confidential_instance_config = 15 [(google.api.field_behavior) = OPTIONAL]; } // Node Group Affinity for clusters using sole-tenant node groups. @@ -483,6 +492,13 @@ message ShieldedInstanceConfig { bool enable_integrity_monitoring = 3 [(google.api.field_behavior) = OPTIONAL]; } +// Confidential Instance Config for clusters using [Confidential +// VMs](https://cloud.google.com/compute/confidential-vm/docs) +message ConfidentialInstanceConfig { + // Optional. Defines whether the instance should have confidential compute enabled. + bool enable_confidential_compute = 1 [(google.api.field_behavior) = OPTIONAL]; +} + // The config settings for Compute Engine resources in // an instance group, such as a master or worker group. message InstanceGroupConfig { @@ -640,6 +656,13 @@ message DiskConfig { // data is spread across them, and the boot disk contains only basic // config and installed binaries. int32 num_local_ssds = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Interface type of local SSDs (default is "scsi"). + // Valid values: "scsi" (Small Computer System Interface), + // "nvme" (Non-Volatile Memory Express). + // See [SSD Interface + // types](https://cloud.google.com/compute/docs/disks/local-ssd#performance). + string local_ssd_interface = 4 [(google.api.field_behavior) = OPTIONAL]; } // Specifies an executable to run on a fully configured node and a @@ -674,6 +697,10 @@ message ClusterStatus { // The cluster encountered an error. It is not ready for use. ERROR = 3; + // The cluster has encountered an error while being updated. Jobs can + // be submitted to the cluster, but the cluster cannot be updated. + ERROR_DUE_TO_UPDATE = 9; + // The cluster is being deleted. It cannot be used. DELETING = 4; @@ -918,7 +945,7 @@ message CreateClusterRequest { // Required. The cluster to create. Cluster cluster = 2 [(google.api.field_behavior) = REQUIRED]; - // Optional. A unique id used to identify the request. If the server receives two + // Optional. A unique ID used to identify the request. If the server receives two // [CreateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.CreateClusterRequest)s // with the same id, then the second request will be ignored and the // first [google.longrunning.Operation][google.longrunning.Operation] created and stored in the backend @@ -927,9 +954,12 @@ message CreateClusterRequest { // It is recommended to always set this value to a // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). // - // The id must contain only letters (a-z, A-Z), numbers (0-9), + // The ID must contain only letters (a-z, A-Z), numbers (0-9), // underscores (_), and hyphens (-). The maximum length is 40 characters. string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Failure action when primary worker creation fails. + FailureAction action_on_failed_primary_workers = 5 [(google.api.field_behavior) = OPTIONAL]; } // A request to update a cluster. @@ -1011,7 +1041,7 @@ message UpdateClusterRequest { //
google.protobuf.FieldMask update_mask = 4 [(google.api.field_behavior) = REQUIRED]; - // Optional. A unique id used to identify the request. If the server + // Optional. A unique ID used to identify the request. If the server // receives two // [UpdateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.UpdateClusterRequest)s // with the same id, then the second request will be ignored and the @@ -1021,7 +1051,7 @@ message UpdateClusterRequest { // It is recommended to always set this value to a // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). // - // The id must contain only letters (a-z, A-Z), numbers (0-9), + // The ID must contain only letters (a-z, A-Z), numbers (0-9), // underscores (_), and hyphens (-). The maximum length is 40 characters. string request_id = 7 [(google.api.field_behavior) = OPTIONAL]; } @@ -1042,7 +1072,7 @@ message StopClusterRequest { // (with error NOT_FOUND) if a cluster with the specified UUID does not exist. string cluster_uuid = 4 [(google.api.field_behavior) = OPTIONAL]; - // Optional. A unique id used to identify the request. If the server + // Optional. A unique ID used to identify the request. If the server // receives two // [StopClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.StopClusterRequest)s // with the same id, then the second request will be ignored and the @@ -1052,7 +1082,7 @@ message StopClusterRequest { // Recommendation: Set this value to a // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). // - // The id must contain only letters (a-z, A-Z), numbers (0-9), + // The ID must contain only letters (a-z, A-Z), numbers (0-9), // underscores (_), and hyphens (-). The maximum length is 40 characters. string request_id = 5 [(google.api.field_behavior) = OPTIONAL]; } @@ -1073,7 +1103,7 @@ message StartClusterRequest { // (with error NOT_FOUND) if a cluster with the specified UUID does not exist. string cluster_uuid = 4 [(google.api.field_behavior) = OPTIONAL]; - // Optional. A unique id used to identify the request. If the server + // Optional. A unique ID used to identify the request. If the server // receives two // [StartClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.StartClusterRequest)s // with the same id, then the second request will be ignored and the @@ -1083,7 +1113,7 @@ message StartClusterRequest { // Recommendation: Set this value to a // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). // - // The id must contain only letters (a-z, A-Z), numbers (0-9), + // The ID must contain only letters (a-z, A-Z), numbers (0-9), // underscores (_), and hyphens (-). The maximum length is 40 characters. string request_id = 5 [(google.api.field_behavior) = OPTIONAL]; } @@ -1104,7 +1134,7 @@ message DeleteClusterRequest { // (with error NOT_FOUND) if cluster with specified UUID does not exist. string cluster_uuid = 4 [(google.api.field_behavior) = OPTIONAL]; - // Optional. A unique id used to identify the request. If the server + // Optional. A unique ID used to identify the request. If the server // receives two // [DeleteClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.DeleteClusterRequest)s // with the same id, then the second request will be ignored and the @@ -1114,7 +1144,7 @@ message DeleteClusterRequest { // It is recommended to always set this value to a // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). // - // The id must contain only letters (a-z, A-Z), numbers (0-9), + // The ID must contain only letters (a-z, A-Z), numbers (0-9), // underscores (_), and hyphens (-). The maximum length is 40 characters. string request_id = 5 [(google.api.field_behavior) = OPTIONAL]; } diff --git a/google/cloud/dataproc/v1/dataproc_v1.yaml b/google/cloud/dataproc/v1/dataproc_v1.yaml index fa01e726d..b47627018 100644 --- a/google/cloud/dataproc/v1/dataproc_v1.yaml +++ b/google/cloud/dataproc/v1/dataproc_v1.yaml @@ -5,11 +5,13 @@ title: Cloud Dataproc API apis: - name: google.cloud.dataproc.v1.AutoscalingPolicyService +- name: google.cloud.dataproc.v1.BatchController - name: google.cloud.dataproc.v1.ClusterController - name: google.cloud.dataproc.v1.JobController - name: google.cloud.dataproc.v1.WorkflowTemplateService types: +- name: google.cloud.dataproc.v1.BatchOperationMetadata - name: google.cloud.dataproc.v1.ClusterOperationMetadata - name: google.cloud.dataproc.v1.DiagnoseClusterResults - name: google.cloud.dataproc.v1.JobMetadata @@ -106,6 +108,10 @@ authentication: oauth: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform + - selector: 'google.cloud.dataproc.v1.BatchController.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform - selector: 'google.cloud.dataproc.v1.ClusterController.*' oauth: canonical_scopes: |- diff --git a/google/cloud/dataproc/v1/jobs.proto b/google/cloud/dataproc/v1/jobs.proto index f3521b5db..823a12cf8 100644 --- a/google/cloud/dataproc/v1/jobs.proto +++ b/google/cloud/dataproc/v1/jobs.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -32,8 +32,7 @@ option java_package = "com.google.cloud.dataproc.v1"; // The JobController provides methods to manage jobs. service JobController { option (google.api.default_host) = "dataproc.googleapis.com"; - option (google.api.oauth_scopes) = - "https://www.googleapis.com/auth/cloud-platform"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; // Submits a job to a cluster. rpc SubmitJob(SubmitJobRequest) returns (Job) { @@ -45,8 +44,7 @@ service JobController { } // Submits job to a cluster. - rpc SubmitJobAsOperation(SubmitJobRequest) - returns (google.longrunning.Operation) { + rpc SubmitJobAsOperation(SubmitJobRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1/projects/{project_id}/regions/{region}/jobs:submitAsOperation" body: "*" @@ -109,7 +107,7 @@ service JobController { // The runtime logging config of the job. message LoggingConfig { // The Log4j level for job execution. When running an - // [Apache Hive](http://hive.apache.org/) job, Cloud + // [Apache Hive](https://hive.apache.org/) job, Cloud // Dataproc configures the Hive client to an equivalent verbosity level. enum Level { // Level is unspecified. Use default level for log4j. @@ -325,8 +323,7 @@ message HiveJob { // Optional. Mapping of query variable names to values (equivalent to the // Hive command: `SET name="value";`). - map script_variables = 4 - [(google.api.field_behavior) = OPTIONAL]; + map script_variables = 4 [(google.api.field_behavior) = OPTIONAL]; // Optional. A mapping of property names and values, used to configure Hive. // Properties that conflict with values set by the Dataproc API may be @@ -355,8 +352,7 @@ message SparkSqlJob { // Optional. Mapping of query variable names to values (equivalent to the // Spark SQL command: SET `name="value";`). - map script_variables = 3 - [(google.api.field_behavior) = OPTIONAL]; + map script_variables = 3 [(google.api.field_behavior) = OPTIONAL]; // Optional. A mapping of property names to values, used to configure // Spark SQL's SparkConf. Properties that conflict with values set by the @@ -390,8 +386,7 @@ message PigJob { // Optional. Mapping of query variable names to values (equivalent to the Pig // command: `name=[value]`). - map script_variables = 4 - [(google.api.field_behavior) = OPTIONAL]; + map script_variables = 4 [(google.api.field_behavior) = OPTIONAL]; // Optional. A mapping of property names to values, used to configure Pig. // Properties that conflict with values set by the Dataproc API may be @@ -485,10 +480,8 @@ message JobPlacement { // the job is submitted. string cluster_uuid = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Optional. Cluster labels to identify a cluster where the job will be - // submitted. - map cluster_labels = 3 - [(google.api.field_behavior) = OPTIONAL]; + // Optional. Cluster labels to identify a cluster where the job will be submitted. + map cluster_labels = 3 [(google.api.field_behavior) = OPTIONAL]; } // Dataproc job status. @@ -567,8 +560,7 @@ message JobStatus { ]; // Output only. The time when this state was entered. - google.protobuf.Timestamp state_start_time = 6 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp state_start_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Additional state information, which includes // status reported by the agent. @@ -577,8 +569,8 @@ message JobStatus { // Encapsulates the full scoping used to reference a job. message JobReference { - // Optional. The ID of the Google Cloud Platform project that the job belongs - // to. If specified, must match the request project ID. + // Optional. The ID of the Google Cloud Platform project that the job belongs to. If + // specified, must match the request project ID. string project_id = 1 [(google.api.field_behavior) = OPTIONAL]; // Optional. The job ID, which must be unique within the project. @@ -688,26 +680,22 @@ message Job { JobStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The previous job status. - repeated JobStatus status_history = 13 - [(google.api.field_behavior) = OUTPUT_ONLY]; + repeated JobStatus status_history = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The collection of YARN applications spun up by this job. // // **Beta** Feature: This report is available for testing purposes only. It // may be changed before final release. - repeated YarnApplication yarn_applications = 9 - [(google.api.field_behavior) = OUTPUT_ONLY]; + repeated YarnApplication yarn_applications = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. A URI pointing to the location of the stdout of the job's // driver program. - string driver_output_resource_uri = 17 - [(google.api.field_behavior) = OUTPUT_ONLY]; + string driver_output_resource_uri = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. If present, the location of miscellaneous control files // which may be used as part of job setup and handling. If not present, // control files may be placed in the same location as `driver_output_uri`. - string driver_control_files_uri = 15 - [(google.api.field_behavior) = OUTPUT_ONLY]; + string driver_control_files_uri = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. The labels to associate with this job. // Label **keys** must contain 1 to 63 characters, and must conform to @@ -726,8 +714,8 @@ message Job { // may be reused over time. string job_uuid = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. Indicates whether the job is completed. If the value is - // `false`, the job is still in progress. If `true`, the job is completed, and + // Output only. Indicates whether the job is completed. If the value is `false`, + // the job is still in progress. If `true`, the job is completed, and // `status.state` field will indicate if it was successful, failed, // or cancelled. bool done = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -743,11 +731,23 @@ message JobScheduling { // 4 times within 10 minute window. // // Maximum value is 10. + // + // **Note:** Currently, this restartable job option is + // not supported in Dataproc + // [workflow + // template](https://cloud.google.com/dataproc/docs/concepts/workflows/using-workflows#adding_jobs_to_a_template) + // jobs. int32 max_failures_per_hour = 1 [(google.api.field_behavior) = OPTIONAL]; - // Optional. Maximum number of times in total a driver may be restarted as a - // result of driver exiting with non-zero code before job is reported failed. + // Optional. Maximum number of times in total a driver may be restarted as a result of + // driver exiting with non-zero code before job is reported failed. // Maximum value is 240. + // + // **Note:** Currently, this restartable job option is + // not supported in Dataproc + // [workflow + // template](https://cloud.google.com/dataproc/docs/concepts/workflows/using-workflows#adding_jobs_to_a_template) + // jobs. int32 max_failures_total = 2 [(google.api.field_behavior) = OPTIONAL]; } @@ -790,8 +790,7 @@ message JobMetadata { string operation_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Job submission time. - google.protobuf.Timestamp start_time = 4 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp start_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; } // A request to get the resource representation for a job in a project. @@ -844,8 +843,7 @@ message ListJobsRequest { // (default = match ALL jobs). // // If `filter` is provided, `jobStateMatcher` will be ignored. - JobStateMatcher job_state_matcher = 5 - [(google.api.field_behavior) = OPTIONAL]; + JobStateMatcher job_state_matcher = 5 [(google.api.field_behavior) = OPTIONAL]; // Optional. A filter constraining the jobs to list. Filters are // case-sensitive and have the following syntax: @@ -885,8 +883,7 @@ message UpdateJobRequest { // labels, and the `PATCH` request body would specify the new // value. Note: Currently, labels is the only // field that can be updated. - google.protobuf.FieldMask update_mask = 5 - [(google.api.field_behavior) = REQUIRED]; + google.protobuf.FieldMask update_mask = 5 [(google.api.field_behavior) = REQUIRED]; } // A list of jobs in a project. diff --git a/google/cloud/dataproc/v1/operations.proto b/google/cloud/dataproc/v1/operations.proto index 724d2a895..e12bd299a 100644 --- a/google/cloud/dataproc/v1/operations.proto +++ b/google/cloud/dataproc/v1/operations.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -18,13 +18,48 @@ package google.cloud.dataproc.v1; import "google/api/field_behavior.proto"; import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; option go_package = "google.golang.org/genproto/googleapis/cloud/dataproc/v1;dataproc"; option java_multiple_files = true; option java_outer_classname = "OperationsProto"; option java_package = "com.google.cloud.dataproc.v1"; +// Metadata describing the Batch operation. +message BatchOperationMetadata { + // Operation type for Batch resources + enum BatchOperationType { + // Batch operation type is unknown. + BATCH_OPERATION_TYPE_UNSPECIFIED = 0; + + // Batch operation type. + BATCH = 1; + } + + // Name of the batch for the operation. + string batch = 1; + + // Batch UUID for the operation. + string batch_uuid = 2; + + // The time when the operation was created. + google.protobuf.Timestamp create_time = 3; + + // The time when the operation finished. + google.protobuf.Timestamp done_time = 4; + + // The operation type. + BatchOperationType operation_type = 6; + + // Short description of the operation. + string description = 7; + + // Labels associated with the operation. + map labels = 8; + + // Warnings encountered during operation execution. + repeated string warnings = 9; +} + // The status of the operation. message ClusterOperationStatus { // The operation state. diff --git a/google/cloud/dataproc/v1/shared.proto b/google/cloud/dataproc/v1/shared.proto index 176e4535c..f574fe01b 100644 --- a/google/cloud/dataproc/v1/shared.proto +++ b/google/cloud/dataproc/v1/shared.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -16,7 +16,6 @@ syntax = "proto3"; package google.cloud.dataproc.v1; -import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; option go_package = "google.golang.org/genproto/googleapis/cloud/dataproc/v1;dataproc"; @@ -24,8 +23,92 @@ option java_multiple_files = true; option java_outer_classname = "SharedProto"; option java_package = "com.google.cloud.dataproc.v1"; +// Runtime configuration for a workload. +message RuntimeConfig { + // Optional. Version of the batch runtime. + string version = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Optional custom container image for the job runtime environment. If + // not specified, a default container image will be used. + string container_image = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A mapping of property names to values, which are used to configure workload + // execution. + map properties = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Environment configuration for a workload. +message EnvironmentConfig { + // Optional. Execution configuration for a workload. + ExecutionConfig execution_config = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Peripherals configuration that workload has access to. + PeripheralsConfig peripherals_config = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Execution configuration for a workload. +message ExecutionConfig { + // Optional. Service account that used to execute workload. + string service_account = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Network configuration for workload execution. + oneof network { + // Optional. Network URI to connect workload to. + string network_uri = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Subnetwork URI to connect workload to. + string subnetwork_uri = 5 [(google.api.field_behavior) = OPTIONAL]; + } + + // Optional. Tags used for network traffic control. + repeated string network_tags = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. The Cloud KMS key to use for encryption. + string kms_key = 7 [(google.api.field_behavior) = OPTIONAL]; +} + +// Spark History Server configuration for the workload. +message SparkHistoryServerConfig { + // Optional. Resource name of an existing Dataproc Cluster to act as a Spark History + // Server for the workload. + // + // Example: + // + // * `projects/[project_id]/regions/[region]/clusters/[cluster_name]` + string dataproc_cluster = 1 [ + (google.api.field_behavior) = OPTIONAL + ]; +} + +// Auxiliary services configuration for a workload. +message PeripheralsConfig { + // Optional. Resource name of an existing Dataproc Metastore service. + // + // Example: + // + // * `projects/[project_id]/locations/[region]/services/[service_id]` + string metastore_service = 1 [ + (google.api.field_behavior) = OPTIONAL + ]; + + // Optional. The Spark History Server configuration for the workload. + SparkHistoryServerConfig spark_history_server_config = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Runtime information about workload execution. +message RuntimeInfo { + // Output only. Map of remote access endpoints (such as web interfaces and APIs) to their + // URIs. + map endpoints = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A URI pointing to the location of the stdout and stderr of the workload. + string output_uri = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. A URI pointing to the location of the diagnostics tarball. + string diagnostic_output_uri = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + // Cluster components that can be activated. -// Next ID: 16. enum Component { // Unspecified component. Specifying this will cause Cluster creation to fail. COMPONENT_UNSPECIFIED = 0; @@ -70,3 +153,16 @@ enum Component { // The Zookeeper service. ZOOKEEPER = 8; } + +// Actions in response to failure of a resource associated with a cluster. +enum FailureAction { + // When FailureAction is unspecified, failure action defaults to NO_ACTION. + FAILURE_ACTION_UNSPECIFIED = 0; + + // Take no action on failure to create a cluster resource. NO_ACTION is the + // default. + NO_ACTION = 1; + + // Delete the failed cluster resource. + DELETE = 2; +} diff --git a/google/cloud/dataproc/v1/workflow_templates.proto b/google/cloud/dataproc/v1/workflow_templates.proto index ea5bfd05e..416ba26d0 100644 --- a/google/cloud/dataproc/v1/workflow_templates.proto +++ b/google/cloud/dataproc/v1/workflow_templates.proto @@ -1,4 +1,4 @@ -// Copyright 2020 Google LLC +// Copyright 2021 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -36,12 +36,10 @@ option java_package = "com.google.cloud.dataproc.v1"; // Dataproc API. service WorkflowTemplateService { option (google.api.default_host) = "dataproc.googleapis.com"; - option (google.api.oauth_scopes) = - "https://www.googleapis.com/auth/cloud-platform"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; // Creates new workflow template. - rpc CreateWorkflowTemplate(CreateWorkflowTemplateRequest) - returns (WorkflowTemplate) { + rpc CreateWorkflowTemplate(CreateWorkflowTemplateRequest) returns (WorkflowTemplate) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*}/workflowTemplates" body: "template" @@ -57,8 +55,7 @@ service WorkflowTemplateService { // // Can retrieve previously instantiated template by specifying optional // version parameter. - rpc GetWorkflowTemplate(GetWorkflowTemplateRequest) - returns (WorkflowTemplate) { + rpc GetWorkflowTemplate(GetWorkflowTemplateRequest) returns (WorkflowTemplate) { option (google.api.http) = { get: "/v1/{name=projects/*/locations/*/workflowTemplates/*}" additional_bindings { @@ -88,8 +85,7 @@ service WorkflowTemplateService { // On successful completion, // [Operation.response][google.longrunning.Operation.response] will be // [Empty][google.protobuf.Empty]. - rpc InstantiateWorkflowTemplate(InstantiateWorkflowTemplateRequest) - returns (google.longrunning.Operation) { + rpc InstantiateWorkflowTemplate(InstantiateWorkflowTemplateRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1/{name=projects/*/locations/*/workflowTemplates/*}:instantiate" body: "*" @@ -109,8 +105,7 @@ service WorkflowTemplateService { // Instantiates a template and begins execution. // // This method is equivalent to executing the sequence - // [CreateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.CreateWorkflowTemplate], - // [InstantiateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.InstantiateWorkflowTemplate], + // [CreateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.CreateWorkflowTemplate], [InstantiateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.InstantiateWorkflowTemplate], // [DeleteWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.DeleteWorkflowTemplate]. // // The returned Operation can be used to track execution of @@ -131,9 +126,7 @@ service WorkflowTemplateService { // On successful completion, // [Operation.response][google.longrunning.Operation.response] will be // [Empty][google.protobuf.Empty]. - rpc InstantiateInlineWorkflowTemplate( - InstantiateInlineWorkflowTemplateRequest) - returns (google.longrunning.Operation) { + rpc InstantiateInlineWorkflowTemplate(InstantiateInlineWorkflowTemplateRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v1/{parent=projects/*/locations/*}/workflowTemplates:instantiateInline" body: "template" @@ -151,8 +144,7 @@ service WorkflowTemplateService { // Updates (replaces) workflow template. The updated template // must contain version that matches the current server version. - rpc UpdateWorkflowTemplate(UpdateWorkflowTemplateRequest) - returns (WorkflowTemplate) { + rpc UpdateWorkflowTemplate(UpdateWorkflowTemplateRequest) returns (WorkflowTemplate) { option (google.api.http) = { put: "/v1/{template.name=projects/*/locations/*/workflowTemplates/*}" body: "template" @@ -165,8 +157,7 @@ service WorkflowTemplateService { } // Lists workflows that match the specified filter in the request. - rpc ListWorkflowTemplates(ListWorkflowTemplatesRequest) - returns (ListWorkflowTemplatesResponse) { + rpc ListWorkflowTemplates(ListWorkflowTemplatesRequest) returns (ListWorkflowTemplatesResponse) { option (google.api.http) = { get: "/v1/{parent=projects/*/locations/*}/workflowTemplates" additional_bindings { @@ -177,8 +168,7 @@ service WorkflowTemplateService { } // Deletes a workflow template. It does not cancel in-progress workflows. - rpc DeleteWorkflowTemplate(DeleteWorkflowTemplateRequest) - returns (google.protobuf.Empty) { + rpc DeleteWorkflowTemplate(DeleteWorkflowTemplateRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v1/{name=projects/*/locations/*/workflowTemplates/*}" additional_bindings { @@ -224,12 +214,10 @@ message WorkflowTemplate { int32 version = 3 [(google.api.field_behavior) = OPTIONAL]; // Output only. The time template was created. - google.protobuf.Timestamp create_time = 4 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp create_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The time template was last updated. - google.protobuf.Timestamp update_time = 5 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; // Optional. The labels to associate with this template. These labels // will be propagated to all jobs and clusters created by the workflow @@ -246,8 +234,7 @@ message WorkflowTemplate { map labels = 6 [(google.api.field_behavior) = OPTIONAL]; // Required. WorkflowTemplate scheduling information. - WorkflowTemplatePlacement placement = 7 - [(google.api.field_behavior) = REQUIRED]; + WorkflowTemplatePlacement placement = 7 [(google.api.field_behavior) = REQUIRED]; // Required. The Directed Acyclic Graph of Jobs to submit. repeated OrderedJob jobs = 8 [(google.api.field_behavior) = REQUIRED]; @@ -255,8 +242,7 @@ message WorkflowTemplate { // Optional. Template parameters whose values are substituted into the // template. Values for parameters must be provided when the template is // instantiated. - repeated TemplateParameter parameters = 9 - [(google.api.field_behavior) = OPTIONAL]; + repeated TemplateParameter parameters = 9 [(google.api.field_behavior) = OPTIONAL]; // Optional. Timeout duration for the DAG of jobs, expressed in seconds (see // [JSON representation of @@ -268,8 +254,7 @@ message WorkflowTemplate { // [managed // cluster](/dataproc/docs/concepts/workflows/using-workflows#configuring_or_selecting_a_cluster), // the cluster is deleted. - google.protobuf.Duration dag_timeout = 10 - [(google.api.field_behavior) = OPTIONAL]; + google.protobuf.Duration dag_timeout = 10 [(google.api.field_behavior) = OPTIONAL]; } // Specifies workflow execution target. @@ -327,8 +312,7 @@ message ClusterSelector { // Required. The cluster labels. Cluster must have all labels // to match. - map cluster_labels = 2 - [(google.api.field_behavior) = REQUIRED]; + map cluster_labels = 2 [(google.api.field_behavior) = REQUIRED]; } // A job executed by the workflow. @@ -338,8 +322,8 @@ message OrderedJob { // // The step id is used as prefix for job id, as job // `goog-dataproc-workflow-step-id` label, and in - // [prerequisiteStepIds][google.cloud.dataproc.v1.OrderedJob.prerequisite_step_ids] - // field from other steps. + // [prerequisiteStepIds][google.cloud.dataproc.v1.OrderedJob.prerequisite_step_ids] field from other + // steps. // // The id must contain only letters (a-z, A-Z), numbers (0-9), // underscores (_), and hyphens (-). Cannot begin or end with underscore @@ -390,8 +374,7 @@ message OrderedJob { // Optional. The optional list of prerequisite job step_ids. // If not specified, the job will start at the beginning of workflow. - repeated string prerequisite_step_ids = 10 - [(google.api.field_behavior) = OPTIONAL]; + repeated string prerequisite_step_ids = 10 [(google.api.field_behavior) = OPTIONAL]; } // A configurable parameter that replaces one or more fields in the template. @@ -417,10 +400,10 @@ message TemplateParameter { // A field is allowed to appear in at most one parameter's list of field // paths. // - // A field path is similar in syntax to a - // [google.protobuf.FieldMask][google.protobuf.FieldMask]. For example, a - // field path that references the zone field of a workflow template's cluster - // selector would be specified as `placement.clusterSelector.zone`. + // A field path is similar in syntax to a [google.protobuf.FieldMask][google.protobuf.FieldMask]. + // For example, a field path that references the zone field of a workflow + // template's cluster selector would be specified as + // `placement.clusterSelector.zone`. // // Also, field paths can reference fields using the following syntax: // @@ -527,15 +510,13 @@ message WorkflowMetadata { int32 version = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The create cluster operation metadata. - ClusterOperation create_cluster = 3 - [(google.api.field_behavior) = OUTPUT_ONLY]; + ClusterOperation create_cluster = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The workflow graph. WorkflowGraph graph = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The delete cluster operation metadata. - ClusterOperation delete_cluster = 5 - [(google.api.field_behavior) = OUTPUT_ONLY]; + ClusterOperation delete_cluster = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The workflow state. State state = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -547,33 +528,25 @@ message WorkflowMetadata { map parameters = 8; // Output only. Workflow start time. - google.protobuf.Timestamp start_time = 9 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp start_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Workflow end time. - google.protobuf.Timestamp end_time = 10 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Timestamp end_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The UUID of target cluster. string cluster_uuid = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Output only. The timeout duration for the DAG of jobs, expressed in seconds - // (see [JSON representation of + // Output only. The timeout duration for the DAG of jobs, expressed in seconds (see + // [JSON representation of // duration](https://developers.google.com/protocol-buffers/docs/proto3#json)). - google.protobuf.Duration dag_timeout = 12 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. DAG start time, only set for workflows with - // [dag_timeout][google.cloud.dataproc.v1.WorkflowMetadata.dag_timeout] when - // DAG begins. - google.protobuf.Timestamp dag_start_time = 13 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. DAG end time, only set for workflows with - // [dag_timeout][google.cloud.dataproc.v1.WorkflowMetadata.dag_timeout] when - // DAG ends. - google.protobuf.Timestamp dag_end_time = 14 - [(google.api.field_behavior) = OUTPUT_ONLY]; + google.protobuf.Duration dag_timeout = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. DAG start time, only set for workflows with [dag_timeout][google.cloud.dataproc.v1.WorkflowMetadata.dag_timeout] when DAG + // begins. + google.protobuf.Timestamp dag_start_time = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. DAG end time, only set for workflows with [dag_timeout][google.cloud.dataproc.v1.WorkflowMetadata.dag_timeout] when DAG ends. + google.protobuf.Timestamp dag_end_time = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; } // The cluster operation triggered by a workflow. @@ -622,8 +595,7 @@ message WorkflowNode { string step_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. Node's prerequisite nodes. - repeated string prerequisite_step_ids = 2 - [(google.api.field_behavior) = OUTPUT_ONLY]; + repeated string prerequisite_step_ids = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. The job id; populated after the node enters RUNNING state. string job_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; @@ -640,7 +612,7 @@ message CreateWorkflowTemplateRequest { // Required. The resource name of the region or location, as described // in https://cloud.google.com/apis/design/resource_names. // - // * For `projects.regions.workflowTemplates,create`, the resource name of the + // * For `projects.regions.workflowTemplates.create`, the resource name of the // region has the following format: // `projects/{project_id}/regions/{region}` // @@ -799,8 +771,7 @@ message ListWorkflowTemplatesRequest { // A response to a request to list workflow templates in a project. message ListWorkflowTemplatesResponse { // Output only. WorkflowTemplates list. - repeated WorkflowTemplate templates = 1 - [(google.api.field_behavior) = OUTPUT_ONLY]; + repeated WorkflowTemplate templates = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; // Output only. This token is included in the response if there are more // results to fetch. To fetch additional results, provide this value as the diff --git a/google/cloud/dataproc/v1beta2/BUILD.bazel b/google/cloud/dataproc/v1beta2/BUILD.bazel deleted file mode 100644 index 75f0f7d4c..000000000 --- a/google/cloud/dataproc/v1beta2/BUILD.bazel +++ /dev/null @@ -1,349 +0,0 @@ -# This file was automatically generated by BuildFileGenerator - -# This is an API workspace, having public visibility by default makes perfect sense. -package(default_visibility = ["//visibility:public"]) - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") -load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") - -proto_library( - name = "dataproc_proto", - srcs = [ - "autoscaling_policies.proto", - "clusters.proto", - "jobs.proto", - "operations.proto", - "shared.proto", - "workflow_templates.proto", - ], - deps = [ - "//google/api:annotations_proto", - "//google/api:client_proto", - "//google/api:field_behavior_proto", - "//google/api:resource_proto", - "//google/longrunning:operations_proto", - "@com_google_protobuf//:duration_proto", - "@com_google_protobuf//:empty_proto", - "@com_google_protobuf//:field_mask_proto", - "@com_google_protobuf//:timestamp_proto", - ], -) - -proto_library_with_info( - name = "dataproc_proto_with_info", - deps = [ - ":dataproc_proto", - "//google/cloud:common_resources_proto", - ], -) - -############################################################################## -# Java -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "java_gapic_assembly_gradle_pkg", - "java_gapic_library", - "java_gapic_test", - "java_grpc_library", - "java_proto_library", -) - -java_proto_library( - name = "dataproc_java_proto", - deps = [":dataproc_proto"], -) - -java_grpc_library( - name = "dataproc_java_grpc", - srcs = [":dataproc_proto"], - deps = [":dataproc_java_proto"], -) - -java_gapic_library( - name = "dataproc_java_gapic", - srcs = [":dataproc_proto_with_info"], - gapic_yaml = "dataproc_gapic.yaml", - grpc_service_config = "dataproc_grpc_service_config.json", - test_deps = [ - ":dataproc_java_grpc", - ], - deps = [ - ":dataproc_java_proto", - ], -) - -java_gapic_test( - name = "dataproc_java_gapic_test_suite", - test_classes = [ - "com.google.cloud.dataproc.v1beta2.AutoscalingPolicyServiceClientTest", - "com.google.cloud.dataproc.v1beta2.ClusterControllerClientTest", - "com.google.cloud.dataproc.v1beta2.JobControllerClientTest", - "com.google.cloud.dataproc.v1beta2.WorkflowTemplateServiceClientTest", - ], - runtime_deps = [":dataproc_java_gapic_test"], -) - -# Open Source Packages -java_gapic_assembly_gradle_pkg( - name = "google-cloud-dataproc-v1beta2-java", - deps = [ - ":dataproc_java_gapic", - ":dataproc_java_grpc", - ":dataproc_java_proto", - ":dataproc_proto", - ], -) - -############################################################################## -# Go -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "go_gapic_assembly_pkg", - "go_gapic_library", - "go_proto_library", - "go_test", -) - -go_proto_library( - name = "dataproc_go_proto", - compilers = ["@io_bazel_rules_go//proto:go_grpc"], - importpath = "google.golang.org/genproto/googleapis/cloud/dataproc/v1beta2", - protos = [":dataproc_proto"], - deps = [ - "//google/api:annotations_go_proto", - "//google/longrunning:longrunning_go_proto", - ], -) - -go_gapic_library( - name = "dataproc_go_gapic", - srcs = [":dataproc_proto_with_info"], - grpc_service_config = "dataproc_grpc_service_config.json", - importpath = "cloud.google.com/go/dataproc/apiv1beta2;dataproc", - service_yaml = "dataproc_v1beta2.yaml", - deps = [ - ":dataproc_go_proto", - "//google/longrunning:longrunning_go_proto", - "@com_google_cloud_go//longrunning:go_default_library", - "@com_google_cloud_go//longrunning/autogen:go_default_library", - "@io_bazel_rules_go//proto/wkt:duration_go_proto", - ], -) - -go_test( - name = "dataproc_go_gapic_test", - srcs = [":dataproc_go_gapic_srcjar_test"], - embed = [":dataproc_go_gapic"], - importpath = "cloud.google.com/go/dataproc/apiv1beta2", -) - -# Open Source Packages -go_gapic_assembly_pkg( - name = "gapi-cloud-dataproc-v1beta2-go", - deps = [ - ":dataproc_go_gapic", - ":dataproc_go_gapic_srcjar-test.srcjar", - ":dataproc_go_proto", - ], -) - -############################################################################## -# Python -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "py_gapic_assembly_pkg", - "py_gapic_library", -) - -py_gapic_library( - name = "dataproc_py_gapic", - srcs = [":dataproc_proto"], - grpc_service_config = "dataproc_grpc_service_config.json", -) - -py_gapic_assembly_pkg( - name = "dataproc-v1beta2-py", - deps = [ - ":dataproc_py_gapic", - ], -) - -############################################################################## -# PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", -) - -php_proto_library( - name = "dataproc_php_proto", - deps = [":dataproc_proto"], -) - -php_grpc_library( - name = "dataproc_php_grpc", - srcs = [":dataproc_proto"], - deps = [":dataproc_php_proto"], -) - -php_gapic_library( - name = "dataproc_php_gapic", - srcs = [":dataproc_proto_with_info"], - gapic_yaml = "dataproc_gapic.yaml", - grpc_service_config = "dataproc_grpc_service_config.json", - service_yaml = "dataproc_v1beta2.yaml", - deps = [ - ":dataproc_php_grpc", - ":dataproc_php_proto", - ], -) - -# Open Source Packages -php_gapic_assembly_pkg( - name = "google-cloud-dataproc-v1beta2-php", - deps = [ - ":dataproc_php_gapic", - ":dataproc_php_grpc", - ":dataproc_php_proto", - ], -) - -############################################################################## -# Node.js -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "nodejs_gapic_assembly_pkg", - "nodejs_gapic_library", -) - -nodejs_gapic_library( - name = "dataproc_nodejs_gapic", - package_name = "@google-cloud/dataproc", - src = ":dataproc_proto_with_info", - extra_protoc_parameters = ["metadata"], - grpc_service_config = "dataproc_grpc_service_config.json", - main_service = "dataproc", - package = "google.cloud.dataproc.v1beta2", - service_yaml = "dataproc_v1beta2.yaml", - deps = [], -) - -nodejs_gapic_assembly_pkg( - name = "dataproc-v1beta2-nodejs", - deps = [ - ":dataproc_nodejs_gapic", - ":dataproc_proto", - ], -) - -############################################################################## -# Ruby -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "ruby_cloud_gapic_library", - "ruby_gapic_assembly_pkg", - "ruby_grpc_library", - "ruby_proto_library", -) - -ruby_proto_library( - name = "dataproc_ruby_proto", - deps = [":dataproc_proto"], -) - -ruby_grpc_library( - name = "dataproc_ruby_grpc", - srcs = [":dataproc_proto"], - deps = [":dataproc_ruby_proto"], -) - -ruby_cloud_gapic_library( - name = "dataproc_ruby_gapic", - srcs = [":dataproc_proto_with_info"], - extra_protoc_parameters = [ - "ruby-cloud-gem-name=google-cloud-dataproc-v1beta2", - "ruby-cloud-env-prefix=DATAPROC", - "ruby-cloud-product-url=https://cloud.google.com/dataproc", - "ruby-cloud-api-id=dataproc.googleapis.com", - "ruby-cloud-api-shortname=dataproc", - ], - grpc_service_config = "dataproc_grpc_service_config.json", - ruby_cloud_description = "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", - ruby_cloud_title = "Cloud Dataproc V1beta2", - deps = [ - ":dataproc_ruby_grpc", - ":dataproc_ruby_proto", - ], -) - -# Open Source Packages -ruby_gapic_assembly_pkg( - name = "google-cloud-dataproc-v1beta2-ruby", - deps = [ - ":dataproc_ruby_gapic", - ":dataproc_ruby_grpc", - ":dataproc_ruby_proto", - ], -) - -############################################################################## -# C# -############################################################################## -load( - "@com_google_googleapis_imports//:imports.bzl", - "csharp_gapic_assembly_pkg", - "csharp_gapic_library", - "csharp_grpc_library", - "csharp_proto_library", -) - -csharp_proto_library( - name = "dataproc_csharp_proto", - deps = [":dataproc_proto"], -) - -csharp_grpc_library( - name = "dataproc_csharp_grpc", - srcs = [":dataproc_proto"], - deps = [":dataproc_csharp_proto"], -) - -# Invalid resource-reference, cannot build. -# csharp_gapic_library( -# name = "dataproc_csharp_gapic", -# srcs = [":dataproc_proto_with_info"], -# grpc_service_config = "dataproc_grpc_service_config.json", -# common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", -# deps = [ -# ":dataproc_csharp_grpc", -# ":dataproc_csharp_proto", -# ], -# ) - -# # Open Source Packages -# csharp_gapic_assembly_pkg( -# name = "google-cloud-dataproc-v1beta2-csharp", -# deps = [ -# ":dataproc_csharp_gapic", -# ":dataproc_csharp_grpc", -# ":dataproc_csharp_proto", -# ], -# ) - -############################################################################## -# C++ -############################################################################## -# Put your C++ rules here diff --git a/google/cloud/dataproc/v1beta2/autoscaling_policies.proto b/google/cloud/dataproc/v1beta2/autoscaling_policies.proto deleted file mode 100644 index 7601cca84..000000000 --- a/google/cloud/dataproc/v1beta2/autoscaling_policies.proto +++ /dev/null @@ -1,369 +0,0 @@ -// Copyright 2020 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.cloud.dataproc.v1beta2; - -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/duration.proto"; -import "google/protobuf/empty.proto"; - -option go_package = "google.golang.org/genproto/googleapis/cloud/dataproc/v1beta2;dataproc"; -option java_multiple_files = true; -option java_outer_classname = "AutoscalingPoliciesProto"; -option java_package = "com.google.cloud.dataproc.v1beta2"; -option (google.api.resource_definition) = { - type: "dataproc.googleapis.com/Region" - pattern: "projects/{project}/regions/{region}" -}; - -// The API interface for managing autoscaling policies in the -// Cloud Dataproc API. -service AutoscalingPolicyService { - option (google.api.default_host) = "dataproc.googleapis.com"; - option (google.api.oauth_scopes) = - "https://www.googleapis.com/auth/cloud-platform"; - - // Creates new autoscaling policy. - rpc CreateAutoscalingPolicy(CreateAutoscalingPolicyRequest) - returns (AutoscalingPolicy) { - option (google.api.http) = { - post: "/v1beta2/{parent=projects/*/locations/*}/autoscalingPolicies" - body: "policy" - additional_bindings { - post: "/v1beta2/{parent=projects/*/regions/*}/autoscalingPolicies" - body: "policy" - } - }; - option (google.api.method_signature) = "parent,policy"; - } - - // Updates (replaces) autoscaling policy. - // - // Disabled check for update_mask, because all updates will be full - // replacements. - rpc UpdateAutoscalingPolicy(UpdateAutoscalingPolicyRequest) - returns (AutoscalingPolicy) { - option (google.api.http) = { - put: "/v1beta2/{policy.name=projects/*/locations/*/autoscalingPolicies/*}" - body: "policy" - additional_bindings { - put: "/v1beta2/{policy.name=projects/*/regions/*/autoscalingPolicies/*}" - body: "policy" - } - }; - option (google.api.method_signature) = "policy"; - } - - // Retrieves autoscaling policy. - rpc GetAutoscalingPolicy(GetAutoscalingPolicyRequest) - returns (AutoscalingPolicy) { - option (google.api.http) = { - get: "/v1beta2/{name=projects/*/locations/*/autoscalingPolicies/*}" - additional_bindings { - get: "/v1beta2/{name=projects/*/regions/*/autoscalingPolicies/*}" - } - }; - option (google.api.method_signature) = "name"; - } - - // Lists autoscaling policies in the project. - rpc ListAutoscalingPolicies(ListAutoscalingPoliciesRequest) - returns (ListAutoscalingPoliciesResponse) { - option (google.api.http) = { - get: "/v1beta2/{parent=projects/*/locations/*}/autoscalingPolicies" - additional_bindings { - get: "/v1beta2/{parent=projects/*/regions/*}/autoscalingPolicies" - } - }; - option (google.api.method_signature) = "parent"; - } - - // Deletes an autoscaling policy. It is an error to delete an autoscaling - // policy that is in use by one or more clusters. - rpc DeleteAutoscalingPolicy(DeleteAutoscalingPolicyRequest) - returns (google.protobuf.Empty) { - option (google.api.http) = { - delete: "/v1beta2/{name=projects/*/locations/*/autoscalingPolicies/*}" - additional_bindings { - delete: "/v1beta2/{name=projects/*/regions/*/autoscalingPolicies/*}" - } - }; - option (google.api.method_signature) = "name"; - } -} - -// Describes an autoscaling policy for Dataproc cluster autoscaler. -message AutoscalingPolicy { - option (google.api.resource) = { - type: "dataproc.googleapis.com/AutoscalingPolicy" - pattern: "projects/{project}/locations/{location}/autoscalingPolicies/{autoscaling_policy}" - pattern: "projects/{project}/regions/{region}/autoscalingPolicies/{autoscaling_policy}" - history: ORIGINALLY_SINGLE_PATTERN - }; - - // Required. The policy id. - // - // The id must contain only letters (a-z, A-Z), numbers (0-9), - // underscores (_), and hyphens (-). Cannot begin or end with underscore - // or hyphen. Must consist of between 3 and 50 characters. - string id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Output only. The "resource name" of the autoscaling policy, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.autoscalingPolicies`, the resource name of the - // policy has the following format: - // `projects/{project_id}/regions/{region}/autoscalingPolicies/{policy_id}` - // - // * For `projects.locations.autoscalingPolicies`, the resource name of the - // policy has the following format: - // `projects/{project_id}/locations/{location}/autoscalingPolicies/{policy_id}` - string name = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Required. Autoscaling algorithm for policy. - oneof algorithm { - BasicAutoscalingAlgorithm basic_algorithm = 3; - } - - // Required. Describes how the autoscaler will operate for primary workers. - InstanceGroupAutoscalingPolicyConfig worker_config = 4 - [(google.api.field_behavior) = REQUIRED]; - - // Optional. Describes how the autoscaler will operate for secondary workers. - InstanceGroupAutoscalingPolicyConfig secondary_worker_config = 5 - [(google.api.field_behavior) = OPTIONAL]; -} - -// Basic algorithm for autoscaling. -message BasicAutoscalingAlgorithm { - // Required. YARN autoscaling configuration. - BasicYarnAutoscalingConfig yarn_config = 1 - [(google.api.field_behavior) = REQUIRED]; - - // Optional. Duration between scaling events. A scaling period starts after - // the update operation from the previous event has completed. - // - // Bounds: [2m, 1d]. Default: 2m. - google.protobuf.Duration cooldown_period = 2 - [(google.api.field_behavior) = OPTIONAL]; -} - -// Basic autoscaling configurations for YARN. -message BasicYarnAutoscalingConfig { - // Required. Timeout for YARN graceful decommissioning of Node Managers. - // Specifies the duration to wait for jobs to complete before forcefully - // removing workers (and potentially interrupting jobs). Only applicable to - // downscaling operations. - // - // Bounds: [0s, 1d]. - google.protobuf.Duration graceful_decommission_timeout = 5 - [(google.api.field_behavior) = REQUIRED]; - - // Required. Fraction of average YARN pending memory in the last cooldown - // period for which to add workers. A scale-up factor of 1.0 will result in - // scaling up so that there is no pending memory remaining after the update - // (more aggressive scaling). A scale-up factor closer to 0 will result in a - // smaller magnitude of scaling up (less aggressive scaling). See [How - // autoscaling - // works](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/autoscaling#how_autoscaling_works) - // for more information. - // - // Bounds: [0.0, 1.0]. - double scale_up_factor = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. Fraction of average YARN pending memory in the last cooldown - // period for which to remove workers. A scale-down factor of 1 will result in - // scaling down so that there is no available memory remaining after the - // update (more aggressive scaling). A scale-down factor of 0 disables - // removing workers, which can be beneficial for autoscaling a single job. - // See [How autoscaling - // works](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/autoscaling#how_autoscaling_works) - // for more information. - // - // Bounds: [0.0, 1.0]. - double scale_down_factor = 2 [(google.api.field_behavior) = REQUIRED]; - - // Optional. Minimum scale-up threshold as a fraction of total cluster size - // before scaling occurs. For example, in a 20-worker cluster, a threshold of - // 0.1 means the autoscaler must recommend at least a 2-worker scale-up for - // the cluster to scale. A threshold of 0 means the autoscaler will scale up - // on any recommended change. - // - // Bounds: [0.0, 1.0]. Default: 0.0. - double scale_up_min_worker_fraction = 3 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Minimum scale-down threshold as a fraction of total cluster size - // before scaling occurs. For example, in a 20-worker cluster, a threshold of - // 0.1 means the autoscaler must recommend at least a 2 worker scale-down for - // the cluster to scale. A threshold of 0 means the autoscaler will scale down - // on any recommended change. - // - // Bounds: [0.0, 1.0]. Default: 0.0. - double scale_down_min_worker_fraction = 4 - [(google.api.field_behavior) = OPTIONAL]; -} - -// Configuration for the size bounds of an instance group, including its -// proportional size to other groups. -message InstanceGroupAutoscalingPolicyConfig { - // Optional. Minimum number of instances for this group. - // - // Primary workers - Bounds: [2, max_instances]. Default: 2. - // Secondary workers - Bounds: [0, max_instances]. Default: 0. - int32 min_instances = 1 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Maximum number of instances for this group. Required for primary - // workers. Note that by default, clusters will not use secondary workers. - // Required for secondary workers if the minimum secondary instances is set. - // - // Primary workers - Bounds: [min_instances, ). Required. - // Secondary workers - Bounds: [min_instances, ). Default: 0. - int32 max_instances = 2 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Weight for the instance group, which is used to determine the - // fraction of total workers in the cluster from this instance group. - // For example, if primary workers have weight 2, and secondary workers have - // weight 1, the cluster will have approximately 2 primary workers for each - // secondary worker. - // - // The cluster may not reach the specified balance if constrained - // by min/max bounds or other autoscaling settings. For example, if - // `max_instances` for secondary workers is 0, then only primary workers will - // be added. The cluster can also be out of balance when created. - // - // If weight is not set on any instance group, the cluster will default to - // equal weight for all groups: the cluster will attempt to maintain an equal - // number of workers in each group within the configured size bounds for each - // group. If weight is set for one group only, the cluster will default to - // zero weight on the unset group. For example if weight is set only on - // primary workers, the cluster will use primary workers only and no - // secondary workers. - int32 weight = 3 [(google.api.field_behavior) = OPTIONAL]; -} - -// A request to create an autoscaling policy. -message CreateAutoscalingPolicyRequest { - // Required. The "resource name" of the region or location, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.autoscalingPolicies.create`, the resource name - // has the following format: - // `projects/{project_id}/regions/{region}` - // - // * For `projects.locations.autoscalingPolicies.create`, the resource name - // has the following format: - // `projects/{project_id}/locations/{location}` - string parent = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - child_type: "dataproc.googleapis.com/AutoscalingPolicy" - } - ]; - - // Required. The autoscaling policy to create. - AutoscalingPolicy policy = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A request to fetch an autoscaling policy. -message GetAutoscalingPolicyRequest { - // Required. The "resource name" of the autoscaling policy, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.autoscalingPolicies.get`, the resource name - // of the policy has the following format: - // `projects/{project_id}/regions/{region}/autoscalingPolicies/{policy_id}` - // - // * For `projects.locations.autoscalingPolicies.get`, the resource name - // of the policy has the following format: - // `projects/{project_id}/locations/{location}/autoscalingPolicies/{policy_id}` - string name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "dataproc.googleapis.com/AutoscalingPolicy" - } - ]; -} - -// A request to update an autoscaling policy. -message UpdateAutoscalingPolicyRequest { - // Required. The updated autoscaling policy. - AutoscalingPolicy policy = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// A request to delete an autoscaling policy. -// -// Autoscaling policies in use by one or more clusters will not be deleted. -message DeleteAutoscalingPolicyRequest { - // Required. The "resource name" of the autoscaling policy, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.autoscalingPolicies.delete`, the resource name - // of the policy has the following format: - // `projects/{project_id}/regions/{region}/autoscalingPolicies/{policy_id}` - // - // * For `projects.locations.autoscalingPolicies.delete`, the resource name - // of the policy has the following format: - // `projects/{project_id}/locations/{location}/autoscalingPolicies/{policy_id}` - string name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "dataproc.googleapis.com/AutoscalingPolicy" - } - ]; -} - -// A request to list autoscaling policies in a project. -message ListAutoscalingPoliciesRequest { - // Required. The "resource name" of the region or location, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.autoscalingPolicies.list`, the resource name - // of the region has the following format: - // `projects/{project_id}/regions/{region}` - // - // * For `projects.locations.autoscalingPolicies.list`, the resource name - // of the location has the following format: - // `projects/{project_id}/locations/{location}` - string parent = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - child_type: "dataproc.googleapis.com/AutoscalingPolicy" - } - ]; - - // Optional. The maximum number of results to return in each response. - // Must be less than or equal to 1000. Defaults to 100. - int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The page token, returned by a previous call, to request the - // next page of results. - string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; -} - -// A response to a request to list autoscaling policies in a project. -message ListAutoscalingPoliciesResponse { - // Output only. Autoscaling policies list. - repeated AutoscalingPolicy policies = 1 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. This token is included in the response if there are more - // results to fetch. - string next_page_token = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} diff --git a/google/cloud/dataproc/v1beta2/clusters.proto b/google/cloud/dataproc/v1beta2/clusters.proto deleted file mode 100644 index 8af436e09..000000000 --- a/google/cloud/dataproc/v1beta2/clusters.proto +++ /dev/null @@ -1,1082 +0,0 @@ -// Copyright 2020 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.cloud.dataproc.v1beta2; - -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/cloud/dataproc/v1beta2/shared.proto"; -import "google/longrunning/operations.proto"; -import "google/protobuf/duration.proto"; -import "google/protobuf/field_mask.proto"; -import "google/protobuf/timestamp.proto"; - -option go_package = "google.golang.org/genproto/googleapis/cloud/dataproc/v1beta2;dataproc"; -option java_multiple_files = true; -option java_outer_classname = "ClustersProto"; -option java_package = "com.google.cloud.dataproc.v1beta2"; -option (google.api.resource_definition) = { - type: "container.googleapis.com/Cluster" - pattern: "projects/{project}/locations/{location}/clusters/{cluster}" -}; -option (google.api.resource_definition) = { - type: "metastore.googleapis.com/Service" - pattern: "projects/{project}/locations/{location}/services/{service}" -}; - -// The ClusterControllerService provides methods to manage clusters -// of Compute Engine instances. -service ClusterController { - option (google.api.default_host) = "dataproc.googleapis.com"; - option (google.api.oauth_scopes) = - "https://www.googleapis.com/auth/cloud-platform"; - - // Creates a cluster in a project. The returned - // [Operation.metadata][google.longrunning.Operation.metadata] will be - // [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1beta2#clusteroperationmetadata). - rpc CreateCluster(CreateClusterRequest) - returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v1beta2/projects/{project_id}/regions/{region}/clusters" - body: "cluster" - }; - option (google.api.method_signature) = "project_id, region, cluster"; - option (google.longrunning.operation_info) = { - response_type: "Cluster" - metadata_type: "google.cloud.dataproc.v1beta2.ClusterOperationMetadata" - }; - } - - // Updates a cluster in a project. The returned - // [Operation.metadata][google.longrunning.Operation.metadata] will be - // [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1beta2#clusteroperationmetadata). - rpc UpdateCluster(UpdateClusterRequest) - returns (google.longrunning.Operation) { - option (google.api.http) = { - patch: "/v1beta2/projects/{project_id}/regions/{region}/clusters/{cluster_name}" - body: "cluster" - }; - option (google.api.method_signature) = - "project_id, region, cluster_name, cluster, update_mask"; - option (google.longrunning.operation_info) = { - response_type: "Cluster" - metadata_type: "google.cloud.dataproc.v1beta2.ClusterOperationMetadata" - }; - } - - // Deletes a cluster in a project. The returned - // [Operation.metadata][google.longrunning.Operation.metadata] will be - // [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1beta2#clusteroperationmetadata). - rpc DeleteCluster(DeleteClusterRequest) - returns (google.longrunning.Operation) { - option (google.api.http) = { - delete: "/v1beta2/projects/{project_id}/regions/{region}/clusters/{cluster_name}" - }; - option (google.api.method_signature) = "project_id, region, cluster_name"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.cloud.dataproc.v1beta2.ClusterOperationMetadata" - }; - } - - // Gets the resource representation for a cluster in a project. - rpc GetCluster(GetClusterRequest) returns (Cluster) { - option (google.api.http) = { - get: "/v1beta2/projects/{project_id}/regions/{region}/clusters/{cluster_name}" - }; - option (google.api.method_signature) = "project_id, region, cluster_name"; - } - - // Lists all regions/{region}/clusters in a project alphabetically. - rpc ListClusters(ListClustersRequest) returns (ListClustersResponse) { - option (google.api.http) = { - get: "/v1beta2/projects/{project_id}/regions/{region}/clusters" - }; - option (google.api.method_signature) = "project_id, region"; - option (google.api.method_signature) = "project_id, region, filter"; - } - - // Gets cluster diagnostic information. The returned - // [Operation.metadata][google.longrunning.Operation.metadata] will be - // [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1beta2#clusteroperationmetadata). - // After the operation completes, - // [Operation.response][google.longrunning.Operation.response] - // contains - // [Empty][google.protobuf.Empty]. - rpc DiagnoseCluster(DiagnoseClusterRequest) - returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v1beta2/projects/{project_id}/regions/{region}/clusters/{cluster_name}:diagnose" - body: "*" - }; - option (google.api.method_signature) = "project_id, region, cluster_name"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "google.cloud.dataproc.v1beta2.ClusterOperationMetadata" - }; - } -} - -// Describes the identifying information, config, and status of -// a cluster of Compute Engine instances. -message Cluster { - // Required. The Google Cloud Platform project ID that the cluster belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The cluster name. Cluster names within a project must be - // unique. Names of deleted clusters can be reused. - string cluster_name = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. The cluster config. Note that Dataproc may set - // default values, and values may change when clusters are updated. - ClusterConfig config = 3 [(google.api.field_behavior) = REQUIRED]; - - // Optional. The labels to associate with this cluster. - // Label **keys** must contain 1 to 63 characters, and must conform to - // [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). - // Label **values** may be empty, but, if present, must contain 1 to 63 - // characters, and must conform to [RFC - // 1035](https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be - // associated with a cluster. - map labels = 8 [(google.api.field_behavior) = OPTIONAL]; - - // Output only. Cluster status. - ClusterStatus status = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The previous cluster status. - repeated ClusterStatus status_history = 7 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A cluster UUID (Unique Universal Identifier). Dataproc - // generates this value when it creates the cluster. - string cluster_uuid = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Contains cluster daemon metrics such as HDFS and YARN stats. - // - // **Beta Feature**: This report is available for testing purposes only. It - // may be changed before final release. - ClusterMetrics metrics = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// The cluster config. -message ClusterConfig { - // Optional. A Cloud Storage bucket used to stage job - // dependencies, config files, and job driver console output. - // If you do not specify a staging bucket, Cloud - // Dataproc will determine a Cloud Storage location (US, - // ASIA, or EU) for your cluster's staging bucket according to the - // Compute Engine zone where your cluster is deployed, and then create - // and manage this project-level, per-location bucket (see - // [Dataproc staging - // bucket](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging-bucket)). - string config_bucket = 1 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. A Cloud Storage bucket used to store ephemeral cluster and jobs - // data, such as Spark and MapReduce history files. If you do not specify a - // temp bucket, Dataproc will determine a Cloud Storage location (US, ASIA, or - // EU) for your cluster's temp bucket according to the Compute Engine zone - // where your cluster is deployed, and then create and manage this - // project-level, per-location bucket. The default bucket has a TTL of 90 - // days, but you can use any TTL (or none) if you specify a bucket. - string temp_bucket = 2 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The shared Compute Engine config settings for - // all instances in a cluster. - GceClusterConfig gce_cluster_config = 8 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Compute Engine config settings for - // the master instance in a cluster. - InstanceGroupConfig master_config = 9 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Compute Engine config settings for - // worker instances in a cluster. - InstanceGroupConfig worker_config = 10 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Compute Engine config settings for - // additional worker instances in a cluster. - InstanceGroupConfig secondary_worker_config = 12 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The config settings for software inside the cluster. - SoftwareConfig software_config = 13 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The config setting for auto delete cluster schedule. - LifecycleConfig lifecycle_config = 14 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Commands to execute on each node after config is - // completed. By default, executables are run on master and all worker nodes. - // You can test a node's role metadata to run an executable on - // a master or worker node, as shown below using `curl` (you can also use - // `wget`): - // - // ROLE=$(curl -H Metadata-Flavor:Google - // http://metadata/computeMetadata/v1beta2/instance/attributes/dataproc-role) - // if [[ "${ROLE}" == 'Master' ]]; then - // ... master specific actions ... - // else - // ... worker specific actions ... - // fi - repeated NodeInitializationAction initialization_actions = 11 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Encryption settings for the cluster. - EncryptionConfig encryption_config = 15 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Autoscaling config for the policy associated with the cluster. - // Cluster does not autoscale if this field is unset. - AutoscalingConfig autoscaling_config = 16 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Port/endpoint configuration for this cluster - EndpointConfig endpoint_config = 17 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Security related configuration. - SecurityConfig security_config = 18 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Kubernetes Engine config for Dataproc clusters deployed to - // Kubernetes. Setting this is considered mutually exclusive with Compute - // Engine-based options such as `gce_cluster_config`, `master_config`, - // `worker_config`, `secondary_worker_config`, and `autoscaling_config`. - GkeClusterConfig gke_cluster_config = 19 - [(google.api.field_behavior) = OPTIONAL]; -} - -// The GKE config for this cluster. -message GkeClusterConfig { - // A full, namespace-isolated deployment target for an existing GKE cluster. - message NamespacedGkeDeploymentTarget { - // Optional. The target GKE cluster to deploy to. - // Format: 'projects/{project}/locations/{location}/clusters/{cluster_id}' - string target_gke_cluster = 1 [ - (google.api.field_behavior) = OPTIONAL, - (google.api.resource_reference) = { - type: "container.googleapis.com/Cluster" - } - ]; - - // Optional. A namespace within the GKE cluster to deploy into. - string cluster_namespace = 2 [(google.api.field_behavior) = OPTIONAL]; - } - - // Optional. A target for the deployment. - NamespacedGkeDeploymentTarget namespaced_gke_deployment_target = 1 - [(google.api.field_behavior) = OPTIONAL]; -} - -// Endpoint config for this cluster -message EndpointConfig { - // Output only. The map of port descriptions to URLs. Will only be populated - // if enable_http_port_access is true. - map http_ports = 1 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional. If true, enable http access to specific ports on the cluster - // from external sources. Defaults to false. - bool enable_http_port_access = 2 [(google.api.field_behavior) = OPTIONAL]; -} - -// Autoscaling Policy config associated with the cluster. -message AutoscalingConfig { - // Optional. The autoscaling policy used by the cluster. - // - // Only resource names including projectid and location (region) are valid. - // Examples: - // - // * `https://www.googleapis.com/compute/v1/projects/[project_id]/locations/[dataproc_region]/autoscalingPolicies/[policy_id]` - // * `projects/[project_id]/locations/[dataproc_region]/autoscalingPolicies/[policy_id]` - // - // Note that the policy must be in the same project and Dataproc region. - string policy_uri = 1 [(google.api.field_behavior) = OPTIONAL]; -} - -// Encryption settings for the cluster. -message EncryptionConfig { - // Optional. The Cloud KMS key name to use for PD disk encryption for all - // instances in the cluster. - string gce_pd_kms_key_name = 1 [(google.api.field_behavior) = OPTIONAL]; -} - -// Common config settings for resources of Compute Engine cluster -// instances, applicable to all instances in the cluster. -message GceClusterConfig { - // Optional. The zone where the Compute Engine cluster will be located. - // On a create request, it is required in the "global" region. If omitted - // in a non-global Dataproc region, the service will pick a zone in the - // corresponding Compute Engine region. On a get request, zone will always be - // present. - // - // A full URL, partial URI, or short name are valid. Examples: - // - // * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/[zone]` - // * `projects/[project_id]/zones/[zone]` - // * `us-central1-f` - string zone_uri = 1 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Compute Engine network to be used for machine - // communications. Cannot be specified with subnetwork_uri. If neither - // `network_uri` nor `subnetwork_uri` is specified, the "default" network of - // the project is used, if it exists. Cannot be a "Custom Subnet Network" (see - // [Using Subnetworks](https://cloud.google.com/compute/docs/subnetworks) for - // more information). - // - // A full URL, partial URI, or short name are valid. Examples: - // - // * `https://www.googleapis.com/compute/v1/projects/[project_id]/regions/global/default` - // * `projects/[project_id]/regions/global/default` - // * `default` - string network_uri = 2 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Compute Engine subnetwork to be used for machine - // communications. Cannot be specified with network_uri. - // - // A full URL, partial URI, or short name are valid. Examples: - // - // * `https://www.googleapis.com/compute/v1/projects/[project_id]/regions/us-east1/subnetworks/sub0` - // * `projects/[project_id]/regions/us-east1/subnetworks/sub0` - // * `sub0` - string subnetwork_uri = 6 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. If true, all instances in the cluster will only have internal IP - // addresses. By default, clusters are not restricted to internal IP - // addresses, and will have ephemeral external IP addresses assigned to each - // instance. This `internal_ip_only` restriction can only be enabled for - // subnetwork enabled networks, and all off-cluster dependencies must be - // configured to be accessible without external IP addresses. - bool internal_ip_only = 7 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The [Dataproc service - // account](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/service-accounts#service_accounts_in_dataproc) - // (also see [VM Data Plane - // identity](https://cloud.google.com/dataproc/docs/concepts/iam/dataproc-principals#vm_service_account_data_plane_identity)) - // used by Dataproc cluster VM instances to access Google Cloud Platform - // services. - // - // If not specified, the - // [Compute Engine default service - // account](https://cloud.google.com/compute/docs/access/service-accounts#default_service_account) - // is used. - string service_account = 8 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The URIs of service account scopes to be included in - // Compute Engine instances. The following base set of scopes is always - // included: - // - // * https://www.googleapis.com/auth/cloud.useraccounts.readonly - // * https://www.googleapis.com/auth/devstorage.read_write - // * https://www.googleapis.com/auth/logging.write - // - // If no scopes are specified, the following defaults are also provided: - // - // * https://www.googleapis.com/auth/bigquery - // * https://www.googleapis.com/auth/bigtable.admin.table - // * https://www.googleapis.com/auth/bigtable.data - // * https://www.googleapis.com/auth/devstorage.full_control - repeated string service_account_scopes = 3 - [(google.api.field_behavior) = OPTIONAL]; - - // The Compute Engine tags to add to all instances (see [Tagging - // instances](https://cloud.google.com/compute/docs/label-or-tag-resources#tags)). - repeated string tags = 4; - - // The Compute Engine metadata entries to add to all instances (see - // [Project and instance - // metadata](https://cloud.google.com/compute/docs/storing-retrieving-metadata#project_and_instance_metadata)). - map metadata = 5; - - // Optional. Reservation Affinity for consuming Zonal reservation. - ReservationAffinity reservation_affinity = 11 - [(google.api.field_behavior) = OPTIONAL]; -} - -// The config settings for Compute Engine resources in -// an instance group, such as a master or worker group. -message InstanceGroupConfig { - // Controls the use of - // [preemptible instances] - // (https://cloud.google.com/compute/docs/instances/preemptible) - // within the group. - enum Preemptibility { - // Preemptibility is unspecified, the system will choose the - // appropriate setting for each instance group. - PREEMPTIBILITY_UNSPECIFIED = 0; - - // Instances are non-preemptible. - // - // This option is allowed for all instance groups and is the only valid - // value for Master and Worker instance groups. - NON_PREEMPTIBLE = 1; - - // Instances are preemptible. - // - // This option is allowed only for secondary worker groups. - PREEMPTIBLE = 2; - } - - // Optional. The number of VM instances in the instance group. - // For master instance groups, must be set to 1. - int32 num_instances = 1 [(google.api.field_behavior) = OPTIONAL]; - - // Output only. The list of instance names. Dataproc derives the names - // from `cluster_name`, `num_instances`, and the instance group. - repeated string instance_names = 2 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional. The Compute Engine image resource used for cluster instances. - // - // The URI can represent an image or image family. - // - // Image examples: - // - // * `https://www.googleapis.com/compute/beta/projects/[project_id]/global/images/[image-id]` - // * `projects/[project_id]/global/images/[image-id]` - // * `image-id` - // - // Image family examples. Dataproc will use the most recent - // image from the family: - // - // * `https://www.googleapis.com/compute/beta/projects/[project_id]/global/images/family/[custom-image-family-name]` - // * `projects/[project_id]/global/images/family/[custom-image-family-name]` - // - // If the URI is unspecified, it will be inferred from - // `SoftwareConfig.image_version` or the system default. - string image_uri = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Compute Engine machine type used for cluster instances. - // - // A full URL, partial URI, or short name are valid. Examples: - // - // * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2` - // * `projects/[project_id]/zones/us-east1-a/machineTypes/n1-standard-2` - // * `n1-standard-2` - // - // **Auto Zone Exception**: If you are using the Dataproc - // [Auto Zone - // Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement) - // feature, you must use the short name of the machine type - // resource, for example, `n1-standard-2`. - string machine_type_uri = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Disk option config settings. - DiskConfig disk_config = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Output only. Specifies that this instance group contains preemptible - // instances. - bool is_preemptible = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional. Specifies the preemptibility of the instance group. - // - // The default value for master and worker groups is - // `NON_PREEMPTIBLE`. This default cannot be changed. - // - // The default value for secondary instances is - // `PREEMPTIBLE`. - Preemptibility preemptibility = 10 [(google.api.field_behavior) = OPTIONAL]; - - // Output only. The config for Compute Engine Instance Group - // Manager that manages this group. - // This is only used for preemptible instance groups. - ManagedGroupConfig managed_group_config = 7 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional. The Compute Engine accelerator configuration for these - // instances. - repeated AcceleratorConfig accelerators = 8 - [(google.api.field_behavior) = OPTIONAL]; - - // Specifies the minimum cpu platform for the Instance Group. - // See [Dataproc -> Minimum CPU - // Platform](https://cloud.google.com/dataproc/docs/concepts/compute/dataproc-min-cpu). - string min_cpu_platform = 9; -} - -// Specifies the resources used to actively manage an instance group. -message ManagedGroupConfig { - // Output only. The name of the Instance Template used for the Managed - // Instance Group. - string instance_template_name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the Instance Group Manager for this group. - string instance_group_manager_name = 2 - [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Specifies the type and number of accelerator cards attached to the instances -// of an instance group (see [GPUs on Compute -// Engine](https://cloud.google.com/compute/docs/gpus/)). -message AcceleratorConfig { - // Full URL, partial URI, or short name of the accelerator type resource to - // expose to this instance. See - // [Compute Engine - // AcceleratorTypes](https://cloud.google.com/compute/docs/reference/beta/acceleratorTypes) - // - // Examples - // * `https://www.googleapis.com/compute/beta/projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80` - // * `projects/[project_id]/zones/us-east1-a/acceleratorTypes/nvidia-tesla-k80` - // * `nvidia-tesla-k80` - // - // **Auto Zone Exception**: If you are using the Dataproc - // [Auto Zone - // Placement](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/auto-zone#using_auto_zone_placement) - // feature, you must use the short name of the accelerator type - // resource, for example, `nvidia-tesla-k80`. - string accelerator_type_uri = 1; - - // The number of the accelerator cards of this type exposed to this instance. - int32 accelerator_count = 2; -} - -// Specifies the config of disk options for a group of VM instances. -message DiskConfig { - // Optional. Type of the boot disk (default is "pd-standard"). - // Valid values: "pd-ssd" (Persistent Disk Solid State Drive) or - // "pd-standard" (Persistent Disk Hard Disk Drive). - string boot_disk_type = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Size in GB of the boot disk (default is 500GB). - int32 boot_disk_size_gb = 1 [(google.api.field_behavior) = OPTIONAL]; - - // Number of attached SSDs, from 0 to 4 (default is 0). - // If SSDs are not attached, the boot disk is used to store runtime logs and - // [HDFS](https://hadoop.apache.org/docs/r1.2.1/hdfs_user_guide.html) data. - // If one or more SSDs are attached, this runtime bulk - // data is spread across them, and the boot disk contains only basic - // config and installed binaries. - int32 num_local_ssds = 2; -} - -// Specifies the cluster auto-delete schedule configuration. -message LifecycleConfig { - // Optional. The duration to keep the cluster alive while idling (when no jobs - // are running). Passing this threshold will cause the cluster to be - // deleted. Minimum value is 10 minutes; maximum value is 14 days (see JSON - // representation of - // [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json). - google.protobuf.Duration idle_delete_ttl = 1 - [(google.api.field_behavior) = OPTIONAL]; - - // Either the exact time the cluster should be deleted at or - // the cluster maximum age. - oneof ttl { - // Optional. The time when cluster will be auto-deleted. (see JSON - // representation of - // [Timestamp](https://developers.google.com/protocol-buffers/docs/proto3#json)). - google.protobuf.Timestamp auto_delete_time = 2 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The lifetime duration of cluster. The cluster will be - // auto-deleted at the end of this period. Minimum value is 10 minutes; - // maximum value is 14 days (see JSON representation of - // [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)). - google.protobuf.Duration auto_delete_ttl = 3 - [(google.api.field_behavior) = OPTIONAL]; - } - - // Output only. The time when cluster became idle (most recent job finished) - // and became eligible for deletion due to idleness (see JSON representation - // of - // [Timestamp](https://developers.google.com/protocol-buffers/docs/proto3#json)). - google.protobuf.Timestamp idle_start_time = 4 - [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Security related configuration, including encryption, Kerberos, etc. -message SecurityConfig { - // Kerberos related configuration. - KerberosConfig kerberos_config = 1; -} - -// Specifies Kerberos related configuration. -message KerberosConfig { - // Optional. Flag to indicate whether to Kerberize the cluster (default: - // false). Set this field to true to enable Kerberos on a cluster. - bool enable_kerberos = 1 [(google.api.field_behavior) = OPTIONAL]; - - // Required. The Cloud Storage URI of a KMS encrypted file containing the root - // principal password. - string root_principal_password_uri = 2 - [(google.api.field_behavior) = REQUIRED]; - - // Required. The uri of the KMS key used to encrypt various sensitive - // files. - string kms_key_uri = 3 [(google.api.field_behavior) = REQUIRED]; - - // Optional. The Cloud Storage URI of the keystore file used for SSL - // encryption. If not provided, Dataproc will provide a self-signed - // certificate. - string keystore_uri = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Cloud Storage URI of the truststore file used for SSL - // encryption. If not provided, Dataproc will provide a self-signed - // certificate. - string truststore_uri = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Cloud Storage URI of a KMS encrypted file containing the - // password to the user provided keystore. For the self-signed certificate, - // this password is generated by Dataproc. - string keystore_password_uri = 6 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Cloud Storage URI of a KMS encrypted file containing the - // password to the user provided key. For the self-signed certificate, this - // password is generated by Dataproc. - string key_password_uri = 7 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Cloud Storage URI of a KMS encrypted file containing the - // password to the user provided truststore. For the self-signed certificate, - // this password is generated by Dataproc. - string truststore_password_uri = 8 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The remote realm the Dataproc on-cluster KDC will trust, should - // the user enable cross realm trust. - string cross_realm_trust_realm = 9 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The KDC (IP or hostname) for the remote trusted realm in a cross - // realm trust relationship. - string cross_realm_trust_kdc = 10 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The admin server (IP or hostname) for the remote trusted realm in - // a cross realm trust relationship. - string cross_realm_trust_admin_server = 11 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Cloud Storage URI of a KMS encrypted file containing the - // shared password between the on-cluster Kerberos realm and the remote - // trusted realm, in a cross realm trust relationship. - string cross_realm_trust_shared_password_uri = 12 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The Cloud Storage URI of a KMS encrypted file containing the - // master key of the KDC database. - string kdc_db_key_uri = 13 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The lifetime of the ticket granting ticket, in hours. - // If not specified, or user specifies 0, then default value 10 - // will be used. - int32 tgt_lifetime_hours = 14 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The name of the on-cluster Kerberos realm. - // If not specified, the uppercased domain of hostnames will be the realm. - string realm = 15 [(google.api.field_behavior) = OPTIONAL]; -} - -// Specifies an executable to run on a fully configured node and a -// timeout period for executable completion. -message NodeInitializationAction { - // Required. Cloud Storage URI of executable file. - string executable_file = 1 [(google.api.field_behavior) = REQUIRED]; - - // Optional. Amount of time executable has to complete. Default is - // 10 minutes (see JSON representation of - // [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)). - // - // Cluster creation fails with an explanatory error message (the - // name of the executable that caused the error and the exceeded timeout - // period) if the executable is not completed at end of the timeout period. - google.protobuf.Duration execution_timeout = 2 - [(google.api.field_behavior) = OPTIONAL]; -} - -// The status of a cluster and its instances. -message ClusterStatus { - // The cluster state. - enum State { - // The cluster state is unknown. - UNKNOWN = 0; - - // The cluster is being created and set up. It is not ready for use. - CREATING = 1; - - // The cluster is currently running and healthy. It is ready for use. - RUNNING = 2; - - // The cluster encountered an error. It is not ready for use. - ERROR = 3; - - // The cluster is being deleted. It cannot be used. - DELETING = 4; - - // The cluster is being updated. It continues to accept and process jobs. - UPDATING = 5; - - // The cluster is being stopped. It cannot be used. - STOPPING = 6; - - // The cluster is currently stopped. It is not ready for use. - STOPPED = 7; - - // The cluster is being started. It is not ready for use. - STARTING = 8; - } - - // The cluster substate. - enum Substate { - // The cluster substate is unknown. - UNSPECIFIED = 0; - - // The cluster is known to be in an unhealthy state - // (for example, critical daemons are not running or HDFS capacity is - // exhausted). - // - // Applies to RUNNING state. - UNHEALTHY = 1; - - // The agent-reported status is out of date (may occur if - // Dataproc loses communication with Agent). - // - // Applies to RUNNING state. - STALE_STATUS = 2; - } - - // Output only. The cluster's state. - State state = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Optional details of cluster's state. - string detail = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Time when this state was entered (see JSON representation of - // [Timestamp](https://developers.google.com/protocol-buffers/docs/proto3#json)). - google.protobuf.Timestamp state_start_time = 3 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Additional state information that includes - // status reported by the agent. - Substate substate = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Specifies the selection and config of software inside the cluster. -message SoftwareConfig { - // Optional. The version of software inside the cluster. It must be one of the - // supported [Dataproc - // Versions](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#supported_dataproc_versions), - // such as "1.2" (including a subminor version, such as "1.2.29"), or the - // ["preview" - // version](https://cloud.google.com/dataproc/docs/concepts/versioning/dataproc-versions#other_versions). - // If unspecified, it defaults to the latest Debian version. - string image_version = 1 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The properties to set on daemon config files. - // - // Property keys are specified in `prefix:property` format, for example - // `core:hadoop.tmp.dir`. The following are supported prefixes - // and their mappings: - // - // * capacity-scheduler: `capacity-scheduler.xml` - // * core: `core-site.xml` - // * distcp: `distcp-default.xml` - // * hdfs: `hdfs-site.xml` - // * hive: `hive-site.xml` - // * mapred: `mapred-site.xml` - // * pig: `pig.properties` - // * spark: `spark-defaults.conf` - // * yarn: `yarn-site.xml` - // - // For more information, see [Cluster - // properties](https://cloud.google.com/dataproc/docs/concepts/cluster-properties). - map properties = 2 [(google.api.field_behavior) = OPTIONAL]; - - // The set of optional components to activate on the cluster. - repeated Component optional_components = 3; -} - -// Contains cluster daemon metrics, such as HDFS and YARN stats. -// -// **Beta Feature**: This report is available for testing purposes only. It may -// be changed before final release. -message ClusterMetrics { - // The HDFS metrics. - map hdfs_metrics = 1; - - // The YARN metrics. - map yarn_metrics = 2; -} - -// A request to create a cluster. -message CreateClusterRequest { - // Required. The ID of the Google Cloud Platform project that the cluster - // belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The cluster to create. - Cluster cluster = 2 [(google.api.field_behavior) = REQUIRED]; - - // Optional. A unique id used to identify the request. If the server - // receives two - // [CreateClusterRequest][google.cloud.dataproc.v1beta2.CreateClusterRequest] - // requests with the same id, then the second request will be ignored and the - // first [google.longrunning.Operation][google.longrunning.Operation] created - // and stored in the backend is returned. - // - // It is recommended to always set this value to a - // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). - // - // The id must contain only letters (a-z, A-Z), numbers (0-9), - // underscores (_), and hyphens (-). The maximum length is 40 characters. - string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; -} - -// A request to update a cluster. -message UpdateClusterRequest { - // Required. The ID of the Google Cloud Platform project the - // cluster belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 5 [(google.api.field_behavior) = REQUIRED]; - - // Required. The cluster name. - string cluster_name = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. The changes to the cluster. - Cluster cluster = 3 [(google.api.field_behavior) = REQUIRED]; - - // Optional. Timeout for graceful YARN decomissioning. Graceful - // decommissioning allows removing nodes from the cluster without - // interrupting jobs in progress. Timeout specifies how long to wait for jobs - // in progress to finish before forcefully removing nodes (and potentially - // interrupting jobs). Default timeout is 0 (for forceful decommission), and - // the maximum allowed timeout is 1 day (see JSON representation of - // [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)). - // - // Only supported on Dataproc image versions 1.2 and higher. - google.protobuf.Duration graceful_decommission_timeout = 6 - [(google.api.field_behavior) = OPTIONAL]; - - // Required. Specifies the path, relative to `Cluster`, of - // the field to update. For example, to change the number of workers - // in a cluster to 5, the `update_mask` parameter would be - // specified as `config.worker_config.num_instances`, - // and the `PATCH` request body would specify the new value, as follows: - // - // { - // "config":{ - // "workerConfig":{ - // "numInstances":"5" - // } - // } - // } - // - // Similarly, to change the number of preemptible workers in a cluster to 5, - // the `update_mask` parameter would be - // `config.secondary_worker_config.num_instances`, and the `PATCH` request - // body would be set as follows: - // - // { - // "config":{ - // "secondaryWorkerConfig":{ - // "numInstances":"5" - // } - // } - // } - // Note: currently only the following fields can be updated: - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - // - //
MaskPurpose
labelsUpdates labels
config.worker_config.num_instancesResize primary worker - // group
config.secondary_worker_config.num_instancesResize secondary - // worker group
config.lifecycle_config.auto_delete_ttlReset MAX TTL - // duration
config.lifecycle_config.auto_delete_timeUpdate MAX TTL - // deletion timestamp
config.lifecycle_config.idle_delete_ttlUpdate Idle TTL - // duration
config.autoscaling_config.policy_uriUse, stop using, or change - // autoscaling policies
- google.protobuf.FieldMask update_mask = 4 - [(google.api.field_behavior) = REQUIRED]; - - // Optional. A unique id used to identify the request. If the server - // receives two - // [UpdateClusterRequest][google.cloud.dataproc.v1beta2.UpdateClusterRequest] - // requests with the same id, then the second request will be ignored and the - // first [google.longrunning.Operation][google.longrunning.Operation] created - // and stored in the backend is returned. - // - // It is recommended to always set this value to a - // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). - // - // The id must contain only letters (a-z, A-Z), numbers (0-9), - // underscores (_), and hyphens (-). The maximum length is 40 characters. - string request_id = 7 [(google.api.field_behavior) = OPTIONAL]; -} - -// A request to delete a cluster. -message DeleteClusterRequest { - // Required. The ID of the Google Cloud Platform project that the cluster - // belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The cluster name. - string cluster_name = 2 [(google.api.field_behavior) = REQUIRED]; - - // Optional. Specifying the `cluster_uuid` means the RPC should fail - // (with error NOT_FOUND) if cluster with specified UUID does not exist. - string cluster_uuid = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. A unique id used to identify the request. If the server - // receives two - // [DeleteClusterRequest][google.cloud.dataproc.v1beta2.DeleteClusterRequest] - // requests with the same id, then the second request will be ignored and the - // first [google.longrunning.Operation][google.longrunning.Operation] created - // and stored in the backend is returned. - // - // It is recommended to always set this value to a - // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). - // - // The id must contain only letters (a-z, A-Z), numbers (0-9), - // underscores (_), and hyphens (-). The maximum length is 40 characters. - string request_id = 5 [(google.api.field_behavior) = OPTIONAL]; -} - -// Request to get the resource representation for a cluster in a project. -message GetClusterRequest { - // Required. The ID of the Google Cloud Platform project that the cluster - // belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The cluster name. - string cluster_name = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A request to list the clusters in a project. -message ListClustersRequest { - // Required. The ID of the Google Cloud Platform project that the cluster - // belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 4 [(google.api.field_behavior) = REQUIRED]; - - // Optional. A filter constraining the clusters to list. Filters are - // case-sensitive and have the following syntax: - // - // field = value [AND [field = value]] ... - // - // where **field** is one of `status.state`, `clusterName`, or `labels.[KEY]`, - // and `[KEY]` is a label key. **value** can be `*` to match all values. - // `status.state` can be one of the following: `ACTIVE`, `INACTIVE`, - // `CREATING`, `RUNNING`, `ERROR`, `DELETING`, or `UPDATING`. `ACTIVE` - // contains the `CREATING`, `UPDATING`, and `RUNNING` states. `INACTIVE` - // contains the `DELETING` and `ERROR` states. - // `clusterName` is the name of the cluster provided at creation time. - // Only the logical `AND` operator is supported; space-separated items are - // treated as having an implicit `AND` operator. - // - // Example filter: - // - // status.state = ACTIVE AND clusterName = mycluster - // AND labels.env = staging AND labels.starred = * - string filter = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The standard List page size. - int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The standard List page token. - string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; -} - -// The list of all clusters in a project. -message ListClustersResponse { - // Output only. The clusters in the project. - repeated Cluster clusters = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. This token is included in the response if there are more - // results to fetch. To fetch additional results, provide this value as the - // `page_token` in a subsequent ListClustersRequest. - string next_page_token = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// A request to collect cluster diagnostic information. -message DiagnoseClusterRequest { - // Required. The ID of the Google Cloud Platform project that the cluster - // belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The cluster name. - string cluster_name = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// The location of diagnostic output. -message DiagnoseClusterResults { - // Output only. The Cloud Storage URI of the diagnostic output. - // The output report is a plain text file with a summary of collected - // diagnostics. - string output_uri = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Reservation Affinity for consuming Zonal reservation. -message ReservationAffinity { - // Indicates whether to consume capacity from an reservation or not. - enum Type { - TYPE_UNSPECIFIED = 0; - - // Do not consume from any allocated capacity. - NO_RESERVATION = 1; - - // Consume any reservation available. - ANY_RESERVATION = 2; - - // Must consume from a specific reservation. Must specify key value fields - // for specifying the reservations. - SPECIFIC_RESERVATION = 3; - } - - // Optional. Type of reservation to consume - Type consume_reservation_type = 1 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Corresponds to the label key of reservation resource. - string key = 2 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Corresponds to the label values of reservation resource. - repeated string values = 3 [(google.api.field_behavior) = OPTIONAL]; -} diff --git a/google/cloud/dataproc/v1beta2/dataproc_gapic.yaml b/google/cloud/dataproc/v1beta2/dataproc_gapic.yaml deleted file mode 100644 index 76c2c367e..000000000 --- a/google/cloud/dataproc/v1beta2/dataproc_gapic.yaml +++ /dev/null @@ -1,43 +0,0 @@ -type: com.google.api.codegen.ConfigProto -config_schema_version: 2.0.0 -interfaces: -- name: google.cloud.dataproc.v1beta2.ClusterController - methods: - - name: CreateCluster - long_running: - initial_poll_delay_millis: 1000 - poll_delay_multiplier: 2 - max_poll_delay_millis: 10000 - total_poll_timeout_millis: 900000 - - name: UpdateCluster - long_running: - initial_poll_delay_millis: 1000 - poll_delay_multiplier: 2 - max_poll_delay_millis: 10000 - total_poll_timeout_millis: 900000 - - name: DeleteCluster - long_running: - initial_poll_delay_millis: 1000 - poll_delay_multiplier: 2 - max_poll_delay_millis: 10000 - total_poll_timeout_millis: 900000 - - name: DiagnoseCluster - long_running: - initial_poll_delay_millis: 1000 - poll_delay_multiplier: 2 - max_poll_delay_millis: 10000 - total_poll_timeout_millis: 30000 -- name: google.cloud.dataproc.v1beta2.WorkflowTemplateService - methods: - - name: InstantiateWorkflowTemplate - long_running: - initial_poll_delay_millis: 1000 - poll_delay_multiplier: 2 - max_poll_delay_millis: 10000 - total_poll_timeout_millis: 43200000 - - name: InstantiateInlineWorkflowTemplate - long_running: - initial_poll_delay_millis: 1000 - poll_delay_multiplier: 2 - max_poll_delay_millis: 10000 - total_poll_timeout_millis: 43200000 diff --git a/google/cloud/dataproc/v1beta2/dataproc_grpc_service_config.json b/google/cloud/dataproc/v1beta2/dataproc_grpc_service_config.json deleted file mode 100755 index 89c3fb0d3..000000000 --- a/google/cloud/dataproc/v1beta2/dataproc_grpc_service_config.json +++ /dev/null @@ -1,215 +0,0 @@ -{ - "methodConfig": [ - { - "name": [ - { - "service": "google.cloud.dataproc.v1beta2.AutoscalingPolicyService", - "method": "CreateAutoscalingPolicy" - }, - { - "service": "google.cloud.dataproc.v1beta2.AutoscalingPolicyService", - "method": "DeleteAutoscalingPolicy" - } - ], - "timeout": "600s" - }, - { - "name": [ - { - "service": "google.cloud.dataproc.v1beta2.AutoscalingPolicyService", - "method": "UpdateAutoscalingPolicy" - }, - { - "service": "google.cloud.dataproc.v1beta2.AutoscalingPolicyService", - "method": "GetAutoscalingPolicy" - }, - { - "service": "google.cloud.dataproc.v1beta2.AutoscalingPolicyService", - "method": "ListAutoscalingPolicies" - } - ], - "timeout": "600s", - "retryPolicy": { - "initialBackoff": "0.100s", - "maxBackoff": "60s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": [ - "DEADLINE_EXCEEDED", - "UNAVAILABLE" - ] - } - }, - { - "name": [ - { - "service": "google.cloud.dataproc.v1beta2.ClusterController", - "method": "CreateCluster" - }, - { - "service": "google.cloud.dataproc.v1beta2.ClusterController", - "method": "UpdateCluster" - }, - { - "service": "google.cloud.dataproc.v1beta2.ClusterController", - "method": "DeleteCluster" - }, - { - "service": "google.cloud.dataproc.v1beta2.ClusterController", - "method": "DiagnoseCluster" - }, - { - "service": "google.cloud.dataproc.v1beta2.ClusterController", - "method": "StartCluster" - }, - { - "service": "google.cloud.dataproc.v1beta2.ClusterController", - "method": "StopCluster" - } - ], - "timeout": "300s", - "retryPolicy": { - "initialBackoff": "0.100s", - "maxBackoff": "60s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": [ - "UNAVAILABLE" - ] - } - }, - { - "name": [ - { - "service": "google.cloud.dataproc.v1beta2.ClusterController", - "method": "GetCluster" - }, - { - "service": "google.cloud.dataproc.v1beta2.ClusterController", - "method": "ListClusters" - } - ], - "timeout": "300s", - "retryPolicy": { - "initialBackoff": "0.100s", - "maxBackoff": "60s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": [ - "INTERNAL", - "DEADLINE_EXCEEDED", - "UNAVAILABLE" - ] - } - }, - { - "name": [ - { - "service": "google.cloud.dataproc.v1beta2.JobController", - "method": "SubmitJob" - }, - { - "service": "google.cloud.dataproc.v1beta2.JobController", - "method": "SubmitJobAsOperation" - }, - { - "service": "google.cloud.dataproc.v1beta2.JobController", - "method": "UpdateJob" - }, - { - "service": "google.cloud.dataproc.v1beta2.JobController", - "method": "DeleteJob" - } - ], - "timeout": "900s", - "retryPolicy": { - "initialBackoff": "0.100s", - "maxBackoff": "60s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": [ - "UNAVAILABLE" - ] - } - }, - { - "name": [ - { - "service": "google.cloud.dataproc.v1beta2.JobController", - "method": "GetJob" - }, - { - "service": "google.cloud.dataproc.v1beta2.JobController", - "method": "ListJobs" - }, - { - "service": "google.cloud.dataproc.v1beta2.JobController", - "method": "CancelJob" - } - ], - "timeout": "900s", - "retryPolicy": { - "initialBackoff": "0.100s", - "maxBackoff": "60s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": [ - "DEADLINE_EXCEEDED", - "INTERNAL", - "UNAVAILABLE" - ] - } - }, - { - "name": [ - { - "service": "google.cloud.dataproc.v1beta2.WorkflowTemplateService", - "method": "CreateWorkflowTemplate" - }, - { - "service": "google.cloud.dataproc.v1beta2.WorkflowTemplateService", - "method": "InstantiateWorkflowTemplate" - }, - { - "service": "google.cloud.dataproc.v1beta2.WorkflowTemplateService", - "method": "InstantiateInlineWorkflowTemplate" - }, - { - "service": "google.cloud.dataproc.v1beta2.WorkflowTemplateService", - "method": "UpdateWorkflowTemplate" - }, - { - "service": "google.cloud.dataproc.v1beta2.WorkflowTemplateService", - "method": "DeleteWorkflowTemplate" - } - ], - "timeout": "600s", - "retryPolicy": { - "initialBackoff": "0.100s", - "maxBackoff": "60s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": [ - "UNAVAILABLE" - ] - } - }, - { - "name": [ - { - "service": "google.cloud.dataproc.v1beta2.WorkflowTemplateService", - "method": "GetWorkflowTemplate" - }, - { - "service": "google.cloud.dataproc.v1beta2.WorkflowTemplateService", - "method": "ListWorkflowTemplates" - } - ], - "timeout": "600s", - "retryPolicy": { - "initialBackoff": "0.100s", - "maxBackoff": "60s", - "backoffMultiplier": 1.3, - "retryableStatusCodes": [ - "DEADLINE_EXCEEDED", - "INTERNAL", - "UNAVAILABLE" - ] - } - } - ] -} diff --git a/google/cloud/dataproc/v1beta2/dataproc_v1beta2.yaml b/google/cloud/dataproc/v1beta2/dataproc_v1beta2.yaml deleted file mode 100644 index f4d176b36..000000000 --- a/google/cloud/dataproc/v1beta2/dataproc_v1beta2.yaml +++ /dev/null @@ -1,94 +0,0 @@ -type: google.api.Service -config_version: 2 -name: dataproc.googleapis.com -title: Cloud Dataproc API - -apis: -- name: google.cloud.dataproc.v1beta2.AutoscalingPolicyService -- name: google.cloud.dataproc.v1beta2.ClusterController -- name: google.cloud.dataproc.v1beta2.JobController -- name: google.cloud.dataproc.v1beta2.WorkflowTemplateService - -types: -- name: google.cloud.dataproc.v1beta2.ClusterOperationMetadata -- name: google.cloud.dataproc.v1beta2.DiagnoseClusterResults -- name: google.cloud.dataproc.v1beta2.JobMetadata -- name: google.cloud.dataproc.v1beta2.WorkflowMetadata - -documentation: - summary: 'Manages Hadoop-based clusters and jobs on Google Cloud Platform.' - rules: - - selector: google.iam.v1.IAMPolicy.GetIamPolicy - description: |- - Gets the access control policy for a resource. Returns an empty policy - if the resource exists and does not have a policy set. - - - selector: google.iam.v1.IAMPolicy.SetIamPolicy - description: |- - Sets the access control policy on the specified resource. Replaces - any existing policy. - - Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` - errors. - - - selector: google.iam.v1.IAMPolicy.TestIamPermissions - description: |- - Returns permissions that a caller has on the specified resource. If the - resource does not exist, this will return an empty set of - permissions, not a `NOT_FOUND` error. - - Note: This operation is designed to be used for building - permission-aware UIs and command-line tools, not for authorization - checking. This operation may "fail open" without warning. - -http: - rules: - - selector: google.longrunning.Operations.ListOperations - get: '/v1beta2/{name=projects/*/regions/*/operations}' - - - selector: google.longrunning.Operations.GetOperation - get: '/v1beta2/{name=projects/*/regions/*/operations/*}' - - - selector: google.longrunning.Operations.DeleteOperation - delete: '/v1beta2/{name=projects/*/regions/*/operations/*}' - - - selector: google.longrunning.Operations.CancelOperation - post: '/v1beta2/{name=projects/*/regions/*/operations/*}:cancel' - - - selector: google.iam.v1.IAMPolicy.SetIamPolicy - post: '/v1beta2/{resource=projects/*/regions/*/clusters/*}:setIamPolicy' - body: '*' - - - selector: google.iam.v1.IAMPolicy.GetIamPolicy - get: '/v1beta2/{resource=projects/*/regions/*/clusters/*}:getIamPolicy' - - - selector: google.iam.v1.IAMPolicy.TestIamPermissions - post: '/v1beta2/{resource=projects/*/regions/*/clusters/*}:testIamPermissions' - body: '*' - -authentication: - rules: - - selector: 'google.cloud.dataproc.v1beta2.AutoscalingPolicyService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/cloud-platform - - selector: 'google.cloud.dataproc.v1beta2.ClusterController.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/cloud-platform - - selector: 'google.cloud.dataproc.v1beta2.JobController.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/cloud-platform - - selector: 'google.cloud.dataproc.v1beta2.WorkflowTemplateService.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/cloud-platform - - selector: 'google.iam.v1.IAMPolicy.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/cloud-platform - - selector: 'google.longrunning.Operations.*' - oauth: - canonical_scopes: |- - https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/dataproc/v1beta2/jobs.proto b/google/cloud/dataproc/v1beta2/jobs.proto deleted file mode 100644 index c99f67916..000000000 --- a/google/cloud/dataproc/v1beta2/jobs.proto +++ /dev/null @@ -1,903 +0,0 @@ -// Copyright 2020 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.cloud.dataproc.v1beta2; - -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/longrunning/operations.proto"; -import "google/protobuf/empty.proto"; -import "google/protobuf/field_mask.proto"; -import "google/protobuf/timestamp.proto"; - -option go_package = "google.golang.org/genproto/googleapis/cloud/dataproc/v1beta2;dataproc"; -option java_multiple_files = true; -option java_outer_classname = "JobsProto"; -option java_package = "com.google.cloud.dataproc.v1beta2"; - -// The JobController provides methods to manage jobs. -service JobController { - option (google.api.default_host) = "dataproc.googleapis.com"; - option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; - - // Submits a job to a cluster. - rpc SubmitJob(SubmitJobRequest) returns (Job) { - option (google.api.http) = { - post: "/v1beta2/projects/{project_id}/regions/{region}/jobs:submit" - body: "*" - }; - option (google.api.method_signature) = "project_id, region, job"; - } - - // Submits job to a cluster. - rpc SubmitJobAsOperation(SubmitJobRequest) returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v1beta2/projects/{project_id}/regions/{region}/jobs:submitAsOperation" - body: "*" - }; - option (google.api.method_signature) = "project_id, region, job"; - option (google.longrunning.operation_info) = { - response_type: "Job" - metadata_type: "JobMetadata" - }; - } - - // Gets the resource representation for a job in a project. - rpc GetJob(GetJobRequest) returns (Job) { - option (google.api.http) = { - get: "/v1beta2/projects/{project_id}/regions/{region}/jobs/{job_id}" - }; - option (google.api.method_signature) = "project_id, region, job_id"; - } - - // Lists regions/{region}/jobs in a project. - rpc ListJobs(ListJobsRequest) returns (ListJobsResponse) { - option (google.api.http) = { - get: "/v1beta2/projects/{project_id}/regions/{region}/jobs" - }; - option (google.api.method_signature) = "project_id, region"; - option (google.api.method_signature) = "project_id, region, filter"; - } - - // Updates a job in a project. - rpc UpdateJob(UpdateJobRequest) returns (Job) { - option (google.api.http) = { - patch: "/v1beta2/projects/{project_id}/regions/{region}/jobs/{job_id}" - body: "job" - }; - } - - // Starts a job cancellation request. To access the job resource - // after cancellation, call - // [regions/{region}/jobs.list](https://cloud.google.com/dataproc/docs/reference/rest/v1beta2/projects.regions.jobs/list) - // or - // [regions/{region}/jobs.get](https://cloud.google.com/dataproc/docs/reference/rest/v1beta2/projects.regions.jobs/get). - rpc CancelJob(CancelJobRequest) returns (Job) { - option (google.api.http) = { - post: "/v1beta2/projects/{project_id}/regions/{region}/jobs/{job_id}:cancel" - body: "*" - }; - option (google.api.method_signature) = "project_id, region, job_id"; - } - - // Deletes the job from the project. If the job is active, the delete fails, - // and the response returns `FAILED_PRECONDITION`. - rpc DeleteJob(DeleteJobRequest) returns (google.protobuf.Empty) { - option (google.api.http) = { - delete: "/v1beta2/projects/{project_id}/regions/{region}/jobs/{job_id}" - }; - option (google.api.method_signature) = "project_id, region, job_id"; - } -} - -// The runtime logging config of the job. -message LoggingConfig { - // The Log4j level for job execution. When running an - // [Apache Hive](http://hive.apache.org/) job, Cloud - // Dataproc configures the Hive client to an equivalent verbosity level. - enum Level { - // Level is unspecified. Use default level for log4j. - LEVEL_UNSPECIFIED = 0; - - // Use ALL level for log4j. - ALL = 1; - - // Use TRACE level for log4j. - TRACE = 2; - - // Use DEBUG level for log4j. - DEBUG = 3; - - // Use INFO level for log4j. - INFO = 4; - - // Use WARN level for log4j. - WARN = 5; - - // Use ERROR level for log4j. - ERROR = 6; - - // Use FATAL level for log4j. - FATAL = 7; - - // Turn off log4j. - OFF = 8; - } - - // The per-package log levels for the driver. This may include - // "root" package name to configure rootLogger. - // Examples: - // 'com.google = FATAL', 'root = INFO', 'org.apache = DEBUG' - map driver_log_levels = 2; -} - -// A Dataproc job for running -// [Apache Hadoop -// MapReduce](https://hadoop.apache.org/docs/current/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html) -// jobs on [Apache Hadoop -// YARN](https://hadoop.apache.org/docs/r2.7.1/hadoop-yarn/hadoop-yarn-site/YARN.html). -message HadoopJob { - // Required. Indicates the location of the driver's main class. Specify - // either the jar file that contains the main class or the main class name. - // To specify both, add the jar file to `jar_file_uris`, and then specify - // the main class name in this property. - oneof driver { - // The HCFS URI of the jar file containing the main class. - // Examples: - // 'gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar' - // 'hdfs:/tmp/test-samples/custom-wordcount.jar' - // 'file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar' - string main_jar_file_uri = 1; - - // The name of the driver's main class. The jar file containing the class - // must be in the default CLASSPATH or specified in `jar_file_uris`. - string main_class = 2; - } - - // Optional. The arguments to pass to the driver. Do not - // include arguments, such as `-libjars` or `-Dfoo=bar`, that can be set as - // job properties, since a collision may occur that causes an incorrect job - // submission. - repeated string args = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Jar file URIs to add to the CLASSPATHs of the - // Hadoop driver and tasks. - repeated string jar_file_uris = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS (Hadoop Compatible Filesystem) URIs of files to be copied - // to the working directory of Hadoop drivers and distributed tasks. Useful - // for naively parallel tasks. - repeated string file_uris = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of archives to be extracted in the working directory of - // Hadoop drivers and tasks. Supported file types: - // .jar, .tar, .tar.gz, .tgz, or .zip. - repeated string archive_uris = 6 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. A mapping of property names to values, used to configure Hadoop. - // Properties that conflict with values set by the Dataproc API may be - // overwritten. Can include properties set in /etc/hadoop/conf/*-site and - // classes in user code. - map properties = 7 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The runtime log config for job execution. - LoggingConfig logging_config = 8 [(google.api.field_behavior) = OPTIONAL]; -} - -// A Dataproc job for running [Apache Spark](http://spark.apache.org/) -// applications on YARN. -// The specification of the main method to call to drive the job. -// Specify either the jar file that contains the main class or the main class -// name. To pass both a main jar and a main class in that jar, add the jar to -// `CommonJob.jar_file_uris`, and then specify the main class name in -// `main_class`. -message SparkJob { - oneof driver { - // The HCFS URI of the jar file that contains the main class. - string main_jar_file_uri = 1; - - // The name of the driver's main class. The jar file that contains the class - // must be in the default CLASSPATH or specified in `jar_file_uris`. - string main_class = 2; - } - - // Optional. The arguments to pass to the driver. Do not include arguments, - // such as `--conf`, that can be set as job properties, since a collision may - // occur that causes an incorrect job submission. - repeated string args = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of jar files to add to the CLASSPATHs of the - // Spark driver and tasks. - repeated string jar_file_uris = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of files to be placed in the working directory of - // each executor. Useful for naively parallel tasks. - repeated string file_uris = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of archives to be extracted into the working directory - // of each executor. Supported file types: - // .jar, .tar, .tar.gz, .tgz, and .zip. - repeated string archive_uris = 6 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. A mapping of property names to values, used to configure Spark. - // Properties that conflict with values set by the Dataproc API may be - // overwritten. Can include properties set in - // /etc/spark/conf/spark-defaults.conf and classes in user code. - map properties = 7 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The runtime log config for job execution. - LoggingConfig logging_config = 8 [(google.api.field_behavior) = OPTIONAL]; -} - -// A Dataproc job for running -// [Apache -// PySpark](https://spark.apache.org/docs/0.9.0/python-programming-guide.html) -// applications on YARN. -message PySparkJob { - // Required. The HCFS URI of the main Python file to use as the driver. Must - // be a .py file. - string main_python_file_uri = 1 [(google.api.field_behavior) = REQUIRED]; - - // Optional. The arguments to pass to the driver. Do not include arguments, - // such as `--conf`, that can be set as job properties, since a collision may - // occur that causes an incorrect job submission. - repeated string args = 2 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS file URIs of Python files to pass to the PySpark - // framework. Supported file types: .py, .egg, and .zip. - repeated string python_file_uris = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of jar files to add to the CLASSPATHs of the - // Python driver and tasks. - repeated string jar_file_uris = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of files to be placed in the working directory of - // each executor. Useful for naively parallel tasks. - repeated string file_uris = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of archives to be extracted into the working directory - // of each executor. Supported file types: - // .jar, .tar, .tar.gz, .tgz, and .zip. - repeated string archive_uris = 6 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. A mapping of property names to values, used to configure PySpark. - // Properties that conflict with values set by the Dataproc API may be - // overwritten. Can include properties set in - // /etc/spark/conf/spark-defaults.conf and classes in user code. - map properties = 7 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The runtime log config for job execution. - LoggingConfig logging_config = 8 [(google.api.field_behavior) = OPTIONAL]; -} - -// A list of queries to run on a cluster. -message QueryList { - // Required. The queries to execute. You do not need to terminate a query - // with a semicolon. Multiple queries can be specified in one string - // by separating each with a semicolon. Here is an example of an Cloud - // Dataproc API snippet that uses a QueryList to specify a HiveJob: - // - // "hiveJob": { - // "queryList": { - // "queries": [ - // "query1", - // "query2", - // "query3;query4", - // ] - // } - // } - repeated string queries = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// A Dataproc job for running [Apache Hive](https://hive.apache.org/) -// queries on YARN. -message HiveJob { - // Required. The sequence of Hive queries to execute, specified as either - // an HCFS file URI or a list of queries. - oneof queries { - // The HCFS URI of the script that contains Hive queries. - string query_file_uri = 1; - - // A list of queries. - QueryList query_list = 2; - } - - // Optional. Whether to continue executing queries if a query fails. - // The default value is `false`. Setting to `true` can be useful when - // executing independent parallel queries. - bool continue_on_failure = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Mapping of query variable names to values (equivalent to the - // Hive command: `SET name="value";`). - map script_variables = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. A mapping of property names and values, used to configure Hive. - // Properties that conflict with values set by the Dataproc API may be - // overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, - // /etc/hive/conf/hive-site.xml, and classes in user code. - map properties = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of jar files to add to the CLASSPATH of the - // Hive server and Hadoop MapReduce (MR) tasks. Can contain Hive SerDes - // and UDFs. - repeated string jar_file_uris = 6 [(google.api.field_behavior) = OPTIONAL]; -} - -// A Dataproc job for running [Apache Spark -// SQL](http://spark.apache.org/sql/) queries. -message SparkSqlJob { - // Required. The sequence of Spark SQL queries to execute, specified as - // either an HCFS file URI or as a list of queries. - oneof queries { - // The HCFS URI of the script that contains SQL queries. - string query_file_uri = 1; - - // A list of queries. - QueryList query_list = 2; - } - - // Optional. Mapping of query variable names to values (equivalent to the - // Spark SQL command: SET `name="value";`). - map script_variables = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. A mapping of property names to values, used to configure - // Spark SQL's SparkConf. Properties that conflict with values set by the - // Dataproc API may be overwritten. - map properties = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of jar files to be added to the Spark CLASSPATH. - repeated string jar_file_uris = 56 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The runtime log config for job execution. - LoggingConfig logging_config = 6 [(google.api.field_behavior) = OPTIONAL]; -} - -// A Dataproc job for running [Apache Pig](https://pig.apache.org/) -// queries on YARN. -message PigJob { - // Required. The sequence of Pig queries to execute, specified as an HCFS - // file URI or a list of queries. - oneof queries { - // The HCFS URI of the script that contains the Pig queries. - string query_file_uri = 1; - - // A list of queries. - QueryList query_list = 2; - } - - // Optional. Whether to continue executing queries if a query fails. - // The default value is `false`. Setting to `true` can be useful when - // executing independent parallel queries. - bool continue_on_failure = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Mapping of query variable names to values (equivalent to the Pig - // command: `name=[value]`). - map script_variables = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. A mapping of property names to values, used to configure Pig. - // Properties that conflict with values set by the Dataproc API may be - // overwritten. Can include properties set in /etc/hadoop/conf/*-site.xml, - // /etc/pig/conf/pig.properties, and classes in user code. - map properties = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of jar files to add to the CLASSPATH of - // the Pig Client and Hadoop MapReduce (MR) tasks. Can contain Pig UDFs. - repeated string jar_file_uris = 6 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The runtime log config for job execution. - LoggingConfig logging_config = 7 [(google.api.field_behavior) = OPTIONAL]; -} - -// A Dataproc job for running -// [Apache SparkR](https://spark.apache.org/docs/latest/sparkr.html) -// applications on YARN. -message SparkRJob { - // Required. The HCFS URI of the main R file to use as the driver. - // Must be a .R file. - string main_r_file_uri = 1 [(google.api.field_behavior) = REQUIRED]; - - // Optional. The arguments to pass to the driver. Do not include arguments, - // such as `--conf`, that can be set as job properties, since a collision may - // occur that causes an incorrect job submission. - repeated string args = 2 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of files to be placed in the working directory of - // each executor. Useful for naively parallel tasks. - repeated string file_uris = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. HCFS URIs of archives to be extracted into the working directory - // of each executor. Supported file types: - // .jar, .tar, .tar.gz, .tgz, and .zip. - repeated string archive_uris = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. A mapping of property names to values, used to configure SparkR. - // Properties that conflict with values set by the Dataproc API may be - // overwritten. Can include properties set in - // /etc/spark/conf/spark-defaults.conf and classes in user code. - map properties = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The runtime log config for job execution. - LoggingConfig logging_config = 6 [(google.api.field_behavior) = OPTIONAL]; -} - -// A Dataproc job for running [Presto](https://prestosql.io/) queries. -// **IMPORTANT**: The [Dataproc Presto Optional -// Component](https://cloud.google.com/dataproc/docs/concepts/components/presto) -// must be enabled when the cluster is created to submit a Presto job to the -// cluster. -message PrestoJob { - // Required. The sequence of Presto queries to execute, specified as - // either an HCFS file URI or as a list of queries. - oneof queries { - // The HCFS URI of the script that contains SQL queries. - string query_file_uri = 1; - - // A list of queries. - QueryList query_list = 2; - } - - // Optional. Whether to continue executing queries if a query fails. - // The default value is `false`. Setting to `true` can be useful when - // executing independent parallel queries. - bool continue_on_failure = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The format in which query output will be displayed. See the - // Presto documentation for supported output formats - string output_format = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Presto client tags to attach to this query - repeated string client_tags = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. A mapping of property names to values. Used to set Presto - // [session properties](https://prestodb.io/docs/current/sql/set-session.html) - // Equivalent to using the --session flag in the Presto CLI - map properties = 6 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The runtime log config for job execution. - LoggingConfig logging_config = 7 [(google.api.field_behavior) = OPTIONAL]; -} - -// Dataproc job config. -message JobPlacement { - // Required. The name of the cluster where the job will be submitted. - string cluster_name = 1 [(google.api.field_behavior) = REQUIRED]; - - // Output only. A cluster UUID generated by the Dataproc service when - // the job is submitted. - string cluster_uuid = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Dataproc job status. -message JobStatus { - // The job state. - enum State { - // The job state is unknown. - STATE_UNSPECIFIED = 0; - - // The job is pending; it has been submitted, but is not yet running. - PENDING = 1; - - // Job has been received by the service and completed initial setup; - // it will soon be submitted to the cluster. - SETUP_DONE = 8; - - // The job is running on the cluster. - RUNNING = 2; - - // A CancelJob request has been received, but is pending. - CANCEL_PENDING = 3; - - // Transient in-flight resources have been canceled, and the request to - // cancel the running job has been issued to the cluster. - CANCEL_STARTED = 7; - - // The job cancellation was successful. - CANCELLED = 4; - - // The job has completed successfully. - DONE = 5; - - // The job has completed, but encountered an error. - ERROR = 6; - - // Job attempt has failed. The detail field contains failure details for - // this attempt. - // - // Applies to restartable jobs only. - ATTEMPT_FAILURE = 9; - } - - // The job substate. - enum Substate { - // The job substate is unknown. - UNSPECIFIED = 0; - - // The Job is submitted to the agent. - // - // Applies to RUNNING state. - SUBMITTED = 1; - - // The Job has been received and is awaiting execution (it may be waiting - // for a condition to be met). See the "details" field for the reason for - // the delay. - // - // Applies to RUNNING state. - QUEUED = 2; - - // The agent-reported status is out of date, which may be caused by a - // loss of communication between the agent and Dataproc. If the - // agent does not send a timely update, the job will fail. - // - // Applies to RUNNING state. - STALE_STATUS = 3; - } - - // Output only. A state message specifying the overall job state. - State state = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Optional Job state details, such as an error - // description if the state is ERROR. - string details = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The time when this state was entered. - google.protobuf.Timestamp state_start_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Additional state information, which includes - // status reported by the agent. - Substate substate = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Encapsulates the full scoping used to reference a job. -message JobReference { - // Optional. The ID of the Google Cloud Platform project that the job belongs to. If - // specified, must match the request project ID. - string project_id = 1 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The job ID, which must be unique within the project. - // The ID must contain only letters (a-z, A-Z), numbers (0-9), - // underscores (_), or hyphens (-). The maximum length is 100 characters. - // - // If not specified by the caller, the job ID will be provided by the server. - string job_id = 2 [(google.api.field_behavior) = OPTIONAL]; -} - -// A YARN application created by a job. Application information is a subset of -// org.apache.hadoop.yarn.proto.YarnProtos.ApplicationReportProto. -// -// **Beta Feature**: This report is available for testing purposes only. It may -// be changed before final release. -message YarnApplication { - // The application state, corresponding to - // YarnProtos.YarnApplicationStateProto. - enum State { - // Status is unspecified. - STATE_UNSPECIFIED = 0; - - // Status is NEW. - NEW = 1; - - // Status is NEW_SAVING. - NEW_SAVING = 2; - - // Status is SUBMITTED. - SUBMITTED = 3; - - // Status is ACCEPTED. - ACCEPTED = 4; - - // Status is RUNNING. - RUNNING = 5; - - // Status is FINISHED. - FINISHED = 6; - - // Status is FAILED. - FAILED = 7; - - // Status is KILLED. - KILLED = 8; - } - - // Output only. The application name. - string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The application state. - State state = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The numerical progress of the application, from 1 to 100. - float progress = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The HTTP URL of the ApplicationMaster, HistoryServer, or - // TimelineServer that provides application-specific information. The URL uses - // the internal hostname, and requires a proxy server for resolution and, - // possibly, access. - string tracking_url = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// A Dataproc job resource. -message Job { - // Optional. The fully qualified reference to the job, which can be used to - // obtain the equivalent REST path of the job resource. If this property - // is not specified when a job is created, the server generates a - // job_id. - JobReference reference = 1 [(google.api.field_behavior) = OPTIONAL]; - - // Required. Job information, including how, when, and where to - // run the job. - JobPlacement placement = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. The application/framework-specific portion of the job. - oneof type_job { - // Optional. Job is a Hadoop job. - HadoopJob hadoop_job = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a Spark job. - SparkJob spark_job = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a PySpark job. - PySparkJob pyspark_job = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a Hive job. - HiveJob hive_job = 6 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a Pig job. - PigJob pig_job = 7 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a SparkR job. - SparkRJob spark_r_job = 21 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a SparkSql job. - SparkSqlJob spark_sql_job = 12 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a Presto job. - PrestoJob presto_job = 23 [(google.api.field_behavior) = OPTIONAL]; - } - - // Output only. The job status. Additional application-specific - // status information may be contained in the type_job - // and yarn_applications fields. - JobStatus status = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The previous job status. - repeated JobStatus status_history = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The collection of YARN applications spun up by this job. - // - // **Beta** Feature: This report is available for testing purposes only. It - // may be changed before final release. - repeated YarnApplication yarn_applications = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The email address of the user submitting the job. For jobs - // submitted on the cluster, the address is username@hostname. - string submitted_by = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. A URI pointing to the location of the stdout of the job's - // driver program. - string driver_output_resource_uri = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. If present, the location of miscellaneous control files - // which may be used as part of job setup and handling. If not present, - // control files may be placed in the same location as `driver_output_uri`. - string driver_control_files_uri = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional. The labels to associate with this job. - // Label **keys** must contain 1 to 63 characters, and must conform to - // [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). - // Label **values** may be empty, but, if present, must contain 1 to 63 - // characters, and must conform to [RFC - // 1035](https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be - // associated with a job. - map labels = 18 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job scheduling configuration. - JobScheduling scheduling = 20 [(google.api.field_behavior) = OPTIONAL]; - - // Output only. A UUID that uniquely identifies a job within the project - // over time. This is in contrast to a user-settable reference.job_id that - // may be reused over time. - string job_uuid = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates whether the job is completed. If the value is `false`, - // the job is still in progress. If `true`, the job is completed, and - // `status.state` field will indicate if it was successful, failed, - // or cancelled. - bool done = 24 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// Job scheduling options. -message JobScheduling { - // Optional. Maximum number of times per hour a driver may be restarted as - // a result of driver terminating with non-zero code before job is - // reported failed. - // - // A job may be reported as thrashing if driver exits with non-zero code - // 4 times within 10 minute window. - // - // Maximum value is 10. - int32 max_failures_per_hour = 1 [(google.api.field_behavior) = OPTIONAL]; -} - -// Job Operation metadata. -message JobMetadata { - // Output only. The job id. - string job_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Most recent job status. - JobStatus status = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Operation type. - string operation_type = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Job submission time. - google.protobuf.Timestamp start_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// A request to submit a job. -message SubmitJobRequest { - // Required. The ID of the Google Cloud Platform project that the job - // belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The job resource. - Job job = 2 [(google.api.field_behavior) = REQUIRED]; - - // Optional. A unique id used to identify the request. If the server - // receives two [SubmitJobRequest][google.cloud.dataproc.v1beta2.SubmitJobRequest] requests with the same - // id, then the second request will be ignored and the - // first [Job][google.cloud.dataproc.v1beta2.Job] created and stored in the backend - // is returned. - // - // It is recommended to always set this value to a - // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). - // - // The id must contain only letters (a-z, A-Z), numbers (0-9), - // underscores (_), and hyphens (-). The maximum length is 40 characters. - string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; -} - -// A request to get the resource representation for a job in a project. -message GetJobRequest { - // Required. The ID of the Google Cloud Platform project that the job - // belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The job ID. - string job_id = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A request to list jobs in a project. -message ListJobsRequest { - // A matcher that specifies categories of job states. - enum JobStateMatcher { - // Match all jobs, regardless of state. - ALL = 0; - - // Only match jobs in non-terminal states: PENDING, RUNNING, or - // CANCEL_PENDING. - ACTIVE = 1; - - // Only match jobs in terminal states: CANCELLED, DONE, or ERROR. - NON_ACTIVE = 2; - } - - // Required. The ID of the Google Cloud Platform project that the job - // belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 6 [(google.api.field_behavior) = REQUIRED]; - - // Optional. The number of results to return in each response. - int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The page token, returned by a previous call, to request the - // next page of results. - string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. If set, the returned jobs list includes only jobs that were - // submitted to the named cluster. - string cluster_name = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Specifies enumerated categories of jobs to list. - // (default = match ALL jobs). - // - // If `filter` is provided, `jobStateMatcher` will be ignored. - JobStateMatcher job_state_matcher = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. A filter constraining the jobs to list. Filters are - // case-sensitive and have the following syntax: - // - // [field = value] AND [field [= value]] ... - // - // where **field** is `status.state` or `labels.[KEY]`, and `[KEY]` is a label - // key. **value** can be `*` to match all values. - // `status.state` can be either `ACTIVE` or `NON_ACTIVE`. - // Only the logical `AND` operator is supported; space-separated items are - // treated as having an implicit `AND` operator. - // - // Example filter: - // - // status.state = ACTIVE AND labels.env = staging AND labels.starred = * - string filter = 7 [(google.api.field_behavior) = OPTIONAL]; -} - -// A request to update a job. -message UpdateJobRequest { - // Required. The ID of the Google Cloud Platform project that the job - // belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 2 [(google.api.field_behavior) = REQUIRED]; - - // Required. The job ID. - string job_id = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The changes to the job. - Job job = 4 [(google.api.field_behavior) = REQUIRED]; - - // Required. Specifies the path, relative to Job, of - // the field to update. For example, to update the labels of a Job the - // update_mask parameter would be specified as - // labels, and the `PATCH` request body would specify the new - // value. Note: Currently, labels is the only - // field that can be updated. - google.protobuf.FieldMask update_mask = 5 [(google.api.field_behavior) = REQUIRED]; -} - -// A list of jobs in a project. -message ListJobsResponse { - // Output only. Jobs list. - repeated Job jobs = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional. This token is included in the response if there are more results - // to fetch. To fetch additional results, provide this value as the - // `page_token` in a subsequent ListJobsRequest. - string next_page_token = 2 [(google.api.field_behavior) = OPTIONAL]; -} - -// A request to cancel a job. -message CancelJobRequest { - // Required. The ID of the Google Cloud Platform project that the job - // belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The job ID. - string job_id = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A request to delete a job. -message DeleteJobRequest { - // Required. The ID of the Google Cloud Platform project that the job - // belongs to. - string project_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The Dataproc region in which to handle the request. - string region = 3 [(google.api.field_behavior) = REQUIRED]; - - // Required. The job ID. - string job_id = 2 [(google.api.field_behavior) = REQUIRED]; -} diff --git a/google/cloud/dataproc/v1beta2/operations.proto b/google/cloud/dataproc/v1beta2/operations.proto deleted file mode 100644 index 2e98fb82a..000000000 --- a/google/cloud/dataproc/v1beta2/operations.proto +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2020 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.cloud.dataproc.v1beta2; - -import "google/protobuf/timestamp.proto"; -import "google/api/annotations.proto"; - -option go_package = "google.golang.org/genproto/googleapis/cloud/dataproc/v1beta2;dataproc"; -option java_multiple_files = true; -option java_outer_classname = "OperationsProto"; -option java_package = "com.google.cloud.dataproc.v1beta2"; - -// The status of the operation. -message ClusterOperationStatus { - // The operation state. - enum State { - // Unused. - UNKNOWN = 0; - - // The operation has been created. - PENDING = 1; - - // The operation is running. - RUNNING = 2; - - // The operation is done; either cancelled or completed. - DONE = 3; - } - - // Output only. A message containing the operation state. - State state = 1; - - // Output only. A message containing the detailed operation state. - string inner_state = 2; - - // Output only. A message containing any operation metadata details. - string details = 3; - - // Output only. The time this state was entered. - google.protobuf.Timestamp state_start_time = 4; -} - -// Metadata describing the operation. -message ClusterOperationMetadata { - // Output only. Name of the cluster for the operation. - string cluster_name = 7; - - // Output only. Cluster UUID for the operation. - string cluster_uuid = 8; - - // Output only. Current operation status. - ClusterOperationStatus status = 9; - - // Output only. The previous operation status. - repeated ClusterOperationStatus status_history = 10; - - // Output only. The operation type. - string operation_type = 11; - - // Output only. Short description of operation. - string description = 12; - - // Output only. Labels associated with the operation - map labels = 13; - - // Output only. Errors encountered during operation execution. - repeated string warnings = 14; -} diff --git a/google/cloud/dataproc/v1beta2/shared.proto b/google/cloud/dataproc/v1beta2/shared.proto deleted file mode 100644 index ac474aa5a..000000000 --- a/google/cloud/dataproc/v1beta2/shared.proto +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright 2020 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.cloud.dataproc.v1beta2; - -import "google/api/annotations.proto"; - -option go_package = "google.golang.org/genproto/googleapis/cloud/dataproc/v1beta2;dataproc"; -option java_multiple_files = true; -option java_outer_classname = "SharedProto"; -option java_package = "com.google.cloud.dataproc.v1beta2"; - -// Cluster components that can be activated. -enum Component { - // Unspecified component. Specifying this will cause Cluster creation to fail. - COMPONENT_UNSPECIFIED = 0; - - // The Anaconda python distribution. - ANACONDA = 5; - - // The Druid query engine. - DRUID = 9; - - // HBase. - HBASE = 11; - - // The Hive Web HCatalog (the REST service for accessing HCatalog). - HIVE_WEBHCAT = 3; - - // The Jupyter Notebook. - JUPYTER = 1; - - // The Kerberos security feature. - KERBEROS = 7; - - // The Presto query engine. - PRESTO = 6; - - // The Ranger service. - RANGER = 12; - - // The Solr service. - SOLR = 10; - - // The Zeppelin notebook. - ZEPPELIN = 4; - - // The Zookeeper service. - ZOOKEEPER = 8; -} diff --git a/google/cloud/dataproc/v1beta2/workflow_templates.proto b/google/cloud/dataproc/v1beta2/workflow_templates.proto deleted file mode 100644 index 48f2f7192..000000000 --- a/google/cloud/dataproc/v1beta2/workflow_templates.proto +++ /dev/null @@ -1,848 +0,0 @@ -// Copyright 2020 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -syntax = "proto3"; - -package google.cloud.dataproc.v1beta2; - -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/cloud/dataproc/v1beta2/clusters.proto"; -import "google/cloud/dataproc/v1beta2/jobs.proto"; -import "google/longrunning/operations.proto"; -import "google/protobuf/duration.proto"; -import "google/protobuf/empty.proto"; -import "google/protobuf/timestamp.proto"; - -option go_package = "google.golang.org/genproto/googleapis/cloud/dataproc/v1beta2;dataproc"; -option java_multiple_files = true; -option java_outer_classname = "WorkflowTemplatesProto"; -option java_package = "com.google.cloud.dataproc.v1beta2"; - -// The API interface for managing Workflow Templates in the -// Dataproc API. -service WorkflowTemplateService { - option (google.api.default_host) = "dataproc.googleapis.com"; - option (google.api.oauth_scopes) = - "https://www.googleapis.com/auth/cloud-platform"; - - // Creates new workflow template. - rpc CreateWorkflowTemplate(CreateWorkflowTemplateRequest) - returns (WorkflowTemplate) { - option (google.api.http) = { - post: "/v1beta2/{parent=projects/*/regions/*}/workflowTemplates" - body: "template" - additional_bindings { - post: "/v1beta2/{parent=projects/*/locations/*}/workflowTemplates" - body: "template" - } - }; - option (google.api.method_signature) = "parent, template"; - } - - // Retrieves the latest workflow template. - // - // Can retrieve previously instantiated template by specifying optional - // version parameter. - rpc GetWorkflowTemplate(GetWorkflowTemplateRequest) - returns (WorkflowTemplate) { - option (google.api.http) = { - get: "/v1beta2/{name=projects/*/regions/*/workflowTemplates/*}" - additional_bindings { - get: "/v1beta2/{name=projects/*/locations/*/workflowTemplates/*}" - } - }; - option (google.api.method_signature) = "name"; - } - - // Instantiates a template and begins execution. - // - // The returned Operation can be used to track execution of - // workflow by polling - // [operations.get][google.longrunning.Operations.GetOperation]. - // The Operation will complete when entire workflow is finished. - // - // The running workflow can be aborted via - // [operations.cancel][google.longrunning.Operations.CancelOperation]. - // This will cause any inflight jobs to be cancelled and workflow-owned - // clusters to be deleted. - // - // The [Operation.metadata][google.longrunning.Operation.metadata] will be - // [WorkflowMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1beta2#workflowmetadata). - // Also see [Using - // WorkflowMetadata](https://cloud.google.com/dataproc/docs/concepts/workflows/debugging#using_workflowmetadata). - // - // On successful completion, - // [Operation.response][google.longrunning.Operation.response] will be - // [Empty][google.protobuf.Empty]. - rpc InstantiateWorkflowTemplate(InstantiateWorkflowTemplateRequest) - returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v1beta2/{name=projects/*/regions/*/workflowTemplates/*}:instantiate" - body: "*" - additional_bindings { - post: "/v1beta2/{name=projects/*/locations/*/workflowTemplates/*}:instantiate" - body: "*" - } - }; - option (google.api.method_signature) = "name"; - option (google.api.method_signature) = "name, parameters"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "WorkflowMetadata" - }; - } - - // Instantiates a template and begins execution. - // - // This method is equivalent to executing the sequence - // [CreateWorkflowTemplate][google.cloud.dataproc.v1beta2.WorkflowTemplateService.CreateWorkflowTemplate], - // [InstantiateWorkflowTemplate][google.cloud.dataproc.v1beta2.WorkflowTemplateService.InstantiateWorkflowTemplate], - // [DeleteWorkflowTemplate][google.cloud.dataproc.v1beta2.WorkflowTemplateService.DeleteWorkflowTemplate]. - // - // The returned Operation can be used to track execution of - // workflow by polling - // [operations.get][google.longrunning.Operations.GetOperation]. - // The Operation will complete when entire workflow is finished. - // - // The running workflow can be aborted via - // [operations.cancel][google.longrunning.Operations.CancelOperation]. - // This will cause any inflight jobs to be cancelled and workflow-owned - // clusters to be deleted. - // - // The [Operation.metadata][google.longrunning.Operation.metadata] will be - // [WorkflowMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#workflowmetadata). - // Also see [Using - // WorkflowMetadata](https://cloud.google.com/dataproc/docs/concepts/workflows/debugging#using_workflowmetadata). - // - // On successful completion, - // [Operation.response][google.longrunning.Operation.response] will be - // [Empty][google.protobuf.Empty]. - rpc InstantiateInlineWorkflowTemplate( - InstantiateInlineWorkflowTemplateRequest) - returns (google.longrunning.Operation) { - option (google.api.http) = { - post: "/v1beta2/{parent=projects/*/locations/*}/workflowTemplates:instantiateInline" - body: "template" - additional_bindings { - post: "/v1beta2/{parent=projects/*/regions/*}/workflowTemplates:instantiateInline" - body: "template" - } - }; - option (google.api.method_signature) = "parent, template"; - option (google.longrunning.operation_info) = { - response_type: "google.protobuf.Empty" - metadata_type: "WorkflowMetadata" - }; - } - - // Updates (replaces) workflow template. The updated template - // must contain version that matches the current server version. - rpc UpdateWorkflowTemplate(UpdateWorkflowTemplateRequest) - returns (WorkflowTemplate) { - option (google.api.http) = { - put: "/v1beta2/{template.name=projects/*/regions/*/workflowTemplates/*}" - body: "template" - additional_bindings { - put: "/v1beta2/{template.name=projects/*/locations/*/workflowTemplates/*}" - body: "template" - } - }; - option (google.api.method_signature) = "template"; - } - - // Lists workflows that match the specified filter in the request. - rpc ListWorkflowTemplates(ListWorkflowTemplatesRequest) - returns (ListWorkflowTemplatesResponse) { - option (google.api.http) = { - get: "/v1beta2/{parent=projects/*/regions/*}/workflowTemplates" - additional_bindings { - get: "/v1beta2/{parent=projects/*/locations/*}/workflowTemplates" - } - }; - option (google.api.method_signature) = "parent"; - } - - // Deletes a workflow template. It does not cancel in-progress workflows. - rpc DeleteWorkflowTemplate(DeleteWorkflowTemplateRequest) - returns (google.protobuf.Empty) { - option (google.api.http) = { - delete: "/v1beta2/{name=projects/*/regions/*/workflowTemplates/*}" - additional_bindings { - delete: "/v1beta2/{name=projects/*/locations/*/workflowTemplates/*}" - } - }; - option (google.api.method_signature) = "name"; - } -} - -// A Dataproc workflow template resource. -message WorkflowTemplate { - option (google.api.resource) = { - type: "dataproc.googleapis.com/WorkflowTemplate" - pattern: "projects/{project}/regions/{region}/workflowTemplates/{workflow_template}" - pattern: "projects/{project}/locations/{location}/workflowTemplates/{workflow_template}" - history: ORIGINALLY_SINGLE_PATTERN - }; - - // Required. The template id. - // - // The id must contain only letters (a-z, A-Z), numbers (0-9), - // underscores (_), and hyphens (-). Cannot begin or end with underscore - // or hyphen. Must consist of between 3 and 50 characters. - // - // . - string id = 2 [(google.api.field_behavior) = REQUIRED]; - - // Output only. The resource name of the workflow template, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.workflowTemplates`, the resource name of the - // template has the following format: - // `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}` - // - // * For `projects.locations.workflowTemplates`, the resource name of the - // template has the following format: - // `projects/{project_id}/locations/{location}/workflowTemplates/{template_id}` - string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional. Used to perform a consistent read-modify-write. - // - // This field should be left blank for a `CreateWorkflowTemplate` request. It - // is required for an `UpdateWorkflowTemplate` request, and must match the - // current server version. A typical update template flow would fetch the - // current template with a `GetWorkflowTemplate` request, which will return - // the current template with the `version` field filled in with the - // current server version. The user updates other fields in the template, - // then returns it as part of the `UpdateWorkflowTemplate` request. - int32 version = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Output only. The time template was created. - google.protobuf.Timestamp create_time = 4 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The time template was last updated. - google.protobuf.Timestamp update_time = 5 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Optional. The labels to associate with this template. These labels - // will be propagated to all jobs and clusters created by the workflow - // instance. - // - // Label **keys** must contain 1 to 63 characters, and must conform to - // [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). - // - // Label **values** may be empty, but, if present, must contain 1 to 63 - // characters, and must conform to - // [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). - // - // No more than 32 labels can be associated with a template. - map labels = 6 [(google.api.field_behavior) = OPTIONAL]; - - // Required. WorkflowTemplate scheduling information. - WorkflowTemplatePlacement placement = 7; - - // Required. The Directed Acyclic Graph of Jobs to submit. - repeated OrderedJob jobs = 8; - - // Optional. Template parameters whose values are substituted into the - // template. Values for parameters must be provided when the template is - // instantiated. - repeated TemplateParameter parameters = 9 - [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Timeout duration for the DAG of jobs. You can use "s", "m", "h", - // and "d" suffixes for second, minute, hour, and day duration values, - // respectively. The timeout duration must be from 10 minutes ("10m") to 24 - // hours ("24h" or "1d"). The timer begins when the first job is submitted. If - // the workflow is running at the end of the timeout period, any remaining - // jobs are cancelled, the workflow is terminated, and if the workflow was - // running on a [managed - // cluster](https://cloud.google.com/dataproc/docs/concepts/workflows/using-workflows#configuring_or_selecting_a_cluster), - // the cluster is deleted. - google.protobuf.Duration dag_timeout = 10 - [(google.api.field_behavior) = OPTIONAL]; -} - -// Specifies workflow execution target. -// -// Either `managed_cluster` or `cluster_selector` is required. -message WorkflowTemplatePlacement { - // Required. Specifies where workflow executes; either on a managed - // cluster or an existing cluster chosen by labels. - oneof placement { - // Optional. A cluster that is managed by the workflow. - ManagedCluster managed_cluster = 1; - - // Optional. A selector that chooses target cluster for jobs based - // on metadata. - // - // The selector is evaluated at the time each job is submitted. - ClusterSelector cluster_selector = 2; - } -} - -// Cluster that is managed by the workflow. -message ManagedCluster { - // Required. The cluster name prefix. A unique cluster name will be formed by - // appending a random suffix. - // - // The name must contain only lower-case letters (a-z), numbers (0-9), - // and hyphens (-). Must begin with a letter. Cannot begin or end with - // hyphen. Must consist of between 2 and 35 characters. - string cluster_name = 2; - - // Required. The cluster configuration. - ClusterConfig config = 3; - - // Optional. The labels to associate with this cluster. - // - // Label keys must be between 1 and 63 characters long, and must conform to - // the following PCRE regular expression: - // [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62} - // - // Label values must be between 1 and 63 characters long, and must conform to - // the following PCRE regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63} - // - // No more than 32 labels can be associated with a given cluster. - map labels = 4; -} - -// A selector that chooses target cluster for jobs based on metadata. -message ClusterSelector { - // Optional. The zone where workflow process executes. This parameter does not - // affect the selection of the cluster. - // - // If unspecified, the zone of the first cluster matching the selector - // is used. - string zone = 1; - - // Required. The cluster labels. Cluster must have all labels - // to match. - map cluster_labels = 2; -} - -// A job executed by the workflow. -message OrderedJob { - // Required. The step id. The id must be unique among all jobs - // within the template. - // - // The step id is used as prefix for job id, as job - // `goog-dataproc-workflow-step-id` label, and in - // [prerequisiteStepIds][google.cloud.dataproc.v1beta2.OrderedJob.prerequisite_step_ids] - // field from other steps. - // - // The id must contain only letters (a-z, A-Z), numbers (0-9), - // underscores (_), and hyphens (-). Cannot begin or end with underscore - // or hyphen. Must consist of between 3 and 50 characters. - string step_id = 1 [(google.api.field_behavior) = REQUIRED]; - - // Required. The job definition. - oneof job_type { - // Optional. Job is a Hadoop job. - HadoopJob hadoop_job = 2 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a Spark job. - SparkJob spark_job = 3 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a PySpark job. - PySparkJob pyspark_job = 4 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a Hive job. - HiveJob hive_job = 5 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a Pig job. - PigJob pig_job = 6 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a SparkR job. - SparkRJob spark_r_job = 11 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a SparkSql job. - SparkSqlJob spark_sql_job = 7 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job is a Presto job. - PrestoJob presto_job = 12 [(google.api.field_behavior) = OPTIONAL]; - } - - // Optional. The labels to associate with this job. - // - // Label keys must be between 1 and 63 characters long, and must conform to - // the following regular expression: - // [\p{Ll}\p{Lo}][\p{Ll}\p{Lo}\p{N}_-]{0,62} - // - // Label values must be between 1 and 63 characters long, and must conform to - // the following regular expression: [\p{Ll}\p{Lo}\p{N}_-]{0,63} - // - // No more than 32 labels can be associated with a given job. - map labels = 8 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. Job scheduling configuration. - JobScheduling scheduling = 9 [(google.api.field_behavior) = OPTIONAL]; - - // Optional. The optional list of prerequisite job step_ids. - // If not specified, the job will start at the beginning of workflow. - repeated string prerequisite_step_ids = 10 - [(google.api.field_behavior) = OPTIONAL]; -} - -// A configurable parameter that replaces one or more fields in the template. -// Parameterizable fields: -// - Labels -// - File uris -// - Job properties -// - Job arguments -// - Script variables -// - Main class (in HadoopJob and SparkJob) -// - Zone (in ClusterSelector) -message TemplateParameter { - // Required. Parameter name. - // The parameter name is used as the key, and paired with the - // parameter value, which are passed to the template when the template - // is instantiated. - // The name must contain only capital letters (A-Z), numbers (0-9), and - // underscores (_), and must not start with a number. The maximum length is - // 40 characters. - string name = 1; - - // Required. Paths to all fields that the parameter replaces. - // A field is allowed to appear in at most one parameter's list of field - // paths. - // - // A field path is similar in syntax to a - // [google.protobuf.FieldMask][google.protobuf.FieldMask]. For example, a - // field path that references the zone field of a workflow template's cluster - // selector would be specified as `placement.clusterSelector.zone`. - // - // Also, field paths can reference fields using the following syntax: - // - // * Values in maps can be referenced by key: - // * labels['key'] - // * placement.clusterSelector.clusterLabels['key'] - // * placement.managedCluster.labels['key'] - // * placement.clusterSelector.clusterLabels['key'] - // * jobs['step-id'].labels['key'] - // - // * Jobs in the jobs list can be referenced by step-id: - // * jobs['step-id'].hadoopJob.mainJarFileUri - // * jobs['step-id'].hiveJob.queryFileUri - // * jobs['step-id'].pySparkJob.mainPythonFileUri - // * jobs['step-id'].hadoopJob.jarFileUris[0] - // * jobs['step-id'].hadoopJob.archiveUris[0] - // * jobs['step-id'].hadoopJob.fileUris[0] - // * jobs['step-id'].pySparkJob.pythonFileUris[0] - // - // * Items in repeated fields can be referenced by a zero-based index: - // * jobs['step-id'].sparkJob.args[0] - // - // * Other examples: - // * jobs['step-id'].hadoopJob.properties['key'] - // * jobs['step-id'].hadoopJob.args[0] - // * jobs['step-id'].hiveJob.scriptVariables['key'] - // * jobs['step-id'].hadoopJob.mainJarFileUri - // * placement.clusterSelector.zone - // - // It may not be possible to parameterize maps and repeated fields in their - // entirety since only individual map values and individual items in repeated - // fields can be referenced. For example, the following field paths are - // invalid: - // - // - placement.clusterSelector.clusterLabels - // - jobs['step-id'].sparkJob.args - repeated string fields = 2; - - // Optional. Brief description of the parameter. - // Must not exceed 1024 characters. - string description = 3; - - // Optional. Validation rules to be applied to this parameter's value. - ParameterValidation validation = 4; -} - -// Configuration for parameter validation. -message ParameterValidation { - // Required. The type of validation to be performed. - oneof validation_type { - // Validation based on regular expressions. - RegexValidation regex = 1; - - // Validation based on a list of allowed values. - ValueValidation values = 2; - } -} - -// Validation based on regular expressions. -message RegexValidation { - // Required. RE2 regular expressions used to validate the parameter's value. - // The value must match the regex in its entirety (substring - // matches are not sufficient). - repeated string regexes = 1; -} - -// Validation based on a list of allowed values. -message ValueValidation { - // Required. List of allowed values for the parameter. - repeated string values = 1; -} - -// A Dataproc workflow template resource. -message WorkflowMetadata { - // The operation state. - enum State { - // Unused. - UNKNOWN = 0; - - // The operation has been created. - PENDING = 1; - - // The operation is running. - RUNNING = 2; - - // The operation is done; either cancelled or completed. - DONE = 3; - } - - // Output only. The resource name of the workflow template as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.workflowTemplates`, the resource name of the - // template has the following format: - // `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}` - // - // * For `projects.locations.workflowTemplates`, the resource name of the - // template has the following format: - // `projects/{project_id}/locations/{location}/workflowTemplates/{template_id}` - string template = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The version of template at the time of - // workflow instantiation. - int32 version = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The create cluster operation metadata. - ClusterOperation create_cluster = 3 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The workflow graph. - WorkflowGraph graph = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The delete cluster operation metadata. - ClusterOperation delete_cluster = 5 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The workflow state. - State state = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The name of the target cluster. - string cluster_name = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Map from parameter names to values that were used for those parameters. - map parameters = 8; - - // Output only. Workflow start time. - google.protobuf.Timestamp start_time = 9 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Workflow end time. - google.protobuf.Timestamp end_time = 10 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The UUID of target cluster. - string cluster_uuid = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The timeout duration for the DAG of jobs. - // Minimum timeout duration is 10 minutes and maximum is 24 hours, expressed - // as a - // [google.protobuf.Duration][https://developers.google.com/protocol-buffers/docs/proto3#json_mapping]. - // For example, "1800" = 1800 seconds/30 minutes duration. - google.protobuf.Duration dag_timeout = 12 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. DAG start time, which is only set for workflows with - // [dag_timeout][google.cloud.dataproc.v1beta2.WorkflowMetadata.dag_timeout] - // when the DAG begins. - google.protobuf.Timestamp dag_start_time = 13 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. DAG end time, which is only set for workflows with - // [dag_timeout][google.cloud.dataproc.v1beta2.WorkflowMetadata.dag_timeout] - // when the DAG ends. - google.protobuf.Timestamp dag_end_time = 14 - [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// The cluster operation triggered by a workflow. -message ClusterOperation { - // Output only. The id of the cluster operation. - string operation_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Error, if operation failed. - string error = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Indicates the operation is done. - bool done = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// The workflow graph. -message WorkflowGraph { - // Output only. The workflow nodes. - repeated WorkflowNode nodes = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// The workflow node. -message WorkflowNode { - // The workflow node state. - enum NodeState { - // State is unspecified. - NODE_STATUS_UNSPECIFIED = 0; - - // The node is awaiting prerequisite node to finish. - BLOCKED = 1; - - // The node is runnable but not running. - RUNNABLE = 2; - - // The node is running. - RUNNING = 3; - - // The node completed successfully. - COMPLETED = 4; - - // The node failed. A node can be marked FAILED because - // its ancestor or peer failed. - FAILED = 5; - } - - // Output only. The name of the node. - string step_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. Node's prerequisite nodes. - repeated string prerequisite_step_ids = 2 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The job id; populated after the node enters RUNNING state. - string job_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The node state. - NodeState state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. The error detail. - string error = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// A request to create a workflow template. -message CreateWorkflowTemplateRequest { - // Required. The resource name of the region or location, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.workflowTemplates,create`, the resource name of the - // region has the following format: - // `projects/{project_id}/regions/{region}` - // - // * For `projects.locations.workflowTemplates.create`, the resource name of - // the location has the following format: - // `projects/{project_id}/locations/{location}` - string parent = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - child_type: "dataproc.googleapis.com/WorkflowTemplate" - } - ]; - - // Required. The Dataproc workflow template to create. - WorkflowTemplate template = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// A request to fetch a workflow template. -message GetWorkflowTemplateRequest { - // Required. The resource name of the workflow template, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.workflowTemplates.get`, the resource name of the - // template has the following format: - // `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}` - // - // * For `projects.locations.workflowTemplates.get`, the resource name of the - // template has the following format: - // `projects/{project_id}/locations/{location}/workflowTemplates/{template_id}` - string name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "dataproc.googleapis.com/WorkflowTemplate" - } - ]; - - // Optional. The version of workflow template to retrieve. Only previously - // instantiated versions can be retrieved. - // - // If unspecified, retrieves the current version. - int32 version = 2; -} - -// A request to instantiate a workflow template. -message InstantiateWorkflowTemplateRequest { - // Required. The resource name of the workflow template, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.workflowTemplates.instantiate`, the resource name - // of the template has the following format: - // `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}` - // - // * For `projects.locations.workflowTemplates.instantiate`, the resource name - // of the template has the following format: - // `projects/{project_id}/locations/{location}/workflowTemplates/{template_id}` - string name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "dataproc.googleapis.com/WorkflowTemplate" - } - ]; - - // Optional. The version of workflow template to instantiate. If specified, - // the workflow will be instantiated only if the current version of - // the workflow template has the supplied version. - // - // This option cannot be used to instantiate a previous version of - // workflow template. - int32 version = 2; - - // Deprecated. Please use `request_id` field instead. - string instance_id = 3 [deprecated = true]; - - // Optional. A tag that prevents multiple concurrent workflow - // instances with the same tag from running. This mitigates risk of - // concurrent instances started due to retries. - // - // It is recommended to always set this value to a - // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). - // - // The tag must contain only letters (a-z, A-Z), numbers (0-9), - // underscores (_), and hyphens (-). The maximum length is 40 characters. - string request_id = 5; - - // Optional. Map from parameter names to values that should be used for those - // parameters. Values may not exceed 100 characters. - map parameters = 4; -} - -// A request to instantiate an inline workflow template. -message InstantiateInlineWorkflowTemplateRequest { - // Required. The resource name of the region or location, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.workflowTemplates,instantiateinline`, the resource - // name of the region has the following format: - // `projects/{project_id}/regions/{region}` - // - // * For `projects.locations.workflowTemplates.instantiateinline`, the - // resource name of the location has the following format: - // `projects/{project_id}/locations/{location}` - string parent = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - child_type: "dataproc.googleapis.com/WorkflowTemplate" - } - ]; - - // Required. The workflow template to instantiate. - WorkflowTemplate template = 2 [(google.api.field_behavior) = REQUIRED]; - - // Deprecated. Please use `request_id` field instead. - string instance_id = 3; - - // Optional. A tag that prevents multiple concurrent workflow - // instances with the same tag from running. This mitigates risk of - // concurrent instances started due to retries. - // - // It is recommended to always set this value to a - // [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier). - // - // The tag must contain only letters (a-z, A-Z), numbers (0-9), - // underscores (_), and hyphens (-). The maximum length is 40 characters. - string request_id = 4; -} - -// A request to update a workflow template. -message UpdateWorkflowTemplateRequest { - // Required. The updated workflow template. - // - // The `template.version` field must match the current version. - WorkflowTemplate template = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// A request to list workflow templates in a project. -message ListWorkflowTemplatesRequest { - // Required. The resource name of the region or location, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.workflowTemplates,list`, the resource - // name of the region has the following format: - // `projects/{project_id}/regions/{region}` - // - // * For `projects.locations.workflowTemplates.list`, the - // resource name of the location has the following format: - // `projects/{project_id}/locations/{location}` - string parent = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - child_type: "dataproc.googleapis.com/WorkflowTemplate" - } - ]; - - // Optional. The maximum number of results to return in each response. - int32 page_size = 2; - - // Optional. The page token, returned by a previous call, to request the - // next page of results. - string page_token = 3; -} - -// A response to a request to list workflow templates in a project. -message ListWorkflowTemplatesResponse { - // Output only. WorkflowTemplates list. - repeated WorkflowTemplate templates = 1 - [(google.api.field_behavior) = OUTPUT_ONLY]; - - // Output only. This token is included in the response if there are more - // results to fetch. To fetch additional results, provide this value as the - // page_token in a subsequent ListWorkflowTemplatesRequest. - string next_page_token = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; -} - -// A request to delete a workflow template. -// -// Currently started workflows will remain running. -message DeleteWorkflowTemplateRequest { - // Required. The resource name of the workflow template, as described - // in https://cloud.google.com/apis/design/resource_names. - // - // * For `projects.regions.workflowTemplates.delete`, the resource name - // of the template has the following format: - // `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}` - // - // * For `projects.locations.workflowTemplates.instantiate`, the resource name - // of the template has the following format: - // `projects/{project_id}/locations/{location}/workflowTemplates/{template_id}` - string name = 1 [ - (google.api.field_behavior) = REQUIRED, - (google.api.resource_reference) = { - type: "dataproc.googleapis.com/WorkflowTemplate" - } - ]; - - // Optional. The version of workflow template to delete. If specified, - // will only delete the template if the current server version matches - // specified version. - int32 version = 2; -} diff --git a/google/cloud/dataqna/BUILD.bazel b/google/cloud/dataqna/BUILD.bazel new file mode 100644 index 000000000..ee1a7024b --- /dev/null +++ b/google/cloud/dataqna/BUILD.bazel @@ -0,0 +1,42 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-dataqna. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for dataqna. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1alpha in this case. +ruby_cloud_gapic_library( + name = "dataqna_ruby_wrapper", + srcs = ["//google/cloud/dataqna/v1alpha:dataqna_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-dataqna", + "ruby-cloud-env-prefix=BIGQUERY_DATAQNA", + "ruby-cloud-wrapper-of=v1alpha:0.0", + "ruby-cloud-path-override=data_qn_a=dataqna", + "ruby-cloud-namespace-override=Dataqna=DataQnA", + "ruby-cloud-product-url=https://cloud.google.com/bigquery/docs/dataqna/", + "ruby-cloud-api-id=dataqna.googleapis.com", + "ruby-cloud-api-shortname=dataqna", + ], + ruby_cloud_description = "Data QnA is a natural language question and answer service for BigQuery data.", + ruby_cloud_title = "BigQuery Data QnA", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-dataqna-ruby", + deps = [ + ":dataqna_ruby_wrapper", + ], +) diff --git a/google/cloud/dataqna/v1alpha/BUILD.bazel b/google/cloud/dataqna/v1alpha/BUILD.bazel index 0c42a85e4..d3c67abd5 100644 --- a/google/cloud/dataqna/v1alpha/BUILD.bazel +++ b/google/cloud/dataqna/v1alpha/BUILD.bazel @@ -176,14 +176,13 @@ py_gapic_assembly_pkg( ############################################################################## # PHP -# DO NOT OVERRIDE this PHP microgenerator section with autogenerated rules. ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -275,7 +274,6 @@ ruby_cloud_gapic_library( "ruby-cloud-env-prefix=BIGQUERY_DATAQNA", "ruby-cloud-path-override=data_qn_a=dataqna", "ruby-cloud-namespace-override=Dataqna=DataQnA", - "ruby-cloud-product-url=https://cloud.google.com/bigquery/docs/dataqna/", "ruby-cloud-api-id=dataqna.googleapis.com", "ruby-cloud-api-shortname=dataqna", ], diff --git a/google/cloud/datastream/BUILD.bazel b/google/cloud/datastream/BUILD.bazel new file mode 100644 index 000000000..b82218727 --- /dev/null +++ b/google/cloud/datastream/BUILD.bazel @@ -0,0 +1,39 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-datastream. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for datastream. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1alpha1 in this case. +ruby_cloud_gapic_library( + name = "datastream_ruby_wrapper", + srcs = ["//google/cloud/datastream/v1alpha1:datastream_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-datastream", + "ruby-cloud-wrapper-of=v1alpha1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/datastream/", + "ruby-cloud-api-id=datastream.googleapis.com", + "ruby-cloud-api-shortname=datastream", + ], + ruby_cloud_description = "Datastream is a serverless and easy-to-use change data capture (CDC) and replication service. It allows you to synchronize data across heterogeneous databases and applications reliably, and with minimal latency and downtime.", + ruby_cloud_title = "Datastream", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-datastream-ruby", + deps = [ + ":datastream_ruby_wrapper", + ], +) diff --git a/google/cloud/datastream/v1alpha1/BUILD.bazel b/google/cloud/datastream/v1alpha1/BUILD.bazel new file mode 100644 index 000000000..d4da41cc4 --- /dev/null +++ b/google/cloud/datastream/v1alpha1/BUILD.bazel @@ -0,0 +1,347 @@ +# This file was automatically generated by BuildFileGenerator +# https://github.com/googleapis/rules_gapic/tree/master/bazel + +# Most of the manual changes to this file will be overwritten. +# It's **only** allowed to change the following rule attribute values: +# - names of *_gapic_assembly_* rules +# - certain parameters of *_gapic_library rules, including but not limited to: +# * extra_protoc_parameters +# * extra_protoc_file_parameters +# The complete list of preserved parameters can be found in the source code. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "datastream_proto", + srcs = [ + "datastream.proto", + "datastream_resources.proto", + ], + deps = [ + "//google/api:annotations_proto", + "//google/api:client_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "//google/longrunning:operations_proto", + "@com_google_protobuf//:duration_proto", + "@com_google_protobuf//:field_mask_proto", + "@com_google_protobuf//:timestamp_proto", + ], +) + +proto_library_with_info( + name = "datastream_proto_with_info", + deps = [ + ":datastream_proto", + "//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "datastream_java_proto", + deps = [":datastream_proto"], +) + +java_grpc_library( + name = "datastream_java_grpc", + srcs = [":datastream_proto"], + deps = [":datastream_java_proto"], +) + +java_gapic_library( + name = "datastream_java_gapic", + srcs = [":datastream_proto_with_info"], + grpc_service_config = "datastream_grpc_service_config.json", + test_deps = [ + ":datastream_java_grpc", + ], + deps = [ + ":datastream_java_proto", + ], +) + +java_gapic_test( + name = "datastream_java_gapic_test_suite", + test_classes = [ + "com.google.cloud.datastream.v1alpha1.DatastreamClientTest", + ], + runtime_deps = [":datastream_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-datastream-v1alpha1-java", + deps = [ + ":datastream_java_gapic", + ":datastream_java_grpc", + ":datastream_java_proto", + ":datastream_proto", + ], +) + +############################################################################## +# Go +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_gapic_assembly_pkg", + "go_gapic_library", + "go_proto_library", + "go_test", +) + +go_proto_library( + name = "datastream_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/cloud/datastream/v1alpha1", + protos = [":datastream_proto"], + deps = [ + "//google/api:annotations_go_proto", + "//google/longrunning:longrunning_go_proto", + ], +) + +go_gapic_library( + name = "datastream_go_gapic", + srcs = [":datastream_proto_with_info"], + grpc_service_config = "datastream_grpc_service_config.json", + importpath = "cloud.google.com/go/datastream/apiv1alpha1;datastream", + service_yaml = "datastream_v1alpha1.yaml", + metadata = True, + deps = [ + ":datastream_go_proto", + "//google/longrunning:longrunning_go_proto", + "@com_google_cloud_go//longrunning/autogen:go_default_library", + "@com_google_cloud_go//longrunning:go_default_library", + "@io_bazel_rules_go//proto/wkt:duration_go_proto", + ], +) + +go_test( + name = "datastream_go_gapic_test", + srcs = [":datastream_go_gapic_srcjar_test"], + embed = [":datastream_go_gapic"], + importpath = "cloud.google.com/go/datastream/apiv1alpha1", +) + +# Open Source Packages +go_gapic_assembly_pkg( + name = "gapi-cloud-datastream-v1alpha1-go", + deps = [ + ":datastream_go_gapic", + ":datastream_go_gapic_srcjar-test.srcjar", + ":datastream_go_gapic_srcjar-metadata.srcjar", + ":datastream_go_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "datastream_py_gapic", + srcs = [":datastream_proto"], + grpc_service_config = "datastream_grpc_service_config.json", +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "datastream-v1alpha1-py", + deps = [ + ":datastream_py_gapic", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "datastream_php_proto", + deps = [":datastream_proto"], +) + +php_grpc_library( + name = "datastream_php_grpc", + srcs = [":datastream_proto"], + deps = [":datastream_php_proto"], +) + +php_gapic_library( + name = "datastream_php_gapic", + srcs = [":datastream_proto_with_info"], + grpc_service_config = "datastream_grpc_service_config.json", + service_yaml = "datastream_v1alpha1.yaml", + deps = [ + ":datastream_php_grpc", + ":datastream_php_proto", + ], +) + +# Open Source Packages +php_gapic_assembly_pkg( + name = "google-cloud-datastream-v1alpha1-php", + deps = [ + ":datastream_php_gapic", + ":datastream_php_grpc", + ":datastream_php_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "datastream_nodejs_gapic", + package_name = "@google-cloud/datastream", + src = ":datastream_proto_with_info", + extra_protoc_parameters = ["metadata"], + grpc_service_config = "datastream_grpc_service_config.json", + package = "google.cloud.datastream.v1alpha1", + service_yaml = "datastream_v1alpha1.yaml", + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "datastream-v1alpha1-nodejs", + deps = [ + ":datastream_nodejs_gapic", + ":datastream_proto", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_gapic_assembly_pkg", + "ruby_cloud_gapic_library", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "datastream_ruby_proto", + deps = [":datastream_proto"], +) + +ruby_grpc_library( + name = "datastream_ruby_grpc", + srcs = [":datastream_proto"], + deps = [":datastream_ruby_proto"], +) + +ruby_cloud_gapic_library( + name = "datastream_ruby_gapic", + srcs = [":datastream_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-datastream-v1alpha1", + "ruby-cloud-product-url=https://cloud.google.com/datastream/", + "ruby-cloud-api-id=datastream.googleapis.com", + "ruby-cloud-api-shortname=datastream", + ], + grpc_service_config = "datastream_grpc_service_config.json", + ruby_cloud_description = "Datastream is a serverless and easy-to-use change data capture (CDC) and replication service. It allows you to synchronize data across heterogeneous databases and applications reliably, and with minimal latency and downtime.", + ruby_cloud_title = "Datastream V1alpha1", + deps = [ + ":datastream_ruby_grpc", + ":datastream_ruby_proto", + ], +) + +# Open Source Packages +ruby_gapic_assembly_pkg( + name = "google-cloud-datastream-v1alpha1-ruby", + deps = [ + ":datastream_ruby_gapic", + ":datastream_ruby_grpc", + ":datastream_ruby_proto", + ], +) + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", + "csharp_gapic_library", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "datastream_csharp_proto", + deps = [":datastream_proto"], +) + +csharp_grpc_library( + name = "datastream_csharp_grpc", + srcs = [":datastream_proto"], + deps = [":datastream_csharp_proto"], +) + +csharp_gapic_library( + name = "datastream_csharp_gapic", + srcs = [":datastream_proto_with_info"], + common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", + grpc_service_config = "datastream_grpc_service_config.json", + deps = [ + ":datastream_csharp_grpc", + ":datastream_csharp_proto", + ], +) + +# Open Source Packages +csharp_gapic_assembly_pkg( + name = "google-cloud-datastream-v1alpha1-csharp", + deps = [ + ":datastream_csharp_gapic", + ":datastream_csharp_grpc", + ":datastream_csharp_proto", + ], +) + +############################################################################## +# C++ +############################################################################## +# Put your C++ rules here diff --git a/google/cloud/datastream/v1alpha1/datastream.proto b/google/cloud/datastream/v1alpha1/datastream.proto new file mode 100644 index 000000000..c924cbbf5 --- /dev/null +++ b/google/cloud/datastream/v1alpha1/datastream.proto @@ -0,0 +1,895 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.datastream.v1alpha1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/cloud/datastream/v1alpha1/datastream_resources.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option csharp_namespace = "Google.Cloud.Datastream.V1Alpha1"; +option go_package = "google.golang.org/genproto/googleapis/cloud/datastream/v1alpha1;datastream"; +option java_multiple_files = true; +option java_outer_classname = "CloudDatastreamServiceProto"; +option java_package = "com.google.cloud.datastream.v1alpha1"; +option php_namespace = "Google\\Cloud\\Datastream\\V1alpha1"; +option ruby_package = "Google::Cloud::Datastream::V1alpha1"; + +// Datastream service +service Datastream { + option (google.api.default_host) = "datastream.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Use this method to list connection profiles created in a project and + // location. + rpc ListConnectionProfiles(ListConnectionProfilesRequest) returns (ListConnectionProfilesResponse) { + option (google.api.http) = { + get: "/v1alpha1/{parent=projects/*/locations/*}/connectionProfiles" + }; + option (google.api.method_signature) = "parent"; + } + + // Use this method to get details about a connection profile. + rpc GetConnectionProfile(GetConnectionProfileRequest) returns (ConnectionProfile) { + option (google.api.http) = { + get: "/v1alpha1/{name=projects/*/locations/*/connectionProfiles/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Use this method to create a connection profile in a project and location. + rpc CreateConnectionProfile(CreateConnectionProfileRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1alpha1/{parent=projects/*/locations/*}/connectionProfiles" + body: "connection_profile" + }; + option (google.api.method_signature) = "parent,connection_profile,connection_profile_id"; + option (google.longrunning.operation_info) = { + response_type: "ConnectionProfile" + metadata_type: "OperationMetadata" + }; + } + + // Use this method to update the parameters of a connection profile. + rpc UpdateConnectionProfile(UpdateConnectionProfileRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1alpha1/{connection_profile.name=projects/*/locations/*/connectionProfiles/*}" + body: "connection_profile" + }; + option (google.api.method_signature) = "connection_profile,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "ConnectionProfile" + metadata_type: "OperationMetadata" + }; + } + + // Use this method to delete a connection profile.. + rpc DeleteConnectionProfile(DeleteConnectionProfileRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1alpha1/{name=projects/*/locations/*/connectionProfiles/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Use this method to discover a connection profile. + // The discover API call exposes the data objects and metadata belonging to + // the profile. Typically, a request returns children data objects under a + // parent data object that's optionally supplied in the request. + rpc DiscoverConnectionProfile(DiscoverConnectionProfileRequest) returns (DiscoverConnectionProfileResponse) { + option (google.api.http) = { + post: "/v1alpha1/{parent=projects/*/locations/*}/connectionProfiles:discover" + body: "*" + }; + } + + // Use this method to list streams in a project and location. + rpc ListStreams(ListStreamsRequest) returns (ListStreamsResponse) { + option (google.api.http) = { + get: "/v1alpha1/{parent=projects/*/locations/*}/streams" + }; + option (google.api.method_signature) = "parent"; + } + + // Use this method to get details about a stream. + rpc GetStream(GetStreamRequest) returns (Stream) { + option (google.api.http) = { + get: "/v1alpha1/{name=projects/*/locations/*/streams/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Use this method to create a stream. + rpc CreateStream(CreateStreamRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1alpha1/{parent=projects/*/locations/*}/streams" + body: "stream" + }; + option (google.api.method_signature) = "parent,stream,stream_id"; + option (google.longrunning.operation_info) = { + response_type: "Stream" + metadata_type: "OperationMetadata" + }; + } + + // Use this method to update the configuration of a stream. + rpc UpdateStream(UpdateStreamRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1alpha1/{stream.name=projects/*/locations/*/streams/*}" + body: "stream" + }; + option (google.api.method_signature) = "stream,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Stream" + metadata_type: "OperationMetadata" + }; + } + + // Use this method to delete a stream. + rpc DeleteStream(DeleteStreamRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1alpha1/{name=projects/*/locations/*/streams/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Use this method to fetch any errors associated with a stream. + rpc FetchErrors(FetchErrorsRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1alpha1/{stream=projects/*/locations/*/streams/*}:fetchErrors" + body: "*" + }; + option (google.longrunning.operation_info) = { + response_type: "FetchErrorsResponse" + metadata_type: "OperationMetadata" + }; + } + + // The FetchStaticIps API call exposes the static ips used by Datastream. + // Typically, a request returns children data objects under + // a parent data object that's optionally supplied in the request. + rpc FetchStaticIps(FetchStaticIpsRequest) returns (FetchStaticIpsResponse) { + option (google.api.http) = { + get: "/v1alpha1/{name=projects/*/locations/*}:fetchStaticIps" + }; + option (google.api.method_signature) = "name"; + } + + // Use this method to create a private connectivity configuration. + rpc CreatePrivateConnection(CreatePrivateConnectionRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1alpha1/{parent=projects/*/locations/*}/privateConnections" + body: "private_connection" + }; + option (google.api.method_signature) = "parent,private_connection,private_connection_id"; + option (google.longrunning.operation_info) = { + response_type: "PrivateConnection" + metadata_type: "OperationMetadata" + }; + } + + // Use this method to get details about a private connectivity configuration. + rpc GetPrivateConnection(GetPrivateConnectionRequest) returns (PrivateConnection) { + option (google.api.http) = { + get: "/v1alpha1/{name=projects/*/locations/*/privateConnections/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Use this method to list private connectivity configurations in a project + // and location. + rpc ListPrivateConnections(ListPrivateConnectionsRequest) returns (ListPrivateConnectionsResponse) { + option (google.api.http) = { + get: "/v1alpha1/{parent=projects/*/locations/*}/privateConnections" + }; + option (google.api.method_signature) = "parent"; + } + + // Use this method to delete a private connectivity configuration. + rpc DeletePrivateConnection(DeletePrivateConnectionRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1alpha1/{name=projects/*/locations/*/privateConnections/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Use this method to create a route for a private connectivity in a project + // and location. + rpc CreateRoute(CreateRouteRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1alpha1/{parent=projects/*/locations/*/privateConnections/*}/routes" + body: "route" + }; + option (google.api.method_signature) = "parent,route,route_id"; + option (google.longrunning.operation_info) = { + response_type: "Route" + metadata_type: "OperationMetadata" + }; + } + + // Use this method to get details about a route. + rpc GetRoute(GetRouteRequest) returns (Route) { + option (google.api.http) = { + get: "/v1alpha1/{name=projects/*/locations/*/privateConnections/*/routes/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Use this method to list routes created for a private connectivity in a + // project and location. + rpc ListRoutes(ListRoutesRequest) returns (ListRoutesResponse) { + option (google.api.http) = { + get: "/v1alpha1/{parent=projects/*/locations/*/privateConnections/*}/routes" + }; + option (google.api.method_signature) = "parent"; + } + + // Use this method to delete a route. + rpc DeleteRoute(DeleteRouteRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1alpha1/{name=projects/*/locations/*/privateConnections/*/routes/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } +} + +// Request message for 'discover' ConnectionProfile request. +message DiscoverConnectionProfileRequest { + // Required. The parent resource of the ConnectionProfile type. Must be in the + // format `projects/*/locations/*`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "datastream.googleapis.com/ConnectionProfile" + } + ]; + + // The connection profile on which to run discover. + oneof target { + // An ad-hoc ConnectionProfile configuration. + ConnectionProfile connection_profile = 200; + + // A reference to an existing ConnectionProfile. + string connection_profile_name = 201; + } + + oneof depth { + // Whether to retrieve the full hierarchy of data objects (TRUE) or only the + // current level (FALSE). + bool recursive = 3; + + // The number of hierarchy levels below the current level to be retrieved. + int32 recursion_depth = 4; + } + + // The data object to enrich with child data objects and metadata. + oneof data_object { + // Oracle RDBMS to enrich with child data objects and metadata. + OracleRdbms oracle_rdbms = 100; + + // MySQL RDBMS to enrich with child data objects and metadata. + MysqlRdbms mysql_rdbms = 101; + } +} + +message DiscoverConnectionProfileResponse { + // The data object that has been enriched by the discover API call. + oneof data_object { + // Enriched Oracle RDBMS object. + OracleRdbms oracle_rdbms = 100; + + // Enriched MySQL RDBMS object. + MysqlRdbms mysql_rdbms = 101; + } +} + +// Request message for 'FetchStaticIps' request. +message FetchStaticIpsRequest { + // Required. The name resource of the Response type. Must be in the + // format `projects/*/locations/*`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "locations.googleapis.com/Location" + } + ]; + + // Maximum number of Ips to return, will likely not be specified. + int32 page_size = 2; + + // A page token, received from a previous `ListStaticIps` call. + // will likely not be specified. + string page_token = 3; +} + +// Response message for a 'FetchStaticIps' response. +message FetchStaticIpsResponse { + // list of static ips by account + repeated string static_ips = 1; + + // A token that can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; +} + +// Request message for 'FetchErrors' request. +message FetchErrorsRequest { + // Name of the Stream resource for which to fetch any errors. + string stream = 1 [(google.api.resource_reference) = { + type: "datastream.googleapis.com/Stream" + }]; +} + +// Response message for a 'FetchErrors' response. +message FetchErrorsResponse { + // The list of errors on the Stream. + repeated Error errors = 1; +} + +message ListConnectionProfilesRequest { + // Required. The parent that owns the collection of connection profiles. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "datastream.googleapis.com/ConnectionProfile" + } + ]; + + // Maximum number of connection profiles to return. + // If unspecified, at most 50 connection profiles will be returned. + // The maximum value is 1000; values above 1000 will be coerced to 1000. + int32 page_size = 2; + + // Page token received from a previous `ListConnectionProfiles` call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to `ListConnectionProfiles` + // must match the call that provided the page token. + string page_token = 3; + + // Filter request. + string filter = 4; + + // Order by fields for the result. + string order_by = 5; +} + +message ListConnectionProfilesResponse { + // List of connection profiles. + repeated ConnectionProfile connection_profiles = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +message GetConnectionProfileRequest { + // Required. The name of the connection profile resource to get. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datastream.googleapis.com/ConnectionProfile" + } + ]; +} + +message CreateConnectionProfileRequest { + // Required. The parent that owns the collection of ConnectionProfiles. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "datastream.googleapis.com/ConnectionProfile" + } + ]; + + // Required. The connection profile identifier. + string connection_profile_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The connection profile resource to create. + ConnectionProfile connection_profile = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +message UpdateConnectionProfileRequest { + // Optional. Field mask is used to specify the fields to be overwritten in the + // ConnectionProfile resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then all fields will be overwritten. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The ConnectionProfile to update. + ConnectionProfile connection_profile = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +message DeleteConnectionProfileRequest { + // Required. The name of the connection profile resource to delete. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datastream.googleapis.com/ConnectionProfile" + } + ]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +message ListStreamsRequest { + // Required. The parent that owns the collection of streams. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "datastream.googleapis.com/Stream" + } + ]; + + // Maximum number of streams to return. + // If unspecified, at most 50 streams will be returned. The maximum + // value is 1000; values above 1000 will be coerced to 1000. + int32 page_size = 2; + + // Page token received from a previous `ListStreams` call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to `ListStreams` + // must match the call that provided the page token. + string page_token = 3; + + // Filter request. + string filter = 4; + + // Order by fields for the result. + string order_by = 5; +} + +message ListStreamsResponse { + // List of streams + repeated Stream streams = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +message GetStreamRequest { + // Required. The name of the stream resource to get. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datastream.googleapis.com/Stream" + } + ]; +} + +message CreateStreamRequest { + // Required. The parent that owns the collection of streams. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "datastream.googleapis.com/Stream" + } + ]; + + // Required. The stream identifier. + string stream_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The stream resource to create. + Stream stream = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Only validate the stream, but do not create any resources. + // The default is false. + bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Create the stream without validating it. + bool force = 6 [(google.api.field_behavior) = OPTIONAL]; +} + +message UpdateStreamRequest { + // Optional. Field mask is used to specify the fields to be overwritten in the + // stream resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then all fields will be overwritten. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Required. The stream resource to update. + Stream stream = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Only validate the stream with the changes, without actually updating it. + // The default is false. + bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Execute the update without validating it. + bool force = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +message DeleteStreamRequest { + // Required. The name of the stream resource to delete. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datastream.googleapis.com/Stream" + } + ]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Represents the metadata of the long-running operation. +message OperationMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Server-defined resource path for the target of the operation. + string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the verb executed by the operation. + string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Human-readable status of the operation, if any. + string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies whether the user has requested cancellation + // of the operation. Operations that have successfully been cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`. + bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. API version used to start the operation. + string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Results of executed validations if there are any. + ValidationResult validation_result = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +message CreatePrivateConnectionRequest { + // Required. The parent that owns the collection of PrivateConnections. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "datastream.googleapis.com/PrivateConnection" + } + ]; + + // Required. The private connectivity identifier. + string private_connection_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The Private Connectivity resource to create. + PrivateConnection private_connection = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +message ListPrivateConnectionsRequest { + // Required. The parent that owns the collection of private connectivity configurations. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "datastream.googleapis.com/PrivateConnection" + } + ]; + + // Maximum number of private connectivity configurations to return. + // If unspecified, at most 50 private connectivity configurations that will be + // returned. The maximum value is 1000; values above 1000 will be coerced to + // 1000. + int32 page_size = 2; + + // Page token received from a previous `ListPrivateConnections` call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // `ListPrivateConnections` must match the call that provided the page + // token. + string page_token = 3; + + // Filter request. + string filter = 4; + + // Order by fields for the result. + string order_by = 5; +} + +message ListPrivateConnectionsResponse { + // List of private connectivity configurations. + repeated PrivateConnection private_connections = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +message DeletePrivateConnectionRequest { + // Required. The name of the private connectivity configuration to delete. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datastream.googleapis.com/PrivateConnection" + } + ]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, any child routes that belong to this PrivateConnection will + // also be deleted. + bool force = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +message GetPrivateConnectionRequest { + // Required. The name of the private connectivity configuration to get. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datastream.googleapis.com/PrivateConnection" + } + ]; +} + +// route creation request +message CreateRouteRequest { + // Required. The parent that owns the collection of Routes. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "datastream.googleapis.com/Route" + } + ]; + + // Required. The Route identifier. + string route_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The Route resource to create. + Route route = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; +} + +// route list request +message ListRoutesRequest { + // Required. The parent that owns the collection of Routess. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "datastream.googleapis.com/Route" + } + ]; + + // Maximum number of Routes to return. The service may return + // fewer than this value. If unspecified, at most 50 Routes + // will be returned. The maximum value is 1000; values above 1000 will be + // coerced to 1000. + int32 page_size = 2; + + // Page token received from a previous `ListRoutes` call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other parameters provided to + // `ListRoutes` must match the call that provided the page + // token. + string page_token = 3; + + // Filter request. + string filter = 4; + + // Order by fields for the result. + string order_by = 5; +} + +// route list response +message ListRoutesResponse { + // List of Routes. + repeated Route routes = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// route deletion request +message DeleteRouteRequest { + // Required. The name of the Route resource to delete. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datastream.googleapis.com/Route" + } + ]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// route get request +message GetRouteRequest { + // Required. The name of the Route resource to get. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "datastream.googleapis.com/Route" + } + ]; +} diff --git a/google/cloud/datastream/v1alpha1/datastream_grpc_service_config.json b/google/cloud/datastream/v1alpha1/datastream_grpc_service_config.json new file mode 100644 index 000000000..cfd18a6c9 --- /dev/null +++ b/google/cloud/datastream/v1alpha1/datastream_grpc_service_config.json @@ -0,0 +1,28 @@ +{ + "methodConfig": [{ + "name": [{ "service": "google.cloud.datastream.v1alpha1.Datastream" }], + "timeout": "60s", + "retryPolicy": { + "maxAttempts": 5, + "initialBackoff": "1s", + "maxBackoff": "10s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": ["UNAVAILABLE"] + } + }, + { + "name": [ + { "service": "google.cloud.datastream.v1alpha1.Datastream", "method": "CreateConnectionProfile" }, + { "service": "google.cloud.datastream.v1alpha1.Datastream", "method": "UpdateConnectionProfile" }, + { "service": "google.cloud.datastream.v1alpha1.Datastream", "method": "DeleteConnectionProfile" }, + { "service": "google.cloud.datastream.v1alpha1.Datastream", "method": "CreateStream" }, + { "service": "google.cloud.datastream.v1alpha1.Datastream", "method": "UpdateStream" }, + { "service": "google.cloud.datastream.v1alpha1.Datastream", "method": "DeleteStream" }, + { "service": "google.cloud.datastream.v1alpha1.Datastream", "method": "CreatePrivateConnection" }, + { "service": "google.cloud.datastream.v1alpha1.Datastream", "method": "DeletePrivateConnection" }, + { "service": "google.cloud.datastream.v1alpha1.Datastream", "method": "CreateRoute" }, + { "service": "google.cloud.datastream.v1alpha1.Datastream", "method": "DeleteRoute" } + ], + "timeout": "60s" + }] +} diff --git a/google/cloud/datastream/v1alpha1/datastream_resources.proto b/google/cloud/datastream/v1alpha1/datastream_resources.proto new file mode 100644 index 000000000..73320b912 --- /dev/null +++ b/google/cloud/datastream/v1alpha1/datastream_resources.proto @@ -0,0 +1,684 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.datastream.v1alpha1; + +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/duration.proto"; +import "google/protobuf/timestamp.proto"; +import "google/api/annotations.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/datastream/v1alpha1;datastream"; +option java_multiple_files = true; +option java_outer_classname = "CloudDatastreamResourcesProto"; +option java_package = "com.google.cloud.datastream.v1alpha1"; +option csharp_namespace = "Google.Cloud.Datastream.V1Alpha1"; +option php_namespace = "Google\\Cloud\\Datastream\\V1alpha1"; +option ruby_package = "Google::Cloud::Datastream::V1alpha1"; + +// Oracle database profile. +message OracleProfile { + // Required. Hostname for the Oracle connection. + string hostname = 1 [(google.api.field_behavior) = REQUIRED]; + + // Port for the Oracle connection, default value is 1521. + int32 port = 2; + + // Required. Username for the Oracle connection. + string username = 3 [(google.api.field_behavior) = REQUIRED]; + + // Required. Password for the Oracle connection. + string password = 4 [(google.api.field_behavior) = REQUIRED]; + + // Required. Database for the Oracle connection. + string database_service = 5 [(google.api.field_behavior) = REQUIRED]; + + // Connection string attributes + map connection_attributes = 6; +} + +// MySQL database profile. +message MysqlProfile { + // Required. Hostname for the MySQL connection. + string hostname = 1 [(google.api.field_behavior) = REQUIRED]; + + // Port for the MySQL connection, default value is 3306. + int32 port = 2; + + // Required. Username for the MySQL connection. + string username = 3 [(google.api.field_behavior) = REQUIRED]; + + // Required. Input only. Password for the MySQL connection. + string password = 4 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = INPUT_ONLY + ]; + + // SSL configuration for the MySQL connection. + MysqlSslConfig ssl_config = 5; +} + +// Cloud Storage bucket profile. +message GcsProfile { + // Required. The full project and resource path for Cloud Storage bucket including the + // name. + string bucket_name = 1 [(google.api.field_behavior) = REQUIRED]; + + // The root path inside the Cloud Storage bucket. + string root_path = 2; +} + +// No connectivity settings. +message NoConnectivitySettings { + +} + +// Static IP address connectivity. +message StaticServiceIpConnectivity { + +} + +// Forward SSH Tunnel connectivity. +message ForwardSshTunnelConnectivity { + // Required. Hostname for the SSH tunnel. + string hostname = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. Username for the SSH tunnel. + string username = 2 [(google.api.field_behavior) = REQUIRED]; + + // Port for the SSH tunnel, default value is 22. + int32 port = 3; + + oneof authentication_method { + // Input only. SSH password. + string password = 100 [(google.api.field_behavior) = INPUT_ONLY]; + + // Input only. SSH private key. + string private_key = 101 [(google.api.field_behavior) = INPUT_ONLY]; + } +} + +// The VPC Peering configuration is used to create VPC peering between +// Datastream and the consumer's VPC. +message VpcPeeringConfig { + // Required. fully qualified name of the VPC Datastream will peer to. + string vpc_name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. A free subnet for peering. (CIDR of /29) + string subnet = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// The PrivateConnection resource is used to establish private connectivity +// between Datastream and a customer's network. +message PrivateConnection { + option (google.api.resource) = { + type: "datastream.googleapis.com/PrivateConnection" + pattern: "projects/{project}/locations/{location}/privateConnections/{private_connection}" + }; + + // Private Connection state. + enum State { + STATE_UNSPECIFIED = 0; + + // The private connection is in creation state - creating resources. + CREATING = 1; + + // The private connection has been created with all of it's resources. + CREATED = 2; + + // The private connection creation has failed. + FAILED = 3; + } + + // Output only. The resource's name. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The create time of the resource. + google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The update time of the resource. + google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Labels. + map labels = 4; + + // Required. Display name. + string display_name = 5 [(google.api.field_behavior) = REQUIRED]; + + // Output only. The state of the Private Connection. + State state = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. In case of error, the details of the error in a user-friendly format. + Error error = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // VPC Peering Config + VpcPeeringConfig vpc_peering_config = 100; +} + +// Private Connectivity +message PrivateConnectivity { + string private_connection_name = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// The Route resource is the child of the PrivateConnection resource. +// It used to define a route for a PrivateConnection setup. +message Route { + option (google.api.resource) = { + type: "datastream.googleapis.com/Route" + pattern: "projects/{project}/locations/{location}/privateConnections/{private_connection}/routes/{route}" + }; + + // Output only. The resource's name. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The create time of the resource. + google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The update time of the resource. + google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Labels. + map labels = 4; + + // Required. Display name. + string display_name = 5 [(google.api.field_behavior) = REQUIRED]; + + // Required. Destination address for connection + string destination_address = 6 [(google.api.field_behavior) = REQUIRED]; + + // Destination port for connection + int32 destination_port = 7; +} + +// MySQL SSL configuration information. +message MysqlSslConfig { + // Input only. PEM-encoded private key associated with the Client Certificate. + // If this field is used then the 'client_certificate' and the + // 'ca_certificate' fields are mandatory. + string client_key = 11 [(google.api.field_behavior) = INPUT_ONLY]; + + // Output only. Indicates whether the client_key field is set. + bool client_key_set = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Input only. PEM-encoded certificate that will be used by the replica to + // authenticate against the source database server. If this field is used + // then the 'client_key' and the 'ca_certificate' fields are mandatory. + string client_certificate = 13 [(google.api.field_behavior) = INPUT_ONLY]; + + // Output only. Indicates whether the client_certificate field is set. + bool client_certificate_set = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Input only. PEM-encoded certificate of the CA that signed the source database + // server's certificate. + string ca_certificate = 15 [(google.api.field_behavior) = INPUT_ONLY]; + + // Output only. Indicates whether the ca_certificate field is set. + bool ca_certificate_set = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +message ConnectionProfile { + option (google.api.resource) = { + type: "datastream.googleapis.com/ConnectionProfile" + pattern: "projects/{project}/locations/{location}/connectionProfiles/{connection_profile}" + }; + + // Output only. The resource's name. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The create time of the resource. + google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The update time of the resource. + google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Labels. + map labels = 4; + + // Required. Display name. + string display_name = 5 [(google.api.field_behavior) = REQUIRED]; + + // Connection configuration for the ConnectionProfile. + oneof profile { + // Oracle ConnectionProfile configuration. + OracleProfile oracle_profile = 100; + + // Cloud Storage ConnectionProfile configuration. + GcsProfile gcs_profile = 101; + + // MySQL ConnectionProfile configuration. + MysqlProfile mysql_profile = 102; + } + + // Connectivity options used to establish a connection to the profile. + oneof connectivity { + // No connectivity option chosen. + NoConnectivitySettings no_connectivity = 200; + + // Static Service IP connectivity. + StaticServiceIpConnectivity static_service_ip_connectivity = 201; + + // Forward SSH tunnel connectivity. + ForwardSshTunnelConnectivity forward_ssh_connectivity = 202; + + // Private connectivity. + PrivateConnectivity private_connectivity = 203; + } +} + +// Oracle Column. +message OracleColumn { + // Column name. + string column_name = 1; + + // The Oracle data type. + string data_type = 2; + + // Column length. + int32 length = 3; + + // Column precision. + int32 precision = 4; + + // Column scale. + int32 scale = 5; + + // Column encoding. + string encoding = 6; + + // Whether or not the column represents a primary key. + bool primary_key = 7; + + // Whether or not the column can accept a null value. + bool nullable = 8; + + // The ordinal position of the column in the table. + int32 ordinal_position = 9; +} + +// Oracle table. +message OracleTable { + // Table name. + string table_name = 1; + + // Oracle columns in the schema. + // When unspecified as part of inclue/exclude lists, includes/excludes + // everything. + repeated OracleColumn oracle_columns = 2; +} + +// Oracle schema. +message OracleSchema { + // Schema name. + string schema_name = 1; + + // Tables in the schema. + repeated OracleTable oracle_tables = 2; +} + +// Oracle database structure. +message OracleRdbms { + // Oracle schemas/databases in the database server. + repeated OracleSchema oracle_schemas = 1; +} + +// Oracle data source configuration +message OracleSourceConfig { + // Oracle objects to include in the stream. + OracleRdbms allowlist = 1; + + // Oracle objects to exclude from the stream. + OracleRdbms rejectlist = 2; +} + +// MySQL Column. +message MysqlColumn { + // Column name. + string column_name = 1; + + // The MySQL data type. Full data types list can be found here: + // https://dev.mysql.com/doc/refman/8.0/en/data-types.html + string data_type = 2; + + // Column length. + int32 length = 3; + + // Column collation. + string collation = 4; + + // Whether or not the column represents a primary key. + bool primary_key = 5; + + // Whether or not the column can accept a null value. + bool nullable = 6; + + // The ordinal position of the column in the table. + int32 ordinal_position = 7; +} + +// MySQL table. +message MysqlTable { + // Table name. + string table_name = 1; + + // MySQL columns in the database. + // When unspecified as part of include/exclude lists, includes/excludes + // everything. + repeated MysqlColumn mysql_columns = 2; +} + +// MySQL database. +message MysqlDatabase { + // Database name. + string database_name = 1; + + // Tables in the database. + repeated MysqlTable mysql_tables = 2; +} + +// MySQL database structure +message MysqlRdbms { + // Mysql databases on the server + repeated MysqlDatabase mysql_databases = 1; +} + +// MySQL source configuration +message MysqlSourceConfig { + // MySQL objects to retrieve from the source. + MysqlRdbms allowlist = 1; + + // MySQL objects to exclude from the stream. + MysqlRdbms rejectlist = 2; +} + +// The configuration of the stream source. +message SourceConfig { + // Required. Source connection profile identifier. + string source_connection_profile_name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Stream configuration that is specific to the data source type. + oneof source_stream_config { + // Oracle data source configuration + OracleSourceConfig oracle_source_config = 100; + + // MySQL data source configuration + MysqlSourceConfig mysql_source_config = 101; + } +} + +// AVRO file format configuration. +message AvroFileFormat { + +} + +// File format in Cloud Storage. +enum GcsFileFormat { + option deprecated = true; + + // Unspecified Cloud Storage file format. + GCS_FILE_FORMAT_UNSPECIFIED = 0; + + // Avro file format + AVRO = 1; +} + +// Schema file format. +enum SchemaFileFormat { + // Unspecified schema file format. + SCHEMA_FILE_FORMAT_UNSPECIFIED = 0; + + // Do not attach schema file. + NO_SCHEMA_FILE = 1; + + // Avro schema format. + AVRO_SCHEMA_FILE = 2; +} + +// JSON file format configuration. +message JsonFileFormat { + // Json file compression. + enum JsonCompression { + // Unspecified json file compression. + JSON_COMPRESSION_UNSPECIFIED = 0; + + // Do not compress JSON file. + NO_COMPRESSION = 1; + + // Gzip compression. + GZIP = 2; + } + + // The schema file format along JSON data files. + SchemaFileFormat schema_file_format = 1; + + // Compression of the loaded JSON file. + JsonCompression compression = 2; +} + +// Google Cloud Storage destination configuration +message GcsDestinationConfig { + // Path inside the Cloud Storage bucket to write data to. + string path = 1; + + // File format that data should be written in. + // Deprecated field - use file_format instead. + GcsFileFormat gcs_file_format = 2 [deprecated = true]; + + // The maximum file size to be saved in the bucket. + int32 file_rotation_mb = 3; + + // The maximum duration for which new events are added before a file is + // closed and a new file is created. + google.protobuf.Duration file_rotation_interval = 4; + + // File Format that the data should be written in. + oneof file_format { + // AVRO file format configuration. + AvroFileFormat avro_file_format = 100; + + // JSON file format configuration. + JsonFileFormat json_file_format = 101; + } +} + +// The configuration of the stream destination. +message DestinationConfig { + // Required. Destination connection profile identifier. + string destination_connection_profile_name = 1 [(google.api.field_behavior) = REQUIRED]; + + // Stream configuration that is specific to the data destination type. + oneof destination_stream_config { + GcsDestinationConfig gcs_destination_config = 100; + } +} + +message Stream { + option (google.api.resource) = { + type: "datastream.googleapis.com/Stream" + pattern: "projects/{project}/locations/{location}/streams/{stream}" + }; + + // Backfill strategy to automatically backfill the Stream's objects. + // Specific objects can be excluded. + message BackfillAllStrategy { + // List of objects to exclude. + oneof excluded_objects { + // Oracle data source objects to avoid backfilling. + OracleRdbms oracle_excluded_objects = 1; + + // MySQL data source objects to avoid backfilling. + MysqlRdbms mysql_excluded_objects = 2; + } + } + + // Backfill strategy to disable automatic backfill for the Stream's objects. + message BackfillNoneStrategy { + + } + + // Stream state. + enum State { + // Unspecified stream state. + STATE_UNSPECIFIED = 0; + + // The stream has been created. + CREATED = 1; + + // The stream is running. + RUNNING = 2; + + // The stream is paused. + PAUSED = 3; + + // The stream is in maintenance mode. + // + // Updates are rejected on the resource in this state. + MAINTENANCE = 4; + + // The stream is experiencing an error that is preventing data from being + // streamed. + FAILED = 5; + + // The stream has experienced a terminal failure. + FAILED_PERMANENTLY = 6; + + // The stream is starting, but not yet running. + STARTING = 7; + + // The Stream is no longer reading new events, but still writing events in + // the buffer. + DRAINING = 8; + } + + // Output only. The stream's name. + string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The creation time of the stream. + google.protobuf.Timestamp create_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The last update time of the stream. + google.protobuf.Timestamp update_time = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Labels. + map labels = 4; + + // Required. Display name. + string display_name = 5 [(google.api.field_behavior) = REQUIRED]; + + // Required. Source connection profile configuration. + SourceConfig source_config = 6 [(google.api.field_behavior) = REQUIRED]; + + // Required. Destination connection profile configuration. + DestinationConfig destination_config = 7 [(google.api.field_behavior) = REQUIRED]; + + // The state of the stream. + State state = 8; + + // Stream backfill strategy. + oneof backfill_strategy { + // Automatically backfill objects included in the stream source + // configuration. Specific objects can be excluded. + BackfillAllStrategy backfill_all = 101; + + // Do not automatically backfill any objects. + BackfillNoneStrategy backfill_none = 102; + } + + // Output only. Errors on the Stream. + repeated Error errors = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Represent a user-facing Error. +message Error { + // A title that explains the reason for the error. + string reason = 1; + + // A unique identifier for this specific error, + // allowing it to be traced throughout the system in logs and API responses. + string error_uuid = 2; + + // A message containing more information about the error that occurred. + string message = 3; + + // The time when the error occurred. + google.protobuf.Timestamp error_time = 4; + + // Additional information about the error. + map details = 5; +} + +// Contains the current validation results. +message ValidationResult { + // A list of validations (includes both executed as well as not executed + // validations). + repeated Validation validations = 1; +} + +message Validation { + // Validation execution status. + enum Status { + // Unspecified status. + STATUS_UNSPECIFIED = 0; + + // Validation did not execute. + NOT_EXECUTED = 1; + + // Validation failed. + FAILED = 2; + + // Validation passed. + PASSED = 3; + } + + // A short description of the validation. + string description = 1; + + // Validation execution status. + Status status = 2; + + // Messages reflecting the validation results. + repeated ValidationMessage message = 3; + + // A custom code identifying this validation. + string code = 4; +} + +// Represent user-facing validation result message. +message ValidationMessage { + // Validation message level. + enum Level { + // Unspecified level. + LEVEL_UNSPECIFIED = 0; + + // Potentially cause issues with the Stream. + WARNING = 1; + + // Definitely cause issues with the Stream. + ERROR = 2; + } + + // The result of the validation. + string message = 1; + + // Message severity level (warning or error). + Level level = 2; + + // Additional metadata related to the result. + map metadata = 3; + + // A custom code identifying this specific message. + string code = 4; +} diff --git a/google/cloud/datastream/v1alpha1/datastream_v1alpha1.yaml b/google/cloud/datastream/v1alpha1/datastream_v1alpha1.yaml new file mode 100644 index 000000000..f0143225f --- /dev/null +++ b/google/cloud/datastream/v1alpha1/datastream_v1alpha1.yaml @@ -0,0 +1,69 @@ +type: google.api.Service +config_version: 3 +name: datastream.googleapis.com +title: Datastream API + +apis: +- name: google.cloud.datastream.v1alpha1.Datastream + +types: +- name: google.cloud.datastream.v1alpha1.Error +- name: google.cloud.datastream.v1alpha1.FetchErrorsResponse +- name: google.cloud.datastream.v1alpha1.OperationMetadata +- name: google.cloud.datastream.v1alpha1.ValidationResult + +documentation: + rules: + - selector: google.cloud.location.Locations.GetLocation + description: Gets information about a location. + + - selector: google.cloud.location.Locations.ListLocations + description: Lists information about the supported locations for this service. + +backend: + rules: + - selector: 'google.cloud.datastream.v1alpha1.Datastream.*' + deadline: 60.0 + - selector: google.cloud.datastream.v1alpha1.Datastream.DiscoverConnectionProfile + deadline: 120.0 + - selector: google.cloud.location.Locations.GetLocation + deadline: 60.0 + - selector: google.cloud.location.Locations.ListLocations + deadline: 60.0 + - selector: 'google.longrunning.Operations.*' + deadline: 60.0 + +http: + rules: + - selector: google.cloud.location.Locations.GetLocation + get: '/v1alpha1/{name=projects/*/locations/*}' + - selector: google.cloud.location.Locations.ListLocations + get: '/v1alpha1/{name=projects/*}/locations' + - selector: google.longrunning.Operations.CancelOperation + post: '/v1alpha1/{name=projects/*/locations/*/operations/*}:cancel' + body: '*' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/v1alpha1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/v1alpha1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v1alpha1/{name=projects/*/locations/*}/operations' + +authentication: + rules: + - selector: 'google.cloud.datastream.v1alpha1.Datastream.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.GetLocation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.ListLocations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.longrunning.Operations.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/deploy/BUILD.bazel b/google/cloud/deploy/BUILD.bazel new file mode 100644 index 000000000..74a55988d --- /dev/null +++ b/google/cloud/deploy/BUILD.bazel @@ -0,0 +1,39 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-deploy. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for clouddeploy. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v1 in this case. +ruby_cloud_gapic_library( + name = "clouddeploy_ruby_wrapper", + srcs = ["//google/cloud/deploy/v1:deploy_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-deploy", + "ruby-cloud-wrapper-of=v1:0.0", + "ruby-cloud-product-url=https://cloud.google.com/deploy/", + "ruby-cloud-api-id=clouddeploy.googleapis.com", + "ruby-cloud-api-shortname=clouddeploy", + ], + ruby_cloud_description = "Google Cloud Deploy is a managed service that automates delivery of your applications to a series of target environments in a defined promotion sequence.", + ruby_cloud_title = "Google Cloud Deploy", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-deploy-ruby", + deps = [ + ":clouddeploy_ruby_wrapper", + ], +) diff --git a/google/cloud/deploy/v1/BUILD.bazel b/google/cloud/deploy/v1/BUILD.bazel new file mode 100644 index 000000000..b5dda8fc2 --- /dev/null +++ b/google/cloud/deploy/v1/BUILD.bazel @@ -0,0 +1,366 @@ +# This file was automatically generated by BuildFileGenerator +# https://github.com/googleapis/rules_gapic/tree/master/bazel + +# Most of the manual changes to this file will be overwritten. +# It's **only** allowed to change the following rule attribute values: +# - names of *_gapic_assembly_* rules +# - certain parameters of *_gapic_library rules, including but not limited to: +# * extra_protoc_parameters +# * extra_protoc_file_parameters +# The complete list of preserved parameters can be found in the source code. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +############################################################################## +# Common +############################################################################## +load("@rules_proto//proto:defs.bzl", "proto_library") +load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") + +proto_library( + name = "deploy_proto", + srcs = [ + "cloud_deploy.proto", + ], + deps = [ + "//google/api:annotations_proto", + "//google/api:client_proto", + "//google/api:field_behavior_proto", + "//google/api:resource_proto", + "//google/longrunning:operations_proto", + "//google/type:date_proto", + "@com_google_protobuf//:field_mask_proto", + "@com_google_protobuf//:timestamp_proto", + ], +) + +proto_library_with_info( + name = "deploy_proto_with_info", + deps = [ + ":deploy_proto", + "//google/cloud:common_resources_proto", + ], +) + +############################################################################## +# Java +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "java_gapic_assembly_gradle_pkg", + "java_gapic_library", + "java_gapic_test", + "java_grpc_library", + "java_proto_library", +) + +java_proto_library( + name = "deploy_java_proto", + deps = [":deploy_proto"], +) + +java_grpc_library( + name = "deploy_java_grpc", + srcs = [":deploy_proto"], + deps = [":deploy_java_proto"], +) + +java_gapic_library( + name = "deploy_java_gapic", + srcs = [":deploy_proto_with_info"], + gapic_yaml = None, + grpc_service_config = "clouddeploy_grpc_service_config.json", + service_yaml = "clouddeploy_v1.yaml", + test_deps = [ + ":deploy_java_grpc", + ], + deps = [ + ":deploy_java_proto", + "//google/api:api_java_proto", + ], +) + +java_gapic_test( + name = "deploy_java_gapic_test_suite", + test_classes = [ + "com.google.cloud.deploy.v1.CloudDeployClientTest", + ], + runtime_deps = [":deploy_java_gapic_test"], +) + +# Open Source Packages +java_gapic_assembly_gradle_pkg( + name = "google-cloud-deploy-v1-java", + deps = [ + ":deploy_java_gapic", + ":deploy_java_grpc", + ":deploy_java_proto", + ":deploy_proto", + ], +) + +############################################################################## +# Go +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "go_gapic_assembly_pkg", + "go_gapic_library", + "go_proto_library", + "go_test", +) + +go_proto_library( + name = "deploy_go_proto", + compilers = ["@io_bazel_rules_go//proto:go_grpc"], + importpath = "google.golang.org/genproto/googleapis/cloud/deploy/v1", + protos = [":deploy_proto"], + deps = [ + "//google/api:annotations_go_proto", + "//google/longrunning:longrunning_go_proto", + "//google/type:date_go_proto", + ], +) + +go_gapic_library( + name = "deploy_go_gapic", + srcs = [":deploy_proto_with_info"], + grpc_service_config = "clouddeploy_grpc_service_config.json", + importpath = "cloud.google.com/go/deploy/apiv1;deploy", + service_yaml = "clouddeploy_v1.yaml", + metadata = True, + deps = [ + ":deploy_go_proto", + "//google/longrunning:longrunning_go_proto", + "@com_google_cloud_go//longrunning/autogen:go_default_library", + "@com_google_cloud_go//longrunning:go_default_library", + ], +) + +go_test( + name = "deploy_go_gapic_test", + srcs = [":deploy_go_gapic_srcjar_test"], + embed = [":deploy_go_gapic"], + importpath = "cloud.google.com/go/deploy/apiv1", +) + +# Open Source Packages +go_gapic_assembly_pkg( + name = "gapi-cloud-deploy-v1-go", + deps = [ + ":deploy_go_gapic", + ":deploy_go_gapic_srcjar-test.srcjar", + ":deploy_go_gapic_srcjar-metadata.srcjar", + ":deploy_go_proto", + ], +) + +############################################################################## +# Python +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "py_gapic_assembly_pkg", + "py_gapic_library", +) + +py_gapic_library( + name = "deploy_py_gapic", + srcs = [":deploy_proto"], + grpc_service_config = "clouddeploy_grpc_service_config.json", +) + +# Open Source Packages +py_gapic_assembly_pkg( + name = "deploy-v1-py", + deps = [ + ":deploy_py_gapic", + ], +) + +############################################################################## +# PHP +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", +) + +php_proto_library( + name = "deploy_php_proto", + deps = [":deploy_proto"], +) + +php_grpc_library( + name = "deploy_php_grpc", + srcs = [":deploy_proto"], + deps = [":deploy_php_proto"], +) + +php_gapic_library( + name = "deploy_php_gapic", + srcs = [":deploy_proto_with_info"], + grpc_service_config = "clouddeploy_grpc_service_config.json", + service_yaml = "clouddeploy_v1.yaml", + deps = [ + ":deploy_php_grpc", + ":deploy_php_proto", + ], +) + +# Open Source Packages +php_gapic_assembly_pkg( + name = "google-cloud-deploy-v1-php", + deps = [ + ":deploy_php_gapic", + ":deploy_php_grpc", + ":deploy_php_proto", + ], +) + +############################################################################## +# Node.js +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "nodejs_gapic_assembly_pkg", + "nodejs_gapic_library", +) + +nodejs_gapic_library( + name = "deploy_nodejs_gapic", + package_name = "@google-cloud/deploy", + src = ":deploy_proto_with_info", + extra_protoc_parameters = ["metadata"], + grpc_service_config = "clouddeploy_grpc_service_config.json", + package = "google.cloud.deploy.v1", + service_yaml = "clouddeploy_v1.yaml", + deps = [], +) + +nodejs_gapic_assembly_pkg( + name = "deploy-v1-nodejs", + deps = [ + ":deploy_nodejs_gapic", + ":deploy_proto", + ], +) + +############################################################################## +# Ruby +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_gapic_assembly_pkg", + "ruby_cloud_gapic_library", + "ruby_grpc_library", + "ruby_proto_library", +) + +ruby_proto_library( + name = "deploy_ruby_proto", + deps = [":deploy_proto"], +) + +ruby_grpc_library( + name = "deploy_ruby_grpc", + srcs = [":deploy_proto"], + deps = [":deploy_ruby_proto"], +) + +ruby_cloud_gapic_library( + name = "deploy_ruby_gapic", + srcs = [":deploy_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-deploy-v1", + "ruby-cloud-product-url=https://cloud.google.com/deploy/", + "ruby-cloud-api-id=clouddeploy.googleapis.com", + "ruby-cloud-api-shortname=clouddeploy", + "ruby-cloud-yard-strict=false", + ], + grpc_service_config = "clouddeploy_grpc_service_config.json", + ruby_cloud_description = "Google Cloud Deploy is a managed service that automates delivery of your applications to a series of target environments in a defined promotion sequence.", + ruby_cloud_title = "Google Cloud Deploy V1", + deps = [ + ":deploy_ruby_grpc", + ":deploy_ruby_proto", + ], +) + +# Open Source Packages +ruby_gapic_assembly_pkg( + name = "google-cloud-deploy-v1-ruby", + deps = [ + ":deploy_ruby_gapic", + ":deploy_ruby_grpc", + ":deploy_ruby_proto", + ], +) + +############################################################################## +# C# +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "csharp_gapic_assembly_pkg", + "csharp_gapic_library", + "csharp_grpc_library", + "csharp_proto_library", +) + +csharp_proto_library( + name = "deploy_csharp_proto", + deps = [":deploy_proto"], +) + +csharp_grpc_library( + name = "deploy_csharp_grpc", + srcs = [":deploy_proto"], + deps = [":deploy_csharp_proto"], +) + +csharp_gapic_library( + name = "deploy_csharp_gapic", + srcs = [":deploy_proto_with_info"], + common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", + grpc_service_config = "clouddeploy_grpc_service_config.json", + deps = [ + ":deploy_csharp_grpc", + ":deploy_csharp_proto", + ], +) + +# Open Source Packages +csharp_gapic_assembly_pkg( + name = "google-cloud-deploy-v1-csharp", + deps = [ + ":deploy_csharp_gapic", + ":deploy_csharp_grpc", + ":deploy_csharp_proto", + ], +) + +############################################################################## +# C++ +############################################################################## +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "deploy_cc_proto", + deps = [":deploy_proto"], +) + +cc_grpc_library( + name = "deploy_cc_grpc", + srcs = [":deploy_proto"], + grpc_only = True, + deps = [":deploy_cc_proto"], +) diff --git a/google/cloud/deploy/v1/cloud_deploy.proto b/google/cloud/deploy/v1/cloud_deploy.proto new file mode 100644 index 000000000..ebdfb8891 --- /dev/null +++ b/google/cloud/deploy/v1/cloud_deploy.proto @@ -0,0 +1,1390 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.deploy.v1; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; +import "google/type/date.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/deploy/v1;deploy"; +option java_multiple_files = true; +option java_outer_classname = "CloudDeployProto"; +option java_package = "com.google.cloud.deploy.v1"; +option (google.api.resource_definition) = { + type: "cloudbuild.googleapis.com/Build" + pattern: "projects/{project}/locations/{location}/builds/{build}" +}; +option (google.api.resource_definition) = { + type: "container.googleapis.com/Cluster" + pattern: "projects/{project}/locations/{location}/clusters/{cluster}" +}; +option (google.api.resource_definition) = { + type: "clouddeploy.googleapis.com/Operation" + pattern: "projects/{project}/locations/{location}/operations/{operation}" +}; +option (google.api.resource_definition) = { + type: "cloudbuild.googleapis.com/WorkerPool" + pattern: "projects/{project}/locations/{location}/workerPools/{worker_pool}" +}; + +// CloudDeploy service creates and manages Continuous Delivery operations +// on Google Cloud Platform via Skaffold (https://skaffold.dev). +service CloudDeploy { + option (google.api.default_host) = "clouddeploy.googleapis.com"; + option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; + + // Lists DeliveryPipelines in a given project and location. + rpc ListDeliveryPipelines(ListDeliveryPipelinesRequest) returns (ListDeliveryPipelinesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/deliveryPipelines" + }; + option (google.api.method_signature) = "parent"; + } + + // Gets details of a single DeliveryPipeline. + rpc GetDeliveryPipeline(GetDeliveryPipelineRequest) returns (DeliveryPipeline) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/deliveryPipelines/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Creates a new DeliveryPipeline in a given project and location. + rpc CreateDeliveryPipeline(CreateDeliveryPipelineRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/deliveryPipelines" + body: "delivery_pipeline" + }; + option (google.api.method_signature) = "parent,delivery_pipeline,delivery_pipeline_id"; + option (google.longrunning.operation_info) = { + response_type: "DeliveryPipeline" + metadata_type: "OperationMetadata" + }; + } + + // Updates the parameters of a single DeliveryPipeline. + rpc UpdateDeliveryPipeline(UpdateDeliveryPipelineRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{delivery_pipeline.name=projects/*/locations/*/deliveryPipelines/*}" + body: "delivery_pipeline" + }; + option (google.api.method_signature) = "delivery_pipeline,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "DeliveryPipeline" + metadata_type: "OperationMetadata" + }; + } + + // Deletes a single DeliveryPipeline. + rpc DeleteDeliveryPipeline(DeleteDeliveryPipelineRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/deliveryPipelines/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Lists Targets in a given project and location. + rpc ListTargets(ListTargetsRequest) returns (ListTargetsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*}/targets" + }; + option (google.api.method_signature) = "parent"; + } + + // Gets details of a single Target. + rpc GetTarget(GetTargetRequest) returns (Target) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/targets/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Creates a new Target in a given project and location. + rpc CreateTarget(CreateTargetRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*}/targets" + body: "target" + }; + option (google.api.method_signature) = "parent,target,target_id"; + option (google.longrunning.operation_info) = { + response_type: "Target" + metadata_type: "OperationMetadata" + }; + } + + // Updates the parameters of a single Target. + rpc UpdateTarget(UpdateTargetRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v1/{target.name=projects/*/locations/*/targets/*}" + body: "target" + }; + option (google.api.method_signature) = "target,update_mask"; + option (google.longrunning.operation_info) = { + response_type: "Target" + metadata_type: "OperationMetadata" + }; + } + + // Deletes a single Target. + rpc DeleteTarget(DeleteTargetRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + delete: "/v1/{name=projects/*/locations/*/targets/*}" + }; + option (google.api.method_signature) = "name"; + option (google.longrunning.operation_info) = { + response_type: "google.protobuf.Empty" + metadata_type: "OperationMetadata" + }; + } + + // Lists Releases in a given project and location. + rpc ListReleases(ListReleasesRequest) returns (ListReleasesResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/deliveryPipelines/*}/releases" + }; + option (google.api.method_signature) = "parent"; + } + + // Gets details of a single Release. + rpc GetRelease(GetReleaseRequest) returns (Release) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/deliveryPipelines/*/releases/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Creates a new Release in a given project and location. + rpc CreateRelease(CreateReleaseRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/deliveryPipelines/*}/releases" + body: "release" + }; + option (google.api.method_signature) = "parent,release,release_id"; + option (google.longrunning.operation_info) = { + response_type: "Release" + metadata_type: "OperationMetadata" + }; + } + + // Approves a Rollout. + rpc ApproveRollout(ApproveRolloutRequest) returns (ApproveRolloutResponse) { + option (google.api.http) = { + post: "/v1/{name=projects/*/locations/*/deliveryPipelines/*/releases/*/rollouts/*}:approve" + body: "*" + }; + option (google.api.method_signature) = "name"; + } + + // Lists Rollouts in a given project and location. + rpc ListRollouts(ListRolloutsRequest) returns (ListRolloutsResponse) { + option (google.api.http) = { + get: "/v1/{parent=projects/*/locations/*/deliveryPipelines/*/releases/*}/rollouts" + }; + option (google.api.method_signature) = "parent"; + } + + // Gets details of a single Rollout. + rpc GetRollout(GetRolloutRequest) returns (Rollout) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/deliveryPipelines/*/releases/*/rollouts/*}" + }; + option (google.api.method_signature) = "name"; + } + + // Creates a new Rollout in a given project and location. + rpc CreateRollout(CreateRolloutRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v1/{parent=projects/*/locations/*/deliveryPipelines/*/releases/*}/rollouts" + body: "rollout" + }; + option (google.api.method_signature) = "parent,rollout,rollout_id"; + option (google.longrunning.operation_info) = { + response_type: "Rollout" + metadata_type: "OperationMetadata" + }; + } + + // Gets the configuration for a location. + rpc GetConfig(GetConfigRequest) returns (Config) { + option (google.api.http) = { + get: "/v1/{name=projects/*/locations/*/config}" + }; + option (google.api.method_signature) = "name"; + } +} + +// A `DeliveryPipeline` resource in the Google Cloud Deploy API. +// +// A `DeliveryPipeline` defines a pipeline through which a Skaffold +// configuration can progress. +message DeliveryPipeline { + option (google.api.resource) = { + type: "clouddeploy.googleapis.com/DeliveryPipeline" + pattern: "projects/{project}/locations/{location}/deliveryPipelines/{delivery_pipeline}" + }; + + // Optional. Name of the `DeliveryPipeline`. Format is projects/{project}/ + // locations/{location}/deliveryPipelines/[a-z][a-z0-9\-]{0,62}. + string name = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Unique identifier of the `DeliveryPipeline`. + string uid = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Description of the `DeliveryPipeline`. Max length is 255 characters. + string description = 3; + + // User annotations. These attributes can only be set and used by the + // user, and not by Google Cloud Deploy. See + // https://google.aip.dev/128#annotations for more details such as format and + // size limitations. + map annotations = 4; + + // Labels are attributes that can be set and used by both the + // user and by Google Cloud Deploy. Labels must meet the following + // constraints: Each resource is limited to 64 labels. Keys must conform to + // the regexp: `[a-zA-Z][a-zA-Z0-9_-]{0,62}`. Values must conform to the + // regexp: `[a-zA-Z0-9_-]{0,63}`. Both keys and values are additionally + // constrained to be <= 128 bytes in size. + map labels = 5; + + // Output only. Time at which the pipeline was created. + google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Most recent time at which the pipeline was updated. + google.protobuf.Timestamp update_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The ordering configuration of the `DeliveryPipeline`. + oneof pipeline { + // SerialPipeline defines a sequential set of stages for a + // `DeliveryPipeline`. + SerialPipeline serial_pipeline = 8; + } + + // Output only. Information around the state of the Delivery Pipeline. + PipelineCondition condition = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // This checksum is computed by the server based on the value of other + // fields, and may be sent on update and delete requests to ensure the + // client has an up-to-date value before proceeding. + string etag = 10; +} + +// SerialPipeline defines a sequential set of stages for a `DeliveryPipeline`. +message SerialPipeline { + // Each stage specifies configuration for a `Target`. The ordering + // of this list defines the promotion flow. + repeated Stage stages = 1; +} + +// Stage specifies a location to which to deploy. +message Stage { + // The target_id to which this stage points. This field refers exclusively to + // the last segment of a target name. For example, this field would just be + // `my-target` (rather than + // `projects/project/deliveryPipelines/pipeline/targets/my-target`). The + // parent `DeliveryPipeline` of the `Target` is inferred to be the parent + // `DeliveryPipeline` of the `Release` in which this `Stage` lives. + string target_id = 1; + + // Skaffold profiles to use when rendering the manifest for this stage's + // `Target`. + repeated string profiles = 2; +} + +// PipelineReadyCondition contains information around the status of the +// Pipeline. +message PipelineReadyCondition { + // True if the Pipeline is in a valid state. Otherwise at least one condition + // in `PipelineCondition` is in an invalid state. Iterate over those + // conditions and see which condition(s) has status = false to find out what + // is wrong with the Pipeline. + bool status = 3; + + // Last time the condition was updated. + google.protobuf.Timestamp update_time = 4; +} + +// TargetsPresentCondition contains information on any Targets defined in +// the Delivery Pipeline that do not actually exist. +message TargetsPresentCondition { + // True if there aren't any missing Targets. + bool status = 1; + + // The list of Target names that are missing. For example, + // projects/{project_id}/locations/{location_name}/targets/{target_name}. + repeated string missing_targets = 2 [(google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/Target" + }]; + + // Last time the condition was updated. + google.protobuf.Timestamp update_time = 4; +} + +// PipelineCondition contains all conditions relevant to a Delivery Pipeline. +message PipelineCondition { + // Details around the Pipeline's overall status. + PipelineReadyCondition pipeline_ready_condition = 1; + + // Detalis around targets enumerated in the pipeline. + TargetsPresentCondition targets_present_condition = 3; +} + +// The request object for `ListDeliveryPipelines`. +message ListDeliveryPipelinesRequest { + // Required. The parent, which owns this collection of pipelines. Format must be + // projects/{project_id}/locations/{location_name}. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "clouddeploy.googleapis.com/DeliveryPipeline" + } + ]; + + // The maximum number of pipelines to return. The service may return + // fewer than this value. If unspecified, at most 50 pipelines will + // be returned. The maximum value is 1000; values above 1000 will be set + // to 1000. + int32 page_size = 2; + + // A page token, received from a previous `ListDeliveryPipelines` call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other provided parameters match + // the call that provided the page token. + string page_token = 3; + + // Filter builds to be returned. See https://google.aip.dev/160 for more + // details. + string filter = 4; + + // Field to sort by. See https://google.aip.dev/132#ordering for more details. + string order_by = 5; +} + +// The response object from `ListDeliveryPipelines`. +message ListDeliveryPipelinesResponse { + // The `DeliveryPipeline` objects. + repeated DeliveryPipeline delivery_pipelines = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// The request object for `GetDeliveryPipeline` +message GetDeliveryPipelineRequest { + // Required. Name of the `DeliveryPipeline`. Format must be + // projects/{project_id}/locations/{location_name}/deliveryPipelines/{pipeline_name}. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/DeliveryPipeline" + } + ]; +} + +// The request object for `CreateDeliveryPipeline`. +message CreateDeliveryPipelineRequest { + // Required. The parent collection in which the `DeliveryPipeline` should be created. + // Format should be projects/{project_id}/locations/{location_name}. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "clouddeploy.googleapis.com/DeliveryPipeline" + } + ]; + + // Required. ID of the `DeliveryPipeline`. + string delivery_pipeline_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The `DeliveryPipeline` to create. + DeliveryPipeline delivery_pipeline = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, the request is validated and the user is provided with + // an expected result, but no actual change is made. + bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// The request object for `UpdateDeliveryPipeline`. +message UpdateDeliveryPipelineRequest { + // Required. Field mask is used to specify the fields to be overwritten in the + // `DeliveryPipeline` resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then all fields will be overwritten. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The `DeliveryPipeline` to update. + DeliveryPipeline delivery_pipeline = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, updating a `DeliveryPipeline` that does not exist will + // result in the creation of a new `DeliveryPipeline`. + bool allow_missing = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, the request is validated and the user is provided with + // an expected result, but no actual change is made. + bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// The request object for `DeleteDeliveryPipeline`. +message DeleteDeliveryPipelineRequest { + // Required. The name of the `DeliveryPipeline` to delete. Format should be + // projects/{project_id}/locations/{location_name}/deliveryPipelines/{pipeline_name}. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/DeliveryPipeline" + } + ]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, then deleting an already deleted or non-existing + // `DeliveryPipeline` will succeed. + bool allow_missing = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set, validate the request and preview the review, but do not actually + // post it. + bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, all child resources under this pipeline will also be + // deleted. Otherwise, the request will only work if the pipeline has + // no child resources. + bool force = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. This checksum is computed by the server based on the value of other + // fields, and may be sent on update and delete requests to ensure the + // client has an up-to-date value before proceeding. + string etag = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// A `Target` resource in the Google Cloud Deploy API. +// +// A `Target` defines a location to which a Skaffold configuration +// can be deployed. +message Target { + option (google.api.resource) = { + type: "clouddeploy.googleapis.com/Target" + pattern: "projects/{project}/locations/{location}/targets/{target}" + }; + + // Optional. Name of the `Target`. Format is projects/{project}/locations/{location}/ + // deliveryPipelines/{deliveryPipeline}/targets/[a-z][a-z0-9\-]{0,62}. + string name = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Resource id of the `Target`. + string target_id = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Unique identifier of the `Target`. + string uid = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Optional. Description of the `Target`. Max length is 255 characters. + string description = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. User annotations. These attributes can only be set and used by the + // user, and not by Google Cloud Deploy. See + // https://google.aip.dev/128#annotations for more details such as format and + // size limitations. + map annotations = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Labels are attributes that can be set and used by both the + // user and by Google Cloud Deploy. Labels must meet the following + // constraints: Each resource is limited to 64 labels. Keys must conform to + // the regexp: `[a-zA-Z][a-zA-Z0-9_-]{0,62}`. Values must conform to the + // regexp: `[a-zA-Z0-9_-]{0,63}`. Both keys and values are additionally + // constrained to be <= 128 bytes in size. + map labels = 6 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Whether or not the `Target` requires approval. + bool require_approval = 13 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Time at which the `Target` was created. + google.protobuf.Timestamp create_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Most recent time at which the `Target` was updated. + google.protobuf.Timestamp update_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Destination to which the Skaffold configuration is applied during a + // rollout. + oneof deployment_target { + // Information specifying a GKE Cluster. + GkeCluster gke = 15; + } + + // Optional. This checksum is computed by the server based on the value of other + // fields, and may be sent on update and delete requests to ensure the + // client has an up-to-date value before proceeding. + string etag = 12 [(google.api.field_behavior) = OPTIONAL]; + + // Configurations for all execution that relates to this `Target`. + // Each `ExecutionEnvironmentUsage` value may only be used in a single + // configuration; using the same value multiple times is an error. + // When one or more configurations are specified, they must include the + // `RENDER` and `DEPLOY` `ExecutionEnvironmentUsage` values. + // When no configurations are specified, execution will use the default + // specified in `DefaultPool`. + repeated ExecutionConfig execution_configs = 16; +} + +// Configuration of the environment to use when calling Skaffold. +message ExecutionConfig { + // Possible usages of this configuration. + enum ExecutionEnvironmentUsage { + // Default value. This value is unused. + EXECUTION_ENVIRONMENT_USAGE_UNSPECIFIED = 0; + + // Use for rendering. + RENDER = 1; + + // Use for deploying and deployment hooks. + DEPLOY = 2; + } + + // Required. Usages when this configuration should be applied. + repeated ExecutionEnvironmentUsage usages = 1 [(google.api.field_behavior) = REQUIRED]; + + // Details of the environment. + oneof execution_environment { + // Optional. Use default Cloud Build pool. + DefaultPool default_pool = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Use private Cloud Build pool. + PrivatePool private_pool = 3 [(google.api.field_behavior) = OPTIONAL]; + } +} + +// Execution using the default Cloud Build pool. +message DefaultPool { + // Optional. Google service account to use for execution. If unspecified, + // the project execution service account + // (-compute@developer.gserviceaccount.com) will be used. + string service_account = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Cloud Storage location where execution outputs should be stored. This can + // either be a bucket ("gs://my-bucket") or a path within a bucket + // ("gs://my-bucket/my-dir"). + // If unspecified, a default bucket located in the same region will be used. + string artifact_storage = 2 [(google.api.field_behavior) = OPTIONAL]; +} + +// Execution using a private Cloud Build pool. +message PrivatePool { + // Required. Resource name of the Cloud Build worker pool to use. The format is + // `projects/{project}/locations/{location}/workerPools/{pool}`. + string worker_pool = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "cloudbuild.googleapis.com/WorkerPool" + } + ]; + + // Optional. Google service account to use for execution. If unspecified, + // the project execution service account + // (-compute@developer.gserviceaccount.com) will be used. + string service_account = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Cloud Storage location where execution outputs should be stored. This can + // either be a bucket ("gs://my-bucket") or a path within a bucket + // ("gs://my-bucket/my-dir"). + // If unspecified, a default bucket located in the same region will be used. + string artifact_storage = 3 [(google.api.field_behavior) = OPTIONAL]; +} + +// Information specifying a GKE Cluster. +message GkeCluster { + // Information specifying a GKE Cluster. Format is + // `projects/{project_id}/locations/{location_id}/clusters/{cluster_id}. + string cluster = 1 [(google.api.resource_reference) = { + type: "container.googleapis.com/Cluster" + }]; +} + +// The request object for `ListTargets`. +message ListTargetsRequest { + // Required. The parent, which owns this collection of targets. Format must be + // projects/{project_id}/locations/{location_name}. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "clouddeploy.googleapis.com/Target" + } + ]; + + // Optional. The maximum number of `Target` objects to return. The service may return + // fewer than this value. If unspecified, at most 50 `Target` objects will be + // returned. The maximum value is 1000; values above 1000 will be set to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A page token, received from a previous `ListTargets` call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other provided parameters match + // the call that provided the page token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter builds to be returned. See https://google.aip.dev/160 for more + // details. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Field to sort by. See https://google.aip.dev/132#ordering for more details. + string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// The response object from `ListTargets`. +message ListTargetsResponse { + // The `Target` objects. + repeated Target targets = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// The request object for `GetTarget`. +message GetTargetRequest { + // Required. Name of the `Target`. Format must be + // projects/{project_id}/locations/{location_name}/targets/{target_name}. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/Target" + } + ]; +} + +// The request object for `CreateTarget`. +message CreateTargetRequest { + // Required. The parent collection in which the `Target` should be created. + // Format should be + // projects/{project_id}/locations/{location_name}. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "clouddeploy.googleapis.com/Target" + } + ]; + + // Required. ID of the `Target`. + string target_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The `Target` to create. + Target target = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, the request is validated and the user is provided with + // an expected result, but no actual change is made. + bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// The request object for `UpdateTarget`. +message UpdateTargetRequest { + // Required. Field mask is used to specify the fields to be overwritten in the + // Target resource by the update. + // The fields specified in the update_mask are relative to the resource, not + // the full request. A field will be overwritten if it is in the mask. If the + // user does not provide a mask then all fields will be overwritten. + google.protobuf.FieldMask update_mask = 1 [(google.api.field_behavior) = REQUIRED]; + + // Required. The `Target` to update. + Target target = 2 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, updating a `Target` that does not exist will + // result in the creation of a new `Target`. + bool allow_missing = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, the request is validated and the user is provided with + // an expected result, but no actual change is made. + bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// The request object for `DeleteTarget`. +message DeleteTargetRequest { + // Required. The name of the `Target` to delete. Format should be + // projects/{project_id}/locations/{location_name}/targets/{target_name}. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/Target" + } + ]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes after the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, then deleting an already deleted or non-existing + // DeliveryPipeline will succeed. + bool allow_missing = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set, validate the request and preview the review, but do not actually + // post it. + bool validate_only = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. This checksum is computed by the server based on the value of other + // fields, and may be sent on update and delete requests to ensure the + // client has an up-to-date value before proceeding. + string etag = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// A `Release` resource in the Google Cloud Deploy API. +// +// A `Release` defines a specific Skaffold configuration instance +// that can be deployed. +message Release { + option (google.api.resource) = { + type: "clouddeploy.googleapis.com/Release" + pattern: "projects/{project}/locations/{location}/deliveryPipelines/{delivery_pipeline}/releases/{release}" + }; + + // Details of rendering for a single target. + message TargetRender { + // Valid states of the render operation. + enum TargetRenderState { + // The render operation state is unspecified. + TARGET_RENDER_STATE_UNSPECIFIED = 0; + + // The render operation has completed successfully. + SUCCEEDED = 1; + + // The render operation has failed. + FAILED = 2; + + // The render operation is in progress. + IN_PROGRESS = 3; + } + + // Output only. The resource name of the Cloud Build `Build` object that is used to + // render the manifest for this target. Format is + // `projects/{project}/locations/{location}/builds/{build}`. + string rendering_build = 1 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "cloudbuild.googleapis.com/Build" + } + ]; + + // Output only. Current state of the render operation for this Target. + TargetRenderState rendering_state = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Valid states of the render operation. + enum RenderState { + // The render state is unspecified. + RENDER_STATE_UNSPECIFIED = 0; + + // All rendering operations have completed successfully. + SUCCEEDED = 1; + + // All rendering operations have completed, and one or more have failed. + FAILED = 2; + + // Rendering has started and is not complete. + IN_PROGRESS = 3; + } + + // Optional. Name of the `Release`. Format is projects/{project}/ + // locations/{location}/deliveryPipelines/{deliveryPipeline}/ + // releases/[a-z][a-z0-9\-]{0,62}. + string name = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Unique identifier of the `Release`. + string uid = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Description of the `Release`. Max length is 255 characters. + string description = 3; + + // User annotations. These attributes can only be set and used by the + // user, and not by Google Cloud Deploy. See + // https://google.aip.dev/128#annotations for more details such as format and + // size limitations. + map annotations = 4; + + // Labels are attributes that can be set and used by both the + // user and by Google Cloud Deploy. Labels must meet the following + // constraints: Each resource is limited to 64 labels. Keys must conform to + // the regexp: `[a-zA-Z][a-zA-Z0-9_-]{0,62}`. Values must conform to the + // regexp: `[a-zA-Z0-9_-]{0,63}`. Both keys and values are additionally + // constrained to be <= 128 bytes in size. + map labels = 5; + + // Output only. Time at which the `Release` was created. + google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Time at which the render began. + google.protobuf.Timestamp render_start_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Time at which the render completed. + google.protobuf.Timestamp render_end_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Cloud Storage URI of tar.gz archive containing Skaffold configuration. + string skaffold_config_uri = 17; + + // Filepath of the Skaffold config inside of the config URI. + string skaffold_config_path = 9; + + // List of artifacts to pass through to Skaffold command. + repeated BuildArtifact build_artifacts = 10; + + // Output only. Snapshot of the parent pipeline taken at release creation time. + DeliveryPipeline delivery_pipeline_snapshot = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Snapshot of the parent pipeline's targets taken at release creation time. + repeated Target target_snapshots = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Current state of the render operation. + RenderState render_state = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // This checksum is computed by the server based on the value of other + // fields, and may be sent on update and delete requests to ensure the + // client has an up-to-date value before proceeding. + string etag = 16; + + // The Skaffold version to use when operating on this release, such as + // "1.20.0". Not all versions are valid; Google Cloud Deploy supports a + // specific set of versions. + // + // If unset, the most recent supported Skaffold version will be used. + string skaffold_version = 19; + + // Output only. Map from target ID to the target artifacts created + // during the render operation. + map target_artifacts = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Map from target ID to details of the render operation for that target. + map target_renders = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Description of an a image to use during Skaffold rendering. +message BuildArtifact { + // Image name in Skaffold configuration. + string image = 3; + + // Image tag to use. This will generally be the full path to an image, such + // as "gcr.io/my-project/busybox:1.2.3" or + // "gcr.io/my-project/busybox@sha256:abc123". + string tag = 2; +} + +// The artifacts produced by a target render operation. +message TargetArtifact { + oneof uri { + // Output only. URI of a directory containing the artifacts. This contains + // deployment configuration used by Skaffold during a rollout, and all + // paths are relative to this location. + string artifact_uri = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + } + + // Output only. File path of the resolved Skaffold configuration relative to the URI. + string skaffold_config_path = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. File path of the rendered manifest relative to the URI. + string manifest_path = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// The request object for `ListReleases`. +message ListReleasesRequest { + // Required. The `DeliveryPipeline` which owns this collection of `Release` objects. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/DeliveryPipeline" + } + ]; + + // Optional. The maximum number of `Release` objects to return. The service may return + // fewer than this value. If unspecified, at most 50 `Release` objects will be + // returned. The maximum value is 1000; values above 1000 will be set to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A page token, received from a previous `ListReleases` call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other provided parameters match + // the call that provided the page token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter builds to be returned. See https://google.aip.dev/160 for more + // details. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Field to sort by. See https://google.aip.dev/132#ordering for more details. + string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// The response object from `ListReleases`. +message ListReleasesResponse { + // The `Release` objects. + repeated Release releases = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// The request object for `GetRelease`. +message GetReleaseRequest { + // Required. Name of the `Release`. Format must be + // projects/{project_id}/locations/{location_name}/deliveryPipelines/{pipeline_name}/releases/{release_name}. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/Release" + } + ]; +} + +// The request object for `CreateRelease`, +message CreateReleaseRequest { + // Required. The parent collection in which the `Release` should be created. + // Format should be + // projects/{project_id}/locations/{location_name}/deliveryPipelines/{pipeline_name}. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/DeliveryPipeline" + } + ]; + + // Required. ID of the `Release`. + string release_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The `Release` to create. + Release release = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, the request is validated and the user is provided with + // an expected result, but no actual change is made. + bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// A `Rollout` resource in the Google Cloud Deploy API. +// +// A `Rollout` contains information around a specific deployment to a `Target`. +message Rollout { + option (google.api.resource) = { + type: "clouddeploy.googleapis.com/Rollout" + pattern: "projects/{project}/locations/{location}/deliveryPipelines/{delivery_pipeline}/releases/{release}/rollouts/{rollout}" + }; + + // Valid approval states of a `Rollout`. + enum ApprovalState { + // The `Rollout` has an unspecified approval state. + APPROVAL_STATE_UNSPECIFIED = 0; + + // The `Rollout` requires approval. + NEEDS_APPROVAL = 1; + + // The `Rollout` does not require approval. + DOES_NOT_NEED_APPROVAL = 2; + + // The `Rollout` has been approved. + APPROVED = 3; + + // The `Rollout` has been rejected. + REJECTED = 4; + } + + // Valid states of a `Rollout`. + enum State { + // The `Rollout` has an unspecified state. + STATE_UNSPECIFIED = 0; + + // The `Rollout` has completed successfully. + SUCCEEDED = 1; + + // The `Rollout` has failed. + FAILED = 2; + + // The `Rollout` is being deployed. + IN_PROGRESS = 3; + + // The `Rollout` needs approval. + PENDING_APPROVAL = 4; + + // An approver rejected the `Rollout`. + APPROVAL_REJECTED = 5; + + // The `Rollout` is waiting for an earlier Rollout(s) to complete on this + // `Target`. + PENDING = 6; + + // The `Rollout` is waiting for the `Release` to be fully rendered. + PENDING_RELEASE = 7; + } + + // Optional. Name of the `Rollout`. Format is projects/{project}/ + // locations/{location}/deliveryPipelines/{deliveryPipeline}/ + // releases/{release}/rollouts/[a-z][a-z0-9\-]{0,62}. + string name = 1 [(google.api.field_behavior) = OPTIONAL]; + + // Output only. Unique identifier of the `Rollout`. + string uid = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Description of the `Rollout` for user purposes. Max length is 255 + // characters. + string description = 3; + + // User annotations. These attributes can only be set and used by the + // user, and not by Google Cloud Deploy. See + // https://google.aip.dev/128#annotations for more details such as format and + // size limitations. + map annotations = 4; + + // Labels are attributes that can be set and used by both the + // user and by Google Cloud Deploy. Labels must meet the following + // constraints: Each resource is limited to 64 labels. Keys must conform to + // the regexp: `[a-zA-Z][a-zA-Z0-9_-]{0,62}`. Values must conform to the + // regexp: `[a-zA-Z0-9_-]{0,63}`. Both keys and values are additionally + // constrained to be <= 128 bytes in size. + map labels = 5; + + // Output only. Time at which the `Rollout` was created. + google.protobuf.Timestamp create_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Time at which the `Rollout` was approved. + google.protobuf.Timestamp approve_time = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Time at which the `Rollout` was enqueued. + google.protobuf.Timestamp enqueue_time = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Time at which the `Rollout` started deploying. + google.protobuf.Timestamp deploy_start_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Time at which the `Rollout` finished deploying. + google.protobuf.Timestamp deploy_end_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Required. The ID of Target to which this `Rollout` is deploying. + string target_id = 18 [(google.api.field_behavior) = REQUIRED]; + + // Output only. Approval state of the `Rollout`. + ApprovalState approval_state = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Current state of the `Rollout`. + State state = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Reason the build failed. Empty if the build succeeded. + string failure_reason = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The resource name of the Cloud Build `Build` object that is used to deploy + // the Rollout. Format is + // `projects/{project}/locations/{location}/builds/{build}`. + string deploying_build = 17 [ + (google.api.field_behavior) = OUTPUT_ONLY, + (google.api.resource_reference) = { + type: "cloudbuild.googleapis.com/Build" + } + ]; + + // This checksum is computed by the server based on the value of other + // fields, and may be sent on update and delete requests to ensure the + // client has an up-to-date value before proceeding. + string etag = 16; +} + +// ListRolloutsRequest is the request object used by `ListRollouts`. +message ListRolloutsRequest { + // Required. The `Release` which owns this collection of `Rollout` objects. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/Release" + } + ]; + + // Optional. The maximum number of `Rollout` objects to return. The service may return + // fewer than this value. If unspecified, at most 50 `Rollout` objects will be + // returned. The maximum value is 1000; values above 1000 will be set to 1000. + int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. A page token, received from a previous `ListRollouts` call. + // Provide this to retrieve the subsequent page. + // + // When paginating, all other provided parameters match + // the call that provided the page token. + string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Filter builds to be returned. See https://google.aip.dev/160 for more + // details. + string filter = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. Field to sort by. See https://google.aip.dev/132#ordering for more details. + string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// ListRolloutsResponse is the response object reutrned by `ListRollouts`. +message ListRolloutsResponse { + // The `Rollout` objects. + repeated Rollout rollouts = 1; + + // A token, which can be sent as `page_token` to retrieve the next page. + // If this field is omitted, there are no subsequent pages. + string next_page_token = 2; + + // Locations that could not be reached. + repeated string unreachable = 3; +} + +// GetRolloutRequest is the request object used by `GetRollout`. +message GetRolloutRequest { + // Required. Name of the `Rollout`. Format must be + // projects/{project_id}/locations/{location_name}/deliveryPipelines/{pipeline_name}/releases/{release_name}/rollouts/{rollout_name}. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/Rollout" + } + ]; +} + +// CreateRolloutRequest is the request object used by `CreateRollout`. +message CreateRolloutRequest { + // Required. The parent collection in which the `Rollout` should be created. + // Format should be + // projects/{project_id}/locations/{location_name}/deliveryPipelines/{pipeline_name}/releases/{release_name}. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/Release" + } + ]; + + // Required. ID of the `Rollout`. + string rollout_id = 2 [(google.api.field_behavior) = REQUIRED]; + + // Required. The `Rollout` to create. + Rollout rollout = 3 [(google.api.field_behavior) = REQUIRED]; + + // Optional. A request ID to identify requests. Specify a unique request ID + // so that if you must retry your request, the server will know to ignore + // the request if it has already been completed. The server will guarantee + // that for at least 60 minutes since the first request. + // + // For example, consider a situation where you make an initial request and the + // request times out. If you make the request again with the same request ID, + // the server can check if original operation with the same request ID was + // received, and if so, will ignore the second request. This prevents clients + // from accidentally creating duplicate commitments. + // + // The request ID must be a valid UUID with the exception that zero UUID is + // not supported (00000000-0000-0000-0000-000000000000). + string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; + + // Optional. If set to true, the request is validated and the user is provided with + // an expected result, but no actual change is made. + bool validate_only = 5 [(google.api.field_behavior) = OPTIONAL]; +} + +// Represents the metadata of the long-running operation. +message OperationMetadata { + // Output only. The time the operation was created. + google.protobuf.Timestamp create_time = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. The time the operation finished running. + google.protobuf.Timestamp end_time = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Server-defined resource path for the target of the operation. + string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Name of the verb executed by the operation. + string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Human-readable status of the operation, if any. + string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Identifies whether the user has requested cancellation + // of the operation. Operations that have successfully been cancelled + // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1, + // corresponding to `Code.CANCELLED`. + bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. API version used to start the operation. + string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// The request object used by `ApproveRollout`. +message ApproveRolloutRequest { + // Required. Name of the Rollout. Format is + // projects/{project}/locations/{location}/deliveryPipelines/{deliveryPipeline}/ + // releases/{release}/rollouts/{rollout}. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/Rollout" + } + ]; + + // Required. True = approve; false = reject + bool approved = 2 [(google.api.field_behavior) = REQUIRED]; +} + +// The response object from `ApproveRollout`. +message ApproveRolloutResponse { + +} + +// Service-wide configuration. +message Config { + option (google.api.resource) = { + type: "clouddeploy.googleapis.com/Config" + pattern: "projects/{project}/locations/{location}/config" + }; + + // Name of the configuration. + string name = 1; + + // Output only. All supported versions of Skaffold. + repeated SkaffoldVersion supported_versions = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Output only. Default Skaffold version that is assigned when a Release is created without + // specifying a Skaffold version. + string default_skaffold_version = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; +} + +// Details of a supported Skaffold version. +message SkaffoldVersion { + // Release version number. For example, "1.20.3". + string version = 1; + + // Date when this version is expected to no longer be supported. + google.type.Date support_end_date = 2; +} + +// Request to get a configuration. +message GetConfigRequest { + // Required. Name of requested configuration. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "clouddeploy.googleapis.com/Config" + } + ]; +} diff --git a/google/cloud/deploy/v1/clouddeploy_grpc_service_config.json b/google/cloud/deploy/v1/clouddeploy_grpc_service_config.json new file mode 100644 index 000000000..e3885a717 --- /dev/null +++ b/google/cloud/deploy/v1/clouddeploy_grpc_service_config.json @@ -0,0 +1,92 @@ +{ + "methodConfig": [ + { + "name": [ + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "ListDeliveryPipelines" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "GetDeliveryPipeline" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "ListTargets" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "GetTarget" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "ListReleases" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "GetRelease" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "ListRollouts" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "GetRollout" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "GetConfig" + } + ], + "timeout": "60s", + "retryPolicy": { + "initialBackoff": "1s", + "maxBackoff": "60s", + "backoffMultiplier": 1.3, + "retryableStatusCodes": ["UNAVAILABLE"] + } + }, + { + "name": [ + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "CreateDeliveryPipeline" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "UpdateDeliveryPipeline" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "DeleteDeliveryPipeline" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "CreateTarget" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "UpdateTarget" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "DeleteTarget" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "CreateRelease" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "ApproveRollout" + }, + { + "service": "google.cloud.deploy.v1.CloudDeploy", + "method": "CreateRollout" + } + ], + "timeout": "60s" + } + ] +} diff --git a/google/cloud/deploy/v1/clouddeploy_v1.yaml b/google/cloud/deploy/v1/clouddeploy_v1.yaml new file mode 100644 index 000000000..a30d2b5da --- /dev/null +++ b/google/cloud/deploy/v1/clouddeploy_v1.yaml @@ -0,0 +1,109 @@ +type: google.api.Service +config_version: 3 +name: clouddeploy.googleapis.com +title: Google Cloud Deploy API + +apis: +- name: google.cloud.deploy.v1.CloudDeploy + +types: +- name: google.cloud.deploy.v1.OperationMetadata + +documentation: + rules: + - selector: google.cloud.location.Locations.GetLocation + description: Gets information about a location. + + - selector: google.cloud.location.Locations.ListLocations + description: Lists information about the supported locations for this service. + + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + description: |- + Gets the access control policy for a resource. Returns an empty policy + if the resource exists and does not have a policy set. + + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + description: |- + Sets the access control policy on the specified resource. Replaces + any existing policy. + + Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` + errors. + + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + description: |- + Returns permissions that a caller has on the specified resource. If the + resource does not exist, this will return an empty set of + permissions, not a `NOT_FOUND` error. + + Note: This operation is designed to be used for building + permission-aware UIs and command-line tools, not for authorization + checking. This operation may "fail open" without warning. + +backend: + rules: + - selector: 'google.cloud.deploy.v1.CloudDeploy.*' + deadline: 60.0 + - selector: google.cloud.location.Locations.GetLocation + deadline: 60.0 + - selector: google.cloud.location.Locations.ListLocations + deadline: 60.0 + - selector: 'google.iam.v1.IAMPolicy.*' + deadline: 60.0 + - selector: 'google.longrunning.Operations.*' + deadline: 60.0 + +http: + rules: + - selector: google.cloud.location.Locations.GetLocation + get: '/v1/{name=projects/*/locations/*}' + - selector: google.cloud.location.Locations.ListLocations + get: '/v1/{name=projects/*}/locations' + - selector: google.iam.v1.IAMPolicy.GetIamPolicy + get: '/v1/{resource=projects/*/locations/*/deliveryPipelines/*}:getIamPolicy' + additional_bindings: + - get: '/v1/{resource=projects/*/locations/*/targets/*}:getIamPolicy' + - selector: google.iam.v1.IAMPolicy.SetIamPolicy + post: '/v1/{resource=projects/*/locations/*/deliveryPipelines/*}:setIamPolicy' + body: '*' + additional_bindings: + - post: '/v1/{resource=projects/*/locations/*/targets/*}:setIamPolicy' + body: '*' + - selector: google.iam.v1.IAMPolicy.TestIamPermissions + post: '/v1/{resource=projects/*/locations/*/deliveryPipelines/*}:testIamPermissions' + body: '*' + additional_bindings: + - post: '/v1/{resource=projects/*/locations/*/targets/*}:testIamPermissions' + body: '*' + - selector: google.longrunning.Operations.CancelOperation + post: '/v1/{name=projects/*/locations/*/operations/*}:cancel' + body: '*' + - selector: google.longrunning.Operations.DeleteOperation + delete: '/v1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.GetOperation + get: '/v1/{name=projects/*/locations/*/operations/*}' + - selector: google.longrunning.Operations.ListOperations + get: '/v1/{name=projects/*/locations/*}/operations' + +authentication: + rules: + - selector: 'google.cloud.deploy.v1.CloudDeploy.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.GetLocation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: google.cloud.location.Locations.ListLocations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.iam.v1.IAMPolicy.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform + - selector: 'google.longrunning.Operations.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform diff --git a/google/cloud/dialogflow/BUILD.bazel b/google/cloud/dialogflow/BUILD.bazel index 2e252be40..f3b4be444 100644 --- a/google/cloud/dialogflow/BUILD.bazel +++ b/google/cloud/dialogflow/BUILD.bazel @@ -1,5 +1,41 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-dialogflow. + +# This is an API workspace, having public visibility by default makes perfect sense. package(default_visibility = ["//visibility:public"]) -exports_files(glob([ - "*.yaml", -])) +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for dialogflow. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v2 in this case. +ruby_cloud_gapic_library( + name = "dialogflow_ruby_wrapper", + srcs = ["//google/cloud/dialogflow/v2:dialogflow_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-dialogflow", + "ruby-cloud-env-prefix=DIALOGFLOW", + "ruby-cloud-wrapper-of=v2:0.8", + "ruby-cloud-product-url=https://cloud.google.com/dialogflow", + "ruby-cloud-api-id=dialogflow.googleapis.com", + "ruby-cloud-api-shortname=dialogflow", + "ruby-cloud-migration-version=1.0", + ], + ruby_cloud_description = "Dialogflow is an end-to-end, build-once deploy-everywhere development suite for creating conversational interfaces for websites, mobile applications, popular messaging platforms, and IoT devices. You can use it to build interfaces (such as chatbots and conversational IVR) that enable natural and rich interactions between your users and your business. This client is for Dialogflow ES, providing the standard agent type suitable for small and simple agents.", + ruby_cloud_title = "Dialogflow", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-dialogflow-ruby", + deps = [ + ":dialogflow_ruby_wrapper", + ], +) diff --git a/google/cloud/dialogflow/cx/BUILD.bazel b/google/cloud/dialogflow/cx/BUILD.bazel new file mode 100644 index 000000000..b7db212b4 --- /dev/null +++ b/google/cloud/dialogflow/cx/BUILD.bazel @@ -0,0 +1,41 @@ +# This build file includes a target for the Ruby wrapper library for +# google-cloud-dialogflow-cx. + +# This is an API workspace, having public visibility by default makes perfect sense. +package(default_visibility = ["//visibility:public"]) + +# Export yaml configs. +exports_files(glob(["*.yaml"])) + +load( + "@com_google_googleapis_imports//:imports.bzl", + "ruby_cloud_gapic_library", + "ruby_gapic_assembly_pkg", +) + +# Generates a Ruby wrapper client for dialogflow. +# Ruby wrapper clients are versionless, but are generated from source protos +# for a particular service version, v3 in this case. +ruby_cloud_gapic_library( + name = "dialogflow_ruby_wrapper", + srcs = ["//google/cloud/dialogflow/cx/v3:cx_proto_with_info"], + extra_protoc_parameters = [ + "ruby-cloud-gem-name=google-cloud-dialogflow-cx", + "ruby-cloud-env-prefix=DIALOGFLOW", + "ruby-cloud-wrapper-of=v3:0.3", + "ruby-cloud-product-url=https://cloud.google.com/dialogflow", + "ruby-cloud-api-id=dialogflow.googleapis.com", + "ruby-cloud-api-shortname=dialogflow", + "ruby-cloud-namespace-override=Cx=CX", + ], + ruby_cloud_description = "Dialogflow is an end-to-end, build-once deploy-everywhere development suite for creating conversational interfaces for websites, mobile applications, popular messaging platforms, and IoT devices. You can use it to build interfaces (such as chatbots and conversational IVR) that enable natural and rich interactions between your users and your business. This client is for Dialogflow CX, providing an advanced agent type suitable for large or very complex agents.", + ruby_cloud_title = "Dialogflow CX", +) + +# Open Source package. +ruby_gapic_assembly_pkg( + name = "google-cloud-dialogflow-cx-ruby", + deps = [ + ":dialogflow_ruby_wrapper", + ], +) diff --git a/google/cloud/dialogflow/cx/v3/BUILD.bazel b/google/cloud/dialogflow/cx/v3/BUILD.bazel index db722b19b..eb1d35808 100644 --- a/google/cloud/dialogflow/cx/v3/BUILD.bazel +++ b/google/cloud/dialogflow/cx/v3/BUILD.bazel @@ -21,8 +21,11 @@ load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info") proto_library( name = "cx_proto", srcs = [ + "advanced_settings.proto", "agent.proto", "audio_config.proto", + "changelog.proto", + "deployment.proto", "entity_type.proto", "environment.proto", "experiment.proto", @@ -90,12 +93,15 @@ java_grpc_library( java_gapic_library( name = "cx_java_gapic", srcs = [":cx_proto_with_info"], + gapic_yaml = None, grpc_service_config = "dialogflow_grpc_service_config.json", + service_yaml = "dialogflow_v3.yaml", test_deps = [ ":cx_java_grpc", ], deps = [ ":cx_java_proto", + "//google/api:api_java_proto", ], ) @@ -103,6 +109,8 @@ java_gapic_test( name = "cx_java_gapic_test_suite", test_classes = [ "com.google.cloud.dialogflow.cx.v3.AgentsClientTest", + "com.google.cloud.dialogflow.cx.v3.ChangelogsClientTest", + "com.google.cloud.dialogflow.cx.v3.DeploymentsClientTest", "com.google.cloud.dialogflow.cx.v3.EntityTypesClientTest", "com.google.cloud.dialogflow.cx.v3.EnvironmentsClientTest", "com.google.cloud.dialogflow.cx.v3.ExperimentsClientTest", @@ -222,10 +230,10 @@ py_gapic_assembly_pkg( ############################################################################## load( "@com_google_googleapis_imports//:imports.bzl", - php_gapic_assembly_pkg = "php_gapic_assembly_pkg2", - php_gapic_library = "php_gapic_library2", - php_grpc_library = "php_grpc_library2", - php_proto_library = "php_proto_library2", + "php_gapic_assembly_pkg", + "php_gapic_library", + "php_grpc_library", + "php_proto_library", ) php_proto_library( @@ -313,8 +321,17 @@ ruby_grpc_library( ruby_cloud_gapic_library( name = "cx_ruby_gapic", srcs = [":cx_proto_with_info"], - extra_protoc_parameters = ["ruby-cloud-gem-name=google-cloud-dialogflow-cx-v3"], + extra_protoc_parameters = [ + "ruby-cloud-api-id=dialogflow.googleapis.com", + "ruby-cloud-api-shortname=dialogflow", + "ruby-cloud-env-prefix=DIALOGFLOW", + "ruby-cloud-gem-name=google-cloud-dialogflow-cx-v3", + "ruby-cloud-namespace-override=Cx=CX", + "ruby-cloud-product-url=https://cloud.google.com/dialogflow", + ], grpc_service_config = "dialogflow_grpc_service_config.json", + ruby_cloud_description = "Dialogflow is an end-to-end, build-once deploy-everywhere development suite for creating conversational interfaces for websites, mobile applications, popular messaging platforms, and IoT devices. You can use it to build interfaces (such as chatbots and conversational IVR) that enable natural and rich interactions between your users and your business. This client is for Dialogflow CX, providing an advanced agent type suitable for large or very complex agents.", + ruby_cloud_title = "Dialogflow CX V3", deps = [ ":cx_ruby_grpc", ":cx_ruby_proto", @@ -377,4 +394,20 @@ csharp_gapic_assembly_pkg( ############################################################################## # C++ ############################################################################## -# Put your C++ rules here +load( + "@com_google_googleapis_imports//:imports.bzl", + "cc_grpc_library", + "cc_proto_library", +) + +cc_proto_library( + name = "cx_cc_proto", + deps = [":cx_proto"], +) + +cc_grpc_library( + name = "cx_cc_grpc", + srcs = [":cx_proto"], + grpc_only = True, + deps = [":cx_cc_proto"], +) diff --git a/google/cloud/dialogflow/cx/v3/advanced_settings.proto b/google/cloud/dialogflow/cx/v3/advanced_settings.proto new file mode 100644 index 000000000..6fba53ce9 --- /dev/null +++ b/google/cloud/dialogflow/cx/v3/advanced_settings.proto @@ -0,0 +1,53 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.dialogflow.cx.v3; + +import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; +import "google/protobuf/duration.proto"; + +option cc_enable_arenas = true; +option csharp_namespace = "Google.Cloud.Dialogflow.Cx.V3"; +option go_package = "google.golang.org/genproto/googleapis/cloud/dialogflow/cx/v3;cx"; +option java_multiple_files = true; +option java_outer_classname = "AdvancedSettingsProto"; +option java_package = "com.google.cloud.dialogflow.cx.v3"; +option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; + +// Hierarchical advanced settings for agent/flow/page/fulfillment/parameter. +// Settings exposed at lower level overrides the settings exposed at higher +// level. +// +// Hierarchy: Agent->Flow->Page->Fulfillment/Parameter. +message AdvancedSettings { + // Define behaviors on logging. + message LoggingSettings { + // If true, StackDriver logging is currently enabled. + bool enable_stackdriver_logging = 2; + + // If true, DF Interaction logging is currently enabled. + bool enable_interaction_logging = 3; + } + + // Settings for logging. + // Settings for Dialogflow History, Contact Center messages, StackDriver logs, + // and speech logging. + // Exposed at the following levels: + // - Agent level. + LoggingSettings logging_settings = 6; +} diff --git a/google/cloud/dialogflow/cx/v3/agent.proto b/google/cloud/dialogflow/cx/v3/agent.proto index b583a5a7c..8c41dcd22 100644 --- a/google/cloud/dialogflow/cx/v3/agent.proto +++ b/google/cloud/dialogflow/cx/v3/agent.proto @@ -20,6 +20,7 @@ import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/cloud/dialogflow/cx/v3/advanced_settings.proto"; import "google/cloud/dialogflow/cx/v3/flow.proto"; import "google/cloud/dialogflow/cx/v3/security_settings.proto"; import "google/longrunning/operations.proto"; @@ -33,6 +34,7 @@ option java_multiple_files = true; option java_outer_classname = "AgentProto"; option java_package = "com.google.cloud.dialogflow.cx.v3"; option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; // Service for managing [Agents][google.cloud.dialogflow.cx.v3.Agent]. service Agents { @@ -58,6 +60,10 @@ service Agents { } // Creates an agent in the specified location. + // + // Note: You should always train flows prior to sending them queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc CreateAgent(CreateAgentRequest) returns (Agent) { option (google.api.http) = { post: "/v3/{parent=projects/*/locations/*}/agents" @@ -67,6 +73,10 @@ service Agents { } // Updates the specified agent. + // + // Note: You should always train flows prior to sending them queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc UpdateAgent(UpdateAgentRequest) returns (Agent) { option (google.api.http) = { patch: "/v3/{agent.name=projects/*/locations/*/agents/*}" @@ -84,6 +94,14 @@ service Agents { } // Exports the specified agent to a binary file. + // + // This method is a [long-running + // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). + // The returned `Operation` type has the following method-specific fields: + // + // - `metadata`: An empty [Struct + // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) + // - `response`: [ExportAgentResponse][google.cloud.dialogflow.cx.v3.ExportAgentResponse] rpc ExportAgent(ExportAgentRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v3/{name=projects/*/locations/*/agents/*}:export" @@ -99,6 +117,19 @@ service Agents { // // Replaces the current agent with a new one. Note that all existing resources // in agent (e.g. intents, entity types, flows) will be removed. + // + // This method is a [long-running + // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). + // The returned `Operation` type has the following method-specific fields: + // + // - `metadata`: An empty [Struct + // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) + // - `response`: An [Empty + // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty) + // + // Note: You should always train flows prior to sending them queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc RestoreAgent(RestoreAgentRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v3/{name=projects/*/locations/*/agents/*}:restore" @@ -159,12 +190,15 @@ message Agent { // Required. The human-readable name of the agent, unique within the location. string display_name = 2 [(google.api.field_behavior) = REQUIRED]; - // Immutable. The default language of the agent as a language tag. + // Required. Immutable. The default language of the agent as a language tag. // See [Language // Support](https://cloud.google.com/dialogflow/cx/docs/reference/language) // for a list of the currently supported language codes. // This field cannot be set by the [Agents.UpdateAgent][google.cloud.dialogflow.cx.v3.Agents.UpdateAgent] method. - string default_language_code = 3 [(google.api.field_behavior) = IMMUTABLE]; + string default_language_code = 3 [ + (google.api.field_behavior) = REQUIRED, + (google.api.field_behavior) = IMMUTABLE + ]; // The list of all languages supported by the agent (except for the // `default_language_code`). @@ -208,11 +242,17 @@ message Agent { }]; // Indicates if stackdriver logging is enabled for the agent. - bool enable_stackdriver_logging = 18; + // Please use [agent.advanced_settings][google.cloud.dialogflow.cx.v3.AdvancedSettings.LoggingSettings] + // instead. + bool enable_stackdriver_logging = 18 [deprecated = true]; // Indicates if automatic spell correction is enabled in detect intent // requests. bool enable_spell_correction = 20; + + // Hierarchical advanced settings for this agent. The settings exposed at the + // lower level overrides the settings exposed at the higher level. + AdvancedSettings advanced_settings = 22; } // The request message for [Agents.ListAgents][google.cloud.dialogflow.cx.v3.Agents.ListAgents]. diff --git a/google/cloud/dialogflow/cx/v3/audio_config.proto b/google/cloud/dialogflow/cx/v3/audio_config.proto index e444bbe6b..d2551ff83 100644 --- a/google/cloud/dialogflow/cx/v3/audio_config.proto +++ b/google/cloud/dialogflow/cx/v3/audio_config.proto @@ -16,10 +16,11 @@ syntax = "proto3"; package google.cloud.dialogflow.cx.v3; +import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; import "google/protobuf/duration.proto"; -import "google/api/annotations.proto"; +import "google/protobuf/timestamp.proto"; option cc_enable_arenas = true; option csharp_namespace = "Google.Cloud.Dialogflow.Cx.V3"; @@ -28,6 +29,7 @@ option java_multiple_files = true; option java_outer_classname = "AudioConfigProto"; option java_package = "com.google.cloud.dialogflow.cx.v3"; option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; // Audio encoding of the audio content sent in the conversational query request. // Refer to the @@ -78,6 +80,49 @@ enum AudioEncoding { AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE = 7; } +// Variant of the specified [Speech model][google.cloud.dialogflow.cx.v3.InputAudioConfig.model] to use. +// +// See the [Cloud Speech +// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-models) +// for which models have different variants. For example, the "phone_call" model +// has both a standard and an enhanced variant. When you use an enhanced model, +// you will generally receive higher quality results than for a standard model. +enum SpeechModelVariant { + // No model variant specified. In this case Dialogflow defaults to + // USE_BEST_AVAILABLE. + SPEECH_MODEL_VARIANT_UNSPECIFIED = 0; + + // Use the best available variant of the [Speech + // model][InputAudioConfig.model] that the caller is eligible for. + // + // Please see the [Dialogflow + // docs](https://cloud.google.com/dialogflow/docs/data-logging) for + // how to make your project eligible for enhanced models. + USE_BEST_AVAILABLE = 1; + + // Use standard model variant even if an enhanced model is available. See the + // [Cloud Speech + // documentation](https://cloud.google.com/speech-to-text/docs/enhanced-models) + // for details about enhanced models. + USE_STANDARD = 2; + + // Use an enhanced model variant: + // + // * If an enhanced variant does not exist for the given + // [model][google.cloud.dialogflow.cx.v3.InputAudioConfig.model] and request language, Dialogflow falls + // back to the standard variant. + // + // The [Cloud Speech + // documentation](https://cloud.google.com/speech-to-text/docs/enhanced-models) + // describes which models have enhanced variants. + // + // * If the API caller isn't eligible for enhanced models, Dialogflow returns + // an error. Please see the [Dialogflow + // docs](https://cloud.google.com/dialogflow/docs/data-logging) + // for how to make your project eligible. + USE_ENHANCED = 3; +} + // Information for a word recognized by the speech recognizer. message SpeechWordInfo { // The word this info is for. @@ -156,47 +201,21 @@ message InputAudioConfig { bool single_utterance = 8; } -// Variant of the specified [Speech model][google.cloud.dialogflow.cx.v3.InputAudioConfig.model] to use. -// -// See the [Cloud Speech -// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-models) -// for which models have different variants. For example, the "phone_call" model -// has both a standard and an enhanced variant. When you use an enhanced model, -// you will generally receive higher quality results than for a standard model. -enum SpeechModelVariant { - // No model variant specified. In this case Dialogflow defaults to - // USE_BEST_AVAILABLE. - SPEECH_MODEL_VARIANT_UNSPECIFIED = 0; +// Gender of the voice as described in +// [SSML voice element](https://www.w3.org/TR/speech-synthesis11/#edef_voice). +enum SsmlVoiceGender { + // An unspecified gender, which means that the client doesn't care which + // gender the selected voice will have. + SSML_VOICE_GENDER_UNSPECIFIED = 0; - // Use the best available variant of the [Speech - // model][InputAudioConfig.model] that the caller is eligible for. - // - // Please see the [Dialogflow - // docs](https://cloud.google.com/dialogflow/docs/data-logging) for - // how to make your project eligible for enhanced models. - USE_BEST_AVAILABLE = 1; + // A male voice. + SSML_VOICE_GENDER_MALE = 1; - // Use standard model variant even if an enhanced model is available. See the - // [Cloud Speech - // documentation](https://cloud.google.com/speech-to-text/docs/enhanced-models) - // for details about enhanced models. - USE_STANDARD = 2; + // A female voice. + SSML_VOICE_GENDER_FEMALE = 2; - // Use an enhanced model variant: - // - // * If an enhanced variant does not exist for the given - // [model][google.cloud.dialogflow.cx.v3.InputAudioConfig.model] and request language, Dialogflow falls - // back to the standard variant. - // - // The [Cloud Speech - // documentation](https://cloud.google.com/speech-to-text/docs/enhanced-models) - // describes which models have enhanced variants. - // - // * If the API caller isn't eligible for enhanced models, Dialogflow returns - // an error. Please see the [Dialogflow - // docs](https://cloud.google.com/dialogflow/docs/data-logging) - // for how to make your project eligible. - USE_ENHANCED = 3; + // A gender-neutral voice. + SSML_VOICE_GENDER_NEUTRAL = 3; } // Description of which voice to use for speech synthesis. @@ -250,39 +269,6 @@ message SynthesizeSpeechConfig { VoiceSelectionParams voice = 4; } -// Instructs the speech synthesizer how to generate the output audio content. -message OutputAudioConfig { - // Required. Audio encoding of the synthesized audio content. - OutputAudioEncoding audio_encoding = 1 [(google.api.field_behavior) = REQUIRED]; - - // Optional. The synthesis sample rate (in hertz) for this audio. If not - // provided, then the synthesizer will use the default sample rate based on - // the audio encoding. If this is different from the voice's natural sample - // rate, then the synthesizer will honor this request by converting to the - // desired sample rate (which might result in worse audio quality). - int32 sample_rate_hertz = 2; - - // Optional. Configuration of how speech should be synthesized. - SynthesizeSpeechConfig synthesize_speech_config = 3; -} - -// Gender of the voice as described in -// [SSML voice element](https://www.w3.org/TR/speech-synthesis11/#edef_voice). -enum SsmlVoiceGender { - // An unspecified gender, which means that the client doesn't care which - // gender the selected voice will have. - SSML_VOICE_GENDER_UNSPECIFIED = 0; - - // A male voice. - SSML_VOICE_GENDER_MALE = 1; - - // A female voice. - SSML_VOICE_GENDER_FEMALE = 2; - - // A gender-neutral voice. - SSML_VOICE_GENDER_NEUTRAL = 3; -} - // Audio encoding of the output audio format in Text-To-Speech. enum OutputAudioEncoding { // Not specified. @@ -307,3 +293,19 @@ enum OutputAudioEncoding { // 8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law. OUTPUT_AUDIO_ENCODING_MULAW = 5; } + +// Instructs the speech synthesizer how to generate the output audio content. +message OutputAudioConfig { + // Required. Audio encoding of the synthesized audio content. + OutputAudioEncoding audio_encoding = 1 [(google.api.field_behavior) = REQUIRED]; + + // Optional. The synthesis sample rate (in hertz) for this audio. If not + // provided, then the synthesizer will use the default sample rate based on + // the audio encoding. If this is different from the voice's natural sample + // rate, then the synthesizer will honor this request by converting to the + // desired sample rate (which might result in worse audio quality). + int32 sample_rate_hertz = 2; + + // Optional. Configuration of how speech should be synthesized. + SynthesizeSpeechConfig synthesize_speech_config = 3; +} diff --git a/google/cloud/dialogflow/cx/v3/changelog.proto b/google/cloud/dialogflow/cx/v3/changelog.proto new file mode 100644 index 000000000..997de1bb6 --- /dev/null +++ b/google/cloud/dialogflow/cx/v3/changelog.proto @@ -0,0 +1,154 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.dialogflow.cx.v3; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/struct.proto"; +import "google/protobuf/timestamp.proto"; + +option cc_enable_arenas = true; +option csharp_namespace = "Google.Cloud.Dialogflow.Cx.V3"; +option go_package = "google.golang.org/genproto/googleapis/cloud/dialogflow/cx/v3;cx"; +option java_multiple_files = true; +option java_outer_classname = "ChangelogProto"; +option java_package = "com.google.cloud.dialogflow.cx.v3"; +option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; + +// Service for managing [Changelogs][google.cloud.dialogflow.cx.v3.Changelog]. +service Changelogs { + option (google.api.default_host) = "dialogflow.googleapis.com"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform," + "https://www.googleapis.com/auth/dialogflow"; + + // Returns the list of Changelogs. + rpc ListChangelogs(ListChangelogsRequest) returns (ListChangelogsResponse) { + option (google.api.http) = { + get: "/v3/{parent=projects/*/locations/*/agents/*}/changelogs" + }; + option (google.api.method_signature) = "parent"; + } + + // Retrieves the specified Changelog. + rpc GetChangelog(GetChangelogRequest) returns (Changelog) { + option (google.api.http) = { + get: "/v3/{name=projects/*/locations/*/agents/*/changelogs/*}" + }; + option (google.api.method_signature) = "name"; + } +} + +// The request message for [Changelogs.ListChangelogs][google.cloud.dialogflow.cx.v3.Changelogs.ListChangelogs]. +message ListChangelogsRequest { + // Required. The agent containing the changelogs. + // Format: `projects//locations//agents/`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "dialogflow.googleapis.com/Changelog" + } + ]; + + // The filter string. Supports filter by user_email, resource, type and + // create_time. Some examples: + // 1. By user email: + // user_email = "someone@google.com" + // 2. By resource name: + // resource = "projects/123/locations/global/agents/456/flows/789" + // 3. By resource display name: + // display_name = "my agent" + // 4. By action: + // action = "Create" + // 5. By type: + // type = "flows" + // 6. By create time. Currently predicates on `create_time` and + // `create_time_epoch_seconds` are supported: + // create_time_epoch_seconds > 1551790877 AND create_time <= + // 2017-01-15T01:30:15.01Z + // 7. Combination of above filters: + // resource = "projects/123/locations/global/agents/456/flows/789" + // AND user_email = "someone@google.com" + // AND create_time <= 2017-01-15T01:30:15.01Z + string filter = 2; + + // The maximum number of items to return in a single page. By default 100 and + // at most 1000. + int32 page_size = 3; + + // The next_page_token value returned from a previous list request. + string page_token = 4; +} + +// The response message for [Changelogs.ListChangelogs][google.cloud.dialogflow.cx.v3.Changelogs.ListChangelogs]. +message ListChangelogsResponse { + // The list of changelogs. There will be a maximum number of items returned + // based on the page_size field in the request. The changelogs will be ordered + // by timestamp. + repeated Changelog changelogs = 1; + + // Token to retrieve the next page of results, or empty if there are no more + // results in the list. + string next_page_token = 2; +} + +// The request message for [Changelogs.GetChangelog][google.cloud.dialogflow.cx.v3.Changelogs.GetChangelog]. +message GetChangelogRequest { + // Required. The name of the changelog to get. + // Format: `projects//locations//agents//changelogs/`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dialogflow.googleapis.com/Changelog" + } + ]; +} + +// Changelogs represents a change made to a given agent. +message Changelog { + option (google.api.resource) = { + type: "dialogflow.googleapis.com/Changelog" + pattern: "projects/{project}/locations/{location}/agents/{agent}/changelogs/{changelog}" + }; + + // The unique identifier of the changelog. + // Format: `projects//locations//agents//changelogs/`. + string name = 1; + + // Email address of the authenticated user. + string user_email = 2; + + // The affected resource display name of the change. + string display_name = 7; + + // The action of the change. + string action = 11; + + // The affected resource type. + string type = 8; + + // The affected resource name of the change. + string resource = 3; + + // The timestamp of the change. + google.protobuf.Timestamp create_time = 4; +} diff --git a/google/cloud/dialogflow/cx/v3/deployment.proto b/google/cloud/dialogflow/cx/v3/deployment.proto new file mode 100644 index 000000000..022f6df39 --- /dev/null +++ b/google/cloud/dialogflow/cx/v3/deployment.proto @@ -0,0 +1,171 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.dialogflow.cx.v3; + +import "google/api/annotations.proto"; +import "google/api/client.proto"; +import "google/api/field_behavior.proto"; +import "google/api/resource.proto"; +import "google/protobuf/empty.proto"; +import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; + +option cc_enable_arenas = true; +option csharp_namespace = "Google.Cloud.Dialogflow.Cx.V3"; +option go_package = "google.golang.org/genproto/googleapis/cloud/dialogflow/cx/v3;cx"; +option java_multiple_files = true; +option java_outer_classname = "DeploymentProto"; +option java_package = "com.google.cloud.dialogflow.cx.v3"; +option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; + +// Service for managing [Deployments][google.cloud.dialogflow.cx.v3.Deployment]. +service Deployments { + option (google.api.default_host) = "dialogflow.googleapis.com"; + option (google.api.oauth_scopes) = + "https://www.googleapis.com/auth/cloud-platform," + "https://www.googleapis.com/auth/dialogflow"; + + // Returns the list of all deployments in the specified [Environment][google.cloud.dialogflow.cx.v3.Environment]. + rpc ListDeployments(ListDeploymentsRequest) returns (ListDeploymentsResponse) { + option (google.api.http) = { + get: "/v3/{parent=projects/*/locations/*/agents/*/environments/*}/deployments" + }; + option (google.api.method_signature) = "parent"; + } + + // Retrieves the specified [Deployment][google.cloud.dialogflow.cx.v3.Deployment]. + rpc GetDeployment(GetDeploymentRequest) returns (Deployment) { + option (google.api.http) = { + get: "/v3/{name=projects/*/locations/*/agents/*/environments/*/deployments/*}" + }; + option (google.api.method_signature) = "name"; + } +} + +// Represents an deployment in an environment. A deployment happens when a flow +// version configured to be active in the environment. You can configure running +// pre-deployment steps, e.g. running validation test cases, experiment +// auto-rollout, etc. +message Deployment { + option (google.api.resource) = { + type: "dialogflow.googleapis.com/Deployment" + pattern: "projects/{project}/locations/{location}/agents/{agent}/environments/{environment}/deployments/{deployment}" + }; + + // The state of the deployment. + enum State { + // State unspecified. + STATE_UNSPECIFIED = 0; + + // The deployment is running. + RUNNING = 1; + + // The deployment succeeded. + SUCCEEDED = 2; + + // The deployment failed. + FAILED = 3; + } + + // Result of the deployment. + message Result { + // Results of test cases running before the deployment. + // Format: `projects//locations//agents//testCases//results/`. + repeated string deployment_test_results = 1 [(google.api.resource_reference) = { + type: "dialogflow.googleapis.com/TestCaseResult" + }]; + + // The name of the experiment triggered by this deployment. + // Format: projects//locations//agents//environments//experiments/. + string experiment = 2 [(google.api.resource_reference) = { + type: "dialogflow.googleapis.com/Experiment" + }]; + } + + // The name of the deployment. + // Format: projects//locations//agents//environments//deployments/. + string name = 1; + + // The name of the flow version for this deployment. + // Format: projects//locations//agents//flows//versions/. + string flow_version = 2 [(google.api.resource_reference) = { + type: "dialogflow.googleapis.com/Version" + }]; + + // The current state of the deployment. + State state = 3; + + // Result of the deployment. + Result result = 4; + + // Start time of this deployment. + google.protobuf.Timestamp start_time = 5; + + // End time of this deployment. + google.protobuf.Timestamp end_time = 6; +} + +// The request message for [Deployments.ListDeployments][google.cloud.dialogflow.cx.v3.Deployments.ListDeployments]. +message ListDeploymentsRequest { + // Required. The [Environment][google.cloud.dialogflow.cx.v3.Environment] to list all environments for. + // Format: `projects//locations//agents//environments/`. + string parent = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + child_type: "dialogflow.googleapis.com/Deployment" + } + ]; + + // The maximum number of items to return in a single page. By default 20 and + // at most 100. + int32 page_size = 2; + + // The next_page_token value returned from a previous list request. + string page_token = 3; +} + +// The response message for [Deployments.ListDeployments][google.cloud.dialogflow.cx.v3.Deployments.ListDeployments]. +message ListDeploymentsResponse { + // The list of deployments. There will be a maximum number of items + // returned based on the page_size field in the request. The list may in some + // cases be empty or contain fewer entries than page_size even if this isn't + // the last page. + repeated Deployment deployments = 1; + + // Token to retrieve the next page of results, or empty if there are no more + // results in the list. + string next_page_token = 2; +} + +// The request message for [Deployments.GetDeployment][google.cloud.dialogflow.cx.v3.Deployments.GetDeployment]. +message GetDeploymentRequest { + // Required. The name of the [Deployment][google.cloud.dialogflow.cx.v3.Deployment]. + // Format: `projects//locations//agents//environments//deployments/`. + string name = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dialogflow.googleapis.com/Deployment" + } + ]; +} diff --git a/google/cloud/dialogflow/cx/v3/dialogflow_v3.yaml b/google/cloud/dialogflow/cx/v3/dialogflow_v3.yaml index f2e1b6f30..7edef2b89 100644 --- a/google/cloud/dialogflow/cx/v3/dialogflow_v3.yaml +++ b/google/cloud/dialogflow/cx/v3/dialogflow_v3.yaml @@ -5,6 +5,8 @@ title: Dialogflow API apis: - name: google.cloud.dialogflow.cx.v3.Agents +- name: google.cloud.dialogflow.cx.v3.Changelogs +- name: google.cloud.dialogflow.cx.v3.Deployments - name: google.cloud.dialogflow.cx.v3.EntityTypes - name: google.cloud.dialogflow.cx.v3.Environments - name: google.cloud.dialogflow.cx.v3.Experiments @@ -23,6 +25,8 @@ types: - name: google.cloud.dialogflow.cx.v3.BatchRunTestCasesMetadata - name: google.cloud.dialogflow.cx.v3.BatchRunTestCasesResponse - name: google.cloud.dialogflow.cx.v3.CreateVersionOperationMetadata +- name: google.cloud.dialogflow.cx.v3.DeployFlowMetadata +- name: google.cloud.dialogflow.cx.v3.DeployFlowResponse - name: google.cloud.dialogflow.cx.v3.ExportAgentResponse - name: google.cloud.dialogflow.cx.v3.ExportFlowResponse - name: google.cloud.dialogflow.cx.v3.ExportTestCasesMetadata @@ -57,11 +61,25 @@ documentation: For more information, see the [Dialogflow documentation](https://cloud.google.com/dialogflow/docs). + rules: + - selector: google.cloud.location.Locations.GetLocation + description: Gets information about a location. + + - selector: google.cloud.location.Locations.ListLocations + description: Lists information about the supported locations for this service. backend: rules: - selector: 'google.cloud.dialogflow.cx.v3.Agents.*' deadline: 60.0 + - selector: google.cloud.dialogflow.cx.v3.Changelogs.GetChangelog + deadline: 60.0 + - selector: google.cloud.dialogflow.cx.v3.Changelogs.ListChangelogs + deadline: 60.0 + - selector: google.cloud.dialogflow.cx.v3.Deployments.GetDeployment + deadline: 60.0 + - selector: google.cloud.dialogflow.cx.v3.Deployments.ListDeployments + deadline: 60.0 - selector: 'google.cloud.dialogflow.cx.v3.EntityTypes.*' deadline: 60.0 - selector: 'google.cloud.dialogflow.cx.v3.Environments.*' @@ -94,11 +112,19 @@ backend: deadline: 60.0 - selector: 'google.cloud.dialogflow.cx.v3.Webhooks.*' deadline: 60.0 + - selector: google.cloud.location.Locations.GetLocation + deadline: 60.0 + - selector: google.cloud.location.Locations.ListLocations + deadline: 60.0 - selector: 'google.longrunning.Operations.*' deadline: 60.0 http: rules: + - selector: google.cloud.location.Locations.GetLocation + get: '/v3/{name=projects/*/locations/*}' + - selector: google.cloud.location.Locations.ListLocations + get: '/v3/{name=projects/*}/locations' - selector: google.longrunning.Operations.CancelOperation post: '/v3/{name=projects/*/operations/*}:cancel' additional_bindings: @@ -119,6 +145,26 @@ authentication: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform, https://www.googleapis.com/auth/dialogflow + - selector: google.cloud.dialogflow.cx.v3.Changelogs.GetChangelog + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: google.cloud.dialogflow.cx.v3.Changelogs.ListChangelogs + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: google.cloud.dialogflow.cx.v3.Deployments.GetDeployment + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: google.cloud.dialogflow.cx.v3.Deployments.ListDeployments + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow - selector: 'google.cloud.dialogflow.cx.v3.EntityTypes.*' oauth: canonical_scopes: |- @@ -184,6 +230,16 @@ authentication: canonical_scopes: |- https://www.googleapis.com/auth/cloud-platform, https://www.googleapis.com/auth/dialogflow + - selector: google.cloud.location.Locations.GetLocation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: google.cloud.location.Locations.ListLocations + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow - selector: 'google.longrunning.Operations.*' oauth: canonical_scopes: |- diff --git a/google/cloud/dialogflow/cx/v3/entity_type.proto b/google/cloud/dialogflow/cx/v3/entity_type.proto index 715dcb875..a987bd4f9 100644 --- a/google/cloud/dialogflow/cx/v3/entity_type.proto +++ b/google/cloud/dialogflow/cx/v3/entity_type.proto @@ -30,6 +30,7 @@ option java_multiple_files = true; option java_outer_classname = "EntityTypeProto"; option java_package = "com.google.cloud.dialogflow.cx.v3"; option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; // Service for managing [EntityTypes][google.cloud.dialogflow.cx.v3.EntityType]. service EntityTypes { @@ -55,6 +56,10 @@ service EntityTypes { } // Creates an entity type in the specified agent. + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc CreateEntityType(CreateEntityTypeRequest) returns (EntityType) { option (google.api.http) = { post: "/v3/{parent=projects/*/locations/*/agents/*}/entityTypes" @@ -64,6 +69,10 @@ service EntityTypes { } // Updates the specified entity type. + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc UpdateEntityType(UpdateEntityTypeRequest) returns (EntityType) { option (google.api.http) = { patch: "/v3/{entity_type.name=projects/*/locations/*/agents/*/entityTypes/*}" @@ -73,6 +82,10 @@ service EntityTypes { } // Deletes the specified entity type. + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc DeleteEntityType(DeleteEntityTypeRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v3/{name=projects/*/locations/*/agents/*/entityTypes/*}" @@ -114,6 +127,37 @@ message EntityType { pattern: "projects/{project}/locations/{location}/agents/{agent}/entityTypes/{entity_type}" }; + // Represents kinds of entities. + enum Kind { + // Not specified. This value should be never used. + KIND_UNSPECIFIED = 0; + + // Map entity types allow mapping of a group of synonyms to a canonical + // value. + KIND_MAP = 1; + + // List entity types contain a set of entries that do not map to canonical + // values. However, list entity types can contain references to other entity + // types (with or without aliases). + KIND_LIST = 2; + + // Regexp entity types allow to specify regular expressions in entries + // values. + KIND_REGEXP = 3; + } + + // Represents different entity type expansion modes. Automated expansion + // allows an agent to recognize values that have not been explicitly listed in + // the entity (for example, new kinds of shopping list items). + enum AutoExpansionMode { + // Auto expansion disabled for the entity. + AUTO_EXPANSION_MODE_UNSPECIFIED = 0; + + // Allows an agent to recognize values that have not been explicitly + // listed in the entity. + AUTO_EXPANSION_MODE_DEFAULT = 1; + } + // An **entity entry** for an associated entity type. message Entity { // Required. The primary value associated with this entity entry. @@ -146,37 +190,6 @@ message EntityType { string value = 1 [(google.api.field_behavior) = REQUIRED]; } - // Represents kinds of entities. - enum Kind { - // Not specified. This value should be never used. - KIND_UNSPECIFIED = 0; - - // Map entity types allow mapping of a group of synonyms to a canonical - // value. - KIND_MAP = 1; - - // List entity types contain a set of entries that do not map to canonical - // values. However, list entity types can contain references to other entity - // types (with or without aliases). - KIND_LIST = 2; - - // Regexp entity types allow to specify regular expressions in entries - // values. - KIND_REGEXP = 3; - } - - // Represents different entity type expansion modes. Automated expansion - // allows an agent to recognize values that have not been explicitly listed in - // the entity (for example, new kinds of shopping list items). - enum AutoExpansionMode { - // Auto expansion disabled for the entity. - AUTO_EXPANSION_MODE_UNSPECIFIED = 0; - - // Allows an agent to recognize values that have not been explicitly - // listed in the entity. - AUTO_EXPANSION_MODE_DEFAULT = 1; - } - // The unique identifier of the entity type. // Required for [EntityTypes.UpdateEntityType][google.cloud.dialogflow.cx.v3.EntityTypes.UpdateEntityType]. // Format: `projects//locations//agents//locations/ + // /agents//testCases/` + repeated string test_cases = 1 [(google.api.resource_reference) = { + type: "dialogflow.googleapis.com/TestCase" + }]; + + // Whether to run test cases in [TestCasesConfig.test_cases][google.cloud.dialogflow.cx.v3.Environment.TestCasesConfig.test_cases] periodically. + // Default false. If set to true, run once a day. + bool enable_continuous_run = 2; + + // Whether to run test cases in [TestCasesConfig.test_cases][google.cloud.dialogflow.cx.v3.Environment.TestCasesConfig.test_cases] before + // deploying a flow version to the environment. Default false. + bool enable_predeployment_run = 3; + } + // The name of the environment. // Format: `projects//locations//agents//environments/`. @@ -167,6 +229,9 @@ message Environment { // Output only. Update time of this environment. google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // The test cases config for continuous tests of this environment. + TestCasesConfig test_cases_config = 7; } // The request message for [Environments.ListEnvironments][google.cloud.dialogflow.cx.v3.Environments.ListEnvironments]. @@ -374,3 +439,44 @@ message ListContinuousTestResultsResponse { // results in the list. string next_page_token = 2; } + +// The request message for [Environments.DeployFlow][google.cloud.dialogflow.cx.v3.Environments.DeployFlow]. +message DeployFlowRequest { + // Required. The environment to deploy the flow to. + // Format: `projects//locations//agents// + // environments/`. + string environment = 1 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dialogflow.googleapis.com/Environment" + } + ]; + + // Required. The flow version to deploy. + // Format: `projects//locations//agents// + // flows//versions/`. + string flow_version = 2 [ + (google.api.field_behavior) = REQUIRED, + (google.api.resource_reference) = { + type: "dialogflow.googleapis.com/Version" + } + ]; +} + +// The response message for [Environments.DeployFlow][google.cloud.dialogflow.cx.v3.Environments.DeployFlow]. +message DeployFlowResponse { + // The updated environment where the flow is deployed. + Environment environment = 1; + + // The name of the flow version [Deployment][google.cloud.dialogflow.cx.v3.Deployment]. + // Format: `projects//locations//agents// + // environments//deployments/`. + string deployment = 2; +} + +// Metadata returned for the [Environments.DeployFlow][google.cloud.dialogflow.cx.v3.Environments.DeployFlow] long running +// operation. +message DeployFlowMetadata { + // Errors of running deployment tests. + repeated TestError test_errors = 1; +} diff --git a/google/cloud/dialogflow/cx/v3/experiment.proto b/google/cloud/dialogflow/cx/v3/experiment.proto index 8f03a4f82..203aa005e 100644 --- a/google/cloud/dialogflow/cx/v3/experiment.proto +++ b/google/cloud/dialogflow/cx/v3/experiment.proto @@ -32,6 +32,7 @@ option java_multiple_files = true; option java_outer_classname = "ExperimentProto"; option java_package = "com.google.cloud.dialogflow.cx.v3"; option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; // Service for managing [Experiments][google.cloud.dialogflow.cx.v3.Experiment]. service Experiments { @@ -110,6 +111,24 @@ message Experiment { pattern: "projects/{project}/locations/{location}/agents/{agent}/environments/{environment}/experiments/{experiment}" }; + // The state of the experiment. + enum State { + // State unspecified. + STATE_UNSPECIFIED = 0; + + // The experiment is created but not started yet. + DRAFT = 1; + + // The experiment is running. + RUNNING = 2; + + // The experiment is done. + DONE = 3; + + // The experiment with auto-rollout enabled has failed. + ROLLOUT_FAILED = 4; + } + // Definition of the experiment. message Definition { // The condition defines which subset of sessions are selected for @@ -129,6 +148,43 @@ message Experiment { // The inference result which includes an objective metric to optimize and the // confidence interval. message Result { + // Types of ratio-based metric for Dialogflow experiment. + enum MetricType { + // Metric unspecified. + METRIC_UNSPECIFIED = 0; + + // Percentage of contained sessions without user calling back in 24 hours. + CONTAINED_SESSION_NO_CALLBACK_RATE = 1; + + // Percentage of sessions that were handed to a human agent. + LIVE_AGENT_HANDOFF_RATE = 2; + + // Percentage of sessions with the same user calling back. + CALLBACK_SESSION_RATE = 3; + + // Percentage of sessions where user hung up. + ABANDONED_SESSION_RATE = 4; + + // Percentage of sessions reached Dialogflow 'END_PAGE' or + // 'END_SESSION'. + SESSION_END_RATE = 5; + } + + // Types of count-based metric for Dialogflow experiment. + enum CountType { + // Count type unspecified. + COUNT_TYPE_UNSPECIFIED = 0; + + // Total number of occurrences of a 'NO_MATCH'. + TOTAL_NO_MATCH_COUNT = 1; + + // Total number of turn counts. + TOTAL_TURN_COUNT = 2; + + // Average turn count in a session. + AVERAGE_TURN_COUNT = 3; + } + // A confidence interval is a range of possible values for the experiment // objective you are trying to measure. message ConfidenceInterval { @@ -188,43 +244,6 @@ message Experiment { int32 session_count = 3; } - // Types of ratio-based metric for Dialogflow experiment. - enum MetricType { - // Metric unspecified. - METRIC_UNSPECIFIED = 0; - - // Percentage of contained sessions without user calling back in 24 hours. - CONTAINED_SESSION_NO_CALLBACK_RATE = 1; - - // Percentage of sessions that were handed to a human agent. - LIVE_AGENT_HANDOFF_RATE = 2; - - // Percentage of sessions with the same user calling back. - CALLBACK_SESSION_RATE = 3; - - // Percentage of sessions where user hung up. - ABANDONED_SESSION_RATE = 4; - - // Percentage of sessions reached Dialogflow 'END_PAGE' or - // 'END_SESSION'. - SESSION_END_RATE = 5; - } - - // Types of count-based metric for Dialogflow experiment. - enum CountType { - // Count type unspecified. - COUNT_TYPE_UNSPECIFIED = 0; - - // Total number of occurrences of a 'NO_MATCH'. - TOTAL_NO_MATCH_COUNT = 1; - - // Total number of turn counts. - TOTAL_TURN_COUNT = 2; - - // Average turn count in a session. - AVERAGE_TURN_COUNT = 3; - } - // Version variants and metrics. repeated VersionMetrics version_metrics = 1; @@ -233,21 +252,6 @@ message Experiment { google.protobuf.Timestamp last_update_time = 2; } - // The state of the experiment. - enum State { - // State unspecified. - STATE_UNSPECIFIED = 0; - - // The experiment is created but not started yet. - DRAFT = 1; - - // The experiment is running. - RUNNING = 2; - - // The experiment is done. - DONE = 3; - } - // The name of the experiment. // Format: projects//locations//agents//environments//experiments/.. @@ -261,14 +265,28 @@ message Experiment { string description = 3; // The current state of the experiment. - // Transition triggered by Expriments.StartExperiment: PENDING->RUNNING. - // Transition triggered by Expriments.CancelExperiment: PENDING->CANCELLED or - // RUNNING->CANCELLED. + // Transition triggered by Experiments.StartExperiment: DRAFT->RUNNING. + // Transition triggered by Experiments.CancelExperiment: DRAFT->DONE or + // RUNNING->DONE. State state = 4; // The definition of the experiment. Definition definition = 5; + // The configuration for auto rollout. If set, there should be exactly two + // variants in the experiment (control variant being the default version of + // the flow), the traffic allocation for the non-control variant will + // gradually increase to 100% when conditions are met, and eventually + // replace the control variant to become the default version of the flow. + RolloutConfig rollout_config = 14; + + // State of the auto rollout process. + RolloutState rollout_state = 15; + + // The reason why rollout has failed. Should only be set when state is + // ROLLOUT_FAILED. + string rollout_failure_reason = 16; + // Inference result of the experiment. Result result = 6; @@ -327,6 +345,53 @@ message VariantsHistory { google.protobuf.Timestamp update_time = 2; } +// The configuration for auto rollout. +message RolloutConfig { + // A single rollout step with specified traffic allocation. + message RolloutStep { + // The name of the rollout step; + string display_name = 1; + + // The percentage of traffic allocated to the flow version of this rollout + // step. (0%, 100%]. + int32 traffic_percent = 2; + + // The minimum time that this step should last. Should be longer than 1 + // hour. If not set, the default minimum duration for each step will be 1 + // hour. + google.protobuf.Duration min_duration = 3; + } + + // Steps to roll out a flow version. Steps should be sorted by percentage in + // ascending order. + repeated RolloutStep rollout_steps = 1; + + // The conditions that are used to evaluate the success of a rollout + // step. If not specified, all rollout steps will proceed to the next one + // unless failure conditions are met. E.g. "containment_rate > 60% AND + // callback_rate < 20%". See the [conditions + // reference](https://cloud.google.com/dialogflow/cx/docs/reference/condition). + string rollout_condition = 2; + + // The conditions that are used to evaluate the failure of a rollout + // step. If not specified, no rollout steps will fail. E.g. "containment_rate + // < 10% OR average_turn_count < 3". See the [conditions + // reference](https://cloud.google.com/dialogflow/cx/docs/reference/condition). + string failure_condition = 3; +} + +// State of the auto-rollout process. +message RolloutState { + // Display name of the current auto rollout step. + string step = 1; + + // Index of the current step in the auto rollout steps list. + int32 step_index = 3; + + // Start time of the current step. + google.protobuf.Timestamp start_time = 2; +} + // The request message for [Experiments.ListExperiments][google.cloud.dialogflow.cx.v3.Experiments.ListExperiments]. message ListExperimentsRequest { // Required. The [Environment][google.cloud.dialogflow.cx.v3.Environment] to list all environments for. diff --git a/google/cloud/dialogflow/cx/v3/flow.proto b/google/cloud/dialogflow/cx/v3/flow.proto index d831b3a7c..98be51c4f 100644 --- a/google/cloud/dialogflow/cx/v3/flow.proto +++ b/google/cloud/dialogflow/cx/v3/flow.proto @@ -20,6 +20,7 @@ import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/cloud/dialogflow/cx/v3/advanced_settings.proto"; import "google/cloud/dialogflow/cx/v3/page.proto"; import "google/cloud/dialogflow/cx/v3/validation_message.proto"; import "google/longrunning/operations.proto"; @@ -34,6 +35,7 @@ option java_multiple_files = true; option java_outer_classname = "FlowProto"; option java_package = "com.google.cloud.dialogflow.cx.v3"; option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; // Service for managing [Flows][google.cloud.dialogflow.cx.v3.Flow]. service Flows { @@ -43,6 +45,10 @@ service Flows { "https://www.googleapis.com/auth/dialogflow"; // Creates a flow in the specified agent. + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc CreateFlow(CreateFlowRequest) returns (Flow) { option (google.api.http) = { post: "/v3/{parent=projects/*/locations/*/agents/*}/flows" @@ -76,6 +82,10 @@ service Flows { } // Updates the specified flow. + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc UpdateFlow(UpdateFlowRequest) returns (Flow) { option (google.api.http) = { patch: "/v3/{flow.name=projects/*/locations/*/agents/*/flows/*}" @@ -86,6 +96,19 @@ service Flows { // Trains the specified flow. Note that only the flow in 'draft' environment // is trained. + // + // This method is a [long-running + // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). + // The returned `Operation` type has the following method-specific fields: + // + // - `metadata`: An empty [Struct + // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) + // - `response`: An [Empty + // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty) + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc TrainFlow(TrainFlowRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v3/{name=projects/*/locations/*/agents/*/flows/*}:train" @@ -118,6 +141,18 @@ service Flows { } // Imports the specified flow to the specified agent from a binary file. + // + // This method is a [long-running + // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). + // The returned `Operation` type has the following method-specific fields: + // + // - `metadata`: An empty [Struct + // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) + // - `response`: [ImportFlowResponse][google.cloud.dialogflow.cx.v3.ImportFlowResponse] + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc ImportFlow(ImportFlowRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v3/{parent=projects/*/locations/*/agents/*}/flows:import" @@ -131,6 +166,14 @@ service Flows { // Exports the specified flow to a binary file. // + // This method is a [long-running + // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). + // The returned `Operation` type has the following method-specific fields: + // + // - `metadata`: An empty [Struct + // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) + // - `response`: [ExportFlowResponse][google.cloud.dialogflow.cx.v3.ExportFlowResponse] + // // Note that resources (e.g. intents, entities, webhooks) that the flow // references will also be exported. rpc ExportFlow(ExportFlowRequest) returns (google.longrunning.Operation) { @@ -402,9 +445,9 @@ message UpdateFlowRequest { // Required. The flow to update. Flow flow = 1 [(google.api.field_behavior) = REQUIRED]; - // Required. The mask to control which fields get updated. If `update_mask` is not - // specified, an error will be returned. - google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = REQUIRED]; + // The mask to control which fields get updated. If the mask is not present, + // all fields will be updated. + google.protobuf.FieldMask update_mask = 2; // The language of the following fields in `flow`: // diff --git a/google/cloud/dialogflow/cx/v3/fulfillment.proto b/google/cloud/dialogflow/cx/v3/fulfillment.proto index 0f04f6836..6e81155ad 100644 --- a/google/cloud/dialogflow/cx/v3/fulfillment.proto +++ b/google/cloud/dialogflow/cx/v3/fulfillment.proto @@ -16,10 +16,11 @@ syntax = "proto3"; package google.cloud.dialogflow.cx.v3; +import "google/api/annotations.proto"; import "google/api/resource.proto"; +import "google/cloud/dialogflow/cx/v3/advanced_settings.proto"; import "google/cloud/dialogflow/cx/v3/response_message.proto"; import "google/protobuf/struct.proto"; -import "google/api/annotations.proto"; option cc_enable_arenas = true; option csharp_namespace = "Google.Cloud.Dialogflow.Cx.V3"; @@ -28,6 +29,7 @@ option java_multiple_files = true; option java_outer_classname = "FulfillmentProto"; option java_package = "com.google.cloud.dialogflow.cx.v3"; option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; // A fulfillment can do one or more of the following actions at the same time: // @@ -95,6 +97,17 @@ message Fulfillment { type: "dialogflow.googleapis.com/Webhook" }]; + // Whether Dialogflow should return currently queued fulfillment response + // messages in streaming APIs. If a webhook is specified, it happens before + // Dialogflow invokes webhook. + // Warning: + // 1) This flag only affects streaming API. Responses are still queued + // and returned once in non-streaming API. + // 2) The flag can be enabled in any fulfillment but only the first 3 partial + // responses will be returned. You may only want to apply it to fulfillments + // that have slow webhooks. + bool return_partial_responses = 8; + // The tag used by the webhook to identify which fulfillment is being called. // This field is required if `webhook` is specified. string tag = 3; diff --git a/google/cloud/dialogflow/cx/v3/intent.proto b/google/cloud/dialogflow/cx/v3/intent.proto index f4f4c6184..48bc0f894 100644 --- a/google/cloud/dialogflow/cx/v3/intent.proto +++ b/google/cloud/dialogflow/cx/v3/intent.proto @@ -20,8 +20,10 @@ import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/longrunning/operations.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; +import "google/protobuf/timestamp.proto"; option cc_enable_arenas = true; option csharp_namespace = "Google.Cloud.Dialogflow.Cx.V3"; @@ -30,6 +32,7 @@ option java_multiple_files = true; option java_outer_classname = "IntentProto"; option java_package = "com.google.cloud.dialogflow.cx.v3"; option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; // Service for managing [Intents][google.cloud.dialogflow.cx.v3.Intent]. service Intents { @@ -55,6 +58,10 @@ service Intents { } // Creates an intent in the specified agent. + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc CreateIntent(CreateIntentRequest) returns (Intent) { option (google.api.http) = { post: "/v3/{parent=projects/*/locations/*/agents/*}/intents" @@ -64,6 +71,10 @@ service Intents { } // Updates the specified intent. + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc UpdateIntent(UpdateIntentRequest) returns (Intent) { option (google.api.http) = { patch: "/v3/{intent.name=projects/*/locations/*/agents/*/intents/*}" @@ -73,6 +84,10 @@ service Intents { } // Deletes the specified intent. + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc DeleteIntent(DeleteIntentRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v3/{name=projects/*/locations/*/agents/*/intents/*}" @@ -205,11 +220,11 @@ message Intent { // start with a letter. Keys and values can be no longer than 63 characters // and no more than 128 bytes. // - // Prefix "sys." is reserved for Dialogflow defined labels. Currently allowed + // Prefix "sys-" is reserved for Dialogflow defined labels. Currently allowed // Dialogflow defined labels include: - // * sys.head - // * sys.contextual - // The above labels do not require value. "sys.head" means the intent is a + // * sys-head + // * sys-contextual + // The above labels do not require value. "sys-head" means the intent is a // head intent. "sys.contextual" means the intent is a contextual intent. map labels = 7; diff --git a/google/cloud/dialogflow/cx/v3/page.proto b/google/cloud/dialogflow/cx/v3/page.proto index 6cd8259f6..694e4b6d4 100644 --- a/google/cloud/dialogflow/cx/v3/page.proto +++ b/google/cloud/dialogflow/cx/v3/page.proto @@ -20,6 +20,7 @@ import "google/api/annotations.proto"; import "google/api/client.proto"; import "google/api/field_behavior.proto"; import "google/api/resource.proto"; +import "google/cloud/dialogflow/cx/v3/advanced_settings.proto"; import "google/cloud/dialogflow/cx/v3/fulfillment.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; @@ -32,6 +33,7 @@ option java_multiple_files = true; option java_outer_classname = "PageProto"; option java_package = "com.google.cloud.dialogflow.cx.v3"; option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; // Service for managing [Pages][google.cloud.dialogflow.cx.v3.Page]. service Pages { @@ -57,6 +59,10 @@ service Pages { } // Creates a page in the specified flow. + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc CreatePage(CreatePageRequest) returns (Page) { option (google.api.http) = { post: "/v3/{parent=projects/*/locations/*/agents/*/flows/*}/pages" @@ -66,6 +72,10 @@ service Pages { } // Updates the specified page. + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc UpdatePage(UpdatePageRequest) returns (Page) { option (google.api.http) = { patch: "/v3/{page.name=projects/*/locations/*/agents/*/flows/*/pages/*}" @@ -75,6 +85,10 @@ service Pages { } // Deletes the specified page. + // + // Note: You should always train a flow prior to sending it queries. See the + // [training + // documentation](https://cloud.google.com/dialogflow/cx/docs/concept/training). rpc DeletePage(DeletePageRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v3/{name=projects/*/locations/*/agents/*/flows/*/pages/*}" diff --git a/google/cloud/dialogflow/cx/v3/response_message.proto b/google/cloud/dialogflow/cx/v3/response_message.proto index 37a6ac653..6c0f10b0c 100644 --- a/google/cloud/dialogflow/cx/v3/response_message.proto +++ b/google/cloud/dialogflow/cx/v3/response_message.proto @@ -16,9 +16,9 @@ syntax = "proto3"; package google.cloud.dialogflow.cx.v3; +import "google/api/annotations.proto"; import "google/api/field_behavior.proto"; import "google/protobuf/struct.proto"; -import "google/api/annotations.proto"; option cc_enable_arenas = true; option csharp_namespace = "Google.Cloud.Dialogflow.Cx.V3"; @@ -27,6 +27,7 @@ option java_multiple_files = true; option java_outer_classname = "ResponseMessageProto"; option java_package = "com.google.cloud.dialogflow.cx.v3"; option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; // Represents a response message that can be returned by a conversational agent. // @@ -163,6 +164,17 @@ message ResponseMessage { repeated Segment segments = 1; } + // Represents the signal that telles the client to transfer the phone call + // connected to the agent to a third-party endpoint. + message TelephonyTransferCall { + // Endpoint to transfer the call to. + oneof endpoint { + // Transfer the call to a phone number + // in [E.164 format](https://en.wikipedia.org/wiki/E.164). + string phone_number = 1; + } + } + // Required. The rich response message. oneof message { // Returns a text response. @@ -201,5 +213,9 @@ message ResponseMessage { // This message is generated by Dialogflow only and not supposed to be // defined by the user. MixedAudio mixed_audio = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // A signal that the client should transfer the phone call connected to + // this agent to a third-party endpoint. + TelephonyTransferCall telephony_transfer_call = 18; } } diff --git a/google/cloud/dialogflow/cx/v3/security_settings.proto b/google/cloud/dialogflow/cx/v3/security_settings.proto index 2d01bd5e4..190b6610f 100644 --- a/google/cloud/dialogflow/cx/v3/security_settings.proto +++ b/google/cloud/dialogflow/cx/v3/security_settings.proto @@ -31,6 +31,17 @@ option java_multiple_files = true; option java_outer_classname = "SecuritySettingsProto"; option java_package = "com.google.cloud.dialogflow.cx.v3"; option objc_class_prefix = "DF"; +option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; +option (google.api.resource_definition) = { + type: "dlp.googleapis.com/InspectTemplate" + pattern: "organizations/{organization}/locations/{location}/inspectTemplates/{inspect_template}" + pattern: "projects/{project}/locations/{location}/inspectTemplates/{inspect_template}" +}; +option (google.api.resource_definition) = { + type: "dlp.googleapis.com/DeidentifyTemplate" + pattern: "organizations/{organization}/locations/{location}/deidentifyTemplates/{deidentify_template}" + pattern: "projects/{project}/locations/{location}/deidentifyTemplates/{deidentify_template}" +}; // Service for managing security settings for Dialogflow. service SecuritySettingsService { @@ -203,10 +214,21 @@ message SecuritySettings { DIALOGFLOW_HISTORY = 1; } - // Required. Resource name of the settings. + // Settings for exporting conversations to + // [Insights](https://cloud.google.com/contact-center/insights/docs). + message InsightsExportSettings { + // If enabled, we will automatically exports + // conversations to Insights and Insights runs its analyzers. + bool enable_insights_export = 1; + } + + // Resource name of the settings. + // Required for the [SecuritySettingsService.UpdateSecuritySettings][google.cloud.dialogflow.cx.v3.SecuritySettingsService.UpdateSecuritySettings] method. + // [SecuritySettingsService.CreateSecuritySettings][google.cloud.dialogflow.cx.v3.SecuritySettingsService.CreateSecuritySettings] populates the name + // automatically. // Format: `projects//locations//securitySettings/`. - string name = 1 [(google.api.field_behavior) = REQUIRED]; + string name = 1; // Required. The human-readable name of the security settings, unique within the // location. @@ -220,15 +242,47 @@ message SecuritySettings { // logging. RedactionScope redaction_scope = 4; - // DLP inspect template name. Use this template to define inspect base - // settings. + // [DLP](https://cloud.google.com/dlp/docs) inspect template name. Use this + // template to define inspect base settings. + // + // The `DLP Inspect Templates Reader` role is needed on the Dialogflow + // service identity service account (has the form + // `service-PROJECT_NUMBER@gcp-sa-dialogflow.iam.gserviceaccount.com`) + // for your agent's project. // // If empty, we use the default DLP inspect config. // // The template name will have one of the following formats: - // `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR - // `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID` - string inspect_template = 9; + // `projects//locations//inspectTemplates/